diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml new file mode 100644 index 0000000..64cce75 --- /dev/null +++ b/.github/workflows/build-and-test.yml @@ -0,0 +1,159 @@ +name: build-and-test + +# Build the datadog provider from the pinned v1 + v2 specs and run every +# credential-free test layer on each push / PR; the live smoke suite runs +# only where the Datadog secrets are configured; a scheduled spec-drift job +# diffs the upstream specs against the pin and opens an issue when they move. + +on: + push: + branches: [main, 'feature/**'] + paths-ignore: ['website/**'] + pull_request: + branches: [main] + paths-ignore: ['website/**'] + schedule: + - cron: '23 3 * * 1' # weekly spec-drift check (Monday 03:23 UTC) + workflow_dispatch: + +jobs: + build-and-test: + if: github.event_name != 'schedule' + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + + - uses: actions/setup-node@v7 + with: + node-version: 20 + cache: npm + + - name: Install dependencies + run: npm ci + + # puts the latest stackql on PATH; bin/start-server.sh and the test + # runners resolve it from there + - name: Install stackql + uses: stackql/setup-stackql@v2 + + - name: stackql version + run: stackql --version + + # Drift is reported, not fatal, here: the committed pin is what gets + # built and tested. The spec-drift job below opens the review issue. + - name: Verify the pinned specs against upstream (warns on drift) + run: | + if ! make fetch-spec; then + echo "::warning title=Datadog spec drift::The upstream v1/v2 specs no longer match provider-dev/config/spec_pin.json - run 'make refresh-spec && make build && make test' and review the diff. Building from the committed pin." + git checkout -- provider-dev/downloaded provider-dev/config/spec_pin.json + fi + + - name: Build provider from the pinned specs + run: make split normalize mappings generate + + - name: Fail on uncommitted generation drift + run: | + git add -N . + if ! git diff --quiet -- provider-dev/openapi provider-dev/config; then + echo "Generated output differs from the committed artifacts - run 'make build' and commit." + git diff --stat -- provider-dev/openapi provider-dev/config + exit 1 + fi + + - name: Offline validation + run: make test-offline + + - name: Meta-route tests + run: make test-meta + + - name: Generate docs (sanity - the site build runs on the web workflows) + run: make docs + + smoke: + # secret-gated live smoke suite; skipped with a notice when the secrets + # are not configured (forks, PRs from outside). Everything it creates is + # named stackql-smoke-* and deleted within the run. + runs-on: ubuntu-latest + needs: build-and-test + if: github.event_name != 'pull_request' && github.event_name != 'schedule' + env: + DD_API_KEY: ${{ secrets.DD_API_KEY }} + DD_APP_KEY: ${{ secrets.DD_APP_KEY }} + DD_SITE: ${{ secrets.DD_SITE }} + steps: + - uses: actions/checkout@v7 + + - uses: actions/setup-node@v7 + with: + node-version: 20 + cache: npm + + - uses: actions/setup-python@v7 + with: + python-version: '3.12' + + - name: Install dependencies + run: npm ci + + - name: Live smoke suite (local provider) + if: env.DD_API_KEY != '' + run: make smoke + + - name: Live smoke skipped (no credentials) + if: env.DD_API_KEY == '' + run: | + echo "::notice title=Live smoke suite skipped::DD_API_KEY / DD_APP_KEY secrets are not configured - the live smoke suite did not run. Credential-free coverage still ran via the offline and meta-route suites." + + spec-drift: + # Diff the upstream specs against the pin on a schedule and on demand, + # and open an issue when they move. + runs-on: ubuntu-latest + if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' + permissions: + contents: read + issues: write + steps: + - uses: actions/checkout@v7 + + - uses: actions/setup-node@v7 + with: + node-version: 20 + cache: npm + + - name: Install dependencies + run: npm ci + + - name: Fetch and compare against the pin + id: drift + run: | + set +e + make fetch-spec > fetch.log 2>&1 + rc=$? + set -e + cat fetch.log + if [ "$rc" -eq 0 ]; then + echo "drift=false" >> "$GITHUB_OUTPUT" + else + echo "drift=true" >> "$GITHUB_OUTPUT" + npm run fetch-spec -- --update > /dev/null 2>&1 || true + git diff --stat -- provider-dev/downloaded provider-dev/config/spec_pin.json > drift.txt || true + cat drift.txt + fi + + - name: Report drift + if: steps.drift.outputs.drift == 'true' + uses: actions/github-script@v9 + with: + script: | + const fs = require('fs'); + const stat = fs.existsSync('drift.txt') ? fs.readFileSync('drift.txt', 'utf8') : '(diff unavailable)'; + const title = 'Datadog spec drift detected'; + const body = 'The upstream Datadog v1/v2 OpenAPI specs no longer match the pin in provider-dev/config/spec_pin.json.\n\n```\n' + stat + '\n```\nRun `make refresh-spec && make build && make test`, review the generated diff (new operations in provider-dev/config/operation_inventory.csv, changed schemas), and commit.'; + await core.summary.addHeading(title).addCodeBlock(stat).write(); + const { data: issues } = await github.rest.issues.listForRepo({ + owner: context.repo.owner, repo: context.repo.repo, state: 'open', labels: 'spec-drift' + }); + if (issues.some(i => i.title === title)) return; + await github.rest.issues.create({ + owner: context.repo.owner, repo: context.repo.repo, title, body, labels: ['spec-drift'] + }); diff --git a/.github/workflows/prod-web-deploy.yml b/.github/workflows/prod-web-deploy.yml index ab53507..7b950ed 100644 --- a/.github/workflows/prod-web-deploy.yml +++ b/.github/workflows/prod-web-deploy.yml @@ -1,58 +1,58 @@ -name: Deploy to GitHub Pages - -on: - push: - branches: - - main - paths: - - 'website/**' - -jobs: - build: - name: Build Docusaurus - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: yarn - cache-dependency-path: website/yarn.lock - - - name: Install dependencies - run: yarn install --frozen-lockfile - working-directory: website - - - name: Build website - run: yarn build - working-directory: website - - - name: Upload Build Artifact - uses: actions/upload-pages-artifact@v3 - with: - path: website/build # Ensure the path is correctly set to the Docusaurus build output - - deploy: - name: Deploy to GitHub Pages - needs: build - - # Grant GITHUB_TOKEN the permissions required to make a Pages deployment - permissions: - pages: write # to deploy to Pages - id-token: write # to verify the deployment originates from an appropriate source - - # Deploy to the github-pages environment - environment: - name: github-pages - url: ${{ steps.deployment.outputs.page_url }} - - runs-on: ubuntu-latest - steps: - - name: Deploy to GitHub Pages - id: deployment - uses: actions/deploy-pages@v4 - with: - working-directory: website/build # Ensures the correct directory is used for deployment +name: Deploy to GitHub Pages + +on: + push: + branches: + - main + paths: + - 'website/**' + +jobs: + build: + name: Build Docusaurus + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + with: + fetch-depth: 0 + + - uses: actions/setup-node@v7 + with: + node-version: 20 + cache: yarn + cache-dependency-path: website/yarn.lock + + - name: Install dependencies + run: yarn install --frozen-lockfile + working-directory: website + + - name: Build website + run: yarn build + working-directory: website + + - name: Upload Build Artifact + uses: actions/upload-pages-artifact@v5 + with: + path: website/build # Ensure the path is correctly set to the Docusaurus build output + + deploy: + name: Deploy to GitHub Pages + needs: build + + # Grant GITHUB_TOKEN the permissions required to make a Pages deployment + permissions: + pages: write # to deploy to Pages + id-token: write # to verify the deployment originates from an appropriate source + + # Deploy to the github-pages environment + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v5 + with: + working-directory: website/build # Ensures the correct directory is used for deployment diff --git a/.github/workflows/star-check.yml b/.github/workflows/star-check.yml deleted file mode 100644 index 24d6c17..0000000 --- a/.github/workflows/star-check.yml +++ /dev/null @@ -1,42 +0,0 @@ -name: Check if PR author has starred required repositories -on: - pull_request: - types: [opened, synchronize, reopened] -jobs: - check-starred: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - - name: Get PR author username and repo info - id: get-info - run: | - echo "username=${{ github.event.pull_request.user.login }}" >> $GITHUB_ENV - echo "current_repo=${{ github.event.repository.name }}" >> $GITHUB_ENV - echo "current_owner=${{ github.repository_owner }}" >> $GITHUB_ENV - - name: Pull github provider - uses: stackql/stackql-exec@v2.2.1 - with: - is_command: 'true' - query: "REGISTRY PULL github;" - - name: Run stackql query - id: check-star - uses: stackql/stackql-assert@v2.2.1 - with: - test_query: | - SELECT repo, count(*) as has_starred - FROM github.activity.repo_stargazers - WHERE owner = '${{ env.current_owner }}' and repo IN ('stackql','${{ env.current_repo }}') - AND login = '${{ env.username }}' - GROUP BY repo; - expected_results_str: '[{"has_starred":"1","repo":"stackql"},{"has_starred":"1","repo":"${{ env.current_repo }}"}]' - continue-on-error: true - - name: Check if starred - if: always() # Ensures this runs regardless of check-star outcome - run: | - if [ "${{ steps.check-star.outcome }}" = "success" ]; then - echo "::notice::Thanks for your support!" - else - echo "::error::It seems you haven't starred the required repositories. Please star the following repos before proceeding: https://github.com/${{ env.current_owner }}/${{ env.current_repo }} (this repo) and https://github.com/stackql/stackql (our core repo)" - exit 1 - fi \ No newline at end of file diff --git a/.github/workflows/test-web-deploy.yml b/.github/workflows/test-web-deploy.yml index 1e2ef91..64df0d3 100644 --- a/.github/workflows/test-web-deploy.yml +++ b/.github/workflows/test-web-deploy.yml @@ -1,31 +1,31 @@ -name: Test deployment - -on: - pull_request: - branches: - - main - paths: - - 'website/**' - -jobs: - test-deploy: - name: Test deployment - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: yarn - cache-dependency-path: website/yarn.lock - - - name: Install dependencies - run: yarn install --frozen-lockfile - working-directory: website - - - name: Test build website - run: yarn build +name: Test deployment + +on: + pull_request: + branches: + - main + paths: + - 'website/**' + +jobs: + test-deploy: + name: Test deployment + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + with: + fetch-depth: 0 + + - uses: actions/setup-node@v7 + with: + node-version: 20 + cache: yarn + cache-dependency-path: website/yarn.lock + + - name: Install dependencies + run: yarn install --frozen-lockfile + working-directory: website + + - name: Test build website + run: yarn build working-directory: website \ No newline at end of file diff --git a/.gitignore b/.gitignore index 1844196..26c213f 100644 --- a/.gitignore +++ b/.gitignore @@ -84,3 +84,11 @@ nohup.out **/test-output/ # Ignore everything in source directory except .gitkeep source/* + +# derived build artifacts (merged spec, split source specs are regenerated by make) +provider-dev/build/ +provider-dev/source/*.yaml +provider-dev/source/*.json +website/.shared-config/ +tests/.venv/ +tests/__pycache__/ diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..688760e --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1,77 @@ +# CLAUDE.md + +## Project + +This repository builds and documents the `datadog` provider for [StackQL](https://github.com/stackql/stackql): SQL query and provisioning over the Datadog v1 and v2 REST APIs - monitors, dashboards, synthetics, SLOs, downtimes, incidents, cases, on-call, logs configuration, metrics, security monitoring and findings, cloud cost management, users, roles, keys, teams, usage, integrations, RUM, LLM Observability, fleet automation and the rest of the public API surface. + +The provider is built with `@stackql/provider-utils` and follows the repository pattern shared with the `clickhouse`, `github`, `k8s` and `openai` provider repositories under `stackql-registry`. When in doubt about structure, scripts, testing or docs, those repositories are the reference - mirror them. + +## Spec source + +Datadog publishes its v1 and v2 OpenAPI specs in the `datadog-api-client-typescript` repository (`.generator/schemas/v1/openapi.yaml`, `.generator/schemas/v2/openapi.yaml`); every official client is generated from them. `bin/fetch-spec.sh` downloads both into `provider-dev/downloaded/` and records the date and sha256 of each in `provider-dev/config/spec_pin.json`. Neither spec carries a meaningful version (`info.version` is a constant "1.0"), so the pin is the record of what was built. Refreshes are reviewed diffs (`make refresh-spec`), never silent regenerations. + +## Design principles + +- **v1 + v2 merged, one provider.** `provider-dev/scripts/merge_specs.mjs` merges the two specs before the split. v1 operations whose operationId also exists in v2 (users, keys, downtimes, events, AWS/GCP integration, ...) are superseded by the v2 endpoint and skipped; the rest of v1 (monitors, dashboards, synthetics, SLOs, hosts, tags, notebooks, log indexes and pipelines, Azure/PagerDuty/Slack/webhook integrations, usage) is exposed alongside v2. `/api/unstable/` endpoints are included and marked `unstable` in the inventory. +- **Server `https://api.{site}`, `DD_SITE` env var.** The single server variable `site` defaults to `datadoghq.com` and carries `x-stackQL-envVar: DD_SITE` (the Datadog Agent / client convention; Terraform's `DD_HOST` is a full URL and does not fit a server variable). The variable is written as `{site:.+}` in the URL: gorilla/mux host variables default to `[^.]+` and would never match a dotted site value - the same reason the previously published provider used a regex-qualified `{region}`. Nine operations (log / event / product-analytics intake, On-Call paging, IP ranges) live on other hosts and get path-level servers in post-processing. +- **Auth parity with Terraform.** `DD_API_KEY` -> `DD-API-KEY` header, `DD_APP_KEY` -> `DD-APPLICATION-KEY` header (custom auth with a successor), exactly as the published provider and the Terraform provider. +- **The CSV is the durable mapping.** `provider-dev/config/all_services.csv` is checked in and is the record of every operation -> resource/method/verb mapping. `analyze` keys existing rows on `filename::operationId` and never changes them; `map_operations.mjs` only fills new rows (from rules and an explicit override table), resyncs rows whose path moved upstream, prunes retired operations, and validates. A resource must not silently move between releases. `provider-dev/config/operation_inventory.csv` adds version, deprecation, pagination, envelope and skip-reason metadata per operation. +- **Skip policy.** Deprecated operations are skipped (the only exception, `ListVulnerabilities`, has no SELECT-able successor), as are v1 operations superseded by v2, multipart/form-data uploads and non-JSON responses (CSV, zip, octet-stream, yaml). Skips are reason-coded in the inventory and `skip_this_resource` in the CSV. +- **Method names are the snake_case operationId** (`list_monitors`, `create_monitor`, `get_apikey`) - the convention of the previously published mapping. Resource names for new operations are derived from the path (`__`, prefix per `rootPrefixes` in `service_names.json`); trailing action segments (`search`, `validate`, `clone`, `cancel`, ...) become `EXEC` methods on the parent resource. +- **Verbs.** GET -> `SELECT`, POST -> `INSERT` (or `EXEC` on an action segment), PUT -> `REPLACE`, PATCH -> `UPDATE`, DELETE -> `DELETE`. POST search endpoints are `EXEC`, never `INSERT`. +- **objectKey.** `x-pagination.resultsPath` when the vendor declares one, `$.data` for the v2 JSON:API envelope (rows are `id`, `type`, `attributes`, `relationships`), `$.` for a v1 single-array envelope of objects, nothing for bare arrays (stackql iterates them natively; the normalize bare-array wrap is reverted by `post_normalize.mjs`, the github precedent) and for plain objects. Entity reads are never exploded on an embedded array. +- **Pagination.** any-sdk follows the cursor dialects only: every GET with `x-pagination.cursorParam` (`page[cursor]`) gets a method-level `config.pagination` (`$.meta.page.after` and friends). Page-number and offset dialects carry no next-page token and stay plain `WHERE` parameters. +- **Pushdown.** `config.queryParamPushdown.top` (SQL `LIMIT` -> `page[limit]` / `page[size]` / `limit` / `count`, bounded by the schema maximum) on every limit-bearing GET; `skip` for the offset dialects. Datadog's `filter[...]` parameters are declared query parameters and are already usable as `WHERE` keys; any-sdk renders only the OData filter syntax, so there is no filter pushdown config. +- **snake_case surface.** `snake_case_aliases: true` on the provider plus `request.nativeCasing: camel` on every method (the aws / azure / clickhouse precedent). The wire is snake_case almost everywhere; the ~17 camelCase query parameters and ~500 camelCase schema properties resolve from snake keys. +- **Deterministic builds.** Every pipeline step is a re-runnable script; manual mapping decisions are rules in `map_operations.mjs` / `service_names.json`, never hand-edits to generated artifacts. Scripts validate and fail without writing. + +## Toolchain rules + +- Use the **latest** `@stackql/provider-utils` and `@stackql/pgwire-lite` (check npm before starting work; do not pin to an old minor). +- Node.js >= 20, `type: module`. The two CLI entry points (`provider-dev-utils.mjs`, `docgen-utils.mjs`) are wrapped as npm scripts invoked through `node`; flags pass through npm's `--` separator. +- A `stackql` binary (>= v0.10.601 for `x-stackQL-envVar`) is required for testing: `$STACKQL`, `./stackql`, or on `PATH`. Run everything under Linux / WSL / macOS (`make`). +- Python 3 with `pystackql` (venv created on demand by `make venv`) for the live smoke suite. + +## Repository layout + +``` +provider-dev/ + downloaded/ # pinned v1-openapi.yaml and v2-openapi.yaml (committed) + build/ # merged spec, mapping report (gitignored) + source/ # split per-service specs (gitignored, regenerated) + config/ # spec_pin.json, service_names.json, servers.json, provider_config.json, + # all_services.csv (durable mapping), operation_inventory.csv + openapi/src/datadog/ # generated provider (committed) + scripts/ # merge_specs, service_discriminator, pre/post_normalize, map_operations, post_process, record_spec_pin + docgen/provider-data/ # headerContent1.txt, headerContent2.txt (docs landing page) +bin/ # fetch-spec.sh, start/stop/status server scripts, test-meta-routes.cjs +tests/ # offline_validation.mjs, smoke_test.py (pystackql) +website/ # Docusaurus 3.10 microsite (shared stackql/docusaurus-config vendored at build time) +Makefile # every step; `make all` = deps, build, tests, docs, site +``` + +## Build pipeline (`make all`) + +1. `make fetch-spec` - download v1 + v2, verify against the pin (`make refresh-spec` to accept drift) +2. `make split` - `merge_specs.mjs`, then `provider-dev-utils split` with the function discriminator `service_discriminator.mjs` (rules and root-segment map in `service_names.json`; an unmapped path family fails the split) +3. `make normalize` - `pre_normalize.mjs` (text/json and datetime-format media types), `provider-dev-utils normalize`, `post_normalize.mjs` (bare-array unwrap) +4. `make mappings` - `provider-dev-utils analyze` (keeps existing CSV rows) then `map_operations.mjs` (fills new rows, prunes, validates, writes the inventory and `provider-dev/build/mapping_report.txt`) +5. `make generate` - `provider-dev-utils generate` (servers.json, provider_config.json, `--naive-req-body-translate`) then `post_process.mjs` (pagination, pushdown, nativeCasing, path servers, marker cleanup) +6. `make test` - `tests/offline_validation.mjs` and the meta-route suite over a local server +7. `make docs` - `docgen-utils generate-docs --snake-case-aliases` then `website/scripts/sanitize-docs.mjs` (MDX escaping plus removal of the `site` server variable from required-parameter cells and examples - it is optional) +8. `make website` - Docusaurus build (vendors the shared config) + +`make smoke` (local provider) / `make smoke-live` (published provider) run `tests/smoke_test.py` against a real organization: reads across the common resources and free-of-charge write lifecycles (monitor, dashboard, downtime, role, API key), everything named `stackql-smoke-` and deleted within the run. Credentials come from `.env` (`DD_API_KEY`, `DD_APP_KEY`, `DD_SITE`). Nothing in the smoke suite ingests data or runs synthetics, so the budget is effectively zero. + +## Writing conventions + +- README and docs copy: measured, precise, no hyperbole. No em dashes; use `-`. No characters not on a QWERTY keyboard; `->` for arrows. +- Sample queries: realistic, runnable, `json_extract` for JSON:API attributes; never a `site` predicate in examples (it is optional). + +## Non-negotiables + +1. Latest `@stackql/provider-utils`, always +2. The CSV mapping is durable: never rename or move an existing resource without a documented reason in the README +3. Deterministic scripts, never hand-edits to derived artifacts +4. Every regeneration is followed by `make test` before commit; the live smoke suite before publishing +5. The smoke suite creates nothing that bills and deletes everything it creates diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..7e8c57c --- /dev/null +++ b/Makefile @@ -0,0 +1,186 @@ +# StackQL datadog provider - build, test and docs pipeline. +# +# Every step is deterministic and re-runnable; manual mapping decisions live +# in provider-dev/config and provider-dev/scripts, never in hand-edited +# generated artifacts. `make all` runs the full chain and can be used at any +# stage to rebuild and test the provider and docs from upstream changes: +# +# deps npm install (@stackql/provider-utils, @stackql/pgwire-lite) +# fetch-spec download the Datadog v1 + v2 OpenAPI specs and verify them +# against the pin in provider-dev/config/spec_pin.json +# (fails on drift - `make refresh-spec` accepts it) +# merge merge v1 + v2 into provider-dev/build/datadog-openapi.yaml +# split split the merged spec into per-service specs (provider-dev/ +# source) using provider-dev/config/service_names.json +# normalize datadog pre-normalize, provider-utils normalize, and the +# bare-array unwrap (post_normalize.mjs) +# mappings refresh provider-dev/config/all_services.csv (analyze keeps +# every existing row - the CSV is the durable record of the +# operation -> resource/method/verb mapping) then +# map_operations.mjs fills in new operations from its rules, +# prunes retired operations, validates, and writes the +# operation inventory +# generate generate the provider tree (servers, auth, naive request +# body translate) then post_process.mjs adds cursor +# pagination, LIMIT/OFFSET pushdown, the snake_case surface and +# the intake/On-Call path servers +# test offline validation + meta-route gate (no credentials) +# docs generate the Docusaurus markdown (snake_case surface) and +# sanitize it for MDX +# website yarn build of website/ (vendors the shared config) +# +# Live smoke tests hit the Datadog API and need credentials, so they are +# NOT part of `all`. Populate .env (DD_API_KEY, DD_APP_KEY, optionally +# DD_SITE) then: +# +# make smoke # local provider (provider-dev/openapi) +# make smoke-live # published provider from the StackQL registry +# +# Requirements: Node >= 20, GNU make, bash, a stackql binary ($STACKQL, +# ./stackql or on PATH), Python 3 (a venv with pystackql is created on +# demand for the smoke suite), yarn for the website. Runs under Linux / +# WSL / macOS. + +SHELL := bash +.DEFAULT_GOAL := help + +PROVIDER := datadog +VERSION := v00.00.00000 +SOURCE_DIR := provider-dev/source +CONFIG_DIR := provider-dev/config +OPENAPI_DIR := provider-dev/openapi +SERVICES_DIR := $(OPENAPI_DIR)/src/$(PROVIDER) +PROVIDER_DIR := $(SERVICES_DIR)/$(VERSION) +MERGED_SPEC := provider-dev/build/$(PROVIDER)-openapi.yaml +WEBSITE_DIR := website +PORT ?= 5444 +VENV := tests/.venv +PY := $(VENV)/bin/python +ENV_FILE := .env + +.PHONY: help deps fetch-spec refresh-spec merge split normalize mappings generate post-process build \ + test-offline test-meta test smoke smoke-live smoke-cleanup venv \ + docs website website-start start-server stop-server server-status clean all + +help: ## show this help + @grep -E '^[a-zA-Z_-]+:.*?## ' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf " %-16s %s\n", $$1, $$2}' + +deps: ## install node dependencies (latest @stackql/provider-utils per package.json range) + npm install + +# ---------------------------------------------------------------- pipeline + +fetch-spec: ## download the Datadog v1 + v2 specs and verify them against the pin (fails on drift) + npm run fetch-spec + +refresh-spec: ## download the specs and ACCEPT the upstream change (rewrites the pin - review the diff) + npm run fetch-spec -- --update + +merge: ## merge the pinned v1 + v2 specs into $(MERGED_SPEC) + npm run merge-specs + +split: merge ## split the merged spec into per-service specs (service_names.json rules) + rm -rf $(SOURCE_DIR)/*.yaml + npm run split -- \ + --provider-name $(PROVIDER) \ + --api-doc $(MERGED_SPEC) \ + --svc-discriminator function \ + --svc-discriminator-fn provider-dev/scripts/service_discriminator.mjs \ + --output-dir $(SOURCE_DIR) \ + --overwrite + +normalize: ## datadog pre-normalize, provider-utils normalize, bare-array unwrap + npm run pre-normalize -- --api-dir $(SOURCE_DIR) + npm run normalize -- --api-dir $(SOURCE_DIR) + npm run post-normalize -- --api-dir $(SOURCE_DIR) + +mappings: ## refresh all_services.csv (existing rows kept) and map new operations (fails on unmapped ops) + npm run generate-mappings -- --input-dir $(SOURCE_DIR) --output-dir $(CONFIG_DIR) + npm run map-operations + +generate: ## generate the provider (servers, auth, naive request body translate) then post-process + rm -rf $(OPENAPI_DIR)/* + npm run generate-provider -- \ + --provider-name $(PROVIDER) \ + --input-dir $(SOURCE_DIR) \ + --output-dir $(SERVICES_DIR) \ + --config-path $(CONFIG_DIR)/all_services.csv \ + --servers $(CONFIG_DIR)/servers.json \ + --provider-config $(CONFIG_DIR)/provider_config.json \ + --naive-req-body-translate \ + --overwrite + $(MAKE) post-process + +post-process: ## re-apply generated-provider fixes (pagination, pushdown, snake_case surface, path servers) + npm run post-process + +build: fetch-spec split normalize mappings generate ## full spec -> provider pipeline + +# ------------------------------------------------------------------- tests + +test-offline: ## offline validation against the local file registry (SHOW / DESCRIBE) + node tests/offline_validation.mjs + +# Go/no-go gate: the server is always torn down and the meta-test's exit +# status is preserved so a failure stops `make all`. +test-meta: ## meta-route suite against a local stackql server (every SHOW / DESCRIBE route) + bash bin/start-server.sh --provider $(PROVIDER) --registry "$(CURDIR)/$(OPENAPI_DIR)" --port $(PORT) + node bin/test-meta-routes.cjs $(PROVIDER) --port $(PORT); status=$$?; bash bin/stop-server.sh --port $(PORT); exit $$status + +test: test-offline test-meta ## all non-live test layers + +$(VENV)/bin/activate: + python3 -m venv $(VENV) + $(VENV)/bin/pip install --quiet --upgrade pip pystackql + +venv: $(VENV)/bin/activate ## create the python venv with pystackql for the smoke suite + +# `make smoke` sources .env when present so a developer checkout works +# without exporting anything; CI sets the variables from secrets. +with_env = set -a; [ -f $(ENV_FILE) ] && source <(tr -d '\r' < $(ENV_FILE)); set +a; + +smoke: venv ## live smoke suite against the LOCAL provider - reads + monitor/dashboard/downtime/role/key lifecycles (needs .env) + @$(with_env) $(PY) tests/smoke_test.py + +smoke-live: venv ## live smoke suite against the PUBLISHED provider in the StackQL registry (post-publish verification) + @$(with_env) $(PY) tests/smoke_test.py --live + +smoke-cleanup: venv ## sweep stackql-smoke-* objects and exit + @$(with_env) $(PY) tests/smoke_test.py --cleanup-only + +# -------------------------------------------------------------------- docs + +docs: ## generate the website docs (snake_case surface, provider-utils >= 0.7.8), then sanitize + rm -rf $(WEBSITE_DIR)/docs/* + npm run generate-docs -- \ + --provider-name $(PROVIDER) \ + --provider-dir ./$(PROVIDER_DIR) \ + --output-dir ./$(WEBSITE_DIR) \ + --provider-data-dir ./provider-dev/docgen/provider-data \ + --snake-case-aliases + node $(WEBSITE_DIR)/scripts/sanitize-docs.mjs + +website: ## build the docusaurus microsite (vendors the shared config first) + cd $(WEBSITE_DIR) && yarn install && yarn build + +website-start: ## run the docusaurus dev server + cd $(WEBSITE_DIR) && yarn install && yarn start + +# ------------------------------------------------------------------ server + +start-server: ## start a local stackql server on PORT=$(PORT) serving the generated provider + bash bin/start-server.sh --provider $(PROVIDER) --registry "$(CURDIR)/$(OPENAPI_DIR)" --port $(PORT) + +stop-server: ## stop the local stackql server + bash bin/stop-server.sh --port $(PORT) + +server-status: ## show the local stackql server status + bash bin/server-status.sh --port $(PORT) + +clean: ## remove generated artifacts (merged spec, split source, provider output, docs, website build) + rm -rf provider-dev/build $(SOURCE_DIR)/*.yaml $(OPENAPI_DIR)/* $(WEBSITE_DIR)/docs/services $(WEBSITE_DIR)/build $(WEBSITE_DIR)/.docusaurus + +all: deps build test docs website ## everything non-billable: deps, pipeline, tests, docs, site build + @echo "" + @echo "make all complete: provider + docs generated, offline and meta-route gates passed." + @echo "Live smoke tests are run separately - see 'make help' (smoke, smoke-live)." diff --git a/README.md b/README.md index f28ed27..cbd847f 100644 --- a/README.md +++ b/README.md @@ -1,302 +1,252 @@ -# `datadog` provider for [`stackql`](https://github.com/stackql/stackql) - -This repository is used to generate and document the `datadog` provider for StackQL, allowing you to query and manipulate DataDog resources using SQL-like syntax. The provider is built using the `@stackql/provider-utils` package, which provides tools for converting OpenAPI specifications into StackQL-compatible provider schemas. - -## Prerequisites - -To use the DataDog provider with StackQL, you'll need: - -1. A DataDog account with appropriate API credentials -2. DataDog API and Application keys with sufficient permissions for the resources you want to access -3. StackQL CLI installed on your system (see [StackQL](https://github.com/stackql/stackql)) - -## 1. Download the Open API Specification - -First, download the DataDog API OpenAPI specification: - -```bash -rm -rf provider-dev/downloaded/* -curl -L https://raw.githubusercontent.com/DataDog/datadog-api-client-typescript/refs/heads/master/.generator/schemas/v2/openapi.yaml \ --o provider-dev/downloaded/openapi.yaml -``` - -## 2. Split into Service Specs - -Next, split the monolithic OpenAPI specification into service-specific files: - -```bash -rm -rf provider-dev/source/* -npm run split -- \ - --provider-name datadog \ - --api-doc provider-dev/downloaded/openapi.yaml \ - --svc-discriminator path \ - --output-dir provider-dev/source \ - --overwrite \ - --svc-name-overrides "$(cat <= v0.10.601), the convention of the Datadog Agent and every Datadog API client. With `DD_SITE` exported, no query needs a `site` predicate; a `WHERE site = '...'` value still wins for that statement. The variable is written `{site:.+}` in the URL template because gorilla/mux host variables default to `[^.]+` and would never match a dotted site (the reason the previously published provider used a regex-qualified `{region}`). Terraform's `DD_HOST` is a full URL (`https://api.datadoghq.eu`) and does not fit an OpenAPI server variable; `DD_SITE` is the equivalent. The nine operations that address other hosts - the log, event and product-analytics intake endpoints, the On-Call paging endpoints and the IP ranges document - carry path-level servers reinstated by the post-process step. +- **Authentication parity with Terraform.** `DD_API_KEY` is sent as the `DD-API-KEY` header and `DD_APP_KEY` as the `DD-APPLICATION-KEY` header (StackQL `custom` auth with a `successor`), the same environment variables the Terraform provider and the API clients read, unchanged from the previously published provider. +- **The mapping CSV is durable.** `provider-dev/config/all_services.csv` is the checked-in record of every operation -> resource / method / verb mapping. `analyze` keys existing rows on `filename::operationId` and never changes them, so a resource does not move between releases; `map_operations.mjs` only maps new operations (by rule plus an explicit override table), resyncs rows whose path moved upstream, prunes retired operations and validates the whole mapping (unique methods, unique required-parameter signatures per SQL verb). `provider-dev/config/operation_inventory.csv` records version, deprecation, sunset date, Terraform resource marker, pagination dialect, response envelope and skip reason for all 1779 operations. +- **snake_case surface.** `snake_case_aliases: true` on the provider and `request.nativeCasing: camel` on every method (the aws, azure and clickhouse precedent): the Datadog wire is snake_case almost everywhere, and the handful of camelCase query parameters (`filterBy`, `includeDiscovered`, `filter[widgetType]`, ...) and schema properties resolve from snake_case SQL keys. Method names are the snake_case operationId (`list_monitors`, `create_monitor`, `get_apikey`), as in the previously published mapping. +- **JSON:API rows for v2, flat rows for v1.** v2 responses are projected with `objectKey: $.data`, so rows carry `id`, `type`, `attributes` and `relationships` and attributes are addressed with `json_extract`. v1 responses are flat (`monitors`, `dashboards`, `hosts`, `slos`), keyed on the vendor's single-array envelope (`$.dashboards`, `$.host_list`, `$.tests`) or iterated natively for bare arrays (monitors) - the normalize bare-array wrap is reverted (`post_normalize.mjs`, the github precedent). +- **Pagination and pushdown.** Datadog declares its pagination dialect per operation (`x-pagination`). any-sdk follows the cursor dialects, so every cursor-paginated read (`page[cursor]` / `$.meta.page.after` and variants - audit events, container images, spans, RUM events, CI events, security signals and findings, ...) gets a method-level `config.pagination` block. The page-number and offset dialects carry no next-page token in the response and stay plain `WHERE` parameters. A SQL `LIMIT` is pushed to the vendor's page-size parameter on every limit-bearing read (`config.queryParamPushdown.top`, bounded by the schema maximum), and `OFFSET` to the offset dialects. Datadog's `filter[...]` query parameters are declared parameters and are used directly as `WHERE` predicates. +- **Deterministic builds.** Every pipeline step is a re-runnable script; manual decisions are rules in `provider-dev/scripts` and `provider-dev/config`, never hand-edits to generated artifacts. Scripts validate and fail without writing. + +### Changes from the previously published provider + +The previous release was built from the v2 spec alone (575 operations). This release adds the v1 surface and the v2 growth since (1779 operations). Mappings of the 533 operations that still exist are unchanged except for: `RemoveUserFromRole` (`DELETE /api/v2/roles/{role_id}/users`) moved from `role_permissions` to `role_users`, where the matching add and list already were; the `POST .../search` and submit endpoints `ListLogs`, `SubmitLog` and `SearchEvents` are `EXEC` rather than `INSERT` (they shared the create's signature and were unreachable); the v2 downtime CRUD stays in `service_management`. Twenty-three previously mapped operations were retired: the deprecated API catalog, bulk-tags, member-teams, SLO report, cost-by-org and product-usage endpoints, the DORA incident and scorecard batch endpoints (all deprecated by the vendor, `deprecated` in the inventory), the multipart IdP metadata upload, and the two policy downloads that return YAML. Nineteen were removed upstream (incident services and teams, the remote-config observability pipelines - now `logs.observability_pipelines` on the new `/api/v2/obs-pipelines` API). The `apis` and `idp_metadata` resources no longer exist. + +## Prerequisites + +- Node.js >= 20 +- A local `stackql` binary (>= v0.10.601) for testing: `$STACKQL`, `./stackql`, or on `PATH` +- Python 3 (a venv with `pystackql` is created on demand) for the live smoke suite +- Datadog API and application keys for the live smoke suite ([API and application keys](https://docs.datadoghq.com/account_management/api-app-keys/)) + +Install dependencies: + +```bash +npm install +``` + +### Makefile + +Every step below is wrapped as a `make` target (GNU make, bash; runs under Linux, WSL and macOS). `make help` lists them; the composite targets are: + +```bash +make all # deps, full pipeline (fetch/pin, merge, split, normalize, mappings, generate), + # offline + meta-route tests, docs generation, website build +make smoke # live smoke suite against the LOCAL provider (sources .env if present) +make smoke-live # live smoke suite against the PUBLISHED provider in the registry +``` + +`make all` never touches a Datadog organization - the live suites are separate targets. Credentials are read from the environment or a gitignored `.env` file: + +```bash +DD_API_KEY=... +DD_APP_KEY=... +DD_SITE=datadoghq.com # optional: the organization's site (us3/us5/ap1/ap2.datadoghq.com, datadoghq.eu, ddog-gov.com) +``` + +## 0. Download and Pin the Specs + +```bash +make fetch-spec # npm run fetch-spec +``` + +`bin/fetch-spec.sh` downloads the v1 and v2 specs into `provider-dev/downloaded/` and verifies each against the sha256 recorded in `provider-dev/config/spec_pin.json`. Neither spec is versioned (`info.version` is a constant "1.0"), so the pin is the record of what was built. If upstream has changed the script fails without writing; accept the refresh and review the resulting diff with: + +```bash +make refresh-spec # npm run fetch-spec -- --update +``` + +The pinned specs (fetched 2026-08-26): v1 - 150 paths, 235 operations; v2 - 976 paths, 1544 operations. + +## 1. Merge and Split into Service Specs + +```bash +make split +``` + +`merge_specs.mjs` merges the two pinned specs into `provider-dev/build/datadog-openapi.yaml`: paths are unioned, the 39 v1 operationIds that collide with v2 are suffixed `V1` and tagged as superseded, the 47 v1 component schemas that collide with a different v2 definition are suffixed `V1` (references rewritten), and the vendor's operation-level servers are recorded for the post-process step. `provider-dev-utils split` then splits the merged spec with the function discriminator `provider-dev/scripts/service_discriminator.mjs`: ordered path rules and a root-segment map in `provider-dev/config/service_names.json`, with a hard failure for any path family that has no rule. The 16 services of the previous release are kept; `fleet` (Fleet Automation) and `llm_observability` (LLM Observability, Model Lab) are new. + +| Service | Surface | Operations (mapped / total) | Resources | +|---|---|---|---| +| `service_management` | incidents, cases, on-call, SLOs (v1), downtimes (v2), events, status pages, forms, change management, error tracking | 281 / 294 | 82 | +| `organization` | users, roles, permissions, API / application keys, service accounts, teams, org settings, SAML, audit logs, usage (v1 + v2), IP ranges | 207 / 263 | 85 | +| `security` | security monitoring rules / signals / suppressions, findings, vulnerabilities, CSM, agentless scanning, static analysis, SIEM historical detections | 247 / 255 | 93 | +| `integrations` | AWS, GCP, Azure (v1), OCI, Jira, ServiceNow, Slack, MS Teams, Google Chat, PagerDuty (v1), Opsgenie, webhooks (v1), Cloudflare, Confluent, Fastly, Okta, reference tables | 192 / 215 | 59 | +| `monitoring` | monitors (v1), synthetics (v1 + v2), monitor policies, notification rules, service checks | 100 / 101 | 39 | +| `digital_experience` | RUM applications / events / metrics / retention, replay, product analytics, sourcemaps | 98 / 98 | 38 | +| `llm_observability` | projects, datasets, experiments, prompts, annotation queues, evaluators, Model Lab | 83 / 88 | 37 | +| `cloud_costs` | budgets, cost configs (AWS / Azure / GCP / OCI), commitments, tag pipelines, cost attribution | 73 / 73 | 37 | +| `software_delivery` | CI pipelines and tests, DORA, deployment gates, workflows, feature flags, code coverage | 71 / 72 | 20 | +| `dashboards` | dashboards (v1), dashboard lists, powerpacks, notebooks, widgets, annotations, reports, snapshots | 61 / 62 | 16 | +| `logs` | log indexes and pipelines (v1), archives, custom destinations, metrics, restriction queries, observability pipelines | 55 / 57 | 14 | +| `infrastructure` | hosts and tags (v1), containers, processes, network devices, app builder, storage management | 47 / 47 | 28 | +| `metrics` | metrics, tag configurations, active metrics and query (v1), datasets, DDSQL | 42 / 46 | 18 | +| `apm` | retention filters, spans metrics, scorecards, traces | 27 / 28 | 10 | +| `remote_config` | CSM Threats agent rules and policies, WAF rules and policies, RUM config | 27 / 28 | 6 | +| `actions` | action connections, datastores, execution policies | 23 / 23 | 6 | +| `fleet` | agents, deployments, schedules, tracers | 16 / 16 | 6 | +| `catalog` | software catalog entities, kinds, relations | 8 / 13 | 3 | + +## 2. Normalize the Service Specs + +```bash +make normalize +``` + +`pre_normalize.mjs` re-keys the two `text/json` request bodies (v1 metric and distribution-point submission) and 195 `application/json;datetime-format=rfc3339` responses to plain `application/json`; the generic provider-utils pass flattens `allOf`, lowers `oneOf`/`anyOf` and opaque objects, lifts path-item parameters and strips non-root servers; `post_normalize.mjs` reverts the bare-array wrap on the 14 v1 list responses that are top-level arrays (monitors, hosts, ...) so stackql iterates them natively. + +## 3. Generate Mappings + +```bash +make mappings +``` + +`provider-dev-utils analyze` refreshes `provider-dev/config/all_services.csv`, keeping every existing row; `map_operations.mjs` maps new operations, prunes retired ones, validates, and writes `provider-dev/config/operation_inventory.csv` and `provider-dev/build/mapping_report.txt` (every new mapping, every skip, resources per service, non-selectable resources). It fails without writing on any violation. + +Mapping conventions for new operations: + +| Operation pattern | StackQL verb | Resource / method | +|---|---|---| +| GET collection / entity | `SELECT` | resource from the path (`__`); objectKey `$.data` (v2), `$.` (v1 envelope of objects), `x-pagination.resultsPath` when declared | +| POST create | `INSERT` | `.create_*` | +| PATCH | `UPDATE` | `.update_*` | +| PUT | `REPLACE` | `.update_*` (v1 monitors, dashboards, synthetics; JSON:API PUTs) | +| DELETE | `DELETE` | `.delete_*` | +| POST / PUT / PATCH on an action segment (`search`, `validate`, `clone`, `cancel`, `mute`, `bulk`, ...) | `EXEC` | method on the parent resource | +| GET with no projectable columns | `EXEC` | two RUM replay / SCA reads with opaque schemas | +| deprecated, superseded by v2, multipart upload, non-JSON response | skipped | reason-coded in the inventory | + +Mapping results: 1658 methods - 688 `SELECT`, 280 `INSERT`, 163 `UPDATE`, 95 `REPLACE`, 239 `DELETE`, 193 `EXEC`; 121 skipped (88 deprecated, 21 superseded by v2, 8 non-JSON responses, 4 multipart uploads). 597 resources, 104 of them without a `SELECT` (action-only surfaces such as product analytics queries, case field commands, feature flag variants). + +## 4. Generate the Provider + +```bash +make generate +``` + +which runs: + +```bash +rm -rf provider-dev/openapi/* +npm run generate-provider -- \ + --provider-name datadog \ + --input-dir provider-dev/source \ + --output-dir provider-dev/openapi/src/datadog \ + --config-path provider-dev/config/all_services.csv \ + --servers provider-dev/config/servers.json \ + --provider-config provider-dev/config/provider_config.json \ + --naive-req-body-translate \ + --overwrite +npm run post-process +``` + +`--naive-req-body-translate` exposes top-level request body properties as `INSERT` / `UPDATE` columns and `EXEC` variables: v1 bodies are flat (`INSERT INTO datadog.monitoring.monitors (name, type, query, ...)`), v2 JSON:API bodies take the `data` document (`INSERT INTO datadog.organization.roles (data) SELECT '{"type": "roles", "attributes": {...}}'`). `post_process.mjs` adds the cursor pagination config (15 reads), `LIMIT` / `OFFSET` pushdown (153 / 41 reads), `request.nativeCasing: camel` on all 1658 methods, the 9 path-level server overrides, and strips the build markers. + +### Server variable + +```sql +-- DD_SITE=datadoghq.eu exported: no site predicate needed +SELECT id, name, overall_state FROM datadog.monitoring.monitors; + +-- a WHERE value overrides the environment for one statement +SELECT id, name FROM datadog.monitoring.monitors WHERE site = 'us5.datadoghq.com'; +``` + +### Authentication + +Provider config (`provider-dev/config/provider_config.json`): `DD-API-KEY` from `DD_API_KEY` with `DD-APPLICATION-KEY` from `DD_APP_KEY` as the successor header. Different variable names can be passed at runtime with `--auth='{"datadog": {"type": "custom", "location": "header", "name": "DD-API-KEY", "credentialsenvvar": "...", "successor": {...}}}'`. + +## 5. Test the Provider + +Three layers, in order. Every regeneration is followed by the first two before commit (`make test`); the third is live. + +### Offline validation + +```bash +make test-offline # node tests/offline_validation.mjs +``` + +`SHOW SERVICES` / `SHOW RESOURCES` / `SHOW METHODS` and `DESCRIBE EXTENDED` against the local file registry: the 18 services and representative resources per service, the verb mapping on `monitors`, `hosts`, `role_users` and `audit_logs`, the v1 flat columns and the v2 JSON:API columns, the `https://api.{site:.+}` server with `DD_SITE`, `nativeCasing` on every method, the pagination and pushdown counts, the path-level servers, and the absence of build markers. 46 checks. + +### Meta-route test suite + +```bash +make test-meta # start-server / test-meta-routes -- datadog / stop-server +``` + +Walks every service, resource and method over a local server: 18 services, 597 resources, 1658 methods, no failures. + +### Smoke tests (live) + +```bash +make smoke # local provider (provider-dev/openapi) +make smoke-live # published provider from the registry (post-publish verification) +make smoke-cleanup # sweep stackql-smoke-* objects and exit +``` + +[tests/smoke_test.py](tests/smoke_test.py) (pystackql) runs against a real organization: read smokes over users, the current user, roles, API and application keys, the audit log (cursor pagination with `filter[from]`), IP ranges (path-level server), monitors, dashboards, hosts and host totals, SLOs, synthetics tests and locations, log indexes, active metrics, the usage summary and a `LIMIT` pushdown; then write lifecycles for a monitor (`INSERT`, `SELECT`, search, `REPLACE`, `EXEC validate`, `DELETE`), a dashboard, a v2 downtime, a role (`INSERT` / `UPDATE` / permissions / `DELETE`) and an API key. Everything is named `stackql-smoke-` and deleted within the run; breadcrumbs from earlier runs are swept first. Nothing created is metered and no data is ingested (no metric, log or event submission, no synthetics runs), so the cost of a run is zero: 56 statements, 51 checks. `DD_SITE` must match the organization's site (a wrong site answers 403 to every call). + +### UAT + +```bash +set -a; source .env; set +a +REG_ROOT="$(pwd)/provider-dev/openapi" +REG="{\"url\":\"file://${REG_ROOT}\",\"localDocRoot\":\"${REG_ROOT}\",\"verifyConfig\":{\"nopVerify\":true}}" +stackql --registry="${REG}" shell +``` + +### CI + +[.github/workflows/build-and-test.yml](.github/workflows/build-and-test.yml): pin check, build, generation-drift check, offline validation, meta-route tests and docs generation on every push and PR; the secret-gated live smoke suite on pushes (`DD_API_KEY`, `DD_APP_KEY`, `DD_SITE`); and a weekly `spec-drift` job that fetches the upstream specs, compares them with the pin, and opens a `spec-drift` issue when they move. The web workflows build and deploy the microsite from `main`. + +## 6. Publish the Provider + +To publish, push the `datadog` dir to `providers/src` in a feature branch of the [`stackql-provider-registry`](https://github.com/stackql/stackql-provider-registry) and follow the [registry release flow](https://github.com/stackql/stackql-provider-registry/blob/dev/docs/build-and-deployment.md). Pull and verify from the dev registry: + +```bash +export DEV_REG="{ \"url\": \"https://registry-dev.stackql.app/providers\" }" +stackql --registry="${DEV_REG}" shell +``` + +```sql +registry pull datadog; +``` + +then `make smoke-live`. + +## 7. Generate Web Docs + +The doc microsite (`website/`) is Docusaurus 3.10 and follows the shared architecture used by the other provider microsites: navbar, footer, theme and plugin configuration live in [`stackql/docusaurus-config`](https://github.com/stackql/docusaurus-config), vendored into `.shared-config/` at build time. Site-local files are limited to the provider identity (`website/provider.js`), a thin `docusaurus.config.js` (which also turns on `showLastUpdateTime` so every page carries a "Last updated on" stamp from git), the shared components and theme under `src/`, and static assets including `static/CNAME` (`datadog-provider.stackql.io`). + +```bash +make docs # generate-docs --snake-case-aliases + website/scripts/sanitize-docs.mjs +make website # yarn install && yarn build (vendors the shared config; needs GitHub access) +make website-start +``` + +`headerContent1.txt` / `headerContent2.txt` in `provider-dev/docgen/provider-data/` supply the landing page: installation, authentication, the `DD_SITE` convention, the provider scope, and getting-started queries (monitors and alert state, monitor search, user and key audit, roles, dashboards and SLOs, hosts, active metrics, log indexes, the audit log, usage, and the monitor / role / downtime lifecycles). `sanitize-docs.mjs` escapes MDX-hostile description text and, since docgen treats every server variable as required, removes `site` from the required-parameter cells and examples and marks it optional in the parameter tables. + +To publish, select GitHub Actions as the Pages source and create the DNS record (the served hostname is pinned by `website/static/CNAME`): + +| Source Domain | Record Type | Target | +|---|---|---| +| datadog-provider.stackql.io | CNAME | stackql.github.io. | + +## Roadmap + +- Flatten the v2 JSON:API `attributes` document into top-level columns with a response transform (the azure `properties` precedent) so v2 resources read like the v1 ones. +- Page-number and offset pagination traversal once any-sdk supports a total-count terminator for those dialects. +- Datadog has no public GraphQL API; nothing to merge. + +## License + +MIT License - see [LICENSE](LICENSE). + +## Contributing + +Contributions are welcome. Please open an issue or pull request. diff --git a/bin/fetch-spec.sh b/bin/fetch-spec.sh new file mode 100644 index 0000000..550c48b --- /dev/null +++ b/bin/fetch-spec.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash + +# Downloads the Datadog v1 and v2 OpenAPI specs (published in the +# datadog-api-client-typescript repository, the source of every official +# Datadog API client) into provider-dev/downloaded/ and records the fetch +# date and content hashes in provider-dev/config/spec_pin.json. +# +# Both specs are versioned only by the git history of that repository (the +# info.version field is a constant "1.0"), so the pin is the record of what +# was built. If a download does not match the recorded pin the script fails +# without touching the committed snapshots; pass --update to accept the +# upstream change and rewrite the pin (review the resulting spec diff). +# +# Usage: bin/fetch-spec.sh [--update] + +set -euo pipefail + +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +REPO_ROOT="$( cd "$SCRIPT_DIR/.." && pwd )" +DOWNLOAD_DIR="$REPO_ROOT/provider-dev/downloaded" +PIN_FILE="$REPO_ROOT/provider-dev/config/spec_pin.json" +BASE_URL="https://raw.githubusercontent.com/DataDog/datadog-api-client-typescript/master/.generator/schemas" + +UPDATE=false +if [ "${1:-}" = "--update" ]; then + UPDATE=true +fi + +mkdir -p "$DOWNLOAD_DIR" +TMP_DIR="$(mktemp -d)" +trap 'rm -rf "$TMP_DIR"' EXIT + +for v in v1 v2; do + echo "Fetching Datadog $v spec from $BASE_URL/$v/openapi.yaml" + curl -fsSL "$BASE_URL/$v/openapi.yaml" -o "$TMP_DIR/$v-openapi.yaml" +done + +UPDATE="$UPDATE" TMP_DIR="$TMP_DIR" DOWNLOAD_DIR="$DOWNLOAD_DIR" PIN_FILE="$PIN_FILE" BASE_URL="$BASE_URL" \ +node "$REPO_ROOT/provider-dev/scripts/record_spec_pin.mjs" diff --git a/bin/generate-docs.mjs b/bin/generate-docs.mjs deleted file mode 100644 index 4be9b84..0000000 --- a/bin/generate-docs.mjs +++ /dev/null @@ -1,44 +0,0 @@ -#!/usr/bin/env node - -import { docgen } from '@stackql/provider-utils'; - -async function generateDocs() { - // Get command line arguments - const args = process.argv.slice(2); - const getArg = (flag) => { - const index = args.indexOf(flag); - return index !== -1 ? args[index + 1] : null; - }; - - const providerName = getArg('--provider-name'); - const providerDir = getArg('--provider-dir'); - const outputDir = getArg('--output-dir'); - const providerDataDir = getArg('--provider-data-dir'); - - if (!providerName || !providerDir || !outputDir || !providerDataDir) { - console.error('Error: Missing required arguments'); - console.error('Usage: node generate-docs.mjs --provider-name NAME --provider-dir DIR --output-dir DIR --provider-data-dir DIR'); - process.exit(1); - } - - try { - console.log(`Generating docs for provider: ${providerName}`); - console.log(`Provider directory: ${providerDir}`); - console.log(`Output directory: ${outputDir}`); - console.log(`Provider data directory: ${providerDataDir}`); - - const result = await docgen.generateDocs({ - providerName, - providerDir, - outputDir, - providerDataDir - }); - - console.log('Documentation generated successfully:', result); - } catch (error) { - console.error('Error generating documentation:', error); - process.exit(1); - } -} - -generateDocs(); \ No newline at end of file diff --git a/bin/generate-docs.sh b/bin/generate-docs.sh deleted file mode 100644 index 0602e15..0000000 --- a/bin/generate-docs.sh +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env bash - -# Exit on error -set -e - -# Get the script directory for relative paths -SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -REPO_ROOT="$( cd "$SCRIPT_DIR/.." && pwd )" - -# Parse command line arguments -while [[ $# -gt 0 ]]; do - case $1 in - --provider-name) - PROVIDER_NAME="$2" - shift 2 - ;; - --provider-dir) - PROVIDER_DIR="$2" - shift 2 - ;; - --output-dir) - OUTPUT_DIR="$2" - shift 2 - ;; - --provider-data-dir) - PROVIDER_DATA_DIR="$2" - shift 2 - ;; - --help) - echo "Usage: generate-docs.sh [OPTIONS]" - echo "" - echo "Options:" - echo " --provider-name NAME Provider name (default: snowflake)" - echo " --provider-dir DIR Provider directory path (default: $PROVIDER_DIR)" - echo " --output-dir DIR Output directory for docs (default: $OUTPUT_DIR)" - echo " --provider-data-dir DIR Provider data directory (default: $PROVIDER_DATA_DIR)" - echo " --help Show this help message" - exit 0 - ;; - *) - echo "Unknown option: $1" - echo "Use --help for usage information" - exit 1 - ;; - esac -done - -echo "📚 Generating documentation using @stackql/provider-utils..." - -# Run the Node.js script with arguments -node --experimental-modules "$SCRIPT_DIR/generate-docs.mjs" \ - --provider-name "$PROVIDER_NAME" \ - --provider-dir "$PROVIDER_DIR" \ - --output-dir "$OUTPUT_DIR" \ - --provider-data-dir "$PROVIDER_DATA_DIR" - -# Check if command succeeded -if [ $? -ne 0 ]; then - echo "❌ Documentation generation failed" - exit 1 -fi - -echo "✅ Documentation generated successfully" \ No newline at end of file diff --git a/bin/generate-mappings.mjs b/bin/generate-mappings.mjs deleted file mode 100644 index f711fbc..0000000 --- a/bin/generate-mappings.mjs +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env node - -import { providerdev } from '@stackql/provider-utils'; - -async function generateMappings() { - // Get command line arguments - const args = process.argv.slice(2); - const getArg = (flag) => { - const index = args.indexOf(flag); - return index !== -1 ? args[index + 1] : null; - }; - - const providerName = getArg('--provider-name'); - const inputDir = getArg('--input-dir'); - const outputDir = getArg('--output-dir'); - const verbose = args.includes('--verbose'); - - if (!providerName || !inputDir || !outputDir) { - console.error('Error: Missing required arguments'); - console.error('Usage: node generate-mappings.mjs --provider-name NAME --input-dir DIR --output-dir DIR [--verbose]'); - process.exit(1); - } - - try { - console.log(`Analyzing OpenAPI specs for provider: ${providerName}`); - console.log(`Input directory: ${inputDir}`); - console.log(`Output directory: ${outputDir}`); - - const result = await providerdev.analyze({ - inputDir, - outputDir, - verbose - }); - - console.log('Analysis completed successfully:', result); - } catch (error) { - console.error('Error analyzing OpenAPI specs:', error); - process.exit(1); - } -} - -generateMappings(); \ No newline at end of file diff --git a/bin/generate-mappings.sh b/bin/generate-mappings.sh deleted file mode 100644 index a4921c1..0000000 --- a/bin/generate-mappings.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env bash - -# Exit on error -set -e - -# Get the script directory for relative paths -SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -REPO_ROOT="$( cd "$SCRIPT_DIR/.." && pwd )" - -# Default values -PROVIDER_NAME="" -INPUT_DIR="" -OUTPUT_DIR="" -VERBOSE=false - -# Parse command line arguments -while [[ $# -gt 0 ]]; do - case $1 in - --provider-name) - PROVIDER_NAME="$2" - shift 2 - ;; - --input-dir) - INPUT_DIR="$2" - shift 2 - ;; - --output-dir) - OUTPUT_DIR="$2" - shift 2 - ;; - --verbose) - VERBOSE=true - shift - ;; - --help) - echo "Usage: generate-mappings.sh [OPTIONS]" - echo "" - echo "Options:" - echo " --provider-name NAME Provider name (required)" - echo " --input-dir DIR Input directory containing split OpenAPI files (required)" - echo " --output-dir DIR Output directory for mapping file (required)" - echo " --verbose Enable verbose output" - echo " --help Show this help message" - exit 0 - ;; - *) - echo "Unknown option: $1" - echo "Use --help for usage information" - exit 1 - ;; - esac -done - -# Check required arguments -if [ -z "$PROVIDER_NAME" ] || [ -z "$INPUT_DIR" ] || [ -z "$OUTPUT_DIR" ]; then - echo "Error: Missing required arguments" - echo "Use --help for usage information" - exit 1 -fi - -echo "🔍 Analyzing OpenAPI specs to generate mappings..." -echo "Provider: $PROVIDER_NAME" -echo "Input Directory: $INPUT_DIR" -echo "Output Directory: $OUTPUT_DIR" - -# Build command arguments -ARGS=("--provider-name" "$PROVIDER_NAME" "--input-dir" "$INPUT_DIR" "--output-dir" "$OUTPUT_DIR") - -if [ "$VERBOSE" = true ]; then - ARGS+=("--verbose") - echo "Verbose: Yes" -fi - -# Run the Node.js script with arguments -node --experimental-modules "$SCRIPT_DIR/generate-mappings.mjs" "${ARGS[@]}" - -# Check if command succeeded -if [ $? -ne 0 ]; then - echo "❌ Mapping generation failed" - exit 1 -fi - -echo "✅ Mapping file generated successfully at: $OUTPUT_DIR/all_services.csv" \ No newline at end of file diff --git a/bin/generate-provider.mjs b/bin/generate-provider.mjs deleted file mode 100644 index 501eead..0000000 --- a/bin/generate-provider.mjs +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/env node - -import { providerdev } from '@stackql/provider-utils'; - -async function generateProvider() { - // Get command line arguments - const args = process.argv.slice(2); - const getArg = (flag) => { - const index = args.indexOf(flag); - return index !== -1 ? args[index + 1] : null; - }; - - const providerName = getArg('--provider-name'); - const inputDir = getArg('--input-dir'); - const outputDir = getArg('--output-dir'); - const configPath = getArg('--config-path'); - const servers = getArg('--servers'); - const providerConfig = getArg('--provider-config'); - const skipFiles = getArg('--skip-files')?.split(',') || []; - const overwrite = args.includes('--overwrite'); - const verbose = args.includes('--verbose'); - - if (!providerName || !inputDir || !outputDir || !configPath) { - console.error('Error: Missing required arguments'); - console.error('Usage: node generate-provider.mjs --provider-name NAME --input-dir DIR --output-dir DIR --config-path PATH [--servers JSON] [--provider-config JSON] [--skip-files LIST] [--overwrite] [--verbose]'); - process.exit(1); - } - - try { - console.log(`Generating StackQL provider extensions for: ${providerName}`); - console.log(`Input directory: ${inputDir}`); - console.log(`Output directory: ${outputDir}`); - console.log(`Config path: ${configPath}`); - - if (servers) { - console.log(`Custom servers configuration provided`); - } - - if (providerConfig) { - console.log(`Custom provider configuration provided`); - } - - if (skipFiles.length > 0) { - console.log(`Skipping files: ${skipFiles.join(', ')}`); - } - - const result = await providerdev.generate({ - inputDir, - outputDir, - configPath, - providerId: providerName, - servers, - providerConfig, - skipFiles, - overwrite, - verbose - }); - - console.log('Provider generation completed successfully:', result); - } catch (error) { - console.error('Error generating provider extensions:', error); - process.exit(1); - } -} - -generateProvider(); \ No newline at end of file diff --git a/bin/generate-provider.sh b/bin/generate-provider.sh deleted file mode 100644 index 429933a..0000000 --- a/bin/generate-provider.sh +++ /dev/null @@ -1,134 +0,0 @@ -#!/usr/bin/env bash - -# Exit on error -set -e - -# Get the script directory for relative paths -SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -REPO_ROOT="$( cd "$SCRIPT_DIR/.." && pwd )" - -# Default values -PROVIDER_NAME="" -INPUT_DIR="" -OUTPUT_DIR="" -CONFIG_PATH="" -SERVERS="" -PROVIDER_CONFIG="" -SKIP_FILES="" -OVERWRITE=false -VERBOSE=false - -# Parse command line arguments -while [[ $# -gt 0 ]]; do - case $1 in - --provider-name) - PROVIDER_NAME="$2" - shift 2 - ;; - --input-dir) - INPUT_DIR="$2" - shift 2 - ;; - --output-dir) - OUTPUT_DIR="$2" - shift 2 - ;; - --config-path) - CONFIG_PATH="$2" - shift 2 - ;; - --servers) - SERVERS="$2" - shift 2 - ;; - --provider-config) - PROVIDER_CONFIG="$2" - shift 2 - ;; - --skip-files) - SKIP_FILES="$2" - shift 2 - ;; - --overwrite) - OVERWRITE=true - shift - ;; - --verbose) - VERBOSE=true - shift - ;; - --help) - echo "Usage: generate-provider.sh [OPTIONS]" - echo "" - echo "Options:" - echo " --provider-name NAME Provider name/ID (required)" - echo " --input-dir DIR Input directory containing split OpenAPI files (required)" - echo " --output-dir DIR Output directory for provider (required)" - echo " --config-path PATH Path to CSV mapping file (required)" - echo " --servers JSON JSON string with servers configuration" - echo " --provider-config JSON JSON string with provider configuration" - echo " --skip-files LIST Comma-separated list of files to skip" - echo " --overwrite Overwrite existing files" - echo " --verbose Enable verbose output" - echo " --help Show this help message" - exit 0 - ;; - *) - echo "Unknown option: $1" - echo "Use --help for usage information" - exit 1 - ;; - esac -done - -# Check required arguments -if [ -z "$PROVIDER_NAME" ] || [ -z "$INPUT_DIR" ] || [ -z "$OUTPUT_DIR" ] || [ -z "$CONFIG_PATH" ]; then - echo "Error: Missing required arguments" - echo "Use --help for usage information" - exit 1 -fi - -echo "🔧 Generating StackQL provider extensions..." -echo "Provider: $PROVIDER_NAME" -echo "Input Directory: $INPUT_DIR" -echo "Output Directory: $OUTPUT_DIR" -echo "Config Path: $CONFIG_PATH" - -# Build command arguments -ARGS=("--provider-name" "$PROVIDER_NAME" "--input-dir" "$INPUT_DIR" "--output-dir" "$OUTPUT_DIR" "--config-path" "$CONFIG_PATH") - -if [ -n "$SERVERS" ]; then - ARGS+=("--servers" "$SERVERS") - echo "Custom servers configuration provided" -fi - -if [ -n "$PROVIDER_CONFIG" ]; then - ARGS+=("--provider-config" "$PROVIDER_CONFIG") - echo "Custom provider configuration provided" -fi - -if [ -n "$SKIP_FILES" ]; then - ARGS+=("--skip-files" "$SKIP_FILES") - echo "Skipping files: $SKIP_FILES" -fi - -if [ "$OVERWRITE" = true ]; then - ARGS+=("--overwrite") - echo "Overwrite: Yes" -fi - -if [ "$VERBOSE" = true ]; then - ARGS+=("--verbose") - echo "Verbose: Yes" -fi - -# Run the Node.js script with arguments -node --experimental-modules "$SCRIPT_DIR/generate-provider.mjs" "${ARGS[@]}" - -# Check if command succeeded -if [ $? -ne 0 ]; then - echo "❌ Provider generation failed" - exit 1 -fi - -echo "✅ Provider generated successfully at: $OUTPUT_DIR" \ No newline at end of file diff --git a/bin/split.mjs b/bin/split.mjs deleted file mode 100644 index 02a344c..0000000 --- a/bin/split.mjs +++ /dev/null @@ -1,76 +0,0 @@ -#!/usr/bin/env node - -import { providerdev } from '@stackql/provider-utils'; - -async function splitOpenApi() { - // Get command line arguments - const args = process.argv.slice(2); - const getArg = (flag) => { - const index = args.indexOf(flag); - return index !== -1 ? args[index + 1] : null; - }; - - const providerName = getArg('--provider-name'); - const apiDoc = getArg('--api-doc'); - const outputDir = getArg('--output-dir'); - const svcDiscriminator = getArg('--svc-discriminator') || 'tag'; - const exclude = getArg('--exclude') || ''; - const overwrite = args.includes('--overwrite'); - const verbose = args.includes('--verbose'); - const svcNameOverridesStr = getArg('--svc-name-overrides') || '{}'; - - let svcNameOverrides = {}; - try { - svcNameOverrides = JSON.parse(svcNameOverridesStr); - } catch (err) { - console.error('Error parsing service name overrides JSON:', err.message); - console.error('Please ensure the JSON format is correct'); - process.exit(1); - } - - if (!providerName || !apiDoc || !outputDir) { - console.error('Error: Missing required arguments'); - console.error('Usage: node split.mjs --provider-name NAME --api-doc PATH --output-dir DIR [--svc-discriminator tag|path] [--exclude LIST] [--svc-name-overrides JSON] [--overwrite] [--verbose]'); - process.exit(1); - } - - try { - console.log(`Splitting OpenAPI doc for provider: ${providerName}`); - console.log(`API Doc: ${apiDoc}`); - console.log(`Output directory: ${outputDir}`); - console.log(`Service Discriminator: ${svcDiscriminator}`); - - if (exclude) { - console.log(`Excluding: ${exclude}`); - } - - const numOverrides = Object.keys(svcNameOverrides).length; - if (numOverrides > 0) { - console.log(`Service name overrides: ${numOverrides} mappings`); - if (verbose) { - console.log('Override mappings:'); - for (const [original, newName] of Object.entries(svcNameOverrides)) { - console.log(` ${original} -> ${newName}`); - } - } - } - - const result = await providerdev.split({ - apiDoc, - providerName, - outputDir, - svcDiscriminator, - exclude, - overwrite, - verbose, - svcNameOverrides - }); - - console.log('Split operation completed successfully:', result); - } catch (error) { - console.error('Error splitting OpenAPI doc:', error); - process.exit(1); - } -} - -splitOpenApi(); \ No newline at end of file diff --git a/bin/split.sh b/bin/split.sh deleted file mode 100644 index 6f961f7..0000000 --- a/bin/split.sh +++ /dev/null @@ -1,123 +0,0 @@ -#!/usr/bin/env bash - -# Exit on error -set -e - -# Get the script directory for relative paths -SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" -REPO_ROOT="$( cd "$SCRIPT_DIR/.." && pwd )" - -# Default values -PROVIDER_NAME="" -API_DOC="" -OUTPUT_DIR="" -SVC_DISCRIMINATOR="tag" -EXCLUDE="" -OVERWRITE=false -VERBOSE=false -SVC_NAME_OVERRIDES="{}" - -# Parse command line arguments -while [[ $# -gt 0 ]]; do - case $1 in - --provider-name) - PROVIDER_NAME="$2" - shift 2 - ;; - --api-doc) - API_DOC="$2" - shift 2 - ;; - --output-dir) - OUTPUT_DIR="$2" - shift 2 - ;; - --svc-discriminator) - SVC_DISCRIMINATOR="$2" - shift 2 - ;; - --exclude) - EXCLUDE="$2" - shift 2 - ;; - --svc-name-overrides) - SVC_NAME_OVERRIDES="$2" - shift 2 - ;; - --overwrite) - OVERWRITE=true - shift - ;; - --verbose) - VERBOSE=true - shift - ;; - --help) - echo "Usage: split.sh [OPTIONS]" - echo "" - echo "Options:" - echo " --provider-name NAME Provider name (required)" - echo " --api-doc PATH Path to OpenAPI document (required)" - echo " --output-dir DIR Output directory for split files (required)" - echo " --svc-discriminator TYPE Service discriminator type: 'tag' or 'path' (default: tag)" - echo " --exclude LIST Comma-separated list of tags or paths to exclude" - echo " --svc-name-overrides JSON JSON object mapping original service names to new names" - echo " --overwrite Overwrite existing files" - echo " --verbose Enable verbose output" - echo " --help Show this help message" - exit 0 - ;; - *) - echo "Unknown option: $1" - echo "Use --help for usage information" - exit 1 - ;; - esac -done - -# Check required arguments -if [ -z "$PROVIDER_NAME" ] || [ -z "$API_DOC" ] || [ -z "$OUTPUT_DIR" ]; then - echo "Error: Missing required arguments" - echo "Use --help for usage information" - exit 1 -fi - -echo "🔪 Splitting OpenAPI document..." -echo "Provider: $PROVIDER_NAME" -echo "API Doc: $API_DOC" -echo "Output Directory: $OUTPUT_DIR" -echo "Service Discriminator: $SVC_DISCRIMINATOR" - -# Build command arguments -ARGS=("--provider-name" "$PROVIDER_NAME" "--api-doc" "$API_DOC" "--output-dir" "$OUTPUT_DIR" "--svc-discriminator" "$SVC_DISCRIMINATOR") - -if [ -n "$EXCLUDE" ]; then - ARGS+=("--exclude" "$EXCLUDE") - echo "Excluding: $EXCLUDE" -fi - -if [ "$SVC_NAME_OVERRIDES" != "{}" ]; then - ARGS+=("--svc-name-overrides" "$SVC_NAME_OVERRIDES") - echo "Service Name Overrides: $SVC_NAME_OVERRIDES" -fi - -if [ "$OVERWRITE" = true ]; then - ARGS+=("--overwrite") - echo "Overwrite: Yes" -fi - -if [ "$VERBOSE" = true ]; then - ARGS+=("--verbose") - echo "Verbose: Yes" -fi - -# Run the Node.js script with arguments -node --experimental-modules "$SCRIPT_DIR/split.mjs" "${ARGS[@]}" - -# Check if command succeeded -if [ $? -ne 0 ]; then - echo "❌ Split operation failed" - exit 1 -fi - -echo "✅ Split operation completed successfully" \ No newline at end of file diff --git a/bin/start-server.sh b/bin/start-server.sh index e050450..ae23ad4 100644 --- a/bin/start-server.sh +++ b/bin/start-server.sh @@ -59,7 +59,7 @@ fi # If registry path not specified, use current directory if [ -z "$REG_PATH" ]; then - REG_PATH="$BASE_DIR/provider-dev/openapi/src" + REG_PATH="$BASE_DIR/provider-dev/openapi" fi echo "Using provider: $PROVIDER" @@ -67,22 +67,23 @@ echo "Registry path: $REG_PATH" echo "Port: $PORT" echo "Verify signatures: $VERIFY" -# Check if stackql binary exists -if [ ! -f "$BASE_DIR/stackql" ]; then +# Resolve the stackql binary: $STACKQL, ./stackql, `stackql` on PATH, else +# download the latest release into the repo root (gitignored). +if [ -n "${STACKQL:-}" ] && [ -x "$STACKQL" ]; then + STACKQL_BIN="$STACKQL" +elif [ -x "$BASE_DIR/stackql" ]; then + STACKQL_BIN="$BASE_DIR/stackql" +elif command -v stackql > /dev/null 2>&1; then + STACKQL_BIN="$(command -v stackql)" +else echo "StackQL binary not found. Downloading..." - - # Determine OS and architecture OS=$(uname -s | tr '[:upper:]' '[:lower:]') ARCH=$(uname -m) - - # Map architecture to stackql naming if [ "$ARCH" = "x86_64" ]; then ARCH="amd64" elif [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then ARCH="arm64" fi - - # Set download URL based on OS if [ "$OS" = "darwin" ]; then DOWNLOAD_URL="https://releases.stackql.io/stackql/latest/stackql_darwin_${ARCH}.zip" elif [ "$OS" = "linux" ]; then @@ -92,15 +93,15 @@ if [ ! -f "$BASE_DIR/stackql" ]; then echo "Please download stackql manually from https://github.com/stackql/stackql/releases" exit 1 fi - - # Download and extract cd "$BASE_DIR" curl -L -o stackql.zip "$DOWNLOAD_URL" unzip -o stackql.zip rm stackql.zip chmod +x stackql + STACKQL_BIN="$BASE_DIR/stackql" echo "StackQL binary downloaded successfully" fi +echo "StackQL binary: $STACKQL_BIN ($("$STACKQL_BIN" --version 2>/dev/null | head -1))" # Set registry configuration if [ "$VERIFY" = "true" ]; then @@ -118,7 +119,7 @@ fi # Start the server echo "Starting StackQL server with registry: $REG" cd "$BASE_DIR" -nohup ./stackql --registry="${REG}" --pgsrv.port="${PORT}" srv > stackql-server.log 2>&1 & +nohup "$STACKQL_BIN" --registry="${REG}" --pgsrv.port="${PORT}" srv > stackql-server.log 2>&1 & SERVER_PID=$! # Check if server started successfully diff --git a/bin/test-meta-routes.cjs b/bin/test-meta-routes.cjs index 822a5c4..00a302a 100644 --- a/bin/test-meta-routes.cjs +++ b/bin/test-meta-routes.cjs @@ -1,431 +1,458 @@ -#!/usr/bin/env node - -const { runQuery } = require('@stackql/pgwire-lite'); -const fs = require('fs'); -const path = require('path'); - -// Get current directory -const baseDir = path.resolve(path.dirname(process.argv[1]), '..'); - -// Default connection settings -const defaultOptions = { - user: 'stackql', - database: 'stackql', - host: 'localhost', - port: 5444, - debug: false, -}; - -// Parse command line arguments -const args = process.argv.slice(2); -let provider = null; -let port = 5444; -let verbose = false; -let outputFormat = 'json'; -let timeoutMs = 60000; // Default timeout: 60 seconds - -for (let i = 0; i < args.length; i++) { - if (args[i].startsWith('--')) { - switch (args[i]) { - case '--port': - port = parseInt(args[++i], 10); - break; - case '--verbose': - verbose = true; - break; - case '--format': - outputFormat = args[++i]; - if (!['json', 'csv', 'markdown'].includes(outputFormat)) { - console.error(`Error: Invalid output format "${outputFormat}". Must be json, csv, or markdown.`); - process.exit(1); - } - break; - case '--timeout': - timeoutMs = parseInt(args[++i], 10); - break; - case '--help': - console.log(` -Usage: test-meta-routes.js [OPTIONS] - -Test all metadata routes for a StackQL provider. - -Arguments: - provider Name of the provider to test - -Options: - --port PORT Server port (default: 5444) - --verbose Enable verbose output - --format FORMAT Output format: json, csv, markdown (default: json) - --timeout MILLISECONDS Query timeout in milliseconds (default: 60000) - --help Display this help message - `); - process.exit(0); - break; - default: - console.error(`Error: Unknown option "${args[i]}"`); - process.exit(1); - } - } else if (!provider) { - provider = args[i]; - } -} - -// Check that provider was specified -if (!provider) { - console.error('Error: Provider name must be specified'); - console.error('Usage: test-meta-routes.js [OPTIONS]'); - process.exit(1); -} - -// Set up connection options -const connectionOptions = { - ...defaultOptions, - port, - // Set query timeout - statement_timeout: timeoutMs, -}; - -// Get start time -const startTime = new Date(); - -const results = { - provider, - totalServices: 0, - totalResources: 0, - totalMethods: 0, - selectableMethods: 0, - nonSelectableResourceCount: 0, - nonSelectableResources: [], -}; - -/** - * Run a query and handle errors - * @param {string} query - SQL query to run - * @param {string} description - Description for logging - * @returns {Promise} - Query results - */ -async function executeQuery(query, description) { - if (verbose) { - console.log(`Running: ${query}`); - } else { - process.stdout.write(`${description}... `); - } - - try { - const result = await runQuery(connectionOptions, query); - - if (!verbose) { - if (result.data && result.data.length) { - console.log(`✅ (${result.data.length} rows)`); - } else { - console.log('✅'); - } - } else { - console.info(result.data); - } - - return result.data; - } catch (error) { - if (!verbose) { - console.log('❌'); - } - - results.errors.push({ - query, - description, - error: error.message, - timestamp: new Date().toISOString() - }); - - results.summary.errors++; - - if (error.message.includes('the last operation didn\'t produce a result')) { - return []; - } - - if (error.message.includes('SELECT not supported for this resource')) { - if (verbose) { - console.warn(` Warning: Resource is not selectable`); - } - return null; - } - - console.error(`Error executing ${description}: ${error.message}`); - return []; - } -} - -/** - * Test all provider meta routes - */ -async function testMetaRoutes() { - try { - console.log(`\n🔍 Testing meta routes for provider: ${provider}\n`); - - // SHOW PROVIDERS to verify provider exists - const registryQuery = "SHOW PROVIDERS"; - const providers = await executeQuery(registryQuery, "Checking registry providers"); - - const providerExists = providers && providers.some(p => p.name === provider); - if (!providerExists) { - console.error(`Error: Provider '${provider}' not found in registry`); - if (providers && providers.length > 0) { - console.log("Available providers:"); - providers.forEach(p => console.log(` - ${p.name}`)); - } - process.exit(1); - } - - // SHOW SERVICES IN - const servicesQuery = `SHOW SERVICES IN ${provider}`; - const services = await executeQuery(servicesQuery, "Getting services"); - - if (!services || services.length === 0) { - console.error(`Error: No services found for provider '${provider}'`); - process.exit(1); - } - - console.log(`\nFound ${services.length} services in ${provider}`); - results.totalServices += services.length; - - // for each service - for (const service of services) { - const serviceName = service.name; - console.log(`\n📊 Processing service: ${serviceName}`); - - // SHOW RESOURCES IN . - const resourcesQuery = `SHOW RESOURCES IN ${provider}.${serviceName}`; - const resources = await executeQuery(resourcesQuery, `Getting resources for ${serviceName}`); - - if (!resources || resources.length === 0) { - console.error(`Error: No resources found for ${provider}.${serviceName}`); - process.exit(1); - } - - console.log(`Found ${resources.length} resources in ${serviceName}`); - results.totalResources += resources.length; - - // for each resource - for (const resource of resources) { - const resourceName = resource.name; - console.log(`\n 🔹 Testing resource: ${resourceName}`); - - const resourceFQRN = `${provider}.${serviceName}.${resourceName}`; - const resourceData = { - name: resourceName, - service: serviceName, - selectable: false, - sqlVerbs: {} - }; - - // SHOW EXTENDED METHODS IN .. - const methodsQuery = `SHOW EXTENDED METHODS IN ${resourceFQRN}`; - const methods = await executeQuery(methodsQuery, ` Getting methods for ${resourceName}`); - if (!methods || methods.length === 0) { - console.error(`Error: Resource ${resourceName} has no methods`); - process.exit(1); - } else { - console.log(`Found ${methods.length} methods for ${resourceName}`); - } - - results.totalMethods += methods.length; - - for (const method of methods) { - const methodName = method.MethodName; - const sqlVerb = method.SQLVerb || 'exec'; - - if(sqlVerb.toLowerCase() === 'select') { - results.selectableMethods++; - resourceData.selectable = true; - } - - // Initialize the array if it doesn't exist yet - if(!resourceData.sqlVerbs[sqlVerb]) { - resourceData.sqlVerbs[sqlVerb] = []; - } - - // Convert comma-delimited list to an array of trimmed values - let requiredParamsArray = []; - if (method.RequiredParams) { - requiredParamsArray = method.RequiredParams - .split(',') - .map(param => param.trim()) - .filter(param => param.length > 0); - } - - // Push the method info to the array with the parsed required params - resourceData.sqlVerbs[sqlVerb].push({ - methodName, - requiredParams: requiredParamsArray - }); - } - - // non exec methods must have unique signatures within a resource - // in other words no two methods mapped to the same sqlVerb should have the exact same set of required params, order is not important - // if this condition is detected, log it and exit the program immediately - let hasSelect = false; - for (const [verb, methods] of Object.entries(resourceData.sqlVerbs)) { - if (verb.toLowerCase() === 'select') { - hasSelect = true; - } - if (verb.toLowerCase() === 'exec') { - continue; - } - const seenSignatures = new Set(); - for (const method of methods) { - const signature = JSON.stringify(method.requiredParams); - if (seenSignatures.has(signature)) { - console.error(`Error: Duplicate method signature found for ${verb} in ${resourceData.service}.${resourceName}:`, method); - process.exit(1); - } - seenSignatures.add(signature); - } - } - - if (!hasSelect) { - results.nonSelectableResourceCount++; - results.nonSelectableResources.push(`${resourceData.service}.${resourceName}`); - } - - // Try DESCRIBE EXTENDED if available - if(resourceData.selectable) { - try { - const describeExtendedQuery = `DESCRIBE EXTENDED ${resourceFQRN}`; - const extendedColumns = await executeQuery(describeExtendedQuery, ` Describing extended ${resourceName}`); - - if (extendedColumns !== null && extendedColumns.length > 0) { - console.log(`Found ${extendedColumns.length} extended columns for ${resourceName}`); - } else { - console.error(`ERROR: No columns found for ${resourceName}`); - process.exit(1); - } - } catch (error) { - console.error(`Error describing extended ${resourceName}:`, error.message); - process.exit(1); - } - } - - } - } - - // Calculate execution time - const endTime = new Date(); - const executionTime = (endTime - startTime) / 1000; // in seconds - results.executionTime = executionTime; - - // Output summary - console.log("\n📋 Test Summary:"); - console.info(results); - - // Save results to file - // const resultsDir = path.join(baseDir, 'test-results'); - // if (!fs.existsSync(resultsDir)) { - // fs.mkdirSync(resultsDir, { recursive: true }); - // } - - // const timestamp = new Date().toISOString().replace(/[:.]/g, '-'); - - // if (outputFormat === 'json') { - // const resultsFile = path.join(resultsDir, `${provider}-meta-test-${timestamp}.json`); - // fs.writeFileSync(resultsFile, JSON.stringify(results, null, 2)); - // console.log(`\nDetailed results saved to: ${resultsFile}`); - // } - // else if (outputFormat === 'csv') { - // // Generate CSV files - - // // Main summary CSV - // const summaryFile = path.join(resultsDir, `${provider}-meta-test-summary-${timestamp}.csv`); - // const summaryCSV = [ - // 'Provider,Timestamp,Services,Resources,Methods,Selectable,Insertable,Updatable,Deletable,Executable,Errors,ExecutionTime', - // `${provider},${results.timestamp},${results.summary.totalServices},${results.summary.totalResources},${results.summary.totalMethods},${results.summary.selectableMethods},${results.summary.insertableMethods},${results.summary.updatableMethods},${results.summary.deletableMethods},${results.summary.executableMethods},${results.summary.errors},${results.executionTime}` - // ].join('\n'); - // fs.writeFileSync(summaryFile, summaryCSV); - - // // Services CSV - // const servicesFile = path.join(resultsDir, `${provider}-meta-test-services-${timestamp}.csv`); - // const servicesCSV = [ - // 'Service,Title,ResourceCount', - // ...results.services.map(s => `${s.name},${s.title || ''},${s.resourceCount || 0}`) - // ].join('\n'); - // fs.writeFileSync(servicesFile, servicesCSV); - - // // Resources CSV - // const resourcesFile = path.join(resultsDir, `${provider}-meta-test-resources-${timestamp}.csv`); - // const resourcesCSV = [ - // 'Service,Resource,FQRN,Selectable,ColumnCount,MethodCount', - // ...results.resources.map(r => `${r.service},${r.name},${r.fqrn},${r.selectable},${r.columnCount || 0},${r.methodCount || 0}`) - // ].join('\n'); - // fs.writeFileSync(resourcesFile, resourcesCSV); - - // // Methods CSV - // const methodsFile = path.join(resultsDir, `${provider}-meta-test-methods-${timestamp}.csv`); - // const methodsCSV = [ - // 'Service,Resource,Method,SQLVerb,FQRN', - // ...results.methods.map(m => `${m.service},${m.resource},${m.name},${m.sqlVerb},${m.fqrn}`) - // ].join('\n'); - // fs.writeFileSync(methodsFile, methodsCSV); - - // console.log(`\nDetailed results saved to CSV files in: ${resultsDir}`); - // } - // else if (outputFormat === 'markdown') { - // const mdFile = path.join(resultsDir, `${provider}-meta-test-${timestamp}.md`); - - // const markdownContent = [ - // `# StackQL Provider Test Results: ${provider}`, - // '', - // `Test run: ${results.timestamp}`, - // '', - // '## Summary', - // '', - // '| Metric | Count |', - // '|--------|-------|', - // `| Services | ${results.summary.totalServices} |`, - // `| Resources | ${results.summary.totalResources} |`, - // `| Methods | ${results.summary.totalMethods} |`, - // `| Errors | ${results.summary.errors} |`, - // `| Execution Time | ${results.executionTime.toFixed(2)} seconds |`, - // '', - // '### Methods by SQL Verb', - // '', - // '| Verb | Count |', - // '|------|-------|', - // ...Object.entries(results.verbs).map(([verb, count]) => `| ${verb.toUpperCase()} | ${count} |`), - // '', - // '## Services', - // '', - // '| Service | Resources |', - // '|---------|-----------|', - // ...results.services.map(s => `| ${s.name} | ${s.resourceCount || 0} |`), - // '', - // '## Resources with Most Methods', - // '', - // '| Resource | Service | Methods | Selectable |', - // '|----------|---------|---------|------------|', - // ...results.resources - // .sort((a, b) => (b.methodCount || 0) - (a.methodCount || 0)) - // .slice(0, 20) - // .map(r => `| ${r.name} | ${r.service} | ${r.methodCount || 0} | ${r.selectable ? '✓' : '✗'} |`), - // '', - // '## Errors', - // '', - // results.errors.length > 0 - // ? [ - // '| Query | Error |', - // '|-------|-------|', - // ...results.errors.map(e => `| \`${e.query}\` | ${e.error} |`) - // ].join('\n') - // : 'No errors encountered during testing.', - // ].join('\n'); - - // fs.writeFileSync(mdFile, markdownContent); - // console.log(`\nDetailed results saved to: ${mdFile}`); - // } - - } catch (error) { - console.error('Error in meta routes test:', error); - process.exit(1); - } -} - -// Run the tests +#!/usr/bin/env node + +const { runQuery } = require('@stackql/pgwire-lite'); +const fs = require('fs'); +const path = require('path'); + +// Get current directory +const baseDir = path.resolve(path.dirname(process.argv[1]), '..'); + +// Default connection settings +const defaultOptions = { + user: 'stackql', + database: 'stackql', + // IPv4 loopback, not 'localhost': stackql srv binds 0.0.0.0 and Node + // resolves 'localhost' to ::1 first, which refuses the connection + host: '127.0.0.1', + port: 5444, + debug: false, +}; + +// Parse command line arguments +const args = process.argv.slice(2); +let provider = null; +let port = 5444; +let host = '127.0.0.1'; +let verbose = false; +let outputFormat = 'json'; +let timeoutMs = 60000; // Default timeout: 60 seconds + +for (let i = 0; i < args.length; i++) { + if (args[i].startsWith('--')) { + switch (args[i]) { + case '--port': + port = parseInt(args[++i], 10); + break; + case '--host': + host = args[++i]; + break; + case '--verbose': + verbose = true; + break; + case '--format': + outputFormat = args[++i]; + if (!['json', 'csv', 'markdown'].includes(outputFormat)) { + console.error(`Error: Invalid output format "${outputFormat}". Must be json, csv, or markdown.`); + process.exit(1); + } + break; + case '--timeout': + timeoutMs = parseInt(args[++i], 10); + break; + case '--help': + console.log(` +Usage: test-meta-routes.js [OPTIONS] + +Test all metadata routes for a StackQL provider. + +Arguments: + provider Name of the provider to test + +Options: + --port PORT Server port (default: 5444) + --verbose Enable verbose output + --format FORMAT Output format: json, csv, markdown (default: json) + --timeout MILLISECONDS Query timeout in milliseconds (default: 60000) + --help Display this help message + `); + process.exit(0); + break; + default: + console.error(`Error: Unknown option "${args[i]}"`); + process.exit(1); + } + } else if (!provider) { + provider = args[i]; + } +} + +// Check that provider was specified +if (!provider) { + console.error('Error: Provider name must be specified'); + console.error('Usage: test-meta-routes.js [OPTIONS]'); + process.exit(1); +} + +// Set up connection options +const connectionOptions = { + ...defaultOptions, + host, + port, + // Set query timeout + statement_timeout: timeoutMs, +}; + +// Get start time +const startTime = new Date(); + +// resources whose select response is a scalar (text) body - a single +// anonymous column at query time, so DESCRIBE EXTENDED is legitimately +// empty. Currently empty: pods_log gets a response transform (one row per +// log line) in post_process.mjs, so it has real columns. +const SCALAR_RESPONSE_RESOURCES = new Set([]); + +const results = { + provider, + totalServices: 0, + totalResources: 0, + totalMethods: 0, + selectableMethods: 0, + nonSelectableResourceCount: 0, + nonSelectableResources: [], + scalarResponseResources: [], + failures: [], +}; + +/** + * Run a query and handle errors + * @param {string} query - SQL query to run + * @param {string} description - Description for logging + * @returns {Promise} - Query results + */ +async function executeQuery(query, description) { + if (verbose) { + console.log(`Running: ${query}`); + } else { + process.stdout.write(`${description}... `); + } + + try { + const result = await runQuery(connectionOptions, query); + + if (!verbose) { + if (result.data && result.data.length) { + console.log(`✅ (${result.data.length} rows)`); + } else { + console.log('✅'); + } + } else { + console.info(result.data); + } + + return result.data; + } catch (error) { + if (!verbose) { + console.log('❌'); + } + + results.errors.push({ + query, + description, + error: error.message, + timestamp: new Date().toISOString() + }); + + results.summary.errors++; + + if (error.message.includes('the last operation didn\'t produce a result')) { + return []; + } + + if (error.message.includes('SELECT not supported for this resource')) { + if (verbose) { + console.warn(` Warning: Resource is not selectable`); + } + return null; + } + + console.error(`Error executing ${description}: ${error.message}`); + return []; + } +} + +/** + * Test all provider meta routes + */ +async function testMetaRoutes() { + try { + console.log(`\n🔍 Testing meta routes for provider: ${provider}\n`); + + // SHOW PROVIDERS to verify provider exists + const registryQuery = "SHOW PROVIDERS"; + const providers = await executeQuery(registryQuery, "Checking registry providers"); + + const providerExists = providers && providers.some(p => p.name === provider); + if (!providerExists) { + console.error(`Error: Provider '${provider}' not found in registry`); + if (providers && providers.length > 0) { + console.log("Available providers:"); + providers.forEach(p => console.log(` - ${p.name}`)); + } + process.exit(1); + } + + // SHOW SERVICES IN + const servicesQuery = `SHOW SERVICES IN ${provider}`; + const services = await executeQuery(servicesQuery, "Getting services"); + + if (!services || services.length === 0) { + console.error(`Error: No services found for provider '${provider}'`); + process.exit(1); + } + + console.log(`\nFound ${services.length} services in ${provider}`); + results.totalServices += services.length; + + // for each service + for (const service of services) { + const serviceName = service.name; + console.log(`\n📊 Processing service: ${serviceName}`); + + // SHOW RESOURCES IN . + const resourcesQuery = `SHOW RESOURCES IN ${provider}.${serviceName}`; + const resources = await executeQuery(resourcesQuery, `Getting resources for ${serviceName}`); + + if (!resources || resources.length === 0) { + console.error(`Error: No resources found for ${provider}.${serviceName}`); + process.exit(1); + } + + console.log(`Found ${resources.length} resources in ${serviceName}`); + results.totalResources += resources.length; + + // for each resource + for (const resource of resources) { + const resourceName = resource.name; + console.log(`\n 🔹 Testing resource: ${resourceName}`); + + const resourceFQRN = `${provider}.${serviceName}.${resourceName}`; + const resourceData = { + name: resourceName, + service: serviceName, + selectable: false, + sqlVerbs: {} + }; + + // SHOW EXTENDED METHODS IN .. + const methodsQuery = `SHOW EXTENDED METHODS IN ${resourceFQRN}`; + const methods = await executeQuery(methodsQuery, ` Getting methods for ${resourceName}`); + if (!methods || methods.length === 0) { + console.error(`Error: Resource ${resourceName} has no methods`); + process.exit(1); + } else { + console.log(`Found ${methods.length} methods for ${resourceName}`); + } + + results.totalMethods += methods.length; + + for (const method of methods) { + const methodName = method.MethodName; + const sqlVerb = method.SQLVerb || 'exec'; + + if(sqlVerb.toLowerCase() === 'select') { + results.selectableMethods++; + resourceData.selectable = true; + } + + // Initialize the array if it doesn't exist yet + if(!resourceData.sqlVerbs[sqlVerb]) { + resourceData.sqlVerbs[sqlVerb] = []; + } + + // Convert comma-delimited list to an array of trimmed values + let requiredParamsArray = []; + if (method.RequiredParams) { + requiredParamsArray = method.RequiredParams + .split(',') + .map(param => param.trim()) + .filter(param => param.length > 0); + } + + // Push the method info to the array with the parsed required params + resourceData.sqlVerbs[sqlVerb].push({ + methodName, + requiredParams: requiredParamsArray + }); + } + + // non exec methods must have unique signatures within a resource + // in other words no two methods mapped to the same sqlVerb should have the exact same set of required params, order is not important + // if this condition is detected, log it and exit the program immediately + let hasSelect = false; + for (const [verb, methods] of Object.entries(resourceData.sqlVerbs)) { + if (verb.toLowerCase() === 'select') { + hasSelect = true; + } + if (verb.toLowerCase() === 'exec') { + continue; + } + const seenSignatures = new Set(); + for (const method of methods) { + const signature = JSON.stringify(method.requiredParams); + if (seenSignatures.has(signature)) { + console.error(`Error: Duplicate method signature found for ${verb} in ${resourceData.service}.${resourceName}:`, method); + process.exit(1); + } + seenSignatures.add(signature); + } + } + + if (!hasSelect) { + results.nonSelectableResourceCount++; + results.nonSelectableResources.push(`${resourceData.service}.${resourceName}`); + } + + // Try DESCRIBE EXTENDED if available + if(resourceData.selectable) { + try { + const describeExtendedQuery = `DESCRIBE EXTENDED ${resourceFQRN}`; + const extendedColumns = await executeQuery(describeExtendedQuery, ` Describing extended ${resourceName}`); + + if (extendedColumns !== null && extendedColumns.length > 0) { + console.log(`Found ${extendedColumns.length} extended columns for ${resourceName}`); + } else if (SCALAR_RESPONSE_RESOURCES.has(resourceName)) { + // scalar (text) response - a single anonymous column at query + // time, so DESCRIBE is legitimately empty + console.log(`WARN: no columns for ${resourceName} (known scalar response)`); + results.scalarResponseResources.push(`${resourceData.service}.${resourceName}`); + } else { + console.error(`ERROR: No columns found for ${resourceName}`); + results.failures.push(`${resourceData.service}.${resourceName}: DESCRIBE EXTENDED returned no columns`); + } + } catch (error) { + console.error(`Error describing extended ${resourceName}:`, error.message); + results.failures.push(`${resourceData.service}.${resourceName}: ${error.message}`); + } + } + + } + } + + // Calculate execution time + const endTime = new Date(); + const executionTime = (endTime - startTime) / 1000; // in seconds + results.executionTime = executionTime; + + // Output summary + console.log("\n📋 Test Summary:"); + console.info(results); + + if (results.failures.length > 0) { + console.error(`\n❌ ${results.failures.length} failure(s):`); + for (const f of results.failures) console.error(` - ${f}`); + process.exit(1); + } + console.log("\n✅ All meta route tests passed"); + + // Save results to file + // const resultsDir = path.join(baseDir, 'test-results'); + // if (!fs.existsSync(resultsDir)) { + // fs.mkdirSync(resultsDir, { recursive: true }); + // } + + // const timestamp = new Date().toISOString().replace(/[:.]/g, '-'); + + // if (outputFormat === 'json') { + // const resultsFile = path.join(resultsDir, `${provider}-meta-test-${timestamp}.json`); + // fs.writeFileSync(resultsFile, JSON.stringify(results, null, 2)); + // console.log(`\nDetailed results saved to: ${resultsFile}`); + // } + // else if (outputFormat === 'csv') { + // // Generate CSV files + + // // Main summary CSV + // const summaryFile = path.join(resultsDir, `${provider}-meta-test-summary-${timestamp}.csv`); + // const summaryCSV = [ + // 'Provider,Timestamp,Services,Resources,Methods,Selectable,Insertable,Updatable,Deletable,Executable,Errors,ExecutionTime', + // `${provider},${results.timestamp},${results.summary.totalServices},${results.summary.totalResources},${results.summary.totalMethods},${results.summary.selectableMethods},${results.summary.insertableMethods},${results.summary.updatableMethods},${results.summary.deletableMethods},${results.summary.executableMethods},${results.summary.errors},${results.executionTime}` + // ].join('\n'); + // fs.writeFileSync(summaryFile, summaryCSV); + + // // Services CSV + // const servicesFile = path.join(resultsDir, `${provider}-meta-test-services-${timestamp}.csv`); + // const servicesCSV = [ + // 'Service,Title,ResourceCount', + // ...results.services.map(s => `${s.name},${s.title || ''},${s.resourceCount || 0}`) + // ].join('\n'); + // fs.writeFileSync(servicesFile, servicesCSV); + + // // Resources CSV + // const resourcesFile = path.join(resultsDir, `${provider}-meta-test-resources-${timestamp}.csv`); + // const resourcesCSV = [ + // 'Service,Resource,FQRN,Selectable,ColumnCount,MethodCount', + // ...results.resources.map(r => `${r.service},${r.name},${r.fqrn},${r.selectable},${r.columnCount || 0},${r.methodCount || 0}`) + // ].join('\n'); + // fs.writeFileSync(resourcesFile, resourcesCSV); + + // // Methods CSV + // const methodsFile = path.join(resultsDir, `${provider}-meta-test-methods-${timestamp}.csv`); + // const methodsCSV = [ + // 'Service,Resource,Method,SQLVerb,FQRN', + // ...results.methods.map(m => `${m.service},${m.resource},${m.name},${m.sqlVerb},${m.fqrn}`) + // ].join('\n'); + // fs.writeFileSync(methodsFile, methodsCSV); + + // console.log(`\nDetailed results saved to CSV files in: ${resultsDir}`); + // } + // else if (outputFormat === 'markdown') { + // const mdFile = path.join(resultsDir, `${provider}-meta-test-${timestamp}.md`); + + // const markdownContent = [ + // `# StackQL Provider Test Results: ${provider}`, + // '', + // `Test run: ${results.timestamp}`, + // '', + // '## Summary', + // '', + // '| Metric | Count |', + // '|--------|-------|', + // `| Services | ${results.summary.totalServices} |`, + // `| Resources | ${results.summary.totalResources} |`, + // `| Methods | ${results.summary.totalMethods} |`, + // `| Errors | ${results.summary.errors} |`, + // `| Execution Time | ${results.executionTime.toFixed(2)} seconds |`, + // '', + // '### Methods by SQL Verb', + // '', + // '| Verb | Count |', + // '|------|-------|', + // ...Object.entries(results.verbs).map(([verb, count]) => `| ${verb.toUpperCase()} | ${count} |`), + // '', + // '## Services', + // '', + // '| Service | Resources |', + // '|---------|-----------|', + // ...results.services.map(s => `| ${s.name} | ${s.resourceCount || 0} |`), + // '', + // '## Resources with Most Methods', + // '', + // '| Resource | Service | Methods | Selectable |', + // '|----------|---------|---------|------------|', + // ...results.resources + // .sort((a, b) => (b.methodCount || 0) - (a.methodCount || 0)) + // .slice(0, 20) + // .map(r => `| ${r.name} | ${r.service} | ${r.methodCount || 0} | ${r.selectable ? '✓' : '✗'} |`), + // '', + // '## Errors', + // '', + // results.errors.length > 0 + // ? [ + // '| Query | Error |', + // '|-------|-------|', + // ...results.errors.map(e => `| \`${e.query}\` | ${e.error} |`) + // ].join('\n') + // : 'No errors encountered during testing.', + // ].join('\n'); + + // fs.writeFileSync(mdFile, markdownContent); + // console.log(`\nDetailed results saved to: ${mdFile}`); + // } + + } catch (error) { + console.error('Error in meta routes test:', error); + process.exit(1); + } +} + +// Run the tests testMetaRoutes(); \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 474c1b7..d924148 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,527 +1,539 @@ -{ - "name": "stackql-provider-digitalocean", - "version": "0.1.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "stackql-provider-digitalocean", - "version": "0.1.0", - "dependencies": { - "@stackql/pgwire-lite": "^1.0.1", - "@stackql/provider-utils": "^0.4.9" - }, - "engines": { - "node": ">=14.16.0" - } - }, - "node_modules/@apidevtools/json-schema-ref-parser": { - "version": "11.7.2", - "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.7.2.tgz", - "integrity": "sha512-4gY54eEGEstClvEkGnwVkTkrx0sqwemEFG5OSRRn3tD91XH0+Q8XIkYIfo7IwEWPpJZwILb9GUXeShtplRc/eA==", - "license": "MIT", - "dependencies": { - "@jsdevtools/ono": "^7.1.3", - "@types/json-schema": "^7.0.15", - "js-yaml": "^4.1.0" - }, - "engines": { - "node": ">= 16" - }, - "funding": { - "url": "https://github.com/sponsors/philsturgeon" - } - }, - "node_modules/@apidevtools/openapi-schemas": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@apidevtools/openapi-schemas/-/openapi-schemas-2.1.0.tgz", - "integrity": "sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/@apidevtools/swagger-methods": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz", - "integrity": "sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==", - "license": "MIT" - }, - "node_modules/@apidevtools/swagger-parser": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/@apidevtools/swagger-parser/-/swagger-parser-10.1.1.tgz", - "integrity": "sha512-u/kozRnsPO/x8QtKYJOqoGtC4kH6yg1lfYkB9Au0WhYB0FNLpyFusttQtvhlwjtG3rOwiRz4D8DnnXa8iEpIKA==", - "license": "MIT", - "dependencies": { - "@apidevtools/json-schema-ref-parser": "11.7.2", - "@apidevtools/openapi-schemas": "^2.1.0", - "@apidevtools/swagger-methods": "^3.0.2", - "@jsdevtools/ono": "^7.1.3", - "ajv": "^8.17.1", - "ajv-draft-04": "^1.0.0", - "call-me-maybe": "^1.0.2" - }, - "peerDependencies": { - "openapi-types": ">=7" - } - }, - "node_modules/@colors/colors": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", - "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", - "license": "MIT", - "engines": { - "node": ">=0.1.90" - } - }, - "node_modules/@dabh/diagnostics": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", - "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==", - "license": "MIT", - "dependencies": { - "colorspace": "1.1.x", - "enabled": "2.0.x", - "kuler": "^2.0.0" - } - }, - "node_modules/@jsdevtools/ono": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", - "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==", - "license": "MIT" - }, - "node_modules/@stackql/deno-openapi-dereferencer": { - "name": "@jsr/stackql__deno-openapi-dereferencer", - "version": "0.3.1", - "resolved": "https://npm.jsr.io/~/11/@jsr/stackql__deno-openapi-dereferencer/0.3.1.tgz", - "integrity": "sha512-7Ucdom3SYxvzp7VwzulQMe66E+1LeCZIprFQ70PwRPIUfL90bYNQDrLfe5L1WaB+X7StWdHmoFSFxoa9RDlN7w==", - "dependencies": { - "jsonpath-plus": "7.0.0" - } - }, - "node_modules/@stackql/pgwire-lite": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@stackql/pgwire-lite/-/pgwire-lite-1.0.1.tgz", - "integrity": "sha512-jgA6ogzlXySZ1xiJzBxuvgRNu9V38Gs3qUZ4AjinlT7hj+8RH3UhYaDvyBd33QWiK3tVNkglYcnXPQ7q0+rmNA==", - "license": "MIT", - "dependencies": { - "winston": "^3.14.2" - } - }, - "node_modules/@stackql/provider-utils": { - "version": "0.4.9", - "resolved": "https://registry.npmjs.org/@stackql/provider-utils/-/provider-utils-0.4.9.tgz", - "integrity": "sha512-htO+VhdD6GbfP0fqHyuqbnSqNA/F+aBUTGXeepMDEzsaRLVkxxa/xUPBR65iaVgNF6icxlsM+dH5XpNWSJtHog==", - "license": "MIT", - "dependencies": { - "@apidevtools/swagger-parser": "^10.1.1", - "@stackql/deno-openapi-dereferencer": "npm:@jsr/stackql__deno-openapi-dereferencer@^0.3.1", - "csv-parser": "^3.2.0", - "js-yaml": "^4.1.0", - "pluralize": "^8.0.0" - }, - "engines": { - "node": ">=16.0.0" - } - }, - "node_modules/@types/json-schema": { - "version": "7.0.15", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "license": "MIT" - }, - "node_modules/@types/triple-beam": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", - "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", - "license": "MIT" - }, - "node_modules/ajv": { - "version": "8.17.1", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", - "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", - "license": "MIT", - "dependencies": { - "fast-deep-equal": "^3.1.3", - "fast-uri": "^3.0.1", - "json-schema-traverse": "^1.0.0", - "require-from-string": "^2.0.2" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/epoberezkin" - } - }, - "node_modules/ajv-draft-04": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", - "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", - "license": "MIT", - "peerDependencies": { - "ajv": "^8.5.0" - }, - "peerDependenciesMeta": { - "ajv": { - "optional": true - } - } - }, - "node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", - "license": "Python-2.0" - }, - "node_modules/async": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", - "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", - "license": "MIT" - }, - "node_modules/call-me-maybe": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", - "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==", - "license": "MIT" - }, - "node_modules/color": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz", - "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==", - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.3", - "color-string": "^1.6.0" - } - }, - "node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", - "license": "MIT" - }, - "node_modules/color-string": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.1.tgz", - "integrity": "sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==", - "license": "MIT", - "dependencies": { - "color-name": "^1.0.0", - "simple-swizzle": "^0.2.2" - } - }, - "node_modules/colorspace": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/colorspace/-/colorspace-1.1.4.tgz", - "integrity": "sha512-BgvKJiuVu1igBUF2kEjRCZXol6wiiGbY5ipL/oVPwm0BL9sIpMIzM8IK7vwuxIIzOXMV3Ey5w+vxhm0rR/TN8w==", - "license": "MIT", - "dependencies": { - "color": "^3.1.3", - "text-hex": "1.0.x" - } - }, - "node_modules/csv-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/csv-parser/-/csv-parser-3.2.0.tgz", - "integrity": "sha512-fgKbp+AJbn1h2dcAHKIdKNSSjfp43BZZykXsCjzALjKy80VXQNHPFJ6T9Afwdzoj24aMkq8GwDS7KGcDPpejrA==", - "license": "MIT", - "bin": { - "csv-parser": "bin/csv-parser" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/enabled": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", - "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==", - "license": "MIT" - }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "license": "MIT" - }, - "node_modules/fast-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.0.tgz", - "integrity": "sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fastify" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fastify" - } - ], - "license": "BSD-3-Clause" - }, - "node_modules/fecha": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", - "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", - "license": "MIT" - }, - "node_modules/fn.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", - "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==", - "license": "MIT" - }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "license": "ISC" - }, - "node_modules/is-arrayish": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.4.tgz", - "integrity": "sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==", - "license": "MIT" - }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/json-schema-traverse": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "license": "MIT" - }, - "node_modules/jsonpath-plus": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.0.0.tgz", - "integrity": "sha512-MH4UnrWrU1hJGVEyEyjvYgONkzNTO6Yol0nq18EMnUQ/ZC5cTuJheirXXIwu1b9mZ6t3XL0P79gPsu+zlTnDIQ==", - "license": "MIT", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/kuler": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", - "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==", - "license": "MIT" - }, - "node_modules/logform": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", - "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", - "license": "MIT", - "dependencies": { - "@colors/colors": "1.6.0", - "@types/triple-beam": "^1.3.2", - "fecha": "^4.2.0", - "ms": "^2.1.1", - "safe-stable-stringify": "^2.3.1", - "triple-beam": "^1.3.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "license": "MIT" - }, - "node_modules/one-time": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", - "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", - "license": "MIT", - "dependencies": { - "fn.name": "1.x.x" - } - }, - "node_modules/openapi-types": { - "version": "12.1.3", - "resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-12.1.3.tgz", - "integrity": "sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==", - "license": "MIT", - "peer": true - }, - "node_modules/pluralize": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", - "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "license": "MIT", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "node_modules/safe-stable-stringify": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", - "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", - "license": "MIT", - "engines": { - "node": ">=10" - } - }, - "node_modules/simple-swizzle": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.4.tgz", - "integrity": "sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==", - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.3.1" - } - }, - "node_modules/stack-trace": { - "version": "0.0.10", - "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", - "license": "MIT", - "engines": { - "node": "*" - } - }, - "node_modules/string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "license": "MIT", - "dependencies": { - "safe-buffer": "~5.2.0" - } - }, - "node_modules/text-hex": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", - "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", - "license": "MIT" - }, - "node_modules/triple-beam": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", - "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", - "license": "MIT", - "engines": { - "node": ">= 14.0.0" - } - }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - "license": "MIT" - }, - "node_modules/winston": { - "version": "3.17.0", - "resolved": "https://registry.npmjs.org/winston/-/winston-3.17.0.tgz", - "integrity": "sha512-DLiFIXYC5fMPxaRg832S6F5mJYvePtmO5G9v9IgUFPhXm9/GkXarH/TUrBAVzhTCzAj9anE/+GjrgXp/54nOgw==", - "license": "MIT", - "dependencies": { - "@colors/colors": "^1.6.0", - "@dabh/diagnostics": "^2.0.2", - "async": "^3.2.3", - "is-stream": "^2.0.0", - "logform": "^2.7.0", - "one-time": "^1.0.0", - "readable-stream": "^3.4.0", - "safe-stable-stringify": "^2.3.1", - "stack-trace": "0.0.x", - "triple-beam": "^1.3.0", - "winston-transport": "^4.9.0" - }, - "engines": { - "node": ">= 12.0.0" - } - }, - "node_modules/winston-transport": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", - "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", - "license": "MIT", - "dependencies": { - "logform": "^2.7.0", - "readable-stream": "^3.6.2", - "triple-beam": "^1.3.0" - }, - "engines": { - "node": ">= 12.0.0" - } - } - } -} +{ + "name": "stackql-provider-datadog", + "version": "0.2.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "stackql-provider-datadog", + "version": "0.2.0", + "dependencies": { + "@stackql/pgwire-lite": "^1.0.2", + "@stackql/provider-utils": "^0.7.8", + "js-yaml": "^4.1.0", + "pluralize": "^8.0.0" + }, + "engines": { + "node": ">=20" + } + }, + "node_modules/@apidevtools/json-schema-ref-parser": { + "version": "11.7.2", + "resolved": "https://registry.npmjs.org/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.7.2.tgz", + "integrity": "sha512-4gY54eEGEstClvEkGnwVkTkrx0sqwemEFG5OSRRn3tD91XH0+Q8XIkYIfo7IwEWPpJZwILb9GUXeShtplRc/eA==", + "license": "MIT", + "dependencies": { + "@jsdevtools/ono": "^7.1.3", + "@types/json-schema": "^7.0.15", + "js-yaml": "^4.1.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/philsturgeon" + } + }, + "node_modules/@apidevtools/openapi-schemas": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@apidevtools/openapi-schemas/-/openapi-schemas-2.1.0.tgz", + "integrity": "sha512-Zc1AlqrJlX3SlpupFGpiLi2EbteyP7fXmUOGup6/DnkRgjP9bgMM/ag+n91rsv0U1Gpz0H3VILA/o3bW7Ua6BQ==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/@apidevtools/swagger-methods": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz", + "integrity": "sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg==", + "license": "MIT" + }, + "node_modules/@apidevtools/swagger-parser": { + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/@apidevtools/swagger-parser/-/swagger-parser-10.1.1.tgz", + "integrity": "sha512-u/kozRnsPO/x8QtKYJOqoGtC4kH6yg1lfYkB9Au0WhYB0FNLpyFusttQtvhlwjtG3rOwiRz4D8DnnXa8iEpIKA==", + "license": "MIT", + "dependencies": { + "@apidevtools/json-schema-ref-parser": "11.7.2", + "@apidevtools/openapi-schemas": "^2.1.0", + "@apidevtools/swagger-methods": "^3.0.2", + "@jsdevtools/ono": "^7.1.3", + "ajv": "^8.17.1", + "ajv-draft-04": "^1.0.0", + "call-me-maybe": "^1.0.2" + }, + "peerDependencies": { + "openapi-types": ">=7" + } + }, + "node_modules/@colors/colors": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.6.0.tgz", + "integrity": "sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==", + "license": "MIT", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@dabh/diagnostics": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.8.tgz", + "integrity": "sha512-R4MSXTVnuMzGD7bzHdW2ZhhdPC/igELENcq5IjEverBvq5hn1SXCWcsi6eSsdWP0/Ur+SItRRjAktmdoX/8R/Q==", + "license": "MIT", + "dependencies": { + "@so-ric/colorspace": "^1.1.6", + "enabled": "2.0.x", + "kuler": "^2.0.0" + } + }, + "node_modules/@jsdevtools/ono": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@jsdevtools/ono/-/ono-7.1.3.tgz", + "integrity": "sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==", + "license": "MIT" + }, + "node_modules/@so-ric/colorspace": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/@so-ric/colorspace/-/colorspace-1.1.6.tgz", + "integrity": "sha512-/KiKkpHNOBgkFJwu9sh48LkHSMYGyuTcSFK/qMBdnOAlrRJzRSXAOFB5qwzaVQuDl8wAvHVMkaASQDReTahxuw==", + "license": "MIT", + "dependencies": { + "color": "^5.0.2", + "text-hex": "1.0.x" + } + }, + "node_modules/@stackql/deno-openapi-dereferencer": { + "name": "@jsr/stackql__deno-openapi-dereferencer", + "version": "0.3.1", + "resolved": "https://npm.jsr.io/~/11/@jsr/stackql__deno-openapi-dereferencer/0.3.1.tgz", + "integrity": "sha512-7Ucdom3SYxvzp7VwzulQMe66E+1LeCZIprFQ70PwRPIUfL90bYNQDrLfe5L1WaB+X7StWdHmoFSFxoa9RDlN7w==", + "dependencies": { + "jsonpath-plus": "7.0.0" + } + }, + "node_modules/@stackql/pgwire-lite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@stackql/pgwire-lite/-/pgwire-lite-1.0.2.tgz", + "integrity": "sha512-uHZA0yzVyow8TtWYyGPFI7/If8Ci/5EjjKdoaZ4YEk1XcSoCKaGQmH9KCUlR/R1FvQk4Ic3DV9It8XhePsoTqQ==", + "license": "MIT", + "dependencies": { + "winston": "^3.14.2" + } + }, + "node_modules/@stackql/provider-utils": { + "version": "0.7.8", + "resolved": "https://registry.npmjs.org/@stackql/provider-utils/-/provider-utils-0.7.8.tgz", + "integrity": "sha512-eJJ27ceMo+eTT4OTuJ7e0Cvft21u+SSGh+2s3THeoDxImndiNlg4W0wd4Sv7k+5ZbhDDbcIKcka6RJFZybkVCw==", + "license": "MIT", + "dependencies": { + "@apidevtools/swagger-parser": "^10.1.1", + "@stackql/deno-openapi-dereferencer": "npm:@jsr/stackql__deno-openapi-dereferencer@^0.3.1", + "csv-parser": "^3.2.0", + "js-yaml": "^4.1.0", + "pluralize": "^8.0.0" + }, + "bin": { + "docgen-utils": "bin/docgen-utils.mjs", + "provider-dev-utils": "bin/provider-dev-utils.mjs" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "license": "MIT" + }, + "node_modules/@types/triple-beam": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", + "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==", + "license": "MIT" + }, + "node_modules/ajv": { + "version": "8.20.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz", + "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-draft-04": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz", + "integrity": "sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==", + "license": "MIT", + "peerDependencies": { + "ajv": "^8.5.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/async": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.6.tgz", + "integrity": "sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==", + "license": "MIT" + }, + "node_modules/call-me-maybe": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.2.tgz", + "integrity": "sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==", + "license": "MIT" + }, + "node_modules/color": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/color/-/color-5.0.3.tgz", + "integrity": "sha512-ezmVcLR3xAVp8kYOm4GS45ZLLgIE6SPAFoduLr6hTDajwb3KZ2F46gulK3XpcwRFb5KKGCSezCBAY4Dw4HsyXA==", + "license": "MIT", + "dependencies": { + "color-convert": "^3.1.3", + "color-string": "^2.1.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/color-convert": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-3.1.3.tgz", + "integrity": "sha512-fasDH2ont2GqF5HpyO4w0+BcewlhHEZOFn9c1ckZdHpJ56Qb7MHhH/IcJZbBGgvdtwdwNbLvxiBEdg336iA9Sg==", + "license": "MIT", + "dependencies": { + "color-name": "^2.0.0" + }, + "engines": { + "node": ">=14.6" + } + }, + "node_modules/color-name": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-2.1.1.tgz", + "integrity": "sha512-p2FdgwVx1a9yWBHP2wI0VgShkDpgN4kZISkxdNipGBJWpa5G6b04OINlVWCyJj0JmfvcPrgqt95E9k8yvaOJFg==", + "license": "MIT", + "engines": { + "node": ">=12.20" + } + }, + "node_modules/color-string": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-2.1.4.tgz", + "integrity": "sha512-Bb6Cq8oq0IjDOe8wJmi4JeNn763Xs9cfrBcaylK1tPypWzyoy2G3l90v9k64kjphl/ZJjPIShFztenRomi8WTg==", + "license": "MIT", + "dependencies": { + "color-name": "^2.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/csv-parser": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/csv-parser/-/csv-parser-3.2.1.tgz", + "integrity": "sha512-v8RPMSglouR9od735SnwSxLBbCJqEPSbgm1R5qfr8yIiMUCEFjox56kRZid0SvgHJEkxeIEu3+a9QS3YRh7CuA==", + "license": "MIT", + "bin": { + "csv-parser": "bin/csv-parser" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/enabled": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz", + "integrity": "sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==", + "license": "MIT" + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "license": "MIT" + }, + "node_modules/fast-uri": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.6.tgz", + "integrity": "sha512-7Ical1vFEMr0onbVzEDIreM22I4khW+fzyQPwvAFWBp1iwdshSZRsL4jjRvPG9JP1uiqMHRto+YU6R2/CzDz5Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fastify" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fastify" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/fecha": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/fecha/-/fecha-4.2.3.tgz", + "integrity": "sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==", + "license": "MIT" + }, + "node_modules/fn.name": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fn.name/-/fn.name-1.1.0.tgz", + "integrity": "sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==", + "license": "MIT" + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/js-yaml": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.1.tgz", + "integrity": "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/puzrin" + }, + { + "type": "github", + "url": "https://github.com/sponsors/nodeca" + } + ], + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "license": "MIT" + }, + "node_modules/jsonpath-plus": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.0.0.tgz", + "integrity": "sha512-MH4UnrWrU1hJGVEyEyjvYgONkzNTO6Yol0nq18EMnUQ/ZC5cTuJheirXXIwu1b9mZ6t3XL0P79gPsu+zlTnDIQ==", + "license": "MIT", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/kuler": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", + "integrity": "sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==", + "license": "MIT" + }, + "node_modules/logform": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/logform/-/logform-2.7.0.tgz", + "integrity": "sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==", + "license": "MIT", + "dependencies": { + "@colors/colors": "1.6.0", + "@types/triple-beam": "^1.3.2", + "fecha": "^4.2.0", + "ms": "^2.1.1", + "safe-stable-stringify": "^2.3.1", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/one-time": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/one-time/-/one-time-1.0.0.tgz", + "integrity": "sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==", + "license": "MIT", + "dependencies": { + "fn.name": "1.x.x" + } + }, + "node_modules/openapi-types": { + "version": "12.1.3", + "resolved": "https://registry.npmjs.org/openapi-types/-/openapi-types-12.1.3.tgz", + "integrity": "sha512-N4YtSYJqghVu4iek2ZUvcN/0aqH1kRDuNqzcycDxhOUpg7GdvLa2F3DgS6yBNhInhv2r/6I0Flkn7CqL8+nIcw==", + "license": "MIT", + "peer": true + }, + "node_modules/pluralize": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-8.0.0.tgz", + "integrity": "sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-stable-stringify": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/text-hex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz", + "integrity": "sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==", + "license": "MIT" + }, + "node_modules/triple-beam": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", + "integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==", + "license": "MIT", + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/winston": { + "version": "3.19.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-3.19.0.tgz", + "integrity": "sha512-LZNJgPzfKR+/J3cHkxcpHKpKKvGfDZVPS4hfJCc4cCG0CgYzvlD6yE/S3CIL/Yt91ak327YCpiF/0MyeZHEHKA==", + "license": "MIT", + "dependencies": { + "@colors/colors": "^1.6.0", + "@dabh/diagnostics": "^2.0.8", + "async": "^3.2.3", + "is-stream": "^2.0.0", + "logform": "^2.7.0", + "one-time": "^1.0.0", + "readable-stream": "^3.4.0", + "safe-stable-stringify": "^2.3.1", + "stack-trace": "0.0.x", + "triple-beam": "^1.3.0", + "winston-transport": "^4.9.0" + }, + "engines": { + "node": ">= 12.0.0" + } + }, + "node_modules/winston-transport": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.9.0.tgz", + "integrity": "sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==", + "license": "MIT", + "dependencies": { + "logform": "^2.7.0", + "readable-stream": "^3.6.2", + "triple-beam": "^1.3.0" + }, + "engines": { + "node": ">= 12.0.0" + } + } + } +} diff --git a/package.json b/package.json index a128d54..e8580ae 100644 --- a/package.json +++ b/package.json @@ -1,28 +1,38 @@ -{ - "name": "stackql-provider-digitalocean", - "version": "0.1.0", - "description": "StackQL Provider for Digital Ocean", - "type": "module", - "scripts": { - "generate-docs": "./bin/generate-docs.sh", - "split": "./bin/split.sh", - "generate-mappings": "./bin/generate-mappings.sh", - "generate-provider": "./bin/generate-provider.sh", - "start-server": "bash ./bin/start-server.sh", - "stop-server": "bash ./bin/stop-server.sh", - "server-status": "bash ./bin/server-status.sh", - "test-meta-routes": "node ./bin/test-meta-routes.cjs" - }, - "dependencies": { - "@stackql/pgwire-lite": "^1.0.1", - "@stackql/provider-utils": "^0.4.9" - }, - "keywords": [ - "stackql", - "digitalocean", - "provider" - ], - "engines": { - "node": ">=14.16.0" - } -} \ No newline at end of file +{ + "name": "stackql-provider-datadog", + "version": "0.2.0", + "description": "StackQL Provider for Datadog", + "type": "module", + "scripts": { + "fetch-spec": "bash ./bin/fetch-spec.sh", + "merge-specs": "node ./provider-dev/scripts/merge_specs.mjs", + "split": "node ./node_modules/@stackql/provider-utils/bin/provider-dev-utils.mjs split", + "generate-mappings": "node ./node_modules/@stackql/provider-utils/bin/provider-dev-utils.mjs analyze", + "map-operations": "node ./provider-dev/scripts/map_operations.mjs", + "pre-normalize": "node ./provider-dev/scripts/pre_normalize.mjs", + "normalize": "node ./node_modules/@stackql/provider-utils/bin/provider-dev-utils.mjs normalize", + "post-normalize": "node ./provider-dev/scripts/post_normalize.mjs", + "generate-provider": "node ./node_modules/@stackql/provider-utils/bin/provider-dev-utils.mjs generate", + "post-process": "node ./provider-dev/scripts/post_process.mjs", + "generate-docs": "node ./node_modules/@stackql/provider-utils/bin/docgen-utils.mjs generate-docs", + "start-server": "bash ./bin/start-server.sh", + "stop-server": "bash ./bin/stop-server.sh", + "server-status": "bash ./bin/server-status.sh", + "test-meta-routes": "node ./bin/test-meta-routes.cjs", + "test-offline": "node ./tests/offline_validation.mjs" + }, + "dependencies": { + "@stackql/pgwire-lite": "^1.0.2", + "@stackql/provider-utils": "^0.7.8", + "js-yaml": "^4.1.0", + "pluralize": "^8.0.0" + }, + "keywords": [ + "stackql", + "datadog", + "provider" + ], + "engines": { + "node": ">=20" + } +} diff --git a/provider-dev/config/all_services.csv b/provider-dev/config/all_services.csv index 019468f..f3b4894 100644 --- a/provider-dev/config/all_services.csv +++ b/provider-dev/config/all_services.csv @@ -1,576 +1,1780 @@ -filename,path,operationId,formatted_op_id,verb,response_object,tags,formatted_tags,stackql_resource_name,stackql_method_name,stackql_verb,stackql_object_key,op_description -actions.yaml,/api/v2/actions/connections/{connection_id},DeleteActionConnection,delete_action_connection,delete,,Action Connection,action connection,connections,delete_action_connection,delete,,Delete an existing Action Connection -actions.yaml,/api/v2/actions-datastores/{datastore_id}/items,DeleteDatastoreItem,delete_datastore_item,delete,DeleteAppsDatastoreItemResponse,Actions Datastores,actions datastores,datastore_items,delete_datastore_item,delete,,Delete datastore item -actions.yaml,/api/v2/actions-datastores/{datastore_id},DeleteDatastore,delete_datastore,delete,,Actions Datastores,actions datastores,datastores,delete_datastore,delete,,Delete datastore -apm.yaml,/api/v2/apm/config/retention-filters/{filter_id},DeleteApmRetentionFilter,delete_apm_retention_filter,delete,,APM Retention Filters,apm retention filters,retention_filters,delete_apm_retention_filter,delete,,Delete a retention filter -apm.yaml,/api/v2/scorecard/rules/{rule_id},DeleteScorecardRule,delete_scorecard_rule,delete,,Service Scorecards,service scorecards,scorecard_rules,delete_scorecard_rule,delete,,Delete a rule -apm.yaml,/api/v2/apm/config/metrics/{metric_id},DeleteSpansMetric,delete_spans_metric,delete,,Spans Metrics,spans metrics,spans_metrics,delete_spans_metric,delete,,Delete a span-based metric -catalog.yaml,/api/v2/apicatalog/api/{id},DeleteOpenAPI,delete_open_api,delete,,API Management,api management,apis,delete_open_api,delete,,Delete an API -catalog.yaml,/api/v2/catalog/entity/{entity_id},DeleteCatalogEntity,delete_catalog_entity,delete,,Software Catalog,software catalog,catalog_entities,delete_catalog_entity,delete,,Delete a single entity -catalog.yaml,/api/v2/catalog/kind/{kind_id},DeleteCatalogKind,delete_catalog_kind,delete,,Software Catalog,software catalog,catalog_kinds,delete_catalog_kind,delete,,Delete a single kind -cloud_costs.yaml,/api/v2/cost/aws_cur_config/{cloud_account_id},DeleteCostAWSCURConfig,delete_cost_awscurconfig,delete,,Cloud Cost Management,cloud cost management,aws_configs,delete_cost_awscurconfig,delete,,Delete Cloud Cost Management AWS CUR config -cloud_costs.yaml,/api/v2/cost/azure_uc_config/{cloud_account_id},DeleteCostAzureUCConfig,delete_cost_azure_ucconfig,delete,,Cloud Cost Management,cloud cost management,azure_configs,delete_cost_azure_ucconfig,delete,,Delete Cloud Cost Management Azure config -cloud_costs.yaml,/api/v2/cost/budget/{budget_id},DeleteBudget,delete_budget,delete,,Cloud Cost Management,cloud cost management,budgets,delete_budget,delete,,Delete a budget -cloud_costs.yaml,/api/v2/cost/custom_costs/{file_id},DeleteCustomCostsFile,delete_custom_costs_file,delete,,Cloud Cost Management,cloud cost management,costs_files,delete_custom_costs_file,delete,,Delete Custom Costs file -cloud_costs.yaml,/api/v2/cost/gcp_uc_config/{cloud_account_id},DeleteCostGCPUsageCostConfig,delete_cost_gcpusage_cost_config,delete,,Cloud Cost Management,cloud cost management,gcp_configs,delete_cost_gcpusage_cost_config,delete,,Delete Cloud Cost Management GCP Usage Cost config -dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,DeleteDashboardListItems,delete_dashboard_list_items,delete,DashboardListDeleteItemsResponse,Dashboard Lists,dashboard lists,dashboard_list_items,delete_dashboard_list_items,delete,,Delete items from a dashboard list -dashboards.yaml,/api/v2/powerpacks/{powerpack_id},DeletePowerpack,delete_powerpack,delete,,Powerpack,powerpack,powerpacks,delete_powerpack,delete,,Delete a powerpack -digital_experience.yaml,/api/v2/rum/applications/{id},DeleteRUMApplication,delete_rumapplication,delete,,RUM,rum,rum_applications,delete_rumapplication,delete,,Delete a RUM application -digital_experience.yaml,/api/v2/rum/config/metrics/{metric_id},DeleteRumMetric,delete_rum_metric,delete,,Rum Metrics,rum metrics,rum_metrics,delete_rum_metric,delete,,Delete a rum-based metric -digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},DeleteRetentionFilter,delete_retention_filter,delete,,Rum Retention Filters,rum retention filters,rum_retention_filters,delete_retention_filter,delete,,Delete a RUM retention filter -infrastructure.yaml,/api/v2/app-builder/apps/{app_id},DeleteApp,delete_app,delete,DeleteAppResponse,App Builder,app builder,apps,delete_app,delete,,Delete App -infrastructure.yaml,/api/v2/app-builder/apps,DeleteApps,delete_apps,delete,DeleteAppsResponse,App Builder,app builder,apps,delete_apps,delete,,Delete Multiple Apps -integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id},DeleteAWSAccount,delete_awsaccount,delete,,AWS Integration,aws integration,aws_accounts,delete_awsaccount,delete,,Delete an AWS integration -integrations.yaml,/api/v2/integrations/cloudflare/accounts/{account_id},DeleteCloudflareAccount,delete_cloudflare_account,delete,,Cloudflare Integration,cloudflare integration,cloudflare_accounts,delete_cloudflare_account,delete,,Delete Cloudflare account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id},DeleteConfluentAccount,delete_confluent_account,delete,,Confluent Cloud,confluent cloud,confluent_accounts,delete_confluent_account,delete,,Delete Confluent account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},DeleteConfluentResource,delete_confluent_resource,delete,,Confluent Cloud,confluent cloud,confluent_resources,delete_confluent_resource,delete,,Delete resource from Confluent account -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id},DeleteFastlyAccount,delete_fastly_account,delete,,Fastly Integration,fastly integration,fastly_accounts,delete_fastly_account,delete,,Delete Fastly account -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},DeleteFastlyService,delete_fastly_service,delete,,Fastly Integration,fastly integration,fastly_services,delete_fastly_service,delete,,Delete Fastly service -integrations.yaml,/api/v2/integration/gcp/accounts/{account_id},DeleteGCPSTSAccount,delete_gcpstsaccount,delete,,GCP Integration,gcp integration,gcp_accounts,delete_gcpstsaccount,delete,,Delete an STS enabled GCP Account -integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},DeleteTenantBasedHandle,delete_tenant_based_handle,delete,,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,delete_tenant_based_handle,delete,,Delete tenant-based handle -integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},DeleteWorkflowsWebhookHandle,delete_workflows_webhook_handle,delete,,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,delete_workflows_webhook_handle,delete,,Delete Workflows webhook handle -integrations.yaml,/api/v2/integrations/okta/accounts/{account_id},DeleteOktaAccount,delete_okta_account,delete,,Okta Integration,okta integration,okta_accounts,delete_okta_account,delete,,Delete Okta account -integrations.yaml,/api/v2/integration/opsgenie/services/{integration_service_id},DeleteOpsgenieService,delete_opsgenie_service,delete,,Opsgenie Integration,opsgenie integration,opsgenie_services,delete_opsgenie_service,delete,,Delete a single service object -logs.yaml,/api/v2/logs/config/archives/{archive_id}/readers,RemoveRoleFromArchive,remove_role_from_archive,delete,,Logs Archives,logs archives,archive_read_roles,remove_role_from_archive,delete,,Revoke role from an archive -logs.yaml,/api/v2/logs/config/archives/{archive_id},DeleteLogsArchive,delete_logs_archive,delete,,Logs Archives,logs archives,archives,delete_logs_archive,delete,,Delete an archive -logs.yaml,/api/v2/logs/config/custom-destinations/{custom_destination_id},DeleteLogsCustomDestination,delete_logs_custom_destination,delete,,Logs Custom Destinations,logs custom destinations,custom_destinations,delete_logs_custom_destination,delete,,Delete a custom destination -logs.yaml,/api/v2/logs/config/metrics/{metric_id},DeleteLogsMetric,delete_logs_metric,delete,,Logs Metrics,logs metrics,metrics,delete_logs_metric,delete,,Delete a log-based metric -metrics.yaml,/api/v2/datasets/{dataset_id},DeleteDataset,delete_dataset,delete,,Datasets,datasets,datasets,delete_dataset,delete,,Delete a dataset -metrics.yaml,/api/v2/metrics/config/bulk-tags,DeleteBulkTagsMetricsConfiguration,delete_bulk_tags_metrics_configuration,delete,MetricBulkTagConfigResponse,Metrics,metrics,tag_configurations,delete_bulk_tags_metrics_configuration,delete,,Delete tags for multiple metrics -metrics.yaml,/api/v2/metrics/{metric_name}/tags,DeleteTagConfiguration,delete_tag_configuration,delete,,Metrics,metrics,tag_configurations,delete_tag_configuration,delete,,Delete a tag configuration -monitoring.yaml,/api/v2/monitor/policy/{policy_id},DeleteMonitorConfigPolicy,delete_monitor_config_policy,delete,,Monitors,monitors,config_policies,delete_monitor_config_policy,delete,,Delete a monitor configuration policy -monitoring.yaml,/api/v2/monitor/notification_rule/{rule_id},DeleteMonitorNotificationRule,delete_monitor_notification_rule,delete,,Monitors,monitors,notification_rules,delete_monitor_notification_rule,delete,,Delete a monitor notification rule -monitoring.yaml,/api/v2/monitor/template/{template_id},DeleteMonitorUserTemplate,delete_monitor_user_template,delete,,Monitors,monitors,user_templates,delete_monitor_user_template,delete,,Delete a monitor user template -organization.yaml,/api/v2/api_keys/{api_key_id},DeleteAPIKey,delete_apikey,delete,,Key Management,key management,api_keys,delete_apikey,delete,,Delete an API key -organization.yaml,/api/v2/application_keys/{app_key_id},DeleteApplicationKey,delete_application_key,delete,,Key Management,key management,application_keys,delete_application_key,delete,,Delete an application key -organization.yaml,/api/v2/authn_mappings/{authn_mapping_id},DeleteAuthNMapping,delete_auth_nmapping,delete,,AuthN Mappings,auth_n mappings,authn_mappings,delete_auth_nmapping,delete,,Delete an AuthN Mapping -organization.yaml,/api/v2/org_connections/{connection_id},DeleteOrgConnections,delete_org_connections,delete,,Org Connections,org connections,connections,delete_org_connections,delete,,Delete Org Connection -organization.yaml,/api/v2/current_user/application_keys/{app_key_id},DeleteCurrentUserApplicationKey,delete_current_user_application_key,delete,,Key Management,key management,current_user_application_keys,delete_current_user_application_key,delete,,Delete an application key owned by current user -organization.yaml,/api/v2/restriction_policy/{resource_id},DeleteRestrictionPolicy,delete_restriction_policy,delete,,Restriction Policies,restriction policies,restriction_policies,delete_restriction_policy,delete,,Delete a restriction policy -organization.yaml,/api/v2/roles/{role_id}/permissions,RemovePermissionFromRole,remove_permission_from_role,delete,PermissionsResponse,Roles,roles,role_permissions,remove_permission_from_role,delete,,Revoke permission -organization.yaml,/api/v2/roles/{role_id}/users,RemoveUserFromRole,remove_user_from_role,delete,UsersResponse,Roles,roles,role_permissions,remove_user_from_role,delete,,Remove a user from a role -organization.yaml,/api/v2/roles/{role_id},DeleteRole,delete_role,delete,,Roles,roles,roles,delete_role,delete,,Delete role -organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},DeleteServiceAccountApplicationKey,delete_service_account_application_key,delete,,Service Accounts,service accounts,service_account_keys,delete_service_account_application_key,delete,,Delete an application key for this service account -organization.yaml,/api/v2/team/{team_id}/links/{link_id},DeleteTeamLink,delete_team_link,delete,,Teams,teams,team_links,delete_team_link,delete,,Remove a team link -organization.yaml,/api/v2/team/{super_team_id}/member_teams/{member_team_id},RemoveMemberTeam,remove_member_team,delete,,Teams,teams,team_members,remove_member_team,delete,,Remove a member team -organization.yaml,/api/v2/team/{team_id}/memberships/{user_id},DeleteTeamMembership,delete_team_membership,delete,,Teams,teams,team_memberships,delete_team_membership,delete,,Remove a user from a team -organization.yaml,/api/v2/team/{team_id},DeleteTeam,delete_team,delete,,Teams,teams,teams,delete_team,delete,,Remove a team -remote_config.yaml,/api/v2/remote_config/products/cws/policy/{policy_id},DeleteCSMThreatsAgentPolicy,delete_csmthreats_agent_policy,delete,,CSM Threats,csm threats,csm_threats_agent_policies,delete_csmthreats_agent_policy,delete,,Delete a Workload Protection policy -remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},DeleteCSMThreatsAgentRule,delete_csmthreats_agent_rule,delete,,CSM Threats,csm threats,csm_threats_agent_rules,delete_csmthreats_agent_rule,delete,,Delete a Workload Protection agent rule -remote_config.yaml,/api/v2/remote_config/products/obs_pipelines/pipelines/{pipeline_id},DeletePipeline,delete_pipeline,delete,,Observability Pipelines,observability pipelines,observability_pipelines,delete_pipeline,delete,,Delete a pipeline -remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},DeleteApplicationSecurityWafCustomRule,delete_application_security_waf_custom_rule,delete,,Application Security,application security,waf_custom_rules,delete_application_security_waf_custom_rule,delete,,Delete a WAF Custom Rule -remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},DeleteApplicationSecurityWafExclusionFilter,delete_application_security_waf_exclusion_filter,delete,,Application Security,application security,waf_exclusion_filters,delete_application_security_waf_exclusion_filter,delete,,Delete a WAF exclusion filter -security.yaml,/api/v2/agentless_scanning/accounts/aws/{account_id},DeleteAwsScanOptions,delete_aws_scan_options,delete,,Agentless Scanning,agentless scanning,aws_scan_options,delete_aws_scan_options,delete,,Delete AWS Scan Options -security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},DeleteCloudWorkloadSecurityAgentRule,delete_cloud_workload_security_agent_rule,delete,,CSM Threats,csm threats,cloud_workload_security_agent_rules,delete_cloud_workload_security_agent_rule,delete,,Delete a Workload Protection agent rule (US1-FED) -security.yaml,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},DeleteCustomFramework,delete_custom_framework,delete,DeleteCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,delete_custom_framework,delete,,Delete a custom framework -security.yaml,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},DeleteSecurityFilter,delete_security_filter,delete,,Security Monitoring,security monitoring,filters,delete_security_filter,delete,,Delete a security filter -security.yaml,/api/v2/siem-historical-detections/jobs/{job_id},DeleteHistoricalJob,delete_historical_job,delete,,Security Monitoring,security monitoring,historical_jobs,delete_historical_job,delete,,Delete an existing job -security.yaml,/api/v2/security_monitoring/rules/{rule_id},DeleteSecurityMonitoringRule,delete_security_monitoring_rule,delete,,Security Monitoring,security monitoring,monitoring_rules,delete_security_monitoring_rule,delete,,Delete an existing rule -security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},DeleteSecurityMonitoringSuppression,delete_security_monitoring_suppression,delete,,Security Monitoring,security monitoring,monitoring_suppressions,delete_security_monitoring_suppression,delete,,Delete a suppression rule -security.yaml,/api/v2/sensitive-data-scanner/config/groups/{group_id},DeleteScanningGroup,delete_scanning_group,delete,SensitiveDataScannerGroupDeleteResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,delete_scanning_group,delete,,Delete Scanning Group -security.yaml,/api/v2/sensitive-data-scanner/config/rules/{rule_id},DeleteScanningRule,delete_scanning_rule,delete,SensitiveDataScannerRuleDeleteResponse,Sensitive Data Scanner,sensitive data scanner,scanning_rules,delete_scanning_rule,delete,,Delete Scanning Rule -security.yaml,/api/v2/security/signals/notification_rules/{id},DeleteSignalNotificationRule,delete_signal_notification_rule,delete,,Security Monitoring,security monitoring,signal_notification_rules,delete_signal_notification_rule,delete,,Delete a signal-based notification rule -security.yaml,/api/v2/security/vulnerabilities/notification_rules/{id},DeleteVulnerabilityNotificationRule,delete_vulnerability_notification_rule,delete,,Security Monitoring,security monitoring,vulnerability_notification_rules,delete_vulnerability_notification_rule,delete,,Delete a vulnerability-based notification rule -service_management.yaml,/api/v2/downtime/{downtime_id},CancelDowntime,cancel_downtime,delete,,Downtimes,downtimes,downtimes,cancel_downtime,delete,,Cancel a downtime -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},DeleteIncidentIntegration,delete_incident_integration,delete,,Incidents,incidents,incident_integrations,delete_incident_integration,delete,,Delete an incident integration metadata -service_management.yaml,/api/v2/incidents/config/notification-rules/{id},DeleteIncidentNotificationRule,delete_incident_notification_rule,delete,,Incidents,incidents,incident_notification_rules,delete_incident_notification_rule,delete,,Delete an incident notification rule -service_management.yaml,/api/v2/incidents/config/notification-templates/{id},DeleteIncidentNotificationTemplate,delete_incident_notification_template,delete,,Incidents,incidents,incident_notification_templates,delete_incident_notification_template,delete,,Delete a notification template -service_management.yaml,/api/v2/services/{service_id},DeleteIncidentService,delete_incident_service,delete,,Incident Services,incident services,incident_services,delete_incident_service,delete,,Delete an existing incident service -service_management.yaml,/api/v2/teams/{team_id},DeleteIncidentTeam,delete_incident_team,delete,,Incident Teams,incident teams,incident_teams,delete_incident_team,delete,,Delete an existing incident team -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},DeleteIncidentTodo,delete_incident_todo,delete,,Incidents,incidents,incident_todos,delete_incident_todo,delete,,Delete an incident todo -service_management.yaml,/api/v2/incidents/config/types/{incident_type_id},DeleteIncidentType,delete_incident_type,delete,,Incidents,incidents,incident_types,delete_incident_type,delete,,Delete an incident type -service_management.yaml,/api/v2/incidents/{incident_id},DeleteIncident,delete_incident,delete,,Incidents,incidents,incidents,delete_incident,delete,,Delete an existing incident -service_management.yaml,/api/v2/on-call/escalation-policies/{policy_id},DeleteOnCallEscalationPolicy,delete_on_call_escalation_policy,delete,,On-Call,on_call,on_call_escalation_policies,delete_on_call_escalation_policy,delete,,Delete On-Call escalation policy -service_management.yaml,/api/v2/on-call/schedules/{schedule_id},DeleteOnCallSchedule,delete_on_call_schedule,delete,,On-Call,on_call,on_call_schedule,delete_on_call_schedule,delete,,Delete On-Call schedule -service_management.yaml,/api/v2/cases/projects/{project_id},DeleteProject,delete_project,delete,,Case Management,case management,projects,delete_project,delete,,Remove a project -service_management.yaml,/api/v2/services/definitions/{service_name},DeleteServiceDefinition,delete_service_definition,delete,,Service Definition,service definition,service_definitions,delete_service_definition,delete,,Delete a single service definition -software_delivery.yaml,/api/v2/workflows/{workflow_id},DeleteWorkflow,delete_workflow,delete,,Workflow Automation,workflow automation,workflows,delete_workflow,delete,,Delete an existing Workflow -actions.yaml,/api/v2/actions/app_key_registrations/{app_key_id},RegisterAppKey,register_app_key,put,RegisterAppKeyResponse,Action Connection,action connection,app_key_registrations,register_app_key,exec,,Register a new App Key -actions.yaml,/api/v2/actions/app_key_registrations/{app_key_id},UnregisterAppKey,unregister_app_key,delete,,Action Connection,action connection,app_key_registrations,unregister_app_key,exec,,Unregister an App Key -apm.yaml,/api/v2/apm/config/retention-filters-execution-order,ReorderApmRetentionFilters,reorder_apm_retention_filters,put,,APM Retention Filters,apm retention filters,retention_filters,reorder_apm_retention_filters,exec,,Re-order retention filters -apm.yaml,/api/v2/scorecard/outcomes,UpdateScorecardOutcomesAsync,update_scorecard_outcomes_async,post,,Service Scorecards,service scorecards,scorecard_outcomes,update_scorecard_outcomes_async,exec,,Update Scorecard outcomes asynchronously -catalog.yaml,/api/v2/apicatalog/api/{id}/openapi,GetOpenAPI,get_open_api,get,,API Management,api management,apis,get_open_api,exec,,Get an API -cloud_costs.yaml,/api/v2/cost/custom_costs,UploadCustomCostsFile,upload_custom_costs_file,put,CustomCostsFileUploadResponse,Cloud Cost Management,cloud cost management,costs_files,upload_custom_costs_file,exec,,Upload Custom Costs file -digital_experience.yaml,/api/v2/rum/analytics/aggregate,AggregateRUMEvents,aggregate_rumevents,post,RUMAnalyticsAggregateResponse,RUM,rum,rum_events,aggregate_rumevents,exec,,Aggregate RUM events -digital_experience.yaml,/api/v2/rum/events/search,SearchRUMEvents,search_rumevents,post,RUMEventsResponse,RUM,rum,rum_events,search_rumevents,exec,,Search RUM events -digital_experience.yaml,/api/v2/rum/applications/{app_id}/relationships/retention_filters,OrderRetentionFilters,order_retention_filters,patch,RumRetentionFiltersOrderResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,order_retention_filters,exec,,Order RUM retention filters -infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/deployment,PublishApp,publish_app,post,PublishAppResponse,App Builder,app builder,apps,publish_app,exec,,Publish App -infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/deployment,UnpublishApp,unpublish_app,delete,UnpublishAppResponse,App Builder,app builder,apps,unpublish_app,exec,,Unpublish App -integrations.yaml,/api/v2/integration/aws/generate_new_external_id,CreateNewAWSExternalID,create_new_awsexternal_id,post,AWSNewExternalIDResponse,AWS Integration,aws integration,aws_accounts,create_new_awsexternal_id,exec,,Generate a new external ID -integrations.yaml,/api/v2/integration/gcp/sts_delegate,MakeGCPSTSDelegate,make_gcpstsdelegate,post,GCPSTSDelegateAccountResponse,GCP Integration,gcp integration,gcp_sts_delegate,make_gcpstsdelegate,exec,,Create a Datadog GCP principal -logs.yaml,/api/v2/logs/analytics/aggregate,AggregateLogs,aggregate_logs,post,LogsAggregateResponse,Logs,logs,logs,aggregate_logs,exec,,Aggregate events -metrics.yaml,/api/v2/query/scalar,QueryScalarData,query_scalar_data,post,ScalarFormulaQueryResponse,Metrics,metrics,metrics,query_scalar_data,exec,,Query scalar data across multiple products -metrics.yaml,/api/v2/query/timeseries,QueryTimeseriesData,query_timeseries_data,post,TimeseriesFormulaQueryResponse,Metrics,metrics,metrics,query_timeseries_data,exec,,Query timeseries data across multiple products -metrics.yaml,/api/v2/spans/analytics/aggregate,AggregateSpans,aggregate_spans,post,SpansAggregateResponse,Spans,spans,spans,aggregate_spans,exec,,Aggregate spans -monitoring.yaml,/api/v2/monitor/template/{template_id}/validate,ValidateExistingMonitorUserTemplate,validate_existing_monitor_user_template,post,,Monitors,monitors,user_templates,validate_existing_monitor_user_template,exec,,Validate an existing monitor user template -monitoring.yaml,/api/v2/monitor/template/validate,ValidateMonitorUserTemplate,validate_monitor_user_template,post,,Monitors,monitors,user_templates,validate_monitor_user_template,exec,,Validate a monitor user template -organization.yaml,/api/v2/audit/events/search,SearchAuditLogs,search_audit_logs,post,AuditLogsEventsResponse,Audit,audit,audit_logs,search_audit_logs,exec,,Search Audit Logs events -organization.yaml,/api/v2/deletion/requests/{id}/cancel,CancelDataDeletionRequest,cancel_data_deletion_request,put,CancelDataDeletionResponseBody,Data Deletion,data deletion,data_deletion_requests,cancel_data_deletion_request,exec,,Cancels a data deletion request -organization.yaml,/api/v2/saml_configurations/idp_metadata,UploadIdPMetadata,upload_id_pmetadata,post,,Organizations,organizations,idp_metadata,upload_id_pmetadata,exec,,Upload IdP metadata -organization.yaml,/api/v2/user_invitations,SendInvitations,send_invitations,post,UserInvitationsResponse,Users,users,invitations,send_invitations,exec,,Send invitation emails -organization.yaml,/api/v2/roles/{role_id}/clone,CloneRole,clone_role,post,RoleResponse,Roles,roles,roles,clone_role,exec,,Create a new role by cloning an existing role -organization.yaml,/api/v2/team/sync,SyncTeams,sync_teams,post,,Teams,teams,teams,sync_teams,exec,,Link Teams with GitHub Teams -organization.yaml,/api/v2/users/{user_id},DisableUser,disable_user,delete,,Users,users,users,disable_user,exec,,Disable a user -remote_config.yaml,/api/v2/remote_config/products/cws/policy/download,DownloadCSMThreatsPolicy,download_csmthreats_policy,get,,CSM Threats,csm threats,csm_threats_agent_policies,download_csmthreats_policy,exec,,Download the Workload Protection policy -remote_config.yaml,/api/v2/remote_config/products/obs_pipelines/pipelines/validate,ValidatePipeline,validate_pipeline,post,ValidationResponse,Observability Pipelines,observability pipelines,observability_pipelines,validate_pipeline,exec,,Validate an observability pipeline -security.yaml,/api/v2/security/cloud_workload/policy/download,DownloadCloudWorkloadPolicyFile,download_cloud_workload_policy_file,get,,CSM Threats,csm threats,cloud_workload_security_agent_rules,download_cloud_workload_policy_file,exec,,Download the Workload Protection policy (US1-FED) -security.yaml,/api/v2/posture_management/findings,MuteFindings,mute_findings,patch,BulkMuteFindingsResponse,Security Monitoring,security monitoring,findings,mute_findings,exec,,Mute or unmute a batch of findings -security.yaml,/api/v2/siem-historical-detections/jobs/signal_convert,ConvertJobResultToSignal,convert_job_result_to_signal,post,,Security Monitoring,security monitoring,monitoring_hist_signals,convert_job_result_to_signal,exec,,Convert a job result to a signal -security.yaml,/api/v2/siem-historical-detections/histsignals/search,SearchSecurityMonitoringHistsignals,search_security_monitoring_histsignals,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_hist_signals,search_security_monitoring_histsignals,exec,,Search hist signals -security.yaml,/api/v2/security_monitoring/rules/{rule_id}/convert,ConvertExistingSecurityMonitoringRule,convert_existing_security_monitoring_rule,get,SecurityMonitoringRuleConvertResponse,Security Monitoring,security monitoring,monitoring_rules,convert_existing_security_monitoring_rule,exec,,Convert an existing rule from JSON to Terraform -security.yaml,/api/v2/security_monitoring/rules/convert,ConvertSecurityMonitoringRuleFromJSONToTerraform,convert_security_monitoring_rule_from_jsonto_terraform,post,SecurityMonitoringRuleConvertResponse,Security Monitoring,security monitoring,monitoring_rules,convert_security_monitoring_rule_from_jsonto_terraform,exec,,Convert a rule from JSON to Terraform -security.yaml,/api/v2/security_monitoring/rules/{rule_id}/test,TestExistingSecurityMonitoringRule,test_existing_security_monitoring_rule,post,SecurityMonitoringRuleTestResponse,Security Monitoring,security monitoring,monitoring_rules,test_existing_security_monitoring_rule,exec,,Test an existing rule -security.yaml,/api/v2/security_monitoring/rules/test,TestSecurityMonitoringRule,test_security_monitoring_rule,post,SecurityMonitoringRuleTestResponse,Security Monitoring,security monitoring,monitoring_rules,test_security_monitoring_rule,exec,,Test a rule -security.yaml,/api/v2/security_monitoring/rules/validation,ValidateSecurityMonitoringRule,validate_security_monitoring_rule,post,,Security Monitoring,security monitoring,monitoring_rules,validate_security_monitoring_rule,exec,,Validate a detection rule -security.yaml,/api/v2/security_monitoring/signals/{signal_id}/assignee,EditSecurityMonitoringSignalAssignee,edit_security_monitoring_signal_assignee,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal_assignee,exec,,Modify the triage assignee of a security signal -security.yaml,/api/v2/security_monitoring/signals/{signal_id}/incidents,EditSecurityMonitoringSignalIncidents,edit_security_monitoring_signal_incidents,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal_incidents,exec,,Change the related incidents of a security signal -security.yaml,/api/v2/security_monitoring/signals/{signal_id}/state,EditSecurityMonitoringSignalState,edit_security_monitoring_signal_state,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal_state,exec,,Change the triage state of a security signal -security.yaml,/api/v2/security_monitoring/signals/search,SearchSecurityMonitoringSignals,search_security_monitoring_signals,post,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_signals,search_security_monitoring_signals,exec,,Get a list of security signals -security.yaml,/api/v2/security_monitoring/configuration/suppressions/validation,ValidateSecurityMonitoringSuppression,validate_security_monitoring_suppression,post,,Security Monitoring,security monitoring,monitoring_suppressions,validate_security_monitoring_suppression,exec,,Validate a suppression rule -security.yaml,/api/v2/sensitive-data-scanner/config,ReorderScanningGroups,reorder_scanning_groups,patch,SensitiveDataScannerReorderGroupsResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,reorder_scanning_groups,exec,,Reorder Groups -service_management.yaml,/api/v2/cases/{case_id}/archive,ArchiveCase,archive_case,post,CaseResponse,Case Management,case management,cases,archive_case,exec,,Archive case -service_management.yaml,/api/v2/cases/{case_id}/assign,AssignCase,assign_case,post,CaseResponse,Case Management,case management,cases,assign_case,exec,,Assign case -service_management.yaml,/api/v2/cases,SearchCases,search_cases,get,CasesResponse,Case Management,case management,cases,search_cases,exec,,Search cases -service_management.yaml,/api/v2/cases/{case_id}/unarchive,UnarchiveCase,unarchive_case,post,CaseResponse,Case Management,case management,cases,unarchive_case,exec,,Unarchive case -service_management.yaml,/api/v2/cases/{case_id}/unassign,UnassignCase,unassign_case,post,CaseResponse,Case Management,case management,cases,unassign_case,exec,,Unassign case -service_management.yaml,/api/v2/cases/{case_id}/attributes,UpdateAttributes,update_attributes,post,CaseResponse,Case Management,case management,cases,update_attributes,exec,,Update case attributes -service_management.yaml,/api/v2/cases/{case_id}/priority,UpdatePriority,update_priority,post,CaseResponse,Case Management,case management,cases,update_priority,exec,,Update case priority -service_management.yaml,/api/v2/cases/{case_id}/status,UpdateStatus,update_status,post,CaseResponse,Case Management,case management,cases,update_status,exec,,Update case status -service_management.yaml,/api/v2/error-tracking/issues/{issue_id}/assignee,UpdateIssueAssignee,update_issue_assignee,put,IssueResponse,Error Tracking,error tracking,issues,update_issue_assignee,exec,,Update the assignee of an issue -service_management.yaml,/api/v2/error-tracking/issues/{issue_id}/state,UpdateIssueState,update_issue_state,put,IssueResponse,Error Tracking,error tracking,issues,update_issue_state,exec,,Update the state of an issue -service_management.yaml,/api/v2/on-call/pages/{page_id}/acknowledge,AcknowledgeOnCallPage,acknowledge_on_call_page,post,,On-Call Paging,on_call paging,on_call_page,acknowledge_on_call_page,exec,,Acknowledge On-Call Page -service_management.yaml,/api/v2/on-call/pages/{page_id}/escalate,EscalateOnCallPage,escalate_on_call_page,post,,On-Call Paging,on_call paging,on_call_page,escalate_on_call_page,exec,,Escalate On-Call Page -service_management.yaml,/api/v2/on-call/pages/{page_id}/resolve,ResolveOnCallPage,resolve_on_call_page,post,,On-Call Paging,on_call paging,on_call_page,resolve_on_call_page,exec,,Resolve On-Call Page -service_management.yaml,/api/v2/slo/report/{report_id}/download,GetSLOReport,get_sloreport,get,,Service Level Objectives,service level objectives,slo_report_job,get_sloreport,exec,,Get SLO report -software_delivery.yaml,/api/v2/ci/pipelines/analytics/aggregate,AggregateCIAppPipelineEvents,aggregate_ciapp_pipeline_events,post,CIAppPipelinesAnalyticsAggregateResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,aggregate_ciapp_pipeline_events,exec,,Aggregate pipelines events -software_delivery.yaml,/api/v2/ci/pipelines/events/search,SearchCIAppPipelineEvents,search_ciapp_pipeline_events,post,CIAppPipelineEventsResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,search_ciapp_pipeline_events,exec,,Search pipelines events -software_delivery.yaml,/api/v2/ci/tests/analytics/aggregate,AggregateCIAppTestEvents,aggregate_ciapp_test_events,post,CIAppTestsAnalyticsAggregateResponse,CI Visibility Tests,ci visibility tests,ci_app_test_events,aggregate_ciapp_test_events,exec,,Aggregate tests events -software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel,CancelWorkflowInstance,cancel_workflow_instance,put,WorklflowCancelInstanceResponse,Workflow Automation,workflow automation,workflow_instances,cancel_workflow_instance,exec,,Cancel a workflow instance -actions.yaml,/api/v2/actions/connections,CreateActionConnection,create_action_connection,post,CreateActionConnectionResponse,Action Connection,action connection,connections,create_action_connection,insert,,Create a new Action Connection -actions.yaml,/api/v2/actions-datastores/{datastore_id}/items/bulk,BulkWriteDatastoreItems,bulk_write_datastore_items,post,PutAppsDatastoreItemResponseArray,Actions Datastores,actions datastores,datastore_items,bulk_write_datastore_items,insert,,Bulk write datastore items -actions.yaml,/api/v2/actions-datastores,CreateDatastore,create_datastore,post,CreateAppsDatastoreResponse,Actions Datastores,actions datastores,datastores,create_datastore,insert,,Create datastore -apm.yaml,/api/v2/apm/config/retention-filters,CreateApmRetentionFilter,create_apm_retention_filter,post,RetentionFilterCreateResponse,APM Retention Filters,apm retention filters,retention_filters,create_apm_retention_filter,insert,,Create a retention filter -apm.yaml,/api/v2/scorecard/outcomes/batch,CreateScorecardOutcomesBatch,create_scorecard_outcomes_batch,post,OutcomesBatchResponse,Service Scorecards,service scorecards,scorecard_outcomes,create_scorecard_outcomes_batch,insert,,Create outcomes batch -apm.yaml,/api/v2/scorecard/rules,CreateScorecardRule,create_scorecard_rule,post,CreateRuleResponse,Service Scorecards,service scorecards,scorecard_rules,create_scorecard_rule,insert,,Create a new rule -apm.yaml,/api/v2/apm/config/metrics,CreateSpansMetric,create_spans_metric,post,SpansMetricResponse,Spans Metrics,spans metrics,spans_metrics,create_spans_metric,insert,,Create a span-based metric -catalog.yaml,/api/v2/apicatalog/openapi,CreateOpenAPI,create_open_api,post,CreateOpenAPIResponse,API Management,api management,apis,create_open_api,insert,,Create a new API -catalog.yaml,/api/v2/catalog/entity,UpsertCatalogEntity,upsert_catalog_entity,post,UpsertCatalogEntityResponse,Software Catalog,software catalog,catalog_entities,upsert_catalog_entity,insert,,Create or update entities -catalog.yaml,/api/v2/catalog/kind,UpsertCatalogKind,upsert_catalog_kind,post,UpsertCatalogKindResponse,Software Catalog,software catalog,catalog_kinds,upsert_catalog_kind,insert,,Create or update kinds -cloud_costs.yaml,/api/v2/cost/aws_cur_config,CreateCostAWSCURConfig,create_cost_awscurconfig,post,AwsCURConfigResponse,Cloud Cost Management,cloud cost management,aws_configs,create_cost_awscurconfig,insert,,Create Cloud Cost Management AWS CUR config -cloud_costs.yaml,/api/v2/cost/azure_uc_config,CreateCostAzureUCConfigs,create_cost_azure_ucconfigs,post,AzureUCConfigPairsResponse,Cloud Cost Management,cloud cost management,azure_configs,create_cost_azure_ucconfigs,insert,,Create Cloud Cost Management Azure configs -cloud_costs.yaml,/api/v2/cost/gcp_uc_config,CreateCostGCPUsageCostConfig,create_cost_gcpusage_cost_config,post,GCPUsageCostConfigResponse,Cloud Cost Management,cloud cost management,gcp_configs,create_cost_gcpusage_cost_config,insert,,Create Cloud Cost Management GCP Usage Cost config -dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,CreateDashboardListItems,create_dashboard_list_items,post,DashboardListAddItemsResponse,Dashboard Lists,dashboard lists,dashboard_list_items,create_dashboard_list_items,insert,,Add Items to a Dashboard List -dashboards.yaml,/api/v2/powerpacks,CreatePowerpack,create_powerpack,post,PowerpackResponse,Powerpack,powerpack,powerpacks,create_powerpack,insert,,Create a new powerpack -digital_experience.yaml,/api/v2/rum/applications,CreateRUMApplication,create_rumapplication,post,RUMApplicationResponse,RUM,rum,rum_applications,create_rumapplication,insert,,Create a new RUM application -digital_experience.yaml,/api/v2/rum/config/metrics,CreateRumMetric,create_rum_metric,post,RumMetricResponse,Rum Metrics,rum metrics,rum_metrics,create_rum_metric,insert,,Create a rum-based metric -digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters,CreateRetentionFilter,create_retention_filter,post,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,create_retention_filter,insert,,Create a RUM retention filter -infrastructure.yaml,/api/v2/app-builder/apps,CreateApp,create_app,post,CreateAppResponse,App Builder,app builder,apps,create_app,insert,,Create App -integrations.yaml,/api/v2/integration/aws/accounts,CreateAWSAccount,create_awsaccount,post,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,create_awsaccount,insert,,Create an AWS integration -integrations.yaml,/api/v2/integrations/cloudflare/accounts,CreateCloudflareAccount,create_cloudflare_account,post,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,create_cloudflare_account,insert,,Add Cloudflare account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts,CreateConfluentAccount,create_confluent_account,post,ConfluentAccountResponse,Confluent Cloud,confluent cloud,confluent_accounts,create_confluent_account,insert,,Add Confluent account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources,CreateConfluentResource,create_confluent_resource,post,ConfluentResourceResponse,Confluent Cloud,confluent cloud,confluent_resources,create_confluent_resource,insert,,Add resource to Confluent account -integrations.yaml,/api/v2/integrations/fastly/accounts,CreateFastlyAccount,create_fastly_account,post,FastlyAccountResponse,Fastly Integration,fastly integration,fastly_accounts,create_fastly_account,insert,,Add Fastly account -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services,CreateFastlyService,create_fastly_service,post,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,create_fastly_service,insert,,Add Fastly service -integrations.yaml,/api/v2/integration/gcp/accounts,CreateGCPSTSAccount,create_gcpstsaccount,post,GCPSTSServiceAccountResponse,GCP Integration,gcp integration,gcp_accounts,create_gcpstsaccount,insert,,Create a new entry for your service account -integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles,CreateTenantBasedHandle,create_tenant_based_handle,post,MicrosoftTeamsTenantBasedHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,create_tenant_based_handle,insert,,Create tenant-based handle -integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles,CreateWorkflowsWebhookHandle,create_workflows_webhook_handle,post,MicrosoftTeamsWorkflowsWebhookHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,create_workflows_webhook_handle,insert,,Create Workflows webhook handle -integrations.yaml,/api/v2/integrations/okta/accounts,CreateOktaAccount,create_okta_account,post,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,create_okta_account,insert,,Add Okta account -integrations.yaml,/api/v2/integration/opsgenie/services,CreateOpsgenieService,create_opsgenie_service,post,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,create_opsgenie_service,insert,,Create a new service object -logs.yaml,/api/v2/logs/config/archives/{archive_id}/readers,AddReadRoleToArchive,add_read_role_to_archive,post,,Logs Archives,logs archives,archive_read_roles,add_read_role_to_archive,insert,,Grant role to an archive -logs.yaml,/api/v2/logs/config/archives,CreateLogsArchive,create_logs_archive,post,LogsArchive,Logs Archives,logs archives,archives,create_logs_archive,insert,,Create an archive -logs.yaml,/api/v2/logs/config/custom-destinations,CreateLogsCustomDestination,create_logs_custom_destination,post,CustomDestinationResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,create_logs_custom_destination,insert,,Create a custom destination -logs.yaml,/api/v2/logs/events/search,ListLogs,list_logs,post,LogsListResponse,Logs,logs,logs,list_logs,insert,,Search logs (POST) -logs.yaml,/api/v2/logs,SubmitLog,submit_log,post,,Logs,logs,logs,submit_log,insert,,Send logs -logs.yaml,/api/v2/logs/config/metrics,CreateLogsMetric,create_logs_metric,post,LogsMetricResponse,Logs Metrics,logs metrics,metrics,create_logs_metric,insert,,Create a log-based metric -metrics.yaml,/api/v2/datasets,CreateDataset,create_dataset,post,DatasetResponseSingle,Datasets,datasets,datasets,create_dataset,insert,,Create a dataset -metrics.yaml,/api/v2/series,SubmitMetrics,submit_metrics,post,IntakePayloadAccepted,Metrics,metrics,metrics,submit_metrics,insert,,Submit metrics -metrics.yaml,/api/v2/spans/events/search,ListSpans,list_spans,post,SpansListResponse,Spans,spans,spans,list_spans,insert,,Search spans -metrics.yaml,/api/v2/metrics/config/bulk-tags,CreateBulkTagsMetricsConfiguration,create_bulk_tags_metrics_configuration,post,MetricBulkTagConfigResponse,Metrics,metrics,tag_configurations,create_bulk_tags_metrics_configuration,insert,,Configure tags for multiple metrics -metrics.yaml,/api/v2/metrics/{metric_name}/tags,CreateTagConfiguration,create_tag_configuration,post,MetricTagConfigurationResponse,Metrics,metrics,tag_configurations,create_tag_configuration,insert,,Create a tag configuration -monitoring.yaml,/api/v2/monitor/policy,CreateMonitorConfigPolicy,create_monitor_config_policy,post,MonitorConfigPolicyResponse,Monitors,monitors,config_policies,create_monitor_config_policy,insert,,Create a monitor configuration policy -monitoring.yaml,/api/v2/monitor/notification_rule,CreateMonitorNotificationRule,create_monitor_notification_rule,post,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,create_monitor_notification_rule,insert,,Create a monitor notification rule -monitoring.yaml,/api/v2/synthetics/settings/on_demand_concurrency_cap,SetOnDemandConcurrencyCap,set_on_demand_concurrency_cap,post,OnDemandConcurrencyCapResponse,Synthetics,synthetics,on_demand_concurrency_cap,set_on_demand_concurrency_cap,insert,,Save new value for on-demand concurrency cap -monitoring.yaml,/api/v2/monitor/template,CreateMonitorUserTemplate,create_monitor_user_template,post,MonitorUserTemplateCreateResponse,Monitors,monitors,user_templates,create_monitor_user_template,insert,,Create a monitor user template -organization.yaml,/api/v2/api_keys,CreateAPIKey,create_apikey,post,APIKeyResponse,Key Management,key management,api_keys,create_apikey,insert,,Create an API key -organization.yaml,/api/v2/authn_mappings,CreateAuthNMapping,create_auth_nmapping,post,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,create_auth_nmapping,insert,,Create an AuthN Mapping -organization.yaml,/api/v2/org_connections,CreateOrgConnections,create_org_connections,post,OrgConnectionResponse,Org Connections,org connections,connections,create_org_connections,insert,,Create Org Connection -organization.yaml,/api/v2/current_user/application_keys,CreateCurrentUserApplicationKey,create_current_user_application_key,post,ApplicationKeyResponse,Key Management,key management,current_user_application_keys,create_current_user_application_key,insert,,Create an application key for current user -organization.yaml,/api/v2/deletion/data/{product},CreateDataDeletionRequest,create_data_deletion_request,post,CreateDataDeletionResponseBody,Data Deletion,data deletion,data_deletion_requests,create_data_deletion_request,insert,,Creates a data deletion request -organization.yaml,/api/v2/roles/{role_id}/permissions,AddPermissionToRole,add_permission_to_role,post,PermissionsResponse,Roles,roles,role_permissions,add_permission_to_role,insert,,Grant permission to a role -organization.yaml,/api/v2/roles/{role_id}/users,AddUserToRole,add_user_to_role,post,UsersResponse,Roles,roles,role_users,add_user_to_role,insert,,Add a user to a role -organization.yaml,/api/v2/roles,CreateRole,create_role,post,RoleCreateResponse,Roles,roles,roles,create_role,insert,,Create role -organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys,CreateServiceAccountApplicationKey,create_service_account_application_key,post,ApplicationKeyResponse,Service Accounts,service accounts,service_account_keys,create_service_account_application_key,insert,,Create an application key for this service account -organization.yaml,/api/v2/service_accounts,CreateServiceAccount,create_service_account,post,UserResponse,Service Accounts,service accounts,service_accounts,create_service_account,insert,,Create a service account -organization.yaml,/api/v2/team/{team_id}/links,CreateTeamLink,create_team_link,post,TeamLinkResponse,Teams,teams,team_links,create_team_link,insert,,Create a team link -organization.yaml,/api/v2/team/{super_team_id}/member_teams,AddMemberTeam,add_member_team,post,,Teams,teams,team_members,add_member_team,insert,,Add a member team -organization.yaml,/api/v2/team/{team_id}/memberships,CreateTeamMembership,create_team_membership,post,UserTeamResponse,Teams,teams,team_memberships,create_team_membership,insert,,Add a user to a team -organization.yaml,/api/v2/team,CreateTeam,create_team,post,TeamResponse,Teams,teams,teams,create_team,insert,,Create a team -organization.yaml,/api/v2/users,CreateUser,create_user,post,UserResponse,Users,users,users,create_user,insert,,Create a user -remote_config.yaml,/api/v2/remote_config/products/cws/policy,CreateCSMThreatsAgentPolicy,create_csmthreats_agent_policy,post,CloudWorkloadSecurityAgentPolicyResponse,CSM Threats,csm threats,csm_threats_agent_policies,create_csmthreats_agent_policy,insert,,Create a Workload Protection policy -remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules,CreateCSMThreatsAgentRule,create_csmthreats_agent_rule,post,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,csm_threats_agent_rules,create_csmthreats_agent_rule,insert,,Create a Workload Protection agent rule -remote_config.yaml,/api/v2/remote_config/products/obs_pipelines/pipelines,CreatePipeline,create_pipeline,post,ObservabilityPipeline,Observability Pipelines,observability pipelines,observability_pipelines,create_pipeline,insert,,Create a new pipeline -remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules,CreateApplicationSecurityWafCustomRule,create_application_security_waf_custom_rule,post,ApplicationSecurityWafCustomRuleResponse,Application Security,application security,waf_custom_rules,create_application_security_waf_custom_rule,insert,,Create a WAF custom rule -remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters,CreateApplicationSecurityWafExclusionFilter,create_application_security_waf_exclusion_filter,post,ApplicationSecurityWafExclusionFilterResponse,Application Security,application security,waf_exclusion_filters,create_application_security_waf_exclusion_filter,insert,,Create a WAF exclusion filter -security.yaml,/api/v2/agentless_scanning/ondemand/aws,CreateAwsOnDemandTask,create_aws_on_demand_task,post,AwsOnDemandResponse,Agentless Scanning,agentless scanning,aws_on_demand_tasks,create_aws_on_demand_task,insert,,Post an AWS on demand task -security.yaml,/api/v2/agentless_scanning/accounts/aws,CreateAwsScanOptions,create_aws_scan_options,post,AwsScanOptionsResponse,Agentless Scanning,agentless scanning,aws_scan_options,create_aws_scan_options,insert,,Post AWS Scan Options -security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules,CreateCloudWorkloadSecurityAgentRule,create_cloud_workload_security_agent_rule,post,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,create_cloud_workload_security_agent_rule,insert,,Create a Workload Protection agent rule (US1-FED) -security.yaml,/api/v2/cloud_security_management/custom_frameworks,CreateCustomFramework,create_custom_framework,post,CreateCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,create_custom_framework,insert,,Create a custom framework -security.yaml,/api/v2/security_monitoring/configuration/security_filters,CreateSecurityFilter,create_security_filter,post,SecurityFilterResponse,Security Monitoring,security monitoring,filters,create_security_filter,insert,,Create a security filter -security.yaml,/api/v2/siem-historical-detections/jobs,RunHistoricalJob,run_historical_job,post,JobCreateResponse,Security Monitoring,security monitoring,historical_jobs,run_historical_job,insert,,Run a historical job -security.yaml,/api/v2/security_monitoring/rules,CreateSecurityMonitoringRule,create_security_monitoring_rule,post,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,create_security_monitoring_rule,insert,,Create a detection rule -security.yaml,/api/v2/security_monitoring/configuration/suppressions,CreateSecurityMonitoringSuppression,create_security_monitoring_suppression,post,SecurityMonitoringSuppressionResponse,Security Monitoring,security monitoring,monitoring_suppressions,create_security_monitoring_suppression,insert,,Create a suppression rule -security.yaml,/api/v2/sensitive-data-scanner/config/groups,CreateScanningGroup,create_scanning_group,post,SensitiveDataScannerCreateGroupResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,create_scanning_group,insert,,Create Scanning Group -security.yaml,/api/v2/sensitive-data-scanner/config/rules,CreateScanningRule,create_scanning_rule,post,SensitiveDataScannerCreateRuleResponse,Sensitive Data Scanner,sensitive data scanner,scanning_rules,create_scanning_rule,insert,,Create Scanning Rule -security.yaml,/api/v2/security/signals/notification_rules,CreateSignalNotificationRule,create_signal_notification_rule,post,NotificationRuleResponse,Security Monitoring,security monitoring,signal_notification_rules,create_signal_notification_rule,insert,,Create a new signal-based notification rule -security.yaml,/api/v2/security_monitoring/configuration/suppressions/rules,GetSuppressionsAffectingFutureRule,get_suppressions_affecting_future_rule,post,SecurityMonitoringSuppressionsResponse,Security Monitoring,security monitoring,suppressions_affecting_future_rule,get_suppressions_affecting_future_rule,insert,,Get suppressions affecting future rule -security.yaml,/api/v2/security/vulnerabilities/notification_rules,CreateVulnerabilityNotificationRule,create_vulnerability_notification_rule,post,NotificationRuleResponse,Security Monitoring,security monitoring,vulnerability_notification_rules,create_vulnerability_notification_rule,insert,,Create a new vulnerability-based notification rule -service_management.yaml,/api/v2/cases,CreateCase,create_case,post,CaseResponse,Case Management,case management,cases,create_case,insert,,Create a case -service_management.yaml,/api/v2/downtime,CreateDowntime,create_downtime,post,DowntimeResponse,Downtimes,downtimes,downtimes,create_downtime,insert,,Schedule a downtime -service_management.yaml,/api/v2/events,CreateEvent,create_event,post,EventCreateResponsePayload,Events,events,events,create_event,insert,,Post an event -service_management.yaml,/api/v2/events/search,SearchEvents,search_events,post,EventsListResponse,Events,events,events,search_events,insert,,Search events -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations,CreateIncidentIntegration,create_incident_integration,post,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,create_incident_integration,insert,,Create an incident integration metadata -service_management.yaml,/api/v2/incidents/config/notification-rules,CreateIncidentNotificationRule,create_incident_notification_rule,post,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,create_incident_notification_rule,insert,,Create an incident notification rule -service_management.yaml,/api/v2/incidents/config/notification-templates,CreateIncidentNotificationTemplate,create_incident_notification_template,post,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,create_incident_notification_template,insert,,Create incident notification template -service_management.yaml,/api/v2/services,CreateIncidentService,create_incident_service,post,IncidentServiceResponse,Incident Services,incident services,incident_services,create_incident_service,insert,,Create a new incident service -service_management.yaml,/api/v2/teams,CreateIncidentTeam,create_incident_team,post,IncidentTeamResponse,Incident Teams,incident teams,incident_teams,create_incident_team,insert,,Create a new incident team -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos,CreateIncidentTodo,create_incident_todo,post,IncidentTodoResponse,Incidents,incidents,incident_todos,create_incident_todo,insert,,Create an incident todo -service_management.yaml,/api/v2/incidents/config/types,CreateIncidentType,create_incident_type,post,IncidentTypeResponse,Incidents,incidents,incident_types,create_incident_type,insert,,Create an incident type -service_management.yaml,/api/v2/incidents,CreateIncident,create_incident,post,IncidentResponse,Incidents,incidents,incidents,create_incident,insert,,Create an incident -service_management.yaml,/api/v2/error-tracking/issues/search,SearchIssues,search_issues,post,IssuesSearchResponse,Error Tracking,error tracking,issues,search_issues,insert,,Search error tracking issues -service_management.yaml,/api/v2/on-call/escalation-policies,CreateOnCallEscalationPolicy,create_on_call_escalation_policy,post,EscalationPolicy,On-Call,on_call,on_call_escalation_policies,create_on_call_escalation_policy,insert,,Create On-Call escalation policy -service_management.yaml,/api/v2/on-call/pages,CreateOnCallPage,create_on_call_page,post,CreatePageResponse,On-Call Paging,on_call paging,on_call_page,create_on_call_page,insert,,Create On-Call Page -service_management.yaml,/api/v2/on-call/schedules,CreateOnCallSchedule,create_on_call_schedule,post,Schedule,On-Call,on_call,on_call_schedule,create_on_call_schedule,insert,,Create On-Call schedule -service_management.yaml,/api/v2/cases/projects,CreateProject,create_project,post,ProjectResponse,Case Management,case management,projects,create_project,insert,,Create a project -service_management.yaml,/api/v2/services/definitions,CreateOrUpdateServiceDefinitions,create_or_update_service_definitions,post,ServiceDefinitionCreateResponse,Service Definition,service definition,service_definitions,create_or_update_service_definitions,insert,,Create or update service definition -service_management.yaml,/api/v2/slo/report,CreateSLOReportJob,create_sloreport_job,post,SLOReportPostResponse,Service Level Objectives,service level objectives,slo_report_job,create_sloreport_job,insert,,Create a new SLO report -software_delivery.yaml,/api/v2/ci/pipeline,CreateCIAppPipelineEvent,create_ciapp_pipeline_event,post,,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,create_ciapp_pipeline_event,insert,,Send pipeline event -software_delivery.yaml,/api/v2/ci/tests/events/search,SearchCIAppTestEvents,search_ciapp_test_events,post,CIAppTestEventsResponse,CI Visibility Tests,ci visibility tests,ci_app_test_events,search_ciapp_test_events,insert,,Search tests events -software_delivery.yaml,/api/v2/dora/deployment,CreateDORADeployment,create_doradeployment,post,DORADeploymentResponse,DORA Metrics,dora metrics,dora_deployments,create_doradeployment,insert,,Send a deployment event for DORA Metrics -software_delivery.yaml,/api/v2/dora/failure,CreateDORAFailure,create_dorafailure,post,DORAFailureResponse,DORA Metrics,dora metrics,dora_failures,create_dorafailure,insert,,Send a failure event for DORA Metrics -software_delivery.yaml,/api/v2/dora/incident,CreateDORAIncident,create_doraincident,post,DORAFailureResponse,DORA Metrics,dora metrics,dora_incidents,create_doraincident,insert,,Send an incident event for DORA Metrics -software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances,CreateWorkflowInstance,create_workflow_instance,post,WorkflowInstanceCreateResponse,Workflow Automation,workflow automation,workflow_instances,create_workflow_instance,insert,,Execute a workflow -software_delivery.yaml,/api/v2/workflows,CreateWorkflow,create_workflow,post,CreateWorkflowResponse,Workflow Automation,workflow automation,workflows,create_workflow,insert,,Create a Workflow -apm.yaml,/api/v2/apm/config/retention-filters/{filter_id},UpdateApmRetentionFilter,update_apm_retention_filter,put,RetentionFilterResponse,APM Retention Filters,apm retention filters,retention_filters,update_apm_retention_filter,replace,,Update a retention filter -apm.yaml,/api/v2/scorecard/rules/{rule_id},UpdateScorecardRule,update_scorecard_rule,put,UpdateRuleResponse,Service Scorecards,service scorecards,scorecard_rules,update_scorecard_rule,replace,,Update an existing rule -catalog.yaml,/api/v2/apicatalog/api/{id}/openapi,UpdateOpenAPI,update_open_api,put,UpdateOpenAPIResponse,API Management,api management,apis,update_open_api,replace,,Update an API -cloud_costs.yaml,/api/v2/cost/budget,UpsertBudget,upsert_budget,put,BudgetWithEntries,Cloud Cost Management,cloud cost management,budgets,upsert_budget,replace,,Create or update a budget -dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,UpdateDashboardListItems,update_dashboard_list_items,put,DashboardListUpdateItemsResponse,Dashboard Lists,dashboard lists,dashboard_list_items,update_dashboard_list_items,replace,,Update items of a dashboard list -logs.yaml,/api/v2/logs/config/archive-order,UpdateLogsArchiveOrder,update_logs_archive_order,put,LogsArchiveOrder,Logs Archives,logs archives,archive_order,update_logs_archive_order,replace,,Update archive order -logs.yaml,/api/v2/logs/config/archives/{archive_id},UpdateLogsArchive,update_logs_archive,put,LogsArchive,Logs Archives,logs archives,archives,update_logs_archive,replace,,Update an archive -metrics.yaml,/api/v2/datasets/{dataset_id},UpdateDataset,update_dataset,put,DatasetResponseSingle,Datasets,datasets,datasets,update_dataset,replace,,Edit a dataset -monitoring.yaml,/api/v2/monitor/template/{template_id},UpdateMonitorUserTemplate,update_monitor_user_template,put,MonitorUserTemplateResponse,Monitors,monitors,user_templates,update_monitor_user_template,replace,,Update a monitor user template to a new version -organization.yaml,/api/v2/restriction_policy/{resource_id},UpdateRestrictionPolicy,update_restriction_policy,post,RestrictionPolicyResponse,Restriction Policies,restriction policies,restriction_policies,update_restriction_policy,replace,,Update a restriction policy -organization.yaml,/api/v2/team/{team_id}/permission-settings/{action},UpdateTeamPermissionSetting,update_team_permission_setting,put,TeamPermissionSettingResponse,Teams,teams,team_permission_settings,update_team_permission_setting,replace,,Update permission setting for team -remote_config.yaml,/api/v2/remote_config/products/obs_pipelines/pipelines/{pipeline_id},UpdatePipeline,update_pipeline,put,ObservabilityPipeline,Observability Pipelines,observability pipelines,observability_pipelines,update_pipeline,replace,,Update a pipeline -remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},UpdateApplicationSecurityWafCustomRule,update_application_security_waf_custom_rule,put,ApplicationSecurityWafCustomRuleResponse,Application Security,application security,waf_custom_rules,update_application_security_waf_custom_rule,replace,,Update a WAF Custom Rule -remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},UpdateApplicationSecurityWafExclusionFilter,update_application_security_waf_exclusion_filter,put,ApplicationSecurityWafExclusionFilterResponse,Application Security,application security,waf_exclusion_filters,update_application_security_waf_exclusion_filter,replace,,Update a WAF exclusion filter -security.yaml,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},UpdateCustomFramework,update_custom_framework,put,UpdateCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,update_custom_framework,replace,,Update a custom framework -security.yaml,/api/v2/security_monitoring/rules/{rule_id},UpdateSecurityMonitoringRule,update_security_monitoring_rule,put,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,update_security_monitoring_rule,replace,,Update an existing rule -security.yaml,/api/v2/cloud_security_management/resource_filters,UpdateResourceEvaluationFilters,update_resource_evaluation_filters,put,UpdateResourceEvaluationFiltersResponse,Security Monitoring,security monitoring,resource_evaluation_filters,update_resource_evaluation_filters,replace,,Update resource filters -service_management.yaml,/api/v2/incidents/config/notification-rules/{id},UpdateIncidentNotificationRule,update_incident_notification_rule,put,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,update_incident_notification_rule,replace,,Update an incident notification rule -service_management.yaml,/api/v2/on-call/escalation-policies/{policy_id},UpdateOnCallEscalationPolicy,update_on_call_escalation_policy,put,EscalationPolicy,On-Call,on_call,on_call_escalation_policies,update_on_call_escalation_policy,replace,,Update On-Call escalation policy -service_management.yaml,/api/v2/on-call/schedules/{schedule_id},UpdateOnCallSchedule,update_on_call_schedule,put,Schedule,On-Call,on_call,on_call_schedule,update_on_call_schedule,replace,,Update On-Call schedule -service_management.yaml,/api/v2/on-call/teams/{team_id}/routing-rules,SetOnCallTeamRoutingRules,set_on_call_team_routing_rules,put,TeamRoutingRules,On-Call,on_call,on_call_team_routing_rules,set_on_call_team_routing_rules,replace,,Set On-Call team routing rules -actions.yaml,/api/v2/actions/app_key_registrations/{app_key_id},GetAppKeyRegistration,get_app_key_registration,get,GetAppKeyRegistrationResponse,Action Connection,action connection,app_key_registrations,get_app_key_registration,select,$.data,Get an existing App Key Registration -actions.yaml,/api/v2/actions/app_key_registrations,ListAppKeyRegistrations,list_app_key_registrations,get,ListAppKeyRegistrationsResponse,Action Connection,action connection,app_key_registrations,list_app_key_registrations,select,$.data,List App Key Registrations -actions.yaml,/api/v2/actions/connections/{connection_id},GetActionConnection,get_action_connection,get,GetActionConnectionResponse,Action Connection,action connection,connections,get_action_connection,select,$.data,Get an existing Action Connection -actions.yaml,/api/v2/actions-datastores/{datastore_id}/items,ListDatastoreItems,list_datastore_items,get,ItemApiPayloadArray,Actions Datastores,actions datastores,datastore_items,list_datastore_items,select,$.data,List datastore items -actions.yaml,/api/v2/actions-datastores/{datastore_id},GetDatastore,get_datastore,get,Datastore,Actions Datastores,actions datastores,datastores,get_datastore,select,$.data,Get datastore -actions.yaml,/api/v2/actions-datastores,ListDatastores,list_datastores,get,DatastoreArray,Actions Datastores,actions datastores,datastores,list_datastores,select,$.data,List datastores -apm.yaml,/api/v2/apm/config/retention-filters/{filter_id},GetApmRetentionFilter,get_apm_retention_filter,get,RetentionFilterResponse,APM Retention Filters,apm retention filters,retention_filters,get_apm_retention_filter,select,$.data,Get a given APM retention filter -apm.yaml,/api/v2/apm/config/retention-filters,ListApmRetentionFilters,list_apm_retention_filters,get,RetentionFiltersResponse,APM Retention Filters,apm retention filters,retention_filters,list_apm_retention_filters,select,$.data,List all APM retention filters -apm.yaml,/api/v2/scorecard/outcomes,ListScorecardOutcomes,list_scorecard_outcomes,get,OutcomesResponse,Service Scorecards,service scorecards,scorecard_outcomes,list_scorecard_outcomes,select,$.data,List all rule outcomes -apm.yaml,/api/v2/scorecard/rules,ListScorecardRules,list_scorecard_rules,get,ListRulesResponse,Service Scorecards,service scorecards,scorecard_rules,list_scorecard_rules,select,$.data,List all rules -apm.yaml,/api/v2/apm/config/metrics/{metric_id},GetSpansMetric,get_spans_metric,get,SpansMetricResponse,Spans Metrics,spans metrics,spans_metrics,get_spans_metric,select,$.data,Get a span-based metric -apm.yaml,/api/v2/apm/config/metrics,ListSpansMetrics,list_spans_metrics,get,SpansMetricsResponse,Spans Metrics,spans metrics,spans_metrics,list_spans_metrics,select,$.data,Get all span-based metrics -catalog.yaml,/api/v2/apicatalog/api,ListAPIs,list_apis,get,ListAPIsResponse,API Management,api management,apis,list_apis,select,$.data,List APIs -catalog.yaml,/api/v2/catalog/entity,ListCatalogEntity,list_catalog_entity,get,ListEntityCatalogResponse,Software Catalog,software catalog,catalog_entities,list_catalog_entity,select,$.data,Get a list of entities -catalog.yaml,/api/v2/catalog/kind,ListCatalogKind,list_catalog_kind,get,ListKindCatalogResponse,Software Catalog,software catalog,catalog_kinds,list_catalog_kind,select,$.data,Get a list of entity kinds -catalog.yaml,/api/v2/catalog/relation,ListCatalogRelation,list_catalog_relation,get,ListRelationCatalogResponse,Software Catalog,software catalog,catalog_relations,list_catalog_relation,select,$.data,Get a list of entity relations -cloud_costs.yaml,/api/v2/cost_by_tag/active_billing_dimensions,GetActiveBillingDimensions,get_active_billing_dimensions,get,,Usage Metering,usage metering,active_billing_dimensions,get_active_billing_dimensions,select,$.data,Get active billing dimensions for cost attribution -cloud_costs.yaml,/api/v2/cost/aws_cur_config,ListCostAWSCURConfigs,list_cost_awscurconfigs,get,AwsCURConfigsResponse,Cloud Cost Management,cloud cost management,aws_configs,list_cost_awscurconfigs,select,$.data,List Cloud Cost Management AWS CUR configs -cloud_costs.yaml,/api/v2/cost/azure_uc_config,ListCostAzureUCConfigs,list_cost_azure_ucconfigs,get,AzureUCConfigsResponse,Cloud Cost Management,cloud cost management,azure_configs,list_cost_azure_ucconfigs,select,$.data,List Cloud Cost Management Azure configs -cloud_costs.yaml,/api/v2/cost/budget/{budget_id},GetBudget,get_budget,get,BudgetWithEntries,Cloud Cost Management,cloud cost management,budgets,get_budget,select,$.data,Get a budget -cloud_costs.yaml,/api/v2/cost/budgets,ListBudgets,list_budgets,get,BudgetArray,Cloud Cost Management,cloud cost management,budgets,list_budgets,select,$.data,List budgets -cloud_costs.yaml,/api/v2/cost/custom_costs/{file_id},GetCustomCostsFile,get_custom_costs_file,get,CustomCostsFileGetResponse,Cloud Cost Management,cloud cost management,costs_files,get_custom_costs_file,select,$.data,Get Custom Costs file -cloud_costs.yaml,/api/v2/cost/custom_costs,ListCustomCostsFiles,list_custom_costs_files,get,CustomCostsFileListResponse,Cloud Cost Management,cloud cost management,costs_files,list_custom_costs_files,select,$.data,List Custom Costs files -cloud_costs.yaml,/api/v2/cost/gcp_uc_config,ListCostGCPUsageCostConfigs,list_cost_gcpusage_cost_configs,get,GCPUsageCostConfigsResponse,Cloud Cost Management,cloud cost management,gcp_configs,list_cost_gcpusage_cost_configs,select,$.data,List Cloud Cost Management GCP Usage Cost configs -cloud_costs.yaml,/api/v2/cost_by_tag/monthly_cost_attribution,GetMonthlyCostAttribution,get_monthly_cost_attribution,get,,Usage Metering,usage metering,monthly_cost_attribution,get_monthly_cost_attribution,select,$.data,Get Monthly Cost Attribution -dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,GetDashboardListItems,get_dashboard_list_items,get,DashboardListItems,Dashboard Lists,dashboard lists,dashboard_list_items,get_dashboard_list_items,select,$.dashboards,Get items of a Dashboard List -dashboards.yaml,/api/v2/powerpacks/{powerpack_id},GetPowerpack,get_powerpack,get,PowerpackResponse,Powerpack,powerpack,powerpacks,get_powerpack,select,$.data,Get a Powerpack -dashboards.yaml,/api/v2/powerpacks,ListPowerpacks,list_powerpacks,get,ListPowerpacksResponse,Powerpack,powerpack,powerpacks,list_powerpacks,select,$.data,Get all powerpacks -digital_experience.yaml,/api/v2/rum/applications/{id},GetRUMApplication,get_rumapplication,get,RUMApplicationResponse,RUM,rum,rum_applications,get_rumapplication,select,$.data,Get a RUM application -digital_experience.yaml,/api/v2/rum/applications,GetRUMApplications,get_rumapplications,get,RUMApplicationsResponse,RUM,rum,rum_applications,get_rumapplications,select,$.data,List all the RUM applications -digital_experience.yaml,/api/v2/rum/events,ListRUMEvents,list_rumevents,get,RUMEventsResponse,RUM,rum,rum_events,list_rumevents,select,$.data,Get a list of RUM events -digital_experience.yaml,/api/v2/rum/config/metrics/{metric_id},GetRumMetric,get_rum_metric,get,RumMetricResponse,Rum Metrics,rum metrics,rum_metrics,get_rum_metric,select,$.data,Get a rum-based metric -digital_experience.yaml,/api/v2/rum/config/metrics,ListRumMetrics,list_rum_metrics,get,RumMetricsResponse,Rum Metrics,rum metrics,rum_metrics,list_rum_metrics,select,$.data,Get all rum-based metrics -digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},GetRetentionFilter,get_retention_filter,get,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,get_retention_filter,select,$.data,Get a RUM retention filter -digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters,ListRetentionFilters,list_retention_filters,get,RumRetentionFiltersResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,list_retention_filters,select,$.data,Get all RUM retention filters -infrastructure.yaml,/api/v2/network/connections/aggregate,GetAggregatedConnections,get_aggregated_connections,get,SingleAggregatedConnectionResponseArray,Cloud Network Monitoring,cloud network monitoring,aggregated_connections,get_aggregated_connections,select,$.data,Get all aggregated connections -infrastructure.yaml,/api/v2/network/dns/aggregate,GetAggregatedDns,get_aggregated_dns,get,SingleAggregatedDnsResponseArray,Cloud Network Monitoring,cloud network monitoring,aggregated_dns,get_aggregated_dns,select,$.data,Get all aggregated DNS traffic -infrastructure.yaml,/api/v2/app-builder/apps/{app_id},GetApp,get_app,get,GetAppResponse,App Builder,app builder,apps,get_app,select,$.data,Get App -infrastructure.yaml,/api/v2/app-builder/apps,ListApps,list_apps,get,ListAppsResponse,App Builder,app builder,apps,list_apps,select,$.data,List Apps -infrastructure.yaml,/api/v2/container_images,ListContainerImages,list_container_images,get,ContainerImagesResponse,Container Images,container images,container_images,list_container_images,select,$.data,Get all Container Images -infrastructure.yaml,/api/v2/containers,ListContainers,list_containers,get,ContainersResponse,Containers,containers,containers,list_containers,select,$.data,Get All Containers -infrastructure.yaml,/api/v2/ndm/interfaces,GetInterfaces,get_interfaces,get,GetInterfacesResponse,Network Device Monitoring,network device monitoring,device_interfaces,get_interfaces,select,$.data,Get the list of interfaces of the device -infrastructure.yaml,/api/v2/ndm/tags/devices/{device_id},ListDeviceUserTags,list_device_user_tags,get,ListTagsResponse,Network Device Monitoring,network device monitoring,device_user_tags,list_device_user_tags,select,$.data,Get the list of tags for a device -infrastructure.yaml,/api/v2/ndm/devices/{device_id},GetDevice,get_device,get,GetDeviceResponse,Network Device Monitoring,network device monitoring,devices,get_device,select,$.data,Get the device details -infrastructure.yaml,/api/v2/ndm/devices,ListDevices,list_devices,get,ListDevicesResponse,Network Device Monitoring,network device monitoring,devices,list_devices,select,$.data,Get the list of devices -infrastructure.yaml,/api/v2/processes,ListProcesses,list_processes,get,ProcessSummariesResponse,Processes,processes,processes,list_processes,select,$.data,Get all processes -infrastructure.yaml,/api/v2/spa/recommendations/{service}/{shard},GetSPARecommendations,get_sparecommendations,get,RecommendationDocument,Spa,spa,spa_recommendations,get_sparecommendations,select,$.data,Get SPA Recommendations -integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id},GetAWSAccount,get_awsaccount,get,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,get_awsaccount,select,$.data,Get an AWS integration by config ID -integrations.yaml,/api/v2/integration/aws/accounts,ListAWSAccounts,list_awsaccounts,get,AWSAccountsResponse,AWS Integration,aws integration,aws_accounts,list_awsaccounts,select,$.data,List all AWS integrations -integrations.yaml,/api/v2/integration/aws/iam_permissions,GetAWSIntegrationIAMPermissions,get_awsintegration_iampermissions,get,AWSIntegrationIamPermissionsResponse,AWS Integration,aws integration,aws_iam_permissions,get_awsintegration_iampermissions,select,$.data,Get AWS integration IAM permissions -integrations.yaml,/api/v2/integration/aws/logs/services,ListAWSLogsServices,list_awslogs_services,get,AWSLogsServicesResponse,AWS Logs Integration,aws logs integration,aws_logs_services,list_awslogs_services,select,$.data,Get list of AWS log ready services -integrations.yaml,/api/v2/integration/aws/available_namespaces,ListAWSNamespaces,list_awsnamespaces,get,AWSNamespacesResponse,AWS Integration,aws integration,aws_namespaces,list_awsnamespaces,select,$.data,List available namespaces -integrations.yaml,/api/v2/integrations/cloudflare/accounts/{account_id},GetCloudflareAccount,get_cloudflare_account,get,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,get_cloudflare_account,select,$.data,Get Cloudflare account -integrations.yaml,/api/v2/integrations/cloudflare/accounts,ListCloudflareAccounts,list_cloudflare_accounts,get,CloudflareAccountsResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,list_cloudflare_accounts,select,$.data,List Cloudflare accounts -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id},GetConfluentAccount,get_confluent_account,get,ConfluentAccountResponse,Confluent Cloud,confluent cloud,confluent_accounts,get_confluent_account,select,$.data,Get Confluent account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts,ListConfluentAccount,list_confluent_account,get,ConfluentAccountsResponse,Confluent Cloud,confluent cloud,confluent_accounts,list_confluent_account,select,$.data,List Confluent accounts -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},GetConfluentResource,get_confluent_resource,get,ConfluentResourceResponse,Confluent Cloud,confluent cloud,confluent_resources,get_confluent_resource,select,$.data,Get resource from Confluent account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources,ListConfluentResource,list_confluent_resource,get,ConfluentResourcesResponse,Confluent Cloud,confluent cloud,confluent_resources,list_confluent_resource,select,$.data,List Confluent Account resources -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id},GetFastlyAccount,get_fastly_account,get,FastlyAccountResponse,Fastly Integration,fastly integration,fastly_accounts,get_fastly_account,select,$.data,Get Fastly account -integrations.yaml,/api/v2/integrations/fastly/accounts,ListFastlyAccounts,list_fastly_accounts,get,FastlyAccountsResponse,Fastly Integration,fastly integration,fastly_accounts,list_fastly_accounts,select,$.data,List Fastly accounts -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},GetFastlyService,get_fastly_service,get,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,get_fastly_service,select,$.data,Get Fastly service -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services,ListFastlyServices,list_fastly_services,get,FastlyServicesResponse,Fastly Integration,fastly integration,fastly_services,list_fastly_services,select,$.data,List Fastly services -integrations.yaml,/api/v2/integration/gcp/accounts,ListGCPSTSAccounts,list_gcpstsaccounts,get,GCPSTSServiceAccountsResponse,GCP Integration,gcp integration,gcp_accounts,list_gcpstsaccounts,select,$.data,List all GCP STS-enabled service accounts -integrations.yaml,/api/v2/integration/gcp/sts_delegate,GetGCPSTSDelegate,get_gcpstsdelegate,get,GCPSTSDelegateAccountResponse,GCP Integration,gcp integration,gcp_sts_delegate,get_gcpstsdelegate,select,$.data,List delegate account -integrations.yaml,/api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name},GetChannelByName,get_channel_by_name,get,MicrosoftTeamsGetChannelByNameResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_channels,get_channel_by_name,select,$.data,Get channel information by name -integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},GetTenantBasedHandle,get_tenant_based_handle,get,MicrosoftTeamsTenantBasedHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,get_tenant_based_handle,select,$.data,Get tenant-based handle information -integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles,ListTenantBasedHandles,list_tenant_based_handles,get,MicrosoftTeamsTenantBasedHandlesResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,list_tenant_based_handles,select,$.data,Get all tenant-based handles -integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},GetWorkflowsWebhookHandle,get_workflows_webhook_handle,get,MicrosoftTeamsWorkflowsWebhookHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,get_workflows_webhook_handle,select,$.data,Get Workflows webhook handle information -integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles,ListWorkflowsWebhookHandles,list_workflows_webhook_handles,get,MicrosoftTeamsWorkflowsWebhookHandlesResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,list_workflows_webhook_handles,select,$.data,Get all Workflows webhook handles -integrations.yaml,/api/v2/integrations/okta/accounts/{account_id},GetOktaAccount,get_okta_account,get,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,get_okta_account,select,$.data,Get Okta account -integrations.yaml,/api/v2/integrations/okta/accounts,ListOktaAccounts,list_okta_accounts,get,OktaAccountsResponse,Okta Integration,okta integration,okta_accounts,list_okta_accounts,select,$.data,List Okta accounts -integrations.yaml,/api/v2/integration/opsgenie/services/{integration_service_id},GetOpsgenieService,get_opsgenie_service,get,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,get_opsgenie_service,select,$.data,Get a single service object -integrations.yaml,/api/v2/integration/opsgenie/services,ListOpsgenieServices,list_opsgenie_services,get,OpsgenieServicesResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,list_opsgenie_services,select,$.data,Get all service objects -logs.yaml,/api/v2/logs/config/archive-order,GetLogsArchiveOrder,get_logs_archive_order,get,LogsArchiveOrder,Logs Archives,logs archives,archive_order,get_logs_archive_order,select,$.data,Get archive order -logs.yaml,/api/v2/logs/config/archives/{archive_id}/readers,ListArchiveReadRoles,list_archive_read_roles,get,RolesResponse,Logs Archives,logs archives,archive_read_roles,list_archive_read_roles,select,$.data,List read roles for an archive -logs.yaml,/api/v2/logs/config/archives/{archive_id},GetLogsArchive,get_logs_archive,get,LogsArchive,Logs Archives,logs archives,archives,get_logs_archive,select,$.data,Get an archive -logs.yaml,/api/v2/logs/config/archives,ListLogsArchives,list_logs_archives,get,LogsArchives,Logs Archives,logs archives,archives,list_logs_archives,select,$.data,Get all archives -logs.yaml,/api/v2/logs/config/custom-destinations/{custom_destination_id},GetLogsCustomDestination,get_logs_custom_destination,get,CustomDestinationResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,get_logs_custom_destination,select,$.data,Get a custom destination -logs.yaml,/api/v2/logs/config/custom-destinations,ListLogsCustomDestinations,list_logs_custom_destinations,get,CustomDestinationsResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,list_logs_custom_destinations,select,$.data,Get all custom destinations -logs.yaml,/api/v2/logs/events,ListLogsGet,list_logs_get,get,LogsListResponse,Logs,logs,logs,list_logs_get,select,$.data,Search logs (GET) -logs.yaml,/api/v2/logs/config/metrics/{metric_id},GetLogsMetric,get_logs_metric,get,LogsMetricResponse,Logs Metrics,logs metrics,metrics,get_logs_metric,select,$.data,Get a log-based metric -logs.yaml,/api/v2/logs/config/metrics,ListLogsMetrics,list_logs_metrics,get,LogsMetricsResponse,Logs Metrics,logs metrics,metrics,list_logs_metrics,select,$.data,Get all log-based metrics -metrics.yaml,/api/v2/metrics/{metric_name}/active-configurations,ListActiveMetricConfigurations,list_active_metric_configurations,get,MetricSuggestedTagsAndAggregationsResponse,Metrics,metrics,active_tag_configurations,list_active_metric_configurations,select,$.data,List active tags and aggregations -metrics.yaml,/api/v2/datasets,GetAllDatasets,get_all_datasets,get,DatasetResponseMulti,Datasets,datasets,datasets,get_all_datasets,select,$.data,Get all datasets -metrics.yaml,/api/v2/datasets/{dataset_id},GetDataset,get_dataset,get,DatasetResponseSingle,Datasets,datasets,datasets,get_dataset,select,$.data,Get a single dataset by ID -metrics.yaml,/api/v2/metrics/{metric_name}/estimate,EstimateMetricsOutputSeries,estimate_metrics_output_series,get,MetricEstimateResponse,Metrics,metrics,metrics_output_series,estimate_metrics_output_series,select,$.data,Tag Configuration Cardinality Estimator -metrics.yaml,/api/v2/metrics/{metric_name}/assets,ListMetricAssets,list_metric_assets,get,MetricAssetsResponse,Metrics,metrics,related_assets,list_metric_assets,select,$.data,Related Assets to a Metric -metrics.yaml,/api/v2/spans/events,ListSpansGet,list_spans_get,get,SpansListResponse,Spans,spans,spans,list_spans_get,select,$.data,Get a list of spans -metrics.yaml,/api/v2/metrics/{metric_name}/tag-cardinalities,GetMetricTagCardinalityDetails,get_metric_tag_cardinality_details,get,MetricTagCardinalitiesResponse,Metrics,metrics,tag_cardinality_details,get_metric_tag_cardinality_details,select,$.data,Get tag key cardinality details -metrics.yaml,/api/v2/metrics/{metric_name}/tags,ListTagConfigurationByName,list_tag_configuration_by_name,get,MetricTagConfigurationResponse,Metrics,metrics,tag_configurations,list_tag_configuration_by_name,select,$.data,List tag configuration by name -metrics.yaml,/api/v2/metrics,ListTagConfigurations,list_tag_configurations,get,MetricsAndMetricTagConfigurationsResponse,Metrics,metrics,tag_configurations,list_tag_configurations,select,$.data,Get a list of metrics -metrics.yaml,/api/v2/metrics/{metric_name}/all-tags,ListTagsByMetricName,list_tags_by_metric_name,get,MetricAllTagsResponse,Metrics,metrics,tags,list_tags_by_metric_name,select,$.data,List tags by metric name -metrics.yaml,/api/v2/metrics/{metric_name}/volumes,ListVolumesByMetricName,list_volumes_by_metric_name,get,MetricVolumesResponse,Metrics,metrics,volumes,list_volumes_by_metric_name,select,$.data,List distinct metric volumes by metric name -monitoring.yaml,/api/v2/monitor/policy/{policy_id},GetMonitorConfigPolicy,get_monitor_config_policy,get,MonitorConfigPolicyResponse,Monitors,monitors,config_policies,get_monitor_config_policy,select,$.data,Get a monitor configuration policy -monitoring.yaml,/api/v2/monitor/policy,ListMonitorConfigPolicies,list_monitor_config_policies,get,MonitorConfigPolicyListResponse,Monitors,monitors,config_policies,list_monitor_config_policies,select,$.data,Get all monitor configuration policies -monitoring.yaml,/api/v2/monitor/{monitor_id}/downtime_matches,ListMonitorDowntimes,list_monitor_downtimes,get,MonitorDowntimeMatchResponse,Downtimes,downtimes,downtimes,list_monitor_downtimes,select,$.data,Get active downtimes for a monitor -monitoring.yaml,/api/v2/monitor/notification_rule/{rule_id},GetMonitorNotificationRule,get_monitor_notification_rule,get,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,get_monitor_notification_rule,select,$.data,Get a monitor notification rule -monitoring.yaml,/api/v2/monitor/notification_rule,GetMonitorNotificationRules,get_monitor_notification_rules,get,MonitorNotificationRuleListResponse,Monitors,monitors,notification_rules,get_monitor_notification_rules,select,$.data,Get all monitor notification rules -monitoring.yaml,/api/v2/synthetics/settings/on_demand_concurrency_cap,GetOnDemandConcurrencyCap,get_on_demand_concurrency_cap,get,OnDemandConcurrencyCapResponse,Synthetics,synthetics,on_demand_concurrency_cap,get_on_demand_concurrency_cap,select,$.data,Get the on-demand concurrency cap -monitoring.yaml,/api/v2/monitor/template/{template_id},GetMonitorUserTemplate,get_monitor_user_template,get,MonitorUserTemplateResponse,Monitors,monitors,user_templates,get_monitor_user_template,select,$.data,Get a monitor user template -monitoring.yaml,/api/v2/monitor/template,ListMonitorUserTemplates,list_monitor_user_templates,get,MonitorUserTemplateListResponse,Monitors,monitors,user_templates,list_monitor_user_templates,select,$.data,Get all monitor user templates -organization.yaml,/api/v2/api_keys/{api_key_id},GetAPIKey,get_apikey,get,APIKeyResponse,Key Management,key management,api_keys,get_apikey,select,$.data,Get API key -organization.yaml,/api/v2/api_keys,ListAPIKeys,list_apikeys,get,APIKeysResponse,Key Management,key management,api_keys,list_apikeys,select,$.data,Get all API keys -organization.yaml,/api/v2/application_keys/{app_key_id},GetApplicationKey,get_application_key,get,ApplicationKeyResponse,Key Management,key management,application_keys,get_application_key,select,$.data,Get an application key -organization.yaml,/api/v2/application_keys,ListApplicationKeys,list_application_keys,get,ListApplicationKeysResponse,Key Management,key management,application_keys,list_application_keys,select,$.data,Get all application keys -organization.yaml,/api/v2/audit/events,ListAuditLogs,list_audit_logs,get,AuditLogsEventsResponse,Audit,audit,audit_logs,list_audit_logs,select,$.data,Get a list of Audit Logs events -organization.yaml,/api/v2/authn_mappings/{authn_mapping_id},GetAuthNMapping,get_auth_nmapping,get,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,get_auth_nmapping,select,$.data,Get an AuthN Mapping by UUID -organization.yaml,/api/v2/authn_mappings,ListAuthNMappings,list_auth_nmappings,get,AuthNMappingsResponse,AuthN Mappings,auth_n mappings,authn_mappings,list_auth_nmappings,select,$.data,List all AuthN Mappings -organization.yaml,/api/v2/usage/billing_dimension_mapping,GetBillingDimensionMapping,get_billing_dimension_mapping,get,,Usage Metering,usage metering,billing_dimension_mapping,get_billing_dimension_mapping,select,$.data,Get billing dimension mapping for usage endpoints -organization.yaml,/api/v2/org_configs/{org_config_name},GetOrgConfig,get_org_config,get,OrgConfigGetResponse,Organizations,organizations,configs,get_org_config,select,$.data,Get a specific Org Config value -organization.yaml,/api/v2/org_configs,ListOrgConfigs,list_org_configs,get,OrgConfigListResponse,Organizations,organizations,configs,list_org_configs,select,$.data,List Org Configs -organization.yaml,/api/v2/org_connections,ListOrgConnections,list_org_connections,get,OrgConnectionListResponse,Org Connections,org connections,connections,list_org_connections,select,$.data,List Org Connections -organization.yaml,/api/v2/usage/cost_by_org,GetCostByOrg,get_cost_by_org,get,,Usage Metering,usage metering,cost_by_org,get_cost_by_org,select,$.data,Get cost across multi-org account -organization.yaml,/api/v2/current_user/application_keys/{app_key_id},GetCurrentUserApplicationKey,get_current_user_application_key,get,ApplicationKeyResponse,Key Management,key management,current_user_application_keys,get_current_user_application_key,select,$.data,Get one application key owned by current user -organization.yaml,/api/v2/current_user/application_keys,ListCurrentUserApplicationKeys,list_current_user_application_keys,get,ListApplicationKeysResponse,Key Management,key management,current_user_application_keys,list_current_user_application_keys,select,$.data,Get all application keys owned by current user -organization.yaml,/api/v2/deletion/requests,GetDataDeletionRequests,get_data_deletion_requests,get,GetDataDeletionsResponseBody,Data Deletion,data deletion,data_deletion_requests,get_data_deletion_requests,select,$.data,Gets a list of data deletion requests -organization.yaml,/api/v2/domain_allowlist,GetDomainAllowlist,get_domain_allowlist,get,DomainAllowlistResponse,Domain Allowlist,domain allowlist,domain_allowlist,get_domain_allowlist,select,$.data,Get Domain Allowlist -organization.yaml,/api/v2/usage/estimated_cost,GetEstimatedCostByOrg,get_estimated_cost_by_org,get,,Usage Metering,usage metering,estimated_cost_by_org,get_estimated_cost_by_org,select,$.data,Get estimated cost across your account -organization.yaml,/api/v2/usage/historical_cost,GetHistoricalCostByOrg,get_historical_cost_by_org,get,,Usage Metering,usage metering,historical_cost_by_org,get_historical_cost_by_org,select,$.data,Get historical cost across your account -organization.yaml,/api/v2/usage/hourly_usage,GetHourlyUsage,get_hourly_usage,get,,Usage Metering,usage metering,hourly_usage,get_hourly_usage,select,$.data,Get hourly usage by product family -organization.yaml,/api/v2/user_invitations/{user_invitation_uuid},GetInvitation,get_invitation,get,UserInvitationResponse,Users,users,invitations,get_invitation,select,$.data,Get a user invitation -organization.yaml,/api/v2/ip_allowlist,GetIPAllowlist,get_ipallowlist,get,IPAllowlistResponse,IP Allowlist,ip allowlist,ip_allowlist,get_ipallowlist,select,$.data,Get IP Allowlist -organization.yaml,/api/v2/usage/lambda_traced_invocations,GetUsageLambdaTracedInvocations,get_usage_lambda_traced_invocations,get,,Usage Metering,usage metering,lambda_traced_invocations_usage,get_usage_lambda_traced_invocations,select,$.data,Get hourly usage for Lambda traced invocations -organization.yaml,/api/v2/usage/observability_pipelines,GetUsageObservabilityPipelines,get_usage_observability_pipelines,get,,Usage Metering,usage metering,observability_pipelines_usage,get_usage_observability_pipelines,select,$.data,Get hourly usage for observability pipelines -organization.yaml,/api/v2/permissions,ListPermissions,list_permissions,get,PermissionsResponse,Roles,roles,permissions,list_permissions,select,$.data,List permissions -organization.yaml,/api/v2/usage/projected_cost,GetProjectedCost,get_projected_cost,get,,Usage Metering,usage metering,projected_cost,get_projected_cost,select,$.data,Get projected cost across your account -organization.yaml,/api/v2/restriction_policy/{resource_id},GetRestrictionPolicy,get_restriction_policy,get,RestrictionPolicyResponse,Restriction Policies,restriction policies,restriction_policies,get_restriction_policy,select,$.data,Get a restriction policy -organization.yaml,/api/v2/roles/{role_id}/permissions,ListRolePermissions,list_role_permissions,get,PermissionsResponse,Roles,roles,role_permissions,list_role_permissions,select,$.data,List permissions for a role -organization.yaml,/api/v2/roles/{role_id}/users,ListRoleUsers,list_role_users,get,UsersResponse,Roles,roles,role_users,list_role_users,select,$.data,Get all users of a role -organization.yaml,/api/v2/roles/{role_id},GetRole,get_role,get,RoleResponse,Roles,roles,roles,get_role,select,$.data,Get a role -organization.yaml,/api/v2/roles,ListRoles,list_roles,get,RolesResponse,Roles,roles,roles,list_roles,select,$.data,List roles -organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},GetServiceAccountApplicationKey,get_service_account_application_key,get,PartialApplicationKeyResponse,Service Accounts,service accounts,service_account_keys,get_service_account_application_key,select,$.data,Get one application key for this service account -organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys,ListServiceAccountApplicationKeys,list_service_account_application_keys,get,ListApplicationKeysResponse,Service Accounts,service accounts,service_account_keys,list_service_account_application_keys,select,$.data,List application keys for this service account -organization.yaml,/api/v2/team/{team_id}/links/{link_id},GetTeamLink,get_team_link,get,TeamLinkResponse,Teams,teams,team_links,get_team_link,select,$.data,Get a team link -organization.yaml,/api/v2/team/{team_id}/links,GetTeamLinks,get_team_links,get,TeamLinksResponse,Teams,teams,team_links,get_team_links,select,$.data,Get links for a team -organization.yaml,/api/v2/team/{super_team_id}/member_teams,ListMemberTeams,list_member_teams,get,TeamsResponse,Teams,teams,team_members,list_member_teams,select,$.data,Get all member teams -organization.yaml,/api/v2/team/{team_id}/memberships,GetTeamMemberships,get_team_memberships,get,UserTeamsResponse,Teams,teams,team_memberships,get_team_memberships,select,$.data,Get team memberships -organization.yaml,/api/v2/team/{team_id}/permission-settings,GetTeamPermissionSettings,get_team_permission_settings,get,TeamPermissionSettingsResponse,Teams,teams,team_permission_settings,get_team_permission_settings,select,$.data,Get permission settings for a team -organization.yaml,/api/v2/team/{team_id},GetTeam,get_team,get,TeamResponse,Teams,teams,teams,get_team,select,$.data,Get a team -organization.yaml,/api/v2/team,ListTeams,list_teams,get,TeamsResponse,Teams,teams,teams,list_teams,select,$.data,Get all teams -organization.yaml,/api/v2/usage/application_security,GetUsageApplicationSecurityMonitoring,get_usage_application_security_monitoring,get,,Usage Metering,usage metering,usage_application_security_monitoring,get_usage_application_security_monitoring,select,$.data,Get hourly usage for application security -organization.yaml,/api/v2/users/{user_id}/orgs,ListUserOrganizations,list_user_organizations,get,UserResponse,Users,users,user_organizations,list_user_organizations,select,$.data,Get a user organization -organization.yaml,/api/v2/users/{user_id}/permissions,ListUserPermissions,list_user_permissions,get,PermissionsResponse,Users,users,user_permissions,list_user_permissions,select,$.data,Get a user permissions -organization.yaml,/api/v2/users/{user_uuid}/memberships,GetUserMemberships,get_user_memberships,get,UserTeamsResponse,Teams,teams,user_team_memberships,get_user_memberships,select,$.data,Get user memberships -organization.yaml,/api/v2/users/{user_id},GetUser,get_user,get,UserResponse,Users,users,users,get_user,select,$.data,Get user details -organization.yaml,/api/v2/users,ListUsers,list_users,get,UsersResponse,Users,users,users,list_users,select,$.data,List all users -remote_config.yaml,/api/v2/remote_config/products/cws/policy/{policy_id},GetCSMThreatsAgentPolicy,get_csmthreats_agent_policy,get,CloudWorkloadSecurityAgentPolicyResponse,CSM Threats,csm threats,csm_threats_agent_policies,get_csmthreats_agent_policy,select,$.data,Get a Workload Protection policy -remote_config.yaml,/api/v2/remote_config/products/cws/policy,ListCSMThreatsAgentPolicies,list_csmthreats_agent_policies,get,CloudWorkloadSecurityAgentPoliciesListResponse,CSM Threats,csm threats,csm_threats_agent_policies,list_csmthreats_agent_policies,select,$.data,Get all Workload Protection policies -remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},GetCSMThreatsAgentRule,get_csmthreats_agent_rule,get,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,csm_threats_agent_rules,get_csmthreats_agent_rule,select,$.data,Get a Workload Protection agent rule -remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules,ListCSMThreatsAgentRules,list_csmthreats_agent_rules,get,CloudWorkloadSecurityAgentRulesListResponse,CSM Threats,csm threats,csm_threats_agent_rules,list_csmthreats_agent_rules,select,$.data,Get all Workload Protection agent rules -remote_config.yaml,/api/v2/remote_config/products/obs_pipelines/pipelines/{pipeline_id},GetPipeline,get_pipeline,get,ObservabilityPipeline,Observability Pipelines,observability pipelines,observability_pipelines,get_pipeline,select,$.data,Get a specific pipeline -remote_config.yaml,/api/v2/remote_config/products/obs_pipelines/pipelines,ListPipelines,list_pipelines,get,ListPipelinesResponse,Observability Pipelines,observability pipelines,observability_pipelines,list_pipelines,select,$.data,List pipelines -remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},GetApplicationSecurityWafCustomRule,get_application_security_waf_custom_rule,get,ApplicationSecurityWafCustomRuleResponse,Application Security,application security,waf_custom_rules,get_application_security_waf_custom_rule,select,$.data,Get a WAF custom rule -remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules,ListApplicationSecurityWAFCustomRules,list_application_security_wafcustom_rules,get,ApplicationSecurityWafCustomRuleListResponse,Application Security,application security,waf_custom_rules,list_application_security_wafcustom_rules,select,$.data,List all WAF custom rules -remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},GetApplicationSecurityWafExclusionFilter,get_application_security_waf_exclusion_filter,get,ApplicationSecurityWafExclusionFilterResponse,Application Security,application security,waf_exclusion_filters,get_application_security_waf_exclusion_filter,select,$.data,Get a WAF exclusion filter -remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters,ListApplicationSecurityWafExclusionFilters,list_application_security_waf_exclusion_filters,get,ApplicationSecurityWafExclusionFiltersResponse,Application Security,application security,waf_exclusion_filters,list_application_security_waf_exclusion_filters,select,$.data,List all WAF exclusion filters -security.yaml,/api/v2/agentless_scanning/ondemand/aws/{task_id},GetAwsOnDemandTask,get_aws_on_demand_task,get,AwsOnDemandResponse,Agentless Scanning,agentless scanning,aws_on_demand_tasks,get_aws_on_demand_task,select,$.data,Get AWS On Demand task by id -security.yaml,/api/v2/agentless_scanning/ondemand/aws,ListAwsOnDemandTasks,list_aws_on_demand_tasks,get,AwsOnDemandListResponse,Agentless Scanning,agentless scanning,aws_on_demand_tasks,list_aws_on_demand_tasks,select,$.data,Get AWS On Demand tasks -security.yaml,/api/v2/agentless_scanning/accounts/aws/{account_id},GetAwsScanOptions,get_aws_scan_options,get,AwsScanOptionsResponse,Agentless Scanning,agentless scanning,aws_scan_options,get_aws_scan_options,select,$.data,Get AWS scan options -security.yaml,/api/v2/agentless_scanning/accounts/aws,ListAwsScanOptions,list_aws_scan_options,get,AwsScanOptionsListResponse,Agentless Scanning,agentless scanning,aws_scan_options,list_aws_scan_options,select,$.data,List AWS Scan Options -security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},GetCloudWorkloadSecurityAgentRule,get_cloud_workload_security_agent_rule,get,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,get_cloud_workload_security_agent_rule,select,$.data,Get a Workload Protection agent rule (US1-FED) -security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules,ListCloudWorkloadSecurityAgentRules,list_cloud_workload_security_agent_rules,get,CloudWorkloadSecurityAgentRulesListResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,list_cloud_workload_security_agent_rules,select,$.data,Get all Workload Protection agent rules (US1-FED) -security.yaml,/api/v2/csm/onboarding/agents,ListAllCSMAgents,list_all_csmagents,get,CsmAgentsResponse,CSM Agents,csm agents,csm_agents,list_all_csmagents,select,$.data,Get all CSM Agents -security.yaml,/api/v2/csm/onboarding/coverage_analysis/cloud_accounts,GetCSMCloudAccountsCoverageAnalysis,get_csmcloud_accounts_coverage_analysis,get,CsmCloudAccountsCoverageAnalysisResponse,CSM Coverage Analysis,csm coverage analysis,csm_cloud_accounts_coverage_analysis,get_csmcloud_accounts_coverage_analysis,select,$.data,Get the CSM Cloud Accounts Coverage Analysis -security.yaml,/api/v2/csm/onboarding/coverage_analysis/hosts_and_containers,GetCSMHostsAndContainersCoverageAnalysis,get_csmhosts_and_containers_coverage_analysis,get,CsmHostsAndContainersCoverageAnalysisResponse,CSM Coverage Analysis,csm coverage analysis,csm_hosts_and_containers_coverage_analysis,get_csmhosts_and_containers_coverage_analysis,select,$.data,Get the CSM Hosts and Containers Coverage Analysis -security.yaml,/api/v2/csm/onboarding/serverless/agents,ListAllCSMServerlessAgents,list_all_csmserverless_agents,get,CsmAgentsResponse,CSM Agents,csm agents,csm_serverless_agents,list_all_csmserverless_agents,select,$.data,Get all CSM Serverless Agents -security.yaml,/api/v2/csm/onboarding/coverage_analysis/serverless,GetCSMServerlessCoverageAnalysis,get_csmserverless_coverage_analysis,get,CsmServerlessCoverageAnalysisResponse,CSM Coverage Analysis,csm coverage analysis,csm_serverless_coverage_analysis,get_csmserverless_coverage_analysis,select,$.data,Get the CSM Serverless Coverage Analysis -security.yaml,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},GetCustomFramework,get_custom_framework,get,GetCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,get_custom_framework,select,$.data,Get a custom framework -security.yaml,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},GetSecurityFilter,get_security_filter,get,SecurityFilterResponse,Security Monitoring,security monitoring,filters,get_security_filter,select,$.data,Get a security filter -security.yaml,/api/v2/security_monitoring/configuration/security_filters,ListSecurityFilters,list_security_filters,get,SecurityFiltersResponse,Security Monitoring,security monitoring,filters,list_security_filters,select,$.data,Get all security filters -security.yaml,/api/v2/posture_management/findings/{finding_id},GetFinding,get_finding,get,GetFindingResponse,Security Monitoring,security monitoring,findings,get_finding,select,$.data,Get a finding -security.yaml,/api/v2/posture_management/findings,ListFindings,list_findings,get,ListFindingsResponse,Security Monitoring,security monitoring,findings,list_findings,select,$.data,List findings -security.yaml,/api/v2/siem-historical-detections/jobs/{job_id},GetHistoricalJob,get_historical_job,get,HistoricalJobResponse,Security Monitoring,security monitoring,historical_jobs,get_historical_job,select,$.data,Get a job's details -security.yaml,/api/v2/siem-historical-detections/jobs,ListHistoricalJobs,list_historical_jobs,get,ListHistoricalJobsResponse,Security Monitoring,security monitoring,historical_jobs,list_historical_jobs,select,$.data,List historical jobs -security.yaml,/api/v2/siem-historical-detections/histsignals/{histsignal_id},GetSecurityMonitoringHistsignal,get_security_monitoring_histsignal,get,SecurityMonitoringSignalResponse,Security Monitoring,security monitoring,monitoring_hist_signals,get_security_monitoring_histsignal,select,$.data,Get a hist signal's details -security.yaml,/api/v2/siem-historical-detections/jobs/{job_id}/histsignals,GetSecurityMonitoringHistsignalsByJobId,get_security_monitoring_histsignals_by_job_id,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_hist_signals,get_security_monitoring_histsignals_by_job_id,select,$.data,Get a job's hist signals -security.yaml,/api/v2/siem-historical-detections/histsignals,ListSecurityMonitoringHistsignals,list_security_monitoring_histsignals,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_hist_signals,list_security_monitoring_histsignals,select,$.data,List hist signals -security.yaml,/api/v2/security_monitoring/rules/{rule_id},GetSecurityMonitoringRule,get_security_monitoring_rule,get,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,get_security_monitoring_rule,select,,Get a rule's details -security.yaml,/api/v2/security_monitoring/rules,ListSecurityMonitoringRules,list_security_monitoring_rules,get,SecurityMonitoringListRulesResponse,Security Monitoring,security monitoring,monitoring_rules,list_security_monitoring_rules,select,$.data,List rules -security.yaml,/api/v2/security_monitoring/signals/{signal_id},GetSecurityMonitoringSignal,get_security_monitoring_signal,get,SecurityMonitoringSignalResponse,Security Monitoring,security monitoring,monitoring_signals,get_security_monitoring_signal,select,$.data,Get a signal's details -security.yaml,/api/v2/security_monitoring/signals,ListSecurityMonitoringSignals,list_security_monitoring_signals,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_signals,list_security_monitoring_signals,select,$.data,Get a quick list of security signals -security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},GetSecurityMonitoringSuppression,get_security_monitoring_suppression,get,SecurityMonitoringSuppressionResponse,Security Monitoring,security monitoring,monitoring_suppressions,get_security_monitoring_suppression,select,$.data,Get a suppression rule -security.yaml,/api/v2/security_monitoring/configuration/suppressions,ListSecurityMonitoringSuppressions,list_security_monitoring_suppressions,get,SecurityMonitoringSuppressionsResponse,Security Monitoring,security monitoring,monitoring_suppressions,list_security_monitoring_suppressions,select,$.data,Get all suppression rules -security.yaml,/api/v2/cloud_security_management/resource_filters,GetResourceEvaluationFilters,get_resource_evaluation_filters,get,GetResourceEvaluationFiltersResponse,Security Monitoring,security monitoring,resource_evaluation_filters,get_resource_evaluation_filters,select,$.data,List resource filters -security.yaml,/api/v2/security_monitoring/rules/{rule_id}/version_history,GetRuleVersionHistory,get_rule_version_history,get,GetRuleVersionHistoryResponse,Security Monitoring,security monitoring,rule_version_history,get_rule_version_history,select,$.data,Get a rule's version history -security.yaml,/api/v2/security/sboms/{asset_type},GetSBOM,get_sbom,get,GetSBOMResponse,Security Monitoring,security monitoring,sboms,get_sbom,select,$.data,Get SBOM -security.yaml,/api/v2/security/sboms,ListAssetsSBOMs,list_assets_sboms,get,ListAssetsSBOMsResponse,Security Monitoring,security monitoring,sboms,list_assets_sboms,select,$.data,List assets SBOMs -security.yaml,/api/v2/sensitive-data-scanner/config,ListScanningGroups,list_scanning_groups,get,SensitiveDataScannerGetConfigResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,list_scanning_groups,select,$.data,List Scanning Groups -security.yaml,/api/v2/security/signals/notification_rules/{id},GetSignalNotificationRule,get_signal_notification_rule,get,NotificationRuleResponse,Security Monitoring,security monitoring,signal_notification_rules,get_signal_notification_rule,select,$.data,Get details of a signal-based notification rule -security.yaml,/api/v2/security/signals/notification_rules,GetSignalNotificationRules,get_signal_notification_rules,get,,Security Monitoring,security monitoring,signal_notification_rules,get_signal_notification_rules,select,$.data,Get the list of signal-based notification rules -security.yaml,/api/v2/sensitive-data-scanner/config/standard-patterns,ListStandardPatterns,list_standard_patterns,get,SensitiveDataScannerStandardPatternsResponseData,Sensitive Data Scanner,sensitive data scanner,standard_patterns,list_standard_patterns,select,$.data,List standard patterns -security.yaml,/api/v2/security_monitoring/configuration/suppressions/rules/{rule_id},GetSuppressionsAffectingRule,get_suppressions_affecting_rule,get,SecurityMonitoringSuppressionsResponse,Security Monitoring,security monitoring,suppressions_affecting_rule,get_suppressions_affecting_rule,select,$.data,Get suppressions affecting a specific rule -security.yaml,/api/v2/security/vulnerabilities,ListVulnerabilities,list_vulnerabilities,get,ListVulnerabilitiesResponse,Security Monitoring,security monitoring,vulnerabilities,list_vulnerabilities,select,$.data,List vulnerabilities -security.yaml,/api/v2/security/vulnerabilities/notification_rules/{id},GetVulnerabilityNotificationRule,get_vulnerability_notification_rule,get,NotificationRuleResponse,Security Monitoring,security monitoring,vulnerability_notification_rules,get_vulnerability_notification_rule,select,$.data,Get details of a vulnerability notification rule -security.yaml,/api/v2/security/vulnerabilities/notification_rules,GetVulnerabilityNotificationRules,get_vulnerability_notification_rules,get,,Security Monitoring,security monitoring,vulnerability_notification_rules,get_vulnerability_notification_rules,select,$.data,Get the list of vulnerability notification rules -security.yaml,/api/v2/security/assets,ListVulnerableAssets,list_vulnerable_assets,get,ListVulnerableAssetsResponse,Security Monitoring,security monitoring,vulnerable_assets,list_vulnerable_assets,select,$.data,List vulnerable assets -service_management.yaml,/api/v2/cases/{case_id},GetCase,get_case,get,CaseResponse,Case Management,case management,cases,get_case,select,$.data,Get the details of a case -service_management.yaml,/api/v2/downtime/{downtime_id},GetDowntime,get_downtime,get,DowntimeResponse,Downtimes,downtimes,downtimes,get_downtime,select,$.data,Get a downtime -service_management.yaml,/api/v2/downtime,ListDowntimes,list_downtimes,get,ListDowntimesResponse,Downtimes,downtimes,downtimes,list_downtimes,select,$.data,Get all downtimes -service_management.yaml,/api/v2/events/{event_id},GetEvent,get_event,get,V2EventResponse,Events,events,events,get_event,select,$.data,Get an event -service_management.yaml,/api/v2/events,ListEvents,list_events,get,EventsListResponse,Events,events,events,list_events,select,$.data,Get a list of events -service_management.yaml,/api/v2/incidents/{incident_id}/attachments,ListIncidentAttachments,list_incident_attachments,get,IncidentAttachmentsResponse,Incidents,incidents,incident_attachments,list_incident_attachments,select,$.data,Get a list of attachments -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},GetIncidentIntegration,get_incident_integration,get,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,get_incident_integration,select,$.data,Get incident integration metadata details -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations,ListIncidentIntegrations,list_incident_integrations,get,IncidentIntegrationMetadataListResponse,Incidents,incidents,incident_integrations,list_incident_integrations,select,$.data,Get a list of an incident's integration metadata -service_management.yaml,/api/v2/incidents/config/notification-rules/{id},GetIncidentNotificationRule,get_incident_notification_rule,get,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,get_incident_notification_rule,select,$.data,Get an incident notification rule -service_management.yaml,/api/v2/incidents/config/notification-rules,ListIncidentNotificationRules,list_incident_notification_rules,get,IncidentNotificationRuleArray,Incidents,incidents,incident_notification_rules,list_incident_notification_rules,select,$.data,List incident notification rules -service_management.yaml,/api/v2/incidents/config/notification-templates/{id},GetIncidentNotificationTemplate,get_incident_notification_template,get,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,get_incident_notification_template,select,$.data,Get incident notification template -service_management.yaml,/api/v2/incidents/config/notification-templates,ListIncidentNotificationTemplates,list_incident_notification_templates,get,IncidentNotificationTemplateArray,Incidents,incidents,incident_notification_templates,list_incident_notification_templates,select,$.data,List incident notification templates -service_management.yaml,/api/v2/services/{service_id},GetIncidentService,get_incident_service,get,IncidentServiceResponse,Incident Services,incident services,incident_services,get_incident_service,select,$.data,Get details of an incident service -service_management.yaml,/api/v2/services,ListIncidentServices,list_incident_services,get,IncidentServicesResponse,Incident Services,incident services,incident_services,list_incident_services,select,$.data,Get a list of all incident services -service_management.yaml,/api/v2/teams/{team_id},GetIncidentTeam,get_incident_team,get,IncidentTeamResponse,Incident Teams,incident teams,incident_teams,get_incident_team,select,$.data,Get details of an incident team -service_management.yaml,/api/v2/teams,ListIncidentTeams,list_incident_teams,get,IncidentTeamsResponse,Incident Teams,incident teams,incident_teams,list_incident_teams,select,$.data,Get a list of all incident teams -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},GetIncidentTodo,get_incident_todo,get,IncidentTodoResponse,Incidents,incidents,incident_todos,get_incident_todo,select,$.data,Get incident todo details -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos,ListIncidentTodos,list_incident_todos,get,IncidentTodoListResponse,Incidents,incidents,incident_todos,list_incident_todos,select,$.data,Get a list of an incident's todos -service_management.yaml,/api/v2/incidents/config/types/{incident_type_id},GetIncidentType,get_incident_type,get,IncidentTypeResponse,Incidents,incidents,incident_types,get_incident_type,select,$.data,Get incident type details -service_management.yaml,/api/v2/incidents/config/types,ListIncidentTypes,list_incident_types,get,IncidentTypeListResponse,Incidents,incidents,incident_types,list_incident_types,select,$.data,Get a list of incident types -service_management.yaml,/api/v2/incidents/{incident_id},GetIncident,get_incident,get,IncidentResponse,Incidents,incidents,incidents,get_incident,select,$.data,Get the details of an incident -service_management.yaml,/api/v2/incidents,ListIncidents,list_incidents,get,IncidentsResponse,Incidents,incidents,incidents,list_incidents,select,$.data,Get a list of incidents -service_management.yaml,/api/v2/incidents/search,SearchIncidents,search_incidents,get,IncidentSearchResponse,Incidents,incidents,incidents,search_incidents,select,$.data,Search for incidents -service_management.yaml,/api/v2/error-tracking/issues/{issue_id},GetIssue,get_issue,get,IssueResponse,Error Tracking,error tracking,issues,get_issue,select,$.data,Get the details of an error tracking issue -service_management.yaml,/api/v2/on-call/escalation-policies/{policy_id},GetOnCallEscalationPolicy,get_on_call_escalation_policy,get,EscalationPolicy,On-Call,on_call,on_call_escalation_policies,get_on_call_escalation_policy,select,$.data,Get On-Call escalation policy -service_management.yaml,/api/v2/on-call/schedules/{schedule_id},GetOnCallSchedule,get_on_call_schedule,get,Schedule,On-Call,on_call,on_call_schedule,get_on_call_schedule,select,$.data,Get On-Call schedule -service_management.yaml,/api/v2/on-call/teams/{team_id}/routing-rules,GetOnCallTeamRoutingRules,get_on_call_team_routing_rules,get,TeamRoutingRules,On-Call,on_call,on_call_team_routing_rules,get_on_call_team_routing_rules,select,$.data,Get On-Call team routing rules -service_management.yaml,/api/v2/on-call/schedules/{schedule_id}/on-call,GetScheduleOnCallUser,get_schedule_on_call_user,get,Shift,On-Call,on_call,on_call_user_schedule,get_schedule_on_call_user,select,$.data,Get the schedule on-call user -service_management.yaml,/api/v2/cases/projects/{project_id},GetProject,get_project,get,ProjectResponse,Case Management,case management,projects,get_project,select,$.data,Get the details of a project -service_management.yaml,/api/v2/cases/projects,GetProjects,get_projects,get,ProjectsResponse,Case Management,case management,projects,get_projects,select,$.data,Get all projects -service_management.yaml,/api/v2/services/definitions/{service_name},GetServiceDefinition,get_service_definition,get,ServiceDefinitionGetResponse,Service Definition,service definition,service_definitions,get_service_definition,select,$.data,Get a single service definition -service_management.yaml,/api/v2/services/definitions,ListServiceDefinitions,list_service_definitions,get,ServiceDefinitionsListResponse,Service Definition,service definition,service_definitions,list_service_definitions,select,$.data,Get all service definitions -service_management.yaml,/api/v2/slo/report/{report_id}/status,GetSLOReportJobStatus,get_sloreport_job_status,get,SLOReportStatusGetResponse,Service Level Objectives,service level objectives,slo_report_job,get_sloreport_job_status,select,$.data,Get SLO report status -service_management.yaml,/api/v2/on-call/teams/{team_id}/on-call,GetTeamOnCallUsers,get_team_on_call_users,get,TeamOnCallResponders,On-Call,on_call,team_on_call_users,get_team_on_call_users,select,$.data,Get team on-call users -software_delivery.yaml,/api/v2/ci/pipelines/events,ListCIAppPipelineEvents,list_ciapp_pipeline_events,get,CIAppPipelineEventsResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,list_ciapp_pipeline_events,select,$.data,Get a list of pipelines events -software_delivery.yaml,/api/v2/ci/tests/events,ListCIAppTestEvents,list_ciapp_test_events,get,CIAppTestEventsResponse,CI Visibility Tests,ci visibility tests,ci_app_test_events,list_ciapp_test_events,select,$.data,Get a list of tests events -software_delivery.yaml,/api/v2/dora/deployments/{deployment_id},GetDORADeployment,get_doradeployment,get,DORAFetchResponse,DORA Metrics,dora metrics,dora_deployments,get_doradeployment,select,$.data,Get a deployment event -software_delivery.yaml,/api/v2/dora/deployments,ListDORADeployments,list_doradeployments,post,DORAListResponse,DORA Metrics,dora metrics,dora_deployments,list_doradeployments,select,$.data,Get a list of deployment events -software_delivery.yaml,/api/v2/dora/failures/{failure_id},GetDORAFailure,get_dorafailure,get,DORAFetchResponse,DORA Metrics,dora metrics,dora_failures,get_dorafailure,select,$.data,Get a failure event -software_delivery.yaml,/api/v2/dora/failures,ListDORAFailures,list_dorafailures,post,DORAListResponse,DORA Metrics,dora metrics,dora_failures,list_dorafailures,select,$.data,Get a list of failure events -software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances/{instance_id},GetWorkflowInstance,get_workflow_instance,get,WorklflowGetInstanceResponse,Workflow Automation,workflow automation,workflow_instances,get_workflow_instance,select,$.data,Get a workflow instance -software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances,ListWorkflowInstances,list_workflow_instances,get,WorkflowListInstancesResponse,Workflow Automation,workflow automation,workflow_instances,list_workflow_instances,select,$.data,List workflow instances -software_delivery.yaml,/api/v2/workflows/{workflow_id},GetWorkflow,get_workflow,get,GetWorkflowResponse,Workflow Automation,workflow automation,workflows,get_workflow,select,$.data,Get an existing Workflow -actions.yaml,/api/v2/actions/connections/{connection_id},UpdateActionConnection,update_action_connection,patch,UpdateActionConnectionResponse,Action Connection,action connection,connections,update_action_connection,update,,Update an existing Action Connection -actions.yaml,/api/v2/actions-datastores/{datastore_id}/items,UpdateDatastoreItem,update_datastore_item,patch,ItemApiPayload,Actions Datastores,actions datastores,datastore_items,update_datastore_item,update,,Update datastore item -actions.yaml,/api/v2/actions-datastores/{datastore_id},UpdateDatastore,update_datastore,patch,Datastore,Actions Datastores,actions datastores,datastores,update_datastore,update,,Update datastore -apm.yaml,/api/v2/apm/config/metrics/{metric_id},UpdateSpansMetric,update_spans_metric,patch,SpansMetricResponse,Spans Metrics,spans metrics,spans_metrics,update_spans_metric,update,,Update a span-based metric -cloud_costs.yaml,/api/v2/cost/aws_cur_config/{cloud_account_id},UpdateCostAWSCURConfig,update_cost_awscurconfig,patch,AwsCURConfigsResponse,Cloud Cost Management,cloud cost management,aws_configs,update_cost_awscurconfig,update,,Update Cloud Cost Management AWS CUR config -cloud_costs.yaml,/api/v2/cost/azure_uc_config/{cloud_account_id},UpdateCostAzureUCConfigs,update_cost_azure_ucconfigs,patch,AzureUCConfigPairsResponse,Cloud Cost Management,cloud cost management,azure_configs,update_cost_azure_ucconfigs,update,,Update Cloud Cost Management Azure config -cloud_costs.yaml,/api/v2/cost/gcp_uc_config/{cloud_account_id},UpdateCostGCPUsageCostConfig,update_cost_gcpusage_cost_config,patch,GCPUsageCostConfigResponse,Cloud Cost Management,cloud cost management,gcp_configs,update_cost_gcpusage_cost_config,update,,Update Cloud Cost Management GCP Usage Cost config -dashboards.yaml,/api/v2/powerpacks/{powerpack_id},UpdatePowerpack,update_powerpack,patch,PowerpackResponse,Powerpack,powerpack,powerpacks,update_powerpack,update,,Update a powerpack -digital_experience.yaml,/api/v2/rum/applications/{id},UpdateRUMApplication,update_rumapplication,patch,RUMApplicationResponse,RUM,rum,rum_applications,update_rumapplication,update,,Update a RUM application -digital_experience.yaml,/api/v2/rum/config/metrics/{metric_id},UpdateRumMetric,update_rum_metric,patch,RumMetricResponse,Rum Metrics,rum metrics,rum_metrics,update_rum_metric,update,,Update a rum-based metric -digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},UpdateRetentionFilter,update_retention_filter,patch,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,update_retention_filter,update,,Update a RUM retention filter -infrastructure.yaml,/api/v2/app-builder/apps/{app_id},UpdateApp,update_app,patch,UpdateAppResponse,App Builder,app builder,apps,update_app,update,,Update App -infrastructure.yaml,/api/v2/ndm/tags/devices/{device_id},UpdateDeviceUserTags,update_device_user_tags,patch,ListTagsResponse,Network Device Monitoring,network device monitoring,device_user_tags,update_device_user_tags,update,,Update the tags for a device -integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id},UpdateAWSAccount,update_awsaccount,patch,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,update_awsaccount,update,,Update an AWS integration -integrations.yaml,/api/v2/integrations/cloudflare/accounts/{account_id},UpdateCloudflareAccount,update_cloudflare_account,patch,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,update_cloudflare_account,update,,Update Cloudflare account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id},UpdateConfluentAccount,update_confluent_account,patch,ConfluentAccountResponse,Confluent Cloud,confluent cloud,confluent_accounts,update_confluent_account,update,,Update Confluent account -integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},UpdateConfluentResource,update_confluent_resource,patch,ConfluentResourceResponse,Confluent Cloud,confluent cloud,confluent_resources,update_confluent_resource,update,,Update resource in Confluent account -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id},UpdateFastlyAccount,update_fastly_account,patch,FastlyAccountResponse,Fastly Integration,fastly integration,fastly_accounts,update_fastly_account,update,,Update Fastly account -integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},UpdateFastlyService,update_fastly_service,patch,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,update_fastly_service,update,,Update Fastly service -integrations.yaml,/api/v2/integration/gcp/accounts/{account_id},UpdateGCPSTSAccount,update_gcpstsaccount,patch,GCPSTSServiceAccountResponse,GCP Integration,gcp integration,gcp_accounts,update_gcpstsaccount,update,,Update STS Service Account -integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},UpdateTenantBasedHandle,update_tenant_based_handle,patch,MicrosoftTeamsTenantBasedHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,update_tenant_based_handle,update,,Update tenant-based handle -integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},UpdateWorkflowsWebhookHandle,update_workflows_webhook_handle,patch,MicrosoftTeamsWorkflowsWebhookHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,update_workflows_webhook_handle,update,,Update Workflows webhook handle -integrations.yaml,/api/v2/integrations/okta/accounts/{account_id},UpdateOktaAccount,update_okta_account,patch,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,update_okta_account,update,,Update Okta account -integrations.yaml,/api/v2/integration/opsgenie/services/{integration_service_id},UpdateOpsgenieService,update_opsgenie_service,patch,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,update_opsgenie_service,update,,Update a single service object -logs.yaml,/api/v2/logs/config/custom-destinations/{custom_destination_id},UpdateLogsCustomDestination,update_logs_custom_destination,patch,CustomDestinationResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,update_logs_custom_destination,update,,Update a custom destination -logs.yaml,/api/v2/logs/config/metrics/{metric_id},UpdateLogsMetric,update_logs_metric,patch,LogsMetricResponse,Logs Metrics,logs metrics,metrics,update_logs_metric,update,,Update a log-based metric -metrics.yaml,/api/v2/metrics/{metric_name}/tags,UpdateTagConfiguration,update_tag_configuration,patch,MetricTagConfigurationResponse,Metrics,metrics,tag_configurations,update_tag_configuration,update,,Update a tag configuration -monitoring.yaml,/api/v2/monitor/policy/{policy_id},UpdateMonitorConfigPolicy,update_monitor_config_policy,patch,MonitorConfigPolicyResponse,Monitors,monitors,config_policies,update_monitor_config_policy,update,,Edit a monitor configuration policy -monitoring.yaml,/api/v2/monitor/notification_rule/{rule_id},UpdateMonitorNotificationRule,update_monitor_notification_rule,patch,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,update_monitor_notification_rule,update,,Update a monitor notification rule -organization.yaml,/api/v2/api_keys/{api_key_id},UpdateAPIKey,update_apikey,patch,APIKeyResponse,Key Management,key management,api_keys,update_apikey,update,,Edit an API key -organization.yaml,/api/v2/application_keys/{app_key_id},UpdateApplicationKey,update_application_key,patch,ApplicationKeyResponse,Key Management,key management,application_keys,update_application_key,update,,Edit an application key -organization.yaml,/api/v2/authn_mappings/{authn_mapping_id},UpdateAuthNMapping,update_auth_nmapping,patch,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,update_auth_nmapping,update,,Edit an AuthN Mapping -organization.yaml,/api/v2/org_configs/{org_config_name},UpdateOrgConfig,update_org_config,patch,OrgConfigGetResponse,Organizations,organizations,configs,update_org_config,update,,Update a specific Org Config -organization.yaml,/api/v2/org_connections/{connection_id},UpdateOrgConnections,update_org_connections,patch,OrgConnectionResponse,Org Connections,org connections,connections,update_org_connections,update,,Update Org Connection -organization.yaml,/api/v2/current_user/application_keys/{app_key_id},UpdateCurrentUserApplicationKey,update_current_user_application_key,patch,ApplicationKeyResponse,Key Management,key management,current_user_application_keys,update_current_user_application_key,update,,Edit an application key owned by current user -organization.yaml,/api/v2/domain_allowlist,PatchDomainAllowlist,patch_domain_allowlist,patch,DomainAllowlistResponse,Domain Allowlist,domain allowlist,domain_allowlist,patch_domain_allowlist,update,,Sets Domain Allowlist -organization.yaml,/api/v2/ip_allowlist,UpdateIPAllowlist,update_ipallowlist,patch,IPAllowlistResponse,IP Allowlist,ip allowlist,ip_allowlist,update_ipallowlist,update,,Update IP Allowlist -organization.yaml,/api/v2/roles/{role_id},UpdateRole,update_role,patch,RoleUpdateResponse,Roles,roles,roles,update_role,update,,Update a role -organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},UpdateServiceAccountApplicationKey,update_service_account_application_key,patch,PartialApplicationKeyResponse,Service Accounts,service accounts,service_account_keys,update_service_account_application_key,update,,Edit an application key for this service account -organization.yaml,/api/v2/team/{team_id}/links/{link_id},UpdateTeamLink,update_team_link,patch,TeamLinkResponse,Teams,teams,team_links,update_team_link,update,,Update a team link -organization.yaml,/api/v2/team/{team_id}/memberships/{user_id},UpdateTeamMembership,update_team_membership,patch,UserTeamResponse,Teams,teams,team_memberships,update_team_membership,update,,Update a user's membership attributes on a team -organization.yaml,/api/v2/team/{team_id},UpdateTeam,update_team,patch,TeamResponse,Teams,teams,teams,update_team,update,,Update a team -organization.yaml,/api/v2/users/{user_id},UpdateUser,update_user,patch,UserResponse,Users,users,users,update_user,update,,Update a user -remote_config.yaml,/api/v2/remote_config/products/cws/policy/{policy_id},UpdateCSMThreatsAgentPolicy,update_csmthreats_agent_policy,patch,CloudWorkloadSecurityAgentPolicyResponse,CSM Threats,csm threats,csm_threats_agent_policies,update_csmthreats_agent_policy,update,,Update a Workload Protection policy -remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},UpdateCSMThreatsAgentRule,update_csmthreats_agent_rule,patch,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,csm_threats_agent_rules,update_csmthreats_agent_rule,update,,Update a Workload Protection agent rule -security.yaml,/api/v2/agentless_scanning/accounts/aws/{account_id},UpdateAwsScanOptions,update_aws_scan_options,patch,,Agentless Scanning,agentless scanning,aws_scan_options,update_aws_scan_options,update,,Patch AWS Scan Options -security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},UpdateCloudWorkloadSecurityAgentRule,update_cloud_workload_security_agent_rule,patch,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,update_cloud_workload_security_agent_rule,update,,Update a Workload Protection agent rule (US1-FED) -security.yaml,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},UpdateSecurityFilter,update_security_filter,patch,SecurityFilterResponse,Security Monitoring,security monitoring,filters,update_security_filter,update,,Update a security filter -security.yaml,/api/v2/siem-historical-detections/jobs/{job_id}/cancel,CancelHistoricalJob,cancel_historical_job,patch,,Security Monitoring,security monitoring,historical_jobs,cancel_historical_job,update,,Cancel a historical job -security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},UpdateSecurityMonitoringSuppression,update_security_monitoring_suppression,patch,SecurityMonitoringSuppressionResponse,Security Monitoring,security monitoring,monitoring_suppressions,update_security_monitoring_suppression,update,,Update a suppression rule -security.yaml,/api/v2/sensitive-data-scanner/config/groups/{group_id},UpdateScanningGroup,update_scanning_group,patch,SensitiveDataScannerGroupUpdateResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,update_scanning_group,update,,Update Scanning Group -security.yaml,/api/v2/sensitive-data-scanner/config/rules/{rule_id},UpdateScanningRule,update_scanning_rule,patch,SensitiveDataScannerRuleUpdateResponse,Sensitive Data Scanner,sensitive data scanner,scanning_rules,update_scanning_rule,update,,Update Scanning Rule -security.yaml,/api/v2/security/signals/notification_rules/{id},PatchSignalNotificationRule,patch_signal_notification_rule,patch,NotificationRuleResponse,Security Monitoring,security monitoring,signal_notification_rules,patch_signal_notification_rule,update,,Patch a signal-based notification rule -security.yaml,/api/v2/security/vulnerabilities/notification_rules/{id},PatchVulnerabilityNotificationRule,patch_vulnerability_notification_rule,patch,NotificationRuleResponse,Security Monitoring,security monitoring,vulnerability_notification_rules,patch_vulnerability_notification_rule,update,,Patch a vulnerability-based notification rule -service_management.yaml,/api/v2/downtime/{downtime_id},UpdateDowntime,update_downtime,patch,DowntimeResponse,Downtimes,downtimes,downtimes,update_downtime,update,,Update a downtime -service_management.yaml,/api/v2/incidents/{incident_id}/attachments,UpdateIncidentAttachments,update_incident_attachments,patch,IncidentAttachmentUpdateResponse,Incidents,incidents,incident_attachments,update_incident_attachments,update,,"Create, update, and delete incident attachments" -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},UpdateIncidentIntegration,update_incident_integration,patch,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,update_incident_integration,update,,Update an existing incident integration metadata -service_management.yaml,/api/v2/incidents/config/notification-templates/{id},UpdateIncidentNotificationTemplate,update_incident_notification_template,patch,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,update_incident_notification_template,update,,Update incident notification template -service_management.yaml,/api/v2/services/{service_id},UpdateIncidentService,update_incident_service,patch,IncidentServiceResponse,Incident Services,incident services,incident_services,update_incident_service,update,,Update an existing incident service -service_management.yaml,/api/v2/teams/{team_id},UpdateIncidentTeam,update_incident_team,patch,IncidentTeamResponse,Incident Teams,incident teams,incident_teams,update_incident_team,update,,Update an existing incident team -service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},UpdateIncidentTodo,update_incident_todo,patch,IncidentTodoResponse,Incidents,incidents,incident_todos,update_incident_todo,update,,Update an incident todo -service_management.yaml,/api/v2/incidents/config/types/{incident_type_id},UpdateIncidentType,update_incident_type,patch,IncidentTypeResponse,Incidents,incidents,incident_types,update_incident_type,update,,Update an incident type -service_management.yaml,/api/v2/incidents/{incident_id},UpdateIncident,update_incident,patch,IncidentResponse,Incidents,incidents,incidents,update_incident,update,,Update an existing incident -software_delivery.yaml,/api/v2/workflows/{workflow_id},UpdateWorkflow,update_workflow,patch,UpdateWorkflowResponse,Workflow Automation,workflow automation,workflows,update_workflow,update,,Update an existing Workflow +filename,path,operationId,formatted_op_id,verb,response_object,tags,formatted_tags,stackql_resource_name,stackql_method_name,stackql_verb,stackql_object_key,op_description +actions.yaml,/api/v2/actions/connections/{connection_id},DeleteActionConnection,delete_action_connection,delete,,Action Connection,action connection,connections,delete_action_connection,delete,,Delete an existing Action Connection +actions.yaml,/api/v2/actions-datastores/{datastore_id}/items,DeleteDatastoreItem,delete_datastore_item,delete,DeleteAppsDatastoreItemResponse,Actions Datastores,actions datastores,datastore_items,delete_datastore_item,delete,,Delete datastore item +actions.yaml,/api/v2/actions-datastores/{datastore_id},DeleteDatastore,delete_datastore,delete,,Actions Datastores,actions datastores,datastores,delete_datastore,delete,,Delete datastore +apm.yaml,/api/v2/apm/config/retention-filters/{filter_id},DeleteApmRetentionFilter,delete_apm_retention_filter,delete,,APM Retention Filters,apm retention filters,retention_filters,delete_apm_retention_filter,delete,,Delete a retention filter +apm.yaml,/api/v2/scorecard/rules/{rule_id},DeleteScorecardRule,delete_scorecard_rule,delete,,Service Scorecards,service scorecards,scorecard_rules,delete_scorecard_rule,delete,,Delete a rule +apm.yaml,/api/v2/apm/config/metrics/{metric_id},DeleteSpansMetric,delete_spans_metric,delete,,Spans Metrics,spans metrics,spans_metrics,delete_spans_metric,delete,,Delete a span-based metric +catalog.yaml,/api/v2/apicatalog/api/{id},DeleteOpenAPI,delete_open_api,delete,,API Management,api management,skip_this_resource,,,,Delete an API +catalog.yaml,/api/v2/catalog/entity/{entity_id},DeleteCatalogEntity,delete_catalog_entity,delete,,Software Catalog,software catalog,catalog_entities,delete_catalog_entity,delete,,Delete a single entity +catalog.yaml,/api/v2/catalog/kind/{kind_id},DeleteCatalogKind,delete_catalog_kind,delete,,Software Catalog,software catalog,catalog_kinds,delete_catalog_kind,delete,,Delete a single kind +cloud_costs.yaml,/api/v2/cost/aws_cur_config/{cloud_account_id},DeleteCostAWSCURConfig,delete_cost_awscurconfig,delete,,Cloud Cost Management,cloud cost management,aws_configs,delete_cost_awscurconfig,delete,,Delete Cloud Cost Management AWS CUR config +cloud_costs.yaml,/api/v2/cost/azure_uc_config/{cloud_account_id},DeleteCostAzureUCConfig,delete_cost_azure_ucconfig,delete,,Cloud Cost Management,cloud cost management,azure_configs,delete_cost_azure_ucconfig,delete,,Delete Cloud Cost Management Azure config +cloud_costs.yaml,/api/v2/cost/budget/{budget_id},DeleteBudget,delete_budget,delete,,Cloud Cost Management,cloud cost management,budgets,delete_budget,delete,,Delete a budget +cloud_costs.yaml,/api/v2/cost/custom_costs/{file_id},DeleteCustomCostsFile,delete_custom_costs_file,delete,,Cloud Cost Management,cloud cost management,costs_files,delete_custom_costs_file,delete,,Delete Custom Costs file +cloud_costs.yaml,/api/v2/cost/gcp_uc_config/{cloud_account_id},DeleteCostGCPUsageCostConfig,delete_cost_gcpusage_cost_config,delete,,Cloud Cost Management,cloud cost management,gcp_configs,delete_cost_gcpusage_cost_config,delete,,Delete Cloud Cost Management GCP Usage Cost config +dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,DeleteDashboardListItems,delete_dashboard_list_items,delete,DashboardListDeleteItemsResponse,Dashboard Lists,dashboard lists,dashboard_list_items,delete_dashboard_list_items,delete,,Delete items from a dashboard list +dashboards.yaml,/api/v2/powerpacks/{powerpack_id},DeletePowerpack,delete_powerpack,delete,,Powerpack,powerpack,powerpacks,delete_powerpack,delete,,Delete a powerpack +digital_experience.yaml,/api/v2/rum/applications/{id},DeleteRUMApplication,delete_rumapplication,delete,,RUM,rum,rum_applications,delete_rumapplication,delete,,Delete a RUM application +digital_experience.yaml,/api/v2/rum/config/metrics/{metric_id},DeleteRumMetric,delete_rum_metric,delete,,Rum Metrics,rum metrics,rum_metrics,delete_rum_metric,delete,,Delete a rum-based metric +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},DeleteRetentionFilter,delete_retention_filter,delete,,Rum Retention Filters,rum retention filters,rum_retention_filters,delete_retention_filter,delete,,Delete a RUM retention filter +infrastructure.yaml,/api/v2/app-builder/apps/{app_id},DeleteApp,delete_app,delete,DeleteAppResponse,App Builder,app builder,apps,delete_app,delete,,Delete App +infrastructure.yaml,/api/v2/app-builder/apps,DeleteApps,delete_apps,delete,DeleteAppsResponse,App Builder,app builder,apps,delete_apps,delete,,Delete Multiple Apps +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id},DeleteAWSAccount,delete_awsaccount,delete,,AWS Integration,aws integration,aws_accounts,delete_awsaccount,delete,,Delete an AWS integration +integrations.yaml,/api/v2/integrations/cloudflare/accounts/{account_id},DeleteCloudflareAccount,delete_cloudflare_account,delete,,Cloudflare Integration,cloudflare integration,cloudflare_accounts,delete_cloudflare_account,delete,,Delete Cloudflare account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id},DeleteConfluentAccount,delete_confluent_account,delete,,Confluent Cloud,confluent cloud,confluent_accounts,delete_confluent_account,delete,,Delete Confluent account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},DeleteConfluentResource,delete_confluent_resource,delete,,Confluent Cloud,confluent cloud,confluent_resources,delete_confluent_resource,delete,,Delete resource from Confluent account +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id},DeleteFastlyAccount,delete_fastly_account,delete,,Fastly Integration,fastly integration,fastly_accounts,delete_fastly_account,delete,,Delete Fastly account +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},DeleteFastlyService,delete_fastly_service,delete,,Fastly Integration,fastly integration,fastly_services,delete_fastly_service,delete,,Delete Fastly service +integrations.yaml,/api/v2/integration/gcp/accounts/{account_id},DeleteGCPSTSAccount,delete_gcpstsaccount,delete,,GCP Integration,gcp integration,gcp_accounts,delete_gcpstsaccount,delete,,Delete an STS enabled GCP Account +integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},DeleteTenantBasedHandle,delete_tenant_based_handle,delete,,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,delete_tenant_based_handle,delete,,Delete tenant-based handle +integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},DeleteWorkflowsWebhookHandle,delete_workflows_webhook_handle,delete,,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,delete_workflows_webhook_handle,delete,,Delete Workflows webhook handle +integrations.yaml,/api/v2/integrations/okta/accounts/{account_id},DeleteOktaAccount,delete_okta_account,delete,,Okta Integration,okta integration,okta_accounts,delete_okta_account,delete,,Delete Okta account +integrations.yaml,/api/v2/integration/opsgenie/services/{integration_service_id},DeleteOpsgenieService,delete_opsgenie_service,delete,,Opsgenie Integration,opsgenie integration,opsgenie_services,delete_opsgenie_service,delete,,Delete a single service object +logs.yaml,/api/v2/logs/config/archives/{archive_id}/readers,RemoveRoleFromArchive,remove_role_from_archive,delete,,Logs Archives,logs archives,archive_read_roles,remove_role_from_archive,delete,,Revoke role from an archive +logs.yaml,/api/v2/logs/config/archives/{archive_id},DeleteLogsArchive,delete_logs_archive,delete,,Logs Archives,logs archives,archives,delete_logs_archive,delete,,Delete an archive +logs.yaml,/api/v2/logs/config/custom-destinations/{custom_destination_id},DeleteLogsCustomDestination,delete_logs_custom_destination,delete,,Logs Custom Destinations,logs custom destinations,custom_destinations,delete_logs_custom_destination,delete,,Delete a custom destination +logs.yaml,/api/v2/logs/config/metrics/{metric_id},DeleteLogsMetric,delete_logs_metric,delete,,Logs Metrics,logs metrics,metrics,delete_logs_metric,delete,,Delete a log-based metric +metrics.yaml,/api/v2/datasets/{dataset_id},DeleteDataset,delete_dataset,delete,,Datasets,datasets,datasets,delete_dataset,delete,,Delete a dataset +metrics.yaml,/api/v2/metrics/config/bulk-tags,DeleteBulkTagsMetricsConfiguration,delete_bulk_tags_metrics_configuration,delete,MetricBulkTagConfigResponse,Metrics,metrics,skip_this_resource,,,,Delete tags for multiple metrics +metrics.yaml,/api/v2/metrics/{metric_name}/tags,DeleteTagConfiguration,delete_tag_configuration,delete,,Metrics,metrics,tag_configurations,delete_tag_configuration,delete,,Delete a tag configuration +monitoring.yaml,/api/v2/monitor/policy/{policy_id},DeleteMonitorConfigPolicy,delete_monitor_config_policy,delete,,Monitors,monitors,config_policies,delete_monitor_config_policy,delete,,Delete a monitor configuration policy +monitoring.yaml,/api/v2/monitor/notification_rule/{rule_id},DeleteMonitorNotificationRule,delete_monitor_notification_rule,delete,,Monitors,monitors,notification_rules,delete_monitor_notification_rule,delete,,Delete a monitor notification rule +monitoring.yaml,/api/v2/monitor/template/{template_id},DeleteMonitorUserTemplate,delete_monitor_user_template,delete,,Monitors,monitors,user_templates,delete_monitor_user_template,delete,,Delete a monitor user template +organization.yaml,/api/v2/api_keys/{api_key_id},DeleteAPIKey,delete_apikey,delete,,Key Management,key management,api_keys,delete_apikey,delete,,Delete an API key +organization.yaml,/api/v2/application_keys/{app_key_id},DeleteApplicationKey,delete_application_key,delete,,Key Management,key management,application_keys,delete_application_key,delete,,Delete an application key +organization.yaml,/api/v2/authn_mappings/{authn_mapping_id},DeleteAuthNMapping,delete_auth_nmapping,delete,,AuthN Mappings,auth_n mappings,authn_mappings,delete_auth_nmapping,delete,,Delete an AuthN Mapping +organization.yaml,/api/v2/org_connections/{connection_id},DeleteOrgConnections,delete_org_connections,delete,,Org Connections,org connections,connections,delete_org_connections,delete,,Delete Org Connection +organization.yaml,/api/v2/current_user/application_keys/{app_key_id},DeleteCurrentUserApplicationKey,delete_current_user_application_key,delete,,Key Management,key management,current_user_application_keys,delete_current_user_application_key,delete,,Delete an application key owned by current user +organization.yaml,/api/v2/restriction_policy/{resource_id},DeleteRestrictionPolicy,delete_restriction_policy,delete,,Restriction Policies,restriction policies,restriction_policies,delete_restriction_policy,delete,,Delete a restriction policy +organization.yaml,/api/v2/roles/{role_id}/permissions,RemovePermissionFromRole,remove_permission_from_role,delete,PermissionsResponse,Roles,roles,role_permissions,remove_permission_from_role,delete,,Revoke permission +organization.yaml,/api/v2/roles/{role_id}/users,RemoveUserFromRole,remove_user_from_role,delete,UsersResponse,Roles,roles,role_users,remove_user_from_role,delete,,Remove a user from a role +organization.yaml,/api/v2/roles/{role_id},DeleteRole,delete_role,delete,,Roles,roles,roles,delete_role,delete,,Delete role +organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},DeleteServiceAccountApplicationKey,delete_service_account_application_key,delete,,Service Accounts,service accounts,service_account_keys,delete_service_account_application_key,delete,,Delete an application key for this service account +organization.yaml,/api/v2/team/{team_id}/links/{link_id},DeleteTeamLink,delete_team_link,delete,,Teams,teams,team_links,delete_team_link,delete,,Remove a team link +organization.yaml,/api/v2/team/{super_team_id}/member_teams/{member_team_id},RemoveMemberTeam,remove_member_team,delete,,Teams,teams,skip_this_resource,,,,Remove a member team +organization.yaml,/api/v2/team/{team_id}/memberships/{user_id},DeleteTeamMembership,delete_team_membership,delete,,Teams,teams,team_memberships,delete_team_membership,delete,,Remove a user from a team +organization.yaml,/api/v2/team/{team_id},DeleteTeam,delete_team,delete,,Teams,teams,teams,delete_team,delete,,Remove a team +remote_config.yaml,/api/v2/remote_config/products/cws/policy/{policy_id},DeleteCSMThreatsAgentPolicy,delete_csmthreats_agent_policy,delete,,CSM Threats,csm threats,csm_threats_agent_policies,delete_csmthreats_agent_policy,delete,,Delete a Workload Protection policy +remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},DeleteCSMThreatsAgentRule,delete_csmthreats_agent_rule,delete,,CSM Threats,csm threats,csm_threats_agent_rules,delete_csmthreats_agent_rule,delete,,Delete a Workload Protection agent rule +remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},DeleteApplicationSecurityWafCustomRule,delete_application_security_waf_custom_rule,delete,,Application Security,application security,waf_custom_rules,delete_application_security_waf_custom_rule,delete,,Delete a WAF Custom Rule +remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},DeleteApplicationSecurityWafExclusionFilter,delete_application_security_waf_exclusion_filter,delete,,Application Security,application security,waf_exclusion_filters,delete_application_security_waf_exclusion_filter,delete,,Delete a WAF exclusion filter +security.yaml,/api/v2/agentless_scanning/accounts/aws/{account_id},DeleteAwsScanOptions,delete_aws_scan_options,delete,,Agentless Scanning,agentless scanning,aws_scan_options,delete_aws_scan_options,delete,,Delete AWS Scan Options +security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},DeleteCloudWorkloadSecurityAgentRule,delete_cloud_workload_security_agent_rule,delete,,CSM Threats,csm threats,cloud_workload_security_agent_rules,delete_cloud_workload_security_agent_rule,delete,,Delete a Workload Protection agent rule (US1-FED) +security.yaml,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},DeleteCustomFramework,delete_custom_framework,delete,DeleteCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,delete_custom_framework,delete,,Delete a custom framework +security.yaml,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},DeleteSecurityFilter,delete_security_filter,delete,,Security Monitoring,security monitoring,filters,delete_security_filter,delete,,Delete a security filter +security.yaml,/api/v2/siem-historical-detections/jobs/{job_id},DeleteHistoricalJob,delete_historical_job,delete,,Security Monitoring,security monitoring,historical_jobs,delete_historical_job,delete,,Delete an existing job +security.yaml,/api/v2/security_monitoring/rules/{rule_id},DeleteSecurityMonitoringRule,delete_security_monitoring_rule,delete,,Security Monitoring,security monitoring,monitoring_rules,delete_security_monitoring_rule,delete,,Delete an existing rule +security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},DeleteSecurityMonitoringSuppression,delete_security_monitoring_suppression,delete,,Security Monitoring,security monitoring,monitoring_suppressions,delete_security_monitoring_suppression,delete,,Delete a suppression rule +security.yaml,/api/v2/sensitive-data-scanner/config/groups/{group_id},DeleteScanningGroup,delete_scanning_group,delete,SensitiveDataScannerGroupDeleteResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,delete_scanning_group,delete,,Delete Scanning Group +security.yaml,/api/v2/sensitive-data-scanner/config/rules/{rule_id},DeleteScanningRule,delete_scanning_rule,delete,SensitiveDataScannerRuleDeleteResponse,Sensitive Data Scanner,sensitive data scanner,scanning_rules,delete_scanning_rule,delete,,Delete Scanning Rule +security.yaml,/api/v2/security/signals/notification_rules/{id},DeleteSignalNotificationRule,delete_signal_notification_rule,delete,,Security Monitoring,security monitoring,signal_notification_rules,delete_signal_notification_rule,delete,,Delete a signal-based notification rule +security.yaml,/api/v2/security/vulnerabilities/notification_rules/{id},DeleteVulnerabilityNotificationRule,delete_vulnerability_notification_rule,delete,,Security Monitoring,security monitoring,vulnerability_notification_rules,delete_vulnerability_notification_rule,delete,,Delete a vulnerability-based notification rule +service_management.yaml,/api/v2/downtime/{downtime_id},CancelDowntime,cancel_downtime,delete,,Downtimes,downtimes,downtimes,cancel_downtime,delete,,Cancel a downtime +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},DeleteIncidentIntegration,delete_incident_integration,delete,,Incidents,incidents,incident_integrations,delete_incident_integration,delete,,Delete an incident integration metadata +service_management.yaml,/api/v2/incidents/config/notification-rules/{id},DeleteIncidentNotificationRule,delete_incident_notification_rule,delete,,Incidents,incidents,incident_notification_rules,delete_incident_notification_rule,delete,,Delete an incident notification rule +service_management.yaml,/api/v2/incidents/config/notification-templates/{id},DeleteIncidentNotificationTemplate,delete_incident_notification_template,delete,,Incidents,incidents,incident_notification_templates,delete_incident_notification_template,delete,,Delete a notification template +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},DeleteIncidentTodo,delete_incident_todo,delete,,Incidents,incidents,incident_todos,delete_incident_todo,delete,,Delete an incident todo +service_management.yaml,/api/v2/incidents/config/types/{incident_type_id},DeleteIncidentType,delete_incident_type,delete,,Incidents,incidents,incident_types,delete_incident_type,delete,,Delete an incident type +service_management.yaml,/api/v2/incidents/{incident_id},DeleteIncident,delete_incident,delete,,Incidents,incidents,incidents,delete_incident,delete,,Delete an existing incident +service_management.yaml,/api/v2/on-call/escalation-policies/{policy_id},DeleteOnCallEscalationPolicy,delete_on_call_escalation_policy,delete,,On-Call,on_call,on_call_escalation_policies,delete_on_call_escalation_policy,delete,,Delete On-Call escalation policy +service_management.yaml,/api/v2/on-call/schedules/{schedule_id},DeleteOnCallSchedule,delete_on_call_schedule,delete,,On-Call,on_call,on_call_schedule,delete_on_call_schedule,delete,,Delete On-Call schedule +service_management.yaml,/api/v2/cases/projects/{project_id},DeleteProject,delete_project,delete,,Case Management,case management,projects,delete_project,delete,,Remove a project +service_management.yaml,/api/v2/services/definitions/{service_name},DeleteServiceDefinition,delete_service_definition,delete,,Service Definition,service definition,service_definitions,delete_service_definition,delete,,Delete a single service definition +software_delivery.yaml,/api/v2/workflows/{workflow_id},DeleteWorkflow,delete_workflow,delete,,Workflow Automation,workflow automation,workflows,delete_workflow,delete,,Delete an existing Workflow +actions.yaml,/api/v2/actions/app_key_registrations/{app_key_id},RegisterAppKey,register_app_key,put,RegisterAppKeyResponse,Action Connection,action connection,app_key_registrations,register_app_key,exec,,Register a new App Key +actions.yaml,/api/v2/actions/app_key_registrations/{app_key_id},UnregisterAppKey,unregister_app_key,delete,,Action Connection,action connection,app_key_registrations,unregister_app_key,exec,,Unregister an App Key +apm.yaml,/api/v2/apm/config/retention-filters-execution-order,ReorderApmRetentionFilters,reorder_apm_retention_filters,put,,APM Retention Filters,apm retention filters,retention_filters,reorder_apm_retention_filters,exec,,Re-order retention filters +catalog.yaml,/api/v2/apicatalog/api/{id}/openapi,GetOpenAPI,get_open_api,get,,API Management,api management,skip_this_resource,,,,Get an API +cloud_costs.yaml,/api/v2/cost/custom_costs,UploadCustomCostsFile,upload_custom_costs_file,put,CustomCostsFileUploadResponse,Cloud Cost Management,cloud cost management,costs_files,upload_custom_costs_file,exec,,Upload Custom Costs file +digital_experience.yaml,/api/v2/rum/analytics/aggregate,AggregateRUMEvents,aggregate_rumevents,post,RUMAnalyticsAggregateResponse,RUM,rum,rum_events,aggregate_rumevents,exec,,Aggregate RUM events +digital_experience.yaml,/api/v2/rum/events/search,SearchRUMEvents,search_rumevents,post,RUMEventsResponse,RUM,rum,rum_events,search_rumevents,exec,,Search RUM events +digital_experience.yaml,/api/v2/rum/applications/{app_id}/relationships/retention_filters,OrderRetentionFilters,order_retention_filters,patch,RumRetentionFiltersOrderResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,order_retention_filters,exec,,Order RUM retention filters +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/deployment,PublishApp,publish_app,post,PublishAppResponse,App Builder,app builder,apps,publish_app,exec,,Publish App +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/deployment,UnpublishApp,unpublish_app,delete,UnpublishAppResponse,App Builder,app builder,apps,unpublish_app,exec,,Unpublish App +integrations.yaml,/api/v2/integration/aws/generate_new_external_id,CreateNewAWSExternalID,create_new_awsexternal_id,post,AWSNewExternalIDResponse,AWS Integration,aws integration,aws_accounts,create_new_awsexternal_id,exec,,Generate a new external ID +integrations.yaml,/api/v2/integration/gcp/sts_delegate,MakeGCPSTSDelegate,make_gcpstsdelegate,post,GCPSTSDelegateAccountResponse,GCP Integration,gcp integration,gcp_sts_delegate,make_gcpstsdelegate,exec,,Create a Datadog GCP principal +logs.yaml,/api/v2/logs/analytics/aggregate,AggregateLogs,aggregate_logs,post,LogsAggregateResponse,Logs,logs,logs,aggregate_logs,exec,,Aggregate events +metrics.yaml,/api/v2/query/scalar,QueryScalarData,query_scalar_data,post,ScalarFormulaQueryResponse,Metrics,metrics,metrics,query_scalar_data,exec,,Query scalar data across multiple products +metrics.yaml,/api/v2/query/timeseries,QueryTimeseriesData,query_timeseries_data,post,TimeseriesFormulaQueryResponse,Metrics,metrics,metrics,query_timeseries_data,exec,,Query timeseries data across multiple products +metrics.yaml,/api/v2/spans/analytics/aggregate,AggregateSpans,aggregate_spans,post,SpansAggregateResponse,Spans,spans,spans,aggregate_spans,exec,,Aggregate spans +monitoring.yaml,/api/v2/monitor/template/{template_id}/validate,ValidateExistingMonitorUserTemplate,validate_existing_monitor_user_template,post,,Monitors,monitors,user_templates,validate_existing_monitor_user_template,exec,,Validate an existing monitor user template +monitoring.yaml,/api/v2/monitor/template/validate,ValidateMonitorUserTemplate,validate_monitor_user_template,post,,Monitors,monitors,user_templates,validate_monitor_user_template,exec,,Validate a monitor user template +organization.yaml,/api/v2/audit/events/search,SearchAuditLogs,search_audit_logs,post,AuditLogsEventsResponse,Audit,audit,audit_logs,search_audit_logs,exec,,Search Audit Logs events +organization.yaml,/api/v2/deletion/requests/{id}/cancel,CancelDataDeletionRequest,cancel_data_deletion_request,put,CancelDataDeletionResponseBody,Data Deletion,data deletion,data_deletion_requests,cancel_data_deletion_request,exec,,Cancels a data deletion request +organization.yaml,/api/v2/saml_configurations/idp_metadata,UploadIdPMetadata,upload_id_pmetadata,post,,Organizations,organizations,skip_this_resource,,,,Upload IdP metadata +organization.yaml,/api/v2/user_invitations,SendInvitations,send_invitations,post,UserInvitationsResponse,Users,users,invitations,send_invitations,exec,,Send invitation emails +organization.yaml,/api/v2/roles/{role_id}/clone,CloneRole,clone_role,post,RoleResponse,Roles,roles,roles,clone_role,exec,,Create a new role by cloning an existing role +organization.yaml,/api/v2/team/sync,SyncTeams,sync_teams,post,,Teams,teams,teams,sync_teams,exec,,Link Teams with GitHub Teams +organization.yaml,/api/v2/users/{user_id},DisableUser,disable_user,delete,,Users,users,users,disable_user,exec,,Disable a user +remote_config.yaml,/api/v2/remote_config/products/cws/policy/download,DownloadCSMThreatsPolicy,download_csmthreats_policy,get,,CSM Threats,csm threats,skip_this_resource,,,,Download the Workload Protection policy +security.yaml,/api/v2/security/cloud_workload/policy/download,DownloadCloudWorkloadPolicyFile,download_cloud_workload_policy_file,get,,CSM Threats,csm threats,skip_this_resource,,,,Download the Workload Protection policy (US1-FED) +security.yaml,/api/v2/siem-historical-detections/jobs/signal_convert,ConvertJobResultToSignal,convert_job_result_to_signal,post,,Security Monitoring,security monitoring,monitoring_hist_signals,convert_job_result_to_signal,exec,,Convert a job result to a signal +security.yaml,/api/v2/siem-historical-detections/histsignals/search,SearchSecurityMonitoringHistsignals,search_security_monitoring_histsignals,post,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_hist_signals,search_security_monitoring_histsignals,exec,,Search hist signals +security.yaml,/api/v2/security_monitoring/rules/{rule_id}/convert,ConvertExistingSecurityMonitoringRule,convert_existing_security_monitoring_rule,get,SecurityMonitoringRuleConvertResponse,Security Monitoring,security monitoring,monitoring_rules,convert_existing_security_monitoring_rule,exec,,Convert an existing rule from JSON to Terraform +security.yaml,/api/v2/security_monitoring/rules/convert,ConvertSecurityMonitoringRuleFromJSONToTerraform,convert_security_monitoring_rule_from_jsonto_terraform,post,SecurityMonitoringRuleConvertResponse,Security Monitoring,security monitoring,monitoring_rules,convert_security_monitoring_rule_from_jsonto_terraform,exec,,Convert a rule from JSON to Terraform +security.yaml,/api/v2/security_monitoring/rules/{rule_id}/test,TestExistingSecurityMonitoringRule,test_existing_security_monitoring_rule,post,SecurityMonitoringRuleTestResponse,Security Monitoring,security monitoring,monitoring_rules,test_existing_security_monitoring_rule,exec,,Test an existing rule +security.yaml,/api/v2/security_monitoring/rules/test,TestSecurityMonitoringRule,test_security_monitoring_rule,post,SecurityMonitoringRuleTestResponse,Security Monitoring,security monitoring,monitoring_rules,test_security_monitoring_rule,exec,,Test a rule +security.yaml,/api/v2/security_monitoring/rules/validation,ValidateSecurityMonitoringRule,validate_security_monitoring_rule,post,,Security Monitoring,security monitoring,monitoring_rules,validate_security_monitoring_rule,exec,,Validate a detection rule +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/assignee,EditSecurityMonitoringSignalAssignee,edit_security_monitoring_signal_assignee,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal_assignee,exec,,Modify the triage assignee of a security signal +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/incidents,EditSecurityMonitoringSignalIncidents,edit_security_monitoring_signal_incidents,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal_incidents,exec,,Change the related incidents of a security signal +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/state,EditSecurityMonitoringSignalState,edit_security_monitoring_signal_state,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal_state,exec,,Change the triage state of a security signal +security.yaml,/api/v2/security_monitoring/signals/search,SearchSecurityMonitoringSignals,search_security_monitoring_signals,post,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_signals,search_security_monitoring_signals,exec,,Get a list of security signals +security.yaml,/api/v2/security_monitoring/configuration/suppressions/validation,ValidateSecurityMonitoringSuppression,validate_security_monitoring_suppression,post,,Security Monitoring,security monitoring,monitoring_suppressions,validate_security_monitoring_suppression,exec,,Validate a suppression rule +security.yaml,/api/v2/sensitive-data-scanner/config,ReorderScanningGroups,reorder_scanning_groups,patch,SensitiveDataScannerReorderGroupsResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,reorder_scanning_groups,exec,,Reorder Groups +service_management.yaml,/api/v2/cases/{case_id}/archive,ArchiveCase,archive_case,post,CaseResponse,Case Management,case management,cases,archive_case,exec,,Archive case +service_management.yaml,/api/v2/cases/{case_id}/assign,AssignCase,assign_case,post,CaseResponse,Case Management,case management,cases,assign_case,exec,,Assign case +service_management.yaml,/api/v2/cases,SearchCases,search_cases,get,CasesResponse,Case Management,case management,cases,search_cases,exec,,Search cases +service_management.yaml,/api/v2/cases/{case_id}/unarchive,UnarchiveCase,unarchive_case,post,CaseResponse,Case Management,case management,cases,unarchive_case,exec,,Unarchive case +service_management.yaml,/api/v2/cases/{case_id}/unassign,UnassignCase,unassign_case,post,CaseResponse,Case Management,case management,cases,unassign_case,exec,,Unassign case +service_management.yaml,/api/v2/cases/{case_id}/attributes,UpdateAttributes,update_attributes,post,CaseResponse,Case Management,case management,cases,update_attributes,exec,,Update case attributes +service_management.yaml,/api/v2/cases/{case_id}/priority,UpdatePriority,update_priority,post,CaseResponse,Case Management,case management,cases,update_priority,exec,,Update case priority +service_management.yaml,/api/v2/cases/{case_id}/status,UpdateStatus,update_status,post,CaseResponse,Case Management,case management,cases,update_status,exec,,Update case status +service_management.yaml,/api/v2/error-tracking/issues/{issue_id}/assignee,UpdateIssueAssignee,update_issue_assignee,put,IssueResponse,Error Tracking,error tracking,issues,update_issue_assignee,exec,,Update the assignee of an issue +service_management.yaml,/api/v2/error-tracking/issues/{issue_id}/state,UpdateIssueState,update_issue_state,put,IssueResponse,Error Tracking,error tracking,issues,update_issue_state,exec,,Update the state of an issue +service_management.yaml,/api/v2/on-call/pages/{page_id}/acknowledge,AcknowledgeOnCallPage,acknowledge_on_call_page,post,,On-Call Paging,on_call paging,on_call_page,acknowledge_on_call_page,exec,,Acknowledge On-Call Page +service_management.yaml,/api/v2/on-call/pages/{page_id}/escalate,EscalateOnCallPage,escalate_on_call_page,post,,On-Call Paging,on_call paging,on_call_page,escalate_on_call_page,exec,,Escalate On-Call Page +service_management.yaml,/api/v2/on-call/pages/{page_id}/resolve,ResolveOnCallPage,resolve_on_call_page,post,,On-Call Paging,on_call paging,on_call_page,resolve_on_call_page,exec,,Resolve On-Call Page +service_management.yaml,/api/v2/slo/report/{report_id}/download,GetSLOReport,get_sloreport,get,,Service Level Objectives,service level objectives,skip_this_resource,,,,Get SLO report +software_delivery.yaml,/api/v2/ci/pipelines/analytics/aggregate,AggregateCIAppPipelineEvents,aggregate_ciapp_pipeline_events,post,CIAppPipelinesAnalyticsAggregateResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,aggregate_ciapp_pipeline_events,exec,,Aggregate pipelines events +software_delivery.yaml,/api/v2/ci/pipelines/events/search,SearchCIAppPipelineEvents,search_ciapp_pipeline_events,post,CIAppPipelineEventsResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,search_ciapp_pipeline_events,exec,,Search pipelines events +software_delivery.yaml,/api/v2/ci/tests/analytics/aggregate,AggregateCIAppTestEvents,aggregate_ciapp_test_events,post,CIAppTestsAnalyticsAggregateResponse,CI Visibility Tests,ci visibility tests,ci_app_test_events,aggregate_ciapp_test_events,exec,,Aggregate tests events +software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel,CancelWorkflowInstance,cancel_workflow_instance,put,WorklflowCancelInstanceResponse,Workflow Automation,workflow automation,workflow_instances,cancel_workflow_instance,exec,,Cancel a workflow instance +actions.yaml,/api/v2/actions/connections,CreateActionConnection,create_action_connection,post,CreateActionConnectionResponse,Action Connection,action connection,connections,create_action_connection,insert,,Create a new Action Connection +actions.yaml,/api/v2/actions-datastores/{datastore_id}/items/bulk,BulkWriteDatastoreItems,bulk_write_datastore_items,post,PutAppsDatastoreItemResponseArray,Actions Datastores,actions datastores,datastore_items,bulk_write_datastore_items,insert,,Bulk write datastore items +actions.yaml,/api/v2/actions-datastores,CreateDatastore,create_datastore,post,CreateAppsDatastoreResponse,Actions Datastores,actions datastores,datastores,create_datastore,insert,,Create datastore +apm.yaml,/api/v2/apm/config/retention-filters,CreateApmRetentionFilter,create_apm_retention_filter,post,RetentionFilterCreateResponse,APM Retention Filters,apm retention filters,retention_filters,create_apm_retention_filter,insert,,Create a retention filter +apm.yaml,/api/v2/scorecard/outcomes/batch,CreateScorecardOutcomesBatch,create_scorecard_outcomes_batch,post,OutcomesBatchResponse,Service Scorecards,service scorecards,skip_this_resource,,,,Create outcomes batch +apm.yaml,/api/v2/scorecard/rules,CreateScorecardRule,create_scorecard_rule,post,CreateRuleResponse,Service Scorecards,service scorecards,scorecard_rules,create_scorecard_rule,insert,,Create a new rule +apm.yaml,/api/v2/apm/config/metrics,CreateSpansMetric,create_spans_metric,post,SpansMetricResponse,Spans Metrics,spans metrics,spans_metrics,create_spans_metric,insert,,Create a span-based metric +catalog.yaml,/api/v2/apicatalog/openapi,CreateOpenAPI,create_open_api,post,CreateOpenAPIResponse,API Management,api management,skip_this_resource,,,,Create a new API +catalog.yaml,/api/v2/catalog/entity,UpsertCatalogEntity,upsert_catalog_entity,post,UpsertCatalogEntityResponse,Software Catalog,software catalog,catalog_entities,upsert_catalog_entity,insert,,Create or update entities +catalog.yaml,/api/v2/catalog/kind,UpsertCatalogKind,upsert_catalog_kind,post,UpsertCatalogKindResponse,Software Catalog,software catalog,catalog_kinds,upsert_catalog_kind,insert,,Create or update kinds +cloud_costs.yaml,/api/v2/cost/aws_cur_config,CreateCostAWSCURConfig,create_cost_awscurconfig,post,AwsCURConfigResponse,Cloud Cost Management,cloud cost management,aws_configs,create_cost_awscurconfig,insert,,Create Cloud Cost Management AWS CUR config +cloud_costs.yaml,/api/v2/cost/azure_uc_config,CreateCostAzureUCConfigs,create_cost_azure_ucconfigs,post,AzureUCConfigPairsResponse,Cloud Cost Management,cloud cost management,azure_configs,create_cost_azure_ucconfigs,insert,,Create Cloud Cost Management Azure configs +cloud_costs.yaml,/api/v2/cost/gcp_uc_config,CreateCostGCPUsageCostConfig,create_cost_gcpusage_cost_config,post,GCPUsageCostConfigResponse,Cloud Cost Management,cloud cost management,gcp_configs,create_cost_gcpusage_cost_config,insert,,Create Cloud Cost Management GCP Usage Cost config +dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,CreateDashboardListItems,create_dashboard_list_items,post,DashboardListAddItemsResponse,Dashboard Lists,dashboard lists,dashboard_list_items,create_dashboard_list_items,insert,,Add Items to a Dashboard List +dashboards.yaml,/api/v2/powerpacks,CreatePowerpack,create_powerpack,post,PowerpackResponse,Powerpack,powerpack,powerpacks,create_powerpack,insert,,Create a new powerpack +digital_experience.yaml,/api/v2/rum/applications,CreateRUMApplication,create_rumapplication,post,RUMApplicationResponse,RUM,rum,rum_applications,create_rumapplication,insert,,Create a new RUM application +digital_experience.yaml,/api/v2/rum/config/metrics,CreateRumMetric,create_rum_metric,post,RumMetricResponse,Rum Metrics,rum metrics,rum_metrics,create_rum_metric,insert,,Create a rum-based metric +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters,CreateRetentionFilter,create_retention_filter,post,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,create_retention_filter,insert,,Create a RUM retention filter +infrastructure.yaml,/api/v2/app-builder/apps,CreateApp,create_app,post,CreateAppResponse,App Builder,app builder,apps,create_app,insert,,Create App +integrations.yaml,/api/v2/integration/aws/accounts,CreateAWSAccount,create_awsaccount,post,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,create_awsaccount,insert,,Create an AWS integration +integrations.yaml,/api/v2/integrations/cloudflare/accounts,CreateCloudflareAccount,create_cloudflare_account,post,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,create_cloudflare_account,insert,,Add Cloudflare account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts,CreateConfluentAccount,create_confluent_account,post,ConfluentAccountResponse,Confluent Cloud,confluent cloud,confluent_accounts,create_confluent_account,insert,,Add Confluent account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources,CreateConfluentResource,create_confluent_resource,post,ConfluentResourceResponse,Confluent Cloud,confluent cloud,confluent_resources,create_confluent_resource,insert,,Add resource to Confluent account +integrations.yaml,/api/v2/integrations/fastly/accounts,CreateFastlyAccount,create_fastly_account,post,FastlyAccountResponse,Fastly Integration,fastly integration,fastly_accounts,create_fastly_account,insert,,Add Fastly account +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services,CreateFastlyService,create_fastly_service,post,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,create_fastly_service,insert,,Add Fastly service +integrations.yaml,/api/v2/integration/gcp/accounts,CreateGCPSTSAccount,create_gcpstsaccount,post,GCPSTSServiceAccountResponse,GCP Integration,gcp integration,gcp_accounts,create_gcpstsaccount,insert,,Create a new entry for your service account +integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles,CreateTenantBasedHandle,create_tenant_based_handle,post,MicrosoftTeamsTenantBasedHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,create_tenant_based_handle,insert,,Create tenant-based handle +integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles,CreateWorkflowsWebhookHandle,create_workflows_webhook_handle,post,MicrosoftTeamsWorkflowsWebhookHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,create_workflows_webhook_handle,insert,,Create Workflows webhook handle +integrations.yaml,/api/v2/integrations/okta/accounts,CreateOktaAccount,create_okta_account,post,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,create_okta_account,insert,,Add Okta account +integrations.yaml,/api/v2/integration/opsgenie/services,CreateOpsgenieService,create_opsgenie_service,post,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,create_opsgenie_service,insert,,Create a new service object +logs.yaml,/api/v2/logs/config/archives/{archive_id}/readers,AddReadRoleToArchive,add_read_role_to_archive,post,,Logs Archives,logs archives,archive_read_roles,add_read_role_to_archive,insert,,Grant role to an archive +logs.yaml,/api/v2/logs/config/archives,CreateLogsArchive,create_logs_archive,post,LogsArchive,Logs Archives,logs archives,archives,create_logs_archive,insert,,Create an archive +logs.yaml,/api/v2/logs/config/custom-destinations,CreateLogsCustomDestination,create_logs_custom_destination,post,CustomDestinationResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,create_logs_custom_destination,insert,,Create a custom destination +logs.yaml,/api/v2/logs/events/search,ListLogs,list_logs,post,LogsListResponse,Logs,logs,logs,list_logs,exec,,Search logs (POST) +logs.yaml,/api/v2/logs,SubmitLog,submit_log,post,,Logs,logs,logs,submit_log,exec,,Send logs +logs.yaml,/api/v2/logs/config/metrics,CreateLogsMetric,create_logs_metric,post,LogsMetricResponse,Logs Metrics,logs metrics,metrics,create_logs_metric,insert,,Create a log-based metric +metrics.yaml,/api/v2/datasets,CreateDataset,create_dataset,post,DatasetResponseSingle,Datasets,datasets,datasets,create_dataset,insert,,Create a dataset +metrics.yaml,/api/v2/series,SubmitMetrics,submit_metrics,post,IntakePayloadAccepted,Metrics,metrics,metrics,submit_metrics,insert,,Submit metrics +metrics.yaml,/api/v2/spans/events/search,ListSpans,list_spans,post,SpansListResponse,Spans,spans,spans,list_spans,insert,,Search spans +metrics.yaml,/api/v2/metrics/config/bulk-tags,CreateBulkTagsMetricsConfiguration,create_bulk_tags_metrics_configuration,post,MetricBulkTagConfigResponse,Metrics,metrics,skip_this_resource,,,,Configure tags for multiple metrics +metrics.yaml,/api/v2/metrics/{metric_name}/tags,CreateTagConfiguration,create_tag_configuration,post,MetricTagConfigurationResponse,Metrics,metrics,tag_configurations,create_tag_configuration,insert,,Create a tag configuration +monitoring.yaml,/api/v2/monitor/policy,CreateMonitorConfigPolicy,create_monitor_config_policy,post,MonitorConfigPolicyResponse,Monitors,monitors,config_policies,create_monitor_config_policy,insert,,Create a monitor configuration policy +monitoring.yaml,/api/v2/monitor/notification_rule,CreateMonitorNotificationRule,create_monitor_notification_rule,post,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,create_monitor_notification_rule,insert,,Create a monitor notification rule +monitoring.yaml,/api/v2/synthetics/settings/on_demand_concurrency_cap,SetOnDemandConcurrencyCap,set_on_demand_concurrency_cap,post,OnDemandConcurrencyCapResponse,Synthetics,synthetics,on_demand_concurrency_cap,set_on_demand_concurrency_cap,insert,,Save new value for on-demand concurrency cap +monitoring.yaml,/api/v2/monitor/template,CreateMonitorUserTemplate,create_monitor_user_template,post,MonitorUserTemplateCreateResponse,Monitors,monitors,user_templates,create_monitor_user_template,insert,,Create a monitor user template +organization.yaml,/api/v2/api_keys,CreateAPIKey,create_apikey,post,APIKeyResponse,Key Management,key management,api_keys,create_apikey,insert,,Create an API key +organization.yaml,/api/v2/authn_mappings,CreateAuthNMapping,create_auth_nmapping,post,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,create_auth_nmapping,insert,,Create an AuthN Mapping +organization.yaml,/api/v2/org_connections,CreateOrgConnections,create_org_connections,post,OrgConnectionResponse,Org Connections,org connections,connections,create_org_connections,insert,,Create Org Connection +organization.yaml,/api/v2/current_user/application_keys,CreateCurrentUserApplicationKey,create_current_user_application_key,post,ApplicationKeyResponse,Key Management,key management,current_user_application_keys,create_current_user_application_key,insert,,Create an application key for current user +organization.yaml,/api/v2/deletion/data/{product},CreateDataDeletionRequest,create_data_deletion_request,post,CreateDataDeletionResponseBody,Data Deletion,data deletion,data_deletion_requests,create_data_deletion_request,insert,,Creates a data deletion request +organization.yaml,/api/v2/roles/{role_id}/permissions,AddPermissionToRole,add_permission_to_role,post,PermissionsResponse,Roles,roles,role_permissions,add_permission_to_role,insert,,Grant permission to a role +organization.yaml,/api/v2/roles/{role_id}/users,AddUserToRole,add_user_to_role,post,UsersResponse,Roles,roles,role_users,add_user_to_role,insert,,Add a user to a role +organization.yaml,/api/v2/roles,CreateRole,create_role,post,RoleCreateResponse,Roles,roles,roles,create_role,insert,,Create role +organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys,CreateServiceAccountApplicationKey,create_service_account_application_key,post,ApplicationKeyResponse,Service Accounts,service accounts,service_account_keys,create_service_account_application_key,insert,,Create an application key for this service account +organization.yaml,/api/v2/service_accounts,CreateServiceAccount,create_service_account,post,UserResponse,Service Accounts,service accounts,service_accounts,create_service_account,insert,,Create a service account +organization.yaml,/api/v2/team/{team_id}/links,CreateTeamLink,create_team_link,post,TeamLinkResponse,Teams,teams,team_links,create_team_link,insert,,Create a team link +organization.yaml,/api/v2/team/{super_team_id}/member_teams,AddMemberTeam,add_member_team,post,,Teams,teams,skip_this_resource,,,,Add a member team +organization.yaml,/api/v2/team/{team_id}/memberships,CreateTeamMembership,create_team_membership,post,UserTeamResponse,Teams,teams,team_memberships,create_team_membership,insert,,Add a user to a team +organization.yaml,/api/v2/team,CreateTeam,create_team,post,TeamResponse,Teams,teams,teams,create_team,insert,,Create a team +organization.yaml,/api/v2/users,CreateUser,create_user,post,UserResponse,Users,users,users,create_user,insert,,Create a user +remote_config.yaml,/api/v2/remote_config/products/cws/policy,CreateCSMThreatsAgentPolicy,create_csmthreats_agent_policy,post,CloudWorkloadSecurityAgentPolicyResponse,CSM Threats,csm threats,csm_threats_agent_policies,create_csmthreats_agent_policy,insert,,Create a Workload Protection policy +remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules,CreateCSMThreatsAgentRule,create_csmthreats_agent_rule,post,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,csm_threats_agent_rules,create_csmthreats_agent_rule,insert,,Create a Workload Protection agent rule +remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules,CreateApplicationSecurityWafCustomRule,create_application_security_waf_custom_rule,post,ApplicationSecurityWafCustomRuleResponse,Application Security,application security,waf_custom_rules,create_application_security_waf_custom_rule,insert,,Create a WAF custom rule +remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters,CreateApplicationSecurityWafExclusionFilter,create_application_security_waf_exclusion_filter,post,ApplicationSecurityWafExclusionFilterResponse,Application Security,application security,waf_exclusion_filters,create_application_security_waf_exclusion_filter,insert,,Create a WAF exclusion filter +security.yaml,/api/v2/agentless_scanning/ondemand/aws,CreateAwsOnDemandTask,create_aws_on_demand_task,post,AwsOnDemandResponse,Agentless Scanning,agentless scanning,aws_on_demand_tasks,create_aws_on_demand_task,insert,,Post an AWS on demand task +security.yaml,/api/v2/agentless_scanning/accounts/aws,CreateAwsScanOptions,create_aws_scan_options,post,AwsScanOptionsResponse,Agentless Scanning,agentless scanning,aws_scan_options,create_aws_scan_options,insert,,Post AWS Scan Options +security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules,CreateCloudWorkloadSecurityAgentRule,create_cloud_workload_security_agent_rule,post,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,create_cloud_workload_security_agent_rule,insert,,Create a Workload Protection agent rule (US1-FED) +security.yaml,/api/v2/cloud_security_management/custom_frameworks,CreateCustomFramework,create_custom_framework,post,CreateCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,create_custom_framework,insert,,Create a custom framework +security.yaml,/api/v2/security_monitoring/configuration/security_filters,CreateSecurityFilter,create_security_filter,post,SecurityFilterResponse,Security Monitoring,security monitoring,filters,create_security_filter,insert,,Create a security filter +security.yaml,/api/v2/siem-historical-detections/jobs,RunHistoricalJob,run_historical_job,post,JobCreateResponse,Security Monitoring,security monitoring,historical_jobs,run_historical_job,insert,,Run a historical job +security.yaml,/api/v2/security_monitoring/rules,CreateSecurityMonitoringRule,create_security_monitoring_rule,post,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,create_security_monitoring_rule,insert,,Create a detection rule +security.yaml,/api/v2/security_monitoring/configuration/suppressions,CreateSecurityMonitoringSuppression,create_security_monitoring_suppression,post,SecurityMonitoringSuppressionResponse,Security Monitoring,security monitoring,monitoring_suppressions,create_security_monitoring_suppression,insert,,Create a suppression rule +security.yaml,/api/v2/sensitive-data-scanner/config/groups,CreateScanningGroup,create_scanning_group,post,SensitiveDataScannerCreateGroupResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,create_scanning_group,insert,,Create Scanning Group +security.yaml,/api/v2/sensitive-data-scanner/config/rules,CreateScanningRule,create_scanning_rule,post,SensitiveDataScannerCreateRuleResponse,Sensitive Data Scanner,sensitive data scanner,scanning_rules,create_scanning_rule,insert,,Create Scanning Rule +security.yaml,/api/v2/security/signals/notification_rules,CreateSignalNotificationRule,create_signal_notification_rule,post,NotificationRuleResponse,Security Monitoring,security monitoring,signal_notification_rules,create_signal_notification_rule,insert,,Create a new signal-based notification rule +security.yaml,/api/v2/security_monitoring/configuration/suppressions/rules,GetSuppressionsAffectingFutureRule,get_suppressions_affecting_future_rule,post,SecurityMonitoringSuppressionsResponse,Security Monitoring,security monitoring,suppressions_affecting_future_rule,get_suppressions_affecting_future_rule,insert,,Get suppressions affecting future rule +security.yaml,/api/v2/security/vulnerabilities/notification_rules,CreateVulnerabilityNotificationRule,create_vulnerability_notification_rule,post,NotificationRuleResponse,Security Monitoring,security monitoring,vulnerability_notification_rules,create_vulnerability_notification_rule,insert,,Create a new vulnerability-based notification rule +service_management.yaml,/api/v2/cases,CreateCase,create_case,post,CaseResponse,Case Management,case management,cases,create_case,insert,,Create a case +service_management.yaml,/api/v2/downtime,CreateDowntime,create_downtime,post,DowntimeResponse,Downtimes,downtimes,downtimes,create_downtime,insert,,Schedule a downtime +service_management.yaml,/api/v2/events,CreateEvent,create_event,post,EventCreateResponsePayload,Events,events,events,create_event,insert,,Post an event +service_management.yaml,/api/v2/events/search,SearchEvents,search_events,post,EventsListResponse,Events,events,events,search_events,exec,,Search events +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations,CreateIncidentIntegration,create_incident_integration,post,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,create_incident_integration,insert,,Create an incident integration metadata +service_management.yaml,/api/v2/incidents/config/notification-rules,CreateIncidentNotificationRule,create_incident_notification_rule,post,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,create_incident_notification_rule,insert,,Create an incident notification rule +service_management.yaml,/api/v2/incidents/config/notification-templates,CreateIncidentNotificationTemplate,create_incident_notification_template,post,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,create_incident_notification_template,insert,,Create incident notification template +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos,CreateIncidentTodo,create_incident_todo,post,IncidentTodoResponse,Incidents,incidents,incident_todos,create_incident_todo,insert,,Create an incident todo +service_management.yaml,/api/v2/incidents/config/types,CreateIncidentType,create_incident_type,post,IncidentTypeResponse,Incidents,incidents,incident_types,create_incident_type,insert,,Create an incident type +service_management.yaml,/api/v2/incidents,CreateIncident,create_incident,post,IncidentResponse,Incidents,incidents,incidents,create_incident,insert,,Create an incident +service_management.yaml,/api/v2/error-tracking/issues/search,SearchIssues,search_issues,post,IssuesSearchResponse,Error Tracking,error tracking,issues,search_issues,insert,,Search error tracking issues +service_management.yaml,/api/v2/on-call/escalation-policies,CreateOnCallEscalationPolicy,create_on_call_escalation_policy,post,EscalationPolicy,On-Call,on_call,on_call_escalation_policies,create_on_call_escalation_policy,insert,,Create On-Call escalation policy +service_management.yaml,/api/v2/on-call/pages,CreateOnCallPage,create_on_call_page,post,CreatePageResponse,On-Call Paging,on_call paging,on_call_page,create_on_call_page,insert,,Create On-Call Page +service_management.yaml,/api/v2/on-call/schedules,CreateOnCallSchedule,create_on_call_schedule,post,Schedule,On-Call,on_call,on_call_schedule,create_on_call_schedule,insert,,Create On-Call schedule +service_management.yaml,/api/v2/cases/projects,CreateProject,create_project,post,ProjectResponse,Case Management,case management,projects,create_project,insert,,Create a project +service_management.yaml,/api/v2/services/definitions,CreateOrUpdateServiceDefinitions,create_or_update_service_definitions,post,ServiceDefinitionCreateResponse,Service Definition,service definition,service_definitions,create_or_update_service_definitions,insert,,Create or update service definition +service_management.yaml,/api/v2/slo/report,CreateSLOReportJob,create_sloreport_job,post,SLOReportPostResponse,Service Level Objectives,service level objectives,skip_this_resource,,,,Create a new SLO report +software_delivery.yaml,/api/v2/ci/pipeline,CreateCIAppPipelineEvent,create_ciapp_pipeline_event,post,,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,create_ciapp_pipeline_event,insert,,Send pipeline event +software_delivery.yaml,/api/v2/ci/tests/events/search,SearchCIAppTestEvents,search_ciapp_test_events,post,CIAppTestEventsResponse,CI Visibility Tests,ci visibility tests,ci_app_test_events,search_ciapp_test_events,insert,,Search tests events +software_delivery.yaml,/api/v2/dora/deployment,CreateDORADeployment,create_doradeployment,post,DORADeploymentResponse,DORA Metrics,dora metrics,dora_deployments,create_doradeployment,insert,,Send a deployment event for DORA Metrics +software_delivery.yaml,/api/v2/dora/failure,CreateDORAFailure,create_dorafailure,post,DORAFailureResponse,DORA Metrics,dora metrics,dora_failures,create_dorafailure,insert,,Send a failure event for DORA Metrics +software_delivery.yaml,/api/v2/dora/incident,CreateDORAIncident,create_doraincident,post,DORAFailureResponse,DORA Metrics,dora metrics,skip_this_resource,,,,Send an incident event for DORA Metrics +software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances,CreateWorkflowInstance,create_workflow_instance,post,WorkflowInstanceCreateResponse,Workflow Automation,workflow automation,workflow_instances,create_workflow_instance,insert,,Execute a workflow +software_delivery.yaml,/api/v2/workflows,CreateWorkflow,create_workflow,post,CreateWorkflowResponse,Workflow Automation,workflow automation,workflows,create_workflow,insert,,Create a Workflow +apm.yaml,/api/v2/apm/config/retention-filters/{filter_id},UpdateApmRetentionFilter,update_apm_retention_filter,put,RetentionFilterResponse,APM Retention Filters,apm retention filters,retention_filters,update_apm_retention_filter,replace,,Update a retention filter +apm.yaml,/api/v2/scorecard/rules/{rule_id},UpdateScorecardRule,update_scorecard_rule,put,UpdateRuleResponse,Service Scorecards,service scorecards,scorecard_rules,update_scorecard_rule,replace,,Update an existing rule +catalog.yaml,/api/v2/apicatalog/api/{id}/openapi,UpdateOpenAPI,update_open_api,put,UpdateOpenAPIResponse,API Management,api management,skip_this_resource,,,,Update an API +cloud_costs.yaml,/api/v2/cost/budget,UpsertBudget,upsert_budget,put,BudgetWithEntries,Cloud Cost Management,cloud cost management,budgets,upsert_budget,replace,,Create or update a budget +dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,UpdateDashboardListItems,update_dashboard_list_items,put,DashboardListUpdateItemsResponse,Dashboard Lists,dashboard lists,dashboard_list_items,update_dashboard_list_items,replace,,Update items of a dashboard list +logs.yaml,/api/v2/logs/config/archive-order,UpdateLogsArchiveOrder,update_logs_archive_order,put,LogsArchiveOrder,Logs Archives,logs archives,archive_order,update_logs_archive_order,replace,,Update archive order +logs.yaml,/api/v2/logs/config/archives/{archive_id},UpdateLogsArchive,update_logs_archive,put,LogsArchive,Logs Archives,logs archives,archives,update_logs_archive,replace,,Update an archive +metrics.yaml,/api/v2/datasets/{dataset_id},UpdateDataset,update_dataset,put,DatasetResponseSingle,Datasets,datasets,datasets,update_dataset,replace,,Edit a dataset +monitoring.yaml,/api/v2/monitor/template/{template_id},UpdateMonitorUserTemplate,update_monitor_user_template,put,MonitorUserTemplateResponse,Monitors,monitors,user_templates,update_monitor_user_template,replace,,Update a monitor user template to a new version +organization.yaml,/api/v2/restriction_policy/{resource_id},UpdateRestrictionPolicy,update_restriction_policy,post,RestrictionPolicyResponse,Restriction Policies,restriction policies,restriction_policies,update_restriction_policy,replace,,Update a restriction policy +organization.yaml,/api/v2/team/{team_id}/permission-settings/{action},UpdateTeamPermissionSetting,update_team_permission_setting,put,TeamPermissionSettingResponse,Teams,teams,team_permission_settings,update_team_permission_setting,replace,,Update permission setting for team +remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},UpdateApplicationSecurityWafCustomRule,update_application_security_waf_custom_rule,put,ApplicationSecurityWafCustomRuleResponse,Application Security,application security,waf_custom_rules,update_application_security_waf_custom_rule,replace,,Update a WAF Custom Rule +remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},UpdateApplicationSecurityWafExclusionFilter,update_application_security_waf_exclusion_filter,put,ApplicationSecurityWafExclusionFilterResponse,Application Security,application security,waf_exclusion_filters,update_application_security_waf_exclusion_filter,replace,,Update a WAF exclusion filter +security.yaml,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},UpdateCustomFramework,update_custom_framework,put,UpdateCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,update_custom_framework,replace,,Update a custom framework +security.yaml,/api/v2/security_monitoring/rules/{rule_id},UpdateSecurityMonitoringRule,update_security_monitoring_rule,put,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,update_security_monitoring_rule,replace,,Update an existing rule +security.yaml,/api/v2/cloud_security_management/resource_filters,UpdateResourceEvaluationFilters,update_resource_evaluation_filters,put,UpdateResourceEvaluationFiltersResponse,Security Monitoring,security monitoring,resource_evaluation_filters,update_resource_evaluation_filters,replace,,Update resource filters +service_management.yaml,/api/v2/incidents/config/notification-rules/{id},UpdateIncidentNotificationRule,update_incident_notification_rule,put,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,update_incident_notification_rule,replace,,Update an incident notification rule +service_management.yaml,/api/v2/on-call/escalation-policies/{policy_id},UpdateOnCallEscalationPolicy,update_on_call_escalation_policy,put,EscalationPolicy,On-Call,on_call,on_call_escalation_policies,update_on_call_escalation_policy,replace,,Update On-Call escalation policy +service_management.yaml,/api/v2/on-call/schedules/{schedule_id},UpdateOnCallSchedule,update_on_call_schedule,put,Schedule,On-Call,on_call,on_call_schedule,update_on_call_schedule,replace,,Update On-Call schedule +service_management.yaml,/api/v2/on-call/teams/{team_id}/routing-rules,SetOnCallTeamRoutingRules,set_on_call_team_routing_rules,put,TeamRoutingRules,On-Call,on_call,on_call_team_routing_rules,set_on_call_team_routing_rules,replace,,Set On-Call team routing rules +actions.yaml,/api/v2/actions/app_key_registrations/{app_key_id},GetAppKeyRegistration,get_app_key_registration,get,GetAppKeyRegistrationResponse,Action Connection,action connection,app_key_registrations,get_app_key_registration,select,$.data,Get an existing App Key Registration +actions.yaml,/api/v2/actions/app_key_registrations,ListAppKeyRegistrations,list_app_key_registrations,get,ListAppKeyRegistrationsResponse,Action Connection,action connection,app_key_registrations,list_app_key_registrations,select,$.data,List App Key Registrations +actions.yaml,/api/v2/actions/connections/{connection_id},GetActionConnection,get_action_connection,get,GetActionConnectionResponse,Action Connection,action connection,connections,get_action_connection,select,$.data,Get an existing Action Connection +actions.yaml,/api/v2/actions-datastores/{datastore_id}/items,ListDatastoreItems,list_datastore_items,get,ItemApiPayloadArray,Actions Datastores,actions datastores,datastore_items,list_datastore_items,select,$.data,List datastore items +actions.yaml,/api/v2/actions-datastores/{datastore_id},GetDatastore,get_datastore,get,Datastore,Actions Datastores,actions datastores,datastores,get_datastore,select,$.data,Get datastore +actions.yaml,/api/v2/actions-datastores,ListDatastores,list_datastores,get,DatastoreArray,Actions Datastores,actions datastores,datastores,list_datastores,select,$.data,List datastores +apm.yaml,/api/v2/apm/config/retention-filters/{filter_id},GetApmRetentionFilter,get_apm_retention_filter,get,RetentionFilterResponse,APM Retention Filters,apm retention filters,retention_filters,get_apm_retention_filter,select,$.data,Get a given APM retention filter +apm.yaml,/api/v2/apm/config/retention-filters,ListApmRetentionFilters,list_apm_retention_filters,get,RetentionFiltersResponse,APM Retention Filters,apm retention filters,retention_filters,list_apm_retention_filters,select,$.data,List all APM retention filters +apm.yaml,/api/v2/scorecard/outcomes,ListScorecardOutcomes,list_scorecard_outcomes,get,OutcomesResponse,Service Scorecards,service scorecards,scorecard_outcomes,list_scorecard_outcomes,select,$.data,List all rule outcomes +apm.yaml,/api/v2/scorecard/rules,ListScorecardRules,list_scorecard_rules,get,ListRulesResponse,Service Scorecards,service scorecards,scorecard_rules,list_scorecard_rules,select,$.data,List all rules +apm.yaml,/api/v2/apm/config/metrics/{metric_id},GetSpansMetric,get_spans_metric,get,SpansMetricResponse,Spans Metrics,spans metrics,spans_metrics,get_spans_metric,select,$.data,Get a span-based metric +apm.yaml,/api/v2/apm/config/metrics,ListSpansMetrics,list_spans_metrics,get,SpansMetricsResponse,Spans Metrics,spans metrics,spans_metrics,list_spans_metrics,select,$.data,Get all span-based metrics +catalog.yaml,/api/v2/apicatalog/api,ListAPIs,list_apis,get,ListAPIsResponse,API Management,api management,skip_this_resource,,,,List APIs +catalog.yaml,/api/v2/catalog/entity,ListCatalogEntity,list_catalog_entity,get,ListEntityCatalogResponse,Software Catalog,software catalog,catalog_entities,list_catalog_entity,select,$.data,Get a list of entities +catalog.yaml,/api/v2/catalog/kind,ListCatalogKind,list_catalog_kind,get,ListKindCatalogResponse,Software Catalog,software catalog,catalog_kinds,list_catalog_kind,select,$.data,Get a list of entity kinds +catalog.yaml,/api/v2/catalog/relation,ListCatalogRelation,list_catalog_relation,get,ListRelationCatalogResponse,Software Catalog,software catalog,catalog_relations,list_catalog_relation,select,$.data,Get a list of entity relations +cloud_costs.yaml,/api/v2/cost_by_tag/active_billing_dimensions,GetActiveBillingDimensions,get_active_billing_dimensions,get,,Usage Metering,usage metering,active_billing_dimensions,get_active_billing_dimensions,select,$.data,Get active billing dimensions for cost attribution +cloud_costs.yaml,/api/v2/cost/aws_cur_config,ListCostAWSCURConfigs,list_cost_awscurconfigs,get,AwsCURConfigsResponse,Cloud Cost Management,cloud cost management,aws_configs,list_cost_awscurconfigs,select,$.data,List Cloud Cost Management AWS CUR configs +cloud_costs.yaml,/api/v2/cost/azure_uc_config,ListCostAzureUCConfigs,list_cost_azure_ucconfigs,get,AzureUCConfigsResponse,Cloud Cost Management,cloud cost management,azure_configs,list_cost_azure_ucconfigs,select,$.data,List Cloud Cost Management Azure configs +cloud_costs.yaml,/api/v2/cost/budget/{budget_id},GetBudget,get_budget,get,BudgetWithEntries,Cloud Cost Management,cloud cost management,budgets,get_budget,select,$.data,Get a budget +cloud_costs.yaml,/api/v2/cost/budgets,ListBudgets,list_budgets,get,BudgetArray,Cloud Cost Management,cloud cost management,budgets,list_budgets,select,$.data,List budgets +cloud_costs.yaml,/api/v2/cost/custom_costs/{file_id},GetCustomCostsFile,get_custom_costs_file,get,CustomCostsFileGetResponse,Cloud Cost Management,cloud cost management,costs_files,get_custom_costs_file,select,$.data,Get Custom Costs file +cloud_costs.yaml,/api/v2/cost/custom_costs,ListCustomCostsFiles,list_custom_costs_files,get,CustomCostsFileListResponse,Cloud Cost Management,cloud cost management,costs_files,list_custom_costs_files,select,$.data,List Custom Costs files +cloud_costs.yaml,/api/v2/cost/gcp_uc_config,ListCostGCPUsageCostConfigs,list_cost_gcpusage_cost_configs,get,GCPUsageCostConfigsResponse,Cloud Cost Management,cloud cost management,gcp_configs,list_cost_gcpusage_cost_configs,select,$.data,List Cloud Cost Management GCP Usage Cost configs +cloud_costs.yaml,/api/v2/cost_by_tag/monthly_cost_attribution,GetMonthlyCostAttribution,get_monthly_cost_attribution,get,,Usage Metering,usage metering,monthly_cost_attribution,get_monthly_cost_attribution,select,$.data,Get Monthly Cost Attribution +dashboards.yaml,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,GetDashboardListItems,get_dashboard_list_items,get,DashboardListItems,Dashboard Lists,dashboard lists,dashboard_list_items,get_dashboard_list_items,select,$.dashboards,Get items of a Dashboard List +dashboards.yaml,/api/v2/powerpacks/{powerpack_id},GetPowerpack,get_powerpack,get,PowerpackResponse,Powerpack,powerpack,powerpacks,get_powerpack,select,$.data,Get a Powerpack +dashboards.yaml,/api/v2/powerpacks,ListPowerpacks,list_powerpacks,get,ListPowerpacksResponse,Powerpack,powerpack,powerpacks,list_powerpacks,select,$.data,Get all powerpacks +digital_experience.yaml,/api/v2/rum/applications/{id},GetRUMApplication,get_rumapplication,get,RUMApplicationResponse,RUM,rum,rum_applications,get_rumapplication,select,$.data,Get a RUM application +digital_experience.yaml,/api/v2/rum/applications,GetRUMApplications,get_rumapplications,get,RUMApplicationsResponse,RUM,rum,rum_applications,get_rumapplications,select,$.data,List all the RUM applications +digital_experience.yaml,/api/v2/rum/events,ListRUMEvents,list_rumevents,get,RUMEventsResponse,RUM,rum,rum_events,list_rumevents,select,$.data,Get a list of RUM events +digital_experience.yaml,/api/v2/rum/config/metrics/{metric_id},GetRumMetric,get_rum_metric,get,RumMetricResponse,Rum Metrics,rum metrics,rum_metrics,get_rum_metric,select,$.data,Get a rum-based metric +digital_experience.yaml,/api/v2/rum/config/metrics,ListRumMetrics,list_rum_metrics,get,RumMetricsResponse,Rum Metrics,rum metrics,rum_metrics,list_rum_metrics,select,$.data,Get all rum-based metrics +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},GetRetentionFilter,get_retention_filter,get,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,get_retention_filter,select,$.data,Get a RUM retention filter +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters,ListRetentionFilters,list_retention_filters,get,RumRetentionFiltersResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,list_retention_filters,select,$.data,Get all RUM retention filters +infrastructure.yaml,/api/v2/network/connections/aggregate,GetAggregatedConnections,get_aggregated_connections,get,SingleAggregatedConnectionResponseArray,Cloud Network Monitoring,cloud network monitoring,aggregated_connections,get_aggregated_connections,select,$.data,Get all aggregated connections +infrastructure.yaml,/api/v2/network/dns/aggregate,GetAggregatedDns,get_aggregated_dns,get,SingleAggregatedDnsResponseArray,Cloud Network Monitoring,cloud network monitoring,aggregated_dns,get_aggregated_dns,select,$.data,Get all aggregated DNS traffic +infrastructure.yaml,/api/v2/app-builder/apps/{app_id},GetApp,get_app,get,GetAppResponse,App Builder,app builder,apps,get_app,select,$.data,Get App +infrastructure.yaml,/api/v2/app-builder/apps,ListApps,list_apps,get,ListAppsResponse,App Builder,app builder,apps,list_apps,select,$.data,List Apps +infrastructure.yaml,/api/v2/container_images,ListContainerImages,list_container_images,get,ContainerImagesResponse,Container Images,container images,container_images,list_container_images,select,$.data,Get all Container Images +infrastructure.yaml,/api/v2/containers,ListContainers,list_containers,get,ContainersResponse,Containers,containers,containers,list_containers,select,$.data,Get All Containers +infrastructure.yaml,/api/v2/ndm/interfaces,GetInterfaces,get_interfaces,get,GetInterfacesResponse,Network Device Monitoring,network device monitoring,device_interfaces,get_interfaces,select,$.data,Get the list of interfaces of the device +infrastructure.yaml,/api/v2/ndm/tags/devices/{device_id},ListDeviceUserTags,list_device_user_tags,get,ListTagsResponse,Network Device Monitoring,network device monitoring,device_user_tags,list_device_user_tags,select,$.data,Get the list of tags for a device +infrastructure.yaml,/api/v2/ndm/devices/{device_id},GetDevice,get_device,get,GetDeviceResponse,Network Device Monitoring,network device monitoring,devices,get_device,select,$.data,Get the device details +infrastructure.yaml,/api/v2/ndm/devices,ListDevices,list_devices,get,ListDevicesResponse,Network Device Monitoring,network device monitoring,devices,list_devices,select,$.data,Get the list of devices +infrastructure.yaml,/api/v2/processes,ListProcesses,list_processes,get,ProcessSummariesResponse,Processes,processes,processes,list_processes,select,$.data,Get all processes +infrastructure.yaml,/api/v2/spa/recommendations/{service},GetSPARecommendations,get_sparecommendations,get,RecommendationDocument,Spa,spa,spa_recommendations,get_sparecommendations,select,$.data,Get SPA Recommendations +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id},GetAWSAccount,get_awsaccount,get,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,get_awsaccount,select,$.data,Get an AWS integration by config ID +integrations.yaml,/api/v2/integration/aws/accounts,ListAWSAccounts,list_awsaccounts,get,AWSAccountsResponse,AWS Integration,aws integration,aws_accounts,list_awsaccounts,select,$.data,List all AWS integrations +integrations.yaml,/api/v2/integration/aws/iam_permissions,GetAWSIntegrationIAMPermissions,get_awsintegration_iampermissions,get,AWSIntegrationIamPermissionsResponse,AWS Integration,aws integration,aws_iam_permissions,get_awsintegration_iampermissions,select,$.data,Get AWS integration IAM permissions +integrations.yaml,/api/v2/integration/aws/logs/services,ListAWSLogsServices,list_awslogs_services,get,AWSLogsServicesResponse,AWS Logs Integration,aws logs integration,aws_logs_services,list_awslogs_services,select,$.data,Get list of AWS log ready services +integrations.yaml,/api/v2/integration/aws/available_namespaces,ListAWSNamespaces,list_awsnamespaces,get,AWSNamespacesResponse,AWS Integration,aws integration,aws_namespaces,list_awsnamespaces,select,$.data,List available namespaces +integrations.yaml,/api/v2/integrations/cloudflare/accounts/{account_id},GetCloudflareAccount,get_cloudflare_account,get,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,get_cloudflare_account,select,$.data,Get Cloudflare account +integrations.yaml,/api/v2/integrations/cloudflare/accounts,ListCloudflareAccounts,list_cloudflare_accounts,get,CloudflareAccountsResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,list_cloudflare_accounts,select,$.data,List Cloudflare accounts +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id},GetConfluentAccount,get_confluent_account,get,ConfluentAccountResponse,Confluent Cloud,confluent cloud,confluent_accounts,get_confluent_account,select,$.data,Get Confluent account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts,ListConfluentAccount,list_confluent_account,get,ConfluentAccountsResponse,Confluent Cloud,confluent cloud,confluent_accounts,list_confluent_account,select,$.data,List Confluent accounts +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},GetConfluentResource,get_confluent_resource,get,ConfluentResourceResponse,Confluent Cloud,confluent cloud,confluent_resources,get_confluent_resource,select,$.data,Get resource from Confluent account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources,ListConfluentResource,list_confluent_resource,get,ConfluentResourcesResponse,Confluent Cloud,confluent cloud,confluent_resources,list_confluent_resource,select,$.data,List Confluent Account resources +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id},GetFastlyAccount,get_fastly_account,get,FastlyAccountResponse,Fastly Integration,fastly integration,fastly_accounts,get_fastly_account,select,$.data,Get Fastly account +integrations.yaml,/api/v2/integrations/fastly/accounts,ListFastlyAccounts,list_fastly_accounts,get,FastlyAccountsResponse,Fastly Integration,fastly integration,fastly_accounts,list_fastly_accounts,select,$.data,List Fastly accounts +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},GetFastlyService,get_fastly_service,get,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,get_fastly_service,select,$.data,Get Fastly service +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services,ListFastlyServices,list_fastly_services,get,FastlyServicesResponse,Fastly Integration,fastly integration,fastly_services,list_fastly_services,select,$.data,List Fastly services +integrations.yaml,/api/v2/integration/gcp/accounts,ListGCPSTSAccounts,list_gcpstsaccounts,get,GCPSTSServiceAccountsResponse,GCP Integration,gcp integration,gcp_accounts,list_gcpstsaccounts,select,$.data,List all GCP STS-enabled service accounts +integrations.yaml,/api/v2/integration/gcp/sts_delegate,GetGCPSTSDelegate,get_gcpstsdelegate,get,GCPSTSDelegateAccountResponse,GCP Integration,gcp integration,gcp_sts_delegate,get_gcpstsdelegate,select,$.data,List delegate account +integrations.yaml,/api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name},GetChannelByName,get_channel_by_name,get,MicrosoftTeamsGetChannelByNameResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_channels,get_channel_by_name,select,$.data,Get channel information by name +integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},GetTenantBasedHandle,get_tenant_based_handle,get,MicrosoftTeamsTenantBasedHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,get_tenant_based_handle,select,$.data,Get tenant-based handle information +integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles,ListTenantBasedHandles,list_tenant_based_handles,get,MicrosoftTeamsTenantBasedHandlesResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,list_tenant_based_handles,select,$.data,Get all tenant-based handles +integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},GetWorkflowsWebhookHandle,get_workflows_webhook_handle,get,MicrosoftTeamsWorkflowsWebhookHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,get_workflows_webhook_handle,select,$.data,Get Workflows webhook handle information +integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles,ListWorkflowsWebhookHandles,list_workflows_webhook_handles,get,MicrosoftTeamsWorkflowsWebhookHandlesResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,list_workflows_webhook_handles,select,$.data,Get all Workflows webhook handles +integrations.yaml,/api/v2/integrations/okta/accounts/{account_id},GetOktaAccount,get_okta_account,get,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,get_okta_account,select,$.data,Get Okta account +integrations.yaml,/api/v2/integrations/okta/accounts,ListOktaAccounts,list_okta_accounts,get,OktaAccountsResponse,Okta Integration,okta integration,okta_accounts,list_okta_accounts,select,$.data,List Okta accounts +integrations.yaml,/api/v2/integration/opsgenie/services/{integration_service_id},GetOpsgenieService,get_opsgenie_service,get,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,get_opsgenie_service,select,$.data,Get a single service object +integrations.yaml,/api/v2/integration/opsgenie/services,ListOpsgenieServices,list_opsgenie_services,get,OpsgenieServicesResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,list_opsgenie_services,select,$.data,Get all service objects +logs.yaml,/api/v2/logs/config/archive-order,GetLogsArchiveOrder,get_logs_archive_order,get,LogsArchiveOrder,Logs Archives,logs archives,archive_order,get_logs_archive_order,select,$.data,Get archive order +logs.yaml,/api/v2/logs/config/archives/{archive_id}/readers,ListArchiveReadRoles,list_archive_read_roles,get,RolesResponse,Logs Archives,logs archives,archive_read_roles,list_archive_read_roles,select,$.data,List read roles for an archive +logs.yaml,/api/v2/logs/config/archives/{archive_id},GetLogsArchive,get_logs_archive,get,LogsArchive,Logs Archives,logs archives,archives,get_logs_archive,select,$.data,Get an archive +logs.yaml,/api/v2/logs/config/archives,ListLogsArchives,list_logs_archives,get,LogsArchives,Logs Archives,logs archives,archives,list_logs_archives,select,$.data,Get all archives +logs.yaml,/api/v2/logs/config/custom-destinations/{custom_destination_id},GetLogsCustomDestination,get_logs_custom_destination,get,CustomDestinationResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,get_logs_custom_destination,select,$.data,Get a custom destination +logs.yaml,/api/v2/logs/config/custom-destinations,ListLogsCustomDestinations,list_logs_custom_destinations,get,CustomDestinationsResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,list_logs_custom_destinations,select,$.data,Get all custom destinations +logs.yaml,/api/v2/logs/events,ListLogsGet,list_logs_get,get,LogsListResponse,Logs,logs,logs,list_logs_get,select,$.data,Search logs (GET) +logs.yaml,/api/v2/logs/config/metrics/{metric_id},GetLogsMetric,get_logs_metric,get,LogsMetricResponse,Logs Metrics,logs metrics,metrics,get_logs_metric,select,$.data,Get a log-based metric +logs.yaml,/api/v2/logs/config/metrics,ListLogsMetrics,list_logs_metrics,get,LogsMetricsResponse,Logs Metrics,logs metrics,metrics,list_logs_metrics,select,$.data,Get all log-based metrics +metrics.yaml,/api/v2/metrics/{metric_name}/active-configurations,ListActiveMetricConfigurations,list_active_metric_configurations,get,MetricSuggestedTagsAndAggregationsResponse,Metrics,metrics,active_tag_configurations,list_active_metric_configurations,select,$.data,List active tags and aggregations +metrics.yaml,/api/v2/datasets,GetAllDatasets,get_all_datasets,get,DatasetResponseMulti,Datasets,datasets,datasets,get_all_datasets,select,$.data,Get all datasets +metrics.yaml,/api/v2/datasets/{dataset_id},GetDataset,get_dataset,get,DatasetResponseSingle,Datasets,datasets,datasets,get_dataset,select,$.data,Get a single dataset by ID +metrics.yaml,/api/v2/metrics/{metric_name}/estimate,EstimateMetricsOutputSeries,estimate_metrics_output_series,get,MetricEstimateResponse,Metrics,metrics,metrics_output_series,estimate_metrics_output_series,select,$.data,Tag Configuration Cardinality Estimator +metrics.yaml,/api/v2/metrics/{metric_name}/assets,ListMetricAssets,list_metric_assets,get,MetricAssetsResponse,Metrics,metrics,related_assets,list_metric_assets,select,$.data,Related Assets to a Metric +metrics.yaml,/api/v2/spans/events,ListSpansGet,list_spans_get,get,SpansListResponse,Spans,spans,spans,list_spans_get,select,$.data,Get a list of spans +metrics.yaml,/api/v2/metrics/{metric_name}/tag-cardinalities,GetMetricTagCardinalityDetails,get_metric_tag_cardinality_details,get,MetricTagCardinalitiesResponse,Metrics,metrics,tag_cardinality_details,get_metric_tag_cardinality_details,select,$.data,Get tag key cardinality details +metrics.yaml,/api/v2/metrics/{metric_name}/tags,ListTagConfigurationByName,list_tag_configuration_by_name,get,MetricTagConfigurationResponse,Metrics,metrics,tag_configurations,list_tag_configuration_by_name,select,$.data,List tag configuration by name +metrics.yaml,/api/v2/metrics,ListTagConfigurations,list_tag_configurations,get,MetricsAndMetricTagConfigurationsResponse,Metrics,metrics,tag_configurations,list_tag_configurations,select,$.data,Get a list of metrics +metrics.yaml,/api/v2/metrics/{metric_name}/all-tags,ListTagsByMetricName,list_tags_by_metric_name,get,MetricAllTagsResponse,Metrics,metrics,tags,list_tags_by_metric_name,select,$.data,List tags by metric name +metrics.yaml,/api/v2/metrics/{metric_name}/volumes,ListVolumesByMetricName,list_volumes_by_metric_name,get,MetricVolumesResponse,Metrics,metrics,volumes,list_volumes_by_metric_name,select,$.data,List distinct metric volumes by metric name +monitoring.yaml,/api/v2/monitor/policy/{policy_id},GetMonitorConfigPolicy,get_monitor_config_policy,get,MonitorConfigPolicyResponse,Monitors,monitors,config_policies,get_monitor_config_policy,select,$.data,Get a monitor configuration policy +monitoring.yaml,/api/v2/monitor/policy,ListMonitorConfigPolicies,list_monitor_config_policies,get,MonitorConfigPolicyListResponse,Monitors,monitors,config_policies,list_monitor_config_policies,select,$.data,Get all monitor configuration policies +monitoring.yaml,/api/v2/monitor/{monitor_id}/downtime_matches,ListMonitorDowntimes,list_monitor_downtimes,get,MonitorDowntimeMatchResponse,Downtimes,downtimes,downtimes,list_monitor_downtimes,select,$.data,Get active downtimes for a monitor +monitoring.yaml,/api/v2/monitor/notification_rule/{rule_id},GetMonitorNotificationRule,get_monitor_notification_rule,get,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,get_monitor_notification_rule,select,$.data,Get a monitor notification rule +monitoring.yaml,/api/v2/monitor/notification_rule,GetMonitorNotificationRules,get_monitor_notification_rules,get,MonitorNotificationRuleListResponse,Monitors,monitors,notification_rules,get_monitor_notification_rules,select,$.data,Get all monitor notification rules +monitoring.yaml,/api/v2/synthetics/settings/on_demand_concurrency_cap,GetOnDemandConcurrencyCap,get_on_demand_concurrency_cap,get,OnDemandConcurrencyCapResponse,Synthetics,synthetics,on_demand_concurrency_cap,get_on_demand_concurrency_cap,select,$.data,Get the on-demand concurrency cap +monitoring.yaml,/api/v2/monitor/template/{template_id},GetMonitorUserTemplate,get_monitor_user_template,get,MonitorUserTemplateResponse,Monitors,monitors,user_templates,get_monitor_user_template,select,$.data,Get a monitor user template +monitoring.yaml,/api/v2/monitor/template,ListMonitorUserTemplates,list_monitor_user_templates,get,MonitorUserTemplateListResponse,Monitors,monitors,user_templates,list_monitor_user_templates,select,$.data,Get all monitor user templates +organization.yaml,/api/v2/api_keys/{api_key_id},GetAPIKey,get_apikey,get,APIKeyResponse,Key Management,key management,api_keys,get_apikey,select,$.data,Get API key +organization.yaml,/api/v2/api_keys,ListAPIKeys,list_apikeys,get,APIKeysResponse,Key Management,key management,api_keys,list_apikeys,select,$.data,Get all API keys +organization.yaml,/api/v2/application_keys/{app_key_id},GetApplicationKey,get_application_key,get,ApplicationKeyResponse,Key Management,key management,application_keys,get_application_key,select,$.data,Get an application key +organization.yaml,/api/v2/application_keys,ListApplicationKeys,list_application_keys,get,ListApplicationKeysResponse,Key Management,key management,application_keys,list_application_keys,select,$.data,Get all application keys +organization.yaml,/api/v2/audit/events,ListAuditLogs,list_audit_logs,get,AuditLogsEventsResponse,Audit,audit,audit_logs,list_audit_logs,select,$.data,Get a list of Audit Logs events +organization.yaml,/api/v2/authn_mappings/{authn_mapping_id},GetAuthNMapping,get_auth_nmapping,get,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,get_auth_nmapping,select,$.data,Get an AuthN Mapping by UUID +organization.yaml,/api/v2/authn_mappings,ListAuthNMappings,list_auth_nmappings,get,AuthNMappingsResponse,AuthN Mappings,auth_n mappings,authn_mappings,list_auth_nmappings,select,$.data,List all AuthN Mappings +organization.yaml,/api/v2/usage/billing_dimension_mapping,GetBillingDimensionMapping,get_billing_dimension_mapping,get,,Usage Metering,usage metering,billing_dimension_mapping,get_billing_dimension_mapping,select,$.data,Get billing dimension mapping for usage endpoints +organization.yaml,/api/v2/org_configs/{org_config_name},GetOrgConfig,get_org_config,get,OrgConfigGetResponse,Organizations,organizations,configs,get_org_config,select,$.data,Get a specific Org Config value +organization.yaml,/api/v2/org_configs,ListOrgConfigs,list_org_configs,get,OrgConfigListResponse,Organizations,organizations,configs,list_org_configs,select,$.data,List Org Configs +organization.yaml,/api/v2/org_connections,ListOrgConnections,list_org_connections,get,OrgConnectionListResponse,Org Connections,org connections,connections,list_org_connections,select,$.data,List Org Connections +organization.yaml,/api/v2/usage/cost_by_org,GetCostByOrg,get_cost_by_org,get,,Usage Metering,usage metering,skip_this_resource,,,,Get cost across multi-org account +organization.yaml,/api/v2/current_user/application_keys/{app_key_id},GetCurrentUserApplicationKey,get_current_user_application_key,get,ApplicationKeyResponse,Key Management,key management,current_user_application_keys,get_current_user_application_key,select,$.data,Get one application key owned by current user +organization.yaml,/api/v2/current_user/application_keys,ListCurrentUserApplicationKeys,list_current_user_application_keys,get,ListApplicationKeysResponse,Key Management,key management,current_user_application_keys,list_current_user_application_keys,select,$.data,Get all application keys owned by current user +organization.yaml,/api/v2/deletion/requests,GetDataDeletionRequests,get_data_deletion_requests,get,GetDataDeletionsResponseBody,Data Deletion,data deletion,data_deletion_requests,get_data_deletion_requests,select,$.data,Gets a list of data deletion requests +organization.yaml,/api/v2/domain_allowlist,GetDomainAllowlist,get_domain_allowlist,get,DomainAllowlistResponse,Domain Allowlist,domain allowlist,domain_allowlist,get_domain_allowlist,select,$.data,Get Domain Allowlist +organization.yaml,/api/v2/usage/estimated_cost,GetEstimatedCostByOrg,get_estimated_cost_by_org,get,,Usage Metering,usage metering,estimated_cost_by_org,get_estimated_cost_by_org,select,$.data,Get estimated cost across your account +organization.yaml,/api/v2/usage/historical_cost,GetHistoricalCostByOrg,get_historical_cost_by_org,get,,Usage Metering,usage metering,historical_cost_by_org,get_historical_cost_by_org,select,$.data,Get historical cost across your account +organization.yaml,/api/v2/usage/hourly_usage,GetHourlyUsage,get_hourly_usage,get,,Usage Metering,usage metering,hourly_usage,get_hourly_usage,select,$.data,Get hourly usage by product family +organization.yaml,/api/v2/user_invitations/{user_invitation_uuid},GetInvitation,get_invitation,get,UserInvitationResponse,Users,users,invitations,get_invitation,select,$.data,Get a user invitation +organization.yaml,/api/v2/ip_allowlist,GetIPAllowlist,get_ipallowlist,get,IPAllowlistResponse,IP Allowlist,ip allowlist,ip_allowlist,get_ipallowlist,select,$.data,Get IP Allowlist +organization.yaml,/api/v2/usage/lambda_traced_invocations,GetUsageLambdaTracedInvocations,get_usage_lambda_traced_invocations,get,,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for Lambda traced invocations +organization.yaml,/api/v2/usage/observability_pipelines,GetUsageObservabilityPipelines,get_usage_observability_pipelines,get,,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for observability pipelines +organization.yaml,/api/v2/permissions,ListPermissions,list_permissions,get,PermissionsResponse,Roles,roles,permissions,list_permissions,select,$.data,List permissions +organization.yaml,/api/v2/usage/projected_cost,GetProjectedCost,get_projected_cost,get,,Usage Metering,usage metering,projected_cost,get_projected_cost,select,$.data,Get projected cost across your account +organization.yaml,/api/v2/restriction_policy/{resource_id},GetRestrictionPolicy,get_restriction_policy,get,RestrictionPolicyResponse,Restriction Policies,restriction policies,restriction_policies,get_restriction_policy,select,$.data,Get a restriction policy +organization.yaml,/api/v2/roles/{role_id}/permissions,ListRolePermissions,list_role_permissions,get,PermissionsResponse,Roles,roles,role_permissions,list_role_permissions,select,$.data,List permissions for a role +organization.yaml,/api/v2/roles/{role_id}/users,ListRoleUsers,list_role_users,get,UsersResponse,Roles,roles,role_users,list_role_users,select,$.data,Get all users of a role +organization.yaml,/api/v2/roles/{role_id},GetRole,get_role,get,RoleResponse,Roles,roles,roles,get_role,select,$.data,Get a role +organization.yaml,/api/v2/roles,ListRoles,list_roles,get,RolesResponse,Roles,roles,roles,list_roles,select,$.data,List roles +organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},GetServiceAccountApplicationKey,get_service_account_application_key,get,PartialApplicationKeyResponse,Service Accounts,service accounts,service_account_keys,get_service_account_application_key,select,$.data,Get one application key for this service account +organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys,ListServiceAccountApplicationKeys,list_service_account_application_keys,get,ListApplicationKeysResponse,Service Accounts,service accounts,service_account_keys,list_service_account_application_keys,select,$.data,List application keys for this service account +organization.yaml,/api/v2/team/{team_id}/links/{link_id},GetTeamLink,get_team_link,get,TeamLinkResponse,Teams,teams,team_links,get_team_link,select,$.data,Get a team link +organization.yaml,/api/v2/team/{team_id}/links,GetTeamLinks,get_team_links,get,TeamLinksResponse,Teams,teams,team_links,get_team_links,select,$.data,Get links for a team +organization.yaml,/api/v2/team/{super_team_id}/member_teams,ListMemberTeams,list_member_teams,get,TeamsResponse,Teams,teams,skip_this_resource,,,,Get all member teams +organization.yaml,/api/v2/team/{team_id}/memberships,GetTeamMemberships,get_team_memberships,get,UserTeamsResponse,Teams,teams,team_memberships,get_team_memberships,select,$.data,Get team memberships +organization.yaml,/api/v2/team/{team_id}/permission-settings,GetTeamPermissionSettings,get_team_permission_settings,get,TeamPermissionSettingsResponse,Teams,teams,team_permission_settings,get_team_permission_settings,select,$.data,Get permission settings for a team +organization.yaml,/api/v2/team/{team_id},GetTeam,get_team,get,TeamResponse,Teams,teams,teams,get_team,select,$.data,Get a team +organization.yaml,/api/v2/team,ListTeams,list_teams,get,TeamsResponse,Teams,teams,teams,list_teams,select,$.data,Get all teams +organization.yaml,/api/v2/usage/application_security,GetUsageApplicationSecurityMonitoring,get_usage_application_security_monitoring,get,,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for application security +organization.yaml,/api/v2/users/{user_id}/orgs,ListUserOrganizations,list_user_organizations,get,UserResponse,Users,users,user_organizations,list_user_organizations,select,$.data,Get a user organization +organization.yaml,/api/v2/users/{user_id}/permissions,ListUserPermissions,list_user_permissions,get,PermissionsResponse,Users,users,user_permissions,list_user_permissions,select,$.data,Get a user permissions +organization.yaml,/api/v2/users/{user_uuid}/memberships,GetUserMemberships,get_user_memberships,get,UserTeamsResponse,Teams,teams,user_team_memberships,get_user_memberships,select,$.data,Get user memberships +organization.yaml,/api/v2/users/{user_id},GetUser,get_user,get,UserResponse,Users,users,users,get_user,select,$.data,Get user details +organization.yaml,/api/v2/users,ListUsers,list_users,get,UsersResponse,Users,users,users,list_users,select,$.data,List all users +remote_config.yaml,/api/v2/remote_config/products/cws/policy/{policy_id},GetCSMThreatsAgentPolicy,get_csmthreats_agent_policy,get,CloudWorkloadSecurityAgentPolicyResponse,CSM Threats,csm threats,csm_threats_agent_policies,get_csmthreats_agent_policy,select,$.data,Get a Workload Protection policy +remote_config.yaml,/api/v2/remote_config/products/cws/policy,ListCSMThreatsAgentPolicies,list_csmthreats_agent_policies,get,CloudWorkloadSecurityAgentPoliciesListResponse,CSM Threats,csm threats,csm_threats_agent_policies,list_csmthreats_agent_policies,select,$.data,Get all Workload Protection policies +remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},GetCSMThreatsAgentRule,get_csmthreats_agent_rule,get,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,csm_threats_agent_rules,get_csmthreats_agent_rule,select,$.data,Get a Workload Protection agent rule +remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules,ListCSMThreatsAgentRules,list_csmthreats_agent_rules,get,CloudWorkloadSecurityAgentRulesListResponse,CSM Threats,csm threats,csm_threats_agent_rules,list_csmthreats_agent_rules,select,$.data,Get all Workload Protection agent rules +remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},GetApplicationSecurityWafCustomRule,get_application_security_waf_custom_rule,get,ApplicationSecurityWafCustomRuleResponse,Application Security,application security,waf_custom_rules,get_application_security_waf_custom_rule,select,$.data,Get a WAF custom rule +remote_config.yaml,/api/v2/remote_config/products/asm/waf/custom_rules,ListApplicationSecurityWAFCustomRules,list_application_security_wafcustom_rules,get,ApplicationSecurityWafCustomRuleListResponse,Application Security,application security,waf_custom_rules,list_application_security_wafcustom_rules,select,$.data,List all WAF custom rules +remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},GetApplicationSecurityWafExclusionFilter,get_application_security_waf_exclusion_filter,get,ApplicationSecurityWafExclusionFilterResponse,Application Security,application security,waf_exclusion_filters,get_application_security_waf_exclusion_filter,select,$.data,Get a WAF exclusion filter +remote_config.yaml,/api/v2/remote_config/products/asm/waf/exclusion_filters,ListApplicationSecurityWafExclusionFilters,list_application_security_waf_exclusion_filters,get,ApplicationSecurityWafExclusionFiltersResponse,Application Security,application security,waf_exclusion_filters,list_application_security_waf_exclusion_filters,select,$.data,List all WAF exclusion filters +security.yaml,/api/v2/agentless_scanning/ondemand/aws/{task_id},GetAwsOnDemandTask,get_aws_on_demand_task,get,AwsOnDemandResponse,Agentless Scanning,agentless scanning,aws_on_demand_tasks,get_aws_on_demand_task,select,$.data,Get AWS On Demand task by id +security.yaml,/api/v2/agentless_scanning/ondemand/aws,ListAwsOnDemandTasks,list_aws_on_demand_tasks,get,AwsOnDemandListResponse,Agentless Scanning,agentless scanning,aws_on_demand_tasks,list_aws_on_demand_tasks,select,$.data,Get AWS On Demand tasks +security.yaml,/api/v2/agentless_scanning/accounts/aws/{account_id},GetAwsScanOptions,get_aws_scan_options,get,AwsScanOptionsResponse,Agentless Scanning,agentless scanning,aws_scan_options,get_aws_scan_options,select,$.data,Get AWS scan options +security.yaml,/api/v2/agentless_scanning/accounts/aws,ListAwsScanOptions,list_aws_scan_options,get,AwsScanOptionsListResponse,Agentless Scanning,agentless scanning,aws_scan_options,list_aws_scan_options,select,$.data,List AWS Scan Options +security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},GetCloudWorkloadSecurityAgentRule,get_cloud_workload_security_agent_rule,get,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,get_cloud_workload_security_agent_rule,select,$.data,Get a Workload Protection agent rule (US1-FED) +security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules,ListCloudWorkloadSecurityAgentRules,list_cloud_workload_security_agent_rules,get,CloudWorkloadSecurityAgentRulesListResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,list_cloud_workload_security_agent_rules,select,$.data,Get all Workload Protection agent rules (US1-FED) +security.yaml,/api/v2/csm/onboarding/agents,ListAllCSMAgents,list_all_csmagents,get,CsmAgentsResponse,CSM Agents,csm agents,csm_agents,list_all_csmagents,select,$.data,Get all CSM Agents +security.yaml,/api/v2/csm/onboarding/coverage_analysis/cloud_accounts,GetCSMCloudAccountsCoverageAnalysis,get_csmcloud_accounts_coverage_analysis,get,CsmCloudAccountsCoverageAnalysisResponse,CSM Coverage Analysis,csm coverage analysis,csm_cloud_accounts_coverage_analysis,get_csmcloud_accounts_coverage_analysis,select,$.data,Get the CSM Cloud Accounts Coverage Analysis +security.yaml,/api/v2/csm/onboarding/coverage_analysis/hosts_and_containers,GetCSMHostsAndContainersCoverageAnalysis,get_csmhosts_and_containers_coverage_analysis,get,CsmHostsAndContainersCoverageAnalysisResponse,CSM Coverage Analysis,csm coverage analysis,csm_hosts_and_containers_coverage_analysis,get_csmhosts_and_containers_coverage_analysis,select,$.data,Get the CSM Hosts and Containers Coverage Analysis +security.yaml,/api/v2/csm/onboarding/serverless/agents,ListAllCSMServerlessAgents,list_all_csmserverless_agents,get,CsmAgentsResponse,CSM Agents,csm agents,csm_serverless_agents,list_all_csmserverless_agents,select,$.data,Get all CSM Serverless Agents +security.yaml,/api/v2/csm/onboarding/coverage_analysis/serverless,GetCSMServerlessCoverageAnalysis,get_csmserverless_coverage_analysis,get,CsmServerlessCoverageAnalysisResponse,CSM Coverage Analysis,csm coverage analysis,csm_serverless_coverage_analysis,get_csmserverless_coverage_analysis,select,$.data,Get the CSM Serverless Coverage Analysis +security.yaml,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},GetCustomFramework,get_custom_framework,get,GetCustomFrameworkResponse,Security Monitoring,security monitoring,custom_frameworks,get_custom_framework,select,$.data,Get a custom framework +security.yaml,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},GetSecurityFilter,get_security_filter,get,SecurityFilterResponse,Security Monitoring,security monitoring,filters,get_security_filter,select,$.data,Get a security filter +security.yaml,/api/v2/security_monitoring/configuration/security_filters,ListSecurityFilters,list_security_filters,get,SecurityFiltersResponse,Security Monitoring,security monitoring,filters,list_security_filters,select,$.data,Get all security filters +security.yaml,/api/v2/posture_management/findings/{finding_id},GetFinding,get_finding,get,GetFindingResponse,Security Monitoring,security monitoring,findings,get_finding,select,$.data,Get a finding +security.yaml,/api/v2/posture_management/findings,ListFindings,list_findings,get,ListFindingsResponse,Security Monitoring,security monitoring,findings,list_findings,select,$.data,List findings +security.yaml,/api/v2/siem-historical-detections/jobs/{job_id},GetHistoricalJob,get_historical_job,get,HistoricalJobResponse,Security Monitoring,security monitoring,historical_jobs,get_historical_job,select,$.data,Get a job's details +security.yaml,/api/v2/siem-historical-detections/jobs,ListHistoricalJobs,list_historical_jobs,get,ListHistoricalJobsResponse,Security Monitoring,security monitoring,historical_jobs,list_historical_jobs,select,$.data,List historical jobs +security.yaml,/api/v2/siem-historical-detections/histsignals/{histsignal_id},GetSecurityMonitoringHistsignal,get_security_monitoring_histsignal,get,SecurityMonitoringSignalResponse,Security Monitoring,security monitoring,monitoring_hist_signals,get_security_monitoring_histsignal,select,$.data,Get a hist signal's details +security.yaml,/api/v2/siem-historical-detections/jobs/{job_id}/histsignals,GetSecurityMonitoringHistsignalsByJobId,get_security_monitoring_histsignals_by_job_id,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_hist_signals,get_security_monitoring_histsignals_by_job_id,select,$.data,Get a job's hist signals +security.yaml,/api/v2/siem-historical-detections/histsignals,ListSecurityMonitoringHistsignals,list_security_monitoring_histsignals,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_hist_signals,list_security_monitoring_histsignals,select,$.data,List hist signals +security.yaml,/api/v2/security_monitoring/rules/{rule_id},GetSecurityMonitoringRule,get_security_monitoring_rule,get,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,get_security_monitoring_rule,select,,Get a rule's details +security.yaml,/api/v2/security_monitoring/rules,ListSecurityMonitoringRules,list_security_monitoring_rules,get,SecurityMonitoringListRulesResponse,Security Monitoring,security monitoring,monitoring_rules,list_security_monitoring_rules,select,$.data,List rules +security.yaml,/api/v2/security_monitoring/signals/{signal_id},GetSecurityMonitoringSignal,get_security_monitoring_signal,get,SecurityMonitoringSignalResponse,Security Monitoring,security monitoring,monitoring_signals,get_security_monitoring_signal,select,$.data,Get a signal's details +security.yaml,/api/v2/security_monitoring/signals,ListSecurityMonitoringSignals,list_security_monitoring_signals,get,SecurityMonitoringSignalsListResponse,Security Monitoring,security monitoring,monitoring_signals,list_security_monitoring_signals,select,$.data,Get a quick list of security signals +security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},GetSecurityMonitoringSuppression,get_security_monitoring_suppression,get,SecurityMonitoringSuppressionResponse,Security Monitoring,security monitoring,monitoring_suppressions,get_security_monitoring_suppression,select,$.data,Get a suppression rule +security.yaml,/api/v2/security_monitoring/configuration/suppressions,ListSecurityMonitoringSuppressions,list_security_monitoring_suppressions,get,SecurityMonitoringSuppressionsResponse,Security Monitoring,security monitoring,monitoring_suppressions,list_security_monitoring_suppressions,select,$.data,Get all suppression rules +security.yaml,/api/v2/cloud_security_management/resource_filters,GetResourceEvaluationFilters,get_resource_evaluation_filters,get,GetResourceEvaluationFiltersResponse,Security Monitoring,security monitoring,resource_evaluation_filters,get_resource_evaluation_filters,select,$.data,List resource filters +security.yaml,/api/v2/security_monitoring/rules/{rule_id}/version_history,GetRuleVersionHistory,get_rule_version_history,get,GetRuleVersionHistoryResponse,Security Monitoring,security monitoring,rule_version_history,get_rule_version_history,select,$.data,Get a rule's version history +security.yaml,/api/v2/security/sboms/{asset_type},GetSBOM,get_sbom,get,GetSBOMResponse,Security Monitoring,security monitoring,sboms,get_sbom,select,$.data,Get SBOM +security.yaml,/api/v2/security/sboms,ListAssetsSBOMs,list_assets_sboms,get,ListAssetsSBOMsResponse,Security Monitoring,security monitoring,sboms,list_assets_sboms,select,$.data,List assets SBOMs +security.yaml,/api/v2/sensitive-data-scanner/config,ListScanningGroups,list_scanning_groups,get,SensitiveDataScannerGetConfigResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,list_scanning_groups,select,$.data,List Scanning Groups +security.yaml,/api/v2/security/signals/notification_rules/{id},GetSignalNotificationRule,get_signal_notification_rule,get,NotificationRuleResponse,Security Monitoring,security monitoring,signal_notification_rules,get_signal_notification_rule,select,$.data,Get details of a signal-based notification rule +security.yaml,/api/v2/security/signals/notification_rules,GetSignalNotificationRules,get_signal_notification_rules,get,,Security Monitoring,security monitoring,signal_notification_rules,get_signal_notification_rules,select,$.data,Get the list of signal-based notification rules +security.yaml,/api/v2/sensitive-data-scanner/config/standard-patterns,ListStandardPatterns,list_standard_patterns,get,SensitiveDataScannerStandardPatternsResponseData,Sensitive Data Scanner,sensitive data scanner,standard_patterns,list_standard_patterns,select,$.data,List standard patterns +security.yaml,/api/v2/security_monitoring/configuration/suppressions/rules/{rule_id},GetSuppressionsAffectingRule,get_suppressions_affecting_rule,get,SecurityMonitoringSuppressionsResponse,Security Monitoring,security monitoring,suppressions_affecting_rule,get_suppressions_affecting_rule,select,$.data,Get suppressions affecting a specific rule +security.yaml,/api/v2/security/vulnerabilities,ListVulnerabilities,list_vulnerabilities,get,ListVulnerabilitiesResponse,Security Monitoring,security monitoring,vulnerabilities,list_vulnerabilities,select,$.data,List vulnerabilities +security.yaml,/api/v2/security/vulnerabilities/notification_rules/{id},GetVulnerabilityNotificationRule,get_vulnerability_notification_rule,get,NotificationRuleResponse,Security Monitoring,security monitoring,vulnerability_notification_rules,get_vulnerability_notification_rule,select,$.data,Get details of a vulnerability notification rule +security.yaml,/api/v2/security/vulnerabilities/notification_rules,GetVulnerabilityNotificationRules,get_vulnerability_notification_rules,get,,Security Monitoring,security monitoring,vulnerability_notification_rules,get_vulnerability_notification_rules,select,$.data,Get the list of vulnerability notification rules +security.yaml,/api/v2/security/vulnerable-assets,ListVulnerableAssets,list_vulnerable_assets,get,ListVulnerableAssetsResponse,Security Monitoring,security monitoring,vulnerable_assets,list_vulnerable_assets,select,$.data,List vulnerable assets +service_management.yaml,/api/v2/cases/{case_id},GetCase,get_case,get,CaseResponse,Case Management,case management,cases,get_case,select,$.data,Get the details of a case +service_management.yaml,/api/v2/downtime/{downtime_id},GetDowntime,get_downtime,get,DowntimeResponse,Downtimes,downtimes,downtimes,get_downtime,select,$.data,Get a downtime +service_management.yaml,/api/v2/downtime,ListDowntimes,list_downtimes,get,ListDowntimesResponse,Downtimes,downtimes,downtimes,list_downtimes,select,$.data,Get all downtimes +service_management.yaml,/api/v2/events/{event_id},GetEvent,get_event,get,V2EventResponse,Events,events,events,get_event,select,$.data,Get an event +service_management.yaml,/api/v2/events,ListEvents,list_events,get,EventsListResponse,Events,events,events,list_events,select,$.data,Get a list of events +service_management.yaml,/api/v2/incidents/{incident_id}/attachments,ListIncidentAttachments,list_incident_attachments,get,IncidentAttachmentsResponse,Incidents,incidents,incident_attachments,list_incident_attachments,select,$.data,Get a list of attachments +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},GetIncidentIntegration,get_incident_integration,get,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,get_incident_integration,select,$.data,Get incident integration metadata details +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations,ListIncidentIntegrations,list_incident_integrations,get,IncidentIntegrationMetadataListResponse,Incidents,incidents,incident_integrations,list_incident_integrations,select,$.data,Get a list of an incident's integration metadata +service_management.yaml,/api/v2/incidents/config/notification-rules/{id},GetIncidentNotificationRule,get_incident_notification_rule,get,IncidentNotificationRule,Incidents,incidents,incident_notification_rules,get_incident_notification_rule,select,$.data,Get an incident notification rule +service_management.yaml,/api/v2/incidents/config/notification-rules,ListIncidentNotificationRules,list_incident_notification_rules,get,IncidentNotificationRuleArray,Incidents,incidents,incident_notification_rules,list_incident_notification_rules,select,$.data,List incident notification rules +service_management.yaml,/api/v2/incidents/config/notification-templates/{id},GetIncidentNotificationTemplate,get_incident_notification_template,get,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,get_incident_notification_template,select,$.data,Get incident notification template +service_management.yaml,/api/v2/incidents/config/notification-templates,ListIncidentNotificationTemplates,list_incident_notification_templates,get,IncidentNotificationTemplateArray,Incidents,incidents,incident_notification_templates,list_incident_notification_templates,select,$.data,List incident notification templates +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},GetIncidentTodo,get_incident_todo,get,IncidentTodoResponse,Incidents,incidents,incident_todos,get_incident_todo,select,$.data,Get incident todo details +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos,ListIncidentTodos,list_incident_todos,get,IncidentTodoListResponse,Incidents,incidents,incident_todos,list_incident_todos,select,$.data,Get a list of an incident's todos +service_management.yaml,/api/v2/incidents/config/types/{incident_type_id},GetIncidentType,get_incident_type,get,IncidentTypeResponse,Incidents,incidents,incident_types,get_incident_type,select,$.data,Get incident type details +service_management.yaml,/api/v2/incidents/config/types,ListIncidentTypes,list_incident_types,get,IncidentTypeListResponse,Incidents,incidents,incident_types,list_incident_types,select,$.data,Get a list of incident types +service_management.yaml,/api/v2/incidents/{incident_id},GetIncident,get_incident,get,IncidentResponse,Incidents,incidents,incidents,get_incident,select,$.data,Get the details of an incident +service_management.yaml,/api/v2/incidents,ListIncidents,list_incidents,get,IncidentsResponse,Incidents,incidents,incidents,list_incidents,select,$.data,Get a list of incidents +service_management.yaml,/api/v2/incidents/search,SearchIncidents,search_incidents,get,IncidentSearchResponse,Incidents,incidents,incidents,search_incidents,select,$.data,Search for incidents +service_management.yaml,/api/v2/error-tracking/issues/{issue_id},GetIssue,get_issue,get,IssueResponse,Error Tracking,error tracking,issues,get_issue,select,$.data,Get the details of an error tracking issue +service_management.yaml,/api/v2/on-call/escalation-policies/{policy_id},GetOnCallEscalationPolicy,get_on_call_escalation_policy,get,EscalationPolicy,On-Call,on_call,on_call_escalation_policies,get_on_call_escalation_policy,select,$.data,Get On-Call escalation policy +service_management.yaml,/api/v2/on-call/schedules/{schedule_id},GetOnCallSchedule,get_on_call_schedule,get,Schedule,On-Call,on_call,on_call_schedule,get_on_call_schedule,select,$.data,Get On-Call schedule +service_management.yaml,/api/v2/on-call/teams/{team_id}/routing-rules,GetOnCallTeamRoutingRules,get_on_call_team_routing_rules,get,TeamRoutingRules,On-Call,on_call,on_call_team_routing_rules,get_on_call_team_routing_rules,select,$.data,Get On-Call team routing rules +service_management.yaml,/api/v2/on-call/schedules/{schedule_id}/on-call,GetScheduleOnCallUser,get_schedule_on_call_user,get,Shift,On-Call,on_call,skip_this_resource,,,,Get the schedule on-call user +service_management.yaml,/api/v2/cases/projects/{project_id},GetProject,get_project,get,ProjectResponse,Case Management,case management,projects,get_project,select,$.data,Get the details of a project +service_management.yaml,/api/v2/cases/projects,GetProjects,get_projects,get,ProjectsResponse,Case Management,case management,projects,get_projects,select,$.data,Get all projects +service_management.yaml,/api/v2/services/definitions/{service_name},GetServiceDefinition,get_service_definition,get,ServiceDefinitionGetResponse,Service Definition,service definition,service_definitions,get_service_definition,select,$.data,Get a single service definition +service_management.yaml,/api/v2/services/definitions,ListServiceDefinitions,list_service_definitions,get,ServiceDefinitionsListResponse,Service Definition,service definition,service_definitions,list_service_definitions,select,$.data,Get all service definitions +service_management.yaml,/api/v2/slo/report/{report_id}/status,GetSLOReportJobStatus,get_sloreport_job_status,get,SLOReportStatusGetResponse,Service Level Objectives,service level objectives,skip_this_resource,,,,Get SLO report status +service_management.yaml,/api/v2/on-call/teams/{team_id}/on-call,GetTeamOnCallUsers,get_team_on_call_users,get,TeamOnCallResponders,On-Call,on_call,team_on_call_users,get_team_on_call_users,select,$.data,Get team on-call users +software_delivery.yaml,/api/v2/ci/pipelines/events,ListCIAppPipelineEvents,list_ciapp_pipeline_events,get,CIAppPipelineEventsResponse,CI Visibility Pipelines,ci visibility pipelines,ci_app_pipeline_events,list_ciapp_pipeline_events,select,$.data,Get a list of pipelines events +software_delivery.yaml,/api/v2/ci/tests/events,ListCIAppTestEvents,list_ciapp_test_events,get,CIAppTestEventsResponse,CI Visibility Tests,ci visibility tests,ci_app_test_events,list_ciapp_test_events,select,$.data,Get a list of tests events +software_delivery.yaml,/api/v2/dora/deployments/{deployment_id},GetDORADeployment,get_doradeployment,get,DORAFetchResponse,DORA Metrics,dora metrics,dora_deployments,get_doradeployment,select,$.data,Get a deployment event +software_delivery.yaml,/api/v2/dora/deployments,ListDORADeployments,list_doradeployments,post,DORAListResponse,DORA Metrics,dora metrics,dora_deployments,list_doradeployments,select,$.data,Get a list of deployment events +software_delivery.yaml,/api/v2/dora/failures/{failure_id},GetDORAFailure,get_dorafailure,get,DORAFetchResponse,DORA Metrics,dora metrics,dora_failures,get_dorafailure,select,$.data,Get a failure event +software_delivery.yaml,/api/v2/dora/failures,ListDORAFailures,list_dorafailures,post,DORAListResponse,DORA Metrics,dora metrics,dora_failures,list_dorafailures,select,$.data,Get a list of failure events +software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances/{instance_id},GetWorkflowInstance,get_workflow_instance,get,WorklflowGetInstanceResponse,Workflow Automation,workflow automation,workflow_instances,get_workflow_instance,select,$.data,Get a workflow instance +software_delivery.yaml,/api/v2/workflows/{workflow_id}/instances,ListWorkflowInstances,list_workflow_instances,get,WorkflowListInstancesResponse,Workflow Automation,workflow automation,workflow_instances,list_workflow_instances,select,$.data,List workflow instances +software_delivery.yaml,/api/v2/workflows/{workflow_id},GetWorkflow,get_workflow,get,GetWorkflowResponse,Workflow Automation,workflow automation,workflows,get_workflow,select,$.data,Get an existing Workflow +actions.yaml,/api/v2/actions/connections/{connection_id},UpdateActionConnection,update_action_connection,patch,UpdateActionConnectionResponse,Action Connection,action connection,connections,update_action_connection,update,,Update an existing Action Connection +actions.yaml,/api/v2/actions-datastores/{datastore_id}/items,UpdateDatastoreItem,update_datastore_item,patch,ItemApiPayload,Actions Datastores,actions datastores,datastore_items,update_datastore_item,update,,Update datastore item +actions.yaml,/api/v2/actions-datastores/{datastore_id},UpdateDatastore,update_datastore,patch,Datastore,Actions Datastores,actions datastores,datastores,update_datastore,update,,Update datastore +apm.yaml,/api/v2/apm/config/metrics/{metric_id},UpdateSpansMetric,update_spans_metric,patch,SpansMetricResponse,Spans Metrics,spans metrics,spans_metrics,update_spans_metric,update,,Update a span-based metric +cloud_costs.yaml,/api/v2/cost/aws_cur_config/{cloud_account_id},UpdateCostAWSCURConfig,update_cost_awscurconfig,patch,AwsCURConfigsResponse,Cloud Cost Management,cloud cost management,aws_configs,update_cost_awscurconfig,update,,Update Cloud Cost Management AWS CUR config +cloud_costs.yaml,/api/v2/cost/azure_uc_config/{cloud_account_id},UpdateCostAzureUCConfigs,update_cost_azure_ucconfigs,patch,AzureUCConfigPairsResponse,Cloud Cost Management,cloud cost management,azure_configs,update_cost_azure_ucconfigs,update,,Update Cloud Cost Management Azure config +cloud_costs.yaml,/api/v2/cost/gcp_uc_config/{cloud_account_id},UpdateCostGCPUsageCostConfig,update_cost_gcpusage_cost_config,patch,GCPUsageCostConfigResponse,Cloud Cost Management,cloud cost management,gcp_configs,update_cost_gcpusage_cost_config,update,,Update Cloud Cost Management GCP Usage Cost config +dashboards.yaml,/api/v2/powerpacks/{powerpack_id},UpdatePowerpack,update_powerpack,patch,PowerpackResponse,Powerpack,powerpack,powerpacks,update_powerpack,update,,Update a powerpack +digital_experience.yaml,/api/v2/rum/applications/{id},UpdateRUMApplication,update_rumapplication,patch,RUMApplicationResponse,RUM,rum,rum_applications,update_rumapplication,update,,Update a RUM application +digital_experience.yaml,/api/v2/rum/config/metrics/{metric_id},UpdateRumMetric,update_rum_metric,patch,RumMetricResponse,Rum Metrics,rum metrics,rum_metrics,update_rum_metric,update,,Update a rum-based metric +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},UpdateRetentionFilter,update_retention_filter,patch,RumRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_retention_filters,update_retention_filter,update,,Update a RUM retention filter +infrastructure.yaml,/api/v2/app-builder/apps/{app_id},UpdateApp,update_app,patch,UpdateAppResponse,App Builder,app builder,apps,update_app,update,,Update App +infrastructure.yaml,/api/v2/ndm/tags/devices/{device_id},UpdateDeviceUserTags,update_device_user_tags,patch,ListTagsResponse,Network Device Monitoring,network device monitoring,device_user_tags,update_device_user_tags,update,,Update the tags for a device +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id},UpdateAWSAccount,update_awsaccount,patch,AWSAccountResponse,AWS Integration,aws integration,aws_accounts,update_awsaccount,update,,Update an AWS integration +integrations.yaml,/api/v2/integrations/cloudflare/accounts/{account_id},UpdateCloudflareAccount,update_cloudflare_account,patch,CloudflareAccountResponse,Cloudflare Integration,cloudflare integration,cloudflare_accounts,update_cloudflare_account,update,,Update Cloudflare account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id},UpdateConfluentAccount,update_confluent_account,patch,ConfluentAccountResponse,Confluent Cloud,confluent cloud,confluent_accounts,update_confluent_account,update,,Update Confluent account +integrations.yaml,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},UpdateConfluentResource,update_confluent_resource,patch,ConfluentResourceResponse,Confluent Cloud,confluent cloud,confluent_resources,update_confluent_resource,update,,Update resource in Confluent account +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id},UpdateFastlyAccount,update_fastly_account,patch,FastlyAccountResponse,Fastly Integration,fastly integration,fastly_accounts,update_fastly_account,update,,Update Fastly account +integrations.yaml,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},UpdateFastlyService,update_fastly_service,patch,FastlyServiceResponse,Fastly Integration,fastly integration,fastly_services,update_fastly_service,update,,Update Fastly service +integrations.yaml,/api/v2/integration/gcp/accounts/{account_id},UpdateGCPSTSAccount,update_gcpstsaccount,patch,GCPSTSServiceAccountResponse,GCP Integration,gcp integration,gcp_accounts,update_gcpstsaccount,update,,Update STS Service Account +integrations.yaml,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},UpdateTenantBasedHandle,update_tenant_based_handle,patch,MicrosoftTeamsTenantBasedHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_tenant_based_handles,update_tenant_based_handle,update,,Update tenant-based handle +integrations.yaml,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},UpdateWorkflowsWebhookHandle,update_workflows_webhook_handle,patch,MicrosoftTeamsWorkflowsWebhookHandleResponse,Microsoft Teams Integration,microsoft teams integration,ms_teams_workflows_webhook_handles,update_workflows_webhook_handle,update,,Update Workflows webhook handle +integrations.yaml,/api/v2/integrations/okta/accounts/{account_id},UpdateOktaAccount,update_okta_account,patch,OktaAccountResponse,Okta Integration,okta integration,okta_accounts,update_okta_account,update,,Update Okta account +integrations.yaml,/api/v2/integration/opsgenie/services/{integration_service_id},UpdateOpsgenieService,update_opsgenie_service,patch,OpsgenieServiceResponse,Opsgenie Integration,opsgenie integration,opsgenie_services,update_opsgenie_service,update,,Update a single service object +logs.yaml,/api/v2/logs/config/custom-destinations/{custom_destination_id},UpdateLogsCustomDestination,update_logs_custom_destination,patch,CustomDestinationResponse,Logs Custom Destinations,logs custom destinations,custom_destinations,update_logs_custom_destination,update,,Update a custom destination +logs.yaml,/api/v2/logs/config/metrics/{metric_id},UpdateLogsMetric,update_logs_metric,patch,LogsMetricResponse,Logs Metrics,logs metrics,metrics,update_logs_metric,update,,Update a log-based metric +metrics.yaml,/api/v2/metrics/{metric_name}/tags,UpdateTagConfiguration,update_tag_configuration,patch,MetricTagConfigurationResponse,Metrics,metrics,tag_configurations,update_tag_configuration,update,,Update a tag configuration +monitoring.yaml,/api/v2/monitor/policy/{policy_id},UpdateMonitorConfigPolicy,update_monitor_config_policy,patch,MonitorConfigPolicyResponse,Monitors,monitors,config_policies,update_monitor_config_policy,update,,Edit a monitor configuration policy +monitoring.yaml,/api/v2/monitor/notification_rule/{rule_id},UpdateMonitorNotificationRule,update_monitor_notification_rule,patch,MonitorNotificationRuleResponse,Monitors,monitors,notification_rules,update_monitor_notification_rule,update,,Update a monitor notification rule +organization.yaml,/api/v2/api_keys/{api_key_id},UpdateAPIKey,update_apikey,patch,APIKeyResponse,Key Management,key management,api_keys,update_apikey,update,,Edit an API key +organization.yaml,/api/v2/application_keys/{app_key_id},UpdateApplicationKey,update_application_key,patch,ApplicationKeyResponse,Key Management,key management,application_keys,update_application_key,update,,Edit an application key +organization.yaml,/api/v2/authn_mappings/{authn_mapping_id},UpdateAuthNMapping,update_auth_nmapping,patch,AuthNMappingResponse,AuthN Mappings,auth_n mappings,authn_mappings,update_auth_nmapping,update,,Edit an AuthN Mapping +organization.yaml,/api/v2/org_configs/{org_config_name},UpdateOrgConfig,update_org_config,patch,OrgConfigGetResponse,Organizations,organizations,configs,update_org_config,update,,Update a specific Org Config +organization.yaml,/api/v2/org_connections/{connection_id},UpdateOrgConnections,update_org_connections,patch,OrgConnectionResponse,Org Connections,org connections,connections,update_org_connections,update,,Update Org Connection +organization.yaml,/api/v2/current_user/application_keys/{app_key_id},UpdateCurrentUserApplicationKey,update_current_user_application_key,patch,ApplicationKeyResponse,Key Management,key management,current_user_application_keys,update_current_user_application_key,update,,Edit an application key owned by current user +organization.yaml,/api/v2/domain_allowlist,PatchDomainAllowlist,patch_domain_allowlist,patch,DomainAllowlistResponse,Domain Allowlist,domain allowlist,domain_allowlist,patch_domain_allowlist,update,,Sets Domain Allowlist +organization.yaml,/api/v2/ip_allowlist,UpdateIPAllowlist,update_ipallowlist,patch,IPAllowlistResponse,IP Allowlist,ip allowlist,ip_allowlist,update_ipallowlist,update,,Update IP Allowlist +organization.yaml,/api/v2/roles/{role_id},UpdateRole,update_role,patch,RoleUpdateResponse,Roles,roles,roles,update_role,update,,Update a role +organization.yaml,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},UpdateServiceAccountApplicationKey,update_service_account_application_key,patch,PartialApplicationKeyResponse,Service Accounts,service accounts,service_account_keys,update_service_account_application_key,update,,Edit an application key for this service account +organization.yaml,/api/v2/team/{team_id}/links/{link_id},UpdateTeamLink,update_team_link,patch,TeamLinkResponse,Teams,teams,team_links,update_team_link,update,,Update a team link +organization.yaml,/api/v2/team/{team_id}/memberships/{user_id},UpdateTeamMembership,update_team_membership,patch,UserTeamResponse,Teams,teams,team_memberships,update_team_membership,update,,Update a user's membership attributes on a team +organization.yaml,/api/v2/team/{team_id},UpdateTeam,update_team,patch,TeamResponse,Teams,teams,teams,update_team,update,,Update a team +organization.yaml,/api/v2/users/{user_id},UpdateUser,update_user,patch,UserResponse,Users,users,users,update_user,update,,Update a user +remote_config.yaml,/api/v2/remote_config/products/cws/policy/{policy_id},UpdateCSMThreatsAgentPolicy,update_csmthreats_agent_policy,patch,CloudWorkloadSecurityAgentPolicyResponse,CSM Threats,csm threats,csm_threats_agent_policies,update_csmthreats_agent_policy,update,,Update a Workload Protection policy +remote_config.yaml,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},UpdateCSMThreatsAgentRule,update_csmthreats_agent_rule,patch,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,csm_threats_agent_rules,update_csmthreats_agent_rule,update,,Update a Workload Protection agent rule +security.yaml,/api/v2/agentless_scanning/accounts/aws/{account_id},UpdateAwsScanOptions,update_aws_scan_options,patch,,Agentless Scanning,agentless scanning,aws_scan_options,update_aws_scan_options,update,,Patch AWS Scan Options +security.yaml,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},UpdateCloudWorkloadSecurityAgentRule,update_cloud_workload_security_agent_rule,patch,CloudWorkloadSecurityAgentRuleResponse,CSM Threats,csm threats,cloud_workload_security_agent_rules,update_cloud_workload_security_agent_rule,update,,Update a Workload Protection agent rule (US1-FED) +security.yaml,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},UpdateSecurityFilter,update_security_filter,patch,SecurityFilterResponse,Security Monitoring,security monitoring,filters,update_security_filter,update,,Update a security filter +security.yaml,/api/v2/siem-historical-detections/jobs/{job_id}/cancel,CancelHistoricalJob,cancel_historical_job,patch,,Security Monitoring,security monitoring,historical_jobs,cancel_historical_job,update,,Cancel a historical job +security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},UpdateSecurityMonitoringSuppression,update_security_monitoring_suppression,patch,SecurityMonitoringSuppressionResponse,Security Monitoring,security monitoring,monitoring_suppressions,update_security_monitoring_suppression,update,,Update a suppression rule +security.yaml,/api/v2/sensitive-data-scanner/config/groups/{group_id},UpdateScanningGroup,update_scanning_group,patch,SensitiveDataScannerGroupUpdateResponse,Sensitive Data Scanner,sensitive data scanner,scanning_groups,update_scanning_group,update,,Update Scanning Group +security.yaml,/api/v2/sensitive-data-scanner/config/rules/{rule_id},UpdateScanningRule,update_scanning_rule,patch,SensitiveDataScannerRuleUpdateResponse,Sensitive Data Scanner,sensitive data scanner,scanning_rules,update_scanning_rule,update,,Update Scanning Rule +security.yaml,/api/v2/security/signals/notification_rules/{id},PatchSignalNotificationRule,patch_signal_notification_rule,patch,NotificationRuleResponse,Security Monitoring,security monitoring,signal_notification_rules,patch_signal_notification_rule,update,,Patch a signal-based notification rule +security.yaml,/api/v2/security/vulnerabilities/notification_rules/{id},PatchVulnerabilityNotificationRule,patch_vulnerability_notification_rule,patch,NotificationRuleResponse,Security Monitoring,security monitoring,vulnerability_notification_rules,patch_vulnerability_notification_rule,update,,Patch a vulnerability-based notification rule +service_management.yaml,/api/v2/downtime/{downtime_id},UpdateDowntime,update_downtime,patch,DowntimeResponse,Downtimes,downtimes,downtimes,update_downtime,update,,Update a downtime +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},UpdateIncidentIntegration,update_incident_integration,patch,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_integrations,update_incident_integration,update,,Update an existing incident integration metadata +service_management.yaml,/api/v2/incidents/config/notification-templates/{id},UpdateIncidentNotificationTemplate,update_incident_notification_template,patch,IncidentNotificationTemplate,Incidents,incidents,incident_notification_templates,update_incident_notification_template,update,,Update incident notification template +service_management.yaml,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},UpdateIncidentTodo,update_incident_todo,patch,IncidentTodoResponse,Incidents,incidents,incident_todos,update_incident_todo,update,,Update an incident todo +service_management.yaml,/api/v2/incidents/config/types/{incident_type_id},UpdateIncidentType,update_incident_type,patch,IncidentTypeResponse,Incidents,incidents,incident_types,update_incident_type,update,,Update an incident type +service_management.yaml,/api/v2/incidents/{incident_id},UpdateIncident,update_incident,patch,IncidentResponse,Incidents,incidents,incidents,update_incident,update,,Update an existing incident +software_delivery.yaml,/api/v2/workflows/{workflow_id},UpdateWorkflow,update_workflow,patch,UpdateWorkflowResponse,Workflow Automation,workflow automation,workflows,update_workflow,update,,Update an existing Workflow +actions.yaml,/api/v2/actions-datastores/{datastore_id}/items/bulk,BulkDeleteDatastoreItems,bulk_delete_datastore_items,delete,DeleteAppsDatastoreItemResponseArray,Actions Datastores,actions datastores,actions_datastore_items,bulk_delete_datastore_items,delete,,Bulk delete datastore items +actions.yaml,/api/v2/actions/execution-policies,ListExecutionPolicies,list_execution_policies,get,ExecutionPolicyListResponse,Execution Policy,execution policy,execution_policies,list_execution_policies,select,$.data,List execution policies +actions.yaml,/api/v2/actions/execution-policies,CreateExecutionPolicy,create_execution_policy,post,ExecutionPolicyResponse,Execution Policy,execution policy,execution_policies,create_execution_policy,insert,,Create an execution policy +actions.yaml,/api/v2/actions/execution-policies/{policy_id},DeleteExecutionPolicy,delete_execution_policy,delete,,Execution Policy,execution policy,execution_policies,delete_execution_policy,delete,,Delete an execution policy +actions.yaml,/api/v2/actions/execution-policies/{policy_id},GetExecutionPolicy,get_execution_policy,get,ExecutionPolicyResponse,Execution Policy,execution policy,execution_policies,get_execution_policy,select,$.data,Get an execution policy +actions.yaml,/api/v2/actions/execution-policies/{policy_id},UpdateExecutionPolicy,update_execution_policy,put,ExecutionPolicyResponse,Execution Policy,execution policy,execution_policies,update_execution_policy,replace,,Update an execution policy +apm.yaml,/api/v2/apm/services,GetServiceList,get_service_list,get,ServiceList,APM,apm,services,get_service_list,select,$.data,Get service list +apm.yaml,/api/v2/pruned_trace/{trace_id},GetPrunedTraceByID,get_pruned_trace_by_id,get,PrunedTraceResponse,APM Trace,apm trace,pruned_traces,get_pruned_trace_by_id,select,$.data,Get a pruned trace by ID +apm.yaml,/api/v2/scorecard/campaigns,ListScorecardCampaigns,list_scorecard_campaigns,get,ListCampaignsResponse,Scorecards,scorecards,scorecard_campaigns,list_scorecard_campaigns,select,$.data,List all campaigns +apm.yaml,/api/v2/scorecard/campaigns,CreateScorecardCampaign,create_scorecard_campaign,post,CampaignResponse,Scorecards,scorecards,scorecard_campaigns,create_scorecard_campaign,insert,,Create a new campaign +apm.yaml,/api/v2/scorecard/campaigns/{campaign_id},DeleteScorecardCampaign,delete_scorecard_campaign,delete,,Scorecards,scorecards,scorecard_campaigns,delete_scorecard_campaign,delete,,Delete a campaign +apm.yaml,/api/v2/scorecard/campaigns/{campaign_id},GetScorecardCampaign,get_scorecard_campaign,get,CampaignResponse,Scorecards,scorecards,scorecard_campaigns,get_scorecard_campaign,select,$.data,Get a campaign +apm.yaml,/api/v2/scorecard/campaigns/{campaign_id},UpdateScorecardCampaign,update_scorecard_campaign,put,CampaignResponse,Scorecards,scorecards,scorecard_campaigns,update_scorecard_campaign,replace,,Update a campaign +apm.yaml,/api/v2/scorecard/outcomes,UpdateScorecardOutcomes,update_scorecard_outcomes,post,,Scorecards,scorecards,scorecard_outcomes,update_scorecard_outcomes,insert,,Update Scorecard outcomes +apm.yaml,/api/v2/scorecard/scorecards,ListScorecards,list_scorecards,get,ListScorecardsResponse,Scorecards,scorecards,scorecards,list_scorecards,select,$.data,List all scorecards +apm.yaml,/api/v2/scorecard/scores/{aggregation},ListScorecardScores,list_scorecard_scores,get,ListScorecardScoresResponse,Scorecards,scorecards,scorecard_scores,list_scorecard_scores,select,$.data,List all scores +apm.yaml,/api/v2/trace/{trace_id},GetTraceByID,get_trace_by_id,get,TraceResponse,APM Trace,apm trace,traces,get_trace_by_id,select,$.data,Get a trace by ID +catalog.yaml,/api/v2/catalog/entity/preview,PreviewCatalogEntities,preview_catalog_entities,post,EntityResponseArray,Software Catalog,software catalog,catalog_entities,preview_catalog_entities,exec,,Preview catalog entities +cloud_costs.yaml,/api/v2/cost/account_filters/{cloud_account_id},GetCostAccountFilters,get_cost_account_filters,get,AccountFiltersResponse,Cloud Cost Management,cloud cost management,account_filters,get_cost_account_filters,select,$.data,Get account filters +cloud_costs.yaml,/api/v2/cost/account_filters/{cloud_account_id},UpdateCostAccountFilters,update_cost_account_filters,patch,AccountFiltersResponse,Cloud Cost Management,cloud cost management,account_filters,update_cost_account_filters,update,,Update account filters +cloud_costs.yaml,/api/v2/cost/anomalies,ListCostAnomalies,list_cost_anomalies,get,CostAnomaliesResponse,Cloud Cost Management,cloud cost management,anomalies,list_cost_anomalies,select,$.data,List cost anomalies +cloud_costs.yaml,/api/v2/cost/anomalies/{anomaly_id},GetCostAnomaly,get_cost_anomaly,get,CostAnomalyResponse,Cloud Cost Management,cloud cost management,anomalies,get_cost_anomaly,select,$.data,Get cost anomaly +cloud_costs.yaml,/api/v2/cost/arbitrary_rule,ListCustomAllocationRules,list_custom_allocation_rules,get,ArbitraryRuleResponseArray,Cloud Cost Management,cloud cost management,arbitrary_rules,list_custom_allocation_rules,select,$.data,List custom allocation rules +cloud_costs.yaml,/api/v2/cost/arbitrary_rule,CreateCustomAllocationRule,create_custom_allocation_rule,post,ArbitraryRuleResponse,Cloud Cost Management,cloud cost management,arbitrary_rules,create_custom_allocation_rule,insert,,Create custom allocation rule +cloud_costs.yaml,/api/v2/cost/arbitrary_rule/reorder,ReorderCustomAllocationRules,reorder_custom_allocation_rules,post,,Cloud Cost Management,cloud cost management,arbitrary_rules,reorder_custom_allocation_rules,exec,,Reorder custom allocation rules +cloud_costs.yaml,/api/v2/cost/arbitrary_rule/status,ListCustomAllocationRulesStatus,list_custom_allocation_rules_status,get,ArbitraryRuleStatusResponseArray,Cloud Cost Management,cloud cost management,arbitrary_rule_statuses,list_custom_allocation_rules_status,select,$.data,List custom allocation rule statuses +cloud_costs.yaml,/api/v2/cost/arbitrary_rule/{rule_id},DeleteCustomAllocationRule,delete_custom_allocation_rule,delete,,Cloud Cost Management,cloud cost management,arbitrary_rules,delete_custom_allocation_rule,delete,,Delete custom allocation rule +cloud_costs.yaml,/api/v2/cost/arbitrary_rule/{rule_id},GetCustomAllocationRule,get_custom_allocation_rule,get,ArbitraryRuleResponse,Cloud Cost Management,cloud cost management,arbitrary_rules,get_custom_allocation_rule,select,$.data,Get custom allocation rule +cloud_costs.yaml,/api/v2/cost/arbitrary_rule/{rule_id},UpdateCustomAllocationRule,update_custom_allocation_rule,patch,ArbitraryRuleResponse,Cloud Cost Management,cloud cost management,arbitrary_rules,update_custom_allocation_rule,update,,Update custom allocation rule +cloud_costs.yaml,/api/v2/cost/aws_cur_config/{cloud_account_id},GetCostAWSCURConfig,get_cost_awscurconfig,get,AwsCurConfigResponse,Cloud Cost Management,cloud cost management,aws_cur_configs,get_cost_awscurconfig,select,$.data,Get cost AWS CUR config +cloud_costs.yaml,/api/v2/cost/azure_uc_config/{cloud_account_id},GetCostAzureUCConfig,get_cost_azure_ucconfig,get,UCConfigPair,Cloud Cost Management,cloud cost management,azure_uc_configs,get_cost_azure_ucconfig,select,$.data,Get cost Azure UC config +cloud_costs.yaml,/api/v2/cost/budget/csv/validate,ValidateCsvBudget,validate_csv_budget,post,ValidationResponse,Cloud Cost Management,cloud cost management,budget_csvs,validate_csv_budget,exec,,Validate CSV budget +cloud_costs.yaml,/api/v2/cost/budget/custom-forecast,UpsertCustomForecast,upsert_custom_forecast,put,CustomForecastResponse,Cloud Cost Management,cloud cost management,budget_custom_forecasts,upsert_custom_forecast,replace,,Create or replace a budget's custom forecast +cloud_costs.yaml,/api/v2/cost/budget/validate,ValidateBudget,validate_budget,post,BudgetValidationResponse,Cloud Cost Management,cloud cost management,budgets,validate_budget,exec,,Validate budget +cloud_costs.yaml,/api/v2/cost/budget/{budget_id}/custom-forecast,DeleteCustomForecast,delete_custom_forecast,delete,,Cloud Cost Management,cloud cost management,budget_custom_forecasts,delete_custom_forecast,delete,,Delete a budget's custom forecast +cloud_costs.yaml,/api/v2/cost/budget/{budget_id}/custom-forecast,GetCustomForecast,get_custom_forecast,get,CustomForecastResponse,Cloud Cost Management,cloud cost management,budget_custom_forecasts,get_custom_forecast,select,$.data,Get a budget's custom forecast +cloud_costs.yaml,/api/v2/cost/commitments/commitment-list,GetCommitmentsCommitmentList,get_commitments_commitment_list,get,CommitmentsListResponse,Cloud Cost Management,cloud cost management,commitments,get_commitments_commitment_list,select,$.commitments,Get commitments list +cloud_costs.yaml,/api/v2/cost/commitments/coverage/scalar,GetCommitmentsCoverageScalar,get_commitments_coverage_scalar,get,CommitmentsCoverageScalarResponse,Cloud Cost Management,cloud cost management,commitment_coverage_scalar,get_commitments_coverage_scalar,select,$.columns,Get commitments coverage (scalar) +cloud_costs.yaml,/api/v2/cost/commitments/coverage/timeseries,GetCommitmentsCoverageTimeseries,get_commitments_coverage_timeseries,get,CommitmentsCoverageTimeseriesResponse,Cloud Cost Management,cloud cost management,commitment_coverage_timeseries,get_commitments_coverage_timeseries,select,,Get commitments coverage (timeseries) +cloud_costs.yaml,/api/v2/cost/commitments/on-demand-hot-spots/scalar,GetCommitmentsOnDemandHotspotsScalar,get_commitments_on_demand_hotspots_scalar,get,CommitmentsOnDemandHotspotsScalarResponse,Cloud Cost Management,cloud cost management,commitment_on_demand_hot_spot_scalar,get_commitments_on_demand_hotspots_scalar,select,,Get commitments on-demand hot spots (scalar) +cloud_costs.yaml,/api/v2/cost/commitments/savings/scalar,GetCommitmentsSavingsScalar,get_commitments_savings_scalar,get,CommitmentsSavingsScalarResponse,Cloud Cost Management,cloud cost management,commitment_saving_scalar,get_commitments_savings_scalar,select,$.columns,Get commitments savings (scalar) +cloud_costs.yaml,/api/v2/cost/commitments/savings/timeseries,GetCommitmentsSavingsTimeseries,get_commitments_savings_timeseries,get,CommitmentsSavingsTimeseriesResponse,Cloud Cost Management,cloud cost management,commitment_saving_timeseries,get_commitments_savings_timeseries,select,,Get commitments savings (timeseries) +cloud_costs.yaml,/api/v2/cost/commitments/utilization/scalar,GetCommitmentsUtilizationScalar,get_commitments_utilization_scalar,get,CommitmentsUtilizationScalarResponse,Cloud Cost Management,cloud cost management,commitment_utilization_scalar,get_commitments_utilization_scalar,select,,Get commitments utilization (scalar) +cloud_costs.yaml,/api/v2/cost/commitments/utilization/timeseries,GetCommitmentsUtilizationTimeseries,get_commitments_utilization_timeseries,get,CommitmentsUtilizationTimeseriesResponse,Cloud Cost Management,cloud cost management,commitment_utilization_timeseries,get_commitments_utilization_timeseries,select,,Get commitments utilization (timeseries) +cloud_costs.yaml,/api/v2/cost/gcp_uc_config/{cloud_account_id},GetCostGCPUsageCostConfig,get_cost_gcpusage_cost_config,get,GcpUcConfigResponse,Cloud Cost Management,cloud cost management,gcp_uc_configs,get_cost_gcpusage_cost_config,select,$.data,Get Google Cloud Usage Cost config +cloud_costs.yaml,/api/v2/cost/oci_config,ListCostOCIConfigs,list_cost_ociconfigs,get,OCIConfigsResponse,Cloud Cost Management,cloud cost management,oci_configs,list_cost_ociconfigs,select,$.data,List Cloud Cost Management OCI configs +cloud_costs.yaml,/api/v2/cost/recommendations,SearchCostRecommendations,search_cost_recommendations,post,CostRecommendationArray,Cloud Cost Management,cloud cost management,recommendations,search_cost_recommendations,insert,,Search cost recommendations +cloud_costs.yaml,/api/v2/cost/tag_descriptions,ListCostTagDescriptions,list_cost_tag_descriptions,get,CostTagDescriptionsResponse,Cloud Cost Management,cloud cost management,tag_descriptions,list_cost_tag_descriptions,select,$.data,List Cloud Cost Management tag descriptions +cloud_costs.yaml,/api/v2/cost/tag_descriptions/{tag_key},DeleteCostTagDescriptionByKey,delete_cost_tag_description_by_key,delete,,Cloud Cost Management,cloud cost management,tag_descriptions,delete_cost_tag_description_by_key,delete,,Delete a Cloud Cost Management tag description +cloud_costs.yaml,/api/v2/cost/tag_descriptions/{tag_key},GetCostTagDescriptionByKey,get_cost_tag_description_by_key,get,CostTagDescriptionResponse,Cloud Cost Management,cloud cost management,tag_descriptions,get_cost_tag_description_by_key,select,$.data,Get a Cloud Cost Management tag description +cloud_costs.yaml,/api/v2/cost/tag_descriptions/{tag_key},UpsertCostTagDescriptionByKey,upsert_cost_tag_description_by_key,put,,Cloud Cost Management,cloud cost management,tag_descriptions,upsert_cost_tag_description_by_key,replace,,Upsert a Cloud Cost Management tag description +cloud_costs.yaml,/api/v2/cost/tag_descriptions/{tag_key}/generate,GenerateCostTagDescriptionByKey,generate_cost_tag_description_by_key,get,GenerateCostTagDescriptionResponse,Cloud Cost Management,cloud cost management,tag_descriptions,generate_cost_tag_description_by_key,exec,$.data,Generate a Cloud Cost Management tag description +cloud_costs.yaml,/api/v2/cost/tag_keys,ListCostTagKeys,list_cost_tag_keys,get,CostTagKeysResponse,Cloud Cost Management,cloud cost management,tag_keys,list_cost_tag_keys,select,$.data,List Cloud Cost Management tag keys +cloud_costs.yaml,/api/v2/cost/tag_keys/{tag_key},GetCostTagKey,get_cost_tag_key,get,CostTagKeyResponse,Cloud Cost Management,cloud cost management,tag_keys,get_cost_tag_key,select,$.data,Get a Cloud Cost Management tag key +cloud_costs.yaml,/api/v2/cost/tag_metadata,ListCostTagMetadata,list_cost_tag_metadata,get,CostTagKeyMetadataResponse,Cloud Cost Management,cloud cost management,tag_metadata,list_cost_tag_metadata,select,$.data,List Cloud Cost Management tag key metadata +cloud_costs.yaml,/api/v2/cost/tag_metadata/currency,GetCostTagMetadataCurrency,get_cost_tag_metadata_currency,get,CostCurrencyResponse,Cloud Cost Management,cloud cost management,tag_metadatum_currencies,get_cost_tag_metadata_currency,select,$.data,Get the Cloud Cost Management billing currency +cloud_costs.yaml,/api/v2/cost/tag_metadata/metrics,ListCostTagMetadataMetrics,list_cost_tag_metadata_metrics,get,CostMetricsResponse,Cloud Cost Management,cloud cost management,tag_metadatum_metrics,list_cost_tag_metadata_metrics,select,$.data,List available Cloud Cost Management metrics +cloud_costs.yaml,/api/v2/cost/tag_metadata/months,ListCostTagMetadataMonths,list_cost_tag_metadata_months,get,CostTagMetadataMonthsResponse,Cloud Cost Management,cloud cost management,tag_metadatum_months,list_cost_tag_metadata_months,select,$.data,List Cloud Cost Management tag metadata months +cloud_costs.yaml,/api/v2/cost/tag_metadata/orchestrators,ListCostTagMetadataOrchestrators,list_cost_tag_metadata_orchestrators,get,CostOrchestratorsResponse,Cloud Cost Management,cloud cost management,tag_metadatum_orchestrators,list_cost_tag_metadata_orchestrators,select,$.data,List Cloud Cost Management orchestrators +cloud_costs.yaml,/api/v2/cost/tag_metadata/tag_sources,ListCostTagKeySources,list_cost_tag_key_sources,get,CostTagKeySourcesResponse,Cloud Cost Management,cloud cost management,tag_metadatum_tag_sources,list_cost_tag_key_sources,select,$.data,List Cloud Cost Management tag sources +cloud_costs.yaml,/api/v2/cost/tags,ListCostTags,list_cost_tags,get,CostTagsResponse,Cloud Cost Management,cloud cost management,tags,list_cost_tags,select,$.data,List Cloud Cost Management tags +cloud_costs.yaml,/api/v2/tags/enrichment,ListTagPipelinesRulesets,list_tag_pipelines_rulesets,get,RulesetRespArray,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,list_tag_pipelines_rulesets,select,$.data,List tag pipeline rulesets +cloud_costs.yaml,/api/v2/tags/enrichment,CreateTagPipelinesRuleset,create_tag_pipelines_ruleset,post,RulesetResp,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,create_tag_pipelines_ruleset,insert,,Create tag pipeline ruleset +cloud_costs.yaml,/api/v2/tags/enrichment/reorder,ReorderTagPipelinesRulesets,reorder_tag_pipelines_rulesets,post,,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,reorder_tag_pipelines_rulesets,exec,,Reorder tag pipeline rulesets +cloud_costs.yaml,/api/v2/tags/enrichment/status,ListTagPipelinesRulesetsStatus,list_tag_pipelines_rulesets_status,get,RulesetStatusRespArray,Cloud Cost Management,cloud cost management,tag_pipeline_ruleset_statuses,list_tag_pipelines_rulesets_status,select,$.data,List tag pipeline ruleset statuses +cloud_costs.yaml,/api/v2/tags/enrichment/validate-query,ValidateQuery,validate_query,post,RulesValidateQueryResponse,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,validate_query,exec,,Validate query +cloud_costs.yaml,/api/v2/tags/enrichment/{ruleset_id},DeleteTagPipelinesRuleset,delete_tag_pipelines_ruleset,delete,,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,delete_tag_pipelines_ruleset,delete,,Delete tag pipeline ruleset +cloud_costs.yaml,/api/v2/tags/enrichment/{ruleset_id},GetTagPipelinesRuleset,get_tag_pipelines_ruleset,get,RulesetResp,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,get_tag_pipelines_ruleset,select,$.data,Get a tag pipeline ruleset +cloud_costs.yaml,/api/v2/tags/enrichment/{ruleset_id},UpdateTagPipelinesRuleset,update_tag_pipelines_ruleset,patch,RulesetResp,Cloud Cost Management,cloud cost management,tag_pipeline_rulesets,update_tag_pipelines_ruleset,update,,Update tag pipeline ruleset +dashboards.yaml,/api/v2/annotation,ListAnnotations,list_annotations,get,AnnotationsResponse,Annotations,annotations,annotations,list_annotations,select,$.data,List annotations +dashboards.yaml,/api/v2/annotation,CreateAnnotation,create_annotation,post,AnnotationResponse,Annotations,annotations,annotations,create_annotation,insert,,Create an annotation +dashboards.yaml,/api/v2/annotation/page/{page_id},GetPageAnnotations,get_page_annotations,get,PageAnnotationsResponse,Annotations,annotations,annotation_pages,get_page_annotations,select,$.data,Get annotations for a page +dashboards.yaml,/api/v2/annotation/{annotation_id},DeleteAnnotation,delete_annotation,delete,,Annotations,annotations,annotations,delete_annotation,delete,,Delete an annotation +dashboards.yaml,/api/v2/annotation/{annotation_id},UpdateAnnotation,update_annotation,put,AnnotationResponse,Annotations,annotations,annotations,update_annotation,replace,,Update an annotation +dashboards.yaml,/api/v2/dashboard/{dashboard_id}/shared,ListSharedDashboardsByDashboardId,list_shared_dashboards_by_dashboard_id,get,ListSharedDashboardsResponse,Dashboard Sharing,dashboard sharing,shared_dashboards,list_shared_dashboards_by_dashboard_id,select,$.data,List shared dashboards for a dashboard +dashboards.yaml,/api/v2/dashboard/{dashboard_id}/shared/secure-embed,CreateDashboardSecureEmbed,create_dashboard_secure_embed,post,SecureEmbedCreateResponse,Dashboard Secure Embed,dashboard secure embed,shared_secure_embeds,create_dashboard_secure_embed,insert,,Create a secure embed for a dashboard +dashboards.yaml,/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token},DeleteDashboardSecureEmbed,delete_dashboard_secure_embed,delete,,Dashboard Secure Embed,dashboard secure embed,shared_secure_embeds,delete_dashboard_secure_embed,delete,,Delete a secure embed for a dashboard +dashboards.yaml,/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token},GetDashboardSecureEmbed,get_dashboard_secure_embed,get,SecureEmbedGetResponse,Dashboard Secure Embed,dashboard secure embed,shared_secure_embeds,get_dashboard_secure_embed,select,$.data,Get a secure embed for a dashboard +dashboards.yaml,/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token},UpdateDashboardSecureEmbed,update_dashboard_secure_embed,patch,SecureEmbedUpdateResponse,Dashboard Secure Embed,dashboard secure embed,shared_secure_embeds,update_dashboard_secure_embed,update,,Update a secure embed for a dashboard +dashboards.yaml,/api/v2/dashboards/usage,ListDashboardsUsage,list_dashboards_usage,get,ListDashboardsUsageResponse,Dashboards,dashboards,dashboard_usage,list_dashboards_usage,select,$.data,Get usage stats for all dashboards +dashboards.yaml,/api/v2/dashboards/{dashboard_id}/usage,GetDashboardUsage,get_dashboard_usage,get,DashboardUsageResponse,Dashboards,dashboards,dashboard_usage,get_dashboard_usage,select,$.data,Get usage stats for a dashboard +dashboards.yaml,/api/v2/reporting/dataset/{dataset_id}/schedules,ListDatasetReportSchedules,list_dataset_report_schedules,get,DatasetReportScheduleListResponse,Report Schedules,report schedules,report_dataset_schedules,list_dataset_report_schedules,select,$.data,List dataset report schedules +dashboards.yaml,/api/v2/reporting/print,PrintReport,print_report,post,PrintReportResponse,Report Schedules,report schedules,reports,print_report,exec,,Print a report +dashboards.yaml,/api/v2/reporting/schedule,CreateReportSchedule,create_report_schedule,post,ReportScheduleResponse,Report Schedules,report schedules,report_schedules,create_report_schedule,insert,,Create a report schedule +dashboards.yaml,/api/v2/reporting/schedule/list,ListReportSchedules,list_report_schedules,get,ReportScheduleListResponse,Report Schedules,report schedules,report_schedules,list_report_schedules,select,$.data,List report schedules +dashboards.yaml,/api/v2/reporting/schedule/{resource_type}/{resource_id},GetReportSchedulesForResource,get_report_schedules_for_resource,get,ReportScheduleListResponse,Report Schedules,report schedules,report_schedules,get_report_schedules_for_resource,select,$.data,Get report schedules for a resource +dashboards.yaml,/api/v2/reporting/schedule/{schedule_uuid},DeleteReportSchedule,delete_report_schedule,delete,ReportScheduleResponse,Report Schedules,report schedules,report_schedules,delete_report_schedule,delete,,Delete a report schedule +dashboards.yaml,/api/v2/reporting/schedule/{schedule_uuid},GetReportSchedule,get_report_schedule,get,ReportScheduleResponse,Report Schedules,report schedules,report_schedules,get_report_schedule,select,$.data,Get a report schedule +dashboards.yaml,/api/v2/reporting/schedule/{schedule_uuid},PatchReportSchedule,patch_report_schedule,patch,ReportScheduleResponse,Report Schedules,report schedules,report_schedules,patch_report_schedule,update,,Update a report schedule +dashboards.yaml,/api/v2/reporting/schedule/{schedule_uuid}/toggle,ToggleReportSchedule,toggle_report_schedule,patch,ReportScheduleResponse,Report Schedules,report schedules,report_schedules,toggle_report_schedule,exec,,Toggle a report schedule +dashboards.yaml,/api/v2/snapshot,CreateSnapshot,create_snapshot,post,CreateSnapshotResponse,Reporting And Sharing,reporting and sharing,graph_snapshots,create_snapshot,exec,,Create a graph snapshot +dashboards.yaml,/api/v2/stegadography/get-widgets,GetStegadographyWidgets,get_stegadography_widgets,post,StegadographyGetWidgetsResponse,Stegadography,stegadography,skip_this_resource,,,,Get widgets from an image +dashboards.yaml,/api/v2/widgets/{experience_type},SearchWidgets,search_widgets,get,WidgetListResponse,Widgets,widgets,widgets,search_widgets,select,$.data,Search widgets +dashboards.yaml,/api/v2/widgets/{experience_type},CreateWidget,create_widget,post,WidgetResponse,Widgets,widgets,widgets,create_widget,insert,,Create a widget +dashboards.yaml,/api/v2/widgets/{experience_type}/{uuid},DeleteWidget,delete_widget,delete,,Widgets,widgets,widgets,delete_widget,delete,,Delete a widget +dashboards.yaml,/api/v2/widgets/{experience_type}/{uuid},GetWidget,get_widget,get,WidgetResponse,Widgets,widgets,widgets,get_widget,select,$.data,Get a widget +dashboards.yaml,/api/v2/widgets/{experience_type}/{uuid},UpdateWidget,update_widget,put,WidgetResponse,Widgets,widgets,widgets,update_widget,replace,,Update a widget +dashboards.yaml,/api/v1/dashboard,DeleteDashboards,delete_dashboards,delete,,Dashboards,dashboards,dashboards,delete_dashboards,delete,,Delete dashboards +dashboards.yaml,/api/v1/dashboard,ListDashboards,list_dashboards,get,DashboardSummary,Dashboards,dashboards,dashboards,list_dashboards,select,$.dashboards,Get all dashboards +dashboards.yaml,/api/v1/dashboard,RestoreDashboards,restore_dashboards,patch,,Dashboards,dashboards,dashboards,restore_dashboards,update,,Restore deleted dashboards +dashboards.yaml,/api/v1/dashboard,CreateDashboard,create_dashboard,post,Dashboard,Dashboards,dashboards,dashboards,create_dashboard,insert,,Create a new dashboard +dashboards.yaml,/api/v1/dashboard/lists/manual,ListDashboardLists,list_dashboard_lists,get,DashboardListListResponse,Dashboard Lists,dashboard lists,dashboard_lists,list_dashboard_lists,select,$.dashboard_lists,Get all dashboard lists +dashboards.yaml,/api/v1/dashboard/lists/manual,CreateDashboardList,create_dashboard_list,post,DashboardList,Dashboard Lists,dashboard lists,dashboard_lists,create_dashboard_list,insert,,Create a dashboard list +dashboards.yaml,/api/v1/dashboard/lists/manual/{list_id},DeleteDashboardList,delete_dashboard_list,delete,DashboardListDeleteResponse,Dashboard Lists,dashboard lists,dashboard_lists,delete_dashboard_list,delete,,Delete a dashboard list +dashboards.yaml,/api/v1/dashboard/lists/manual/{list_id},GetDashboardList,get_dashboard_list,get,DashboardList,Dashboard Lists,dashboard lists,dashboard_lists,get_dashboard_list,select,,Get a dashboard list +dashboards.yaml,/api/v1/dashboard/lists/manual/{list_id},UpdateDashboardList,update_dashboard_list,put,DashboardList,Dashboard Lists,dashboard lists,dashboard_lists,update_dashboard_list,replace,,Update a dashboard list +dashboards.yaml,/api/v1/dashboard/public,CreatePublicDashboard,create_public_dashboard,post,SharedDashboard,Dashboards,dashboards,shared_dashboards,create_public_dashboard,insert,,Create a shared dashboard +dashboards.yaml,/api/v1/dashboard/public/{token},DeletePublicDashboard,delete_public_dashboard,delete,DeleteSharedDashboardResponse,Dashboards,dashboards,shared_dashboards,delete_public_dashboard,delete,,Revoke a shared dashboard URL +dashboards.yaml,/api/v1/dashboard/public/{token},GetPublicDashboard,get_public_dashboard,get,SharedDashboard,Dashboards,dashboards,shared_dashboards,get_public_dashboard,select,,Get a shared dashboard +dashboards.yaml,/api/v1/dashboard/public/{token},UpdatePublicDashboard,update_public_dashboard,put,SharedDashboard,Dashboards,dashboards,shared_dashboards,update_public_dashboard,replace,,Update a shared dashboard +dashboards.yaml,/api/v1/dashboard/public/{token}/invitation,DeletePublicDashboardInvitation,delete_public_dashboard_invitation,delete,,Dashboards,dashboards,shared_dashboard_invitations,delete_public_dashboard_invitation,delete,,Revoke shared dashboard invitations +dashboards.yaml,/api/v1/dashboard/public/{token}/invitation,GetPublicDashboardInvitations,get_public_dashboard_invitations,get,SharedDashboardInvites,Dashboards,dashboards,shared_dashboard_invitations,get_public_dashboard_invitations,select,$.data,Get all invitations for a shared dashboard +dashboards.yaml,/api/v1/dashboard/public/{token}/invitation,SendPublicDashboardInvitation,send_public_dashboard_invitation,post,SharedDashboardInvites,Dashboards,dashboards,shared_dashboard_invitations,send_public_dashboard_invitation,insert,,Send shared dashboard invitation email +dashboards.yaml,/api/v1/dashboard/{dashboard_id},DeleteDashboard,delete_dashboard,delete,DashboardDeleteResponse,Dashboards,dashboards,dashboards,delete_dashboard,delete,,Delete a dashboard +dashboards.yaml,/api/v1/dashboard/{dashboard_id},GetDashboard,get_dashboard,get,Dashboard,Dashboards,dashboards,dashboards,get_dashboard,select,,Get a dashboard +dashboards.yaml,/api/v1/dashboard/{dashboard_id},UpdateDashboard,update_dashboard,put,Dashboard,Dashboards,dashboards,dashboards,update_dashboard,replace,,Update a dashboard +dashboards.yaml,/api/v1/graph/snapshot,GetGraphSnapshot,get_graph_snapshot,get,GraphSnapshot,Snapshots,snapshots,graph_snapshots,get_graph_snapshot,select,,Take graph snapshots +dashboards.yaml,/api/v1/notebooks,ListNotebooks,list_notebooks,get,NotebooksResponse,Notebooks,notebooks,notebooks,list_notebooks,select,$.data,Get all notebooks +dashboards.yaml,/api/v1/notebooks,CreateNotebook,create_notebook,post,NotebookResponse,Notebooks,notebooks,notebooks,create_notebook,insert,,Create a notebook +dashboards.yaml,/api/v1/notebooks/{notebook_id},DeleteNotebook,delete_notebook,delete,,Notebooks,notebooks,notebooks,delete_notebook,delete,,Delete a notebook +dashboards.yaml,/api/v1/notebooks/{notebook_id},GetNotebook,get_notebook,get,NotebookResponse,Notebooks,notebooks,notebooks,get_notebook,select,$.data,Get a notebook +dashboards.yaml,/api/v1/notebooks/{notebook_id},UpdateNotebook,update_notebook,put,NotebookResponse,Notebooks,notebooks,notebooks,update_notebook,replace,,Update a notebook +digital_experience.yaml,/api/v2/prodlytics,SubmitProductAnalyticsEvent,submit_product_analytics_event,post,,Product Analytics,product analytics,product_analytics_events,submit_product_analytics_event,exec,,Send server-side events +digital_experience.yaml,/api/v2/product-analytics/accounts/facet_info,GetAccountFacetInfo,get_account_facet_info,post,FacetInfoResponse,Rum Audience Management,rum audience management,product_analytics_accounts,get_account_facet_info,exec,,Get account facet info +digital_experience.yaml,/api/v2/product-analytics/accounts/query,QueryAccounts,query_accounts,post,QueryResponse,Rum Audience Management,rum audience management,product_analytics_accounts,query_accounts,exec,,Query accounts +digital_experience.yaml,/api/v2/product-analytics/analytics/list,QueryProductAnalyticsList,query_product_analytics_list,post,ProductAnalyticsAnalyticsListResponse,Product Analytics,product analytics,product_analytics,query_product_analytics_list,exec,,List analytics events +digital_experience.yaml,/api/v2/product-analytics/analytics/scalar,QueryProductAnalyticsScalar,query_product_analytics_scalar,post,ProductAnalyticsScalarResponse,Product Analytics,product analytics,product_analytics,query_product_analytics_scalar,exec,,Compute scalar analytics +digital_experience.yaml,/api/v2/product-analytics/analytics/timeseries,QueryProductAnalyticsTimeseries,query_product_analytics_timeseries,post,ProductAnalyticsTimeseriesResponse,Product Analytics,product analytics,product_analytics,query_product_analytics_timeseries,exec,,Compute timeseries analytics +digital_experience.yaml,/api/v2/product-analytics/journey/funnel,QueryProductAnalyticsJourneyFunnel,query_product_analytics_journey_funnel,post,ProductAnalyticsJourneyFunnelResponse,Product Analytics,product analytics,product_analytics_journey_funnels,query_product_analytics_journey_funnel,insert,,Compute journey funnel analysis +digital_experience.yaml,/api/v2/product-analytics/journey/list,QueryProductAnalyticsJourneyList,query_product_analytics_journey_list,post,ProductAnalyticsJourneyListResponse,Product Analytics,product analytics,product_analytics_journeys,query_product_analytics_journey_list,exec,,List journey entities +digital_experience.yaml,/api/v2/product-analytics/journey/scalar,QueryProductAnalyticsJourneyScalar,query_product_analytics_journey_scalar,post,ProductAnalyticsJourneyScalarResponse,Product Analytics,product analytics,product_analytics_journeys,query_product_analytics_journey_scalar,exec,,Compute journey scalar analytics +digital_experience.yaml,/api/v2/product-analytics/journey/timeseries,QueryProductAnalyticsJourneyTimeseries,query_product_analytics_journey_timeseries,post,ProductAnalyticsJourneyTimeseriesResponse,Product Analytics,product analytics,product_analytics_journeys,query_product_analytics_journey_timeseries,exec,,Compute journey timeseries analytics +digital_experience.yaml,/api/v2/product-analytics/retention/grid,QueryProductAnalyticsRetentionGrid,query_product_analytics_retention_grid,post,ProductAnalyticsRetentionGridResponse,Product Analytics,product analytics,product_analytics_retention_grids,query_product_analytics_retention_grid,insert,,Compute a retention grid +digital_experience.yaml,/api/v2/product-analytics/retention/list,QueryProductAnalyticsRetentionList,query_product_analytics_retention_list,post,ProductAnalyticsRetentionListResponse,Product Analytics,product analytics,product_analytics_retentions,query_product_analytics_retention_list,exec,,List the entities behind a retention cell +digital_experience.yaml,/api/v2/product-analytics/retention/scalar,QueryProductAnalyticsRetentionScalar,query_product_analytics_retention_scalar,post,ProductAnalyticsScalarResponse,Product Analytics,product analytics,product_analytics_retentions,query_product_analytics_retention_scalar,exec,,Compute retention scalar values +digital_experience.yaml,/api/v2/product-analytics/retention/timeseries,QueryProductAnalyticsRetentionTimeseries,query_product_analytics_retention_timeseries,post,ProductAnalyticsTimeseriesResponse,Product Analytics,product analytics,product_analytics_retentions,query_product_analytics_retention_timeseries,exec,,Compute retention timeseries +digital_experience.yaml,/api/v2/product-analytics/sankey,QueryProductAnalyticsSankey,query_product_analytics_sankey,post,ProductAnalyticsSankeyResponse,Product Analytics,product analytics,product_analytics_sankeys,query_product_analytics_sankey,insert,,Compute a Sankey diagram +digital_experience.yaml,/api/v2/product-analytics/users/event_filtered_query,QueryEventFilteredUsers,query_event_filtered_users,post,QueryResponse,Rum Audience Management,rum audience management,product_analytics_user_event_filtered_queries,query_event_filtered_users,insert,,Query event filtered users +digital_experience.yaml,/api/v2/product-analytics/users/facet_info,GetUserFacetInfo,get_user_facet_info,post,FacetInfoResponse,Rum Audience Management,rum audience management,product_analytics_users,get_user_facet_info,exec,,Get user facet info +digital_experience.yaml,/api/v2/product-analytics/users/query,QueryUsers,query_users,post,QueryResponse,Rum Audience Management,rum audience management,product_analytics_users,query_users,exec,,Query users +digital_experience.yaml,/api/v2/product-analytics/{entity}/mapping,GetMapping,get_mapping,get,GetMappingResponse,Rum Audience Management,rum audience management,product_analytics_mappings,get_mapping,select,$.data,Get mapping +digital_experience.yaml,/api/v2/product-analytics/{entity}/mapping/connection,CreateConnection,create_connection,post,,Rum Audience Management,rum audience management,product_analytics_mapping_connections,create_connection,insert,,Create connection +digital_experience.yaml,/api/v2/product-analytics/{entity}/mapping/connection,UpdateConnection,update_connection,put,,Rum Audience Management,rum audience management,product_analytics_mapping_connections,update_connection,replace,,Update connection +digital_experience.yaml,/api/v2/product-analytics/{entity}/mapping/connection/{id},DeleteConnection,delete_connection,delete,,Rum Audience Management,rum audience management,product_analytics_mapping_connections,delete_connection,delete,,Delete connection +digital_experience.yaml,/api/v2/product-analytics/{entity}/mapping/connections,ListConnections,list_connections,get,ListConnectionsResponse,Rum Audience Management,rum audience management,product_analytics_mapping_connections,list_connections,select,$.data,List connections +digital_experience.yaml,/api/v2/replay/heatmap/snapshots,ListReplayHeatmapSnapshots,list_replay_heatmap_snapshots,get,SnapshotArray,Rum Replay Heatmaps,rum replay heatmaps,replay_heatmap_snapshots,list_replay_heatmap_snapshots,select,$.data,List replay heatmap snapshots +digital_experience.yaml,/api/v2/replay/heatmap/snapshots,CreateReplayHeatmapSnapshot,create_replay_heatmap_snapshot,post,Snapshot,Rum Replay Heatmaps,rum replay heatmaps,replay_heatmap_snapshots,create_replay_heatmap_snapshot,insert,,Create replay heatmap snapshot +digital_experience.yaml,/api/v2/replay/heatmap/snapshots/{snapshot_id},DeleteReplayHeatmapSnapshot,delete_replay_heatmap_snapshot,delete,,Rum Replay Heatmaps,rum replay heatmaps,replay_heatmap_snapshots,delete_replay_heatmap_snapshot,delete,,Delete replay heatmap snapshot +digital_experience.yaml,/api/v2/replay/heatmap/snapshots/{snapshot_id},UpdateReplayHeatmapSnapshot,update_replay_heatmap_snapshot,patch,Snapshot,Rum Replay Heatmaps,rum replay heatmaps,replay_heatmap_snapshots,update_replay_heatmap_snapshot,update,,Update replay heatmap snapshot +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/exclusion,ListExclusionFilters,list_exclusion_filters,get,RumExclusionFiltersResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_exclusions,list_exclusion_filters,select,$.data,Get all RUM exclusion filters +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/exclusion,CreateExclusionFilter,create_exclusion_filter,post,RumExclusionFilterResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_exclusions,create_exclusion_filter,insert,,Create a RUM exclusion filter +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id},DeleteExclusionFilter,delete_exclusion_filter,delete,,Rum Retention Filters,rum retention filters,rum_application_retention_filter_exclusions,delete_exclusion_filter,delete,,Delete a RUM exclusion filter +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id},GetExclusionFilter,get_exclusion_filter,get,RumExclusionFilterResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_exclusions,get_exclusion_filter,select,$.data,Get a RUM exclusion filter +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id},UpdateExclusionFilter,update_exclusion_filter,patch,RumExclusionFilterResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_exclusions,update_exclusion_filter,update,,Update a RUM exclusion filter +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/permanent,ListPermanentRetentionFilters,list_permanent_retention_filters,get,RumPermanentRetentionFiltersResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_permanents,list_permanent_retention_filters,select,$.data,Get all permanent RUM retention filters +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/permanent/{permanent_rf_id},GetPermanentRetentionFilter,get_permanent_retention_filter,get,RumPermanentRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_permanents,get_permanent_retention_filter,select,$.data,Get a permanent RUM retention filter +digital_experience.yaml,/api/v2/rum/applications/{app_id}/retention_filters/permanent/{permanent_rf_id},UpdatePermanentRetentionFilter,update_permanent_retention_filter,patch,RumPermanentRetentionFilterResponse,Rum Retention Filters,rum retention filters,rum_application_retention_filter_permanents,update_permanent_retention_filter,update,,Update a permanent RUM retention filter +digital_experience.yaml,/api/v2/rum/config,GetRumConfig,get_rum_config,get,RumConfigResponse,RUM Config,rum config,rum_configs,get_rum_config,select,$.data,Get the RUM configuration +digital_experience.yaml,/api/v2/rum/config,UpdateRumConfig,update_rum_config,patch,RumConfigResponse,RUM Config,rum config,rum_configs,update_rum_config,update,,Update the RUM configuration +digital_experience.yaml,/api/v2/rum/config,CreateRumConfig,create_rum_config,post,RumConfigResponse,RUM Config,rum config,rum_configs,create_rum_config,insert,,Create the RUM configuration +digital_experience.yaml,/api/v2/rum/config/retention-quota/{scope_type}/{scope_id},DeleteRumQuotaConfig,delete_rum_quota_config,delete,,RUM Retention Quotas,rum retention quotas,rum_retention_quotas,delete_rum_quota_config,delete,,Delete a RUM retention quota configuration +digital_experience.yaml,/api/v2/rum/config/retention-quota/{scope_type}/{scope_id},GetRumQuotaConfig,get_rum_quota_config,get,RumRetentionQuotaConfigResponse,RUM Retention Quotas,rum retention quotas,rum_retention_quotas,get_rum_quota_config,select,$.data,Get a RUM retention quota configuration +digital_experience.yaml,/api/v2/rum/config/retention-quota/{scope_type}/{scope_id},UpsertRumQuotaConfig,upsert_rum_quota_config,put,RumRetentionQuotaConfigResponse,RUM Retention Quotas,rum retention quotas,rum_retention_quotas,upsert_rum_quota_config,replace,,Create or update a RUM retention quota config +digital_experience.yaml,/api/v2/rum/config/teams-ownership/mappings,ListTeamsOwnershipMappings,list_teams_ownership_mappings,get,TeamsOwnershipMappingsResponse,Rum Teams Ownership,rum teams ownership,rum_teams_ownership_mappings,list_teams_ownership_mappings,select,$.data,List teams ownership mappings +digital_experience.yaml,/api/v2/rum/config/teams-ownership/mappings,CreateTeamsOwnershipMapping,create_teams_ownership_mapping,post,TeamsOwnershipMappingResponse,Rum Teams Ownership,rum teams ownership,rum_teams_ownership_mappings,create_teams_ownership_mapping,insert,,Create a teams ownership mapping +digital_experience.yaml,/api/v2/rum/config/teams-ownership/mappings/operations,CreateTeamsOwnershipMappingsBatch,create_teams_ownership_mappings_batch,post,TeamsOwnershipMappingBatchResponse,Rum Teams Ownership,rum teams ownership,rum_teams_ownership_mapping_operations,create_teams_ownership_mappings_batch,insert,,Bulk create and remove teams ownership mappings +digital_experience.yaml,/api/v2/rum/config/teams-ownership/mappings/{id},DeleteTeamsOwnershipMapping,delete_teams_ownership_mapping,delete,,Rum Teams Ownership,rum teams ownership,rum_teams_ownership_mappings,delete_teams_ownership_mapping,delete,,Delete a teams ownership mapping +digital_experience.yaml,/api/v2/rum/config/teams-ownership/mappings/{id},GetTeamsOwnershipMapping,get_teams_ownership_mapping,get,TeamsOwnershipMappingResponse,Rum Teams Ownership,rum teams ownership,rum_teams_ownership_mappings,get_teams_ownership_mapping,select,$.data,Get a teams ownership mapping +digital_experience.yaml,/api/v2/rum/config/teams-ownership/rules,ListTeamsOwnershipRules,list_teams_ownership_rules,get,TeamsOwnershipRulesResponse,Rum Teams Ownership,rum teams ownership,rum_teams_ownership_rules,list_teams_ownership_rules,select,$.data,List teams ownership rules +digital_experience.yaml,/api/v2/rum/operations,CreateRUMOperation,create_rumoperation,post,RUMOperationResponse,RUM Operations,rum operations,rum_operations,create_rumoperation,insert,,Create a RUM operation +digital_experience.yaml,/api/v2/rum/operations/by-name/{name},GetRUMOperationByName,get_rumoperation_by_name,get,RUMOperationResponse,RUM Operations,rum operations,rum_operation_by_names,get_rumoperation_by_name,select,$.data,Get a RUM operation by name +digital_experience.yaml,/api/v2/rum/operations/search,ListRUMOperations,list_rumoperations,get,RUMOperationsListResponse,RUM Operations,rum operations,rum_operations,list_rumoperations,select,$.data,Search RUM operations +digital_experience.yaml,/api/v2/rum/operations/strong_links,ListRUMOperationStrongLinks,list_rumoperation_strong_links,get,RUMOperationStrongLinksListResponse,RUM Operations,rum operations,rum_operation_strong_links,list_rumoperation_strong_links,select,$.data,List RUM operation strong links +digital_experience.yaml,/api/v2/rum/operations/strong_links,CreateRUMOperationStrongLink,create_rumoperation_strong_link,post,RUMOperationStrongLinkResponse,RUM Operations,rum operations,rum_operation_strong_links,create_rumoperation_strong_link,insert,,Create a RUM operation strong link +digital_experience.yaml,/api/v2/rum/operations/strong_links/{rum_operation_id}/{feature_id},DeleteRUMOperationStrongLink,delete_rumoperation_strong_link,delete,,RUM Operations,rum operations,rum_operation_strong_links,delete_rumoperation_strong_link,delete,,Delete a RUM operation strong link +digital_experience.yaml,/api/v2/rum/operations/strong_links/{rum_operation_id}/{feature_id},UpdateRUMOperationStrongLink,update_rumoperation_strong_link,put,RUMOperationStrongLinkResponse,RUM Operations,rum operations,rum_operation_strong_links,update_rumoperation_strong_link,replace,,Update a RUM operation strong link +digital_experience.yaml,/api/v2/rum/operations/{rum_operation_id},DeleteRUMOperation,delete_rumoperation,delete,,RUM Operations,rum operations,rum_operations,delete_rumoperation,delete,,Delete a RUM operation +digital_experience.yaml,/api/v2/rum/operations/{rum_operation_id},GetRUMOperation,get_rumoperation,get,RUMOperationResponse,RUM Operations,rum operations,rum_operations,get_rumoperation,select,$.data,Get a RUM operation +digital_experience.yaml,/api/v2/rum/operations/{rum_operation_id},UpdateRUMOperation,update_rumoperation,put,RUMOperationResponse,RUM Operations,rum operations,rum_operations,update_rumoperation,replace,,Update a RUM operation +digital_experience.yaml,/api/v2/rum/query/insight/aggregated_long_tasks,QueryAggregatedLongTasks,query_aggregated_long_tasks,post,AggregatedLongTasksResponse,RUM Insights,rum insights,rum_query_insight_aggregated_long_tasks,query_aggregated_long_tasks,insert,,Query aggregated long tasks +digital_experience.yaml,/api/v2/rum/query/insight/aggregated_signals_problems,QueryAggregatedSignalsProblems,query_aggregated_signals_problems,post,AggregatedSignalsProblemsResponse,RUM Insights,rum insights,rum_query_insight_aggregated_signals_problems,query_aggregated_signals_problems,insert,,Query aggregated signals and problems +digital_experience.yaml,/api/v2/rum/query/insight/aggregated_waterfall,QueryAggregatedWaterfall,query_aggregated_waterfall,post,AggregatedWaterfallResponse,RUM Insights,rum insights,rum_query_insight_aggregated_waterfalls,query_aggregated_waterfall,insert,,Query aggregated waterfall +digital_experience.yaml,/api/v2/rum/replay/playlists,ListRumReplayPlaylists,list_rum_replay_playlists,get,PlaylistArray,Rum Replay Playlists,rum replay playlists,rum_replay_playlists,list_rum_replay_playlists,select,$.data,List RUM replay playlists +digital_experience.yaml,/api/v2/rum/replay/playlists,CreateRumReplayPlaylist,create_rum_replay_playlist,post,Playlist,Rum Replay Playlists,rum replay playlists,rum_replay_playlists,create_rum_replay_playlist,insert,,Create RUM replay playlist +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id},DeleteRumReplayPlaylist,delete_rum_replay_playlist,delete,,Rum Replay Playlists,rum replay playlists,rum_replay_playlists,delete_rum_replay_playlist,delete,,Delete RUM replay playlist +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id},GetRumReplayPlaylist,get_rum_replay_playlist,get,Playlist,Rum Replay Playlists,rum replay playlists,rum_replay_playlists,get_rum_replay_playlist,select,$.data,Get RUM replay playlist +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id},UpdateRumReplayPlaylist,update_rum_replay_playlist,put,Playlist,Rum Replay Playlists,rum replay playlists,rum_replay_playlists,update_rum_replay_playlist,replace,,Update RUM replay playlist +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id}/sessions,BulkRemoveRumReplayPlaylistSessions,bulk_remove_rum_replay_playlist_sessions,delete,,Rum Replay Playlists,rum replay playlists,rum_replay_playlist_sessions,bulk_remove_rum_replay_playlist_sessions,delete,,Bulk remove RUM replay playlist sessions +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id}/sessions,ListRumReplayPlaylistSessions,list_rum_replay_playlist_sessions,get,PlaylistsSessionArray,Rum Replay Playlists,rum replay playlists,rum_replay_playlist_sessions,list_rum_replay_playlist_sessions,select,$.data,List RUM replay playlist sessions +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id}/sessions/{session_id},RemoveRumReplaySessionFromPlaylist,remove_rum_replay_session_from_playlist,delete,,Rum Replay Playlists,rum replay playlists,rum_replay_playlist_sessions,remove_rum_replay_session_from_playlist,delete,,Remove RUM replay session from playlist +digital_experience.yaml,/api/v2/rum/replay/playlists/{playlist_id}/sessions/{session_id},AddRumReplaySessionToPlaylist,add_rum_replay_session_to_playlist,put,PlaylistsSession,Rum Replay Playlists,rum replay playlists,rum_replay_playlist_sessions,add_rum_replay_session_to_playlist,replace,,Add RUM replay session to playlist +digital_experience.yaml,/api/v2/rum/replay/sessions/{session_id}/views/{view_id}/segments,GetSegments,get_segments,get,,Rum Replay Sessions,rum replay sessions,rum_replay_session_view_segments,get_segments,exec,,Get segments +digital_experience.yaml,/api/v2/rum/replay/sessions/{session_id}/watchers,ListRumReplaySessionWatchers,list_rum_replay_session_watchers,get,WatcherArray,Rum Replay Viewership,rum replay viewership,rum_replay_session_watchers,list_rum_replay_session_watchers,select,$.data,List RUM replay session watchers +digital_experience.yaml,/api/v2/rum/replay/sessions/{session_id}/watches,DeleteRumReplaySessionWatch,delete_rum_replay_session_watch,delete,,Rum Replay Viewership,rum replay viewership,rum_replay_session_watches,delete_rum_replay_session_watch,delete,,Delete RUM replay session watch +digital_experience.yaml,/api/v2/rum/replay/sessions/{session_id}/watches,CreateRumReplaySessionWatch,create_rum_replay_session_watch,post,Watch,Rum Replay Viewership,rum replay viewership,rum_replay_session_watches,create_rum_replay_session_watch,insert,,Create RUM replay session watch +digital_experience.yaml,/api/v2/rum/replay/viewership-history/sessions,ListRumReplayViewershipHistorySessions,list_rum_replay_viewership_history_sessions,get,ViewershipHistorySessionArray,Rum Replay Viewership,rum replay viewership,rum_replay_viewership_history_sessions,list_rum_replay_viewership_history_sessions,select,$.data,List RUM replay viewership history sessions +digital_experience.yaml,/api/v2/sourcemaps,DeleteSourcemaps,delete_sourcemaps,delete,SourcemapsResponse,RUM,rum,sourcemaps,delete_sourcemaps,delete,,Delete source maps +digital_experience.yaml,/api/v2/sourcemaps,GetSourcemaps,get_sourcemaps,get,SourcemapFileResponse,RUM,rum,sourcemaps,get_sourcemaps,select,$.data,Get a JavaScript source map +digital_experience.yaml,/api/v2/sourcemaps/list,ListSourcemaps,list_sourcemaps,get,ListSourcemapsResponse,RUM,rum,sourcemaps,list_sourcemaps,select,$.data,List source maps +digital_experience.yaml,/api/v2/sourcemaps/restore,RestoreSourcemaps,restore_sourcemaps,patch,SourcemapsResponse,RUM,rum,sourcemaps,restore_sourcemaps,exec,,Restore source maps +digital_experience.yaml,/api/v2/sourcemaps/service_repository_info,GetServiceRepositoryInfo,get_service_repository_info,post,ServiceRepositoryInfoResponse,RUM,rum,sourcemap_service_repository_infos,get_service_repository_info,insert,,Get service repository information +fleet.yaml,/api/unstable/fleet/agents/{agent_key}/tracers,ListFleetAgentTracers,list_fleet_agent_tracers,get,FleetTracersResponse,Fleet Automation,fleet automation,agent_tracers,list_fleet_agent_tracers,select,$.data,List tracers for a specific agent +fleet.yaml,/api/unstable/fleet/schedules,CreateFleetSchedule,create_fleet_schedule,post,FleetScheduleResponse,Fleet Automation,fleet automation,schedules,create_fleet_schedule,insert,,Create a schedule +fleet.yaml,/api/unstable/fleet/schedules/{id},DeleteFleetSchedule,delete_fleet_schedule,delete,,Fleet Automation,fleet automation,schedules,delete_fleet_schedule,delete,,Delete a schedule +fleet.yaml,/api/unstable/fleet/schedules/{id},UpdateFleetSchedule,update_fleet_schedule,patch,FleetScheduleResponse,Fleet Automation,fleet automation,schedules,update_fleet_schedule,update,,Update a schedule +fleet.yaml,/api/unstable/fleet/schedules/{id}/trigger,TriggerFleetSchedule,trigger_fleet_schedule,post,FleetDeploymentResponse,Fleet Automation,fleet automation,schedules,trigger_fleet_schedule,exec,,Trigger a schedule deployment +fleet.yaml,/api/unstable/fleet/tracers,ListFleetTracers,list_fleet_tracers,get,FleetTracersResponse,Fleet Automation,fleet automation,tracers,list_fleet_tracers,select,$.data,List all fleet tracers +fleet.yaml,/api/v2/fleet/agent_versions,ListFleetAgentVersionsV2,list_fleet_agent_versions_v2,get,FleetAgentVersionsV2Response,Fleet Automation,fleet automation,agent_versions,list_fleet_agent_versions_v2,select,$.data,List available Datadog Agent versions +fleet.yaml,/api/v2/fleet/agents,ListFleetAgentsV2,list_fleet_agents_v2,get,FleetAgentsV2Response,Fleet Automation,fleet automation,agents,list_fleet_agents_v2,select,$.data,List all Datadog Agents +fleet.yaml,/api/v2/fleet/agents/{agent_key},GetFleetAgentDetailV2,get_fleet_agent_detail_v2,get,FleetAgentDetailV2Response,Fleet Automation,fleet automation,agents,get_fleet_agent_detail_v2,select,$.data,Get detailed information about an agent +fleet.yaml,/api/v2/fleet/deployments,ListFleetDeploymentsV2,list_fleet_deployments_v2,get,FleetDeploymentsV2Response,Fleet Automation,fleet automation,deployments,list_fleet_deployments_v2,select,$.data,List all deployments +fleet.yaml,/api/v2/fleet/deployments/configure,CreateFleetDeploymentConfigureV2,create_fleet_deployment_configure_v2,post,FleetDeploymentConfigureV2DryRunResponse,Fleet Automation,fleet automation,deployments,create_fleet_deployment_configure_v2,exec,,Create a configuration deployment +fleet.yaml,/api/v2/fleet/deployments/upgrade,CreateFleetDeploymentUpgradeV2,create_fleet_deployment_upgrade_v2,post,FleetDeploymentV2CreateResponse,Fleet Automation,fleet automation,deployments,create_fleet_deployment_upgrade_v2,exec,,Upgrade hosts +fleet.yaml,/api/v2/fleet/deployments/{deployment_id},GetFleetDeploymentV2,get_fleet_deployment_v2,get,FleetDeploymentV2DetailResponse,Fleet Automation,fleet automation,deployments,get_fleet_deployment_v2,select,$.data,Get a deployment by ID +fleet.yaml,/api/v2/fleet/deployments/{deployment_id}/cancel,CancelFleetDeploymentV2,cancel_fleet_deployment_v2,post,FleetDeploymentV2CancelResponse,Fleet Automation,fleet automation,deployments,cancel_fleet_deployment_v2,exec,,Cancel a deployment +fleet.yaml,/api/v2/fleet/schedules,ListFleetSchedulesV2,list_fleet_schedules_v2,get,FleetSchedulesV2Response,Fleet Automation,fleet automation,schedules,list_fleet_schedules_v2,select,$.data,List all schedules +fleet.yaml,/api/v2/fleet/schedules/{id},GetFleetScheduleV2,get_fleet_schedule_v2,get,FleetScheduleV2Response,Fleet Automation,fleet automation,schedules,get_fleet_schedule_v2,select,$.data,Get a schedule by ID +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/favorite,UpdateAppFavorite,update_app_favorite,patch,,App Builder,app builder,app_builder_app_favorites,update_app_favorite,update,,Update App Favorite Status +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/protection-level,UpdateProtectionLevel,update_protection_level,patch,UpdateAppResponse,App Builder,app builder,app_builder_app_protection_levels,update_protection_level,update,,Update App Protection Level +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/publish-request,CreatePublishRequest,create_publish_request,post,PublishAppResponse,App Builder,app builder,app_builder_app_publish_requests,create_publish_request,insert,,Create Publish Request +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/revert,RevertApp,revert_app,post,UpdateAppResponse,App Builder,app builder,app_builder_apps,revert_app,exec,,Revert App +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/self-service,UpdateAppSelfService,update_app_self_service,patch,,App Builder,app builder,app_builder_app_self_services,update_app_self_service,update,,Update App Self-Service Status +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/tags,UpdateAppTags,update_app_tags,patch,,App Builder,app builder,app_builder_app_tags,update_app_tags,update,,Update App Tags +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/version-name,UpdateAppVersionName,update_app_version_name,patch,,App Builder,app builder,app_builder_app_version_names,update_app_version_name,update,,Name App Version +infrastructure.yaml,/api/v2/app-builder/apps/{app_id}/versions,ListAppVersions,list_app_versions,get,ListAppVersionsResponse,App Builder,app builder,app_builder_app_versions,list_app_versions,select,$.data,List App Versions +infrastructure.yaml,/api/v2/app-builder/blueprint/{blueprint_id},GetBlueprint,get_blueprint,get,GetBlueprintResponse,App Builder,app builder,app_builder_blueprints,get_blueprint,select,$.data,Get Blueprint +infrastructure.yaml,/api/v2/app-builder/blueprints,ListBlueprints,list_blueprints,get,ListBlueprintsResponse,App Builder,app builder,app_builder_blueprints,list_blueprints,select,$.data,List Blueprints +infrastructure.yaml,/api/v2/app-builder/blueprints/integration-id/{integration_id},GetBlueprintsByIntegrationId,get_blueprints_by_integration_id,get,GetBlueprintsResponse,App Builder,app builder,app_builder_blueprint_integration_ids,get_blueprints_by_integration_id,select,$.data,Get Blueprints by Integration ID +infrastructure.yaml,/api/v2/app-builder/blueprints/slugs/{slugs},GetBlueprintsBySlugs,get_blueprints_by_slugs,get,GetBlueprintsResponse,App Builder,app builder,app_builder_blueprint_slugs,get_blueprints_by_slugs,select,$.data,Get Blueprints by Slugs +infrastructure.yaml,/api/v2/app-builder/tags,ListTags,list_tags,get,AppBuilderListTagsResponse,App Builder,app builder,app_builder_tags,list_tags,select,$.data,List Tags +infrastructure.yaml,/api/v2/cloudinventoryservice/syncconfigs,UpsertSyncConfig,upsert_sync_config,put,CloudInventorySyncConfigResponse,Storage Management,storage management,storage_management_configs,upsert_sync_config,replace,,Enable Storage Management for a bucket +infrastructure.yaml,/api/v2/cloudinventoryservice/syncconfigs/{id},DeleteSyncConfig,delete_sync_config,delete,,Storage Management,storage management,storage_management_configs,delete_sync_config,delete,,Delete a Storage Management configuration +infrastructure.yaml,/api/v2/ndm/tags/interfaces/{interface_id},ListInterfaceUserTags,list_interface_user_tags,get,ListInterfaceTagsResponse,Network Device Monitoring,network device monitoring,ndm_tag_interfaces,list_interface_user_tags,select,$.data,List tags for an interface +infrastructure.yaml,/api/v2/ndm/tags/interfaces/{interface_id},UpdateInterfaceUserTags,update_interface_user_tags,patch,ListInterfaceTagsResponse,Network Device Monitoring,network device monitoring,ndm_tag_interfaces,update_interface_user_tags,update,,Update the tags for an interface +infrastructure.yaml,/api/v2/network-health-insights,ListNetworkHealthInsights,list_network_health_insights,get,NetworkHealthInsightsResponse,Network Health Insights,network health insights,network_health_insights,list_network_health_insights,select,$.data,List network health insights +infrastructure.yaml,/api/v2/spa/recommendations/{service}/{shard},GetSPARecommendationsWithShard,get_sparecommendations_with_shard,get,RecommendationDocument,Spa,spa,spa_recommendations,get_sparecommendations_with_shard,select,$.data,Get SPA Recommendations with a shard parameter +infrastructure.yaml,/api/v1/host/{host_name}/mute,MuteHost,mute_host,post,HostMuteResponse,Hosts,hosts,hosts,mute_host,exec,,Mute a host +infrastructure.yaml,/api/v1/host/{host_name}/unmute,UnmuteHost,unmute_host,post,HostMuteResponse,Hosts,hosts,hosts,unmute_host,exec,,Unmute a host +infrastructure.yaml,/api/v1/hosts,ListHosts,list_hosts,get,HostListResponse,Hosts,hosts,hosts,list_hosts,select,$.host_list,Get all hosts for your organization +infrastructure.yaml,/api/v1/hosts/totals,GetHostTotals,get_host_totals,get,HostTotals,Hosts,hosts,host_totals,get_host_totals,select,,Get the total number of active hosts +infrastructure.yaml,/api/v1/tags/hosts,ListHostTags,list_host_tags,get,TagToHosts,Tags,tags,host_tags,list_host_tags,select,,Get All Host Tags +infrastructure.yaml,/api/v1/tags/hosts/{host_name},DeleteHostTags,delete_host_tags,delete,,Tags,tags,host_tags,delete_host_tags,delete,,Remove host tags +infrastructure.yaml,/api/v1/tags/hosts/{host_name},GetHostTags,get_host_tags,get,HostTags,Tags,tags,host_tags,get_host_tags,select,,Get Host Tags +infrastructure.yaml,/api/v1/tags/hosts/{host_name},CreateHostTags,create_host_tags,post,HostTags,Tags,tags,host_tags,create_host_tags,insert,,Add tags to a host +infrastructure.yaml,/api/v1/tags/hosts/{host_name},UpdateHostTags,update_host_tags,put,HostTags,Tags,tags,host_tags,update_host_tags,replace,,Update host tags +integrations.yaml,/api/v2/cloud_auth/aws/persona_mapping,ListAWSCloudAuthPersonaMappings,list_awscloud_auth_persona_mappings,get,AWSCloudAuthPersonaMappingsResponse,Cloud Authentication,cloud authentication,aws_persona_mappings,list_awscloud_auth_persona_mappings,select,$.data,List AWS cloud authentication persona mappings +integrations.yaml,/api/v2/cloud_auth/aws/persona_mapping,CreateAWSCloudAuthPersonaMapping,create_awscloud_auth_persona_mapping,post,AWSCloudAuthPersonaMappingResponse,Cloud Authentication,cloud authentication,aws_persona_mappings,create_awscloud_auth_persona_mapping,insert,,Create an AWS cloud authentication persona mapping +integrations.yaml,/api/v2/cloud_auth/aws/persona_mapping/{persona_mapping_id},DeleteAWSCloudAuthPersonaMapping,delete_awscloud_auth_persona_mapping,delete,,Cloud Authentication,cloud authentication,aws_persona_mappings,delete_awscloud_auth_persona_mapping,delete,,Delete an AWS cloud authentication persona mapping +integrations.yaml,/api/v2/cloud_auth/aws/persona_mapping/{persona_mapping_id},GetAWSCloudAuthPersonaMapping,get_awscloud_auth_persona_mapping,get,AWSCloudAuthPersonaMappingResponse,Cloud Authentication,cloud authentication,aws_persona_mappings,get_awscloud_auth_persona_mapping,select,$.data,Get an AWS cloud authentication persona mapping +integrations.yaml,/api/v2/idp/entity_integrations/{integration_id},DeleteEntityIntegrationConfig,delete_entity_integration_config,delete,,Entity Integration Configs,entity integration configs,entity_integration_configs,delete_entity_integration_config,delete,,Delete an entity integration configuration +integrations.yaml,/api/v2/idp/entity_integrations/{integration_id},GetEntityIntegrationConfig,get_entity_integration_config,get,EntityIntegrationConfigResponse,Entity Integration Configs,entity integration configs,entity_integration_configs,get_entity_integration_config,select,$.data,Get an entity integration configuration +integrations.yaml,/api/v2/idp/entity_integrations/{integration_id},UpdateEntityIntegrationConfig,update_entity_integration_config,put,EntityIntegrationConfigResponse,Entity Integration Configs,entity integration configs,entity_integration_configs,update_entity_integration_config,replace,,Create or update entity integration configuration +integrations.yaml,/api/v2/integration-interfaces/elastic-cloud/accounts,ListElasticCloudIntegrationAccounts,list_elastic_cloud_integration_accounts,get,ElasticCloudIntegrationAccountsResponse,Elastic Cloud Integration Accounts,elastic cloud integration accounts,elastic_cloud_accounts,list_elastic_cloud_integration_accounts,select,$.data,List Elastic Cloud integration accounts +integrations.yaml,/api/v2/integration-interfaces/elastic-cloud/accounts,CreateElasticCloudIntegrationAccount,create_elastic_cloud_integration_account,post,ElasticCloudIntegrationAccountResponse,Elastic Cloud Integration Accounts,elastic cloud integration accounts,elastic_cloud_accounts,create_elastic_cloud_integration_account,insert,,Create an Elastic Cloud integration account +integrations.yaml,/api/v2/integration-interfaces/elastic-cloud/accounts/{account_id},DeleteElasticCloudIntegrationAccount,delete_elastic_cloud_integration_account,delete,,Elastic Cloud Integration Accounts,elastic cloud integration accounts,elastic_cloud_accounts,delete_elastic_cloud_integration_account,delete,,Delete an Elastic Cloud integration account +integrations.yaml,/api/v2/integration-interfaces/elastic-cloud/accounts/{account_id},GetElasticCloudIntegrationAccount,get_elastic_cloud_integration_account,get,ElasticCloudIntegrationAccountResponse,Elastic Cloud Integration Accounts,elastic cloud integration accounts,elastic_cloud_accounts,get_elastic_cloud_integration_account,select,$.data,Get an Elastic Cloud integration account +integrations.yaml,/api/v2/integration-interfaces/elastic-cloud/accounts/{account_id},UpdateElasticCloudIntegrationAccount,update_elastic_cloud_integration_account,patch,ElasticCloudIntegrationAccountResponse,Elastic Cloud Integration Accounts,elastic cloud integration accounts,elastic_cloud_accounts,update_elastic_cloud_integration_account,update,,Update an Elastic Cloud integration account +integrations.yaml,/api/v2/integration-interfaces/twilio/accounts,ListTwilioIntegrationAccounts,list_twilio_integration_accounts,get,TwilioIntegrationAccountsResponse,Twilio Integration Accounts,twilio integration accounts,twilio_accounts,list_twilio_integration_accounts,select,$.data,List Twilio integration accounts +integrations.yaml,/api/v2/integration-interfaces/twilio/accounts,CreateTwilioIntegrationAccount,create_twilio_integration_account,post,TwilioIntegrationAccountResponse,Twilio Integration Accounts,twilio integration accounts,twilio_accounts,create_twilio_integration_account,insert,,Create a Twilio integration account +integrations.yaml,/api/v2/integration-interfaces/twilio/accounts/{account_id},DeleteTwilioIntegrationAccount,delete_twilio_integration_account,delete,,Twilio Integration Accounts,twilio integration accounts,twilio_accounts,delete_twilio_integration_account,delete,,Delete a Twilio integration account +integrations.yaml,/api/v2/integration-interfaces/twilio/accounts/{account_id},GetTwilioIntegrationAccount,get_twilio_integration_account,get,TwilioIntegrationAccountResponse,Twilio Integration Accounts,twilio integration accounts,twilio_accounts,get_twilio_integration_account,select,$.data,Get a Twilio integration account +integrations.yaml,/api/v2/integration-interfaces/twilio/accounts/{account_id},UpdateTwilioIntegrationAccount,update_twilio_integration_account,patch,TwilioIntegrationAccountResponse,Twilio Integration Accounts,twilio integration accounts,twilio_accounts,update_twilio_integration_account,update,,Update a Twilio integration account +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,DeleteAWSAccountCCMConfig,delete_awsaccount_ccmconfig,delete,,AWS Integration,aws integration,aws_account_ccm_configs,delete_awsaccount_ccmconfig,delete,,Delete AWS CCM config +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,GetAWSAccountCCMConfig,get_awsaccount_ccmconfig,get,AWSCcmConfigResponse,AWS Integration,aws integration,aws_account_ccm_configs,get_awsaccount_ccmconfig,select,$.data,Get AWS CCM config +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,UpdateAWSAccountCCMConfig,update_awsaccount_ccmconfig,patch,AWSCcmConfigResponse,AWS Integration,aws integration,aws_account_ccm_configs,update_awsaccount_ccmconfig,update,,Update AWS CCM config +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,CreateAWSAccountCCMConfig,create_awsaccount_ccmconfig,post,AWSCcmConfigResponse,AWS Integration,aws integration,aws_account_ccm_configs,create_awsaccount_ccmconfig,insert,,Create AWS CCM config +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id}/metric_name_filter_preview,GetAWSMetricNameFilterPreview,get_awsmetric_name_filter_preview,get,AWSMetricNameFilterPreviewResponse,AWS Integration,aws integration,aws_account_metric_name_filter_previews,get_awsmetric_name_filter_preview,select,$.data,Get AWS metric name filter preview +integrations.yaml,/api/v2/integration/aws/accounts/{aws_account_config_id}/metric_name_filter_preview,PreviewAWSMetricNameFilter,preview_awsmetric_name_filter,post,AWSMetricNameFilterPreviewResponse,AWS Integration,aws integration,aws_accounts,preview_awsmetric_name_filter,exec,,Preview AWS metric name filter +integrations.yaml,/api/v2/integration/aws/event_bridge,DeleteAWSEventBridgeSource,delete_awsevent_bridge_source,delete,AWSEventBridgeDeleteResponse,AWS Integration,aws integration,aws_event_bridges,delete_awsevent_bridge_source,delete,,Delete an Amazon EventBridge source +integrations.yaml,/api/v2/integration/aws/event_bridge,ListAWSEventBridgeSources,list_awsevent_bridge_sources,get,AWSEventBridgeListResponse,AWS Integration,aws integration,aws_event_bridges,list_awsevent_bridge_sources,select,$.data,Get all Amazon EventBridge sources +integrations.yaml,/api/v2/integration/aws/event_bridge,CreateAWSEventBridgeSource,create_awsevent_bridge_source,post,AWSEventBridgeCreateResponse,AWS Integration,aws integration,aws_event_bridges,create_awsevent_bridge_source,insert,,Create an Amazon EventBridge source +integrations.yaml,/api/v2/integration/aws/iam_permissions/resource_collection,GetAWSIntegrationIAMPermissionsResourceCollection,get_awsintegration_iampermissions_resource_collection,get,AWSIntegrationIamPermissionsResponse,AWS Integration,aws integration,aws_iam_permission_resource_collections,get_awsintegration_iampermissions_resource_collection,select,$.data,Get resource collection IAM permissions +integrations.yaml,/api/v2/integration/aws/iam_permissions/standard,GetAWSIntegrationIAMPermissionsStandard,get_awsintegration_iampermissions_standard,get,AWSIntegrationIamPermissionsResponse,AWS Integration,aws integration,aws_iam_permission_standards,get_awsintegration_iampermissions_standard,select,$.data,Get AWS integration standard IAM permissions +integrations.yaml,/api/v2/integration/aws/validate_ccm_config,ValidateAWSCCMConfig,validate_awsccmconfig,post,AWSCcmConfigValidationResponse,AWS Integration,aws integration,aws_accounts,validate_awsccmconfig,exec,,Validate AWS CCM config +integrations.yaml,/api/v2/integration/google-chat/organizations,ListGoogleChatOrganizations,list_google_chat_organizations,get,GoogleChatOrganizationsResponse,Google Chat Integration,google chat integration,google_chat_organizations,list_google_chat_organizations,select,$.data,Get all Google Chat organization bindings +integrations.yaml,/api/v2/integration/google-chat/organizations/app/named-spaces/{domain_name}/{space_display_name},GetSpaceByDisplayName,get_space_by_display_name,get,GoogleChatAppNamedSpaceResponse,Google Chat Integration,google chat integration,google_chat_organization_app_named_spaces,get_space_by_display_name,select,$.data,Get space information by display name +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id},DeleteGoogleChatOrganization,delete_google_chat_organization,delete,,Google Chat Integration,google chat integration,google_chat_organizations,delete_google_chat_organization,delete,,Delete a Google Chat organization binding +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id},GetGoogleChatOrganization,get_google_chat_organization,get,GoogleChatOrganizationResponse,Google Chat Integration,google chat integration,google_chat_organizations,get_google_chat_organization,select,$.data,Get a Google Chat organization binding +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/delegated-user,DeleteGoogleChatDelegatedUser,delete_google_chat_delegated_user,delete,,Google Chat Integration,google chat integration,google_chat_organization_delegated_users,delete_google_chat_delegated_user,delete,,Delete the delegated user +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/delegated-user,GetGoogleChatDelegatedUser,get_google_chat_delegated_user,get,GoogleChatDelegatedUserResponse,Google Chat Integration,google chat integration,google_chat_organization_delegated_users,get_google_chat_delegated_user,select,$.data,Get the delegated user +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles,ListOrganizationHandles,list_organization_handles,get,GoogleChatOrganizationHandlesResponse,Google Chat Integration,google chat integration,google_chat_organization_organization_handles,list_organization_handles,select,$.data,Get all organization handles +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles,CreateOrganizationHandle,create_organization_handle,post,GoogleChatOrganizationHandleResponse,Google Chat Integration,google chat integration,google_chat_organization_organization_handles,create_organization_handle,insert,,Create organization handle +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id},DeleteOrganizationHandle,delete_organization_handle,delete,,Google Chat Integration,google chat integration,google_chat_organization_organization_handles,delete_organization_handle,delete,,Delete organization handle +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id},GetOrganizationHandle,get_organization_handle,get,GoogleChatOrganizationHandleResponse,Google Chat Integration,google chat integration,google_chat_organization_organization_handles,get_organization_handle,select,$.data,Get organization handle +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id},UpdateOrganizationHandle,update_organization_handle,patch,GoogleChatOrganizationHandleResponse,Google Chat Integration,google chat integration,google_chat_organization_organization_handles,update_organization_handle,update,,Update organization handle +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences,ListGoogleChatTargetAudiences,list_google_chat_target_audiences,get,GoogleChatTargetAudiencesResponse,Google Chat Integration,google chat integration,google_chat_organization_target_audiences,list_google_chat_target_audiences,select,$.data,Get all target audiences +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences,CreateGoogleChatTargetAudience,create_google_chat_target_audience,post,GoogleChatTargetAudienceResponse,Google Chat Integration,google chat integration,google_chat_organization_target_audiences,create_google_chat_target_audience,insert,,Create a target audience +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id},DeleteGoogleChatTargetAudience,delete_google_chat_target_audience,delete,,Google Chat Integration,google chat integration,google_chat_organization_target_audiences,delete_google_chat_target_audience,delete,,Delete a target audience +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id},GetGoogleChatTargetAudience,get_google_chat_target_audience,get,GoogleChatTargetAudienceResponse,Google Chat Integration,google chat integration,google_chat_organization_target_audiences,get_google_chat_target_audience,select,$.data,Get a target audience +integrations.yaml,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id},UpdateGoogleChatTargetAudience,update_google_chat_target_audience,patch,GoogleChatTargetAudienceResponse,Google Chat Integration,google chat integration,google_chat_organization_target_audiences,update_google_chat_target_audience,update,,Update a target audience +integrations.yaml,/api/v2/integration/jira/accounts,ListJiraAccounts,list_jira_accounts,get,JiraAccountsResponse,Jira Integration,jira integration,jira_accounts,list_jira_accounts,select,$.data,List Jira accounts +integrations.yaml,/api/v2/integration/jira/accounts/{account_id},DeleteJiraAccount,delete_jira_account,delete,,Jira Integration,jira integration,jira_accounts,delete_jira_account,delete,,Delete Jira account +integrations.yaml,/api/v2/integration/jira/issue-templates,ListJiraIssueTemplates,list_jira_issue_templates,get,JiraIssueTemplatesResponse,Jira Integration,jira integration,jira_issue_templates,list_jira_issue_templates,select,$.data,List Jira issue templates +integrations.yaml,/api/v2/integration/jira/issue-templates,CreateJiraIssueTemplate,create_jira_issue_template,post,JiraIssueTemplateResponse,Jira Integration,jira integration,jira_issue_templates,create_jira_issue_template,insert,,Create Jira issue template +integrations.yaml,/api/v2/integration/jira/issue-templates/{issue_template_id},DeleteJiraIssueTemplate,delete_jira_issue_template,delete,,Jira Integration,jira integration,jira_issue_templates,delete_jira_issue_template,delete,,Delete Jira issue template +integrations.yaml,/api/v2/integration/jira/issue-templates/{issue_template_id},GetJiraIssueTemplate,get_jira_issue_template,get,JiraIssueTemplateResponse,Jira Integration,jira integration,jira_issue_templates,get_jira_issue_template,select,$.data,Get Jira issue template +integrations.yaml,/api/v2/integration/jira/issue-templates/{issue_template_id},UpdateJiraIssueTemplate,update_jira_issue_template,patch,JiraIssueTemplateResponse,Jira Integration,jira integration,jira_issue_templates,update_jira_issue_template,update,,Update Jira issue template +integrations.yaml,/api/v2/integration/ms-teams/configuration/user-binding/{tenant_id},DeleteMSTeamsUserBinding,delete_msteams_user_binding,delete,,Microsoft Teams Integration,microsoft teams integration,ms_team_user_bindings,delete_msteams_user_binding,delete,,Delete user binding +integrations.yaml,/api/v2/integration/oci/products,ListTenancyProducts,list_tenancy_products,get,TenancyProductsList,OCI Integration,oci integration,oci_products,list_tenancy_products,select,$.data,List tenancy products +integrations.yaml,/api/v2/integration/oci/tenancies,GetTenancyConfigs,get_tenancy_configs,get,TenancyConfigList,OCI Integration,oci integration,oci_tenancies,get_tenancy_configs,select,$.data,Get tenancy configs +integrations.yaml,/api/v2/integration/oci/tenancies,CreateTenancyConfig,create_tenancy_config,post,TenancyConfig,OCI Integration,oci integration,oci_tenancies,create_tenancy_config,insert,,Create tenancy config +integrations.yaml,/api/v2/integration/oci/tenancies/{tenancy_ocid},DeleteTenancyConfig,delete_tenancy_config,delete,,OCI Integration,oci integration,oci_tenancies,delete_tenancy_config,delete,,Delete tenancy config +integrations.yaml,/api/v2/integration/oci/tenancies/{tenancy_ocid},GetTenancyConfig,get_tenancy_config,get,TenancyConfig,OCI Integration,oci integration,oci_tenancies,get_tenancy_config,select,$.data,Get tenancy config +integrations.yaml,/api/v2/integration/oci/tenancies/{tenancy_ocid},UpdateTenancyConfig,update_tenancy_config,patch,TenancyConfig,OCI Integration,oci integration,oci_tenancies,update_tenancy_config,update,,Update tenancy config +integrations.yaml,/api/v2/integration/opsgenie/accounts,ListOpsgenieAccounts,list_opsgenie_accounts,get,OpsgenieAccountsResponse,Opsgenie Integration,opsgenie integration,opsgenie_accounts,list_opsgenie_accounts,select,$.data,Get all Opsgenie accounts +integrations.yaml,/api/v2/integration/opsgenie/accounts,CreateOpsgenieAccount,create_opsgenie_account,post,OpsgenieAccountResponse,Opsgenie Integration,opsgenie integration,opsgenie_accounts,create_opsgenie_account,insert,,Create a new Opsgenie account +integrations.yaml,/api/v2/integration/opsgenie/accounts/{account_id},DeleteOpsgenieAccount,delete_opsgenie_account,delete,,Opsgenie Integration,opsgenie integration,opsgenie_accounts,delete_opsgenie_account,delete,,Delete an Opsgenie account +integrations.yaml,/api/v2/integration/opsgenie/accounts/{account_id},UpdateOpsgenieAccount,update_opsgenie_account,patch,OpsgenieAccountResponse,Opsgenie Integration,opsgenie integration,opsgenie_accounts,update_opsgenie_account,update,,Update an Opsgenie account +integrations.yaml,/api/v2/integration/salesforce-incidents/incident-templates,GetIncidentTemplates,get_incident_templates,get,SalesforceIncidentsTemplatesResponse,Salesforce Integration,salesforce integration,salesforce_incident_incident_templates,get_incident_templates,select,$.data,Get all Salesforce incident templates +integrations.yaml,/api/v2/integration/salesforce-incidents/incident-templates,CreateIncidentTemplate,create_incident_template,post,SalesforceIncidentsTemplateResponse,Salesforce Integration,salesforce integration,salesforce_incident_incident_templates,create_incident_template,insert,,Create a Salesforce incident template +integrations.yaml,/api/v2/integration/salesforce-incidents/incident-templates/{incident_template_id},DeleteIncidentTemplate,delete_incident_template,delete,,Salesforce Integration,salesforce integration,salesforce_incident_incident_templates,delete_incident_template,delete,,Delete a Salesforce incident template +integrations.yaml,/api/v2/integration/salesforce-incidents/incident-templates/{incident_template_id},UpdateIncidentTemplate,update_incident_template,patch,SalesforceIncidentsTemplateResponse,Salesforce Integration,salesforce integration,salesforce_incident_incident_templates,update_incident_template,update,,Update a Salesforce incident template +integrations.yaml,/api/v2/integration/salesforce-incidents/organizations,GetSalesforceOrganizations,get_salesforce_organizations,get,SalesforceIncidentsOrganizationsResponse,Salesforce Integration,salesforce integration,salesforce_incident_organizations,get_salesforce_organizations,select,$.data,Get all connected Salesforce organizations +integrations.yaml,/api/v2/integration/salesforce-incidents/organizations/{salesforce_org_id},DeleteSalesforceOrganization,delete_salesforce_organization,delete,,Salesforce Integration,salesforce integration,salesforce_incident_organizations,delete_salesforce_organization,delete,,Delete a connected Salesforce organization +integrations.yaml,/api/v2/integration/servicenow/assignment_groups/{instance_id},ListServiceNowAssignmentGroups,list_service_now_assignment_groups,get,ServiceNowAssignmentGroupsResponse,ServiceNow Integration,service_now integration,servicenow_assignment_groups,list_service_now_assignment_groups,select,$.data,List ServiceNow assignment groups +integrations.yaml,/api/v2/integration/servicenow/business_services/{instance_id},ListServiceNowBusinessServices,list_service_now_business_services,get,ServiceNowBusinessServicesResponse,ServiceNow Integration,service_now integration,servicenow_business_services,list_service_now_business_services,select,$.data,List ServiceNow business services +integrations.yaml,/api/v2/integration/servicenow/handles,ListServiceNowTemplates,list_service_now_templates,get,ServiceNowTemplatesResponse,ServiceNow Integration,service_now integration,servicenow_handles,list_service_now_templates,select,$.data,List ServiceNow templates +integrations.yaml,/api/v2/integration/servicenow/handles,CreateServiceNowTemplate,create_service_now_template,post,ServiceNowTemplateResponse,ServiceNow Integration,service_now integration,servicenow_handles,create_service_now_template,insert,,Create ServiceNow template +integrations.yaml,/api/v2/integration/servicenow/handles/{template_id},DeleteServiceNowTemplate,delete_service_now_template,delete,,ServiceNow Integration,service_now integration,servicenow_handles,delete_service_now_template,delete,,Delete ServiceNow template +integrations.yaml,/api/v2/integration/servicenow/handles/{template_id},GetServiceNowTemplate,get_service_now_template,get,ServiceNowTemplateResponse,ServiceNow Integration,service_now integration,servicenow_handles,get_service_now_template,select,$.data,Get ServiceNow template +integrations.yaml,/api/v2/integration/servicenow/handles/{template_id},UpdateServiceNowTemplate,update_service_now_template,put,ServiceNowTemplateResponse,ServiceNow Integration,service_now integration,servicenow_handles,update_service_now_template,replace,,Update ServiceNow template +integrations.yaml,/api/v2/integration/servicenow/instances,ListServiceNowInstances,list_service_now_instances,get,ServiceNowInstancesResponse,ServiceNow Integration,service_now integration,servicenow_instances,list_service_now_instances,select,$.data,List ServiceNow instances +integrations.yaml,/api/v2/integration/servicenow/users/{instance_id},ListServiceNowUsers,list_service_now_users,get,ServiceNowUsersResponse,ServiceNow Integration,service_now integration,servicenow_users,list_service_now_users,select,$.data,List ServiceNow users +integrations.yaml,/api/v2/integration/slack/user-bindings,ListSlackUserBindings,list_slack_user_bindings,get,SlackUserBindingsResponse,Slack Integration,slack integration,slack_user_bindings,list_slack_user_bindings,select,$.data,List Slack user bindings +integrations.yaml,/api/v2/integration/statuspage/account,DeleteStatuspageAccount,delete_statuspage_account,delete,,Statuspage Integration,statuspage integration,statuspage_accounts,delete_statuspage_account,delete,,Delete the Statuspage account +integrations.yaml,/api/v2/integration/statuspage/account,GetStatuspageAccount,get_statuspage_account,get,StatuspageAccountResponse,Statuspage Integration,statuspage integration,statuspage_accounts,get_statuspage_account,select,$.data,Get the Statuspage account +integrations.yaml,/api/v2/integration/statuspage/account,UpdateStatuspageAccount,update_statuspage_account,patch,StatuspageAccountResponse,Statuspage Integration,statuspage integration,statuspage_accounts,update_statuspage_account,update,,Update the Statuspage account +integrations.yaml,/api/v2/integration/statuspage/account,CreateStatuspageAccount,create_statuspage_account,post,StatuspageAccountResponse,Statuspage Integration,statuspage integration,statuspage_accounts,create_statuspage_account,insert,,Create the Statuspage account +integrations.yaml,/api/v2/integration/statuspage/url_settings,ListStatuspageUrlSettings,list_statuspage_url_settings,get,StatuspageUrlSettingsResponse,Statuspage Integration,statuspage integration,statuspage_url_settings,list_statuspage_url_settings,select,$.data,Get all Statuspage URL settings +integrations.yaml,/api/v2/integration/statuspage/url_settings,CreateStatuspageUrlSetting,create_statuspage_url_setting,post,StatuspageUrlSettingResponse,Statuspage Integration,statuspage integration,statuspage_url_settings,create_statuspage_url_setting,insert,,Create a Statuspage URL setting +integrations.yaml,/api/v2/integration/statuspage/url_settings/{statuspage_url_setting_id},DeleteStatuspageUrlSetting,delete_statuspage_url_setting,delete,,Statuspage Integration,statuspage integration,statuspage_url_settings,delete_statuspage_url_setting,delete,,Delete a Statuspage URL setting +integrations.yaml,/api/v2/integration/statuspage/url_settings/{statuspage_url_setting_id},UpdateStatuspageUrlSetting,update_statuspage_url_setting,patch,StatuspageUrlSettingResponse,Statuspage Integration,statuspage integration,statuspage_url_settings,update_statuspage_url_setting,update,,Update a Statuspage URL setting +integrations.yaml,/api/v2/integration/webhooks/configuration/auth-method,GetAllAuthMethods,get_all_auth_methods,get,WebhooksAuthMethodsResponse,Webhooks Integration,webhooks integration,webhook_auth_methods,get_all_auth_methods,select,$.data,Get all auth methods +integrations.yaml,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials,CreateOAuth2ClientCredentials,create_oauth2_client_credentials,post,WebhooksOAuth2ClientCredentialsResponse,Webhooks Integration,webhooks integration,webhook_oauth2_client_credentials,create_oauth2_client_credentials,insert,,Create an OAuth2 client credentials auth method +integrations.yaml,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id},DeleteOAuth2ClientCredentials,delete_oauth2_client_credentials,delete,,Webhooks Integration,webhooks integration,webhook_oauth2_client_credentials,delete_oauth2_client_credentials,delete,,Delete an OAuth2 client credentials auth method +integrations.yaml,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id},GetOAuth2ClientCredentials,get_oauth2_client_credentials,get,WebhooksOAuth2ClientCredentialsResponse,Webhooks Integration,webhooks integration,webhook_oauth2_client_credentials,get_oauth2_client_credentials,select,$.data,Get an OAuth2 client credentials auth method +integrations.yaml,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id},UpdateOAuth2ClientCredentials,update_oauth2_client_credentials,patch,WebhooksOAuth2ClientCredentialsResponse,Webhooks Integration,webhooks integration,webhook_oauth2_client_credentials,update_oauth2_client_credentials,update,,Update an OAuth2 client credentials auth method +integrations.yaml,/api/v2/integrations,ListIntegrations,list_integrations,get,ListIntegrationsResponse,Integrations,integrations,integrations,list_integrations,select,$.data,List Integrations +integrations.yaml,/api/v2/reference-tables/queries/batch-rows,BatchRowsQuery,batch_rows_query,post,BatchRowsQueryResponse,Reference Tables,reference tables,reference_table_rows,batch_rows_query,exec,,Batch rows query +integrations.yaml,/api/v2/reference-tables/tables,ListTables,list_tables,get,TableResultV2Array,Reference Tables,reference tables,reference_tables,list_tables,select,$.data,List tables +integrations.yaml,/api/v2/reference-tables/tables,CreateReferenceTable,create_reference_table,post,TableResultV2,Reference Tables,reference tables,reference_tables,create_reference_table,insert,,Create reference table +integrations.yaml,/api/v2/reference-tables/tables/{id},DeleteTable,delete_table,delete,,Reference Tables,reference tables,reference_tables,delete_table,delete,,Delete table +integrations.yaml,/api/v2/reference-tables/tables/{id},GetTable,get_table,get,TableResultV2,Reference Tables,reference tables,reference_tables,get_table,select,$.data,Get table +integrations.yaml,/api/v2/reference-tables/tables/{id},UpdateReferenceTable,update_reference_table,patch,,Reference Tables,reference tables,reference_tables,update_reference_table,update,,Update reference table +integrations.yaml,/api/v2/reference-tables/tables/{id}/rows,DeleteRows,delete_rows,delete,,Reference Tables,reference tables,reference_table_rows,delete_rows,delete,,Delete rows +integrations.yaml,/api/v2/reference-tables/tables/{id}/rows,GetRowsByID,get_rows_by_id,get,TableRowResourceArray,Reference Tables,reference tables,reference_table_rows,get_rows_by_id,select,$.data,Get rows by id +integrations.yaml,/api/v2/reference-tables/tables/{id}/rows,UpsertRows,upsert_rows,post,,Reference Tables,reference tables,reference_table_rows,upsert_rows,exec,,Upsert rows +integrations.yaml,/api/v2/reference-tables/tables/{id}/rows/list,ListReferenceTableRows,list_reference_table_rows,get,ListRowsResponse,Reference Tables,reference tables,reference_table_rows,list_reference_table_rows,select,$.data,List rows +integrations.yaml,/api/v2/reference-tables/uploads,CreateReferenceTableUpload,create_reference_table_upload,post,CreateUploadResponse,Reference Tables,reference tables,reference_table_uploads,create_reference_table_upload,insert,,Create reference table upload +integrations.yaml,/api/v2/web-integrations/{integration_name}/accounts,ListWebIntegrationAccounts,list_web_integration_accounts,get,WebIntegrationAccountsResponse,Web Integrations,web integrations,web_integration_accounts,list_web_integration_accounts,select,$.data,List web integration accounts +integrations.yaml,/api/v2/web-integrations/{integration_name}/accounts,CreateWebIntegrationAccount,create_web_integration_account,post,WebIntegrationAccountResponse,Web Integrations,web integrations,web_integration_accounts,create_web_integration_account,insert,,Create a web integration account +integrations.yaml,/api/v2/web-integrations/{integration_name}/accounts/{account_id},DeleteWebIntegrationAccount,delete_web_integration_account,delete,,Web Integrations,web integrations,web_integration_accounts,delete_web_integration_account,delete,,Delete a web integration account +integrations.yaml,/api/v2/web-integrations/{integration_name}/accounts/{account_id},GetWebIntegrationAccount,get_web_integration_account,get,WebIntegrationAccountResponse,Web Integrations,web integrations,web_integration_accounts,get_web_integration_account,select,$.data,Get a web integration account +integrations.yaml,/api/v2/web-integrations/{integration_name}/accounts/{account_id},UpdateWebIntegrationAccount,update_web_integration_account,patch,WebIntegrationAccountResponse,Web Integrations,web integrations,web_integration_accounts,update_web_integration_account,update,,Update a web integration account +integrations.yaml,/api/v1/integration/aws,DeleteAWSAccountV1,delete_awsaccount_v1,delete,,AWS Integration,aws integration,skip_this_resource,,,,Delete an AWS integration +integrations.yaml,/api/v1/integration/aws,ListAWSAccountsV1,list_awsaccounts_v1,get,AWSAccountListResponse,AWS Integration,aws integration,skip_this_resource,,,,List all AWS integrations +integrations.yaml,/api/v1/integration/aws,CreateAWSAccountV1,create_awsaccount_v1,post,AWSAccountCreateResponse,AWS Integration,aws integration,skip_this_resource,,,,Create an AWS integration +integrations.yaml,/api/v1/integration/aws,UpdateAWSAccountV1,update_awsaccount_v1,put,,AWS Integration,aws integration,skip_this_resource,,,,Update an AWS integration +integrations.yaml,/api/v1/integration/aws/available_namespace_rules,ListAvailableAWSNamespaces,list_available_awsnamespaces,get,,AWS Integration,aws integration,skip_this_resource,,,,List namespace rules +integrations.yaml,/api/v1/integration/aws/event_bridge,DeleteAWSEventBridgeSourceV1,delete_awsevent_bridge_source_v1,delete,AWSEventBridgeDeleteResponseV1,AWS Integration,aws integration,skip_this_resource,,,,Delete an Amazon EventBridge source +integrations.yaml,/api/v1/integration/aws/event_bridge,ListAWSEventBridgeSourcesV1,list_awsevent_bridge_sources_v1,get,AWSEventBridgeListResponseV1,AWS Integration,aws integration,skip_this_resource,,,,Get all Amazon EventBridge sources +integrations.yaml,/api/v1/integration/aws/event_bridge,CreateAWSEventBridgeSourceV1,create_awsevent_bridge_source_v1,post,AWSEventBridgeCreateResponseV1,AWS Integration,aws integration,skip_this_resource,,,,Create an Amazon EventBridge source +integrations.yaml,/api/v1/integration/aws/filtering,DeleteAWSTagFilter,delete_awstag_filter,delete,,AWS Integration,aws integration,skip_this_resource,,,,Delete a tag filtering entry +integrations.yaml,/api/v1/integration/aws/filtering,ListAWSTagFilters,list_awstag_filters,get,AWSTagFilterListResponse,AWS Integration,aws integration,skip_this_resource,,,,Get all AWS tag filters +integrations.yaml,/api/v1/integration/aws/filtering,CreateAWSTagFilter,create_awstag_filter,post,,AWS Integration,aws integration,skip_this_resource,,,,Set an AWS tag filter +integrations.yaml,/api/v1/integration/aws/generate_new_external_id,CreateNewAWSExternalIDV1,create_new_awsexternal_idv1,put,AWSAccountCreateResponse,AWS Integration,aws integration,skip_this_resource,,,,Generate a new external ID +integrations.yaml,/api/v1/integration/aws/logs,DeleteAWSLambdaARN,delete_awslambda_arn,delete,,AWS Logs Integration,aws logs integration,skip_this_resource,,,,Delete an AWS Logs integration +integrations.yaml,/api/v1/integration/aws/logs,ListAWSLogsIntegrations,list_awslogs_integrations,get,AWSLogsListResponse,AWS Logs Integration,aws logs integration,skip_this_resource,,,,List all AWS Logs integrations +integrations.yaml,/api/v1/integration/aws/logs,CreateAWSLambdaARN,create_awslambda_arn,post,,AWS Logs Integration,aws logs integration,skip_this_resource,,,,Add AWS Log Lambda ARN +integrations.yaml,/api/v1/integration/aws/logs/check_async,CheckAWSLogsLambdaAsync,check_awslogs_lambda_async,post,AWSLogsAsyncResponse,AWS Logs Integration,aws logs integration,skip_this_resource,,,,Check that an AWS Lambda Function exists +integrations.yaml,/api/v1/integration/aws/logs/services,ListAWSLogsServicesV1,list_awslogs_services_v1,get,AWSLogsListServicesResponse,AWS Logs Integration,aws logs integration,skip_this_resource,,,,Get list of AWS log ready services +integrations.yaml,/api/v1/integration/aws/logs/services,EnableAWSLogServices,enable_awslog_services,post,,AWS Logs Integration,aws logs integration,skip_this_resource,,,,Enable an AWS Logs integration +integrations.yaml,/api/v1/integration/aws/logs/services_async,CheckAWSLogsServicesAsync,check_awslogs_services_async,post,AWSLogsAsyncResponse,AWS Logs Integration,aws logs integration,skip_this_resource,,,,Check permissions for log services +integrations.yaml,/api/v1/integration/azure,DeleteAzureIntegration,delete_azure_integration,delete,,Azure Integration,azure integration,azure_accounts,delete_azure_integration,delete,,Delete an Azure integration +integrations.yaml,/api/v1/integration/azure,ListAzureIntegration,list_azure_integration,get,AzureAccount,Azure Integration,azure integration,azure_accounts,list_azure_integration,select,,List all Azure integrations +integrations.yaml,/api/v1/integration/azure,CreateAzureIntegration,create_azure_integration,post,,Azure Integration,azure integration,azure_accounts,create_azure_integration,insert,,Create an Azure integration +integrations.yaml,/api/v1/integration/azure,UpdateAzureIntegration,update_azure_integration,put,,Azure Integration,azure integration,azure_accounts,update_azure_integration,replace,,Update an Azure integration +integrations.yaml,/api/v1/integration/azure/host_filters,UpdateAzureHostFilters,update_azure_host_filters,post,,Azure Integration,azure integration,azure_host_filters,update_azure_host_filters,insert,,Update Azure integration host filters +integrations.yaml,/api/v1/integration/gcp,DeleteGCPIntegration,delete_gcpintegration,delete,,GCP Integration,gcp integration,skip_this_resource,,,,Delete a GCP integration +integrations.yaml,/api/v1/integration/gcp,ListGCPIntegration,list_gcpintegration,get,GCPAccount,GCP Integration,gcp integration,skip_this_resource,,,,List all GCP integrations +integrations.yaml,/api/v1/integration/gcp,CreateGCPIntegration,create_gcpintegration,post,,GCP Integration,gcp integration,skip_this_resource,,,,Create a GCP integration +integrations.yaml,/api/v1/integration/gcp,UpdateGCPIntegration,update_gcpintegration,put,,GCP Integration,gcp integration,skip_this_resource,,,,Update a GCP integration +integrations.yaml,/api/v1/integration/pagerduty/configuration/services,CreatePagerDutyIntegrationService,create_pager_duty_integration_service,post,PagerDutyServiceName,PagerDuty Integration,pager_duty integration,pagerduty_services,create_pager_duty_integration_service,insert,,Create a new service object +integrations.yaml,/api/v1/integration/pagerduty/configuration/services/{service_name},DeletePagerDutyIntegrationService,delete_pager_duty_integration_service,delete,,PagerDuty Integration,pager_duty integration,pagerduty_services,delete_pager_duty_integration_service,delete,,Delete a single service object +integrations.yaml,/api/v1/integration/pagerduty/configuration/services/{service_name},GetPagerDutyIntegrationService,get_pager_duty_integration_service,get,PagerDutyServiceName,PagerDuty Integration,pager_duty integration,pagerduty_services,get_pager_duty_integration_service,select,,Get a single service object +integrations.yaml,/api/v1/integration/pagerduty/configuration/services/{service_name},UpdatePagerDutyIntegrationService,update_pager_duty_integration_service,put,,PagerDuty Integration,pager_duty integration,pagerduty_services,update_pager_duty_integration_service,replace,,Update a single service object +integrations.yaml,/api/v1/integration/slack/configuration/accounts/{account_name}/channels,GetSlackIntegrationChannels,get_slack_integration_channels,get,SlackIntegrationChannel,Slack Integration,slack integration,slack_channels,get_slack_integration_channels,select,,Get all channels in a Slack integration +integrations.yaml,/api/v1/integration/slack/configuration/accounts/{account_name}/channels,CreateSlackIntegrationChannel,create_slack_integration_channel,post,SlackIntegrationChannel,Slack Integration,slack integration,slack_channels,create_slack_integration_channel,insert,,Create a Slack integration channel +integrations.yaml,/api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name},RemoveSlackIntegrationChannel,remove_slack_integration_channel,delete,,Slack Integration,slack integration,slack_channels,remove_slack_integration_channel,delete,,Remove a Slack integration channel +integrations.yaml,/api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name},GetSlackIntegrationChannel,get_slack_integration_channel,get,SlackIntegrationChannel,Slack Integration,slack integration,slack_channels,get_slack_integration_channel,select,,Get a Slack integration channel +integrations.yaml,/api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name},UpdateSlackIntegrationChannel,update_slack_integration_channel,patch,SlackIntegrationChannel,Slack Integration,slack integration,slack_channels,update_slack_integration_channel,update,,Update a Slack integration channel +integrations.yaml,/api/v1/integration/webhooks/configuration/custom-variables,CreateWebhooksIntegrationCustomVariable,create_webhooks_integration_custom_variable,post,WebhooksIntegrationCustomVariableResponse,Webhooks Integration,webhooks integration,webhook_custom_variables,create_webhooks_integration_custom_variable,insert,,Create a custom variable +integrations.yaml,/api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name},DeleteWebhooksIntegrationCustomVariable,delete_webhooks_integration_custom_variable,delete,,Webhooks Integration,webhooks integration,webhook_custom_variables,delete_webhooks_integration_custom_variable,delete,,Delete a custom variable +integrations.yaml,/api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name},GetWebhooksIntegrationCustomVariable,get_webhooks_integration_custom_variable,get,WebhooksIntegrationCustomVariableResponse,Webhooks Integration,webhooks integration,webhook_custom_variables,get_webhooks_integration_custom_variable,select,,Get a custom variable +integrations.yaml,/api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name},UpdateWebhooksIntegrationCustomVariable,update_webhooks_integration_custom_variable,put,WebhooksIntegrationCustomVariableResponse,Webhooks Integration,webhooks integration,webhook_custom_variables,update_webhooks_integration_custom_variable,replace,,Update a custom variable +integrations.yaml,/api/v1/integration/webhooks/configuration/webhooks,CreateWebhooksIntegration,create_webhooks_integration,post,WebhooksIntegration,Webhooks Integration,webhooks integration,webhooks,create_webhooks_integration,insert,,Create a webhooks integration +integrations.yaml,/api/v1/integration/webhooks/configuration/webhooks/{webhook_name},DeleteWebhooksIntegration,delete_webhooks_integration,delete,,Webhooks Integration,webhooks integration,webhooks,delete_webhooks_integration,delete,,Delete a webhook +integrations.yaml,/api/v1/integration/webhooks/configuration/webhooks/{webhook_name},GetWebhooksIntegration,get_webhooks_integration,get,WebhooksIntegration,Webhooks Integration,webhooks integration,webhooks,get_webhooks_integration,select,,Get a webhook integration +integrations.yaml,/api/v1/integration/webhooks/configuration/webhooks/{webhook_name},UpdateWebhooksIntegration,update_webhooks_integration,put,WebhooksIntegration,Webhooks Integration,webhooks integration,webhooks,update_webhooks_integration,replace,,Update a webhook +llm_observability.yaml,/api/unstable/llm-obs/config/evaluators/custom,ListLLMObsCustomEvalConfigs,list_llmobs_custom_eval_configs,get,LLMObsCustomEvalConfigListResponse,Agent Observability,agent observability,evaluator_customs,list_llmobs_custom_eval_configs,select,$.data,List custom evaluator configurations +llm_observability.yaml,/api/unstable/llm-obs/config/evaluators/custom/{eval_name},DeleteLLMObsCustomEvalConfig,delete_llmobs_custom_eval_config,delete,,Agent Observability,agent observability,evaluator_customs,delete_llmobs_custom_eval_config,delete,,Delete a custom evaluator configuration +llm_observability.yaml,/api/unstable/llm-obs/config/evaluators/custom/{eval_name},GetLLMObsCustomEvalConfig,get_llmobs_custom_eval_config,get,LLMObsCustomEvalConfigResponse,Agent Observability,agent observability,evaluator_customs,get_llmobs_custom_eval_config,select,$.data,Get a custom evaluator configuration +llm_observability.yaml,/api/unstable/llm-obs/config/evaluators/custom/{eval_name},UpdateLLMObsCustomEvalConfig,update_llmobs_custom_eval_config,put,,Agent Observability,agent observability,evaluator_customs,update_llmobs_custom_eval_config,replace,,Create or update a custom evaluator configuration +llm_observability.yaml,/api/v2/llm-obs/v1/annotated-interactions,GetLLMObsAnnotatedInteractionsByTraceIDs,get_llmobs_annotated_interactions_by_trace_ids,get,LLMObsAnnotatedInteractionsByTraceResponse,Agent Observability,agent observability,annotated_interactions,get_llmobs_annotated_interactions_by_trace_ids,select,$.data,Get annotated interactions by content IDs +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues,ListLLMObsAnnotationQueues,list_llmobs_annotation_queues,get,LLMObsAnnotationQueuesResponse,Agent Observability,agent observability,annotation_queues,list_llmobs_annotation_queues,select,$.data,List Agent Observability annotation queues +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues,CreateLLMObsAnnotationQueue,create_llmobs_annotation_queue,post,LLMObsAnnotationQueueResponse,Agent Observability,agent observability,annotation_queues,create_llmobs_annotation_queue,insert,,Create an Agent Observability annotation queue +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id},DeleteLLMObsAnnotationQueue,delete_llmobs_annotation_queue,delete,,Agent Observability,agent observability,annotation_queues,delete_llmobs_annotation_queue,delete,,Delete an Agent Observability annotation queue +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id},UpdateLLMObsAnnotationQueue,update_llmobs_annotation_queue,patch,LLMObsAnnotationQueueResponse,Agent Observability,agent observability,annotation_queues,update_llmobs_annotation_queue,update,,Update an Agent Observability annotation queue +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotated-interactions,GetLLMObsAnnotatedInteractions,get_llmobs_annotated_interactions,get,LLMObsAnnotatedInteractionsResponse,Agent Observability,agent observability,annotation_queue_annotated_interactions,get_llmobs_annotated_interactions,select,$.data,Get annotated queue interactions +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations,UpsertLLMObsAnnotations,upsert_llmobs_annotations,post,LLMObsAnnotationsResponse,Agent Observability,agent observability,annotation_queue_annotations,upsert_llmobs_annotations,insert,,Create or update annotations +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations/delete,DeleteLLMObsAnnotations,delete_llmobs_annotations,post,LLMObsDeleteAnnotationsResponse,Agent Observability,agent observability,annotation_queue_annotations,delete_llmobs_annotations,exec,,Delete annotations +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions,CreateLLMObsAnnotationQueueInteractions,create_llmobs_annotation_queue_interactions,post,LLMObsAnnotationQueueInteractionsResponse,Agent Observability,agent observability,annotation_queue_interactions,create_llmobs_annotation_queue_interactions,insert,,Add annotation queue interactions +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions/delete,DeleteLLMObsAnnotationQueueInteractions,delete_llmobs_annotation_queue_interactions,post,,Agent Observability,agent observability,annotation_queue_interactions,delete_llmobs_annotation_queue_interactions,exec,,Delete annotation queue interactions +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/label-schema,GetLLMObsAnnotationQueueLabelSchema,get_llmobs_annotation_queue_label_schema,get,LLMObsAnnotationQueueLabelSchemaResponse,Agent Observability,agent observability,annotation_queue_label_schemas,get_llmobs_annotation_queue_label_schema,select,$.data,Get annotation queue label schema +llm_observability.yaml,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/label-schema,UpdateLLMObsAnnotationQueueLabelSchema,update_llmobs_annotation_queue_label_schema,put,LLMObsAnnotationQueueLabelSchemaResponse,Agent Observability,agent observability,annotation_queue_label_schemas,update_llmobs_annotation_queue_label_schema,replace,,Update annotation queue label schema +llm_observability.yaml,/api/v2/llm-obs/v1/experimentation/analytics,AggregateLLMObsExperimentation,aggregate_llmobs_experimentation,post,LLMObsExperimentationAnalyticsResponse,Agent Observability,agent observability,experiments,aggregate_llmobs_experimentation,exec,,Aggregate Agent Observability experimentation +llm_observability.yaml,/api/v2/llm-obs/v1/experimentation/search,SearchLLMObsExperimentation,search_llmobs_experimentation,post,LLMObsExperimentationSearchResponse,Agent Observability,agent observability,experiments,search_llmobs_experimentation,exec,,Search Agent Observability experimentation +llm_observability.yaml,/api/v2/llm-obs/v1/experimentation/simple-search,SimpleSearchLLMObsExperimentation,simple_search_llmobs_experimentation,post,LLMObsExperimentationSimpleSearchResponse,Agent Observability,agent observability,experiments,simple_search_llmobs_experimentation,exec,,Simple search experimentation entities +llm_observability.yaml,/api/v2/llm-obs/v1/experiments,ListLLMObsExperiments,list_llmobs_experiments,get,LLMObsExperimentsResponse,Agent Observability,agent observability,experiments,list_llmobs_experiments,select,$.data,List Agent Observability experiments +llm_observability.yaml,/api/v2/llm-obs/v1/experiments,CreateLLMObsExperiment,create_llmobs_experiment,post,LLMObsExperimentResponse,Agent Observability,agent observability,experiments,create_llmobs_experiment,insert,,Create an Agent Observability experiment +llm_observability.yaml,/api/v2/llm-obs/v1/experiments/delete,DeleteLLMObsExperiments,delete_llmobs_experiments,post,,Agent Observability,agent observability,experiments,delete_llmobs_experiments,exec,,Delete Agent Observability experiments +llm_observability.yaml,/api/v2/llm-obs/v1/experiments/{experiment_id},UpdateLLMObsExperiment,update_llmobs_experiment,patch,LLMObsExperimentResponse,Agent Observability,agent observability,experiments,update_llmobs_experiment,update,,Update an Agent Observability experiment +llm_observability.yaml,/api/v2/llm-obs/v1/experiments/{experiment_id}/events,ListLLMObsExperimentEventsV1,list_llmobs_experiment_events_v1,get,LLMObsExperimentSpansResponse,Agent Observability,agent observability,skip_this_resource,,,,List Agent Observability experiment spans (v1) +llm_observability.yaml,/api/v2/llm-obs/v1/experiments/{experiment_id}/events,CreateLLMObsExperimentEvents,create_llmobs_experiment_events,post,,Agent Observability,agent observability,experiment_events,create_llmobs_experiment_events,insert,,Push events for an Agent Observability experiment +llm_observability.yaml,/api/v2/llm-obs/v1/integrations/{integration}/accounts,ListLLMObsIntegrationAccounts,list_llmobs_integration_accounts,get,LLMObsIntegrationAccount,Agent Observability,agent observability,integration_accounts,list_llmobs_integration_accounts,select,,List LLM integration accounts +llm_observability.yaml,/api/v2/llm-obs/v1/integrations/{integration}/{account_id}/inference,CreateLLMObsIntegrationInference,create_llmobs_integration_inference,post,LLMObsIntegrationInferenceResponse,Agent Observability,agent observability,integration_inferences,create_llmobs_integration_inference,insert,,Run an LLM inference +llm_observability.yaml,/api/v2/llm-obs/v1/integrations/{integration}/{account_id}/models,ListLLMObsIntegrationModels,list_llmobs_integration_models,get,LLMObsIntegrationModel,Agent Observability,agent observability,integration_models,list_llmobs_integration_models,select,,List LLM integration models +llm_observability.yaml,/api/v2/llm-obs/v1/projects,ListLLMObsProjects,list_llmobs_projects,get,LLMObsProjectsResponse,Agent Observability,agent observability,projects,list_llmobs_projects,select,$.data,List Agent Observability projects +llm_observability.yaml,/api/v2/llm-obs/v1/projects,CreateLLMObsProject,create_llmobs_project,post,LLMObsProjectResponse,Agent Observability,agent observability,projects,create_llmobs_project,insert,,Create an Agent Observability project +llm_observability.yaml,/api/v2/llm-obs/v1/projects/delete,DeleteLLMObsProjects,delete_llmobs_projects,post,,Agent Observability,agent observability,projects,delete_llmobs_projects,exec,,Delete Agent Observability projects +llm_observability.yaml,/api/v2/llm-obs/v1/projects/{project_id},UpdateLLMObsProject,update_llmobs_project,patch,LLMObsProjectResponse,Agent Observability,agent observability,projects,update_llmobs_project,update,,Update an Agent Observability project +llm_observability.yaml,/api/v2/llm-obs/v1/prompts,ListLLMObsPrompts,list_llmobs_prompts,get,LLMObsPromptsResponse,Agent Observability,agent observability,prompts,list_llmobs_prompts,select,$.data,List Agent Observability prompts +llm_observability.yaml,/api/v2/llm-obs/v1/prompts,CreateLLMObsPrompt,create_llmobs_prompt,post,LLMObsPromptResponse,Agent Observability,agent observability,prompts,create_llmobs_prompt,insert,,Create an Agent Observability prompt +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id},DeleteLLMObsPrompt,delete_llmobs_prompt,delete,LLMObsDeletedPromptResponse,Agent Observability,agent observability,prompts,delete_llmobs_prompt,delete,,Delete an Agent Observability prompt +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id},GetLLMObsPrompt,get_llmobs_prompt,get,LLMObsPromptSDKResponse,Agent Observability,agent observability,prompts,get_llmobs_prompt,select,$.data,Get an Agent Observability prompt +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id},UpdateLLMObsPrompt,update_llmobs_prompt,patch,LLMObsPromptResponse,Agent Observability,agent observability,prompts,update_llmobs_prompt,update,,Update an Agent Observability prompt +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions,ListLLMObsPromptVersions,list_llmobs_prompt_versions,get,LLMObsPromptVersionsResponse,Agent Observability,agent observability,prompt_versions,list_llmobs_prompt_versions,select,$.data,List versions of an Agent Observability prompt +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions,CreateLLMObsPromptVersion,create_llmobs_prompt_version,post,LLMObsPromptVersionResponse,Agent Observability,agent observability,prompt_versions,create_llmobs_prompt_version,insert,,Create a new Agent Observability prompt version +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions/{version},GetLLMObsPromptVersion,get_llmobs_prompt_version,get,LLMObsPromptVersionResponse,Agent Observability,agent observability,prompt_versions,get_llmobs_prompt_version,select,$.data,Get a specific Agent Observability prompt version +llm_observability.yaml,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions/{version},UpdateLLMObsPromptVersion,update_llmobs_prompt_version,patch,LLMObsPromptVersionResponse,Agent Observability,agent observability,prompt_versions,update_llmobs_prompt_version,update,,Update an Agent Observability prompt version +llm_observability.yaml,/api/v2/llm-obs/v1/spans/events,ListLLMObsSpans,list_llmobs_spans,get,LLMObsSpansResponse,Agent Observability,agent observability,span_events,list_llmobs_spans,select,$.data,List Agent Observability spans +llm_observability.yaml,/api/v2/llm-obs/v1/spans/events/search,SearchLLMObsSpans,search_llmobs_spans,post,LLMObsSpansResponse,Agent Observability,agent observability,span_events,search_llmobs_spans,exec,,Search Agent Observability spans +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-clustered-points,ListLLMObsPatternsClusteredPoints,list_llmobs_patterns_clustered_points,get,LLMObsPatternsClusteredPointsResponse,Agent Observability,agent observability,topic_discovery_clustered_points,list_llmobs_patterns_clustered_points,select,$.data,List patterns clustered points +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-configs,ListLLMObsPatternsConfigs,list_llmobs_patterns_configs,get,LLMObsPatternsConfigsResponse,Agent Observability,agent observability,topic_discovery_configs,list_llmobs_patterns_configs,select,$.data,List patterns configurations +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-configs,UpsertLLMObsPatternsConfig,upsert_llmobs_patterns_config,put,LLMObsPatternsConfigResponse,Agent Observability,agent observability,topic_discovery_configs,upsert_llmobs_patterns_config,replace,,Create or update a patterns configuration +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-configs/latest,GetLLMObsPatternsConfig,get_llmobs_patterns_config,get,LLMObsPatternsConfigResponse,Agent Observability,agent observability,topic_discovery_latest_configs,get_llmobs_patterns_config,select,$.data,Get a patterns configuration +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-configs/{config_id},DeleteLLMObsPatternsConfig,delete_llmobs_patterns_config,delete,,Agent Observability,agent observability,topic_discovery_configs,delete_llmobs_patterns_config,delete,,Delete a patterns configuration +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-runs,ListLLMObsPatternsRuns,list_llmobs_patterns_runs,get,LLMObsPatternsRunsResponse,Agent Observability,agent observability,topic_discovery_runs,list_llmobs_patterns_runs,select,$.data,List patterns runs +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-runs,TriggerLLMObsPatterns,trigger_llmobs_patterns,post,LLMObsPatternsTriggerResponse,Agent Observability,agent observability,topic_discovery_runs,trigger_llmobs_patterns,insert,,Trigger a patterns run +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-runs/status,GetLLMObsPatternsRunStatus,get_llmobs_patterns_run_status,get,LLMObsPatternsRunStatusResponse,Agent Observability,agent observability,topic_discovery_run_statuses,get_llmobs_patterns_run_status,select,$.data,Get patterns run status +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-topics,ListLLMObsPatternsTopics,list_llmobs_patterns_topics,get,LLMObsPatternsTopicsResponse,Agent Observability,agent observability,topic_discovery_topics,list_llmobs_patterns_topics,select,$.data,List patterns topics +llm_observability.yaml,/api/v2/llm-obs/v1/topic-discovery-topics/with-cluster-points,ListLLMObsPatternsTopicsWithClusteredPoints,list_llmobs_patterns_topics_with_clustered_points,get,LLMObsPatternsTopicsWithClusteredPointsResponse,Agent Observability,agent observability,topic_discovery_topic_with_cluster_points,list_llmobs_patterns_topics_with_clustered_points,select,$.data,List patterns topics with clustered points +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets,ListLLMObsDatasets,list_llmobs_datasets,get,LLMObsDatasetsResponse,Agent Observability,agent observability,datasets,list_llmobs_datasets,select,$.data,List Agent Observability datasets +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets,CreateLLMObsDataset,create_llmobs_dataset,post,LLMObsDatasetResponse,Agent Observability,agent observability,datasets,create_llmobs_dataset,insert,,Create an Agent Observability dataset +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/delete,DeleteLLMObsDatasets,delete_llmobs_datasets,post,,Agent Observability,agent observability,datasets,delete_llmobs_datasets,exec,,Delete Agent Observability datasets +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id},UpdateLLMObsDataset,update_llmobs_dataset,patch,LLMObsDatasetResponse,Agent Observability,agent observability,datasets,update_llmobs_dataset,update,,Update an Agent Observability dataset +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/batch_update,BatchUpdateLLMObsDataset,batch_update_llmobs_dataset,post,LLMObsDatasetRecordsMutationResponse,Agent Observability,agent observability,datasets,batch_update_llmobs_dataset,exec,,Batch update Agent Observability dataset records +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/clone,CloneLLMObsDataset,clone_llmobs_dataset,post,LLMObsDatasetResponse,Agent Observability,agent observability,datasets,clone_llmobs_dataset,exec,,Clone an Agent Observability dataset +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state,GetLLMObsDatasetDraftState,get_llmobs_dataset_draft_state,get,LLMObsDatasetDraftStateResponse,Agent Observability,agent observability,dataset_draft_states,get_llmobs_dataset_draft_state,select,$.data,Get Agent Observability dataset draft state +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/lock,LockLLMObsDatasetDraftState,lock_llmobs_dataset_draft_state,patch,LLMObsDatasetDraftStateResponse,Agent Observability,agent observability,dataset_draft_states,lock_llmobs_dataset_draft_state,exec,,Lock Agent Observability dataset draft state +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/unlock,UnlockLLMObsDatasetDraftState,unlock_llmobs_dataset_draft_state,patch,,Agent Observability,agent observability,dataset_draft_states,unlock_llmobs_dataset_draft_state,exec,,Unlock Agent Observability dataset draft state +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/export,ExportLLMObsDataset,export_llmobs_dataset,get,,Agent Observability,agent observability,skip_this_resource,,,,Export an Agent Observability dataset +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records,ListLLMObsDatasetRecords,list_llmobs_dataset_records,get,LLMObsDatasetRecordsListResponse,Agent Observability,agent observability,dataset_records,list_llmobs_dataset_records,select,$.data,List Agent Observability dataset records +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records,UpdateLLMObsDatasetRecords,update_llmobs_dataset_records,patch,LLMObsDatasetRecordsMutationResponse,Agent Observability,agent observability,dataset_records,update_llmobs_dataset_records,update,,Update Agent Observability dataset records +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records,CreateLLMObsDatasetRecords,create_llmobs_dataset_records,post,LLMObsDatasetRecordsMutationResponse,Agent Observability,agent observability,dataset_records,create_llmobs_dataset_records,insert,,Append records to an Agent Observability dataset +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records/delete,DeleteLLMObsDatasetRecords,delete_llmobs_dataset_records,post,,Agent Observability,agent observability,dataset_records,delete_llmobs_dataset_records,exec,,Delete Agent Observability dataset records +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/restore,RestoreLLMObsDatasetVersion,restore_llmobs_dataset_version,post,,Agent Observability,agent observability,datasets,restore_llmobs_dataset_version,exec,,Restore an Agent Observability dataset version +llm_observability.yaml,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/versions,ListLLMObsDatasetVersions,list_llmobs_dataset_versions,get,LLMObsDatasetVersionsResponse,Agent Observability,agent observability,dataset_versions,list_llmobs_dataset_versions,select,$.data,List Agent Observability dataset versions +llm_observability.yaml,/api/v2/llm-obs/v2/experiments/{experiment_id}/events,ListLLMObsExperimentEventsV2,list_llmobs_experiment_events_v2,get,LLMObsExperimentEventsV2Response,Agent Observability,agent observability,skip_this_resource,,,,List Agent Observability experiment events (v2) +llm_observability.yaml,/api/v2/llm-obs/v2/{project_id}/datasets/{dataset_id}/records/upload,UploadLLMObsDatasetRecordsFile,upload_llmobs_dataset_records_file,post,,Agent Observability,agent observability,skip_this_resource,,,,Upload records to an Agent Observability dataset +llm_observability.yaml,/api/v2/llm-obs/v3/experiments/{experiment_id}/events,ListLLMObsExperimentEvents,list_llmobs_experiment_events,get,LLMObsExperimentEventsV2Response,Agent Observability,agent observability,experiment_events_v3,list_llmobs_experiment_events,select,$.data,List events for an Agent Observability experiment +llm_observability.yaml,/api/v2/model-lab-api/artifacts/content,GetModelLabArtifactContent,get_model_lab_artifact_content,get,,Model Lab API,model lab api,skip_this_resource,,,,Get Model Lab artifact content +llm_observability.yaml,/api/v2/model-lab-api/facet-keys,ListModelLabRunFacetKeys,list_model_lab_run_facet_keys,get,ModelLabFacetKeysResponse,Model Lab API,model lab api,model_lab_facet_keys,list_model_lab_run_facet_keys,select,$.data,List Model Lab run facet keys +llm_observability.yaml,/api/v2/model-lab-api/facet-values,ListModelLabRunFacetValues,list_model_lab_run_facet_values,get,ModelLabFacetValuesResponse,Model Lab API,model lab api,model_lab_facet_values,list_model_lab_run_facet_values,select,$.data,List Model Lab run facet values +llm_observability.yaml,/api/v2/model-lab-api/project-facet-keys,ListModelLabProjectFacetKeys,list_model_lab_project_facet_keys,get,ModelLabFacetKeysResponse,Model Lab API,model lab api,model_lab_project_facet_keys,list_model_lab_project_facet_keys,select,$.data,List Model Lab project facet keys +llm_observability.yaml,/api/v2/model-lab-api/project-facet-values,ListModelLabProjectFacetValues,list_model_lab_project_facet_values,get,ModelLabFacetValuesResponse,Model Lab API,model lab api,model_lab_project_facet_values,list_model_lab_project_facet_values,select,$.data,List Model Lab project facet values +llm_observability.yaml,/api/v2/model-lab-api/projects,ListModelLabProjects,list_model_lab_projects,get,ModelLabProjectsResponse,Model Lab API,model lab api,model_lab_projects,list_model_lab_projects,select,$.data,List Model Lab projects +llm_observability.yaml,/api/v2/model-lab-api/projects/{project_id},GetModelLabProject,get_model_lab_project,get,ModelLabProjectResponse,Model Lab API,model lab api,model_lab_projects,get_model_lab_project,select,$.data,Get a Model Lab project +llm_observability.yaml,/api/v2/model-lab-api/projects/{project_id}/artifacts,ListModelLabProjectArtifacts,list_model_lab_project_artifacts,get,ModelLabProjectArtifactsResponse,Model Lab API,model lab api,model_lab_project_artifacts,list_model_lab_project_artifacts,select,$.data,List Model Lab project artifacts +llm_observability.yaml,/api/v2/model-lab-api/projects/{project_id}/star,UnstarModelLabProject,unstar_model_lab_project,delete,,Model Lab API,model lab api,model_lab_projects,unstar_model_lab_project,delete,,Remove star from a Model Lab project +llm_observability.yaml,/api/v2/model-lab-api/projects/{project_id}/star,StarModelLabProject,star_model_lab_project,post,,Model Lab API,model lab api,model_lab_projects,star_model_lab_project,exec,,Star a Model Lab project +llm_observability.yaml,/api/v2/model-lab-api/runs,ListModelLabRuns,list_model_lab_runs,get,ModelLabRunsResponse,Model Lab API,model lab api,model_lab_runs,list_model_lab_runs,select,$.data,List Model Lab runs +llm_observability.yaml,/api/v2/model-lab-api/runs/{run_id},DeleteModelLabRun,delete_model_lab_run,delete,,Model Lab API,model lab api,model_lab_runs,delete_model_lab_run,delete,,Delete a Model Lab run +llm_observability.yaml,/api/v2/model-lab-api/runs/{run_id},GetModelLabRun,get_model_lab_run,get,ModelLabRunResponse,Model Lab API,model lab api,model_lab_runs,get_model_lab_run,select,$.data,Get a Model Lab run +llm_observability.yaml,/api/v2/model-lab-api/runs/{run_id}/artifacts,ListModelLabRunArtifacts,list_model_lab_run_artifacts,get,ModelLabRunArtifactsResponse,Model Lab API,model lab api,model_lab_run_artifacts,list_model_lab_run_artifacts,select,$.data,List Model Lab run artifacts +llm_observability.yaml,/api/v2/model-lab-api/runs/{run_id}/pin,UnpinModelLabRun,unpin_model_lab_run,delete,,Model Lab API,model lab api,model_lab_run_pins,unpin_model_lab_run,delete,,Unpin a Model Lab run +llm_observability.yaml,/api/v2/model-lab-api/runs/{run_id}/pin,PinModelLabRun,pin_model_lab_run,post,,Model Lab API,model lab api,model_lab_run_pins,pin_model_lab_run,insert,,Pin a Model Lab run +logs.yaml,/api/v2/logs/config/restriction_queries,ListRestrictionQueries,list_restriction_queries,get,RestrictionQueryListResponse,Logs Restriction Queries,logs restriction queries,restriction_queries,list_restriction_queries,select,$.data,List restriction queries +logs.yaml,/api/v2/logs/config/restriction_queries,CreateRestrictionQuery,create_restriction_query,post,RestrictionQueryWithoutRelationshipsResponse,Logs Restriction Queries,logs restriction queries,restriction_queries,create_restriction_query,insert,,Create a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/role/{role_id},GetRoleRestrictionQuery,get_role_restriction_query,get,RestrictionQueryListResponse,Logs Restriction Queries,logs restriction queries,restriction_query_roles,get_role_restriction_query,select,$.data,Get restriction query for a given role +logs.yaml,/api/v2/logs/config/restriction_queries/user/{user_id},ListUserRestrictionQueries,list_user_restriction_queries,get,RestrictionQueryListResponse,Logs Restriction Queries,logs restriction queries,restriction_query_users,list_user_restriction_queries,select,$.data,Get all restriction queries for a given user +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id},DeleteRestrictionQuery,delete_restriction_query,delete,,Logs Restriction Queries,logs restriction queries,restriction_queries,delete_restriction_query,delete,,Delete a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id},GetRestrictionQuery,get_restriction_query,get,RestrictionQueryWithRelationshipsResponse,Logs Restriction Queries,logs restriction queries,restriction_queries,get_restriction_query,select,$.data,Get a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id},UpdateRestrictionQuery,update_restriction_query,patch,RestrictionQueryWithoutRelationshipsResponse,Logs Restriction Queries,logs restriction queries,restriction_queries,update_restriction_query,update,,Update a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id},ReplaceRestrictionQuery,replace_restriction_query,put,RestrictionQueryWithoutRelationshipsResponse,Logs Restriction Queries,logs restriction queries,restriction_queries,replace_restriction_query,replace,,Replace a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id}/roles,RemoveRoleFromRestrictionQuery,remove_role_from_restriction_query,delete,,Logs Restriction Queries,logs restriction queries,restriction_query_roles,remove_role_from_restriction_query,delete,,Revoke role from a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id}/roles,ListRestrictionQueryRoles,list_restriction_query_roles,get,RestrictionQueryRolesResponse,Logs Restriction Queries,logs restriction queries,restriction_query_roles,list_restriction_query_roles,select,$.data,List roles for a restriction query +logs.yaml,/api/v2/logs/config/restriction_queries/{restriction_query_id}/roles,AddRoleToRestrictionQuery,add_role_to_restriction_query,post,,Logs Restriction Queries,logs restriction queries,restriction_query_roles,add_role_to_restriction_query,insert,,Grant role to a restriction query +logs.yaml,/api/v2/obs-pipelines/pipelines,ListPipelines,list_pipelines,get,ListPipelinesResponse,Observability Pipelines,observability pipelines,observability_pipelines,list_pipelines,select,$.data,List pipelines +logs.yaml,/api/v2/obs-pipelines/pipelines,CreatePipeline,create_pipeline,post,ObservabilityPipeline,Observability Pipelines,observability pipelines,observability_pipelines,create_pipeline,insert,,Create a new pipeline +logs.yaml,/api/v2/obs-pipelines/pipelines/validate,ValidatePipeline,validate_pipeline,post,ValidationResponse,Observability Pipelines,observability pipelines,observability_pipelines,validate_pipeline,exec,,Validate an observability pipeline +logs.yaml,/api/v2/obs-pipelines/pipelines/{pipeline_id},DeletePipeline,delete_pipeline,delete,,Observability Pipelines,observability pipelines,observability_pipelines,delete_pipeline,delete,,Delete a pipeline +logs.yaml,/api/v2/obs-pipelines/pipelines/{pipeline_id},GetPipeline,get_pipeline,get,ObservabilityPipeline,Observability Pipelines,observability pipelines,observability_pipelines,get_pipeline,select,$.data,Get a specific pipeline +logs.yaml,/api/v2/obs-pipelines/pipelines/{pipeline_id},UpdatePipeline,update_pipeline,put,ObservabilityPipeline,Observability Pipelines,observability pipelines,observability_pipelines,update_pipeline,replace,,Update a pipeline +logs.yaml,/api/v1/logs-queries/list,ListLogsV1,list_logs_v1,post,LogsListResponseV1,Logs,logs,skip_this_resource,,,,Search logs +logs.yaml,/api/v1/logs/config/index-order,GetLogsIndexOrder,get_logs_index_order,get,LogsIndexesOrder,Logs Indexes,logs indexes,index_order,get_logs_index_order,select,,Get indexes order +logs.yaml,/api/v1/logs/config/index-order,UpdateLogsIndexOrder,update_logs_index_order,put,LogsIndexesOrder,Logs Indexes,logs indexes,index_order,update_logs_index_order,replace,,Update indexes order +logs.yaml,/api/v1/logs/config/indexes,ListLogIndexes,list_log_indexes,get,LogsIndexListResponse,Logs Indexes,logs indexes,indexes,list_log_indexes,select,$.indexes,Get all indexes +logs.yaml,/api/v1/logs/config/indexes,CreateLogsIndex,create_logs_index,post,LogsIndex,Logs Indexes,logs indexes,indexes,create_logs_index,insert,,Create an index +logs.yaml,/api/v1/logs/config/indexes/{name},DeleteLogsIndex,delete_logs_index,delete,,Logs Indexes,logs indexes,indexes,delete_logs_index,delete,,Delete an index +logs.yaml,/api/v1/logs/config/indexes/{name},GetLogsIndex,get_logs_index,get,LogsIndex,Logs Indexes,logs indexes,indexes,get_logs_index,select,,Get an index +logs.yaml,/api/v1/logs/config/indexes/{name},UpdateLogsIndex,update_logs_index,put,LogsIndex,Logs Indexes,logs indexes,indexes,update_logs_index,replace,,Update an index +logs.yaml,/api/v1/logs/config/pipeline-order,GetLogsPipelineOrder,get_logs_pipeline_order,get,LogsPipelinesOrder,Logs Pipelines,logs pipelines,pipeline_order,get_logs_pipeline_order,select,,Get pipeline order +logs.yaml,/api/v1/logs/config/pipeline-order,UpdateLogsPipelineOrder,update_logs_pipeline_order,put,LogsPipelinesOrder,Logs Pipelines,logs pipelines,pipeline_order,update_logs_pipeline_order,replace,,Update pipeline order +logs.yaml,/api/v1/logs/config/pipelines,ListLogsPipelines,list_logs_pipelines,get,LogsPipeline,Logs Pipelines,logs pipelines,pipelines,list_logs_pipelines,select,,Get all pipelines +logs.yaml,/api/v1/logs/config/pipelines,CreateLogsPipeline,create_logs_pipeline,post,LogsPipeline,Logs Pipelines,logs pipelines,pipelines,create_logs_pipeline,insert,,Create a pipeline +logs.yaml,/api/v1/logs/config/pipelines/{pipeline_id},DeleteLogsPipeline,delete_logs_pipeline,delete,,Logs Pipelines,logs pipelines,pipelines,delete_logs_pipeline,delete,,Delete a pipeline +logs.yaml,/api/v1/logs/config/pipelines/{pipeline_id},GetLogsPipeline,get_logs_pipeline,get,LogsPipeline,Logs Pipelines,logs pipelines,pipelines,get_logs_pipeline,select,,Get a pipeline +logs.yaml,/api/v1/logs/config/pipelines/{pipeline_id},UpdateLogsPipeline,update_logs_pipeline,put,LogsPipeline,Logs Pipelines,logs pipelines,pipelines,update_logs_pipeline,replace,,Update a pipeline +logs.yaml,/v1/input,SubmitLogV1,submit_log_v1,post,,Logs,logs,skip_this_resource,,,,Send logs +metrics.yaml,/api/v2/ddsql/query/tabular,ExecuteDdsqlTabularQuery,execute_ddsql_tabular_query,post,DdsqlTabularQueryResponse,DDSQL,ddsql,ddsql_queries,execute_ddsql_tabular_query,exec,,Execute a tabular DDSQL query +metrics.yaml,/api/v2/ddsql/query/tabular/fetch,FetchDdsqlTabularQuery,fetch_ddsql_tabular_query,post,DdsqlTabularQueryResponse,DDSQL,ddsql,ddsql_queries,fetch_ddsql_tabular_query,exec,,Fetch the result of a DDSQL query +metrics.yaml,/api/v2/metrics/historical-metrics-configurations,CreateHistoricalMetricsConfiguration,create_historical_metrics_configuration,post,HistoricalMetricsConfigurationResponse,Metrics,metrics,historical_metrics_configurations,create_historical_metrics_configuration,insert,,Enable historical metrics ingestion +metrics.yaml,/api/v2/metrics/historical-metrics-configurations/{metric_name},DeleteHistoricalMetricsConfiguration,delete_historical_metrics_configuration,delete,,Metrics,metrics,historical_metrics_configurations,delete_historical_metrics_configuration,delete,,Delete a historical metrics configuration +metrics.yaml,/api/v2/metrics/historical-metrics-configurations/{metric_name},GetHistoricalMetricsConfiguration,get_historical_metrics_configuration,get,HistoricalMetricsConfigurationResponse,Metrics,metrics,historical_metrics_configurations,get_historical_metrics_configuration,select,$.data,Get a historical metrics configuration +metrics.yaml,/api/v2/metrics/tag-indexing-rules,ListTagIndexingRules,list_tag_indexing_rules,get,TagIndexingRulesResponse,Metrics,metrics,tag_indexing_rules,list_tag_indexing_rules,select,$.data,List tag indexing rules +metrics.yaml,/api/v2/metrics/tag-indexing-rules,CreateTagIndexingRule,create_tag_indexing_rule,post,TagIndexingRuleResponse,Metrics,metrics,tag_indexing_rules,create_tag_indexing_rule,insert,,Create a tag indexing rule +metrics.yaml,/api/v2/metrics/tag-indexing-rules/order,ReorderTagIndexingRules,reorder_tag_indexing_rules,post,,Metrics,metrics,tag_indexing_rules,reorder_tag_indexing_rules,exec,,Reorder tag indexing rules +metrics.yaml,/api/v2/metrics/tag-indexing-rules/{id},DeleteTagIndexingRule,delete_tag_indexing_rule,delete,,Metrics,metrics,tag_indexing_rules,delete_tag_indexing_rule,delete,,Delete a tag indexing rule +metrics.yaml,/api/v2/metrics/tag-indexing-rules/{id},GetTagIndexingRule,get_tag_indexing_rule,get,TagIndexingRuleResponse,Metrics,metrics,tag_indexing_rules,get_tag_indexing_rule,select,$.data,Get a tag indexing rule +metrics.yaml,/api/v2/metrics/tag-indexing-rules/{id},UpdateTagIndexingRule,update_tag_indexing_rule,put,TagIndexingRuleResponse,Metrics,metrics,tag_indexing_rules,update_tag_indexing_rule,replace,,Update a tag indexing rule +metrics.yaml,/api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions,DeleteTagIndexingRuleExemption,delete_tag_indexing_rule_exemption,delete,,Metrics,metrics,tag_indexing_rule_exemptions,delete_tag_indexing_rule_exemption,delete,,Delete a tag indexing rule exemption +metrics.yaml,/api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions,GetTagIndexingRuleExemption,get_tag_indexing_rule_exemption,get,TagIndexingRuleExemptionResponse,Metrics,metrics,tag_indexing_rule_exemptions,get_tag_indexing_rule_exemption,select,$.data,Get a tag indexing rule exemption +metrics.yaml,/api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions,CreateTagIndexingRuleExemption,create_tag_indexing_rule_exemption,post,TagIndexingRuleExemptionResponse,Metrics,metrics,tag_indexing_rule_exemptions,create_tag_indexing_rule_exemption,insert,,Create a tag indexing rule exemption +metrics.yaml,/api/v2/metrics/{metric_name}/tag-indexing-rules,ListTagIndexingRulesForMetric,list_tag_indexing_rules_for_metric,get,TagIndexingRulesResponse,Metrics,metrics,tag_indexing_rules,list_tag_indexing_rules_for_metric,select,$.data,List tag indexing rules for a metric +metrics.yaml,/api/v1/distribution_points,SubmitDistributionPoints,submit_distribution_points,post,,Metrics,metrics,distribution_points,submit_distribution_points,exec,,Submit distribution points +metrics.yaml,/api/v1/metrics,ListActiveMetrics,list_active_metrics,get,MetricsListResponse,Metrics,metrics,active_metrics,list_active_metrics,select,,Get active metrics list +metrics.yaml,/api/v1/metrics/{metric_name},GetMetricMetadata,get_metric_metadata,get,MetricMetadataV1,Metrics,metrics,metric_metadata,get_metric_metadata,select,,Get metric metadata +metrics.yaml,/api/v1/metrics/{metric_name},UpdateMetricMetadata,update_metric_metadata,put,MetricMetadataV1,Metrics,metrics,metric_metadata,update_metric_metadata,replace,,Edit metric metadata +metrics.yaml,/api/v1/query,QueryMetrics,query_metrics,get,MetricsQueryResponse,Metrics,metrics,timeseries_query,query_metrics,select,$.series,Query timeseries points +metrics.yaml,/api/v1/search,ListMetrics,list_metrics,get,MetricSearchResponse,Metrics,metrics,skip_this_resource,,,,Search metrics +metrics.yaml,/api/v1/series,SubmitMetricsV1,submit_metrics_v1,post,,Metrics,metrics,skip_this_resource,,,,Submit metrics +monitoring.yaml,/api/v2/data-observability/monitors/runs/{run_id}/status,GetDataObservabilityMonitorRunStatus,get_data_observability_monitor_run_status,get,GetDataObservabilityMonitorRunStatusResponse,Data Observability,data observability,data_observability_monitor_run_statuses,get_data_observability_monitor_run_status,select,$.data,Get data observability monitor run status +monitoring.yaml,/api/v2/data-observability/monitors/{monitor_id}/run,RunDataObservabilityMonitor,run_data_observability_monitor,post,RunDataObservabilityMonitorResponse,Data Observability,data observability,data_observability_monitors,run_data_observability_monitor,exec,,Run a data observability monitor +monitoring.yaml,/api/v2/synthetics/api-multistep/subtests/{public_id},GetApiMultistepSubtests,get_api_multistep_subtests,get,SyntheticsApiMultistepSubtestsResponse,Synthetics,synthetics,synthetics_api_multistep_subtests,get_api_multistep_subtests,select,$.data,Get available subtests for a multistep test +monitoring.yaml,/api/v2/synthetics/api-multistep/subtests/{public_id}/parents,GetApiMultistepSubtestParents,get_api_multistep_subtest_parents,get,SyntheticsApiMultistepParentTestsResponse,Synthetics,synthetics,synthetics_api_multistep_subtest_parents,get_api_multistep_subtest_parents,select,$.data,Get parent tests for a subtest +monitoring.yaml,/api/v2/synthetics/downtimes,ListSyntheticsDowntimes,list_synthetics_downtimes,get,SyntheticsDowntimesResponse,Synthetics,synthetics,synthetics_downtimes,list_synthetics_downtimes,select,$.data,List Synthetics downtimes +monitoring.yaml,/api/v2/synthetics/downtimes,CreateSyntheticsDowntime,create_synthetics_downtime,post,SyntheticsDowntimeResponse,Synthetics,synthetics,synthetics_downtimes,create_synthetics_downtime,insert,,Create a Synthetics downtime +monitoring.yaml,/api/v2/synthetics/downtimes/{downtime_id},DeleteSyntheticsDowntime,delete_synthetics_downtime,delete,,Synthetics,synthetics,synthetics_downtimes,delete_synthetics_downtime,delete,,Delete a Synthetics downtime +monitoring.yaml,/api/v2/synthetics/downtimes/{downtime_id},GetSyntheticsDowntime,get_synthetics_downtime,get,SyntheticsDowntimeResponse,Synthetics,synthetics,synthetics_downtimes,get_synthetics_downtime,select,$.data,Get a Synthetics downtime +monitoring.yaml,/api/v2/synthetics/downtimes/{downtime_id},UpdateSyntheticsDowntime,update_synthetics_downtime,put,SyntheticsDowntimeResponse,Synthetics,synthetics,synthetics_downtimes,update_synthetics_downtime,replace,,Update a Synthetics downtime +monitoring.yaml,/api/v2/synthetics/downtimes/{downtime_id}/tests/{test_id},RemoveTestFromSyntheticsDowntime,remove_test_from_synthetics_downtime,delete,SyntheticsDowntimeResponse,Synthetics,synthetics,synthetics_downtime_tests,remove_test_from_synthetics_downtime,delete,,Remove a test from a Synthetics downtime +monitoring.yaml,/api/v2/synthetics/downtimes/{downtime_id}/tests/{test_id},AddTestToSyntheticsDowntime,add_test_to_synthetics_downtime,put,SyntheticsDowntimeResponse,Synthetics,synthetics,synthetics_downtime_tests,add_test_to_synthetics_downtime,replace,,Add a test to a Synthetics downtime +monitoring.yaml,/api/v2/synthetics/suites,CreateSyntheticsSuite,create_synthetics_suite,post,SyntheticsSuiteResponse,Synthetics,synthetics,synthetics_suites,create_synthetics_suite,insert,,Create a test suite +monitoring.yaml,/api/v2/synthetics/suites/bulk-delete,DeleteSyntheticsSuites,delete_synthetics_suites,post,DeletedSuitesResponse,Synthetics,synthetics,synthetics_suites,delete_synthetics_suites,exec,,Bulk delete suites +monitoring.yaml,/api/v2/synthetics/suites/search,SearchSuites,search_suites,get,SyntheticsSuiteSearchResponse,Synthetics,synthetics,synthetics_suites,search_suites,select,$.data,Search test suites +monitoring.yaml,/api/v2/synthetics/suites/{public_id},GetSyntheticsSuite,get_synthetics_suite,get,SyntheticsSuiteResponse,Synthetics,synthetics,synthetics_suites,get_synthetics_suite,select,$.data,Get a suite +monitoring.yaml,/api/v2/synthetics/suites/{public_id},EditSyntheticsSuite,edit_synthetics_suite,put,SyntheticsSuiteResponse,Synthetics,synthetics,synthetics_suites,edit_synthetics_suite,replace,,Edit a test suite +monitoring.yaml,/api/v2/synthetics/suites/{public_id}/jsonpatch,PatchTestSuite,patch_test_suite,patch,SyntheticsSuiteResponse,Synthetics,synthetics,synthetics_suite_jsonpatches,patch_test_suite,update,,Patch a test suite +monitoring.yaml,/api/v2/synthetics/tests/browser/{public_id}/results,ListSyntheticsBrowserTestLatestResults,list_synthetics_browser_test_latest_results,get,SyntheticsTestLatestResultsResponse,Synthetics,synthetics,synthetics_test_browser_results,list_synthetics_browser_test_latest_results,select,$.data,Get a browser test's latest results +monitoring.yaml,/api/v2/synthetics/tests/browser/{public_id}/results/{result_id},GetSyntheticsBrowserTestResult,get_synthetics_browser_test_result,get,SyntheticsTestResultResponse,Synthetics,synthetics,synthetics_test_browser_results,get_synthetics_browser_test_result,select,$.data,Get a browser test result +monitoring.yaml,/api/v2/synthetics/tests/bulk-delete,DeleteSyntheticsTests,delete_synthetics_tests,post,DeletedTestsResponse,Synthetics,synthetics,synthetics_tests,delete_synthetics_tests,exec,,Bulk delete tests +monitoring.yaml,/api/v2/synthetics/tests/fast/{id},GetSyntheticsFastTestResult,get_synthetics_fast_test_result,get,SyntheticsFastTestResult,Synthetics,synthetics,synthetics_fast_test_results,get_synthetics_fast_test_result,select,$.data,Get a fast test result +monitoring.yaml,/api/v2/synthetics/tests/network,CreateSyntheticsNetworkTest,create_synthetics_network_test,post,SyntheticsNetworkTestResponse,Synthetics,synthetics,synthetics_network_tests,create_synthetics_network_test,insert,,Create a Network Path test +monitoring.yaml,/api/v2/synthetics/tests/network/{public_id},GetSyntheticsNetworkTest,get_synthetics_network_test,get,SyntheticsNetworkTestResponse,Synthetics,synthetics,synthetics_network_tests,get_synthetics_network_test,select,$.data,Get a Network Path test +monitoring.yaml,/api/v2/synthetics/tests/network/{public_id},UpdateSyntheticsNetworkTest,update_synthetics_network_test,put,SyntheticsNetworkTestResponse,Synthetics,synthetics,synthetics_network_tests,update_synthetics_network_test,replace,,Edit a Network Path test +monitoring.yaml,/api/v2/synthetics/tests/poll_results,PollSyntheticsTestResults,poll_synthetics_test_results,get,SyntheticsPollTestResultsResponse,Synthetics,synthetics,synthetics_test_poll_results,poll_synthetics_test_results,select,$.data,Poll for test results +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/files/download,GetTestFileDownloadUrl,get_test_file_download_url,post,SyntheticsTestFileDownloadResponse,Synthetics,synthetics,synthetics_test_files,get_test_file_download_url,exec,,Get a presigned URL for downloading a test file +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/files/multipart-presigned-urls,GetTestFileMultipartPresignedUrls,get_test_file_multipart_presigned_urls,post,SyntheticsTestFileMultipartPresignedUrlsResponse,Synthetics,synthetics,synthetics_test_files,get_test_file_multipart_presigned_urls,exec,,Get presigned URLs for uploading a test file +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/files/multipart-upload-abort,AbortTestFileMultipartUpload,abort_test_file_multipart_upload,post,,Synthetics,synthetics,synthetics_test_files,abort_test_file_multipart_upload,exec,,Abort a multipart upload of a test file +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/files/multipart-upload-complete,CompleteTestFileMultipartUpload,complete_test_file_multipart_upload,post,,Synthetics,synthetics,synthetics_test_files,complete_test_file_multipart_upload,exec,,Complete a multipart upload of a test file +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/parent-suites,GetTestParentSuites,get_test_parent_suites,get,SyntheticsTestParentSuitesResponse,Synthetics,synthetics,synthetics_test_parent_suites,get_test_parent_suites,select,$.data,Get parent suites for a test +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/results,ListSyntheticsTestLatestResults,list_synthetics_test_latest_results,get,SyntheticsTestLatestResultsResponse,Synthetics,synthetics,synthetics_test_results,list_synthetics_test_latest_results,select,$.data,Get a test's latest results +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/results/{result_id},GetSyntheticsTestResult,get_synthetics_test_result,get,SyntheticsTestResultResponse,Synthetics,synthetics,synthetics_test_results,get_synthetics_test_result,select,$.data,Get a test result +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/version_history,ListSyntheticsTestVersions,list_synthetics_test_versions,get,SyntheticsTestVersionHistoryResponse,Synthetics,synthetics,synthetics_test_version_histories,list_synthetics_test_versions,select,$.data,Get version history of a test +monitoring.yaml,/api/v2/synthetics/tests/{public_id}/version_history/{version_number},GetSyntheticsTestVersion,get_synthetics_test_version,get,SyntheticsTestVersionResponse,Synthetics,synthetics,synthetics_test_version_histories,get_synthetics_test_version,select,$.data,Get a specific version of a test +monitoring.yaml,/api/v2/synthetics/variables/{variable_id}/jsonpatch,PatchGlobalVariable,patch_global_variable,patch,GlobalVariableResponse,Synthetics,synthetics,synthetics_variable_jsonpatches,patch_global_variable,update,,Patch a global variable +monitoring.yaml,/api/v1/check_run,SubmitServiceCheck,submit_service_check,post,,Service Checks,service checks,service_checks,submit_service_check,exec,,Submit a Service Check +monitoring.yaml,/api/v1/monitor,ListMonitors,list_monitors,get,Monitor,Monitors,monitors,monitors,list_monitors,select,,Get all monitors +monitoring.yaml,/api/v1/monitor,CreateMonitor,create_monitor,post,Monitor,Monitors,monitors,monitors,create_monitor,insert,,Create a monitor +monitoring.yaml,/api/v1/monitor/can_delete,CheckCanDeleteMonitor,check_can_delete_monitor,get,CheckCanDeleteMonitorResponse,Monitors,monitors,monitors,check_can_delete_monitor,select,$.data,Check if a monitor can be deleted +monitoring.yaml,/api/v1/monitor/groups/search,SearchMonitorGroups,search_monitor_groups,get,MonitorGroupSearchResponse,Monitors,monitors,monitor_group_search_results,search_monitor_groups,select,$.groups,Monitors group search +monitoring.yaml,/api/v1/monitor/search,SearchMonitors,search_monitors,get,MonitorSearchResponse,Monitors,monitors,monitor_search_results,search_monitors,select,$.monitors,Monitors search +monitoring.yaml,/api/v1/monitor/validate,ValidateMonitor,validate_monitor,post,,Monitors,monitors,monitors,validate_monitor,exec,,Validate a monitor +monitoring.yaml,/api/v1/monitor/{monitor_id},DeleteMonitor,delete_monitor,delete,DeletedMonitor,Monitors,monitors,monitors,delete_monitor,delete,,Delete a monitor +monitoring.yaml,/api/v1/monitor/{monitor_id},GetMonitor,get_monitor,get,Monitor,Monitors,monitors,monitors,get_monitor,select,,Get a monitor's details +monitoring.yaml,/api/v1/monitor/{monitor_id},UpdateMonitor,update_monitor,put,Monitor,Monitors,monitors,monitors,update_monitor,replace,,Edit a monitor +monitoring.yaml,/api/v1/monitor/{monitor_id}/downtimes,ListMonitorDowntimesV1,list_monitor_downtimes_v1,get,Downtime,Downtimes,downtimes,skip_this_resource,,,,Get active downtimes for a monitor +monitoring.yaml,/api/v1/monitor/{monitor_id}/validate,ValidateExistingMonitor,validate_existing_monitor,post,,Monitors,monitors,monitors,validate_existing_monitor,exec,,Validate an existing monitor +monitoring.yaml,/api/v1/synthetics/ci/batch/{batch_id},GetSyntheticsCIBatch,get_synthetics_cibatch,get,SyntheticsBatchDetails,Synthetics,synthetics,synthetics_ci_batches,get_synthetics_cibatch,select,$.data,Get details of batch +monitoring.yaml,/api/v1/synthetics/locations,ListLocations,list_locations,get,SyntheticsLocations,Synthetics,synthetics,synthetics_locations,list_locations,select,$.locations,Get all locations (public and private) +monitoring.yaml,/api/v1/synthetics/private-locations,CreatePrivateLocation,create_private_location,post,SyntheticsPrivateLocationCreationResponse,Synthetics,synthetics,synthetics_private_locations,create_private_location,insert,,Create a private location +monitoring.yaml,/api/v1/synthetics/private-locations/{location_id},DeletePrivateLocation,delete_private_location,delete,,Synthetics,synthetics,synthetics_private_locations,delete_private_location,delete,,Delete a private location +monitoring.yaml,/api/v1/synthetics/private-locations/{location_id},GetPrivateLocation,get_private_location,get,SyntheticsPrivateLocation,Synthetics,synthetics,synthetics_private_locations,get_private_location,select,,Get a private location +monitoring.yaml,/api/v1/synthetics/private-locations/{location_id},UpdatePrivateLocation,update_private_location,put,SyntheticsPrivateLocation,Synthetics,synthetics,synthetics_private_locations,update_private_location,replace,,Edit a private location +monitoring.yaml,/api/v1/synthetics/settings/default_locations,GetSyntheticsDefaultLocations,get_synthetics_default_locations,get,,Synthetics,synthetics,synthetics_default_locations,get_synthetics_default_locations,select,,Get the default locations +monitoring.yaml,/api/v1/synthetics/tests,ListTests,list_tests,get,SyntheticsListTestsResponse,Synthetics,synthetics,synthetics_tests,list_tests,select,$.tests,Get the list of all Synthetic tests +monitoring.yaml,/api/v1/synthetics/tests/api,CreateSyntheticsAPITest,create_synthetics_apitest,post,SyntheticsAPITest,Synthetics,synthetics,synthetics_api_tests,create_synthetics_apitest,insert,,Create an API test +monitoring.yaml,/api/v1/synthetics/tests/api/{public_id},GetAPITest,get_apitest,get,SyntheticsAPITest,Synthetics,synthetics,synthetics_api_tests,get_apitest,select,,Get an API test +monitoring.yaml,/api/v1/synthetics/tests/api/{public_id},UpdateAPITest,update_apitest,put,SyntheticsAPITest,Synthetics,synthetics,synthetics_api_tests,update_apitest,replace,,Edit an API test +monitoring.yaml,/api/v1/synthetics/tests/browser,CreateSyntheticsBrowserTest,create_synthetics_browser_test,post,SyntheticsBrowserTest,Synthetics,synthetics,synthetics_browser_tests,create_synthetics_browser_test,insert,,Create a browser test +monitoring.yaml,/api/v1/synthetics/tests/browser/{public_id},GetBrowserTest,get_browser_test,get,SyntheticsBrowserTest,Synthetics,synthetics,synthetics_browser_tests,get_browser_test,select,,Get a browser test +monitoring.yaml,/api/v1/synthetics/tests/browser/{public_id},UpdateBrowserTest,update_browser_test,put,SyntheticsBrowserTest,Synthetics,synthetics,synthetics_browser_tests,update_browser_test,replace,,Edit a browser test +monitoring.yaml,/api/v1/synthetics/tests/browser/{public_id}/results,GetBrowserTestLatestResults,get_browser_test_latest_results,get,SyntheticsGetBrowserTestLatestResultsResponse,Synthetics,synthetics,synthetics_browser_test_results,get_browser_test_latest_results,select,$.results,Get a browser test's latest results summaries +monitoring.yaml,/api/v1/synthetics/tests/browser/{public_id}/results/{result_id},GetBrowserTestResult,get_browser_test_result,get,SyntheticsBrowserTestResultFull,Synthetics,synthetics,synthetics_browser_test_results,get_browser_test_result,select,,Get a browser test result +monitoring.yaml,/api/v1/synthetics/tests/delete,DeleteTests,delete_tests,post,SyntheticsDeleteTestsResponse,Synthetics,synthetics,synthetics_tests,delete_tests,exec,,Delete tests +monitoring.yaml,/api/v1/synthetics/tests/mobile,CreateSyntheticsMobileTest,create_synthetics_mobile_test,post,SyntheticsMobileTest,Synthetics,synthetics,synthetics_mobile_tests,create_synthetics_mobile_test,insert,,Create a mobile test +monitoring.yaml,/api/v1/synthetics/tests/mobile/{public_id},GetMobileTest,get_mobile_test,get,SyntheticsMobileTest,Synthetics,synthetics,synthetics_mobile_tests,get_mobile_test,select,,Get a mobile test +monitoring.yaml,/api/v1/synthetics/tests/mobile/{public_id},UpdateMobileTest,update_mobile_test,put,SyntheticsMobileTest,Synthetics,synthetics,synthetics_mobile_tests,update_mobile_test,replace,,Edit a mobile test +monitoring.yaml,/api/v1/synthetics/tests/search,SearchTests,search_tests,get,SyntheticsListTestsResponse,Synthetics,synthetics,synthetics_test_search_results,search_tests,select,$.tests,Search Synthetic tests +monitoring.yaml,/api/v1/synthetics/tests/trigger,TriggerTests,trigger_tests,post,SyntheticsTriggerCITestsResponse,Synthetics,synthetics,synthetics_tests,trigger_tests,exec,,Trigger Synthetic tests +monitoring.yaml,/api/v1/synthetics/tests/trigger/ci,TriggerCITests,trigger_citests,post,SyntheticsTriggerCITestsResponse,Synthetics,synthetics,synthetics_tests,trigger_citests,exec,,Trigger tests from CI/CD pipelines +monitoring.yaml,/api/v1/synthetics/tests/uptimes,FetchUptimes,fetch_uptimes,post,SyntheticsTestUptime,Synthetics,synthetics,synthetics_test_uptimes,fetch_uptimes,exec,,Fetch uptime for multiple tests +monitoring.yaml,/api/v1/synthetics/tests/{public_id},GetTest,get_test,get,SyntheticsTestDetailsWithoutSteps,Synthetics,synthetics,synthetics_tests,get_test,select,,Get a test configuration +monitoring.yaml,/api/v1/synthetics/tests/{public_id},PatchTest,patch_test,patch,SyntheticsTestDetails,Synthetics,synthetics,synthetics_tests,patch_test,update,,Patch a Synthetic test +monitoring.yaml,/api/v1/synthetics/tests/{public_id}/results,GetAPITestLatestResults,get_apitest_latest_results,get,SyntheticsGetAPITestLatestResultsResponse,Synthetics,synthetics,synthetics_api_test_results,get_apitest_latest_results,select,$.results,Get an API test's latest results summaries +monitoring.yaml,/api/v1/synthetics/tests/{public_id}/results/{result_id},GetAPITestResult,get_apitest_result,get,SyntheticsAPITestResultFull,Synthetics,synthetics,synthetics_api_test_results,get_apitest_result,select,,Get an API test result +monitoring.yaml,/api/v1/synthetics/tests/{public_id}/status,UpdateTestPauseStatus,update_test_pause_status,put,,Synthetics,synthetics,synthetics_tests,update_test_pause_status,exec,,Pause or start a test +monitoring.yaml,/api/v1/synthetics/variables,ListGlobalVariables,list_global_variables,get,SyntheticsListGlobalVariablesResponse,Synthetics,synthetics,synthetics_global_variables,list_global_variables,select,$.variables,Get all global variables +monitoring.yaml,/api/v1/synthetics/variables,CreateGlobalVariable,create_global_variable,post,SyntheticsGlobalVariable,Synthetics,synthetics,synthetics_global_variables,create_global_variable,insert,,Create a global variable +monitoring.yaml,/api/v1/synthetics/variables/{variable_id},DeleteGlobalVariable,delete_global_variable,delete,,Synthetics,synthetics,synthetics_global_variables,delete_global_variable,delete,,Delete a global variable +monitoring.yaml,/api/v1/synthetics/variables/{variable_id},GetGlobalVariable,get_global_variable,get,SyntheticsGlobalVariable,Synthetics,synthetics,synthetics_global_variables,get_global_variable,select,,Get a global variable +monitoring.yaml,/api/v1/synthetics/variables/{variable_id},EditGlobalVariable,edit_global_variable,put,SyntheticsGlobalVariable,Synthetics,synthetics,synthetics_global_variables,edit_global_variable,replace,,Edit a global variable +organization.yaml,/api/v2/anonymize_users,AnonymizeUsers,anonymize_users,put,AnonymizeUsersResponse,Users,users,users,anonymize_users,exec,,Anonymize users +organization.yaml,/api/v2/current_user,GetCurrentUser,get_current_user,get,UserResponse,Users,users,current_user,get_current_user,select,$.data,Get current user +organization.yaml,/api/v2/current_user,UpdateCurrentUser,update_current_user,patch,UserResponse,Users,users,current_user,update_current_user,update,,Update current user +organization.yaml,/api/v2/global_orgs,ListGlobalOrgs,list_global_orgs,get,GlobalOrgsResponse,Organizations,organizations,global_orgs,list_global_orgs,select,$.data,List global orgs +organization.yaml,/api/v2/governance/config,GetGovernanceConfig,get_governance_config,get,GovernanceConfigResponse,Governance Console,governance console,governance_configs,get_governance_config,select,$.data,Get the Governance Console configuration +organization.yaml,/api/v2/governance/control,ListGovernanceControls,list_governance_controls,get,GovernanceControlsResponse,Governance Console,governance console,governance_controls,list_governance_controls,select,$.data,List controls +organization.yaml,/api/v2/governance/control/{detection_type},GetGovernanceControl,get_governance_control,get,GovernanceControlResponse,Governance Console,governance console,governance_controls,get_governance_control,select,$.data,Get a control +organization.yaml,/api/v2/governance/control/{detection_type},UpdateGovernanceControl,update_governance_control,patch,GovernanceControlResponse,Governance Console,governance console,governance_controls,update_governance_control,update,,Update a control +organization.yaml,/api/v2/governance/control/{detection_type}/detections,ListGovernanceControlDetections,list_governance_control_detections,get,GovernanceControlDetectionsResponse,Governance Console,governance console,governance_control_detections,list_governance_control_detections,select,$.data,List control detections +organization.yaml,/api/v2/governance/control/{detection_type}/notification_settings,GetGovernanceControlNotificationSettings,get_governance_control_notification_settings,get,ControlNotificationSettingsResponse,Governance Console,governance console,governance_control_notification_settings,get_governance_control_notification_settings,select,$.data,Get control notification settings +organization.yaml,/api/v2/governance/control/{detection_type}/notification_settings,UpdateGovernanceControlNotificationSettings,update_governance_control_notification_settings,put,ControlNotificationSettingsResponse,Governance Console,governance console,governance_control_notification_settings,update_governance_control_notification_settings,replace,,Update control notification settings +organization.yaml,/api/v2/governance/detections/mitigate,MitigateGovernanceDetections,mitigate_governance_detections,post,,Governance Console,governance console,governance_detections,mitigate_governance_detections,exec,,Mitigate detections +organization.yaml,/api/v2/governance/detections/{detection_id},GetGovernanceDetection,get_governance_detection,get,GovernanceControlDetectionResponse,Governance Console,governance console,governance_detections,get_governance_detection,select,$.data,Get a detection +organization.yaml,/api/v2/governance/detections/{detection_id},UpdateGovernanceDetection,update_governance_detection,patch,GovernanceControlDetectionResponse,Governance Console,governance console,governance_detections,update_governance_detection,update,,Update a detection +organization.yaml,/api/v2/governance/insights,ListGovernanceInsights,list_governance_insights,get,GovernanceInsightsResponse,Governance Console,governance console,governance_insights,list_governance_insights,select,$.data,List insights +organization.yaml,/api/v2/governance/notification_settings,GetGovernanceNotificationSettings,get_governance_notification_settings,get,GovernanceNotificationSettingsResponse,Governance Console,governance console,governance_notification_settings,get_governance_notification_settings,select,$.data,Get notification settings +organization.yaml,/api/v2/governance/notification_settings,UpdateGovernanceNotificationSettings,update_governance_notification_settings,patch,GovernanceNotificationSettingsResponse,Governance Console,governance console,governance_notification_settings,update_governance_notification_settings,update,,Update notification settings +organization.yaml,/api/v2/governance/tag_rules,ListTagRules,list_tag_rules,get,TagRulesListResponse,Tag Rules,tag rules,governance_tag_rules,list_tag_rules,select,$.data,List tag rules +organization.yaml,/api/v2/governance/tag_rules,CreateTagRule,create_tag_rule,post,TagRuleResponse,Tag Rules,tag rules,governance_tag_rules,create_tag_rule,insert,,Create a tag rule +organization.yaml,/api/v2/governance/tag_rules/{rule_id},DeleteTagRule,delete_tag_rule,delete,,Tag Rules,tag rules,governance_tag_rules,delete_tag_rule,delete,,Delete a tag rule +organization.yaml,/api/v2/governance/tag_rules/{rule_id},GetTagRule,get_tag_rule,get,TagRuleResponse,Tag Rules,tag rules,governance_tag_rules,get_tag_rule,select,$.data,Get a tag rule +organization.yaml,/api/v2/governance/tag_rules/{rule_id},UpdateTagRule,update_tag_rule,patch,TagRuleResponse,Tag Rules,tag rules,governance_tag_rules,update_tag_rule,update,,Update a tag rule +organization.yaml,/api/v2/governance/tag_rules/{rule_id}/score,GetTagRuleScore,get_tag_rule_score,get,TagRuleScoreResponse,Tag Rules,tag rules,governance_tag_rule_scores,get_tag_rule_score,select,$.data,Get a tag rule compliance score +organization.yaml,/api/v2/hamr,GetHamrOrgConnection,get_hamr_org_connection,get,HamrOrgConnectionResponse,High Availability MultiRegion,high availability multi_region,hamr_connections,get_hamr_org_connection,select,$.data,Get HAMR organization connection +organization.yaml,/api/v2/hamr,CreateHamrOrgConnection,create_hamr_org_connection,post,HamrOrgConnectionResponse,High Availability MultiRegion,high availability multi_region,hamr_connections,create_hamr_org_connection,insert,,Create or update HAMR organization connection +organization.yaml,/api/v2/identity_providers,ListIdentityProviders,list_identity_providers,get,IdentityProvidersResponse,Identity Providers,identity providers,identity_providers,list_identity_providers,select,$.data,List identity providers +organization.yaml,/api/v2/identity_providers/{idp_id},UpdateIdentityProvider,update_identity_provider,patch,IdentityProviderResponse,Identity Providers,identity providers,identity_providers,update_identity_provider,update,,Update an identity provider +organization.yaml,/api/v2/identity_providers/{idp_id}/users,ListIdentityProviderUsers,list_identity_provider_users,get,UsersResponse,Identity Providers,identity providers,identity_provider_users,list_identity_provider_users,select,$.data,List users with an identity provider override +organization.yaml,/api/v2/login/org_configs/max_session_duration,UpdateLoginOrgConfigsMaxSessionDuration,update_login_org_configs_max_session_duration,put,,Organizations,organizations,login_configs,update_login_org_configs_max_session_duration,replace,,Update the maximum session duration +organization.yaml,/api/v2/oauth2/.well-known/sites,GetOAuth2WellKnownSites,get_oauth2_well_known_sites,get,OAuth2WellKnownSitesResponse,OAuth2 Client Public,oauth2 client public,oauth2_well_known_sites,get_oauth2_well_known_sites,select,$.data,Get OAuth2 well-known sites +organization.yaml,/api/v2/oauth2/clients/{client_uuid}/scopes_restriction,DeleteScopesRestriction,delete_scopes_restriction,delete,,OAuth2 Client Public,oauth2 client public,oauth2_client_scopes_restrictions,delete_scopes_restriction,delete,,Delete an OAuth2 client scopes restriction +organization.yaml,/api/v2/oauth2/clients/{client_uuid}/scopes_restriction,GetScopesRestriction,get_scopes_restriction,get,OAuthScopesRestrictionResponse,OAuth2 Client Public,oauth2 client public,oauth2_client_scopes_restrictions,get_scopes_restriction,select,$.data,Get an OAuth2 client scopes restriction +organization.yaml,/api/v2/oauth2/clients/{client_uuid}/scopes_restriction,UpsertScopesRestriction,upsert_scopes_restriction,post,OAuthScopesRestrictionResponse,OAuth2 Client Public,oauth2 client public,oauth2_client_scopes_restrictions,upsert_scopes_restriction,insert,,Upsert an OAuth2 client scopes restriction +organization.yaml,/api/v2/oauth2/register,RegisterOAuthClient,register_oauth_client,post,OAuthClientRegistrationResponse,OAuth2 Client Public,oauth2 client public,oauth2_clients,register_oauth_client,exec,,Register an OAuth2 client +organization.yaml,/api/v2/org,ListOrgs,list_orgs,get,ManagedOrgsResponse,Organizations,organizations,orgs,list_orgs,select,$.data,List your managed organizations +organization.yaml,/api/v2/org/disable,DisableCustomerOrg,disable_customer_org,post,CustomerOrgDisableResponse,Customer Org,customer org,orgs,disable_customer_org,exec,,Disable the authenticated customer organization +organization.yaml,/api/v2/org/saml_configurations,UpdateOrgSamlConfigurations,update_org_saml_configurations,patch,,Organizations,organizations,org_saml_configurations,update_org_saml_configurations,update,,Update organization SAML preferences +organization.yaml,/api/v2/org_authorized_clients,ListOrgAuthorizedClients,list_org_authorized_clients,get,OrgAuthorizedClientsResponse,Org Authorized Clients,org authorized clients,org_authorized_clients,list_org_authorized_clients,select,$.data,List org authorized clients +organization.yaml,/api/v2/org_authorized_clients/{org_authorized_client_id},DeleteOrgAuthorizedClient,delete_org_authorized_client,delete,,Org Authorized Clients,org authorized clients,org_authorized_clients,delete_org_authorized_client,delete,,Delete an org authorized client +organization.yaml,/api/v2/org_authorized_clients/{org_authorized_client_id},GetOrgAuthorizedClient,get_org_authorized_client,get,OrgAuthorizedClientResponse,Org Authorized Clients,org authorized clients,org_authorized_clients,get_org_authorized_client,select,$.data,Get an org authorized client +organization.yaml,/api/v2/org_authorized_clients/{org_authorized_client_id},UpdateOrgAuthorizedClient,update_org_authorized_client,patch,OrgAuthorizedClientResponse,Org Authorized Clients,org authorized clients,org_authorized_clients,update_org_authorized_client,update,,Update an org authorized client +organization.yaml,/api/v2/org_authorized_clients/{org_authorized_client_id}/user/{user_id},DeleteOrgAuthorizedClientAllUserAuthorizations,delete_org_authorized_client_all_user_authorizations,delete,,Org Authorized Clients,org authorized clients,org_authorized_client_users,delete_org_authorized_client_all_user_authorizations,delete,,Delete a user's authorizations for a client +organization.yaml,/api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients,ListOrgAuthorizedClientUserAuthorizations,list_org_authorized_client_user_authorizations,get,UserAuthorizedClientsResponse,Org Authorized Clients,org authorized clients,org_authorized_client_user_authorized_clients,list_org_authorized_client_user_authorizations,select,$.data,List user authorizations for a client +organization.yaml,/api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients/{user_authorized_client_id},DeleteOrgAuthorizedClientUserAuthorization,delete_org_authorized_client_user_authorization,delete,,Org Authorized Clients,org authorized clients,org_authorized_client_user_authorized_clients,delete_org_authorized_client_user_authorization,delete,,Delete a user authorization for a client +organization.yaml,/api/v2/org_group_memberships,ListOrgGroupMemberships,list_org_group_memberships,get,OrgGroupMembershipListResponse,Org Groups,org groups,org_group_memberships,list_org_group_memberships,select,$.data,List org group memberships +organization.yaml,/api/v2/org_group_memberships/bulk,BulkUpdateOrgGroupMemberships,bulk_update_org_group_memberships,patch,OrgGroupMembershipListResponse,Org Groups,org groups,org_group_memberships,bulk_update_org_group_memberships,exec,,Bulk update org group memberships +organization.yaml,/api/v2/org_group_memberships/{org_group_membership_id},GetOrgGroupMembership,get_org_group_membership,get,OrgGroupMembershipResponse,Org Groups,org groups,org_group_memberships,get_org_group_membership,select,$.data,Get an org group membership +organization.yaml,/api/v2/org_group_memberships/{org_group_membership_id},UpdateOrgGroupMembership,update_org_group_membership,patch,OrgGroupMembershipResponse,Org Groups,org groups,org_group_memberships,update_org_group_membership,update,,Update an org group membership +organization.yaml,/api/v2/org_group_policies,ListOrgGroupPolicies,list_org_group_policies,get,OrgGroupPolicyListResponse,Org Groups,org groups,org_group_policies,list_org_group_policies,select,$.data,List org group policies +organization.yaml,/api/v2/org_group_policies,CreateOrgGroupPolicy,create_org_group_policy,post,OrgGroupPolicyResponse,Org Groups,org groups,org_group_policies,create_org_group_policy,insert,,Create an org group policy +organization.yaml,/api/v2/org_group_policies/{org_group_policy_id},DeleteOrgGroupPolicy,delete_org_group_policy,delete,,Org Groups,org groups,org_group_policies,delete_org_group_policy,delete,,Delete an org group policy +organization.yaml,/api/v2/org_group_policies/{org_group_policy_id},GetOrgGroupPolicy,get_org_group_policy,get,OrgGroupPolicyResponse,Org Groups,org groups,org_group_policies,get_org_group_policy,select,$.data,Get an org group policy +organization.yaml,/api/v2/org_group_policies/{org_group_policy_id},UpdateOrgGroupPolicy,update_org_group_policy,patch,OrgGroupPolicyResponse,Org Groups,org groups,org_group_policies,update_org_group_policy,update,,Update an org group policy +organization.yaml,/api/v2/org_group_policy_configs,ListOrgGroupPolicyConfigs,list_org_group_policy_configs,get,OrgGroupPolicyConfigListResponse,Org Groups,org groups,org_group_policy_configs,list_org_group_policy_configs,select,$.data,List org group policy configs +organization.yaml,/api/v2/org_group_policy_overrides,ListOrgGroupPolicyOverrides,list_org_group_policy_overrides,get,OrgGroupPolicyOverrideListResponse,Org Groups,org groups,org_group_policy_overrides,list_org_group_policy_overrides,select,$.data,List org group policy overrides +organization.yaml,/api/v2/org_group_policy_overrides,CreateOrgGroupPolicyOverride,create_org_group_policy_override,post,OrgGroupPolicyOverrideResponse,Org Groups,org groups,org_group_policy_overrides,create_org_group_policy_override,insert,,Create an org group policy override +organization.yaml,/api/v2/org_group_policy_overrides/{org_group_policy_override_id},DeleteOrgGroupPolicyOverride,delete_org_group_policy_override,delete,,Org Groups,org groups,org_group_policy_overrides,delete_org_group_policy_override,delete,,Delete an org group policy override +organization.yaml,/api/v2/org_group_policy_overrides/{org_group_policy_override_id},GetOrgGroupPolicyOverride,get_org_group_policy_override,get,OrgGroupPolicyOverrideResponse,Org Groups,org groups,org_group_policy_overrides,get_org_group_policy_override,select,$.data,Get an org group policy override +organization.yaml,/api/v2/org_group_policy_overrides/{org_group_policy_override_id},UpdateOrgGroupPolicyOverride,update_org_group_policy_override,patch,OrgGroupPolicyOverrideResponse,Org Groups,org groups,org_group_policy_overrides,update_org_group_policy_override,update,,Update an org group policy override +organization.yaml,/api/v2/org_group_policy_suggestions,ListOrgGroupPolicySuggestions,list_org_group_policy_suggestions,get,OrgGroupPolicySuggestionListResponse,Org Groups,org groups,org_group_policy_suggestions,list_org_group_policy_suggestions,select,$.data,List org group policy suggestions +organization.yaml,/api/v2/org_groups,ListOrgGroups,list_org_groups,get,OrgGroupListResponse,Org Groups,org groups,org_groups,list_org_groups,select,$.data,List org groups +organization.yaml,/api/v2/org_groups,CreateOrgGroup,create_org_group,post,OrgGroupResponse,Org Groups,org groups,org_groups,create_org_group,insert,,Create an org group +organization.yaml,/api/v2/org_groups/{org_group_id},DeleteOrgGroup,delete_org_group,delete,,Org Groups,org groups,org_groups,delete_org_group,delete,,Delete an org group +organization.yaml,/api/v2/org_groups/{org_group_id},GetOrgGroup,get_org_group,get,OrgGroupResponse,Org Groups,org groups,org_groups,get_org_group,select,$.data,Get an org group +organization.yaml,/api/v2/org_groups/{org_group_id},UpdateOrgGroup,update_org_group,patch,OrgGroupResponse,Org Groups,org groups,org_groups,update_org_group,update,,Update an org group +organization.yaml,/api/v2/personal_access_tokens,ListPersonalAccessTokens,list_personal_access_tokens,get,ListPersonalAccessTokensResponse,Key Management,key management,personal_access_tokens,list_personal_access_tokens,select,$.data,Get all access tokens +organization.yaml,/api/v2/personal_access_tokens,CreatePersonalAccessToken,create_personal_access_token,post,PersonalAccessTokenCreateResponse,Key Management,key management,personal_access_tokens,create_personal_access_token,insert,,Create a personal access token +organization.yaml,/api/v2/personal_access_tokens/{token_id},RevokePersonalAccessToken,revoke_personal_access_token,delete,,Key Management,key management,personal_access_tokens,revoke_personal_access_token,delete,,Revoke a personal access token +organization.yaml,/api/v2/personal_access_tokens/{token_id},GetPersonalAccessToken,get_personal_access_token,get,PersonalAccessTokenResponse,Key Management,key management,personal_access_tokens,get_personal_access_token,select,$.data,Get a personal access token +organization.yaml,/api/v2/personal_access_tokens/{token_id},UpdatePersonalAccessToken,update_personal_access_token,patch,PersonalAccessTokenResponse,Key Management,key management,personal_access_tokens,update_personal_access_token,update,,Update a personal access token +organization.yaml,/api/v2/roles/templates,ListRoleTemplates,list_role_templates,get,RoleTemplateArray,Roles,roles,role_templates,list_role_templates,select,$.data,List role templates +organization.yaml,/api/v2/saml_configurations,ListSAMLConfigurations,list_samlconfigurations,get,SAMLConfigurationsResponse,Organizations,organizations,saml_configurations,list_samlconfigurations,select,$.data,List SAML configurations +organization.yaml,/api/v2/saml_configurations/{saml_config_uuid},GetSAMLConfiguration,get_samlconfiguration,get,SAMLConfigurationResponse,Organizations,organizations,saml_configurations,get_samlconfiguration,select,$.data,Get a SAML configuration +organization.yaml,/api/v2/saml_configurations/{saml_config_uuid},UpdateSAMLConfiguration,update_samlconfiguration,patch,SAMLConfigurationResponse,Organizations,organizations,saml_configurations,update_samlconfiguration,update,,Update a SAML configuration +organization.yaml,/api/v2/seats/users,UnassignSeatsUser,unassign_seats_user,delete,,Seats,seats,seat_assignments,unassign_seats_user,delete,,Unassign seats from users +organization.yaml,/api/v2/seats/users,GetSeatsUsers,get_seats_users,get,SeatUserDataArray,Seats,seats,seat_assignments,get_seats_users,select,$.data,Get users with seats +organization.yaml,/api/v2/seats/users,AssignSeatsUser,assign_seats_user,post,AssignSeatsUserResponse,Seats,seats,seat_assignments,assign_seats_user,insert,,Assign seats to users +organization.yaml,/api/v2/service_accounts/{service_account_id}/access_tokens,ListServiceAccountAccessTokens,list_service_account_access_tokens,get,ListServiceAccessTokensResponse,Service Accounts,service accounts,service_account_access_tokens,list_service_account_access_tokens,select,$.data,List access tokens for a service account +organization.yaml,/api/v2/service_accounts/{service_account_id}/access_tokens,CreateServiceAccountAccessToken,create_service_account_access_token,post,ServiceAccessTokenCreateResponse,Service Accounts,service accounts,service_account_access_tokens,create_service_account_access_token,insert,,Create an access token for a service account +organization.yaml,/api/v2/service_accounts/{service_account_id}/access_tokens/{token_id},RevokeServiceAccountAccessToken,revoke_service_account_access_token,delete,,Service Accounts,service accounts,service_account_access_tokens,revoke_service_account_access_token,delete,,Revoke an access token for a service account +organization.yaml,/api/v2/service_accounts/{service_account_id}/access_tokens/{token_id},GetServiceAccountAccessToken,get_service_account_access_token,get,ServiceAccessTokenResponse,Service Accounts,service accounts,service_account_access_tokens,get_service_account_access_token,select,$.data,Get an access token for a service account +organization.yaml,/api/v2/service_accounts/{service_account_id}/access_tokens/{token_id},UpdateServiceAccountAccessToken,update_service_account_access_token,patch,ServiceAccessTokenResponse,Service Accounts,service accounts,service_account_access_tokens,update_service_account_access_token,update,,Update an access token for a service account +organization.yaml,/api/v2/team-hierarchy-links,ListTeamHierarchyLinks,list_team_hierarchy_links,get,TeamHierarchyLinksResponse,Teams,teams,team_hierarchy_links,list_team_hierarchy_links,select,$.data,Get team hierarchy links +organization.yaml,/api/v2/team-hierarchy-links,AddTeamHierarchyLink,add_team_hierarchy_link,post,TeamHierarchyLinkResponse,Teams,teams,team_hierarchy_links,add_team_hierarchy_link,insert,,Create a team hierarchy link +organization.yaml,/api/v2/team-hierarchy-links/{link_id},RemoveTeamHierarchyLink,remove_team_hierarchy_link,delete,,Teams,teams,team_hierarchy_links,remove_team_hierarchy_link,delete,,Remove a team hierarchy link +organization.yaml,/api/v2/team-hierarchy-links/{link_id},GetTeamHierarchyLink,get_team_hierarchy_link,get,TeamHierarchyLinkResponse,Teams,teams,team_hierarchy_links,get_team_hierarchy_link,select,$.data,Get a team hierarchy link +organization.yaml,/api/v2/team/connections,DeleteTeamConnections,delete_team_connections,delete,,Teams,teams,team_connections,delete_team_connections,delete,,Delete team connections +organization.yaml,/api/v2/team/connections,ListTeamConnections,list_team_connections,get,TeamConnectionsResponse,Teams,teams,team_connections,list_team_connections,select,$.data,List team connections +organization.yaml,/api/v2/team/connections,CreateTeamConnections,create_team_connections,post,TeamConnectionsResponse,Teams,teams,team_connections,create_team_connections,insert,,Create team connections +organization.yaml,/api/v2/team/sync,GetTeamSync,get_team_sync,get,TeamSyncResponse,Teams,teams,team_syncs,get_team_sync,select,$.data,Get team sync configurations +organization.yaml,/api/v2/team/{team_id}/notification-rules,GetTeamNotificationRules,get_team_notification_rules,get,TeamNotificationRulesResponse,Teams,teams,team_notification_rules,get_team_notification_rules,select,$.data,Get team notification rules +organization.yaml,/api/v2/team/{team_id}/notification-rules,CreateTeamNotificationRule,create_team_notification_rule,post,TeamNotificationRuleResponse,Teams,teams,team_notification_rules,create_team_notification_rule,insert,,Create team notification rule +organization.yaml,/api/v2/team/{team_id}/notification-rules/{rule_id},DeleteTeamNotificationRule,delete_team_notification_rule,delete,,Teams,teams,team_notification_rules,delete_team_notification_rule,delete,,Delete team notification rule +organization.yaml,/api/v2/team/{team_id}/notification-rules/{rule_id},GetTeamNotificationRule,get_team_notification_rule,get,TeamNotificationRuleResponse,Teams,teams,team_notification_rules,get_team_notification_rule,select,$.data,Get team notification rule +organization.yaml,/api/v2/team/{team_id}/notification-rules/{rule_id},UpdateTeamNotificationRule,update_team_notification_rule,put,TeamNotificationRuleResponse,Teams,teams,team_notification_rules,update_team_notification_rule,replace,,Update team notification rule +organization.yaml,/api/v2/usage/summary/available_fields,GetUsageSummaryAvailableFields,get_usage_summary_available_fields,get,UsageSummaryAvailableFieldsResponse,Usage Metering,usage metering,usage_summary_available_fields,get_usage_summary_available_fields,select,$.data,Get available fields for usage summary +organization.yaml,/api/v2/usage/usage-attribution-types,GetUsageAttributionTypes,get_usage_attribution_types,get,UsageAttributionTypesResponse,Usage Metering,usage metering,usage_usage_attribution_types,get_usage_attribution_types,select,$.data,Get usage attribution types +organization.yaml,/api/v2/user_authorized_clients,ListUserAuthorizedClients,list_user_authorized_clients,get,UserAuthorizedClientsResponse,User Authorized Clients,user authorized clients,user_authorized_clients,list_user_authorized_clients,select,$.data,List user authorized clients +organization.yaml,/api/v2/user_authorized_clients/client/{client_id},DeleteUserAuthorizedClientsByClient,delete_user_authorized_clients_by_client,delete,,User Authorized Clients,user authorized clients,user_authorized_client_clients,delete_user_authorized_clients_by_client,delete,,Delete all user authorized clients for a client +organization.yaml,/api/v2/user_authorized_clients/{user_authorized_client_id},DeleteUserAuthorizedClient,delete_user_authorized_client,delete,,User Authorized Clients,user authorized clients,user_authorized_clients,delete_user_authorized_client,delete,,Delete a user authorized client +organization.yaml,/api/v2/user_authorized_clients/{user_authorized_client_id},GetUserAuthorizedClient,get_user_authorized_client,get,UserAuthorizedClientResponse,User Authorized Clients,user authorized clients,user_authorized_clients,get_user_authorized_client,select,$.data,Get a user authorized client +organization.yaml,/api/v2/users/{user_id}/identity_providers,GetUserIdentityProviders,get_user_identity_providers,get,UserOverrideIdentityProvidersResponse,Users,users,user_identity_providers,get_user_identity_providers,select,$.data,Get identity provider overrides for a user +organization.yaml,/api/v2/users/{user_id}/invitations,DeleteUserInvitations,delete_user_invitations,delete,,Users,users,user_invitations,delete_user_invitations,delete,,Delete a pending user's invitations +organization.yaml,/api/v2/users/{user_id}/relationships/identity_providers,UpdateUserIdentityProviders,update_user_identity_providers,patch,,Users,users,user_relationship_identity_providers,update_user_identity_providers,update,,Update identity provider overrides for a user +organization.yaml,/api/v2/validate,Validate,validate,get,ValidateV2Response,Key Management,key management,api_key_validation,validate,select,$.data,Validate API key +organization.yaml,/api/v2/validate_keys,ValidateAPIKey,validate_apikey,get,ValidateAPIKeyResponse,Key Management,key management,key_validation,validate_apikey,select,,Validate API and application keys +organization.yaml,/,GetIPRanges,get_ipranges,get,IPRanges,IP Ranges,ip ranges,ip_ranges,get_ipranges,select,,List IP Ranges +organization.yaml,/api/v1/api_key,ListAPIKeysV1,list_apikeys_v1,get,ApiKeyListResponse,Key Management,key management,skip_this_resource,,,,Get all API keys +organization.yaml,/api/v1/api_key,CreateAPIKeyV1,create_apikey_v1,post,ApiKeyResponse,Key Management,key management,skip_this_resource,,,,Create an API key +organization.yaml,/api/v1/api_key/{key},DeleteAPIKeyV1,delete_apikey_v1,delete,ApiKeyResponse,Key Management,key management,skip_this_resource,,,,Delete an API key +organization.yaml,/api/v1/api_key/{key},GetAPIKeyV1,get_apikey_v1,get,ApiKeyResponse,Key Management,key management,skip_this_resource,,,,Get API key +organization.yaml,/api/v1/api_key/{key},UpdateAPIKeyV1,update_apikey_v1,put,ApiKeyResponse,Key Management,key management,skip_this_resource,,,,Edit an API key +organization.yaml,/api/v1/application_key,ListApplicationKeysV1,list_application_keys_v1,get,ApplicationKeyListResponse,Key Management,key management,skip_this_resource,,,,Get all application keys +organization.yaml,/api/v1/application_key,CreateApplicationKey,create_application_key,post,ApplicationKeyResponseV1,Key Management,key management,application_keys,create_application_key_v1,insert,,Create an application key +organization.yaml,/api/v1/application_key/{key},DeleteApplicationKeyV1,delete_application_key_v1,delete,ApplicationKeyResponseV1,Key Management,key management,skip_this_resource,,,,Delete an application key +organization.yaml,/api/v1/application_key/{key},GetApplicationKeyV1,get_application_key_v1,get,ApplicationKeyResponseV1,Key Management,key management,skip_this_resource,,,,Get an application key +organization.yaml,/api/v1/application_key/{key},UpdateApplicationKeyV1,update_application_key_v1,put,ApplicationKeyResponseV1,Key Management,key management,skip_this_resource,,,,Edit an application key +organization.yaml,/api/v1/daily_custom_reports,GetDailyCustomReports,get_daily_custom_reports,get,UsageCustomReportsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get the list of available daily custom reports +organization.yaml,/api/v1/daily_custom_reports/{report_id},GetSpecifiedDailyCustomReports,get_specified_daily_custom_reports,get,UsageSpecifiedCustomReportsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get specified daily custom reports +organization.yaml,/api/v1/monthly_custom_reports,GetMonthlyCustomReports,get_monthly_custom_reports,get,UsageCustomReportsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get the list of available monthly custom reports +organization.yaml,/api/v1/monthly_custom_reports/{report_id},GetSpecifiedMonthlyCustomReports,get_specified_monthly_custom_reports,get,UsageSpecifiedCustomReportsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get specified monthly custom reports +organization.yaml,/api/v1/org,ListOrgsV1,list_orgs_v1,get,OrganizationListResponse,Organizations,organizations,skip_this_resource,,,,List your managed organizations +organization.yaml,/api/v1/org,CreateChildOrg,create_child_org,post,OrganizationCreateResponse,Organizations,organizations,orgs,create_child_org,insert,,Create a child organization +organization.yaml,/api/v1/org/{public_id},GetOrg,get_org,get,OrganizationResponse,Organizations,organizations,orgs,get_org,select,$.org,Get organization information +organization.yaml,/api/v1/org/{public_id},UpdateOrg,update_org,put,OrganizationResponse,Organizations,organizations,orgs,update_org,replace,,Update your organization +organization.yaml,/api/v1/org/{public_id}/downgrade,DowngradeOrg,downgrade_org,post,OrgDowngradedResponse,Organizations,organizations,orgs,downgrade_org,exec,,Spin-off Child Organization +organization.yaml,/api/v1/org/{public_id}/idp_metadata,UploadIdPForOrg,upload_id_pfor_org,post,IdpResponse,Organizations,organizations,skip_this_resource,,,,Upload IdP metadata +organization.yaml,/api/v1/usage/analyzed_logs,GetUsageAnalyzedLogs,get_usage_analyzed_logs,get,UsageAnalyzedLogsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for analyzed logs +organization.yaml,/api/v1/usage/audit_logs,GetUsageAuditLogs,get_usage_audit_logs,get,UsageAuditLogsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for audit logs +organization.yaml,/api/v1/usage/aws_lambda,GetUsageLambda,get_usage_lambda,get,UsageLambdaResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for Lambda +organization.yaml,/api/v1/usage/billable-summary,GetUsageBillableSummary,get_usage_billable_summary,get,UsageBillableSummaryResponse,Usage Metering,usage metering,usage_billable_summary,get_usage_billable_summary,select,$.usage,Get billable usage across your account +organization.yaml,/api/v1/usage/ci-app,GetUsageCIApp,get_usage_ciapp,get,UsageCIVisibilityResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for CI visibility +organization.yaml,/api/v1/usage/cspm,GetUsageCloudSecurityPostureManagement,get_usage_cloud_security_posture_management,get,UsageCloudSecurityPostureManagementResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for CSM Pro +organization.yaml,/api/v1/usage/cws,GetUsageCWS,get_usage_cws,get,UsageCWSResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for cloud workload security +organization.yaml,/api/v1/usage/dbm,GetUsageDBM,get_usage_dbm,get,UsageDBMResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for database monitoring +organization.yaml,/api/v1/usage/fargate,GetUsageFargate,get_usage_fargate,get,UsageFargateResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for Fargate +organization.yaml,/api/v1/usage/hosts,GetUsageHosts,get_usage_hosts,get,UsageHostsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for hosts and containers +organization.yaml,/api/v1/usage/hourly-attribution,GetHourlyUsageAttribution,get_hourly_usage_attribution,get,HourlyUsageAttributionResponse,Usage Metering,usage metering,usage_hourly_attribution,get_hourly_usage_attribution,select,$.usage,Get hourly usage attribution +organization.yaml,/api/v1/usage/incident-management,GetIncidentManagement,get_incident_management,get,UsageIncidentManagementResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for incident management +organization.yaml,/api/v1/usage/indexed-spans,GetUsageIndexedSpans,get_usage_indexed_spans,get,UsageIndexedSpansResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for indexed spans +organization.yaml,/api/v1/usage/ingested-spans,GetIngestedSpans,get_ingested_spans,get,UsageIngestedSpansResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for ingested spans +organization.yaml,/api/v1/usage/iot,GetUsageInternetOfThings,get_usage_internet_of_things,get,UsageIoTResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for IoT +organization.yaml,/api/v1/usage/logs,GetUsageLogs,get_usage_logs,get,UsageLogsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for logs +organization.yaml,/api/v1/usage/logs-by-retention,GetUsageLogsByRetention,get_usage_logs_by_retention,get,UsageLogsByRetentionResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly logs usage by retention +organization.yaml,/api/v1/usage/logs_by_index,GetUsageLogsByIndex,get_usage_logs_by_index,get,UsageLogsByIndexResponse,Usage Metering,usage metering,usage_logs_by_index,get_usage_logs_by_index,select,$.usage,Get hourly usage for logs by index +organization.yaml,/api/v1/usage/monthly-attribution,GetMonthlyUsageAttribution,get_monthly_usage_attribution,get,MonthlyUsageAttributionResponse,Usage Metering,usage metering,usage_monthly_attribution,get_monthly_usage_attribution,select,$.usage,Get monthly usage attribution +organization.yaml,/api/v1/usage/network_flows,GetUsageNetworkFlows,get_usage_network_flows,get,UsageNetworkFlowsResponse,Usage Metering,usage metering,skip_this_resource,,,,get hourly usage for network flows +organization.yaml,/api/v1/usage/network_hosts,GetUsageNetworkHosts,get_usage_network_hosts,get,UsageNetworkHostsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for network hosts +organization.yaml,/api/v1/usage/online-archive,GetUsageOnlineArchive,get_usage_online_archive,get,UsageOnlineArchiveResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for online archive +organization.yaml,/api/v1/usage/profiling,GetUsageProfiling,get_usage_profiling,get,UsageProfilingResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for profiled hosts +organization.yaml,/api/v1/usage/rum,GetUsageRumUnits,get_usage_rum_units,get,UsageRumUnitsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for RUM units +organization.yaml,/api/v1/usage/rum_sessions,GetUsageRumSessions,get_usage_rum_sessions,get,UsageRumSessionsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for RUM sessions +organization.yaml,/api/v1/usage/sds,GetUsageSDS,get_usage_sds,get,UsageSDSResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for sensitive data scanner +organization.yaml,/api/v1/usage/snmp,GetUsageSNMP,get_usage_snmp,get,UsageSNMPResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for SNMP devices +organization.yaml,/api/v1/usage/summary,GetUsageSummary,get_usage_summary,get,UsageSummaryResponse,Usage Metering,usage metering,usage_summary,get_usage_summary,select,$.usage,Get usage across your account +organization.yaml,/api/v1/usage/synthetics,GetUsageSynthetics,get_usage_synthetics,get,UsageSyntheticsResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for synthetics checks +organization.yaml,/api/v1/usage/synthetics_api,GetUsageSyntheticsAPI,get_usage_synthetics_api,get,UsageSyntheticsAPIResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for synthetics API checks +organization.yaml,/api/v1/usage/synthetics_browser,GetUsageSyntheticsBrowser,get_usage_synthetics_browser,get,UsageSyntheticsBrowserResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for synthetics browser checks +organization.yaml,/api/v1/usage/timeseries,GetUsageTimeseries,get_usage_timeseries,get,UsageTimeseriesResponse,Usage Metering,usage metering,skip_this_resource,,,,Get hourly usage for custom metrics +organization.yaml,/api/v1/usage/top_avg_metrics,GetUsageTopAvgMetrics,get_usage_top_avg_metrics,get,UsageTopAvgMetricsResponse,Usage Metering,usage metering,usage_top_avg_metrics,get_usage_top_avg_metrics,select,$.usage,Get all custom metrics by hourly average +organization.yaml,/api/v1/user,ListUsersV1,list_users_v1,get,UserListResponse,Users,users,skip_this_resource,,,,List all users +organization.yaml,/api/v1/user,CreateUserV1,create_user_v1,post,UserResponseV1,Users,users,skip_this_resource,,,,Create a user +organization.yaml,/api/v1/user/{user_handle},DisableUserV1,disable_user_v1,delete,UserDisableResponse,Users,users,skip_this_resource,,,,Disable a user +organization.yaml,/api/v1/user/{user_handle},GetUserV1,get_user_v1,get,UserResponseV1,Users,users,skip_this_resource,,,,Get user details +organization.yaml,/api/v1/user/{user_handle},UpdateUserV1,update_user_v1,put,UserResponseV1,Users,users,skip_this_resource,,,,Update a user +organization.yaml,/api/v1/validate,ValidateV1,validate_v1,get,AuthenticationValidationResponse,Authentication,authentication,skip_this_resource,,,,Validate API key +remote_config.yaml,/api/v2/remote_config/products/asm/waf/policies,ListApplicationSecurityWAFPolicies,list_application_security_wafpolicies,get,ApplicationSecurityPolicyListResponse,Application Security,application security,waf_policies,list_application_security_wafpolicies,select,$.data,List all WAF policies +remote_config.yaml,/api/v2/remote_config/products/asm/waf/policies,CreateApplicationSecurityWafPolicy,create_application_security_waf_policy,post,ApplicationSecurityPolicyResponse,Application Security,application security,waf_policies,create_application_security_waf_policy,insert,,Create a WAF Policy +remote_config.yaml,/api/v2/remote_config/products/asm/waf/policies/{policy_id},DeleteApplicationSecurityWafPolicy,delete_application_security_waf_policy,delete,,Application Security,application security,waf_policies,delete_application_security_waf_policy,delete,,Delete a WAF Policy +remote_config.yaml,/api/v2/remote_config/products/asm/waf/policies/{policy_id},GetApplicationSecurityWafPolicy,get_application_security_waf_policy,get,ApplicationSecurityPolicyResponse,Application Security,application security,waf_policies,get_application_security_waf_policy,select,$.data,Get a WAF Policy +remote_config.yaml,/api/v2/remote_config/products/asm/waf/policies/{policy_id},UpdateApplicationSecurityWafPolicy,update_application_security_waf_policy,put,ApplicationSecurityPolicyResponse,Application Security,application security,waf_policies,update_application_security_waf_policy,replace,,Update a WAF Policy +remote_config.yaml,/api/v2/remote_config/products/rum/configs/{config_id},GetRumSdkConfig,get_rum_sdk_config,get,RumSdkConfigResponse,RUM Remote Config,rum remote config,rum_configs,get_rum_sdk_config,select,$.data,Get a RUM SDK configuration +remote_config.yaml,/api/v2/remote_config/products/rum/configs/{config_id},UpdateRumSdkConfig,update_rum_sdk_config,put,RumSdkConfigResponse,RUM Remote Config,rum remote config,rum_configs,update_rum_sdk_config,replace,,Update a RUM SDK configuration +security.yaml,/api/v2/agentless_scanning/accounts/azure,ListAzureScanOptions,list_azure_scan_options,get,AzureScanOptionsArray,Agentless Scanning,agentless scanning,agentless_scanning_account_azures,list_azure_scan_options,select,$.data,List Azure scan options +security.yaml,/api/v2/agentless_scanning/accounts/azure,CreateAzureScanOptions,create_azure_scan_options,post,AzureScanOptions,Agentless Scanning,agentless scanning,agentless_scanning_account_azures,create_azure_scan_options,insert,,Create Azure scan options +security.yaml,/api/v2/agentless_scanning/accounts/azure/{subscription_id},DeleteAzureScanOptions,delete_azure_scan_options,delete,,Agentless Scanning,agentless scanning,agentless_scanning_account_azures,delete_azure_scan_options,delete,,Delete Azure scan options +security.yaml,/api/v2/agentless_scanning/accounts/azure/{subscription_id},GetAzureScanOptions,get_azure_scan_options,get,AzureScanOptions,Agentless Scanning,agentless scanning,agentless_scanning_account_azures,get_azure_scan_options,select,$.data,Get Azure scan options +security.yaml,/api/v2/agentless_scanning/accounts/azure/{subscription_id},UpdateAzureScanOptions,update_azure_scan_options,patch,AzureScanOptions,Agentless Scanning,agentless scanning,agentless_scanning_account_azures,update_azure_scan_options,update,,Update Azure scan options +security.yaml,/api/v2/agentless_scanning/accounts/gcp,ListGcpScanOptions,list_gcp_scan_options,get,GcpScanOptionsArray,Agentless Scanning,agentless scanning,agentless_scanning_account_gcp,list_gcp_scan_options,select,$.data,List GCP scan options +security.yaml,/api/v2/agentless_scanning/accounts/gcp,CreateGcpScanOptions,create_gcp_scan_options,post,GcpScanOptions,Agentless Scanning,agentless scanning,agentless_scanning_account_gcp,create_gcp_scan_options,insert,,Create GCP scan options +security.yaml,/api/v2/agentless_scanning/accounts/gcp/{project_id},DeleteGcpScanOptions,delete_gcp_scan_options,delete,,Agentless Scanning,agentless scanning,agentless_scanning_account_gcp,delete_gcp_scan_options,delete,,Delete GCP scan options +security.yaml,/api/v2/agentless_scanning/accounts/gcp/{project_id},GetGcpScanOptions,get_gcp_scan_options,get,GcpScanOptions,Agentless Scanning,agentless scanning,agentless_scanning_account_gcp,get_gcp_scan_options,select,$.data,Get GCP scan options +security.yaml,/api/v2/agentless_scanning/accounts/gcp/{project_id},UpdateGcpScanOptions,update_gcp_scan_options,patch,GcpScanOptions,Agentless Scanning,agentless scanning,agentless_scanning_account_gcp,update_gcp_scan_options,update,,Update GCP scan options +security.yaml,/api/v2/compliance_findings/rule_based_view,GetRuleBasedView,get_rule_based_view,get,RuleBasedViewResponse,Compliance,compliance,skip_this_resource,,,,Get the rule-based view of compliance findings +security.yaml,/api/v2/csm/ownership/settings,GetOwnershipSettings,get_ownership_settings,get,OwnershipSettingsResponse,CSM Ownership,csm ownership,csm_ownership_settings,get_ownership_settings,select,$.data,Get ownership settings for the org +security.yaml,/api/v2/csm/ownership/settings,PostOwnershipSettings,post_ownership_settings,post,OwnershipSettingsResponse,CSM Ownership,csm ownership,csm_ownership_settings,post_ownership_settings,insert,,Update ownership settings for the org +security.yaml,/api/v2/csm/ownership/settings/untagged,GetOwnershipUntaggedFindings,get_ownership_untagged_findings,get,OwnershipUntaggedFindingsResponse,CSM Ownership,csm ownership,csm_ownership_setting_untaggeds,get_ownership_untagged_findings,select,$.data,Count untagged findings by ownership confidence +security.yaml,/api/v2/csm/ownership/{resource_id},ListOwnershipInferences,list_ownership_inferences,get,OwnershipInferenceListResponse,CSM Ownership,csm ownership,csm_ownerships,list_ownership_inferences,select,$.data,List ownership inferences for a resource +security.yaml,/api/v2/csm/ownership/{resource_id}/history,ListOwnershipHistory,list_ownership_history,get,OwnershipHistoryResponse,CSM Ownership,csm ownership,csm_ownership_histories,list_ownership_history,select,$.data,List ownership inference history for a resource +security.yaml,/api/v2/csm/ownership/{resource_id}/{owner_type},GetOwnershipInference,get_ownership_inference,get,OwnershipInferenceResponse,CSM Ownership,csm ownership,csm_ownerships,get_ownership_inference,select,$.data,Get an ownership inference by owner type +security.yaml,/api/v2/csm/ownership/{resource_id}/{owner_type}/evidence,GetOwnershipEvidence,get_ownership_evidence,get,OwnershipEvidenceResponse,CSM Ownership,csm ownership,csm_ownership_evidences,get_ownership_evidence,select,$.data,Get the evidence for an ownership inference +security.yaml,/api/v2/csm/ownership/{resource_id}/{owner_type}/feedback,CreateOwnershipFeedback,create_ownership_feedback,post,OwnershipFeedbackResponse,CSM Ownership,csm ownership,csm_ownership_feedbacks,create_ownership_feedback,insert,,Submit feedback on an ownership inference +security.yaml,/api/v2/csm/ownership/{resource_id}/{owner_type}/history,ListOwnershipHistoryByOwnerType,list_ownership_history_by_owner_type,get,OwnershipHistoryResponse,CSM Ownership,csm ownership,csm_ownership_histories,list_ownership_history_by_owner_type,select,$.data,List ownership history by owner type +security.yaml,/api/v2/csm/settings/agentless_hosts,ListCSMAgentlessHosts,list_csmagentless_hosts,get,CsmAgentlessHostsResponse,CSM Settings,csm settings,csm_setting_agentless_hosts,list_csmagentless_hosts,select,$.data,List agentless hosts +security.yaml,/api/v2/csm/settings/agentless_hosts/facet_info,GetCSMAgentlessHostFacetInfo,get_csmagentless_host_facet_info,get,CsmHostFacetInfoResponse,CSM Settings,csm settings,csm_setting_agentless_host_facet_infos,get_csmagentless_host_facet_info,select,$.data,Get agentless host facet info +security.yaml,/api/v2/csm/settings/agentless_hosts/facets,ListCSMAgentlessHostFacets,list_csmagentless_host_facets,get,CsmAgentlessHostFacetsResponse,CSM Settings,csm settings,csm_setting_agentless_host_facets,list_csmagentless_host_facets,select,$.data,List agentless host facets +security.yaml,/api/v2/csm/settings/hosts,ListCSMUnifiedHosts,list_csmunified_hosts,get,CsmUnifiedHostsResponse,CSM Settings,csm settings,csm_setting_hosts,list_csmunified_hosts,select,$.data,List unified hosts +security.yaml,/api/v2/csm/settings/hosts/facet_info,GetCSMUnifiedHostFacetInfo,get_csmunified_host_facet_info,get,CsmHostFacetInfoResponse,CSM Settings,csm settings,csm_setting_host_facet_infos,get_csmunified_host_facet_info,select,$.data,Get unified host facet info +security.yaml,/api/v2/csm/settings/hosts/facets,ListCSMUnifiedHostFacets,list_csmunified_host_facets,get,CsmUnifiedHostFacetsResponse,CSM Settings,csm settings,csm_setting_host_facets,list_csmunified_host_facets,select,$.data,List unified host facets +security.yaml,/api/v2/security-entities/risk-scores,ListEntityRiskScores,list_entity_risk_scores,get,SecurityEntityRiskScoresResponse,Entity Risk Scores,entity risk scores,security_entity_risk_scores,list_entity_risk_scores,select,$.data,List Entity Risk Scores +security.yaml,/api/v2/security-entities/risk-scores/{entity_id},GetEntityRiskScore,get_entity_risk_score,get,SecurityEntityRiskScoreResponse,Entity Risk Scores,entity risk scores,security_entity_risk_scores,get_entity_risk_score,select,$.data,Get Entity Risk Score +security.yaml,/api/v2/security/asm/services/{service_filter},GetAsmServiceByName,get_asm_service_by_name,get,ApplicationSecurityServicesResponse,Application Security,application security,application_security_services,get_asm_service_by_name,select,$.data,Get Application Security details for a service +security.yaml,/api/v2/security/findings,ListSecurityFindings,list_security_findings,get,ListSecurityFindingsResponse,Security Monitoring,security monitoring,security_findings,list_security_findings,select,$.data,List security findings +security.yaml,/api/v2/security/findings/assignee,UpdateFindingsAssignee,update_findings_assignee,patch,AssigneeResponse,Security Monitoring,security monitoring,security_findings,update_findings_assignee,exec,,Assign or unassign security findings +security.yaml,/api/v2/security/findings/automation/due_date_rules,ListSecurityFindingsAutomationDueDateRules,list_security_findings_automation_due_date_rules,get,DueDateRulesResponse,Security Monitoring,security monitoring,finding_automation_due_date_rules,list_security_findings_automation_due_date_rules,select,$.data,Get all due date rules +security.yaml,/api/v2/security/findings/automation/due_date_rules,CreateSecurityFindingsAutomationDueDateRule,create_security_findings_automation_due_date_rule,post,DueDateRuleResponse,Security Monitoring,security monitoring,finding_automation_due_date_rules,create_security_findings_automation_due_date_rule,insert,,Create a due date rule +security.yaml,/api/v2/security/findings/automation/due_date_rules/reorder,ReorderSecurityFindingsAutomationDueDateRules,reorder_security_findings_automation_due_date_rules,post,DueDateRuleReorderRequest,Security Monitoring,security monitoring,finding_automation_due_date_rules,reorder_security_findings_automation_due_date_rules,exec,,Reorder due date rules +security.yaml,/api/v2/security/findings/automation/due_date_rules/{rule_id},DeleteSecurityFindingsAutomationDueDateRule,delete_security_findings_automation_due_date_rule,delete,,Security Monitoring,security monitoring,finding_automation_due_date_rules,delete_security_findings_automation_due_date_rule,delete,,Delete a due date rule +security.yaml,/api/v2/security/findings/automation/due_date_rules/{rule_id},GetSecurityFindingsAutomationDueDateRule,get_security_findings_automation_due_date_rule,get,DueDateRuleResponse,Security Monitoring,security monitoring,finding_automation_due_date_rules,get_security_findings_automation_due_date_rule,select,$.data,Get a due date rule +security.yaml,/api/v2/security/findings/automation/due_date_rules/{rule_id},UpdateSecurityFindingsAutomationDueDateRule,update_security_findings_automation_due_date_rule,put,DueDateRuleResponse,Security Monitoring,security monitoring,finding_automation_due_date_rules,update_security_findings_automation_due_date_rule,replace,,Update a due date rule +security.yaml,/api/v2/security/findings/automation/mute_rules,ListSecurityFindingsAutomationMuteRules,list_security_findings_automation_mute_rules,get,MuteRulesResponse,Security Monitoring,security monitoring,finding_automation_mute_rules,list_security_findings_automation_mute_rules,select,$.data,Get all mute rules +security.yaml,/api/v2/security/findings/automation/mute_rules,CreateSecurityFindingsAutomationMuteRule,create_security_findings_automation_mute_rule,post,MuteRuleResponse,Security Monitoring,security monitoring,finding_automation_mute_rules,create_security_findings_automation_mute_rule,insert,,Create a mute rule +security.yaml,/api/v2/security/findings/automation/mute_rules/reorder,ReorderSecurityFindingsAutomationMuteRules,reorder_security_findings_automation_mute_rules,post,MuteRuleReorderRequest,Security Monitoring,security monitoring,finding_automation_mute_rules,reorder_security_findings_automation_mute_rules,exec,,Reorder mute rules +security.yaml,/api/v2/security/findings/automation/mute_rules/{rule_id},DeleteSecurityFindingsAutomationMuteRule,delete_security_findings_automation_mute_rule,delete,,Security Monitoring,security monitoring,finding_automation_mute_rules,delete_security_findings_automation_mute_rule,delete,,Delete a mute rule +security.yaml,/api/v2/security/findings/automation/mute_rules/{rule_id},GetSecurityFindingsAutomationMuteRule,get_security_findings_automation_mute_rule,get,MuteRuleResponse,Security Monitoring,security monitoring,finding_automation_mute_rules,get_security_findings_automation_mute_rule,select,$.data,Get a mute rule +security.yaml,/api/v2/security/findings/automation/mute_rules/{rule_id},UpdateSecurityFindingsAutomationMuteRule,update_security_findings_automation_mute_rule,put,MuteRuleResponse,Security Monitoring,security monitoring,finding_automation_mute_rules,update_security_findings_automation_mute_rule,replace,,Update a mute rule +security.yaml,/api/v2/security/findings/automation/severity_modifier_rules,ListSecurityFindingsAutomationSeverityModifierRules,list_security_findings_automation_severity_modifier_rules,get,SeverityModifierRulesResponse,Security Monitoring,security monitoring,finding_automation_severity_modifier_rules,list_security_findings_automation_severity_modifier_rules,select,$.data,Get all severity modifier rules +security.yaml,/api/v2/security/findings/automation/severity_modifier_rules,CreateSecurityFindingsAutomationSeverityModifierRule,create_security_findings_automation_severity_modifier_rule,post,SeverityModifierRuleResponse,Security Monitoring,security monitoring,finding_automation_severity_modifier_rules,create_security_findings_automation_severity_modifier_rule,insert,,Create a severity modifier rule +security.yaml,/api/v2/security/findings/automation/severity_modifier_rules/reorder,ReorderSecurityFindingsAutomationSeverityModifierRules,reorder_security_findings_automation_severity_modifier_rules,post,SeverityModifierRuleReorderResponse,Security Monitoring,security monitoring,finding_automation_severity_modifier_rules,reorder_security_findings_automation_severity_modifier_rules,exec,,Reorder severity modifier rules +security.yaml,/api/v2/security/findings/automation/severity_modifier_rules/{rule_id},DeleteSecurityFindingsAutomationSeverityModifierRule,delete_security_findings_automation_severity_modifier_rule,delete,,Security Monitoring,security monitoring,finding_automation_severity_modifier_rules,delete_security_findings_automation_severity_modifier_rule,delete,,Delete a severity modifier rule +security.yaml,/api/v2/security/findings/automation/severity_modifier_rules/{rule_id},GetSecurityFindingsAutomationSeverityModifierRule,get_security_findings_automation_severity_modifier_rule,get,SeverityModifierRuleResponse,Security Monitoring,security monitoring,finding_automation_severity_modifier_rules,get_security_findings_automation_severity_modifier_rule,select,$.data,Get a severity modifier rule +security.yaml,/api/v2/security/findings/automation/severity_modifier_rules/{rule_id},UpdateSecurityFindingsAutomationSeverityModifierRule,update_security_findings_automation_severity_modifier_rule,put,SeverityModifierRuleResponse,Security Monitoring,security monitoring,finding_automation_severity_modifier_rules,update_security_findings_automation_severity_modifier_rule,replace,,Update a severity modifier rule +security.yaml,/api/v2/security/findings/automation/ticket_creation_rules,ListSecurityFindingsAutomationTicketCreationRules,list_security_findings_automation_ticket_creation_rules,get,TicketCreationRulesResponse,Security Monitoring,security monitoring,finding_automation_ticket_creation_rules,list_security_findings_automation_ticket_creation_rules,select,$.data,Get all ticket creation rules +security.yaml,/api/v2/security/findings/automation/ticket_creation_rules,CreateSecurityFindingsAutomationTicketCreationRule,create_security_findings_automation_ticket_creation_rule,post,TicketCreationRuleResponse,Security Monitoring,security monitoring,finding_automation_ticket_creation_rules,create_security_findings_automation_ticket_creation_rule,insert,,Create a ticket creation rule +security.yaml,/api/v2/security/findings/automation/ticket_creation_rules/reorder,ReorderSecurityFindingsAutomationTicketCreationRules,reorder_security_findings_automation_ticket_creation_rules,post,TicketCreationRuleReorderRequest,Security Monitoring,security monitoring,finding_automation_ticket_creation_rules,reorder_security_findings_automation_ticket_creation_rules,exec,,Reorder ticket creation rules +security.yaml,/api/v2/security/findings/automation/ticket_creation_rules/{rule_id},DeleteSecurityFindingsAutomationTicketCreationRule,delete_security_findings_automation_ticket_creation_rule,delete,,Security Monitoring,security monitoring,finding_automation_ticket_creation_rules,delete_security_findings_automation_ticket_creation_rule,delete,,Delete a ticket creation rule +security.yaml,/api/v2/security/findings/automation/ticket_creation_rules/{rule_id},GetSecurityFindingsAutomationTicketCreationRule,get_security_findings_automation_ticket_creation_rule,get,TicketCreationRuleResponse,Security Monitoring,security monitoring,finding_automation_ticket_creation_rules,get_security_findings_automation_ticket_creation_rule,select,$.data,Get a ticket creation rule +security.yaml,/api/v2/security/findings/automation/ticket_creation_rules/{rule_id},UpdateSecurityFindingsAutomationTicketCreationRule,update_security_findings_automation_ticket_creation_rule,put,TicketCreationRuleResponse,Security Monitoring,security monitoring,finding_automation_ticket_creation_rules,update_security_findings_automation_ticket_creation_rule,replace,,Update a ticket creation rule +security.yaml,/api/v2/security/findings/cases,DetachCase,detach_case,delete,,Security Monitoring,security monitoring,finding_cases,detach_case,delete,,Detach security findings from their case +security.yaml,/api/v2/security/findings/cases,CreateCases,create_cases,post,FindingCaseResponseArray,Security Monitoring,security monitoring,finding_cases,create_cases,insert,,Create cases for security findings +security.yaml,/api/v2/security/findings/cases/{case_id},AttachCase,attach_case,patch,FindingCaseResponse,Security Monitoring,security monitoring,finding_cases,attach_case,update,,Attach security findings to a case +security.yaml,/api/v2/security/findings/jira_issues,AttachJiraIssue,attach_jira_issue,patch,FindingCaseResponse,Security Monitoring,security monitoring,finding_jira_issues,attach_jira_issue,update,,Attach security findings to a Jira issue +security.yaml,/api/v2/security/findings/jira_issues,CreateJiraIssues,create_jira_issues,post,FindingCaseResponseArray,Security Monitoring,security monitoring,finding_jira_issues,create_jira_issues,insert,,Create Jira issues for security findings +security.yaml,/api/v2/security/findings/linear_issues,AttachLinearIssue,attach_linear_issue,patch,FindingCaseResponse,Security Monitoring,security monitoring,finding_linear_issues,attach_linear_issue,update,,Attach security findings to a Linear issue +security.yaml,/api/v2/security/findings/linear_issues,CreateLinearIssues,create_linear_issues,post,FindingCaseResponseArray,Security Monitoring,security monitoring,finding_linear_issues,create_linear_issues,insert,,Create Linear issues for security findings +security.yaml,/api/v2/security/findings/mute,MuteSecurityFindings,mute_security_findings,patch,MuteFindingsResponse,Security Monitoring,security monitoring,findings,mute_security_findings,exec,,Mute or unmute security findings +security.yaml,/api/v2/security/findings/search,SearchSecurityFindings,search_security_findings,post,ListSecurityFindingsResponse,Security Monitoring,security monitoring,security_findings,search_security_findings,exec,,Search security findings +security.yaml,/api/v2/security/findings/servicenow_tickets,AttachServiceNowTicket,attach_service_now_ticket,patch,FindingCaseResponse,Security Monitoring,security monitoring,finding_servicenow_tickets,attach_service_now_ticket,update,,Attach security findings to a ServiceNow ticket +security.yaml,/api/v2/security/findings/servicenow_tickets,CreateServiceNowTickets,create_service_now_tickets,post,FindingCaseResponseArray,Security Monitoring,security monitoring,finding_servicenow_tickets,create_service_now_tickets,insert,,Create ServiceNow tickets for security findings +security.yaml,/api/v2/security/scanned-assets-metadata,ListScannedAssetsMetadata,list_scanned_assets_metadata,get,ScannedAssetsMetadata,Security Monitoring,security monitoring,scanned_assets_metadata,list_scanned_assets_metadata,select,$.data,List scanned assets metadata +security.yaml,/api/v2/security/siem/ioc-explorer,ListIndicatorsOfCompromise,list_indicators_of_compromise,get,IoCExplorerListResponse,Security Monitoring,security monitoring,siem_ioc_explorers,list_indicators_of_compromise,select,$.data,List indicators of compromise +security.yaml,/api/v2/security/siem/ioc-explorer/indicator,GetIndicatorOfCompromise,get_indicator_of_compromise,get,GetIoCIndicatorResponse,Security Monitoring,security monitoring,siem_ioc_explorer_indicators,get_indicator_of_compromise,select,$.data,Get an indicator of compromise +security.yaml,/api/v2/security/siem/ioc-explorer/triage,CreateIoCTriageState,create_io_ctriage_state,post,IoCTriageWriteResponse,Security Monitoring,security monitoring,siem_ioc_explorer_triages,create_io_ctriage_state,insert,,Create or update an indicator triage state +security.yaml,/api/v2/security/vulnerabilities,ImportSecurityVulnerabilities,import_security_vulnerabilities,post,,Security Monitoring,security monitoring,vulnerabilities,import_security_vulnerabilities,insert,,Import security vulnerabilities +security.yaml,/api/v2/security_monitoring/configuration/critical_assets,ListSecurityMonitoringCriticalAssets,list_security_monitoring_critical_assets,get,SecurityMonitoringCriticalAssetsResponse,Security Monitoring,security monitoring,monitoring_critical_assets,list_security_monitoring_critical_assets,select,$.data,Get all critical assets +security.yaml,/api/v2/security_monitoring/configuration/critical_assets,CreateSecurityMonitoringCriticalAsset,create_security_monitoring_critical_asset,post,SecurityMonitoringCriticalAssetResponse,Security Monitoring,security monitoring,monitoring_critical_assets,create_security_monitoring_critical_asset,insert,,Create a critical asset +security.yaml,/api/v2/security_monitoring/configuration/critical_assets/rules/{rule_id},GetCriticalAssetsAffectingRule,get_critical_assets_affecting_rule,get,SecurityMonitoringCriticalAssetsResponse,Security Monitoring,security monitoring,monitoring_critical_asset_rules,get_critical_assets_affecting_rule,select,$.data,Get critical assets affecting a specific rule +security.yaml,/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id},DeleteSecurityMonitoringCriticalAsset,delete_security_monitoring_critical_asset,delete,,Security Monitoring,security monitoring,monitoring_critical_assets,delete_security_monitoring_critical_asset,delete,,Delete a critical asset +security.yaml,/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id},GetSecurityMonitoringCriticalAsset,get_security_monitoring_critical_asset,get,SecurityMonitoringCriticalAssetResponse,Security Monitoring,security monitoring,monitoring_critical_assets,get_security_monitoring_critical_asset,select,$.data,Get a critical asset +security.yaml,/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id},UpdateSecurityMonitoringCriticalAsset,update_security_monitoring_critical_asset,patch,SecurityMonitoringCriticalAssetResponse,Security Monitoring,security monitoring,monitoring_critical_assets,update_security_monitoring_critical_asset,update,,Update a critical asset +security.yaml,/api/v2/security_monitoring/configuration/integration_config,ListSecurityMonitoringIntegrationConfigs,list_security_monitoring_integration_configs,get,SecurityMonitoringIntegrationConfigsResponse,Security Monitoring,security monitoring,monitoring_integration_configs,list_security_monitoring_integration_configs,select,$.data,List entity context sync configurations +security.yaml,/api/v2/security_monitoring/configuration/integration_config,CreateSecurityMonitoringIntegrationConfig,create_security_monitoring_integration_config,post,SecurityMonitoringIntegrationConfigResponse,Security Monitoring,security monitoring,monitoring_integration_configs,create_security_monitoring_integration_config,insert,,Create an entity context sync configuration +security.yaml,/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations,GetEntraIdAzureAppRegistrations,get_entra_id_azure_app_registrations,get,SecurityMonitoringEntraIdAzureAppRegistrationsResponse,Security Monitoring,security monitoring,monitoring_entra_id_azure_app_registrations,get_entra_id_azure_app_registrations,select,$.data,Get Entra ID Azure App Registration prerequisites +security.yaml,/api/v2/security_monitoring/configuration/integration_config/validate,ValidateSecurityMonitoringIntegrationCredentials,validate_security_monitoring_integration_credentials,post,,Security Monitoring,security monitoring,monitoring_integration_configs,validate_security_monitoring_integration_credentials,exec,,Validate entity context sync credentials +security.yaml,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id},DeleteSecurityMonitoringIntegrationConfig,delete_security_monitoring_integration_config,delete,,Security Monitoring,security monitoring,monitoring_integration_configs,delete_security_monitoring_integration_config,delete,,Delete an entity context sync configuration +security.yaml,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id},GetSecurityMonitoringIntegrationConfig,get_security_monitoring_integration_config,get,SecurityMonitoringIntegrationConfigResponse,Security Monitoring,security monitoring,monitoring_integration_configs,get_security_monitoring_integration_config,select,$.data,Get an entity context sync configuration +security.yaml,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id},UpdateSecurityMonitoringIntegrationConfig,update_security_monitoring_integration_config,patch,SecurityMonitoringIntegrationConfigResponse,Security Monitoring,security monitoring,monitoring_integration_configs,update_security_monitoring_integration_config,update,,Update an entity context sync configuration +security.yaml,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id}/validate,ValidateSecurityMonitoringIntegrationConfig,validate_security_monitoring_integration_config,post,,Security Monitoring,security monitoring,monitoring_integration_configs,validate_security_monitoring_integration_config,exec,,Validate an entity context sync configuration +security.yaml,/api/v2/security_monitoring/configuration/integration_config/{integration_type}/activate,ActivateIntegration,activate_integration,post,SecurityMonitoringIntegrationConfigResponse,Security Monitoring,security monitoring,monitoring_integration_configs,activate_integration,exec,,Activate an entity context sync integration +security.yaml,/api/v2/security_monitoring/configuration/integration_config/{integration_type}/deactivate,DeactivateIntegration,deactivate_integration,post,SecurityMonitoringIntegrationConfigResponse,Security Monitoring,security monitoring,monitoring_integration_configs,deactivate_integration,exec,,Deactivate an entity context sync integration +security.yaml,/api/v2/security_monitoring/configuration/notification_rules/send_notification_preview,SendSecurityMonitoringNotificationPreview,send_security_monitoring_notification_preview,post,NotificationRulePreviewResponse,Security Monitoring,security monitoring,monitoring_notification_rules,send_security_monitoring_notification_preview,exec,,Test a notification rule +security.yaml,/api/v2/security_monitoring/configuration/security_filters/versions,ListSecurityFilterVersions,list_security_filter_versions,get,SecurityFilterVersionsResponse,Security Monitoring,security monitoring,monitoring_security_filter_versions,list_security_filter_versions,select,$.data,Get the version history of security filters +security.yaml,/api/v2/security_monitoring/configuration/suppressions/{suppression_id}/version_history,GetSuppressionVersionHistory,get_suppression_version_history,get,GetSuppressionVersionHistoryResponse,Security Monitoring,security monitoring,monitoring_suppression_version_histories,get_suppression_version_history,select,$.data,Get a suppression's version history +security.yaml,/api/v2/security_monitoring/content_packs/states,GetContentPacksStates,get_content_packs_states,get,SecurityMonitoringContentPackStatesResponse,Security Monitoring,security monitoring,monitoring_content_pack_states,get_content_packs_states,select,$.data,Get content pack states +security.yaml,/api/v2/security_monitoring/content_packs/{content_pack_id}/activate,ActivateContentPack,activate_content_pack,put,,Security Monitoring,security monitoring,monitoring_content_packs,activate_content_pack,exec,,Activate content pack +security.yaml,/api/v2/security_monitoring/content_packs/{content_pack_id}/deactivate,DeactivateContentPack,deactivate_content_pack,put,,Security Monitoring,security monitoring,monitoring_content_packs,deactivate_content_pack,exec,,Deactivate content pack +security.yaml,/api/v2/security_monitoring/datasets,ListSecurityMonitoringDatasets,list_security_monitoring_datasets,get,SecurityMonitoringDatasetsListResponse,Security Monitoring,security monitoring,monitoring_datasets,list_security_monitoring_datasets,select,$.data,List datasets +security.yaml,/api/v2/security_monitoring/datasets,CreateSecurityMonitoringDataset,create_security_monitoring_dataset,post,SecurityMonitoringDatasetCreateResponse,Security Monitoring,security monitoring,monitoring_datasets,create_security_monitoring_dataset,insert,,Create a dataset +security.yaml,/api/v2/security_monitoring/datasets/dependencies,BatchGetSecurityMonitoringDatasetDependencies,batch_get_security_monitoring_dataset_dependencies,post,SecurityMonitoringDatasetDependenciesResponse,Security Monitoring,security monitoring,monitoring_dataset_dependencies,batch_get_security_monitoring_dataset_dependencies,insert,,Get dataset dependencies +security.yaml,/api/v2/security_monitoring/datasets/{dataset_id},DeleteSecurityMonitoringDataset,delete_security_monitoring_dataset,delete,,Security Monitoring,security monitoring,monitoring_datasets,delete_security_monitoring_dataset,delete,,Delete a dataset +security.yaml,/api/v2/security_monitoring/datasets/{dataset_id},GetSecurityMonitoringDataset,get_security_monitoring_dataset,get,SecurityMonitoringDatasetResponse,Security Monitoring,security monitoring,monitoring_datasets,get_security_monitoring_dataset,select,$.data,Get a dataset +security.yaml,/api/v2/security_monitoring/datasets/{dataset_id},UpdateSecurityMonitoringDataset,update_security_monitoring_dataset,patch,,Security Monitoring,security monitoring,monitoring_datasets,update_security_monitoring_dataset,update,,Update a dataset +security.yaml,/api/v2/security_monitoring/datasets/{dataset_id}/version/{version},GetSecurityMonitoringDatasetByVersion,get_security_monitoring_dataset_by_version,get,SecurityMonitoringDatasetResponse,Security Monitoring,security monitoring,monitoring_dataset_versions,get_security_monitoring_dataset_by_version,select,$.data,Get a dataset at a specific version +security.yaml,/api/v2/security_monitoring/datasets/{dataset_id}/version_history,GetSecurityMonitoringDatasetVersionHistory,get_security_monitoring_dataset_version_history,get,SecurityMonitoringDatasetVersionHistoryResponse,Security Monitoring,security monitoring,monitoring_dataset_version_histories,get_security_monitoring_dataset_version_history,select,$.data,Get the version history of a dataset +security.yaml,/api/v2/security_monitoring/entity_context,GetEntityContext,get_entity_context,get,EntityContextResponse,Security Monitoring,security monitoring,monitoring_entity_contexts,get_entity_context,select,$.data,Get entity context +security.yaml,/api/v2/security_monitoring/entity_context/{id},GetSingleEntityContext,get_single_entity_context,get,SingleEntityContextResponse,Security Monitoring,security monitoring,monitoring_entity_contexts,get_single_entity_context,select,$.data,Get a single entity context +security.yaml,/api/v2/security_monitoring/rules/bulk_delete,BulkDeleteSecurityMonitoringRules,bulk_delete_security_monitoring_rules,delete,SecurityMonitoringRuleBulkDeleteResponse,Security Monitoring,security monitoring,monitoring_rules,bulk_delete_security_monitoring_rules,delete,,Bulk delete security monitoring rules +security.yaml,/api/v2/security_monitoring/rules/bulk_export,BulkExportSecurityMonitoringRules,bulk_export_security_monitoring_rules,post,,Security Monitoring,security monitoring,skip_this_resource,,,,Bulk export security monitoring rules +security.yaml,/api/v2/security_monitoring/rules/convert/bulk,BulkConvertExistingSecurityMonitoringRules,bulk_convert_existing_security_monitoring_rules,post,,Security Monitoring,security monitoring,skip_this_resource,,,,Bulk convert rules to Terraform +security.yaml,/api/v2/security_monitoring/rules/{rule_id}/restore/{version},RestoreSecurityMonitoringRule,restore_security_monitoring_rule,post,SecurityMonitoringRuleResponse,Security Monitoring,security monitoring,monitoring_rules,restore_security_monitoring_rule,exec,,Restore a rule to a historical version +security.yaml,/api/v2/security_monitoring/sample_log_generation/subscriptions,ListSampleLogGenerationSubscriptions,list_sample_log_generation_subscriptions,get,SampleLogGenerationSubscriptionsResponse,Security Monitoring,security monitoring,monitoring_sample_log_generation_subscriptions,list_sample_log_generation_subscriptions,select,$.data,Get sample log generation subscriptions +security.yaml,/api/v2/security_monitoring/sample_log_generation/subscriptions,CreateSampleLogGenerationSubscription,create_sample_log_generation_subscription,post,SampleLogGenerationSubscriptionResponse,Security Monitoring,security monitoring,monitoring_sample_log_generation_subscriptions,create_sample_log_generation_subscription,insert,,Subscribe to sample log generation +security.yaml,/api/v2/security_monitoring/sample_log_generation/subscriptions/bulk,BulkCreateSampleLogGenerationSubscriptions,bulk_create_sample_log_generation_subscriptions,post,SampleLogGenerationBulkSubscriptionResponse,Security Monitoring,security monitoring,monitoring_sample_log_generation_subscriptions,bulk_create_sample_log_generation_subscriptions,exec,,Bulk subscribe to sample log generation +security.yaml,/api/v2/security_monitoring/sample_log_generation/subscriptions/{content_pack_id},DeleteSampleLogGenerationSubscription,delete_sample_log_generation_subscription,delete,SampleLogGenerationSubscriptionResponse,Security Monitoring,security monitoring,monitoring_sample_log_generation_subscriptions,delete_sample_log_generation_subscription,delete,,Unsubscribe from sample log generation +security.yaml,/api/v2/security_monitoring/signals/bulk/assignee,BulkEditSecurityMonitoringSignalsAssignee,bulk_edit_security_monitoring_signals_assignee,patch,SecurityMonitoringSignalsBulkTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,bulk_edit_security_monitoring_signals_assignee,exec,,Bulk update triage assignee of security signals +security.yaml,/api/v2/security_monitoring/signals/bulk/state,BulkEditSecurityMonitoringSignalsState,bulk_edit_security_monitoring_signals_state,patch,SecurityMonitoringSignalsBulkTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,bulk_edit_security_monitoring_signals_state,exec,,Bulk update triage state of security signals +security.yaml,/api/v2/security_monitoring/signals/bulk/update,BulkEditSecurityMonitoringSignals,bulk_edit_security_monitoring_signals,patch,SecurityMonitoringSignalsBulkTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,bulk_edit_security_monitoring_signals,exec,,Bulk update security signals +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/entities,GetSignalEntities,get_signal_entities,get,SignalEntitiesResponse,Security Monitoring,security monitoring,monitoring_signal_entities,get_signal_entities,select,$.data,Get entities related to a signal +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/investigation_queries,GetInvestigationLogQueriesMatchingSignal,get_investigation_log_queries_matching_signal,get,SecurityMonitoringSignalSuggestedActionsResponse,Security Monitoring,security monitoring,monitoring_signal_investigation_queries,get_investigation_log_queries_matching_signal,select,$.data,Get investigation queries for a signal +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/suggested_actions,GetSuggestedActionsMatchingSignal,get_suggested_actions_matching_signal,get,SecurityMonitoringSignalSuggestedActionsResponse,Security Monitoring,security monitoring,monitoring_signal_suggested_actions,get_suggested_actions_matching_signal,select,$.data,Get suggested actions for a signal +security.yaml,/api/v2/security_monitoring/signals/{signal_id}/update,EditSecurityMonitoringSignal,edit_security_monitoring_signal,patch,SecurityMonitoringSignalTriageUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,edit_security_monitoring_signal,exec,,Update security signal triage state or assignee +security.yaml,/api/v2/security_monitoring/terraform/{resource_type}/bulk,BulkExportSecurityMonitoringTerraformResources,bulk_export_security_monitoring_terraform_resources,post,,Security Monitoring,security monitoring,skip_this_resource,,,,Export security monitoring resources to Terraform +security.yaml,/api/v2/security_monitoring/terraform/{resource_type}/convert,ConvertSecurityMonitoringTerraformResource,convert_security_monitoring_terraform_resource,post,SecurityMonitoringTerraformExportResponse,Security Monitoring,security monitoring,monitoring_terraform_resources,convert_security_monitoring_terraform_resource,exec,,Convert security monitoring resource to Terraform +security.yaml,/api/v2/security_monitoring/terraform/{resource_type}/{resource_id},ExportSecurityMonitoringTerraformResource,export_security_monitoring_terraform_resource,get,SecurityMonitoringTerraformExportResponse,Security Monitoring,security monitoring,monitoring_terraform_resources,export_security_monitoring_terraform_resource,select,$.data,Export security monitoring resource to Terraform +security.yaml,/api/v2/static-analysis-sca/dependencies,CreateSCAResult,create_scaresult,post,,Static Analysis,static analysis,sca_dependencies,create_scaresult,insert,,Post dependencies for analysis +security.yaml,/api/v2/static-analysis-sca/dependencies/scan,CreateSCAScan,create_scascan,post,McpScanRequestResponse,Static Analysis,static analysis,sca_dependencies,create_scascan,exec,,Submit libraries for vulnerability scanning +security.yaml,/api/v2/static-analysis-sca/dependencies/scan/{job_id},GetSCAScan,get_scascan,get,ScanResultResponse,Static Analysis,static analysis,sca_dependency_scans,get_scascan,exec,,Retrieve a dependency scan result +security.yaml,/api/v2/static-analysis-sca/licenses/list,ListSCALicenses,list_scalicenses,get,LicensesListResponse,Static Analysis,static analysis,sca_licenses,list_scalicenses,select,$.data,Get the list of SPDX licenses +security.yaml,/api/v2/static-analysis-sca/vulnerabilities/resolve-vulnerable-symbols,CreateSCAResolveVulnerableSymbols,create_scaresolve_vulnerable_symbols,post,ResolveVulnerableSymbolsResponse,Static Analysis,static analysis,sca_vulnerabilities,create_scaresolve_vulnerable_symbols,exec,,POST request to resolve vulnerable symbols +security.yaml,/api/v2/static-analysis/ai/memory,ListAiMemoryViolationResults,list_ai_memory_violation_results,get,AiMemoryViolationResultsResponse,Static Analysis,static analysis,static_analysis_ai_memories,list_ai_memory_violation_results,select,$.data,List AI memory violation results +security.yaml,/api/v2/static-analysis/ai/memory,CreateAiMemoryViolationResult,create_ai_memory_violation_result,post,,Static Analysis,static analysis,static_analysis_ai_memories,create_ai_memory_violation_result,insert,,Create an AI memory violation result +security.yaml,/api/v2/static-analysis/ai/memory/{id},DeleteAiMemoryViolationResult,delete_ai_memory_violation_result,delete,,Static Analysis,static analysis,static_analysis_ai_memories,delete_ai_memory_violation_result,delete,,Delete an AI memory violation result +security.yaml,/api/v2/static-analysis/ai/prompts,ListAiPrompts,list_ai_prompts,get,AiPromptsResponse,Static Analysis,static analysis,static_analysis_ai_prompts,list_ai_prompts,select,$.data,List AI prompts +security.yaml,/api/v2/static-analysis/ai/rulesets,ListAiCustomRulesets,list_ai_custom_rulesets,get,AiCustomRulesetsResponse,Static Analysis,static analysis,static_analysis_ai_rulesets,list_ai_custom_rulesets,select,$.data,List AI custom rulesets +security.yaml,/api/v2/static-analysis/ai/rulesets,CreateAiCustomRuleset,create_ai_custom_ruleset,post,AiCustomRulesetResponse,Static Analysis,static analysis,static_analysis_ai_rulesets,create_ai_custom_ruleset,insert,,Create an AI custom ruleset +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name},DeleteAiCustomRuleset,delete_ai_custom_ruleset,delete,,Static Analysis,static analysis,static_analysis_ai_rulesets,delete_ai_custom_ruleset,delete,,Delete an AI custom ruleset +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name},GetAiCustomRuleset,get_ai_custom_ruleset,get,AiCustomRulesetResponse,Static Analysis,static analysis,static_analysis_ai_rulesets,get_ai_custom_ruleset,select,$.data,Get an AI custom ruleset +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name},UpdateAiCustomRuleset,update_ai_custom_ruleset,patch,,Static Analysis,static analysis,static_analysis_ai_rulesets,update_ai_custom_ruleset,update,,Update an AI custom ruleset +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules,CreateAiCustomRule,create_ai_custom_rule,post,AiCustomRuleResponse,Static Analysis,static analysis,static_analysis_ai_ruleset_rules,create_ai_custom_rule,insert,,Create an AI custom rule +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name},DeleteAiCustomRule,delete_ai_custom_rule,delete,,Static Analysis,static analysis,static_analysis_ai_ruleset_rules,delete_ai_custom_rule,delete,,Delete an AI custom rule +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name},GetAiCustomRule,get_ai_custom_rule,get,AiCustomRuleResponse,Static Analysis,static analysis,static_analysis_ai_ruleset_rules,get_ai_custom_rule,select,$.data,Get an AI custom rule +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions,ListAiCustomRuleRevisions,list_ai_custom_rule_revisions,get,AiCustomRuleRevisionsResponse,Static Analysis,static analysis,static_analysis_ai_ruleset_rule_revisions,list_ai_custom_rule_revisions,select,$.data,List AI custom rule revisions +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions,CreateAiCustomRuleRevision,create_ai_custom_rule_revision,post,,Static Analysis,static analysis,static_analysis_ai_ruleset_rule_revisions,create_ai_custom_rule_revision,insert,,Create an AI custom rule revision +security.yaml,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id},GetAiCustomRuleRevision,get_ai_custom_rule_revision,get,AiCustomRuleRevisionResponse,Static Analysis,static analysis,static_analysis_ai_ruleset_rule_revisions,get_ai_custom_rule_revision,select,$.data,Get an AI custom rule revision +security.yaml,/api/v2/static-analysis/codegen/rulesets,ListStaticAnalysisCodegenRulesets,list_static_analysis_codegen_rulesets,get,SastRulesetsResponse,Security Monitoring,security monitoring,static_analysis_codegen_rulesets,list_static_analysis_codegen_rulesets,select,$.data,List codegen rulesets +security.yaml,/api/v2/static-analysis/custom/rulesets,ListCustomRulesets,list_custom_rulesets,get,CustomRulesetListResponse,Static Analysis,static analysis,static_analysis_custom_rulesets,list_custom_rulesets,select,$.data,List Custom Rulesets +security.yaml,/api/v2/static-analysis/custom/rulesets,CreateCustomRuleset,create_custom_ruleset,put,CustomRulesetResponse,Static Analysis,static analysis,static_analysis_custom_rulesets,create_custom_ruleset,replace,,Create Custom Ruleset +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name},DeleteCustomRuleset,delete_custom_ruleset,delete,,Static Analysis,static analysis,static_analysis_custom_rulesets,delete_custom_ruleset,delete,,Delete Custom Ruleset +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name},GetCustomRuleset,get_custom_ruleset,get,CustomRulesetResponse,Static Analysis,static analysis,static_analysis_custom_rulesets,get_custom_ruleset,select,$.data,Show Custom Ruleset +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name},UpdateCustomRuleset,update_custom_ruleset,patch,CustomRulesetResponse,Static Analysis,static analysis,static_analysis_custom_rulesets,update_custom_ruleset,update,,Update Custom Ruleset +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules,CreateCustomRule,create_custom_rule,put,CustomRuleResponse,Static Analysis,static analysis,static_analysis_custom_ruleset_rules,create_custom_rule,replace,,Create Custom Rule +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name},DeleteCustomRule,delete_custom_rule,delete,,Static Analysis,static analysis,static_analysis_custom_ruleset_rules,delete_custom_rule,delete,,Delete Custom Rule +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name},GetCustomRule,get_custom_rule,get,CustomRuleResponse,Static Analysis,static analysis,static_analysis_custom_ruleset_rules,get_custom_rule,select,$.data,Show Custom Rule +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions,ListCustomRuleRevisions,list_custom_rule_revisions,get,CustomRuleRevisionsResponse,Static Analysis,static analysis,static_analysis_custom_ruleset_rule_revisions,list_custom_rule_revisions,select,$.data,List Custom Rule Revisions +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions,CreateCustomRuleRevision,create_custom_rule_revision,put,,Static Analysis,static analysis,static_analysis_custom_ruleset_rule_revisions,create_custom_rule_revision,replace,,Create Custom Rule Revision +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/revert,RevertCustomRuleRevision,revert_custom_rule_revision,post,,Static Analysis,static analysis,static_analysis_custom_ruleset_rule_revisions,revert_custom_rule_revision,exec,,Revert Custom Rule Revision +security.yaml,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id},GetCustomRuleRevision,get_custom_rule_revision,get,CustomRuleRevisionResponse,Static Analysis,static analysis,static_analysis_custom_ruleset_rule_revisions,get_custom_rule_revision,select,$.data,Show Custom Rule Revision +security.yaml,/api/v2/static-analysis/default-rulesets/{language},GetStaticAnalysisDefaultRulesets,get_static_analysis_default_rulesets,get,DefaultRulesetsPerLanguageResponse,Security Monitoring,security monitoring,static_analysis_default_rulesets,get_static_analysis_default_rulesets,select,$.data,Get default rulesets for a language +security.yaml,/api/v2/static-analysis/rulesets,ListMultipleRulesets,list_multiple_rulesets,post,GetMultipleRulesetsResponse,Security Monitoring,security monitoring,static_analysis_rulesets,list_multiple_rulesets,insert,,Ruleset get multiple +security.yaml,/api/v2/static-analysis/rulesets/{ruleset_name},GetStaticAnalysisRuleset,get_static_analysis_ruleset,get,SastRulesetResponse,Security Monitoring,security monitoring,static_analysis_rulesets,get_static_analysis_ruleset,select,$.data,Get a SAST ruleset +security.yaml,/api/v2/static-analysis/secrets/rules,GetSecretsRules,get_secrets_rules,get,SecretRuleArray,Security Monitoring,security monitoring,static_analysis_secret_rules,get_secrets_rules,select,$.data,Returns a list of Secrets rules +security.yaml,/api/v2/static-analysis/static-analysis-server/analyze,CreateStaticAnalysisServerAnalysis,create_static_analysis_server_analysis,post,AnalysisResponse,Security Monitoring,security monitoring,static_analysis_server,create_static_analysis_server_analysis,exec,,Analyze code +security.yaml,/api/v2/static-analysis/static-analysis-server/get-ast,CreateStaticAnalysisAst,create_static_analysis_ast,post,GetAstResponse,Security Monitoring,security monitoring,static_analysis_server,create_static_analysis_ast,exec,,Get AST for source code +security.yaml,/api/v2/static-analysis/static-analysis-server/node-types/{language},GetStaticAnalysisNodeTypes,get_static_analysis_node_types,get,NodeTypesResponse,Security Monitoring,security monitoring,static_analysis_server,get_static_analysis_node_types,exec,$.data,Get node types for a language +security.yaml,/api/v2/static-analysis/static-analysis-server/tree-sitter-wasm/{file},GetStaticAnalysisTreeSitterWasm,get_static_analysis_tree_sitter_wasm,get,,Security Monitoring,security monitoring,skip_this_resource,,,,Get tree-sitter WASM file +security.yaml,/api/v1/security_analytics/signals/{signal_id}/add_to_incident,AddSecurityMonitoringSignalToIncident,add_security_monitoring_signal_to_incident,patch,SuccessfulSignalUpdateResponse,Security Monitoring,security monitoring,monitoring_signals,add_security_monitoring_signal_to_incident,exec,,Add a security signal to an incident +security.yaml,/api/v1/security_analytics/signals/{signal_id}/assignee,EditSecurityMonitoringSignalAssigneeV1,edit_security_monitoring_signal_assignee_v1,patch,SuccessfulSignalUpdateResponse,Security Monitoring,security monitoring,skip_this_resource,,,,Modify the triage assignee of a security signal +security.yaml,/api/v1/security_analytics/signals/{signal_id}/state,EditSecurityMonitoringSignalStateV1,edit_security_monitoring_signal_state_v1,patch,SuccessfulSignalUpdateResponse,Security Monitoring,security monitoring,skip_this_resource,,,,Change the triage state of a security signal +service_management.yaml,/api/v2/bits-ai/investigations,ListInvestigations,list_investigations,get,ListInvestigationsResponse,Bits AI,bits ai,bits_ai_investigations,list_investigations,select,$.data,List Bits AI investigations +service_management.yaml,/api/v2/bits-ai/investigations,TriggerInvestigation,trigger_investigation,post,TriggerInvestigationResponse,Bits AI,bits ai,bits_ai_investigations,trigger_investigation,insert,,Trigger a Bits AI investigation +service_management.yaml,/api/v2/bits-ai/investigations/{id},GetInvestigation,get_investigation,get,GetInvestigationResponse,Bits AI,bits ai,bits_ai_investigations,get_investigation,select,$.data,Get a Bits AI investigation +service_management.yaml,/api/v2/cases/aggregate,AggregateCases,aggregate_cases,post,CaseAggregateResponse,Case Management,case management,cases,aggregate_cases,exec,,Aggregate cases +service_management.yaml,/api/v2/cases/bulk,BulkUpdateCases,bulk_update_cases,post,,Case Management,case management,cases,bulk_update_cases,exec,,Bulk update cases +service_management.yaml,/api/v2/cases/count,CountCases,count_cases,get,CaseCountResponse,Case Management,case management,case_counts,count_cases,select,$.data,Count cases +service_management.yaml,/api/v2/cases/link,ListCaseLinks,list_case_links,get,CaseLinksResponse,Case Management,case management,case_links,list_case_links,select,$.data,List case links +service_management.yaml,/api/v2/cases/link,CreateCaseLink,create_case_link,post,CaseLinkResponse,Case Management,case management,cases,create_case_link,exec,,Create a case link +service_management.yaml,/api/v2/cases/link/{link_id},DeleteCaseLink,delete_case_link,delete,,Case Management,case management,cases,delete_case_link,delete,,Delete a case link +service_management.yaml,/api/v2/cases/projects/favorites,ListUserCaseProjectFavorites,list_user_case_project_favorites,get,ProjectFavoritesResponse,Case Management,case management,case_project_favorites,list_user_case_project_favorites,select,$.data,List project favorites +service_management.yaml,/api/v2/cases/projects/{project_id},UpdateProject,update_project,patch,ProjectResponse,Case Management,case management,case_projects,update_project,update,,Update a project +service_management.yaml,/api/v2/cases/projects/{project_id}/favorites,UnfavoriteCaseProject,unfavorite_case_project,delete,,Case Management,case management,case_project_favorites,unfavorite_case_project,delete,,Unfavorite a project +service_management.yaml,/api/v2/cases/projects/{project_id}/favorites,FavoriteCaseProject,favorite_case_project,post,,Case Management,case management,case_project_favorites,favorite_case_project,insert,,Favorite a project +service_management.yaml,/api/v2/cases/projects/{project_id}/notification_rules,GetProjectNotificationRules,get_project_notification_rules,get,CaseNotificationRulesResponse,Case Management,case management,case_project_notification_rules,get_project_notification_rules,select,$.data,Get notification rules +service_management.yaml,/api/v2/cases/projects/{project_id}/notification_rules,CreateProjectNotificationRule,create_project_notification_rule,post,CaseNotificationRuleResponse,Case Management,case management,case_project_notification_rules,create_project_notification_rule,insert,,Create a notification rule +service_management.yaml,/api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id},DeleteProjectNotificationRule,delete_project_notification_rule,delete,,Case Management,case management,case_project_notification_rules,delete_project_notification_rule,delete,,Delete a notification rule +service_management.yaml,/api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id},UpdateProjectNotificationRule,update_project_notification_rule,put,,Case Management,case management,case_project_notification_rules,update_project_notification_rule,replace,,Update a notification rule +service_management.yaml,/api/v2/cases/projects/{project_id}/rules,ListCaseAutomationRules,list_case_automation_rules,get,AutomationRulesResponse,Case Management,case management,case_project_rules,list_case_automation_rules,select,$.data,List automation rules +service_management.yaml,/api/v2/cases/projects/{project_id}/rules,CreateCaseAutomationRule,create_case_automation_rule,post,AutomationRuleResponse,Case Management,case management,case_project_rules,create_case_automation_rule,insert,,Create an automation rule +service_management.yaml,/api/v2/cases/projects/{project_id}/rules/{rule_id},DeleteCaseAutomationRule,delete_case_automation_rule,delete,,Case Management,case management,case_project_rules,delete_case_automation_rule,delete,,Delete an automation rule +service_management.yaml,/api/v2/cases/projects/{project_id}/rules/{rule_id},GetCaseAutomationRule,get_case_automation_rule,get,AutomationRuleResponse,Case Management,case management,case_project_rules,get_case_automation_rule,select,$.data,Get an automation rule +service_management.yaml,/api/v2/cases/projects/{project_id}/rules/{rule_id},UpdateCaseAutomationRule,update_case_automation_rule,put,AutomationRuleResponse,Case Management,case management,case_project_rules,update_case_automation_rule,replace,,Update an automation rule +service_management.yaml,/api/v2/cases/projects/{project_id}/rules/{rule_id}/disable,DisableCaseAutomationRule,disable_case_automation_rule,post,AutomationRuleResponse,Case Management,case management,case_project_rules,disable_case_automation_rule,exec,,Disable an automation rule +service_management.yaml,/api/v2/cases/projects/{project_id}/rules/{rule_id}/enable,EnableCaseAutomationRule,enable_case_automation_rule,post,AutomationRuleResponse,Case Management,case management,case_project_rules,enable_case_automation_rule,exec,,Enable an automation rule +service_management.yaml,/api/v2/cases/types,GetAllCaseTypes,get_all_case_types,get,CaseTypesResponse,Case Management Type,case management type,case_types,get_all_case_types,select,$.data,Get all case types +service_management.yaml,/api/v2/cases/types,CreateCaseType,create_case_type,post,CaseTypeResponse,Case Management Type,case management type,case_types,create_case_type,insert,,Create a case type +service_management.yaml,/api/v2/cases/types/custom_attributes,GetAllCustomAttributes,get_all_custom_attributes,get,CustomAttributeConfigsResponse,Case Management Attribute,case management attribute,case_type_custom_attributes,get_all_custom_attributes,select,$.data,Get all custom attributes +service_management.yaml,/api/v2/cases/types/{case_type_id},DeleteCaseType,delete_case_type,delete,,Case Management Type,case management type,case_types,delete_case_type,delete,,Delete a case type +service_management.yaml,/api/v2/cases/types/{case_type_id},UpdateCaseType,update_case_type,put,CaseTypeResponse,Case Management Type,case management type,case_types,update_case_type,replace,,Update a case type +service_management.yaml,/api/v2/cases/types/{case_type_id}/custom_attributes,GetAllCustomAttributeConfigsByCaseType,get_all_custom_attribute_configs_by_case_type,get,CustomAttributeConfigsResponse,Case Management Attribute,case management attribute,case_type_custom_attributes,get_all_custom_attribute_configs_by_case_type,select,$.data,Get all custom attributes config of case type +service_management.yaml,/api/v2/cases/types/{case_type_id}/custom_attributes,CreateCustomAttributeConfig,create_custom_attribute_config,post,CustomAttributeConfigResponse,Case Management Attribute,case management attribute,case_type_custom_attributes,create_custom_attribute_config,insert,,Create custom attribute config for a case type +service_management.yaml,/api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id},DeleteCustomAttributeConfig,delete_custom_attribute_config,delete,,Case Management Attribute,case management attribute,case_type_custom_attributes,delete_custom_attribute_config,delete,,Delete custom attributes config +service_management.yaml,/api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id},UpdateCustomAttributeConfig,update_custom_attribute_config,put,CustomAttributeConfigResponse,Case Management Attribute,case management attribute,case_type_custom_attributes,update_custom_attribute_config,replace,,Update custom attribute config +service_management.yaml,/api/v2/cases/views,ListCaseViews,list_case_views,get,CaseViewsResponse,Case Management,case management,case_views,list_case_views,select,$.data,List case views +service_management.yaml,/api/v2/cases/views,CreateCaseView,create_case_view,post,CaseViewResponse,Case Management,case management,case_views,create_case_view,insert,,Create a case view +service_management.yaml,/api/v2/cases/views/{view_id},DeleteCaseView,delete_case_view,delete,,Case Management,case management,case_views,delete_case_view,delete,,Delete a case view +service_management.yaml,/api/v2/cases/views/{view_id},GetCaseView,get_case_view,get,CaseViewResponse,Case Management,case management,case_views,get_case_view,select,$.data,Get a case view +service_management.yaml,/api/v2/cases/views/{view_id},UpdateCaseView,update_case_view,put,CaseViewResponse,Case Management,case management,case_views,update_case_view,replace,,Update a case view +service_management.yaml,/api/v2/cases/{case_id}/comment,CommentCase,comment_case,post,TimelineResponse,Case Management,case management,case_comments,comment_case,insert,,Comment case +service_management.yaml,/api/v2/cases/{case_id}/comment/{cell_id},DeleteCaseComment,delete_case_comment,delete,,Case Management,case management,case_comments,delete_case_comment,delete,,Delete case comment +service_management.yaml,/api/v2/cases/{case_id}/comment/{cell_id},UpdateCaseComment,update_case_comment,put,,Case Management,case management,case_comments,update_case_comment,replace,,Update case comment +service_management.yaml,/api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key},DeleteCaseCustomAttribute,delete_case_custom_attribute,delete,CaseResponse,Case Management,case management,case_custom_attributes,delete_case_custom_attribute,delete,,Delete custom attribute from case +service_management.yaml,/api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key},UpdateCaseCustomAttribute,update_case_custom_attribute,post,CaseResponse,Case Management,case management,case_custom_attributes,update_case_custom_attribute,insert,,Update case custom attribute +service_management.yaml,/api/v2/cases/{case_id}/description,UpdateCaseDescription,update_case_description,post,CaseResponse,Case Management,case management,cases,update_case_description,exec,,Update case description +service_management.yaml,/api/v2/cases/{case_id}/due_date,UpdateCaseDueDate,update_case_due_date,post,CaseResponse,Case Management,case management,cases,update_case_due_date,exec,,Update case due date +service_management.yaml,/api/v2/cases/{case_id}/insights,RemoveCaseInsights,remove_case_insights,delete,CaseResponse,Case Management,case management,case_insights,remove_case_insights,delete,,Remove insights from a case +service_management.yaml,/api/v2/cases/{case_id}/insights,AddCaseInsights,add_case_insights,put,CaseResponse,Case Management,case management,case_insights,add_case_insights,replace,,Add insights to a case +service_management.yaml,/api/v2/cases/{case_id}/relationships/incidents,LinkIncident,link_incident,post,CaseResponse,Case Management,case management,case_relationship_incidents,link_incident,insert,,Link incident to case +service_management.yaml,/api/v2/cases/{case_id}/relationships/jira_issues,UnlinkJiraIssue,unlink_jira_issue,delete,,Case Management,case management,case_relationship_jira_issues,unlink_jira_issue,delete,,Remove Jira issue link from case +service_management.yaml,/api/v2/cases/{case_id}/relationships/jira_issues,LinkJiraIssueToCase,link_jira_issue_to_case,patch,,Case Management,case management,case_relationship_jira_issues,link_jira_issue_to_case,update,,Link existing Jira issue to case +service_management.yaml,/api/v2/cases/{case_id}/relationships/jira_issues,CreateCaseJiraIssue,create_case_jira_issue,post,,Case Management,case management,case_relationship_jira_issues,create_case_jira_issue,insert,,Create Jira issue for case +service_management.yaml,/api/v2/cases/{case_id}/relationships/notebook,CreateCaseNotebook,create_case_notebook,post,,Case Management,case management,case_relationship_notebooks,create_case_notebook,insert,,Create investigation notebook for case +service_management.yaml,/api/v2/cases/{case_id}/relationships/project,MoveCaseToProject,move_case_to_project,patch,CaseResponse,Case Management,case management,case_relationship_projects,move_case_to_project,update,,Update case project +service_management.yaml,/api/v2/cases/{case_id}/relationships/servicenow_tickets,CreateCaseServiceNowTicket,create_case_service_now_ticket,post,,Case Management,case management,case_relationship_servicenow_tickets,create_case_service_now_ticket,insert,,Create ServiceNow ticket for case +service_management.yaml,/api/v2/cases/{case_id}/resolved_reason,UpdateCaseResolvedReason,update_case_resolved_reason,post,CaseResponse,Case Management,case management,cases,update_case_resolved_reason,exec,,Update case resolved reason +service_management.yaml,/api/v2/cases/{case_id}/timelines,ListCaseTimeline,list_case_timeline,get,TimelineResponse,Case Management,case management,case_timelines,list_case_timeline,select,$.data,Get case timeline +service_management.yaml,/api/v2/cases/{case_id}/title,UpdateCaseTitle,update_case_title,post,CaseResponse,Case Management,case management,cases,update_case_title,exec,,Update case title +service_management.yaml,/api/v2/cases/{case_id}/watchers,ListCaseWatchers,list_case_watchers,get,CaseWatchersResponse,Case Management,case management,case_watchers,list_case_watchers,select,$.data,List case watchers +service_management.yaml,/api/v2/cases/{case_id}/watchers/{user_uuid},UnwatchCase,unwatch_case,delete,,Case Management,case management,case_watchers,unwatch_case,delete,,Unwatch a case +service_management.yaml,/api/v2/cases/{case_id}/watchers/{user_uuid},WatchCase,watch_case,post,,Case Management,case management,case_watchers,watch_case,insert,,Watch a case +service_management.yaml,/api/v2/change-management/change-request,CreateChangeRequest,create_change_request,post,ChangeRequestResponse,Change Management,change management,change_requests,create_change_request,insert,,Create a change request +service_management.yaml,/api/v2/change-management/change-request/{change_request_id},GetChangeRequest,get_change_request,get,ChangeRequestResponse,Change Management,change management,change_requests,get_change_request,select,$.data,Get a change request +service_management.yaml,/api/v2/change-management/change-request/{change_request_id},UpdateChangeRequest,update_change_request,patch,ChangeRequestResponse,Change Management,change management,change_requests,update_change_request,update,,Update a change request +service_management.yaml,/api/v2/change-management/change-request/{change_request_id}/branch,CreateChangeRequestBranch,create_change_request_branch,post,ChangeRequestResponse,Change Management,change management,change_request_branches,create_change_request_branch,insert,,Create a change request branch +service_management.yaml,/api/v2/change-management/change-request/{change_request_id}/decisions/{decision_id},DeleteChangeRequestDecision,delete_change_request_decision,delete,ChangeRequestResponse,Change Management,change management,change_change_request_decisions,delete_change_request_decision,delete,,Delete a change request decision +service_management.yaml,/api/v2/change-management/change-request/{change_request_id}/decisions/{decision_id},UpdateChangeRequestDecision,update_change_request_decision,patch,ChangeRequestResponse,Change Management,change management,change_change_request_decisions,update_change_request_decision,update,,Update a change request decision +service_management.yaml,/api/v2/error-tracking/issues/{issue_id}/assignee,DeleteIssueAssignee,delete_issue_assignee,delete,,Error Tracking,error tracking,error_tracking_issues,delete_issue_assignee,delete,,Remove the assignee of an issue +service_management.yaml,/api/v2/forms,ListForms,list_forms,get,FormsResponse,Forms,forms,forms,list_forms,select,$.data,List forms +service_management.yaml,/api/v2/forms,CreateForm,create_form,post,FormResponse,Forms,forms,forms,create_form,insert,,Create a form +service_management.yaml,/api/v2/forms/create_and_publish,CreateAndPublishForm,create_and_publish_form,post,FormResponse,Forms,forms,forms,create_and_publish_form,exec,,Create and publish a form +service_management.yaml,/api/v2/forms/{form_id},DeleteForm,delete_form,delete,DeleteFormResponse,Forms,forms,forms,delete_form,delete,,Delete a form +service_management.yaml,/api/v2/forms/{form_id},GetForm,get_form,get,FormResponse,Forms,forms,forms,get_form,select,$.data,Get a form +service_management.yaml,/api/v2/forms/{form_id},UpdateForm,update_form,patch,FormResponse,Forms,forms,forms,update_form,update,,Update a form +service_management.yaml,/api/v2/forms/{form_id}/clone,CloneForm,clone_form,post,FormResponse,Forms,forms,forms,clone_form,exec,,Clone a form +service_management.yaml,/api/v2/forms/{form_id}/publish,PublishForm,publish_form,post,FormPublicationResponse,Forms,forms,forms,publish_form,exec,,Publish a form version +service_management.yaml,/api/v2/forms/{form_id}/versions,UpsertFormVersion,upsert_form_version,post,FormVersionResponse,Forms,forms,form_versions,upsert_form_version,insert,,Create or update a form version +service_management.yaml,/api/v2/forms/{form_id}/versions/upsert_and_publish,UpsertAndPublishFormVersion,upsert_and_publish_form_version,post,FormResponse,Forms,forms,form_versions,upsert_and_publish_form_version,exec,,Upsert and publish a form version +service_management.yaml,/api/v2/incidents/config/global/incident-handles,DeleteGlobalIncidentHandle,delete_global_incident_handle,delete,,Incidents,incidents,incident_global_incident_handles,delete_global_incident_handle,delete,,Delete global incident handle +service_management.yaml,/api/v2/incidents/config/global/incident-handles,ListGlobalIncidentHandles,list_global_incident_handles,get,IncidentHandlesResponse,Incidents,incidents,incident_global_incident_handles,list_global_incident_handles,select,$.data,List global incident handles +service_management.yaml,/api/v2/incidents/config/global/incident-handles,CreateGlobalIncidentHandle,create_global_incident_handle,post,IncidentHandleResponse,Incidents,incidents,incident_global_incident_handles,create_global_incident_handle,insert,,Create global incident handle +service_management.yaml,/api/v2/incidents/config/global/incident-handles,UpdateGlobalIncidentHandle,update_global_incident_handle,put,IncidentHandleResponse,Incidents,incidents,incident_global_incident_handles,update_global_incident_handle,replace,,Update global incident handle +service_management.yaml,/api/v2/incidents/config/global/settings,GetGlobalIncidentSettings,get_global_incident_settings,get,GlobalIncidentSettingsResponse,Incidents,incidents,incident_global_settings,get_global_incident_settings,select,$.data,Get global incident settings +service_management.yaml,/api/v2/incidents/config/global/settings,UpdateGlobalIncidentSettings,update_global_incident_settings,patch,GlobalIncidentSettingsResponse,Incidents,incidents,incident_global_settings,update_global_incident_settings,update,,Update global incident settings +service_management.yaml,/api/v2/incidents/config/google-chat-configurations,CreateIncidentGoogleChatConfiguration,create_incident_google_chat_configuration,post,IncidentGoogleChatConfigurationResponse,Incidents,incidents,incident_google_chat_configurations,create_incident_google_chat_configuration,insert,,Create an incident Google Chat configuration +service_management.yaml,/api/v2/incidents/config/google-chat-configurations/{id},UpdateIncidentGoogleChatConfiguration,update_incident_google_chat_configuration,patch,IncidentGoogleChatConfigurationResponse,Incidents,incidents,incident_google_chat_configurations,update_incident_google_chat_configuration,update,,Update an incident Google Chat configuration +service_management.yaml,/api/v2/incidents/config/google-meet-configurations,CreateIncidentGoogleMeetConfiguration,create_incident_google_meet_configuration,post,IncidentGoogleMeetConfigurationResponse,Incidents,incidents,incident_google_meet_configurations,create_incident_google_meet_configuration,insert,,Create an incident Google Meet configuration +service_management.yaml,/api/v2/incidents/config/google-meet-configurations/{id},UpdateIncidentGoogleMeetConfiguration,update_incident_google_meet_configuration,patch,IncidentGoogleMeetConfigurationResponse,Incidents,incidents,incident_google_meet_configurations,update_incident_google_meet_configuration,update,,Update an incident Google Meet configuration +service_management.yaml,/api/v2/incidents/config/impact-fields,ListIncidentImpactFields,list_incident_impact_fields,get,IncidentImpactFieldsResponse,Incidents,incidents,incident_impact_fields,list_incident_impact_fields,select,$.data,List incident impact fields +service_management.yaml,/api/v2/incidents/config/impact-fields,CreateIncidentImpactField,create_incident_impact_field,post,IncidentImpactFieldResponse,Incidents,incidents,incident_impact_fields,create_incident_impact_field,insert,,Create an incident impact field +service_management.yaml,/api/v2/incidents/config/impact-fields/{field_id},DeleteIncidentImpactField,delete_incident_impact_field,delete,,Incidents,incidents,incident_impact_fields,delete_incident_impact_field,delete,,Delete an incident impact field +service_management.yaml,/api/v2/incidents/config/impact-fields/{field_id},UpdateIncidentImpactField,update_incident_impact_field,put,IncidentImpactFieldResponse,Incidents,incidents,incident_impact_fields,update_incident_impact_field,replace,,Update an incident impact field +service_management.yaml,/api/v2/incidents/config/postmortem-templates,ListIncidentPostmortemTemplates,list_incident_postmortem_templates,get,PostmortemTemplatesResponse,Incidents,incidents,incident_postmortem_templates,list_incident_postmortem_templates,select,$.data,List postmortem templates +service_management.yaml,/api/v2/incidents/config/postmortem-templates,CreateIncidentPostmortemTemplate,create_incident_postmortem_template,post,PostmortemTemplateResponse,Incidents,incidents,incident_postmortem_templates,create_incident_postmortem_template,insert,,Create postmortem template +service_management.yaml,/api/v2/incidents/config/postmortem-templates/{template_id},DeleteIncidentPostmortemTemplate,delete_incident_postmortem_template,delete,,Incidents,incidents,incident_postmortem_templates,delete_incident_postmortem_template,delete,,Delete postmortem template +service_management.yaml,/api/v2/incidents/config/postmortem-templates/{template_id},GetIncidentPostmortemTemplate,get_incident_postmortem_template,get,PostmortemTemplateResponse,Incidents,incidents,incident_postmortem_templates,get_incident_postmortem_template,select,$.data,Get postmortem template +service_management.yaml,/api/v2/incidents/config/postmortem-templates/{template_id},UpdateIncidentPostmortemTemplate,update_incident_postmortem_template,patch,PostmortemTemplateResponse,Incidents,incidents,incident_postmortem_templates,update_incident_postmortem_template,update,,Update postmortem template +service_management.yaml,/api/v2/incidents/config/rules,ListIncidentRules,list_incident_rules,get,IncidentRulesResponse,Incidents,incidents,incident_rules,list_incident_rules,select,$.data,List incident rules +service_management.yaml,/api/v2/incidents/config/rules,CreateIncidentRule,create_incident_rule,post,IncidentRuleResponse,Incidents,incidents,incident_rules,create_incident_rule,insert,,Create an incident rule +service_management.yaml,/api/v2/incidents/config/rules/{rule_id},DeleteIncidentRule,delete_incident_rule,delete,,Incidents,incidents,incident_rules,delete_incident_rule,delete,,Delete an incident rule +service_management.yaml,/api/v2/incidents/config/rules/{rule_id},GetIncidentRule,get_incident_rule,get,IncidentRuleResponse,Incidents,incidents,incident_rules,get_incident_rule,select,$.data,Get an incident rule +service_management.yaml,/api/v2/incidents/config/rules/{rule_id},UpdateIncidentRule,update_incident_rule,patch,IncidentRuleResponse,Incidents,incidents,incident_rules,update_incident_rule,update,,Update an incident rule +service_management.yaml,/api/v2/incidents/config/types/org-settings,ListOrgSettings,list_org_settings,get,IncidentOrgSettingsListResponse,Incidents,incidents,incident_type_org_settings,list_org_settings,select,$.data,List incident type org settings +service_management.yaml,/api/v2/incidents/config/types/{incident_type_id}/org-settings,GetOrgSettingsByIncidentType,get_org_settings_by_incident_type,get,IncidentOrgSettingsResponse,Incidents,incidents,incident_type_org_settings,get_org_settings_by_incident_type,select,$.data,Get org settings by incident type +service_management.yaml,/api/v2/incidents/config/user-defined-fields,ListIncidentUserDefinedFields,list_incident_user_defined_fields,get,IncidentUserDefinedFieldListResponse,Incidents,incidents,incident_user_defined_fields,list_incident_user_defined_fields,select,$.data,Get a list of incident user-defined fields +service_management.yaml,/api/v2/incidents/config/user-defined-fields,CreateIncidentUserDefinedField,create_incident_user_defined_field,post,IncidentUserDefinedFieldResponse,Incidents,incidents,incident_user_defined_fields,create_incident_user_defined_field,insert,,Create an incident user-defined field +service_management.yaml,/api/v2/incidents/config/user-defined-fields/{field_id},DeleteIncidentUserDefinedField,delete_incident_user_defined_field,delete,,Incidents,incidents,incident_user_defined_fields,delete_incident_user_defined_field,delete,,Delete an incident user-defined field +service_management.yaml,/api/v2/incidents/config/user-defined-fields/{field_id},GetIncidentUserDefinedField,get_incident_user_defined_field,get,IncidentUserDefinedFieldResponse,Incidents,incidents,incident_user_defined_fields,get_incident_user_defined_field,select,$.data,Get an incident user-defined field +service_management.yaml,/api/v2/incidents/config/user-defined-fields/{field_id},UpdateIncidentUserDefinedField,update_incident_user_defined_field,patch,IncidentUserDefinedFieldResponse,Incidents,incidents,incident_user_defined_fields,update_incident_user_defined_field,update,,Update an incident user-defined field +service_management.yaml,/api/v2/incidents/config/user-defined-roles,ListIncidentUserDefinedRoles,list_incident_user_defined_roles,get,IncidentUserDefinedRolesResponse,Incidents,incidents,incident_user_defined_roles,list_incident_user_defined_roles,select,$.data,List incident user-defined roles +service_management.yaml,/api/v2/incidents/config/user-defined-roles,CreateIncidentUserDefinedRole,create_incident_user_defined_role,post,IncidentUserDefinedRoleResponse,Incidents,incidents,incident_user_defined_roles,create_incident_user_defined_role,insert,,Create an incident user-defined role +service_management.yaml,/api/v2/incidents/config/user-defined-roles/{role_id},DeleteIncidentUserDefinedRole,delete_incident_user_defined_role,delete,,Incidents,incidents,incident_user_defined_roles,delete_incident_user_defined_role,delete,,Delete an incident user-defined role +service_management.yaml,/api/v2/incidents/config/user-defined-roles/{role_id},GetIncidentUserDefinedRole,get_incident_user_defined_role,get,IncidentUserDefinedRoleResponse,Incidents,incidents,incident_user_defined_roles,get_incident_user_defined_role,select,$.data,Get an incident user-defined role +service_management.yaml,/api/v2/incidents/config/user-defined-roles/{role_id},UpdateIncidentUserDefinedRole,update_incident_user_defined_role,patch,IncidentUserDefinedRoleResponse,Incidents,incidents,incident_user_defined_roles,update_incident_user_defined_role,update,,Update an incident user-defined role +service_management.yaml,/api/v2/incidents/import,ImportIncident,import_incident,post,IncidentImportResponse,Incidents,incidents,incidents,import_incident,exec,,Import an incident +service_management.yaml,/api/v2/incidents/{incident_id}/ai/postmortem,GetIncidentAIPostmortem,get_incident_aipostmortem,post,IncidentAIPostmortemResponse,Incidents,incidents,incident_ai_postmortems,get_incident_aipostmortem,insert,,Get an AI-generated incident postmortem +service_management.yaml,/api/v2/incidents/{incident_id}/attachments,CreateIncidentAttachment,create_incident_attachment,post,Attachment,Incidents,incidents,incident_attachments,create_incident_attachment,insert,,Create incident attachment +service_management.yaml,/api/v2/incidents/{incident_id}/attachments/postmortems,CreateIncidentPostmortemAttachment,create_incident_postmortem_attachment,post,Attachment,Incidents,incidents,incident_attachment_postmortems,create_incident_postmortem_attachment,insert,,Create postmortem attachment +service_management.yaml,/api/v2/incidents/{incident_id}/attachments/{attachment_id},DeleteIncidentAttachment,delete_incident_attachment,delete,,Incidents,incidents,incident_attachments,delete_incident_attachment,delete,,Delete incident attachment +service_management.yaml,/api/v2/incidents/{incident_id}/attachments/{attachment_id},UpdateIncidentAttachment,update_incident_attachment,patch,Attachment,Incidents,incidents,incident_attachments,update_incident_attachment,update,,Update incident attachment +service_management.yaml,/api/v2/incidents/{incident_id}/cases/page,CreatePageFromIncident,create_page_from_incident,post,IncidentPageUUIDResponse,Incidents,incidents,incident_case_pages,create_page_from_incident,insert,,Create a page from an incident +service_management.yaml,/api/v2/incidents/{incident_id}/configurations,UpdateIncidentConfiguration,update_incident_configuration,patch,IncidentConfigurationResponse,Incidents,incidents,incident_configurations,update_incident_configuration,update,,Update an incident configuration +service_management.yaml,/api/v2/incidents/{incident_id}/configurations,CreateIncidentConfiguration,create_incident_configuration,post,IncidentConfigurationResponse,Incidents,incidents,incident_configurations,create_incident_configuration,insert,,Create an incident configuration +service_management.yaml,/api/v2/incidents/{incident_id}/impacts,ListIncidentImpacts,list_incident_impacts,get,IncidentImpactsResponse,Incidents,incidents,incident_impacts,list_incident_impacts,select,$.data,List an incident's impacts +service_management.yaml,/api/v2/incidents/{incident_id}/impacts,CreateIncidentImpact,create_incident_impact,post,IncidentImpactResponse,Incidents,incidents,incident_impacts,create_incident_impact,insert,,Create an incident impact +service_management.yaml,/api/v2/incidents/{incident_id}/impacts/{impact_id},DeleteIncidentImpact,delete_incident_impact,delete,,Incidents,incidents,incident_impacts,delete_incident_impact,delete,,Delete an incident impact +service_management.yaml,/api/v2/incidents/{incident_id}/impacts/{impact_id},PatchIncidentImpact,patch_incident_impact,patch,IncidentImpactResponse,Incidents,incidents,incident_impacts,patch_incident_impact,update,,Update an incident impact +service_management.yaml,/api/v2/incidents/{incident_id}/page,CreateOnCallPageFromIncident,create_on_call_page_from_incident,post,IncidentPageUUIDResponse,Incidents,incidents,incident_pages,create_on_call_page_from_incident,insert,,Create an on-call page from an incident +service_management.yaml,/api/v2/incidents/{incident_id}/pages/link,LinkPageToIncident,link_page_to_incident,post,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_pages,link_page_to_incident,exec,,Link a page to an incident +service_management.yaml,/api/v2/incidents/{incident_id}/responders,ListIncidentResponders,list_incident_responders,get,IncidentRespondersResponse,Incidents,incidents,incident_responders,list_incident_responders,select,$.data,List incident responders +service_management.yaml,/api/v2/incidents/{incident_id}/responders,CreateIncidentResponder,create_incident_responder,post,IncidentResponderResponse,Incidents,incidents,incident_responders,create_incident_responder,insert,,Create an incident responder +service_management.yaml,/api/v2/incidents/{incident_id}/responders/{responder_id},DeleteIncidentResponder,delete_incident_responder,delete,,Incidents,incidents,incident_responders,delete_incident_responder,delete,,Delete an incident responder +service_management.yaml,/api/v2/incidents/{incident_id}/responders/{responder_id},GetIncidentResponder,get_incident_responder,get,IncidentResponderResponse,Incidents,incidents,incident_responders,get_incident_responder,select,$.data,Get an incident responder +service_management.yaml,/api/v2/incidents/{incident_id}/servicenow-records,CreateIncidentServiceNowRecord,create_incident_service_now_record,post,IncidentIntegrationMetadataResponse,Incidents,incidents,incident_servicenow_records,create_incident_service_now_record,insert,,Create an incident ServiceNow record +service_management.yaml,/api/v2/incidents/{incident_id}/timestamp-overrides,ListTimestampOverrides,list_timestamp_overrides,get,IncidentTimestampOverridesResponse,Incidents,incidents,incident_timestamp_overrides,list_timestamp_overrides,select,$.data,List incident timestamp overrides +service_management.yaml,/api/v2/incidents/{incident_id}/timestamp-overrides,CreateTimestampOverride,create_timestamp_override,post,IncidentTimestampOverrideResponse,Incidents,incidents,incident_timestamp_overrides,create_timestamp_override,insert,,Create an incident timestamp override +service_management.yaml,/api/v2/incidents/{incident_id}/timestamp-overrides/{id},DeleteTimestampOverride,delete_timestamp_override,delete,,Incidents,incidents,incident_timestamp_overrides,delete_timestamp_override,delete,,Delete an incident timestamp override +service_management.yaml,/api/v2/incidents/{incident_id}/timestamp-overrides/{id},UpdateTimestampOverride,update_timestamp_override,patch,IncidentTimestampOverrideResponse,Incidents,incidents,incident_timestamp_overrides,update_timestamp_override,update,,Update an incident timestamp override +service_management.yaml,/api/v2/maintenance_windows,ListMaintenanceWindows,list_maintenance_windows,get,MaintenanceWindowsResponse,Case Management,case management,maintenance_windows,list_maintenance_windows,select,$.data,List maintenance windows +service_management.yaml,/api/v2/maintenance_windows,CreateMaintenanceWindow,create_maintenance_window,post,MaintenanceWindowResponse,Case Management,case management,maintenance_windows,create_maintenance_window,insert,,Create a maintenance window +service_management.yaml,/api/v2/maintenance_windows/{maintenance_window_id},DeleteMaintenanceWindow,delete_maintenance_window,delete,,Case Management,case management,maintenance_windows,delete_maintenance_window,delete,,Delete a maintenance window +service_management.yaml,/api/v2/maintenance_windows/{maintenance_window_id},UpdateMaintenanceWindow,update_maintenance_window,put,MaintenanceWindowResponse,Case Management,case management,maintenance_windows,update_maintenance_window,replace,,Update a maintenance window +service_management.yaml,/api/v2/on-call/schedules/{schedule_id}/responders,GetScheduleOnCallResponders,get_schedule_on_call_responders,get,ScheduleOnCallResponders,On-Call,on_call,on_call_schedule_responders,get_schedule_on_call_responders,select,$.data,Get on-call responders for a schedule +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-channels,ListUserNotificationChannels,list_user_notification_channels,get,ListNotificationChannelsResponse,On-Call,on_call,on_call_user_notification_channels,list_user_notification_channels,select,$.data,List On-Call notification channels for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-channels,CreateUserNotificationChannel,create_user_notification_channel,post,NotificationChannel,On-Call,on_call,on_call_user_notification_channels,create_user_notification_channel,insert,,Create an On-Call notification channel for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-channels/{channel_id},DeleteUserNotificationChannel,delete_user_notification_channel,delete,,On-Call,on_call,on_call_user_notification_channels,delete_user_notification_channel,delete,,Delete an On-Call notification channel for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-channels/{channel_id},GetUserNotificationChannel,get_user_notification_channel,get,NotificationChannel,On-Call,on_call,on_call_user_notification_channels,get_user_notification_channel,select,$.data,Get an On-Call notification channel for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-rules,ListUserNotificationRules,list_user_notification_rules,get,ListOnCallNotificationRulesResponse,On-Call,on_call,on_call_user_notification_rules,list_user_notification_rules,select,$.data,List On-Call notification rules for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-rules,CreateUserNotificationRule,create_user_notification_rule,post,OnCallNotificationRule,On-Call,on_call,on_call_user_notification_rules,create_user_notification_rule,insert,,Create an On-Call notification rule for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-rules/{rule_id},DeleteUserNotificationRule,delete_user_notification_rule,delete,,On-Call,on_call,on_call_user_notification_rules,delete_user_notification_rule,delete,,Delete an On-Call notification rule for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-rules/{rule_id},GetUserNotificationRule,get_user_notification_rule,get,OnCallNotificationRule,On-Call,on_call,on_call_user_notification_rules,get_user_notification_rule,select,$.data,Get an On-Call notification rule for a user +service_management.yaml,/api/v2/on-call/users/{user_id}/notification-rules/{rule_id},UpdateUserNotificationRule,update_user_notification_rule,put,OnCallNotificationRule,On-Call,on_call,on_call_user_notification_rules,update_user_notification_rule,replace,,Update an On-Call notification rule for a user +service_management.yaml,/api/v2/slo/{slo_id}/status,GetSloStatus,get_slo_status,get,SloStatusResponse,Service Level Objectives,service level objectives,slo_statuses,get_slo_status,select,$.data,Get SLO status +service_management.yaml,/api/v2/statuspages,ListStatusPages,list_status_pages,get,StatusPageArray,Status Pages,status pages,statuspages,list_status_pages,select,$.data,List status pages +service_management.yaml,/api/v2/statuspages,CreateStatusPage,create_status_page,post,StatusPage,Status Pages,status pages,statuspages,create_status_page,insert,,Create status page +service_management.yaml,/api/v2/statuspages/degradations,ListDegradations,list_degradations,get,DegradationArray,Status Pages,status pages,statuspage_degradations,list_degradations,select,$.data,List degradations +service_management.yaml,/api/v2/statuspages/maintenances,ListMaintenances,list_maintenances,get,MaintenanceArray,Status Pages,status pages,statuspage_maintenances,list_maintenances,select,$.data,List maintenances +service_management.yaml,/api/v2/statuspages/{page_id},DeleteStatusPage,delete_status_page,delete,,Status Pages,status pages,statuspages,delete_status_page,delete,,Delete status page +service_management.yaml,/api/v2/statuspages/{page_id},GetStatusPage,get_status_page,get,StatusPage,Status Pages,status pages,statuspages,get_status_page,select,$.data,Get status page +service_management.yaml,/api/v2/statuspages/{page_id},UpdateStatusPage,update_status_page,patch,StatusPage,Status Pages,status pages,statuspages,update_status_page,update,,Update status page +service_management.yaml,/api/v2/statuspages/{page_id}/components,ListComponents,list_components,get,StatusPagesComponentArray,Status Pages,status pages,statuspage_components,list_components,select,$.data,List components +service_management.yaml,/api/v2/statuspages/{page_id}/components,CreateComponent,create_component,post,StatusPagesComponent,Status Pages,status pages,statuspage_components,create_component,insert,,Create component +service_management.yaml,/api/v2/statuspages/{page_id}/components/{component_id},DeleteComponent,delete_component,delete,,Status Pages,status pages,statuspage_components,delete_component,delete,,Delete component +service_management.yaml,/api/v2/statuspages/{page_id}/components/{component_id},GetComponent,get_component,get,StatusPagesComponent,Status Pages,status pages,statuspage_components,get_component,select,$.data,Get component +service_management.yaml,/api/v2/statuspages/{page_id}/components/{component_id},UpdateComponent,update_component,patch,StatusPagesComponent,Status Pages,status pages,statuspage_components,update_component,update,,Update component +service_management.yaml,/api/v2/statuspages/{page_id}/degradation_templates,ListDegradationTemplates,list_degradation_templates,get,DegradationTemplateArray,Status Pages,status pages,statuspage_degradation_templates,list_degradation_templates,select,$.data,List degradation templates +service_management.yaml,/api/v2/statuspages/{page_id}/degradation_templates,CreateDegradationTemplate,create_degradation_template,post,DegradationTemplate,Status Pages,status pages,statuspage_degradation_templates,create_degradation_template,insert,,Create degradation template +service_management.yaml,/api/v2/statuspages/{page_id}/degradation_templates/{template_id},DeleteDegradationTemplate,delete_degradation_template,delete,,Status Pages,status pages,statuspage_degradation_templates,delete_degradation_template,delete,,Delete degradation template +service_management.yaml,/api/v2/statuspages/{page_id}/degradation_templates/{template_id},GetDegradationTemplate,get_degradation_template,get,DegradationTemplate,Status Pages,status pages,statuspage_degradation_templates,get_degradation_template,select,$.data,Get degradation template +service_management.yaml,/api/v2/statuspages/{page_id}/degradation_templates/{template_id},UpdateDegradationTemplate,update_degradation_template,patch,DegradationTemplate,Status Pages,status pages,statuspage_degradation_templates,update_degradation_template,update,,Update degradation template +service_management.yaml,/api/v2/statuspages/{page_id}/degradations,CreateDegradation,create_degradation,post,Degradation,Status Pages,status pages,statuspage_degradations,create_degradation,insert,,Create degradation +service_management.yaml,/api/v2/statuspages/{page_id}/degradations/backfill,CreateBackfilledDegradation,create_backfilled_degradation,post,Degradation,Status Pages,status pages,statuspage_degradation_backfills,create_backfilled_degradation,insert,,Create backfilled degradation +service_management.yaml,/api/v2/statuspages/{page_id}/degradations/{degradation_id},DeleteDegradation,delete_degradation,delete,,Status Pages,status pages,statuspage_degradations,delete_degradation,delete,,Delete degradation +service_management.yaml,/api/v2/statuspages/{page_id}/degradations/{degradation_id},GetDegradation,get_degradation,get,Degradation,Status Pages,status pages,statuspage_degradations,get_degradation,select,$.data,Get degradation +service_management.yaml,/api/v2/statuspages/{page_id}/degradations/{degradation_id},UpdateDegradation,update_degradation,patch,Degradation,Status Pages,status pages,statuspage_degradations,update_degradation,update,,Update degradation +service_management.yaml,/api/v2/statuspages/{page_id}/degradations/{degradation_id}/updates/{update_id},SoftDeleteDegradationUpdate,soft_delete_degradation_update,delete,,Status Pages,status pages,statuspage_degradation_updates,soft_delete_degradation_update,delete,,Soft delete degradation update +service_management.yaml,/api/v2/statuspages/{page_id}/degradations/{degradation_id}/updates/{update_id},EditDegradationUpdate,edit_degradation_update,patch,DegradationUpdate,Status Pages,status pages,statuspage_degradation_updates,edit_degradation_update,update,,Edit degradation update +service_management.yaml,/api/v2/statuspages/{page_id}/maintenance_templates,ListMaintenanceTemplates,list_maintenance_templates,get,MaintenanceTemplateArray,Status Pages,status pages,statuspage_maintenance_templates,list_maintenance_templates,select,$.data,List maintenance templates +service_management.yaml,/api/v2/statuspages/{page_id}/maintenance_templates,CreateMaintenanceTemplate,create_maintenance_template,post,MaintenanceTemplate,Status Pages,status pages,statuspage_maintenance_templates,create_maintenance_template,insert,,Create maintenance template +service_management.yaml,/api/v2/statuspages/{page_id}/maintenance_templates/{template_id},DeleteMaintenanceTemplate,delete_maintenance_template,delete,,Status Pages,status pages,statuspage_maintenance_templates,delete_maintenance_template,delete,,Delete maintenance template +service_management.yaml,/api/v2/statuspages/{page_id}/maintenance_templates/{template_id},GetMaintenanceTemplate,get_maintenance_template,get,MaintenanceTemplate,Status Pages,status pages,statuspage_maintenance_templates,get_maintenance_template,select,$.data,Get maintenance template +service_management.yaml,/api/v2/statuspages/{page_id}/maintenance_templates/{template_id},UpdateMaintenanceTemplate,update_maintenance_template,patch,MaintenanceTemplate,Status Pages,status pages,statuspage_maintenance_templates,update_maintenance_template,update,,Update maintenance template +service_management.yaml,/api/v2/statuspages/{page_id}/maintenances,CreateMaintenance,create_maintenance,post,Maintenance,Status Pages,status pages,statuspage_maintenances,create_maintenance,insert,,Schedule maintenance +service_management.yaml,/api/v2/statuspages/{page_id}/maintenances/backfill,CreateBackfilledMaintenance,create_backfilled_maintenance,post,Maintenance,Status Pages,status pages,statuspage_maintenance_backfills,create_backfilled_maintenance,insert,,Create backfilled maintenance +service_management.yaml,/api/v2/statuspages/{page_id}/maintenances/{maintenance_id},GetMaintenance,get_maintenance,get,Maintenance,Status Pages,status pages,statuspage_maintenances,get_maintenance,select,$.data,Get maintenance +service_management.yaml,/api/v2/statuspages/{page_id}/maintenances/{maintenance_id},UpdateMaintenance,update_maintenance,patch,Maintenance,Status Pages,status pages,statuspage_maintenances,update_maintenance,update,,Update maintenance +service_management.yaml,/api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id},PatchMaintenanceUpdate,patch_maintenance_update,patch,MaintenanceUpdate,Status Pages,status pages,statuspage_maintenance_updates,patch_maintenance_update,update,,Edit maintenance update +service_management.yaml,/api/v2/statuspages/{page_id}/publish,PublishStatusPage,publish_status_page,post,,Status Pages,status pages,statuspages,publish_status_page,exec,,Publish status page +service_management.yaml,/api/v2/statuspages/{page_id}/unpublish,UnpublishStatusPage,unpublish_status_page,post,,Status Pages,status pages,statuspages,unpublish_status_page,exec,,Unpublish status page +service_management.yaml,/api/v1/downtime,ListDowntimesV1,list_downtimes_v1,get,Downtime,Downtimes,downtimes,skip_this_resource,,,,Get all downtimes +service_management.yaml,/api/v1/downtime,CreateDowntimeV1,create_downtime_v1,post,Downtime,Downtimes,downtimes,skip_this_resource,,,,Schedule a downtime +service_management.yaml,/api/v1/downtime/cancel/by_scope,CancelDowntimesByScope,cancel_downtimes_by_scope,post,CanceledDowntimesIds,Downtimes,downtimes,skip_this_resource,,,,Cancel downtimes by scope +service_management.yaml,/api/v1/downtime/{downtime_id},CancelDowntimeV1,cancel_downtime_v1,delete,,Downtimes,downtimes,skip_this_resource,,,,Cancel a downtime +service_management.yaml,/api/v1/downtime/{downtime_id},GetDowntimeV1,get_downtime_v1,get,Downtime,Downtimes,downtimes,skip_this_resource,,,,Get a downtime +service_management.yaml,/api/v1/downtime/{downtime_id},UpdateDowntimeV1,update_downtime_v1,put,Downtime,Downtimes,downtimes,skip_this_resource,,,,Update a downtime +service_management.yaml,/api/v1/events,ListEventsV1,list_events_v1,get,EventListResponse,Events,events,skip_this_resource,,,,Get a list of events +service_management.yaml,/api/v1/events,CreateEventV1,create_event_v1,post,EventCreateResponseV1,Events,events,skip_this_resource,,,,Post an event +service_management.yaml,/api/v1/events/{event_id},GetEventV1,get_event_v1,get,EventResponseV1,Events,events,skip_this_resource,,,,Get an event +service_management.yaml,/api/v1/slo,ListSLOs,list_slos,get,SLOListResponse,Service Level Objectives,service level objectives,slos,list_slos,select,$.data,Get all SLOs +service_management.yaml,/api/v1/slo,CreateSLO,create_slo,post,SLOListResponse,Service Level Objectives,service level objectives,slos,create_slo,insert,,Create an SLO object +service_management.yaml,/api/v1/slo/bulk_delete,DeleteSLOTimeframeInBulk,delete_slotimeframe_in_bulk,post,SLOBulkDeleteResponse,Service Level Objectives,service level objectives,slos,delete_slotimeframe_in_bulk,exec,,Bulk Delete SLO Timeframes +service_management.yaml,/api/v1/slo/can_delete,CheckCanDeleteSLO,check_can_delete_slo,get,CheckCanDeleteSLOResponse,Service Level Objectives,service level objectives,slos,check_can_delete_slo,select,$.data,Check if SLOs can be safely deleted +service_management.yaml,/api/v1/slo/correction,ListSLOCorrection,list_slocorrection,get,SLOCorrectionListResponse,Service Level Objective Corrections,service level objective corrections,slo_corrections,list_slocorrection,select,$.data,Get all SLO corrections +service_management.yaml,/api/v1/slo/correction,CreateSLOCorrection,create_slocorrection,post,SLOCorrectionResponse,Service Level Objective Corrections,service level objective corrections,slo_corrections,create_slocorrection,insert,,Create an SLO correction +service_management.yaml,/api/v1/slo/correction/{slo_correction_id},DeleteSLOCorrection,delete_slocorrection,delete,,Service Level Objective Corrections,service level objective corrections,slo_corrections,delete_slocorrection,delete,,Delete an SLO correction +service_management.yaml,/api/v1/slo/correction/{slo_correction_id},GetSLOCorrection,get_slocorrection,get,SLOCorrectionResponse,Service Level Objective Corrections,service level objective corrections,slo_corrections,get_slocorrection,select,$.data,Get an SLO correction for an SLO +service_management.yaml,/api/v1/slo/correction/{slo_correction_id},UpdateSLOCorrection,update_slocorrection,patch,SLOCorrectionResponse,Service Level Objective Corrections,service level objective corrections,slo_corrections,update_slocorrection,update,,Update an SLO correction +service_management.yaml,/api/v1/slo/search,SearchSLO,search_slo,get,SearchSLOResponse,Service Level Objectives,service level objectives,slo_search_results,search_slo,select,$.data.attributes.slos,Search for SLOs +service_management.yaml,/api/v1/slo/{slo_id},DeleteSLO,delete_slo,delete,SLODeleteResponse,Service Level Objectives,service level objectives,slos,delete_slo,delete,,Delete an SLO +service_management.yaml,/api/v1/slo/{slo_id},GetSLO,get_slo,get,SLOResponse,Service Level Objectives,service level objectives,slos,get_slo,select,$.data,Get an SLO's details +service_management.yaml,/api/v1/slo/{slo_id},UpdateSLO,update_slo,put,SLOListResponse,Service Level Objectives,service level objectives,slos,update_slo,replace,,Update an SLO +service_management.yaml,/api/v1/slo/{slo_id}/corrections,GetSLOCorrections,get_slocorrections,get,SLOCorrectionListResponse,Service Level Objectives,service level objectives,slo_corrections,get_slocorrections,select,$.data,Get Corrections For an SLO +service_management.yaml,/api/v1/slo/{slo_id}/history,GetSLOHistory,get_slohistory,get,SLOHistoryResponse,Service Level Objectives,service level objectives,slo_history,get_slohistory,select,$.data,Get an SLO's history +software_delivery.yaml,/api/v2/ci/github/accounts,ListCIAppGitHubAccounts,list_ciapp_git_hub_accounts,get,CIAppGitHubAccountsResponse,CI Visibility GitHub Accounts,ci visibility git_hub accounts,ci_github_accounts,list_ciapp_git_hub_accounts,select,$.data,List GitHub CI Visibility status +software_delivery.yaml,/api/v2/ci/github/accounts,UpdateCIAppGitHubAccount,update_ciapp_git_hub_account,patch,CIAppGitHubAccountResponse,CI Visibility GitHub Accounts,ci visibility git_hub accounts,ci_github_accounts,update_ciapp_git_hub_account,update,,Update GitHub CI Visibility status +software_delivery.yaml,/api/v2/ci/test-optimization/settings/policies,UpdateFlakyTestsManagementPolicies,update_flaky_tests_management_policies,patch,TestOptimizationFlakyTestsManagementPoliciesResponse,Test Optimization,test optimization,ci_test_optimization_setting_policies,update_flaky_tests_management_policies,update,,Update Flaky Tests Management policies +software_delivery.yaml,/api/v2/ci/test-optimization/settings/policies,GetFlakyTestsManagementPolicies,get_flaky_tests_management_policies,post,TestOptimizationFlakyTestsManagementPoliciesResponse,Test Optimization,test optimization,ci_test_optimization_setting_policies,get_flaky_tests_management_policies,insert,,Get Flaky Tests Management policies +software_delivery.yaml,/api/v2/ci/test-optimization/settings/service,DeleteTestOptimizationServiceSettings,delete_test_optimization_service_settings,delete,,Test Optimization,test optimization,ci_test_optimization_setting_services,delete_test_optimization_service_settings,delete,,Delete Test Optimization service settings +software_delivery.yaml,/api/v2/ci/test-optimization/settings/service,UpdateTestOptimizationServiceSettings,update_test_optimization_service_settings,patch,TestOptimizationServiceSettingsResponse,Test Optimization,test optimization,ci_test_optimization_setting_services,update_test_optimization_service_settings,update,,Update Test Optimization service settings +software_delivery.yaml,/api/v2/ci/test-optimization/settings/service,GetTestOptimizationServiceSettings,get_test_optimization_service_settings,post,TestOptimizationServiceSettingsResponse,Test Optimization,test optimization,ci_test_optimization_setting_services,get_test_optimization_service_settings,insert,,Get Test Optimization service settings +software_delivery.yaml,/api/v2/code-coverage/branch/summary,GetCodeCoverageBranchSummary,get_code_coverage_branch_summary,post,CoverageSummaryResponse,Code Coverage,code coverage,code_coverage_branch_summaries,get_code_coverage_branch_summary,exec,,Get code coverage summary for a branch +software_delivery.yaml,/api/v2/code-coverage/commit/summary,GetCodeCoverageCommitSummary,get_code_coverage_commit_summary,post,CoverageSummaryResponse,Code Coverage,code coverage,code_coverage_commit_summaries,get_code_coverage_commit_summary,exec,,Get code coverage summary for a commit +software_delivery.yaml,/api/v2/deployment_gates,ListDeploymentGates,list_deployment_gates,get,DeploymentGatesListResponse,Deployment Gates,deployment gates,deployment_gates,list_deployment_gates,select,$.data,Get all deployment gates +software_delivery.yaml,/api/v2/deployment_gates,CreateDeploymentGate,create_deployment_gate,post,DeploymentGateResponse,Deployment Gates,deployment gates,deployment_gates,create_deployment_gate,insert,,Create deployment gate +software_delivery.yaml,/api/v2/deployment_gates/{gate_id}/rules,GetDeploymentGateRules,get_deployment_gate_rules,get,DeploymentGateRulesResponse,Deployment Gates,deployment gates,deployment_gate_rules,get_deployment_gate_rules,select,$.data,Get rules for a deployment gate +software_delivery.yaml,/api/v2/deployment_gates/{gate_id}/rules,CreateDeploymentRule,create_deployment_rule,post,DeploymentRuleResponse,Deployment Gates,deployment gates,deployment_gate_rules,create_deployment_rule,insert,,Create deployment rule +software_delivery.yaml,/api/v2/deployment_gates/{gate_id}/rules/{id},DeleteDeploymentRule,delete_deployment_rule,delete,,Deployment Gates,deployment gates,deployment_gate_rules,delete_deployment_rule,delete,,Delete deployment rule +software_delivery.yaml,/api/v2/deployment_gates/{gate_id}/rules/{id},GetDeploymentRule,get_deployment_rule,get,DeploymentRuleResponse,Deployment Gates,deployment gates,deployment_gate_rules,get_deployment_rule,select,$.data,Get deployment rule +software_delivery.yaml,/api/v2/deployment_gates/{gate_id}/rules/{id},UpdateDeploymentRule,update_deployment_rule,put,DeploymentRuleResponse,Deployment Gates,deployment gates,deployment_gate_rules,update_deployment_rule,replace,,Update deployment rule +software_delivery.yaml,/api/v2/deployment_gates/{id},DeleteDeploymentGate,delete_deployment_gate,delete,,Deployment Gates,deployment gates,deployment_gates,delete_deployment_gate,delete,,Delete deployment gate +software_delivery.yaml,/api/v2/deployment_gates/{id},GetDeploymentGate,get_deployment_gate,get,DeploymentGateResponse,Deployment Gates,deployment gates,deployment_gates,get_deployment_gate,select,$.data,Get deployment gate +software_delivery.yaml,/api/v2/deployment_gates/{id},UpdateDeploymentGate,update_deployment_gate,put,DeploymentGateResponse,Deployment Gates,deployment gates,deployment_gates,update_deployment_gate,replace,,Update deployment gate +software_delivery.yaml,/api/v2/deployments/gates/evaluation,TriggerDeploymentGatesEvaluation,trigger_deployment_gates_evaluation,post,DeploymentGatesEvaluationResponse,Deployment Gates,deployment gates,deployment_gate_evaluations,trigger_deployment_gates_evaluation,exec,,Trigger a deployment gate evaluation +software_delivery.yaml,/api/v2/deployments/gates/evaluation/{id},GetDeploymentGatesEvaluationResult,get_deployment_gates_evaluation_result,get,DeploymentGatesEvaluationResultResponse,Deployment Gates,deployment gates,deployment_gate_evaluations,get_deployment_gates_evaluation_result,select,$.data,Get a deployment gate evaluation result +software_delivery.yaml,/api/v2/dora/deployment/{deployment_id},DeleteDORADeployment,delete_doradeployment,delete,,DORA Metrics,dora metrics,dora_deployments,delete_doradeployment,delete,,Delete a deployment event +software_delivery.yaml,/api/v2/dora/deployments,PatchDORADeploymentByVersion,patch_doradeployment_by_version,patch,,DORA Metrics,dora metrics,dora_deployments,patch_doradeployment_by_version,update,,Patch a deployment event by version +software_delivery.yaml,/api/v2/dora/deployments/{deployment_id},PatchDORADeployment,patch_doradeployment,patch,,DORA Metrics,dora metrics,dora_deployments,patch_doradeployment,update,,Patch a deployment event +software_delivery.yaml,/api/v2/dora/failure/{failure_id},DeleteDORAFailure,delete_dorafailure,delete,,DORA Metrics,dora metrics,dora_failures,delete_dorafailure,delete,,Delete an incident event +software_delivery.yaml,/api/v2/feature-flags,ListFeatureFlags,list_feature_flags,get,ListFeatureFlagsResponse,Feature Flags,feature flags,feature_flags,list_feature_flags,select,$.data,List feature flags +software_delivery.yaml,/api/v2/feature-flags,CreateFeatureFlag,create_feature_flag,post,FeatureFlagResponse,Feature Flags,feature flags,feature_flags,create_feature_flag,insert,,Create a feature flag +software_delivery.yaml,/api/v2/feature-flags/environments,ListFeatureFlagsEnvironments,list_feature_flags_environments,get,ListEnvironmentsResponse,Feature Flags,feature flags,feature_flag_environments,list_feature_flags_environments,select,$.data,List environments +software_delivery.yaml,/api/v2/feature-flags/environments,CreateFeatureFlagsEnvironment,create_feature_flags_environment,post,EnvironmentResponse,Feature Flags,feature flags,feature_flag_environments,create_feature_flags_environment,insert,,Create an environment +software_delivery.yaml,/api/v2/feature-flags/environments/{environment_id},DeleteFeatureFlagsEnvironment,delete_feature_flags_environment,delete,,Feature Flags,feature flags,feature_flag_environments,delete_feature_flags_environment,delete,,Delete an environment +software_delivery.yaml,/api/v2/feature-flags/environments/{environment_id},GetFeatureFlagsEnvironment,get_feature_flags_environment,get,EnvironmentResponse,Feature Flags,feature flags,feature_flag_environments,get_feature_flags_environment,select,$.data,Get an environment +software_delivery.yaml,/api/v2/feature-flags/environments/{environment_id},UpdateFeatureFlagsEnvironment,update_feature_flags_environment,put,EnvironmentResponse,Feature Flags,feature flags,feature_flag_environments,update_feature_flags_environment,replace,,Update an environment +software_delivery.yaml,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/pause,PauseExposureSchedule,pause_exposure_schedule,post,AllocationExposureScheduleResponse,Feature Flags,feature flags,feature_flag_exposure_schedules,pause_exposure_schedule,exec,,Pause a progressive rollout +software_delivery.yaml,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/resume,ResumeExposureSchedule,resume_exposure_schedule,post,AllocationExposureScheduleResponse,Feature Flags,feature flags,feature_flag_exposure_schedules,resume_exposure_schedule,exec,,Resume a progressive rollout +software_delivery.yaml,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/start,StartExposureSchedule,start_exposure_schedule,post,AllocationExposureScheduleResponse,Feature Flags,feature flags,feature_flag_exposure_schedules,start_exposure_schedule,exec,,Start a progressive rollout +software_delivery.yaml,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/stop,StopExposureSchedule,stop_exposure_schedule,post,AllocationExposureScheduleResponse,Feature Flags,feature flags,feature_flag_exposure_schedules,stop_exposure_schedule,exec,,Stop a progressive rollout +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id},GetFeatureFlag,get_feature_flag,get,FeatureFlagResponse,Feature Flags,feature flags,feature_flags,get_feature_flag,select,$.data,Get a feature flag +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id},UpdateFeatureFlag,update_feature_flag,put,FeatureFlagResponse,Feature Flags,feature flags,feature_flags,update_feature_flag,replace,,Update a feature flag +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/archive,ArchiveFeatureFlag,archive_feature_flag,post,FeatureFlagResponse,Feature Flags,feature flags,feature_flags,archive_feature_flag,exec,,Archive a feature flag +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/allocations,CreateAllocationsForFeatureFlagInEnvironment,create_allocations_for_feature_flag_in_environment,post,AllocationResponse,Feature Flags,feature flags,feature_flag_environment_allocations,create_allocations_for_feature_flag_in_environment,insert,,Create targeting rules for a flag env +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/allocations,UpdateAllocationsForFeatureFlagInEnvironment,update_allocations_for_feature_flag_in_environment,put,ListAllocationsResponse,Feature Flags,feature flags,feature_flag_environment_allocations,update_allocations_for_feature_flag_in_environment,replace,,Update targeting rules for a flag +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/disable,DisableFeatureFlagEnvironment,disable_feature_flag_environment,post,,Feature Flags,feature flags,feature_flag_environments,disable_feature_flag_environment,exec,,Disable a feature flag in an environment +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/enable,EnableFeatureFlagEnvironment,enable_feature_flag_environment,post,,Feature Flags,feature flags,feature_flag_environments,enable_feature_flag_environment,exec,,Enable a feature flag in an environment +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/unarchive,UnarchiveFeatureFlag,unarchive_feature_flag,post,FeatureFlagResponse,Feature Flags,feature flags,feature_flags,unarchive_feature_flag,exec,,Unarchive a feature flag +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/variants,CreateVariantForFeatureFlag,create_variant_for_feature_flag,post,Variant,Feature Flags,feature flags,feature_flag_variants,create_variant_for_feature_flag,insert,,Add a variant to a feature flag +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/variants/{variant_id},DeleteVariantFromFeatureFlag,delete_variant_from_feature_flag,delete,,Feature Flags,feature flags,feature_flag_variants,delete_variant_from_feature_flag,delete,,Delete a variant +software_delivery.yaml,/api/v2/feature-flags/{feature_flag_id}/variants/{variant_id},UpdateVariantForFeatureFlag,update_variant_for_feature_flag,put,Variant,Feature Flags,feature flags,feature_flag_variants,update_variant_for_feature_flag,replace,,Update a variant +software_delivery.yaml,/api/v2/test/flaky-test-management/tests,UpdateFlakyTests,update_flaky_tests,patch,UpdateFlakyTestsResponse,Test Optimization,test optimization,flaky_tests,update_flaky_tests,update,,Update flaky test states +software_delivery.yaml,/api/v2/test/flaky-test-management/tests,SearchFlakyTests,search_flaky_tests,post,FlakyTestsSearchResponse,Test Optimization,test optimization,flaky_tests,search_flaky_tests,insert,,Search flaky tests +software_delivery.yaml,/api/v2/workflows,ListWorkflows,list_workflows,get,ListWorkflowsResponse,Workflow Automation,workflow automation,workflows,list_workflows,select,$.data,List workflows diff --git a/provider-dev/config/operation_inventory.csv b/provider-dev/config/operation_inventory.csv new file mode 100644 index 0000000..6af61bc --- /dev/null +++ b/provider-dev/config/operation_inventory.csv @@ -0,0 +1,1780 @@ +service,api_version,path,verb,operationId,tags,stackql_resource_name,stackql_method_name,stackql_verb,stackql_object_key,mapped_by,skip_reason,deprecated,unstable,sunset,terraform_resource,pagination,envelope,request_media_types,response_media_types,summary +actions,v2,/api/v2/actions/connections/{connection_id},delete,DeleteActionConnection,Action Connection,connections,delete_action_connection,delete,,csv,,,,,,,none,,,Delete an existing Action Connection +actions,v2,/api/v2/actions-datastores/{datastore_id}/items,delete,DeleteDatastoreItem,Actions Datastores,datastore_items,delete_datastore_item,delete,,csv,,,,,,,data-object,application/json,application/json,Delete datastore item +actions,v2,/api/v2/actions-datastores/{datastore_id},delete,DeleteDatastore,Actions Datastores,datastores,delete_datastore,delete,,csv,,,,,,,none,,,Delete datastore +apm,v2,/api/v2/apm/config/retention-filters/{filter_id},delete,DeleteApmRetentionFilter,APM Retention Filters,retention_filters,delete_apm_retention_filter,delete,,csv,,,,,,,none,,,Delete a retention filter +apm,v2,/api/v2/scorecard/rules/{rule_id},delete,DeleteScorecardRule,Scorecards,scorecard_rules,delete_scorecard_rule,delete,,csv,,,,,,,none,,,Delete a rule +apm,v2,/api/v2/apm/config/metrics/{metric_id},delete,DeleteSpansMetric,Spans Metrics,spans_metrics,delete_spans_metric,delete,,csv,,,,,,,none,,,Delete a span-based metric +catalog,v2,/api/v2/apicatalog/api/{id},delete,DeleteOpenAPI,API Management,skip_this_resource,,,,skip,deprecated,true,true,,,,none,,,Delete an API +catalog,v2,/api/v2/catalog/entity/{entity_id},delete,DeleteCatalogEntity,Software Catalog,catalog_entities,delete_catalog_entity,delete,,csv,,,,,,,none,,,Delete a single entity +catalog,v2,/api/v2/catalog/kind/{kind_id},delete,DeleteCatalogKind,Software Catalog,catalog_kinds,delete_catalog_kind,delete,,csv,,,,,,,none,,,Delete a single kind +cloud_costs,v2,/api/v2/cost/aws_cur_config/{cloud_account_id},delete,DeleteCostAWSCURConfig,Cloud Cost Management,aws_configs,delete_cost_awscurconfig,delete,,csv,,,,,,,none,,,Delete Cloud Cost Management AWS CUR config +cloud_costs,v2,/api/v2/cost/azure_uc_config/{cloud_account_id},delete,DeleteCostAzureUCConfig,Cloud Cost Management,azure_configs,delete_cost_azure_ucconfig,delete,,csv,,,,,,,none,,,Delete Cloud Cost Management Azure config +cloud_costs,v2,/api/v2/cost/budget/{budget_id},delete,DeleteBudget,Cloud Cost Management,budgets,delete_budget,delete,,csv,,,,,,,none,,,Delete budget +cloud_costs,v2,/api/v2/cost/custom_costs/{file_id},delete,DeleteCustomCostsFile,Cloud Cost Management,costs_files,delete_custom_costs_file,delete,,csv,,,,,,,none,,,Delete Custom Costs file +cloud_costs,v2,/api/v2/cost/gcp_uc_config/{cloud_account_id},delete,DeleteCostGCPUsageCostConfig,Cloud Cost Management,gcp_configs,delete_cost_gcpusage_cost_config,delete,,csv,,,,,,,none,,,Delete Google Cloud Usage Cost config +dashboards,v2,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,delete,DeleteDashboardListItems,Dashboard Lists,dashboard_list_items,delete_dashboard_list_items,delete,,csv,,,,,,,single-array:deleted_dashboards_from_list,application/json,application/json,Delete items from a dashboard list +dashboards,v2,/api/v2/powerpacks/{powerpack_id},delete,DeletePowerpack,Powerpack,powerpacks,delete_powerpack,delete,,csv,,,,,,,none,,,Delete a powerpack +digital_experience,v2,/api/v2/rum/applications/{id},delete,DeleteRUMApplication,RUM,rum_applications,delete_rumapplication,delete,,csv,,,,,,,none,,,Delete a RUM application +digital_experience,v2,/api/v2/rum/config/metrics/{metric_id},delete,DeleteRumMetric,Rum Metrics,rum_metrics,delete_rum_metric,delete,,csv,,,,,,,none,,,Delete a RUM-based metric +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},delete,DeleteRetentionFilter,Rum Retention Filters,rum_retention_filters,delete_retention_filter,delete,,csv,,,,,,,none,,,Delete a RUM retention filter +infrastructure,v2,/api/v2/app-builder/apps/{app_id},delete,DeleteApp,App Builder,apps,delete_app,delete,,csv,,,,,,,data-object,,application/json,Delete App +infrastructure,v2,/api/v2/app-builder/apps,delete,DeleteApps,App Builder,apps,delete_apps,delete,,csv,,,,,,,data-array,application/json,application/json,Delete Multiple Apps +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id},delete,DeleteAWSAccount,AWS Integration,aws_accounts,delete_awsaccount,delete,,csv,,,,,,,none,,,Delete an AWS integration +integrations,v2,/api/v2/integrations/cloudflare/accounts/{account_id},delete,DeleteCloudflareAccount,Cloudflare Integration,cloudflare_accounts,delete_cloudflare_account,delete,,csv,,,,,,,none,,,Delete Cloudflare account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id},delete,DeleteConfluentAccount,Confluent Cloud,confluent_accounts,delete_confluent_account,delete,,csv,,,,,,,none,,,Delete Confluent account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},delete,DeleteConfluentResource,Confluent Cloud,confluent_resources,delete_confluent_resource,delete,,csv,,,,,,,none,,,Delete resource from Confluent account +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id},delete,DeleteFastlyAccount,Fastly Integration,fastly_accounts,delete_fastly_account,delete,,csv,,,,,,,none,,,Delete Fastly account +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},delete,DeleteFastlyService,Fastly Integration,fastly_services,delete_fastly_service,delete,,csv,,,,,,,none,,,Delete Fastly service +integrations,v2,/api/v2/integration/gcp/accounts/{account_id},delete,DeleteGCPSTSAccount,GCP Integration,gcp_accounts,delete_gcpstsaccount,delete,,csv,,,,,,,none,,,Delete an STS enabled GCP Account +integrations,v2,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},delete,DeleteTenantBasedHandle,Microsoft Teams Integration,ms_teams_tenant_based_handles,delete_tenant_based_handle,delete,,csv,,,,,,,none,,,Delete tenant-based handle +integrations,v2,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},delete,DeleteWorkflowsWebhookHandle,Microsoft Teams Integration,ms_teams_workflows_webhook_handles,delete_workflows_webhook_handle,delete,,csv,,,,,,,none,,,Delete Workflows webhook handle +integrations,v2,/api/v2/integrations/okta/accounts/{account_id},delete,DeleteOktaAccount,Okta Integration,okta_accounts,delete_okta_account,delete,,csv,,,,,,,none,,,Delete Okta account +integrations,v2,/api/v2/integration/opsgenie/services/{integration_service_id},delete,DeleteOpsgenieService,Opsgenie Integration,opsgenie_services,delete_opsgenie_service,delete,,csv,,,,,,,none,,,Delete a single service object +logs,v2,/api/v2/logs/config/archives/{archive_id}/readers,delete,RemoveRoleFromArchive,Logs Archives,archive_read_roles,remove_role_from_archive,delete,,csv,,,,,,,none,application/json,,Revoke role from an archive +logs,v2,/api/v2/logs/config/archives/{archive_id},delete,DeleteLogsArchive,Logs Archives,archives,delete_logs_archive,delete,,csv,,,,,,,none,,,Delete an archive +logs,v2,/api/v2/logs/config/custom-destinations/{custom_destination_id},delete,DeleteLogsCustomDestination,Logs Custom Destinations,custom_destinations,delete_logs_custom_destination,delete,,csv,,,,,,,none,,,Delete a custom destination +logs,v2,/api/v2/logs/config/metrics/{metric_id},delete,DeleteLogsMetric,Logs Metrics,metrics,delete_logs_metric,delete,,csv,,,,,,,none,,,Delete a log-based metric +metrics,v2,/api/v2/datasets/{dataset_id},delete,DeleteDataset,Datasets,datasets,delete_dataset,delete,,csv,,,true,,,,none,,,Delete a dataset +metrics,v2,/api/v2/metrics/config/bulk-tags,delete,DeleteBulkTagsMetricsConfiguration,Metrics,skip_this_resource,,,,skip,deprecated,true,,2027-01-01,,,data-object,application/json,application/json,Delete tags for multiple metrics +metrics,v2,/api/v2/metrics/{metric_name}/tags,delete,DeleteTagConfiguration,Metrics,tag_configurations,delete_tag_configuration,delete,,csv,,,,,,,none,,,Delete a tag configuration +monitoring,v2,/api/v2/monitor/policy/{policy_id},delete,DeleteMonitorConfigPolicy,Monitors,config_policies,delete_monitor_config_policy,delete,,csv,,,,,,,none,,,Delete a monitor configuration policy +monitoring,v2,/api/v2/monitor/notification_rule/{rule_id},delete,DeleteMonitorNotificationRule,Monitors,notification_rules,delete_monitor_notification_rule,delete,,csv,,,,,,,none,,,Delete a monitor notification rule +monitoring,v2,/api/v2/monitor/template/{template_id},delete,DeleteMonitorUserTemplate,Monitors,user_templates,delete_monitor_user_template,delete,,csv,,,true,,,,none,,,Delete a monitor user template +organization,v2,/api/v2/api_keys/{api_key_id},delete,DeleteAPIKey,Key Management,api_keys,delete_apikey,delete,,csv,,,,,,,none,,,Delete an API key +organization,v2,/api/v2/application_keys/{app_key_id},delete,DeleteApplicationKey,Key Management,application_keys,delete_application_key,delete,,csv,,,,,,,none,,,Delete an application key +organization,v2,/api/v2/authn_mappings/{authn_mapping_id},delete,DeleteAuthNMapping,AuthN Mappings,authn_mappings,delete_auth_nmapping,delete,,csv,,,,,,,none,,,Delete an AuthN Mapping +organization,v2,/api/v2/org_connections/{connection_id},delete,DeleteOrgConnections,Org Connections,connections,delete_org_connections,delete,,csv,,,,,,,none,,,Delete Org Connection +organization,v2,/api/v2/current_user/application_keys/{app_key_id},delete,DeleteCurrentUserApplicationKey,Key Management,current_user_application_keys,delete_current_user_application_key,delete,,csv,,,,,,,none,,,Delete an application key owned by current user +organization,v2,/api/v2/restriction_policy/{resource_id},delete,DeleteRestrictionPolicy,Restriction Policies,restriction_policies,delete_restriction_policy,delete,,csv,,,,,,,none,,,Delete a restriction policy +organization,v2,/api/v2/roles/{role_id}/permissions,delete,RemovePermissionFromRole,Roles,role_permissions,remove_permission_from_role,delete,,csv,,,,,,,data-array,application/json,application/json,Revoke permission +organization,v2,/api/v2/roles/{role_id}/users,delete,RemoveUserFromRole,Roles,role_users,remove_user_from_role,delete,,correction,,,,,,,data-array,application/json,application/json,Remove a user from a role +organization,v2,/api/v2/roles/{role_id},delete,DeleteRole,Roles,roles,delete_role,delete,,csv,,,,,,,none,,,Delete role +organization,v2,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},delete,DeleteServiceAccountApplicationKey,Service Accounts,service_account_keys,delete_service_account_application_key,delete,,csv,,,,,,,none,,,Delete an application key for this service account +organization,v2,/api/v2/team/{team_id}/links/{link_id},delete,DeleteTeamLink,Teams,team_links,delete_team_link,delete,,csv,,,,,,,none,,,Remove a team link +organization,v2,/api/v2/team/{super_team_id}/member_teams/{member_team_id},delete,RemoveMemberTeam,Teams,skip_this_resource,,,,skip,deprecated,true,true,2026-06-01,,,none,,,Remove a member team +organization,v2,/api/v2/team/{team_id}/memberships/{user_id},delete,DeleteTeamMembership,Teams,team_memberships,delete_team_membership,delete,,csv,,,,,,,none,,,Remove a user from a team +organization,v2,/api/v2/team/{team_id},delete,DeleteTeam,Teams,teams,delete_team,delete,,csv,,,,,,,none,,,Remove a team +remote_config,v2,/api/v2/remote_config/products/cws/policy/{policy_id},delete,DeleteCSMThreatsAgentPolicy,CSM Threats,csm_threats_agent_policies,delete_csmthreats_agent_policy,delete,,csv,,,,,,,none,,,Delete a Workload Protection policy +remote_config,v2,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},delete,DeleteCSMThreatsAgentRule,CSM Threats,csm_threats_agent_rules,delete_csmthreats_agent_rule,delete,,csv,,,,,,,none,,,Delete a Workload Protection agent rule +remote_config,v2,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},delete,DeleteApplicationSecurityWafCustomRule,Application Security,waf_custom_rules,delete_application_security_waf_custom_rule,delete,,csv,,,,,appsec_waf_custom_rule,,none,,,Delete a WAF Custom Rule +remote_config,v2,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},delete,DeleteApplicationSecurityWafExclusionFilter,Application Security,waf_exclusion_filters,delete_application_security_waf_exclusion_filter,delete,,csv,,,,,appsec_waf_exclusion_filter,,none,,,Delete a WAF exclusion filter +security,v2,/api/v2/agentless_scanning/accounts/aws/{account_id},delete,DeleteAwsScanOptions,Agentless Scanning,aws_scan_options,delete_aws_scan_options,delete,,csv,,,,,,,none,,,Delete AWS scan options +security,v2,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},delete,DeleteCloudWorkloadSecurityAgentRule,CSM Threats,cloud_workload_security_agent_rules,delete_cloud_workload_security_agent_rule,delete,,csv,,,,,,,none,,,Delete a Workload Protection agent rule (US1-FED) +security,v2,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},delete,DeleteCustomFramework,Security Monitoring,custom_frameworks,delete_custom_framework,delete,,csv,,,,,,,data-object,,application/json,Delete a custom framework +security,v2,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},delete,DeleteSecurityFilter,Security Monitoring,filters,delete_security_filter,delete,,csv,,,,,,,none,,,Delete a security filter +security,v2,/api/v2/siem-historical-detections/jobs/{job_id},delete,DeleteHistoricalJob,Security Monitoring,historical_jobs,delete_historical_job,delete,,csv,,,true,,,,none,,,Delete an existing job +security,v2,/api/v2/security_monitoring/rules/{rule_id},delete,DeleteSecurityMonitoringRule,Security Monitoring,monitoring_rules,delete_security_monitoring_rule,delete,,csv,,,,,,,none,,,Delete an existing rule +security,v2,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},delete,DeleteSecurityMonitoringSuppression,Security Monitoring,monitoring_suppressions,delete_security_monitoring_suppression,delete,,csv,,,,,,,none,,,Delete a suppression rule +security,v2,/api/v2/sensitive-data-scanner/config/groups/{group_id},delete,DeleteScanningGroup,Sensitive Data Scanner,scanning_groups,delete_scanning_group,delete,,csv,,,,,,,object,application/json,application/json,Delete Scanning Group +security,v2,/api/v2/sensitive-data-scanner/config/rules/{rule_id},delete,DeleteScanningRule,Sensitive Data Scanner,scanning_rules,delete_scanning_rule,delete,,csv,,,,,,,object,application/json,application/json,Delete Scanning Rule +security,v2,/api/v2/security/signals/notification_rules/{id},delete,DeleteSignalNotificationRule,Security Monitoring,signal_notification_rules,delete_signal_notification_rule,delete,,csv,,,,,,,none,,,Delete a signal-based notification rule +security,v2,/api/v2/security/vulnerabilities/notification_rules/{id},delete,DeleteVulnerabilityNotificationRule,Security Monitoring,vulnerability_notification_rules,delete_vulnerability_notification_rule,delete,,csv,,,,,,,none,,,Delete a vulnerability-based notification rule +service_management,v2,/api/v2/downtime/{downtime_id},delete,CancelDowntime,Downtimes,downtimes,cancel_downtime,delete,,csv,,,,,,,none,,,Cancel a downtime +service_management,v2,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},delete,DeleteIncidentIntegration,Incidents,incident_integrations,delete_incident_integration,delete,,csv,,,true,,,,none,,,Delete an incident integration metadata +service_management,v2,/api/v2/incidents/config/notification-rules/{id},delete,DeleteIncidentNotificationRule,Incidents,incident_notification_rules,delete_incident_notification_rule,delete,,csv,,,true,,,,none,,,Delete an incident notification rule +service_management,v2,/api/v2/incidents/config/notification-templates/{id},delete,DeleteIncidentNotificationTemplate,Incidents,incident_notification_templates,delete_incident_notification_template,delete,,csv,,,true,,,,none,,,Delete a notification template +service_management,v2,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},delete,DeleteIncidentTodo,Incidents,incident_todos,delete_incident_todo,delete,,csv,,,true,,,,none,,,Delete an incident todo +service_management,v2,/api/v2/incidents/config/types/{incident_type_id},delete,DeleteIncidentType,Incidents,incident_types,delete_incident_type,delete,,csv,,,true,,,,none,,,Delete an incident type +service_management,v2,/api/v2/incidents/{incident_id},delete,DeleteIncident,Incidents,incidents,delete_incident,delete,,csv,,,true,,,,none,,,Delete an existing incident +service_management,v2,/api/v2/on-call/escalation-policies/{policy_id},delete,DeleteOnCallEscalationPolicy,On-Call,on_call_escalation_policies,delete_on_call_escalation_policy,delete,,csv,,,,,,,none,,,Delete On-Call escalation policy +service_management,v2,/api/v2/on-call/schedules/{schedule_id},delete,DeleteOnCallSchedule,On-Call,on_call_schedule,delete_on_call_schedule,delete,,csv,,,,,,,none,,,Delete On-Call schedule +service_management,v2,/api/v2/cases/projects/{project_id},delete,DeleteProject,Case Management,projects,delete_project,delete,,csv,,,,,,,none,,,Remove a project +service_management,v2,/api/v2/services/definitions/{service_name},delete,DeleteServiceDefinition,Service Definition,service_definitions,delete_service_definition,delete,,csv,,,,,,,none,,,Delete a single service definition +software_delivery,v2,/api/v2/workflows/{workflow_id},delete,DeleteWorkflow,Workflow Automation,workflows,delete_workflow,delete,,csv,,,,,,,none,,,Delete an existing Workflow +actions,v2,/api/v2/actions/app_key_registrations/{app_key_id},put,RegisterAppKey,Action Connection,app_key_registrations,register_app_key,exec,,csv,,,,,,,data-object,,application/json,Register a new App Key +actions,v2,/api/v2/actions/app_key_registrations/{app_key_id},delete,UnregisterAppKey,Action Connection,app_key_registrations,unregister_app_key,exec,,csv,,,,,,,none,,,Unregister an App Key +apm,v2,/api/v2/apm/config/retention-filters-execution-order,put,ReorderApmRetentionFilters,APM Retention Filters,retention_filters,reorder_apm_retention_filters,exec,,csv,,,,,,,none,application/json,,Re-order retention filters +catalog,v2,/api/v2/apicatalog/api/{id}/openapi,get,GetOpenAPI,API Management,skip_this_resource,,,,skip,deprecated,true,true,,,,non-json,,multipart/form-data,Get an API +cloud_costs,v2,/api/v2/cost/custom_costs,put,UploadCustomCostsFile,Cloud Cost Management,costs_files,upload_custom_costs_file,exec,,csv,,,,,,,data-object,application/json,application/json,Upload Custom Costs file +digital_experience,v2,/api/v2/rum/analytics/aggregate,post,AggregateRUMEvents,RUM,rum_events,aggregate_rumevents,exec,,csv,,,,,,,data-object,application/json,application/json,Aggregate RUM events +digital_experience,v2,/api/v2/rum/events/search,post,SearchRUMEvents,RUM,rum_events,search_rumevents,exec,,csv,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search RUM events +digital_experience,v2,/api/v2/rum/applications/{app_id}/relationships/retention_filters,patch,OrderRetentionFilters,Rum Retention Filters,rum_retention_filters,order_retention_filters,exec,,csv,,,,,,,data-array,application/json,application/json,Order RUM retention filters +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/deployment,post,PublishApp,App Builder,apps,publish_app,exec,,csv,,,,,,,data-object,,application/json,Publish App +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/deployment,delete,UnpublishApp,App Builder,apps,unpublish_app,exec,,csv,,,,,,,data-object,,application/json,Unpublish App +integrations,v2,/api/v2/integration/aws/generate_new_external_id,post,CreateNewAWSExternalID,AWS Integration,aws_accounts,create_new_awsexternal_id,exec,,csv,,,,,,,data-object,,application/json,Generate a new external ID +integrations,v2,/api/v2/integration/gcp/sts_delegate,post,MakeGCPSTSDelegate,GCP Integration,gcp_sts_delegate,make_gcpstsdelegate,exec,,csv,,,,,,,data-object,application/json,application/json,Create a Datadog GCP principal +logs,v2,/api/v2/logs/analytics/aggregate,post,AggregateLogs,Logs,logs,aggregate_logs,exec,,csv,,,,,,,data-object,application/json,application/json,Aggregate events +metrics,v2,/api/v2/query/scalar,post,QueryScalarData,Metrics,metrics,query_scalar_data,exec,,csv,,,,,,,data-object,application/json,application/json,Query scalar data across multiple products +metrics,v2,/api/v2/query/timeseries,post,QueryTimeseriesData,Metrics,metrics,query_timeseries_data,exec,,csv,,,,,,,data-object,application/json,application/json,Query timeseries data across multiple products +metrics,v2,/api/v2/spans/analytics/aggregate,post,AggregateSpans,Spans,spans,aggregate_spans,exec,,csv,,,,,,,data-array,application/json,application/json,Aggregate spans +monitoring,v2,/api/v2/monitor/template/{template_id}/validate,post,ValidateExistingMonitorUserTemplate,Monitors,user_templates,validate_existing_monitor_user_template,exec,,csv,,,true,,,,none,application/json,,Validate an existing monitor user template +monitoring,v2,/api/v2/monitor/template/validate,post,ValidateMonitorUserTemplate,Monitors,user_templates,validate_monitor_user_template,exec,,csv,,,true,,,,none,application/json,,Validate a monitor user template +organization,v2,/api/v2/audit/events/search,post,SearchAuditLogs,Audit,audit_logs,search_audit_logs,exec,,csv,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search Audit Logs events +organization,v2,/api/v2/deletion/requests/{id}/cancel,put,CancelDataDeletionRequest,Data Deletion,data_deletion_requests,cancel_data_deletion_request,exec,,csv,,,,,,,data-object,,application/json,Cancels a data deletion request +organization,v2,/api/v2/saml_configurations/idp_metadata,post,UploadIdPMetadata,Organizations,skip_this_resource,,,,skip,multipart_request,,,,,,none,multipart/form-data,,Upload IdP metadata +organization,v2,/api/v2/user_invitations,post,SendInvitations,Users,invitations,send_invitations,exec,,csv,,,,,,,data-array,application/json,application/json,Send invitation emails +organization,v2,/api/v2/roles/{role_id}/clone,post,CloneRole,Roles,roles,clone_role,exec,,csv,,,,,,,data-object,application/json,application/json,Create a new role by cloning an existing role +organization,v2,/api/v2/team/sync,post,SyncTeams,Teams,teams,sync_teams,exec,,csv,,,,,,,none,application/json,,Link Teams with GitHub Teams +organization,v2,/api/v2/users/{user_id},delete,DisableUser,Users,users,disable_user,exec,,csv,,,,,,,none,,,Disable a user +remote_config,v2,/api/v2/remote_config/products/cws/policy/download,get,DownloadCSMThreatsPolicy,CSM Threats,skip_this_resource,,,,skip,non_json_response,,,,,,non-json,,application/zip,Download the Workload Protection policy +security,v2,/api/v2/security/cloud_workload/policy/download,get,DownloadCloudWorkloadPolicyFile,CSM Threats,skip_this_resource,,,,skip,non_json_response,,,,,,non-json,,application/yaml,Download the Workload Protection policy (US1-FED) +security,v2,/api/v2/siem-historical-detections/jobs/signal_convert,post,ConvertJobResultToSignal,Security Monitoring,monitoring_hist_signals,convert_job_result_to_signal,exec,,csv,,,true,,,,none,application/json,,Convert a job result to a signal +security,v2,/api/v2/siem-historical-detections/histsignals/search,post,SearchSecurityMonitoringHistsignals,Security Monitoring,monitoring_hist_signals,search_security_monitoring_histsignals,exec,,csv,,,true,,,,data-array,application/json,application/json,Search hist signals +security,v2,/api/v2/security_monitoring/rules/{rule_id}/convert,get,ConvertExistingSecurityMonitoringRule,Security Monitoring,monitoring_rules,convert_existing_security_monitoring_rule,exec,,csv,,,,,,,object,,application/json,Convert an existing rule from JSON to Terraform +security,v2,/api/v2/security_monitoring/rules/convert,post,ConvertSecurityMonitoringRuleFromJSONToTerraform,Security Monitoring,monitoring_rules,convert_security_monitoring_rule_from_jsonto_terraform,exec,,csv,,,,,,,object,application/json,application/json,Convert a rule from JSON to Terraform +security,v2,/api/v2/security_monitoring/rules/{rule_id}/test,post,TestExistingSecurityMonitoringRule,Security Monitoring,monitoring_rules,test_existing_security_monitoring_rule,exec,,csv,,,,,,,object,application/json,application/json,Test an existing rule +security,v2,/api/v2/security_monitoring/rules/test,post,TestSecurityMonitoringRule,Security Monitoring,monitoring_rules,test_security_monitoring_rule,exec,,csv,,,,,,,object,application/json,application/json,Test a rule +security,v2,/api/v2/security_monitoring/rules/validation,post,ValidateSecurityMonitoringRule,Security Monitoring,monitoring_rules,validate_security_monitoring_rule,exec,,csv,,,,,,,none,application/json,,Validate a detection rule +security,v2,/api/v2/security_monitoring/signals/{signal_id}/assignee,patch,EditSecurityMonitoringSignalAssignee,Security Monitoring,monitoring_signals,edit_security_monitoring_signal_assignee,exec,,csv,,,,,,,data-object,application/json,application/json,Modify the triage assignee of a security signal +security,v2,/api/v2/security_monitoring/signals/{signal_id}/incidents,patch,EditSecurityMonitoringSignalIncidents,Security Monitoring,monitoring_signals,edit_security_monitoring_signal_incidents,exec,,csv,,,,,,,data-object,application/json,application/json,Change the related incidents of a security signal +security,v2,/api/v2/security_monitoring/signals/{signal_id}/state,patch,EditSecurityMonitoringSignalState,Security Monitoring,monitoring_signals,edit_security_monitoring_signal_state,exec,,csv,,,,,,,data-object,application/json,application/json,Change the triage state of a security signal +security,v2,/api/v2/security_monitoring/signals/search,post,SearchSecurityMonitoringSignals,Security Monitoring,monitoring_signals,search_security_monitoring_signals,exec,,csv,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Get a list of security signals +security,v2,/api/v2/security_monitoring/configuration/suppressions/validation,post,ValidateSecurityMonitoringSuppression,Security Monitoring,monitoring_suppressions,validate_security_monitoring_suppression,exec,,csv,,,,,,,none,application/json,,Validate a suppression rule +security,v2,/api/v2/sensitive-data-scanner/config,patch,ReorderScanningGroups,Sensitive Data Scanner,scanning_groups,reorder_scanning_groups,exec,,csv,,,,,,,object,application/json,application/json,Reorder Groups +service_management,v2,/api/v2/cases/{case_id}/archive,post,ArchiveCase,Case Management,cases,archive_case,exec,,csv,,,,,,,data-object,application/json,application/json,Archive case +service_management,v2,/api/v2/cases/{case_id}/assign,post,AssignCase,Case Management,cases,assign_case,exec,,csv,,,,,,,data-object,application/json,application/json,Assign case +service_management,v2,/api/v2/cases,get,SearchCases,Case Management,cases,search_cases,exec,,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""pageStart"":1,""resultsPath"":""data""}",data-array,,application/json,Search cases +service_management,v2,/api/v2/cases/{case_id}/unarchive,post,UnarchiveCase,Case Management,cases,unarchive_case,exec,,csv,,,,,,,data-object,application/json,application/json,Unarchive case +service_management,v2,/api/v2/cases/{case_id}/unassign,post,UnassignCase,Case Management,cases,unassign_case,exec,,csv,,,,,,,data-object,application/json,application/json,Unassign case +service_management,v2,/api/v2/cases/{case_id}/attributes,post,UpdateAttributes,Case Management,cases,update_attributes,exec,,csv,,,,,,,data-object,application/json,application/json,Update case attributes +service_management,v2,/api/v2/cases/{case_id}/priority,post,UpdatePriority,Case Management,cases,update_priority,exec,,csv,,,,,,,data-object,application/json,application/json,Update case priority +service_management,v2,/api/v2/cases/{case_id}/status,post,UpdateStatus,Case Management,cases,update_status,exec,,csv,,,,,,,data-object,application/json,application/json,Update case status +service_management,v2,/api/v2/error-tracking/issues/{issue_id}/assignee,put,UpdateIssueAssignee,Error Tracking,issues,update_issue_assignee,exec,,csv,,,,,,,data-object,application/json,application/json,Update the assignee of an issue +service_management,v2,/api/v2/error-tracking/issues/{issue_id}/state,put,UpdateIssueState,Error Tracking,issues,update_issue_state,exec,,csv,,,,,,,data-object,application/json,application/json,Update the state of an issue +service_management,v2,/api/v2/on-call/pages/{page_id}/acknowledge,post,AcknowledgeOnCallPage,On-Call Paging,on_call_page,acknowledge_on_call_page,exec,,csv,,,,,,,none,,,Acknowledge On-Call Page +service_management,v2,/api/v2/on-call/pages/{page_id}/escalate,post,EscalateOnCallPage,On-Call Paging,on_call_page,escalate_on_call_page,exec,,csv,,,,,,,none,,,Escalate On-Call Page +service_management,v2,/api/v2/on-call/pages/{page_id}/resolve,post,ResolveOnCallPage,On-Call Paging,on_call_page,resolve_on_call_page,exec,,csv,,,,,,,none,,,Resolve On-Call Page +service_management,v2,/api/v2/slo/report/{report_id}/download,get,GetSLOReport,Service Level Objectives,skip_this_resource,,,,skip,deprecated,true,true,2027-01-25,,,non-json,,text/csv,Get SLO report +software_delivery,v2,/api/v2/ci/pipelines/analytics/aggregate,post,AggregateCIAppPipelineEvents,CI Visibility Pipelines,ci_app_pipeline_events,aggregate_ciapp_pipeline_events,exec,,csv,,,,,,,data-object,application/json,application/json,Aggregate pipelines events +software_delivery,v2,/api/v2/ci/pipelines/events/search,post,SearchCIAppPipelineEvents,CI Visibility Pipelines,ci_app_pipeline_events,search_ciapp_pipeline_events,exec,,csv,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search pipelines events +software_delivery,v2,/api/v2/ci/tests/analytics/aggregate,post,AggregateCIAppTestEvents,CI Visibility Tests,ci_app_test_events,aggregate_ciapp_test_events,exec,,csv,,,,,,,data-object,application/json,application/json,Aggregate tests events +software_delivery,v2,/api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel,put,CancelWorkflowInstance,Workflow Automation,workflow_instances,cancel_workflow_instance,exec,,csv,,,,,,,data-object,,application/json,Cancel a workflow instance +actions,v2,/api/v2/actions/connections,post,CreateActionConnection,Action Connection,connections,create_action_connection,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new Action Connection +actions,v2,/api/v2/actions-datastores/{datastore_id}/items/bulk,post,BulkWriteDatastoreItems,Actions Datastores,datastore_items,bulk_write_datastore_items,insert,,csv,,,,,,,data-array,application/json,application/json,Bulk write datastore items +actions,v2,/api/v2/actions-datastores,post,CreateDatastore,Actions Datastores,datastores,create_datastore,insert,,csv,,,,,,,data-object,application/json,application/json,Create datastore +apm,v2,/api/v2/apm/config/retention-filters,post,CreateApmRetentionFilter,APM Retention Filters,retention_filters,create_apm_retention_filter,insert,,csv,,,,,,,data-object,application/json,application/json,Create a retention filter +apm,v2,/api/v2/scorecard/outcomes/batch,post,CreateScorecardOutcomesBatch,Scorecards,skip_this_resource,,,,skip,deprecated,true,true,2026-04-01,,,data-array,application/json,application/json,Create outcomes batch +apm,v2,/api/v2/scorecard/rules,post,CreateScorecardRule,Scorecards,scorecard_rules,create_scorecard_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new rule +apm,v2,/api/v2/apm/config/metrics,post,CreateSpansMetric,Spans Metrics,spans_metrics,create_spans_metric,insert,,csv,,,,,,,data-object,application/json,application/json,Create a span-based metric +catalog,v2,/api/v2/apicatalog/openapi,post,CreateOpenAPI,API Management,skip_this_resource,,,,skip,deprecated,true,true,,,,data-object,multipart/form-data,application/json,Create a new API +catalog,v2,/api/v2/catalog/entity,post,UpsertCatalogEntity,Software Catalog,catalog_entities,upsert_catalog_entity,insert,,csv,,,,,,,data-array,application/json,application/json,Create or update entities +catalog,v2,/api/v2/catalog/kind,post,UpsertCatalogKind,Software Catalog,catalog_kinds,upsert_catalog_kind,insert,,csv,,,,,,,data-array,application/json,application/json,Create or update kinds +cloud_costs,v2,/api/v2/cost/aws_cur_config,post,CreateCostAWSCURConfig,Cloud Cost Management,aws_configs,create_cost_awscurconfig,insert,,csv,,,,,,,data-object,application/json,application/json,Create Cloud Cost Management AWS CUR config +cloud_costs,v2,/api/v2/cost/azure_uc_config,post,CreateCostAzureUCConfigs,Cloud Cost Management,azure_configs,create_cost_azure_ucconfigs,insert,,csv,,,,,,,data-object,application/json,application/json,Create Cloud Cost Management Azure configs +cloud_costs,v2,/api/v2/cost/gcp_uc_config,post,CreateCostGCPUsageCostConfig,Cloud Cost Management,gcp_configs,create_cost_gcpusage_cost_config,insert,,csv,,,,,,,data-object,application/json,application/json,Create Google Cloud Usage Cost config +dashboards,v2,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,post,CreateDashboardListItems,Dashboard Lists,dashboard_list_items,create_dashboard_list_items,insert,,csv,,,,,,,single-array:added_dashboards_to_list,application/json,application/json,Add Items to a Dashboard List +dashboards,v2,/api/v2/powerpacks,post,CreatePowerpack,Powerpack,powerpacks,create_powerpack,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new powerpack +digital_experience,v2,/api/v2/rum/applications,post,CreateRUMApplication,RUM,rum_applications,create_rumapplication,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new RUM application +digital_experience,v2,/api/v2/rum/config/metrics,post,CreateRumMetric,Rum Metrics,rum_metrics,create_rum_metric,insert,,csv,,,,,,,data-object,application/json,application/json,Create a RUM-based metric +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters,post,CreateRetentionFilter,Rum Retention Filters,rum_retention_filters,create_retention_filter,insert,,csv,,,,,,,data-object,application/json,application/json,Create a RUM retention filter +infrastructure,v2,/api/v2/app-builder/apps,post,CreateApp,App Builder,apps,create_app,insert,,csv,,,,,,,data-object,application/json,application/json,Create App +integrations,v2,/api/v2/integration/aws/accounts,post,CreateAWSAccount,AWS Integration,aws_accounts,create_awsaccount,insert,,csv,,,,,,,data-object,application/json,application/json,Create an AWS integration +integrations,v2,/api/v2/integrations/cloudflare/accounts,post,CreateCloudflareAccount,Cloudflare Integration,cloudflare_accounts,create_cloudflare_account,insert,,csv,,,,,,,data-object,application/json,application/json,Add Cloudflare account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts,post,CreateConfluentAccount,Confluent Cloud,confluent_accounts,create_confluent_account,insert,,csv,,,,,,,data-object,application/json,application/json,Add Confluent account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources,post,CreateConfluentResource,Confluent Cloud,confluent_resources,create_confluent_resource,insert,,csv,,,,,,,data-object,application/json,application/json,Add resource to Confluent account +integrations,v2,/api/v2/integrations/fastly/accounts,post,CreateFastlyAccount,Fastly Integration,fastly_accounts,create_fastly_account,insert,,csv,,,,,,,data-object,application/json,application/json,Add Fastly account +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id}/services,post,CreateFastlyService,Fastly Integration,fastly_services,create_fastly_service,insert,,csv,,,,,,,data-object,application/json,application/json,Add Fastly service +integrations,v2,/api/v2/integration/gcp/accounts,post,CreateGCPSTSAccount,GCP Integration,gcp_accounts,create_gcpstsaccount,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new entry for your service account +integrations,v2,/api/v2/integration/ms-teams/configuration/tenant-based-handles,post,CreateTenantBasedHandle,Microsoft Teams Integration,ms_teams_tenant_based_handles,create_tenant_based_handle,insert,,csv,,,,,,,data-object,application/json,application/json,Create tenant-based handle +integrations,v2,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles,post,CreateWorkflowsWebhookHandle,Microsoft Teams Integration,ms_teams_workflows_webhook_handles,create_workflows_webhook_handle,insert,,csv,,,,,,,data-object,application/json,application/json,Create Workflows webhook handle +integrations,v2,/api/v2/integrations/okta/accounts,post,CreateOktaAccount,Okta Integration,okta_accounts,create_okta_account,insert,,csv,,,,,,,data-object,application/json,application/json,Add Okta account +integrations,v2,/api/v2/integration/opsgenie/services,post,CreateOpsgenieService,Opsgenie Integration,opsgenie_services,create_opsgenie_service,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new service object +logs,v2,/api/v2/logs/config/archives/{archive_id}/readers,post,AddReadRoleToArchive,Logs Archives,archive_read_roles,add_read_role_to_archive,insert,,csv,,,,,,,none,application/json,,Grant role to an archive +logs,v2,/api/v2/logs/config/archives,post,CreateLogsArchive,Logs Archives,archives,create_logs_archive,insert,,csv,,,,,,,data-object,application/json,application/json,Create an archive +logs,v2,/api/v2/logs/config/custom-destinations,post,CreateLogsCustomDestination,Logs Custom Destinations,custom_destinations,create_logs_custom_destination,insert,,csv,,,,,,,data-object,application/json,application/json,Create a custom destination +logs,v2,/api/v2/logs/events/search,post,ListLogs,Logs,logs,list_logs,exec,,correction,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search logs (POST) +logs,v2,/api/v2/logs,post,SubmitLog,Logs,logs,submit_log,exec,,correction,,,,,,,object,application/json; application/logplex-1; text/plain,application/json,Send logs +logs,v2,/api/v2/logs/config/metrics,post,CreateLogsMetric,Logs Metrics,metrics,create_logs_metric,insert,,csv,,,,,,,data-object,application/json,application/json,Create a log-based metric +metrics,v2,/api/v2/datasets,post,CreateDataset,Datasets,datasets,create_dataset,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a dataset +metrics,v2,/api/v2/series,post,SubmitMetrics,Metrics,metrics,submit_metrics,insert,,csv,,,,,,,object,application/json,application/json,Submit metrics +metrics,v2,/api/v2/spans/events/search,post,ListSpans,Spans,spans,list_spans,insert,,csv,,,,,,"{""cursorParam"":""body.data.attributes.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.data.attributes.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search spans +metrics,v2,/api/v2/metrics/config/bulk-tags,post,CreateBulkTagsMetricsConfiguration,Metrics,skip_this_resource,,,,skip,deprecated,true,,2027-01-01,,,data-object,application/json,application/json,Configure tags for multiple metrics +metrics,v2,/api/v2/metrics/{metric_name}/tags,post,CreateTagConfiguration,Metrics,tag_configurations,create_tag_configuration,insert,,csv,,,,,,,data-object,application/json,application/json,Create a tag configuration +monitoring,v2,/api/v2/monitor/policy,post,CreateMonitorConfigPolicy,Monitors,config_policies,create_monitor_config_policy,insert,,csv,,,,,,,data-object,application/json,application/json,Create a monitor configuration policy +monitoring,v2,/api/v2/monitor/notification_rule,post,CreateMonitorNotificationRule,Monitors,notification_rules,create_monitor_notification_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a monitor notification rule +monitoring,v2,/api/v2/synthetics/settings/on_demand_concurrency_cap,post,SetOnDemandConcurrencyCap,Synthetics,on_demand_concurrency_cap,set_on_demand_concurrency_cap,insert,,csv,,,,,,,data-object,application/json,application/json,Save new value for on-demand concurrency cap +monitoring,v2,/api/v2/monitor/template,post,CreateMonitorUserTemplate,Monitors,user_templates,create_monitor_user_template,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a monitor user template +organization,v2,/api/v2/api_keys,post,CreateAPIKey,Key Management,api_keys,create_apikey,insert,,csv,,,,,,,data-object,application/json,application/json,Create an API key +organization,v2,/api/v2/authn_mappings,post,CreateAuthNMapping,AuthN Mappings,authn_mappings,create_auth_nmapping,insert,,csv,,,,,,,data-object,application/json,application/json,Create an AuthN Mapping +organization,v2,/api/v2/org_connections,post,CreateOrgConnections,Org Connections,connections,create_org_connections,insert,,csv,,,,,,,data-object,application/json,application/json,Create Org Connection +organization,v2,/api/v2/current_user/application_keys,post,CreateCurrentUserApplicationKey,Key Management,current_user_application_keys,create_current_user_application_key,insert,,csv,,,,,,,data-object,application/json,application/json,Create an application key for current user +organization,v2,/api/v2/deletion/data/{product},post,CreateDataDeletionRequest,Data Deletion,data_deletion_requests,create_data_deletion_request,insert,,csv,,,,,,,data-object,application/json,application/json,Creates a data deletion request +organization,v2,/api/v2/roles/{role_id}/permissions,post,AddPermissionToRole,Roles,role_permissions,add_permission_to_role,insert,,csv,,,,,,,data-array,application/json,application/json,Grant permission to a role +organization,v2,/api/v2/roles/{role_id}/users,post,AddUserToRole,Roles,role_users,add_user_to_role,insert,,csv,,,,,,,data-array,application/json,application/json,Add a user to a role +organization,v2,/api/v2/roles,post,CreateRole,Roles,roles,create_role,insert,,csv,,,,,,,data-object,application/json,application/json,Create role +organization,v2,/api/v2/service_accounts/{service_account_id}/application_keys,post,CreateServiceAccountApplicationKey,Service Accounts,service_account_keys,create_service_account_application_key,insert,,csv,,,,,,,data-object,application/json,application/json,Create an application key for this service account +organization,v2,/api/v2/service_accounts,post,CreateServiceAccount,Service Accounts,service_accounts,create_service_account,insert,,csv,,,,,,,data-object,application/json,application/json,Create a service account +organization,v2,/api/v2/team/{team_id}/links,post,CreateTeamLink,Teams,team_links,create_team_link,insert,,csv,,,,,,,data-object,application/json,application/json,Create a team link +organization,v2,/api/v2/team/{super_team_id}/member_teams,post,AddMemberTeam,Teams,skip_this_resource,,,,skip,deprecated,true,true,2026-06-01,,,none,application/json,,Add a member team +organization,v2,/api/v2/team/{team_id}/memberships,post,CreateTeamMembership,Teams,team_memberships,create_team_membership,insert,,csv,,,,,,,data-object,application/json,application/json,Add a user to a team +organization,v2,/api/v2/team,post,CreateTeam,Teams,teams,create_team,insert,,csv,,,,,,,data-object,application/json,application/json,Create a team +organization,v2,/api/v2/users,post,CreateUser,Users,users,create_user,insert,,csv,,,,,,,data-object,application/json,application/json,Create a user +remote_config,v2,/api/v2/remote_config/products/cws/policy,post,CreateCSMThreatsAgentPolicy,CSM Threats,csm_threats_agent_policies,create_csmthreats_agent_policy,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Workload Protection policy +remote_config,v2,/api/v2/remote_config/products/cws/agent_rules,post,CreateCSMThreatsAgentRule,CSM Threats,csm_threats_agent_rules,create_csmthreats_agent_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Workload Protection agent rule +remote_config,v2,/api/v2/remote_config/products/asm/waf/custom_rules,post,CreateApplicationSecurityWafCustomRule,Application Security,waf_custom_rules,create_application_security_waf_custom_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a WAF custom rule +remote_config,v2,/api/v2/remote_config/products/asm/waf/exclusion_filters,post,CreateApplicationSecurityWafExclusionFilter,Application Security,waf_exclusion_filters,create_application_security_waf_exclusion_filter,insert,,csv,,,,,appsec_waf_exclusion_filter,,data-object,application/json,application/json,Create a WAF exclusion filter +security,v2,/api/v2/agentless_scanning/ondemand/aws,post,CreateAwsOnDemandTask,Agentless Scanning,aws_on_demand_tasks,create_aws_on_demand_task,insert,,csv,,,,,,,data-object,application/json,application/json,Create AWS on demand task +security,v2,/api/v2/agentless_scanning/accounts/aws,post,CreateAwsScanOptions,Agentless Scanning,aws_scan_options,create_aws_scan_options,insert,,csv,,,,,,,data-object,application/json,application/json,Create AWS scan options +security,v2,/api/v2/security_monitoring/cloud_workload_security/agent_rules,post,CreateCloudWorkloadSecurityAgentRule,CSM Threats,cloud_workload_security_agent_rules,create_cloud_workload_security_agent_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Workload Protection agent rule (US1-FED) +security,v2,/api/v2/cloud_security_management/custom_frameworks,post,CreateCustomFramework,Security Monitoring,custom_frameworks,create_custom_framework,insert,,csv,,,,,,,data-object,application/json,application/json,Create a custom framework +security,v2,/api/v2/security_monitoring/configuration/security_filters,post,CreateSecurityFilter,Security Monitoring,filters,create_security_filter,insert,,csv,,,,,,,data-object,application/json,application/json,Create a security filter +security,v2,/api/v2/siem-historical-detections/jobs,post,RunHistoricalJob,Security Monitoring,historical_jobs,run_historical_job,insert,,csv,,,true,,,,data-object,application/json,application/json,Run a historical job +security,v2,/api/v2/security_monitoring/rules,post,CreateSecurityMonitoringRule,Security Monitoring,monitoring_rules,create_security_monitoring_rule,insert,,csv,,,,,,,multi-array,application/json,application/json,Create a detection rule +security,v2,/api/v2/security_monitoring/configuration/suppressions,post,CreateSecurityMonitoringSuppression,Security Monitoring,monitoring_suppressions,create_security_monitoring_suppression,insert,,csv,,,,,,,data-object,application/json,application/json,Create a suppression rule +security,v2,/api/v2/sensitive-data-scanner/config/groups,post,CreateScanningGroup,Sensitive Data Scanner,scanning_groups,create_scanning_group,insert,,csv,,,,,,,data-object,application/json,application/json,Create Scanning Group +security,v2,/api/v2/sensitive-data-scanner/config/rules,post,CreateScanningRule,Sensitive Data Scanner,scanning_rules,create_scanning_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create Scanning Rule +security,v2,/api/v2/security/signals/notification_rules,post,CreateSignalNotificationRule,Security Monitoring,signal_notification_rules,create_signal_notification_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new signal-based notification rule +security,v2,/api/v2/security_monitoring/configuration/suppressions/rules,post,GetSuppressionsAffectingFutureRule,Security Monitoring,suppressions_affecting_future_rule,get_suppressions_affecting_future_rule,insert,,csv,,,,,,,data-array,application/json,application/json,Get suppressions affecting future rule +security,v2,/api/v2/security/vulnerabilities/notification_rules,post,CreateVulnerabilityNotificationRule,Security Monitoring,vulnerability_notification_rules,create_vulnerability_notification_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new vulnerability-based notification rule +service_management,v2,/api/v2/cases,post,CreateCase,Case Management,cases,create_case,insert,,csv,,,,,,,data-object,application/json,application/json,Create a case +service_management,v2,/api/v2/downtime,post,CreateDowntime,Downtimes,downtimes,create_downtime,insert,,csv,,,,,,,data-object,application/json,application/json,Schedule a downtime +service_management,v2,/api/v2/events,post,CreateEvent,Events,events,create_event,insert,,csv,,,,,,,data-object,application/json,application/json,Post an event +service_management,v2,/api/v2/events/search,post,SearchEvents,Events,events,search_events,exec,,correction,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search events +service_management,v2,/api/v2/incidents/{incident_id}/relationships/integrations,post,CreateIncidentIntegration,Incidents,incident_integrations,create_incident_integration,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident integration metadata +service_management,v2,/api/v2/incidents/config/notification-rules,post,CreateIncidentNotificationRule,Incidents,incident_notification_rules,create_incident_notification_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident notification rule +service_management,v2,/api/v2/incidents/config/notification-templates,post,CreateIncidentNotificationTemplate,Incidents,incident_notification_templates,create_incident_notification_template,insert,,csv,,,true,,,,data-object,application/json,application/json,Create incident notification template +service_management,v2,/api/v2/incidents/{incident_id}/relationships/todos,post,CreateIncidentTodo,Incidents,incident_todos,create_incident_todo,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident todo +service_management,v2,/api/v2/incidents/config/types,post,CreateIncidentType,Incidents,incident_types,create_incident_type,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident type +service_management,v2,/api/v2/incidents,post,CreateIncident,Incidents,incidents,create_incident,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident +service_management,v2,/api/v2/error-tracking/issues/search,post,SearchIssues,Error Tracking,issues,search_issues,insert,,csv,,,,,,,data-array,application/json,application/json,Search error tracking issues +service_management,v2,/api/v2/on-call/escalation-policies,post,CreateOnCallEscalationPolicy,On-Call,on_call_escalation_policies,create_on_call_escalation_policy,insert,,csv,,,,,,,data-object,application/json,application/json,Create On-Call escalation policy +service_management,v2,/api/v2/on-call/pages,post,CreateOnCallPage,On-Call Paging,on_call_page,create_on_call_page,insert,,csv,,,,,,,data-object,application/json,application/json,Create On-Call Page +service_management,v2,/api/v2/on-call/schedules,post,CreateOnCallSchedule,On-Call,on_call_schedule,create_on_call_schedule,insert,,csv,,,,,,,data-object,application/json,application/json,Create On-Call schedule +service_management,v2,/api/v2/cases/projects,post,CreateProject,Case Management,projects,create_project,insert,,csv,,,,,,,data-object,application/json,application/json,Create a project +service_management,v2,/api/v2/services/definitions,post,CreateOrUpdateServiceDefinitions,Service Definition,service_definitions,create_or_update_service_definitions,insert,,csv,,,,,,,data-array,application/json,application/json,Create or update service definition +service_management,v2,/api/v2/slo/report,post,CreateSLOReportJob,Service Level Objectives,skip_this_resource,,,,skip,deprecated,true,true,2027-01-25,,,data-object,application/json,application/json,Create a new SLO report +software_delivery,v2,/api/v2/ci/pipeline,post,CreateCIAppPipelineEvent,CI Visibility Pipelines,ci_app_pipeline_events,create_ciapp_pipeline_event,insert,,csv,,,,,,,object,application/json,application/json,Send pipeline event +software_delivery,v2,/api/v2/ci/tests/events/search,post,SearchCIAppTestEvents,CI Visibility Tests,ci_app_test_events,search_ciapp_test_events,insert,,csv,,,,,,"{""cursorParam"":""body.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search tests events +software_delivery,v2,/api/v2/dora/deployment,post,CreateDORADeployment,DORA Metrics,dora_deployments,create_doradeployment,insert,,csv,,,,,,,data-object,application/json,application/json,Send a deployment event +software_delivery,v2,/api/v2/dora/failure,post,CreateDORAFailure,DORA Metrics,dora_failures,create_dorafailure,insert,,csv,,,,,,,data-object,application/json,application/json,Send an incident event +software_delivery,v2,/api/v2/dora/incident,post,CreateDORAIncident,DORA Metrics,skip_this_resource,,,,skip,deprecated,true,,,,,data-object,application/json,application/json,Send an incident event (legacy) +software_delivery,v2,/api/v2/workflows/{workflow_id}/instances,post,CreateWorkflowInstance,Workflow Automation,workflow_instances,create_workflow_instance,insert,,csv,,,,,,,data-object,application/json,application/json,Execute a workflow +software_delivery,v2,/api/v2/workflows,post,CreateWorkflow,Workflow Automation,workflows,create_workflow,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Workflow +apm,v2,/api/v2/apm/config/retention-filters/{filter_id},put,UpdateApmRetentionFilter,APM Retention Filters,retention_filters,update_apm_retention_filter,replace,,csv,,,,,,,data-object,application/json,application/json,Update a retention filter +apm,v2,/api/v2/scorecard/rules/{rule_id},put,UpdateScorecardRule,Scorecards,scorecard_rules,update_scorecard_rule,replace,,csv,,,,,,,data-object,application/json,application/json,Update an existing scorecard rule +catalog,v2,/api/v2/apicatalog/api/{id}/openapi,put,UpdateOpenAPI,API Management,skip_this_resource,,,,skip,deprecated,true,true,,,,data-object,multipart/form-data,application/json,Update an API +cloud_costs,v2,/api/v2/cost/budget,put,UpsertBudget,Cloud Cost Management,budgets,upsert_budget,replace,,csv,,,,,,,data-object,application/json,application/json,Create or update a budget +dashboards,v2,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,put,UpdateDashboardListItems,Dashboard Lists,dashboard_list_items,update_dashboard_list_items,replace,,csv,,,,,,,single-array:dashboards,application/json,application/json,Update items of a dashboard list +logs,v2,/api/v2/logs/config/archive-order,put,UpdateLogsArchiveOrder,Logs Archives,archive_order,update_logs_archive_order,replace,,csv,,,,,,,data-object,application/json,application/json,Update archive order +logs,v2,/api/v2/logs/config/archives/{archive_id},put,UpdateLogsArchive,Logs Archives,archives,update_logs_archive,replace,,csv,,,,,,,data-object,application/json,application/json,Update an archive +metrics,v2,/api/v2/datasets/{dataset_id},put,UpdateDataset,Datasets,datasets,update_dataset,replace,,csv,,,true,,,,data-object,application/json,application/json,Edit a dataset +monitoring,v2,/api/v2/monitor/template/{template_id},put,UpdateMonitorUserTemplate,Monitors,user_templates,update_monitor_user_template,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a monitor user template to a new version +organization,v2,/api/v2/restriction_policy/{resource_id},post,UpdateRestrictionPolicy,Restriction Policies,restriction_policies,update_restriction_policy,replace,,csv,,,,,,,data-object,application/json,application/json,Update a restriction policy +organization,v2,/api/v2/team/{team_id}/permission-settings/{action},put,UpdateTeamPermissionSetting,Teams,team_permission_settings,update_team_permission_setting,replace,,csv,,,,,,,data-object,application/json,application/json,Update permission setting for team +remote_config,v2,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},put,UpdateApplicationSecurityWafCustomRule,Application Security,waf_custom_rules,update_application_security_waf_custom_rule,replace,,csv,,,,,appsec_waf_custom_rule,,data-object,application/json,application/json,Update a WAF Custom Rule +remote_config,v2,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},put,UpdateApplicationSecurityWafExclusionFilter,Application Security,waf_exclusion_filters,update_application_security_waf_exclusion_filter,replace,,csv,,,,,appsec_waf_exclusion_filter,,data-object,application/json,application/json,Update a WAF exclusion filter +security,v2,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},put,UpdateCustomFramework,Security Monitoring,custom_frameworks,update_custom_framework,replace,,csv,,,,,,,data-object,application/json,application/json,Update a custom framework +security,v2,/api/v2/security_monitoring/rules/{rule_id},put,UpdateSecurityMonitoringRule,Security Monitoring,monitoring_rules,update_security_monitoring_rule,replace,,csv,,,,,,,multi-array,application/json,application/json,Update an existing rule +security,v2,/api/v2/cloud_security_management/resource_filters,put,UpdateResourceEvaluationFilters,Security Monitoring,resource_evaluation_filters,update_resource_evaluation_filters,replace,,csv,,,,,,,data-object,application/json,application/json,Update resource filters +service_management,v2,/api/v2/incidents/config/notification-rules/{id},put,UpdateIncidentNotificationRule,Incidents,incident_notification_rules,update_incident_notification_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update an incident notification rule +service_management,v2,/api/v2/on-call/escalation-policies/{policy_id},put,UpdateOnCallEscalationPolicy,On-Call,on_call_escalation_policies,update_on_call_escalation_policy,replace,,csv,,,,,,,data-object,application/json,application/json,Update On-Call escalation policy +service_management,v2,/api/v2/on-call/schedules/{schedule_id},put,UpdateOnCallSchedule,On-Call,on_call_schedule,update_on_call_schedule,replace,,csv,,,,,,,data-object,application/json,application/json,Update On-Call schedule +service_management,v2,/api/v2/on-call/teams/{team_id}/routing-rules,put,SetOnCallTeamRoutingRules,On-Call,on_call_team_routing_rules,set_on_call_team_routing_rules,replace,,csv,,,,,,,data-object,application/json,application/json,Set On-Call team routing rules +actions,v2,/api/v2/actions/app_key_registrations/{app_key_id},get,GetAppKeyRegistration,Action Connection,app_key_registrations,get_app_key_registration,select,$.data,csv,,,,,,,data-object,,application/json,Get an existing App Key Registration +actions,v2,/api/v2/actions/app_key_registrations,get,ListAppKeyRegistrations,Action Connection,app_key_registrations,list_app_key_registrations,select,$.data,csv,,,,,,,data-array,,application/json,List App Key Registrations +actions,v2,/api/v2/actions/connections/{connection_id},get,GetActionConnection,Action Connection,connections,get_action_connection,select,$.data,csv,,,,,,,data-object,,application/json,Get an existing Action Connection +actions,v2,/api/v2/actions-datastores/{datastore_id}/items,get,ListDatastoreItems,Actions Datastores,datastore_items,list_datastore_items,select,$.data,csv,,,,,,,data-array,,application/json,List datastore items +actions,v2,/api/v2/actions-datastores/{datastore_id},get,GetDatastore,Actions Datastores,datastores,get_datastore,select,$.data,csv,,,,,,,data-object,,application/json,Get datastore +actions,v2,/api/v2/actions-datastores,get,ListDatastores,Actions Datastores,datastores,list_datastores,select,$.data,csv,,,,,,,data-array,,application/json,List datastores +apm,v2,/api/v2/apm/config/retention-filters/{filter_id},get,GetApmRetentionFilter,APM Retention Filters,retention_filters,get_apm_retention_filter,select,$.data,csv,,,,,,,data-object,,application/json,Get a given APM retention filter +apm,v2,/api/v2/apm/config/retention-filters,get,ListApmRetentionFilters,APM Retention Filters,retention_filters,list_apm_retention_filters,select,$.data,csv,,,,,,,data-array,,application/json,List all APM retention filters +apm,v2,/api/v2/scorecard/outcomes,get,ListScorecardOutcomes,Scorecards,scorecard_outcomes,list_scorecard_outcomes,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,List all rule outcomes +apm,v2,/api/v2/scorecard/rules,get,ListScorecardRules,Scorecards,scorecard_rules,list_scorecard_rules,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,List all rules +apm,v2,/api/v2/apm/config/metrics/{metric_id},get,GetSpansMetric,Spans Metrics,spans_metrics,get_spans_metric,select,$.data,csv,,,,,,,data-object,,application/json,Get a span-based metric +apm,v2,/api/v2/apm/config/metrics,get,ListSpansMetrics,Spans Metrics,spans_metrics,list_spans_metrics,select,$.data,csv,,,,,,,data-array,,application/json,Get all span-based metrics +catalog,v2,/api/v2/apicatalog/api,get,ListAPIs,API Management,skip_this_resource,,,,skip,deprecated,true,true,,,,data-array,,application/json,List APIs +catalog,v2,/api/v2/catalog/entity,get,ListCatalogEntity,Software Catalog,catalog_entities,list_catalog_entity,select,$.data,csv,,,,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of entities +catalog,v2,/api/v2/catalog/kind,get,ListCatalogKind,Software Catalog,catalog_kinds,list_catalog_kind,select,$.data,csv,,,,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of entity kinds +catalog,v2,/api/v2/catalog/relation,get,ListCatalogRelation,Software Catalog,catalog_relations,list_catalog_relation,select,$.data,csv,,,,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of entity relations +cloud_costs,v2,/api/v2/cost_by_tag/active_billing_dimensions,get,GetActiveBillingDimensions,Usage Metering,active_billing_dimensions,get_active_billing_dimensions,select,$.data,csv,,,,,,,data-object,,application/json,Get active billing dimensions for cost attribution +cloud_costs,v2,/api/v2/cost/aws_cur_config,get,ListCostAWSCURConfigs,Cloud Cost Management,aws_configs,list_cost_awscurconfigs,select,$.data,csv,,,,,,,data-array,,application/json,List Cloud Cost Management AWS CUR configs +cloud_costs,v2,/api/v2/cost/azure_uc_config,get,ListCostAzureUCConfigs,Cloud Cost Management,azure_configs,list_cost_azure_ucconfigs,select,$.data,csv,,,,,,,data-array,,application/json,List Cloud Cost Management Azure configs +cloud_costs,v2,/api/v2/cost/budget/{budget_id},get,GetBudget,Cloud Cost Management,budgets,get_budget,select,$.data,csv,,,,,,,data-object,,application/json,Get budget +cloud_costs,v2,/api/v2/cost/budgets,get,ListBudgets,Cloud Cost Management,budgets,list_budgets,select,$.data,csv,,,,,,,data-array,,application/json,List budgets +cloud_costs,v2,/api/v2/cost/custom_costs/{file_id},get,GetCustomCostsFile,Cloud Cost Management,costs_files,get_custom_costs_file,select,$.data,csv,,,,,,,data-object,,application/json,Get Custom Costs file +cloud_costs,v2,/api/v2/cost/custom_costs,get,ListCustomCostsFiles,Cloud Cost Management,costs_files,list_custom_costs_files,select,$.data,csv,,,,,,,data-array,,application/json,List Custom Costs files +cloud_costs,v2,/api/v2/cost/gcp_uc_config,get,ListCostGCPUsageCostConfigs,Cloud Cost Management,gcp_configs,list_cost_gcpusage_cost_configs,select,$.data,csv,,,,,,,data-array,,application/json,List Google Cloud Usage Cost configs +cloud_costs,v2,/api/v2/cost_by_tag/monthly_cost_attribution,get,GetMonthlyCostAttribution,Usage Metering,monthly_cost_attribution,get_monthly_cost_attribution,select,$.data,csv,,,,,,,data-array,,application/json,Get Monthly Cost Attribution +dashboards,v2,/api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards,get,GetDashboardListItems,Dashboard Lists,dashboard_list_items,get_dashboard_list_items,select,$.dashboards,csv,,,,,,,single-array:dashboards,,application/json,Get items of a Dashboard List +dashboards,v2,/api/v2/powerpacks/{powerpack_id},get,GetPowerpack,Powerpack,powerpacks,get_powerpack,select,$.data,csv,,,,,,,data-object,,application/json,Get a Powerpack +dashboards,v2,/api/v2/powerpacks,get,ListPowerpacks,Powerpack,powerpacks,list_powerpacks,select,$.data,csv,,,,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get all powerpacks +digital_experience,v2,/api/v2/rum/applications/{id},get,GetRUMApplication,RUM,rum_applications,get_rumapplication,select,$.data,csv,,,,,,,data-object,,application/json,Get a RUM application +digital_experience,v2,/api/v2/rum/applications,get,GetRUMApplications,RUM,rum_applications,get_rumapplications,select,$.data,csv,,,,,,,data-array,,application/json,List all the RUM applications +digital_experience,v2,/api/v2/rum/events,get,ListRUMEvents,RUM,rum_events,list_rumevents,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of RUM events +digital_experience,v2,/api/v2/rum/config/metrics/{metric_id},get,GetRumMetric,Rum Metrics,rum_metrics,get_rum_metric,select,$.data,csv,,,,,,,data-object,,application/json,Get a RUM-based metric +digital_experience,v2,/api/v2/rum/config/metrics,get,ListRumMetrics,Rum Metrics,rum_metrics,list_rum_metrics,select,$.data,csv,,,,,,,data-array,,application/json,Get all RUM-based metrics +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},get,GetRetentionFilter,Rum Retention Filters,rum_retention_filters,get_retention_filter,select,$.data,csv,,,,,,,data-object,,application/json,Get a RUM retention filter +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters,get,ListRetentionFilters,Rum Retention Filters,rum_retention_filters,list_retention_filters,select,$.data,csv,,,,,,,data-array,,application/json,Get all RUM retention filters +infrastructure,v2,/api/v2/network/connections/aggregate,get,GetAggregatedConnections,Cloud Network Monitoring,aggregated_connections,get_aggregated_connections,select,$.data,csv,,,,,,,data-array,,application/json,Get all aggregated connections +infrastructure,v2,/api/v2/network/dns/aggregate,get,GetAggregatedDns,Cloud Network Monitoring,aggregated_dns,get_aggregated_dns,select,$.data,csv,,,,,,,data-array,,application/json,Get all aggregated DNS traffic +infrastructure,v2,/api/v2/app-builder/apps/{app_id},get,GetApp,App Builder,apps,get_app,select,$.data,csv,,,,,,,data-object,,application/json,Get App +infrastructure,v2,/api/v2/app-builder/apps,get,ListApps,App Builder,apps,list_apps,select,$.data,csv,,,,,,,data-array,,application/json,List Apps +infrastructure,v2,/api/v2/container_images,get,ListContainerImages,Container Images,container_images,list_container_images,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.pagination.next_cursor"",""limitParam"":""page[size]"",""resultsPath"":""data""}",data-array,,application/json,Get all Container Images +infrastructure,v2,/api/v2/containers,get,ListContainers,Containers,containers,list_containers,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.pagination.next_cursor"",""limitParam"":""page[size]"",""resultsPath"":""data""}",data-array,,application/json,Get All Containers +infrastructure,v2,/api/v2/ndm/interfaces,get,GetInterfaces,Network Device Monitoring,device_interfaces,get_interfaces,select,$.data,csv,,,,,,,data-array,,application/json,Get the list of interfaces of the device +infrastructure,v2,/api/v2/ndm/tags/devices/{device_id},get,ListDeviceUserTags,Network Device Monitoring,device_user_tags,list_device_user_tags,select,$.data,csv,,,,,,,data-object,,application/json,Get the list of tags for a device +infrastructure,v2,/api/v2/ndm/devices/{device_id},get,GetDevice,Network Device Monitoring,devices,get_device,select,$.data,csv,,,,,,,data-object,,application/json,Get the device details +infrastructure,v2,/api/v2/ndm/devices,get,ListDevices,Network Device Monitoring,devices,list_devices,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,Get the list of devices +infrastructure,v2,/api/v2/processes,get,ListProcesses,Processes,processes,list_processes,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get all processes +infrastructure,v2,/api/v2/spa/recommendations/{service},get,GetSPARecommendations,Spa,spa_recommendations,get_sparecommendations,select,$.data,csv,,,true,,,,data-object,,application/json,Get SPA Recommendations +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id},get,GetAWSAccount,AWS Integration,aws_accounts,get_awsaccount,select,$.data,csv,,,,,,,data-object,,application/json,Get an AWS integration by config ID +integrations,v2,/api/v2/integration/aws/accounts,get,ListAWSAccounts,AWS Integration,aws_accounts,list_awsaccounts,select,$.data,csv,,,,,,,data-array,,application/json,List all AWS integrations +integrations,v2,/api/v2/integration/aws/iam_permissions,get,GetAWSIntegrationIAMPermissions,AWS Integration,aws_iam_permissions,get_awsintegration_iampermissions,select,$.data,csv,,,,,,,data-object,,application/json,Get AWS integration IAM permissions +integrations,v2,/api/v2/integration/aws/logs/services,get,ListAWSLogsServices,AWS Logs Integration,aws_logs_services,list_awslogs_services,select,$.data,csv,,,,,,,data-object,,application/json,Get list of AWS log ready services +integrations,v2,/api/v2/integration/aws/available_namespaces,get,ListAWSNamespaces,AWS Integration,aws_namespaces,list_awsnamespaces,select,$.data,csv,,,,,,,data-object,,application/json,List available namespaces +integrations,v2,/api/v2/integrations/cloudflare/accounts/{account_id},get,GetCloudflareAccount,Cloudflare Integration,cloudflare_accounts,get_cloudflare_account,select,$.data,csv,,,,,,,data-object,,application/json,Get Cloudflare account +integrations,v2,/api/v2/integrations/cloudflare/accounts,get,ListCloudflareAccounts,Cloudflare Integration,cloudflare_accounts,list_cloudflare_accounts,select,$.data,csv,,,,,,,data-array,,application/json,List Cloudflare accounts +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id},get,GetConfluentAccount,Confluent Cloud,confluent_accounts,get_confluent_account,select,$.data,csv,,,,,,,data-object,,application/json,Get Confluent account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts,get,ListConfluentAccount,Confluent Cloud,confluent_accounts,list_confluent_account,select,$.data,csv,,,,,,,data-array,,application/json,List Confluent accounts +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},get,GetConfluentResource,Confluent Cloud,confluent_resources,get_confluent_resource,select,$.data,csv,,,,,,,data-object,,application/json,Get resource from Confluent account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources,get,ListConfluentResource,Confluent Cloud,confluent_resources,list_confluent_resource,select,$.data,csv,,,,,,,data-array,,application/json,List Confluent Account resources +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id},get,GetFastlyAccount,Fastly Integration,fastly_accounts,get_fastly_account,select,$.data,csv,,,,,,,data-object,,application/json,Get Fastly account +integrations,v2,/api/v2/integrations/fastly/accounts,get,ListFastlyAccounts,Fastly Integration,fastly_accounts,list_fastly_accounts,select,$.data,csv,,,,,,,data-array,,application/json,List Fastly accounts +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},get,GetFastlyService,Fastly Integration,fastly_services,get_fastly_service,select,$.data,csv,,,,,,,data-object,,application/json,Get Fastly service +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id}/services,get,ListFastlyServices,Fastly Integration,fastly_services,list_fastly_services,select,$.data,csv,,,,,,,data-array,,application/json,List Fastly services +integrations,v2,/api/v2/integration/gcp/accounts,get,ListGCPSTSAccounts,GCP Integration,gcp_accounts,list_gcpstsaccounts,select,$.data,csv,,,,,,,data-array,,application/json,List all GCP STS-enabled service accounts +integrations,v2,/api/v2/integration/gcp/sts_delegate,get,GetGCPSTSDelegate,GCP Integration,gcp_sts_delegate,get_gcpstsdelegate,select,$.data,csv,,,,,,,data-object,,application/json,List delegate account +integrations,v2,/api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name},get,GetChannelByName,Microsoft Teams Integration,ms_teams_channels,get_channel_by_name,select,$.data,csv,,,,,,,data-object,,application/json,Get channel information by name +integrations,v2,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},get,GetTenantBasedHandle,Microsoft Teams Integration,ms_teams_tenant_based_handles,get_tenant_based_handle,select,$.data,csv,,,,,,,data-object,,application/json,Get tenant-based handle information +integrations,v2,/api/v2/integration/ms-teams/configuration/tenant-based-handles,get,ListTenantBasedHandles,Microsoft Teams Integration,ms_teams_tenant_based_handles,list_tenant_based_handles,select,$.data,csv,,,,,,,data-array,,application/json,Get all tenant-based handles +integrations,v2,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},get,GetWorkflowsWebhookHandle,Microsoft Teams Integration,ms_teams_workflows_webhook_handles,get_workflows_webhook_handle,select,$.data,csv,,,,,,,data-object,,application/json,Get Workflows webhook handle information +integrations,v2,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles,get,ListWorkflowsWebhookHandles,Microsoft Teams Integration,ms_teams_workflows_webhook_handles,list_workflows_webhook_handles,select,$.data,csv,,,,,,,data-array,,application/json,Get all Workflows webhook handles +integrations,v2,/api/v2/integrations/okta/accounts/{account_id},get,GetOktaAccount,Okta Integration,okta_accounts,get_okta_account,select,$.data,csv,,,,,,,data-object,,application/json,Get Okta account +integrations,v2,/api/v2/integrations/okta/accounts,get,ListOktaAccounts,Okta Integration,okta_accounts,list_okta_accounts,select,$.data,csv,,,,,,,data-array,,application/json,List Okta accounts +integrations,v2,/api/v2/integration/opsgenie/services/{integration_service_id},get,GetOpsgenieService,Opsgenie Integration,opsgenie_services,get_opsgenie_service,select,$.data,csv,,,,,,,data-object,,application/json,Get a single service object +integrations,v2,/api/v2/integration/opsgenie/services,get,ListOpsgenieServices,Opsgenie Integration,opsgenie_services,list_opsgenie_services,select,$.data,csv,,,,,,,data-array,,application/json,Get all service objects +logs,v2,/api/v2/logs/config/archive-order,get,GetLogsArchiveOrder,Logs Archives,archive_order,get_logs_archive_order,select,$.data,csv,,,,,,,data-object,,application/json,Get archive order +logs,v2,/api/v2/logs/config/archives/{archive_id}/readers,get,ListArchiveReadRoles,Logs Archives,archive_read_roles,list_archive_read_roles,select,$.data,csv,,,,,,,data-array,,application/json,List read roles for an archive +logs,v2,/api/v2/logs/config/archives/{archive_id},get,GetLogsArchive,Logs Archives,archives,get_logs_archive,select,$.data,csv,,,,,,,data-object,,application/json,Get an archive +logs,v2,/api/v2/logs/config/archives,get,ListLogsArchives,Logs Archives,archives,list_logs_archives,select,$.data,csv,,,,,,,data-array,,application/json,Get all archives +logs,v2,/api/v2/logs/config/custom-destinations/{custom_destination_id},get,GetLogsCustomDestination,Logs Custom Destinations,custom_destinations,get_logs_custom_destination,select,$.data,csv,,,,,,,data-object,,application/json,Get a custom destination +logs,v2,/api/v2/logs/config/custom-destinations,get,ListLogsCustomDestinations,Logs Custom Destinations,custom_destinations,list_logs_custom_destinations,select,$.data,csv,,,,,,,data-array,,application/json,Get all custom destinations +logs,v2,/api/v2/logs/events,get,ListLogsGet,Logs,logs,list_logs_get,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Search logs (GET) +logs,v2,/api/v2/logs/config/metrics/{metric_id},get,GetLogsMetric,Logs Metrics,metrics,get_logs_metric,select,$.data,csv,,,,,,,data-object,,application/json,Get a log-based metric +logs,v2,/api/v2/logs/config/metrics,get,ListLogsMetrics,Logs Metrics,metrics,list_logs_metrics,select,$.data,csv,,,,,,,data-array,,application/json,Get all log-based metrics +metrics,v2,/api/v2/metrics/{metric_name}/active-configurations,get,ListActiveMetricConfigurations,Metrics,active_tag_configurations,list_active_metric_configurations,select,$.data,csv,,,,,,,data-object,,application/json,List active tags and aggregations +metrics,v2,/api/v2/datasets,get,GetAllDatasets,Datasets,datasets,get_all_datasets,select,$.data,csv,,,true,,,,data-array,,application/json,Get all datasets +metrics,v2,/api/v2/datasets/{dataset_id},get,GetDataset,Datasets,datasets,get_dataset,select,$.data,csv,,,true,,,,data-object,,application/json,Get a single dataset by ID +metrics,v2,/api/v2/metrics/{metric_name}/estimate,get,EstimateMetricsOutputSeries,Metrics,metrics_output_series,estimate_metrics_output_series,select,$.data,csv,,,,,,,data-object,,application/json,Tag Configuration Cardinality Estimator +metrics,v2,/api/v2/metrics/{metric_name}/assets,get,ListMetricAssets,Metrics,related_assets,list_metric_assets,select,$.data,csv,,,,,,,data-object,,application/json,Related Assets to a Metric +metrics,v2,/api/v2/spans/events,get,ListSpansGet,Spans,spans,list_spans_get,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of spans +metrics,v2,/api/v2/metrics/{metric_name}/tag-cardinalities,get,GetMetricTagCardinalityDetails,Metrics,tag_cardinality_details,get_metric_tag_cardinality_details,select,$.data,csv,,,,,,,data-array,,application/json,Get tag key cardinality details +metrics,v2,/api/v2/metrics/{metric_name}/tags,get,ListTagConfigurationByName,Metrics,tag_configurations,list_tag_configuration_by_name,select,$.data,csv,,,,,,,data-object,,application/json,List tag configuration by name +metrics,v2,/api/v2/metrics,get,ListTagConfigurations,Metrics,tag_configurations,list_tag_configurations,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.pagination.next_cursor"",""limitParam"":""page[size]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of metrics +metrics,v2,/api/v2/metrics/{metric_name}/all-tags,get,ListTagsByMetricName,Metrics,tags,list_tags_by_metric_name,select,$.data,csv,,,,,,,data-object,,application/json,List tags by metric name +metrics,v2,/api/v2/metrics/{metric_name}/volumes,get,ListVolumesByMetricName,Metrics,volumes,list_volumes_by_metric_name,select,$.data,csv,,,,,,,data-object,,application/json,List distinct metric volumes by metric name +monitoring,v2,/api/v2/monitor/policy/{policy_id},get,GetMonitorConfigPolicy,Monitors,config_policies,get_monitor_config_policy,select,$.data,csv,,,,,,,data-object,,application/json,Get a monitor configuration policy +monitoring,v2,/api/v2/monitor/policy,get,ListMonitorConfigPolicies,Monitors,config_policies,list_monitor_config_policies,select,$.data,csv,,,,,,,data-array,,application/json,Get all monitor configuration policies +monitoring,v2,/api/v2/monitor/{monitor_id}/downtime_matches,get,ListMonitorDowntimes,Downtimes,downtimes,list_monitor_downtimes,select,$.data,csv,,,,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get active downtimes for a monitor +monitoring,v2,/api/v2/monitor/notification_rule/{rule_id},get,GetMonitorNotificationRule,Monitors,notification_rules,get_monitor_notification_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get a monitor notification rule +monitoring,v2,/api/v2/monitor/notification_rule,get,GetMonitorNotificationRules,Monitors,notification_rules,get_monitor_notification_rules,select,$.data,csv,,,,,,,data-array,,application/json,Get all monitor notification rules +monitoring,v2,/api/v2/synthetics/settings/on_demand_concurrency_cap,get,GetOnDemandConcurrencyCap,Synthetics,on_demand_concurrency_cap,get_on_demand_concurrency_cap,select,$.data,csv,,,,,,,data-object,,application/json,Get the on-demand concurrency cap +monitoring,v2,/api/v2/monitor/template/{template_id},get,GetMonitorUserTemplate,Monitors,user_templates,get_monitor_user_template,select,$.data,csv,,,true,,,,data-object,,application/json,Get a monitor user template +monitoring,v2,/api/v2/monitor/template,get,ListMonitorUserTemplates,Monitors,user_templates,list_monitor_user_templates,select,$.data,csv,,,true,,,,data-array,,application/json,Get all monitor user templates +organization,v2,/api/v2/api_keys/{api_key_id},get,GetAPIKey,Key Management,api_keys,get_apikey,select,$.data,csv,,,,,,,data-object,,application/json,Get API key +organization,v2,/api/v2/api_keys,get,ListAPIKeys,Key Management,api_keys,list_apikeys,select,$.data,csv,,,,,,,data-array,,application/json,Get all API keys +organization,v2,/api/v2/application_keys/{app_key_id},get,GetApplicationKey,Key Management,application_keys,get_application_key,select,$.data,csv,,,,,,,data-object,,application/json,Get an application key +organization,v2,/api/v2/application_keys,get,ListApplicationKeys,Key Management,application_keys,list_application_keys,select,$.data,csv,,,,,,,data-array,,application/json,Get all application keys +organization,v2,/api/v2/audit/events,get,ListAuditLogs,Audit,audit_logs,list_audit_logs,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of Audit Logs events +organization,v2,/api/v2/authn_mappings/{authn_mapping_id},get,GetAuthNMapping,AuthN Mappings,authn_mappings,get_auth_nmapping,select,$.data,csv,,,,,,,data-object,,application/json,Get an AuthN Mapping by UUID +organization,v2,/api/v2/authn_mappings,get,ListAuthNMappings,AuthN Mappings,authn_mappings,list_auth_nmappings,select,$.data,csv,,,,,,,data-array,,application/json,List all AuthN Mappings +organization,v2,/api/v2/usage/billing_dimension_mapping,get,GetBillingDimensionMapping,Usage Metering,billing_dimension_mapping,get_billing_dimension_mapping,select,$.data,csv,,,,,,,data-array,,application/json,Get billing dimension mapping for usage endpoints +organization,v2,/api/v2/org_configs/{org_config_name},get,GetOrgConfig,Organizations,configs,get_org_config,select,$.data,csv,,,,,,,data-object,,application/json,Get a specific Org Config value +organization,v2,/api/v2/org_configs,get,ListOrgConfigs,Organizations,configs,list_org_configs,select,$.data,csv,,,,,,,data-array,,application/json,List Org Configs +organization,v2,/api/v2/org_connections,get,ListOrgConnections,Org Connections,connections,list_org_connections,select,$.data,csv,,,,,,,data-array,,application/json,List Org Connections +organization,v2,/api/v2/usage/cost_by_org,get,GetCostByOrg,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-array,,application/json,Get cost across multi-org account +organization,v2,/api/v2/current_user/application_keys/{app_key_id},get,GetCurrentUserApplicationKey,Key Management,current_user_application_keys,get_current_user_application_key,select,$.data,csv,,,,,,,data-object,,application/json,Get one application key owned by current user +organization,v2,/api/v2/current_user/application_keys,get,ListCurrentUserApplicationKeys,Key Management,current_user_application_keys,list_current_user_application_keys,select,$.data,csv,,,,,,,data-array,,application/json,Get all application keys owned by current user +organization,v2,/api/v2/deletion/requests,get,GetDataDeletionRequests,Data Deletion,data_deletion_requests,get_data_deletion_requests,select,$.data,csv,,,,,,,data-array,,application/json,Gets a list of data deletion requests +organization,v2,/api/v2/domain_allowlist,get,GetDomainAllowlist,Domain Allowlist,domain_allowlist,get_domain_allowlist,select,$.data,csv,,,,,,,data-object,,application/json,Get Domain Allowlist +organization,v2,/api/v2/usage/estimated_cost,get,GetEstimatedCostByOrg,Usage Metering,estimated_cost_by_org,get_estimated_cost_by_org,select,$.data,csv,,,,,,,data-array,,application/json,Get estimated cost across your account +organization,v2,/api/v2/usage/historical_cost,get,GetHistoricalCostByOrg,Usage Metering,historical_cost_by_org,get_historical_cost_by_org,select,$.data,csv,,,,,,,data-array,,application/json,Get historical cost across your account +organization,v2,/api/v2/usage/hourly_usage,get,GetHourlyUsage,Usage Metering,hourly_usage,get_hourly_usage,select,$.data,csv,,,,,,,data-array,,application/json,Get hourly usage by product family +organization,v2,/api/v2/user_invitations/{user_invitation_uuid},get,GetInvitation,Users,invitations,get_invitation,select,$.data,csv,,,,,,,data-object,,application/json,Get a user invitation +organization,v2,/api/v2/ip_allowlist,get,GetIPAllowlist,IP Allowlist,ip_allowlist,get_ipallowlist,select,$.data,csv,,,,,,,data-object,,application/json,Get IP Allowlist +organization,v2,/api/v2/usage/lambda_traced_invocations,get,GetUsageLambdaTracedInvocations,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-array,,application/json,Get hourly usage for Lambda traced invocations +organization,v2,/api/v2/usage/observability_pipelines,get,GetUsageObservabilityPipelines,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-array,,application/json,Get hourly usage for observability pipelines +organization,v2,/api/v2/permissions,get,ListPermissions,Roles,permissions,list_permissions,select,$.data,csv,,,,,,,data-array,,application/json,List permissions +organization,v2,/api/v2/usage/projected_cost,get,GetProjectedCost,Usage Metering,projected_cost,get_projected_cost,select,$.data,csv,,,,,,,data-array,,application/json,Get projected cost across your account +organization,v2,/api/v2/restriction_policy/{resource_id},get,GetRestrictionPolicy,Restriction Policies,restriction_policies,get_restriction_policy,select,$.data,csv,,,,,,,data-object,,application/json,Get a restriction policy +organization,v2,/api/v2/roles/{role_id}/permissions,get,ListRolePermissions,Roles,role_permissions,list_role_permissions,select,$.data,csv,,,,,,,data-array,,application/json,List permissions for a role +organization,v2,/api/v2/roles/{role_id}/users,get,ListRoleUsers,Roles,role_users,list_role_users,select,$.data,csv,,,,,,,data-array,,application/json,Get all users of a role +organization,v2,/api/v2/roles/{role_id},get,GetRole,Roles,roles,get_role,select,$.data,csv,,,,,,,data-object,,application/json,Get a role +organization,v2,/api/v2/roles,get,ListRoles,Roles,roles,list_roles,select,$.data,csv,,,,,,,data-array,,application/json,List roles +organization,v2,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},get,GetServiceAccountApplicationKey,Service Accounts,service_account_keys,get_service_account_application_key,select,$.data,csv,,,,,,,data-object,,application/json,Get one application key for this service account +organization,v2,/api/v2/service_accounts/{service_account_id}/application_keys,get,ListServiceAccountApplicationKeys,Service Accounts,service_account_keys,list_service_account_application_keys,select,$.data,csv,,,,,,,data-array,,application/json,List application keys for this service account +organization,v2,/api/v2/team/{team_id}/links/{link_id},get,GetTeamLink,Teams,team_links,get_team_link,select,$.data,csv,,,,,,,data-object,,application/json,Get a team link +organization,v2,/api/v2/team/{team_id}/links,get,GetTeamLinks,Teams,team_links,get_team_links,select,$.data,csv,,,,,,,data-array,,application/json,Get links for a team +organization,v2,/api/v2/team/{super_team_id}/member_teams,get,ListMemberTeams,Teams,skip_this_resource,,,,skip,deprecated,true,true,2026-06-01,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,Get all member teams +organization,v2,/api/v2/team/{team_id}/memberships,get,GetTeamMemberships,Teams,team_memberships,get_team_memberships,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,Get team memberships +organization,v2,/api/v2/team/{team_id}/permission-settings,get,GetTeamPermissionSettings,Teams,team_permission_settings,get_team_permission_settings,select,$.data,csv,,,,,,,data-array,,application/json,Get permission settings for a team +organization,v2,/api/v2/team/{team_id},get,GetTeam,Teams,teams,get_team,select,$.data,csv,,,,,,,data-object,,application/json,Get a team +organization,v2,/api/v2/team,get,ListTeams,Teams,teams,list_teams,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,Get all teams +organization,v2,/api/v2/usage/application_security,get,GetUsageApplicationSecurityMonitoring,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-array,,application/json,Get hourly usage for application security +organization,v2,/api/v2/users/{user_id}/orgs,get,ListUserOrganizations,Users,user_organizations,list_user_organizations,select,$.data,csv,,,,,,,data-object,,application/json,Get a user organization +organization,v2,/api/v2/users/{user_id}/permissions,get,ListUserPermissions,Users,user_permissions,list_user_permissions,select,$.data,csv,,,,,,,data-array,,application/json,Get a user permissions +organization,v2,/api/v2/users/{user_uuid}/memberships,get,GetUserMemberships,Teams,user_team_memberships,get_user_memberships,select,$.data,csv,,,,,,,data-array,,application/json,Get user memberships +organization,v2,/api/v2/users/{user_id},get,GetUser,Users,users,get_user,select,$.data,csv,,,,,,,data-object,,application/json,Get user details +organization,v2,/api/v2/users,get,ListUsers,Users,users,list_users,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,List all users +remote_config,v2,/api/v2/remote_config/products/cws/policy/{policy_id},get,GetCSMThreatsAgentPolicy,CSM Threats,csm_threats_agent_policies,get_csmthreats_agent_policy,select,$.data,csv,,,,,,,data-object,,application/json,Get a Workload Protection policy +remote_config,v2,/api/v2/remote_config/products/cws/policy,get,ListCSMThreatsAgentPolicies,CSM Threats,csm_threats_agent_policies,list_csmthreats_agent_policies,select,$.data,csv,,,,,,,data-array,,application/json,Get all Workload Protection policies +remote_config,v2,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},get,GetCSMThreatsAgentRule,CSM Threats,csm_threats_agent_rules,get_csmthreats_agent_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get a Workload Protection agent rule +remote_config,v2,/api/v2/remote_config/products/cws/agent_rules,get,ListCSMThreatsAgentRules,CSM Threats,csm_threats_agent_rules,list_csmthreats_agent_rules,select,$.data,csv,,,,,,,data-array,,application/json,Get all Workload Protection agent rules +remote_config,v2,/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id},get,GetApplicationSecurityWafCustomRule,Application Security,waf_custom_rules,get_application_security_waf_custom_rule,select,$.data,csv,,,,,appsec_waf_custom_rule,,data-object,,application/json,Get a WAF custom rule +remote_config,v2,/api/v2/remote_config/products/asm/waf/custom_rules,get,ListApplicationSecurityWAFCustomRules,Application Security,waf_custom_rules,list_application_security_wafcustom_rules,select,$.data,csv,,,,,,,data-array,,application/json,List all WAF custom rules +remote_config,v2,/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id},get,GetApplicationSecurityWafExclusionFilter,Application Security,waf_exclusion_filters,get_application_security_waf_exclusion_filter,select,$.data,csv,,,,,appsec_waf_exclusion_filter,,data-object,,application/json,Get a WAF exclusion filter +remote_config,v2,/api/v2/remote_config/products/asm/waf/exclusion_filters,get,ListApplicationSecurityWafExclusionFilters,Application Security,waf_exclusion_filters,list_application_security_waf_exclusion_filters,select,$.data,csv,,,,,appsec_waf_exclusion_filter,,data-array,,application/json,List all WAF exclusion filters +security,v2,/api/v2/agentless_scanning/ondemand/aws/{task_id},get,GetAwsOnDemandTask,Agentless Scanning,aws_on_demand_tasks,get_aws_on_demand_task,select,$.data,csv,,,,,,,data-object,,application/json,Get AWS on demand task +security,v2,/api/v2/agentless_scanning/ondemand/aws,get,ListAwsOnDemandTasks,Agentless Scanning,aws_on_demand_tasks,list_aws_on_demand_tasks,select,$.data,csv,,,,,,,data-array,,application/json,List AWS on demand tasks +security,v2,/api/v2/agentless_scanning/accounts/aws/{account_id},get,GetAwsScanOptions,Agentless Scanning,aws_scan_options,get_aws_scan_options,select,$.data,csv,,,,,,,data-object,,application/json,Get AWS scan options +security,v2,/api/v2/agentless_scanning/accounts/aws,get,ListAwsScanOptions,Agentless Scanning,aws_scan_options,list_aws_scan_options,select,$.data,csv,,,,,,,data-array,,application/json,List AWS scan options +security,v2,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},get,GetCloudWorkloadSecurityAgentRule,CSM Threats,cloud_workload_security_agent_rules,get_cloud_workload_security_agent_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get a Workload Protection agent rule (US1-FED) +security,v2,/api/v2/security_monitoring/cloud_workload_security/agent_rules,get,ListCloudWorkloadSecurityAgentRules,CSM Threats,cloud_workload_security_agent_rules,list_cloud_workload_security_agent_rules,select,$.data,csv,,,,,,,data-array,,application/json,Get all Workload Protection agent rules (US1-FED) +security,v2,/api/v2/csm/onboarding/agents,get,ListAllCSMAgents,CSM Agents,csm_agents,list_all_csmagents,select,$.data,csv,,,,,,,data-array,,application/json,Get all CSM Agents +security,v2,/api/v2/csm/onboarding/coverage_analysis/cloud_accounts,get,GetCSMCloudAccountsCoverageAnalysis,CSM Coverage Analysis,csm_cloud_accounts_coverage_analysis,get_csmcloud_accounts_coverage_analysis,select,$.data,csv,,,,,,,data-object,,application/json,Get the CSM Cloud Accounts Coverage Analysis +security,v2,/api/v2/csm/onboarding/coverage_analysis/hosts_and_containers,get,GetCSMHostsAndContainersCoverageAnalysis,CSM Coverage Analysis,csm_hosts_and_containers_coverage_analysis,get_csmhosts_and_containers_coverage_analysis,select,$.data,csv,,,,,,,data-object,,application/json,Get the CSM Hosts and Containers Coverage Analysis +security,v2,/api/v2/csm/onboarding/serverless/agents,get,ListAllCSMServerlessAgents,CSM Agents,csm_serverless_agents,list_all_csmserverless_agents,select,$.data,csv,,,,,,,data-array,,application/json,Get all CSM Serverless Agents +security,v2,/api/v2/csm/onboarding/coverage_analysis/serverless,get,GetCSMServerlessCoverageAnalysis,CSM Coverage Analysis,csm_serverless_coverage_analysis,get_csmserverless_coverage_analysis,select,$.data,csv,,,,,,,data-object,,application/json,Get the CSM Serverless Coverage Analysis +security,v2,/api/v2/cloud_security_management/custom_frameworks/{handle}/{version},get,GetCustomFramework,Security Monitoring,custom_frameworks,get_custom_framework,select,$.data,csv,,,,,,,data-object,,application/json,Get a custom framework +security,v2,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},get,GetSecurityFilter,Security Monitoring,filters,get_security_filter,select,$.data,csv,,,,,,,data-object,,application/json,Get a security filter +security,v2,/api/v2/security_monitoring/configuration/security_filters,get,ListSecurityFilters,Security Monitoring,filters,list_security_filters,select,$.data,csv,,,,,,,data-array,,application/json,Get all security filters +security,v2,/api/v2/posture_management/findings/{finding_id},get,GetFinding,Security Monitoring,findings,get_finding,select,$.data,csv,,,true,,,,data-object,,application/json,Get a finding +security,v2,/api/v2/posture_management/findings,get,ListFindings,Security Monitoring,findings,list_findings,select,$.data,csv,,,true,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.cursor"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,List findings +security,v2,/api/v2/siem-historical-detections/jobs/{job_id},get,GetHistoricalJob,Security Monitoring,historical_jobs,get_historical_job,select,$.data,csv,,,true,,,,data-object,,application/json,Get a job's details +security,v2,/api/v2/siem-historical-detections/jobs,get,ListHistoricalJobs,Security Monitoring,historical_jobs,list_historical_jobs,select,$.data,csv,,,true,,,,data-array,,application/json,List historical jobs +security,v2,/api/v2/siem-historical-detections/histsignals/{histsignal_id},get,GetSecurityMonitoringHistsignal,Security Monitoring,monitoring_hist_signals,get_security_monitoring_histsignal,select,$.data,csv,,,true,,,,data-object,,application/json,Get a hist signal's details +security,v2,/api/v2/siem-historical-detections/jobs/{job_id}/histsignals,get,GetSecurityMonitoringHistsignalsByJobId,Security Monitoring,monitoring_hist_signals,get_security_monitoring_histsignals_by_job_id,select,$.data,csv,,,true,,,,data-array,,application/json,Get a job's hist signals +security,v2,/api/v2/siem-historical-detections/histsignals,get,ListSecurityMonitoringHistsignals,Security Monitoring,monitoring_hist_signals,list_security_monitoring_histsignals,select,$.data,csv,,,true,,,,data-array,,application/json,List hist signals +security,v2,/api/v2/security_monitoring/rules/{rule_id},get,GetSecurityMonitoringRule,Security Monitoring,monitoring_rules,get_security_monitoring_rule,select,,csv,,,,,,,multi-array,,application/json,Get a rule's details +security,v2,/api/v2/security_monitoring/rules,get,ListSecurityMonitoringRules,Security Monitoring,monitoring_rules,list_security_monitoring_rules,select,$.data,csv,,,,,,,data-array,,application/json,List rules +security,v2,/api/v2/security_monitoring/signals/{signal_id},get,GetSecurityMonitoringSignal,Security Monitoring,monitoring_signals,get_security_monitoring_signal,select,$.data,csv,,,,,,,data-object,,application/json,Get a signal's details +security,v2,/api/v2/security_monitoring/signals,get,ListSecurityMonitoringSignals,Security Monitoring,monitoring_signals,list_security_monitoring_signals,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a quick list of security signals +security,v2,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},get,GetSecurityMonitoringSuppression,Security Monitoring,monitoring_suppressions,get_security_monitoring_suppression,select,$.data,csv,,,,,,,data-object,,application/json,Get a suppression rule +security,v2,/api/v2/security_monitoring/configuration/suppressions,get,ListSecurityMonitoringSuppressions,Security Monitoring,monitoring_suppressions,list_security_monitoring_suppressions,select,$.data,csv,,,,,,,data-array,,application/json,Get all suppression rules +security,v2,/api/v2/cloud_security_management/resource_filters,get,GetResourceEvaluationFilters,Security Monitoring,resource_evaluation_filters,get_resource_evaluation_filters,select,$.data,csv,,,,,,,data-object,,application/json,List resource filters +security,v2,/api/v2/security_monitoring/rules/{rule_id}/version_history,get,GetRuleVersionHistory,Security Monitoring,rule_version_history,get_rule_version_history,select,$.data,csv,,,true,,,,data-object,,application/json,Get a rule's version history +security,v2,/api/v2/security/sboms/{asset_type},get,GetSBOM,Security Monitoring,sboms,get_sbom,select,$.data,csv,,,,,,,data-object,,application/json,Get SBOM +security,v2,/api/v2/security/sboms,get,ListAssetsSBOMs,Security Monitoring,sboms,list_assets_sboms,select,$.data,csv,,,,,,,data-array,,application/json,List assets SBOMs +security,v2,/api/v2/sensitive-data-scanner/config,get,ListScanningGroups,Sensitive Data Scanner,scanning_groups,list_scanning_groups,select,$.data,csv,,,,,,,data-object,,application/json,List Scanning Groups +security,v2,/api/v2/security/signals/notification_rules/{id},get,GetSignalNotificationRule,Security Monitoring,signal_notification_rules,get_signal_notification_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get details of a signal-based notification rule +security,v2,/api/v2/security/signals/notification_rules,get,GetSignalNotificationRules,Security Monitoring,signal_notification_rules,get_signal_notification_rules,select,$.data,csv,,,,,,,none,,,Get the list of signal-based notification rules +security,v2,/api/v2/sensitive-data-scanner/config/standard-patterns,get,ListStandardPatterns,Sensitive Data Scanner,standard_patterns,list_standard_patterns,select,$.data,csv,,,,,,,data-array,,application/json,List standard patterns +security,v2,/api/v2/security_monitoring/configuration/suppressions/rules/{rule_id},get,GetSuppressionsAffectingRule,Security Monitoring,suppressions_affecting_rule,get_suppressions_affecting_rule,select,$.data,csv,,,,,,,data-array,,application/json,Get suppressions affecting a specific rule +security,v2,/api/v2/security/vulnerabilities,get,ListVulnerabilities,Security Monitoring,vulnerabilities,list_vulnerabilities,select,$.data,csv,,true,true,2027-01-01,,,data-array,,application/json,List vulnerabilities +security,v2,/api/v2/security/vulnerabilities/notification_rules/{id},get,GetVulnerabilityNotificationRule,Security Monitoring,vulnerability_notification_rules,get_vulnerability_notification_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get details of a vulnerability notification rule +security,v2,/api/v2/security/vulnerabilities/notification_rules,get,GetVulnerabilityNotificationRules,Security Monitoring,vulnerability_notification_rules,get_vulnerability_notification_rules,select,$.data,csv,,,,,,,none,,,Get the list of vulnerability notification rules +security,v2,/api/v2/security/vulnerable-assets,get,ListVulnerableAssets,Security Monitoring,vulnerable_assets,list_vulnerable_assets,select,$.data,csv,,,true,,,,data-array,,application/json,List vulnerable assets +service_management,v2,/api/v2/cases/{case_id},get,GetCase,Case Management,cases,get_case,select,$.data,csv,,,,,,,data-object,,application/json,Get the details of a case +service_management,v2,/api/v2/downtime/{downtime_id},get,GetDowntime,Downtimes,downtimes,get_downtime,select,$.data,csv,,,,,,,data-object,,application/json,Get a downtime +service_management,v2,/api/v2/downtime,get,ListDowntimes,Downtimes,downtimes,list_downtimes,select,$.data,csv,,,,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get all downtimes +service_management,v2,/api/v2/events/{event_id},get,GetEvent,Events,events,get_event,select,$.data,csv,,,,,,,data-object,,application/json,Get an event +service_management,v2,/api/v2/events,get,ListEvents,Events,events,list_events,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of events +service_management,v2,/api/v2/incidents/{incident_id}/attachments,get,ListIncidentAttachments,Incidents,incident_attachments,list_incident_attachments,select,$.data,csv,,,true,,,,data-array,,application/json,List incident attachments +service_management,v2,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},get,GetIncidentIntegration,Incidents,incident_integrations,get_incident_integration,select,$.data,csv,,,true,,,,data-object,,application/json,Get incident integration metadata details +service_management,v2,/api/v2/incidents/{incident_id}/relationships/integrations,get,ListIncidentIntegrations,Incidents,incident_integrations,list_incident_integrations,select,$.data,csv,,,true,,,,data-array,,application/json,Get a list of an incident's integration metadata +service_management,v2,/api/v2/incidents/config/notification-rules/{id},get,GetIncidentNotificationRule,Incidents,incident_notification_rules,get_incident_notification_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get an incident notification rule +service_management,v2,/api/v2/incidents/config/notification-rules,get,ListIncidentNotificationRules,Incidents,incident_notification_rules,list_incident_notification_rules,select,$.data,csv,,,true,,,,data-array,,application/json,List incident notification rules +service_management,v2,/api/v2/incidents/config/notification-templates/{id},get,GetIncidentNotificationTemplate,Incidents,incident_notification_templates,get_incident_notification_template,select,$.data,csv,,,true,,,,data-object,,application/json,Get incident notification template +service_management,v2,/api/v2/incidents/config/notification-templates,get,ListIncidentNotificationTemplates,Incidents,incident_notification_templates,list_incident_notification_templates,select,$.data,csv,,,true,,,,data-array,,application/json,List incident notification templates +service_management,v2,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},get,GetIncidentTodo,Incidents,incident_todos,get_incident_todo,select,$.data,csv,,,true,,,,data-object,,application/json,Get incident todo details +service_management,v2,/api/v2/incidents/{incident_id}/relationships/todos,get,ListIncidentTodos,Incidents,incident_todos,list_incident_todos,select,$.data,csv,,,true,,,,data-array,,application/json,Get a list of an incident's todos +service_management,v2,/api/v2/incidents/config/types/{incident_type_id},get,GetIncidentType,Incidents,incident_types,get_incident_type,select,$.data,csv,,,true,,,,data-object,,application/json,Get incident type details +service_management,v2,/api/v2/incidents/config/types,get,ListIncidentTypes,Incidents,incident_types,list_incident_types,select,$.data,csv,,,true,,,,data-array,,application/json,Get a list of incident types +service_management,v2,/api/v2/incidents/{incident_id},get,GetIncident,Incidents,incidents,get_incident,select,$.data,csv,,,true,,,,data-object,,application/json,Get the details of an incident +service_management,v2,/api/v2/incidents,get,ListIncidents,Incidents,incidents,list_incidents,select,$.data,csv,,,true,,,"{""limitParam"":""page[size]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of incidents +service_management,v2,/api/v2/incidents/search,get,SearchIncidents,Incidents,incidents,search_incidents,select,$.data,csv,,,true,,,"{""limitParam"":""page[size]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data.attributes.incidents""}",data-object,,application/json,Search for incidents +service_management,v2,/api/v2/error-tracking/issues/{issue_id},get,GetIssue,Error Tracking,issues,get_issue,select,$.data,csv,,,,,,,data-object,,application/json,Get the details of an error tracking issue +service_management,v2,/api/v2/on-call/escalation-policies/{policy_id},get,GetOnCallEscalationPolicy,On-Call,on_call_escalation_policies,get_on_call_escalation_policy,select,$.data,csv,,,,,,,data-object,,application/json,Get On-Call escalation policy +service_management,v2,/api/v2/on-call/schedules/{schedule_id},get,GetOnCallSchedule,On-Call,on_call_schedule,get_on_call_schedule,select,$.data,csv,,,,,,,data-object,,application/json,Get On-Call schedule +service_management,v2,/api/v2/on-call/teams/{team_id}/routing-rules,get,GetOnCallTeamRoutingRules,On-Call,on_call_team_routing_rules,get_on_call_team_routing_rules,select,$.data,csv,,,,,,,data-object,,application/json,Get On-Call team routing rules +service_management,v2,/api/v2/on-call/schedules/{schedule_id}/on-call,get,GetScheduleOnCallUser,On-Call,skip_this_resource,,,,skip,deprecated,true,,2027-02-01,,,data-object,,application/json,Get scheduled on-call user +service_management,v2,/api/v2/cases/projects/{project_id},get,GetProject,Case Management,projects,get_project,select,$.data,csv,,,,,,,data-object,,application/json,Get the details of a project +service_management,v2,/api/v2/cases/projects,get,GetProjects,Case Management,projects,get_projects,select,$.data,csv,,,,,,,data-array,,application/json,Get all projects +service_management,v2,/api/v2/services/definitions/{service_name},get,GetServiceDefinition,Service Definition,service_definitions,get_service_definition,select,$.data,csv,,,,,,,data-object,,application/json,Get a single service definition +service_management,v2,/api/v2/services/definitions,get,ListServiceDefinitions,Service Definition,service_definitions,list_service_definitions,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,Get all service definitions +service_management,v2,/api/v2/slo/report/{report_id}/status,get,GetSLOReportJobStatus,Service Level Objectives,skip_this_resource,,,,skip,deprecated,true,true,2027-01-25,,,data-object,,application/json,Get SLO report status +service_management,v2,/api/v2/on-call/teams/{team_id}/on-call,get,GetTeamOnCallUsers,On-Call,team_on_call_users,get_team_on_call_users,select,$.data,csv,,,,,,,data-object,,application/json,Get team on-call users +software_delivery,v2,/api/v2/ci/pipelines/events,get,ListCIAppPipelineEvents,CI Visibility Pipelines,ci_app_pipeline_events,list_ciapp_pipeline_events,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of pipelines events +software_delivery,v2,/api/v2/ci/tests/events,get,ListCIAppTestEvents,CI Visibility Tests,ci_app_test_events,list_ciapp_test_events,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,Get a list of tests events +software_delivery,v2,/api/v2/dora/deployments/{deployment_id},get,GetDORADeployment,DORA Metrics,dora_deployments,get_doradeployment,select,$.data,csv,,,,,,,data-object,,application/json,Get a deployment event +software_delivery,v2,/api/v2/dora/deployments,post,ListDORADeployments,DORA Metrics,dora_deployments,list_doradeployments,select,$.data,csv,,,,,,,data-array,application/json,application/json,Get a list of deployment events +software_delivery,v2,/api/v2/dora/failures/{failure_id},get,GetDORAFailure,DORA Metrics,dora_failures,get_dorafailure,select,$.data,csv,,,,,,,data-object,,application/json,Get an incident event +software_delivery,v2,/api/v2/dora/failures,post,ListDORAFailures,DORA Metrics,dora_failures,list_dorafailures,select,$.data,csv,,,,,,,data-array,application/json,application/json,Get a list of incident events +software_delivery,v2,/api/v2/workflows/{workflow_id}/instances/{instance_id},get,GetWorkflowInstance,Workflow Automation,workflow_instances,get_workflow_instance,select,$.data,csv,,,,,,,data-object,,application/json,Get a workflow instance +software_delivery,v2,/api/v2/workflows/{workflow_id}/instances,get,ListWorkflowInstances,Workflow Automation,workflow_instances,list_workflow_instances,select,$.data,csv,,,,,,,data-array,,application/json,List workflow instances +software_delivery,v2,/api/v2/workflows/{workflow_id},get,GetWorkflow,Workflow Automation,workflows,get_workflow,select,$.data,csv,,,,,,,data-object,,application/json,Get an existing Workflow +actions,v2,/api/v2/actions/connections/{connection_id},patch,UpdateActionConnection,Action Connection,connections,update_action_connection,update,,csv,,,,,,,data-object,application/json,application/json,Update an existing Action Connection +actions,v2,/api/v2/actions-datastores/{datastore_id}/items,patch,UpdateDatastoreItem,Actions Datastores,datastore_items,update_datastore_item,update,,csv,,,,,,,data-object,application/json,application/json,Update datastore item +actions,v2,/api/v2/actions-datastores/{datastore_id},patch,UpdateDatastore,Actions Datastores,datastores,update_datastore,update,,csv,,,,,,,data-object,application/json,application/json,Update datastore +apm,v2,/api/v2/apm/config/metrics/{metric_id},patch,UpdateSpansMetric,Spans Metrics,spans_metrics,update_spans_metric,update,,csv,,,,,,,data-object,application/json,application/json,Update a span-based metric +cloud_costs,v2,/api/v2/cost/aws_cur_config/{cloud_account_id},patch,UpdateCostAWSCURConfig,Cloud Cost Management,aws_configs,update_cost_awscurconfig,update,,csv,,,,,,,data-array,application/json,application/json,Update Cloud Cost Management AWS CUR config +cloud_costs,v2,/api/v2/cost/azure_uc_config/{cloud_account_id},patch,UpdateCostAzureUCConfigs,Cloud Cost Management,azure_configs,update_cost_azure_ucconfigs,update,,csv,,,,,,,data-object,application/json,application/json,Update Cloud Cost Management Azure config +cloud_costs,v2,/api/v2/cost/gcp_uc_config/{cloud_account_id},patch,UpdateCostGCPUsageCostConfig,Cloud Cost Management,gcp_configs,update_cost_gcpusage_cost_config,update,,csv,,,,,,,data-object,application/json,application/json,Update Google Cloud Usage Cost config +dashboards,v2,/api/v2/powerpacks/{powerpack_id},patch,UpdatePowerpack,Powerpack,powerpacks,update_powerpack,update,,csv,,,,,,,data-object,application/json,application/json,Update a powerpack +digital_experience,v2,/api/v2/rum/applications/{id},patch,UpdateRUMApplication,RUM,rum_applications,update_rumapplication,update,,csv,,,,,,,data-object,application/json,application/json,Update a RUM application +digital_experience,v2,/api/v2/rum/config/metrics/{metric_id},patch,UpdateRumMetric,Rum Metrics,rum_metrics,update_rum_metric,update,,csv,,,,,,,data-object,application/json,application/json,Update a RUM-based metric +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/{rf_id},patch,UpdateRetentionFilter,Rum Retention Filters,rum_retention_filters,update_retention_filter,update,,csv,,,,,,,data-object,application/json,application/json,Update a RUM retention filter +infrastructure,v2,/api/v2/app-builder/apps/{app_id},patch,UpdateApp,App Builder,apps,update_app,update,,csv,,,,,,,data-object,application/json,application/json,Update App +infrastructure,v2,/api/v2/ndm/tags/devices/{device_id},patch,UpdateDeviceUserTags,Network Device Monitoring,device_user_tags,update_device_user_tags,update,,csv,,,,,,,data-object,application/json,application/json,Update the tags for a device +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id},patch,UpdateAWSAccount,AWS Integration,aws_accounts,update_awsaccount,update,,csv,,,,,,,data-object,application/json,application/json,Update an AWS integration +integrations,v2,/api/v2/integrations/cloudflare/accounts/{account_id},patch,UpdateCloudflareAccount,Cloudflare Integration,cloudflare_accounts,update_cloudflare_account,update,,csv,,,,,,,data-object,application/json,application/json,Update Cloudflare account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id},patch,UpdateConfluentAccount,Confluent Cloud,confluent_accounts,update_confluent_account,update,,csv,,,,,,,data-object,application/json,application/json,Update Confluent account +integrations,v2,/api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id},patch,UpdateConfluentResource,Confluent Cloud,confluent_resources,update_confluent_resource,update,,csv,,,,,,,data-object,application/json,application/json,Update resource in Confluent account +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id},patch,UpdateFastlyAccount,Fastly Integration,fastly_accounts,update_fastly_account,update,,csv,,,,,,,data-object,application/json,application/json,Update Fastly account +integrations,v2,/api/v2/integrations/fastly/accounts/{account_id}/services/{service_id},patch,UpdateFastlyService,Fastly Integration,fastly_services,update_fastly_service,update,,csv,,,,,,,data-object,application/json,application/json,Update Fastly service +integrations,v2,/api/v2/integration/gcp/accounts/{account_id},patch,UpdateGCPSTSAccount,GCP Integration,gcp_accounts,update_gcpstsaccount,update,,csv,,,,,,,data-object,application/json,application/json,Update STS Service Account +integrations,v2,/api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id},patch,UpdateTenantBasedHandle,Microsoft Teams Integration,ms_teams_tenant_based_handles,update_tenant_based_handle,update,,csv,,,,,,,data-object,application/json,application/json,Update tenant-based handle +integrations,v2,/api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id},patch,UpdateWorkflowsWebhookHandle,Microsoft Teams Integration,ms_teams_workflows_webhook_handles,update_workflows_webhook_handle,update,,csv,,,,,,,data-object,application/json,application/json,Update Workflows webhook handle +integrations,v2,/api/v2/integrations/okta/accounts/{account_id},patch,UpdateOktaAccount,Okta Integration,okta_accounts,update_okta_account,update,,csv,,,,,,,data-object,application/json,application/json,Update Okta account +integrations,v2,/api/v2/integration/opsgenie/services/{integration_service_id},patch,UpdateOpsgenieService,Opsgenie Integration,opsgenie_services,update_opsgenie_service,update,,csv,,,,,,,data-object,application/json,application/json,Update a single service object +logs,v2,/api/v2/logs/config/custom-destinations/{custom_destination_id},patch,UpdateLogsCustomDestination,Logs Custom Destinations,custom_destinations,update_logs_custom_destination,update,,csv,,,,,,,data-object,application/json,application/json,Update a custom destination +logs,v2,/api/v2/logs/config/metrics/{metric_id},patch,UpdateLogsMetric,Logs Metrics,metrics,update_logs_metric,update,,csv,,,,,,,data-object,application/json,application/json,Update a log-based metric +metrics,v2,/api/v2/metrics/{metric_name}/tags,patch,UpdateTagConfiguration,Metrics,tag_configurations,update_tag_configuration,update,,csv,,,,,,,data-object,application/json,application/json,Update a tag configuration +monitoring,v2,/api/v2/monitor/policy/{policy_id},patch,UpdateMonitorConfigPolicy,Monitors,config_policies,update_monitor_config_policy,update,,csv,,,,,,,data-object,application/json,application/json,Edit a monitor configuration policy +monitoring,v2,/api/v2/monitor/notification_rule/{rule_id},patch,UpdateMonitorNotificationRule,Monitors,notification_rules,update_monitor_notification_rule,update,,csv,,,,,,,data-object,application/json,application/json,Update a monitor notification rule +organization,v2,/api/v2/api_keys/{api_key_id},patch,UpdateAPIKey,Key Management,api_keys,update_apikey,update,,csv,,,,,,,data-object,application/json,application/json,Edit an API key +organization,v2,/api/v2/application_keys/{app_key_id},patch,UpdateApplicationKey,Key Management,application_keys,update_application_key,update,,csv,,,,,,,data-object,application/json,application/json,Edit an application key +organization,v2,/api/v2/authn_mappings/{authn_mapping_id},patch,UpdateAuthNMapping,AuthN Mappings,authn_mappings,update_auth_nmapping,update,,csv,,,,,,,data-object,application/json,application/json,Edit an AuthN Mapping +organization,v2,/api/v2/org_configs/{org_config_name},patch,UpdateOrgConfig,Organizations,configs,update_org_config,update,,csv,,,,,,,data-object,application/json,application/json,Update a specific Org Config +organization,v2,/api/v2/org_connections/{connection_id},patch,UpdateOrgConnections,Org Connections,connections,update_org_connections,update,,csv,,,,,,,data-object,application/json,application/json,Update Org Connection +organization,v2,/api/v2/current_user/application_keys/{app_key_id},patch,UpdateCurrentUserApplicationKey,Key Management,current_user_application_keys,update_current_user_application_key,update,,csv,,,,,,,data-object,application/json,application/json,Edit an application key owned by current user +organization,v2,/api/v2/domain_allowlist,patch,PatchDomainAllowlist,Domain Allowlist,domain_allowlist,patch_domain_allowlist,update,,csv,,,,,,,data-object,application/json,application/json,Sets Domain Allowlist +organization,v2,/api/v2/ip_allowlist,patch,UpdateIPAllowlist,IP Allowlist,ip_allowlist,update_ipallowlist,update,,csv,,,,,,,data-object,application/json,application/json,Update IP Allowlist +organization,v2,/api/v2/roles/{role_id},patch,UpdateRole,Roles,roles,update_role,update,,csv,,,,,,,data-object,application/json,application/json,Update a role +organization,v2,/api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id},patch,UpdateServiceAccountApplicationKey,Service Accounts,service_account_keys,update_service_account_application_key,update,,csv,,,,,,,data-object,application/json,application/json,Edit an application key for this service account +organization,v2,/api/v2/team/{team_id}/links/{link_id},patch,UpdateTeamLink,Teams,team_links,update_team_link,update,,csv,,,,,,,data-object,application/json,application/json,Update a team link +organization,v2,/api/v2/team/{team_id}/memberships/{user_id},patch,UpdateTeamMembership,Teams,team_memberships,update_team_membership,update,,csv,,,,,,,data-object,application/json,application/json,Update a user's membership attributes on a team +organization,v2,/api/v2/team/{team_id},patch,UpdateTeam,Teams,teams,update_team,update,,csv,,,,,,,data-object,application/json,application/json,Update a team +organization,v2,/api/v2/users/{user_id},patch,UpdateUser,Users,users,update_user,update,,csv,,,,,,,data-object,application/json,application/json,Update a user +remote_config,v2,/api/v2/remote_config/products/cws/policy/{policy_id},patch,UpdateCSMThreatsAgentPolicy,CSM Threats,csm_threats_agent_policies,update_csmthreats_agent_policy,update,,csv,,,,,,,data-object,application/json,application/json,Update a Workload Protection policy +remote_config,v2,/api/v2/remote_config/products/cws/agent_rules/{agent_rule_id},patch,UpdateCSMThreatsAgentRule,CSM Threats,csm_threats_agent_rules,update_csmthreats_agent_rule,update,,csv,,,,,,,data-object,application/json,application/json,Update a Workload Protection agent rule +security,v2,/api/v2/agentless_scanning/accounts/aws/{account_id},patch,UpdateAwsScanOptions,Agentless Scanning,aws_scan_options,update_aws_scan_options,update,,csv,,,,,,,none,application/json,,Update AWS scan options +security,v2,/api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id},patch,UpdateCloudWorkloadSecurityAgentRule,CSM Threats,cloud_workload_security_agent_rules,update_cloud_workload_security_agent_rule,update,,csv,,,,,,,data-object,application/json,application/json,Update a Workload Protection agent rule (US1-FED) +security,v2,/api/v2/security_monitoring/configuration/security_filters/{security_filter_id},patch,UpdateSecurityFilter,Security Monitoring,filters,update_security_filter,update,,csv,,,,,,,data-object,application/json,application/json,Update a security filter +security,v2,/api/v2/siem-historical-detections/jobs/{job_id}/cancel,patch,CancelHistoricalJob,Security Monitoring,historical_jobs,cancel_historical_job,update,,csv,,,true,,,,none,,,Cancel a historical job +security,v2,/api/v2/security_monitoring/configuration/suppressions/{suppression_id},patch,UpdateSecurityMonitoringSuppression,Security Monitoring,monitoring_suppressions,update_security_monitoring_suppression,update,,csv,,,,,,,data-object,application/json,application/json,Update a suppression rule +security,v2,/api/v2/sensitive-data-scanner/config/groups/{group_id},patch,UpdateScanningGroup,Sensitive Data Scanner,scanning_groups,update_scanning_group,update,,csv,,,,,,,object,application/json,application/json,Update Scanning Group +security,v2,/api/v2/sensitive-data-scanner/config/rules/{rule_id},patch,UpdateScanningRule,Sensitive Data Scanner,scanning_rules,update_scanning_rule,update,,csv,,,,,,,object,application/json,application/json,Update Scanning Rule +security,v2,/api/v2/security/signals/notification_rules/{id},patch,PatchSignalNotificationRule,Security Monitoring,signal_notification_rules,patch_signal_notification_rule,update,,csv,,,,,,,data-object,application/json,application/json,Patch a signal-based notification rule +security,v2,/api/v2/security/vulnerabilities/notification_rules/{id},patch,PatchVulnerabilityNotificationRule,Security Monitoring,vulnerability_notification_rules,patch_vulnerability_notification_rule,update,,csv,,,,,,,data-object,application/json,application/json,Patch a vulnerability-based notification rule +service_management,v2,/api/v2/downtime/{downtime_id},patch,UpdateDowntime,Downtimes,downtimes,update_downtime,update,,csv,,,,,,,data-object,application/json,application/json,Update a downtime +service_management,v2,/api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id},patch,UpdateIncidentIntegration,Incidents,incident_integrations,update_incident_integration,update,,csv,,,true,,,,data-object,application/json,application/json,Update an existing incident integration metadata +service_management,v2,/api/v2/incidents/config/notification-templates/{id},patch,UpdateIncidentNotificationTemplate,Incidents,incident_notification_templates,update_incident_notification_template,update,,csv,,,true,,,,data-object,application/json,application/json,Update incident notification template +service_management,v2,/api/v2/incidents/{incident_id}/relationships/todos/{todo_id},patch,UpdateIncidentTodo,Incidents,incident_todos,update_incident_todo,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident todo +service_management,v2,/api/v2/incidents/config/types/{incident_type_id},patch,UpdateIncidentType,Incidents,incident_types,update_incident_type,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident type +service_management,v2,/api/v2/incidents/{incident_id},patch,UpdateIncident,Incidents,incidents,update_incident,update,,csv,,,true,,,,data-object,application/json,application/json,Update an existing incident +software_delivery,v2,/api/v2/workflows/{workflow_id},patch,UpdateWorkflow,Workflow Automation,workflows,update_workflow,update,,csv,,,,,,,data-object,application/json,application/json,Update an existing Workflow +actions,v2,/api/v2/actions-datastores/{datastore_id}/items/bulk,delete,BulkDeleteDatastoreItems,Actions Datastores,actions_datastore_items,bulk_delete_datastore_items,delete,,csv,,,,,,,data-array,application/json,application/json,Bulk delete datastore items +actions,v2,/api/v2/actions/execution-policies,get,ListExecutionPolicies,Execution Policy,execution_policies,list_execution_policies,select,$.data,csv,,,true,,,,data-array,,application/json,List execution policies +actions,v2,/api/v2/actions/execution-policies,post,CreateExecutionPolicy,Execution Policy,execution_policies,create_execution_policy,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an execution policy +actions,v2,/api/v2/actions/execution-policies/{policy_id},delete,DeleteExecutionPolicy,Execution Policy,execution_policies,delete_execution_policy,delete,,csv,,,true,,,,none,,,Delete an execution policy +actions,v2,/api/v2/actions/execution-policies/{policy_id},get,GetExecutionPolicy,Execution Policy,execution_policies,get_execution_policy,select,$.data,csv,,,true,,,,data-object,,application/json,Get an execution policy +actions,v2,/api/v2/actions/execution-policies/{policy_id},put,UpdateExecutionPolicy,Execution Policy,execution_policies,update_execution_policy,replace,,csv,,,true,,,,data-object,application/json,application/json,Update an execution policy +apm,v2,/api/v2/apm/services,get,GetServiceList,APM,services,get_service_list,select,$.data,csv,,,,,,,data-object,,application/json,Get service list +apm,v2,/api/v2/pruned_trace/{trace_id},get,GetPrunedTraceByID,APM Trace,pruned_traces,get_pruned_trace_by_id,select,$.data,csv,,,true,,,,data-object,,application/json,Get a pruned trace by ID +apm,v2,/api/v2/scorecard/campaigns,get,ListScorecardCampaigns,Scorecards,scorecard_campaigns,list_scorecard_campaigns,select,$.data,csv,,,,,,,data-array,,application/json,List all campaigns +apm,v2,/api/v2/scorecard/campaigns,post,CreateScorecardCampaign,Scorecards,scorecard_campaigns,create_scorecard_campaign,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new campaign +apm,v2,/api/v2/scorecard/campaigns/{campaign_id},delete,DeleteScorecardCampaign,Scorecards,scorecard_campaigns,delete_scorecard_campaign,delete,,csv,,,,,,,none,,,Delete a campaign +apm,v2,/api/v2/scorecard/campaigns/{campaign_id},get,GetScorecardCampaign,Scorecards,scorecard_campaigns,get_scorecard_campaign,select,$.data,csv,,,,,,,data-object,,application/json,Get a campaign +apm,v2,/api/v2/scorecard/campaigns/{campaign_id},put,UpdateScorecardCampaign,Scorecards,scorecard_campaigns,update_scorecard_campaign,replace,,csv,,,,,,,data-object,application/json,application/json,Update a campaign +apm,v2,/api/v2/scorecard/outcomes,post,UpdateScorecardOutcomes,Scorecards,scorecard_outcomes,update_scorecard_outcomes,insert,,csv,,,,,,,none,application/json,,Update Scorecard outcomes +apm,v2,/api/v2/scorecard/scorecards,get,ListScorecards,Scorecards,scorecards,list_scorecards,select,$.data,csv,,,,,,,data-array,,application/json,List all scorecards +apm,v2,/api/v2/scorecard/scores/{aggregation},get,ListScorecardScores,Scorecards,scorecard_scores,list_scorecard_scores,select,$.data,csv,,,,,,,data-array,,application/json,List all scores +apm,v2,/api/v2/trace/{trace_id},get,GetTraceByID,APM Trace,traces,get_trace_by_id,select,$.data,csv,,,true,,,,data-object,,application/json,Get a trace by ID +catalog,v2,/api/v2/catalog/entity/preview,post,PreviewCatalogEntities,Software Catalog,catalog_entities,preview_catalog_entities,exec,,csv,,,,,,,data-array,,application/json,Preview catalog entities +cloud_costs,v2,/api/v2/cost/account_filters/{cloud_account_id},get,GetCostAccountFilters,Cloud Cost Management,account_filters,get_cost_account_filters,select,$.data,csv,,,,,,,data-object,,application/json,Get account filters +cloud_costs,v2,/api/v2/cost/account_filters/{cloud_account_id},patch,UpdateCostAccountFilters,Cloud Cost Management,account_filters,update_cost_account_filters,update,,csv,,,,,,,data-object,application/json,application/json,Update account filters +cloud_costs,v2,/api/v2/cost/anomalies,get,ListCostAnomalies,Cloud Cost Management,anomalies,list_cost_anomalies,select,$.data,csv,,,true,,,,data-object,,application/json,List cost anomalies +cloud_costs,v2,/api/v2/cost/anomalies/{anomaly_id},get,GetCostAnomaly,Cloud Cost Management,anomalies,get_cost_anomaly,select,$.data,csv,,,true,,,,data-object,,application/json,Get cost anomaly +cloud_costs,v2,/api/v2/cost/arbitrary_rule,get,ListCustomAllocationRules,Cloud Cost Management,arbitrary_rules,list_custom_allocation_rules,select,$.data,csv,,,,,,,data-array,,application/json,List custom allocation rules +cloud_costs,v2,/api/v2/cost/arbitrary_rule,post,CreateCustomAllocationRule,Cloud Cost Management,arbitrary_rules,create_custom_allocation_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create custom allocation rule +cloud_costs,v2,/api/v2/cost/arbitrary_rule/reorder,post,ReorderCustomAllocationRules,Cloud Cost Management,arbitrary_rules,reorder_custom_allocation_rules,exec,,csv,,,,,,,none,application/json,,Reorder custom allocation rules +cloud_costs,v2,/api/v2/cost/arbitrary_rule/status,get,ListCustomAllocationRulesStatus,Cloud Cost Management,arbitrary_rule_statuses,list_custom_allocation_rules_status,select,$.data,csv,,,,,,,data-array,,application/json,List custom allocation rule statuses +cloud_costs,v2,/api/v2/cost/arbitrary_rule/{rule_id},delete,DeleteCustomAllocationRule,Cloud Cost Management,arbitrary_rules,delete_custom_allocation_rule,delete,,csv,,,,,,,none,,,Delete custom allocation rule +cloud_costs,v2,/api/v2/cost/arbitrary_rule/{rule_id},get,GetCustomAllocationRule,Cloud Cost Management,arbitrary_rules,get_custom_allocation_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get custom allocation rule +cloud_costs,v2,/api/v2/cost/arbitrary_rule/{rule_id},patch,UpdateCustomAllocationRule,Cloud Cost Management,arbitrary_rules,update_custom_allocation_rule,update,,csv,,,,,,,data-object,application/json,application/json,Update custom allocation rule +cloud_costs,v2,/api/v2/cost/aws_cur_config/{cloud_account_id},get,GetCostAWSCURConfig,Cloud Cost Management,aws_cur_configs,get_cost_awscurconfig,select,$.data,csv,,,,,,,data-object,,application/json,Get cost AWS CUR config +cloud_costs,v2,/api/v2/cost/azure_uc_config/{cloud_account_id},get,GetCostAzureUCConfig,Cloud Cost Management,azure_uc_configs,get_cost_azure_ucconfig,select,$.data,csv,,,,,,,data-object,,application/json,Get cost Azure UC config +cloud_costs,v2,/api/v2/cost/budget/csv/validate,post,ValidateCsvBudget,Cloud Cost Management,budget_csvs,validate_csv_budget,exec,,csv,,,,,,,single-array:errors,,application/json,Validate CSV budget +cloud_costs,v2,/api/v2/cost/budget/custom-forecast,put,UpsertCustomForecast,Cloud Cost Management,budget_custom_forecasts,upsert_custom_forecast,replace,,csv,,,,,,,data-object,application/json,application/json,Create or replace a budget's custom forecast +cloud_costs,v2,/api/v2/cost/budget/validate,post,ValidateBudget,Cloud Cost Management,budgets,validate_budget,exec,,csv,,,,,,,data-object,application/json,application/json,Validate budget +cloud_costs,v2,/api/v2/cost/budget/{budget_id}/custom-forecast,delete,DeleteCustomForecast,Cloud Cost Management,budget_custom_forecasts,delete_custom_forecast,delete,,csv,,,,,,,none,,,Delete a budget's custom forecast +cloud_costs,v2,/api/v2/cost/budget/{budget_id}/custom-forecast,get,GetCustomForecast,Cloud Cost Management,budget_custom_forecasts,get_custom_forecast,select,$.data,csv,,,,,,,data-object,,application/json,Get a budget's custom forecast +cloud_costs,v2,/api/v2/cost/commitments/commitment-list,get,GetCommitmentsCommitmentList,Cloud Cost Management,commitments,get_commitments_commitment_list,select,$.commitments,csv,,,true,,,,single-array:commitments,,application/json,Get commitments list +cloud_costs,v2,/api/v2/cost/commitments/coverage/scalar,get,GetCommitmentsCoverageScalar,Cloud Cost Management,commitment_coverage_scalar,get_commitments_coverage_scalar,select,$.columns,csv,,,true,,,,single-array:columns,,application/json,Get commitments coverage (scalar) +cloud_costs,v2,/api/v2/cost/commitments/coverage/timeseries,get,GetCommitmentsCoverageTimeseries,Cloud Cost Management,commitment_coverage_timeseries,get_commitments_coverage_timeseries,select,,csv,,,true,,,,object,,application/json,Get commitments coverage (timeseries) +cloud_costs,v2,/api/v2/cost/commitments/on-demand-hot-spots/scalar,get,GetCommitmentsOnDemandHotspotsScalar,Cloud Cost Management,commitment_on_demand_hot_spot_scalar,get_commitments_on_demand_hotspots_scalar,select,,csv,,,true,,,,multi-array,,application/json,Get commitments on-demand hot spots (scalar) +cloud_costs,v2,/api/v2/cost/commitments/savings/scalar,get,GetCommitmentsSavingsScalar,Cloud Cost Management,commitment_saving_scalar,get_commitments_savings_scalar,select,$.columns,csv,,,true,,,,single-array:columns,,application/json,Get commitments savings (scalar) +cloud_costs,v2,/api/v2/cost/commitments/savings/timeseries,get,GetCommitmentsSavingsTimeseries,Cloud Cost Management,commitment_saving_timeseries,get_commitments_savings_timeseries,select,,csv,,,true,,,,object,,application/json,Get commitments savings (timeseries) +cloud_costs,v2,/api/v2/cost/commitments/utilization/scalar,get,GetCommitmentsUtilizationScalar,Cloud Cost Management,commitment_utilization_scalar,get_commitments_utilization_scalar,select,,csv,,,true,,,,multi-array,,application/json,Get commitments utilization (scalar) +cloud_costs,v2,/api/v2/cost/commitments/utilization/timeseries,get,GetCommitmentsUtilizationTimeseries,Cloud Cost Management,commitment_utilization_timeseries,get_commitments_utilization_timeseries,select,,csv,,,true,,,,object,,application/json,Get commitments utilization (timeseries) +cloud_costs,v2,/api/v2/cost/gcp_uc_config/{cloud_account_id},get,GetCostGCPUsageCostConfig,Cloud Cost Management,gcp_uc_configs,get_cost_gcpusage_cost_config,select,$.data,csv,,,,,,,data-object,,application/json,Get Google Cloud Usage Cost config +cloud_costs,v2,/api/v2/cost/oci_config,get,ListCostOCIConfigs,Cloud Cost Management,oci_configs,list_cost_ociconfigs,select,$.data,csv,,,,,,,data-array,,application/json,List Cloud Cost Management OCI configs +cloud_costs,v2,/api/v2/cost/recommendations,post,SearchCostRecommendations,Cloud Cost Management,recommendations,search_cost_recommendations,insert,,csv,,,true,,,,data-array,application/json,application/json,Search cost recommendations +cloud_costs,v2,/api/v2/cost/tag_descriptions,get,ListCostTagDescriptions,Cloud Cost Management,tag_descriptions,list_cost_tag_descriptions,select,$.data,csv,,,,,,,data-array,,application/json,List Cloud Cost Management tag descriptions +cloud_costs,v2,/api/v2/cost/tag_descriptions/{tag_key},delete,DeleteCostTagDescriptionByKey,Cloud Cost Management,tag_descriptions,delete_cost_tag_description_by_key,delete,,csv,,,,,,,none,,,Delete a Cloud Cost Management tag description +cloud_costs,v2,/api/v2/cost/tag_descriptions/{tag_key},get,GetCostTagDescriptionByKey,Cloud Cost Management,tag_descriptions,get_cost_tag_description_by_key,select,$.data,csv,,,,,,,data-object,,application/json,Get a Cloud Cost Management tag description +cloud_costs,v2,/api/v2/cost/tag_descriptions/{tag_key},put,UpsertCostTagDescriptionByKey,Cloud Cost Management,tag_descriptions,upsert_cost_tag_description_by_key,replace,,csv,,,,,,,none,application/json,,Upsert a Cloud Cost Management tag description +cloud_costs,v2,/api/v2/cost/tag_descriptions/{tag_key}/generate,get,GenerateCostTagDescriptionByKey,Cloud Cost Management,tag_descriptions,generate_cost_tag_description_by_key,exec,$.data,csv,,,,,,,data-object,,application/json,Generate a Cloud Cost Management tag description +cloud_costs,v2,/api/v2/cost/tag_keys,get,ListCostTagKeys,Cloud Cost Management,tag_keys,list_cost_tag_keys,select,$.data,csv,,,,,,,data-array,,application/json,List Cloud Cost Management tag keys +cloud_costs,v2,/api/v2/cost/tag_keys/{tag_key},get,GetCostTagKey,Cloud Cost Management,tag_keys,get_cost_tag_key,select,$.data,csv,,,,,,,data-object,,application/json,Get a Cloud Cost Management tag key +cloud_costs,v2,/api/v2/cost/tag_metadata,get,ListCostTagMetadata,Cloud Cost Management,tag_metadata,list_cost_tag_metadata,select,$.data,csv,,,true,,,,data-array,,application/json,List Cloud Cost Management tag key metadata +cloud_costs,v2,/api/v2/cost/tag_metadata/currency,get,GetCostTagMetadataCurrency,Cloud Cost Management,tag_metadatum_currencies,get_cost_tag_metadata_currency,select,$.data,csv,,,true,,,,data-array,,application/json,Get the Cloud Cost Management billing currency +cloud_costs,v2,/api/v2/cost/tag_metadata/metrics,get,ListCostTagMetadataMetrics,Cloud Cost Management,tag_metadatum_metrics,list_cost_tag_metadata_metrics,select,$.data,csv,,,true,,,,data-array,,application/json,List available Cloud Cost Management metrics +cloud_costs,v2,/api/v2/cost/tag_metadata/months,get,ListCostTagMetadataMonths,Cloud Cost Management,tag_metadatum_months,list_cost_tag_metadata_months,select,$.data,csv,,,true,,,,data-array,,application/json,List Cloud Cost Management tag metadata months +cloud_costs,v2,/api/v2/cost/tag_metadata/orchestrators,get,ListCostTagMetadataOrchestrators,Cloud Cost Management,tag_metadatum_orchestrators,list_cost_tag_metadata_orchestrators,select,$.data,csv,,,true,,,,data-array,,application/json,List Cloud Cost Management orchestrators +cloud_costs,v2,/api/v2/cost/tag_metadata/tag_sources,get,ListCostTagKeySources,Cloud Cost Management,tag_metadatum_tag_sources,list_cost_tag_key_sources,select,$.data,csv,,,true,,,,data-array,,application/json,List Cloud Cost Management tag sources +cloud_costs,v2,/api/v2/cost/tags,get,ListCostTags,Cloud Cost Management,tags,list_cost_tags,select,$.data,csv,,,,,,,data-array,,application/json,List Cloud Cost Management tags +cloud_costs,v2,/api/v2/tags/enrichment,get,ListTagPipelinesRulesets,Cloud Cost Management,tag_pipeline_rulesets,list_tag_pipelines_rulesets,select,$.data,csv,,,,,,,data-array,,application/json,List tag pipeline rulesets +cloud_costs,v2,/api/v2/tags/enrichment,post,CreateTagPipelinesRuleset,Cloud Cost Management,tag_pipeline_rulesets,create_tag_pipelines_ruleset,insert,,csv,,,,,,,data-object,application/json,application/json,Create tag pipeline ruleset +cloud_costs,v2,/api/v2/tags/enrichment/reorder,post,ReorderTagPipelinesRulesets,Cloud Cost Management,tag_pipeline_rulesets,reorder_tag_pipelines_rulesets,exec,,csv,,,,,,,none,application/json,,Reorder tag pipeline rulesets +cloud_costs,v2,/api/v2/tags/enrichment/status,get,ListTagPipelinesRulesetsStatus,Cloud Cost Management,tag_pipeline_ruleset_statuses,list_tag_pipelines_rulesets_status,select,$.data,csv,,,,,,,data-array,,application/json,List tag pipeline ruleset statuses +cloud_costs,v2,/api/v2/tags/enrichment/validate-query,post,ValidateQuery,Cloud Cost Management,tag_pipeline_rulesets,validate_query,exec,,csv,,,,,,,data-object,application/json,application/json,Validate query +cloud_costs,v2,/api/v2/tags/enrichment/{ruleset_id},delete,DeleteTagPipelinesRuleset,Cloud Cost Management,tag_pipeline_rulesets,delete_tag_pipelines_ruleset,delete,,csv,,,,,,,none,,,Delete tag pipeline ruleset +cloud_costs,v2,/api/v2/tags/enrichment/{ruleset_id},get,GetTagPipelinesRuleset,Cloud Cost Management,tag_pipeline_rulesets,get_tag_pipelines_ruleset,select,$.data,csv,,,,,,,data-object,,application/json,Get a tag pipeline ruleset +cloud_costs,v2,/api/v2/tags/enrichment/{ruleset_id},patch,UpdateTagPipelinesRuleset,Cloud Cost Management,tag_pipeline_rulesets,update_tag_pipelines_ruleset,update,,csv,,,,,,,data-object,application/json,application/json,Update tag pipeline ruleset +dashboards,v2,/api/v2/annotation,get,ListAnnotations,Annotations,annotations,list_annotations,select,$.data,csv,,,true,,,,data-array,,application/json,List annotations +dashboards,v2,/api/v2/annotation,post,CreateAnnotation,Annotations,annotations,create_annotation,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an annotation +dashboards,v2,/api/v2/annotation/page/{page_id},get,GetPageAnnotations,Annotations,annotation_pages,get_page_annotations,select,$.data,csv,,,true,,,,data-object,,application/json,Get annotations for a page +dashboards,v2,/api/v2/annotation/{annotation_id},delete,DeleteAnnotation,Annotations,annotations,delete_annotation,delete,,csv,,,true,,,,none,,,Delete an annotation +dashboards,v2,/api/v2/annotation/{annotation_id},put,UpdateAnnotation,Annotations,annotations,update_annotation,replace,,csv,,,true,,,,data-object,application/json,application/json,Update an annotation +dashboards,v2,/api/v2/dashboard/{dashboard_id}/shared,get,ListSharedDashboardsByDashboardId,Dashboard Sharing,shared_dashboards,list_shared_dashboards_by_dashboard_id,select,$.data,csv,,,true,,,,data-array,,application/json,List shared dashboards for a dashboard +dashboards,v2,/api/v2/dashboard/{dashboard_id}/shared/secure-embed,post,CreateDashboardSecureEmbed,Dashboard Secure Embed,shared_secure_embeds,create_dashboard_secure_embed,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a secure embed for a dashboard +dashboards,v2,/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token},delete,DeleteDashboardSecureEmbed,Dashboard Secure Embed,shared_secure_embeds,delete_dashboard_secure_embed,delete,,csv,,,true,,,,none,,,Delete a secure embed for a dashboard +dashboards,v2,/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token},get,GetDashboardSecureEmbed,Dashboard Secure Embed,shared_secure_embeds,get_dashboard_secure_embed,select,$.data,csv,,,true,,,,data-object,,application/json,Get a secure embed for a dashboard +dashboards,v2,/api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token},patch,UpdateDashboardSecureEmbed,Dashboard Secure Embed,shared_secure_embeds,update_dashboard_secure_embed,update,,csv,,,true,,,,data-object,application/json,application/json,Update a secure embed for a dashboard +dashboards,v2,/api/v2/dashboards/usage,get,ListDashboardsUsage,Dashboards,dashboard_usage,list_dashboards_usage,select,$.data,csv,,,true,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,Get usage stats for all dashboards +dashboards,v2,/api/v2/dashboards/{dashboard_id}/usage,get,GetDashboardUsage,Dashboards,dashboard_usage,get_dashboard_usage,select,$.data,csv,,,true,,,,data-object,,application/json,Get usage stats for a dashboard +dashboards,v2,/api/v2/reporting/dataset/{dataset_id}/schedules,get,ListDatasetReportSchedules,Report Schedules,report_dataset_schedules,list_dataset_report_schedules,select,$.data,csv,,,,,,,data-array,,application/json,List dataset report schedules +dashboards,v2,/api/v2/reporting/print,post,PrintReport,Report Schedules,reports,print_report,exec,,csv,,,,,,,data-object,application/json,application/json,Print a report +dashboards,v2,/api/v2/reporting/schedule,post,CreateReportSchedule,Report Schedules,report_schedules,create_report_schedule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a report schedule +dashboards,v2,/api/v2/reporting/schedule/list,get,ListReportSchedules,Report Schedules,report_schedules,list_report_schedules,select,$.data,csv,,,,,,,data-array,,application/json,List report schedules +dashboards,v2,/api/v2/reporting/schedule/{resource_type}/{resource_id},get,GetReportSchedulesForResource,Report Schedules,report_schedules,get_report_schedules_for_resource,select,$.data,csv,,,,,,,data-array,,application/json,Get report schedules for a resource +dashboards,v2,/api/v2/reporting/schedule/{schedule_uuid},delete,DeleteReportSchedule,Report Schedules,report_schedules,delete_report_schedule,delete,,csv,,,,,,,data-object,,application/json,Delete a report schedule +dashboards,v2,/api/v2/reporting/schedule/{schedule_uuid},get,GetReportSchedule,Report Schedules,report_schedules,get_report_schedule,select,$.data,csv,,,,,,,data-object,,application/json,Get a report schedule +dashboards,v2,/api/v2/reporting/schedule/{schedule_uuid},patch,PatchReportSchedule,Report Schedules,report_schedules,patch_report_schedule,update,,csv,,,true,,,,data-object,application/json,application/json,Update a report schedule +dashboards,v2,/api/v2/reporting/schedule/{schedule_uuid}/toggle,patch,ToggleReportSchedule,Report Schedules,report_schedules,toggle_report_schedule,exec,,csv,,,,,,,data-object,application/json,application/json,Toggle a report schedule +dashboards,v2,/api/v2/snapshot,post,CreateSnapshot,Reporting And Sharing,graph_snapshots,create_snapshot,exec,,csv,,,true,,,,data-object,application/json,application/json,Create a graph snapshot +dashboards,v2,/api/v2/stegadography/get-widgets,post,GetStegadographyWidgets,Stegadography,skip_this_resource,,,,skip,multipart_request,,,,,,data-array,multipart/form-data,application/json,Get widgets from an image +dashboards,v2,/api/v2/widgets/{experience_type},get,SearchWidgets,Widgets,widgets,search_widgets,select,$.data,csv,,,,,,,data-array,,application/json,Search widgets +dashboards,v2,/api/v2/widgets/{experience_type},post,CreateWidget,Widgets,widgets,create_widget,insert,,csv,,,,,,,data-object,application/json,application/json,Create a widget +dashboards,v2,/api/v2/widgets/{experience_type}/{uuid},delete,DeleteWidget,Widgets,widgets,delete_widget,delete,,csv,,,,,,,none,,,Delete a widget +dashboards,v2,/api/v2/widgets/{experience_type}/{uuid},get,GetWidget,Widgets,widgets,get_widget,select,$.data,csv,,,,,,,data-object,,application/json,Get a widget +dashboards,v2,/api/v2/widgets/{experience_type}/{uuid},put,UpdateWidget,Widgets,widgets,update_widget,replace,,csv,,,,,,,data-object,application/json,application/json,Update a widget +dashboards,v1,/api/v1/dashboard,delete,DeleteDashboards,Dashboards,dashboards,delete_dashboards,delete,,csv,,,,,,,none,application/json,,Delete dashboards +dashboards,v1,/api/v1/dashboard,get,ListDashboards,Dashboards,dashboards,list_dashboards,select,$.dashboards,csv,,,,,,"{""limitParam"":""count"",""pageOffsetParam"":""start"",""resultsPath"":""dashboards""}",single-array:dashboards,,application/json,Get all dashboards +dashboards,v1,/api/v1/dashboard,patch,RestoreDashboards,Dashboards,dashboards,restore_dashboards,update,,csv,,,,,,,none,application/json,,Restore deleted dashboards +dashboards,v1,/api/v1/dashboard,post,CreateDashboard,Dashboards,dashboards,create_dashboard,insert,,csv,,,,,,,multi-array,application/json,application/json,Create a new dashboard +dashboards,v1,/api/v1/dashboard/lists/manual,get,ListDashboardLists,Dashboard Lists,dashboard_lists,list_dashboard_lists,select,$.dashboard_lists,csv,,,,,,,single-array:dashboard_lists,,application/json,Get all dashboard lists +dashboards,v1,/api/v1/dashboard/lists/manual,post,CreateDashboardList,Dashboard Lists,dashboard_lists,create_dashboard_list,insert,,csv,,,,,,,object,application/json,application/json,Create a dashboard list +dashboards,v1,/api/v1/dashboard/lists/manual/{list_id},delete,DeleteDashboardList,Dashboard Lists,dashboard_lists,delete_dashboard_list,delete,,csv,,,,,,,object,,application/json,Delete a dashboard list +dashboards,v1,/api/v1/dashboard/lists/manual/{list_id},get,GetDashboardList,Dashboard Lists,dashboard_lists,get_dashboard_list,select,,csv,,,,,,,object,,application/json,Get a dashboard list +dashboards,v1,/api/v1/dashboard/lists/manual/{list_id},put,UpdateDashboardList,Dashboard Lists,dashboard_lists,update_dashboard_list,replace,,csv,,,,,,,object,application/json,application/json,Update a dashboard list +dashboards,v1,/api/v1/dashboard/public,post,CreatePublicDashboard,Dashboards,shared_dashboards,create_public_dashboard,insert,,csv,,,,,,,multi-array,application/json,application/json,Create a shared dashboard +dashboards,v1,/api/v1/dashboard/public/{token},delete,DeletePublicDashboard,Dashboards,shared_dashboards,delete_public_dashboard,delete,,csv,,,,,,,object,,application/json,Revoke a shared dashboard URL +dashboards,v1,/api/v1/dashboard/public/{token},get,GetPublicDashboard,Dashboards,shared_dashboards,get_public_dashboard,select,,csv,,,,,,,multi-array,,application/json,Get a shared dashboard +dashboards,v1,/api/v1/dashboard/public/{token},put,UpdatePublicDashboard,Dashboards,shared_dashboards,update_public_dashboard,replace,,csv,,,,,,,multi-array,application/json,application/json,Update a shared dashboard +dashboards,v1,/api/v1/dashboard/public/{token}/invitation,delete,DeletePublicDashboardInvitation,Dashboards,shared_dashboard_invitations,delete_public_dashboard_invitation,delete,,csv,,,,,,,none,application/json,,Revoke shared dashboard invitations +dashboards,v1,/api/v1/dashboard/public/{token}/invitation,get,GetPublicDashboardInvitations,Dashboards,shared_dashboard_invitations,get_public_dashboard_invitations,select,$.data,csv,,,,,,,data-object,,application/json,Get all invitations for a shared dashboard +dashboards,v1,/api/v1/dashboard/public/{token}/invitation,post,SendPublicDashboardInvitation,Dashboards,shared_dashboard_invitations,send_public_dashboard_invitation,insert,,csv,,,,,,,data-object,application/json,application/json,Send shared dashboard invitation email +dashboards,v1,/api/v1/dashboard/{dashboard_id},delete,DeleteDashboard,Dashboards,dashboards,delete_dashboard,delete,,csv,,,,,,,object,,application/json,Delete a dashboard +dashboards,v1,/api/v1/dashboard/{dashboard_id},get,GetDashboard,Dashboards,dashboards,get_dashboard,select,,csv,,,,,,,multi-array,,application/json,Get a dashboard +dashboards,v1,/api/v1/dashboard/{dashboard_id},put,UpdateDashboard,Dashboards,dashboards,update_dashboard,replace,,csv,,,,,,,multi-array,application/json,application/json,Update a dashboard +dashboards,v1,/api/v1/graph/snapshot,get,GetGraphSnapshot,Snapshots,graph_snapshots,get_graph_snapshot,select,,csv,,,,,,,object,,application/json,Take graph snapshots +dashboards,v1,/api/v1/notebooks,get,ListNotebooks,Notebooks,notebooks,list_notebooks,select,$.data,csv,,,,,,"{""limitParam"":""count"",""pageOffsetParam"":""start"",""resultsPath"":""data""}",data-array,,application/json,Get all notebooks +dashboards,v1,/api/v1/notebooks,post,CreateNotebook,Notebooks,notebooks,create_notebook,insert,,csv,,,,,,,data-object,application/json,application/json,Create a notebook +dashboards,v1,/api/v1/notebooks/{notebook_id},delete,DeleteNotebook,Notebooks,notebooks,delete_notebook,delete,,csv,,,,,,,none,,,Delete a notebook +dashboards,v1,/api/v1/notebooks/{notebook_id},get,GetNotebook,Notebooks,notebooks,get_notebook,select,$.data,csv,,,,,,,data-object,,application/json,Get a notebook +dashboards,v1,/api/v1/notebooks/{notebook_id},put,UpdateNotebook,Notebooks,notebooks,update_notebook,replace,,csv,,,,,,,data-object,application/json,application/json,Update a notebook +digital_experience,v2,/api/v2/prodlytics,post,SubmitProductAnalyticsEvent,Product Analytics,product_analytics_events,submit_product_analytics_event,exec,,csv,,,,,,,object,application/json,application/json,Send server-side events +digital_experience,v2,/api/v2/product-analytics/accounts/facet_info,post,GetAccountFacetInfo,Rum Audience Management,product_analytics_accounts,get_account_facet_info,exec,,csv,,,true,,,,data-object,application/json,application/json,Get account facet info +digital_experience,v2,/api/v2/product-analytics/accounts/query,post,QueryAccounts,Rum Audience Management,product_analytics_accounts,query_accounts,exec,,csv,,,true,,,,data-object,application/json,application/json,Query accounts +digital_experience,v2,/api/v2/product-analytics/analytics/list,post,QueryProductAnalyticsList,Product Analytics,product_analytics,query_product_analytics_list,exec,,csv,,,true,,,,data-object,application/json,application/json,List analytics events +digital_experience,v2,/api/v2/product-analytics/analytics/scalar,post,QueryProductAnalyticsScalar,Product Analytics,product_analytics,query_product_analytics_scalar,exec,,csv,,,,,,,data-object,application/json,application/json,Compute scalar analytics +digital_experience,v2,/api/v2/product-analytics/analytics/timeseries,post,QueryProductAnalyticsTimeseries,Product Analytics,product_analytics,query_product_analytics_timeseries,exec,,csv,,,,,,,data-object,application/json,application/json,Compute timeseries analytics +digital_experience,v2,/api/v2/product-analytics/journey/funnel,post,QueryProductAnalyticsJourneyFunnel,Product Analytics,product_analytics_journey_funnels,query_product_analytics_journey_funnel,insert,,csv,,,true,,,,data-object,application/json,application/json,Compute journey funnel analysis +digital_experience,v2,/api/v2/product-analytics/journey/list,post,QueryProductAnalyticsJourneyList,Product Analytics,product_analytics_journeys,query_product_analytics_journey_list,exec,,csv,,,true,,,,data-object,application/json,application/json,List journey entities +digital_experience,v2,/api/v2/product-analytics/journey/scalar,post,QueryProductAnalyticsJourneyScalar,Product Analytics,product_analytics_journeys,query_product_analytics_journey_scalar,exec,,csv,,,true,,,,data-object,application/json,application/json,Compute journey scalar analytics +digital_experience,v2,/api/v2/product-analytics/journey/timeseries,post,QueryProductAnalyticsJourneyTimeseries,Product Analytics,product_analytics_journeys,query_product_analytics_journey_timeseries,exec,,csv,,,true,,,,data-object,application/json,application/json,Compute journey timeseries analytics +digital_experience,v2,/api/v2/product-analytics/retention/grid,post,QueryProductAnalyticsRetentionGrid,Product Analytics,product_analytics_retention_grids,query_product_analytics_retention_grid,insert,,csv,,,true,,,,data-object,application/json,application/json,Compute a retention grid +digital_experience,v2,/api/v2/product-analytics/retention/list,post,QueryProductAnalyticsRetentionList,Product Analytics,product_analytics_retentions,query_product_analytics_retention_list,exec,,csv,,,true,,,,data-object,application/json,application/json,List the entities behind a retention cell +digital_experience,v2,/api/v2/product-analytics/retention/scalar,post,QueryProductAnalyticsRetentionScalar,Product Analytics,product_analytics_retentions,query_product_analytics_retention_scalar,exec,,csv,,,true,,,,data-object,application/json,application/json,Compute retention scalar values +digital_experience,v2,/api/v2/product-analytics/retention/timeseries,post,QueryProductAnalyticsRetentionTimeseries,Product Analytics,product_analytics_retentions,query_product_analytics_retention_timeseries,exec,,csv,,,true,,,,data-object,application/json,application/json,Compute retention timeseries +digital_experience,v2,/api/v2/product-analytics/sankey,post,QueryProductAnalyticsSankey,Product Analytics,product_analytics_sankeys,query_product_analytics_sankey,insert,,csv,,,true,,,,data-object,application/json,application/json,Compute a Sankey diagram +digital_experience,v2,/api/v2/product-analytics/users/event_filtered_query,post,QueryEventFilteredUsers,Rum Audience Management,product_analytics_user_event_filtered_queries,query_event_filtered_users,insert,,csv,,,true,,,,data-object,application/json,application/json,Query event filtered users +digital_experience,v2,/api/v2/product-analytics/users/facet_info,post,GetUserFacetInfo,Rum Audience Management,product_analytics_users,get_user_facet_info,exec,,csv,,,true,,,,data-object,application/json,application/json,Get user facet info +digital_experience,v2,/api/v2/product-analytics/users/query,post,QueryUsers,Rum Audience Management,product_analytics_users,query_users,exec,,csv,,,true,,,,data-object,application/json,application/json,Query users +digital_experience,v2,/api/v2/product-analytics/{entity}/mapping,get,GetMapping,Rum Audience Management,product_analytics_mappings,get_mapping,select,$.data,csv,,,true,,,,data-object,,application/json,Get mapping +digital_experience,v2,/api/v2/product-analytics/{entity}/mapping/connection,post,CreateConnection,Rum Audience Management,product_analytics_mapping_connections,create_connection,insert,,csv,,,true,,,,none,application/json,,Create connection +digital_experience,v2,/api/v2/product-analytics/{entity}/mapping/connection,put,UpdateConnection,Rum Audience Management,product_analytics_mapping_connections,update_connection,replace,,csv,,,true,,,,none,application/json,,Update connection +digital_experience,v2,/api/v2/product-analytics/{entity}/mapping/connection/{id},delete,DeleteConnection,Rum Audience Management,product_analytics_mapping_connections,delete_connection,delete,,csv,,,true,,,,none,,,Delete connection +digital_experience,v2,/api/v2/product-analytics/{entity}/mapping/connections,get,ListConnections,Rum Audience Management,product_analytics_mapping_connections,list_connections,select,$.data,csv,,,true,,,,data-object,,application/json,List connections +digital_experience,v2,/api/v2/replay/heatmap/snapshots,get,ListReplayHeatmapSnapshots,Rum Replay Heatmaps,replay_heatmap_snapshots,list_replay_heatmap_snapshots,select,$.data,csv,,,,,,,data-array,,application/json,List replay heatmap snapshots +digital_experience,v2,/api/v2/replay/heatmap/snapshots,post,CreateReplayHeatmapSnapshot,Rum Replay Heatmaps,replay_heatmap_snapshots,create_replay_heatmap_snapshot,insert,,csv,,,,,,,data-object,application/json,application/json,Create replay heatmap snapshot +digital_experience,v2,/api/v2/replay/heatmap/snapshots/{snapshot_id},delete,DeleteReplayHeatmapSnapshot,Rum Replay Heatmaps,replay_heatmap_snapshots,delete_replay_heatmap_snapshot,delete,,csv,,,,,,,none,,,Delete replay heatmap snapshot +digital_experience,v2,/api/v2/replay/heatmap/snapshots/{snapshot_id},patch,UpdateReplayHeatmapSnapshot,Rum Replay Heatmaps,replay_heatmap_snapshots,update_replay_heatmap_snapshot,update,,csv,,,,,,,data-object,application/json,application/json,Update replay heatmap snapshot +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/exclusion,get,ListExclusionFilters,Rum Retention Filters,rum_application_retention_filter_exclusions,list_exclusion_filters,select,$.data,csv,,,true,,,,data-array,,application/json,Get all RUM exclusion filters +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/exclusion,post,CreateExclusionFilter,Rum Retention Filters,rum_application_retention_filter_exclusions,create_exclusion_filter,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a RUM exclusion filter +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id},delete,DeleteExclusionFilter,Rum Retention Filters,rum_application_retention_filter_exclusions,delete_exclusion_filter,delete,,csv,,,true,,,,none,,,Delete a RUM exclusion filter +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id},get,GetExclusionFilter,Rum Retention Filters,rum_application_retention_filter_exclusions,get_exclusion_filter,select,$.data,csv,,,true,,,,data-object,,application/json,Get a RUM exclusion filter +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id},patch,UpdateExclusionFilter,Rum Retention Filters,rum_application_retention_filter_exclusions,update_exclusion_filter,update,,csv,,,true,,,,data-object,application/json,application/json,Update a RUM exclusion filter +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/permanent,get,ListPermanentRetentionFilters,Rum Retention Filters,rum_application_retention_filter_permanents,list_permanent_retention_filters,select,$.data,csv,,,,,,,data-array,,application/json,Get all permanent RUM retention filters +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/permanent/{permanent_rf_id},get,GetPermanentRetentionFilter,Rum Retention Filters,rum_application_retention_filter_permanents,get_permanent_retention_filter,select,$.data,csv,,,,,,,data-object,,application/json,Get a permanent RUM retention filter +digital_experience,v2,/api/v2/rum/applications/{app_id}/retention_filters/permanent/{permanent_rf_id},patch,UpdatePermanentRetentionFilter,Rum Retention Filters,rum_application_retention_filter_permanents,update_permanent_retention_filter,update,,csv,,,,,,,data-object,application/json,application/json,Update a permanent RUM retention filter +digital_experience,v2,/api/v2/rum/config,get,GetRumConfig,RUM Config,rum_configs,get_rum_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get the RUM configuration +digital_experience,v2,/api/v2/rum/config,patch,UpdateRumConfig,RUM Config,rum_configs,update_rum_config,update,,csv,,,true,,,,data-object,application/json,application/json,Update the RUM configuration +digital_experience,v2,/api/v2/rum/config,post,CreateRumConfig,RUM Config,rum_configs,create_rum_config,insert,,csv,,,true,,,,data-object,application/json,application/json,Create the RUM configuration +digital_experience,v2,/api/v2/rum/config/retention-quota/{scope_type}/{scope_id},delete,DeleteRumQuotaConfig,RUM Retention Quotas,rum_retention_quotas,delete_rum_quota_config,delete,,csv,,,,,,,none,,,Delete a RUM retention quota configuration +digital_experience,v2,/api/v2/rum/config/retention-quota/{scope_type}/{scope_id},get,GetRumQuotaConfig,RUM Retention Quotas,rum_retention_quotas,get_rum_quota_config,select,$.data,csv,,,,,,,data-object,,application/json,Get a RUM retention quota configuration +digital_experience,v2,/api/v2/rum/config/retention-quota/{scope_type}/{scope_id},put,UpsertRumQuotaConfig,RUM Retention Quotas,rum_retention_quotas,upsert_rum_quota_config,replace,,csv,,,,,,,data-object,application/json,application/json,Create or update a RUM retention quota config +digital_experience,v2,/api/v2/rum/config/teams-ownership/mappings,get,ListTeamsOwnershipMappings,Rum Teams Ownership,rum_teams_ownership_mappings,list_teams_ownership_mappings,select,$.data,csv,,,true,,,,data-array,,application/json,List teams ownership mappings +digital_experience,v2,/api/v2/rum/config/teams-ownership/mappings,post,CreateTeamsOwnershipMapping,Rum Teams Ownership,rum_teams_ownership_mappings,create_teams_ownership_mapping,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a teams ownership mapping +digital_experience,v2,/api/v2/rum/config/teams-ownership/mappings/operations,post,CreateTeamsOwnershipMappingsBatch,Rum Teams Ownership,rum_teams_ownership_mapping_operations,create_teams_ownership_mappings_batch,insert,,csv,,,true,,,,multi-array,application/json,application/json,Bulk create and remove teams ownership mappings +digital_experience,v2,/api/v2/rum/config/teams-ownership/mappings/{id},delete,DeleteTeamsOwnershipMapping,Rum Teams Ownership,rum_teams_ownership_mappings,delete_teams_ownership_mapping,delete,,csv,,,true,,,,none,,,Delete a teams ownership mapping +digital_experience,v2,/api/v2/rum/config/teams-ownership/mappings/{id},get,GetTeamsOwnershipMapping,Rum Teams Ownership,rum_teams_ownership_mappings,get_teams_ownership_mapping,select,$.data,csv,,,true,,,,data-object,,application/json,Get a teams ownership mapping +digital_experience,v2,/api/v2/rum/config/teams-ownership/rules,get,ListTeamsOwnershipRules,Rum Teams Ownership,rum_teams_ownership_rules,list_teams_ownership_rules,select,$.data,csv,,,true,,,,data-array,,application/json,List teams ownership rules +digital_experience,v2,/api/v2/rum/operations,post,CreateRUMOperation,RUM Operations,rum_operations,create_rumoperation,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a RUM operation +digital_experience,v2,/api/v2/rum/operations/by-name/{name},get,GetRUMOperationByName,RUM Operations,rum_operation_by_names,get_rumoperation_by_name,select,$.data,csv,,,true,,,,data-object,,application/json,Get a RUM operation by name +digital_experience,v2,/api/v2/rum/operations/search,get,ListRUMOperations,RUM Operations,rum_operations,list_rumoperations,select,$.data,csv,,,true,,,,data-array,,application/json,Search RUM operations +digital_experience,v2,/api/v2/rum/operations/strong_links,get,ListRUMOperationStrongLinks,RUM Operations,rum_operation_strong_links,list_rumoperation_strong_links,select,$.data,csv,,,,,,,data-array,,application/json,List RUM operation strong links +digital_experience,v2,/api/v2/rum/operations/strong_links,post,CreateRUMOperationStrongLink,RUM Operations,rum_operation_strong_links,create_rumoperation_strong_link,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a RUM operation strong link +digital_experience,v2,/api/v2/rum/operations/strong_links/{rum_operation_id}/{feature_id},delete,DeleteRUMOperationStrongLink,RUM Operations,rum_operation_strong_links,delete_rumoperation_strong_link,delete,,csv,,,true,,,,none,,,Delete a RUM operation strong link +digital_experience,v2,/api/v2/rum/operations/strong_links/{rum_operation_id}/{feature_id},put,UpdateRUMOperationStrongLink,RUM Operations,rum_operation_strong_links,update_rumoperation_strong_link,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a RUM operation strong link +digital_experience,v2,/api/v2/rum/operations/{rum_operation_id},delete,DeleteRUMOperation,RUM Operations,rum_operations,delete_rumoperation,delete,,csv,,,true,,,,none,,,Delete a RUM operation +digital_experience,v2,/api/v2/rum/operations/{rum_operation_id},get,GetRUMOperation,RUM Operations,rum_operations,get_rumoperation,select,$.data,csv,,,true,,,,data-object,,application/json,Get a RUM operation +digital_experience,v2,/api/v2/rum/operations/{rum_operation_id},put,UpdateRUMOperation,RUM Operations,rum_operations,update_rumoperation,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a RUM operation +digital_experience,v2,/api/v2/rum/query/insight/aggregated_long_tasks,post,QueryAggregatedLongTasks,RUM Insights,rum_query_insight_aggregated_long_tasks,query_aggregated_long_tasks,insert,,csv,,,true,,,,data-object,application/json,application/json,Query aggregated long tasks +digital_experience,v2,/api/v2/rum/query/insight/aggregated_signals_problems,post,QueryAggregatedSignalsProblems,RUM Insights,rum_query_insight_aggregated_signals_problems,query_aggregated_signals_problems,insert,,csv,,,true,,,,data-object,application/json,application/json,Query aggregated signals and problems +digital_experience,v2,/api/v2/rum/query/insight/aggregated_waterfall,post,QueryAggregatedWaterfall,RUM Insights,rum_query_insight_aggregated_waterfalls,query_aggregated_waterfall,insert,,csv,,,true,,,,data-object,application/json,application/json,Query aggregated waterfall +digital_experience,v2,/api/v2/rum/replay/playlists,get,ListRumReplayPlaylists,Rum Replay Playlists,rum_replay_playlists,list_rum_replay_playlists,select,$.data,csv,,,,,,,data-array,,application/json,List RUM replay playlists +digital_experience,v2,/api/v2/rum/replay/playlists,post,CreateRumReplayPlaylist,Rum Replay Playlists,rum_replay_playlists,create_rum_replay_playlist,insert,,csv,,,,,,,data-object,application/json,application/json,Create RUM replay playlist +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id},delete,DeleteRumReplayPlaylist,Rum Replay Playlists,rum_replay_playlists,delete_rum_replay_playlist,delete,,csv,,,,,,,none,,,Delete RUM replay playlist +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id},get,GetRumReplayPlaylist,Rum Replay Playlists,rum_replay_playlists,get_rum_replay_playlist,select,$.data,csv,,,,,,,data-object,,application/json,Get RUM replay playlist +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id},put,UpdateRumReplayPlaylist,Rum Replay Playlists,rum_replay_playlists,update_rum_replay_playlist,replace,,csv,,,,,,,data-object,application/json,application/json,Update RUM replay playlist +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id}/sessions,delete,BulkRemoveRumReplayPlaylistSessions,Rum Replay Playlists,rum_replay_playlist_sessions,bulk_remove_rum_replay_playlist_sessions,delete,,csv,,,,,,,none,application/json,,Bulk remove RUM replay playlist sessions +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id}/sessions,get,ListRumReplayPlaylistSessions,Rum Replay Playlists,rum_replay_playlist_sessions,list_rum_replay_playlist_sessions,select,$.data,csv,,,,,,,data-array,,application/json,List RUM replay playlist sessions +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id}/sessions/{session_id},delete,RemoveRumReplaySessionFromPlaylist,Rum Replay Playlists,rum_replay_playlist_sessions,remove_rum_replay_session_from_playlist,delete,,csv,,,,,,,none,,,Remove RUM replay session from playlist +digital_experience,v2,/api/v2/rum/replay/playlists/{playlist_id}/sessions/{session_id},put,AddRumReplaySessionToPlaylist,Rum Replay Playlists,rum_replay_playlist_sessions,add_rum_replay_session_to_playlist,replace,,csv,,,,,,,data-object,,application/json,Add RUM replay session to playlist +digital_experience,v2,/api/v2/rum/replay/sessions/{session_id}/views/{view_id}/segments,get,GetSegments,Rum Replay Sessions,rum_replay_session_view_segments,get_segments,exec,,csv,,,,,,,none,,,Get segments +digital_experience,v2,/api/v2/rum/replay/sessions/{session_id}/watchers,get,ListRumReplaySessionWatchers,Rum Replay Viewership,rum_replay_session_watchers,list_rum_replay_session_watchers,select,$.data,csv,,,,,,,data-array,,application/json,List RUM replay session watchers +digital_experience,v2,/api/v2/rum/replay/sessions/{session_id}/watches,delete,DeleteRumReplaySessionWatch,Rum Replay Viewership,rum_replay_session_watches,delete_rum_replay_session_watch,delete,,csv,,,,,,,none,,,Delete RUM replay session watch +digital_experience,v2,/api/v2/rum/replay/sessions/{session_id}/watches,post,CreateRumReplaySessionWatch,Rum Replay Viewership,rum_replay_session_watches,create_rum_replay_session_watch,insert,,csv,,,,,,,data-object,application/json,application/json,Create RUM replay session watch +digital_experience,v2,/api/v2/rum/replay/viewership-history/sessions,get,ListRumReplayViewershipHistorySessions,Rum Replay Viewership,rum_replay_viewership_history_sessions,list_rum_replay_viewership_history_sessions,select,$.data,csv,,,,,,,data-array,,application/json,List RUM replay viewership history sessions +digital_experience,v2,/api/v2/sourcemaps,delete,DeleteSourcemaps,RUM,sourcemaps,delete_sourcemaps,delete,,csv,,,true,,,,data-array,,application/json,Delete source maps +digital_experience,v2,/api/v2/sourcemaps,get,GetSourcemaps,RUM,sourcemaps,get_sourcemaps,select,$.data,csv,,,true,,,,data-object,,application/json,Get a JavaScript source map +digital_experience,v2,/api/v2/sourcemaps/list,get,ListSourcemaps,RUM,sourcemaps,list_sourcemaps,select,$.data,csv,,,true,,,,data-array,,application/json,List source maps +digital_experience,v2,/api/v2/sourcemaps/restore,patch,RestoreSourcemaps,RUM,sourcemaps,restore_sourcemaps,exec,,csv,,,true,,,,data-array,,application/json,Restore source maps +digital_experience,v2,/api/v2/sourcemaps/service_repository_info,post,GetServiceRepositoryInfo,RUM,sourcemap_service_repository_infos,get_service_repository_info,insert,,csv,,,true,,,,data-object,application/json,application/json,Get service repository information +fleet,unstable,/api/unstable/fleet/agents/{agent_key}/tracers,get,ListFleetAgentTracers,Fleet Automation,agent_tracers,list_fleet_agent_tracers,select,$.data,csv,,,true,,,,data-object,,application/json,List tracers for a specific agent +fleet,unstable,/api/unstable/fleet/schedules,post,CreateFleetSchedule,Fleet Automation,schedules,create_fleet_schedule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a schedule +fleet,unstable,/api/unstable/fleet/schedules/{id},delete,DeleteFleetSchedule,Fleet Automation,schedules,delete_fleet_schedule,delete,,csv,,,true,,,,none,,,Delete a schedule +fleet,unstable,/api/unstable/fleet/schedules/{id},patch,UpdateFleetSchedule,Fleet Automation,schedules,update_fleet_schedule,update,,csv,,,true,,,,data-object,application/json,application/json,Update a schedule +fleet,unstable,/api/unstable/fleet/schedules/{id}/trigger,post,TriggerFleetSchedule,Fleet Automation,schedules,trigger_fleet_schedule,exec,,csv,,,true,,,,data-object,,application/json,Trigger a schedule deployment +fleet,unstable,/api/unstable/fleet/tracers,get,ListFleetTracers,Fleet Automation,tracers,list_fleet_tracers,select,$.data,csv,,,true,,,,data-object,,application/json,List all fleet tracers +fleet,v2,/api/v2/fleet/agent_versions,get,ListFleetAgentVersionsV2,Fleet Automation,agent_versions,list_fleet_agent_versions_v2,select,$.data,csv,,,,,,,data-array,,application/json,List available Datadog Agent versions +fleet,v2,/api/v2/fleet/agents,get,ListFleetAgentsV2,Fleet Automation,agents,list_fleet_agents_v2,select,$.data,csv,,,,,,,data-array,,application/json,List all Datadog Agents +fleet,v2,/api/v2/fleet/agents/{agent_key},get,GetFleetAgentDetailV2,Fleet Automation,agents,get_fleet_agent_detail_v2,select,$.data,csv,,,,,,,data-object,,application/json,Get detailed information about an agent +fleet,v2,/api/v2/fleet/deployments,get,ListFleetDeploymentsV2,Fleet Automation,deployments,list_fleet_deployments_v2,select,$.data,csv,,,,,,,data-array,,application/json,List all deployments +fleet,v2,/api/v2/fleet/deployments/configure,post,CreateFleetDeploymentConfigureV2,Fleet Automation,deployments,create_fleet_deployment_configure_v2,exec,,csv,,,,,,,data-object,application/json,application/json,Create a configuration deployment +fleet,v2,/api/v2/fleet/deployments/upgrade,post,CreateFleetDeploymentUpgradeV2,Fleet Automation,deployments,create_fleet_deployment_upgrade_v2,exec,,csv,,,,,,,data-object,application/json,application/json,Upgrade hosts +fleet,v2,/api/v2/fleet/deployments/{deployment_id},get,GetFleetDeploymentV2,Fleet Automation,deployments,get_fleet_deployment_v2,select,$.data,csv,,,,,,,data-object,,application/json,Get a deployment by ID +fleet,v2,/api/v2/fleet/deployments/{deployment_id}/cancel,post,CancelFleetDeploymentV2,Fleet Automation,deployments,cancel_fleet_deployment_v2,exec,,csv,,,,,,,data-object,,application/json,Cancel a deployment +fleet,v2,/api/v2/fleet/schedules,get,ListFleetSchedulesV2,Fleet Automation,schedules,list_fleet_schedules_v2,select,$.data,csv,,,,,,,data-array,,application/json,List all schedules +fleet,v2,/api/v2/fleet/schedules/{id},get,GetFleetScheduleV2,Fleet Automation,schedules,get_fleet_schedule_v2,select,$.data,csv,,,,,,,data-object,,application/json,Get a schedule by ID +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/favorite,patch,UpdateAppFavorite,App Builder,app_builder_app_favorites,update_app_favorite,update,,csv,,,,,,,none,application/json,,Update App Favorite Status +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/protection-level,patch,UpdateProtectionLevel,App Builder,app_builder_app_protection_levels,update_protection_level,update,,csv,,,,,,,data-object,application/json,application/json,Update App Protection Level +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/publish-request,post,CreatePublishRequest,App Builder,app_builder_app_publish_requests,create_publish_request,insert,,csv,,,,,,,data-object,application/json,application/json,Create Publish Request +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/revert,post,RevertApp,App Builder,app_builder_apps,revert_app,exec,,csv,,,,,,,data-object,,application/json,Revert App +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/self-service,patch,UpdateAppSelfService,App Builder,app_builder_app_self_services,update_app_self_service,update,,csv,,,,,,,none,application/json,,Update App Self-Service Status +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/tags,patch,UpdateAppTags,App Builder,app_builder_app_tags,update_app_tags,update,,csv,,,,,,,none,application/json,,Update App Tags +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/version-name,patch,UpdateAppVersionName,App Builder,app_builder_app_version_names,update_app_version_name,update,,csv,,,,,,,none,application/json,,Name App Version +infrastructure,v2,/api/v2/app-builder/apps/{app_id}/versions,get,ListAppVersions,App Builder,app_builder_app_versions,list_app_versions,select,$.data,csv,,,,,,,data-array,,application/json,List App Versions +infrastructure,v2,/api/v2/app-builder/blueprint/{blueprint_id},get,GetBlueprint,App Builder,app_builder_blueprints,get_blueprint,select,$.data,csv,,,,,,,data-object,,application/json,Get Blueprint +infrastructure,v2,/api/v2/app-builder/blueprints,get,ListBlueprints,App Builder,app_builder_blueprints,list_blueprints,select,$.data,csv,,,,,,,data-array,,application/json,List Blueprints +infrastructure,v2,/api/v2/app-builder/blueprints/integration-id/{integration_id},get,GetBlueprintsByIntegrationId,App Builder,app_builder_blueprint_integration_ids,get_blueprints_by_integration_id,select,$.data,csv,,,,,,,data-array,,application/json,Get Blueprints by Integration ID +infrastructure,v2,/api/v2/app-builder/blueprints/slugs/{slugs},get,GetBlueprintsBySlugs,App Builder,app_builder_blueprint_slugs,get_blueprints_by_slugs,select,$.data,csv,,,,,,,data-array,,application/json,Get Blueprints by Slugs +infrastructure,v2,/api/v2/app-builder/tags,get,ListTags,App Builder,app_builder_tags,list_tags,select,$.data,csv,,,,,,,data-array,,application/json,List Tags +infrastructure,v2,/api/v2/cloudinventoryservice/syncconfigs,put,UpsertSyncConfig,Storage Management,storage_management_configs,upsert_sync_config,replace,,csv,,,,,,,data-object,application/json,application/json,Enable Storage Management for a bucket +infrastructure,v2,/api/v2/cloudinventoryservice/syncconfigs/{id},delete,DeleteSyncConfig,Storage Management,storage_management_configs,delete_sync_config,delete,,csv,,,,,,,none,,,Delete a Storage Management configuration +infrastructure,v2,/api/v2/ndm/tags/interfaces/{interface_id},get,ListInterfaceUserTags,Network Device Monitoring,ndm_tag_interfaces,list_interface_user_tags,select,$.data,csv,,,,,,,data-object,,application/json,List tags for an interface +infrastructure,v2,/api/v2/ndm/tags/interfaces/{interface_id},patch,UpdateInterfaceUserTags,Network Device Monitoring,ndm_tag_interfaces,update_interface_user_tags,update,,csv,,,,,,,data-object,application/json,application/json,Update the tags for an interface +infrastructure,v2,/api/v2/network-health-insights,get,ListNetworkHealthInsights,Network Health Insights,network_health_insights,list_network_health_insights,select,$.data,csv,,,true,,,,data-array,,application/json,List network health insights +infrastructure,v2,/api/v2/spa/recommendations/{service}/{shard},get,GetSPARecommendationsWithShard,Spa,spa_recommendations,get_sparecommendations_with_shard,select,$.data,csv,,,true,,,,data-object,,application/json,Get SPA Recommendations with a shard parameter +infrastructure,v1,/api/v1/host/{host_name}/mute,post,MuteHost,Hosts,hosts,mute_host,exec,,csv,,,,,,,object,application/json,application/json,Mute a host +infrastructure,v1,/api/v1/host/{host_name}/unmute,post,UnmuteHost,Hosts,hosts,unmute_host,exec,,csv,,,,,,,object,,application/json,Unmute a host +infrastructure,v1,/api/v1/hosts,get,ListHosts,Hosts,hosts,list_hosts,select,$.host_list,csv,,,,,,,single-array:host_list,,application/json,Get all hosts for your organization +infrastructure,v1,/api/v1/hosts/totals,get,GetHostTotals,Hosts,host_totals,get_host_totals,select,,csv,,,,,,,object,,application/json,Get the total number of active hosts +infrastructure,v1,/api/v1/tags/hosts,get,ListHostTags,Tags,host_tags,list_host_tags,select,,csv,,,,,,,object,,application/json,Get All Host Tags +infrastructure,v1,/api/v1/tags/hosts/{host_name},delete,DeleteHostTags,Tags,host_tags,delete_host_tags,delete,,csv,,,,,,,none,,,Remove host tags +infrastructure,v1,/api/v1/tags/hosts/{host_name},get,GetHostTags,Tags,host_tags,get_host_tags,select,,csv,,,,,,,object,,application/json,Get Host Tags +infrastructure,v1,/api/v1/tags/hosts/{host_name},post,CreateHostTags,Tags,host_tags,create_host_tags,insert,,csv,,,,,,,object,application/json,application/json,Add tags to a host +infrastructure,v1,/api/v1/tags/hosts/{host_name},put,UpdateHostTags,Tags,host_tags,update_host_tags,replace,,csv,,,,,,,object,application/json,application/json,Update host tags +integrations,v2,/api/v2/cloud_auth/aws/persona_mapping,get,ListAWSCloudAuthPersonaMappings,Cloud Authentication,aws_persona_mappings,list_awscloud_auth_persona_mappings,select,$.data,csv,,,true,,,,data-array,,application/json,List AWS cloud authentication persona mappings +integrations,v2,/api/v2/cloud_auth/aws/persona_mapping,post,CreateAWSCloudAuthPersonaMapping,Cloud Authentication,aws_persona_mappings,create_awscloud_auth_persona_mapping,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an AWS cloud authentication persona mapping +integrations,v2,/api/v2/cloud_auth/aws/persona_mapping/{persona_mapping_id},delete,DeleteAWSCloudAuthPersonaMapping,Cloud Authentication,aws_persona_mappings,delete_awscloud_auth_persona_mapping,delete,,csv,,,true,,,,none,,,Delete an AWS cloud authentication persona mapping +integrations,v2,/api/v2/cloud_auth/aws/persona_mapping/{persona_mapping_id},get,GetAWSCloudAuthPersonaMapping,Cloud Authentication,aws_persona_mappings,get_awscloud_auth_persona_mapping,select,$.data,csv,,,true,,,,data-object,,application/json,Get an AWS cloud authentication persona mapping +integrations,v2,/api/v2/idp/entity_integrations/{integration_id},delete,DeleteEntityIntegrationConfig,Entity Integration Configs,entity_integration_configs,delete_entity_integration_config,delete,,csv,,,true,,,,none,,,Delete an entity integration configuration +integrations,v2,/api/v2/idp/entity_integrations/{integration_id},get,GetEntityIntegrationConfig,Entity Integration Configs,entity_integration_configs,get_entity_integration_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get an entity integration configuration +integrations,v2,/api/v2/idp/entity_integrations/{integration_id},put,UpdateEntityIntegrationConfig,Entity Integration Configs,entity_integration_configs,update_entity_integration_config,replace,,csv,,,true,,,,data-object,application/json,application/json,Create or update entity integration configuration +integrations,v2,/api/v2/integration-interfaces/elastic-cloud/accounts,get,ListElasticCloudIntegrationAccounts,Elastic Cloud Integration Accounts,elastic_cloud_accounts,list_elastic_cloud_integration_accounts,select,$.data,csv,,,true,,,,data-array,,application/json,List Elastic Cloud integration accounts +integrations,v2,/api/v2/integration-interfaces/elastic-cloud/accounts,post,CreateElasticCloudIntegrationAccount,Elastic Cloud Integration Accounts,elastic_cloud_accounts,create_elastic_cloud_integration_account,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an Elastic Cloud integration account +integrations,v2,/api/v2/integration-interfaces/elastic-cloud/accounts/{account_id},delete,DeleteElasticCloudIntegrationAccount,Elastic Cloud Integration Accounts,elastic_cloud_accounts,delete_elastic_cloud_integration_account,delete,,csv,,,true,,,,none,,,Delete an Elastic Cloud integration account +integrations,v2,/api/v2/integration-interfaces/elastic-cloud/accounts/{account_id},get,GetElasticCloudIntegrationAccount,Elastic Cloud Integration Accounts,elastic_cloud_accounts,get_elastic_cloud_integration_account,select,$.data,csv,,,true,,,,data-object,,application/json,Get an Elastic Cloud integration account +integrations,v2,/api/v2/integration-interfaces/elastic-cloud/accounts/{account_id},patch,UpdateElasticCloudIntegrationAccount,Elastic Cloud Integration Accounts,elastic_cloud_accounts,update_elastic_cloud_integration_account,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Elastic Cloud integration account +integrations,v2,/api/v2/integration-interfaces/twilio/accounts,get,ListTwilioIntegrationAccounts,Twilio Integration Accounts,twilio_accounts,list_twilio_integration_accounts,select,$.data,csv,,,true,,,,data-array,,application/json,List Twilio integration accounts +integrations,v2,/api/v2/integration-interfaces/twilio/accounts,post,CreateTwilioIntegrationAccount,Twilio Integration Accounts,twilio_accounts,create_twilio_integration_account,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a Twilio integration account +integrations,v2,/api/v2/integration-interfaces/twilio/accounts/{account_id},delete,DeleteTwilioIntegrationAccount,Twilio Integration Accounts,twilio_accounts,delete_twilio_integration_account,delete,,csv,,,true,,,,none,,,Delete a Twilio integration account +integrations,v2,/api/v2/integration-interfaces/twilio/accounts/{account_id},get,GetTwilioIntegrationAccount,Twilio Integration Accounts,twilio_accounts,get_twilio_integration_account,select,$.data,csv,,,true,,,,data-object,,application/json,Get a Twilio integration account +integrations,v2,/api/v2/integration-interfaces/twilio/accounts/{account_id},patch,UpdateTwilioIntegrationAccount,Twilio Integration Accounts,twilio_accounts,update_twilio_integration_account,update,,csv,,,true,,,,data-object,application/json,application/json,Update a Twilio integration account +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,delete,DeleteAWSAccountCCMConfig,AWS Integration,aws_account_ccm_configs,delete_awsaccount_ccmconfig,delete,,csv,,,true,,,,none,,,Delete AWS CCM config +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,get,GetAWSAccountCCMConfig,AWS Integration,aws_account_ccm_configs,get_awsaccount_ccmconfig,select,$.data,csv,,,true,,,,data-object,,application/json,Get AWS CCM config +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,patch,UpdateAWSAccountCCMConfig,AWS Integration,aws_account_ccm_configs,update_awsaccount_ccmconfig,update,,csv,,,true,,,,data-object,application/json,application/json,Update AWS CCM config +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config,post,CreateAWSAccountCCMConfig,AWS Integration,aws_account_ccm_configs,create_awsaccount_ccmconfig,insert,,csv,,,true,,,,data-object,application/json,application/json,Create AWS CCM config +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id}/metric_name_filter_preview,get,GetAWSMetricNameFilterPreview,AWS Integration,aws_account_metric_name_filter_previews,get_awsmetric_name_filter_preview,select,$.data,csv,,,true,,,,data-object,,application/json,Get AWS metric name filter preview +integrations,v2,/api/v2/integration/aws/accounts/{aws_account_config_id}/metric_name_filter_preview,post,PreviewAWSMetricNameFilter,AWS Integration,aws_accounts,preview_awsmetric_name_filter,exec,,csv,,,true,,,,data-object,application/json,application/json,Preview AWS metric name filter +integrations,v2,/api/v2/integration/aws/event_bridge,delete,DeleteAWSEventBridgeSource,AWS Integration,aws_event_bridges,delete_awsevent_bridge_source,delete,,csv,,,,,,,data-object,application/json,application/json,Delete an Amazon EventBridge source +integrations,v2,/api/v2/integration/aws/event_bridge,get,ListAWSEventBridgeSources,AWS Integration,aws_event_bridges,list_awsevent_bridge_sources,select,$.data,csv,,,,,,,data-object,,application/json,Get all Amazon EventBridge sources +integrations,v2,/api/v2/integration/aws/event_bridge,post,CreateAWSEventBridgeSource,AWS Integration,aws_event_bridges,create_awsevent_bridge_source,insert,,csv,,,,,,,data-object,application/json,application/json,Create an Amazon EventBridge source +integrations,v2,/api/v2/integration/aws/iam_permissions/resource_collection,get,GetAWSIntegrationIAMPermissionsResourceCollection,AWS Integration,aws_iam_permission_resource_collections,get_awsintegration_iampermissions_resource_collection,select,$.data,csv,,,,,,,data-object,,application/json,Get resource collection IAM permissions +integrations,v2,/api/v2/integration/aws/iam_permissions/standard,get,GetAWSIntegrationIAMPermissionsStandard,AWS Integration,aws_iam_permission_standards,get_awsintegration_iampermissions_standard,select,$.data,csv,,,,,,,data-object,,application/json,Get AWS integration standard IAM permissions +integrations,v2,/api/v2/integration/aws/validate_ccm_config,post,ValidateAWSCCMConfig,AWS Integration,aws_accounts,validate_awsccmconfig,exec,,csv,,,true,,,,data-object,application/json,application/json,Validate AWS CCM config +integrations,v2,/api/v2/integration/google-chat/organizations,get,ListGoogleChatOrganizations,Google Chat Integration,google_chat_organizations,list_google_chat_organizations,select,$.data,csv,,,,,,,data-array,,application/json,Get all Google Chat organization bindings +integrations,v2,/api/v2/integration/google-chat/organizations/app/named-spaces/{domain_name}/{space_display_name},get,GetSpaceByDisplayName,Google Chat Integration,google_chat_organization_app_named_spaces,get_space_by_display_name,select,$.data,csv,,,,,,,data-object,,application/json,Get space information by display name +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id},delete,DeleteGoogleChatOrganization,Google Chat Integration,google_chat_organizations,delete_google_chat_organization,delete,,csv,,,,,,,none,,,Delete a Google Chat organization binding +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id},get,GetGoogleChatOrganization,Google Chat Integration,google_chat_organizations,get_google_chat_organization,select,$.data,csv,,,,,,,data-object,,application/json,Get a Google Chat organization binding +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/delegated-user,delete,DeleteGoogleChatDelegatedUser,Google Chat Integration,google_chat_organization_delegated_users,delete_google_chat_delegated_user,delete,,csv,,,,,,,none,,,Delete the delegated user +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/delegated-user,get,GetGoogleChatDelegatedUser,Google Chat Integration,google_chat_organization_delegated_users,get_google_chat_delegated_user,select,$.data,csv,,,,,,,data-object,,application/json,Get the delegated user +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles,get,ListOrganizationHandles,Google Chat Integration,google_chat_organization_organization_handles,list_organization_handles,select,$.data,csv,,,,,,,data-array,,application/json,Get all organization handles +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles,post,CreateOrganizationHandle,Google Chat Integration,google_chat_organization_organization_handles,create_organization_handle,insert,,csv,,,,,,,data-object,application/json,application/json,Create organization handle +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id},delete,DeleteOrganizationHandle,Google Chat Integration,google_chat_organization_organization_handles,delete_organization_handle,delete,,csv,,,,,,,none,,,Delete organization handle +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id},get,GetOrganizationHandle,Google Chat Integration,google_chat_organization_organization_handles,get_organization_handle,select,$.data,csv,,,,,,,data-object,,application/json,Get organization handle +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id},patch,UpdateOrganizationHandle,Google Chat Integration,google_chat_organization_organization_handles,update_organization_handle,update,,csv,,,,,,,data-object,application/json,application/json,Update organization handle +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences,get,ListGoogleChatTargetAudiences,Google Chat Integration,google_chat_organization_target_audiences,list_google_chat_target_audiences,select,$.data,csv,,,,,,,data-array,,application/json,Get all target audiences +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences,post,CreateGoogleChatTargetAudience,Google Chat Integration,google_chat_organization_target_audiences,create_google_chat_target_audience,insert,,csv,,,,,,,data-object,application/json,application/json,Create a target audience +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id},delete,DeleteGoogleChatTargetAudience,Google Chat Integration,google_chat_organization_target_audiences,delete_google_chat_target_audience,delete,,csv,,,,,,,none,,,Delete a target audience +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id},get,GetGoogleChatTargetAudience,Google Chat Integration,google_chat_organization_target_audiences,get_google_chat_target_audience,select,$.data,csv,,,,,,,data-object,,application/json,Get a target audience +integrations,v2,/api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id},patch,UpdateGoogleChatTargetAudience,Google Chat Integration,google_chat_organization_target_audiences,update_google_chat_target_audience,update,,csv,,,,,,,data-object,application/json,application/json,Update a target audience +integrations,v2,/api/v2/integration/jira/accounts,get,ListJiraAccounts,Jira Integration,jira_accounts,list_jira_accounts,select,$.data,csv,,,true,,,,data-array,,application/json,List Jira accounts +integrations,v2,/api/v2/integration/jira/accounts/{account_id},delete,DeleteJiraAccount,Jira Integration,jira_accounts,delete_jira_account,delete,,csv,,,true,,,,none,,,Delete Jira account +integrations,v2,/api/v2/integration/jira/issue-templates,get,ListJiraIssueTemplates,Jira Integration,jira_issue_templates,list_jira_issue_templates,select,$.data,csv,,,true,,,,data-array,,application/json,List Jira issue templates +integrations,v2,/api/v2/integration/jira/issue-templates,post,CreateJiraIssueTemplate,Jira Integration,jira_issue_templates,create_jira_issue_template,insert,,csv,,,true,,,,data-object,application/json,application/json,Create Jira issue template +integrations,v2,/api/v2/integration/jira/issue-templates/{issue_template_id},delete,DeleteJiraIssueTemplate,Jira Integration,jira_issue_templates,delete_jira_issue_template,delete,,csv,,,true,,,,none,,,Delete Jira issue template +integrations,v2,/api/v2/integration/jira/issue-templates/{issue_template_id},get,GetJiraIssueTemplate,Jira Integration,jira_issue_templates,get_jira_issue_template,select,$.data,csv,,,true,,,,data-object,,application/json,Get Jira issue template +integrations,v2,/api/v2/integration/jira/issue-templates/{issue_template_id},patch,UpdateJiraIssueTemplate,Jira Integration,jira_issue_templates,update_jira_issue_template,update,,csv,,,true,,,,data-object,application/json,application/json,Update Jira issue template +integrations,v2,/api/v2/integration/ms-teams/configuration/user-binding/{tenant_id},delete,DeleteMSTeamsUserBinding,Microsoft Teams Integration,ms_team_user_bindings,delete_msteams_user_binding,delete,,csv,,,,,,,none,,,Delete user binding +integrations,v2,/api/v2/integration/oci/products,get,ListTenancyProducts,OCI Integration,oci_products,list_tenancy_products,select,$.data,csv,,,,,,,data-array,,application/json,List tenancy products +integrations,v2,/api/v2/integration/oci/tenancies,get,GetTenancyConfigs,OCI Integration,oci_tenancies,get_tenancy_configs,select,$.data,csv,,,true,,,,data-array,,application/json,Get tenancy configs +integrations,v2,/api/v2/integration/oci/tenancies,post,CreateTenancyConfig,OCI Integration,oci_tenancies,create_tenancy_config,insert,,csv,,,true,,,,data-object,application/json,application/json,Create tenancy config +integrations,v2,/api/v2/integration/oci/tenancies/{tenancy_ocid},delete,DeleteTenancyConfig,OCI Integration,oci_tenancies,delete_tenancy_config,delete,,csv,,,,,,,none,,,Delete tenancy config +integrations,v2,/api/v2/integration/oci/tenancies/{tenancy_ocid},get,GetTenancyConfig,OCI Integration,oci_tenancies,get_tenancy_config,select,$.data,csv,,,,,,,data-object,,application/json,Get tenancy config +integrations,v2,/api/v2/integration/oci/tenancies/{tenancy_ocid},patch,UpdateTenancyConfig,OCI Integration,oci_tenancies,update_tenancy_config,update,,csv,,,,,,,data-object,application/json,application/json,Update tenancy config +integrations,v2,/api/v2/integration/opsgenie/accounts,get,ListOpsgenieAccounts,Opsgenie Integration,opsgenie_accounts,list_opsgenie_accounts,select,$.data,csv,,,,,,,data-array,,application/json,Get all Opsgenie accounts +integrations,v2,/api/v2/integration/opsgenie/accounts,post,CreateOpsgenieAccount,Opsgenie Integration,opsgenie_accounts,create_opsgenie_account,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new Opsgenie account +integrations,v2,/api/v2/integration/opsgenie/accounts/{account_id},delete,DeleteOpsgenieAccount,Opsgenie Integration,opsgenie_accounts,delete_opsgenie_account,delete,,csv,,,,,,,none,,,Delete an Opsgenie account +integrations,v2,/api/v2/integration/opsgenie/accounts/{account_id},patch,UpdateOpsgenieAccount,Opsgenie Integration,opsgenie_accounts,update_opsgenie_account,update,,csv,,,,,,,data-object,application/json,application/json,Update an Opsgenie account +integrations,v2,/api/v2/integration/salesforce-incidents/incident-templates,get,GetIncidentTemplates,Salesforce Integration,salesforce_incident_incident_templates,get_incident_templates,select,$.data,csv,,,,,,,data-array,,application/json,Get all Salesforce incident templates +integrations,v2,/api/v2/integration/salesforce-incidents/incident-templates,post,CreateIncidentTemplate,Salesforce Integration,salesforce_incident_incident_templates,create_incident_template,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Salesforce incident template +integrations,v2,/api/v2/integration/salesforce-incidents/incident-templates/{incident_template_id},delete,DeleteIncidentTemplate,Salesforce Integration,salesforce_incident_incident_templates,delete_incident_template,delete,,csv,,,,,,,none,,,Delete a Salesforce incident template +integrations,v2,/api/v2/integration/salesforce-incidents/incident-templates/{incident_template_id},patch,UpdateIncidentTemplate,Salesforce Integration,salesforce_incident_incident_templates,update_incident_template,update,,csv,,,,,,,data-object,application/json,application/json,Update a Salesforce incident template +integrations,v2,/api/v2/integration/salesforce-incidents/organizations,get,GetSalesforceOrganizations,Salesforce Integration,salesforce_incident_organizations,get_salesforce_organizations,select,$.data,csv,,,,,,,data-array,,application/json,Get all connected Salesforce organizations +integrations,v2,/api/v2/integration/salesforce-incidents/organizations/{salesforce_org_id},delete,DeleteSalesforceOrganization,Salesforce Integration,salesforce_incident_organizations,delete_salesforce_organization,delete,,csv,,,,,,,none,,,Delete a connected Salesforce organization +integrations,v2,/api/v2/integration/servicenow/assignment_groups/{instance_id},get,ListServiceNowAssignmentGroups,ServiceNow Integration,servicenow_assignment_groups,list_service_now_assignment_groups,select,$.data,csv,,,,,,,data-array,,application/json,List ServiceNow assignment groups +integrations,v2,/api/v2/integration/servicenow/business_services/{instance_id},get,ListServiceNowBusinessServices,ServiceNow Integration,servicenow_business_services,list_service_now_business_services,select,$.data,csv,,,,,,,data-array,,application/json,List ServiceNow business services +integrations,v2,/api/v2/integration/servicenow/handles,get,ListServiceNowTemplates,ServiceNow Integration,servicenow_handles,list_service_now_templates,select,$.data,csv,,,,,,,data-array,,application/json,List ServiceNow templates +integrations,v2,/api/v2/integration/servicenow/handles,post,CreateServiceNowTemplate,ServiceNow Integration,servicenow_handles,create_service_now_template,insert,,csv,,,,,,,data-object,application/json,application/json,Create ServiceNow template +integrations,v2,/api/v2/integration/servicenow/handles/{template_id},delete,DeleteServiceNowTemplate,ServiceNow Integration,servicenow_handles,delete_service_now_template,delete,,csv,,,,,,,none,,,Delete ServiceNow template +integrations,v2,/api/v2/integration/servicenow/handles/{template_id},get,GetServiceNowTemplate,ServiceNow Integration,servicenow_handles,get_service_now_template,select,$.data,csv,,,,,,,data-object,,application/json,Get ServiceNow template +integrations,v2,/api/v2/integration/servicenow/handles/{template_id},put,UpdateServiceNowTemplate,ServiceNow Integration,servicenow_handles,update_service_now_template,replace,,csv,,,,,,,data-object,application/json,application/json,Update ServiceNow template +integrations,v2,/api/v2/integration/servicenow/instances,get,ListServiceNowInstances,ServiceNow Integration,servicenow_instances,list_service_now_instances,select,$.data,csv,,,,,,,data-array,,application/json,List ServiceNow instances +integrations,v2,/api/v2/integration/servicenow/users/{instance_id},get,ListServiceNowUsers,ServiceNow Integration,servicenow_users,list_service_now_users,select,$.data,csv,,,,,,,data-array,,application/json,List ServiceNow users +integrations,v2,/api/v2/integration/slack/user-bindings,get,ListSlackUserBindings,Slack Integration,slack_user_bindings,list_slack_user_bindings,select,$.data,csv,,,,,,,data-array,,application/json,List Slack user bindings +integrations,v2,/api/v2/integration/statuspage/account,delete,DeleteStatuspageAccount,Statuspage Integration,statuspage_accounts,delete_statuspage_account,delete,,csv,,,,,,,none,,,Delete the Statuspage account +integrations,v2,/api/v2/integration/statuspage/account,get,GetStatuspageAccount,Statuspage Integration,statuspage_accounts,get_statuspage_account,select,$.data,csv,,,,,,,data-object,,application/json,Get the Statuspage account +integrations,v2,/api/v2/integration/statuspage/account,patch,UpdateStatuspageAccount,Statuspage Integration,statuspage_accounts,update_statuspage_account,update,,csv,,,,,,,data-object,application/json,application/json,Update the Statuspage account +integrations,v2,/api/v2/integration/statuspage/account,post,CreateStatuspageAccount,Statuspage Integration,statuspage_accounts,create_statuspage_account,insert,,csv,,,,,,,data-object,application/json,application/json,Create the Statuspage account +integrations,v2,/api/v2/integration/statuspage/url_settings,get,ListStatuspageUrlSettings,Statuspage Integration,statuspage_url_settings,list_statuspage_url_settings,select,$.data,csv,,,,,,,data-array,,application/json,Get all Statuspage URL settings +integrations,v2,/api/v2/integration/statuspage/url_settings,post,CreateStatuspageUrlSetting,Statuspage Integration,statuspage_url_settings,create_statuspage_url_setting,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Statuspage URL setting +integrations,v2,/api/v2/integration/statuspage/url_settings/{statuspage_url_setting_id},delete,DeleteStatuspageUrlSetting,Statuspage Integration,statuspage_url_settings,delete_statuspage_url_setting,delete,,csv,,,,,,,none,,,Delete a Statuspage URL setting +integrations,v2,/api/v2/integration/statuspage/url_settings/{statuspage_url_setting_id},patch,UpdateStatuspageUrlSetting,Statuspage Integration,statuspage_url_settings,update_statuspage_url_setting,update,,csv,,,,,,,data-object,application/json,application/json,Update a Statuspage URL setting +integrations,v2,/api/v2/integration/webhooks/configuration/auth-method,get,GetAllAuthMethods,Webhooks Integration,webhook_auth_methods,get_all_auth_methods,select,$.data,csv,,,,,,,data-array,,application/json,Get all auth methods +integrations,v2,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials,post,CreateOAuth2ClientCredentials,Webhooks Integration,webhook_oauth2_client_credentials,create_oauth2_client_credentials,insert,,csv,,,,,,,data-object,application/json,application/json,Create an OAuth2 client credentials auth method +integrations,v2,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id},delete,DeleteOAuth2ClientCredentials,Webhooks Integration,webhook_oauth2_client_credentials,delete_oauth2_client_credentials,delete,,csv,,,,,,,none,,,Delete an OAuth2 client credentials auth method +integrations,v2,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id},get,GetOAuth2ClientCredentials,Webhooks Integration,webhook_oauth2_client_credentials,get_oauth2_client_credentials,select,$.data,csv,,,,,,,data-object,,application/json,Get an OAuth2 client credentials auth method +integrations,v2,/api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id},patch,UpdateOAuth2ClientCredentials,Webhooks Integration,webhook_oauth2_client_credentials,update_oauth2_client_credentials,update,,csv,,,,,,,data-object,application/json,application/json,Update an OAuth2 client credentials auth method +integrations,v2,/api/v2/integrations,get,ListIntegrations,Integrations,integrations,list_integrations,select,$.data,csv,,,,,,,data-array,,application/json,List Integrations +integrations,v2,/api/v2/reference-tables/queries/batch-rows,post,BatchRowsQuery,Reference Tables,reference_table_rows,batch_rows_query,exec,,csv,,,,,,,data-object,application/json,application/json,Batch rows query +integrations,v2,/api/v2/reference-tables/tables,get,ListTables,Reference Tables,reference_tables,list_tables,select,$.data,csv,,,,,,,data-array,,application/json,List tables +integrations,v2,/api/v2/reference-tables/tables,post,CreateReferenceTable,Reference Tables,reference_tables,create_reference_table,insert,,csv,,,,,,,data-object,application/json,application/json,Create reference table +integrations,v2,/api/v2/reference-tables/tables/{id},delete,DeleteTable,Reference Tables,reference_tables,delete_table,delete,,csv,,,,,,,none,,,Delete table +integrations,v2,/api/v2/reference-tables/tables/{id},get,GetTable,Reference Tables,reference_tables,get_table,select,$.data,csv,,,,,,,data-object,,application/json,Get table +integrations,v2,/api/v2/reference-tables/tables/{id},patch,UpdateReferenceTable,Reference Tables,reference_tables,update_reference_table,update,,csv,,,,,,,none,application/json,,Update reference table +integrations,v2,/api/v2/reference-tables/tables/{id}/rows,delete,DeleteRows,Reference Tables,reference_table_rows,delete_rows,delete,,csv,,,,,,,none,application/json,,Delete rows +integrations,v2,/api/v2/reference-tables/tables/{id}/rows,get,GetRowsByID,Reference Tables,reference_table_rows,get_rows_by_id,select,$.data,csv,,,,,,,data-array,,application/json,Get rows by id +integrations,v2,/api/v2/reference-tables/tables/{id}/rows,post,UpsertRows,Reference Tables,reference_table_rows,upsert_rows,exec,,csv,,,,,,,none,application/json,,Upsert rows +integrations,v2,/api/v2/reference-tables/tables/{id}/rows/list,get,ListReferenceTableRows,Reference Tables,reference_table_rows,list_reference_table_rows,select,$.data,csv,,,,,,,data-array,,application/json,List rows +integrations,v2,/api/v2/reference-tables/uploads,post,CreateReferenceTableUpload,Reference Tables,reference_table_uploads,create_reference_table_upload,insert,,csv,,,,,,,data-object,application/json,application/json,Create reference table upload +integrations,v2,/api/v2/web-integrations/{integration_name}/accounts,get,ListWebIntegrationAccounts,Web Integrations,web_integration_accounts,list_web_integration_accounts,select,$.data,csv,,,true,,,,data-array,,application/json,List web integration accounts +integrations,v2,/api/v2/web-integrations/{integration_name}/accounts,post,CreateWebIntegrationAccount,Web Integrations,web_integration_accounts,create_web_integration_account,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a web integration account +integrations,v2,/api/v2/web-integrations/{integration_name}/accounts/{account_id},delete,DeleteWebIntegrationAccount,Web Integrations,web_integration_accounts,delete_web_integration_account,delete,,csv,,,true,,,,none,,,Delete a web integration account +integrations,v2,/api/v2/web-integrations/{integration_name}/accounts/{account_id},get,GetWebIntegrationAccount,Web Integrations,web_integration_accounts,get_web_integration_account,select,$.data,csv,,,true,,,,data-object,,application/json,Get a web integration account +integrations,v2,/api/v2/web-integrations/{integration_name}/accounts/{account_id},patch,UpdateWebIntegrationAccount,Web Integrations,web_integration_accounts,update_web_integration_account,update,,csv,,,true,,,,data-object,application/json,application/json,Update a web integration account +integrations,v1,/api/v1/integration/aws,delete,DeleteAWSAccountV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Delete an AWS integration +integrations,v1,/api/v1/integration/aws,get,ListAWSAccountsV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:accounts,,application/json,List all AWS integrations +integrations,v1,/api/v1/integration/aws,post,CreateAWSAccountV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Create an AWS integration +integrations,v1,/api/v1/integration/aws,put,UpdateAWSAccountV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Update an AWS integration +integrations,v1,/api/v1/integration/aws/available_namespace_rules,get,ListAvailableAWSNamespaces,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,bare-array,,application/json,List namespace rules +integrations,v1,/api/v1/integration/aws/event_bridge,delete,DeleteAWSEventBridgeSourceV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Delete an Amazon EventBridge source +integrations,v1,/api/v1/integration/aws/event_bridge,get,ListAWSEventBridgeSourcesV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:accounts,,application/json,Get all Amazon EventBridge sources +integrations,v1,/api/v1/integration/aws/event_bridge,post,CreateAWSEventBridgeSourceV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Create an Amazon EventBridge source +integrations,v1,/api/v1/integration/aws/filtering,delete,DeleteAWSTagFilter,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Delete a tag filtering entry +integrations,v1,/api/v1/integration/aws/filtering,get,ListAWSTagFilters,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:filters,,application/json,Get all AWS tag filters +integrations,v1,/api/v1/integration/aws/filtering,post,CreateAWSTagFilter,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Set an AWS tag filter +integrations,v1,/api/v1/integration/aws/generate_new_external_id,put,CreateNewAWSExternalIDV1,AWS Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Generate a new external ID +integrations,v1,/api/v1/integration/aws/logs,delete,DeleteAWSLambdaARN,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,2027-02-20,,,object,application/json,application/json,Delete an AWS Logs integration +integrations,v1,/api/v1/integration/aws/logs,get,ListAWSLogsIntegrations,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,,,,bare-array,,application/json,List all AWS Logs integrations +integrations,v1,/api/v1/integration/aws/logs,post,CreateAWSLambdaARN,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,2027-02-20,,,object,application/json,application/json,Add AWS Log Lambda ARN +integrations,v1,/api/v1/integration/aws/logs/check_async,post,CheckAWSLogsLambdaAsync,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,2027-02-20,,,single-array:errors,application/json,application/json,Check that an AWS Lambda Function exists +integrations,v1,/api/v1/integration/aws/logs/services,get,ListAWSLogsServicesV1,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,,,,bare-array,,application/json,Get list of AWS log ready services +integrations,v1,/api/v1/integration/aws/logs/services,post,EnableAWSLogServices,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Enable an AWS Logs integration +integrations,v1,/api/v1/integration/aws/logs/services_async,post,CheckAWSLogsServicesAsync,AWS Logs Integration,skip_this_resource,,,,skip,deprecated,true,,2027-02-20,,,single-array:errors,application/json,application/json,Check permissions for log services +integrations,v1,/api/v1/integration/azure,delete,DeleteAzureIntegration,Azure Integration,azure_accounts,delete_azure_integration,delete,,csv,,,,,,,object,application/json,application/json,Delete an Azure integration +integrations,v1,/api/v1/integration/azure,get,ListAzureIntegration,Azure Integration,azure_accounts,list_azure_integration,select,,csv,,,,,,,bare-array,,application/json,List all Azure integrations +integrations,v1,/api/v1/integration/azure,post,CreateAzureIntegration,Azure Integration,azure_accounts,create_azure_integration,insert,,csv,,,,,,,object,application/json,application/json,Create an Azure integration +integrations,v1,/api/v1/integration/azure,put,UpdateAzureIntegration,Azure Integration,azure_accounts,update_azure_integration,replace,,csv,,,,,,,object,application/json,application/json,Update an Azure integration +integrations,v1,/api/v1/integration/azure/host_filters,post,UpdateAzureHostFilters,Azure Integration,azure_host_filters,update_azure_host_filters,insert,,csv,,,,,,,object,application/json,application/json,Update Azure integration host filters +integrations,v1,/api/v1/integration/gcp,delete,DeleteGCPIntegration,GCP Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Delete a GCP integration +integrations,v1,/api/v1/integration/gcp,get,ListGCPIntegration,GCP Integration,skip_this_resource,,,,skip,deprecated,true,,,,,bare-array,,application/json,List all GCP integrations +integrations,v1,/api/v1/integration/gcp,post,CreateGCPIntegration,GCP Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Create a GCP integration +integrations,v1,/api/v1/integration/gcp,put,UpdateGCPIntegration,GCP Integration,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Update a GCP integration +integrations,v1,/api/v1/integration/pagerduty/configuration/services,post,CreatePagerDutyIntegrationService,PagerDuty Integration,pagerduty_services,create_pager_duty_integration_service,insert,,csv,,,,,,,object,application/json,application/json,Create a new service object +integrations,v1,/api/v1/integration/pagerduty/configuration/services/{service_name},delete,DeletePagerDutyIntegrationService,PagerDuty Integration,pagerduty_services,delete_pager_duty_integration_service,delete,,csv,,,,,,,none,,,Delete a single service object +integrations,v1,/api/v1/integration/pagerduty/configuration/services/{service_name},get,GetPagerDutyIntegrationService,PagerDuty Integration,pagerduty_services,get_pager_duty_integration_service,select,,csv,,,,,,,object,,application/json,Get a single service object +integrations,v1,/api/v1/integration/pagerduty/configuration/services/{service_name},put,UpdatePagerDutyIntegrationService,PagerDuty Integration,pagerduty_services,update_pager_duty_integration_service,replace,,csv,,,,,,,none,application/json,,Update a single service object +integrations,v1,/api/v1/integration/slack/configuration/accounts/{account_name}/channels,get,GetSlackIntegrationChannels,Slack Integration,slack_channels,get_slack_integration_channels,select,,csv,,,,,,,bare-array,,application/json,Get all channels in a Slack integration +integrations,v1,/api/v1/integration/slack/configuration/accounts/{account_name}/channels,post,CreateSlackIntegrationChannel,Slack Integration,slack_channels,create_slack_integration_channel,insert,,csv,,,,,,,object,application/json,application/json,Create a Slack integration channel +integrations,v1,/api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name},delete,RemoveSlackIntegrationChannel,Slack Integration,slack_channels,remove_slack_integration_channel,delete,,csv,,,,,,,none,,,Remove a Slack integration channel +integrations,v1,/api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name},get,GetSlackIntegrationChannel,Slack Integration,slack_channels,get_slack_integration_channel,select,,csv,,,,,,,object,,application/json,Get a Slack integration channel +integrations,v1,/api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name},patch,UpdateSlackIntegrationChannel,Slack Integration,slack_channels,update_slack_integration_channel,update,,csv,,,,,,,object,application/json,application/json,Update a Slack integration channel +integrations,v1,/api/v1/integration/webhooks/configuration/custom-variables,post,CreateWebhooksIntegrationCustomVariable,Webhooks Integration,webhook_custom_variables,create_webhooks_integration_custom_variable,insert,,csv,,,,,,,object,application/json,application/json,Create a custom variable +integrations,v1,/api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name},delete,DeleteWebhooksIntegrationCustomVariable,Webhooks Integration,webhook_custom_variables,delete_webhooks_integration_custom_variable,delete,,csv,,,,,,,none,,,Delete a custom variable +integrations,v1,/api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name},get,GetWebhooksIntegrationCustomVariable,Webhooks Integration,webhook_custom_variables,get_webhooks_integration_custom_variable,select,,csv,,,,,,,object,,application/json,Get a custom variable +integrations,v1,/api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name},put,UpdateWebhooksIntegrationCustomVariable,Webhooks Integration,webhook_custom_variables,update_webhooks_integration_custom_variable,replace,,csv,,,,,,,object,application/json,application/json,Update a custom variable +integrations,v1,/api/v1/integration/webhooks/configuration/webhooks,post,CreateWebhooksIntegration,Webhooks Integration,webhooks,create_webhooks_integration,insert,,csv,,,,,,,object,application/json,application/json,Create a webhooks integration +integrations,v1,/api/v1/integration/webhooks/configuration/webhooks/{webhook_name},delete,DeleteWebhooksIntegration,Webhooks Integration,webhooks,delete_webhooks_integration,delete,,csv,,,,,,,none,,,Delete a webhook +integrations,v1,/api/v1/integration/webhooks/configuration/webhooks/{webhook_name},get,GetWebhooksIntegration,Webhooks Integration,webhooks,get_webhooks_integration,select,,csv,,,,,,,object,,application/json,Get a webhook integration +integrations,v1,/api/v1/integration/webhooks/configuration/webhooks/{webhook_name},put,UpdateWebhooksIntegration,Webhooks Integration,webhooks,update_webhooks_integration,replace,,csv,,,,,,,object,application/json,application/json,Update a webhook +llm_observability,unstable,/api/unstable/llm-obs/config/evaluators/custom,get,ListLLMObsCustomEvalConfigs,Agent Observability,evaluator_customs,list_llmobs_custom_eval_configs,select,$.data,csv,,,true,,,,data-array,,application/json,List custom evaluator configurations +llm_observability,unstable,/api/unstable/llm-obs/config/evaluators/custom/{eval_name},delete,DeleteLLMObsCustomEvalConfig,Agent Observability,evaluator_customs,delete_llmobs_custom_eval_config,delete,,csv,,,true,,,,none,,,Delete a custom evaluator configuration +llm_observability,unstable,/api/unstable/llm-obs/config/evaluators/custom/{eval_name},get,GetLLMObsCustomEvalConfig,Agent Observability,evaluator_customs,get_llmobs_custom_eval_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get a custom evaluator configuration +llm_observability,unstable,/api/unstable/llm-obs/config/evaluators/custom/{eval_name},put,UpdateLLMObsCustomEvalConfig,Agent Observability,evaluator_customs,update_llmobs_custom_eval_config,replace,,csv,,,true,,,,none,application/json,,Create or update a custom evaluator configuration +llm_observability,v2,/api/v2/llm-obs/v1/annotated-interactions,get,GetLLMObsAnnotatedInteractionsByTraceIDs,Agent Observability,annotated_interactions,get_llmobs_annotated_interactions_by_trace_ids,select,$.data,csv,,,true,,,,data-object,,application/json,Get annotated interactions by content IDs +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues,get,ListLLMObsAnnotationQueues,Agent Observability,annotation_queues,list_llmobs_annotation_queues,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability annotation queues +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues,post,CreateLLMObsAnnotationQueue,Agent Observability,annotation_queues,create_llmobs_annotation_queue,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an Agent Observability annotation queue +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id},delete,DeleteLLMObsAnnotationQueue,Agent Observability,annotation_queues,delete_llmobs_annotation_queue,delete,,csv,,,true,,,,none,,,Delete an Agent Observability annotation queue +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id},patch,UpdateLLMObsAnnotationQueue,Agent Observability,annotation_queues,update_llmobs_annotation_queue,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Agent Observability annotation queue +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotated-interactions,get,GetLLMObsAnnotatedInteractions,Agent Observability,annotation_queue_annotated_interactions,get_llmobs_annotated_interactions,select,$.data,csv,,,true,,,,data-object,,application/json,Get annotated queue interactions +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations,post,UpsertLLMObsAnnotations,Agent Observability,annotation_queue_annotations,upsert_llmobs_annotations,insert,,csv,,,true,,,,data-object,application/json,application/json,Create or update annotations +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations/delete,post,DeleteLLMObsAnnotations,Agent Observability,annotation_queue_annotations,delete_llmobs_annotations,exec,,csv,,,true,,,,data-object,application/json,application/json,Delete annotations +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions,post,CreateLLMObsAnnotationQueueInteractions,Agent Observability,annotation_queue_interactions,create_llmobs_annotation_queue_interactions,insert,,csv,,,true,,,,data-object,application/json,application/json,Add annotation queue interactions +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions/delete,post,DeleteLLMObsAnnotationQueueInteractions,Agent Observability,annotation_queue_interactions,delete_llmobs_annotation_queue_interactions,exec,,csv,,,true,,,,none,application/json,,Delete annotation queue interactions +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/label-schema,get,GetLLMObsAnnotationQueueLabelSchema,Agent Observability,annotation_queue_label_schemas,get_llmobs_annotation_queue_label_schema,select,$.data,csv,,,true,,,,data-object,,application/json,Get annotation queue label schema +llm_observability,v2,/api/v2/llm-obs/v1/annotation-queues/{queue_id}/label-schema,put,UpdateLLMObsAnnotationQueueLabelSchema,Agent Observability,annotation_queue_label_schemas,update_llmobs_annotation_queue_label_schema,replace,,csv,,,true,,,,data-object,application/json,application/json,Update annotation queue label schema +llm_observability,v2,/api/v2/llm-obs/v1/experimentation/analytics,post,AggregateLLMObsExperimentation,Agent Observability,experiments,aggregate_llmobs_experimentation,exec,,csv,,,true,,,,data-object,application/json,application/json,Aggregate Agent Observability experimentation +llm_observability,v2,/api/v2/llm-obs/v1/experimentation/search,post,SearchLLMObsExperimentation,Agent Observability,experiments,search_llmobs_experimentation,exec,,csv,,,true,,,,data-object,application/json,application/json,Search Agent Observability experimentation +llm_observability,v2,/api/v2/llm-obs/v1/experimentation/simple-search,post,SimpleSearchLLMObsExperimentation,Agent Observability,experiments,simple_search_llmobs_experimentation,exec,,csv,,,true,,,,data-object,application/json,application/json,Simple search experimentation entities +llm_observability,v2,/api/v2/llm-obs/v1/experiments,get,ListLLMObsExperiments,Agent Observability,experiments,list_llmobs_experiments,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability experiments +llm_observability,v2,/api/v2/llm-obs/v1/experiments,post,CreateLLMObsExperiment,Agent Observability,experiments,create_llmobs_experiment,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an Agent Observability experiment +llm_observability,v2,/api/v2/llm-obs/v1/experiments/delete,post,DeleteLLMObsExperiments,Agent Observability,experiments,delete_llmobs_experiments,exec,,csv,,,true,,,,none,application/json,,Delete Agent Observability experiments +llm_observability,v2,/api/v2/llm-obs/v1/experiments/{experiment_id},patch,UpdateLLMObsExperiment,Agent Observability,experiments,update_llmobs_experiment,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Agent Observability experiment +llm_observability,v2,/api/v2/llm-obs/v1/experiments/{experiment_id}/events,get,ListLLMObsExperimentEventsV1,Agent Observability,skip_this_resource,,,,skip,deprecated,true,true,,,,data-array,,application/json,List Agent Observability experiment spans (v1) +llm_observability,v2,/api/v2/llm-obs/v1/experiments/{experiment_id}/events,post,CreateLLMObsExperimentEvents,Agent Observability,experiment_events,create_llmobs_experiment_events,insert,,csv,,,true,,,,none,application/json,,Push events for an Agent Observability experiment +llm_observability,v2,/api/v2/llm-obs/v1/integrations/{integration}/accounts,get,ListLLMObsIntegrationAccounts,Agent Observability,integration_accounts,list_llmobs_integration_accounts,select,,csv,,,true,,,,bare-array,,application/json,List LLM integration accounts +llm_observability,v2,/api/v2/llm-obs/v1/integrations/{integration}/{account_id}/inference,post,CreateLLMObsIntegrationInference,Agent Observability,integration_inferences,create_llmobs_integration_inference,insert,,csv,,,true,,,,multi-array,application/json,application/json,Run an LLM inference +llm_observability,v2,/api/v2/llm-obs/v1/integrations/{integration}/{account_id}/models,get,ListLLMObsIntegrationModels,Agent Observability,integration_models,list_llmobs_integration_models,select,,csv,,,true,,,,bare-array,,application/json,List LLM integration models +llm_observability,v2,/api/v2/llm-obs/v1/projects,get,ListLLMObsProjects,Agent Observability,projects,list_llmobs_projects,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability projects +llm_observability,v2,/api/v2/llm-obs/v1/projects,post,CreateLLMObsProject,Agent Observability,projects,create_llmobs_project,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an Agent Observability project +llm_observability,v2,/api/v2/llm-obs/v1/projects/delete,post,DeleteLLMObsProjects,Agent Observability,projects,delete_llmobs_projects,exec,,csv,,,true,,,,none,application/json,,Delete Agent Observability projects +llm_observability,v2,/api/v2/llm-obs/v1/projects/{project_id},patch,UpdateLLMObsProject,Agent Observability,projects,update_llmobs_project,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Agent Observability project +llm_observability,v2,/api/v2/llm-obs/v1/prompts,get,ListLLMObsPrompts,Agent Observability,prompts,list_llmobs_prompts,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability prompts +llm_observability,v2,/api/v2/llm-obs/v1/prompts,post,CreateLLMObsPrompt,Agent Observability,prompts,create_llmobs_prompt,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an Agent Observability prompt +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id},delete,DeleteLLMObsPrompt,Agent Observability,prompts,delete_llmobs_prompt,delete,,csv,,,true,,,,data-object,,application/json,Delete an Agent Observability prompt +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id},get,GetLLMObsPrompt,Agent Observability,prompts,get_llmobs_prompt,select,$.data,csv,,,true,,,,data-object,,application/json,Get an Agent Observability prompt +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id},patch,UpdateLLMObsPrompt,Agent Observability,prompts,update_llmobs_prompt,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Agent Observability prompt +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions,get,ListLLMObsPromptVersions,Agent Observability,prompt_versions,list_llmobs_prompt_versions,select,$.data,csv,,,true,,,,data-array,,application/json,List versions of an Agent Observability prompt +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions,post,CreateLLMObsPromptVersion,Agent Observability,prompt_versions,create_llmobs_prompt_version,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a new Agent Observability prompt version +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions/{version},get,GetLLMObsPromptVersion,Agent Observability,prompt_versions,get_llmobs_prompt_version,select,$.data,csv,,,true,,,,data-object,,application/json,Get a specific Agent Observability prompt version +llm_observability,v2,/api/v2/llm-obs/v1/prompts/{prompt_id}/versions/{version},patch,UpdateLLMObsPromptVersion,Agent Observability,prompt_versions,update_llmobs_prompt_version,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Agent Observability prompt version +llm_observability,v2,/api/v2/llm-obs/v1/spans/events,get,ListLLMObsSpans,Agent Observability,span_events,list_llmobs_spans,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability spans +llm_observability,v2,/api/v2/llm-obs/v1/spans/events/search,post,SearchLLMObsSpans,Agent Observability,span_events,search_llmobs_spans,exec,,csv,,,true,,,,data-array,application/json,application/json,Search Agent Observability spans +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-clustered-points,get,ListLLMObsPatternsClusteredPoints,Agent Observability,topic_discovery_clustered_points,list_llmobs_patterns_clustered_points,select,$.data,csv,,,true,,,,data-object,,application/json,List patterns clustered points +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-configs,get,ListLLMObsPatternsConfigs,Agent Observability,topic_discovery_configs,list_llmobs_patterns_configs,select,$.data,csv,,,true,,,,data-object,,application/json,List patterns configurations +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-configs,put,UpsertLLMObsPatternsConfig,Agent Observability,topic_discovery_configs,upsert_llmobs_patterns_config,replace,,csv,,,true,,,,data-object,application/json,application/json,Create or update a patterns configuration +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-configs/latest,get,GetLLMObsPatternsConfig,Agent Observability,topic_discovery_latest_configs,get_llmobs_patterns_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get a patterns configuration +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-configs/{config_id},delete,DeleteLLMObsPatternsConfig,Agent Observability,topic_discovery_configs,delete_llmobs_patterns_config,delete,,csv,,,true,,,,none,,,Delete a patterns configuration +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-runs,get,ListLLMObsPatternsRuns,Agent Observability,topic_discovery_runs,list_llmobs_patterns_runs,select,$.data,csv,,,true,,,,data-object,,application/json,List patterns runs +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-runs,post,TriggerLLMObsPatterns,Agent Observability,topic_discovery_runs,trigger_llmobs_patterns,insert,,csv,,,true,,,,data-object,application/json,application/json,Trigger a patterns run +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-runs/status,get,GetLLMObsPatternsRunStatus,Agent Observability,topic_discovery_run_statuses,get_llmobs_patterns_run_status,select,$.data,csv,,,true,,,,data-object,,application/json,Get patterns run status +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-topics,get,ListLLMObsPatternsTopics,Agent Observability,topic_discovery_topics,list_llmobs_patterns_topics,select,$.data,csv,,,true,,,,data-object,,application/json,List patterns topics +llm_observability,v2,/api/v2/llm-obs/v1/topic-discovery-topics/with-cluster-points,get,ListLLMObsPatternsTopicsWithClusteredPoints,Agent Observability,topic_discovery_topic_with_cluster_points,list_llmobs_patterns_topics_with_clustered_points,select,$.data,csv,,,true,,,,data-object,,application/json,List patterns topics with clustered points +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets,get,ListLLMObsDatasets,Agent Observability,datasets,list_llmobs_datasets,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability datasets +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets,post,CreateLLMObsDataset,Agent Observability,datasets,create_llmobs_dataset,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an Agent Observability dataset +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/delete,post,DeleteLLMObsDatasets,Agent Observability,datasets,delete_llmobs_datasets,exec,,csv,,,true,,,,none,application/json,,Delete Agent Observability datasets +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id},patch,UpdateLLMObsDataset,Agent Observability,datasets,update_llmobs_dataset,update,,csv,,,true,,,,data-object,application/json,application/json,Update an Agent Observability dataset +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/batch_update,post,BatchUpdateLLMObsDataset,Agent Observability,datasets,batch_update_llmobs_dataset,exec,,csv,,,true,,,,data-array,application/json,application/json,Batch update Agent Observability dataset records +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/clone,post,CloneLLMObsDataset,Agent Observability,datasets,clone_llmobs_dataset,exec,,csv,,,true,,,,data-object,application/json,application/json,Clone an Agent Observability dataset +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state,get,GetLLMObsDatasetDraftState,Agent Observability,dataset_draft_states,get_llmobs_dataset_draft_state,select,$.data,csv,,,true,,,,data-object,,application/json,Get Agent Observability dataset draft state +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/lock,patch,LockLLMObsDatasetDraftState,Agent Observability,dataset_draft_states,lock_llmobs_dataset_draft_state,exec,,csv,,,true,,,,data-object,,application/json,Lock Agent Observability dataset draft state +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/unlock,patch,UnlockLLMObsDatasetDraftState,Agent Observability,dataset_draft_states,unlock_llmobs_dataset_draft_state,exec,,csv,,,true,,,,none,,,Unlock Agent Observability dataset draft state +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/export,get,ExportLLMObsDataset,Agent Observability,skip_this_resource,,,,skip,non_json_response,,true,,,,non-json,,text/csv,Export an Agent Observability dataset +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records,get,ListLLMObsDatasetRecords,Agent Observability,dataset_records,list_llmobs_dataset_records,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability dataset records +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records,patch,UpdateLLMObsDatasetRecords,Agent Observability,dataset_records,update_llmobs_dataset_records,update,,csv,,,true,,,,data-array,application/json,application/json,Update Agent Observability dataset records +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records,post,CreateLLMObsDatasetRecords,Agent Observability,dataset_records,create_llmobs_dataset_records,insert,,csv,,,true,,,,data-array,application/json,application/json,Append records to an Agent Observability dataset +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records/delete,post,DeleteLLMObsDatasetRecords,Agent Observability,dataset_records,delete_llmobs_dataset_records,exec,,csv,,,true,,,,none,application/json,,Delete Agent Observability dataset records +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/restore,post,RestoreLLMObsDatasetVersion,Agent Observability,datasets,restore_llmobs_dataset_version,exec,,csv,,,true,,,,none,application/json,,Restore an Agent Observability dataset version +llm_observability,v2,/api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/versions,get,ListLLMObsDatasetVersions,Agent Observability,dataset_versions,list_llmobs_dataset_versions,select,$.data,csv,,,true,,,,data-array,,application/json,List Agent Observability dataset versions +llm_observability,v2,/api/v2/llm-obs/v2/experiments/{experiment_id}/events,get,ListLLMObsExperimentEventsV2,Agent Observability,skip_this_resource,,,,skip,deprecated,true,true,,,,data-object,,application/json,List Agent Observability experiment events (v2) +llm_observability,v2,/api/v2/llm-obs/v2/{project_id}/datasets/{dataset_id}/records/upload,post,UploadLLMObsDatasetRecordsFile,Agent Observability,skip_this_resource,,,,skip,multipart_request,,true,,,,none,multipart/form-data,,Upload records to an Agent Observability dataset +llm_observability,v2,/api/v2/llm-obs/v3/experiments/{experiment_id}/events,get,ListLLMObsExperimentEvents,Agent Observability,experiment_events_v3,list_llmobs_experiment_events,select,$.data,csv,,,true,,,,data-object,,application/json,List events for an Agent Observability experiment +llm_observability,v2,/api/v2/model-lab-api/artifacts/content,get,GetModelLabArtifactContent,Model Lab API,skip_this_resource,,,,skip,non_json_response,,true,,,,non-json,,application/octet-stream,Get Model Lab artifact content +llm_observability,v2,/api/v2/model-lab-api/facet-keys,get,ListModelLabRunFacetKeys,Model Lab API,model_lab_facet_keys,list_model_lab_run_facet_keys,select,$.data,csv,,,true,,,,data-object,,application/json,List Model Lab run facet keys +llm_observability,v2,/api/v2/model-lab-api/facet-values,get,ListModelLabRunFacetValues,Model Lab API,model_lab_facet_values,list_model_lab_run_facet_values,select,$.data,csv,,,true,,,,data-object,,application/json,List Model Lab run facet values +llm_observability,v2,/api/v2/model-lab-api/project-facet-keys,get,ListModelLabProjectFacetKeys,Model Lab API,model_lab_project_facet_keys,list_model_lab_project_facet_keys,select,$.data,csv,,,true,,,,data-object,,application/json,List Model Lab project facet keys +llm_observability,v2,/api/v2/model-lab-api/project-facet-values,get,ListModelLabProjectFacetValues,Model Lab API,model_lab_project_facet_values,list_model_lab_project_facet_values,select,$.data,csv,,,true,,,,data-object,,application/json,List Model Lab project facet values +llm_observability,v2,/api/v2/model-lab-api/projects,get,ListModelLabProjects,Model Lab API,model_lab_projects,list_model_lab_projects,select,$.data,csv,,,true,,,,data-array,,application/json,List Model Lab projects +llm_observability,v2,/api/v2/model-lab-api/projects/{project_id},get,GetModelLabProject,Model Lab API,model_lab_projects,get_model_lab_project,select,$.data,csv,,,true,,,,data-object,,application/json,Get a Model Lab project +llm_observability,v2,/api/v2/model-lab-api/projects/{project_id}/artifacts,get,ListModelLabProjectArtifacts,Model Lab API,model_lab_project_artifacts,list_model_lab_project_artifacts,select,$.data,csv,,,true,,,,data-object,,application/json,List Model Lab project artifacts +llm_observability,v2,/api/v2/model-lab-api/projects/{project_id}/star,delete,UnstarModelLabProject,Model Lab API,model_lab_projects,unstar_model_lab_project,delete,,csv,,,true,,,,none,,,Remove star from a Model Lab project +llm_observability,v2,/api/v2/model-lab-api/projects/{project_id}/star,post,StarModelLabProject,Model Lab API,model_lab_projects,star_model_lab_project,exec,,csv,,,true,,,,none,,,Star a Model Lab project +llm_observability,v2,/api/v2/model-lab-api/runs,get,ListModelLabRuns,Model Lab API,model_lab_runs,list_model_lab_runs,select,$.data,csv,,,true,,,,data-array,,application/json,List Model Lab runs +llm_observability,v2,/api/v2/model-lab-api/runs/{run_id},delete,DeleteModelLabRun,Model Lab API,model_lab_runs,delete_model_lab_run,delete,,csv,,,true,,,,none,,,Delete a Model Lab run +llm_observability,v2,/api/v2/model-lab-api/runs/{run_id},get,GetModelLabRun,Model Lab API,model_lab_runs,get_model_lab_run,select,$.data,csv,,,true,,,,data-object,,application/json,Get a Model Lab run +llm_observability,v2,/api/v2/model-lab-api/runs/{run_id}/artifacts,get,ListModelLabRunArtifacts,Model Lab API,model_lab_run_artifacts,list_model_lab_run_artifacts,select,$.data,csv,,,true,,,,data-object,,application/json,List Model Lab run artifacts +llm_observability,v2,/api/v2/model-lab-api/runs/{run_id}/pin,delete,UnpinModelLabRun,Model Lab API,model_lab_run_pins,unpin_model_lab_run,delete,,csv,,,true,,,,none,,,Unpin a Model Lab run +llm_observability,v2,/api/v2/model-lab-api/runs/{run_id}/pin,post,PinModelLabRun,Model Lab API,model_lab_run_pins,pin_model_lab_run,insert,,csv,,,true,,,,none,,,Pin a Model Lab run +logs,v2,/api/v2/logs/config/restriction_queries,get,ListRestrictionQueries,Logs Restriction Queries,restriction_queries,list_restriction_queries,select,$.data,csv,,,true,,,,data-array,,application/json,List restriction queries +logs,v2,/api/v2/logs/config/restriction_queries,post,CreateRestrictionQuery,Logs Restriction Queries,restriction_queries,create_restriction_query,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/role/{role_id},get,GetRoleRestrictionQuery,Logs Restriction Queries,restriction_query_roles,get_role_restriction_query,select,$.data,csv,,,true,,,,data-array,,application/json,Get restriction query for a given role +logs,v2,/api/v2/logs/config/restriction_queries/user/{user_id},get,ListUserRestrictionQueries,Logs Restriction Queries,restriction_query_users,list_user_restriction_queries,select,$.data,csv,,,true,,,,data-array,,application/json,Get all restriction queries for a given user +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id},delete,DeleteRestrictionQuery,Logs Restriction Queries,restriction_queries,delete_restriction_query,delete,,csv,,,true,,,,none,,,Delete a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id},get,GetRestrictionQuery,Logs Restriction Queries,restriction_queries,get_restriction_query,select,$.data,csv,,,true,,,,data-object,,application/json,Get a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id},patch,UpdateRestrictionQuery,Logs Restriction Queries,restriction_queries,update_restriction_query,update,,csv,,,true,,,,data-object,application/json,application/json,Update a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id},put,ReplaceRestrictionQuery,Logs Restriction Queries,restriction_queries,replace_restriction_query,replace,,csv,,,true,,,,data-object,application/json,application/json,Replace a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id}/roles,delete,RemoveRoleFromRestrictionQuery,Logs Restriction Queries,restriction_query_roles,remove_role_from_restriction_query,delete,,csv,,,true,,,,none,application/json,,Revoke role from a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id}/roles,get,ListRestrictionQueryRoles,Logs Restriction Queries,restriction_query_roles,list_restriction_query_roles,select,$.data,csv,,,true,,,,data-array,,application/json,List roles for a restriction query +logs,v2,/api/v2/logs/config/restriction_queries/{restriction_query_id}/roles,post,AddRoleToRestrictionQuery,Logs Restriction Queries,restriction_query_roles,add_role_to_restriction_query,insert,,csv,,,true,,,,none,application/json,,Grant role to a restriction query +logs,v2,/api/v2/obs-pipelines/pipelines,get,ListPipelines,Observability Pipelines,observability_pipelines,list_pipelines,select,$.data,csv,,,,,,,data-array,,application/json,List pipelines +logs,v2,/api/v2/obs-pipelines/pipelines,post,CreatePipeline,Observability Pipelines,observability_pipelines,create_pipeline,insert,,csv,,,,,,,data-object,application/json,application/json,Create a new pipeline +logs,v2,/api/v2/obs-pipelines/pipelines/validate,post,ValidatePipeline,Observability Pipelines,observability_pipelines,validate_pipeline,exec,,csv,,,,,,,single-array:errors,application/json,application/json,Validate an observability pipeline +logs,v2,/api/v2/obs-pipelines/pipelines/{pipeline_id},delete,DeletePipeline,Observability Pipelines,observability_pipelines,delete_pipeline,delete,,csv,,,,,,,none,,,Delete a pipeline +logs,v2,/api/v2/obs-pipelines/pipelines/{pipeline_id},get,GetPipeline,Observability Pipelines,observability_pipelines,get_pipeline,select,$.data,csv,,,,,,,data-object,,application/json,Get a specific pipeline +logs,v2,/api/v2/obs-pipelines/pipelines/{pipeline_id},put,UpdatePipeline,Observability Pipelines,observability_pipelines,update_pipeline,replace,,csv,,,,,,,data-object,application/json,application/json,Update a pipeline +logs,v1,/api/v1/logs-queries/list,post,ListLogsV1,Logs,skip_this_resource,,,,skip,superseded_by_v2,,,,,,single-array:logs,application/json,application/json,Search logs +logs,v1,/api/v1/logs/config/index-order,get,GetLogsIndexOrder,Logs Indexes,index_order,get_logs_index_order,select,,csv,,,,,,,object,,application/json,Get indexes order +logs,v1,/api/v1/logs/config/index-order,put,UpdateLogsIndexOrder,Logs Indexes,index_order,update_logs_index_order,replace,,csv,,,,,,,object,application/json,application/json,Update indexes order +logs,v1,/api/v1/logs/config/indexes,get,ListLogIndexes,Logs Indexes,indexes,list_log_indexes,select,$.indexes,csv,,,,,,,single-array:indexes,,application/json,Get all indexes +logs,v1,/api/v1/logs/config/indexes,post,CreateLogsIndex,Logs Indexes,indexes,create_logs_index,insert,,csv,,,,,,,single-array:exclusion_filters,application/json,application/json,Create an index +logs,v1,/api/v1/logs/config/indexes/{name},delete,DeleteLogsIndex,Logs Indexes,indexes,delete_logs_index,delete,,csv,,,,,,,none,,,Delete an index +logs,v1,/api/v1/logs/config/indexes/{name},get,GetLogsIndex,Logs Indexes,indexes,get_logs_index,select,,csv,,,,,,,single-array:exclusion_filters,,application/json,Get an index +logs,v1,/api/v1/logs/config/indexes/{name},put,UpdateLogsIndex,Logs Indexes,indexes,update_logs_index,replace,,csv,,,,,,,single-array:exclusion_filters,application/json,application/json,Update an index +logs,v1,/api/v1/logs/config/pipeline-order,get,GetLogsPipelineOrder,Logs Pipelines,pipeline_order,get_logs_pipeline_order,select,,csv,,,,,,,object,,application/json,Get pipeline order +logs,v1,/api/v1/logs/config/pipeline-order,put,UpdateLogsPipelineOrder,Logs Pipelines,pipeline_order,update_logs_pipeline_order,replace,,csv,,,,,,,object,application/json,application/json,Update pipeline order +logs,v1,/api/v1/logs/config/pipelines,get,ListLogsPipelines,Logs Pipelines,pipelines,list_logs_pipelines,select,,csv,,,,,,,bare-array,,application/json,Get all pipelines +logs,v1,/api/v1/logs/config/pipelines,post,CreateLogsPipeline,Logs Pipelines,pipelines,create_logs_pipeline,insert,,csv,,,,,,,single-array:processors,application/json,application/json,Create a pipeline +logs,v1,/api/v1/logs/config/pipelines/{pipeline_id},delete,DeleteLogsPipeline,Logs Pipelines,pipelines,delete_logs_pipeline,delete,,csv,,,,,,,none,,,Delete a pipeline +logs,v1,/api/v1/logs/config/pipelines/{pipeline_id},get,GetLogsPipeline,Logs Pipelines,pipelines,get_logs_pipeline,select,,csv,,,,,,,single-array:processors,,application/json,Get a pipeline +logs,v1,/api/v1/logs/config/pipelines/{pipeline_id},put,UpdateLogsPipeline,Logs Pipelines,pipelines,update_logs_pipeline,replace,,csv,,,,,,,single-array:processors,application/json,application/json,Update a pipeline +logs,v1,/v1/input,post,SubmitLogV1,Logs,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json; application/json;simple; application/logplex-1; text/plain,application/json,Send logs +metrics,v2,/api/v2/ddsql/query/tabular,post,ExecuteDdsqlTabularQuery,DDSQL,ddsql_queries,execute_ddsql_tabular_query,exec,,csv,,,,,,,data-object,application/json,application/json,Execute a tabular DDSQL query +metrics,v2,/api/v2/ddsql/query/tabular/fetch,post,FetchDdsqlTabularQuery,DDSQL,ddsql_queries,fetch_ddsql_tabular_query,exec,,csv,,,,,,,data-object,application/json,application/json,Fetch the result of a DDSQL query +metrics,v2,/api/v2/metrics/historical-metrics-configurations,post,CreateHistoricalMetricsConfiguration,Metrics,historical_metrics_configurations,create_historical_metrics_configuration,insert,,csv,,,true,,,,data-object,application/json,application/json,Enable historical metrics ingestion +metrics,v2,/api/v2/metrics/historical-metrics-configurations/{metric_name},delete,DeleteHistoricalMetricsConfiguration,Metrics,historical_metrics_configurations,delete_historical_metrics_configuration,delete,,csv,,,true,,,,none,,,Delete a historical metrics configuration +metrics,v2,/api/v2/metrics/historical-metrics-configurations/{metric_name},get,GetHistoricalMetricsConfiguration,Metrics,historical_metrics_configurations,get_historical_metrics_configuration,select,$.data,csv,,,true,,,,data-object,,application/json,Get a historical metrics configuration +metrics,v2,/api/v2/metrics/tag-indexing-rules,get,ListTagIndexingRules,Metrics,tag_indexing_rules,list_tag_indexing_rules,select,$.data,csv,,,true,,,,data-array,,application/json,List tag indexing rules +metrics,v2,/api/v2/metrics/tag-indexing-rules,post,CreateTagIndexingRule,Metrics,tag_indexing_rules,create_tag_indexing_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a tag indexing rule +metrics,v2,/api/v2/metrics/tag-indexing-rules/order,post,ReorderTagIndexingRules,Metrics,tag_indexing_rules,reorder_tag_indexing_rules,exec,,csv,,,true,,,,none,application/json,,Reorder tag indexing rules +metrics,v2,/api/v2/metrics/tag-indexing-rules/{id},delete,DeleteTagIndexingRule,Metrics,tag_indexing_rules,delete_tag_indexing_rule,delete,,csv,,,true,,,,none,,,Delete a tag indexing rule +metrics,v2,/api/v2/metrics/tag-indexing-rules/{id},get,GetTagIndexingRule,Metrics,tag_indexing_rules,get_tag_indexing_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get a tag indexing rule +metrics,v2,/api/v2/metrics/tag-indexing-rules/{id},put,UpdateTagIndexingRule,Metrics,tag_indexing_rules,update_tag_indexing_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a tag indexing rule +metrics,v2,/api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions,delete,DeleteTagIndexingRuleExemption,Metrics,tag_indexing_rule_exemptions,delete_tag_indexing_rule_exemption,delete,,csv,,,true,,,,none,,,Delete a tag indexing rule exemption +metrics,v2,/api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions,get,GetTagIndexingRuleExemption,Metrics,tag_indexing_rule_exemptions,get_tag_indexing_rule_exemption,select,$.data,csv,,,true,,,,data-object,,application/json,Get a tag indexing rule exemption +metrics,v2,/api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions,post,CreateTagIndexingRuleExemption,Metrics,tag_indexing_rule_exemptions,create_tag_indexing_rule_exemption,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a tag indexing rule exemption +metrics,v2,/api/v2/metrics/{metric_name}/tag-indexing-rules,get,ListTagIndexingRulesForMetric,Metrics,tag_indexing_rules,list_tag_indexing_rules_for_metric,select,$.data,csv,,,true,,,,data-array,,application/json,List tag indexing rules for a metric +metrics,v1,/api/v1/distribution_points,post,SubmitDistributionPoints,Metrics,distribution_points,submit_distribution_points,exec,,csv,,,,,,,object,application/json,text/json,Submit distribution points +metrics,v1,/api/v1/metrics,get,ListActiveMetrics,Metrics,active_metrics,list_active_metrics,select,,csv,,,,,,,object,,application/json,Get active metrics list +metrics,v1,/api/v1/metrics/{metric_name},get,GetMetricMetadata,Metrics,metric_metadata,get_metric_metadata,select,,csv,,,,,,,object,,application/json,Get metric metadata +metrics,v1,/api/v1/metrics/{metric_name},put,UpdateMetricMetadata,Metrics,metric_metadata,update_metric_metadata,replace,,csv,,,,,,,object,application/json,application/json,Edit metric metadata +metrics,v1,/api/v1/query,get,QueryMetrics,Metrics,timeseries_query,query_metrics,select,$.series,csv,,,,,,,single-array:series,,application/json,Query timeseries points +metrics,v1,/api/v1/search,get,ListMetrics,Metrics,skip_this_resource,,,,skip,deprecated,true,,,,,object,,application/json,Search metrics +metrics,v1,/api/v1/series,post,SubmitMetricsV1,Metrics,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,text/json,Submit metrics +monitoring,v2,/api/v2/data-observability/monitors/runs/{run_id}/status,get,GetDataObservabilityMonitorRunStatus,Data Observability,data_observability_monitor_run_statuses,get_data_observability_monitor_run_status,select,$.data,csv,,,true,,,,data-object,,application/json,Get data observability monitor run status +monitoring,v2,/api/v2/data-observability/monitors/{monitor_id}/run,post,RunDataObservabilityMonitor,Data Observability,data_observability_monitors,run_data_observability_monitor,exec,,csv,,,true,,,,data-object,,application/json,Run a data observability monitor +monitoring,v2,/api/v2/synthetics/api-multistep/subtests/{public_id},get,GetApiMultistepSubtests,Synthetics,synthetics_api_multistep_subtests,get_api_multistep_subtests,select,$.data,csv,,,,,,,data-array,,application/json,Get available subtests for a multistep test +monitoring,v2,/api/v2/synthetics/api-multistep/subtests/{public_id}/parents,get,GetApiMultistepSubtestParents,Synthetics,synthetics_api_multistep_subtest_parents,get_api_multistep_subtest_parents,select,$.data,csv,,,,,,,data-array,,application/json,Get parent tests for a subtest +monitoring,v2,/api/v2/synthetics/downtimes,get,ListSyntheticsDowntimes,Synthetics,synthetics_downtimes,list_synthetics_downtimes,select,$.data,csv,,,,,,,data-array,,application/json,List Synthetics downtimes +monitoring,v2,/api/v2/synthetics/downtimes,post,CreateSyntheticsDowntime,Synthetics,synthetics_downtimes,create_synthetics_downtime,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Synthetics downtime +monitoring,v2,/api/v2/synthetics/downtimes/{downtime_id},delete,DeleteSyntheticsDowntime,Synthetics,synthetics_downtimes,delete_synthetics_downtime,delete,,csv,,,,,,,none,,,Delete a Synthetics downtime +monitoring,v2,/api/v2/synthetics/downtimes/{downtime_id},get,GetSyntheticsDowntime,Synthetics,synthetics_downtimes,get_synthetics_downtime,select,$.data,csv,,,,,,,data-object,,application/json,Get a Synthetics downtime +monitoring,v2,/api/v2/synthetics/downtimes/{downtime_id},put,UpdateSyntheticsDowntime,Synthetics,synthetics_downtimes,update_synthetics_downtime,replace,,csv,,,,,,,data-object,application/json,application/json,Update a Synthetics downtime +monitoring,v2,/api/v2/synthetics/downtimes/{downtime_id}/tests/{test_id},delete,RemoveTestFromSyntheticsDowntime,Synthetics,synthetics_downtime_tests,remove_test_from_synthetics_downtime,delete,,csv,,,,,,,data-object,,application/json,Remove a test from a Synthetics downtime +monitoring,v2,/api/v2/synthetics/downtimes/{downtime_id}/tests/{test_id},put,AddTestToSyntheticsDowntime,Synthetics,synthetics_downtime_tests,add_test_to_synthetics_downtime,replace,,csv,,,,,,,data-object,,application/json,Add a test to a Synthetics downtime +monitoring,v2,/api/v2/synthetics/suites,post,CreateSyntheticsSuite,Synthetics,synthetics_suites,create_synthetics_suite,insert,,csv,,,,,,,data-object,application/json,application/json,Create a test suite +monitoring,v2,/api/v2/synthetics/suites/bulk-delete,post,DeleteSyntheticsSuites,Synthetics,synthetics_suites,delete_synthetics_suites,exec,,csv,,,,,,,data-array,application/json,application/json,Bulk delete suites +monitoring,v2,/api/v2/synthetics/suites/search,get,SearchSuites,Synthetics,synthetics_suites,search_suites,select,$.data,csv,,,,,,,data-object,,application/json,Search test suites +monitoring,v2,/api/v2/synthetics/suites/{public_id},get,GetSyntheticsSuite,Synthetics,synthetics_suites,get_synthetics_suite,select,$.data,csv,,,,,,,data-object,,application/json,Get a suite +monitoring,v2,/api/v2/synthetics/suites/{public_id},put,EditSyntheticsSuite,Synthetics,synthetics_suites,edit_synthetics_suite,replace,,csv,,,,,,,data-object,application/json,application/json,Edit a test suite +monitoring,v2,/api/v2/synthetics/suites/{public_id}/jsonpatch,patch,PatchTestSuite,Synthetics,synthetics_suite_jsonpatches,patch_test_suite,update,,csv,,,,,,,data-object,application/json,application/json,Patch a test suite +monitoring,v2,/api/v2/synthetics/tests/browser/{public_id}/results,get,ListSyntheticsBrowserTestLatestResults,Synthetics,synthetics_test_browser_results,list_synthetics_browser_test_latest_results,select,$.data,csv,,,,,,,data-array,,application/json,Get a browser test's latest results +monitoring,v2,/api/v2/synthetics/tests/browser/{public_id}/results/{result_id},get,GetSyntheticsBrowserTestResult,Synthetics,synthetics_test_browser_results,get_synthetics_browser_test_result,select,$.data,csv,,,,,,,data-object,,application/json,Get a browser test result +monitoring,v2,/api/v2/synthetics/tests/bulk-delete,post,DeleteSyntheticsTests,Synthetics,synthetics_tests,delete_synthetics_tests,exec,,csv,,,,,,,data-array,application/json,application/json,Bulk delete tests +monitoring,v2,/api/v2/synthetics/tests/fast/{id},get,GetSyntheticsFastTestResult,Synthetics,synthetics_fast_test_results,get_synthetics_fast_test_result,select,$.data,csv,,,,,,,data-object,,application/json,Get a fast test result +monitoring,v2,/api/v2/synthetics/tests/network,post,CreateSyntheticsNetworkTest,Synthetics,synthetics_network_tests,create_synthetics_network_test,insert,,csv,,,,,,,data-object,application/json,application/json,Create a Network Path test +monitoring,v2,/api/v2/synthetics/tests/network/{public_id},get,GetSyntheticsNetworkTest,Synthetics,synthetics_network_tests,get_synthetics_network_test,select,$.data,csv,,,,,,,data-object,,application/json,Get a Network Path test +monitoring,v2,/api/v2/synthetics/tests/network/{public_id},put,UpdateSyntheticsNetworkTest,Synthetics,synthetics_network_tests,update_synthetics_network_test,replace,,csv,,,,,,,data-object,application/json,application/json,Edit a Network Path test +monitoring,v2,/api/v2/synthetics/tests/poll_results,get,PollSyntheticsTestResults,Synthetics,synthetics_test_poll_results,poll_synthetics_test_results,select,$.data,csv,,,,,,,data-array,,application/json,Poll for test results +monitoring,v2,/api/v2/synthetics/tests/{public_id}/files/download,post,GetTestFileDownloadUrl,Synthetics,synthetics_test_files,get_test_file_download_url,exec,,csv,,,,,,,object,application/json,application/json,Get a presigned URL for downloading a test file +monitoring,v2,/api/v2/synthetics/tests/{public_id}/files/multipart-presigned-urls,post,GetTestFileMultipartPresignedUrls,Synthetics,synthetics_test_files,get_test_file_multipart_presigned_urls,exec,,csv,,,,,,,object,application/json,application/json,Get presigned URLs for uploading a test file +monitoring,v2,/api/v2/synthetics/tests/{public_id}/files/multipart-upload-abort,post,AbortTestFileMultipartUpload,Synthetics,synthetics_test_files,abort_test_file_multipart_upload,exec,,csv,,,,,,,none,application/json,,Abort a multipart upload of a test file +monitoring,v2,/api/v2/synthetics/tests/{public_id}/files/multipart-upload-complete,post,CompleteTestFileMultipartUpload,Synthetics,synthetics_test_files,complete_test_file_multipart_upload,exec,,csv,,,,,,,none,application/json,,Complete a multipart upload of a test file +monitoring,v2,/api/v2/synthetics/tests/{public_id}/parent-suites,get,GetTestParentSuites,Synthetics,synthetics_test_parent_suites,get_test_parent_suites,select,$.data,csv,,,,,,,data-array,,application/json,Get parent suites for a test +monitoring,v2,/api/v2/synthetics/tests/{public_id}/results,get,ListSyntheticsTestLatestResults,Synthetics,synthetics_test_results,list_synthetics_test_latest_results,select,$.data,csv,,,,,,,data-array,,application/json,Get a test's latest results +monitoring,v2,/api/v2/synthetics/tests/{public_id}/results/{result_id},get,GetSyntheticsTestResult,Synthetics,synthetics_test_results,get_synthetics_test_result,select,$.data,csv,,,,,,,data-object,,application/json,Get a test result +monitoring,v2,/api/v2/synthetics/tests/{public_id}/version_history,get,ListSyntheticsTestVersions,Synthetics,synthetics_test_version_histories,list_synthetics_test_versions,select,$.data,csv,,,,,,,data-array,,application/json,Get version history of a test +monitoring,v2,/api/v2/synthetics/tests/{public_id}/version_history/{version_number},get,GetSyntheticsTestVersion,Synthetics,synthetics_test_version_histories,get_synthetics_test_version,select,$.data,csv,,,,,,,data-object,,application/json,Get a specific version of a test +monitoring,v2,/api/v2/synthetics/variables/{variable_id}/jsonpatch,patch,PatchGlobalVariable,Synthetics,synthetics_variable_jsonpatches,patch_global_variable,update,,csv,,,,,,,data-object,application/json,application/json,Patch a global variable +monitoring,v1,/api/v1/check_run,post,SubmitServiceCheck,Service Checks,service_checks,submit_service_check,exec,,csv,,,,,,,object,application/json,text/json,Submit a Service Check +monitoring,v1,/api/v1/monitor,get,ListMonitors,Monitors,monitors,list_monitors,select,,csv,,,,,,"{""limitParam"":""page_size"",""pageParam"":""page""}",bare-array,,application/json,Get all monitors +monitoring,v1,/api/v1/monitor,post,CreateMonitor,Monitors,monitors,create_monitor,insert,,csv,,,,,,,multi-array,application/json,application/json,Create a monitor +monitoring,v1,/api/v1/monitor/can_delete,get,CheckCanDeleteMonitor,Monitors,monitors,check_can_delete_monitor,select,$.data,csv,,,,,,,data-object,,application/json,Check if a monitor can be deleted +monitoring,v1,/api/v1/monitor/groups/search,get,SearchMonitorGroups,Monitors,monitor_group_search_results,search_monitor_groups,select,$.groups,csv,,,,,,,single-array:groups,,application/json,Monitors group search +monitoring,v1,/api/v1/monitor/search,get,SearchMonitors,Monitors,monitor_search_results,search_monitors,select,$.monitors,csv,,,,,,,single-array:monitors,,application/json,Monitors search +monitoring,v1,/api/v1/monitor/validate,post,ValidateMonitor,Monitors,monitors,validate_monitor,exec,,csv,,,,,,,object,application/json,application/json,Validate a monitor +monitoring,v1,/api/v1/monitor/{monitor_id},delete,DeleteMonitor,Monitors,monitors,delete_monitor,delete,,csv,,,,,,,object,,application/json,Delete a monitor +monitoring,v1,/api/v1/monitor/{monitor_id},get,GetMonitor,Monitors,monitors,get_monitor,select,,csv,,,,,,,multi-array,,application/json,Get a monitor's details +monitoring,v1,/api/v1/monitor/{monitor_id},put,UpdateMonitor,Monitors,monitors,update_monitor,replace,,csv,,,,,,,multi-array,application/json,application/json,Edit a monitor +monitoring,v1,/api/v1/monitor/{monitor_id}/downtimes,get,ListMonitorDowntimesV1,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,bare-array,,application/json,Get active downtimes for a monitor +monitoring,v1,/api/v1/monitor/{monitor_id}/validate,post,ValidateExistingMonitor,Monitors,monitors,validate_existing_monitor,exec,,csv,,,,,,,object,application/json,application/json,Validate an existing monitor +monitoring,v1,/api/v1/synthetics/ci/batch/{batch_id},get,GetSyntheticsCIBatch,Synthetics,synthetics_ci_batches,get_synthetics_cibatch,select,$.data,csv,,,,,,,data-object,,application/json,Get details of batch +monitoring,v1,/api/v1/synthetics/locations,get,ListLocations,Synthetics,synthetics_locations,list_locations,select,$.locations,csv,,,,,,,single-array:locations,,application/json,Get all locations (public and private) +monitoring,v1,/api/v1/synthetics/private-locations,post,CreatePrivateLocation,Synthetics,synthetics_private_locations,create_private_location,insert,,csv,,,,,,,object,application/json,application/json,Create a private location +monitoring,v1,/api/v1/synthetics/private-locations/{location_id},delete,DeletePrivateLocation,Synthetics,synthetics_private_locations,delete_private_location,delete,,csv,,,,,,,none,,,Delete a private location +monitoring,v1,/api/v1/synthetics/private-locations/{location_id},get,GetPrivateLocation,Synthetics,synthetics_private_locations,get_private_location,select,,csv,,,,,,,object,,application/json,Get a private location +monitoring,v1,/api/v1/synthetics/private-locations/{location_id},put,UpdatePrivateLocation,Synthetics,synthetics_private_locations,update_private_location,replace,,csv,,,,,,,object,application/json,application/json,Edit a private location +monitoring,v1,/api/v1/synthetics/settings/default_locations,get,GetSyntheticsDefaultLocations,Synthetics,synthetics_default_locations,get_synthetics_default_locations,select,,csv,,,,,,,bare-array,,application/json,Get the default locations +monitoring,v1,/api/v1/synthetics/tests,get,ListTests,Synthetics,synthetics_tests,list_tests,select,$.tests,csv,,,,,,"{""limitParam"":""page_size"",""pageParam"":""page_number"",""resultsPath"":""tests""}",single-array:tests,,application/json,Get the list of all Synthetic tests +monitoring,v1,/api/v1/synthetics/tests/api,post,CreateSyntheticsAPITest,Synthetics,synthetics_api_tests,create_synthetics_apitest,insert,,csv,,,,,,,object,application/json,application/json,Create an API test +monitoring,v1,/api/v1/synthetics/tests/api/{public_id},get,GetAPITest,Synthetics,synthetics_api_tests,get_apitest,select,,csv,,,,,,,object,,application/json,Get an API test +monitoring,v1,/api/v1/synthetics/tests/api/{public_id},put,UpdateAPITest,Synthetics,synthetics_api_tests,update_apitest,replace,,csv,,,,,,,object,application/json,application/json,Edit an API test +monitoring,v1,/api/v1/synthetics/tests/browser,post,CreateSyntheticsBrowserTest,Synthetics,synthetics_browser_tests,create_synthetics_browser_test,insert,,csv,,,,,,,single-array:steps,application/json,application/json,Create a browser test +monitoring,v1,/api/v1/synthetics/tests/browser/{public_id},get,GetBrowserTest,Synthetics,synthetics_browser_tests,get_browser_test,select,,csv,,,,,,,single-array:steps,,application/json,Get a browser test +monitoring,v1,/api/v1/synthetics/tests/browser/{public_id},put,UpdateBrowserTest,Synthetics,synthetics_browser_tests,update_browser_test,replace,,csv,,,,,,,single-array:steps,application/json,application/json,Edit a browser test +monitoring,v1,/api/v1/synthetics/tests/browser/{public_id}/results,get,GetBrowserTestLatestResults,Synthetics,synthetics_browser_test_results,get_browser_test_latest_results,select,$.results,csv,,,,,,,single-array:results,,application/json,Get a browser test's latest results summaries +monitoring,v1,/api/v1/synthetics/tests/browser/{public_id}/results/{result_id},get,GetBrowserTestResult,Synthetics,synthetics_browser_test_results,get_browser_test_result,select,,csv,,,,,,,object,,application/json,Get a browser test result +monitoring,v1,/api/v1/synthetics/tests/delete,post,DeleteTests,Synthetics,synthetics_tests,delete_tests,exec,,csv,,,,,,,single-array:deleted_tests,application/json,application/json,Delete tests +monitoring,v1,/api/v1/synthetics/tests/mobile,post,CreateSyntheticsMobileTest,Synthetics,synthetics_mobile_tests,create_synthetics_mobile_test,insert,,csv,,,,,,,single-array:steps,application/json,application/json,Create a mobile test +monitoring,v1,/api/v1/synthetics/tests/mobile/{public_id},get,GetMobileTest,Synthetics,synthetics_mobile_tests,get_mobile_test,select,,csv,,,,,,,single-array:steps,,application/json,Get a mobile test +monitoring,v1,/api/v1/synthetics/tests/mobile/{public_id},put,UpdateMobileTest,Synthetics,synthetics_mobile_tests,update_mobile_test,replace,,csv,,,,,,,single-array:steps,application/json,application/json,Edit a mobile test +monitoring,v1,/api/v1/synthetics/tests/search,get,SearchTests,Synthetics,synthetics_test_search_results,search_tests,select,$.tests,csv,,,,,,,single-array:tests,,application/json,Search Synthetic tests +monitoring,v1,/api/v1/synthetics/tests/trigger,post,TriggerTests,Synthetics,synthetics_tests,trigger_tests,exec,,csv,,,,,,,multi-array,application/json,application/json,Trigger Synthetic tests +monitoring,v1,/api/v1/synthetics/tests/trigger/ci,post,TriggerCITests,Synthetics,synthetics_tests,trigger_citests,exec,,csv,,,,,,,multi-array,application/json,application/json,Trigger tests from CI/CD pipelines +monitoring,v1,/api/v1/synthetics/tests/uptimes,post,FetchUptimes,Synthetics,synthetics_test_uptimes,fetch_uptimes,exec,,csv,,,,,,,bare-array,application/json,application/json,Fetch uptime for multiple tests +monitoring,v1,/api/v1/synthetics/tests/{public_id},get,GetTest,Synthetics,synthetics_tests,get_test,select,,csv,,,,,,,object,,application/json,Get a test configuration +monitoring,v1,/api/v1/synthetics/tests/{public_id},patch,PatchTest,Synthetics,synthetics_tests,patch_test,update,,csv,,,,,,,single-array:steps,application/json,application/json,Patch a Synthetic test +monitoring,v1,/api/v1/synthetics/tests/{public_id}/results,get,GetAPITestLatestResults,Synthetics,synthetics_api_test_results,get_apitest_latest_results,select,$.results,csv,,,,,,,single-array:results,,application/json,Get an API test's latest results summaries +monitoring,v1,/api/v1/synthetics/tests/{public_id}/results/{result_id},get,GetAPITestResult,Synthetics,synthetics_api_test_results,get_apitest_result,select,,csv,,,,,,,object,,application/json,Get an API test result +monitoring,v1,/api/v1/synthetics/tests/{public_id}/status,put,UpdateTestPauseStatus,Synthetics,synthetics_tests,update_test_pause_status,exec,,csv,,,,,,,object,application/json,application/json,Pause or start a test +monitoring,v1,/api/v1/synthetics/variables,get,ListGlobalVariables,Synthetics,synthetics_global_variables,list_global_variables,select,$.variables,csv,,,,,,,single-array:variables,,application/json,Get all global variables +monitoring,v1,/api/v1/synthetics/variables,post,CreateGlobalVariable,Synthetics,synthetics_global_variables,create_global_variable,insert,,csv,,,,,,,object,application/json,application/json,Create a global variable +monitoring,v1,/api/v1/synthetics/variables/{variable_id},delete,DeleteGlobalVariable,Synthetics,synthetics_global_variables,delete_global_variable,delete,,csv,,,,,,,none,,,Delete a global variable +monitoring,v1,/api/v1/synthetics/variables/{variable_id},get,GetGlobalVariable,Synthetics,synthetics_global_variables,get_global_variable,select,,csv,,,,,,,object,,application/json,Get a global variable +monitoring,v1,/api/v1/synthetics/variables/{variable_id},put,EditGlobalVariable,Synthetics,synthetics_global_variables,edit_global_variable,replace,,csv,,,,,,,object,application/json,application/json,Edit a global variable +organization,v2,/api/v2/anonymize_users,put,AnonymizeUsers,Users,users,anonymize_users,exec,,csv,,,true,,,,data-object,application/json,application/json,Anonymize users +organization,v2,/api/v2/current_user,get,GetCurrentUser,Users,current_user,get_current_user,select,$.data,csv,,,,,,,data-object,,application/json,Get current user +organization,v2,/api/v2/current_user,patch,UpdateCurrentUser,Users,current_user,update_current_user,update,,csv,,,,,,,data-object,application/json,application/json,Update current user +organization,v2,/api/v2/global_orgs,get,ListGlobalOrgs,Organizations,global_orgs,list_global_orgs,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.next_cursor"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,List global orgs +organization,v2,/api/v2/governance/config,get,GetGovernanceConfig,Governance Console,governance_configs,get_governance_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get the Governance Console configuration +organization,v2,/api/v2/governance/control,get,ListGovernanceControls,Governance Console,governance_controls,list_governance_controls,select,$.data,csv,,,true,,,,data-array,,application/json,List controls +organization,v2,/api/v2/governance/control/{detection_type},get,GetGovernanceControl,Governance Console,governance_controls,get_governance_control,select,$.data,csv,,,true,,,,data-object,,application/json,Get a control +organization,v2,/api/v2/governance/control/{detection_type},patch,UpdateGovernanceControl,Governance Console,governance_controls,update_governance_control,update,,csv,,,true,,,,data-object,application/json,application/json,Update a control +organization,v2,/api/v2/governance/control/{detection_type}/detections,get,ListGovernanceControlDetections,Governance Console,governance_control_detections,list_governance_control_detections,select,$.data,csv,,,true,,,,data-array,,application/json,List control detections +organization,v2,/api/v2/governance/control/{detection_type}/notification_settings,get,GetGovernanceControlNotificationSettings,Governance Console,governance_control_notification_settings,get_governance_control_notification_settings,select,$.data,csv,,,true,,,,data-object,,application/json,Get control notification settings +organization,v2,/api/v2/governance/control/{detection_type}/notification_settings,put,UpdateGovernanceControlNotificationSettings,Governance Console,governance_control_notification_settings,update_governance_control_notification_settings,replace,,csv,,,true,,,,data-object,application/json,application/json,Update control notification settings +organization,v2,/api/v2/governance/detections/mitigate,post,MitigateGovernanceDetections,Governance Console,governance_detections,mitigate_governance_detections,exec,,csv,,,true,,,,none,application/json,,Mitigate detections +organization,v2,/api/v2/governance/detections/{detection_id},get,GetGovernanceDetection,Governance Console,governance_detections,get_governance_detection,select,$.data,csv,,,true,,,,data-object,,application/json,Get a detection +organization,v2,/api/v2/governance/detections/{detection_id},patch,UpdateGovernanceDetection,Governance Console,governance_detections,update_governance_detection,update,,csv,,,true,,,,data-object,application/json,application/json,Update a detection +organization,v2,/api/v2/governance/insights,get,ListGovernanceInsights,Governance Console,governance_insights,list_governance_insights,select,$.data,csv,,,true,,,,data-array,,application/json,List insights +organization,v2,/api/v2/governance/notification_settings,get,GetGovernanceNotificationSettings,Governance Console,governance_notification_settings,get_governance_notification_settings,select,$.data,csv,,,true,,,,data-object,,application/json,Get notification settings +organization,v2,/api/v2/governance/notification_settings,patch,UpdateGovernanceNotificationSettings,Governance Console,governance_notification_settings,update_governance_notification_settings,update,,csv,,,true,,,,data-object,application/json,application/json,Update notification settings +organization,v2,/api/v2/governance/tag_rules,get,ListTagRules,Tag Rules,governance_tag_rules,list_tag_rules,select,$.data,csv,,,true,,,,data-array,,application/json,List tag rules +organization,v2,/api/v2/governance/tag_rules,post,CreateTagRule,Tag Rules,governance_tag_rules,create_tag_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a tag rule +organization,v2,/api/v2/governance/tag_rules/{rule_id},delete,DeleteTagRule,Tag Rules,governance_tag_rules,delete_tag_rule,delete,,csv,,,true,,,,none,,,Delete a tag rule +organization,v2,/api/v2/governance/tag_rules/{rule_id},get,GetTagRule,Tag Rules,governance_tag_rules,get_tag_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get a tag rule +organization,v2,/api/v2/governance/tag_rules/{rule_id},patch,UpdateTagRule,Tag Rules,governance_tag_rules,update_tag_rule,update,,csv,,,true,,,,data-object,application/json,application/json,Update a tag rule +organization,v2,/api/v2/governance/tag_rules/{rule_id}/score,get,GetTagRuleScore,Tag Rules,governance_tag_rule_scores,get_tag_rule_score,select,$.data,csv,,,true,,,,data-object,,application/json,Get a tag rule compliance score +organization,v2,/api/v2/hamr,get,GetHamrOrgConnection,High Availability MultiRegion,hamr_connections,get_hamr_org_connection,select,$.data,csv,,,true,,,,data-object,,application/json,Get HAMR organization connection +organization,v2,/api/v2/hamr,post,CreateHamrOrgConnection,High Availability MultiRegion,hamr_connections,create_hamr_org_connection,insert,,csv,,,true,,,,data-object,application/json,application/json,Create or update HAMR organization connection +organization,v2,/api/v2/identity_providers,get,ListIdentityProviders,Identity Providers,identity_providers,list_identity_providers,select,$.data,csv,,,,,,,data-array,,application/json,List identity providers +organization,v2,/api/v2/identity_providers/{idp_id},patch,UpdateIdentityProvider,Identity Providers,identity_providers,update_identity_provider,update,,csv,,,,,,,data-object,application/json,application/json,Update an identity provider +organization,v2,/api/v2/identity_providers/{idp_id}/users,get,ListIdentityProviderUsers,Identity Providers,identity_provider_users,list_identity_provider_users,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,List users with an identity provider override +organization,v2,/api/v2/login/org_configs/max_session_duration,put,UpdateLoginOrgConfigsMaxSessionDuration,Organizations,login_configs,update_login_org_configs_max_session_duration,replace,,csv,,,,,,,none,application/json,,Update the maximum session duration +organization,v2,/api/v2/oauth2/.well-known/sites,get,GetOAuth2WellKnownSites,OAuth2 Client Public,oauth2_well_known_sites,get_oauth2_well_known_sites,select,$.data,csv,,,true,,,,data-object,,application/json,Get OAuth2 well-known sites +organization,v2,/api/v2/oauth2/clients/{client_uuid}/scopes_restriction,delete,DeleteScopesRestriction,OAuth2 Client Public,oauth2_client_scopes_restrictions,delete_scopes_restriction,delete,,csv,,,true,,,,none,,,Delete an OAuth2 client scopes restriction +organization,v2,/api/v2/oauth2/clients/{client_uuid}/scopes_restriction,get,GetScopesRestriction,OAuth2 Client Public,oauth2_client_scopes_restrictions,get_scopes_restriction,select,$.data,csv,,,true,,,,data-object,,application/json,Get an OAuth2 client scopes restriction +organization,v2,/api/v2/oauth2/clients/{client_uuid}/scopes_restriction,post,UpsertScopesRestriction,OAuth2 Client Public,oauth2_client_scopes_restrictions,upsert_scopes_restriction,insert,,csv,,,true,,,,data-object,application/json,application/json,Upsert an OAuth2 client scopes restriction +organization,v2,/api/v2/oauth2/register,post,RegisterOAuthClient,OAuth2 Client Public,oauth2_clients,register_oauth_client,exec,,csv,,,true,,,,object,application/json,application/json,Register an OAuth2 client +organization,v2,/api/v2/org,get,ListOrgs,Organizations,orgs,list_orgs,select,$.data,csv,,,,,,,data-object,,application/json,List your managed organizations +organization,v2,/api/v2/org/disable,post,DisableCustomerOrg,Customer Org,orgs,disable_customer_org,exec,,csv,,,true,,,,data-object,application/json,application/json,Disable the authenticated customer organization +organization,v2,/api/v2/org/saml_configurations,patch,UpdateOrgSamlConfigurations,Organizations,org_saml_configurations,update_org_saml_configurations,update,,csv,,,true,,,,none,application/json,,Update organization SAML preferences +organization,v2,/api/v2/org_authorized_clients,get,ListOrgAuthorizedClients,Org Authorized Clients,org_authorized_clients,list_org_authorized_clients,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,List org authorized clients +organization,v2,/api/v2/org_authorized_clients/{org_authorized_client_id},delete,DeleteOrgAuthorizedClient,Org Authorized Clients,org_authorized_clients,delete_org_authorized_client,delete,,csv,,,,,,,none,,,Delete an org authorized client +organization,v2,/api/v2/org_authorized_clients/{org_authorized_client_id},get,GetOrgAuthorizedClient,Org Authorized Clients,org_authorized_clients,get_org_authorized_client,select,$.data,csv,,,,,,,data-object,,application/json,Get an org authorized client +organization,v2,/api/v2/org_authorized_clients/{org_authorized_client_id},patch,UpdateOrgAuthorizedClient,Org Authorized Clients,org_authorized_clients,update_org_authorized_client,update,,csv,,,,,,,data-object,application/json,application/json,Update an org authorized client +organization,v2,/api/v2/org_authorized_clients/{org_authorized_client_id}/user/{user_id},delete,DeleteOrgAuthorizedClientAllUserAuthorizations,Org Authorized Clients,org_authorized_client_users,delete_org_authorized_client_all_user_authorizations,delete,,csv,,,,,,,none,,,Delete a user's authorizations for a client +organization,v2,/api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients,get,ListOrgAuthorizedClientUserAuthorizations,Org Authorized Clients,org_authorized_client_user_authorized_clients,list_org_authorized_client_user_authorizations,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,List user authorizations for a client +organization,v2,/api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients/{user_authorized_client_id},delete,DeleteOrgAuthorizedClientUserAuthorization,Org Authorized Clients,org_authorized_client_user_authorized_clients,delete_org_authorized_client_user_authorization,delete,,csv,,,,,,,none,,,Delete a user authorization for a client +organization,v2,/api/v2/org_group_memberships,get,ListOrgGroupMemberships,Org Groups,org_group_memberships,list_org_group_memberships,select,$.data,csv,,,true,,,,data-array,,application/json,List org group memberships +organization,v2,/api/v2/org_group_memberships/bulk,patch,BulkUpdateOrgGroupMemberships,Org Groups,org_group_memberships,bulk_update_org_group_memberships,exec,,csv,,,true,,,,data-array,application/json,application/json,Bulk update org group memberships +organization,v2,/api/v2/org_group_memberships/{org_group_membership_id},get,GetOrgGroupMembership,Org Groups,org_group_memberships,get_org_group_membership,select,$.data,csv,,,true,,,,data-object,,application/json,Get an org group membership +organization,v2,/api/v2/org_group_memberships/{org_group_membership_id},patch,UpdateOrgGroupMembership,Org Groups,org_group_memberships,update_org_group_membership,update,,csv,,,true,,,,data-object,application/json,application/json,Update an org group membership +organization,v2,/api/v2/org_group_policies,get,ListOrgGroupPolicies,Org Groups,org_group_policies,list_org_group_policies,select,$.data,csv,,,true,,,,data-array,,application/json,List org group policies +organization,v2,/api/v2/org_group_policies,post,CreateOrgGroupPolicy,Org Groups,org_group_policies,create_org_group_policy,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an org group policy +organization,v2,/api/v2/org_group_policies/{org_group_policy_id},delete,DeleteOrgGroupPolicy,Org Groups,org_group_policies,delete_org_group_policy,delete,,csv,,,true,,,,none,,,Delete an org group policy +organization,v2,/api/v2/org_group_policies/{org_group_policy_id},get,GetOrgGroupPolicy,Org Groups,org_group_policies,get_org_group_policy,select,$.data,csv,,,true,,,,data-object,,application/json,Get an org group policy +organization,v2,/api/v2/org_group_policies/{org_group_policy_id},patch,UpdateOrgGroupPolicy,Org Groups,org_group_policies,update_org_group_policy,update,,csv,,,true,,,,data-object,application/json,application/json,Update an org group policy +organization,v2,/api/v2/org_group_policy_configs,get,ListOrgGroupPolicyConfigs,Org Groups,org_group_policy_configs,list_org_group_policy_configs,select,$.data,csv,,,true,,,,data-array,,application/json,List org group policy configs +organization,v2,/api/v2/org_group_policy_overrides,get,ListOrgGroupPolicyOverrides,Org Groups,org_group_policy_overrides,list_org_group_policy_overrides,select,$.data,csv,,,true,,,,data-array,,application/json,List org group policy overrides +organization,v2,/api/v2/org_group_policy_overrides,post,CreateOrgGroupPolicyOverride,Org Groups,org_group_policy_overrides,create_org_group_policy_override,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an org group policy override +organization,v2,/api/v2/org_group_policy_overrides/{org_group_policy_override_id},delete,DeleteOrgGroupPolicyOverride,Org Groups,org_group_policy_overrides,delete_org_group_policy_override,delete,,csv,,,true,,,,none,,,Delete an org group policy override +organization,v2,/api/v2/org_group_policy_overrides/{org_group_policy_override_id},get,GetOrgGroupPolicyOverride,Org Groups,org_group_policy_overrides,get_org_group_policy_override,select,$.data,csv,,,true,,,,data-object,,application/json,Get an org group policy override +organization,v2,/api/v2/org_group_policy_overrides/{org_group_policy_override_id},patch,UpdateOrgGroupPolicyOverride,Org Groups,org_group_policy_overrides,update_org_group_policy_override,update,,csv,,,true,,,,data-object,application/json,application/json,Update an org group policy override +organization,v2,/api/v2/org_group_policy_suggestions,get,ListOrgGroupPolicySuggestions,Org Groups,org_group_policy_suggestions,list_org_group_policy_suggestions,select,$.data,csv,,,true,,,,data-array,,application/json,List org group policy suggestions +organization,v2,/api/v2/org_groups,get,ListOrgGroups,Org Groups,org_groups,list_org_groups,select,$.data,csv,,,true,,,,data-array,,application/json,List org groups +organization,v2,/api/v2/org_groups,post,CreateOrgGroup,Org Groups,org_groups,create_org_group,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an org group +organization,v2,/api/v2/org_groups/{org_group_id},delete,DeleteOrgGroup,Org Groups,org_groups,delete_org_group,delete,,csv,,,true,,,,none,,,Delete an org group +organization,v2,/api/v2/org_groups/{org_group_id},get,GetOrgGroup,Org Groups,org_groups,get_org_group,select,$.data,csv,,,true,,,,data-object,,application/json,Get an org group +organization,v2,/api/v2/org_groups/{org_group_id},patch,UpdateOrgGroup,Org Groups,org_groups,update_org_group,update,,csv,,,true,,,,data-object,application/json,application/json,Update an org group +organization,v2,/api/v2/personal_access_tokens,get,ListPersonalAccessTokens,Key Management,personal_access_tokens,list_personal_access_tokens,select,$.data,csv,,,,,,,data-array,,application/json,Get all access tokens +organization,v2,/api/v2/personal_access_tokens,post,CreatePersonalAccessToken,Key Management,personal_access_tokens,create_personal_access_token,insert,,csv,,,,,,,data-object,application/json,application/json,Create a personal access token +organization,v2,/api/v2/personal_access_tokens/{token_id},delete,RevokePersonalAccessToken,Key Management,personal_access_tokens,revoke_personal_access_token,delete,,csv,,,,,,,none,,,Revoke a personal access token +organization,v2,/api/v2/personal_access_tokens/{token_id},get,GetPersonalAccessToken,Key Management,personal_access_tokens,get_personal_access_token,select,$.data,csv,,,,,,,data-object,,application/json,Get a personal access token +organization,v2,/api/v2/personal_access_tokens/{token_id},patch,UpdatePersonalAccessToken,Key Management,personal_access_tokens,update_personal_access_token,update,,csv,,,,,,,data-object,application/json,application/json,Update a personal access token +organization,v2,/api/v2/roles/templates,get,ListRoleTemplates,Roles,role_templates,list_role_templates,select,$.data,csv,,,true,,,,data-array,,application/json,List role templates +organization,v2,/api/v2/saml_configurations,get,ListSAMLConfigurations,Organizations,saml_configurations,list_samlconfigurations,select,$.data,csv,,,,,,,data-array,,application/json,List SAML configurations +organization,v2,/api/v2/saml_configurations/{saml_config_uuid},get,GetSAMLConfiguration,Organizations,saml_configurations,get_samlconfiguration,select,$.data,csv,,,,,,,data-object,,application/json,Get a SAML configuration +organization,v2,/api/v2/saml_configurations/{saml_config_uuid},patch,UpdateSAMLConfiguration,Organizations,saml_configurations,update_samlconfiguration,update,,csv,,,,,,,data-object,application/json,application/json,Update a SAML configuration +organization,v2,/api/v2/seats/users,delete,UnassignSeatsUser,Seats,seat_assignments,unassign_seats_user,delete,,csv,,,,,,,none,application/json,,Unassign seats from users +organization,v2,/api/v2/seats/users,get,GetSeatsUsers,Seats,seat_assignments,get_seats_users,select,$.data,csv,,,,,,,data-array,,application/json,Get users with seats +organization,v2,/api/v2/seats/users,post,AssignSeatsUser,Seats,seat_assignments,assign_seats_user,insert,,csv,,,,,,,data-object,application/json,application/json,Assign seats to users +organization,v2,/api/v2/service_accounts/{service_account_id}/access_tokens,get,ListServiceAccountAccessTokens,Service Accounts,service_account_access_tokens,list_service_account_access_tokens,select,$.data,csv,,,,,,,data-array,,application/json,List access tokens for a service account +organization,v2,/api/v2/service_accounts/{service_account_id}/access_tokens,post,CreateServiceAccountAccessToken,Service Accounts,service_account_access_tokens,create_service_account_access_token,insert,,csv,,,,,,,data-object,application/json,application/json,Create an access token for a service account +organization,v2,/api/v2/service_accounts/{service_account_id}/access_tokens/{token_id},delete,RevokeServiceAccountAccessToken,Service Accounts,service_account_access_tokens,revoke_service_account_access_token,delete,,csv,,,,,,,none,,,Revoke an access token for a service account +organization,v2,/api/v2/service_accounts/{service_account_id}/access_tokens/{token_id},get,GetServiceAccountAccessToken,Service Accounts,service_account_access_tokens,get_service_account_access_token,select,$.data,csv,,,,,,,data-object,,application/json,Get an access token for a service account +organization,v2,/api/v2/service_accounts/{service_account_id}/access_tokens/{token_id},patch,UpdateServiceAccountAccessToken,Service Accounts,service_account_access_tokens,update_service_account_access_token,update,,csv,,,,,,,data-object,application/json,application/json,Update an access token for a service account +organization,v2,/api/v2/team-hierarchy-links,get,ListTeamHierarchyLinks,Teams,team_hierarchy_links,list_team_hierarchy_links,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,Get team hierarchy links +organization,v2,/api/v2/team-hierarchy-links,post,AddTeamHierarchyLink,Teams,team_hierarchy_links,add_team_hierarchy_link,insert,,csv,,,,,,,data-object,application/json,application/json,Create a team hierarchy link +organization,v2,/api/v2/team-hierarchy-links/{link_id},delete,RemoveTeamHierarchyLink,Teams,team_hierarchy_links,remove_team_hierarchy_link,delete,,csv,,,,,,,none,,,Remove a team hierarchy link +organization,v2,/api/v2/team-hierarchy-links/{link_id},get,GetTeamHierarchyLink,Teams,team_hierarchy_links,get_team_hierarchy_link,select,$.data,csv,,,,,,,data-object,,application/json,Get a team hierarchy link +organization,v2,/api/v2/team/connections,delete,DeleteTeamConnections,Teams,team_connections,delete_team_connections,delete,,csv,,,,,,,none,application/json,,Delete team connections +organization,v2,/api/v2/team/connections,get,ListTeamConnections,Teams,team_connections,list_team_connections,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,List team connections +organization,v2,/api/v2/team/connections,post,CreateTeamConnections,Teams,team_connections,create_team_connections,insert,,csv,,,,,,,data-array,application/json,application/json,Create team connections +organization,v2,/api/v2/team/sync,get,GetTeamSync,Teams,team_syncs,get_team_sync,select,$.data,csv,,,,,,,data-array,,application/json,Get team sync configurations +organization,v2,/api/v2/team/{team_id}/notification-rules,get,GetTeamNotificationRules,Teams,team_notification_rules,get_team_notification_rules,select,$.data,csv,,,,,,,data-array,,application/json,Get team notification rules +organization,v2,/api/v2/team/{team_id}/notification-rules,post,CreateTeamNotificationRule,Teams,team_notification_rules,create_team_notification_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create team notification rule +organization,v2,/api/v2/team/{team_id}/notification-rules/{rule_id},delete,DeleteTeamNotificationRule,Teams,team_notification_rules,delete_team_notification_rule,delete,,csv,,,,,,,none,,,Delete team notification rule +organization,v2,/api/v2/team/{team_id}/notification-rules/{rule_id},get,GetTeamNotificationRule,Teams,team_notification_rules,get_team_notification_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get team notification rule +organization,v2,/api/v2/team/{team_id}/notification-rules/{rule_id},put,UpdateTeamNotificationRule,Teams,team_notification_rules,update_team_notification_rule,replace,,csv,,,,,,,data-object,application/json,application/json,Update team notification rule +organization,v2,/api/v2/usage/summary/available_fields,get,GetUsageSummaryAvailableFields,Usage Metering,usage_summary_available_fields,get_usage_summary_available_fields,select,$.data,csv,,,,,,,data-object,,application/json,Get available fields for usage summary +organization,v2,/api/v2/usage/usage-attribution-types,get,GetUsageAttributionTypes,Usage Metering,usage_usage_attribution_types,get_usage_attribution_types,select,$.data,csv,,,,,,,data-object,,application/json,Get usage attribution types +organization,v2,/api/v2/user_authorized_clients,get,ListUserAuthorizedClients,User Authorized Clients,user_authorized_clients,list_user_authorized_clients,select,$.data,csv,,,,,,"{""limitParam"":""page[size]"",""pageParam"":""page[number]"",""resultsPath"":""data""}",data-array,,application/json,List user authorized clients +organization,v2,/api/v2/user_authorized_clients/client/{client_id},delete,DeleteUserAuthorizedClientsByClient,User Authorized Clients,user_authorized_client_clients,delete_user_authorized_clients_by_client,delete,,csv,,,,,,,none,,,Delete all user authorized clients for a client +organization,v2,/api/v2/user_authorized_clients/{user_authorized_client_id},delete,DeleteUserAuthorizedClient,User Authorized Clients,user_authorized_clients,delete_user_authorized_client,delete,,csv,,,,,,,none,,,Delete a user authorized client +organization,v2,/api/v2/user_authorized_clients/{user_authorized_client_id},get,GetUserAuthorizedClient,User Authorized Clients,user_authorized_clients,get_user_authorized_client,select,$.data,csv,,,,,,,data-object,,application/json,Get a user authorized client +organization,v2,/api/v2/users/{user_id}/identity_providers,get,GetUserIdentityProviders,Users,user_identity_providers,get_user_identity_providers,select,$.data,csv,,,,,,,data-array,,application/json,Get identity provider overrides for a user +organization,v2,/api/v2/users/{user_id}/invitations,delete,DeleteUserInvitations,Users,user_invitations,delete_user_invitations,delete,,csv,,,,,,,none,,,Delete a pending user's invitations +organization,v2,/api/v2/users/{user_id}/relationships/identity_providers,patch,UpdateUserIdentityProviders,Users,user_relationship_identity_providers,update_user_identity_providers,update,,csv,,,,,,,none,application/json,,Update identity provider overrides for a user +organization,v2,/api/v2/validate,get,Validate,Key Management,api_key_validation,validate,select,$.data,csv,,,true,,,,data-object,,application/json,Validate API key +organization,v2,/api/v2/validate_keys,get,ValidateAPIKey,Key Management,key_validation,validate_apikey,select,,csv,,,,,,,object,,application/json,Validate API and application keys +organization,v1,/,get,GetIPRanges,IP Ranges,ip_ranges,get_ipranges,select,,csv,,,,,,,object,,application/json,List IP Ranges +organization,v1,/api/v1/api_key,get,ListAPIKeysV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,single-array:api_keys,,application/json,Get all API keys +organization,v1,/api/v1/api_key,post,CreateAPIKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,application/json,Create an API key +organization,v1,/api/v1/api_key/{key},delete,DeleteAPIKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Delete an API key +organization,v1,/api/v1/api_key/{key},get,GetAPIKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Get API key +organization,v1,/api/v1/api_key/{key},put,UpdateAPIKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,application/json,Edit an API key +organization,v1,/api/v1/application_key,get,ListApplicationKeysV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,single-array:application_keys,,application/json,Get all application keys +organization,v1,/api/v1/application_key,post,CreateApplicationKey,Key Management,application_keys,create_application_key_v1,insert,,csv,,,,,,,object,application/json,application/json,Create an application key +organization,v1,/api/v1/application_key/{key},delete,DeleteApplicationKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Delete an application key +organization,v1,/api/v1/application_key/{key},get,GetApplicationKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Get an application key +organization,v1,/api/v1/application_key/{key},put,UpdateApplicationKeyV1,Key Management,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,application/json,Edit an application key +organization,v1,/api/v1/daily_custom_reports,get,GetDailyCustomReports,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-array,,application/json,Get the list of available daily custom reports +organization,v1,/api/v1/daily_custom_reports/{report_id},get,GetSpecifiedDailyCustomReports,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-object,,application/json,Get specified daily custom reports +organization,v1,/api/v1/monthly_custom_reports,get,GetMonthlyCustomReports,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-array,,application/json,Get the list of available monthly custom reports +organization,v1,/api/v1/monthly_custom_reports/{report_id},get,GetSpecifiedMonthlyCustomReports,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,data-object,,application/json,Get specified monthly custom reports +organization,v1,/api/v1/org,get,ListOrgsV1,Organizations,skip_this_resource,,,,skip,superseded_by_v2,,,,,,single-array:orgs,,application/json,List your managed organizations +organization,v1,/api/v1/org,post,CreateChildOrg,Organizations,orgs,create_child_org,insert,,csv,,,,,,,object,application/json,application/json,Create a child organization +organization,v1,/api/v1/org/{public_id},get,GetOrg,Organizations,orgs,get_org,select,$.org,csv,,,,,,,object,,application/json,Get organization information +organization,v1,/api/v1/org/{public_id},put,UpdateOrg,Organizations,orgs,update_org,replace,,csv,,,,,,,object,application/json,application/json,Update your organization +organization,v1,/api/v1/org/{public_id}/downgrade,post,DowngradeOrg,Organizations,orgs,downgrade_org,exec,,csv,,,,,,,object,,application/json,Spin-off Child Organization +organization,v1,/api/v1/org/{public_id}/idp_metadata,post,UploadIdPForOrg,Organizations,skip_this_resource,,,,skip,multipart_request,,,,,,object,multipart/form-data,application/json,Upload IdP metadata +organization,v1,/api/v1/usage/analyzed_logs,get,GetUsageAnalyzedLogs,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for analyzed logs +organization,v1,/api/v1/usage/audit_logs,get,GetUsageAuditLogs,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for audit logs +organization,v1,/api/v1/usage/aws_lambda,get,GetUsageLambda,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for Lambda +organization,v1,/api/v1/usage/billable-summary,get,GetUsageBillableSummary,Usage Metering,usage_billable_summary,get_usage_billable_summary,select,$.usage,csv,,,,,,,single-array:usage,,application/json,Get billable usage across your account +organization,v1,/api/v1/usage/ci-app,get,GetUsageCIApp,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for CI visibility +organization,v1,/api/v1/usage/cspm,get,GetUsageCloudSecurityPostureManagement,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for CSM Pro +organization,v1,/api/v1/usage/cws,get,GetUsageCWS,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for cloud workload security +organization,v1,/api/v1/usage/dbm,get,GetUsageDBM,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for database monitoring +organization,v1,/api/v1/usage/fargate,get,GetUsageFargate,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for Fargate +organization,v1,/api/v1/usage/hosts,get,GetUsageHosts,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for hosts and containers +organization,v1,/api/v1/usage/hourly-attribution,get,GetHourlyUsageAttribution,Usage Metering,usage_hourly_attribution,get_hourly_usage_attribution,select,$.usage,csv,,,,,,,single-array:usage,,application/json,Get hourly usage attribution +organization,v1,/api/v1/usage/incident-management,get,GetIncidentManagement,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for incident management +organization,v1,/api/v1/usage/indexed-spans,get,GetUsageIndexedSpans,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for indexed spans +organization,v1,/api/v1/usage/ingested-spans,get,GetIngestedSpans,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for ingested spans +organization,v1,/api/v1/usage/iot,get,GetUsageInternetOfThings,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for IoT +organization,v1,/api/v1/usage/logs,get,GetUsageLogs,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for logs +organization,v1,/api/v1/usage/logs-by-retention,get,GetUsageLogsByRetention,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly logs usage by retention +organization,v1,/api/v1/usage/logs_by_index,get,GetUsageLogsByIndex,Usage Metering,usage_logs_by_index,get_usage_logs_by_index,select,$.usage,csv,,,,,,,single-array:usage,,application/json,Get hourly usage for logs by index +organization,v1,/api/v1/usage/monthly-attribution,get,GetMonthlyUsageAttribution,Usage Metering,usage_monthly_attribution,get_monthly_usage_attribution,select,$.usage,csv,,,,,,,single-array:usage,,application/json,Get monthly usage attribution +organization,v1,/api/v1/usage/network_flows,get,GetUsageNetworkFlows,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,get hourly usage for network flows +organization,v1,/api/v1/usage/network_hosts,get,GetUsageNetworkHosts,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for network hosts +organization,v1,/api/v1/usage/online-archive,get,GetUsageOnlineArchive,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for online archive +organization,v1,/api/v1/usage/profiling,get,GetUsageProfiling,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for profiled hosts +organization,v1,/api/v1/usage/rum,get,GetUsageRumUnits,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for RUM units +organization,v1,/api/v1/usage/rum_sessions,get,GetUsageRumSessions,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for RUM sessions +organization,v1,/api/v1/usage/sds,get,GetUsageSDS,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for sensitive data scanner +organization,v1,/api/v1/usage/snmp,get,GetUsageSNMP,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for SNMP devices +organization,v1,/api/v1/usage/summary,get,GetUsageSummary,Usage Metering,usage_summary,get_usage_summary,select,$.usage,csv,,,,,,,single-array:usage,,application/json,Get usage across your account +organization,v1,/api/v1/usage/synthetics,get,GetUsageSynthetics,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for synthetics checks +organization,v1,/api/v1/usage/synthetics_api,get,GetUsageSyntheticsAPI,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for synthetics API checks +organization,v1,/api/v1/usage/synthetics_browser,get,GetUsageSyntheticsBrowser,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for synthetics browser checks +organization,v1,/api/v1/usage/timeseries,get,GetUsageTimeseries,Usage Metering,skip_this_resource,,,,skip,deprecated,true,,,,,single-array:usage,,application/json,Get hourly usage for custom metrics +organization,v1,/api/v1/usage/top_avg_metrics,get,GetUsageTopAvgMetrics,Usage Metering,usage_top_avg_metrics,get_usage_top_avg_metrics,select,$.usage,csv,,,,,,,single-array:usage,,application/json,Get all custom metrics by hourly average +organization,v1,/api/v1/user,get,ListUsersV1,Users,skip_this_resource,,,,skip,superseded_by_v2,,,,,,single-array:users,,application/json,List all users +organization,v1,/api/v1/user,post,CreateUserV1,Users,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,application/json,Create a user +organization,v1,/api/v1/user/{user_handle},delete,DisableUserV1,Users,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Disable a user +organization,v1,/api/v1/user/{user_handle},get,GetUserV1,Users,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Get user details +organization,v1,/api/v1/user/{user_handle},put,UpdateUserV1,Users,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,application/json,Update a user +organization,v1,/api/v1/validate,get,ValidateV1,Authentication,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Validate API key +remote_config,v2,/api/v2/remote_config/products/asm/waf/policies,get,ListApplicationSecurityWAFPolicies,Application Security,waf_policies,list_application_security_wafpolicies,select,$.data,csv,,,,,,,data-array,,application/json,List all WAF policies +remote_config,v2,/api/v2/remote_config/products/asm/waf/policies,post,CreateApplicationSecurityWafPolicy,Application Security,waf_policies,create_application_security_waf_policy,insert,,csv,,,,,,,data-object,application/json,application/json,Create a WAF Policy +remote_config,v2,/api/v2/remote_config/products/asm/waf/policies/{policy_id},delete,DeleteApplicationSecurityWafPolicy,Application Security,waf_policies,delete_application_security_waf_policy,delete,,csv,,,,,appsec_waf_policy,,none,,,Delete a WAF Policy +remote_config,v2,/api/v2/remote_config/products/asm/waf/policies/{policy_id},get,GetApplicationSecurityWafPolicy,Application Security,waf_policies,get_application_security_waf_policy,select,$.data,csv,,,,,appsec_waf_policy,,data-object,,application/json,Get a WAF Policy +remote_config,v2,/api/v2/remote_config/products/asm/waf/policies/{policy_id},put,UpdateApplicationSecurityWafPolicy,Application Security,waf_policies,update_application_security_waf_policy,replace,,csv,,,,,appsec_waf_policy,,data-object,application/json,application/json,Update a WAF Policy +remote_config,v2,/api/v2/remote_config/products/rum/configs/{config_id},get,GetRumSdkConfig,RUM Remote Config,rum_configs,get_rum_sdk_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get a RUM SDK configuration +remote_config,v2,/api/v2/remote_config/products/rum/configs/{config_id},put,UpdateRumSdkConfig,RUM Remote Config,rum_configs,update_rum_sdk_config,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a RUM SDK configuration +security,v2,/api/v2/agentless_scanning/accounts/azure,get,ListAzureScanOptions,Agentless Scanning,agentless_scanning_account_azures,list_azure_scan_options,select,$.data,csv,,,,,,,data-array,,application/json,List Azure scan options +security,v2,/api/v2/agentless_scanning/accounts/azure,post,CreateAzureScanOptions,Agentless Scanning,agentless_scanning_account_azures,create_azure_scan_options,insert,,csv,,,,,,,data-object,application/json,application/json,Create Azure scan options +security,v2,/api/v2/agentless_scanning/accounts/azure/{subscription_id},delete,DeleteAzureScanOptions,Agentless Scanning,agentless_scanning_account_azures,delete_azure_scan_options,delete,,csv,,,,,,,none,,,Delete Azure scan options +security,v2,/api/v2/agentless_scanning/accounts/azure/{subscription_id},get,GetAzureScanOptions,Agentless Scanning,agentless_scanning_account_azures,get_azure_scan_options,select,$.data,csv,,,,,,,data-object,,application/json,Get Azure scan options +security,v2,/api/v2/agentless_scanning/accounts/azure/{subscription_id},patch,UpdateAzureScanOptions,Agentless Scanning,agentless_scanning_account_azures,update_azure_scan_options,update,,csv,,,,,,,data-object,application/json,application/json,Update Azure scan options +security,v2,/api/v2/agentless_scanning/accounts/gcp,get,ListGcpScanOptions,Agentless Scanning,agentless_scanning_account_gcp,list_gcp_scan_options,select,$.data,csv,,,,,,,data-array,,application/json,List GCP scan options +security,v2,/api/v2/agentless_scanning/accounts/gcp,post,CreateGcpScanOptions,Agentless Scanning,agentless_scanning_account_gcp,create_gcp_scan_options,insert,,csv,,,,,,,data-object,application/json,application/json,Create GCP scan options +security,v2,/api/v2/agentless_scanning/accounts/gcp/{project_id},delete,DeleteGcpScanOptions,Agentless Scanning,agentless_scanning_account_gcp,delete_gcp_scan_options,delete,,csv,,,,,,,none,,,Delete GCP scan options +security,v2,/api/v2/agentless_scanning/accounts/gcp/{project_id},get,GetGcpScanOptions,Agentless Scanning,agentless_scanning_account_gcp,get_gcp_scan_options,select,$.data,csv,,,,,,,data-object,,application/json,Get GCP scan options +security,v2,/api/v2/agentless_scanning/accounts/gcp/{project_id},patch,UpdateGcpScanOptions,Agentless Scanning,agentless_scanning_account_gcp,update_gcp_scan_options,update,,csv,,,,,,,data-object,application/json,application/json,Update GCP scan options +security,v2,/api/v2/compliance_findings/rule_based_view,get,GetRuleBasedView,Compliance,skip_this_resource,,,,skip,deprecated,true,true,2027-06-26,,,data-object,,application/json,Get the rule-based view of compliance findings +security,v2,/api/v2/csm/ownership/settings,get,GetOwnershipSettings,CSM Ownership,csm_ownership_settings,get_ownership_settings,select,$.data,csv,,,true,,,,data-object,,application/json,Get ownership settings for the org +security,v2,/api/v2/csm/ownership/settings,post,PostOwnershipSettings,CSM Ownership,csm_ownership_settings,post_ownership_settings,insert,,csv,,,true,,,,data-object,application/json,application/json,Update ownership settings for the org +security,v2,/api/v2/csm/ownership/settings/untagged,get,GetOwnershipUntaggedFindings,CSM Ownership,csm_ownership_setting_untaggeds,get_ownership_untagged_findings,select,$.data,csv,,,true,,,,data-object,,application/json,Count untagged findings by ownership confidence +security,v2,/api/v2/csm/ownership/{resource_id},get,ListOwnershipInferences,CSM Ownership,csm_ownerships,list_ownership_inferences,select,$.data,csv,,,true,,,,data-object,,application/json,List ownership inferences for a resource +security,v2,/api/v2/csm/ownership/{resource_id}/history,get,ListOwnershipHistory,CSM Ownership,csm_ownership_histories,list_ownership_history,select,$.data,csv,,,true,,,,data-object,,application/json,List ownership inference history for a resource +security,v2,/api/v2/csm/ownership/{resource_id}/{owner_type},get,GetOwnershipInference,CSM Ownership,csm_ownerships,get_ownership_inference,select,$.data,csv,,,true,,,,data-object,,application/json,Get an ownership inference by owner type +security,v2,/api/v2/csm/ownership/{resource_id}/{owner_type}/evidence,get,GetOwnershipEvidence,CSM Ownership,csm_ownership_evidences,get_ownership_evidence,select,$.data,csv,,,true,,,,data-object,,application/json,Get the evidence for an ownership inference +security,v2,/api/v2/csm/ownership/{resource_id}/{owner_type}/feedback,post,CreateOwnershipFeedback,CSM Ownership,csm_ownership_feedbacks,create_ownership_feedback,insert,,csv,,,true,,,,data-object,application/json,application/json,Submit feedback on an ownership inference +security,v2,/api/v2/csm/ownership/{resource_id}/{owner_type}/history,get,ListOwnershipHistoryByOwnerType,CSM Ownership,csm_ownership_histories,list_ownership_history_by_owner_type,select,$.data,csv,,,true,,,,data-object,,application/json,List ownership history by owner type +security,v2,/api/v2/csm/settings/agentless_hosts,get,ListCSMAgentlessHosts,CSM Settings,csm_setting_agentless_hosts,list_csmagentless_hosts,select,$.data,csv,,,true,,,,data-array,,application/json,List agentless hosts +security,v2,/api/v2/csm/settings/agentless_hosts/facet_info,get,GetCSMAgentlessHostFacetInfo,CSM Settings,csm_setting_agentless_host_facet_infos,get_csmagentless_host_facet_info,select,$.data,csv,,,true,,,,data-object,,application/json,Get agentless host facet info +security,v2,/api/v2/csm/settings/agentless_hosts/facets,get,ListCSMAgentlessHostFacets,CSM Settings,csm_setting_agentless_host_facets,list_csmagentless_host_facets,select,$.data,csv,,,true,,,,data-array,,application/json,List agentless host facets +security,v2,/api/v2/csm/settings/hosts,get,ListCSMUnifiedHosts,CSM Settings,csm_setting_hosts,list_csmunified_hosts,select,$.data,csv,,,true,,,,data-array,,application/json,List unified hosts +security,v2,/api/v2/csm/settings/hosts/facet_info,get,GetCSMUnifiedHostFacetInfo,CSM Settings,csm_setting_host_facet_infos,get_csmunified_host_facet_info,select,$.data,csv,,,true,,,,data-object,,application/json,Get unified host facet info +security,v2,/api/v2/csm/settings/hosts/facets,get,ListCSMUnifiedHostFacets,CSM Settings,csm_setting_host_facets,list_csmunified_host_facets,select,$.data,csv,,,true,,,,data-array,,application/json,List unified host facets +security,v2,/api/v2/security-entities/risk-scores,get,ListEntityRiskScores,Entity Risk Scores,security_entity_risk_scores,list_entity_risk_scores,select,$.data,csv,,,true,,,,data-array,,application/json,List Entity Risk Scores +security,v2,/api/v2/security-entities/risk-scores/{entity_id},get,GetEntityRiskScore,Entity Risk Scores,security_entity_risk_scores,get_entity_risk_score,select,$.data,csv,,,true,,,,data-object,,application/json,Get Entity Risk Score +security,v2,/api/v2/security/asm/services/{service_filter},get,GetAsmServiceByName,Application Security,application_security_services,get_asm_service_by_name,select,$.data,csv,,,true,,,,data-array,,application/json,Get Application Security details for a service +security,v2,/api/v2/security/findings,get,ListSecurityFindings,Security Monitoring,security_findings,list_security_findings,select,$.data,csv,,,,,,"{""cursorParam"":""page[cursor]"",""cursorPath"":""meta.page.after"",""limitParam"":""page[limit]"",""resultsPath"":""data""}",data-array,,application/json,List security findings +security,v2,/api/v2/security/findings/assignee,patch,UpdateFindingsAssignee,Security Monitoring,security_findings,update_findings_assignee,exec,,csv,,,true,,,,data-object,application/json,application/json,Assign or unassign security findings +security,v2,/api/v2/security/findings/automation/due_date_rules,get,ListSecurityFindingsAutomationDueDateRules,Security Monitoring,finding_automation_due_date_rules,list_security_findings_automation_due_date_rules,select,$.data,csv,,,true,,,,data-array,,application/json,Get all due date rules +security,v2,/api/v2/security/findings/automation/due_date_rules,post,CreateSecurityFindingsAutomationDueDateRule,Security Monitoring,finding_automation_due_date_rules,create_security_findings_automation_due_date_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a due date rule +security,v2,/api/v2/security/findings/automation/due_date_rules/reorder,post,ReorderSecurityFindingsAutomationDueDateRules,Security Monitoring,finding_automation_due_date_rules,reorder_security_findings_automation_due_date_rules,exec,,csv,,,true,,,,data-array,application/json,application/json,Reorder due date rules +security,v2,/api/v2/security/findings/automation/due_date_rules/{rule_id},delete,DeleteSecurityFindingsAutomationDueDateRule,Security Monitoring,finding_automation_due_date_rules,delete_security_findings_automation_due_date_rule,delete,,csv,,,true,,,,none,,,Delete a due date rule +security,v2,/api/v2/security/findings/automation/due_date_rules/{rule_id},get,GetSecurityFindingsAutomationDueDateRule,Security Monitoring,finding_automation_due_date_rules,get_security_findings_automation_due_date_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get a due date rule +security,v2,/api/v2/security/findings/automation/due_date_rules/{rule_id},put,UpdateSecurityFindingsAutomationDueDateRule,Security Monitoring,finding_automation_due_date_rules,update_security_findings_automation_due_date_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a due date rule +security,v2,/api/v2/security/findings/automation/mute_rules,get,ListSecurityFindingsAutomationMuteRules,Security Monitoring,finding_automation_mute_rules,list_security_findings_automation_mute_rules,select,$.data,csv,,,true,,,,data-array,,application/json,Get all mute rules +security,v2,/api/v2/security/findings/automation/mute_rules,post,CreateSecurityFindingsAutomationMuteRule,Security Monitoring,finding_automation_mute_rules,create_security_findings_automation_mute_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a mute rule +security,v2,/api/v2/security/findings/automation/mute_rules/reorder,post,ReorderSecurityFindingsAutomationMuteRules,Security Monitoring,finding_automation_mute_rules,reorder_security_findings_automation_mute_rules,exec,,csv,,,true,,,,data-array,application/json,application/json,Reorder mute rules +security,v2,/api/v2/security/findings/automation/mute_rules/{rule_id},delete,DeleteSecurityFindingsAutomationMuteRule,Security Monitoring,finding_automation_mute_rules,delete_security_findings_automation_mute_rule,delete,,csv,,,true,,,,none,,,Delete a mute rule +security,v2,/api/v2/security/findings/automation/mute_rules/{rule_id},get,GetSecurityFindingsAutomationMuteRule,Security Monitoring,finding_automation_mute_rules,get_security_findings_automation_mute_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get a mute rule +security,v2,/api/v2/security/findings/automation/mute_rules/{rule_id},put,UpdateSecurityFindingsAutomationMuteRule,Security Monitoring,finding_automation_mute_rules,update_security_findings_automation_mute_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a mute rule +security,v2,/api/v2/security/findings/automation/severity_modifier_rules,get,ListSecurityFindingsAutomationSeverityModifierRules,Security Monitoring,finding_automation_severity_modifier_rules,list_security_findings_automation_severity_modifier_rules,select,$.data,csv,,,true,,,,data-array,,application/json,Get all severity modifier rules +security,v2,/api/v2/security/findings/automation/severity_modifier_rules,post,CreateSecurityFindingsAutomationSeverityModifierRule,Security Monitoring,finding_automation_severity_modifier_rules,create_security_findings_automation_severity_modifier_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a severity modifier rule +security,v2,/api/v2/security/findings/automation/severity_modifier_rules/reorder,post,ReorderSecurityFindingsAutomationSeverityModifierRules,Security Monitoring,finding_automation_severity_modifier_rules,reorder_security_findings_automation_severity_modifier_rules,exec,,csv,,,true,,,,data-array,application/json,application/json,Reorder severity modifier rules +security,v2,/api/v2/security/findings/automation/severity_modifier_rules/{rule_id},delete,DeleteSecurityFindingsAutomationSeverityModifierRule,Security Monitoring,finding_automation_severity_modifier_rules,delete_security_findings_automation_severity_modifier_rule,delete,,csv,,,true,,,,none,,,Delete a severity modifier rule +security,v2,/api/v2/security/findings/automation/severity_modifier_rules/{rule_id},get,GetSecurityFindingsAutomationSeverityModifierRule,Security Monitoring,finding_automation_severity_modifier_rules,get_security_findings_automation_severity_modifier_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get a severity modifier rule +security,v2,/api/v2/security/findings/automation/severity_modifier_rules/{rule_id},put,UpdateSecurityFindingsAutomationSeverityModifierRule,Security Monitoring,finding_automation_severity_modifier_rules,update_security_findings_automation_severity_modifier_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a severity modifier rule +security,v2,/api/v2/security/findings/automation/ticket_creation_rules,get,ListSecurityFindingsAutomationTicketCreationRules,Security Monitoring,finding_automation_ticket_creation_rules,list_security_findings_automation_ticket_creation_rules,select,$.data,csv,,,true,,,,data-array,,application/json,Get all ticket creation rules +security,v2,/api/v2/security/findings/automation/ticket_creation_rules,post,CreateSecurityFindingsAutomationTicketCreationRule,Security Monitoring,finding_automation_ticket_creation_rules,create_security_findings_automation_ticket_creation_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a ticket creation rule +security,v2,/api/v2/security/findings/automation/ticket_creation_rules/reorder,post,ReorderSecurityFindingsAutomationTicketCreationRules,Security Monitoring,finding_automation_ticket_creation_rules,reorder_security_findings_automation_ticket_creation_rules,exec,,csv,,,true,,,,data-array,application/json,application/json,Reorder ticket creation rules +security,v2,/api/v2/security/findings/automation/ticket_creation_rules/{rule_id},delete,DeleteSecurityFindingsAutomationTicketCreationRule,Security Monitoring,finding_automation_ticket_creation_rules,delete_security_findings_automation_ticket_creation_rule,delete,,csv,,,true,,,,none,,,Delete a ticket creation rule +security,v2,/api/v2/security/findings/automation/ticket_creation_rules/{rule_id},get,GetSecurityFindingsAutomationTicketCreationRule,Security Monitoring,finding_automation_ticket_creation_rules,get_security_findings_automation_ticket_creation_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get a ticket creation rule +security,v2,/api/v2/security/findings/automation/ticket_creation_rules/{rule_id},put,UpdateSecurityFindingsAutomationTicketCreationRule,Security Monitoring,finding_automation_ticket_creation_rules,update_security_findings_automation_ticket_creation_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update a ticket creation rule +security,v2,/api/v2/security/findings/cases,delete,DetachCase,Security Monitoring,finding_cases,detach_case,delete,,csv,,,,,,,none,application/json,,Detach security findings from their case +security,v2,/api/v2/security/findings/cases,post,CreateCases,Security Monitoring,finding_cases,create_cases,insert,,csv,,,,,,,data-array,application/json,application/json,Create cases for security findings +security,v2,/api/v2/security/findings/cases/{case_id},patch,AttachCase,Security Monitoring,finding_cases,attach_case,update,,csv,,,,,,,data-object,application/json,application/json,Attach security findings to a case +security,v2,/api/v2/security/findings/jira_issues,patch,AttachJiraIssue,Security Monitoring,finding_jira_issues,attach_jira_issue,update,,csv,,,,,,,data-object,application/json,application/json,Attach security findings to a Jira issue +security,v2,/api/v2/security/findings/jira_issues,post,CreateJiraIssues,Security Monitoring,finding_jira_issues,create_jira_issues,insert,,csv,,,,,,,data-array,application/json,application/json,Create Jira issues for security findings +security,v2,/api/v2/security/findings/linear_issues,patch,AttachLinearIssue,Security Monitoring,finding_linear_issues,attach_linear_issue,update,,csv,,,,,,,data-object,application/json,application/json,Attach security findings to a Linear issue +security,v2,/api/v2/security/findings/linear_issues,post,CreateLinearIssues,Security Monitoring,finding_linear_issues,create_linear_issues,insert,,csv,,,,,,,data-array,application/json,application/json,Create Linear issues for security findings +security,v2,/api/v2/security/findings/mute,patch,MuteSecurityFindings,Security Monitoring,findings,mute_security_findings,exec,,csv,,,,,,,data-object,application/json,application/json,Mute or unmute security findings +security,v2,/api/v2/security/findings/search,post,SearchSecurityFindings,Security Monitoring,security_findings,search_security_findings,exec,,csv,,,,,,"{""cursorParam"":""body.data.attributes.page.cursor"",""cursorPath"":""meta.page.after"",""limitParam"":""body.data.attributes.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search security findings +security,v2,/api/v2/security/findings/servicenow_tickets,patch,AttachServiceNowTicket,Security Monitoring,finding_servicenow_tickets,attach_service_now_ticket,update,,csv,,,,,,,data-object,application/json,application/json,Attach security findings to a ServiceNow ticket +security,v2,/api/v2/security/findings/servicenow_tickets,post,CreateServiceNowTickets,Security Monitoring,finding_servicenow_tickets,create_service_now_tickets,insert,,csv,,,,,,,data-array,application/json,application/json,Create ServiceNow tickets for security findings +security,v2,/api/v2/security/scanned-assets-metadata,get,ListScannedAssetsMetadata,Security Monitoring,scanned_assets_metadata,list_scanned_assets_metadata,select,$.data,csv,,,true,,,,data-array,,application/json,List scanned assets metadata +security,v2,/api/v2/security/siem/ioc-explorer,get,ListIndicatorsOfCompromise,Security Monitoring,siem_ioc_explorers,list_indicators_of_compromise,select,$.data,csv,,,true,,,,data-object,,application/json,List indicators of compromise +security,v2,/api/v2/security/siem/ioc-explorer/indicator,get,GetIndicatorOfCompromise,Security Monitoring,siem_ioc_explorer_indicators,get_indicator_of_compromise,select,$.data,csv,,,true,,,,data-object,,application/json,Get an indicator of compromise +security,v2,/api/v2/security/siem/ioc-explorer/triage,post,CreateIoCTriageState,Security Monitoring,siem_ioc_explorer_triages,create_io_ctriage_state,insert,,csv,,,true,,,,data-object,application/json,application/json,Create or update an indicator triage state +security,v2,/api/v2/security/vulnerabilities,post,ImportSecurityVulnerabilities,Security Monitoring,vulnerabilities,import_security_vulnerabilities,insert,,csv,,,true,,,,none,application/json,,Import security vulnerabilities +security,v2,/api/v2/security_monitoring/configuration/critical_assets,get,ListSecurityMonitoringCriticalAssets,Security Monitoring,monitoring_critical_assets,list_security_monitoring_critical_assets,select,$.data,csv,,,,,,,data-array,,application/json,Get all critical assets +security,v2,/api/v2/security_monitoring/configuration/critical_assets,post,CreateSecurityMonitoringCriticalAsset,Security Monitoring,monitoring_critical_assets,create_security_monitoring_critical_asset,insert,,csv,,,,,,,data-object,application/json,application/json,Create a critical asset +security,v2,/api/v2/security_monitoring/configuration/critical_assets/rules/{rule_id},get,GetCriticalAssetsAffectingRule,Security Monitoring,monitoring_critical_asset_rules,get_critical_assets_affecting_rule,select,$.data,csv,,,,,,,data-array,,application/json,Get critical assets affecting a specific rule +security,v2,/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id},delete,DeleteSecurityMonitoringCriticalAsset,Security Monitoring,monitoring_critical_assets,delete_security_monitoring_critical_asset,delete,,csv,,,,,,,none,,,Delete a critical asset +security,v2,/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id},get,GetSecurityMonitoringCriticalAsset,Security Monitoring,monitoring_critical_assets,get_security_monitoring_critical_asset,select,$.data,csv,,,,,,,data-object,,application/json,Get a critical asset +security,v2,/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id},patch,UpdateSecurityMonitoringCriticalAsset,Security Monitoring,monitoring_critical_assets,update_security_monitoring_critical_asset,update,,csv,,,,,,,data-object,application/json,application/json,Update a critical asset +security,v2,/api/v2/security_monitoring/configuration/integration_config,get,ListSecurityMonitoringIntegrationConfigs,Security Monitoring,monitoring_integration_configs,list_security_monitoring_integration_configs,select,$.data,csv,,,true,,,,data-array,,application/json,List entity context sync configurations +security,v2,/api/v2/security_monitoring/configuration/integration_config,post,CreateSecurityMonitoringIntegrationConfig,Security Monitoring,monitoring_integration_configs,create_security_monitoring_integration_config,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an entity context sync configuration +security,v2,/api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations,get,GetEntraIdAzureAppRegistrations,Security Monitoring,monitoring_entra_id_azure_app_registrations,get_entra_id_azure_app_registrations,select,$.data,csv,,,true,,,,data-object,,application/json,Get Entra ID Azure App Registration prerequisites +security,v2,/api/v2/security_monitoring/configuration/integration_config/validate,post,ValidateSecurityMonitoringIntegrationCredentials,Security Monitoring,monitoring_integration_configs,validate_security_monitoring_integration_credentials,exec,,csv,,,true,,,,none,application/json,,Validate entity context sync credentials +security,v2,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id},delete,DeleteSecurityMonitoringIntegrationConfig,Security Monitoring,monitoring_integration_configs,delete_security_monitoring_integration_config,delete,,csv,,,true,,,,none,,,Delete an entity context sync configuration +security,v2,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id},get,GetSecurityMonitoringIntegrationConfig,Security Monitoring,monitoring_integration_configs,get_security_monitoring_integration_config,select,$.data,csv,,,true,,,,data-object,,application/json,Get an entity context sync configuration +security,v2,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id},patch,UpdateSecurityMonitoringIntegrationConfig,Security Monitoring,monitoring_integration_configs,update_security_monitoring_integration_config,update,,csv,,,true,,,,data-object,application/json,application/json,Update an entity context sync configuration +security,v2,/api/v2/security_monitoring/configuration/integration_config/{integration_config_id}/validate,post,ValidateSecurityMonitoringIntegrationConfig,Security Monitoring,monitoring_integration_configs,validate_security_monitoring_integration_config,exec,,csv,,,true,,,,none,,,Validate an entity context sync configuration +security,v2,/api/v2/security_monitoring/configuration/integration_config/{integration_type}/activate,post,ActivateIntegration,Security Monitoring,monitoring_integration_configs,activate_integration,exec,,csv,,,true,,,,data-object,application/json,application/json,Activate an entity context sync integration +security,v2,/api/v2/security_monitoring/configuration/integration_config/{integration_type}/deactivate,post,DeactivateIntegration,Security Monitoring,monitoring_integration_configs,deactivate_integration,exec,,csv,,,true,,,,data-object,,application/json,Deactivate an entity context sync integration +security,v2,/api/v2/security_monitoring/configuration/notification_rules/send_notification_preview,post,SendSecurityMonitoringNotificationPreview,Security Monitoring,monitoring_notification_rules,send_security_monitoring_notification_preview,exec,,csv,,,,,,,data-object,application/json,application/json,Test a notification rule +security,v2,/api/v2/security_monitoring/configuration/security_filters/versions,get,ListSecurityFilterVersions,Security Monitoring,monitoring_security_filter_versions,list_security_filter_versions,select,$.data,csv,,,,,,,data-array,,application/json,Get the version history of security filters +security,v2,/api/v2/security_monitoring/configuration/suppressions/{suppression_id}/version_history,get,GetSuppressionVersionHistory,Security Monitoring,monitoring_suppression_version_histories,get_suppression_version_history,select,$.data,csv,,,,,,,data-object,,application/json,Get a suppression's version history +security,v2,/api/v2/security_monitoring/content_packs/states,get,GetContentPacksStates,Security Monitoring,monitoring_content_pack_states,get_content_packs_states,select,$.data,csv,,,true,,,,data-array,,application/json,Get content pack states +security,v2,/api/v2/security_monitoring/content_packs/{content_pack_id}/activate,put,ActivateContentPack,Security Monitoring,monitoring_content_packs,activate_content_pack,exec,,csv,,,true,,,,none,,,Activate content pack +security,v2,/api/v2/security_monitoring/content_packs/{content_pack_id}/deactivate,put,DeactivateContentPack,Security Monitoring,monitoring_content_packs,deactivate_content_pack,exec,,csv,,,true,,,,none,,,Deactivate content pack +security,v2,/api/v2/security_monitoring/datasets,get,ListSecurityMonitoringDatasets,Security Monitoring,monitoring_datasets,list_security_monitoring_datasets,select,$.data,csv,,,true,,,,data-array,,application/json,List datasets +security,v2,/api/v2/security_monitoring/datasets,post,CreateSecurityMonitoringDataset,Security Monitoring,monitoring_datasets,create_security_monitoring_dataset,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a dataset +security,v2,/api/v2/security_monitoring/datasets/dependencies,post,BatchGetSecurityMonitoringDatasetDependencies,Security Monitoring,monitoring_dataset_dependencies,batch_get_security_monitoring_dataset_dependencies,insert,,csv,,,true,,,,data-array,application/json,application/json,Get dataset dependencies +security,v2,/api/v2/security_monitoring/datasets/{dataset_id},delete,DeleteSecurityMonitoringDataset,Security Monitoring,monitoring_datasets,delete_security_monitoring_dataset,delete,,csv,,,true,,,,none,,,Delete a dataset +security,v2,/api/v2/security_monitoring/datasets/{dataset_id},get,GetSecurityMonitoringDataset,Security Monitoring,monitoring_datasets,get_security_monitoring_dataset,select,$.data,csv,,,true,,,,data-object,,application/json,Get a dataset +security,v2,/api/v2/security_monitoring/datasets/{dataset_id},patch,UpdateSecurityMonitoringDataset,Security Monitoring,monitoring_datasets,update_security_monitoring_dataset,update,,csv,,,true,,,,none,application/json,,Update a dataset +security,v2,/api/v2/security_monitoring/datasets/{dataset_id}/version/{version},get,GetSecurityMonitoringDatasetByVersion,Security Monitoring,monitoring_dataset_versions,get_security_monitoring_dataset_by_version,select,$.data,csv,,,true,,,,data-object,,application/json,Get a dataset at a specific version +security,v2,/api/v2/security_monitoring/datasets/{dataset_id}/version_history,get,GetSecurityMonitoringDatasetVersionHistory,Security Monitoring,monitoring_dataset_version_histories,get_security_monitoring_dataset_version_history,select,$.data,csv,,,true,,,,data-object,,application/json,Get the version history of a dataset +security,v2,/api/v2/security_monitoring/entity_context,get,GetEntityContext,Security Monitoring,monitoring_entity_contexts,get_entity_context,select,$.data,csv,,,true,,,,data-array,,application/json,Get entity context +security,v2,/api/v2/security_monitoring/entity_context/{id},get,GetSingleEntityContext,Security Monitoring,monitoring_entity_contexts,get_single_entity_context,select,$.data,csv,,,true,,,,data-object,,application/json,Get a single entity context +security,v2,/api/v2/security_monitoring/rules/bulk_delete,delete,BulkDeleteSecurityMonitoringRules,Security Monitoring,monitoring_rules,bulk_delete_security_monitoring_rules,delete,,csv,,,,,,,data-object,application/json,application/json,Bulk delete security monitoring rules +security,v2,/api/v2/security_monitoring/rules/bulk_export,post,BulkExportSecurityMonitoringRules,Security Monitoring,skip_this_resource,,,,skip,non_json_response,,,,,,non-json,application/json,application/zip,Bulk export security monitoring rules +security,v2,/api/v2/security_monitoring/rules/convert/bulk,post,BulkConvertExistingSecurityMonitoringRules,Security Monitoring,skip_this_resource,,,,skip,non_json_response,,,,,,non-json,application/json,application/zip,Bulk convert rules to Terraform +security,v2,/api/v2/security_monitoring/rules/{rule_id}/restore/{version},post,RestoreSecurityMonitoringRule,Security Monitoring,monitoring_rules,restore_security_monitoring_rule,exec,,csv,,,true,,,,multi-array,,application/json,Restore a rule to a historical version +security,v2,/api/v2/security_monitoring/sample_log_generation/subscriptions,get,ListSampleLogGenerationSubscriptions,Security Monitoring,monitoring_sample_log_generation_subscriptions,list_sample_log_generation_subscriptions,select,$.data,csv,,,true,,,,data-array,,application/json,Get sample log generation subscriptions +security,v2,/api/v2/security_monitoring/sample_log_generation/subscriptions,post,CreateSampleLogGenerationSubscription,Security Monitoring,monitoring_sample_log_generation_subscriptions,create_sample_log_generation_subscription,insert,,csv,,,true,,,,data-object,application/json,application/json,Subscribe to sample log generation +security,v2,/api/v2/security_monitoring/sample_log_generation/subscriptions/bulk,post,BulkCreateSampleLogGenerationSubscriptions,Security Monitoring,monitoring_sample_log_generation_subscriptions,bulk_create_sample_log_generation_subscriptions,exec,,csv,,,true,,,,data-array,application/json,application/json,Bulk subscribe to sample log generation +security,v2,/api/v2/security_monitoring/sample_log_generation/subscriptions/{content_pack_id},delete,DeleteSampleLogGenerationSubscription,Security Monitoring,monitoring_sample_log_generation_subscriptions,delete_sample_log_generation_subscription,delete,,csv,,,true,,,,data-object,,application/json,Unsubscribe from sample log generation +security,v2,/api/v2/security_monitoring/signals/bulk/assignee,patch,BulkEditSecurityMonitoringSignalsAssignee,Security Monitoring,monitoring_signals,bulk_edit_security_monitoring_signals_assignee,exec,,csv,,,,,,,object,application/json,application/json,Bulk update triage assignee of security signals +security,v2,/api/v2/security_monitoring/signals/bulk/state,patch,BulkEditSecurityMonitoringSignalsState,Security Monitoring,monitoring_signals,bulk_edit_security_monitoring_signals_state,exec,,csv,,,,,,,object,application/json,application/json,Bulk update triage state of security signals +security,v2,/api/v2/security_monitoring/signals/bulk/update,patch,BulkEditSecurityMonitoringSignals,Security Monitoring,monitoring_signals,bulk_edit_security_monitoring_signals,exec,,csv,,,,,,,object,application/json,application/json,Bulk update security signals +security,v2,/api/v2/security_monitoring/signals/{signal_id}/entities,get,GetSignalEntities,Security Monitoring,monitoring_signal_entities,get_signal_entities,select,$.data,csv,,,true,,,,data-object,,application/json,Get entities related to a signal +security,v2,/api/v2/security_monitoring/signals/{signal_id}/investigation_queries,get,GetInvestigationLogQueriesMatchingSignal,Security Monitoring,monitoring_signal_investigation_queries,get_investigation_log_queries_matching_signal,select,$.data,csv,,,,,,,data-array,,application/json,Get investigation queries for a signal +security,v2,/api/v2/security_monitoring/signals/{signal_id}/suggested_actions,get,GetSuggestedActionsMatchingSignal,Security Monitoring,monitoring_signal_suggested_actions,get_suggested_actions_matching_signal,select,$.data,csv,,,,,,,data-array,,application/json,Get suggested actions for a signal +security,v2,/api/v2/security_monitoring/signals/{signal_id}/update,patch,EditSecurityMonitoringSignal,Security Monitoring,monitoring_signals,edit_security_monitoring_signal,exec,,csv,,,,,,,data-object,application/json,application/json,Update security signal triage state or assignee +security,v2,/api/v2/security_monitoring/terraform/{resource_type}/bulk,post,BulkExportSecurityMonitoringTerraformResources,Security Monitoring,skip_this_resource,,,,skip,non_json_response,,true,,,,non-json,application/json,application/zip,Export security monitoring resources to Terraform +security,v2,/api/v2/security_monitoring/terraform/{resource_type}/convert,post,ConvertSecurityMonitoringTerraformResource,Security Monitoring,monitoring_terraform_resources,convert_security_monitoring_terraform_resource,exec,,csv,,,true,,,,data-object,application/json,application/json,Convert security monitoring resource to Terraform +security,v2,/api/v2/security_monitoring/terraform/{resource_type}/{resource_id},get,ExportSecurityMonitoringTerraformResource,Security Monitoring,monitoring_terraform_resources,export_security_monitoring_terraform_resource,select,$.data,csv,,,true,,,,data-object,,application/json,Export security monitoring resource to Terraform +security,v2,/api/v2/static-analysis-sca/dependencies,post,CreateSCAResult,Static Analysis,sca_dependencies,create_scaresult,insert,,csv,,,true,,,,none,application/json,,Post dependencies for analysis +security,v2,/api/v2/static-analysis-sca/dependencies/scan,post,CreateSCAScan,Static Analysis,sca_dependencies,create_scascan,exec,,csv,,,true,,,,data-object,application/json,application/json,Submit libraries for vulnerability scanning +security,v2,/api/v2/static-analysis-sca/dependencies/scan/{job_id},get,GetSCAScan,Static Analysis,sca_dependency_scans,get_scascan,exec,,csv,,,true,,,,object,,application/json,Retrieve a dependency scan result +security,v2,/api/v2/static-analysis-sca/licenses/list,get,ListSCALicenses,Static Analysis,sca_licenses,list_scalicenses,select,$.data,csv,,,true,,,,data-object,,application/json,Get the list of SPDX licenses +security,v2,/api/v2/static-analysis-sca/vulnerabilities/resolve-vulnerable-symbols,post,CreateSCAResolveVulnerableSymbols,Static Analysis,sca_vulnerabilities,create_scaresolve_vulnerable_symbols,exec,,csv,,,true,,,,data-object,application/json,application/json,POST request to resolve vulnerable symbols +security,v2,/api/v2/static-analysis/ai/memory,get,ListAiMemoryViolationResults,Static Analysis,static_analysis_ai_memories,list_ai_memory_violation_results,select,$.data,csv,,,true,,,,data-array,,application/json,List AI memory violation results +security,v2,/api/v2/static-analysis/ai/memory,post,CreateAiMemoryViolationResult,Static Analysis,static_analysis_ai_memories,create_ai_memory_violation_result,insert,,csv,,,true,,,,none,application/json,,Create an AI memory violation result +security,v2,/api/v2/static-analysis/ai/memory/{id},delete,DeleteAiMemoryViolationResult,Static Analysis,static_analysis_ai_memories,delete_ai_memory_violation_result,delete,,csv,,,true,,,,none,,,Delete an AI memory violation result +security,v2,/api/v2/static-analysis/ai/prompts,get,ListAiPrompts,Static Analysis,static_analysis_ai_prompts,list_ai_prompts,select,$.data,csv,,,true,,,,data-array,,application/json,List AI prompts +security,v2,/api/v2/static-analysis/ai/rulesets,get,ListAiCustomRulesets,Static Analysis,static_analysis_ai_rulesets,list_ai_custom_rulesets,select,$.data,csv,,,true,,,,data-array,,application/json,List AI custom rulesets +security,v2,/api/v2/static-analysis/ai/rulesets,post,CreateAiCustomRuleset,Static Analysis,static_analysis_ai_rulesets,create_ai_custom_ruleset,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an AI custom ruleset +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name},delete,DeleteAiCustomRuleset,Static Analysis,static_analysis_ai_rulesets,delete_ai_custom_ruleset,delete,,csv,,,true,,,,none,,,Delete an AI custom ruleset +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name},get,GetAiCustomRuleset,Static Analysis,static_analysis_ai_rulesets,get_ai_custom_ruleset,select,$.data,csv,,,true,,,,data-object,,application/json,Get an AI custom ruleset +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name},patch,UpdateAiCustomRuleset,Static Analysis,static_analysis_ai_rulesets,update_ai_custom_ruleset,update,,csv,,,true,,,,none,application/json,,Update an AI custom ruleset +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules,post,CreateAiCustomRule,Static Analysis,static_analysis_ai_ruleset_rules,create_ai_custom_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an AI custom rule +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name},delete,DeleteAiCustomRule,Static Analysis,static_analysis_ai_ruleset_rules,delete_ai_custom_rule,delete,,csv,,,true,,,,none,,,Delete an AI custom rule +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name},get,GetAiCustomRule,Static Analysis,static_analysis_ai_ruleset_rules,get_ai_custom_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get an AI custom rule +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions,get,ListAiCustomRuleRevisions,Static Analysis,static_analysis_ai_ruleset_rule_revisions,list_ai_custom_rule_revisions,select,$.data,csv,,,true,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,List AI custom rule revisions +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions,post,CreateAiCustomRuleRevision,Static Analysis,static_analysis_ai_ruleset_rule_revisions,create_ai_custom_rule_revision,insert,,csv,,,true,,,,none,application/json,,Create an AI custom rule revision +security,v2,/api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id},get,GetAiCustomRuleRevision,Static Analysis,static_analysis_ai_ruleset_rule_revisions,get_ai_custom_rule_revision,select,$.data,csv,,,true,,,,data-object,,application/json,Get an AI custom rule revision +security,v2,/api/v2/static-analysis/codegen/rulesets,get,ListStaticAnalysisCodegenRulesets,Security Monitoring,static_analysis_codegen_rulesets,list_static_analysis_codegen_rulesets,select,$.data,csv,,,true,,,,data-array,,application/json,List codegen rulesets +security,v2,/api/v2/static-analysis/custom/rulesets,get,ListCustomRulesets,Static Analysis,static_analysis_custom_rulesets,list_custom_rulesets,select,$.data,csv,,,true,,,,data-array,,application/json,List Custom Rulesets +security,v2,/api/v2/static-analysis/custom/rulesets,put,CreateCustomRuleset,Static Analysis,static_analysis_custom_rulesets,create_custom_ruleset,replace,,csv,,,true,,,,data-object,application/json,application/json,Create Custom Ruleset +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name},delete,DeleteCustomRuleset,Static Analysis,static_analysis_custom_rulesets,delete_custom_ruleset,delete,,csv,,,true,,,,none,,,Delete Custom Ruleset +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name},get,GetCustomRuleset,Static Analysis,static_analysis_custom_rulesets,get_custom_ruleset,select,$.data,csv,,,true,,,,data-object,,application/json,Show Custom Ruleset +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name},patch,UpdateCustomRuleset,Static Analysis,static_analysis_custom_rulesets,update_custom_ruleset,update,,csv,,,true,,,,data-object,application/json,application/json,Update Custom Ruleset +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules,put,CreateCustomRule,Static Analysis,static_analysis_custom_ruleset_rules,create_custom_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Create Custom Rule +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name},delete,DeleteCustomRule,Static Analysis,static_analysis_custom_ruleset_rules,delete_custom_rule,delete,,csv,,,true,,,,none,,,Delete Custom Rule +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name},get,GetCustomRule,Static Analysis,static_analysis_custom_ruleset_rules,get_custom_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Show Custom Rule +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions,get,ListCustomRuleRevisions,Static Analysis,static_analysis_custom_ruleset_rule_revisions,list_custom_rule_revisions,select,$.data,csv,,,true,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,List Custom Rule Revisions +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions,put,CreateCustomRuleRevision,Static Analysis,static_analysis_custom_ruleset_rule_revisions,create_custom_rule_revision,replace,,csv,,,true,,,,none,application/json,,Create Custom Rule Revision +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/revert,post,RevertCustomRuleRevision,Static Analysis,static_analysis_custom_ruleset_rule_revisions,revert_custom_rule_revision,exec,,csv,,,true,,,,none,application/json,,Revert Custom Rule Revision +security,v2,/api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id},get,GetCustomRuleRevision,Static Analysis,static_analysis_custom_ruleset_rule_revisions,get_custom_rule_revision,select,$.data,csv,,,true,,,,data-object,,application/json,Show Custom Rule Revision +security,v2,/api/v2/static-analysis/default-rulesets/{language},get,GetStaticAnalysisDefaultRulesets,Security Monitoring,static_analysis_default_rulesets,get_static_analysis_default_rulesets,select,$.data,csv,,,true,,,,data-object,,application/json,Get default rulesets for a language +security,v2,/api/v2/static-analysis/rulesets,post,ListMultipleRulesets,Security Monitoring,static_analysis_rulesets,list_multiple_rulesets,insert,,csv,,,true,,,,data-object,application/json,application/json,Ruleset get multiple +security,v2,/api/v2/static-analysis/rulesets/{ruleset_name},get,GetStaticAnalysisRuleset,Security Monitoring,static_analysis_rulesets,get_static_analysis_ruleset,select,$.data,csv,,,true,,,,data-object,,application/json,Get a SAST ruleset +security,v2,/api/v2/static-analysis/secrets/rules,get,GetSecretsRules,Security Monitoring,static_analysis_secret_rules,get_secrets_rules,select,$.data,csv,,,true,,,,data-array,,application/json,Returns a list of Secrets rules +security,v2,/api/v2/static-analysis/static-analysis-server/analyze,post,CreateStaticAnalysisServerAnalysis,Security Monitoring,static_analysis_server,create_static_analysis_server_analysis,exec,,csv,,,true,,,,data-object,application/json,application/json,Analyze code +security,v2,/api/v2/static-analysis/static-analysis-server/get-ast,post,CreateStaticAnalysisAst,Security Monitoring,static_analysis_server,create_static_analysis_ast,exec,,csv,,,true,,,,data-object,application/json,application/json,Get AST for source code +security,v2,/api/v2/static-analysis/static-analysis-server/node-types/{language},get,GetStaticAnalysisNodeTypes,Security Monitoring,static_analysis_server,get_static_analysis_node_types,exec,$.data,csv,,,true,,,,data-object,,application/json,Get node types for a language +security,v2,/api/v2/static-analysis/static-analysis-server/tree-sitter-wasm/{file},get,GetStaticAnalysisTreeSitterWasm,Security Monitoring,skip_this_resource,,,,skip,non_json_response,,true,,,,non-json,,application/octet-stream,Get tree-sitter WASM file +security,v1,/api/v1/security_analytics/signals/{signal_id}/add_to_incident,patch,AddSecurityMonitoringSignalToIncident,Security Monitoring,monitoring_signals,add_security_monitoring_signal_to_incident,exec,,csv,,,,,,,object,application/json,application/json,Add a security signal to an incident +security,v1,/api/v1/security_analytics/signals/{signal_id}/assignee,patch,EditSecurityMonitoringSignalAssigneeV1,Security Monitoring,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Modify the triage assignee of a security signal +security,v1,/api/v1/security_analytics/signals/{signal_id}/state,patch,EditSecurityMonitoringSignalStateV1,Security Monitoring,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Change the triage state of a security signal +service_management,v2,/api/v2/bits-ai/investigations,get,ListInvestigations,Bits AI,bits_ai_investigations,list_investigations,select,$.data,csv,,,true,,,"{""limitParam"":""page[limit]"",""pageOffsetParam"":""page[offset]"",""resultsPath"":""data""}",data-array,,application/json,List Bits AI investigations +service_management,v2,/api/v2/bits-ai/investigations,post,TriggerInvestigation,Bits AI,bits_ai_investigations,trigger_investigation,insert,,csv,,,true,,,,data-object,application/json,application/json,Trigger a Bits AI investigation +service_management,v2,/api/v2/bits-ai/investigations/{id},get,GetInvestigation,Bits AI,bits_ai_investigations,get_investigation,select,$.data,csv,,,true,,,,data-object,,application/json,Get a Bits AI investigation +service_management,v2,/api/v2/cases/aggregate,post,AggregateCases,Case Management,cases,aggregate_cases,exec,,csv,,,,,,,data-object,application/json,application/json,Aggregate cases +service_management,v2,/api/v2/cases/bulk,post,BulkUpdateCases,Case Management,cases,bulk_update_cases,exec,,csv,,,,,,,none,application/json,,Bulk update cases +service_management,v2,/api/v2/cases/count,get,CountCases,Case Management,case_counts,count_cases,select,$.data,csv,,,,,,,data-object,,application/json,Count cases +service_management,v2,/api/v2/cases/link,get,ListCaseLinks,Case Management,case_links,list_case_links,select,$.data,csv,,,,,,,data-array,,application/json,List case links +service_management,v2,/api/v2/cases/link,post,CreateCaseLink,Case Management,cases,create_case_link,exec,,csv,,,,,,,data-object,application/json,application/json,Create a case link +service_management,v2,/api/v2/cases/link/{link_id},delete,DeleteCaseLink,Case Management,cases,delete_case_link,delete,,csv,,,,,,,none,,,Delete a case link +service_management,v2,/api/v2/cases/projects/favorites,get,ListUserCaseProjectFavorites,Case Management,case_project_favorites,list_user_case_project_favorites,select,$.data,csv,,,,,,,data-array,,application/json,List project favorites +service_management,v2,/api/v2/cases/projects/{project_id},patch,UpdateProject,Case Management,case_projects,update_project,update,,csv,,,,,,,data-object,application/json,application/json,Update a project +service_management,v2,/api/v2/cases/projects/{project_id}/favorites,delete,UnfavoriteCaseProject,Case Management,case_project_favorites,unfavorite_case_project,delete,,csv,,,,,,,none,,,Unfavorite a project +service_management,v2,/api/v2/cases/projects/{project_id}/favorites,post,FavoriteCaseProject,Case Management,case_project_favorites,favorite_case_project,insert,,csv,,,,,,,none,,,Favorite a project +service_management,v2,/api/v2/cases/projects/{project_id}/notification_rules,get,GetProjectNotificationRules,Case Management,case_project_notification_rules,get_project_notification_rules,select,$.data,csv,,,,,,,data-array,,application/json,Get notification rules +service_management,v2,/api/v2/cases/projects/{project_id}/notification_rules,post,CreateProjectNotificationRule,Case Management,case_project_notification_rules,create_project_notification_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create a notification rule +service_management,v2,/api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id},delete,DeleteProjectNotificationRule,Case Management,case_project_notification_rules,delete_project_notification_rule,delete,,csv,,,,,,,none,,,Delete a notification rule +service_management,v2,/api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id},put,UpdateProjectNotificationRule,Case Management,case_project_notification_rules,update_project_notification_rule,replace,,csv,,,,,,,none,application/json,,Update a notification rule +service_management,v2,/api/v2/cases/projects/{project_id}/rules,get,ListCaseAutomationRules,Case Management,case_project_rules,list_case_automation_rules,select,$.data,csv,,,,,,,data-array,,application/json,List automation rules +service_management,v2,/api/v2/cases/projects/{project_id}/rules,post,CreateCaseAutomationRule,Case Management,case_project_rules,create_case_automation_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create an automation rule +service_management,v2,/api/v2/cases/projects/{project_id}/rules/{rule_id},delete,DeleteCaseAutomationRule,Case Management,case_project_rules,delete_case_automation_rule,delete,,csv,,,,,,,none,,,Delete an automation rule +service_management,v2,/api/v2/cases/projects/{project_id}/rules/{rule_id},get,GetCaseAutomationRule,Case Management,case_project_rules,get_case_automation_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get an automation rule +service_management,v2,/api/v2/cases/projects/{project_id}/rules/{rule_id},put,UpdateCaseAutomationRule,Case Management,case_project_rules,update_case_automation_rule,replace,,csv,,,,,,,data-object,application/json,application/json,Update an automation rule +service_management,v2,/api/v2/cases/projects/{project_id}/rules/{rule_id}/disable,post,DisableCaseAutomationRule,Case Management,case_project_rules,disable_case_automation_rule,exec,,csv,,,,,,,data-object,,application/json,Disable an automation rule +service_management,v2,/api/v2/cases/projects/{project_id}/rules/{rule_id}/enable,post,EnableCaseAutomationRule,Case Management,case_project_rules,enable_case_automation_rule,exec,,csv,,,,,,,data-object,,application/json,Enable an automation rule +service_management,v2,/api/v2/cases/types,get,GetAllCaseTypes,Case Management Type,case_types,get_all_case_types,select,$.data,csv,,,,,,,data-array,,application/json,Get all case types +service_management,v2,/api/v2/cases/types,post,CreateCaseType,Case Management Type,case_types,create_case_type,insert,,csv,,,,,,,data-object,application/json,application/json,Create a case type +service_management,v2,/api/v2/cases/types/custom_attributes,get,GetAllCustomAttributes,Case Management Attribute,case_type_custom_attributes,get_all_custom_attributes,select,$.data,csv,,,,,,,data-array,,application/json,Get all custom attributes +service_management,v2,/api/v2/cases/types/{case_type_id},delete,DeleteCaseType,Case Management Type,case_types,delete_case_type,delete,,csv,,,,,,,none,,,Delete a case type +service_management,v2,/api/v2/cases/types/{case_type_id},put,UpdateCaseType,Case Management Type,case_types,update_case_type,replace,,csv,,,,,,,data-object,application/json,application/json,Update a case type +service_management,v2,/api/v2/cases/types/{case_type_id}/custom_attributes,get,GetAllCustomAttributeConfigsByCaseType,Case Management Attribute,case_type_custom_attributes,get_all_custom_attribute_configs_by_case_type,select,$.data,csv,,,,,,,data-array,,application/json,Get all custom attributes config of case type +service_management,v2,/api/v2/cases/types/{case_type_id}/custom_attributes,post,CreateCustomAttributeConfig,Case Management Attribute,case_type_custom_attributes,create_custom_attribute_config,insert,,csv,,,,,,,data-object,application/json,application/json,Create custom attribute config for a case type +service_management,v2,/api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id},delete,DeleteCustomAttributeConfig,Case Management Attribute,case_type_custom_attributes,delete_custom_attribute_config,delete,,csv,,,,,,,none,,,Delete custom attributes config +service_management,v2,/api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id},put,UpdateCustomAttributeConfig,Case Management Attribute,case_type_custom_attributes,update_custom_attribute_config,replace,,csv,,,,,,,data-object,application/json,application/json,Update custom attribute config +service_management,v2,/api/v2/cases/views,get,ListCaseViews,Case Management,case_views,list_case_views,select,$.data,csv,,,,,,,data-array,,application/json,List case views +service_management,v2,/api/v2/cases/views,post,CreateCaseView,Case Management,case_views,create_case_view,insert,,csv,,,,,,,data-object,application/json,application/json,Create a case view +service_management,v2,/api/v2/cases/views/{view_id},delete,DeleteCaseView,Case Management,case_views,delete_case_view,delete,,csv,,,,,,,none,,,Delete a case view +service_management,v2,/api/v2/cases/views/{view_id},get,GetCaseView,Case Management,case_views,get_case_view,select,$.data,csv,,,,,,,data-object,,application/json,Get a case view +service_management,v2,/api/v2/cases/views/{view_id},put,UpdateCaseView,Case Management,case_views,update_case_view,replace,,csv,,,,,,,data-object,application/json,application/json,Update a case view +service_management,v2,/api/v2/cases/{case_id}/comment,post,CommentCase,Case Management,case_comments,comment_case,insert,,csv,,,,,,,data-array,application/json,application/json,Comment case +service_management,v2,/api/v2/cases/{case_id}/comment/{cell_id},delete,DeleteCaseComment,Case Management,case_comments,delete_case_comment,delete,,csv,,,,,,,none,,,Delete case comment +service_management,v2,/api/v2/cases/{case_id}/comment/{cell_id},put,UpdateCaseComment,Case Management,case_comments,update_case_comment,replace,,csv,,,,,,,none,application/json,,Update case comment +service_management,v2,/api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key},delete,DeleteCaseCustomAttribute,Case Management,case_custom_attributes,delete_case_custom_attribute,delete,,csv,,,,,,,data-object,,application/json,Delete custom attribute from case +service_management,v2,/api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key},post,UpdateCaseCustomAttribute,Case Management,case_custom_attributes,update_case_custom_attribute,insert,,csv,,,,,,,data-object,application/json,application/json,Update case custom attribute +service_management,v2,/api/v2/cases/{case_id}/description,post,UpdateCaseDescription,Case Management,cases,update_case_description,exec,,csv,,,,,,,data-object,application/json,application/json,Update case description +service_management,v2,/api/v2/cases/{case_id}/due_date,post,UpdateCaseDueDate,Case Management,cases,update_case_due_date,exec,,csv,,,,,,,data-object,application/json,application/json,Update case due date +service_management,v2,/api/v2/cases/{case_id}/insights,delete,RemoveCaseInsights,Case Management,case_insights,remove_case_insights,delete,,csv,,,,,,,data-object,application/json,application/json,Remove insights from a case +service_management,v2,/api/v2/cases/{case_id}/insights,put,AddCaseInsights,Case Management,case_insights,add_case_insights,replace,,csv,,,,,,,data-object,application/json,application/json,Add insights to a case +service_management,v2,/api/v2/cases/{case_id}/relationships/incidents,post,LinkIncident,Case Management,case_relationship_incidents,link_incident,insert,,csv,,,,,,,data-object,application/json,application/json,Link incident to case +service_management,v2,/api/v2/cases/{case_id}/relationships/jira_issues,delete,UnlinkJiraIssue,Case Management,case_relationship_jira_issues,unlink_jira_issue,delete,,csv,,,,,,,none,,,Remove Jira issue link from case +service_management,v2,/api/v2/cases/{case_id}/relationships/jira_issues,patch,LinkJiraIssueToCase,Case Management,case_relationship_jira_issues,link_jira_issue_to_case,update,,csv,,,,,,,none,application/json,,Link existing Jira issue to case +service_management,v2,/api/v2/cases/{case_id}/relationships/jira_issues,post,CreateCaseJiraIssue,Case Management,case_relationship_jira_issues,create_case_jira_issue,insert,,csv,,,,,,,none,application/json,,Create Jira issue for case +service_management,v2,/api/v2/cases/{case_id}/relationships/notebook,post,CreateCaseNotebook,Case Management,case_relationship_notebooks,create_case_notebook,insert,,csv,,,,,,,none,application/json,,Create investigation notebook for case +service_management,v2,/api/v2/cases/{case_id}/relationships/project,patch,MoveCaseToProject,Case Management,case_relationship_projects,move_case_to_project,update,,csv,,,,,,,data-object,application/json,application/json,Update case project +service_management,v2,/api/v2/cases/{case_id}/relationships/servicenow_tickets,post,CreateCaseServiceNowTicket,Case Management,case_relationship_servicenow_tickets,create_case_service_now_ticket,insert,,csv,,,,,,,none,application/json,,Create ServiceNow ticket for case +service_management,v2,/api/v2/cases/{case_id}/resolved_reason,post,UpdateCaseResolvedReason,Case Management,cases,update_case_resolved_reason,exec,,csv,,,,,,,data-object,application/json,application/json,Update case resolved reason +service_management,v2,/api/v2/cases/{case_id}/timelines,get,ListCaseTimeline,Case Management,case_timelines,list_case_timeline,select,$.data,csv,,,,,,,data-array,,application/json,Get case timeline +service_management,v2,/api/v2/cases/{case_id}/title,post,UpdateCaseTitle,Case Management,cases,update_case_title,exec,,csv,,,,,,,data-object,application/json,application/json,Update case title +service_management,v2,/api/v2/cases/{case_id}/watchers,get,ListCaseWatchers,Case Management,case_watchers,list_case_watchers,select,$.data,csv,,,,,,,data-array,,application/json,List case watchers +service_management,v2,/api/v2/cases/{case_id}/watchers/{user_uuid},delete,UnwatchCase,Case Management,case_watchers,unwatch_case,delete,,csv,,,,,,,none,,,Unwatch a case +service_management,v2,/api/v2/cases/{case_id}/watchers/{user_uuid},post,WatchCase,Case Management,case_watchers,watch_case,insert,,csv,,,,,,,none,,,Watch a case +service_management,v2,/api/v2/change-management/change-request,post,CreateChangeRequest,Change Management,change_requests,create_change_request,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a change request +service_management,v2,/api/v2/change-management/change-request/{change_request_id},get,GetChangeRequest,Change Management,change_requests,get_change_request,select,$.data,csv,,,true,,,,data-object,,application/json,Get a change request +service_management,v2,/api/v2/change-management/change-request/{change_request_id},patch,UpdateChangeRequest,Change Management,change_requests,update_change_request,update,,csv,,,true,,,,data-object,application/json,application/json,Update a change request +service_management,v2,/api/v2/change-management/change-request/{change_request_id}/branch,post,CreateChangeRequestBranch,Change Management,change_request_branches,create_change_request_branch,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a change request branch +service_management,v2,/api/v2/change-management/change-request/{change_request_id}/decisions/{decision_id},delete,DeleteChangeRequestDecision,Change Management,change_change_request_decisions,delete_change_request_decision,delete,,csv,,,true,,,,data-object,,application/json,Delete a change request decision +service_management,v2,/api/v2/change-management/change-request/{change_request_id}/decisions/{decision_id},patch,UpdateChangeRequestDecision,Change Management,change_change_request_decisions,update_change_request_decision,update,,csv,,,true,,,,data-object,application/json,application/json,Update a change request decision +service_management,v2,/api/v2/error-tracking/issues/{issue_id}/assignee,delete,DeleteIssueAssignee,Error Tracking,error_tracking_issues,delete_issue_assignee,delete,,csv,,,,,,,none,,,Remove the assignee of an issue +service_management,v2,/api/v2/forms,get,ListForms,Forms,forms,list_forms,select,$.data,csv,,,true,,,,data-array,,application/json,List forms +service_management,v2,/api/v2/forms,post,CreateForm,Forms,forms,create_form,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a form +service_management,v2,/api/v2/forms/create_and_publish,post,CreateAndPublishForm,Forms,forms,create_and_publish_form,exec,,csv,,,true,,,,data-object,application/json,application/json,Create and publish a form +service_management,v2,/api/v2/forms/{form_id},delete,DeleteForm,Forms,forms,delete_form,delete,,csv,,,true,,,,data-object,,application/json,Delete a form +service_management,v2,/api/v2/forms/{form_id},get,GetForm,Forms,forms,get_form,select,$.data,csv,,,true,,,,data-object,,application/json,Get a form +service_management,v2,/api/v2/forms/{form_id},patch,UpdateForm,Forms,forms,update_form,update,,csv,,,true,,,,data-object,application/json,application/json,Update a form +service_management,v2,/api/v2/forms/{form_id}/clone,post,CloneForm,Forms,forms,clone_form,exec,,csv,,,true,,,,data-object,application/json,application/json,Clone a form +service_management,v2,/api/v2/forms/{form_id}/publish,post,PublishForm,Forms,forms,publish_form,exec,,csv,,,true,,,,data-object,application/json,application/json,Publish a form version +service_management,v2,/api/v2/forms/{form_id}/versions,post,UpsertFormVersion,Forms,form_versions,upsert_form_version,insert,,csv,,,true,,,,data-object,application/json,application/json,Create or update a form version +service_management,v2,/api/v2/forms/{form_id}/versions/upsert_and_publish,post,UpsertAndPublishFormVersion,Forms,form_versions,upsert_and_publish_form_version,exec,,csv,,,true,,,,data-object,application/json,application/json,Upsert and publish a form version +service_management,v2,/api/v2/incidents/config/global/incident-handles,delete,DeleteGlobalIncidentHandle,Incidents,incident_global_incident_handles,delete_global_incident_handle,delete,,csv,,,true,,,,none,,,Delete global incident handle +service_management,v2,/api/v2/incidents/config/global/incident-handles,get,ListGlobalIncidentHandles,Incidents,incident_global_incident_handles,list_global_incident_handles,select,$.data,csv,,,true,,,,data-array,,application/json,List global incident handles +service_management,v2,/api/v2/incidents/config/global/incident-handles,post,CreateGlobalIncidentHandle,Incidents,incident_global_incident_handles,create_global_incident_handle,insert,,csv,,,true,,,,data-object,application/json,application/json,Create global incident handle +service_management,v2,/api/v2/incidents/config/global/incident-handles,put,UpdateGlobalIncidentHandle,Incidents,incident_global_incident_handles,update_global_incident_handle,replace,,csv,,,true,,,,data-object,application/json,application/json,Update global incident handle +service_management,v2,/api/v2/incidents/config/global/settings,get,GetGlobalIncidentSettings,Incidents,incident_global_settings,get_global_incident_settings,select,$.data,csv,,,true,,,,data-object,,application/json,Get global incident settings +service_management,v2,/api/v2/incidents/config/global/settings,patch,UpdateGlobalIncidentSettings,Incidents,incident_global_settings,update_global_incident_settings,update,,csv,,,true,,,,data-object,application/json,application/json,Update global incident settings +service_management,v2,/api/v2/incidents/config/google-chat-configurations,post,CreateIncidentGoogleChatConfiguration,Incidents,incident_google_chat_configurations,create_incident_google_chat_configuration,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident Google Chat configuration +service_management,v2,/api/v2/incidents/config/google-chat-configurations/{id},patch,UpdateIncidentGoogleChatConfiguration,Incidents,incident_google_chat_configurations,update_incident_google_chat_configuration,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident Google Chat configuration +service_management,v2,/api/v2/incidents/config/google-meet-configurations,post,CreateIncidentGoogleMeetConfiguration,Incidents,incident_google_meet_configurations,create_incident_google_meet_configuration,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident Google Meet configuration +service_management,v2,/api/v2/incidents/config/google-meet-configurations/{id},patch,UpdateIncidentGoogleMeetConfiguration,Incidents,incident_google_meet_configurations,update_incident_google_meet_configuration,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident Google Meet configuration +service_management,v2,/api/v2/incidents/config/impact-fields,get,ListIncidentImpactFields,Incidents,incident_impact_fields,list_incident_impact_fields,select,$.data,csv,,,true,,,,data-array,,application/json,List incident impact fields +service_management,v2,/api/v2/incidents/config/impact-fields,post,CreateIncidentImpactField,Incidents,incident_impact_fields,create_incident_impact_field,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident impact field +service_management,v2,/api/v2/incidents/config/impact-fields/{field_id},delete,DeleteIncidentImpactField,Incidents,incident_impact_fields,delete_incident_impact_field,delete,,csv,,,true,,,,none,,,Delete an incident impact field +service_management,v2,/api/v2/incidents/config/impact-fields/{field_id},put,UpdateIncidentImpactField,Incidents,incident_impact_fields,update_incident_impact_field,replace,,csv,,,true,,,,data-object,application/json,application/json,Update an incident impact field +service_management,v2,/api/v2/incidents/config/postmortem-templates,get,ListIncidentPostmortemTemplates,Incidents,incident_postmortem_templates,list_incident_postmortem_templates,select,$.data,csv,,,true,,,,data-array,,application/json,List postmortem templates +service_management,v2,/api/v2/incidents/config/postmortem-templates,post,CreateIncidentPostmortemTemplate,Incidents,incident_postmortem_templates,create_incident_postmortem_template,insert,,csv,,,true,,,,data-object,application/json,application/json,Create postmortem template +service_management,v2,/api/v2/incidents/config/postmortem-templates/{template_id},delete,DeleteIncidentPostmortemTemplate,Incidents,incident_postmortem_templates,delete_incident_postmortem_template,delete,,csv,,,true,,,,none,,,Delete postmortem template +service_management,v2,/api/v2/incidents/config/postmortem-templates/{template_id},get,GetIncidentPostmortemTemplate,Incidents,incident_postmortem_templates,get_incident_postmortem_template,select,$.data,csv,,,true,,,,data-object,,application/json,Get postmortem template +service_management,v2,/api/v2/incidents/config/postmortem-templates/{template_id},patch,UpdateIncidentPostmortemTemplate,Incidents,incident_postmortem_templates,update_incident_postmortem_template,update,,csv,,,true,,,,data-object,application/json,application/json,Update postmortem template +service_management,v2,/api/v2/incidents/config/rules,get,ListIncidentRules,Incidents,incident_rules,list_incident_rules,select,$.data,csv,,,true,,,,data-array,,application/json,List incident rules +service_management,v2,/api/v2/incidents/config/rules,post,CreateIncidentRule,Incidents,incident_rules,create_incident_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident rule +service_management,v2,/api/v2/incidents/config/rules/{rule_id},delete,DeleteIncidentRule,Incidents,incident_rules,delete_incident_rule,delete,,csv,,,true,,,,none,,,Delete an incident rule +service_management,v2,/api/v2/incidents/config/rules/{rule_id},get,GetIncidentRule,Incidents,incident_rules,get_incident_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get an incident rule +service_management,v2,/api/v2/incidents/config/rules/{rule_id},patch,UpdateIncidentRule,Incidents,incident_rules,update_incident_rule,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident rule +service_management,v2,/api/v2/incidents/config/types/org-settings,get,ListOrgSettings,Incidents,incident_type_org_settings,list_org_settings,select,$.data,csv,,,true,,,,data-array,,application/json,List incident type org settings +service_management,v2,/api/v2/incidents/config/types/{incident_type_id}/org-settings,get,GetOrgSettingsByIncidentType,Incidents,incident_type_org_settings,get_org_settings_by_incident_type,select,$.data,csv,,,true,,,,data-object,,application/json,Get org settings by incident type +service_management,v2,/api/v2/incidents/config/user-defined-fields,get,ListIncidentUserDefinedFields,Incidents,incident_user_defined_fields,list_incident_user_defined_fields,select,$.data,csv,,,true,,,,data-array,,application/json,Get a list of incident user-defined fields +service_management,v2,/api/v2/incidents/config/user-defined-fields,post,CreateIncidentUserDefinedField,Incidents,incident_user_defined_fields,create_incident_user_defined_field,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident user-defined field +service_management,v2,/api/v2/incidents/config/user-defined-fields/{field_id},delete,DeleteIncidentUserDefinedField,Incidents,incident_user_defined_fields,delete_incident_user_defined_field,delete,,csv,,,true,,,,none,,,Delete an incident user-defined field +service_management,v2,/api/v2/incidents/config/user-defined-fields/{field_id},get,GetIncidentUserDefinedField,Incidents,incident_user_defined_fields,get_incident_user_defined_field,select,$.data,csv,,,true,,,,data-object,,application/json,Get an incident user-defined field +service_management,v2,/api/v2/incidents/config/user-defined-fields/{field_id},patch,UpdateIncidentUserDefinedField,Incidents,incident_user_defined_fields,update_incident_user_defined_field,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident user-defined field +service_management,v2,/api/v2/incidents/config/user-defined-roles,get,ListIncidentUserDefinedRoles,Incidents,incident_user_defined_roles,list_incident_user_defined_roles,select,$.data,csv,,,true,,,,data-array,,application/json,List incident user-defined roles +service_management,v2,/api/v2/incidents/config/user-defined-roles,post,CreateIncidentUserDefinedRole,Incidents,incident_user_defined_roles,create_incident_user_defined_role,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident user-defined role +service_management,v2,/api/v2/incidents/config/user-defined-roles/{role_id},delete,DeleteIncidentUserDefinedRole,Incidents,incident_user_defined_roles,delete_incident_user_defined_role,delete,,csv,,,true,,,,none,,,Delete an incident user-defined role +service_management,v2,/api/v2/incidents/config/user-defined-roles/{role_id},get,GetIncidentUserDefinedRole,Incidents,incident_user_defined_roles,get_incident_user_defined_role,select,$.data,csv,,,true,,,,data-object,,application/json,Get an incident user-defined role +service_management,v2,/api/v2/incidents/config/user-defined-roles/{role_id},patch,UpdateIncidentUserDefinedRole,Incidents,incident_user_defined_roles,update_incident_user_defined_role,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident user-defined role +service_management,v2,/api/v2/incidents/import,post,ImportIncident,Incidents,incidents,import_incident,exec,,csv,,,true,,,,data-object,application/json,application/json,Import an incident +service_management,v2,/api/v2/incidents/{incident_id}/ai/postmortem,post,GetIncidentAIPostmortem,Incidents,incident_ai_postmortems,get_incident_aipostmortem,insert,,csv,,,true,,,,data-object,,application/json,Get an AI-generated incident postmortem +service_management,v2,/api/v2/incidents/{incident_id}/attachments,post,CreateIncidentAttachment,Incidents,incident_attachments,create_incident_attachment,insert,,csv,,,true,,,,data-object,application/json,application/json,Create incident attachment +service_management,v2,/api/v2/incidents/{incident_id}/attachments/postmortems,post,CreateIncidentPostmortemAttachment,Incidents,incident_attachment_postmortems,create_incident_postmortem_attachment,insert,,csv,,,true,,,,data-object,application/json,application/json,Create postmortem attachment +service_management,v2,/api/v2/incidents/{incident_id}/attachments/{attachment_id},delete,DeleteIncidentAttachment,Incidents,incident_attachments,delete_incident_attachment,delete,,csv,,,true,,,,none,,,Delete incident attachment +service_management,v2,/api/v2/incidents/{incident_id}/attachments/{attachment_id},patch,UpdateIncidentAttachment,Incidents,incident_attachments,update_incident_attachment,update,,csv,,,true,,,,data-object,application/json,application/json,Update incident attachment +service_management,v2,/api/v2/incidents/{incident_id}/cases/page,post,CreatePageFromIncident,Incidents,incident_case_pages,create_page_from_incident,insert,,csv,,,true,,,,data-object,application/json,application/json,Create a page from an incident +service_management,v2,/api/v2/incidents/{incident_id}/configurations,patch,UpdateIncidentConfiguration,Incidents,incident_configurations,update_incident_configuration,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident configuration +service_management,v2,/api/v2/incidents/{incident_id}/configurations,post,CreateIncidentConfiguration,Incidents,incident_configurations,create_incident_configuration,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident configuration +service_management,v2,/api/v2/incidents/{incident_id}/impacts,get,ListIncidentImpacts,Incidents,incident_impacts,list_incident_impacts,select,$.data,csv,,,,,,,data-array,,application/json,List an incident's impacts +service_management,v2,/api/v2/incidents/{incident_id}/impacts,post,CreateIncidentImpact,Incidents,incident_impacts,create_incident_impact,insert,,csv,,,,,,,data-object,application/json,application/json,Create an incident impact +service_management,v2,/api/v2/incidents/{incident_id}/impacts/{impact_id},delete,DeleteIncidentImpact,Incidents,incident_impacts,delete_incident_impact,delete,,csv,,,,,,,none,,,Delete an incident impact +service_management,v2,/api/v2/incidents/{incident_id}/impacts/{impact_id},patch,PatchIncidentImpact,Incidents,incident_impacts,patch_incident_impact,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident impact +service_management,v2,/api/v2/incidents/{incident_id}/page,post,CreateOnCallPageFromIncident,Incidents,incident_pages,create_on_call_page_from_incident,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an on-call page from an incident +service_management,v2,/api/v2/incidents/{incident_id}/pages/link,post,LinkPageToIncident,Incidents,incident_pages,link_page_to_incident,exec,,csv,,,true,,,,data-object,application/json,application/json,Link a page to an incident +service_management,v2,/api/v2/incidents/{incident_id}/responders,get,ListIncidentResponders,Incidents,incident_responders,list_incident_responders,select,$.data,csv,,,true,,,,data-array,,application/json,List incident responders +service_management,v2,/api/v2/incidents/{incident_id}/responders,post,CreateIncidentResponder,Incidents,incident_responders,create_incident_responder,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident responder +service_management,v2,/api/v2/incidents/{incident_id}/responders/{responder_id},delete,DeleteIncidentResponder,Incidents,incident_responders,delete_incident_responder,delete,,csv,,,true,,,,none,,,Delete an incident responder +service_management,v2,/api/v2/incidents/{incident_id}/responders/{responder_id},get,GetIncidentResponder,Incidents,incident_responders,get_incident_responder,select,$.data,csv,,,true,,,,data-object,,application/json,Get an incident responder +service_management,v2,/api/v2/incidents/{incident_id}/servicenow-records,post,CreateIncidentServiceNowRecord,Incidents,incident_servicenow_records,create_incident_service_now_record,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident ServiceNow record +service_management,v2,/api/v2/incidents/{incident_id}/timestamp-overrides,get,ListTimestampOverrides,Incidents,incident_timestamp_overrides,list_timestamp_overrides,select,$.data,csv,,,true,,,,data-array,,application/json,List incident timestamp overrides +service_management,v2,/api/v2/incidents/{incident_id}/timestamp-overrides,post,CreateTimestampOverride,Incidents,incident_timestamp_overrides,create_timestamp_override,insert,,csv,,,true,,,,data-object,application/json,application/json,Create an incident timestamp override +service_management,v2,/api/v2/incidents/{incident_id}/timestamp-overrides/{id},delete,DeleteTimestampOverride,Incidents,incident_timestamp_overrides,delete_timestamp_override,delete,,csv,,,true,,,,none,,,Delete an incident timestamp override +service_management,v2,/api/v2/incidents/{incident_id}/timestamp-overrides/{id},patch,UpdateTimestampOverride,Incidents,incident_timestamp_overrides,update_timestamp_override,update,,csv,,,true,,,,data-object,application/json,application/json,Update an incident timestamp override +service_management,v2,/api/v2/maintenance_windows,get,ListMaintenanceWindows,Case Management,maintenance_windows,list_maintenance_windows,select,$.data,csv,,,,,,,data-array,,application/json,List maintenance windows +service_management,v2,/api/v2/maintenance_windows,post,CreateMaintenanceWindow,Case Management,maintenance_windows,create_maintenance_window,insert,,csv,,,,,,,data-object,application/json,application/json,Create a maintenance window +service_management,v2,/api/v2/maintenance_windows/{maintenance_window_id},delete,DeleteMaintenanceWindow,Case Management,maintenance_windows,delete_maintenance_window,delete,,csv,,,,,,,none,,,Delete a maintenance window +service_management,v2,/api/v2/maintenance_windows/{maintenance_window_id},put,UpdateMaintenanceWindow,Case Management,maintenance_windows,update_maintenance_window,replace,,csv,,,,,,,data-object,application/json,application/json,Update a maintenance window +service_management,v2,/api/v2/on-call/schedules/{schedule_id}/responders,get,GetScheduleOnCallResponders,On-Call,on_call_schedule_responders,get_schedule_on_call_responders,select,$.data,csv,,,,,,,data-object,,application/json,Get on-call responders for a schedule +service_management,v2,/api/v2/on-call/users/{user_id}/notification-channels,get,ListUserNotificationChannels,On-Call,on_call_user_notification_channels,list_user_notification_channels,select,$.data,csv,,,,,,,data-array,,application/json,List On-Call notification channels for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-channels,post,CreateUserNotificationChannel,On-Call,on_call_user_notification_channels,create_user_notification_channel,insert,,csv,,,,,,,data-object,application/json,application/json,Create an On-Call notification channel for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-channels/{channel_id},delete,DeleteUserNotificationChannel,On-Call,on_call_user_notification_channels,delete_user_notification_channel,delete,,csv,,,,,,,none,,,Delete an On-Call notification channel for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-channels/{channel_id},get,GetUserNotificationChannel,On-Call,on_call_user_notification_channels,get_user_notification_channel,select,$.data,csv,,,,,,,data-object,,application/json,Get an On-Call notification channel for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-rules,get,ListUserNotificationRules,On-Call,on_call_user_notification_rules,list_user_notification_rules,select,$.data,csv,,,,,,,data-array,,application/json,List On-Call notification rules for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-rules,post,CreateUserNotificationRule,On-Call,on_call_user_notification_rules,create_user_notification_rule,insert,,csv,,,,,,,data-object,application/json,application/json,Create an On-Call notification rule for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-rules/{rule_id},delete,DeleteUserNotificationRule,On-Call,on_call_user_notification_rules,delete_user_notification_rule,delete,,csv,,,,,,,none,,,Delete an On-Call notification rule for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-rules/{rule_id},get,GetUserNotificationRule,On-Call,on_call_user_notification_rules,get_user_notification_rule,select,$.data,csv,,,,,,,data-object,,application/json,Get an On-Call notification rule for a user +service_management,v2,/api/v2/on-call/users/{user_id}/notification-rules/{rule_id},put,UpdateUserNotificationRule,On-Call,on_call_user_notification_rules,update_user_notification_rule,replace,,csv,,,,,,,data-object,application/json,application/json,Update an On-Call notification rule for a user +service_management,v2,/api/v2/slo/{slo_id}/status,get,GetSloStatus,Service Level Objectives,slo_statuses,get_slo_status,select,$.data,csv,,,true,,,,data-object,,application/json,Get SLO status +service_management,v2,/api/v2/statuspages,get,ListStatusPages,Status Pages,statuspages,list_status_pages,select,$.data,csv,,,,,,,data-array,,application/json,List status pages +service_management,v2,/api/v2/statuspages,post,CreateStatusPage,Status Pages,statuspages,create_status_page,insert,,csv,,,,,,,data-object,application/json,application/json,Create status page +service_management,v2,/api/v2/statuspages/degradations,get,ListDegradations,Status Pages,statuspage_degradations,list_degradations,select,$.data,csv,,,,,,,data-array,,application/json,List degradations +service_management,v2,/api/v2/statuspages/maintenances,get,ListMaintenances,Status Pages,statuspage_maintenances,list_maintenances,select,$.data,csv,,,,,,,data-array,,application/json,List maintenances +service_management,v2,/api/v2/statuspages/{page_id},delete,DeleteStatusPage,Status Pages,statuspages,delete_status_page,delete,,csv,,,,,,,none,,,Delete status page +service_management,v2,/api/v2/statuspages/{page_id},get,GetStatusPage,Status Pages,statuspages,get_status_page,select,$.data,csv,,,,,,,data-object,,application/json,Get status page +service_management,v2,/api/v2/statuspages/{page_id},patch,UpdateStatusPage,Status Pages,statuspages,update_status_page,update,,csv,,,,,,,data-object,application/json,application/json,Update status page +service_management,v2,/api/v2/statuspages/{page_id}/components,get,ListComponents,Status Pages,statuspage_components,list_components,select,$.data,csv,,,,,,,data-array,,application/json,List components +service_management,v2,/api/v2/statuspages/{page_id}/components,post,CreateComponent,Status Pages,statuspage_components,create_component,insert,,csv,,,,,,,data-object,application/json,application/json,Create component +service_management,v2,/api/v2/statuspages/{page_id}/components/{component_id},delete,DeleteComponent,Status Pages,statuspage_components,delete_component,delete,,csv,,,,,,,none,,,Delete component +service_management,v2,/api/v2/statuspages/{page_id}/components/{component_id},get,GetComponent,Status Pages,statuspage_components,get_component,select,$.data,csv,,,,,,,data-object,,application/json,Get component +service_management,v2,/api/v2/statuspages/{page_id}/components/{component_id},patch,UpdateComponent,Status Pages,statuspage_components,update_component,update,,csv,,,,,,,data-object,application/json,application/json,Update component +service_management,v2,/api/v2/statuspages/{page_id}/degradation_templates,get,ListDegradationTemplates,Status Pages,statuspage_degradation_templates,list_degradation_templates,select,$.data,csv,,,,,,,data-array,,application/json,List degradation templates +service_management,v2,/api/v2/statuspages/{page_id}/degradation_templates,post,CreateDegradationTemplate,Status Pages,statuspage_degradation_templates,create_degradation_template,insert,,csv,,,,,,,data-object,application/json,application/json,Create degradation template +service_management,v2,/api/v2/statuspages/{page_id}/degradation_templates/{template_id},delete,DeleteDegradationTemplate,Status Pages,statuspage_degradation_templates,delete_degradation_template,delete,,csv,,,,,,,none,,,Delete degradation template +service_management,v2,/api/v2/statuspages/{page_id}/degradation_templates/{template_id},get,GetDegradationTemplate,Status Pages,statuspage_degradation_templates,get_degradation_template,select,$.data,csv,,,,,,,data-object,,application/json,Get degradation template +service_management,v2,/api/v2/statuspages/{page_id}/degradation_templates/{template_id},patch,UpdateDegradationTemplate,Status Pages,statuspage_degradation_templates,update_degradation_template,update,,csv,,,,,,,data-object,application/json,application/json,Update degradation template +service_management,v2,/api/v2/statuspages/{page_id}/degradations,post,CreateDegradation,Status Pages,statuspage_degradations,create_degradation,insert,,csv,,,,,,,data-object,application/json,application/json,Create degradation +service_management,v2,/api/v2/statuspages/{page_id}/degradations/backfill,post,CreateBackfilledDegradation,Status Pages,statuspage_degradation_backfills,create_backfilled_degradation,insert,,csv,,,,,,,data-object,application/json,application/json,Create backfilled degradation +service_management,v2,/api/v2/statuspages/{page_id}/degradations/{degradation_id},delete,DeleteDegradation,Status Pages,statuspage_degradations,delete_degradation,delete,,csv,,,,,,,none,,,Delete degradation +service_management,v2,/api/v2/statuspages/{page_id}/degradations/{degradation_id},get,GetDegradation,Status Pages,statuspage_degradations,get_degradation,select,$.data,csv,,,,,,,data-object,,application/json,Get degradation +service_management,v2,/api/v2/statuspages/{page_id}/degradations/{degradation_id},patch,UpdateDegradation,Status Pages,statuspage_degradations,update_degradation,update,,csv,,,,,,,data-object,application/json,application/json,Update degradation +service_management,v2,/api/v2/statuspages/{page_id}/degradations/{degradation_id}/updates/{update_id},delete,SoftDeleteDegradationUpdate,Status Pages,statuspage_degradation_updates,soft_delete_degradation_update,delete,,csv,,,,,,,none,,,Soft delete degradation update +service_management,v2,/api/v2/statuspages/{page_id}/degradations/{degradation_id}/updates/{update_id},patch,EditDegradationUpdate,Status Pages,statuspage_degradation_updates,edit_degradation_update,update,,csv,,,,,,,data-object,application/json,application/json,Edit degradation update +service_management,v2,/api/v2/statuspages/{page_id}/maintenance_templates,get,ListMaintenanceTemplates,Status Pages,statuspage_maintenance_templates,list_maintenance_templates,select,$.data,csv,,,,,,,data-array,,application/json,List maintenance templates +service_management,v2,/api/v2/statuspages/{page_id}/maintenance_templates,post,CreateMaintenanceTemplate,Status Pages,statuspage_maintenance_templates,create_maintenance_template,insert,,csv,,,,,,,data-object,application/json,application/json,Create maintenance template +service_management,v2,/api/v2/statuspages/{page_id}/maintenance_templates/{template_id},delete,DeleteMaintenanceTemplate,Status Pages,statuspage_maintenance_templates,delete_maintenance_template,delete,,csv,,,,,,,none,,,Delete maintenance template +service_management,v2,/api/v2/statuspages/{page_id}/maintenance_templates/{template_id},get,GetMaintenanceTemplate,Status Pages,statuspage_maintenance_templates,get_maintenance_template,select,$.data,csv,,,,,,,data-object,,application/json,Get maintenance template +service_management,v2,/api/v2/statuspages/{page_id}/maintenance_templates/{template_id},patch,UpdateMaintenanceTemplate,Status Pages,statuspage_maintenance_templates,update_maintenance_template,update,,csv,,,,,,,data-object,application/json,application/json,Update maintenance template +service_management,v2,/api/v2/statuspages/{page_id}/maintenances,post,CreateMaintenance,Status Pages,statuspage_maintenances,create_maintenance,insert,,csv,,,,,,,data-object,application/json,application/json,Schedule maintenance +service_management,v2,/api/v2/statuspages/{page_id}/maintenances/backfill,post,CreateBackfilledMaintenance,Status Pages,statuspage_maintenance_backfills,create_backfilled_maintenance,insert,,csv,,,,,,,data-object,application/json,application/json,Create backfilled maintenance +service_management,v2,/api/v2/statuspages/{page_id}/maintenances/{maintenance_id},get,GetMaintenance,Status Pages,statuspage_maintenances,get_maintenance,select,$.data,csv,,,,,,,data-object,,application/json,Get maintenance +service_management,v2,/api/v2/statuspages/{page_id}/maintenances/{maintenance_id},patch,UpdateMaintenance,Status Pages,statuspage_maintenances,update_maintenance,update,,csv,,,,,,,data-object,application/json,application/json,Update maintenance +service_management,v2,/api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id},patch,PatchMaintenanceUpdate,Status Pages,statuspage_maintenance_updates,patch_maintenance_update,update,,csv,,,,,,,data-object,application/json,application/json,Edit maintenance update +service_management,v2,/api/v2/statuspages/{page_id}/publish,post,PublishStatusPage,Status Pages,statuspages,publish_status_page,exec,,csv,,,,,,,none,,,Publish status page +service_management,v2,/api/v2/statuspages/{page_id}/unpublish,post,UnpublishStatusPage,Status Pages,statuspages,unpublish_status_page,exec,,csv,,,,,,,none,,,Unpublish status page +service_management,v1,/api/v1/downtime,get,ListDowntimesV1,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,bare-array,,application/json,Get all downtimes +service_management,v1,/api/v1/downtime,post,CreateDowntimeV1,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Schedule a downtime +service_management,v1,/api/v1/downtime/cancel/by_scope,post,CancelDowntimesByScope,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Cancel downtimes by scope +service_management,v1,/api/v1/downtime/{downtime_id},delete,CancelDowntimeV1,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,none,,,Cancel a downtime +service_management,v1,/api/v1/downtime/{downtime_id},get,GetDowntimeV1,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,object,,application/json,Get a downtime +service_management,v1,/api/v1/downtime/{downtime_id},put,UpdateDowntimeV1,Downtimes,skip_this_resource,,,,skip,deprecated,true,,,,,object,application/json,application/json,Update a downtime +service_management,v1,/api/v1/events,get,ListEventsV1,Events,skip_this_resource,,,,skip,superseded_by_v2,,,,,,single-array:events,,application/json,Get a list of events +service_management,v1,/api/v1/events,post,CreateEventV1,Events,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,application/json,application/json,Post an event +service_management,v1,/api/v1/events/{event_id},get,GetEventV1,Events,skip_this_resource,,,,skip,superseded_by_v2,,,,,,object,,application/json,Get an event +service_management,v1,/api/v1/slo,get,ListSLOs,Service Level Objectives,slos,list_slos,select,$.data,csv,,,,,,"{""limitParam"":""limit"",""pageOffsetParam"":""offset"",""resultsPath"":""data""}",data-array,,application/json,Get all SLOs +service_management,v1,/api/v1/slo,post,CreateSLO,Service Level Objectives,slos,create_slo,insert,,csv,,,,,,,data-array,application/json,application/json,Create an SLO object +service_management,v1,/api/v1/slo/bulk_delete,post,DeleteSLOTimeframeInBulk,Service Level Objectives,slos,delete_slotimeframe_in_bulk,exec,,csv,,,,,,,data-object,application/json,application/json,Bulk Delete SLO Timeframes +service_management,v1,/api/v1/slo/can_delete,get,CheckCanDeleteSLO,Service Level Objectives,slos,check_can_delete_slo,select,$.data,csv,,,,,,,data-object,,application/json,Check if SLOs can be safely deleted +service_management,v1,/api/v1/slo/correction,get,ListSLOCorrection,Service Level Objective Corrections,slo_corrections,list_slocorrection,select,$.data,csv,,,,,,"{""limitParam"":""limit"",""pageOffsetParam"":""offset"",""resultsPath"":""data""}",data-array,,application/json,Get all SLO corrections +service_management,v1,/api/v1/slo/correction,post,CreateSLOCorrection,Service Level Objective Corrections,slo_corrections,create_slocorrection,insert,,csv,,,,,,,data-object,application/json,application/json,Create an SLO correction +service_management,v1,/api/v1/slo/correction/{slo_correction_id},delete,DeleteSLOCorrection,Service Level Objective Corrections,slo_corrections,delete_slocorrection,delete,,csv,,,,,,,none,,,Delete an SLO correction +service_management,v1,/api/v1/slo/correction/{slo_correction_id},get,GetSLOCorrection,Service Level Objective Corrections,slo_corrections,get_slocorrection,select,$.data,csv,,,,,,,data-object,,application/json,Get an SLO correction for an SLO +service_management,v1,/api/v1/slo/correction/{slo_correction_id},patch,UpdateSLOCorrection,Service Level Objective Corrections,slo_corrections,update_slocorrection,update,,csv,,,,,,,data-object,application/json,application/json,Update an SLO correction +service_management,v1,/api/v1/slo/search,get,SearchSLO,Service Level Objectives,slo_search_results,search_slo,select,$.data.attributes.slos,csv,,,,,,,data-object,,application/json,Search for SLOs +service_management,v1,/api/v1/slo/{slo_id},delete,DeleteSLO,Service Level Objectives,slos,delete_slo,delete,,csv,,,,,,,data-array,,application/json,Delete an SLO +service_management,v1,/api/v1/slo/{slo_id},get,GetSLO,Service Level Objectives,slos,get_slo,select,$.data,csv,,,,,,,data-object,,application/json,Get an SLO's details +service_management,v1,/api/v1/slo/{slo_id},put,UpdateSLO,Service Level Objectives,slos,update_slo,replace,,csv,,,,,,,data-array,application/json,application/json,Update an SLO +service_management,v1,/api/v1/slo/{slo_id}/corrections,get,GetSLOCorrections,Service Level Objectives,slo_corrections,get_slocorrections,select,$.data,csv,,,,,,,data-array,,application/json,Get Corrections For an SLO +service_management,v1,/api/v1/slo/{slo_id}/history,get,GetSLOHistory,Service Level Objectives,slo_history,get_slohistory,select,$.data,csv,,,,,,,data-object,,application/json,Get an SLO's history +software_delivery,v2,/api/v2/ci/github/accounts,get,ListCIAppGitHubAccounts,CI Visibility GitHub Accounts,ci_github_accounts,list_ciapp_git_hub_accounts,select,$.data,csv,,,,,,,data-array,,application/json,List GitHub CI Visibility status +software_delivery,v2,/api/v2/ci/github/accounts,patch,UpdateCIAppGitHubAccount,CI Visibility GitHub Accounts,ci_github_accounts,update_ciapp_git_hub_account,update,,csv,,,,,,,data-object,application/json,application/json,Update GitHub CI Visibility status +software_delivery,v2,/api/v2/ci/test-optimization/settings/policies,patch,UpdateFlakyTestsManagementPolicies,Test Optimization,ci_test_optimization_setting_policies,update_flaky_tests_management_policies,update,,csv,,,,,,,data-object,application/json,application/json,Update Flaky Tests Management policies +software_delivery,v2,/api/v2/ci/test-optimization/settings/policies,post,GetFlakyTestsManagementPolicies,Test Optimization,ci_test_optimization_setting_policies,get_flaky_tests_management_policies,insert,,csv,,,,,,,data-object,application/json,application/json,Get Flaky Tests Management policies +software_delivery,v2,/api/v2/ci/test-optimization/settings/service,delete,DeleteTestOptimizationServiceSettings,Test Optimization,ci_test_optimization_setting_services,delete_test_optimization_service_settings,delete,,csv,,,,,,,none,application/json,,Delete Test Optimization service settings +software_delivery,v2,/api/v2/ci/test-optimization/settings/service,patch,UpdateTestOptimizationServiceSettings,Test Optimization,ci_test_optimization_setting_services,update_test_optimization_service_settings,update,,csv,,,,,,,data-object,application/json,application/json,Update Test Optimization service settings +software_delivery,v2,/api/v2/ci/test-optimization/settings/service,post,GetTestOptimizationServiceSettings,Test Optimization,ci_test_optimization_setting_services,get_test_optimization_service_settings,insert,,csv,,,,,,,data-object,application/json,application/json,Get Test Optimization service settings +software_delivery,v2,/api/v2/code-coverage/branch/summary,post,GetCodeCoverageBranchSummary,Code Coverage,code_coverage_branch_summaries,get_code_coverage_branch_summary,exec,,csv,,,true,,,,data-object,application/json,application/json,Get code coverage summary for a branch +software_delivery,v2,/api/v2/code-coverage/commit/summary,post,GetCodeCoverageCommitSummary,Code Coverage,code_coverage_commit_summaries,get_code_coverage_commit_summary,exec,,csv,,,true,,,,data-object,application/json,application/json,Get code coverage summary for a commit +software_delivery,v2,/api/v2/deployment_gates,get,ListDeploymentGates,Deployment Gates,deployment_gates,list_deployment_gates,select,$.data,csv,,,true,,,,data-array,,application/json,Get all deployment gates +software_delivery,v2,/api/v2/deployment_gates,post,CreateDeploymentGate,Deployment Gates,deployment_gates,create_deployment_gate,insert,,csv,,,true,,,,data-object,application/json,application/json,Create deployment gate +software_delivery,v2,/api/v2/deployment_gates/{gate_id}/rules,get,GetDeploymentGateRules,Deployment Gates,deployment_gate_rules,get_deployment_gate_rules,select,$.data,csv,,,true,,,,data-object,,application/json,Get rules for a deployment gate +software_delivery,v2,/api/v2/deployment_gates/{gate_id}/rules,post,CreateDeploymentRule,Deployment Gates,deployment_gate_rules,create_deployment_rule,insert,,csv,,,true,,,,data-object,application/json,application/json,Create deployment rule +software_delivery,v2,/api/v2/deployment_gates/{gate_id}/rules/{id},delete,DeleteDeploymentRule,Deployment Gates,deployment_gate_rules,delete_deployment_rule,delete,,csv,,,true,,,,none,,,Delete deployment rule +software_delivery,v2,/api/v2/deployment_gates/{gate_id}/rules/{id},get,GetDeploymentRule,Deployment Gates,deployment_gate_rules,get_deployment_rule,select,$.data,csv,,,true,,,,data-object,,application/json,Get deployment rule +software_delivery,v2,/api/v2/deployment_gates/{gate_id}/rules/{id},put,UpdateDeploymentRule,Deployment Gates,deployment_gate_rules,update_deployment_rule,replace,,csv,,,true,,,,data-object,application/json,application/json,Update deployment rule +software_delivery,v2,/api/v2/deployment_gates/{id},delete,DeleteDeploymentGate,Deployment Gates,deployment_gates,delete_deployment_gate,delete,,csv,,,true,,,,none,,,Delete deployment gate +software_delivery,v2,/api/v2/deployment_gates/{id},get,GetDeploymentGate,Deployment Gates,deployment_gates,get_deployment_gate,select,$.data,csv,,,true,,,,data-object,,application/json,Get deployment gate +software_delivery,v2,/api/v2/deployment_gates/{id},put,UpdateDeploymentGate,Deployment Gates,deployment_gates,update_deployment_gate,replace,,csv,,,true,,,,data-object,application/json,application/json,Update deployment gate +software_delivery,v2,/api/v2/deployments/gates/evaluation,post,TriggerDeploymentGatesEvaluation,Deployment Gates,deployment_gate_evaluations,trigger_deployment_gates_evaluation,exec,,csv,,,true,,,,data-object,application/json,application/json,Trigger a deployment gate evaluation +software_delivery,v2,/api/v2/deployments/gates/evaluation/{id},get,GetDeploymentGatesEvaluationResult,Deployment Gates,deployment_gate_evaluations,get_deployment_gates_evaluation_result,select,$.data,csv,,,true,,,,data-object,,application/json,Get a deployment gate evaluation result +software_delivery,v2,/api/v2/dora/deployment/{deployment_id},delete,DeleteDORADeployment,DORA Metrics,dora_deployments,delete_doradeployment,delete,,csv,,,,,,,none,,,Delete a deployment event +software_delivery,v2,/api/v2/dora/deployments,patch,PatchDORADeploymentByVersion,DORA Metrics,dora_deployments,patch_doradeployment_by_version,update,,csv,,,true,,,,none,application/json,,Patch a deployment event by version +software_delivery,v2,/api/v2/dora/deployments/{deployment_id},patch,PatchDORADeployment,DORA Metrics,dora_deployments,patch_doradeployment,update,,csv,,,,,,,none,application/json,,Patch a deployment event +software_delivery,v2,/api/v2/dora/failure/{failure_id},delete,DeleteDORAFailure,DORA Metrics,dora_failures,delete_dorafailure,delete,,csv,,,,,,,none,,,Delete an incident event +software_delivery,v2,/api/v2/feature-flags,get,ListFeatureFlags,Feature Flags,feature_flags,list_feature_flags,select,$.data,csv,,,,,,,data-array,,application/json,List feature flags +software_delivery,v2,/api/v2/feature-flags,post,CreateFeatureFlag,Feature Flags,feature_flags,create_feature_flag,insert,,csv,,,,,,,data-object,application/json,application/json,Create a feature flag +software_delivery,v2,/api/v2/feature-flags/environments,get,ListFeatureFlagsEnvironments,Feature Flags,feature_flag_environments,list_feature_flags_environments,select,$.data,csv,,,,,,,data-array,,application/json,List environments +software_delivery,v2,/api/v2/feature-flags/environments,post,CreateFeatureFlagsEnvironment,Feature Flags,feature_flag_environments,create_feature_flags_environment,insert,,csv,,,,,,,data-object,application/json,application/json,Create an environment +software_delivery,v2,/api/v2/feature-flags/environments/{environment_id},delete,DeleteFeatureFlagsEnvironment,Feature Flags,feature_flag_environments,delete_feature_flags_environment,delete,,csv,,,,,,,none,,,Delete an environment +software_delivery,v2,/api/v2/feature-flags/environments/{environment_id},get,GetFeatureFlagsEnvironment,Feature Flags,feature_flag_environments,get_feature_flags_environment,select,$.data,csv,,,,,,,data-object,,application/json,Get an environment +software_delivery,v2,/api/v2/feature-flags/environments/{environment_id},put,UpdateFeatureFlagsEnvironment,Feature Flags,feature_flag_environments,update_feature_flags_environment,replace,,csv,,,,,,,data-object,application/json,application/json,Update an environment +software_delivery,v2,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/pause,post,PauseExposureSchedule,Feature Flags,feature_flag_exposure_schedules,pause_exposure_schedule,exec,,csv,,,,,,,data-object,,application/json,Pause a progressive rollout +software_delivery,v2,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/resume,post,ResumeExposureSchedule,Feature Flags,feature_flag_exposure_schedules,resume_exposure_schedule,exec,,csv,,,,,,,data-object,,application/json,Resume a progressive rollout +software_delivery,v2,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/start,post,StartExposureSchedule,Feature Flags,feature_flag_exposure_schedules,start_exposure_schedule,exec,,csv,,,,,,,data-object,,application/json,Start a progressive rollout +software_delivery,v2,/api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/stop,post,StopExposureSchedule,Feature Flags,feature_flag_exposure_schedules,stop_exposure_schedule,exec,,csv,,,,,,,data-object,,application/json,Stop a progressive rollout +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id},get,GetFeatureFlag,Feature Flags,feature_flags,get_feature_flag,select,$.data,csv,,,,,,,data-object,,application/json,Get a feature flag +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id},put,UpdateFeatureFlag,Feature Flags,feature_flags,update_feature_flag,replace,,csv,,,,,,,data-object,application/json,application/json,Update a feature flag +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/archive,post,ArchiveFeatureFlag,Feature Flags,feature_flags,archive_feature_flag,exec,,csv,,,,,,,data-object,,application/json,Archive a feature flag +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/allocations,post,CreateAllocationsForFeatureFlagInEnvironment,Feature Flags,feature_flag_environment_allocations,create_allocations_for_feature_flag_in_environment,insert,,csv,,,,,,,data-object,application/json,application/json,Create targeting rules for a flag env +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/allocations,put,UpdateAllocationsForFeatureFlagInEnvironment,Feature Flags,feature_flag_environment_allocations,update_allocations_for_feature_flag_in_environment,replace,,csv,,,,,,,data-array,application/json,application/json,Update targeting rules for a flag +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/disable,post,DisableFeatureFlagEnvironment,Feature Flags,feature_flag_environments,disable_feature_flag_environment,exec,,csv,,,,,,,none,,,Disable a feature flag in an environment +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/enable,post,EnableFeatureFlagEnvironment,Feature Flags,feature_flag_environments,enable_feature_flag_environment,exec,,csv,,,,,,,none,,,Enable a feature flag in an environment +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/unarchive,post,UnarchiveFeatureFlag,Feature Flags,feature_flags,unarchive_feature_flag,exec,,csv,,,,,,,data-object,,application/json,Unarchive a feature flag +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/variants,post,CreateVariantForFeatureFlag,Feature Flags,feature_flag_variants,create_variant_for_feature_flag,insert,,csv,,,,,,,object,application/json,application/json,Add a variant to a feature flag +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/variants/{variant_id},delete,DeleteVariantFromFeatureFlag,Feature Flags,feature_flag_variants,delete_variant_from_feature_flag,delete,,csv,,,,,,,none,,,Delete a variant +software_delivery,v2,/api/v2/feature-flags/{feature_flag_id}/variants/{variant_id},put,UpdateVariantForFeatureFlag,Feature Flags,feature_flag_variants,update_variant_for_feature_flag,replace,,csv,,,,,,,object,application/json,application/json,Update a variant +software_delivery,v2,/api/v2/test/flaky-test-management/tests,patch,UpdateFlakyTests,Test Optimization,flaky_tests,update_flaky_tests,update,,csv,,,,,,,data-object,application/json,application/json,Update flaky test states +software_delivery,v2,/api/v2/test/flaky-test-management/tests,post,SearchFlakyTests,Test Optimization,flaky_tests,search_flaky_tests,insert,,csv,,,,,,"{""cursorParam"":""body.data.attributes.page.cursor"",""cursorPath"":""meta.pagination.next_page"",""limitParam"":""body.data.attributes.page.limit"",""resultsPath"":""data""}",data-array,application/json,application/json,Search flaky tests +software_delivery,v2,/api/v2/workflows,get,ListWorkflows,Workflow Automation,workflows,list_workflows,select,$.data,csv,,,,,,"{""limitParam"":""limit"",""pageParam"":""page"",""pageStart"":0,""resultsPath"":""data""}",data-array,,application/json,List workflows diff --git a/provider-dev/config/provider_config.json b/provider-dev/config/provider_config.json new file mode 100644 index 0000000..eeb1e7d --- /dev/null +++ b/provider-dev/config/provider_config.json @@ -0,0 +1,15 @@ +{ + "auth": { + "type": "custom", + "location": "header", + "name": "DD-API-KEY", + "credentialsenvvar": "DD_API_KEY", + "successor": { + "type": "custom", + "location": "header", + "name": "DD-APPLICATION-KEY", + "credentialsenvvar": "DD_APP_KEY" + } + }, + "snake_case_aliases": true +} diff --git a/provider-dev/config/servers.json b/provider-dev/config/servers.json new file mode 100644 index 0000000..c07c203 --- /dev/null +++ b/provider-dev/config/servers.json @@ -0,0 +1,12 @@ +[ + { + "url": "https://api.{site:.+}", + "variables": { + "site": { + "default": "datadoghq.com", + "description": "The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set.", + "x-stackQL-envVar": "DD_SITE" + } + } + } +] diff --git a/provider-dev/config/service_names.json b/provider-dev/config/service_names.json new file mode 100644 index 0000000..ca86d8b --- /dev/null +++ b/provider-dev/config/service_names.json @@ -0,0 +1,202 @@ +{ + "_comment": "Service split for the merged Datadog v1 + v2 spec. `rules` are ordered regexes on the operation path (first match wins); otherwise the first path segment after /api/{v1,v2,unstable}/ is looked up in `segments`. An operation matching neither fails the split. `rootPrefixes` drives mechanical resource naming for NEW operations in provider-dev/scripts/map_operations.mjs: the resource name prefix used in place of the root path segment (empty string = no prefix); roots absent here default to their singular form, or no prefix when the root restates the service name.", + "rules": [ + { "pathRegex": "^/$", "service": "organization" }, + { "pathRegex": "^/v1/input$", "service": "logs" }, + { "pathRegex": "^/api/v1/tags/", "service": "infrastructure" }, + { "pathRegex": "^/api/v2/monitor/[^/]+/downtime_matches", "service": "monitoring" } + ], + "segments": { + "actions": "actions", + "actions-datastores": "actions", + "apm": "apm", + "scorecard": "apm", + "trace": "apm", + "pruned_trace": "apm", + "catalog": "catalog", + "apicatalog": "catalog", + "cost": "cloud_costs", + "cost_by_tag": "cloud_costs", + "tags": "cloud_costs", + "dashboard": "dashboards", + "dashboards": "dashboards", + "powerpacks": "dashboards", + "widgets": "dashboards", + "snapshot": "dashboards", + "graph": "dashboards", + "reporting": "dashboards", + "notebooks": "dashboards", + "annotation": "dashboards", + "stegadography": "dashboards", + "rum": "digital_experience", + "product-analytics": "digital_experience", + "prodlytics": "digital_experience", + "replay": "digital_experience", + "sourcemaps": "digital_experience", + "fleet": "fleet", + "host": "infrastructure", + "hosts": "infrastructure", + "processes": "infrastructure", + "containers": "infrastructure", + "container_images": "infrastructure", + "container": "infrastructure", + "ndm": "infrastructure", + "network": "infrastructure", + "network-health-insights": "infrastructure", + "spa": "infrastructure", + "app-builder": "infrastructure", + "app_builder": "infrastructure", + "cloudinventoryservice": "infrastructure", + "integration": "integrations", + "integrations": "integrations", + "integration-interfaces": "integrations", + "web-integrations": "integrations", + "cloud_auth": "integrations", + "idp": "integrations", + "reference-tables": "integrations", + "llm-obs": "llm_observability", + "model-lab-api": "llm_observability", + "logs": "logs", + "logs-queries": "logs", + "obs-pipelines": "logs", + "metrics": "metrics", + "search": "metrics", + "query": "metrics", + "series": "metrics", + "distribution_points": "metrics", + "spans": "metrics", + "datasets": "metrics", + "ddsql": "metrics", + "monitor": "monitoring", + "synthetics": "monitoring", + "downtime": "service_management", + "check_run": "monitoring", + "data-observability": "monitoring", + "org": "organization", + "orgs": "organization", + "global_orgs": "organization", + "org_configs": "organization", + "org_connections": "organization", + "org_authorized_clients": "organization", + "org_groups": "organization", + "org_group_memberships": "organization", + "org_group_policies": "organization", + "org_group_policy_configs": "organization", + "org_group_policy_overrides": "organization", + "org_group_policy_suggestions": "organization", + "user_invitations": "organization", + "service_accounts": "organization", + "api_keys": "organization", + "api_key": "organization", + "application_keys": "organization", + "application_key": "organization", + "personal_access_tokens": "organization", + "current_user": "organization", + "audit": "organization", + "authn_mappings": "organization", + "saml_configurations": "organization", + "identity_providers": "organization", + "login": "organization", + "team": "organization", + "team-hierarchy-links": "organization", + "users": "organization", + "user": "organization", + "anonymize_users": "organization", + "roles": "organization", + "permissions": "organization", + "domain_allowlist": "organization", + "ip_allowlist": "organization", + "restriction_policy": "organization", + "usage": "organization", + "daily_custom_reports": "organization", + "monthly_custom_reports": "organization", + "deletion": "organization", + "seats": "organization", + "hamr": "organization", + "governance": "organization", + "oauth2": "organization", + "user_authorized_clients": "organization", + "validate": "organization", + "validate_keys": "organization", + "remote_config": "remote_config", + "security": "security", + "security_monitoring": "security", + "security_analytics": "security", + "cloud_security_management": "security", + "compliance_findings": "security", + "posture_management": "security", + "csm": "security", + "agentless_scanning": "security", + "sensitive-data-scanner": "security", + "siem-historical-detections": "security", + "security-entities": "security", + "static-analysis": "security", + "static-analysis-sca": "security", + "incidents": "service_management", + "services": "service_management", + "teams": "service_management", + "slo": "service_management", + "cases": "service_management", + "maintenance_windows": "service_management", + "events": "service_management", + "on-call": "service_management", + "error-tracking": "service_management", + "change-management": "service_management", + "statuspages": "service_management", + "forms": "service_management", + "bits-ai": "service_management", + "ci": "software_delivery", + "test": "software_delivery", + "code-coverage": "software_delivery", + "dora": "software_delivery", + "workflows": "software_delivery", + "deployment_gates": "software_delivery", + "deployments": "software_delivery", + "feature-flags": "software_delivery" + }, + "rootPrefixes": { + "security_monitoring": "monitoring", + "security_analytics": "monitoring", + "security": "", + "cloud_security_management": "csm", + "posture_management": "posture_management", + "integration": "", + "integrations": "", + "integration-interfaces": "", + "web-integrations": "web_integration", + "remote_config": "", + "monitor": "monitor", + "synthetics": "synthetics", + "reporting": "report", + "oauth2": "oauth2", + "org": "org", + "team": "team", + "cost": "", + "cost_by_tag": "", + "rum": "rum", + "llm-obs": "", + "model-lab-api": "model_lab", + "obs-pipelines": "", + "app-builder": "app_builder", + "product-analytics": "product_analytics", + "on-call": "on_call", + "error-tracking": "error_tracking", + "change-management": "change", + "static-analysis": "static_analysis", + "static-analysis-sca": "sca", + "siem-historical-detections": "historical_detection", + "sensitive-data-scanner": "sensitive_data_scanner", + "security-entities": "security_entity", + "feature-flags": "feature_flag", + "reference-tables": "reference", + "data-observability": "data_observability", + "network-health-insights": "network_health", + "deployment_gates": "deployment_gate", + "check_run": "service_check", + "distribution_points": "distribution_point", + "usage": "usage", + "current_user": "current_user", + "validate": "key", + "validate_keys": "key" + } +} diff --git a/provider-dev/config/spec_pin.json b/provider-dev/config/spec_pin.json new file mode 100644 index 0000000..a0fc1c1 --- /dev/null +++ b/provider-dev/config/spec_pin.json @@ -0,0 +1,20 @@ +{ + "source": "https://raw.githubusercontent.com/DataDog/datadog-api-client-typescript/master/.generator/schemas", + "fetched": "2026-08-26", + "specs": { + "v1": { + "file": "v1-openapi.yaml", + "sha256": "e8e3972a2d77b1395e28f7044e830f526258a4bc5e07d9401c2c07b2bcccabb4", + "paths": 150, + "operations": 235, + "openapi": "3.0.0" + }, + "v2": { + "file": "v2-openapi.yaml", + "sha256": "b99670a872842592344c659e05decbd12ef550af24d5910a41d253fc2cfc09e0", + "paths": 976, + "operations": 1544, + "openapi": "3.0.0" + } + } +} diff --git a/provider-dev/docgen/provider-data/headerContent1.txt b/provider-dev/docgen/provider-data/headerContent1.txt index 7c26b71..0adfc18 100644 --- a/provider-dev/docgen/provider-data/headerContent1.txt +++ b/provider-dev/docgen/provider-data/headerContent1.txt @@ -10,7 +10,7 @@ keywords: - cloud inventory description: Query, monitor, and manage Datadog resources using SQL custom_edit_url: null -image: /img/providers/datadog/stackql-datadog-provider-featured-image.png +image: /img/stackql-datadog-provider-featured-image.png id: 'provider-intro' --- diff --git a/provider-dev/docgen/provider-data/headerContent2.txt b/provider-dev/docgen/provider-data/headerContent2.txt index 91c2cfa..3da5fb2 100644 --- a/provider-dev/docgen/provider-data/headerContent2.txt +++ b/provider-dev/docgen/provider-data/headerContent2.txt @@ -1,43 +1,233 @@ -See also: -[[` SHOW `]](https://stackql.io/docs/language-spec/show) [[` DESCRIBE `]](https://stackql.io/docs/language-spec/describe) [[` REGISTRY `]](https://stackql.io/docs/language-spec/registry) -* * * - -## Installation - -To pull the latest version of the `datadog` provider, run the following command: - -```bash -REGISTRY PULL datadog; -``` -> To view previous provider versions or to pull a specific provider version, see [here](https://stackql.io/docs/language-spec/registry). - -## Authentication - -The following system environment variables are used for authentication by default: - -- - Datadog API key (see Datadog API Key Documentation) -- - Datadog Application Key (see Datadog Application Key Documentation) - -These variables are sourced at runtime (from the local machine or as CI variables/secrets). - -
- -Using different environment variables - -To use different environment variables (instead of the defaults), use the `--auth` flag of the `stackql` program. For example: - -```bash - -AUTH='{ "datadog": { "type": "custom", "location": "header", "name": "DD-API-KEY", "credentialsenvvar": "YOUR_DD_API_KEY_VAR", "successor": { "type": "custom", "location": "header", "name": "DD-APPLICATION-KEY", "credentialsenvvar": "YOUR_DD_APP_KEY_VAR" }}}' -stackql shell --auth="${AUTH}" - -``` -or using PowerShell: - -```powershell - -$Auth = "{ 'datadog': { 'type': 'custom', 'location': 'header', 'name': 'DD-API-KEY', 'credentialsenvvar': 'YOUR_DD_API_KEY_VAR', 'successor': { 'type': 'custom', 'location': 'header', 'name': 'DD-APPLICATION-KEY', 'credentialsenvvar': 'YOUR_DD_APP_KEY_VAR' }}}" -stackql.exe shell --auth=$Auth - -``` -
\ No newline at end of file +See also: +[[` SHOW `]](https://stackql.io/docs/language-spec/show) [[` DESCRIBE `]](https://stackql.io/docs/language-spec/describe) [[` REGISTRY `]](https://stackql.io/docs/language-spec/registry) +* * * + +## Installation + +To pull the latest version of the `datadog` provider, run the following command: + +```bash +REGISTRY PULL datadog; +``` +> To view previous provider versions or to pull a specific provider version, see [here](https://stackql.io/docs/language-spec/registry). + +## Authentication + +The following system environment variables are used for authentication by default (the same variables the Datadog Terraform provider and the official API clients read): + +- - Datadog API key, sent as the DD-API-KEY header (see API keys) +- - Datadog application key, sent as the DD-APPLICATION-KEY header (see application keys) + +These variables are sourced at runtime (from the local machine or as CI variables/secrets). The application key's scopes determine which resources are readable and writable. + +
+ +Using different environment variables + +To use different environment variables (instead of the defaults), use the `--auth` flag of the `stackql` program. For example: + +```bash + +AUTH='{ "datadog": { "type": "custom", "location": "header", "name": "DD-API-KEY", "credentialsenvvar": "YOUR_DD_API_KEY_VAR", "successor": { "type": "custom", "location": "header", "name": "DD-APPLICATION-KEY", "credentialsenvvar": "YOUR_DD_APP_KEY_VAR" }}}' +stackql shell --auth="${AUTH}" + +``` +or using PowerShell: + +```powershell + +$Auth = "{ 'datadog': { 'type': 'custom', 'location': 'header', 'name': 'DD-API-KEY', 'credentialsenvvar': 'YOUR_DD_API_KEY_VAR', 'successor': { 'type': 'custom', 'location': 'header', 'name': 'DD-APPLICATION-KEY', 'credentialsenvvar': 'YOUR_DD_APP_KEY_VAR' }}}" +stackql.exe shell --auth=$Auth + +``` +
+ +## Datadog site (region) + +Every request goes to `https://api.{site}`. The `site` server variable defaults to `datadoghq.com` (US1) and is resolved from the environment variable when it is set - the same convention as the Datadog Agent and API clients: + +```bash +export DD_SITE=datadoghq.eu # EU1; also us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, ddog-gov.com +``` + +A `WHERE site = '...'` predicate on any query overrides the environment for that statement, so one session can address organizations on different sites. Queries never need a `site` predicate otherwise; the parameter is omitted from the examples in this documentation for that reason. + +## Provider scope + +The provider merges the Datadog v1 and v2 REST APIs into 18 services (`monitoring`, `dashboards`, `organization`, `logs`, `metrics`, `security`, `service_management`, `integrations`, ...). Resources from the v2 API return the JSON:API row shape - `id`, `type`, `attributes` and `relationships` columns - so attributes are addressed with `json_extract`; v1 resources (monitors, dashboards, hosts, SLOs, synthetics, log indexes and pipelines) return flat columns. Column and parameter names are snake_case; the handful of camelCase wire names are aliased. + +List operations with cursor pagination (`page[cursor]`) are traversed automatically; a SQL `LIMIT` is pushed to the API's page size parameter. Query parameters such as `filter[query]`, `filter[from]` or `tags` are used directly as `WHERE` predicates. + +## Monitors + +Every monitor with its state - the first query most teams run: + +```sql +SELECT id, name, type, overall_state, tags +FROM datadog.monitoring.monitors; +``` + +Only alerting monitors, using the API's own filter: + +```sql +SELECT id, name, overall_state +FROM datadog.monitoring.monitors +WHERE group_states = 'alert'; +``` + +Search monitors with the monitor search syntax: + +```sql +SELECT id, name, status, type +FROM datadog.monitoring.monitor_search_results +WHERE query = 'type:metric status:alert'; +``` + +## Users, roles and keys + +User audit with status and login method: + +```sql +SELECT + id, + json_extract(attributes, '$.email') AS email, + json_extract(attributes, '$.status') AS status, + json_extract(attributes, '$.disabled') AS disabled, + json_extract(attributes, '$.created_at') AS created_at +FROM datadog.organization.users; +``` + +Roles, and the users assigned to a role: + +```sql +SELECT id, json_extract(attributes, '$.name') AS name, json_extract(attributes, '$.user_count') AS user_count +FROM datadog.organization.roles; + +SELECT id, json_extract(attributes, '$.email') AS email +FROM datadog.organization.role_users +WHERE role_id = 'a633c0c8-91b4-11f0-a729-da7ad0900010'; +``` + +API keys by age - rotate the old ones: + +```sql +SELECT + id, + json_extract(attributes, '$.name') AS name, + json_extract(attributes, '$.created_at') AS created_at, + json_extract(attributes, '$.last4') AS last4 +FROM datadog.organization.api_keys +ORDER BY created_at; +``` + +## Dashboards and SLOs + +```sql +SELECT id, title, layout_type, author_handle, modified_at +FROM datadog.dashboards.dashboards; + +SELECT id, name, type, json_extract(thresholds, '$[0].target') AS target +FROM datadog.service_management.slos; +``` + +## Infrastructure + +Hosts reporting to Datadog, with their apps and mute state: + +```sql +SELECT host_name, up, is_muted, apps, last_reported_time +FROM datadog.infrastructure.hosts; + +SELECT total_up, total_active +FROM datadog.infrastructure.host_totals; +``` + +Active metrics reported in the last hour (`from` is a required Unix timestamp): + +```sql +SELECT metrics +FROM datadog.metrics.active_metrics +WHERE "from" = strftime('%s', 'now') - 3600; +``` + +## Logs, audit and usage + +Log indexes and their retention: + +```sql +SELECT name, num_retention_days, daily_limit +FROM datadog.logs.indexes; +``` + +Audit events for the last day - cursor-paginated, the time window pushed down as `filter[from]`: + +```sql +SELECT + id, + json_extract(attributes, '$.timestamp') AS timestamp, + json_extract(attributes, '$.attributes.action') AS action, + json_extract(attributes, '$.attributes.evt.name') AS event +FROM datadog.organization.audit_logs +WHERE "filter[from]" = 'now-1d'; +``` + +Usage summary for a month: + +```sql +SELECT date, infra_host_top99p, apm_host_top99p, logs_ingested_bytes_sum +FROM datadog.organization.usage_summary +WHERE start_month = '2026-08'; +``` + +## Provision, mutate and tear down + +Mutations use the same SQL grammar. A v1 resource (monitor) takes its fields as columns; a v2 resource (role, API key, downtime) takes the JSON:API `data` document. A monitor end to end: + +```sql +-- create +INSERT INTO datadog.monitoring.monitors (name, type, query, message, tags) +SELECT 'High CPU on web hosts', + 'metric alert', + 'avg(last_5m):avg:system.cpu.user{env:prod} by {host} > 90', + 'CPU above 90% on {{host.name}} @slack-ops', + '["team:web", "managed-by:stackql"]'; + +-- validate a definition without creating it +EXEC datadog.monitoring.monitors.validate_monitor + @type = 'metric alert', + @query = 'avg(last_5m):avg:system.cpu.user{env:prod} > 90', + @name = 'High CPU on web hosts'; + +-- replace the definition (the v1 monitor API updates with PUT) +REPLACE datadog.monitoring.monitors +SET name = 'High CPU on web hosts', type = 'metric alert', + query = 'avg(last_5m):avg:system.cpu.user{env:prod} by {host} > 95' +WHERE monitor_id = 12345678; + +-- remove it +DELETE FROM datadog.monitoring.monitors +WHERE monitor_id = 12345678; +``` + +A role (v2) end to end: + +```sql +INSERT INTO datadog.organization.roles (data) +SELECT '{"type": "roles", "attributes": {"name": "read-only-auditors"}}'; + +UPDATE datadog.organization.roles +SET data = '{"id": "", "type": "roles", "attributes": {"name": "auditors"}}' +WHERE role_id = ''; + +DELETE FROM datadog.organization.roles +WHERE role_id = ''; +``` + +Schedule a downtime for a scope: + +```sql +INSERT INTO datadog.service_management.downtimes (data) +SELECT '{"type": "downtime", "attributes": {"message": "release window", "scope": "env:prod", + "monitor_identifier": {"monitor_tags": ["team:web"]}, + "schedule": {"start": "2026-09-01T22:00:00Z", "end": "2026-09-01T23:00:00Z"}}}'; +``` diff --git a/provider-dev/downloaded/openapi.yaml b/provider-dev/downloaded/openapi.yaml deleted file mode 100644 index 5c56fcb..0000000 --- a/provider-dev/downloaded/openapi.yaml +++ /dev/null @@ -1,73326 +0,0 @@ -components: - callbacks: {} - examples: {} - headers: {} - links: {} - parameters: - APIKeyCategoryParameter: - description: Filter API keys by category. - in: query - name: filter[category] - required: false - schema: - type: string - APIKeyFilterCreatedAtEndParameter: - description: Only include API keys created on or before the specified date. - in: query - name: filter[created_at][end] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterCreatedAtStartParameter: - description: Only include API keys created on or after the specified date. - in: query - name: filter[created_at][start] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterModifiedAtEndParameter: - description: Only include API keys modified on or before the specified date. - in: query - name: filter[modified_at][end] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterModifiedAtStartParameter: - description: Only include API keys modified on or after the specified date. - in: query - name: filter[modified_at][start] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterParameter: - description: Filter API keys by the specified string. - in: query - name: filter - required: false - schema: - type: string - APIKeyId: - description: The ID of the API key. - in: path - name: api_key_id - required: true - schema: - type: string - APIKeyIncludeParameter: - description: Comma separated list of resource paths for related resources to - include in the response. Supported resource paths are `created_by` and `modified_by`. - in: query - name: include - required: false - schema: - example: created_by,modified_by - type: string - APIKeyReadConfigReadEnabledParameter: - description: Filter API keys by remote config read enabled status. - in: query - name: filter[remote_config_read_enabled] - required: false - schema: - type: boolean - APIKeysSortParameter: - description: 'API key attribute used to sort results. Sort order is ascending - - by default. In order to specify a descending sort, prefix the - - attribute with a minus sign.' - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/APIKeysSort' - AWSAccountConfigIDPathParameter: - description: 'Unique Datadog ID of the AWS Account Integration Config. To get - the config ID for an account, use the - - [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) - endpoint and query by AWS Account ID.' - in: path - name: aws_account_config_id - required: true - schema: - type: string - ApplicationKeyFilterCreatedAtEndParameter: - description: Only include application keys created on or before the specified - date. - in: query - name: filter[created_at][end] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - ApplicationKeyFilterCreatedAtStartParameter: - description: Only include application keys created on or after the specified - date. - in: query - name: filter[created_at][start] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - ApplicationKeyFilterParameter: - description: Filter application keys by the specified string. - in: query - name: filter - required: false - schema: - type: string - ApplicationKeyID: - description: The ID of the application key. - in: path - name: app_key_id - required: true - schema: - type: string - ApplicationKeyId: - description: The ID of the app key - in: path - name: app_key_id - required: true - schema: - type: string - ApplicationKeyIncludeParameter: - description: Resource path for related resources to include in the response. - Only `owned_by` is supported. - in: query - name: include - required: false - schema: - example: owned_by - type: string - ApplicationKeysSortParameter: - description: 'Application key attribute used to sort results. Sort order is - ascending - - by default. In order to specify a descending sort, prefix the - - attribute with a minus sign.' - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/ApplicationKeysSort' - ApplicationSecurityWafCustomRuleIDParam: - description: The ID of the custom rule. - example: 3b5-v82-ns6 - in: path - name: custom_rule_id - required: true - schema: - type: string - ApplicationSecurityWafExclusionFilterID: - description: The identifier of the WAF exclusion filter. - example: 3b5-v82-ns6 - in: path - name: exclusion_filter_id - required: true - schema: - type: string - ArchiveID: - description: The ID of the archive. - in: path - name: archive_id - required: true - schema: - type: string - AuthNMappingID: - description: The UUID of the AuthN Mapping. - in: path - name: authn_mapping_id - required: true - schema: - type: string - AwsAccountId: - description: The ID of an AWS account. - example: '123456789012' - in: path - name: account_id - required: true - schema: - type: string - BudgetID: - description: Budget id. - in: path - name: budget_id - required: true - schema: - type: string - CaseIDPathParameter: - description: Case's UUID or key - example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 - in: path - name: case_id - required: true - schema: - type: string - CaseSortableFieldParameter: - description: Specify which field to sort - in: query - name: sort[field] - required: false - schema: - $ref: '#/components/schemas/CaseSortableField' - CloudAccountID: - description: Cloud Account id. - in: path - name: cloud_account_id - required: true - schema: - format: int64 - type: integer - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3b5-v82-ns6 - in: path - name: agent_rule_id - required: true - schema: - type: string - CloudWorkloadSecurityPathAgentPolicyID: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - in: path - name: policy_id - required: true - schema: - type: string - CloudWorkloadSecurityQueryAgentPolicyID: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - in: query - name: policy_id - required: false - schema: - type: string - ConfluentAccountID: - description: Confluent Account ID. - in: path - name: account_id - required: true - schema: - type: string - ConfluentResourceID: - description: Confluent Account Resource ID. - in: path - name: resource_id - required: true - schema: - type: string - ConnectionId: - description: The ID of the action connection - in: path - name: connection_id - required: true - schema: - type: string - CustomDestinationId: - description: The ID of the custom destination. - in: path - name: custom_destination_id - required: true - schema: - type: string - CustomFrameworkHandle: - description: The framework handle - in: path - name: handle - required: true - schema: - type: string - CustomFrameworkVersion: - description: The framework version - in: path - name: version - required: true - schema: - type: string - DatasetID: - description: The ID of a defined dataset. - example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1 - in: path - name: dataset_id - required: true - schema: - type: string - EntityID: - description: UUID or Entity Ref. - in: path - name: entity_id - required: true - schema: - example: service:myservice - type: string - FastlyAccountID: - description: Fastly Account id. - in: path - name: account_id - required: true - schema: - type: string - FastlyServiceID: - description: Fastly Service ID. - in: path - name: service_id - required: true - schema: - type: string - FileID: - description: File ID. - in: path - name: file_id - required: true - schema: - type: string - FilterByExcludeSnapshot: - description: Filter entities by excluding snapshotted entities. - in: query - name: filter[exclude_snapshot] - required: false - schema: - type: string - FilterByID: - description: Filter entities by UUID. - explode: true - in: query - name: filter[id] - required: false - schema: - type: string - FilterByKind: - description: Filter entities by kind. - explode: true - in: query - name: filter[kind] - required: false - schema: - type: string - FilterByName: - description: Filter entities by name. - explode: true - in: query - name: filter[name] - required: false - schema: - type: string - FilterByOwner: - description: Filter entities by owner. - explode: true - in: query - name: filter[owner] - required: false - schema: - type: string - FilterByRef: - description: Filter entities by reference - example: service:shopping-cart - explode: true - in: query - name: filter[ref] - required: false - schema: - type: string - FilterByRelationType: - description: Filter entities by relation type. - explode: true - in: query - name: filter[relation][type] - required: false - schema: - $ref: '#/components/schemas/RelationType' - FilterRelationByFromRef: - description: Filter relations by the reference of the first entity in the relation. - example: service:shopping-cart - explode: true - in: query - name: filter[from_ref] - required: false - schema: - type: string - FilterRelationByToRef: - description: Filter relations by the reference of the second entity in the relation. - example: service:shopping-cart - explode: true - in: query - name: filter[to_ref] - required: false - schema: - type: string - FilterRelationByType: - description: Filter relations by type. - explode: true - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/RelationType' - GCPSTSServiceAccountID: - description: Your GCP STS enabled service account's unique ID. - in: path - name: account_id - required: true - schema: - type: string - GetIssueIncludeQueryParameter: - description: Comma-separated list of relationship objects that should be included - in the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/GetIssueIncludeQueryParameterItem' - type: array - HistoricalJobID: - description: The ID of the job. - in: path - name: job_id - required: true - schema: - type: string - HistoricalSignalID: - description: The ID of the historical signal. - in: path - name: histsignal_id - required: true - schema: - type: string - IncidentAttachmentFilterQueryParameter: - description: Specifies which types of attachments are included in the response. - explode: false - in: query - name: filter[attachment_type] - required: false - schema: - items: - $ref: '#/components/schemas/IncidentAttachmentAttachmentType' - type: array - IncidentAttachmentIncludeQueryParameter: - description: Specifies which types of related objects are included in the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/IncidentAttachmentRelatedObject' - type: array - IncidentIDPathParameter: - description: The UUID of the incident. - in: path - name: incident_id - required: true - schema: - type: string - IncidentIncludeQueryParameter: - description: Specifies which types of related objects should be included in - the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/IncidentRelatedObject' - type: array - IncidentIntegrationMetadataIDPathParameter: - description: The UUID of the incident integration metadata. - in: path - name: integration_metadata_id - required: true - schema: - type: string - IncidentNotificationRuleIDPathParameter: - description: The ID of the notification rule. - in: path - name: id - required: true - schema: - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - IncidentNotificationRuleIncludeQueryParameter: - description: 'Comma-separated list of resources to include. Supported values: - `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template` - - ' - explode: false - in: query - name: include - required: false - schema: - example: created_by_user,incident_type,notification_template - type: string - IncidentNotificationTemplateIDPathParameter: - description: The ID of the notification template. - in: path - name: id - required: true - schema: - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - IncidentNotificationTemplateIncidentTypeFilterQueryParameter: - description: Optional incident type ID filter. - explode: false - in: query - name: filter[incident-type] - required: false - schema: - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - IncidentNotificationTemplateIncludeQueryParameter: - description: 'Comma-separated list of relationships to include. Supported values: - `created_by_user`, `last_modified_by_user`, `incident_type` - - ' - explode: false - in: query - name: include - required: false - schema: - example: created_by_user,incident_type - type: string - IncidentSearchIncludeQueryParameter: - description: Specifies which types of related objects should be included in - the response. - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentSearchQueryQueryParameter: - description: 'Specifies which incidents should be returned. The query can contain - any number of incident facets - - joined by `ANDs`, along with multiple values for each of those facets joined - by `OR`s. For - - example: `state:active AND severity:(SEV-2 OR SEV-1)`.' - explode: false - in: query - name: query - required: true - schema: - type: string - IncidentSearchSortQueryParameter: - description: Specifies the order of returned incidents. - explode: false - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/IncidentSearchSortOrder' - IncidentServiceIDPathParameter: - description: The ID of the incident service. - in: path - name: service_id - required: true - schema: - type: string - IncidentServiceIncludeQueryParameter: - description: Specifies which types of related objects should be included in - the response. - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentServiceSearchQueryParameter: - description: A search query that filters services by name. - in: query - name: filter - required: false - schema: - example: ExampleServiceName - type: string - IncidentTeamIDPathParameter: - description: The ID of the incident team. - in: path - name: team_id - required: true - schema: - type: string - IncidentTeamIncludeQueryParameter: - description: Specifies which types of related objects should be included in - the response. - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentTeamSearchQueryParameter: - description: A search query that filters teams by name. - in: query - name: filter - required: false - schema: - example: ExampleTeamName - type: string - IncidentTodoIDPathParameter: - description: The UUID of the incident todo. - in: path - name: todo_id - required: true - schema: - type: string - IncidentTypeIDPathParameter: - description: The UUID of the incident type. - in: path - name: incident_type_id - required: true - schema: - type: string - IncidentTypeIncludeDeletedParameter: - description: Include deleted incident types in the response. - in: query - name: include_deleted - schema: - default: false - type: boolean - Include: - description: Include relationship data. - explode: true - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncludeType' - InstanceId: - description: The ID of the workflow instance. - in: path - name: instance_id - required: true - schema: - type: string - IssueIDPathParameter: - description: The identifier of the issue. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - in: path - name: issue_id - required: true - schema: - type: string - KindID: - description: Entity kind. - in: path - name: kind_id - required: true - schema: - example: my-job - type: string - MetricID: - description: The name of the log-based metric. - in: path - name: metric_id - required: true - schema: - type: string - MetricName: - description: The name of the metric. - example: dist.http.endpoint.request - in: path - name: metric_name - required: true - schema: - type: string - MicrosoftTeamsChannelNamePathParameter: - description: Your channel name. - in: path - name: channel_name - required: true - schema: - type: string - MicrosoftTeamsHandleNameQueryParameter: - description: Your tenant-based handle name. - in: query - name: name - required: false - schema: - type: string - MicrosoftTeamsTeamNamePathParameter: - description: Your team name. - in: path - name: team_name - required: true - schema: - type: string - MicrosoftTeamsTenantBasedHandleIDPathParameter: - description: Your tenant-based handle id. - in: path - name: handle_id - required: true - schema: - type: string - MicrosoftTeamsTenantIDQueryParameter: - description: Your tenant id. - in: query - name: tenant_id - required: false - schema: - type: string - MicrosoftTeamsTenantNamePathParameter: - description: Your tenant name. - in: path - name: tenant_name - required: true - schema: - type: string - MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter: - description: Your Workflows webhook handle id. - in: path - name: handle_id - required: true - schema: - type: string - MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter: - description: Your Workflows webhook handle name. - in: query - name: name - required: false - schema: - type: string - OnDemandTaskId: - description: The UUID of the task. - example: 6d09294c-9ad9-42fd-a759-a0c1599b4828 - in: path - name: task_id - required: true - schema: - type: string - OpsgenieServiceIDPathParameter: - description: The UUID of the service. - in: path - name: integration_service_id - required: true - schema: - type: string - OrgConfigName: - description: The name of an Org Config. - in: path - name: org_config_name - required: true - schema: - example: monitor_timezone - type: string - OrgConnectionId: - description: The unique identifier of the org connection. - in: path - name: connection_id - required: true - schema: - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - PageOffset: - description: Specific offset to use as the beginning of the returned page. - in: query - name: page[offset] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - ProductName: - description: Name of the product to be deleted, either `logs` or `rum`. - in: path - name: product - required: true - schema: - type: string - ProjectIDPathParameter: - description: Project UUID - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 - in: path - name: project_id - required: true - schema: - type: string - QueryFilterFrom: - description: The minimum timestamp for requested security signals. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - QueryFilterSearch: - description: The search query for security signals. - example: security:attack status:high - in: query - name: filter[query] - required: false - schema: - type: string - QueryFilterTo: - description: The maximum timestamp for requested security signals. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - QueryPageCursor: - description: A list of results using the cursor provided in the previous query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - QueryPageLimit: - description: The maximum number of security signals in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - QuerySort: - description: The order of the security signals in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsSort' - RelationInclude: - description: Include relationship data. - explode: true - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/RelationIncludeType' - ReportID: - description: The ID of the report job. - in: path - name: report_id - required: true - schema: - type: string - RequestId: - description: ID of the deletion request. - in: path - name: id - required: true - schema: - type: string - ResourceFilterAccountID: - description: Filter resource filters by cloud provider account ID. This parameter - is only valid when provider is specified. - in: query - name: account_id - required: false - schema: - type: string - ResourceFilterProvider: - description: Filter resource filters by cloud provider (e.g. aws, gcp, azure). - in: query - name: cloud_provider - required: false - schema: - type: string - ResourceID: - description: 'Identifier, formatted as `type:id`. Supported types: `dashboard`, - `integration-service`, `integration-webhook`, `notebook`, `reference-table`, - `security-rule`, `slo`, `workflow`, `app-builder-app`, `connection`, `connection-group`, - `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, - `on-call-escalation-policy`, `on-call-team-routing-rules.' - example: dashboard:abc-def-ghi - in: path - name: resource_id - required: true - schema: - type: string - RetentionFilterIdParam: - description: The ID of the retention filter. - in: path - name: filter_id - required: true - schema: - type: string - RoleID: - description: The unique identifier of the role. - in: path - name: role_id - required: true - schema: - type: string - RuleId: - description: The ID of the rule. - in: path - name: rule_id - required: true - schema: - type: string - RumApplicationIDParameter: - description: RUM application ID. - in: path - name: app_id - required: true - schema: - type: string - RumMetricIDParameter: - description: The name of the rum-based metric. - in: path - name: metric_id - required: true - schema: - type: string - RumRetentionFilterIDParameter: - description: Retention filter ID. - in: path - name: rf_id - required: true - schema: - type: string - SchemaVersion: - description: The schema version desired in the response. - in: query - name: schema_version - required: false - schema: - $ref: '#/components/schemas/ServiceDefinitionSchemaVersions' - SearchIssuesIncludeQueryParameter: - description: Comma-separated list of relationship objects that should be included - in the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/SearchIssuesIncludeQueryParameterItem' - type: array - SecurityFilterID: - description: The ID of the security filter. - in: path - name: security_filter_id - required: true - schema: - type: string - SecurityMonitoringRuleID: - description: The ID of the rule. - in: path - name: rule_id - required: true - schema: - type: string - SecurityMonitoringSuppressionID: - description: The ID of the suppression rule - in: path - name: suppression_id - required: true - schema: - type: string - SensitiveDataScannerGroupID: - description: The ID of a group of rules. - in: path - name: group_id - required: true - schema: - type: string - SensitiveDataScannerRuleID: - description: The ID of the rule. - in: path - name: rule_id - required: true - schema: - type: string - ServiceAccountID: - description: The ID of the service account. - in: path - name: service_account_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - ServiceName: - description: The name of the service. - in: path - name: service_name - required: true - schema: - example: my-service - type: string - SignalID: - description: The ID of the signal. - in: path - name: signal_id - required: true - schema: - type: string - SkipCache: - description: Skip cache for resource filters. - in: query - name: skip_cache - required: false - schema: - type: boolean - SpansMetricIDParameter: - description: The name of the span-based metric. - in: path - name: metric_id - required: true - schema: - type: string - UserID: - description: The ID of the user. - in: path - name: user_id - required: true - schema: - example: 00000000-0000-9999-0000-000000000000 - type: string - WorkflowId: - description: The ID of the workflow. - in: path - name: workflow_id - required: true - schema: - type: string - requestBodies: {} - responses: - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ConcurrentModificationResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Concurrent Modification - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - FindingsBadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Bad Request: The server cannot process the request due to invalid - syntax in the request.' - FindingsForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - FindingsNotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not Found: The requested finding cannot be found.' - FindingsTooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Too many requests: The rate limit set by the API has been exceeded.' - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - NotificationRulesList: - content: - application/json: - schema: - properties: - data: - items: - $ref: '#/components/schemas/NotificationRule' - type: array - type: object - description: The list of notification rules. - PreconditionFailedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Failed Precondition - SpansBadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request. - SpansForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied.' - SpansTooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Too many requests: The rate limit set by the API has been exceeded.' - SpansUnprocessableEntityResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Unprocessable Entity. - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - UnauthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unauthorized - UnprocessableEntityResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: The server cannot process the request because it contains invalid - data. - schemas: - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - APIKeyCreateAttributes: - description: Attributes used to create an API Key. - properties: - category: - description: The APIKeyCreateAttributes category. - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The APIKeyCreateAttributes remote_config_read_enabled. - type: boolean - required: - - name - type: object - APIKeyCreateData: - description: Object used to create an API key. - properties: - attributes: - $ref: '#/components/schemas/APIKeyCreateAttributes' - type: - $ref: '#/components/schemas/APIKeysType' - required: - - attributes - - type - type: object - APIKeyCreateRequest: - description: Request used to create an API key. - properties: - data: - $ref: '#/components/schemas/APIKeyCreateData' - required: - - data - type: object - APIKeyRelationships: - description: Resources related to the API key. - properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - modified_by: - $ref: '#/components/schemas/NullableRelationshipToUser' - type: object - APIKeyResponse: - description: Response for retrieving an API key. - properties: - data: - $ref: '#/components/schemas/FullAPIKey' - included: - description: Array of objects related to the API key. - items: - $ref: '#/components/schemas/APIKeyResponseIncludedItem' - type: array - type: object - APIKeyResponseIncludedItem: - description: An object related to an API key. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/LeakedKey' - APIKeyUpdateAttributes: - description: Attributes used to update an API Key. - properties: - category: - description: The APIKeyUpdateAttributes category. - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The APIKeyUpdateAttributes remote_config_read_enabled. - type: boolean - required: - - name - type: object - APIKeyUpdateData: - description: Object used to update an API key. - properties: - attributes: - $ref: '#/components/schemas/APIKeyUpdateAttributes' - id: - description: ID of the API key. - example: 00112233-4455-6677-8899-aabbccddeeff - type: string - type: - $ref: '#/components/schemas/APIKeysType' - required: - - attributes - - id - - type - type: object - APIKeyUpdateRequest: - description: Request used to update an API key. - properties: - data: - $ref: '#/components/schemas/APIKeyUpdateData' - required: - - data - type: object - APIKeysResponse: - description: Response for a list of API keys. - properties: - data: - description: Array of API keys. - items: - $ref: '#/components/schemas/PartialAPIKey' - type: array - included: - description: Array of objects related to the API key. - items: - $ref: '#/components/schemas/APIKeyResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/APIKeysResponseMeta' - type: object - APIKeysResponseMeta: - description: Additional information related to api keys response. - properties: - max_allowed: - description: Max allowed number of API keys. - format: int64 - type: integer - page: - $ref: '#/components/schemas/APIKeysResponseMetaPage' - type: object - APIKeysResponseMetaPage: - description: Additional information related to the API keys response. - properties: - total_filtered_count: - description: Total filtered application key count. - format: int64 - type: integer - type: object - APIKeysSort: - default: name - description: Sorting options - enum: - - created_at - - -created_at - - last4 - - -last4 - - modified_at - - -modified_at - - name - - -name - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - LAST4_ASCENDING - - LAST4_DESCENDING - - MODIFIED_AT_ASCENDING - - MODIFIED_AT_DESCENDING - - NAME_ASCENDING - - NAME_DESCENDING - APIKeysType: - default: api_keys - description: API Keys resource type. - enum: - - api_keys - example: api_keys - type: string - x-enum-varnames: - - API_KEYS - APITrigger: - description: Trigger a workflow from an API request. The workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - APITriggerWrapper: - description: Schema for an API-based trigger. - properties: - apiTrigger: - $ref: '#/components/schemas/APITrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - apiTrigger - type: object - AWSAccountConfigID: - description: 'Unique Datadog ID of the AWS Account Integration Config. - - To get the config ID for an account, use the [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) - - endpoint and query by AWS Account ID.' - example: 00000000-abcd-0001-0000-000000000000 - type: string - AWSAccountCreateRequest: - description: AWS Account Create Request body. - properties: - data: - $ref: '#/components/schemas/AWSAccountCreateRequestData' - required: - - data - type: object - AWSAccountCreateRequestAttributes: - description: The AWS Account Integration Config to be created. - properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id - - aws_partition - - auth_config - type: object - AWSAccountCreateRequestData: - description: AWS Account Create Request data. - properties: - attributes: - $ref: '#/components/schemas/AWSAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/AWSAccountType' - required: - - attributes - - type - type: object - AWSAccountID: - description: AWS Account ID. - example: '123456789012' - type: string - AWSAccountPartition: - description: 'AWS partition your AWS account is scoped to. Defaults to `aws`. - - See [Partitions](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/partitions.html) - in the AWS documentation for more information.' - enum: - - aws - - aws-cn - - aws-us-gov - example: aws - type: string - x-enum-varnames: - - AWS - - AWS_CN - - AWS_US_GOV - AWSAccountResponse: - description: AWS Account response body. - properties: - data: - $ref: '#/components/schemas/AWSAccountResponseData' - required: - - data - type: object - AWSAccountResponseAttributes: - description: AWS Account response attributes. - properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - created_at: - description: Timestamp of when the account integration was created. - format: date-time - readOnly: true - type: string - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - modified_at: - description: Timestamp of when the account integration was updated. - format: date-time - readOnly: true - type: string - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id - type: object - AWSAccountResponseData: - description: AWS Account response data. - properties: - attributes: - $ref: '#/components/schemas/AWSAccountResponseAttributes' - id: - $ref: '#/components/schemas/AWSAccountConfigID' - type: - $ref: '#/components/schemas/AWSAccountType' - required: - - id - - type - type: object - AWSAccountTags: - description: Tags to apply to all hosts and metrics reporting for this account. - Defaults to `[]`. - items: - description: Tag in the form `key:value`. - example: env:prod - type: string - nullable: true - type: array - AWSAccountType: - default: account - description: AWS Account resource type. - enum: - - account - example: account - type: string - x-enum-varnames: - - ACCOUNT - AWSAccountUpdateRequest: - description: AWS Account Update Request body. - properties: - data: - $ref: '#/components/schemas/AWSAccountUpdateRequestData' - required: - - data - type: object - AWSAccountUpdateRequestAttributes: - description: The AWS Account Integration Config to be updated. - properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id - type: object - AWSAccountUpdateRequestData: - description: AWS Account Update Request data. - properties: - attributes: - $ref: '#/components/schemas/AWSAccountUpdateRequestAttributes' - id: - $ref: '#/components/schemas/AWSAccountConfigID' - type: - $ref: '#/components/schemas/AWSAccountType' - required: - - attributes - - type - type: object - AWSAccountsResponse: - description: AWS Accounts response body. - properties: - data: - description: List of AWS Account Integration Configs. - items: - $ref: '#/components/schemas/AWSAccountResponseData' - type: array - required: - - data - type: object - AWSAssumeRole: - description: The definition of `AWSAssumeRole` object. - properties: - account_id: - description: AWS account the connection is created for - example: '111222333444' - pattern: ^\d{12}$ - type: string - external_id: - description: External ID used to scope which connection can be used to assume - the role - example: 33a1011635c44b38a064cf14e82e1d8f - readOnly: true - type: string - principal_id: - description: AWS account that will assume the role - example: '123456789012' - readOnly: true - type: string - role: - description: Role to assume - example: my-role - type: string - type: - $ref: '#/components/schemas/AWSAssumeRoleType' - required: - - type - - account_id - - role - type: object - AWSAssumeRoleType: - description: The definition of `AWSAssumeRoleType` object. - enum: - - AWSAssumeRole - example: AWSAssumeRole - type: string - x-enum-varnames: - - AWSASSUMEROLE - AWSAssumeRoleUpdate: - description: The definition of `AWSAssumeRoleUpdate` object. - properties: - account_id: - description: AWS account the connection is created for - example: '111222333444' - pattern: ^\d{12}$ - type: string - generate_new_external_id: - description: The `AWSAssumeRoleUpdate` `generate_new_external_id`. - type: boolean - role: - description: Role to assume - example: my-role - type: string - type: - $ref: '#/components/schemas/AWSAssumeRoleType' - required: - - type - type: object - AWSAuthConfig: - description: AWS Authentication config. - oneOf: - - $ref: '#/components/schemas/AWSAuthConfigKeys' - - $ref: '#/components/schemas/AWSAuthConfigRole' - AWSAuthConfigKeys: - description: AWS Authentication config to integrate your account using an access - key pair. - properties: - access_key_id: - description: AWS Access Key ID. - example: AKIAIOSFODNN7EXAMPLE - type: string - secret_access_key: - description: AWS Secret Access Key. - example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY - minLength: 1 - type: string - writeOnly: true - required: - - access_key_id - type: object - AWSAuthConfigRole: - description: AWS Authentication config to integrate your account using an IAM - role. - properties: - external_id: - description: AWS IAM External ID for associated role. - type: string - role_name: - description: AWS IAM Role name. - example: DatadogIntegrationRole - maxLength: 576 - minLength: 1 - type: string - required: - - role_name - type: object - AWSCredentials: - description: The definition of `AWSCredentials` object. - oneOf: - - $ref: '#/components/schemas/AWSAssumeRole' - AWSCredentialsUpdate: - description: The definition of `AWSCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AWSAssumeRoleUpdate' - AWSIntegration: - description: The definition of `AWSIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AWSCredentials' - type: - $ref: '#/components/schemas/AWSIntegrationType' - required: - - type - - credentials - type: object - AWSIntegrationIamPermissionsResponse: - description: AWS Integration IAM Permissions response body. - properties: - data: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseData' - required: - - data - type: object - AWSIntegrationIamPermissionsResponseAttributes: - description: AWS Integration IAM Permissions response attributes. - properties: - permissions: - description: List of AWS IAM permissions required for the integration. - example: - - account:GetContactInformation - - amplify:ListApps - - amplify:ListArtifacts - - amplify:ListBackendEnvironments - - amplify:ListBranches - items: - example: account:GetContactInformation - type: string - type: array - required: - - permissions - type: object - AWSIntegrationIamPermissionsResponseData: - description: AWS Integration IAM Permissions response data. - properties: - attributes: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseAttributes' - id: - default: permissions - description: The `AWSIntegrationIamPermissionsResponseData` `id`. - example: permissions - type: string - type: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseDataType' - type: object - AWSIntegrationIamPermissionsResponseDataType: - default: permissions - description: The `AWSIntegrationIamPermissionsResponseData` `type`. - enum: - - permissions - example: permissions - type: string - x-enum-varnames: - - PERMISSIONS - AWSIntegrationType: - description: The definition of `AWSIntegrationType` object. - enum: - - AWS - example: AWS - type: string - x-enum-varnames: - - AWS - AWSIntegrationUpdate: - description: The definition of `AWSIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AWSCredentialsUpdate' - type: - $ref: '#/components/schemas/AWSIntegrationType' - required: - - type - type: object - AWSLambdaForwarderConfig: - description: 'Log Autosubscription configuration for Datadog Forwarder Lambda - functions. Automatically set up triggers for existing - - and new logs for some services, ensuring no logs from new resources are missed - and saving time spent on manual configuration.' - properties: - lambdas: - description: List of Datadog Lambda Log Forwarder ARNs in your AWS account. - Defaults to `[]`. - items: - example: arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder - type: string - type: array - log_source_config: - $ref: '#/components/schemas/AWSLambdaForwarderConfigLogSourceConfig' - sources: - description: 'List of service IDs set to enable automatic log collection. - Discover the list of available services with the - - [Get list of AWS log ready services](https://docs.datadoghq.com/api/latest/aws-logs-integration/#get-list-of-aws-log-ready-services) - endpoint.' - items: - example: s3 - type: string - type: array - type: object - AWSLambdaForwarderConfigLogSourceConfig: - description: Log source configuration. - properties: - tag_filters: - description: List of AWS log source tag filters. Defaults to `[]`. - items: - $ref: '#/components/schemas/AWSLogSourceTagFilter' - type: array - type: object - AWSLogSourceTagFilter: - description: 'AWS log source tag filter list. Defaults to `[]`. - - Array of log source to AWS resource tag mappings. Each mapping contains a - log source and its associated AWS resource tags (in `key:value` format) used - to filter logs submitted to Datadog. - - Tag filters are applied for tags on the AWS resource emitting logs; tags associated - with the log storage entity (such as a CloudWatch Log Group or S3 Bucket) - are not considered. - - For more information on resource tag filter syntax, [see AWS resource exclusion](https://docs.datadoghq.com/account_management/billing/aws/#aws-resource-exclusion) - in the AWS integration billing page.' - properties: - source: - description: The AWS log source to which the tag filters defined in `tags` - are applied. - example: s3 - type: string - tags: - description: The AWS resource tags to filter on for the log source specified - by `source`. - items: - description: Tag in the form `key:value`. - example: env:prod - type: string - nullable: true - type: array - type: object - AWSLogsConfig: - description: AWS Logs Collection config. - properties: - lambda_forwarder: - $ref: '#/components/schemas/AWSLambdaForwarderConfig' - type: object - AWSLogsServicesResponse: - description: AWS Logs Services response body - properties: - data: - $ref: '#/components/schemas/AWSLogsServicesResponseData' - required: - - data - type: object - AWSLogsServicesResponseAttributes: - description: AWS Logs Services response body - properties: - logs_services: - description: List of AWS services that can send logs to Datadog - example: - - s3 - items: - example: s3 - type: string - type: array - required: - - logs_services - type: object - AWSLogsServicesResponseData: - description: AWS Logs Services response body - properties: - attributes: - $ref: '#/components/schemas/AWSLogsServicesResponseAttributes' - id: - default: logs_services - description: The `AWSLogsServicesResponseData` `id`. - example: logs_services - type: string - type: - $ref: '#/components/schemas/AWSLogsServicesResponseDataType' - required: - - id - - type - type: object - AWSLogsServicesResponseDataType: - default: logs_services - description: The `AWSLogsServicesResponseData` `type`. - enum: - - logs_services - example: logs_services - type: string - x-enum-varnames: - - LOGS_SERVICES - AWSMetricsConfig: - description: AWS Metrics Collection config. - properties: - automute_enabled: - description: Enable EC2 automute for AWS metrics. Defaults to `true`. - example: true - type: boolean - collect_cloudwatch_alarms: - description: Enable CloudWatch alarms collection. Defaults to `false`. - example: false - type: boolean - collect_custom_metrics: - description: Enable custom metrics collection. Defaults to `false`. - example: false - type: boolean - enabled: - description: Enable AWS metrics collection. Defaults to `true`. - example: true - type: boolean - namespace_filters: - $ref: '#/components/schemas/AWSNamespaceFilters' - tag_filters: - description: AWS Metrics collection tag filters list. Defaults to `[]`. - items: - $ref: '#/components/schemas/AWSNamespaceTagFilter' - type: array - type: object - AWSNamespaceFilters: - description: AWS Metrics namespace filters. Defaults to `exclude_only`. - oneOf: - - $ref: '#/components/schemas/AWSNamespaceFiltersExcludeOnly' - - $ref: '#/components/schemas/AWSNamespaceFiltersIncludeOnly' - AWSNamespaceFiltersExcludeOnly: - description: 'Exclude only these namespaces from metrics collection. Defaults - to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. - - `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default - to reduce your AWS CloudWatch costs from `GetMetricData` API calls.' - properties: - exclude_only: - description: 'Exclude only these namespaces from metrics collection. Defaults - to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. - - `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default - to reduce your AWS CloudWatch costs from `GetMetricData` API calls.' - example: - - AWS/SQS - - AWS/ElasticMapReduce - - AWS/Usage - items: - example: AWS/SQS - type: string - type: array - required: - - exclude_only - type: object - AWSNamespaceFiltersIncludeOnly: - description: Include only these namespaces. - properties: - include_only: - description: Include only these namespaces. - example: - - AWS/EC2 - items: - example: AWS/EC2 - type: string - type: array - required: - - include_only - type: object - AWSNamespaceTagFilter: - description: 'AWS Metrics Collection tag filters list. Defaults to `[]`. - - The array of custom AWS resource tags (in the form `key:value`) defines a - filter that Datadog uses when collecting metrics from a specified service. - - Wildcards, such as `?` (match a single character) and `*` (match multiple - characters), and exclusion using `!` before the tag are supported. - - For EC2, only hosts that match one of the defined tags will be imported into - Datadog. The rest will be ignored. - - For example, `env:production,instance-type:c?.*,!region:us-east-1`.' - properties: - namespace: - description: The AWS service for which the tag filters defined in `tags` - will be applied. - example: AWS/EC2 - type: string - tags: - description: The AWS resource tags to filter on for the service specified - by `namespace`. - items: - description: Tag in the form `key:value`. - example: datadog:true - type: string - nullable: true - type: array - type: object - AWSNamespacesResponse: - description: AWS Namespaces response body. - properties: - data: - $ref: '#/components/schemas/AWSNamespacesResponseData' - required: - - data - type: object - AWSNamespacesResponseAttributes: - description: AWS Namespaces response attributes. - properties: - namespaces: - description: AWS CloudWatch namespace. - example: - - AWS/ApiGateway - items: - example: AWS/ApiGateway - type: string - type: array - required: - - namespaces - type: object - AWSNamespacesResponseData: - description: AWS Namespaces response data. - properties: - attributes: - $ref: '#/components/schemas/AWSNamespacesResponseAttributes' - id: - default: namespaces - description: The `AWSNamespacesResponseData` `id`. - example: namespaces - type: string - type: - $ref: '#/components/schemas/AWSNamespacesResponseDataType' - required: - - id - - type - type: object - AWSNamespacesResponseDataType: - default: namespaces - description: The `AWSNamespacesResponseData` `type`. - enum: - - namespaces - example: namespaces - type: string - x-enum-varnames: - - NAMESPACES - AWSNewExternalIDResponse: - description: AWS External ID response body. - properties: - data: - $ref: '#/components/schemas/AWSNewExternalIDResponseData' - required: - - data - type: object - AWSNewExternalIDResponseAttributes: - description: AWS External ID response body. - properties: - external_id: - description: AWS IAM External ID for associated role. - example: acb8f6b8a844443dbb726d07dcb1a870 - type: string - required: - - external_id - type: object - AWSNewExternalIDResponseData: - description: AWS External ID response body. - properties: - attributes: - $ref: '#/components/schemas/AWSNewExternalIDResponseAttributes' - id: - default: external_id - description: The `AWSNewExternalIDResponseData` `id`. - example: external_id - type: string - type: - $ref: '#/components/schemas/AWSNewExternalIDResponseDataType' - required: - - id - - type - type: object - AWSNewExternalIDResponseDataType: - default: external_id - description: The `AWSNewExternalIDResponseData` `type`. - enum: - - external_id - example: external_id - type: string - x-enum-varnames: - - EXTERNAL_ID - AWSRegions: - description: AWS Regions to collect data from. Defaults to `include_all`. - oneOf: - - $ref: '#/components/schemas/AWSRegionsIncludeAll' - - $ref: '#/components/schemas/AWSRegionsIncludeOnly' - AWSRegionsIncludeAll: - description: Include all regions. Defaults to `true`. - properties: - include_all: - description: Include all regions. - example: true - type: boolean - required: - - include_all - type: object - AWSRegionsIncludeOnly: - description: Include only these regions. - properties: - include_only: - description: Include only these regions. - example: - - us-east-1 - items: - example: us-east-1 - type: string - type: array - required: - - include_only - type: object - AWSResourcesConfig: - description: AWS Resources Collection config. - properties: - cloud_security_posture_management_collection: - description: Enable Cloud Security Management to scan AWS resources for - vulnerabilities, misconfigurations, identity risks, and compliance violations. - Defaults to `false`. Requires `extended_collection` to be set to `true`. - example: false - type: boolean - extended_collection: - description: Whether Datadog collects additional attributes and configuration - information about the resources in your AWS account. Defaults to `true`. - Required for `cloud_security_posture_management_collection`. - example: true - type: boolean - type: object - AWSTracesConfig: - description: AWS Traces Collection config. - properties: - xray_services: - $ref: '#/components/schemas/XRayServicesList' - type: object - AccountFilteringConfig: - description: The account filtering configuration. - properties: - excluded_accounts: - description: The AWS account IDs to be excluded from your billing dataset. - This field is used when `include_new_accounts` is `true`. - example: - - '123456789123' - - '123456789143' - items: - type: string - type: array - include_new_accounts: - description: Whether or not to automatically include new member accounts - by default in your billing dataset. - example: true - type: boolean - included_accounts: - description: The AWS account IDs to be included in your billing dataset. - This field is used when `include_new_accounts` is `false`. - example: - - '123456789123' - - '123456789143' - items: - type: string - type: array - type: object - ActionConnectionAttributes: - description: The definition of `ActionConnectionAttributes` object. - properties: - integration: - $ref: '#/components/schemas/ActionConnectionIntegration' - name: - description: Name of the connection - example: My AWS Connection - type: string - required: - - name - - integration - type: object - ActionConnectionAttributesUpdate: - description: The definition of `ActionConnectionAttributesUpdate` object. - properties: - integration: - $ref: '#/components/schemas/ActionConnectionIntegrationUpdate' - name: - description: Name of the connection - example: My AWS Connection - type: string - type: object - ActionConnectionData: - description: Data related to the connection. - properties: - attributes: - $ref: '#/components/schemas/ActionConnectionAttributes' - id: - description: The connection identifier - readOnly: true - type: string - type: - $ref: '#/components/schemas/ActionConnectionDataType' - required: - - type - - attributes - type: object - ActionConnectionDataType: - description: The definition of `ActionConnectionDataType` object. - enum: - - action_connection - example: action_connection - type: string - x-enum-varnames: - - ACTION_CONNECTION - ActionConnectionDataUpdate: - description: Data related to the connection update. - properties: - attributes: - $ref: '#/components/schemas/ActionConnectionAttributesUpdate' - type: - $ref: '#/components/schemas/ActionConnectionDataType' - required: - - type - - attributes - type: object - ActionConnectionIntegration: - description: The definition of `ActionConnectionIntegration` object. - oneOf: - - $ref: '#/components/schemas/AWSIntegration' - - $ref: '#/components/schemas/AnthropicIntegration' - - $ref: '#/components/schemas/AsanaIntegration' - - $ref: '#/components/schemas/AzureIntegration' - - $ref: '#/components/schemas/CircleCIIntegration' - - $ref: '#/components/schemas/ClickupIntegration' - - $ref: '#/components/schemas/CloudflareIntegration' - - $ref: '#/components/schemas/ConfigCatIntegration' - - $ref: '#/components/schemas/DatadogIntegration' - - $ref: '#/components/schemas/FastlyIntegration' - - $ref: '#/components/schemas/FreshserviceIntegration' - - $ref: '#/components/schemas/GCPIntegration' - - $ref: '#/components/schemas/GeminiIntegration' - - $ref: '#/components/schemas/GitlabIntegration' - - $ref: '#/components/schemas/GreyNoiseIntegration' - - $ref: '#/components/schemas/HTTPIntegration' - - $ref: '#/components/schemas/LaunchDarklyIntegration' - - $ref: '#/components/schemas/NotionIntegration' - - $ref: '#/components/schemas/OktaIntegration' - - $ref: '#/components/schemas/OpenAIIntegration' - - $ref: '#/components/schemas/ServiceNowIntegration' - - $ref: '#/components/schemas/SplitIntegration' - - $ref: '#/components/schemas/StatsigIntegration' - - $ref: '#/components/schemas/VirusTotalIntegration' - ActionConnectionIntegrationUpdate: - description: The definition of `ActionConnectionIntegrationUpdate` object. - oneOf: - - $ref: '#/components/schemas/AWSIntegrationUpdate' - - $ref: '#/components/schemas/AnthropicIntegrationUpdate' - - $ref: '#/components/schemas/AsanaIntegrationUpdate' - - $ref: '#/components/schemas/AzureIntegrationUpdate' - - $ref: '#/components/schemas/CircleCIIntegrationUpdate' - - $ref: '#/components/schemas/ClickupIntegrationUpdate' - - $ref: '#/components/schemas/CloudflareIntegrationUpdate' - - $ref: '#/components/schemas/ConfigCatIntegrationUpdate' - - $ref: '#/components/schemas/DatadogIntegrationUpdate' - - $ref: '#/components/schemas/FastlyIntegrationUpdate' - - $ref: '#/components/schemas/FreshserviceIntegrationUpdate' - - $ref: '#/components/schemas/GCPIntegrationUpdate' - - $ref: '#/components/schemas/GeminiIntegrationUpdate' - - $ref: '#/components/schemas/GitlabIntegrationUpdate' - - $ref: '#/components/schemas/GreyNoiseIntegrationUpdate' - - $ref: '#/components/schemas/HTTPIntegrationUpdate' - - $ref: '#/components/schemas/LaunchDarklyIntegrationUpdate' - - $ref: '#/components/schemas/NotionIntegrationUpdate' - - $ref: '#/components/schemas/OktaIntegrationUpdate' - - $ref: '#/components/schemas/OpenAIIntegrationUpdate' - - $ref: '#/components/schemas/ServiceNowIntegrationUpdate' - - $ref: '#/components/schemas/SplitIntegrationUpdate' - - $ref: '#/components/schemas/StatsigIntegrationUpdate' - - $ref: '#/components/schemas/VirusTotalIntegrationUpdate' - ActionQuery: - description: An action query. This query type is used to trigger an action, - such as sending a HTTP request. - properties: - events: - description: Events to listen for downstream of the action query. - items: - $ref: '#/components/schemas/AppBuilderEvent' - type: array - id: - description: The ID of the action query. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - name: - description: A unique identifier for this action query. This name is also - used to access the query's result throughout the app. - example: fetchPendingOrders - type: string - properties: - $ref: '#/components/schemas/ActionQueryProperties' - type: - $ref: '#/components/schemas/ActionQueryType' - required: - - id - - name - - type - - properties - type: object - ActionQueryCondition: - description: Whether to run this query. If specified, the query will only run - if this condition evaluates to `true` in JavaScript and all other conditions - are also met. - oneOf: - - type: boolean - - example: ${true} - type: string - ActionQueryDebounceInMs: - description: The minimum time in milliseconds that must pass before the query - can be triggered again. This is useful for preventing accidental double-clicks - from triggering the query multiple times. - oneOf: - - example: 310.5 - format: double - type: number - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a number. - example: ${1000} - type: string - ActionQueryMockedOutputs: - description: The mocked outputs of the action query. This is useful for testing - the app without actually running the action. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQueryMockedOutputsObject' - ActionQueryMockedOutputsEnabled: - description: Whether to enable the mocked outputs for testing. - oneOf: - - type: boolean - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a boolean. - example: ${true} - type: string - ActionQueryMockedOutputsObject: - description: The mocked outputs of the action query. - properties: - enabled: - $ref: '#/components/schemas/ActionQueryMockedOutputsEnabled' - outputs: - description: The mocked outputs of the action query, serialized as JSON. - example: '{"status": "success"}' - type: string - required: - - enabled - type: object - ActionQueryOnlyTriggerManually: - description: Determines when this query is executed. If set to `false`, the - query will run when the app loads and whenever any query arguments change. - If set to `true`, the query will only run when manually triggered from elsewhere - in the app. - oneOf: - - type: boolean - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a boolean. - example: ${true} - type: string - ActionQueryPollingIntervalInMs: - description: If specified, the app will poll the query at the specified interval - in milliseconds. The minimum polling interval is 15 seconds. The query will - only poll when the app's browser tab is active. - oneOf: - - example: 30000.0 - format: double - minimum: 15000.0 - type: number - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a number. - example: ${15000} - type: string - ActionQueryProperties: - description: The properties of the action query. - properties: - condition: - $ref: '#/components/schemas/ActionQueryCondition' - debounceInMs: - $ref: '#/components/schemas/ActionQueryDebounceInMs' - mockedOutputs: - $ref: '#/components/schemas/ActionQueryMockedOutputs' - onlyTriggerManually: - $ref: '#/components/schemas/ActionQueryOnlyTriggerManually' - outputs: - description: The post-query transformation function, which is a JavaScript - function that changes the query's `.outputs` property after the query's - execution. - example: ${((outputs) => {return outputs.body.data})(self.rawOutputs)} - type: string - pollingIntervalInMs: - $ref: '#/components/schemas/ActionQueryPollingIntervalInMs' - requiresConfirmation: - $ref: '#/components/schemas/ActionQueryRequiresConfirmation' - showToastOnError: - $ref: '#/components/schemas/ActionQueryShowToastOnError' - spec: - $ref: '#/components/schemas/ActionQuerySpec' - required: - - spec - type: object - ActionQueryRequiresConfirmation: - description: Whether to prompt the user to confirm this query before it runs. - oneOf: - - type: boolean - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a boolean. - example: ${true} - type: string - ActionQueryShowToastOnError: - description: Whether to display a toast to the user when the query returns an - error. - oneOf: - - type: boolean - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a boolean. - example: ${true} - type: string - ActionQuerySpec: - description: The definition of the action query. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQuerySpecObject' - ActionQuerySpecConnectionGroup: - description: The connection group to use for an action query. - properties: - id: - description: The ID of the connection group. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - tags: - description: The tags of the connection group. - items: - type: string - type: array - type: object - ActionQuerySpecInput: - additionalProperties: {} - description: The inputs to the action query. See the [Actions Catalog](https://docs.datadoghq.com/actions/actions_catalog/) - for more detail on each action and its inputs. - type: object - ActionQuerySpecInputs: - description: The inputs to the action query. These are the values that are passed - to the action when it is triggered. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQuerySpecInput' - ActionQuerySpecObject: - description: The action query spec object. - properties: - connectionGroup: - $ref: '#/components/schemas/ActionQuerySpecConnectionGroup' - connectionId: - description: The ID of the custom connection to use for this action query. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - type: string - fqn: - description: The fully qualified name of the action type. - example: com.datadoghq.http.request - type: string - inputs: - $ref: '#/components/schemas/ActionQuerySpecInputs' - required: - - fqn - type: object - ActionQueryType: - default: action - description: The action query type. - enum: - - action - example: action - type: string - x-enum-varnames: - - ACTION - ActiveBillingDimensionsAttributes: - description: List of active billing dimensions. - properties: - month: - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`.' - format: date-time - type: string - values: - description: 'List of active billing dimensions. Example: `[infra_host, - apm_host, serverless_infra]`.' - items: - description: A given billing dimension in a list. - example: infra_host - type: string - type: array - type: object - ActiveBillingDimensionsBody: - description: Active billing dimensions data. - properties: - attributes: - $ref: '#/components/schemas/ActiveBillingDimensionsAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/ActiveBillingDimensionsType' - type: object - ActiveBillingDimensionsResponse: - description: Active billing dimensions response. - properties: - data: - $ref: '#/components/schemas/ActiveBillingDimensionsBody' - type: object - ActiveBillingDimensionsType: - default: billing_dimensions - description: Type of active billing dimensions data. - enum: - - billing_dimensions - type: string - x-enum-varnames: - - BILLING_DIMENSIONS - AddMemberTeamRequest: - description: Request to add a member team to super team's hierarchy - properties: - data: - $ref: '#/components/schemas/MemberTeam' - required: - - data - type: object - Advisory: - description: Advisory. - properties: - base_severity: - description: Advisory base severity. - example: Critical - type: string - id: - description: Advisory id. - example: GHSA-4wrc-f8pq-fpqp - type: string - severity: - description: Advisory Datadog severity. - example: Medium - type: string - required: - - id - - base_severity - type: object - AlertEventAttributes: - description: Alert event attributes. - properties: - aggregation_key: - $ref: '#/components/schemas/V2EventAggregationKey' - custom: - description: JSON object of custom attributes. - example: {} - type: object - evt: - $ref: '#/components/schemas/EventSystemAttributes' - links: - description: The links related to the event. - example: - - category: runbook - title: Runbook Link - url: https://app.datadoghq.com/runbook - items: - $ref: '#/components/schemas/AlertEventAttributesLinksItem' - type: array - priority: - $ref: '#/components/schemas/AlertEventAttributesPriority' - service: - $ref: '#/components/schemas/V2EventService' - status: - $ref: '#/components/schemas/AlertEventAttributesStatus' - timestamp: - $ref: '#/components/schemas/V2EventTimestamp' - title: - $ref: '#/components/schemas/V2EventTitle' - type: object - AlertEventAttributesLinksItem: - description: A link. - properties: - category: - $ref: '#/components/schemas/AlertEventAttributesLinksItemCategory' - title: - description: The display text of the link. - type: string - url: - description: The URL of the link. - type: string - type: object - AlertEventAttributesLinksItemCategory: - description: The category of the link. - enum: - - runbook - - documentation - - dashboard - type: string - x-enum-varnames: - - RUNBOOK - - DOCUMENTATION - - DASHBOARD - AlertEventAttributesPriority: - description: The priority of the alert. - enum: - - '1' - - '2' - - '3' - - '4' - - '5' - example: '5' - type: string - x-enum-varnames: - - PRIORITY_ONE - - PRIORITY_TWO - - PRIORITY_THREE - - PRIORITY_FOUR - - PRIORITY_FIVE - AlertEventAttributesStatus: - description: The status of the alert. - enum: - - warn - - error - - ok - example: error - type: string - x-enum-varnames: - - WARN - - ERROR - - OK - AlertEventCustomAttributes: - additionalProperties: false - description: Alert event attributes. - properties: - custom: - $ref: '#/components/schemas/AlertEventCustomAttributesCustom' - links: - $ref: '#/components/schemas/AlertEventCustomAttributesLinks' - priority: - $ref: '#/components/schemas/AlertEventCustomAttributesPriority' - status: - $ref: '#/components/schemas/AlertEventCustomAttributesStatus' - required: - - status - type: object - AlertEventCustomAttributesCustom: - additionalProperties: {} - description: Free form JSON object for arbitrary data. Supports up to 100 properties - per object and a maximum nesting depth of 10 levels. - example: {} - type: object - AlertEventCustomAttributesLinks: - description: The links related to the event. Maximum of 20 links allowed. - items: - $ref: '#/components/schemas/AlertEventCustomAttributesLinksItems' - maxItems: 20 - minItems: 1 - type: array - AlertEventCustomAttributesLinksItems: - additionalProperties: false - description: A link. - properties: - category: - $ref: '#/components/schemas/AlertEventCustomAttributesLinksItemsCategory' - title: - description: The display text of the link. Limited to 300 characters. - example: Runbook Link - maxLength: 300 - minLength: 1 - type: string - url: - description: The URL of the link. Limited to 2048 characters. - example: https://app.datadoghq.com/runbook - maxLength: 2048 - minLength: 1 - type: string - required: - - url - - category - type: object - AlertEventCustomAttributesLinksItemsCategory: - description: The category of the link. - enum: - - runbook - - documentation - - dashboard - example: runbook - type: string - x-enum-varnames: - - RUNBOOK - - DOCUMENTATION - - DASHBOARD - AlertEventCustomAttributesPriority: - default: '5' - description: The priority of the alert. - enum: - - '1' - - '2' - - '3' - - '4' - - '5' - example: '5' - type: string - x-enum-varnames: - - PRIORITY_ONE - - PRIORITY_TWO - - PRIORITY_THREE - - PRIORITY_FOUR - - PRIORITY_FIVE - AlertEventCustomAttributesStatus: - description: The status of the alert. - enum: - - warn - - error - - ok - example: warn - type: string - x-enum-varnames: - - WARN - - ERROR - - OK - Annotation: - description: A list of annotations used in the workflow. These are like sticky - notes for your workflow! - properties: - display: - $ref: '#/components/schemas/AnnotationDisplay' - id: - description: The `Annotation` `id`. - example: '' - type: string - markdownTextAnnotation: - $ref: '#/components/schemas/AnnotationMarkdownTextAnnotation' - required: - - id - - display - - markdownTextAnnotation - type: object - AnnotationDisplay: - description: The definition of `AnnotationDisplay` object. - properties: - bounds: - $ref: '#/components/schemas/AnnotationDisplayBounds' - type: object - AnnotationDisplayBounds: - description: The definition of `AnnotationDisplayBounds` object. - properties: - height: - description: The `bounds` `height`. - format: double - type: number - width: - description: The `bounds` `width`. - format: double - type: number - x: - description: The `bounds` `x`. - format: double - type: number - y: - description: The `bounds` `y`. - format: double - type: number - type: object - AnnotationMarkdownTextAnnotation: - description: The definition of `AnnotationMarkdownTextAnnotation` object. - properties: - text: - description: The `markdownTextAnnotation` `text`. - type: string - type: object - AnthropicAPIKey: - description: The definition of the `AnthropicAPIKey` object. - properties: - api_token: - description: The `AnthropicAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/AnthropicAPIKeyType' - required: - - type - - api_token - type: object - AnthropicAPIKeyType: - description: The definition of the `AnthropicAPIKey` object. - enum: - - AnthropicAPIKey - example: AnthropicAPIKey - type: string - x-enum-varnames: - - ANTHROPICAPIKEY - AnthropicAPIKeyUpdate: - description: The definition of the `AnthropicAPIKey` object. - properties: - api_token: - description: The `AnthropicAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/AnthropicAPIKeyType' - required: - - type - type: object - AnthropicCredentials: - description: The definition of the `AnthropicCredentials` object. - oneOf: - - $ref: '#/components/schemas/AnthropicAPIKey' - AnthropicCredentialsUpdate: - description: The definition of the `AnthropicCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AnthropicAPIKeyUpdate' - AnthropicIntegration: - description: The definition of the `AnthropicIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AnthropicCredentials' - type: - $ref: '#/components/schemas/AnthropicIntegrationType' - required: - - type - - credentials - type: object - AnthropicIntegrationType: - description: The definition of the `AnthropicIntegrationType` object. - enum: - - Anthropic - example: Anthropic - type: string - x-enum-varnames: - - ANTHROPIC - AnthropicIntegrationUpdate: - description: The definition of the `AnthropicIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AnthropicCredentialsUpdate' - type: - $ref: '#/components/schemas/AnthropicIntegrationType' - required: - - type - type: object - ApiID: - description: API identifier. - example: 90646597-5fdb-4a17-a240-647003f8c028 - format: uuid - type: string - ApmRetentionFilterType: - default: apm_retention_filter - description: The type of the resource. - enum: - - apm_retention_filter - example: apm_retention_filter - type: string - x-enum-varnames: - - apm_retention_filter - AppBuilderEvent: - additionalProperties: {} - description: An event on a UI component that triggers a response or action in - an app. - properties: - name: - $ref: '#/components/schemas/AppBuilderEventName' - type: - $ref: '#/components/schemas/AppBuilderEventType' - type: object - AppBuilderEventName: - description: The triggering action for the event. - enum: - - pageChange - - tableRowClick - - _tableRowButtonClick - - change - - submit - - click - - toggleOpen - - close - - open - - executionFinished - example: click - type: string - x-enum-varnames: - - PAGECHANGE - - TABLEROWCLICK - - TABLEROWBUTTONCLICK - - CHANGE - - SUBMIT - - CLICK - - TOGGLEOPEN - - CLOSE - - OPEN - - EXECUTIONFINISHED - AppBuilderEventType: - description: The response to the event. - enum: - - custom - - setComponentState - - triggerQuery - - openModal - - closeModal - - openUrl - - downloadFile - - setStateVariableValue - example: triggerQuery - type: string - x-enum-varnames: - - CUSTOM - - SETCOMPONENTSTATE - - TRIGGERQUERY - - OPENMODAL - - CLOSEMODAL - - OPENURL - - DOWNLOADFILE - - SETSTATEVARIABLEVALUE - AppDefinitionType: - default: appDefinitions - description: The app definition type. - enum: - - appDefinitions - example: appDefinitions - type: string - x-enum-varnames: - - APPDEFINITIONS - AppDeploymentType: - default: deployment - description: The deployment type. - enum: - - deployment - example: deployment - type: string - x-enum-varnames: - - DEPLOYMENT - AppKeyRegistrationData: - description: Data related to the app key registration. - properties: - id: - description: The app key registration identifier - format: uuid - readOnly: true - type: string - type: - $ref: '#/components/schemas/AppKeyRegistrationDataType' - required: - - type - type: object - AppKeyRegistrationDataType: - description: The definition of `AppKeyRegistrationDataType` object. - enum: - - app_key_registration - example: app_key_registration - type: string - x-enum-varnames: - - APP_KEY_REGISTRATION - AppMeta: - description: Metadata of an app. - properties: - created_at: - description: Timestamp of when the app was created. - format: date-time - type: string - deleted_at: - description: Timestamp of when the app was deleted. - format: date-time - type: string - org_id: - description: The Datadog organization ID that owns the app. - format: int64 - type: integer - updated_at: - description: Timestamp of when the app was last updated. - format: date-time - type: string - updated_since_deployment: - description: Whether the app was updated since it was last published. Published - apps are pinned to a specific version and do not automatically update - when the app is updated. - type: boolean - user_id: - description: The ID of the user who created the app. - format: int64 - type: integer - user_name: - description: The name (or email address) of the user who created the app. - type: string - user_uuid: - description: The UUID of the user who created the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - version: - description: The version number of the app. This starts at 1 and increments - with each update. - format: int64 - type: integer - type: object - AppRelationship: - description: The app's publication relationship and custom connections. - properties: - connections: - description: Array of custom connections used by the app. - items: - $ref: '#/components/schemas/CustomConnection' - type: array - deployment: - $ref: '#/components/schemas/DeploymentRelationship' - type: object - AppTriggerWrapper: - description: Schema for an App-based trigger. - properties: - appTrigger: - description: Trigger a workflow from an App. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - appTrigger - type: object - ApplicationKeyCreateAttributes: - description: Attributes used to create an application Key. - properties: - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - required: - - name - type: object - ApplicationKeyCreateData: - description: Object used to create an application key. - properties: - attributes: - $ref: '#/components/schemas/ApplicationKeyCreateAttributes' - type: - $ref: '#/components/schemas/ApplicationKeysType' - required: - - attributes - - type - type: object - ApplicationKeyCreateRequest: - description: Request used to create an application key. - properties: - data: - $ref: '#/components/schemas/ApplicationKeyCreateData' - required: - - data - type: object - ApplicationKeyRelationships: - description: Resources related to the application key. - properties: - owned_by: - $ref: '#/components/schemas/RelationshipToUser' - type: object - ApplicationKeyResponse: - description: Response for retrieving an application key. - properties: - data: - $ref: '#/components/schemas/FullApplicationKey' - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - type: object - ApplicationKeyResponseIncludedItem: - description: An object related to an application key. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Role' - - $ref: '#/components/schemas/LeakedKey' - ApplicationKeyResponseMeta: - description: Additional information related to the application key response. - properties: - max_allowed_per_user: - description: Max allowed number of application keys per user. - format: int64 - type: integer - page: - $ref: '#/components/schemas/ApplicationKeyResponseMetaPage' - type: object - ApplicationKeyResponseMetaPage: - description: Additional information related to the application key response. - properties: - total_filtered_count: - description: Total filtered application key count. - format: int64 - type: integer - type: object - ApplicationKeyUpdateAttributes: - description: Attributes used to update an application Key. - properties: - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - type: object - ApplicationKeyUpdateData: - description: Object used to update an application key. - properties: - attributes: - $ref: '#/components/schemas/ApplicationKeyUpdateAttributes' - id: - description: ID of the application key. - example: 00112233-4455-6677-8899-aabbccddeeff - type: string - type: - $ref: '#/components/schemas/ApplicationKeysType' - required: - - attributes - - id - - type - type: object - ApplicationKeyUpdateRequest: - description: Request used to update an application key. - properties: - data: - $ref: '#/components/schemas/ApplicationKeyUpdateData' - required: - - data - type: object - ApplicationKeysSort: - default: name - description: Sorting options - enum: - - created_at - - -created_at - - last4 - - -last4 - - name - - -name - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - LAST4_ASCENDING - - LAST4_DESCENDING - - NAME_ASCENDING - - NAME_DESCENDING - ApplicationKeysType: - default: application_keys - description: Application Keys resource type. - enum: - - application_keys - example: application_keys - type: string - x-enum-varnames: - - APPLICATION_KEYS - ApplicationSecurityWafCustomRuleAction: - description: The definition of `ApplicationSecurityWafCustomRuleAction` object. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleActionAction' - parameters: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleActionParameters' - type: object - ApplicationSecurityWafCustomRuleActionAction: - default: block_request - description: Override the default action to take when the WAF custom rule would - block. - enum: - - redirect_request - - block_request - example: block_request - type: string - x-enum-varnames: - - REDIRECT_REQUEST - - BLOCK_REQUEST - ApplicationSecurityWafCustomRuleActionParameters: - description: The definition of `ApplicationSecurityWafCustomRuleActionParameters` - object. - properties: - location: - description: The location to redirect to when the WAF custom rule triggers. - example: /blocking - type: string - status_code: - default: 403 - description: The status code to return when the WAF custom rule triggers. - example: 403 - format: int64 - type: integer - type: object - ApplicationSecurityWafCustomRuleAttributes: - description: A WAF custom rule. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAction' - blocking: - description: Indicates whether the WAF custom rule will block the request. - example: false - type: boolean - conditions: - description: 'Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - - rule to trigger.' - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' - type: array - enabled: - description: Indicates whether the WAF custom rule is enabled. - example: false - type: boolean - metadata: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleMetadata' - name: - description: The Name of the WAF custom rule. - example: Block request from bad useragent - type: string - path_glob: - description: The path glob for the WAF custom rule. - example: /api/search/* - type: string - scope: - description: The scope of the WAF custom rule. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleScope' - type: array - tags: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTags' - required: - - enabled - - blocking - - name - - tags - - conditions - type: object - ApplicationSecurityWafCustomRuleCondition: - description: One condition of the WAF Custom Rule. - properties: - operator: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionOperator' - parameters: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionParameters' - required: - - operator - - parameters - type: object - ApplicationSecurityWafCustomRuleConditionInput: - description: Input from the request on which the condition should apply. - properties: - address: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionInputAddress' - key_path: - description: Specific path for the input. - items: - type: string - type: array - required: - - address - type: object - ApplicationSecurityWafCustomRuleConditionInputAddress: - description: Input from the request on which the condition should apply. - enum: - - server.db.statement - - server.io.fs.file - - server.io.net.url - - server.sys.shell.cmd - - server.request.method - - server.request.uri.raw - - server.request.path_params - - server.request.query - - server.request.headers.no_cookies - - server.request.cookies - - server.request.trailers - - server.request.body - - server.response.status - - server.response.headers.no_cookies - - server.response.trailers - - grpc.server.request.metadata - - grpc.server.request.message - - grpc.server.method - - graphql.server.all_resolvers - - usr.id - - http.client_ip - example: server.db.statement - type: string - x-enum-varnames: - - SERVER_DB_STATEMENT - - SERVER_IO_FS_FILE - - SERVER_IO_NET_URL - - SERVER_SYS_SHELL_CMD - - SERVER_REQUEST_METHOD - - SERVER_REQUEST_URI_RAW - - SERVER_REQUEST_PATH_PARAMS - - SERVER_REQUEST_QUERY - - SERVER_REQUEST_HEADERS_NO_COOKIES - - SERVER_REQUEST_COOKIES - - SERVER_REQUEST_TRAILERS - - SERVER_REQUEST_BODY - - SERVER_RESPONSE_STATUS - - SERVER_RESPONSE_HEADERS_NO_COOKIES - - SERVER_RESPONSE_TRAILERS - - GRPC_SERVER_REQUEST_METADATA - - GRPC_SERVER_REQUEST_MESSAGE - - GRPC_SERVER_METHOD - - GRAPHQL_SERVER_ALL_RESOLVERS - - USR_ID - - HTTP_CLIENT_IP - ApplicationSecurityWafCustomRuleConditionOperator: - description: Operator to use for the WAF Condition. - enum: - - match_regex - - '!match_regex' - - phrase_match - - '!phrase_match' - - is_xss - - is_sqli - - exact_match - - '!exact_match' - - ip_match - - '!ip_match' - - capture_data - example: match_regex - type: string - x-enum-varnames: - - MATCH_REGEX - - NOT_MATCH_REGEX - - PHRASE_MATCH - - NOT_PHRASE_MATCH - - IS_XSS - - IS_SQLI - - EXACT_MATCH - - NOT_EXACT_MATCH - - IP_MATCH - - NOT_IP_MATCH - - CAPTURE_DATA - ApplicationSecurityWafCustomRuleConditionOptions: - description: Options for the operator of this condition. - properties: - case_sensitive: - default: false - description: Evaluate the value as case sensitive. - type: boolean - min_length: - default: 0 - description: Only evaluate this condition if the value has a minimum amount - of characters. - format: int64 - type: integer - type: object - ApplicationSecurityWafCustomRuleConditionParameters: - description: The scope of the WAF custom rule. - properties: - data: - description: Identifier of a list of data from the denylist. Can only be - used as substitution from the list parameter. - example: blocked_users - type: string - inputs: - description: List of inputs on which at least one should match with the - given operator. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionInput' - type: array - list: - description: 'List of value to use with the condition. Only used with the - phrase_match, !phrase_match, exact_match and - - !exact_match operator.' - items: - type: string - type: array - options: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionOptions' - regex: - description: Regex to use with the condition. Only used with match_regex - and !match_regex operator. - example: path.* - type: string - value: - description: Store the captured value in the specified tag name. Only used - with the capture_data operator. - example: custom_tag - type: string - required: - - inputs - type: object - ApplicationSecurityWafCustomRuleCreateAttributes: - description: Create a new WAF custom rule. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAction' - blocking: - description: Indicates whether the WAF custom rule will block the request. - example: false - type: boolean - conditions: - description: 'Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - - rule to trigger' - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' - type: array - enabled: - description: Indicates whether the WAF custom rule is enabled. - example: false - type: boolean - name: - description: The Name of the WAF custom rule. - example: Block request from a bad useragent - type: string - path_glob: - description: The path glob for the WAF custom rule. - example: /api/search/* - type: string - scope: - description: The scope of the WAF custom rule. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleScope' - type: array - tags: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTags' - required: - - enabled - - blocking - - name - - tags - - conditions - type: object - ApplicationSecurityWafCustomRuleCreateData: - description: Object for a single WAF custom rule. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCreateAttributes' - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - required: - - attributes - - type - type: object - ApplicationSecurityWafCustomRuleCreateRequest: - description: Request object that includes the custom rule to create. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCreateData' - required: - - data - type: object - ApplicationSecurityWafCustomRuleData: - description: Object for a single WAF custom rule. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAttributes' - id: - description: The ID of the custom rule. - example: 2857c47d-1e3a-4300-8b2f-dc24089c084b - readOnly: true - type: string - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - type: object - ApplicationSecurityWafCustomRuleListResponse: - description: Response object that includes a list of WAF custom rules. - properties: - data: - description: The WAF custom rule data. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleData' - type: array - type: object - ApplicationSecurityWafCustomRuleMetadata: - description: Metadata associated with the WAF Custom Rule. - properties: - added_at: - description: The date and time the WAF custom rule was created. - example: '2021-01-01T00:00:00Z' - format: date-time - type: string - added_by: - description: The handle of the user who created the WAF custom rule. - example: john.doe@datadoghq.com - type: string - added_by_name: - description: The name of the user who created the WAF custom rule. - example: John Doe - type: string - modified_at: - description: The date and time the WAF custom rule was last updated. - example: '2021-01-01T00:00:00Z' - format: date-time - type: string - modified_by: - description: The handle of the user who last updated the WAF custom rule. - example: john.doe@datadoghq.com - type: string - modified_by_name: - description: The name of the user who last updated the WAF custom rule. - example: John Doe - type: string - readOnly: true - type: object - ApplicationSecurityWafCustomRuleResponse: - description: Response object that includes a single WAF custom rule. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleData' - type: object - ApplicationSecurityWafCustomRuleScope: - description: The scope of the WAF custom rule. - properties: - env: - description: The environment scope for the WAF custom rule. - example: prod - type: string - service: - description: The service scope for the WAF custom rule. - example: billing-service - type: string - required: - - service - - env - type: object - ApplicationSecurityWafCustomRuleTags: - additionalProperties: - type: string - description: 'Tags associated with the WAF Custom Rule. The concatenation of - category and type will form the security - - activity field associated with the traces.' - maxProperties: 32 - properties: - category: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTagsCategory' - type: - description: The type of the WAF rule, associated with the category will - form the security activity. - example: users.login.success - type: string - required: - - category - - type - type: object - ApplicationSecurityWafCustomRuleTagsCategory: - description: The category of the WAF Rule, can be either `business_logic`, `attack_attempt` - or `security_response`. - enum: - - attack_attempt - - business_logic - - security_response - example: business_logic - type: string - x-enum-varnames: - - ATTACK_ATTEMPT - - BUSINESS_LOGIC - - SECURITY_RESPONSE - ApplicationSecurityWafCustomRuleType: - default: custom_rule - description: The type of the resource. The value should always be `custom_rule`. - enum: - - custom_rule - example: custom_rule - type: string - x-enum-varnames: - - CUSTOM_RULE - ApplicationSecurityWafCustomRuleUpdateAttributes: - description: Update a WAF custom rule. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAction' - blocking: - description: Indicates whether the WAF custom rule will block the request. - example: false - type: boolean - conditions: - description: 'Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - - rule to trigger.' - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' - type: array - enabled: - description: Indicates whether the WAF custom rule is enabled. - example: false - type: boolean - name: - description: The Name of the WAF custom rule. - example: Block request from bad useragent - type: string - path_glob: - description: The path glob for the WAF custom rule. - example: /api/search/* - type: string - scope: - description: The scope of the WAF custom rule. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleScope' - type: array - tags: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTags' - required: - - enabled - - blocking - - name - - tags - - conditions - type: object - ApplicationSecurityWafCustomRuleUpdateData: - description: Object for a single WAF Custom Rule. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleUpdateAttributes' - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - required: - - attributes - - type - type: object - ApplicationSecurityWafCustomRuleUpdateRequest: - description: Request object that includes the Custom Rule to update. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleUpdateData' - required: - - data - type: object - ApplicationSecurityWafExclusionFilterAttributes: - description: Attributes describing a WAF exclusion filter. - properties: - description: - description: A description for the exclusion filter. - example: Exclude false positives on a path - type: string - enabled: - description: Indicates whether the exclusion filter is enabled. - example: true - type: boolean - event_query: - description: The event query matched by the legacy exclusion filter. Cannot - be created nor updated. - type: string - ip_list: - description: The client IP addresses matched by the exclusion filter (CIDR - notation is supported). - items: - example: 198.51.100.72 - type: string - type: array - metadata: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterMetadata' - on_match: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' - parameters: - description: A list of parameters matched by the exclusion filter in the - HTTP query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. - items: - example: list.search.query - type: string - type: array - path_glob: - description: The HTTP path glob expression matched by the exclusion filter. - example: /accounts/* - type: string - rules_target: - description: The WAF rules targeted by the exclusion filter. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget' - type: array - scope: - description: The services where the exclusion filter is deployed. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' - type: array - search_query: - description: Generated event search query for traces matching the exclusion - filter. - readOnly: true - type: string - type: object - ApplicationSecurityWafExclusionFilterCreateAttributes: - description: Attributes for creating a WAF exclusion filter. - properties: - description: - description: A description for the exclusion filter. - example: Exclude false positives on a path - type: string - enabled: - description: Indicates whether the exclusion filter is enabled. - example: true - type: boolean - ip_list: - description: The client IP addresses matched by the exclusion filter (CIDR - notation is supported). - items: - example: 198.51.100.72 - type: string - type: array - on_match: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' - parameters: - description: A list of parameters matched by the exclusion filter in the - HTTP query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. - items: - example: list.search.query - type: string - type: array - path_glob: - description: The HTTP path glob expression matched by the exclusion filter. - example: /accounts/* - type: string - rules_target: - description: The WAF rules targeted by the exclusion filter. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget' - type: array - scope: - description: The services where the exclusion filter is deployed. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' - type: array - required: - - description - - enabled - type: object - ApplicationSecurityWafExclusionFilterCreateData: - description: Object for creating a single WAF exclusion filter. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterCreateAttributes' - type: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' - required: - - attributes - - type - type: object - ApplicationSecurityWafExclusionFilterCreateRequest: - description: Request object for creating a single WAF exclusion filter. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterCreateData' - required: - - data - type: object - ApplicationSecurityWafExclusionFilterID: - description: The identifier of the WAF exclusion filter. - example: 3dd-0uc-h1s - readOnly: true - type: string - ApplicationSecurityWafExclusionFilterMetadata: - description: Extra information about the exclusion filter. - properties: - added_at: - description: The creation date of the exclusion filter. - format: date-time - type: string - added_by: - description: The handle of the user who created the exclusion filter. - type: string - added_by_name: - description: The name of the user who created the exclusion filter. - type: string - modified_at: - description: The last modification date of the exclusion filter. - format: date-time - type: string - modified_by: - description: The handle of the user who last modified the exclusion filter. - type: string - modified_by_name: - description: The name of the user who last modified the exclusion filter. - type: string - readOnly: true - type: object - ApplicationSecurityWafExclusionFilterOnMatch: - description: The action taken when the exclusion filter matches. When set to - `monitor`, security traces are emitted but the requests are not blocked. By - default, security traces are not emitted and the requests are not blocked. - enum: - - monitor - type: string - x-enum-varnames: - - MONITOR - ApplicationSecurityWafExclusionFilterResource: - description: A JSON:API resource for an WAF exclusion filter. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterAttributes' - id: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterID' - type: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' - type: object - ApplicationSecurityWafExclusionFilterResponse: - description: Response object for a single WAF exclusion filter. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResource' - type: object - ApplicationSecurityWafExclusionFilterRulesTarget: - description: Target WAF rules based either on an identifier or tags. - properties: - rule_id: - description: Target a single WAF rule based on its identifier. - example: dog-913-009 - type: string - tags: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTargetTags' - type: object - ApplicationSecurityWafExclusionFilterRulesTargetTags: - additionalProperties: - type: string - description: Target multiple WAF rules based on their tags. - properties: - category: - description: The category of the targeted WAF rules. - example: attack_attempt - type: string - type: - description: The type of the targeted WAF rules. - example: lfi - type: string - type: object - ApplicationSecurityWafExclusionFilterScope: - description: Deploy on services based on their environment and/or service name. - properties: - env: - description: Deploy on this environment. - example: www - type: string - service: - description: Deploy on this service. - example: prod - type: string - type: object - ApplicationSecurityWafExclusionFilterType: - default: exclusion_filter - description: Type of the resource. The value should always be `exclusion_filter`. - enum: - - exclusion_filter - example: exclusion_filter - type: string - x-enum-varnames: - - EXCLUSION_FILTER - ApplicationSecurityWafExclusionFilterUpdateAttributes: - description: Attributes for updating a WAF exclusion filter. - properties: - description: - description: A description for the exclusion filter. - example: Exclude false positives on a path - type: string - enabled: - description: Indicates whether the exclusion filter is enabled. - example: true - type: boolean - ip_list: - description: The client IP addresses matched by the exclusion filter (CIDR - notation is supported). - items: - example: 198.51.100.72 - type: string - type: array - on_match: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' - parameters: - description: A list of parameters matched by the exclusion filter in the - HTTP query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. - items: - example: list.search.query - type: string - type: array - path_glob: - description: The HTTP path glob expression matched by the exclusion filter. - example: /accounts/* - type: string - rules_target: - description: The WAF rules targeted by the exclusion filter. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget' - type: array - scope: - description: The services where the exclusion filter is deployed. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' - type: array - required: - - description - - enabled - type: object - ApplicationSecurityWafExclusionFilterUpdateData: - description: Object for updating a single WAF exclusion filter. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateAttributes' - type: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' - required: - - attributes - - type - type: object - ApplicationSecurityWafExclusionFilterUpdateRequest: - description: Request object for updating a single WAF exclusion filter. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateData' - required: - - data - type: object - ApplicationSecurityWafExclusionFiltersResponse: - description: Response object for multiple WAF exclusion filters. - properties: - data: - description: A list of WAF exclusion filters. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResource' - type: array - type: object - AppsSortField: - description: The field and direction to sort apps by - enum: - - name - - created_at - - updated_at - - user_name - - -name - - -created_at - - -updated_at - - -user_name - example: -created_at - type: string - x-enum-varnames: - - NAME - - CREATED_AT - - UPDATED_AT - - USER_NAME - - NAME_DESC - - CREATED_AT_DESC - - UPDATED_AT_DESC - - USER_NAME_DESC - AsanaAccessToken: - description: The definition of the `AsanaAccessToken` object. - properties: - access_token: - description: The `AsanaAccessToken` `access_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/AsanaAccessTokenType' - required: - - type - - access_token - type: object - AsanaAccessTokenType: - description: The definition of the `AsanaAccessToken` object. - enum: - - AsanaAccessToken - example: AsanaAccessToken - type: string - x-enum-varnames: - - ASANAACCESSTOKEN - AsanaAccessTokenUpdate: - description: The definition of the `AsanaAccessToken` object. - properties: - access_token: - description: The `AsanaAccessTokenUpdate` `access_token`. - type: string - type: - $ref: '#/components/schemas/AsanaAccessTokenType' - required: - - type - type: object - AsanaCredentials: - description: The definition of the `AsanaCredentials` object. - oneOf: - - $ref: '#/components/schemas/AsanaAccessToken' - AsanaCredentialsUpdate: - description: The definition of the `AsanaCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AsanaAccessTokenUpdate' - AsanaIntegration: - description: The definition of the `AsanaIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AsanaCredentials' - type: - $ref: '#/components/schemas/AsanaIntegrationType' - required: - - type - - credentials - type: object - AsanaIntegrationType: - description: The definition of the `AsanaIntegrationType` object. - enum: - - Asana - example: Asana - type: string - x-enum-varnames: - - ASANA - AsanaIntegrationUpdate: - description: The definition of the `AsanaIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AsanaCredentialsUpdate' - type: - $ref: '#/components/schemas/AsanaIntegrationType' - required: - - type - type: object - Asset: - description: A single vulnerable asset - properties: - attributes: - $ref: '#/components/schemas/AssetAttributes' - id: - description: The unique ID for this asset. - example: Repository|github.com/DataDog/datadog-agent.git - type: string - type: - $ref: '#/components/schemas/AssetEntityType' - required: - - id - - type - - attributes - type: object - AssetAttributes: - description: The JSON:API attributes of the asset. - properties: - arch: - description: Asset architecture. - example: arm64 - type: string - environments: - description: List of environments where the asset is deployed. - example: - - staging - items: - example: staging - type: string - type: array - name: - description: Asset name. - example: github.com/DataDog/datadog-agent.git - type: string - operating_system: - $ref: '#/components/schemas/AssetOperatingSystem' - risks: - $ref: '#/components/schemas/AssetRisks' - teams: - description: List of teams that own the asset. - example: - - compute - items: - example: compute - type: string - type: array - type: - $ref: '#/components/schemas/AssetType' - version: - $ref: '#/components/schemas/AssetVersion' - required: - - name - - type - - risks - - environments - type: object - AssetEntityType: - description: The JSON:API type. - enum: - - assets - example: assets - type: string - x-enum-varnames: - - ASSETS - AssetOperatingSystem: - description: Asset operating system. - properties: - description: - description: Operating system version. - example: '24.04' - type: string - name: - description: Operating system name. - example: ubuntu - type: string - required: - - name - type: object - AssetRisks: - description: Asset risks. - properties: - has_access_to_sensitive_data: - description: Whether the asset has access to sensitive data or not. - example: false - type: boolean - has_privileged_access: - description: Whether the asset has privileged access or not. - example: false - type: boolean - in_production: - description: Whether the asset is in production or not. - example: false - type: boolean - is_publicly_accessible: - description: Whether the asset is publicly accessible or not. - example: false - type: boolean - under_attack: - description: Whether the asset is under attack or not. - example: false - type: boolean - required: - - in_production - type: object - AssetType: - description: The asset type - enum: - - Repository - - Service - - Host - - HostImage - - Image - example: Repository - type: string - x-enum-varnames: - - REPOSITORY - - SERVICE - - HOST - - HOSTIMAGE - - IMAGE - AssetVersion: - description: Asset version. - properties: - first: - description: Asset first version. - example: _latest - type: string - last: - description: Asset last version. - example: _latest - type: string - type: object - AuditLogsEvent: - description: Object description of an Audit Logs event after it is processed - and stored by Datadog. - properties: - attributes: - $ref: '#/components/schemas/AuditLogsEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/AuditLogsEventType' - type: object - AuditLogsEventAttributes: - description: JSON object containing all event attributes and their associated - values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from Audit Logs events. - example: - customAttribute: 123 - duration: 2345 - type: object - message: - description: Message of the event. - type: string - service: - description: 'Name of the application or service generating Audit Logs events. - - This name is used to correlate Audit Logs to APM, so make sure you specify - the same - - value when you use both products.' - example: web-app - type: string - tags: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - timestamp: - description: Timestamp of your event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - AuditLogsEventType: - default: audit - description: Type of the event. - enum: - - audit - example: audit - type: string - x-enum-varnames: - - Audit - AuditLogsEventsResponse: - description: Response object with all events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/AuditLogsEvent' - type: array - links: - $ref: '#/components/schemas/AuditLogsResponseLinks' - meta: - $ref: '#/components/schemas/AuditLogsResponseMetadata' - type: object - AuditLogsQueryFilter: - description: Search and filter query settings. - properties: - from: - default: now-15m - description: Minimum time for the requested events. Supports date, math, - and regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: Search query following the Audit Logs search syntax. - example: '@type:session AND @session.type:user' - type: string - to: - default: now - description: Maximum time for the requested events. Supports date, math, - and regular timestamps (in milliseconds). - example: now - type: string - type: object - AuditLogsQueryOptions: - description: 'Global query options that are used during the query. - - Note: Specify either timezone or time offset, not both. Otherwise, the query - fails.' - properties: - time_offset: - description: Time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: The timezone can be specified as GMT, UTC, an offset from UTC - (like UTC+1), or as a Timezone Database identifier (like America/New_York). - example: GMT - type: string - type: object - AuditLogsQueryPageOptions: - description: Paging attributes for listing events. - properties: - cursor: - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - AuditLogsResponseLinks: - description: Links attributes. - properties: - next: - description: 'Link for the next set of results. Note that the request can - also be made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - AuditLogsResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: Time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/AuditLogsResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/AuditLogsResponseStatus' - warnings: - description: 'A list of warnings (non-fatal errors) encountered. Partial - results may return if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/AuditLogsWarning' - type: array - type: object - AuditLogsResponsePage: - description: Paging attributes. - properties: - after: - description: The cursor to use to get the next results, if any. To make - the next request, use the same parameters with the addition of `page[cursor]`. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - AuditLogsResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - AuditLogsSearchEventsRequest: - description: The request for a Audit Logs events list. - properties: - filter: - $ref: '#/components/schemas/AuditLogsQueryFilter' - options: - $ref: '#/components/schemas/AuditLogsQueryOptions' - page: - $ref: '#/components/schemas/AuditLogsQueryPageOptions' - sort: - $ref: '#/components/schemas/AuditLogsSort' - type: object - AuditLogsSort: - description: Sort parameters when querying events. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - AuditLogsWarning: - description: Warning message indicating something that went wrong with the query. - properties: - code: - description: Unique code for this type of warning. - example: unknown_index - type: string - detail: - description: Detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: Short human-readable summary of the warning. - example: One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - AuthNMapping: - description: The AuthN Mapping object returned by API. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingAttributes' - id: - description: ID of the AuthN Mapping. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/AuthNMappingRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - id - - type - type: object - AuthNMappingAttributes: - description: Attributes of AuthN Mapping. - properties: - attribute_key: - description: Key portion of a key/value pair of the attribute sent from - the Identity Provider. - example: member-of - type: string - attribute_value: - description: Value portion of a key/value pair of the attribute sent from - the Identity Provider. - example: Development - type: string - created_at: - description: Creation time of the AuthN Mapping. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last AuthN Mapping modification. - format: date-time - readOnly: true - type: string - saml_assertion_attribute_id: - description: The ID of the SAML assertion attribute. - example: '0' - type: string - type: object - AuthNMappingCreateAttributes: - description: Key/Value pair of attributes used for create request. - properties: - attribute_key: - description: Key portion of a key/value pair of the attribute sent from - the Identity Provider. - example: member-of - type: string - attribute_value: - description: Value portion of a key/value pair of the attribute sent from - the Identity Provider. - example: Development - type: string - type: object - AuthNMappingCreateData: - description: Data for creating an AuthN Mapping. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingCreateAttributes' - relationships: - $ref: '#/components/schemas/AuthNMappingCreateRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - type - type: object - AuthNMappingCreateRelationships: - description: Relationship of AuthN Mapping create object to a Role or Team. - oneOf: - - $ref: '#/components/schemas/AuthNMappingRelationshipToRole' - - $ref: '#/components/schemas/AuthNMappingRelationshipToTeam' - AuthNMappingCreateRequest: - description: Request for creating an AuthN Mapping. - properties: - data: - $ref: '#/components/schemas/AuthNMappingCreateData' - required: - - data - type: object - AuthNMappingIncluded: - description: Included data in the AuthN Mapping response. - oneOf: - - $ref: '#/components/schemas/SAMLAssertionAttribute' - - $ref: '#/components/schemas/Role' - - $ref: '#/components/schemas/AuthNMappingTeam' - AuthNMappingRelationshipToRole: - description: Relationship of AuthN Mapping to a Role. - properties: - role: - $ref: '#/components/schemas/RelationshipToRole' - required: - - role - type: object - AuthNMappingRelationshipToTeam: - description: Relationship of AuthN Mapping to a Team. - properties: - team: - $ref: '#/components/schemas/RelationshipToTeam' - required: - - team - type: object - AuthNMappingRelationships: - description: All relationships associated with AuthN Mapping. - properties: - role: - $ref: '#/components/schemas/RelationshipToRole' - saml_assertion_attribute: - $ref: '#/components/schemas/RelationshipToSAMLAssertionAttribute' - team: - $ref: '#/components/schemas/RelationshipToTeam' - type: object - AuthNMappingResourceType: - description: The type of resource being mapped to. - enum: - - role - - team - type: string - x-enum-varnames: - - ROLE - - TEAM - AuthNMappingResponse: - description: AuthN Mapping response from the API. - properties: - data: - $ref: '#/components/schemas/AuthNMapping' - included: - description: Included data in the AuthN Mapping response. - items: - $ref: '#/components/schemas/AuthNMappingIncluded' - type: array - type: object - AuthNMappingTeam: - description: Team. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingTeamAttributes' - id: - description: The ID of the Team. - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamType' - type: object - AuthNMappingTeamAttributes: - description: Team attributes. - properties: - avatar: - description: Unicode representation of the avatar for the team, limited - to a single grapheme - example: "\U0001F951" - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - link_count: - description: The number of links belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - summary: - description: A brief summary of the team, derived from the `description` - maxLength: 120 - nullable: true - type: string - user_count: - description: The number of users belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - type: object - AuthNMappingUpdateAttributes: - description: Key/Value pair of attributes used for update request. - properties: - attribute_key: - description: Key portion of a key/value pair of the attribute sent from - the Identity Provider. - example: member-of - type: string - attribute_value: - description: Value portion of a key/value pair of the attribute sent from - the Identity Provider. - example: Development - type: string - type: object - AuthNMappingUpdateData: - description: Data for updating an AuthN Mapping. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingUpdateAttributes' - id: - description: ID of the AuthN Mapping. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/AuthNMappingUpdateRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - id - - type - type: object - AuthNMappingUpdateRelationships: - description: Relationship of AuthN Mapping update object to a Role or Team. - oneOf: - - $ref: '#/components/schemas/AuthNMappingRelationshipToRole' - - $ref: '#/components/schemas/AuthNMappingRelationshipToTeam' - AuthNMappingUpdateRequest: - description: Request to update an AuthN Mapping. - properties: - data: - $ref: '#/components/schemas/AuthNMappingUpdateData' - required: - - data - type: object - AuthNMappingsResponse: - description: Array of AuthN Mappings response. - properties: - data: - description: Array of returned AuthN Mappings. - items: - $ref: '#/components/schemas/AuthNMapping' - type: array - included: - description: Included data in the AuthN Mapping response. - items: - $ref: '#/components/schemas/AuthNMappingIncluded' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - AuthNMappingsSort: - description: Sorting options for AuthN Mappings. - enum: - - created_at - - -created_at - - role_id - - -role_id - - saml_assertion_attribute_id - - -saml_assertion_attribute_id - - role.name - - -role.name - - saml_assertion_attribute.attribute_key - - -saml_assertion_attribute.attribute_key - - saml_assertion_attribute.attribute_value - - -saml_assertion_attribute.attribute_value - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - ROLE_ID_ASCENDING - - ROLE_ID_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_ID_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_ID_DESCENDING - - ROLE_NAME_ASCENDING - - ROLE_NAME_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_KEY_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_KEY_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_VALUE_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_VALUE_DESCENDING - AuthNMappingsType: - default: authn_mappings - description: AuthN Mappings resource type. - enum: - - authn_mappings - example: authn_mappings - type: string - x-enum-varnames: - - AUTHN_MAPPINGS - AwsAccountId: - description: The ID of the AWS account. - example: '123456789012' - type: string - AwsCURConfig: - description: AWS CUR config. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigAttributes' - id: - description: The ID of the AWS CUR config. - type: string - type: - $ref: '#/components/schemas/AwsCURConfigType' - required: - - attributes - - type - type: object - AwsCURConfigAttributes: - description: Attributes for An AWS CUR config. - properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - account_id: - description: The AWS account ID. - example: '123456789123' - type: string - bucket_name: - description: The AWS bucket name used to store the Cost and Usage Report. - example: dd-cost-bucket - type: string - bucket_region: - description: The region the bucket is located in. - example: us-east-1 - type: string - created_at: - description: The timestamp when the AWS CUR config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - error_messages: - description: The error messages for the AWS CUR config. - items: - type: string - type: array - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - report_name: - description: The name of the Cost and Usage Report. - example: dd-report-name - type: string - report_prefix: - description: The report prefix used for the Cost and Usage Report. - example: dd-report-prefix - type: string - status: - description: The status of the AWS CUR. - example: active - type: string - status_updated_at: - description: The timestamp when the AWS CUR config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - updated_at: - description: The timestamp when the AWS CUR config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - required: - - account_id - - bucket_name - - bucket_region - - report_name - - report_prefix - - status - type: object - AwsCURConfigPatchData: - description: AWS CUR config Patch data. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/AwsCURConfigPatchRequestType' - required: - - attributes - - type - type: object - AwsCURConfigPatchRequest: - description: AWS CUR config Patch Request. - properties: - data: - $ref: '#/components/schemas/AwsCURConfigPatchData' - required: - - data - type: object - AwsCURConfigPatchRequestAttributes: - description: Attributes for AWS CUR config Patch Request. - properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - type: object - AwsCURConfigPatchRequestType: - default: aws_cur_config_patch_request - description: Type of AWS CUR config Patch Request. - enum: - - aws_cur_config_patch_request - example: aws_cur_config_patch_request - type: string - x-enum-varnames: - - AWS_CUR_CONFIG_PATCH_REQUEST - AwsCURConfigPostData: - description: AWS CUR config Post data. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/AwsCURConfigPostRequestType' - required: - - attributes - - type - type: object - AwsCURConfigPostRequest: - description: AWS CUR config Post Request. - properties: - data: - $ref: '#/components/schemas/AwsCURConfigPostData' - required: - - data - type: object - AwsCURConfigPostRequestAttributes: - description: Attributes for AWS CUR config Post Request. - properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - account_id: - description: The AWS account ID. - example: '123456789123' - type: string - bucket_name: - description: The AWS bucket name used to store the Cost and Usage Report. - example: dd-cost-bucket - type: string - bucket_region: - description: The region the bucket is located in. - example: us-east-1 - type: string - months: - description: The month of the report. - format: int32 - maximum: 36 - type: integer - report_name: - description: The name of the Cost and Usage Report. - example: dd-report-name - type: string - report_prefix: - description: The report prefix used for the Cost and Usage Report. - example: dd-report-prefix - type: string - required: - - account_id - - bucket_name - - report_name - - report_prefix - type: object - AwsCURConfigPostRequestType: - default: aws_cur_config_post_request - description: Type of AWS CUR config Post Request. - enum: - - aws_cur_config_post_request - example: aws_cur_config_post_request - type: string - x-enum-varnames: - - AWS_CUR_CONFIG_POST_REQUEST - AwsCURConfigResponse: - description: Response of AWS CUR config. - properties: - data: - $ref: '#/components/schemas/AwsCURConfig' - type: object - AwsCURConfigType: - default: aws_cur_config - description: Type of AWS CUR config. - enum: - - aws_cur_config - example: aws_cur_config - type: string - x-enum-varnames: - - AWS_CUR_CONFIG - AwsCURConfigsResponse: - description: List of AWS CUR configs. - properties: - data: - description: An AWS CUR config. - items: - $ref: '#/components/schemas/AwsCURConfig' - type: array - type: object - AwsOnDemandAttributes: - description: Attributes for the AWS on demand task. - properties: - arn: - description: The arn of the resource to scan. - example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba - type: string - assigned_at: - description: Specifies the assignment timestamp if the task has been already - assigned to a scanner. - example: '2025-02-11T18:25:04.550564Z' - type: string - created_at: - description: The task submission timestamp. - example: '2025-02-11T18:13:24.576915Z' - type: string - status: - description: 'Indicates the status of the task. - - QUEUED: the task has been submitted successfully and the resource has - not been assigned to a scanner yet. - - ASSIGNED: the task has been assigned. - - ABORTED: the scan has been aborted after a period of time due to technical - reasons, such as resource not found, insufficient permissions, or the - absence of a configured scanner.' - example: QUEUED - type: string - type: object - AwsOnDemandCreateAttributes: - description: Attributes for the AWS on demand task. - properties: - arn: - description: The arn of the resource to scan. Agentless supports the scan - of EC2 instances, lambda functions, AMI, ECR, RDS and S3 buckets. - example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba - type: string - required: - - arn - type: object - AwsOnDemandCreateData: - description: Object for a single AWS on demand task. - properties: - attributes: - $ref: '#/components/schemas/AwsOnDemandCreateAttributes' - type: - $ref: '#/components/schemas/AwsOnDemandType' - required: - - type - - attributes - type: object - AwsOnDemandCreateRequest: - description: Request object that includes the on demand task to submit. - properties: - data: - $ref: '#/components/schemas/AwsOnDemandCreateData' - required: - - data - type: object - AwsOnDemandData: - description: Single AWS on demand task. - properties: - attributes: - $ref: '#/components/schemas/AwsOnDemandAttributes' - id: - description: The UUID of the task. - example: 6d09294c-9ad9-42fd-a759-a0c1599b4828 - type: string - type: - $ref: '#/components/schemas/AwsOnDemandType' - type: object - AwsOnDemandListResponse: - description: Response object that includes a list of AWS on demand tasks. - properties: - data: - description: A list of on demand tasks. - items: - $ref: '#/components/schemas/AwsOnDemandData' - type: array - type: object - AwsOnDemandResponse: - description: Response object that includes an AWS on demand task. - properties: - data: - $ref: '#/components/schemas/AwsOnDemandData' - type: object - AwsOnDemandType: - default: aws_resource - description: The type of the on demand task. The value should always be `aws_resource`. - enum: - - aws_resource - example: aws_resource - type: string - x-enum-varnames: - - AWS_RESOURCE - AwsScanOptionsAttributes: - description: Attributes for the AWS scan options. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is - enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - type: object - AwsScanOptionsCreateAttributes: - description: Attributes for the AWS scan options to create. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is - enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - required: - - lambda - - sensitive_data - - vuln_containers_os - - vuln_host_os - type: object - AwsScanOptionsCreateData: - description: Object for the scan options of a single AWS account. - properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsCreateAttributes' - id: - $ref: '#/components/schemas/AwsAccountId' - type: - $ref: '#/components/schemas/AwsScanOptionsType' - required: - - id - - type - - attributes - type: object - AwsScanOptionsCreateRequest: - description: Request object that includes the scan options to create. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsCreateData' - required: - - data - type: object - AwsScanOptionsData: - description: Single AWS Scan Options entry. - properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsAttributes' - id: - description: The ID of the AWS account. - example: '184366314700' - type: string - type: - $ref: '#/components/schemas/AwsScanOptionsType' - type: object - AwsScanOptionsListResponse: - description: Response object that includes a list of AWS scan options. - properties: - data: - description: A list of AWS scan options. - items: - $ref: '#/components/schemas/AwsScanOptionsData' - type: array - type: object - AwsScanOptionsResponse: - description: Response object that includes the scan options of an AWS account. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsData' - type: object - AwsScanOptionsType: - default: aws_scan_options - description: The type of the resource. The value should always be `aws_scan_options`. - enum: - - aws_scan_options - example: aws_scan_options - type: string - x-enum-varnames: - - AWS_SCAN_OPTIONS - AwsScanOptionsUpdateAttributes: - description: Attributes for the AWS scan options to update. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is - enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - type: object - AwsScanOptionsUpdateData: - description: Object for the scan options of a single AWS account. - properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsUpdateAttributes' - id: - $ref: '#/components/schemas/AwsAccountId' - type: - $ref: '#/components/schemas/AwsScanOptionsType' - required: - - id - - type - - attributes - type: object - AwsScanOptionsUpdateRequest: - description: Request object that includes the scan options to update. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsUpdateData' - required: - - data - type: object - AzureCredentials: - description: The definition of the `AzureCredentials` object. - oneOf: - - $ref: '#/components/schemas/AzureTenant' - AzureCredentialsUpdate: - description: The definition of the `AzureCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AzureTenantUpdate' - AzureIntegration: - description: The definition of the `AzureIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AzureCredentials' - type: - $ref: '#/components/schemas/AzureIntegrationType' - required: - - type - - credentials - type: object - AzureIntegrationType: - description: The definition of the `AzureIntegrationType` object. - enum: - - Azure - example: Azure - type: string - x-enum-varnames: - - AZURE - AzureIntegrationUpdate: - description: The definition of the `AzureIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AzureCredentialsUpdate' - type: - $ref: '#/components/schemas/AzureIntegrationType' - required: - - type - type: object - AzureStorageDestination: - description: The `azure_storage` destination forwards logs to an Azure Blob - Storage container. - properties: - blob_prefix: - description: Optional prefix for blobs written to the container. - example: logs/ - type: string - container_name: - description: The name of the Azure Blob Storage container to store logs - in. - example: my-log-container - type: string - id: - description: The unique identifier for this component. - example: azure-storage-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - processor-id - items: - type: string - type: array - type: - $ref: '#/components/schemas/AzureStorageDestinationType' - required: - - id - - type - - inputs - - container_name - type: object - AzureStorageDestinationType: - default: azure_storage - description: The destination type. The value should always be `azure_storage`. - enum: - - azure_storage - example: azure_storage - type: string - x-enum-varnames: - - AZURE_STORAGE - AzureTenant: - description: The definition of the `AzureTenant` object. - properties: - app_client_id: - description: 'The Client ID, also known as the Application ID in Azure, - is a unique identifier for an application. It''s used to identify the - application during the authentication process. Your Application (client) - ID is listed in the application''s overview page. You can navigate to - your application via the Azure Directory. ' - example: '' - type: string - client_secret: - description: "The Client Secret is a confidential piece of information known - only to the application and Azure AD. It's used to prove the application's - identity. Your Client Secret is available from the application\u2019s - secrets page. You can navigate to your application via the Azure Directory." - example: '' - type: string - custom_scopes: - description: If provided, the custom scope to be requested from Microsoft - when acquiring an OAuth 2 access token. This custom scope is used only - in conjunction with the HTTP action. A resource's scope is constructed - by using the identifier URI for the resource and .default, separated by - a forward slash (/) as follows:{identifierURI}/.default. - type: string - tenant_id: - description: The Tenant ID, also known as the Directory ID in Azure, is - a unique identifier that represents an Azure AD instance. Your Tenant - ID (Directory ID) is listed in your Active Directory overview page under - the 'Tenant information' section. - example: '' - type: string - type: - $ref: '#/components/schemas/AzureTenantType' - required: - - type - - tenant_id - - app_client_id - - client_secret - type: object - AzureTenantType: - description: The definition of the `AzureTenant` object. - enum: - - AzureTenant - example: AzureTenant - type: string - x-enum-varnames: - - AZURETENANT - AzureTenantUpdate: - description: The definition of the `AzureTenant` object. - properties: - app_client_id: - description: 'The Client ID, also known as the Application ID in Azure, - is a unique identifier for an application. It''s used to identify the - application during the authentication process. Your Application (client) - ID is listed in the application''s overview page. You can navigate to - your application via the Azure Directory. ' - type: string - client_secret: - description: "The Client Secret is a confidential piece of information known - only to the application and Azure AD. It's used to prove the application's - identity. Your Client Secret is available from the application\u2019s - secrets page. You can navigate to your application via the Azure Directory." - type: string - custom_scopes: - description: If provided, the custom scope to be requested from Microsoft - when acquiring an OAuth 2 access token. This custom scope is used only - in conjunction with the HTTP action. A resource's scope is constructed - by using the identifier URI for the resource and .default, separated by - a forward slash (/) as follows:{identifierURI}/.default. - type: string - tenant_id: - description: The Tenant ID, also known as the Directory ID in Azure, is - a unique identifier that represents an Azure AD instance. Your Tenant - ID (Directory ID) is listed in your Active Directory overview page under - the 'Tenant information' section. - type: string - type: - $ref: '#/components/schemas/AzureTenantType' - required: - - type - type: object - AzureUCConfig: - description: Azure config. - properties: - account_id: - description: The tenant ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - client_id: - description: The client ID of the Azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - created_at: - description: The timestamp when the Azure config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - dataset_type: - description: The dataset type of the Azure config. - example: actual - type: string - error_messages: - description: The error messages for the Azure config. - items: - type: string - type: array - export_name: - description: The name of the configured Azure Export. - example: dd-actual-export - type: string - export_path: - description: The path where the Azure Export is saved. - example: dd-export-path - type: string - id: - description: The ID of the Azure config. - type: string - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - scope: - description: The scope of your observed subscription. - example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 - type: string - status: - description: The status of the Azure config. - example: active - type: string - status_updated_at: - description: The timestamp when the Azure config status was last updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - storage_account: - description: The name of the storage account where the Azure Export is saved. - example: dd-storage-account - type: string - storage_container: - description: The name of the storage container where the Azure Export is - saved. - example: dd-storage-container - type: string - updated_at: - description: The timestamp when the Azure config was last updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - required: - - account_id - - client_id - - dataset_type - - export_name - - export_path - - scope - - status - - storage_account - - storage_container - type: object - AzureUCConfigPair: - description: Azure config pair. - properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPairAttributes' - id: - description: The ID of Cloud Cost Management account. - type: string - type: - $ref: '#/components/schemas/AzureUCConfigPairType' - required: - - attributes - - type - type: object - AzureUCConfigPairAttributes: - description: Attributes for Azure config pair. - properties: - configs: - description: An Azure config. - items: - $ref: '#/components/schemas/AzureUCConfig' - type: array - id: - description: The ID of the Azure config pair. - type: string - required: - - configs - type: object - AzureUCConfigPairType: - default: azure_uc_configs - description: Type of Azure config pair. - enum: - - azure_uc_configs - example: azure_uc_configs - type: string - x-enum-varnames: - - AZURE_UC_CONFIGS - AzureUCConfigPairsResponse: - description: Response of Azure config pair. - properties: - data: - $ref: '#/components/schemas/AzureUCConfigPair' - type: object - AzureUCConfigPatchData: - description: Azure config Patch data. - properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/AzureUCConfigPatchRequestType' - required: - - attributes - - type - type: object - AzureUCConfigPatchRequest: - description: Azure config Patch Request. - properties: - data: - $ref: '#/components/schemas/AzureUCConfigPatchData' - required: - - data - type: object - AzureUCConfigPatchRequestAttributes: - description: Attributes for Azure config Patch Request. - properties: - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - required: - - is_enabled - type: object - AzureUCConfigPatchRequestType: - default: azure_uc_config_patch_request - description: Type of Azure config Patch Request. - enum: - - azure_uc_config_patch_request - example: azure_uc_config_patch_request - type: string - x-enum-varnames: - - AZURE_UC_CONFIG_PATCH_REQUEST - AzureUCConfigPostData: - description: Azure config Post data. - properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/AzureUCConfigPostRequestType' - required: - - attributes - - type - type: object - AzureUCConfigPostRequest: - description: Azure config Post Request. - properties: - data: - $ref: '#/components/schemas/AzureUCConfigPostData' - required: - - data - type: object - AzureUCConfigPostRequestAttributes: - description: Attributes for Azure config Post Request. - properties: - account_id: - description: The tenant ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - actual_bill_config: - $ref: '#/components/schemas/BillConfig' - amortized_bill_config: - $ref: '#/components/schemas/BillConfig' - client_id: - description: The client ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - type: boolean - scope: - description: The scope of your observed subscription. - example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 - type: string - required: - - account_id - - actual_bill_config - - amortized_bill_config - - client_id - - scope - type: object - AzureUCConfigPostRequestType: - default: azure_uc_config_post_request - description: Type of Azure config Post Request. - enum: - - azure_uc_config_post_request - example: azure_uc_config_post_request - type: string - x-enum-varnames: - - AZURE_UC_CONFIG_POST_REQUEST - AzureUCConfigsResponse: - description: List of Azure accounts with configs. - properties: - data: - description: An Azure config pair. - items: - $ref: '#/components/schemas/AzureUCConfigPair' - type: array - type: object - BillConfig: - description: Bill config. - properties: - export_name: - description: The name of the configured Azure Export. - example: dd-actual-export - type: string - export_path: - description: The path where the Azure Export is saved. - example: dd-export-path - type: string - storage_account: - description: The name of the storage account where the Azure Export is saved. - example: dd-storage-account - type: string - storage_container: - description: The name of the storage container where the Azure Export is - saved. - example: dd-storage-container - type: string - required: - - export_name - - export_path - - storage_account - - storage_container - type: object - BillingDimensionsMappingBody: - description: Billing dimensions mapping data. - items: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItem' - type: array - BillingDimensionsMappingBodyItem: - description: The mapping data for each billing dimension. - properties: - attributes: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributes' - id: - description: ID of the billing dimension. - type: string - type: - $ref: '#/components/schemas/ActiveBillingDimensionsType' - type: object - BillingDimensionsMappingBodyItemAttributes: - description: Mapping of billing dimensions to endpoint keys. - properties: - endpoints: - description: List of supported endpoints with their keys mapped to the billing_dimension. - items: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItems' - type: array - in_app_label: - description: Label used for the billing dimension in the Plan & Usage charts. - example: APM Hosts - type: string - timestamp: - description: 'Month in ISO-8601 format, UTC, and precise to the second: - `[YYYY-MM-DDThh:mm:ss]`.' - format: date-time - type: string - type: object - BillingDimensionsMappingBodyItemAttributesEndpointsItems: - description: An endpoint's keys mapped to the billing_dimension. - properties: - id: - description: The URL for the endpoint. - example: api/v1/usage/billable-summary - type: string - keys: - description: The billing dimension. - example: - - apm_host_top99p - - apm_host_sum - items: - example: apm_host_top99p - type: string - type: array - status: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus' - type: object - BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus: - description: Denotes whether mapping keys were available for this endpoint. - enum: - - OK - - NOT_FOUND - type: string - x-enum-varnames: - - OK - - NOT_FOUND - BillingDimensionsMappingResponse: - description: Billing dimensions mapping response. - properties: - data: - $ref: '#/components/schemas/BillingDimensionsMappingBody' - type: object - Budget: - description: A budget. - properties: - attributes: - $ref: '#/components/schemas/BudgetAttributes' - id: - description: The id of the budget. - type: string - type: - description: The type of the object, must be `budget`. - type: string - type: object - BudgetArray: - description: An array of budgets. - example: - data: - - attributes: - created_at: 1741011342772 - created_by: user1 - end_month: 202502 - metrics_query: aws.cost.amortized{service:ec2} by {service} - name: my budget - org_id: 123 - start_month: 202501 - total_amount: 1000 - updated_at: 1741011342772 - updated_by: user2 - id: 00000000-0a0a-0a0a-aaa0-00000000000a - type: budget - properties: - data: - description: The `BudgetArray` `data`. - items: - $ref: '#/components/schemas/Budget' - type: array - type: object - BudgetAttributes: - description: The attributes of a budget. - properties: - created_at: - description: The timestamp when the budget was created. - example: 1738258683590 - format: int64 - type: integer - created_by: - description: The id of the user that created the budget. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - end_month: - description: The month when the budget ends. - example: 202502 - format: int64 - type: integer - entries: - description: The entries of the budget. - items: - $ref: '#/components/schemas/BudgetEntry' - type: array - metrics_query: - description: The cost query used to track against the budget. - example: aws.cost.amortized{service:ec2} by {service} - type: string - name: - description: The name of the budget. - example: my budget - type: string - org_id: - description: The id of the org the budget belongs to. - example: 123 - format: int64 - type: integer - start_month: - description: The month when the budget starts. - example: 202501 - format: int64 - type: integer - total_amount: - description: The sum of all budget entries' amounts. - example: 1000 - format: double - type: number - updated_at: - description: The timestamp when the budget was last updated. - example: 1738258683590 - format: int64 - type: integer - updated_by: - description: The id of the user that created the budget. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - type: object - BudgetEntry: - description: The entry of a budget. - properties: - amount: - description: The `amount` of the budget entry. - example: 500 - format: double - type: number - month: - description: The `month` of the budget entry. - example: 202501 - format: int64 - type: integer - tag_filters: - description: The `tag_filters` of the budget entry. - items: - $ref: '#/components/schemas/TagFilter' - type: array - type: object - BudgetWithEntries: - description: The definition of the `BudgetWithEntries` object. - properties: - data: - $ref: '#/components/schemas/BudgetWithEntriesData' - type: object - BudgetWithEntriesData: - description: A budget and all its entries. - properties: - attributes: - $ref: '#/components/schemas/BudgetAttributes' - id: - description: The `BudgetWithEntriesData` `id`. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - type: - description: The type of the object, must be `budget`. - type: string - type: object - BulkMuteFindingsRequest: - description: The new bulk mute finding request. - properties: - data: - $ref: '#/components/schemas/BulkMuteFindingsRequestData' - required: - - data - type: object - BulkMuteFindingsRequestAttributes: - additionalProperties: false - description: The mute properties to be updated. - properties: - mute: - $ref: '#/components/schemas/BulkMuteFindingsRequestProperties' - required: - - mute - type: object - BulkMuteFindingsRequestData: - description: Data object containing the new bulk mute properties of the finding. - properties: - attributes: - $ref: '#/components/schemas/BulkMuteFindingsRequestAttributes' - id: - description: UUID to identify the request - example: dbe5f567-192b-4404-b908-29b70e1c9f76 - type: string - meta: - $ref: '#/components/schemas/BulkMuteFindingsRequestMeta' - type: - $ref: '#/components/schemas/FindingType' - required: - - id - - type - - attributes - - meta - type: object - BulkMuteFindingsRequestMeta: - description: Meta object containing the findings to be updated. - properties: - findings: - description: Array of findings. - items: - $ref: '#/components/schemas/BulkMuteFindingsRequestMetaFindings' - type: array - type: object - BulkMuteFindingsRequestMetaFindings: - description: Finding object containing the finding information. - properties: - finding_id: - $ref: '#/components/schemas/FindingID' - type: object - BulkMuteFindingsRequestProperties: - additionalProperties: false - description: Object containing the new mute properties of the findings. - properties: - description: - description: Additional information about the reason why those findings - are muted or unmuted. This field has a maximum limit of 280 characters. - type: string - expiration_date: - description: 'The expiration date of the mute or unmute action (Unix ms). - It must be set to a value greater than the current timestamp. - - If this field is not provided, the finding will be muted or unmuted indefinitely, - which is equivalent to setting the expiration date to 9999999999999. - - ' - example: 1778721573794 - format: int64 - type: integer - muted: - description: Whether those findings should be muted or unmuted. - example: true - type: boolean - reason: - $ref: '#/components/schemas/FindingMuteReason' - required: - - muted - - reason - type: object - BulkMuteFindingsResponse: - description: The expected response schema. - properties: - data: - $ref: '#/components/schemas/BulkMuteFindingsResponseData' - required: - - data - type: object - BulkMuteFindingsResponseData: - description: Data object containing the ID of the request that was updated. - properties: - id: - description: UUID used to identify the request - example: 93bfeb70-af47-424d-908a-948d3f08e37f - type: string - type: - $ref: '#/components/schemas/FindingType' - type: object - BulkPutAppsDatastoreItemsRequest: - description: Request to insert multiple items into a datastore in a single operation. - properties: - data: - $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequestData' - type: object - BulkPutAppsDatastoreItemsRequestData: - description: Data wrapper containing the items to insert and their configuration - for the bulk insert operation. - properties: - attributes: - $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequestDataAttributes' - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - BulkPutAppsDatastoreItemsRequestDataAttributes: - description: Configuration for bulk inserting multiple items into a datastore. - properties: - conflict_mode: - $ref: '#/components/schemas/DatastoreItemConflictMode' - values: - $ref: '#/components/schemas/DatastoreItemValues' - required: - - values - type: object - CIAppAggregateBucketValue: - description: A bucket value, can either be a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/CIAppAggregateBucketValueSingleString' - - $ref: '#/components/schemas/CIAppAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseries' - CIAppAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - CIAppAggregateBucketValueSingleString: - description: A single string value. - type: string - CIAppAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - CIAppAggregateBucketValueTimeseriesPoint: - description: A timeseries point. - properties: - time: - description: The time value for this point. - example: '2020-06-08T11:55:00.123Z' - format: date-time - type: string - value: - description: The value for this point. - example: 19 - format: double - type: number - type: object - CIAppAggregateSort: - description: A sort rule. The `aggregation` field is required when `type` is - `measure`. - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/CIAppAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' - type: string - order: - $ref: '#/components/schemas/CIAppSortOrder' - type: - $ref: '#/components/schemas/CIAppAggregateSortType' - type: object - CIAppAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - CIAppAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - - latest - - earliest - - most_frequent - - delta - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - - LATEST - - EARLIEST - - MOST_FREQUENT - - DELTA - CIAppCIError: - description: Contains information of the CI error. - nullable: true - properties: - domain: - $ref: '#/components/schemas/CIAppCIErrorDomain' - message: - description: Error message. - maxLength: 5000 - nullable: true - type: string - stack: - description: The stack trace of the reported errors. - nullable: true - type: string - type: - description: Short description of the error type. - maxLength: 100 - nullable: true - type: string - type: object - CIAppCIErrorDomain: - description: Error category used to differentiate between issues related to - the developer or provider environments. - enum: - - provider - - user - - unknown - type: string - x-enum-varnames: - - PROVIDER - - USER - - UNKNOWN - CIAppCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/CIAppAggregationFunction' - interval: - description: 'The time buckets'' size (only used for type=timeseries) - - Defaults to a resolution of 150 points.' - example: 5m - type: string - metric: - description: The metric to use. - example: '@duration' - type: string - type: - $ref: '#/components/schemas/CIAppComputeType' - required: - - aggregation - type: object - CIAppComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - CIAppComputes: - additionalProperties: - $ref: '#/components/schemas/CIAppAggregateBucketValue' - description: A map of the metric name to value for regular compute, or a list - of values for a timeseries. - type: object - CIAppCreatePipelineEventRequest: - description: Request object. - properties: - data: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataSingleOrArray' - type: object - CIAppCreatePipelineEventRequestAttributes: - description: Attributes of the pipeline event to create. - properties: - env: - description: The Datadog environment. - type: string - provider_name: - description: The name of the CI provider. By default, this is "custom". - type: string - resource: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributesResource' - service: - description: If the CI provider is SaaS, use this to differentiate between - instances. - type: string - required: - - resource - type: object - CIAppCreatePipelineEventRequestAttributesResource: - description: Details of the CI pipeline event. - example: Details TBD - oneOf: - - $ref: '#/components/schemas/CIAppPipelineEventPipeline' - - $ref: '#/components/schemas/CIAppPipelineEventStage' - - $ref: '#/components/schemas/CIAppPipelineEventJob' - - $ref: '#/components/schemas/CIAppPipelineEventStep' - CIAppCreatePipelineEventRequestData: - description: Data of the pipeline event to create. - properties: - attributes: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributes' - type: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataType' - type: object - CIAppCreatePipelineEventRequestDataArray: - description: Array of pipeline events to create in batch. - items: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' - type: array - CIAppCreatePipelineEventRequestDataSingleOrArray: - description: Data of the pipeline events to create. - oneOf: - - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' - - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataArray' - CIAppCreatePipelineEventRequestDataType: - default: cipipeline_resource_request - description: Type of the event. - enum: - - cipipeline_resource_request - example: cipipeline_resource_request - type: string - x-enum-varnames: - - CIPIPELINE_RESOURCE_REQUEST - CIAppEventAttributes: - description: JSON object containing all event attributes and their associated - values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from CI Visibility test events. - example: - customAttribute: 123 - duration: 2345 - type: object - tags: - $ref: '#/components/schemas/TagsEventAttribute' - test_level: - $ref: '#/components/schemas/CIAppTestLevel' - type: object - CIAppGitInfo: - description: 'If pipelines are triggered due to actions to a Git repository, - then all payloads must contain this. - - Note that either `tag` or `branch` has to be provided, but not both.' - nullable: true - properties: - author_email: - description: The commit author email. - example: author@example.com - type: string - author_name: - description: The commit author name. - example: John Doe - nullable: true - type: string - author_time: - description: The commit author timestamp in RFC3339 format. - example: '2023-05-31T15:30:00Z' - nullable: true - type: string - branch: - description: The branch name (if a tag use the tag parameter). - example: feature-1 - nullable: true - type: string - commit_time: - description: The commit timestamp in RFC3339 format. - example: '2023-05-31T15:30:00Z' - nullable: true - type: string - committer_email: - description: The committer email. - example: committer@example.com - nullable: true - type: string - committer_name: - description: The committer name. - nullable: true - type: string - default_branch: - description: The Git repository's default branch. - example: main - nullable: true - type: string - message: - description: The commit message. - example: Instrumenting tests with CI Visibility. - nullable: true - type: string - repository_url: - description: The URL of the repository. - example: https://github.com/username/repository - type: string - sha: - description: The git commit SHA. - example: da39a3ee5e6b4b0d3255bfef95601890afd80709 - pattern: ^[a-fA-F0-9]{40}$ - type: string - tag: - description: The tag name (if a branch use the branch parameter). - example: v1.0.0 - nullable: true - type: string - required: - - repository_url - - sha - - author_email - type: object - CIAppGroupByHistogram: - description: 'Used to perform a histogram computation (only for measure facets). - - At most, 100 buckets are allowed, the number of buckets is `(max - min)/interval`.' - properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: 'The maximum value for the measure used in the histogram - - (values greater than this one are filtered out).' - example: 100 - format: double - type: number - min: - description: 'The minimum value for the measure used in the histogram - - (values smaller than this one are filtered out).' - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - CIAppGroupByMissing: - description: The value to use for logs that don't have the facet used to group-by. - oneOf: - - $ref: '#/components/schemas/CIAppGroupByMissingString' - - $ref: '#/components/schemas/CIAppGroupByMissingNumber' - CIAppGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - CIAppGroupByMissingString: - description: The missing value to use if there is a string valued facet. - type: string - CIAppGroupByTotal: - default: false - description: A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/CIAppGroupByTotalBoolean' - - $ref: '#/components/schemas/CIAppGroupByTotalString' - - $ref: '#/components/schemas/CIAppGroupByTotalNumber' - CIAppGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - CIAppGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - CIAppGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - CIAppHostInfo: - description: Contains information of the host running the pipeline, stage, job, - or step. - nullable: true - properties: - hostname: - description: FQDN of the host. - example: www.example.com - type: string - labels: - description: A list of labels used to select or identify the node. - example: - - ubuntu-18.04 - - n2.large - items: - type: string - type: array - name: - description: Name for the host. - type: string - workspace: - description: The path where the code is checked out. - example: /home/workspace/code/my-repo - type: string - type: object - CIAppPipelineEvent: - description: Object description of a pipeline event after being processed and - stored by Datadog. - properties: - attributes: - $ref: '#/components/schemas/CIAppPipelineEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/CIAppPipelineEventTypeName' - type: object - CIAppPipelineEventAttributes: - description: JSON object containing all event attributes and their associated - values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from CI Visibility pipeline events. - example: - customAttribute: 123 - duration: 2345 - type: object - ci_level: - $ref: '#/components/schemas/CIAppPipelineLevel' - tags: - $ref: '#/components/schemas/TagsEventAttribute' - type: object - CIAppPipelineEventFinishedPipeline: - description: Details of a finished pipeline. - properties: - end: - description: Time when the pipeline run finished. It cannot be older than - 18 hours in the past from the current time. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - is_manual: - description: Whether or not the pipeline was triggered manually by the user. - example: false - nullable: true - type: boolean - is_resumed: - description: Whether or not the pipeline was resumed after being blocked. - example: false - nullable: true - type: boolean - level: - $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: Name of the pipeline. All pipeline runs for the builds should - have the same name. - example: Deploy to AWS - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - parent_pipeline: - $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' - partial_retry: - description: 'Whether or not the pipeline was a partial retry of a previous - attempt. A partial retry is one - - which only runs a subset of the original jobs.' - example: false - type: boolean - pipeline_id: - description: 'Any ID used in the provider to identify the pipeline run even - if it is not unique across retries. - - If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` - can be set to the same value.' - example: '#023' - type: string - previous_attempt: - $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - start: - description: Time when the pipeline run started (it should not include any - queue time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventPipelineStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - unique_id: - description: 'UUID of the pipeline run. The ID has to be unique across retries - and pipelines, - - including partial retries.' - example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 - type: string - required: - - level - - unique_id - - name - - url - - start - - end - - status - - partial_retry - type: object - CIAppPipelineEventInProgressPipeline: - description: Details of a running pipeline. - properties: - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - is_manual: - description: Whether or not the pipeline was triggered manually by the user. - example: false - nullable: true - type: boolean - is_resumed: - description: Whether or not the pipeline was resumed after being blocked. - example: false - nullable: true - type: boolean - level: - $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: Name of the pipeline. All pipeline runs for the builds should - have the same name. - example: Deploy to AWS - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - parent_pipeline: - $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' - partial_retry: - description: 'Whether or not the pipeline was a partial retry of a previous - attempt. A partial retry is one - - which only runs a subset of the original jobs.' - example: false - type: boolean - pipeline_id: - description: 'Any ID used in the provider to identify the pipeline run even - if it is not unique across retries. - - If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` - can be set to the same value.' - example: '#023' - type: string - previous_attempt: - $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - start: - description: Time when the pipeline run started (it should not include any - queue time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventPipelineInProgressStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - unique_id: - description: UUID of the pipeline run. The ID has to be the same as the - finished pipeline. - example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 - type: string - required: - - level - - unique_id - - name - - url - - start - - status - - partial_retry - type: object - CIAppPipelineEventJob: - description: Details of a CI job. - properties: - dependencies: - description: A list of job IDs that this job depends on. - example: - - f7e6a006-a029-46c3-b0cc-742c9d7d363b - - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe - items: - description: A list of job IDs. - type: string - nullable: true - type: array - end: - description: Time when the job run finished. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - id: - description: The UUID for the job. It has to be unique within each pipeline - execution. - example: c865bad4-de82-44b8-ade7-2c987528eb54 - type: string - level: - $ref: '#/components/schemas/CIAppPipelineEventJobLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: The name for the job. - example: test - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - pipeline_name: - description: The parent pipeline name. - example: Build - type: string - pipeline_unique_id: - description: The parent pipeline UUID. - example: 76b572af-a078-42b2-a08a-cc28f98b944f - type: string - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - stage_id: - description: The parent stage UUID (if applicable). - nullable: true - type: string - stage_name: - description: The parent stage name (if applicable). - nullable: true - type: string - start: - description: Time when the job run instance started (it should not include - any queue time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventJobStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - url: - description: The URL to look at the job in the CI provider UI. - example: https://ci-platform.com/job/your-job-name/build/123 - type: string - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status - - url - type: object - CIAppPipelineEventJobLevel: - default: job - description: Used to distinguish between pipelines, stages, jobs, and steps. - enum: - - job - example: job - type: string - x-enum-varnames: - - JOB - CIAppPipelineEventJobStatus: - description: The final status of the job. - enum: - - success - - error - - canceled - - skipped - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - CIAppPipelineEventMetrics: - description: A list of user-defined metrics. The metrics must follow the `key:value` - pattern and the value must be numeric. - example: - - bundle_size:370 - - build_time:50021 - items: - description: Metrics in the form of `key:value`. The value needs to be numeric. - type: string - nullable: true - type: array - CIAppPipelineEventParameters: - additionalProperties: - type: string - description: A map of key-value parameters or environment variables that were - defined for the pipeline. - example: - LOG_LEVEL: debug - nullable: true - type: object - CIAppPipelineEventParentPipeline: - description: If the pipeline is triggered as child of another pipeline, this - should contain the details of the parent pipeline. - nullable: true - properties: - id: - description: UUID of a pipeline. - example: 93bfeb70-af47-424d-908a-948d3f08e37f - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://ci-platform.com/pipelines/123456789 - type: string - required: - - id - type: object - CIAppPipelineEventPipeline: - description: Details of the top level pipeline, build, or workflow of your CI. - oneOf: - - $ref: '#/components/schemas/CIAppPipelineEventFinishedPipeline' - - $ref: '#/components/schemas/CIAppPipelineEventInProgressPipeline' - CIAppPipelineEventPipelineInProgressStatus: - description: The in progress status of the pipeline. - enum: - - running - example: running - type: string - x-enum-varnames: - - RUNNING - CIAppPipelineEventPipelineLevel: - default: pipeline - description: Used to distinguish between pipelines, stages, jobs, and steps. - enum: - - pipeline - example: pipeline - type: string - x-enum-varnames: - - PIPELINE - CIAppPipelineEventPipelineStatus: - description: The final status of the pipeline. - enum: - - success - - error - - canceled - - skipped - - blocked - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - - BLOCKED - CIAppPipelineEventPreviousPipeline: - description: If the pipeline is a retry, this should contain the details of - the previous attempt. - nullable: true - properties: - id: - description: UUID of a pipeline. - example: 93bfeb70-af47-424d-908a-948d3f08e37f - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://ci-platform.com/pipelines/123456789 - type: string - required: - - id - type: object - CIAppPipelineEventStage: - description: Details of a CI stage. - properties: - dependencies: - description: A list of stage IDs that this stage depends on. - example: - - f7e6a006-a029-46c3-b0cc-742c9d7d363b - - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe - items: - description: A list of stage IDs. - type: string - nullable: true - type: array - end: - description: Time when the stage run finished. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - id: - description: UUID for the stage. It has to be unique at least in the pipeline - scope. - example: 562bdbbb-7cab-48c8-851c-b24ca14628bf - type: string - level: - $ref: '#/components/schemas/CIAppPipelineEventStageLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: The name for the stage. - example: build - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - pipeline_name: - description: The parent pipeline name. - example: Build - type: string - pipeline_unique_id: - description: The parent pipeline UUID. - example: 76b572af-a078-42b2-a08a-cc28f98b944f - type: string - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - start: - description: Time when the stage run started (it should not include any - queue time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventStageStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status - type: object - CIAppPipelineEventStageLevel: - default: stage - description: Used to distinguish between pipelines, stages, jobs and steps. - enum: - - stage - example: stage - type: string - x-enum-varnames: - - STAGE - CIAppPipelineEventStageStatus: - description: The final status of the stage. - enum: - - success - - error - - canceled - - skipped - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - CIAppPipelineEventStep: - description: Details of a CI step. - properties: - end: - description: Time when the step run finished. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - id: - description: UUID for the step. It has to be unique within each pipeline - execution. - example: c2d517a8-4f3a-4b41-b4ae-69df0c864c79 - type: string - job_id: - description: The parent job UUID (if applicable). - nullable: true - type: string - job_name: - description: The parent job name (if applicable). - nullable: true - type: string - level: - $ref: '#/components/schemas/CIAppPipelineEventStepLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: The name for the step. - example: test-server - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - pipeline_name: - description: The parent pipeline name. - example: Build - type: string - pipeline_unique_id: - description: The parent pipeline UUID. - example: 76b572af-a078-42b2-a08a-cc28f98b944f - type: string - stage_id: - description: The parent stage UUID (if applicable). - nullable: true - type: string - stage_name: - description: The parent stage name (if applicable). - nullable: true - type: string - start: - description: Time when the step run started. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventStepStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - url: - description: The URL to look at the step in the CI provider UI. - nullable: true - type: string - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status - type: object - CIAppPipelineEventStepLevel: - default: step - description: Used to distinguish between pipelines, stages, jobs and steps. - enum: - - step - example: step - type: string - x-enum-varnames: - - STEP - CIAppPipelineEventStepStatus: - description: The final status of the step. - enum: - - success - - error - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - CIAppPipelineEventTags: - description: A list of user-defined tags. The tags must follow the `key:value` - pattern. - example: - - team:backend - - type:deployment - items: - description: Tags in the form of `key:value`. - type: string - nullable: true - type: array - CIAppPipelineEventTypeName: - description: Type of the event. - enum: - - cipipeline - example: cipipeline - type: string - x-enum-varnames: - - CIPIPELINE - CIAppPipelineEventsRequest: - description: The request for a pipelines search. - properties: - filter: - $ref: '#/components/schemas/CIAppPipelinesQueryFilter' - options: - $ref: '#/components/schemas/CIAppQueryOptions' - page: - $ref: '#/components/schemas/CIAppQueryPageOptions' - sort: - $ref: '#/components/schemas/CIAppSort' - type: object - CIAppPipelineEventsResponse: - description: Response object with all pipeline events matching the request and - pagination information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/CIAppPipelineEvent' - type: array - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppPipelineLevel: - description: Pipeline execution level. - enum: - - pipeline - - stage - - job - - step - - custom - example: pipeline - type: string - x-enum-varnames: - - PIPELINE - - STAGE - - JOB - - STEP - - CUSTOM - CIAppPipelinesAggregateRequest: - description: The object sent with the request to retrieve aggregation buckets - of pipeline events from your organization. - properties: - compute: - description: The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/CIAppCompute' - type: array - filter: - $ref: '#/components/schemas/CIAppPipelinesQueryFilter' - group_by: - description: The rules for the group-by. - items: - $ref: '#/components/schemas/CIAppPipelinesGroupBy' - type: array - options: - $ref: '#/components/schemas/CIAppQueryOptions' - type: object - CIAppPipelinesAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/CIAppPipelinesBucketResponse' - type: array - type: object - CIAppPipelinesAnalyticsAggregateResponse: - description: The response object for the pipeline events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/CIAppPipelinesAggregationBucketsResponse' - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadata' - type: object - CIAppPipelinesBucketResponse: - description: Bucket values. - properties: - by: - additionalProperties: - description: The values for each group-by. - description: The key-value pairs for each group-by. - example: - '@ci.provider.name': gitlab - '@ci.status': success - type: object - computes: - $ref: '#/components/schemas/CIAppComputes' - type: object - CIAppPipelinesGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@ci.status' - type: string - histogram: - $ref: '#/components/schemas/CIAppGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/CIAppGroupByMissing' - sort: - $ref: '#/components/schemas/CIAppAggregateSort' - total: - $ref: '#/components/schemas/CIAppGroupByTotal' - required: - - facet - type: object - CIAppPipelinesQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: The minimum time for the requested events; supports date, math, - and regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the CI Visibility Explorer search - syntax. - example: '@ci.provider.name:github AND @ci.status:error' - type: string - to: - default: now - description: The maximum time for the requested events, supports date, math, - and regular timestamps (in milliseconds). - example: now - type: string - type: object - CIAppQueryOptions: - description: 'Global query options that are used during the query. - - Only supply timezone or time offset, not both. Otherwise, the query fails.' - properties: - time_offset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: The timezone can be specified as GMT, UTC, an offset from UTC - (like UTC+1), or as a Timezone Database identifier (like America/New_York). - example: GMT - type: string - type: object - CIAppQueryPageOptions: - description: Paging attributes for listing events. - properties: - cursor: - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - CIAppResponseLinks: - description: Links attributes. - properties: - next: - description: 'Link for the next set of results. The request can also be - made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/ci/tests/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - CIAppResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/CIAppResponseStatus' - warnings: - description: 'A list of warnings (non-fatal errors) encountered. Partial - results may return if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/CIAppWarning' - type: array - type: object - CIAppResponseMetadataWithPagination: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/CIAppResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/CIAppResponseStatus' - warnings: - description: 'A list of warnings (non-fatal errors) encountered. Partial - results may return if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/CIAppWarning' - type: array - type: object - CIAppResponsePage: - description: Paging attributes. - properties: - after: - description: The cursor to use to get the next results, if any. To make - the next request, use the same parameters with the addition of `page[cursor]`. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - CIAppResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - CIAppSort: - description: Sort parameters when querying events. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - CIAppSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - CIAppTestEvent: - description: Object description of test event after being processed and stored - by Datadog. - properties: - attributes: - $ref: '#/components/schemas/CIAppEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/CIAppTestEventTypeName' - type: object - CIAppTestEventTypeName: - description: Type of the event. - enum: - - citest - example: citest - type: string - x-enum-varnames: - - CITEST - CIAppTestEventsRequest: - description: The request for a tests search. - properties: - filter: - $ref: '#/components/schemas/CIAppTestsQueryFilter' - options: - $ref: '#/components/schemas/CIAppQueryOptions' - page: - $ref: '#/components/schemas/CIAppQueryPageOptions' - sort: - $ref: '#/components/schemas/CIAppSort' - type: object - CIAppTestEventsResponse: - description: Response object with all test events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/CIAppTestEvent' - type: array - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppTestLevel: - description: Test run level. - enum: - - session - - module - - suite - - test - example: test - type: string - x-enum-varnames: - - SESSION - - MODULE - - SUITE - - TEST - CIAppTestsAggregateRequest: - description: The object sent with the request to retrieve aggregation buckets - of test events from your organization. - properties: - compute: - description: The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/CIAppCompute' - type: array - filter: - $ref: '#/components/schemas/CIAppTestsQueryFilter' - group_by: - description: The rules for the group-by. - items: - $ref: '#/components/schemas/CIAppTestsGroupBy' - type: array - options: - $ref: '#/components/schemas/CIAppQueryOptions' - type: object - CIAppTestsAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/CIAppTestsBucketResponse' - type: array - type: object - CIAppTestsAnalyticsAggregateResponse: - description: The response object for the test events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/CIAppTestsAggregationBucketsResponse' - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppTestsBucketResponse: - description: Bucket values. - properties: - by: - additionalProperties: - description: The values for each group-by. - description: The key-value pairs for each group-by. - example: - '@test.service': web-ui-tests - '@test.status': skip - type: object - computes: - $ref: '#/components/schemas/CIAppComputes' - type: object - CIAppTestsGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@test.service' - type: string - histogram: - $ref: '#/components/schemas/CIAppGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/CIAppGroupByMissing' - sort: - $ref: '#/components/schemas/CIAppAggregateSort' - total: - $ref: '#/components/schemas/CIAppGroupByTotal' - required: - - facet - type: object - CIAppTestsQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: The minimum time for the requested events; supports date, math, - and regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the CI Visibility Explorer search - syntax. - example: '@test.service:web-ui-tests AND @test.status:fail' - type: string - to: - default: now - description: The maximum time for the requested events, supports date, math, - and regular timestamps (in milliseconds). - example: now - type: string - type: object - CIAppWarning: - description: A warning message indicating something that went wrong with the - query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - CSMAgentsMetadata: - description: Metadata related to the paginated response. - properties: - page_index: - description: The index of the current page in the paginated results. - example: 0 - format: int64 - type: integer - page_size: - description: The number of items per page in the paginated results. - example: 10 - format: int64 - type: integer - total_filtered: - description: Total number of items that match the filter criteria. - example: 128697 - format: int64 - type: integer - type: object - CSMAgentsType: - default: datadog_agent - description: The type of the resource. The value should always be `datadog_agent`. - enum: - - datadog_agent - example: datadog_agent - type: string - x-enum-varnames: - - DATADOG_AGENT - CVSS: - description: Vulnerability severity. - properties: - score: - description: Vulnerability severity score. - example: 4.5 - format: double - type: number - severity: - $ref: '#/components/schemas/VulnerabilitySeverity' - vector: - description: Vulnerability CVSS vector. - example: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H - type: string - required: - - score - - severity - - vector - type: object - CalculatedField: - description: Calculated field. - properties: - expression: - description: Expression. - example: '@request_end_timestamp - @request_start_timestamp' - type: string - name: - description: Field name. - example: response_time - type: string - required: - - name - - expression - type: object - CancelDataDeletionResponseBody: - description: The response from the cancel data deletion request endpoint. - properties: - data: - $ref: '#/components/schemas/DataDeletionResponseItem' - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' - type: object - Case: - description: A case - properties: - attributes: - $ref: '#/components/schemas/CaseAttributes' - id: - description: Case's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/CaseRelationships' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - id - - type - - attributes - type: object - Case3rdPartyTicketStatus: - default: IN_PROGRESS - description: Case status - enum: - - IN_PROGRESS - - COMPLETED - - FAILED - example: COMPLETED - readOnly: true - type: string - x-enum-varnames: - - IN_PROGRESS - - COMPLETED - - FAILED - CaseAssign: - description: Case assign - properties: - attributes: - $ref: '#/components/schemas/CaseAssignAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseAssignAttributes: - description: Case assign attributes - properties: - assignee_id: - description: Assignee's UUID - example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 - type: string - required: - - assignee_id - type: object - CaseAssignRequest: - description: Case assign request - properties: - data: - $ref: '#/components/schemas/CaseAssign' - required: - - data - type: object - CaseAttributes: - description: Case resource attributes - properties: - archived_at: - description: Timestamp of when the case was archived - format: date-time - nullable: true - readOnly: true - type: string - attributes: - $ref: '#/components/schemas/CaseObjectAttributes' - closed_at: - description: Timestamp of when the case was closed - format: date-time - nullable: true - readOnly: true - type: string - created_at: - description: Timestamp of when the case was created - format: date-time - readOnly: true - type: string - description: - description: Description - type: string - jira_issue: - $ref: '#/components/schemas/JiraIssue' - key: - description: Key - example: CASEM-4523 - type: string - modified_at: - description: Timestamp of when the case was last modified - format: date-time - nullable: true - readOnly: true - type: string - priority: - $ref: '#/components/schemas/CasePriority' - service_now_ticket: - $ref: '#/components/schemas/ServiceNowTicket' - status: - $ref: '#/components/schemas/CaseStatus' - title: - description: Title - example: Memory leak investigation on API - type: string - type: - $ref: '#/components/schemas/CaseType' - type: object - CaseCreate: - description: Case creation data - properties: - attributes: - $ref: '#/components/schemas/CaseCreateAttributes' - relationships: - $ref: '#/components/schemas/CaseCreateRelationships' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseCreateAttributes: - description: Case creation attributes - properties: - description: - description: Description - type: string - priority: - $ref: '#/components/schemas/CasePriority' - title: - description: Title - example: Security breach investigation - type: string - type: - $ref: '#/components/schemas/CaseType' - required: - - title - - type - type: object - CaseCreateRelationships: - description: Relationships formed with the case on creation - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - required: - - project - type: object - CaseCreateRequest: - description: Case create request - properties: - data: - $ref: '#/components/schemas/CaseCreate' - required: - - data - type: object - CaseEmpty: - description: Case empty request data - properties: - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - type - type: object - CaseEmptyRequest: - description: Case empty request - properties: - data: - $ref: '#/components/schemas/CaseEmpty' - required: - - data - type: object - CaseObjectAttributes: - additionalProperties: - items: - type: string - type: array - description: The definition of `CaseObjectAttributes` object. - type: object - CasePriority: - default: NOT_DEFINED - description: Case priority - enum: - - NOT_DEFINED - - P1 - - P2 - - P3 - - P4 - - P5 - example: NOT_DEFINED - type: string - x-enum-varnames: - - NOT_DEFINED - - P1 - - P2 - - P3 - - P4 - - P5 - CaseRelationships: - description: Resources related to a case - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - created_by: - $ref: '#/components/schemas/NullableUserRelationship' - modified_by: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - type: object - CaseResourceType: - default: case - description: Case resource type - enum: - - case - example: case - type: string - x-enum-varnames: - - CASE - CaseResponse: - description: Case response - properties: - data: - $ref: '#/components/schemas/Case' - type: object - CaseSortableField: - description: Case field that can be sorted on - enum: - - created_at - - priority - - status - example: created_at - type: string - x-enum-varnames: - - CREATED_AT - - PRIORITY - - STATUS - CaseStatus: - description: Case status - enum: - - OPEN - - IN_PROGRESS - - CLOSED - example: OPEN - type: string - x-enum-varnames: - - OPEN - - IN_PROGRESS - - CLOSED - CaseTrigger: - description: Trigger a workflow from a Case. For automatic triggering a handle - must be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - CaseTriggerWrapper: - description: Schema for a Case-based trigger. - properties: - caseTrigger: - $ref: '#/components/schemas/CaseTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - caseTrigger - type: object - CaseType: - description: Case type - enum: - - STANDARD - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - CaseUpdateAttributes: - description: Case update attributes - properties: - attributes: - $ref: '#/components/schemas/CaseUpdateAttributesAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseUpdateAttributesAttributes: - description: Case update attributes attributes - properties: - attributes: - $ref: '#/components/schemas/CaseObjectAttributes' - required: - - attributes - type: object - CaseUpdateAttributesRequest: - description: Case update attributes request - properties: - data: - $ref: '#/components/schemas/CaseUpdateAttributes' - required: - - data - type: object - CaseUpdatePriority: - description: Case priority status - properties: - attributes: - $ref: '#/components/schemas/CaseUpdatePriorityAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseUpdatePriorityAttributes: - description: Case update priority attributes - properties: - priority: - $ref: '#/components/schemas/CasePriority' - required: - - priority - type: object - CaseUpdatePriorityRequest: - description: Case update priority request - properties: - data: - $ref: '#/components/schemas/CaseUpdatePriority' - required: - - data - type: object - CaseUpdateStatus: - description: Case update status - properties: - attributes: - $ref: '#/components/schemas/CaseUpdateStatusAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseUpdateStatusAttributes: - description: Case update status attributes - properties: - status: - $ref: '#/components/schemas/CaseStatus' - required: - - status - type: object - CaseUpdateStatusRequest: - description: Case update status request - properties: - data: - $ref: '#/components/schemas/CaseUpdateStatus' - required: - - data - type: object - CasesResponse: - description: Response with cases - properties: - data: - description: Cases response data - items: - $ref: '#/components/schemas/Case' - type: array - meta: - $ref: '#/components/schemas/CasesResponseMeta' - type: object - CasesResponseMeta: - description: Cases response metadata - properties: - page: - $ref: '#/components/schemas/CasesResponseMetaPagination' - type: object - CasesResponseMetaPagination: - description: Pagination metadata - properties: - current: - description: Current page number - format: int64 - type: integer - size: - description: Number of cases in current page - format: int64 - type: integer - total: - description: Total number of pages - format: int64 - type: integer - type: object - ChangeEventAttributes: - description: Change event attributes. - properties: - aggregation_key: - $ref: '#/components/schemas/V2EventAggregationKey' - author: - $ref: '#/components/schemas/ChangeEventAttributesAuthor' - change_metadata: - description: JSON object of change metadata. - example: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - type: object - changed_resource: - $ref: '#/components/schemas/ChangeEventAttributesChangedResource' - evt: - $ref: '#/components/schemas/EventSystemAttributes' - impacted_resources: - description: A list of resources impacted by this change. - example: - - name: service-name - type: service - items: - $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItem' - type: array - new_value: - description: The new state of the changed resource. - example: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - type: object - prev_value: - description: The previous state of the changed resource. - example: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - type: object - service: - $ref: '#/components/schemas/V2EventService' - timestamp: - $ref: '#/components/schemas/V2EventTimestamp' - title: - $ref: '#/components/schemas/V2EventTitle' - type: object - ChangeEventAttributesAuthor: - description: The entity that made the change. - properties: - name: - description: The name of the user or system that made the change. - example: example@datadog.com - type: string - type: - $ref: '#/components/schemas/ChangeEventAttributesAuthorType' - type: object - ChangeEventAttributesAuthorType: - description: The type of the author. - enum: - - user - - system - - api - - automation - example: user - type: string - x-enum-varnames: - - USER - - SYSTEM - - API - - AUTOMATION - ChangeEventAttributesChangedResource: - description: A uniquely identified resource. - properties: - name: - description: The name of the changed resource. - type: string - type: - $ref: '#/components/schemas/ChangeEventAttributesChangedResourceType' - type: object - ChangeEventAttributesChangedResourceType: - description: The type of the changed resource. - enum: - - feature_flag - - configuration - example: feature_flag - type: string - x-enum-varnames: - - FEATURE_FLAG - - CONFIGURATION - ChangeEventAttributesImpactedResourcesItem: - description: A uniquely identified resource. - properties: - name: - description: The name of the impacted resource. - type: string - type: - $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItemType' - type: object - ChangeEventAttributesImpactedResourcesItemType: - description: The type of the impacted resource. - enum: - - service - type: string - x-enum-varnames: - - SERVICE - ChangeEventCustomAttributes: - additionalProperties: false - description: Change event attributes. - properties: - author: - $ref: '#/components/schemas/ChangeEventCustomAttributesAuthor' - change_metadata: - additionalProperties: {} - description: Free form JSON object with information related to the `change` - event. Supports up to 100 properties per object and a maximum nesting - depth of 10 levels. - example: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - resource_link: datadog.com/feature/fallback_payments_test - type: object - changed_resource: - $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResource' - impacted_resources: - description: 'A list of resources impacted by this change. It is recommended - to provide an impacted resource to display - - the change event at the correct location. Only resources of type `service` - are supported. Maximum of 100 impacted resources allowed.' - example: - - name: payments_api - type: service - items: - $ref: '#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItems' - maxItems: 100 - type: array - new_value: - additionalProperties: {} - description: Free form JSON object representing the new state of the changed - resource. - example: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - type: object - prev_value: - additionalProperties: {} - description: Free form JSON object representing the previous state of the - changed resource. - example: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - type: object - required: - - changed_resource - type: object - ChangeEventCustomAttributesAuthor: - additionalProperties: false - description: The entity that made the change. Optional, if provided it must - include `type` and `name`. - properties: - name: - description: The name of the user or system that made the change. Limited - to 128 characters. - example: example@datadog.com - maxLength: 128 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/ChangeEventCustomAttributesAuthorType' - required: - - name - - type - type: object - ChangeEventCustomAttributesAuthorType: - description: Author's type. - enum: - - user - - system - - api - - automation - example: user - type: string - x-enum-varnames: - - USER - - SYSTEM - - API - - AUTOMATION - ChangeEventCustomAttributesChangedResource: - additionalProperties: false - description: A uniquely identified resource. - properties: - name: - description: The name of the resource that was changed. Limited to 128 characters. - example: fallback_payments_test - maxLength: 128 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResourceType' - required: - - type - - name - type: object - ChangeEventCustomAttributesChangedResourceType: - description: The type of the resource that was changed. - enum: - - feature_flag - - configuration - example: feature_flag - type: string - x-enum-varnames: - - FEATURE_FLAG - - CONFIGURATION - ChangeEventCustomAttributesImpactedResourcesItems: - additionalProperties: false - description: Object representing a uniquely identified resource. - properties: - name: - description: The name of the impacted resource. Limited to 128 characters. - example: payments_api - maxLength: 128 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItemsType' - required: - - type - - name - type: object - ChangeEventCustomAttributesImpactedResourcesItemsType: - description: The type of the impacted resource. - enum: - - service - example: service - type: string - x-enum-varnames: - - SERVICE - ChangeEventTriggerWrapper: - description: Schema for a Change Event-based trigger. - properties: - changeEventTrigger: - description: Trigger a workflow from a Change Event. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - changeEventTrigger - type: object - ChargebackBreakdown: - description: Charges breakdown. - properties: - charge_type: - description: The type of charge for a particular product. - example: on_demand - type: string - cost: - description: The cost for a particular product and charge type during a - given month. - format: double - type: number - product_name: - description: The product for which cost is being reported. - example: infra_host - type: string - type: object - CircleCIAPIKey: - description: The definition of the `CircleCIAPIKey` object. - properties: - api_token: - description: The `CircleCIAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/CircleCIAPIKeyType' - required: - - type - - api_token - type: object - CircleCIAPIKeyType: - description: The definition of the `CircleCIAPIKey` object. - enum: - - CircleCIAPIKey - example: CircleCIAPIKey - type: string - x-enum-varnames: - - CIRCLECIAPIKEY - CircleCIAPIKeyUpdate: - description: The definition of the `CircleCIAPIKey` object. - properties: - api_token: - description: The `CircleCIAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/CircleCIAPIKeyType' - required: - - type - type: object - CircleCICredentials: - description: The definition of the `CircleCICredentials` object. - oneOf: - - $ref: '#/components/schemas/CircleCIAPIKey' - CircleCICredentialsUpdate: - description: The definition of the `CircleCICredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/CircleCIAPIKeyUpdate' - CircleCIIntegration: - description: The definition of the `CircleCIIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/CircleCICredentials' - type: - $ref: '#/components/schemas/CircleCIIntegrationType' - required: - - type - - credentials - type: object - CircleCIIntegrationType: - description: The definition of the `CircleCIIntegrationType` object. - enum: - - CircleCI - example: CircleCI - type: string - x-enum-varnames: - - CIRCLECI - CircleCIIntegrationUpdate: - description: The definition of the `CircleCIIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/CircleCICredentialsUpdate' - type: - $ref: '#/components/schemas/CircleCIIntegrationType' - required: - - type - type: object - ClickupAPIKey: - description: The definition of the `ClickupAPIKey` object. - properties: - api_token: - description: The `ClickupAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/ClickupAPIKeyType' - required: - - type - - api_token - type: object - ClickupAPIKeyType: - description: The definition of the `ClickupAPIKey` object. - enum: - - ClickupAPIKey - example: ClickupAPIKey - type: string - x-enum-varnames: - - CLICKUPAPIKEY - ClickupAPIKeyUpdate: - description: The definition of the `ClickupAPIKey` object. - properties: - api_token: - description: The `ClickupAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/ClickupAPIKeyType' - required: - - type - type: object - ClickupCredentials: - description: The definition of the `ClickupCredentials` object. - oneOf: - - $ref: '#/components/schemas/ClickupAPIKey' - ClickupCredentialsUpdate: - description: The definition of the `ClickupCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ClickupAPIKeyUpdate' - ClickupIntegration: - description: The definition of the `ClickupIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/ClickupCredentials' - type: - $ref: '#/components/schemas/ClickupIntegrationType' - required: - - type - - credentials - type: object - ClickupIntegrationType: - description: The definition of the `ClickupIntegrationType` object. - enum: - - Clickup - example: Clickup - type: string - x-enum-varnames: - - CLICKUP - ClickupIntegrationUpdate: - description: The definition of the `ClickupIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/ClickupCredentialsUpdate' - type: - $ref: '#/components/schemas/ClickupIntegrationType' - required: - - type - type: object - CloudConfigurationComplianceRuleOptions: - additionalProperties: {} - description: 'Options for cloud_configuration rules. - - Fields `resourceType` and `regoRule` are mandatory when managing custom `cloud_configuration` - rules. - - ' - properties: - complexRule: - description: 'Whether the rule is a complex one. - - Must be set to true if `regoRule.resourceTypes` contains more than one - item. Defaults to false. - - ' - type: boolean - regoRule: - $ref: '#/components/schemas/CloudConfigurationRegoRule' - resourceType: - description: 'Main resource type to be checked by the rule. It should be - specified again in `regoRule.resourceTypes`. - - ' - example: aws_acm - type: string - type: object - CloudConfigurationRegoRule: - description: Rule details. - properties: - policy: - description: 'The policy written in `rego`, see: https://www.openpolicyagent.org/docs/latest/policy-language/' - example: "package datadog\n\nimport data.datadog.output as dd_output\nimport - future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) - = \"skip\" if {\n # Logic that evaluates to true if the resource should - be skipped\n true\n} else = \"pass\" {\n # Logic that evaluates to true - if the resource is compliant\n true\n} else = \"fail\" {\n # Logic that - evaluates to true if the resource is not compliant\n true\n}\n\n# This - part remains unchanged for all rules\nresults contains result if {\n some - resource in input.resources[input.main_resource_type]\n result := dd_output.format(resource, - eval(resource))\n}\n" - type: string - resourceTypes: - description: List of resource types that will be evaluated upon. Must have - at least one element. - example: - - gcp_iam_service_account - - gcp_iam_policy - items: - type: string - type: array - required: - - policy - - resourceTypes - type: object - CloudConfigurationRuleCaseCreate: - description: Description of signals. - properties: - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - CloudConfigurationRuleComplianceSignalOptions: - description: How to generate compliance signals. Useful for cloud_configuration - rules only. - properties: - defaultActivationStatus: - description: The default activation status. - nullable: true - type: boolean - defaultGroupByFields: - description: The default group by fields. - items: - type: string - nullable: true - type: array - userActivationStatus: - description: Whether signals will be sent. - nullable: true - type: boolean - userGroupByFields: - description: Fields to use to group findings by when sending signals. - items: - type: string - nullable: true - type: array - type: object - CloudConfigurationRuleCreatePayload: - description: Create a new cloud configuration rule. - properties: - cases: - description: 'Description of generated findings and signals (severity and - channels to be notified in case of a signal). Must contain exactly one - item. - - ' - items: - $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - filters: - description: Additional queries to filter matched events before they are - processed. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message in markdown format for generated findings and signals. - example: '#Description - - Explanation of the rule. - - - #Remediation - - How to fix the security issue. - - ' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/CloudConfigurationRuleOptions' - tags: - description: Tags for generated findings and signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/CloudConfigurationRuleType' - required: - - name - - isEnabled - - options - - complianceSignalOptions - - cases - - message - type: object - CloudConfigurationRuleOptions: - description: Options on cloud configuration rules. - properties: - complianceRuleOptions: - $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' - required: - - complianceRuleOptions - type: object - CloudConfigurationRulePayload: - description: The payload of a cloud configuration rule. - properties: - cases: - description: 'Description of generated findings and signals (severity and - channels to be notified in case of a signal). Must contain exactly one - item. - - ' - items: - $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - customMessage: - description: Custom/Overridden message for generated signals (used in case - of Default rule update). - type: string - customName: - description: Custom/Overridden name of the rule (used in case of Default - rule update). - type: string - filters: - description: Additional queries to filter matched events before they are - processed. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message in markdown format for generated findings and signals. - example: '#Description - - Explanation of the rule. - - - #Remediation - - How to fix the security issue. - - ' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/CloudConfigurationRuleOptions' - tags: - description: Tags for generated findings and signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/CloudConfigurationRuleType' - required: - - name - - isEnabled - - options - - complianceSignalOptions - - cases - - message - type: object - CloudConfigurationRuleType: - description: The rule type. - enum: - - cloud_configuration - type: string - x-enum-varnames: - - CLOUD_CONFIGURATION - CloudWorkloadSecurityAgentPoliciesListResponse: - description: Response object that includes a list of Agent policies - properties: - data: - description: A list of Agent policy objects - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyData' - type: array - type: object - CloudWorkloadSecurityAgentPolicyAttributes: - description: A Cloud Workload Security Agent policy returned by the API - properties: - blockingRulesCount: - description: The number of rules with the blocking feature in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - datadogManaged: - description: Whether the policy is managed by Datadog - example: false - type: boolean - description: - description: The description of the policy - example: My agent policy - type: string - disabledRulesCount: - description: The number of rules that are disabled in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - enabled: - description: Whether the Agent policy is enabled - example: true - type: boolean - hostTags: - description: The host tags defining where this policy is deployed - items: - type: string - type: array - hostTagsLists: - description: The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR - items: - items: - type: string - type: array - type: array - monitoringRulesCount: - description: The number of rules in the monitoring state in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - name: - description: The name of the policy - example: my_agent_policy - type: string - policyVersion: - description: The version of the policy - example: '1' - type: string - priority: - description: The priority of the policy - example: 10 - format: int64 - type: integer - ruleCount: - description: The number of rules in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - updateDate: - description: Timestamp in milliseconds when the policy was last updated - example: 1624366480320 - format: int64 - type: integer - updatedAt: - description: When the policy was last updated, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - updater: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdaterAttributes' - type: object - CloudWorkloadSecurityAgentPolicyCreateAttributes: - description: Create a new Cloud Workload Security Agent policy - properties: - description: - description: The description of the policy - example: My agent policy - type: string - enabled: - description: Whether the policy is enabled - example: true - type: boolean - hostTags: - description: The host tags defining where this policy is deployed - items: - type: string - type: array - hostTagsLists: - description: The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR - items: - items: - type: string - type: array - type: array - name: - description: The name of the policy - example: my_agent_policy - type: string - required: - - name - type: object - CloudWorkloadSecurityAgentPolicyCreateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateAttributes' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentPolicyCreateRequest: - description: Request object that includes the Agent policy to create - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateData' - required: - - data - type: object - CloudWorkloadSecurityAgentPolicyData: - description: Object for a single Agent policy - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyAttributes' - id: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - type: string - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' - type: object - CloudWorkloadSecurityAgentPolicyID: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - type: string - CloudWorkloadSecurityAgentPolicyResponse: - description: Response object that includes an Agent policy - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyData' - type: object - CloudWorkloadSecurityAgentPolicyType: - default: policy - description: The type of the resource, must always be `policy` - enum: - - policy - example: policy - type: string - x-enum-varnames: - - POLICY - CloudWorkloadSecurityAgentPolicyUpdateAttributes: - description: Update an existing Cloud Workload Security Agent policy - properties: - description: - description: The description of the policy - example: My agent policy - type: string - enabled: - description: Whether the policy is enabled - example: true - type: boolean - hostTags: - description: The host tags defining where this policy is deployed - items: - type: string - type: array - hostTagsLists: - description: The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR - items: - items: - type: string - type: array - type: array - name: - description: The name of the policy - example: my_agent_policy - type: string - type: object - CloudWorkloadSecurityAgentPolicyUpdateData: - description: Object for a single Agent policy - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateAttributes' - id: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyID' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentPolicyUpdateRequest: - description: Request object that includes the Agent policy with the attributes - to update - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateData' - required: - - data - type: object - CloudWorkloadSecurityAgentPolicyUpdaterAttributes: - description: The attributes of the user who last updated the policy - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - CloudWorkloadSecurityAgentRuleAction: - description: The action the rule can perform if triggered - properties: - filter: - description: SECL expression used to target the container to apply the action - on - type: string - hash: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionHash' - kill: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleKill' - metadata: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionMetadata' - set: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSet' - type: object - CloudWorkloadSecurityAgentRuleActionHash: - additionalProperties: {} - description: An empty object indicating the hash action - type: object - CloudWorkloadSecurityAgentRuleActionMetadata: - description: The metadata action applied on the scope matching the rule - properties: - image_tag: - description: The image tag of the metadata action - type: string - service: - description: The service of the metadata action - type: string - short_image: - description: The short image of the metadata action - type: string - type: object - CloudWorkloadSecurityAgentRuleActionSet: - description: The set action applied on the scope matching the rule - properties: - append: - description: Whether the value should be appended to the field - type: boolean - field: - description: The field of the set action - type: string - name: - description: The name of the set action - type: string - scope: - description: The scope of the set action - type: string - size: - description: The size of the set action - format: int64 - type: integer - ttl: - description: The time to live of the set action - format: int64 - type: integer - value: - description: The value of the set action - type: string - type: object - CloudWorkloadSecurityAgentRuleActions: - description: The array of actions the rule can perform if triggered - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' - nullable: true - type: array - CloudWorkloadSecurityAgentRuleAttributes: - description: A Cloud Workload Security Agent rule returned by the API - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - agentConstraint: - description: The version of the Agent - type: string - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - category: - description: The category of the Agent rule - example: Process Activity - type: string - creationAuthorUuId: - description: The ID of the user who created the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - creationDate: - description: When the Agent rule was created, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - creator: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreatorAttributes' - defaultRule: - description: Whether the rule is included by default - example: false - type: boolean - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on - items: - type: string - type: array - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - name: - description: The name of the Agent rule - example: my_agent_rule - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - updateAuthorUuId: - description: The ID of the user who updated the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - updateDate: - description: Timestamp in milliseconds when the Agent rule was last updated - example: 1624366480320 - format: int64 - type: integer - updatedAt: - description: When the Agent rule was last updated, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - updater: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdaterAttributes' - version: - description: The version of the Agent rule - example: 23 - format: int64 - type: integer - type: object - CloudWorkloadSecurityAgentRuleCreateAttributes: - description: Create a new Cloud Workload Security Agent rule. - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - description: - description: The description of the Agent rule. - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule. - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on - items: - type: string - type: array - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - name: - description: The name of the Agent rule. - example: my_agent_rule - type: string - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - required: - - name - - expression - type: object - CloudWorkloadSecurityAgentRuleCreateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentRuleCreateRequest: - description: Request object that includes the Agent rule to create - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateData' - required: - - data - type: object - CloudWorkloadSecurityAgentRuleCreatorAttributes: - description: The attributes of the user who created the Agent rule - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - CloudWorkloadSecurityAgentRuleData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAttributes' - id: - description: The ID of the Agent rule - example: 3dd-0uc-h1s - type: string - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - type: object - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3dd-0uc-h1s - type: string - CloudWorkloadSecurityAgentRuleKill: - description: Kill system call applied on the container matching the rule - properties: - signal: - description: Supported signals for the kill system call - type: string - type: object - CloudWorkloadSecurityAgentRuleResponse: - description: Response object that includes an Agent rule - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: object - CloudWorkloadSecurityAgentRuleType: - default: agent_rule - description: The type of the resource, must always be `agent_rule` - enum: - - agent_rule - example: agent_rule - type: string - x-enum-varnames: - - AGENT_RULE - CloudWorkloadSecurityAgentRuleUpdateAttributes: - description: Update an existing Cloud Workload Security Agent rule - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" - type: string - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - type: object - CloudWorkloadSecurityAgentRuleUpdateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes' - id: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleID' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentRuleUpdateRequest: - description: Request object that includes the Agent rule with the attributes - to update - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData' - required: - - data - type: object - CloudWorkloadSecurityAgentRuleUpdaterAttributes: - description: The attributes of the user who last updated the Agent rule - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - CloudWorkloadSecurityAgentRulesListResponse: - description: Response object that includes a list of Agent rule - properties: - data: - description: A list of Agent rules objects - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: array - type: object - CloudflareAPIToken: - description: The definition of the `CloudflareAPIToken` object. - properties: - api_token: - description: The `CloudflareAPIToken` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/CloudflareAPITokenType' - required: - - type - - api_token - type: object - CloudflareAPITokenType: - description: The definition of the `CloudflareAPIToken` object. - enum: - - CloudflareAPIToken - example: CloudflareAPIToken - type: string - x-enum-varnames: - - CLOUDFLAREAPITOKEN - CloudflareAPITokenUpdate: - description: The definition of the `CloudflareAPIToken` object. - properties: - api_token: - description: The `CloudflareAPITokenUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/CloudflareAPITokenType' - required: - - type - type: object - CloudflareAccountCreateRequest: - description: Payload schema when adding a Cloudflare account. - properties: - data: - $ref: '#/components/schemas/CloudflareAccountCreateRequestData' - required: - - data - type: object - CloudflareAccountCreateRequestAttributes: - description: Attributes object for creating a Cloudflare account. - properties: - api_key: - description: The API key (or token) for the Cloudflare account. - example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - type: string - email: - description: The email associated with the Cloudflare account. If an API - key is provided (and not a token), this field is also required. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - example: test-name - type: string - resources: - description: An allowlist of resources to restrict pulling metrics for including - `'web', 'dns', 'lb' (load balancer), 'worker'`. - example: - - web - - dns - - lb - - worker - items: - type: string - type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 - items: - type: string - type: array - required: - - api_key - - name - type: object - CloudflareAccountCreateRequestData: - description: Data object for creating a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/CloudflareAccountType' - required: - - attributes - - type - type: object - CloudflareAccountResponse: - description: The expected response schema when getting a Cloudflare account. - properties: - data: - $ref: '#/components/schemas/CloudflareAccountResponseData' - type: object - CloudflareAccountResponseAttributes: - description: Attributes object of a Cloudflare account. - properties: - email: - description: The email associated with the Cloudflare account. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - example: test-name - type: string - resources: - description: An allowlist of resources, such as `web`, `dns`, `lb` (load - balancer), `worker`, that restricts pulling metrics from those resources. - example: - - web - - dns - - lb - - worker - items: - type: string - type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 - items: - type: string - type: array - required: - - name - type: object - CloudflareAccountResponseData: - description: Data object of a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountResponseAttributes' - id: - description: The ID of the Cloudflare account, a hash of the account name. - example: c1a8e059bfd1e911cf10b626340c9a54 - type: string - type: - $ref: '#/components/schemas/CloudflareAccountType' - required: - - attributes - - id - - type - type: object - CloudflareAccountType: - default: cloudflare-accounts - description: The JSON:API type for this API. Should always be `cloudflare-accounts`. - enum: - - cloudflare-accounts - example: cloudflare-accounts - type: string - x-enum-varnames: - - CLOUDFLARE_ACCOUNTS - CloudflareAccountUpdateRequest: - description: Payload schema when updating a Cloudflare account. - properties: - data: - $ref: '#/components/schemas/CloudflareAccountUpdateRequestData' - required: - - data - type: object - CloudflareAccountUpdateRequestAttributes: - description: Attributes object for updating a Cloudflare account. - properties: - api_key: - description: The API key of the Cloudflare account. - example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - type: string - email: - description: The email associated with the Cloudflare account. If an API - key is provided (and not a token), this field is also required. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - type: string - resources: - description: An allowlist of resources to restrict pulling metrics for including - `'web', 'dns', 'lb' (load balancer), 'worker'`. - example: - - web - - dns - - lb - - worker - items: - type: string - type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 - items: - type: string - type: array - required: - - api_key - type: object - CloudflareAccountUpdateRequestData: - description: Data object for updating a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/CloudflareAccountType' - type: object - CloudflareAccountsResponse: - description: The expected response schema when getting Cloudflare accounts. - properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/CloudflareAccountResponseData' - type: array - type: object - CloudflareCredentials: - description: The definition of the `CloudflareCredentials` object. - oneOf: - - $ref: '#/components/schemas/CloudflareAPIToken' - - $ref: '#/components/schemas/CloudflareGlobalAPIToken' - CloudflareCredentialsUpdate: - description: The definition of the `CloudflareCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/CloudflareAPITokenUpdate' - - $ref: '#/components/schemas/CloudflareGlobalAPITokenUpdate' - CloudflareGlobalAPIToken: - description: The definition of the `CloudflareGlobalAPIToken` object. - properties: - auth_email: - description: The `CloudflareGlobalAPIToken` `auth_email`. - example: '' - type: string - global_api_key: - description: The `CloudflareGlobalAPIToken` `global_api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/CloudflareGlobalAPITokenType' - required: - - type - - auth_email - - global_api_key - type: object - CloudflareGlobalAPITokenType: - description: The definition of the `CloudflareGlobalAPIToken` object. - enum: - - CloudflareGlobalAPIToken - example: CloudflareGlobalAPIToken - type: string - x-enum-varnames: - - CLOUDFLAREGLOBALAPITOKEN - CloudflareGlobalAPITokenUpdate: - description: The definition of the `CloudflareGlobalAPIToken` object. - properties: - auth_email: - description: The `CloudflareGlobalAPITokenUpdate` `auth_email`. - type: string - global_api_key: - description: The `CloudflareGlobalAPITokenUpdate` `global_api_key`. - type: string - type: - $ref: '#/components/schemas/CloudflareGlobalAPITokenType' - required: - - type - type: object - CloudflareIntegration: - description: The definition of the `CloudflareIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/CloudflareCredentials' - type: - $ref: '#/components/schemas/CloudflareIntegrationType' - required: - - type - - credentials - type: object - CloudflareIntegrationType: - description: The definition of the `CloudflareIntegrationType` object. - enum: - - Cloudflare - example: Cloudflare - type: string - x-enum-varnames: - - CLOUDFLARE - CloudflareIntegrationUpdate: - description: The definition of the `CloudflareIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/CloudflareCredentialsUpdate' - type: - $ref: '#/components/schemas/CloudflareIntegrationType' - required: - - type - type: object - CodeLocation: - description: Code vulnerability location. - properties: - file_path: - description: Vulnerability location file path. - example: src/Class.java:100 - type: string - location: - description: Vulnerability extracted location. - example: com.example.Class:100 - type: string - method: - description: Vulnerability location method. - example: FooBar - type: string - required: - - location - type: object - CompletionCondition: - description: The definition of `CompletionCondition` object. - properties: - operand1: - description: The `CompletionCondition` `operand1`. - operand2: - description: The `CompletionCondition` `operand2`. - operator: - $ref: '#/components/schemas/CompletionConditionOperator' - required: - - operand1 - - operator - type: object - CompletionConditionOperator: - description: The definition of `CompletionConditionOperator` object. - enum: - - OPERATOR_EQUAL - - OPERATOR_NOT_EQUAL - - OPERATOR_GREATER_THAN - - OPERATOR_LESS_THAN - - OPERATOR_GREATER_THAN_OR_EQUAL_TO - - OPERATOR_LESS_THAN_OR_EQUAL_TO - - OPERATOR_CONTAINS - - OPERATOR_DOES_NOT_CONTAIN - - OPERATOR_IS_NULL - - OPERATOR_IS_NOT_NULL - - OPERATOR_IS_EMPTY - - OPERATOR_IS_NOT_EMPTY - example: OPERATOR_EQUAL - type: string - x-enum-varnames: - - OPERATOR_EQUAL - - OPERATOR_NOT_EQUAL - - OPERATOR_GREATER_THAN - - OPERATOR_LESS_THAN - - OPERATOR_GREATER_THAN_OR_EQUAL_TO - - OPERATOR_LESS_THAN_OR_EQUAL_TO - - OPERATOR_CONTAINS - - OPERATOR_DOES_NOT_CONTAIN - - OPERATOR_IS_NULL - - OPERATOR_IS_NOT_NULL - - OPERATOR_IS_EMPTY - - OPERATOR_IS_NOT_EMPTY - CompletionGate: - description: Used to create conditions before running subsequent actions. - properties: - completionCondition: - $ref: '#/components/schemas/CompletionCondition' - retryStrategy: - $ref: '#/components/schemas/RetryStrategy' - required: - - completionCondition - - retryStrategy - type: object - Component: - description: '[Definition of a UI component in the app](https://docs.datadoghq.com/service_management/app_builder/components/)' - properties: - events: - description: Events to listen for on the UI component. - items: - $ref: '#/components/schemas/AppBuilderEvent' - type: array - id: - description: The ID of the UI component. This property is deprecated; use - `name` to identify individual components instead. - nullable: true - type: string - name: - description: A unique identifier for this UI component. This name is also - visible in the app editor. - example: '' - type: string - properties: - $ref: '#/components/schemas/ComponentProperties' - type: - $ref: '#/components/schemas/ComponentType' - required: - - name - - type - - properties - type: object - ComponentGrid: - description: A grid component. The grid component is the root canvas for an - app and contains all other components. - properties: - events: - description: Events to listen for on the grid component. - items: - $ref: '#/components/schemas/AppBuilderEvent' - type: array - id: - description: The ID of the grid component. This property is deprecated; - use `name` to identify individual components instead. - type: string - name: - description: A unique identifier for this grid component. This name is also - visible in the app editor. - example: '' - type: string - properties: - $ref: '#/components/schemas/ComponentGridProperties' - type: - $ref: '#/components/schemas/ComponentGridType' - required: - - name - - type - - properties - type: object - ComponentGridProperties: - description: Properties of a grid component. - properties: - backgroundColor: - default: default - description: The background color of the grid. - type: string - children: - description: The child components of the grid. - items: - $ref: '#/components/schemas/Component' - type: array - isVisible: - $ref: '#/components/schemas/ComponentGridPropertiesIsVisible' - type: object - ComponentGridPropertiesIsVisible: - description: Whether the grid component and its children are visible. If a string, - it must be a valid JavaScript expression that evaluates to a boolean. - oneOf: - - type: string - - default: true - type: boolean - ComponentGridType: - default: grid - description: The grid component type. - enum: - - grid - example: grid - type: string - x-enum-varnames: - - GRID - ComponentProperties: - additionalProperties: {} - description: Properties of a UI component. Different component types can have - their own additional unique properties. See the [components documentation](https://docs.datadoghq.com/service_management/app_builder/components/) - for more detail on each component type and its properties. - properties: - children: - description: The child components of the UI component. - items: - $ref: '#/components/schemas/Component' - type: array - isVisible: - $ref: '#/components/schemas/ComponentPropertiesIsVisible' - type: object - ComponentPropertiesIsVisible: - description: Whether the UI component is visible. If this is a string, it must - be a valid JavaScript expression that evaluates to a boolean. - oneOf: - - type: boolean - - description: If this is a string, it must be a valid JavaScript expression - that evaluates to a boolean. - example: ${true} - type: string - ComponentRecommendation: - description: Resource recommendation for a single Spark component (driver or - executor). Contains estimation data used to patch Spark job specs. - properties: - estimation: - $ref: '#/components/schemas/Estimation' - required: - - estimation - type: object - ComponentType: - description: The UI component type. - enum: - - table - - textInput - - textArea - - button - - text - - select - - modal - - schemaForm - - checkbox - - tabs - - vegaChart - - radioButtons - - numberInput - - fileInput - - jsonInput - - gridCell - - dateRangePicker - - search - - container - - calloutValue - example: text - type: string - x-enum-varnames: - - TABLE - - TEXTINPUT - - TEXTAREA - - BUTTON - - TEXT - - SELECT - - MODAL - - SCHEMAFORM - - CHECKBOX - - TABS - - VEGACHART - - RADIOBUTTONS - - NUMBERINPUT - - FILEINPUT - - JSONINPUT - - GRIDCELL - - DATERANGEPICKER - - SEARCH - - CONTAINER - - CALLOUTVALUE - ConfigCatCredentials: - description: The definition of the `ConfigCatCredentials` object. - oneOf: - - $ref: '#/components/schemas/ConfigCatSDKKey' - ConfigCatCredentialsUpdate: - description: The definition of the `ConfigCatCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ConfigCatSDKKeyUpdate' - ConfigCatIntegration: - description: The definition of the `ConfigCatIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/ConfigCatCredentials' - type: - $ref: '#/components/schemas/ConfigCatIntegrationType' - required: - - type - - credentials - type: object - ConfigCatIntegrationType: - description: The definition of the `ConfigCatIntegrationType` object. - enum: - - ConfigCat - example: ConfigCat - type: string - x-enum-varnames: - - CONFIGCAT - ConfigCatIntegrationUpdate: - description: The definition of the `ConfigCatIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/ConfigCatCredentialsUpdate' - type: - $ref: '#/components/schemas/ConfigCatIntegrationType' - required: - - type - type: object - ConfigCatSDKKey: - description: The definition of the `ConfigCatSDKKey` object. - properties: - api_password: - description: The `ConfigCatSDKKey` `api_password`. - example: '' - type: string - api_username: - description: The `ConfigCatSDKKey` `api_username`. - example: '' - type: string - sdk_key: - description: The `ConfigCatSDKKey` `sdk_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/ConfigCatSDKKeyType' - required: - - type - - sdk_key - - api_username - - api_password - type: object - ConfigCatSDKKeyType: - description: The definition of the `ConfigCatSDKKey` object. - enum: - - ConfigCatSDKKey - example: ConfigCatSDKKey - type: string - x-enum-varnames: - - CONFIGCATSDKKEY - ConfigCatSDKKeyUpdate: - description: The definition of the `ConfigCatSDKKey` object. - properties: - api_password: - description: The `ConfigCatSDKKeyUpdate` `api_password`. - type: string - api_username: - description: The `ConfigCatSDKKeyUpdate` `api_username`. - type: string - sdk_key: - description: The `ConfigCatSDKKeyUpdate` `sdk_key`. - type: string - type: - $ref: '#/components/schemas/ConfigCatSDKKeyType' - required: - - type - type: object - ConfluentAccountCreateRequest: - description: Payload schema when adding a Confluent account. - properties: - data: - $ref: '#/components/schemas/ConfluentAccountCreateRequestData' - required: - - data - type: object - ConfluentAccountCreateRequestAttributes: - description: Attributes associated with the account creation request. - properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - api_secret: - description: The API secret associated with your Confluent account. - example: test-api-secret-123 - type: string - resources: - description: A list of Confluent resources associated with the Confluent - account. - items: - $ref: '#/components/schemas/ConfluentAccountResourceAttributes' - type: array - tags: - description: A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - api_key - - api_secret - type: object - ConfluentAccountCreateRequestData: - description: The data body for adding a Confluent account. - properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - type - type: object - ConfluentAccountResourceAttributes: - description: Attributes object for updating a Confluent resource. - properties: - enable_custom_metrics: - default: false - description: Enable the `custom.consumer_lag_offset` metric, which contains - extra metric tags. - example: false - type: boolean - id: - description: The ID associated with a Confluent resource. - example: resource-id-123 - type: string - resource_type: - description: The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type - type: object - ConfluentAccountResponse: - description: The expected response schema when getting a Confluent account. - properties: - data: - $ref: '#/components/schemas/ConfluentAccountResponseData' - type: object - ConfluentAccountResponseAttributes: - description: The attributes of a Confluent account. - properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - resources: - description: A list of Confluent resources associated with the Confluent - account. - items: - $ref: '#/components/schemas/ConfluentResourceResponseAttributes' - type: array - tags: - description: A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - api_key - type: object - ConfluentAccountResponseData: - description: An API key and API secret pair that represents a Confluent account. - properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountResponseAttributes' - id: - description: A randomly generated ID associated with a Confluent account. - example: account_id_abc123 - type: string - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - id - - type - type: object - ConfluentAccountType: - default: confluent-cloud-accounts - description: The JSON:API type for this API. Should always be `confluent-cloud-accounts`. - enum: - - confluent-cloud-accounts - example: confluent-cloud-accounts - type: string - x-enum-varnames: - - CONFLUENT_CLOUD_ACCOUNTS - ConfluentAccountUpdateRequest: - description: The JSON:API request for updating a Confluent account. - properties: - data: - $ref: '#/components/schemas/ConfluentAccountUpdateRequestData' - required: - - data - type: object - ConfluentAccountUpdateRequestAttributes: - description: Attributes object for updating a Confluent account. - properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - api_secret: - description: The API secret associated with your Confluent account. - example: test-api-secret-123 - type: string - tags: - description: A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - api_key - - api_secret - type: object - ConfluentAccountUpdateRequestData: - description: Data object for updating a Confluent account. - properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - type - type: object - ConfluentAccountsResponse: - description: Confluent account returned by the API. - properties: - data: - description: The Confluent account. - items: - $ref: '#/components/schemas/ConfluentAccountResponseData' - type: array - type: object - ConfluentResourceRequest: - description: The JSON:API request for updating a Confluent resource. - properties: - data: - $ref: '#/components/schemas/ConfluentResourceRequestData' - required: - - data - type: object - ConfluentResourceRequestAttributes: - description: Attributes object for updating a Confluent resource. - properties: - enable_custom_metrics: - default: false - description: Enable the `custom.consumer_lag_offset` metric, which contains - extra metric tags. - example: false - type: boolean - resource_type: - description: The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type - type: object - ConfluentResourceRequestData: - description: JSON:API request for updating a Confluent resource. - properties: - attributes: - $ref: '#/components/schemas/ConfluentResourceRequestAttributes' - id: - description: The ID associated with a Confluent resource. - example: resource-id-123 - type: string - type: - $ref: '#/components/schemas/ConfluentResourceType' - required: - - attributes - - type - - id - type: object - ConfluentResourceResponse: - description: Response schema when interacting with a Confluent resource. - properties: - data: - $ref: '#/components/schemas/ConfluentResourceResponseData' - type: object - ConfluentResourceResponseAttributes: - description: Model representation of a Confluent Cloud resource. - properties: - enable_custom_metrics: - default: false - description: Enable the `custom.consumer_lag_offset` metric, which contains - extra metric tags. - example: false - type: boolean - id: - description: The ID associated with the Confluent resource. - example: resource_id_abc123 - type: string - resource_type: - description: The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type - type: object - ConfluentResourceResponseData: - description: Confluent Cloud resource data. - properties: - attributes: - $ref: '#/components/schemas/ConfluentResourceResponseAttributes' - id: - description: The ID associated with the Confluent resource. - example: resource_id_abc123 - type: string - type: - $ref: '#/components/schemas/ConfluentResourceType' - required: - - attributes - - type - - id - type: object - ConfluentResourceType: - default: confluent-cloud-resources - description: The JSON:API type for this request. - enum: - - confluent-cloud-resources - example: confluent-cloud-resources - type: string - x-enum-varnames: - - CONFLUENT_CLOUD_RESOURCES - ConfluentResourcesResponse: - description: Response schema when interacting with a list of Confluent resources. - properties: - data: - description: The JSON:API data attribute. - items: - $ref: '#/components/schemas/ConfluentResourceResponseData' - type: array - type: object - Connection: - description: The definition of `Connection` object. - properties: - connectionId: - description: The `Connection` `connectionId`. - example: '' - type: string - label: - description: The `Connection` `label`. - example: '' - type: string - required: - - connectionId - - label - type: object - ConnectionEnv: - description: A list of connections or connection groups used in the workflow. - properties: - connectionGroups: - description: The `ConnectionEnv` `connectionGroups`. - items: - $ref: '#/components/schemas/ConnectionGroup' - type: array - connections: - description: The `ConnectionEnv` `connections`. - items: - $ref: '#/components/schemas/Connection' - type: array - env: - $ref: '#/components/schemas/ConnectionEnvEnv' - required: - - env - type: object - ConnectionEnvEnv: - description: The definition of `ConnectionEnvEnv` object. - enum: - - default - example: default - type: string - x-enum-varnames: - - DEFAULT - ConnectionGroup: - description: The definition of `ConnectionGroup` object. - properties: - connectionGroupId: - description: The `ConnectionGroup` `connectionGroupId`. - example: '' - type: string - label: - description: The `ConnectionGroup` `label`. - example: '' - type: string - tags: - description: The `ConnectionGroup` `tags`. - example: - - '' - items: - type: string - type: array - required: - - connectionGroupId - - label - - tags - type: object - Container: - description: Container object. - properties: - attributes: - $ref: '#/components/schemas/ContainerAttributes' - id: - description: Container ID. - type: string - type: - $ref: '#/components/schemas/ContainerType' - type: object - ContainerAttributes: - description: Attributes for a container. - properties: - container_id: - description: The ID of the container. - type: string - created_at: - description: Time the container was created. - type: string - host: - description: Hostname of the host running the container. - type: string - image_digest: - description: Digest of the compressed image manifest. - nullable: true - type: string - image_name: - description: Name of the associated container image. - type: string - image_tags: - description: List of image tags associated with the container image. - items: - type: string - nullable: true - type: array - name: - description: Name of the container. - type: string - started_at: - description: Time the container was started. - type: string - state: - description: State of the container. This depends on the container runtime. - type: string - tags: - description: List of tags associated with the container. - items: - type: string - type: array - type: object - ContainerGroup: - description: Container group object. - properties: - attributes: - $ref: '#/components/schemas/ContainerGroupAttributes' - id: - description: Container Group ID. - type: string - relationships: - $ref: '#/components/schemas/ContainerGroupRelationships' - type: - $ref: '#/components/schemas/ContainerGroupType' - type: object - ContainerGroupAttributes: - description: Attributes for a container group. - properties: - count: - description: Number of containers in the group. - format: int64 - type: integer - tags: - description: Tags from the group name parsed in key/value format. - type: object - type: object - ContainerGroupRelationships: - description: Relationships to containers inside a container group. - properties: - containers: - $ref: '#/components/schemas/ContainerGroupRelationshipsLink' - type: object - ContainerGroupRelationshipsData: - description: Links data. - items: - description: A link data. - type: string - type: array - ContainerGroupRelationshipsLink: - description: Relationships to Containers inside a Container Group. - properties: - data: - $ref: '#/components/schemas/ContainerGroupRelationshipsData' - links: - $ref: '#/components/schemas/ContainerGroupRelationshipsLinks' - type: object - ContainerGroupRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Link to related containers. - type: string - type: object - ContainerGroupType: - default: container_group - description: Type of container group. - enum: - - container_group - example: container_group - type: string - x-enum-varnames: - - CONTAINER_GROUP - ContainerImage: - description: Container Image object. - properties: - attributes: - $ref: '#/components/schemas/ContainerImageAttributes' - id: - description: Container Image ID. - type: string - type: - $ref: '#/components/schemas/ContainerImageType' - type: object - ContainerImageAttributes: - description: Attributes for a Container Image. - properties: - container_count: - description: Number of containers running the image. - format: int64 - type: integer - image_flavors: - description: 'List of platform-specific images associated with the image - record. - - The list contains more than 1 entry for multi-architecture images.' - items: - $ref: '#/components/schemas/ContainerImageFlavor' - type: array - image_tags: - description: List of image tags associated with the Container Image. - items: - description: An image tag associated with the Container Image. - type: string - type: array - images_built_at: - description: 'List of build times associated with the Container Image. - - The list contains more than 1 entry for multi-architecture images.' - items: - description: Time the platform-specific Container Image was built. - type: string - type: array - name: - description: Name of the Container Image. - type: string - os_architectures: - description: List of Operating System architectures supported by the Container - Image. - items: - description: Operating System architecture supported by the Container - Image. - example: amd64 - type: string - type: array - os_names: - description: List of Operating System names supported by the Container Image. - items: - description: Operating System supported by the Container Image. - example: linux - type: string - type: array - os_versions: - description: List of Operating System versions supported by the Container - Image. - items: - description: Operating System version supported by the Container Image. - type: string - type: array - published_at: - description: Time the image was pushed to the container registry. - type: string - registry: - description: Registry the Container Image was pushed to. - type: string - repo_digest: - description: Digest of the compressed image manifest. - type: string - repository: - description: Repository where the Container Image is stored in. - type: string - short_image: - description: Short version of the Container Image name. - type: string - sizes: - description: 'List of size for each platform-specific image associated with - the image record. - - The list contains more than 1 entry for multi-architecture images.' - items: - description: Size of the platform-specific Container Image. - format: int64 - type: integer - type: array - sources: - description: List of sources where the Container Image was collected from. - items: - description: Source where the Container Image was collected from. - type: string - type: array - tags: - description: List of tags associated with the Container Image. - items: - description: A tag associated with the Container Image. - type: string - type: array - vulnerability_count: - $ref: '#/components/schemas/ContainerImageVulnerabilities' - type: object - ContainerImageFlavor: - description: Container Image breakdown by supported platform. - properties: - built_at: - description: Time the platform-specific Container Image was built. - type: string - os_architecture: - description: Operating System architecture supported by the Container Image. - type: string - os_name: - description: Operating System name supported by the Container Image. - type: string - os_version: - description: Operating System version supported by the Container Image. - type: string - size: - description: Size of the platform-specific Container Image. - format: int64 - type: integer - type: object - ContainerImageGroup: - description: Container Image Group object. - properties: - attributes: - $ref: '#/components/schemas/ContainerImageGroupAttributes' - id: - description: Container Image Group ID. - type: string - relationships: - $ref: '#/components/schemas/ContainerImageGroupRelationships' - type: - $ref: '#/components/schemas/ContainerImageGroupType' - type: object - ContainerImageGroupAttributes: - description: Attributes for a Container Image Group. - properties: - count: - description: Number of Container Images in the group. - format: int64 - type: integer - name: - description: Name of the Container Image group. - type: string - tags: - description: Tags from the group name parsed in key/value format. - type: object - type: object - ContainerImageGroupImagesRelationshipsLink: - description: Relationships to Container Images inside a Container Image Group. - properties: - data: - $ref: '#/components/schemas/ContainerImageGroupRelationshipsData' - links: - $ref: '#/components/schemas/ContainerImageGroupRelationshipsLinks' - type: object - ContainerImageGroupRelationships: - description: Relationships inside a Container Image Group. - properties: - container_images: - $ref: '#/components/schemas/ContainerImageGroupImagesRelationshipsLink' - type: object - ContainerImageGroupRelationshipsData: - description: Links data. - items: - description: A link data. - type: string - type: array - ContainerImageGroupRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Link to related Container Images. - type: string - type: object - ContainerImageGroupType: - default: container_image_group - description: Type of Container Image Group. - enum: - - container_image_group - example: container_image_group - type: string - x-enum-varnames: - - CONTAINER_IMAGE_GROUP - ContainerImageItem: - description: Possible Container Image models. - oneOf: - - $ref: '#/components/schemas/ContainerImage' - - $ref: '#/components/schemas/ContainerImageGroup' - ContainerImageMeta: - description: Response metadata object. - properties: - pagination: - $ref: '#/components/schemas/ContainerImageMetaPage' - type: object - ContainerImageMetaPage: - description: Paging attributes. - properties: - cursor: - description: The cursor used to get the current results, if any. - type: string - limit: - description: Number of results returned - format: int32 - maximum: 10000 - minimum: 0 - type: integer - next_cursor: - description: The cursor used to get the next results, if any. - type: string - prev_cursor: - description: The cursor used to get the previous results, if any. - nullable: true - type: string - total: - description: Total number of records that match the query. - format: int64 - type: integer - type: - $ref: '#/components/schemas/ContainerImageMetaPageType' - type: object - ContainerImageMetaPageType: - default: cursor_limit - description: Type of Container Image pagination. - enum: - - cursor_limit - example: cursor_limit - type: string - x-enum-varnames: - - CURSOR_LIMIT - ContainerImageType: - default: container_image - description: Type of Container Image. - enum: - - container_image - example: container_image - type: string - x-enum-varnames: - - CONTAINER_IMAGE - ContainerImageVulnerabilities: - description: Vulnerability counts associated with the Container Image. - properties: - asset_id: - description: ID of the Container Image. - type: string - critical: - description: Number of vulnerabilities with CVSS Critical severity. - format: int64 - type: integer - high: - description: Number of vulnerabilities with CVSS High severity. - format: int64 - type: integer - low: - description: Number of vulnerabilities with CVSS Low severity. - format: int64 - type: integer - medium: - description: Number of vulnerabilities with CVSS Medium severity. - format: int64 - type: integer - none: - description: Number of vulnerabilities with CVSS None severity. - format: int64 - type: integer - unknown: - description: Number of vulnerabilities with an unknown CVSS severity. - format: int64 - type: integer - type: object - ContainerImagesResponse: - description: List of Container Images. - properties: - data: - description: Array of Container Image objects. - items: - $ref: '#/components/schemas/ContainerImageItem' - type: array - links: - $ref: '#/components/schemas/ContainerImagesResponseLinks' - meta: - $ref: '#/components/schemas/ContainerImageMeta' - type: object - ContainerImagesResponseLinks: - description: Pagination links. - properties: - first: - description: Link to the first page. - type: string - last: - description: Link to the last page. - nullable: true - type: string - next: - description: Link to the next page. - nullable: true - type: string - prev: - description: Link to previous page. - nullable: true - type: string - self: - description: Link to current page. - type: string - type: object - ContainerItem: - description: Possible Container models. - oneOf: - - $ref: '#/components/schemas/Container' - - $ref: '#/components/schemas/ContainerGroup' - ContainerMeta: - description: Response metadata object. - properties: - pagination: - $ref: '#/components/schemas/ContainerMetaPage' - type: object - ContainerMetaPage: - description: Paging attributes. - properties: - cursor: - description: The cursor used to get the current results, if any. - type: string - limit: - description: Number of results returned - format: int32 - maximum: 10000 - minimum: 0 - type: integer - next_cursor: - description: The cursor used to get the next results, if any. - type: string - prev_cursor: - description: The cursor used to get the previous results, if any. - nullable: true - type: string - total: - description: Total number of records that match the query. - format: int64 - type: integer - type: - $ref: '#/components/schemas/ContainerMetaPageType' - type: object - ContainerMetaPageType: - default: cursor_limit - description: Type of Container pagination. - enum: - - cursor_limit - example: cursor_limit - type: string - x-enum-varnames: - - CURSOR_LIMIT - ContainerType: - default: container - description: Type of container. - enum: - - container - example: container - type: string - x-enum-varnames: - - CONTAINER - ContainersResponse: - description: List of containers. - properties: - data: - description: Array of Container objects. - items: - $ref: '#/components/schemas/ContainerItem' - type: array - links: - $ref: '#/components/schemas/ContainersResponseLinks' - meta: - $ref: '#/components/schemas/ContainerMeta' - type: object - ContainersResponseLinks: - description: Pagination links. - properties: - first: - description: Link to the first page. - type: string - last: - description: Link to the last page. - nullable: true - type: string - next: - description: Link to the next page. - nullable: true - type: string - prev: - description: Link to previous page. - nullable: true - type: string - self: - description: Link to current page. - type: string - type: object - ContentEncoding: - description: HTTP header used to compress the media-type. - enum: - - identity - - gzip - - deflate - type: string - x-enum-varnames: - - IDENTITY - - GZIP - - DEFLATE - ConvertJobResultsToSignalsAttributes: - description: Attributes for converting historical job results to signals. - properties: - id: - description: Request ID. - type: string - jobResultIds: - description: Job result IDs. - example: - - '' - items: - type: string - type: array - notifications: - description: Notifications sent. - example: - - '' - items: - type: string - type: array - signalMessage: - description: Message of generated signals. - example: A large number of failed login attempts. - type: string - signalSeverity: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - jobResultIds - - signalSeverity - - signalMessage - - notifications - type: object - ConvertJobResultsToSignalsData: - description: Data for converting historical job results to signals. - properties: - attributes: - $ref: '#/components/schemas/ConvertJobResultsToSignalsAttributes' - type: - $ref: '#/components/schemas/ConvertJobResultsToSignalsDataType' - type: object - ConvertJobResultsToSignalsDataType: - description: Type of payload. - enum: - - historicalDetectionsJobResultSignalConversion - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOBRESULTSIGNALCONVERSION - ConvertJobResultsToSignalsRequest: - description: Request for converting historical job results to signals. - properties: - data: - $ref: '#/components/schemas/ConvertJobResultsToSignalsData' - type: object - CostAttributionAggregates: - description: An array of available aggregates. - items: - $ref: '#/components/schemas/CostAttributionAggregatesBody' - type: array - CostAttributionAggregatesBody: - description: The object containing the aggregates. - properties: - agg_type: - description: The aggregate type. - example: sum - type: string - field: - description: The field. - example: infra_host_committed_cost - type: string - value: - description: The value for a given field. - format: double - type: number - type: object - CostAttributionTagNames: - additionalProperties: - description: 'A list of values that are associated with each tag key. - - - An empty list means the resource use wasn''t tagged with the respective - tag. - - - Multiple values means the respective tag was applied multiple times on - the resource. - - - An `` value means the resource was tagged with the respective tag - but did not have a value.' - items: - description: A given tag in a list. - example: datadog-integrations-lab - type: string - type: array - description: 'Tag keys and values. - - A `null` value here means that the requested tag breakdown cannot be applied - because it does not match the [tags - - configured for usage attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). - - In this scenario the API returns the total cost, not broken down by tags.' - nullable: true - type: object - CostAttributionType: - default: cost_by_tag - description: Type of cost attribution data. - enum: - - cost_by_tag - example: cost_by_tag - type: string - x-enum-varnames: - - COST_BY_TAG - CostByOrg: - description: Cost data. - properties: - attributes: - $ref: '#/components/schemas/CostByOrgAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/CostByOrgType' - type: object - CostByOrgAttributes: - description: Cost attributes data. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - charges: - description: List of charges data reported for the requested month. - items: - $ref: '#/components/schemas/ChargebackBreakdown' - type: array - date: - description: The month requested. - format: date-time - type: string - org_name: - description: The organization name. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs - to. - type: string - total_cost: - description: The total cost of products for the month. - format: double - type: number - type: object - CostByOrgResponse: - description: Chargeback Summary response. - properties: - data: - description: Response containing Chargeback Summary. - items: - $ref: '#/components/schemas/CostByOrg' - type: array - type: object - CostByOrgType: - default: cost_by_org - description: Type of cost data. - enum: - - cost_by_org - example: cost_by_org - type: string - x-enum-varnames: - - COST_BY_ORG - Cpu: - description: CPU usage statistics derived from historical Spark job metrics. - Provides multiple estimates so users can choose between conservative and cost-saving - risk profiles. - properties: - max: - description: Maximum CPU usage observed for the job, expressed in millicores. - This represents the upper bound of usage. - format: int64 - type: integer - p75: - description: 75th percentile of CPU usage (millicores). Represents a cost-saving - configuration while covering most workloads. - format: int64 - type: integer - p95: - description: 95th percentile of CPU usage (millicores). Balances performance - and cost, providing a safer margin than p75. - format: int64 - type: integer - type: object - x-model-simple-name: SpaCpu - CreateActionConnectionRequest: - description: Request used to create an action connection. - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - required: - - data - type: object - CreateActionConnectionResponse: - description: The response for a created connection - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - type: object - CreateAppRequest: - description: A request object for creating a new app. - example: - data: - attributes: - components: - - events: [] - name: grid0 - properties: - children: - - events: [] - name: gridCell0 - properties: - children: - - events: [] - name: calloutValue0 - properties: - isDisabled: false - isLoading: false - isVisible: true - label: CPU Usage - size: sm - style: vivid_yellow - unit: kB - value: '42' - type: calloutValue - isVisible: 'true' - layout: - default: - height: 8 - width: 2 - x: 0 - y: 0 - type: gridCell - type: grid - description: This is a simple example app - name: Example App - queries: [] - rootInstanceName: grid0 - type: appDefinitions - properties: - data: - $ref: '#/components/schemas/CreateAppRequestData' - type: object - CreateAppRequestData: - description: The data object containing the app definition. - properties: - attributes: - $ref: '#/components/schemas/CreateAppRequestDataAttributes' - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - type - type: object - CreateAppRequestDataAttributes: - description: App definition attributes such as name, description, and components. - properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: A human-readable description for the app. - type: string - name: - description: The name of the app. - type: string - queries: - description: An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: The name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - CreateAppResponse: - description: The response object after a new app is successfully created, with - the app ID. - properties: - data: - $ref: '#/components/schemas/CreateAppResponseData' - type: object - CreateAppResponseData: - description: The data object containing the app ID. - properties: - id: - description: The ID of the created app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - CreateAppsDatastoreRequest: - description: Request to create a new datastore with specified configuration - and metadata. - properties: - data: - $ref: '#/components/schemas/CreateAppsDatastoreRequestData' - type: object - CreateAppsDatastoreRequestData: - description: Data wrapper containing the configuration needed to create a new - datastore. - properties: - attributes: - $ref: '#/components/schemas/CreateAppsDatastoreRequestDataAttributes' - id: - description: Optional ID for the new datastore. If not provided, one will - be generated automatically. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - CreateAppsDatastoreRequestDataAttributes: - description: Configuration and metadata to create a new datastore. - properties: - description: - description: A human-readable description about the datastore. - type: string - name: - description: The display name for the new datastore. - example: datastore-name - type: string - org_access: - $ref: '#/components/schemas/CreateAppsDatastoreRequestDataAttributesOrgAccess' - primary_column_name: - $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' - primary_key_generation_strategy: - $ref: '#/components/schemas/DatastorePrimaryKeyGenerationStrategy' - required: - - name - - primary_column_name - type: object - CreateAppsDatastoreRequestDataAttributesOrgAccess: - description: The organization access level for the datastore. For example, 'contributor'. - enum: - - contributor - - viewer - - manager - type: string - x-enum-varnames: - - CONTRIBUTOR - - VIEWER - - MANAGER - CreateAppsDatastoreResponse: - description: Response after successfully creating a new datastore, containing - the datastore's assigned ID. - properties: - data: - $ref: '#/components/schemas/CreateAppsDatastoreResponseData' - type: object - CreateAppsDatastoreResponseData: - description: The newly created datastore's data. - properties: - id: - description: The unique identifier assigned to the newly created datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - CreateCustomFrameworkRequest: - description: Request object to create a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkData' - required: - - data - type: object - CreateCustomFrameworkResponse: - description: Response object to create a custom framework. - properties: - data: - $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' - required: - - data - type: object - CreateDataDeletionRequestBody: - description: Object needed to create a data deletion request. - properties: - data: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyData' - required: - - data - type: object - CreateDataDeletionRequestBodyAttributes: - description: Attributes for creating a data deletion request. - properties: - from: - description: Start of requested time window, milliseconds since Unix epoch. - example: 1672527600000 - format: int64 - type: integer - indexes: - description: List of indexes for the search. If not provided, the search - is performed in all indexes. - example: - - test-index - - test-index-2 - items: - description: Individual index. - type: string - type: array - query: - additionalProperties: - type: string - description: Query for creating a data deletion request. - example: - host: abc - service: xyz - type: object - to: - description: End of requested time window, milliseconds since Unix epoch. - example: 1704063600000 - format: int64 - type: integer - required: - - query - - from - - to - type: object - CreateDataDeletionRequestBodyData: - description: Data needed to create a data deletion request. - properties: - attributes: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyAttributes' - type: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyDataType' - required: - - attributes - - type - type: object - CreateDataDeletionRequestBodyDataType: - description: The deletion request type. - enum: - - create_deletion_req - example: create_deletion_req - type: string - x-enum-varnames: - - CREATE_DELETION_REQ - CreateDataDeletionResponseBody: - description: The response from the create data deletion request endpoint. - properties: - data: - $ref: '#/components/schemas/DataDeletionResponseItem' - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' - type: object - CreateIncidentNotificationRuleRequest: - description: Create request for a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleCreateData' - required: - - data - type: object - CreateIncidentNotificationTemplateRequest: - description: Create request for a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateData' - required: - - data - type: object - CreateNotificationRuleParameters: - description: Body of the notification rule create request. - properties: - data: - $ref: '#/components/schemas/CreateNotificationRuleParametersData' - type: object - CreateNotificationRuleParametersData: - description: 'Data of the notification rule create request: the rule type, and - the rule attributes. All fields are required.' - properties: - attributes: - $ref: '#/components/schemas/CreateNotificationRuleParametersDataAttributes' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - type - type: object - CreateNotificationRuleParametersDataAttributes: - description: Attributes of the notification rule create request. - properties: - enabled: - $ref: '#/components/schemas/Enabled' - name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - required: - - selectors - - name - - targets - type: object - CreateOpenAPIResponse: - description: Response for `CreateOpenAPI` operation. - properties: - data: - $ref: '#/components/schemas/CreateOpenAPIResponseData' - type: object - CreateOpenAPIResponseAttributes: - description: Attributes for `CreateOpenAPI`. - properties: - failed_endpoints: - description: List of endpoints which couldn't be parsed. - items: - $ref: '#/components/schemas/OpenAPIEndpoint' - type: array - type: object - CreateOpenAPIResponseData: - description: Data envelope for `CreateOpenAPIResponse`. - properties: - attributes: - $ref: '#/components/schemas/CreateOpenAPIResponseAttributes' - id: - $ref: '#/components/schemas/ApiID' - type: object - CreatePageRequest: - description: Full request to trigger an On-Call Page. - example: - data: - attributes: - description: Page details. - tags: - - service:test - target: - identifier: my-team - type: team_handle - title: Page title - urgency: low - type: pages - properties: - data: - $ref: '#/components/schemas/CreatePageRequestData' - type: object - CreatePageRequestData: - description: The main request body, including attributes and resource type. - properties: - attributes: - $ref: '#/components/schemas/CreatePageRequestDataAttributes' - type: - $ref: '#/components/schemas/CreatePageRequestDataType' - required: - - type - type: object - CreatePageRequestDataAttributes: - description: Details about the On-Call Page you want to create. - properties: - description: - description: A short summary of the issue or context. - type: string - tags: - description: Tags to help categorize or filter the page. - items: - type: string - type: array - target: - $ref: '#/components/schemas/CreatePageRequestDataAttributesTarget' - title: - description: The title of the page. - example: 'Service: Test is down' - type: string - urgency: - $ref: '#/components/schemas/PageUrgency' - required: - - target - - title - - urgency - type: object - CreatePageRequestDataAttributesTarget: - description: Information about the target to notify (such as a team or user). - properties: - identifier: - description: Identifier for the target (for example, team handle or user - ID). - type: string - type: - $ref: '#/components/schemas/OnCallPageTargetType' - type: object - CreatePageRequestDataType: - default: pages - description: The type of resource used when creating an On-Call Page. - enum: - - pages - example: pages - type: string - x-enum-varnames: - - PAGES - CreatePageResponse: - description: The full response object after creating a new On-Call Page. - example: - data: - id: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - type: pages - properties: - data: - $ref: '#/components/schemas/CreatePageResponseData' - type: object - CreatePageResponseData: - description: The information returned after successfully creating a page. - properties: - id: - description: The unique ID of the created page. - type: string - type: - $ref: '#/components/schemas/CreatePageResponseDataType' - required: - - type - type: object - CreatePageResponseDataType: - default: pages - description: The type of resource used when creating an On-Call Page. - enum: - - pages - example: pages - type: string - x-enum-varnames: - - PAGES - CreateRuleRequest: - description: Scorecard create rule request. - properties: - data: - $ref: '#/components/schemas/CreateRuleRequestData' - type: object - CreateRuleRequestData: - description: Scorecard create rule request data. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - type: - $ref: '#/components/schemas/RuleType' - type: object - CreateRuleResponse: - description: Created rule in response. - properties: - data: - $ref: '#/components/schemas/CreateRuleResponseData' - type: object - CreateRuleResponseData: - description: Create rule response data. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - relationships: - $ref: '#/components/schemas/RelationshipToRule' - type: - $ref: '#/components/schemas/RuleType' - type: object - CreateWorkflowRequest: - description: A request object for creating a new workflow. - example: - data: - attributes: - description: A sample workflow. - name: Example Workflow - published: true - spec: - annotations: - - display: - bounds: - height: 150 - width: 300 - x: -375 - y: -0.5 - id: 99999999-9999-9999-9999-999999999999 - markdownTextAnnotation: - text: Example annotation. - connectionEnvs: - - connections: - - connectionId: 11111111-1111-1111-1111-111111111111 - label: INTEGRATION_DATADOG - env: default - handle: my-handle - inputSchema: - parameters: - - defaultValue: default - name: input - type: STRING - outputSchema: - parameters: - - name: output - type: ARRAY_OBJECT - value: '{{ Steps.Step1 }}' - steps: - - actionId: com.datadoghq.dd.monitor.listMonitors - connectionLabel: INTEGRATION_DATADOG - name: Step1 - outboundEdges: - - branchName: main - nextStepName: Step2 - parameters: - - name: tags - value: service:monitoring - - actionId: com.datadoghq.core.noop - name: Step2 - triggers: - - monitorTrigger: - rateLimit: - count: 1 - interval: 3600s - startStepNames: - - Step1 - - githubWebhookTrigger: {} - startStepNames: - - Step1 - tags: - - team:infra - - service:monitoring - - foo:bar - type: workflows - properties: - data: - $ref: '#/components/schemas/WorkflowData' - required: - - data - type: object - CreateWorkflowResponse: - description: The response object after creating a new workflow. - properties: - data: - $ref: '#/components/schemas/WorkflowData' - required: - - data - type: object - Creator: - description: Creator of the object. - properties: - email: - description: Email of the creator. - type: string - handle: - description: Handle of the creator. - type: string - name: - description: Name of the creator. - nullable: true - type: string - type: object - CsmAgentData: - description: Single Agent Data. - properties: - attributes: - $ref: '#/components/schemas/CsmAgentsAttributes' - id: - description: The ID of the Agent. - example: fffffc5505f6a006fdf7cf5aae053653 - type: string - type: - $ref: '#/components/schemas/CSMAgentsType' - type: object - CsmAgentsAttributes: - description: A CSM Agent returned by the API. - properties: - agent_version: - description: Version of the Datadog Agent. - type: string - aws_fargate: - description: AWS Fargate details. - type: string - cluster_name: - description: List of cluster names associated with the Agent. - items: - type: string - type: array - datadog_agent: - description: Unique identifier for the Datadog Agent. - type: string - ecs_fargate_task_arn: - description: ARN of the ECS Fargate task. - type: string - envs: - description: List of environments associated with the Agent. - items: - type: string - nullable: true - type: array - host_id: - description: ID of the host. - format: int64 - type: integer - hostname: - description: Name of the host. - type: string - install_method_installer_version: - description: Version of the installer used for installing the Datadog Agent. - type: string - install_method_tool: - description: Tool used for installing the Datadog Agent. - type: string - is_csm_vm_containers_enabled: - description: Indicates if CSM VM Containers is enabled. - nullable: true - type: boolean - is_csm_vm_hosts_enabled: - description: Indicates if CSM VM Hosts is enabled. - nullable: true - type: boolean - is_cspm_enabled: - description: Indicates if CSPM is enabled. - nullable: true - type: boolean - is_cws_enabled: - description: Indicates if CWS is enabled. - nullable: true - type: boolean - is_cws_remote_configuration_enabled: - description: Indicates if CWS Remote Configuration is enabled. - nullable: true - type: boolean - is_remote_configuration_enabled: - description: Indicates if Remote Configuration is enabled. - nullable: true - type: boolean - os: - description: Operating system of the host. - type: string - type: object - CsmAgentsResponse: - description: Response object that includes a list of CSM Agents. - properties: - data: - description: A list of Agents. - items: - $ref: '#/components/schemas/CsmAgentData' - type: array - meta: - $ref: '#/components/schemas/CSMAgentsMetadata' - type: object - CsmCloudAccountsCoverageAnalysisAttributes: - description: CSM Cloud Accounts Coverage Analysis attributes. - properties: - aws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - azure_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - gcp_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - CsmCloudAccountsCoverageAnalysisData: - description: CSM Cloud Accounts Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_cloud_accounts_coverage_analysis_response_public_v0 - description: The type of the resource. The value should always be `get_cloud_accounts_coverage_analysis_response_public_v0`. - example: get_cloud_accounts_coverage_analysis_response_public_v0 - type: string - type: object - CsmCloudAccountsCoverageAnalysisResponse: - description: CSM Cloud Accounts Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisData' - type: object - CsmCoverageAnalysis: - description: CSM Coverage Analysis. - properties: - configured_resources_count: - description: The number of fully configured resources. - example: 8 - format: int64 - type: integer - coverage: - description: The coverage percentage. - example: 0.8 - format: double - type: number - partially_configured_resources_count: - description: The number of partially configured resources. - example: 0 - format: int64 - type: integer - total_resources_count: - description: The total number of resources. - example: 10 - format: int64 - type: integer - type: object - CsmHostsAndContainersCoverageAnalysisAttributes: - description: CSM Hosts and Containers Coverage Analysis attributes. - properties: - cspm_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - cws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - vm_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - CsmHostsAndContainersCoverageAnalysisData: - description: CSM Hosts and Containers Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_hosts_and_containers_coverage_analysis_response_public_v0 - description: The type of the resource. The value should always be `get_hosts_and_containers_coverage_analysis_response_public_v0`. - example: get_hosts_and_containers_coverage_analysis_response_public_v0 - type: string - type: object - CsmHostsAndContainersCoverageAnalysisResponse: - description: CSM Hosts and Containers Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisData' - type: object - CsmServerlessCoverageAnalysisAttributes: - description: CSM Serverless Resources Coverage Analysis attributes. - properties: - cws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - CsmServerlessCoverageAnalysisData: - description: CSM Serverless Resources Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_serverless_coverage_analysis_response_public_v0 - description: The type of the resource. The value should always be `get_serverless_coverage_analysis_response_public_v0`. - example: get_serverless_coverage_analysis_response_public_v0 - type: string - type: object - CsmServerlessCoverageAnalysisResponse: - description: CSM Serverless Resources Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisData' - type: object - CustomConnection: - description: A custom connection used by an app. - properties: - attributes: - $ref: '#/components/schemas/CustomConnectionAttributes' - id: - description: The ID of the custom connection. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/CustomConnectionType' - type: object - CustomConnectionAttributes: - description: The custom connection attributes. - properties: - name: - description: The name of the custom connection. - type: string - onPremRunner: - $ref: '#/components/schemas/CustomConnectionAttributesOnPremRunner' - type: object - CustomConnectionAttributesOnPremRunner: - description: Information about the Private Action Runner used by the custom - connection, if the custom connection is associated with a Private Action Runner. - properties: - id: - description: The Private Action Runner ID. - type: string - url: - description: The URL of the Private Action Runner. - type: string - type: object - CustomConnectionType: - default: custom_connections - description: The custom connection type. - enum: - - custom_connections - example: custom_connections - type: string - x-enum-varnames: - - CUSTOM_CONNECTIONS - CustomCostGetResponseMeta: - description: Meta for the response from the Get Custom Costs endpoints. - properties: - version: - description: Version of Custom Costs file - type: string - type: object - CustomCostListResponseMeta: - description: Meta for the response from the List Custom Costs endpoints. - properties: - total_filtered_count: - description: Number of Custom Costs files returned by the List Custom Costs - endpoint - format: int64 - type: integer - version: - description: Version of Custom Costs file - type: string - type: object - CustomCostUploadResponseMeta: - description: Meta for the response from the Upload Custom Costs endpoints. - properties: - version: - description: Version of Custom Costs file - type: string - type: object - CustomCostsFileGetResponse: - description: Response for Get Custom Costs files. - properties: - data: - $ref: '#/components/schemas/CustomCostsFileMetadataWithContentHighLevel' - meta: - $ref: '#/components/schemas/CustomCostGetResponseMeta' - type: object - CustomCostsFileLineItem: - description: Line item details from a Custom Costs file. - properties: - BilledCost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - BillingCurrency: - description: Currency used in the Custom Costs file. - example: USD - type: string - ChargeDescription: - description: Description for the line item cost. - example: Monthly usage charge for my service - type: string - ChargePeriodEnd: - description: End date of the usage charge. - example: '2023-02-28' - pattern: ^\d{4}-\d{2}-\d{2}$ - type: string - ChargePeriodStart: - description: Start date of the usage charge. - example: '2023-02-01' - pattern: ^\d{4}-\d{2}-\d{2}$ - type: string - ProviderName: - description: Name of the provider for the line item. - type: string - Tags: - additionalProperties: - type: string - description: Additional tags for the line item. - type: object - type: object - CustomCostsFileListResponse: - description: Response for List Custom Costs files. - properties: - data: - description: List of Custom Costs files. - items: - $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' - type: array - meta: - $ref: '#/components/schemas/CustomCostListResponseMeta' - type: object - CustomCostsFileMetadata: - description: Schema of a Custom Costs metadata. - properties: - billed_cost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - billing_currency: - description: Currency used in the Custom Costs file. - example: USD - type: string - charge_period: - $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' - name: - description: Name of the Custom Costs file. - example: my_file.json - type: string - provider_names: - description: Providers contained in the Custom Costs file. - items: - description: Name of the provider. - example: my_provider - type: string - type: array - status: - description: Status of the Custom Costs file. - example: active - type: string - uploaded_at: - description: Timestamp, in millisecond, of the upload time of the Custom - Costs file. - example: 1704067200000 - format: double - type: number - uploaded_by: - $ref: '#/components/schemas/CustomCostsUser' - type: object - CustomCostsFileMetadataHighLevel: - description: JSON API format for a Custom Costs file. - properties: - attributes: - $ref: '#/components/schemas/CustomCostsFileMetadata' - id: - description: ID of the Custom Costs metadata. - type: string - type: - description: Type of the Custom Costs file metadata. - type: string - type: object - CustomCostsFileMetadataWithContent: - description: Schema of a cost file's metadata. - properties: - billed_cost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - billing_currency: - description: Currency used in the Custom Costs file. - example: USD - type: string - charge_period: - $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' - content: - description: Detail of the line items from the Custom Costs file. - items: - $ref: '#/components/schemas/CustomCostsFileLineItem' - type: array - name: - description: Name of the Custom Costs file. - example: my_file.json - type: string - provider_names: - description: Providers contained in the Custom Costs file. - items: - description: Name of a provider. - example: my_provider - type: string - type: array - status: - description: Status of the Custom Costs file. - example: active - type: string - uploaded_at: - description: Timestamp in millisecond of the upload time of the Custom Costs - file. - example: 1704067200000 - format: double - type: number - uploaded_by: - $ref: '#/components/schemas/CustomCostsUser' - type: object - CustomCostsFileMetadataWithContentHighLevel: - description: JSON API format of for a Custom Costs file with content. - properties: - attributes: - $ref: '#/components/schemas/CustomCostsFileMetadataWithContent' - id: - description: ID of the Custom Costs metadata. - type: string - type: - description: Type of the Custom Costs file metadata. - type: string - type: object - CustomCostsFileUploadRequest: - description: Request for uploading a Custom Costs file. - items: - $ref: '#/components/schemas/CustomCostsFileLineItem' - type: array - CustomCostsFileUploadResponse: - description: Response for Uploaded Custom Costs files. - properties: - data: - $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' - meta: - $ref: '#/components/schemas/CustomCostUploadResponseMeta' - type: object - CustomCostsFileUsageChargePeriod: - description: Usage charge period of a Custom Costs file. - properties: - end: - description: End of the usage of the Custom Costs file. - example: 1706745600000 - format: double - type: number - start: - description: Start of the usage of the Custom Costs file. - example: 1704067200000 - format: double - type: number - type: object - CustomCostsUser: - description: Metadata of the user that has uploaded the Custom Costs file. - properties: - email: - description: The name of the Custom Costs file. - example: email.test@datadohq.com - type: string - icon: - description: The name of the Custom Costs file. - example: icon.png - type: string - name: - description: Name of the user. - example: Test User - type: string - type: object - CustomDestinationAttributeTagsRestrictionListType: - default: ALLOW_LIST - description: 'How `forward_tags_restriction_list` parameter should be interpreted. - - If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the - ones on the restriction list - - are forwarded. - - - `BLOCK_LIST` works the opposite way. It does not forward the tags matching - the ones on the list.' - enum: - - ALLOW_LIST - - BLOCK_LIST - example: ALLOW_LIST - type: string - x-enum-varnames: - - ALLOW_LIST - - BLOCK_LIST - CustomDestinationCreateRequest: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationCreateRequestDefinition' - type: object - CustomDestinationCreateRequestAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: Whether logs matching this custom destination should be forwarded - or not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or - not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: 'List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be filtered. - - - An empty list represents no restriction is in place and either all or - no tags will be - - forwarded depending on `forward_tags_restriction_list_type` parameter.' - example: - - datacenter - - host - items: - description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType' - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: The custom destination query and filter. Logs matching this - query are forwarded to the destination. - example: source:nginx - type: string - required: - - name - - forwarder_destination - type: object - CustomDestinationCreateRequestDefinition: - description: The definition of a custom destination. - properties: - attributes: - $ref: '#/components/schemas/CustomDestinationCreateRequestAttributes' - type: - $ref: '#/components/schemas/CustomDestinationType' - required: - - type - - attributes - type: object - CustomDestinationElasticsearchDestinationAuth: - description: Basic access authentication. - properties: - password: - description: The password of the authentication. This field is not returned - by the API. - example: datadog-custom-destination-password - type: string - writeOnly: true - username: - description: The username of the authentication. This field is not returned - by the API. - example: datadog-custom-destination-username - type: string - writeOnly: true - required: - - username - - password - type: object - CustomDestinationForwardDestination: - description: A custom destination's location to forward logs. - oneOf: - - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttp' - - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunk' - - $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearch' - - $ref: '#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinel' - CustomDestinationForwardDestinationElasticsearch: - description: The Elasticsearch destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationElasticsearchDestinationAuth' - endpoint: - description: 'The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not allowed.' - example: https://example.com - type: string - index_name: - description: Name of the Elasticsearch index (must follow [Elasticsearch's - criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). - example: nginx-logs - type: string - index_rotation: - description: 'Date pattern with US locale and UTC timezone to be appended - to the index name after adding `-` - - (that is, `${index_name}-${indexPattern}`). - - You can customize the index rotation naming pattern by choosing one of - these options: - - - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) - - - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) - - - Weekly: `yyyy-''W''ww` (as an example, it would render: `2022-W42`) - - - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) - - - If this field is missing or is blank, it means that the index name will - always be the same - - (that is, no rotation).' - example: yyyy-MM-dd - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearchType' - required: - - type - - endpoint - - auth - - index_name - type: object - CustomDestinationForwardDestinationElasticsearchType: - default: elasticsearch - description: Type of the Elasticsearch destination. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - CustomDestinationForwardDestinationHttp: - description: The HTTP destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuth' - endpoint: - description: 'The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not allowed.' - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttpType' - required: - - type - - endpoint - - auth - type: object - CustomDestinationForwardDestinationHttpType: - default: http - description: Type of the HTTP destination. - enum: - - http - example: http - type: string - x-enum-varnames: - - HTTP - CustomDestinationForwardDestinationMicrosoftSentinel: - description: The Microsoft Sentinel destination. - properties: - client_id: - description: Client ID from the Datadog Azure integration. - example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 - type: string - data_collection_endpoint: - description: Azure data collection endpoint. - example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com - type: string - data_collection_rule_id: - description: Azure data collection rule ID. - example: dcr-000a00a000a00000a000000aa000a0aa - type: string - stream_name: - description: Azure stream name. - example: Custom-MyTable - type: string - writeOnly: true - tenant_id: - description: Tenant ID from the Datadog Azure integration. - example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinelType' - required: - - type - - tenant_id - - client_id - - data_collection_endpoint - - data_collection_rule_id - - stream_name - type: object - CustomDestinationForwardDestinationMicrosoftSentinelType: - default: microsoft_sentinel - description: Type of the Microsoft Sentinel destination. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - CustomDestinationForwardDestinationSplunk: - description: The Splunk HTTP Event Collector (HEC) destination. - properties: - access_token: - description: Access token of the Splunk HTTP Event Collector. This field - is not returned by the API. - example: splunk_access_token - type: string - writeOnly: true - endpoint: - description: 'The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not allowed.' - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunkType' - required: - - type - - endpoint - - access_token - type: object - CustomDestinationForwardDestinationSplunkType: - default: splunk_hec - description: Type of the Splunk HTTP Event Collector (HEC) destination. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - CustomDestinationHttpDestinationAuth: - description: Authentication method of the HTTP requests. - oneOf: - - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasic' - - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeader' - CustomDestinationHttpDestinationAuthBasic: - description: Basic access authentication. - properties: - password: - description: The password of the authentication. This field is not returned - by the API. - example: datadog-custom-destination-password - type: string - writeOnly: true - type: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasicType' - username: - description: The username of the authentication. This field is not returned - by the API. - example: datadog-custom-destination-username - type: string - writeOnly: true - required: - - type - - username - - password - type: object - CustomDestinationHttpDestinationAuthBasicType: - default: basic - description: Type of the basic access authentication. - enum: - - basic - example: basic - type: string - x-enum-varnames: - - BASIC - CustomDestinationHttpDestinationAuthCustomHeader: - description: Custom header access authentication. - properties: - header_name: - description: The header name of the authentication. - example: CUSTOM-HEADER-NAME - type: string - header_value: - description: The header value of the authentication. This field is not returned - by the API. - example: CUSTOM-HEADER-AUTHENTICATION-VALUE - type: string - writeOnly: true - type: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeaderType' - required: - - type - - header_name - - header_value - type: object - CustomDestinationHttpDestinationAuthCustomHeaderType: - default: custom_header - description: Type of the custom header access authentication. - enum: - - custom_header - example: custom_header - type: string - x-enum-varnames: - - CUSTOM_HEADER - CustomDestinationResponse: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationResponseDefinition' - type: object - CustomDestinationResponseAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: Whether logs matching this custom destination should be forwarded - or not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or - not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: 'List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be filtered. - - - An empty list represents no restriction is in place and either all or - no tags will be - - forwarded depending on `forward_tags_restriction_list_type` parameter.' - example: - - datacenter - - host - items: - description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType' - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: The custom destination query filter. Logs matching this query - are forwarded to the destination. - example: source:nginx - type: string - type: object - CustomDestinationResponseDefinition: - description: The definition of a custom destination. - properties: - attributes: - $ref: '#/components/schemas/CustomDestinationResponseAttributes' - id: - description: The custom destination ID. - example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 - readOnly: true - type: string - type: - $ref: '#/components/schemas/CustomDestinationType' - type: object - CustomDestinationResponseElasticsearchDestinationAuth: - additionalProperties: - description: Basic access authentication. - description: Basic access authentication. - type: object - CustomDestinationResponseForwardDestination: - description: A custom destination's location to forward logs. - oneOf: - - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttp' - - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationSplunk' - - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearch' - - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinel' - CustomDestinationResponseForwardDestinationElasticsearch: - description: The Elasticsearch destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationResponseElasticsearchDestinationAuth' - endpoint: - description: 'The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not allowed.' - example: https://example.com - type: string - index_name: - description: Name of the Elasticsearch index (must follow [Elasticsearch's - criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). - example: nginx-logs - type: string - index_rotation: - description: 'Date pattern with US locale and UTC timezone to be appended - to the index name after adding `-` - - (that is, `${index_name}-${indexPattern}`). - - You can customize the index rotation naming pattern by choosing one of - these options: - - - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) - - - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) - - - Weekly: `yyyy-''W''ww` (as an example, it would render: `2022-W42`) - - - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) - - - If this field is missing or is blank, it means that the index name will - always be the same - - (that is, no rotation).' - example: yyyy-MM-dd - type: string - type: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearchType' - required: - - type - - endpoint - - auth - - index_name - type: object - CustomDestinationResponseForwardDestinationElasticsearchType: - default: elasticsearch - description: Type of the Elasticsearch destination. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - CustomDestinationResponseForwardDestinationHttp: - description: The HTTP destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuth' - endpoint: - description: 'The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not allowed.' - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttpType' - required: - - type - - endpoint - - auth - type: object - CustomDestinationResponseForwardDestinationHttpType: - default: http - description: Type of the HTTP destination. - enum: - - http - example: http - type: string - x-enum-varnames: - - HTTP - CustomDestinationResponseForwardDestinationMicrosoftSentinel: - description: The Microsoft Sentinel destination. - properties: - client_id: - description: Client ID from the Datadog Azure integration. - example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 - type: string - data_collection_endpoint: - description: Azure data collection endpoint. - example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com - type: string - data_collection_rule_id: - description: Azure data collection rule ID. - example: dcr-000a00a000a00000a000000aa000a0aa - type: string - stream_name: - description: Azure stream name. - example: Custom-MyTable - type: string - writeOnly: true - tenant_id: - description: Tenant ID from the Datadog Azure integration. - example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 - type: string - type: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinelType' - required: - - type - - tenant_id - - client_id - - data_collection_endpoint - - data_collection_rule_id - - stream_name - type: object - CustomDestinationResponseForwardDestinationMicrosoftSentinelType: - default: microsoft_sentinel - description: Type of the Microsoft Sentinel destination. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - CustomDestinationResponseForwardDestinationSplunk: - description: The Splunk HTTP Event Collector (HEC) destination. - properties: - endpoint: - description: 'The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not allowed.' - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationSplunkType' - required: - - type - - endpoint - type: object - CustomDestinationResponseForwardDestinationSplunkType: - default: splunk_hec - description: Type of the Splunk HTTP Event Collector (HEC) destination. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - CustomDestinationResponseHttpDestinationAuth: - description: Authentication method of the HTTP requests. - oneOf: - - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasic' - - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeader' - CustomDestinationResponseHttpDestinationAuthBasic: - description: Basic access authentication. - properties: - type: - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType' - required: - - type - type: object - CustomDestinationResponseHttpDestinationAuthBasicType: - default: basic - description: Type of the basic access authentication. - enum: - - basic - example: basic - type: string - x-enum-varnames: - - BASIC - CustomDestinationResponseHttpDestinationAuthCustomHeader: - description: Custom header access authentication. - properties: - header_name: - description: The header name of the authentication. - example: CUSTOM-HEADER-NAME - type: string - type: - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeaderType' - required: - - type - - header_name - type: object - CustomDestinationResponseHttpDestinationAuthCustomHeaderType: - default: custom_header - description: Type of the custom header access authentication. - enum: - - custom_header - example: custom_header - type: string - x-enum-varnames: - - CUSTOM_HEADER - CustomDestinationType: - default: custom_destination - description: The type of the resource. The value should always be `custom_destination`. - enum: - - custom_destination - example: custom_destination - type: string - x-enum-varnames: - - CUSTOM_DESTINATION - CustomDestinationUpdateRequest: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationUpdateRequestDefinition' - type: object - CustomDestinationUpdateRequestAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: Whether logs matching this custom destination should be forwarded - or not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or - not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: 'List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be restricted from being forwarded. - - An empty list represents no restriction is in place and either all or - no tags will be forwarded depending on `forward_tags_restriction_list_type` - parameter.' - example: - - datacenter - - host - items: - description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType' - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: The custom destination query and filter. Logs matching this - query are forwarded to the destination. - example: source:nginx - type: string - type: object - CustomDestinationUpdateRequestDefinition: - description: The definition of a custom destination. - properties: - attributes: - $ref: '#/components/schemas/CustomDestinationUpdateRequestAttributes' - id: - description: The custom destination ID. - example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 - type: string - type: - $ref: '#/components/schemas/CustomDestinationType' - required: - - type - - id - type: object - CustomDestinationsResponse: - description: The available custom destinations. - properties: - data: - description: A list of custom destinations. - items: - $ref: '#/components/schemas/CustomDestinationResponseDefinition' - type: array - type: object - CustomFrameworkControl: - description: Framework Control. - properties: - name: - description: Control Name. - example: A1.2 - type: string - rules_id: - description: Rule IDs. - example: - - '["def-000-abc"]' - items: - type: string - type: array - required: - - name - - rules_id - type: object - CustomFrameworkData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkDataAttributes' - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - type - - attributes - type: object - CustomFrameworkDataAttributes: - description: Framework Data Attributes. - properties: - description: - description: Framework Description - type: string - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - type: string - name: - description: Framework Name - example: security-framework - type: string - requirements: - description: Framework Requirements - items: - $ref: '#/components/schemas/CustomFrameworkRequirement' - type: array - version: - description: Framework Version - example: '2' - type: string - required: - - handle - - version - - name - - requirements - type: object - CustomFrameworkDataHandleAndVersion: - description: Framework Handle and Version. - properties: - handle: - description: Framework Handle - example: sec2 - type: string - version: - description: Framework Version - example: '2' - type: string - type: object - CustomFrameworkMetadata: - description: Metadata for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkWithoutRequirements' - id: - description: The ID of the custom framework. - example: handle-version - type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - type: object - CustomFrameworkRequirement: - description: Framework Requirement. - properties: - controls: - description: Requirement Controls. - items: - $ref: '#/components/schemas/CustomFrameworkControl' - type: array - name: - description: Requirement Name. - example: criteria - type: string - required: - - name - - controls - type: object - CustomFrameworkType: - default: custom_framework - description: The type of the resource. The value must be `custom_framework`. - enum: - - custom_framework - example: custom_framework - type: string - x-enum-varnames: - - CUSTOM_FRAMEWORK - CustomFrameworkWithoutRequirements: - description: Framework without requirements. - properties: - description: - description: Framework Description - example: this is a security description - type: string - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - example: https://example.com/icon.png - type: string - name: - description: Framework Name - example: security-framework - type: string - version: - description: Framework Version - example: '2' - type: string - required: - - handle - - version - - name - type: object - DORACustomTags: - description: A list of user-defined tags. The tags must follow the `key:value` - pattern. Up to 100 may be added per event. - example: - - language:java - - department:engineering - items: - description: Tags in the form of `key:value`. - type: string - nullable: true - type: array - DORADeploymentRequest: - description: Request to create a DORA deployment event. - properties: - data: - $ref: '#/components/schemas/DORADeploymentRequestData' - required: - - data - type: object - DORADeploymentRequestAttributes: - description: Attributes to create a DORA deployment event. - properties: - custom_tags: - $ref: '#/components/schemas/DORACustomTags' - env: - description: Environment name to where the service was deployed. - example: staging - type: string - finished_at: - description: Unix timestamp when the deployment finished. It must be in - nanoseconds, milliseconds, or seconds, and it should not be older than - 1 hour. - example: 1693491984000000000 - format: int64 - type: integer - git: - $ref: '#/components/schemas/DORAGitInfo' - id: - description: Deployment ID. - type: string - service: - description: Service name. - example: shopist - type: string - started_at: - description: Unix timestamp when the deployment started. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491974000000000 - format: int64 - type: integer - team: - description: Name of the team owning the deployed service. If not provided, - this is automatically populated with the team associated with the service - in the Service Catalog. - example: backend - type: string - version: - description: Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). - example: v1.12.07 - type: string - required: - - service - - started_at - - finished_at - type: object - DORADeploymentRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORADeploymentRequestAttributes' - required: - - attributes - type: object - DORADeploymentResponse: - description: Response after receiving a DORA deployment event. - properties: - data: - $ref: '#/components/schemas/DORADeploymentResponseData' - required: - - data - type: object - DORADeploymentResponseData: - description: The JSON:API data. - properties: - id: - description: The ID of the received DORA deployment event. - example: 4242fcdd31586083 - type: string - type: - $ref: '#/components/schemas/DORADeploymentType' - required: - - id - type: object - DORADeploymentType: - default: dora_deployment - description: JSON:API type for DORA deployment events. - enum: - - dora_deployment - example: dora_deployment - type: string - x-enum-varnames: - - DORA_DEPLOYMENT - DORAEvent: - description: A DORA event. - properties: - attributes: - description: The attributes of the event. - type: object - id: - description: The ID of the event. - type: string - type: - description: The type of the event. - type: string - type: object - DORAFailureRequest: - description: Request to create a DORA failure event. - properties: - data: - $ref: '#/components/schemas/DORAFailureRequestData' - required: - - data - type: object - DORAFailureRequestAttributes: - description: Attributes to create a DORA failure event. - properties: - custom_tags: - $ref: '#/components/schemas/DORACustomTags' - env: - description: Environment name that was impacted by the failure. - example: staging - type: string - finished_at: - description: Unix timestamp when the failure finished. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491984000000000 - format: int64 - type: integer - git: - $ref: '#/components/schemas/DORAGitInfo' - id: - description: Failure ID. Must have at least 16 characters. Required to update - a previously sent failure. - type: string - name: - description: Failure name. - example: Webserver is down failing all requests. - type: string - services: - description: Service names impacted by the failure. If possible, use names - registered in the Service Catalog. Required when the team field is not - provided. - example: - - shopist - items: - type: string - type: array - severity: - description: Failure severity. - example: High - type: string - started_at: - description: Unix timestamp when the failure started. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491974000000000 - format: int64 - type: integer - team: - description: Name of the team owning the services impacted. If possible, - use team handles registered in Datadog. Required when the services field - is not provided. - example: backend - type: string - version: - description: Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). - example: v1.12.07 - type: string - required: - - started_at - type: object - DORAFailureRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAFailureRequestAttributes' - required: - - attributes - type: object - DORAFailureResponse: - description: Response after receiving a DORA failure event. - properties: - data: - $ref: '#/components/schemas/DORAFailureResponseData' - required: - - data - type: object - DORAFailureResponseData: - description: Response after receiving a DORA failure event. - properties: - id: - description: The ID of the received DORA failure event. - example: 4242fcdd31586083 - type: string - type: - $ref: '#/components/schemas/DORAFailureType' - required: - - id - type: object - DORAFailureType: - default: dora_failure - description: JSON:API type for DORA failure events. - enum: - - dora_failure - example: dora_failure - type: string - x-enum-varnames: - - DORA_FAILURE - DORAFetchResponse: - description: Response for the DORA fetch endpoints. - properties: - data: - $ref: '#/components/schemas/DORAEvent' - type: object - DORAGitInfo: - description: Git info for DORA Metrics events. - properties: - commit_sha: - $ref: '#/components/schemas/GitCommitSHA' - repository_url: - $ref: '#/components/schemas/GitRepositoryURL' - required: - - repository_url - - commit_sha - type: object - DORAListDeploymentsRequest: - description: Request to get a list of deployments. - properties: - data: - $ref: '#/components/schemas/DORAListDeploymentsRequestData' - required: - - data - type: object - DORAListDeploymentsRequestAttributes: - description: Attributes to get a list of deployments. - properties: - from: - description: Minimum timestamp for requested events. - format: date-time - type: string - limit: - default: 10 - description: Maximum number of events in the response. - format: int32 - maximum: 1000 - type: integer - query: - description: Search query with event platform syntax. - type: string - sort: - description: Sort order (prefixed with `-` for descending). - type: string - to: - description: Maximum timestamp for requested events. - format: date-time - type: string - type: object - DORAListDeploymentsRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAListDeploymentsRequestAttributes' - type: - $ref: '#/components/schemas/DORAListDeploymentsRequestDataType' - required: - - attributes - type: object - DORAListDeploymentsRequestDataType: - description: The definition of `DORAListDeploymentsRequestDataType` object. - enum: - - dora_deployments_list_request - type: string - x-enum-varnames: - - DORA_DEPLOYMENTS_LIST_REQUEST - DORAListFailuresRequest: - description: Request to get a list of failures. - properties: - data: - $ref: '#/components/schemas/DORAListFailuresRequestData' - required: - - data - type: object - DORAListFailuresRequestAttributes: - description: Attributes to get a list of failures. - properties: - from: - description: Minimum timestamp for requested events. - format: date-time - type: string - limit: - default: 10 - description: Maximum number of events in the response. - format: int32 - maximum: 1000 - type: integer - query: - description: Search query with event platform syntax. - type: string - sort: - description: Sort order (prefixed with `-` for descending). - type: string - to: - description: Maximum timestamp for requested events. - format: date-time - type: string - type: object - DORAListFailuresRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAListFailuresRequestAttributes' - type: - $ref: '#/components/schemas/DORAListFailuresRequestDataType' - required: - - attributes - type: object - DORAListFailuresRequestDataType: - description: The definition of `DORAListFailuresRequestDataType` object. - enum: - - dora_failures_list_request - type: string - x-enum-varnames: - - DORA_FAILURES_LIST_REQUEST - DORAListResponse: - description: Response for the DORA list endpoints. - properties: - data: - description: The list of DORA events. - items: - $ref: '#/components/schemas/DORAEvent' - type: array - type: object - DashboardListAddItemsRequest: - description: Request containing a list of dashboards to add. - properties: - dashboards: - description: List of dashboards to add the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array - type: object - DashboardListAddItemsResponse: - description: Response containing a list of added dashboards. - properties: - added_dashboards_to_list: - description: List of dashboards added to the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array - type: object - DashboardListDeleteItemsRequest: - description: Request containing a list of dashboards to delete. - properties: - dashboards: - description: List of dashboards to delete from the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array - type: object - DashboardListDeleteItemsResponse: - description: Response containing a list of deleted dashboards. - properties: - deleted_dashboards_from_list: - description: List of dashboards deleted from the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array - type: object - DashboardListItem: - description: A dashboard within a list. - properties: - author: - $ref: '#/components/schemas/Creator' - created: - description: Date of creation of the dashboard. - format: date-time - readOnly: true - type: string - icon: - description: URL to the icon of the dashboard. - nullable: true - readOnly: true - type: string - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - type: string - integration_id: - description: The short name of the integration. - nullable: true - readOnly: true - type: string - is_favorite: - description: Whether or not the dashboard is in the favorites. - readOnly: true - type: boolean - is_read_only: - description: Whether or not the dashboard is read only. - readOnly: true - type: boolean - is_shared: - description: Whether the dashboard is publicly shared or not. - readOnly: true - type: boolean - modified: - description: Date of last edition of the dashboard. - format: date-time - readOnly: true - type: string - popularity: - description: Popularity of the dashboard. - format: int32 - maximum: 5 - readOnly: true - type: integer - tags: - description: List of team names representing ownership of a dashboard. - items: - description: The name of a Datadog team, formatted as `team:` - type: string - maxItems: 5 - nullable: true - readOnly: true - type: array - title: - description: Title of the dashboard. - readOnly: true - type: string - type: - $ref: '#/components/schemas/DashboardType' - url: - description: URL path to the dashboard. - readOnly: true - type: string - required: - - type - - id - type: object - DashboardListItemRequest: - description: A dashboard within a list. - properties: - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - type: string - type: - $ref: '#/components/schemas/DashboardType' - required: - - type - - id - type: object - DashboardListItemResponse: - description: A dashboard within a list. - properties: - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - readOnly: true - type: string - type: - $ref: '#/components/schemas/DashboardType' - required: - - type - - id - type: object - DashboardListItems: - description: Dashboards within a list. - properties: - dashboards: - description: List of dashboards in the dashboard list. - example: [] - items: - $ref: '#/components/schemas/DashboardListItem' - type: array - total: - description: Number of dashboards in the dashboard list. - format: int64 - readOnly: true - type: integer - required: - - dashboards - type: object - DashboardListUpdateItemsRequest: - description: Request containing the list of dashboards to update to. - properties: - dashboards: - description: List of dashboards to update the dashboard list to. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array - type: object - DashboardListUpdateItemsResponse: - description: Response containing a list of updated dashboards. - properties: - dashboards: - description: List of dashboards in the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array - type: object - DashboardTriggerWrapper: - description: Schema for a Dashboard-based trigger. - properties: - dashboardTrigger: - description: Trigger a workflow from a Dashboard. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - dashboardTrigger - type: object - DashboardType: - description: The type of the dashboard. - enum: - - custom_timeboard - - custom_screenboard - - integration_screenboard - - integration_timeboard - - host_timeboard - example: host_timeboard - type: string - x-enum-varnames: - - CUSTOM_TIMEBOARD - - CUSTOM_SCREENBOARD - - INTEGRATION_SCREENBOARD - - INTEGRATION_TIMEBOARD - - HOST_TIMEBOARD - DataDeletionResponseItem: - description: The created data deletion request information. - properties: - attributes: - $ref: '#/components/schemas/DataDeletionResponseItemAttributes' - id: - description: The ID of the created data deletion request. - example: '1' - type: string - type: - description: The type of the request created. - example: deletion_request - type: string - required: - - id - - type - - attributes - type: object - DataDeletionResponseItemAttributes: - description: Deletion attribute for data deletion response. - properties: - created_at: - description: Creation time of the deletion request. - example: '2024-01-01T00:00:00.000000Z' - type: string - created_by: - description: User who created the deletion request. - example: test.user@datadoghq.com - type: string - from_time: - description: Start of requested time window, milliseconds since Unix epoch. - example: 1672527600000 - format: int64 - type: integer - indexes: - description: List of indexes for the search. If not provided, the search - is performed in all indexes. - example: - - test-index - - test-index-2 - items: - description: Individual index. - type: string - type: array - is_created: - description: Whether the deletion request is fully created or not. It can - take several minutes to fully create a deletion request depending on the - target query and timeframe. - example: true - type: boolean - org_id: - description: Organization ID. - example: 321813 - format: int64 - type: integer - product: - description: Product name. - example: logs - type: string - query: - description: Query for creating a data deletion request. - example: service:xyz host:abc - type: string - starting_at: - description: Starting time of the process to delete the requested data. - example: '2024-01-01T02:00:00.000000Z' - type: string - status: - description: Status of the deletion request. - example: pending - type: string - to_time: - description: End of requested time window, milliseconds since Unix epoch. - example: 1704063600000 - format: int64 - type: integer - total_unrestricted: - description: Total number of elements to be deleted. Only the data accessible - to the current user that matches the query and timeframe provided will - be deleted. - example: 100 - format: int64 - type: integer - updated_at: - description: Update time of the deletion request. - example: '2024-01-01T00:00:00.000000Z' - type: string - required: - - created_at - - created_by - - from_time - - is_created - - org_id - - product - - query - - starting_at - - status - - to_time - - total_unrestricted - - updated_at - type: object - DataDeletionResponseMeta: - description: The metadata of the data deletion response. - properties: - count_product: - additionalProperties: - format: int64 - type: integer - description: The total deletion requests created by product. - example: - logs: 8 - rum: 7 - type: object - count_status: - additionalProperties: - format: int64 - type: integer - description: The total deletion requests created by status. - example: - completed: 10 - pending: 5 - type: object - next_page: - description: The next page when searching deletion requests created in the - current organization. - example: cGFnZTI= - type: string - product: - description: The product of the deletion request. - example: logs - type: string - request_status: - description: The status of the executed request. - example: canceled - type: string - type: object - DataRelationshipsTeams: - description: Associates teams with this schedule in a data structure. - properties: - data: - description: An array of team references for this schedule. - items: - $ref: '#/components/schemas/DataRelationshipsTeamsDataItems' - type: array - type: object - DataRelationshipsTeamsDataItems: - description: Relates a team to this schedule, identified by `id` and `type` - (must be `teams`). - properties: - id: - description: The unique identifier of the team in this relationship. - example: 00000000-da3a-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/DataRelationshipsTeamsDataItemsType' - required: - - type - - id - type: object - DataRelationshipsTeamsDataItemsType: - default: teams - description: Teams resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - DataScalarColumn: - description: A column containing the numerical results for a formula or query. - properties: - meta: - $ref: '#/components/schemas/ScalarMeta' - name: - description: The name referencing the formula or query for this column. - example: a - type: string - type: - $ref: '#/components/schemas/ScalarColumnTypeNumber' - values: - description: The array of numerical values for one formula or query. - example: - - 0.5 - items: - description: An individual value for a given column and group-by. - example: 0.5 - format: double - nullable: true - type: number - type: array - type: object - DataTransform: - description: A data transformer, which is custom JavaScript code that executes - and transforms data when its inputs change. - properties: - id: - description: The ID of the data transformer. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - name: - description: A unique identifier for this data transformer. This name is - also used to access the transformer's result throughout the app. - example: combineTwoOrders - type: string - properties: - $ref: '#/components/schemas/DataTransformProperties' - type: - $ref: '#/components/schemas/DataTransformType' - required: - - id - - name - - type - - properties - type: object - DataTransformProperties: - description: The properties of the data transformer. - properties: - outputs: - description: A JavaScript function that returns the transformed data. - example: "${(() => {return {\n allItems: [...fetchOrder1.outputs.items, - ...fetchOrder2.outputs.items],\n}})()}" - type: string - type: object - DataTransformType: - default: dataTransform - description: The data transform type. - enum: - - dataTransform - example: dataTransform - type: string - x-enum-varnames: - - DATATRANSFORM - DatabaseMonitoringTriggerWrapper: - description: Schema for a Database Monitoring-based trigger. - properties: - databaseMonitoringTrigger: - description: Trigger a workflow from Database Monitoring. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - databaseMonitoringTrigger - type: object - DatadogAPIKey: - description: The definition of the `DatadogAPIKey` object. - properties: - api_key: - description: The `DatadogAPIKey` `api_key`. - example: '' - type: string - app_key: - description: The `DatadogAPIKey` `app_key`. - example: '' - type: string - datacenter: - description: The `DatadogAPIKey` `datacenter`. - example: '' - type: string - subdomain: - description: Custom subdomain used for Datadog URLs generated with this - Connection. For example, if this org uses `https://acme.datadoghq.com` - to access Datadog, set this field to `acme`. If this field is omitted, - generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). - type: string - type: - $ref: '#/components/schemas/DatadogAPIKeyType' - required: - - type - - datacenter - - api_key - - app_key - type: object - DatadogAPIKeyType: - description: The definition of the `DatadogAPIKey` object. - enum: - - DatadogAPIKey - example: DatadogAPIKey - type: string - x-enum-varnames: - - DATADOGAPIKEY - DatadogAPIKeyUpdate: - description: The definition of the `DatadogAPIKey` object. - properties: - api_key: - description: The `DatadogAPIKeyUpdate` `api_key`. - type: string - app_key: - description: The `DatadogAPIKeyUpdate` `app_key`. - type: string - datacenter: - description: The `DatadogAPIKeyUpdate` `datacenter`. - type: string - subdomain: - description: Custom subdomain used for Datadog URLs generated with this - Connection. For example, if this org uses `https://acme.datadoghq.com` - to access Datadog, set this field to `acme`. If this field is omitted, - generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). - type: string - type: - $ref: '#/components/schemas/DatadogAPIKeyType' - required: - - type - type: object - DatadogCredentials: - description: The definition of the `DatadogCredentials` object. - oneOf: - - $ref: '#/components/schemas/DatadogAPIKey' - DatadogCredentialsUpdate: - description: The definition of the `DatadogCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/DatadogAPIKeyUpdate' - DatadogIntegration: - description: The definition of the `DatadogIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/DatadogCredentials' - type: - $ref: '#/components/schemas/DatadogIntegrationType' - required: - - type - - credentials - type: object - DatadogIntegrationType: - description: The definition of the `DatadogIntegrationType` object. - enum: - - Datadog - example: Datadog - type: string - x-enum-varnames: - - DATADOG - DatadogIntegrationUpdate: - description: The definition of the `DatadogIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/DatadogCredentialsUpdate' - type: - $ref: '#/components/schemas/DatadogIntegrationType' - required: - - type - type: object - DatasetAttributesRequest: - description: Dataset metadata and configurations. - properties: - name: - description: Name of the dataset. - example: Security Audit Dataset - type: string - principals: - description: List of access principals, formatted as `principal_type:id`. - Principal can be 'team' or 'role'. - example: - - role:94172442-be03-11e9-a77a-3b7612558ac1 - items: - example: role:94172442-be03-11e9-a77a-3b7612558ac1 - type: string - type: array - product_filters: - description: List of product-specific filters. - items: - $ref: '#/components/schemas/FiltersPerProduct' - type: array - required: - - name - - product_filters - - principals - type: object - DatasetAttributesResponse: - description: Dataset metadata and configuration(s). - properties: - created_at: - description: Timestamp when the dataset was created. - format: date-time - nullable: true - type: string - created_by: - description: Unique ID of the user who created the dataset. - format: uuid - type: string - name: - description: Name of the dataset. - example: Security Audit Dataset - type: string - principals: - description: List of access principals, formatted as `principal_type:id`. - Principal can be 'team' or 'role'. - example: - - role:86245fce-0a4e-11f0-92bd-da7ad0900002 - items: - example: role:86245fce-0a4e-11f0-92bd-da7ad0900002 - type: string - type: array - product_filters: - description: List of product-specific filters. - items: - $ref: '#/components/schemas/FiltersPerProduct' - type: array - type: object - DatasetCreateRequest: - description: Create request for a dataset. - properties: - data: - $ref: '#/components/schemas/DatasetRequest' - required: - - data - type: object - DatasetRequest: - description: "**Datasets Object Constraints**\n- **Tag limit per dataset**:\n - \ - Each restricted dataset supports a maximum of 10 key:value pairs per product.\n\n- - **Tag key rules per telemetry type**:\n - Only one tag key or attribute may - be used to define access within a single telemetry type.\n - The same or - different tag key may be used across different telemetry types.\n\n- **Tag - value uniqueness**:\n - Tag values must be unique within a single dataset.\n - \ - A tag value used in one dataset cannot be reused in another dataset of - the same telemetry type." - properties: - attributes: - $ref: '#/components/schemas/DatasetAttributesRequest' - type: - $ref: '#/components/schemas/DatasetType' - required: - - type - - attributes - type: object - DatasetResponse: - description: "**Datasets Object Constraints**\n- **Tag Limit per Dataset**:\n - \ - Each restricted dataset supports a maximum of 10 key:value pairs per product.\n\n- - **Tag Key Rules per Telemetry Type**:\n - Only one tag key or attribute may - be used to define access within a single telemetry type.\n - The same or - different tag key may be used across different telemetry types.\n\n- **Tag - Value Uniqueness**:\n - Tag values must be unique within a single dataset.\n - \ - A tag value used in one dataset cannot be reused in another dataset of - the same telemetry type." - properties: - attributes: - $ref: '#/components/schemas/DatasetAttributesResponse' - id: - description: Unique identifier for the dataset. - example: 123e4567-e89b-12d3-a456-426614174000 - type: string - type: - $ref: '#/components/schemas/DatasetType' - type: object - DatasetResponseMulti: - description: Response containing a list of datasets. - properties: - data: - description: The list of datasets returned in response. - items: - $ref: '#/components/schemas/DatasetResponse' - type: array - type: object - DatasetResponseSingle: - description: Response containing a single dataset object. - properties: - data: - $ref: '#/components/schemas/DatasetResponse' - type: object - DatasetType: - default: dataset - description: Resource type, always set to `dataset`. - enum: - - dataset - example: dataset - type: string - x-enum-varnames: - - DATASET - DatasetUpdateRequest: - description: Edit request for a dataset. - properties: - data: - $ref: '#/components/schemas/DatasetRequest' - required: - - data - type: object - Datastore: - description: A datastore's complete configuration and metadata. - properties: - data: - $ref: '#/components/schemas/DatastoreData' - type: object - DatastoreArray: - description: A collection of datastores returned by list operations. - properties: - data: - description: An array of datastore objects containing their configurations - and metadata. - items: - $ref: '#/components/schemas/DatastoreData' - type: array - required: - - data - type: object - DatastoreAttributesPrimaryColumnName: - description: "The name of the primary key column for this datastore. Primary - column names:\n - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm)\n - \ - Cannot exceed 63 characters" - example: '' - maxLength: 63 - type: string - DatastoreData: - description: Core information about a datastore, including its unique identifier - and attributes. - properties: - attributes: - $ref: '#/components/schemas/DatastoreDataAttributes' - id: - description: The unique identifier of the datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - DatastoreDataAttributes: - description: Detailed information about a datastore. - properties: - created_at: - description: Timestamp when the datastore was created. - format: date-time - type: string - creator_user_id: - description: The numeric ID of the user who created the datastore. - format: int64 - type: integer - creator_user_uuid: - description: The UUID of the user who created the datastore. - type: string - description: - description: A human-readable description about the datastore. - type: string - modified_at: - description: Timestamp when the datastore was last modified. - format: date-time - type: string - name: - description: The display name of the datastore. - type: string - org_id: - description: The ID of the organization that owns this datastore. - format: int64 - type: integer - primary_column_name: - $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' - primary_key_generation_strategy: - $ref: '#/components/schemas/DatastorePrimaryKeyGenerationStrategy' - type: object - DatastoreDataType: - default: datastores - description: The resource type for datastores. - enum: - - datastores - example: datastores - type: string - x-enum-varnames: - - DATASTORES - DatastoreItemConflictMode: - description: How to handle conflicts when inserting items that already exist - in the datastore. - enum: - - fail_on_conflict - - overwrite_on_conflict - example: overwrite_on_conflict - type: string - x-enum-varnames: - - FAIL_ON_CONFLICT - - OVERWRITE_ON_CONFLICT - DatastoreItemValues: - description: An array of items to add to the datastore, where each item is a - set of key-value pairs representing the item's data. Up to 100 items can be - updated in a single request. - example: - - data: example data - key: value - - data: example data2 - key: value2 - items: - additionalProperties: {} - description: A single item's data as key-value pairs. Key names cannot exceed - 63 characters. - type: object - maxItems: 100 - type: array - DatastoreItemsDataType: - default: items - description: The resource type for datastore items. - enum: - - items - example: items - type: string - x-enum-varnames: - - ITEMS - DatastorePrimaryKeyGenerationStrategy: - description: Can be set to `uuid` to automatically generate primary keys when - new items are added. Default value is `none`, which requires you to supply - a primary key for each new item. - enum: - - none - - uuid - type: string - x-enum-varnames: - - NONE - - UUID - Date: - description: Date as Unix timestamp in milliseconds. - example: 1722439510282 - format: int64 - type: integer - DeleteAppResponse: - description: The response object after an app is successfully deleted. - properties: - data: - $ref: '#/components/schemas/DeleteAppResponseData' - type: object - DeleteAppResponseData: - description: The definition of `DeleteAppResponseData` object. - properties: - id: - description: The ID of the deleted app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - DeleteAppsDatastoreItemRequest: - description: Request to delete a specific item from a datastore by its primary - key. - properties: - data: - $ref: '#/components/schemas/DeleteAppsDatastoreItemRequestData' - type: object - DeleteAppsDatastoreItemRequestData: - description: Data wrapper containing the information needed to identify and - delete a specific datastore item. - properties: - attributes: - $ref: '#/components/schemas/DeleteAppsDatastoreItemRequestDataAttributes' - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - DeleteAppsDatastoreItemRequestDataAttributes: - description: Attributes specifying which datastore item to delete by its primary - key. - properties: - id: - description: Optional unique identifier of the item to delete. - example: a7656bcc-51d4-4884-adf7-4d0d9a3e0633 - type: string - item_key: - description: The primary key value that identifies the item to delete. Cannot - exceed 256 characters. - example: primaryKey - maxLength: 256 - type: string - required: - - item_key - type: object - DeleteAppsDatastoreItemResponse: - description: Response from successfully deleting a datastore item. - properties: - data: - $ref: '#/components/schemas/DeleteAppsDatastoreItemResponseData' - type: object - DeleteAppsDatastoreItemResponseData: - description: Data containing the identifier of the datastore item that was successfully - deleted. - properties: - id: - description: The unique identifier of the item that was deleted. - type: string - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - DeleteAppsRequest: - description: A request object for deleting multiple apps by ID. - example: - data: - - id: aea2ed17-b45f-40d0-ba59-c86b7972c901 - type: appDefinitions - - id: f69bb8be-6168-4fe7-a30d-370256b6504a - type: appDefinitions - - id: ab1ed73e-13ad-4426-b0df-a0ff8876a088 - type: appDefinitions - properties: - data: - description: An array of objects containing the IDs of the apps to delete. - items: - $ref: '#/components/schemas/DeleteAppsRequestDataItems' - type: array - type: object - DeleteAppsRequestDataItems: - description: An object containing the ID of an app to delete. - properties: - id: - description: The ID of the app to delete. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - DeleteAppsResponse: - description: The response object after multiple apps are successfully deleted. - properties: - data: - description: An array of objects containing the IDs of the deleted apps. - items: - $ref: '#/components/schemas/DeleteAppsResponseDataItems' - type: array - type: object - DeleteAppsResponseDataItems: - description: An object containing the ID of a deleted app. - properties: - id: - description: The ID of the deleted app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - DeleteCustomFrameworkResponse: - description: Response object to delete a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkMetadata' - required: - - data - type: object - DependencyLocation: - description: Static library vulnerability location. - properties: - column_end: - description: Location column end. - example: 140 - format: int64 - type: integer - column_start: - description: Location column start. - example: 5 - format: int64 - type: integer - file_name: - description: Location file name. - example: src/go.mod - type: string - line_end: - description: Location line end. - example: 10 - format: int64 - type: integer - line_start: - description: Location line start. - example: 1 - format: int64 - type: integer - required: - - file_name - - line_start - - line_end - - column_start - - column_end - type: object - Deployment: - description: The version of the app that was published. - properties: - attributes: - $ref: '#/components/schemas/DeploymentAttributes' - id: - description: The deployment ID. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - meta: - $ref: '#/components/schemas/DeploymentMetadata' - type: - $ref: '#/components/schemas/AppDeploymentType' - type: object - DeploymentAttributes: - description: The attributes object containing the version ID of the published - app. - properties: - app_version_id: - description: The version ID of the app that was published. For an unpublished - app, this is always the nil UUID (`00000000-0000-0000-0000-000000000000`). - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: object - DeploymentMetadata: - description: Metadata object containing the publication creation information. - properties: - created_at: - description: Timestamp of when the app was published. - format: date-time - type: string - user_id: - description: The ID of the user who published the app. - format: int64 - type: integer - user_name: - description: The name (or email address) of the user who published the app. - type: string - user_uuid: - description: The UUID of the user who published the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: object - DeploymentRelationship: - description: Information pointing to the app's publication status. - properties: - data: - $ref: '#/components/schemas/DeploymentRelationshipData' - meta: - $ref: '#/components/schemas/DeploymentMetadata' - type: object - DeploymentRelationshipData: - description: Data object containing the deployment ID. - properties: - id: - description: The deployment ID. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDeploymentType' - type: object - DetailedFinding: - description: A single finding with with message and resource configuration. - properties: - attributes: - $ref: '#/components/schemas/DetailedFindingAttributes' - id: - $ref: '#/components/schemas/FindingID' - type: - $ref: '#/components/schemas/DetailedFindingType' - type: object - DetailedFindingAttributes: - description: The JSON:API attributes of the detailed finding. - properties: - evaluation: - $ref: '#/components/schemas/FindingEvaluation' - evaluation_changed_at: - $ref: '#/components/schemas/FindingEvaluationChangedAt' - message: - description: The remediation message for this finding. - example: '## Remediation - - - ### From the console - - - 1. Go to Storage Account - - 2. For each Storage Account, navigate to Data Protection - - 3. Select Set soft delete enabled and enter the number of days to retain - soft deleted data.' - type: string - mute: - $ref: '#/components/schemas/FindingMute' - resource: - $ref: '#/components/schemas/FindingResource' - resource_configuration: - description: The resource configuration for this finding. - type: object - resource_discovery_date: - $ref: '#/components/schemas/FindingResourceDiscoveryDate' - resource_type: - $ref: '#/components/schemas/FindingResourceType' - rule: - $ref: '#/components/schemas/FindingRule' - status: - $ref: '#/components/schemas/FindingStatus' - tags: - $ref: '#/components/schemas/FindingTags' - type: object - DetailedFindingType: - default: detailed_finding - description: The JSON:API type for findings that have the message and resource - configuration. - enum: - - detailed_finding - example: detailed_finding - type: string - x-enum-varnames: - - DETAILED_FINDING - DeviceAttributes: - description: The device attributes - properties: - description: - description: The device description - example: a device monitored with NDM - type: string - device_type: - description: The device type - example: other - type: string - integration: - description: The device integration - example: snmp - type: string - interface_statuses: - $ref: '#/components/schemas/DeviceAttributesInterfaceStatuses' - ip_address: - description: The device IP address - example: 1.2.3.4 - type: string - location: - description: The device location - example: paris - type: string - model: - description: The device model - example: xx-123 - type: string - name: - description: The device name - example: example device - type: string - os_hostname: - description: The device OS hostname - type: string - os_name: - description: The device OS name - example: example OS - type: string - os_version: - description: The device OS version - example: 1.0.2 - type: string - ping_status: - description: The device ping status - example: unmonitored - type: string - product_name: - description: The device product name - example: example device - type: string - serial_number: - description: The device serial number - example: X12345 - type: string - status: - description: The device SNMP status - example: ok - type: string - subnet: - description: The device subnet - example: 1.2.3.4/24 - type: string - sys_object_id: - description: The device `sys_object_id` - example: 1.3.6.1.4.1.99999 - type: string - tags: - description: The list of device tags - example: - - device_ip:1.2.3.4 - - device_id:example:1.2.3.4 - items: - type: string - type: array - vendor: - description: The device vendor - example: example vendor - type: string - version: - description: The device version - example: 1.2.3 - type: string - type: object - DeviceAttributesInterfaceStatuses: - description: Count of the device interfaces by status - example: - down: 1 - 'off': 2 - up: 12 - warning: 5 - properties: - down: - description: The number of interfaces that are down - format: int64 - type: integer - 'off': - description: The number of interfaces that are off - format: int64 - type: integer - up: - description: The number of interfaces that are up - format: int64 - type: integer - warning: - description: The number of interfaces that are in a warning state - format: int64 - type: integer - type: object - DevicesListData: - description: The devices list data - properties: - attributes: - $ref: '#/components/schemas/DeviceAttributes' - id: - description: The device ID - example: example:1.2.3.4 - type: string - type: - description: The type of the resource. The value should always be device. - type: string - type: object - DnsMetricKey: - description: The metric key for DNS metrics. - enum: - - dns_total_requests - - dns_failures - - dns_successful_responses - - dns_failed_responses - - dns_timeouts - - dns_responses.nxdomain - - dns_responses.servfail - - dns_responses.other - - dns_success_latency_percentile - - dns_failure_latency_percentile - type: string - x-enum-descriptions: - - The total number of DNS requests made by the client. - - The total number of timeouts and errors in DNS requests. - - The total number of successful DNS responses. - - The total number of failed DNS responses. - - The total number of DNS timeouts. - - The total number of DNS responses with the NXDOMAIN error code. - - The total number of DNS responses with the SERVFAIL error code. - - The total number of DNS responses with other error codes. - - The latency percentile for successful DNS responses. - - The latency percentile for failed DNS responses. - x-enum-varnames: - - DNS_TOTAL_REQUESTS - - DNS_FAILURES - - DNS_SUCCESSFUL_RESPONSES - - DNS_FAILED_RESPONSES - - DNS_TIMEOUTS - - DNS_RESPONSES_NXDOMAIN - - DNS_RESPONSES_SERVFAIL - - DNS_RESPONSES_OTHER - - DNS_SUCCESS_LATENCY_PERCENTILE - - DNS_FAILURE_LATENCY_PERCENTILE - DomainAllowlist: - description: The email domain allowlist for an org. - properties: - attributes: - $ref: '#/components/schemas/DomainAllowlistAttributes' - id: - description: The unique identifier of the org. - nullable: true - type: string - type: - $ref: '#/components/schemas/DomainAllowlistType' - required: - - type - type: object - DomainAllowlistAttributes: - description: The details of the email domain allowlist. - properties: - domains: - description: The list of domains in the email domain allowlist. - items: - type: string - type: array - enabled: - description: Whether the email domain allowlist is enabled for the org. - type: boolean - type: object - DomainAllowlistRequest: - description: Request containing the desired email domain allowlist configuration. - properties: - data: - $ref: '#/components/schemas/DomainAllowlist' - required: - - data - type: object - DomainAllowlistResponse: - description: Response containing information about the email domain allowlist. - properties: - data: - $ref: '#/components/schemas/DomainAllowlistResponseData' - type: object - DomainAllowlistResponseData: - description: The email domain allowlist response for an org. - properties: - attributes: - $ref: '#/components/schemas/DomainAllowlistResponseDataAttributes' - id: - description: The unique identifier of the org. - nullable: true - type: string - type: - $ref: '#/components/schemas/DomainAllowlistType' - required: - - type - type: object - DomainAllowlistResponseDataAttributes: - description: The details of the email domain allowlist. - properties: - domains: - description: The list of domains in the email domain allowlist. - items: - type: string - type: array - enabled: - description: Whether the email domain allowlist is enabled for the org. - type: boolean - type: object - DomainAllowlistType: - default: domain_allowlist - description: Email domain allowlist allowlist type. - enum: - - domain_allowlist - example: domain_allowlist - type: string - x-enum-varnames: - - DOMAIN_ALLOWLIST - DowntimeCreateRequest: - description: Request for creating a downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeCreateRequestData' - required: - - data - type: object - DowntimeCreateRequestAttributes: - description: Downtime details. - properties: - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleCreateRequest' - scope: - $ref: '#/components/schemas/DowntimeScope' - required: - - scope - - monitor_identifier - type: object - DowntimeCreateRequestData: - description: Object to create a downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeCreateRequestAttributes' - type: - $ref: '#/components/schemas/DowntimeResourceType' - required: - - type - - attributes - type: object - DowntimeDisplayTimezone: - default: UTC - description: 'The timezone in which to display the downtime''s start and end - times in Datadog applications. This is not used - - as an offset for scheduling.' - example: America/New_York - nullable: true - type: string - DowntimeIncludedMonitorType: - default: monitors - description: Monitor resource type. - enum: - - monitors - example: monitors - type: string - x-enum-varnames: - - MONITORS - DowntimeMessage: - description: 'A message to include with notifications for this downtime. Email - notifications can be sent to specific users - - by using the same `@username` notation as events.' - example: Message about the downtime - nullable: true - type: string - DowntimeMeta: - description: Pagination metadata returned by the API. - properties: - page: - $ref: '#/components/schemas/DowntimeMetaPage' - type: object - DowntimeMetaPage: - description: Object containing the total filtered count. - properties: - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - DowntimeMonitorIdentifier: - description: Monitor identifier for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeMonitorIdentifierId' - - $ref: '#/components/schemas/DowntimeMonitorIdentifierTags' - DowntimeMonitorIdentifierId: - additionalProperties: {} - description: Object of the monitor identifier. - properties: - monitor_id: - description: ID of the monitor to prevent notifications. - example: 123 - format: int64 - type: integer - required: - - monitor_id - type: object - DowntimeMonitorIdentifierTags: - additionalProperties: {} - description: Object of the monitor tags. - properties: - monitor_tags: - description: 'A list of monitor tags. For example, tags that are applied - directly to monitors, - - not tags that are used in monitor queries (which are filtered by the scope - parameter), to which the downtime applies. - - The resulting downtime applies to monitors that match **all** provided - monitor tags. Setting `monitor_tags` - - to `[*]` configures the downtime to mute all monitors for the given scope.' - example: - - service:postgres - - team:frontend - items: - description: A list of monitor tags. - example: service:postgres - type: string - minItems: 1 - type: array - required: - - monitor_tags - type: object - DowntimeMonitorIncludedAttributes: - description: Attributes of the monitor identified by the downtime. - properties: - name: - description: The name of the monitor identified by the downtime. - example: A monitor name - type: string - type: object - DowntimeMonitorIncludedItem: - description: Information about the monitor identified by the downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeMonitorIncludedAttributes' - id: - description: ID of the monitor identified by the downtime. - example: 12345 - format: int64 - type: integer - type: - $ref: '#/components/schemas/DowntimeIncludedMonitorType' - type: object - DowntimeMuteFirstRecoveryNotification: - description: If the first recovery notification during a downtime should be - muted. - example: false - type: boolean - DowntimeNotifyEndStateActions: - description: Action that will trigger a monitor notification if the downtime - is in the `notify_end_types` state. - enum: - - canceled - - expired - example: canceled - type: string - x-enum-varnames: - - CANCELED - - EXPIRED - DowntimeNotifyEndStateTypes: - description: State that will trigger a monitor notification when the `notify_end_types` - action occurs. - enum: - - alert - - no data - - warn - example: alert - type: string - x-enum-varnames: - - ALERT - - NO_DATA - - WARN - DowntimeNotifyEndStates: - description: States that will trigger a monitor notification when the `notify_end_types` - action occurs. - example: - - alert - - warn - items: - $ref: '#/components/schemas/DowntimeNotifyEndStateTypes' - type: array - DowntimeNotifyEndTypes: - description: Actions that will trigger a monitor notification if the downtime - is in the `notify_end_types` state. - example: - - canceled - - expired - items: - $ref: '#/components/schemas/DowntimeNotifyEndStateActions' - type: array - DowntimeRelationships: - description: All relationships associated with downtime. - properties: - created_by: - $ref: '#/components/schemas/DowntimeRelationshipsCreatedBy' - monitor: - $ref: '#/components/schemas/DowntimeRelationshipsMonitor' - type: object - DowntimeRelationshipsCreatedBy: - description: The user who created the downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeRelationshipsCreatedByData' - type: object - DowntimeRelationshipsCreatedByData: - description: Data for the user who created the downtime. - nullable: true - properties: - id: - description: User ID of the downtime creator. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - type: object - DowntimeRelationshipsMonitor: - description: The monitor identified by the downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeRelationshipsMonitorData' - type: object - DowntimeRelationshipsMonitorData: - description: Data for the monitor. - nullable: true - properties: - id: - description: Monitor ID of the downtime. - example: '12345' - type: string - type: - $ref: '#/components/schemas/DowntimeIncludedMonitorType' - type: object - DowntimeResourceType: - default: downtime - description: Downtime resource type. - enum: - - downtime - example: downtime - type: string - x-enum-varnames: - - DOWNTIME - DowntimeResponse: - description: 'Downtiming gives you greater control over monitor notifications - by - - allowing you to globally exclude scopes from alerting. - - Downtime settings, which can be scheduled with start and end times, - - prevent all alerting related to specified Datadog tags.' - properties: - data: - $ref: '#/components/schemas/DowntimeResponseData' - included: - description: Array of objects related to the downtime that the user requested. - items: - $ref: '#/components/schemas/DowntimeResponseIncludedItem' - type: array - type: object - DowntimeResponseAttributes: - description: Downtime details. - properties: - canceled: - description: Time that the downtime was canceled. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - nullable: true - type: string - created: - description: Creation time of the downtime. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - type: string - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - modified: - description: Time that the downtime was last modified. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - type: string - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleResponse' - scope: - $ref: '#/components/schemas/DowntimeScope' - status: - $ref: '#/components/schemas/DowntimeStatus' - type: object - DowntimeResponseData: - description: Downtime data. - properties: - attributes: - $ref: '#/components/schemas/DowntimeResponseAttributes' - id: - description: The downtime ID. - example: 00000000-0000-1234-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/DowntimeRelationships' - type: - $ref: '#/components/schemas/DowntimeResourceType' - type: object - DowntimeResponseIncludedItem: - description: An object related to a downtime. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/DowntimeMonitorIncludedItem' - DowntimeScheduleCreateRequest: - description: Schedule for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesCreateRequest' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' - DowntimeScheduleCurrentDowntimeResponse: - description: 'The most recent actual start and end dates for a recurring downtime. - For a canceled downtime, - - this is the previously occurring downtime. For active downtimes, this is the - ongoing downtime, and for scheduled - - downtimes it is the upcoming downtime.' - properties: - end: - description: The end of the current downtime. - example: 2020-01-02 03:04:00+00:00 - format: date-time - nullable: true - type: string - start: - description: The start of the current downtime. - example: 2020-01-02 03:04:00+00:00 - format: date-time - type: string - type: object - DowntimeScheduleOneTimeCreateUpdateRequest: - additionalProperties: false - description: A one-time downtime definition. - properties: - end: - description: 'ISO-8601 Datetime to end the downtime. Must include a UTC - offset of zero. If not provided, the - - downtime continues forever.' - example: 2020-01-02 03:04:00+00:00 - format: date-time - nullable: true - type: string - start: - description: 'ISO-8601 Datetime to start the downtime. Must include a UTC - offset of zero. If not provided, the - - downtime starts the moment it is created.' - example: 2020-01-02 03:04:00+00:00 - format: date-time - nullable: true - type: string - type: object - DowntimeScheduleOneTimeResponse: - description: A one-time downtime definition. - properties: - end: - description: ISO-8601 Datetime to end the downtime. - example: 2020-01-02 03:04:00+00:00 - format: date-time - nullable: true - type: string - start: - description: ISO-8601 Datetime to start the downtime. - example: 2020-01-02 03:04:00+00:00 - format: date-time - type: string - required: - - start - type: object - DowntimeScheduleRecurrenceCreateUpdateRequest: - additionalProperties: {} - description: An object defining the recurrence of the downtime. - properties: - duration: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceDuration' - rrule: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceRrule' - start: - description: 'ISO-8601 Datetime to start the downtime. Must not include - a UTC offset. If not provided, the - - downtime starts the moment it is created.' - example: 2020-01-02T03:04 - nullable: true - type: string - required: - - duration - - rrule - type: object - DowntimeScheduleRecurrenceDuration: - description: The length of the downtime. Must begin with an integer and end - with one of 'm', 'h', d', or 'w'. - example: 123d - type: string - DowntimeScheduleRecurrenceResponse: - description: An RRULE-based recurring downtime. - properties: - duration: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceDuration' - rrule: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceRrule' - start: - description: 'ISO-8601 Datetime to start the downtime. Must not include - a UTC offset. If not provided, the - - downtime starts the moment it is created.' - example: 2020-01-02T03:04 - type: string - type: object - DowntimeScheduleRecurrenceRrule: - description: 'The `RRULE` standard for defining recurring events. - - For example, to have a recurring event on the first day of each month, set - the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to `1`. - - Most common `rrule` options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) - are supported. - - - **Note**: Attributes specifying the duration in `RRULE` are not supported - (for example, `DTSTART`, `DTEND`, `DURATION`). - - More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api).' - example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 - type: string - DowntimeScheduleRecurrencesCreateRequest: - description: A recurring downtime schedule definition. - properties: - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' - type: array - timezone: - default: UTC - description: The timezone in which to schedule the downtime. - example: America/New_York - type: string - required: - - recurrences - type: object - DowntimeScheduleRecurrencesResponse: - description: A recurring downtime schedule definition. - properties: - current_downtime: - $ref: '#/components/schemas/DowntimeScheduleCurrentDowntimeResponse' - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceResponse' - maxItems: 5 - minItems: 1 - type: array - timezone: - default: UTC - description: 'The timezone in which to schedule the downtime. This affects - recurring start and end dates. - - Must match `display_timezone`.' - example: America/New_York - type: string - required: - - recurrences - type: object - DowntimeScheduleRecurrencesUpdateRequest: - additionalProperties: false - description: A recurring downtime schedule definition. - properties: - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' - type: array - timezone: - default: UTC - description: The timezone in which to schedule the downtime. - example: America/New_York - type: string - type: object - DowntimeScheduleResponse: - description: 'The schedule that defines when the monitor starts, stops, and - recurs. There are two types of schedules: - - one-time and recurring. Recurring schedules may have up to five RRULE-based - recurrences. If no schedules are - - provided, the downtime will begin immediately and never end.' - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesResponse' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeResponse' - DowntimeScheduleUpdateRequest: - description: Schedule for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesUpdateRequest' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' - DowntimeScope: - description: The scope to which the downtime applies. Must follow the [common - search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - example: env:(staging OR prod) AND datacenter:us-east-1 - type: string - DowntimeStatus: - description: The current status of the downtime. - enum: - - active - - canceled - - ended - - scheduled - example: active - type: string - x-enum-varnames: - - ACTIVE - - CANCELED - - ENDED - - SCHEDULED - DowntimeUpdateRequest: - description: Request for editing a downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeUpdateRequestData' - required: - - data - type: object - DowntimeUpdateRequestAttributes: - description: Attributes of the downtime to update. - properties: - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleUpdateRequest' - scope: - $ref: '#/components/schemas/DowntimeScope' - type: object - DowntimeUpdateRequestData: - description: Object to update a downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeUpdateRequestAttributes' - id: - description: ID of this downtime. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/DowntimeResourceType' - required: - - id - - type - - attributes - type: object - EPSS: - description: Vulnerability EPSS severity. - properties: - score: - description: Vulnerability EPSS severity score. - example: 0.2 - format: double - type: number - severity: - $ref: '#/components/schemas/VulnerabilitySeverity' - required: - - score - - severity - type: object - Enabled: - description: Field used to enable or disable the rule. - example: true - type: boolean - EntityAttributes: - description: Entity attributes. - properties: - apiVersion: - description: The API version. - type: string - description: - description: The description. - type: string - displayName: - description: The display name. - type: string - kind: - description: The kind. - type: string - name: - description: The name. - type: string - namespace: - description: The namespace. - type: string - owner: - description: The owner. - type: string - tags: - description: The tags. - items: - type: string - type: array - type: object - EntityData: - description: Entity data. - properties: - attributes: - $ref: '#/components/schemas/EntityAttributes' - id: - description: Entity ID. - type: string - meta: - $ref: '#/components/schemas/EntityMeta' - relationships: - $ref: '#/components/schemas/EntityRelationships' - type: - description: Entity. - type: string - type: object - EntityMeta: - description: Entity metadata. - properties: - createdAt: - description: The creation time. - type: string - ingestionSource: - description: The ingestion source. - type: string - modifiedAt: - description: The modification time. - type: string - origin: - description: The origin. - type: string - type: object - EntityRaw: - description: Entity definition in raw JSON or YAML representation. - example: "apiVersion: v3\nkind: service\nmetadata:\n name: myservice\n" - type: string - EntityReference: - description: The unique reference for an IDP entity. - example: service:my-service - type: string - EntityRelationships: - description: Entity relationships. - properties: - incidents: - $ref: '#/components/schemas/EntityToIncidents' - oncall: - $ref: '#/components/schemas/EntityToOncalls' - rawSchema: - $ref: '#/components/schemas/EntityToRawSchema' - relatedEntities: - $ref: '#/components/schemas/EntityToRelatedEntities' - schema: - $ref: '#/components/schemas/EntityToSchema' - type: object - EntityResponseData: - description: List of entity data. - items: - $ref: '#/components/schemas/EntityData' - type: array - EntityResponseIncludedIncident: - description: Included incident. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRelatedIncidentAttributes' - id: - description: Incident ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedIncidentType' - type: object - EntityResponseIncludedIncidentType: - description: Incident description. - enum: - - incident - type: string - x-enum-varnames: - - INCIDENT - EntityResponseIncludedOncall: - description: Included oncall. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRelatedOncallAttributes' - id: - description: Oncall ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedOncallType' - type: object - EntityResponseIncludedOncallType: - description: Oncall type. - enum: - - oncall - type: string - x-enum-varnames: - - ONCALL - EntityResponseIncludedRawSchema: - description: Included raw schema. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRawSchemaAttributes' - id: - description: Raw schema ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedRawSchemaType' - type: object - EntityResponseIncludedRawSchemaAttributes: - description: Included raw schema attributes. - properties: - rawSchema: - description: Schema from user input in base64 encoding. - type: string - type: object - EntityResponseIncludedRawSchemaType: - description: Raw schema type. - enum: - - rawSchema - type: string - x-enum-varnames: - - RAW_SCHEMA - EntityResponseIncludedRelatedEntity: - description: Included related entity. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityAttributes' - id: - description: Entity UUID. - type: string - meta: - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityMeta' - type: - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityType' - type: object - EntityResponseIncludedRelatedEntityAttributes: - description: Related entity attributes. - properties: - kind: - description: Entity kind. - type: string - name: - description: Entity name. - type: string - namespace: - description: Entity namespace. - type: string - type: - description: Entity relation type to the associated entity. - type: string - type: object - EntityResponseIncludedRelatedEntityMeta: - description: Included related entity meta. - properties: - createdAt: - description: Entity creation time. - format: date-time - type: string - defined_by: - description: Entity relation defined by. - type: string - modifiedAt: - description: Entity modification time. - format: date-time - type: string - source: - description: Entity relation source. - type: string - type: object - EntityResponseIncludedRelatedEntityType: - description: Related entity. - enum: - - relatedEntity - type: string - x-enum-varnames: - - RELATED_ENTITY - EntityResponseIncludedRelatedIncidentAttributes: - description: Incident attributes. - properties: - createdAt: - description: Incident creation time. - format: date-time - type: string - htmlURL: - description: Incident URL. - type: string - provider: - description: Incident provider. - type: string - status: - description: Incident status. - type: string - title: - description: Incident title. - type: string - type: object - EntityResponseIncludedRelatedOncallAttributes: - description: Included related oncall attributes. - properties: - escalations: - $ref: '#/components/schemas/EntityResponseIncludedRelatedOncallEscalations' - provider: - description: Oncall provider. - type: string - type: object - EntityResponseIncludedRelatedOncallEscalationItem: - description: Oncall escalation. - properties: - email: - description: Oncall email. - type: string - escalationLevel: - description: Oncall level. - format: int64 - type: integer - name: - description: Oncall name. - type: string - type: object - EntityResponseIncludedRelatedOncallEscalations: - description: Oncall escalations. - items: - $ref: '#/components/schemas/EntityResponseIncludedRelatedOncallEscalationItem' - type: array - EntityResponseIncludedSchema: - description: Included detail entity schema. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedSchemaAttributes' - id: - description: Entity ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedSchemaType' - type: object - EntityResponseIncludedSchemaAttributes: - description: Included schema. - properties: - schema: - $ref: '#/components/schemas/EntityV3' - type: object - EntityResponseIncludedSchemaType: - description: Schema type. - enum: - - schema - type: string - x-enum-varnames: - - SCHEMA - EntityResponseMeta: - description: Entity metadata. - properties: - count: - description: Total entities count. - format: int64 - type: integer - includeCount: - description: Total included data count. - format: int64 - type: integer - type: object - EntityToIncidents: - description: Entity to incidents relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipArray' - type: object - EntityToOncalls: - description: Entity to oncalls relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipArray' - type: object - EntityToRawSchema: - description: Entity to raw schema relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipItem' - type: object - EntityToRelatedEntities: - description: Entity to related entities relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipArray' - type: object - EntityToSchema: - description: Entity to detail schema relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipItem' - type: object - EntityV3: - description: Entity schema v3. - oneOf: - - $ref: '#/components/schemas/EntityV3Service' - - $ref: '#/components/schemas/EntityV3Datastore' - - $ref: '#/components/schemas/EntityV3Queue' - - $ref: '#/components/schemas/EntityV3System' - - $ref: '#/components/schemas/EntityV3API' - EntityV3API: - additionalProperties: false - description: Schema for API entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3APIDatadog' - extensions: - additionalProperties: {} - description: Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3APIKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3APISpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3APIDatadog: - additionalProperties: false - description: Datadog product integrations for the API entity. - properties: - codeLocations: - $ref: '#/components/schemas/EntityV3DatadogCodeLocations' - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - pipelines: - $ref: '#/components/schemas/EntityV3DatadogPipelines' - type: object - EntityV3APIKind: - description: The definition of Entity V3 API Kind object. - enum: - - api - example: api - type: string - x-enum-varnames: - - API - EntityV3APISpec: - additionalProperties: false - description: The definition of Entity V3 API Spec object. - properties: - implementedBy: - description: Services which implemented the API. - items: - type: string - type: array - interface: - $ref: '#/components/schemas/EntityV3APISpecInterface' - lifecycle: - description: The lifecycle state of the component. - minLength: 1 - type: string - tier: - description: The importance of the component. - minLength: 1 - type: string - type: - description: The type of API. - type: string - type: object - EntityV3APISpecInterface: - additionalProperties: false - description: The API definition. - oneOf: - - $ref: '#/components/schemas/EntityV3APISpecInterfaceFileRef' - - $ref: '#/components/schemas/EntityV3APISpecInterfaceDefinition' - EntityV3APISpecInterfaceDefinition: - additionalProperties: false - description: The definition of `EntityV3APISpecInterfaceDefinition` object. - properties: - definition: - description: The API definition. - type: object - type: object - EntityV3APISpecInterfaceFileRef: - additionalProperties: false - description: The definition of `EntityV3APISpecInterfaceFileRef` object. - properties: - fileRef: - description: The reference to the API definition file. - type: string - type: object - EntityV3APIVersion: - description: The version of the schema data that was used to populate this entity's - data. This could be via the API, Terraform, or YAML file in a repository. - The field is known as schema-version in the previous version. - enum: - - v3 - - v2.2 - - v2.1 - - v2 - example: v3 - type: string - x-enum-varnames: - - V3 - - V2_2 - - V2_1 - - V2 - EntityV3DatadogCodeLocationItem: - additionalProperties: false - description: Code location item. - properties: - paths: - description: The paths (glob) to the source code of the service. - items: - type: string - type: array - repositoryURL: - description: The repository path of the source code of the entity. - type: string - type: object - EntityV3DatadogCodeLocations: - additionalProperties: false - description: Schema for mapping source code locations to an entity. - items: - $ref: '#/components/schemas/EntityV3DatadogCodeLocationItem' - type: array - EntityV3DatadogEventItem: - additionalProperties: false - description: Events association item. - properties: - name: - description: The name of the query. - type: string - query: - description: The query to run. - type: string - type: object - EntityV3DatadogEvents: - additionalProperties: false - description: Events associations. - items: - $ref: '#/components/schemas/EntityV3DatadogEventItem' - type: array - EntityV3DatadogIntegrationOpsgenie: - additionalProperties: false - description: An Opsgenie integration schema. - properties: - region: - description: The region for the Opsgenie integration. - minLength: 1 - type: string - serviceURL: - description: The service URL for the Opsgenie integration. - example: https://www.opsgenie.com/service/shopping-cart - minLength: 1 - type: string - required: - - serviceURL - type: object - EntityV3DatadogIntegrationPagerduty: - additionalProperties: false - description: A PagerDuty integration schema. - properties: - serviceURL: - description: The service URL for the PagerDuty integration. - example: https://www.pagerduty.com/service-directory/Pshopping-cart - minLength: 1 - type: string - required: - - serviceURL - type: object - EntityV3DatadogLogItem: - additionalProperties: false - description: Log association item. - properties: - name: - description: The name of the query. - type: string - query: - description: The query to run. - type: string - type: object - EntityV3DatadogLogs: - additionalProperties: false - description: Logs association. - items: - $ref: '#/components/schemas/EntityV3DatadogLogItem' - type: array - EntityV3DatadogPerformance: - additionalProperties: false - description: Performance stats association. - properties: - tags: - description: A list of APM entity tags that associates the APM Stats data - with the entity. - items: - type: string - type: array - type: object - EntityV3DatadogPipelines: - additionalProperties: false - description: CI Pipelines association. - properties: - fingerprints: - description: A list of CI Fingerprints that associate CI Pipelines with - the entity. - items: - type: string - type: array - type: object - EntityV3Datastore: - additionalProperties: false - description: Schema for datastore entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3DatastoreDatadog' - extensions: - additionalProperties: {} - description: Custom extensions. This is the free-formed field to send client - side metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3DatastoreKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3DatastoreSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3DatastoreDatadog: - additionalProperties: false - description: Datadog product integrations for the datastore entity. - properties: - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - type: object - EntityV3DatastoreKind: - description: The definition of Entity V3 Datastore Kind object. - enum: - - datastore - example: datastore - type: string - x-enum-varnames: - - DATASTORE - EntityV3DatastoreSpec: - additionalProperties: false - description: The definition of Entity V3 Datastore Spec object. - properties: - componentOf: - description: A list of components the datastore is a part of - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the datastore. - minLength: 1 - type: string - tier: - description: The importance of the datastore. - minLength: 1 - type: string - type: - description: The type of datastore. - type: string - type: object - EntityV3Integrations: - additionalProperties: false - description: A base schema for defining third-party integrations. - properties: - opsgenie: - $ref: '#/components/schemas/EntityV3DatadogIntegrationOpsgenie' - pagerduty: - $ref: '#/components/schemas/EntityV3DatadogIntegrationPagerduty' - type: object - EntityV3Metadata: - additionalProperties: false - description: The definition of Entity V3 Metadata object. - properties: - additionalOwners: - additionalProperties: false - description: The additional owners of the entity, usually a team. - items: - $ref: '#/components/schemas/EntityV3MetadataAdditionalOwnersItems' - type: array - contacts: - additionalProperties: false - description: A list of contacts for the entity. - items: - $ref: '#/components/schemas/EntityV3MetadataContactsItems' - type: array - description: - description: Short description of the entity. The UI can leverage the description - for display. - type: string - displayName: - description: User friendly name of the entity. The UI can leverage the display - name for display. - type: string - id: - description: A read-only globally unique identifier for the entity generated - by Datadog. User supplied values are ignored. - example: 4b163705-23c0-4573-b2fb-f6cea2163fcb - minLength: 1 - type: string - inheritFrom: - description: The entity reference from which to inherit metadata - example: application:default/myapp - type: string - links: - additionalProperties: false - description: A list of links for the entity. - items: - $ref: '#/components/schemas/EntityV3MetadataLinksItems' - type: array - managed: - additionalProperties: {} - description: A read-only set of Datadog managed attributes generated by - Datadog. User supplied values are ignored. - type: object - name: - description: Unique name given to an entity under the kind/namespace. - example: myService - minLength: 1 - type: string - namespace: - description: Namespace is a part of unique identifier. It has a default - value of 'default'. - example: default - minLength: 1 - type: string - owner: - description: The owner of the entity, usually a team. - type: string - tags: - description: A set of custom tags. - example: - - this:tag - - that:tag - items: - type: string - type: array - required: - - name - type: object - EntityV3MetadataAdditionalOwnersItems: - description: The definition of Entity V3 Metadata Additional Owners Items object. - properties: - name: - description: Team name. - example: '' - type: string - type: - description: Team type. - type: string - required: - - name - type: object - EntityV3MetadataContactsItems: - additionalProperties: false - description: The definition of Entity V3 Metadata Contacts Items object. - properties: - contact: - description: Contact value. - example: https://slack/ - type: string - name: - description: Contact name. - minLength: 2 - type: string - type: - description: Contact type. - example: slack - type: string - required: - - type - - contact - type: object - EntityV3MetadataLinksItems: - additionalProperties: false - description: The definition of Entity V3 Metadata Links Items object. - properties: - name: - description: Link name. - example: mylink - type: string - provider: - description: Link provider. - type: string - type: - default: other - description: Link type. - example: link - type: string - url: - description: Link URL. - example: https://mylink - type: string - required: - - name - - type - - url - type: object - EntityV3Queue: - additionalProperties: false - description: Schema for queue entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3QueueDatadog' - extensions: - additionalProperties: {} - description: Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3QueueKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3QueueSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3QueueDatadog: - additionalProperties: false - description: Datadog product integrations for the datastore entity. - properties: - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - type: object - EntityV3QueueKind: - description: The definition of Entity V3 Queue Kind object. - enum: - - queue - example: queue - type: string - x-enum-varnames: - - QUEUE - EntityV3QueueSpec: - additionalProperties: false - description: The definition of Entity V3 Queue Spec object. - properties: - componentOf: - description: A list of components the queue is a part of - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the queue. - minLength: 1 - type: string - tier: - description: The importance of the queue. - minLength: 1 - type: string - type: - description: The type of queue. - type: string - type: object - EntityV3Service: - additionalProperties: false - description: Schema for service entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3ServiceDatadog' - extensions: - additionalProperties: {} - description: Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3ServiceKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3ServiceSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3ServiceDatadog: - additionalProperties: false - description: Datadog product integrations for the service entity. - properties: - codeLocations: - $ref: '#/components/schemas/EntityV3DatadogCodeLocations' - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - pipelines: - $ref: '#/components/schemas/EntityV3DatadogPipelines' - type: object - EntityV3ServiceKind: - description: The definition of Entity V3 Service Kind object. - enum: - - service - example: service - type: string - x-enum-varnames: - - SERVICE - EntityV3ServiceSpec: - additionalProperties: false - description: The definition of Entity V3 Service Spec object. - properties: - componentOf: - description: A list of components the service is a part of - items: - type: string - type: array - dependsOn: - description: A list of components the service depends on. - items: - type: string - type: array - languages: - description: The service's programming language. - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the component. - minLength: 1 - type: string - tier: - description: The importance of the component. - minLength: 1 - type: string - type: - description: The type of service. - type: string - type: object - EntityV3System: - additionalProperties: false - description: Schema for system entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3SystemDatadog' - extensions: - additionalProperties: {} - description: Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3SystemKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3SystemSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3SystemDatadog: - additionalProperties: false - description: Datadog product integrations for the service entity. - properties: - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - pipelines: - $ref: '#/components/schemas/EntityV3DatadogPipelines' - type: object - EntityV3SystemKind: - description: The definition of Entity V3 System Kind object. - enum: - - system - example: system - type: string - x-enum-varnames: - - SYSTEM - EntityV3SystemSpec: - additionalProperties: false - description: The definition of Entity V3 System Spec object. - properties: - components: - description: A list of components belongs to the system. - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the component. - minLength: 1 - type: string - tier: - description: An entity reference to the owner of the component. - minLength: 1 - type: string - type: object - ErrorHandler: - description: Used to handle errors in an action. - properties: - fallbackStepName: - description: The `ErrorHandler` `fallbackStepName`. - example: '' - type: string - retryStrategy: - $ref: '#/components/schemas/RetryStrategy' - required: - - retryStrategy - - fallbackStepName - type: object - Escalation: - description: Represents an escalation policy step. - properties: - id: - description: Unique identifier of the escalation step. - type: string - relationships: - $ref: '#/components/schemas/EscalationRelationships' - type: - $ref: '#/components/schemas/EscalationType' - required: - - type - type: object - EscalationPolicy: - description: Represents a complete escalation policy response, including policy - data and optionally included related resources. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: true - retries: 2 - id: 00000000-aba1-0000-0000-000000000000 - relationships: - steps: - data: - - id: 00000000-aba1-0000-0000-000000000000 - type: steps - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - included: - - attributes: - avatar: '' - description: Team 1 description - handle: team1 - name: Team 1 - id: 00000000-da3a-0000-0000-000000000000 - type: teams - - attributes: - assignment: default - escalate_after_seconds: 3600 - id: 00000000-aba1-0000-0000-000000000000 - relationships: - targets: - data: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - type: steps - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - properties: - data: - $ref: '#/components/schemas/EscalationPolicyData' - included: - description: Provides any included related resources, such as steps or targets, - returned with the policy. - items: - $ref: '#/components/schemas/EscalationPolicyIncluded' - type: array - type: object - EscalationPolicyCreateRequest: - description: Represents a request to create a new escalation policy, including - the policy data. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: true - retries: 2 - steps: - - assignment: default - escalate_after_seconds: 3600 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - - assignment: round-robin - escalate_after_seconds: 3600 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-abb1-0000-0000-000000000000 - type: users - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - properties: - data: - $ref: '#/components/schemas/EscalationPolicyCreateRequestData' - required: - - data - type: object - EscalationPolicyCreateRequestData: - description: Represents the data for creating an escalation policy, including - its attributes, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataAttributes' - relationships: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataType' - required: - - type - - attributes - type: object - EscalationPolicyCreateRequestDataAttributes: - description: Defines the attributes for creating an escalation policy, including - its description, name, resolution behavior, retries, and steps. - properties: - name: - description: Specifies the name for the new escalation policy. - example: On-Call Escalation Policy - type: string - resolve_page_on_policy_end: - description: Indicates whether the page is automatically resolved when the - policy ends. - type: boolean - retries: - description: Specifies how many times the escalation sequence is retried - if there is no response. - format: int64 - type: integer - steps: - description: A list of escalation steps, each defining assignment, escalation - timeout, and targets for the new policy. - items: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataAttributesStepsItems' - type: array - required: - - name - - steps - type: object - EscalationPolicyCreateRequestDataAttributesStepsItems: - description: Defines a single escalation step within an escalation policy creation - request. Contains assignment strategy, escalation timeout, and a list of targets. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Defines how many seconds to wait before escalating to the next - step. - example: 3600 - format: int64 - type: integer - targets: - description: Specifies the collection of escalation targets for this step. - example: - - users - items: - $ref: '#/components/schemas/EscalationPolicyStepTarget' - type: array - required: - - targets - type: object - EscalationPolicyCreateRequestDataRelationships: - description: Represents relationships in an escalation policy creation request, - including references to teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - EscalationPolicyCreateRequestDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - EscalationPolicyData: - description: Represents the data for a single escalation policy, including its - attributes, ID, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyDataAttributes' - id: - description: Specifies the unique identifier of the escalation policy. - example: ab000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyDataType' - required: - - type - type: object - EscalationPolicyDataAttributes: - description: Defines the main attributes of an escalation policy, such as its - name and behavior on policy end. - properties: - name: - description: Specifies the name of the escalation policy. - example: On-Call Escalation Policy - type: string - resolve_page_on_policy_end: - description: Indicates whether the page is automatically resolved when the - policy ends. - type: boolean - retries: - description: Specifies how many times the escalation sequence is retried - if there is no response. - format: int64 - type: integer - required: - - name - type: object - EscalationPolicyDataRelationships: - description: Represents the relationships for an escalation policy, including - references to steps and teams. - properties: - steps: - $ref: '#/components/schemas/EscalationPolicyDataRelationshipsSteps' - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - required: - - steps - type: object - EscalationPolicyDataRelationshipsSteps: - description: Defines the relationship to a collection of steps within an escalation - policy. Contains an array of step data references. - properties: - data: - description: An array of references to the steps defined in this escalation - policy. - items: - $ref: '#/components/schemas/EscalationPolicyDataRelationshipsStepsDataItems' - type: array - type: object - EscalationPolicyDataRelationshipsStepsDataItems: - description: Defines a relationship to a single step within an escalation policy. - Contains the step's `id` and `type`. - properties: - id: - description: Specifies the unique identifier for the step resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/EscalationPolicyDataRelationshipsStepsDataItemsType' - required: - - type - - id - type: object - EscalationPolicyDataRelationshipsStepsDataItemsType: - default: steps - description: Indicates that the resource is of type `steps`. - enum: - - steps - example: steps - type: string - x-enum-varnames: - - STEPS - EscalationPolicyDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - EscalationPolicyIncluded: - description: Represents included related resources when retrieving an escalation - policy, such as teams, steps, or targets. - oneOf: - - $ref: '#/components/schemas/TeamReference' - - $ref: '#/components/schemas/EscalationPolicyStep' - - $ref: '#/components/schemas/EscalationPolicyUser' - - $ref: '#/components/schemas/ScheduleData' - EscalationPolicyStep: - description: Represents a single step in an escalation policy, including its - attributes, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyStepAttributes' - id: - description: Specifies the unique identifier of this escalation policy step. - type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyStepRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyStepType' - required: - - type - type: object - EscalationPolicyStepAttributes: - description: Defines attributes for an escalation policy step, such as assignment - strategy and escalation timeout. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Specifies how many seconds to wait before escalating to the - next step. - format: int64 - type: integer - type: object - EscalationPolicyStepAttributesAssignment: - description: Specifies how this escalation step will assign targets (example - `default` or `round-robin`). - enum: - - default - - round-robin - type: string - x-enum-varnames: - - DEFAULT - - ROUND_ROBIN - EscalationPolicyStepRelationships: - description: Represents the relationship of an escalation policy step to its - targets. - properties: - targets: - $ref: '#/components/schemas/EscalationTargets' - type: object - EscalationPolicyStepTarget: - description: Defines a single escalation target within a step for an escalation - policy creation request. Contains `id` and `type`. - properties: - id: - description: Specifies the unique identifier for this target. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/EscalationPolicyStepTargetType' - type: object - EscalationPolicyStepTargetType: - description: Specifies the type of escalation target (example `users`, `schedules`, - or `teams`). - enum: - - users - - schedules - - teams - example: users - type: string - x-enum-varnames: - - USERS - - SCHEDULES - - TEAMS - EscalationPolicyStepType: - default: steps - description: Indicates that the resource is of type `steps`. - enum: - - steps - example: steps - type: string - x-enum-varnames: - - STEPS - EscalationPolicyUpdateRequest: - description: Represents a request to update an existing escalation policy, including - the updated policy data. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: false - retries: 2 - steps: - - assignment: default - escalate_after_seconds: 3600 - id: 00000000-aba1-0000-0000-000000000000 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - id: a3000000-0000-0000-0000-000000000000 - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - properties: - data: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestData' - required: - - data - type: object - EscalationPolicyUpdateRequestData: - description: Represents the data for updating an existing escalation policy, - including its ID, attributes, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataAttributes' - id: - description: Specifies the unique identifier of the escalation policy being - updated. - example: 00000000-aba1-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataType' - required: - - type - - id - - attributes - type: object - EscalationPolicyUpdateRequestDataAttributes: - description: Defines the attributes that can be updated for an escalation policy, - such as description, name, resolution behavior, retries, and steps. - properties: - name: - description: Specifies the name of the escalation policy. - example: On-Call Escalation Policy - type: string - resolve_page_on_policy_end: - description: Indicates whether the page is automatically resolved when the - policy ends. - type: boolean - retries: - description: Specifies how many times the escalation sequence is retried - if there is no response. - format: int64 - type: integer - steps: - description: A list of escalation steps, each defining assignment, escalation - timeout, and targets. - items: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataAttributesStepsItems' - type: array - required: - - name - - steps - type: object - EscalationPolicyUpdateRequestDataAttributesStepsItems: - description: Defines a single escalation step within an escalation policy update - request. Contains assignment strategy, escalation timeout, an optional step - ID, and a list of targets. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Defines how many seconds to wait before escalating to the next - step. - example: 3600 - format: int64 - type: integer - id: - description: Specifies the unique identifier of this step. - example: 00000000-aba1-0000-0000-000000000000 - type: string - targets: - description: Specifies the collection of escalation targets for this step. - items: - $ref: '#/components/schemas/EscalationPolicyStepTarget' - type: array - required: - - targets - type: object - EscalationPolicyUpdateRequestDataRelationships: - description: Represents relationships in an escalation policy update request, - including references to teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - EscalationPolicyUpdateRequestDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - EscalationPolicyUser: - description: Represents a user object in the context of an escalation policy, - including their `id`, type, and basic attributes. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyUserAttributes' - id: - description: The unique user identifier. - type: string - type: - $ref: '#/components/schemas/EscalationPolicyUserType' - required: - - type - type: object - EscalationPolicyUserAttributes: - description: Provides basic user information for an escalation policy, including - a name and email address. - properties: - email: - description: The user's email address. - example: jane.doe@example.com - type: string - name: - description: The user's name. - example: Jane Doe - type: string - status: - $ref: '#/components/schemas/UserAttributesStatus' - type: object - EscalationPolicyUserType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - EscalationRelationships: - description: Contains the relationships of an escalation object, including its - responders. - properties: - responders: - $ref: '#/components/schemas/EscalationRelationshipsResponders' - type: object - EscalationRelationshipsResponders: - description: Lists the users involved in a specific step of the escalation policy. - properties: - data: - description: Array of user references assigned as responders for this escalation - step. - items: - $ref: '#/components/schemas/EscalationRelationshipsRespondersDataItems' - type: array - type: object - EscalationRelationshipsRespondersDataItems: - description: Represents a user assigned to an escalation step. - properties: - id: - description: Unique identifier of the user assigned to the escalation step. - example: '' - type: string - type: - $ref: '#/components/schemas/EscalationRelationshipsRespondersDataItemsType' - required: - - type - - id - type: object - EscalationRelationshipsRespondersDataItemsType: - default: users - description: Represents the resource type for users assigned as responders in - an escalation step. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - EscalationTarget: - description: Represents an escalation target, which can be a team, user, or - schedule. - oneOf: - - $ref: '#/components/schemas/TeamTarget' - - $ref: '#/components/schemas/UserTarget' - - $ref: '#/components/schemas/ScheduleTarget' - EscalationTargets: - description: A list of escalation targets for a step - properties: - data: - description: The `EscalationTargets` `data`. - items: - $ref: '#/components/schemas/EscalationTarget' - type: array - type: object - EscalationType: - default: escalation_policy_steps - description: Represents the resource type for individual steps in an escalation - policy used during incident response. - enum: - - escalation_policy_steps - example: escalation_policy_steps - type: string - x-enum-varnames: - - ESCALATION_POLICY_STEPS - Estimation: - description: Recommended resource values for a Spark driver or executor, derived - from recent real usage metrics. Used by SPA to propose more efficient pod - sizing. - properties: - cpu: - $ref: '#/components/schemas/Cpu' - ephemeral_storage: - description: Recommended ephemeral storage allocation (in MiB). Derived - from job temporary storage patterns. - format: int64 - type: integer - heap: - description: Recommended JVM heap size (in MiB). - format: int64 - type: integer - memory: - description: Recommended total memory allocation (in MiB). Includes both - heap and overhead. - format: int64 - type: integer - overhead: - description: Recommended JVM overhead (in MiB). Computed as total memory - - heap. - format: int64 - type: integer - type: object - Event: - description: The metadata associated with a request. - properties: - id: - description: Event ID. - example: '6509751066204996294' - type: string - name: - description: The event name. - type: string - source_id: - description: Event source ID. - example: 36 - format: int64 - type: integer - type: - description: Event type. - example: error_tracking_alert - type: string - type: object - EventAttributes: - description: Object description of attributes from your event. - properties: - aggregation_key: - description: Aggregation key of the event. - type: string - date_happened: - description: 'POSIX timestamp of the event. Must be sent as an integer (no - quotation marks). - - Limited to events no older than 18 hours.' - format: int64 - type: integer - device_name: - description: A device name. - type: string - duration: - description: The duration between the triggering of the event and its recovery - in nanoseconds. - format: int64 - type: integer - event_object: - description: The event title. - example: Did you hear the news today? - type: string - evt: - $ref: '#/components/schemas/Event' - hostname: - description: 'Host name to associate with the event. - - Any tags associated with the host are also applied to this event.' - type: string - monitor: - $ref: '#/components/schemas/MonitorType' - monitor_groups: - description: List of groups referred to in the event. - items: - description: Group referred to in the event. - type: string - nullable: true - type: array - monitor_id: - description: ID of the monitor that triggered the event. When an event isn't - related to a monitor, this field is empty. - format: int64 - nullable: true - type: integer - priority: - $ref: '#/components/schemas/EventPriority' - related_event_id: - description: Related event ID. - format: int64 - type: integer - service: - description: Service that triggered the event. - example: datadog-api - type: string - source_type_name: - description: 'The type of event being posted. - - For example, `nagios`, `hudson`, `jenkins`, `my_apps`, `chef`, `puppet`, - `git` or `bitbucket`. - - The list of standard source attribute values is [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value).' - type: string - sourcecategory: - description: Identifier for the source of the event, such as a monitor alert, - an externally-submitted event, or an integration. - type: string - status: - $ref: '#/components/schemas/EventStatusType' - tags: - description: A list of tags to apply to the event. - example: - - environment:test - items: - description: A tag. - type: string - type: array - timestamp: - description: POSIX timestamp of your event in milliseconds. - example: 1652274265000 - format: int64 - type: integer - title: - description: The event title. - example: Oh boy! - type: string - type: object - EventCategory: - description: Event category identifying the type of event. - enum: - - change - - alert - example: change - type: string - x-enum-varnames: - - CHANGE - - ALERT - EventCreateRequest: - description: An event object. - properties: - attributes: - $ref: '#/components/schemas/EventPayload' - type: - $ref: '#/components/schemas/EventCreateRequestType' - required: - - type - - attributes - type: object - EventCreateRequestPayload: - description: Payload for creating an event. - properties: - data: - $ref: '#/components/schemas/EventCreateRequest' - required: - - data - type: object - EventCreateRequestType: - description: Entity type. - enum: - - event - example: event - type: string - x-enum-varnames: - - EVENT - EventCreateResponse: - description: Event object. - properties: - attributes: - $ref: '#/components/schemas/EventCreateResponseAttributes' - type: - description: Entity type. - example: event - type: string - type: object - EventCreateResponseAttributes: - description: Event attributes. - properties: - attributes: - $ref: '#/components/schemas/EventCreateResponseAttributesAttributes' - type: object - EventCreateResponseAttributesAttributes: - description: JSON object for category-specific attributes. - properties: - evt: - $ref: '#/components/schemas/EventCreateResponseAttributesAttributesEvt' - type: object - EventCreateResponseAttributesAttributesEvt: - description: JSON object of event system attributes. - properties: - id: - deprecated: true - description: Event identifier. This field is deprecated and will be removed - in a future version. Use the `uid` field instead. - type: string - uid: - description: A unique identifier for the event. You can use this identifier - to query or reference the event. - type: string - type: object - EventCreateResponsePayload: - description: Event creation response. - properties: - data: - $ref: '#/components/schemas/EventCreateResponse' - links: - $ref: '#/components/schemas/EventCreateResponsePayloadLinks' - type: object - EventCreateResponsePayloadLinks: - description: Links to the event. - properties: - self: - description: The URL of the event. This link is only functional when using - the default subdomain. - type: string - type: object - EventPayload: - additionalProperties: false - description: Event attributes. - properties: - aggregation_key: - description: A string used for aggregation when [correlating](https://docs.datadoghq.com/service_management/events/correlation/) - events. If you specify a key, events are deduplicated to alerts based - on this key. Limited to 100 characters. - example: aggregation_key_123 - maxLength: 100 - minLength: 1 - type: string - attributes: - $ref: '#/components/schemas/EventPayloadAttributes' - category: - $ref: '#/components/schemas/EventCategory' - integration_id: - $ref: '#/components/schemas/EventPayloadIntegrationId' - message: - description: Free formed text associated with the event. It's suggested - to use `data.attributes.attributes.custom` for well-structured attributes. - Limited to 4000 characters. - example: payment_processed feature flag has been enabled - maxLength: 4000 - minLength: 1 - type: string - tags: - description: 'A list of tags associated with the event. Maximum of 100 tags - allowed. - - Refer to [Tags docs](https://docs.datadoghq.com/getting_started/tagging/).' - example: - - env:api_client_test - items: - description: A tag. - maxLength: 200 - minLength: 1 - type: string - maxItems: 100 - minItems: 1 - type: array - timestamp: - description: 'Timestamp when the event occurred. Must follow [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) - format. - - For example `"2017-01-15T01:30:15.010000Z"`. - - Defaults to the timestamp of receipt. Limited to values no older than - 18 hours.' - type: string - title: - description: The title of the event. Limited to 500 characters. - example: payment_processed feature flag updated - maxLength: 500 - minLength: 1 - type: string - required: - - title - - category - - attributes - type: object - EventPayloadAttributes: - description: JSON object for category-specific attributes. Schema is different - per event category. - oneOf: - - $ref: '#/components/schemas/ChangeEventCustomAttributes' - - $ref: '#/components/schemas/AlertEventCustomAttributes' - EventPayloadIntegrationId: - description: Integration ID sourced from integration manifests. - enum: - - custom-events - example: custom-events - type: string - x-enum-varnames: - - CUSTOM_EVENTS - EventPriority: - description: The priority of the event's monitor. For example, `normal` or `low`. - enum: - - normal - - low - example: normal - nullable: true - type: string - x-enum-varnames: - - NORMAL - - LOW - EventResponse: - description: The object description of an event after being processed and stored - by Datadog. - properties: - attributes: - $ref: '#/components/schemas/EventResponseAttributes' - id: - description: the unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/EventType' - type: object - EventResponseAttributes: - description: The object description of an event response attribute. - properties: - attributes: - $ref: '#/components/schemas/EventAttributes' - message: - description: The message of the event. - type: string - tags: - description: An array of tags associated with the event. - example: - - team:A - items: - description: The tag associated with the event. - type: string - type: array - timestamp: - description: The timestamp of the event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - EventStatusType: - description: 'If an alert event is enabled, its status is one of the following: - - `failure`, `error`, `warning`, `info`, `success`, `user_update`, - - `recommendation`, or `snapshot`.' - enum: - - failure - - error - - warning - - info - - success - - user_update - - recommendation - - snapshot - example: info - type: string - x-enum-varnames: - - FAILURE - - ERROR - - WARNING - - INFO - - SUCCESS - - USER_UPDATE - - RECOMMENDATION - - SNAPSHOT - EventSystemAttributes: - description: JSON object of event system attributes. - properties: - category: - $ref: '#/components/schemas/EventSystemAttributesCategory' - id: - description: Event identifier. This field is deprecated and will be removed - in a future version. Use the `uid` field instead. - type: string - integration_id: - $ref: '#/components/schemas/EventSystemAttributesIntegrationId' - source_id: - description: The source type ID of the event. - format: int64 - type: integer - uid: - description: A unique identifier for the event. You can use this identifier - to query or reference the event. - type: string - type: object - EventSystemAttributesCategory: - description: Event category identifying the type of event. - enum: - - change - - alert - example: change - type: string - x-enum-varnames: - - CHANGE - - ALERT - EventSystemAttributesIntegrationId: - description: Integration ID sourced from integration manifests. - enum: - - custom-events - example: custom-events - type: string - x-enum-varnames: - - CUSTOM_EVENTS - EventType: - default: event - description: Type of the event. - enum: - - event - example: event - type: string - x-enum-varnames: - - EVENT - EventsAggregation: - default: count - description: The type of aggregation that can be performed on events-based queries. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - example: count - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PC75 - - PC90 - - PC95 - - PC98 - - PC99 - - SUM - - MIN - - MAX - - AVG - EventsCompute: - description: The instructions for what to compute for this query. - properties: - aggregation: - $ref: '#/components/schemas/EventsAggregation' - interval: - description: Interval for compute in milliseconds. - example: 60000 - format: int64 - type: integer - metric: - description: The "measure" attribute on which to perform the computation. - type: string - required: - - aggregation - type: object - EventsDataSource: - default: logs - description: A data source that is powered by the Events Platform. - enum: - - logs - - rum - - dora - example: logs - type: string - x-enum-varnames: - - LOGS - - RUM - - DORA - EventsGroupBy: - description: A dimension on which to split a query's results. - properties: - facet: - description: The facet by which to split groups. - example: '@error.type' - type: string - limit: - default: 10 - description: 'The maximum buckets to return for this group by. Note: at - most 10000 buckets are allowed. - - If grouping by multiple facets, the product of limits must not exceed - 10000.' - example: 10 - format: int32 - maximum: 10000 - type: integer - sort: - $ref: '#/components/schemas/EventsGroupBySort' - required: - - facet - type: object - EventsGroupBySort: - description: The dimension by which to sort a query's results. - properties: - aggregation: - $ref: '#/components/schemas/EventsAggregation' - metric: - description: The metric's calculated value which should be used to define - the sort order of a query's results. - example: '@duration' - type: string - order: - $ref: '#/components/schemas/QuerySortOrder' - type: - $ref: '#/components/schemas/EventsSortType' - required: - - aggregation - type: object - EventsListRequest: - description: The object sent with the request to retrieve a list of events from - your organization. - properties: - filter: - $ref: '#/components/schemas/EventsQueryFilter' - options: - $ref: '#/components/schemas/EventsQueryOptions' - page: - $ref: '#/components/schemas/EventsRequestPage' - sort: - $ref: '#/components/schemas/EventsSort' - type: object - EventsListResponse: - description: The response object with all events matching the request and pagination - information. - properties: - data: - description: An array of events matching the request. - items: - $ref: '#/components/schemas/EventResponse' - type: array - links: - $ref: '#/components/schemas/EventsListResponseLinks' - meta: - $ref: '#/components/schemas/EventsResponseMetadata' - type: object - EventsListResponseLinks: - description: Links attributes. - properties: - next: - description: 'Link for the next set of results. Note that the request can - also be made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - EventsQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: The minimum time for the requested events. Supports date math - and regular timestamps in milliseconds. - example: now-15m - type: string - query: - default: '*' - description: The search query following the event search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - to: - default: now - description: The maximum time for the requested events. Supports date math - and regular timestamps in milliseconds. - example: now - type: string - type: object - EventsQueryGroupBys: - description: The list of facets on which to split results. - items: - $ref: '#/components/schemas/EventsGroupBy' - type: array - EventsQueryOptions: - description: 'The global query options that are used. Either provide a timezone - or a time offset but not both, - - otherwise the query fails.' - properties: - timeOffset: - description: The time offset to apply to the query in seconds. - format: int64 - type: integer - timezone: - default: UTC - description: The timezone can be specified as GMT, UTC, an offset from UTC - (like UTC+1), or as a Timezone Database identifier (like America/New_York). - example: GMT - type: string - type: object - EventsRequestPage: - description: Pagination settings. - properties: - cursor: - description: The returned paging point to use to get the next results. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: The maximum number of logs in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - EventsResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/EventsResponseMetadataPage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - description: The request status. - example: done - type: string - warnings: - description: 'A list of warnings (non-fatal errors) encountered. Partial - results might be returned if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/EventsWarning' - type: array - type: object - EventsResponseMetadataPage: - description: Pagination attributes. - properties: - after: - description: 'The cursor to use to get the next results, if any. To make - the next request, use the same - - parameters with the addition of the `page[cursor]`.' - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - EventsScalarQuery: - description: An individual scalar events query. - properties: - compute: - $ref: '#/components/schemas/EventsCompute' - data_source: - $ref: '#/components/schemas/EventsDataSource' - group_by: - $ref: '#/components/schemas/EventsQueryGroupBys' - indexes: - description: The indexes in which to search. - example: - - main - items: - description: The unique index name. - example: main - type: string - type: array - name: - description: The variable name for use in formulas. - type: string - search: - $ref: '#/components/schemas/EventsSearch' - required: - - data_source - - compute - type: object - EventsSearch: - description: Configuration of the search/filter for an events query. - properties: - query: - description: The search/filter string for an events query. - example: status:warn service:foo - type: string - type: object - EventsSort: - description: The sort parameters when querying events. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - EventsSortType: - description: The type of sort to use on the calculated value. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - EventsTimeseriesQuery: - description: An individual timeseries events query. - properties: - compute: - $ref: '#/components/schemas/EventsCompute' - data_source: - $ref: '#/components/schemas/EventsDataSource' - group_by: - $ref: '#/components/schemas/EventsQueryGroupBys' - indexes: - description: The indexes in which to search. - example: - - main - items: - description: The unique index name. - example: main - type: string - type: array - name: - description: The variable name for use in formulas. - type: string - search: - $ref: '#/components/schemas/EventsSearch' - required: - - data_source - - compute - type: object - EventsWarning: - description: A warning message indicating something is wrong with the query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: One or several indexes are missing or invalid. Results hold data - from the other indexes. - type: string - type: object - FastlyAPIKey: - description: The definition of the `FastlyAPIKey` object. - properties: - api_key: - description: The `FastlyAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/FastlyAPIKeyType' - required: - - type - - api_key - type: object - FastlyAPIKeyType: - description: The definition of the `FastlyAPIKey` object. - enum: - - FastlyAPIKey - example: FastlyAPIKey - type: string - x-enum-varnames: - - FASTLYAPIKEY - FastlyAPIKeyUpdate: - description: The definition of the `FastlyAPIKey` object. - properties: - api_key: - description: The `FastlyAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/FastlyAPIKeyType' - required: - - type - type: object - FastlyAccounResponseAttributes: - description: Attributes object of a Fastly account. - properties: - name: - description: The name of the Fastly account. - example: test-name - type: string - services: - description: A list of services belonging to the parent account. - items: - $ref: '#/components/schemas/FastlyService' - type: array - required: - - name - type: object - FastlyAccountCreateRequest: - description: Payload schema when adding a Fastly account. - properties: - data: - $ref: '#/components/schemas/FastlyAccountCreateRequestData' - required: - - data - type: object - FastlyAccountCreateRequestAttributes: - description: Attributes object for creating a Fastly account. - properties: - api_key: - description: The API key for the Fastly account. - example: ABCDEFG123 - type: string - name: - description: The name of the Fastly account. - example: test-name - type: string - services: - description: A list of services belonging to the parent account. - items: - $ref: '#/components/schemas/FastlyService' - type: array - required: - - api_key - - name - type: object - FastlyAccountCreateRequestData: - description: Data object for creating a Fastly account. - properties: - attributes: - $ref: '#/components/schemas/FastlyAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/FastlyAccountType' - required: - - attributes - - type - type: object - FastlyAccountResponse: - description: The expected response schema when getting a Fastly account. - properties: - data: - $ref: '#/components/schemas/FastlyAccountResponseData' - type: object - FastlyAccountResponseData: - description: Data object of a Fastly account. - properties: - attributes: - $ref: '#/components/schemas/FastlyAccounResponseAttributes' - id: - description: The ID of the Fastly account, a hash of the account name. - example: abc123 - type: string - type: - $ref: '#/components/schemas/FastlyAccountType' - required: - - attributes - - id - - type - type: object - FastlyAccountType: - default: fastly-accounts - description: The JSON:API type for this API. Should always be `fastly-accounts`. - enum: - - fastly-accounts - example: fastly-accounts - type: string - x-enum-varnames: - - FASTLY_ACCOUNTS - FastlyAccountUpdateRequest: - description: Payload schema when updating a Fastly account. - properties: - data: - $ref: '#/components/schemas/FastlyAccountUpdateRequestData' - required: - - data - type: object - FastlyAccountUpdateRequestAttributes: - description: Attributes object for updating a Fastly account. - properties: - api_key: - description: The API key of the Fastly account. - example: ABCDEFG123 - type: string - name: - description: The name of the Fastly account. - type: string - type: object - FastlyAccountUpdateRequestData: - description: Data object for updating a Fastly account. - properties: - attributes: - $ref: '#/components/schemas/FastlyAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/FastlyAccountType' - type: object - FastlyAccountsResponse: - description: The expected response schema when getting Fastly accounts. - properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/FastlyAccountResponseData' - type: array - type: object - FastlyCredentials: - description: The definition of the `FastlyCredentials` object. - oneOf: - - $ref: '#/components/schemas/FastlyAPIKey' - FastlyCredentialsUpdate: - description: The definition of the `FastlyCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/FastlyAPIKeyUpdate' - FastlyIntegration: - description: The definition of the `FastlyIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/FastlyCredentials' - type: - $ref: '#/components/schemas/FastlyIntegrationType' - required: - - type - - credentials - type: object - FastlyIntegrationType: - description: The definition of the `FastlyIntegrationType` object. - enum: - - Fastly - example: Fastly - type: string - x-enum-varnames: - - FASTLY - FastlyIntegrationUpdate: - description: The definition of the `FastlyIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/FastlyCredentialsUpdate' - type: - $ref: '#/components/schemas/FastlyIntegrationType' - required: - - type - type: object - FastlyService: - description: The schema representation of a Fastly service. - properties: - id: - description: The ID of the Fastly service - example: 6abc7de6893AbcDe9fghIj - type: string - tags: - description: A list of tags for the Fastly service. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - id - type: object - FastlyServiceAttributes: - description: Attributes object for Fastly service requests. - properties: - tags: - description: A list of tags for the Fastly service. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - type: object - FastlyServiceData: - description: Data object for Fastly service requests. - properties: - attributes: - $ref: '#/components/schemas/FastlyServiceAttributes' - id: - description: The ID of the Fastly service. - example: abc123 - type: string - type: - $ref: '#/components/schemas/FastlyServiceType' - required: - - id - - type - type: object - FastlyServiceRequest: - description: Payload schema for Fastly service requests. - properties: - data: - $ref: '#/components/schemas/FastlyServiceData' - required: - - data - type: object - FastlyServiceResponse: - description: The expected response schema when getting a Fastly service. - properties: - data: - $ref: '#/components/schemas/FastlyServiceData' - type: object - FastlyServiceType: - default: fastly-services - description: The JSON:API type for this API. Should always be `fastly-services`. - enum: - - fastly-services - example: fastly-services - type: string - x-enum-varnames: - - FASTLY_SERVICES - FastlyServicesResponse: - description: The expected response schema when getting Fastly services. - properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/FastlyServiceData' - type: array - type: object - FiltersPerProduct: - description: Product-specific filters for the dataset. - properties: - filters: - description: 'Defines the list of tag-based filters used to restrict access - to telemetry data for a specific product. - - These filters act as access control rules. Each filter must follow the - tag query syntax used by - - Datadog (such as `@tag.key:value`), and only one tag or attribute may - be used to define the access strategy - - per telemetry type.' - example: - - '@application.id:ABCD' - items: - example: '@application.id:ABCD' - type: string - type: array - product: - description: 'Name of the product the dataset is for. Possible values are - ''apm'', ''rum'', - - ''metrics'', ''logs'', ''error_tracking'', and ''cloud_cost''.' - example: logs - type: string - required: - - product - - filters - type: object - Finding: - description: A single finding without the message and resource configuration. - properties: - attributes: - $ref: '#/components/schemas/FindingAttributes' - id: - $ref: '#/components/schemas/FindingID' - type: - $ref: '#/components/schemas/FindingType' - type: object - FindingAttributes: - description: The JSON:API attributes of the finding. - properties: - datadog_link: - $ref: '#/components/schemas/FindingDatadogLink' - description: - $ref: '#/components/schemas/FindingDescription' - evaluation: - $ref: '#/components/schemas/FindingEvaluation' - evaluation_changed_at: - $ref: '#/components/schemas/FindingEvaluationChangedAt' - external_id: - $ref: '#/components/schemas/FindingExternalId' - mute: - $ref: '#/components/schemas/FindingMute' - resource: - $ref: '#/components/schemas/FindingResource' - resource_discovery_date: - $ref: '#/components/schemas/FindingResourceDiscoveryDate' - resource_type: - $ref: '#/components/schemas/FindingResourceType' - rule: - $ref: '#/components/schemas/FindingRule' - status: - $ref: '#/components/schemas/FindingStatus' - tags: - $ref: '#/components/schemas/FindingTags' - vulnerability_type: - $ref: '#/components/schemas/FindingVulnerabilityType' - type: object - FindingDatadogLink: - description: The Datadog relative link for this finding. - example: /security/compliance?panels=cpfinding%7Cevent%7CruleId%3Adef-000-u5t%7CresourceId%3Ae8c9ab7c52ebd7bf2fdb4db641082d7d%7CtabId%3Aoverview - type: string - FindingDescription: - description: The description and remediation steps for this finding. - example: '## Remediation - - - 1. In the console, go to **Storage Account**. - - 2. For each Storage Account, navigate to **Data Protection**. - - 3. Select **Set soft delete enabled** and enter the number of days to retain - soft deleted data.' - type: string - FindingEvaluation: - description: The evaluation of the finding. - enum: - - pass - - fail - example: pass - type: string - x-enum-varnames: - - PASS - - FAIL - FindingEvaluationChangedAt: - description: The date on which the evaluation for this finding changed (Unix - ms). - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - FindingExternalId: - description: The cloud-based ID for the resource related to the finding. - example: arn:aws:s3:::my-example-bucket - type: string - FindingID: - description: The unique ID for this finding. - example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== - type: string - FindingMute: - additionalProperties: false - description: Information about the mute status of this finding. - properties: - description: - description: Additional information about the reason why this finding is - muted or unmuted. - example: To be resolved later - type: string - expiration_date: - description: The expiration date of the mute or unmute action (Unix ms). - example: 1778721573794 - format: int64 - type: integer - muted: - description: Whether this finding is muted or unmuted. - example: true - type: boolean - reason: - $ref: '#/components/schemas/FindingMuteReason' - start_date: - description: The start of the mute period. - example: 1678721573794 - format: int64 - type: integer - uuid: - description: The ID of the user who muted or unmuted this finding. - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - type: object - FindingMuteReason: - description: The reason why this finding is muted or unmuted. - enum: - - PENDING_FIX - - FALSE_POSITIVE - - ACCEPTED_RISK - - NO_PENDING_FIX - - HUMAN_ERROR - - NO_LONGER_ACCEPTED_RISK - - OTHER - example: ACCEPTED_RISK - type: string - x-enum-varnames: - - PENDING_FIX - - FALSE_POSITIVE - - ACCEPTED_RISK - - NO_PENDING_FIX - - HUMAN_ERROR - - NO_LONGER_ACCEPTED_RISK - - OTHER - FindingResource: - description: The resource name of this finding. - example: my_resource_name - type: string - FindingResourceDiscoveryDate: - description: The date on which the resource was discovered (Unix ms). - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - FindingResourceType: - description: The resource type of this finding. - example: azure_storage_account - type: string - FindingRule: - additionalProperties: false - description: The rule that triggered this finding. - properties: - id: - description: The ID of the rule that triggered this finding. - example: dv2-jzf-41i - type: string - name: - description: The name of the rule that triggered this finding. - example: Soft delete is enabled for Azure Storage - type: string - type: object - FindingStatus: - description: The status of the finding. - enum: - - critical - - high - - medium - - low - - info - example: critical - type: string - x-enum-varnames: - - CRITICAL - - HIGH - - MEDIUM - - LOW - - INFO - FindingTags: - description: The tags associated with this finding. - example: - - cloud_provider:aws - - myTag:myValue - items: - description: The list of tags. - type: string - type: array - FindingType: - default: finding - description: The JSON:API type for findings. - enum: - - finding - example: finding - type: string - x-enum-varnames: - - FINDING - FindingVulnerabilityType: - description: The vulnerability type of the finding. - enum: - - misconfiguration - - attack_path - - identity_risk - - api_security - example: misconfiguration - type: string - x-enum-varnames: - - MISCONFIGURATION - - ATTACK_PATH - - IDENTITY_RISK - - API_SECURITY - FormulaLimit: - description: 'Message for specifying limits to the number of values returned - by a query. - - This limit is only for scalar queries and has no effect on timeseries queries.' - properties: - count: - description: The number of results to which to limit. - example: 10 - format: int32 - maximum: 2147483647 - type: integer - order: - $ref: '#/components/schemas/QuerySortOrder' - type: object - FrameworkHandleAndVersionResponseData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkDataHandleAndVersion' - id: - description: The ID of the custom framework. - example: handle-version - type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - id - - type - - attributes - type: object - FreshserviceAPIKey: - description: The definition of the `FreshserviceAPIKey` object. - properties: - api_key: - description: The `FreshserviceAPIKey` `api_key`. - example: '' - type: string - domain: - description: The `FreshserviceAPIKey` `domain`. - example: '' - type: string - type: - $ref: '#/components/schemas/FreshserviceAPIKeyType' - required: - - type - - domain - - api_key - type: object - FreshserviceAPIKeyType: - description: The definition of the `FreshserviceAPIKey` object. - enum: - - FreshserviceAPIKey - example: FreshserviceAPIKey - type: string - x-enum-varnames: - - FRESHSERVICEAPIKEY - FreshserviceAPIKeyUpdate: - description: The definition of the `FreshserviceAPIKey` object. - properties: - api_key: - description: The `FreshserviceAPIKeyUpdate` `api_key`. - type: string - domain: - description: The `FreshserviceAPIKeyUpdate` `domain`. - type: string - type: - $ref: '#/components/schemas/FreshserviceAPIKeyType' - required: - - type - type: object - FreshserviceCredentials: - description: The definition of the `FreshserviceCredentials` object. - oneOf: - - $ref: '#/components/schemas/FreshserviceAPIKey' - FreshserviceCredentialsUpdate: - description: The definition of the `FreshserviceCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/FreshserviceAPIKeyUpdate' - FreshserviceIntegration: - description: The definition of the `FreshserviceIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/FreshserviceCredentials' - type: - $ref: '#/components/schemas/FreshserviceIntegrationType' - required: - - type - - credentials - type: object - FreshserviceIntegrationType: - description: The definition of the `FreshserviceIntegrationType` object. - enum: - - Freshservice - example: Freshservice - type: string - x-enum-varnames: - - FRESHSERVICE - FreshserviceIntegrationUpdate: - description: The definition of the `FreshserviceIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/FreshserviceCredentialsUpdate' - type: - $ref: '#/components/schemas/FreshserviceIntegrationType' - required: - - type - type: object - FullAPIKey: - description: Datadog API key. - properties: - attributes: - $ref: '#/components/schemas/FullAPIKeyAttributes' - id: - description: ID of the API key. - type: string - relationships: - $ref: '#/components/schemas/APIKeyRelationships' - type: - $ref: '#/components/schemas/APIKeysType' - type: object - FullAPIKeyAttributes: - description: Attributes of a full API key. - properties: - category: - description: The category of the API key. - type: string - created_at: - description: Creation date of the API key. - example: '2020-11-23T10:00:00.000Z' - format: date-time - readOnly: true - type: string - key: - description: The API key. - readOnly: true - type: string - last4: - description: The last four characters of the API key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - modified_at: - description: Date the API key was last modified. - example: '2020-11-23T10:00:00.000Z' - format: date-time - readOnly: true - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The remote config read enabled status. - type: boolean - type: object - FullApplicationKey: - description: Datadog application key. - properties: - attributes: - $ref: '#/components/schemas/FullApplicationKeyAttributes' - id: - description: ID of the application key. - type: string - relationships: - $ref: '#/components/schemas/ApplicationKeyRelationships' - type: - $ref: '#/components/schemas/ApplicationKeysType' - type: object - FullApplicationKeyAttributes: - description: Attributes of a full application key. - properties: - created_at: - description: Creation date of the application key. - example: '2020-11-23T10:00:00.000Z' - format: date-time - readOnly: true - type: string - key: - description: The application key. - readOnly: true - type: string - last4: - description: The last four characters of the application key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - type: object - FullCustomFrameworkData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/FullCustomFrameworkDataAttributes' - id: - description: The ID of the custom framework. - example: handle-version - type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - id - - type - - attributes - type: object - FullCustomFrameworkDataAttributes: - description: Full Framework Data Attributes. - properties: - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - example: https://example.com/icon.png - type: string - name: - description: Framework Name - example: security-framework - type: string - requirements: - description: Framework Requirements - items: - $ref: '#/components/schemas/CustomFrameworkRequirement' - type: array - version: - description: Framework Version - example: '2' - type: string - required: - - handle - - version - - name - - requirements - type: object - GCPCredentials: - description: The definition of the `GCPCredentials` object. - oneOf: - - $ref: '#/components/schemas/GCPServiceAccount' - GCPCredentialsUpdate: - description: The definition of the `GCPCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GCPServiceAccountUpdate' - GCPIntegration: - description: The definition of the `GCPIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GCPCredentials' - type: - $ref: '#/components/schemas/GCPIntegrationType' - required: - - type - - credentials - type: object - GCPIntegrationType: - description: The definition of the `GCPIntegrationType` object. - enum: - - GCP - example: GCP - type: string - x-enum-varnames: - - GCP - GCPIntegrationUpdate: - description: The definition of the `GCPIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GCPCredentialsUpdate' - type: - $ref: '#/components/schemas/GCPIntegrationType' - required: - - type - type: object - GCPMetricNamespaceConfig: - description: Configuration for a GCP metric namespace. - properties: - disabled: - default: false - description: When disabled, Datadog does not collect metrics that are related - to this GCP metric namespace. - example: true - type: boolean - id: - description: The id of the GCP metric namespace. - example: aiplatform - type: string - type: object - GCPMonitoredResourceConfig: - description: Configuration for a GCP monitored resource. - properties: - filters: - description: 'List of filters to limit the monitored resources that are - pulled into Datadog by using tags. - - Only monitored resources that apply to specified filters are imported - into Datadog.' - example: - - $KEY:$VALUE - items: - description: A monitored resource filter - type: string - type: array - type: - $ref: '#/components/schemas/GCPMonitoredResourceConfigType' - type: object - GCPMonitoredResourceConfigType: - description: The GCP monitored resource type. Only a subset of resource types - are supported. - enum: - - cloud_function - - cloud_run_revision - - gce_instance - example: gce_instance - type: string - x-enum-varnames: - - CLOUD_FUNCTION - - CLOUD_RUN_REVISION - - GCE_INSTANCE - GCPSTSDelegateAccount: - description: Datadog principal service account info. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSDelegateAccountAttributes' - id: - description: The ID of the delegate service account. - example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com - type: string - type: - $ref: '#/components/schemas/GCPSTSDelegateAccountType' - type: object - GCPSTSDelegateAccountAttributes: - description: Your delegate account attributes. - properties: - delegate_account_email: - description: Your organization's Datadog principal email address. - example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com - type: string - type: object - GCPSTSDelegateAccountResponse: - description: Your delegate service account response data. - properties: - data: - $ref: '#/components/schemas/GCPSTSDelegateAccount' - type: object - GCPSTSDelegateAccountType: - default: gcp_sts_delegate - description: The type of account. - enum: - - gcp_sts_delegate - example: gcp_sts_delegate - type: string - x-enum-varnames: - - GCP_STS_DELEGATE - GCPSTSServiceAccount: - description: Info on your service account. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - id: - description: Your service account's unique ID. - example: d291291f-12c2-22g4-j290-123456678897 - type: string - meta: - $ref: '#/components/schemas/GCPServiceAccountMeta' - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSServiceAccountAttributes: - description: Attributes associated with your service account. - properties: - account_tags: - description: Tags to be associated with GCP metrics and service checks from - your account. - items: - description: Account Level Tag - type: string - type: array - automute: - description: Silence monitors for expected GCE instance shutdowns. - type: boolean - client_email: - description: Your service account email address. - example: datadog-service-account@test-project.iam.gserviceaccount.com - type: string - cloud_run_revision_filters: - deprecated: true - description: 'List of filters to limit the Cloud Run revisions that are - pulled into Datadog by using tags. - - Only Cloud Run revision resources that apply to specified filters are - imported into Datadog. - - **Note:** This field is deprecated. Instead, use `monitored_resource_configs` - with `type=cloud_run_revision`' - example: - - $KEY:$VALUE - items: - description: Cloud Run revision filters - type: string - type: array - host_filters: - deprecated: true - description: 'List of filters to limit the VM instances that are pulled - into Datadog by using tags. - - Only VM instance resources that apply to specified filters are imported - into Datadog. - - **Note:** This field is deprecated. Instead, use `monitored_resource_configs` - with `type=gce_instance`' - example: - - $KEY:$VALUE - items: - description: VM instance filters - type: string - type: array - is_cspm_enabled: - description: 'When enabled, Datadog will activate the Cloud Security Monitoring - product for this service account. Note: This requires resource_collection_enabled - to be set to true.' - type: boolean - is_per_project_quota_enabled: - default: false - description: When enabled, Datadog applies the `X-Goog-User-Project` header, - attributing Google Cloud billing and quota usage to the project being - monitored rather than the default service account project. - example: true - type: boolean - is_resource_change_collection_enabled: - default: false - description: When enabled, Datadog scans for all resource change data in - your Google Cloud environment. - example: true - type: boolean - is_security_command_center_enabled: - default: false - description: 'When enabled, Datadog will attempt to collect Security Command - Center Findings. Note: This requires additional permissions on the service - account.' - example: true - type: boolean - metric_namespace_configs: - description: Configurations for GCP metric namespaces. - example: - - disabled: true - id: aiplatform - items: - $ref: '#/components/schemas/GCPMetricNamespaceConfig' - type: array - monitored_resource_configs: - description: Configurations for GCP monitored resources. - example: - - filters: - - $KEY:$VALUE - type: gce_instance - items: - $ref: '#/components/schemas/GCPMonitoredResourceConfig' - type: array - resource_collection_enabled: - description: When enabled, Datadog scans for all resources in your GCP environment. - type: boolean - type: object - GCPSTSServiceAccountCreateRequest: - description: Data on your newly generated service account. - properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccountData' - type: object - GCPSTSServiceAccountData: - description: Additional metadata on your generated service account. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSServiceAccountResponse: - description: The account creation response. - properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccount' - type: object - GCPSTSServiceAccountUpdateRequest: - description: Service account info. - properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequestData' - type: object - GCPSTSServiceAccountUpdateRequestData: - description: Data on your service account. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - id: - description: Your service account's unique ID. - example: d291291f-12c2-22g4-j290-123456678897 - type: string - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSServiceAccountsResponse: - description: Object containing all your STS enabled accounts. - properties: - data: - description: Array of GCP STS enabled service accounts. - items: - $ref: '#/components/schemas/GCPSTSServiceAccount' - type: array - type: object - GCPServiceAccount: - description: The definition of the `GCPServiceAccount` object. - properties: - private_key: - description: The `GCPServiceAccount` `private_key`. - example: '' - type: string - service_account_email: - description: The `GCPServiceAccount` `service_account_email`. - example: '' - type: string - type: - $ref: '#/components/schemas/GCPServiceAccountCredentialType' - required: - - type - - service_account_email - - private_key - type: object - GCPServiceAccountCredentialType: - description: The definition of the `GCPServiceAccount` object. - enum: - - GCPServiceAccount - example: GCPServiceAccount - type: string - x-enum-varnames: - - GCPSERVICEACCOUNT - GCPServiceAccountMeta: - description: Additional information related to your service account. - properties: - accessible_projects: - description: The current list of projects accessible from your service account. - items: - description: List of GCP projects. - type: string - type: array - type: object - GCPServiceAccountType: - default: gcp_service_account - description: The type of account. - enum: - - gcp_service_account - example: gcp_service_account - type: string - x-enum-varnames: - - GCP_SERVICE_ACCOUNT - GCPServiceAccountUpdate: - description: The definition of the `GCPServiceAccount` object. - properties: - private_key: - description: The `GCPServiceAccountUpdate` `private_key`. - type: string - service_account_email: - description: The `GCPServiceAccountUpdate` `service_account_email`. - type: string - type: - $ref: '#/components/schemas/GCPServiceAccountCredentialType' - required: - - type - type: object - GCPUsageCostConfig: - description: GCP Usage Cost config. - properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigAttributes' - id: - description: The ID of the GCP Usage Cost config. - type: string - type: - $ref: '#/components/schemas/GCPUsageCostConfigType' - required: - - attributes - - type - type: object - GCPUsageCostConfigAttributes: - description: Attributes for a GCP Usage Cost config. - properties: - account_id: - description: The GCP account ID. - example: 123456_A123BC_12AB34 - type: string - bucket_name: - description: The GCP bucket name used to store the Usage Cost export. - example: dd-cost-bucket - type: string - created_at: - description: The timestamp when the GCP Usage Cost config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - dataset: - description: The export dataset name used for the GCP Usage Cost Report. - example: billing - type: string - error_messages: - description: The error messages for the GCP Usage Cost config. - items: - type: string - nullable: true - type: array - export_prefix: - description: The export prefix used for the GCP Usage Cost Report. - example: datadog_cloud_cost_usage_export - type: string - export_project_name: - description: The name of the GCP Usage Cost Report. - example: dd-cloud-cost-report - type: string - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - project_id: - description: The `project_id` of the GCP Usage Cost report. - example: my-project-123 - type: string - service_account: - description: The unique GCP service account email. - example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com - type: string - status: - description: The status of the GCP Usage Cost config. - example: active - type: string - status_updated_at: - description: The timestamp when the GCP Usage Cost config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - updated_at: - description: The timestamp when the GCP Usage Cost config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - required: - - account_id - - bucket_name - - dataset - - export_prefix - - export_project_name - - service_account - - status - type: object - GCPUsageCostConfigPatchData: - description: GCP Usage Cost config patch data. - properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestType' - required: - - attributes - - type - type: object - GCPUsageCostConfigPatchRequest: - description: GCP Usage Cost config patch request. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfigPatchData' - required: - - data - type: object - GCPUsageCostConfigPatchRequestAttributes: - description: Attributes for GCP Usage Cost config patch request. - properties: - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - required: - - is_enabled - type: object - GCPUsageCostConfigPatchRequestType: - default: gcp_uc_config_patch_request - description: Type of GCP Usage Cost config patch request. - enum: - - gcp_uc_config_patch_request - example: gcp_uc_config_patch_request - type: string - x-enum-varnames: - - GCP_USAGE_COST_CONFIG_PATCH_REQUEST - GCPUsageCostConfigPostData: - description: GCP Usage Cost config post data. - properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequestType' - required: - - attributes - - type - type: object - GCPUsageCostConfigPostRequest: - description: GCP Usage Cost config post request. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfigPostData' - required: - - data - type: object - GCPUsageCostConfigPostRequestAttributes: - description: Attributes for GCP Usage Cost config post request. - properties: - billing_account_id: - description: The GCP account ID. - example: 123456_A123BC_12AB34 - type: string - bucket_name: - description: The GCP bucket name used to store the Usage Cost export. - example: dd-cost-bucket - type: string - export_dataset_name: - description: The export dataset name used for the GCP Usage Cost report. - example: billing - type: string - export_prefix: - description: The export prefix used for the GCP Usage Cost report. - example: datadog_cloud_cost_usage_export - type: string - export_project_name: - description: The name of the GCP Usage Cost report. - example: dd-cloud-cost-report - type: string - service_account: - description: The unique GCP service account email. - example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com - type: string - required: - - billing_account_id - - bucket_name - - export_project_name - - export_dataset_name - - service_account - type: object - GCPUsageCostConfigPostRequestType: - default: gcp_uc_config_post_request - description: Type of GCP Usage Cost config post request. - enum: - - gcp_uc_config_post_request - example: gcp_usage_cost_config_post_request - type: string - x-enum-varnames: - - GCP_USAGE_COST_CONFIG_POST_REQUEST - GCPUsageCostConfigResponse: - description: Response of GCP Usage Cost config. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfig' - type: object - GCPUsageCostConfigType: - default: gcp_uc_config - description: Type of GCP Usage Cost config. - enum: - - gcp_uc_config - example: gcp_uc_config - type: string - x-enum-varnames: - - GCP_UC_CONFIG - GCPUsageCostConfigsResponse: - description: List of GCP Usage Cost configs. - properties: - data: - description: A GCP Usage Cost config. - items: - $ref: '#/components/schemas/GCPUsageCostConfig' - type: array - type: object - GeminiAPIKey: - description: The definition of the `GeminiAPIKey` object. - properties: - api_key: - description: The `GeminiAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/GeminiAPIKeyType' - required: - - type - - api_key - type: object - GeminiAPIKeyType: - description: The definition of the `GeminiAPIKey` object. - enum: - - GeminiAPIKey - example: GeminiAPIKey - type: string - x-enum-varnames: - - GEMINIAPIKEY - GeminiAPIKeyUpdate: - description: The definition of the `GeminiAPIKey` object. - properties: - api_key: - description: The `GeminiAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/GeminiAPIKeyType' - required: - - type - type: object - GeminiCredentials: - description: The definition of the `GeminiCredentials` object. - oneOf: - - $ref: '#/components/schemas/GeminiAPIKey' - GeminiCredentialsUpdate: - description: The definition of the `GeminiCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GeminiAPIKeyUpdate' - GeminiIntegration: - description: The definition of the `GeminiIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GeminiCredentials' - type: - $ref: '#/components/schemas/GeminiIntegrationType' - required: - - type - - credentials - type: object - GeminiIntegrationType: - description: The definition of the `GeminiIntegrationType` object. - enum: - - Gemini - example: Gemini - type: string - x-enum-varnames: - - GEMINI - GeminiIntegrationUpdate: - description: The definition of the `GeminiIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GeminiCredentialsUpdate' - type: - $ref: '#/components/schemas/GeminiIntegrationType' - required: - - type - type: object - GetActionConnectionResponse: - description: The response for found connection - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - type: object - GetAppKeyRegistrationResponse: - description: The response object after getting an app key registration. - properties: - data: - $ref: '#/components/schemas/AppKeyRegistrationData' - type: object - GetAppResponse: - description: The full app definition response object. - properties: - data: - $ref: '#/components/schemas/GetAppResponseData' - included: - description: Data on the version of the app that was published. - items: - $ref: '#/components/schemas/Deployment' - type: array - meta: - $ref: '#/components/schemas/AppMeta' - relationship: - $ref: '#/components/schemas/AppRelationship' - type: object - GetAppResponseData: - description: The data object containing the app definition. - properties: - attributes: - $ref: '#/components/schemas/GetAppResponseDataAttributes' - id: - description: The ID of the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - - attributes - type: object - GetAppResponseDataAttributes: - description: The app definition attributes, such as name, description, and components. - properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: A human-readable description for the app. - type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean - name: - description: The name of the app. - type: string - queries: - description: An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: The name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - GetCustomFrameworkResponse: - description: Response object to get a custom framework. - properties: - data: - $ref: '#/components/schemas/FullCustomFrameworkData' - required: - - data - type: object - GetDataDeletionsResponseBody: - description: The response from the get data deletion requests endpoint. - properties: - data: - description: The list of data deletion requests that matches the query. - items: - $ref: '#/components/schemas/DataDeletionResponseItem' - type: array - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' - type: object - GetDeviceAttributes: - description: The device attributes - properties: - description: - description: A description of the device. - example: a device monitored with NDM - type: string - device_type: - description: The type of the device. - example: other - type: string - integration: - description: The integration of the device. - example: snmp - type: string - ip_address: - description: The IP address of the device. - example: 1.2.3.4 - type: string - location: - description: The location of the device. - example: paris - type: string - model: - description: The model of the device. - example: xx-123 - type: string - name: - description: The name of the device. - example: example device - type: string - os_hostname: - description: The operating system hostname of the device. - example: 1.0.2 - type: string - os_name: - description: The operating system name of the device. - example: example OS - type: string - os_version: - description: The operating system version of the device. - example: 1.0.2 - type: string - ping_status: - description: The ping status of the device. - example: unmonitored - type: string - product_name: - description: The product name of the device. - example: example device - type: string - serial_number: - description: The serial number of the device. - example: X12345 - type: string - status: - description: The status of the device. - example: ok - type: string - subnet: - description: The subnet of the device. - example: 1.2.3.4/24 - type: string - sys_object_id: - description: The device `sys_object_id`. - example: 1.3.6.1.4.1.99999 - type: string - tags: - description: A list of tags associated with the device. - example: - - device_ip:1.2.3.4 - - device_id:example:1.2.3.4 - items: - type: string - type: array - vendor: - description: The vendor of the device. - example: example vendor - type: string - version: - description: The version of the device. - example: 1.2.3 - type: string - type: object - GetDeviceData: - description: Get device response data. - properties: - attributes: - $ref: '#/components/schemas/GetDeviceAttributes' - id: - description: The device ID - example: example:1.2.3.4 - type: string - type: - description: The type of the resource. The value should always be device. - type: string - type: object - GetDeviceResponse: - description: The `GetDevice` operation's response. - properties: - data: - $ref: '#/components/schemas/GetDeviceData' - type: object - GetFindingResponse: - description: The expected response schema when getting a finding. - properties: - data: - $ref: '#/components/schemas/DetailedFinding' - required: - - data - type: object - GetInterfacesData: - description: The interfaces list data - properties: - attributes: - $ref: '#/components/schemas/InterfaceAttributes' - id: - description: The interface ID - example: example:1.2.3.4:99 - type: string - type: - description: The type of the resource. The value should always be interface. - type: string - type: object - GetInterfacesResponse: - description: The `GetInterfaces` operation's response. - properties: - data: - description: Get Interfaces response - items: - $ref: '#/components/schemas/GetInterfacesData' - type: array - type: object - GetIssueIncludeQueryParameterItem: - description: Relationship object that should be included in the response. - enum: - - assignee - - case - - team_owners - example: case - type: string - x-enum-varnames: - - ASSIGNEE - - CASE - - TEAM_OWNERS - GetResourceEvaluationFiltersResponse: - description: The definition of `GetResourceEvaluationFiltersResponse` object. - properties: - data: - $ref: '#/components/schemas/GetResourceEvaluationFiltersResponseData' - required: - - data - type: object - GetResourceEvaluationFiltersResponseData: - description: The definition of `GetResourceFilterResponseData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `data` `id`. - example: csm_resource_filter - type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - type: object - GetRuleVersionHistoryData: - description: Data for the rule version history. - properties: - attributes: - $ref: '#/components/schemas/RuleVersionHistory' - id: - description: ID of the rule. - type: string - type: - $ref: '#/components/schemas/GetRuleVersionHistoryDataType' - type: object - GetRuleVersionHistoryDataType: - description: Type of data. - enum: - - GetRuleVersionHistoryResponse - type: string - x-enum-varnames: - - GETRULEVERSIONHISTORYRESPONSE - GetRuleVersionHistoryResponse: - description: Response for getting the rule version history. - properties: - data: - $ref: '#/components/schemas/GetRuleVersionHistoryData' - type: object - GetSBOMResponse: - description: The expected response schema when getting an SBOM. - properties: - data: - $ref: '#/components/schemas/SBOM' - required: - - data - type: object - GetTeamMembershipsSort: - description: Specifies the order of returned team memberships - enum: - - manager_name - - -manager_name - - name - - -name - - handle - - -handle - - email - - -email - type: string - x-enum-varnames: - - MANAGER_NAME - - _MANAGER_NAME - - NAME - - _NAME - - HANDLE - - _HANDLE - - EMAIL - - _EMAIL - GetWorkflowResponse: - description: The response object after getting a workflow. - properties: - data: - $ref: '#/components/schemas/WorkflowData' - type: object - GitCommitSHA: - description: Git Commit SHA. - example: 66adc9350f2cc9b250b69abddab733dd55e1a588 - pattern: ^[a-fA-F0-9]{40,}$ - type: string - GitRepositoryURL: - description: Git Repository URL - example: https://github.com/organization/example-repository - type: string - GithubWebhookTrigger: - description: Trigger a workflow from a GitHub webhook. To trigger a workflow - from GitHub, you must set a `webhookSecret`. In your GitHub Webhook Settings, - set the Payload URL to "base_url"/api/v2/workflows/"workflow_id"/webhook?orgId="org_id", - select application/json for the content type, and be highly recommend enabling - SSL verification for security. The workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - GithubWebhookTriggerWrapper: - description: Schema for a GitHub webhook-based trigger. - properties: - githubWebhookTrigger: - $ref: '#/components/schemas/GithubWebhookTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - githubWebhookTrigger - type: object - GitlabAPIKey: - description: The definition of the `GitlabAPIKey` object. - properties: - api_token: - description: The `GitlabAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/GitlabAPIKeyType' - required: - - type - - api_token - type: object - GitlabAPIKeyType: - description: The definition of the `GitlabAPIKey` object. - enum: - - GitlabAPIKey - example: GitlabAPIKey - type: string - x-enum-varnames: - - GITLABAPIKEY - GitlabAPIKeyUpdate: - description: The definition of the `GitlabAPIKey` object. - properties: - api_token: - description: The `GitlabAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/GitlabAPIKeyType' - required: - - type - type: object - GitlabCredentials: - description: The definition of the `GitlabCredentials` object. - oneOf: - - $ref: '#/components/schemas/GitlabAPIKey' - GitlabCredentialsUpdate: - description: The definition of the `GitlabCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GitlabAPIKeyUpdate' - GitlabIntegration: - description: The definition of the `GitlabIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GitlabCredentials' - type: - $ref: '#/components/schemas/GitlabIntegrationType' - required: - - type - - credentials - type: object - GitlabIntegrationType: - description: The definition of the `GitlabIntegrationType` object. - enum: - - Gitlab - example: Gitlab - type: string - x-enum-varnames: - - GITLAB - GitlabIntegrationUpdate: - description: The definition of the `GitlabIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GitlabCredentialsUpdate' - type: - $ref: '#/components/schemas/GitlabIntegrationType' - required: - - type - type: object - GoogleMeetConfigurationReference: - description: A reference to a Google Meet Configuration resource. - nullable: true - properties: - data: - $ref: '#/components/schemas/GoogleMeetConfigurationReferenceData' - required: - - data - type: object - GoogleMeetConfigurationReferenceData: - description: The Google Meet configuration relationship data object. - nullable: true - properties: - id: - description: The unique identifier of the Google Meet configuration. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - description: The type of the Google Meet configuration. - example: google_meet_configurations - type: string - required: - - id - - type - type: object - GreyNoiseAPIKey: - description: The definition of the `GreyNoiseAPIKey` object. - properties: - api_key: - description: The `GreyNoiseAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/GreyNoiseAPIKeyType' - required: - - type - - api_key - type: object - GreyNoiseAPIKeyType: - description: The definition of the `GreyNoiseAPIKey` object. - enum: - - GreyNoiseAPIKey - example: GreyNoiseAPIKey - type: string - x-enum-varnames: - - GREYNOISEAPIKEY - GreyNoiseAPIKeyUpdate: - description: The definition of the `GreyNoiseAPIKey` object. - properties: - api_key: - description: The `GreyNoiseAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/GreyNoiseAPIKeyType' - required: - - type - type: object - GreyNoiseCredentials: - description: The definition of the `GreyNoiseCredentials` object. - oneOf: - - $ref: '#/components/schemas/GreyNoiseAPIKey' - GreyNoiseCredentialsUpdate: - description: The definition of the `GreyNoiseCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GreyNoiseAPIKeyUpdate' - GreyNoiseIntegration: - description: The definition of the `GreyNoiseIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GreyNoiseCredentials' - type: - $ref: '#/components/schemas/GreyNoiseIntegrationType' - required: - - type - - credentials - type: object - GreyNoiseIntegrationType: - description: The definition of the `GreyNoiseIntegrationType` object. - enum: - - GreyNoise - example: GreyNoise - type: string - x-enum-varnames: - - GREYNOISE - GreyNoiseIntegrationUpdate: - description: The definition of the `GreyNoiseIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GreyNoiseCredentialsUpdate' - type: - $ref: '#/components/schemas/GreyNoiseIntegrationType' - required: - - type - type: object - GroupScalarColumn: - description: A column containing the tag keys and values in a group. - properties: - name: - description: The name of the tag key or group. - example: env - type: string - type: - $ref: '#/components/schemas/ScalarColumnTypeGroup' - values: - description: The array of tag values for each group found for the results - of the formulas or queries. - example: - - - production - - - staging - items: - description: An individual tag value for a given group column. - items: - description: One tag value within a values array. - example: production - type: string - type: array - type: array - type: object - GroupTags: - description: List of tags that apply to a single response value. - items: - description: A single tag that applies to a single response value. - example: env:production - type: string - type: array - HTTPBody: - description: The definition of `HTTPBody` object. - properties: - content: - description: Serialized body content - example: '{"some-json": "with-value"}' - type: string - content_type: - description: Content type of the body - example: application/json - type: string - type: object - HTTPCIAppError: - description: List of errors. - properties: - detail: - description: Error message. - example: Malformed payload - type: string - status: - description: Error code. - example: '400' - type: string - title: - description: Error title. - example: Bad Request - type: string - type: object - HTTPCIAppErrors: - description: Errors occurred. - properties: - errors: - description: Structured errors. - items: - $ref: '#/components/schemas/HTTPCIAppError' - type: array - type: object - HTTPCredentials: - description: The definition of `HTTPCredentials` object. - oneOf: - - $ref: '#/components/schemas/HTTPTokenAuth' - HTTPCredentialsUpdate: - description: The definition of `HTTPCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/HTTPTokenAuthUpdate' - HTTPHeader: - description: The definition of `HTTPHeader` object. - properties: - name: - description: The `HTTPHeader` `name`. - example: MyHttpHeader - pattern: ^[A-Za-z][A-Za-z\\d\\-\\_]*$ - type: string - value: - description: The `HTTPHeader` `value`. - example: Some header value - type: string - required: - - name - - value - type: object - HTTPHeaderUpdate: - description: The definition of `HTTPHeaderUpdate` object. - properties: - deleted: - description: Should the header be deleted. - type: boolean - name: - description: The `HTTPHeaderUpdate` `name`. - example: MyHttpHeader - pattern: ^[A-Za-z][A-Za-z\\d\\-\\_]*$ - type: string - value: - description: The `HTTPHeaderUpdate` `value`. - example: Updated Header Value - type: string - required: - - name - type: object - HTTPIntegration: - description: The definition of `HTTPIntegration` object. - properties: - base_url: - description: Base HTTP url for the integration - example: http://datadoghq.com - type: string - credentials: - $ref: '#/components/schemas/HTTPCredentials' - type: - $ref: '#/components/schemas/HTTPIntegrationType' - required: - - type - - base_url - - credentials - type: object - HTTPIntegrationType: - description: The definition of `HTTPIntegrationType` object. - enum: - - HTTP - example: HTTP - type: string - x-enum-varnames: - - HTTP - HTTPIntegrationUpdate: - description: The definition of `HTTPIntegrationUpdate` object. - properties: - base_url: - description: Base HTTP url for the integration - example: http://datadoghq.com - type: string - credentials: - $ref: '#/components/schemas/HTTPCredentialsUpdate' - type: - $ref: '#/components/schemas/HTTPIntegrationType' - required: - - type - type: object - HTTPLog: - description: Structured log message. - items: - $ref: '#/components/schemas/HTTPLogItem' - type: array - HTTPLogError: - description: List of errors. - properties: - detail: - description: Error message. - example: Malformed payload - type: string - status: - description: Error code. - example: '400' - type: string - title: - description: Error title. - example: Bad Request - type: string - type: object - HTTPLogErrors: - description: Invalid query performed. - properties: - errors: - description: Structured errors. - items: - $ref: '#/components/schemas/HTTPLogError' - type: array - type: object - HTTPLogItem: - additionalProperties: - description: Additional log attributes. - description: Logs that are sent over HTTP. - properties: - ddsource: - description: 'The integration name associated with your log: the technology - from which the log originated. - - When it matches an integration name, Datadog automatically installs the - corresponding parsers and facets. - - See [reserved attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes).' - example: nginx - type: string - ddtags: - description: Tags associated with your logs. - example: env:staging,version:5.1 - type: string - hostname: - description: The name of the originating host of the log. - example: i-012345678 - type: string - message: - description: 'The message [reserved attribute](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes) - - of your log. By default, Datadog ingests the value of the message attribute - as the body of the log entry. - - That value is then highlighted and displayed in the Logstream, where it - is indexed for full text search.' - example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - type: string - service: - description: 'The name of the application or service generating the log - events. - - It is used to switch from Logs to APM, so make sure you define the same - value when you use both products. - - See [reserved attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes).' - example: payment - type: string - required: - - message - type: object - HTTPToken: - description: The definition of `HTTPToken` object. - properties: - name: - description: The `HTTPToken` `name`. - example: MyToken - pattern: ^[A-Za-z][A-Za-z\\d]*$ - type: string - type: - $ref: '#/components/schemas/TokenType' - value: - description: The `HTTPToken` `value`. - example: Some Token Value - type: string - required: - - name - - value - - type - type: object - HTTPTokenAuth: - description: The definition of `HTTPTokenAuth` object. - properties: - body: - $ref: '#/components/schemas/HTTPBody' - headers: - description: The `HTTPTokenAuth` `headers`. - items: - $ref: '#/components/schemas/HTTPHeader' - type: array - tokens: - description: The `HTTPTokenAuth` `tokens`. - items: - $ref: '#/components/schemas/HTTPToken' - type: array - type: - $ref: '#/components/schemas/HTTPTokenAuthType' - url_parameters: - description: The `HTTPTokenAuth` `url_parameters`. - items: - $ref: '#/components/schemas/UrlParam' - type: array - required: - - type - type: object - HTTPTokenAuthType: - description: The definition of `HTTPTokenAuthType` object. - enum: - - HTTPTokenAuth - example: HTTPTokenAuth - type: string - x-enum-varnames: - - HTTPTOKENAUTH - HTTPTokenAuthUpdate: - description: The definition of `HTTPTokenAuthUpdate` object. - properties: - body: - $ref: '#/components/schemas/HTTPBody' - headers: - description: The `HTTPTokenAuthUpdate` `headers`. - items: - $ref: '#/components/schemas/HTTPHeaderUpdate' - type: array - tokens: - description: The `HTTPTokenAuthUpdate` `tokens`. - items: - $ref: '#/components/schemas/HTTPTokenUpdate' - type: array - type: - $ref: '#/components/schemas/HTTPTokenAuthType' - url_parameters: - description: The `HTTPTokenAuthUpdate` `url_parameters`. - items: - $ref: '#/components/schemas/UrlParamUpdate' - type: array - required: - - type - type: object - HTTPTokenUpdate: - description: The definition of `HTTPTokenUpdate` object. - properties: - deleted: - description: Should the header be deleted. - type: boolean - name: - description: The `HTTPToken` `name`. - example: MyToken - pattern: ^[A-Za-z][A-Za-z\\d]*$ - type: string - type: - $ref: '#/components/schemas/TokenType' - value: - description: The `HTTPToken` `value`. - example: Some Token Value - type: string - required: - - name - - type - - value - type: object - HistoricalJobDataType: - description: Type of payload. - enum: - - historicalDetectionsJob - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOB - HistoricalJobListMeta: - description: Metadata about the list of jobs. - properties: - totalCount: - description: Number of jobs in the list. - format: int32 - maximum: 2147483647 - type: integer - type: object - HistoricalJobOptions: - description: Job options. - properties: - detectionMethod: - $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' - evaluationWindow: - $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' - impossibleTravelOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions' - keepAlive: - $ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive' - maxSignalDuration: - $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' - newValueOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' - thirdPartyRuleOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' - type: object - HistoricalJobQuery: - description: Query for selecting logs analyzed by the historical job. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - dataSource: - $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - hasOptionalGroupByFields: - default: false - description: When false, events without a group-by value are ignored by - the query. When true, events with missing group-by fields are processed - with `N/A`, replacing the missing values. - example: false - type: boolean - metrics: - description: Group of target fields to aggregate over when using the sum, - max, geo data, or new value aggregations. The sum, max, and geo data aggregations - only accept one value in this list, whereas the new value aggregation - accepts up to five values. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - query: - description: Query to run on logs. - example: a > 3 - type: string - type: object - HistoricalJobResponse: - description: Historical job response. - properties: - data: - $ref: '#/components/schemas/HistoricalJobResponseData' - type: object - HistoricalJobResponseAttributes: - description: Historical job attributes. - properties: - createdAt: - description: Time when the job was created. - type: string - createdByHandle: - description: The handle of the user who created the job. - type: string - createdByName: - description: The name of the user who created the job. - type: string - createdFromRuleId: - description: ID of the rule used to create the job (if it is created from - a rule). - type: string - jobDefinition: - $ref: '#/components/schemas/JobDefinition' - jobName: - description: Job name. - type: string - jobStatus: - description: Job status. - type: string - modifiedAt: - description: Last modification time of the job. - type: string - type: object - HistoricalJobResponseData: - description: Historical job response data. - properties: - attributes: - $ref: '#/components/schemas/HistoricalJobResponseAttributes' - id: - description: ID of the job. - type: string - type: - $ref: '#/components/schemas/HistoricalJobDataType' - type: object - HourlyUsage: - description: Hourly usage for a product family for an org. - properties: - attributes: - $ref: '#/components/schemas/HourlyUsageAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/UsageTimeSeriesType' - type: object - HourlyUsageAttributes: - description: Attributes of hourly usage for a product family for an org for - a time period. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - measurements: - description: List of the measured usage values for the product family for - the org for the time period. - items: - $ref: '#/components/schemas/HourlyUsageMeasurement' - type: array - org_name: - description: The organization name. - type: string - product_family: - description: The product for which usage is being reported. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs - to. - type: string - timestamp: - description: Datetime in ISO-8601 format, UTC. The hour for the usage. - format: date-time - type: string - type: object - HourlyUsageMeasurement: - description: Usage amount for a given usage type. - properties: - usage_type: - description: Type of usage. - type: string - value: - description: Contains the number measured for the given usage_type during - the hour. - format: int64 - nullable: true - type: integer - type: object - HourlyUsageMetadata: - description: The object containing document metadata. - properties: - pagination: - $ref: '#/components/schemas/HourlyUsagePagination' - type: object - HourlyUsagePagination: - description: The metadata for the current pagination. - properties: - next_record_id: - description: The cursor to get the next results (if any). To make the next - request, use the same parameters and add `next_record_id`. - nullable: true - type: string - type: object - HourlyUsageResponse: - description: Hourly usage response. - properties: - data: - description: Response containing hourly usage. - items: - $ref: '#/components/schemas/HourlyUsage' - type: array - meta: - $ref: '#/components/schemas/HourlyUsageMetadata' - type: object - HourlyUsageType: - description: Usage type that is being measured. - enum: - - app_sec_host_count - - observability_pipelines_bytes_processed - - lambda_traced_invocations_count - example: observability_pipelines_bytes_processed - type: string - x-enum-varnames: - - APP_SEC_HOST_COUNT - - OBSERVABILITY_PIPELINES_BYTES_PROCESSSED - - LAMBDA_TRACED_INVOCATIONS_COUNT - ID: - description: The ID of a notification rule. - example: aaa-bbb-ccc - type: string - IPAllowlistAttributes: - description: Attributes of the IP allowlist. - properties: - enabled: - description: Whether the IP allowlist logic is enabled or not. - type: boolean - entries: - description: Array of entries in the IP allowlist. - items: - $ref: '#/components/schemas/IPAllowlistEntry' - type: array - type: object - IPAllowlistData: - description: IP allowlist data. - properties: - attributes: - $ref: '#/components/schemas/IPAllowlistAttributes' - id: - description: The unique identifier of the org. - type: string - type: - $ref: '#/components/schemas/IPAllowlistType' - required: - - type - type: object - IPAllowlistEntry: - description: IP allowlist entry object. - properties: - data: - $ref: '#/components/schemas/IPAllowlistEntryData' - required: - - data - type: object - IPAllowlistEntryAttributes: - description: Attributes of the IP allowlist entry. - properties: - cidr_block: - description: The CIDR block describing the IP range of the entry. - type: string - created_at: - description: Creation time of the entry. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last entry modification. - format: date-time - readOnly: true - type: string - note: - description: A note describing the IP allowlist entry. - type: string - type: object - IPAllowlistEntryData: - description: Data of the IP allowlist entry object. - properties: - attributes: - $ref: '#/components/schemas/IPAllowlistEntryAttributes' - id: - description: The unique identifier of the IP allowlist entry. - type: string - type: - $ref: '#/components/schemas/IPAllowlistEntryType' - required: - - type - type: object - IPAllowlistEntryType: - default: ip_allowlist_entry - description: IP allowlist Entry type. - enum: - - ip_allowlist_entry - example: ip_allowlist_entry - type: string - x-enum-varnames: - - IP_ALLOWLIST_ENTRY - IPAllowlistResponse: - description: Response containing information about the IP allowlist. - properties: - data: - $ref: '#/components/schemas/IPAllowlistData' - type: object - IPAllowlistType: - default: ip_allowlist - description: IP allowlist type. - enum: - - ip_allowlist - example: ip_allowlist - type: string - x-enum-varnames: - - IP_ALLOWLIST - IPAllowlistUpdateRequest: - description: Update the IP allowlist. - properties: - data: - $ref: '#/components/schemas/IPAllowlistData' - required: - - data - type: object - IdPMetadataFormData: - description: The form data submitted to upload IdP metadata - properties: - idp_file: - description: The IdP metadata XML file - format: binary - type: string - x-mimetype: application/xml - type: object - IncidentAttachmentAttachmentType: - description: The type of the incident attachment attributes. - enum: - - link - - postmortem - example: link - type: string - x-enum-varnames: - - LINK - - POSTMORTEM - IncidentAttachmentAttributes: - description: The attributes object for an attachment. - oneOf: - - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' - - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' - IncidentAttachmentData: - description: A single incident attachment. - example: - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - properties: - attributes: - $ref: '#/components/schemas/IncidentAttachmentAttributes' - id: - description: A unique identifier that represents the incident attachment. - example: 00000000-abcd-0001-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentAttachmentRelationships' - type: - $ref: '#/components/schemas/IncidentAttachmentType' - required: - - type - - attributes - - id - - relationships - type: object - IncidentAttachmentLinkAttachmentType: - default: link - description: The type of link attachment attributes. - enum: - - link - example: link - type: string - x-enum-varnames: - - LINK - IncidentAttachmentLinkAttributes: - description: The attributes object for a link attachment. - properties: - attachment: - $ref: '#/components/schemas/IncidentAttachmentLinkAttributesAttachmentObject' - attachment_type: - $ref: '#/components/schemas/IncidentAttachmentLinkAttachmentType' - modified: - description: Timestamp when the incident attachment link was last modified. - format: date-time - readOnly: true - type: string - required: - - attachment_type - - attachment - type: object - IncidentAttachmentLinkAttributesAttachmentObject: - description: The link attachment. - properties: - documentUrl: - description: The URL of this link attachment. - example: https://www.example.com/webstore-failure-runbook - type: string - title: - description: The title of this link attachment. - example: Runbook for webstore service failures - type: string - required: - - documentUrl - - title - type: object - IncidentAttachmentPostmortemAttachmentType: - default: postmortem - description: The type of postmortem attachment attributes. - enum: - - postmortem - example: postmortem - type: string - x-enum-varnames: - - POSTMORTEM - IncidentAttachmentPostmortemAttributes: - description: The attributes object for a postmortem attachment. - properties: - attachment: - $ref: '#/components/schemas/IncidentAttachmentsPostmortemAttributesAttachmentObject' - attachment_type: - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttachmentType' - required: - - attachment_type - - attachment - type: object - IncidentAttachmentRelatedObject: - description: The object related to an incident attachment. - enum: - - users - type: string - x-enum-varnames: - - USERS - IncidentAttachmentRelationships: - description: The incident attachment's relationships. - properties: - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentAttachmentType: - default: incident_attachments - description: The incident attachment resource type. - enum: - - incident_attachments - example: incident_attachments - type: string - x-enum-varnames: - - INCIDENT_ATTACHMENTS - IncidentAttachmentUpdateAttributes: - description: Incident attachment attributes. - oneOf: - - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' - - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' - IncidentAttachmentUpdateData: - description: A single incident attachment. - properties: - attributes: - $ref: '#/components/schemas/IncidentAttachmentUpdateAttributes' - id: - description: A unique identifier that represents the incident attachment. - example: 00000000-abcd-0001-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentAttachmentType' - required: - - type - type: object - IncidentAttachmentUpdateRequest: - description: The update request for an incident's attachments. - properties: - data: - description: 'An array of incident attachments. An attachment object without - an "id" key indicates that you want to - - create that attachment. An attachment object without an "attributes" key - indicates that you want to - - delete that attachment. An attachment object with both the "id" key and - a populated "attributes" object - - indicates that you want to update that attachment.' - example: - - attributes: - attachment: - documentUrl: https://app.datadoghq.com/notebook/123 - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - type: incident_attachments - - attributes: - attachment: - documentUrl: https://www.example.com/webstore-failure-runbook - title: Runbook for webstore service failures - attachment_type: link - type: incident_attachments - - id: 00000000-abcd-0003-0000-000000000000 - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentUpdateData' - type: array - required: - - data - type: object - IncidentAttachmentUpdateResponse: - description: The response object containing the created or updated incident - attachments. - properties: - data: - description: 'An array of incident attachments. Only the attachments that - were created or updated by the request are - - returned.' - example: - - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentAttachmentsResponseIncludedItem' - type: array - required: - - data - type: object - IncidentAttachmentsPostmortemAttributesAttachmentObject: - description: The postmortem attachment. - properties: - documentUrl: - description: The URL of this notebook attachment. - example: https://app.datadoghq.com/notebook/123 - type: string - title: - description: The title of this postmortem attachment. - example: Postmortem IR-123 - type: string - required: - - documentUrl - - title - type: object - IncidentAttachmentsResponse: - description: The response object containing an incident's attachments. - properties: - data: - description: An array of incident attachments. - example: - - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentAttachmentsResponseIncludedItem' - type: array - required: - - data - type: object - IncidentAttachmentsResponseIncludedItem: - description: An object related to an attachment that is included in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentCreateAttributes: - description: The incident's attributes for a create request. - properties: - customer_impact_scope: - description: Required if `customer_impacted:"true"`. A summary of the impact - customers experienced during the incident. - example: Example customer impact scope - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: A condensed view of the user-defined fields for which to create - initial selections. - example: - severity: - type: dropdown - value: SEV-5 - type: object - incident_type_uuid: - description: A unique identifier that represents an incident type. The default - incident type will be used if this property is not provided. - example: 00000000-0000-0000-0000-000000000000 - type: string - initial_cells: - description: An array of initial timeline cells to be placed at the beginning - of the incident timeline. - items: - $ref: '#/components/schemas/IncidentTimelineCellCreateAttributes' - type: array - is_test: - description: A flag indicating whether the incident is a test incident. - example: false - type: boolean - notification_handles: - description: Notification handles that will be notified of the incident - at creation. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' - items: - $ref: '#/components/schemas/IncidentNotificationHandle' - type: array - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - required: - - title - - customer_impacted - type: object - IncidentCreateData: - description: Incident data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentCreateRelationships' - type: - $ref: '#/components/schemas/IncidentType' - required: - - type - - attributes - type: object - IncidentCreateRelationships: - description: The relationships the incident will have with other resources once - created. - properties: - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - required: - - commander_user - type: object - IncidentCreateRequest: - description: Create request for an incident. - properties: - data: - $ref: '#/components/schemas/IncidentCreateData' - required: - - data - type: object - IncidentFieldAttributes: - description: Dynamic fields for which selections can be made, with field names - as keys. - oneOf: - - $ref: '#/components/schemas/IncidentFieldAttributesSingleValue' - - $ref: '#/components/schemas/IncidentFieldAttributesMultipleValue' - IncidentFieldAttributesMultipleValue: - description: A field with potentially multiple values selected. - properties: - type: - $ref: '#/components/schemas/IncidentFieldAttributesValueType' - value: - description: The multiple values selected for this field. - example: - - '1.0' - - '1.1' - items: - description: A value which has been selected for the parent field. - example: '1.1' - type: string - nullable: true - type: array - type: object - IncidentFieldAttributesSingleValue: - description: A field with a single value selected. - properties: - type: - $ref: '#/components/schemas/IncidentFieldAttributesSingleValueType' - value: - description: The single value selected for this field. - example: SEV-1 - nullable: true - type: string - type: object - IncidentFieldAttributesSingleValueType: - default: dropdown - description: Type of the single value field definitions. - enum: - - dropdown - - textbox - example: dropdown - type: string - x-enum-varnames: - - DROPDOWN - - TEXTBOX - IncidentFieldAttributesValueType: - default: multiselect - description: Type of the multiple value field definitions. - enum: - - multiselect - - textarray - - metrictag - - autocomplete - example: multiselect - type: string - x-enum-varnames: - - MULTISELECT - - TEXTARRAY - - METRICTAG - - AUTOCOMPLETE - IncidentImpactsType: - description: The incident impacts type. - enum: - - incident_impacts - example: incident_impacts - type: string - x-enum-varnames: - - INCIDENT_IMPACTS - IncidentIntegrationMetadataAttributes: - description: Incident integration metadata's attributes for a create request. - properties: - created: - description: Timestamp when the incident todo was created. - format: date-time - readOnly: true - type: string - incident_id: - description: UUID of the incident this integration metadata is connected - to. - example: 00000000-aaaa-0000-0000-000000000000 - type: string - integration_type: - description: 'A number indicating the type of integration this metadata - is for. 1 indicates Slack; - - 8 indicates Jira.' - example: 1 - format: int32 - maximum: 9 - type: integer - metadata: - $ref: '#/components/schemas/IncidentIntegrationMetadataMetadata' - modified: - description: Timestamp when the incident todo was last modified. - format: date-time - readOnly: true - type: string - status: - description: 'A number indicating the status of this integration metadata. - 0 indicates unknown; - - 1 indicates pending; 2 indicates complete; 3 indicates manually created; - - 4 indicates manually updated; 5 indicates failed.' - format: int32 - maximum: 5 - type: integer - required: - - integration_type - - metadata - type: object - IncidentIntegrationMetadataCreateData: - description: Incident integration metadata data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - type - - attributes - type: object - IncidentIntegrationMetadataCreateRequest: - description: Create request for an incident integration metadata. - properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataCreateData' - required: - - data - type: object - IncidentIntegrationMetadataListResponse: - description: Response with a list of incident integration metadata. - properties: - data: - description: An array of incident integration metadata. - items: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentIntegrationMetadataMetadata: - description: Incident integration metadata's metadata attribute. - oneOf: - - $ref: '#/components/schemas/SlackIntegrationMetadata' - - $ref: '#/components/schemas/JiraIntegrationMetadata' - - $ref: '#/components/schemas/MSTeamsIntegrationMetadata' - IncidentIntegrationMetadataPatchData: - description: Incident integration metadata data for a patch request. - properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - type - - attributes - type: object - IncidentIntegrationMetadataPatchRequest: - description: Patch request for an incident integration metadata. - properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataPatchData' - required: - - data - type: object - IncidentIntegrationMetadataResponse: - description: Response with an incident integration metadata. - properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseIncludedItem' - readOnly: true - type: array - required: - - data - type: object - IncidentIntegrationMetadataResponseData: - description: Incident integration metadata from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - id: - description: The incident integration metadata's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentIntegrationRelationships' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - id - - type - type: object - IncidentIntegrationMetadataResponseIncludedItem: - description: An object related to an incident integration metadata that is included - in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentIntegrationMetadataType: - default: incident_integrations - description: Integration metadata resource type. - enum: - - incident_integrations - example: incident_integrations - type: string - x-enum-varnames: - - INCIDENT_INTEGRATIONS - IncidentIntegrationRelationships: - description: The incident's integration relationships from a response. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentNonDatadogCreator: - description: Incident's non Datadog creator. - nullable: true - properties: - image_48_px: - description: Non Datadog creator `48px` image. - type: string - name: - description: Non Datadog creator name. - type: string - type: object - IncidentNotificationHandle: - description: A notification handle that will be notified at incident creation. - properties: - display_name: - description: The name of the notified handle. - example: Jane Doe - type: string - handle: - description: The handle used for the notification. This includes an email - address, Slack channel, or workflow. - example: '@test.user@test.com' - type: string - type: object - IncidentNotificationRule: - description: Response with a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleResponseData' - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' - type: array - required: - - data - type: object - IncidentNotificationRuleArray: - description: Response with notification rules. - properties: - data: - description: The `NotificationRuleArray` `data`. - items: - $ref: '#/components/schemas/IncidentNotificationRuleResponseData' - type: array - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' - type: array - meta: - $ref: '#/components/schemas/IncidentNotificationRuleArrayMeta' - required: - - data - type: object - IncidentNotificationRuleArrayMeta: - description: Response metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentNotificationRuleArrayMetaPage' - type: object - IncidentNotificationRuleArrayMetaPage: - description: Pagination metadata. - properties: - next_offset: - description: The offset for the next page of results. - example: 15 - format: int64 - type: integer - offset: - description: The current offset in the results. - example: 0 - format: int64 - type: integer - size: - description: The number of results returned per page. - example: 15 - format: int64 - type: integer - type: object - IncidentNotificationRuleAttributes: - description: The notification rule's attributes. - properties: - conditions: - $ref: '#/components/schemas/IncidentNotificationRuleConditions' - created: - description: Timestamp when the notification rule was created. - example: '2025-01-15T10:30:00Z' - format: date-time - readOnly: true - type: string - enabled: - description: Whether the notification rule is enabled. - example: true - type: boolean - handles: - $ref: '#/components/schemas/IncidentNotificationRuleHandles' - modified: - description: Timestamp when the notification rule was last modified. - example: '2025-01-15T14:45:00Z' - format: date-time - readOnly: true - type: string - renotify_on: - $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' - trigger: - description: The trigger event for this notification rule. - example: incident_created_trigger - type: string - visibility: - $ref: '#/components/schemas/IncidentNotificationRuleAttributesVisibility' - required: - - conditions - - handles - - visibility - - trigger - - enabled - - created - - modified - type: object - IncidentNotificationRuleAttributesVisibility: - description: The visibility of the notification rule. - enum: - - all - - organization - - private - example: organization - type: string - x-enum-varnames: - - ALL - - ORGANIZATION - - PRIVATE - IncidentNotificationRuleConditions: - description: The conditions that trigger this notification rule. - example: - - field: severity - values: - - SEV-1 - - SEV-2 - items: - $ref: '#/components/schemas/IncidentNotificationRuleConditionsItems' - type: array - IncidentNotificationRuleConditionsItems: - description: A condition that must be met to trigger the notification rule. - properties: - field: - description: The incident field to evaluate - example: severity - type: string - values: - description: The value(s) to compare against. Multiple values are `ORed` - together. - example: - - SEV-1 - - SEV-2 - items: - type: string - type: array - required: - - field - - values - type: object - IncidentNotificationRuleCreateAttributes: - description: The attributes for creating a notification rule. - properties: - conditions: - $ref: '#/components/schemas/IncidentNotificationRuleConditions' - enabled: - default: false - description: Whether the notification rule is enabled. - example: true - type: boolean - handles: - $ref: '#/components/schemas/IncidentNotificationRuleHandles' - renotify_on: - $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' - trigger: - description: The trigger event for this notification rule. - example: incident_created_trigger - type: string - visibility: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributesVisibility' - required: - - conditions - - handles - - trigger - type: object - IncidentNotificationRuleCreateAttributesVisibility: - description: The visibility of the notification rule. - enum: - - all - - organization - - private - example: organization - type: string - x-enum-varnames: - - ALL - - ORGANIZATION - - PRIVATE - IncidentNotificationRuleCreateData: - description: Notification rule data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - type - - attributes - type: object - IncidentNotificationRuleCreateDataRelationships: - description: The definition of `NotificationRuleCreateDataRelationships` object. - properties: - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - notification_template: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' - type: object - IncidentNotificationRuleHandles: - description: The notification handles (targets) for this rule. - example: - - '@team-email@company.com' - - '@slack-channel' - items: - description: A notification handle (email, Slack channel, etc.). - type: string - type: array - IncidentNotificationRuleIncludedItems: - description: Objects related to a notification rule. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/IncidentTypeObject' - - $ref: '#/components/schemas/IncidentNotificationTemplateObject' - IncidentNotificationRuleRelationships: - description: The notification rule's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - notification_template: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' - type: object - IncidentNotificationRuleRenotifyOn: - description: List of incident fields that trigger re-notification when changed. - example: - - status - - severity - items: - description: An incident field name. - type: string - type: array - IncidentNotificationRuleResponseData: - description: Notification rule data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleAttributes' - id: - description: The unique identifier of the notification rule. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - id - - type - type: object - IncidentNotificationRuleType: - description: Notification rules resource type. - enum: - - incident_notification_rules - example: incident_notification_rules - type: string - x-enum-varnames: - - INCIDENT_NOTIFICATION_RULES - IncidentNotificationRuleUpdateData: - description: Notification rule data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' - id: - description: The unique identifier of the notification rule. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - id - - type - - attributes - type: object - IncidentNotificationTemplate: - description: Response with a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' - type: array - required: - - data - type: object - IncidentNotificationTemplateArray: - description: Response with notification templates. - properties: - data: - description: The `NotificationTemplateArray` `data`. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' - type: array - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' - type: array - meta: - $ref: '#/components/schemas/IncidentNotificationTemplateArrayMeta' - required: - - data - type: object - IncidentNotificationTemplateArrayMeta: - description: Response metadata. - properties: - page: - $ref: '#/components/schemas/IncidentNotificationTemplateArrayMetaPage' - type: object - IncidentNotificationTemplateArrayMetaPage: - description: Pagination metadata. - properties: - total_count: - description: Total number of notification templates. - example: 42 - format: int64 - type: integer - total_filtered_count: - description: Total number of notification templates matching the filter. - example: 15 - format: int64 - type: integer - type: object - IncidentNotificationTemplateAttributes: - description: The notification template's attributes. - properties: - category: - description: The category of the notification template. - example: alert - type: string - content: - description: The content body of the notification template. - example: 'An incident has been declared. - - - Title: {{incident.title}} - - Severity: {{incident.severity}} - - Affected Services: {{incident.services}} - - Status: {{incident.state}} - - - Please join the incident channel for updates.' - type: string - created: - description: Timestamp when the notification template was created. - example: '2025-01-15T10:30:00Z' - format: date-time - readOnly: true - type: string - modified: - description: Timestamp when the notification template was last modified. - example: '2025-01-15T14:45:00Z' - format: date-time - readOnly: true - type: string - name: - description: The name of the notification template. - example: Incident Alert Template - type: string - subject: - description: The subject line of the notification template. - example: '{{incident.severity}} Incident: {{incident.title}}' - type: string - required: - - name - - subject - - content - - category - - created - - modified - type: object - IncidentNotificationTemplateCreateAttributes: - description: The attributes for creating a notification template. - properties: - category: - description: The category of the notification template. - example: alert - type: string - content: - description: The content body of the notification template. - example: 'An incident has been declared. - - - Title: {{incident.title}} - - Severity: {{incident.severity}} - - Affected Services: {{incident.services}} - - Status: {{incident.state}} - - - Please join the incident channel for updates.' - type: string - name: - description: The name of the notification template. - example: Incident Alert Template - type: string - subject: - description: The subject line of the notification template. - example: '{{incident.severity}} Incident: {{incident.title}}' - type: string - required: - - name - - subject - - content - - category - type: object - IncidentNotificationTemplateCreateData: - description: Notification template data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - type - - attributes - type: object - IncidentNotificationTemplateCreateDataRelationships: - description: The definition of `NotificationTemplateCreateDataRelationships` - object. - properties: - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - type: object - IncidentNotificationTemplateIncludedItems: - description: Objects related to a notification template. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/IncidentTypeObject' - IncidentNotificationTemplateObject: - description: A notification template object for inclusion in other resources. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - IncidentNotificationTemplateRelationships: - description: The notification template's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentNotificationTemplateResponseData: - description: Notification template data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - IncidentNotificationTemplateType: - description: Notification templates resource type. - enum: - - notification_templates - example: notification_templates - type: string - x-enum-varnames: - - NOTIFICATION_TEMPLATES - IncidentNotificationTemplateUpdateAttributes: - description: The attributes to update on a notification template. - properties: - category: - description: The category of the notification template. - example: update - type: string - content: - description: The content body of the notification template. - example: 'Incident Status Update: - - - Title: {{incident.title}} - - New Status: {{incident.state}} - - Severity: {{incident.severity}} - - Services: {{incident.services}} - - Commander: {{incident.commander}} - - - For more details, visit the incident page.' - type: string - name: - description: The name of the notification template. - example: Incident Status Update Template - type: string - subject: - description: The subject line of the notification template. - example: 'Incident Update: {{incident.title}} - {{incident.state}}' - type: string - type: object - IncidentNotificationTemplateUpdateData: - description: Notification template data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateUpdateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - IncidentPostmortemType: - default: incident_postmortems - description: Incident postmortem resource type. - enum: - - incident_postmortems - example: incident_postmortems - type: string - x-enum-varnames: - - INCIDENT_POSTMORTEMS - IncidentRelatedObject: - description: Object related to an incident. - enum: - - users - - attachments - type: string - x-enum-varnames: - - USERS - - ATTACHMENTS - IncidentRespondersType: - description: The incident responders type. - enum: - - incident_responders - example: incident_responders - type: string - x-enum-varnames: - - INCIDENT_RESPONDERS - IncidentResponse: - description: Response with an incident. - properties: - data: - $ref: '#/components/schemas/IncidentResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - required: - - data - type: object - IncidentResponseAttributes: - description: The incident's attributes from a response. - properties: - archived: - description: Timestamp of when the incident was archived. - format: date-time - nullable: true - readOnly: true - type: string - case_id: - description: The incident case id. - format: int64 - nullable: true - type: integer - created: - description: Timestamp when the incident was created. - format: date-time - readOnly: true - type: string - customer_impact_duration: - description: 'Length of the incident''s customer impact in seconds. - - Equals the difference between `customer_impact_start` and `customer_impact_end`.' - format: int64 - readOnly: true - type: integer - customer_impact_end: - description: Timestamp when customers were no longer impacted by the incident. - format: date-time - nullable: true - type: string - customer_impact_scope: - description: A summary of the impact customers experienced during the incident. - example: An example customer impact scope - nullable: true - type: string - customer_impact_start: - description: Timestamp when customers began being impacted by the incident. - format: date-time - nullable: true - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - detected: - description: Timestamp when the incident was detected. - format: date-time - nullable: true - type: string - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: A condensed view of the user-defined fields attached to incidents. - example: - severity: - type: dropdown - value: SEV-5 - type: object - incident_type_uuid: - description: A unique identifier that represents an incident type. - example: 00000000-0000-0000-0000-000000000000 - type: string - is_test: - description: A flag indicating whether the incident is a test incident. - example: false - type: boolean - modified: - description: Timestamp when the incident was last modified. - format: date-time - readOnly: true - type: string - non_datadog_creator: - $ref: '#/components/schemas/IncidentNonDatadogCreator' - notification_handles: - description: Notification handles that will be notified of the incident - during update. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' - items: - $ref: '#/components/schemas/IncidentNotificationHandle' - nullable: true - type: array - public_id: - description: The monotonically increasing integer ID for the incident. - example: 1 - format: int64 - type: integer - resolved: - description: Timestamp when the incident's state was last changed from active - or stable to resolved or completed. - format: date-time - nullable: true - type: string - severity: - $ref: '#/components/schemas/IncidentSeverity' - state: - description: The state incident. - nullable: true - type: string - time_to_detect: - description: 'The amount of time in seconds to detect the incident. - - Equals the difference between `customer_impact_start` and `detected`.' - format: int64 - readOnly: true - type: integer - time_to_internal_response: - description: The amount of time in seconds to call incident after detection. - Equals the difference of `detected` and `created`. - format: int64 - readOnly: true - type: integer - time_to_repair: - description: The amount of time in seconds to resolve customer impact after - detecting the issue. Equals the difference between `customer_impact_end` - and `detected`. - format: int64 - readOnly: true - type: integer - time_to_resolve: - description: The amount of time in seconds to resolve the incident after - it was created. Equals the difference between `created` and `resolved`. - format: int64 - readOnly: true - type: integer - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - visibility: - description: The incident visibility status. - nullable: true - type: string - required: - - title - type: object - IncidentResponseData: - description: Incident data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentResponseAttributes' - id: - description: The incident's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentResponseRelationships' - type: - $ref: '#/components/schemas/IncidentType' - required: - - id - - type - type: object - IncidentResponseIncludedItem: - description: An object related to an incident that is included in the response. - oneOf: - - $ref: '#/components/schemas/IncidentUserData' - - $ref: '#/components/schemas/IncidentAttachmentData' - IncidentResponseMeta: - description: The metadata object containing pagination metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentResponseMetaPagination' - readOnly: true - type: object - IncidentResponseMetaPagination: - description: Pagination properties. - properties: - next_offset: - description: The index of the first element in the next page of results. - Equal to page size added to the current offset. - example: 1000 - format: int64 - type: integer - offset: - description: The index of the first element in the results. - example: 10 - format: int64 - type: integer - size: - description: Maximum size of pages to return. - example: 1000 - format: int64 - type: integer - type: object - IncidentResponseRelationships: - description: The incident's relationships from a response. - properties: - attachments: - $ref: '#/components/schemas/RelationshipToIncidentAttachment' - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - impacts: - $ref: '#/components/schemas/RelationshipToIncidentImpacts' - integrations: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - responders: - $ref: '#/components/schemas/RelationshipToIncidentResponders' - user_defined_fields: - $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFields' - type: object - IncidentSearchResponse: - description: Response with incidents and facets. - properties: - data: - $ref: '#/components/schemas/IncidentSearchResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentSearchResponseMeta' - required: - - data - type: object - IncidentSearchResponseAttributes: - description: Attributes returned by an incident search. - properties: - facets: - $ref: '#/components/schemas/IncidentSearchResponseFacetsData' - incidents: - description: Incidents returned by the search. - items: - $ref: '#/components/schemas/IncidentSearchResponseIncidentsData' - type: array - total: - description: Number of incidents returned by the search. - example: 10 - format: int32 - maximum: 2147483647 - type: integer - required: - - facets - - incidents - - total - type: object - IncidentSearchResponseData: - description: Data returned by an incident search. - properties: - attributes: - $ref: '#/components/schemas/IncidentSearchResponseAttributes' - type: - $ref: '#/components/schemas/IncidentSearchResultsType' - type: object - IncidentSearchResponseFacetCount: - description: Count of the facet value appearing in search results. - example: 5 - format: int32 - maximum: 2147483647 - type: integer - IncidentSearchResponseFacetsData: - description: Facet data for incidents returned by a search query. - properties: - commander: - description: Facet data for incident commander users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - created_by: - description: Facet data for incident creator users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - fields: - description: Facet data for incident property fields. - items: - $ref: '#/components/schemas/IncidentSearchResponsePropertyFieldFacetData' - type: array - impact: - description: Facet data for incident impact attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - last_modified_by: - description: Facet data for incident last modified by users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - postmortem: - description: Facet data for incident postmortem existence. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - responder: - description: Facet data for incident responder users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - severity: - description: Facet data for incident severity attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - state: - description: Facet data for incident state attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - time_to_repair: - description: Facet data for incident time to repair metrics. - items: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' - type: array - time_to_resolve: - description: Facet data for incident time to resolve metrics. - items: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' - type: array - type: object - IncidentSearchResponseFieldFacetData: - description: Facet value and number of occurrences for a property field of an - incident. - properties: - count: - $ref: '#/components/schemas/IncidentSearchResponseFacetCount' - name: - description: The facet value appearing in search results. - example: SEV-2 - type: string - type: object - IncidentSearchResponseIncidentsData: - description: Incident returned by the search. - properties: - data: - $ref: '#/components/schemas/IncidentResponseData' - required: - - data - type: object - IncidentSearchResponseMeta: - description: The metadata object containing pagination metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentResponseMetaPagination' - readOnly: true - type: object - IncidentSearchResponseNumericFacetData: - description: Facet data numeric attributes of an incident. - properties: - aggregates: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetDataAggregates' - name: - description: Name of the incident property field. - example: time_to_repair - type: string - required: - - name - - aggregates - type: object - IncidentSearchResponseNumericFacetDataAggregates: - description: Aggregate information for numeric incident data. - properties: - max: - description: Maximum value of the numeric aggregates. - example: 1234.0 - format: double - nullable: true - type: number - min: - description: Minimum value of the numeric aggregates. - example: 20.0 - format: double - nullable: true - type: number - type: object - IncidentSearchResponsePropertyFieldFacetData: - description: Facet data for the incident property fields. - properties: - aggregates: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetDataAggregates' - facets: - description: Facet data for the property field of an incident. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - name: - description: Name of the incident property field. - example: Severity - type: string - required: - - facets - - name - type: object - IncidentSearchResponseUserFacetData: - description: Facet data for user attributes of an incident. - properties: - count: - $ref: '#/components/schemas/IncidentSearchResponseFacetCount' - email: - description: Email of the user. - example: datadog.user@example.com - type: string - handle: - description: Handle of the user. - example: '@datadog.user@example.com' - type: string - name: - description: Name of the user. - example: Datadog User - type: string - uuid: - description: ID of the user. - example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 - type: string - type: object - IncidentSearchResultsType: - default: incidents_search_results - description: Incident search result type. - enum: - - incidents_search_results - example: incidents_search_results - type: string - x-enum-varnames: - - INCIDENTS_SEARCH_RESULTS - IncidentSearchSortOrder: - description: The ways searched incidents can be sorted. - enum: - - created - - -created - type: string - x-enum-varnames: - - CREATED_ASCENDING - - CREATED_DESCENDING - IncidentServiceCreateAttributes: - description: The incident service's attributes for a create request. - properties: - name: - description: Name of the incident service. - example: an example service name - type: string - required: - - name - type: object - IncidentServiceCreateData: - description: Incident Service payload for create requests. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - type - type: object - IncidentServiceCreateRequest: - description: Create request with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceCreateData' - required: - - data - type: object - IncidentServiceIncludedItems: - description: An object related to an incident service which is present in the - included payload. - oneOf: - - $ref: '#/components/schemas/User' - IncidentServiceRelationships: - description: The incident service's relationships. - properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by: - $ref: '#/components/schemas/RelationshipToUser' - readOnly: true - type: object - IncidentServiceResponse: - description: Response with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceResponseData' - included: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/IncidentServiceIncludedItems' - readOnly: true - type: array - required: - - data - type: object - IncidentServiceResponseAttributes: - description: The incident service's attributes from a response. - properties: - created: - description: Timestamp of when the incident service was created. - format: date-time - readOnly: true - type: string - modified: - description: Timestamp of when the incident service was modified. - format: date-time - readOnly: true - type: string - name: - description: Name of the incident service. - example: service name - type: string - type: object - IncidentServiceResponseData: - description: Incident Service data from responses. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceResponseAttributes' - id: - description: The incident service's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - id - - type - type: object - IncidentServiceType: - default: services - description: Incident service resource type. - enum: - - services - example: services - type: string - x-enum-varnames: - - SERVICES - IncidentServiceUpdateAttributes: - description: The incident service's attributes for an update request. - properties: - name: - description: Name of the incident service. - example: an example service name - type: string - required: - - name - type: object - IncidentServiceUpdateData: - description: Incident Service payload for update requests. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceUpdateAttributes' - id: - description: The incident service's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - type - type: object - IncidentServiceUpdateRequest: - description: Update request with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceUpdateData' - required: - - data - type: object - IncidentServicesResponse: - description: Response with a list of incident service payloads. - properties: - data: - description: An array of incident services. - example: - - id: 00000000-0000-0000-0000-000000000000 - type: services - items: - $ref: '#/components/schemas/IncidentServiceResponseData' - type: array - included: - description: Included related resources which the user requested. - items: - $ref: '#/components/schemas/IncidentServiceIncludedItems' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentSeverity: - description: The incident severity. - enum: - - UNKNOWN - - SEV-0 - - SEV-1 - - SEV-2 - - SEV-3 - - SEV-4 - - SEV-5 - example: UNKNOWN - type: string - x-enum-varnames: - - UNKNOWN - - SEV_0 - - SEV_1 - - SEV_2 - - SEV_3 - - SEV_4 - - SEV_5 - IncidentTeamCreateAttributes: - description: The incident team's attributes for a create request. - properties: - name: - description: Name of the incident team. - example: team name - type: string - required: - - name - type: object - IncidentTeamCreateData: - description: Incident Team data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' - required: - - type - type: object - IncidentTeamCreateRequest: - description: Create request with an incident team payload. - properties: - data: - $ref: '#/components/schemas/IncidentTeamCreateData' - required: - - data - type: object - IncidentTeamIncludedItems: - description: An object related to an incident team which is present in the included - payload. - oneOf: - - $ref: '#/components/schemas/User' - IncidentTeamRelationships: - description: The incident team's relationships. - properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by: - $ref: '#/components/schemas/RelationshipToUser' - readOnly: true - type: object - IncidentTeamResponse: - description: Response with an incident team payload. - properties: - data: - $ref: '#/components/schemas/IncidentTeamResponseData' - included: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/IncidentTeamIncludedItems' - readOnly: true - type: array - required: - - data - type: object - IncidentTeamResponseAttributes: - description: The incident team's attributes from a response. - properties: - created: - description: Timestamp of when the incident team was created. - format: date-time - readOnly: true - type: string - modified: - description: Timestamp of when the incident team was modified. - format: date-time - readOnly: true - type: string - name: - description: Name of the incident team. - example: team name - type: string - type: object - IncidentTeamResponseData: - description: Incident Team data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamResponseAttributes' - id: - description: The incident team's ID. - example: 00000000-7ea3-0000-000a-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' - type: object - IncidentTeamType: - default: teams - description: Incident Team resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - IncidentTeamUpdateAttributes: - description: The incident team's attributes for an update request. - properties: - name: - description: Name of the incident team. - example: team name - type: string - required: - - name - type: object - IncidentTeamUpdateData: - description: Incident Team data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamUpdateAttributes' - id: - description: The incident team's ID. - example: 00000000-7ea3-0000-0001-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' - required: - - type - type: object - IncidentTeamUpdateRequest: - description: Update request with an incident team payload. - properties: - data: - $ref: '#/components/schemas/IncidentTeamUpdateData' - required: - - data - type: object - IncidentTeamsResponse: - description: Response with a list of incident team payloads. - properties: - data: - description: An array of incident teams. - example: - - attributes: - name: team name - id: 00000000-7ea3-0000-0000-000000000000 - type: teams - items: - $ref: '#/components/schemas/IncidentTeamResponseData' - type: array - included: - description: Included related resources which the user requested. - items: - $ref: '#/components/schemas/IncidentTeamIncludedItems' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentTimelineCellCreateAttributes: - description: The timeline cell's attributes for a create request. - oneOf: - - $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributes' - IncidentTimelineCellMarkdownContentType: - default: markdown - description: Type of the Markdown timeline cell. - enum: - - markdown - example: markdown - type: string - x-enum-varnames: - - MARKDOWN - IncidentTimelineCellMarkdownCreateAttributes: - description: Timeline cell data for Markdown timeline cells for a create request. - properties: - cell_type: - $ref: '#/components/schemas/IncidentTimelineCellMarkdownContentType' - content: - $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributesContent' - important: - default: false - description: A flag indicating whether the timeline cell is important and - should be highlighted. - example: false - type: boolean - required: - - content - - cell_type - type: object - IncidentTimelineCellMarkdownCreateAttributesContent: - description: The Markdown timeline cell contents. - properties: - content: - description: The Markdown content of the cell. - example: An example timeline cell message. - nullable: false - type: string - type: object - IncidentTodoAnonymousAssignee: - description: Anonymous assignee entity. - properties: - icon: - description: URL for assignee's icon. - example: https://a.slack-edge.com/80588/img/slackbot_48.png - type: string - id: - description: Anonymous assignee's ID. - example: USLACKBOT - type: string - name: - description: Assignee's name. - example: Slackbot - type: string - source: - $ref: '#/components/schemas/IncidentTodoAnonymousAssigneeSource' - required: - - id - - icon - - name - - source - type: object - IncidentTodoAnonymousAssigneeSource: - default: slack - description: The source of the anonymous assignee. - enum: - - slack - - microsoft_teams - example: slack - type: string - x-enum-varnames: - - SLACK - - MICROSOFT_TEAMS - IncidentTodoAssignee: - description: A todo assignee. - example: '@test.user@test.com' - oneOf: - - $ref: '#/components/schemas/IncidentTodoAssigneeHandle' - - $ref: '#/components/schemas/IncidentTodoAnonymousAssignee' - IncidentTodoAssigneeArray: - description: Array of todo assignees. - example: - - '@test.user@test.com' - items: - $ref: '#/components/schemas/IncidentTodoAssignee' - type: array - IncidentTodoAssigneeHandle: - description: Assignee's @-handle. - example: '@test.user@test.com' - type: string - IncidentTodoAttributes: - description: Incident todo's attributes. - properties: - assignees: - $ref: '#/components/schemas/IncidentTodoAssigneeArray' - completed: - description: Timestamp when the todo was completed. - example: '2023-03-06T22:00:00.000000+00:00' - nullable: true - type: string - content: - description: The follow-up task's content. - example: Restore lost data. - type: string - created: - description: Timestamp when the incident todo was created. - format: date-time - readOnly: true - type: string - due_date: - description: Timestamp when the todo should be completed by. - example: '2023-07-10T05:00:00.000000+00:00' - nullable: true - type: string - incident_id: - description: UUID of the incident this todo is connected to. - example: 00000000-aaaa-0000-0000-000000000000 - type: string - modified: - description: Timestamp when the incident todo was last modified. - format: date-time - readOnly: true - type: string - required: - - content - - assignees - type: object - IncidentTodoCreateData: - description: Incident todo data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - type - - attributes - type: object - IncidentTodoCreateRequest: - description: Create request for an incident todo. - properties: - data: - $ref: '#/components/schemas/IncidentTodoCreateData' - required: - - data - type: object - IncidentTodoListResponse: - description: Response with a list of incident todos. - properties: - data: - description: An array of incident todos. - items: - $ref: '#/components/schemas/IncidentTodoResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentTodoPatchData: - description: Incident todo data for a patch request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - type - - attributes - type: object - IncidentTodoPatchRequest: - description: Patch request for an incident todo. - properties: - data: - $ref: '#/components/schemas/IncidentTodoPatchData' - required: - - data - type: object - IncidentTodoRelationships: - description: The incident's relationships from a response. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentTodoResponse: - description: Response with an incident todo. - properties: - data: - $ref: '#/components/schemas/IncidentTodoResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' - readOnly: true - type: array - required: - - data - type: object - IncidentTodoResponseData: - description: Incident todo response data. - properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - id: - description: The incident todo's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTodoRelationships' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - id - - type - type: object - IncidentTodoResponseIncludedItem: - description: An object related to an incident todo that is included in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentTodoType: - default: incident_todos - description: Todo resource type. - enum: - - incident_todos - example: incident_todos - type: string - x-enum-varnames: - - INCIDENT_TODOS - IncidentTrigger: - description: Trigger a workflow from an Incident. For automatic triggering a - handle must be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - IncidentTriggerWrapper: - description: Schema for an Incident-based trigger. - properties: - incidentTrigger: - $ref: '#/components/schemas/IncidentTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - incidentTrigger - type: object - IncidentType: - default: incidents - description: Incident resource type. - enum: - - incidents - example: incidents - type: string - x-enum-varnames: - - INCIDENTS - IncidentTypeAttributes: - description: Incident type's attributes. - properties: - createdAt: - description: Timestamp when the incident type was created. - format: date-time - readOnly: true - type: string - createdBy: - description: A unique identifier that represents the user that created the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - description: - description: Text that describes the incident type. - example: Any incidents that harm (or have the potential to) the confidentiality, - integrity, or availability of our data. - type: string - is_default: - default: false - description: If true, this incident type will be used as the default incident - type if a type is not specified during the creation of incident resources. - example: false - type: boolean - lastModifiedBy: - description: A unique identifier that represents the user that last modified - the incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - modifiedAt: - description: Timestamp when the incident type was last modified. - format: date-time - readOnly: true - type: string - name: - description: The name of the incident type. - example: Security Incident - type: string - prefix: - description: The string that will be prepended to the incident title across - the Datadog app. - example: IR - readOnly: true - type: string - required: - - name - type: object - IncidentTypeCreateData: - description: Incident type data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTypeAttributes' - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - type - - attributes - type: object - IncidentTypeCreateRequest: - description: Create request for an incident type. - properties: - data: - $ref: '#/components/schemas/IncidentTypeCreateData' - required: - - data - type: object - IncidentTypeListResponse: - description: Response with a list of incident types. - properties: - data: - description: An array of incident type objects. - items: - $ref: '#/components/schemas/IncidentTypeObject' - type: array - required: - - data - type: object - IncidentTypeObject: - description: Incident type response data. - properties: - attributes: - $ref: '#/components/schemas/IncidentTypeAttributes' - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTypeRelationships' - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type - type: object - IncidentTypePatchData: - description: Incident type data for a patch request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTypeUpdateAttributes' - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type - - attributes - type: object - IncidentTypePatchRequest: - description: Patch request for an incident type. - properties: - data: - $ref: '#/components/schemas/IncidentTypePatchData' - required: - - data - type: object - IncidentTypeRelationships: - additionalProperties: {} - description: The incident type's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - google_meet_configuration: - $ref: '#/components/schemas/GoogleMeetConfigurationReference' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - microsoft_teams_configuration: - $ref: '#/components/schemas/MicrosoftTeamsConfigurationReference' - zoom_configuration: - $ref: '#/components/schemas/ZoomConfigurationReference' - type: object - IncidentTypeResponse: - description: Incident type response data. - properties: - data: - $ref: '#/components/schemas/IncidentTypeObject' - required: - - data - type: object - IncidentTypeType: - default: incident_types - description: Incident type resource type. - enum: - - incident_types - example: incident_types - type: string - x-enum-varnames: - - INCIDENT_TYPES - IncidentTypeUpdateAttributes: - description: Incident type's attributes for updates. - properties: - createdAt: - description: Timestamp when the incident type was created. - format: date-time - readOnly: true - type: string - createdBy: - description: A unique identifier that represents the user that created the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - description: - description: Text that describes the incident type. - example: 'Any incidents that harm (or have the potential to) the confidentiality, - integrity, or availability of our data. Note: This will notify the security - team.' - type: string - is_default: - description: When true, this incident type will be used as the default type - when an incident type is not specified. - example: false - type: boolean - lastModifiedBy: - description: A unique identifier that represents the user that last modified - the incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - modifiedAt: - description: Timestamp when the incident type was last modified. - format: date-time - readOnly: true - type: string - name: - description: The name of the incident type. - example: Security Incident - type: string - prefix: - description: The string that will be prepended to the incident title across - the Datadog app. - example: IR - readOnly: true - type: string - type: object - IncidentUpdateAttributes: - description: The incident's attributes for an update request. - properties: - customer_impact_end: - description: Timestamp when customers were no longer impacted by the incident. - format: date-time - nullable: true - type: string - customer_impact_scope: - description: A summary of the impact customers experienced during the incident. - example: Example customer impact scope - type: string - customer_impact_start: - description: Timestamp when customers began being impacted by the incident. - format: date-time - nullable: true - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - detected: - description: Timestamp when the incident was detected. - format: date-time - nullable: true - type: string - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: A condensed view of the user-defined fields for which to update - selections. - example: - severity: - type: dropdown - value: SEV-5 - type: object - notification_handles: - description: Notification handles that will be notified of the incident - during update. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' - items: - $ref: '#/components/schemas/IncidentNotificationHandle' - type: array - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - type: object - IncidentUpdateData: - description: Incident data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentUpdateAttributes' - id: - description: The incident's ID. - example: 00000000-0000-0000-4567-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentUpdateRelationships' - type: - $ref: '#/components/schemas/IncidentType' - required: - - id - - type - type: object - IncidentUpdateRelationships: - description: The incident's relationships for an update request. - properties: - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - integrations: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' - postmortem: - $ref: '#/components/schemas/RelationshipToIncidentPostmortem' - type: object - IncidentUpdateRequest: - description: Update request for an incident. - properties: - data: - $ref: '#/components/schemas/IncidentUpdateData' - required: - - data - type: object - IncidentUserAttributes: - description: Attributes of user object returned by the API. - properties: - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - name: - description: Name of the user. - nullable: true - type: string - uuid: - description: UUID of the user. - type: string - type: object - IncidentUserData: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/IncidentUserAttributes' - id: - description: ID of the user. - type: string - type: - $ref: '#/components/schemas/UsersType' - type: object - IncidentUserDefinedFieldType: - description: The incident user defined fields type. - enum: - - user_defined_field - example: user_defined_field - type: string - x-enum-varnames: - - USER_DEFINED_FIELD - IncidentsResponse: - description: Response with a list of incidents. - properties: - data: - description: An array of incidents. - example: - - attributes: - created: '2020-04-21T15:34:08.627205+00:00' - creation_idempotency_key: null - customer_impact_duration: 0 - customer_impact_end: null - customer_impact_scope: null - customer_impact_start: null - customer_impacted: false - detected: '2020-04-14T00:00:00+00:00' - incident_type_uuid: 00000000-0000-0000-0000-000000000001 - modified: '2020-09-17T14:16:58.696424+00:00' - public_id: 1 - resolved: null - severity: SEV-1 - time_to_detect: 0 - time_to_internal_response: 0 - time_to_repair: 0 - time_to_resolve: 0 - title: Example Incident - id: 00000000-aaaa-0000-0000-000000000000 - relationships: - attachments: - data: - - id: 00000000-9999-0000-0000-000000000000 - type: incident_attachments - - id: 00000000-1234-0000-0000-000000000000 - type: incident_attachments - commander_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - created_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - integrations: - data: - - id: 00000000-0000-0000-4444-000000000000 - type: incident_integrations - - id: 00000000-0000-0000-5555-000000000000 - type: incident_integrations - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incidents - - attributes: - created: '2020-04-21T15:34:08.627205+00:00' - creation_idempotency_key: null - customer_impact_duration: 0 - customer_impact_end: null - customer_impact_scope: null - customer_impact_start: null - customer_impacted: false - detected: '2020-04-14T00:00:00+00:00' - incident_type_uuid: 00000000-0000-0000-0000-000000000002 - modified: '2020-09-17T14:16:58.696424+00:00' - public_id: 2 - resolved: null - severity: SEV-5 - time_to_detect: 0 - time_to_internal_response: 0 - time_to_repair: 0 - time_to_resolve: 0 - title: Example Incident 2 - id: 00000000-1111-0000-0000-000000000000 - relationships: - attachments: - data: - - id: 00000000-9999-0000-0000-000000000000 - type: incident_attachments - commander_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - created_by_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - integrations: - data: - - id: 00000000-0000-0000-0001-000000000000 - type: incident_integrations - - id: 00000000-0000-0000-0002-000000000000 - type: incident_integrations - last_modified_by_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - type: incidents - items: - $ref: '#/components/schemas/IncidentResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncludeType: - description: Supported include types. - enum: - - schema - - raw_schema - - oncall - - incident - - relation - type: string - x-enum-varnames: - - SCHEMA - - RAW_SCHEMA - - ONCALL - - INCIDENT - - RELATION - InputSchema: - description: A list of input parameters for the workflow. These can be used - as dynamic runtime values in your workflow. - properties: - parameters: - description: The `InputSchema` `parameters`. - items: - $ref: '#/components/schemas/InputSchemaParameters' - type: array - type: object - InputSchemaParameters: - description: The definition of `InputSchemaParameters` object. - properties: - defaultValue: - description: The `InputSchemaParameters` `defaultValue`. - description: - description: The `InputSchemaParameters` `description`. - type: string - label: - description: The `InputSchemaParameters` `label`. - type: string - name: - description: The `InputSchemaParameters` `name`. - example: '' - type: string - type: - $ref: '#/components/schemas/InputSchemaParametersType' - required: - - name - - type - type: object - InputSchemaParametersType: - description: The definition of `InputSchemaParametersType` object. - enum: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - example: STRING - type: string - x-enum-varnames: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - IntakePayloadAccepted: - description: The payload accepted for intake. - properties: - errors: - description: A list of errors. - items: - description: An empty error list. - type: string - type: array - type: object - InterfaceAttributes: - description: The interface attributes - properties: - alias: - description: The interface alias - example: interface_0 - type: string - description: - description: The interface description - example: a network interface - type: string - index: - description: The interface index - example: 0 - format: int64 - type: integer - ip_addresses: - description: The interface IP addresses - example: - - 1.1.1.1 - - 1.1.1.2 - items: - type: string - type: array - mac_address: - description: The interface MAC address - example: 00:00:00:00:00:00 - type: string - name: - description: The interface name - example: if0 - type: string - status: - $ref: '#/components/schemas/InterfaceAttributesStatus' - type: object - InterfaceAttributesStatus: - description: The interface status - enum: - - up - - down - - warning - - 'off' - example: up - type: string - x-enum-varnames: - - UP - - DOWN - - WARNING - - 'OFF' - Issue: - description: The issue matching the request. - properties: - attributes: - $ref: '#/components/schemas/IssueAttributes' - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - relationships: - $ref: '#/components/schemas/IssueRelationships' - type: - $ref: '#/components/schemas/IssueType' - required: - - id - - type - - attributes - type: object - IssueAssigneeRelationship: - description: Relationship between the issue and assignee. - properties: - data: - $ref: '#/components/schemas/IssueUserReference' - required: - - data - type: object - IssueAttributes: - description: Object containing the information of an issue. - properties: - error_message: - description: Error message associated with the issue. - example: object of type 'NoneType' has no len() - type: string - error_type: - description: Type of the error that matches the issue. - example: builtins.TypeError - type: string - file_path: - description: Path of the file where the issue occurred. - example: /django-email/conduit/apps/core/utils.py - type: string - first_seen: - description: Timestamp of the first seen error in milliseconds since the - Unix epoch. - example: 1671612804001 - format: int64 - type: integer - first_seen_version: - description: The application version (for example, git commit hash) where - the issue was first observed. - example: aaf65cd0 - type: string - function_name: - description: Name of the function where the issue occurred. - example: filter_forbidden_tags - type: string - is_crash: - description: Error is a crash. - example: false - type: boolean - languages: - description: Array of programming languages associated with the issue. - example: - - PYTHON - - GO - items: - $ref: '#/components/schemas/IssueLanguage' - type: array - last_seen: - description: Timestamp of the last seen error in milliseconds since the - Unix epoch. - example: 1671620003100 - format: int64 - type: integer - last_seen_version: - description: The application version (for example, git commit hash) where - the issue was last observed. - example: b6199f80 - type: string - platform: - $ref: '#/components/schemas/IssuePlatform' - service: - description: Service name. - example: email-api-py - type: string - state: - $ref: '#/components/schemas/IssueState' - type: object - IssueCase: - description: The case attached to the issue. - properties: - attributes: - $ref: '#/components/schemas/IssueCaseAttributes' - id: - description: Case identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - relationships: - $ref: '#/components/schemas/IssueCaseRelationships' - type: - $ref: '#/components/schemas/IssueCaseResourceType' - required: - - id - - type - - attributes - type: object - IssueCaseAttributes: - description: Object containing the information of a case. - properties: - archived_at: - description: Timestamp of when the case was archived. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - closed_at: - description: Timestamp of when the case was closed. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - created_at: - description: Timestamp of when the case was created. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - creation_source: - description: Source of the case creation. - example: ERROR_TRACKING - type: string - description: - description: Description of the case. - type: string - due_date: - description: Due date of the case. - example: '2025-01-01' - type: string - insights: - description: Insights of the case. - items: - $ref: '#/components/schemas/IssueCaseInsight' - type: array - jira_issue: - $ref: '#/components/schemas/IssueCaseJiraIssue' - key: - description: Key of the case. - example: ET-123 - type: string - modified_at: - description: Timestamp of when the case was last modified. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - priority: - $ref: '#/components/schemas/CasePriority' - status: - $ref: '#/components/schemas/CaseStatus' - title: - description: Title of the case. - example: 'Error: HTTP error' - type: string - type: - description: Type of the case. - example: ERROR_TRACKING_ISSUE - type: string - type: object - IssueCaseInsight: - description: Insight of the case. - properties: - ref: - description: Reference of the insight. - example: /error-tracking?issueId=2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - resource_id: - description: Insight identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - type: - description: Type of the insight. - example: ERROR_TRACKING - type: string - type: object - IssueCaseJiraIssue: - description: Jira issue of the case. - properties: - result: - $ref: '#/components/schemas/IssueCaseJiraIssueResult' - status: - description: Creation status of the Jira issue. - example: COMPLETED - type: string - type: object - IssueCaseJiraIssueResult: - description: Contains the identifiers and URL for a successfully created Jira - issue. - properties: - issue_id: - description: Jira issue identifier. - example: '1904866' - type: string - issue_key: - description: Jira issue key. - example: ET-123 - type: string - issue_url: - description: Jira issue URL. - example: https://your-jira-instance.atlassian.net/browse/ET-123 - type: string - project_key: - description: Jira project key. - example: ET - type: string - type: object - IssueCaseReference: - description: The case the issue is attached to. - properties: - id: - description: Case identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - type: - $ref: '#/components/schemas/IssueCaseResourceType' - required: - - id - - type - type: object - IssueCaseRelationship: - description: Relationship between the issue and case. - properties: - data: - $ref: '#/components/schemas/IssueCaseReference' - required: - - data - type: object - IssueCaseRelationships: - description: Resources related to a case. - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - created_by: - $ref: '#/components/schemas/NullableUserRelationship' - modified_by: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - type: object - IssueCaseResourceType: - description: Type of the object. - enum: - - case - example: case - type: string - x-enum-varnames: - - CASE - IssueIncluded: - description: An array of related resources, returned when the `include` query - parameter is used. - oneOf: - - $ref: '#/components/schemas/IssueCase' - - $ref: '#/components/schemas/IssueUser' - - $ref: '#/components/schemas/IssueTeam' - IssueLanguage: - description: Programming language associated with the issue. - enum: - - BRIGHTSCRIPT - - C - - C_PLUS_PLUS - - C_SHARP - - CLOJURE - - DOT_NET - - ELIXIR - - ERLANG - - GO - - GROOVY - - HASKELL - - HCL - - JAVA - - JAVASCRIPT - - JVM - - KOTLIN - - OBJECTIVE_C - - PERL - - PHP - - PYTHON - - RUBY - - RUST - - SCALA - - SWIFT - - TERRAFORM - - TYPESCRIPT - - UNKNOWN - example: PYTHON - type: string - x-enum-varnames: - - BRIGHTSCRIPT - - C - - C_PLUS_PLUS - - C_SHARP - - CLOJURE - - DOT_NET - - ELIXIR - - ERLANG - - GO - - GROOVY - - HASKELL - - HCL - - JAVA - - JAVASCRIPT - - JVM - - KOTLIN - - OBJECTIVE_C - - PERL - - PHP - - PYTHON - - RUBY - - RUST - - SCALA - - SWIFT - - TERRAFORM - - TYPESCRIPT - - UNKNOWN - IssuePlatform: - description: Platform associated with the issue. - enum: - - ANDROID - - BACKEND - - BROWSER - - FLUTTER - - IOS - - REACT_NATIVE - - ROKU - - UNKNOWN - example: BACKEND - type: string - x-enum-varnames: - - ANDROID - - BACKEND - - BROWSER - - FLUTTER - - IOS - - REACT_NATIVE - - ROKU - - UNKNOWN - IssueReference: - description: The issue the search result corresponds to. - properties: - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - type: - $ref: '#/components/schemas/IssueType' - required: - - id - - type - type: object - IssueRelationships: - description: Relationship between the issue and an assignee, case and/or teams. - properties: - assignee: - $ref: '#/components/schemas/IssueAssigneeRelationship' - case: - $ref: '#/components/schemas/IssueCaseRelationship' - team_owners: - $ref: '#/components/schemas/IssueTeamOwnersRelationship' - type: object - IssueResponse: - description: Response containing error tracking issue data. - properties: - data: - $ref: '#/components/schemas/Issue' - included: - description: Array of resources related to the issue. - items: - $ref: '#/components/schemas/IssueIncluded' - type: array - type: object - IssueState: - description: State of the issue - enum: - - OPEN - - ACKNOWLEDGED - - RESOLVED - - IGNORED - - EXCLUDED - example: RESOLVED - type: string - x-enum-varnames: - - OPEN - - ACKNOWLEDGED - - RESOLVED - - IGNORED - - EXCLUDED - IssueTeam: - description: A team that owns an issue. - properties: - attributes: - $ref: '#/components/schemas/IssueTeamAttributes' - id: - description: Team identifier. - example: 221b0179-6447-4d03-91c3-3ca98bf60e8a - type: string - type: - $ref: '#/components/schemas/IssueTeamType' - required: - - id - - type - - attributes - type: object - IssueTeamAttributes: - description: Object containing the information of a team. - properties: - handle: - description: The team's identifier. - example: team-handle - type: string - name: - description: The name of the team. - example: Team Name - type: string - summary: - description: A brief summary of the team, derived from its description. - example: This is a team. - type: string - type: object - IssueTeamOwnersRelationship: - description: Relationship between the issue and teams. - properties: - data: - description: Array of teams that are owners of the issue. - items: - $ref: '#/components/schemas/IssueTeamReference' - type: array - required: - - data - type: object - IssueTeamReference: - description: A team that owns the issue. - properties: - id: - description: Team identifier. - example: 221b0179-6447-4d03-91c3-3ca98bf60e8a - type: string - type: - $ref: '#/components/schemas/IssueTeamType' - required: - - id - - type - type: object - IssueTeamType: - description: Type of the object. - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - IssueType: - description: Type of the object. - enum: - - issue - example: issue - type: string - x-enum-varnames: - - ISSUE - IssueUpdateAssigneeRequest: - description: Update issue assignee request payload. - properties: - data: - $ref: '#/components/schemas/IssueUpdateAssigneeRequestData' - required: - - data - type: object - IssueUpdateAssigneeRequestData: - description: Update issue assignee request. - properties: - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUpdateAssigneeRequestDataType' - required: - - id - - type - type: object - IssueUpdateAssigneeRequestDataType: - description: Type of the object. - enum: - - assignee - example: assignee - type: string - x-enum-varnames: - - ASSIGNEE - IssueUpdateStateRequest: - description: Update issue state request payload. - properties: - data: - $ref: '#/components/schemas/IssueUpdateStateRequestData' - required: - - data - type: object - IssueUpdateStateRequestData: - description: Update issue state request. - properties: - attributes: - $ref: '#/components/schemas/IssueUpdateStateRequestDataAttributes' - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - type: - $ref: '#/components/schemas/IssueUpdateStateRequestDataType' - required: - - id - - type - - attributes - type: object - IssueUpdateStateRequestDataAttributes: - description: Object describing an issue state update request. - properties: - state: - $ref: '#/components/schemas/IssueState' - required: - - state - type: object - IssueUpdateStateRequestDataType: - description: Type of the object. - enum: - - error_tracking_issue - example: error_tracking_issue - type: string - x-enum-varnames: - - ERROR_TRACKING_ISSUE - IssueUser: - description: The user to whom the issue is assigned. - properties: - attributes: - $ref: '#/components/schemas/IssueUserAttributes' - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUserType' - required: - - id - - type - - attributes - type: object - IssueUserAttributes: - description: Object containing the information of a user. - properties: - email: - description: Email of the user. - example: user@company.com - type: string - handle: - description: Handle of the user. - example: User Handle - type: string - name: - description: Name of the user. - example: User Name - type: string - type: object - IssueUserReference: - description: The user the issue is assigned to. - properties: - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUserType' - required: - - id - - type - type: object - IssueUserType: - description: Type of the object - enum: - - user - example: user - type: string - x-enum-varnames: - - USER - IssuesSearchRequest: - description: Search issues request payload. - properties: - data: - $ref: '#/components/schemas/IssuesSearchRequestData' - required: - - data - type: object - IssuesSearchRequestData: - description: Search issues request. - properties: - attributes: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributes' - type: - $ref: '#/components/schemas/IssuesSearchRequestDataType' - required: - - type - - attributes - type: object - IssuesSearchRequestDataAttributes: - description: Object describing a search issue request. - properties: - from: - description: Start date (inclusive) of the query in milliseconds since the - Unix epoch. - example: 1671612804000 - format: int64 - type: integer - order_by: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesOrderBy' - persona: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesPersona' - query: - description: Search query following the event search syntax. - example: service:orders-* AND @language:go - type: string - to: - description: End date (exclusive) of the query in milliseconds since the - Unix epoch. - example: 1671620004000 - format: int64 - type: integer - track: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesTrack' - required: - - query - - from - - to - type: object - IssuesSearchRequestDataAttributesOrderBy: - description: The attribute to sort the search results by. - enum: - - TOTAL_COUNT - - FIRST_SEEN - - IMPACTED_SESSIONS - - PRIORITY - example: IMPACTED_SESSIONS - type: string - x-enum-varnames: - - TOTAL_COUNT - - FIRST_SEEN - - IMPACTED_SESSIONS - - PRIORITY - IssuesSearchRequestDataAttributesPersona: - description: Persona for the search. Either track(s) or persona(s) must be specified. - enum: - - ALL - - BROWSER - - MOBILE - - BACKEND - example: BACKEND - type: string - x-enum-varnames: - - ALL - - BROWSER - - MOBILE - - BACKEND - IssuesSearchRequestDataAttributesTrack: - description: Track of the events to query. Either track(s) or persona(s) must - be specified. - enum: - - trace - - logs - - rum - example: trace - type: string - x-enum-varnames: - - TRACE - - LOGS - - RUM - IssuesSearchRequestDataType: - description: Type of the object. - enum: - - search_request - example: search_request - type: string - x-enum-varnames: - - SEARCH_REQUEST - IssuesSearchResponse: - description: Search issues response payload. - properties: - data: - description: Array of results matching the search query. - items: - $ref: '#/components/schemas/IssuesSearchResult' - type: array - included: - description: Array of resources related to the search results. - items: - $ref: '#/components/schemas/IssuesSearchResultIncluded' - type: array - type: object - IssuesSearchResult: - description: Result matching the search query. - properties: - attributes: - $ref: '#/components/schemas/IssuesSearchResultAttributes' - id: - description: Search result identifier (matches the nested issue's identifier). - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - relationships: - $ref: '#/components/schemas/IssuesSearchResultRelationships' - type: - $ref: '#/components/schemas/IssuesSearchResultType' - required: - - id - - type - - attributes - type: object - IssuesSearchResultAttributes: - description: Object containing the information of a search result. - properties: - impacted_sessions: - description: Count of sessions impacted by the issue over the queried time - window. - example: 12 - format: int64 - type: integer - impacted_users: - description: Count of users impacted by the issue over the queried time - window. - example: 4 - format: int64 - type: integer - total_count: - description: Total count of errors that match the issue over the queried - time window. - example: 82 - format: int64 - type: integer - type: object - IssuesSearchResultIncluded: - description: An array of related resources, returned when the `include` query - parameter is used. - oneOf: - - $ref: '#/components/schemas/Issue' - - $ref: '#/components/schemas/Case' - - $ref: '#/components/schemas/IssueUser' - - $ref: '#/components/schemas/IssueTeam' - IssuesSearchResultIssueRelationship: - description: Relationship between the search result and the corresponding issue. - properties: - data: - $ref: '#/components/schemas/IssueReference' - required: - - data - type: object - IssuesSearchResultRelationships: - description: Relationships between the search result and other resources. - properties: - issue: - $ref: '#/components/schemas/IssuesSearchResultIssueRelationship' - type: object - IssuesSearchResultType: - description: Type of the object. - enum: - - error_tracking_search_result - example: error_tracking_search_result - type: string - x-enum-varnames: - - ERROR_TRACKING_SEARCH_RESULT - ItemApiPayload: - description: A single datastore item with its content and metadata. - properties: - data: - $ref: '#/components/schemas/ItemApiPayloadData' - type: object - ItemApiPayloadArray: - description: A collection of datastore items with pagination and schema metadata. - properties: - data: - description: An array of datastore items with their content and metadata. - items: - $ref: '#/components/schemas/ItemApiPayloadData' - maxItems: 100 - type: array - meta: - $ref: '#/components/schemas/ItemApiPayloadMeta' - description: Metadata about the included items, including pagination info - and datastore schema. - required: - - data - type: object - ItemApiPayloadData: - description: Core data and metadata for a single datastore item. - properties: - attributes: - $ref: '#/components/schemas/ItemApiPayloadDataAttributes' - id: - description: The unique identifier of the datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - ItemApiPayloadDataAttributes: - description: Metadata and content of a datastore item. - properties: - created_at: - description: Timestamp when the item was first created. - format: date-time - type: string - modified_at: - description: Timestamp when the item was last modified. - format: date-time - type: string - org_id: - description: The ID of the organization that owns this item. - format: int64 - type: integer - primary_column_name: - $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' - signature: - description: A unique signature identifying this item version. - type: string - store_id: - description: The unique identifier of the datastore containing this item. - type: string - value: - $ref: '#/components/schemas/ItemApiPayloadDataAttributesValue' - type: object - ItemApiPayloadDataAttributesValue: - additionalProperties: {} - description: The data content (as key-value pairs) of a datastore item. - type: object - ItemApiPayloadMeta: - description: Additional metadata about a collection of datastore items, including - pagination and schema information. - properties: - page: - $ref: '#/components/schemas/ItemApiPayloadMetaPage' - schema: - $ref: '#/components/schemas/ItemApiPayloadMetaSchema' - type: object - ItemApiPayloadMetaPage: - description: Pagination information for a collection of datastore items. - properties: - hasMore: - description: Whether there are additional pages of items beyond the current - page. - type: boolean - totalCount: - description: The total number of items in the datastore, ignoring any filters. - format: int64 - type: integer - totalFilteredCount: - description: The total number of items that match the current filter criteria. - format: int64 - type: integer - type: object - ItemApiPayloadMetaSchema: - description: Schema information about the datastore, including its primary key - and field definitions. - properties: - fields: - description: An array describing the columns available in this datastore. - items: - $ref: '#/components/schemas/ItemApiPayloadMetaSchemaField' - type: array - primary_key: - description: The name of the primary key column for this datastore. - type: string - type: object - ItemApiPayloadMetaSchemaField: - description: Information about a specific column in the datastore schema. - properties: - name: - description: The name of this column in the datastore. - example: '' - type: string - type: - description: The data type of this column. For example, 'string', 'number', - or 'boolean'. - example: '' - type: string - required: - - name - - type - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: A human-readable explanation specific to this occurrence of - the error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: A string indicating the name of a single request header which - caused the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: A JSON pointer to the value in the request document that caused - the error. - example: /data/attributes/title - type: string - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - JiraIntegrationMetadata: - description: Incident integration metadata for the Jira integration. - properties: - issues: - description: Array of Jira issues in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/JiraIntegrationMetadataIssuesItem' - type: array - required: - - issues - type: object - JiraIntegrationMetadataIssuesItem: - description: Item in the Jira integration metadata issue array. - properties: - account: - description: URL of issue's Jira account. - example: https://example.atlassian.net - type: string - issue_key: - description: Jira issue's issue key. - example: PROJ-123 - type: string - issuetype_id: - description: Jira issue's issue type. - example: '1000' - type: string - project_key: - description: Jira issue's project keys. - example: PROJ - type: string - redirect_url: - description: URL redirecting to the Jira issue. - example: https://example.atlassian.net/browse/PROJ-123 - type: string - required: - - project_key - - account - type: object - JiraIssue: - description: Jira issue attached to case - nullable: true - properties: - result: - $ref: '#/components/schemas/JiraIssueResult' - status: - $ref: '#/components/schemas/Case3rdPartyTicketStatus' - readOnly: true - type: object - JiraIssueResult: - description: Jira issue information - properties: - issue_id: - description: Jira issue ID - type: string - issue_key: - description: Jira issue key - type: string - issue_url: - description: Jira issue URL - type: string - project_key: - description: Jira project key - type: string - type: object - JobCreateResponse: - description: Run a historical job response. - properties: - data: - $ref: '#/components/schemas/JobCreateResponseData' - type: object - JobCreateResponseData: - description: The definition of `JobCreateResponseData` object. - properties: - id: - description: ID of the created job. - type: string - type: - $ref: '#/components/schemas/HistoricalJobDataType' - type: object - JobDefinition: - description: Definition of a historical job. - properties: - calculatedFields: - description: Calculated fields. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases used for generating job results. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - from: - description: Starting time of data analyzed by the job. - example: 1729843470000 - format: int64 - type: integer - groupSignalsBy: - description: Additional grouping to perform on top of the existing groups - in the query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - index: - description: Index used to load the data. - example: cloud_siem - type: string - message: - description: Message for generated results. - example: A large number of failed login attempts. - type: string - name: - description: Job name. - example: Excessive number of failed attempts. - type: string - options: - $ref: '#/components/schemas/HistoricalJobOptions' - queries: - description: Queries for selecting logs analyzed by the job. - items: - $ref: '#/components/schemas/HistoricalJobQuery' - type: array - referenceTables: - description: Reference tables used in the queries. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - tags: - description: Tags for generated signals. - items: - type: string - type: array - thirdPartyCases: - description: Cases for generating results from third-party detection method. - Only available for third-party detection method. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - to: - description: Ending time of data analyzed by the job. - example: 1729847070000 - format: int64 - type: integer - type: - description: Job type. - type: string - required: - - from - - to - - index - - name - - cases - - queries - - message - type: object - JobDefinitionFromRule: - description: Definition of a historical job based on a security monitoring rule. - properties: - from: - description: Starting time of data analyzed by the job. - example: 1729843470000 - format: int64 - type: integer - id: - description: ID of the detection rule used to create the job. - example: abc-def-ghi - type: string - index: - description: Index used to load the data. - example: cloud_siem - type: string - notifications: - description: Notifications sent when the job is completed. - example: - - '@sns-cloudtrail-results' - items: - type: string - type: array - to: - description: Ending time of data analyzed by the job. - example: 1729847070000 - format: int64 - type: integer - required: - - id - - from - - to - - index - type: object - KindAttributes: - description: Kind attributes. - properties: - description: - description: Short description of the kind. - type: string - displayName: - description: User friendly name of the kind. - type: string - name: - description: The kind name. - example: my-job - minLength: 1 - type: string - type: object - KindData: - description: Schema that defines the structure of a Kind object in the Software - Catalog. - properties: - attributes: - $ref: '#/components/schemas/KindAttributes' - id: - description: A read-only globally unique identifier for the entity generated - by Datadog. User supplied values are ignored. - example: 4b163705-23c0-4573-b2fb-f6cea2163fcb - minLength: 1 - type: string - meta: - $ref: '#/components/schemas/KindMetadata' - type: - description: Kind. - type: string - type: object - KindMetadata: - description: Kind metadata. - properties: - createdAt: - description: The creation time. - type: string - modifiedAt: - description: The modification time. - type: string - type: object - KindObj: - description: Schema for kind. - properties: - description: - description: Short description of the kind. - type: string - displayName: - description: The display name of the kind. Automatically generated if not - provided. - type: string - kind: - description: The name of the kind to create or update. This must be in kebab-case - format. - example: my-job - type: string - required: - - kind - type: object - KindRaw: - description: Kind definition in raw JSON or YAML representation. - example: 'kind: service - - displayName: Service - - description: A service entity in the catalog. - - ' - type: string - KindResponseData: - description: List of kind responses. - items: - $ref: '#/components/schemas/KindData' - type: array - KindResponseMeta: - description: Kind response metadata. - properties: - count: - description: Total kinds count. - format: int64 - type: integer - type: object - LaunchDarklyAPIKey: - description: The definition of the `LaunchDarklyAPIKey` object. - properties: - api_token: - description: The `LaunchDarklyAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/LaunchDarklyAPIKeyType' - required: - - type - - api_token - type: object - LaunchDarklyAPIKeyType: - description: The definition of the `LaunchDarklyAPIKey` object. - enum: - - LaunchDarklyAPIKey - example: LaunchDarklyAPIKey - type: string - x-enum-varnames: - - LAUNCHDARKLYAPIKEY - LaunchDarklyAPIKeyUpdate: - description: The definition of the `LaunchDarklyAPIKey` object. - properties: - api_token: - description: The `LaunchDarklyAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/LaunchDarklyAPIKeyType' - required: - - type - type: object - LaunchDarklyCredentials: - description: The definition of the `LaunchDarklyCredentials` object. - oneOf: - - $ref: '#/components/schemas/LaunchDarklyAPIKey' - LaunchDarklyCredentialsUpdate: - description: The definition of the `LaunchDarklyCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/LaunchDarklyAPIKeyUpdate' - LaunchDarklyIntegration: - description: The definition of the `LaunchDarklyIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/LaunchDarklyCredentials' - type: - $ref: '#/components/schemas/LaunchDarklyIntegrationType' - required: - - type - - credentials - type: object - LaunchDarklyIntegrationType: - description: The definition of the `LaunchDarklyIntegrationType` object. - enum: - - LaunchDarkly - example: LaunchDarkly - type: string - x-enum-varnames: - - LAUNCHDARKLY - LaunchDarklyIntegrationUpdate: - description: The definition of the `LaunchDarklyIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/LaunchDarklyCredentialsUpdate' - type: - $ref: '#/components/schemas/LaunchDarklyIntegrationType' - required: - - type - type: object - Layer: - description: Encapsulates a layer resource, holding attributes like rotation - details, plus relationships to the members covering that layer. - properties: - attributes: - $ref: '#/components/schemas/LayerAttributes' - id: - description: A unique identifier for this layer. - type: string - relationships: - $ref: '#/components/schemas/LayerRelationships' - type: - $ref: '#/components/schemas/LayerType' - required: - - type - type: object - LayerAttributes: - description: Describes key properties of a Layer, including rotation details, - name, start/end times, and any restrictions. - properties: - effective_date: - description: When the layer becomes active (ISO 8601). - format: date-time - type: string - end_date: - description: When the layer ceases to be active (ISO 8601). - format: date-time - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - name: - description: The name of this layer. - example: Weekend Layer - type: string - restrictions: - description: An optional list of time restrictions for when this layer is - in effect. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time when the rotation starts (ISO 8601). - format: date-time - type: string - type: object - LayerAttributesInterval: - description: Defines how often the rotation repeats, using a combination of - days and optional seconds. Should be at least 1 hour. - properties: - days: - description: The number of days in each rotation cycle. - example: 1 - format: int32 - maximum: 400 - type: integer - seconds: - description: Any additional seconds for the rotation cycle (up to 30 days). - example: 300 - format: int64 - maximum: 2592000 - type: integer - type: object - LayerRelationships: - description: Holds references to objects related to the Layer entity, such as - its members. - properties: - members: - $ref: '#/components/schemas/LayerRelationshipsMembers' - type: object - LayerRelationshipsMembers: - description: Holds an array of references to the members of a Layer, each containing - member IDs. - properties: - data: - description: The list of members who belong to this layer. - items: - $ref: '#/components/schemas/LayerRelationshipsMembersDataItems' - type: array - type: object - LayerRelationshipsMembersDataItems: - description: 'Represents a single member object in a layer''s `members` array, - referencing - - a unique Datadog user ID.' - properties: - id: - description: The unique user ID of the layer member. - example: 00000000-0000-0000-0000-000000000002 - type: string - type: - $ref: '#/components/schemas/LayerRelationshipsMembersDataItemsType' - required: - - type - - id - type: object - LayerRelationshipsMembersDataItemsType: - default: members - description: Members resource type. - enum: - - members - example: members - type: string - x-enum-varnames: - - MEMBERS - LayerType: - default: layers - description: Layers resource type. - enum: - - layers - example: layers - type: string - x-enum-varnames: - - LAYERS - LeakedKey: - description: The definition of LeakedKey object. - properties: - attributes: - $ref: '#/components/schemas/LeakedKeyAttributes' - id: - description: The LeakedKey id. - example: id - type: string - type: - $ref: '#/components/schemas/LeakedKeyType' - required: - - attributes - - id - - type - type: object - LeakedKeyAttributes: - description: The definition of LeakedKeyAttributes object. - properties: - date: - description: The LeakedKeyAttributes date. - example: '2017-07-21T17:32:28Z' - format: date-time - type: string - leak_source: - description: The LeakedKeyAttributes leak_source. - type: string - required: - - date - type: object - LeakedKeyType: - default: leaked_keys - description: The definition of LeakedKeyType object. - enum: - - leaked_keys - example: leaked_keys - type: string - x-enum-varnames: - - LEAKED_KEYS - Library: - description: Vulnerability library. - properties: - name: - description: Vulnerability library name. - example: linux-aws-5.15 - type: string - version: - description: Vulnerability library version. - example: 5.15.0 - type: string - required: - - name - type: object - Links: - description: The JSON:API links related to pagination. - properties: - first: - description: First page link. - example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=1&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - last: - description: Last page link. - example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=15&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - next: - description: Next page link. - example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=16&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - previous: - description: Previous page link. - example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=14&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - self: - description: Request link. - example: https://api.datadoghq.com/api/v2/security/vulnerabilities?filter%5Btool%5D=Infra - type: string - required: - - self - - first - - last - type: object - ListAPIsResponse: - description: Response for `ListAPIs`. - properties: - data: - description: List of API items. - items: - $ref: '#/components/schemas/ListAPIsResponseData' - type: array - meta: - $ref: '#/components/schemas/ListAPIsResponseMeta' - type: object - ListAPIsResponseData: - description: Data envelope for `ListAPIsResponse`. - properties: - attributes: - $ref: '#/components/schemas/ListAPIsResponseDataAttributes' - id: - $ref: '#/components/schemas/ApiID' - type: object - ListAPIsResponseDataAttributes: - description: Attributes for `ListAPIsResponseData`. - properties: - name: - description: API name. - example: Payments API - type: string - type: object - ListAPIsResponseMeta: - description: Metadata for `ListAPIsResponse`. - properties: - pagination: - $ref: '#/components/schemas/ListAPIsResponseMetaPagination' - type: object - ListAPIsResponseMetaPagination: - description: Pagination metadata information for `ListAPIsResponse`. - properties: - limit: - description: Number of items in the current page. - example: 20 - format: int64 - type: integer - offset: - description: Offset for pagination. - example: 0 - format: int64 - type: integer - total_count: - description: Total number of items. - example: 35 - format: int64 - type: integer - type: object - ListAppKeyRegistrationsResponse: - description: A paginated list of app key registrations. - properties: - data: - description: An array of app key registrations. - items: - $ref: '#/components/schemas/AppKeyRegistrationData' - type: array - meta: - $ref: '#/components/schemas/ListAppKeyRegistrationsResponseMeta' - type: object - ListAppKeyRegistrationsResponseMeta: - description: The definition of `ListAppKeyRegistrationsResponseMeta` object. - properties: - total: - description: The total number of app key registrations. - example: 1 - format: int64 - type: integer - total_filtered: - description: The total number of app key registrations that match the specified - filters. - example: 1 - format: int64 - type: integer - type: object - ListApplicationKeysResponse: - description: Response for a list of application keys. - properties: - data: - description: Array of application keys. - items: - $ref: '#/components/schemas/PartialApplicationKey' - type: array - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/ApplicationKeyResponseMeta' - type: object - ListAppsResponse: - description: A paginated list of apps matching the specified filters and sorting. - properties: - data: - description: An array of app definitions. - items: - $ref: '#/components/schemas/ListAppsResponseDataItems' - type: array - included: - description: Data on the version of the app that was published. - items: - $ref: '#/components/schemas/Deployment' - type: array - meta: - $ref: '#/components/schemas/ListAppsResponseMeta' - type: object - ListAppsResponseDataItems: - description: An app definition object. This contains only basic information - about the app such as ID, name, and tags. - properties: - attributes: - $ref: '#/components/schemas/ListAppsResponseDataItemsAttributes' - id: - description: The ID of the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - meta: - $ref: '#/components/schemas/AppMeta' - relationships: - $ref: '#/components/schemas/ListAppsResponseDataItemsRelationships' - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - - attributes - type: object - ListAppsResponseDataItemsAttributes: - description: Basic information about the app such as name, description, and - tags. - properties: - description: - description: A human-readable description for the app. - type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean - name: - description: The name of the app. - type: string - selfService: - description: Whether the app is enabled for use in the Datadog self-service - hub. - type: boolean - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - ListAppsResponseDataItemsRelationships: - description: The app's publication information. - properties: - deployment: - $ref: '#/components/schemas/DeploymentRelationship' - type: object - ListAppsResponseMeta: - description: Pagination metadata. - properties: - page: - $ref: '#/components/schemas/ListAppsResponseMetaPage' - type: object - ListAppsResponseMetaPage: - description: Information on the total number of apps, to be used for pagination. - properties: - totalCount: - description: The total number of apps under the Datadog organization, disregarding - any filters applied. - format: int64 - type: integer - totalFilteredCount: - description: The total number of apps that match the specified filters. - format: int64 - type: integer - type: object - ListAssetsSBOMsResponse: - description: The expected response schema when listing assets SBOMs. - properties: - data: - description: List of assets SBOMs. - items: - $ref: '#/components/schemas/SBOM' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data - type: object - ListDevicesResponse: - description: List devices response. - properties: - data: - description: The list devices response data. - items: - $ref: '#/components/schemas/DevicesListData' - type: array - meta: - $ref: '#/components/schemas/ListDevicesResponseMetadata' - type: object - ListDevicesResponseMetadata: - description: Object describing meta attributes of response. - properties: - page: - $ref: '#/components/schemas/ListDevicesResponseMetadataPage' - type: object - ListDevicesResponseMetadataPage: - description: Pagination object. - properties: - total_filtered_count: - description: Total count of devices matched by the filter. - example: 1 - format: int64 - type: integer - type: object - ListDowntimesResponse: - description: Response for retrieving all downtimes. - properties: - data: - description: An array of downtimes. - items: - $ref: '#/components/schemas/DowntimeResponseData' - type: array - included: - description: Array of objects related to the downtimes. - items: - $ref: '#/components/schemas/DowntimeResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/DowntimeMeta' - type: object - ListEntityCatalogResponse: - description: List entity response. - properties: - data: - $ref: '#/components/schemas/EntityResponseData' - included: - $ref: '#/components/schemas/ListEntityCatalogResponseIncluded' - links: - $ref: '#/components/schemas/ListEntityCatalogResponseLinks' - meta: - $ref: '#/components/schemas/EntityResponseMeta' - type: object - ListEntityCatalogResponseIncluded: - description: List entity response included. - items: - $ref: '#/components/schemas/ListEntityCatalogResponseIncludedItem' - type: array - ListEntityCatalogResponseIncludedItem: - description: List entity response included item. - oneOf: - - $ref: '#/components/schemas/EntityResponseIncludedSchema' - - $ref: '#/components/schemas/EntityResponseIncludedRawSchema' - - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntity' - - $ref: '#/components/schemas/EntityResponseIncludedOncall' - - $ref: '#/components/schemas/EntityResponseIncludedIncident' - ListEntityCatalogResponseLinks: - description: List entity response links. - properties: - next: - description: Next link. - type: string - previous: - description: Previous link. - type: string - self: - description: Current link. - type: string - type: object - ListFindingsData: - description: Array of findings. - items: - $ref: '#/components/schemas/Finding' - type: array - ListFindingsMeta: - additionalProperties: false - description: Metadata for pagination. - properties: - page: - $ref: '#/components/schemas/ListFindingsPage' - snapshot_timestamp: - description: The point in time corresponding to the listed findings. - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - type: object - ListFindingsPage: - additionalProperties: false - description: Pagination and findings count information. - properties: - cursor: - description: The cursor used to paginate requests. - example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= - type: string - total_filtered_count: - description: The total count of findings after the filter has been applied. - example: 213 - format: int64 - type: integer - type: object - ListFindingsResponse: - description: The expected response schema when listing findings. - properties: - data: - $ref: '#/components/schemas/ListFindingsData' - meta: - $ref: '#/components/schemas/ListFindingsMeta' - required: - - data - - meta - type: object - ListHistoricalJobsResponse: - description: List of historical jobs. - properties: - data: - description: Array containing the list of historical jobs. - items: - $ref: '#/components/schemas/HistoricalJobResponseData' - type: array - meta: - $ref: '#/components/schemas/HistoricalJobListMeta' - type: object - ListKindCatalogResponse: - description: List kind response. - properties: - data: - $ref: '#/components/schemas/KindResponseData' - meta: - $ref: '#/components/schemas/KindResponseMeta' - type: object - ListPipelinesResponse: - description: Represents the response payload containing a list of pipelines - and associated metadata. - properties: - data: - description: The `schema` `data`. - items: - $ref: '#/components/schemas/ObservabilityPipelineData' - type: array - meta: - $ref: '#/components/schemas/ListPipelinesResponseMeta' - required: - - data - type: object - ListPipelinesResponseMeta: - description: Metadata about the response. - properties: - totalCount: - description: The total number of pipelines. - example: 42 - format: int64 - type: integer - type: object - ListPowerpacksResponse: - description: Response object which includes all powerpack configurations. - properties: - data: - description: List of powerpack definitions. - items: - $ref: '#/components/schemas/PowerpackData' - type: array - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/User' - type: array - links: - $ref: '#/components/schemas/PowerpackResponseLinks' - meta: - $ref: '#/components/schemas/PowerpacksResponseMeta' - type: object - ListRelationCatalogResponse: - description: List entity relation response. - properties: - data: - $ref: '#/components/schemas/RelationResponseData' - included: - $ref: '#/components/schemas/ListRelationCatalogResponseIncluded' - links: - $ref: '#/components/schemas/ListRelationCatalogResponseLinks' - meta: - $ref: '#/components/schemas/RelationResponseMeta' - type: object - ListRelationCatalogResponseIncluded: - description: List relation response included entities. - items: - $ref: '#/components/schemas/EntityData' - type: array - ListRelationCatalogResponseLinks: - description: List relation response links. - properties: - next: - description: Next link. - example: /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=2 - type: string - previous: - description: Previous link. - type: string - self: - description: Current link. - example: /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=0 - type: string - type: object - ListRulesResponse: - description: Scorecard rules response. - properties: - data: - $ref: '#/components/schemas/ListRulesResponseData' - links: - $ref: '#/components/schemas/ListRulesResponseLinks' - type: object - ListRulesResponseData: - description: Array of rule details. - items: - $ref: '#/components/schemas/ListRulesResponseDataItem' - type: array - ListRulesResponseDataItem: - description: Rule details. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - relationships: - $ref: '#/components/schemas/RelationshipToRule' - type: - $ref: '#/components/schemas/RuleType' - type: object - ListRulesResponseLinks: - description: Links attributes. - properties: - next: - description: Link for the next set of rules. - example: /api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2 - type: string - type: object - ListTagsResponse: - description: List tags response. - properties: - data: - $ref: '#/components/schemas/ListTagsResponseData' - type: object - ListTagsResponseData: - description: The list tags response data. - properties: - attributes: - $ref: '#/components/schemas/ListTagsResponseDataAttributes' - id: - description: The device ID - example: example:1.2.3.4 - type: string - type: - description: The type of the resource. The value should always be tags. - type: string - type: object - ListTagsResponseDataAttributes: - description: The definition of ListTagsResponseDataAttributes object. - properties: - tags: - description: The list of tags - example: - - tag:test - - tag:testbis - items: - type: string - type: array - type: object - ListTeamsInclude: - description: Included related resources optionally requested. - enum: - - team_links - - user_team_permissions - type: string - x-enum-varnames: - - TEAM_LINKS - - USER_TEAM_PERMISSIONS - ListTeamsSort: - description: Specifies the order of the returned teams - enum: - - name - - -name - - user_count - - -user_count - type: string - x-enum-varnames: - - NAME - - _NAME - - USER_COUNT - - _USER_COUNT - ListVulnerabilitiesResponse: - description: The expected response schema when listing vulnerabilities. - properties: - data: - description: List of vulnerabilities. - items: - $ref: '#/components/schemas/Vulnerability' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data - type: object - ListVulnerableAssetsResponse: - description: The expected response schema when listing vulnerable assets. - properties: - data: - description: List of vulnerable assets. - items: - $ref: '#/components/schemas/Asset' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data - type: object - Log: - description: Object description of a log after being processed and stored by - Datadog. - properties: - attributes: - $ref: '#/components/schemas/LogAttributes' - id: - description: Unique ID of the Log. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/LogType' - type: object - LogAttributes: - description: JSON object containing all log attributes and their associated - values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from your log. - example: - customAttribute: 123 - duration: 2345 - type: object - host: - description: Name of the machine from where the logs are being sent. - example: i-0123 - type: string - message: - description: 'The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) - - of your log. By default, Datadog ingests the value of the message attribute - as the body of the log entry. - - That value is then highlighted and displayed in the Logstream, where it - is indexed for full text search.' - example: Host connected to remote - type: string - service: - description: 'The name of the application or service generating the log - events. - - It is used to switch from Logs to APM, so make sure you define the same - - value when you use both products.' - example: agent - type: string - status: - description: Status of the message associated with your log. - example: INFO - type: string - tags: - description: Array of tags associated with your log. - example: - - team:A - items: - description: Tag associated with your log. - type: string - type: array - timestamp: - description: Timestamp of your log. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - LogType: - default: log - description: Type of the event. - enum: - - log - example: log - type: string - x-enum-varnames: - - LOG - LogsAggregateBucket: - description: A bucket values - properties: - by: - additionalProperties: - description: The values for each group by - description: The key, value pairs for each group by - example: - '@state': success - '@version': abc - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/LogsAggregateBucketValue' - description: A map of the metric name -> value for regular compute or list - of values for a timeseries - type: object - type: object - LogsAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value - oneOf: - - $ref: '#/components/schemas/LogsAggregateBucketValueSingleString' - - $ref: '#/components/schemas/LogsAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/LogsAggregateBucketValueTimeseries' - LogsAggregateBucketValueSingleNumber: - description: A single number value - format: double - type: number - LogsAggregateBucketValueSingleString: - description: A single string value - type: string - LogsAggregateBucketValueTimeseries: - description: A timeseries array - items: - $ref: '#/components/schemas/LogsAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - LogsAggregateBucketValueTimeseriesPoint: - description: A timeseries point - properties: - time: - description: The time value for this point - example: '2020-06-08T11:55:00Z' - type: string - value: - description: The value for this point - example: 19 - format: double - type: number - type: object - LogsAggregateRequest: - description: The object sent with the request to retrieve a list of logs from - your organization. - properties: - compute: - description: The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/LogsCompute' - type: array - filter: - $ref: '#/components/schemas/LogsQueryFilter' - group_by: - description: The rules for the group by - items: - $ref: '#/components/schemas/LogsGroupBy' - type: array - options: - $ref: '#/components/schemas/LogsQueryOptions' - page: - $ref: '#/components/schemas/LogsAggregateRequestPage' - type: object - LogsAggregateRequestPage: - description: Paging settings - properties: - cursor: - description: 'The returned paging point to use to get the next results. - Note: at most 1000 results can be paged.' - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - LogsAggregateResponse: - description: The response object for the logs aggregate API endpoint - properties: - data: - $ref: '#/components/schemas/LogsAggregateResponseData' - meta: - $ref: '#/components/schemas/LogsResponseMetadata' - type: object - LogsAggregateResponseData: - description: The query results - properties: - buckets: - description: The list of matching buckets, one item per bucket - items: - $ref: '#/components/schemas/LogsAggregateBucket' - type: array - type: object - LogsAggregateResponseStatus: - description: The status of the response - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - LogsAggregateSort: - description: A sort rule - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/LogsAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`) - example: '@duration' - type: string - order: - $ref: '#/components/schemas/LogsSortOrder' - type: - $ref: '#/components/schemas/LogsAggregateSortType' - type: object - LogsAggregateSortType: - default: alphabetical - description: The type of sorting algorithm - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - LogsAggregationFunction: - description: An aggregation function - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - LogsArchive: - description: The logs archive. - properties: - data: - $ref: '#/components/schemas/LogsArchiveDefinition' - type: object - LogsArchiveAttributes: - description: The attributes associated with the archive. - properties: - destination: - $ref: '#/components/schemas/LogsArchiveDestination' - include_tags: - default: false - description: 'To store the tags in the archive, set the value "true". - - If it is set to "false", the tags will be deleted when the logs are sent - to the archive.' - example: false - type: boolean - name: - description: The archive name. - example: Nginx Archive - type: string - query: - description: The archive query/filter. Logs matching this query are included - in the archive. - example: source:nginx - type: string - rehydration_max_scan_size_in_gb: - description: Maximum scan size for rehydration from this archive. - example: 100 - format: int64 - nullable: true - type: integer - rehydration_tags: - description: An array of tags to add to rehydrated logs from an archive. - example: - - team:intake - - team:app - items: - description: A given tag in the `:` format. - type: string - type: array - state: - $ref: '#/components/schemas/LogsArchiveState' - required: - - name - - query - - destination - type: object - LogsArchiveCreateRequest: - description: The logs archive. - properties: - data: - $ref: '#/components/schemas/LogsArchiveCreateRequestDefinition' - type: object - LogsArchiveCreateRequestAttributes: - description: The attributes associated with the archive. - properties: - destination: - $ref: '#/components/schemas/LogsArchiveCreateRequestDestination' - include_tags: - default: false - description: 'To store the tags in the archive, set the value "true". - - If it is set to "false", the tags will be deleted when the logs are sent - to the archive.' - example: false - type: boolean - name: - description: The archive name. - example: Nginx Archive - type: string - query: - description: The archive query/filter. Logs matching this query are included - in the archive. - example: source:nginx - type: string - rehydration_max_scan_size_in_gb: - description: Maximum scan size for rehydration from this archive. - example: 100 - format: int64 - nullable: true - type: integer - rehydration_tags: - description: An array of tags to add to rehydrated logs from an archive. - example: - - team:intake - - team:app - items: - description: A given tag in the `:` format. - type: string - type: array - required: - - name - - query - - destination - type: object - LogsArchiveCreateRequestDefinition: - description: The definition of an archive. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveCreateRequestAttributes' - type: - default: archives - description: The type of the resource. The value should always be archives. - example: archives - type: string - required: - - type - type: object - LogsArchiveCreateRequestDestination: - description: An archive's destination. - oneOf: - - $ref: '#/components/schemas/LogsArchiveDestinationAzure' - - $ref: '#/components/schemas/LogsArchiveDestinationGCS' - - $ref: '#/components/schemas/LogsArchiveDestinationS3' - LogsArchiveDefinition: - description: The definition of an archive. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveAttributes' - id: - description: The archive ID. - example: a2zcMylnM4OCHpYusxIi3g - readOnly: true - type: string - type: - default: archives - description: The type of the resource. The value should always be archives. - example: archives - readOnly: true - type: string - required: - - type - type: object - LogsArchiveDestination: - description: An archive's destination. - nullable: true - oneOf: - - $ref: '#/components/schemas/LogsArchiveDestinationAzure' - - $ref: '#/components/schemas/LogsArchiveDestinationGCS' - - $ref: '#/components/schemas/LogsArchiveDestinationS3' - type: object - LogsArchiveDestinationAzure: - description: The Azure archive destination. - properties: - container: - description: The container where the archive will be stored. - example: container-name - type: string - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationAzure' - path: - description: The archive path. - type: string - region: - description: The region where the archive will be stored. - type: string - storage_account: - description: The associated storage account. - example: account-name - type: string - type: - $ref: '#/components/schemas/LogsArchiveDestinationAzureType' - required: - - storage_account - - container - - integration - - type - type: object - LogsArchiveDestinationAzureType: - default: azure - description: Type of the Azure archive destination. - enum: - - azure - example: azure - type: string - x-enum-varnames: - - AZURE - LogsArchiveDestinationGCS: - description: The GCS archive destination. - properties: - bucket: - description: The bucket where the archive will be stored. - example: bucket-name - type: string - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationGCS' - path: - description: The archive path. - type: string - type: - $ref: '#/components/schemas/LogsArchiveDestinationGCSType' - required: - - bucket - - integration - - type - type: object - LogsArchiveDestinationGCSType: - default: gcs - description: Type of the GCS archive destination. - enum: - - gcs - example: gcs - type: string - x-enum-varnames: - - GCS - LogsArchiveDestinationS3: - description: The S3 archive destination. - properties: - bucket: - description: The bucket where the archive will be stored. - example: bucket-name - type: string - encryption: - $ref: '#/components/schemas/LogsArchiveEncryptionS3' - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationS3' - path: - description: The archive path. - type: string - storage_class: - $ref: '#/components/schemas/LogsArchiveStorageClassS3Type' - type: - $ref: '#/components/schemas/LogsArchiveDestinationS3Type' - required: - - bucket - - integration - - type - type: object - LogsArchiveDestinationS3Type: - default: s3 - description: Type of the S3 archive destination. - enum: - - s3 - example: s3 - type: string - x-enum-varnames: - - S3 - LogsArchiveEncryptionS3: - description: The S3 encryption settings. - properties: - key: - description: An Amazon Resource Name (ARN) used to identify an AWS KMS key. - example: arn:aws:kms:us-east-1:012345678901:key/DatadogIntegrationRoleKms - type: string - type: - $ref: '#/components/schemas/LogsArchiveEncryptionS3Type' - required: - - type - type: object - LogsArchiveEncryptionS3Type: - description: Type of S3 encryption for a destination. - enum: - - NO_OVERRIDE - - SSE_S3 - - SSE_KMS - example: SSE_S3 - type: string - x-enum-varnames: - - NO_OVERRIDE - - SSE_S3 - - SSE_KMS - LogsArchiveIntegrationAzure: - description: The Azure archive's integration destination. - properties: - client_id: - description: A client ID. - example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa - type: string - tenant_id: - description: A tenant ID. - example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa - type: string - required: - - tenant_id - - client_id - type: object - LogsArchiveIntegrationGCS: - description: The GCS archive's integration destination. - properties: - client_email: - description: A client email. - example: youremail@example.com - type: string - project_id: - description: A project ID. - example: project-id - type: string - required: - - client_email - type: object - LogsArchiveIntegrationS3: - description: The S3 Archive's integration destination. - properties: - account_id: - description: The account ID for the integration. - example: '123456789012' - type: string - role_name: - description: The path of the integration. - example: role-name - type: string - required: - - role_name - - account_id - type: object - LogsArchiveOrder: - description: A ordered list of archive IDs. - properties: - data: - $ref: '#/components/schemas/LogsArchiveOrderDefinition' - type: object - LogsArchiveOrderAttributes: - description: The attributes associated with the archive order. - properties: - archive_ids: - description: 'An ordered array of `` strings, the order of archive - IDs in the array - - define the overall archives order for Datadog.' - example: - - a2zcMylnM4OCHpYusxIi1g - - a2zcMylnM4OCHpYusxIi2g - - a2zcMylnM4OCHpYusxIi3g - items: - description: A given archive ID. - type: string - type: array - required: - - archive_ids - type: object - LogsArchiveOrderDefinition: - description: The definition of an archive order. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveOrderAttributes' - type: - $ref: '#/components/schemas/LogsArchiveOrderDefinitionType' - required: - - type - - attributes - type: object - LogsArchiveOrderDefinitionType: - default: archive_order - description: Type of the archive order definition. - enum: - - archive_order - example: archive_order - type: string - x-enum-varnames: - - ARCHIVE_ORDER - LogsArchiveState: - description: The state of the archive. - enum: - - UNKNOWN - - WORKING - - FAILING - - WORKING_AUTH_LEGACY - example: WORKING - type: string - x-enum-varnames: - - UNKNOWN - - WORKING - - FAILING - - WORKING_AUTH_LEGACY - LogsArchiveStorageClassS3Type: - default: STANDARD - description: The storage class where the archive will be stored. - enum: - - STANDARD - - STANDARD_IA - - ONEZONE_IA - - INTELLIGENT_TIERING - - GLACIER_IR - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - STANDARD_IA - - ONEZONE_IA - - INTELLIGENT_TIERING - - GLACIER_IR - LogsArchives: - description: The available archives. - properties: - data: - description: A list of archives. - items: - $ref: '#/components/schemas/LogsArchiveDefinition' - type: array - type: object - LogsCompute: - description: A compute rule to compute metrics or timeseries - properties: - aggregation: - $ref: '#/components/schemas/LogsAggregationFunction' - interval: - description: 'The time buckets'' size (only used for type=timeseries) - - Defaults to a resolution of 150 points' - example: 5m - type: string - metric: - description: The metric to use - example: '@duration' - type: string - type: - $ref: '#/components/schemas/LogsComputeType' - required: - - aggregation - type: object - LogsComputeType: - default: total - description: The type of compute - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - LogsGroupBy: - description: A group by rule - properties: - facet: - description: The name of the facet to use (required) - example: host - type: string - histogram: - $ref: '#/components/schemas/LogsGroupByHistogram' - limit: - default: 10 - description: 'The maximum buckets to return for this group by. Note: at - most 10000 buckets are allowed. - - If grouping by multiple facets, the product of limits must not exceed - 10000.' - format: int64 - type: integer - missing: - $ref: '#/components/schemas/LogsGroupByMissing' - sort: - $ref: '#/components/schemas/LogsAggregateSort' - total: - $ref: '#/components/schemas/LogsGroupByTotal' - required: - - facet - type: object - LogsGroupByHistogram: - description: 'Used to perform a histogram computation (only for measure facets). - - Note: at most 100 buckets are allowed, the number of buckets is (max - min)/interval.' - properties: - interval: - description: The bin size of the histogram buckets - example: 10 - format: double - type: number - max: - description: 'The maximum value for the measure used in the histogram - - (values greater than this one are filtered out)' - example: 100 - format: double - type: number - min: - description: 'The minimum value for the measure used in the histogram - - (values smaller than this one are filtered out)' - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - LogsGroupByMissing: - description: The value to use for logs that don't have the facet used to group - by - oneOf: - - $ref: '#/components/schemas/LogsGroupByMissingString' - - $ref: '#/components/schemas/LogsGroupByMissingNumber' - LogsGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - LogsGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - LogsGroupByTotal: - default: false - description: A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/LogsGroupByTotalBoolean' - - $ref: '#/components/schemas/LogsGroupByTotalString' - - $ref: '#/components/schemas/LogsGroupByTotalNumber' - LogsGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total" - type: boolean - LogsGroupByTotalNumber: - description: A number to use as the key value for the total bucket - format: double - type: number - LogsGroupByTotalString: - description: A string to use as the key value for the total bucket - type: string - LogsListRequest: - description: The request for a logs list. - properties: - filter: - $ref: '#/components/schemas/LogsQueryFilter' - options: - $ref: '#/components/schemas/LogsQueryOptions' - page: - $ref: '#/components/schemas/LogsListRequestPage' - sort: - $ref: '#/components/schemas/LogsSort' - type: object - LogsListRequestPage: - description: Paging attributes for listing logs. - properties: - cursor: - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of logs in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - LogsListResponse: - description: Response object with all logs matching the request and pagination - information. - properties: - data: - description: Array of logs matching the request. - items: - $ref: '#/components/schemas/Log' - type: array - links: - $ref: '#/components/schemas/LogsListResponseLinks' - meta: - $ref: '#/components/schemas/LogsResponseMetadata' - type: object - LogsListResponseLinks: - description: Links attributes. - properties: - next: - description: 'Link for the next set of results. Note that the request can - also be made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/logs/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - LogsMetricCompute: - description: The compute rule to compute the log-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/LogsMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - path: - description: The path to the value the log-based metric will aggregate on - (only used if the aggregation type is a "distribution"). - example: '@duration' - type: string - required: - - aggregation_type - type: object - LogsMetricComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - LogsMetricComputeIncludePercentiles: - description: 'Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when the `aggregation_type` is `distribution`.' - example: true - type: boolean - LogsMetricCreateAttributes: - description: The object describing the Datadog log-based metric to create. - properties: - compute: - $ref: '#/components/schemas/LogsMetricCompute' - filter: - $ref: '#/components/schemas/LogsMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricGroupBy' - type: array - required: - - compute - type: object - LogsMetricCreateData: - description: The new log-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/LogsMetricCreateAttributes' - id: - $ref: '#/components/schemas/LogsMetricID' - type: - $ref: '#/components/schemas/LogsMetricType' - required: - - id - - type - - attributes - type: object - LogsMetricCreateRequest: - description: The new log-based metric body. - properties: - data: - $ref: '#/components/schemas/LogsMetricCreateData' - required: - - data - type: object - LogsMetricFilter: - description: The log-based metric filter. Logs matching this filter will be - aggregated in this metric. - properties: - query: - default: '*' - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - type: object - LogsMetricGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the log-based metric will be aggregated - over. - example: '@http.status_code' - type: string - tag_name: - description: Eventual name of the tag that gets created. By default, the - path attribute is used as the tag name. - example: status_code - type: string - required: - - path - type: object - LogsMetricID: - description: The name of the log-based metric. - example: logs.page.load.count - type: string - LogsMetricResponse: - description: The log-based metric object. - properties: - data: - $ref: '#/components/schemas/LogsMetricResponseData' - type: object - LogsMetricResponseAttributes: - description: The object describing a Datadog log-based metric. - properties: - compute: - $ref: '#/components/schemas/LogsMetricResponseCompute' - filter: - $ref: '#/components/schemas/LogsMetricResponseFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricResponseGroupBy' - type: array - type: object - LogsMetricResponseCompute: - description: The compute rule to compute the log-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/LogsMetricResponseComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - path: - description: The path to the value the log-based metric will aggregate on - (only used if the aggregation type is a "distribution"). - example: '@duration' - type: string - type: object - LogsMetricResponseComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - LogsMetricResponseData: - description: The log-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/LogsMetricResponseAttributes' - id: - $ref: '#/components/schemas/LogsMetricID' - type: - $ref: '#/components/schemas/LogsMetricType' - type: object - LogsMetricResponseFilter: - description: The log-based metric filter. Logs matching this filter will be - aggregated in this metric. - properties: - query: - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - type: object - LogsMetricResponseGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the log-based metric will be aggregated - over. - example: '@http.status_code' - type: string - tag_name: - description: Eventual name of the tag that gets created. By default, the - path attribute is used as the tag name. - example: status_code - type: string - type: object - LogsMetricType: - default: logs_metrics - description: The type of the resource. The value should always be logs_metrics. - enum: - - logs_metrics - example: logs_metrics - type: string - x-enum-varnames: - - LOGS_METRICS - LogsMetricUpdateAttributes: - description: The log-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/LogsMetricUpdateCompute' - filter: - $ref: '#/components/schemas/LogsMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricGroupBy' - type: array - type: object - LogsMetricUpdateCompute: - description: The compute rule to compute the log-based metric. - properties: - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - type: object - LogsMetricUpdateData: - description: The new log-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/LogsMetricUpdateAttributes' - type: - $ref: '#/components/schemas/LogsMetricType' - required: - - type - - attributes - type: object - LogsMetricUpdateRequest: - description: The new log-based metric body. - properties: - data: - $ref: '#/components/schemas/LogsMetricUpdateData' - required: - - data - type: object - LogsMetricsResponse: - description: All the available log-based metric objects. - properties: - data: - description: A list of log-based metric objects. - items: - $ref: '#/components/schemas/LogsMetricResponseData' - type: array - type: object - LogsQueryFilter: - description: The search and filter query settings - properties: - from: - default: now-15m - description: The minimum time for the requested logs, supports date math - and regular timestamps (milliseconds). - example: now-15m - type: string - indexes: - default: - - '*' - description: For customers with multiple indexes, the indexes to search. - Defaults to ['*'] which means all indexes. - example: - - main - - web - items: - description: The name of a log index. - type: string - type: array - query: - default: '*' - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - storage_tier: - $ref: '#/components/schemas/LogsStorageTier' - to: - default: now - description: The maximum time for the requested logs, supports date math - and regular timestamps (milliseconds). - example: now - type: string - type: object - LogsQueryOptions: - deprecated: true - description: 'Global query options that are used during the query. - - Note: These fields are currently deprecated and do not affect the query results.' - properties: - timeOffset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: The timezone can be specified as GMT, UTC, an offset from UTC - (like UTC+1), or as a Timezone Database identifier (like America/New_York). - example: GMT - type: string - type: object - LogsResponseMetadata: - description: The metadata associated with a request - properties: - elapsed: - description: The time elapsed in milliseconds - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/LogsResponseMetadataPage' - request_id: - description: The identifier of the request - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/LogsAggregateResponseStatus' - warnings: - description: 'A list of warnings (non fatal errors) encountered, partial - results might be returned if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/LogsWarning' - type: array - type: object - LogsResponseMetadataPage: - description: Paging attributes. - properties: - after: - description: 'The cursor to use to get the next results, if any. To make - the next request, use the same - - parameters with the addition of the `page[cursor]`.' - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - LogsSort: - description: Sort parameters when querying logs. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - LogsSortOrder: - description: The order to use, ascending or descending - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - LogsStorageTier: - default: indexes - description: Specifies storage type as indexes, online-archives or flex - enum: - - indexes - - online-archives - - flex - example: indexes - type: string - x-enum-varnames: - - INDEXES - - ONLINE_ARCHIVES - - FLEX - LogsWarning: - description: A warning message indicating something that went wrong with the - query - properties: - code: - description: A unique code for this type of warning - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning - example: One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - MSTeamsIntegrationMetadata: - description: Incident integration metadata for the Microsoft Teams integration. - properties: - teams: - description: Array of Microsoft Teams in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/MSTeamsIntegrationMetadataTeamsItem' - type: array - required: - - teams - type: object - MSTeamsIntegrationMetadataTeamsItem: - description: Item in the Microsoft Teams integration metadata teams array. - properties: - ms_channel_id: - description: Microsoft Teams channel ID. - example: 19:abc00abcdef00a0abcdef0abcdef0a@thread.tacv2 - type: string - ms_channel_name: - description: Microsoft Teams channel name. - example: incident-0001-example - type: string - ms_tenant_id: - description: Microsoft Teams tenant ID. - example: 00000000-abcd-0005-0000-000000000000 - type: string - redirect_url: - description: URL redirecting to the Microsoft Teams channel. - example: https://teams.microsoft.com/l/channel/19%3Aabc00abcdef00a0abcdef0abcdef0a%40thread.tacv2/conversations?groupId=12345678-abcd-dcba-abcd-1234567890ab&tenantId=00000000-abcd-0005-0000-000000000000 - type: string - required: - - ms_tenant_id - - ms_channel_id - - ms_channel_name - - redirect_url - type: object - MemberTeam: - description: A member team - properties: - id: - description: The member team's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/MemberTeamType' - required: - - id - - type - type: object - MemberTeamType: - default: member_teams - description: Member team type - enum: - - member_teams - example: member_teams - type: string - x-enum-varnames: - - MEMBER_TEAMS - Metadata: - description: The metadata related to this request. - properties: - count: - description: Number of entities included in the response. - example: 150 - format: int64 - type: integer - token: - description: The token that identifies the request. - example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - total: - description: Total number of entities across all pages. - example: 152431 - format: int64 - type: integer - required: - - count - - total - - token - type: object - Metric: - description: Object for a single metric tag configuration. - example: - id: metric.foo.bar - type: metrics - properties: - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricType' - type: object - MetricActiveConfigurationType: - default: actively_queried_configurations - description: The metric actively queried configuration resource type. - enum: - - actively_queried_configurations - example: actively_queried_configurations - type: string - x-enum-varnames: - - ACTIVELY_QUERIED_CONFIGURATIONS - MetricAllTags: - description: Object for a single metric's indexed tags. - properties: - attributes: - $ref: '#/components/schemas/MetricAllTagsAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricType' - type: object - MetricAllTagsAttributes: - description: Object containing the definition of a metric's tags. - properties: - tags: - description: List of indexed tag value pairs. - example: - - sport:golf - - sport:football - - animal:dog - items: - description: Tag key-value pairs. - type: string - type: array - type: object - MetricAllTagsResponse: - description: Response object that includes a single metric's indexed tags. - properties: - data: - $ref: '#/components/schemas/MetricAllTags' - readOnly: true - type: object - MetricAssetAttributes: - description: Assets related to the object, including title, url, and tags. - properties: - tags: - description: List of tag keys used in the asset. - example: - - env - - service - - host - - datacenter - items: - description: Tag key used in assets. - type: string - type: array - title: - description: Title of the asset. - type: string - url: - description: URL path of the asset. - type: string - type: object - MetricAssetDashboardRelationship: - description: An object of type `dashboard` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricDashboardID' - type: - $ref: '#/components/schemas/MetricDashboardType' - type: object - MetricAssetDashboardRelationships: - description: An object containing the list of dashboards that can be referenced - in the `included` data. - properties: - data: - description: A list of dashboards that can be referenced in the `included` - data. - items: - $ref: '#/components/schemas/MetricAssetDashboardRelationship' - type: array - type: object - MetricAssetMonitorRelationship: - description: An object of type `monitor` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricMonitorID' - type: - $ref: '#/components/schemas/MetricMonitorType' - type: object - MetricAssetMonitorRelationships: - description: A object containing the list of monitors that can be referenced - in the `included` data. - properties: - data: - description: A list of monitors that can be referenced in the `included` - data. - items: - $ref: '#/components/schemas/MetricAssetMonitorRelationship' - type: array - type: object - MetricAssetNotebookRelationship: - description: An object of type `notebook` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricNotebookID' - type: - $ref: '#/components/schemas/MetricNotebookType' - type: object - MetricAssetNotebookRelationships: - description: An object containing the list of notebooks that can be referenced - in the `included` data. - properties: - data: - description: A list of notebooks that can be referenced in the `included` - data. - items: - $ref: '#/components/schemas/MetricAssetNotebookRelationship' - type: array - type: object - MetricAssetResponseData: - description: Metric assets response data. - properties: - id: - $ref: '#/components/schemas/MetricName' - relationships: - $ref: '#/components/schemas/MetricAssetResponseRelationships' - type: - $ref: '#/components/schemas/MetricType' - required: - - id - - type - type: object - MetricAssetResponseIncluded: - description: List of included assets with full set of attributes. - oneOf: - - $ref: '#/components/schemas/MetricDashboardAsset' - - $ref: '#/components/schemas/MetricMonitorAsset' - - $ref: '#/components/schemas/MetricNotebookAsset' - - $ref: '#/components/schemas/MetricSLOAsset' - MetricAssetResponseRelationships: - description: Relationships to assets related to the metric. - properties: - dashboards: - $ref: '#/components/schemas/MetricAssetDashboardRelationships' - monitors: - $ref: '#/components/schemas/MetricAssetMonitorRelationships' - notebooks: - $ref: '#/components/schemas/MetricAssetNotebookRelationships' - slos: - $ref: '#/components/schemas/MetricAssetSLORelationships' - type: object - MetricAssetSLORelationship: - description: An object of type `slos` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricSLOID' - type: - $ref: '#/components/schemas/MetricSLOType' - type: object - MetricAssetSLORelationships: - description: An object containing a list of SLOs that can be referenced in the - `included` data. - properties: - data: - description: A list of SLOs that can be referenced in the `included` data. - items: - $ref: '#/components/schemas/MetricAssetSLORelationship' - type: array - type: object - MetricAssetsResponse: - description: Response object that includes related dashboards, monitors, notebooks, - and SLOs. - properties: - data: - $ref: '#/components/schemas/MetricAssetResponseData' - included: - description: Array of objects related to the metric assets. - items: - $ref: '#/components/schemas/MetricAssetResponseIncluded' - type: array - type: object - MetricBulkConfigureTagsType: - default: metric_bulk_configure_tags - description: The metric bulk configure tags resource. - enum: - - metric_bulk_configure_tags - example: metric_bulk_configure_tags - type: string - x-enum-varnames: - - BULK_MANAGE_TAGS - MetricBulkTagConfigCreate: - description: Request object to bulk configure tags for metrics matching the - given prefix. - properties: - attributes: - $ref: '#/components/schemas/MetricBulkTagConfigCreateAttributes' - id: - $ref: '#/components/schemas/MetricBulkTagConfigNamePrefix' - type: - $ref: '#/components/schemas/MetricBulkConfigureTagsType' - required: - - id - - type - type: object - MetricBulkTagConfigCreateAttributes: - description: Optional parameters for bulk creating metric tag configurations. - properties: - emails: - $ref: '#/components/schemas/MetricBulkTagConfigEmailList' - exclude_tags_mode: - description: 'When set to true, the configuration will exclude the configured - tags and include any other submitted tags. - - When set to false, the configuration will include the configured tags - and exclude any other submitted tags. - - Defaults to false.' - type: boolean - include_actively_queried_tags_window: - description: 'When provided, all tags that have been actively queried are - - configured (and, therefore, remain queryable) for each metric that - - matches the given prefix. Minimum value is 1 second, and maximum - - value is 7,776,000 seconds (90 days).' - format: double - maximum: 7776000 - minimum: 1 - type: number - override_existing_configurations: - description: 'When set to true, the configuration overrides any existing - - configurations for the given metric with the new set of tags in this - - configuration request. If false, old configurations are kept and - - are merged with the set of tags in this configuration request. - - Defaults to true.' - type: boolean - tags: - $ref: '#/components/schemas/MetricBulkTagConfigTagNameList' - type: object - MetricBulkTagConfigCreateRequest: - description: Wrapper object for a single bulk tag configuration request. - properties: - data: - $ref: '#/components/schemas/MetricBulkTagConfigCreate' - required: - - data - type: object - MetricBulkTagConfigDelete: - description: Request object to bulk delete all tag configurations for metrics - matching the given prefix. - properties: - attributes: - $ref: '#/components/schemas/MetricBulkTagConfigDeleteAttributes' - id: - $ref: '#/components/schemas/MetricBulkTagConfigNamePrefix' - type: - $ref: '#/components/schemas/MetricBulkConfigureTagsType' - required: - - id - - type - type: object - MetricBulkTagConfigDeleteAttributes: - description: Optional parameters for bulk deleting metric tag configurations. - properties: - emails: - $ref: '#/components/schemas/MetricBulkTagConfigEmailList' - type: object - MetricBulkTagConfigDeleteRequest: - description: Wrapper object for a single bulk tag deletion request. - properties: - data: - $ref: '#/components/schemas/MetricBulkTagConfigDelete' - required: - - data - type: object - MetricBulkTagConfigEmailList: - description: A list of account emails to notify when the configuration is applied. - example: - - sue@example.com - - bob@example.com - items: - description: An email address. - type: string - type: array - MetricBulkTagConfigNamePrefix: - description: A text prefix to match against metric names. - example: kafka.lag - type: string - MetricBulkTagConfigResponse: - description: Wrapper for a single bulk tag configuration status response. - properties: - data: - $ref: '#/components/schemas/MetricBulkTagConfigStatus' - type: object - MetricBulkTagConfigStatus: - description: 'The status of a request to bulk configure metric tags. - - It contains the fields from the original request for reference.' - properties: - attributes: - $ref: '#/components/schemas/MetricBulkTagConfigStatusAttributes' - id: - $ref: '#/components/schemas/MetricBulkTagConfigNamePrefix' - type: - $ref: '#/components/schemas/MetricBulkConfigureTagsType' - required: - - id - - type - type: object - MetricBulkTagConfigStatusAttributes: - description: Optional attributes for the status of a bulk tag configuration - request. - properties: - emails: - $ref: '#/components/schemas/MetricBulkTagConfigEmailList' - exclude_tags_mode: - description: 'When set to true, the configuration will exclude the configured - tags and include any other submitted tags. - - When set to false, the configuration will include the configured tags - and exclude any other submitted tags.' - type: boolean - status: - description: The status of the request. - example: Accepted - type: string - tags: - $ref: '#/components/schemas/MetricBulkTagConfigTagNameList' - type: object - MetricBulkTagConfigTagNameList: - description: A list of tag names to apply to the configuration. - example: - - host - - pod_name - - is_shadow - items: - description: A metric tag name. - maxLength: 200 - pattern: ^[A-Za-z][A-Za-z0-9\.\-\_:\/]*$ - type: string - type: array - MetricContentEncoding: - default: deflate - description: HTTP header used to compress the media-type. - enum: - - deflate - - zstd1 - - gzip - example: deflate - type: string - x-enum-varnames: - - DEFLATE - - ZSTD1 - - GZIP - MetricCustomAggregation: - description: A time and space aggregation combination for use in query. - example: - space: sum - time: sum - properties: - space: - $ref: '#/components/schemas/MetricCustomSpaceAggregation' - time: - $ref: '#/components/schemas/MetricCustomTimeAggregation' - required: - - time - - space - type: object - MetricCustomAggregations: - description: Deprecated. You no longer need to configure specific time and space - aggregations for Metrics Without Limits. - example: - - space: sum - time: sum - - space: sum - time: count - items: - $ref: '#/components/schemas/MetricCustomAggregation' - type: array - MetricCustomSpaceAggregation: - description: A space aggregation for use in query. - enum: - - avg - - max - - min - - sum - example: sum - type: string - x-enum-varnames: - - AVG - - MAX - - MIN - - SUM - MetricCustomTimeAggregation: - description: A time aggregation for use in query. - enum: - - avg - - count - - max - - min - - sum - example: sum - type: string - x-enum-varnames: - - AVG - - COUNT - - MAX - - MIN - - SUM - MetricDashboardAsset: - description: A dashboard object with title and popularity. - properties: - attributes: - $ref: '#/components/schemas/MetricDashboardAttributes' - id: - $ref: '#/components/schemas/MetricDashboardID' - type: - $ref: '#/components/schemas/MetricDashboardType' - required: - - id - - type - type: object - MetricDashboardAttributes: - description: Attributes related to the dashboard, including title, popularity, - and url. - properties: - popularity: - description: Value from 0 to 5 that ranks popularity of the dashboard. - format: double - maximum: 5 - minimum: 0 - type: number - tags: - description: List of tag keys used in the asset. - example: - - env - - service - - host - - datacenter - items: - description: Tag key used in assets. - type: string - type: array - title: - description: Title of the asset. - type: string - url: - description: URL path of the asset. - type: string - type: object - MetricDashboardID: - description: The related dashboard's ID. - example: xxx-yyy-zzz - type: string - MetricDashboardType: - description: Dashboard resource type. - enum: - - dashboards - example: dashboards - type: string - x-enum-varnames: - - DASHBOARDS - MetricDistinctVolume: - description: Object for a single metric's distinct volume. - properties: - attributes: - $ref: '#/components/schemas/MetricDistinctVolumeAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricDistinctVolumeType' - type: object - MetricDistinctVolumeAttributes: - description: Object containing the definition of a metric's distinct volume. - properties: - distinct_volume: - description: Distinct volume for the given metric. - example: 10 - format: int64 - type: integer - type: object - MetricDistinctVolumeType: - default: distinct_metric_volumes - description: The metric distinct volume type. - enum: - - distinct_metric_volumes - example: distinct_metric_volumes - type: string - x-enum-varnames: - - DISTINCT_METRIC_VOLUMES - MetricEstimate: - description: Object for a metric cardinality estimate. - properties: - attributes: - $ref: '#/components/schemas/MetricEstimateAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricEstimateResourceType' - type: object - MetricEstimateAttributes: - description: Object containing the definition of a metric estimate attribute. - properties: - estimate_type: - $ref: '#/components/schemas/MetricEstimateType' - estimated_at: - description: Timestamp when the cardinality estimate was requested. - example: '2022-04-27T09:48:37.463835Z' - format: date-time - type: string - estimated_output_series: - description: Estimated cardinality of the metric based on the queried configuration. - example: 50 - format: int64 - type: integer - type: object - MetricEstimateResourceType: - default: metric_cardinality_estimate - description: The metric estimate resource type. - enum: - - metric_cardinality_estimate - example: metric_cardinality_estimate - type: string - x-enum-varnames: - - METRIC_CARDINALITY_ESTIMATE - MetricEstimateResponse: - description: Response object that includes metric cardinality estimates. - properties: - data: - $ref: '#/components/schemas/MetricEstimate' - type: object - MetricEstimateType: - default: count_or_gauge - description: Estimate type based on the queried configuration. By default, `count_or_gauge` - is returned. `distribution` is returned for distribution metrics without percentiles - enabled. Lastly, `percentile` is returned if `filter[pct]=true` is queried - with a distribution metric. - enum: - - count_or_gauge - - distribution - - percentile - example: distribution - type: string - x-enum-varnames: - - COUNT_OR_GAUGE - - DISTRIBUTION - - PERCENTILE - MetricIngestedIndexedVolume: - description: Object for a single metric's ingested and indexed volume. - properties: - attributes: - $ref: '#/components/schemas/MetricIngestedIndexedVolumeAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricIngestedIndexedVolumeType' - type: object - MetricIngestedIndexedVolumeAttributes: - description: Object containing the definition of a metric's ingested and indexed - volume. - properties: - indexed_volume: - description: Indexed volume for the given metric. - example: 10 - format: int64 - type: integer - ingested_volume: - description: Ingested volume for the given metric. - example: 20 - format: int64 - type: integer - type: object - MetricIngestedIndexedVolumeType: - default: metric_volumes - description: The metric ingested and indexed volume type. - enum: - - metric_volumes - example: metric_volumes - type: string - x-enum-varnames: - - METRIC_VOLUMES - MetricIntakeType: - description: The type of metric. The available types are `0` (unspecified), - `1` (count), `2` (rate), and `3` (gauge). - enum: - - 0 - - 1 - - 2 - - 3 - format: int32 - type: integer - x-enum-varnames: - - UNSPECIFIED - - COUNT - - RATE - - GAUGE - MetricMetaPage: - description: Paging attributes. Only present if pagination query parameters - were provided. - properties: - cursor: - description: The cursor used to get the current results, if any. - nullable: true - type: string - limit: - description: Number of results returned - format: int32 - maximum: 20000 - minimum: 0 - type: integer - next_cursor: - description: The cursor used to get the next results, if any. - nullable: true - type: string - type: - $ref: '#/components/schemas/MetricMetaPageType' - type: object - MetricMetaPageType: - default: cursor_limit - description: Type of metric pagination. - enum: - - cursor_limit - example: cursor_limit - type: string - x-enum-varnames: - - CURSOR_LIMIT - MetricMetadata: - description: Metadata for the metric. - properties: - origin: - $ref: '#/components/schemas/MetricOrigin' - type: object - MetricMonitorAsset: - description: A monitor object with title. - properties: - attributes: - $ref: '#/components/schemas/MetricAssetAttributes' - id: - $ref: '#/components/schemas/MetricMonitorID' - type: - $ref: '#/components/schemas/MetricMonitorType' - required: - - id - - type - type: object - MetricMonitorID: - description: The related monitor's ID. - example: '1775073' - type: string - MetricMonitorType: - description: Monitor resource type. - enum: - - monitors - example: monitors - type: string - x-enum-varnames: - - MONITORS - MetricName: - description: The metric name for this resource. - example: test.metric.latency - type: string - MetricNotebookAsset: - description: A notebook object with title. - properties: - attributes: - $ref: '#/components/schemas/MetricAssetAttributes' - id: - $ref: '#/components/schemas/MetricNotebookID' - type: - $ref: '#/components/schemas/MetricNotebookType' - required: - - id - - type - type: object - MetricNotebookID: - description: The related notebook's ID. - example: '12345' - type: string - MetricNotebookType: - description: Notebook resource type. - enum: - - notebooks - example: notebooks - type: string - x-enum-varnames: - - NOTEBOOKS - MetricOrigin: - description: Metric origin information. - properties: - metric_type: - default: 0 - description: The origin metric type code - format: int32 - maximum: 1000 - type: integer - product: - default: 0 - description: The origin product code - format: int32 - maximum: 1000 - type: integer - service: - default: 0 - description: The origin service code - format: int32 - maximum: 1000 - type: integer - type: object - MetricPaginationMeta: - description: Response metadata object. - properties: - pagination: - $ref: '#/components/schemas/MetricMetaPage' - type: object - MetricPayload: - description: The metrics' payload. - properties: - series: - description: A list of timeseries to submit to Datadog. - example: - - metric: system.load.1 - points: - - timestamp: 1475317847 - value: 0.7 - resources: - - name: dummyhost - type: host - items: - $ref: '#/components/schemas/MetricSeries' - type: array - required: - - series - type: object - MetricPoint: - description: A point object is of the form `{POSIX_timestamp, numeric_value}`. - example: - timestamp: 1575317847 - value: 0.5 - properties: - timestamp: - description: 'The timestamp should be in seconds and current. - - Current is defined as not more than 10 minutes in the future or more than - 1 hour in the past.' - format: int64 - type: integer - value: - description: The numeric value format should be a 64bit float gauge-type - value. - format: double - type: number - type: object - MetricResource: - description: Metric resource. - example: - name: dummyhost - type: host - properties: - name: - description: The name of the resource. - type: string - type: - description: The type of the resource. - type: string - type: object - MetricSLOAsset: - description: A SLO object with title. - properties: - attributes: - $ref: '#/components/schemas/MetricAssetAttributes' - id: - $ref: '#/components/schemas/MetricSLOID' - type: - $ref: '#/components/schemas/MetricSLOType' - required: - - id - - type - type: object - MetricSLOID: - description: The SLO ID. - example: 9ffef113b389520db54391d67d652dfb - type: string - MetricSLOType: - description: SLO resource type. - enum: - - slos - example: slos - type: string - x-enum-varnames: - - SLOS - MetricSeries: - description: 'A metric to submit to Datadog. - - See [Datadog metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties).' - properties: - interval: - description: If the type of the metric is rate or count, define the corresponding - interval in seconds. - example: 20 - format: int64 - type: integer - metadata: - $ref: '#/components/schemas/MetricMetadata' - metric: - description: The name of the timeseries. - example: system.load.1 - type: string - points: - description: Points relating to a metric. All points must be objects with - timestamp and a scalar value (cannot be a string). Timestamps should be - in POSIX time in seconds, and cannot be more than ten minutes in the future - or more than one hour in the past. - example: - - timestamp: 1575317847 - value: 0.5 - items: - $ref: '#/components/schemas/MetricPoint' - type: array - resources: - description: A list of resources to associate with this metric. - items: - $ref: '#/components/schemas/MetricResource' - type: array - source_type_name: - description: The source type name. - example: datadog - type: string - tags: - description: A list of tags associated with the metric. - example: - - environment:test - items: - description: Individual tags. - type: string - type: array - type: - $ref: '#/components/schemas/MetricIntakeType' - unit: - description: The unit of point value. - example: second - type: string - required: - - metric - - points - type: object - MetricSuggestedAggregations: - description: List of aggregation combinations that have been actively queried. - example: - - space: sum - time: sum - - space: sum - time: count - items: - $ref: '#/components/schemas/MetricCustomAggregation' - type: array - MetricSuggestedTagsAndAggregations: - description: Object for a single metric's actively queried tags and aggregations. - properties: - attributes: - $ref: '#/components/schemas/MetricSuggestedTagsAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricActiveConfigurationType' - type: object - MetricSuggestedTagsAndAggregationsResponse: - description: Response object that includes a single metric's actively queried - tags and aggregations. - properties: - data: - $ref: '#/components/schemas/MetricSuggestedTagsAndAggregations' - readOnly: true - type: object - MetricSuggestedTagsAttributes: - description: Object containing the definition of a metric's actively queried - tags and aggregations. - properties: - active_aggregations: - $ref: '#/components/schemas/MetricSuggestedAggregations' - active_tags: - description: List of tag keys that have been actively queried. - example: - - app - - datacenter - items: - description: Actively queried tag keys. - type: string - type: array - type: object - MetricTagCardinalitiesData: - description: A list of tag cardinalities associated with the given metric. - items: - $ref: '#/components/schemas/MetricTagCardinality' - type: array - MetricTagCardinalitiesMeta: - description: Response metadata object. - properties: - metric_name: - description: 'The name of metric for which the tag cardinalities are returned. - - This matches the metric name provided in the request. - - ' - type: string - type: object - MetricTagCardinalitiesResponse: - description: 'Response object that includes an array of objects representing - the cardinality details of a metric''s tags. - - ' - properties: - data: - $ref: '#/components/schemas/MetricTagCardinalitiesData' - meta: - $ref: '#/components/schemas/MetricTagCardinalitiesMeta' - readOnly: true - type: object - MetricTagCardinality: - description: Object containing metadata and attributes related to a specific - tag key associated with the metric. - example: - attributes: - cardinality_delta: 25 - id: http.request.latency - type: tag_cardinality - properties: - attributes: - $ref: '#/components/schemas/MetricTagCardinalityAttributes' - id: - description: The name of the tag key. - type: string - type: - default: tag_cardinality - description: This describes the endpoint action. - type: string - type: object - MetricTagCardinalityAttributes: - description: An object containing properties related to the tag key - properties: - cardinality_delta: - description: This describes the recent change in the tag keys cardinality - format: int64 - type: integer - type: object - MetricTagConfiguration: - description: Object for a single metric tag configuration. - example: - attributes: - aggregations: - - space: avg - time: avg - created_at: '2020-03-25T09:48:37.463835Z' - metric_type: gauge - modified_at: '2020-04-25T09:48:37.463835Z' - tags: - - app - - datacenter - id: http.request.latency - type: manage_tags - properties: - attributes: - $ref: '#/components/schemas/MetricTagConfigurationAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricTagConfigurationType' - type: object - MetricTagConfigurationAttributes: - description: Object containing the definition of a metric tag configuration - attributes. - properties: - aggregations: - $ref: '#/components/schemas/MetricCustomAggregations' - created_at: - description: Timestamp when the tag configuration was created. - example: '2020-03-25T09:48:37.463835Z' - format: date-time - type: string - exclude_tags_mode: - description: 'When set to true, the configuration will exclude the configured - tags and include any other submitted tags. - - When set to false, the configuration will include the configured tags - and exclude any other submitted tags. - - Defaults to false. Requires `tags` property.' - type: boolean - include_percentiles: - description: 'Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when the `metric_type` is `distribution`.' - example: true - type: boolean - metric_type: - $ref: '#/components/schemas/MetricTagConfigurationMetricTypes' - modified_at: - description: Timestamp when the tag configuration was last modified. - example: '2020-03-25T09:48:37.463835Z' - format: date-time - type: string - tags: - description: List of tag keys on which to group. - example: - - app - - datacenter - items: - description: Tag keys to group by. - type: string - type: array - type: object - MetricTagConfigurationCreateAttributes: - description: Object containing the definition of a metric tag configuration - to be created. - properties: - aggregations: - $ref: '#/components/schemas/MetricCustomAggregations' - exclude_tags_mode: - description: 'When set to true, the configuration will exclude the configured - tags and include any other submitted tags. - - When set to false, the configuration will include the configured tags - and exclude any other submitted tags. - - Defaults to false. Requires `tags` property.' - type: boolean - include_percentiles: - description: 'Toggle to include/exclude percentiles for a distribution metric. - - Defaults to false. Can only be applied to metrics that have a `metric_type` - of `distribution`.' - example: true - type: boolean - metric_type: - $ref: '#/components/schemas/MetricTagConfigurationMetricTypes' - tags: - default: [] - description: A list of tag keys that will be queryable for your metric. - example: - - app - - datacenter - items: - description: Tag keys to group by. - type: string - type: array - required: - - tags - - metric_type - type: object - MetricTagConfigurationCreateData: - description: Object for a single metric to be configure tags on. - example: - attributes: - include_percentiles: false - metric_type: distribution - tags: - - app - - datacenter - id: http.endpoint.request - type: manage_tags - properties: - attributes: - $ref: '#/components/schemas/MetricTagConfigurationCreateAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricTagConfigurationType' - required: - - id - - type - type: object - MetricTagConfigurationCreateRequest: - description: Request object that includes the metric that you would like to - configure tags for. - properties: - data: - $ref: '#/components/schemas/MetricTagConfigurationCreateData' - required: - - data - type: object - MetricTagConfigurationMetricTypeCategory: - default: distribution - description: The metric's type category. - enum: - - non_distribution - - distribution - example: distribution - type: string - x-enum-varnames: - - NON_DISTRIBUTION - - DISTRIBUTION - MetricTagConfigurationMetricTypes: - default: gauge - description: The metric's type. - enum: - - gauge - - count - - rate - - distribution - example: count - type: string - x-enum-varnames: - - GAUGE - - COUNT - - RATE - - DISTRIBUTION - MetricTagConfigurationResponse: - description: Response object which includes a single metric's tag configuration. - properties: - data: - $ref: '#/components/schemas/MetricTagConfiguration' - readOnly: true - type: object - MetricTagConfigurationType: - default: manage_tags - description: The metric tag configuration resource type. - enum: - - manage_tags - example: manage_tags - type: string - x-enum-varnames: - - MANAGE_TAGS - MetricTagConfigurationUpdateAttributes: - description: Object containing the definition of a metric tag configuration - to be updated. - properties: - aggregations: - $ref: '#/components/schemas/MetricCustomAggregations' - exclude_tags_mode: - description: 'When set to true, the configuration will exclude the configured - tags and include any other submitted tags. - - When set to false, the configuration will include the configured tags - and exclude any other submitted tags. - - Defaults to false. Requires `tags` property.' - type: boolean - include_percentiles: - description: 'Toggle to include/exclude percentiles for a distribution metric. - - Defaults to false. Can only be applied to metrics that have a `metric_type` - of `distribution`.' - example: true - type: boolean - tags: - default: [] - description: A list of tag keys that will be queryable for your metric. - example: - - app - - datacenter - items: - description: Tag keys to group by. - type: string - type: array - type: object - MetricTagConfigurationUpdateData: - description: Object for a single tag configuration to be edited. - example: - attributes: - group_by: - - app - - datacenter - include_percentiles: false - id: http.endpoint.request - type: manage_tags - properties: - attributes: - $ref: '#/components/schemas/MetricTagConfigurationUpdateAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricTagConfigurationType' - required: - - id - - type - type: object - MetricTagConfigurationUpdateRequest: - description: Request object that includes the metric that you would like to - edit the tag configuration on. - properties: - data: - $ref: '#/components/schemas/MetricTagConfigurationUpdateData' - required: - - data - type: object - MetricType: - default: metrics - description: The metric resource type. - enum: - - metrics - example: metrics - type: string - x-enum-varnames: - - METRICS - MetricVolumes: - description: Possible response objects for a metric's volume. - oneOf: - - $ref: '#/components/schemas/MetricDistinctVolume' - - $ref: '#/components/schemas/MetricIngestedIndexedVolume' - MetricVolumesResponse: - description: Response object which includes a single metric's volume. - properties: - data: - $ref: '#/components/schemas/MetricVolumes' - readOnly: true - type: object - MetricsAggregator: - default: avg - description: The type of aggregation that can be performed on metrics-based - queries. - enum: - - avg - - min - - max - - sum - - last - - percentile - - mean - - l2norm - - area - example: avg - type: string - x-enum-varnames: - - AVG - - MIN - - MAX - - SUM - - LAST - - PERCENTILE - - MEAN - - L2NORM - - AREA - MetricsAndMetricTagConfigurations: - description: Object for a metrics and metric tag configurations. - oneOf: - - $ref: '#/components/schemas/Metric' - - $ref: '#/components/schemas/MetricTagConfiguration' - MetricsAndMetricTagConfigurationsResponse: - description: Response object that includes metrics and metric tag configurations. - properties: - data: - description: Array of metrics and metric tag configurations. - items: - $ref: '#/components/schemas/MetricsAndMetricTagConfigurations' - type: array - links: - $ref: '#/components/schemas/MetricsListResponseLinks' - meta: - $ref: '#/components/schemas/MetricPaginationMeta' - readOnly: true - type: object - MetricsDataSource: - default: metrics - description: A data source that is powered by the Metrics platform. - enum: - - metrics - - cloud_cost - example: metrics - type: string - x-enum-varnames: - - METRICS - - CLOUD_COST - MetricsListResponseLinks: - description: Pagination links. Only present if pagination query parameters were - provided. - properties: - first: - description: Link to the first page. - type: string - last: - description: Link to the last page. - nullable: true - type: string - next: - description: Link to the next page. - nullable: true - type: string - prev: - description: Link to previous page. - nullable: true - type: string - self: - description: Link to current page. - type: string - type: object - MetricsScalarQuery: - description: An individual scalar metrics query. - properties: - aggregator: - $ref: '#/components/schemas/MetricsAggregator' - data_source: - $ref: '#/components/schemas/MetricsDataSource' - name: - description: The variable name for use in formulas. - type: string - query: - description: A classic metrics query string. - example: avg:system.cpu.user{*} by {env} - type: string - required: - - data_source - - query - - aggregator - type: object - MetricsTimeseriesQuery: - description: An individual timeseries metrics query. - properties: - data_source: - $ref: '#/components/schemas/MetricsDataSource' - name: - description: The variable name for use in formulas. - type: string - query: - description: A classic metrics query string. - example: avg:system.cpu.user{*} by {env} - type: string - required: - - data_source - - query - type: object - MicrosoftSentinelDestination: - description: The `microsoft_sentinel` destination forwards logs to Microsoft - Sentinel. - properties: - client_id: - description: Azure AD client ID used for authentication. - example: a1b2c3d4-5678-90ab-cdef-1234567890ab - type: string - dcr_immutable_id: - description: The immutable ID of the Data Collection Rule (DCR). - example: dcr-uuid-1234 - type: string - id: - description: The unique identifier for this component. - example: sentinel-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - table: - description: The name of the Log Analytics table where logs are sent. - example: CustomLogsTable - type: string - tenant_id: - description: Azure AD tenant ID. - example: abcdef12-3456-7890-abcd-ef1234567890 - type: string - type: - $ref: '#/components/schemas/MicrosoftSentinelDestinationType' - required: - - id - - type - - inputs - - client_id - - tenant_id - - dcr_immutable_id - - table - type: object - MicrosoftSentinelDestinationType: - default: microsoft_sentinel - description: The destination type. The value should always be `microsoft_sentinel`. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - MicrosoftTeamsChannelInfoResponseAttributes: - description: Channel attributes. - properties: - is_primary: - description: Indicates if this is the primary channel. - example: true - maxLength: 255 - type: boolean - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - type: object - MicrosoftTeamsChannelInfoResponseData: - description: Channel data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseAttributes' - id: - description: The ID of the channel. - example: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 - maxLength: 255 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoType' - type: object - MicrosoftTeamsChannelInfoType: - default: ms-teams-channel-info - description: Channel info resource type. - enum: - - ms-teams-channel-info - example: ms-teams-channel-info - type: string - x-enum-varnames: - - MS_TEAMS_CHANNEL_INFO - MicrosoftTeamsConfigurationReference: - description: A reference to a Microsoft Teams Configuration resource. - nullable: true - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsConfigurationReferenceData' - required: - - data - type: object - MicrosoftTeamsConfigurationReferenceData: - description: The Microsoft Teams configuration relationship data object. - nullable: true - properties: - id: - description: The unique identifier of the Microsoft Teams configuration. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - description: The type of the Microsoft Teams configuration. - example: microsoft_teams_configurations - type: string - required: - - id - - type - type: object - MicrosoftTeamsCreateTenantBasedHandleRequest: - description: Create tenant-based handle request. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestData' - required: - - data - type: object - MicrosoftTeamsCreateWorkflowsWebhookHandleRequest: - description: Create Workflows webhook handle request. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestData' - required: - - data - type: object - MicrosoftTeamsGetChannelByNameResponse: - description: Response with channel, team, and tenant ID information. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseData' - type: object - MicrosoftTeamsTenantBasedHandleAttributes: - description: Tenant-based handle attributes. - properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - type: object - MicrosoftTeamsTenantBasedHandleInfoResponseAttributes: - description: Tenant-based handle attributes. - properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - channel_name: - description: Channel name. - example: fake-channel-name - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - team_name: - description: Team name. - example: fake-team-name - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - tenant_name: - description: Tenant name. - example: fake-tenant-name - maxLength: 255 - type: string - type: object - MicrosoftTeamsTenantBasedHandleInfoResponseData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseAttributes' - id: - description: The ID of the tenant-based handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoType' - type: object - MicrosoftTeamsTenantBasedHandleInfoType: - default: ms-teams-tenant-based-handle-info - description: Tenant-based handle resource type. - enum: - - ms-teams-tenant-based-handle-info - example: ms-teams-tenant-based-handle-info - type: string - x-enum-varnames: - - MS_TEAMS_TENANT_BASED_HANDLE_INFO - MicrosoftTeamsTenantBasedHandleRequestAttributes: - description: Tenant-based handle attributes. - properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - required: - - name - - channel_id - - team_id - - tenant_id - type: object - MicrosoftTeamsTenantBasedHandleRequestData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsTenantBasedHandleResponse: - description: Response of a tenant-based handle. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponseData' - required: - - data - type: object - MicrosoftTeamsTenantBasedHandleResponseData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' - id: - description: The ID of the tenant-based handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - type: object - MicrosoftTeamsTenantBasedHandleType: - default: tenant-based-handle - description: Specifies the tenant-based handle resource type. - enum: - - tenant-based-handle - example: tenant-based-handle - type: string - x-enum-varnames: - - TENANT_BASED_HANDLE - MicrosoftTeamsTenantBasedHandlesResponse: - description: Response with a list of tenant-based handles. - properties: - data: - description: An array of tenant-based handles. - example: - - attributes: - channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 - channelName: General - name: general-handle - teamId: 00000000-0000-0000-0000-000000000000 - teamName: Example Team - tenantId: 00000000-0000-0000-0000-000000000001 - tenantName: Company, Inc. - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: ms-teams-tenant-based-handle-info - - attributes: - channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgk1@thread.tacv2 - channelName: General2 - name: general-handle-2 - teamId: 00000000-0000-0000-0000-000000000002 - teamName: Example Team 2 - tenantId: 00000000-0000-0000-0000-000000000003 - tenantName: Company, Inc. - id: 596da4af-0563-4097-90ff-07230c3f9db4 - type: ms-teams-tenant-based-handle-info - items: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseData' - type: array - required: - - data - type: object - MicrosoftTeamsUpdateTenantBasedHandleRequest: - description: Update tenant-based handle request. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequestData' - required: - - data - type: object - MicrosoftTeamsUpdateTenantBasedHandleRequestData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest: - description: Update Workflows webhook handle request. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData' - required: - - data - type: object - MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData: - description: Workflows Webhook handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsWorkflowsWebhookHandleAttributes: - description: Workflows Webhook handle attributes. - properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - url: - description: Workflows Webhook URL. - example: https://fake.url.com - maxLength: 255 - type: string - type: object - MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes: - description: Workflows Webhook handle attributes. - properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - url: - description: Workflows Webhook URL. - example: https://fake.url.com - maxLength: 255 - type: string - required: - - name - - url - type: object - MicrosoftTeamsWorkflowsWebhookHandleRequestData: - description: Workflows Webhook handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsWorkflowsWebhookHandleResponse: - description: Response of a Workflows webhook handle. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData' - required: - - data - type: object - MicrosoftTeamsWorkflowsWebhookHandleResponseData: - description: Workflows Webhook handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookResponseAttributes' - id: - description: The ID of the Workflows webhook handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - type: object - MicrosoftTeamsWorkflowsWebhookHandleType: - default: workflows-webhook-handle - description: Specifies the Workflows webhook handle resource type. - enum: - - workflows-webhook-handle - example: workflows-webhook-handle - type: string - x-enum-varnames: - - WORKFLOWS_WEBHOOK_HANDLE - MicrosoftTeamsWorkflowsWebhookHandlesResponse: - description: Response with a list of Workflows webhook handles. - properties: - data: - description: An array of Workflows webhook handles. - example: - - attributes: - name: general-handle - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: workflows-webhook-handle - - attributes: - name: general-handle-2 - id: 596da4af-0563-4097-90ff-07230c3f9db4 - type: workflows-webhook-handle - items: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData' - type: array - required: - - data - type: object - MicrosoftTeamsWorkflowsWebhookResponseAttributes: - description: Workflows Webhook handle attributes. - properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - type: object - MonitorConfigPolicyAttributeCreateRequest: - description: Policy and policy type for a monitor configuration policy. - properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicyCreateRequest' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - required: - - policy_type - - policy - type: object - MonitorConfigPolicyAttributeEditRequest: - description: Policy and policy type for a monitor configuration policy. - properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicy' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - required: - - policy_type - - policy - type: object - MonitorConfigPolicyAttributeResponse: - description: Policy and policy type for a monitor configuration policy. - properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicy' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - type: object - MonitorConfigPolicyCreateData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeCreateRequest' - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - required: - - type - - attributes - type: object - MonitorConfigPolicyCreateRequest: - description: Request for creating a monitor configuration policy. - properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyCreateData' - required: - - data - type: object - MonitorConfigPolicyEditData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeEditRequest' - id: - description: ID of this monitor configuration policy. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - required: - - id - - type - - attributes - type: object - MonitorConfigPolicyEditRequest: - description: Request for editing a monitor configuration policy. - properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyEditData' - required: - - data - type: object - MonitorConfigPolicyListResponse: - description: Response for retrieving all monitor configuration policies. - properties: - data: - description: An array of monitor configuration policies. - items: - $ref: '#/components/schemas/MonitorConfigPolicyResponseData' - type: array - type: object - MonitorConfigPolicyPolicy: - description: Configuration for the policy. - oneOf: - - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicy' - MonitorConfigPolicyPolicyCreateRequest: - description: Configuration for the policy. - oneOf: - - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicyCreateRequest' - MonitorConfigPolicyResourceType: - default: monitor-config-policy - description: Monitor configuration policy resource type. - enum: - - monitor-config-policy - example: monitor-config-policy - type: string - x-enum-varnames: - - MONITOR_CONFIG_POLICY - MonitorConfigPolicyResponse: - description: Response for retrieving a monitor configuration policy. - properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyResponseData' - type: object - MonitorConfigPolicyResponseData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeResponse' - id: - description: ID of this monitor configuration policy. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - type: object - MonitorConfigPolicyTagPolicy: - description: Tag attributes of a monitor configuration policy. - properties: - tag_key: - description: The key of the tag. - example: datacenter - maxLength: 255 - type: string - tag_key_required: - description: If a tag key is required for monitor creation. - example: true - type: boolean - valid_tag_values: - description: Valid values for the tag. - example: - - prod - - staging - items: - maxLength: 255 - type: string - type: array - type: object - MonitorConfigPolicyTagPolicyCreateRequest: - description: Tag attributes of a monitor configuration policy. - properties: - tag_key: - description: The key of the tag. - example: datacenter - maxLength: 255 - type: string - tag_key_required: - description: If a tag key is required for monitor creation. - example: true - type: boolean - valid_tag_values: - description: Valid values for the tag. - example: - - prod - - staging - items: - maxLength: 255 - type: string - type: array - required: - - tag_key - - tag_key_required - - valid_tag_values - type: object - MonitorConfigPolicyType: - default: tag - description: The monitor configuration policy type. - enum: - - tag - example: tag - type: string - x-enum-varnames: - - TAG - MonitorDowntimeMatchResourceType: - default: downtime_match - description: Monitor Downtime Match resource type. - enum: - - downtime_match - example: downtime_match - type: string - x-enum-varnames: - - DOWNTIME_MATCH - MonitorDowntimeMatchResponse: - description: Response for retrieving all downtime matches for a monitor. - properties: - data: - description: An array of downtime matches. - items: - $ref: '#/components/schemas/MonitorDowntimeMatchResponseData' - type: array - meta: - $ref: '#/components/schemas/DowntimeMeta' - type: object - MonitorDowntimeMatchResponseAttributes: - description: Downtime match details. - properties: - end: - description: The end of the downtime. - example: 2020-01-02 03:04:00+00:00 - format: date-time - nullable: true - type: string - groups: - description: An array of groups associated with the downtime. - example: - - service:postgres - - team:frontend - items: - description: An array of groups. - example: service:postgres - type: string - type: array - scope: - $ref: '#/components/schemas/DowntimeScope' - start: - description: The start of the downtime. - example: 2020-01-02 03:04:00+00:00 - format: date-time - type: string - type: object - MonitorDowntimeMatchResponseData: - description: A downtime match. - properties: - attributes: - $ref: '#/components/schemas/MonitorDowntimeMatchResponseAttributes' - id: - description: The downtime ID. - example: 00000000-0000-1234-0000-000000000000 - nullable: true - type: string - type: - $ref: '#/components/schemas/MonitorDowntimeMatchResourceType' - type: object - MonitorNotificationRuleAttributes: - additionalProperties: false - description: Attributes of the monitor notification rule. - properties: - filter: - $ref: '#/components/schemas/MonitorNotificationRuleFilter' - name: - $ref: '#/components/schemas/MonitorNotificationRuleName' - recipients: - $ref: '#/components/schemas/MonitorNotificationRuleRecipients' - required: - - name - - recipients - type: object - MonitorNotificationRuleCreateRequest: - description: Request for creating a monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleCreateRequestData' - required: - - data - type: object - MonitorNotificationRuleCreateRequestData: - description: Object to create a monitor notification rule. - properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleAttributes' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - required: - - attributes - type: object - MonitorNotificationRuleData: - description: Monitor notification rule data. - properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleResponseAttributes' - id: - $ref: '#/components/schemas/MonitorNotificationRuleId' - relationships: - $ref: '#/components/schemas/MonitorNotificationRuleRelationships' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - type: object - MonitorNotificationRuleFilter: - description: Filter used to associate the notification rule with monitors. - oneOf: - - $ref: '#/components/schemas/MonitorNotificationRuleFilterTags' - MonitorNotificationRuleFilterTags: - additionalProperties: false - description: Filter monitors by tags. Monitors must match all tags. - properties: - tags: - description: A list of monitor tags. - example: - - team:product - - host:abc - items: - maxLength: 255 - type: string - maxItems: 20 - minItems: 1 - type: array - uniqueItems: true - required: - - tags - type: object - MonitorNotificationRuleId: - description: The ID of the monitor notification rule. - example: 00000000-0000-1234-0000-000000000000 - type: string - MonitorNotificationRuleListResponse: - description: Response for retrieving all monitor notification rules. - properties: - data: - description: A list of monitor notification rules. - items: - $ref: '#/components/schemas/MonitorNotificationRuleData' - type: array - included: - description: Array of objects related to the monitor notification rules. - items: - $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' - type: array - type: object - MonitorNotificationRuleName: - description: The name of the monitor notification rule. - example: A notification rule name - maxLength: 1000 - minLength: 1 - type: string - MonitorNotificationRuleRecipients: - description: A list of recipients to notify. Uses the same format as the monitor - `message` field. Must not start with an '@'. - example: - - slack-test-channel - - jira-test - items: - description: individual recipient. - maxLength: 255 - type: string - maxItems: 20 - minItems: 1 - type: array - uniqueItems: true - MonitorNotificationRuleRelationships: - description: All relationships associated with monitor notification rule. - properties: - created_by: - $ref: '#/components/schemas/MonitorNotificationRuleRelationshipsCreatedBy' - type: object - MonitorNotificationRuleRelationshipsCreatedBy: - description: The user who created the monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleRelationshipsCreatedByData' - type: object - MonitorNotificationRuleRelationshipsCreatedByData: - description: Data for the user who created the monitor notification rule. - nullable: true - properties: - id: - description: User ID of the monitor notification rule creator. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - type: object - MonitorNotificationRuleResourceType: - default: monitor-notification-rule - description: Monitor notification rule resource type. - enum: - - monitor-notification-rule - example: monitor-notification-rule - type: string - x-enum-varnames: - - MONITOR_NOTIFICATION_RULE - MonitorNotificationRuleResponse: - description: A monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleData' - included: - description: Array of objects related to the monitor notification rule that - the user requested. - items: - $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' - type: array - type: object - MonitorNotificationRuleResponseAttributes: - additionalProperties: {} - description: Attributes of the monitor notification rule. - properties: - created: - description: Creation time of the monitor notification rule. - example: 2020-01-02 03:04:00+00:00 - format: date-time - type: string - filter: - $ref: '#/components/schemas/MonitorNotificationRuleFilter' - modified: - description: Time the monitor notification rule was last modified. - example: 2020-01-02 03:04:00+00:00 - format: date-time - type: string - name: - $ref: '#/components/schemas/MonitorNotificationRuleName' - recipients: - $ref: '#/components/schemas/MonitorNotificationRuleRecipients' - type: object - MonitorNotificationRuleResponseIncludedItem: - description: An object related to a monitor notification rule. - oneOf: - - $ref: '#/components/schemas/User' - MonitorNotificationRuleUpdateRequest: - description: Request for updating a monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequestData' - required: - - data - type: object - MonitorNotificationRuleUpdateRequestData: - description: Object to update a monitor notification rule. - properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleAttributes' - id: - $ref: '#/components/schemas/MonitorNotificationRuleId' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - required: - - id - - attributes - type: object - MonitorTrigger: - description: Trigger a workflow from a Monitor. For automatic triggering a handle - must be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - MonitorTriggerWrapper: - description: Schema for a Monitor-based trigger. - properties: - monitorTrigger: - $ref: '#/components/schemas/MonitorTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - monitorTrigger - type: object - MonitorType: - description: Attributes from the monitor that triggered the event. - nullable: true - properties: - created_at: - description: The POSIX timestamp of the monitor's creation in nanoseconds. - example: 1646318692000 - format: int64 - type: integer - group_status: - description: Monitor group status used when there is no `result_groups`. - format: int32 - maximum: 2147483647 - type: integer - groups: - description: Groups to which the monitor belongs. - items: - description: A group. - type: string - type: array - id: - description: The monitor ID. - format: int64 - type: integer - message: - description: The monitor message. - type: string - modified: - description: The monitor's last-modified timestamp. - format: int64 - type: integer - name: - description: The monitor name. - type: string - query: - description: The query that triggers the alert. - type: string - tags: - description: A list of tags attached to the monitor. - example: - - environment:test - items: - description: A tag. - type: string - type: array - templated_name: - description: The templated name of the monitor before resolving any template - variables. - type: string - type: - description: The monitor type. - type: string - type: object - MonitorUserTemplate: - additionalProperties: {} - description: A monitor user template object. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - modified: - $ref: '#/components/schemas/MonitorUserTemplateModified' - monitor_definition: - additionalProperties: {} - description: A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - versions: - description: All versions of the monitor user template. - items: - $ref: '#/components/schemas/SimpleMonitorUserTemplate' - type: array - type: object - MonitorUserTemplateCreateData: - description: Monitor user template data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - required: - - type - - attributes - type: object - MonitorUserTemplateCreateRequest: - description: Request for creating a monitor user template. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateCreateData' - required: - - data - type: object - MonitorUserTemplateCreateResponse: - description: Response for creating a monitor user template. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateResponseData' - type: object - MonitorUserTemplateCreated: - description: The created timestamp of the template. - example: '2024-01-02T03:04:23.274966+00:00' - format: date-time - readOnly: true - type: string - MonitorUserTemplateDescription: - description: A brief description of the monitor user template. - example: This is a template for monitoring user activity. - nullable: true - type: string - MonitorUserTemplateId: - description: The unique identifier. - example: 00000000-0000-1234-0000-000000000000 - type: string - MonitorUserTemplateListResponse: - description: Response for retrieving all monitor user templates. - properties: - data: - description: An array of monitor user templates. - items: - $ref: '#/components/schemas/MonitorUserTemplateResponseData' - type: array - type: object - MonitorUserTemplateModified: - description: The last modified timestamp. When the template version was created. - example: '2024-02-02T03:04:23.274966+00:00' - format: date-time - readOnly: true - type: string - MonitorUserTemplateRequestAttributes: - additionalProperties: false - description: Attributes for a monitor user template. - properties: - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - monitor_definition: - additionalProperties: {} - description: A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - required: - - title - - monitor_definition - - tags - type: object - MonitorUserTemplateResourceType: - default: monitor-user-template - description: Monitor user template resource type. - enum: - - monitor-user-template - example: monitor-user-template - type: string - x-enum-varnames: - - MONITOR_USER_TEMPLATE - MonitorUserTemplateResponse: - description: Response for retrieving a monitor user template. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateResponseDataWithVersions' - type: object - MonitorUserTemplateResponseAttributes: - additionalProperties: {} - description: Attributes for a monitor user template. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - modified: - $ref: '#/components/schemas/MonitorUserTemplateModified' - monitor_definition: - additionalProperties: {} - description: A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - type: object - MonitorUserTemplateResponseData: - description: Monitor user template list response data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateResponseAttributes' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - type: object - MonitorUserTemplateResponseDataWithVersions: - description: Monitor user template data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplate' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - type: object - MonitorUserTemplateTags: - description: The definition of `MonitorUserTemplateTags` object. - example: - - product:Our Custom App - - integration:Azure - items: - description: 'Tags associated with the monitor user template. Must be key - value. Only ''product'' and ''integration'' keys are - - allowed. The value is the name of the category to display the template under. - Integrations can be filtered out in the UI. - - (Review note: This modeling of ''categories'' is subject to change.)' - example: us-east1 - minLength: 1 - type: string - uniqueItems: true - type: array - MonitorUserTemplateTemplateVariables: - description: The definition of `MonitorUserTemplateTemplateVariables` object. - items: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariablesItems' - type: array - MonitorUserTemplateTemplateVariablesItems: - additionalProperties: false - description: List of objects representing template variables on the monitor - which can have selectable values. - properties: - available_values: - description: Available values for the variable. - example: - - value1 - - value2 - items: - minLength: 1 - type: string - uniqueItems: true - type: array - defaults: - description: Default values of the template variable. - example: - - defaultValue - items: - minLength: 0 - type: string - uniqueItems: true - type: array - name: - description: The name of the template variable. - example: regionName - type: string - tag_key: - description: The tag key associated with the variable. This works the same - as dashboard template variables. - example: datacenter - type: string - required: - - name - type: object - MonitorUserTemplateTitle: - description: The title of the monitor user template. - example: Postgres CPU Monitor - type: string - MonitorUserTemplateUpdateData: - description: Monitor user template data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - required: - - id - - type - - attributes - type: object - MonitorUserTemplateUpdateRequest: - description: Request for creating a new monitor user template version. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateUpdateData' - required: - - data - type: object - MonitorUserTemplateVersion: - description: The version of the monitor user template. - example: 0 - format: int64 - nullable: true - readOnly: true - type: integer - MonthlyCostAttributionAttributes: - description: Cost Attribution by Tag for a given organization. - properties: - month: - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`.' - format: date-time - type: string - org_name: - description: The name of the organization. - type: string - public_id: - description: The organization public ID. - type: string - tag_config_source: - description: The source of the cost attribution tag configuration and the - selected tags in the format `::://////`. - type: string - tags: - $ref: '#/components/schemas/CostAttributionTagNames' - updated_at: - description: Shows the most recent hour in the current months for all organizations - for which all costs were calculated. - type: string - values: - description: 'Fields in Cost Attribution by tag(s). Example: `infra_host_on_demand_cost`, - `infra_host_committed_cost`, `infra_host_total_cost`, `infra_host_percentage_in_org`, - `infra_host_percentage_in_account`.' - type: object - type: object - MonthlyCostAttributionBody: - description: Cost data. - properties: - attributes: - $ref: '#/components/schemas/MonthlyCostAttributionAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/CostAttributionType' - type: object - MonthlyCostAttributionMeta: - description: The object containing document metadata. - properties: - aggregates: - $ref: '#/components/schemas/CostAttributionAggregates' - pagination: - $ref: '#/components/schemas/MonthlyCostAttributionPagination' - type: object - MonthlyCostAttributionPagination: - description: The metadata for the current pagination. - properties: - next_record_id: - description: The cursor to use to get the next results, if any. To make - the next request, use the same parameters with the addition of the `next_record_id`. - nullable: true - type: string - type: object - MonthlyCostAttributionResponse: - description: Response containing the monthly cost attribution by tag(s). - properties: - data: - description: Response containing cost attribution. - items: - $ref: '#/components/schemas/MonthlyCostAttributionBody' - type: array - meta: - $ref: '#/components/schemas/MonthlyCostAttributionMeta' - type: object - NotebookTriggerWrapper: - description: Schema for a Notebook-based trigger. - properties: - notebookTrigger: - description: Trigger a workflow from a Notebook. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - notebookTrigger - type: object - NotificationRule: - description: 'Notification rules allow full control over notifications generated - by the various Datadog security products. - - They allow users to define the conditions under which a notification should - be generated (based on rule severities, - - rule types, rule tags, and so on), and the targets to notify. - - A notification rule is composed of a rule ID, a rule type, and the rule attributes. - All fields are required. - - ' - properties: - attributes: - $ref: '#/components/schemas/NotificationRuleAttributes' - id: - $ref: '#/components/schemas/ID' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - id - - type - type: object - NotificationRuleAttributes: - description: Attributes of the notification rule. - properties: - created_at: - $ref: '#/components/schemas/Date' - created_by: - $ref: '#/components/schemas/RuleUser' - enabled: - $ref: '#/components/schemas/Enabled' - modified_at: - $ref: '#/components/schemas/Date' - modified_by: - $ref: '#/components/schemas/RuleUser' - name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - version: - $ref: '#/components/schemas/Version' - required: - - created_at - - created_by - - enabled - - modified_at - - modified_by - - name - - selectors - - targets - - version - type: object - NotificationRuleQuery: - description: The query is composed of one or several key:value pairs, which - can be used to filter security issues on tags and attributes. - example: (source:production_service OR env:prod) - type: string - NotificationRuleResponse: - description: Response object which includes a notification rule. - properties: - data: - $ref: '#/components/schemas/NotificationRule' - type: object - NotificationRulesType: - description: The rule type associated to notification rules. - enum: - - notification_rules - example: notification_rules - type: string - x-enum-varnames: - - NOTIFICATION_RULES - NotionAPIKey: - description: The definition of the `NotionAPIKey` object. - properties: - api_token: - description: The `NotionAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/NotionAPIKeyType' - required: - - type - - api_token - type: object - NotionAPIKeyType: - description: The definition of the `NotionAPIKey` object. - enum: - - NotionAPIKey - example: NotionAPIKey - type: string - x-enum-varnames: - - NOTIONAPIKEY - NotionAPIKeyUpdate: - description: The definition of the `NotionAPIKey` object. - properties: - api_token: - description: The `NotionAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/NotionAPIKeyType' - required: - - type - type: object - NotionCredentials: - description: The definition of the `NotionCredentials` object. - oneOf: - - $ref: '#/components/schemas/NotionAPIKey' - NotionCredentialsUpdate: - description: The definition of the `NotionCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/NotionAPIKeyUpdate' - NotionIntegration: - description: The definition of the `NotionIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/NotionCredentials' - type: - $ref: '#/components/schemas/NotionIntegrationType' - required: - - type - - credentials - type: object - NotionIntegrationType: - description: The definition of the `NotionIntegrationType` object. - enum: - - Notion - example: Notion - type: string - x-enum-varnames: - - NOTION - NotionIntegrationUpdate: - description: The definition of the `NotionIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/NotionCredentialsUpdate' - type: - $ref: '#/components/schemas/NotionIntegrationType' - required: - - type - type: object - NullableRelationshipToUser: - description: Relationship to user. - nullable: true - properties: - data: - $ref: '#/components/schemas/NullableRelationshipToUserData' - required: - - data - type: object - NullableRelationshipToUserData: - description: Relationship to user object. - nullable: true - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - NullableUserRelationship: - description: Relationship to user. - nullable: true - properties: - data: - $ref: '#/components/schemas/NullableUserRelationshipData' - required: - - data - type: object - NullableUserRelationshipData: - description: Relationship to user object. - nullable: true - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserResourceType' - required: - - id - - type - type: object - ObservabilityPipeline: - description: Top-level schema representing a pipeline. - properties: - data: - $ref: '#/components/schemas/ObservabilityPipelineData' - required: - - data - type: object - ObservabilityPipelineAddEnvVarsProcessor: - description: The `add_env_vars` processor adds environment variable values to - log events. - properties: - id: - description: The unique identifier for this component. Used to reference - this processor in the pipeline. - example: add-env-vars-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the input for - this processor. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorType' - variables: - description: A list of environment variable mappings to apply to log fields. - items: - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable' - type: array - required: - - id - - type - - include - - inputs - - variables - type: object - ObservabilityPipelineAddEnvVarsProcessorType: - default: add_env_vars - description: The processor type. The value should always be `add_env_vars`. - enum: - - add_env_vars - example: add_env_vars - type: string - x-enum-varnames: - - ADD_ENV_VARS - ObservabilityPipelineAddEnvVarsProcessorVariable: - description: Defines a mapping between an environment variable and a log field. - properties: - field: - description: The target field in the log event. - example: log.environment.region - type: string - name: - description: The name of the environment variable to read. - example: AWS_REGION - type: string - required: - - field - - name - type: object - ObservabilityPipelineAddFieldsProcessor: - description: The `add_fields` processor adds static key-value fields to logs. - properties: - fields: - description: A list of static fields (key-value pairs) that is added to - each log event processed by this component. - items: - $ref: '#/components/schemas/ObservabilityPipelineFieldValue' - type: array - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: add-fields-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineAddFieldsProcessorType: - default: add_fields - description: The processor type. The value should always be `add_fields`. - enum: - - add_fields - example: add_fields - type: string - x-enum-varnames: - - ADD_FIELDS - ObservabilityPipelineAmazonDataFirehoseSource: - description: The `amazon_data_firehose` source ingests logs from AWS Data Firehose. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: amazon-firehose-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSourceType' - required: - - id - - type - type: object - ObservabilityPipelineAmazonDataFirehoseSourceType: - default: amazon_data_firehose - description: The source type. The value should always be `amazon_data_firehose`. - enum: - - amazon_data_firehose - example: amazon_data_firehose - type: string - x-enum-varnames: - - AMAZON_DATA_FIREHOSE - ObservabilityPipelineAmazonOpenSearchDestination: - description: The `amazon_opensearch` destination writes logs to Amazon OpenSearch. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuth' - bulk_index: - description: The index to write logs to. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: elasticsearch-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationType' - required: - - id - - type - - inputs - - auth - type: object - ObservabilityPipelineAmazonOpenSearchDestinationAuth: - description: 'Authentication settings for the Amazon OpenSearch destination. - - The `strategy` field determines whether basic or AWS-based authentication - is used. - - ' - properties: - assume_role: - description: The ARN of the role to assume (used with `aws` strategy). - type: string - aws_region: - description: AWS region - type: string - external_id: - description: External ID for the assumed role (used with `aws` strategy). - type: string - session_name: - description: Session name for the assumed role (used with `aws` strategy). - type: string - strategy: - $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy' - required: - - strategy - type: object - ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy: - description: The authentication strategy to use. - enum: - - basic - - aws - example: aws - type: string - x-enum-varnames: - - BASIC - - AWS - ObservabilityPipelineAmazonOpenSearchDestinationType: - default: amazon_opensearch - description: The destination type. The value should always be `amazon_opensearch`. - enum: - - amazon_opensearch - example: amazon_opensearch - type: string - x-enum-varnames: - - AMAZON_OPENSEARCH - ObservabilityPipelineAmazonS3Destination: - description: The `amazon_s3` destination sends your logs in Datadog-rehydratable - format to an Amazon S3 bucket for archiving. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - bucket: - description: S3 bucket name. - example: error-logs - type: string - id: - description: Unique identifier for the destination component. - example: amazon-s3-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - key_prefix: - description: Optional prefix for object keys. - type: string - region: - description: AWS region of the S3 bucket. - example: us-east-1 - type: string - storage_class: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationType' - required: - - id - - type - - inputs - - bucket - - region - - storage_class - type: object - ObservabilityPipelineAmazonS3DestinationStorageClass: - description: S3 storage class. - enum: - - STANDARD - - REDUCED_REDUNDANCY - - INTELLIGENT_TIERING - - STANDARD_IA - - EXPRESS_ONEZONE - - ONEZONE_IA - - GLACIER - - GLACIER_IR - - DEEP_ARCHIVE - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - REDUCED_REDUNDANCY - - INTELLIGENT_TIERING - - STANDARD_IA - - EXPRESS_ONEZONE - - ONEZONE_IA - - GLACIER - - GLACIER_IR - - DEEP_ARCHIVE - ObservabilityPipelineAmazonS3DestinationType: - default: amazon_s3 - description: The destination type. Always `amazon_s3`. - enum: - - amazon_s3 - example: amazon_s3 - type: string - x-enum-varnames: - - AMAZON_S3 - ObservabilityPipelineAmazonS3Source: - description: 'The `amazon_s3` source ingests logs from an Amazon S3 bucket. - - It supports AWS authentication and TLS encryption. - - ' - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: aws-s3-source - type: string - region: - description: AWS region where the S3 bucket resides. - example: us-east-1 - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceType' - required: - - id - - type - - region - type: object - ObservabilityPipelineAmazonS3SourceType: - default: amazon_s3 - description: The source type. Always `amazon_s3`. - enum: - - amazon_s3 - example: amazon_s3 - type: string - x-enum-varnames: - - AMAZON_S3 - ObservabilityPipelineAmazonSecurityLakeDestination: - description: 'The `amazon_security_lake` destination sends your logs to Amazon - Security Lake. - - ' - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - bucket: - description: Name of the Amazon S3 bucket in Security Lake (3-63 characters). - example: security-lake-bucket - type: string - custom_source_name: - description: Custom source name for the logs in Security Lake. - example: my-custom-source - type: string - id: - description: Unique identifier for the destination component. - example: amazon-security-lake-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - region: - description: AWS region of the S3 bucket. - example: us-east-1 - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestinationType' - required: - - id - - type - - inputs - - bucket - - region - - custom_source_name - type: object - ObservabilityPipelineAmazonSecurityLakeDestinationType: - default: amazon_security_lake - description: The destination type. Always `amazon_security_lake`. - enum: - - amazon_security_lake - example: amazon_security_lake - type: string - x-enum-varnames: - - AMAZON_SECURITY_LAKE - ObservabilityPipelineAwsAuth: - description: "AWS authentication credentials used for accessing AWS services - such as S3.\nIf omitted, the system\u2019s default credentials are used (for - example, the IAM role and environment variables).\n" - properties: - assume_role: - description: The Amazon Resource Name (ARN) of the role to assume. - type: string - external_id: - description: A unique identifier for cross-account role assumption. - type: string - session_name: - description: A session identifier used for logging and tracing the assumed - role session. - type: string - type: object - ObservabilityPipelineConfig: - description: Specifies the pipeline's configuration, including its sources, - processors, and destinations. - properties: - destinations: - description: A list of destination components where processed logs are sent. - example: - - id: datadog-logs-destination - inputs: - - filter-processor - type: datadog_logs - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigDestinationItem' - type: array - processors: - description: A list of processors that transform or enrich log data. - example: - - id: filter-processor - include: service:my-service - inputs: - - datadog-agent-source - type: filter - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigProcessorItem' - type: array - sources: - description: A list of configured data sources for the pipeline. - example: - - id: datadog-agent-source - type: datadog_agent - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigSourceItem' - type: array - required: - - sources - - destinations - type: object - ObservabilityPipelineConfigDestinationItem: - description: A destination for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestination' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3Destination' - - $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestination' - - $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestination' - - $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestination' - - $ref: '#/components/schemas/AzureStorageDestination' - - $ref: '#/components/schemas/MicrosoftSentinelDestination' - - $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestination' - - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestination' - - $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestination' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSocketDestination' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestination' - - $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestination' - ObservabilityPipelineConfigProcessorItem: - description: A processor for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineFilterProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineGenerateMetricsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineSampleProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessor' - ObservabilityPipelineConfigSourceItem: - description: A data source for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineKafkaSource' - - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSource' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSource' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSource' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3Source' - - $ref: '#/components/schemas/ObservabilityPipelineFluentdSource' - - $ref: '#/components/schemas/ObservabilityPipelineFluentBitSource' - - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSource' - - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSource' - - $ref: '#/components/schemas/ObservabilityPipelineRsyslogSource' - - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSource' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSource' - - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSource' - - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSource' - - $ref: '#/components/schemas/ObservabilityPipelineLogstashSource' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSource' - ObservabilityPipelineCrowdStrikeNextGenSiemDestination: - description: The `crowdstrike_next_gen_siem` destination forwards logs to CrowdStrike - Next Gen SIEM. - properties: - compression: - $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression' - encoding: - $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding' - id: - description: The unique identifier for this component. - example: crowdstrike-ngsiem-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType' - required: - - id - - type - - inputs - - encoding - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression: - description: Compression configuration for log events. - properties: - algorithm: - $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm' - level: - description: Compression level. - example: 6 - format: int64 - type: integer - required: - - algorithm - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm: - description: Compression algorithm for log events. - enum: - - gzip - - zlib - example: gzip - type: string - x-enum-varnames: - - GZIP - - ZLIB - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType: - default: crowdstrike_next_gen_siem - description: The destination type. The value should always be `crowdstrike_next_gen_siem`. - enum: - - crowdstrike_next_gen_siem - example: crowdstrike_next_gen_siem - type: string - x-enum-varnames: - - CROWDSTRIKE_NEXT_GEN_SIEM - ObservabilityPipelineCustomProcessor: - description: The `custom_processor` processor transforms events using [Vector - Remap Language (VRL)](https://vector.dev/docs/reference/vrl/) scripts with - advanced filtering capabilities. - properties: - id: - description: The unique identifier for this processor. - example: remap-vrl-processor - type: string - include: - default: '*' - description: A Datadog search query used to determine which logs this processor - targets. This field should always be set to `*` for the custom_processor - processor. - example: '*' - type: string - inputs: - description: A list of component IDs whose output is used as the input for - this processor. - example: - - datadog-agent-source - items: - type: string - type: array - remaps: - description: Array of VRL remap rules. - items: - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorRemap' - minItems: 1 - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorType' - required: - - id - - type - - include - - remaps - - inputs - type: object - ObservabilityPipelineCustomProcessorRemap: - description: Defines a single VRL remap rule with its own filtering and transformation - logic. - properties: - drop_on_error: - description: Whether to drop events that caused errors during processing. - example: false - type: boolean - enabled: - description: Whether this remap rule is enabled. - example: true - type: boolean - include: - description: A Datadog search query used to filter events for this specific - remap rule. - example: service:web - type: string - name: - description: A descriptive name for this remap rule. - example: Parse JSON from message field - type: string - source: - description: The VRL script source code that defines the processing logic. - example: . = parse_json!(.message) - type: string - required: - - include - - name - - source - - enabled - - drop_on_error - type: object - ObservabilityPipelineCustomProcessorType: - default: custom_processor - description: The processor type. The value should always be `custom_processor`. - enum: - - custom_processor - example: custom_processor - type: string - x-enum-varnames: - - CUSTOM_PROCESSOR - ObservabilityPipelineData: - description: "Contains the pipeline\u2019s ID, type, and configuration attributes." - properties: - attributes: - $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' - id: - description: Unique identifier for the pipeline. - example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 - type: string - type: - default: pipelines - description: The resource type identifier. For pipeline resources, this - should always be set to `pipelines`. - example: pipelines - type: string - required: - - id - - type - - attributes - type: object - ObservabilityPipelineDataAttributes: - description: "Defines the pipeline\u2019s name and its components (sources, - processors, and destinations)." - properties: - config: - $ref: '#/components/schemas/ObservabilityPipelineConfig' - name: - description: Name of the pipeline. - example: Main Observability Pipeline - type: string - required: - - name - - config - type: object - ObservabilityPipelineDatadogAgentSource: - description: The `datadog_agent` source collects logs from the Datadog Agent. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: datadog-agent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSourceType' - required: - - id - - type - type: object - ObservabilityPipelineDatadogAgentSourceType: - default: datadog_agent - description: The source type. The value should always be `datadog_agent`. - enum: - - datadog_agent - example: datadog_agent - type: string - x-enum-varnames: - - DATADOG_AGENT - ObservabilityPipelineDatadogLogsDestination: - description: The `datadog_logs` destination forwards logs to Datadog Log Management. - properties: - id: - description: The unique identifier for this component. - example: datadog-logs-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineDatadogLogsDestinationType: - default: datadog_logs - description: The destination type. The value should always be `datadog_logs`. - enum: - - datadog_logs - example: datadog_logs - type: string - x-enum-varnames: - - DATADOG_LOGS - ObservabilityPipelineDatadogTagsProcessor: - description: The `datadog_tags` processor includes or excludes specific Datadog - tags in your logs. - properties: - action: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorAction' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: datadog-tags-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - keys: - description: A list of tag keys. - example: - - env - - service - - version - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorMode' - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorType' - required: - - id - - type - - include - - mode - - action - - keys - - inputs - type: object - ObservabilityPipelineDatadogTagsProcessorAction: - description: The action to take on tags with matching keys. - enum: - - include - - exclude - example: include - type: string - x-enum-varnames: - - INCLUDE - - EXCLUDE - ObservabilityPipelineDatadogTagsProcessorMode: - description: The processing mode. - enum: - - filter - example: filter - type: string - x-enum-varnames: - - FILTER - ObservabilityPipelineDatadogTagsProcessorType: - default: datadog_tags - description: The processor type. The value should always be `datadog_tags`. - enum: - - datadog_tags - example: datadog_tags - type: string - x-enum-varnames: - - DATADOG_TAGS - ObservabilityPipelineDecoding: - description: The decoding format used to interpret incoming logs. - enum: - - bytes - - gelf - - json - - syslog - example: json - type: string - x-enum-varnames: - - DECODE_BYTES - - DECODE_GELF - - DECODE_JSON - - DECODE_SYSLOG - ObservabilityPipelineDedupeProcessor: - description: The `dedupe` processor removes duplicate fields in log events. - properties: - fields: - description: A list of log field paths to check for duplicates. - example: - - log.message - - log.error - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: dedupe-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the input for - this processor. - example: - - parse-json-processor - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorMode' - type: - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorType' - required: - - id - - type - - include - - inputs - - fields - - mode - type: object - ObservabilityPipelineDedupeProcessorMode: - description: The deduplication mode to apply to the fields. - enum: - - match - - ignore - example: match - type: string - x-enum-varnames: - - MATCH - - IGNORE - ObservabilityPipelineDedupeProcessorType: - default: dedupe - description: The processor type. The value should always be `dedupe`. - enum: - - dedupe - example: dedupe - type: string - x-enum-varnames: - - DEDUPE - ObservabilityPipelineElasticsearchDestination: - description: The `elasticsearch` destination writes logs to an Elasticsearch - cluster. - properties: - api_version: - $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion' - bulk_index: - description: The index to write logs to in Elasticsearch. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: elasticsearch-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineElasticsearchDestinationApiVersion: - description: The Elasticsearch API version to use. Set to `auto` to auto-detect. - enum: - - auto - - v6 - - v7 - - v8 - example: auto - type: string - x-enum-varnames: - - AUTO - - V6 - - V7 - - V8 - ObservabilityPipelineElasticsearchDestinationType: - default: elasticsearch - description: The destination type. The value should always be `elasticsearch`. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - ObservabilityPipelineEnrichmentTableFile: - description: Defines a static enrichment table loaded from a CSV file. - properties: - encoding: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncoding' - key: - description: Key fields used to look up enrichment values. - items: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItems' - type: array - path: - description: Path to the CSV file. - example: /etc/enrichment/lookup.csv - type: string - schema: - description: Schema defining column names and their types. - items: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItems' - type: array - required: - - encoding - - key - - path - - schema - type: object - ObservabilityPipelineEnrichmentTableFileEncoding: - description: File encoding format. - properties: - delimiter: - description: The `encoding` `delimiter`. - example: ',' - type: string - includes_headers: - description: The `encoding` `includes_headers`. - example: true - type: boolean - type: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncodingType' - required: - - type - - delimiter - - includes_headers - type: object - ObservabilityPipelineEnrichmentTableFileEncodingType: - description: Specifies the encoding format (e.g., CSV) used for enrichment tables. - enum: - - csv - example: csv - type: string - x-enum-varnames: - - CSV - ObservabilityPipelineEnrichmentTableFileKeyItems: - description: Defines how to map log fields to enrichment table columns during - lookups. - properties: - column: - description: The `items` `column`. - example: user_id - type: string - comparison: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison' - field: - description: The `items` `field`. - example: log.user.id - type: string - required: - - column - - comparison - - field - type: object - ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: - description: Defines how to compare key fields for enrichment table lookups. - enum: - - equals - example: equals - type: string - x-enum-varnames: - - EQUALS - ObservabilityPipelineEnrichmentTableFileSchemaItems: - description: Describes a single column and its type in an enrichment table schema. - properties: - column: - description: The `items` `column`. - example: region - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItemsType' - required: - - column - - type - type: object - ObservabilityPipelineEnrichmentTableFileSchemaItemsType: - description: Declares allowed data types for enrichment table columns. - enum: - - string - - boolean - - integer - - float - - date - - timestamp - example: string - type: string - x-enum-varnames: - - STRING - - BOOLEAN - - INTEGER - - FLOAT - - DATE - - TIMESTAMP - ObservabilityPipelineEnrichmentTableGeoIp: - description: Uses a GeoIP database to enrich logs based on an IP field. - properties: - key_field: - description: Path to the IP field in the log. - example: log.source.ip - type: string - locale: - description: Locale used to resolve geographical names. - example: en - type: string - path: - description: Path to the GeoIP database file. - example: /etc/geoip/GeoLite2-City.mmdb - type: string - required: - - key_field - - locale - - path - type: object - ObservabilityPipelineEnrichmentTableProcessor: - description: The `enrichment_table` processor enriches logs using a static CSV - file or GeoIP database. - properties: - file: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFile' - geoip: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp' - id: - description: The unique identifier for this processor. - example: enrichment-table-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: source:my-source - type: string - inputs: - description: A list of component IDs whose output is used as the input for - this processor. - example: - - add-fields-processor - items: - type: string - type: array - target: - description: Path where enrichment results should be stored in the log. - example: enriched.geoip - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessorType' - required: - - id - - type - - include - - inputs - - target - type: object - ObservabilityPipelineEnrichmentTableProcessorType: - default: enrichment_table - description: The processor type. The value should always be `enrichment_table`. - enum: - - enrichment_table - example: enrichment_table - type: string - x-enum-varnames: - - ENRICHMENT_TABLE - ObservabilityPipelineFieldValue: - description: Represents a static key-value pair used in various processors. - properties: - name: - description: The field name. - example: field_name - type: string - value: - description: The field value. - example: field_value - type: string - required: - - name - - value - type: object - ObservabilityPipelineFilterProcessor: - description: The `filter` processor allows conditional processing of logs based - on a Datadog search query. Logs that match the `include` query are passed - through; others are discarded. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: filter-processor - type: string - include: - description: A Datadog search query used to determine which logs should - pass through the filter. Logs that match this query continue to downstream - components; others are dropped. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineFilterProcessorType' - required: - - id - - type - - include - - inputs - type: object - ObservabilityPipelineFilterProcessorType: - default: filter - description: The processor type. The value should always be `filter`. - enum: - - filter - example: filter - type: string - x-enum-varnames: - - FILTER - ObservabilityPipelineFluentBitSource: - description: The `fluent_bit` source ingests logs from Fluent Bit. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: fluent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineFluentBitSourceType' - required: - - id - - type - type: object - ObservabilityPipelineFluentBitSourceType: - default: fluent_bit - description: The source type. The value should always be `fluent_bit`. - enum: - - fluent_bit - example: fluent_bit - type: string - x-enum-varnames: - - FLUENT_BIT - ObservabilityPipelineFluentdSource: - description: The `fluentd` source ingests logs from a Fluentd-compatible service. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: fluent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineFluentdSourceType' - required: - - id - - type - type: object - ObservabilityPipelineFluentdSourceType: - default: fluentd - description: The source type. The value should always be `fluentd. - enum: - - fluentd - example: fluentd - type: string - x-enum-varnames: - - FLUENTD - ObservabilityPipelineGcpAuth: - description: 'GCP credentials used to authenticate with Google Cloud Storage. - - ' - properties: - credentials_file: - description: Path to the GCP service account key file. - example: /var/secrets/gcp-credentials.json - type: string - required: - - credentials_file - type: object - ObservabilityPipelineGenerateMetricsProcessor: - description: 'The `generate_datadog_metrics` processor creates custom metrics - from logs and sends them to Datadog. - - Metrics can be counters, gauges, or distributions and optionally grouped by - log fields. - - ' - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline. - example: generate-metrics-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this processor. - example: - - source-id - items: - type: string - type: array - metrics: - description: Configuration for generating individual metrics. - items: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetric' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineGenerateMetricsProcessorType' - required: - - id - - type - - inputs - - include - - metrics - type: object - ObservabilityPipelineGenerateMetricsProcessorType: - default: generate_datadog_metrics - description: The processor type. Always `generate_datadog_metrics`. - enum: - - generate_datadog_metrics - example: generate_datadog_metrics - type: string - x-enum-varnames: - - GENERATE_DATADOG_METRICS - ObservabilityPipelineGeneratedMetric: - description: 'Defines a log-based custom metric, including its name, type, filter, - value computation strategy, - - and optional grouping fields. - - ' - properties: - group_by: - description: Optional fields used to group the metric series. - example: - - service - - env - items: - type: string - type: array - include: - description: Datadog filter query to match logs for metric generation. - example: service:billing - type: string - metric_type: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricMetricType' - name: - description: Name of the custom metric to be created. - example: logs.processed - type: string - value: - $ref: '#/components/schemas/ObservabilityPipelineMetricValue' - required: - - name - - include - - metric_type - - value - type: object - ObservabilityPipelineGeneratedMetricIncrementByField: - description: Strategy that increments a generated metric based on the value - of a log field. - properties: - field: - description: Name of the log field containing the numeric value to increment - the metric by. - example: errors - type: string - strategy: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy' - required: - - strategy - - field - type: object - ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy: - description: Uses a numeric field in the log event as the metric increment. - enum: - - increment_by_field - example: increment_by_field - type: string - x-enum-varnames: - - INCREMENT_BY_FIELD - ObservabilityPipelineGeneratedMetricIncrementByOne: - description: Strategy that increments a generated metric by one for each matching - event. - properties: - strategy: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOneStrategy' - required: - - strategy - type: object - ObservabilityPipelineGeneratedMetricIncrementByOneStrategy: - description: Increments the metric by 1 for each matching event. - enum: - - increment_by_one - example: increment_by_one - type: string - x-enum-varnames: - - INCREMENT_BY_ONE - ObservabilityPipelineGeneratedMetricMetricType: - description: Type of metric to create. - enum: - - count - - gauge - - distribution - example: count - type: string - x-enum-varnames: - - COUNT - - GAUGE - - DISTRIBUTION - ObservabilityPipelineGoogleChronicleDestination: - description: The `google_chronicle` destination sends logs to Google Chronicle. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - customer_id: - description: The Google Chronicle customer ID. - example: abcdefg123456789 - type: string - encoding: - $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding' - id: - description: The unique identifier for this component. - example: google-chronicle-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - parse-json-processor - items: - type: string - type: array - log_type: - description: The log type metadata associated with the Chronicle destination. - example: nginx_logs - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationType' - required: - - id - - type - - inputs - - auth - - customer_id - type: object - ObservabilityPipelineGoogleChronicleDestinationEncoding: - description: The encoding format for the logs sent to Chronicle. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineGoogleChronicleDestinationType: - default: google_chronicle - description: The destination type. The value should always be `google_chronicle`. - enum: - - google_chronicle - example: google_chronicle - type: string - x-enum-varnames: - - GOOGLE_CHRONICLE - ObservabilityPipelineGoogleCloudStorageDestination: - description: 'The `google_cloud_storage` destination stores logs in a Google - Cloud Storage (GCS) bucket. - - It requires a bucket name, GCP authentication, and metadata fields. - - ' - properties: - acl: - $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationAcl' - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - bucket: - description: Name of the GCS bucket. - example: error-logs - type: string - id: - description: Unique identifier for the destination component. - example: gcs-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - key_prefix: - description: Optional prefix for object keys within the GCS bucket. - type: string - metadata: - description: Custom metadata to attach to each object uploaded to the GCS - bucket. - items: - $ref: '#/components/schemas/ObservabilityPipelineMetadataEntry' - type: array - storage_class: - $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationStorageClass' - type: - $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationType' - required: - - id - - type - - inputs - - bucket - - auth - - storage_class - - acl - type: object - ObservabilityPipelineGoogleCloudStorageDestinationAcl: - description: Access control list setting for objects written to the bucket. - enum: - - private - - project-private - - public-read - - authenticated-read - - bucket-owner-read - - bucket-owner-full-control - example: private - type: string - x-enum-varnames: - - PRIVATE - - PROJECTNOT_PRIVATE - - PUBLICNOT_READ - - AUTHENTICATEDNOT_READ - - BUCKETNOT_OWNERNOT_READ - - BUCKETNOT_OWNERNOT_FULLNOT_CONTROL - ObservabilityPipelineGoogleCloudStorageDestinationStorageClass: - description: Storage class used for objects stored in GCS. - enum: - - STANDARD - - NEARLINE - - COLDLINE - - ARCHIVE - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - NEARLINE - - COLDLINE - - ARCHIVE - ObservabilityPipelineGoogleCloudStorageDestinationType: - default: google_cloud_storage - description: The destination type. Always `google_cloud_storage`. - enum: - - google_cloud_storage - example: google_cloud_storage - type: string - x-enum-varnames: - - GOOGLE_CLOUD_STORAGE - ObservabilityPipelineGooglePubSubSource: - description: The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub - subscription. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: google-pubsub-source - type: string - project: - description: The GCP project ID that owns the Pub/Sub subscription. - example: my-gcp-project - type: string - subscription: - description: The Pub/Sub subscription name from which messages are consumed. - example: logs-subscription - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSourceType' - required: - - id - - type - - auth - - decoding - - project - - subscription - type: object - ObservabilityPipelineGooglePubSubSourceType: - default: google_pubsub - description: The source type. The value should always be `google_pubsub`. - enum: - - google_pubsub - example: google_pubsub - type: string - x-enum-varnames: - - GOOGLE_PUBSUB - ObservabilityPipelineHttpClientSource: - description: The `http_client` source scrapes logs from HTTP endpoints at regular - intervals. - properties: - auth_strategy: - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy' - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: http-client-source - type: string - scrape_interval_secs: - description: The interval (in seconds) between HTTP scrape requests. - example: 60 - format: int64 - type: integer - scrape_timeout_secs: - description: The timeout (in seconds) for each scrape request. - example: 10 - format: int64 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceType' - required: - - id - - type - - decoding - type: object - ObservabilityPipelineHttpClientSourceAuthStrategy: - description: Optional authentication strategy for HTTP requests. - enum: - - basic - - bearer - example: basic - type: string - x-enum-varnames: - - BASIC - - BEARER - ObservabilityPipelineHttpClientSourceType: - default: http_client - description: The source type. The value should always be `http_client`. - enum: - - http_client - example: http_client - type: string - x-enum-varnames: - - HTTP_CLIENT - ObservabilityPipelineHttpServerSource: - description: The `http_server` source collects logs over HTTP POST from external - services. - properties: - auth_strategy: - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceAuthStrategy' - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: Unique ID for the HTTP server source. - example: http-server-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceType' - required: - - id - - type - - auth_strategy - - decoding - type: object - ObservabilityPipelineHttpServerSourceAuthStrategy: - description: HTTP authentication method. - enum: - - none - - plain - example: plain - type: string - x-enum-varnames: - - NONE - - PLAIN - ObservabilityPipelineHttpServerSourceType: - default: http_server - description: The source type. The value should always be `http_server`. - enum: - - http_server - example: http_server - type: string - x-enum-varnames: - - HTTP_SERVER - ObservabilityPipelineKafkaSource: - description: The `kafka` source ingests data from Apache Kafka topics. - properties: - group_id: - description: Consumer group ID used by the Kafka client. - example: consumer-group-0 - type: string - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: kafka-source - type: string - librdkafka_options: - description: Optional list of advanced Kafka client configuration options, - defined as key-value pairs. - items: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceLibrdkafkaOption' - type: array - sasl: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceSasl' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - topics: - description: A list of Kafka topic names to subscribe to. The source ingests - messages from each topic specified. - example: - - topic1 - - topic2 - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceType' - required: - - id - - type - - group_id - - topics - type: object - ObservabilityPipelineKafkaSourceLibrdkafkaOption: - description: Represents a key-value pair used to configure low-level `librdkafka` - client options for Kafka sources, such as timeouts, buffer sizes, and security - settings. - properties: - name: - description: The name of the `librdkafka` configuration option to set. - example: fetch.message.max.bytes - type: string - value: - description: The value assigned to the specified `librdkafka` configuration - option. - example: '1048576' - type: string - required: - - name - - value - type: object - ObservabilityPipelineKafkaSourceSasl: - description: Specifies the SASL mechanism for authenticating with a Kafka cluster. - properties: - mechanism: - $ref: '#/components/schemas/ObservabilityPipelinePipelineKafkaSourceSaslMechanism' - type: object - ObservabilityPipelineKafkaSourceType: - default: kafka - description: The source type. The value should always be `kafka`. - enum: - - kafka - example: kafka - type: string - x-enum-varnames: - - KAFKA - ObservabilityPipelineLogstashSource: - description: The `logstash` source ingests logs from a Logstash forwarder. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: logstash-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineLogstashSourceType' - required: - - id - - type - type: object - ObservabilityPipelineLogstashSourceType: - default: logstash - description: The source type. The value should always be `logstash`. - enum: - - logstash - example: logstash - type: string - x-enum-varnames: - - LOGSTASH - ObservabilityPipelineMetadataEntry: - description: A custom metadata entry. - properties: - name: - description: The metadata key. - example: environment - type: string - value: - description: The metadata value. - example: production - type: string - required: - - name - - value - type: object - ObservabilityPipelineMetricValue: - description: Specifies how the value of the generated metric is computed. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOne' - - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByField' - ObservabilityPipelineNewRelicDestination: - description: The `new_relic` destination sends logs to the New Relic platform. - properties: - id: - description: The unique identifier for this component. - example: new-relic-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - parse-json-processor - items: - type: string - type: array - region: - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion' - type: - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationType' - required: - - id - - type - - inputs - - region - type: object - ObservabilityPipelineNewRelicDestinationRegion: - description: The New Relic region. - enum: - - us - - eu - example: us - type: string - x-enum-varnames: - - US - - EU - ObservabilityPipelineNewRelicDestinationType: - default: new_relic - description: The destination type. The value should always be `new_relic`. - enum: - - new_relic - example: new_relic - type: string - x-enum-varnames: - - NEW_RELIC - ObservabilityPipelineOcsfMapperProcessor: - description: The `ocsf_mapper` processor transforms logs into the OCSF schema - using a predefined mapping configuration. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline. - example: ocsf-mapper-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this processor. - example: - - filter-processor - items: - type: string - type: array - mappings: - description: A list of mapping rules to convert events to the OCSF format. - items: - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorType' - required: - - id - - type - - include - - inputs - - mappings - type: object - ObservabilityPipelineOcsfMapperProcessorMapping: - description: Defines how specific events are transformed to OCSF using a mapping - configuration. - properties: - include: - description: A Datadog search query used to select the logs that this mapping - should apply to. - example: service:my-service - type: string - mapping: - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMappingMapping' - required: - - include - - mapping - type: object - ObservabilityPipelineOcsfMapperProcessorMappingMapping: - description: Defines a single mapping rule for transforming logs into the OCSF - schema. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingLibrary' - ObservabilityPipelineOcsfMapperProcessorType: - default: ocsf_mapper - description: The processor type. The value should always be `ocsf_mapper`. - enum: - - ocsf_mapper - example: ocsf_mapper - type: string - x-enum-varnames: - - OCSF_MAPPER - ObservabilityPipelineOcsfMappingLibrary: - description: Predefined library mappings for common log formats. - enum: - - CloudTrail Account Change - - GCP Cloud Audit CreateBucket - - GCP Cloud Audit CreateSink - - GCP Cloud Audit SetIamPolicy - - GCP Cloud Audit UpdateSink - - Github Audit Log API Activity - - Google Workspace Admin Audit addPrivilege - - Microsoft 365 Defender Incident - - Microsoft 365 Defender UserLoggedIn - - Okta System Log Authentication - - Palo Alto Networks Firewall Traffic - example: CloudTrail Account Change - type: string - x-enum-varnames: - - CLOUDTRAIL_ACCOUNT_CHANGE - - GCP_CLOUD_AUDIT_CREATEBUCKET - - GCP_CLOUD_AUDIT_CREATESINK - - GCP_CLOUD_AUDIT_SETIAMPOLICY - - GCP_CLOUD_AUDIT_UPDATESINK - - GITHUB_AUDIT_LOG_API_ACTIVITY - - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE - - MICROSOFT_365_DEFENDER_INCIDENT - - MICROSOFT_365_DEFENDER_USERLOGGEDIN - - OKTA_SYSTEM_LOG_AUTHENTICATION - - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC - ObservabilityPipelineOpenSearchDestination: - description: The `opensearch` destination writes logs to an OpenSearch cluster. - properties: - bulk_index: - description: The index to write logs to. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: opensearch-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineOpenSearchDestinationType: - default: opensearch - description: The destination type. The value should always be `opensearch`. - enum: - - opensearch - example: opensearch - type: string - x-enum-varnames: - - OPENSEARCH - ObservabilityPipelineParseGrokProcessor: - description: The `parse_grok` processor extracts structured fields from unstructured - log messages using Grok patterns. - properties: - disable_library_rules: - default: false - description: If set to `true`, disables the default Grok rules provided - by Datadog. - example: true - type: boolean - id: - description: A unique identifier for this processor. - example: parse-grok-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - rules: - description: The list of Grok parsing rules. If multiple matching rules - are provided, they are evaluated in order. The first successful match - is applied. - items: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRule' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorType' - required: - - id - - type - - include - - inputs - - rules - type: object - ObservabilityPipelineParseGrokProcessorRule: - description: 'A Grok parsing rule used in the `parse_grok` processor. Each rule - defines how to extract structured fields - - from a specific log field using Grok patterns. - - ' - properties: - match_rules: - description: 'A list of Grok parsing rules that define how to extract fields - from the source field. - - Each rule must contain a name and a valid Grok pattern. - - ' - example: - - name: MyParsingRule - rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' - items: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule' - type: array - source: - description: The name of the field in the log event to apply the Grok rules - to. - example: message - type: string - support_rules: - description: 'A list of Grok helper rules that can be referenced by the - parsing rules. - - ' - example: - - name: user - rule: '%{word:user.name}' - items: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule' - type: array - required: - - source - - match_rules - type: object - ObservabilityPipelineParseGrokProcessorRuleMatchRule: - description: 'Defines a Grok parsing rule, which extracts structured fields - from log content using named Grok patterns. - - Each rule must have a unique name and a valid Datadog Grok pattern that will - be applied to the source field. - - ' - properties: - name: - description: The name of the rule. - example: MyParsingRule - type: string - rule: - description: The definition of the Grok rule. - example: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' - type: string - required: - - name - - rule - type: object - ObservabilityPipelineParseGrokProcessorRuleSupportRule: - description: The Grok helper rule referenced in the parsing rules. - properties: - name: - description: The name of the Grok helper rule. - example: user - type: string - rule: - description: The definition of the Grok helper rule. - example: ' %{word:user.name}' - type: string - required: - - name - - rule - type: object - ObservabilityPipelineParseGrokProcessorType: - default: parse_grok - description: The processor type. The value should always be `parse_grok`. - enum: - - parse_grok - example: parse_grok - type: string - x-enum-varnames: - - PARSE_GROK - ObservabilityPipelineParseJSONProcessor: - description: The `parse_json` processor extracts JSON from a specified field - and flattens it into the event. This is useful when logs contain embedded - JSON as a string. - properties: - field: - description: The name of the log field that contains a JSON string. - example: message - type: string - id: - description: A unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to downstream - components). - example: parse-json-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessorType' - required: - - id - - type - - include - - field - - inputs - type: object - ObservabilityPipelineParseJSONProcessorType: - default: parse_json - description: The processor type. The value should always be `parse_json`. - enum: - - parse_json - example: parse_json - type: string - x-enum-varnames: - - PARSE_JSON - ObservabilityPipelinePipelineKafkaSourceSaslMechanism: - description: SASL mechanism used for Kafka authentication. - enum: - - PLAIN - - SCRAM-SHA-256 - - SCRAM-SHA-512 - type: string - x-enum-varnames: - - PLAIN - - SCRAMNOT_SHANOT_256 - - SCRAMNOT_SHANOT_512 - ObservabilityPipelineQuotaProcessor: - description: The Quota Processor measures logging traffic for logs that match - a specified filter. When the configured daily quota is met, the processor - can drop or alert. - properties: - drop_events: - description: If set to `true`, logs that matched the quota filter and sent - after the quota has been met are dropped; only logs that did not match - the filter query continue through the pipeline. - example: false - type: boolean - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: quota-processor - type: string - ignore_when_missing_partitions: - description: If `true`, the processor skips quota checks when partition - fields are missing from the logs. - type: boolean - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - limit: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' - name: - description: Name of the quota. - example: MyQuota - type: string - overflow_action: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction' - overrides: - description: A list of alternate quota rules that apply to specific sets - of events, identified by matching field values. Each override can define - a custom limit. - items: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverride' - type: array - partition_fields: - description: A list of fields used to segment log traffic for quota enforcement. - Quotas are tracked independently by unique combinations of these field - values. - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorType' - required: - - id - - type - - include - - name - - drop_events - - limit - - inputs - type: object - ObservabilityPipelineQuotaProcessorLimit: - description: The maximum amount of data or number of events allowed before the - quota is enforced. Can be specified in bytes or events. - properties: - enforce: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimitEnforceType' - limit: - description: The limit for quota enforcement. - example: 1000 - format: int64 - type: integer - required: - - enforce - - limit - type: object - ObservabilityPipelineQuotaProcessorLimitEnforceType: - description: Unit for quota enforcement in bytes for data size or events for - count. - enum: - - bytes - - events - example: bytes - type: string - x-enum-varnames: - - BYTES - - EVENTS - ObservabilityPipelineQuotaProcessorOverflowAction: - description: 'The action to take when the quota is exceeded. Options: - - - `drop`: Drop the event. - - - `no_action`: Let the event pass through. - - - `overflow_routing`: Route to an overflow destination. - - ' - enum: - - drop - - no_action - - overflow_routing - example: drop - type: string - x-enum-varnames: - - DROP - - NO_ACTION - - OVERFLOW_ROUTING - ObservabilityPipelineQuotaProcessorOverride: - description: Defines a custom quota limit that applies to specific log events - based on matching field values. - properties: - fields: - description: A list of field matchers used to apply a specific override. - If an event matches all listed key-value pairs, the corresponding override - limit is enforced. - items: - $ref: '#/components/schemas/ObservabilityPipelineFieldValue' - type: array - limit: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' - required: - - fields - - limit - type: object - ObservabilityPipelineQuotaProcessorType: - default: quota - description: The processor type. The value should always be `quota`. - enum: - - quota - example: quota - type: string - x-enum-varnames: - - QUOTA - ObservabilityPipelineReduceProcessor: - description: The `reduce` processor aggregates and merges logs based on matching - keys and merge strategies. - properties: - group_by: - description: A list of fields used to group log events for merging. - example: - - log.user.id - - log.device.id - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: reduce-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: env:prod - type: string - inputs: - description: A list of component IDs whose output is used as the input for - this processor. - example: - - parse-json-processor - items: - type: string - type: array - merge_strategies: - description: List of merge strategies defining how values from grouped events - should be combined. - items: - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorType' - required: - - id - - type - - include - - inputs - - group_by - - merge_strategies - type: object - ObservabilityPipelineReduceProcessorMergeStrategy: - description: Defines how a specific field should be merged across grouped events. - properties: - path: - description: The field path in the log event. - example: log.user.roles - type: string - strategy: - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategyStrategy' - required: - - path - - strategy - type: object - ObservabilityPipelineReduceProcessorMergeStrategyStrategy: - description: The merge strategy to apply. - enum: - - discard - - retain - - sum - - max - - min - - array - - concat - - concat_newline - - concat_raw - - shortest_array - - longest_array - - flat_unique - example: flat_unique - type: string - x-enum-varnames: - - DISCARD - - RETAIN - - SUM - - MAX - - MIN - - ARRAY - - CONCAT - - CONCAT_NEWLINE - - CONCAT_RAW - - SHORTEST_ARRAY - - LONGEST_ARRAY - - FLAT_UNIQUE - ObservabilityPipelineReduceProcessorType: - default: reduce - description: The processor type. The value should always be `reduce`. - enum: - - reduce - example: reduce - type: string - x-enum-varnames: - - REDUCE - ObservabilityPipelineRemoveFieldsProcessor: - description: The `remove_fields` processor deletes specified fields from logs. - properties: - fields: - description: A list of field names to be removed from each log event. - example: - - field1 - - field2 - items: - type: string - type: array - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: remove-fields-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: The `PipelineRemoveFieldsProcessor` `inputs`. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineRemoveFieldsProcessorType: - default: remove_fields - description: The processor type. The value should always be `remove_fields`. - enum: - - remove_fields - example: remove_fields - type: string - x-enum-varnames: - - REMOVE_FIELDS - ObservabilityPipelineRenameFieldsProcessor: - description: The `rename_fields` processor changes field names. - properties: - fields: - description: A list of rename rules specifying which fields to rename in - the event, what to rename them to, and whether to preserve the original - fields. - items: - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessorField' - type: array - id: - description: A unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to downstream - components). - example: rename-fields-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineRenameFieldsProcessorField: - description: Defines how to rename a field in log events. - properties: - destination: - description: The field name to assign the renamed value to. - example: destination_field - type: string - preserve_source: - description: Indicates whether the original field, that is received from - the source, should be kept (`true`) or removed (`false`) after renaming. - example: false - type: boolean - source: - description: The original field name in the log event that should be renamed. - example: source_field - type: string - required: - - source - - destination - - preserve_source - type: object - ObservabilityPipelineRenameFieldsProcessorType: - default: rename_fields - description: The processor type. The value should always be `rename_fields`. - enum: - - rename_fields - example: rename_fields - type: string - x-enum-varnames: - - RENAME_FIELDS - ObservabilityPipelineRsyslogDestination: - description: The `rsyslog` destination forwards logs to an external `rsyslog` - server over TCP or UDP using the syslog protocol. - properties: - id: - description: The unique identifier for this component. - example: rsyslog-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - keepalive: - description: Optional socket keepalive duration in milliseconds. - example: 60000 - format: int64 - minimum: 0 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineRsyslogDestinationType: - default: rsyslog - description: The destination type. The value should always be `rsyslog`. - enum: - - rsyslog - example: rsyslog - type: string - x-enum-varnames: - - RSYSLOG - ObservabilityPipelineRsyslogSource: - description: The `rsyslog` source listens for logs over TCP or UDP from an `rsyslog` - server using the syslog protocol. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: rsyslog-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineRsyslogSourceType' - required: - - id - - type - - mode - type: object - ObservabilityPipelineRsyslogSourceType: - default: rsyslog - description: The source type. The value should always be `rsyslog`. - enum: - - rsyslog - example: rsyslog - type: string - x-enum-varnames: - - RSYSLOG - ObservabilityPipelineSampleProcessor: - description: The `sample` processor allows probabilistic sampling of logs at - a fixed rate. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (for example, as the `input` - to downstream components). - example: sample-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - datadog-agent-source - items: - type: string - type: array - percentage: - description: The percentage of logs to sample. - example: 10.0 - format: double - type: number - rate: - description: Number of events to sample (1 in N). - example: 10 - format: int64 - minimum: 1 - type: integer - type: - $ref: '#/components/schemas/ObservabilityPipelineSampleProcessorType' - required: - - id - - type - - include - - inputs - type: object - ObservabilityPipelineSampleProcessorType: - default: sample - description: The processor type. The value should always be `sample`. - enum: - - sample - example: sample - type: string - x-enum-varnames: - - SAMPLE - ObservabilityPipelineSensitiveDataScannerProcessor: - description: The `sensitive_data_scanner` processor detects and optionally redacts - sensitive data in log events. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: sensitive-scanner - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: source:prod - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - parse-json-processor - items: - type: string - type: array - rules: - description: A list of rules for identifying and acting on sensitive data - patterns. - items: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorRule' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorType' - required: - - id - - type - - include - - inputs - - rules - type: object - ObservabilityPipelineSensitiveDataScannerProcessorAction: - description: Defines what action to take when sensitive data is matched. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedact' - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHash' - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact' - ObservabilityPipelineSensitiveDataScannerProcessorActionHash: - description: Configuration for hashing matched sensitive values. - properties: - action: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction' - options: - description: The `ObservabilityPipelineSensitiveDataScannerProcessorActionHash` - `options`. - type: object - required: - - action - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction: - description: Action type that replaces the matched sensitive data with a hashed - representation, preserving structure while securing content. - enum: - - hash - example: hash - type: string - x-enum-varnames: - - HASH - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact: - description: Configuration for partially redacting matched sensitive data. - properties: - action: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction' - options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions' - required: - - action - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction: - description: Action type that redacts part of the sensitive data while preserving - a configurable number of characters, typically used for masking purposes (e.g., - show last 4 digits of a credit card). - enum: - - partial_redact - example: partial_redact - type: string - x-enum-varnames: - - PARTIAL_REDACT - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions: - description: Controls how partial redaction is applied, including character - count and direction. - properties: - characters: - description: The `ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions` - `characters`. - example: 4 - format: int64 - type: integer - direction: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection' - required: - - characters - - direction - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection: - description: Indicates whether to redact characters from the first or last part - of the matched value. - enum: - - first - - last - example: last - type: string - x-enum-varnames: - - FIRST - - LAST - ObservabilityPipelineSensitiveDataScannerProcessorActionRedact: - description: Configuration for completely redacting matched sensitive data. - properties: - action: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction' - options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions' - required: - - action - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction: - description: Action type that completely replaces the matched sensitive data - with a fixed replacement string to remove all visibility. - enum: - - redact - example: redact - type: string - x-enum-varnames: - - REDACT - ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions: - description: Configuration for fully redacting sensitive data. - properties: - replace: - description: The `ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions` - `replace`. - example: '***' - type: string - required: - - replace - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern: - description: Defines a custom regex-based pattern for identifying sensitive - data in logs. - properties: - options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions' - type: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType' - required: - - type - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions: - description: Options for defining a custom regex pattern. - properties: - rule: - description: A regular expression used to detect sensitive values. Must - be a valid regex. - example: \b\d{16}\b - type: string - required: - - rule - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType: - description: Indicates a custom regular expression is used for matching. - enum: - - custom - example: custom - type: string - x-enum-varnames: - - CUSTOM - ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions: - description: Configuration for keywords used to reinforce sensitive data pattern - detection. - properties: - keywords: - description: A list of keywords to match near the sensitive pattern. - example: - - ssn - - card - - account - items: - type: string - type: array - proximity: - description: Maximum number of tokens between a keyword and a sensitive - value match. - example: 5 - format: int64 - type: integer - required: - - keywords - - proximity - type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern: - description: "Specifies a pattern from Datadog\u2019s sensitive data detection - library to match known sensitive data types." - properties: - options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions' - type: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType' - required: - - type - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions: - description: Options for selecting a predefined library pattern and enabling - keyword support. - properties: - id: - description: Identifier for a predefined pattern from the sensitive data - scanner pattern library. - example: credit_card - type: string - use_recommended_keywords: - description: Whether to augment the pattern with recommended keywords (optional). - type: boolean - required: - - id - type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType: - description: Indicates that a predefined library pattern is used. - enum: - - library - example: library - type: string - x-enum-varnames: - - LIBRARY - ObservabilityPipelineSensitiveDataScannerProcessorPattern: - description: Pattern detection configuration for identifying sensitive data - using either a custom regex or a library reference. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern' - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern' - ObservabilityPipelineSensitiveDataScannerProcessorRule: - description: Defines a rule for detecting sensitive data, including matching - pattern, scope, and the action to take. - properties: - keyword_options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions' - name: - description: A name identifying the rule. - example: Redact Credit Card Numbers - type: string - on_match: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorAction' - pattern: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorPattern' - scope: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScope' - tags: - description: Tags assigned to this rule for filtering and classification. - example: - - pii - - ccn - items: - type: string - type: array - required: - - name - - tags - - pattern - - scope - - on_match - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScope: - description: Determines which parts of the log the pattern-matching rule should - be applied to. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude' - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude' - - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAll' - ObservabilityPipelineSensitiveDataScannerProcessorScopeAll: - description: Applies scanning across all available fields. - properties: - target: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget' - required: - - target - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget: - description: Applies the rule to all fields. - enum: - - all - example: all - type: string - x-enum-varnames: - - ALL - ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude: - description: Excludes specific fields from sensitive data scanning. - properties: - options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions' - target: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget' - required: - - target - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget: - description: Excludes specific fields from processing. - enum: - - exclude - example: exclude - type: string - x-enum-varnames: - - EXCLUDE - ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude: - description: Includes only specific fields for sensitive data scanning. - properties: - options: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions' - target: - $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget' - required: - - target - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget: - description: Applies the rule only to included fields. - enum: - - include - example: include - type: string - x-enum-varnames: - - INCLUDE - ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions: - description: Fields to which the scope rule applies. - properties: - fields: - description: The `ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions` - `fields`. - example: - - '' - items: - type: string - type: array - required: - - fields - type: object - ObservabilityPipelineSensitiveDataScannerProcessorType: - default: sensitive_data_scanner - description: The processor type. The value should always be `sensitive_data_scanner`. - enum: - - sensitive_data_scanner - example: sensitive_data_scanner - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER - ObservabilityPipelineSentinelOneDestination: - description: The `sentinel_one` destination sends logs to SentinelOne. - properties: - id: - description: The unique identifier for this component. - example: sentinelone-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - region: - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion' - type: - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationType' - required: - - id - - type - - inputs - - region - type: object - ObservabilityPipelineSentinelOneDestinationRegion: - description: The SentinelOne region to send logs to. - enum: - - us - - eu - - ca - - data_set_us - example: us - type: string - x-enum-varnames: - - US - - EU - - CA - - DATA_SET_US - ObservabilityPipelineSentinelOneDestinationType: - default: sentinel_one - description: The destination type. The value should always be `sentinel_one`. - enum: - - sentinel_one - example: sentinel_one - type: string - x-enum-varnames: - - SENTINEL_ONE - ObservabilityPipelineSocketDestination: - description: 'The `socket` destination sends logs over TCP or UDP to a remote - server. - - ' - properties: - encoding: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationEncoding' - framing: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFraming' - id: - description: The unique identifier for this component. - example: socket-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - description: TLS configuration. Relevant only when `mode` is `tcp`. - type: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationType' - required: - - id - - type - - inputs - - encoding - - framing - - mode - type: object - ObservabilityPipelineSocketDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineSocketDestinationFraming: - description: Framing method configuration. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimited' - - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingBytes' - - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimited' - ObservabilityPipelineSocketDestinationFramingBytes: - description: Event data is not delimited at all. - properties: - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingBytesMethod' - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingBytesMethod: - description: The definition of `ObservabilityPipelineSocketDestinationFramingBytesMethod` - object. - enum: - - bytes - example: bytes - type: string - x-enum-varnames: - - BYTES - ObservabilityPipelineSocketDestinationFramingCharacterDelimited: - description: Each log event is separated using the specified delimiter character. - properties: - delimiter: - description: A single ASCII character used as a delimiter. - example: '|' - maxLength: 1 - minLength: 1 - type: string - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod' - required: - - method - - delimiter - type: object - ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod: - description: The definition of `ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod` - object. - enum: - - character_delimited - example: character_delimited - type: string - x-enum-varnames: - - CHARACTER_DELIMITED - ObservabilityPipelineSocketDestinationFramingNewlineDelimited: - description: Each log event is delimited by a newline character. - properties: - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod' - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod: - description: The definition of `ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod` - object. - enum: - - newline_delimited - example: newline_delimited - type: string - x-enum-varnames: - - NEWLINE_DELIMITED - ObservabilityPipelineSocketDestinationMode: - description: Protocol used to send logs. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineSocketDestinationType: - default: socket - description: The destination type. The value should always be `socket`. - enum: - - socket - example: socket - type: string - x-enum-varnames: - - SOCKET - ObservabilityPipelineSocketSource: - description: 'The `socket` source ingests logs over TCP or UDP. - - ' - properties: - framing: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFraming' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: socket-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - description: TLS configuration. Relevant only when `mode` is `tcp`. - type: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceType' - required: - - id - - type - - mode - - framing - type: object - ObservabilityPipelineSocketSourceFraming: - description: Framing method configuration for the socket source. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimited' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingBytes' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimited' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCounting' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelf' - ObservabilityPipelineSocketSourceFramingBytes: - description: Byte frames are passed through as-is according to the underlying - I/O boundaries (for example, split between messages or stream segments). - properties: - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingBytesMethod' - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingBytesMethod: - description: Byte frames are passed through as-is according to the underlying - I/O boundaries (for example, split between messages or stream segments). - enum: - - bytes - example: bytes - type: string - x-enum-varnames: - - BYTES - ObservabilityPipelineSocketSourceFramingCharacterDelimited: - description: Byte frames which are delimited by a chosen character. - properties: - delimiter: - description: A single ASCII character used to delimit events. - example: '|' - maxLength: 1 - minLength: 1 - type: string - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod' - required: - - method - - delimiter - type: object - ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod: - description: Byte frames which are delimited by a chosen character. - enum: - - character_delimited - example: character_delimited - type: string - x-enum-varnames: - - CHARACTER_DELIMITED - ObservabilityPipelineSocketSourceFramingChunkedGelf: - description: Byte frames which are chunked GELF messages. - properties: - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelfMethod' - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingChunkedGelfMethod: - description: Byte frames which are chunked GELF messages. - enum: - - chunked_gelf - example: chunked_gelf - type: string - x-enum-varnames: - - CHUNKED_GELF - ObservabilityPipelineSocketSourceFramingNewlineDelimited: - description: Byte frames which are delimited by a newline character. - properties: - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod' - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod: - description: Byte frames which are delimited by a newline character. - enum: - - newline_delimited - example: newline_delimited - type: string - x-enum-varnames: - - NEWLINE_DELIMITED - ObservabilityPipelineSocketSourceFramingOctetCounting: - description: Byte frames according to the octet counting format as per RFC6587. - properties: - method: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCountingMethod' - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingOctetCountingMethod: - description: Byte frames according to the octet counting format as per RFC6587. - enum: - - octet_counting - example: octet_counting - type: string - x-enum-varnames: - - OCTET_COUNTING - ObservabilityPipelineSocketSourceMode: - description: Protocol used to receive logs. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineSocketSourceType: - default: socket - description: The source type. The value should always be `socket`. - enum: - - socket - example: socket - type: string - x-enum-varnames: - - SOCKET - ObservabilityPipelineSpec: - description: Input schema representing an observability pipeline configuration. - Used in create and validate requests. - properties: - data: - $ref: '#/components/schemas/ObservabilityPipelineSpecData' - required: - - data - type: object - ObservabilityPipelineSpecData: - description: Contains the the pipeline configuration. - properties: - attributes: - $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' - type: - default: pipelines - description: The resource type identifier. For pipeline resources, this - should always be set to `pipelines`. - example: pipelines - type: string - required: - - type - - attributes - type: object - ObservabilityPipelineSplunkHecDestination: - description: 'The `splunk_hec` destination forwards logs to Splunk using the - HTTP Event Collector (HEC). - - ' - properties: - auto_extract_timestamp: - description: 'If `true`, Splunk tries to extract timestamps from incoming - log events. - - If `false`, Splunk assigns the time the event was received. - - ' - example: true - type: boolean - encoding: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationEncoding' - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: splunk-hec-destination - type: string - index: - description: Optional name of the Splunk index where logs are written. - example: main - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - sourcetype: - description: The Splunk sourcetype to assign to log events. - example: custom_sourcetype - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineSplunkHecDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineSplunkHecDestinationType: - default: splunk_hec - description: The destination type. Always `splunk_hec`. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - ObservabilityPipelineSplunkHecSource: - description: 'The `splunk_hec` source implements the Splunk HTTP Event Collector - (HEC) API. - - ' - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: splunk-hec-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSplunkHecSourceType: - default: splunk_hec - description: The source type. Always `splunk_hec`. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - ObservabilityPipelineSplunkTcpSource: - description: 'The `splunk_tcp` source receives logs from a Splunk Universal - Forwarder over TCP. - - TLS is supported for secure transmission. - - ' - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: splunk-tcp-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSplunkTcpSourceType: - default: splunk_tcp - description: The source type. Always `splunk_tcp`. - enum: - - splunk_tcp - example: splunk_tcp - type: string - x-enum-varnames: - - SPLUNK_TCP - ObservabilityPipelineSumoLogicDestination: - description: The `sumo_logic` destination forwards logs to Sumo Logic. - properties: - encoding: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationEncoding' - header_custom_fields: - description: A list of custom headers to include in the request to Sumo - Logic. - items: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem' - type: array - header_host_name: - description: Optional override for the host name header. - example: host-123 - type: string - header_source_category: - description: Optional override for the source category header. - example: source-category - type: string - header_source_name: - description: Optional override for the source name header. - example: source-name - type: string - id: - description: The unique identifier for this component. - example: sumo-logic-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineSumoLogicDestinationEncoding: - description: The output encoding format. - enum: - - json - - raw_message - - logfmt - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - - LOGFMT - ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem: - description: Single key-value pair used as a custom log header for Sumo Logic. - properties: - name: - description: The header field name. - example: X-Sumo-Category - type: string - value: - description: The header field value. - example: my-app-logs - type: string - required: - - name - - value - type: object - ObservabilityPipelineSumoLogicDestinationType: - default: sumo_logic - description: The destination type. The value should always be `sumo_logic`. - enum: - - sumo_logic - example: sumo_logic - type: string - x-enum-varnames: - - SUMO_LOGIC - ObservabilityPipelineSumoLogicSource: - description: The `sumo_logic` source receives logs from Sumo Logic collectors. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: sumo-logic-source - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSumoLogicSourceType: - default: sumo_logic - description: The source type. The value should always be `sumo_logic`. - enum: - - sumo_logic - example: sumo_logic - type: string - x-enum-varnames: - - SUMO_LOGIC - ObservabilityPipelineSyslogNgDestination: - description: The `syslog_ng` destination forwards logs to an external `syslog-ng` - server over TCP or UDP using the syslog protocol. - properties: - id: - description: The unique identifier for this component. - example: syslog-ng-destination - type: string - inputs: - description: A list of component IDs whose output is used as the `input` - for this component. - example: - - filter-processor - items: - type: string - type: array - keepalive: - description: Optional socket keepalive duration in milliseconds. - example: 60000 - format: int64 - minimum: 0 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineSyslogNgDestinationType: - default: syslog_ng - description: The destination type. The value should always be `syslog_ng`. - enum: - - syslog_ng - example: syslog_ng - type: string - x-enum-varnames: - - SYSLOG_NG - ObservabilityPipelineSyslogNgSource: - description: The `syslog_ng` source listens for logs over TCP or UDP from a - `syslog-ng` server using the syslog protocol. - properties: - id: - description: The unique identifier for this component. Used to reference - this component in other parts of the pipeline (e.g., as input to downstream - components). - example: syslog-ng-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSourceType' - required: - - id - - type - - mode - type: object - ObservabilityPipelineSyslogNgSourceType: - default: syslog_ng - description: The source type. The value should always be `syslog_ng`. - enum: - - syslog_ng - example: syslog_ng - type: string - x-enum-varnames: - - SYSLOG_NG - ObservabilityPipelineSyslogSourceMode: - description: Protocol used by the syslog source to receive messages. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineThrottleProcessor: - description: The `throttle` processor limits the number of events that pass - through over a given time window. - properties: - group_by: - description: Optional list of fields used to group events before the threshold - has been reached. - example: - - log.user.id - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: throttle-processor - type: string - include: - description: A Datadog search query used to determine which logs this processor - targets. - example: env:prod - type: string - inputs: - description: A list of component IDs whose output is used as the input for - this processor. - example: - - datadog-agent-source - items: - type: string - type: array - threshold: - description: the number of events allowed in a given time window. Events - sent after the threshold has been reached, are dropped. - example: 1000 - format: int64 - type: integer - type: - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessorType' - window: - description: The time window in seconds over which the threshold applies. - example: 60.0 - format: double - type: number - required: - - id - - type - - include - - inputs - - threshold - - window - type: object - ObservabilityPipelineThrottleProcessorType: - default: throttle - description: The processor type. The value should always be `throttle`. - enum: - - throttle - example: throttle - type: string - x-enum-varnames: - - THROTTLE - ObservabilityPipelineTls: - description: Configuration for enabling TLS encryption between the pipeline - component and external services. - properties: - ca_file: - description: "Path to the Certificate Authority (CA) file used to validate - the server\u2019s TLS certificate." - type: string - crt_file: - description: Path to the TLS client certificate file used to authenticate - the pipeline component with upstream or downstream services. - example: /path/to/cert.crt - type: string - key_file: - description: Path to the private key file associated with the TLS client - certificate. Used for mutual TLS authentication. - type: string - required: - - crt_file - type: object - OktaAPIToken: - description: The definition of the `OktaAPIToken` object. - properties: - api_token: - description: The `OktaAPIToken` `api_token`. - example: '' - type: string - domain: - description: The `OktaAPIToken` `domain`. - example: '' - type: string - type: - $ref: '#/components/schemas/OktaAPITokenType' - required: - - type - - domain - - api_token - type: object - OktaAPITokenType: - description: The definition of the `OktaAPIToken` object. - enum: - - OktaAPIToken - example: OktaAPIToken - type: string - x-enum-varnames: - - OKTAAPITOKEN - OktaAPITokenUpdate: - description: The definition of the `OktaAPIToken` object. - properties: - api_token: - description: The `OktaAPITokenUpdate` `api_token`. - type: string - domain: - description: The `OktaAPITokenUpdate` `domain`. - type: string - type: - $ref: '#/components/schemas/OktaAPITokenType' - required: - - type - type: object - OktaAccount: - description: Schema for an Okta account. - properties: - attributes: - $ref: '#/components/schemas/OktaAccountAttributes' - id: - description: The ID of the Okta account, a UUID hash of the account name. - example: f749daaf-682e-4208-a38d-c9b43162c609 - type: string - type: - $ref: '#/components/schemas/OktaAccountType' - required: - - attributes - - type - type: object - OktaAccountAttributes: - description: Attributes object for an Okta account. - properties: - api_key: - description: The API key of the Okta account. - type: string - writeOnly: true - auth_method: - description: The authorization method for an Okta account. - example: oauth - type: string - client_id: - description: The Client ID of an Okta app integration. - type: string - client_secret: - description: The client secret of an Okta app integration. - type: string - writeOnly: true - domain: - description: The domain of the Okta account. - example: https://example.okta.com/ - type: string - name: - description: The name of the Okta account. - example: Okta-Prod - type: string - required: - - auth_method - - domain - - name - type: object - OktaAccountRequest: - description: Request object for an Okta account. - properties: - data: - $ref: '#/components/schemas/OktaAccount' - required: - - data - type: object - OktaAccountResponse: - description: Response object for an Okta account. - properties: - data: - $ref: '#/components/schemas/OktaAccount' - type: object - OktaAccountResponseData: - description: Data object of an Okta account - properties: - attributes: - $ref: '#/components/schemas/OktaAccountAttributes' - id: - description: The ID of the Okta account, a UUID hash of the account name. - example: f749daaf-682e-4208-a38d-c9b43162c609 - type: string - type: - $ref: '#/components/schemas/OktaAccountType' - required: - - attributes - - id - - type - type: object - OktaAccountType: - default: okta-accounts - description: Account type for an Okta account. - enum: - - okta-accounts - example: okta-accounts - type: string - x-enum-varnames: - - OKTA_ACCOUNTS - OktaAccountUpdateRequest: - description: Payload schema when updating an Okta account. - properties: - data: - $ref: '#/components/schemas/OktaAccountUpdateRequestData' - required: - - data - type: object - OktaAccountUpdateRequestAttributes: - description: Attributes object for updating an Okta account. - properties: - api_key: - description: The API key of the Okta account. - type: string - writeOnly: true - auth_method: - description: The authorization method for an Okta account. - example: oauth - type: string - client_id: - description: The Client ID of an Okta app integration. - type: string - client_secret: - description: The client secret of an Okta app integration. - type: string - writeOnly: true - domain: - description: The domain associated with an Okta account. - example: https://dev-test.okta.com/ - type: string - required: - - auth_method - - domain - type: object - OktaAccountUpdateRequestData: - description: Data object for updating an Okta account. - properties: - attributes: - $ref: '#/components/schemas/OktaAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/OktaAccountType' - type: object - OktaAccountsResponse: - description: The expected response schema when getting Okta accounts. - properties: - data: - description: List of Okta accounts. - items: - $ref: '#/components/schemas/OktaAccountResponseData' - type: array - type: object - OktaCredentials: - description: The definition of the `OktaCredentials` object. - oneOf: - - $ref: '#/components/schemas/OktaAPIToken' - OktaCredentialsUpdate: - description: The definition of the `OktaCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/OktaAPITokenUpdate' - OktaIntegration: - description: The definition of the `OktaIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/OktaCredentials' - type: - $ref: '#/components/schemas/OktaIntegrationType' - required: - - type - - credentials - type: object - OktaIntegrationType: - description: The definition of the `OktaIntegrationType` object. - enum: - - Okta - example: Okta - type: string - x-enum-varnames: - - OKTA - OktaIntegrationUpdate: - description: The definition of the `OktaIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/OktaCredentialsUpdate' - type: - $ref: '#/components/schemas/OktaIntegrationType' - required: - - type - type: object - OnCallPageTargetType: - description: The kind of target, `team_id` | `team_handle` | `user_id`. - enum: - - team_id - - team_handle - - user_id - example: team_id - type: string - x-enum-varnames: - - TEAM_ID - - TEAM_HANDLE - - USER_ID - OnDemandConcurrencyCap: - description: On-demand concurrency cap. - properties: - attributes: - $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' - type: - $ref: '#/components/schemas/OnDemandConcurrencyCapType' - type: object - OnDemandConcurrencyCapAttributes: - description: On-demand concurrency cap attributes. - properties: - on_demand_concurrency_cap: - description: Value of the on-demand concurrency cap. - format: double - type: number - type: object - OnDemandConcurrencyCapResponse: - description: On-demand concurrency cap response. - properties: - data: - $ref: '#/components/schemas/OnDemandConcurrencyCap' - type: object - OnDemandConcurrencyCapType: - description: On-demand concurrency cap type. - enum: - - on_demand_concurrency_cap - type: string - x-enum-varnames: - - ON_DEMAND_CONCURRENCY_CAP - OpenAIAPIKey: - description: The definition of the `OpenAIAPIKey` object. - properties: - api_token: - description: The `OpenAIAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/OpenAIAPIKeyType' - required: - - type - - api_token - type: object - OpenAIAPIKeyType: - description: The definition of the `OpenAIAPIKey` object. - enum: - - OpenAIAPIKey - example: OpenAIAPIKey - type: string - x-enum-varnames: - - OPENAIAPIKEY - OpenAIAPIKeyUpdate: - description: The definition of the `OpenAIAPIKey` object. - properties: - api_token: - description: The `OpenAIAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/OpenAIAPIKeyType' - required: - - type - type: object - OpenAICredentials: - description: The definition of the `OpenAICredentials` object. - oneOf: - - $ref: '#/components/schemas/OpenAIAPIKey' - OpenAICredentialsUpdate: - description: The definition of the `OpenAICredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/OpenAIAPIKeyUpdate' - OpenAIIntegration: - description: The definition of the `OpenAIIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/OpenAICredentials' - type: - $ref: '#/components/schemas/OpenAIIntegrationType' - required: - - type - - credentials - type: object - OpenAIIntegrationType: - description: The definition of the `OpenAIIntegrationType` object. - enum: - - OpenAI - example: OpenAI - type: string - x-enum-varnames: - - OPENAI - OpenAIIntegrationUpdate: - description: The definition of the `OpenAIIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/OpenAICredentialsUpdate' - type: - $ref: '#/components/schemas/OpenAIIntegrationType' - required: - - type - type: object - OpenAPIEndpoint: - description: Endpoint info extracted from an `OpenAPI` specification. - properties: - method: - description: The endpoint method. - type: string - path: - description: The endpoint path. - type: string - type: object - OpenAPIFile: - description: Object for API data in an `OpenAPI` format as a file. - properties: - openapi_spec_file: - description: Binary `OpenAPI` spec file - format: binary - type: string - type: object - OpsgenieServiceCreateAttributes: - description: The Opsgenie service attributes for a create request. - properties: - custom_url: - description: The custom URL for a custom region. - example: https://example.com - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - opsgenie_api_key: - description: The Opsgenie API key for your Opsgenie service. - example: 00000000-0000-0000-0000-000000000000 - type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' - required: - - name - - opsgenie_api_key - - region - type: object - OpsgenieServiceCreateData: - description: Opsgenie service data for a create request. - properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceCreateAttributes' - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - type - - attributes - type: object - OpsgenieServiceCreateRequest: - description: Create request for an Opsgenie service. - properties: - data: - $ref: '#/components/schemas/OpsgenieServiceCreateData' - required: - - data - type: object - OpsgenieServiceRegionType: - description: The region for the Opsgenie service. - enum: - - us - - eu - - custom - example: us - type: string - x-enum-varnames: - - US - - EU - - CUSTOM - OpsgenieServiceResponse: - description: Response of an Opsgenie service. - properties: - data: - $ref: '#/components/schemas/OpsgenieServiceResponseData' - required: - - data - type: object - OpsgenieServiceResponseAttributes: - description: The attributes from an Opsgenie service response. - properties: - custom_url: - description: The custom URL for a custom region. - example: null - nullable: true - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' - type: object - OpsgenieServiceResponseData: - description: Opsgenie service data from a response. - properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceResponseAttributes' - id: - description: The ID of the Opsgenie service. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - id - - type - - attributes - type: object - OpsgenieServiceType: - default: opsgenie-service - description: Opsgenie service resource type. - enum: - - opsgenie-service - example: opsgenie-service - type: string - x-enum-varnames: - - OPSGENIE_SERVICE - OpsgenieServiceUpdateAttributes: - description: The Opsgenie service attributes for an update request. - properties: - custom_url: - description: The custom URL for a custom region. - example: https://example.com - nullable: true - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - opsgenie_api_key: - description: The Opsgenie API key for your Opsgenie service. - example: 00000000-0000-0000-0000-000000000000 - type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' - type: object - OpsgenieServiceUpdateData: - description: Opsgenie service for an update request. - properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceUpdateAttributes' - id: - description: The ID of the Opsgenie service. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - id - - type - - attributes - type: object - OpsgenieServiceUpdateRequest: - description: Update request for an Opsgenie service. - properties: - data: - $ref: '#/components/schemas/OpsgenieServiceUpdateData' - required: - - data - type: object - OpsgenieServicesResponse: - description: Response with a list of Opsgenie services. - properties: - data: - description: An array of Opsgenie services. - example: - - attributes: - custom_url: null - name: fake-opsgenie-service-name - region: us - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: opsgenie-service - - attributes: - custom_url: null - name: fake-opsgenie-service-name-2 - region: eu - id: 0d2937f1-b561-44fa-914a-99910f848014 - type: opsgenie-service - items: - $ref: '#/components/schemas/OpsgenieServiceResponseData' - type: array - required: - - data - type: object - OrderDirection: - description: The sort direction for results. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASC - - DESC - OrgConfigGetResponse: - description: A response with a single Org Config. - properties: - data: - $ref: '#/components/schemas/OrgConfigRead' - required: - - data - type: object - OrgConfigListResponse: - description: A response with multiple Org Configs. - properties: - data: - description: An array of Org Configs. - items: - $ref: '#/components/schemas/OrgConfigRead' - type: array - required: - - data - type: object - OrgConfigRead: - description: A single Org Config. - properties: - attributes: - $ref: '#/components/schemas/OrgConfigReadAttributes' - id: - description: A unique identifier for an Org Config. - example: abcd1234 - type: string - type: - $ref: '#/components/schemas/OrgConfigType' - required: - - id - - type - - attributes - type: object - OrgConfigReadAttributes: - description: Readable attributes of an Org Config. - properties: - description: - description: The description of an Org Config. - example: Frobulate the turbo encabulator manifold - type: string - modified_at: - description: The timestamp of the last Org Config update (if any). - format: date-time - nullable: true - type: string - name: - description: The machine-friendly name of an Org Config. - example: monitor_timezone - type: string - value: - description: The value of an Org Config. - value_type: - description: The type of an Org Config value. - example: bool - type: string - required: - - name - - description - - value_type - - value - type: object - OrgConfigType: - description: Data type of an Org Config. - enum: - - org_configs - example: org_configs - type: string - x-enum-varnames: - - ORG_CONFIGS - OrgConfigWrite: - description: An Org Config write operation. - properties: - attributes: - $ref: '#/components/schemas/OrgConfigWriteAttributes' - type: - $ref: '#/components/schemas/OrgConfigType' - required: - - type - - attributes - type: object - OrgConfigWriteAttributes: - description: Writable attributes of an Org Config. - properties: - value: - description: The value of an Org Config. - required: - - value - type: object - OrgConfigWriteRequest: - description: A request to update an Org Config. - properties: - data: - $ref: '#/components/schemas/OrgConfigWrite' - required: - - data - type: object - OrgConnection: - description: An org connection. - properties: - attributes: - $ref: '#/components/schemas/OrgConnectionAttributes' - id: - description: The unique identifier of the org connection. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - relationships: - $ref: '#/components/schemas/OrgConnectionRelationships' - type: - $ref: '#/components/schemas/OrgConnectionType' - required: - - id - - type - - attributes - - relationships - type: object - OrgConnectionAttributes: - description: Org connection attributes. - properties: - connection_types: - description: List of connection types. - example: - - logs - - metrics - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - type: array - created_at: - description: Timestamp when the connection was created. - example: '2023-01-01T12:00:00Z' - format: date-time - type: string - required: - - connection_types - - created_at - type: object - OrgConnectionCreate: - description: Org connection creation data. - properties: - attributes: - $ref: '#/components/schemas/OrgConnectionCreateAttributes' - relationships: - $ref: '#/components/schemas/OrgConnectionCreateRelationships' - type: - $ref: '#/components/schemas/OrgConnectionType' - required: - - type - - attributes - - relationships - type: object - OrgConnectionCreateAttributes: - description: Attributes for creating an org connection. - properties: - connection_types: - description: List of connection types to establish. - example: - - logs - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - minItems: 1 - type: array - required: - - connection_types - type: object - OrgConnectionCreateRelationships: - description: Relationships for org connection creation. - properties: - sink_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - required: - - sink_org - type: object - OrgConnectionCreateRequest: - description: Request to create an org connection. - properties: - data: - $ref: '#/components/schemas/OrgConnectionCreate' - required: - - data - type: object - OrgConnectionListResponse: - description: Response containing a list of org connections. - properties: - data: - description: List of org connections. - items: - $ref: '#/components/schemas/OrgConnection' - type: array - meta: - $ref: '#/components/schemas/OrgConnectionListResponseMeta' - required: - - data - type: object - OrgConnectionListResponseMeta: - description: Pagination metadata. - properties: - page: - $ref: '#/components/schemas/OrgConnectionListResponseMetaPage' - type: object - OrgConnectionListResponseMetaPage: - description: Page information. - properties: - total_count: - description: Total number of org connections. - example: 0 - format: int64 - type: integer - total_filtered_count: - description: Total number of org connections matching the filter. - example: 0 - format: int64 - type: integer - type: object - OrgConnectionOrgRelationship: - description: Org relationship. - properties: - data: - $ref: '#/components/schemas/OrgConnectionOrgRelationshipData' - type: object - OrgConnectionOrgRelationshipData: - description: The definition of `OrgConnectionOrgRelationshipData` object. - properties: - id: - description: Org UUID. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - type: string - name: - description: Org name. - example: Example Org - type: string - type: - $ref: '#/components/schemas/OrgConnectionOrgRelationshipDataType' - type: object - OrgConnectionOrgRelationshipDataType: - description: The type of the organization relationship. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - OrgConnectionRelationships: - description: Related organizations and user. - properties: - created_by: - $ref: '#/components/schemas/OrgConnectionUserRelationship' - sink_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - source_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - type: object - OrgConnectionResponse: - description: Response containing a single org connection. - properties: - data: - $ref: '#/components/schemas/OrgConnection' - required: - - data - type: object - OrgConnectionType: - description: Org connection type. - enum: - - org_connection - example: org_connection - type: string - x-enum-varnames: - - ORG_CONNECTION - OrgConnectionTypeEnum: - description: Available connection types between organizations. - enum: - - logs - - metrics - example: logs - type: string - x-enum-varnames: - - LOGS - - METRICS - OrgConnectionUpdate: - description: Org connection update data. - properties: - attributes: - $ref: '#/components/schemas/OrgConnectionUpdateAttributes' - id: - description: The unique identifier of the org connection. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - type: - $ref: '#/components/schemas/OrgConnectionType' - required: - - type - - id - - attributes - type: object - OrgConnectionUpdateAttributes: - description: Attributes for updating an org connection. - properties: - connection_types: - description: Updated list of connection types. - example: - - logs - - metrics - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - minItems: 1 - type: array - required: - - connection_types - type: object - OrgConnectionUpdateRequest: - description: Request to update an org connection. - properties: - data: - $ref: '#/components/schemas/OrgConnectionUpdate' - required: - - data - type: object - OrgConnectionUserRelationship: - description: User relationship. - properties: - data: - $ref: '#/components/schemas/OrgConnectionUserRelationshipData' - type: object - OrgConnectionUserRelationshipData: - description: The data for a user relationship. - properties: - id: - description: User UUID. - example: usr123abc456 - type: string - name: - description: User name. - example: John Doe - type: string - type: - $ref: '#/components/schemas/OrgConnectionUserRelationshipDataType' - type: object - OrgConnectionUserRelationshipDataType: - description: The type of the user relationship. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - Organization: - description: Organization object. - properties: - attributes: - $ref: '#/components/schemas/OrganizationAttributes' - id: - description: ID of the organization. - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - type - type: object - OrganizationAttributes: - description: Attributes of the organization. - properties: - created_at: - description: Creation time of the organization. - format: date-time - type: string - description: - description: Description of the organization. - type: string - disabled: - description: Whether or not the organization is disabled. - type: boolean - modified_at: - description: Time of last organization modification. - format: date-time - type: string - name: - description: Name of the organization. - type: string - public_id: - description: Public ID of the organization. - type: string - sharing: - description: Sharing type of the organization. - type: string - url: - description: URL of the site that this organization exists at. - type: string - type: object - OrganizationsType: - default: orgs - description: Organizations resource type. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - OutboundEdge: - description: The definition of `OutboundEdge` object. - properties: - branchName: - description: The `OutboundEdge` `branchName`. - example: '' - type: string - nextStepName: - description: The `OutboundEdge` `nextStepName`. - example: '' - type: string - required: - - nextStepName - - branchName - type: object - OutcomeType: - default: outcome - description: The JSON:API type for an outcome. - enum: - - outcome - example: outcome - type: string - x-enum-varnames: - - OUTCOME - OutcomesBatchAttributes: - description: The JSON:API attributes for a batched set of scorecard outcomes. - properties: - results: - description: Set of scorecard outcomes to update. - items: - $ref: '#/components/schemas/OutcomesBatchRequestItem' - type: array - type: object - OutcomesBatchRequest: - description: Scorecard outcomes batch request. - properties: - data: - $ref: '#/components/schemas/OutcomesBatchRequestData' - type: object - OutcomesBatchRequestData: - description: Scorecard outcomes batch request data. - properties: - attributes: - $ref: '#/components/schemas/OutcomesBatchAttributes' - type: - $ref: '#/components/schemas/OutcomesBatchType' - type: object - OutcomesBatchRequestItem: - description: Scorecard outcome for a specific rule, for a given service within - a batched update. - properties: - remarks: - description: Any remarks regarding the scorecard rule's evaluation, and - supports HTML hyperlinks. - example: 'See: Services' - type: string - rule_id: - $ref: '#/components/schemas/RuleId' - service_name: - description: The unique name for a service in the catalog. - example: my-service - type: string - state: - $ref: '#/components/schemas/State' - required: - - rule_id - - service_name - - state - type: object - OutcomesBatchResponse: - description: Scorecard outcomes batch response. - properties: - data: - $ref: '#/components/schemas/OutcomesBatchResponseData' - meta: - $ref: '#/components/schemas/OutcomesBatchResponseMeta' - required: - - data - - meta - type: object - OutcomesBatchResponseAttributes: - description: The JSON:API attributes for an outcome. - properties: - created_at: - description: Creation time of the rule outcome. - format: date-time - type: string - modified_at: - description: Time of last rule outcome modification. - format: date-time - type: string - remarks: - description: Any remarks regarding the scorecard rule's evaluation, and - supports HTML hyperlinks. - example: 'See: Services' - type: string - service_name: - description: The unique name for a service in the catalog. - example: my-service - type: string - state: - $ref: '#/components/schemas/State' - type: object - OutcomesBatchResponseData: - description: List of rule outcomes which were affected during the bulk operation. - items: - $ref: '#/components/schemas/OutcomesResponseDataItem' - type: array - OutcomesBatchResponseMeta: - description: Metadata pertaining to the bulk operation. - properties: - total_received: - description: Total number of scorecard results received during the bulk - operation. - format: int64 - type: integer - total_updated: - description: Total number of scorecard results modified during the bulk - operation. - format: int64 - type: integer - type: object - OutcomesBatchType: - default: batched-outcome - description: The JSON:API type for scorecard outcomes. - enum: - - batched-outcome - example: batched-outcome - type: string - x-enum-varnames: - - BATCHED_OUTCOME - OutcomesResponse: - description: Scorecard outcomes - the result of a rule for a service. - properties: - data: - $ref: '#/components/schemas/OutcomesResponseData' - included: - $ref: '#/components/schemas/OutcomesResponseIncluded' - links: - $ref: '#/components/schemas/OutcomesResponseLinks' - type: object - OutcomesResponseData: - description: List of rule outcomes. - items: - $ref: '#/components/schemas/OutcomesResponseDataItem' - type: array - OutcomesResponseDataItem: - description: A single rule outcome. - properties: - attributes: - $ref: '#/components/schemas/OutcomesBatchResponseAttributes' - id: - description: The unique ID for a rule outcome. - type: string - relationships: - $ref: '#/components/schemas/RuleOutcomeRelationships' - type: - $ref: '#/components/schemas/OutcomeType' - type: object - OutcomesResponseIncluded: - description: Array of rule details. - items: - $ref: '#/components/schemas/OutcomesResponseIncludedItem' - type: array - OutcomesResponseIncludedItem: - description: Attributes of the included rule. - properties: - attributes: - $ref: '#/components/schemas/OutcomesResponseIncludedRuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - type: - $ref: '#/components/schemas/RuleType' - type: object - OutcomesResponseIncludedRuleAttributes: - description: Details of a rule. - properties: - name: - description: Name of the rule. - example: Team Defined - type: string - scorecard_name: - description: The scorecard name to which this rule must belong. - example: Observability Best Practices - type: string - type: object - OutcomesResponseLinks: - description: Links attributes. - properties: - next: - description: Link for the next set of results. - example: /api/v2/scorecard/outcomes?include=rule&page%5Blimit%5D=100&page%5Boffset%5D=100 - type: string - type: object - OutputSchema: - description: A list of output parameters for the workflow. - properties: - parameters: - description: The `OutputSchema` `parameters`. - items: - $ref: '#/components/schemas/OutputSchemaParameters' - type: array - type: object - OutputSchemaParameters: - description: The definition of `OutputSchemaParameters` object. - properties: - defaultValue: - description: The `OutputSchemaParameters` `defaultValue`. - description: - description: The `OutputSchemaParameters` `description`. - type: string - label: - description: The `OutputSchemaParameters` `label`. - type: string - name: - description: The `OutputSchemaParameters` `name`. - example: '' - type: string - type: - $ref: '#/components/schemas/OutputSchemaParametersType' - value: - description: The `OutputSchemaParameters` `value`. - required: - - name - - type - type: object - OutputSchemaParametersType: - description: The definition of `OutputSchemaParametersType` object. - enum: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - example: STRING - type: string - x-enum-varnames: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - PageUrgency: - default: high - description: On-Call Page urgency level. - enum: - - low - - high - example: high - type: string - x-enum-varnames: - - LOW - - HIGH - Pagination: - description: Pagination object. - properties: - total_count: - description: Total count. - format: int64 - type: integer - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - Parameter: - description: The definition of `Parameter` object. - properties: - name: - description: The `Parameter` `name`. - example: '' - type: string - value: - description: The `Parameter` `value`. - required: - - name - - value - type: object - PartialAPIKey: - description: Partial Datadog API key. - properties: - attributes: - $ref: '#/components/schemas/PartialAPIKeyAttributes' - id: - description: ID of the API key. - type: string - relationships: - $ref: '#/components/schemas/APIKeyRelationships' - type: - $ref: '#/components/schemas/APIKeysType' - type: object - PartialAPIKeyAttributes: - description: Attributes of a partial API key. - properties: - category: - description: The category of the API key. - type: string - created_at: - description: Creation date of the API key. - example: '2020-11-23T10:00:00.000Z' - readOnly: true - type: string - last4: - description: The last four characters of the API key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - modified_at: - description: Date the API key was last modified. - example: '2020-11-23T10:00:00.000Z' - readOnly: true - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The remote config read enabled status. - type: boolean - type: object - PartialApplicationKey: - description: Partial Datadog application key. - properties: - attributes: - $ref: '#/components/schemas/PartialApplicationKeyAttributes' - id: - description: ID of the application key. - type: string - relationships: - $ref: '#/components/schemas/ApplicationKeyRelationships' - type: - $ref: '#/components/schemas/ApplicationKeysType' - type: object - PartialApplicationKeyAttributes: - description: Attributes of a partial application key. - properties: - created_at: - description: Creation date of the application key. - example: '2020-11-23T10:00:00.000Z' - readOnly: true - type: string - last4: - description: The last four characters of the application key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - type: object - PartialApplicationKeyResponse: - description: Response for retrieving a partial application key. - properties: - data: - $ref: '#/components/schemas/PartialApplicationKey' - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - type: object - PatchIncidentNotificationTemplateRequest: - description: Update request for a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateUpdateData' - required: - - data - type: object - PatchNotificationRuleParameters: - description: Body of the notification rule patch request. - properties: - data: - $ref: '#/components/schemas/PatchNotificationRuleParametersData' - type: object - PatchNotificationRuleParametersData: - description: 'Data of the notification rule patch request: the rule ID, the - rule type, and the rule attributes. All fields are required.' - properties: - attributes: - $ref: '#/components/schemas/PatchNotificationRuleParametersDataAttributes' - id: - $ref: '#/components/schemas/ID' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - id - - type - type: object - PatchNotificationRuleParametersDataAttributes: - description: Attributes of the notification rule patch request. It is required - to update the version of the rule when patching it. - properties: - enabled: - $ref: '#/components/schemas/Enabled' - name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - version: - $ref: '#/components/schemas/Version' - type: object - Permission: - description: Permission object. - properties: - attributes: - $ref: '#/components/schemas/PermissionAttributes' - id: - description: ID of the permission. - type: string - type: - $ref: '#/components/schemas/PermissionsType' - required: - - type - type: object - PermissionAttributes: - description: Attributes of a permission. - properties: - created: - description: Creation time of the permission. - format: date-time - type: string - description: - description: Description of the permission. - type: string - display_name: - description: Displayed name for the permission. - type: string - display_type: - description: Display type. - type: string - group_name: - description: Name of the permission group. - type: string - name: - description: Name of the permission. - type: string - restricted: - description: Whether or not the permission is restricted. - type: boolean - type: object - PermissionsResponse: - description: Payload with API-returned permissions. - properties: - data: - description: Array of permissions. - items: - $ref: '#/components/schemas/Permission' - type: array - type: object - PermissionsType: - default: permissions - description: Permissions resource type. - enum: - - permissions - example: permissions - type: string - x-enum-varnames: - - PERMISSIONS - Powerpack: - description: Powerpacks are templated groups of dashboard widgets you can save - from an existing dashboard and turn into reusable packs in the widget tray. - properties: - data: - $ref: '#/components/schemas/PowerpackData' - type: object - PowerpackAttributes: - description: Powerpack attribute object. - properties: - description: - description: Description of this powerpack. - example: Powerpack for ABC - type: string - group_widget: - $ref: '#/components/schemas/PowerpackGroupWidget' - name: - description: Name of the powerpack. - example: Sample Powerpack - type: string - tags: - description: List of tags to identify this powerpack. - example: - - tag:foo1 - items: - maxLength: 80 - type: string - maxItems: 8 - type: array - template_variables: - description: List of template variables for this powerpack. - example: - - defaults: - - '*' - name: test - items: - $ref: '#/components/schemas/PowerpackTemplateVariable' - type: array - required: - - group_widget - - name - type: object - PowerpackData: - description: Powerpack data object. - properties: - attributes: - $ref: '#/components/schemas/PowerpackAttributes' - id: - description: ID of the powerpack. - type: string - relationships: - $ref: '#/components/schemas/PowerpackRelationships' - type: - description: Type of widget, must be powerpack. - example: powerpack - type: string - type: object - PowerpackGroupWidget: - description: Powerpack group widget definition object. - properties: - definition: - $ref: '#/components/schemas/PowerpackGroupWidgetDefinition' - layout: - $ref: '#/components/schemas/PowerpackGroupWidgetLayout' - live_span: - $ref: '#/components/schemas/WidgetLiveSpan' - required: - - definition - type: object - PowerpackGroupWidgetDefinition: - description: Powerpack group widget object. - properties: - layout_type: - description: Layout type of widgets. - example: ordered - type: string - show_title: - description: Boolean indicating whether powerpack group title should be - visible or not. - example: true - type: boolean - title: - description: Name for the group widget. - example: Sample Powerpack - type: string - type: - description: Type of widget, must be group. - example: group - type: string - widgets: - description: Widgets inside the powerpack. - example: - - definition: - content: example - type: note - layout: - height: 5 - width: 10 - x: 0 - y: 0 - items: - $ref: '#/components/schemas/PowerpackInnerWidgets' - type: array - required: - - widgets - - layout_type - - type - type: object - PowerpackGroupWidgetLayout: - description: Powerpack group widget layout. - properties: - height: - description: The height of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - width: - description: The width of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - x: - description: The position of the widget on the x (horizontal) axis. Should - be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - y: - description: The position of the widget on the y (vertical) axis. Should - be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - required: - - x - - y - - width - - height - type: object - PowerpackInnerWidgetLayout: - description: Powerpack inner widget layout. - properties: - height: - description: The height of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - width: - description: The width of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - x: - description: The position of the widget on the x (horizontal) axis. Should - be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - y: - description: The position of the widget on the y (vertical) axis. Should - be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - required: - - x - - y - - width - - height - type: object - PowerpackInnerWidgets: - description: Powerpack group widget definition of individual widgets. - properties: - definition: - additionalProperties: {} - description: Information about widget. - example: - definition: - content: example - type: note - type: object - layout: - $ref: '#/components/schemas/PowerpackInnerWidgetLayout' - required: - - definition - type: object - PowerpackRelationships: - description: Powerpack relationship object. - properties: - author: - $ref: '#/components/schemas/RelationshipToUser' - type: object - PowerpackResponse: - description: Response object which includes a single powerpack configuration. - properties: - data: - $ref: '#/components/schemas/PowerpackData' - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/User' - type: array - readOnly: true - type: object - PowerpackResponseLinks: - description: Links attributes. - properties: - first: - description: Link to last page. - type: string - last: - description: Link to first page. - example: https://app.datadoghq.com/api/v2/powerpacks?page[offset]=0&page[limit]=25 - nullable: true - type: string - next: - description: Link for the next set of results. - example: https://app.datadoghq.com/api/v2/powerpacks?page[offset]=25&page[limit]=25 - type: string - prev: - description: Link for the previous set of results. - nullable: true - type: string - self: - description: Link to current page. - example: https://app.datadoghq.com/api/v2/powerpacks - type: string - type: object - PowerpackTemplateVariable: - description: Powerpack template variables. - properties: - available_values: - description: The list of values that the template variable drop-down is - limited to. - example: - - my-host - - host1 - - host2 - items: - description: Template variable value. - type: string - nullable: true - type: array - defaults: - description: One or many template variable default values within the saved - view, which are unioned together using `OR` if more than one is specified. - items: - description: One or many default values of the template variable. - minLength: 1 - type: string - type: array - name: - description: The name of the variable. - example: datacenter - type: string - prefix: - description: The tag prefix associated with the variable. Only tags with - this prefix appear in the variable drop-down. - example: host - nullable: true - type: string - required: - - name - type: object - PowerpacksResponseMeta: - description: Powerpack response metadata. - properties: - pagination: - $ref: '#/components/schemas/PowerpacksResponseMetaPagination' - type: object - PowerpacksResponseMetaPagination: - description: Powerpack response pagination metadata. - properties: - first_offset: - description: The first offset. - format: int64 - type: integer - last_offset: - description: The last offset. - format: int64 - nullable: true - type: integer - limit: - description: Pagination limit. - format: int64 - type: integer - next_offset: - description: The next offset. - format: int64 - type: integer - offset: - description: The offset. - format: int64 - type: integer - prev_offset: - description: The previous offset. - format: int64 - type: integer - total: - description: Total results. - format: int64 - type: integer - type: - description: Offset type. - type: string - type: object - ProcessSummariesMeta: - description: Response metadata object. - properties: - page: - $ref: '#/components/schemas/ProcessSummariesMetaPage' - type: object - ProcessSummariesMetaPage: - description: Paging attributes. - properties: - after: - description: 'The cursor used to get the next results, if any. To make the - next request, use the same - - parameters with the addition of the `page[cursor]`.' - example: 911abf1204838d9cdfcb9a96d0b6a1bd03e1b514074f1ce1737c4cbd - type: string - size: - description: Number of results returned. - format: int32 - maximum: 10000 - minimum: 0 - type: integer - type: object - ProcessSummariesResponse: - description: List of process summaries. - properties: - data: - description: Array of process summary objects. - items: - $ref: '#/components/schemas/ProcessSummary' - type: array - meta: - $ref: '#/components/schemas/ProcessSummariesMeta' - type: object - ProcessSummary: - description: Process summary object. - properties: - attributes: - $ref: '#/components/schemas/ProcessSummaryAttributes' - id: - description: Process ID. - type: string - type: - $ref: '#/components/schemas/ProcessSummaryType' - type: object - ProcessSummaryAttributes: - description: Attributes for a process summary. - properties: - cmdline: - description: Process command line. - type: string - host: - description: Host running the process. - type: string - pid: - description: Process ID. - format: int64 - type: integer - ppid: - description: Parent process ID. - format: int64 - type: integer - start: - description: Time the process was started. - type: string - tags: - description: List of tags associated with the process. - items: - description: A tag associated with the process. - type: string - type: array - timestamp: - description: Time the process was seen. - type: string - user: - description: Process owner. - type: string - type: object - ProcessSummaryType: - default: process - description: Type of process summary. - enum: - - process - example: process - type: string - x-enum-varnames: - - PROCESS - Project: - description: A Project - properties: - attributes: - $ref: '#/components/schemas/ProjectAttributes' - id: - description: The Project's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/ProjectRelationships' - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - id - - type - - attributes - type: object - ProjectAttributes: - description: Project attributes - properties: - key: - description: The project's key - example: CASEM - type: string - name: - description: Project's name - type: string - type: object - ProjectCreate: - description: Project create - properties: - attributes: - $ref: '#/components/schemas/ProjectCreateAttributes' - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - attributes - - type - type: object - ProjectCreateAttributes: - description: Project creation attributes - properties: - key: - description: Project's key. Cannot be "CASE" - example: SEC - type: string - name: - description: name - example: Security Investigation - type: string - required: - - name - - key - type: object - ProjectCreateRequest: - description: Project create request - properties: - data: - $ref: '#/components/schemas/ProjectCreate' - required: - - data - type: object - ProjectRelationship: - description: Relationship to project - properties: - data: - $ref: '#/components/schemas/ProjectRelationshipData' - required: - - data - type: object - ProjectRelationshipData: - description: Relationship to project object - properties: - id: - description: A unique identifier that represents the project - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 - type: string - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - id - - type - type: object - ProjectRelationships: - description: Project relationships - properties: - member_team: - $ref: '#/components/schemas/RelationshipToTeamLinks' - member_user: - $ref: '#/components/schemas/UsersRelationship' - type: object - ProjectResourceType: - default: project - description: Project resource type - enum: - - project - example: project - type: string - x-enum-varnames: - - PROJECT - ProjectResponse: - description: Project response - properties: - data: - $ref: '#/components/schemas/Project' - type: object - ProjectedCost: - description: Projected Cost data. - properties: - attributes: - $ref: '#/components/schemas/ProjectedCostAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/ProjectedCostType' - type: object - ProjectedCostAttributes: - description: Projected Cost attributes data. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - charges: - description: List of charges data reported for the requested month. - items: - $ref: '#/components/schemas/ChargebackBreakdown' - type: array - date: - description: The month requested. - format: date-time - type: string - org_name: - description: The organization name. - type: string - projected_total_cost: - description: The total projected cost of products for the month. - format: double - type: number - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs - to. - type: string - type: object - ProjectedCostResponse: - description: Projected Cost response. - properties: - data: - description: Response containing Projected Cost. - items: - $ref: '#/components/schemas/ProjectedCost' - type: array - type: object - ProjectedCostType: - default: projected_cost - description: Type of cost data. - enum: - - projected_cost - example: projected_cost - type: string - x-enum-varnames: - - PROJECt_COST - ProjectsResponse: - description: Response with projects - properties: - data: - description: Projects response data - items: - $ref: '#/components/schemas/Project' - type: array - type: object - PublishAppResponse: - description: The response object after an app is successfully published. - properties: - data: - $ref: '#/components/schemas/Deployment' - type: object - PutAppsDatastoreItemResponseArray: - description: Response after successfully inserting multiple items into a datastore, - containing the identifiers of the created items. - properties: - data: - description: An array of data objects containing the identifiers of the - successfully inserted items. - items: - $ref: '#/components/schemas/PutAppsDatastoreItemResponseData' - maxItems: 100 - type: array - required: - - data - type: object - PutAppsDatastoreItemResponseData: - description: Data containing the identifier of a single item that was successfully - inserted into the datastore. - properties: - id: - description: The unique identifier assigned to the inserted item. - type: string - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - PutIncidentNotificationRuleRequest: - description: Put request for a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleUpdateData' - required: - - data - type: object - Query: - description: A data query used by an app. This can take the form of an external - action, a data transformation, or a state variable. - oneOf: - - $ref: '#/components/schemas/ActionQuery' - - $ref: '#/components/schemas/DataTransform' - - $ref: '#/components/schemas/StateVariable' - QueryFormula: - description: A formula for calculation based on one or more queries. - properties: - formula: - description: Formula string, referencing one or more queries with their - name property. - example: a+b - type: string - limit: - $ref: '#/components/schemas/FormulaLimit' - required: - - formula - type: object - QuerySortOrder: - default: desc - description: Direction of sort. - enum: - - asc - - desc - type: string - x-enum-varnames: - - ASC - - DESC - RUMAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/RUMAggregateBucketValueSingleString' - - $ref: '#/components/schemas/RUMAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/RUMAggregateBucketValueTimeseries' - RUMAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - RUMAggregateBucketValueSingleString: - description: A single string value. - type: string - RUMAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/RUMAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - RUMAggregateBucketValueTimeseriesPoint: - description: A timeseries point. - properties: - time: - description: The time value for this point. - example: '2020-06-08T11:55:00.123Z' - format: date-time - type: string - value: - description: The value for this point. - example: 19 - format: double - type: number - type: object - RUMAggregateRequest: - description: The object sent with the request to retrieve aggregation buckets - of RUM events from your organization. - properties: - compute: - description: The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/RUMCompute' - type: array - filter: - $ref: '#/components/schemas/RUMQueryFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RUMGroupBy' - type: array - options: - $ref: '#/components/schemas/RUMQueryOptions' - page: - $ref: '#/components/schemas/RUMQueryPageOptions' - type: object - RUMAggregateSort: - description: A sort rule. - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/RUMAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' - type: string - order: - $ref: '#/components/schemas/RUMSortOrder' - type: - $ref: '#/components/schemas/RUMAggregateSortType' - type: object - RUMAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - RUMAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/RUMBucketResponse' - type: array - type: object - RUMAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - RUMAnalyticsAggregateResponse: - description: The response object for the RUM events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/RUMAggregationBucketsResponse' - links: - $ref: '#/components/schemas/RUMResponseLinks' - meta: - $ref: '#/components/schemas/RUMResponseMetadata' - type: object - RUMApplication: - description: RUM application. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - type: - $ref: '#/components/schemas/RUMApplicationType' - required: - - attributes - - id - - type - type: object - RUMApplicationAttributes: - description: RUM application attributes. - properties: - application_id: - description: ID of the RUM application. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - client_token: - description: Client token of the RUM application. - example: abcd1234efgh5678ijkl90abcd1234efgh0 - type: string - created_at: - description: Timestamp in ms of the creation date. - example: 1659479836169 - format: int64 - type: integer - created_by_handle: - description: Handle of the creator user. - example: john.doe - type: string - hash: - description: Hash of the RUM application. Optional. - type: string - is_active: - description: Indicates if the RUM application is active. - example: true - type: boolean - name: - description: Name of the RUM application. - example: my_rum_application - type: string - org_id: - description: Org ID of the RUM application. - example: 999 - format: int32 - maximum: 2147483647 - type: integer - product_scales: - $ref: '#/components/schemas/RUMProductScales' - type: - description: Type of the RUM application. Supported values are `browser`, - `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - updated_at: - description: Timestamp in ms of the last update date. - example: 1659479836169 - format: int64 - type: integer - updated_by_handle: - description: Handle of the updater user. - example: jane.doe - type: string - required: - - application_id - - client_token - - created_at - - created_by_handle - - name - - org_id - - type - - updated_at - - updated_by_handle - type: object - RUMApplicationCreate: - description: RUM application creation. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationCreateAttributes' - type: - $ref: '#/components/schemas/RUMApplicationCreateType' - required: - - attributes - - type - type: object - RUMApplicationCreateAttributes: - description: RUM application creation attributes. - properties: - name: - description: Name of the RUM application. - example: my_new_rum_application - type: string - product_analytics_retention_state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - rum_event_processing_state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: - description: Type of the RUM application. Supported values are `browser`, - `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - required: - - name - type: object - RUMApplicationCreateRequest: - description: RUM application creation request attributes. - properties: - data: - $ref: '#/components/schemas/RUMApplicationCreate' - required: - - data - type: object - RUMApplicationCreateType: - default: rum_application_create - description: RUM application creation type. - enum: - - rum_application_create - example: rum_application_create - type: string - x-enum-varnames: - - RUM_APPLICATION_CREATE - RUMApplicationList: - description: RUM application list. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationListAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - type: - $ref: '#/components/schemas/RUMApplicationListType' - required: - - attributes - - type - type: object - RUMApplicationListAttributes: - description: RUM application list attributes. - properties: - application_id: - description: ID of the RUM application. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - created_at: - description: Timestamp in ms of the creation date. - example: 1659479836169 - format: int64 - type: integer - created_by_handle: - description: Handle of the creator user. - example: john.doe - type: string - hash: - description: Hash of the RUM application. Optional. - type: string - is_active: - description: Indicates if the RUM application is active. - example: true - type: boolean - name: - description: Name of the RUM application. - example: my_rum_application - type: string - org_id: - description: Org ID of the RUM application. - example: 999 - format: int32 - maximum: 2147483647 - type: integer - product_scales: - $ref: '#/components/schemas/RUMProductScales' - type: - description: Type of the RUM application. Supported values are `browser`, - `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - updated_at: - description: Timestamp in ms of the last update date. - example: 1659479836169 - format: int64 - type: integer - updated_by_handle: - description: Handle of the updater user. - example: jane.doe - type: string - required: - - application_id - - created_at - - created_by_handle - - name - - org_id - - type - - updated_at - - updated_by_handle - type: object - RUMApplicationListType: - default: rum_application - description: RUM application list type. - enum: - - rum_application - example: rum_application - type: string - x-enum-varnames: - - RUM_APPLICATION - RUMApplicationResponse: - description: RUM application response. - properties: - data: - $ref: '#/components/schemas/RUMApplication' - type: object - RUMApplicationType: - default: rum_application - description: RUM application response type. - enum: - - rum_application - example: rum_application - type: string - x-enum-varnames: - - RUM_APPLICATION - RUMApplicationUpdate: - description: RUM application update. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationUpdateAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - type: - $ref: '#/components/schemas/RUMApplicationUpdateType' - required: - - id - - type - type: object - RUMApplicationUpdateAttributes: - description: RUM application update attributes. - properties: - name: - description: Name of the RUM application. - example: updated_name_for_my_existing_rum_application - type: string - product_analytics_retention_state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - rum_event_processing_state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: - description: Type of the RUM application. Supported values are `browser`, - `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - type: object - RUMApplicationUpdateRequest: - description: RUM application update request. - properties: - data: - $ref: '#/components/schemas/RUMApplicationUpdate' - required: - - data - type: object - RUMApplicationUpdateType: - default: rum_application_update - description: RUM application update type. - enum: - - rum_application_update - example: rum_application_update - type: string - x-enum-varnames: - - RUM_APPLICATION_UPDATE - RUMApplicationsResponse: - description: RUM applications response. - properties: - data: - description: RUM applications array response. - items: - $ref: '#/components/schemas/RUMApplicationList' - type: array - type: object - RUMBucketResponse: - description: Bucket values. - properties: - by: - additionalProperties: - description: The values for each group-by. - type: string - description: The key-value pairs for each group-by. - example: - '@session.type': user - '@type': view - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/RUMAggregateBucketValue' - description: A map of the metric name to value for regular compute, or a - list of values for a timeseries. - type: object - type: object - RUMCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/RUMAggregationFunction' - interval: - description: 'The time buckets'' size (only used for type=timeseries) - - Defaults to a resolution of 150 points.' - example: 5m - type: string - metric: - description: The metric to use. - example: '@duration' - type: string - type: - $ref: '#/components/schemas/RUMComputeType' - required: - - aggregation - type: object - RUMComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - RUMEvent: - description: Object description of a RUM event after being processed and stored - by Datadog. - properties: - attributes: - $ref: '#/components/schemas/RUMEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/RUMEventType' - type: object - RUMEventAttributes: - description: JSON object containing all event attributes and their associated - values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from RUM events. - example: - customAttribute: 123 - duration: 2345 - type: object - service: - description: 'The name of the application or service generating RUM events. - - It is used to switch from RUM to APM, so make sure you define the same - - value when you use both products.' - example: web-app - type: string - tags: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - timestamp: - description: Timestamp of your event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - RUMEventProcessingScale: - description: RUM event processing scale configuration. - properties: - last_modified_at: - description: Timestamp in milliseconds when this scale was last modified. - example: 1721897494108 - format: int64 - type: integer - state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: object - RUMEventProcessingState: - description: Configures which RUM events are processed and stored for the application. - enum: - - ALL - - ERROR_FOCUSED_MODE - - NONE - example: ALL - type: string - x-enum-descriptions: - - Process and store all RUM events (sessions, views, actions, resources, errors) - - Process and store only error events and related critical events - - "Disable RUM event processing\u2014no events are stored" - x-enum-varnames: - - ALL - - ERROR_FOCUSED_MODE - - NONE - RUMEventType: - default: rum - description: Type of the event. - enum: - - rum - example: rum - type: string - x-enum-varnames: - - RUM - RUMEventsResponse: - description: Response object with all events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/RUMEvent' - type: array - links: - $ref: '#/components/schemas/RUMResponseLinks' - meta: - $ref: '#/components/schemas/RUMResponseMetadata' - type: object - RUMGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@view.time_spent' - type: string - histogram: - $ref: '#/components/schemas/RUMGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/RUMGroupByMissing' - sort: - $ref: '#/components/schemas/RUMAggregateSort' - total: - $ref: '#/components/schemas/RUMGroupByTotal' - required: - - facet - type: object - RUMGroupByHistogram: - description: 'Used to perform a histogram computation (only for measure facets). - - Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval.' - properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: 'The maximum value for the measure used in the histogram - - (values greater than this one are filtered out).' - example: 100 - format: double - type: number - min: - description: 'The minimum value for the measure used in the histogram - - (values smaller than this one are filtered out).' - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - RUMGroupByMissing: - description: The value to use for logs that don't have the facet used to group - by. - oneOf: - - $ref: '#/components/schemas/RUMGroupByMissingString' - - $ref: '#/components/schemas/RUMGroupByMissingNumber' - RUMGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - RUMGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - RUMGroupByTotal: - default: false - description: A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/RUMGroupByTotalBoolean' - - $ref: '#/components/schemas/RUMGroupByTotalString' - - $ref: '#/components/schemas/RUMGroupByTotalNumber' - RUMGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - RUMGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - RUMGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - RUMProductAnalyticsRetentionScale: - description: Product Analytics retention scale configuration. - properties: - last_modified_at: - description: Timestamp in milliseconds when this scale was last modified. - example: 1747922145974 - format: int64 - type: integer - state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - type: object - RUMProductAnalyticsRetentionState: - description: Controls the retention policy for Product Analytics data derived - from RUM events. - enum: - - MAX - - NONE - example: MAX - type: string - x-enum-descriptions: - - Store Product Analytics data for the maximum available retention period - - Do not store Product Analytics data - x-enum-varnames: - - MAX - - NONE - RUMProductScales: - description: Product Scales configuration for the RUM application. - properties: - product_analytics_retention_scale: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionScale' - rum_event_processing_scale: - $ref: '#/components/schemas/RUMEventProcessingScale' - type: object - RUMQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: The minimum time for the requested events; supports date (in - [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, - hours, minutes, and the `Z` UTC indicator - seconds and fractional seconds - are optional), math, and regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the RUM search syntax. - example: '@type:session AND @session.type:user' - type: string - to: - default: now - description: The maximum time for the requested events; supports date (in - [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, - hours, minutes, and the `Z` UTC indicator - seconds and fractional seconds - are optional), math, and regular timestamps (in milliseconds). - example: now - type: string - type: object - RUMQueryOptions: - description: 'Global query options that are used during the query. - - Note: Only supply timezone or time offset, not both. Otherwise, the query - fails.' - properties: - time_offset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: The timezone can be specified as GMT, UTC, an offset from UTC - (like UTC+1), or as a Timezone Database identifier (like America/New_York). - example: GMT - type: string - type: object - RUMQueryPageOptions: - description: Paging attributes for listing events. - properties: - cursor: - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - RUMResponseLinks: - description: Links attributes. - properties: - next: - description: 'Link for the next set of results. Note that the request can - also be made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/rum/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - RUMResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/RUMResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/RUMResponseStatus' - warnings: - description: 'A list of warnings (non-fatal errors) encountered. Partial - results may return if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/RUMWarning' - type: array - type: object - RUMResponsePage: - description: Paging attributes. - properties: - after: - description: The cursor to use to get the next results, if any. To make - the next request, use the same parameters with the addition of `page[cursor]`. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - RUMResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - RUMSearchEventsRequest: - description: The request for a RUM events list. - properties: - filter: - $ref: '#/components/schemas/RUMQueryFilter' - options: - $ref: '#/components/schemas/RUMQueryOptions' - page: - $ref: '#/components/schemas/RUMQueryPageOptions' - sort: - $ref: '#/components/schemas/RUMSort' - type: object - RUMSort: - description: Sort parameters when querying events. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - RUMSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - RUMWarning: - description: A warning message indicating something that went wrong with the - query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - ReadinessGate: - description: Used to merge multiple branches into a single branch. - properties: - thresholdType: - $ref: '#/components/schemas/ReadinessGateThresholdType' - required: - - thresholdType - type: object - ReadinessGateThresholdType: - description: The definition of `ReadinessGateThresholdType` object. - enum: - - ANY - - ALL - example: ANY - type: string - x-enum-varnames: - - ANY - - ALL - RecommendationAttributes: - description: Attributes of the SPA Recommendation resource. Contains recommendations - for both driver and executor components. - properties: - driver: - $ref: '#/components/schemas/ComponentRecommendation' - executor: - $ref: '#/components/schemas/ComponentRecommendation' - required: - - driver - - executor - type: object - RecommendationData: - description: JSON:API resource object for SPA Recommendation. Includes type, - optional ID, and resource attributes with structured recommendations. - properties: - attributes: - $ref: '#/components/schemas/RecommendationAttributes' - id: - description: Resource identifier for the recommendation. Optional in responses. - type: string - type: - $ref: '#/components/schemas/RecommendationType' - required: - - type - - attributes - type: object - RecommendationDocument: - description: JSON:API document containing a single Recommendation resource. - Returned by SPA when the Spark Gateway requests recommendations. - properties: - data: - $ref: '#/components/schemas/RecommendationData' - required: - - data - type: object - RecommendationType: - default: recommendation - description: JSON:API resource type for Spark Pod Autosizing recommendations. - Identifies the Recommendation resource returned by SPA. - enum: - - recommendation - example: recommendation - type: string - x-enum-varnames: - - RECOMMENDATION - RegisterAppKeyResponse: - description: The response object after creating an app key registration. - properties: - data: - $ref: '#/components/schemas/AppKeyRegistrationData' - type: object - RelationAttributes: - description: Relation attributes. - properties: - from: - $ref: '#/components/schemas/RelationEntity' - to: - $ref: '#/components/schemas/RelationEntity' - type: - $ref: '#/components/schemas/RelationType' - type: object - RelationEntity: - description: Relation entity reference. - properties: - kind: - description: Entity kind. - type: string - name: - description: Entity name. - type: string - namespace: - description: Entity namespace. - type: string - type: object - RelationIncludeType: - description: Supported include types for relations. - enum: - - entity - - schema - type: string - x-enum-varnames: - - ENTITY - - SCHEMA - RelationMeta: - description: Relation metadata. - properties: - createdAt: - description: Relation creation time. - format: date-time - type: string - definedBy: - description: Relation defined by. - type: string - modifiedAt: - description: Relation modification time. - format: date-time - type: string - source: - description: Relation source. - type: string - type: object - RelationRelationships: - description: Relation relationships. - properties: - fromEntity: - $ref: '#/components/schemas/RelationToEntity' - toEntity: - $ref: '#/components/schemas/RelationToEntity' - type: object - RelationResponse: - description: Relation response data. - properties: - attributes: - $ref: '#/components/schemas/RelationAttributes' - id: - description: Relation ID. - type: string - meta: - $ref: '#/components/schemas/RelationMeta' - relationships: - $ref: '#/components/schemas/RelationRelationships' - subtype: - description: Relation subtype. - type: string - type: - $ref: '#/components/schemas/RelationResponseType' - type: object - RelationResponseData: - description: Array of relation responses - items: - $ref: '#/components/schemas/RelationResponse' - type: array - RelationResponseMeta: - description: Relation response metadata. - properties: - count: - description: Total relations count. - format: int64 - type: integer - includeCount: - description: Total included data count. - format: int64 - type: integer - type: object - RelationResponseType: - description: Relation type. - enum: - - relation - type: string - x-enum-varnames: - - RELATION - RelationToEntity: - description: Relation to entity. - properties: - data: - $ref: '#/components/schemas/RelationshipItem' - meta: - $ref: '#/components/schemas/EntityMeta' - type: object - RelationType: - description: Supported relation types. - enum: - - RelationTypeOwns - - RelationTypeOwnedBy - - RelationTypeDependsOn - - RelationTypeDependencyOf - - RelationTypePartsOf - - RelationTypeHasPart - - RelationTypeOtherOwns - - RelationTypeOtherOwnedBy - - RelationTypeImplementedBy - - RelationTypeImplements - type: string - x-enum-varnames: - - RELATIONTYPEOWNS - - RELATIONTYPEOWNEDBY - - RELATIONTYPEDEPENDSON - - RELATIONTYPEDEPENDENCYOF - - RELATIONTYPEPARTSOF - - RELATIONTYPEHASPART - - RELATIONTYPEOTHEROWNS - - RELATIONTYPEOTHEROWNEDBY - - RELATIONTYPEIMPLEMENTEDBY - - RELATIONTYPEIMPLEMENTS - RelationshipArray: - description: Relationships. - items: - $ref: '#/components/schemas/RelationshipItem' - type: array - RelationshipItem: - description: Relationship entry. - properties: - id: - description: Associated data ID. - type: string - type: - description: Relationship type. - type: string - type: object - RelationshipToIncidentAttachment: - description: A relationship reference for attachments. - properties: - data: - description: An array of incident attachments. - items: - $ref: '#/components/schemas/RelationshipToIncidentAttachmentData' - type: array - required: - - data - type: object - RelationshipToIncidentAttachmentData: - description: The attachment relationship data. - properties: - id: - description: A unique identifier that represents the attachment. - example: 00000000-0000-abcd-1000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentAttachmentType' - required: - - id - - type - type: object - RelationshipToIncidentImpactData: - description: Relationship to impact object. - properties: - id: - description: A unique identifier that represents the impact. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentImpactsType' - required: - - id - - type - type: object - RelationshipToIncidentImpacts: - description: Relationship to impacts. - properties: - data: - description: An array of incident impacts. - items: - $ref: '#/components/schemas/RelationshipToIncidentImpactData' - type: array - required: - - data - type: object - RelationshipToIncidentIntegrationMetadataData: - description: A relationship reference for an integration metadata object. - example: - id: 00000000-abcd-0002-0000-000000000000 - type: incident_integrations - properties: - id: - description: A unique identifier that represents the integration metadata. - example: 00000000-abcd-0001-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - id - - type - type: object - RelationshipToIncidentIntegrationMetadatas: - description: A relationship reference for multiple integration metadata objects. - example: - data: - - id: 00000000-abcd-0005-0000-000000000000 - type: incident_integrations - - id: 00000000-abcd-0006-0000-000000000000 - type: incident_integrations - properties: - data: - description: Integration metadata relationship array - example: - - id: 00000000-abcd-0003-0000-000000000000 - type: incident_integrations - - id: 00000000-abcd-0004-0000-000000000000 - type: incident_integrations - items: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadataData' - type: array - required: - - data - type: object - RelationshipToIncidentNotificationTemplate: - description: A relationship reference to a notification template. - properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplateData' - required: - - data - type: object - RelationshipToIncidentNotificationTemplateData: - description: The notification template relationship data. - properties: - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - RelationshipToIncidentPostmortem: - description: A relationship reference for postmortems. - example: - data: - id: 00000000-0000-abcd-3000-000000000000 - type: incident_postmortems - properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentPostmortemData' - required: - - data - type: object - RelationshipToIncidentPostmortemData: - description: The postmortem relationship data. - example: - id: 00000000-0000-abcd-2000-000000000000 - type: incident_postmortems - properties: - id: - description: A unique identifier that represents the postmortem. - example: 00000000-0000-abcd-1000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentPostmortemType' - required: - - id - - type - type: object - RelationshipToIncidentResponderData: - description: Relationship to impact object. - properties: - id: - description: A unique identifier that represents the responder. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentRespondersType' - required: - - id - - type - type: object - RelationshipToIncidentResponders: - description: Relationship to incident responders. - properties: - data: - description: An array of incident responders. - items: - $ref: '#/components/schemas/RelationshipToIncidentResponderData' - type: array - required: - - data - type: object - RelationshipToIncidentType: - description: Relationship to an incident type. - properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentTypeData' - required: - - data - type: object - RelationshipToIncidentTypeData: - description: Relationship to incident type object. - properties: - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type - type: object - RelationshipToIncidentUserDefinedFieldData: - description: Relationship to impact object. - properties: - id: - description: A unique identifier that represents the responder. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentUserDefinedFieldType' - required: - - id - - type - type: object - RelationshipToIncidentUserDefinedFields: - description: Relationship to incident user defined fields. - properties: - data: - description: An array of user defined fields. - items: - $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFieldData' - type: array - required: - - data - type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' - required: - - data - type: object - RelationshipToOrganizationData: - description: Relationship to organization object. - properties: - id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - id - - type - type: object - RelationshipToOrganizations: - description: Relationship to organizations. - properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array - required: - - data - type: object - RelationshipToOutcome: - description: The JSON:API relationship to a scorecard outcome. - properties: - data: - $ref: '#/components/schemas/RelationshipToOutcomeData' - type: object - RelationshipToOutcomeData: - description: The JSON:API relationship to an outcome, which returns the related - rule id. - properties: - id: - $ref: '#/components/schemas/RuleId' - type: - $ref: '#/components/schemas/RuleType' - type: object - RelationshipToPermission: - description: Relationship to a permissions object. - properties: - data: - $ref: '#/components/schemas/RelationshipToPermissionData' - type: object - RelationshipToPermissionData: - description: Relationship to permission object. - properties: - id: - description: ID of the permission. - type: string - type: - $ref: '#/components/schemas/PermissionsType' - type: object - RelationshipToPermissions: - description: Relationship to multiple permissions objects. - properties: - data: - description: Relationships to permission objects. - items: - $ref: '#/components/schemas/RelationshipToPermissionData' - type: array - type: object - RelationshipToRole: - description: Relationship to role. - properties: - data: - $ref: '#/components/schemas/RelationshipToRoleData' - type: object - RelationshipToRoleData: - description: Relationship to role object. - properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - type: - $ref: '#/components/schemas/RolesType' - type: object - RelationshipToRoles: - description: Relationship to roles. - properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array - type: object - RelationshipToRule: - description: Scorecard create rule response relationship. - properties: - scorecard: - $ref: '#/components/schemas/RelationshipToRuleData' - type: object - RelationshipToRuleData: - description: Relationship data for a rule. - properties: - data: - $ref: '#/components/schemas/RelationshipToRuleDataObject' - type: object - RelationshipToRuleDataObject: - description: Rule relationship data. - properties: - id: - description: The unique ID for a scorecard. - example: q8MQxk8TCqrHnWkp - type: string - type: - $ref: '#/components/schemas/ScorecardType' - type: object - RelationshipToSAMLAssertionAttribute: - description: AuthN Mapping relationship to SAML Assertion Attribute. - properties: - data: - $ref: '#/components/schemas/RelationshipToSAMLAssertionAttributeData' - required: - - data - type: object - RelationshipToSAMLAssertionAttributeData: - description: Data of AuthN Mapping relationship to SAML Assertion Attribute. - properties: - id: - description: The ID of the SAML assertion attribute. - example: '0' - type: string - type: - $ref: '#/components/schemas/SAMLAssertionAttributesType' - required: - - id - - type - type: object - RelationshipToTeam: - description: Relationship to team. - properties: - data: - $ref: '#/components/schemas/RelationshipToTeamData' - type: object - RelationshipToTeamData: - description: Relationship to Team object. - properties: - id: - description: The unique identifier of the team. - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamType' - type: object - RelationshipToTeamLinkData: - description: Relationship between a link and a team - properties: - id: - description: The team link's identifier - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - id - - type - type: object - RelationshipToTeamLinks: - description: Relationship between a team and a team link - properties: - data: - description: Related team links - items: - $ref: '#/components/schemas/RelationshipToTeamLinkData' - type: array - links: - $ref: '#/components/schemas/TeamRelationshipsLinks' - type: object - RelationshipToUser: - description: Relationship to user. - properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' - required: - - data - type: object - RelationshipToUserData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - RelationshipToUserTeamPermission: - description: Relationship between a user team permission and a team - properties: - data: - $ref: '#/components/schemas/RelationshipToUserTeamPermissionData' - links: - $ref: '#/components/schemas/TeamRelationshipsLinks' - type: object - RelationshipToUserTeamPermissionData: - description: Related user team permission data - properties: - id: - description: The ID of the user team permission - example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 - type: string - type: - $ref: '#/components/schemas/UserTeamPermissionType' - required: - - id - - type - type: object - RelationshipToUserTeamTeam: - description: Relationship between team membership and team - properties: - data: - $ref: '#/components/schemas/RelationshipToUserTeamTeamData' - required: - - data - type: object - RelationshipToUserTeamTeamData: - description: The team associated with the membership - properties: - id: - description: The ID of the team associated with the membership - example: d7e15d9d-d346-43da-81d8-3d9e71d9a5e9 - type: string - type: - $ref: '#/components/schemas/UserTeamTeamType' - required: - - id - - type - type: object - RelationshipToUserTeamUser: - description: Relationship between team membership and user - properties: - data: - $ref: '#/components/schemas/RelationshipToUserTeamUserData' - required: - - data - type: object - RelationshipToUserTeamUserData: - description: A user's relationship with a team - properties: - id: - description: The ID of the user associated with the team - example: b8626d7e-cedd-11eb-abf5-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/UserTeamUserType' - required: - - id - - type - type: object - RelationshipToUsers: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array - required: - - data - type: object - Remediation: - description: Vulnerability remediation. - properties: - auto_solvable: - description: Whether the vulnerability can be resolved when recompiling - the package or not. - example: false - type: boolean - avoided_advisories: - description: Avoided advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - fixed_advisories: - description: Remediation fixed advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - library_name: - description: Library name remediating the vulnerability. - example: stdlib - type: string - library_version: - description: Library version remediating the vulnerability. - example: Upgrade to a version >= 1.20.0 - type: string - new_advisories: - description: New advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - remaining_advisories: - description: Remaining advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - type: - description: Remediation type. - example: text - type: string - required: - - type - - library_name - - library_version - - auto_solvable - - fixed_advisories - - remaining_advisories - - new_advisories - - avoided_advisories - type: object - ReorderRetentionFiltersRequest: - description: A list of retention filters to reorder. - properties: - data: - description: A list of retention filters objects. - items: - $ref: '#/components/schemas/RetentionFilterWithoutAttributes' - type: array - required: - - data - type: object - ResourceFilterAttributes: - description: Attributes of a resource filter. - example: - aws: - '123456789': - - environment:production - - team:devops - azure: - sub-001: - - app:frontend - gcp: - project-abc: - - region:us-central1 - properties: - cloud_provider: - additionalProperties: - additionalProperties: - items: - description: Tag filter in format "key:value" - example: environment:production - type: string - type: array - type: object - description: A map of cloud provider names (e.g., "aws", "gcp", "azure") - to a map of account/resource IDs and their associated tag filters. - type: object - uuid: - description: The UUID of the resource filter. - type: string - required: - - cloud_provider - type: object - ResourceFilterRequestType: - description: Constant string to identify the request type. - enum: - - csm_resource_filter - example: csm_resource_filter - type: string - x-enum-varnames: - - CSM_RESOURCE_FILTER - ResponseMetaAttributes: - description: Object describing meta attributes of response. - properties: - page: - $ref: '#/components/schemas/Pagination' - type: object - RestrictionPolicy: - description: Restriction policy object. - properties: - attributes: - $ref: '#/components/schemas/RestrictionPolicyAttributes' - id: - description: The identifier, always equivalent to the value specified in - the `resource_id` path parameter. - example: dashboard:abc-def-ghi - type: string - type: - $ref: '#/components/schemas/RestrictionPolicyType' - required: - - type - - id - - attributes - type: object - RestrictionPolicyAttributes: - description: Restriction policy attributes. - example: - bindings: [] - properties: - bindings: - description: An array of bindings. - items: - $ref: '#/components/schemas/RestrictionPolicyBinding' - type: array - required: - - bindings - type: object - RestrictionPolicyBinding: - description: Specifies which principals are associated with a relation. - properties: - principals: - description: 'An array of principals. A principal is a subject or group - of subjects. - - Each principal is formatted as `type:id`. Supported types: `role`, `team`, - `user`, and `org`. - - The org ID can be obtained through the api/v2/current_user API. - - The user principal type accepts service account IDs.' - example: - - role:00000000-0000-1111-0000-000000000000 - items: - description: 'Subject or group of subjects. Each principal is formatted - as `type:id`. - - Supported types: `role`, `team`, `user`, and `org`. - - The org ID can be obtained through the api/v2/current_user API. - - The user principal type accepts service account IDs.' - type: string - type: array - relation: - description: The role/level of access. - example: editor - type: string - required: - - relation - - principals - type: object - RestrictionPolicyResponse: - description: Response containing information about a single restriction policy. - properties: - data: - $ref: '#/components/schemas/RestrictionPolicy' - required: - - data - type: object - RestrictionPolicyType: - default: restriction_policy - description: Restriction policy type. - enum: - - restriction_policy - example: restriction_policy - type: string - x-enum-varnames: - - RESTRICTION_POLICY - RestrictionPolicyUpdateRequest: - description: Update request for a restriction policy. - properties: - data: - $ref: '#/components/schemas/RestrictionPolicy' - required: - - data - type: object - RetentionFilter: - description: The definition of the retention filter. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterAttributes' - id: - description: The ID of the retention filter. - example: 7RBOb7dLSYWI01yc3pIH8w - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - type - - attributes - type: object - RetentionFilterAll: - description: The definition of the retention filter. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterAllAttributes' - id: - description: The ID of the retention filter. - example: 7RBOb7dLSYWI01yc3pIH8w - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - type - - attributes - type: object - RetentionFilterAllAttributes: - description: The attributes of the retention filter. - properties: - created_at: - description: The creation timestamp of the retention filter. - format: int64 - type: integer - created_by: - description: The creator of the retention filter. - type: string - editable: - description: Shows whether the filter can be edited. - example: true - type: boolean - enabled: - description: The status of the retention filter (Enabled/Disabled). - example: true - type: boolean - execution_order: - description: The execution order of the retention filter. - format: int64 - type: integer - filter: - $ref: '#/components/schemas/SpansFilter' - filter_type: - $ref: '#/components/schemas/RetentionFilterAllType' - modified_at: - description: The modification timestamp of the retention filter. - format: int64 - type: integer - modified_by: - description: The modifier of the retention filter. - type: string - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: 'Sample rate to apply to spans going through this retention - filter. - - A value of 1.0 keeps all spans matching the query.' - example: 1.0 - format: double - type: number - trace_rate: - description: 'Sample rate to apply to traces containing spans going through - this retention filter. - - A value of 1.0 keeps all traces with spans matching the query.' - example: 1.0 - format: double - type: number - type: object - RetentionFilterAllType: - default: spans-sampling-processor - description: The type of retention filter. - enum: - - spans-sampling-processor - - spans-errors-sampling-processor - - spans-appsec-sampling-processor - example: spans-sampling-processor - type: string - x-enum-varnames: - - SPANS_SAMPLING_PROCESSOR - - SPANS_ERRORS_SAMPLING_PROCESSOR - - SPANS_APPSEC_SAMPLING_PROCESSOR - RetentionFilterAttributes: - description: The attributes of the retention filter. - properties: - created_at: - description: The creation timestamp of the retention filter. - format: int64 - type: integer - created_by: - description: The creator of the retention filter. - type: string - editable: - description: Shows whether the filter can be edited. - example: true - type: boolean - enabled: - description: The status of the retention filter (Enabled/Disabled). - example: true - type: boolean - execution_order: - description: The execution order of the retention filter. - format: int64 - type: integer - filter: - $ref: '#/components/schemas/SpansFilter' - filter_type: - $ref: '#/components/schemas/RetentionFilterType' - modified_at: - description: The modification timestamp of the retention filter. - format: int64 - type: integer - modified_by: - description: The modifier of the retention filter. - type: string - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: 'Sample rate to apply to spans going through this retention - filter. - - A value of 1.0 keeps all spans matching the query.' - example: 1.0 - format: double - type: number - trace_rate: - description: 'Sample rate to apply to traces containing spans going through - this retention filter. - - A value of 1.0 keeps all traces with spans matching the query.' - example: 1.0 - format: double - type: number - type: object - RetentionFilterCreateAttributes: - description: The object describing the configuration of the retention filter - to create/update. - properties: - enabled: - description: Enable/Disable the retention filter. - example: true - type: boolean - filter: - $ref: '#/components/schemas/SpansFilterCreate' - filter_type: - $ref: '#/components/schemas/RetentionFilterType' - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: 'Sample rate to apply to spans going through this retention - filter. - - A value of 1.0 keeps all spans matching the query.' - example: 1.0 - format: double - type: number - trace_rate: - description: 'Sample rate to apply to traces containing spans going through - this retention filter. - - A value of 1.0 keeps all traces with spans matching the query.' - example: 1.0 - format: double - type: number - required: - - name - - filter - - enabled - - filter_type - - rate - type: object - RetentionFilterCreateData: - description: The body of the retention filter to be created. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterCreateAttributes' - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - attributes - - type - type: object - RetentionFilterCreateRequest: - description: The body of the retention filter to be created. - properties: - data: - $ref: '#/components/schemas/RetentionFilterCreateData' - required: - - data - type: object - RetentionFilterCreateResponse: - description: The retention filters definition. - properties: - data: - $ref: '#/components/schemas/RetentionFilter' - type: object - RetentionFilterResponse: - description: The retention filters definition. - properties: - data: - $ref: '#/components/schemas/RetentionFilterAll' - type: object - RetentionFilterType: - default: spans-sampling-processor - description: The type of retention filter. The value should always be spans-sampling-processor. - enum: - - spans-sampling-processor - example: spans-sampling-processor - type: string - x-enum-varnames: - - SPANS_SAMPLING_PROCESSOR - RetentionFilterUpdateAttributes: - description: The object describing the configuration of the retention filter - to create/update. - properties: - enabled: - description: Enable/Disable the retention filter. - example: true - type: boolean - filter: - $ref: '#/components/schemas/SpansFilterCreate' - filter_type: - $ref: '#/components/schemas/RetentionFilterAllType' - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: 'Sample rate to apply to spans going through this retention - filter. - - A value of 1.0 keeps all spans matching the query.' - example: 1.0 - format: double - type: number - trace_rate: - description: 'Sample rate to apply to traces containing spans going through - this retention filter. - - A value of 1.0 keeps all traces with spans matching the query.' - example: 1.0 - format: double - type: number - required: - - name - - filter - - enabled - - filter_type - - rate - type: object - RetentionFilterUpdateData: - description: The body of the retention filter to be updated. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterUpdateAttributes' - id: - description: The ID of the retention filter. - example: retention-filter-id - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - attributes - - type - type: object - RetentionFilterUpdateRequest: - description: The body of the retention filter to be updated. - properties: - data: - $ref: '#/components/schemas/RetentionFilterUpdateData' - required: - - data - type: object - RetentionFilterWithoutAttributes: - description: The retention filter object . - properties: - id: - description: The ID of the retention filter. - example: 7RBOb7dLSYWI01yc3pIH8w - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - type - type: object - RetentionFiltersResponse: - description: An ordered list of retention filters. - properties: - data: - description: A list of retention filters objects. - items: - $ref: '#/components/schemas/RetentionFilterAll' - type: array - required: - - data - type: object - RetryStrategy: - description: The definition of `RetryStrategy` object. - properties: - kind: - $ref: '#/components/schemas/RetryStrategyKind' - linear: - $ref: '#/components/schemas/RetryStrategyLinear' - required: - - kind - type: object - RetryStrategyKind: - description: The definition of `RetryStrategyKind` object. - enum: - - RETRY_STRATEGY_LINEAR - example: RETRY_STRATEGY_LINEAR - type: string - x-enum-varnames: - - RETRY_STRATEGY_LINEAR - RetryStrategyLinear: - description: The definition of `RetryStrategyLinear` object. - properties: - interval: - description: The `RetryStrategyLinear` `interval`. The expected format is - the number of seconds ending with an s. For example, 1 day is 86400s - example: '' - type: string - maxRetries: - description: The `RetryStrategyLinear` `maxRetries`. - example: 0.0 - format: double - type: number - required: - - interval - - maxRetries - type: object - Role: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - RoleAttributes: - description: Attributes of the role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: The name of the role. The name is neither unique nor a stable - identifier of the role. - type: string - user_count: - description: Number of users with that role. - format: int64 - readOnly: true - type: integer - type: object - RoleClone: - description: Data for the clone role request. - properties: - attributes: - $ref: '#/components/schemas/RoleCloneAttributes' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - - attributes - type: object - RoleCloneAttributes: - description: Attributes required to create a new role by cloning an existing - one. - properties: - name: - description: Name of the new role that is cloned. - example: cloned-role - type: string - required: - - name - type: object - RoleCloneRequest: - description: Request to create a role by cloning an existing role. - properties: - data: - $ref: '#/components/schemas/RoleClone' - required: - - data - type: object - RoleCreateAttributes: - description: Attributes of the created role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: Name of the role. - example: developers - type: string - required: - - name - type: object - RoleCreateData: - description: Data related to the creation of a role. - properties: - attributes: - $ref: '#/components/schemas/RoleCreateAttributes' - relationships: - $ref: '#/components/schemas/RoleRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - attributes - type: object - RoleCreateRequest: - description: Create a role. - properties: - data: - $ref: '#/components/schemas/RoleCreateData' - required: - - data - type: object - RoleCreateResponse: - description: Response containing information about a created role. - properties: - data: - $ref: '#/components/schemas/RoleCreateResponseData' - type: object - RoleCreateResponseData: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleCreateAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - RoleRelationships: - description: Relationships of the role object. - properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' - type: object - RoleResponse: - description: Response containing information about a single role. - properties: - data: - $ref: '#/components/schemas/Role' - type: object - RoleResponseRelationships: - description: Relationships of the role object returned by the API. - properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' - type: object - RoleUpdateAttributes: - description: Attributes of the role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: Name of the role. - type: string - user_count: - description: The user count. - format: int32 - maximum: 2147483647 - type: integer - type: object - RoleUpdateData: - description: Data related to the update of a role. - properties: - attributes: - $ref: '#/components/schemas/RoleUpdateAttributes' - id: - description: The unique identifier of the role. - example: 00000000-0000-1111-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/RoleRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - attributes - - type - - id - type: object - RoleUpdateRequest: - description: Update a role. - properties: - data: - $ref: '#/components/schemas/RoleUpdateData' - required: - - data - type: object - RoleUpdateResponse: - description: Response containing information about an updated role. - properties: - data: - $ref: '#/components/schemas/RoleUpdateResponseData' - type: object - RoleUpdateResponseData: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleUpdateAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - RolesResponse: - description: Response containing information about multiple roles. - properties: - data: - description: Array of returned roles. - items: - $ref: '#/components/schemas/Role' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - RolesSort: - default: name - description: Sorting options for roles. - enum: - - name - - -name - - modified_at - - -modified_at - - user_count - - -user_count - type: string - x-enum-varnames: - - NAME_ASCENDING - - NAME_DESCENDING - - MODIFIED_AT_ASCENDING - - MODIFIED_AT_DESCENDING - - USER_COUNT_ASCENDING - - USER_COUNT_DESCENDING - RolesType: - default: roles - description: Roles type. - enum: - - roles - example: roles - type: string - x-enum-varnames: - - ROLES - RoutingRule: - description: Represents a routing rule, including its attributes, relationships, - and unique identifier. - properties: - attributes: - $ref: '#/components/schemas/RoutingRuleAttributes' - id: - description: Specifies the unique identifier of this routing rule. - type: string - relationships: - $ref: '#/components/schemas/RoutingRuleRelationships' - type: - $ref: '#/components/schemas/RoutingRuleType' - required: - - type - type: object - RoutingRuleAction: - description: Defines an action that is executed when a routing rule matches - certain criteria. - oneOf: - - $ref: '#/components/schemas/SendSlackMessageAction' - - $ref: '#/components/schemas/SendTeamsMessageAction' - RoutingRuleAttributes: - description: Defines the configurable attributes of a routing rule, such as - actions, query, time restriction, and urgency. - properties: - actions: - description: Specifies the list of actions to perform when the routing rule - matches. - items: - $ref: '#/components/schemas/RoutingRuleAction' - type: array - query: - description: Defines the query or condition that triggers this routing rule. - type: string - time_restriction: - $ref: '#/components/schemas/TimeRestrictions' - nullable: true - urgency: - $ref: '#/components/schemas/Urgency' - type: object - RoutingRuleRelationships: - description: Specifies relationships for a routing rule, linking to associated - policy resources. - properties: - policy: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicy' - type: object - RoutingRuleRelationshipsPolicy: - description: Defines the relationship that links a routing rule to a policy. - properties: - data: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicyData' - nullable: true - type: object - RoutingRuleRelationshipsPolicyData: - description: Represents the policy data reference, containing the policy's ID - and resource type. - properties: - id: - description: Specifies the unique identifier of the policy. - example: '' - type: string - type: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicyDataType' - required: - - type - - id - type: object - RoutingRuleRelationshipsPolicyDataType: - default: policies - description: Indicates that the resource is of type 'policies'. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - RoutingRuleType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - RuleAttributes: - description: Details of a rule. - properties: - category: - deprecated: true - description: The scorecard name to which this rule must belong. - type: string - created_at: - description: Creation time of the rule outcome. - format: date-time - type: string - custom: - description: Defines if the rule is a custom rule. - type: boolean - description: - description: Explanation of the rule. - type: string - enabled: - description: If enabled, the rule is calculated as part of the score. - example: true - type: boolean - level: - $ref: '#/components/schemas/RuleLevel' - modified_at: - description: Time of the last rule outcome modification. - format: date-time - type: string - name: - description: Name of the rule. - example: Team Defined - type: string - owner: - description: Owner of the rule. - type: string - scorecard_name: - description: The scorecard name to which this rule must belong. - example: Deployments automated via Deployment Trains - type: string - type: object - RuleId: - description: The unique ID for a scorecard rule. - example: q8MQxk8TCqrHnWkx - type: string - RuleLevel: - description: The maturity level of the rule (1, 2, or 3). - example: 2 - format: int32 - maximum: 3 - minimum: 1 - type: integer - RuleName: - description: Name of the notification rule. - example: Rule 1 - type: string - RuleOutcomeRelationships: - description: The JSON:API relationship to a scorecard rule. - properties: - rule: - $ref: '#/components/schemas/RelationshipToOutcome' - type: object - RuleSeverity: - description: Severity of a security rule. - enum: - - critical - - high - - medium - - low - - unknown - - info - example: critical - type: string - x-enum-varnames: - - CRITICAL - - HIGH - - MEDIUM - - LOW - - UNKNOWN - - INFO - RuleType: - default: rule - description: The JSON:API type for scorecard rules. - enum: - - rule - example: rule - type: string - x-enum-varnames: - - RULE - RuleTypes: - description: Security rule types used as filters in security rules. - example: - - misconfiguration - - attack_path - items: - $ref: '#/components/schemas/RuleTypesItems' - type: array - RuleTypesItems: - description: 'Security rule type which can be used in security rules. - - Signal-based notification rules can filter signals based on rule types application_security, - log_detection, - - workload_security, signal_correlation, cloud_configuration and infrastructure_configuration. - - Vulnerability-based notification rules can filter vulnerabilities based on - rule types application_code_vulnerability, - - application_library_vulnerability, attack_path, container_image_vulnerability, - identity_risk, misconfiguration, api_security, host_vulnerability and iac_misconfiguration.' - enum: - - application_security - - log_detection - - workload_security - - signal_correlation - - cloud_configuration - - infrastructure_configuration - - application_code_vulnerability - - application_library_vulnerability - - attack_path - - container_image_vulnerability - - identity_risk - - misconfiguration - - api_security - - host_vulnerability - - iac_misconfiguration - type: string - x-enum-varnames: - - APPLICATION_SECURITY - - LOG_DETECTION - - WORKLOAD_SECURITY - - SIGNAL_CORRELATION - - CLOUD_CONFIGURATION - - INFRASTRUCTURE_CONFIGURATION - - APPLICATION_CODE_VULNERABILITY - - APPLICATION_LIBRARY_VULNERABILITY - - ATTACK_PATH - - CONTAINER_IMAGE_VULNERABILITY - - IDENTITY_RISK - - MISCONFIGURATION - - API_SECURITY - - HOST_VULNERABILITY - - IAC_MISCONFIGURATION - RuleUser: - description: User creating or modifying a rule. - properties: - handle: - description: The user handle. - example: john.doe@domain.com - type: string - name: - description: The user name. - example: John Doe - type: string - type: object - RuleVersionHistory: - description: Response object containing the version history of a rule. - properties: - count: - description: The number of rule versions. - format: int32 - maximum: 2147483647 - type: integer - data: - additionalProperties: - $ref: '#/components/schemas/RuleVersions' - description: A rule version with a list of updates. - description: The `RuleVersionHistory` `data`. - type: object - type: object - RuleVersionUpdate: - description: A change in a rule version. - properties: - change: - description: The new value of the field. - example: cloud_provider:aws - type: string - field: - description: The field that was changed. - example: Tags - type: string - type: - $ref: '#/components/schemas/RuleVersionUpdateType' - type: object - RuleVersionUpdateType: - description: The type of change. - enum: - - create - - update - - delete - type: string - x-enum-varnames: - - CREATE - - UPDATE - - DELETE - RuleVersions: - description: A rule version with a list of updates. - properties: - changes: - description: A list of changes. - items: - $ref: '#/components/schemas/RuleVersionUpdate' - type: array - rule: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - type: object - RumMetricCompute: - description: The compute rule to compute the rum-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/RumMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - path: - description: 'The path to the value the rum-based metric will aggregate - on. - - Only present when `aggregation_type` is `distribution`.' - example: '@duration' - type: string - required: - - aggregation_type - type: object - RumMetricComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - RumMetricComputeIncludePercentiles: - description: 'Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when `aggregation_type` is `distribution`.' - example: true - type: boolean - RumMetricCreateAttributes: - description: The object describing the Datadog rum-based metric to create. - properties: - compute: - $ref: '#/components/schemas/RumMetricCompute' - event_type: - $ref: '#/components/schemas/RumMetricEventType' - filter: - $ref: '#/components/schemas/RumMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricGroupBy' - type: array - uniqueness: - $ref: '#/components/schemas/RumMetricUniqueness' - required: - - event_type - - compute - type: object - RumMetricCreateData: - description: The new rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricCreateAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' - required: - - id - - type - - attributes - type: object - RumMetricCreateRequest: - description: The new rum-based metric body. - properties: - data: - $ref: '#/components/schemas/RumMetricCreateData' - required: - - data - type: object - RumMetricEventType: - description: The type of RUM events to filter on. - enum: - - session - - view - - action - - error - - resource - - long_task - - vital - example: session - type: string - x-enum-varnames: - - SESSION - - VIEW - - ACTION - - ERROR - - RESOURCE - - LONG_TASK - - VITAL - RumMetricFilter: - description: The rum-based metric filter. Events matching this filter will be - aggregated in this metric. - properties: - query: - default: '*' - description: The search query - following the RUM search syntax. - example: '@service:web-ui: ' - type: string - required: - - query - type: object - RumMetricGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the rum-based metric will be aggregated - over. - example: '@browser.name' - type: string - tag_name: - description: Eventual name of the tag that gets created. By default, `path` - is used as the tag name. - example: browser_name - type: string - required: - - path - type: object - RumMetricID: - description: The name of the rum-based metric. - example: rum.sessions.webui.count - type: string - RumMetricResponse: - description: The rum-based metric object. - properties: - data: - $ref: '#/components/schemas/RumMetricResponseData' - type: object - RumMetricResponseAttributes: - description: The object describing a Datadog rum-based metric. - properties: - compute: - $ref: '#/components/schemas/RumMetricResponseCompute' - event_type: - $ref: '#/components/schemas/RumMetricEventType' - filter: - $ref: '#/components/schemas/RumMetricResponseFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricResponseGroupBy' - type: array - uniqueness: - $ref: '#/components/schemas/RumMetricResponseUniqueness' - type: object - RumMetricResponseCompute: - description: The compute rule to compute the rum-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/RumMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - path: - description: 'The path to the value the rum-based metric will aggregate - on. - - Only present when `aggregation_type` is `distribution`.' - example: '@duration' - type: string - type: object - RumMetricResponseData: - description: The rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricResponseAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' - type: object - RumMetricResponseFilter: - description: The rum-based metric filter. RUM events matching this filter will - be aggregated in this metric. - properties: - query: - description: The search query - following the RUM search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - type: object - RumMetricResponseGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the rum-based metric will be aggregated - over. - example: '@http.status_code' - type: string - tag_name: - description: Eventual name of the tag that gets created. By default, `path` - is used as the tag name. - example: status_code - type: string - type: object - RumMetricResponseUniqueness: - description: The rule to count updatable events. Is only set if `event_type` - is `session` or `view`. - properties: - when: - $ref: '#/components/schemas/RumMetricUniquenessWhen' - type: object - RumMetricType: - default: rum_metrics - description: The type of the resource. The value should always be rum_metrics. - enum: - - rum_metrics - example: rum_metrics - type: string - x-enum-varnames: - - RUM_METRICS - RumMetricUniqueness: - description: The rule to count updatable events. Is only set if `event_type` - is `sessions` or `views`. - properties: - when: - $ref: '#/components/schemas/RumMetricUniquenessWhen' - required: - - when - type: object - RumMetricUniquenessWhen: - description: When to count updatable events. `match` when the event is first - seen, or `end` when the event is complete. - enum: - - match - - end - example: match - type: string - x-enum-varnames: - - WHEN_MATCH - - WHEN_END - RumMetricUpdateAttributes: - description: The rum-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/RumMetricUpdateCompute' - filter: - $ref: '#/components/schemas/RumMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricGroupBy' - type: array - type: object - RumMetricUpdateCompute: - description: The compute rule to compute the rum-based metric. - properties: - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - type: object - RumMetricUpdateData: - description: The new rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricUpdateAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' - required: - - type - - attributes - type: object - RumMetricUpdateRequest: - description: The new rum-based metric body. - properties: - data: - $ref: '#/components/schemas/RumMetricUpdateData' - required: - - data - type: object - RumMetricsResponse: - description: All the available rum-based metric objects. - properties: - data: - description: A list of rum-based metric objects. - items: - $ref: '#/components/schemas/RumMetricResponseData' - type: array - type: object - RumRetentionFilterAttributes: - description: The object describing attributes of a RUM retention filter. - properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' - name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' - type: object - RumRetentionFilterCreateAttributes: - description: The object describing attributes of a RUM retention filter to create. - properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' - name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' - required: - - event_type - - name - - sample_rate - type: object - RumRetentionFilterCreateData: - description: The new RUM retention filter properties to create. - properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterCreateAttributes' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - type - - attributes - type: object - RumRetentionFilterCreateRequest: - description: The RUM retention filter body to create. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterCreateData' - required: - - data - type: object - RumRetentionFilterData: - description: The RUM retention filter. - properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterAttributes' - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - type: object - RumRetentionFilterEnabled: - description: Whether the retention filter is enabled. - example: true - type: boolean - RumRetentionFilterEventType: - description: The type of RUM events to filter on. - enum: - - session - - view - - action - - error - - resource - - long_task - - vital - example: session - type: string - x-enum-varnames: - - SESSION - - VIEW - - ACTION - - ERROR - - RESOURCE - - LONG_TASK - - VITAL - RumRetentionFilterID: - description: ID of retention filter in UUID. - example: 051601eb-54a0-abc0-03f9-cc02efa18892 - type: string - RumRetentionFilterQuery: - description: The query string for a RUM retention filter. - example: '@session.has_replay:true' - type: string - RumRetentionFilterResponse: - description: The RUM retention filter object. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterData' - type: object - RumRetentionFilterSampleRate: - description: The sample rate for a RUM retention filter, between 0 and 100. - example: 25 - format: int64 - maximum: 100 - minimum: 0 - type: integer - RumRetentionFilterType: - default: retention_filters - description: The type of the resource. The value should always be retention_filters. - enum: - - retention_filters - example: retention_filters - type: string - x-enum-varnames: - - RETENTION_FILTERS - RumRetentionFilterUpdateAttributes: - description: The object describing attributes of a RUM retention filter to update. - properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' - name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' - type: object - RumRetentionFilterUpdateData: - description: The new RUM retention filter properties to update. - properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterUpdateAttributes' - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - id - - type - - attributes - type: object - RumRetentionFilterUpdateRequest: - description: The RUM retention filter body to update. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterUpdateData' - required: - - data - type: object - RumRetentionFiltersOrderData: - description: The RUM retention filter data for ordering. - properties: - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - id - - type - type: object - RumRetentionFiltersOrderRequest: - description: 'The list of RUM retention filter IDs along with their corresponding - type to reorder. - - All retention filter IDs should be included in the list created for a RUM - application.' - properties: - data: - description: A list of RUM retention filter IDs along with type. - items: - $ref: '#/components/schemas/RumRetentionFiltersOrderData' - type: array - type: object - RumRetentionFiltersOrderResponse: - description: The list of RUM retention filter IDs along with type. - properties: - data: - description: A list of RUM retention filter IDs along with type. - items: - $ref: '#/components/schemas/RumRetentionFiltersOrderData' - type: array - type: object - RumRetentionFiltersResponse: - description: All RUM retention filters for a RUM application. - properties: - data: - description: A list of RUM retention filters. - items: - $ref: '#/components/schemas/RumRetentionFilterData' - type: array - type: object - RunHistoricalJobRequest: - description: Run a historical job request. - properties: - data: - $ref: '#/components/schemas/RunHistoricalJobRequestData' - type: object - RunHistoricalJobRequestAttributes: - description: Run a historical job request. - properties: - fromRule: - $ref: '#/components/schemas/JobDefinitionFromRule' - id: - description: Request ID. - type: string - jobDefinition: - $ref: '#/components/schemas/JobDefinition' - type: object - RunHistoricalJobRequestData: - description: Data for running a historical job request. - properties: - attributes: - $ref: '#/components/schemas/RunHistoricalJobRequestAttributes' - type: - $ref: '#/components/schemas/RunHistoricalJobRequestDataType' - type: object - RunHistoricalJobRequestDataType: - description: Type of data. - enum: - - historicalDetectionsJobCreate - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOBCREATE - RunRetentionFilterName: - description: The name of a RUM retention filter. - example: Retention filter for session - type: string - SAMLAssertionAttribute: - description: SAML assertion attribute. - properties: - attributes: - $ref: '#/components/schemas/SAMLAssertionAttributeAttributes' - id: - description: The ID of the SAML assertion attribute. - example: '0' - type: string - type: - $ref: '#/components/schemas/SAMLAssertionAttributesType' - required: - - id - - type - type: object - SAMLAssertionAttributeAttributes: - description: Key/Value pair of attributes used in SAML assertion attributes. - properties: - attribute_key: - description: Key portion of a key/value pair of the attribute sent from - the Identity Provider. - example: member-of - type: string - attribute_value: - description: Value portion of a key/value pair of the attribute sent from - the Identity Provider. - example: Development - type: string - type: object - SAMLAssertionAttributesType: - default: saml_assertion_attributes - description: SAML assertion attributes resource type. - enum: - - saml_assertion_attributes - example: saml_assertion_attributes - type: string - x-enum-varnames: - - SAML_ASSERTION_ATTRIBUTES - SBOM: - description: A single SBOM - properties: - attributes: - $ref: '#/components/schemas/SBOMAttributes' - id: - description: The unique ID for this SBOM (it is equivalent to the `asset_name` - or `asset_name@repo_digest` (Image) - example: github.com/datadog/datadog-agent - type: string - type: - $ref: '#/components/schemas/SBOMType' - type: object - SBOMAttributes: - description: The JSON:API attributes of the SBOM. - properties: - bomFormat: - description: Specifies the format of the BOM. This helps to identify the - file as CycloneDX since BOM do not have a filename convention nor does - JSON schema support namespaces. This value MUST be `CycloneDX`. - example: CycloneDX - type: string - components: - description: A list of software and hardware components. - items: - $ref: '#/components/schemas/SBOMComponent' - type: array - dependencies: - description: List of dependencies between components of the SBOM. - items: - $ref: '#/components/schemas/SBOMComponentDependency' - type: array - metadata: - $ref: '#/components/schemas/SBOMMetadata' - serialNumber: - description: Every BOM generated has a unique serial number, even if the - contents of the BOM have not changed overt time. The serial number follows - [RFC-4122](https://datatracker.ietf.org/doc/html/rfc4122) - example: urn:uuid:f7119d2f-1vgh-24b5-91f0-12010db72da7 - type: string - specVersion: - $ref: '#/components/schemas/SpecVersion' - version: - description: It increments when a BOM is modified. The default value is - 1. - example: 1 - format: int64 - type: integer - required: - - bomFormat - - specVersion - - components - - metadata - - serialNumber - - version - - dependencies - type: object - SBOMComponent: - description: Software or hardware component. - properties: - bom-ref: - description: An optional identifier that can be used to reference the component - elsewhere in the BOM. - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - licenses: - description: The software licenses of the SBOM component. - items: - $ref: '#/components/schemas/SBOMComponentLicense' - type: array - name: - description: The name of the component. This will often be a shortened, - single name of the component. - example: google.golang.org/grpc - type: string - properties: - description: The custom properties of the component of the SBOM. - items: - $ref: '#/components/schemas/SBOMComponentProperty' - type: array - purl: - description: Specifies the package-url (purl). The purl, if specified, MUST - be valid and conform to the [specification](https://github.com/package-url/purl-spec). - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - supplier: - $ref: '#/components/schemas/SBOMComponentSupplier' - type: - $ref: '#/components/schemas/SBOMComponentType' - version: - description: The component version. - example: 1.68.1 - type: string - required: - - type - - name - - version - - supplier - type: object - SBOMComponentDependency: - description: The dependencies of a component of the SBOM. - properties: - dependsOn: - description: The components that are dependencies of the ref component. - items: - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - required: - - ref - - dependsOn - type: array - ref: - description: The identifier for the related component. - example: Repository|github.com/datadog/datadog-agent - type: string - type: object - SBOMComponentLicense: - description: The software license of the component of the SBOM. - properties: - license: - $ref: '#/components/schemas/SBOMComponentLicenseLicense' - required: - - license - type: object - SBOMComponentLicenseLicense: - description: The software license of the component of the SBOM. - properties: - name: - description: The name of the software license of the component of the SBOM. - example: MIT - type: string - required: - - name - type: object - SBOMComponentLicenseType: - description: The SBOM component license type. - enum: - - network_strong_copyleft - - non_standard_copyleft - - other_non_free - - other_non_standard - - permissive - - public_domain - - strong_copyleft - - weak_copyleft - example: application - type: string - x-enum-varnames: - - NETWORK_STRONG_COPYLEFT - - NON_STANDARD_COPYLEFT - - OTHER_NON_FREE - - OTHER_NON_STANDARD - - PERMISSIVE - - PUBLIC_DOMAIN - - STRONG_COPYLEFT - - WEAK_COPYLEFT - SBOMComponentProperty: - description: The custom property of the component of the SBOM. - properties: - name: - description: The name of the custom property of the component of the SBOM. - example: license_type - type: string - value: - description: The value of the custom property of the component of the SBOM. - example: permissive - type: string - required: - - name - - value - type: object - SBOMComponentSupplier: - description: The supplier of the component. - properties: - name: - description: Identifier of the supplier of the component. - example: https://go.dev - type: string - required: - - name - type: object - SBOMComponentType: - description: The SBOM component type - enum: - - application - - container - - data - - device - - device-driver - - file - - firmware - - framework - - library - - machine-learning-model - - operating-system - - platform - example: application - type: string - x-enum-varnames: - - APPLICATION - - CONTAINER - - DATA - - DEVICE - - DEVICE_DRIVER - - FILE - - FIRMWARE - - FRAMEWORK - - LIBRARY - - MACHINE_LEARNING_MODEL - - OPERATING_SYSTEM - - PLATFORM - SBOMMetadata: - description: Provides additional information about a BOM. - properties: - authors: - description: List of authors of the SBOM. - items: - $ref: '#/components/schemas/SBOMMetadataAuthor' - type: array - component: - $ref: '#/components/schemas/SBOMMetadataComponent' - timestamp: - description: The timestamp of the SBOM creation. - example: '2025-07-08T07:24:53Z' - type: string - type: object - SBOMMetadataAuthor: - description: Author of the SBOM. - properties: - name: - description: The identifier of the Author of the SBOM. - example: Datadog, Inc. - type: string - type: object - SBOMMetadataComponent: - description: The component that the BOM describes. - properties: - name: - description: The name of the component. This will often be a shortened, - single name of the component. - example: github.com/datadog/datadog-agent - type: string - type: - description: Specifies the type of the component. - example: application - type: string - type: object - SBOMType: - description: The JSON:API type. - enum: - - sboms - example: sboms - type: string - x-enum-varnames: - - SBOMS - SLOReportInterval: - description: The frequency at which report data is to be generated. - enum: - - daily - - weekly - - monthly - example: weekly - type: string - x-enum-varnames: - - DAILY - - WEEKLY - - MONTHLY - SLOReportPostResponse: - description: The SLO report response. - properties: - data: - $ref: '#/components/schemas/SLOReportPostResponseData' - type: object - SLOReportPostResponseData: - description: The data portion of the SLO report response. - properties: - id: - description: The ID of the report job. - example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 - type: string - type: - description: The type of ID. - example: report_id - type: string - type: object - SLOReportStatus: - description: The status of the SLO report job. - enum: - - in_progress - - completed - - completed_with_errors - - failed - example: completed - type: string - x-enum-varnames: - - IN_PROGRESS - - COMPLETED - - COMPLETED_WITH_ERRORS - - FAILED - SLOReportStatusGetResponse: - description: The SLO report status response. - properties: - data: - $ref: '#/components/schemas/SLOReportStatusGetResponseData' - type: object - SLOReportStatusGetResponseAttributes: - description: The attributes portion of the SLO report status response. - properties: - status: - $ref: '#/components/schemas/SLOReportStatus' - type: object - SLOReportStatusGetResponseData: - description: The data portion of the SLO report status response. - properties: - attributes: - $ref: '#/components/schemas/SLOReportStatusGetResponseAttributes' - id: - description: The ID of the report job. - example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 - type: string - type: - description: The type of ID. - example: report_id - type: string - type: object - ScalarColumn: - description: A single column in a scalar query response. - oneOf: - - $ref: '#/components/schemas/GroupScalarColumn' - - $ref: '#/components/schemas/DataScalarColumn' - ScalarColumnTypeGroup: - default: group - description: The type of column present for groups. - enum: - - group - example: group - type: string - x-enum-varnames: - - GROUP - ScalarColumnTypeNumber: - default: number - description: The type of column present for numbers. - enum: - - number - example: number - type: string - x-enum-varnames: - - NUMBER - ScalarFormulaQueryRequest: - description: A wrapper request around one scalar query to be executed. - properties: - data: - $ref: '#/components/schemas/ScalarFormulaRequest' - required: - - data - type: object - ScalarFormulaQueryResponse: - description: A message containing one or more responses to scalar queries. - properties: - data: - $ref: '#/components/schemas/ScalarResponse' - errors: - description: An error generated when processing a request. - type: string - type: object - ScalarFormulaRequest: - description: A single scalar query to be executed. - properties: - attributes: - $ref: '#/components/schemas/ScalarFormulaRequestAttributes' - type: - $ref: '#/components/schemas/ScalarFormulaRequestType' - required: - - type - - attributes - type: object - ScalarFormulaRequestAttributes: - description: The object describing a scalar formula request. - properties: - formulas: - description: List of formulas to be calculated and returned as responses. - items: - $ref: '#/components/schemas/QueryFormula' - type: array - from: - description: Start date (inclusive) of the query in milliseconds since the - Unix epoch. - example: 1568899800000 - format: int64 - type: integer - queries: - $ref: '#/components/schemas/ScalarFormulaRequestQueries' - to: - description: End date (exclusive) of the query in milliseconds since the - Unix epoch. - example: 1568923200000 - format: int64 - type: integer - required: - - to - - from - - queries - type: object - ScalarFormulaRequestQueries: - description: List of queries to be run and used as inputs to the formulas. - example: - - aggregator: avg - data_source: metrics - query: avg:system.cpu.user{*} by {env} - items: - $ref: '#/components/schemas/ScalarQuery' - type: array - ScalarFormulaRequestType: - default: scalar_request - description: The type of the resource. The value should always be scalar_request. - enum: - - scalar_request - example: scalar_request - type: string - x-enum-varnames: - - SCALAR_REQUEST - ScalarFormulaResponseAtrributes: - description: The object describing a scalar response. - properties: - columns: - description: List of response columns, each corresponding to an individual - formula or query in the request and with values in parallel arrays matching - the series list. - items: - $ref: '#/components/schemas/ScalarColumn' - type: array - type: object - ScalarFormulaResponseType: - default: scalar_response - description: The type of the resource. The value should always be scalar_response. - enum: - - scalar_response - example: scalar_response - type: string - x-enum-varnames: - - SCALAR_RESPONSE - ScalarMeta: - description: Metadata for the resulting numerical values. - properties: - unit: - description: 'Detailed information about the unit. - - First element describes the "primary unit" (for example, `bytes` in `bytes - per second`). - - The second element describes the "per unit" (for example, `second` in - `bytes per second`). - - If the second element is not present, the API returns null.' - items: - $ref: '#/components/schemas/Unit' - nullable: true - type: array - type: object - ScalarQuery: - description: An individual scalar query to one of the basic Datadog data sources. - example: - aggregator: avg - data_source: metrics - query: avg:system.cpu.user{*} by {env} - oneOf: - - $ref: '#/components/schemas/MetricsScalarQuery' - - $ref: '#/components/schemas/EventsScalarQuery' - ScalarResponse: - description: A message containing the response to a scalar query. - properties: - attributes: - $ref: '#/components/schemas/ScalarFormulaResponseAtrributes' - type: - $ref: '#/components/schemas/ScalarFormulaResponseType' - type: object - Schedule: - description: Top-level container for a schedule object, including both the `data` - payload and any related `included` resources (such as teams, layers, or members). - example: - data: - attributes: - name: On-Call Schedule - time_zone: America/New_York - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - relationships: - layers: - data: - - id: 00000000-0000-0000-0000-000000000001 - type: layers - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - included: - - attributes: - avatar: '' - description: Team 1 description - handle: team1 - name: Team 1 - id: 00000000-da3a-0000-0000-000000000000 - type: teams - - attributes: - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - days: 1 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: 09:00:00 - rotation_start: '2025-02-01T00:00:00Z' - id: 00000000-0000-0000-0000-000000000001 - relationships: - members: - data: - - id: 00000000-0000-0000-0000-000000000002 - type: members - type: layers - - id: 00000000-0000-0000-0000-000000000002 - relationships: - user: - data: - id: 00000000-aba1-0000-0000-000000000000 - type: users - type: members - - attributes: - email: foo@bar.com - name: User 1 - id: 00000000-aba1-0000-0000-000000000000 - type: users - properties: - data: - $ref: '#/components/schemas/ScheduleData' - included: - description: Any additional resources related to this schedule, such as - teams and layers. - items: - $ref: '#/components/schemas/ScheduleDataIncludedItem' - type: array - type: object - ScheduleCreateRequest: - description: The top-level request body for schedule creation, wrapping a `data` - object. - example: - data: - attributes: - layers: - - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - days: 1 - members: - - user: - id: 00000000-aba1-0000-0000-000000000000 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: 09:00:00 - rotation_start: '2025-02-01T00:00:00Z' - name: On-Call Schedule - time_zone: America/New_York - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - properties: - data: - $ref: '#/components/schemas/ScheduleCreateRequestData' - required: - - data - type: object - ScheduleCreateRequestData: - description: The core data wrapper for creating a schedule, encompassing attributes, - relationships, and the resource type. - properties: - attributes: - $ref: '#/components/schemas/ScheduleCreateRequestDataAttributes' - relationships: - $ref: '#/components/schemas/ScheduleCreateRequestDataRelationships' - type: - $ref: '#/components/schemas/ScheduleCreateRequestDataType' - required: - - type - - attributes - type: object - ScheduleCreateRequestDataAttributes: - description: Describes the main attributes for creating a new schedule, including - name, layers, and time zone. - properties: - layers: - description: The layers of On-Call coverage that define rotation intervals - and restrictions. - items: - $ref: '#/components/schemas/ScheduleCreateRequestDataAttributesLayersItems' - type: array - name: - description: A human-readable name for the new schedule. - example: Team A On-Call - type: string - time_zone: - description: The time zone in which the schedule is defined. - example: America/New_York - type: string - required: - - name - - time_zone - - layers - type: object - ScheduleCreateRequestDataAttributesLayersItems: - description: Describes a schedule layer, including rotation intervals, members, - restrictions, and timeline settings. - properties: - effective_date: - description: The date/time when this layer becomes active (in ISO 8601). - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - end_date: - description: The date/time after which this layer no longer applies (in - ISO 8601). - format: date-time - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - members: - description: A list of members who participate in this layer's rotation. - items: - $ref: '#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems' - type: array - name: - description: The name of this layer. - example: Primary On-Call Layer - type: string - restrictions: - description: Zero or more time-based restrictions (for example, only weekdays, - during business hours). - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time when the rotation for this layer starts (in ISO - 8601). - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - required: - - name - - interval - - rotation_start - - effective_date - - members - type: object - ScheduleCreateRequestDataRelationships: - description: Gathers relationship objects for the schedule creation request, - including the teams to associate. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleCreateRequestDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ScheduleData: - description: Represents the primary data object for a schedule, linking attributes - and relationships. - properties: - attributes: - $ref: '#/components/schemas/ScheduleDataAttributes' - id: - description: The schedule's unique identifier. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/ScheduleDataRelationships' - type: - $ref: '#/components/schemas/ScheduleDataType' - required: - - type - type: object - ScheduleDataAttributes: - description: Provides core properties of a schedule object such as its name - and time zone. - properties: - name: - description: A short name for the schedule. - example: Primary On-Call - type: string - time_zone: - description: The time zone in which this schedule operates. - example: America/New_York - type: string - type: object - ScheduleDataIncludedItem: - description: Any additional resources related to this schedule, such as teams - and layers. - oneOf: - - $ref: '#/components/schemas/TeamReference' - - $ref: '#/components/schemas/Layer' - - $ref: '#/components/schemas/ScheduleMember' - - $ref: '#/components/schemas/ScheduleUser' - ScheduleDataRelationships: - description: Groups the relationships for a schedule object, referencing layers - and teams. - properties: - layers: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayers' - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleDataRelationshipsLayers: - description: Associates layers with this schedule in a data structure. - properties: - data: - description: An array of layer references for this schedule. - items: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItems' - type: array - type: object - ScheduleDataRelationshipsLayersDataItems: - description: Relates a layer to this schedule, identified by `id` and `type` - (must be `layers`). - properties: - id: - description: The unique identifier of the layer in this relationship. - example: 00000000-0000-0000-0000-000000000001 - type: string - type: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItemsType' - required: - - type - - id - type: object - ScheduleDataRelationshipsLayersDataItemsType: - default: layers - description: Layers resource type. - enum: - - layers - example: layers - type: string - x-enum-varnames: - - LAYERS - ScheduleDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ScheduleMember: - description: Represents a single member entry in a schedule, referencing a specific - user. - properties: - id: - description: The unique identifier for this schedule member. - type: string - relationships: - $ref: '#/components/schemas/ScheduleMemberRelationships' - type: - $ref: '#/components/schemas/ScheduleMemberType' - required: - - type - type: object - ScheduleMemberRelationships: - description: Defines relationships for a schedule member, primarily referencing - a single user. - properties: - user: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUser' - type: object - ScheduleMemberRelationshipsUser: - description: Wraps the user data reference for a schedule member. - properties: - data: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUserData' - required: - - data - type: object - ScheduleMemberRelationshipsUserData: - description: Points to the user data associated with this schedule member, including - an ID and type. - properties: - id: - description: The user's unique identifier. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUserDataType' - required: - - type - - id - type: object - ScheduleMemberRelationshipsUserDataType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - ScheduleMemberType: - default: members - description: Schedule Members resource type. - enum: - - members - example: members - type: string - x-enum-varnames: - - MEMBERS - ScheduleRequestDataAttributesLayersItemsMembersItems: - description: Defines a single member within a schedule layer, including the - reference to the underlying user. - properties: - user: - $ref: '#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItemsUser' - type: object - ScheduleRequestDataAttributesLayersItemsMembersItemsUser: - description: Identifies the user participating in this layer as a single object - with an `id`. - properties: - id: - description: The user's ID. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: object - ScheduleTarget: - description: Represents a schedule target for an escalation policy step, including - its ID and resource type. - properties: - id: - description: Specifies the unique identifier of the schedule resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/ScheduleTargetType' - required: - - type - - id - type: object - ScheduleTargetType: - default: schedules - description: Indicates that the resource is of type `schedules`. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ScheduleTrigger: - description: Trigger a workflow from a Schedule. The workflow must be published. - properties: - rruleExpression: - description: Recurrence rule expression for scheduling. - example: '' - type: string - required: - - rruleExpression - type: object - ScheduleTriggerWrapper: - description: Schema for a Schedule-based trigger. - properties: - scheduleTrigger: - $ref: '#/components/schemas/ScheduleTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - scheduleTrigger - type: object - ScheduleUpdateRequest: - description: A top-level wrapper for a schedule update request, referring to - the `data` object with the new details. - example: - data: - attributes: - layers: - - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - seconds: 3600 - members: - - user: - id: 00000000-aba1-0000-0000-000000000000 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: 09:00:00 - rotation_start: '2025-02-01T00:00:00Z' - name: On-Call Schedule Updated - time_zone: America/New_York - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - properties: - data: - $ref: '#/components/schemas/ScheduleUpdateRequestData' - required: - - data - type: object - ScheduleUpdateRequestData: - description: Contains all data needed to update an existing schedule, including - its attributes (such as name and time zone) and any relationships to teams. - properties: - attributes: - $ref: '#/components/schemas/ScheduleUpdateRequestDataAttributes' - id: - description: The ID of the schedule to be updated. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/ScheduleUpdateRequestDataRelationships' - type: - $ref: '#/components/schemas/ScheduleUpdateRequestDataType' - required: - - type - - id - - attributes - type: object - ScheduleUpdateRequestDataAttributes: - description: Defines the updatable attributes for a schedule, such as name, - time zone, and layers. - properties: - layers: - description: The updated list of layers (rotations) for this schedule. - items: - $ref: '#/components/schemas/ScheduleUpdateRequestDataAttributesLayersItems' - type: array - name: - description: A short name for the schedule. - example: Primary On-Call - type: string - time_zone: - description: The time zone used when interpreting rotation times. - example: America/New_York - type: string - required: - - name - - time_zone - - layers - type: object - ScheduleUpdateRequestDataAttributesLayersItems: - description: 'Represents a layer within a schedule update, including rotation - details, members, - - and optional restrictions.' - properties: - effective_date: - description: When this updated layer takes effect (ISO 8601 format). - example: '2025-02-03T05:00:00Z' - format: date-time - type: string - end_date: - description: When this updated layer should stop being active (ISO 8601 - format). - example: '2025-12-31T00:00:00Z' - format: date-time - type: string - id: - description: A unique identifier for the layer being updated. - example: 00000000-0000-0000-0000-000000000001 - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - members: - description: The members assigned to this layer. - items: - $ref: '#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems' - type: array - name: - description: The name for this layer (for example, "Secondary Coverage"). - example: Primary On-Call Layer - type: string - restrictions: - description: Any time restrictions that define when this layer is active. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time at which the rotation begins (ISO 8601 format). - example: '2025-02-01T00:00:00Z' - format: date-time - type: string - required: - - effective_date - - interval - - members - - name - - rotation_start - type: object - ScheduleUpdateRequestDataRelationships: - description: Houses relationships for the schedule update, typically referencing - teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleUpdateRequestDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ScheduleUser: - description: Represents a user object in the context of a schedule, including - their `id`, type, and basic attributes. - properties: - attributes: - $ref: '#/components/schemas/ScheduleUserAttributes' - id: - description: The unique user identifier. - type: string - type: - $ref: '#/components/schemas/ScheduleUserType' - required: - - type - type: object - ScheduleUserAttributes: - description: Provides basic user information for a schedule, including a name - and email address. - properties: - email: - description: The user's email address. - example: jane.doe@example.com - type: string - name: - description: The user's name. - example: Jane Doe - type: string - status: - $ref: '#/components/schemas/UserAttributesStatus' - type: object - ScheduleUserType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - ScorecardType: - default: scorecard - description: The JSON:API type for scorecard. - enum: - - scorecard - example: scorecard - type: string - x-enum-varnames: - - SCORECARD - SearchIssuesIncludeQueryParameterItem: - description: Relationship object that should be included in the search response. - enum: - - issue - - issue.assignee - - issue.case - - issue.team_owners - example: issue.case - type: string - x-enum-varnames: - - ISSUE - - ISSUE_ASSIGNEE - - ISSUE_CASE - - ISSUE_TEAM_OWNERS - SecurityFilter: - description: The security filter's properties. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterAttributes' - id: - $ref: '#/components/schemas/SecurityFilterID' - type: - $ref: '#/components/schemas/SecurityFilterType' - type: object - SecurityFilterAttributes: - description: The object describing a security filter. - properties: - exclusion_filters: - description: The list of exclusion filters applied in this security filter. - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilterResponse' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_builtin: - description: Whether the security filter is the built-in filter. - example: false - type: boolean - is_enabled: - description: Whether the security filter is enabled. - example: false - type: boolean - name: - description: The security filter name. - example: Custom security filter - type: string - query: - description: The security filter query. Logs accepted by this query will - be accepted by this filter. - example: service:api - type: string - version: - description: The version of the security filter. - example: 1 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityFilterCreateAttributes: - description: Object containing the attributes of the security filter to be created. - properties: - exclusion_filters: - description: Exclusion filters to exclude some logs from the security filter. - example: - - name: Exclude staging - query: source:staging - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilter' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_enabled: - description: Whether the security filter is enabled. - example: true - type: boolean - name: - description: The name of the security filter. - example: Custom security filter - type: string - query: - description: The query of the security filter. - example: service:api - type: string - required: - - name - - query - - exclusion_filters - - filtered_data_type - - is_enabled - type: object - SecurityFilterCreateData: - description: Object for a single security filter. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterCreateAttributes' - type: - $ref: '#/components/schemas/SecurityFilterType' - required: - - type - - attributes - type: object - SecurityFilterCreateRequest: - description: Request object that includes the security filter that you would - like to create. - properties: - data: - $ref: '#/components/schemas/SecurityFilterCreateData' - required: - - data - type: object - SecurityFilterExclusionFilter: - description: Exclusion filter for the security filter. - example: - name: Exclude staging - query: source:staging - properties: - name: - description: Exclusion filter name. - example: Exclude staging - type: string - query: - description: Exclusion filter query. Logs that match this query are excluded - from the security filter. - example: source:staging - type: string - required: - - name - - query - type: object - SecurityFilterExclusionFilterResponse: - description: A single exclusion filter. - properties: - name: - description: The exclusion filter name. - example: Exclude staging - type: string - query: - description: The exclusion filter query. - example: source:staging - type: string - type: object - SecurityFilterFilteredDataType: - description: The filtered data type. - enum: - - logs - example: logs - type: string - x-enum-varnames: - - LOGS - SecurityFilterID: - description: The ID of the security filter. - example: 3dd-0uc-h1s - type: string - SecurityFilterMeta: - description: Optional metadata associated to the response. - properties: - warning: - description: A warning message. - example: All the security filters are disabled. As a result, no logs are - being analyzed. - type: string - type: object - SecurityFilterResponse: - description: Response object which includes a single security filter. - properties: - data: - $ref: '#/components/schemas/SecurityFilter' - meta: - $ref: '#/components/schemas/SecurityFilterMeta' - type: object - SecurityFilterType: - default: security_filters - description: The type of the resource. The value should always be `security_filters`. - enum: - - security_filters - example: security_filters - type: string - x-enum-varnames: - - SECURITY_FILTERS - SecurityFilterUpdateAttributes: - description: The security filters properties to be updated. - properties: - exclusion_filters: - description: Exclusion filters to exclude some logs from the security filter. - example: [] - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilter' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_enabled: - description: Whether the security filter is enabled. - example: true - type: boolean - name: - description: The name of the security filter. - example: Custom security filter - type: string - query: - description: The query of the security filter. - example: service:api - type: string - version: - description: The version of the security filter to update. - example: 1 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityFilterUpdateData: - description: The new security filter properties. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterUpdateAttributes' - type: - $ref: '#/components/schemas/SecurityFilterType' - required: - - type - - attributes - type: object - SecurityFilterUpdateRequest: - description: The new security filter body. - properties: - data: - $ref: '#/components/schemas/SecurityFilterUpdateData' - required: - - data - type: object - SecurityFiltersResponse: - description: All the available security filters objects. - properties: - data: - description: A list of security filters objects. - items: - $ref: '#/components/schemas/SecurityFilter' - type: array - meta: - $ref: '#/components/schemas/SecurityFilterMeta' - type: object - SecurityMonitoringFilter: - description: The rule's suppression filter. - properties: - action: - $ref: '#/components/schemas/SecurityMonitoringFilterAction' - query: - description: Query for selecting logs to apply the filtering action. - type: string - type: object - SecurityMonitoringFilterAction: - description: The type of filtering action. - enum: - - require - - suppress - type: string - x-enum-varnames: - - REQUIRE - - SUPPRESS - SecurityMonitoringListRulesResponse: - description: List of rules. - properties: - data: - description: Array containing the list of rules. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - SecurityMonitoringReferenceTable: - description: Reference tables used in the queries. - properties: - checkPresence: - description: Whether to include or exclude the matched values. - type: boolean - columnName: - description: The name of the column in the reference table. - type: string - logFieldPath: - description: The field in the log to match against the reference table. - type: string - ruleQueryName: - description: The name of the query to apply the reference table to. - type: string - tableName: - description: The name of the reference table. - type: string - type: object - SecurityMonitoringRuleCase: - description: Case when signal is generated. - properties: - actions: - description: Action to perform for each rule case. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' - type: array - condition: - description: 'A rule case contains logical operations (`>`,`>=`, `&&`, `||`) - to determine if a signal should be generated - - based on the event counts in the previously defined queries.' - type: string - customStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - type: object - SecurityMonitoringRuleCaseAction: - description: Action to perform when a signal is triggered. Only available for - Application Security rule type. - properties: - options: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptions' - type: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionType' - type: object - SecurityMonitoringRuleCaseActionOptions: - additionalProperties: {} - description: Options for the rule action - properties: - duration: - description: Duration of the action in seconds. 0 indicates no expiration. - example: 0 - format: int64 - minimum: 0 - type: integer - flaggedIPType: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptionsFlaggedIPType' - userBehaviorName: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptionsUserBehaviorName' - type: object - SecurityMonitoringRuleCaseActionOptionsFlaggedIPType: - description: Used with the case action of type 'flag_ip'. The value specified - in this field is applied as a flag to the IP addresses. - enum: - - SUSPICIOUS - - FLAGGED - example: FLAGGED - type: string - x-enum-varnames: - - SUSPICIOUS - - FLAGGED - SecurityMonitoringRuleCaseActionOptionsUserBehaviorName: - description: Used with the case action of type 'user_behavior'. The value specified - in this field is applied as a risk tag to all users affected by the rule. - type: string - SecurityMonitoringRuleCaseActionType: - description: The action type. - enum: - - block_ip - - block_user - - user_behavior - - flag_ip - type: string - x-enum-varnames: - - BLOCK_IP - - BLOCK_USER - - USER_BEHAVIOR - - FLAG_IP - SecurityMonitoringRuleCaseCreate: - description: Case when signal is generated. - properties: - actions: - description: Action to perform for each rule case. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' - type: array - condition: - description: 'A case contains logical operations (`>`,`>=`, `&&`, `||`) - to determine if a signal should be generated - - based on the event counts in the previously defined queries.' - type: string - name: - description: Name of the case. - type: string - notifications: - description: Notification targets. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - SecurityMonitoringRuleConvertPayload: - description: Convert a rule from JSON to Terraform. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRulePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRulePayload' - SecurityMonitoringRuleConvertResponse: - description: Result of the convert rule request containing Terraform content. - properties: - ruleId: - description: the ID of the rule. - type: string - terraformContent: - description: Terraform string as a result of converting the rule from JSON. - type: string - type: object - SecurityMonitoringRuleCreatePayload: - description: Create a new rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleCreatePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleCreatePayload' - - $ref: '#/components/schemas/CloudConfigurationRuleCreatePayload' - SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv: - description: 'If true, signals in non-production environments have a lower severity - than what is defined by the rule case, which can reduce signal noise. - - The severity is decreased by one level: `CRITICAL` in production becomes `HIGH` - in non-production, `HIGH` becomes `MEDIUM` and so on. `INFO` remains `INFO`. - - The decrement is applied when the environment tag of the signal starts with - `staging`, `test` or `dev`.' - example: false - type: boolean - SecurityMonitoringRuleDetectionMethod: - description: The detection method. - enum: - - threshold - - new_value - - anomaly_detection - - impossible_travel - - hardcoded - - third_party - - anomaly_threshold - type: string - x-enum-varnames: - - THRESHOLD - - NEW_VALUE - - ANOMALY_DETECTION - - IMPOSSIBLE_TRAVEL - - HARDCODED - - THIRD_PARTY - - ANOMALY_THRESHOLD - SecurityMonitoringRuleEvaluationWindow: - description: 'A time window is specified to match when at least one of the cases - matches true. This is a sliding window - - and evaluates in real time. For third party detection method, this field is - not used.' - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleHardcodedEvaluatorType: - description: Hardcoded evaluator type. - enum: - - log4shell - type: string - x-enum-varnames: - - LOG4SHELL - SecurityMonitoringRuleImpossibleTravelOptions: - description: Options on impossible travel detection method. - properties: - baselineUserLocations: - $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations' - type: object - SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations: - description: 'If true, signals are suppressed for the first 24 hours. In that - time, Datadog learns the user''s regular - - access locations. This can be helpful to reduce noise and infer VPN usage - or credentialed API access.' - example: true - type: boolean - SecurityMonitoringRuleKeepAlive: - description: 'Once a signal is generated, the signal will remain "open" if a - case is matched at least once within - - this keep alive window. For third party detection method, this field is not - used.' - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleMaxSignalDuration: - description: 'A signal will "close" regardless of the query being matched once - the time exceeds the maximum duration. - - This time is calculated from the first seen timestamp.' - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleNewValueOptions: - description: Options on new value detection method. - properties: - forgetAfter: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsForgetAfter' - learningDuration: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningDuration' - learningMethod: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningMethod' - learningThreshold: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningThreshold' - type: object - SecurityMonitoringRuleNewValueOptionsForgetAfter: - description: The duration in days after which a learned value is forgotten. - enum: - - 1 - - 2 - - 7 - - 14 - - 21 - - 28 - format: int32 - type: integer - x-enum-varnames: - - ONE_DAY - - TWO_DAYS - - ONE_WEEK - - TWO_WEEKS - - THREE_WEEKS - - FOUR_WEEKS - SecurityMonitoringRuleNewValueOptionsLearningDuration: - default: 0 - description: 'The duration in days during which values are learned, and after - which signals will be generated for values that - - weren''t learned. If set to 0, a signal will be generated for all new values - after the first value is learned.' - enum: - - 0 - - 1 - - 7 - format: int32 - type: integer - x-enum-varnames: - - ZERO_DAYS - - ONE_DAY - - SEVEN_DAYS - SecurityMonitoringRuleNewValueOptionsLearningMethod: - default: duration - description: The learning method used to determine when signals should be generated - for values that weren't learned. - enum: - - duration - - threshold - type: string - x-enum-varnames: - - DURATION - - THRESHOLD - SecurityMonitoringRuleNewValueOptionsLearningThreshold: - default: 0 - description: A number of occurrences after which signals will be generated for - values that weren't learned. - enum: - - 0 - - 1 - format: int32 - type: integer - x-enum-varnames: - - ZERO_OCCURRENCES - - ONE_OCCURRENCE - SecurityMonitoringRuleOptions: - description: Options. - properties: - complianceRuleOptions: - $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' - decreaseCriticalityBasedOnEnv: - $ref: '#/components/schemas/SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv' - detectionMethod: - $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' - evaluationWindow: - $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' - hardcodedEvaluatorType: - $ref: '#/components/schemas/SecurityMonitoringRuleHardcodedEvaluatorType' - impossibleTravelOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions' - keepAlive: - $ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive' - maxSignalDuration: - $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' - newValueOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' - thirdPartyRuleOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' - type: object - SecurityMonitoringRuleQuery: - description: Query for matching rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - SecurityMonitoringRuleQueryAggregation: - description: The aggregation type. - enum: - - count - - cardinality - - sum - - max - - new_value - - geo_data - - event_count - - none - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - SUM - - MAX - - NEW_VALUE - - GEO_DATA - - EVENT_COUNT - - NONE - SecurityMonitoringRuleQueryPayload: - description: Payload to test a rule query with the expected result. - properties: - expectedResult: - description: Expected result of the test. - example: true - type: boolean - index: - description: Index of the query under test. - example: 0 - format: int64 - minimum: 0 - type: integer - payload: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayloadData' - type: object - SecurityMonitoringRuleQueryPayloadData: - additionalProperties: {} - description: Payload used to test the rule query. - properties: - ddsource: - description: Source of the payload. - example: nginx - type: string - ddtags: - description: Tags associated with your data. - example: env:staging,version:5.1 - type: string - hostname: - description: The name of the originating host of the log. - example: i-012345678 - type: string - message: - description: The message of the payload. - example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - type: string - service: - description: The name of the application or service generating the data. - example: payment - type: string - type: object - SecurityMonitoringRuleResponse: - description: Create a new rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleResponse' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponse' - SecurityMonitoringRuleSeverity: - description: Severity of the Security Signal. - enum: - - info - - low - - medium - - high - - critical - example: critical - type: string - x-enum-varnames: - - INFO - - LOW - - MEDIUM - - HIGH - - CRITICAL - SecurityMonitoringRuleTestPayload: - description: Test a rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleTestPayload' - SecurityMonitoringRuleTestRequest: - description: Test the rule queries of a rule (rule property is ignored when - applied to an existing rule) - properties: - rule: - $ref: '#/components/schemas/SecurityMonitoringRuleTestPayload' - ruleQueryPayloads: - description: Data payloads used to test rules query with the expected result. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayload' - type: array - type: object - SecurityMonitoringRuleTestResponse: - description: Result of the test of the rule queries. - properties: - results: - description: 'Assert results are returned in the same order as the rule - query payloads. - - For each payload, it returns True if the result matched the expected result, - - False otherwise.' - items: - type: boolean - type: array - type: object - SecurityMonitoringRuleThirdPartyOptions: - description: Options on third party detection method. - properties: - defaultNotifications: - description: Notification targets for the logs that do not correspond to - any of the cases. - items: - description: Notification. - type: string - type: array - defaultStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - rootQueries: - description: Queries to be combined with third party case queries. Each - of them can have different group by fields, to aggregate differently based - on the type of alert. - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRootQuery' - type: array - signalTitleTemplate: - description: A template for the signal title; if omitted, the title is generated - based on the case name. - type: string - type: object - SecurityMonitoringRuleTypeCreate: - description: The rule type. - enum: - - api_security - - application_security - - log_detection - - workload_security - type: string - x-enum-varnames: - - API_SECURITY - - APPLICATION_SECURITY - - LOG_DETECTION - - WORKLOAD_SECURITY - SecurityMonitoringRuleTypeRead: - description: The rule type. - enum: - - log_detection - - infrastructure_configuration - - workload_security - - cloud_configuration - - application_security - - api_security - type: string - x-enum-varnames: - - LOG_DETECTION - - INFRASTRUCTURE_CONFIGURATION - - WORKLOAD_SECURITY - - CLOUD_CONFIGURATION - - APPLICATION_SECURITY - - API_SECURITY - SecurityMonitoringRuleTypeTest: - description: The rule type. - enum: - - log_detection - type: string - x-enum-varnames: - - LOG_DETECTION - SecurityMonitoringRuleUpdatePayload: - description: Update an existing rule. - properties: - calculatedFields: - description: Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - customMessage: - description: Custom/Overridden Message for generated signals (used in case - of Default rule update). - type: string - customName: - description: Custom/Overridden name (used in case of Default rule update). - type: string - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: Additional grouping to perform on top of the existing groups - in the query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: Name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' - type: array - version: - description: The version of the rule being updated. - example: 1 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityMonitoringRuleValidatePayload: - description: Validate a rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRulePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRulePayload' - - $ref: '#/components/schemas/CloudConfigurationRulePayload' - SecurityMonitoringSchedulingOptions: - description: Options for scheduled rules. When this field is present, the rule - runs based on the schedule. When absent, it runs real-time on ingested logs. - nullable: true - properties: - rrule: - description: Schedule for the rule queries, written in RRULE syntax. See - [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) - for syntax reference. - example: FREQ=HOURLY;INTERVAL=1; - type: string - start: - description: Start date for the schedule, in ISO 8601 format without timezone. - example: '2025-07-14T12:00:00' - type: string - timezone: - description: Time zone of the start date, in the [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) - format. - example: America/New_York - type: string - type: object - SecurityMonitoringSignal: - description: Object description of a security signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalAttributes' - id: - description: The unique ID of the security signal. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/SecurityMonitoringSignalType' - type: object - SecurityMonitoringSignalArchiveComment: - description: Optional comment to display on archived signals. - type: string - SecurityMonitoringSignalArchiveReason: - description: Reason a signal is archived. - enum: - - none - - false_positive - - testing_or_maintenance - - investigated_case_opened - - other - type: string - x-enum-varnames: - - NONE - - FALSE_POSITIVE - - TESTING_OR_MAINTENANCE - - INVESTIGATED_CASE_OPENED - - OTHER - SecurityMonitoringSignalAssigneeUpdateAttributes: - description: Attributes describing the new assignee of a security signal. - properties: - assignee: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - assignee - type: object - SecurityMonitoringSignalAssigneeUpdateData: - description: Data containing the patch for changing the assignee of a signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateAttributes' - required: - - attributes - type: object - SecurityMonitoringSignalAssigneeUpdateRequest: - description: Request body for changing the assignee of a given security monitoring - signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateData' - required: - - data - type: object - SecurityMonitoringSignalAttributes: - additionalProperties: {} - description: 'The object containing all signal attributes and their - - associated values.' - properties: - custom: - additionalProperties: {} - description: A JSON object of attributes in the security signal. - example: - workflow: - first_seen: '2020-06-23T14:46:01.000Z' - last_seen: '2020-06-23T14:46:49.000Z' - rule: - id: 0f5-e0c-805 - name: 'Brute Force Attack Grouped By User ' - version: 12 - type: object - message: - description: The message in the security signal defined by the rule that - generated the signal. - example: Detect Account Take Over (ATO) through brute force attempts - type: string - tags: - description: An array of tags associated with the security signal. - example: - - security:attack - - technique:T1110-brute-force - items: - description: The tag associated with the security signal. - type: string - type: array - timestamp: - description: The timestamp of the security signal. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - SecurityMonitoringSignalIncidentIds: - description: Array of incidents that are associated with this signal. - example: - - 2066 - items: - description: Public ID attribute of the incident that is associated with the - signal. - example: 2066 - format: int64 - type: integer - type: array - SecurityMonitoringSignalIncidentsUpdateAttributes: - description: Attributes describing the new list of related signals for a security - signal. - properties: - incident_ids: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - incident_ids - type: object - SecurityMonitoringSignalIncidentsUpdateData: - description: Data containing the patch for changing the related incidents of - a signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateAttributes' - required: - - attributes - type: object - SecurityMonitoringSignalIncidentsUpdateRequest: - description: Request body for changing the related incidents of a given security - monitoring signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateData' - required: - - data - type: object - SecurityMonitoringSignalListRequest: - description: The request for a security signal list. - properties: - filter: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequestFilter' - page: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequestPage' - sort: - $ref: '#/components/schemas/SecurityMonitoringSignalsSort' - type: object - SecurityMonitoringSignalListRequestFilter: - description: Search filters for listing security signals. - properties: - from: - description: The minimum timestamp for requested security signals. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - query: - description: Search query for listing security signals. - example: security:attack status:high - type: string - to: - description: The maximum timestamp for requested security signals. - example: '2019-01-03T09:42:36.320Z' - format: date-time - type: string - type: object - SecurityMonitoringSignalListRequestPage: - description: The paging attributes for listing security signals. - properties: - cursor: - description: A list of results using the cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: The maximum number of security signals in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - SecurityMonitoringSignalMetadataType: - default: signal_metadata - description: The type of event. - enum: - - signal_metadata - example: signal_metadata - type: string - x-enum-varnames: - - SIGNAL_METADATA - SecurityMonitoringSignalResponse: - description: Security Signal response data object. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignal' - type: object - SecurityMonitoringSignalRuleCreatePayload: - description: Create a new signal correlation rule. - properties: - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting signals which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - type: array - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringSignalRulePayload: - description: The payload of a signal correlation rule. - properties: - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - customMessage: - description: Custom/Overridden message for generated signals (used in case - of Default rule update). - type: string - customName: - description: Custom/Overridden name of the rule (used in case of Default - rule update). - type: string - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting signals which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - type: array - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringSignalRuleQuery: - description: Query for matching rule on signals. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - correlatedByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - correlatedQueryIndex: - description: Index of the rule query used to retrieve the correlated field. - format: int32 - maximum: 9 - type: integer - metrics: - description: Group of target fields to aggregate over. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - ruleId: - description: Rule ID to match on signals. - example: org-ru1-e1d - type: string - required: - - ruleId - type: object - SecurityMonitoringSignalRuleResponse: - description: Rule. - properties: - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - createdAt: - description: When the rule was created, timestamp in milliseconds. - format: int64 - type: integer - creationAuthorId: - description: User ID of the user who created the rule. - format: int64 - type: integer - customMessage: - description: Custom/Overridden message for generated signals (used in case - of Default rule update). - type: string - customName: - description: Custom/Overridden name of the rule (used in case of Default - rule update). - type: string - deprecationDate: - description: When the rule will be deprecated, timestamp in milliseconds. - format: int64 - type: integer - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - type: boolean - id: - description: The ID of the rule. - type: string - isDefault: - description: Whether the rule is included by default. - type: boolean - isDeleted: - description: Whether the rule has been deleted. - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: The name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponseQuery' - type: array - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - updateAuthorId: - description: User ID of the user who updated the rule. - format: int64 - type: integer - version: - description: The version of the rule. - format: int64 - type: integer - type: object - SecurityMonitoringSignalRuleResponseQuery: - description: Query for matching rule on signals. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - correlatedByFields: - description: Fields to correlate by. - items: - description: Field. - type: string - type: array - correlatedQueryIndex: - description: Index of the rule query used to retrieve the correlated field. - format: int32 - maximum: 9 - type: integer - defaultRuleId: - description: Default Rule ID to match on signals. - example: d3f-ru1-e1d - type: string - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - metrics: - description: Group of target fields to aggregate over. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - ruleId: - description: Rule ID to match on signals. - example: org-ru1-e1d - type: string - type: object - SecurityMonitoringSignalRuleType: - description: The rule type. - enum: - - signal_correlation - type: string - x-enum-varnames: - - SIGNAL_CORRELATION - SecurityMonitoringSignalState: - description: The new triage state of the signal. - enum: - - open - - archived - - under_review - example: open - type: string - x-enum-varnames: - - OPEN - - ARCHIVED - - UNDER_REVIEW - SecurityMonitoringSignalStateUpdateAttributes: - description: Attributes describing the change of state of a security signal. - properties: - archive_comment: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' - archive_reason: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' - state: - $ref: '#/components/schemas/SecurityMonitoringSignalState' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - state - type: object - SecurityMonitoringSignalStateUpdateData: - description: Data containing the patch for changing the state of a signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes' - id: - description: The unique ID of the security signal. - type: - $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' - required: - - attributes - type: object - SecurityMonitoringSignalStateUpdateRequest: - description: Request body for changing the state of a given security monitoring - signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateData' - required: - - data - type: object - SecurityMonitoringSignalTriageAttributes: - description: Attributes describing a triage state update operation over a security - signal. - properties: - archive_comment: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' - archive_comment_timestamp: - description: Timestamp of the last edit to the comment. - format: int64 - minimum: 0 - type: integer - archive_comment_user: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - archive_reason: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' - assignee: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - incident_ids: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' - state: - $ref: '#/components/schemas/SecurityMonitoringSignalState' - state_update_timestamp: - description: Timestamp of the last update to the signal state. - format: int64 - minimum: 0 - type: integer - state_update_user: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - required: - - assignee - - state - - incident_ids - type: object - SecurityMonitoringSignalTriageUpdateData: - description: Data containing the updated triage attributes of the signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageAttributes' - id: - description: The unique ID of the security signal. - type: string - type: - $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' - type: object - SecurityMonitoringSignalTriageUpdateResponse: - description: The response returned after all triage operations, containing the - updated signal triage data. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateData' - required: - - data - type: object - SecurityMonitoringSignalType: - default: signal - description: The type of event. - enum: - - signal - example: signal - type: string - x-enum-varnames: - - SIGNAL - SecurityMonitoringSignalVersion: - description: Version of the updated signal. If server side version is higher, - update will be rejected. - format: int64 - type: integer - SecurityMonitoringSignalsListResponse: - description: 'The response object with all security signals matching the request - - and pagination information.' - properties: - data: - description: An array of security signals matching the request. - items: - $ref: '#/components/schemas/SecurityMonitoringSignal' - type: array - links: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseLinks' - meta: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMeta' - type: object - SecurityMonitoringSignalsListResponseLinks: - description: Links attributes. - properties: - next: - description: 'The link for the next set of results. **Note**: The request - can also be made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/security_monitoring/signals?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SecurityMonitoringSignalsListResponseMeta: - description: Meta attributes. - properties: - page: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMetaPage' - type: object - SecurityMonitoringSignalsListResponseMetaPage: - description: Paging attributes. - properties: - after: - description: 'The cursor used to get the next results, if any. To make the - next request, use the same - - parameters with the addition of the `page[cursor]`.' - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SecurityMonitoringSignalsSort: - description: The sort parameters used for querying security signals. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - SecurityMonitoringStandardDataSource: - default: logs - description: Source of events, either logs, audit trail, or Datadog events. - enum: - - logs - - audit - - app_sec_spans - - spans - - security_runtime - - network - - events - example: logs - type: string - x-enum-varnames: - - LOGS - - AUDIT - - APP_SEC_SPANS - - SPANS - - SECURITY_RUNTIME - - NETWORK - - EVENTS - SecurityMonitoringStandardRuleCreatePayload: - description: Create a new rule. - properties: - calculatedFields: - description: Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: Additional grouping to perform on top of the existing groups - in the query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringStandardRulePayload: - description: The payload of a rule. - properties: - calculatedFields: - description: Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - customMessage: - description: Custom/Overridden message for generated signals (used in case - of Default rule update). - type: string - customName: - description: Custom/Overridden name of the rule (used in case of Default - rule update). - type: string - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: Additional grouping to perform on top of the existing groups - in the query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringStandardRuleQuery: - description: Query for matching rule. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - customQueryExtension: - description: Query extension to append to the logs query. - example: a > 3 - type: string - dataSource: - $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - hasOptionalGroupByFields: - default: false - description: When false, events without a group-by value are ignored by - the rule. When true, events with missing group-by fields are processed - with `N/A`, replacing the missing values. - example: false - type: boolean - index: - description: '**This field is currently unstable and might be removed in - a minor version upgrade.** - - The index to run the query on, if the `dataSource` is `logs`. Only used - for scheduled rules - in other words, when the `schedulingOptions` field - is present in the rule payload.' - type: string - metric: - deprecated: true - description: '(Deprecated) The target field to aggregate over when using - the sum or max - - aggregations. `metrics` field should be used instead.' - type: string - metrics: - description: Group of target fields to aggregate over when using the sum, - max, geo data, or new value aggregations. The sum, max, and geo data aggregations - only accept one value in this list, whereas the new value aggregation - accepts up to five values. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - query: - description: Query to run on logs. - example: a > 3 - type: string - type: object - SecurityMonitoringStandardRuleResponse: - description: Rule. - properties: - calculatedFields: - description: Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - createdAt: - description: When the rule was created, timestamp in milliseconds. - format: int64 - type: integer - creationAuthorId: - description: User ID of the user who created the rule. - format: int64 - type: integer - customMessage: - description: Custom/Overridden message for generated signals (used in case - of Default rule update). - type: string - customName: - description: Custom/Overridden name of the rule (used in case of Default - rule update). - type: string - defaultTags: - description: Default Tags for default rules (included in tags) - example: - - security:attacks - items: - description: Default Tag. - type: string - type: array - deprecationDate: - description: When the rule will be deprecated, timestamp in milliseconds. - format: int64 - type: integer - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: Additional grouping to perform on top of the existing groups - in the query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - type: boolean - id: - description: The ID of the rule. - type: string - isDefault: - description: Whether the rule is included by default. - type: boolean - isDeleted: - description: Whether the rule has been deleted. - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: The name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeRead' - updateAuthorId: - description: User ID of the user who updated the rule. - format: int64 - type: integer - updatedAt: - description: The date the rule was last updated, in milliseconds. - format: int64 - type: integer - version: - description: The version of the rule. - format: int64 - type: integer - type: object - SecurityMonitoringStandardRuleTestPayload: - description: The payload of a rule to test - properties: - calculatedFields: - description: Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal correlation, - and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: Additional grouping to perform on top of the existing groups - in the query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: Whether the notifications include the triggering group-by values - in their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeTest' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringSuppression: - description: The suppression rule's properties. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionAttributes' - id: - $ref: '#/components/schemas/SecurityMonitoringSuppressionID' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' - type: object - SecurityMonitoringSuppressionAttributes: - description: The attributes of the suppression rule. - properties: - creation_date: - description: A Unix millisecond timestamp given the creation date of the - suppression rule. - format: int64 - type: integer - creator: - $ref: '#/components/schemas/SecurityMonitoringUser' - data_exclusion_query: - description: An exclusion query on the input data of the security rules, - which could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any detection - rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. - type: string - editable: - description: Whether the suppression rule is editable. - example: true - type: boolean - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: A Unix millisecond timestamp giving an expiration date for - the suppression rule. After this date, it won't suppress signals anymore. - example: 1703187336000 - format: int64 - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: The rule query of the suppression rule, with the same syntax - as the search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string - start_date: - description: A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. - example: 1703187336000 - format: int64 - type: integer - suppression_query: - description: The suppression query of the suppression rule. If a signal - matches this query, it is suppressed and not triggered. Same syntax as - the queries to search signals in the signal explorer. - example: env:staging status:low - type: string - update_date: - description: A Unix millisecond timestamp given the update date of the suppression - rule. - format: int64 - type: integer - updater: - $ref: '#/components/schemas/SecurityMonitoringUser' - version: - description: The version of the suppression rule; it starts at 1, and is - incremented at each update. - example: 42 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityMonitoringSuppressionCreateAttributes: - description: Object containing the attributes of the suppression rule to be - created. - properties: - data_exclusion_query: - description: An exclusion query on the input data of the security rules, - which could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any detection - rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. - type: string - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: A Unix millisecond timestamp giving an expiration date for - the suppression rule. After this date, it won't suppress signals anymore. - example: 1703187336000 - format: int64 - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: The rule query of the suppression rule, with the same syntax - as the search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string - start_date: - description: A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. - example: 1703187336000 - format: int64 - type: integer - suppression_query: - description: The suppression query of the suppression rule. If a signal - matches this query, it is suppressed and is not triggered. It uses the - same syntax as the queries to search signals in the Signals Explorer. - example: env:staging status:low - type: string - required: - - name - - enabled - - rule_query - type: object - SecurityMonitoringSuppressionCreateData: - description: Object for a single suppression rule. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateAttributes' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' - required: - - type - - attributes - type: object - SecurityMonitoringSuppressionCreateRequest: - description: Request object that includes the suppression rule that you would - like to create. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateData' - required: - - data - type: object - SecurityMonitoringSuppressionID: - description: The ID of the suppression rule. - example: 3dd-0uc-h1s - type: string - SecurityMonitoringSuppressionResponse: - description: Response object containing a single suppression rule. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppression' - type: object - SecurityMonitoringSuppressionType: - default: suppressions - description: The type of the resource. The value should always be `suppressions`. - enum: - - suppressions - example: suppressions - type: string - x-enum-varnames: - - SUPPRESSIONS - SecurityMonitoringSuppressionUpdateAttributes: - description: The suppression rule properties to be updated. - properties: - data_exclusion_query: - description: An exclusion query on the input data of the security rules, - which could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any detection - rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. - type: string - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: A Unix millisecond timestamp giving an expiration date for - the suppression rule. After this date, it won't suppress signals anymore. - If unset, the expiration date of the suppression rule is left untouched. - If set to `null`, the expiration date is removed. - example: 1703187336000 - format: int64 - nullable: true - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: The rule query of the suppression rule, with the same syntax - as the search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string - start_date: - description: A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. If unset, - the start date of the suppression rule is left untouched. If set to `null`, - the start date is removed. - example: 1703187336000 - format: int64 - nullable: true - type: integer - suppression_query: - description: The suppression query of the suppression rule. If a signal - matches this query, it is suppressed and not triggered. Same syntax as - the queries to search signals in the signal explorer. - example: env:staging status:low - type: string - version: - description: The current version of the suppression. This is optional, but - it can help prevent concurrent modifications. - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityMonitoringSuppressionUpdateData: - description: The new suppression properties; partial updates are supported. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateAttributes' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' - required: - - type - - attributes - type: object - SecurityMonitoringSuppressionUpdateRequest: - description: Request object containing the fields to update on the suppression - rule. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateData' - required: - - data - type: object - SecurityMonitoringSuppressionsResponse: - description: Response object containing the available suppression rules. - properties: - data: - description: A list of suppressions objects. - items: - $ref: '#/components/schemas/SecurityMonitoringSuppression' - type: array - type: object - SecurityMonitoringThirdPartyRootQuery: - description: A query to be combined with the third party case query. - properties: - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - query: - description: Query to run on logs. - example: source:cloudtrail - type: string - type: object - SecurityMonitoringThirdPartyRuleCase: - description: Case when signal is generated by a third party rule. - properties: - customStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - query: - description: A query to map a third party event to this case. - type: string - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - type: object - SecurityMonitoringThirdPartyRuleCaseCreate: - description: Case when a signal is generated by a third party rule. - properties: - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each case. - items: - description: Notification. - type: string - type: array - query: - description: A query to map a third party event to this case. - type: string - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - SecurityMonitoringTriageUser: - description: Object representing a given user entity. - properties: - handle: - description: The handle for this user account. - type: string - icon: - description: Gravatar icon associated to the user. - example: /path/to/matching/gravatar/icon - readOnly: true - type: string - id: - description: Numerical ID assigned by Datadog to this user account. - format: int64 - type: integer - name: - description: The name for this user account. - nullable: true - type: string - uuid: - description: UUID assigned by Datadog to this user account. - example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 - type: string - required: - - uuid - type: object - SecurityMonitoringUser: - description: A user. - properties: - handle: - description: The handle of the user. - example: john.doe@datadoghq.com - type: string - name: - description: The name of the user. - example: John Doe - nullable: true - type: string - type: object - SecurityTrigger: - description: Trigger a workflow from a Security Signal or Finding. For automatic - triggering a handle must be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - SecurityTriggerWrapper: - description: Schema for a Security-based trigger. - properties: - securityTrigger: - $ref: '#/components/schemas/SecurityTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - securityTrigger - type: object - Selectors: - description: 'Selectors are used to filter security issues for which notifications - should be generated. - - Users can specify rule severities, rule types, a query to filter security - issues on tags and attributes, and the trigger source. - - Only the trigger_source field is required.' - properties: - query: - $ref: '#/components/schemas/NotificationRuleQuery' - rule_types: - $ref: '#/components/schemas/RuleTypes' - severities: - description: The security rules severities to consider. - items: - $ref: '#/components/schemas/RuleSeverity' - type: array - trigger_source: - $ref: '#/components/schemas/TriggerSource' - required: - - trigger_source - type: object - SelfServiceTriggerWrapper: - description: Schema for a Self Service-based trigger. - properties: - selfServiceTrigger: - description: Trigger a workflow from Self Service. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - selfServiceTrigger - type: object - SendSlackMessageAction: - description: Sends a message to a Slack channel. - properties: - channel: - description: The channel ID. - example: CHANNEL - type: string - type: - $ref: '#/components/schemas/SendSlackMessageActionType' - workspace: - description: The workspace ID. - example: WORKSPACE - type: string - required: - - type - - channel - - workspace - type: object - SendSlackMessageActionType: - default: send_slack_message - description: Indicates that the action is a send Slack message action. - enum: - - send_slack_message - example: send_slack_message - type: string - x-enum-varnames: - - SEND_SLACK_MESSAGE - SendTeamsMessageAction: - description: Sends a message to a Microsoft Teams channel. - properties: - channel: - description: The channel ID. - example: CHANNEL - type: string - team: - description: The team ID. - example: TEAM - type: string - tenant: - description: The tenant ID. - example: TENANT - type: string - type: - $ref: '#/components/schemas/SendTeamsMessageActionType' - required: - - type - - channel - - tenant - - team - type: object - SendTeamsMessageActionType: - default: send_teams_message - description: Indicates that the action is a send Microsoft Teams message action. - enum: - - send_teams_message - example: send_teams_message - type: string - x-enum-varnames: - - SEND_TEAMS_MESSAGE - SensitiveDataScannerConfigRequest: - description: Group reorder request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerReorderConfig' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerConfiguration: - description: A Sensitive Data Scanner configuration. - properties: - id: - description: ID of the configuration. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' - type: object - SensitiveDataScannerConfigurationData: - description: A Sensitive Data Scanner configuration data. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerConfiguration' - type: object - SensitiveDataScannerConfigurationRelationships: - description: Relationships of the configuration. - properties: - groups: - $ref: '#/components/schemas/SensitiveDataScannerGroupList' - type: object - SensitiveDataScannerConfigurationType: - default: sensitive_data_scanner_configuration - description: Sensitive Data Scanner configuration type. - enum: - - sensitive_data_scanner_configuration - example: sensitive_data_scanner_configuration - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_CONFIGURATIONS - SensitiveDataScannerCreateGroupResponse: - description: Create group response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupResponse' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerCreateRuleResponse: - description: Create rule response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleResponse' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerFilter: - description: Filter for the Scanning Group. - properties: - query: - description: Query to filter the events. - type: string - type: object - SensitiveDataScannerGetConfigIncludedArray: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedItem' - type: array - SensitiveDataScannerGetConfigIncludedItem: - description: An object related to the configuration. - oneOf: - - $ref: '#/components/schemas/SensitiveDataScannerRuleIncludedItem' - - $ref: '#/components/schemas/SensitiveDataScannerGroupIncludedItem' - SensitiveDataScannerGetConfigResponse: - description: Get all groups response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponseData' - included: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedArray' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMeta' - type: object - SensitiveDataScannerGetConfigResponseData: - description: Response data related to the scanning groups. - properties: - attributes: - additionalProperties: {} - description: Attributes of the Sensitive Data configuration. - type: object - id: - description: ID of the configuration. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' - type: object - SensitiveDataScannerGroup: - description: A scanning group. - properties: - id: - description: ID of the group. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerGroupAttributes: - description: Attributes of the Sensitive Data Scanner group. - properties: - description: - description: Description of the group. - type: string - filter: - $ref: '#/components/schemas/SensitiveDataScannerFilter' - is_enabled: - description: Whether or not the group is enabled. - type: boolean - name: - description: Name of the group. - type: string - product_list: - description: List of products the scanning group applies. - items: - $ref: '#/components/schemas/SensitiveDataScannerProduct' - type: array - samplings: - description: List of sampling rates per product type. - items: - $ref: '#/components/schemas/SensitiveDataScannerSamplings' - type: array - type: object - SensitiveDataScannerGroupCreate: - description: Data related to the creation of a group. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - required: - - type - - attributes - type: object - SensitiveDataScannerGroupCreateRequest: - description: Create group request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupCreate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerGroupData: - description: A scanning group data. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroup' - type: object - SensitiveDataScannerGroupDeleteRequest: - description: Delete group request. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - meta - type: object - SensitiveDataScannerGroupDeleteResponse: - description: Delete group response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerGroupIncludedItem: - description: A Scanning Group included item. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerGroupItem: - description: Data related to a Sensitive Data Scanner Group. - properties: - id: - description: ID of the group. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerGroupList: - description: List of groups, ordered. - properties: - data: - description: List of groups. The order is important. - items: - $ref: '#/components/schemas/SensitiveDataScannerGroupItem' - type: array - type: object - SensitiveDataScannerGroupRelationships: - description: Relationships of the group. - properties: - configuration: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationData' - rules: - $ref: '#/components/schemas/SensitiveDataScannerRuleData' - type: object - SensitiveDataScannerGroupResponse: - description: Response data related to the creation of a group. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerGroupType: - default: sensitive_data_scanner_group - description: Sensitive Data Scanner group type. - enum: - - sensitive_data_scanner_group - example: sensitive_data_scanner_group - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_GROUP - SensitiveDataScannerGroupUpdate: - description: Data related to the update of a group. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerGroupUpdateRequest: - description: Update group request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerGroupUpdateResponse: - description: Update group response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerIncludedKeywordConfiguration: - description: 'Object defining a set of keywords and a number of characters that - help reduce noise. - - You can provide a list of keywords you would like to check within a defined - proximity of the matching pattern. - - If any of the keywords are found within the proximity check, the match is - kept. - - If none are found, the match is discarded.' - properties: - character_count: - description: 'The number of characters behind a match detected by Sensitive - Data Scanner to look for the keywords defined. - - `character_count` should be greater than the maximum length of a keyword - defined for a rule.' - example: 30 - format: int64 - maximum: 50 - minimum: 1 - type: integer - keywords: - description: 'Keyword list that will be checked during scanning in order - to validate a match. - - The number of keywords in the list must be less than or equal to 30.' - example: - - credit card - - cc - items: - type: string - type: array - use_recommended_keywords: - description: 'Should the rule use the underlying standard pattern keyword - configuration. If set to `true`, the rule must be tied - - to a standard pattern. If set to `false`, the specified keywords and `character_count` - are applied.' - type: boolean - required: - - keywords - - character_count - type: object - SensitiveDataScannerMeta: - description: Meta response containing information about the API. - properties: - count_limit: - description: Maximum number of scanning rules allowed for the org. - format: int64 - type: integer - group_count_limit: - description: Maximum number of scanning groups allowed for the org. - format: int64 - type: integer - has_highlight_enabled: - default: true - deprecated: true - description: (Deprecated) Whether or not scanned events are highlighted - in Logs or RUM for the org. - type: boolean - has_multi_pass_enabled: - deprecated: true - description: (Deprecated) Whether or not scanned events have multi-pass - enabled. - type: boolean - is_pci_compliant: - description: Whether or not the org is compliant to the payment card industry - standard. - type: boolean - version: - description: Version of the API. - example: 0 - format: int64 - minimum: 0 - type: integer - type: object - SensitiveDataScannerMetaVersionOnly: - description: Meta payload containing information about the API. - properties: - version: - description: Version of the API (optional). - example: 0 - format: int64 - minimum: 0 - type: integer - type: object - SensitiveDataScannerProduct: - default: logs - description: Datadog product onto which Sensitive Data Scanner can be activated. - enum: - - logs - - rum - - events - - apm - type: string - x-enum-varnames: - - LOGS - - RUM - - EVENTS - - APM - SensitiveDataScannerReorderConfig: - description: Data related to the reordering of scanning groups. - properties: - id: - description: ID of the configuration. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' - type: object - SensitiveDataScannerReorderGroupsResponse: - description: Group reorder response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMeta' - type: object - SensitiveDataScannerRule: - description: Rule item included in the group. - properties: - id: - description: ID of the rule. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerRuleAttributes: - description: Attributes of the Sensitive Data Scanner rule. - properties: - description: - description: Description of the rule. - type: string - excluded_namespaces: - description: Attributes excluded from the scan. If namespaces is provided, - it has to be a sub-path of the namespaces array. - example: - - admin.name - items: - type: string - type: array - included_keyword_configuration: - $ref: '#/components/schemas/SensitiveDataScannerIncludedKeywordConfiguration' - is_enabled: - description: Whether or not the rule is enabled. - type: boolean - name: - description: Name of the rule. - type: string - namespaces: - description: 'Attributes included in the scan. If namespaces is empty or - missing, all attributes except excluded_namespaces are scanned. - - If both are missing the whole event is scanned.' - example: - - admin - items: - type: string - type: array - pattern: - description: Not included if there is a relationship to a standard pattern. - type: string - priority: - description: Integer from 1 (high) to 5 (low) indicating rule issue severity. - format: int64 - maximum: 5 - minimum: 1 - type: integer - tags: - description: List of tags. - items: - type: string - type: array - text_replacement: - $ref: '#/components/schemas/SensitiveDataScannerTextReplacement' - type: object - SensitiveDataScannerRuleCreate: - description: Data related to the creation of a rule. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - required: - - type - - attributes - - relationships - type: object - SensitiveDataScannerRuleCreateRequest: - description: Create rule request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleCreate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerRuleData: - description: Rules included in the group. - properties: - data: - description: Rules included in the group. The order is important. - items: - $ref: '#/components/schemas/SensitiveDataScannerRule' - type: array - type: object - SensitiveDataScannerRuleDeleteRequest: - description: Delete rule request. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - meta - type: object - SensitiveDataScannerRuleDeleteResponse: - description: Delete rule response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerRuleIncludedItem: - description: A Scanning Rule included item. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerRuleRelationships: - description: Relationships of a scanning rule. - properties: - group: - $ref: '#/components/schemas/SensitiveDataScannerGroupData' - standard_pattern: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternData' - type: object - SensitiveDataScannerRuleResponse: - description: Response data related to the creation of a rule. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerRuleType: - default: sensitive_data_scanner_rule - description: Sensitive Data Scanner rule type. - enum: - - sensitive_data_scanner_rule - example: sensitive_data_scanner_rule - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_RULE - SensitiveDataScannerRuleUpdate: - description: Data related to the update of a rule. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerRuleUpdateRequest: - description: Update rule request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerRuleUpdateResponse: - description: Update rule response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerSamplings: - description: Sampling configurations for the Scanning Group. - properties: - product: - $ref: '#/components/schemas/SensitiveDataScannerProduct' - rate: - description: Rate at which data in product type will be scanned, as a percentage. - example: 100.0 - format: double - maximum: 100.0 - minimum: 0.0 - type: number - type: object - SensitiveDataScannerStandardPattern: - description: Data containing the standard pattern id. - properties: - id: - description: ID of the standard pattern. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternType' - type: object - SensitiveDataScannerStandardPatternAttributes: - description: Attributes of the Sensitive Data Scanner standard pattern. - properties: - description: - description: Description of the standard pattern. - type: string - included_keywords: - description: List of included keywords. - items: - type: string - type: array - name: - description: Name of the standard pattern. - type: string - pattern: - deprecated: true - description: (Deprecated) Regex to match, optionally documented for older - standard rules. Refer to the `description` field to understand what the - rule does. - type: string - priority: - description: Integer from 1 (high) to 5 (low) indicating standard pattern - issue severity. - format: int64 - maximum: 5 - minimum: 1 - type: integer - tags: - description: List of tags. - items: - type: string - type: array - type: object - SensitiveDataScannerStandardPatternData: - description: A standard pattern. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerStandardPattern' - type: object - SensitiveDataScannerStandardPatternType: - default: sensitive_data_scanner_standard_pattern - description: Sensitive Data Scanner standard pattern type. - enum: - - sensitive_data_scanner_standard_pattern - example: sensitive_data_scanner_standard_pattern - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_STANDARD_PATTERN - SensitiveDataScannerStandardPatternsResponse: - description: List Standard patterns response. - items: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseItem' - type: array - SensitiveDataScannerStandardPatternsResponseData: - description: List Standard patterns response data. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponse' - type: object - SensitiveDataScannerStandardPatternsResponseItem: - description: Standard pattern item. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternAttributes' - id: - description: ID of the standard pattern. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternType' - type: object - SensitiveDataScannerTextReplacement: - description: Object describing how the scanned event will be replaced. - properties: - number_of_chars: - description: 'Required if type == ''partial_replacement_from_beginning'' - - or ''partial_replacement_from_end''. It must be > 0.' - format: int64 - minimum: 0 - type: integer - replacement_string: - description: Required if type == 'replacement_string'. - type: string - should_save_match: - description: "Only valid when type == `replacement_string`. When enabled, - matches can be unmasked in logs by users with \u2018Data Scanner Unmask\u2019 - permission. As a security best practice, avoid masking for highly-sensitive, - long-lived data." - type: boolean - type: - $ref: '#/components/schemas/SensitiveDataScannerTextReplacementType' - type: object - SensitiveDataScannerTextReplacementType: - default: none - description: 'Type of the replacement text. None means no replacement. - - hash means the data will be stubbed. replacement_string means that - - one can chose a text to replace the data. partial_replacement_from_beginning - - allows a user to partially replace the data from the beginning, and - - partial_replacement_from_end on the other hand, allows to replace data from - - the end.' - enum: - - none - - hash - - replacement_string - - partial_replacement_from_beginning - - partial_replacement_from_end - type: string - x-enum-varnames: - - NONE - - HASH - - REPLACEMENT_STRING - - PARTIAL_REPLACEMENT_FROM_BEGINNING - - PARTIAL_REPLACEMENT_FROM_END - ServiceAccountCreateAttributes: - description: Attributes of the created user. - properties: - email: - description: The email of the user. - example: jane.doe@example.com - type: string - name: - description: The name of the user. - type: string - service_account: - description: Whether the user is a service account. Must be true. - example: true - type: boolean - title: - description: The title of the user. - type: string - required: - - email - - service_account - type: object - ServiceAccountCreateData: - description: Object to create a service account User. - properties: - attributes: - $ref: '#/components/schemas/ServiceAccountCreateAttributes' - relationships: - $ref: '#/components/schemas/UserRelationships' - type: - $ref: '#/components/schemas/UsersType' - required: - - attributes - - type - type: object - ServiceAccountCreateRequest: - description: Create a service account. - properties: - data: - $ref: '#/components/schemas/ServiceAccountCreateData' - required: - - data - type: object - ServiceDefinitionCreateResponse: - description: Create service definitions response. - properties: - data: - description: Create service definitions response payload. - items: - $ref: '#/components/schemas/ServiceDefinitionData' - type: array - type: object - ServiceDefinitionData: - description: Service definition data. - properties: - attributes: - $ref: '#/components/schemas/ServiceDefinitionDataAttributes' - id: - description: Service definition id. - type: string - type: - description: Service definition type. - type: string - type: object - ServiceDefinitionDataAttributes: - description: Service definition attributes. - properties: - meta: - $ref: '#/components/schemas/ServiceDefinitionMeta' - schema: - $ref: '#/components/schemas/ServiceDefinitionSchema' - type: object - ServiceDefinitionGetResponse: - description: Get service definition response. - properties: - data: - $ref: '#/components/schemas/ServiceDefinitionData' - type: object - ServiceDefinitionMeta: - description: Metadata about a service definition. - properties: - github-html-url: - description: GitHub HTML URL. - type: string - ingested-schema-version: - description: Ingestion schema version. - type: string - ingestion-source: - description: Ingestion source of the service definition. - type: string - last-modified-time: - description: Last modified time of the service definition. - type: string - origin: - description: User defined origin of the service definition. - type: string - origin-detail: - description: User defined origin's detail of the service definition. - type: string - warnings: - description: A list of schema validation warnings. - items: - $ref: '#/components/schemas/ServiceDefinitionMetaWarnings' - type: array - type: object - ServiceDefinitionMetaWarnings: - description: Schema validation warnings. - properties: - instance-location: - description: The warning instance location. - type: string - keyword-location: - description: The warning keyword location. - type: string - message: - description: The warning message. - type: string - type: object - ServiceDefinitionRaw: - description: Service Definition in raw JSON/YAML representation. - example: '--- - - schema-version: v2 - - dd-service: my-service - - ' - type: string - ServiceDefinitionSchema: - description: Service definition schema. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV1' - - $ref: '#/components/schemas/ServiceDefinitionV2' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot2' - ServiceDefinitionSchemaVersions: - description: Schema versions - enum: - - v1 - - v2 - - v2.1 - - v2.2 - type: string - x-enum-varnames: - - V1 - - V2 - - V2_1 - - V2_2 - ServiceDefinitionV1: - deprecated: true - description: Deprecated - Service definition V1 for providing additional service - metadata and integrations. - properties: - contact: - $ref: '#/components/schemas/ServiceDefinitionV1Contact' - extensions: - additionalProperties: {} - description: Extensions to V1 schema. - example: - myorg/extension: extensionValue - type: object - external-resources: - description: A list of external links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV1Resource' - type: array - info: - $ref: '#/components/schemas/ServiceDefinitionV1Info' - integrations: - $ref: '#/components/schemas/ServiceDefinitionV1Integrations' - org: - $ref: '#/components/schemas/ServiceDefinitionV1Org' - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV1Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - required: - - schema-version - - info - type: object - ServiceDefinitionV1Contact: - description: Contact information about the service. - properties: - email: - description: "Service owner\u2019s email." - example: contact@datadoghq.com - type: string - slack: - description: "Service owner\u2019s Slack channel." - example: https://yourcompany.slack.com/archives/channel123 - type: string - type: object - ServiceDefinitionV1Info: - description: Basic information about a service. - properties: - dd-service: - description: Unique identifier of the service. Must be unique across all - services and is used to match with a service in Datadog. - example: myservice - type: string - description: - description: A short description of the service. - example: A shopping cart service - type: string - display-name: - description: A friendly name of the service. - example: My Service - type: string - service-tier: - description: Service tier. - example: Tier 1 - type: string - required: - - dd-service - type: object - ServiceDefinitionV1Integrations: - description: Third party integrations that Datadog supports. - properties: - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV1Pagerduty' - type: object - ServiceDefinitionV1Org: - description: Org related information about the service. - properties: - application: - description: App feature this service supports. - example: E-Commerce - type: string - team: - description: Team that owns the service. - example: my-team - type: string - type: object - ServiceDefinitionV1Pagerduty: - description: PagerDuty service URL for the service. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - ServiceDefinitionV1Resource: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV1ResourceType' - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV1ResourceType: - description: Link type. - enum: - - doc - - wiki - - runbook - - url - - repo - - dashboard - - oncall - - code - - link - example: runbook - type: string - x-enum-varnames: - - DOC - - WIKI - - RUNBOOK - - URL - - REPO - - DASHBOARD - - ONCALL - - CODE - - LINK - ServiceDefinitionV1Version: - default: v1 - description: Schema version being used. - enum: - - v1 - example: v1 - type: string - x-enum-varnames: - - V1 - ServiceDefinitionV2: - description: Service definition V2 for providing service metadata and integrations. - properties: - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Contact' - type: array - dd-service: - description: Unique identifier of the service. Must be unique across all - services and is used to match with a service in Datadog. - example: my-service - type: string - dd-team: - description: Experimental feature. A Team handle that matches a Team in - the Datadog Teams product. - example: my-team - type: string - docs: - description: A list of documentation related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Doc' - type: array - extensions: - additionalProperties: {} - description: Extensions to V2 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Integrations' - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Link' - type: array - repos: - description: A list of code repositories related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Repo' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - team: - description: Team that owns the service. - example: my-team - type: string - required: - - schema-version - - dd-service - type: object - ServiceDefinitionV2Contact: - description: Service owner's contacts information. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Email' - - $ref: '#/components/schemas/ServiceDefinitionV2Slack' - - $ref: '#/components/schemas/ServiceDefinitionV2MSTeams' - ServiceDefinitionV2Doc: - description: Service documents. - properties: - name: - description: Document name. - example: Architecture - type: string - provider: - description: Document provider. - example: google drive - type: string - url: - description: Document URL. - example: https://gdrive/mydoc - type: string - required: - - name - - url - type: object - ServiceDefinitionV2Dot1: - description: Service definition v2.1 for providing service metadata and integrations. - properties: - application: - description: Identifier for a group of related services serving a product - feature, which the service is a part of. - example: my-app - type: string - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Contact' - type: array - dd-service: - description: Unique identifier of the service. Must be unique across all - services and is used to match with a service in Datadog. - example: my-service - type: string - description: - description: A short description of the service. - example: My service description - type: string - extensions: - additionalProperties: {} - description: Extensions to v2.1 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Integrations' - lifecycle: - description: The current life cycle phase of the service. - example: sandbox - type: string - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Link' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - team: - description: Team that owns the service. It is used to locate a team defined - in Datadog Teams if it exists. - example: my-team - type: string - tier: - description: Importance of the service. - example: High - type: string - required: - - schema-version - - dd-service - type: object - ServiceDefinitionV2Dot1Contact: - description: Service owner's contacts information. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Email' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Slack' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeams' - ServiceDefinitionV2Dot1Email: - description: Service owner's email. - properties: - contact: - description: Contact value. - example: contact@datadoghq.com - type: string - name: - description: Contact email. - example: Team Email - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1EmailType' - required: - - type - - contact - type: object - ServiceDefinitionV2Dot1EmailType: - description: Contact type. - enum: - - email - example: email - type: string - x-enum-varnames: - - EMAIL - ServiceDefinitionV2Dot1Integrations: - description: Third party integrations that Datadog supports. - properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Pagerduty' - type: object - ServiceDefinitionV2Dot1Link: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - provider: - description: Link provider. - example: Github - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1LinkType' - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV2Dot1LinkType: - description: Link type. - enum: - - doc - - repo - - runbook - - dashboard - - other - example: runbook - type: string - x-enum-varnames: - - DOC - - REPO - - RUNBOOK - - DASHBOARD - - OTHER - ServiceDefinitionV2Dot1MSTeams: - description: Service owner's Microsoft Teams. - properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Microsoft Teams. - example: My team channel - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeamsType' - required: - - type - - contact - type: object - ServiceDefinitionV2Dot1MSTeamsType: - description: Contact type. - enum: - - microsoft-teams - example: microsoft-teams - type: string - x-enum-varnames: - - MICROSOFT_TEAMS - ServiceDefinitionV2Dot1Opsgenie: - description: Opsgenie integration for the service. - properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 - type: string - required: - - service-url - type: object - ServiceDefinitionV2Dot1OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2Dot1Pagerduty: - description: PagerDuty integration for the service. - properties: - service-url: - description: PagerDuty service url. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - type: object - ServiceDefinitionV2Dot1Slack: - description: Service owner's Slack channel. - properties: - contact: - description: Slack Channel. - example: https://yourcompany.slack.com/archives/channel123 - type: string - name: - description: Contact Slack. - example: Team Slack - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1SlackType' - required: - - type - - contact - type: object - ServiceDefinitionV2Dot1SlackType: - description: Contact type. - enum: - - slack - example: slack - type: string - x-enum-varnames: - - SLACK - ServiceDefinitionV2Dot1Version: - default: v2.1 - description: Schema version being used. - enum: - - v2.1 - example: v2.1 - type: string - x-enum-varnames: - - V2_1 - ServiceDefinitionV2Dot2: - description: Service definition v2.2 for providing service metadata and integrations. - properties: - application: - description: Identifier for a group of related services serving a product - feature, which the service is a part of. - example: my-app - type: string - ci-pipeline-fingerprints: - description: A set of CI fingerprints. - example: - - j88xdEy0J5lc - - eZ7LMljCk8vo - items: - type: string - type: array - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Contact' - type: array - dd-service: - description: Unique identifier of the service. Must be unique across all - services and is used to match with a service in Datadog. - example: my-service - type: string - description: - description: A short description of the service. - example: My service description - type: string - extensions: - additionalProperties: {} - description: Extensions to v2.2 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Integrations' - languages: - description: 'The service''s programming language. Datadog recognizes the - following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, - and `c++`.' - example: - - dotnet - - go - - java - - js - - php - - python - - ruby - - c++ - items: - type: string - type: array - lifecycle: - description: The current life cycle phase of the service. - example: sandbox - type: string - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Link' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - team: - description: Team that owns the service. It is used to locate a team defined - in Datadog Teams if it exists. - example: my-team - type: string - tier: - description: Importance of the service. - example: High - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Type' - required: - - schema-version - - dd-service - type: object - ServiceDefinitionV2Dot2Contact: - description: Service owner's contacts information. - properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Name. - example: My team channel - type: string - type: - description: 'Contact type. Datadog recognizes the following types: `email`, - `slack`, and `microsoft-teams`.' - example: slack - type: string - required: - - type - - contact - type: object - ServiceDefinitionV2Dot2Integrations: - description: Third party integrations that Datadog supports. - properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Pagerduty' - type: object - ServiceDefinitionV2Dot2Link: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - provider: - description: Link provider. - example: Github - type: string - type: - description: 'Link type. Datadog recognizes the following types: `runbook`, - `doc`, `repo`, `dashboard`, and `other`.' - example: runbook - type: string - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV2Dot2Opsgenie: - description: Opsgenie integration for the service. - properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 - type: string - required: - - service-url - type: object - ServiceDefinitionV2Dot2OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2Dot2Pagerduty: - description: PagerDuty integration for the service. - properties: - service-url: - description: PagerDuty service url. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - type: object - ServiceDefinitionV2Dot2Type: - description: The type of service. - example: web - type: string - ServiceDefinitionV2Dot2Version: - default: v2.2 - description: Schema version being used. - enum: - - v2.2 - example: v2.2 - type: string - x-enum-varnames: - - V2_2 - ServiceDefinitionV2Email: - description: Service owner's email. - properties: - contact: - description: Contact value. - example: contact@datadoghq.com - type: string - name: - description: Contact email. - example: Team Email - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2EmailType' - required: - - type - - contact - type: object - ServiceDefinitionV2EmailType: - description: Contact type. - enum: - - email - example: email - type: string - x-enum-varnames: - - EMAIL - ServiceDefinitionV2Integrations: - description: Third party integrations that Datadog supports. - properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Pagerduty' - type: object - ServiceDefinitionV2Link: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2LinkType' - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV2LinkType: - description: Link type. - enum: - - doc - - wiki - - runbook - - url - - repo - - dashboard - - oncall - - code - - link - example: runbook - type: string - x-enum-varnames: - - DOC - - WIKI - - RUNBOOK - - URL - - REPO - - DASHBOARD - - ONCALL - - CODE - - LINK - ServiceDefinitionV2MSTeams: - description: Service owner's Microsoft Teams. - properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Microsoft Teams. - example: My team channel - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2MSTeamsType' - required: - - type - - contact - type: object - ServiceDefinitionV2MSTeamsType: - description: Contact type. - enum: - - microsoft-teams - example: microsoft-teams - type: string - x-enum-varnames: - - MICROSOFT_TEAMS - ServiceDefinitionV2Opsgenie: - description: Opsgenie integration for the service. - properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 - type: string - required: - - service-url - type: object - ServiceDefinitionV2OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2Pagerduty: - description: PagerDuty service URL for the service. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - ServiceDefinitionV2Repo: - description: Service code repositories. - properties: - name: - description: Repository name. - example: Source Code - type: string - provider: - description: Repository provider. - example: GitHub - type: string - url: - description: Repository URL. - example: https://github.com/DataDog/schema - type: string - required: - - name - - url - type: object - ServiceDefinitionV2Slack: - description: Service owner's Slack channel. - properties: - contact: - description: Slack Channel. - example: https://yourcompany.slack.com/archives/channel123 - type: string - name: - description: Contact Slack. - example: Team Slack - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2SlackType' - required: - - type - - contact - type: object - ServiceDefinitionV2SlackType: - description: Contact type. - enum: - - slack - example: slack - type: string - x-enum-varnames: - - SLACK - ServiceDefinitionV2Version: - default: v2 - description: Schema version being used. - enum: - - v2 - example: v2 - type: string - x-enum-varnames: - - V2 - ServiceDefinitionsCreateRequest: - description: Create service definitions request. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Dot2' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1' - - $ref: '#/components/schemas/ServiceDefinitionV2' - - $ref: '#/components/schemas/ServiceDefinitionRaw' - ServiceDefinitionsListResponse: - description: Create service definitions response. - properties: - data: - description: Data representing service definitions. - items: - $ref: '#/components/schemas/ServiceDefinitionData' - type: array - type: object - ServiceNowBasicAuth: - description: The definition of the `ServiceNowBasicAuth` object. - properties: - instance: - description: The `ServiceNowBasicAuth` `instance`. - example: '' - type: string - password: - description: The `ServiceNowBasicAuth` `password`. - example: '' - type: string - type: - $ref: '#/components/schemas/ServiceNowBasicAuthType' - username: - description: The `ServiceNowBasicAuth` `username`. - example: '' - type: string - required: - - type - - instance - - username - - password - type: object - ServiceNowBasicAuthType: - description: The definition of the `ServiceNowBasicAuth` object. - enum: - - ServiceNowBasicAuth - example: ServiceNowBasicAuth - type: string - x-enum-varnames: - - SERVICENOWBASICAUTH - ServiceNowBasicAuthUpdate: - description: The definition of the `ServiceNowBasicAuth` object. - properties: - instance: - description: The `ServiceNowBasicAuthUpdate` `instance`. - type: string - password: - description: The `ServiceNowBasicAuthUpdate` `password`. - type: string - type: - $ref: '#/components/schemas/ServiceNowBasicAuthType' - username: - description: The `ServiceNowBasicAuthUpdate` `username`. - type: string - required: - - type - type: object - ServiceNowCredentials: - description: The definition of the `ServiceNowCredentials` object. - oneOf: - - $ref: '#/components/schemas/ServiceNowBasicAuth' - ServiceNowCredentialsUpdate: - description: The definition of the `ServiceNowCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ServiceNowBasicAuthUpdate' - ServiceNowIntegration: - description: The definition of the `ServiceNowIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/ServiceNowCredentials' - type: - $ref: '#/components/schemas/ServiceNowIntegrationType' - required: - - type - - credentials - type: object - ServiceNowIntegrationType: - description: The definition of the `ServiceNowIntegrationType` object. - enum: - - ServiceNow - example: ServiceNow - type: string - x-enum-varnames: - - SERVICENOW - ServiceNowIntegrationUpdate: - description: The definition of the `ServiceNowIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/ServiceNowCredentialsUpdate' - type: - $ref: '#/components/schemas/ServiceNowIntegrationType' - required: - - type - type: object - ServiceNowTicket: - description: ServiceNow ticket attached to case - nullable: true - properties: - result: - $ref: '#/components/schemas/ServiceNowTicketResult' - status: - $ref: '#/components/schemas/Case3rdPartyTicketStatus' - readOnly: true - type: object - ServiceNowTicketResult: - description: ServiceNow ticket information - properties: - sys_target_link: - description: Link to the Incident created on ServiceNow - type: string - type: object - Shift: - description: An on-call shift with its associated data and relationships. - example: - data: - attributes: - end: '2025-05-07T03:53:01.206662873Z' - start: '2025-05-07T02:53:01.206662814Z' - id: 00000000-0000-0000-0000-000000000000 - relationships: - user: - data: - id: 00000000-aba1-0000-0000-000000000000 - type: users - type: shifts - included: - - attributes: - email: foo@bar.com - name: User 1 - status: '' - id: 00000000-aba1-0000-0000-000000000000 - type: users - properties: - data: - $ref: '#/components/schemas/ShiftData' - nullable: true - included: - description: The `Shift` `included`. - items: - $ref: '#/components/schemas/ShiftIncluded' - type: array - type: object - ShiftData: - description: Data for an on-call shift. - properties: - attributes: - $ref: '#/components/schemas/ShiftDataAttributes' - id: - description: The `ShiftData` `id`. - type: string - relationships: - $ref: '#/components/schemas/ShiftDataRelationships' - type: - $ref: '#/components/schemas/ShiftDataType' - required: - - type - type: object - ShiftDataAttributes: - description: Attributes for an on-call shift. - properties: - end: - description: The end time of the shift. - format: date-time - type: string - start: - description: The start time of the shift. - format: date-time - type: string - type: object - ShiftDataRelationships: - description: Relationships for an on-call shift. - properties: - user: - $ref: '#/components/schemas/ShiftDataRelationshipsUser' - type: object - ShiftDataRelationshipsUser: - description: Defines the relationship between a shift and the user who is working - that shift. - properties: - data: - $ref: '#/components/schemas/ShiftDataRelationshipsUserData' - required: - - data - type: object - ShiftDataRelationshipsUserData: - description: Represents a reference to the user assigned to this shift, containing - the user's ID and resource type. - properties: - id: - description: Specifies the unique identifier of the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/ShiftDataRelationshipsUserDataType' - required: - - type - - id - type: object - ShiftDataRelationshipsUserDataType: - default: users - description: Indicates that the related resource is of type 'users'. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - ShiftDataType: - default: shifts - description: Indicates that the resource is of type 'shifts'. - enum: - - shifts - example: shifts - type: string - x-enum-varnames: - - SHIFTS - ShiftIncluded: - description: Included data for shift operations. - oneOf: - - $ref: '#/components/schemas/ScheduleUser' - SimpleMonitorUserTemplate: - description: A simplified version of a monitor user template. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - id: - description: The unique identifier. The initial version will match the template - ID. - example: 00000000-0000-1234-0000-000000000000 - type: string - monitor_definition: - additionalProperties: {} - description: A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - type: object - SingleAggregatedConnectionResponseArray: - description: List of aggregated connections. - example: - data: - - attributes: - bytes_sent_by_client: 100 - bytes_sent_by_server: 200 - group_bys: - client_team: - - networks - server_service: - - hucklebuck - packets_sent_by_client: 10 - packets_sent_by_server: 20 - rtt_micro_seconds: 800 - tcp_closed_connections: 30 - tcp_established_connections: 40 - tcp_refusals: 7 - tcp_resets: 5 - tcp_retransmits: 30 - tcp_timeouts: 6 - id: client_team:networks, server_service:hucklebuck - type: aggregated_connection - properties: - data: - description: Array of aggregated connection objects. - items: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseData' - type: array - type: object - SingleAggregatedConnectionResponseData: - description: Object describing an aggregated connection. - properties: - attributes: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseDataAttributes' - id: - description: A unique identifier for the aggregated connection based on - the group by values. - type: string - type: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseDataType' - type: object - SingleAggregatedConnectionResponseDataAttributes: - description: Attributes for an aggregated connection. - properties: - bytes_sent_by_client: - description: The total number of bytes sent by the client over the given - period. - format: int64 - type: integer - bytes_sent_by_server: - description: The total number of bytes sent by the server over the given - period. - format: int64 - type: integer - group_bys: - additionalProperties: - description: The values for each group by. - items: - type: string - type: array - description: The key, value pairs for each group by. - type: object - packets_sent_by_client: - description: The total number of packets sent by the client over the given - period. - format: int64 - type: integer - packets_sent_by_server: - description: The total number of packets sent by the server over the given - period. - format: int64 - type: integer - rtt_micro_seconds: - description: Measured as TCP smoothed round trip time in microseconds (the - time between a TCP frame being sent and acknowledged). - format: int64 - type: integer - tcp_closed_connections: - description: The number of TCP connections in a closed state. Measured in - connections per second from the client. - format: int64 - type: integer - tcp_established_connections: - description: The number of TCP connections in an established state. Measured - in connections per second from the client. - format: int64 - type: integer - tcp_refusals: - description: The number of TCP connections that were refused by the server. - Typically this indicates an attempt to connect to an IP/port that is not - receiving connections, or a firewall/security misconfiguration. - format: int64 - type: integer - tcp_resets: - description: The number of TCP connections that were reset by the server. - format: int64 - type: integer - tcp_retransmits: - description: TCP Retransmits represent detected failures that are retransmitted - to ensure delivery. Measured in count of retransmits from the client. - format: int64 - type: integer - tcp_timeouts: - description: The number of TCP connections that timed out from the perspective - of the operating system. This can indicate general connectivity and latency - issues. - format: int64 - type: integer - type: object - SingleAggregatedConnectionResponseDataType: - default: aggregated_connection - description: Aggregated connection resource type. - enum: - - aggregated_connection - type: string - x-enum-varnames: - - AGGREGATED_CONNECTION - SingleAggregatedDnsResponseArray: - description: List of aggregated DNS flows. - example: - data: - - attributes: - group_bys: - - key: client_service - value: example-service - - key: network.dns_query - value: example.com - metrics: - - key: dns_total_requests - value: 100 - - key: dns_failures - value: 7 - - key: dns_successful_responses - value: 93 - - key: dns_failed_responses - value: 5 - - key: dns_timeouts - value: 2 - - key: dns_responses.nxdomain - value: 1 - - key: dns_responses.servfail - value: 1 - - key: dns_responses.other - value: 3 - - key: dns_success_latency_percentile - value: 50 - - key: dns_failure_latency_percentile - value: 75 - id: client_service:example-service,network.dns_query:example.com - type: aggregated_dns - properties: - data: - description: Array of aggregated DNS objects. - items: - $ref: '#/components/schemas/SingleAggregatedDnsResponseData' - type: array - type: object - SingleAggregatedDnsResponseData: - description: Object describing an aggregated DNS flow. - properties: - attributes: - $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributes' - id: - description: A unique identifier for the aggregated DNS traffic based on - the group by values. - type: string - type: - $ref: '#/components/schemas/SingleAggregatedDnsResponseDataType' - type: object - SingleAggregatedDnsResponseDataAttributes: - description: Attributes for an aggregated DNS flow. - properties: - group_bys: - description: The key, value pairs for each group by. - items: - $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributesGroupByItems' - type: array - metrics: - description: Metrics associated with an aggregated DNS flow. - items: - $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributesMetricsItems' - type: array - type: object - SingleAggregatedDnsResponseDataAttributesGroupByItems: - description: Attributes associated with a group by - properties: - key: - description: The group by key. - type: string - value: - description: The group by value. - type: string - type: object - SingleAggregatedDnsResponseDataAttributesMetricsItems: - description: Metrics associated with an aggregated DNS flow. - properties: - key: - $ref: '#/components/schemas/DnsMetricKey' - value: - description: The metric value. - format: int64 - type: integer - type: object - SingleAggregatedDnsResponseDataType: - default: aggregated_dns - description: Aggregated DNS resource type. - enum: - - aggregated_dns - type: string - x-enum-varnames: - - AGGREGATED_DNS - SlackIntegrationMetadata: - description: Incident integration metadata for the Slack integration. - properties: - channels: - description: Array of Slack channels in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/SlackIntegrationMetadataChannelItem' - type: array - required: - - channels - type: object - SlackIntegrationMetadataChannelItem: - description: Item in the Slack integration metadata channel array. - properties: - channel_id: - description: Slack channel ID. - example: C0123456789 - type: string - channel_name: - description: Name of the Slack channel. - example: '#example-channel-name' - type: string - redirect_url: - description: URL redirecting to the Slack channel. - example: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 - type: string - team_id: - description: Slack team ID. - example: T01234567 - type: string - required: - - channel_id - - channel_name - - redirect_url - type: object - SlackTriggerWrapper: - description: Schema for a Slack-based trigger. - properties: - slackTrigger: - description: Trigger a workflow from Slack. The workflow must be published. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - slackTrigger - type: object - SloReportCreateRequest: - description: The SLO report request body. - properties: - data: - $ref: '#/components/schemas/SloReportCreateRequestData' - required: - - data - type: object - SloReportCreateRequestAttributes: - description: The attributes portion of the SLO report request. - properties: - from_ts: - description: The `from` timestamp for the report in epoch seconds. - example: 1690901870 - format: int64 - type: integer - interval: - $ref: '#/components/schemas/SLOReportInterval' - query: - description: The query string used to filter SLO results. Some examples - of queries include `service:` and `slo-name`. - example: slo_type:metric - type: string - timezone: - description: The timezone used to determine the start and end of each interval. - For example, weekly intervals start at 12am on Sunday in the specified - timezone. - example: America/New_York - type: string - to_ts: - description: The `to` timestamp for the report in epoch seconds. - example: 1706803070 - format: int64 - type: integer - required: - - query - - from_ts - - to_ts - type: object - SloReportCreateRequestData: - description: The data portion of the SLO report request. - properties: - attributes: - $ref: '#/components/schemas/SloReportCreateRequestAttributes' - required: - - attributes - type: object - SoftwareCatalogTriggerWrapper: - description: Schema for a Software Catalog-based trigger. - properties: - softwareCatalogTrigger: - description: Trigger a workflow from Software Catalog. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - softwareCatalogTrigger - type: object - SortDirection: - default: desc - description: The direction to sort by. - enum: - - desc - - asc - type: string - x-enum-varnames: - - DESC - - ASC - Span: - description: Object description of a spans after being processed and stored - by Datadog. - properties: - attributes: - $ref: '#/components/schemas/SpansAttributes' - id: - description: Unique ID of the Span. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/SpansType' - type: object - SpansAggregateBucket: - description: Spans aggregate. - properties: - attributes: - $ref: '#/components/schemas/SpansAggregateBucketAttributes' - id: - description: ID of the spans aggregate. - type: string - type: - $ref: '#/components/schemas/SpansAggregateBucketType' - type: object - SpansAggregateBucketAttributes: - description: A bucket values. - properties: - by: - additionalProperties: - description: The values for each group by. - description: The key, value pairs for each group by. - example: - '@state': success - '@version': abc - type: object - compute: - description: The compute data. - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/SpansAggregateBucketValue' - description: A map of the metric name -> value for regular compute or list - of values for a timeseries. - type: object - type: object - SpansAggregateBucketType: - description: The spans aggregate bucket type. - enum: - - bucket - example: bucket - type: string - x-enum-varnames: - - BUCKET - SpansAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/SpansAggregateBucketValueSingleString' - - $ref: '#/components/schemas/SpansAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/SpansAggregateBucketValueTimeseries' - SpansAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - SpansAggregateBucketValueSingleString: - description: A single string value. - type: string - SpansAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/SpansAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - SpansAggregateBucketValueTimeseriesPoint: - description: A timeseries point. - properties: - time: - description: The time value for this point. - example: '2023-06-08T11:55:00Z' - type: string - value: - description: The value for this point. - example: 19 - format: double - type: number - type: object - SpansAggregateData: - description: The object containing the query content. - properties: - attributes: - $ref: '#/components/schemas/SpansAggregateRequestAttributes' - type: - $ref: '#/components/schemas/SpansAggregateRequestType' - type: object - SpansAggregateRequest: - description: The object sent with the request to retrieve a list of aggregated - spans from your organization. - properties: - data: - $ref: '#/components/schemas/SpansAggregateData' - type: object - SpansAggregateRequestAttributes: - description: The object containing all the query parameters. - properties: - compute: - description: The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/SpansCompute' - type: array - filter: - $ref: '#/components/schemas/SpansQueryFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansGroupBy' - type: array - options: - $ref: '#/components/schemas/SpansQueryOptions' - type: object - SpansAggregateRequestType: - default: aggregate_request - description: The type of resource. The value should always be aggregate_request. - enum: - - aggregate_request - example: aggregate_request - type: string - x-enum-varnames: - - AGGREGATE_REQUEST - SpansAggregateResponse: - description: The response object for the spans aggregate API endpoint. - properties: - data: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/SpansAggregateBucket' - type: array - meta: - $ref: '#/components/schemas/SpansAggregateResponseMetadata' - type: object - SpansAggregateResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/SpansAggregateResponseStatus' - warnings: - description: 'A list of warnings (non fatal errors) encountered, partial - results might be returned if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/SpansWarning' - type: array - type: object - SpansAggregateResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - SpansAggregateSort: - description: A sort rule. - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/SpansAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' - type: string - order: - $ref: '#/components/schemas/SpansSortOrder' - type: - $ref: '#/components/schemas/SpansAggregateSortType' - type: object - SpansAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - SpansAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - SpansAttributes: - description: JSON object containing all span attributes and their associated - values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from your span. - example: - customAttribute: 123 - duration: 2345 - type: object - custom: - additionalProperties: {} - description: JSON object of custom spans data. - type: object - end_timestamp: - description: End timestamp of your span. - example: '2023-01-02T09:42:36.420Z' - format: date-time - type: string - env: - description: Name of the environment from where the spans are being sent. - example: prod - type: string - host: - description: Name of the machine from where the spans are being sent. - example: i-0123 - type: string - ingestion_reason: - description: The reason why the span was ingested. - example: rule - type: string - parent_id: - description: Id of the span that's parent of this span. - example: '0' - type: string - resource_hash: - description: Unique identifier of the resource. - example: a12345678b91c23d - type: string - resource_name: - description: The name of the resource. - example: agent - type: string - retained_by: - description: The reason why the span was indexed. - example: retention_filter - type: string - service: - description: 'The name of the application or service generating the span - events. - - It is used to switch from APM to Logs, so make sure you define the same - - value when you use both products.' - example: agent - type: string - single_span: - description: Whether or not the span was collected as a stand-alone span. - Always associated to "single_span" ingestion_reason if true. - example: true - type: boolean - span_id: - description: Id of the span. - example: '1234567890987654321' - type: string - start_timestamp: - description: Start timestamp of your span. - example: '2023-01-02T09:42:36.320Z' - format: date-time - type: string - tags: - description: Array of tags associated with your span. - example: - - team:A - items: - description: Tag associated with your span. - type: string - type: array - trace_id: - description: Id of the trace to which the span belongs. - example: '1234567890987654321' - type: string - type: - description: The type of the span. - example: web - type: string - type: object - SpansCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/SpansAggregationFunction' - interval: - description: 'The time buckets'' size (only used for type=timeseries) - - Defaults to a resolution of 150 points.' - example: 5m - type: string - metric: - description: The metric to use. - example: '@duration' - type: string - type: - $ref: '#/components/schemas/SpansComputeType' - required: - - aggregation - type: object - SpansComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - SpansFilter: - description: The spans filter used to index spans. - properties: - query: - description: The search query - following the [span search syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). - example: '@http.status_code:200 service:my-service' - type: string - type: object - SpansFilterCreate: - description: The spans filter. Spans matching this filter will be indexed and - stored. - properties: - query: - description: The search query - following the [span search syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). - example: '@http.status_code:200 service:my-service' - type: string - required: - - query - type: object - SpansGroupBy: - description: A group by rule. - properties: - facet: - description: The name of the facet to use (required). - example: host - type: string - histogram: - $ref: '#/components/schemas/SpansGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/SpansGroupByMissing' - sort: - $ref: '#/components/schemas/SpansAggregateSort' - total: - $ref: '#/components/schemas/SpansGroupByTotal' - required: - - facet - type: object - SpansGroupByHistogram: - description: 'Used to perform a histogram computation (only for measure facets). - - Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval.' - properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: 'The maximum value for the measure used in the histogram - - (values greater than this one are filtered out).' - example: 100 - format: double - type: number - min: - description: 'The minimum value for the measure used in the histogram - - (values smaller than this one are filtered out).' - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - SpansGroupByMissing: - description: The value to use for spans that don't have the facet used to group - by. - oneOf: - - $ref: '#/components/schemas/SpansGroupByMissingString' - - $ref: '#/components/schemas/SpansGroupByMissingNumber' - SpansGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - SpansGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - SpansGroupByTotal: - default: false - description: A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/SpansGroupByTotalBoolean' - - $ref: '#/components/schemas/SpansGroupByTotalString' - - $ref: '#/components/schemas/SpansGroupByTotalNumber' - SpansGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - SpansGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - SpansGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - SpansListRequest: - description: The request for a spans list. - properties: - data: - $ref: '#/components/schemas/SpansListRequestData' - type: object - SpansListRequestAttributes: - description: The object containing all the query parameters. - properties: - filter: - $ref: '#/components/schemas/SpansQueryFilter' - options: - $ref: '#/components/schemas/SpansQueryOptions' - page: - $ref: '#/components/schemas/SpansListRequestPage' - sort: - $ref: '#/components/schemas/SpansSort' - type: object - SpansListRequestData: - description: The object containing the query content. - properties: - attributes: - $ref: '#/components/schemas/SpansListRequestAttributes' - type: - $ref: '#/components/schemas/SpansListRequestType' - type: object - SpansListRequestPage: - description: Paging attributes for listing spans. - properties: - cursor: - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of spans in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - SpansListRequestType: - default: search_request - description: The type of resource. The value should always be search_request. - enum: - - search_request - example: search_request - type: string - x-enum-varnames: - - SEARCH_REQUEST - SpansListResponse: - description: Response object with all spans matching the request and pagination - information. - properties: - data: - description: Array of spans matching the request. - items: - $ref: '#/components/schemas/Span' - type: array - links: - $ref: '#/components/schemas/SpansListResponseLinks' - meta: - $ref: '#/components/schemas/SpansListResponseMetadata' - type: object - SpansListResponseLinks: - description: Links attributes. - properties: - next: - description: 'Link for the next set of results. Note that the request can - also be made using the - - POST endpoint.' - example: https://app.datadoghq.com/api/v2/spans/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SpansListResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/SpansResponseMetadataPage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/SpansAggregateResponseStatus' - warnings: - description: 'A list of warnings (non fatal errors) encountered, partial - results might be returned if - - warnings are present in the response.' - items: - $ref: '#/components/schemas/SpansWarning' - type: array - type: object - SpansMetricCompute: - description: The compute rule to compute the span-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/SpansMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' - path: - description: The path to the value the span-based metric will aggregate - on (only used if the aggregation type is a "distribution"). - example: '@duration' - type: string - required: - - aggregation_type - type: object - SpansMetricComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - SpansMetricComputeIncludePercentiles: - description: 'Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when the `aggregation_type` is `distribution`.' - example: false - type: boolean - SpansMetricCreateAttributes: - description: The object describing the Datadog span-based metric to create. - properties: - compute: - $ref: '#/components/schemas/SpansMetricCompute' - filter: - $ref: '#/components/schemas/SpansMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansMetricGroupBy' - type: array - required: - - compute - type: object - SpansMetricCreateData: - description: The new span-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/SpansMetricCreateAttributes' - id: - $ref: '#/components/schemas/SpansMetricID' - type: - $ref: '#/components/schemas/SpansMetricType' - required: - - id - - type - - attributes - type: object - SpansMetricCreateRequest: - description: The new span-based metric body. - properties: - data: - $ref: '#/components/schemas/SpansMetricCreateData' - required: - - data - type: object - SpansMetricFilter: - description: The span-based metric filter. Spans matching this filter will be - aggregated in this metric. - properties: - query: - default: '*' - description: The search query - following the span search syntax. - example: '@http.status_code:200 service:my-service' - type: string - type: object - SpansMetricGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the span-based metric will be aggregated - over. - example: resource_name - type: string - tag_name: - description: Eventual name of the tag that gets created. By default, the - path attribute is used as the tag name. - example: resource_name - type: string - required: - - path - type: object - SpansMetricID: - description: The name of the span-based metric. - example: my.metric - type: string - SpansMetricResponse: - description: The span-based metric object. - properties: - data: - $ref: '#/components/schemas/SpansMetricResponseData' - type: object - SpansMetricResponseAttributes: - description: The object describing a Datadog span-based metric. - properties: - compute: - $ref: '#/components/schemas/SpansMetricResponseCompute' - filter: - $ref: '#/components/schemas/SpansMetricResponseFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansMetricResponseGroupBy' - type: array - type: object - SpansMetricResponseCompute: - description: The compute rule to compute the span-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/SpansMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' - path: - description: The path to the value the span-based metric will aggregate - on (only used if the aggregation type is a "distribution"). - example: '@duration' - type: string - type: object - SpansMetricResponseData: - description: The span-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/SpansMetricResponseAttributes' - id: - $ref: '#/components/schemas/SpansMetricID' - type: - $ref: '#/components/schemas/SpansMetricType' - type: object - SpansMetricResponseFilter: - description: The span-based metric filter. Spans matching this filter will be - aggregated in this metric. - properties: - query: - description: The search query - following the span search syntax. - example: '@http.status_code:200 service:my-service' - type: string - type: object - SpansMetricResponseGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the span-based metric will be aggregated - over. - example: resource_name - type: string - tag_name: - description: Eventual name of the tag that gets created. By default, the - path attribute is used as the tag name. - example: resource_name - type: string - type: object - SpansMetricType: - default: spans_metrics - description: The type of resource. The value should always be spans_metrics. - enum: - - spans_metrics - example: spans_metrics - type: string - x-enum-varnames: - - SPANS_METRICS - SpansMetricUpdateAttributes: - description: The span-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/SpansMetricUpdateCompute' - filter: - $ref: '#/components/schemas/SpansMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansMetricGroupBy' - type: array - type: object - SpansMetricUpdateCompute: - description: The compute rule to compute the span-based metric. - properties: - include_percentiles: - $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' - type: object - SpansMetricUpdateData: - description: The new span-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/SpansMetricUpdateAttributes' - type: - $ref: '#/components/schemas/SpansMetricType' - required: - - type - - attributes - type: object - SpansMetricUpdateRequest: - description: The new span-based metric body. - properties: - data: - $ref: '#/components/schemas/SpansMetricUpdateData' - required: - - data - type: object - SpansMetricsResponse: - description: All the available span-based metric objects. - properties: - data: - description: A list of span-based metric objects. - items: - $ref: '#/components/schemas/SpansMetricResponseData' - type: array - type: object - SpansQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: The minimum time for the requested spans, supports date-time - ISO8601, date math, and regular timestamps (milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query - following the span search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - to: - default: now - description: The maximum time for the requested spans, supports date-time - ISO8601, date math, and regular timestamps (milliseconds). - example: now - type: string - type: object - SpansQueryOptions: - description: 'Global query options that are used during the query. - - Note: You should only supply timezone or time offset but not both otherwise - the query will fail.' - properties: - timeOffset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: The timezone can be specified as GMT, UTC, an offset from UTC - (like UTC+1), or as a Timezone Database identifier (like America/New_York). - example: GMT - type: string - type: object - SpansResponseMetadataPage: - description: Paging attributes. - properties: - after: - description: 'The cursor to use to get the next results, if any. To make - the next request, use the same - - parameters with the addition of the `page[cursor]`.' - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SpansSort: - description: Sort parameters when querying spans. - enum: - - timestamp - - -timestamp - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - SpansSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - SpansType: - default: spans - description: Type of the span. - enum: - - spans - example: spans - type: string - x-enum-varnames: - - SPANS - SpansWarning: - description: A warning message indicating something that went wrong with the - query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - Spec: - description: The spec defines what the workflow does. - properties: - annotations: - description: A list of annotations used in the workflow. These are like - sticky notes for your workflow! - items: - $ref: '#/components/schemas/Annotation' - type: array - connectionEnvs: - description: A list of connections or connection groups used in the workflow. - items: - $ref: '#/components/schemas/ConnectionEnv' - type: array - handle: - description: Unique identifier used to trigger workflows automatically in - Datadog. - type: string - inputSchema: - $ref: '#/components/schemas/InputSchema' - outputSchema: - $ref: '#/components/schemas/OutputSchema' - steps: - description: A `Step` is a sub-component of a workflow. Each `Step` performs - an action. - items: - $ref: '#/components/schemas/Step' - type: array - triggers: - description: The list of triggers that activate this workflow. At least - one trigger is required, and each trigger type may appear at most once. - items: - $ref: '#/components/schemas/Trigger' - type: array - type: object - SpecVersion: - description: The version of the CycloneDX specification a BOM conforms to. - enum: - - '1.0' - - '1.1' - - '1.2' - - '1.3' - - '1.4' - - '1.5' - example: '1.5' - type: string - x-enum-varnames: - - ONE_ZERO - - ONE_ONE - - ONE_TWO - - ONE_THREE - - ONE_FOUR - - ONE_FIVE - SplitAPIKey: - description: The definition of the `SplitAPIKey` object. - properties: - api_key: - description: The `SplitAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/SplitAPIKeyType' - required: - - type - - api_key - type: object - SplitAPIKeyType: - description: The definition of the `SplitAPIKey` object. - enum: - - SplitAPIKey - example: SplitAPIKey - type: string - x-enum-varnames: - - SPLITAPIKEY - SplitAPIKeyUpdate: - description: The definition of the `SplitAPIKey` object. - properties: - api_key: - description: The `SplitAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/SplitAPIKeyType' - required: - - type - type: object - SplitCredentials: - description: The definition of the `SplitCredentials` object. - oneOf: - - $ref: '#/components/schemas/SplitAPIKey' - SplitCredentialsUpdate: - description: The definition of the `SplitCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/SplitAPIKeyUpdate' - SplitIntegration: - description: The definition of the `SplitIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/SplitCredentials' - type: - $ref: '#/components/schemas/SplitIntegrationType' - required: - - type - - credentials - type: object - SplitIntegrationType: - description: The definition of the `SplitIntegrationType` object. - enum: - - Split - example: Split - type: string - x-enum-varnames: - - SPLIT - SplitIntegrationUpdate: - description: The definition of the `SplitIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/SplitCredentialsUpdate' - type: - $ref: '#/components/schemas/SplitIntegrationType' - required: - - type - type: object - StartStepNames: - description: A list of steps that run first after a trigger fires. - example: - - '' - items: - description: The `StartStepNames` `items`. - type: string - type: array - State: - description: The state of the rule evaluation. - enum: - - pass - - fail - - skip - example: pass - type: string - x-enum-varnames: - - PASS - - FAIL - - SKIP - StateVariable: - description: A variable, which can be set and read by other components in the - app. - properties: - id: - description: The ID of the state variable. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - name: - description: A unique identifier for this state variable. This name is also - used to access the variable's value throughout the app. - example: ordersToSubmit - type: string - properties: - $ref: '#/components/schemas/StateVariableProperties' - type: - $ref: '#/components/schemas/StateVariableType' - required: - - id - - name - - type - - properties - type: object - StateVariableProperties: - description: The properties of the state variable. - properties: - defaultValue: - description: The default value of the state variable. - example: ${['order_3145', 'order_4920']} - type: object - StateVariableType: - default: stateVariable - description: The state variable type. - enum: - - stateVariable - example: stateVariable - type: string - x-enum-varnames: - - STATEVARIABLE - StatsigAPIKey: - description: The definition of the `StatsigAPIKey` object. - properties: - api_key: - description: The `StatsigAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/StatsigAPIKeyType' - required: - - type - - api_key - type: object - StatsigAPIKeyType: - description: The definition of the `StatsigAPIKey` object. - enum: - - StatsigAPIKey - example: StatsigAPIKey - type: string - x-enum-varnames: - - STATSIGAPIKEY - StatsigAPIKeyUpdate: - description: The definition of the `StatsigAPIKey` object. - properties: - api_key: - description: The `StatsigAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/StatsigAPIKeyType' - required: - - type - type: object - StatsigCredentials: - description: The definition of the `StatsigCredentials` object. - oneOf: - - $ref: '#/components/schemas/StatsigAPIKey' - StatsigCredentialsUpdate: - description: The definition of the `StatsigCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/StatsigAPIKeyUpdate' - StatsigIntegration: - description: The definition of the `StatsigIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/StatsigCredentials' - type: - $ref: '#/components/schemas/StatsigIntegrationType' - required: - - type - - credentials - type: object - StatsigIntegrationType: - description: The definition of the `StatsigIntegrationType` object. - enum: - - Statsig - example: Statsig - type: string - x-enum-varnames: - - STATSIG - StatsigIntegrationUpdate: - description: The definition of the `StatsigIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/StatsigCredentialsUpdate' - type: - $ref: '#/components/schemas/StatsigIntegrationType' - required: - - type - type: object - Step: - description: A Step is a sub-component of a workflow. Each Step performs an - action. - properties: - actionId: - description: The unique identifier of an action. - example: '' - type: string - completionGate: - $ref: '#/components/schemas/CompletionGate' - connectionLabel: - description: The unique identifier of a connection defined in the spec. - type: string - display: - $ref: '#/components/schemas/StepDisplay' - errorHandlers: - description: The `Step` `errorHandlers`. - items: - $ref: '#/components/schemas/ErrorHandler' - type: array - name: - description: Name of the step. - example: '' - type: string - outboundEdges: - description: A list of subsequent actions to run. - items: - $ref: '#/components/schemas/OutboundEdge' - type: array - parameters: - description: A list of inputs for an action. - items: - $ref: '#/components/schemas/Parameter' - type: array - readinessGate: - $ref: '#/components/schemas/ReadinessGate' - required: - - name - - actionId - type: object - StepDisplay: - description: The definition of `StepDisplay` object. - properties: - bounds: - $ref: '#/components/schemas/StepDisplayBounds' - type: object - StepDisplayBounds: - description: The definition of `StepDisplayBounds` object. - properties: - x: - description: The `bounds` `x`. - format: double - type: number - y: - description: The `bounds` `y`. - format: double - type: number - type: object - TagFilter: - description: Tag filter for the budget's entries. - properties: - tag_key: - description: The key of the tag. - example: service - type: string - tag_value: - description: The value of the tag. - example: ec2 - type: string - type: object - TagsEventAttribute: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - Targets: - description: 'List of recipients to notify when a notification rule is triggered. - Many different target types are supported, - - such as email addresses, Slack channels, and PagerDuty services. - - The appropriate integrations need to be properly configured to send notifications - to the specified targets.' - example: - - '@john.doe@email.com' - items: - description: Recipients to notify. - type: string - type: array - Team: - description: A team - properties: - attributes: - $ref: '#/components/schemas/TeamAttributes' - id: - description: The team's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/TeamRelationships' - type: - $ref: '#/components/schemas/TeamType' - required: - - attributes - - id - - type - type: object - TeamAttributes: - description: Team attributes - properties: - avatar: - description: Unicode representation of the avatar for the team, limited - to a single grapheme - example: "\U0001F951" - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - created_at: - description: Creation date of the team - format: date-time - type: string - description: - description: Free-form markdown description/content for the team's homepage - nullable: true - type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - link_count: - description: The number of links belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - modified_at: - description: Modification date of the team - format: date-time - type: string - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - summary: - description: A brief summary of the team, derived from the `description` - maxLength: 120 - nullable: true - type: string - user_count: - description: The number of users belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array - required: - - handle - - name - type: object - TeamCreate: - description: Team create - properties: - attributes: - $ref: '#/components/schemas/TeamCreateAttributes' - relationships: - $ref: '#/components/schemas/TeamCreateRelationships' - type: - $ref: '#/components/schemas/TeamType' - required: - - attributes - - type - type: object - TeamCreateAttributes: - description: Team creation attributes - properties: - avatar: - description: Unicode representation of the avatar for the team, limited - to a single grapheme - example: "\U0001F951" - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - description: - description: Free-form markdown description/content for the team's homepage - type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array - required: - - handle - - name - type: object - TeamCreateRelationships: - description: Relationships formed with the team on creation - properties: - users: - $ref: '#/components/schemas/RelationshipToUsers' - type: object - TeamCreateRequest: - description: Request to create a team - properties: - data: - $ref: '#/components/schemas/TeamCreate' - required: - - data - type: object - TeamIncluded: - description: Included resources related to the team - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/TeamLink' - - $ref: '#/components/schemas/UserTeamPermission' - TeamLink: - description: Team link - properties: - attributes: - $ref: '#/components/schemas/TeamLinkAttributes' - id: - description: The team link's identifier - example: b8626d7e-cedd-11eb-abf5-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - attributes - - id - - type - type: object - TeamLinkAttributes: - description: Team link attributes - properties: - label: - description: The link's label - example: Link label - maxLength: 256 - type: string - position: - description: The link's position, used to sort links for the team - format: int32 - maximum: 2147483647 - type: integer - team_id: - description: ID of the team the link is associated with - readOnly: true - type: string - url: - description: The URL for the link - example: https://example.com - type: string - required: - - label - - url - type: object - TeamLinkCreate: - description: Team link create - properties: - attributes: - $ref: '#/components/schemas/TeamLinkAttributes' - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - attributes - - type - type: object - TeamLinkCreateRequest: - description: Team link create request - properties: - data: - $ref: '#/components/schemas/TeamLinkCreate' - required: - - data - type: object - TeamLinkResponse: - description: Team link response - properties: - data: - $ref: '#/components/schemas/TeamLink' - type: object - TeamLinkType: - default: team_links - description: Team link type - enum: - - team_links - example: team_links - type: string - x-enum-varnames: - - TEAM_LINKS - TeamLinksResponse: - description: Team links response - properties: - data: - description: Team links response data - items: - $ref: '#/components/schemas/TeamLink' - type: array - type: object - TeamOnCallResponders: - description: Root object representing a team's on-call responder configuration. - example: - data: - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - relationships: - escalations: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: escalation_policy_steps - responders: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - type: team_oncall_responders - included: - - attributes: - email: test@test.com - name: Test User - status: active - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - relationships: - responders: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - type: escalation_policy_steps - properties: - data: - $ref: '#/components/schemas/TeamOnCallRespondersData' - included: - description: The `TeamOnCallResponders` `included`. - items: - $ref: '#/components/schemas/TeamOnCallRespondersIncluded' - type: array - type: object - TeamOnCallRespondersData: - description: Defines the main on-call responder object for a team, including - relationships and metadata. - properties: - id: - description: Unique identifier of the on-call responder configuration. - type: string - relationships: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationships' - type: - $ref: '#/components/schemas/TeamOnCallRespondersDataType' - required: - - type - type: object - TeamOnCallRespondersDataRelationships: - description: Relationship objects linked to a team's on-call responder configuration, - including escalations and responders. - properties: - escalations: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalations' - responders: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsResponders' - type: object - TeamOnCallRespondersDataRelationshipsEscalations: - description: Defines the escalation policy steps linked to the team's on-call - configuration. - properties: - data: - description: Array of escalation step references. - items: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItems' - type: array - type: object - TeamOnCallRespondersDataRelationshipsEscalationsDataItems: - description: Represents a link to a specific escalation policy step associated - with the on-call team. - properties: - id: - description: Unique identifier of the escalation step. - example: '' - type: string - type: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType' - required: - - type - - id - type: object - TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType: - default: escalation_policy_steps - description: Identifies the resource type for escalation policy steps linked - to a team's on-call configuration. - enum: - - escalation_policy_steps - example: escalation_policy_steps - type: string - x-enum-varnames: - - ESCALATION_POLICY_STEPS - TeamOnCallRespondersDataRelationshipsResponders: - description: Defines the list of users assigned as on-call responders for the - team. - properties: - data: - description: Array of user references associated as responders. - items: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItems' - type: array - type: object - TeamOnCallRespondersDataRelationshipsRespondersDataItems: - description: Represents a user responder associated with the on-call team. - properties: - id: - description: Unique identifier of the responder. - example: '' - type: string - type: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItemsType' - required: - - type - - id - type: object - TeamOnCallRespondersDataRelationshipsRespondersDataItemsType: - default: users - description: Identifies the resource type for individual user entities associated - with on-call response. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - TeamOnCallRespondersDataType: - default: team_oncall_responders - description: Represents the resource type for a group of users assigned to handle - on-call duties within a team. - enum: - - team_oncall_responders - example: team_oncall_responders - type: string - x-enum-varnames: - - TEAM_ONCALL_RESPONDERS - TeamOnCallRespondersIncluded: - description: Represents an union of related resources included in the response, - such as users and escalation steps. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Escalation' - TeamPermissionSetting: - description: Team permission setting - properties: - attributes: - $ref: '#/components/schemas/TeamPermissionSettingAttributes' - id: - description: The team permission setting's identifier - example: TeamPermission-aeadc05e-98a8-11ec-ac2c-da7ad0900001-edit - type: string - type: - $ref: '#/components/schemas/TeamPermissionSettingType' - required: - - id - - type - type: object - TeamPermissionSettingAttributes: - description: Team permission setting attributes - properties: - action: - $ref: '#/components/schemas/TeamPermissionSettingSerializerAction' - editable: - description: Whether or not the permission setting is editable by the current - user - readOnly: true - type: boolean - options: - $ref: '#/components/schemas/TeamPermissionSettingValues' - title: - description: The team permission name - readOnly: true - type: string - value: - $ref: '#/components/schemas/TeamPermissionSettingValue' - type: object - TeamPermissionSettingResponse: - description: Team permission setting response - properties: - data: - $ref: '#/components/schemas/TeamPermissionSetting' - type: object - TeamPermissionSettingSerializerAction: - description: The identifier for the action - enum: - - manage_membership - - edit - readOnly: true - type: string - x-enum-varnames: - - MANAGE_MEMBERSHIP - - EDIT - TeamPermissionSettingType: - default: team_permission_settings - description: Team permission setting type - enum: - - team_permission_settings - example: team_permission_settings - type: string - x-enum-varnames: - - TEAM_PERMISSION_SETTINGS - TeamPermissionSettingUpdate: - description: Team permission setting update - properties: - attributes: - $ref: '#/components/schemas/TeamPermissionSettingUpdateAttributes' - type: - $ref: '#/components/schemas/TeamPermissionSettingType' - required: - - type - type: object - TeamPermissionSettingUpdateAttributes: - description: Team permission setting update attributes - properties: - value: - $ref: '#/components/schemas/TeamPermissionSettingValue' - type: object - TeamPermissionSettingUpdateRequest: - description: Team permission setting update request - properties: - data: - $ref: '#/components/schemas/TeamPermissionSettingUpdate' - required: - - data - type: object - TeamPermissionSettingValue: - description: What type of user is allowed to perform the specified action - enum: - - admins - - members - - organization - - user_access_manage - - teams_manage - type: string - x-enum-varnames: - - ADMINS - - MEMBERS - - ORGANIZATION - - USER_ACCESS_MANAGE - - TEAMS_MANAGE - TeamPermissionSettingValues: - description: Possible values for action - items: - $ref: '#/components/schemas/TeamPermissionSettingValue' - readOnly: true - type: array - TeamPermissionSettingsResponse: - description: Team permission settings response - properties: - data: - description: Team permission settings response data - items: - $ref: '#/components/schemas/TeamPermissionSetting' - type: array - type: object - TeamReference: - description: Provides a reference to a team, including ID, type, and basic attributes/relationships. - properties: - attributes: - $ref: '#/components/schemas/TeamReferenceAttributes' - id: - description: The team's unique identifier. - type: string - type: - $ref: '#/components/schemas/TeamReferenceType' - required: - - type - type: object - TeamReferenceAttributes: - description: Encapsulates the basic attributes of a Team reference, such as - name, handle, and an optional avatar or description. - properties: - avatar: - description: URL or reference for the team's avatar (if available). - type: string - description: - description: A short text describing the team. - type: string - handle: - description: A unique handle/slug for the team. - type: string - name: - description: The full, human-readable name of the team. - type: string - type: object - TeamReferenceType: - default: teams - description: Teams resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - TeamRelationships: - description: Resources related to a team - properties: - team_links: - $ref: '#/components/schemas/RelationshipToTeamLinks' - user_team_permissions: - $ref: '#/components/schemas/RelationshipToUserTeamPermission' - type: object - TeamRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Related link. - example: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links - type: string - type: object - TeamResponse: - description: Response with a team - properties: - data: - $ref: '#/components/schemas/Team' - type: object - TeamRoutingRules: - description: Represents a complete set of team routing rules, including data - and optionally included related resources. - example: - data: - id: 27590dae-47be-4a7d-9abf-8f4e45124020 - relationships: - rules: - data: - - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - type: team_routing_rules - - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - type: team_routing_rules - type: team_routing_rules - included: - - attributes: - actions: null - query: tags.service:test - time_restriction: - restrictions: - - end_day: monday - end_time: '17:00:00' - start_day: monday - start_time: 09:00:00 - - end_day: tuesday - end_time: '17:00:00' - start_day: tuesday - start_time: 09:00:00 - time_zone: '' - urgency: high - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - relationships: - policy: - data: null - type: team_routing_rules - properties: - data: - $ref: '#/components/schemas/TeamRoutingRulesData' - included: - description: Provides related routing rules or other included resources. - items: - $ref: '#/components/schemas/TeamRoutingRulesIncluded' - type: array - type: object - TeamRoutingRulesData: - description: Represents the top-level data object for team routing rules, containing - the ID, relationships, and resource type. - properties: - id: - description: Specifies the unique identifier of this team routing rules - record. - type: string - relationships: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationships' - type: - $ref: '#/components/schemas/TeamRoutingRulesDataType' - required: - - type - type: object - TeamRoutingRulesDataRelationships: - description: Specifies relationships for team routing rules, including rule - references. - properties: - rules: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRules' - type: object - TeamRoutingRulesDataRelationshipsRules: - description: Holds references to a set of routing rules in a relationship. - properties: - data: - description: An array of references to the routing rules associated with - this team. - items: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItems' - type: array - type: object - TeamRoutingRulesDataRelationshipsRulesDataItems: - description: Defines a relationship item to link a routing rule by its ID and - type. - properties: - id: - description: Specifies the unique identifier for the related routing rule. - example: '' - type: string - type: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItemsType' - required: - - type - - id - type: object - TeamRoutingRulesDataRelationshipsRulesDataItemsType: - default: team_routing_rules - description: Indicates that the resource is of type 'team_routing_rules'. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - TeamRoutingRulesDataType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - TeamRoutingRulesIncluded: - description: Represents additional included resources for team routing rules, - such as associated routing rules. - oneOf: - - $ref: '#/components/schemas/RoutingRule' - TeamRoutingRulesRequest: - description: Represents a request to create or update team routing rules, including - the data payload. - example: - data: - attributes: - rules: - - actions: null - policy_id: '' - query: tags.service:test - time_restriction: - restrictions: - - end_day: monday - end_time: '17:00:00' - start_day: monday - start_time: 09:00:00 - - end_day: tuesday - end_time: '17:00:00' - start_day: tuesday - start_time: 09:00:00 - time_zone: '' - urgency: high - - actions: - - channel: channel - type: send_slack_message - workspace: workspace - policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 - query: '' - time_restriction: null - urgency: low - id: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: team_routing_rules - properties: - data: - $ref: '#/components/schemas/TeamRoutingRulesRequestData' - type: object - TeamRoutingRulesRequestData: - description: Holds the data necessary to create or update team routing rules, - including attributes, ID, and resource type. - properties: - attributes: - $ref: '#/components/schemas/TeamRoutingRulesRequestDataAttributes' - id: - description: Specifies the unique identifier for this set of team routing - rules. - type: string - type: - $ref: '#/components/schemas/TeamRoutingRulesRequestDataType' - required: - - type - type: object - TeamRoutingRulesRequestDataAttributes: - description: Represents the attributes of a request to update or create team - routing rules. - properties: - rules: - description: A list of routing rule items that define how incoming pages - should be handled. - items: - $ref: '#/components/schemas/TeamRoutingRulesRequestRule' - type: array - type: object - TeamRoutingRulesRequestDataType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - TeamRoutingRulesRequestRule: - description: Defines an individual routing rule item that contains the rule - data for the request. - properties: - actions: - description: Specifies the list of actions to perform when the routing rule - is matched. - items: - $ref: '#/components/schemas/RoutingRuleAction' - type: array - policy_id: - description: Identifies the policy to be applied when this routing rule - matches. - type: string - query: - description: Defines the query or condition that triggers this routing rule. - type: string - time_restriction: - $ref: '#/components/schemas/TimeRestrictions' - urgency: - $ref: '#/components/schemas/Urgency' - type: object - TeamSyncAttributes: - description: Team sync attributes. - properties: - source: - $ref: '#/components/schemas/TeamSyncAttributesSource' - type: - $ref: '#/components/schemas/TeamSyncAttributesType' - required: - - source - - type - type: object - TeamSyncAttributesSource: - description: The external source platform for team synchronization. Only "github" - is supported. - enum: - - github - example: github - type: string - x-enum-varnames: - - GITHUB - TeamSyncAttributesType: - description: The type of synchronization operation. Only "link" is supported, - which links existing teams by matching names. - enum: - - link - example: link - type: string - x-enum-varnames: - - LINK - TeamSyncBulkType: - description: Team sync bulk type. - enum: - - team_sync_bulk - example: team_sync_bulk - type: string - x-enum-varnames: - - TEAM_SYNC_BULK - TeamSyncData: - description: Team sync data. - properties: - attributes: - $ref: '#/components/schemas/TeamSyncAttributes' - type: - $ref: '#/components/schemas/TeamSyncBulkType' - required: - - attributes - - type - type: object - TeamSyncRequest: - description: Team sync request. - example: - data: - attributes: - source: github - type: link - type: team_sync_bulk - properties: - data: - $ref: '#/components/schemas/TeamSyncData' - required: - - data - type: object - TeamTarget: - description: Represents a team target for an escalation policy step, including - the team's ID and resource type. - properties: - id: - description: Specifies the unique identifier of the team resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/TeamTargetType' - required: - - type - - id - type: object - TeamTargetType: - default: teams - description: Indicates that the resource is of type `teams`. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - TeamType: - default: team - description: Team type - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - TeamUpdate: - description: Team update request - properties: - attributes: - $ref: '#/components/schemas/TeamUpdateAttributes' - relationships: - $ref: '#/components/schemas/TeamUpdateRelationships' - type: - $ref: '#/components/schemas/TeamType' - required: - - attributes - - type - type: object - TeamUpdateAttributes: - description: Team update attributes - properties: - avatar: - description: Unicode representation of the avatar for the team, limited - to a single grapheme - example: "\U0001F951" - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - description: - description: Free-form markdown description/content for the team's homepage - type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array - required: - - handle - - name - type: object - TeamUpdateRelationships: - description: Team update relationships - properties: - team_links: - $ref: '#/components/schemas/RelationshipToTeamLinks' - type: object - TeamUpdateRequest: - description: Team update request - properties: - data: - $ref: '#/components/schemas/TeamUpdate' - required: - - data - type: object - TeamsField: - description: Supported teams field. - enum: - - id - - name - - handle - - summary - - description - - avatar - - banner - - visible_modules - - hidden_modules - - created_at - - modified_at - - user_count - - link_count - - team_links - - user_team_permissions - type: string - x-enum-varnames: - - ID - - NAME - - HANDLE - - SUMMARY - - DESCRIPTION - - AVATAR - - BANNER - - VISIBLE_MODULES - - HIDDEN_MODULES - - CREATED_AT - - MODIFIED_AT - - USER_COUNT - - LINK_COUNT - - TEAM_LINKS - - USER_TEAM_PERMISSIONS - TeamsResponse: - description: Response with multiple teams - properties: - data: - description: Teams response data - items: - $ref: '#/components/schemas/Team' - type: array - included: - description: Resources related to the team - items: - $ref: '#/components/schemas/TeamIncluded' - type: array - links: - $ref: '#/components/schemas/TeamsResponseLinks' - meta: - $ref: '#/components/schemas/TeamsResponseMeta' - type: object - TeamsResponseLinks: - description: Teams response links. - properties: - first: - description: First link. - type: string - last: - description: Last link. - nullable: true - type: string - next: - description: Next link. - type: string - prev: - description: Previous link. - nullable: true - type: string - self: - description: Current link. - type: string - type: object - TeamsResponseMeta: - description: Teams response metadata. - properties: - pagination: - $ref: '#/components/schemas/TeamsResponseMetaPagination' - type: object - TeamsResponseMetaPagination: - description: Teams response metadata. - properties: - first_offset: - description: The first offset. - format: int64 - type: integer - last_offset: - description: The last offset. - format: int64 - type: integer - limit: - description: Pagination limit. - format: int64 - type: integer - next_offset: - description: The next offset. - format: int64 - type: integer - offset: - description: The offset. - format: int64 - type: integer - prev_offset: - description: The previous offset. - format: int64 - type: integer - total: - description: Total results. - format: int64 - type: integer - type: - description: Offset type. - type: string - type: object - TimeAggregation: - description: 'Time aggregation period (in seconds) is used to aggregate the - results of the notification rule evaluation. - - Results are aggregated over a selected time frame using a rolling window, - which updates with each new evaluation. - - Notifications are only sent for new issues discovered during the window. - - Time aggregation is only available for vulnerability-based notification rules. - When omitted or set to 0, no aggregation - - is done.' - example: 86400 - format: int64 - type: integer - TimeRestriction: - description: Defines a single time restriction rule with start and end times - and the applicable weekdays. - properties: - end_day: - $ref: '#/components/schemas/Weekday' - end_time: - description: Specifies the ending time for this restriction. - type: string - start_day: - $ref: '#/components/schemas/Weekday' - start_time: - description: Specifies the starting time for this restriction. - type: string - type: object - TimeRestrictions: - description: Holds time zone information and a list of time restrictions for - a routing rule. - properties: - restrictions: - description: Defines the list of time-based restrictions. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - time_zone: - description: Specifies the time zone applicable to the restrictions. - example: '' - type: string - required: - - time_zone - - restrictions - type: object - TimeseriesFormulaQueryRequest: - description: A request wrapper around a single timeseries query to be executed. - properties: - data: - $ref: '#/components/schemas/TimeseriesFormulaRequest' - required: - - data - type: object - TimeseriesFormulaQueryResponse: - description: A message containing one response to a timeseries query made with - timeseries formula query request. - properties: - data: - $ref: '#/components/schemas/TimeseriesResponse' - errors: - description: The error generated by the request. - type: string - type: object - TimeseriesFormulaRequest: - description: A single timeseries query to be executed. - properties: - attributes: - $ref: '#/components/schemas/TimeseriesFormulaRequestAttributes' - type: - $ref: '#/components/schemas/TimeseriesFormulaRequestType' - required: - - type - - attributes - type: object - TimeseriesFormulaRequestAttributes: - description: The object describing a timeseries formula request. - properties: - formulas: - description: List of formulas to be calculated and returned as responses. - items: - $ref: '#/components/schemas/QueryFormula' - type: array - from: - description: Start date (inclusive) of the query in milliseconds since the - Unix epoch. - example: 1568899800000 - format: int64 - type: integer - interval: - description: 'A time interval in milliseconds. - - May be overridden by a larger interval if the query would result in - - too many points for the specified timeframe. - - Defaults to a reasonable interval for the given timeframe.' - example: 5000 - format: int64 - type: integer - queries: - $ref: '#/components/schemas/TimeseriesFormulaRequestQueries' - to: - description: End date (exclusive) of the query in milliseconds since the - Unix epoch. - example: 1568923200000 - format: int64 - type: integer - required: - - to - - from - - queries - type: object - TimeseriesFormulaRequestQueries: - description: List of queries to be run and used as inputs to the formulas. - example: - - data_source: metrics - query: avg:system.cpu.user{*} by {env} - items: - $ref: '#/components/schemas/TimeseriesQuery' - type: array - TimeseriesFormulaRequestType: - default: timeseries_request - description: The type of the resource. The value should always be timeseries_request. - enum: - - timeseries_request - example: timeseries_request - type: string - x-enum-varnames: - - TIMESERIES_REQUEST - TimeseriesFormulaResponseType: - default: timeseries_response - description: The type of the resource. The value should always be timeseries_response. - enum: - - timeseries_response - example: timeseries_response - type: string - x-enum-varnames: - - TIMESERIES_RESPONSE - TimeseriesQuery: - description: An individual timeseries query to one of the basic Datadog data - sources. - example: - data_source: metrics - query: avg:system.cpu.user{*} by {env} - oneOf: - - $ref: '#/components/schemas/MetricsTimeseriesQuery' - - $ref: '#/components/schemas/EventsTimeseriesQuery' - TimeseriesResponse: - description: A message containing the response to a timeseries query. - properties: - attributes: - $ref: '#/components/schemas/TimeseriesResponseAttributes' - type: - $ref: '#/components/schemas/TimeseriesFormulaResponseType' - type: object - TimeseriesResponseAttributes: - description: The object describing a timeseries response. - properties: - series: - $ref: '#/components/schemas/TimeseriesResponseSeriesList' - times: - $ref: '#/components/schemas/TimeseriesResponseTimes' - values: - $ref: '#/components/schemas/TimeseriesResponseValuesList' - type: object - TimeseriesResponseSeries: - description: '' - properties: - group_tags: - $ref: '#/components/schemas/GroupTags' - query_index: - description: The index of the query in the "formulas" array (or "queries" - array if no "formulas" was specified). - example: 0 - format: int32 - maximum: 2147483647 - type: integer - unit: - description: 'Detailed information about the unit. - - The first element describes the "primary unit" (for example, `bytes` in - `bytes per second`). - - The second element describes the "per unit" (for example, `second` in - `bytes per second`). - - If the second element is not present, the API returns null.' - items: - $ref: '#/components/schemas/Unit' - nullable: true - type: array - type: object - TimeseriesResponseSeriesList: - description: Array of response series. The index here corresponds to the index - in the `formulas` or `queries` array from the request. - items: - $ref: '#/components/schemas/TimeseriesResponseSeries' - type: array - TimeseriesResponseTimes: - description: Array of times, 1-1 match with individual values arrays. - items: - description: Start date (inclusive) of the query in seconds since the Unix - epoch. - example: 1568899800000 - format: int64 - type: integer - type: array - TimeseriesResponseValues: - description: Array of values for an individual formula or query. - example: - - 1575317847.0 - - 0.5 - items: - description: An individual value for a given time. - format: double - nullable: true - type: number - type: array - TimeseriesResponseValuesList: - description: Array of value-arrays. The index here corresponds to the index - in the `formulas` or `queries` array from the request. - items: - $ref: '#/components/schemas/TimeseriesResponseValues' - type: array - TokenName: - description: Name for tokens. - example: MyTokenName - pattern: ^[A-Za-z][A-Za-z\\d]*$ - type: string - TokenType: - description: The definition of `TokenType` object. - enum: - - SECRET - example: SECRET - type: string - x-enum-varnames: - - SECRET - Trigger: - description: One of the triggers that can start the execution of a workflow. - oneOf: - - $ref: '#/components/schemas/APITriggerWrapper' - - $ref: '#/components/schemas/AppTriggerWrapper' - - $ref: '#/components/schemas/CaseTriggerWrapper' - - $ref: '#/components/schemas/ChangeEventTriggerWrapper' - - $ref: '#/components/schemas/DatabaseMonitoringTriggerWrapper' - - $ref: '#/components/schemas/DashboardTriggerWrapper' - - $ref: '#/components/schemas/GithubWebhookTriggerWrapper' - - $ref: '#/components/schemas/IncidentTriggerWrapper' - - $ref: '#/components/schemas/MonitorTriggerWrapper' - - $ref: '#/components/schemas/NotebookTriggerWrapper' - - $ref: '#/components/schemas/ScheduleTriggerWrapper' - - $ref: '#/components/schemas/SecurityTriggerWrapper' - - $ref: '#/components/schemas/SelfServiceTriggerWrapper' - - $ref: '#/components/schemas/SlackTriggerWrapper' - - $ref: '#/components/schemas/SoftwareCatalogTriggerWrapper' - - $ref: '#/components/schemas/WorkflowTriggerWrapper' - TriggerRateLimit: - description: Defines a rate limit for a trigger. - properties: - count: - description: The `TriggerRateLimit` `count`. - format: int64 - type: integer - interval: - description: The `TriggerRateLimit` `interval`. The expected format is the - number of seconds ending with an s. For example, 1 day is 86400s - type: string - type: object - TriggerSource: - description: 'The type of security issues on which the rule applies. Notification - rules based on security signals need to use the trigger source "security_signals", - - while notification rules based on security vulnerabilities need to use the - trigger source "security_findings".' - enum: - - security_findings - - security_signals - example: security_findings - type: string - x-enum-varnames: - - SECURITY_FINDINGS - - SECURITY_SIGNALS - Unit: - description: Object containing the metric unit family, scale factor, name, and - short name. - nullable: true - properties: - family: - description: Unit family, allows for conversion between units of the same - family, for scaling. - example: time - type: string - name: - description: Unit name - example: minute - type: string - plural: - description: Plural form of the unit name. - example: minutes - type: string - scale_factor: - description: Factor for scaling between units of the same family. - example: 60.0 - format: double - type: number - short_name: - description: Abbreviation of the unit. - example: min - type: string - type: object - UnpublishAppResponse: - description: The response object after an app is successfully unpublished. - properties: - data: - $ref: '#/components/schemas/Deployment' - type: object - UpdateActionConnectionRequest: - description: Request used to update an action connection. - properties: - data: - $ref: '#/components/schemas/ActionConnectionDataUpdate' - required: - - data - type: object - UpdateActionConnectionResponse: - description: The response for an updated connection. - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - type: object - UpdateAppRequest: - description: A request object for updating an existing app. - example: - data: - attributes: - components: - - events: [] - name: grid0 - properties: - children: - - events: [] - name: gridCell0 - properties: - children: - - events: [] - name: calloutValue0 - properties: - isDisabled: false - isLoading: false - isVisible: true - label: CPU Usage - size: sm - style: vivid_yellow - unit: kB - value: '42' - type: calloutValue - isVisible: 'true' - layout: - default: - height: 8 - width: 2 - x: 0 - y: 0 - type: gridCell - type: grid - description: This is a simple example app - name: Example App - queries: [] - rootInstanceName: grid0 - id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 - type: appDefinitions - properties: - data: - $ref: '#/components/schemas/UpdateAppRequestData' - type: object - UpdateAppRequestData: - description: The data object containing the new app definition. Any fields not - included in the request remain unchanged. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppRequestDataAttributes' - id: - description: The ID of the app to update. The app ID must match the ID in - the URL path. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - type - type: object - UpdateAppRequestDataAttributes: - description: App definition attributes to be updated, such as name, description, - and components. - properties: - components: - description: The new UI components that make up the app. If this field is - set, all existing components are replaced with the new components under - this field. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: The new human-readable description for the app. - type: string - name: - description: The new name of the app. - type: string - queries: - description: The new array of queries, such as external actions and state - variables, that the app uses. If this field is set, all existing queries - are replaced with the new queries under this field. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: The new name of the root component of the app. This must be - a `grid` component that contains all other components. - type: string - tags: - description: The new list of tags for the app, which can be used to filter - apps. If this field is set, any existing tags not included in the request - are removed. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - UpdateAppResponse: - description: The response object after an app is successfully updated. - properties: - data: - $ref: '#/components/schemas/UpdateAppResponseData' - included: - description: Data on the version of the app that was published. - items: - $ref: '#/components/schemas/Deployment' - type: array - meta: - $ref: '#/components/schemas/AppMeta' - relationship: - $ref: '#/components/schemas/AppRelationship' - type: object - UpdateAppResponseData: - description: The data object containing the updated app definition. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppResponseDataAttributes' - id: - description: The ID of the updated app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - - attributes - type: object - UpdateAppResponseDataAttributes: - description: The updated app definition attributes, such as name, description, - and components. - properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: The human-readable description for the app. - type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean - name: - description: The name of the app. - type: string - queries: - description: An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: The name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - UpdateAppsDatastoreItemRequest: - description: Request to update specific fields on an existing datastore item. - properties: - data: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestData' - type: object - UpdateAppsDatastoreItemRequestData: - description: Data wrapper containing the item identifier and the changes to - apply during the update operation. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributes' - id: - description: The unique identifier of the datastore item. - type: string - type: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataType' - required: - - type - type: object - UpdateAppsDatastoreItemRequestDataAttributes: - description: Attributes for updating a datastore item, including the item key - and changes to apply. - properties: - id: - description: The unique identifier of the item being updated. - type: string - item_changes: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributesItemChanges' - item_key: - description: The primary key that identifies the item to update. Cannot - exceed 256 characters. - example: '' - maxLength: 256 - type: string - required: - - item_changes - - item_key - type: object - UpdateAppsDatastoreItemRequestDataAttributesItemChanges: - description: Changes to apply to a datastore item using set operations. - properties: - ops_set: - additionalProperties: {} - description: Set operation that contains key-value pairs to set on the datastore - item. - type: object - type: object - UpdateAppsDatastoreItemRequestDataType: - default: items - description: The resource type for datastore items. - enum: - - items - example: items - type: string - x-enum-varnames: - - ITEMS - UpdateAppsDatastoreRequest: - description: Request to update a datastore's configuration such as its name - or description. - properties: - data: - $ref: '#/components/schemas/UpdateAppsDatastoreRequestData' - type: object - UpdateAppsDatastoreRequestData: - description: Data wrapper containing the datastore identifier and the attributes - to update. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppsDatastoreRequestDataAttributes' - id: - description: The unique identifier of the datastore to update. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - UpdateAppsDatastoreRequestDataAttributes: - description: Attributes that can be updated on a datastore. - properties: - description: - description: A human-readable description about the datastore. - type: string - name: - description: The display name of the datastore. - type: string - type: object - UpdateCustomFrameworkRequest: - description: Request object to update a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkData' - required: - - data - type: object - UpdateCustomFrameworkResponse: - description: Response object to update a custom framework. - properties: - data: - $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' - required: - - data - type: object - UpdateOpenAPIResponse: - description: Response for `UpdateOpenAPI`. - properties: - data: - $ref: '#/components/schemas/UpdateOpenAPIResponseData' - type: object - UpdateOpenAPIResponseAttributes: - description: Attributes for `UpdateOpenAPI`. - properties: - failed_endpoints: - description: List of endpoints which couldn't be parsed. - items: - $ref: '#/components/schemas/OpenAPIEndpoint' - type: array - type: object - UpdateOpenAPIResponseData: - description: Data envelope for `UpdateOpenAPIResponse`. - properties: - attributes: - $ref: '#/components/schemas/UpdateOpenAPIResponseAttributes' - id: - $ref: '#/components/schemas/ApiID' - type: object - UpdateOutcomesAsyncAttributes: - description: The JSON:API attributes for a batched set of scorecard outcomes. - properties: - results: - description: Set of scorecard outcomes to update asynchronously. - items: - $ref: '#/components/schemas/UpdateOutcomesAsyncRequestItem' - type: array - type: object - UpdateOutcomesAsyncRequest: - description: Scorecard outcomes batch request. - properties: - data: - $ref: '#/components/schemas/UpdateOutcomesAsyncRequestData' - type: object - UpdateOutcomesAsyncRequestData: - description: Scorecard outcomes batch request data. - properties: - attributes: - $ref: '#/components/schemas/UpdateOutcomesAsyncAttributes' - type: - $ref: '#/components/schemas/UpdateOutcomesAsyncType' - type: object - UpdateOutcomesAsyncRequestItem: - description: Scorecard outcome for a single entity and rule. - properties: - entity_reference: - $ref: '#/components/schemas/EntityReference' - remarks: - description: Any remarks regarding the scorecard rule's evaluation. Supports - HTML hyperlinks. - example: 'See: Services' - type: string - rule_id: - $ref: '#/components/schemas/RuleId' - state: - $ref: '#/components/schemas/State' - required: - - rule_id - - entity_reference - - state - type: object - UpdateOutcomesAsyncType: - default: batched-outcome - description: The JSON:API type for scorecard outcomes. - enum: - - batched-outcome - example: batched-outcome - type: string - x-enum-varnames: - - BATCHED_OUTCOME - UpdateResourceEvaluationFiltersRequest: - description: Request object to update a resource filter. - properties: - data: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequestData' - required: - - data - type: object - UpdateResourceEvaluationFiltersRequestData: - description: The definition of `UpdateResourceFilterRequestData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `UpdateResourceEvaluationFiltersRequestData` `id`. - example: csm_resource_filter - type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - required: - - attributes - - type - type: object - UpdateResourceEvaluationFiltersResponse: - description: The definition of `UpdateResourceEvaluationFiltersResponse` object. - properties: - data: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponseData' - required: - - data - type: object - UpdateResourceEvaluationFiltersResponseData: - description: The definition of `UpdateResourceFilterResponseData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `data` `id`. - example: csm_resource_filter - type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - required: - - attributes - - type - type: object - UpdateRuleRequest: - description: Request to update a scorecard rule. - properties: - data: - $ref: '#/components/schemas/UpdateRuleRequestData' - type: object - UpdateRuleRequestData: - description: Data for the request to update a scorecard rule. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - type: - $ref: '#/components/schemas/RuleType' - type: object - UpdateRuleResponse: - description: The response from a rule update request. - properties: - data: - $ref: '#/components/schemas/UpdateRuleResponseData' - type: object - UpdateRuleResponseData: - description: The data for a rule update response. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - relationships: - $ref: '#/components/schemas/RelationshipToRule' - type: - $ref: '#/components/schemas/RuleType' - type: object - UpdateWorkflowRequest: - description: A request object for updating an existing workflow. - example: - data: - attributes: - description: A sample workflow. - name: Example Workflow - published: true - spec: - annotations: - - display: - bounds: - height: 150 - width: 300 - x: -375 - y: -0.5 - id: 99999999-9999-9999-9999-999999999999 - markdownTextAnnotation: - text: Example annotation. - connectionEnvs: - - connections: - - connectionId: 11111111-1111-1111-1111-111111111111 - label: INTEGRATION_DATADOG - env: default - handle: my-handle - inputSchema: - parameters: - - defaultValue: default - name: input - type: STRING - outputSchema: - parameters: - - name: output - type: ARRAY_OBJECT - value: '{{ Steps.Step1 }}' - steps: - - actionId: com.datadoghq.dd.monitor.listMonitors - connectionLabel: INTEGRATION_DATADOG - name: Step1 - outboundEdges: - - branchName: main - nextStepName: Step2 - parameters: - - name: tags - value: service:monitoring - - actionId: com.datadoghq.core.noop - name: Step2 - triggers: - - monitorTrigger: - rateLimit: - count: 1 - interval: 3600s - startStepNames: - - Step1 - - githubWebhookTrigger: {} - startStepNames: - - Step1 - tags: - - team:infra - - service:monitoring - - foo:bar - id: 22222222-2222-2222-2222-222222222222 - type: workflows - properties: - data: - $ref: '#/components/schemas/WorkflowDataUpdate' - required: - - data - type: object - UpdateWorkflowResponse: - description: The response object after updating a workflow. - properties: - data: - $ref: '#/components/schemas/WorkflowDataUpdate' - type: object - UpsertCatalogEntityRequest: - description: Create or update entity request. - oneOf: - - $ref: '#/components/schemas/EntityV3' - - $ref: '#/components/schemas/EntityRaw' - UpsertCatalogEntityResponse: - description: Upsert entity response. - properties: - data: - $ref: '#/components/schemas/EntityResponseData' - included: - $ref: '#/components/schemas/UpsertCatalogEntityResponseIncluded' - meta: - $ref: '#/components/schemas/EntityResponseMeta' - type: object - UpsertCatalogEntityResponseIncluded: - description: Upsert entity response included. - items: - $ref: '#/components/schemas/UpsertCatalogEntityResponseIncludedItem' - type: array - UpsertCatalogEntityResponseIncludedItem: - description: Upsert entity response included item. - oneOf: - - $ref: '#/components/schemas/EntityResponseIncludedSchema' - UpsertCatalogKindRequest: - description: Create or update kind request. - oneOf: - - $ref: '#/components/schemas/KindObj' - - $ref: '#/components/schemas/KindRaw' - UpsertCatalogKindResponse: - description: Upsert kind response. - properties: - data: - $ref: '#/components/schemas/KindResponseData' - meta: - $ref: '#/components/schemas/KindResponseMeta' - type: object - Urgency: - description: Specifies the level of urgency for a routing rule (low, high, or - dynamic). - enum: - - low - - high - - dynamic - example: low - type: string - x-enum-varnames: - - LOW - - HIGH - - DYNAMIC - UrlParam: - description: The definition of `UrlParam` object. - properties: - name: - $ref: '#/components/schemas/TokenName' - example: MyUrlParameter - value: - description: The `UrlParam` `value`. - example: Some Url Parameter value - type: string - required: - - name - - value - type: object - UrlParamUpdate: - description: The definition of `UrlParamUpdate` object. - properties: - deleted: - description: Should the header be deleted. - type: boolean - name: - $ref: '#/components/schemas/TokenName' - example: MyUrlParameter - value: - description: The `UrlParamUpdate` `value`. - example: Some Url Parameter value - type: string - required: - - name - type: object - UsageApplicationSecurityMonitoringResponse: - description: Application Security Monitoring usage response. - properties: - data: - description: Response containing Application Security Monitoring usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array - type: object - UsageAttributesObject: - description: Usage attributes data. - properties: - org_name: - description: The organization name. - type: string - product_family: - description: The product for which usage is being reported. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs - to. - type: string - timeseries: - description: List of usage data reported for each requested hour. - items: - $ref: '#/components/schemas/UsageTimeSeriesObject' - type: array - usage_type: - $ref: '#/components/schemas/HourlyUsageType' - type: object - UsageDataObject: - description: Usage data. - properties: - attributes: - $ref: '#/components/schemas/UsageAttributesObject' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/UsageTimeSeriesType' - type: object - UsageLambdaTracedInvocationsResponse: - description: Lambda Traced Invocations usage response. - properties: - data: - description: Response containing Lambda Traced Invocations usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array - type: object - UsageObservabilityPipelinesResponse: - description: Observability Pipelines usage response. - properties: - data: - description: Response containing Observability Pipelines usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array - type: object - UsageTimeSeriesObject: - description: Usage timeseries data. - properties: - timestamp: - description: Datetime in ISO-8601 format, UTC. The hour for the usage. - format: date-time - type: string - value: - description: Contains the number measured for the given usage_type during - the hour. - format: int64 - nullable: true - type: integer - type: object - UsageTimeSeriesType: - default: usage_timeseries - description: Type of usage data. - enum: - - usage_timeseries - example: usage_timeseries - type: string - x-enum-varnames: - - USAGE_TIMESERIES - User: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' - type: object - UserAttributes: - description: Attributes of user object returned by the API. - properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time - type: string - name: - description: Name of the user. - nullable: true - type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true - type: string - verified: - description: Whether the user is verified. - type: boolean - type: object - UserAttributesStatus: - description: The user's status. - enum: - - active - - deactivated - - pending - type: string - x-enum-varnames: - - ACTIVE - - DEACTIVATED - - PENDING - UserCreateAttributes: - description: Attributes of the created user. - properties: - email: - description: The email of the user. - example: jane.doe@example.com - type: string - name: - description: The name of the user. - type: string - title: - description: The title of the user. - type: string - required: - - email - type: object - UserCreateData: - description: Object to create a user. - properties: - attributes: - $ref: '#/components/schemas/UserCreateAttributes' - relationships: - $ref: '#/components/schemas/UserRelationships' - type: - $ref: '#/components/schemas/UsersType' - required: - - attributes - - type - type: object - UserCreateRequest: - description: Create a user. - properties: - data: - $ref: '#/components/schemas/UserCreateData' - required: - - data - type: object - UserInvitationData: - description: Object to create a user invitation. - properties: - relationships: - $ref: '#/components/schemas/UserInvitationRelationships' - type: - $ref: '#/components/schemas/UserInvitationsType' - required: - - type - - relationships - type: object - UserInvitationDataAttributes: - description: Attributes of a user invitation. - properties: - created_at: - description: Creation time of the user invitation. - format: date-time - type: string - expires_at: - description: Time of invitation expiration. - format: date-time - type: string - invite_type: - description: Type of invitation. - type: string - uuid: - description: UUID of the user invitation. - type: string - type: object - UserInvitationRelationships: - description: Relationships data for user invitation. - properties: - user: - $ref: '#/components/schemas/RelationshipToUser' - required: - - user - type: object - UserInvitationResponse: - description: User invitation as returned by the API. - properties: - data: - $ref: '#/components/schemas/UserInvitationResponseData' - type: object - UserInvitationResponseData: - description: Object of a user invitation returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserInvitationDataAttributes' - id: - description: ID of the user invitation. - type: string - relationships: - $ref: '#/components/schemas/UserInvitationRelationships' - type: - $ref: '#/components/schemas/UserInvitationsType' - type: object - UserInvitationsRequest: - description: Object to invite users to join the organization. - properties: - data: - description: List of user invitations. - example: [] - items: - $ref: '#/components/schemas/UserInvitationData' - type: array - required: - - data - type: object - UserInvitationsResponse: - description: User invitations as returned by the API. - properties: - data: - description: Array of user invitations. - items: - $ref: '#/components/schemas/UserInvitationResponseData' - type: array - type: object - UserInvitationsType: - default: user_invitations - description: User invitations type. - enum: - - user_invitations - example: user_invitations - type: string - x-enum-varnames: - - USER_INVITATIONS - UserRelationshipData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserResourceType' - required: - - id - - type - type: object - UserRelationships: - description: Relationships of the user object. - properties: - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - UserResourceType: - default: user - description: User resource type. - enum: - - user - example: user - type: string - x-enum-varnames: - - USER - UserResponse: - description: Response containing information about a single user. - properties: - data: - $ref: '#/components/schemas/User' - included: - description: Array of objects related to the user. - items: - $ref: '#/components/schemas/UserResponseIncludedItem' - type: array - type: object - UserResponseIncludedItem: - description: An object related to a user. - oneOf: - - $ref: '#/components/schemas/Organization' - - $ref: '#/components/schemas/Permission' - - $ref: '#/components/schemas/Role' - UserResponseRelationships: - description: Relationships of the user object returned by the API. - properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - UserTarget: - description: Represents a user target for an escalation policy step, including - the user's ID and resource type. - properties: - id: - description: Specifies the unique identifier of the user resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserTargetType' - required: - - type - - id - type: object - UserTargetType: - default: users - description: Indicates that the resource is of type `users`. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - UserTeam: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - id: - description: The ID of a user's relationship with a team - example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 - type: string - relationships: - $ref: '#/components/schemas/UserTeamRelationships' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - id - - type - type: object - UserTeamAttributes: - description: Team membership attributes - properties: - provisioned_by: - description: 'The mechanism responsible for provisioning the team relationship. - - Possible values: null for added by a user, "service_account" if added - by a service account, and "saml_mapping" if provisioned via SAML mapping.' - nullable: true - readOnly: true - type: string - provisioned_by_id: - description: UUID of the User or Service Account who provisioned this team - membership, or null if provisioned via SAML mapping. - nullable: true - readOnly: true - type: string - role: - $ref: '#/components/schemas/UserTeamRole' - type: object - UserTeamCreate: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - relationships: - $ref: '#/components/schemas/UserTeamRelationships' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - type - type: object - UserTeamIncluded: - description: Included resources related to the team membership - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Team' - UserTeamPermission: - description: A user's permissions for a given team - properties: - attributes: - $ref: '#/components/schemas/UserTeamPermissionAttributes' - id: - description: The user team permission's identifier - example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 - type: string - type: - $ref: '#/components/schemas/UserTeamPermissionType' - required: - - id - - type - type: object - UserTeamPermissionAttributes: - description: User team permission attributes - properties: - permissions: - description: Object of team permission actions and boolean values that a - logged in user can perform on this team. - readOnly: true - type: object - type: object - UserTeamPermissionType: - default: user_team_permissions - description: User team permission type - enum: - - user_team_permissions - example: user_team_permissions - type: string - x-enum-varnames: - - USER_TEAM_PERMISSIONS - UserTeamRelationships: - description: Relationship between membership and a user - properties: - team: - $ref: '#/components/schemas/RelationshipToUserTeamTeam' - user: - $ref: '#/components/schemas/RelationshipToUserTeamUser' - type: object - UserTeamRequest: - description: Team membership request - properties: - data: - $ref: '#/components/schemas/UserTeamCreate' - required: - - data - type: object - UserTeamResponse: - description: Team membership response - properties: - data: - $ref: '#/components/schemas/UserTeam' - included: - description: Resources related to the team memberships - items: - $ref: '#/components/schemas/UserTeamIncluded' - type: array - type: object - UserTeamRole: - description: The user's role within the team - enum: - - admin - nullable: true - type: string - x-enum-varnames: - - ADMIN - UserTeamTeamType: - default: team - description: User team team type - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - UserTeamType: - default: team_memberships - description: Team membership type - enum: - - team_memberships - example: team_memberships - type: string - x-enum-varnames: - - TEAM_MEMBERSHIPS - UserTeamUpdate: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - type - type: object - UserTeamUpdateRequest: - description: Team membership request - properties: - data: - $ref: '#/components/schemas/UserTeamUpdate' - required: - - data - type: object - UserTeamUserType: - default: users - description: User team user type - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - UserTeamsResponse: - description: Team memberships response - properties: - data: - description: Team memberships response data - items: - $ref: '#/components/schemas/UserTeam' - type: array - included: - description: Resources related to the team memberships - items: - $ref: '#/components/schemas/UserTeamIncluded' - type: array - links: - $ref: '#/components/schemas/TeamsResponseLinks' - meta: - $ref: '#/components/schemas/TeamsResponseMeta' - type: object - UserUpdateAttributes: - description: Attributes of the edited user. - properties: - disabled: - description: If the user is enabled or disabled. - type: boolean - email: - description: The email of the user. - type: string - name: - description: The name of the user. - type: string - type: object - UserUpdateData: - description: Object to update a user. - properties: - attributes: - $ref: '#/components/schemas/UserUpdateAttributes' - id: - description: ID of the user. - example: 00000000-0000-feed-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - attributes - - type - - id - type: object - UserUpdateRequest: - description: Update a user. - properties: - data: - $ref: '#/components/schemas/UserUpdateData' - required: - - data - type: object - UsersRelationship: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/UserRelationshipData' - type: array - required: - - data - type: object - UsersResponse: - description: Response containing information about multiple users. - properties: - data: - description: Array of returned users. - items: - $ref: '#/components/schemas/User' - type: array - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/UserResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - readOnly: true - type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - V2Event: - description: An event object. - properties: - attributes: - $ref: '#/components/schemas/V2EventAttributes' - id: - description: The event's ID. - example: '' - type: string - type: - description: Entity type. - example: event - type: string - type: object - V2EventAggregationKey: - description: Aggregation key of the event. - example: aggregation-key - type: string - V2EventAttributes: - description: Event attributes. - properties: - attributes: - $ref: '#/components/schemas/V2EventAttributesAttributes' - message: - description: Free-form text associated with the event. - example: The event message - type: string - tags: - description: A list of tags associated with the event. - example: - - env:api_client_test - items: - description: A tag. - type: string - type: array - timestamp: - description: Timestamp when the event occurred. - example: '2017-01-15T01:30:15.010000Z' - type: string - type: object - V2EventAttributesAttributes: - description: JSON object for category-specific attributes. - oneOf: - - $ref: '#/components/schemas/ChangeEventAttributes' - - $ref: '#/components/schemas/AlertEventAttributes' - V2EventResponse: - description: Get an event response. - properties: - data: - $ref: '#/components/schemas/V2Event' - type: object - V2EventService: - description: Service that triggered the event. - example: service-name - type: string - V2EventTimestamp: - description: POSIX timestamp of the event. - example: 175019386627 - format: int64 - type: integer - V2EventTitle: - description: The title of the event. - example: The event title - type: string - ValidationError: - description: Represents a single validation error, including a human-readable - title and metadata. - properties: - meta: - $ref: '#/components/schemas/ValidationErrorMeta' - title: - description: A short, human-readable summary of the error. - example: Field 'region' is required - type: string - required: - - title - - meta - type: object - ValidationErrorMeta: - description: Describes additional metadata for validation errors, including - field names and error messages. - properties: - field: - description: The field name that caused the error. - example: region - type: string - id: - description: The ID of the component in which the error occurred. - example: datadog-agent-source - type: string - message: - description: The detailed error message. - example: Field 'region' is required - type: string - required: - - message - type: object - ValidationResponse: - description: Response containing validation errors. - example: - errors: - - meta: - field: region - id: datadog-agent-source - message: Field 'region' is required - title: Field 'region' is required - properties: - errors: - description: The `ValidationResponse` `errors`. - items: - $ref: '#/components/schemas/ValidationError' - type: array - type: object - Version: - description: Version of the notification rule. It is updated when the rule is - modified. - example: 1 - format: int64 - type: integer - VirusTotalAPIKey: - description: The definition of the `VirusTotalAPIKey` object. - properties: - api_key: - description: The `VirusTotalAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/VirusTotalAPIKeyType' - required: - - type - - api_key - type: object - VirusTotalAPIKeyType: - description: The definition of the `VirusTotalAPIKey` object. - enum: - - VirusTotalAPIKey - example: VirusTotalAPIKey - type: string - x-enum-varnames: - - VIRUSTOTALAPIKEY - VirusTotalAPIKeyUpdate: - description: The definition of the `VirusTotalAPIKey` object. - properties: - api_key: - description: The `VirusTotalAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/VirusTotalAPIKeyType' - required: - - type - type: object - VirusTotalCredentials: - description: The definition of the `VirusTotalCredentials` object. - oneOf: - - $ref: '#/components/schemas/VirusTotalAPIKey' - VirusTotalCredentialsUpdate: - description: The definition of the `VirusTotalCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/VirusTotalAPIKeyUpdate' - VirusTotalIntegration: - description: The definition of the `VirusTotalIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/VirusTotalCredentials' - type: - $ref: '#/components/schemas/VirusTotalIntegrationType' - required: - - type - - credentials - type: object - VirusTotalIntegrationType: - description: The definition of the `VirusTotalIntegrationType` object. - enum: - - VirusTotal - example: VirusTotal - type: string - x-enum-varnames: - - VIRUSTOTAL - VirusTotalIntegrationUpdate: - description: The definition of the `VirusTotalIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/VirusTotalCredentialsUpdate' - type: - $ref: '#/components/schemas/VirusTotalIntegrationType' - required: - - type - type: object - VulnerabilitiesType: - description: The JSON:API type. - enum: - - vulnerabilities - example: vulnerabilities - type: string - x-enum-varnames: - - VULNERABILITIES - Vulnerability: - description: A single vulnerability - properties: - attributes: - $ref: '#/components/schemas/VulnerabilityAttributes' - id: - description: The unique ID for this vulnerability. - example: 3ecdfea798f2ce8f6e964805a344945f - type: string - relationships: - $ref: '#/components/schemas/VulnerabilityRelationships' - type: - $ref: '#/components/schemas/VulnerabilitiesType' - required: - - id - - type - - attributes - - relationships - type: object - VulnerabilityAttributes: - description: The JSON:API attributes of the vulnerability. - properties: - advisory_id: - description: Vulnerability advisory ID. - example: TRIVY-CVE-2023-0615 - type: string - code_location: - $ref: '#/components/schemas/CodeLocation' - cve_list: - description: Vulnerability CVE list. - example: - - CVE-2023-0615 - items: - example: CVE-2023-0615 - type: string - type: array - cvss: - $ref: '#/components/schemas/VulnerabilityCvss' - dependency_locations: - $ref: '#/components/schemas/VulnerabilityDependencyLocations' - description: - description: Vulnerability description. - example: LDAP Injection is a security vulnerability that occurs when untrusted - user input is improperly handled and directly incorporated into LDAP queries - without appropriate sanitization or validation. This vulnerability enables - attackers to manipulate LDAP queries and potentially gain unauthorized - access, modify data, or extract sensitive information from the directory - server. By exploiting the LDAP injection vulnerability, attackers can - execute malicious commands, bypass authentication mechanisms, and perform - unauthorized actions within the directory service. - type: string - ecosystem: - $ref: '#/components/schemas/VulnerabilityEcosystem' - exposure_time: - description: Vulnerability exposure time in seconds. - example: 5618604 - format: int64 - type: integer - first_detection: - description: First detection of the vulnerability in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) - format - example: 2024-09-19 21:23:08+00:00 - type: string - fix_available: - description: Whether the vulnerability has a remediation or not. - example: false - type: boolean - language: - description: Vulnerability language. - example: ubuntu - type: string - last_detection: - description: Last detection of the vulnerability in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) - format - example: 2024-09-01 21:23:08+00:00 - type: string - library: - $ref: '#/components/schemas/Library' - origin: - description: Vulnerability origin. - example: - - agentless-scanner - items: - example: agentless-scanner - type: string - type: array - remediations: - description: List of remediations. - items: - $ref: '#/components/schemas/Remediation' - type: array - repo_digests: - description: Vulnerability `repo_digest` list (when the vulnerability is - related to `Image` asset). - items: - example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - type: string - type: array - risks: - $ref: '#/components/schemas/VulnerabilityRisks' - status: - $ref: '#/components/schemas/VulnerabilityStatus' - title: - description: Vulnerability title. - example: LDAP Injection - type: string - tool: - $ref: '#/components/schemas/VulnerabilityTool' - type: - $ref: '#/components/schemas/VulnerabilityType' - required: - - type - - cvss - - status - - tool - - title - - description - - cve_list - - risks - - language - - first_detection - - last_detection - - exposure_time - - remediations - - fix_available - - origin - type: object - VulnerabilityCvss: - description: Vulnerability severities. - properties: - base: - $ref: '#/components/schemas/CVSS' - datadog: - $ref: '#/components/schemas/CVSS' - required: - - base - - datadog - type: object - VulnerabilityDependencyLocations: - description: Static library vulnerability location. - properties: - block: - $ref: '#/components/schemas/DependencyLocation' - name: - $ref: '#/components/schemas/DependencyLocation' - version: - $ref: '#/components/schemas/DependencyLocation' - required: - - block - type: object - VulnerabilityEcosystem: - description: The related vulnerability asset ecosystem. - enum: - - PyPI - - Maven - - NuGet - - Npm - - RubyGems - - Go - - Packagist - - Ddeb - - Rpm - - Apk - - Windows - type: string - x-enum-varnames: - - PYPI - - MAVEN - - NUGET - - NPM - - RUBY_GEMS - - GO - - PACKAGIST - - D_DEB - - RPM - - APK - - WINDOWS - VulnerabilityRelationships: - description: Related entities object. - properties: - affects: - $ref: '#/components/schemas/VulnerabilityRelationshipsAffects' - required: - - affects - type: object - VulnerabilityRelationshipsAffects: - description: Relationship type. - properties: - data: - $ref: '#/components/schemas/VulnerabilityRelationshipsAffectsData' - required: - - data - type: object - VulnerabilityRelationshipsAffectsData: - description: Asset affected by this vulnerability. - properties: - id: - description: The unique ID for this related asset. - example: Repository|github.com/DataDog/datadog-agent.git - type: string - type: - $ref: '#/components/schemas/AssetEntityType' - required: - - id - - type - type: object - VulnerabilityRisks: - description: Vulnerability risks. - properties: - epss: - $ref: '#/components/schemas/EPSS' - exploit_available: - description: Vulnerability public exploit availability. - example: false - type: boolean - exploit_sources: - description: Vulnerability exploit sources. - example: - - NIST - items: - example: NIST - type: string - type: array - exploitation_probability: - description: Vulnerability exploitation probability. - example: false - type: boolean - poc_exploit_available: - description: Vulnerability POC exploit availability. - example: false - type: boolean - required: - - exploitation_probability - - poc_exploit_available - - exploit_available - - exploit_sources - type: object - VulnerabilitySeverity: - description: The vulnerability severity. - enum: - - Unknown - - None - - Low - - Medium - - High - - Critical - example: Medium - type: string - x-enum-varnames: - - UNKNOWN - - NONE - - LOW - - MEDIUM - - HIGH - - CRITICAL - VulnerabilityStatus: - description: The vulnerability status. - enum: - - Open - - Muted - - Remediated - - InProgress - - AutoClosed - example: Open - type: string - x-enum-varnames: - - OPEN - - MUTED - - REMEDIATED - - INPROGRESS - - AUTOCLOSED - VulnerabilityTool: - description: The vulnerability tool. - enum: - - IAST - - SCA - - Infra - example: SCA - type: string - x-enum-varnames: - - IAST - - SCA - - INFRA - VulnerabilityType: - description: The vulnerability type. - enum: - - AdminConsoleActive - - CodeInjection - - CommandInjection - - ComponentWithKnownVulnerability - - DangerousWorkflows - - DefaultAppDeployed - - DefaultHtmlEscapeInvalid - - DirectoryListingLeak - - EmailHtmlInjection - - EndOfLife - - HardcodedPassword - - HardcodedSecret - - HeaderInjection - - HstsHeaderMissing - - InsecureAuthProtocol - - InsecureCookie - - InsecureJspLayout - - LdapInjection - - MaliciousPackage - - MandatoryRemediation - - NoHttpOnlyCookie - - NoSameSiteCookie - - NoSqlMongoDbInjection - - PathTraversal - - ReflectionInjection - - RiskyLicense - - SessionRewriting - - SessionTimeout - - SqlInjection - - Ssrf - - StackTraceLeak - - TrustBoundaryViolation - - Unmaintained - - UntrustedDeserialization - - UnvalidatedRedirect - - VerbTampering - - WeakCipher - - WeakHash - - WeakRandomness - - XContentTypeHeaderMissing - - XPathInjection - - Xss - example: WeakCipher - type: string - x-enum-varnames: - - ADMIN_CONSOLE_ACTIVE - - CODE_INJECTION - - COMMAND_INJECTION - - COMPONENT_WITH_KNOWN_VULNERABILITY - - DANGEROUS_WORKFLOWS - - DEFAULT_APP_DEPLOYED - - DEFAULT_HTML_ESCAPE_INVALID - - DIRECTORY_LISTING_LEAK - - EMAIL_HTML_INJECTION - - END_OF_LIFE - - HARDCODED_PASSWORD - - HARDCODED_SECRET - - HEADER_INJECTION - - HSTS_HEADER_MISSING - - INSECURE_AUTH_PROTOCOL - - INSECURE_COOKIE - - INSECURE_JSP_LAYOUT - - LDAP_INJECTION - - MALICIOUS_PACKAGE - - MANDATORY_REMEDIATION - - NO_HTTP_ONLY_COOKIE - - NO_SAME_SITE_COOKIE - - NO_SQL_MONGO_DB_INJECTION - - PATH_TRAVERSAL - - REFLECTION_INJECTION - - RISKY_LICENSE - - SESSION_REWRITING - - SESSION_TIMEOUT - - SQL_INJECTION - - SSRF - - STACK_TRACE_LEAK - - TRUST_BOUNDARY_VIOLATION - - UNMAINTAINED - - UNTRUSTED_DESERIALIZATION - - UNVALIDATED_REDIRECT - - VERB_TAMPERING - - WEAK_CIPHER - - WEAK_HASH - - WEAK_RANDOMNESS - - X_CONTENT_TYPE_HEADER_MISSING - - X_PATH_INJECTION - - XSS - Weekday: - description: A day of the week. - enum: - - monday - - tuesday - - wednesday - - thursday - - friday - - saturday - - sunday - type: string - x-enum-varnames: - - MONDAY - - TUESDAY - - WEDNESDAY - - THURSDAY - - FRIDAY - - SATURDAY - - SUNDAY - WidgetLiveSpan: - description: The available timeframes depend on the widget you are using. - enum: - - 1m - - 5m - - 10m - - 15m - - 30m - - 1h - - 4h - - 1d - - 2d - - 1w - - 1mo - - 3mo - - 6mo - - 1y - - alert - example: 5m - type: string - x-enum-varnames: - - PAST_ONE_MINUTE - - PAST_FIVE_MINUTES - - PAST_TEN_MINUTES - - PAST_FIFTEEN_MINUTES - - PAST_THIRTY_MINUTES - - PAST_ONE_HOUR - - PAST_FOUR_HOURS - - PAST_ONE_DAY - - PAST_TWO_DAYS - - PAST_ONE_WEEK - - PAST_ONE_MONTH - - PAST_THREE_MONTHS - - PAST_SIX_MONTHS - - PAST_ONE_YEAR - - ALERT - WorkflowData: - description: Data related to the workflow. - properties: - attributes: - $ref: '#/components/schemas/WorkflowDataAttributes' - id: - description: The workflow identifier - readOnly: true - type: string - relationships: - $ref: '#/components/schemas/WorkflowDataRelationships' - type: - $ref: '#/components/schemas/WorkflowDataType' - required: - - type - - attributes - type: object - WorkflowDataAttributes: - description: The definition of `WorkflowDataAttributes` object. - properties: - createdAt: - description: When the workflow was created. - format: date-time - readOnly: true - type: string - description: - description: Description of the workflow. - type: string - name: - description: Name of the workflow. - example: '' - type: string - published: - description: Set the workflow to published or unpublished. Workflows in - an unpublished state will only be executable via manual runs. Automatic - triggers such as Schedule will not execute the workflow until it is published. - type: boolean - spec: - $ref: '#/components/schemas/Spec' - tags: - description: Tags of the workflow. - items: - type: string - type: array - updatedAt: - description: When the workflow was last updated. - format: date-time - readOnly: true - type: string - webhookSecret: - description: If a Webhook trigger is defined on this workflow, a webhookSecret - is required and should be provided here. - type: string - writeOnly: true - required: - - name - - spec - type: object - WorkflowDataRelationships: - description: The definition of `WorkflowDataRelationships` object. - properties: - creator: - $ref: '#/components/schemas/WorkflowUserRelationship' - owner: - $ref: '#/components/schemas/WorkflowUserRelationship' - readOnly: true - type: object - WorkflowDataType: - description: The definition of `WorkflowDataType` object. - enum: - - workflows - example: workflows - type: string - x-enum-varnames: - - WORKFLOWS - WorkflowDataUpdate: - description: Data related to the workflow being updated. - properties: - attributes: - $ref: '#/components/schemas/WorkflowDataUpdateAttributes' - id: - description: The workflow identifier - type: string - relationships: - $ref: '#/components/schemas/WorkflowDataRelationships' - type: - $ref: '#/components/schemas/WorkflowDataType' - required: - - type - - attributes - type: object - WorkflowDataUpdateAttributes: - description: The definition of `WorkflowDataUpdateAttributes` object. - properties: - createdAt: - description: When the workflow was created. - format: date-time - readOnly: true - type: string - description: - description: Description of the workflow. - type: string - name: - description: Name of the workflow. - type: string - published: - description: Set the workflow to published or unpublished. Workflows in - an unpublished state will only be executable via manual runs. Automatic - triggers such as Schedule will not execute the workflow until it is published. - type: boolean - spec: - $ref: '#/components/schemas/Spec' - tags: - description: Tags of the workflow. - items: - type: string - type: array - updatedAt: - description: When the workflow was last updated. - format: date-time - readOnly: true - type: string - webhookSecret: - description: If a Webhook trigger is defined on this workflow, a webhookSecret - is required and should be provided here. - type: string - writeOnly: true - type: object - WorkflowInstanceCreateMeta: - description: Additional information for creating a workflow instance. - properties: - payload: - additionalProperties: {} - description: The input parameters to the workflow. - type: object - type: object - WorkflowInstanceCreateRequest: - description: Request used to create a workflow instance. - properties: - meta: - $ref: '#/components/schemas/WorkflowInstanceCreateMeta' - type: object - WorkflowInstanceCreateResponse: - additionalProperties: {} - description: Response returned upon successful workflow instance creation. - properties: - data: - $ref: '#/components/schemas/WorkflowInstanceCreateResponseData' - type: object - WorkflowInstanceCreateResponseData: - additionalProperties: {} - description: Data about the created workflow instance. - properties: - id: - description: The ID of the workflow execution. It can be used to fetch the - execution status. - type: string - type: object - WorkflowInstanceListItem: - additionalProperties: {} - description: An item in the workflow instances list. - properties: - id: - description: The ID of the workflow instance - type: string - type: object - WorkflowListInstancesResponse: - additionalProperties: {} - description: Response returned when listing workflow instances. - properties: - data: - description: A list of workflow instances. - items: - $ref: '#/components/schemas/WorkflowInstanceListItem' - type: array - meta: - $ref: '#/components/schemas/WorkflowListInstancesResponseMeta' - type: object - WorkflowListInstancesResponseMeta: - additionalProperties: {} - description: Metadata about the instances list - properties: - page: - $ref: '#/components/schemas/WorkflowListInstancesResponseMetaPage' - type: object - WorkflowListInstancesResponseMetaPage: - additionalProperties: {} - description: Page information for the list instances response. - properties: - totalCount: - description: The total count of items. - format: int64 - type: integer - type: object - WorkflowTriggerWrapper: - description: Schema for a Workflow-based trigger. - properties: - startStepNames: - $ref: '#/components/schemas/StartStepNames' - workflowTrigger: - description: Trigger a workflow from the Datadog UI. Only required if no - other trigger exists. - type: object - required: - - workflowTrigger - type: object - WorkflowUserRelationship: - description: The definition of `WorkflowUserRelationship` object. - properties: - data: - $ref: '#/components/schemas/WorkflowUserRelationshipData' - type: object - WorkflowUserRelationshipData: - description: The definition of `WorkflowUserRelationshipData` object. - properties: - id: - description: The user identifier - example: '' - type: string - type: - $ref: '#/components/schemas/WorkflowUserRelationshipType' - required: - - type - - id - type: object - WorkflowUserRelationshipType: - description: The definition of `WorkflowUserRelationshipType` object. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - WorklflowCancelInstanceResponse: - description: Information about the canceled instance. - properties: - data: - $ref: '#/components/schemas/WorklflowCancelInstanceResponseData' - type: object - WorklflowCancelInstanceResponseData: - description: Data about the canceled instance. - properties: - id: - description: The id of the canceled instance - type: string - type: object - WorklflowGetInstanceResponse: - additionalProperties: {} - description: The state of the given workflow instance. - properties: - data: - $ref: '#/components/schemas/WorklflowGetInstanceResponseData' - type: object - WorklflowGetInstanceResponseData: - additionalProperties: {} - description: The data of the instance response. - properties: - attributes: - $ref: '#/components/schemas/WorklflowGetInstanceResponseDataAttributes' - type: object - WorklflowGetInstanceResponseDataAttributes: - additionalProperties: {} - description: The attributes of the instance response data. - properties: - id: - description: The id of the instance. - type: string - type: object - XRayServicesIncludeAll: - description: Include all services. - properties: - include_all: - description: Include all services. - example: false - type: boolean - required: - - include_all - type: object - XRayServicesIncludeOnly: - description: Include only these services. Defaults to `[]`. - nullable: true - properties: - include_only: - description: Include only these services. - example: - - AWS/AppSync - items: - example: AWS/AppSync - type: string - type: array - required: - - include_only - type: object - XRayServicesList: - description: AWS X-Ray services to collect traces from. Defaults to `include_only`. - oneOf: - - $ref: '#/components/schemas/XRayServicesIncludeAll' - - $ref: '#/components/schemas/XRayServicesIncludeOnly' - ZoomConfigurationReference: - description: A reference to a Zoom configuration resource. - nullable: true - properties: - data: - $ref: '#/components/schemas/ZoomConfigurationReferenceData' - required: - - data - type: object - ZoomConfigurationReferenceData: - description: The Zoom configuration relationship data object. - nullable: true - properties: - id: - description: The unique identifier of the Zoom configuration. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - description: The type of the Zoom configuration. - example: zoom_configurations - type: string - required: - - id - - type - type: object - securitySchemes: - AuthZ: - description: This API uses OAuth 2 with the implicit grant flow. - flows: - authorizationCode: - authorizationUrl: /oauth2/v1/authorize - scopes: - apm_api_catalog_read: View API catalog and API definitions. - apm_api_catalog_write: Add, modify, and delete API catalog definitions. - apm_read: Read and query APM and Trace Analytics. - apm_service_catalog_read: View service catalog and service definitions. - apm_service_catalog_write: Add, modify, and delete service catalog definitions - when those definitions are maintained by Datadog. - billing_read: View your organization's billing information. - cases_read: View Cases. - cases_write: Create and update cases. - ci_visibility_pipelines_write: Create CI Visibility pipeline spans using - the API. - ci_visibility_read: View CI Visibility. - cloud_cost_management_read: View Cloud Cost pages and the cloud cost data - source in dashboards and notebooks. For more details, see the Cloud - Cost Management docs. - cloud_cost_management_write: Configure cloud cost accounts and global - customizations. For more details, see the Cloud Cost Management docs. - code_analysis_read: View Code Analysis. - continuous_profiler_pgo_read: Read and query Continuous Profiler data - for Profile-Guided Optimization (PGO). - coterm_read: Read terminal recordings. - coterm_write: Write terminal recordings. - create_webhooks: Create webhooks integrations. - dashboards_embed_share: Create, modify, and delete shared dashboards with - share type 'embed'. - dashboards_invite_share: Create, modify, and delete shared dashboards - with share type 'invite'. - dashboards_public_share: Generate public and authenticated links to share - dashboards or embeddable graphs externally. - dashboards_read: View dashboards. - dashboards_write: Create and change dashboards. - data_scanner_read: View Data Scanner configurations. - data_scanner_write: Edit Data Scanner configurations. - embeddable_graphs_share: Generate public links to share embeddable graphs - externally. - error_tracking_read: Read Error Tracking data. - error_tracking_write: Edit Error Tracking issues. - events_read: Read Events data. - hosts_read: List hosts and their attributes. - incident_notification_settings_read: View Incident Notification Rule Settings. - incident_notification_settings_write: Configure Incidents Notification - Rule settings. - incident_read: View incidents in Datadog. - incident_settings_read: View Incident Settings. - incident_settings_write: Configure Incident Settings. - incident_write: Create, view, and manage incidents in Datadog. - metrics_read: View custom metrics. - monitors_downtime: Set downtimes to suppress alerts from any monitor in - an organization. Mute and unmute monitors. The ability to write monitors - is not required to set downtimes. - monitors_read: View monitors. - monitors_write: Edit, delete, and resolve individual monitors. - org_connections_read: Read cross organization connections. - org_connections_write: Create, edit, and delete cross organization connections. - org_management: Edit org configurations, including authentication and - certain security preferences such as configuring SAML, renaming an org, - configuring allowed login methods, creating child orgs, subscribing - & unsubscribing from apps in the marketplace, and enabling & disabling - Remote Configuration for the entire organization. - security_comments_read: Read comments of vulnerabilities. - security_monitoring_filters_read: Read Security Filters. - security_monitoring_filters_write: Create, edit, and delete Security Filters. - security_monitoring_findings_read: View a list of findings that include - both misconfigurations and identity risks. - security_monitoring_rules_read: Read Detection Rules. - security_monitoring_rules_write: Create and edit Detection Rules. - security_monitoring_signals_read: View Security Signals. - security_monitoring_suppressions_read: Read Rule Suppressions. - security_monitoring_suppressions_write: Write Rule Suppressions. - security_pipelines_read: View Security Pipelines. - security_pipelines_write: Create, edit, and delete CSM Security Pipelines. - slos_corrections: Apply, edit, and delete SLO status corrections. A user - with this permission can make status corrections, even if they do not - have permission to edit those SLOs. - slos_read: View SLOs and status corrections. - slos_write: Create, edit, and delete SLOs. - synthetics_global_variable_read: View, search, and use Synthetics global - variables. - synthetics_global_variable_write: Create, edit, and delete global variables - for Synthetics. - synthetics_private_location_read: View, search, and use Synthetics private - locations. - synthetics_private_location_write: Create and delete private locations - in addition to having access to the associated installation guidelines. - synthetics_read: List and view configured Synthetic tests and test results. - synthetics_write: Create, edit, and delete Synthetic tests. - teams_manage: Manage Teams. Create, delete, rename, and edit metadata - of all Teams. To control Team membership across all Teams, use the User - Access Manage permission. - teams_read: Read Teams data. A User with this permission can view Team - names, metadata, and which Users are on each Team. - test_optimization_read: View Test Optimization. - timeseries_query: Query Timeseries data. - usage_read: View your organization's usage and usage attribution. - user_access_invite: Invite other users to your organization. - user_access_manage: Disable users, manage user roles, manage SAML-to-role - mappings, and configure logs restriction queries. - user_access_read: View users and their roles and settings. - workflows_read: View workflows. - workflows_run: Run workflows. - workflows_write: Create, edit, and delete workflows. - tokenUrl: /oauth2/v1/token - type: oauth2 - apiKeyAuth: - description: Your Datadog API Key. - in: header - name: DD-API-KEY - type: apiKey - x-env-name: DD_API_KEY - appKeyAuth: - description: Your Datadog APP Key. - in: header - name: DD-APPLICATION-KEY - type: apiKey - x-env-name: DD_APP_KEY - bearerAuth: - scheme: bearer - type: http - x-env-name: DD_BEARER_TOKEN -info: - contact: - email: support@datadoghq.com - name: Datadog Support - url: https://www.datadoghq.com/support/ - description: Collection of all Datadog Public endpoints. - title: Datadog API V2 Collection - version: '1.0' -openapi: 3.0.0 -paths: - /api/v2/actions-datastores: - get: - description: Lists all datastores for the organization. - operationId: ListDatastores - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatastoreArray' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List datastores - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_read - post: - description: Creates a new datastore. - operationId: CreateDatastore - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppsDatastoreRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppsDatastoreResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_manage - /api/v2/actions-datastores/{datastore_id}: - delete: - description: Deletes a datastore by its unique identifier. - operationId: DeleteDatastore - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - responses: - '200': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_manage - get: - description: Retrieves a specific datastore by its ID. - operationId: GetDatastore - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Datastore' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_read - patch: - description: Updates an existing datastore's attributes. - operationId: UpdateDatastore - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppsDatastoreRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Datastore' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_manage - /api/v2/actions-datastores/{datastore_id}/items: - delete: - description: Deletes an item from a datastore by its key. - operationId: DeleteDatastoreItem - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsDatastoreItemRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsDatastoreItemResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete datastore item - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_write - get: - description: Lists items from a datastore. You can filter the results by specifying - either an item key or a filter query parameter, but not both at the same time. - Supports server-side pagination for large datasets. - operationId: ListDatastoreItems - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - - description: Optional query filter to search items using the [logs search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - in: query - name: filter - schema: - type: string - - description: Optional primary key value to retrieve a specific item. Cannot - be used together with the filter parameter. - in: query - name: item_key - schema: - maxLength: 256 - type: string - - description: Optional field to limit the number of items to return per page - for pagination. Up to 100 items can be returned per page. - in: query - name: page[limit] - schema: - format: int64 - maximum: 100 - minimum: 1 - type: integer - - description: Optional field to offset the number of items to skip from the - beginning of the result set for pagination. - in: query - name: page[offset] - schema: - format: int64 - type: integer - - description: Optional field to sort results by. Prefix with '-' for descending - order (e.g., '-created_at'). - in: query - name: sort - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ItemApiPayloadArray' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List datastore items - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_read - patch: - description: Partially updates an item in a datastore by its key. - operationId: UpdateDatastoreItem - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ItemApiPayload' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update datastore item - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_write - /api/v2/actions-datastores/{datastore_id}/items/bulk: - post: - description: Creates or replaces multiple items in a datastore by their keys - in a single operation. - operationId: BulkWriteDatastoreItems - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PutAppsDatastoreItemResponseArray' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Bulk write datastore items - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_write - /api/v2/actions/app_key_registrations: - get: - description: List App Key Registrations - operationId: ListAppKeyRegistrations - parameters: - - description: The number of App Key Registrations to return per page. - in: query - name: page[size] - required: false - schema: - format: int64 - type: integer - - description: The page number to return. - in: query - name: page[number] - required: false - schema: - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAppKeyRegistrationsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: List App Key Registrations - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - org_app_keys_read - /api/v2/actions/app_key_registrations/{app_key_id}: - delete: - description: Unregister an App Key - operationId: UnregisterAppKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyId' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Unregister an App Key - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - user_access_manage - - user_app_keys - - service_account_write - get: - description: Get an existing App Key Registration - operationId: GetAppKeyRegistration - parameters: - - $ref: '#/components/parameters/ApplicationKeyId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetAppKeyRegistrationResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Get an existing App Key Registration - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - org_app_keys_read - put: - description: Register a new App Key - operationId: RegisterAppKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyId' - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RegisterAppKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Register a new App Key - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - user_access_manage - - user_app_keys - - service_account_write - /api/v2/actions/connections: - post: - description: Create a new Action Connection. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - operationId: CreateActionConnection - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateActionConnectionRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateActionConnectionResponse' - description: Successfully created Action Connection - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Create a new Action Connection - tags: - - Action Connection - /api/v2/actions/connections/{connection_id}: - delete: - description: Delete an existing Action Connection. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteActionConnection - parameters: - - $ref: '#/components/parameters/ConnectionId' - responses: - '204': - description: The resource was deleted successfully. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Delete an existing Action Connection - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - connection_write - get: - description: Get an existing Action Connection. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - operationId: GetActionConnection - parameters: - - $ref: '#/components/parameters/ConnectionId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetActionConnectionResponse' - description: Successfully get Action Connection - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Get an existing Action Connection - tags: - - Action Connection - patch: - description: Update an existing Action Connection. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - operationId: UpdateActionConnection - parameters: - - $ref: '#/components/parameters/ConnectionId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateActionConnectionRequest' - description: Update an existing Action Connection request body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateActionConnectionResponse' - description: Successfully updated Action Connection - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Update an existing Action Connection - tags: - - Action Connection - /api/v2/agentless_scanning/accounts/aws: - get: - description: Fetches the scan options configured for AWS accounts. - operationId: ListAwsScanOptions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List AWS Scan Options - tags: - - Agentless Scanning - post: - description: Activate Agentless scan options for an AWS account. - operationId: CreateAwsScanOptions - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsCreateRequest' - description: The definition of the new scan options. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsResponse' - description: Agentless scan options enabled successfully. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Post AWS Scan Options - tags: - - Agentless Scanning - x-codegen-request-body-name: body - /api/v2/agentless_scanning/accounts/aws/{account_id}: - delete: - description: Delete Agentless scan options for an AWS account. - operationId: DeleteAwsScanOptions - parameters: - - $ref: '#/components/parameters/AwsAccountId' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete AWS Scan Options - tags: - - Agentless Scanning - get: - description: Fetches the Agentless scan options for an activated account. - operationId: GetAwsScanOptions - parameters: - - $ref: '#/components/parameters/AwsAccountId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS scan options - tags: - - Agentless Scanning - patch: - description: Update the Agentless scan options for an activated account. - operationId: UpdateAwsScanOptions - parameters: - - $ref: '#/components/parameters/AwsAccountId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsUpdateRequest' - description: New definition of the scan options. - required: true - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Patch AWS Scan Options - tags: - - Agentless Scanning - x-codegen-request-body-name: body - /api/v2/agentless_scanning/ondemand/aws: - get: - description: Fetches the most recent 1000 AWS on demand tasks. - operationId: ListAwsOnDemandTasks - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS On Demand tasks - tags: - - Agentless Scanning - x-permission: - operator: OR - permissions: - - security_monitoring_findings_read - post: - description: Trigger the scan of an AWS resource with a high priority. Agentless - scanning must be activated for the AWS account containing the resource to - scan. - operationId: CreateAwsOnDemandTask - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandCreateRequest' - description: The definition of the on demand task. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandResponse' - description: AWS on demand task created successfully. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Post an AWS on demand task - tags: - - Agentless Scanning - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_findings_write - /api/v2/agentless_scanning/ondemand/aws/{task_id}: - get: - description: Fetch the data of a specific on demand task. - operationId: GetAwsOnDemandTask - parameters: - - $ref: '#/components/parameters/OnDemandTaskId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandResponse' - description: OK. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS On Demand task by id - tags: - - Agentless Scanning - x-permission: - operator: OR - permissions: - - security_monitoring_findings_read - /api/v2/api_keys: - get: - description: List all API keys available for your account. - operationId: ListAPIKeys - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/APIKeysSortParameter' - - $ref: '#/components/parameters/APIKeyFilterParameter' - - $ref: '#/components/parameters/APIKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/APIKeyFilterCreatedAtEndParameter' - - $ref: '#/components/parameters/APIKeyFilterModifiedAtStartParameter' - - $ref: '#/components/parameters/APIKeyFilterModifiedAtEndParameter' - - $ref: '#/components/parameters/APIKeyIncludeParameter' - - $ref: '#/components/parameters/APIKeyReadConfigReadEnabledParameter' - - $ref: '#/components/parameters/APIKeyCategoryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all API keys - tags: - - Key Management - x-permission: - operator: OR - permissions: - - api_keys_read - post: - description: Create an API key. - operationId: CreateAPIKey - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an API key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - api_keys_write - /api/v2/api_keys/{api_key_id}: - delete: - description: Delete an API key. - operationId: DeleteAPIKey - parameters: - - $ref: '#/components/parameters/APIKeyId' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an API key - tags: - - Key Management - x-permission: - operator: OR - permissions: - - api_keys_delete - get: - description: Get an API key. - operationId: GetAPIKey - parameters: - - $ref: '#/components/parameters/APIKeyId' - - $ref: '#/components/parameters/APIKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get API key - tags: - - Key Management - x-permission: - operator: OR - permissions: - - api_keys_read - patch: - description: Update an API key. - operationId: UpdateAPIKey - parameters: - - $ref: '#/components/parameters/APIKeyId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an API key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - api_keys_write - /api/v2/apicatalog/api: - get: - deprecated: true - description: List APIs and their IDs. - operationId: ListAPIs - parameters: - - description: Filter APIs by name - in: query - name: query - required: false - schema: - example: payments - type: string - - description: Number of items per page. - in: query - name: page[limit] - required: false - schema: - default: 20 - format: int64 - minimum: 1 - type: integer - - description: Offset for pagination. - in: query - name: page[offset] - required: false - schema: - default: 0 - format: int64 - minimum: 0 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAPIsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_read - summary: List APIs - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_read - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apicatalog/api/{id}: - delete: - deprecated: true - description: Delete a specific API by ID. - operationId: DeleteOpenAPI - parameters: - - description: ID of the API to delete - in: path - name: id - required: true - schema: - $ref: '#/components/schemas/ApiID' - responses: - '204': - description: API deleted successfully - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: API not found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_write - summary: Delete an API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apicatalog/api/{id}/openapi: - get: - deprecated: true - description: Retrieve information about a specific API in [OpenAPI](https://spec.openapis.org/oas/latest.html) - format file. - operationId: GetOpenAPI - parameters: - - description: ID of the API to retrieve - in: path - name: id - required: true - schema: - $ref: '#/components/schemas/ApiID' - responses: - '200': - content: - multipart/form-data: - schema: - format: binary - type: string - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: API not found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_read - summary: Get an API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_read - x-unstable: '**Note**: This endpoint is deprecated.' - put: - deprecated: true - description: 'Update information about a specific API. The given content will - replace all API content of the given ID. - - The ID is returned by the create API, or can be found in the URL in the API - catalog UI. - - ' - operationId: UpdateOpenAPI - parameters: - - description: ID of the API to modify - in: path - name: id - required: true - schema: - $ref: '#/components/schemas/ApiID' - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/OpenAPIFile' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateOpenAPIResponse' - description: API updated successfully - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: API not found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_write - summary: Update an API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apicatalog/openapi: - post: - deprecated: true - description: 'Create a new API from the [OpenAPI](https://spec.openapis.org/oas/latest.html) - specification given. - - See the [API Catalog documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) - for additional - - information about the possible metadata. - - It returns the created API ID. - - ' - operationId: CreateOpenAPI - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/OpenAPIFile' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateOpenAPIResponse' - description: API created successfully - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_write - summary: Create a new API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apm/config/metrics: - get: - description: Get the list of configured span-based metrics with their definitions. - operationId: ListSpansMetrics - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all span-based metrics - tags: - - Spans Metrics - x-permission: - operator: OR - permissions: - - apm_read - post: - description: 'Create a metric based on your ingested spans in your organization. - - Returns the span-based metric object from the request body when the request - is successful.' - operationId: CreateSpansMetric - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricCreateRequest' - description: The definition of the new span-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a span-based metric - tags: - - Spans Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_generate_metrics - /api/v2/apm/config/metrics/{metric_id}: - delete: - description: Delete a specific span-based metric from your organization. - operationId: DeleteSpansMetric - parameters: - - $ref: '#/components/parameters/SpansMetricIDParameter' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a span-based metric - tags: - - Spans Metrics - x-permission: - operator: OR - permissions: - - apm_generate_metrics - get: - description: Get a specific span-based metric from your organization. - operationId: GetSpansMetric - parameters: - - $ref: '#/components/parameters/SpansMetricIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a span-based metric - tags: - - Spans Metrics - x-permission: - operator: OR - permissions: - - apm_read - patch: - description: 'Update a specific span-based metric from your organization. - - Returns the span-based metric object from the request body when the request - is successful.' - operationId: UpdateSpansMetric - parameters: - - $ref: '#/components/parameters/SpansMetricIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricUpdateRequest' - description: New definition of the span-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a span-based metric - tags: - - Spans Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_generate_metrics - /api/v2/apm/config/retention-filters: - get: - description: Get the list of APM retention filters. - operationId: ListApmRetentionFilters - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all APM retention filters - tags: - - APM Retention Filters - x-permission: - operator: OR - permissions: - - apm_retention_filter_read - - apm_pipelines_read - post: - description: 'Create a retention filter to index spans in your organization. - - Returns the retention filter definition when the request is successful. - - - Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor - cannot be created.' - operationId: CreateApmRetentionFilter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterCreateRequest' - description: The definition of the new retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterCreateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a retention filter - tags: - - APM Retention Filters - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - /api/v2/apm/config/retention-filters-execution-order: - put: - description: Re-order the execution order of retention filters. - operationId: ReorderApmRetentionFilters - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ReorderRetentionFiltersRequest' - description: The list of retention filters in the new order. - required: true - responses: - '200': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Re-order retention filters - tags: - - APM Retention Filters - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - /api/v2/apm/config/retention-filters/{filter_id}: - delete: - description: 'Delete a specific retention filter from your organization. - - - Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor - cannot be deleted.' - operationId: DeleteApmRetentionFilter - parameters: - - $ref: '#/components/parameters/RetentionFilterIdParam' - responses: - '200': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a retention filter - tags: - - APM Retention Filters - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - get: - description: Get an APM retention filter. - operationId: GetApmRetentionFilter - parameters: - - $ref: '#/components/parameters/RetentionFilterIdParam' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a given APM retention filter - tags: - - APM Retention Filters - x-permission: - operator: OR - permissions: - - apm_retention_filter_read - - apm_pipelines_read - put: - description: 'Update a retention filter from your organization. - - - Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) - cannot be renamed or removed.' - operationId: UpdateApmRetentionFilter - parameters: - - $ref: '#/components/parameters/RetentionFilterIdParam' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterUpdateRequest' - description: The updated definition of the retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a retention filter - tags: - - APM Retention Filters - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - /api/v2/app-builder/apps: - delete: - description: Delete multiple apps in a single request from a list of app IDs. - This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteApps - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Multiple Apps - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - get: - description: List all apps, with optional filters and sorting. This endpoint - is paginated. Only basic app information such as the app ID, name, and description - is returned by this endpoint. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: ListApps - parameters: - - description: The number of apps to return per page. - in: query - name: limit - required: false - schema: - format: int64 - type: integer - - description: The page number to return. - in: query - name: page - required: false - schema: - format: int64 - type: integer - - description: Filter apps by the app creator. Usually the user's email. - in: query - name: filter[user_name] - required: false - schema: - type: string - - description: Filter apps by the app creator's UUID. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: query - name: filter[user_uuid] - required: false - schema: - format: uuid - type: string - - description: Filter by app name. - in: query - name: filter[name] - required: false - schema: - type: string - - description: Filter apps by the app name or the app creator. - in: query - name: filter[query] - required: false - schema: - type: string - - description: Filter apps by whether they are published. - in: query - name: filter[deployed] - required: false - schema: - type: boolean - - description: Filter apps by tags. - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Filter apps by whether you have added them to your favorites. - in: query - name: filter[favorite] - required: false - schema: - type: boolean - - description: Filter apps by whether they are enabled for self-service. - in: query - name: filter[self_service] - required: false - schema: - type: boolean - - description: The fields and direction to sort apps by. - explode: false - in: query - name: sort - required: false - schema: - items: - $ref: '#/components/schemas/AppsSortField' - type: array - style: form - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAppsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Apps - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_run - post: - description: Create a new app, returning the app ID. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateApp - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create App - tags: - - App Builder - x-permission: - operator: AND - permissions: - - apps_write - - connections_resolve - - workflows_run - /api/v2/app-builder/apps/{app_id}: - delete: - description: Delete a single app. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteApp - parameters: - - description: The ID of the app to delete. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '410': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Gone - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete App - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - get: - description: Get the full definition of an app. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetApp - parameters: - - description: The ID of the app to retrieve. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - - description: The version number of the app to retrieve. If not specified, - the latest version is returned. Version numbers start at 1 and increment - with each update. The special values `latest` and `deployed` can be used - to retrieve the latest version or the published version, respectively. - in: query - name: version - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '410': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Gone - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get App - tags: - - App Builder - x-permission: - operator: AND - permissions: - - apps_run - - connections_read - patch: - description: Update an existing app. This creates a new version of the app. - This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UpdateApp - parameters: - - description: The ID of the app to update. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update App - tags: - - App Builder - x-permission: - operator: AND - permissions: - - apps_write - - connections_resolve - - workflows_run - /api/v2/app-builder/apps/{app_id}/deployment: - delete: - description: Unpublish an app, removing the live version of the app. Unpublishing - creates a new instance of a `deployment` object on the app, with a nil `app_version_id` - (`00000000-0000-0000-0000-000000000000`). The app can still be updated and - published again in the future. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UnpublishApp - parameters: - - description: The ID of the app to unpublish. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UnpublishAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Unpublish App - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - post: - description: Publish an app for use by other users. To ensure the app is accessible - to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) - on the app if a policy does not yet exist. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: PublishApp - parameters: - - description: The ID of the app to publish. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/PublishAppResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Publish App - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - /api/v2/application_keys: - get: - description: List all application keys available for your org - operationId: ListApplicationKeys - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' - - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all application keys - tags: - - Key Management - x-permission: - operator: OR - permissions: - - org_app_keys_read - /api/v2/application_keys/{app_key_id}: - delete: - description: Delete an application key - operationId: DeleteApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_app_keys_write - get: - description: Get an application key for your org. - operationId: GetApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an application key - tags: - - Key Management - x-permission: - operator: OR - permissions: - - org_app_keys_read - patch: - description: Edit an application key - operationId: UpdateApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_app_keys_write - /api/v2/audit/events: - get: - description: 'List endpoint returns events that match a Audit Logs search query. - - [Results are paginated][1]. - - - Use this endpoint to see your latest Audit Logs events. - - - [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination' - operationId: ListAuditLogs - parameters: - - description: Search query following Audit Logs syntax. - example: '@type:session @application_id:xxxx' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/AuditLogsSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuditLogsEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of Audit Logs events - tags: - - Audit - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - audit_logs_read - /api/v2/audit/events/search: - post: - description: 'List endpoint returns Audit Logs events that match an Audit search - query. - - [Results are paginated][1]. - - - Use this endpoint to build complex Audit Logs events filtering and search. - - - [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination' - operationId: SearchAuditLogs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AuditLogsSearchEventsRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuditLogsEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search Audit Logs events - tags: - - Audit - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - audit_logs_read - /api/v2/authn_mappings: - get: - description: List all AuthN Mappings in the org. - operationId: ListAuthNMappings - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: Sort AuthN Mappings depending on the given field. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/AuthNMappingsSort' - - description: Filter all mappings by the given string. - in: query - name: filter - required: false - schema: - type: string - - description: Filter by mapping resource type. Defaults to "role" if not specified. - in: query - name: resource_type - schema: - $ref: '#/components/schemas/AuthNMappingResourceType' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all AuthN Mappings - tags: - - AuthN Mappings - x-permission: - operator: OR - permissions: - - user_access_read - post: - description: Create an AuthN Mapping. - operationId: CreateAuthNMapping - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an AuthN Mapping - tags: - - AuthN Mappings - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/authn_mappings/{authn_mapping_id}: - delete: - description: Delete an AuthN Mapping specified by AuthN Mapping UUID. - operationId: DeleteAuthNMapping - parameters: - - $ref: '#/components/parameters/AuthNMappingID' - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an AuthN Mapping - tags: - - AuthN Mappings - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Get an AuthN Mapping specified by the AuthN Mapping UUID. - operationId: GetAuthNMapping - parameters: - - $ref: '#/components/parameters/AuthNMappingID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an AuthN Mapping by UUID - tags: - - AuthN Mappings - x-permission: - operator: OR - permissions: - - user_access_read - patch: - description: Edit an AuthN Mapping. - operationId: UpdateAuthNMapping - parameters: - - $ref: '#/components/parameters/AuthNMappingID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an AuthN Mapping - tags: - - AuthN Mappings - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/cases: - get: - description: Search cases. - operationId: SearchCases - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/CaseSortableFieldParameter' - - description: Search query - in: query - name: filter - required: false - schema: - example: status:open (team:case-management OR team:event-management) - type: string - - description: Specify if order is ascending or not - in: query - name: sort[asc] - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CasesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Search cases - tags: - - Case Management - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - post: - description: Create a Case - operationId: CreateCase - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseCreateRequest' - description: Case payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create a case - tags: - - Case Management - /api/v2/cases/projects: - get: - description: Get all projects. - operationId: GetProjects - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get all projects - tags: - - Case Management - post: - description: Create a project. - operationId: CreateProject - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectCreateRequest' - description: Project payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create a project - tags: - - Case Management - /api/v2/cases/projects/{project_id}: - delete: - description: Remove a project using the project's `id`. - operationId: DeleteProject - parameters: - - $ref: '#/components/parameters/ProjectIDPathParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Remove a project - tags: - - Case Management - get: - description: Get the details of a project by `project_id`. - operationId: GetProject - parameters: - - $ref: '#/components/parameters/ProjectIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get the details of a project - tags: - - Case Management - /api/v2/cases/{case_id}: - get: - description: Get the details of case by `case_id` - operationId: GetCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get the details of a case - tags: - - Case Management - /api/v2/cases/{case_id}/archive: - post: - description: Archive case - operationId: ArchiveCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Archive case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Archive case - tags: - - Case Management - /api/v2/cases/{case_id}/assign: - post: - description: Assign case to a user - operationId: AssignCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseAssignRequest' - description: Assign case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Assign case - tags: - - Case Management - /api/v2/cases/{case_id}/attributes: - post: - description: Update case attributes - operationId: UpdateAttributes - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdateAttributesRequest' - description: Case attributes update payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case attributes - tags: - - Case Management - /api/v2/cases/{case_id}/priority: - post: - description: Update case priority - operationId: UpdatePriority - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdatePriorityRequest' - description: Case priority update payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case priority - tags: - - Case Management - /api/v2/cases/{case_id}/status: - post: - description: Update case status - operationId: UpdateStatus - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdateStatusRequest' - description: Case status update payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case status - tags: - - Case Management - /api/v2/cases/{case_id}/unarchive: - post: - description: Unarchive case - operationId: UnarchiveCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Unarchive case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Unarchive case - tags: - - Case Management - /api/v2/cases/{case_id}/unassign: - post: - description: Unassign case - operationId: UnassignCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Unassign case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Unassign case - tags: - - Case Management - /api/v2/catalog/entity: - get: - description: Get a list of entities from Software Catalog. - operationId: ListCatalogEntity - parameters: - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of entities in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - type: integer - - $ref: '#/components/parameters/FilterByID' - - $ref: '#/components/parameters/FilterByRef' - - $ref: '#/components/parameters/FilterByName' - - $ref: '#/components/parameters/FilterByKind' - - $ref: '#/components/parameters/FilterByOwner' - - $ref: '#/components/parameters/FilterByRelationType' - - $ref: '#/components/parameters/FilterByExcludeSnapshot' - - $ref: '#/components/parameters/Include' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListEntityCatalogResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a list of entities - tags: - - Software Catalog - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - post: - description: Create or update entities in Software Catalog. - operationId: UpsertCatalogEntity - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogEntityRequest' - description: Entity YAML or JSON. - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogEntityResponse' - description: ACCEPTED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create or update entities - tags: - - Software Catalog - x-codegen-request-body-name: body - /api/v2/catalog/entity/{entity_id}: - delete: - description: Delete a single entity in Software Catalog. - operationId: DeleteCatalogEntity - parameters: - - $ref: '#/components/parameters/EntityID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a single entity - tags: - - Software Catalog - /api/v2/catalog/kind: - get: - description: Get a list of entity kinds from Software Catalog. - operationId: ListCatalogKind - parameters: - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of kinds in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - type: integer - - $ref: '#/components/parameters/FilterByID' - - $ref: '#/components/parameters/FilterByName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListKindCatalogResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a list of entity kinds - tags: - - Software Catalog - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - post: - description: Create or update kinds in Software Catalog. - operationId: UpsertCatalogKind - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogKindRequest' - description: Kind YAML or JSON. - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogKindResponse' - description: ACCEPTED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create or update kinds - tags: - - Software Catalog - x-codegen-request-body-name: body - /api/v2/catalog/kind/{kind_id}: - delete: - description: Delete a single kind in Software Catalog. - operationId: DeleteCatalogKind - parameters: - - $ref: '#/components/parameters/KindID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a single kind - tags: - - Software Catalog - /api/v2/catalog/relation: - get: - description: Get a list of entity relations from Software Catalog. - operationId: ListCatalogRelation - parameters: - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of relations in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - type: integer - - $ref: '#/components/parameters/FilterRelationByType' - - $ref: '#/components/parameters/FilterRelationByFromRef' - - $ref: '#/components/parameters/FilterRelationByToRef' - - $ref: '#/components/parameters/RelationInclude' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListRelationCatalogResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a list of entity relations - tags: - - Software Catalog - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - /api/v2/ci/pipeline: - post: - description: 'Send your pipeline event to your Datadog platform over HTTP. For - details about how pipeline executions are modeled and what execution types - we support, see [Pipeline Data Model And Execution Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/). - - - Multiple events can be sent in an array (up to 1000). - - - Pipeline events can be submitted with a timestamp that is up to 18 hours in - the past.' - operationId: CreateCIAppPipelineEvent - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequest' - required: true - responses: - '202': - content: - application/json: - schema: - type: object - description: Request accepted for processing - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Bad Request - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Unauthorized - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Forbidden - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Request Timeout - '413': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Payload Too Large - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Too Many Requests - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Internal Server Error - '503': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Service Unavailable - security: - - apiKeyAuth: [] - summary: Send pipeline event - tags: - - CI Visibility Pipelines - x-codegen-request-body-name: body - /api/v2/ci/pipelines/analytics/aggregate: - post: - description: Use this API endpoint to aggregate CI Visibility pipeline events - into buckets of computed metrics and timeseries. - operationId: AggregateCIAppPipelineEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelinesAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelinesAnalyticsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - summary: Aggregate pipelines events - tags: - - CI Visibility Pipelines - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - ci_visibility_read - /api/v2/ci/pipelines/events: - get: - description: 'List endpoint returns CI Visibility pipeline events that match - a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest pipeline events.' - operationId: ListCIAppPipelineEvents - parameters: - - description: Search query following log syntax. - example: '@ci.provider.name:github @ci.pipeline.name:Pull Request Labeler' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/CIAppSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelineEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - summary: Get a list of pipelines events - tags: - - CI Visibility Pipelines - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - /api/v2/ci/pipelines/events/search: - post: - description: 'List endpoint returns CI Visibility pipeline events that match - a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search.' - operationId: SearchCIAppPipelineEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelineEventsRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelineEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - summary: Search pipelines events - tags: - - CI Visibility Pipelines - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - /api/v2/ci/tests/analytics/aggregate: - post: - description: The API endpoint to aggregate CI Visibility test events into buckets - of computed metrics and timeseries. - operationId: AggregateCIAppTestEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestsAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestsAnalyticsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - - AuthZ: - - test_optimization_read - summary: Aggregate tests events - tags: - - CI Visibility Tests - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - ci_visibility_read - - test_optimization_read - /api/v2/ci/tests/events: - get: - description: 'List endpoint returns CI Visibility test events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest test events.' - operationId: ListCIAppTestEvents - parameters: - - description: Search query following log syntax. - example: '@test.name:test_foo @test.suite:github.com/DataDog/dd-go/model' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/CIAppSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - - AuthZ: - - test_optimization_read - summary: Get a list of tests events - tags: - - CI Visibility Tests - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - - test_optimization_read - /api/v2/ci/tests/events/search: - post: - description: 'List endpoint returns CI Visibility test events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search.' - operationId: SearchCIAppTestEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestEventsRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - - AuthZ: - - test_optimization_read - summary: Search tests events - tags: - - CI Visibility Tests - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - - test_optimization_read - /api/v2/cloud_security_management/custom_frameworks: - post: - description: Create a custom framework. - operationId: CreateCustomFramework - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateCustomFrameworkRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Create a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - /api/v2/cloud_security_management/custom_frameworks/{handle}/{version}: - delete: - description: Delete a custom framework. - operationId: DeleteCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Delete a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - get: - description: Get a custom framework. - operationId: GetCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - put: - description: Update a custom framework. - operationId: UpdateCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCustomFrameworkRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Update a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - /api/v2/cloud_security_management/resource_filters: - get: - description: List resource filters. - operationId: GetResourceEvaluationFilters - parameters: - - $ref: '#/components/parameters/ResourceFilterProvider' - - $ref: '#/components/parameters/ResourceFilterAccountID' - - $ref: '#/components/parameters/SkipCache' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetResourceEvaluationFiltersResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: List resource filters - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - put: - description: Update resource filters. - operationId: UpdateResourceEvaluationFilters - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Update resource filters - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/container_images: - get: - description: Get all Container Images for your organization. - operationId: ListContainerImages - parameters: - - description: Comma-separated list of tags to filter Container Images by. - example: short_image:redis,status:running - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Comma-separated list of tags to group Container Images by. - example: registry,image_tags - in: query - name: group_by - required: false - schema: - type: string - - description: Attribute to sort Container Images by. - example: container_count - in: query - name: sort - required: false - schema: - type: string - - description: Maximum number of results returned. - in: query - name: page[size] - required: false - schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: 'String to query the next page of results. - - This key is provided with each valid response from the API in `meta.pagination.next_cursor`.' - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ContainerImagesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get all Container Images - tags: - - Container Images - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/containers: - get: - description: Get all containers for your organization. - operationId: ListContainers - parameters: - - description: Comma-separated list of tags to filter containers by. - example: env:prod,short_image:cassandra - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Comma-separated list of tags to group containers by. - example: datacenter,cluster - in: query - name: group_by - required: false - schema: - type: string - - description: Attribute to sort containers by. - example: started_at - in: query - name: sort - required: false - schema: - type: string - - description: Maximum number of results returned. - in: query - name: page[size] - required: false - schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: 'String to query the next page of results. - - This key is provided with each valid response from the API in `meta.pagination.next_cursor`.' - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ContainersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get All Containers - tags: - - Containers - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/cost/aws_cur_config: - get: - description: List the AWS CUR configs. - operationId: ListCostAWSCURConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management AWS CUR configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an AWS CUR config. - operationId: CreateCostAWSCURConfig - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigPostRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management AWS CUR config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/aws_cur_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management Account. - operationId: DeleteCostAWSCURConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management AWS CUR config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: Update the status (active/archived) and/or account filtering configuration - of an AWS CUR config. - operationId: UpdateCostAWSCURConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigPatchRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management AWS CUR config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/azure_uc_config: - get: - description: List the Azure configs. - operationId: ListCostAzureUCConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management Azure configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an Azure config. - operationId: CreateCostAzureUCConfigs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPostRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPairsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management Azure configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/azure_uc_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management Account. - operationId: DeleteCostAzureUCConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management Azure config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: Update the status of an Azure config (active/archived). - operationId: UpdateCostAzureUCConfigs - parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPatchRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPairsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management Azure config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/budget: - put: - description: Create a new budget or update an existing one. - operationId: UpsertBudget - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetWithEntries' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetWithEntries' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create or update a budget - tags: - - Cloud Cost Management - /api/v2/cost/budget/{budget_id}: - delete: - description: Delete a budget. - operationId: DeleteBudget - parameters: - - $ref: '#/components/parameters/BudgetID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete a budget - tags: - - Cloud Cost Management - get: - description: Get a budget. - operationId: GetBudget - parameters: - - $ref: '#/components/parameters/BudgetID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetWithEntries' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: Get a budget - tags: - - Cloud Cost Management - /api/v2/cost/budgets: - get: - description: List budgets. - operationId: ListBudgets - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetArray' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List budgets - tags: - - Cloud Cost Management - /api/v2/cost/custom_costs: - get: - description: List the Custom Costs files. - operationId: ListCustomCostsFiles - parameters: - - description: Page number for pagination - in: query - name: page[number] - schema: - format: int64 - type: integer - - description: Page size for pagination - in: query - name: page[size] - schema: - default: 100 - format: int64 - type: integer - - description: Filter by file status - in: query - name: filter[status] - schema: - type: string - - description: Sort key with optional descending prefix - in: query - name: sort - schema: - default: created_at - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileListResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Custom Costs files - tags: - - Cloud Cost Management - put: - description: Upload a Custom Costs file. - operationId: UploadCustomCostsFile - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileUploadRequest' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileUploadResponse' - description: Accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Upload Custom Costs file - tags: - - Cloud Cost Management - /api/v2/cost/custom_costs/{file_id}: - delete: - description: Delete the specified Custom Costs file. - operationId: DeleteCustomCostsFile - parameters: - - $ref: '#/components/parameters/FileID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Custom Costs file - tags: - - Cloud Cost Management - get: - description: Fetch the specified Custom Costs file. - operationId: GetCustomCostsFile - parameters: - - $ref: '#/components/parameters/FileID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileGetResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: Get Custom Costs file - tags: - - Cloud Cost Management - /api/v2/cost/gcp_uc_config: - get: - description: List the GCP Usage Cost configs. - operationId: ListCostGCPUsageCostConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management GCP Usage Cost configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an GCP Usage Cost config. - operationId: CreateCostGCPUsageCostConfig - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management GCP Usage Cost config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/gcp_uc_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management account. - operationId: DeleteCostGCPUsageCostConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management GCP Usage Cost config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: Update the status of an GCP Usage Cost config (active/archived). - operationId: UpdateCostGCPUsageCostConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management GCP Usage Cost config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost_by_tag/active_billing_dimensions: - get: - description: Get active billing dimensions for cost attribution. Cost data for - a given month becomes available no later than the 19th of the following month. - operationId: GetActiveBillingDimensions - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/ActiveBillingDimensionsResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get active billing dimensions for cost attribution - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/cost_by_tag/monthly_cost_attribution: - get: - description: "Get monthly cost attribution by tag across multi-org and single - root-org accounts.\nCost Attribution data for a given month becomes available - no later than the 19th of the following month.\nThis API endpoint is paginated. - To make sure you receive all records, check if the value of `next_record_id` - is\nset in the response. If it is, make another request and pass `next_record_id` - as a parameter.\nPseudo code example:\n```\nresponse := GetMonthlyCostAttribution(start_month, - end_month)\ncursor := response.metadata.pagination.next_record_id\nWHILE cursor - != null BEGIN\n sleep(5 seconds) # Avoid running into rate limit\n response - := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor)\n - \ cursor := response.metadata.pagination.next_record_id\nEND\n```\n\nThis - endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). - This endpoint is not available in the Government (US1-FED) site." - operationId: GetMonthlyCostAttribution - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost beginning in this month.' - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost ending this month.' - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: 'Comma-separated list specifying cost types (e.g., `_on_demand_cost`, - `_committed_cost`, `_total_cost`) - and the - - proportions (`_percentage_in_org`, `_percentage_in_account`). - Use `*` to retrieve all fields. - - Example: `infra_host_on_demand_cost,infra_host_percentage_in_account` - - To obtain the complete list of active billing dimensions that can be used - to replace - - `` in the field names, make a request to the [Get active - billing dimensions API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution).' - in: query - name: fields - required: true - schema: - type: string - - description: 'The direction to sort by: `[desc, asc]`.' - in: query - name: sort_direction - required: false - schema: - $ref: '#/components/schemas/SortDirection' - - description: 'The billing dimension to sort by. Always sorted by total cost. - Example: `infra_host`.' - in: query - name: sort_name - required: false - schema: - type: string - - description: 'Comma separated list of tag keys used to group cost. If no value - is provided the cost will not be broken down by tags. - - To see which tags are available, look for the value of `tag_config_source` - in the API response.' - in: query - name: tag_breakdown_keys - required: false - schema: - type: string - - description: List following results with a next_record_id provided in the - previous query. - in: query - name: next_record_id - required: false - schema: - type: string - - description: Include child org cost in the response. Defaults to `true`. - in: query - name: include_descendants - required: false - schema: - default: true - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/MonthlyCostAttributionResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get Monthly Cost Attribution - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/csm/onboarding/agents: - get: - description: Get the list of all CSM Agents running on your hosts and containers. - operationId: ListAllCSMAgents - parameters: - - description: The page index for pagination (zero-based). - in: query - name: page - required: false - schema: - example: 2 - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of items to include in a single page. - in: query - name: size - required: false - schema: - example: 12 - format: int32 - maximum: 100 - minimum: 0 - type: integer - - description: A search query string to filter results (for example, `hostname:COMP-T2H4J27423`). - in: query - name: query - required: false - schema: - example: hostname:COMP-T2H4J27423 - type: string - - description: The sort direction for results. Use `asc` for ascending or `desc` - for descending. - in: query - name: order_direction - required: false - schema: - $ref: '#/components/schemas/OrderDirection' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmAgentsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all CSM Agents - tags: - - CSM Agents - /api/v2/csm/onboarding/coverage_analysis/cloud_accounts: - get: - description: 'Get the CSM Coverage Analysis of your Cloud Accounts. - - This is calculated based on the number of your Cloud Accounts that are - - scanned for security issues.' - operationId: GetCSMCloudAccountsCoverageAnalysis - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Cloud Accounts Coverage Analysis - tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/coverage_analysis/hosts_and_containers: - get: - description: 'Get the CSM Coverage Analysis of your Hosts and Containers. - - This is calculated based on the number of agents running on your Hosts - - and Containers with CSM feature(s) enabled.' - operationId: GetCSMHostsAndContainersCoverageAnalysis - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Hosts and Containers Coverage Analysis - tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/coverage_analysis/serverless: - get: - description: 'Get the CSM Coverage Analysis of your Serverless Resources. - - This is calculated based on the number of agents running on your Serverless - - Resources with CSM feature(s) enabled.' - operationId: GetCSMServerlessCoverageAnalysis - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Serverless Coverage Analysis - tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/serverless/agents: - get: - description: Get the list of all CSM Serverless Agents running on your hosts - and containers. - operationId: ListAllCSMServerlessAgents - parameters: - - description: The page index for pagination (zero-based). - in: query - name: page - required: false - schema: - example: 2 - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of items to include in a single page. - in: query - name: size - required: false - schema: - example: 12 - format: int32 - maximum: 100 - minimum: 0 - type: integer - - description: A search query string to filter results (for example, `hostname:COMP-T2H4J27423`). - in: query - name: query - required: false - schema: - example: hostname:COMP-T2H4J27423 - type: string - - description: The sort direction for results. Use `asc` for ascending or `desc` - for descending. - in: query - name: order_direction - required: false - schema: - $ref: '#/components/schemas/OrderDirection' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmAgentsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all CSM Serverless Agents - tags: - - CSM Agents - /api/v2/current_user/application_keys: - get: - description: List all application keys available for current user - operationId: ListCurrentUserApplicationKeys - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' - - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all application keys owned by current user - tags: - - Key Management - x-permission: - operator: OR - permissions: - - user_app_keys - post: - description: Create an application key for current user - operationId: CreateCurrentUserApplicationKey - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an application key for current user - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_app_keys - /api/v2/current_user/application_keys/{app_key_id}: - delete: - description: Delete an application key owned by current user - operationId: DeleteCurrentUserApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key owned by current user - tags: - - Key Management - x-permission: - operator: OR - permissions: - - user_app_keys - get: - description: Get an application key owned by current user - operationId: GetCurrentUserApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get one application key owned by current user - tags: - - Key Management - x-permission: - operator: OR - permissions: - - user_app_keys - patch: - description: Edit an application key owned by current user - operationId: UpdateCurrentUserApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key owned by current user - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_app_keys - /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards: - delete: - description: Delete dashboards from an existing dashboard list. - operationId: DeleteDashboardListItems - parameters: - - description: ID of the dashboard list to delete items from. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListDeleteItemsRequest' - description: Dashboards to delete from the dashboard list. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListDeleteItemsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete items from a dashboard list - tags: - - Dashboard Lists - x-codegen-request-body-name: body - get: - description: "Fetch the dashboard list\u2019s dashboard definitions." - operationId: GetDashboardListItems - parameters: - - description: ID of the dashboard list to get items from. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListItems' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_read - summary: Get items of a Dashboard List - tags: - - Dashboard Lists - x-permission: - operator: OR - permissions: - - dashboards_read - post: - description: Add dashboards to an existing dashboard list. - operationId: CreateDashboardListItems - parameters: - - description: ID of the dashboard list to add items to. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListAddItemsRequest' - description: Dashboards to add to the dashboard list. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListAddItemsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Items to a Dashboard List - tags: - - Dashboard Lists - x-codegen-request-body-name: body - put: - description: Update dashboards of an existing dashboard list. - operationId: UpdateDashboardListItems - parameters: - - description: ID of the dashboard list to update items from. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListUpdateItemsRequest' - description: New dashboards of the dashboard list. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListUpdateItemsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update items of a dashboard list - tags: - - Dashboard Lists - x-codegen-request-body-name: body - /api/v2/datasets: - get: - description: Get all datasets that have been configured for an organization. - operationId: GetAllDatasets - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseMulti' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get all datasets - tags: - - Datasets - x-permission: - operator: OR - permissions: - - user_access_read - x-unstable: '**Note: Data Access is in preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).**' - post: - description: Create a dataset with the configurations in the request. - operationId: CreateDataset - requestBody: - content: - application/json: - example: - data: - attributes: - name: Test RUM Dataset - principals: - - role:94172442-be03-11e9-a77a-3b7612558ac1 - product_filters: - - filters: - - '@application.id:application_123' - product: rum - type: dataset - schema: - $ref: '#/components/schemas/DatasetCreateRequest' - description: Dataset payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseSingle' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create a dataset - tags: - - Datasets - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - x-unstable: '**Note: Data Access is in preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).**' - /api/v2/datasets/{dataset_id}: - delete: - description: Deletes the dataset associated with the ID. - operationId: DeleteDataset - parameters: - - $ref: '#/components/parameters/DatasetID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Delete a dataset - tags: - - Datasets - x-permission: - operator: OR - permissions: - - user_access_manage - x-unstable: '**Note: Data Access is in preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).**' - get: - description: Retrieves the dataset associated with the ID. - operationId: GetDataset - parameters: - - $ref: '#/components/parameters/DatasetID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseSingle' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a single dataset by ID - tags: - - Datasets - x-permission: - operator: OPEN - permissions: [] - x-unstable: '**Note: Data Access is in preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).**' - put: - description: Edits the dataset associated with the ID. - operationId: UpdateDataset - parameters: - - $ref: '#/components/parameters/DatasetID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetUpdateRequest' - description: Dataset payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseSingle' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Edit a dataset - tags: - - Datasets - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - x-unstable: '**Note: Data Access is in preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).**' - /api/v2/deletion/data/{product}: - post: - description: Creates a data deletion request by providing a query and a timeframe - targeting the proper data. - operationId: CreateDataDeletionRequest - parameters: - - $ref: '#/components/parameters/ProductName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateDataDeletionRequestBody' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateDataDeletionResponseBody' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Precondition failed error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal server error - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Creates a data deletion request - tags: - - Data Deletion - x-permission: - operator: OR - permissions: - - rum_delete_data - - logs_delete_data - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/deletion/requests: - get: - description: Gets a list of data deletion requests based on several filter parameters. - operationId: GetDataDeletionRequests - parameters: - - description: The next page of the previous search. If the next_page parameter - is included, the rest of the query elements are ignored. - example: cGFnZTI= - in: query - name: next_page - required: false - schema: - type: string - - description: Retrieve only the requests related to the given product. - example: logs - in: query - name: product - required: false - schema: - type: string - - description: Retrieve only the requests that matches the given query. - example: service:xyz host:abc - in: query - name: query - required: false - schema: - type: string - - description: Retrieve only the requests with the given status. - example: pending - in: query - name: status - required: false - schema: - type: string - - description: Sets the page size of the search. - example: '50' - in: query - name: page_size - required: false - schema: - default: 50 - format: int64 - maximum: 50 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetDataDeletionsResponseBody' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal server error - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Gets a list of data deletion requests - tags: - - Data Deletion - x-permission: - operator: OR - permissions: - - rum_delete_data - - logs_delete_data - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/deletion/requests/{id}/cancel: - put: - description: Cancels a data deletion request by providing its ID. - operationId: CancelDataDeletionRequest - parameters: - - $ref: '#/components/parameters/RequestId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CancelDataDeletionResponseBody' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Precondition failed error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal server error - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Cancels a data deletion request - tags: - - Data Deletion - x-permission: - operator: OR - permissions: - - rum_delete_data - - logs_delete_data - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/domain_allowlist: - get: - description: Get the domain allowlist for an organization. - operationId: GetDomainAllowlist - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DomainAllowlistResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - - AuthZ: - - monitors_write - summary: Get Domain Allowlist - tags: - - Domain Allowlist - x-permission: - operator: OR - permissions: - - org_management - - monitors_write - - generate_dashboard_reports - - generate_log_reports - - manage_log_reports - patch: - description: Update the domain allowlist for an organization. - operationId: PatchDomainAllowlist - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DomainAllowlistRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DomainAllowlistResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - - AuthZ: - - monitors_write - summary: Sets Domain Allowlist - tags: - - Domain Allowlist - x-permission: - operator: OR - permissions: - - org_management - - monitors_write - - generate_dashboard_reports - - generate_log_reports - - manage_log_reports - /api/v2/dora/deployment: - post: - description: 'Use this API endpoint to provide data about deployments for DORA - metrics. - - - This is necessary for: - - - Deployment Frequency - - - Change Lead Time - - - Change Failure Rate' - operationId: CreateDORADeployment - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentResponse' - description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentResponse' - description: OK - but delayed due to incident - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Send a deployment event for DORA Metrics - tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/dora/deployments: - post: - description: Use this API endpoint to get a list of deployment events. - operationId: ListDORADeployments - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListDeploymentsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get a list of deployment events - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/deployments/{deployment_id}: - get: - description: Use this API endpoint to get a deployment event. - operationId: GetDORADeployment - parameters: - - description: The ID of the deployment event. - in: path - name: deployment_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFetchResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - - appKeyAuth: [] - summary: Get a deployment event - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/failure: - post: - description: 'Use this API endpoint to provide failure data for DORA metrics. - - - This is necessary for: - - - Change Failure Rate - - - Time to Restore' - operationId: CreateDORAFailure - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - but delayed due to incident - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Send a failure event for DORA Metrics - tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/dora/failures: - post: - description: Use this API endpoint to get a list of failure events. - operationId: ListDORAFailures - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListFailuresRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get a list of failure events - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/failures/{failure_id}: - get: - description: Use this API endpoint to get a failure event. - operationId: GetDORAFailure - parameters: - - description: The ID of the failure event. - in: path - name: failure_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFetchResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - - appKeyAuth: [] - summary: Get a failure event - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/incident: - post: - deprecated: true - description: '**Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` - instead. - - - Use this API endpoint to provide failure data for DORA metrics. - - - This is necessary for: - - - Change Failure Rate - - - Time to Restore' - operationId: CreateDORAIncident - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - but delayed due to incident - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Send an incident event for DORA Metrics - tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/downtime: - get: - description: Get all scheduled downtimes. - operationId: ListDowntimes - parameters: - - description: Only return downtimes that are active when the request is made. - in: query - name: current_only - required: false - schema: - type: boolean - - description: 'Comma-separated list of resource paths for related resources - to include in the response. Supported resource - - paths are `created_by` and `monitor`.' - in: query - name: include - required: false - schema: - example: created_by,monitor - type: string - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of downtimes in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 30 - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListDowntimesResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Get all downtimes - tags: - - Downtimes - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - monitors_downtime - post: - description: Schedule a downtime. - operationId: CreateDowntime - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeCreateRequest' - description: Schedule a downtime request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Schedule a downtime - tags: - - Downtimes - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/downtime/{downtime_id}: - delete: - description: 'Cancel a downtime. - - - **Note**: Downtimes canceled through the API are no longer active, but are - retained for approximately two days before being permanently removed. The - downtime may still appear in search results until it is permanently removed.' - operationId: CancelDowntime - parameters: - - description: ID of the downtime to cancel. - in: path - name: downtime_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Downtime not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Cancel a downtime - tags: - - Downtimes - x-permission: - operator: OR - permissions: - - monitors_downtime - get: - description: Get downtime detail by `downtime_id`. - operationId: GetDowntime - parameters: - - description: ID of the downtime to fetch. - in: path - name: downtime_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - - description: 'Comma-separated list of resource paths for related resources - to include in the response. Supported resource - - paths are `created_by` and `monitor`.' - in: query - name: include - required: false - schema: - example: created_by,monitor - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Get a downtime - tags: - - Downtimes - x-permission: - operator: OR - permissions: - - monitors_downtime - patch: - description: Update a downtime by `downtime_id`. - operationId: UpdateDowntime - parameters: - - description: ID of the downtime to update. - in: path - name: downtime_id - required: true - schema: - example: 00e000000-0000-1234-0000-000000000000 - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeUpdateRequest' - description: Update a downtime request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Downtime not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Update a downtime - tags: - - Downtimes - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/error-tracking/issues/search: - post: - description: Search issues endpoint allows you to programmatically search for - issues within your organization. This endpoint returns a list of issues that - match a given search query, following the event search syntax. The search - results are limited to a maximum of 100 issues per request. - operationId: SearchIssues - parameters: - - $ref: '#/components/parameters/SearchIssuesIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssuesSearchRequest' - description: Search issues request payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssuesSearchResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - summary: Search error tracking issues - tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}: - get: - description: Retrieve the full details for a specific error tracking issue, - including attributes and relationships. - operationId: GetIssue - parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - - $ref: '#/components/parameters/GetIssueIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssueResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - summary: Get the details of an error tracking issue - tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}/assignee: - put: - description: Update the assignee of an issue by `issue_id`. - operationId: UpdateIssueAssignee - parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssueUpdateAssigneeRequest' - description: Update issue assignee request payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssueResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - - error_tracking_write - - cases_read - - cases_write - summary: Update the assignee of an issue - tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}/state: - put: - description: Update the state of an issue by `issue_id`. Use this endpoint to - move an issue between states such as `OPEN`, `RESOLVED`, or `IGNORED`. - operationId: UpdateIssueState - parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssueUpdateStateRequest' - description: Update issue state request payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssueResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - - error_tracking_write - summary: Update the state of an issue - tags: - - Error Tracking - /api/v2/events: - get: - description: 'List endpoint returns events that match an events search query. - - [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest events.' - operationId: ListEvents - parameters: - - description: Search query following events syntax. - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events, in milliseconds. - in: query - name: filter[from] - required: false - schema: - type: string - - description: Maximum timestamp for requested events, in milliseconds. - in: query - name: filter[to] - required: false - schema: - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/EventsSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - events_read - summary: Get a list of events - tags: - - Events - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - events_read - post: - description: "This endpoint allows you to publish events.\n\n**Note:** To utilize - this endpoint with our client libraries, please ensure you are using the latest - version released on or after July 1, 2025. Earlier versions do not support - this functionality.\n\n\u2705 **Only events with the `change` or `alert` category** - are in General Availability. For change events, see [Change Tracking](https://docs.datadoghq.com/change_tracking) - for more details.\n\n\u274C For use cases involving other event categories, - use the V1 endpoint or reach out to [support](https://www.datadoghq.com/support/).\n\n\u274C - Notifications are not yet supported for events sent to this endpoint. Use - the V1 endpoint for notification functionality." - operationId: CreateEvent - requestBody: - content: - application/json: - examples: - json-request-body: - value: - data: - attributes: - aggregation_key: aggregation_key_123 - attributes: - author: - name: example@datadog.com - type: user - change_metadata: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - resource_link: datadog.com/feature/fallback_payments_test - changed_resource: - name: fallback_payments_test - type: feature_flag - impacted_resources: - - name: payments_api - type: service - new_value: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - prev_value: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - category: change - integration_id: custom-events - message: payment_processed feature flag has been enabled - tags: - - env:api_client_test - timestamp: '2020-01-01T01:30:15.010000Z' - title: payment_processed feature flag updated - type: event - schema: - $ref: '#/components/schemas/EventCreateRequestPayload' - description: Event creation request payload. - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/EventCreateResponsePayload' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: event-management-intake - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: event-management-intake.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: event-management-intake - description: The subdomain where the API is deployed. - summary: Post an event - tags: - - Events - x-codegen-request-body-name: body - /api/v2/events/search: - post: - description: 'List endpoint returns events that match an events search query. - - [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search.' - operationId: SearchEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search events - tags: - - Events - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - events_read - /api/v2/events/{event_id}: - get: - description: Get the details of an event by `event_id`. - operationId: GetEvent - parameters: - - description: The UID of the event. - in: path - name: event_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/V2EventResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - events_read - summary: Get an event - tags: - - Events - x-permission: - operator: OR - permissions: - - events_read - /api/v2/incidents: - get: - description: Get all incidents for the user's organization. - operationId: ListIncidents - parameters: - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of incidents - tags: - - Incidents - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Create an incident. - operationId: CreateIncident - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentCreateRequest' - description: Incident payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/config/notification-rules: - get: - description: Lists all notification rules for the organization. Optionally filter - by incident type. - operationId: ListIncidentNotificationRules - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRuleArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_read - summary: List incident notification rules - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Creates a new notification rule. - operationId: CreateIncidentNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateIncidentNotificationRuleRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Create an incident notification rule - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/config/notification-rules/{id}: - delete: - description: Deletes a notification rule by its ID. - operationId: DeleteIncidentNotificationRule - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Delete an incident notification rule - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Retrieves a specific notification rule by its ID. - operationId: GetIncidentNotificationRule - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_read - summary: Get an incident notification rule - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - put: - description: Updates an existing notification rule with a complete replacement. - operationId: UpdateIncidentNotificationRule - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PutIncidentNotificationRuleRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Update an incident notification rule - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/config/notification-templates: - get: - description: Lists all notification templates. Optionally filter by incident - type. - operationId: ListIncidentNotificationTemplates - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIncidentTypeFilterQueryParameter' - - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplateArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_read - summary: List incident notification templates - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Creates a new notification template. - operationId: CreateIncidentNotificationTemplate - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateIncidentNotificationTemplateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Create incident notification template - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/config/notification-templates/{id}: - delete: - description: Deletes a notification template by its ID. - operationId: DeleteIncidentNotificationTemplate - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Delete a notification template - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Retrieves a specific notification template by its ID. - operationId: GetIncidentNotificationTemplate - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_read - summary: Get incident notification template - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_settings_read - - incident_write - - incident_read - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: Updates an existing notification template's attributes. - operationId: UpdateIncidentNotificationTemplate - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchIncidentNotificationTemplateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Update incident notification template - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: '**Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/config/types: - get: - description: Get all incident types. - operationId: ListIncidentTypes - parameters: - - $ref: '#/components/parameters/IncidentTypeIncludeDeletedParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of incident types - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Create an incident type. - operationId: CreateIncidentType - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeCreateRequest' - description: Incident type payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Create an incident type - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/config/types/{incident_type_id}: - delete: - description: Delete an incident type. - operationId: DeleteIncidentType - parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Delete an incident type - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Get incident type details. - operationId: GetIncidentType - parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get incident type details - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: Update an incident type. - operationId: UpdateIncidentType - parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypePatchRequest' - description: Incident type payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an incident type - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/search: - get: - description: Search for incidents matching a certain query. - operationId: SearchIncidents - parameters: - - $ref: '#/components/parameters/IncidentSearchIncludeQueryParameter' - - $ref: '#/components/parameters/IncidentSearchQueryQueryParameter' - - $ref: '#/components/parameters/IncidentSearchSortQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentSearchResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Search for incidents - tags: - - Incidents - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data.attributes.incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/{incident_id}: - delete: - description: Deletes an existing incident from the users organization. - operationId: DeleteIncident - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Delete an existing incident - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Get the details of an incident by `incident_id`. - operationId: GetIncident - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get the details of an incident - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: Updates an incident. Provide only the attributes that should be - updated as this request is a partial update. - operationId: UpdateIncident - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentUpdateRequest' - description: Incident Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Update an existing incident - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/{incident_id}/attachments: - get: - description: Get all attachments for a given incident. - operationId: ListIncidentAttachments - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentAttachmentIncludeQueryParameter' - - $ref: '#/components/parameters/IncidentAttachmentFilterQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentAttachmentsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of attachments - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: The bulk update endpoint for creating, updating, and deleting attachments - for a given incident. - operationId: UpdateIncidentAttachments - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentAttachmentIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentAttachmentUpdateRequest' - description: Incident Attachment Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentAttachmentUpdateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create, update, and delete incident attachments - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/{incident_id}/relationships/integrations: - get: - description: Get all integration metadata for an incident. - operationId: ListIncidentIntegrations - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of an incident's integration metadata - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Create an incident integration metadata. - operationId: CreateIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataCreateRequest' - description: Incident integration metadata payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident integration metadata - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id}: - delete: - description: Delete an incident integration metadata. - operationId: DeleteIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Delete an incident integration metadata - tags: - - Incidents - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Get incident integration metadata details. - operationId: GetIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get incident integration metadata details - tags: - - Incidents - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: Update an existing incident integration metadata. - operationId: UpdateIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataPatchRequest' - description: Incident integration metadata payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Update an existing incident integration metadata - tags: - - Incidents - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/{incident_id}/relationships/todos: - get: - description: Get all todos for an incident. - operationId: ListIncidentTodos - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of an incident's todos - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Create an incident todo. - operationId: CreateIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoCreateRequest' - description: Incident todo payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident todo - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/incidents/{incident_id}/relationships/todos/{todo_id}: - delete: - description: Delete an incident todo. - operationId: DeleteIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Delete an incident todo - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Get incident todo details. - operationId: GetIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get incident todo details - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: Update an incident todo. - operationId: UpdateIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoPatchRequest' - description: Incident todo payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Update an incident todo - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/integration/aws/accounts: - get: - description: Get a list of AWS Account Integration Configs. - operationId: ListAWSAccounts - parameters: - - description: Optional query parameter to filter accounts by AWS Account ID. - If not provided, all accounts are returned. - example: '123456789012' - in: query - name: aws_account_id - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountsResponse' - description: AWS Accounts List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all AWS integrations - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - post: - description: Create a new AWS Account Integration Config. - operationId: CreateAWSAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an AWS integration - tags: - - AWS Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - aws_configurations_manage - /api/v2/integration/aws/accounts/{aws_account_config_id}: - delete: - description: Delete an AWS Account Integration Config by config ID. - operationId: DeleteAWSAccount - parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an AWS integration - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configurations_manage - get: - description: Get an AWS Account Integration Config by config ID. - operationId: GetAWSAccount - parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an AWS integration by config ID - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - patch: - description: Update an AWS Account Integration Config by config ID. - operationId: UpdateAWSAccount - parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update an AWS integration - tags: - - AWS Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - aws_configuration_edit - /api/v2/integration/aws/available_namespaces: - get: - description: Get a list of available AWS CloudWatch namespaces that can send - metrics to Datadog. - operationId: ListAWSNamespaces - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSNamespacesResponse' - description: AWS Namespaces List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List available namespaces - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - /api/v2/integration/aws/generate_new_external_id: - post: - description: Generate a new external ID for AWS role-based authentication. - operationId: CreateNewAWSExternalID - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSNewExternalIDResponse' - description: AWS External ID object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Generate a new external ID - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_edit - /api/v2/integration/aws/iam_permissions: - get: - description: Get all AWS IAM permissions required for the AWS integration. - operationId: GetAWSIntegrationIAMPermissions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse' - description: AWS IAM Permissions object - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS integration IAM permissions - tags: - - AWS Integration - /api/v2/integration/aws/logs/services: - get: - description: Get a list of AWS services that can send logs to Datadog. - operationId: ListAWSLogsServices - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSLogsServicesResponse' - description: AWS Logs Services List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get list of AWS log ready services - tags: - - AWS Logs Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - /api/v2/integration/gcp/accounts: - get: - description: List all GCP STS-enabled service accounts configured in your Datadog - account. - operationId: ListGCPSTSAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all GCP STS-enabled service accounts - tags: - - GCP Integration - x-permission: - operator: OR - permissions: - - gcp_configuration_read - post: - description: Create a new entry within Datadog for your STS enabled service - account. - operationId: CreateGCPSTSAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new entry for your service account - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configurations_manage - /api/v2/integration/gcp/accounts/{account_id}: - delete: - description: Delete an STS enabled GCP account from within Datadog. - operationId: DeleteGCPSTSAccount - parameters: - - $ref: '#/components/parameters/GCPSTSServiceAccountID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an STS enabled GCP Account - tags: - - GCP Integration - x-permission: - operator: OR - permissions: - - gcp_configurations_manage - patch: - description: Update an STS enabled service account. - operationId: UpdateGCPSTSAccount - parameters: - - $ref: '#/components/parameters/GCPSTSServiceAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update STS Service Account - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_edit - /api/v2/integration/gcp/sts_delegate: - get: - description: List your Datadog-GCP STS delegate account configured in your Datadog - account. - operationId: GetGCPSTSDelegate - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List delegate account - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_read - post: - description: Create a Datadog GCP principal. - operationId: MakeGCPSTSDelegate - requestBody: - content: - application/json: - schema: - example: {} - type: object - description: Create a delegate service account within Datadog. - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Datadog GCP principal - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_edit - /api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name}: - get: - description: Get the tenant, team, and channel ID of a channel in the Datadog - Microsoft Teams integration. - operationId: GetChannelByName - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantNamePathParameter' - - $ref: '#/components/parameters/MicrosoftTeamsTeamNamePathParameter' - - $ref: '#/components/parameters/MicrosoftTeamsChannelNamePathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsGetChannelByNameResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get channel information by name - tags: - - Microsoft Teams Integration - /api/v2/integration/ms-teams/configuration/tenant-based-handles: - get: - description: Get a list of all tenant-based handles from the Datadog Microsoft - Teams integration. - operationId: ListTenantBasedHandles - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantIDQueryParameter' - - $ref: '#/components/parameters/MicrosoftTeamsHandleNameQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandlesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all tenant-based handles - tags: - - Microsoft Teams Integration - post: - description: Create a tenant-based handle in the Datadog Microsoft Teams integration. - operationId: CreateTenantBasedHandle - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsCreateTenantBasedHandleRequest' - description: Tenant-based handle payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create tenant-based handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id}: - delete: - description: Delete a tenant-based handle from the Datadog Microsoft Teams integration. - operationId: DeleteTenantBasedHandle - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete tenant-based handle - tags: - - Microsoft Teams Integration - get: - description: Get the tenant, team, and channel information of a tenant-based - handle from the Datadog Microsoft Teams integration. - operationId: GetTenantBasedHandle - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get tenant-based handle information - tags: - - Microsoft Teams Integration - patch: - description: Update a tenant-based handle from the Datadog Microsoft Teams integration. - operationId: UpdateTenantBasedHandle - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequest' - description: Tenant-based handle payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update tenant-based handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/workflows-webhook-handles: - get: - description: Get a list of all Workflows webhook handles from the Datadog Microsoft - Teams integration. - operationId: ListWorkflowsWebhookHandles - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandlesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workflows webhook handles - tags: - - Microsoft Teams Integration - post: - description: Create a Workflows webhook handle in the Datadog Microsoft Teams - integration. - operationId: CreateWorkflowsWebhookHandle - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsCreateWorkflowsWebhookHandleRequest' - description: Workflows Webhook handle payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Workflows webhook handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id}: - delete: - description: Delete a Workflows webhook handle from the Datadog Microsoft Teams - integration. - operationId: DeleteWorkflowsWebhookHandle - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Workflows webhook handle - tags: - - Microsoft Teams Integration - get: - description: Get the name of a Workflows webhook handle from the Datadog Microsoft - Teams integration. - operationId: GetWorkflowsWebhookHandle - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Workflows webhook handle information - tags: - - Microsoft Teams Integration - patch: - description: Update a Workflows webhook handle from the Datadog Microsoft Teams - integration. - operationId: UpdateWorkflowsWebhookHandle - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest' - description: Workflows Webhook handle payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Workflows webhook handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/opsgenie/services: - get: - description: Get a list of all services from the Datadog Opsgenie integration. - operationId: ListOpsgenieServices - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServicesResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all service objects - tags: - - Opsgenie Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a new service object in the Opsgenie integration. - operationId: CreateOpsgenieService - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceCreateRequest' - description: Opsgenie service payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new service object - tags: - - Opsgenie Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integration/opsgenie/services/{integration_service_id}: - delete: - description: Delete a single service object in the Datadog Opsgenie integration. - operationId: DeleteOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a single service object - tags: - - Opsgenie Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a single service from the Datadog Opsgenie integration. - operationId: GetOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a single service object - tags: - - Opsgenie Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a single service object in the Datadog Opsgenie integration. - operationId: UpdateOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceUpdateRequest' - description: Opsgenie service payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a single service object - tags: - - Opsgenie Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/cloudflare/accounts: - get: - description: List Cloudflare accounts. - operationId: ListCloudflareAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Cloudflare accounts - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Cloudflare account. - operationId: CreateCloudflareAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Cloudflare account - tags: - - Cloudflare Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/cloudflare/accounts/{account_id}: - delete: - description: Delete a Cloudflare account. - operationId: DeleteCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Cloudflare account - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Cloudflare account. - operationId: GetCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Cloudflare account - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Cloudflare account. - operationId: UpdateCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Cloudflare account - tags: - - Cloudflare Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts: - get: - description: List Confluent accounts. - operationId: ListConfluentAccount - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Confluent accounts - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Confluent account. - operationId: CreateConfluentAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountCreateRequest' - description: Confluent payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}: - delete: - description: Delete a Confluent account with the provided account ID. - operationId: DeleteConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get the Confluent account with the provided account ID. - operationId: GetConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update the Confluent account with the provided account ID. - operationId: UpdateConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountUpdateRequest' - description: Confluent payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources: - get: - description: Get a Confluent resource for the account associated with the provided - ID. - operationId: ListConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourcesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Confluent Account resources - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Confluent resource for the account associated with the - provided ID. - operationId: CreateConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceRequest' - description: Confluent payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add resource to Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id}: - delete: - description: Delete a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: DeleteConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete resource from Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: GetConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get resource from Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: UpdateConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceRequest' - description: Confluent payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update resource in Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts: - get: - description: List Fastly accounts. - operationId: ListFastlyAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Fastly accounts - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Fastly account. - operationId: CreateFastlyAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Fastly account - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}: - delete: - description: Delete a Fastly account. - operationId: DeleteFastlyAccount - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Fastly account - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Fastly account. - operationId: GetFastlyAccount - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Fastly account - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Fastly account. - operationId: UpdateFastlyAccount - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Fastly account - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}/services: - get: - description: List Fastly services for an account. - operationId: ListFastlyServices - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Fastly services - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Fastly service for an account. - operationId: CreateFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Fastly service - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}/services/{service_id}: - delete: - description: Delete a Fastly service for an account. - operationId: DeleteFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Fastly service - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Fastly service for an account. - operationId: GetFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Fastly service - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Fastly service for an account. - operationId: UpdateFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Fastly service - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/okta/accounts: - get: - description: List Okta accounts. - operationId: ListOktaAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Okta accounts - tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create an Okta account. - operationId: CreateOktaAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Okta account - tags: - - Okta Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/okta/accounts/{account_id}: - delete: - description: Delete an Okta account. - operationId: DeleteOktaAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Okta account - tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get an Okta account. - operationId: GetOktaAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Okta account - tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update an Okta account. - operationId: UpdateOktaAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Okta account - tags: - - Okta Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/ip_allowlist: - get: - description: Returns the IP allowlist and its enabled or disabled state. - operationId: GetIPAllowlist - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - summary: Get IP Allowlist - tags: - - IP Allowlist - x-permission: - operator: OR - permissions: - - org_management - patch: - description: Edit the entries in the IP allowlist, and enable or disable it. - operationId: UpdateIPAllowlist - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - summary: Update IP Allowlist - tags: - - IP Allowlist - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_management - /api/v2/logs: - post: - description: 'Send your logs to your Datadog platform over HTTP. Limits per - HTTP request are: - - - - Maximum content size per payload (uncompressed): 5MB - - - Maximum size for a single log: 1MB - - - Maximum array size if sending multiple logs in an array: 1000 entries - - - Any log exceeding 1MB is accepted and truncated by Datadog: - - - For a single log request, the API truncates the log at 1MB and returns a - 2xx. - - - For a multi-logs request, the API processes all logs, truncates only logs - larger than 1MB, and returns a 2xx. - - - Datadog recommends sending your logs compressed. - - Add the `Content-Encoding: gzip` header to the request when sending compressed - logs. - - Log events can be submitted with a timestamp that is up to 18 hours in the - past. - - - The status codes answered by the HTTP API are: - - - 202: Accepted: the request has been accepted for processing - - - 400: Bad request (likely an issue in the payload formatting) - - - 401: Unauthorized (likely a missing API Key) - - - 403: Permission issue (likely using an invalid API Key) - - - 408: Request Timeout, request should be retried after some time - - - 413: Payload too large (batch is above 5MB uncompressed) - - - 429: Too Many Requests, request should be retried after some time - - - 500: Internal Server Error, the server encountered an unexpected condition - that prevented it from fulfilling the request, request should be retried after - some time - - - 503: Service Unavailable, the server is not ready to handle the request - probably because it is overloaded, request should be retried after some time' - operationId: SubmitLog - parameters: - - description: HTTP header used to compress the media-type. - in: header - name: Content-Encoding - required: false - schema: - $ref: '#/components/schemas/ContentEncoding' - - description: Log tags can be passed as query parameters with `text/plain` - content type. - example: env:prod,user:my-user - in: query - name: ddtags - required: false - schema: - type: string - requestBody: - content: - application/json: - examples: - multi-json-messages: - description: Pass multiple log objects at once. - summary: Multi JSON Messages - value: - - ddsource: nginx - ddtags: env:staging,version:5.1 - hostname: i-012345678 - message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - service: payment - - ddsource: nginx - ddtags: env:staging,version:5.1 - hostname: i-012345679 - message: 2019-11-19T14:37:58,995 INFO [process.name][20081] World - service: payment - simple-json-message: - description: Log attributes can be passed as `key:value` pairs in - valid JSON messages. - summary: Simple JSON Message - value: - ddsource: nginx - ddtags: env:staging,version:5.1 - hostname: i-012345678 - message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - World - service: payment - schema: - $ref: '#/components/schemas/HTTPLog' - application/logplex-1: - examples: - multi-raw-message: - description: Submit log messages. - summary: Multi Logplex Messages - value: '2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - - 2019-11-19T14:37:58,995 INFO [process.name][20081] World' - simple-logplex-message: - description: Submit log string. - summary: Simple Logplex Message - value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - schema: - type: string - text/plain: - examples: - multi-raw-message: - description: Submit log string. - summary: Multi Raw Messages - value: '2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - - 2019-11-19T14:37:58,995 INFO [process.name][20081] World - - ' - simple-raw-message: - description: 'Submit log string. Log attributes can be passed as query - parameters in the URL. This enables the addition of tags or the - source by using the `ddtags` and `ddsource` parameters: `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`.' - summary: Simple Raw Message - value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - schema: - type: string - description: Log to send (JSON format). - required: true - responses: - '202': - content: - application/json: - schema: - type: object - description: Request accepted for processing (always 202 empty JSON). - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Bad Request - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Unauthorized - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Forbidden - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Request Timeout - '413': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Payload Too Large - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Too Many Requests - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Internal Server Error - '503': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Service Unavailable - security: - - apiKeyAuth: [] - servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: http-intake.logs - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: http-intake.logs.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: http-intake.logs - description: The subdomain where the API is deployed. - summary: Send logs - tags: - - Logs - x-codegen-request-body-name: body - /api/v2/logs/analytics/aggregate: - post: - description: The API endpoint to aggregate events into buckets and compute metrics - and timeseries. - operationId: AggregateLogs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Aggregate events - tags: - - Logs - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_read_data - /api/v2/logs/config/archive-order: - get: - description: 'Get the current order of your archives. - - This endpoint takes no JSON arguments.' - operationId: GetLogsArchiveOrder - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveOrder' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get archive order - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_read_config - put: - description: 'Update the order of your archives. Since logs are processed sequentially, - reordering an archive may change - - the structure and content of the data processed by other archives. - - - **Note**: Using the `PUT` method updates your archive''s order by replacing - the current order - - with the new one.' - operationId: UpdateLogsArchiveOrder - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveOrder' - description: An object containing the new ordered list of archive IDs. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveOrder' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update archive order - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/archives: - get: - description: Get the list of configured logs archives with their definitions. - operationId: ListLogsArchives - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchives' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all archives - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_read_archives - post: - description: Create an archive in your organization. - operationId: CreateLogsArchive - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveCreateRequest' - description: The definition of the new archive. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchive' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/archives/{archive_id}: - delete: - description: Delete a given archive from your organization. - operationId: DeleteLogsArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an archive - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_write_archives - get: - description: Get a specific archive from your organization. - operationId: GetLogsArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchive' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an archive - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_read_archives - put: - description: 'Update a given archive configuration. - - - **Note**: Using this method updates your archive configuration by **replacing** - - your current configuration with the new one sent to your Datadog organization.' - operationId: UpdateLogsArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveCreateRequest' - description: New definition of the archive. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchive' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/archives/{archive_id}/readers: - delete: - description: Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) - operationId: RemoveRoleFromArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToRole' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Revoke role from an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - get: - description: Returns all read roles a given archive is restricted to. - operationId: ListArchiveReadRoles - parameters: - - $ref: '#/components/parameters/ArchiveID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RolesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List read roles for an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_read_config - post: - description: Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) - operationId: AddReadRoleToArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToRole' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Grant role to an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/custom-destinations: - get: - description: Get the list of configured custom destinations in your organization - with their definitions. - operationId: ListLogsCustomDestinations - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all custom destinations - tags: - - Logs Custom Destinations - x-permission: - operator: OR - permissions: - - logs_read_config - - logs_read_data - post: - description: Create a custom destination in your organization. - operationId: CreateLogsCustomDestination - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationCreateRequest' - description: The definition of the new custom destination. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a custom destination - tags: - - Logs Custom Destinations - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_forwarding_rules - /api/v2/logs/config/custom-destinations/{custom_destination_id}: - delete: - description: Delete a specific custom destination in your organization. - operationId: DeleteLogsCustomDestination - parameters: - - $ref: '#/components/parameters/CustomDestinationId' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a custom destination - tags: - - Logs Custom Destinations - x-permission: - operator: OR - permissions: - - logs_write_forwarding_rules - get: - description: Get a specific custom destination in your organization. - operationId: GetLogsCustomDestination - parameters: - - $ref: '#/components/parameters/CustomDestinationId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a custom destination - tags: - - Logs Custom Destinations - x-permission: - operator: OR - permissions: - - logs_read_config - - logs_read_data - patch: - description: Update the given fields of a specific custom destination in your - organization. - operationId: UpdateLogsCustomDestination - parameters: - - $ref: '#/components/parameters/CustomDestinationId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationUpdateRequest' - description: New definition of the custom destination's fields. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a custom destination - tags: - - Logs Custom Destinations - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_forwarding_rules - /api/v2/logs/config/metrics: - get: - description: Get the list of configured log-based metrics with their definitions. - operationId: ListLogsMetrics - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all log-based metrics - tags: - - Logs Metrics - x-permission: - operator: OR - permissions: - - logs_read_config - post: - description: 'Create a metric based on your ingested logs in your organization. - - Returns the log-based metric object from the request body when the request - is successful.' - operationId: CreateLogsMetric - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricCreateRequest' - description: The definition of the new log-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a log-based metric - tags: - - Logs Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_generate_metrics - /api/v2/logs/config/metrics/{metric_id}: - delete: - description: Delete a specific log-based metric from your organization. - operationId: DeleteLogsMetric - parameters: - - $ref: '#/components/parameters/MetricID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a log-based metric - tags: - - Logs Metrics - x-permission: - operator: OR - permissions: - - logs_generate_metrics - get: - description: Get a specific log-based metric from your organization. - operationId: GetLogsMetric - parameters: - - $ref: '#/components/parameters/MetricID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a log-based metric - tags: - - Logs Metrics - x-permission: - operator: OR - permissions: - - logs_read_config - patch: - description: 'Update a specific log-based metric from your organization. - - Returns the log-based metric object from the request body when the request - is successful.' - operationId: UpdateLogsMetric - parameters: - - $ref: '#/components/parameters/MetricID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricUpdateRequest' - description: New definition of the log-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a log-based metric - tags: - - Logs Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_generate_metrics - /api/v2/logs/events: - get: - description: 'List endpoint returns logs that match a log search query. - - [Results are paginated][1]. - - - Use this endpoint to search and filter your logs. - - - **If you are considering archiving logs for your organization, - - consider use of the Datadog archive capabilities instead of the log list API. - - See [Datadog Logs Archive documentation][2].** - - - [1]: /logs/guide/collect-multiple-logs-with-pagination - - [2]: https://docs.datadoghq.com/logs/archives' - operationId: ListLogsGet - parameters: - - description: Search query following logs syntax. - example: '@datacenter:us @role:db' - in: query - name: filter[query] - required: false - schema: - type: string - - description: 'For customers with multiple indexes, the indexes to search. - - Defaults to ''*'' which means all indexes' - example: - - main - - web - explode: false - in: query - name: filter[indexes] - required: false - schema: - items: - description: The name of a log index. - type: string - type: array - - description: Minimum timestamp for requested logs. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested logs. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Specifies the storage type to be used - example: indexes - in: query - name: filter[storage_tier] - required: false - schema: - $ref: '#/components/schemas/LogsStorageTier' - - description: Order of logs in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/LogsSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of logs in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search logs (GET) - tags: - - Logs - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - logs_read_data - /api/v2/logs/events/search: - post: - description: 'List endpoint returns logs that match a log search query. - - [Results are paginated][1]. - - - Use this endpoint to search and filter your logs. - - - **If you are considering archiving logs for your organization, - - consider use of the Datadog archive capabilities instead of the log list API. - - See [Datadog Logs Archive documentation][2].** - - - [1]: /logs/guide/collect-multiple-logs-with-pagination - - [2]: https://docs.datadoghq.com/logs/archives' - operationId: ListLogs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search logs (POST) - tags: - - Logs - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - logs_read_data - /api/v2/metrics: - get: - description: "Returns all metrics that can be configured in the Metrics Summary - page or with Metrics without Limits\u2122 (matching additional filters if - specified).\nOptionally, paginate by using the `page[cursor]` and/or `page[size]` - query parameters.\nTo fetch the first page, pass in a query parameter with - either a valid `page[size]` or an empty cursor like `page[cursor]=`. To fetch - the next page, pass in the `next_cursor` value from the response as the new - `page[cursor]` value.\nOnce the `meta.pagination.next_cursor` value is null, - all pages have been retrieved." - operationId: ListTagConfigurations - parameters: - - description: Filter custom metrics that have configured tags. - example: true - in: query - name: filter[configured] - required: false - schema: - type: boolean - - description: Filter tag configurations by configured tags. - example: app - in: query - name: filter[tags_configured] - required: false - schema: - description: Tag keys to filter by. - type: string - - description: Filter metrics by metric type. - in: query - name: filter[metric_type] - required: false - schema: - $ref: '#/components/schemas/MetricTagConfigurationMetricTypeCategory' - - description: 'Filter distributions with additional percentile - - aggregations enabled or disabled.' - example: true - in: query - name: filter[include_percentiles] - required: false - schema: - type: boolean - - description: '(Preview) Filter custom metrics that have or have not been queried - in the specified window[seconds]. - - If no window is provided or the window is less than 2 hours, a default of - 2 hours will be applied.' - example: true - in: query - name: filter[queried] - required: false - schema: - type: boolean - - description: 'Filter metrics that have been submitted with the given tags. - Supports boolean and wildcard expressions. - - Can only be combined with the filter[queried] filter.' - example: env IN (staging,test) AND service:web - in: query - name: filter[tags] - required: false - schema: - type: string - - description: (Preview) Filter metrics that are used in dashboards, monitors, - notebooks, SLOs. - example: true - in: query - name: filter[related_assets] - required: false - schema: - type: boolean - - description: 'The number of seconds of look back (from now) to apply to a - filter[tag] or filter[queried] query. - - Default value is 3600 (1 hour), maximum value is 2,592,000 (30 days).' - example: 3600 - in: query - name: window[seconds] - required: false - schema: - format: int64 - type: integer - - description: Maximum number of results returned. - in: query - name: page[size] - required: false - schema: - default: 10000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: 'String to query the next page of results. - - This key is provided with each valid response from the API in `meta.pagination.next_cursor`. - - Once the `meta.pagination.next_cursor` key is null, all pages have been - retrieved.' - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricsAndMetricTagConfigurationsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - metrics_read - summary: Get a list of metrics - tags: - - Metrics - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/config/bulk-tags: - delete: - description: 'Delete all custom lists of queryable tag keys for a set of existing - count, gauge, rate, and distribution metrics. - - Metrics are selected by passing a metric name prefix. - - Results can be sent to a set of account email addresses, just like the same - operation in the Datadog web app. - - Can only be used with application keys of users with the `Manage Tags for - Metrics` permission.' - operationId: DeleteBulkTagsMetricsConfiguration - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigDeleteRequest' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigResponse' - description: Accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Delete tags for multiple metrics - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - post: - description: 'Create and define a list of queryable tag keys for a set of existing - count, gauge, rate, and distribution metrics. - - Metrics are selected by passing a metric name prefix. Use the Delete method - of this API path to remove tag configurations. - - Results can be sent to a set of account email addresses, just like the same - operation in the Datadog web app. - - If multiple calls include the same metric, the last configuration applied - (not by submit order) is used, do not - - expect deterministic ordering of concurrent calls. The `exclude_tags_mode` - value will set all metrics that match the prefix to - - the same exclusion state, metric tag configurations do not support mixed inclusion - and exclusion for tags on the same metric. - - Can only be used with application keys of users with the `Manage Tags for - Metrics` permission.' - operationId: CreateBulkTagsMetricsConfiguration - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigCreateRequest' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigResponse' - description: Accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Configure tags for multiple metrics - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - /api/v2/metrics/{metric_name}/active-configurations: - get: - description: List tags and aggregations that are actively queried on dashboards, - notebooks, monitors, the Metrics Explorer, and using the API for a given metric - name. - operationId: ListActiveMetricConfigurations - parameters: - - $ref: '#/components/parameters/MetricName' - - description: 'The number of seconds of look back (from now). - - Default value is 604,800 (1 week), minimum value is 7200 (2 hours), maximum - value is 2,630,000 (1 month).' - example: 7200 - in: query - name: window[seconds] - required: false - schema: - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricSuggestedTagsAndAggregationsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: List active tags and aggregations - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/{metric_name}/all-tags: - get: - description: View indexed tag key-value pairs for a given metric name over the - previous hour. - operationId: ListTagsByMetricName - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricAllTagsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - metrics_read - summary: List tags by metric name - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/{metric_name}/assets: - get: - description: Returns dashboards, monitors, notebooks, and SLOs that a metric - is stored in, if any. Updated every 24 hours. - operationId: ListMetricAssets - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricAssetsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Related Assets to a Metric - tags: - - Metrics - /api/v2/metrics/{metric_name}/estimate: - get: - description: Returns the estimated cardinality for a metric with a given tag, - percentile and number of aggregations configuration using Metrics without - Limits™. - operationId: EstimateMetricsOutputSeries - parameters: - - $ref: '#/components/parameters/MetricName' - - description: Filtered tag keys that the metric is configured to query with. - example: app,host - in: query - name: filter[groups] - required: false - schema: - type: string - - description: The number of hours of look back (from now) to estimate cardinality - with. If unspecified, it defaults to 0 hours. - example: 49 - in: query - name: filter[hours_ago] - required: false - schema: - format: int32 - maximum: 2147483647 - minimum: 49 - type: integer - - description: Deprecated. Number of aggregations has no impact on volume. - example: 1 - in: query - name: filter[num_aggregations] - required: false - schema: - format: int32 - maximum: 9 - type: integer - - description: A boolean, for distribution metrics only, to estimate cardinality - if the metric includes additional percentile aggregators. - example: true - in: query - name: filter[pct] - required: false - schema: - type: boolean - - description: A window, in hours, from the look back to estimate cardinality - with. The minimum and default is 1 hour. - example: 6 - in: query - name: filter[timespan_h] - required: false - schema: - format: int32 - maximum: 2147483647 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricEstimateResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Tag Configuration Cardinality Estimator - tags: - - Metrics - x-permission: - operator: OPEN - permissions: [] - /api/v2/metrics/{metric_name}/tag-cardinalities: - get: - description: Returns the cardinality details of tags for a specific metric. - operationId: GetMetricTagCardinalityDetails - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagCardinalitiesResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Requests - summary: Get tag key cardinality details - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/{metric_name}/tags: - delete: - description: 'Deletes a metric''s tag configuration. Can only be used with application - - keys from users with the `Manage Tags for Metrics` permission.' - operationId: DeleteTagConfiguration - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Delete a tag configuration - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metric_tags_write - get: - description: Returns the tag configuration for the given metric name. - operationId: ListTagConfigurationByName - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: Success - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - metrics_read - summary: List tag configuration by name - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - patch: - description: 'Update the tag configuration of a metric or percentile aggregations - of a distribution metric or custom aggregations - - of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true - the behavior is changed - - from an allow-list to a deny-list, and tags in the defined list will not be - queryable. - - Can only be used with application keys from users with the `Manage Tags for - Metrics` permission. This endpoint requires - - a tag configuration to be created first.' - operationId: UpdateTagConfiguration - parameters: - - $ref: '#/components/parameters/MetricName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Update a tag configuration - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - post: - description: 'Create and define a list of queryable tag keys for an existing - count/gauge/rate/distribution metric. - - Optionally, include percentile aggregations on any distribution metric. By - setting `exclude_tags_mode` - - to true, the behavior is changed from an allow-list to a deny-list, and tags - in the defined list are - - not queryable. Can only be used with application keys of users with the `Manage - Tags for Metrics` - - permission.' - operationId: CreateTagConfiguration - parameters: - - $ref: '#/components/parameters/MetricName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Create a tag configuration - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - /api/v2/metrics/{metric_name}/volumes: - get: - description: 'View distinct metrics volumes for the given metric name. - - - Custom metrics generated in-app from other products will return `null` for - ingested volumes.' - operationId: ListVolumesByMetricName - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricVolumesResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: List distinct metric volumes by metric name - tags: - - Metrics - x-permission: - operator: OPEN - permissions: [] - /api/v2/monitor/notification_rule: - get: - description: Returns a list of all monitor notification rules. - operationId: GetMonitorNotificationRules - parameters: - - description: The page to start paginating from. If `page` is not specified, - the argument defaults to the first page. - in: query - name: page - required: false - schema: - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of rules to return per page. If `per_page` is not - specified, the argument defaults to 100. - in: query - name: per_page - required: false - schema: - format: int32 - maximum: 1000 - minimum: 1 - type: integer - - description: 'String for sort order, composed of field and sort order separated - by a colon, for example `name:asc`. Supported sort directions: `asc`, `desc`. - Supported fields: `name`, `created_at`.' - in: query - name: sort - required: false - schema: - type: string - - description: 'JSON-encoded filter object. Supported keys: - - * `text`: Free-text query matched against rule name, tags, and recipients. - - * `tags`: Array of strings. Return rules that have any of these tags. - - * `recipients`: Array of strings. Return rules that have any of these recipients.' - example: '{"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]}' - in: query - name: filters - required: false - schema: - type: string - - description: 'Comma-separated list of resource paths for related resources - to include in the response. Supported resource - - path is `created_by`.' - in: query - name: include - required: false - schema: - example: created_by - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleListResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get all monitor notification rules - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - post: - description: Creates a monitor notification rule. - operationId: CreateMonitorNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleCreateRequest' - description: Request body to create a monitor notification rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a monitor notification rule - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/notification_rule/{rule_id}: - delete: - description: Deletes a monitor notification rule by `rule_id`. - operationId: DeleteMonitorNotificationRule - parameters: - - description: ID of the monitor notification rule to delete. - in: path - name: rule_id - required: true - schema: - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a monitor notification rule - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - get: - description: Returns a monitor notification rule by `rule_id`. - operationId: GetMonitorNotificationRule - parameters: - - description: ID of the monitor notification rule to fetch. - in: path - name: rule_id - required: true - schema: - type: string - - description: 'Comma-separated list of resource paths for related resources - to include in the response. Supported resource - - path is `created_by`.' - in: query - name: include - required: false - schema: - example: created_by - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get a monitor notification rule - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - patch: - description: Updates a monitor notification rule by `rule_id`. - operationId: UpdateMonitorNotificationRule - parameters: - - description: ID of the monitor notification rule to update. - in: path - name: rule_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequest' - description: Request body to update the monitor notification rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a monitor notification rule - tags: - - Monitors - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/policy: - get: - description: Get all monitor configuration policies. - operationId: ListMonitorConfigPolicies - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyListResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get all monitor configuration policies - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - post: - description: Create a monitor configuration policy. - operationId: CreateMonitorConfigPolicy - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyCreateRequest' - description: Create a monitor configuration policy request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a monitor configuration policy - tags: - - Monitors - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/policy/{policy_id}: - delete: - description: Delete a monitor configuration policy. - operationId: DeleteMonitorConfigPolicy - parameters: - - description: ID of the monitor configuration policy. - in: path - name: policy_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a monitor configuration policy - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - get: - description: Get a monitor configuration policy by `policy_id`. - operationId: GetMonitorConfigPolicy - parameters: - - description: ID of the monitor configuration policy. - in: path - name: policy_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get a monitor configuration policy - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - patch: - description: Edit a monitor configuration policy. - operationId: UpdateMonitorConfigPolicy - parameters: - - description: ID of the monitor configuration policy. - in: path - name: policy_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyEditRequest' - description: Description of the update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit a monitor configuration policy - tags: - - Monitors - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/template: - get: - description: Retrieve all monitor user templates. - operationId: ListMonitorUserTemplates - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateListResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get all monitor user templates - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Create a new monitor user template. - operationId: CreateMonitorUserTemplate - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateCreateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/monitor/template/validate: - post: - description: Validate the structure and content of a monitor user template. - operationId: ValidateMonitorUserTemplate - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateCreateRequest' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/monitor/template/{template_id}: - delete: - description: Delete an existing monitor user template by its ID. - operationId: DeleteMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - type: string - responses: - '204': - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - get: - description: Retrieve a monitor user template by its ID. - operationId: GetMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - - description: Whether to include all versions of the template in the response - in the versions field. - example: false - in: query - name: with_all_versions - required: false - schema: - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateResponse' - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - put: - description: Creates a new version of an existing monitor user template. - operationId: UpdateMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a monitor user template to a new version - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/monitor/template/{template_id}/validate: - post: - description: Validate the structure and content of an existing monitor user - template being updated to a new version. - operationId: ValidateExistingMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateUpdateRequest' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate an existing monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/monitor/{monitor_id}/downtime_matches: - get: - description: Get all active downtimes for the specified monitor. - operationId: ListMonitorDowntimes - parameters: - - description: The id of the monitor. - in: path - name: monitor_id - required: true - schema: - format: int64 - type: integer - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of downtimes in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 30 - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorDowntimeMatchResponse' - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Monitor Not Found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Get active downtimes for a monitor - tags: - - Downtimes - x-codegen-request-body-name: body - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/ndm/devices: - get: - description: Get the list of devices. - operationId: ListDevices - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: The field to sort the devices by. - example: status - in: query - name: sort - required: false - schema: - type: string - - description: Filter devices by tag. - example: status:ok - in: query - name: filter[tag] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListDevicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of devices - tags: - - Network Device Monitoring - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - /api/v2/ndm/devices/{device_id}: - get: - description: Get the device details. - operationId: GetDevice - parameters: - - description: The id of the device to fetch. - example: example:1.2.3.4 - in: path - name: device_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetDeviceResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the device details - tags: - - Network Device Monitoring - /api/v2/ndm/interfaces: - get: - description: Get the list of interfaces of the device. - operationId: GetInterfaces - parameters: - - description: The ID of the device to get interfaces from. - example: example:1.2.3.4 - in: query - name: device_id - required: true - schema: - type: string - - description: Whether to get the IP addresses of the interfaces. - example: true - in: query - name: get_ip_addresses - required: false - schema: - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetInterfacesResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of interfaces of the device - tags: - - Network Device Monitoring - /api/v2/ndm/tags/devices/{device_id}: - get: - description: Get the list of tags for a device. - operationId: ListDeviceUserTags - parameters: - - description: The id of the device to fetch tags for. - example: example:1.2.3.4 - in: path - name: device_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of tags for a device - tags: - - Network Device Monitoring - patch: - description: Update the tags for a device. - operationId: UpdateDeviceUserTags - parameters: - - description: The id of the device to update tags for. - example: example:1.2.3.4 - in: path - name: device_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update the tags for a device - tags: - - Network Device Monitoring - /api/v2/network/connections/aggregate: - get: - description: Get all aggregated connections. - operationId: GetAggregatedConnections - parameters: - - description: Unix timestamp (number of seconds since epoch) of the start of - the query window. If not provided, the start of the query window is 15 minutes - before the `to` timestamp. If neither `from` nor `to` are provided, the - query window is `[now - 15m, now]`. - in: query - name: from - schema: - format: int64 - type: integer - - description: Unix timestamp (number of seconds since epoch) of the end of - the query window. If not provided, the end of the query window is the current - time. If neither `from` nor `to` are provided, the query window is `[now - - 15m, now]`. - in: query - name: to - schema: - format: int64 - type: integer - - description: Comma-separated list of fields to group connections by. The maximum - number of group_by(s) is 10. - in: query - name: group_by - schema: - type: string - - description: Comma-separated list of tags to filter connections by. - in: query - name: tags - schema: - type: string - - description: The number of connections to be returned. The maximum value is - 7500. The default is 100. - in: query - name: limit - schema: - default: 100 - format: int32 - maximum: 7500 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all aggregated connections - tags: - - Cloud Network Monitoring - /api/v2/network/dns/aggregate: - get: - description: Get all aggregated DNS traffic. - operationId: GetAggregatedDns - parameters: - - description: Unix timestamp (number of seconds since epoch) of the start of - the query window. If not provided, the start of the query window is 15 minutes - before the `to` timestamp. If neither `from` nor `to` are provided, the - query window is `[now - 15m, now]`. - in: query - name: from - schema: - format: int64 - type: integer - - description: Unix timestamp (number of seconds since epoch) of the end of - the query window. If not provided, the end of the query window is the current - time. If neither `from` nor `to` are provided, the query window is `[now - - 15m, now]`. - in: query - name: to - schema: - format: int64 - type: integer - - description: Comma-separated list of fields to group DNS traffic by. The server - side defaults to `network.dns_query` if unspecified. `server_ungrouped` - may be used if groups are not desired. The maximum number of group_by(s) - is 10. - in: query - name: group_by - schema: - type: string - - description: Comma-separated list of tags to filter DNS traffic by. - in: query - name: tags - schema: - type: string - - description: The number of aggregated DNS entries to be returned. The maximum - value is 7500. The default is 100. - in: query - name: limit - schema: - default: 100 - format: int32 - maximum: 7500 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SingleAggregatedDnsResponseArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all aggregated DNS traffic - tags: - - Cloud Network Monitoring - /api/v2/on-call/escalation-policies: - post: - description: Create a new On-Call escalation policy - operationId: CreateOnCallEscalationPolicy - parameters: - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`.' - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicy' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Create On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/escalation-policies/{policy_id}: - delete: - description: Delete an On-Call escalation policy - operationId: DeleteOnCallEscalationPolicy - parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - responses: - '204': - description: No Content - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - get: - description: Get an On-Call escalation policy - operationId: GetOnCallEscalationPolicy - parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`.' - in: query - name: include - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicy' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Update an On-Call escalation policy - operationId: UpdateOnCallEscalationPolicy - parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`.' - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicy' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Update On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/pages: - post: - description: 'Trigger a new On-Call Page. - - ' - operationId: CreateOnCallPage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreatePageRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreatePageResponse' - description: OK. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Create On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/acknowledge: - post: - description: 'Acknowledges an On-Call Page. - - ' - operationId: AcknowledgeOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Acknowledge On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/escalate: - post: - description: 'Escalates an On-Call Page. - - ' - operationId: EscalateOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Escalate On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/resolve: - post: - description: 'Resolves an On-Call Page. - - ' - operationId: ResolveOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Resolve On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/schedules: - post: - description: Create a new On-Call schedule - operationId: CreateOnCallSchedule - parameters: - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.' - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScheduleCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Create On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/schedules/{schedule_id}: - delete: - description: Delete an On-Call schedule - operationId: DeleteOnCallSchedule - parameters: - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - responses: - '204': - description: No Content - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - get: - description: Get an On-Call schedule - operationId: GetOnCallSchedule - parameters: - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.' - in: query - name: include - schema: - type: string - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: OK - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Update a new On-Call schedule - operationId: UpdateOnCallSchedule - parameters: - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.' - in: query - name: include - schema: - type: string - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScheduleUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Update On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/schedules/{schedule_id}/on-call: - get: - description: Retrieves the user who is on-call for the specified schedule at - a given time. - operationId: GetScheduleOnCallUser - parameters: - - description: 'Specifies related resources to include in the response as a - comma-separated list. Allowed value: `user`.' - in: query - name: include - schema: - type: string - - description: The ID of the schedule. - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - - description: Retrieves the on-call user at the given timestamp (ISO-8601). - Defaults to the current time if omitted." - in: query - name: filter[at_ts] - schema: - example: '2025-05-07T02:53:01Z' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Shift' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get the schedule on-call user - tags: - - On-Call - /api/v2/on-call/teams/{team_id}/on-call: - get: - description: Get a team's on-call users at a given time - operationId: GetTeamOnCallUsers - parameters: - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `responders`, `escalations`, `escalations.responders`.' - in: query - name: include - schema: - type: string - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamOnCallResponders' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get team on-call users - tags: - - On-Call - /api/v2/on-call/teams/{team_id}/routing-rules: - get: - description: Get a team's On-Call routing rules - operationId: GetOnCallTeamRoutingRules - parameters: - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `rules`, `rules.policy`.' - in: query - name: include - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamRoutingRules' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call team routing rules - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Set a team's On-Call routing rules - operationId: SetOnCallTeamRoutingRules - parameters: - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - - description: 'Comma-separated list of included relationships to be returned. - Allowed values: `rules`, `rules.policy`.' - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamRoutingRulesRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamRoutingRules' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Set On-Call team routing rules - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/org_configs: - get: - description: Returns all Org Configs (name, description, and value). - operationId: ListOrgConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Org Configs - tags: - - Organizations - x-permission: - operator: OPEN - permissions: [] - /api/v2/org_configs/{org_config_name}: - get: - description: Return the name, description, and value of a specific Org Config. - operationId: GetOrgConfig - parameters: - - $ref: '#/components/parameters/OrgConfigName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigGetResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a specific Org Config value - tags: - - Organizations - x-permission: - operator: OPEN - permissions: [] - patch: - description: Update the value of a specific Org Config. - operationId: UpdateOrgConfig - parameters: - - $ref: '#/components/parameters/OrgConfigName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigWriteRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigGetResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a specific Org Config - tags: - - Organizations - x-permission: - operator: OR - permissions: - - org_management - /api/v2/org_connections: - get: - description: Returns a list of org connections. - operationId: ListOrgConnections - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionListResponse' - description: OK - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_read - summary: List Org Connections - tags: - - Org Connections - x-permission: - operator: OR - permissions: - - org_connections_read - post: - description: Create a new org connection between the current org and a target - org. - operationId: CreateOrgConnections - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Create Org Connection - tags: - - Org Connections - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_connections_write - /api/v2/org_connections/{connection_id}: - delete: - description: Delete an existing org connection. - operationId: DeleteOrgConnections - parameters: - - $ref: '#/components/parameters/OrgConnectionId' - responses: - '200': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Delete Org Connection - tags: - - Org Connections - x-permission: - operator: OR - permissions: - - org_connections_write - patch: - description: Update an existing org connection. - operationId: UpdateOrgConnections - parameters: - - $ref: '#/components/parameters/OrgConnectionId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Update Org Connection - tags: - - Org Connections - x-permission: - operator: OR - permissions: - - org_connections_write - /api/v2/permissions: - get: - description: Returns a list of all permissions, including name, description, - and ID. - operationId: ListPermissions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List permissions - tags: - - Roles - x-permission: - operator: OR - permissions: - - user_access_read - /api/v2/posture_management/findings: - get: - description: "Get a list of findings. These include both misconfigurations and - identity risks.\n\n**Note**: To filter and return only identity risks, add - the following query parameter: `?filter[tags]=dd_rule_type:ciem`\n\n### Filtering\n\nFilters - can be applied by appending query parameters to the URL.\n\n - Using a single - filter: `?filter[attribute_key]=attribute_value`\n - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...`\n - \ - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2`\n\nHere, - `attribute_key` can be any of the filter keys described further below.\n\nQuery - parameters of type `integer` support comparison operators (`>`, `>=`, `<`, - `<=`). This is particularly useful when filtering by `evaluation_changed_at` - or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`.\n\nYou - can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` - to filter for any non-AWS resources.\n\nThe operator must come after the equal - sign. For example, to filter with the `>=` operator, add the operator after - the equal sign: `filter[evaluation_changed_at]=>=1678809373257`.\n\nQuery - parameters must be only among the documented ones and with values of correct - types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) - are not allowed.\n\n### Additional extension fields\n\nAdditional extension - fields are available for some findings.\n\nThe data is available when you - include the query parameter `?detailed_findings=true` in the request.\n\nThe - following fields are available for findings:\n- `external_id`: The resource - external ID related to the finding.\n- `description`: The description and - remediation steps for the finding.\n- `datadog_link`: The Datadog relative - link for the finding.\n- `ip_addresses`: The list of private IP addresses - for the resource related to the finding.\n\n### Response\n\nThe response includes - an array of finding objects, pagination metadata, and a count of items that - match the query.\n\nEach finding object contains the following:\n\n- The finding - ID that can be used in a `GetFinding` request to retrieve the full finding - details.\n- Core attributes, including status, evaluation, high-level resource - details, muted state, and rule details.\n- `evaluation_changed_at` and `resource_discovery_date` - time stamps.\n- An array of associated tags.\n" - operationId: ListFindings - parameters: - - description: Limit the number of findings returned. Must be <= 1000. - example: 50 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - maximum: 1000 - minimum: 1 - type: integer - - description: Return findings for a given snapshot of time (Unix ms). - example: 1678721573794 - in: query - name: snapshot_timestamp - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Return the next page of findings pointed to by the cursor. - example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Return findings that have these associated tags (repeatable). - example: filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999 - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Return findings that have changed from pass to fail or vice versa - on a specified date (Unix ms) or date range (using comparison operators). - example: '>=1678721573794' - in: query - name: filter[evaluation_changed_at] - required: false - schema: - type: string - - description: Set to `true` to return findings that are muted. Set to `false` - to return unmuted findings. - in: query - name: filter[muted] - required: false - schema: - type: boolean - - description: Return findings for the specified rule ID. - in: query - name: filter[rule_id] - required: false - schema: - type: string - - description: Return findings for the specified rule. - in: query - name: filter[rule_name] - required: false - schema: - type: string - - description: Return only findings for the specified resource type. - in: query - name: filter[resource_type] - required: false - schema: - type: string - - description: Return only findings for the specified resource id. - in: query - name: filter[@resource_id] - required: false - schema: - type: string - - description: Return findings that were found on a specified date (Unix ms) - or date range (using comparison operators). - example: '>=1678721573794' - in: query - name: filter[discovery_timestamp] - required: false - schema: - type: string - - description: Return only `pass` or `fail` findings. - example: pass - in: query - name: filter[evaluation] - required: false - schema: - $ref: '#/components/schemas/FindingEvaluation' - - description: Return only findings with the specified status. - example: critical - in: query - name: filter[status] - required: false - schema: - $ref: '#/components/schemas/FindingStatus' - - description: Return findings that match the selected vulnerability types (repeatable). - example: - - misconfiguration - explode: true - in: query - name: filter[vulnerability_type] - required: false - schema: - items: - $ref: '#/components/schemas/FindingVulnerabilityType' - type: array - - description: Return additional fields for some findings. - example: - - true - in: query - name: detailed_findings - required: false - schema: - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListFindingsResponse' - description: OK - '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_findings_read - summary: List findings - tags: - - Security Monitoring - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.cursor - limitParam: page[limit] - resultsPath: data - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - patch: - description: Mute or unmute findings. - operationId: MuteFindings - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BulkMuteFindingsRequest' - description: "### Attributes\n\nAll findings are updated with the same attributes. - The request body must include at least two attributes: `muted` and `reason`.\nThe - allowed reasons depend on whether the finding is being muted or unmuted:\n - \ - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `ACCEPTED_RISK`, - `OTHER`.\n - To unmute a finding : `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, - `OTHER`.\n\n### Meta\n\nThe request body must include a list of the finding - IDs to be updated.\n" - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BulkMuteFindingsResponse' - description: OK - '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Invalid Request: The server understands the request syntax - but cannot process it due to invalid data.' - '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Mute or unmute a batch of findings - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/posture_management/findings/{finding_id}: - get: - description: Returns a single finding with message and resource configuration. - operationId: GetFinding - parameters: - - description: The ID of the finding. - in: path - name: finding_id - required: true - schema: - type: string - - description: Return the finding for a given snapshot of time (Unix ms). - example: 1678721573794 - in: query - name: snapshot_timestamp - required: false - schema: - format: int64 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetFindingResponse' - description: OK - '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_findings_read - summary: Get a finding - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/powerpacks: - get: - description: Get a list of all powerpacks. - operationId: ListPowerpacks - parameters: - - description: Maximum number of powerpacks in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 25 - format: int64 - maximum: 1000 - type: integer - - $ref: '#/components/parameters/PageOffset' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListPowerpacksResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_read - summary: Get all powerpacks - tags: - - Powerpack - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - dashboards_read - post: - description: Create a powerpack. - operationId: CreatePowerpack - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/Powerpack' - description: Create a powerpack request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PowerpackResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_write - summary: Create a new powerpack - tags: - - Powerpack - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dashboards_write - /api/v2/powerpacks/{powerpack_id}: - delete: - description: Delete a powerpack. - operationId: DeletePowerpack - parameters: - - description: Powerpack id - in: path - name: powerpack_id - required: true - schema: - type: string - responses: - '204': - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_write - summary: Delete a powerpack - tags: - - Powerpack - x-permission: - operator: OR - permissions: - - dashboards_write - get: - description: Get a powerpack. - operationId: GetPowerpack - parameters: - - description: ID of the powerpack. - in: path - name: powerpack_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PowerpackResponse' - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_read - summary: Get a Powerpack - tags: - - Powerpack - x-permission: - operator: OR - permissions: - - dashboards_read - patch: - description: Update a powerpack. - operationId: UpdatePowerpack - parameters: - - description: ID of the powerpack. - in: path - name: powerpack_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/Powerpack' - description: Update a powerpack request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PowerpackResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_write - summary: Update a powerpack - tags: - - Powerpack - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dashboards_write - /api/v2/processes: - get: - description: Get all processes for your organization. - operationId: ListProcesses - parameters: - - description: String to search processes by. - in: query - name: search - required: false - schema: - type: string - - description: Comma-separated list of tags to filter processes by. - example: account:prod,user:admin - in: query - name: tags - required: false - schema: - type: string - - description: 'Unix timestamp (number of seconds since epoch) of the start - of the query window. - - If not provided, the start of the query window will be 15 minutes before - the `to` timestamp. If neither - - `from` nor `to` are provided, the query window will be `[now - 15m, now]`.' - in: query - name: from - required: false - schema: - format: int64 - type: integer - - description: 'Unix timestamp (number of seconds since epoch) of the end of - the query window. - - If not provided, the end of the query window will be 15 minutes after the - `from` timestamp. If neither - - `from` nor `to` are provided, the query window will be `[now - 15m, now]`.' - in: query - name: to - required: false - schema: - format: int64 - type: integer - - description: Maximum number of results returned. - in: query - name: page[limit] - required: false - schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: 'String to query the next page of results. - - This key is provided with each valid response from the API in `meta.page.after`.' - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProcessSummariesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get all processes - tags: - - Processes - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/query/scalar: - post: - description: 'Query scalar values (as seen on Query Value, Table, and Toplist - widgets). - - Multiple data sources are supported with the ability to - - process the data using formulas and functions.' - operationId: QueryScalarData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScalarFormulaQueryRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ScalarFormulaQueryResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - timeseries_query - summary: Query scalar data across multiple products - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - timeseries_query - /api/v2/query/timeseries: - post: - description: 'Query timeseries data across various data sources and - - process the data by applying formulas and functions.' - operationId: QueryTimeseriesData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TimeseriesFormulaQueryRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TimeseriesFormulaQueryResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - timeseries_query - summary: Query timeseries data across multiple products - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - timeseries_query - /api/v2/remote_config/products/asm/waf/custom_rules: - get: - description: Retrieve a list of WAF custom rule. - operationId: ListApplicationSecurityWAFCustomRules - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all WAF custom rules - tags: - - Application Security - post: - description: Create a new WAF custom rule with the given parameters. - operationId: CreateApplicationSecurityWafCustomRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCreateRequest' - description: The definition of the new WAF Custom Rule. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a WAF custom rule - tags: - - Application Security - x-codegen-request-body-name: body - /api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}: - delete: - description: Delete a specific WAF custom rule. - operationId: DeleteApplicationSecurityWafCustomRule - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafCustomRuleIDParam' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a WAF Custom Rule - tags: - - Application Security - x-terraform-resource: appsec_waf_custom_rule - get: - description: Retrieve a WAF custom rule by ID. - operationId: GetApplicationSecurityWafCustomRule - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafCustomRuleIDParam' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a WAF custom rule - tags: - - Application Security - x-terraform-resource: appsec_waf_custom_rule - put: - description: 'Update a specific WAF custom Rule. - - Returns the Custom Rule object when the request is successful.' - operationId: UpdateApplicationSecurityWafCustomRule - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafCustomRuleIDParam' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleUpdateRequest' - description: New definition of the WAF Custom Rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a WAF Custom Rule - tags: - - Application Security - x-codegen-request-body-name: body - x-terraform-resource: appsec_waf_custom_rule - /api/v2/remote_config/products/asm/waf/exclusion_filters: - get: - description: Retrieve a list of WAF exclusion filters. - operationId: ListApplicationSecurityWafExclusionFilters - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all WAF exclusion filters - tags: - - Application Security - x-permission: - operator: AND - permissions: - - appsec_protect_read - x-terraform-resource: appsec_waf_exclusion_filter - post: - description: 'Create a new WAF exclusion filter with the given parameters. - - - A request matched by an exclusion filter will be ignored by the Application - Security WAF product. - - Go to https://app.datadoghq.com/security/appsec/passlist to review existing - exclusion filters (also called passlist entries).' - operationId: CreateApplicationSecurityWafExclusionFilter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterCreateRequest' - description: The definition of the new WAF exclusion filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a WAF exclusion filter - tags: - - Application Security - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - appsec_protect_write - x-terraform-resource: appsec_waf_exclusion_filter - /api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id}: - delete: - description: Delete a specific WAF exclusion filter using its identifier. - operationId: DeleteApplicationSecurityWafExclusionFilter - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafExclusionFilterID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a WAF exclusion filter - tags: - - Application Security - x-permission: - operator: AND - permissions: - - appsec_protect_write - x-terraform-resource: appsec_waf_exclusion_filter - get: - description: Retrieve a specific WAF exclusion filter using its identifier. - operationId: GetApplicationSecurityWafExclusionFilter - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafExclusionFilterID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a WAF exclusion filter - tags: - - Application Security - x-permission: - operator: AND - permissions: - - appsec_protect_read - x-terraform-resource: appsec_waf_exclusion_filter - put: - description: 'Update a specific WAF exclusion filter using its identifier. - - Returns the exclusion filter object when the request is successful.' - operationId: UpdateApplicationSecurityWafExclusionFilter - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafExclusionFilterID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateRequest' - description: The exclusion filter to update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a WAF exclusion filter - tags: - - Application Security - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - appsec_protect_write - x-terraform-resource: appsec_waf_exclusion_filter - /api/v2/remote_config/products/cws/agent_rules: - get: - description: 'Get the list of Workload Protection agent rules. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: ListCSMThreatsAgentRules - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRulesListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection agent rules - tags: - - CSM Threats - post: - description: 'Create a new Workload Protection agent rule with the given parameters. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: CreateCSMThreatsAgentRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' - description: The definition of the new agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection agent rule - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/cws/agent_rules/{agent_rule_id}: - delete: - description: 'Delete a specific Workload Protection agent rule. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: DeleteCSMThreatsAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection agent rule - tags: - - CSM Threats - get: - description: 'Get the details of a specific Workload Protection agent rule. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: GetCSMThreatsAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection agent rule - tags: - - CSM Threats - patch: - description: 'Update a specific Workload Protection Agent rule. - - Returns the agent rule object when the request is successful. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: UpdateCSMThreatsAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' - description: New definition of the agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection agent rule - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/cws/policy: - get: - description: 'Get the list of Workload Protection policies. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: ListCSMThreatsAgentPolicies - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPoliciesListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection policies - tags: - - CSM Threats - post: - description: 'Create a new Workload Protection policy with the given parameters. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: CreateCSMThreatsAgentPolicy - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateRequest' - description: The definition of the new Agent policy - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection policy - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/cws/policy/download: - get: - description: 'The download endpoint generates a Workload Protection policy file - from your currently active - - Workload Protection agent rules, and downloads them as a `.policy` file. This - file can then be deployed to - - your agents to update the policy running in your environment. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: DownloadCSMThreatsPolicy - responses: - '200': - content: - application/zip: - schema: - format: binary - type: string - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Download the Workload Protection policy - tags: - - CSM Threats - /api/v2/remote_config/products/cws/policy/{policy_id}: - delete: - description: 'Delete a specific Workload Protection policy. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: DeleteCSMThreatsAgentPolicy - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' - responses: - '202': - description: OK - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection policy - tags: - - CSM Threats - get: - description: 'Get the details of a specific Workload Protection policy. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: GetCSMThreatsAgentPolicy - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection policy - tags: - - CSM Threats - patch: - description: 'Update a specific Workload Protection policy. - - Returns the policy object when the request is successful. - - - **Note**: This endpoint is not available for the Government (US1-FED) site. - Please reference the (US1-FED) specific resource below.' - operationId: UpdateCSMThreatsAgentPolicy - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateRequest' - description: New definition of the Agent policy - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection policy - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/obs_pipelines/pipelines: - get: - description: Retrieve a list of pipelines. - operationId: ListPipelines - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListPipelinesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List pipelines - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: '**Note**: This endpoint is in Preview. Fill out this [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access.' - post: - description: Create a new pipeline. - operationId: CreatePipeline - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipelineSpec' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_deploy - x-unstable: '**Note**: This endpoint is in Preview. Fill out this [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access.' - /api/v2/remote_config/products/obs_pipelines/pipelines/validate: - post: - description: 'Validates a pipeline configuration without creating or updating - any resources. - - Returns a list of validation errors, if any. - - ' - operationId: ValidatePipeline - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipelineSpec' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ValidationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate an observability pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: '**Note**: This endpoint is in Preview. Fill out this [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access.' - /api/v2/remote_config/products/obs_pipelines/pipelines/{pipeline_id}: - delete: - description: Delete a pipeline. - operationId: DeletePipeline - parameters: - - description: The ID of the pipeline to delete. - in: path - name: pipeline_id - required: true - schema: - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_delete - x-unstable: '**Note**: This endpoint is in Preview. Fill out this [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access.' - get: - description: Get a specific pipeline by its ID. - operationId: GetPipeline - parameters: - - description: The ID of the pipeline to retrieve. - in: path - name: pipeline_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a specific pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: '**Note**: This endpoint is in Preview. Fill out this [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access.' - put: - description: Update a pipeline. - operationId: UpdatePipeline - parameters: - - description: The ID of the pipeline to update. - in: path - name: pipeline_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_deploy - x-unstable: '**Note**: This endpoint is in Preview. Fill out this [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access.' - /api/v2/restriction_policy/{resource_id}: - delete: - description: Deletes the restriction policy associated with a specified resource. - operationId: DeleteRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete a restriction policy - tags: - - Restriction Policies - x-permission: - operator: OPEN - permissions: [] - get: - description: Retrieves the restriction policy associated with a specified resource. - operationId: GetRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get a restriction policy - tags: - - Restriction Policies - x-permission: - operator: OPEN - permissions: [] - post: - description: 'Updates the restriction policy associated with a resource. - - - #### Supported resources - - Restriction policies can be applied to the following resources: - - - Dashboards: `dashboard` - - - Integration Services: `integration-service` - - - Integration Webhooks: `integration-webhook` - - - Notebooks: `notebook` - - - Powerpacks: `powerpack` - - - Reference Tables: `reference-table` - - - Security Rules: `security-rule` - - - Service Level Objectives: `slo` - - - Synthetic Global Variables: `synthetics-global-variable` - - - Synthetic Tests: `synthetics-test` - - - Synthetic Private Locations: `synthetics-private-location` - - - Monitors: `monitor` - - - Workflows: `workflow` - - - App Builder Apps: `app-builder-app` - - - Connections: `connection` - - - Connection Groups: `connection-group` - - - RUM Applications: `rum-application` - - - Cross Org Connections: `cross-org-connection` - - - Spreadsheets: `spreadsheet` - - - On-Call Schedules: `on-call-schedule` - - - On-Call Escalation Policies: `on-call-escalation-policy` - - - On-Call Team Routing Rules: `on-call-team-routing-rules` - - - #### Supported relations for resources - - Resource Type | Supported Relations - - ----------------------------|-------------------------- - - Dashboards | `viewer`, `editor` - - Integration Services | `viewer`, `editor` - - Integration Webhooks | `viewer`, `editor` - - Notebooks | `viewer`, `editor` - - Powerpacks | `viewer`, `editor` - - Security Rules | `viewer`, `editor` - - Service Level Objectives | `viewer`, `editor` - - Synthetic Global Variables | `viewer`, `editor` - - Synthetic Tests | `viewer`, `editor` - - Synthetic Private Locations | `viewer`, `editor` - - Monitors | `viewer`, `editor` - - Reference Tables | `viewer`, `editor` - - Workflows | `viewer`, `runner`, `editor` - - App Builder Apps | `viewer`, `editor` - - Connections | `viewer`, `resolver`, `editor` - - Connection Groups | `viewer`, `editor` - - RUM Application | `viewer`, `editor` - - Cross Org Connections | `viewer`, `editor` - - Spreadsheets | `viewer`, `editor` - - On-Call Schedules | `viewer`, `overrider`, `editor` - - On-Call Escalation Policies | `viewer`, `editor` - - On-Call Team Routing Rules | `viewer`, `editor`' - operationId: UpdateRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - - description: Allows admins (users with the `user_access_manage` permission) - to remove their own access from the resource if set to `true`. By default, - this is set to `false`, preventing admins from locking themselves out. - in: query - name: allow_self_lockout - required: false - schema: - type: boolean - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyUpdateRequest' - description: Restriction policy payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Update a restriction policy - tags: - - Restriction Policies - x-codegen-request-body-name: body - x-permission: - operator: OPEN - permissions: [] - /api/v2/roles: - get: - description: Returns all roles, including their names and their unique identifiers. - operationId: ListRoles - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: 'Sort roles depending on the given field. Sort order is **ascending** - by default. - - Sort order is **descending** if the field is prefixed by a negative sign, - for example: - - `sort=-name`.' - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/RolesSort' - - description: Filter all roles by the given string. - in: query - name: filter - required: false - schema: - type: string - - description: Filter all roles by the given list of role IDs. - in: query - name: filter[id] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RolesResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List roles - tags: - - Roles - x-permission: - operator: OR - permissions: - - user_access_read - post: - description: Create a new role for your organization. - operationId: CreateRole - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCreateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}: - delete: - description: Disables a role. - operationId: DeleteRole - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Delete role - tags: - - Roles - x-codegen-request-body-name: body - get: - description: "Get a role in the organization specified by the role\u2019s `role_id`." - operationId: GetRole - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a role - tags: - - Roles - x-codegen-request-body-name: body - patch: - description: Edit a role. Can only be used with application keys belonging to - administrators. - operationId: UpdateRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Update a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}/clone: - post: - description: Clone an existing role - operationId: CloneRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCloneRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create a new role by cloning an existing role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}/permissions: - delete: - description: Removes a permission from a role. - operationId: RemovePermissionFromRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToPermission' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Revoke permission - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Returns a list of all permissions for a single role. - operationId: ListRolePermissions - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List permissions for a role - tags: - - Roles - x-codegen-request-body-name: body - post: - description: Adds a permission to a role. - operationId: AddPermissionToRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToPermission' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Grant permission to a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}/users: - delete: - description: Removes a user from a role. - operationId: RemoveUserFromRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToUser' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Remove a user from a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Gets all users of a role. - operationId: ListRoleUsers - parameters: - - $ref: '#/components/parameters/RoleID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: 'User attribute to order results by. Sort order is **ascending** - by default. - - Sort order is **descending** if the field is prefixed by a negative sign, - - for example `sort=-name`. Options: `name`, `email`, `status`.' - in: query - name: sort - required: false - schema: - default: name - type: string - - description: Filter all users by the given string. Defaults to no filtering. - in: query - name: filter - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get all users of a role - tags: - - Roles - post: - description: Adds a user to a role. - operationId: AddUserToRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToUser' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Add a user to a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/rum/analytics/aggregate: - post: - description: The API endpoint to aggregate RUM events into buckets of computed - metrics and timeseries. - operationId: AggregateRUMEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMAnalyticsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Aggregate RUM events - tags: - - RUM - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - rum_apps_read - /api/v2/rum/applications: - get: - description: List all the RUM applications in your organization. - operationId: GetRUMApplications - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationsResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all the RUM applications - tags: - - RUM - x-permission: - operator: OR - permissions: - - rum_apps_read - post: - description: Create a new RUM application in your organization. - operationId: CreateRUMApplication - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new RUM application - tags: - - RUM - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - rum_apps_write - /api/v2/rum/applications/{app_id}/relationships/retention_filters: - patch: - description: 'Order RUM retention filters for a RUM application. - - Returns RUM retention filter objects without attributes from the request body - when the request is successful.' - operationId: OrderRetentionFilters - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFiltersOrderRequest' - description: New definition of the RUM retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFiltersOrderResponse' - description: Ordered - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Order RUM retention filters - tags: - - Rum Retention Filters - x-codegen-request-body-name: body - /api/v2/rum/applications/{app_id}/retention_filters: - get: - description: Get the list of RUM retention filters for a RUM application. - operationId: ListRetentionFilters - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all RUM retention filters - tags: - - Rum Retention Filters - post: - description: 'Create a RUM retention filter for a RUM application. - - Returns RUM retention filter objects from the request body when the request - is successful.' - operationId: CreateRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterCreateRequest' - description: The definition of the new RUM retention filter. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a RUM retention filter - tags: - - Rum Retention Filters - x-codegen-request-body-name: body - /api/v2/rum/applications/{app_id}/retention_filters/{rf_id}: - delete: - description: Delete a RUM retention filter for a RUM application. - operationId: DeleteRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a RUM retention filter - tags: - - Rum Retention Filters - get: - description: Get a RUM retention filter for a RUM application. - operationId: GetRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a RUM retention filter - tags: - - Rum Retention Filters - patch: - description: 'Update a RUM retention filter for a RUM application. - - Returns RUM retention filter objects from the request body when the request - is successful.' - operationId: UpdateRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterUpdateRequest' - description: New definition of the RUM retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: Updated - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a RUM retention filter - tags: - - Rum Retention Filters - x-codegen-request-body-name: body - /api/v2/rum/applications/{id}: - delete: - description: Delete an existing RUM application in your organization. - operationId: DeleteRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: No Content - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a RUM application - tags: - - RUM - x-permission: - operator: OR - permissions: - - rum_apps_write - get: - description: Get the RUM application with given ID in your organization. - operationId: GetRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a RUM application - tags: - - RUM - x-permission: - operator: OR - permissions: - - rum_apps_read - patch: - description: Update the RUM application with given ID in your organization. - operationId: UpdateRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a RUM application - tags: - - RUM - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - rum_apps_write - /api/v2/rum/config/metrics: - get: - description: Get the list of configured rum-based metrics with their definitions. - operationId: ListRumMetrics - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all rum-based metrics - tags: - - Rum Metrics - post: - description: 'Create a metric based on your organization''s RUM data. - - Returns the rum-based metric object from the request body when the request - is successful.' - operationId: CreateRumMetric - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricCreateRequest' - description: The definition of the new rum-based metric. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a rum-based metric - tags: - - Rum Metrics - x-codegen-request-body-name: body - /api/v2/rum/config/metrics/{metric_id}: - delete: - description: Delete a specific rum-based metric from your organization. - operationId: DeleteRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a rum-based metric - tags: - - Rum Metrics - get: - description: Get a specific rum-based metric from your organization. - operationId: GetRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a rum-based metric - tags: - - Rum Metrics - patch: - description: 'Update a specific rum-based metric from your organization. - - Returns the rum-based metric object from the request body when the request - is successful.' - operationId: UpdateRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricUpdateRequest' - description: New definition of the rum-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a rum-based metric - tags: - - Rum Metrics - x-codegen-request-body-name: body - /api/v2/rum/events: - get: - description: 'List endpoint returns events that match a RUM search query. - - [Results are paginated][1]. - - - Use this endpoint to see your latest RUM events. - - - [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination' - operationId: ListRUMEvents - parameters: - - description: Search query following RUM syntax. - example: '@type:session @application_id:xxxx' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/RUMSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of RUM events - tags: - - RUM - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - rum_apps_read - /api/v2/rum/events/search: - post: - description: 'List endpoint returns RUM events that match a RUM search query. - - [Results are paginated][1]. - - - Use this endpoint to build complex RUM events filtering and search. - - - [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination' - operationId: SearchRUMEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMSearchEventsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search RUM events - tags: - - RUM - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - rum_apps_read - /api/v2/saml_configurations/idp_metadata: - post: - description: 'Endpoint for uploading IdP metadata for SAML setup. - - - Use this endpoint to upload or replace IdP metadata for SAML login configuration.' - operationId: UploadIdPMetadata - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/IdPMetadataFormData' - required: true - responses: - '200': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Upload IdP metadata - tags: - - Organizations - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_management - /api/v2/scorecard/outcomes: - get: - description: Fetches all rule outcomes. - operationId: ListScorecardOutcomes - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - description: Include related rule details in the response. - in: query - name: include - required: false - schema: - example: rule - type: string - - description: Return only specified values in the outcome attributes. - in: query - name: fields[outcome] - required: false - schema: - example: state, service_name - type: string - - description: Return only specified values in the included rule details. - in: query - name: fields[rule] - required: false - schema: - example: name - type: string - - description: Filter the outcomes on a specific service name. - in: query - name: filter[outcome][service_name] - required: false - schema: - example: web-store - type: string - - description: Filter the outcomes by a specific state. - in: query - name: filter[outcome][state] - required: false - schema: - example: fail - type: string - - description: Filter outcomes on whether a rule is enabled/disabled. - in: query - name: filter[rule][enabled] - required: false - schema: - example: true - type: boolean - - description: Filter outcomes based on rule ID. - in: query - name: filter[rule][id] - required: false - schema: - example: f4485c79-0762-449c-96cf-c31e54a659f6 - type: string - - description: Filter outcomes based on rule name. - in: query - name: filter[rule][name] - required: false - schema: - example: SLOs Defined - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OutcomesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: List all rule outcomes - tags: - - Service Scorecards - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Updates multiple scorecard rule outcomes in a single batched request. - operationId: UpdateScorecardOutcomesAsync - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateOutcomesAsyncRequest' - description: Set of scorecard outcomes. - required: true - responses: - '202': - description: Accepted - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Update Scorecard outcomes asynchronously - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/scorecard/outcomes/batch: - post: - description: Sets multiple service-rule outcomes in a single batched request. - operationId: CreateScorecardOutcomesBatch - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OutcomesBatchRequest' - description: Set of scorecard outcomes. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OutcomesBatchResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create outcomes batch - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/scorecard/rules: - get: - description: Fetch all rules. - operationId: ListScorecardRules - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - description: Include related scorecard details in the response. - in: query - name: include - required: false - schema: - example: scorecard - type: string - - description: Filter the rules on a rule ID. - in: query - name: filter[rule][id] - required: false - schema: - example: 37d2f990-c885-4972-949b-8b798213a166 - type: string - - description: Filter for enabled rules only. - in: query - name: filter[rule][enabled] - required: false - schema: - example: true - type: boolean - - description: Filter for custom rules only. - in: query - name: filter[rule][custom] - required: false - schema: - example: true - type: boolean - - description: Filter rules on the rule name. - in: query - name: filter[rule][name] - required: false - schema: - example: Code Repos Defined - type: string - - description: Filter rules on the rule description. - in: query - name: filter[rule][description] - required: false - schema: - example: Identifying - type: string - - description: Return only specific fields in the response for rule attributes. - in: query - name: fields[rule] - required: false - schema: - example: name, description - type: string - - description: Return only specific fields in the included response for scorecard - attributes. - in: query - name: fields[scorecard] - required: false - schema: - example: name - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListRulesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: List all rules - tags: - - Service Scorecards - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: Creates a new rule. - operationId: CreateScorecardRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateRuleRequest' - description: Rule attributes. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateRuleResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create a new rule - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/scorecard/rules/{rule_id}: - delete: - description: Deletes a single rule. - operationId: DeleteScorecardRule - parameters: - - $ref: '#/components/parameters/RuleId' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a rule - tags: - - Service Scorecards - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - put: - description: Updates an existing rule. - operationId: UpdateScorecardRule - parameters: - - $ref: '#/components/parameters/RuleId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateRuleRequest' - description: Rule attributes. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateRuleResponse' - description: Rule updated successfully - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Update an existing rule - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: '**Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/security/assets: - get: - description: 'Get a list of vulnerable assets. - - - ### Pagination - - - Please review the [Pagination section for the "List Vulnerabilities"](#pagination) - endpoint. - - - ### Filtering - - - Please review the [Filtering section for the "List Vulnerabilities"](#filtering) - endpoint. - - - ### Metadata - - - Please review the [Metadata section for the "List Vulnerabilities"](#metadata) - endpoint. - - ' - operationId: ListVulnerableAssets - parameters: - - description: Its value must come from the `links` section of the response - of the first request. Do not manually edit it. - example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: The page number to be retrieved. It should be equal or greater - than `1` - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Filter by name. - example: datadog-agent - in: query - name: filter[name] - required: false - schema: - type: string - - description: Filter by type. - example: Host - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: Filter by the first version of the asset since it has been vulnerable. - example: v1.15.1 - in: query - name: filter[version.first] - required: false - schema: - type: string - - description: Filter by the last detected version of the asset. - example: v1.15.1 - in: query - name: filter[version.last] - required: false - schema: - type: string - - description: Filter by the repository url associated to the asset. - example: github.com/DataDog/datadog-agent.git - in: query - name: filter[repository_url] - required: false - schema: - type: string - - description: Filter whether the asset is in production or not. - example: false - in: query - name: filter[risks.in_production] - required: false - schema: - type: boolean - - description: Filter whether the asset (Service) is under attack or not. - example: false - in: query - name: filter[risks.under_attack] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) is publicly accessible or not. - example: false - in: query - name: filter[risks.is_publicly_accessible] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) has privileged access or not. - example: false - in: query - name: filter[risks.has_privileged_access] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) has access to sensitive data - or not. - example: false - in: query - name: filter[risks.has_access_to_sensitive_data] - required: false - schema: - type: boolean - - description: Filter by environment. - example: staging - in: query - name: filter[environments] - required: false - schema: - type: string - - description: Filter by teams. - example: compute - in: query - name: filter[teams] - required: false - schema: - type: string - - description: Filter by architecture. - example: arm64 - in: query - name: filter[arch] - required: false - schema: - type: string - - description: Filter by operating system name. - example: ubuntu - in: query - name: filter[operating_system.name] - required: false - schema: - type: string - - description: Filter by operating system version. - example: '24.04' - in: query - name: filter[operating_system.version] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListVulnerableAssetsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Bad request: The server cannot process the request due to - invalid syntax in the request.' - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: There is no request associated with the provided - token.' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List vulnerable assets - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9).' - /api/v2/security/cloud_workload/policy/download: - get: - description: 'The download endpoint generates a Workload Protection policy file - from your currently active - - Workload Protection agent rules, and downloads them as a `.policy` file. This - file can then be deployed to - - your agents to update the policy running in your environment. - - - **Note**: This endpoint should only be used for the Government (US1-FED) site.' - operationId: DownloadCloudWorkloadPolicyFile - responses: - '200': - content: - application/yaml: - schema: - format: binary - type: string - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Download the Workload Protection policy (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_read - /api/v2/security/sboms: - get: - description: 'Get a list of assets SBOMs for an organization. - - - ### Pagination - - - Please review the [Pagination section](#pagination) for the "List Vulnerabilities" - endpoint. - - - ### Filtering - - - Please review the [Filtering section](#filtering) for the "List Vulnerabilities" - endpoint. - - - ### Metadata - - - Please review the [Metadata section](#metadata) for the "List Vulnerabilities" - endpoint.' - operationId: ListAssetsSBOMs - parameters: - - description: Its value must come from the `links` section of the response - of the first request. Do not manually edit it. - example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: The page number to be retrieved. It should be equal to or greater - than 1. - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: The type of the assets for the SBOM request. - example: Repository - in: query - name: filter[asset_type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: The name of the asset for the SBOM request. - example: github.com/datadog/datadog-agent - in: query - name: filter[asset_name] - required: false - schema: - type: string - - description: The name of the component that is a dependency of an asset. - example: opentelemetry-api - in: query - name: filter[package_name] - required: false - schema: - type: string - - description: The version of the component that is a dependency of an asset. - example: 1.33.1 - in: query - name: filter[package_version] - required: false - schema: - type: string - - description: The software license name of the component that is a dependency - of an asset. - example: Apache-2.0 - in: query - name: filter[license_name] - required: false - schema: - type: string - - description: The software license type of the component that is a dependency - of an asset. - example: network_strong_copyleft - in: query - name: filter[license_type] - required: false - schema: - $ref: '#/components/schemas/SBOMComponentLicenseType' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAssetsSBOMsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Bad request: The server cannot process the request due to - invalid syntax in the request.' - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: asset not found' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List assets SBOMs - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9).' - /api/v2/security/sboms/{asset_type}: - get: - description: 'Get a single SBOM related to an asset by its type and name. - - ' - operationId: GetSBOM - parameters: - - description: The type of the asset for the SBOM request. - example: Repository - in: path - name: asset_type - required: true - schema: - $ref: '#/components/schemas/AssetType' - - description: The name of the asset for the SBOM request. - example: github.com/datadog/datadog-agent - in: query - name: filter[asset_name] - required: true - schema: - type: string - - description: The container image `repo_digest` for the SBOM request. When - the requested asset type is 'Image', this filter is mandatory. - example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - in: query - name: filter[repo_digest] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetSBOMResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Bad request: The server cannot process the request due to - invalid syntax in the request.' - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: asset not found' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get SBOM - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9).' - /api/v2/security/signals/notification_rules: - get: - description: Returns the list of notification rules for security signals. - operationId: GetSignalNotificationRules - responses: - '200': - $ref: '#/components/responses/NotificationRulesList' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get the list of signal-based notification rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - post: - description: Create a new notification rule for security signals and return - the created rule. - operationId: CreateSignalNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateNotificationRuleParameters' - description: 'The body of the create notification rule request is composed - of the rule type and the rule attributes: - - the rule name, the selectors, the notification targets, and the rule enabled - status. - - ' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Successfully created the notification rule. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Create a new signal-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/signals/notification_rules/{id}: - delete: - description: Delete a notification rule for security signals. - operationId: DeleteSignalNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: Rule successfully deleted. - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Delete a signal-based notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - get: - description: Get the details of a notification rule for security signals. - operationId: GetSignalNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule details. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get details of a signal-based notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - patch: - description: Partially update the notification rule. All fields are optional; - if a field is not provided, it is not updated. - operationId: PatchSignalNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchNotificationRuleParameters' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule successfully patched. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - $ref: '#/components/responses/UnprocessableEntityResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Patch a signal-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/vulnerabilities: - get: - description: "Get a list of vulnerabilities.\n\n### Pagination\n\nPagination - is enabled by default in both `vulnerabilities` and `assets`. The size of - the page varies depending on the endpoint and cannot be modified. To automate - the request of the next page, you can use the links section in the response.\n\nThis - endpoint will return paginated responses. The pages are stored in the links - section of the response:\n\n```JSON\n{\n \"data\": [...],\n \"meta\": {...},\n - \ \"links\": {\n \"self\": \"https://.../api/v2/security/vulnerabilities\",\n - \ \"first\": \"https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc\",\n - \ \"last\": \"https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc\",\n - \ \"next\": \"https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc\"\n - \ }\n}\n```\n\n\n- `links.previous` is empty if the first page is requested.\n- - `links.next` is empty if the last page is requested.\n\n#### Token\n\nVulnerabilities - can be created, updated or deleted at any point in time.\n\nUpon the first - request, a token is created to ensure consistency across subsequent paginated - requests.\n\nA token is valid only for 24 hours.\n\n#### First request\n\nWe - consider a request to be the first request when there is no `page[token]` - parameter.\n\nThe response of this first request contains the newly created - token in the `links` section.\n\nThis token can then be used in the subsequent - paginated requests.\n\n#### Subsequent requests\n\nAny request containing - valid `page[token]` and `page[number]` parameters will be considered a subsequent - request.\n\nIf the `token` is invalid, a `404` response will be returned.\n\nIf - the page `number` is invalid, a `400` response will be returned.\n\n### Filtering\n\nThe - request can include some filter parameters to filter the data to be retrieved. - The format of the filter parameters follows the [JSON:API format](https://jsonapi.org/format/#fetching-filtering): - `filter[$prop_name]`, where `prop_name` is the property name in the entity - being filtered by.\n\nAll filters can include multiple values, where data - will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter - all vulnerabilities where title is equal to `Title1` OR `Title2`.\n\nString - filters are case sensitive.\n\nBoolean filters accept `true` or `false` as - values.\n\nNumber filters must include an operator as a second filter input: - `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: - `filter[cvss.base.score][lte]=8`.\n\nAvailable operators are: `eq` (==), `lt` - (<), `lte` (<=), `gt` (>) and `gte` (>=).\n\n### Metadata\n\nFollowing [JSON:API - format](https://jsonapi.org/format/#document-meta), object including non-standard - meta-information.\n\nThis endpoint includes the meta member in the response. - For more details on each of the properties included in this section, check - the endpoints response tables.\n\n```JSON\n{\n \"data\": [...],\n \"meta\": - {\n \"total\": 1500,\n \"count\": 18732,\n \"token\": \"some_token\"\n - \ },\n \"links\": {...}\n}\n```\n" - operationId: ListVulnerabilities - parameters: - - description: Its value must come from the `links` section of the response - of the first request. Do not manually edit it. - example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: The page number to be retrieved. It should be equal or greater - than `1` - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Filter by vulnerability type. - example: WeakCipher - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityType' - - description: Filter by vulnerability base (i.e. from the original advisory) - severity score. - example: 5.5 - in: query - name: filter[cvss.base.score][`$op`] - required: false - schema: - format: double - maximum: 10 - minimum: 0 - type: number - - description: Filter by vulnerability base severity. - example: Medium - in: query - name: filter[cvss.base.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by vulnerability base CVSS vector. - example: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H - in: query - name: filter[cvss.base.vector] - required: false - schema: - type: string - - description: Filter by vulnerability Datadog severity score. - example: 4.3 - in: query - name: filter[cvss.datadog.score][`$op`] - required: false - schema: - format: double - maximum: 10 - minimum: 0 - type: number - - description: Filter by vulnerability Datadog severity. - example: Medium - in: query - name: filter[cvss.datadog.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by vulnerability Datadog CVSS vector. - example: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:X/RC:X/CR:X/IR:X/AR:X/MAV:L/MAC:H/MPR:L/MUI:N/MS:U/MC:N/MI:N/MA:H - in: query - name: filter[cvss.datadog.vector] - required: false - schema: - type: string - - description: Filter by the status of the vulnerability. - example: Open - in: query - name: filter[status] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityStatus' - - description: Filter by the tool of the vulnerability. - example: SCA - in: query - name: filter[tool] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityTool' - - description: Filter by library name. - example: linux-aws-5.15 - in: query - name: filter[library.name] - required: false - schema: - type: string - - description: Filter by library version. - example: 5.15.0 - in: query - name: filter[library.version] - required: false - schema: - type: string - - description: Filter by advisory ID. - example: TRIVY-CVE-2023-0615 - in: query - name: filter[advisory_id] - required: false - schema: - type: string - - description: Filter by exploitation probability. - example: false - in: query - name: filter[risks.exploitation_probability] - required: false - schema: - type: boolean - - description: Filter by POC exploit availability. - example: false - in: query - name: filter[risks.poc_exploit_available] - required: false - schema: - type: boolean - - description: Filter by public exploit availability. - example: false - in: query - name: filter[risks.exploit_available] - required: false - schema: - type: boolean - - description: Filter by vulnerability [EPSS](https://www.first.org/epss/) severity - score. - example: 0.00042 - in: query - name: filter[risks.epss.score][`$op`] - required: false - schema: - format: double - maximum: 1 - minimum: 0 - type: number - - description: Filter by vulnerability [EPSS](https://www.first.org/epss/) severity. - example: Low - in: query - name: filter[risks.epss.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by language. - example: ubuntu - in: query - name: filter[language] - required: false - schema: - type: string - - description: Filter by ecosystem. - example: Deb - in: query - name: filter[ecosystem] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityEcosystem' - - description: Filter by vulnerability location. - example: com.example.Class:100 - in: query - name: filter[code_location.location] - required: false - schema: - type: string - - description: Filter by vulnerability file path. - example: src/Class.java:100 - in: query - name: filter[code_location.file_path] - required: false - schema: - type: string - - description: Filter by method. - example: FooBar - in: query - name: filter[code_location.method] - required: false - schema: - type: string - - description: Filter by fix availability. - example: false - in: query - name: filter[fix_available] - required: false - schema: - type: boolean - - description: Filter by vulnerability `repo_digest` (when the vulnerability - is related to `Image` asset). - example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - in: query - name: filter[repo_digests] - required: false - schema: - type: string - - description: Filter by origin. - example: agentless-scanner - in: query - name: filter[origin] - required: false - schema: - type: string - - description: Filter by asset name. - example: datadog-agent - in: query - name: filter[asset.name] - required: false - schema: - type: string - - description: Filter by asset type. - example: Host - in: query - name: filter[asset.type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: Filter by the first version of the asset this vulnerability has - been detected on. - example: v1.15.1 - in: query - name: filter[asset.version.first] - required: false - schema: - type: string - - description: Filter by the last version of the asset this vulnerability has - been detected on. - example: v1.15.1 - in: query - name: filter[asset.version.last] - required: false - schema: - type: string - - description: Filter by the repository url associated to the asset. - example: github.com/DataDog/datadog-agent.git - in: query - name: filter[asset.repository_url] - required: false - schema: - type: string - - description: Filter whether the asset is in production or not. - example: false - in: query - name: filter[asset.risks.in_production] - required: false - schema: - type: boolean - - description: Filter whether the asset is under attack or not. - example: false - in: query - name: filter[asset.risks.under_attack] - required: false - schema: - type: boolean - - description: Filter whether the asset is publicly accessible or not. - example: false - in: query - name: filter[asset.risks.is_publicly_accessible] - required: false - schema: - type: boolean - - description: Filter whether the asset is publicly accessible or not. - example: false - in: query - name: filter[asset.risks.has_privileged_access] - required: false - schema: - type: boolean - - description: Filter whether the asset has access to sensitive data or not. - example: false - in: query - name: filter[asset.risks.has_access_to_sensitive_data] - required: false - schema: - type: boolean - - description: Filter by asset environments. - example: staging - in: query - name: filter[asset.environments] - required: false - schema: - type: string - - description: Filter by asset teams. - example: compute - in: query - name: filter[asset.teams] - required: false - schema: - type: string - - description: Filter by asset architecture. - example: arm64 - in: query - name: filter[asset.arch] - required: false - schema: - type: string - - description: Filter by asset operating system name. - example: ubuntu - in: query - name: filter[asset.operating_system.name] - required: false - schema: - type: string - - description: Filter by asset operating system version. - example: '24.04' - in: query - name: filter[asset.operating_system.version] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListVulnerabilitiesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Bad request: The server cannot process the request due to - invalid syntax in the request.' - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: There is no request associated with the provided - token.' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List vulnerabilities - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9).' - /api/v2/security/vulnerabilities/notification_rules: - get: - description: Returns the list of notification rules for security vulnerabilities. - operationId: GetVulnerabilityNotificationRules - responses: - '200': - $ref: '#/components/responses/NotificationRulesList' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get the list of vulnerability notification rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - post: - description: Create a new notification rule for security vulnerabilities and - return the created rule. - operationId: CreateVulnerabilityNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateNotificationRuleParameters' - description: 'The body of the create notification rule request is composed - of the rule type and the rule attributes: - - the rule name, the selectors, the notification targets, and the rule enabled - status. - - ' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Successfully created the notification rule. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Create a new vulnerability-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/vulnerabilities/notification_rules/{id}: - delete: - description: Delete a notification rule for security vulnerabilities. - operationId: DeleteVulnerabilityNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: Rule successfully deleted. - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Delete a vulnerability-based notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - get: - description: Get the details of a notification rule for security vulnerabilities. - operationId: GetVulnerabilityNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule details. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get details of a vulnerability notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - patch: - description: Partially update the notification rule. All fields are optional; - if a field is not provided, it is not updated. - operationId: PatchVulnerabilityNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchNotificationRuleParameters' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule successfully patched. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - $ref: '#/components/responses/UnprocessableEntityResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Patch a vulnerability-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security_monitoring/cloud_workload_security/agent_rules: - get: - description: 'Get the list of agent rules. - - - **Note**: This endpoint should only be used for the Government (US1-FED) site.' - operationId: ListCloudWorkloadSecurityAgentRules - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRulesListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection agent rules (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_read - post: - description: 'Create a new agent rule with the given parameters. - - - **Note**: This endpoint should only be used for the Government (US1-FED) site.' - operationId: CreateCloudWorkloadSecurityAgentRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' - description: The definition of the new agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write - /api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id}: - delete: - description: 'Delete a specific agent rule. - - - **Note**: This endpoint should only be used for the Government (US1-FED) site.' - operationId: DeleteCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write - get: - description: 'Get the details of a specific agent rule. - - - **Note**: This endpoint should only be used for the Government (US1-FED) site.' - operationId: GetCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_read - patch: - description: 'Update a specific agent rule. - - Returns the agent rule object when the request is successful. - - - **Note**: This endpoint should only be used for the Government (US1-FED) site.' - operationId: UpdateCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' - description: New definition of the agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write - /api/v2/security_monitoring/configuration/security_filters: - get: - description: Get the list of configured security filters with their definitions. - operationId: ListSecurityFilters - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: Get all security filters - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - post: - description: 'Create a security filter. - - - See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) - - for more examples.' - operationId: CreateSecurityFilter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterCreateRequest' - description: The definition of the new security filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Create a security filter - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/security_monitoring/configuration/security_filters/{security_filter_id}: - delete: - description: Delete a specific security filter. - operationId: DeleteSecurityFilter - parameters: - - $ref: '#/components/parameters/SecurityFilterID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Delete a security filter - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - get: - description: 'Get the details of a specific security filter. - - - See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) - - for more examples.' - operationId: GetSecurityFilter - parameters: - - $ref: '#/components/parameters/SecurityFilterID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: Get a security filter - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - patch: - description: 'Update a specific security filter. - - Returns the security filter object when the request is successful.' - operationId: UpdateSecurityFilter - parameters: - - $ref: '#/components/parameters/SecurityFilterID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterUpdateRequest' - description: New definition of the security filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Update a security filter - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/security_monitoring/configuration/suppressions: - get: - description: Get the list of all suppression rules. - operationId: ListSecurityMonitoringSuppressions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get all suppression rules - tags: - - Security Monitoring - post: - description: Create a new suppression rule. - operationId: CreateSecurityMonitoringSuppression - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' - description: The definition of the new suppression rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Create a suppression rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - /api/v2/security_monitoring/configuration/suppressions/rules: - post: - description: Get the list of suppressions that would affect a rule. - operationId: GetSuppressionsAffectingFutureRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get suppressions affecting future rule - tags: - - Security Monitoring - /api/v2/security_monitoring/configuration/suppressions/rules/{rule_id}: - get: - description: Get the list of suppressions that affect a specific existing rule - by its ID. - operationId: GetSuppressionsAffectingRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get suppressions affecting a specific rule - tags: - - Security Monitoring - /api/v2/security_monitoring/configuration/suppressions/validation: - post: - description: Validate a suppression rule. - operationId: ValidateSecurityMonitoringSuppression - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Validate a suppression rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_suppressions_write - /api/v2/security_monitoring/configuration/suppressions/{suppression_id}: - delete: - description: Delete a specific suppression rule. - operationId: DeleteSecurityMonitoringSuppression - parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Delete a suppression rule - tags: - - Security Monitoring - get: - description: Get the details of a specific suppression rule. - operationId: GetSecurityMonitoringSuppression - parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get a suppression rule - tags: - - Security Monitoring - patch: - description: Update a specific suppression rule. - operationId: UpdateSecurityMonitoringSuppression - parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateRequest' - description: New definition of the suppression rule. Supports partial updates. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Update a suppression rule - tags: - - Security Monitoring - /api/v2/security_monitoring/rules: - get: - description: List rules. - operationId: ListSecurityMonitoringRules - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringListRulesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: List rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - post: - description: Create a detection rule. - operationId: CreateSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Create a detection rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/convert: - post: - description: 'Convert a rule that doesn''t (yet) exist from JSON to Terraform - for datadog provider - - resource datadog_security_monitoring_rule.' - operationId: ConvertSecurityMonitoringRuleFromJSONToTerraform - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertPayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Convert a rule from JSON to Terraform - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/test: - post: - description: Test a rule. - operationId: TestSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Test a rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/validation: - post: - description: Validate a detection rule. - operationId: ValidateSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleValidatePayload' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Validate a detection rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}: - delete: - description: Delete an existing rule. Default rules cannot be deleted. - operationId: DeleteSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Delete an existing rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - get: - description: Get a rule's details. - operationId: GetSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a rule's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - put: - description: 'Update an existing rule. When updating `cases`, `queries` or `options`, - the whole field - - must be included. For example, when modifying a query all queries must be - included. - - Default rules can only be updated to be enabled, to change notifications, - or to update - - the tags (default tags cannot be removed).' - operationId: UpdateSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleUpdatePayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Update an existing rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}/convert: - get: - description: 'Convert an existing rule from JSON to Terraform for datadog provider - - resource datadog_security_monitoring_rule.' - operationId: ConvertExistingSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Convert an existing rule from JSON to Terraform - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - /api/v2/security_monitoring/rules/{rule_id}/test: - post: - description: Test an existing rule. - operationId: TestExistingSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Test an existing rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}/version_history: - get: - description: Get a rule's version history. - operationId: GetRuleVersionHistory - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetRuleVersionHistoryResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a rule's version history - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes.' - /api/v2/security_monitoring/signals: - get: - description: 'The list endpoint returns security signals that match a search - query. - - Both this endpoint and the POST endpoint can be used interchangeably when - listing - - security signals.' - operationId: ListSecurityMonitoringSignals - parameters: - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a quick list of security signals - tags: - - Security Monitoring - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/search: - post: - description: 'Returns security signals that match a search query. - - Both this endpoint and the GET endpoint can be used interchangeably for listing - - security signals.' - operationId: SearchSecurityMonitoringSignals - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a list of security signals - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/{signal_id}: - get: - description: Get a signal's details. - operationId: GetSecurityMonitoringSignal - parameters: - - $ref: '#/components/parameters/SignalID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a signal's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/{signal_id}/assignee: - patch: - description: Modify the triage assignee of a security signal. - operationId: EditSecurityMonitoringSignalAssignee - parameters: - - $ref: '#/components/parameters/SignalID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateRequest' - description: Attributes describing the signal update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Modify the triage assignee of a security signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - /api/v2/security_monitoring/signals/{signal_id}/incidents: - patch: - description: Change the related incidents for a security signal. - operationId: EditSecurityMonitoringSignalIncidents - parameters: - - $ref: '#/components/parameters/SignalID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateRequest' - description: Attributes describing the signal update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Change the related incidents of a security signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - /api/v2/security_monitoring/signals/{signal_id}/state: - patch: - description: Change the triage state of a security signal. - operationId: EditSecurityMonitoringSignalState - parameters: - - $ref: '#/components/parameters/SignalID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateRequest' - description: Attributes describing the signal update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Change the triage state of a security signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - /api/v2/sensitive-data-scanner/config: - get: - description: List all the Scanning groups in your organization. - operationId: ListScanningGroups - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Scanning Groups - tags: - - Sensitive Data Scanner - x-permission: - operator: OR - permissions: - - data_scanner_read - patch: - description: Reorder the list of groups. - operationId: ReorderScanningGroups - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerConfigRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerReorderGroupsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Reorder Groups - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/groups: - post: - description: 'Create a scanning group. - - The request MAY include a configuration relationship. - - A rules relationship can be omitted entirely, but if it is included it MUST - be - - null or an empty array (rules cannot be created at the same time). - - The new group will be ordered last within the configuration.' - operationId: CreateScanningGroup - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerCreateGroupResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Scanning Group - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/groups/{group_id}: - delete: - description: Delete a given group. - operationId: DeleteScanningGroup - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerGroupID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Scanning Group - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - patch: - description: 'Update a group, including the order of the rules. - - Rules within the group are reordered by including a rules relationship. If - the rules - - relationship is present, its data section MUST contain linkages for all of - the rules - - currently in the group, and MUST NOT contain any others.' - operationId: UpdateScanningGroup - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerGroupID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Scanning Group - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/rules: - post: - description: 'Create a scanning rule in a sensitive data scanner group, ordered - last. - - The posted rule MUST include a group relationship. - - It MUST include either a standard_pattern relationship or a regex attribute, - but not both. - - If included_attributes is empty or missing, we will scan all attributes except - - excluded_attributes. If both are missing, we will scan the whole event.' - operationId: CreateScanningRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerCreateRuleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/rules/{rule_id}: - delete: - description: Delete a given rule. - operationId: DeleteScanningRule - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - patch: - description: 'Update a scanning rule. - - The request body MUST NOT include a standard_pattern relationship, as that - relationship - - is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern - - relationship will also result in an error.' - operationId: UpdateScanningRule - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/standard-patterns: - get: - description: Returns all standard patterns. - operationId: ListStandardPatterns - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseData' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List standard patterns - tags: - - Sensitive Data Scanner - x-permission: - operator: OR - permissions: - - data_scanner_read - /api/v2/series: - post: - description: "The metrics end-point allows you to post time-series data that - can be graphed on Datadog\u2019s dashboards.\nThe maximum payload size is - 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed - size of less than 5 megabytes (5242880 bytes).\n\nIf you\u2019re submitting - metrics directly to the Datadog API without using DogStatsD, expect:\n\n- - 64 bits for the timestamp\n- 64 bits for the value\n- 20 bytes for the metric - names\n- 50 bytes for the timeseries\n- The full payload is approximately - 100 bytes.\n\nHost name is one of the resources in the Resources field." - operationId: SubmitMetrics - parameters: - - description: HTTP header used to compress the media-type. - in: header - name: Content-Encoding - required: false - schema: - $ref: '#/components/schemas/MetricContentEncoding' - requestBody: - content: - application/json: - examples: - dynamic-points: - description: "Post time-series data that can be graphed on Datadog\u2019s - dashboards." - externalValue: examples/metrics/dynamic-points.json.sh - summary: Dynamic Points - x-variables: - NOW: $(date +%s) - schema: - $ref: '#/components/schemas/MetricPayload' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/IntakePayloadAccepted' - description: Payload accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Request timeout - '413': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Payload too large - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Submit metrics - tags: - - Metrics - x-codegen-request-body-name: body - /api/v2/service_accounts: - post: - description: Create a service account for your organization. - operationId: CreateServiceAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a service account - tags: - - Service Accounts - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - service_account_write - /api/v2/service_accounts/{service_account_id}/application_keys: - get: - description: List all application keys available for this service account. - operationId: ListServiceAccountApplicationKeys - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List application keys for this service account - tags: - - Service Accounts - x-permission: - operator: OR - permissions: - - service_account_write - post: - description: Create an application key for this service account. - operationId: CreateServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an application key for this service account - tags: - - Service Accounts - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - service_account_write - /api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id}: - delete: - description: Delete an application key owned by this service account. - operationId: DeleteServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key for this service account - tags: - - Service Accounts - x-permission: - operator: OR - permissions: - - service_account_write - get: - description: Get an application key owned by this service account. - operationId: GetServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PartialApplicationKeyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get one application key for this service account - tags: - - Service Accounts - x-permission: - operator: OR - permissions: - - service_account_write - patch: - description: Edit an application key owned by this service account. - operationId: UpdateServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PartialApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key for this service account - tags: - - Service Accounts - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - service_account_write - /api/v2/services: - get: - deprecated: true - description: Get all incident services uploaded for the requesting user's organization. - If the `include[users]` query parameter is provided, the included attribute - will contain the users related to these incident services. - operationId: ListIncidentServices - parameters: - - $ref: '#/components/parameters/IncidentServiceIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - $ref: '#/components/parameters/IncidentServiceSearchQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of all incident services - tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated.' - post: - deprecated: true - description: Creates a new incident service. - operationId: CreateIncidentService - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceCreateRequest' - description: Incident Service Payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Create a new incident service - tags: - - Incident Services - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/services/definitions: - get: - description: Get a list of all service definitions from the Datadog Service - Catalog. - operationId: ListServiceDefinitions - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/SchemaVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionsListResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get all service definitions - tags: - - Service Definition - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - apm_service_catalog_read - post: - description: Create or update service definition in the Datadog Service Catalog. - operationId: CreateOrUpdateServiceDefinitions - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionsCreateRequest' - description: Service Definition YAML/JSON. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionCreateResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create or update service definition - tags: - - Service Definition - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_service_catalog_write - /api/v2/services/definitions/{service_name}: - delete: - description: Delete a single service definition in the Datadog Service Catalog. - operationId: DeleteServiceDefinition - parameters: - - $ref: '#/components/parameters/ServiceName' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a single service definition - tags: - - Service Definition - x-permission: - operator: OR - permissions: - - apm_service_catalog_write - get: - description: Get a single service definition from the Datadog Service Catalog. - operationId: GetServiceDefinition - parameters: - - $ref: '#/components/parameters/ServiceName' - - $ref: '#/components/parameters/SchemaVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionGetResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a single service definition - tags: - - Service Definition - x-permission: - operator: OR - permissions: - - apm_service_catalog_read - /api/v2/services/{service_id}: - delete: - deprecated: true - description: Deletes an existing incident service. - operationId: DeleteIncidentService - parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Delete an existing incident service - tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - get: - deprecated: true - description: 'Get details of an incident service. If the `include[users]` query - parameter is provided, - - the included attribute will contain the users related to these incident services.' - operationId: GetIncidentService - parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - - $ref: '#/components/parameters/IncidentServiceIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get details of an incident service - tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated.' - patch: - deprecated: true - description: Updates an existing incident service. Only provide the attributes - which should be updated as this request is a partial update. - operationId: UpdateIncidentService - parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceUpdateRequest' - description: Incident Service Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an existing incident service - tags: - - Incident Services - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/siem-historical-detections/histsignals: - get: - description: List hist signals. - operationId: ListSecurityMonitoringHistsignals - parameters: - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: List hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/histsignals/search: - get: - description: Search hist signals. - operationId: SearchSecurityMonitoringHistsignals - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Search hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/histsignals/{histsignal_id}: - get: - description: Get a hist signal's details. - operationId: GetSecurityMonitoringHistsignal - parameters: - - $ref: '#/components/parameters/HistoricalSignalID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a hist signal's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/jobs: - get: - description: List historical jobs. - operationId: ListHistoricalJobs - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: The order of the jobs in results. - example: status - in: query - name: sort - required: false - schema: - type: string - - description: Query used to filter items from the fetched list. - example: security:attack status:high - in: query - name: filter[query] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListHistoricalJobsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: List historical jobs - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - post: - description: Run a historical job. - operationId: RunHistoricalJob - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RunHistoricalJobRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/JobCreateResponse' - description: Status created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Run a historical job - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/jobs/signal_convert: - post: - description: Convert a job result to a signal. - operationId: ConvertJobResultToSignal - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConvertJobResultsToSignalsRequest' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Convert a job result to a signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/jobs/{job_id}: - delete: - description: Delete an existing job. - operationId: DeleteHistoricalJob - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete an existing job - tags: - - Security Monitoring - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - get: - description: Get a job's details. - operationId: GetHistoricalJob - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/HistoricalJobResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a job's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/jobs/{job_id}/cancel: - patch: - description: Cancel a historical job. - operationId: CancelHistoricalJob - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Cancel a historical job - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/siem-historical-detections/jobs/{job_id}/histsignals: - get: - description: Get a job's hist signals. - operationId: GetSecurityMonitoringHistsignalsByJobId - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a job's hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes. - - Please check the documentation regularly for updates.' - /api/v2/slo/report: - post: - description: 'Create a job to generate an SLO report. The report job is processed - asynchronously and eventually results in a CSV report being available for - download. - - - Check the status of the job and download the CSV report using the returned - `report_id`.' - operationId: CreateSLOReportJob - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SloReportCreateRequest' - description: Create SLO report job request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SLOReportPostResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Create a new SLO report - tags: - - Service Level Objectives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - slos_read - x-unstable: '**Note**: This feature is in private beta. To request access, use - the request access form in the [Service Level Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs.' - /api/v2/slo/report/{report_id}/download: - get: - description: 'Download an SLO report. This can only be performed after the report - job has completed. - - - Reports are not guaranteed to exist indefinitely. Datadog recommends that - you download the report as soon as it is available.' - operationId: GetSLOReport - parameters: - - $ref: '#/components/parameters/ReportID' - responses: - '200': - content: - text/csv: - schema: - type: string - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Get SLO report - tags: - - Service Level Objectives - x-unstable: '**Note**: This feature is in private beta. To request access, use - the request access form in the [Service Level Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs.' - /api/v2/slo/report/{report_id}/status: - get: - description: Get the status of the SLO report job. - operationId: GetSLOReportJobStatus - parameters: - - $ref: '#/components/parameters/ReportID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SLOReportStatusGetResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Get SLO report status - tags: - - Service Level Objectives - x-unstable: '**Note**: This feature is in private beta. To request access, use - the request access form in the [Service Level Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs.' - /api/v2/spa/recommendations/{service}/{shard}: - get: - description: Retrieve resource recommendations for a Spark job. The caller (Spark - Gateway or DJM UI) provides a service name and shard identifier, and SPA returns - structured recommendations for driver and executor resources. - operationId: GetSPARecommendations - parameters: - - description: The shard tag for a spark job, which differentiates jobs within - the same service that have different resource needs - in: path - name: shard - required: true - schema: - type: string - - description: The service name for a spark job - in: path - name: service - required: true - schema: - type: string - responses: - '200': - content: - application/json: - example: - data: - attributes: - driver: - estimation: - cpu: - max: 1500 - p75: 1000 - p95: 1200 - ephemeral_storage: 896 - heap: 6144 - memory: 7168 - overhead: 1024 - executor: - estimation: - cpu: - max: 2000 - p75: 1200 - p95: 1500 - ephemeral_storage: 512 - heap: 3072 - memory: 4096 - overhead: 1024 - id: dedupeactivecontexts:adp_dedupeactivecontexts_org2 - type: recommendation - schema: - $ref: '#/components/schemas/RecommendationDocument' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get SPA Recommendations - tags: - - Spa - x-unstable: '**Note**: This endpoint is in public beta and may change in the - future. It is not yet recommended for production use.' - /api/v2/spans/analytics/aggregate: - post: - description: 'The API endpoint to aggregate spans into buckets and compute metrics - and timeseries. - - This endpoint is rate limited to `300` requests per hour.' - operationId: AggregateSpans - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Aggregate spans - tags: - - Spans - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_read - /api/v2/spans/events: - get: - description: 'List endpoint returns spans that match a span search query. - - [Results are paginated][1]. - - - Use this endpoint to see your latest spans. - - This endpoint is rate limited to `300` requests per hour. - - - [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api' - operationId: ListSpansGet - parameters: - - description: Search query following spans syntax. - example: '@datacenter:us @role:db' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested spans. Supports date-time ISO8601, - date math, and regular timestamps (milliseconds). - example: '2023-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - type: string - - description: Maximum timestamp for requested spans. Supports date-time ISO8601, - date math, and regular timestamps (milliseconds). - example: '2023-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - type: string - - description: Order of spans in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/SpansSort' - - description: List following results with a cursor provided in the previous - query. - example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of spans in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansListResponse' - description: OK - '400': - $ref: '#/components/responses/SpansBadRequestResponse' - '403': - $ref: '#/components/responses/SpansForbiddenResponse' - '422': - $ref: '#/components/responses/SpansUnprocessableEntityResponse' - '429': - $ref: '#/components/responses/SpansTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Get a list of spans - tags: - - Spans - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - /api/v2/spans/events/search: - post: - description: 'List endpoint returns spans that match a span search query. - - [Results are paginated][1]. - - - Use this endpoint to build complex spans filtering and search. - - This endpoint is rate limited to `300` requests per hour. - - - [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api' - operationId: ListSpans - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansListRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansListResponse' - description: OK - '400': - $ref: '#/components/responses/SpansBadRequestResponse' - '403': - $ref: '#/components/responses/SpansForbiddenResponse' - '422': - $ref: '#/components/responses/SpansUnprocessableEntityResponse' - '429': - $ref: '#/components/responses/SpansTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Search spans - tags: - - Spans - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.data.attributes.page.cursor - cursorPath: meta.page.after - limitParam: body.data.attributes.page.limit - resultsPath: data - /api/v2/synthetics/settings/on_demand_concurrency_cap: - get: - description: Get the on-demand concurrency cap. - operationId: GetOnDemandConcurrencyCap - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the on-demand concurrency cap - tags: - - Synthetics - x-permission: - operator: OR - permissions: - - billing_read - post: - description: Save new value for on-demand concurrency cap. - operationId: SetOnDemandConcurrencyCap - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' - description: . - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Save new value for on-demand concurrency cap - tags: - - Synthetics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - billing_edit - /api/v2/team: - get: - description: 'Get all teams. - - Can be used to search for teams using the `filter[keyword]` and `filter[me]` - query parameters.' - operationId: ListTeams - parameters: - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/PageSize' - - description: Specifies the order of the returned teams - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/ListTeamsSort' - - description: 'Included related resources optionally requested. Allowed enum - values: `team_links, user_team_permissions`' - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/ListTeamsInclude' - type: array - - description: Search query. Can be team name, team handle, or email of team - member - in: query - name: filter[keyword] - required: false - schema: - type: string - - description: When true, only returns teams the current user belongs to - in: query - name: filter[me] - required: false - schema: - type: boolean - - description: List of fields that need to be fetched. - explode: false - in: query - name: fields[team] - required: false - schema: - items: - $ref: '#/components/schemas/TeamsField' - type: array - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get all teams - tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - teams_read - post: - description: 'Create a new team. - - User IDs passed through the `users` relationship field are added to the team.' - operationId: CreateTeam - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamResponse' - description: CREATED - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - - teams_manage - summary: Create a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - teams_read - - teams_manage - /api/v2/team/sync: - post: - description: 'This endpoint attempts to link your existing Datadog teams with - GitHub teams by matching their names. - - It evaluates all current Datadog teams and compares them against teams in - the GitHub organization - - connected to your Datadog account, based on Datadog Team handle and GitHub - Team slug - - (lowercased and kebab-cased). - - - This operation is read-only on the GitHub side, no teams will be modified - or created. - - - [A GitHub organization must be connected to your Datadog account](https://docs.datadoghq.com/integrations/github/), - - and the GitHub App integrated with Datadog must have the `Members Read` permission. - Matching is performed by comparing the Datadog team handle to the GitHub team - slug - - using a normalized exact match; case is ignored and spaces are removed. No - modifications are made - - to teams in GitHub. This will not create new Teams in Datadog.' - operationId: SyncTeams - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamSyncRequest' - required: true - responses: - '200': - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal Server Error - Unexpected error during linking. - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_manage - summary: Link Teams with GitHub Teams - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - teams_manage - x-unstable: '**Note**: This endpoint is in Preview. To request access, fill - out this [form](https://www.datadoghq.com/product-preview/github-integration-for-teams/). - - If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/team/{super_team_id}/member_teams: - get: - description: Get all member teams. - operationId: ListMemberTeams - parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: List of fields that need to be fetched. - explode: false - in: query - name: fields[team] - required: false - schema: - items: - $ref: '#/components/schemas/TeamsField' - type: array - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get all member teams - tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - teams_read - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - post: - description: 'Add a member team. - - Adds the team given by the `id` in the body as a member team of the super - team.' - operationId: AddMemberTeam - parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AddMemberTeamRequest' - required: true - responses: - '204': - description: Added - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Add a member team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/team/{super_team_id}/member_teams/{member_team_id}: - delete: - description: Remove a super team's member team identified by `member_team_id`. - operationId: RemoveMemberTeam - parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - - description: None - in: path - name: member_team_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a member team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, - - contact [Datadog support](https://docs.datadoghq.com/help/).' - /api/v2/team/{team_id}: - delete: - description: Remove a team using the team's `id`. - operationId: DeleteTeam - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - - teams_manage - summary: Remove a team - tags: - - Teams - x-permission: - operator: AND - permissions: - - teams_read - - teams_manage - get: - description: Get a single team using the team's `id`. - operationId: GetTeam - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - patch: - description: 'Update a team using the team''s `id`. - - If the `team_links` relationship is present, the associated links are updated - to be in the order they appear in the array, and any existing team links not - present are removed.' - operationId: UpdateTeam - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/links: - get: - description: Get all links for a given team. - operationId: GetTeamLinks - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinksResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get links for a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - post: - description: Add a new link to a team. - operationId: CreateTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Create a team link - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/links/{link_id}: - delete: - description: Remove a link from a team. - operationId: DeleteTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a team link - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - get: - description: Get a single link for a team. - operationId: GetTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get a team link - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - patch: - description: Update a team link. - operationId: UpdateTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a team link - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/memberships: - get: - description: Get a paginated list of members for a team - operationId: GetTeamMemberships - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: Specifies the order of returned team memberships - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/GetTeamMembershipsSort' - - description: Search query, can be user email or name - in: query - name: filter[keyword] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamsResponse' - description: Represents a user's association to a team - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get team memberships - tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - teams_read - post: - description: Add a user to a team. - operationId: CreateTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamResponse' - description: Represents a user's association to a team - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Add a user to a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/memberships/{user_id}: - delete: - description: Remove a user from a team. - operationId: DeleteTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: user_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a user from a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - patch: - description: Update a user's membership attributes on a team. - operationId: UpdateTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: user_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamResponse' - description: Represents a user's association to a team - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a user's membership attributes on a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/permission-settings: - get: - description: Get all permission settings for a given team. - operationId: GetTeamPermissionSettings - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamPermissionSettingsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get permission settings for a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/permission-settings/{action}: - put: - description: Update a team permission setting for a given team. - operationId: UpdateTeamPermissionSetting - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: action - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamPermissionSettingUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamPermissionSettingResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update permission setting for team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/teams: - get: - deprecated: true - description: Get all incident teams for the requesting user's organization. - If the `include[users]` query parameter is provided, the included attribute - will contain the users related to these incident teams. - operationId: ListIncidentTeams - parameters: - - $ref: '#/components/parameters/IncidentTeamIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - $ref: '#/components/parameters/IncidentTeamSearchQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of all incident teams - tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/).' - post: - deprecated: true - description: Creates a new incident team. - operationId: CreateIncidentTeam - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamCreateRequest' - description: Incident Team Payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Create a new incident team - tags: - - Incident Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/).' - /api/v2/teams/{team_id}: - delete: - deprecated: true - description: Deletes an existing incident team. - operationId: DeleteIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Delete an existing incident team - tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/).' - get: - deprecated: true - description: 'Get details of an incident team. If the `include[users]` query - parameter is provided, - - the included attribute will contain the users related to these incident teams.' - operationId: GetIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - - $ref: '#/components/parameters/IncidentTeamIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get details of an incident team - tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/).' - patch: - deprecated: true - description: Updates an existing incident team. Only provide the attributes - which should be updated as this request is a partial update. - operationId: UpdateIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamUpdateRequest' - description: Incident Team Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an existing incident team - tags: - - Incident Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/).' - /api/v2/usage/application_security: - get: - deprecated: true - description: 'Get hourly usage for application security . - - **Note:** This endpoint has been deprecated. Hourly usage data for all products - is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family)' - operationId: GetUsageApplicationSecurityMonitoring - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour.' - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour.' - in: query - name: end_hr - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/UsageApplicationSecurityMonitoringResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for application security - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/billing_dimension_mapping: - get: - description: 'Get a mapping of billing dimensions to the corresponding keys - for the supported usage metering public API endpoints. - - Mapping data is updated on a monthly cadence. - - - This endpoint is only accessible to [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).' - operationId: GetBillingDimensionMapping - parameters: - - description: Datetime in ISO-8601 format, UTC, and for mappings beginning - this month. Defaults to the current month. - in: query - name: filter[month] - required: false - schema: - format: date-time - type: string - - description: String to specify whether to retrieve active billing dimension - mappings for the contract or for all available mappings. Allowed views have - the string `active` or `all`. Defaults to `active`. - in: query - name: filter[view] - required: false - schema: - default: active - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/BillingDimensionsMappingResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get billing dimension mapping for usage endpoints - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/cost_by_org: - get: - deprecated: true - description: 'Get cost across multi-org account. - - Cost by org data for a given month becomes available no later than the 16th - of the following month. - - **Note:** This endpoint has been deprecated. Please use the new endpoint - - [`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account) - - instead. - - - This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).' - operationId: GetCostByOrg - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost beginning this month.' - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost ending this month.' - in: query - name: end_month - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get cost across multi-org account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/usage/estimated_cost: - get: - description: 'Get estimated cost across multi-org and single root-org accounts. - - Estimated cost data is only available for the current month and previous month - - and is delayed by up to 72 hours from when it was incurred. - - To access historical costs prior to this, use the `/historical_cost` endpoint. - - - This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).' - operationId: GetEstimatedCostByOrg - parameters: - - description: String to specify whether cost is broken down at a parent-org - level or at the sub-org level. Available views are `summary` and `sub-org`. - Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost beginning this month. **Either start_month or start_date should - be specified, but not both.** (start_month cannot go beyond two months in - the past). Provide an `end_month` to view month-over-month cost.' - in: query - name: start_month - required: false - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost ending this month.' - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` - for cost beginning this day. **Either start_month or start_date should be - specified, but not both.** (start_date cannot go beyond two months in the - past). Provide an `end_date` to view day-over-day cumulative cost.' - in: query - name: start_date - required: false - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` - for cost ending this day.' - in: query - name: end_date - required: false - schema: - format: date-time - type: string - - description: 'Boolean to specify whether to include accounts connected to - the current account as partner customers in the Datadog partner network - program. Defaults to `false`. ' - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get estimated cost across your account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/usage/historical_cost: - get: - description: 'Get historical cost across multi-org and single root-org accounts. - - Cost data for a given month becomes available no later than the 16th of the - following month. - - - This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).' - operationId: GetHistoricalCostByOrg - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost beginning this month.' - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: String to specify whether cost is broken down at a parent-org - level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults - to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` - for cost ending this month.' - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: 'Boolean to specify whether to include accounts connected to - the current account as partner customers in the Datadog partner network - program. Defaults to `false`. ' - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get historical cost across your account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/usage/hourly_usage: - get: - description: Get hourly usage by product family. - operationId: GetHourlyUsage - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] - for usage beginning at this hour.' - in: query - name: filter[timestamp][start] - required: true - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] - for usage ending **before** this hour.' - in: query - name: filter[timestamp][end] - required: false - schema: - format: date-time - type: string - - description: 'Comma separated list of product families to retrieve. Available - families are `all`, `analyzed_logs`, - - `application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`, - `cloud_siem`, - - `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`, - `cws`, `dbm`, `error_tracking`, - - `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, - `ingested_spans`, `iot`, - - `lambda_traced_invocations`, `llm_observability`, `logs`, `network_flows`, - `network_hosts`, `network_monitoring`, - - `observability_pipelines`, `online_archive`, `profiling`, `product_analytics`, - `rum`, `rum_browser_sessions`, - - `rum_mobile_sessions`, `sds`, `snmp`, `software_delivery`, `synthetics_api`, - `synthetics_browser`, - - `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, `vuln_management` - and `workflow_executions`. - - The following product family has been **deprecated**: `audit_logs`.' - in: query - name: filter[product_families] - required: true - schema: - type: string - - description: Include child org usage in the response. Defaults to false. - in: query - name: filter[include_descendants] - required: false - schema: - default: false - type: boolean - - description: Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network program. - Defaults to false. - in: query - name: filter[include_connected_accounts] - required: false - schema: - default: false - type: boolean - - description: Include breakdown of usage by subcategories where applicable - (for product family logs only). Defaults to false. - in: query - name: filter[include_breakdown] - required: false - schema: - default: false - type: boolean - - description: 'Comma separated list of product family versions to use in the - format `product_family:version`. For example, - - `infra_hosts:1.0.0`. If this parameter is not used, the API will use the - latest version of each requested - - product family. Currently all families have one version `1.0.0`.' - in: query - name: filter[versions] - required: false - schema: - type: string - - description: Maximum number of results to return (between 1 and 500) - defaults - to 500 if limit not specified. - in: query - name: page[limit] - required: false - schema: - default: 500 - format: int32 - maximum: 500 - minimum: 1 - type: integer - - description: List following results with a next_record_id provided in the - previous query. - in: query - name: page[next_record_id] - required: false - schema: - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/HourlyUsageResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage by product family - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/lambda_traced_invocations: - get: - deprecated: true - description: 'Get hourly usage for Lambda traced invocations. - - **Note:** This endpoint has been deprecated.. Hourly usage data for all products - is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family)' - operationId: GetUsageLambdaTracedInvocations - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour.' - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour.' - in: query - name: end_hr - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/UsageLambdaTracedInvocationsResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for Lambda traced invocations - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/observability_pipelines: - get: - deprecated: true - description: 'Get hourly usage for observability pipelines. - - **Note:** This endpoint has been deprecated. Hourly usage data for all products - is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family)' - operationId: GetUsageObservabilityPipelines - parameters: - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour.' - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour.' - in: query - name: end_hr - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/UsageObservabilityPipelinesResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for observability pipelines - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/projected_cost: - get: - description: 'Get projected cost across multi-org and single root-org accounts. - - Projected cost data is only available for the current month and becomes available - around the 12th of the month. - - - This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).' - operationId: GetProjectedCost - parameters: - - description: String to specify whether cost is broken down at a parent-org - level or at the sub-org level. Available views are `summary` and `sub-org`. - Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: 'Boolean to specify whether to include accounts connected to - the current account as partner customers in the Datadog partner network - program. Defaults to `false`. ' - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/ProjectedCostResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get projected cost across your account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/user_invitations: - post: - description: Sends emails to one or more users inviting them to join the organization. - operationId: SendInvitations - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserInvitationsRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserInvitationsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Send invitation emails - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_invite - /api/v2/user_invitations/{user_invitation_uuid}: - get: - description: Returns a single user invitation by its UUID. - operationId: GetInvitation - parameters: - - description: The UUID of the user invitation. - in: path - name: user_invitation_uuid - required: true - schema: - example: 00000000-0000-0000-3456-000000000000 - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserInvitationResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Get a user invitation - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_invite - /api/v2/users: - get: - description: 'Get the list of all users in the organization. This list includes - - all users even if they are deactivated or unverified.' - operationId: ListUsers - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: 'User attribute to order results by. Sort order is ascending - by default. - - Sort order is descending if the field - - is prefixed by a negative sign, for example `sort=-name`. Options: `name`, - - `modified_at`, `user_count`.' - in: query - name: sort - required: false - schema: - default: name - example: name - type: string - - description: 'Direction of sort. Options: `asc`, `desc`.' - in: query - name: sort_dir - required: false - schema: - $ref: '#/components/schemas/QuerySortOrder' - - description: Filter all users by the given string. Defaults to no filtering. - in: query - name: filter - required: false - schema: - type: string - - description: 'Filter on status attribute. - - Comma separated list, with possible values `Active`, `Pending`, and `Disabled`. - - Defaults to no filtering.' - in: query - name: filter[status] - required: false - schema: - example: Active - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List all users - tags: - - Users - x-codegen-request-body-name: body - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - user_access_read - post: - description: Create a user for your organization. - operationId: CreateUser - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Create a user - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_invite - /api/v2/users/{user_id}: - delete: - description: 'Disable a user. Can only be used with an application key belonging - - to an administrator user.' - operationId: DisableUser - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Disable a user - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - - service_account_write - get: - description: "Get a user in the organization specified by the user\u2019s `user_id`." - operationId: GetUser - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get user details - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_read - patch: - description: 'Edit a user. Can only be used with an application key belonging - - to an administrator user.' - operationId: UpdateUser - parameters: - - $ref: '#/components/parameters/UserID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Update a user - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - - service_account_write - /api/v2/users/{user_id}/orgs: - get: - description: 'Get a user organization. Returns the user information and all - organizations - - joined by this user.' - operationId: ListUserOrganizations - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get a user organization - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OPEN - permissions: [] - /api/v2/users/{user_id}/permissions: - get: - description: "Get a user permission set. Returns a list of the user\u2019s permissions\ngranted - by the associated user's roles." - operationId: ListUserPermissions - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a user permissions - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_read - /api/v2/users/{user_uuid}/memberships: - get: - description: Get a list of memberships for a user - operationId: GetUserMemberships - parameters: - - description: None - in: path - name: user_uuid - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamsResponse' - description: Represents a user's association to a team - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get user memberships - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/workflows: - post: - description: Create a new workflow, returning the workflow ID. This API requires - a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateWorkflow - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateWorkflowRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateWorkflowResponse' - description: Successfully created a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Create a Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_write - /api/v2/workflows/{workflow_id}: - delete: - description: Delete a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' - responses: - '204': - description: Successfully deleted a workflow. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Delete an existing Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_write - get: - description: Get a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetWorkflowResponse' - description: Successfully got a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Get an existing Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_read - patch: - description: Update a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UpdateWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateWorkflowRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateWorkflowResponse' - description: Successfully updated a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Update an existing Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_write - /api/v2/workflows/{workflow_id}/instances: - get: - description: List all instances of a given workflow. This API requires a [registered - application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: ListWorkflowInstances - parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorkflowListInstancesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_read - summary: List workflow instances - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_read - post: - description: Execute the given workflow. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/WorkflowInstanceCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorkflowInstanceCreateResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_run - summary: Execute a workflow - tags: - - Workflow Automation - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - workflows_run - /api/v2/workflows/{workflow_id}/instances/{instance_id}: - get: - description: Get a specific execution of a given workflow. This API requires - a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/InstanceId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorklflowGetInstanceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_read - summary: Get a workflow instance - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_read - /api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel: - put: - description: Cancels a specific execution of a given workflow. This API requires - a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CancelWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/InstanceId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorklflowCancelInstanceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Cancel a workflow instance - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_run -security: -- apiKeyAuth: [] - appKeyAuth: [] -servers: -- url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. -- url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. -- url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. -tags: -- description: Configure your API endpoints through the Datadog API. - name: API Management -- description: Manage configuration of [APM retention filters](https://app.datadoghq.com/apm/traces/retention-filters) - for your organization. You need an API and application key with Admin rights to - interact with this endpoint. See [retention filters](https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/#retention-filters) - on the Trace Retention page for more information. - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/ - name: APM Retention Filters -- description: 'Configure your Datadog-AWS integration directly through the Datadog - API. - - For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services).' - name: AWS Integration -- description: 'Configure your Datadog-AWS-Logs integration directly through Datadog - API. - - For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection).' - externalDocs: - url: https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection - name: AWS Logs Integration -- description: "Action connections extend your installed integrations and allow you - to take action in your third-party systems\n(e.g. AWS, GitLab, and Statuspage) - with Datadog\u2019s Workflow Automation and App Builder products.\n\nDatadog\u2019s - Integrations automatically provide authentication for Slack, Microsoft Teams, - PagerDuty, Opsgenie,\nJIRA, GitHub, and Statuspage. You do not need additional - connections in order to access these tools within\nWorkflow Automation and App - Builder.\n\nWe offer granular access control for editing and resolving connections." - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/service_management/workflows/connections/ - name: Action Connection -- description: 'Leverage the Actions Datastore API to create, modify, and delete - - items in datastores owned by your organization.' - externalDocs: - url: https://docs.datadoghq.com/actions/datastore - name: Actions Datastores -- description: "Datadog Agentless Scanning provides visibility into risks and vulnerabilities\nwithin - your hosts, running containers, and serverless functions\u2014all without\nrequiring - teams to install Agents on every host or where Agents cannot be installed.\nAgentless - offers also Sensitive Data Scanning capabilities on your storage.\nGo to https://www.datadoghq.com/blog/agentless-scanning/ - to learn more." - name: Agentless Scanning -- description: Datadog App Builder provides a low-code solution to rapidly develop - and integrate secure, customized applications into your monitoring stack that - are built to accelerate remediation at scale. These API endpoints allow you to - create, read, update, delete, and publish apps. - name: App Builder -- description: '[Datadog Application Security](https://docs.datadoghq.com/security/application_security/) - provides protection against - - application-level attacks that aim to exploit code-level vulnerabilities, - - such as Server-Side-Request-Forgery (SSRF), SQL injection, Log4Shell, and - - Reflected Cross-Site-Scripting (XSS). You can monitor and protect apps - - hosted directly on a server, Docker, Kubernetes, Amazon ECS, and (for - - supported languages) AWS Fargate.' - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/security/application_security/ - name: Application Security -- description: Search your Audit Logs events over HTTP. - name: Audit -- description: '[The AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) - - is used to automatically map groups of users to roles in Datadog using attributes - - sent from Identity Providers. Use these endpoints to manage your AuthN Mappings.' - name: AuthN Mappings -- description: Search or aggregate your CI Visibility pipeline events and send them - to your Datadog site over HTTP. See the [CI Pipeline Visibility in Datadog page](https://docs.datadoghq.com/continuous_integration/pipelines/) - for more information. - name: CI Visibility Pipelines -- description: Search or aggregate your CI Visibility test events over HTTP. See the - [Test Visibility in Datadog page](https://docs.datadoghq.com/tests/) for more - information. - name: CI Visibility Tests -- description: 'Datadog Cloud Security Management (CSM) delivers real-time threat - detection - - and continuous configuration audits across your entire cloud infrastructure, - - all in a unified view for seamless collaboration and faster remediation. - - Go to https://docs.datadoghq.com/security/cloud_security_management to learn more' - name: CSM Agents -- description: 'Datadog Cloud Security Management (CSM) delivers real-time threat - detection - - and continuous configuration audits across your entire cloud infrastructure, - - all in a unified view for seamless collaboration and faster remediation. - - Go to https://docs.datadoghq.com/security/cloud_security_management to learn more.' - name: CSM Coverage Analysis -- description: 'Workload Protection monitors file, network, and process activity across - your environment to detect real-time threats to your infrastructure. See [Workload - Protection](https://docs.datadoghq.com/security/workload_protection/) for more - information on setting up Workload Protection. - - - **Note**: These endpoints are split based on whether you are using the US1-FED - site or not. Please reference the specific resource for the site you are using.' - name: CSM Threats -- description: View and manage cases and projects within Case Management. See the - [Case Management page](https://docs.datadoghq.com/service_management/case_management/) - for more information. - name: Case Management -- description: The Cloud Cost Management API allows you to set up, edit, and delete - Cloud Cost Management accounts for AWS, Azure, and GCP. You can query your cost - data by using the [Metrics endpoint](https://docs.datadoghq.com/api/latest/metrics/#query-timeseries-data-across-multiple-products) - and the `cloud_cost` data source. For more information, see the [Cloud Cost Management - documentation](https://docs.datadoghq.com/cloud_cost_management/). - name: Cloud Cost Management -- description: The Cloud Network Monitoring API allows you to fetch aggregated connections - and DNS traffic with their attributes. See the [Cloud Network Monitoring page](https://docs.datadoghq.com/network_monitoring/cloud_network_monitoring/) - and [DNS Monitoring page](https://docs.datadoghq.com/network_monitoring/dns/) - for more information. - name: Cloud Network Monitoring -- description: Manage your Datadog Cloudflare integration directly through the Datadog - API. See the [Cloudflare integration page](https://docs.datadoghq.com/integrations/cloudflare/) - for more information. - name: Cloudflare Integration -- description: Manage your Datadog Confluent Cloud integration accounts and account - resources directly through the Datadog API. See the [Confluent Cloud page](https://docs.datadoghq.com/integrations/confluent_cloud/) - for more information. - name: Confluent Cloud -- description: The Container Images API allows you to query Container Image data for - your organization. See the [Container Images View page](https://docs.datadoghq.com/infrastructure/containers/container_images/) - for more information. - name: Container Images -- description: The Containers API allows you to query container data for your organization. - See the [Container Monitoring page](https://docs.datadoghq.com/containers/) for - more information. - name: Containers -- description: 'Search or send events for DORA Metrics to measure and improve your - software delivery performance. See the [DORA Metrics page](https://docs.datadoghq.com/dora_metrics/) - for more information. - - - **Note**: DORA Metrics are not available in the US1-FED site.' - name: DORA Metrics -- description: 'Interact with your dashboard lists through the API to - - organize, find, and share all of your dashboards with your team and - - organization.' - name: Dashboard Lists -- description: The Data Deletion API allows the user to target and delete data from - the allowed products. It's currently enabled for Logs and RUM and depends on `logs_delete_data` - and `rum_delete_data` permissions respectively. - name: Data Deletion -- description: 'Data Access Controls in Datadog is a feature that allows administrators - and access managers to regulate - - access to sensitive data. By defining Restricted Datasets, you can ensure that - only specific teams or roles can - - view certain types of telemetry (for example, logs, traces, metrics, and RUM data).' - name: Datasets -- description: 'Configure your Datadog Email Domain Allowlist directly through the - Datadog API. - - The Email Domain Allowlist controls the domains that certain datadog emails can - be sent to. - - For more information, see the [Domain Allowlist docs page](https://docs.datadoghq.com/account_management/org_settings/domain_allowlist)' - name: Domain Allowlist -- description: '**Note**: Downtime V2 is currently in private beta. To request access, - contact [Datadog support](https://docs.datadoghq.com/help/). - - - [Downtiming](https://docs.datadoghq.com/monitors/notify/downtimes) gives - - you greater control over monitor notifications by allowing you to globally exclude - - scopes from alerting. Downtime settings, which can be scheduled with start and - - end times, prevent all alerting related to specified Datadog tags.' - name: Downtimes -- description: View and manage issues within Error Tracking. See the [Error Tracking - page](https://docs.datadoghq.com/error_tracking/) for more information. - name: Error Tracking -- description: 'The Event Management API allows you to programmatically post events - to the Events Explorer and fetch events from the Events Explorer. See the [Event - Management page](https://docs.datadoghq.com/service_management/events/) for more - information. - - - **Update to Datadog monitor events `aggregation_key` starting March 1, 2025:** - The Datadog monitor events `aggregation_key` is unique to each Monitor ID. Starting - March 1st, this key will also include Monitor Group, making it unique per *Monitor - ID and Monitor Group*. If you''re using monitor events `aggregation_key` in dashboard - queries or the Event API, you must migrate to use `@monitor.id`. Reach out to - [support](https://www.datadoghq.com/support/) if you have any question.' - name: Events -- description: Manage your Datadog Fastly integration accounts and services directly - through the Datadog API. See the [Fastly integration page](https://docs.datadoghq.com/integrations/fastly/) - for more information. - name: Fastly Integration -- description: 'Configure your Datadog-Google Cloud Platform (GCP) integration directly - - through the Datadog API. Read more about the [Datadog-Google Cloud Platform integration](https://docs.datadoghq.com/integrations/google_cloud_platform).' - externalDocs: - url: https://docs.datadoghq.com/integrations/google_cloud_platform - name: GCP Integration -- description: 'The IP allowlist API is used to manage the IP addresses that - - can access the Datadog API and web UI. It does not block - - access to intake APIs or public dashboards. - - - This is an enterprise-only feature. Request access by - - contacting Datadog support, or see the [IP Allowlist page](https://docs.datadoghq.com/account_management/org_settings/ip_allowlist/) - for more information.' - name: IP Allowlist -- description: Create, update, delete, and retrieve services which can be associated - with incidents. See the [Incident Management page](https://docs.datadoghq.com/service_management/incident_management/) - for more information. - name: Incident Services -- description: The Incident Teams endpoints are deprecated. See the [Teams API endpoints](https://docs.datadoghq.com/api/latest/teams/) - to create, update, delete, and retrieve teams which can be associated with incidents. - name: Incident Teams -- description: Manage incident response, as well as associated attachments, metadata, - and todos. See the [Incident Management page](https://docs.datadoghq.com/service_management/incident_management/) - for more information. - name: Incidents -- description: 'Manage your Datadog API and application keys. You need an API key - and an - - application key for a user with the required permissions to interact with these - endpoints. - - - Consult the following pages to view and manage your keys: - - - - [API Keys](https://app.datadoghq.com/organization-settings/api-keys) - - - [Application Keys](https://app.datadoghq.com/personal-settings/application-keys)' - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/account_management/api-app-keys/ - name: Key Management -- description: Search your logs and send them to your Datadog platform over HTTP. - See the [Log Management page](https://docs.datadoghq.com/logs/) for more information. - name: Logs -- description: 'Archives forward all the logs ingested to a cloud storage system. - - - See the [Archives Page](https://app.datadoghq.com/logs/pipelines/archives) - - for a list of the archives currently configured in Datadog.' - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/logs/archives/ - name: Logs Archives -- description: 'Custom Destinations forward all the logs ingested to an external destination. - - - **Note**: Log forwarding is not available for the Government (US1-FED) site. Contact - your account representative for more information. - - - See the [Custom Destinations Page](https://app.datadoghq.com/logs/pipelines/log-forwarding/custom-destinations) - - for a list of the custom destinations currently configured in web UI.' - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/logs/log_configuration/forwarding_custom_destinations/ - name: Logs Custom Destinations -- description: Manage configuration of [log-based metrics](https://app.datadoghq.com/logs/pipelines/generate-metrics) - for your organization. - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/logs/logs_to_metrics/ - name: Logs Metrics -- description: "The metrics endpoint allows you to:\n\n- Post metrics data so it can - be graphed on Datadog\u2019s dashboards\n- Query metrics from any time period - (timeseries and scalar)\n- Modify tag configurations for metrics\n- View tags - and volumes for metrics\n\n**Note**: A graph can only contain a set number of - points\nand as the timeframe over which a metric is viewed increases,\naggregation - between points occurs to stay below that set number.\n\nThe Post, Patch, and Delete - `manage_tags` API methods can only be performed by\na user who has the `Manage - Tags for Metrics` permission.\n\nSee the [Metrics page](https://docs.datadoghq.com/metrics/) - for more information." - name: Metrics -- description: 'Configure your [Datadog Microsoft Teams integration](https://docs.datadoghq.com/integrations/microsoft_teams/) - - directly through the Datadog API. Note: These endpoints do not support legacy - connector handles.' - externalDocs: - description: For more information about the Datadog Microsoft Teams integration, - see the integration page. - url: https://docs.datadoghq.com/integrations/microsoft_teams/ - name: Microsoft Teams Integration -- description: '[Monitors](https://docs.datadoghq.com/monitors) allow you to watch - a metric or check that you care about and - - notifies your team when a defined threshold has exceeded. - - - For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) - and - - [Tag Policies](https://docs.datadoghq.com/monitors/settings/).' - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/monitors/create/types/ - name: Monitors -- description: The Network Device Monitoring API allows you to fetch devices and interfaces - and their attributes. See the [Network Device Monitoring page](https://docs.datadoghq.com/network_monitoring/) - for more information. - name: Network Device Monitoring -- description: Observability Pipelines allows you to collect and process logs within - your own infrastructure, and then route them to downstream integrations. - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/observability_pipelines/ - name: Observability Pipelines -- description: Configure your [Datadog Okta integration](https://docs.datadoghq.com/integrations/okta/) - directly through the Datadog API. - name: Okta Integration -- description: 'Configure your [Datadog On-Call](https://docs.datadoghq.com/service_management/on-call/) - - directly through the Datadog API.' - externalDocs: - url: https://docs.datadoghq.com/service_management/on-call/ - name: On-Call -- description: 'Trigger and manage [Datadog On-Call](https://docs.datadoghq.com/service_management/on-call/) - - pages directly through the Datadog API.' - externalDocs: - url: https://docs.datadoghq.com/service_management/on-call/ - name: On-Call Paging -- description: 'Configure your [Datadog Opsgenie integration](https://docs.datadoghq.com/integrations/opsgenie/) - - directly through the Datadog API.' - externalDocs: - url: https://docs.datadoghq.com/api/latest/opsgenie-integration - name: Opsgenie Integration -- description: Manage connections between organizations. Org connections allow for - controlled sharing of data between different Datadog organizations. See the [Cross-Organization - Visibiltiy](https://docs.datadoghq.com/account_management/org_settings/cross_org_visibility/) - page for more information. - name: Org Connections -- description: Create, edit, and manage your organizations. Read more about [multi-org - accounts](https://docs.datadoghq.com/account_management/multi_organization). - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/account_management/multi_organization - name: Organizations -- description: 'The Powerpack endpoints allow you to: - - - - Get a Powerpack - - - Create a Powerpack - - - Delete a Powerpack - - - Get a list of all Powerpacks - - - The Patch and Delete API methods can only be performed on a Powerpack by - - a user who has the powerpack create permission for that specific Powerpack. - - - Read [Scale Graphing Expertise with Powerpacks](https://docs.datadoghq.com/dashboards/guide/powerpacks-best-practices/) - for more information.' - name: Powerpack -- description: The processes API allows you to query processes data for your organization. - See the [Live Processes page](https://docs.datadoghq.com/infrastructure/process/) - for more information. - name: Processes -- description: Manage your Real User Monitoring (RUM) applications, and search or - aggregate your RUM events over HTTP. See the [RUM & Session Replay page](https://docs.datadoghq.com/real_user_monitoring/) - for more information - name: RUM -- description: 'A restriction policy defines the access control rules for a resource, - mapping a set of relations - - (such as editor and viewer) to a set of allowed principals (such as roles, teams, - or users). - - The restriction policy determines who is authorized to perform what actions on - the resource.' - name: Restriction Policies -- description: 'The Roles API is used to create and manage Datadog roles, what - - [global permissions](https://docs.datadoghq.com/account_management/rbac/) - - they grant, and which users belong to them. - - - Permissions related to specific account assets can be granted to roles - - in the Datadog application without using this API. For example, granting - - read access on a specific log index to a role can be done in Datadog from the - - [Pipelines page](https://app.datadoghq.com/logs/pipelines).' - name: Roles -- description: Manage configuration of [rum-based metrics](https://app.datadoghq.com/rum/generate-metrics) - for your organization. - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/real_user_monitoring/platform/generate_metrics/ - name: Rum Metrics -- description: Manage retention filters through [Manage Applications](https://app.datadoghq.com/rum/list) - of RUM for your organization. - name: Rum Retention Filters -- description: Create and manage your security rules, signals, filters, and more. - See the [Datadog Security page](https://docs.datadoghq.com/security/) for more - information. - name: Security Monitoring -- description: Create, update, delete, and retrieve sensitive data scanner groups - and rules. See the [Sensitive Data Scanner page](https://docs.datadoghq.com/sensitive_data_scanner/) - for more information. - name: Sensitive Data Scanner -- description: Create, edit, and disable service accounts. See the [Service Accounts - page](https://docs.datadoghq.com/account_management/org_settings/service_accounts/) - for more information. - name: Service Accounts -- description: 'API to create, update, retrieve and delete service definitions. - - Note: Service Catalog [v3.0 schema](https://docs.datadoghq.com/service_catalog/service_definitions/v3-0/) - has new API endpoints documented under [Software Catalog](https://docs.datadoghq.com/api/latest/software-catalog/). - Use the following Service Definition endpoints for v2.2 and earlier.' - externalDocs: - url: https://docs.datadoghq.com/tracing/service_catalog/ - name: Service Definition -- description: '[Service Level Objectives](https://docs.datadoghq.com/monitors/service_level_objectives/#configuration) - - (SLOs) are a key part of the site reliability engineering toolkit. - - SLOs provide a framework for defining clear targets around application performance, - - which ultimately help teams provide a consistent customer experience, - - balance feature development with platform stability, - - and improve communication with internal and external users.' - name: Service Level Objectives -- description: 'API to create and update scorecard rules and outcomes. See [Service - Scorecards](https://docs.datadoghq.com/service_catalog/scorecards) for more information. - - - This feature is currently in BETA. If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/).' - name: Service Scorecards -- description: API to create, update, retrieve, and delete Software Catalog entities. - externalDocs: - url: https://docs.datadoghq.com/service_catalog/service_definitions#metadata-schema-v30-beta - name: Software Catalog -- description: SPA (Spark Pod Autosizing) API. Provides resource recommendations and - cost insights to help optimize Spark job configurations. - name: Spa -- description: Search and aggregate your spans from your Datadog platform over HTTP. - name: Spans -- description: Manage configuration of [span-based metrics](https://app.datadoghq.com/apm/traces/generate-metrics) - for your organization. See [Generate Metrics from Spans](https://docs.datadoghq.com/tracing/trace_pipeline/generate_metrics/) - for more information. - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/tracing/metrics/metrics_namespace/ - name: Spans Metrics -- description: "Datadog Synthetics uses simulated user requests and browser rendering - to help you ensure uptime,\nidentify regional issues, and track your application - performance. Datadog Synthetics tests come in\ntwo different flavors, [API tests](https://docs.datadoghq.com/synthetics/api_tests/)\nand - [browser tests](https://docs.datadoghq.com/synthetics/browser_tests). You can - use Datadog\u2019s API to\nmanage both test types programmatically.\n\nFor more - information about Synthetics, see the [Synthetics overview](https://docs.datadoghq.com/synthetics/)." - name: Synthetics -- description: View and manage teams within Datadog. See the [Teams page](https://docs.datadoghq.com/account_management/teams/) - for more information. - name: Teams -- description: 'The usage metering API allows you to get hourly, daily, and - - monthly usage across multiple facets of Datadog. - - This API is available to all Pro and Enterprise customers. - - - **Note**: Usage data is delayed by up to 72 hours from when it was incurred. - - It is retained for 15 months. - - - You can retrieve up to 24 hours of hourly usage data for multiple organizations, - - and up to two months of hourly usage data for a single organization in one request. - - Learn more on the [usage details documentation](https://docs.datadoghq.com/account_management/billing/usage_details/).' - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/account_management/billing/usage_details/ - name: Usage Metering -- description: Create, edit, and disable users. - externalDocs: - url: https://docs.datadoghq.com/account_management/users - name: Users -- description: Datadog Workflow Automation allows you to automate your end-to-end - processes by connecting Datadog with the rest of your tech stack. Build workflows - to auto-remediate your alerts, streamline your incident and security processes, - and reduce manual toil. Workflow Automation supports over 1,000+ OOTB actions, - including AWS, JIRA, ServiceNow, GitHub, and OpenAI. Learn more in our Workflow - Automation docs [here](https://docs.datadoghq.com/service_management/workflows/). - externalDocs: - description: Find out more at - url: https://docs.datadoghq.com/service_management/workflows/ - name: Workflow Automation -x-group-parameters: true diff --git a/provider-dev/downloaded/v1-openapi.yaml b/provider-dev/downloaded/v1-openapi.yaml new file mode 100644 index 0000000..7056d83 --- /dev/null +++ b/provider-dev/downloaded/v1-openapi.yaml @@ -0,0 +1,44980 @@ +components: + callbacks: {} + examples: {} + headers: {} + links: {} + parameters: + SignalID: + description: The ID of the signal. + in: path + name: signal_id + required: true + schema: + type: string + SlackAccountNamePathParameter: + description: Your Slack account name. + in: path + name: account_name + required: true + schema: + type: string + SlackChannelNamePathParameter: + description: The name of the Slack channel being operated on. + in: path + name: channel_name + required: true + schema: + type: string + requestBodies: {} + responses: + TooManyRequestsResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + schemas: + APIErrorResponse: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - "Bad Request" + items: + description: Error description. + example: "Bad Request" + type: string + type: array + required: + - errors + type: object + AWSAccount: + description: Returns the AWS account associated with this integration. + properties: + access_key_id: + description: Your AWS access key ID. Only required if your AWS account is a GovCloud or China account. + type: string + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + account_specific_namespace_rules: + additionalProperties: + description: A list of additional properties. + type: boolean + description: |- + An object (in the form `{"namespace1":true/false, "namespace2":true/false}`) containing user-supplied overrides + for AWS namespace metric collection. **Important**: This field only contains namespaces explicitly configured through API calls, + not the comprehensive enabled or disabled status of all namespaces. If a namespace is absent from this field, it uses Datadog's + internal defaults (all namespaces enabled by default, except `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage`). + For a complete view of all namespace statuses, use the V2 AWS Integration API instead. + example: {"auto_scaling": false, "opswork": false} + type: object + cspm_resource_collection_enabled: + default: false + description: Whether Datadog collects cloud security posture management resources from your AWS account. This includes additional resources not covered under the general `resource_collection`. + example: true + type: boolean + excluded_regions: + description: |- + An array of [AWS regions](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) + to exclude from metrics collection. + example: ["us-east-1", "us-west-2"] + items: + description: Regions to exclude. + type: string + type: array + extended_resource_collection_enabled: + default: false + description: Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for `cspm_resource_collection`. + example: true + type: boolean + filter_tags: + description: |- + The array of EC2 tags (in the form `key:value`) defines a filter that Datadog uses when collecting metrics from EC2. + Wildcards, such as `?` (for single characters) and `*` (for multiple characters) can also be used. + Only hosts that match one of the defined tags + will be imported into Datadog. The rest will be ignored. + Host matching a given tag can also be excluded by adding `!` before the tag. + For example, `env:production,instance-type:c1.*,!region:us-east-1` + example: ["$KEY:$VALUE"] + items: + description: The list of the filter_tags. + type: string + type: array + host_tags: + description: |- + Array of tags (in the form `key:value`) to add to all hosts + and metrics reporting through this integration. + example: ["$KEY:$VALUE"] + items: + description: The list of the host_tags. + type: string + type: array + metrics_collection_enabled: + default: true + description: Whether Datadog collects metrics for this AWS account. + example: false + type: boolean + resource_collection_enabled: + default: false + deprecated: true + description: Deprecated in favor of 'extended_resource_collection_enabled'. Whether Datadog collects a standard set of resources from your AWS account. + example: true + type: boolean + role_name: + description: Your Datadog role delegation name. + example: "DatadogAWSIntegrationRole" + type: string + secret_access_key: + description: Your AWS secret access key. Only required if your AWS account is a GovCloud or China account. + type: string + type: object + AWSAccountAndLambdaRequest: + description: AWS account ID and Lambda ARN. + properties: + account_id: + description: >- + Your AWS Account ID without dashes. + example: "1234567" + type: string + lambda_arn: + description: >- + ARN of the Datadog Lambda created during the Datadog-Amazon Web services Log collection setup. + example: "arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest" + type: string + required: + - account_id + - lambda_arn + type: object + AWSAccountCreateResponse: + description: The Response returned by the AWS Create Account call. + properties: + external_id: + description: AWS external_id. + type: string + type: object + AWSAccountDeleteRequest: + description: List of AWS accounts to delete. + properties: + access_key_id: + description: Your AWS access key ID. Only required if your AWS account is a GovCloud or China account. + type: string + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + role_name: + description: Your Datadog role delegation name. + example: "DatadogAWSIntegrationRole" + type: string + type: object + AWSAccountListResponse: + description: List of enabled AWS accounts. + properties: + accounts: + description: List of enabled AWS accounts. + items: + $ref: "#/components/schemas/AWSAccount" + type: array + type: object + AWSEventBridgeAccountConfiguration: + description: The EventBridge configuration for one AWS account. + properties: + accountId: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + eventHubs: + description: Array of AWS event sources associated with this account. + items: + $ref: "#/components/schemas/AWSEventBridgeSource" + type: array + tags: + description: |- + Array of tags (in the form `key:value`) which are added to all hosts + and metrics reporting through the main AWS integration. + example: ["$KEY:$VALUE"] + items: + description: The list of the host_tags. + type: string + type: array + type: object + AWSEventBridgeCreateRequest: + description: An object used to create an EventBridge source. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + create_event_bus: + description: |- + True if Datadog should create the event bus in addition to the event + source. Requires the `events:CreateEventBus` permission. + example: true + type: boolean + event_generator_name: + description: |- + The given part of the event source name, which is then combined with an + assigned suffix to form the full name. + example: app-alerts + type: string + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + type: object + AWSEventBridgeCreateResponse: + description: A created EventBridge source. + properties: + event_source_name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + has_bus: + description: True if the event bus was created in addition to the source. + example: true + type: boolean + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + status: + $ref: "#/components/schemas/AWSEventBridgeCreateStatus" + type: object + AWSEventBridgeCreateStatus: + description: The event source status "created". + enum: ["created"] + example: created + type: string + x-enum-varnames: ["CREATED"] + AWSEventBridgeDeleteRequest: + description: An object used to delete an EventBridge source. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + event_generator_name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + type: object + AWSEventBridgeDeleteResponse: + description: An indicator of the successful deletion of an EventBridge source. + properties: + status: + $ref: "#/components/schemas/AWSEventBridgeDeleteStatus" + type: object + AWSEventBridgeDeleteStatus: + description: The event source status "empty". + enum: ["empty"] + example: empty + type: string + x-enum-varnames: ["EMPTY"] + AWSEventBridgeListResponse: + description: An object describing the EventBridge configuration for multiple accounts. + properties: + accounts: + description: List of accounts with their event sources. + items: + $ref: "#/components/schemas/AWSEventBridgeAccountConfiguration" + type: array + isInstalled: + description: True if the EventBridge sub-integration is enabled for your organization. + type: boolean + type: object + AWSEventBridgeSource: + description: An EventBridge source. + properties: + name: + description: The event source name. + type: string + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + type: string + type: object + AWSLogsAsyncError: + description: Description of errors. + properties: + code: + description: Code properties + example: "no_such_config" + type: string + message: + description: Message content. + example: "AWS account 12345 has no Lambda config to update" + type: string + type: object + AWSLogsAsyncResponse: + description: A list of all Datadog-AWS logs integrations available in your Datadog organization. + properties: + errors: + description: List of errors. + items: + $ref: "#/components/schemas/AWSLogsAsyncError" + type: array + status: + description: Status of the properties. + example: "created" + type: string + type: object + AWSLogsLambda: + description: Description of the Lambdas. + properties: + arn: + description: Available ARN IDs. + type: string + type: object + AWSLogsListResponse: + description: A list of all Datadog-AWS logs integrations available in your Datadog organization. + properties: + account_id: + description: >- + Your AWS Account ID without dashes. + example: "1234567" + type: string + lambdas: + description: >- + List of ARNs configured in your Datadog account. + example: ["arn": "arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest"] + items: + $ref: "#/components/schemas/AWSLogsLambda" + type: array + services: + description: >- + Array of services IDs. + example: ["s3", "elb", "elbv2", "cloudfront", "redshift", "lambda"] + items: + description: Description of the services. + type: string + type: array + type: object + AWSLogsListServicesResponse: + description: The list of current AWS services for which Datadog offers automatic log collection. + properties: + id: + description: >- + Key value in returned object. + example: "s3" + type: string + label: + description: >- + Name of service available for configuration with Datadog logs. + example: "S3 Access Logs" + type: string + type: object + AWSLogsServicesRequest: + description: A list of current AWS services for which Datadog offers automatic log collection. + properties: + account_id: + description: >- + Your AWS Account ID without dashes. + example: "1234567" + type: string + services: + description: >- + Array of services IDs set to enable automatic log collection. Discover the list of available services with the get list of AWS log ready services API endpoint. + example: ["s3", "elb", "elbv2", "cloudfront", "redshift", "lambda"] + items: + description: Description of services. + type: string + type: array + required: + - account_id + - services + type: object + AWSNamespace: + description: The namespace associated with the tag filter entry. + enum: [elb, application_elb, sqs, rds, custom, network_elb, lambda, step_functions] + type: string + x-enum-varnames: ["ELB", "APPLICATION_ELB", "SQS", "RDS", "CUSTOM", "NETWORK_ELB", "LAMBDA", "STEP_FUNCTIONS"] + AWSTagFilter: + description: A tag filter. + properties: + namespace: + $ref: "#/components/schemas/AWSNamespace" + tag_filter_str: + description: The tag filter string. + example: "prod*" + type: string + type: object + AWSTagFilterCreateRequest: + description: The objects used to set an AWS tag filter. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + namespace: + $ref: "#/components/schemas/AWSNamespace" + tag_filter_str: + description: The tag filter string. + example: "prod*" + type: string + type: object + AWSTagFilterDeleteRequest: + description: The objects used to delete an AWS tag filter entry. + properties: + account_id: + description: The unique identifier of your AWS account. + example: "FAKEAC0FAKEAC2FAKEAC" + type: string + namespace: + $ref: "#/components/schemas/AWSNamespace" + type: object + AWSTagFilterListResponse: + description: An array of tag filter rules by `namespace` and tag filter string. + properties: + filters: + description: An array of tag filters. + items: + $ref: "#/components/schemas/AWSTagFilter" + type: array + type: object + AccessRole: + description: The access role of the user. Options are **st** (standard user), **adm** (admin user), or **ro** (read-only user). + enum: + - st + - adm + - ro + - ERROR + example: "ro" + nullable: true + type: string + x-enum-varnames: + - STANDARD + - ADMIN + - READ_ONLY + - ERROR + AddSignalToIncidentRequest: + description: Attributes describing which incident to add the signal to. + properties: + add_to_signal_timeline: + description: Whether to post the signal on the incident timeline. + type: boolean + incident_id: + description: Public ID attribute of the incident to which the signal will be added. + example: 2066 + format: int64 + type: integer + version: + $ref: "#/components/schemas/Version" + required: + - incident_id + type: object + AgentCheck: + description: Array of strings. + example: ["ntp", "ntp", "ntp:d884b5186b651429", "OK", "", ""] + items: + description: Agent check running on the host. + type: array + AlertGraphWidgetDefinition: + description: Alert graphs are timeseries graphs showing the current status of any monitor defined on your system. + properties: + alert_id: + description: ID of the alert to use in the widget. + example: "" + type: string + description: + description: The description of the widget. + type: string + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: The title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/AlertGraphWidgetDefinitionType" + viz_type: + $ref: "#/components/schemas/WidgetVizType" + required: + - type + - alert_id + - viz_type + type: object + AlertGraphWidgetDefinitionType: + default: alert_graph + description: Type of the alert graph widget. + enum: + - alert_graph + example: alert_graph + type: string + x-enum-varnames: + - ALERT_GRAPH + AlertValueWidgetDefinition: + description: Alert values are query values showing the current value of the metric in any monitor defined on your system. + properties: + alert_id: + description: ID of the alert to use in the widget. + example: "" + type: string + description: + description: The description of the widget. + type: string + precision: + description: Number of decimal to show. If not defined, will use the raw value. + format: int64 + type: integer + text_align: + $ref: "#/components/schemas/WidgetTextAlign" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of value in the widget. + type: string + type: + $ref: "#/components/schemas/AlertValueWidgetDefinitionType" + unit: + description: Unit to display with the value. + type: string + required: + - type + - alert_id + type: object + AlertValueWidgetDefinitionType: + default: alert_value + description: Type of the alert value widget. + enum: + - alert_value + example: alert_value + type: string + x-enum-varnames: + - ALERT_VALUE + ApiKey: + description: |- + Datadog API key. + properties: + created: + description: Date of creation of the API key. + example: "2019-08-02 15:31:07" + readOnly: true + type: string + created_by: + description: Datadog user handle that created the API key. + example: "john@example.com" + readOnly: true + type: string + key: + description: API key. + example: "1234512345123456abcabc912349abcd" + maxLength: 32 + minLength: 32 + readOnly: true + type: string + name: + description: Name of your API key. + example: "example user" + type: string + type: object + ApiKeyListResponse: + description: List of API and application keys available for a given organization. + example: {"api_keys": [{"created_by": "test_user", "key": "1234512345123456abcabc912349abcd", "name": "app_key"}]} + properties: + api_keys: + description: Array of API keys. + items: + $ref: "#/components/schemas/ApiKey" + type: array + type: object + ApiKeyResponse: + description: An API key with its associated metadata. + example: {"api_key": {"created_by": "test_user", "key": "1234512345123456abcabc912349abcd", "name": "app_key"}} + properties: + api_key: + $ref: "#/components/schemas/ApiKey" + type: object + ApmStatsQueryColumnType: + description: Column properties. + properties: + alias: + description: A user-assigned alias for the column. + example: Requests + type: string + cell_display_mode: + $ref: "#/components/schemas/TableWidgetCellDisplayMode" + name: + description: Column name. + example: Reqs + type: string + order: + $ref: "#/components/schemas/WidgetSort" + required: + - name + type: object + ApmStatsQueryDefinition: + description: The APM stats query for table and distributions widgets. + properties: + columns: + description: Column properties used by the front end for display. + items: + $ref: "#/components/schemas/ApmStatsQueryColumnType" + type: array + env: + description: Environment name. + example: prod + type: string + name: + description: Operation name associated with service. + example: "rack.request" + type: string + primary_tag: + description: The organization's host group name and value. + example: "datacenter:*" + type: string + resource: + description: Resource name. + example: CartsController + type: string + row_type: + $ref: "#/components/schemas/ApmStatsQueryRowType" + service: + description: Service name. + example: "web-store" + type: string + required: + - service + - env + - name + - primary_tag + - row_type + type: object + ApmStatsQueryRowType: + description: The level of detail for the request. + enum: + - service + - resource + - span + example: "service" + type: string + x-enum-varnames: + - SERVICE + - RESOURCE + - SPAN + ApplicationKey: + description: An application key with its associated metadata. + properties: + hash: + description: Hash of an application key. + example: "1234512345123459cda4eb9ced49a3d84fd0138c" + maxLength: 40 + minLength: 40 + readOnly: true + type: string + name: + description: Name of an application key. + example: "example user" + type: string + owner: + description: Owner of an application key. + example: "example.com" + readOnly: true + type: string + type: object + ApplicationKeyListResponse: + description: An application key response. + example: {"application_keys": [{"hash": "1234512345123459cda4eb9ced49a3d84fd0138c", "name": "app_key", "owner": "test_user"}]} + properties: + application_keys: + description: Array of application keys. + items: + $ref: "#/components/schemas/ApplicationKey" + type: array + type: object + ApplicationKeyResponse: + description: An application key response. + example: {"application_key": {"hash": "1234512345123459cda4eb9ced49a3d84fd0138c", "name": "app_key", "owner": "test_user"}} + properties: + application_key: + $ref: "#/components/schemas/ApplicationKey" + type: object + AuthenticationValidationResponse: + description: Represent validation endpoint responses. + properties: + valid: + description: Return `true` if the authentication response is valid. + example: true + readOnly: true + type: boolean + type: object + AzureAccount: + description: Datadog-Azure integrations configured for your organization. + properties: + app_service_plan_filters: + description: |- + Limit the Azure app service plans that are pulled into Datadog using tags. + Only app service plans that match one of the defined tags are imported into Datadog. + example: "key:value,filter:example" + type: string + automute: + description: |- + Silence monitors for expected Azure VM shutdowns. + example: true + type: boolean + client_id: + description: Your Azure web application ID. + example: "testc7f6-1234-5678-9101-3fcbf464test" + type: string + client_secret: + description: Your Azure web application secret key. + example: "TestingRh2nx664kUy5dIApvM54T4AtO" + type: string + container_app_filters: + description: |- + Limit the Azure container apps that are pulled into Datadog using tags. + Only container apps that match one of the defined tags are imported into Datadog. + example: "key:value,filter:example" + type: string + cspm_enabled: + description: |- + When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration. + Note: This requires resource_collection_enabled to be set to true. + example: true + type: boolean + custom_metrics_enabled: + description: |- + Enable custom metrics for your organization. + example: true + type: boolean + errors: + description: Errors in your configuration. + example: ["*"] + items: + description: List of errors. + readOnly: true + type: string + type: array + host_filters: + description: |- + Limit the Azure instances that are pulled into Datadog by using tags. + Only hosts that match one of the defined tags are imported into Datadog. + example: "key:value,filter:example" + type: string + metrics_enabled: + description: |- + Enable Azure metrics for your organization. + example: true + type: boolean + metrics_enabled_default: + description: |- + Enable Azure metrics for your organization for resource providers where no resource provider config is specified. + example: true + type: boolean + new_client_id: + description: Your New Azure web application ID. + example: "new1c7f6-1234-5678-9101-3fcbf464test" + type: string + new_tenant_name: + description: Your New Azure Active Directory ID. + example: "new1c44-1234-5678-9101-cc00736ftest" + type: string + resource_collection_enabled: + description: |- + When enabled, Datadog collects metadata and configuration info from cloud resources (compute instances, databases, load balancers, etc.) monitored by this app registration. + example: true + type: boolean + resource_provider_configs: + description: Configuration settings applied to resources from the specified Azure resource providers. + items: + $ref: "#/components/schemas/ResourceProviderConfig" + type: array + secretless_auth_enabled: + description: |- + (Preview) When enabled, Datadog authenticates with this app registration using federated workload identity credentials instead of a client secret. + example: true + type: boolean + tenant_name: + description: Your Azure Active Directory ID. + example: "testc44-1234-5678-9101-cc00736ftest" + type: string + usage_metrics_enabled: + description: |- + Enable azure.usage metrics for your organization. + example: true + type: boolean + type: object + AzureAccountListResponse: + description: Accounts configured for your organization. + items: + $ref: "#/components/schemas/AzureAccount" + type: array + BarChartWidgetDefinition: + description: The bar chart visualization displays categorical data using vertical bars, allowing you to compare values across different groups. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + description: List of bar chart widget requests. + example: ["q": "system.load.1"] + items: + $ref: "#/components/schemas/BarChartWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + style: + $ref: "#/components/schemas/BarChartWidgetStyle" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/BarChartWidgetDefinitionType" + required: + - type + - requests + type: object + BarChartWidgetDefinitionType: + default: bar_chart + description: Type of the bar chart widget. + enum: + - bar_chart + example: bar_chart + type: string + x-enum-varnames: + - BAR_CHART + BarChartWidgetDisplay: + description: Bar chart widget display options. + oneOf: + - $ref: "#/components/schemas/BarChartWidgetStacked" + - $ref: "#/components/schemas/BarChartWidgetFlat" + BarChartWidgetFlat: + description: Bar chart widget flat display. + properties: + type: + $ref: "#/components/schemas/BarChartWidgetFlatType" + required: + - type + type: object + BarChartWidgetFlatType: + default: flat + description: Bar chart widget flat display type. + enum: + - flat + example: flat + type: string + x-enum-varnames: + - FLAT + BarChartWidgetLegend: + description: Bar chart widget stacked legend behavior. + enum: + - automatic + - inline + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - INLINE + - NONE + BarChartWidgetRequest: + description: Updated bar chart widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + conditional_formats: + description: List of conditional formats. + example: [{"comparator": ">=", "palette": "blue", "value": 1.0}] + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: "#/components/schemas/WidgetSortBy" + style: + $ref: "#/components/schemas/WidgetRequestStyle" + type: object + BarChartWidgetScaling: + description: Bar chart widget scaling definition. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + BarChartWidgetStacked: + description: Bar chart widget stacked display options. + properties: + legend: + $ref: "#/components/schemas/BarChartWidgetLegend" + type: + $ref: "#/components/schemas/BarChartWidgetStackedType" + required: + - type + type: object + BarChartWidgetStackedType: + default: stacked + description: Bar chart widget stacked display type. + enum: + - stacked + example: stacked + type: string + x-enum-varnames: + - STACKED + BarChartWidgetStyle: + description: Style customization for a bar chart widget. + properties: + display: + $ref: "#/components/schemas/BarChartWidgetDisplay" + palette: + description: Color palette to apply to the widget. + type: string + scaling: + $ref: "#/components/schemas/BarChartWidgetScaling" + type: object + CalendarInterval: + additionalProperties: false + description: Calendar interval definition. + properties: + alignment: + description: Alignment of the interval. Valid values depend on the interval type. For `day`, use hours (for example, `1am`, `2pm`, or `14`). For `week`, use day names (for example, `monday`). For `month`, use day-of-month ordinals (for example, `1st`, `15th`). For `year` or `quarter`, use month names (for example, `january`). + example: "monday" + type: string + quantity: + description: Quantity of the interval. + example: 1 + format: int64 + type: integer + timezone: + description: Timezone for the interval. + example: "UTC" + type: string + type: + $ref: "#/components/schemas/CalendarIntervalType" + required: + - type + type: object + CalendarIntervalType: + description: Type of calendar interval. + enum: + - day + - week + - month + - year + - quarter + - minute + - hour + example: week + type: string + x-enum-varnames: + - DAY + - WEEK + - MONTH + - YEAR + - QUARTER + - MINUTE + - HOUR + CancelDowntimesByScopeRequest: + description: Cancel downtimes according to scope. + properties: + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: "host:myserver" + type: string + required: + - scope + type: object + CanceledDowntimesIds: + description: Object containing array of IDs of canceled downtimes. + properties: + cancelled_ids: + description: ID of downtimes that were canceled. + example: [123456789, 123456790] + items: + description: Integer representation of one downtime ID. + format: int64 + type: integer + type: array + type: object + ChangeWidgetDefinition: + description: The Change graph shows you the change in a value over the time period chosen. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + description: |- + Array of one request object to display in the widget. + + See the dedicated [Request JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/request_json) + to learn how to build the `REQUEST_SCHEMA`. + example: ["q": "{}"] + items: + $ref: "#/components/schemas/ChangeWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/ChangeWidgetDefinitionType" + required: + - type + - requests + type: object + ChangeWidgetDefinitionType: + default: change + description: Type of the change widget. + enum: + - change + example: change + type: string + x-enum-varnames: + - CHANGE + ChangeWidgetRequest: + description: Updated change widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + change_type: + $ref: "#/components/schemas/WidgetChangeType" + compare_to: + $ref: "#/components/schemas/WidgetCompareTo" + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + increase_good: + description: Whether to show increase as good. + type: boolean + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + order_by: + $ref: "#/components/schemas/WidgetOrderBy" + order_dir: + $ref: "#/components/schemas/WidgetSort" + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Query definition. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + show_present: + description: Whether to show the present value. + type: boolean + type: object + CheckCanDeleteMonitorResponse: + description: Response of monitor IDs that can or can't be safely deleted. + properties: + data: + $ref: "#/components/schemas/CheckCanDeleteMonitorResponseData" + errors: + additionalProperties: + description: Strings denoting where a monitor is used. + items: + description: Asset where a monitor is used. + type: string + type: array + description: A mapping of Monitor ID to strings denoting where it's used. + nullable: true + type: object + required: + - data + type: object + CheckCanDeleteMonitorResponseData: + description: Wrapper object with the list of monitor IDs. + example: {} + properties: + ok: + description: An array of Monitor IDs that can be safely deleted. + items: + description: ID of a monitor that can be safely deleted. + format: int64 + type: integer + type: array + type: object + CheckCanDeleteSLOResponse: + description: A service level objective response containing the requested object. + properties: + data: + $ref: "#/components/schemas/CheckCanDeleteSLOResponseData" + errors: + additionalProperties: + description: Description of the service level objective reference. + type: string + description: A mapping of SLO id to it's current usages. + type: object + type: object + CheckCanDeleteSLOResponseData: + description: An array of service level objective objects. + properties: + ok: + description: An array of SLO IDs that can be safely deleted. + items: + description: An SLO ID. + type: string + type: array + type: object + CheckStatusWidgetDefinition: + description: Check status shows the current status or number of results for any check performed. + properties: + check: + description: Name of the check to use in the widget. + example: "" + type: string + description: + description: The description of the widget. + type: string + group: + description: Group reporting a single check. + type: string + group_by: + description: List of tag prefixes to group by in the case of a cluster check. + items: + description: Tag prefix. + type: string + type: array + grouping: + $ref: "#/components/schemas/WidgetGrouping" + tags: + description: List of tags used to filter the groups reporting a cluster check. + items: + description: Tag name. + type: string + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/CheckStatusWidgetDefinitionType" + required: + - type + - check + - grouping + type: object + CheckStatusWidgetDefinitionType: + default: check_status + description: Type of the check status widget. + enum: + - check_status + example: check_status + type: string + x-enum-varnames: + - CHECK_STATUS + CohortWidgetDefinition: + additionalProperties: false + description: The cohort widget visualizes user retention over time. + properties: + description: + description: The description of the widget. + type: string + requests: + description: List of Cohort widget requests. + example: + - query: + compute: + aggregation: count + metric: __dd.retention_rate + data_source: product_analytics_retention + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:/home" + time_interval: + type: calendar + value: + type: week + retention_entity: "@usr.id" + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:/checkout" + request_type: retention_grid + items: + $ref: "#/components/schemas/RetentionGridRequest" + description: A cohort widget request. + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/CohortWidgetDefinitionType" + required: + - type + - requests + type: object + CohortWidgetDefinitionType: + default: cohort + description: Type of the Cohort widget. + enum: + - cohort + example: cohort + type: string + x-enum-varnames: + - COHORT + ComparisonCustomTimeframe: + description: Fixed time range for a `custom_timeframe` comparison. + properties: + from: + description: Start time in milliseconds since epoch. + example: 1779290190000 + format: int64 + type: integer + to: + description: End time in milliseconds since epoch. + example: 1779894990000 + format: int64 + type: integer + required: + - from + - to + type: object + ComparisonDuration: + description: The comparison period. Use a preset `type` value or set `type` to `custom_timeframe` and provide `custom_timeframe` with explicit millisecond epoch bounds. + properties: + custom_timeframe: + $ref: "#/components/schemas/ComparisonCustomTimeframe" + description: Required when `type` is `custom_timeframe`. Fixed time range to compare against. + type: + $ref: "#/components/schemas/ComparisonDurationType" + required: + - type + type: object + ComparisonDurationType: + description: "The comparison window type." + enum: + - previous_timeframe + - custom_timeframe + - previous_day + - previous_week + - previous_month + example: previous_timeframe + type: string + x-enum-varnames: + - PREVIOUS_TIMEFRAME + - CUSTOM_TIMEFRAME + - PREVIOUS_DAY + - PREVIOUS_WEEK + - PREVIOUS_MONTH + ContentEncoding: + description: HTTP header used to compress the media-type. + enum: + - gzip + - deflate + type: string + x-enum-varnames: + - GZIP + - DEFLATE + Creator: + description: Object describing the creator of the shared element. + properties: + email: + description: Email of the creator. + type: string + handle: + description: Handle of the creator. + type: string + name: + description: Name of the creator. + nullable: true + type: string + readOnly: true + type: object + CrossOrgUuids: + description: The source organization UUID for cross organization queries. Feature in Private Beta. + example: ["6434abde-xxxx-yyyy-zzzz-da7ad0900001"] + items: + description: The source organization UUID. + example: 6434abde-xxxx-yyyy-zzzz-da7ad0900001 + type: string + maxItems: 1 + type: array + Dashboard: + description: |- + A dashboard is Datadog’s tool for visually tracking, analyzing, and displaying + key performance metrics, which enable you to monitor the health of your infrastructure. + properties: + author_handle: + description: Identifier of the dashboard author. + example: test@datadoghq.com + readOnly: true + type: string + author_name: + description: Name of the dashboard author. + example: John Doe + nullable: true + readOnly: true + type: string + created_at: + description: Creation date of the dashboard. + format: date-time + readOnly: true + type: string + default_timeframe: + $ref: "#/components/schemas/DashboardDefaultTimeframeSetting" + description: The default timeframe applied when opening the dashboard. Set to `null` to clear. + nullable: true + description: + description: Description of the dashboard. + nullable: true + type: string + id: + description: ID of the dashboard. + example: "123-abc-456" + readOnly: true + type: string + is_read_only: + deprecated: true + description: |- + Whether this dashboard is read-only. If True, only the author and admins can make changes to it. + + This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards. + example: false + type: boolean + layout_type: + $ref: "#/components/schemas/DashboardLayoutType" + modified_at: + description: Modification date of the dashboard. + format: date-time + readOnly: true + type: string + notify_list: + description: List of handles of users to notify when changes are made to this dashboard. + items: + description: User handles. + type: string + nullable: true + type: array + reflow_type: + $ref: "#/components/schemas/DashboardReflowType" + restricted_roles: + description: |- + A list of role identifiers. Only the author and users associated with at least one of these roles can edit this dashboard. + items: + description: A role UUID. + type: string + type: array + tabs: + description: List of tabs for organizing dashboard widgets into groups. + items: + $ref: "#/components/schemas/DashboardTab" + maxItems: 100 + nullable: true + type: array + tags: + description: List of team names representing ownership of a dashboard. + items: + description: The name of a Datadog team of the form `team:` + type: string + maxItems: 5 + nullable: true + type: array + template_variable_presets: + description: Array of template variables saved views. + items: + $ref: "#/components/schemas/DashboardTemplateVariablePreset" + nullable: true + type: array + template_variables: + description: List of template variables for this dashboard. + items: + $ref: "#/components/schemas/DashboardTemplateVariable" + nullable: true + type: array + title: + description: Title of the dashboard. + example: "" + type: string + url: + description: The URL of the dashboard. + example: /dashboard/123-abc-456/example-dashboard-title + readOnly: true + type: string + widgets: + description: List of widgets to display on the dashboard. + example: ["definition": {"requests": {"fill": {"q": "avg:system.cpu.user{*}"}}, "type": "hostmap"}] + items: + $ref: "#/components/schemas/Widget" + type: array + required: + - title + - layout_type + - widgets + type: object + DashboardBulkActionData: + description: Dashboard bulk action request data. + example: {"id": "123-abc-456", "type": "dashboard"} + properties: + id: + $ref: "#/components/schemas/DashboardID" + type: + $ref: "#/components/schemas/DashboardResourceType" + required: + - type + - id + type: object + DashboardBulkActionDataList: + description: List of dashboard bulk action request data objects. + example: [{"id": "123-abc-456", "type": "dashboard"}] + items: + $ref: "#/components/schemas/DashboardBulkActionData" + type: array + DashboardBulkDeleteRequest: + description: Dashboard bulk delete request body. + example: {"data": [{"id": "123-abc-456", "type": "dashboard"}]} + properties: + data: + $ref: "#/components/schemas/DashboardBulkActionDataList" + required: + - data + type: object + DashboardDefaultTimeframeSetting: + description: The default timeframe applied when opening the dashboard. Set to `null` to clear the dashboard's default timeframe. + oneOf: + - $ref: "#/components/schemas/DashboardLiveTimeframe" + - $ref: "#/components/schemas/DashboardFixedTimeframe" + DashboardDeleteResponse: + description: Response from the delete dashboard call. + properties: + deleted_dashboard_id: + description: ID of the deleted dashboard. + type: string + type: object + DashboardFixedTimeframe: + description: A fixed dashboard timeframe. + properties: + from: + description: Start time in milliseconds since epoch. + example: 1712080128000 + format: int64 + minimum: 0 + type: integer + to: + description: End time in milliseconds since epoch. + example: 1712083128000 + format: int64 + minimum: 0 + type: integer + type: + $ref: "#/components/schemas/DashboardFixedTimeframeType" + required: + - type + - from + - to + type: object + DashboardFixedTimeframeType: + description: Type of fixed timeframe. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + DashboardGlobalTime: + description: Object containing the live span selection for the dashboard. + properties: + live_span: + $ref: "#/components/schemas/DashboardGlobalTimeLiveSpan" + type: object + DashboardGlobalTimeLiveSpan: + description: Dashboard global time live_span selection + enum: + - 15m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + example: "1h" + type: string + x-enum-varnames: + - PAST_FIFTEEN_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + DashboardID: + description: Dashboard resource ID. + example: "123-abc-456" + type: string + DashboardInviteType: + description: Type for shared dashboard invitation request body. + enum: + - public_dashboard_invitation + example: public_dashboard_invitation + type: string + x-enum-varnames: + - PUBLIC_DASHBOARD_INVITATION + DashboardLayoutType: + description: Layout type of the dashboard. + enum: + - ordered + - free + example: ordered + type: string + x-enum-varnames: + - ORDERED + - FREE + DashboardList: + description: Your Datadog Dashboards. + properties: + author: + $ref: "#/components/schemas/Creator" + created: + description: Date of creation of the dashboard list. + format: date-time + readOnly: true + type: string + dashboard_count: + description: The number of dashboards in the list. + format: int64 + readOnly: true + type: integer + id: + description: The ID of the dashboard list. + format: int64 + readOnly: true + type: integer + is_favorite: + description: Whether or not the list is in the favorites. + readOnly: true + type: boolean + modified: + description: Date of last edition of the dashboard list. + format: date-time + readOnly: true + type: string + name: + description: The name of the dashboard list. + example: My Dashboard + type: string + type: + description: The type of dashboard list. + example: "manual_dashboard_list" + readOnly: true + type: string + required: + - name + type: object + DashboardListDeleteResponse: + description: Deleted dashboard details. + properties: + deleted_dashboard_list_id: + description: ID of the deleted dashboard list. + format: int64 + type: integer + type: object + DashboardListListResponse: + description: Information on your dashboard lists. + properties: + dashboard_lists: + description: List of all your dashboard lists. + items: + $ref: "#/components/schemas/DashboardList" + type: array + type: object + DashboardLiveTimeframe: + description: A live dashboard timeframe. + properties: + type: + $ref: "#/components/schemas/DashboardLiveTimeframeType" + unit: + $ref: "#/components/schemas/WidgetLiveSpanUnit" + value: + description: Value of the live timeframe span. + example: 4 + format: int64 + minimum: 1 + type: integer + required: + - type + - value + - unit + type: object + DashboardLiveTimeframeType: + description: Type of live timeframe. + enum: + - live + example: live + type: string + x-enum-varnames: + - LIVE + DashboardReflowType: + description: |- + Reflow type for a **new dashboard layout** dashboard. Set this only when layout type is 'ordered'. + If set to 'fixed', the dashboard expects all widgets to have a layout, and if it's set to 'auto', + widgets should not have layouts. + enum: + - auto + - fixed + type: string + x-enum-varnames: + - AUTO + - FIXED + DashboardResourceType: + default: dashboard + description: Dashboard resource type. + enum: + - dashboard + example: dashboard + type: string + x-enum-varnames: + - DASHBOARD + DashboardRestoreRequest: + description: Dashboard restore request body. + example: {"data": [{"id": "123-abc-456", "type": "dashboard"}]} + properties: + data: + $ref: "#/components/schemas/DashboardBulkActionDataList" + required: + - data + type: object + DashboardShareType: + description: Type of sharing access (either open to anyone who has the public URL or invite-only). + enum: + - open + - invite + - embed + nullable: true + type: string + x-enum-varnames: + - OPEN + - INVITE + - EMBED + DashboardSummary: + description: Dashboard summary response. + properties: + dashboards: + description: List of dashboard definitions. + items: + $ref: "#/components/schemas/DashboardSummaryDefinition" + type: array + type: object + DashboardSummaryDefinition: + description: Dashboard definition. + properties: + author_handle: + description: Identifier of the dashboard author. + type: string + created_at: + description: Creation date of the dashboard. + format: date-time + type: string + description: + description: Description of the dashboard. + nullable: true + type: string + id: + description: Dashboard identifier. + type: string + is_read_only: + deprecated: true + description: |- + Whether this dashboard is read-only. If True, only the author and admins can make changes to it. + + This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards. + type: boolean + layout_type: + $ref: "#/components/schemas/DashboardLayoutType" + modified_at: + description: Modification date of the dashboard. + format: date-time + type: string + title: + description: Title of the dashboard. + type: string + url: + description: URL of the dashboard. + type: string + type: object + DashboardTab: + description: Dashboard tab for organizing widgets. + properties: + id: + description: UUID of the tab. + example: "" + format: uuid + type: string + name: + description: Name of the tab. + example: L + maxLength: 100 + minLength: 1 + type: string + widget_ids: + description: >- + List of widget IDs belonging to this tab. The backend also accepts positional references in @N format (1-indexed) as a convenience for Terraform and other declarative tools. + example: + - 0 + items: + description: Widget ID. + format: int64 + type: integer + type: array + required: + - id + - name + - widget_ids + type: object + DashboardTemplateVariable: + description: Template variable. + properties: + available_values: + description: The list of values that the template variable drop-down is limited to. + example: ["my-host", "host1", "host2"] + items: + description: Template variable value. + type: string + nullable: true + type: array + default: + deprecated: true + description: (deprecated) The default value for the template variable on dashboard load. Cannot be used in conjunction with `defaults`. + example: my-host + nullable: true + type: string + defaults: + description: One or many default values for template variables on load. If more than one default is specified, they will be unioned together with `OR`. Cannot be used in conjunction with `default`. + example: ["my-host-1", "my-host-2"] + items: + description: One of many default values for the template variable on dashboard load. + minLength: 1 + type: string + type: array + name: + description: The name of the variable. + example: host1 + type: string + prefix: + description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down. + example: host + nullable: true + type: string + type: + description: The type of variable. This is to differentiate between filter variables (interpolated in query) and group by variables (interpolated into group by). + example: group + nullable: true + type: string + required: + - name + type: object + DashboardTemplateVariablePreset: + description: Template variables saved views. + properties: + name: + description: The name of the variable. + type: string + template_variables: + description: List of variables. + items: + $ref: "#/components/schemas/DashboardTemplateVariablePresetValue" + type: array + type: object + DashboardTemplateVariablePresetValue: + description: Template variables saved views. + properties: + name: + description: The name of the variable. + type: string + value: + deprecated: true + description: (deprecated) The value of the template variable within the saved view. Cannot be used in conjunction with `values`. + type: string + values: + description: One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified. Cannot be used in conjunction with `value`. + items: + description: One or many values of the template variable within the saved view. + minLength: 1 + type: string + minItems: 1 + type: array + type: object + DashboardType: + description: The type of the associated private dashboard. + enum: + - custom_timeboard + - custom_screenboard + example: "custom_timeboard" + type: string + x-enum-varnames: + - CUSTOM_TIMEBOARD + - CUSTOM_SCREENBOARD + DataProjectionQuery: + description: Query configuration for a data projection request. + properties: + data_source: + description: Data source for the query. + example: logs + type: string + indexes: + description: List of indexes to query. + items: + description: Index name. + type: string + type: array + query_string: + description: The query string to filter events. + example: "service:web-store" + type: string + storage: + description: Storage location for the query. + type: string + required: + - query_string + - data_source + type: object + DataProjectionRequestType: + description: Type of a data projection request. + enum: + - data_projection + example: data_projection + type: string + x-enum-varnames: + - DATA_PROJECTION + DatasetListQuery: + description: Query that lists the rows of a published dataset (a DDSQL query) without aggregation. + properties: + data_source: + $ref: "#/components/schemas/DatasetListQueryDataSourceType" + dataset_id: + description: ID of the published dataset to query. + example: "abc-123-def" + type: string + dataset_provider: + $ref: "#/components/schemas/PublishedDatasetProvider" + filter: + description: Filter applied to the dataset's rows, using events-style search syntax. + example: "service:web-store" + type: string + limit: + description: Maximum number of rows to return from the dataset query. + format: int64 + type: integer + sort: + $ref: "#/components/schemas/DatasetListQuerySort" + required: + - data_source + - dataset_provider + - dataset_id + type: object + DatasetListQueryDataSourceType: + description: Identifies this as a published-dataset list query. + enum: + - dataset + example: dataset + type: string + x-enum-varnames: + - DATASET + DatasetListQuerySort: + description: Sort configuration for a `DatasetListQuery`. + properties: + fields: + description: List of fields to sort the rows by, applied in order. + example: + - name: cpu_usage + order: desc + items: + $ref: "#/components/schemas/DatasetListQuerySortField" + type: array + required: + - fields + type: object + DatasetListQuerySortField: + description: A single sort directive for a `DatasetListQuery`. + properties: + name: + description: Name of the field to sort on. + example: duration + type: string + order: + $ref: "#/components/schemas/QuerySortOrder" + required: + - name + - order + type: object + DeleteSharedDashboardResponse: + description: Response containing token of deleted shared dashboard. + properties: + deleted_public_dashboard_token: + description: Token associated with the shared dashboard that was revoked. + type: string + type: object + DeletedMonitor: + description: Response from the delete monitor call. + properties: + deleted_monitor_id: + description: ID of the deleted monitor. + example: 666486743 + format: int64 + type: integer + readOnly: true + type: object + DistributionPoint: + description: Array of distribution points. + example: [1575317847.0, [0.5, 1.0]] + items: + description: List of distribution point. + oneOf: + - $ref: "#/components/schemas/DistributionPointTimestamp" + - $ref: "#/components/schemas/DistributionPointData" + maxItems: 2 + minItems: 2 + type: array + DistributionPointData: + description: Distribution point data. + items: + description: List of distribution point data. + format: double + type: number + type: array + DistributionPointTimestamp: + description: Distribution point timestamp. It should be in seconds and current. + format: double + type: number + DistributionPointsContentEncoding: + description: HTTP header used to compress the media-type. + enum: + - deflate + type: string + x-enum-varnames: + - DEFLATE + DistributionPointsPayload: + description: The distribution points payload. + properties: + series: + description: A list of distribution points series to submit to Datadog. + example: + - metric: "system.load.1" + points: + - [1475317847.0, [1.0, 2.0]] + items: + $ref: "#/components/schemas/DistributionPointsSeries" + type: array + required: + - series + type: object + DistributionPointsSeries: + description: A distribution points metric to submit to Datadog. + properties: + host: + description: The name of the host that produced the distribution point metric. + example: test.example.com + type: string + metric: + description: The name of the distribution points metric. + example: system.load.1 + type: string + points: + description: Points relating to the distribution point metric. All points must be tuples with timestamp and a list of values (cannot be a string). Timestamps should be in POSIX time in seconds. + example: + - [1575317847.0, [0.5, 1.0]] + items: + $ref: "#/components/schemas/DistributionPoint" + type: array + tags: + description: A list of tags associated with the distribution point metric. + example: ["environment:test"] + items: + description: Individual tags. + type: string + type: array + type: + $ref: "#/components/schemas/DistributionPointsType" + required: + - metric + - points + type: object + DistributionPointsType: + default: distribution + description: The type of the distribution point. + enum: + - distribution + example: distribution + type: string + x-enum-varnames: + - DISTRIBUTION + DistributionWidgetDefinition: + description: |- + The Distribution visualization is another way of showing metrics + aggregated across one or several tags, such as hosts. + Unlike the heat map, a distribution graph’s x-axis is quantity rather than time. + properties: + custom_links: + description: A list of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + legend_size: + deprecated: true + description: (Deprecated) The widget legend was replaced by a tooltip and sidebar. + type: string + markers: + description: List of markers. + example: [{"display_type": "percentile", "value": "90"}] + items: + $ref: "#/components/schemas/WidgetMarker" + type: array + requests: + description: |- + Array of one request object to display in the widget. + + See the dedicated [Request JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/request_json) + to learn how to build the `REQUEST_SCHEMA`. + items: + $ref: "#/components/schemas/DistributionWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + show_legend: + deprecated: true + description: (Deprecated) The widget legend was replaced by a tooltip and sidebar. + type: boolean + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/DistributionWidgetDefinitionType" + xaxis: + $ref: "#/components/schemas/DistributionWidgetXAxis" + yaxis: + $ref: "#/components/schemas/DistributionWidgetYAxis" + required: + - type + - requests + type: object + DistributionWidgetDefinitionType: + default: distribution + description: Type of the distribution widget. + enum: + - distribution + example: distribution + type: string + x-enum-varnames: + - DISTRIBUTION + DistributionWidgetHistogramRequestQuery: + description: Query definition for Distribution Widget Histogram Request + example: {"data_source": "metrics", "name": "query1", "query": "histogram:trace.Load{*}"} + oneOf: + - $ref: "#/components/schemas/FormulaAndFunctionMetricQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionEventQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionApmResourceStatsQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionApmMetricsQueryDefinition" + DistributionWidgetRequest: + description: Updated distribution widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + apm_stats_query: + $ref: "#/components/schemas/ApmStatsQueryDefinition" + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + query: + $ref: "#/components/schemas/DistributionWidgetHistogramRequestQuery" + request_type: + $ref: "#/components/schemas/WidgetHistogramRequestType" + description: Distribution of point values for distribution metrics. Renders a histogram of raw metric data points. + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + description: Distribution of aggregated grouped queries. Use `request_type` instead for distribution of point values from distribution metrics. + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + style: + $ref: "#/components/schemas/WidgetStyle" + type: object + DistributionWidgetXAxis: + description: X Axis controls for the distribution widget. + properties: + include_zero: + description: True includes zero. + type: boolean + max: + default: auto + description: Specifies maximum value to show on the x-axis. It takes a number, percentile (p90 === 90th percentile), or auto for default behavior. + type: string + min: + default: auto + description: Specifies minimum value to show on the x-axis. It takes a number, percentile (p90 === 90th percentile), or auto for default behavior. + type: string + num_buckets: + description: Number of value buckets to target, also known as the resolution of the value bins. + format: int64 + minimum: 1 + type: integer + scale: + default: linear + description: Specifies the scale type. Possible values are `linear`. + type: string + type: object + DistributionWidgetYAxis: + description: Y Axis controls for the distribution widget. + properties: + include_zero: + description: True includes zero. + type: boolean + label: + description: The label of the axis to display on the graph. + type: string + max: + default: auto + description: Specifies the maximum value to show on the y-axis. It takes a number, or auto for default behavior. + type: string + min: + default: auto + description: Specifies minimum value to show on the y-axis. It takes a number, or auto for default behavior. + type: string + scale: + default: linear + description: Specifies the scale type. Possible values are `linear` or `log`. + type: string + type: object + Downtime: + description: |- + Downtiming gives you greater control over monitor notifications by + allowing you to globally exclude scopes from alerting. + Downtime settings, which can be scheduled with start and end times, + prevent all alerting related to specified Datadog tags. + properties: + active: + description: If a scheduled downtime currently exists. + example: true + readOnly: true + type: boolean + active_child: + $ref: "#/components/schemas/DowntimeChild" + canceled: + description: If a scheduled downtime is canceled. + example: 1412799983 + format: int64 + nullable: true + readOnly: true + type: integer + creator_id: + description: User ID of the downtime creator. + example: 123456 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + disabled: + description: If a downtime has been disabled. + example: false + type: boolean + downtime_type: + description: |- + `0` for a downtime applied on `*` or all, + `1` when the downtime is only scoped to hosts, + or `2` when the downtime is scoped to anything but hosts. + example: 2 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + end: + description: |- + POSIX timestamp to end the downtime. If not provided, + the downtime is in effect indefinitely until you cancel it. + example: 1412793983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1625 + format: int64 + readOnly: true + type: integer + message: + description: |- + A message to include with notifications for this downtime. + Email notifications can be sent to specific users by using the same `@username` notation as events. + example: "Message on the downtime" + nullable: true + type: string + monitor_id: + description: |- + A single monitor to which the downtime applies. + If not provided, the downtime applies to all monitors. + example: 123456 + format: int64 + nullable: true + type: integer + monitor_tags: + description: |- + A comma-separated list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match ALL provided monitor tags. + For example, `service:postgres` **AND** `team:frontend`. + example: ["*"] + items: + description: A monitor tag. + type: string + type: array + mute_first_recovery_notification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + notify_end_states: + $ref: "#/components/schemas/NotifyEndStates" + notify_end_types: + $ref: "#/components/schemas/NotifyEndTypes" + parent_id: + description: ID of the parent Downtime. + example: 123 + format: int64 + nullable: true + type: integer + recurrence: + $ref: "#/components/schemas/DowntimeRecurrence" + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: ["env:staging"] + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: |- + POSIX timestamp to start the downtime. + If not provided, the downtime starts the moment it is created. + example: 1412792983 + format: int64 + type: integer + timezone: + description: The timezone in which to display the downtime's start and end times in Datadog applications. + example: "America/New_York" + type: string + updater_id: + description: ID of the last user that updated the downtime. + example: 123456 + format: int32 + maximum: 2147483647 + nullable: true + readOnly: true + type: integer + type: object + DowntimeChild: + description: |- + The downtime object definition of the active child for the original parent recurring downtime. This + field will only exist on recurring downtimes. + nullable: true + properties: + active: + description: If a scheduled downtime currently exists. + example: true + readOnly: true + type: boolean + canceled: + description: If a scheduled downtime is canceled. + example: 1412799983 + format: int64 + nullable: true + readOnly: true + type: integer + creator_id: + description: User ID of the downtime creator. + example: 123456 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + disabled: + description: If a downtime has been disabled. + example: false + type: boolean + downtime_type: + description: |- + `0` for a downtime applied on `*` or all, + `1` when the downtime is only scoped to hosts, + or `2` when the downtime is scoped to anything but hosts. + example: 2 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + end: + description: |- + POSIX timestamp to end the downtime. If not provided, + the downtime is in effect indefinitely until you cancel it. + example: 1412793983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1626 + format: int64 + readOnly: true + type: integer + message: + description: |- + A message to include with notifications for this downtime. + Email notifications can be sent to specific users by using the same `@username` notation as events. + example: "Message on the downtime" + nullable: true + type: string + monitor_id: + description: |- + A single monitor to which the downtime applies. + If not provided, the downtime applies to all monitors. + example: 123456 + format: int64 + nullable: true + type: integer + monitor_tags: + description: |- + A comma-separated list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match ALL provided monitor tags. + For example, `service:postgres` **AND** `team:frontend`. + example: ["*"] + items: + description: A monitor tag. + type: string + type: array + mute_first_recovery_notification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + notify_end_states: + $ref: "#/components/schemas/NotifyEndStates" + notify_end_types: + $ref: "#/components/schemas/NotifyEndTypes" + parent_id: + description: ID of the parent Downtime. + example: 123 + format: int64 + nullable: true + type: integer + recurrence: + $ref: "#/components/schemas/DowntimeRecurrence" + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: ["env:staging"] + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: |- + POSIX timestamp to start the downtime. + If not provided, the downtime starts the moment it is created. + example: 1412792983 + format: int64 + type: integer + timezone: + description: The timezone in which to display the downtime's start and end times in Datadog applications. + example: "America/New_York" + type: string + updater_id: + description: ID of the last user that updated the downtime. + example: 123456 + format: int32 + maximum: 2147483647 + nullable: true + readOnly: true + type: integer + readOnly: true + type: object + DowntimeRecurrence: + description: An object defining the recurrence of the downtime. + nullable: true + properties: + period: + description: |- + How often to repeat as an integer. + For example, to repeat every 3 days, select a type of `days` and a period of `3`. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + rrule: + description: |- + The `RRULE` standard for defining recurring events (**requires to set "type" to rrule**) + For example, to have a recurring event on the first day of each month, set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to `1`. + Most common `rrule` options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) are supported. + + **Note**: Attributes specifying the duration in `RRULE` are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). + More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api) + example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 + type: string + type: + description: The type of recurrence. Choose from `days`, `weeks`, `months`, `years`, `rrule`. + example: weeks + type: string + until_date: + description: |- + The date at which the recurrence should end as a POSIX timestamp. + `until_occurences` and `until_date` are mutually exclusive. + example: 1447786293 + format: int64 + nullable: true + type: integer + until_occurrences: + description: |- + How many times the downtime is rescheduled. + `until_occurences` and `until_date` are mutually exclusive. + example: 2 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + week_days: + description: |- + A list of week days to repeat on. Choose from `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. + Only applicable when type is weeks. First letter must be capitalized. + example: ["Mon", "Tue"] + items: + description: A day of the week, formatted as `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. + type: string + nullable: true + type: array + type: object + Event: + description: Object representing an event. + properties: + alert_type: + $ref: "#/components/schemas/EventAlertType" + date_happened: + description: |- + POSIX timestamp of the event. Must be sent as an integer (that is no quotes). + Limited to events up to 18 hours in the past and two hours in the future. + format: int64 + type: integer + device_name: + description: A device name. + type: string + host: + description: |- + Host name to associate with the event. + Any tags associated with the host are also applied to this event. + type: string + id: + description: Integer ID of the event. + format: int64 + readOnly: true + type: integer + id_str: + description: |- + Handling IDs as large 64-bit numbers can cause loss of accuracy issues with some programming languages. + Instead, use the string representation of the Event ID to avoid losing accuracy. + readOnly: true + type: string + payload: + description: Payload of the event. + example: "{}" + readOnly: true + type: string + priority: + $ref: "#/components/schemas/EventPriority" + source_type_name: + description: |- + The type of event being posted. Option examples include nagios, hudson, jenkins, my_apps, chef, puppet, git, bitbucket, etc. + The list of standard source attribute values [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + type: string + tags: + description: A list of tags to apply to the event. + example: ["environment:test"] + items: + description: A tag. + type: string + type: array + text: + description: |- + The body of the event. Limited to 4000 characters. The text supports markdown. + To use markdown in the event text, start the text block with `%%% \n` and end the text block with `\n %%%`. + Use `msg_text` with the Datadog Ruby library. + example: "Oh boy!" + maxLength: 4000 + type: string + title: + description: The event title. + example: "Did you hear the news today?" + type: string + url: + description: URL of the event. + readOnly: true + type: string + type: object + EventAlertType: + description: |- + If an alert event is enabled, set its type. + For example, `error`, `warning`, `info`, `success`, `user_update`, + `recommendation`, and `snapshot`. + enum: + - error + - warning + - info + - success + - user_update + - recommendation + - snapshot + example: "info" + type: string + x-enum-varnames: + - ERROR + - WARNING + - INFO + - SUCCESS + - USER_UPDATE + - RECOMMENDATION + - SNAPSHOT + EventCreateRequest: + description: Object representing an event. + properties: + aggregation_key: + description: |- + An arbitrary string to use for aggregation. Limited to 100 characters. + If you specify a key, all events using that key are grouped together in the Event Stream. + maxLength: 100 + type: string + alert_type: + $ref: "#/components/schemas/EventAlertType" + date_happened: + description: |- + POSIX timestamp of the event. Must be sent as an integer (that is no quotes). + Limited to events no older than 18 hours + format: int64 + type: integer + device_name: + description: A device name. + type: string + host: + description: |- + Host name to associate with the event. + Any tags associated with the host are also applied to this event. + type: string + priority: + $ref: "#/components/schemas/EventPriority" + related_event_id: + description: ID of the parent event. Must be sent as an integer (that is no quotes). + format: int64 + type: integer + source_type_name: + description: |- + The type of event being posted. Option examples include nagios, hudson, jenkins, my_apps, chef, puppet, git, bitbucket, etc. + A complete list of source attribute values [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + type: string + tags: + description: A list of tags to apply to the event. + example: ["environment:test"] + items: + description: A tag. + type: string + type: array + text: + description: |- + The body of the event. Limited to 4000 characters. The text supports markdown. + To use markdown in the event text, start the text block with `%%% \n` and end the text block with `\n %%%`. + Use `msg_text` with the Datadog Ruby library. + example: "Oh boy!" + maxLength: 4000 + type: string + title: + description: The event title. + example: "Did you hear the news today?" + type: string + required: + - title + - text + type: object + EventCreateResponse: + description: Object containing an event response. + properties: + event: + $ref: "#/components/schemas/Event" + status: + description: A status. + type: string + type: object + EventListResponse: + description: An event list response. + properties: + events: + description: An array of events. + items: + $ref: "#/components/schemas/Event" + type: array + status: + description: A status. + type: string + type: object + EventPriority: + description: The priority of the event. For example, `normal` or `low`. + enum: + - normal + - low + example: "normal" + nullable: true + type: string + x-enum-varnames: + - NORMAL + - LOW + EventQueryDefinition: + description: The event query. + properties: + search: + description: The query being made on the event. + example: "" + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + example: "" + type: string + required: + - search + - tags_execution + type: object + EventResponse: + description: Object containing an event response. + properties: + event: + $ref: "#/components/schemas/Event" + status: + description: A status. + type: string + type: object + EventStreamWidgetDefinition: + description: |- + The event stream is a widget version of the stream of events + on the Event Stream view. Only available on FREE layout dashboards. + properties: + description: + description: The description of the widget. + type: string + event_size: + $ref: "#/components/schemas/WidgetEventSize" + query: + description: Query to filter the event stream with. + example: "" + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + type: string + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/EventStreamWidgetDefinitionType" + required: + - type + - query + type: object + EventStreamWidgetDefinitionType: + default: event_stream + description: Type of the event stream widget. + enum: + - event_stream + example: event_stream + type: string + x-enum-varnames: + - EVENT_STREAM + EventTimelineWidgetDefinition: + description: The event timeline is a widget version of the timeline that appears at the top of the Event Stream view. Only available on FREE layout dashboards. + properties: + description: + description: The description of the widget. + type: string + query: + description: Query to filter the event timeline with. + example: "" + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + type: string + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/EventTimelineWidgetDefinitionType" + required: + - type + - query + type: object + EventTimelineWidgetDefinitionType: + default: event_timeline + description: Type of the event timeline widget. + enum: + - event_timeline + example: event_timeline + type: string + x-enum-varnames: + - EVENT_TIMELINE + EventsAggregation: + description: The type of aggregation that can be performed on events-based queries. + example: avg + oneOf: + - $ref: "#/components/schemas/EventsAggregationValue" + - $ref: "#/components/schemas/EventsAggregationPercentile" + EventsAggregationPercentile: + description: Percentile aggregation. + pattern: '^pc[0-9]+(\.[0-9]+)?$' + type: string + EventsAggregationValue: + description: Standard aggregation types for events-based queries. + enum: + - avg + - cardinality + - count + - delta + - earliest + - latest + - max + - median + - min + - most_frequent + - sum + type: string + x-enum-varnames: + - AVG + - CARDINALITY + - COUNT + - DELTA + - EARLIEST + - LATEST + - MAX + - MEDIAN + - MIN + - MOST_FREQUENT + - SUM + FormulaAndFunctionApmDependencyStatName: + description: APM statistic. + enum: + - avg_duration + - avg_root_duration + - avg_spans_per_trace + - error_rate + - pct_exec_time + - pct_of_traces + - total_traces_count + example: avg_duration + type: string + x-enum-varnames: + - AVG_DURATION + - AVG_ROOT_DURATION + - AVG_SPANS_PER_TRACE + - ERROR_RATE + - PCT_EXEC_TIME + - PCT_OF_TRACES + - TOTAL_TRACES_COUNT + FormulaAndFunctionApmDependencyStatsDataSource: + description: Data source for APM dependency stats queries. + enum: + - apm_dependency_stats + example: apm_dependency_stats + type: string + x-enum-varnames: + - APM_DEPENDENCY_STATS + FormulaAndFunctionApmDependencyStatsQueryDefinition: + description: A formula and functions APM dependency stats query. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionApmDependencyStatsDataSource" + env: + description: APM environment. + example: "staging" + type: string + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: false + type: boolean + name: + description: Name of query to use in formulas. + example: "query_errors" + type: string + operation_name: + description: Name of operation on service. + example: "cassandra.query" + type: string + primary_tag_name: + description: The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + example: "datacenter" + type: string + primary_tag_value: + description: Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + example: "staging" + type: string + resource_name: + description: APM resource. + example: "DELETE FROM foo WHERE baz = ?" + type: string + service: + description: APM service. + example: "cassandra" + type: string + stat: + $ref: "#/components/schemas/FormulaAndFunctionApmDependencyStatName" + required: + - data_source + - env + - stat + - operation_name + - resource_name + - service + - name + type: object + FormulaAndFunctionApmMetricStatName: + description: APM metric stat name. + enum: + - errors + - error_rate + - errors_per_second + - latency_avg + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + - latency_p999 + - latency_distribution + - hits + - hits_per_second + - total_time + - apdex + example: "hits" + type: string + x-enum-varnames: + - ERRORS + - ERROR_RATE + - ERRORS_PER_SECOND + - LATENCY_AVG + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + - LATENCY_P999 + - LATENCY_DISTRIBUTION + - HITS + - HITS_PER_SECOND + - TOTAL_TIME + - APDEX + FormulaAndFunctionApmMetricsDataSource: + description: Data source for APM metrics queries. + enum: + - apm_metrics + example: apm_metrics + type: string + x-enum-varnames: + - APM_METRICS + FormulaAndFunctionApmMetricsQueryDefinition: + description: A formula and functions APM metrics query. + properties: + data_source: + $ref: "#/components/schemas/FormulaAndFunctionApmMetricsDataSource" + group_by: + description: Optional fields to group the query results by. + items: + description: A field to group results by. + example: "resource_name" + type: string + type: array + name: + description: Name of this query to use in formulas. + example: "query_errors" + type: string + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: "primary" + type: string + operation_name: + description: Name of operation on service. If not provided, the primary operation name is used. + example: "web.request" + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: "A tag identifying a specific downstream entity (for example: peer.service, peer.db_instance)." + example: "peer.service:my-service" + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (e.g., env, primary_tag). + example: "env:prod" + type: string + resource_hash: + description: The hash of a specific resource to filter by. + example: "abc123" + type: string + resource_name: + description: The full name of a specific resource to filter by. + example: "GET /api/v1/users" + type: string + service: + description: APM service name. + example: "web-store" + type: string + span_kind: + $ref: "#/components/schemas/FormulaAndFunctionApmMetricsSpanKind" + stat: + $ref: "#/components/schemas/FormulaAndFunctionApmMetricStatName" + required: + - data_source + - name + - stat + type: object + FormulaAndFunctionApmMetricsSpanKind: + description: Describes the relationship between the span, its parents, and its children in a trace. + enum: + - consumer + - server + - client + - producer + - internal + example: "server" + type: string + x-enum-varnames: + - CONSUMER + - SERVER + - CLIENT + - PRODUCER + - INTERNAL + FormulaAndFunctionApmResourceStatName: + description: APM resource stat name. + enum: + - errors + - error_rate + - hits + - latency_avg + - latency_distribution + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + example: "hits" + type: string + x-enum-varnames: + - ERRORS + - ERROR_RATE + - HITS + - LATENCY_AVG + - LATENCY_DISTRIBUTION + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + FormulaAndFunctionApmResourceStatsDataSource: + description: Data source for APM resource stats queries. + enum: + - apm_resource_stats + example: "apm_resource_stats" + type: string + x-enum-varnames: + - APM_RESOURCE_STATS + FormulaAndFunctionApmResourceStatsQueryDefinition: + deprecated: true + description: APM resource stats query using formulas and functions. Deprecated - Use `apm_metrics` query type instead. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionApmResourceStatsDataSource" + env: + description: APM environment. + example: "staging" + type: string + group_by: + description: Array of fields to group results by. + items: + description: Field to group results by. + example: "resource_name" + type: string + type: array + name: + description: Name of this query to use in formulas. + example: "query_errors" + type: string + operation_name: + description: Name of operation on service. + example: "cassandra.query" + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: "datacenter" + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: "us-east-az" + type: string + resource_name: + description: APM resource name. + example: "Admin::ProductsController#create" + type: string + service: + description: APM service name. + example: "web-store" + type: string + stat: + $ref: "#/components/schemas/FormulaAndFunctionApmResourceStatName" + required: + - data_source + - env + - name + - service + - stat + type: object + FormulaAndFunctionCloudCostDataSource: + description: Data source for Cloud Cost queries. + enum: + - cloud_cost + example: "cloud_cost" + type: string + x-enum-varnames: + - CLOUD_COST + FormulaAndFunctionCloudCostQueryDefinition: + description: A formula and functions Cloud Cost query. + example: + data_source: "cloud_cost" + name: "query1" + query: "sum:aws.cost.amortized{*}" + properties: + aggregator: + $ref: "#/components/schemas/WidgetAggregator" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionCloudCostDataSource" + name: + description: Name of the query for use in formulas. + example: "my_query" + type: string + query: + description: Query for Cloud Cost data. + example: "" + type: string + required: + - data_source + - query + - name + type: object + FormulaAndFunctionEventAggregation: + description: Aggregation methods for event platform queries. + enum: + - count + - cardinality + - median + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + example: avg + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - MEDIAN + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + FormulaAndFunctionEventQueryDefinition: + description: A formula and functions events query. + properties: + compute: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryDefinitionCompute" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionEventsDataSource" + group_by: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupByConfig" + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: ["days-3", "days-7"] + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: "query_errors" + type: string + search: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryDefinitionSearch" + storage: + description: Option for storage location. Feature in Private Beta. + example: "indexes" + type: string + required: + - data_source + - compute + - name + type: object + FormulaAndFunctionEventQueryDefinitionCompute: + description: Compute options. + properties: + aggregation: + $ref: "#/components/schemas/FormulaAndFunctionEventAggregation" + interval: + description: A time interval in milliseconds. + example: 60000 + format: int64 + type: integer + metric: + description: Measurable attribute to compute. + example: "@duration" + type: string + required: + - aggregation + type: object + FormulaAndFunctionEventQueryDefinitionSearch: + description: Search options. + properties: + query: + description: Events search string. + example: "service:query" + type: string + required: + - query + type: object + FormulaAndFunctionEventQueryGroupBy: + description: List of objects used to group by. + properties: + facet: + description: Event facet. + example: status. + type: string + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupBySort" + required: + - facet + type: object + FormulaAndFunctionEventQueryGroupByConfig: + description: Group by configuration for a formula and functions events query. Accepts either a list of facet objects or a flat object that specifies a list of facet fields. + oneOf: + - $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupByList" + - $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupByFields" + FormulaAndFunctionEventQueryGroupByFields: + description: Flat group by configuration using multiple event facet fields. + properties: + fields: + description: List of event facets to group by. + example: ["hostname", "service"] + items: + description: Event facet. + type: string + type: array + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupBySort" + required: + - fields + type: object + FormulaAndFunctionEventQueryGroupByList: + description: List of objects used to group by. + items: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupBy" + type: array + FormulaAndFunctionEventQueryGroupBySort: + description: Options for sorting group by results. + properties: + aggregation: + $ref: "#/components/schemas/FormulaAndFunctionEventAggregation" + metric: + description: Metric used for sorting group by results. + type: string + order: + $ref: "#/components/schemas/QuerySortOrder" + required: + - aggregation + type: object + FormulaAndFunctionEventsDataSource: + description: Data source for event platform-based queries. + enum: + - logs + - spans + - network + - rum + - security_signals + - profiles + - audit + - events + - ci_tests + - ci_pipelines + - incident_analytics + - product_analytics + - on_call_events + - errors + - llm_observability + example: "logs" + type: string + x-enum-varnames: + - LOGS + - SPANS + - NETWORK + - RUM + - SECURITY_SIGNALS + - PROFILES + - AUDIT + - EVENTS + - CI_TESTS + - CI_PIPELINES + - INCIDENT_ANALYTICS + - PRODUCT_ANALYTICS + - ON_CALL_EVENTS + - ERRORS + - LLM_OBSERVABILITY + FormulaAndFunctionMetricAggregation: + description: The aggregation methods available for metrics queries. + enum: + - avg + - min + - max + - sum + - last + - area + - l2norm + - percentile + example: avg + type: string + x-enum-varnames: + - AVG + - MIN + - MAX + - SUM + - LAST + - AREA + - L2NORM + - PERCENTILE + FormulaAndFunctionMetricDataSource: + description: Data source for metrics queries. + enum: + - metrics + example: "metrics" + type: string + x-enum-varnames: + - METRICS + FormulaAndFunctionMetricQueryDefinition: + description: A formula and functions metrics query. + example: + data_source: "metrics" + name: "my_query" + query: "avg:system.cpu.user{*}" + properties: + aggregator: + $ref: "#/components/schemas/FormulaAndFunctionMetricAggregation" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionMetricDataSource" + name: + description: Name of the query for use in formulas. + example: "my_query" + type: string + query: + description: Metrics query definition. + example: "avg:system.cpu.user{*}" + type: string + semantic_mode: + $ref: "#/components/schemas/FormulaAndFunctionMetricSemanticMode" + required: + - data_source + - query + - name + type: object + FormulaAndFunctionMetricSemanticMode: + description: Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. + enum: + - combined + - native + example: "combined" + type: string + x-enum-varnames: + - COMBINED + - NATIVE + FormulaAndFunctionProcessQueryDataSource: + description: Data sources that rely on the process backend. + enum: + - process + - container + example: "process" + type: string + x-enum-varnames: + - PROCESS + - CONTAINER + FormulaAndFunctionProcessQueryDefinition: + description: Process query using formulas and functions. + properties: + aggregator: + $ref: "#/components/schemas/FormulaAndFunctionMetricAggregation" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionProcessQueryDataSource" + is_normalized_cpu: + description: Whether to normalize the CPU percentages. + type: boolean + limit: + description: Number of hits to return. + format: int64 + type: integer + metric: + description: Process metric name. + example: "avg:system.cpu.user{*}" + type: string + name: + description: Name of query for use in formulas. + example: "query_errors" + type: string + sort: + $ref: "#/components/schemas/QuerySortOrder" + tag_filters: + description: An array of tags to filter by. + items: + description: One of the tags to filter by. + type: string + type: array + text_filter: + description: Text to use as filter. + type: string + required: + - data_source + - metric + - name + type: object + FormulaAndFunctionProductAnalyticsExtendedDataSource: + description: Data source for Product Analytics Extended queries. + enum: + - product_analytics_extended + example: product_analytics_extended + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_EXTENDED + FormulaAndFunctionProductAnalyticsExtendedQueryDefinition: + description: A formula and functions Product Analytics Extended query for advanced analytics features. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + compute: + $ref: "#/components/schemas/ProductAnalyticsExtendedCompute" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionProductAnalyticsExtendedDataSource" + group_by: + description: Group by configuration. + items: + $ref: "#/components/schemas/ProductAnalyticsExtendedGroupBy" + description: A Product Analytics Extended group by configuration. + type: array + indexes: + description: Event indexes to query. + example: ["*"] + items: + $ref: "#/components/schemas/FormulaAndFunctionProductAnalyticsExtendedQueryDefinitionIndexesItems" + type: array + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + required: + - data_source + - name + - query + - compute + type: object + FormulaAndFunctionProductAnalyticsExtendedQueryDefinitionIndexesItems: + description: Use `"*"` to query all indexes. + enum: + - "*" + type: string + x-enum-varnames: + - ALL + FormulaAndFunctionQueryDefinition: + description: A formula and function query. + oneOf: + - $ref: "#/components/schemas/FormulaAndFunctionMetricQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionEventQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionProcessQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionApmDependencyStatsQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionApmResourceStatsQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionApmMetricsQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionSLOQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionCloudCostQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionProductAnalyticsExtendedQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionUserJourneyQueryDefinition" + - $ref: "#/components/schemas/FormulaAndFunctionRetentionQueryDefinition" + FormulaAndFunctionResponseFormat: + description: Timeseries, scalar, or event list response. Event list response formats are supported by Geomap widgets. + enum: + - timeseries + - scalar + - event_list + example: timeseries + type: string + x-enum-varnames: + - TIMESERIES + - SCALAR + - EVENT_LIST + FormulaAndFunctionRetentionQueryDefinition: + description: A formula and functions Retention query for defining timeseries and scalar visualizations. + properties: + compute: + $ref: "#/components/schemas/RetentionCompute" + data_source: + $ref: "#/components/schemas/RetentionDataSource" + group_by: + description: Group by configuration. + items: + $ref: "#/components/schemas/RetentionGroupBy" + description: A Retention group by configuration. + type: array + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + search: + $ref: "#/components/schemas/RetentionSearch" + required: + - data_source + - name + - search + - compute + type: object + FormulaAndFunctionSLODataSource: + description: Data source for SLO measures queries. + enum: + - slo + example: "slo" + type: string + x-enum-varnames: + - SLO + FormulaAndFunctionSLOGroupMode: + description: Group mode to query measures. + enum: + - overall + - components + example: "overall" + type: string + x-enum-varnames: + - OVERALL + - COMPONENTS + FormulaAndFunctionSLOMeasure: + description: SLO measures queries. + enum: + - good_events + - bad_events + - good_minutes + - bad_minutes + - slo_status + - error_budget_remaining + - burn_rate + - error_budget_burndown + example: "slo_status" + type: string + x-enum-varnames: + - GOOD_EVENTS + - BAD_EVENTS + - GOOD_MINUTES + - BAD_MINUTES + - SLO_STATUS + - ERROR_BUDGET_REMAINING + - BURN_RATE + - ERROR_BUDGET_BURNDOWN + FormulaAndFunctionSLOQueryDefinition: + description: A formula and functions metrics query. + example: + additional_query_filters: "*" + data_source: "slo" + group_mode: "overall" + measure: "good_events" + name: "my_slo" + slo_id: "12345678910" + slo_query_type: "metric" + properties: + additional_query_filters: + description: Additional filters applied to the SLO query. + example: "host:host_a,env:prod" + type: string + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/FormulaAndFunctionSLODataSource" + group_mode: + $ref: "#/components/schemas/FormulaAndFunctionSLOGroupMode" + measure: + $ref: "#/components/schemas/FormulaAndFunctionSLOMeasure" + name: + description: Name of the query for use in formulas. + example: "my_slo" + type: string + slo_id: + description: ID of an SLO to query measures. + example: "12345678910" + type: string + slo_query_type: + $ref: "#/components/schemas/FormulaAndFunctionSLOQueryType" + required: + - data_source + - slo_id + - measure + type: object + FormulaAndFunctionSLOQueryType: + description: Name of the query for use in formulas. + enum: + - metric + - monitor + - time_slice + example: "metric" + type: string + x-enum-varnames: + - METRIC + - MONITOR + - TIME_SLICE + FormulaAndFunctionUserJourneyQueryDefinition: + description: A formula and functions User Journey query for defining funnel, timeseries, and scalar visualizations over journey data. + properties: + compute: + $ref: "#/components/schemas/UserJourneyFormulaCompute" + data_source: + $ref: "#/components/schemas/ProductAnalyticsFunnelDataSource" + group_by: + description: Group by configuration. + items: + $ref: "#/components/schemas/UserJourneyFormulaGroupBy" + description: A User Journey group by configuration. + type: array + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + search: + $ref: "#/components/schemas/UserJourneySearch" + required: + - data_source + - name + - search + - compute + type: object + FormulaType: + description: Set the sort type to formula. + enum: ["formula"] + example: "formula" + type: string + x-enum-varnames: + - FORMULA + FreeTextWidgetDefinition: + description: Free text is a widget that allows you to add headings to your dashboard. Commonly used to state the overall purpose of the dashboard. + properties: + background_color: + $ref: "#/components/schemas/WidgetBackgroundColor" + color: + description: Color of the text. + type: string + font_size: + description: Size of the text. + type: string + text: + description: Text to display. + example: "" + type: string + text_align: + $ref: "#/components/schemas/WidgetTextAlign" + type: + $ref: "#/components/schemas/FreeTextWidgetDefinitionType" + required: + - type + - text + type: object + FreeTextWidgetDefinitionType: + default: free_text + description: Type of the free text widget. + enum: + - free_text + example: free_text + type: string + x-enum-varnames: + - FREE_TEXT + FunnelComparisonCustomTimeframe: + additionalProperties: false + description: Custom timeframe for funnel comparison. + properties: + from: + description: Start of the custom timeframe. + example: 0.0 + format: double + type: number + to: + description: End of the custom timeframe. + example: 0.0 + format: double + type: number + required: + - from + - to + type: object + FunnelComparisonDuration: + additionalProperties: false + description: Comparison time configuration for funnel widgets. + properties: + custom_timeframe: + $ref: "#/components/schemas/FunnelComparisonCustomTimeframe" + type: + $ref: "#/components/schemas/FunnelComparisonDurationType" + required: + - type + type: object + FunnelComparisonDurationType: + description: Type of comparison duration. + enum: + - previous_timeframe + - custom_timeframe + - previous_day + - previous_week + - previous_month + example: previous_timeframe + type: string + x-enum-varnames: + - PREVIOUS_TIMEFRAME + - CUSTOM_TIMEFRAME + - PREVIOUS_DAY + - PREVIOUS_WEEK + - PREVIOUS_MONTH + FunnelGroupedDisplay: + description: Display mode for grouped funnel results. + enum: + - stacked + - side_by_side + example: stacked + type: string + x-enum-varnames: + - STACKED + - SIDE_BY_SIDE + FunnelQuery: + description: Updated funnel widget. + properties: + data_source: + $ref: "#/components/schemas/FunnelSource" + query_string: + description: The widget query. + example: "@browser.name:Chrome" + type: string + steps: + description: List of funnel steps. + items: + $ref: "#/components/schemas/FunnelStep" + type: array + required: + - query_string + - data_source + - steps + type: object + FunnelRequestType: + description: Widget request type. + enum: + - funnel + example: funnel + type: string + x-enum-varnames: + - FUNNEL + FunnelSource: + default: rum + description: Source from which to query items to display in the funnel. + enum: + - rum + example: rum + type: string + x-enum-varnames: + - RUM + FunnelStep: + description: The funnel step. + properties: + facet: + description: The facet of the step. + example: "@view.name" + type: string + value: + description: The value of the step. + example: "/apm/home" + type: string + required: + - facet + - value + type: object + FunnelWidgetDefinition: + description: |- + The funnel visualization displays a funnel of user sessions that maps a sequence of view navigation and user interaction in your application. + properties: + description: + description: The description of the widget. + type: string + grouped_display: + $ref: "#/components/schemas/FunnelGroupedDisplay" + requests: + description: Request payload used to query items. + example: [{"query": {"data_source": "rum", "query_string": "@browser.name:Chrome", "steps": [{"facet": "@view.name", "value": "/logs"}, {"facet": "@view.name", "value": "/apm/home"}]}, "request_type": "funnel"}] + items: + $ref: "#/components/schemas/FunnelWidgetRequest" + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: The title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: The size of the title. + type: string + type: + $ref: "#/components/schemas/FunnelWidgetDefinitionType" + required: + - type + - requests + type: object + FunnelWidgetDefinitionType: + default: funnel + description: Type of funnel widget. + enum: + - funnel + example: funnel + type: string + x-enum-varnames: + - FUNNEL + FunnelWidgetRequest: + description: Updated funnel widget. + properties: + query: + $ref: "#/components/schemas/FunnelQuery" + request_type: + $ref: "#/components/schemas/FunnelRequestType" + required: + - query + - request_type + type: object + GCPAccount: + description: Your Google Cloud Platform Account. + properties: + auth_provider_x509_cert_url: + description: |- + Should be `https://www.googleapis.com/oauth2/v1/certs`. + example: "https://www.googleapis.com/oauth2/v1/certs" + type: string + auth_uri: + description: |- + Should be `https://accounts.google.com/o/oauth2/auth`. + example: "https://accounts.google.com/o/oauth2/auth" + type: string + automute: + description: |- + Silence monitors for expected GCE instance shutdowns. + type: boolean + client_email: + description: |- + Your email found in your JSON service account key. + example: "api-dev@datadog-sandbox.iam.gserviceaccount.com" + type: string + client_id: + description: |- + Your ID found in your JSON service account key. + example: "123456712345671234567" + type: string + client_x509_cert_url: + description: |- + Should be `https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL` + where `$CLIENT_EMAIL` is the email found in your JSON service account key. + example: "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" + type: string + cloud_run_revision_filters: + deprecated: true + description: |- + List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. + Only Cloud Run revision resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=cloud_run_revision` + example: ["$KEY:$VALUE"] + items: + description: Cloud Run revision filters + type: string + type: array + errors: + description: An array of errors. + example: ["*"] + items: + description: String representation of one error. + readOnly: true + type: string + type: array + host_filters: + deprecated: true + description: |- + A comma-separated list of filters to limit the VM instances that are pulled into Datadog by using tags. + Only VM instance resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=gce_instance` + example: "$KEY1:$VALUE1,$KEY2:$VALUE2" + type: string + is_cspm_enabled: + description: |- + When enabled, Datadog will activate the Cloud Security Monitoring product for this service account. Note: This requires resource_collection_enabled to be set to true. + example: true + type: boolean + is_resource_change_collection_enabled: + default: false + description: |- + When enabled, Datadog scans for all resource change data in your Google Cloud environment. + example: true + type: boolean + is_security_command_center_enabled: + default: false + description: |- + When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. + example: true + type: boolean + monitored_resource_configs: + description: Configurations for GCP monitored resources. + example: [{"filters": ["$KEY:$VALUE"], "type": "gce_instance"}] + items: + $ref: "#/components/schemas/GCPMonitoredResourceConfig" + type: array + private_key: + description: |- + Your private key name found in your JSON service account key. + example: "private_key" + type: string + private_key_id: + description: |- + Your private key ID found in your JSON service account key. + example: "123456789abcdefghi123456789abcdefghijklm" + type: string + project_id: + description: |- + Your Google Cloud project ID found in your JSON service account key. + example: "datadog-apitest" + type: string + resource_collection_enabled: + description: |- + When enabled, Datadog scans for all resources in your GCP environment. + example: true + type: boolean + token_uri: + description: |- + Should be `https://accounts.google.com/o/oauth2/token`. + example: "https://accounts.google.com/o/oauth2/token" + type: string + type: + description: |- + The value for service_account found in your JSON service account key. + example: "service_account" + type: string + type: object + GCPAccountListResponse: + description: Array of GCP account responses. + items: + $ref: "#/components/schemas/GCPAccount" + type: array + GCPMonitoredResourceConfig: + description: Configuration for a GCP monitored resource. + properties: + filters: + description: |- + List of filters to limit the monitored resources that are pulled into Datadog by using tags. + Only monitored resources that apply to specified filters are imported into Datadog. + example: ["$KEY:$VALUE"] + items: + description: A monitored resource filter + type: string + type: array + type: + $ref: "#/components/schemas/GCPMonitoredResourceConfigType" + type: object + GCPMonitoredResourceConfigType: + description: The GCP monitored resource type. Only a subset of resource types are supported. + enum: ["cloud_function", "cloud_run_revision", "gce_instance"] + example: "gce_instance" + type: string + x-enum-varnames: + - CLOUD_FUNCTION + - CLOUD_RUN_REVISION + - GCE_INSTANCE + GeomapWidgetDefinition: + description: This visualization displays a series of values by country on a world map. + properties: + custom_links: + description: A list of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + description: |- + Array of request objects to display in the widget. May include an optional request for the region layer and/or an optional request for the points layer. Region layer requests must contain a `group-by` tag whose value is a country ISO code. + See the [Request JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/request_json) + for information about building the `REQUEST_SCHEMA`. + example: ["rum_query": {"search": {"query": "{}"}}] + items: + $ref: "#/components/schemas/GeomapWidgetRequest" + maxItems: 2 + minItems: 1 + type: array + style: + $ref: "#/components/schemas/GeomapWidgetDefinitionStyle" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: The title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: The size of the title. + type: string + type: + $ref: "#/components/schemas/GeomapWidgetDefinitionType" + view: + $ref: "#/components/schemas/GeomapWidgetDefinitionView" + required: + - type + - requests + - style + - view + type: object + GeomapWidgetDefinitionStyle: + description: The style to apply to the widget. + example: {palette: "hostmap_blues", palette_flip: false} + properties: + palette: + description: The color palette to apply to the widget. + example: hostmap_blues + type: string + palette_flip: + description: Whether to flip the palette tones. + example: false + type: boolean + required: + - palette + - palette_flip + type: object + GeomapWidgetDefinitionType: + default: geomap + description: Type of the geomap widget. + enum: + - geomap + example: geomap + type: string + x-enum-varnames: + - GEOMAP + GeomapWidgetDefinitionView: + description: The view of the world that the map should render. + example: {focus: "WORLD"} + properties: + focus: + description: The 2-letter ISO code of a country to focus the map on, or `WORLD` for global view, or a region (`EMEA`, `APAC`, `LATAM`), or a continent (`NORTH_AMERICA`, `SOUTH_AMERICA`, `EUROPE`, `AFRICA`, `ASIA`, `OCEANIA`). + example: "WORLD" + type: string + required: + - focus + type: object + GeomapWidgetRequest: + description: An updated geomap widget. + properties: + columns: + description: Widget columns. + example: [{"field": "timestamp", "width": "auto"}, {"field": "content", "width": "full"}] + items: + $ref: "#/components/schemas/ListStreamColumn" + type: array + conditional_formats: + description: Threshold (numeric) conditional formatting rules may be used by a regions layer. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: The widget metrics query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + query: + $ref: "#/components/schemas/ListStreamQuery" + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: "#/components/schemas/WidgetSortBy" + style: + $ref: "#/components/schemas/GeomapWidgetRequestStyle" + text_formats: + description: Text formatting rules may be used by a points layer. + items: + $ref: "#/components/schemas/TableWidgetTextFormatRule" + type: array + type: object + GeomapWidgetRequestStyle: + description: The style to apply to the request for points layer. + example: {color_by: "status"} + properties: + color_by: + description: The category to color the points by. + example: status + type: string + type: object + GraphSnapshot: + description: Object representing a graph snapshot. + properties: + graph_def: + description: |- + A JSON document defining the graph. `graph_def` can be used instead of `metric_query`. + The JSON document uses the [grammar defined here](https://docs.datadoghq.com/graphing/graphing_json/#grammar) + and should be formatted to a single line then URL encoded. + type: string + metric_query: + description: The metric query. One of `metric_query` or `graph_def` is required. + type: string + snapshot_url: + description: URL of your [graph snapshot](https://docs.datadoghq.com/metrics/explorer/#snapshot). + example: https://app.datadoghq.com/s/f12345678/aaa-bbb-ccc + type: string + type: object + GroupType: + description: Set the sort type to group. + enum: ["group"] + example: "group" + type: string + x-enum-varnames: + - GROUP + GroupWidgetDefinition: + description: The group widget allows you to keep similar graphs together on your dashboard. Each group has a custom header, can hold one to many graphs, and is collapsible. + properties: + background_color: + $ref: "#/components/schemas/WidgetBackgroundColor" + banner_img: + description: URL of image to display as a banner for the group. + type: string + layout_type: + $ref: "#/components/schemas/WidgetLayoutType" + show_title: + default: true + description: Whether to show the title or not. + type: boolean + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + type: + $ref: "#/components/schemas/GroupWidgetDefinitionType" + widgets: + description: List of widget groups. + example: ["definition": {"requests": {"fill": {"q": "avg:system.cpu.user{*}"}}, "type": "hostmap"}] + items: + $ref: "#/components/schemas/Widget" + type: array + required: + - type + - layout_type + - widgets + type: object + GroupWidgetDefinitionType: + default: group + description: Type of the group widget. + enum: + - group + example: group + type: string + x-enum-varnames: + - GROUP + HTTPLog: + description: Structured log message. + items: + $ref: "#/components/schemas/HTTPLogItem" + type: array + HTTPLogError: + description: Invalid query performed. + properties: + code: + description: Error code. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + message: + description: Error message. + example: "Your browser sent an invalid request." + type: string + required: + - code + - message + type: object + HTTPLogItem: + additionalProperties: + description: Additional log attributes. + type: string + description: Logs that are sent over HTTP. + properties: + ddsource: + description: |- + The integration name associated with your log: the technology from which the log originated. + When it matches an integration name, Datadog automatically installs the corresponding parsers and facets. + See [reserved attributes](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes). + example: nginx + type: string + ddtags: + description: Tags associated with your logs. + example: env:staging,version:5.1 + type: string + hostname: + description: The name of the originating host of the log. + example: i-012345678 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same value when you use both products. + See [reserved attributes](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes). + example: payment + type: string + required: + - message + type: object + HeatMapWidgetDefinition: + description: The heat map visualization shows metrics aggregated across many tags, such as hosts. The more hosts that have a particular value, the darker that square is. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + events: + deprecated: true + description: List of widget events. Deprecated - Use `overlay` request type instead. + items: + $ref: "#/components/schemas/WidgetEvent" + type: array + legend_size: + $ref: "#/components/schemas/WidgetLegendSize" + markers: + description: List of markers. + example: [{"display_type": "percentile", "value": "90"}] + items: + $ref: "#/components/schemas/WidgetMarker" + type: array + requests: + description: List of widget types. + example: ["q": "jvm.heap.memory"] + items: + $ref: "#/components/schemas/HeatMapWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + show_legend: + description: Whether or not to display the legend on this widget. + type: boolean + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/HeatMapWidgetDefinitionType" + xaxis: + $ref: "#/components/schemas/HeatMapWidgetXAxis" + yaxis: + $ref: "#/components/schemas/WidgetAxis" + required: + - type + - requests + type: object + HeatMapWidgetDefinitionType: + default: heatmap + description: Type of the heat map widget. + enum: + - heatmap + example: heatmap + type: string + x-enum-varnames: + - HEATMAP + HeatMapWidgetRequest: + description: Updated heat map widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: "#/components/schemas/EventQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + query: + $ref: "#/components/schemas/FormulaAndFunctionMetricQueryDefinition" + request_type: + $ref: "#/components/schemas/WidgetHistogramRequestType" + description: Applicable only for distribution of point values for distribution metrics. + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + description: Applicable only for distribution of aggregated grouped queries. + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + style: + $ref: "#/components/schemas/WidgetStyle" + type: object + HeatMapWidgetXAxis: + description: X Axis controls for the heat map widget. + properties: + num_buckets: + description: |- + Number of time buckets to target, also known as the resolution + of the time bins. This is only applicable for distribution of + points (group distributions use the roll-up modifier). + format: int64 + type: integer + type: object + Host: + description: Object representing a host. + properties: + aliases: + description: Host aliases collected by Datadog. + items: + description: A host alias. + example: "mycoolhost-1" + type: string + type: array + apps: + description: The Datadog integrations reporting metrics for the host. + items: + description: Name of an app. + example: "agent" + type: string + type: array + aws_name: + description: AWS name of your host. + example: "mycoolhost-1" + type: string + host_name: + description: The host name. + example: "i-deadbeef" + type: string + id: + description: The host ID. + example: 123456 + format: int64 + type: integer + is_muted: + description: If a host is muted or unmuted. + example: false + type: boolean + last_reported_time: + description: Last time the host reported a metric data point. + example: 1565000000 + format: int64 + type: integer + meta: + $ref: "#/components/schemas/HostMeta" + metrics: + $ref: "#/components/schemas/HostMetrics" + mute_timeout: + description: Timeout of the mute applied to your host. + format: int64 + nullable: true + type: integer + name: + description: The host name. + example: "i-hostname" + type: string + sources: + description: Source or cloud provider associated with your host. + items: + description: A source or cloud provider name. + example: "aws" + type: string + type: array + tags_by_source: + additionalProperties: + description: Array of tags for a single source. + items: + description: A tag. + example: "test.example.com.host" + type: string + type: array + description: List of tags for each source (AWS, Datadog Agent, Chef..). + type: object + up: + description: Displays UP when the expected metrics are received and displays `???` if no metrics are received. + example: true + type: boolean + type: object + HostListResponse: + description: Response with Host information from Datadog. + properties: + host_list: + description: Array of hosts. + items: + $ref: "#/components/schemas/Host" + type: array + total_matching: + description: Number of host matching the query. + example: 1 + format: int64 + type: integer + total_returned: + description: Number of host returned. + example: 1 + format: int64 + type: integer + type: object + HostMapRequest: + deprecated: true + description: >- + Deprecated - Legacy metric-based host map request. Use the infrastructure-backed (`request_type: infrastructure_hostmap`) or DDSQL (`request_type: data_projection`) format instead. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + description: Query definition. + type: string + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + type: object + HostMapWidgetDefinition: + description: The host map widget graphs any metric across your hosts using the same visualization available from the main Host Map page. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + group: + deprecated: true + description: >- + Deprecated - Only used by the legacy metric-based format. Use `group_by` (infrastructure) or a `group` dimension (DDSQL) inside `requests` instead. + items: + description: Tag prefixes. + type: string + type: array + no_group_hosts: + deprecated: true + description: >- + Deprecated - Only used by the legacy metric-based format. Use `no_group_hosts` inside `requests` instead. + type: boolean + no_metric_hosts: + deprecated: true + description: >- + Deprecated - Only used by the legacy metric-based format. Use `no_metric_hosts` inside `requests` instead. + type: boolean + node_type: + $ref: "#/components/schemas/WidgetNodeType" + deprecated: true + description: >- + Deprecated - Only used by the legacy metric-based format. Use `node_type` inside `requests` instead. + notes: + description: Notes on the title. + type: string + requests: + $ref: "#/components/schemas/HostMapWidgetDefinitionRequests" + scope: + deprecated: true + description: >- + Deprecated - Only used by the legacy metric-based format. Use `filter` inside `requests` instead. + items: + description: Tags. + type: string + type: array + style: + $ref: "#/components/schemas/HostMapWidgetDefinitionStyle" + deprecated: true + description: >- + Deprecated - Only used by the legacy metric-based format. Use `style` inside `requests` instead. + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/HostMapWidgetDefinitionType" + required: + - type + - requests + type: object + HostMapWidgetDefinitionRequestType: + description: >- + Identifies which host map request format the sibling fields on `HostMapWidgetDefinitionRequests` describe: an infrastructure-backed request or a DDSQL published-dataset request. + enum: + - infrastructure_hostmap + - data_projection + example: infrastructure_hostmap + type: string + x-enum-varnames: + - INFRASTRUCTURE_HOSTMAP + - DATA_PROJECTION + HostMapWidgetDefinitionRequests: + description: >- + Query definition for the host map widget. Supports three mutually exclusive formats distinguished by `request_type`: the deprecated legacy metric-based format (`fill`/`size`, no `request_type`), the infrastructure-backed format (`request_type: infrastructure_hostmap`), and the DDSQL published-dataset format (`request_type: data_projection`). + example: {} + properties: + child: + $ref: "#/components/schemas/HostMapWidgetInfrastructureRequest" + description: Optional child entities for hierarchical visualization (for example, host → container). Only used by the infrastructure-backed format. + conditional_formats: + description: List of conditional formatting rules applied to fill values. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + enrichments: + description: >- + Metric or event queries joined to the entity set. Each formula specifies a visual dimension. Only used by the infrastructure-backed format. + example: + - formulas: + - dimension: fill + formula: "query1" + queries: + - data_source: metrics + name: "query1" + query: "avg:system.cpu.user{*} by {host}" + response_format: scalar + items: + $ref: "#/components/schemas/HostMapWidgetScalarRequest" + type: array + fill: + $ref: "#/components/schemas/HostMapRequest" + deprecated: true + description: >- + Deprecated - Legacy metric-based format. Use the infrastructure-backed (`request_type: infrastructure_hostmap`) or DDSQL (`request_type: data_projection`) format instead. + filter: + description: >- + Filter string for the entity set in tag format (for example, `env:prod`). Only used by the infrastructure-backed format. + example: "env:prod" + type: string + group_by: + description: |- + Defines how entities are grouped into tiles. The ordering of entries implies + the grouping hierarchy. Only used by the infrastructure-backed format. + items: + $ref: "#/components/schemas/HostMapWidgetGroupBy" + type: array + limit: + description: Maximum number of rows to return from the dataset query. Only used by the DDSQL format. + format: int64 + type: integer + no_group_hosts: + description: Whether to hide entities that have no group assignment. + type: boolean + no_metric_hosts: + description: Whether to hide entities that have no enrichment data. + type: boolean + node_type: + $ref: "#/components/schemas/HostMapWidgetNodeType" + description: Entity type to visualize. Only used by the infrastructure-backed format. + projection: + $ref: "#/components/schemas/HostMapWidgetProjection" + description: >- + Maps dataset columns to map dimensions (entity, optional parent for grouping, fill, size). Only used by the DDSQL format. + query: + $ref: "#/components/schemas/DatasetListQuery" + description: Published-dataset query. Only used by the DDSQL format. + request_type: + $ref: "#/components/schemas/HostMapWidgetDefinitionRequestType" + size: + $ref: "#/components/schemas/HostMapRequest" + deprecated: true + description: >- + Deprecated - Legacy metric-based format. Use the infrastructure-backed (`request_type: infrastructure_hostmap`) or DDSQL (`request_type: data_projection`) format instead. + style: + $ref: "#/components/schemas/HostMapWidgetInfrastructureStyle" + type: object + HostMapWidgetDefinitionStyle: + deprecated: true + description: >- + Deprecated - The style to apply to the legacy metric-based host map widget. Use `HostMapWidgetInfrastructureStyle` instead. + properties: + fill_max: + description: Max value to use to color the map. + type: string + fill_min: + description: Min value to use to color the map. + type: string + palette: + description: Color palette to apply to the widget. + type: string + palette_flip: + description: Whether to flip the palette tones. + type: boolean + type: object + HostMapWidgetDefinitionType: + default: hostmap + description: Type of the host map widget. + enum: + - hostmap + example: hostmap + type: string + x-enum-varnames: + - HOSTMAP + HostMapWidgetDimension: + description: >- + Visual dimension for the host map widget. Used both by infrastructure-backed formulas and by DDSQL projection columns; `group` is only meaningful for DDSQL projection columns, where repeated entries define the grouping hierarchy. + enum: + - node + - fill + - size + - group + example: node + type: string + x-enum-varnames: + - NODE + - FILL + - SIZE + - GROUP + HostMapWidgetFormula: + description: |- + Formula for the infrastructure host map widget that specifies both the expression + and the visual dimension it populates. + properties: + alias: + description: Expression alias. + example: "my-metric" + type: string + dimension: + $ref: "#/components/schemas/HostMapWidgetDimension" + formula: + description: String expression built from queries, formulas, and functions. + example: "query1" + type: string + number_format: + $ref: "#/components/schemas/WidgetNumberFormat" + required: + - formula + - dimension + type: object + HostMapWidgetGroupBy: + description: Defines a grouping dimension for the infrastructure host map. + properties: + column: + description: Column name from the entity table (for example, `cloud_provider`, `tags`, `labels`). + example: tags + type: string + key: + description: Key within the column for nested attribute types (for example, `service` within `tags`). + example: service + type: string + required: + - column + type: object + HostMapWidgetInfrastructureRequest: + description: |- + Infrastructure-backed request for the host map widget. Supports entity-based + visualization with metric query enrichments, tag-based filtering, flexible grouping, + and hierarchical views. + properties: + child: + $ref: "#/components/schemas/HostMapWidgetInfrastructureRequestLeaf" + description: |- + Optional child request for hierarchical visualization (for example, hosts containing + containers). Maximum one level of nesting. + conditional_formats: + description: List of conditional formatting rules applied to fill values. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + enrichments: + description: Metric or event queries joined to the entity set. Each formula specifies a visual dimension. + example: + - formulas: + - dimension: fill + formula: "query1" + queries: + - data_source: metrics + name: "query1" + query: "avg:system.cpu.user{*} by {host}" + response_format: scalar + items: + $ref: "#/components/schemas/HostMapWidgetScalarRequest" + type: array + filter: + description: Filter string for the entity set in tag format (for example, `env:prod`). + example: "env:prod" + type: string + group_by: + description: |- + Defines how entities are grouped into tiles. The ordering of entries implies + the grouping hierarchy. + items: + $ref: "#/components/schemas/HostMapWidgetGroupBy" + type: array + no_group_hosts: + description: Whether to hide entities that have no group assignment. + type: boolean + no_metric_hosts: + description: Whether to hide entities that have no enrichment data. + type: boolean + node_type: + $ref: "#/components/schemas/HostMapWidgetNodeType" + request_type: + $ref: "#/components/schemas/HostMapWidgetInfrastructureRequestRequestType" + style: + $ref: "#/components/schemas/HostMapWidgetInfrastructureStyle" + required: + - request_type + - node_type + - enrichments + type: object + HostMapWidgetInfrastructureRequestLeaf: + description: Infrastructure-backed host map child request (leaf node, no further nesting supported). + properties: + conditional_formats: + description: List of conditional formatting rules applied to fill values. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + enrichments: + description: Metric or event queries joined to the entity set. Each formula specifies a visual dimension. + example: + - formulas: + - dimension: fill + formula: "query1" + queries: + - data_source: metrics + name: "query1" + query: "avg:system.cpu.user{*} by {host}" + response_format: scalar + items: + $ref: "#/components/schemas/HostMapWidgetScalarRequest" + type: array + filter: + description: Filter string for the entity set in tag format (for example, `env:prod`). + example: "env:prod" + type: string + group_by: + description: |- + Defines how entities are grouped into tiles. The ordering of entries implies + the grouping hierarchy. + items: + $ref: "#/components/schemas/HostMapWidgetGroupBy" + type: array + no_group_hosts: + description: Whether to hide entities that have no group assignment. + type: boolean + no_metric_hosts: + description: Whether to hide entities that have no enrichment data. + type: boolean + node_type: + $ref: "#/components/schemas/HostMapWidgetNodeType" + request_type: + $ref: "#/components/schemas/HostMapWidgetInfrastructureRequestRequestType" + style: + $ref: "#/components/schemas/HostMapWidgetInfrastructureStyle" + required: + - request_type + - node_type + - enrichments + type: object + HostMapWidgetInfrastructureRequestRequestType: + description: Identifies this as an infrastructure-backed host map request. + enum: + - infrastructure_hostmap + example: infrastructure_hostmap + type: string + x-enum-varnames: + - INFRASTRUCTURE_HOSTMAP + HostMapWidgetInfrastructureStyle: + description: Style configuration for the infrastructure host map. + properties: + fill_max: + description: Maximum value for the fill color scale. Omit to use automatic scaling. + format: double + type: number + fill_min: + description: Minimum value for the fill color scale. Omit to use automatic scaling. + format: double + type: number + palette: + description: Color palette name or alias. + example: hostmap_blues + type: string + palette_flip: + description: Whether to invert the color palette. + type: boolean + type: object + HostMapWidgetNodeType: + description: Which type of infrastructure entity to visualize in the host map. + enum: + - host + - container + - pod + - cluster + example: host + type: string + x-enum-varnames: + - HOST + - CONTAINER + - POD + - CLUSTER + HostMapWidgetProjection: + description: >- + Projection for the DDSQL host map request. Maps dataset columns to map dimensions: `node` identifies the entity, repeated `group` entries define the grouping hierarchy (outermost first), and `fill`/`size` drive the tile color and size. + properties: + dimensions: + description: List of column-to-dimension mappings for the projection. + example: + - column: entity_id + dimension: node + - column: parent_id + dimension: group + - column: cpu_usage + dimension: fill + items: + $ref: "#/components/schemas/HostMapWidgetProjectionDimensionMapping" + type: array + type: + $ref: "#/components/schemas/HostMapWidgetProjectionType" + required: + - type + - dimensions + type: object + HostMapWidgetProjectionDimensionMapping: + description: Maps a dataset column to a host map visual dimension. + properties: + alias: + description: Alias used to label the column instead of its name. + type: string + column: + description: Source column name from the dataset. + example: entity_id + type: string + dimension: + $ref: "#/components/schemas/HostMapWidgetDimension" + number_format: + $ref: "#/components/schemas/WidgetNumberFormat" + required: + - column + - dimension + type: object + HostMapWidgetProjectionType: + description: Type of the host map projection. + enum: + - hostmap + example: hostmap + type: string + x-enum-varnames: + - HOSTMAP + HostMapWidgetScalarRequest: + description: |- + Scalar formula request for the infrastructure host map widget. Each formula specifies + which visual dimension it drives. + properties: + formulas: + description: List of formulas that operate on queries, each assigned to a visual dimension. + example: + - dimension: fill + formula: "query1" + items: + $ref: "#/components/schemas/HostMapWidgetFormula" + type: array + queries: + description: List of queries that can be returned directly or used in formulas. + example: + - data_source: "metrics" + name: "my_query" + query: "avg:system.cpu.user{*}" + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/HostMapWidgetScalarRequestResponseFormat" + required: + - response_format + - queries + - formulas + type: object + HostMapWidgetScalarRequestResponseFormat: + description: Response format for the scalar formula request. Only `scalar` is supported. + enum: + - scalar + example: scalar + type: string + x-enum-varnames: + - SCALAR + HostMeta: + description: Metadata associated with your host. + properties: + agent_checks: + description: A list of Agent checks running on the host. + items: + $ref: "#/components/schemas/AgentCheck" + type: array + agent_version: + description: The Datadog Agent version. + example: "7.32.3" + type: string + cpuCores: + description: The number of cores. + example: 1 + format: int64 + type: integer + fbsdV: + description: An array of Mac versions. + items: + description: The version name. + example: "FreeBSD" + type: array + gohai: + description: JSON string containing system information. + example: '{"cpu":{"cache_size":"8192 KB","cpu_cores":"1","cpu_logical_processors":"1","family":"6","mhz":"2712.000","model":"142","model_name":"Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz","stepping":"10","vendor_id":"GenuineIntel"},"filesystem":[{"kb_size":"3966896","mounted_on":"/dev","name":"udev"},{"kb_size":"797396","mounted_on":"/run","name":"tmpfs"},{"kb_size":"64800356","mounted_on":"/","name":"/dev/mapper/vagrant--vg-root"},{"kb_size":"3986972","mounted_on":"/dev/shm","name":"tmpfs"},{"kb_size":"5120","mounted_on":"/run/lock","name":"tmpfs"},{"kb_size":"3986972","mounted_on":"/sys/fs/cgroup","name":"tmpfs"},{"kb_size":"488245288","mounted_on":"/vagrant","name":"vagrant"},{"kb_size":"797392","mounted_on":"/run/user/1000","name":"tmpfs"}],"memory":{"swap_total":"1003516kB","total":"7973944kB"},"network":{"interfaces":[{"ipv4":"10.0.2.15","ipv4-network":"10.0.2.0/24","ipv6":"fe80::a00:27ff:fec2:be11","ipv6-network":"fe80::/64","macaddress":"08:00:27:c2:be:11","name":"eth0"},{"ipv4":"192.168.122.1","ipv4-network":"192.168.122.0/24","macaddress":"52:54:00:6f:1c:bf","name":"virbr0"}],"ipaddress":"10.0.2.15","ipaddressv6":"fe80::a00:27ff:fec2:be11","macaddress":"08:00:27:c2:be:11"},"platform":{"GOOARCH":"amd64","GOOS":"linux","goV":"1.16.7","hardware_platform":"x86_64","hostname":"vagrant","kernel_name":"Linux","kernel_release":"4.15.0-29-generic","kernel_version":"#31-Ubuntu + SMP Tue Jul 17 15:39:52 UTC 2018","machine":"x86_64","os":"GNU/Linux","processor":"x86_64","pythonV":"2.7.15rc1"}}' + type: string + install_method: + $ref: "#/components/schemas/HostMetaInstallMethod" + macV: + description: An array of Mac versions. + items: + description: Version name. + example: "Mac" + type: array + machine: + description: The machine architecture. + example: "amd64" + type: string + nixV: + description: Array of Unix versions. + items: + description: Version name. + example: "Ubuntu" + type: array + platform: + description: The OS platform. + example: "linux" + type: string + processor: + description: The processor. + example: "Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz" + type: string + pythonV: + description: The Python version. + example: "3.8.11" + type: string + socket-fqdn: + description: The socket fqdn. + example: "vagrant.vm." + type: string + socket-hostname: + description: The socket hostname. + example: "vagrant" + type: string + winV: + description: An array of Windows versions. + items: + description: Version name. + example: "Windows" + type: array + type: object + HostMetaInstallMethod: + description: Agent install method. + properties: + installer_version: + description: The installer version. + example: "install_script-1.7.1" + type: string + tool: + description: Tool used to install the agent. + example: "install_script" + type: string + tool_version: + description: The tool version. + example: "install_script" + type: string + type: object + HostMetrics: + description: Host Metrics collected. + properties: + cpu: + description: The percent of CPU used (everything but idle). + example: 99.0 + format: double + type: number + iowait: + description: The percent of CPU spent waiting on the IO (not reported for all platforms). + example: 3.2 + format: double + type: number + load: + description: The system load over the last 15 minutes. + example: 0.5 + format: double + type: number + type: object + HostMuteResponse: + description: Response with the list of muted host for your organization. + properties: + action: + description: Action applied to the hosts. + example: "Muted" + type: string + end: + description: POSIX timestamp in seconds when the host is unmuted. + example: 1579098130 + format: int64 + type: integer + hostname: + description: The host name. + example: "test.host" + type: string + message: + description: Message associated with the mute. + example: "Muting this host for a test!" + type: string + type: object + HostMuteSettings: + description: Combination of settings to mute a host. + properties: + end: + description: POSIX timestamp in seconds when the host is unmuted. If omitted, the host remains muted until explicitly unmuted. + example: 1579098130 + format: int64 + type: integer + message: + description: Message to associate with the muting of this host. + example: "Muting this host for a test!" + type: string + override: + description: If true and the host is already muted, replaces existing host mute settings. + example: false + type: boolean + type: object + HostTags: + description: Host name and an array of its tags + properties: + host: + description: Your host name. + example: "test.host" + type: string + tags: + description: A list of tags associated with a host. + items: + description: A given tag in a list. + example: "environment:production" + type: string + type: array + type: object + HostTotals: + description: Total number of host currently monitored by Datadog. + properties: + total_active: + description: Total number of active host (UP and ???) reporting to Datadog. + format: int64 + type: integer + total_up: + description: Number of host that are UP and reporting to Datadog. + format: int64 + type: integer + type: object + HourlyUsageAttributionBody: + description: The usage for one set of tags for one hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The name of the organization. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + tag_config_source: + description: The source of the usage attribution tag configuration and the selected tags in the format of `::://////`. + type: string + tags: + $ref: "#/components/schemas/UsageAttributionTagNames" + total_usage_sum: + description: Total product usage for the given tags within the hour. + format: double + type: number + updated_at: + description: Shows the most recent hour in the current month for all organizations where usages are calculated. + type: string + usage_type: + $ref: "#/components/schemas/HourlyUsageAttributionUsageType" + type: object + HourlyUsageAttributionMetadata: + description: The object containing document metadata. + properties: + pagination: + $ref: "#/components/schemas/HourlyUsageAttributionPagination" + type: object + HourlyUsageAttributionPagination: + description: The metadata for the current pagination. + properties: + next_record_id: + description: The cursor to get the next results (if any). To make the next request, use the same parameters and add `next_record_id`. + nullable: true + type: string + type: object + HourlyUsageAttributionResponse: + description: Response containing the hourly usage attribution by tag(s). + properties: + metadata: + $ref: "#/components/schemas/HourlyUsageAttributionMetadata" + usage: + description: Get the hourly usage attribution by tag(s). + items: + $ref: "#/components/schemas/HourlyUsageAttributionBody" + type: array + type: object + HourlyUsageAttributionUsageType: + description: |- + Supported products for hourly usage attribution requests. Usage types are in the format `_usage`. + To obtain the complete list of valid usage types, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + enum: + - api_usage + - apm_fargate_usage + - apm_host_usage + - apm_usm_usage + - appsec_fargate_usage + - appsec_usage + - asm_serverless_traced_invocations_usage + - asm_serverless_traced_invocations_percentage + - bits_ai_investigations_usage + - browser_usage + - ci_code_coverage_committers_percentage + - ci_code_coverage_committers_usage + - ci_pipeline_indexed_spans_usage + - ci_test_indexed_spans_usage + - ci_visibility_itr_usage + - cloud_siem_usage + - code_security_host_usage + - container_excl_agent_usage + - container_usage + - cspm_containers_usage + - cspm_hosts_usage + - custom_event_usage + - custom_ingested_timeseries_usage + - custom_timeseries_usage + - cws_containers_usage + - cws_fargate_task_usage + - cws_hosts_usage + - data_jobs_monitoring_usage + - data_stream_monitoring_usage + - dbm_hosts_usage + - dbm_queries_usage + - error_tracking_usage + - error_tracking_percentage + - estimated_indexed_spans_usage + - estimated_ingested_spans_usage + - fargate_usage + - flex_logs_starter + - flex_stored_logs + - functions_usage + - incident_management_monthly_active_users_usage + - indexed_spans_usage + - infra_host_usage + - infra_host_basic_usage + - ingested_logs_bytes_usage + - ingested_spans_bytes_usage + - invocations_usage + - lambda_traced_invocations_usage + - llm_observability_usage + - llm_spans_usage + - logs_indexed_15day_usage + - logs_indexed_180day_usage + - logs_indexed_1day_usage + - logs_indexed_30day_usage + - logs_indexed_360day_usage + - logs_indexed_3day_usage + - logs_indexed_45day_usage + - logs_indexed_60day_usage + - logs_indexed_7day_usage + - logs_indexed_90day_usage + - logs_indexed_custom_retention_usage + - mobile_app_testing_usage + - ndm_netflow_usage + - npm_host_usage + - network_device_wireless_usage + - obs_pipeline_bytes_usage + - obs_pipelines_vcpu_usage + - online_archive_usage + - product_analytics_session_usage + - profiled_container_usage + - profiled_fargate_usage + - profiled_host_usage + - published_app + - rum_browser_mobile_sessions_usage + - rum_ingested_usage + - rum_investigate_usage + - rum_replay_sessions_usage + - rum_session_replay_add_on_usage + - sca_fargate_usage + - sds_scanned_bytes_usage + - serverless_apps_usage + - serverless_apps_apm_usage + - siem_12mo_retention_usage + - siem_6mo_retention_usage + - siem_analyzed_logs_add_on_usage + - siem_ingested_bytes_usage + - snmp_usage + - universal_service_monitoring_usage + - vuln_management_hosts_usage + - workflow_executions_usage + type: string + x-enum-varnames: + - API_USAGE + - APM_FARGATE_USAGE + - APM_HOST_USAGE + - APM_USM_USAGE + - APPSEC_FARGATE_USAGE + - APPSEC_USAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE + - BITS_AI_INVESTIGATIONS_USAGE + - BROWSER_USAGE + - CI_CODE_COVERAGE_COMMITTERS_PERCENTAGE + - CI_CODE_COVERAGE_COMMITTERS_USAGE + - CI_PIPELINE_INDEXED_SPANS_USAGE + - CI_TEST_INDEXED_SPANS_USAGE + - CI_VISIBILITY_ITR_USAGE + - CLOUD_SIEM_USAGE + - CODE_SECURITY_HOST_USAGE + - CONTAINER_EXCL_AGENT_USAGE + - CONTAINER_USAGE + - CSPM_CONTAINERS_USAGE + - CSPM_HOSTS_USAGE + - CUSTOM_EVENT_USAGE + - CUSTOM_INGESTED_TIMESERIES_USAGE + - CUSTOM_TIMESERIES_USAGE + - CWS_CONTAINERS_USAGE + - CWS_FARGATE_TASK_USAGE + - CWS_HOSTS_USAGE + - DATA_JOBS_MONITORING_USAGE + - DATA_STREAM_MONITORING_USAGE + - DBM_HOSTS_USAGE + - DBM_QUERIES_USAGE + - ERROR_TRACKING_USAGE + - ERROR_TRACKING_PERCENTAGE + - ESTIMATED_INDEXED_SPANS_USAGE + - ESTIMATED_INGESTED_SPANS_USAGE + - FARGATE_USAGE + - FLEX_LOGS_STARTER + - FLEX_STORED_LOGS + - FUNCTIONS_USAGE + - INCIDENT_MANAGEMENT_MONTHLY_ACTIVE_USERS_USAGE + - INDEXED_SPANS_USAGE + - INFRA_HOST_USAGE + - INFRA_HOST_BASIC_USAGE + - INGESTED_LOGS_BYTES_USAGE + - INGESTED_SPANS_BYTES_USAGE + - INVOCATIONS_USAGE + - LAMBDA_TRACED_INVOCATIONS_USAGE + - LLM_OBSERVABILITY_USAGE + - LLM_SPANS_USAGE + - LOGS_INDEXED_15DAY_USAGE + - LOGS_INDEXED_180DAY_USAGE + - LOGS_INDEXED_1DAY_USAGE + - LOGS_INDEXED_30DAY_USAGE + - LOGS_INDEXED_360DAY_USAGE + - LOGS_INDEXED_3DAY_USAGE + - LOGS_INDEXED_45DAY_USAGE + - LOGS_INDEXED_60DAY_USAGE + - LOGS_INDEXED_7DAY_USAGE + - LOGS_INDEXED_90DAY_USAGE + - LOGS_INDEXED_CUSTOM_RETENTION_USAGE + - MOBILE_APP_TESTING_USAGE + - NDM_NETFLOW_USAGE + - NETWORK_DEVICE_WIRELESS_USAGE + - NPM_HOST_USAGE + - OBS_PIPELINE_BYTES_USAGE + - OBS_PIPELINE_VCPU_USAGE + - ONLINE_ARCHIVE_USAGE + - PRODUCT_ANALYTICS_SESSION_USAGE + - PROFILED_CONTAINER_USAGE + - PROFILED_FARGATE_USAGE + - PROFILED_HOST_USAGE + - PUBLISHED_APP_USAGE + - RUM_BROWSER_MOBILE_SESSIONS_USAGE + - RUM_INGESTED_USAGE + - RUM_INVESTIGATE_USAGE + - RUM_REPLAY_SESSIONS_USAGE + - RUM_SESSION_REPLAY_ADD_ON_USAGE + - SCA_FARGATE_USAGE + - SDS_SCANNED_BYTES_USAGE + - SERVERLESS_APPS_USAGE + - SERVERLESS_APPS_APM_USAGE + - SIEM_12MO_RETENTION_USAGE + - SIEM_6MO_RETENTION_USAGE + - SIEM_ANALYZED_LOGS_ADD_ON_USAGE + - SIEM_INGESTED_BYTES_USAGE + - SNMP_USAGE + - UNIVERSAL_SERVICE_MONITORING_USAGE + - VULN_MANAGEMENT_HOSTS_USAGE + - WORKFLOW_EXECUTIONS_USAGE + IFrameWidgetDefinition: + description: The iframe widget allows you to embed a portion of any other web page on your dashboard. + properties: + type: + $ref: "#/components/schemas/IFrameWidgetDefinitionType" + url: + description: URL of the iframe. + example: "" + type: string + required: + - type + - url + type: object + IFrameWidgetDefinitionType: + default: iframe + description: Type of the iframe widget. + enum: + - iframe + example: iframe + type: string + x-enum-varnames: + - IFRAME + IPPrefixesAPI: + description: Available prefix information for the API endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesAPM: + description: Available prefix information for the APM endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesAgents: + description: Available prefix information for the Agent endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesGlobal: + description: Available prefix information for all Datadog endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesLogs: + description: Available prefix information for the Logs endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesOrchestrator: + description: Available prefix information for the Orchestrator endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesProcess: + description: Available prefix information for the Process endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesRemoteConfiguration: + description: Available prefix information for the Remote Configuration endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesSynthetics: + description: Available prefix information for the Synthetics endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv4_by_location: + additionalProperties: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix. + type: string + type: array + description: List of IPv4 prefixes by location. + type: object + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + prefixes_ipv6_by_location: + additionalProperties: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix. + type: string + type: array + description: List of IPv6 prefixes by location. + type: object + type: object + IPPrefixesSyntheticsPrivateLocations: + description: Available prefix information for the Synthetics Private Locations endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesWebhooks: + description: Available prefix information for the Webhook endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPRanges: + description: IP ranges. + properties: + agents: + $ref: "#/components/schemas/IPPrefixesAgents" + api: + $ref: "#/components/schemas/IPPrefixesAPI" + apm: + $ref: "#/components/schemas/IPPrefixesAPM" + global: + $ref: "#/components/schemas/IPPrefixesGlobal" + logs: + $ref: "#/components/schemas/IPPrefixesLogs" + modified: + description: Date when last updated, in the form `YYYY-MM-DD-hh-mm-ss`. + example: 2019-10-31-20-00-00 + type: string + orchestrator: + $ref: "#/components/schemas/IPPrefixesOrchestrator" + process: + $ref: "#/components/schemas/IPPrefixesProcess" + remote-configuration: + $ref: "#/components/schemas/IPPrefixesRemoteConfiguration" + synthetics: + $ref: "#/components/schemas/IPPrefixesSynthetics" + synthetics-private-locations: + $ref: "#/components/schemas/IPPrefixesSyntheticsPrivateLocations" + version: + description: Version of the IP list. + example: 11 + format: int64 + type: integer + webhooks: + $ref: "#/components/schemas/IPPrefixesWebhooks" + type: object + IdpFormData: + description: Object describing the IdP configuration. + properties: + idp_file: + description: The path to the XML metadata file you wish to upload. + example: "" + format: binary + type: string + required: + - idp_file + type: object + IdpResponse: + description: The IdP response object. + properties: + message: + description: Identity provider response. + example: "IdP metadata successfully uploaded for example org" + type: string + required: + - message + type: object + ImageWidgetDefinition: + description: The image widget allows you to embed an image on your dashboard. An image can be a PNG, JPG, or animated GIF. + properties: + has_background: + default: true + description: Whether to display a background or not. + example: true + type: boolean + has_border: + default: true + description: Whether to display a border or not. + example: true + type: boolean + horizontal_align: + $ref: "#/components/schemas/WidgetHorizontalAlign" + margin: + $ref: "#/components/schemas/WidgetMargin" + sizing: + $ref: "#/components/schemas/WidgetImageSizing" + type: + $ref: "#/components/schemas/ImageWidgetDefinitionType" + url: + description: URL of the image. + example: "https://example.com/image.png" + type: string + url_dark_theme: + description: URL of the image in dark mode. + example: "https://example.com/image-dark-mode.png" + type: string + vertical_align: + $ref: "#/components/schemas/WidgetVerticalAlign" + required: + - type + - url + type: object + ImageWidgetDefinitionType: + default: image + description: Type of the image widget. + enum: + - image + example: image + type: string + x-enum-varnames: + - IMAGE + IntakePayloadAccepted: + description: The payload accepted for intake. + properties: + status: + description: The status of the intake payload. + example: ok + type: string + type: object + ListStreamColumn: + description: Widget column. + example: {"field": "timestamp", "width": "auto"} + properties: + field: + description: Widget column field. + example: "content" + type: string + width: + $ref: "#/components/schemas/ListStreamColumnWidth" + required: + - width + - field + type: object + ListStreamColumnWidth: + description: Widget column width. + enum: + - auto + - compact + - full + example: compact + type: string + x-enum-varnames: + - AUTO + - COMPACT + - FULL + ListStreamComputeAggregation: + description: Aggregation value. + enum: + - count + - cardinality + - median + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + - earliest + - latest + - most_frequent + example: count + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - MEDIAN + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + - EARLIEST + - LATEST + - MOST_FREQUENT + ListStreamComputeItems: + description: List of facets and aggregations which to compute. + properties: + aggregation: + $ref: "#/components/schemas/ListStreamComputeAggregation" + facet: + description: Facet name. + example: resource_name + type: string + required: + - aggregation + type: object + ListStreamGroupByItems: + description: List of facets on which to group. + properties: + facet: + description: Facet name. + example: resource_name + type: string + required: + - facet + type: object + ListStreamIssuePersona: + description: Persona filter for the `issue_stream` data source. + enum: + - all + - browser + - mobile + - backend + type: string + x-enum-varnames: + - ALL + - BROWSER + - MOBILE + - BACKEND + ListStreamIssueState: + description: Issue state filter for the `issue_stream` data source. + enum: + - OPEN + - IGNORED + - ACKNOWLEDGED + - RESOLVED + type: string + x-enum-varnames: + - OPEN + - IGNORED + - ACKNOWLEDGED + - RESOLVED + ListStreamQuery: + description: Updated list stream widget. + properties: + assignee_uuids: + description: Filter by assignee UUIDs. Usable only with `issue_stream`. + items: + description: Assignee UUID. + type: string + type: array + clustering_pattern_field_path: + description: Specifies the field for logs pattern clustering. Usable only with logs_pattern_stream. + example: "message" + type: string + compute: + description: Compute configuration for the List Stream Widget. Compute can be used only with the logs_transaction_stream (from 1 to 5 items) list stream source. + items: + $ref: "#/components/schemas/ListStreamComputeItems" + maxItems: 5 + minItems: 1 + type: array + data_source: + $ref: "#/components/schemas/ListStreamSource" + event_size: + $ref: "#/components/schemas/WidgetEventSize" + group_by: + description: Group by configuration for the List Stream Widget. Group by can be used only with logs_pattern_stream (up to 4 items) or logs_transaction_stream (one group by item is required) list stream source. + items: + $ref: "#/components/schemas/ListStreamGroupByItems" + maxItems: 4 + type: array + indexes: + description: List of indexes. + items: + description: Index. + type: string + type: array + persona: + $ref: "#/components/schemas/ListStreamIssuePersona" + query_string: + description: Widget query. + example: "@service:app" + type: string + sort: + $ref: "#/components/schemas/WidgetFieldSort" + states: + description: Filter by issue states. Usable only with `issue_stream`. + items: + $ref: "#/components/schemas/ListStreamIssueState" + type: array + storage: + description: Option for storage location. Feature in Private Beta. + example: "indexes" + type: string + suspected_causes: + description: Filter by suspected causes. Usable only with `issue_stream`. + items: + description: Suspected cause. + type: string + type: array + team_handles: + description: Filter by team handles. Usable only with `issue_stream`. + items: + description: Team handle. + type: string + type: array + version: + $ref: "#/components/schemas/ListStreamQueryVersion" + required: + - query_string + - data_source + type: object + ListStreamQueryVersion: + description: |- + Version of the query for the logs transaction stream widget. When omitted, v1 query behavior is + preserved. Set to `sequential_query` to use v2 behavior. **This feature is in Preview.** + enum: + - sequential_query + type: string + x-enum-varnames: + - SEQUENTIAL_QUERY + ListStreamResponseFormat: + description: Widget response format. + enum: + - event_list + example: event_list + type: string + x-enum-varnames: + - EVENT_LIST + ListStreamSource: + default: logs_stream + description: Source from which to query items to display in the stream. apm_issue_stream, rum_issue_stream, and logs_issue_stream are deprecated. Use issue_stream instead. + enum: + - logs_stream + - audit_stream + - ci_pipeline_stream + - ci_test_stream + - rum_issue_stream + - apm_issue_stream + - trace_stream + - logs_issue_stream + - logs_pattern_stream + - logs_transaction_stream + - event_stream + - rum_stream + - llm_observability_stream + - issue_stream + - security_runtime_stream + - security_signals_stream + - incidents_stream + example: logs_stream + type: string + x-enum-varnames: + - LOGS_STREAM + - AUDIT_STREAM + - CI_PIPELINE_STREAM + - CI_TEST_STREAM + - RUM_ISSUE_STREAM + - APM_ISSUE_STREAM + - TRACE_STREAM + - LOGS_ISSUE_STREAM + - LOGS_PATTERN_STREAM + - LOGS_TRANSACTION_STREAM + - EVENT_STREAM + - RUM_STREAM + - LLM_OBSERVABILITY_STREAM + - ISSUE_STREAM + - SECURITY_RUNTIME_STREAM + - SECURITY_SIGNALS_STREAM + - INCIDENTS_STREAM + ListStreamWidgetDefinition: + description: |- + The list stream visualization displays a table of recent events in your application that + match a search criteria using user-defined columns. + properties: + description: + description: The description of the widget. + type: string + legend_size: + $ref: "#/components/schemas/WidgetLegendSize" + requests: + description: Request payload used to query items. + example: [{"columns": [{"field": "timestamp", "width": "auto"}], "query": {"data_source": "apm_issue_stream", "query_string": "@data_source:APM"}, "response_format": "event_list"}] + items: + $ref: "#/components/schemas/ListStreamWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + show_legend: + description: Whether or not to display the legend on this widget. + type: boolean + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/ListStreamWidgetDefinitionType" + required: + - type + - requests + type: object + ListStreamWidgetDefinitionType: + default: list_stream + description: Type of the list stream widget. + enum: + - list_stream + example: list_stream + type: string + x-enum-varnames: + - LIST_STREAM + ListStreamWidgetRequest: + description: Updated list stream widget. + properties: + columns: + description: Widget columns. + example: [{"field": "timestamp", "width": "auto"}, {"field": "content", "width": "full"}] + items: + $ref: "#/components/schemas/ListStreamColumn" + type: array + query: + $ref: "#/components/schemas/ListStreamQuery" + response_format: + $ref: "#/components/schemas/ListStreamResponseFormat" + required: + - columns + - query + - response_format + type: object + Log: + description: Object describing a log after being processed and stored by Datadog. + properties: + content: + $ref: "#/components/schemas/LogContent" + id: + description: ID of the Log. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: object + LogContent: + description: JSON object containing all log attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from your log. + example: {"customAttribute": 123, "duration": 2345} + type: object + host: + description: |- + Name of the machine from where the logs are being sent. + example: i-0123 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: Host connected to remote + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same + value when you use both products. + example: agent + type: string + tags: + description: Array of tags associated with your log. + example: ["team:A"] + items: + description: Tag associated with your log. + type: string + type: array + timestamp: + description: Timestamp of your log. + example: "2020-05-26T13:36:14Z" + format: date-time + type: string + type: object + LogQueryDefinition: + description: The log query. + properties: + compute: + $ref: "#/components/schemas/LogsQueryCompute" + group_by: + description: List of tag prefixes to group by in the case of a cluster check. + items: + $ref: "#/components/schemas/LogQueryDefinitionGroupBy" + type: array + index: + description: A coma separated-list of index names. Use "*" query all indexes at once. [Multiple Indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) + example: "days-3,days-7" + type: string + multi_compute: + description: This field is mutually exclusive with `compute`. + items: + $ref: "#/components/schemas/LogsQueryCompute" + type: array + search: + $ref: "#/components/schemas/LogQueryDefinitionSearch" + type: object + LogQueryDefinitionGroupBy: + description: Defined items in the group. + properties: + facet: + description: Facet name. + example: resource_name + type: string + limit: + description: Maximum number of items in the group. + example: 50 + format: int64 + type: integer + sort: + $ref: "#/components/schemas/LogQueryDefinitionGroupBySort" + required: + - facet + type: object + LogQueryDefinitionGroupBySort: + description: Define a sorting method. + properties: + aggregation: + description: The aggregation method. + example: avg + type: string + facet: + description: Facet name. + example: "@string_query.interval" + type: string + order: + $ref: "#/components/schemas/WidgetSort" + required: + - aggregation + - order + type: object + LogQueryDefinitionSearch: + description: The query being made on the logs. + properties: + query: + description: Search value to apply. + example: "" + type: string + required: + - query + type: object + LogStreamWidgetDefinition: + description: The Log Stream displays a log flow matching the defined query. + properties: + columns: + description: Which columns to display on the widget. + items: + description: Column name. + type: string + type: array + description: + description: The description of the widget. + type: string + indexes: + description: An array of index names to query in the stream. Use [] to query all indexes at once. + example: ["days-3", "days-7"] + items: + description: One of the log indexes set up for your organization. [Multiple Indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) + type: string + type: array + logset: + deprecated: true + description: ID of the log set to use. + type: string + message_display: + $ref: "#/components/schemas/WidgetMessageDisplay" + query: + description: Query to filter the log stream with. + type: string + show_date_column: + description: Whether to show the date column or not + type: boolean + show_message_column: + description: Whether to show the message column or not + type: boolean + sort: + $ref: "#/components/schemas/WidgetFieldSort" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/LogStreamWidgetDefinitionType" + required: + - type + type: object + LogStreamWidgetDefinitionType: + default: log_stream + description: Type of the log stream widget. + enum: + - log_stream + example: log_stream + type: string + x-enum-varnames: + - LOG_STREAM + LogsAPIError: + description: Error returned by the Logs API + properties: + code: + description: Code identifying the error + type: string + details: + description: Additional error details + items: + $ref: "#/components/schemas/LogsAPIError" + type: array + message: + description: Error message + type: string + type: object + LogsAPIErrorResponse: + description: Response returned by the Logs API when errors occur. + properties: + error: + $ref: "#/components/schemas/LogsAPIError" + type: object + LogsAPILimitReachedResponse: + description: Response returned by the Logs API when the max limit has been reached. + properties: + error: + $ref: "#/components/schemas/LogsAPIError" + type: object + LogsArithmeticProcessor: + description: |- + Use the Arithmetic Processor to add a new attribute (without spaces or special characters + in the new attribute name) to a log with the result of the provided formula. + This enables you to remap different time attributes with different units into a single attribute, + or to compute operations on attributes within the same log. + + The formula can use parentheses and the basic arithmetic operators `-`, `+`, `*`, `/`. + + By default, the calculation is skipped if an attribute is missing. + Select “Replace missing attribute by 0” to automatically populate + missing attribute values with 0 to ensure that the calculation is done. + An attribute is missing if it is not found in the log attributes, + or if it cannot be converted to a number. + + *Notes*: + + - The operator `-` needs to be space split in the formula as it can also be contained in attribute names. + - If the target attribute already exists, it is overwritten by the result of the formula. + - Results are rounded up to the 9th decimal. For example, if the result of the formula is `0.1234567891`, + the actual value stored for the attribute is `0.123456789`. + - If you need to scale a unit of measure, + see [Scale Filter](https://docs.datadoghq.com/logs/log_configuration/parsing/?tab=filter#matcher-and-filter). + properties: + expression: + description: Arithmetic operation between one or more log attributes. + example: "" + type: string + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + is_replace_missing: + default: false + description: |- + If `true`, it replaces all missing attributes of expression by `0`, `false` + skip the operation if an attribute is missing. + type: boolean + name: + description: Name of the processor. + type: string + target: + description: Name of the attribute that contains the result of the arithmetic operation. + example: "" + type: string + type: + $ref: "#/components/schemas/LogsArithmeticProcessorType" + required: + - target + - expression + - type + type: object + LogsArithmeticProcessorType: + default: arithmetic-processor + description: Type of logs arithmetic processor. + enum: + - arithmetic-processor + example: arithmetic-processor + type: string + x-enum-varnames: + - ARITHMETIC_PROCESSOR + LogsArrayMapArithmeticSubProcessor: + description: |- + An arithmetic sub-processor for use inside an array-map processor. + Unlike the top-level arithmetic processor, `is_enabled` is not supported. + properties: + expression: + description: Arithmetic operation to perform. + example: $sourceElem.count * 2 + type: string + is_replace_missing: + default: false + description: Replace missing attribute values with 0. + type: boolean + name: + description: Name of the sub-processor. + type: string + target: + description: Target attribute path for the result. + example: $targetElem.doubled + type: string + type: + $ref: "#/components/schemas/LogsArithmeticProcessorType" + required: + - expression + - target + - type + type: object + LogsArrayMapAttributeRemapper: + description: |- + An attribute remapper sub-processor for use inside an array-map processor. + Unlike the top-level attribute remapper, `is_enabled`, `source_type`, and + `target_type` are not supported. + properties: + name: + description: Name of the sub-processor. + type: string + override_on_conflict: + default: false + description: Override the target element if already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + sources: + description: Array of source attribute paths. + example: + - $sourceElem.id + items: + type: string + type: array + target: + description: Target attribute path. + example: $targetElem.uid + type: string + target_format: + $ref: "#/components/schemas/TargetFormatType" + type: + $ref: "#/components/schemas/LogsAttributeRemapperType" + required: + - sources + - target + - type + type: object + LogsArrayMapCategorySubProcessor: + description: |- + A category sub-processor for use inside an array-map processor. + Unlike the top-level category processor, `is_enabled` is not supported. + properties: + categories: + description: Array of filters to match against a log and the corresponding value to assign. + items: + $ref: "#/components/schemas/LogsCategoryProcessorCategory" + type: array + name: + description: Name of the sub-processor. + type: string + target: + description: Target attribute path for the category value. + example: $targetElem.level + type: string + type: + $ref: "#/components/schemas/LogsCategoryProcessorType" + required: + - categories + - target + - type + type: object + LogsArrayMapProcessor: + description: |- + The array-map processor transforms each element of a source array by applying + sub-processors in order and collecting the results into a target array. + Results can be written to a new array, to the source array (in-place), or to + an existing target array. Sub-processors can read from `$sourceElem.` + (object element field), bare `$sourceElem` (primitive element), or any parent + log attribute path. Sub-processors write to `$targetElem.` (object + output field) or bare `$targetElem` (primitive output). + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + preserve_source: + default: true + description: |- + When `false` and `source != target`, the source attribute is removed after + processing. Cannot be `false` when `source == target`. + type: boolean + processors: + description: |- + Sub-processors applied to each element. Allowed types: `attribute-remapper`, + `string-builder-processor`, `arithmetic-processor`, `category-processor`. + items: + $ref: "#/components/schemas/LogsArrayMapSubProcessor" + type: array + source: + description: |- + Attribute path of the source array. Elements are read-only via `$sourceElem` + inside sub-processors. + example: detail.resource.s3BucketDetails + type: string + target: + description: |- + Attribute path of the output array. Sub-processors write to `$targetElem` + (or `$targetElem.`) to build each output element. + example: ocsf.resources + type: string + type: + $ref: "#/components/schemas/LogsArrayMapProcessorType" + required: + - source + - target + - processors + - type + type: object + LogsArrayMapProcessorType: + default: array-map-processor + description: Type of logs array-map processor. + enum: + - array-map-processor + example: array-map-processor + type: string + x-enum-varnames: + - ARRAY_MAP_PROCESSOR + LogsArrayMapStringBuilderSubProcessor: + description: |- + A string builder sub-processor for use inside an array-map processor. + Unlike the top-level string builder processor, `is_enabled` is not supported. + properties: + is_replace_missing: + default: false + description: Replace missing attribute values with an empty string. + type: boolean + name: + description: Name of the sub-processor. + type: string + target: + description: Target attribute path for the result. + example: $targetElem.label + type: string + template: + description: Formula with one or more attributes and raw text. + example: item-%{$sourceElem.id} + type: string + type: + $ref: "#/components/schemas/LogsStringBuilderProcessorType" + required: + - template + - target + - type + type: object + LogsArrayMapSubProcessor: + description: |- + A sub-processor used inside an array-map processor. + Allowed types: `attribute-remapper`, `string-builder-processor`, + `arithmetic-processor`, `category-processor`. + oneOf: + - $ref: "#/components/schemas/LogsArrayMapAttributeRemapper" + - $ref: "#/components/schemas/LogsArrayMapArithmeticSubProcessor" + - $ref: "#/components/schemas/LogsArrayMapStringBuilderSubProcessor" + - $ref: "#/components/schemas/LogsArrayMapCategorySubProcessor" + LogsArrayProcessor: + description: |- + A processor for extracting, aggregating, or transforming values from JSON arrays within your logs. + Supported operations are: + - Select value from matching element + - Compute array length + - Append a value to an array + - Extract key-value pairs from an array + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + operation: + $ref: "#/components/schemas/LogsArrayProcessorOperation" + type: + $ref: "#/components/schemas/LogsArrayProcessorType" + required: + - operation + - type + type: object + LogsArrayProcessorOperation: + description: Configuration of the array processor operation to perform. + oneOf: + - $ref: "#/components/schemas/LogsArrayProcessorOperationAppend" + - $ref: "#/components/schemas/LogsArrayProcessorOperationLength" + - $ref: "#/components/schemas/LogsArrayProcessorOperationSelect" + - $ref: "#/components/schemas/LogsArrayProcessorOperationExtractKeyValue" + LogsArrayProcessorOperationAppend: + description: Operation that appends a value to a target array attribute. + properties: + preserve_source: + default: true + description: Remove or preserve the remapped source element. + type: boolean + source: + description: Attribute path containing the value to append. + example: network.client.ip + type: string + target: + description: Attribute path of the array to append to. + example: sourceIps + type: string + type: + $ref: "#/components/schemas/LogsArrayProcessorOperationAppendType" + required: + - type + - source + - target + type: object + LogsArrayProcessorOperationAppendType: + description: Operation type. + enum: [append] + example: append + type: string + x-enum-varnames: + - APPEND + LogsArrayProcessorOperationExtractKeyValue: + description: Operation that extracts key-value pairs from a `source` array and stores the result in the `target` attribute. + properties: + key_to_extract: + description: Key of the attribute in each array element that holds the name to use for the extracted attribute. + example: name + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + source: + description: Attribute path of the array to extract key-value pairs from. + example: tags + type: string + target: + description: Attribute that receives the extracted key-value pairs. If not specified, the extracted attributes are added at the root level of the log. + example: extracted + type: string + type: + $ref: "#/components/schemas/LogsArrayProcessorOperationExtractKeyValueType" + value_to_extract: + description: Key of the attribute in each array element that holds the value to use for the extracted attribute. + example: value + type: string + required: + - type + - source + - key_to_extract + - value_to_extract + type: object + LogsArrayProcessorOperationExtractKeyValueType: + description: Operation type. + enum: [key-value] + example: key-value + type: string + x-enum-varnames: + - KEY_VALUE + LogsArrayProcessorOperationLength: + description: Operation that computes the length of a `source` array and stores the result in the `target` attribute. + properties: + source: + description: Attribute path of the array to measure. + example: tags + type: string + target: + description: Attribute that receives the computed length. + example: tagCount + type: string + type: + $ref: "#/components/schemas/LogsArrayProcessorOperationLengthType" + required: + - type + - source + - target + type: object + LogsArrayProcessorOperationLengthType: + description: Operation type. + enum: [length] + example: length + type: string + x-enum-varnames: + - LENGTH + LogsArrayProcessorOperationSelect: + description: Operation that finds an object in a `source` array using a `filter`, and then extracts a specific value into the `target` attribute. + properties: + filter: + description: Filter condition expressed as `key:value` used to find the matching element. + example: name:Referrer + type: string + source: + description: Attribute path of the array to search into. + example: httpRequest.headers + type: string + target: + description: Attribute that receives the extracted value. + example: referrer + type: string + type: + $ref: "#/components/schemas/LogsArrayProcessorOperationSelectType" + value_to_extract: + description: Key of the value to extract from the matching element. + example: value + type: string + required: + - type + - source + - target + - filter + - value_to_extract + type: object + LogsArrayProcessorOperationSelectType: + description: Operation type. + enum: [select] + example: select + type: string + x-enum-varnames: + - SELECT + LogsArrayProcessorType: + default: array-processor + description: Type of logs array processor. + enum: + - array-processor + example: array-processor + type: string + x-enum-varnames: + - ARRAY_PROCESSOR + LogsAttributeRemapper: + description: |- + The remapper processor remaps any source attribute(s) or tag to another target attribute or tag. + Constraints on the tag/attribute name are explained in the [Tag Best Practice documentation](https://docs.datadoghq.com/logs/guide/log-parsing-best-practice). + Some additional constraints are applied as `:` or `,` are not allowed in the target tag/attribute name. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + source_type: + default: attribute + description: Defines if the sources are from log `attribute` or `tag`. + type: string + sources: + description: Array of source attributes. + example: ["web", "gateway"] + items: + description: Attribute used as a source to remap its value to the target attribute. + type: string + type: array + target: + description: Final attribute or tag name to remap the sources to. + example: operation_id + type: string + target_format: + $ref: "#/components/schemas/TargetFormatType" + target_type: + default: attribute + description: Defines if the final attribute or tag name is from log `attribute` or `tag`. + type: string + type: + $ref: "#/components/schemas/LogsAttributeRemapperType" + required: + - sources + - target + - type + type: object + LogsAttributeRemapperType: + default: attribute-remapper + description: Type of logs attribute remapper. + enum: + - attribute-remapper + example: attribute-remapper + type: string + x-enum-varnames: + - ATTRIBUTE_REMAPPER + LogsByRetention: + description: Object containing logs usage data broken down by retention period. + properties: + orgs: + $ref: "#/components/schemas/LogsByRetentionOrgs" + usage: + description: Aggregated index logs usage for each retention period with usage. + items: + $ref: "#/components/schemas/LogsRetentionAggSumUsage" + type: array + usage_by_month: + $ref: "#/components/schemas/LogsByRetentionMonthlyUsage" + type: object + LogsByRetentionMonthlyUsage: + description: Object containing a summary of indexed logs usage by retention period for a single month. + properties: + date: + description: The month for the usage. + format: date-time + type: string + usage: + description: Indexed logs usage for each active retention for the month. + items: + $ref: "#/components/schemas/LogsRetentionSumUsage" + type: array + type: object + LogsByRetentionOrgUsage: + description: Indexed logs usage by retention for a single organization. + properties: + usage: + description: Indexed logs usage for each active retention for the organization. + items: + $ref: "#/components/schemas/LogsRetentionSumUsage" + type: array + type: object + LogsByRetentionOrgs: + description: Indexed logs usage summary for each organization for each retention period with usage. + properties: + usage: + description: Indexed logs usage summary for each organization. + items: + $ref: "#/components/schemas/LogsByRetentionOrgUsage" + type: array + type: object + LogsCategoryProcessor: + description: |- + Use the Category Processor to add a new attribute (without spaces or special characters in the new attribute name) + to a log matching a provided search query. Use categories to create groups for an analytical view. + For example, URL groups, machine groups, environments, and response time buckets. + + **Notes**: + + - The syntax of the query is the one of Logs Explorer search bar. + The query can be done on any log attribute or tag, whether it is a facet or not. + Wildcards can also be used inside your query. + - Once the log has matched one of the Processor queries, it stops. + Make sure they are properly ordered in case a log could match several queries. + - The names of the categories must be unique. + - Once defined in the Category Processor, you can map categories to log status using the Log Status Remapper. + properties: + categories: + description: |- + Array of filters to match or not a log and their + corresponding `name` to assign a custom value to the log. + example: [] + items: + $ref: "#/components/schemas/LogsCategoryProcessorCategory" + type: array + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + target: + description: Name of the target attribute which value is defined by the matching category. + example: "" + type: string + type: + $ref: "#/components/schemas/LogsCategoryProcessorType" + required: + - categories + - target + - type + type: object + LogsCategoryProcessorCategory: + description: Object describing the logs filter. + properties: + filter: + $ref: "#/components/schemas/LogsFilter" + name: + description: Value to assign to the target attribute. + type: string + type: object + LogsCategoryProcessorType: + default: category-processor + description: Type of logs category processor. + enum: + - category-processor + example: category-processor + type: string + x-enum-varnames: + - CATEGORY_PROCESSOR + LogsDailyLimitReset: + description: Object containing options to override the default daily limit reset time. + properties: + reset_time: + description: String in `HH:00` format representing the time of day the daily limit should be reset. The hours must be between 00 and 23 (inclusive). + example: "14:00" + type: string + reset_utc_offset: + description: String in `(-|+)HH:00` format representing the UTC offset to apply to the given reset time. The hours must be between -12 and +14 (inclusive). + example: "+02:00" + type: string + type: object + LogsDateRemapper: + description: |- + As Datadog receives logs, it timestamps them using the value(s) from any of these default attributes. + + - `timestamp` + - `date` + - `_timestamp` + - `Timestamp` + - `eventTime` + - `published_date` + + If your logs put their dates in an attribute not in this list, + use the log date Remapper Processor to define their date attribute as the official log timestamp. + The recognized date formats are ISO8601, UNIX (the milliseconds EPOCH format), and RFC3164. + + **Note:** If your logs don’t contain any of the default attributes + and you haven’t defined your own date attribute, Datadog timestamps + the logs with the date it received them. + + If multiple log date remapper processors can be applied to a given log, + only the first one (according to the pipelines order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + description: Array of source attributes. + example: ["web", "gateway"] + items: + description: Attribute used as a source to define the log associated date. + type: string + type: array + type: + $ref: "#/components/schemas/LogsDateRemapperType" + required: + - sources + - type + type: object + LogsDateRemapperType: + default: date-remapper + description: Type of logs date remapper. + enum: + - date-remapper + example: date-remapper + type: string + x-enum-varnames: + - DATE_REMAPPER + LogsDecoderProcessor: + description: |- + The decoder processor decodes any source attribute containing a + base64/base16-encoded UTF-8/ASCII string back to its original value, storing the + result in a target attribute. + properties: + binary_to_text_encoding: + $ref: "#/components/schemas/LogsDecoderProcessorBinaryToTextEncoding" + input_representation: + $ref: "#/components/schemas/LogsDecoderProcessorInputRepresentation" + is_enabled: + default: false + description: Whether the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + source: + description: Name of the log attribute with the encoded data. + example: encoded.field + type: string + target: + description: Name of the log attribute that contains the decoded data. + example: decoded.field + type: string + type: + $ref: "#/components/schemas/LogsDecoderProcessorType" + required: + - source + - target + - binary_to_text_encoding + - input_representation + - type + type: object + LogsDecoderProcessorBinaryToTextEncoding: + description: The encoding used to represent the binary data. + enum: + - base64 + - base16 + example: base64 + type: string + x-enum-varnames: + - BASE64 + - BASE16 + LogsDecoderProcessorInputRepresentation: + description: The original representation of input string. + enum: + - utf_8 + - integer + example: utf_8 + type: string + x-enum-varnames: + - UTF_8 + - INTEGER + LogsDecoderProcessorType: + default: decoder-processor + description: Type of logs decoder processor. + enum: + - decoder-processor + example: decoder-processor + type: string + x-enum-varnames: + - DECODER_PROCESSOR + LogsExcludeAttributeProcessor: + description: |- + Use this processor to remove an attribute from a log during processing. + The processor strips the specified attribute from the log event, which is useful + when the attribute contains sensitive data or is no longer needed downstream. + properties: + attribute_to_exclude: + description: Name of the log attribute to remove from the log event. + example: foo + type: string + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + type: + $ref: "#/components/schemas/LogsExcludeAttributeProcessorType" + required: + - type + - attribute_to_exclude + type: object + LogsExcludeAttributeProcessorType: + default: exclude-attribute + description: Type of logs exclude attribute processor. + enum: + - exclude-attribute + example: exclude-attribute + type: string + x-enum-varnames: + - EXCLUDE_ATTRIBUTE + LogsExclusion: + description: Represents the index exclusion filter object from configuration API. + properties: + filter: + $ref: "#/components/schemas/LogsExclusionFilter" + is_enabled: + description: Whether or not the exclusion filter is active. + type: boolean + name: + description: Name of the index exclusion filter. + example: payment + type: string + required: + - name + type: object + LogsExclusionFilter: + description: Exclusion filter is defined by a query, a sampling rule, and a active/inactive toggle. + properties: + query: + description: |- + Default query is `*`, meaning all logs flowing in the index would be excluded. + Scope down exclusion filter to only a subset of logs with a log query. + example: "*" + type: string + sample_attribute: + description: |- + Sample attribute to use for the sampling of logs going through this exclusion filter. + When set, only the logs with the specified attribute are sampled. + example: "@ci.job_id" + type: string + sample_rate: + description: |- + Sample rate to apply to logs going through this exclusion filter, + a value of 1.0 excludes all logs matching the query. + example: 1.0 + format: double + type: number + required: + - sample_rate + type: object + LogsFilter: + description: Filter for logs. + properties: + query: + description: The filter query. + example: source:python + type: string + type: object + LogsGeoIPParser: + description: |- + The GeoIP parser takes an IP address attribute and extracts if available + the Continent, Country, Subdivision, and City information in the target attribute path. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: ["network.client.ip"] + description: Array of source attributes. + example: ["network.client.ip"] + items: + description: Attribute to geo-localize the IP from. + type: string + type: array + target: + default: network.client.geoip + description: Name of the parent attribute that contains all the extracted details from the `sources`. + example: network.client.geoip + type: string + type: + $ref: "#/components/schemas/LogsGeoIPParserType" + required: + - sources + - target + - type + type: object + LogsGeoIPParserType: + default: geo-ip-parser + description: Type of GeoIP parser. + enum: + - geo-ip-parser + example: geo-ip-parser + type: string + x-enum-varnames: + - GEO_IP_PARSER + LogsGrokParser: + description: |- + Create custom grok rules to parse the full message or [a specific attribute of your raw event](https://docs.datadoghq.com/logs/log_configuration/parsing/#advanced-settings). + For more information, see the [parsing section](https://docs.datadoghq.com/logs/log_configuration/parsing). + properties: + grok: + $ref: "#/components/schemas/LogsGrokParserRules" + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + samples: + description: List of sample logs to test this grok parser. + items: + description: A log sample that is used to test the grok parser. + maxLength: 5000 + type: string + maxItems: 5 + type: array + source: + default: message + description: Name of the log attribute to parse. + example: message + type: string + type: + $ref: "#/components/schemas/LogsGrokParserType" + required: + - source + - grok + - type + type: object + LogsGrokParserRules: + description: Set of rules for the grok parser. + properties: + match_rules: + description: List of match rules for the grok parser, separated by a new line. + example: |- + rule_name_1 foo + rule_name_2 bar + type: string + support_rules: + default: "" + description: List of support rules for the grok parser, separated by a new line. + example: |- + rule_name_1 foo + rule_name_2 bar + type: string + required: + - match_rules + type: object + LogsGrokParserType: + default: grok-parser + description: Type of logs grok parser. + enum: + - grok-parser + example: grok-parser + type: string + x-enum-varnames: + - GROK_PARSER + LogsIndex: + description: Object describing a Datadog Log index. + properties: + daily_limit: + description: The number of log events you can send in this index per day before you are rate-limited. + example: 300000000 + format: int64 + type: integer + daily_limit_reset: + $ref: "#/components/schemas/LogsDailyLimitReset" + daily_limit_warning_threshold_percentage: + description: A percentage threshold of the daily quota at which a Datadog warning event is generated. + example: 70 + format: double + maximum: 99.99 + minimum: 50 + type: number + exclusion_filters: + description: |- + An array of exclusion objects. The logs are tested against the query of each filter, + following the order of the array. Only the first matching active exclusion matters, + others (if any) are ignored. + items: + $ref: "#/components/schemas/LogsExclusion" + type: array + filter: + $ref: "#/components/schemas/LogsFilter" + is_rate_limited: + description: |- + A boolean stating if the index is rate limited, meaning more logs than the daily limit have been sent. + Rate limit is reset every-day at 2pm UTC. + example: false + readOnly: true + type: boolean + name: + description: The name of the index. + example: "main" + type: string + num_flex_logs_retention_days: + description: |- + The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. + If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through `num_retention_days`, + and then stored in Flex Tier until the number of days specified in `num_flex_logs_retention_days` is reached. + The available values depend on retention plans specified in your organization's contract/subscriptions. + example: 360 + format: int64 + type: integer + num_retention_days: + description: |- + The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. + The available values depend on retention plans specified in your organization's contract/subscriptions. + example: 15 + format: int64 + type: integer + tags: + description: A list of tags associated with the index. Tags must be in `key:value` format. + example: ["team:backend", "env:production"] + items: + description: A single tag using the format `key:value`. + type: string + type: array + required: + - name + - filter + type: object + LogsIndexListResponse: + description: Object with all Index configurations for a given organization. + properties: + indexes: + description: Array of Log index configurations. + items: + $ref: "#/components/schemas/LogsIndex" + type: array + type: object + LogsIndexUpdateRequest: + description: Object for updating a Datadog Log index. + properties: + daily_limit: + description: The number of log events you can send in this index per day before you are rate-limited. + example: 300000000 + format: int64 + type: integer + daily_limit_reset: + $ref: "#/components/schemas/LogsDailyLimitReset" + daily_limit_warning_threshold_percentage: + description: A percentage threshold of the daily quota at which a Datadog warning event is generated. + example: 70 + format: double + maximum: 99.99 + minimum: 50 + type: number + disable_daily_limit: + description: |- + If true, sets the `daily_limit` value to null and the index is not limited on a daily basis (any + specified `daily_limit` value in the request is ignored). If false or omitted, the index's current + `daily_limit` is maintained. + example: false + type: boolean + exclusion_filters: + description: |- + An array of exclusion objects. The logs are tested against the query of each filter, + following the order of the array. Only the first matching active exclusion matters, + others (if any) are ignored. + items: + $ref: "#/components/schemas/LogsExclusion" + type: array + filter: + $ref: "#/components/schemas/LogsFilter" + num_flex_logs_retention_days: + description: |- + The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. + If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through `num_retention_days`, + and then stored in Flex Tier until the number of days specified in `num_flex_logs_retention_days` is reached. + The available values depend on retention plans specified in your organization's contract/subscriptions. + + **Note**: Changing this value affects all logs already in this index. It may also affect billing. + example: 360 + format: int64 + type: integer + num_retention_days: + description: |- + The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. + The available values depend on retention plans specified in your organization's contract/subscriptions. + + **Note**: Changing this value affects all logs already in this index. It may also affect billing. + example: 15 + format: int64 + type: integer + tags: + description: A list of tags associated with the index. Tags must be in `key:value` format. + example: ["team:backend", "env:production"] + items: + description: A single tag using the format `key:value`. + type: string + type: array + required: + - filter + type: object + LogsIndexesOrder: + description: Object containing the ordered list of log index names. + properties: + index_names: + description: |- + Array of strings identifying by their name(s) the index(es) of your organization. + Logs are tested against the query filter of each index one by one, following the order of the array. + Logs are eventually stored in the first matching index. + example: ["main", "payments", "web"] + items: + description: An index name. + type: string + type: array + required: + - index_names + type: object + LogsListRequest: + description: Object to send with the request to retrieve a list of logs from your Organization. + properties: + index: + description: |- + The log index on which the request is performed. For multi-index organizations, + the default is all live indexes. Historical indexes of rehydrated logs must be specified. + example: "retention-3,retention-15" + type: string + limit: + description: Number of logs return in the response. + format: int32 + maximum: 1000 + type: integer + query: + description: The search query - following the log search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + sort: + $ref: "#/components/schemas/LogsSort" + startAt: + description: |- + Hash identifier of the first log to return in the list, available in a log `id` attribute. + This parameter is used for the pagination feature. + + **Note**: This parameter is ignored if the corresponding log + is out of the scope of the specified time window. + type: string + time: + $ref: "#/components/schemas/LogsListRequestTime" + required: + - time + type: object + LogsListRequestTime: + description: Timeframe to retrieve the log from. + properties: + from: + description: Minimum timestamp for requested logs. + example: "2020-02-02T02:02:02.202Z" + format: date-time + type: string + timezone: + description: |- + Timezone can be specified both as an offset (for example "UTC+03:00") + or a regional zone (for example "Europe/Paris"). + type: string + to: + description: Maximum timestamp for requested logs. + example: "2020-02-20T02:02:02.202Z" + format: date-time + type: string + required: + - from + - to + type: object + LogsListResponse: + description: Response object with all logs matching the request and pagination information. + properties: + logs: + description: Array of logs matching the request and the `nextLogId` if sent. + items: + $ref: "#/components/schemas/Log" + type: array + nextLogId: + description: |- + Hash identifier of the next log to return in the list. + This parameter is used for the pagination feature. + nullable: true + type: string + status: + description: Status of the response. + type: string + type: object + LogsLookupProcessor: + description: |- + Use the Lookup Processor to define a mapping between a log attribute + and a human readable value saved in the processors mapping table. + For example, you can use the Lookup Processor to map an internal service ID + into a human readable service name. Alternatively, you could also use it to check + if the MAC address that just attempted to connect to the production + environment belongs to your list of stolen machines. + properties: + default_lookup: + description: Value to set the target attribute if the source value is not found in the list. + type: string + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + lookup_table: + description: |- + Mapping table of values for the source attribute and their associated target attribute values, + formatted as `["source_key1,target_value1", "source_key2,target_value2"]` + example: ["source_key1,target_value1", "source_key2,target_value2"] + items: + description: Mapping between a source and a value, it should follow the format `","`. + type: string + type: array + name: + description: Name of the processor. + type: string + source: + description: Source attribute used to perform the lookup. + example: service_id + type: string + target: + description: |- + Name of the attribute that contains the corresponding value in the mapping list + or the `default_lookup` if not found in the mapping list. + example: service + type: string + type: + $ref: "#/components/schemas/LogsLookupProcessorType" + required: + - source + - target + - lookup_table + - type + type: object + LogsLookupProcessorType: + default: lookup-processor + description: Type of logs lookup processor. + enum: + - lookup-processor + example: lookup-processor + type: string + x-enum-varnames: + - LOOKUP_PROCESSOR + LogsMessageRemapper: + description: |- + The message is a key attribute in Datadog. + It is displayed in the message column of the Log Explorer and you can do full string search on it. + Use this Processor to define one or more attributes as the official log message. + + **Note:** If multiple log message remapper processors can be applied to a given log, + only the first one (according to the pipeline order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: ["msg"] + description: Array of source attributes. + example: ["msg"] + items: + description: Attribute used as a source to define the log associated message. + type: string + type: array + type: + $ref: "#/components/schemas/LogsMessageRemapperType" + required: + - sources + - type + type: object + LogsMessageRemapperType: + default: message-remapper + description: Type of logs message remapper. + enum: + - message-remapper + example: message-remapper + type: string + x-enum-varnames: + - MESSAGE_REMAPPER + LogsPipeline: + description: |- + Pipelines and processors operate on incoming logs, + parsing and transforming them into structured attributes for easier querying. + + **Note**: These endpoints are only available for admin users. + Make sure to use an application key created by an admin. + properties: + description: + description: A description of the pipeline. + type: string + filter: + $ref: "#/components/schemas/LogsFilter" + id: + description: ID of the pipeline. + readOnly: true + type: string + is_enabled: + description: Whether or not the pipeline is enabled. + type: boolean + is_read_only: + description: Whether or not the pipeline can be edited. + readOnly: true + type: boolean + name: + description: Name of the pipeline. + example: "" + type: string + processors: + description: Ordered list of processors in this pipeline. + items: + $ref: "#/components/schemas/LogsProcessor" + type: array + tags: + description: A list of tags associated with the pipeline. + items: + description: A single tag using the format `key:value`. + type: string + type: array + type: + description: Type of pipeline. + example: pipeline + readOnly: true + type: string + required: + - name + type: object + LogsPipelineList: + description: Array of all log pipeline objects configured for the organization. + items: + $ref: "#/components/schemas/LogsPipeline" + type: array + LogsPipelineProcessor: + description: |- + Nested Pipelines are pipelines within a pipeline. Use Nested Pipelines to split the processing into two steps. + For example, first use a high-level filtering such as team and then a second level of filtering based on the + integration, service, or any other tag or attribute. + + A pipeline can contain Nested Pipelines and Processors whereas a Nested Pipeline can only contain Processors. + properties: + description: + description: A description of the pipeline. + type: string + filter: + $ref: "#/components/schemas/LogsFilter" + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + processors: + description: Ordered list of processors in this pipeline. + items: + $ref: "#/components/schemas/LogsProcessor" + type: array + tags: + description: A list of tags associated with the pipeline. + items: + description: A single tag using the format `key:value`. + type: string + type: array + type: + $ref: "#/components/schemas/LogsPipelineProcessorType" + required: + - type + type: object + LogsPipelineProcessorType: + default: pipeline + description: Type of logs pipeline processor. + enum: + - pipeline + example: pipeline + type: string + x-enum-varnames: + - PIPELINE + LogsPipelinesOrder: + description: Object containing the ordered list of pipeline IDs. + properties: + pipeline_ids: + description: |- + Ordered Array of `` strings, the order of pipeline IDs in the array + define the overall Pipelines order for Datadog. + example: ["tags", "org_ids", "products"] + items: + description: A given pipeline ID. + type: string + type: array + required: + - pipeline_ids + type: object + LogsProcessor: + description: Definition of a logs processor. + oneOf: + - $ref: "#/components/schemas/LogsGrokParser" + - $ref: "#/components/schemas/LogsDateRemapper" + - $ref: "#/components/schemas/LogsStatusRemapper" + - $ref: "#/components/schemas/LogsServiceRemapper" + - $ref: "#/components/schemas/LogsMessageRemapper" + - $ref: "#/components/schemas/LogsAttributeRemapper" + - $ref: "#/components/schemas/LogsURLParser" + - $ref: "#/components/schemas/LogsUserAgentParser" + - $ref: "#/components/schemas/LogsCategoryProcessor" + - $ref: "#/components/schemas/LogsArithmeticProcessor" + - $ref: "#/components/schemas/LogsStringBuilderProcessor" + - $ref: "#/components/schemas/LogsPipelineProcessor" + - $ref: "#/components/schemas/LogsGeoIPParser" + - $ref: "#/components/schemas/LogsLookupProcessor" + - $ref: "#/components/schemas/ReferenceTableLogsLookupProcessor" + - $ref: "#/components/schemas/LogsTraceRemapper" + - $ref: "#/components/schemas/LogsSpanRemapper" + - $ref: "#/components/schemas/LogsArrayProcessor" + - $ref: "#/components/schemas/LogsDecoderProcessor" + - $ref: "#/components/schemas/LogsSchemaProcessor" + - $ref: "#/components/schemas/LogsExcludeAttributeProcessor" + - $ref: "#/components/schemas/LogsArrayMapProcessor" + LogsQueryCompute: + description: Define computation for a log query. + properties: + aggregation: + description: The aggregation method. + example: avg + type: string + facet: + description: Facet name. + example: "@duration" + type: string + interval: + description: Define a time interval in seconds. + example: 5000 + format: int64 + type: integer + required: + - aggregation + type: object + LogsRetentionAggSumUsage: + description: Object containing indexed logs usage aggregated across organizations and months for a retention period. + properties: + logs_indexed_logs_usage_agg_sum: + description: Total indexed logs for this retention period. + format: int64 + type: integer + logs_live_indexed_logs_usage_agg_sum: + description: Live indexed logs for this retention period. + format: int64 + type: integer + logs_rehydrated_indexed_logs_usage_agg_sum: + description: Rehydrated indexed logs for this retention period. + format: int64 + type: integer + retention: + description: The retention period in days or "custom" for all custom retention periods. + type: string + type: object + LogsRetentionSumUsage: + description: Object containing indexed logs usage grouped by retention period and summed. + properties: + logs_indexed_logs_usage_sum: + description: Total indexed logs for this retention period. + format: int64 + type: integer + logs_live_indexed_logs_usage_sum: + description: Live indexed logs for this retention period. + format: int64 + type: integer + logs_rehydrated_indexed_logs_usage_sum: + description: Rehydrated indexed logs for this retention period. + format: int64 + type: integer + retention: + description: The retention period in days or "custom" for all custom retention periods. + type: string + type: object + LogsSchemaCategoryMapper: + description: |- + Use the Schema Category Mapper to categorize log event into enum fields. + In the case of OCSF, they can be used to map sibling fields which are composed of an ID and a name. + + **Notes**: + + - The syntax of the query is the one of Logs Explorer search bar. + The query can be done on any log attribute or tag, whether it is a facet or not. + Wildcards can also be used inside your query. + - Categories are executed in order and processing stops at the first match. + Make sure categories are properly ordered in case a log could match multiple queries. + - Sibling fields always have a numerical ID field and a human-readable string name. + - A fallback section handles cases where the name or ID value matches a specific value. + If the name matches "Other" or the ID matches 99, the value of the sibling name field will be pulled from a source field from the original log. + properties: + categories: + description: |- + Array of filters to match or not a log and their + corresponding `name` to assign a custom value to the log. + example: + - filter: + query: "@eventName:(ConsoleLogin OR ExternalIdPDirectoryLogin OR UserAuthentication OR Authenticate)" + id: 1 + name: "Logon" + - filter: + query: "@eventName:*" + id: 99 + name: "Other" + items: + $ref: "#/components/schemas/LogsSchemaCategoryMapperCategory" + type: array + fallback: + $ref: "#/components/schemas/LogsSchemaCategoryMapperFallback" + name: + description: Name of the logs schema category mapper. + example: "activity_id and activity_name" + type: string + targets: + $ref: "#/components/schemas/LogsSchemaCategoryMapperTargets" + type: + $ref: "#/components/schemas/LogsSchemaCategoryMapperType" + required: + - categories + - targets + - type + - name + type: object + LogsSchemaCategoryMapperCategory: + description: Object describing the logs filter with corresponding category ID and name assignment. + properties: + filter: + $ref: "#/components/schemas/LogsFilter" + id: + description: ID to inject into the category. + example: 1 + format: int64 + type: integer + name: + description: Value to assign to target schema field. + example: "Password Change" + type: string + required: + - filter + - id + - name + type: object + LogsSchemaCategoryMapperFallback: + description: Used to override hardcoded category values with a value pulled from a source attribute on the log. + properties: + sources: + additionalProperties: + items: + description: A fallback source attribute name. + type: string + type: array + description: Fallback sources used to populate value of field. + example: {} + type: object + values: + additionalProperties: + type: string + description: Values that define when the fallback is used. + example: {} + type: object + type: object + LogsSchemaCategoryMapperTargets: + description: Name of the target attributes which value is defined by the matching category. + properties: + id: + description: ID of the field to map log attributes to. + example: ocsf.activity_id + type: string + name: + description: Name of the field to map log attributes to. + example: ocsf.activity_name + type: string + type: object + LogsSchemaCategoryMapperType: + description: Type of logs schema category mapper. + enum: + - schema-category-mapper + example: schema-category-mapper + type: string + x-enum-varnames: + - SCHEMA_CATEGORY_MAPPER + LogsSchemaData: + description: Configuration of the schema data to use. + properties: + class_name: + description: Class name of the schema to use. + example: Account Change + type: string + class_uid: + description: Class UID of the schema to use. + example: 3001 + format: int64 + type: integer + profiles: + description: Optional list of profiles to modify the schema. + example: ["security_control", "host"] + items: + description: A profile name that modifies the schema behavior. + type: string + type: array + schema_type: + description: Type of schema to use. + example: ocsf + type: string + version: + description: Version of the schema to use. + example: 1.5.0 + type: string + required: + - schema_type + - version + - class_uid + - class_name + type: object + LogsSchemaMapper: + description: Configuration of the schema processor mapper to use. + oneOf: + - $ref: "#/components/schemas/LogsSchemaRemapper" + - $ref: "#/components/schemas/LogsSchemaCategoryMapper" + LogsSchemaProcessor: + description: |- + A processor that has additional validations and checks for a given schema. Currently supported schema types include OCSF. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + mappers: + description: The `LogsSchemaProcessor` `mappers`. + example: + - name: Map userIdentity to ocsf.user.uid + sources: + - userIdentity.principalId + target: ocsf.user.uid + type: schema-remapper + items: + $ref: "#/components/schemas/LogsSchemaMapper" + type: array + name: + description: Name of the processor. + example: "Map additionalEventData.LoginTo to ocsf.dst_endpoint.svc_name" + type: string + schema: + $ref: "#/components/schemas/LogsSchemaData" + type: + $ref: "#/components/schemas/LogsSchemaProcessorType" + required: + - name + - mappers + - type + - schema + type: object + LogsSchemaProcessorType: + default: schema-processor + description: Type of logs schema processor. + enum: + - schema-processor + example: schema-processor + type: string + x-enum-varnames: + - SCHEMA_PROCESSOR + LogsSchemaRemapper: + description: The schema remapper maps source log fields to their correct fields. + properties: + name: + description: Name of the logs schema remapper. + example: "Map userIdentity.principalId, responseElements.role.roleId, responseElements.user.userId to ocsf.user.uid" + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + sources: + description: Array of source attributes. + example: ["userIdentity.principalId", "responseElements.role.roleId", "responseElements.user.userId"] + items: + description: Attribute used as a source to remap its value to the target attribute. + type: string + type: array + target: + description: Target field to map log source field to. + example: ocsf.user.uid + type: string + target_format: + $ref: "#/components/schemas/TargetFormatType" + type: + $ref: "#/components/schemas/LogsSchemaRemapperType" + required: + - name + - sources + - target + - type + type: object + LogsSchemaRemapperType: + description: Type of logs schema remapper. + enum: + - schema-remapper + example: schema-remapper + type: string + x-enum-varnames: + - SCHEMA_REMAPPER + LogsServiceRemapper: + description: |- + Use this processor if you want to assign one or more attributes as the official service. + + **Note:** If multiple service remapper processors can be applied to a given log, + only the first one (according to the pipeline order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + description: Array of source attributes. + example: ["web", "gateway"] + items: + description: Attribute used as a source to define the log associated service. + type: string + type: array + type: + $ref: "#/components/schemas/LogsServiceRemapperType" + required: + - sources + - type + type: object + LogsServiceRemapperType: + default: service-remapper + description: Type of logs service remapper. + enum: + - service-remapper + example: service-remapper + type: string + x-enum-varnames: + - SERVICE_REMAPPER + LogsSort: + description: Time-ascending `asc` or time-descending `desc` results. + enum: + - asc + - desc + type: string + x-enum-varnames: + - TIME_ASCENDING + - TIME_DESCENDING + LogsSpanRemapper: + description: |- + There are two ways to define correlation between application spans and logs: + + 1. Follow the documentation on [how to inject a span ID in the application logs](https://docs.datadoghq.com/tracing/connect_logs_and_traces). + Log integrations automatically handle all remaining setup steps by default. + + 2. Use the span remapper processor to define a log attribute as its associated span ID. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: ["dd.span_id"] + description: Array of source attributes. + items: + description: Attribute to extract the span ID from. + type: string + type: array + type: + $ref: "#/components/schemas/LogsSpanRemapperType" + required: + - type + type: object + LogsSpanRemapperType: + default: span-id-remapper + description: Type of logs span remapper. + enum: + - span-id-remapper + example: span-id-remapper + type: string + x-enum-varnames: + - SPAN_ID_REMAPPER + LogsStatusRemapper: + description: |- + Use this Processor if you want to assign some attributes as the official status. + + Each incoming status value is mapped as follows. + + - Integers from 0 to 7 map to the Syslog severity standards + - Strings beginning with `emerg` or f (case-insensitive) map to `emerg` (0) + - Strings beginning with `a` (case-insensitive) map to `alert` (1) + - Strings beginning with `c` (case-insensitive) map to `critical` (2) + - Strings beginning with `err` (case-insensitive) map to `error` (3) + - Strings beginning with `w` (case-insensitive) map to `warning` (4) + - Strings beginning with `n` (case-insensitive) map to `notice` (5) + - Strings beginning with `i` (case-insensitive) map to `info` (6) + - Strings beginning with `d`, `trace` or `verbose` (case-insensitive) map to `debug` (7) + - Strings beginning with `o` or matching `OK` or `Success` (case-insensitive) map to OK + - All others map to `info` (6) + + **Note:** If multiple log status remapper processors can be applied to a given log, + only the first one (according to the pipelines order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + description: Array of source attributes. + example: [] + items: + description: Attribute used as a source to define the log associated status. + type: string + type: array + type: + $ref: "#/components/schemas/LogsStatusRemapperType" + required: + - sources + - type + type: object + LogsStatusRemapperType: + default: status-remapper + description: Type of logs status remapper. + enum: + - status-remapper + example: status-remapper + type: string + x-enum-varnames: + - STATUS_REMAPPER + LogsStringBuilderProcessor: + description: |- + Use the string builder processor to add a new attribute (without spaces or special characters) + to a log with the result of the provided template. + This enables aggregation of different attributes or raw strings into a single attribute. + + The template is defined by both raw text and blocks with the syntax `%{attribute_path}`. + + **Notes**: + + - The processor only accepts attributes with values or an array of values in the blocks. + - If an attribute cannot be used (object or array of object), + it is replaced by an empty string or the entire operation is skipped depending on your selection. + - If the target attribute already exists, it is overwritten by the result of the template. + - Results of the template cannot exceed 256 characters. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + is_replace_missing: + default: false + description: |- + If true, it replaces all missing attributes of `template` by an empty string. + If `false` (default), skips the operation for missing attributes. + type: boolean + name: + description: Name of the processor. + type: string + target: + description: The name of the attribute that contains the result of the template. + example: "" + type: string + template: + description: A formula with one or more attributes and raw text. + example: "" + type: string + type: + $ref: "#/components/schemas/LogsStringBuilderProcessorType" + required: + - target + - template + - type + type: object + LogsStringBuilderProcessorType: + default: string-builder-processor + description: Type of logs string builder processor. + enum: + - string-builder-processor + example: string-builder-processor + type: string + x-enum-varnames: + - STRING_BUILDER_PROCESSOR + LogsTraceRemapper: + description: |- + There are two ways to improve correlation between application traces and logs. + + 1. Follow the documentation on [how to inject a trace ID in the application logs](https://docs.datadoghq.com/tracing/connect_logs_and_traces) + and by default log integrations take care of all the rest of the setup. + + 2. Use the Trace remapper processor to define a log attribute as its associated trace ID. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: ["dd.trace_id"] + description: Array of source attributes. + items: + description: Attribute to extract the trace ID from. + type: string + type: array + type: + $ref: "#/components/schemas/LogsTraceRemapperType" + required: + - type + type: object + LogsTraceRemapperType: + default: trace-id-remapper + description: Type of logs trace remapper. + enum: + - trace-id-remapper + example: trace-id-remapper + type: string + x-enum-varnames: + - TRACE_ID_REMAPPER + LogsURLParser: + description: This processor extracts query parameters and other important parameters from a URL. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + normalize_ending_slashes: + default: false + description: Normalize the ending slashes or not. + nullable: true + type: boolean + sources: + default: ["http.url"] + description: Array of source attributes. + example: ["http.url"] + items: + description: Attribute to extract the URL from. + type: string + type: array + target: + default: "http.url_details" + description: Name of the parent attribute that contains all the extracted details from the `sources`. + example: "http.url_details" + type: string + type: + $ref: "#/components/schemas/LogsURLParserType" + required: + - sources + - target + - type + type: object + LogsURLParserType: + default: url-parser + description: Type of logs URL parser. + enum: + - url-parser + example: url-parser + type: string + x-enum-varnames: + - URL_PARSER + LogsUserAgentParser: + description: |- + The User-Agent parser takes a User-Agent attribute and extracts the OS, browser, device, and other user data. + It recognizes major bots like the Google Bot, Yahoo Slurp, and Bing. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + is_encoded: + default: false + description: Define if the source attribute is URL encoded or not. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: ["http.useragent"] + description: Array of source attributes. + example: ["http.useragent"] + items: + description: Attribute to extract the User-Agent from. + type: string + type: array + target: + default: http.useragent_details + description: Name of the parent attribute that contains all the extracted details from the `sources`. + example: http.useragent_details + type: string + type: + $ref: "#/components/schemas/LogsUserAgentParserType" + required: + - sources + - target + - type + type: object + LogsUserAgentParserType: + default: user-agent-parser + description: Type of logs User-Agent parser. + enum: + - user-agent-parser + example: user-agent-parser + type: string + x-enum-varnames: + - USER_AGENT_PARSER + MatchingDowntime: + description: Object describing a downtime that matches this monitor. + properties: + end: + description: POSIX timestamp to end the downtime. + example: 1412792983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1625 + format: int64 + readOnly: true + type: integer + scope: + description: |- + The scope(s) to which the downtime applies. Must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: ["env:staging"] + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: POSIX timestamp to start the downtime. + example: 1412792983 + format: int64 + type: integer + required: + - id + type: object + MetricContentEncoding: + default: deflate + description: HTTP header used to compress the media-type. + enum: + - deflate + - gzip + example: deflate + type: string + x-enum-varnames: + - DEFLATE + - GZIP + MetricMetadata: + description: Object with all metric related metadata. + properties: + description: + description: Metric description. + type: string + integration: + description: Name of the integration that sent the metric if applicable. + readOnly: true + type: string + per_unit: + description: Per unit of the metric such as `second` in `bytes per second`. + example: second + type: string + short_name: + description: A more human-readable and abbreviated version of the metric name. + type: string + statsd_interval: + description: StatsD flush interval of the metric in seconds if applicable. + format: int64 + type: integer + type: + description: Metric type such as `gauge` or `rate`. + example: count + type: string + unit: + description: Primary unit of the metric such as `byte` or `operation`. + example: byte + type: string + type: object + MetricSearchResponse: + description: Object containing the list of metrics matching the search query. + properties: + results: + $ref: "#/components/schemas/MetricSearchResponseResults" + type: object + MetricSearchResponseResults: + description: Search result. + properties: + metrics: + description: List of metrics that match the search query. + items: + description: Metric name. + type: string + type: array + type: object + MetricsListResponse: + description: Object listing all metric names stored by Datadog since a given time. + example: + from: "1571011200" + metrics: + - system.cpu.idle + - system.mem.free + - aws.ec2.cpuutilization + properties: + from: + description: Time when the metrics were active, seconds since the Unix epoch. + type: string + metrics: + description: List of metric names. + items: + description: A metric name. + type: string + type: array + type: object + MetricsPayload: + description: The metrics' payload. + properties: + series: + description: A list of timeseries to submit to Datadog. + example: + - metric: "system.load.1" + points: + - [1475317847.0, 0.7] + items: + $ref: "#/components/schemas/Series" + type: array + required: + - series + type: object + MetricsQueryMetadata: + description: Object containing all metric names returned and their associated metadata. + properties: + aggr: + description: Aggregation type. + example: "avg" + nullable: true + readOnly: true + type: string + display_name: + description: Display name of the metric. + example: system.cpu.idle + readOnly: true + type: string + end: + description: End of the time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + expression: + description: Metric expression. + example: system.cpu.idle{host:foo,env:test} + readOnly: true + type: string + interval: + description: Number of milliseconds between data samples. + format: int64 + readOnly: true + type: integer + length: + description: Number of data samples. + format: int64 + readOnly: true + type: integer + metric: + description: Metric name. + example: system.cpu.idle + readOnly: true + type: string + pointlist: + description: List of points of the timeseries in milliseconds. + example: + - [1681683300000.0, 77.62145685254418] + items: + $ref: "#/components/schemas/Point" + readOnly: true + type: array + query_index: + description: The index of the series' query within the request. + format: int64 + readOnly: true + type: integer + scope: + description: Metric scope, comma separated list of tags. + example: host:foo,env:test + readOnly: true + type: string + start: + description: Start of the time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + tag_set: + description: Unique tags identifying this series. + items: + description: Unique tags identifying this series. + type: string + readOnly: true + type: array + unit: + description: |- + Detailed information about the metric unit. + The first element describes the "primary unit" (for example, `bytes` in `bytes per second`). + The second element describes the "per unit" (for example, `second` in `bytes per second`). + If the second element is not present, the API returns null. + items: + $ref: "#/components/schemas/MetricsQueryUnit" + maxItems: 2 + minItems: 2 + readOnly: true + type: array + type: object + MetricsQueryResponse: + description: Response Object that includes your query and the list of metrics retrieved. + properties: + error: + description: Message indicating the errors if status is not `ok`. + readOnly: true + type: string + from_date: + description: Start of requested time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + group_by: + description: List of tag keys on which to group. + items: + description: Tag key to group by your metric. + type: string + readOnly: true + type: array + message: + description: Message indicating `success` if status is `ok`. + readOnly: true + type: string + query: + description: Query string + readOnly: true + type: string + res_type: + description: Type of response. + example: time_series + readOnly: true + type: string + series: + description: List of timeseries queried. + items: + $ref: "#/components/schemas/MetricsQueryMetadata" + readOnly: true + type: array + status: + description: Status of the query. + example: ok + readOnly: true + type: string + to_date: + description: End of requested time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + type: object + MetricsQueryUnit: + description: Object containing the metric unit family, scale factor, name, and short name. + nullable: true + properties: + family: + description: Unit family, allows for conversion between units of the same family, for scaling. + example: time + readOnly: true + type: string + name: + description: Unit name + example: minute + readOnly: true + type: string + plural: + description: Plural form of the unit name. + example: minutes + readOnly: true + type: string + scale_factor: + description: Factor for scaling between units of the same family. + example: 60.0 + format: double + readOnly: true + type: number + short_name: + description: Abbreviation of the unit. + example: min + readOnly: true + type: string + type: object + Monitor: + description: Object describing a monitor. + properties: + assets: + description: The list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks). + items: + $ref: "#/components/schemas/MonitorAsset" + type: array + created: + description: Timestamp of the monitor creation. + format: date-time + readOnly: true + type: string + creator: + $ref: "#/components/schemas/Creator" + deleted: + description: Whether or not the monitor is deleted. (Always `null`) + format: date-time + nullable: true + readOnly: true + type: string + draft_status: + $ref: "#/components/schemas/MonitorDraftStatus" + id: + description: ID of this monitor. + format: int64 + readOnly: true + type: integer + matching_downtimes: + description: A list of active v1 downtimes that match this monitor. + items: + $ref: "#/components/schemas/MatchingDowntime" + type: array + message: + description: A message to include with notifications for this monitor. + type: string + modified: + description: Last timestamp when the monitor was edited. + format: date-time + readOnly: true + type: string + multi: + description: Whether or not the monitor is broken down on different groups. + readOnly: true + type: boolean + name: + description: The monitor name. + example: "My monitor" + type: string + options: + $ref: "#/components/schemas/MonitorOptions" + overall_state: + $ref: "#/components/schemas/MonitorOverallStates" + priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int64 + nullable: true + type: integer + query: + description: The monitor query. + example: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + type: string + restricted_roles: + description: A list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles. + items: + description: A role UUID. + type: string + nullable: true + type: array + state: + $ref: "#/components/schemas/MonitorState" + tags: + description: Tags associated to your monitor. + items: + description: A Datadog tag. + type: string + type: array + type: + $ref: "#/components/schemas/MonitorType" + required: + - type + - query + type: object + MonitorAsset: + description: |- + Represents key links tied to a monitor to help users take action on alerts. + This feature is in Preview and only available to users with the feature enabled. + properties: + category: + $ref: "#/components/schemas/MonitorAssetCategory" + name: + description: Name for the monitor asset + example: "Monitor Runbook" + type: string + resource_key: + description: Represents the identifier of the internal Datadog resource that this asset represents. IDs in this field should be passed in as strings. + example: "12345" + type: string + resource_type: + $ref: "#/components/schemas/MonitorAssetResourceType" + url: + description: URL link for the asset. For links with an internal resource type set, this should be the relative path to where the Datadog domain is appended internally. For external links, this should be the full URL path. + example: "/notebooks/12345" + type: string + required: + - name + - url + - category + type: object + MonitorAssetCategory: + description: Indicates the type of asset this entity represents on a monitor. + enum: + - runbook + example: runbook + type: string + x-enum-varnames: + - RUNBOOK + MonitorAssetResourceType: + description: Type of internal Datadog resource associated with a monitor asset. + enum: + - notebook + type: string + x-enum-varnames: + - NOTEBOOK + MonitorDeviceID: + description: ID of the device the Synthetics monitor is running on. Same as `SyntheticsDeviceID`. + enum: + - laptop_large + - tablet + - mobile_small + - chrome.laptop_large + - chrome.tablet + - chrome.mobile_small + - firefox.laptop_large + - firefox.tablet + - firefox.mobile_small + type: string + x-enum-varnames: + - LAPTOP_LARGE + - TABLET + - MOBILE_SMALL + - CHROME_LAPTOP_LARGE + - CHROME_TABLET + - CHROME_MOBILE_SMALL + - FIREFOX_LAPTOP_LARGE + - FIREFOX_TABLET + - FIREFOX_MOBILE_SMALL + MonitorDraftStatus: + default: published + description: |- + Indicates whether the monitor is in a draft or published state. + + `draft`: The monitor appears as Draft and does not send notifications. + `published`: The monitor is active and evaluates conditions and notify as configured. + + This field is in preview. The draft value is only available to customers with the feature enabled. + enum: + - draft + - published + type: string + x-enum-varnames: + - DRAFT + - PUBLISHED + MonitorFormulaAndFunctionAggregateAugmentQuery: + description: Augment query for aggregate augmented queries. Can be an events query or a reference table query. + oneOf: + - $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionReferenceTableQueryDefinition" + MonitorFormulaAndFunctionAggregateAugmentedDataSource: + description: Data source for aggregate augmented queries. + enum: + - aggregate_augmented_query + example: "aggregate_augmented_query" + type: string + x-enum-varnames: + - AGGREGATE_AUGMENTED_QUERY + MonitorFormulaAndFunctionAggregateAugmentedQueryDefinition: + additionalProperties: false + description: A formula and functions aggregate augmented query. Used to enrich base query results with data from a reference table. + properties: + augment_query: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateAugmentQuery" + base_query: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateBaseQuery" + compute: + description: Compute options for the query. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute" + minItems: 1 + type: array + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateAugmentedDataSource" + group_by: + description: Group by options for the query. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy" + type: array + join_condition: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateQueryJoinCondition" + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + required: + - data_source + - base_query + - augment_query + - join_condition + - compute + - group_by + type: object + MonitorFormulaAndFunctionAggregateBaseQuery: + description: Base query for aggregate queries. Can be an events query or a metrics query. + oneOf: + - $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionMetricsQueryDefinition" + MonitorFormulaAndFunctionAggregateFilterQuery: + description: Filter query for aggregate filtered queries. Can be an events query or a reference table query. + oneOf: + - $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionReferenceTableQueryDefinition" + MonitorFormulaAndFunctionAggregateFilteredDataSource: + description: Data source for aggregate filtered queries. + enum: + - aggregate_filtered_query + example: "aggregate_filtered_query" + type: string + x-enum-varnames: + - AGGREGATE_FILTERED_QUERY + MonitorFormulaAndFunctionAggregateFilteredQueryDefinition: + additionalProperties: false + description: A formula and functions aggregate filtered query. Used to filter base query results using data from another source. + properties: + base_query: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateBaseQuery" + compute: + description: Compute options for the query. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute" + type: array + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateFilteredDataSource" + filter_query: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateFilterQuery" + filters: + description: Filter conditions for the query. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateQueryFilter" + type: array + group_by: + description: Group by options for the query. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy" + type: array + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + required: + - data_source + - base_query + - filter_query + - filters + type: object + MonitorFormulaAndFunctionAggregateQueryFilter: + additionalProperties: false + description: Filter definition for aggregate filtered queries. + properties: + base_attribute: + description: Attribute from the base query to filter on. + example: "org_id" + type: string + exclude: + default: false + description: Whether to exclude matching records instead of including them. + type: boolean + filter_attribute: + description: Attribute from the filter query to match against. + example: "org_id" + type: string + required: + - base_attribute + - filter_attribute + type: object + MonitorFormulaAndFunctionAggregateQueryJoinCondition: + additionalProperties: false + description: Join condition for aggregate augmented queries. + properties: + augment_attribute: + description: Attribute from the augment query to join on. + example: "org_id" + type: string + base_attribute: + description: Attribute from the base query to join on. + example: "org_id" + type: string + join_type: + $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateQueryJoinType" + required: + - base_attribute + - augment_attribute + - join_type + type: object + MonitorFormulaAndFunctionAggregateQueryJoinType: + description: Join type for aggregate query join conditions. + enum: + - inner + - left + example: "inner" + type: string + x-enum-varnames: + - INNER + - LEFT + MonitorFormulaAndFunctionCostAggregator: + description: Aggregation methods for metric queries. + enum: + - avg + - sum + - max + - min + - last + - area + - l2norm + - percentile + - stddev + example: avg + type: string + x-enum-varnames: + - AVG + - SUM + - MAX + - MIN + - LAST + - AREA + - L2NORM + - PERCENTILE + - STDDEV + MonitorFormulaAndFunctionCostDataSource: + description: Data source for cost queries. + enum: + - metrics + - cloud_cost + - datadog_usage + example: "cloud_cost" + type: string + x-enum-varnames: + - METRICS + - CLOUD_COST + - DATADOG_USAGE + MonitorFormulaAndFunctionCostQueryDefinition: + description: A formula and functions cost query. + properties: + aggregator: + $ref: "#/components/schemas/MonitorFormulaAndFunctionCostAggregator" + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionCostDataSource" + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + query: + description: The monitor query. + example: "sum:all.cost{*}.rollup(sum, 86400)" + type: string + required: + - name + - data_source + - query + type: object + MonitorFormulaAndFunctionDataJobsQueryDefinition: + description: A formula and functions data jobs query. + properties: + job_type: + description: |- + The type of job being monitored. Valid values include: + `databricks.job`, `spark.application`, `airflow.dag`, + `dbt.job`, `dbt.model`, `dbt.test`, `glue.job`. + Custom job types are supported with the `custom.ol.` prefix. + example: "databricks.job" + type: string + jobs_query: + description: Filter expression used to select the jobs to monitor. + example: "job_name:smoke*" + type: string + name: + description: Name of the query for use in formulas. Must be `run_query`. + example: "run_query" + type: string + query_dialect: + description: |- + Query dialect for data jobs queries. Currently only `metric` is supported. + example: "metric" + type: string + required: + - name + - jobs_query + - job_type + - query_dialect + type: object + MonitorFormulaAndFunctionDataQualityDataSource: + description: Data source for data quality queries. + enum: + - data_quality_metrics + example: "data_quality_metrics" + type: string + x-enum-varnames: + - DATA_QUALITY_METRICS + MonitorFormulaAndFunctionDataQualityMeasure: + description: |- + The data quality measure to query. Common values include: + `bytes`, `cardinality`, `custom`, `freshness`, `max`, `mean`, `min`, + `nullness`, `percent_negative`, `percent_zero`, `row_count`, `stddev`, + `sum`, `uniqueness`. Additional values may be supported. + example: "row_count" + type: string + MonitorFormulaAndFunctionDataQualityModelTypeOverride: + description: Override for the model type used in anomaly detection. + enum: + - freshness + - percentage + - any + type: string + x-enum-varnames: + - FRESHNESS + - PERCENTAGE + - ANY + MonitorFormulaAndFunctionDataQualityMonitorOptions: + description: Monitor configuration options for data quality queries. + properties: + crontab_override: + description: Crontab expression to override the default schedule. + example: "* * * 10" + type: string + custom_sql: + description: Custom SQL query for the monitor. + example: "SELECT COUNT(*) FROM users AS dd_value" + type: string + custom_where: + description: Custom WHERE clause for the query. + example: "USER_ID = 123" + type: string + group_by_columns: + description: Columns to group results by. + example: ["col1", "col2"] + items: + description: A column name to group results by. + type: string + type: array + model_type_override: + $ref: "#/components/schemas/MonitorFormulaAndFunctionDataQualityModelTypeOverride" + sensitivity: + description: |- + Sensitivity of the anomaly detection model, expressed as a multiplier on the width + of the predicted bounds. Higher values widen the bounds and produce fewer alerts; + lower values tighten them and produce more alerts. Defaults to `3.0`. + example: 3.0 + format: double + type: number + type: object + MonitorFormulaAndFunctionDataQualityQueryDefinition: + description: A formula and functions data quality query. + properties: + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionDataQualityDataSource" + filter: + description: |- + Filter expression used to match on data entities. Uses Aastra query syntax. + example: "search for column where `database:production AND table:users`" + type: string + group_by: + description: Optional grouping fields for aggregation. + example: ["entity_id"] + items: + description: A field name to group results by. + type: string + type: array + measure: + $ref: "#/components/schemas/MonitorFormulaAndFunctionDataQualityMeasure" + monitor_options: + $ref: "#/components/schemas/MonitorFormulaAndFunctionDataQualityMonitorOptions" + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + schema_version: + description: Schema version for the data quality query. + example: "0.0.1" + type: string + scope: + description: |- + Optional scoping expression to further filter metrics. Uses metrics filter syntax. + This is useful when an entity has been configured to emit metrics with additional tags. + example: "env:production" + type: string + required: + - name + - data_source + - measure + - filter + type: object + MonitorFormulaAndFunctionEventAggregation: + description: Aggregation methods for event platform queries. + enum: + - count + - cardinality + - median + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + example: avg + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - MEDIAN + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + MonitorFormulaAndFunctionEventQueryDefinition: + description: A formula and functions events query. + properties: + compute: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute" + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventsDataSource" + group_by: + description: Group by options. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy" + type: array + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: ["days-3", "days-7"] + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: "query_errors" + type: string + search: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionSearch" + required: + - data_source + - compute + - name + type: object + MonitorFormulaAndFunctionEventQueryDefinitionCompute: + description: Compute options. + properties: + aggregation: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventAggregation" + interval: + description: A time interval in milliseconds. + example: 60000 + format: int64 + type: integer + metric: + description: Measurable attribute to compute. + example: "@duration" + type: string + name: + description: The name assigned to this aggregation, when multiple aggregations are defined for a query. + example: "compute_result" + type: string + source: + description: Source reference for composite query payloads. + example: "filter_query" + type: string + required: + - aggregation + type: object + MonitorFormulaAndFunctionEventQueryDefinitionSearch: + description: Search options. + properties: + query: + description: Events search string. + example: "service:query" + type: string + required: + - query + type: object + MonitorFormulaAndFunctionEventQueryGroupBy: + description: List of objects used to group by. + properties: + facet: + description: Event facet. + example: status + type: string + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBySort" + source: + description: Source reference for composite query payloads. + example: "filter_query" + type: string + required: + - facet + type: object + MonitorFormulaAndFunctionEventQueryGroupBySort: + description: Options for sorting group by results. + properties: + aggregation: + $ref: "#/components/schemas/MonitorFormulaAndFunctionEventAggregation" + metric: + description: Metric used for sorting group by results. + type: string + order: + $ref: "#/components/schemas/QuerySortOrder" + required: + - aggregation + type: object + MonitorFormulaAndFunctionEventsDataSource: + description: Data source for event platform-based queries. + enum: + - rum + - ci_pipelines + - ci_tests + - audit + - events + - logs + - spans + - database_queries + - network + - network_path + example: "rum" + type: string + x-enum-varnames: + - RUM + - CI_PIPELINES + - CI_TESTS + - AUDIT + - EVENTS + - LOGS + - SPANS + - DATABASE_QUERIES + - NETWORK + - NETWORK_PATH + MonitorFormulaAndFunctionMetricsAggregator: + description: Aggregator for metrics queries. + enum: + - avg + - min + - max + - sum + - last + - mean + - area + - l2norm + - percentile + - stddev + - count_unique + example: "avg" + type: string + x-enum-varnames: + - AVG + - MIN + - MAX + - SUM + - LAST + - MEAN + - AREA + - L2NORM + - PERCENTILE + - STDDEV + - COUNT_UNIQUE + MonitorFormulaAndFunctionMetricsDataSource: + description: Data source for metrics queries. + enum: + - metrics + - cloud_cost + - datadog_usage + example: "metrics" + type: string + x-enum-varnames: + - METRICS + - CLOUD_COST + - DATADOG_USAGE + MonitorFormulaAndFunctionMetricsQueryDefinition: + additionalProperties: false + description: A formula and functions metrics query for use in aggregate queries. + properties: + aggregator: + $ref: "#/components/schemas/MonitorFormulaAndFunctionMetricsAggregator" + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionMetricsDataSource" + name: + description: Name of the query for use in formulas. + example: "query1" + type: string + query: + description: The metrics query definition. + example: "avg:system.cpu.user{*}" + type: string + required: + - data_source + - query + type: object + MonitorFormulaAndFunctionQueryDefinition: + description: A formula and function query. + oneOf: + - $ref: "#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionCostQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionDataQualityQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionDataJobsQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateAugmentedQueryDefinition" + - $ref: "#/components/schemas/MonitorFormulaAndFunctionAggregateFilteredQueryDefinition" + MonitorFormulaAndFunctionReferenceTableColumn: + additionalProperties: false + description: A column definition for reference table queries. + properties: + alias: + description: Optional alias for the column. + type: string + name: + description: Name of the column. + example: "org_id" + type: string + required: + - name + type: object + MonitorFormulaAndFunctionReferenceTableDataSource: + description: Data source for reference table queries. + enum: + - reference_table + example: "reference_table" + type: string + x-enum-varnames: + - REFERENCE_TABLE + MonitorFormulaAndFunctionReferenceTableQueryDefinition: + additionalProperties: false + description: A reference table query for use in aggregate queries. + properties: + columns: + description: List of columns to retrieve from the reference table. + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionReferenceTableColumn" + type: array + data_source: + $ref: "#/components/schemas/MonitorFormulaAndFunctionReferenceTableDataSource" + name: + description: Name of the query. + example: "filter_query" + type: string + query_filter: + description: Optional filter expression for the reference table query. + type: string + table_name: + description: Name of the reference table. + example: "test_table" + type: string + required: + - data_source + - table_name + type: object + MonitorGroupSearchResponse: + description: The response of a monitor group search. + example: + counts: + status: + - count: 2 + name: OK + type: + - count: 2 + name: metric + groups: + - group: "*" + group_tags: + - "*" + last_nodata_ts: 0 + last_triggered_ts: 1525702966 + monitor_id: 2738266 + monitor_name: "[demo] Cassandra disk usage is high on {{host.name}}" + status: OK + - group: "*" + group_tags: + - "*" + last_nodata_ts: 0 + last_triggered_ts: 1525703008 + monitor_id: 1576648 + monitor_name: "[demo] Disk usage is high on {{host.name}}" + status: OK + metadata: + page: 0 + page_count: 2 + per_page: 30 + total_count: 2 + properties: + counts: + $ref: "#/components/schemas/MonitorGroupSearchResponseCounts" + groups: + description: The list of found monitor groups. + items: + $ref: "#/components/schemas/MonitorGroupSearchResult" + readOnly: true + type: array + metadata: + $ref: "#/components/schemas/MonitorSearchResponseMetadata" + type: object + MonitorGroupSearchResponseCounts: + description: The counts of monitor groups per different criteria. + properties: + status: + $ref: "#/components/schemas/MonitorSearchCount" + type: + $ref: "#/components/schemas/MonitorSearchCount" + readOnly: true + type: object + MonitorGroupSearchResult: + description: A single monitor group search result. + properties: + group: + description: The name of the group. + readOnly: true + type: string + group_tags: + description: The list of tags of the monitor group. + items: + description: One monitor group tag. + readOnly: true + type: string + readOnly: true + type: array + last_nodata_ts: + description: Latest timestamp the monitor group was in NO_DATA state. + format: int64 + readOnly: true + type: integer + last_triggered_ts: + description: Latest timestamp the monitor group triggered. + format: int64 + nullable: true + readOnly: true + type: integer + monitor_id: + description: The ID of the monitor. + format: int64 + readOnly: true + type: integer + monitor_name: + description: The name of the monitor. + readOnly: true + type: string + status: + $ref: "#/components/schemas/MonitorOverallStates" + type: object + MonitorOptions: + description: List of options associated with your monitor. + properties: + aggregation: + $ref: "#/components/schemas/MonitorOptionsAggregation" + device_ids: + deprecated: true + description: IDs of the device the Synthetics monitor is running on. + items: + $ref: "#/components/schemas/MonitorDeviceID" + readOnly: true + type: array + enable_logs_sample: + description: Whether or not to send a log sample when the log monitor triggers. + type: boolean + enable_samples: + description: Whether or not to send a list of samples when the monitor triggers. This is only used by CI Test and Pipeline monitors. + type: boolean + escalation_message: + description: |- + We recommend using the [is_renotify](https://docs.datadoghq.com/monitors/notify/?tab=is_alert#renotify), + block in the original message instead. + A message to include with a re-notification. Supports the `@username` notification we allow elsewhere. + Not applicable if `renotify_interval` is `None`. + type: string + evaluation_delay: + description: |- + Time (in seconds) to delay evaluation, as a non-negative integer. For example, if the value is set to `300` (5min), + the timeframe is set to `last_5m` and the time is 7:00, the monitor evaluates data from 6:50 to 6:55. + This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor always has data during evaluation. + format: int64 + nullable: true + type: integer + group_retention_duration: + description: |- + The time span after which groups with missing data are dropped from the monitor state. + The minimum value is one hour, and the maximum value is 72 hours. + Example values are: "60m", "1h", and "2d". + This option is only available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors. + type: string + groupby_simple_monitor: + deprecated: true + description: Whether the log alert monitor triggers a single alert or multiple alerts when any group breaches a threshold. Use `notify_by` instead. + type: boolean + include_tags: + default: true + description: |- + A Boolean indicating whether notifications from this monitor automatically inserts its triggering tags into the title. + + **Examples** + - If `True`, `[Triggered on {host:h1}] Monitor Title` + - If `False`, `[Triggered] Monitor Title` + type: boolean + locked: + deprecated: true + description: Whether or not the monitor is locked (only editable by creator and admins). Use `restricted_roles` instead. + type: boolean + min_failure_duration: + default: 0 + description: How long the test should be in failure before alerting (integer, number of seconds, max 7200). + format: int64 + maximum: 7200 + minimum: 0 + nullable: true + type: integer + min_location_failed: + default: 1 + description: |- + The minimum number of locations in failure at the same time during + at least one moment in the `min_failure_duration` period (`min_location_failed` and `min_failure_duration` + are part of the advanced alerting rules - integer, >= 1). + format: int64 + nullable: true + type: integer + new_group_delay: + description: |- + Time (in seconds) to skip evaluations for new groups. + + For example, this option can be used to skip evaluations for new hosts while they initialize. + + Must be a non negative integer. + format: int64 + nullable: true + type: integer + new_host_delay: + default: 300 + deprecated: true + description: |- + Time (in seconds) to allow a host to boot and applications + to fully start before starting the evaluation of monitor results. + Should be a non negative integer. + + Use new_group_delay instead. + format: int64 + nullable: true + type: integer + no_data_timeframe: + description: |- + The number of minutes before a monitor notifies after data stops reporting. + Datadog recommends at least 2x the monitor timeframe for query alerts or 2 minutes for service checks. + If omitted, 2x the evaluation timeframe is used for query alerts, and 24 hours is used for service checks. + format: int64 + nullable: true + type: integer + notification_preset_name: + $ref: "#/components/schemas/MonitorOptionsNotificationPresets" + notify_audit: + default: false + description: A Boolean indicating whether tagged users is notified on changes to this monitor. + type: boolean + notify_by: + description: |- + Controls what granularity a monitor alerts on. Only available for monitors with groupings. + For instance, a monitor grouped by `cluster`, `namespace`, and `pod` can be configured to only notify on each + new `cluster` violating the alert conditions by setting `notify_by` to `["cluster"]`. Tags mentioned + in `notify_by` must be a subset of the grouping tags in the query. + For example, a query grouped by `cluster` and `namespace` cannot notify on `region`. + Setting `notify_by` to `["*"]` configures the monitor to notify as a simple-alert. + items: + description: A grouping tag. + type: string + type: array + notify_no_data: + description: A Boolean indicating whether this monitor notifies when data stops reporting. Defaults to `false`. + type: boolean + on_missing_data: + $ref: "#/components/schemas/OnMissingDataOption" + renotify_interval: + default: + description: |- + The number of minutes after the last notification before a monitor re-notifies on the current status. + It only re-notifies if it’s not resolved. + format: int64 + nullable: true + type: integer + renotify_occurrences: + description: |- + The number of times re-notification messages should be sent on the current status at the provided re-notification interval. + format: int64 + nullable: true + type: integer + renotify_statuses: + description: |- + The types of monitor statuses for which re-notification messages are sent. + Default: **null** if `renotify_interval` is **null**. + If `renotify_interval` is set, defaults to renotify on `Alert` and `No Data`. + items: + $ref: "#/components/schemas/MonitorRenotifyStatusType" + nullable: true + type: array + require_full_window: + description: |- + A Boolean indicating whether this monitor needs a full window of data before it’s evaluated. + We highly recommend you set this to `false` for sparse metrics, + otherwise some evaluations are skipped. Default is false. This setting only applies to + metric monitors. + type: boolean + scheduling_options: + $ref: "#/components/schemas/MonitorOptionsSchedulingOptions" + silenced: + additionalProperties: + description: UTC epoch timestamp in seconds when the downtime for the group expires. + format: int64 + nullable: true + type: integer + deprecated: true + description: Information about the downtime applied to the monitor. Only shows v1 downtimes. + type: object + synthetics_check_id: + deprecated: true + description: ID of the corresponding Synthetic check. + nullable: true + type: string + threshold_windows: + $ref: "#/components/schemas/MonitorThresholdWindowOptions" + thresholds: + $ref: "#/components/schemas/MonitorThresholds" + timeout_h: + default: + description: The number of hours of the monitor not reporting data before it automatically resolves from a triggered state. The minimum allowed value is 0 hours. The maximum allowed value is 24 hours. + format: int64 + nullable: true + type: integer + variables: + description: List of requests that can be used in the monitor query. **This feature is currently in beta.** + items: + $ref: "#/components/schemas/MonitorFormulaAndFunctionQueryDefinition" + type: array + type: object + MonitorOptionsAggregation: + description: Type of aggregation performed in the monitor query. + properties: + group_by: + description: Group to break down the monitor on. + example: host + type: string + metric: + description: Metric name used in the monitor. + example: metrics.name + type: string + type: + description: Metric type used in the monitor. + example: count + type: string + readOnly: true + type: object + MonitorOptionsCustomSchedule: + description: Configuration options for the custom schedule. **This feature is in private beta.** + properties: + recurrences: + description: Array of custom schedule recurrences. + items: + $ref: "#/components/schemas/MonitorOptionsCustomScheduleRecurrence" + type: array + type: object + MonitorOptionsCustomScheduleRecurrence: + description: Configuration for a recurrence set on the monitor options for custom schedule. + properties: + rrule: + description: Defines the recurrence rule (RRULE) for a given schedule. + example: "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR" + type: string + start: + description: Defines the start date and time of the recurring schedule. + example: "2023-08-31T16:30:00" + type: string + timezone: + description: Defines the timezone the schedule runs on. + example: "Europe/Paris" + type: string + type: object + MonitorOptionsNotificationPresets: + default: "show_all" + description: Toggles the display of additional content sent in the monitor notification. + enum: + - "show_all" + - "hide_query" + - "hide_handles" + - "hide_all" + - "hide_query_and_handles" + - "show_only_snapshot" + - "hide_handles_and_footer" + type: string + x-enum-varnames: + - SHOW_ALL + - HIDE_QUERY + - HIDE_HANDLES + - HIDE_ALL + - HIDE_QUERY_AND_HANDLES + - SHOW_ONLY_SNAPSHOT + - HIDE_HANDLES_AND_FOOTER + MonitorOptionsSchedulingOptions: + description: Configuration options for scheduling. + properties: + custom_schedule: + $ref: "#/components/schemas/MonitorOptionsCustomSchedule" + evaluation_window: + $ref: "#/components/schemas/MonitorOptionsSchedulingOptionsEvaluationWindow" + type: object + MonitorOptionsSchedulingOptionsEvaluationWindow: + description: Configuration options for the evaluation window. If `hour_starts` is set, no other fields may be set. Otherwise, `day_starts` and `month_starts` must be set together. + properties: + day_starts: + description: The time of the day at which a one day cumulative evaluation window starts. + example: "04:00" + type: string + hour_starts: + description: The minute of the hour at which a one hour cumulative evaluation window starts. + example: 0 + format: int32 + maximum: 59 + minimum: 0 + type: integer + month_starts: + description: The day of the month at which a one month cumulative evaluation window starts. + example: 1 + format: int32 + maximum: 1 + minimum: 1 + type: integer + timezone: + description: The timezone of the time of the day of the cumulative evaluation window start. + example: "Europe/Paris" + type: string + type: object + MonitorOverallStates: + description: The different states your monitor can be in. + enum: + - Alert + - Ignored + - No Data + - OK + - Skipped + - Unknown + - Warn + readOnly: true + type: string + x-enum-varnames: + - ALERT + - IGNORED + - NO_DATA + - OK + - SKIPPED + - UNKNOWN + - WARN + MonitorRenotifyStatusType: + description: The different statuses for which renotification is supported. + enum: + - "alert" + - "warn" + - "no data" + type: string + x-enum-varnames: + - ALERT + - WARN + - NO_DATA + MonitorSearchCount: + description: Search facets. + items: + $ref: "#/components/schemas/MonitorSearchCountItem" + type: array + MonitorSearchCountItem: + description: A facet item. + properties: + count: + description: The number of found monitors with the listed value. + format: int64 + readOnly: true + type: integer + name: + description: The facet value. + readOnly: true + type: object + MonitorSearchResponse: + description: The response from a monitor search. + example: + counts: + muted: + - count: 3 + name: false + - count: 3 + name: true + status: + - count: 4 + name: No Data + - count: 2 + name: OK + tag: + - count: 6 + name: service:cassandra + type: + - count: 6 + name: metric + metadata: + page: 0 + page_count: 6 + per_page: 30 + total_count: 6 + monitors: + - classification: metric + creator: + handle: john@datadoghq.com + name: John Doe + id: 2699850 + last_triggered_ts: + metrics: + - system.cpu.user + name: Cassandra CPU is high on {{host.name}} in {{availability-zone.name}} + notifications: + - handle: jane@datadoghq.com + name: Jane Doe + org_id: 1234 + quality_issues: + - "broken_at_handle" + - "noisy_monitor" + scopes: + - "!availability-zone:us-east-1c" + - name:cassandra + status: No Data + tags: + - service:cassandra + type: query alert + properties: + counts: + $ref: "#/components/schemas/MonitorSearchResponseCounts" + metadata: + $ref: "#/components/schemas/MonitorSearchResponseMetadata" + monitors: + description: The list of found monitors. + items: + $ref: "#/components/schemas/MonitorSearchResult" + readOnly: true + type: array + type: object + MonitorSearchResponseCounts: + description: The counts of monitors per different criteria. + properties: + muted: + $ref: "#/components/schemas/MonitorSearchCount" + status: + $ref: "#/components/schemas/MonitorSearchCount" + tag: + $ref: "#/components/schemas/MonitorSearchCount" + type: + $ref: "#/components/schemas/MonitorSearchCount" + readOnly: true + type: object + MonitorSearchResponseMetadata: + description: Metadata about the response. + properties: + page: + description: The page to start paginating from. + format: int64 + readOnly: true + type: integer + page_count: + description: The number of pages. + format: int64 + readOnly: true + type: integer + per_page: + description: The number of monitors to return per page. + format: int64 + readOnly: true + type: integer + total_count: + description: The total number of monitors. + format: int64 + readOnly: true + type: integer + type: object + MonitorSearchResult: + description: Holds search results. + properties: + classification: + description: Classification of the monitor. + readOnly: true + type: string + creator: + $ref: "#/components/schemas/Creator" + id: + description: ID of the monitor. + format: int64 + readOnly: true + type: integer + last_triggered_ts: + description: Latest timestamp the monitor triggered. + format: int64 + nullable: true + readOnly: true + type: integer + metrics: + description: Metrics used by the monitor. + items: + description: A metric used by the monitor. + readOnly: true + type: string + readOnly: true + type: array + name: + description: The monitor name. + readOnly: true + type: string + notifications: + description: The notification triggered by the monitor. + items: + $ref: "#/components/schemas/MonitorSearchResultNotification" + readOnly: true + type: array + org_id: + description: The ID of the organization. + format: int64 + readOnly: true + type: integer + quality_issues: + description: Quality issues detected with the monitor. + items: + description: A quality issue detected with the monitor. + readOnly: true + type: string + readOnly: true + type: array + query: + description: The monitor query. + example: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + type: string + scopes: + description: |- + The scope(s) to which the downtime applies, for example `host:app2`. + Provide multiple scopes as a comma-separated list, for example `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes + (that is `env:dev AND env:prod`), NOT any of them. + example: ["host:app2", "env:dev,env:prod"] + items: + description: Scope value(s). + readOnly: true + type: string + type: array + status: + $ref: "#/components/schemas/MonitorOverallStates" + tags: + description: Tags associated with the monitor. + items: + description: A tag associated with the monitor. + readOnly: true + type: string + readOnly: true + type: array + type: + $ref: "#/components/schemas/MonitorType" + type: object + MonitorSearchResultNotification: + description: A notification triggered by the monitor. + properties: + handle: + description: The email address that received the notification. + readOnly: true + type: string + name: + description: The username receiving the notification + readOnly: true + type: string + readOnly: true + type: object + MonitorState: + description: Wrapper object with the different monitor states. + properties: + groups: + additionalProperties: + $ref: "#/components/schemas/MonitorStateGroup" + description: |- + Dictionary where the keys are groups (comma separated lists of tags) and the values are + the list of groups your monitor is broken down on. + type: object + readOnly: true + type: object + MonitorStateGroup: + description: Monitor state for a single group. + properties: + last_nodata_ts: + description: Latest timestamp the monitor was in NO_DATA state. + format: int64 + type: integer + last_notified_ts: + description: Latest timestamp of the notification sent for this monitor group. + format: int64 + type: integer + last_resolved_ts: + description: Latest timestamp the monitor group was resolved. + format: int64 + type: integer + last_triggered_ts: + description: Latest timestamp the monitor group triggered. + format: int64 + type: integer + name: + description: The name of the monitor. + type: string + status: + $ref: "#/components/schemas/MonitorOverallStates" + type: object + MonitorSummaryWidgetDefinition: + description: The monitor summary widget displays a summary view of all your Datadog monitors, or a subset based on a query. + properties: + color_preference: + $ref: "#/components/schemas/WidgetColorPreference" + count: + deprecated: true + description: The number of monitors to display. + format: int64 + type: integer + description: + description: The description of the widget. + type: string + display_format: + $ref: "#/components/schemas/WidgetMonitorSummaryDisplayFormat" + hide_zero_counts: + description: Whether to show counts of 0 or not. + type: boolean + query: + description: Query to filter the monitors with. + example: "" + type: string + show_last_triggered: + description: Whether to show the time that has elapsed since the monitor/group triggered. + type: boolean + show_priority: + default: false + description: Whether to show the priorities column. + type: boolean + sort: + $ref: "#/components/schemas/WidgetMonitorSummarySort" + start: + deprecated: true + description: The start of the list. Typically 0. + format: int64 + type: integer + summary_type: + $ref: "#/components/schemas/WidgetSummaryType" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/MonitorSummaryWidgetDefinitionType" + required: + - type + - query + type: object + MonitorSummaryWidgetDefinitionType: + default: manage_status + description: Type of the monitor summary widget. + enum: + - manage_status + example: manage_status + type: string + x-enum-varnames: + - MANAGE_STATUS + MonitorThresholdWindowOptions: + description: Alerting time window options. + properties: + recovery_window: + description: Describes how long an anomalous metric must be normal before the alert recovers. + nullable: true + type: string + trigger_window: + description: Describes how long a metric must be anomalous before an alert triggers. + nullable: true + type: string + type: object + MonitorThresholds: + description: List of the different monitor threshold available. + properties: + critical: + description: The monitor `CRITICAL` threshold. + format: double + type: number + critical_query: + description: Query evaluated as a dynamic `CRITICAL` threshold. Only supported on metric monitors with a formula query and options['variables']. Cannot be combined with static thresholds. This field is in preview. + example: 'formula("2 * query1").rollup("avg").last("6mo")' + type: string + critical_recovery: + description: The monitor `CRITICAL` recovery threshold. + format: double + nullable: true + type: number + critical_recovery_query: + description: Query evaluated as a dynamic `CRITICAL` recovery threshold. Only supported on metric monitors with a formula query and options['variables']. Cannot be combined with static thresholds. This field is in preview. + example: 'formula("1.5 * query1").rollup("avg").last("3mo")' + type: string + ok: + description: The monitor `OK` threshold. + format: double + nullable: true + type: number + unknown: + description: The monitor UNKNOWN threshold. + format: double + nullable: true + type: number + warning: + description: The monitor `WARNING` threshold. + format: double + nullable: true + type: number + warning_recovery: + description: The monitor `WARNING` recovery threshold. + format: double + nullable: true + type: number + type: object + MonitorType: + description: The type of the monitor. For more information about `type`, see the [monitor options](https://docs.datadoghq.com/monitors/guide/monitor_api_options/) docs. + enum: + - "composite" + - "event alert" + - "log alert" + - "metric alert" + - "process alert" + - "query alert" + - "rum alert" + - "service check" + - "synthetics alert" + - "trace-analytics alert" + - "slo alert" + - "event-v2 alert" + - "audit alert" + - "ci-pipelines alert" + - "ci-tests alert" + - "error-tracking alert" + - "database-monitoring alert" + - "network-performance alert" + - "cost alert" + - "data-quality alert" + - "network-path alert" + - "data-jobs alert" + - "llm-observability alert" + example: "query alert" + type: string + x-enum-varnames: + - COMPOSITE + - EVENT_ALERT + - LOG_ALERT + - METRIC_ALERT + - PROCESS_ALERT + - QUERY_ALERT + - RUM_ALERT + - SERVICE_CHECK + - SYNTHETICS_ALERT + - TRACE_ANALYTICS_ALERT + - SLO_ALERT + - EVENT_V2_ALERT + - AUDIT_ALERT + - CI_PIPELINES_ALERT + - CI_TESTS_ALERT + - ERROR_TRACKING_ALERT + - DATABASE_MONITORING_ALERT + - NETWORK_PERFORMANCE_ALERT + - COST_ALERT + - DATA_QUALITY_ALERT + - NETWORK_PATH_ALERT + - DATA_JOBS_ALERT + - LLM_OBSERVABILITY_ALERT + MonitorUpdateRequest: + description: Object describing a monitor update request. + properties: + assets: + description: The list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks). + items: + $ref: "#/components/schemas/MonitorAsset" + nullable: true + type: array + created: + description: Timestamp of the monitor creation. + format: date-time + readOnly: true + type: string + creator: + $ref: "#/components/schemas/Creator" + deleted: + description: Whether or not the monitor is deleted. (Always `null`) + format: date-time + nullable: true + readOnly: true + type: string + draft_status: + $ref: "#/components/schemas/MonitorDraftStatus" + id: + description: ID of this monitor. + format: int64 + readOnly: true + type: integer + message: + description: A message to include with notifications for this monitor. + type: string + modified: + description: Last timestamp when the monitor was edited. + format: date-time + readOnly: true + type: string + multi: + description: Whether or not the monitor is broken down on different groups. + readOnly: true + type: boolean + name: + description: The monitor name. + type: string + options: + $ref: "#/components/schemas/MonitorOptions" + overall_state: + $ref: "#/components/schemas/MonitorOverallStates" + priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int64 + nullable: true + type: integer + query: + description: The monitor query. + type: string + restricted_roles: + description: A list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles. + items: + description: A role UUID. + type: string + nullable: true + type: array + state: + $ref: "#/components/schemas/MonitorState" + tags: + description: Tags associated to your monitor. + items: + description: A Datadog tag. + type: string + type: array + type: + $ref: "#/components/schemas/MonitorType" + type: object + MonthlyUsageAttributionBody: + description: Usage Summary by tag for a given organization. + properties: + month: + description: "Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM]." + format: date-time + type: string + org_name: + description: The name of the organization. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + tag_config_source: + description: The source of the usage attribution tag configuration and the selected tags in the format `::://////`. + type: string + tags: + $ref: "#/components/schemas/UsageAttributionTagNames" + updated_at: + description: Datetime of the most recent update to the usage values. + format: date-time + type: string + values: + $ref: "#/components/schemas/MonthlyUsageAttributionValues" + type: object + MonthlyUsageAttributionMetadata: + description: The object containing document metadata. + properties: + aggregates: + $ref: "#/components/schemas/UsageAttributionAggregates" + pagination: + $ref: "#/components/schemas/MonthlyUsageAttributionPagination" + type: object + MonthlyUsageAttributionPagination: + description: The metadata for the current pagination. + properties: + next_record_id: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of the `next_record_id`. + nullable: true + type: string + type: object + MonthlyUsageAttributionResponse: + description: Response containing the monthly Usage Summary by tag(s). + properties: + metadata: + $ref: "#/components/schemas/MonthlyUsageAttributionMetadata" + usage: + description: Get usage summary by tag(s). + items: + $ref: "#/components/schemas/MonthlyUsageAttributionBody" + type: array + type: object + MonthlyUsageAttributionSupportedMetrics: + description: |- + Supported metrics for monthly usage attribution requests. Usage types are in the format `_usage`. + To obtain the complete list of valid usage types, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + enum: + - api_usage + - api_percentage + - apm_fargate_usage + - apm_fargate_percentage + - appsec_fargate_usage + - appsec_fargate_percentage + - apm_host_usage + - apm_host_percentage + - apm_usm_usage + - apm_usm_percentage + - appsec_usage + - appsec_percentage + - asm_serverless_traced_invocations_usage + - asm_serverless_traced_invocations_percentage + - bits_ai_investigations_usage + - bits_ai_investigations_percentage + - browser_usage + - browser_percentage + - ci_visibility_itr_usage + - ci_visibility_itr_percentage + - cloud_siem_usage + - cloud_siem_percentage + - code_security_host_usage + - code_security_host_percentage + - container_excl_agent_usage + - container_excl_agent_percentage + - container_usage + - container_percentage + - cspm_containers_percentage + - cspm_containers_usage + - cspm_hosts_percentage + - cspm_hosts_usage + - custom_timeseries_usage + - custom_timeseries_percentage + - custom_ingested_timeseries_usage + - custom_ingested_timeseries_percentage + - cws_containers_percentage + - cws_containers_usage + - cws_fargate_task_percentage + - cws_fargate_task_usage + - cws_hosts_percentage + - cws_hosts_usage + - data_jobs_monitoring_usage + - data_jobs_monitoring_percentage + - data_stream_monitoring_usage + - data_stream_monitoring_percentage + - dbm_hosts_percentage + - dbm_hosts_usage + - dbm_queries_percentage + - dbm_queries_usage + - error_tracking_usage + - error_tracking_percentage + - estimated_indexed_spans_usage + - estimated_indexed_spans_percentage + - estimated_ingested_spans_usage + - estimated_ingested_spans_percentage + - fargate_usage + - fargate_percentage + - flex_logs_starter_usage + - flex_logs_starter_percentage + - flex_stored_logs_usage + - flex_stored_logs_percentage + - functions_usage + - functions_percentage + - incident_management_monthly_active_users_usage + - incident_management_monthly_active_users_percentage + - infra_host_usage + - infra_host_percentage + - infra_host_basic_usage + - infra_host_basic_percentage + - invocations_usage + - invocations_percentage + - lambda_traced_invocations_usage + - lambda_traced_invocations_percentage + - llm_observability_usage + - llm_observability_percentage + - llm_spans_usage + - llm_spans_percentage + - mobile_app_testing_percentage + - mobile_app_testing_usage + - ndm_netflow_usage + - ndm_netflow_percentage + - network_device_wireless_usage + - network_device_wireless_percentage + - npm_host_usage + - npm_host_percentage + - obs_pipeline_bytes_usage + - obs_pipeline_bytes_percentage + - obs_pipelines_vcpu_usage + - obs_pipelines_vcpu_percentage + - online_archive_usage + - online_archive_percentage + - product_analytics_session_usage + - product_analytics_session_percentage + - profiled_container_usage + - profiled_container_percentage + - profiled_fargate_usage + - profiled_fargate_percentage + - profiled_host_usage + - profiled_host_percentage + - published_app_usage + - published_app_percentage + - serverless_apps_usage + - serverless_apps_percentage + - serverless_apps_apm_usage + - serverless_apps_apm_percentage + - snmp_usage + - snmp_percentage + - universal_service_monitoring_usage + - universal_service_monitoring_percentage + - vuln_management_hosts_usage + - vuln_management_hosts_percentage + - sds_scanned_bytes_usage + - sds_scanned_bytes_percentage + - ci_test_indexed_spans_usage + - ci_test_indexed_spans_percentage + - ingested_logs_bytes_usage + - ingested_logs_bytes_percentage + - ci_pipeline_indexed_spans_usage + - ci_pipeline_indexed_spans_percentage + - indexed_spans_usage + - indexed_spans_percentage + - custom_event_usage + - custom_event_percentage + - logs_indexed_custom_retention_usage + - logs_indexed_custom_retention_percentage + - logs_indexed_360day_usage + - logs_indexed_360day_percentage + - logs_indexed_180day_usage + - logs_indexed_180day_percentage + - logs_indexed_90day_usage + - logs_indexed_90day_percentage + - logs_indexed_60day_usage + - logs_indexed_60day_percentage + - logs_indexed_45day_usage + - logs_indexed_45day_percentage + - logs_indexed_30day_usage + - logs_indexed_30day_percentage + - logs_indexed_15day_usage + - logs_indexed_15day_percentage + - logs_indexed_7day_usage + - logs_indexed_7day_percentage + - logs_indexed_3day_usage + - logs_indexed_3day_percentage + - logs_indexed_1day_usage + - logs_indexed_1day_percentage + - rum_ingested_usage + - rum_ingested_percentage + - rum_investigate_usage + - rum_investigate_percentage + - rum_replay_sessions_usage + - rum_replay_sessions_percentage + - rum_session_replay_add_on_usage + - rum_session_replay_add_on_percentage + - rum_browser_mobile_sessions_usage + - rum_browser_mobile_sessions_percentage + - ingested_spans_bytes_usage + - ingested_spans_bytes_percentage + - siem_12mo_retention_usage + - siem_12mo_retention_percentage + - siem_6mo_retention_usage + - siem_6mo_retention_percentage + - siem_analyzed_logs_add_on_usage + - siem_analyzed_logs_add_on_percentage + - siem_ingested_bytes_usage + - siem_ingested_bytes_percentage + - workflow_executions_usage + - workflow_executions_percentage + - sca_fargate_usage + - sca_fargate_percentage + - "*" + type: string + x-enum-varnames: + - API_USAGE + - API_PERCENTAGE + - APM_FARGATE_USAGE + - APM_FARGATE_PERCENTAGE + - APPSEC_FARGATE_USAGE + - APPSEC_FARGATE_PERCENTAGE + - APM_HOST_USAGE + - APM_HOST_PERCENTAGE + - APM_USM_USAGE + - APM_USM_PERCENTAGE + - APPSEC_USAGE + - APPSEC_PERCENTAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE + - BITS_AI_INVESTIGATIONS_USAGE + - BITS_AI_INVESTIGATIONS_PERCENTAGE + - BROWSER_USAGE + - BROWSER_PERCENTAGE + - CI_VISIBILITY_ITR_USAGE + - CI_VISIBILITY_ITR_PERCENTAGE + - CLOUD_SIEM_USAGE + - CLOUD_SIEM_PERCENTAGE + - CODE_SECURITY_HOST_USAGE + - CODE_SECURITY_HOST_PERCENTAGE + - CONTAINER_EXCL_AGENT_USAGE + - CONTAINER_EXCL_AGENT_PERCENTAGE + - CONTAINER_USAGE + - CONTAINER_PERCENTAGE + - CSPM_CONTAINERS_PERCENTAGE + - CSPM_CONTAINERS_USAGE + - CSPM_HOSTS_PERCENTAGE + - CSPM_HOSTS_USAGE + - CUSTOM_TIMESERIES_USAGE + - CUSTOM_TIMESERIES_PERCENTAGE + - CUSTOM_INGESTED_TIMESERIES_USAGE + - CUSTOM_INGESTED_TIMESERIES_PERCENTAGE + - CWS_CONTAINERS_PERCENTAGE + - CWS_CONTAINERS_USAGE + - CWS_FARGATE_TASK_PERCENTAGE + - CWS_FARGATE_TASK_USAGE + - CWS_HOSTS_PERCENTAGE + - CWS_HOSTS_USAGE + - DATA_JOBS_MONITORING_USAGE + - DATA_JOBS_MONITORING_PERCENTAGE + - DATA_STREAM_MONITORING_USAGE + - DATA_STREAM_MONITORING_PERCENTAGE + - DBM_HOSTS_PERCENTAGE + - DBM_HOSTS_USAGE + - DBM_QUERIES_PERCENTAGE + - DBM_QUERIES_USAGE + - ERROR_TRACKING_USAGE + - ERROR_TRACKING_PERCENTAGE + - ESTIMATED_INDEXED_SPANS_USAGE + - ESTIMATED_INDEXED_SPANS_PERCENTAGE + - ESTIMATED_INGESTED_SPANS_USAGE + - ESTIMATED_INGESTED_SPANS_PERCENTAGE + - FARGATE_USAGE + - FARGATE_PERCENTAGE + - FLEX_LOGS_STARTER_USAGE + - FLEX_LOGS_STARTER_PERCENTAGE + - FLEX_STORED_LOGS_USAGE + - FLEX_STORED_LOGS_PERCENTAGE + - FUNCTIONS_USAGE + - FUNCTIONS_PERCENTAGE + - INCIDENT_MANAGEMENT_MONTHLY_ACTIVE_USERS_USAGE + - INCIDENT_MANAGEMENT_MONTHLY_ACTIVE_USERS_PERCENTAGE + - INFRA_HOST_USAGE + - INFRA_HOST_PERCENTAGE + - INFRA_HOST_BASIC_USAGE + - INFRA_HOST_BASIC_PERCENTAGE + - INVOCATIONS_USAGE + - INVOCATIONS_PERCENTAGE + - LAMBDA_TRACED_INVOCATIONS_USAGE + - LAMBDA_TRACED_INVOCATIONS_PERCENTAGE + - LLM_OBSERVABILITY_USAGE + - LLM_OBSERVABILITY_PERCENTAGE + - LLM_SPANS_USAGE + - LLM_SPANS_PERCENTAGE + - MOBILE_APP_TESTING_USAGE + - MOBILE_APP_TESTING_PERCENTAGE + - NDM_NETFLOW_USAGE + - NDM_NETFLOW_PERCENTAGE + - NETWORK_DEVICE_WIRELESS_USAGE + - NETWORK_DEVICE_WIRELESS_PERCENTAGE + - NPM_HOST_USAGE + - NPM_HOST_PERCENTAGE + - OBS_PIPELINE_BYTES_USAGE + - OBS_PIPELINE_BYTES_PERCENTAGE + - OBS_PIPELINES_VCPU_USAGE + - OBS_PIPELINES_VCPU_PERCENTAGE + - ONLINE_ARCHIVE_USAGE + - ONLINE_ARCHIVE_PERCENTAGE + - PRODUCT_ANALYTICS_SESSION_USAGE + - PRODUCT_ANALYTICS_SESSION_PERCENTAGE + - PROFILED_CONTAINER_USAGE + - PROFILED_CONTAINER_PERCENTAGE + - PROFILED_FARGATE_USAGE + - PROFILED_FARGATE_PERCENTAGE + - PROFILED_HOST_USAGE + - PROFILED_HOST_PERCENTAGE + - PUBLISHED_APP_USAGE + - PUBLISHED_APP_PERCENTAGE + - SERVERLESS_APPS_USAGE + - SERVERLESS_APPS_PERCENTAGE + - SERVERLESS_APPS_APM_USAGE + - SERVERLESS_APPS_APM_PERCENTAGE + - SNMP_USAGE + - SNMP_PERCENTAGE + - UNIVERSAL_SERVICE_MONITORING_USAGE + - UNIVERSAL_SERVICE_MONITORING_PERCENTAGE + - VULN_MANAGEMENT_HOSTS_USAGE + - VULN_MANAGEMENT_HOSTS_PERCENTAGE + - SDS_SCANNED_BYTES_USAGE + - SDS_SCANNED_BYTES_PERCENTAGE + - CI_TEST_INDEXED_SPANS_USAGE + - CI_TEST_INDEXED_SPANS_PERCENTAGE + - INGESTED_LOGS_BYTES_USAGE + - INGESTED_LOGS_BYTES_PERCENTAGE + - CI_PIPELINE_INDEXED_SPANS_USAGE + - CI_PIPELINE_INDEXED_SPANS_PERCENTAGE + - INDEXED_SPANS_USAGE + - INDEXED_SPANS_PERCENTAGE + - CUSTOM_EVENT_USAGE + - CUSTOM_EVENT_PERCENTAGE + - LOGS_INDEXED_CUSTOM_RETENTION_USAGE + - LOGS_INDEXED_CUSTOM_RETENTION_PERCENTAGE + - LOGS_INDEXED_360DAY_USAGE + - LOGS_INDEXED_360DAY_PERCENTAGE + - LOGS_INDEXED_180DAY_USAGE + - LOGS_INDEXED_180DAY_PERCENTAGE + - LOGS_INDEXED_90DAY_USAGE + - LOGS_INDEXED_90DAY_PERCENTAGE + - LOGS_INDEXED_60DAY_USAGE + - LOGS_INDEXED_60DAY_PERCENTAGE + - LOGS_INDEXED_45DAY_USAGE + - LOGS_INDEXED_45DAY_PERCENTAGE + - LOGS_INDEXED_30DAY_USAGE + - LOGS_INDEXED_30DAY_PERCENTAGE + - LOGS_INDEXED_15DAY_USAGE + - LOGS_INDEXED_15DAY_PERCENTAGE + - LOGS_INDEXED_7DAY_USAGE + - LOGS_INDEXED_7DAY_PERCENTAGE + - LOGS_INDEXED_3DAY_USAGE + - LOGS_INDEXED_3DAY_PERCENTAGE + - LOGS_INDEXED_1DAY_USAGE + - LOGS_INDEXED_1DAY_PERCENTAGE + - RUM_INGESTED_USAGE + - RUM_INGESTED_PERCENTAGE + - RUM_INVESTIGATE_USAGE + - RUM_INVESTIGATE_PERCENTAGE + - RUM_REPLAY_SESSIONS_USAGE + - RUM_REPLAY_SESSIONS_PERCENTAGE + - RUM_SESSION_REPLAY_ADD_ON_USAGE + - RUM_SESSION_REPLAY_ADD_ON_PERCENTAGE + - RUM_BROWSER_MOBILE_SESSIONS_USAGE + - RUM_BROWSER_MOBILE_SESSIONS_PERCENTAGE + - INGESTED_SPANS_BYTES_USAGE + - INGESTED_SPANS_BYTES_PERCENTAGE + - SIEM_12MO_RETENTION_USAGE + - SIEM_12MO_RETENTION_PERCENTAGE + - SIEM_6MO_RETENTION_USAGE + - SIEM_6MO_RETENTION_PERCENTAGE + - SIEM_ANALYZED_LOGS_ADD_ON_USAGE + - SIEM_ANALYZED_LOGS_ADD_ON_PERCENTAGE + - SIEM_INGESTED_BYTES_USAGE + - SIEM_INGESTED_BYTES_PERCENTAGE + - WORKFLOW_EXECUTIONS_USAGE + - WORKFLOW_EXECUTIONS_PERCENTAGE + - SCA_FARGATE_USAGE + - SCA_FARGATE_PERCENTAGE + - ALL + MonthlyUsageAttributionValues: + description: |- + Fields in Usage Summary by tag(s). + properties: + api_percentage: + description: The percentage of synthetic API test usage by tag(s). + format: double + type: number + api_usage: + description: The synthetic API test usage by tag(s). + format: double + type: number + apm_fargate_percentage: + description: The percentage of APM ECS Fargate task usage by tag(s). + format: double + type: number + apm_fargate_usage: + description: The APM ECS Fargate task usage by tag(s). + format: double + type: number + apm_host_percentage: + description: The percentage of APM host usage by tag(s). + format: double + type: number + apm_host_usage: + description: The APM host usage by tag(s). + format: double + type: number + apm_usm_percentage: + description: The percentage of APM and Universal Service Monitoring host usage by tag(s). + format: double + type: number + apm_usm_usage: + description: The APM and Universal Service Monitoring host usage by tag(s). + format: double + type: number + appsec_fargate_percentage: + description: The percentage of Application Security Monitoring ECS Fargate task usage by tag(s). + format: double + type: number + appsec_fargate_usage: + description: The Application Security Monitoring ECS Fargate task usage by tag(s). + format: double + type: number + appsec_percentage: + description: The percentage of Application Security Monitoring host usage by tag(s). + format: double + type: number + appsec_usage: + description: The Application Security Monitoring host usage by tag(s). + format: double + type: number + asm_serverless_traced_invocations_percentage: + description: The percentage of Application Security Monitoring Serverless traced invocations usage by tag(s). + format: double + type: number + asm_serverless_traced_invocations_usage: + description: The Application Security Monitoring Serverless traced invocations usage by tag(s). + format: double + type: number + bits_ai_investigations_percentage: + description: The percentage of Bits AI `SRE` investigation usage by tag(s). + format: double + type: number + bits_ai_investigations_usage: + description: The Bits AI `SRE` investigation usage by tag(s). + format: double + type: number + browser_percentage: + description: The percentage of synthetic browser test usage by tag(s). + format: double + type: number + browser_usage: + description: The synthetic browser test usage by tag(s). + format: double + type: number + ci_code_coverage_committers_percentage: + description: The percentage of Code Coverage committers usage by tag(s). + format: double + type: number + ci_code_coverage_committers_usage: + description: The total Code Coverage committers usage by tag(s). + format: double + type: number + ci_pipeline_indexed_spans_percentage: + description: The percentage of CI Pipeline Indexed Spans usage by tag(s). + format: double + type: number + ci_pipeline_indexed_spans_usage: + description: The total CI Pipeline Indexed Spans usage by tag(s). + format: double + type: number + ci_test_indexed_spans_percentage: + description: The percentage of CI Test Indexed Spans usage by tag(s). + format: double + type: number + ci_test_indexed_spans_usage: + description: The total CI Test Indexed Spans usage by tag(s). + format: double + type: number + ci_visibility_itr_percentage: + description: The percentage of Git committers for Intelligent Test Runner usage by tag(s). + format: double + type: number + ci_visibility_itr_usage: + description: The Git committers for Intelligent Test Runner usage by tag(s). + format: double + type: number + cloud_siem_percentage: + description: The percentage of Cloud Security Information and Event Management usage by tag(s). + format: double + type: number + cloud_siem_usage: + description: The Cloud Security Information and Event Management usage by tag(s). + format: double + type: number + code_security_host_percentage: + description: The percentage of Code Security host usage by tags. + format: double + type: number + code_security_host_usage: + description: The Code Security host usage by tags. + format: double + type: number + container_excl_agent_percentage: + description: The percentage of container usage without the Datadog Agent by tag(s). + format: double + type: number + container_excl_agent_usage: + description: The container usage without the Datadog Agent by tag(s). + format: double + type: number + container_percentage: + description: The percentage of container usage by tag(s). + format: double + type: number + container_usage: + description: The container usage by tag(s). + format: double + type: number + cspm_containers_percentage: + description: The percentage of Cloud Security Management Pro container usage by tag(s). + format: double + type: number + cspm_containers_usage: + description: The Cloud Security Management Pro container usage by tag(s). + format: double + type: number + cspm_hosts_percentage: + description: The percentage of Cloud Security Management Pro host usage by tag(s). + format: double + type: number + cspm_hosts_usage: + description: The Cloud Security Management Pro host usage by tag(s). + format: double + type: number + custom_event_percentage: + description: The percentage of Custom Events usage by tag(s). + format: double + type: number + custom_event_usage: + description: The total Custom Events usage by tag(s). + format: double + type: number + custom_ingested_timeseries_percentage: + description: The percentage of ingested custom metrics usage by tag(s). + format: double + type: number + custom_ingested_timeseries_usage: + description: The ingested custom metrics usage by tag(s). + format: double + type: number + custom_timeseries_percentage: + description: The percentage of indexed custom metrics usage by tag(s). + format: double + type: number + custom_timeseries_usage: + description: The indexed custom metrics usage by tag(s). + format: double + type: number + cws_containers_percentage: + description: The percentage of Cloud Workload Security container usage by tag(s). + format: double + type: number + cws_containers_usage: + description: The Cloud Workload Security container usage by tag(s). + format: double + type: number + cws_fargate_task_percentage: + description: The percentage of Cloud Workload Security Fargate task usage by tag(s). + format: double + type: number + cws_fargate_task_usage: + description: The Cloud Workload Security Fargate task usage by tag(s). + format: double + type: number + cws_hosts_percentage: + description: The percentage of Cloud Workload Security host usage by tag(s). + format: double + type: number + cws_hosts_usage: + description: The Cloud Workload Security host usage by tag(s). + format: double + type: number + data_jobs_monitoring_usage: + description: The Data Jobs Monitoring usage by tag(s). + format: double + type: number + data_stream_monitoring_usage: + description: The Data Stream Monitoring usage by tag(s). + format: double + type: number + dbm_hosts_percentage: + description: The percentage of Database Monitoring host usage by tag(s). + format: double + type: number + dbm_hosts_usage: + description: The Database Monitoring host usage by tag(s). + format: double + type: number + dbm_queries_percentage: + description: The percentage of Database Monitoring queries usage by tag(s). + format: double + type: number + dbm_queries_usage: + description: The Database Monitoring queries usage by tag(s). + format: double + type: number + error_tracking_percentage: + description: The percentage of error tracking events usage by tag(s). + format: double + type: number + error_tracking_usage: + description: The error tracking events usage by tag(s). + format: double + type: number + estimated_indexed_spans_percentage: + description: The percentage of estimated indexed spans usage by tag(s). + format: double + type: number + estimated_indexed_spans_usage: + description: The estimated indexed spans usage by tag(s). + format: double + type: number + estimated_ingested_spans_percentage: + description: The percentage of estimated ingested spans usage by tag(s). + format: double + type: number + estimated_ingested_spans_usage: + description: The estimated ingested spans usage by tag(s). + format: double + type: number + fargate_percentage: + description: The percentage of Fargate usage by tags. + format: double + type: number + fargate_usage: + description: The Fargate usage by tags. + format: double + type: number + flex_logs_starter_percentage: + description: The percentage of Flex Logs Starter usage by tags. + format: double + type: number + flex_logs_starter_usage: + description: The Flex Logs Starter usage by tags. + format: double + type: number + flex_stored_logs_percentage: + description: The percentage of Flex Stored Logs usage by tags. + format: double + type: number + flex_stored_logs_usage: + description: The Flex Stored Logs usage by tags. + format: double + type: number + functions_percentage: + description: The percentage of Lambda function usage by tag(s). + format: double + type: number + functions_usage: + description: The Lambda function usage by tag(s). + format: double + type: number + incident_management_monthly_active_users_percentage: + description: The percentage of Incident Management monthly active users usage by tag(s). + format: double + type: number + incident_management_monthly_active_users_usage: + description: The Incident Management monthly active users usage by tag(s). + format: double + type: number + indexed_spans_percentage: + description: The percentage of APM Indexed Spans usage by tag(s). + format: double + type: number + indexed_spans_usage: + description: The total APM Indexed Spans usage by tag(s). + format: double + type: number + infra_host_basic_percentage: + description: The percentage of infrastructure host Basic tier usage by tag(s). + format: double + type: number + infra_host_basic_usage: + description: The infrastructure host Basic tier usage by tag(s). + format: double + type: number + infra_host_percentage: + description: The percentage of infrastructure host usage by tag(s). + format: double + type: number + infra_host_usage: + description: The infrastructure host usage by tag(s). + format: double + type: number + ingested_logs_bytes_percentage: + description: The percentage of Ingested Logs usage by tag(s). + format: double + type: number + ingested_logs_bytes_usage: + description: The total Ingested Logs usage by tag(s). + format: double + type: number + ingested_spans_bytes_percentage: + description: The percentage of APM Ingested Spans usage by tag(s). + format: double + type: number + ingested_spans_bytes_usage: + description: The total APM Ingested Spans usage by tag(s). + format: double + type: number + invocations_percentage: + description: The percentage of Lambda invocation usage by tag(s). + format: double + type: number + invocations_usage: + description: The Lambda invocation usage by tag(s). + format: double + type: number + lambda_traced_invocations_percentage: + description: The percentage of Serverless APM usage by tag(s). + format: double + type: number + lambda_traced_invocations_usage: + description: The Serverless APM usage by tag(s). + format: double + type: number + llm_observability_percentage: + description: The percentage of Agent Observability usage by tag(s). + format: double + type: number + llm_observability_usage: + description: The Agent Observability usage by tag(s). + format: double + type: number + llm_spans_percentage: + description: The percentage of LLM Spans usage by tag(s). + format: double + type: number + llm_spans_usage: + description: The LLM Spans usage by tag(s). + format: double + type: number + logs_indexed_15day_percentage: + description: The percentage of Indexed Logs (15-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_15day_usage: + description: The total Indexed Logs (15-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_180day_percentage: + description: The percentage of Indexed Logs (180-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_180day_usage: + description: The total Indexed Logs (180-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_1day_percentage: + description: The percentage of Indexed Logs (1-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_1day_usage: + description: The total Indexed Logs (1-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_30day_percentage: + description: The percentage of Indexed Logs (30-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_30day_usage: + description: The total Indexed Logs (30-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_360day_percentage: + description: The percentage of Indexed Logs (360-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_360day_usage: + description: The total Indexed Logs (360-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_3day_percentage: + description: The percentage of Indexed Logs (3-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_3day_usage: + description: The total Indexed Logs (3-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_45day_percentage: + description: The percentage of Indexed Logs (45-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_45day_usage: + description: The total Indexed Logs (45-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_60day_percentage: + description: The percentage of Indexed Logs (60-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_60day_usage: + description: The total Indexed Logs (60-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_7day_percentage: + description: The percentage of Indexed Logs (7-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_7day_usage: + description: The total Indexed Logs (7-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_90day_percentage: + description: The percentage of Indexed Logs (90-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_90day_usage: + description: The total Indexed Logs (90-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_custom_retention_percentage: + description: The percentage of Indexed Logs (Custom Retention) usage by tag(s). + format: double + type: number + logs_indexed_custom_retention_usage: + description: The total Indexed Logs (Custom Retention) usage by tag(s). + format: double + type: number + mobile_app_testing_percentage: + description: The percentage of Synthetic mobile application test usage by tag(s). + format: double + type: number + mobile_app_testing_usage: + description: The Synthetic mobile application test usage by tag(s). + format: double + type: number + ndm_netflow_percentage: + description: The percentage of Network Device Monitoring NetFlow usage by tag(s). + format: double + type: number + ndm_netflow_usage: + description: The Network Device Monitoring NetFlow usage by tag(s). + format: double + type: number + network_device_wireless_percentage: + description: The percentage of network device wireless usage by tag(s). + format: double + type: number + network_device_wireless_usage: + description: The network device wireless usage by tag(s). + format: double + type: number + npm_host_percentage: + description: The percentage of network host usage by tag(s). + format: double + type: number + npm_host_usage: + description: The network host usage by tag(s). + format: double + type: number + obs_pipeline_bytes_percentage: + description: The percentage of observability pipeline bytes usage by tag(s). + format: double + type: number + obs_pipeline_bytes_usage: + description: The observability pipeline bytes usage by tag(s). + format: double + type: number + obs_pipelines_vcpu_percentage: + description: The percentage of observability pipeline per core usage by tag(s). + format: double + type: number + obs_pipelines_vcpu_usage: + description: The observability pipeline per core usage by tag(s). + format: double + type: number + online_archive_percentage: + description: The percentage of online archive usage by tag(s). + format: double + type: number + online_archive_usage: + description: The online archive usage by tag(s). + format: double + type: number + product_analytics_session_percentage: + description: The percentage of Product Analytics session usage by tag(s). + format: double + type: number + product_analytics_session_usage: + description: The Product Analytics session usage by tag(s). + format: double + type: number + profiled_container_percentage: + description: The percentage of profiled container usage by tag(s). + format: double + type: number + profiled_container_usage: + description: The profiled container usage by tag(s). + format: double + type: number + profiled_fargate_percentage: + description: The percentage of profiled Fargate task usage by tag(s). + format: double + type: number + profiled_fargate_usage: + description: The profiled Fargate task usage by tag(s). + format: double + type: number + profiled_host_percentage: + description: The percentage of profiled hosts usage by tag(s). + format: double + type: number + profiled_host_usage: + description: The profiled hosts usage by tag(s). + format: double + type: number + published_app_percentage: + description: The percentage of published application usage by tag(s). + format: double + type: number + published_app_usage: + description: The published application usage by tag(s). + format: double + type: number + rum_browser_mobile_sessions_percentage: + description: The percentage of RUM Browser and Mobile usage by tag(s). + format: double + type: number + rum_browser_mobile_sessions_usage: + description: The total RUM Browser and Mobile usage by tag(s). + format: double + type: number + rum_ingested_percentage: + description: The percentage of RUM Ingested usage by tag(s). + format: double + type: number + rum_ingested_usage: + description: The total RUM Ingested usage by tag(s). + format: double + type: number + rum_investigate_percentage: + description: The percentage of RUM Investigate usage by tag(s). + format: double + type: number + rum_investigate_usage: + description: The total RUM Investigate usage by tag(s). + format: double + type: number + rum_replay_sessions_percentage: + description: The percentage of RUM Session Replay usage by tag(s). + format: double + type: number + rum_replay_sessions_usage: + description: The total RUM Session Replay usage by tag(s). + format: double + type: number + rum_session_replay_add_on_percentage: + description: The percentage of RUM Session Replay Add-On usage by tag(s). + format: double + type: number + rum_session_replay_add_on_usage: + description: The total RUM Session Replay Add-On usage by tag(s). + format: double + type: number + sca_fargate_percentage: + description: The percentage of Software Composition Analysis Fargate task usage by tag(s). + format: double + type: number + sca_fargate_usage: + description: The total Software Composition Analysis Fargate task usage by tag(s). + format: double + type: number + sds_scanned_bytes_percentage: + description: The percentage of Sensitive Data Scanner usage by tag(s). + format: double + type: number + sds_scanned_bytes_usage: + description: The total Sensitive Data Scanner usage by tag(s). + format: double + type: number + serverless_apps_apm_percentage: + description: The percentage of Serverless Apps APM usage by tag(s). + format: double + type: number + serverless_apps_apm_usage: + description: The total Serverless Apps APM usage by tag(s). + format: double + type: number + serverless_apps_percentage: + description: The percentage of Serverless Apps usage by tag(s). + format: double + type: number + serverless_apps_usage: + description: The total Serverless Apps usage by tag(s). + format: double + type: number + siem_12mo_retention_percentage: + description: The percentage of Cloud SIEM Indexed Logs (12-month retention) usage by tag(s). + format: double + type: number + siem_12mo_retention_usage: + description: The Cloud SIEM Indexed Logs (12-month retention) usage by tag(s). + format: double + type: number + siem_6mo_retention_percentage: + description: The percentage of Cloud SIEM Indexed Logs (6-month retention) usage by tag(s). + format: double + type: number + siem_6mo_retention_usage: + description: The Cloud SIEM Indexed Logs (6-month retention) usage by tag(s). + format: double + type: number + siem_analyzed_logs_add_on_percentage: + description: The percentage of log events analyzed by Cloud SIEM usage by tag(s). + format: double + type: number + siem_analyzed_logs_add_on_usage: + description: The log events analyzed by Cloud SIEM usage by tag(s). + format: double + type: number + siem_ingested_bytes_percentage: + description: The percentage of SIEM usage by tag(s). + format: double + type: number + siem_ingested_bytes_usage: + description: The total SIEM usage by tag(s). + format: double + type: number + snmp_percentage: + description: The percentage of network device usage by tag(s). + format: double + type: number + snmp_usage: + description: The network device usage by tag(s). + format: double + type: number + universal_service_monitoring_percentage: + description: The percentage of universal service monitoring usage by tag(s). + format: double + type: number + universal_service_monitoring_usage: + description: The universal service monitoring usage by tag(s). + format: double + type: number + vuln_management_hosts_percentage: + description: The percentage of Application Vulnerability Management usage by tag(s). + format: double + type: number + vuln_management_hosts_usage: + description: The Application Vulnerability Management usage by tag(s). + format: double + type: number + workflow_executions_percentage: + description: The percentage of workflow executions usage by tag(s). + format: double + type: number + workflow_executions_usage: + description: The total workflow executions usage by tag(s). + format: double + type: number + type: object + NoteWidgetDefinition: + description: The notes and links widget is similar to free text widget, but allows for more formatting options. + properties: + background_color: + description: Background color of the note. + type: string + content: + description: Content of the note. + example: "" + type: string + font_size: + description: Size of the text. + type: string + has_padding: + default: true + description: Whether to add padding or not. + type: boolean + show_tick: + description: Whether to show a tick or not. + type: boolean + text_align: + $ref: "#/components/schemas/WidgetTextAlign" + tick_edge: + $ref: "#/components/schemas/WidgetTickEdge" + tick_pos: + description: Where to position the tick on an edge. + type: string + type: + $ref: "#/components/schemas/NoteWidgetDefinitionType" + vertical_align: + $ref: "#/components/schemas/WidgetVerticalAlign" + required: + - type + - content + type: object + NoteWidgetDefinitionType: + default: note + description: Type of the note widget. + enum: + - note + example: note + type: string + x-enum-varnames: + - NOTE + NotebookAbsoluteTime: + description: Absolute timeframe. + example: + end: "2021-02-24T20:18:28+00:00" + start: "2021-02-24T19:18:28+00:00" + properties: + end: + description: The end time. + example: "2021-02-24T20:18:28+00:00" + format: date-time + type: string + live: + description: Indicates whether the timeframe should be shifted to end at the current time. + type: boolean + start: + description: The start time. + example: "2021-02-24T19:18:28+00:00" + format: date-time + type: string + required: + - start + - end + type: object + NotebookAuthor: + description: Attributes of user object returned by the API. + properties: + created_at: + description: Creation time of the user. + format: date-time + type: string + disabled: + description: Whether the user is disabled. + type: boolean + email: + description: Email of the user. + type: string + handle: + description: Handle of the user. + type: string + icon: + description: URL of the user's icon. + type: string + name: + description: Name of the user. + nullable: true + type: string + status: + description: Status of the user. + type: string + title: + description: Title of the user. + nullable: true + type: string + verified: + description: Whether the user is verified. + type: boolean + type: object + NotebookCellCreateRequest: + additionalProperties: false + description: The description of a notebook cell create request. + properties: + attributes: + $ref: "#/components/schemas/NotebookCellCreateRequestAttributes" + type: + $ref: "#/components/schemas/NotebookCellResourceType" + required: + - attributes + - type + type: object + NotebookCellCreateRequestAttributes: + description: |- + The attributes of a notebook cell in create cell request. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, + `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) + example: {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null} + oneOf: + - $ref: "#/components/schemas/NotebookMarkdownCellAttributes" + - $ref: "#/components/schemas/NotebookTimeseriesCellAttributes" + - $ref: "#/components/schemas/NotebookToplistCellAttributes" + - $ref: "#/components/schemas/NotebookHeatMapCellAttributes" + - $ref: "#/components/schemas/NotebookDistributionCellAttributes" + - $ref: "#/components/schemas/NotebookLogStreamCellAttributes" + NotebookCellResourceType: + default: notebook_cells + description: Type of the Notebook Cell resource. + enum: + - notebook_cells + example: notebook_cells + type: string + x-enum-varnames: + - NOTEBOOK_CELLS + NotebookCellResponse: + description: The description of a notebook cell response. + properties: + attributes: + $ref: "#/components/schemas/NotebookCellResponseAttributes" + id: + description: Notebook cell ID. + example: "abcd1234" + type: string + type: + $ref: "#/components/schemas/NotebookCellResourceType" + required: + - id + - type + - attributes + type: object + NotebookCellResponseAttributes: + description: |- + The attributes of a notebook cell response. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, + `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) + example: {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null} + oneOf: + - $ref: "#/components/schemas/NotebookMarkdownCellAttributes" + - $ref: "#/components/schemas/NotebookTimeseriesCellAttributes" + - $ref: "#/components/schemas/NotebookToplistCellAttributes" + - $ref: "#/components/schemas/NotebookHeatMapCellAttributes" + - $ref: "#/components/schemas/NotebookDistributionCellAttributes" + - $ref: "#/components/schemas/NotebookLogStreamCellAttributes" + NotebookCellTime: + description: Timeframe for the notebook cell. When 'null', the notebook global time is used. + nullable: true + oneOf: + - $ref: "#/components/schemas/NotebookRelativeTime" + - $ref: "#/components/schemas/NotebookAbsoluteTime" + type: object + NotebookCellUpdateRequest: + description: The description of a notebook cell update request. + properties: + attributes: + $ref: "#/components/schemas/NotebookCellUpdateRequestAttributes" + id: + description: Notebook cell ID. + example: "abcd1234" + type: string + type: + $ref: "#/components/schemas/NotebookCellResourceType" + required: + - id + - type + - attributes + type: object + NotebookCellUpdateRequestAttributes: + description: |- + The attributes of a notebook cell in update cell request. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, + `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) + example: {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null} + oneOf: + - $ref: "#/components/schemas/NotebookMarkdownCellAttributes" + - $ref: "#/components/schemas/NotebookTimeseriesCellAttributes" + - $ref: "#/components/schemas/NotebookToplistCellAttributes" + - $ref: "#/components/schemas/NotebookHeatMapCellAttributes" + - $ref: "#/components/schemas/NotebookDistributionCellAttributes" + - $ref: "#/components/schemas/NotebookLogStreamCellAttributes" + NotebookCreateData: + description: The data for a notebook create request. + properties: + attributes: + $ref: "#/components/schemas/NotebookCreateDataAttributes" + type: + $ref: "#/components/schemas/NotebookResourceType" + required: + - type + - attributes + type: object + NotebookCreateDataAttributes: + description: The data attributes of a notebook. + properties: + cells: + description: List of cells to display in the notebook. + example: [{"attributes": {"definition": {"text": "## Some test markdown\n\n```\nvar x, y;\nx = 5;\ny = 6;\n```", "type": "markdown"}}, "type": "notebook_cells"}, {"attributes": {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null}, "type": "notebook_cells"}] + items: + $ref: "#/components/schemas/NotebookCellCreateRequest" + type: array + metadata: + $ref: "#/components/schemas/NotebookMetadata" + name: + description: The name of the notebook. + example: "Example Notebook" + maxLength: 80 + minLength: 0 + type: string + status: + $ref: "#/components/schemas/NotebookStatus" + template_variables: + description: List of template variables for this notebook. + items: + $ref: "#/components/schemas/NotebookTemplateVariable" + nullable: true + type: array + time: + $ref: "#/components/schemas/NotebookGlobalTime" + required: + - name + - cells + - time + type: object + NotebookCreateRequest: + description: The description of a notebook create request. + properties: + data: + $ref: "#/components/schemas/NotebookCreateData" + required: + - data + type: object + NotebookDistributionCellAttributes: + description: The attributes of a notebook `distribution` cell. + properties: + definition: + $ref: "#/components/schemas/DistributionWidgetDefinition" + graph_size: + $ref: "#/components/schemas/NotebookGraphSize" + split_by: + $ref: "#/components/schemas/NotebookSplitBy" + time: + $ref: "#/components/schemas/NotebookCellTime" + required: + - definition + type: object + NotebookGlobalTime: + description: Notebook global timeframe. + example: + live_span: 1h + oneOf: + - $ref: "#/components/schemas/NotebookRelativeTime" + - $ref: "#/components/schemas/NotebookAbsoluteTime" + NotebookGraphSize: + description: The size of the graph. + enum: + - xs + - s + - m + - l + - xl + example: "m" + type: string + x-enum-varnames: + - EXTRA_SMALL + - SMALL + - MEDIUM + - LARGE + - EXTRA_LARGE + NotebookHeatMapCellAttributes: + description: The attributes of a notebook `heatmap` cell. + properties: + definition: + $ref: "#/components/schemas/HeatMapWidgetDefinition" + graph_size: + $ref: "#/components/schemas/NotebookGraphSize" + split_by: + $ref: "#/components/schemas/NotebookSplitBy" + time: + $ref: "#/components/schemas/NotebookCellTime" + required: + - definition + type: object + NotebookLogStreamCellAttributes: + description: The attributes of a notebook `log_stream` cell. + properties: + definition: + $ref: "#/components/schemas/LogStreamWidgetDefinition" + graph_size: + $ref: "#/components/schemas/NotebookGraphSize" + time: + $ref: "#/components/schemas/NotebookCellTime" + required: + - definition + type: object + NotebookMarkdownCellAttributes: + description: The attributes of a notebook `markdown` cell. + properties: + definition: + $ref: "#/components/schemas/NotebookMarkdownCellDefinition" + required: + - definition + type: object + NotebookMarkdownCellDefinition: + description: >- + Text in a notebook is formatted with [Markdown](https://daringfireball.net/projects/markdown/), which enables the use of headings, subheadings, links, images, lists, and code blocks. + properties: + text: + description: The markdown content. + example: "# Example Header \nexample content" + type: string + type: + $ref: "#/components/schemas/NotebookMarkdownCellDefinitionType" + required: + - type + - text + type: object + NotebookMarkdownCellDefinitionType: + default: markdown + description: Type of the markdown cell. + enum: + - markdown + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + NotebookMetadata: + description: Metadata associated with the notebook. + properties: + is_template: + default: false + description: Whether or not the notebook is a template. + example: false + type: boolean + take_snapshots: + default: false + description: Whether or not the notebook takes snapshot image backups of the notebook's fixed-time graphs. + example: false + type: boolean + type: + $ref: "#/components/schemas/NotebookMetadataType" + type: object + NotebookMetadataType: + description: Metadata type of the notebook. + enum: + - postmortem + - runbook + - investigation + - documentation + - report + example: investigation + nullable: true + type: string + x-enum-varnames: + - POSTMORTEM + - RUNBOOK + - INVESTIGATION + - DOCUMENTATION + - REPORT + NotebookRelativeTime: + description: Relative timeframe. + example: + live_span: 1h + nullable: true + properties: + live_span: + $ref: "#/components/schemas/WidgetLiveSpan" + required: + - live_span + type: object + NotebookResourceType: + default: notebooks + description: Type of the Notebook resource. + enum: + - notebooks + example: notebooks + type: string + x-enum-varnames: + - NOTEBOOKS + NotebookResponse: + description: The description of a notebook response. + properties: + data: + $ref: "#/components/schemas/NotebookResponseData" + type: object + NotebookResponseData: + description: The data for a notebook. + properties: + attributes: + $ref: "#/components/schemas/NotebookResponseDataAttributes" + id: + description: Unique notebook ID, assigned when you create the notebook. + example: 123456 + format: int64 + readOnly: true + type: integer + type: + $ref: "#/components/schemas/NotebookResourceType" + required: + - id + - type + - attributes + type: object + NotebookResponseDataAttributes: + description: The attributes of a notebook. + properties: + author: + $ref: "#/components/schemas/NotebookAuthor" + cells: + description: List of cells to display in the notebook. + example: [{"attributes": {"definition": {"text": "## Some test markdown\n\n```\nvar x, y;\nx = 5;\ny = 6;\n```", "type": "markdown"}}, "id": "bzbycoya", "type": "notebook_cells"}, {"attributes": {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null}, "id": "9k6bc6xc", "type": "notebook_cells"}] + items: + $ref: "#/components/schemas/NotebookCellResponse" + type: array + created: + description: UTC time stamp for when the notebook was created. + example: "2021-02-24T23:14:15.173964+00:00" + format: date-time + readOnly: true + type: string + metadata: + $ref: "#/components/schemas/NotebookMetadata" + modified: + description: UTC time stamp for when the notebook was last modified. + example: "2021-02-24T23:15:23.274966+00:00" + format: date-time + readOnly: true + type: string + name: + description: The name of the notebook. + example: "Example Notebook" + maxLength: 80 + minLength: 0 + type: string + status: + $ref: "#/components/schemas/NotebookStatus" + template_variables: + description: List of template variables for this notebook. + items: + $ref: "#/components/schemas/NotebookTemplateVariable" + nullable: true + type: array + time: + $ref: "#/components/schemas/NotebookGlobalTime" + required: + - cells + - time + - name + type: object + NotebookSplitBy: + description: Object describing how to split the graph to display multiple visualizations per request. + example: {"keys": [], "tags": []} + properties: + keys: + description: Keys to split on. + example: + - environment + items: + description: A key to split on. + example: environment + type: string + type: array + tags: + description: Tags to split on. + example: + - environment:staging + items: + description: A tag to split on. + example: environment:staging + type: string + type: array + required: + - keys + - tags + type: object + NotebookStatus: + default: published + description: Publication status of the notebook. For now, always "published". + enum: + - published + example: published + type: string + x-enum-varnames: + - PUBLISHED + NotebookTemplateVariable: + additionalProperties: false + description: Notebook template variable. + properties: + available_values: + description: The list of values that the template variable drop-down is limited to. + example: ["my-host", "host1", "host2"] + items: + description: Template variable value. + minLength: 1 + type: string + nullable: true + type: array + uniqueItems: true + available_values_query: + $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQuery" + data_source_mappings: + additionalProperties: + description: The value for the given data source. + type: string + description: Mapping of data source names to template variable values. + type: object + default: + deprecated: true + description: |- + (deprecated) The default value for the template variable on notebook load. + Cannot be used in conjunction with `defaults`. + example: my-host + nullable: true + type: string + defaults: + description: One or many default values for the template variable. Cannot be used in conjunction with `default`. + example: ["my-host-1", "my-host-2"] + items: + description: A default value for the template variable. + minLength: 1 + type: string + type: array + uniqueItems: true + name: + description: The name of the variable. + example: host1 + type: string + placement: + description: The placement of the template variable in the notebook. + example: global + type: string + prefix: + description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down. + example: host + nullable: true + type: string + type: + description: The type of the template variable. + example: tag + type: string + required: + - name + type: object + NotebookTemplateVariableAvailableValuesQuery: + description: Query used to dynamically populate the list of available values for the template variable. + oneOf: + - $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQueryLogRumSpans" + - $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQueryMetrics" + NotebookTemplateVariableAvailableValuesQueryGroupBy: + additionalProperties: false + description: A group-by facet for an available values query. + properties: + facet: + description: The facet name to group by. + example: host + type: string + required: + - facet + type: object + NotebookTemplateVariableAvailableValuesQueryLogRumSpans: + additionalProperties: false + description: Available values query for logs, RUM, or spans data sources. + properties: + data_source: + description: The data source for the query. Must be one of `logs`, `rum`, or `spans`. + example: logs + type: string + group_by: + description: Group-by fields for the query. + items: + $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQueryGroupBy" + type: array + search: + $ref: "#/components/schemas/NotebookTemplateVariableAvailableValuesQuerySearch" + required: + - data_source + - search + - group_by + type: object + NotebookTemplateVariableAvailableValuesQueryMetrics: + additionalProperties: false + description: Available values query for the metrics data source. + properties: + data_source: + description: The data source for the query. Must be `metrics`. + example: metrics + type: string + query: + description: The metrics query string. + example: "avg:system.cpu.user{*} by {host}" + type: string + required: + - data_source + - query + type: object + NotebookTemplateVariableAvailableValuesQuerySearch: + additionalProperties: false + description: Search parameters for an available values query. + properties: + query: + description: The search query string. + example: "service:web" + type: string + required: + - query + type: object + NotebookTimeseriesCellAttributes: + description: The attributes of a notebook `timeseries` cell. + properties: + definition: + $ref: "#/components/schemas/TimeseriesWidgetDefinition" + graph_size: + $ref: "#/components/schemas/NotebookGraphSize" + split_by: + $ref: "#/components/schemas/NotebookSplitBy" + time: + $ref: "#/components/schemas/NotebookCellTime" + required: + - definition + type: object + NotebookToplistCellAttributes: + description: The attributes of a notebook `toplist` cell. + properties: + definition: + $ref: "#/components/schemas/ToplistWidgetDefinition" + graph_size: + $ref: "#/components/schemas/NotebookGraphSize" + split_by: + $ref: "#/components/schemas/NotebookSplitBy" + time: + $ref: "#/components/schemas/NotebookCellTime" + required: + - definition + type: object + NotebookUpdateCell: + description: |- + Updating a notebook can either insert new cell(s) or update existing cell(s) by including the cell `id`. + To delete existing cell(s), simply omit it from the list of cells. + oneOf: + - $ref: "#/components/schemas/NotebookCellCreateRequest" + - $ref: "#/components/schemas/NotebookCellUpdateRequest" + NotebookUpdateData: + description: The data for a notebook update request. + properties: + attributes: + $ref: "#/components/schemas/NotebookUpdateDataAttributes" + type: + $ref: "#/components/schemas/NotebookResourceType" + required: + - type + - attributes + type: object + NotebookUpdateDataAttributes: + description: The data attributes of a notebook. + properties: + cells: + description: List of cells to display in the notebook. + example: [{"attributes": {"definition": {"text": "## Some test markdown\n\n```\nvar x, y;\nx = 5;\ny = 6;\n```", "type": "markdown"}}, "id": "bzbycoya", "type": "notebook_cells"}, {"attributes": {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null}, "id": "9k6bc6xc", "type": "notebook_cells"}] + items: + $ref: "#/components/schemas/NotebookUpdateCell" + type: array + metadata: + $ref: "#/components/schemas/NotebookMetadata" + name: + description: The name of the notebook. + example: "Example Notebook" + maxLength: 80 + minLength: 0 + type: string + status: + $ref: "#/components/schemas/NotebookStatus" + template_variables: + description: List of template variables for this notebook. + items: + $ref: "#/components/schemas/NotebookTemplateVariable" + nullable: true + type: array + time: + $ref: "#/components/schemas/NotebookGlobalTime" + required: + - name + - cells + - time + type: object + NotebookUpdateRequest: + description: The description of a notebook update request. + properties: + data: + $ref: "#/components/schemas/NotebookUpdateData" + required: + - data + type: object + NotebooksResponse: + description: Notebooks get all response. + properties: + data: + description: List of notebook definitions. + items: + $ref: "#/components/schemas/NotebooksResponseData" + type: array + meta: + $ref: "#/components/schemas/NotebooksResponseMeta" + type: object + NotebooksResponseData: + description: The data for a notebook in get all response. + properties: + attributes: + $ref: "#/components/schemas/NotebooksResponseDataAttributes" + id: + description: Unique notebook ID, assigned when you create the notebook. + example: 123456 + format: int64 + readOnly: true + type: integer + type: + $ref: "#/components/schemas/NotebookResourceType" + required: + - id + - type + - attributes + type: object + NotebooksResponseDataAttributes: + description: The attributes of a notebook in get all response. + properties: + author: + $ref: "#/components/schemas/NotebookAuthor" + cells: + description: List of cells to display in the notebook. + items: + $ref: "#/components/schemas/NotebookCellResponse" + type: array + created: + description: UTC time stamp for when the notebook was created. + example: "2021-02-24T23:14:15.173964+00:00" + format: date-time + readOnly: true + type: string + metadata: + $ref: "#/components/schemas/NotebookMetadata" + modified: + description: UTC time stamp for when the notebook was last modified. + example: "2021-02-24T23:15:23.274966+00:00" + format: date-time + readOnly: true + type: string + name: + description: The name of the notebook. + example: "Example Notebook" + maxLength: 80 + minLength: 0 + type: string + status: + $ref: "#/components/schemas/NotebookStatus" + template_variables: + description: List of template variables for this notebook. + items: + $ref: "#/components/schemas/NotebookTemplateVariable" + nullable: true + type: array + time: + $ref: "#/components/schemas/NotebookGlobalTime" + required: + - name + type: object + NotebooksResponseMeta: + description: Searches metadata returned by the API. + properties: + page: + $ref: "#/components/schemas/NotebooksResponsePage" + type: object + NotebooksResponsePage: + description: Pagination metadata returned by the API. + properties: + total_count: + description: >- + The total number of notebooks that would be returned if the request was not filtered by `start` and `count` parameters. + format: int64 + type: integer + total_filtered_count: + description: The total number of notebooks returned. + format: int64 + type: integer + type: object + NotifyEndState: + description: A notification end state. + enum: + - alert + - no data + - warn + example: alert + type: string + x-enum-varnames: + - ALERT + - NO_DATA + - WARN + NotifyEndStates: + default: ["alert", "no data", "warn"] + description: States for which `notify_end_types` sends out notifications for. + example: ["alert", "no data", "warn"] + items: + $ref: "#/components/schemas/NotifyEndState" + type: array + NotifyEndType: + description: A notification end type. + enum: + - canceled + - expired + example: expired + type: string + x-enum-varnames: + - CANCELED + - EXPIRED + NotifyEndTypes: + default: ["expired"] + description: |- + If set, notifies if a monitor is in an alert-worthy state (`ALERT`, `WARNING`, or `NO DATA`) + when this downtime expires or is canceled. Applied to monitors that change states during + the downtime (such as from `OK` to `ALERT`, `WARNING`, or `NO DATA`), and to monitors that + already have an alert-worthy state when downtime begins. + example: ["canceled", "expired"] + items: + $ref: "#/components/schemas/NotifyEndType" + type: array + NumberFormatUnit: + description: Number format unit. + oneOf: + - $ref: "#/components/schemas/NumberFormatUnitCanonical" + - $ref: "#/components/schemas/NumberFormatUnitCustom" + NumberFormatUnitCanonical: + description: Canonical unit. + properties: + per_unit_name: + description: The name of the unit per item. + example: "bytes" + type: string + type: + $ref: "#/components/schemas/NumberFormatUnitScaleType" + unit_name: + description: The name of the unit. + example: "bytes" + type: string + type: object + NumberFormatUnitCustom: + description: Custom unit. + properties: + label: + description: The label for the custom unit. + maxLength: 12 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/NumberFormatUnitCustomType" + type: object + NumberFormatUnitCustomType: + description: The type of custom unit. + enum: + - custom_unit_label + type: string + x-enum-varnames: + - CUSTOM_UNIT_LABEL + NumberFormatUnitScale: + description: The definition of `NumberFormatUnitScale` object. + nullable: true + properties: + type: + $ref: "#/components/schemas/NumberFormatUnitScaleType" + unit_name: + description: The name of the unit. + example: "bytes" + type: string + type: object + NumberFormatUnitScaleType: + description: The type of unit scale. + enum: + - canonical_unit + example: canonical_unit + type: string + x-enum-varnames: + - CANONICAL_UNIT + OnMissingDataOption: + description: |- + Controls how groups or monitors are treated if an evaluation does not return any data points. + The default option results in different behavior depending on the monitor query type. + For monitors using Count queries, an empty monitor evaluation is treated as 0 and is compared to the threshold conditions. + For monitors using any query type other than Count, for example Gauge, Measure, or Rate, the monitor shows the last known status. + This option is available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors. + It is also required for metric monitors that use `scheduling_options.custom_schedule`. + enum: + - "default" + - "show_no_data" + - "show_and_notify_no_data" + - "resolve" + type: string + x-enum-varnames: + - DEFAULT + - SHOW_NO_DATA + - SHOW_AND_NOTIFY_NO_DATA + - RESOLVE + OrgDowngradedResponse: + description: Status of downgrade + properties: + message: + description: Information pertaining to the downgraded child organization. + type: string + type: object + Organization: + description: Create, edit, and manage organizations. + properties: + billing: + $ref: "#/components/schemas/OrganizationBilling" + created: + description: Date of the organization creation. + example: "2019-09-26T17:28:28Z" + readOnly: true + type: string + description: + description: Description of the organization. + example: "some description" + type: string + name: + description: The name of the child organization, limited to 32 characters. + example: "New child org" + maxLength: 32 + type: string + public_id: + description: The `public_id` of the organization you are operating within. + example: "abcdef12345" + type: string + settings: + $ref: "#/components/schemas/OrganizationSettings" + subscription: + $ref: "#/components/schemas/OrganizationSubscription" + trial: + description: Only available for MSP customers. Allows child organizations to be created on a trial plan. + example: false + type: boolean + type: object + OrganizationBilling: + deprecated: true + description: A JSON array of billing type. + example: {"type": "parent_billing"} + properties: + type: + description: The type of billing. Only `parent_billing` is supported. + type: string + type: object + OrganizationCreateBody: + description: Object describing an organization to create. + properties: + billing: + $ref: "#/components/schemas/OrganizationBilling" + name: + description: The name of the new child-organization, limited to 32 characters. + example: "New child org" + maxLength: 32 + type: string + subscription: + $ref: "#/components/schemas/OrganizationSubscription" + required: + - name + type: object + OrganizationCreateResponse: + description: Response object for an organization creation. + properties: + api_key: + $ref: "#/components/schemas/ApiKey" + application_key: + $ref: "#/components/schemas/ApplicationKey" + org: + $ref: "#/components/schemas/Organization" + user: + $ref: "#/components/schemas/User" + type: object + OrganizationListResponse: + description: Response with the list of organizations. + properties: + orgs: + description: Array of organization objects. + items: + $ref: "#/components/schemas/Organization" + type: array + type: object + OrganizationResponse: + description: Response with an organization. + properties: + org: + $ref: "#/components/schemas/Organization" + type: object + OrganizationSettings: + description: A JSON array of settings. + properties: + private_widget_share: + description: Whether or not the organization users can share widgets outside of Datadog. + example: false + type: boolean + saml: + $ref: "#/components/schemas/OrganizationSettingsSaml" + saml_autocreate_access_role: + $ref: "#/components/schemas/AccessRole" + saml_autocreate_users_domains: + $ref: "#/components/schemas/OrganizationSettingsSamlAutocreateUsersDomains" + saml_can_be_enabled: + description: Whether or not SAML can be enabled for this organization. + example: false + type: boolean + saml_idp_endpoint: + description: Identity provider endpoint for SAML authentication. + example: "https://my.saml.endpoint" + type: string + saml_idp_initiated_login: + $ref: "#/components/schemas/OrganizationSettingsSamlIdpInitiatedLogin" + saml_idp_metadata_uploaded: + description: Whether or not a SAML identity provider metadata file was provided to the Datadog organization. + example: false + type: boolean + saml_login_url: + description: URL for SAML logging. + example: "https://my.saml.login.url" + type: string + saml_strict_mode: + $ref: "#/components/schemas/OrganizationSettingsSamlStrictMode" + type: object + OrganizationSettingsSaml: + description: |- + Set the boolean property enabled to enable or disable single sign on with SAML. + See the SAML documentation for more information about all SAML settings. + properties: + enabled: + description: Whether or not SAML is enabled for this organization. + example: false + type: boolean + type: object + OrganizationSettingsSamlAutocreateUsersDomains: + description: Has two properties, `enabled` (boolean) and `domains`, which is a list of domains without the @ symbol. + properties: + domains: + description: List of domains where the SAML automated user creation is enabled. + items: + description: Domain to automate user creation from. + example: "example.com" + type: string + type: array + enabled: + description: Whether or not the automated user creation based on SAML domain is enabled. + example: false + type: boolean + type: object + OrganizationSettingsSamlIdpInitiatedLogin: + description: Has one property enabled (boolean). + properties: + enabled: + description: |- + Whether SAML IdP initiated login is enabled, learn more + in the [SAML documentation](https://docs.datadoghq.com/account_management/saml/#idp-initiated-login). + example: false + type: boolean + type: object + OrganizationSettingsSamlStrictMode: + description: Has one property enabled (boolean). + properties: + enabled: + description: |- + Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML. + Learn more on the [SAML Strict documentation](https://docs.datadoghq.com/account_management/saml/#saml-strict). + example: false + type: boolean + type: object + OrganizationSubscription: + deprecated: true + description: Subscription definition. + example: {"type": "pro"} + properties: + type: + description: The subscription type. Types available are `trial`, `free`, and `pro`. + type: string + type: object + PagerDutyService: + description: |- + The PagerDuty service that is available for integration with Datadog. + properties: + service_key: + description: Your service key in PagerDuty. + example: "" + type: string + service_name: + description: Your service name associated with a service key in PagerDuty. + example: "" + type: string + required: + - service_name + - service_key + type: object + PagerDutyServiceKey: + description: PagerDuty service object key. + properties: + service_key: + description: Your service key in PagerDuty. + example: "" + type: string + required: + - service_key + type: object + PagerDutyServiceName: + description: PagerDuty service object name. + properties: + service_name: + description: Your service name associated service key in PagerDuty. + example: "" + type: string + required: + - service_name + type: object + Pagination: + description: Pagination object. + properties: + total_count: + description: Total count. + format: int64 + type: integer + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer + type: object + Point: + description: Array of timeseries points. + example: [1575317847.0, 0.5] + items: + description: |- + Each point is of the form `[POSIX_timestamp, numeric_value]`. + The timestamp should be in seconds and current. + The numeric value format should be a 32bit float gauge-type value. + Current is defined as not more than 10 minutes in the future or more than 1 hour in the past. + format: double + nullable: true + type: number + maxItems: 2 + minItems: 2 + type: array + PointPlotDimension: + description: Dimension of the point plot. + enum: + - group + - time + - y + - radius + example: y + type: string + x-enum-varnames: + - GROUP + - TIME + - Y + - RADIUS + PointPlotProjection: + description: Projection configuration for the point plot widget. + properties: + dimensions: + description: List of dimension mappings for the projection. + items: + $ref: "#/components/schemas/PointPlotProjectionDimension" + type: array + extra_columns: + description: Additional columns to include in the projection. + items: + description: Column name. + type: string + type: array + type: + $ref: "#/components/schemas/PointPlotProjectionType" + required: + - type + - dimensions + type: object + PointPlotProjectionDimension: + description: Dimension mapping for the point plot projection. + properties: + alias: + description: Alias for the column. + type: string + column: + description: Source column name from the dataset. + example: duration + type: string + dimension: + $ref: "#/components/schemas/PointPlotDimension" + required: + - column + - dimension + type: object + PointPlotProjectionType: + description: Type of the projection. + enum: + - point_plot + example: point_plot + type: string + x-enum-varnames: + - POINT_PLOT + PointPlotWidgetDefinition: + description: The point plot displays individual data points over time. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + legend: + $ref: "#/components/schemas/PointPlotWidgetLegend" + markers: + description: List of markers for the widget. + items: + $ref: "#/components/schemas/WidgetMarker" + type: array + requests: + description: List of request configurations for the widget. + items: + $ref: "#/components/schemas/PointPlotWidgetRequest" + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/PointPlotWidgetDefinitionType" + yaxis: + $ref: "#/components/schemas/WidgetAxis" + required: + - type + - requests + type: object + PointPlotWidgetDefinitionType: + default: point_plot + description: Type of the point plot widget. + enum: + - point_plot + example: point_plot + type: string + x-enum-varnames: + - POINT_PLOT + PointPlotWidgetLegend: + description: Legend configuration for the point plot widget. + properties: + type: + $ref: "#/components/schemas/PointPlotWidgetLegendType" + required: + - type + type: object + PointPlotWidgetLegendType: + description: Type of legend to show for the point plot widget. + enum: + - automatic + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - NONE + PointPlotWidgetRequest: + description: Request configuration for the point plot widget. + properties: + limit: + description: Maximum number of data points to return. + format: int64 + type: integer + projection: + $ref: "#/components/schemas/PointPlotProjection" + query: + $ref: "#/components/schemas/DataProjectionQuery" + request_type: + $ref: "#/components/schemas/DataProjectionRequestType" + required: + - request_type + - query + - projection + type: object + PowerpackTemplateVariableContents: + description: Powerpack template variable contents. + properties: + name: + description: The name of the variable. + example: host1 + type: string + prefix: + description: The tag prefix associated with the variable. + type: string + values: + description: One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified. + example: + - my-host + - host1 + - host2 + items: + description: One or more possible values of the template variable. + minLength: 1 + type: string + type: array + required: + - name + - values + type: object + PowerpackTemplateVariables: + description: Powerpack template variables. + properties: + controlled_by_powerpack: + description: Template variables controlled at the powerpack level. + items: + $ref: "#/components/schemas/PowerpackTemplateVariableContents" + type: array + controlled_externally: + description: "Template variables controlled by the external resource, such as the dashboard this powerpack is on." + items: + $ref: "#/components/schemas/PowerpackTemplateVariableContents" + type: array + type: object + PowerpackWidgetDefinition: + description: The powerpack widget allows you to keep similar graphs together on your timeboard. Each group has a custom header, can hold one to many graphs, and is collapsible. + properties: + background_color: + description: Background color of the powerpack title. + type: string + banner_img: + description: URL of image to display as a banner for the powerpack. + type: string + powerpack_id: + description: UUID of the associated powerpack. + example: "df43cf2a-6475-490d-b686-6fbc6cb9a49c" + type: string + show_title: + default: true + description: Whether to show the title or not. + type: boolean + template_variables: + $ref: "#/components/schemas/PowerpackTemplateVariables" + title: + description: Title of the widget. + type: string + type: + $ref: "#/components/schemas/PowerpackWidgetDefinitionType" + required: + - type + - powerpack_id + type: object + PowerpackWidgetDefinitionType: + default: powerpack + description: Type of the powerpack widget. + enum: + - powerpack + example: powerpack + type: string + x-enum-varnames: + - POWERPACK + ProcessQueryDefinition: + description: The process query to use in the widget. + properties: + filter_by: + description: List of processes. + items: + description: Process name. + type: string + type: array + limit: + description: Max number of items in the filter list. + format: int64 + minimum: 0 + type: integer + metric: + description: Your chosen metric. + example: "system.load.1" + type: string + search_by: + description: Your chosen search term. + type: string + required: + - metric + type: object + ProductAnalyticsAudienceAccountSubquery: + description: Product Analytics audience account subquery. + properties: + name: + description: The name of the account subquery. + type: string + query: + description: The query string for the account subquery. + type: string + type: object + ProductAnalyticsAudienceFilters: + description: Product Analytics/RUM audience filters. + properties: + accounts: + items: + $ref: "#/components/schemas/ProductAnalyticsAudienceAccountSubquery" + type: array + filter_condition: + description: An optional filter condition applied to the audience subquery. + type: string + segments: + items: + $ref: "#/components/schemas/ProductAnalyticsAudienceSegmentSubquery" + type: array + users: + items: + $ref: "#/components/schemas/ProductAnalyticsAudienceUserSubquery" + type: array + type: object + ProductAnalyticsAudienceOccurrenceFilter: + description: Filter applied to occurrence counts when building a Product Analytics audience. + properties: + operator: + description: "The comparison operator used for the occurrence filter (for example: `gt`, `lt`, `eq`)." + type: string + value: + description: The threshold value to compare occurrence counts against. + type: string + type: object + ProductAnalyticsAudienceSegmentSubquery: + description: Product Analytics audience segment subquery. + properties: + name: + description: The name of the segment subquery. + type: string + segment_id: + description: The unique identifier of the segment. + type: string + type: object + ProductAnalyticsAudienceUserSubquery: + description: Product Analytics audience user subquery. + properties: + name: + description: The name of the user subquery. + type: string + query: + description: The query string for the user subquery. + type: string + type: object + ProductAnalyticsBaseQuery: + $ref: "#/components/schemas/ProductAnalyticsEventQuery" + description: Base query for Product Analytics. + ProductAnalyticsEventDataSource: + description: Data source for Product Analytics event queries. + enum: + - product_analytics + example: product_analytics + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS + ProductAnalyticsEventQuery: + additionalProperties: false + description: Product Analytics event query. + properties: + data_source: + $ref: "#/components/schemas/ProductAnalyticsEventDataSource" + search: + $ref: "#/components/schemas/ProductAnalyticsEventQuerySearch" + required: + - data_source + - search + type: object + ProductAnalyticsEventQuerySearch: + additionalProperties: false + description: Search configuration for Product Analytics event query. + properties: + query: + description: RUM event search query used to filter views or actions. + example: "@type:view @view.name:/home" + type: string + required: + - query + type: object + ProductAnalyticsExtendedCompute: + additionalProperties: false + description: Compute configuration for Product Analytics Extended queries. + properties: + aggregation: + $ref: "#/components/schemas/FormulaAndFunctionEventAggregation" + interval: + description: Fixed-width time bucket interval in milliseconds for time series queries. Mutually exclusive with `rollup`. + example: 60000 + format: double + type: number + metric: + description: Measurable attribute to compute. + example: "@usr.id" + type: string + name: + description: Name of the compute for use in formulas. + example: "query1" + type: string + rollup: + $ref: "#/components/schemas/CalendarInterval" + description: Calendar-aligned time bucket for time series queries (for example, day, week, or month boundaries). Mutually exclusive with `interval`. + required: + - aggregation + type: object + ProductAnalyticsExtendedGroupBy: + description: Group by configuration for Product Analytics Extended queries. + properties: + facet: + description: Facet name to group by. + example: "@geo.country" + type: string + limit: + description: Maximum number of groups to return. + example: 10 + format: int32 + maximum: 10000 + type: integer + should_exclude_missing: + description: Whether to exclude events missing the group-by facet. + type: boolean + sort: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupBySort" + required: + - facet + type: object + ProductAnalyticsFunnelCompute: + additionalProperties: false + description: Compute configuration for user journey funnel. + properties: + aggregation: + $ref: "#/components/schemas/ProductAnalyticsFunnelComputeAggregation" + metric: + $ref: "#/components/schemas/ProductAnalyticsFunnelComputeMetric" + required: + - aggregation + - metric + type: object + ProductAnalyticsFunnelComputeAggregation: + description: Aggregation type for user journey funnel compute. + enum: + - cardinality + - count + example: count + type: string + x-enum-varnames: + - CARDINALITY + - COUNT + ProductAnalyticsFunnelComputeMetric: + description: Metric for user journey funnel compute. `__dd.conversion` and `__dd.conversion_rate` accept `count` (unique users/sessions) and `cardinality` (total users/sessions) as aggregations. + enum: + - __dd.conversion + - __dd.conversion_rate + example: __dd.conversion_rate + type: string + x-enum-varnames: + - CONVERSION + - CONVERSION_RATE + ProductAnalyticsFunnelDataSource: + description: Data source for user journey funnel queries. + enum: + - product_analytics_journey + example: product_analytics_journey + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_JOURNEY + ProductAnalyticsFunnelGroupBy: + description: Group by configuration for user journey funnel. + properties: + facet: + description: Facet to group by. + example: "@usr.email" + type: string + limit: + description: Maximum number of groups. + format: int64 + type: integer + should_exclude_missing: + description: Whether to exclude missing values. + type: boolean + sort: + $ref: "#/components/schemas/ProductAnalyticsFunnelGroupBySort" + target: + $ref: "#/components/schemas/UserJourneySearchTarget" + required: + - facet + type: object + ProductAnalyticsFunnelGroupBySort: + additionalProperties: false + description: Sort configuration for user journey funnel group by. + properties: + aggregation: + description: Aggregation type. + example: "count" + type: string + metric: + description: Metric to sort by. + example: "@session.id" + type: string + order: + $ref: "#/components/schemas/WidgetSort" + required: + - aggregation + type: object + ProductAnalyticsFunnelQuery: + additionalProperties: false + description: User journey funnel query definition. + properties: + compute: + $ref: "#/components/schemas/ProductAnalyticsFunnelCompute" + data_source: + $ref: "#/components/schemas/ProductAnalyticsFunnelDataSource" + group_by: + description: Group by configuration. + items: + $ref: "#/components/schemas/ProductAnalyticsFunnelGroupBy" + description: A user journey funnel group by configuration. + type: array + search: + $ref: "#/components/schemas/UserJourneySearch" + subquery_id: + description: Subquery ID. + type: string + required: + - data_source + - search + type: object + ProductAnalyticsFunnelRequest: + additionalProperties: false + description: User journey funnel widget request. + properties: + comparison_segments: + description: Comparison segments. + items: + description: Segment identifier. + minLength: 1 + type: string + minItems: 1 + type: array + comparison_time: + $ref: "#/components/schemas/FunnelComparisonDuration" + query: + $ref: "#/components/schemas/ProductAnalyticsFunnelQuery" + request_type: + $ref: "#/components/schemas/ProductAnalyticsFunnelRequestType" + required: + - query + - request_type + type: object + ProductAnalyticsFunnelRequestType: + description: Request type for user journey funnel widget. + enum: + - user_journey_funnel + example: user_journey_funnel + type: string + x-enum-varnames: + - USER_JOURNEY_FUNNEL + ProductAnalyticsFunnelWidgetDefinition: + additionalProperties: false + description: The user journey funnel visualization displays conversion funnels based on user journey data from Product Analytics. + properties: + description: + description: The description of the widget. + type: string + grouped_display: + $ref: "#/components/schemas/FunnelGroupedDisplay" + requests: + description: Request payload used to query items. + example: + - query: + compute: + aggregation: cardinality + metric: __dd.conversion + data_source: product_analytics_journey + search: + expression: "step1 -> step2" + filters: + string_filter: "@application.id:xxx @geo.country:France" + node_objects: + step1: + data_source: product_analytics + search: + query: "@type:view @view.name:/home" + step2: + data_source: product_analytics + search: + query: '@type:action @action.name:"add to cart"' + request_type: user_journey_funnel + items: + $ref: "#/components/schemas/ProductAnalyticsFunnelRequest" + description: A user journey funnel widget request. + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: The title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: The size of the title. + type: string + type: + $ref: "#/components/schemas/FunnelWidgetDefinitionType" + required: + - type + - requests + type: object + PublishedDatasetProvider: + description: >- + Product page that published the dataset queried by a `DatasetListQuery`. `ddsql_query` is the only provider currently supported for host map widgets. + enum: + - ddsql_query + example: ddsql_query + type: string + x-enum-varnames: + - DDSQL_QUERY + QuerySortOrder: + default: desc + description: Direction of sort. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASC + - DESC + QueryValueWidgetComparison: + description: A change indicator that compares the current value to a historical period. + properties: + directionality: + $ref: "#/components/schemas/QueryValueWidgetComparisonDirectionality" + description: Which direction of change is considered an improvement, determining the indicator color. + duration: + $ref: "#/components/schemas/ComparisonDuration" + type: + $ref: "#/components/schemas/QueryValueWidgetComparisonType" + required: + - duration + type: object + QueryValueWidgetComparisonDirectionality: + default: neutral + description: "Color-coding direction: `increase_better` (green on rise), `decrease_better` (green on drop), or `neutral` (no color)." + enum: + - increase_better + - decrease_better + - neutral + type: string + x-enum-varnames: + - INCREASE_BETTER + - DECREASE_BETTER + - NEUTRAL + QueryValueWidgetComparisonType: + default: absolute + description: "How the delta is expressed: `absolute` (raw difference), `relative` (percentage), or `both`." + enum: + - absolute + - relative + - both + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + - BOTH + QueryValueWidgetDefinition: + description: Query values display the current value of a given metric, APM, or log query. + properties: + autoscale: + description: Whether to use auto-scaling or not. + type: boolean + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + custom_unit: + description: Display a unit of your choice on the widget. + type: string + description: + description: The description of the widget. + type: string + precision: + description: Number of decimals to show. If not defined, the widget uses the raw value. + format: int64 + type: integer + requests: + description: Widget definition. + example: ["q/apm_query/log_query": "{}"] + items: + $ref: "#/components/schemas/QueryValueWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + text_align: + $ref: "#/components/schemas/WidgetTextAlign" + time: + $ref: "#/components/schemas/WidgetTime" + timeseries_background: + $ref: "#/components/schemas/TimeseriesBackground" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/QueryValueWidgetDefinitionType" + required: + - type + - requests + type: object + QueryValueWidgetDefinitionType: + default: query_value + description: Type of the query value widget. + enum: + - query_value + example: query_value + type: string + x-enum-varnames: + - QUERY_VALUE + QueryValueWidgetRequest: + description: Updated query value widget. + properties: + aggregator: + $ref: "#/components/schemas/WidgetAggregator" + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + comparison: + $ref: "#/components/schemas/QueryValueWidgetComparison" + description: Displays a change indicator showing a delta against a historical baseline. + conditional_formats: + description: List of conditional formats. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + type: object + ReferenceTableLogsLookupProcessor: + description: |- + **Note**: Reference Tables are in public beta. + Use the Lookup Processor to define a mapping between a log attribute + and a human readable value saved in a Reference Table. + For example, you can use the Lookup Processor to map an internal service ID + into a human readable service name. Alternatively, you could also use it to check + if the MAC address that just attempted to connect to the production + environment belongs to your list of stolen machines. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + lookup_enrichment_table: + description: |- + Name of the Reference Table for the source attribute and their associated target attribute values. + example: "service_id_to_service_name_table" + type: string + name: + description: Name of the processor. + type: string + source: + description: Source attribute used to perform the lookup. + example: service_id + type: string + target: + description: |- + Name of the attribute that contains the corresponding value in the mapping list. + example: service + type: string + type: + $ref: "#/components/schemas/LogsLookupProcessorType" + required: + - source + - target + - lookup_enrichment_table + - type + type: object + ResourceProviderConfig: + description: Configuration settings applied to resources from the specified Azure resource provider. + properties: + metrics_enabled: + description: Collect metrics for resources from this provider. + example: true + type: boolean + namespace: + description: The provider namespace to apply this configuration to. + example: Microsoft.Compute + type: string + type: object + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: "#/components/schemas/Pagination" + type: object + RetentionCohortCriteria: + additionalProperties: false + description: Cohort criteria for retention queries. + properties: + base_query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + time_interval: + $ref: "#/components/schemas/RetentionCohortCriteriaTimeInterval" + required: + - base_query + - time_interval + type: object + RetentionCohortCriteriaTimeInterval: + additionalProperties: false + description: Time interval for cohort criteria. + properties: + type: + $ref: "#/components/schemas/RetentionCohortCriteriaTimeIntervalType" + value: + $ref: "#/components/schemas/CalendarInterval" + required: + - type + - value + type: object + RetentionCohortCriteriaTimeIntervalType: + description: Type of time interval for cohort criteria. + enum: + - calendar + example: calendar + type: string + x-enum-varnames: + - CALENDAR + RetentionCompute: + additionalProperties: false + description: Compute configuration for retention queries. + properties: + aggregation: + $ref: "#/components/schemas/EventsAggregation" + metric: + $ref: "#/components/schemas/RetentionComputeMetric" + required: + - aggregation + - metric + type: object + RetentionComputeMetric: + description: Metric for retention compute. + enum: + - __dd.retention + - __dd.retention_rate + example: __dd.retention_rate + type: string + x-enum-varnames: + - RETENTION + - RETENTION_RATE + RetentionCurveRequestType: + description: Request type for retention curve widget. + enum: + - retention_curve + example: retention_curve + type: string + x-enum-varnames: + - RETENTION_CURVE + RetentionCurveStyle: + additionalProperties: false + description: Style configuration for retention curve. + properties: + palette: + description: Color palette for the retention curve. + example: "dog_classic" + type: string + type: object + RetentionCurveWidgetDefinition: + additionalProperties: false + description: The retention curve widget visualizes user retention rates over time. + properties: + description: + description: The description of the widget. + type: string + requests: + description: List of Retention Curve widget requests. + example: + - query: + compute: + aggregation: count + metric: __dd.retention_rate + data_source: product_analytics_retention + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:/home" + time_interval: + type: calendar + value: + type: week + retention_entity: "@usr.id" + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:/checkout" + request_type: retention_curve + items: + $ref: "#/components/schemas/RetentionCurveWidgetRequest" + description: A retention curve widget request. + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/RetentionCurveWidgetDefinitionType" + required: + - type + - requests + type: object + RetentionCurveWidgetDefinitionType: + default: retention_curve + description: Type of the Retention Curve widget. + enum: + - retention_curve + example: retention_curve + type: string + x-enum-varnames: + - RETENTION_CURVE + RetentionCurveWidgetRequest: + additionalProperties: false + description: Retention curve widget request. + properties: + query: + $ref: "#/components/schemas/RetentionQuery" + request_type: + $ref: "#/components/schemas/RetentionCurveRequestType" + style: + $ref: "#/components/schemas/RetentionCurveStyle" + required: + - request_type + - query + type: object + RetentionDataSource: + description: Data source for retention queries. + enum: + - product_analytics_retention + example: product_analytics_retention + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_RETENTION + RetentionEntity: + description: Entity to track for retention. + enum: + - "@usr.id" + - "@account.id" + example: "@usr.id" + type: string + x-enum-varnames: + - USER_ID + - ACCOUNT_ID + RetentionFilters: + additionalProperties: false + description: Filters for retention queries. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + string_filter: + description: String filter. + example: "@session.type:user" + type: string + type: object + RetentionGridRequest: + additionalProperties: false + description: Retention grid widget request. + properties: + query: + $ref: "#/components/schemas/RetentionQuery" + request_type: + $ref: "#/components/schemas/RetentionGridRequestType" + required: + - request_type + - query + type: object + RetentionGridRequestType: + description: Request type for retention grid widget. + enum: + - retention_grid + example: retention_grid + type: string + x-enum-varnames: + - RETENTION_GRID + RetentionGroupBy: + additionalProperties: false + description: Group by configuration for retention queries. + properties: + facet: + description: Facet to group by. + example: "@geo.country" + type: string + limit: + description: Maximum number of groups. + example: 10 + format: int64 + type: integer + should_exclude_missing: + description: Whether to exclude missing values. + example: false + type: boolean + sort: + $ref: "#/components/schemas/RetentionGroupBySort" + source: + description: Source field. + example: "@geo.country" + type: string + target: + $ref: "#/components/schemas/RetentionGroupByTarget" + required: + - target + - facet + type: object + RetentionGroupBySort: + additionalProperties: false + description: Sort configuration for retention group by. + properties: + order: + $ref: "#/components/schemas/WidgetSort" + type: object + RetentionGroupByTarget: + description: Target for retention group by. + enum: + - cohort + - return_period + example: cohort + type: string + x-enum-varnames: + - COHORT + - RETURN_PERIOD + RetentionQuery: + additionalProperties: false + description: Retention query definition. + properties: + compute: + $ref: "#/components/schemas/RetentionCompute" + data_source: + $ref: "#/components/schemas/RetentionDataSource" + filters: + $ref: "#/components/schemas/RetentionFilters" + group_by: + description: Group by configuration. + items: + $ref: "#/components/schemas/RetentionGroupBy" + description: A retention group by configuration. + type: array + name: + description: Name of the query. + example: "retention_query" + type: string + search: + $ref: "#/components/schemas/RetentionSearch" + required: + - data_source + - search + - compute + type: object + RetentionReturnCondition: + description: Condition for counting user return. + enum: + - conversion_on + - conversion_on_or_after + example: conversion_on_or_after + type: string + x-enum-varnames: + - CONVERSION_ON + - CONVERSION_ON_OR_AFTER + RetentionReturnCriteria: + additionalProperties: false + description: Return criteria for retention queries. + properties: + base_query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + time_interval: + $ref: "#/components/schemas/RetentionReturnCriteriaTimeInterval" + required: + - base_query + type: object + RetentionReturnCriteriaTimeInterval: + additionalProperties: false + description: Time interval for return criteria. + properties: + type: + $ref: "#/components/schemas/RetentionReturnCriteriaTimeIntervalType" + unit: + $ref: "#/components/schemas/RetentionReturnCriteriaTimeIntervalUnit" + value: + description: Value of the time interval. + example: 0.0 + format: double + type: number + required: + - type + - value + - unit + type: object + RetentionReturnCriteriaTimeIntervalType: + description: Type of time interval for return criteria. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + RetentionReturnCriteriaTimeIntervalUnit: + description: Unit of time for retention return criteria interval. + enum: + - day + - week + - month + example: day + type: string + x-enum-varnames: + - DAY + - WEEK + - MONTH + RetentionSearch: + additionalProperties: false + description: Search configuration for retention queries. + properties: + cohort_criteria: + $ref: "#/components/schemas/RetentionCohortCriteria" + filters: + $ref: "#/components/schemas/RetentionFilters" + retention_entity: + $ref: "#/components/schemas/RetentionEntity" + return_condition: + $ref: "#/components/schemas/RetentionReturnCondition" + return_criteria: + $ref: "#/components/schemas/RetentionReturnCriteria" + required: + - cohort_criteria + - retention_entity + - return_condition + type: object + RunWorkflowWidgetDefinition: + description: Run workflow is widget that allows you to run a workflow from a dashboard. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + inputs: + description: Array of workflow inputs to map to dashboard template variables. + items: + $ref: "#/components/schemas/RunWorkflowWidgetInput" + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/RunWorkflowWidgetDefinitionType" + workflow_id: + description: Workflow id. + example: "" + type: string + required: + - type + - workflow_id + type: object + RunWorkflowWidgetDefinitionType: + default: run_workflow + description: Type of the run workflow widget. + enum: + - run_workflow + example: run_workflow + type: string + x-enum-varnames: + - RUN_WORKFLOW + RunWorkflowWidgetInput: + description: Object to map a dashboard template variable to a workflow input. + properties: + name: + description: Name of the workflow input. + example: Environment + type: string + value: + description: Dashboard template variable. Can be suffixed with '.value' or '.key'. + example: "$env.value" + type: string + required: + - name + - value + type: object + SLOBulkDelete: + additionalProperties: + description: An array of all SLO timeframes. + items: + $ref: "#/components/schemas/SLOTimeframe" + type: array + description: |- + A map of service level objective object IDs to arrays of timeframes, + which indicate the thresholds to delete for each ID. + example: + id1: ["7d", "30d"] + id2: ["7d", "30d"] + type: object + SLOBulkDeleteError: + description: Object describing the error. + properties: + id: + description: |- + The ID of the service level objective object associated with + this error. + example: "" + type: string + message: + description: The error message. + example: "" + type: string + timeframe: + $ref: "#/components/schemas/SLOErrorTimeframe" + required: + - id + - timeframe + - message + type: object + SLOBulkDeleteResponse: + description: |- + The bulk partial delete service level objective object endpoint + response. + + This endpoint operates on multiple service level objective objects, so + it may be partially successful. In such cases, the "data" and "error" + fields in this response indicate which deletions succeeded and failed. + properties: + data: + $ref: "#/components/schemas/SLOBulkDeleteResponseData" + errors: + description: Array of errors object returned. + items: + $ref: "#/components/schemas/SLOBulkDeleteError" + type: array + type: object + SLOBulkDeleteResponseData: + description: An array of service level objective objects. + properties: + deleted: + description: |- + An array of service level objective object IDs that indicates + which objects that were completely deleted. + items: + description: A deleted SLO ID. + type: string + type: array + updated: + description: |- + An array of service level objective object IDs that indicates + which objects that were modified (objects for which at least one + threshold was deleted, but that were not completely deleted). + items: + description: An updated SLO ID. + type: string + type: array + type: object + SLOCorrection: + description: |- + The response object of a list of SLO corrections. + properties: + attributes: + $ref: "#/components/schemas/SLOCorrectionResponseAttributes" + id: + description: The ID of the SLO correction. + type: string + type: + $ref: "#/components/schemas/SLOCorrectionType" + type: object + SLOCorrectionCategory: + description: Category the SLO correction belongs to. + enum: + - Scheduled Maintenance + - Outside Business Hours + - Deployment + - Other + example: Scheduled Maintenance + type: string + x-enum-varnames: + - SCHEDULED_MAINTENANCE + - OUTSIDE_BUSINESS_HOURS + - DEPLOYMENT + - OTHER + SLOCorrectionCreateData: + description: The data object associated with the SLO correction to be created. + properties: + attributes: + $ref: "#/components/schemas/SLOCorrectionCreateRequestAttributes" + type: + $ref: "#/components/schemas/SLOCorrectionType" + required: + - type + type: object + SLOCorrectionCreateRequest: + description: |- + An object that defines a correction to be applied to one or more SLOs. + properties: + data: + $ref: "#/components/schemas/SLOCorrectionCreateData" + type: object + SLOCorrectionCreateRequestAttributes: + description: |- + The attribute object associated with the SLO correction to be created. + + Exactly one of `slo_id` or `slo_query` must be provided. + properties: + category: + $ref: "#/components/schemas/SLOCorrectionCategory" + description: + description: Description of the correction being made. + type: string + duration: + description: Length of time (in seconds) for a specified `rrule` recurring SLO correction. + example: 1600000000 + format: int64 + type: integer + end: + description: Ending time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + rrule: + description: |- + The recurrence rules as defined in the iCalendar RFC 5545. The supported rules for SLO corrections + are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`. + example: FREQ=DAILY;INTERVAL=10;COUNT=5 + type: string + slo_id: + description: ID of the single SLO that this correction applies to. + example: sloId + type: string + slo_query: + description: |- + Query that matches the SLOs this correction applies to. + The query uses the [Events search syntax](https://docs.datadoghq.com/events/explorer/searching/) + and can filter SLOs by SLO tags. + example: "env:prod service:checkout" + type: string + start: + description: Starting time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + timezone: + description: The timezone to display in the UI for the correction times (defaults to "UTC"). + example: UTC + type: string + required: + - start + - category + type: object + SLOCorrectionListResponse: + description: A list of SLO correction objects. + properties: + data: + description: |- + The list of SLO corrections objects. + items: + $ref: "#/components/schemas/SLOCorrection" + type: array + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + type: object + SLOCorrectionResponse: + description: |- + The response object of an SLO correction. + properties: + data: + $ref: "#/components/schemas/SLOCorrection" + type: object + SLOCorrectionResponseAttributes: + description: The attribute object associated with the SLO correction. + properties: + category: + $ref: "#/components/schemas/SLOCorrectionCategory" + created_at: + description: The epoch timestamp of when the correction was created at. + format: int64 + nullable: true + type: integer + creator: + $ref: "#/components/schemas/Creator" + description: + description: Description of the correction being made. + type: string + duration: + description: Length of time (in seconds) for a specified `rrule` recurring SLO correction. + example: 3600 + format: int64 + nullable: true + type: integer + end: + description: Ending time of the correction in epoch seconds. + format: int64 + nullable: true + type: integer + modified_at: + description: The epoch timestamp of when the correction was modified at. + format: int64 + nullable: true + type: integer + modifier: + $ref: "#/components/schemas/SLOCorrectionResponseAttributesModifier" + rrule: + description: |- + The recurrence rules as defined in the iCalendar RFC 5545. The supported rules for SLO corrections + are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`. + example: FREQ=DAILY;INTERVAL=10;COUNT=5 + nullable: true + type: string + slo_id: + description: ID of the single SLO that this correction applies to. + nullable: true + type: string + slo_query: + description: Query that matches the SLOs this correction applies to. + nullable: true + type: string + start: + description: Starting time of the correction in epoch seconds. + format: int64 + type: integer + timezone: + description: The timezone to display in the UI for the correction times (defaults to "UTC"). + type: string + type: object + SLOCorrectionResponseAttributesModifier: + description: Modifier of the object. + nullable: true + properties: + email: + description: Email of the Modifier. + type: string + handle: + description: Handle of the Modifier. + type: string + name: + description: Name of the Modifier. + type: string + type: object + SLOCorrectionType: + default: correction + description: SLO correction resource type. + enum: + - correction + example: correction + type: string + x-enum-varnames: + - CORRECTION + SLOCorrectionUpdateData: + description: The data object associated with the SLO correction to be updated. + properties: + attributes: + $ref: "#/components/schemas/SLOCorrectionUpdateRequestAttributes" + type: + $ref: "#/components/schemas/SLOCorrectionType" + type: object + SLOCorrectionUpdateRequest: + description: |- + An object that defines a correction to be applied to an SLO. + properties: + data: + $ref: "#/components/schemas/SLOCorrectionUpdateData" + type: object + SLOCorrectionUpdateRequestAttributes: + description: The attribute object associated with the SLO correction to be updated. + properties: + category: + $ref: "#/components/schemas/SLOCorrectionCategory" + description: + description: Description of the correction being made. + type: string + duration: + description: Length of time (in seconds) for a specified `rrule` recurring SLO correction. + example: 3600 + format: int64 + type: integer + end: + description: Ending time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + rrule: + description: |- + The recurrence rules as defined in the iCalendar RFC 5545. The supported rules for SLO corrections + are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`. + example: FREQ=DAILY;INTERVAL=10;COUNT=5 + type: string + slo_query: + description: |- + Query that matches the SLOs this correction applies to. + The query uses the [Events search syntax](https://docs.datadoghq.com/events/explorer/searching/) + and can filter SLOs by SLO tags. + example: "env:prod service:checkout" + type: string + start: + description: Starting time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + timezone: + description: The timezone to display in the UI for the correction times (defaults to "UTC"). + example: UTC + type: string + type: object + SLOCountDefinition: + description: |- + A count-based (metric) SLI specification, composed of three parts: the good events formula, + the bad or total events formula, and the underlying queries. + Exactly one of `total_events_formula` or `bad_events_formula` must be provided. + example: + bad_events_formula: "query2" + good_events_formula: "query1" + queries: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count()" + - data_source: metrics + name: "query2" + query: "sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count()" + oneOf: + - $ref: "#/components/schemas/SLOCountDefinitionWithTotalEventsFormula" + - $ref: "#/components/schemas/SLOCountDefinitionWithBadEventsFormula" + SLOCountDefinitionWithBadEventsFormula: + additionalProperties: false + description: SLO count definition using a bad events formula alongside a good events formula. + properties: + bad_events_formula: + $ref: "#/components/schemas/SLOFormula" + description: |- + The bad events formula (recommended). Total events queries can be defined using the `total_events_formula` field as an alternative. Only one of `total_events_formula` or `bad_events_formula` must be provided. + good_events_formula: + $ref: "#/components/schemas/SLOFormula" + queries: + example: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count()" + - data_source: metrics + name: "query2" + query: "sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count()" + items: + $ref: "#/components/schemas/SLODataSourceQueryDefinition" + minItems: 1 + type: array + required: + - good_events_formula + - bad_events_formula + - queries + type: object + SLOCountDefinitionWithTotalEventsFormula: + additionalProperties: false + description: SLO count definition using a total events formula alongside a good events formula. + properties: + good_events_formula: + $ref: "#/components/schemas/SLOFormula" + queries: + example: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count()" + - data_source: metrics + name: "query2" + query: "sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count()" + items: + $ref: "#/components/schemas/SLODataSourceQueryDefinition" + minItems: 1 + type: array + total_events_formula: + $ref: "#/components/schemas/SLOFormula" + description: |- + The total events formula. Bad events queries can be defined using the `bad_events_formula` field as an alternative. Only one of `total_events_formula` or `bad_events_formula` must be provided. + required: + - good_events_formula + - total_events_formula + - queries + type: object + SLOCountSpec: + additionalProperties: false + description: |- + A metric SLI specification. + example: + count: + bad_events_formula: "query2" + good_events_formula: "query1" + queries: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count()" + - data_source: metrics + name: "query2" + query: "sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count()" + properties: + count: + $ref: "#/components/schemas/SLOCountDefinition" + required: + - count + type: object + SLOCreator: + description: The creator of the SLO + nullable: true + properties: + email: + description: Email of the creator. + type: string + id: + description: User ID of the creator. + format: int64 + type: integer + name: + description: Name of the creator. + nullable: true + type: string + type: object + SLODataSourceQueryDefinition: + description: A formula and function query. + example: + data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{*} by {env}.as_count()" + oneOf: + - $ref: "#/components/schemas/FormulaAndFunctionMetricQueryDefinition" + SLODeleteResponse: + description: A response list of all service level objective deleted. + properties: + data: + description: An array containing the ID of the deleted service level objective object. + items: + description: ID of a deleted SLO. + type: string + type: array + errors: + additionalProperties: + description: Error preventing the SLO deletion. + type: string + description: An dictionary containing the ID of the SLO as key and a deletion error as value. + type: object + type: object + SLOErrorBudgetRemainingData: + additionalProperties: + description: Remaining error budget. + format: double + type: number + description: |- + A mapping of threshold `timeframe` to the remaining error budget. + example: + 7d: 100.0 + type: object + SLOErrorTimeframe: + description: |- + The timeframe of the threshold associated with this error + or "all" if all thresholds are affected. + enum: + - 7d + - 30d + - 90d + - all + example: 30d + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + - ALL + SLOFormula: + description: |- + A formula that specifies how to combine the results of multiple queries. + example: + formula: "query1 - default_zero(query2)" + properties: + formula: + description: |- + The formula string, which is an expression involving named queries. + example: "query1 - default_zero(query2)" + type: string + required: + - formula + type: object + SLOHistoryMetrics: + description: |- + A `metric` based SLO history response. + + This is not included in responses for `monitor` based SLOs. + properties: + denominator: + $ref: "#/components/schemas/SLOHistoryMetricsSeries" + interval: + description: The aggregated query interval for the series data. It's implicit based on the query time window. + example: 0 + format: int64 + type: integer + message: + description: Optional message if there are specific query issues/warnings. + example: "" + type: string + numerator: + $ref: "#/components/schemas/SLOHistoryMetricsSeries" + query: + description: The combined numerator and denominator query CSV. + example: "" + type: string + res_type: + description: The series result type. This mimics `batch_query` response type. + example: "" + type: string + resp_version: + description: The series response version type. This mimics `batch_query` response type. + example: 0 + format: int64 + type: integer + times: + description: An array of query timestamps in EPOCH milliseconds. + example: [] + items: + description: A timestamp in EPOCH milliseconds. + format: double + type: number + type: array + required: + - res_type + - interval + - resp_version + - query + - times + - numerator + - denominator + type: object + SLOHistoryMetricsSeries: + description: |- + A representation of `metric` based SLO timeseries for the provided queries. + This is the same response type from `batch_query` endpoint. + properties: + count: + description: Count of submitted metrics. + example: 0 + format: int64 + type: integer + metadata: + $ref: "#/components/schemas/SLOHistoryMetricsSeriesMetadata" + sum: + description: Total sum of the query. + example: 0.0 + format: double + type: number + values: + description: The query values for each metric. + example: [] + items: + description: A metric name and its value. + format: double + type: number + type: array + required: + - count + - sum + - values + type: object + SLOHistoryMetricsSeriesMetadata: + description: Query metadata. + example: {} + properties: + aggr: + deprecated: true + description: Query aggregator function. + type: string + expression: + deprecated: true + description: Query expression. + type: string + metric: + deprecated: true + description: Query metric used. + type: string + query_index: + deprecated: true + description: Query index from original combined query. + format: int64 + type: integer + scope: + deprecated: true + description: Query scope. + type: string + unit: + description: |- + An array of metric units that contains up to two unit objects. + For example, bytes represents one unit object and bytes per second represents two unit objects. + If a metric query only has one unit object, the second array element is null. + example: [{"family": "bytes", "id": 2, "name": "byte", "plural": "bytes", "scale_factor": 1.0, "short_name": "B"}, null] + items: + $ref: "#/components/schemas/SLOHistoryMetricsSeriesMetadataUnit" + nullable: true + type: array + type: object + SLOHistoryMetricsSeriesMetadataUnit: + description: An Object of metric units. + nullable: true + properties: + family: + description: |- + The family of metric unit, for example `bytes` is the family for `kibibyte`, `byte`, and `bit` units. + type: string + id: + description: The ID of the metric unit. + format: int64 + type: integer + name: + description: The unit of the metric, for instance `byte`. + type: string + plural: + description: The plural Unit of metric, for instance `bytes`. + nullable: true + type: string + scale_factor: + description: The scale factor of metric unit, for instance `1.0`. + format: double + type: number + short_name: + description: A shorter and abbreviated version of the metric unit, for instance `B`. + nullable: true + type: string + type: object + SLOHistoryMonitor: + description: |- + An object that holds an SLI value and its associated data. It can represent an SLO's overall SLI value. + This can also represent the SLI value for a specific monitor in multi-monitor SLOs, or a group in grouped SLOs. + properties: + error_budget_remaining: + $ref: "#/components/schemas/SLOErrorBudgetRemainingData" + errors: + description: An array of error objects returned while querying the history data for the service level objective. + items: + $ref: "#/components/schemas/SLOHistoryResponseErrorWithType" + type: array + group: + description: For groups in a grouped SLO, this is the group name. + example: "name" + type: string + history: + description: |- + The state transition history for the monitor. It is represented as + an array of pairs. Each pair is an array containing the timestamp of the transition + as an integer in Unix epoch format in the first element, and the state as an integer in the + second element. An integer value of `0` for state means uptime, `1` means downtime, and `2` means no data. + Periods of no data are counted either as uptime or downtime depending on monitor settings. + See [SLO documentation](https://docs.datadoghq.com/service_management/service_level_objectives/monitor/#missing-data) + for detailed information. + example: [[1579212382, 0]] + items: + description: |- + Represents an array timeseries data. + example: [1579212382, 0] + items: + description: A timeseries data point which is a tuple of (timestamp, value). + format: double + type: number + maxItems: 2 + minItems: 2 + type: array + type: array + monitor_modified: + description: For `monitor` based SLOs, this is the last modified timestamp in epoch seconds of the monitor. + example: 1615867200 + format: int64 + type: integer + monitor_type: + description: For `monitor` based SLOs, this describes the type of monitor. + example: "string" + type: string + name: + description: >- + For groups in a grouped SLO, this is the group name. For monitors in a multi-monitor SLO, this is the monitor name. + example: "string" + type: string + precision: + deprecated: true + description: The amount of decimal places the SLI value is accurate to for the given from `&&` to timestamp. Use `span_precision` instead. + example: 2.0 + format: double + type: number + preview: + description: |- + For `monitor` based SLOs, when `true` this indicates that a replay is in progress to give an accurate uptime + calculation. + example: true + type: boolean + sli_value: + description: The current SLI value of the SLO over the history window. + example: 99.99 + format: double + nullable: true + type: number + span_precision: + description: The amount of decimal places the SLI value is accurate to for the given from `&&` to timestamp. + example: 2.0 + format: double + type: number + uptime: + deprecated: true + description: Use `sli_value` instead. + example: 99.99 + format: double + type: number + type: object + SLOHistoryResponse: + description: A service level objective history response. + properties: + data: + $ref: "#/components/schemas/SLOHistoryResponseData" + errors: + description: A list of errors while querying the history data for the service level objective. + items: + $ref: "#/components/schemas/SLOHistoryResponseError" + nullable: true + type: array + type: object + SLOHistoryResponseData: + description: An array of service level objective objects. + properties: + from_ts: + description: The `from` timestamp in epoch seconds. + example: 1615323990 + format: int64 + type: integer + group_by: + description: |- + For `metric` based SLOs where the query includes a group-by clause, this represents the list of grouping parameters. + + This is not included in responses for `monitor` based SLOs. + items: + description: A grouping parameter. + type: string + type: array + groups: + description: |- + For grouped SLOs, this represents SLI data for specific groups. + + This is not included in the responses for `metric` based SLOs. + items: + $ref: "#/components/schemas/SLOHistoryMonitor" + type: array + monitors: + description: |- + For multi-monitor SLOs, this represents SLI data for specific monitors. + + This is not included in the responses for `metric` based SLOs. + items: + $ref: "#/components/schemas/SLOHistoryMonitor" + type: array + overall: + $ref: "#/components/schemas/SLOHistorySLIData" + series: + $ref: "#/components/schemas/SLOHistoryMetrics" + thresholds: + additionalProperties: + $ref: "#/components/schemas/SLOThreshold" + description: mapping of string timeframe to the SLO threshold. + example: {"my_service": {"target": 95, "timeframe": "7d"}} + type: object + to_ts: + description: The `to` timestamp in epoch seconds. + example: 1615928790 + format: int64 + type: integer + type: + $ref: "#/components/schemas/SLOType" + type_id: + $ref: "#/components/schemas/SLOTypeNumeric" + type: object + SLOHistoryResponseError: + description: A list of errors while querying the history data for the service level objective. + properties: + error: + description: Human readable error. + type: string + type: object + SLOHistoryResponseErrorWithType: + description: An object describing the error with error type and error message. + properties: + error_message: + description: A message with more details about the error. + example: "" + type: string + error_type: + description: Type of the error. + example: "" + type: string + required: + - error_type + - error_message + type: object + SLOHistorySLIData: + description: |- + An object that holds an SLI value and its associated data. It can represent an SLO's overall SLI value. + This can also represent the SLI value for a specific monitor in multi-monitor SLOs, or a group in grouped SLOs. + properties: + error_budget_remaining: + $ref: "#/components/schemas/SLOErrorBudgetRemainingData" + errors: + description: An array of error objects returned while querying the history data for the service level objective. + items: + $ref: "#/components/schemas/SLOHistoryResponseErrorWithType" + type: array + group: + description: For groups in a grouped SLO, this is the group name. + example: "name" + type: string + history: + description: |- + The state transition history for `monitor` or `time-slice` SLOs. It is represented as + an array of pairs. Each pair is an array containing the timestamp of the transition + as an integer in Unix epoch format in the first element, and the state as an integer in the + second element. An integer value of `0` for state means uptime, `1` means downtime, and `2` means no data. + Periods of no data count as uptime in time-slice SLOs, while for monitor SLOs, no data is counted + either as uptime or downtime depending on monitor settings. See + [SLO documentation](https://docs.datadoghq.com/service_management/service_level_objectives/monitor/#missing-data) + for detailed information. + example: [[1579212382, 0]] + items: + description: |- + Represents an array timeseries data. + example: [1579212382, 0] + items: + description: A timeseries data point which is a tuple of (timestamp, value). + format: double + type: number + maxItems: 2 + minItems: 2 + type: array + type: array + monitor_modified: + description: For `monitor` based SLOs, this is the last modified timestamp in epoch seconds of the monitor. + example: 1615867200 + format: int64 + type: integer + monitor_type: + description: For `monitor` based SLOs, this describes the type of monitor. + example: "string" + type: string + name: + description: >- + For groups in a grouped SLO, this is the group name. For monitors in a multi-monitor SLO, this is the monitor name. + example: "string" + type: string + precision: + additionalProperties: + description: The number of accurate decimals. + format: double + type: number + description: |- + A mapping of threshold `timeframe` to number of accurate decimals, regardless of the from && to timestamp. + example: + 30d: 1 + 7d: 2 + type: object + preview: + description: |- + For `monitor` based SLOs, when `true` this indicates that a replay is in progress to give an accurate uptime + calculation. + example: true + type: boolean + sli_value: + description: The current SLI value of the SLO over the history window. + example: 99.99 + format: double + nullable: true + type: number + span_precision: + description: The amount of decimal places the SLI value is accurate to for the given from `&&` to timestamp. + example: 2.0 + format: double + type: number + uptime: + deprecated: true + description: Use `sli_value` instead. + example: 99.99 + format: double + nullable: true + type: number + type: object + SLOListResponse: + description: A response with one or more service level objective. + properties: + data: + description: An array of service level objective objects. + items: + $ref: "#/components/schemas/ServiceLevelObjective" + type: array + errors: + description: |- + An array of error messages. Each endpoint documents how/whether this field is + used. + items: + description: The error message. + type: string + type: array + metadata: + $ref: "#/components/schemas/SLOListResponseMetadata" + type: object + SLOListResponseMetadata: + description: |- + The metadata object containing additional information about the list of SLOs. + properties: + page: + $ref: "#/components/schemas/SLOListResponseMetadataPage" + type: object + SLOListResponseMetadataPage: + description: The object containing information about the pages of the list of SLOs. + properties: + total_count: + description: |- + The total number of resources that could be retrieved ignoring the parameters and filters in the request. + format: int64 + type: integer + total_filtered_count: + description: |- + The total number of resources that match the parameters and filters in the request. This attribute can be used by a client to determine the total number of pages. + format: int64 + type: integer + type: object + SLOListWidgetDefinition: + description: Use the SLO List widget to track your SLOs (Service Level Objectives) on dashboards. + properties: + description: + description: The description of the widget. + type: string + requests: + description: Array of one request object to display in the widget. + items: + $ref: "#/components/schemas/SLOListWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/SLOListWidgetDefinitionType" + required: + - type + - requests + type: object + SLOListWidgetDefinitionType: + default: slo_list + description: Type of the SLO List widget. + enum: + - slo_list + example: slo_list + type: string + x-enum-varnames: + - SLO_LIST + SLOListWidgetQuery: + description: Updated SLO List widget. + properties: + limit: + default: 100 + description: Maximum number of results to display in the table. + format: int64 + maximum: 100 + minimum: 1 + type: integer + query_string: + description: Widget query. + example: "env:prod AND service:my-app" + type: string + sort: + description: Options for sorting results. + items: + $ref: "#/components/schemas/WidgetFieldSort" + type: array + required: + - query_string + type: object + SLOListWidgetRequest: + description: Updated SLO List widget. + properties: + query: + $ref: "#/components/schemas/SLOListWidgetQuery" + request_type: + $ref: "#/components/schemas/SLOListWidgetRequestType" + required: + - query + - request_type + type: object + SLOListWidgetRequestType: + description: Widget request type. + enum: + - slo_list + example: "slo_list" + type: string + x-enum-varnames: + - SLO_LIST + SLOOverallStatuses: + description: Overall status of the SLO by timeframes. + properties: + error: + description: Error message if SLO status or error budget could not be calculated. + nullable: true + type: string + error_budget_remaining: + description: Remaining error budget of the SLO in percentage. + example: 100 + format: double + nullable: true + type: number + indexed_at: + description: |- + timestamp (UNIX time in seconds) of when the SLO status and error budget + were calculated. + example: 1662496260 + format: int64 + type: integer + raw_error_budget_remaining: + $ref: "#/components/schemas/SLORawErrorBudgetRemaining" + span_precision: + description: The amount of decimal places the SLI value is accurate to. + example: 2 + format: int64 + nullable: true + type: integer + state: + $ref: "#/components/schemas/SLOState" + status: + description: The status of the SLO. + example: 100 + format: double + nullable: true + type: number + target: + description: The target of the SLO. + example: 99 + format: double + type: number + timeframe: + $ref: "#/components/schemas/SLOTimeframe" + type: object + SLORawErrorBudgetRemaining: + description: Error budget remaining for an SLO. + nullable: true + properties: + unit: + description: Error budget remaining unit. + example: "requests" + type: string + value: + description: Error budget remaining value. + example: 60 + format: double + type: number + type: object + SLOResponse: + description: A service level objective response containing a single service level objective. + properties: + data: + $ref: "#/components/schemas/SLOResponseData" + errors: + description: |- + An array of error messages. Each endpoint documents how/whether this field is + used. + items: + description: The error message. + type: string + type: array + type: object + SLOResponseData: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). + properties: + configured_alert_ids: + description: A list of SLO monitors IDs that reference this SLO. This field is returned only when `with_configured_alert_ids` parameter is true in query. + example: [123, 456, 789] + items: + description: A monitor ID. + format: int64 + type: integer + type: array + created_at: + description: |- + Creation timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + creator: + $ref: "#/components/schemas/Creator" + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + groups: + description: |- + A list of (up to 20) monitor groups that narrow the scope of a monitor service level objective. + + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the `monitor_ids` field is one. + example: ["env:prod", "role:mysql"] + items: + description: A group name, for instance `env:prod`. + type: string + type: array + id: + description: |- + A unique identifier for the service level objective object. + + Always included in service level objective responses. + readOnly: true + type: string + modified_at: + description: |- + Modification timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + monitor_ids: + description: |- + A list of monitor ids that defines the scope of a monitor service level + objective. **Required if type is `monitor`**. + items: + description: A monitor ID. + format: int64 + type: integer + type: array + monitor_tags: + description: |- + The union of monitor tags for all monitors referenced by the `monitor_ids` + field. + Always included in service level objective responses for monitor service level + objectives (but may be empty). Ignored in create/update requests. Does not + affect which monitors are included in the service level objective (that is + determined entirely by the `monitor_ids` field). + items: + description: A monitor tag. + type: string + type: array + name: + description: The name of the service level objective object. + example: "Custom Metric SLO" + type: string + query: + $ref: "#/components/schemas/ServiceLevelObjectiveQuery" + description: |- + The metric query used to define a count-based SLO as the ratio of good events to total events. + sli_specification: + $ref: "#/components/schemas/SLOSliSpec" + description: |- + A generic SLI specification. This is currently used for time-slice and count-based (metric) SLOs only. + tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + example: ["env:prod", "app:core"] + items: + description: A tag to apply to your SLO. + type: string + type: array + target_threshold: + description: |- + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + example: 99.9 + format: double + type: number + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: [{"target": 95, "timeframe": "7d"}, {"target": 95, "timeframe": "30d", "warning": 97}] + items: + $ref: "#/components/schemas/SLOThreshold" + type: array + timeframe: + $ref: "#/components/schemas/SLOTimeframe" + type: + $ref: "#/components/schemas/SLOType" + warning_threshold: + description: |- + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. + example: 99.95 + format: double + type: number + type: object + SLOSliSpec: + description: |- + A generic SLI specification. This is used for time-slice and count-based (metric) SLOs only. + oneOf: + - $ref: "#/components/schemas/SLOTimeSliceSpec" + - $ref: "#/components/schemas/SLOCountSpec" + SLOState: + description: State of the SLO. + enum: + - breached + - warning + - ok + - no_data + example: ok + type: string + x-enum-varnames: + - BREACHED + - WARNING + - OK + - NO_DATA + SLOStatus: + description: Status of the SLO's primary timeframe. + properties: + calculation_error: + description: Error message if SLO status or error budget could not be calculated. + nullable: true + type: string + error_budget_remaining: + description: Remaining error budget of the SLO in percentage. + example: 100 + format: double + nullable: true + type: number + indexed_at: + description: |- + timestamp (UNIX time in seconds) of when the SLO status and error budget + were calculated. + example: 1662496260 + format: int64 + type: integer + raw_error_budget_remaining: + $ref: "#/components/schemas/SLORawErrorBudgetRemaining" + sli: + description: |- + The current service level indicator (SLI) of the SLO, also known as 'status'. This is a percentage value from 0-100 (inclusive). + example: 100 + format: double + nullable: true + type: number + span_precision: + description: The number of decimal places the SLI value is accurate to. + example: 2 + format: int64 + nullable: true + type: integer + state: + $ref: "#/components/schemas/SLOState" + type: object + SLOThreshold: + description: SLO thresholds (target and optionally warning) for a single time window. + properties: + target: + description: |- + The target value for the service level indicator within the corresponding + timeframe. + example: 99.9 + format: double + type: number + target_display: + description: |- + A string representation of the target that indicates its precision. + It uses trailing zeros to show significant decimal places (for example `98.00`). + + Always included in service level objective responses. Ignored in + create/update requests. + example: "99.9" + type: string + timeframe: + $ref: "#/components/schemas/SLOTimeframe" + warning: + description: |- + The warning value for the service level objective. + example: 90.0 + format: double + type: number + warning_display: + description: |- + A string representation of the warning target (see the description of + the `target_display` field for details). + + Included in service level objective responses if a warning target exists. + Ignored in create/update requests. + example: "90.0" + type: string + required: + - timeframe + - target + type: object + SLOTimeSliceComparator: + description: |- + The comparator used to compare the SLI value to the threshold. + enum: + - ">" + - ">=" + - "<" + - "<=" + example: ">" + type: string + x-enum-varnames: + - GREATER + - GREATER_EQUAL + - LESS + - LESS_EQUAL + SLOTimeSliceCondition: + description: |- + The time-slice condition, composed of 3 parts: 1. the metric timeseries query, 2. the comparator, + and 3. the threshold. Optionally, a fourth part, the query interval, can be provided. + example: + comparator: "<" + query: + formulas: + - formula: "query2/query1" + queries: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{*} by {env}.as_count()" + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.errors{*} by {env}.as_count()" + threshold: 5 + properties: + comparator: + $ref: "#/components/schemas/SLOTimeSliceComparator" + query: + $ref: "#/components/schemas/SLOTimeSliceQuery" + query_interval_seconds: + $ref: "#/components/schemas/SLOTimeSliceInterval" + threshold: + description: |- + The threshold value to which each SLI value will be compared. + example: 5 + format: double + type: number + required: + - comparator + - threshold + - query + type: object + SLOTimeSliceInterval: + description: |- + The interval used when querying data, which defines the size of a time slice. + Two values are allowed: 60 (1 minute) and 300 (5 minutes). + If not provided, the value defaults to 300 (5 minutes). + enum: + - 60 + - 300 + example: 300 + format: int32 + type: integer + x-enum-varnames: + - ONE_MINUTE + - FIVE_MINUTES + SLOTimeSliceQuery: + description: |- + The queries and formula used to calculate the SLI value. + example: + formulas: + - formula: "query2/query1" + queries: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{*} by {env}.as_count()" + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.errors{*} by {env}.as_count()" + properties: + formulas: + description: |- + A list that contains exactly one formula, as only a single formula may be used in a time-slice SLO. + example: + - formula: "query1 - default_zero(query2)" + items: + $ref: "#/components/schemas/SLOFormula" + maxItems: 1 + minItems: 1 + type: array + queries: + description: |- + A list of queries that are used to calculate the SLI value. + example: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{*} by {env}.as_count()" + items: + $ref: "#/components/schemas/SLODataSourceQueryDefinition" + type: array + required: + - formulas + - queries + type: object + SLOTimeSliceSpec: + additionalProperties: false + description: |- + A time-slice SLI specification. + example: + time_slice: + comparator: "<" + query: + formulas: + - formula: "query2/query1" + queries: + - data_source: metrics + name: "query1" + query: "sum:trace.servlet.request.hits{*} by {env}.as_count()" + - data_source: metrics + name: "query2" + query: "sum:trace.servlet.request.errors{*} by {env}.as_count()" + threshold: 5 + properties: + time_slice: + $ref: "#/components/schemas/SLOTimeSliceCondition" + required: + - time_slice + type: object + SLOTimeframe: + description: |- + The SLO time window options. Note that "custom" is not a valid option for creating + or updating SLOs. It is only used when querying SLO history over custom timeframes. + enum: + - 7d + - 30d + - 90d + - custom + example: 30d + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + - CUSTOM + SLOType: + description: The type of the service level objective. + enum: + - metric + - monitor + - time_slice + example: "metric" + type: string + x-enum-varnames: + - METRIC + - MONITOR + - TIME_SLICE + SLOTypeNumeric: + description: |- + A numeric representation of the type of the service level objective (`0` for + monitor, `1` for metric). Always included in service level objective responses. + Ignored in create/update requests. + enum: + - 0 + - 1 + - 2 + example: 0 + format: int32 + type: integer + x-enum-varnames: + - MONITOR + - METRIC + - TIME_SLICE + SLOWidgetDefinition: + description: Use the SLO and uptime widget to track your SLOs (Service Level Objectives) and uptime on dashboards. + properties: + additional_query_filters: + description: Additional filters applied to the SLO query. + type: string + description: + description: The description of the widget. + type: string + global_time_target: + description: Defined global time target. + type: string + show_error_budget: + description: Defined error budget. + type: boolean + slo_id: + description: ID of the SLO displayed. + type: string + time_windows: + description: Times being monitored. + items: + $ref: "#/components/schemas/WidgetTimeWindows" + type: array + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/SLOWidgetDefinitionType" + view_mode: + $ref: "#/components/schemas/WidgetViewMode" + view_type: + default: detail + description: Type of view displayed by the widget. + example: detail + type: string + required: + - type + - view_type + type: object + SLOWidgetDefinitionType: + default: slo + description: Type of the SLO widget. + enum: + - slo + example: slo + type: string + x-enum-varnames: + - SLO + SankeyJoinKeys: + additionalProperties: false + description: Join keys. + properties: + primary: + description: Primary join key. + example: "session.id" + type: string + secondary: + description: Secondary join keys. + items: + description: Secondary join key. + type: string + type: array + required: + - primary + type: object + SankeyNetworkDataSource: + default: network + description: Network data source type. + enum: + - network_device_flows + - network + example: network + type: string + x-enum-varnames: + - NETWORK_DEVICE_FLOWS + - NETWORK + SankeyNetworkQuery: + additionalProperties: false + description: Query configuration for Sankey network widget. + properties: + compute: + $ref: "#/components/schemas/SankeyNetworkQueryCompute" + data_source: + $ref: "#/components/schemas/SankeyNetworkDataSource" + group_by: + description: Fields to group by. + example: ["source", "destination"] + items: + description: A field name to group by. + type: string + type: array + limit: + description: Maximum number of results. + example: 100 + format: int64 + type: integer + mode: + $ref: "#/components/schemas/SankeyNetworkQueryMode" + query_string: + description: Query string for filtering network data. + example: "*" + type: string + should_exclude_missing: + description: Whether to exclude missing values. + type: boolean + sort: + $ref: "#/components/schemas/SankeyNetworkQuerySort" + required: + - data_source + - query_string + - group_by + - limit + type: object + SankeyNetworkQueryCompute: + additionalProperties: false + description: Compute aggregation for network queries. + properties: + aggregation: + $ref: "#/components/schemas/EventsAggregation" + metric: + description: Metric to aggregate. + example: "" + type: string + required: + - aggregation + - metric + type: object + SankeyNetworkQueryMode: + default: target + description: Sankey mode for network queries. + enum: + - target + example: target + type: string + x-enum-varnames: + - TARGET + SankeyNetworkQuerySort: + description: Sort configuration for network queries. + properties: + field: + description: Field to sort by. + type: string + order: + $ref: "#/components/schemas/WidgetSort" + type: object + SankeyNetworkRequest: + additionalProperties: false + description: Sankey widget request for network data source. + properties: + query: + $ref: "#/components/schemas/SankeyNetworkQuery" + request_type: + $ref: "#/components/schemas/SankeyNetworkRequestType" + required: + - query + - request_type + type: object + SankeyNetworkRequestType: + default: netflow_sankey + description: Type of request for network Sankey widget. + enum: + - netflow_sankey + example: netflow_sankey + type: string + x-enum-varnames: + - NETFLOW_SANKEY + SankeyRumDataSource: + default: product_analytics + description: Product Analytics or RUM data source type. + enum: + - rum + - product_analytics + example: product_analytics + type: string + x-enum-varnames: + - RUM + - PRODUCT_ANALYTICS + SankeyRumQuery: + additionalProperties: false + description: Query configuration for Product Analytics or RUM Sankey widget. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + data_source: + $ref: "#/components/schemas/SankeyRumDataSource" + entries_per_step: + description: Entries per step. + format: int64 + type: integer + join_keys: + $ref: "#/components/schemas/SankeyJoinKeys" + mode: + $ref: "#/components/schemas/SankeyRumQueryMode" + number_of_steps: + description: Number of steps. + format: int64 + type: integer + occurrences: + $ref: "#/components/schemas/ProductAnalyticsAudienceOccurrenceFilter" + query_string: + description: RUM event search query used to filter views or actions. + example: "@type:view" + type: string + source: + description: Source. + type: string + subquery_id: + description: Subquery ID. + type: string + target: + description: Target. + type: string + required: + - data_source + - query_string + - mode + type: object + SankeyRumQueryMode: + default: source + description: Sankey mode for Product Analytics or RUM queries. + enum: + - source + - target + example: source + type: string + x-enum-varnames: + - SOURCE + - TARGET + SankeyRumRequest: + additionalProperties: false + description: Sankey widget request for Product Analytics or RUM data source. + properties: + query: + $ref: "#/components/schemas/SankeyRumQuery" + request_type: + $ref: "#/components/schemas/SankeyWidgetDefinitionType" + required: + - query + - request_type + type: object + SankeyWidgetDefinition: + additionalProperties: false + description: The Sankey diagram visualizes the flow of data between categories, stages or sets of values. + properties: + requests: + description: List of Sankey widget requests. + example: + - query: + data_source: rum + mode: source + query_string: "@type:view" + request_type: sankey + items: + $ref: "#/components/schemas/SankeyWidgetRequest" + minItems: 1 + type: array + show_other_links: + description: Whether to show links for "other" category. + type: boolean + sort_nodes: + description: Whether to sort nodes in the Sankey diagram. + type: boolean + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/SankeyWidgetDefinitionType" + required: + - type + - requests + type: object + SankeyWidgetDefinitionType: + default: sankey + description: Type of the Sankey widget. + enum: + - sankey + example: sankey + type: string + x-enum-varnames: + - SANKEY + SankeyWidgetRequest: + description: Request definition for Sankey widget. + oneOf: + - $ref: "#/components/schemas/SankeyRumRequest" + - $ref: "#/components/schemas/SankeyNetworkRequest" + ScatterPlotRequest: + description: Updated scatter plot. + properties: + aggregator: + $ref: "#/components/schemas/ScatterplotWidgetAggregator" + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + description: Query definition. + type: string + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + type: object + ScatterPlotWidgetDefinition: + description: The scatter plot visualization allows you to graph a chosen scope over two different metrics with their respective aggregation. + properties: + color_by_groups: + description: List of groups used for colors. + items: + description: Group name. + type: string + type: array + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + $ref: "#/components/schemas/ScatterPlotWidgetDefinitionRequests" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/ScatterPlotWidgetDefinitionType" + xaxis: + $ref: "#/components/schemas/WidgetAxis" + yaxis: + $ref: "#/components/schemas/WidgetAxis" + required: + - type + - requests + type: object + ScatterPlotWidgetDefinitionRequests: + description: Widget definition. + example: {"x": {"q": "system.cpu.user"}, "y": {"q": "system.mem.used"}} + properties: + table: + $ref: "#/components/schemas/ScatterplotTableRequest" + x: + $ref: "#/components/schemas/ScatterPlotRequest" + y: + $ref: "#/components/schemas/ScatterPlotRequest" + type: object + ScatterPlotWidgetDefinitionType: + default: scatterplot + description: Type of the scatter plot widget. + enum: + - scatterplot + example: scatterplot + type: string + x-enum-varnames: + - SCATTERPLOT + ScatterplotDimension: + description: Dimension of the Scatterplot. + enum: + - x + - y + - radius + - color + example: radius + type: string + x-enum-varnames: + - X + - Y + - RADIUS + - COLOR + ScatterplotTableRequest: + description: Scatterplot request containing formulas and functions. + properties: + formulas: + description: List of Scatterplot formulas that operate on queries. + items: + $ref: "#/components/schemas/ScatterplotWidgetFormula" + type: array + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + type: object + ScatterplotWidgetAggregator: + description: Aggregator used for the request. + enum: + - avg + - last + - max + - min + - sum + type: string + x-enum-varnames: + - AVERAGE + - LAST + - MAXIMUM + - MINIMUM + - SUM + ScatterplotWidgetFormula: + description: Formula to be used in a Scatterplot widget query. + properties: + alias: + description: Expression alias. + example: "my-query" + type: string + dimension: + $ref: "#/components/schemas/ScatterplotDimension" + formula: + description: String expression built from queries, formulas, and functions. + example: "func(a) + b" + type: string + required: + - formula + - dimension + type: object + SearchSLOQuery: + description: |- + A metric-based SLO. **Required if type is `metric`**. Note that Datadog only allows the sum by aggregator + to be used because this will sum up all request counts instead of averaging them, or taking the max or + min of all of those requests. + nullable: true + properties: + denominator: + description: A Datadog metric query for total (valid) events. + example: "sum:my.custom.metric{*}.as_count()" + type: string + metrics: + description: |- + Metric names used in the query's numerator and denominator. + This field will return null and will be implemented in the next version of this endpoint. + example: ["my.custom.metric", "my.other.custom.metric"] + items: + description: Metric name. + type: string + nullable: true + type: array + numerator: + description: A Datadog metric query for good events. + example: "sum:my.custom.metric{type:good}.as_count()" + type: string + type: object + SearchSLOResponse: + description: A search SLO response containing results from the search query. + properties: + data: + $ref: "#/components/schemas/SearchSLOResponseData" + links: + $ref: "#/components/schemas/SearchSLOResponseLinks" + meta: + $ref: "#/components/schemas/SearchSLOResponseMeta" + type: object + SearchSLOResponseData: + description: Data from search SLO response. + properties: + attributes: + $ref: "#/components/schemas/SearchSLOResponseDataAttributes" + type: + description: Type of service level objective result. + example: "" + type: string + type: object + SearchSLOResponseDataAttributes: + description: Attributes + properties: + facets: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacets" + slos: + description: SLOs + items: + $ref: "#/components/schemas/SearchServiceLevelObjective" + type: array + type: object + SearchSLOResponseDataAttributesFacets: + description: Facets + properties: + all_tags: + description: All tags associated with an SLO. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString" + type: array + creator_name: + description: Creator of an SLO. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString" + type: array + env_tags: + description: Tags with the `env` tag key. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString" + type: array + service_tags: + description: Tags with the `service` tag key. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString" + type: array + slo_type: + description: Type of SLO. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectInt" + type: array + target: + description: SLO Target + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectInt" + type: array + team_tags: + description: Tags with the `team` tag key. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString" + type: array + timeframe: + description: Timeframes of SLOs. + items: + $ref: "#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString" + type: array + type: object + SearchSLOResponseDataAttributesFacetsObjectInt: + description: Facet + properties: + count: + description: Count + format: int64 + type: integer + name: + description: Facet + format: double + type: number + type: object + SearchSLOResponseDataAttributesFacetsObjectString: + description: Facet + properties: + count: + description: Count + format: int64 + type: integer + name: + description: Facet + type: string + type: object + SearchSLOResponseLinks: + description: Pagination links. + properties: + first: + description: Link to last page. + type: string + last: + description: Link to first page. + nullable: true + type: string + next: + description: Link to the next page. + type: string + prev: + description: Link to previous page. + nullable: true + type: string + self: + description: Link to current page. + type: string + type: object + SearchSLOResponseMeta: + description: Searches metadata returned by the API. + properties: + pagination: + $ref: "#/components/schemas/SearchSLOResponseMetaPage" + type: object + SearchSLOResponseMetaPage: + description: Pagination metadata returned by the API. + properties: + first_number: + description: The first number. + format: int64 + type: integer + last_number: + description: The last number. + format: int64 + type: integer + next_number: + description: The next number. + format: int64 + type: integer + number: + description: The page number. + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + type: integer + size: + description: The size of the response. + format: int64 + type: integer + total: + description: The total number of SLOs in the response. + format: int64 + type: integer + type: + description: Type of pagination. + type: string + type: object + SearchSLOThreshold: + description: SLO thresholds (target and optionally warning) for a single time window. + properties: + target: + description: |- + The target value for the service level indicator within the corresponding + timeframe. + example: 99.9 + format: double + type: number + target_display: + description: |- + A string representation of the target that indicates its precision. + It uses trailing zeros to show significant decimal places (for example `98.00`). + + Always included in service level objective responses. Ignored in + create/update requests. + example: "99.9" + type: string + timeframe: + $ref: "#/components/schemas/SearchSLOTimeframe" + warning: + description: |- + The warning value for the service level objective. + example: 90.0 + format: double + nullable: true + type: number + warning_display: + description: |- + A string representation of the warning target (see the description of + the `target_display` field for details). + + Included in service level objective responses if a warning target exists. + Ignored in create/update requests. + example: "90.0" + nullable: true + type: string + required: + - timeframe + - target + type: object + SearchSLOTimeframe: + description: The SLO time window options. + enum: + - 7d + - 30d + - 90d + example: 30d + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + SearchServiceLevelObjective: + description: A service level objective data container. + properties: + data: + $ref: "#/components/schemas/SearchServiceLevelObjectiveData" + type: object + SearchServiceLevelObjectiveAttributes: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, and `tags`). + properties: + all_tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + example: ["env:prod", "app:core"] + items: + description: A tag associated with the service level objective. + type: string + type: array + created_at: + description: |- + Creation timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + creator: + $ref: "#/components/schemas/SLOCreator" + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + env_tags: + description: Tags with the `env` tag key. + items: + description: A tag with the `env` tag key. + type: string + type: array + groups: + description: |- + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + Included in service level objective responses if it is not empty. + example: ["env:prod", "role:mysql"] + items: + description: A group name, for instance `env:prod`. + type: string + nullable: true + type: array + modified_at: + description: |- + Modification timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + monitor_ids: + description: |- + A list of monitor ids that defines the scope of a monitor service level + objective. + items: + description: A monitor ID. + format: int64 + type: integer + nullable: true + type: array + name: + description: The name of the service level objective object. + example: "Custom Metric SLO" + type: string + overall_status: + description: calculated status and error budget remaining. + items: + $ref: "#/components/schemas/SLOOverallStatuses" + type: array + query: + $ref: "#/components/schemas/SearchSLOQuery" + service_tags: + description: Tags with the `service` tag key. + items: + description: A tag with the `service` tag key. + type: string + type: array + slo_type: + $ref: "#/components/schemas/SLOType" + status: + $ref: "#/components/schemas/SLOStatus" + team_tags: + description: Tags with the `team` tag key. + items: + description: A tag with the `team` tag key. + type: string + type: array + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: [{"target": 95, "target_display": "95", "timeframe": "7d"}, {"target": 95, "target_display": "95", "timeframe": "30d", "warning": 97, "warning_display": "97"}] + items: + $ref: "#/components/schemas/SearchSLOThreshold" + type: array + type: object + SearchServiceLevelObjectiveData: + description: A service level objective ID and attributes. + properties: + attributes: + $ref: "#/components/schemas/SearchServiceLevelObjectiveAttributes" + id: + description: |- + A unique identifier for the service level objective object. + + Always included in service level objective responses. + readOnly: true + type: string + type: + description: The type of the object, must be `slo`. + type: string + type: object + SelectableTemplateVariableItems: + description: Object containing the template variable's name, associated tag/attribute, default value and selectable values. + properties: + default_value: + description: The default value of the template variable. + type: string + name: + description: Name of the template variable. + type: string + prefix: + description: The tag/attribute key associated with the template variable. + type: string + type: + description: The type of variable. This is to differentiate between filter variables (interpolated in query) and group by variables (interpolated into group by). + nullable: true + type: string + visible_tags: + description: List of visible tag values on the shared dashboard. + items: + description: Other values for this tag that can be selected on the shared dashboard. + type: string + nullable: true + type: array + type: object + Series: + description: |- + A metric to submit to Datadog. + See [Datadog metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). + properties: + host: + description: The name of the host that produced the metric. + example: test.example.com + type: string + interval: + default: + description: If the type of the metric is rate or count, define the corresponding interval in seconds. + example: 20 + format: int64 + nullable: true + type: integer + metric: + description: The name of the timeseries. + example: system.load.1 + type: string + points: + description: Points relating to a metric. All points must be tuples with timestamp and a scalar value (cannot be a string). Timestamps should be in POSIX time in seconds, and cannot be more than ten minutes in the future or more than one hour in the past. + example: + - [1575317847.0, 0.5] + items: + $ref: "#/components/schemas/Point" + type: array + tags: + description: A list of tags associated with the metric. + example: ["environment:test"] + items: + description: Individual tags. + type: string + type: array + type: + default: "" + description: The type of the metric. Valid types are "",`count`, `gauge`, and `rate`. + example: rate + type: string + required: + - metric + - points + type: object + ServiceCheck: + description: An object containing service check and status. + properties: + check: + description: The check. + example: app.ok + type: string + host_name: + description: The host name correlated with the check. + example: app.host1 + type: string + message: + description: Message containing check status. + example: app is running + type: string + status: + $ref: "#/components/schemas/ServiceCheckStatus" + tags: + description: Tags related to a check. + example: ["environment:test"] + items: + description: Items related to a check. + type: string + type: array + timestamp: + description: Time of check. + format: int64 + type: integer + required: + - check + - status + - tags + - host_name + type: object + ServiceCheckStatus: + description: The status of a service check. Set to `0` for OK, `1` for warning, `2` for critical, and `3` for unknown. + enum: + - 0 + - 1 + - 2 + - 3 + example: 0 + format: int32 + type: integer + x-enum-varnames: + - OK + - WARNING + - CRITICAL + - UNKNOWN + ServiceChecks: + description: The service checks. + items: + $ref: "#/components/schemas/ServiceCheck" + type: array + ServiceLevelObjective: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). + properties: + created_at: + description: |- + Creation timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + creator: + $ref: "#/components/schemas/Creator" + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + groups: + description: |- + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the `monitor_ids` field is one. + example: ["env:prod", "role:mysql"] + items: + description: A group name, for instance `env:prod`. + type: string + type: array + id: + description: |- + A unique identifier for the service level objective object. + + Always included in service level objective responses. + readOnly: true + type: string + modified_at: + description: |- + Modification timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + monitor_ids: + description: |- + A list of monitor ids that defines the scope of a monitor service level + objective. **Required if type is `monitor`**. + items: + description: A monitor ID. + format: int64 + type: integer + type: array + monitor_tags: + description: |- + The union of monitor tags for all monitors referenced by the `monitor_ids` + field. + Always included in service level objective responses for monitor-based service level + objectives (but may be empty). Ignored in create/update requests. Does not + affect which monitors are included in the service level objective (that is + determined entirely by the `monitor_ids` field). + items: + description: A monitor tag. + type: string + type: array + name: + description: The name of the service level objective object. + example: "Custom Metric SLO" + type: string + query: + $ref: "#/components/schemas/ServiceLevelObjectiveQuery" + sli_specification: + $ref: "#/components/schemas/SLOSliSpec" + tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + example: ["env:prod", "app:core"] + items: + description: A tag to apply to your SLO. + type: string + type: array + target_threshold: + description: |- + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + example: 99.9 + format: double + type: number + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: [{"target": 95, "timeframe": "7d"}, {"target": 95, "timeframe": "30d", "warning": 97}] + items: + $ref: "#/components/schemas/SLOThreshold" + type: array + timeframe: + $ref: "#/components/schemas/SLOTimeframe" + type: + $ref: "#/components/schemas/SLOType" + warning_threshold: + description: |- + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. + example: 99.95 + format: double + type: number + required: + - name + - thresholds + - type + type: object + ServiceLevelObjectiveQuery: + description: |- + A count-based (metric) SLO query. This field is superseded by `sli_specification` but is retained for backwards compatibility. Note that Datadog only allows the sum by aggregator + to be used because this will sum up all request counts instead of averaging them, or taking the max or + min of all of those requests. + properties: + denominator: + description: A Datadog metric query for total (valid) events. + example: "sum:my.custom.metric{*}.as_count()" + type: string + numerator: + description: A Datadog metric query for good events. + example: "sum:my.custom.metric{type:good}.as_count()" + type: string + required: + - numerator + - denominator + type: object + ServiceLevelObjectiveRequest: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). + properties: + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + groups: + description: |- + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the `monitor_ids` field is one. + example: ["env:prod", "role:mysql"] + items: + description: A group name, for instance `env:prod`. + type: string + type: array + monitor_ids: + description: |- + A list of monitor IDs that defines the scope of a monitor service level + objective. **Required if type is `monitor`**. + items: + description: A monitor ID. + format: int64 + type: integer + type: array + name: + description: The name of the service level objective object. + example: "Custom Metric SLO" + type: string + query: + $ref: "#/components/schemas/ServiceLevelObjectiveQuery" + sli_specification: + $ref: "#/components/schemas/SLOSliSpec" + tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + example: ["env:prod", "app:core"] + items: + description: A tag to apply to your SLO. + type: string + type: array + target_threshold: + description: |- + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + example: 99.9 + format: double + type: number + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: [{"target": 95, "timeframe": "7d"}, {"target": 95, "timeframe": "30d", "warning": 97}] + items: + $ref: "#/components/schemas/SLOThreshold" + type: array + timeframe: + $ref: "#/components/schemas/SLOTimeframe" + type: + $ref: "#/components/schemas/SLOType" + warning_threshold: + description: |- + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. + example: 99.95 + format: double + type: number + required: + - name + - thresholds + - type + type: object + ServiceMapWidgetDefinition: + description: This widget displays a map of a service to all of the services that call it, and all of the services that it calls. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: ["*"] + items: + description: Filter name. + type: string + minItems: 1 + type: array + service: + description: The ID of the service you want to map. + example: "" + type: string + title: + description: The title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/ServiceMapWidgetDefinitionType" + required: + - type + - filters + - service + type: object + ServiceMapWidgetDefinitionType: + default: servicemap + description: Type of the service map widget. + enum: + - servicemap + example: servicemap + type: string + x-enum-varnames: + - SERVICEMAP + ServiceSummaryWidgetDefinition: + description: The service summary displays the graphs of a chosen service in your dashboard. + properties: + description: + description: The description of the widget. + type: string + display_format: + $ref: "#/components/schemas/WidgetServiceSummaryDisplayFormat" + env: + description: APM environment. + example: "" + type: string + service: + description: APM service. + example: "" + type: string + show_breakdown: + description: Whether to show the latency breakdown or not. + type: boolean + show_distribution: + description: Whether to show the latency distribution or not. + type: boolean + show_errors: + description: Whether to show the error metrics or not. + type: boolean + show_hits: + description: Whether to show the hits metrics or not. + type: boolean + show_latency: + description: Whether to show the latency metrics or not. + type: boolean + show_resource_list: + description: Whether to show the resource list or not. + type: boolean + size_format: + $ref: "#/components/schemas/WidgetSizeFormat" + span_name: + description: APM span name. + example: "" + type: string + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/ServiceSummaryWidgetDefinitionType" + required: + - type + - env + - service + - span_name + type: object + ServiceSummaryWidgetDefinitionType: + default: trace_service + description: Type of the service summary widget. + enum: + - trace_service + example: trace_service + type: string + x-enum-varnames: + - TRACE_SERVICE + SharedDashboard: + description: |- + The metadata object associated with how a dashboard has been/will be shared. + properties: + author: + $ref: "#/components/schemas/SharedDashboardAuthor" + created: + description: Date the dashboard was shared. + format: date-time + readOnly: true + type: string + dashboard_id: + description: ID of the dashboard to share. + example: "123-abc-456" + type: string + dashboard_type: + $ref: "#/components/schemas/DashboardType" + embeddable_domains: + description: The `SharedDashboard` `embeddable_domains`. + example: ["https://domain.atlassian.net/", "http://myserver.com/"] + items: + description: The allowlisted referrers for an EMBED shared dashboard. + type: string + type: array + expiration: + description: The time when an OPEN shared dashboard becomes publicly unavailable. + format: date-time + nullable: true + type: string + global_time: + $ref: "#/components/schemas/DashboardGlobalTime" + global_time_selectable_enabled: + description: Whether to allow viewers to select a different global time setting for the shared dashboard. + nullable: true + type: boolean + invitees: + description: The `SharedDashboard` `invitees`. + example: [{"access_expiration": "2030-01-01T12:00:00.00Z", "email": "test@datadoghq.com"}, {"access_expiration": null, "email": "test2@datadoghq.com"}] + items: + $ref: "#/components/schemas/SharedDashboardInviteesItems" + type: array + last_accessed: + description: The last time the shared dashboard was accessed. Null if never accessed. + format: date-time + nullable: true + readOnly: true + type: string + public_url: + description: URL of the shared dashboard. + readOnly: true + type: string + selectable_template_vars: + description: List of objects representing template variables on the shared dashboard which can have selectable values. + example: [{"default_value": "*", "name": "exampleVar", "prefix": "test", "visible_tags": ["selectableValue1", "selectableValue2"]}] + items: + $ref: "#/components/schemas/SelectableTemplateVariableItems" + nullable: true + type: array + share_list: + deprecated: true + description: List of email addresses that can receive an invitation to access to the shared dashboard. + example: ["test@datadoghq.com", "test2@email.com"] + items: + description: Email address that can receive an invitation to access the shared dashboard. + type: string + nullable: true + type: array + share_type: + $ref: "#/components/schemas/DashboardShareType" + status: + $ref: "#/components/schemas/SharedDashboardStatus" + title: + description: Title of the shared dashboard. + type: string + token: + description: A unique token assigned to the shared dashboard. + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/ViewingPreferences" + required: + - dashboard_id + - dashboard_type + type: object + SharedDashboardAuthor: + description: User who shared the dashboard. + properties: + handle: + description: Identifier of the user who shared the dashboard. + example: test@datadoghq.com + readOnly: true + type: string + name: + description: Name of the user who shared the dashboard. + nullable: true + readOnly: true + type: string + readOnly: true + type: object + SharedDashboardInviteesItems: + description: The allowlisted invitees for an INVITE-only shared dashboard. + properties: + access_expiration: + description: Time of the invitee expiration. Null means the invite will not expire. + format: date-time + nullable: true + type: string + created_at: + description: Time that the invitee was created. + format: date-time + readOnly: true + type: string + email: + description: Email of the invitee. + example: "test@datadoghq.com" + type: string + required: + - email + type: object + SharedDashboardInvites: + description: Invitations data and metadata that exists for a shared dashboard returned by the API. + example: {"data": [{"attributes": {"email": "test@datadoghq.com"}, "type": "public_dashboard_invitation"}]} + properties: + data: + $ref: "#/components/schemas/SharedDashboardInvitesData" + meta: + $ref: "#/components/schemas/SharedDashboardInvitesMeta" + required: + - data + type: object + SharedDashboardInvitesData: + description: An object or list of objects containing the information for an invitation to a shared dashboard. + example: [{"attributes": {"email": "test@datadoghq.com"}, "type": "public_dashboard_invitation"}] + oneOf: + - $ref: "#/components/schemas/SharedDashboardInvitesDataObject" + - $ref: "#/components/schemas/SharedDashboardInvitesDataList" + SharedDashboardInvitesDataList: + description: A list of objects containing the information for an invitation(s) to a shared dashboard. + example: [{"attributes": {"email": "test@datadoghq.com"}, "type": "public_dashboard_invitation"}] + items: + $ref: "#/components/schemas/SharedDashboardInvitesDataObject" + type: array + SharedDashboardInvitesDataObject: + description: Object containing the information for an invitation to a shared dashboard. + example: {"attributes": {"created_at": "2020-12-07T20:16:27.846985+00:00", "email": "test@datadoghq.com", "has_session": false, "invitation_expiry": "2020-12-07T21:16:27.840542+00:00", "session_expiry": null, "share_token": "XXXXXX-123456abcedfg7890hijklmnopqrstuv"}, "type": "public_dashboard_invitation"} + properties: + attributes: + $ref: "#/components/schemas/SharedDashboardInvitesDataObjectAttributes" + type: + $ref: "#/components/schemas/DashboardInviteType" + required: + - type + - attributes + type: object + SharedDashboardInvitesDataObjectAttributes: + description: Attributes of the shared dashboard invitation + example: {"created_at": "2020-12-07T20:16:27.846985+00:00", "email": "test@datadoghq.com", "has_session": false, "invitation_expiry": "2020-12-07T21:16:27.840542+00:00", "session_expiry": null, "share_token": "XXXXXX-123456abcedfg7890hijklmnopqrstuv"} + properties: + created_at: + description: When the invitation was sent. + format: date-time + readOnly: true + type: string + email: + description: An email address that an invitation has been (or if used in invitation request, will be) sent to. + nullable: false + type: string + has_session: + description: Indicates whether an active session exists for the invitation (produced when a user clicks the link in the email). + readOnly: true + type: boolean + invitation_expiry: + description: When the invitation expires. + format: date-time + readOnly: true + type: string + session_expiry: + description: When the invited user's session expires. null if the invitation has no associated session. + format: date-time + nullable: true + readOnly: true + type: string + share_token: + description: The unique token of the shared dashboard that was (or is to be) shared. + readOnly: true + type: string + type: object + SharedDashboardInvitesMeta: + description: Pagination metadata returned by the API. + properties: + page: + $ref: "#/components/schemas/SharedDashboardInvitesMetaPage" + readOnly: true + type: object + SharedDashboardInvitesMetaPage: + description: Object containing the total count of invitations across all pages + properties: + total_count: + description: The total number of invitations on this shared board, across all pages. + format: int64 + type: integer + type: object + SharedDashboardStatus: + description: Active means the dashboard is publicly available. Paused means the dashboard is not publicly available. + enum: + - active + - paused + example: "active" + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + SharedDashboardUpdateRequest: + description: |- + Update a shared dashboard's settings. + example: {"global_time": {"live_span": "1h"}, "share_list": ["test@datadoghq.com", "test2@datadoghq.com"], "share_type": "invite"} + properties: + embeddable_domains: + description: The `SharedDashboard` `embeddable_domains`. + example: ["https://domain.atlassian.net/", "http://myserver.com/"] + items: + description: The allowlisted referrers for an EMBED shared dashboard. + type: string + type: array + expiration: + description: The time when an OPEN shared dashboard becomes publicly unavailable. + format: date-time + nullable: true + type: string + global_time: + $ref: "#/components/schemas/SharedDashboardUpdateRequestGlobalTime" + global_time_selectable_enabled: + description: Whether to allow viewers to select a different global time setting for the shared dashboard. + nullable: true + type: boolean + invitees: + description: The `SharedDashboard` `invitees`. + example: [{"access_expiration": "2030-01-01T12:00:00.00Z", "email": "test@datadoghq.com"}, {"access_expiration": null, "email": "test2@datadoghq.com"}] + items: + $ref: "#/components/schemas/SharedDashboardInviteesItems" + type: array + selectable_template_vars: + description: List of objects representing template variables on the shared dashboard which can have selectable values. + example: [{"default_value": "*", "name": "exampleVar", "prefix": "test", "visible_tags": ["selectableValue1", "selectableValue2"]}] + items: + $ref: "#/components/schemas/SelectableTemplateVariableItems" + nullable: true + type: array + share_list: + deprecated: true + description: List of email addresses that can be given access to the shared dashboard. + example: ["test@datadoghq.com", "test2@email.com"] + items: + description: Email address that can receive an invitation to access the shared dashboard. + type: string + nullable: true + type: array + share_type: + $ref: "#/components/schemas/DashboardShareType" + status: + $ref: "#/components/schemas/SharedDashboardStatus" + title: + description: Title of the shared dashboard. + type: string + viewing_preferences: + $ref: "#/components/schemas/ViewingPreferences" + type: object + SharedDashboardUpdateRequestGlobalTime: + description: Timeframe setting for the shared dashboard. + example: {"live_span": "1h"} + nullable: true + properties: + live_span: + $ref: "#/components/schemas/DashboardGlobalTimeLiveSpan" + type: object + SignalArchiveReason: + description: Reason why a signal has been archived. + enum: + - none + - false_positive + - testing_or_maintenance + - investigated_case_opened + - true_positive_benign + - true_positive_malicious + - other + type: string + x-enum-varnames: + - NONE + - FALSE_POSITIVE + - TESTING_OR_MAINTENANCE + - INVESTIGATED_CASE_OPENED + - TRUE_POSITIVE_BENIGN + - TRUE_POSITIVE_MALICIOUS + - OTHER + SignalAssigneeUpdateRequest: + description: Attributes describing an assignee update operation over a security signal. + properties: + assignee: + description: The UUID of the user being assigned. Use empty string to return signal to unassigned. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + type: string + version: + $ref: "#/components/schemas/Version" + required: + - assignee + type: object + SignalStateUpdateRequest: + description: Attributes describing the change of state for a given state. + properties: + archiveComment: + description: Optional comment to explain why a signal is being archived. + type: string + archiveReason: + $ref: "#/components/schemas/SignalArchiveReason" + state: + $ref: "#/components/schemas/SignalTriageState" + version: + $ref: "#/components/schemas/Version" + required: + - state + type: object + SignalTriageState: + description: The new triage state of the signal. + enum: + - open + - archived + - under_review + example: "open" + type: string + x-enum-varnames: + - OPEN + - ARCHIVED + - UNDER_REVIEW + SlackIntegrationChannel: + description: The Slack channel configuration. + properties: + display: + $ref: "#/components/schemas/SlackIntegrationChannelDisplay" + name: + description: Your channel name. + example: "#general" + type: string + type: object + SlackIntegrationChannelDisplay: + description: Configuration options for what is shown in an alert event message. + properties: + message: + default: true + description: Show the main body of the alert event. + type: boolean + mute_buttons: + default: false + description: Show interactive buttons to mute the alerting monitor. + type: boolean + notified: + default: true + description: Show the list of @-handles in the alert event. + type: boolean + snapshot: + default: true + description: Show the alert event's snapshot image. + type: boolean + tags: + default: true + description: Show the scopes on which the monitor alerted. + type: boolean + type: object + SlackIntegrationChannels: + description: A list of configured Slack channels. + example: [{"display": {"message": true, "mute_buttons": true, "notified": true, "snapshot": true, "tags": true}, "name": "#channel_name_main_account"}, {"display": {"message": true, "mute_buttons": true, "notified": true, "snapshot": false, "tags": true}, "name": "#channel_name_doghouse"}] + items: + $ref: "#/components/schemas/SlackIntegrationChannel" + type: array + SplitConfig: + description: Encapsulates all user choices about how to split a graph. + properties: + limit: + description: Maximum number of graphs to display in the widget. + example: 24 + format: int64 + maximum: 500 + minimum: 1 + type: integer + sort: + $ref: "#/components/schemas/SplitSort" + split_dimensions: + description: The dimension(s) on which to split the graph + example: + - {"one_graph_per": "service"} + items: + $ref: "#/components/schemas/SplitDimension" + maxItems: 1 + minItems: 1 + type: array + static_splits: + description: Manual selection of tags making split graph widget static + items: + $ref: "#/components/schemas/SplitVectorEntry" + maxItems: 500 + type: array + required: + - split_dimensions + - limit + - sort + type: object + SplitConfigSortCompute: + description: Defines the metric and aggregation used as the sort value. + properties: + aggregation: + description: How to aggregate the sort metric for the purposes of ordering. + example: "sum" + type: string + metric: + description: The metric to use for sorting graphs. + example: "system.cpu.user" + type: string + required: + - aggregation + - metric + type: object + SplitDimension: + description: The property by which the graph splits + example: {"one_graph_per": "service"} + properties: + one_graph_per: + description: The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag. + example: "service" + type: string + required: + - one_graph_per + type: object + SplitGraphSourceWidgetDefinition: + description: The original widget we are splitting on. + oneOf: + - $ref: "#/components/schemas/BarChartWidgetDefinition" + - $ref: "#/components/schemas/ChangeWidgetDefinition" + - $ref: "#/components/schemas/GeomapWidgetDefinition" + - $ref: "#/components/schemas/QueryValueWidgetDefinition" + - $ref: "#/components/schemas/ScatterPlotWidgetDefinition" + - $ref: "#/components/schemas/SunburstWidgetDefinition" + - $ref: "#/components/schemas/TableWidgetDefinition" + - $ref: "#/components/schemas/TimeseriesWidgetDefinition" + - $ref: "#/components/schemas/ToplistWidgetDefinition" + - $ref: "#/components/schemas/TreeMapWidgetDefinition" + SplitGraphVizSize: + description: Size of the individual graphs in the split. + enum: + - xs + - sm + - md + - lg + example: sm + type: string + x-enum-varnames: + - XS + - SM + - MD + - LG + SplitGraphWidgetDefinition: + description: |- + The split graph widget allows you to create repeating units of a graph - one for each value in a group (for example: one per service) + properties: + has_uniform_y_axes: + description: Normalize y axes across graphs + type: boolean + size: + $ref: "#/components/schemas/SplitGraphVizSize" + source_widget_definition: + $ref: "#/components/schemas/SplitGraphSourceWidgetDefinition" + split_config: + $ref: "#/components/schemas/SplitConfig" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + type: + $ref: "#/components/schemas/SplitGraphWidgetDefinitionType" + required: + - size + - type + - source_widget_definition + - split_config + type: object + SplitGraphWidgetDefinitionType: + default: split_group + description: Type of the split graph widget + enum: + - split_group + example: split_group + type: string + x-enum-varnames: + - SPLIT_GROUP + SplitSort: + description: Controls the order in which graphs appear in the split. + properties: + compute: + $ref: "#/components/schemas/SplitConfigSortCompute" + order: + $ref: "#/components/schemas/WidgetSort" + required: + - order + type: object + SplitVectorEntry: + description: The widget displays one graph for each entry in this parameter. + example: [{"tag_key": "demo", "tag_values": ["env"]}] + items: + $ref: "#/components/schemas/SplitVectorEntryItem" + minItems: 1 + type: array + SplitVectorEntryItem: + description: The split graph list contains a graph for each value of the split dimension. + minLength: 1 + properties: + tag_key: + description: The tag key. + example: "demo" + minLength: 1 + type: string + tag_values: + description: The tag values. + example: ["env"] + items: + description: A tag value string. + minLength: 1 + type: string + type: array + required: + - tag_key + - tag_values + type: object + SuccessfulSignalUpdateResponse: + description: Updated signal data following a successfully performed update. + properties: + status: + description: Status of the response. + type: string + type: object + SunburstWidgetDefinition: + description: Sunbursts are spot on to highlight how groups contribute to the total of a query. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + hide_total: + description: Show the total value in this widget. + type: boolean + legend: + $ref: "#/components/schemas/SunburstWidgetLegend" + requests: + description: List of sunburst widget requests. + example: ["q/apm_query/log_query": "{}"] + items: + $ref: "#/components/schemas/SunburstWidgetRequest" + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/SunburstWidgetDefinitionType" + required: + - type + - requests + type: object + SunburstWidgetDefinitionType: + default: sunburst + description: Type of the Sunburst widget. + enum: + - sunburst + example: sunburst + type: string + x-enum-varnames: + - SUNBURST + SunburstWidgetLegend: + description: Configuration of the legend. + oneOf: + - $ref: "#/components/schemas/SunburstWidgetLegendTable" + - $ref: "#/components/schemas/SunburstWidgetLegendInlineAutomatic" + SunburstWidgetLegendInlineAutomatic: + description: Configuration of inline or automatic legends. + properties: + hide_percent: + description: Whether to hide the percentages of the groups. + type: boolean + hide_value: + description: Whether to hide the values of the groups. + type: boolean + type: + $ref: "#/components/schemas/SunburstWidgetLegendInlineAutomaticType" + required: + - type + type: object + SunburstWidgetLegendInlineAutomaticType: + description: Whether to show the legend inline or let it be automatically generated. + enum: + - inline + - automatic + example: "automatic" + type: string + x-enum-varnames: + - INLINE + - AUTOMATIC + SunburstWidgetLegendTable: + description: Configuration of table-based legend. + properties: + type: + $ref: "#/components/schemas/SunburstWidgetLegendTableType" + required: + - type + type: object + SunburstWidgetLegendTableType: + description: Whether or not to show a table legend. + enum: + - table + - none + example: "table" + type: string + x-enum-varnames: + - TABLE + - NONE + SunburstWidgetRequest: + description: Request definition of sunburst widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: "#/components/schemas/WidgetSortBy" + style: + $ref: "#/components/schemas/WidgetStyle" + type: object + SyntheticsAPIStep: + description: The steps used in a Synthetic multi-step API test. + oneOf: + - $ref: "#/components/schemas/SyntheticsAPITestStep" + - $ref: "#/components/schemas/SyntheticsAPIWaitStep" + - $ref: "#/components/schemas/SyntheticsAPISubtestStep" + SyntheticsAPISubtestStep: + description: The subtest step used in a Synthetics multi-step API test. + properties: + allowFailure: + description: Determines whether or not to continue with test if this step fails. + type: boolean + alwaysExecute: + description: A boolean set to always execute this step even if the previous step failed or was skipped. + type: boolean + exitIfSucceed: + description: Determines whether or not to exit the test if the step succeeds. + type: boolean + extractedValuesFromScript: + description: Generate variables using JavaScript. + type: string + id: + description: ID of the step. + example: "abc-def-123" + readOnly: true + type: string + isCritical: + description: |- + Determines whether or not to consider the entire test as failed if this step fails. + Can be used only if `allowFailure` is `true`. + type: boolean + name: + description: The name of the step. + example: "Example step name" + type: string + retry: + $ref: "#/components/schemas/SyntheticsTestOptionsRetry" + subtestPublicId: + description: Public ID of the test to be played as part of a `playSubTest` step type. + example: "" + type: string + subtype: + $ref: "#/components/schemas/SyntheticsAPISubtestStepSubtype" + required: + - name + - subtype + - subtestPublicId + type: object + SyntheticsAPISubtestStepSubtype: + description: The subtype of the Synthetic multi-step API subtest step. + enum: + - playSubTest + example: playSubTest + type: string + x-enum-varnames: + - PLAY_SUB_TEST + SyntheticsAPITest: + description: Object containing details about a Synthetic API test. + properties: + config: + $ref: "#/components/schemas/SyntheticsAPITestConfig" + locations: + description: Array of locations used to run the test. + example: ["aws:eu-west-3"] + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. + example: Notification message + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: "Example test name" + type: string + options: + $ref: "#/components/schemas/SyntheticsTestOptions" + public_id: + description: The public ID for the test. + example: 123-abc-456 + readOnly: true + type: string + status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + subtype: + $ref: "#/components/schemas/SyntheticsTestDetailsSubType" + tags: + description: Array of tags attached to the test. + example: ["env:production"] + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: "#/components/schemas/SyntheticsAPITestType" + required: + - name + - config + - locations + - options + - type + - message + type: object + SyntheticsAPITestConfig: + description: Configuration object for a Synthetic API test. + example: {"assertions": [{"operator": "lessThan", "target": 1000, "type": "responseTime"}], "request": {"method": "GET", "url": "https://example.com"}} + properties: + assertions: + default: [] + description: Array of assertions used for the test. Required for single API tests. + example: [{"operator": "lessThan", "target": 1000, "type": "responseTime"}] + items: + $ref: "#/components/schemas/SyntheticsAssertion" + type: array + configVariables: + description: Array of variables used for the test. + items: + $ref: "#/components/schemas/SyntheticsConfigVariable" + type: array + request: + $ref: "#/components/schemas/SyntheticsTestRequest" + steps: + description: When the test subtype is `multi`, the steps of the test. + items: + $ref: "#/components/schemas/SyntheticsAPIStep" + type: array + variablesFromScript: + description: Variables defined from JavaScript code. + example: 'dd.variable.set("FOO", "foo")' + type: string + type: object + SyntheticsAPITestResultData: + description: Object containing results for your Synthetic API test. + properties: + cert: + $ref: "#/components/schemas/SyntheticsSSLCertificate" + eventType: + $ref: "#/components/schemas/SyntheticsTestProcessStatus" + failure: + $ref: "#/components/schemas/SyntheticsApiTestResultFailure" + httpStatusCode: + description: The API test HTTP status code. + format: int64 + type: integer + requestHeaders: + additionalProperties: + description: Requested request header. + type: object + description: Request header object used for the API test. + type: object + responseBody: + description: Response body returned for the API test. + type: string + responseHeaders: + additionalProperties: + description: Returned request header. + description: Response headers returned for the API test. + type: object + responseSize: + description: Global size in byte of the API test response. + format: int64 + type: integer + timings: + $ref: "#/components/schemas/SyntheticsTiming" + type: object + SyntheticsAPITestResultFull: + description: Object returned describing a API test result. + properties: + check: + $ref: "#/components/schemas/SyntheticsAPITestResultFullCheck" + check_time: + description: When the API test was conducted. + format: double + type: number + check_version: + description: Version of the API test used. + format: int64 + type: integer + probe_dc: + description: Locations for which to query the API test results. + type: string + result: + $ref: "#/components/schemas/SyntheticsAPITestResultData" + result_id: + description: ID of the API test result. + type: string + status: + $ref: "#/components/schemas/SyntheticsTestMonitorStatus" + type: object + SyntheticsAPITestResultFullCheck: + description: Object describing the API test configuration. + properties: + config: + $ref: "#/components/schemas/SyntheticsTestConfig" + required: + - config + type: object + SyntheticsAPITestResultShort: + description: Object with the results of a single Synthetic API test. + properties: + check_time: + description: Last time the API test was performed. + format: double + type: number + probe_dc: + description: Location from which the API test was performed. + type: string + result: + $ref: "#/components/schemas/SyntheticsAPITestResultShortResult" + result_id: + description: ID of the API test result. + type: string + status: + $ref: "#/components/schemas/SyntheticsTestMonitorStatus" + type: object + SyntheticsAPITestResultShortResult: + description: Result of the last API test run. + properties: + passed: + description: Describes if the test run has passed or failed. + type: boolean + timings: + $ref: "#/components/schemas/SyntheticsTiming" + type: object + SyntheticsAPITestStep: + description: The Test step used in a Synthetic multi-step API test. + properties: + allowFailure: + description: Determines whether or not to continue with test if this step fails. + type: boolean + assertions: + default: [] + description: Array of assertions used for the test. + example: [{"operator": "lessThan", "target": 1000, "type": "responseTime"}] + items: + $ref: "#/components/schemas/SyntheticsAssertion" + type: array + exitIfSucceed: + description: Determines whether or not to exit the test if the step succeeds. + type: boolean + extractedValues: + description: Array of values to parse and save as variables from the response. + items: + $ref: "#/components/schemas/SyntheticsParsingOptions" + type: array + extractedValuesFromScript: + description: Generate variables using JavaScript. + type: string + id: + description: ID of the step. + example: "abc-def-123" + readOnly: true + type: string + isCritical: + description: |- + Determines whether or not to consider the entire test as failed if this step fails. + Can be used only if `allowFailure` is `true`. + type: boolean + name: + description: The name of the step. + example: "Example step name" + type: string + request: + $ref: "#/components/schemas/SyntheticsTestRequest" + retry: + $ref: "#/components/schemas/SyntheticsTestOptionsRetry" + subtype: + $ref: "#/components/schemas/SyntheticsAPITestStepSubtype" + required: + - assertions + - request + - name + - subtype + type: object + SyntheticsAPITestStepSubtype: + description: |- + The subtype of the Synthetic multi-step API test step. + enum: + - http + - grpc + - ssl + - dns + - tcp + - udp + - icmp + - websocket + - mcp + example: http + type: string + x-enum-varnames: + - HTTP + - GRPC + - SSL + - DNS + - TCP + - UDP + - ICMP + - WEBSOCKET + - MCP + SyntheticsAPITestType: + default: "api" + description: Type of the Synthetic test, `api`. + enum: + - api + example: api + type: string + x-enum-varnames: + - API + SyntheticsAPIWaitStep: + description: The Wait step used in a Synthetic multi-step API test. + properties: + id: + description: ID of the step. + example: "abc-def-123" + readOnly: true + type: string + name: + description: The name of the step. + example: "Example step name" + type: string + subtype: + $ref: "#/components/schemas/SyntheticsAPIWaitStepSubtype" + value: + description: "The time to wait in seconds. Minimum value: 0. Maximum value: 180." + example: 5 + format: int32 + maximum: 180 + minimum: 0 + type: integer + required: + - name + - subtype + - value + type: object + SyntheticsAPIWaitStepSubtype: + description: |- + The subtype of the Synthetic multi-step API wait step. + enum: + - wait + example: wait + type: string + x-enum-varnames: + - WAIT + SyntheticsApiTestFailureCode: + description: Error code that can be returned by a Synthetic test. + enum: + - BODY_TOO_LARGE + - DENIED + - TOO_MANY_REDIRECTS + - AUTHENTICATION_ERROR + - DECRYPTION + - INVALID_CHAR_IN_HEADER + - HEADER_TOO_LARGE + - HEADERS_INCOMPATIBLE_CONTENT_LENGTH + - INVALID_REQUEST + - REQUIRES_UPDATE + - UNESCAPED_CHARACTERS_IN_REQUEST_PATH + - MALFORMED_RESPONSE + - INCORRECT_ASSERTION + - CONNREFUSED + - CONNRESET + - DNS + - HOSTUNREACH + - NETUNREACH + - TIMEOUT + - SSL + - OCSP + - INVALID_TEST + - TUNNEL + - WEBSOCKET + - UNKNOWN + - INTERNAL_ERROR + type: string + x-enum-varnames: + - BODY_TOO_LARGE + - DENIED + - TOO_MANY_REDIRECTS + - AUTHENTICATION_ERROR + - DECRYPTION + - INVALID_CHAR_IN_HEADER + - HEADER_TOO_LARGE + - HEADERS_INCOMPATIBLE_CONTENT_LENGTH + - INVALID_REQUEST + - REQUIRES_UPDATE + - UNESCAPED_CHARACTERS_IN_REQUEST_PATH + - MALFORMED_RESPONSE + - INCORRECT_ASSERTION + - CONNREFUSED + - CONNRESET + - DNS + - HOSTUNREACH + - NETUNREACH + - TIMEOUT + - SSL + - OCSP + - INVALID_TEST + - TUNNEL + - WEBSOCKET + - UNKNOWN + - INTERNAL_ERROR + SyntheticsApiTestResultFailure: + description: The API test failure details. + properties: + code: + $ref: "#/components/schemas/SyntheticsApiTestFailureCode" + message: + description: The API test error message. + example: "Error during DNS resolution (ENOTFOUND)." + type: string + type: object + SyntheticsAssertion: + description: |- + Object describing the assertions type, their associated operator, + which property they apply, and upon which target. + oneOf: + - $ref: "#/components/schemas/SyntheticsAssertionTarget" + - $ref: "#/components/schemas/SyntheticsAssertionBodyHashTarget" + - $ref: "#/components/schemas/SyntheticsAssertionJSONPathTarget" + - $ref: "#/components/schemas/SyntheticsAssertionJSONSchemaTarget" + - $ref: "#/components/schemas/SyntheticsAssertionXPathTarget" + - $ref: "#/components/schemas/SyntheticsAssertionJavascript" + - $ref: "#/components/schemas/SyntheticsAssertionMCPServerCapabilitiesTarget" + - $ref: "#/components/schemas/SyntheticsAssertionMCPRespectsSpecification" + SyntheticsAssertionBodyHashOperator: + description: Assertion operator to apply. + enum: + - md5 + - sha1 + - sha256 + example: md5 + type: string + x-enum-varnames: + - MD5 + - SHA1 + - SHA256 + SyntheticsAssertionBodyHashTarget: + description: An assertion which targets body hash. + properties: + operator: + $ref: "#/components/schemas/SyntheticsAssertionBodyHashOperator" + target: + $ref: "#/components/schemas/SyntheticsAssertionTargetValue" + description: Value used by the operator. + type: + $ref: "#/components/schemas/SyntheticsAssertionBodyHashType" + required: + - type + - operator + - target + type: object + SyntheticsAssertionBodyHashType: + description: Type of the assertion. + enum: + - bodyHash + example: bodyHash + type: string + x-enum-varnames: + - BODY_HASH + SyntheticsAssertionJSONPathOperator: + description: Assertion operator to apply. + enum: + - validatesJSONPath + example: validatesJSONPath + type: string + x-enum-varnames: + - VALIDATES_JSON_PATH + SyntheticsAssertionJSONPathTarget: + description: An assertion for the `validatesJSONPath` operator. + properties: + operator: + $ref: "#/components/schemas/SyntheticsAssertionJSONPathOperator" + property: + description: The associated assertion property. + type: string + target: + $ref: "#/components/schemas/SyntheticsAssertionJSONPathTargetTarget" + type: + $ref: "#/components/schemas/SyntheticsAssertionType" + required: + - type + - operator + type: object + SyntheticsAssertionJSONPathTargetTarget: + description: Composed target for `validatesJSONPath` operator. + properties: + elementsOperator: + description: The element from the list of results to assert on. To choose from the first element in the list `firstElementMatches`, every element in the list `everyElementMatches`, at least one element in the list `atLeastOneElementMatches` or the serialized value of the list `serializationMatches`. + type: string + jsonPath: + description: The JSON path to assert. + type: string + operator: + description: The specific operator to use on the path. + type: string + targetValue: + $ref: "#/components/schemas/SyntheticsAssertionTargetValue" + description: The path target value to compare to. + type: object + SyntheticsAssertionJSONSchemaMetaSchema: + description: The JSON Schema meta-schema version used in the assertion. + enum: + - draft-07 + - draft-06 + type: string + x-enum-varnames: + - DRAFT_07 + - DRAFT_06 + SyntheticsAssertionJSONSchemaOperator: + description: Assertion operator to apply. + enum: + - validatesJSONSchema + example: validatesJSONSchema + type: string + x-enum-varnames: + - VALIDATES_JSON_SCHEMA + SyntheticsAssertionJSONSchemaTarget: + description: An assertion for the `validatesJSONSchema` operator. + properties: + operator: + $ref: "#/components/schemas/SyntheticsAssertionJSONSchemaOperator" + target: + $ref: "#/components/schemas/SyntheticsAssertionJSONSchemaTargetTarget" + type: + $ref: "#/components/schemas/SyntheticsAssertionType" + required: + - type + - operator + type: object + SyntheticsAssertionJSONSchemaTargetTarget: + description: Composed target for `validatesJSONSchema` operator. + properties: + jsonSchema: + description: The JSON Schema to assert. + type: string + metaSchema: + $ref: "#/components/schemas/SyntheticsAssertionJSONSchemaMetaSchema" + type: object + SyntheticsAssertionJavascript: + description: A JavaScript assertion. + properties: + code: + description: The JavaScript code that performs the assertions. + example: dd.expect(dd.response.statusCode).to.equal(200); + type: string + type: + $ref: "#/components/schemas/SyntheticsAssertionJavascriptType" + required: + - type + - code + type: object + SyntheticsAssertionJavascriptType: + description: Type of the assertion. + enum: + - javascript + example: javascript + type: string + x-enum-varnames: + - JAVASCRIPT + SyntheticsAssertionMCPRespectsSpecification: + description: An assertion that verifies the MCP server response respects the MCP specification. + properties: + type: + $ref: "#/components/schemas/SyntheticsAssertionMCPRespectsSpecificationType" + required: + - type + type: object + SyntheticsAssertionMCPRespectsSpecificationType: + description: Type of the assertion. + enum: + - mcpRespectsSpecification + example: mcpRespectsSpecification + type: string + x-enum-varnames: + - MCP_RESPECTS_SPECIFICATION + SyntheticsAssertionMCPServerCapabilitiesTarget: + description: An assertion that checks that an MCP server advertises the expected capabilities. + properties: + operator: + $ref: "#/components/schemas/SyntheticsAssertionOperator" + target: + description: List of MCP server capabilities to assert against. + example: + - completions + items: + $ref: "#/components/schemas/SyntheticsMCPServerCapability" + type: array + type: + $ref: "#/components/schemas/SyntheticsAssertionMCPServerCapabilitiesType" + required: + - type + - operator + - target + type: object + SyntheticsAssertionMCPServerCapabilitiesType: + description: Type of the assertion. + enum: + - mcpServerCapabilities + example: mcpServerCapabilities + type: string + x-enum-varnames: + - MCP_SERVER_CAPABILITIES + SyntheticsAssertionOperator: + description: Assertion operator to apply. + enum: + - contains + - doesNotContain + - is + - isNot + - lessThan + - lessThanOrEqual + - moreThan + - moreThanOrEqual + - matches + - doesNotMatch + - validates + - isInMoreThan + - isInLessThan + - doesNotExist + - isUndefined + example: contains + type: string + x-enum-varnames: + - CONTAINS + - DOES_NOT_CONTAIN + - IS + - IS_NOT + - LESS_THAN + - LESS_THAN_OR_EQUAL + - MORE_THAN + - MORE_THAN_OR_EQUAL + - MATCHES + - DOES_NOT_MATCH + - VALIDATES + - IS_IN_MORE_DAYS_THAN + - IS_IN_LESS_DAYS_THAN + - DOES_NOT_EXIST + - IS_UNDEFINED + SyntheticsAssertionTarget: + description: An assertion which uses a simple target. + properties: + operator: + $ref: "#/components/schemas/SyntheticsAssertionOperator" + property: + description: The associated assertion property. + type: string + target: + $ref: "#/components/schemas/SyntheticsAssertionTargetValue" + description: Value used by the operator. + timingsScope: + $ref: "#/components/schemas/SyntheticsAssertionTimingsScope" + type: + $ref: "#/components/schemas/SyntheticsAssertionType" + required: + - type + - operator + - target + type: object + SyntheticsAssertionTargetValue: + description: Value used by the operator in assertions. Can be either a number or string. + example: 0.0 + oneOf: + - $ref: "#/components/schemas/SyntheticsAssertionTargetValueNumber" + - $ref: "#/components/schemas/SyntheticsAssertionTargetValueString" + SyntheticsAssertionTargetValueNumber: + description: Numeric value used by the operator in assertions. + format: double + type: number + SyntheticsAssertionTargetValueString: + description: String value used by the operator in assertions. Supports templated variables. + type: string + SyntheticsAssertionTimingsScope: + description: Timings scope for response time assertions. + enum: + - all + - withoutDNS + type: string + x-enum-varnames: + - ALL + - WITHOUT_DNS + SyntheticsAssertionType: + description: Type of the assertion. + enum: + - body + - header + - statusCode + - certificate + - responseTime + - property + - recordEvery + - recordSome + - tlsVersion + - minTlsVersion + - latency + - packetLossPercentage + - packetsReceived + - networkHop + - receivedMessage + - grpcHealthcheckStatus + - grpcMetadata + - grpcProto + - connection + - multiNetworkHop + - jitter + - mcpToolNameLength + - mcpToolCount + example: statusCode + type: string + x-enum-varnames: + - BODY + - HEADER + - STATUS_CODE + - CERTIFICATE + - RESPONSE_TIME + - PROPERTY + - RECORD_EVERY + - RECORD_SOME + - TLS_VERSION + - MIN_TLS_VERSION + - LATENCY + - PACKET_LOSS_PERCENTAGE + - PACKETS_RECEIVED + - NETWORK_HOP + - RECEIVED_MESSAGE + - GRPC_HEALTHCHECK_STATUS + - GRPC_METADATA + - GRPC_PROTO + - CONNECTION + - MULTI_NETWORK_HOP + - JITTER + - MCP_TOOL_NAME_LENGTH + - MCP_TOOL_COUNT + SyntheticsAssertionXPathOperator: + description: Assertion operator to apply. + enum: + - validatesXPath + example: validatesXPath + type: string + x-enum-varnames: + - VALIDATES_X_PATH + SyntheticsAssertionXPathTarget: + description: An assertion for the `validatesXPath` operator. + properties: + operator: + $ref: "#/components/schemas/SyntheticsAssertionXPathOperator" + property: + description: The associated assertion property. + type: string + target: + $ref: "#/components/schemas/SyntheticsAssertionXPathTargetTarget" + type: + $ref: "#/components/schemas/SyntheticsAssertionType" + required: + - type + - operator + type: object + SyntheticsAssertionXPathTargetTarget: + description: Composed target for `validatesXPath` operator. + properties: + operator: + description: The specific operator to use on the path. + type: string + targetValue: + $ref: "#/components/schemas/SyntheticsAssertionTargetValue" + description: The path target value to compare to. + xPath: + description: The X path to assert. + type: string + type: object + SyntheticsBasicAuth: + description: Object to handle basic authentication when performing the test. + oneOf: + - $ref: "#/components/schemas/SyntheticsBasicAuthWeb" + - $ref: "#/components/schemas/SyntheticsBasicAuthSigv4" + - $ref: "#/components/schemas/SyntheticsBasicAuthNTLM" + - $ref: "#/components/schemas/SyntheticsBasicAuthDigest" + - $ref: "#/components/schemas/SyntheticsBasicAuthOauthClient" + - $ref: "#/components/schemas/SyntheticsBasicAuthOauthROP" + - $ref: "#/components/schemas/SyntheticsBasicAuthJWT" + SyntheticsBasicAuthDigest: + description: Object to handle digest authentication when performing the test. + properties: + password: + description: Password to use for the digest authentication. + example: "PaSSw0RD!" + type: string + type: + $ref: "#/components/schemas/SyntheticsBasicAuthDigestType" + username: + description: Username to use for the digest authentication. + example: "my_username" + type: string + required: + - password + - username + - type + type: object + SyntheticsBasicAuthDigestType: + default: "digest" + description: The type of basic authentication to use when performing the test. + enum: + - digest + example: "digest" + type: string + x-enum-varnames: + - DIGEST + SyntheticsBasicAuthJWT: + description: Object to handle JWT authentication when performing the test. + properties: + addClaims: + $ref: "#/components/schemas/SyntheticsBasicAuthJWTAddClaims" + algorithm: + $ref: "#/components/schemas/SyntheticsBasicAuthJWTAlgorithm" + expiresIn: + description: Token time-to-live in seconds. + example: 3600 + format: int64 + minimum: 1 + type: integer + header: + description: Custom JWT header as a JSON string. + example: '{"kid": "my-key-id"}' + type: string + payload: + description: JWT claims as a JSON string. + example: '{"sub": "1234567890", "name": "John Doe"}' + type: string + secret: + description: |- + Signing key for the JWT authentication. Use the shared secret for `HS256` + or the private key (PEM format) for `RS256` and `ES256`. + example: "mysecretkey" + type: string + tokenPrefix: + description: Prefix added before the token in the `Authorization` header. Defaults to `Bearer`. + example: "Bearer" + type: string + type: + $ref: "#/components/schemas/SyntheticsBasicAuthJWTType" + required: + - algorithm + - payload + - secret + - type + type: object + SyntheticsBasicAuthJWTAddClaims: + description: Standard JWT claims to automatically inject. + properties: + exp: + description: Whether to inject the `exp` (expiration) claim. + example: true + type: boolean + iat: + description: Whether to inject the `iat` (issued at) claim. + example: true + type: boolean + type: object + SyntheticsBasicAuthJWTAlgorithm: + description: Algorithm to use for the JWT authentication. + enum: + - HS256 + - RS256 + - ES256 + example: "HS256" + type: string + x-enum-varnames: + - HS256 + - RS256 + - ES256 + SyntheticsBasicAuthJWTType: + default: "jwt" + description: The type of authentication to use when performing the test. + enum: + - jwt + example: "jwt" + type: string + x-enum-varnames: + - JWT + SyntheticsBasicAuthNTLM: + description: Object to handle `NTLM` authentication when performing the test. + properties: + domain: + description: Domain for the authentication to use when performing the test. + example: "DOMAINNAME" + type: string + password: + description: Password for the authentication to use when performing the test. + example: "examplepassword" + type: string + type: + $ref: "#/components/schemas/SyntheticsBasicAuthNTLMType" + username: + description: Username for the authentication to use when performing the test. + example: "joedoe" + type: string + workstation: + description: Workstation for the authentication to use when performing the test. + example: "" + type: string + required: + - type + type: object + SyntheticsBasicAuthNTLMType: + default: "ntlm" + description: The type of authentication to use when performing the test. + enum: + - ntlm + example: "ntlm" + type: string + x-enum-varnames: + - NTLM + SyntheticsBasicAuthOauthClient: + description: Object to handle `oauth client` authentication when performing the test. + properties: + accessTokenUrl: + description: Access token URL to use when performing the authentication. + example: "https://example.com" + type: string + audience: + description: Audience to use when performing the authentication. + example: "audience" + type: string + clientId: + description: Client ID to use when performing the authentication. + example: "oauth-username" + type: string + clientSecret: + description: Client secret to use when performing the authentication. + example: "oauth-password" + type: string + resource: + description: Resource to use when performing the authentication. + example: "resource" + type: string + scope: + description: Scope to use when performing the authentication. + example: "scope" + type: string + tokenApiAuthentication: + $ref: "#/components/schemas/SyntheticsBasicAuthOauthTokenApiAuthentication" + type: + $ref: "#/components/schemas/SyntheticsBasicAuthOauthClientType" + required: + - accessTokenUrl + - tokenApiAuthentication + - clientId + - clientSecret + - type + type: object + SyntheticsBasicAuthOauthClientType: + default: "oauth-client" + description: The type of basic authentication to use when performing the test. + enum: + - oauth-client + example: "oauth-client" + type: string + x-enum-varnames: + - OAUTH_CLIENT + SyntheticsBasicAuthOauthROP: + description: Object to handle `oauth rop` authentication when performing the test. + properties: + accessTokenUrl: + description: Access token URL to use when performing the authentication. + example: "https://example.com" + type: string + audience: + description: Audience to use when performing the authentication. + example: "audience" + type: string + clientId: + description: Client ID to use when performing the authentication. + example: "client-id" + type: string + clientSecret: + description: Client secret to use when performing the authentication. + example: "client-secret" + type: string + password: + description: Password to use when performing the authentication. + example: "password" + type: string + resource: + description: Resource to use when performing the authentication. + example: "resource" + type: string + scope: + description: Scope to use when performing the authentication. + example: "scope" + type: string + tokenApiAuthentication: + $ref: "#/components/schemas/SyntheticsBasicAuthOauthTokenApiAuthentication" + type: + $ref: "#/components/schemas/SyntheticsBasicAuthOauthROPType" + username: + description: Username to use when performing the authentication. + example: "username" + type: string + required: + - accessTokenUrl + - password + - tokenApiAuthentication + - username + - type + type: object + SyntheticsBasicAuthOauthROPType: + default: "oauth-rop" + description: The type of basic authentication to use when performing the test. + enum: + - oauth-rop + example: "oauth-rop" + type: string + x-enum-varnames: + - OAUTH_ROP + SyntheticsBasicAuthOauthTokenApiAuthentication: + description: Type of token to use when performing the authentication. + enum: + - header + - body + example: "header" + type: string + x-enum-varnames: + - HEADER + - BODY + SyntheticsBasicAuthSigv4: + description: Object to handle `SIGV4` authentication when performing the test. + properties: + accessKey: + description: Access key for the `SIGV4` authentication. + example: "AKIAIOSFODNN7EXAMPLE" + type: string + region: + description: Region for the `SIGV4` authentication. + example: "us-east-1" + type: string + secretKey: + description: Secret key for the `SIGV4` authentication. + example: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY" + type: string + serviceName: + description: Service name for the `SIGV4` authentication. + example: "execute-api" + type: string + sessionToken: + description: Session token for the `SIGV4` authentication. + example: |- + AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L + To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z + rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp + Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE + type: string + type: + $ref: "#/components/schemas/SyntheticsBasicAuthSigv4Type" + required: + - accessKey + - secretKey + - type + type: object + SyntheticsBasicAuthSigv4Type: + default: "sigv4" + description: The type of authentication to use when performing the test. + enum: + - sigv4 + example: "sigv4" + type: string + x-enum-varnames: + - SIGV4 + SyntheticsBasicAuthWeb: + description: Object to handle basic authentication when performing the test. + properties: + password: + description: Password to use for the basic authentication. + example: "PaSSw0RD!" + type: string + type: + $ref: "#/components/schemas/SyntheticsBasicAuthWebType" + username: + description: Username to use for the basic authentication. + example: "my_username" + type: string + type: object + SyntheticsBasicAuthWebType: + default: "web" + description: The type of basic authentication to use when performing the test. + enum: + - web + example: "web" + type: string + x-enum-varnames: + - WEB + SyntheticsBatchDetails: + description: Details about a batch response. + properties: + data: + $ref: "#/components/schemas/SyntheticsBatchDetailsData" + type: object + SyntheticsBatchDetailsData: + description: Wrapper object that contains the details of a batch. + properties: + metadata: + $ref: "#/components/schemas/SyntheticsCIBatchMetadata" + results: + description: List of results for the batch. + items: + $ref: "#/components/schemas/SyntheticsBatchResult" + type: array + status: + $ref: "#/components/schemas/SyntheticsBatchStatus" + type: object + SyntheticsBatchResult: + description: Object with the results of a Synthetic batch. + properties: + device: + $ref: "#/components/schemas/SyntheticsDeviceID" + duration: + description: Total duration in millisecond of the test. + format: double + type: number + execution_rule: + $ref: "#/components/schemas/SyntheticsTestExecutionRule" + location: + description: Name of the location. + type: string + result_id: + description: The ID of the result to get. + type: string + retries: + description: Number of times this result has been retried. + format: double + type: number + status: + $ref: "#/components/schemas/SyntheticsBatchStatus" + test_name: + description: Name of the test. + type: string + test_public_id: + description: The public ID of the Synthetic test. + type: string + test_type: + $ref: "#/components/schemas/SyntheticsTestDetailsType" + type: object + SyntheticsBatchStatus: + description: Determines whether the batch has passed, failed, or is in progress. + enum: + - passed + - skipped + - failed + type: string + x-enum-varnames: + - PASSED + - SKIPPED + - FAILED + SyntheticsBrowserError: + description: Error response object for a browser test. + properties: + description: + description: Description of the error. + example: "Example error message" + type: string + name: + description: Name of the error. + example: "Failed test" + type: string + status: + description: Status Code of the error. + example: 500 + format: int64 + type: integer + type: + $ref: "#/components/schemas/SyntheticsBrowserErrorType" + required: + - description + - name + - type + type: object + SyntheticsBrowserErrorType: + description: Error type returned by a browser test. + enum: + - network + - js + example: network + type: string + x-enum-varnames: + - NETWORK + - JS + SyntheticsBrowserTest: + description: Object containing details about a Synthetic browser test. + properties: + config: + $ref: "#/components/schemas/SyntheticsBrowserTestConfig" + locations: + description: Array of locations used to run the test. + example: ["aws:eu-west-3"] + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. Message can either be text or an empty string. + example: "" + type: string + monitor_id: + description: The associated monitor ID. + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: "Example test name" + type: string + options: + $ref: "#/components/schemas/SyntheticsTestOptions" + public_id: + description: The public ID of the test. + readOnly: true + type: string + status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + steps: + description: Array of steps for the test. + items: + $ref: "#/components/schemas/SyntheticsStep" + type: array + tags: + description: Array of tags attached to the test. + example: ["env:prod"] + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: "#/components/schemas/SyntheticsBrowserTestType" + required: + - config + - locations + - name + - options + - type + - message + type: object + SyntheticsBrowserTestConfig: + description: Configuration object for a Synthetic browser test. + properties: + assertions: + default: [] + description: Array of assertions used for the test. + example: [] + items: + $ref: "#/components/schemas/SyntheticsAssertion" + type: array + configVariables: + description: Array of variables used for the test. + items: + $ref: "#/components/schemas/SyntheticsConfigVariable" + type: array + request: + $ref: "#/components/schemas/SyntheticsTestRequest" + setCookie: + description: Cookies to be used for the request, using the [Set-Cookie](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) syntax. + type: string + variables: + description: Array of variables used for the test steps. + items: + $ref: "#/components/schemas/SyntheticsBrowserVariable" + type: array + required: + - request + - assertions + type: object + SyntheticsBrowserTestFailureCode: + description: Error code that can be returned by a Synthetic test. + enum: + - API_REQUEST_FAILURE + - ASSERTION_FAILURE + - DOWNLOAD_FILE_TOO_LARGE + - ELEMENT_NOT_INTERACTABLE + - EMAIL_VARIABLE_NOT_DEFINED + - EVALUATE_JAVASCRIPT + - EVALUATE_JAVASCRIPT_CONTEXT + - EXTRACT_VARIABLE + - FORBIDDEN_URL + - FRAME_DETACHED + - INCONSISTENCIES + - INTERNAL_ERROR + - INVALID_TYPE_TEXT_DELAY + - INVALID_URL + - INVALID_VARIABLE_PATTERN + - INVISIBLE_ELEMENT + - LOCATE_ELEMENT + - NAVIGATE_TO_LINK + - OPEN_URL + - PRESS_KEY + - SERVER_CERTIFICATE + - SELECT_OPTION + - STEP_TIMEOUT + - SUB_TEST_NOT_PASSED + - TEST_TIMEOUT + - TOO_MANY_HTTP_REQUESTS + - UNAVAILABLE_BROWSER + - UNKNOWN + - UNSUPPORTED_AUTH_SCHEMA + - UPLOAD_FILES_ELEMENT_TYPE + - UPLOAD_FILES_DIALOG + - UPLOAD_FILES_DYNAMIC_ELEMENT + - UPLOAD_FILES_NAME + type: string + x-enum-varnames: + - API_REQUEST_FAILURE + - ASSERTION_FAILURE + - DOWNLOAD_FILE_TOO_LARGE + - ELEMENT_NOT_INTERACTABLE + - EMAIL_VARIABLE_NOT_DEFINED + - EVALUATE_JAVASCRIPT + - EVALUATE_JAVASCRIPT_CONTEXT + - EXTRACT_VARIABLE + - FORBIDDEN_URL + - FRAME_DETACHED + - INCONSISTENCIES + - INTERNAL_ERROR + - INVALID_TYPE_TEXT_DELAY + - INVALID_URL + - INVALID_VARIABLE_PATTERN + - INVISIBLE_ELEMENT + - LOCATE_ELEMENT + - NAVIGATE_TO_LINK + - OPEN_URL + - PRESS_KEY + - SERVER_CERTIFICATE + - SELECT_OPTION + - STEP_TIMEOUT + - SUB_TEST_NOT_PASSED + - TEST_TIMEOUT + - TOO_MANY_HTTP_REQUESTS + - UNAVAILABLE_BROWSER + - UNKNOWN + - UNSUPPORTED_AUTH_SCHEMA + - UPLOAD_FILES_ELEMENT_TYPE + - UPLOAD_FILES_DIALOG + - UPLOAD_FILES_DYNAMIC_ELEMENT + - UPLOAD_FILES_NAME + SyntheticsBrowserTestResultData: + description: Object containing results for your Synthetic browser test. + properties: + browserType: + description: Type of browser device used for the browser test. + type: string + browserVersion: + description: Browser version used for the browser test. + type: string + device: + $ref: "#/components/schemas/SyntheticsDevice" + duration: + description: Global duration in second of the browser test. + format: double + type: number + error: + description: Error returned for the browser test. + type: string + failure: + $ref: "#/components/schemas/SyntheticsBrowserTestResultFailure" + passed: + description: Whether or not the browser test was conducted. + type: boolean + receivedEmailCount: + description: The amount of email received during the browser test. + format: int64 + type: integer + startUrl: + description: Starting URL for the browser test. + type: string + stepDetails: + description: Array containing the different browser test steps. + items: + $ref: "#/components/schemas/SyntheticsStepDetail" + type: array + thumbnailsBucketKey: + description: Whether or not a thumbnail is associated with the browser test. + type: boolean + timeToInteractive: + description: |- + Time in second to wait before the browser test starts after + reaching the start URL. + format: double + type: number + type: object + SyntheticsBrowserTestResultFailure: + description: The browser test failure details. + properties: + code: + $ref: "#/components/schemas/SyntheticsBrowserTestFailureCode" + message: + description: The browser test error message. + example: "Error during DNS resolution (ENOTFOUND)." + type: string + type: object + SyntheticsBrowserTestResultFull: + description: Object returned describing a browser test result. + properties: + check: + $ref: "#/components/schemas/SyntheticsBrowserTestResultFullCheck" + check_time: + description: When the browser test was conducted. + format: double + type: number + check_version: + description: Version of the browser test used. + format: int64 + type: integer + probe_dc: + description: Location from which the browser test was performed. + type: string + result: + $ref: "#/components/schemas/SyntheticsBrowserTestResultData" + result_id: + description: ID of the browser test result. + type: string + status: + $ref: "#/components/schemas/SyntheticsTestMonitorStatus" + type: object + SyntheticsBrowserTestResultFullCheck: + description: Object describing the browser test configuration. + properties: + config: + $ref: "#/components/schemas/SyntheticsTestConfig" + required: + - config + type: object + SyntheticsBrowserTestResultShort: + description: Object with the results of a single Synthetic browser test. + properties: + check_time: + description: Last time the browser test was performed. + format: double + type: number + probe_dc: + description: Location from which the Browser test was performed. + type: string + result: + $ref: "#/components/schemas/SyntheticsBrowserTestResultShortResult" + result_id: + description: ID of the browser test result. + type: string + status: + $ref: "#/components/schemas/SyntheticsTestMonitorStatus" + type: object + SyntheticsBrowserTestResultShortResult: + description: Object with the result of the last browser test run. + properties: + device: + $ref: "#/components/schemas/SyntheticsDevice" + duration: + description: Length in milliseconds of the browser test run. + format: double + type: number + errorCount: + description: Amount of errors collected for a single browser test run. + format: int64 + type: integer + stepCountCompleted: + description: Amount of browser test steps completed before failing. + format: int64 + type: integer + stepCountTotal: + description: Total amount of browser test steps. + format: int64 + type: integer + type: object + SyntheticsBrowserTestRumSettings: + description: |- + The RUM data collection settings for the Synthetic browser test. + **Note:** There are 3 ways to format RUM settings: + + `{ isEnabled: false }` + RUM data is not collected. + + `{ isEnabled: true }` + RUM data is collected from the Synthetic test's default application. + + `{ isEnabled: true, applicationId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", clientTokenId: 12345 }` + RUM data is collected using the specified application. + example: {"applicationId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "clientTokenId": 12345, "isEnabled": true} + properties: + applicationId: + description: RUM application ID used to collect RUM data for the browser test. + example: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + type: string + clientTokenId: + description: RUM application API key ID used to collect RUM data for the browser test. + example: 12345 + format: int64 + type: integer + isEnabled: + description: Determines whether RUM data is collected during test runs. + example: true + type: boolean + required: + - isEnabled + type: object + SyntheticsBrowserTestType: + default: "browser" + description: Type of the Synthetic test, `browser`. + enum: + - browser + example: "browser" + type: string + x-enum-varnames: + - BROWSER + SyntheticsBrowserVariable: + description: |- + Object defining a variable that can be used in your browser test. + See the [Recording Steps documentation](https://docs.datadoghq.com/synthetics/browser_tests/actions/?tab=testanelementontheactivepage#variables). + properties: + example: + description: Example for the variable. + type: string + id: + description: ID for the variable. Global variables require an ID. + type: string + name: + description: Name of the variable. + example: "VARIABLE_NAME" + type: string + pattern: + description: Pattern of the variable. + type: string + secure: + description: Determines whether or not the browser test variable is obfuscated. Can only be used with browser variables of type `text`. + type: boolean + type: + $ref: "#/components/schemas/SyntheticsBrowserVariableType" + required: + - type + - name + type: object + SyntheticsBrowserVariableType: + description: Type of browser test variable. + enum: + - element + - email + - global + - text + example: text + type: string + x-enum-varnames: + - ELEMENT + - EMAIL + - GLOBAL + - TEXT + SyntheticsCIBatchMetadata: + description: Metadata for the Synthetic tests run. + properties: + ci: + $ref: "#/components/schemas/SyntheticsCIBatchMetadataCI" + git: + $ref: "#/components/schemas/SyntheticsCIBatchMetadataGit" + type: object + SyntheticsCIBatchMetadataCI: + description: Description of the CI provider. + properties: + pipeline: + $ref: "#/components/schemas/SyntheticsCIBatchMetadataPipeline" + provider: + $ref: "#/components/schemas/SyntheticsCIBatchMetadataProvider" + type: object + SyntheticsCIBatchMetadataGit: + description: Git information. + properties: + branch: + description: Branch name. + type: string + commitSha: + description: The commit SHA. + type: string + type: object + SyntheticsCIBatchMetadataPipeline: + description: Description of the CI pipeline. + properties: + url: + description: URL of the pipeline. + type: string + type: object + SyntheticsCIBatchMetadataProvider: + description: Description of the CI provider. + properties: + name: + description: Name of the CI provider. + type: string + type: object + SyntheticsCITest: + description: Configuration for Continuous Testing. + properties: + allowInsecureCertificates: + description: Disable certificate checks in API tests. + type: boolean + basicAuth: + $ref: "#/components/schemas/SyntheticsBasicAuth" + body: + description: Body to include in the test. + type: string + bodyType: + description: Type of the data sent in a Synthetic API test. + type: string + cookies: + description: Cookies for the request. + type: string + deviceIds: + description: For browser test, array with the different device IDs used to run the test. + items: + $ref: "#/components/schemas/SyntheticsDeviceID" + type: array + followRedirects: + description: For API HTTP test, whether or not the test should follow redirects. + type: boolean + headers: + $ref: "#/components/schemas/SyntheticsTestHeaders" + locations: + description: Array of locations used to run the test. + example: ["aws:eu-west-3"] + items: + description: A location from which the test was run. + type: string + type: array + metadata: + $ref: "#/components/schemas/SyntheticsCIBatchMetadata" + public_id: + description: The public ID of the Synthetic test to trigger. + example: aaa-aaa-aaa + type: string + retry: + $ref: "#/components/schemas/SyntheticsTestOptionsRetry" + startUrl: + description: Starting URL for the browser test. + type: string + variables: + additionalProperties: + description: A single variable. + type: string + description: Variables to replace in the test. + type: object + version: + description: The version number of the Synthetic test version to trigger. + format: int64 + type: integer + required: + - public_id + type: object + SyntheticsCITestBody: + description: Object describing the synthetics tests to trigger. + properties: + tests: + description: List of Synthetic tests with overrides. + items: + $ref: "#/components/schemas/SyntheticsCITest" + type: array + type: object + SyntheticsCheckType: + description: Type of assertion to apply in an API test. + enum: + - equals + - notEquals + - contains + - notContains + - startsWith + - notStartsWith + - greater + - lower + - greaterEquals + - lowerEquals + - matchRegex + - between + - isEmpty + - notIsEmpty + type: string + x-enum-varnames: + - EQUALS + - NOT_EQUALS + - CONTAINS + - NOT_CONTAINS + - STARTS_WITH + - NOT_STARTS_WITH + - GREATER + - LOWER + - GREATER_EQUALS + - LOWER_EQUALS + - MATCH_REGEX + - BETWEEN + - IS_EMPTY + - NOT_IS_EMPTY + SyntheticsConfigVariable: + description: |- + Object defining a variable that can be used in your test configuration. + properties: + example: + description: Example for the variable. + type: string + id: + description: ID of the variable for global variables. + type: string + name: + description: Name of the variable. + example: "VARIABLE_NAME" + type: string + pattern: + description: Pattern of the variable. + type: string + secure: + description: Whether the value of this variable will be obfuscated in test results. Only for config variables of type `text`. + example: false + type: boolean + type: + $ref: "#/components/schemas/SyntheticsConfigVariableType" + required: + - type + - name + type: object + SyntheticsConfigVariableType: + description: Type of the configuration variable. + enum: + - global + - text + - email + example: text + type: string + x-enum-varnames: + - GLOBAL + - TEXT + - EMAIL + SyntheticsCoreWebVitals: + description: Core Web Vitals attached to a browser test step. + properties: + cls: + description: Cumulative Layout Shift. + format: double + type: number + lcp: + description: Largest Contentful Paint in milliseconds. + format: double + type: number + url: + description: URL attached to the metrics. + type: string + type: object + SyntheticsDefaultLocations: + description: List of Synthetics default locations settings. + example: ["aws:eu-west-3"] + items: + description: Name of the location. + type: string + type: array + SyntheticsDeleteTestsPayload: + description: |- + A JSON list of the ID or IDs of the Synthetic tests that you want + to delete. + properties: + force_delete_dependencies: + description: |- + Delete the Synthetic test even if it's referenced by other resources + (for example, SLOs and composite monitors). + example: false + type: boolean + public_ids: + description: An array of Synthetic test IDs you want to delete. + example: [] + items: + description: A Synthetic test ID to delete. + example: "abc-def-123" + type: string + type: array + type: object + SyntheticsDeleteTestsResponse: + description: Response object for deleting Synthetic tests. + properties: + deleted_tests: + description: |- + Array of objects containing a deleted Synthetic test ID with + the associated deletion timestamp. + items: + $ref: "#/components/schemas/SyntheticsDeletedTest" + type: array + type: object + SyntheticsDeletedTest: + description: |- + Object containing a deleted Synthetic test ID with the associated + deletion timestamp. + properties: + deleted_at: + description: Deletion timestamp of the Synthetic test ID. + format: date-time + type: string + public_id: + description: The Synthetic test ID deleted. + type: string + type: object + SyntheticsDevice: + description: Object describing the device used to perform the Synthetic test. + properties: + height: + description: Screen height of the device. + example: 0 + format: int64 + type: integer + id: + $ref: "#/components/schemas/SyntheticsDeviceID" + isMobile: + description: Whether or not the device is a mobile. + type: boolean + name: + description: The device name. + example: "" + type: string + width: + description: Screen width of the device. + example: 0 + format: int64 + type: integer + required: + - id + - name + - height + - width + type: object + SyntheticsDeviceID: + description: The device ID. + example: chrome.laptop_large + type: string + SyntheticsFetchUptimesPayload: + description: |- + Object containing IDs of Synthetic tests and a timeframe. + properties: + from_ts: + description: Timestamp in seconds (Unix epoch) for the start of uptime. + example: 0 + format: int64 + type: integer + public_ids: + description: An array of Synthetic test IDs you want uptimes for. + example: [] + items: + description: A Synthetic test ID. + example: "abc-def-123" + type: string + type: array + to_ts: + description: Timestamp in seconds (Unix epoch) for the end of uptime. + example: 0 + format: int64 + type: integer + required: + - from_ts + - to_ts + - public_ids + type: object + SyntheticsGetAPITestLatestResultsResponse: + description: Object with the latest Synthetic API test run. + properties: + last_timestamp_fetched: + description: Timestamp of the latest API test run. + format: int64 + type: integer + results: + description: Result of the latest API test run. + items: + $ref: "#/components/schemas/SyntheticsAPITestResultShort" + type: array + type: object + SyntheticsGetBrowserTestLatestResultsResponse: + description: Object with the latest Synthetic browser test run. + properties: + last_timestamp_fetched: + description: Timestamp of the latest browser test run. + format: int64 + type: integer + results: + description: Result of the latest browser test run. + items: + $ref: "#/components/schemas/SyntheticsBrowserTestResultShort" + type: array + type: object + SyntheticsGlobalVariable: + description: Synthetic global variable. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsGlobalVariableAttributes" + description: + description: Description of the global variable. + example: "Example description" + type: string + id: + description: Unique identifier of the global variable. + readOnly: true + type: string + is_fido: + description: Determines if the global variable is a FIDO variable. + type: boolean + is_totp: + description: Determines if the global variable is a TOTP/MFA variable. + type: boolean + name: + description: Name of the global variable. Unique across Synthetic global variables. + example: "MY_VARIABLE" + type: string + parse_test_options: + $ref: "#/components/schemas/SyntheticsGlobalVariableParseTestOptions" + parse_test_public_id: + description: A Synthetic test ID to use as a test to generate the variable value. + example: "abc-def-123" + type: string + tags: + description: Tags of the global variable. + example: ["team:front", "test:workflow-1"] + items: + description: Tag name. + type: string + type: array + value: + $ref: "#/components/schemas/SyntheticsGlobalVariableValue" + required: + - description + - name + - tags + - value + type: object + SyntheticsGlobalVariableAttributes: + description: Attributes of the global variable. + properties: + restricted_roles: + $ref: "#/components/schemas/SyntheticsRestrictedRoles" + type: object + SyntheticsGlobalVariableOptions: + description: Options for the Global Variable for MFA. + properties: + totp_parameters: + $ref: "#/components/schemas/SyntheticsGlobalVariableTOTPParameters" + type: object + SyntheticsGlobalVariableParseTestOptions: + description: Parser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with `parse_test_public_id`. + properties: + field: + description: When type is `http_header`, name of the header to use to extract the value. + example: "content-type" + type: string + localVariableName: + description: When type is `local_variable`, name of the local variable to use to extract the value. + example: "LOCAL_VARIABLE" + type: string + parser: + $ref: "#/components/schemas/SyntheticsVariableParser" + type: + $ref: "#/components/schemas/SyntheticsGlobalVariableParseTestOptionsType" + required: + - type + type: object + SyntheticsGlobalVariableParseTestOptionsType: + description: Type of value to extract from a test for a Synthetic global variable. + enum: + - http_body + - http_header + - http_status_code + - local_variable + example: http_body + type: string + x-enum-varnames: + - HTTP_BODY + - HTTP_HEADER + - HTTP_STATUS_CODE + - LOCAL_VARIABLE + SyntheticsGlobalVariableParserType: + description: Type of parser for a Synthetic global variable from a synthetics test. + enum: + - raw + - json_path + - regex + - x_path + example: raw + type: string + x-enum-varnames: + - RAW + - JSON_PATH + - REGEX + - X_PATH + SyntheticsGlobalVariableRequest: + description: Details of the global variable to create. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsGlobalVariableAttributes" + description: + description: Description of the global variable. + example: "Example description" + type: string + id: + description: Unique identifier of the global variable. + readOnly: true + type: string + is_fido: + description: Determines if the global variable is a FIDO variable. + type: boolean + is_totp: + description: Determines if the global variable is a TOTP/MFA variable. + type: boolean + name: + description: Name of the global variable. Unique across Synthetic global variables. + example: "MY_VARIABLE" + type: string + parse_test_options: + $ref: "#/components/schemas/SyntheticsGlobalVariableParseTestOptions" + parse_test_public_id: + description: A Synthetic test ID to use as a test to generate the variable value. + example: "abc-def-123" + type: string + tags: + description: Tags of the global variable. + example: ["team:front", "test:workflow-1"] + items: + description: Tag name. + type: string + type: array + value: + $ref: "#/components/schemas/SyntheticsGlobalVariableValue" + required: + - description + - name + - tags + type: object + SyntheticsGlobalVariableTOTPParameters: + description: "Parameters for the TOTP/MFA variable" + properties: + digits: + description: Number of digits for the OTP code. + example: 6 + format: int32 + maximum: 10 + minimum: 4 + type: integer + refresh_interval: + description: Interval for which to refresh the token (in seconds). + example: 30 + format: int32 + maximum: 999 + minimum: 0 + type: integer + type: object + SyntheticsGlobalVariableValue: + description: Value of the global variable. + example: + secure: true + value: value + properties: + options: + $ref: "#/components/schemas/SyntheticsGlobalVariableOptions" + secure: + description: Determines if the value of the variable is hidden. + type: boolean + value: + description: |- + Value of the global variable. When reading a global variable, + the value will not be present if the variable is hidden with the `secure` property. + example: "example-value" + type: string + type: object + SyntheticsListGlobalVariablesResponse: + description: Object containing an array of Synthetic global variables. + properties: + variables: + description: Array of Synthetic global variables. + items: + $ref: "#/components/schemas/SyntheticsGlobalVariable" + type: array + type: object + SyntheticsListTestsResponse: + description: Object containing an array of Synthetic tests configuration. + properties: + tests: + description: Array of Synthetic tests configuration. + items: + $ref: "#/components/schemas/SyntheticsTestDetailsWithoutSteps" + type: array + type: object + SyntheticsLocalVariableParsingOptionsType: + description: Property of the Synthetic Test Response to extract into a local variable. + enum: + - grpc_message + - grpc_metadata + - http_body + - http_header + - http_status_code + example: http_body + type: string + x-enum-varnames: + - GRPC_MESSAGE + - GRPC_METADATA + - HTTP_BODY + - HTTP_HEADER + - HTTP_STATUS_CODE + SyntheticsLocation: + description: |- + Synthetic location that can be used when creating or editing a + test. + properties: + id: + description: Unique identifier of the location. + type: string + name: + description: Name of the location. + type: string + type: object + SyntheticsLocations: + description: List of Synthetic locations. + properties: + locations: + description: List of Synthetic locations. + items: + $ref: "#/components/schemas/SyntheticsLocation" + type: array + type: object + SyntheticsMCPProtocolVersion: + description: The MCP protocol version used by the step. See https://modelcontextprotocol.io/specification. + enum: + - "2025-06-18" + example: "2025-06-18" + type: string + x-enum-varnames: + - VERSION_2025_06_18 + SyntheticsMCPServerCapability: + description: A capability advertised by an MCP server. + enum: + - completions + - experimental + - logging + - prompts + - resources + - tools + type: string + x-enum-varnames: + - COMPLETIONS + - EXPERIMENTAL + - LOGGING + - PROMPTS + - RESOURCES + - TOOLS + SyntheticsMobileStep: + description: The steps used in a Synthetic mobile test. + properties: + allowFailure: + description: A boolean set to allow this step to fail. + type: boolean + hasNewStepElement: + description: A boolean set to determine if the step has a new step element. + type: boolean + isCritical: + description: A boolean to use in addition to `allowFailure` to determine if the test should be marked as failed when the step fails. + type: boolean + name: + description: The name of the step. + example: "" + maxLength: 1500 + type: string + noScreenshot: + description: A boolean set to not take a screenshot for the step. + type: boolean + params: + $ref: "#/components/schemas/SyntheticsMobileStepParams" + publicId: + description: The public ID of the step. + example: "pub-lic-id0" + type: string + timeout: + description: The time before declaring a step failed. + format: int64 + type: integer + type: + $ref: "#/components/schemas/SyntheticsMobileStepType" + required: + - name + - params + - type + type: object + SyntheticsMobileStepParams: + description: The parameters of a mobile step. + properties: + check: + $ref: "#/components/schemas/SyntheticsCheckType" + delay: + description: Number of milliseconds to wait between inputs in a `typeText` step type. + format: int64 + maximum: 5000 + minimum: 0 + type: integer + direction: + $ref: "#/components/schemas/SyntheticsMobileStepParamsDirection" + element: + $ref: "#/components/schemas/SyntheticsMobileStepParamsElement" + enabled: + description: Boolean to change the state of the wifi for a `toggleWiFi` step type. + type: boolean + maxScrolls: + description: Maximum number of scrolls to do for a `scrollToElement` step type. + format: int64 + type: integer + positions: + $ref: "#/components/schemas/SyntheticsMobileStepParamsPositions" + subtestPublicId: + description: Public ID of the test to be played as part of a `playSubTest` step type. + type: string + value: + $ref: "#/components/schemas/SyntheticsMobileStepParamsValue" + variable: + $ref: "#/components/schemas/SyntheticsMobileStepParamsVariable" + withEnter: + description: Boolean to indicate if `Enter` should be pressed at the end of the `typeText` step type. + type: boolean + x: + description: Amount to scroll by on the `x` axis for a `scroll` step type. + format: double + type: number + y: + description: Amount to scroll by on the `y` axis for a `scroll` step type. + format: double + type: number + type: object + SyntheticsMobileStepParamsDirection: + description: The direction of the scroll for a `scrollToElement` step type. + enum: + - up + - down + - left + - right + type: string + x-enum-varnames: + - UP + - DOWN + - LEFT + - RIGHT + SyntheticsMobileStepParamsElement: + description: Information about the element used for a step. + properties: + context: + description: Context of the element. + type: string + contextType: + $ref: "#/components/schemas/SyntheticsMobileStepParamsElementContextType" + elementDescription: + description: Description of the element. + type: string + multiLocator: + description: Multi-locator to find the element. + type: object + relativePosition: + $ref: "#/components/schemas/SyntheticsMobileStepParamsElementRelativePosition" + textContent: + description: Text content of the element. + type: string + userLocator: + $ref: "#/components/schemas/SyntheticsMobileStepParamsElementUserLocator" + viewName: + description: Name of the view of the element. + type: string + type: object + SyntheticsMobileStepParamsElementContextType: + description: Type of the context that the element is in. + enum: + - native + - web + type: string + x-enum-varnames: + - NATIVE + - WEB + SyntheticsMobileStepParamsElementRelativePosition: + description: Position of the action relative to the element. + properties: + x: + description: The `relativePosition` on the `x` axis for the element. + format: double + type: number + y: + description: The `relativePosition` on the `y` axis for the element. + format: double + type: number + type: object + SyntheticsMobileStepParamsElementUserLocator: + description: User locator to find the element. + properties: + failTestOnCannotLocate: + description: Whether if the test should fail if the element cannot be found. + type: boolean + values: + description: Values of the user locator. + items: + $ref: "#/components/schemas/SyntheticsMobileStepParamsElementUserLocatorValuesItems" + type: array + type: object + SyntheticsMobileStepParamsElementUserLocatorValuesItems: + description: A single user locator object. + properties: + type: + $ref: "#/components/schemas/SyntheticsMobileStepParamsElementUserLocatorValuesItemsType" + value: + description: Value of a user locator. + type: string + type: object + SyntheticsMobileStepParamsElementUserLocatorValuesItemsType: + description: Type of a user locator. + enum: + - accessibility-id + - id + - ios-predicate-string + - ios-class-chain + - xpath + type: string + x-enum-varnames: + - ACCESSIBILITY_ID + - ID + - IOS_PREDICATE_STRING + - IOS_CLASS_CHAIN + - XPATH + SyntheticsMobileStepParamsPositions: + description: List of positions for the `flick` step type. The maximum is 10 flicks per step + items: + $ref: "#/components/schemas/SyntheticsMobileStepParamsPositionsItems" + type: array + SyntheticsMobileStepParamsPositionsItems: + description: A description of a single position for a `flick` step type. + properties: + x: + description: The `x` position for the flick. + format: double + type: number + y: + description: The `y` position for the flick. + format: double + type: number + type: object + SyntheticsMobileStepParamsValue: + description: Values used in the step for in multiple step types. + oneOf: + - $ref: "#/components/schemas/SyntheticsMobileStepParamsValueString" + - $ref: "#/components/schemas/SyntheticsMobileStepParamsValueNumber" + SyntheticsMobileStepParamsValueNumber: + description: Value used in the step for in multiple step types. + format: int64 + type: integer + SyntheticsMobileStepParamsValueString: + description: Value used in the step for in multiple step types. + type: string + SyntheticsMobileStepParamsVariable: + description: Variable object for `extractVariable` step type. + properties: + example: + description: An example for the variable. + example: "" + type: string + name: + description: The variable name. + example: "VAR_NAME" + type: string + required: + - name + - example + type: object + SyntheticsMobileStepType: + description: Step type used in your mobile Synthetic test. + enum: + - assertElementContent + - assertScreenContains + - assertScreenLacks + - doubleTap + - extractVariable + - flick + - openDeeplink + - playSubTest + - pressBack + - restartApplication + - rotate + - scroll + - scrollToElement + - tap + - toggleWiFi + - typeText + - wait + example: assertElementContent + type: string + x-enum-varnames: + - ASSERTELEMENTCONTENT + - ASSERTSCREENCONTAINS + - ASSERTSCREENLACKS + - DOUBLETAP + - EXTRACTVARIABLE + - FLICK + - OPENDEEPLINK + - PLAYSUBTEST + - PRESSBACK + - RESTARTAPPLICATION + - ROTATE + - SCROLL + - SCROLLTOELEMENT + - TAP + - TOGGLEWIFI + - TYPETEXT + - WAIT + SyntheticsMobileTest: + description: Object containing details about a Synthetic mobile test. + properties: + config: + $ref: "#/components/schemas/SyntheticsMobileTestConfig" + device_ids: + description: Array with the different device IDs used to run the test. + items: + $ref: "#/components/schemas/SyntheticsDeviceID" + type: array + message: + description: Notification message associated with the test. + example: Notification message + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: "Example test name" + type: string + options: + $ref: "#/components/schemas/SyntheticsMobileTestOptions" + public_id: + description: The public ID of the test. + example: 123-abc-456 + readOnly: true + type: string + status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + steps: + description: Array of steps for the test. + items: + $ref: "#/components/schemas/SyntheticsMobileStep" + type: array + tags: + description: Array of tags attached to the test. + example: ["env:production"] + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: "#/components/schemas/SyntheticsMobileTestType" + required: + - config + - name + - options + - type + - message + type: object + SyntheticsMobileTestConfig: + description: Configuration object for a Synthetic mobile test. + properties: + initialApplicationArguments: + $ref: "#/components/schemas/SyntheticsMobileTestInitialApplicationArguments" + variables: + description: Array of variables used for the test steps. + items: + $ref: "#/components/schemas/SyntheticsConfigVariable" + type: array + type: object + SyntheticsMobileTestInitialApplicationArguments: + additionalProperties: + description: "A single application argument." + type: string + description: Initial application arguments for a mobile test. + type: object + SyntheticsMobileTestOptions: + description: Object describing the extra options for a Synthetic test. + properties: + allowApplicationCrash: + description: A boolean to set if an application crash would mark the test as failed. + type: boolean + bindings: + description: Array of bindings used for the mobile test. + items: + $ref: "#/components/schemas/SyntheticsTestRestrictionPolicyBinding" + type: array + ci: + $ref: "#/components/schemas/SyntheticsTestCiOptions" + defaultStepTimeout: + description: The default timeout for steps in the test (in seconds). + format: int32 + maximum: 300 + minimum: 1 + type: integer + device_ids: + description: For mobile test, array with the different device IDs used to run the test. + example: + - synthetics:mobile:device:apple_ipad_10th_gen_2022_ios_16 + items: + $ref: "#/components/schemas/SyntheticsDeviceID" + type: array + disableAutoAcceptAlert: + description: A boolean to disable auto accepting alerts. + type: boolean + min_failure_duration: + description: Minimum amount of time in failure required to trigger an alert. + format: int64 + maximum: 7200 + minimum: 0 + type: integer + mobileApplication: + $ref: "#/components/schemas/SyntheticsMobileTestsMobileApplication" + monitor_name: + description: The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs. + type: string + monitor_options: + $ref: "#/components/schemas/SyntheticsTestOptionsMonitorOptions" + monitor_priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int32 + maximum: 5 + minimum: 1 + type: integer + noScreenshot: + description: A boolean set to not take a screenshot for the step. + type: boolean + restricted_roles: + $ref: "#/components/schemas/SyntheticsRestrictedRoles" + retry: + $ref: "#/components/schemas/SyntheticsTestOptionsRetry" + scheduling: + $ref: "#/components/schemas/SyntheticsTestOptionsScheduling" + tick_every: + description: The frequency at which to run the Synthetic test (in seconds). + example: 300 + format: int64 + maximum: 604800 + minimum: 300 + type: integer + verbosity: + description: The level of verbosity for the mobile test. This field can not be set by a user. + format: int32 + maximum: 5 + minimum: 0 + type: integer + required: + - device_ids + - tick_every + - mobileApplication + type: object + SyntheticsMobileTestType: + default: "mobile" + description: Type of the Synthetic test, `mobile`. + enum: + - mobile + example: "mobile" + type: string + x-enum-varnames: + - MOBILE + SyntheticsMobileTestsMobileApplication: + description: Mobile application for mobile synthetics test. + properties: + applicationId: + description: Application ID of the mobile application. + example: "00000000-0000-0000-0000-aaaaaaaaaaaa" + maxLength: 1500 + type: string + referenceId: + description: Reference ID of the mobile application. + example: "00000000-0000-0000-0000-aaaaaaaaaaab" + maxLength: 1500 + type: string + referenceType: + $ref: "#/components/schemas/SyntheticsMobileTestsMobileApplicationReferenceType" + required: + - applicationId + - referenceId + - referenceType + type: object + SyntheticsMobileTestsMobileApplicationReferenceType: + description: Reference type for the mobile application for a mobile synthetics test. + enum: + - latest + - version + example: latest + type: string + x-enum-varnames: + - LATEST + - VERSION + SyntheticsParsingOptions: + description: Parsing options for variables to extract. + example: {} + properties: + field: + description: When type is `http_header` or `grpc_metadata`, name of the header or metadatum to extract. + example: "content-type" + type: string + name: + description: Name of the variable to extract. + type: string + parser: + $ref: "#/components/schemas/SyntheticsVariableParser" + secure: + description: Determines whether or not the extracted value will be obfuscated. + type: boolean + type: + $ref: "#/components/schemas/SyntheticsLocalVariableParsingOptionsType" + type: object + SyntheticsPatchTestBody: + description: Wrapper around an array of [JSON Patch](https://jsonpatch.com) operations to perform on the test + properties: + data: + description: Array of [JSON Patch](https://jsonpatch.com) operations to perform on the test + example: [{"op": "replace", "path": "/name", "value": "New test name"}, {"op": "remove", "path": "/config/assertions/0"}] + items: + $ref: "#/components/schemas/SyntheticsPatchTestOperation" + type: array + type: object + SyntheticsPatchTestOperation: + description: A single [JSON Patch](https://jsonpatch.com) operation to perform on the test + properties: + op: + $ref: "#/components/schemas/SyntheticsPatchTestOperationName" + path: + description: The path to the value to modify + example: /name + type: string + value: + description: A value to use in a [JSON Patch](https://jsonpatch.com) operation + example: "New Test Name" + type: object + SyntheticsPatchTestOperationName: + description: The operation to perform + enum: + - add + - remove + - replace + - move + - copy + - test + example: replace + type: string + x-enum-varnames: + - ADD + - REMOVE + - REPLACE + - MOVE + - COPY + - TEST + SyntheticsPlayingTab: + description: Navigate between different tabs for your browser test. + enum: + - -1 + - 0 + - 1 + - 2 + - 3 + format: int64 + type: integer + x-enum-varnames: + - MAIN_TAB + - NEW_TAB + - TAB_1 + - TAB_2 + - TAB_3 + SyntheticsPrivateLocation: + description: Object containing information about the private location to create. + properties: + description: + description: Description of the private location. + example: Description of private location + type: string + id: + description: Unique identifier of the private location. + readOnly: true + type: string + metadata: + $ref: "#/components/schemas/SyntheticsPrivateLocationMetadata" + name: + description: Name of the private location. + example: New private location + type: string + secrets: + $ref: "#/components/schemas/SyntheticsPrivateLocationSecrets" + tags: + description: Array of tags attached to the private location. + example: ["team:front"] + items: + description: A tag attached to the private location. + example: "team:front" + type: string + type: array + required: + - name + - description + - tags + type: object + SyntheticsPrivateLocationCreationResponse: + description: Object that contains the new private location, the public key for result encryption, and the configuration skeleton. + properties: + config: + description: Configuration skeleton for the private location. See installation instructions of the private location on how to use this configuration. + type: object + private_location: + $ref: "#/components/schemas/SyntheticsPrivateLocation" + result_encryption: + $ref: "#/components/schemas/SyntheticsPrivateLocationCreationResponseResultEncryption" + type: object + SyntheticsPrivateLocationCreationResponseResultEncryption: + description: Public key for the result encryption. + properties: + id: + description: Fingerprint for the encryption key. + type: string + key: + description: Public key for result encryption. + type: string + type: object + SyntheticsPrivateLocationMetadata: + description: Object containing metadata about the private location. + properties: + restricted_roles: + $ref: "#/components/schemas/SyntheticsRestrictedRoles" + type: object + SyntheticsPrivateLocationSecrets: + description: Secrets for the private location. Only present in the response when creating the private location. + properties: + authentication: + $ref: "#/components/schemas/SyntheticsPrivateLocationSecretsAuthentication" + config_decryption: + $ref: "#/components/schemas/SyntheticsPrivateLocationSecretsConfigDecryption" + readOnly: true + type: object + SyntheticsPrivateLocationSecretsAuthentication: + description: Authentication part of the secrets. + properties: + id: + description: Access key for the private location. + readOnly: true + type: string + key: + description: Secret access key for the private location. + readOnly: true + type: string + type: object + SyntheticsPrivateLocationSecretsConfigDecryption: + description: Private key for the private location. + properties: + key: + description: Private key for the private location. + readOnly: true + type: string + type: object + SyntheticsRestrictedRoles: + deprecated: true + description: A list of role identifiers that can be pulled from the Roles API, for restricting read and write access. This field is deprecated. Use the restriction policies API to manage permissions. + example: ["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"] + items: + description: UUID for a role. + example: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + type: string + type: array + SyntheticsSSLCertificate: + description: Object describing the SSL certificate used for a Synthetic test. + properties: + cipher: + description: Cipher used for the connection. + type: string + exponent: + description: Exponent associated to the certificate. + format: double + type: number + extKeyUsage: + description: Array of extensions and details used for the certificate. + items: + description: An extension or detail used for the certificate. + type: string + type: array + fingerprint: + description: MD5 digest of the DER-encoded Certificate information. + type: string + fingerprint256: + description: SHA-1 digest of the DER-encoded Certificate information. + type: string + issuer: + $ref: "#/components/schemas/SyntheticsSSLCertificateIssuer" + modulus: + description: Modulus associated to the SSL certificate private key. + type: string + protocol: + description: TLS protocol used for the test. + type: string + serialNumber: + description: Serial Number assigned by Symantec to the SSL certificate. + type: string + subject: + $ref: "#/components/schemas/SyntheticsSSLCertificateSubject" + validFrom: + description: Date from which the SSL certificate is valid. + format: date-time + type: string + validTo: + description: Date until which the SSL certificate is valid. + format: date-time + type: string + type: object + SyntheticsSSLCertificateIssuer: + description: Object describing the issuer of a SSL certificate. + properties: + C: + description: Country Name that issued the certificate. + type: string + CN: + description: Common Name that issued certificate. + type: string + L: + description: Locality that issued the certificate. + type: string + O: + description: Organization that issued the certificate. + type: string + OU: + description: Organizational Unit that issued the certificate. + type: string + ST: + description: State Or Province Name that issued the certificate. + type: string + type: object + SyntheticsSSLCertificateSubject: + description: Object describing the SSL certificate used for the test. + properties: + C: + description: Country Name associated with the certificate. + type: string + CN: + description: Common Name that associated with the certificate. + type: string + L: + description: Locality associated with the certificate. + type: string + O: + description: Organization associated with the certificate. + type: string + OU: + description: Organizational Unit associated with the certificate. + type: string + ST: + description: State Or Province Name associated with the certificate. + type: string + altName: + description: Subject Alternative Name associated with the certificate. + type: string + type: object + SyntheticsStep: + description: The steps used in a Synthetic browser test. + properties: + allowFailure: + description: A boolean set to allow this step to fail. + type: boolean + alwaysExecute: + description: A boolean set to always execute this step even if the previous step failed or was skipped. + type: boolean + exitIfSucceed: + description: A boolean set to exit the test if the step succeeds. + type: boolean + isCritical: + description: A boolean to use in addition to `allowFailure` to determine if the test should be marked as failed when the step fails. + type: boolean + name: + description: The name of the step. + type: string + noScreenshot: + description: A boolean set to skip taking a screenshot for the step. + type: boolean + params: + description: The parameters of the step. + type: object + public_id: + description: The public ID of the step. + type: string + timeout: + description: The time before declaring a step failed. + format: int64 + type: integer + type: + $ref: "#/components/schemas/SyntheticsStepType" + type: object + SyntheticsStepDetail: + description: Object describing a step for a Synthetic test. + properties: + allowFailure: + description: Whether or not the step was allowed to fail. + type: boolean + browserErrors: + description: Array of errors collected for a browser test. + items: + $ref: "#/components/schemas/SyntheticsBrowserError" + type: array + checkType: + $ref: "#/components/schemas/SyntheticsCheckType" + description: + description: Description of the test. + type: string + duration: + description: Total duration in millisecond of the test. + format: double + type: number + error: + description: Error returned by the test. + type: string + failure: + $ref: "#/components/schemas/SyntheticsBrowserTestResultFailure" + playingTab: + $ref: "#/components/schemas/SyntheticsPlayingTab" + screenshotBucketKey: + description: Whether or not screenshots where collected by the test. + type: boolean + skipped: + description: Whether or not to skip this step. + type: boolean + snapshotBucketKey: + description: Whether or not snapshots where collected by the test. + type: boolean + stepId: + description: The step ID. + format: int64 + type: integer + subTestStepDetails: + description: |- + If this step includes a sub-test. + [Subtests documentation](https://docs.datadoghq.com/synthetics/browser_tests/advanced_options/#subtests). + items: + $ref: "#/components/schemas/SyntheticsStepDetail" + type: array + timeToInteractive: + description: Time before starting the step. + format: double + type: number + type: + $ref: "#/components/schemas/SyntheticsStepType" + url: + description: URL to perform the step against. + type: string + value: + description: Value for the step. + vitalsMetrics: + description: Array of Core Web Vitals metrics for the step. + items: + $ref: "#/components/schemas/SyntheticsCoreWebVitals" + type: array + warnings: + description: Warning collected that didn't failed the step. + items: + $ref: "#/components/schemas/SyntheticsStepDetailWarning" + type: array + type: object + SyntheticsStepDetailWarning: + description: Object collecting warnings for a given step. + properties: + message: + description: Message for the warning. + example: "" + type: string + type: + $ref: "#/components/schemas/SyntheticsWarningType" + required: + - message + - type + type: object + SyntheticsStepType: + description: Step type used in your Synthetic test. + enum: + - assertCurrentUrl + - assertElementAttribute + - assertElementContent + - assertElementPresent + - assertEmail + - assertFileDownload + - assertFromJavascript + - assertPageContains + - assertPageLacks + - assertRequests + - click + - drag + - drop + - extractFromJavascript + - extractFromEmailBody + - extractVariable + - goToEmailLink + - goToUrl + - goToUrlAndMeasureTti + - hover + - playSubTest + - pressKey + - refresh + - runApiTest + - scroll + - selectOption + - typeText + - uploadFiles + - wait + example: assertElementContent + type: string + x-enum-varnames: + - ASSERT_CURRENT_URL + - ASSERT_ELEMENT_ATTRIBUTE + - ASSERT_ELEMENT_CONTENT + - ASSERT_ELEMENT_PRESENT + - ASSERT_EMAIL + - ASSERT_FILE_DOWNLOAD + - ASSERT_FROM_JAVASCRIPT + - ASSERT_PAGE_CONTAINS + - ASSERT_PAGE_LACKS + - ASSERT_REQUESTS + - CLICK + - DRAG + - DROP + - EXTRACT_FROM_JAVASCRIPT + - EXTRACT_FROM_EMAIL_BODY + - EXTRACT_VARIABLE + - GO_TO_EMAIL_LINK + - GO_TO_URL + - GO_TO_URL_AND_MEASURE_TTI + - HOVER + - PLAY_SUB_TEST + - PRESS_KEY + - REFRESH + - RUN_API_TEST + - SCROLL + - SELECT_OPTION + - TYPE_TEXT + - UPLOAD_FILES + - WAIT + SyntheticsTestCallType: + description: |- + The type of call to perform. Used by gRPC steps (`healthcheck`, `unary`) + and MCP steps (`init`, `tool_list`, `tool_call`). Valid values depend on + the parent step's `subtype`. + enum: + - healthcheck + - unary + - init + - tool_list + - tool_call + example: unary + type: string + x-enum-varnames: + - HEALTHCHECK + - UNARY + - INIT + - TOOL_LIST + - TOOL_CALL + SyntheticsTestCiOptions: + description: CI/CD options for a Synthetic test. + properties: + executionRule: + $ref: "#/components/schemas/SyntheticsTestExecutionRule" + required: + - executionRule + type: object + SyntheticsTestConfig: + description: Configuration object for a Synthetic test. + properties: + assertions: + default: [] + description: Array of assertions used for the test. Required for single API tests. + example: [] + items: + $ref: "#/components/schemas/SyntheticsAssertion" + type: array + configVariables: + description: Array of variables used for the test. + items: + $ref: "#/components/schemas/SyntheticsConfigVariable" + type: array + request: + $ref: "#/components/schemas/SyntheticsTestRequest" + variables: + description: Browser tests only - array of variables used for the test steps. + items: + $ref: "#/components/schemas/SyntheticsBrowserVariable" + type: array + type: object + SyntheticsTestDetails: + description: Object containing details about your Synthetic test. + properties: + config: + $ref: "#/components/schemas/SyntheticsTestConfig" + creator: + $ref: "#/components/schemas/Creator" + locations: + description: Array of locations used to run the test. + example: ["aws:eu-west-3"] + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. + type: string + monitor_id: + description: The associated monitor ID. + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + type: string + options: + $ref: "#/components/schemas/SyntheticsTestOptions" + public_id: + description: The test public ID. + readOnly: true + type: string + status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + steps: + description: The steps of the test if they exist. + items: + $ref: "#/components/schemas/SyntheticsStep" + type: array + subtype: + $ref: "#/components/schemas/SyntheticsTestDetailsSubType" + tags: + description: Array of tags attached to the test. + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: "#/components/schemas/SyntheticsTestDetailsType" + type: object + SyntheticsTestDetailsSubType: + description: |- + The subtype of the Synthetic API test, `http`, `ssl`, `tcp`, + `dns`, `icmp`, `udp`, `websocket`, `grpc` or `multi`. + enum: + - http + - ssl + - tcp + - dns + - multi + - icmp + - udp + - websocket + - grpc + example: http + type: string + x-enum-varnames: + - HTTP + - SSL + - TCP + - DNS + - MULTI + - ICMP + - UDP + - WEBSOCKET + - GRPC + SyntheticsTestDetailsType: + description: Type of the Synthetic test. + enum: + - api + - browser + - mobile + - network + type: string + x-enum-varnames: + - API + - BROWSER + - MOBILE + - NETWORK + SyntheticsTestDetailsWithoutSteps: + description: Object containing details about your Synthetic test, without test steps. + properties: + config: + $ref: "#/components/schemas/SyntheticsTestConfig" + creator: + $ref: "#/components/schemas/Creator" + locations: + description: Array of locations used to run the test. + example: ["aws:eu-west-3"] + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. + type: string + monitor_id: + description: The associated monitor ID. + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + type: string + options: + $ref: "#/components/schemas/SyntheticsTestOptions" + public_id: + description: The test public ID. + readOnly: true + type: string + status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + subtype: + $ref: "#/components/schemas/SyntheticsTestDetailsSubType" + tags: + description: Array of tags attached to the test. + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: "#/components/schemas/SyntheticsTestDetailsType" + type: object + SyntheticsTestExecutionRule: + description: Execution rule for a Synthetic test. + enum: + - blocking + - non_blocking + - skipped + example: blocking + type: string + x-enum-varnames: + - BLOCKING + - NON_BLOCKING + - SKIPPED + SyntheticsTestHeaders: + additionalProperties: + description: A single Header. + type: string + description: Headers to include when performing the test. + type: object + SyntheticsTestMetadata: + additionalProperties: + description: A single metadatum. + type: string + description: Metadata to include when performing the gRPC test. + type: object + SyntheticsTestMonitorStatus: + description: |- + The status of your Synthetic monitor. + * `O` for not triggered + * `1` for triggered + * `2` for no data + enum: + - 0 + - 1 + - 2 + format: int64 + type: integer + x-enum-varnames: + - UNTRIGGERED + - TRIGGERED + - NO_DATA + SyntheticsTestOptions: + description: Object describing the extra options for a Synthetic test. + properties: + accept_self_signed: + description: |- + For SSL tests, whether or not the test should allow self signed + certificates. + type: boolean + allow_insecure: + description: Allows loading insecure content for an HTTP request in an API test. + type: boolean + blockedRequestPatterns: + description: Array of URL patterns to block. + items: + description: A URL pattern to block during the Synthetic test. + type: string + type: array + captureNetworkPayloads: + description: Capture HTTP request/response headers and bodies for Fetch/XHR calls made during browser tests. + type: boolean + checkCertificateRevocation: + description: |- + For SSL tests, whether or not the test should fail on revoked certificate in stapled OCSP. + type: boolean + ci: + $ref: "#/components/schemas/SyntheticsTestCiOptions" + device_ids: + description: For browser test, array with the different device IDs used to run the test. + items: + $ref: "#/components/schemas/SyntheticsDeviceID" + type: array + disableAiaIntermediateFetching: + description: |- + For SSL tests, whether or not the test should disable fetching intermediate certificates from AIA. + type: boolean + disableCors: + description: Whether or not to disable CORS mechanism. + type: boolean + disableCsp: + description: Disable Content Security Policy for browser tests. + type: boolean + enableProfiling: + description: Enable profiling for browser tests. + type: boolean + enableSecurityTesting: + deprecated: true + description: Enable security testing for browser tests. Security testing is not available anymore. This field is deprecated and won't be used. + type: boolean + follow_redirects: + description: For API HTTP test, whether or not the test should follow redirects. + type: boolean + httpVersion: + $ref: "#/components/schemas/SyntheticsTestOptionsHTTPVersion" + ignoreServerCertificateError: + description: Ignore server certificate error for browser tests. + type: boolean + ignore_certificate_validation: + description: |- + For SSL tests, whether the test should ignore certificate validation. + type: boolean + initialNavigationTimeout: + description: Timeout before declaring the initial step as failed (in seconds) for browser tests. + format: int64 + type: integer + min_failure_duration: + description: Minimum amount of time in failure required to trigger an alert. + format: int64 + type: integer + min_location_failed: + description: |- + Minimum number of locations in failure required to trigger + an alert. + format: int64 + type: integer + monitor_name: + description: The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs. + type: string + monitor_options: + $ref: "#/components/schemas/SyntheticsTestOptionsMonitorOptions" + monitor_priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int32 + maximum: 5 + minimum: 1 + type: integer + noScreenshot: + description: Prevents saving screenshots of the steps. + type: boolean + restricted_roles: + $ref: "#/components/schemas/SyntheticsRestrictedRoles" + retry: + $ref: "#/components/schemas/SyntheticsTestOptionsRetry" + rumSettings: + $ref: "#/components/schemas/SyntheticsBrowserTestRumSettings" + scheduling: + $ref: "#/components/schemas/SyntheticsTestOptionsScheduling" + tick_every: + description: The frequency at which to run the Synthetic test (in seconds). + format: int64 + maximum: 604800 + minimum: 30 + type: integer + type: object + SyntheticsTestOptionsHTTPVersion: + description: HTTP version to use for a Synthetic test. + enum: + - http1 + - http2 + - any + type: string + x-enum-varnames: + - HTTP1 + - HTTP2 + - ANY + SyntheticsTestOptionsMonitorOptions: + description: |- + Object containing the options for a Synthetic test as a monitor + (for example, renotification). + properties: + escalation_message: + description: Message to include in the escalation notification. + type: string + notification_preset_name: + $ref: "#/components/schemas/SyntheticsTestOptionsMonitorOptionsNotificationPresetName" + renotify_interval: + description: |- + Time interval before renotifying if the test is still failing + (in minutes). + format: int64 + minimum: 0 + type: integer + renotify_occurrences: + description: The number of times to renotify if the test is still failing. + format: int64 + type: integer + type: object + SyntheticsTestOptionsMonitorOptionsNotificationPresetName: + description: The name of the preset for the notification for the monitor. + enum: + - show_all + - hide_all + - hide_query + - hide_handles + - hide_query_and_handles + - show_only_snapshot + - hide_handles_and_footer + type: string + x-enum-varnames: + - SHOW_ALL + - HIDE_ALL + - HIDE_QUERY + - HIDE_HANDLES + - HIDE_QUERY_AND_HANDLES + - SHOW_ONLY_SNAPSHOT + - HIDE_HANDLES_AND_FOOTER + SyntheticsTestOptionsRetry: + description: Object describing the retry strategy to apply to a Synthetic test. + properties: + count: + description: |- + Number of times a test needs to be retried before marking a + location as failed. Defaults to 0. + format: int64 + type: integer + interval: + description: |- + Time interval between retries (in milliseconds). Defaults to + 300ms. + format: double + type: number + type: object + SyntheticsTestOptionsScheduling: + description: Object containing timeframes and timezone used for advanced scheduling. + properties: + timeframes: + description: Array containing objects describing the scheduling pattern to apply to each day. + example: [{"day": 1, "from": "07:00", "to": "16:00"}, {"day": 3, "from": "07:00", "to": "16:00"}] + items: + $ref: "#/components/schemas/SyntheticsTestOptionsSchedulingTimeframe" + type: array + timezone: + description: Timezone in which the timeframe is based. + example: "America/New_York" + type: string + required: + - timeframes + - timezone + type: object + SyntheticsTestOptionsSchedulingTimeframe: + description: Object describing a timeframe. + properties: + day: + description: Number representing the day of the week. + example: 1 + format: int32 + maximum: 7 + minimum: 1 + type: integer + from: + description: The hour of the day on which scheduling starts. + example: "07:00" + type: string + to: + description: The hour of the day on which scheduling ends. + example: "16:00" + type: string + required: + - day + - from + - to + type: object + SyntheticsTestPauseStatus: + description: |- + Define whether you want to start (`live`) or pause (`paused`) a + Synthetic test. + enum: + - live + - paused + example: live + type: string + x-enum-varnames: + - LIVE + - PAUSED + SyntheticsTestProcessStatus: + description: Status of a Synthetic test. + enum: + - not_scheduled + - scheduled + - finished + - finished_with_error + type: string + x-enum-varnames: + - NOT_SCHEDULED + - SCHEDULED + - FINISHED + - FINISHED_WITH_ERROR + SyntheticsTestRequest: + description: Object describing the Synthetic test request. + properties: + allow_insecure: + description: Allows loading insecure content for an HTTP request in a multistep test step. + type: boolean + basicAuth: + $ref: "#/components/schemas/SyntheticsBasicAuth" + body: + description: Body to include in the test. + type: string + bodyType: + $ref: "#/components/schemas/SyntheticsTestRequestBodyType" + callType: + $ref: "#/components/schemas/SyntheticsTestCallType" + certificate: + $ref: "#/components/schemas/SyntheticsTestRequestCertificate" + certificateDomains: + default: [] + description: By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in `certificateDomains`. + items: + description: Domain to apply the client certificate. + example: "" + type: string + type: array + checkCertificateRevocation: + description: Check for certificate revocation. + type: boolean + compressedJsonDescriptor: + description: A protobuf JSON descriptor that needs to be gzipped first then base64 encoded. + type: string + compressedProtoFile: + description: A protobuf file that needs to be gzipped first then base64 encoded. + type: string + disableAiaIntermediateFetching: + description: |- + Disable fetching intermediate certificates from AIA. + type: boolean + dnsServer: + description: DNS server to use for DNS tests. + type: string + dnsServerPort: + $ref: "#/components/schemas/SyntheticsTestRequestDNSServerPort" + description: DNS server port to use for DNS tests. + files: + description: Files to be used as part of the request in the test. Only valid if `bodyType` is `multipart/form-data`. + items: + $ref: "#/components/schemas/SyntheticsTestRequestBodyFile" + type: array + follow_redirects: + description: Specifies whether or not the request follows redirects. + type: boolean + form: + additionalProperties: + description: A single form entry. + type: string + description: Form to be used as part of the request in the test. Only valid if `bodyType` is `multipart/form-data`. + type: object + headers: + $ref: "#/components/schemas/SyntheticsTestHeaders" + host: + description: Host name to perform the test with. + type: string + httpVersion: + $ref: "#/components/schemas/SyntheticsTestOptionsHTTPVersion" + ignore_certificate_validation: + description: |- + For SSL tests, whether the test should ignore certificate validation. + type: boolean + isMessageBase64Encoded: + description: Whether the message is base64 encoded. + type: boolean + mcpProtocolVersion: + $ref: "#/components/schemas/SyntheticsMCPProtocolVersion" + message: + description: Message to send for UDP or WebSocket tests. + type: string + metadata: + $ref: "#/components/schemas/SyntheticsTestMetadata" + method: + description: Either the HTTP method/verb to use or a gRPC method available on the service set in the `service` field. Required if `subtype` is `HTTP` or if `subtype` is `grpc` and `callType` is `unary`. + type: string + noSavingResponseBody: + description: Determines whether or not to save the response body. + type: boolean + numberOfPackets: + description: Number of pings to use per test. + format: int32 + maximum: 10 + minimum: 0 + type: integer + persistCookies: + description: Persist cookies across redirects. + type: boolean + port: + $ref: "#/components/schemas/SyntheticsTestRequestPort" + proxy: + $ref: "#/components/schemas/SyntheticsTestRequestProxy" + query: + description: Query to use for the test. + type: object + servername: + description: |- + For SSL tests, it specifies on which server you want to initiate the TLS handshake, + allowing the server to present one of multiple possible certificates on + the same IP address and TCP port number. + type: string + service: + description: The gRPC service on which you want to perform the gRPC call. + example: Greeter + type: string + shouldTrackHops: + description: Turns on a traceroute probe to discover all gateways along the path to the host destination. + type: boolean + timeout: + description: Timeout in seconds for the test. + format: double + type: number + toolArgs: + additionalProperties: {} + description: Arguments to pass to the MCP tool. Free-form object whose shape depends on the tool. Used when `callType` is `tool_call`. + type: object + toolName: + description: The name of the MCP tool to call. Required when `callType` is `tool_call`. + example: search + type: string + url: + description: URL to perform the test with. + example: "https://example.com" + type: string + type: object + SyntheticsTestRequestBodyFile: + description: Object describing a file to be used as part of the request in the test. + properties: + bucketKey: + description: Bucket key of the file. + type: string + content: + description: Content of the file. + maxLength: 3145728 + type: string + encoding: + description: Encoding of the file content. The only supported value is `base64`, indicating the `content` field contains base64-encoded data. + type: string + name: + description: Name of the file. + maxLength: 1500 + type: string + originalFileName: + description: Original name of the file. + maxLength: 1500 + type: string + size: + description: Size of the file. + format: int64 + maximum: 3145728 + minimum: 1 + type: integer + type: + description: Type of the file. + maxLength: 1500 + type: string + type: object + SyntheticsTestRequestBodyType: + description: Type of the request body. + enum: + - text/plain + - application/json + - text/xml + - text/html + - application/x-www-form-urlencoded + - graphql + - application/octet-stream + - multipart/form-data + example: "text/plain" + type: string + x-enum-varnames: + - TEXT_PLAIN + - APPLICATION_JSON + - TEXT_XML + - TEXT_HTML + - APPLICATION_X_WWW_FORM_URLENCODED + - GRAPHQL + - APPLICATION_OCTET_STREAM + - MULTIPART_FORM_DATA + SyntheticsTestRequestCertificate: + description: Client certificate to use when performing the test request. + properties: + cert: + $ref: "#/components/schemas/SyntheticsTestRequestCertificateItem" + key: + $ref: "#/components/schemas/SyntheticsTestRequestCertificateItem" + type: object + SyntheticsTestRequestCertificateItem: + description: Define a request certificate. + properties: + content: + description: Content of the certificate or key. + type: string + filename: + description: File name for the certificate or key. + type: string + updatedAt: + description: Date of update of the certificate or key, ISO format. + type: string + type: object + SyntheticsTestRequestDNSServerPort: + description: DNS server port to use for DNS tests. + oneOf: + - $ref: "#/components/schemas/SyntheticsTestRequestNumericalDNSServerPort" + - $ref: "#/components/schemas/SyntheticsTestRequestVariableDNSServerPort" + SyntheticsTestRequestNumericalDNSServerPort: + description: Integer DNS server port number to use when performing the test. + format: int64 + type: integer + SyntheticsTestRequestNumericalPort: + description: Integer Port number to use when performing the test. + format: int64 + type: integer + SyntheticsTestRequestPort: + description: Port to use when performing the test. + oneOf: + - $ref: "#/components/schemas/SyntheticsTestRequestNumericalPort" + - $ref: "#/components/schemas/SyntheticsTestRequestVariablePort" + SyntheticsTestRequestProxy: + description: The proxy to perform the test. + properties: + headers: + $ref: "#/components/schemas/SyntheticsTestHeaders" + url: + description: URL of the proxy to perform the test. + example: "https://example.com" + type: string + required: + - url + type: object + SyntheticsTestRequestVariableDNSServerPort: + description: String DNS server port number to use when performing the test. Supports templated variables. + type: string + SyntheticsTestRequestVariablePort: + description: String Port number to use when performing the test. Supports templated variables. + type: string + SyntheticsTestRestrictionPolicyBinding: + description: Objects describing the binding used for a mobile test. + properties: + principals: + $ref: "#/components/schemas/SyntheticsTestRestrictionPolicyBindingPrincipals" + relation: + $ref: "#/components/schemas/SyntheticsTestRestrictionPolicyBindingRelation" + type: object + SyntheticsTestRestrictionPolicyBindingPrincipals: + description: List of principals for a mobile test binding. + items: + description: A principal for a mobile test binding. + maxLength: 1500 + type: string + type: array + SyntheticsTestRestrictionPolicyBindingRelation: + description: The type of relation for the binding. + enum: + - editor + - viewer + type: string + x-enum-varnames: + - EDITOR + - VIEWER + SyntheticsTestUptime: + description: |- + Object containing the uptime for a Synthetic test ID. + properties: + from_ts: + description: Timestamp in seconds for the start of uptime. + format: int64 + type: integer + overall: + $ref: "#/components/schemas/SyntheticsUptime" + public_id: + description: A Synthetic test ID. + example: "abc-def-123" + type: string + to_ts: + description: Timestamp in seconds for the end of uptime. + format: int64 + type: integer + type: object + SyntheticsTiming: + description: |- + Object containing all metrics and their values collected for a Synthetic API test. + See the [Synthetic Monitoring Metrics documentation](https://docs.datadoghq.com/synthetics/metrics/). + properties: + dns: + description: The duration in millisecond of the DNS lookup. + format: double + type: number + download: + description: The time in millisecond to download the response. + format: double + type: number + firstByte: + description: The time in millisecond to first byte. + format: double + type: number + handshake: + description: The duration in millisecond of the TLS handshake. + format: double + type: number + redirect: + description: The time in millisecond spent during redirections. + format: double + type: number + ssl: + description: The duration in millisecond of the TLS handshake. + format: double + type: number + tcp: + description: Time in millisecond to establish the TCP connection. + format: double + type: number + total: + description: The overall time in millisecond the request took to be processed. + format: double + type: number + wait: + description: Time spent in millisecond waiting for a response. + format: double + type: number + type: object + SyntheticsTriggerBody: + description: Object describing the Synthetic tests to trigger. + properties: + tests: + description: List of Synthetic tests. + items: + $ref: "#/components/schemas/SyntheticsTriggerTest" + type: array + required: + - tests + type: object + SyntheticsTriggerCITestLocation: + description: Synthetic location. + properties: + id: + description: Unique identifier of the location. + format: int64 + type: integer + name: + description: Name of the location. + type: string + type: object + SyntheticsTriggerCITestRunResult: + description: Information about a single test run. + properties: + device: + $ref: "#/components/schemas/SyntheticsDeviceID" + location: + description: The location ID of the test run. + format: int64 + type: integer + public_id: + description: The public ID of the Synthetic test. + type: string + result_id: + description: ID of the result. + type: string + type: object + SyntheticsTriggerCITestsResponse: + description: Object containing information about the tests triggered. + properties: + batch_id: + description: The public ID of the batch triggered. + nullable: true + type: string + locations: + description: List of Synthetic locations. + items: + $ref: "#/components/schemas/SyntheticsTriggerCITestLocation" + type: array + results: + description: Information about the tests runs. + items: + $ref: "#/components/schemas/SyntheticsTriggerCITestRunResult" + type: array + triggered_check_ids: + description: The public IDs of the Synthetic test triggered. + items: + description: The public ID of the Synthetic test. + type: string + type: array + type: object + SyntheticsTriggerTest: + description: Test configuration for Synthetics + properties: + metadata: + $ref: "#/components/schemas/SyntheticsCIBatchMetadata" + public_id: + description: The public ID of the Synthetic test to trigger. + example: aaa-aaa-aaa + type: string + required: + - public_id + type: object + SyntheticsUpdateTestPauseStatusPayload: + description: Object to start or pause an existing Synthetic test. + properties: + new_status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + type: object + SyntheticsUptime: + description: |- + Object containing the uptime information. + properties: + errors: + description: An array of error objects returned while querying the history data for the service level objective. + items: + $ref: "#/components/schemas/SLOHistoryResponseErrorWithType" + nullable: true + type: array + group: + description: The location name + example: "name" + type: string + history: + description: |- + The state transition history for the monitor, represented as an array of + pairs. Each pair is an array where the first element is the transition timestamp + in Unix epoch format (integer) and the second element is the state (integer). + For the state, an integer value of `0` indicates uptime, `1` indicates downtime, + and `2` indicates no data. + example: [[1579212382, 0]] + items: + description: |- + An array of transitions + example: [1579212382, 0] + items: + description: A timeseries data point which is a tuple of (timestamp, value). + format: double + type: number + maxItems: 2 + minItems: 2 + type: array + type: array + span_precision: + description: The number of decimal places to which the SLI value is accurate for the given from-to timestamps. + example: 2.0 + format: double + type: number + uptime: + description: The overall uptime. + example: 99.99 + format: double + type: number + type: object + SyntheticsVariableParser: + description: Details of the parser to use for the global variable. + example: + type: regex + value: .* + properties: + type: + $ref: "#/components/schemas/SyntheticsGlobalVariableParserType" + value: + description: Regex or JSON path used for the parser. Not used with type `raw`. + type: string + required: + - type + type: object + SyntheticsWarningType: + description: User locator used. + enum: + - user_locator + example: user_locator + type: string + x-enum-varnames: + - USER_LOCATOR + TableWidgetCellDisplayMode: + description: Define a display mode for the table cell. + enum: + - number + - bar + - trend + example: number + type: string + x-enum-varnames: + - NUMBER + - BAR + - TREND + TableWidgetDefinition: + description: The table visualization is available on dashboards. It displays columns of metrics grouped by tag key. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + has_search_bar: + $ref: "#/components/schemas/TableWidgetHasSearchBar" + requests: + description: Widget definition. + example: ["q/apm_query/log_query": "{}"] + items: + $ref: "#/components/schemas/TableWidgetRequest" + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/TableWidgetDefinitionType" + required: + - type + - requests + type: object + TableWidgetDefinitionType: + default: query_table + description: Type of the table widget. + enum: + - query_table + example: query_table + type: string + x-enum-varnames: + - QUERY_TABLE + TableWidgetHasSearchBar: + description: Controls the display of the search bar. + enum: + - always + - never + - auto + example: auto + type: string + x-enum-varnames: + - ALWAYS + - NEVER + - AUTO + TableWidgetRequest: + description: Updated table widget. + properties: + aggregator: + $ref: "#/components/schemas/WidgetAggregator" + alias: + description: The column name (defaults to the metric name). + type: string + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + apm_stats_query: + $ref: "#/components/schemas/ApmStatsQueryDefinition" + cell_display_mode: + description: A list of display modes for each table cell. + items: + $ref: "#/components/schemas/TableWidgetCellDisplayMode" + type: array + conditional_formats: + description: List of conditional formats. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + limit: + description: For metric queries, the number of lines to show in the table. Only one request should have this property. + format: int64 + type: integer + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + order: + $ref: "#/components/schemas/WidgetSort" + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Query definition. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: "#/components/schemas/WidgetSortBy" + text_formats: + description: List of text formats for columns produced by tags. + items: + $ref: "#/components/schemas/TableWidgetTextFormat" + type: array + type: object + TableWidgetTextFormat: + description: Text format rules for a tag-based column within a table widget. + example: [{"match": {"type": "is", "value": "fruit"}, "replace": {"type": "all", "with": "vegetable"}}, {"match": {"type": "is", "value": "cake"}, "palette": "white_on_green"}] + items: + $ref: "#/components/schemas/TableWidgetTextFormatRule" + minItems: 1 + type: array + TableWidgetTextFormatMatch: + description: Match rule for the table widget text format. + example: {"type": "is", "value": "fruit"} + properties: + type: + $ref: "#/components/schemas/TableWidgetTextFormatMatchType" + value: + description: Table Widget Match String. + example: "Match Value" + type: string + required: + - type + - value + type: object + TableWidgetTextFormatMatchType: + description: Match or compare option. + enum: + - is + - is_not + - contains + - does_not_contain + - starts_with + - ends_with + example: is + type: string + x-enum-varnames: + - IS + - IS_NOT + - CONTAINS + - DOES_NOT_CONTAIN + - STARTS_WITH + - ENDS_WITH + TableWidgetTextFormatPalette: + default: white_on_green + description: Color-on-color palette to highlight replaced text. + enum: + - white_on_red + - white_on_yellow + - white_on_green + - black_on_light_red + - black_on_light_yellow + - black_on_light_green + - red_on_white + - yellow_on_white + - green_on_white + - custom_bg + - custom_text + type: string + x-enum-varnames: + - WHITE_ON_RED + - WHITE_ON_YELLOW + - WHITE_ON_GREEN + - BLACK_ON_LIGHT_RED + - BLACK_ON_LIGHT_YELLOW + - BLACK_ON_LIGHT_GREEN + - RED_ON_WHITE + - YELLOW_ON_WHITE + - GREEN_ON_WHITE + - CUSTOM_BG + - CUSTOM_TEXT + TableWidgetTextFormatReplace: + description: Replace rule for the table widget text format. + example: {"type": "all", "with": "vegetable"} + oneOf: + - $ref: "#/components/schemas/TableWidgetTextFormatReplaceAll" + - $ref: "#/components/schemas/TableWidgetTextFormatReplaceSubstring" + TableWidgetTextFormatReplaceAll: + description: Match All definition. + example: {"type": "all", "with": "vegetable"} + properties: + type: + $ref: "#/components/schemas/TableWidgetTextFormatReplaceAllType" + with: + description: Replace All type. + example: all + type: string + required: + - type + - with + type: object + TableWidgetTextFormatReplaceAllType: + description: Table widget text format replace all type. + enum: + - all + example: all + type: string + x-enum-varnames: + - ALL + TableWidgetTextFormatReplaceSubstring: + description: Match Sub-string definition. + example: {"substring": "fruit", "type": "substring", "with": "vegetable"} + properties: + substring: + description: Text that will be replaced. + example: "string to replace" + type: string + type: + $ref: "#/components/schemas/TableWidgetTextFormatReplaceSubstringType" + with: + description: Text that will replace original sub-string. + example: "replacement" + type: string + required: + - type + - with + - substring + type: object + TableWidgetTextFormatReplaceSubstringType: + description: Table widget text format replace sub-string type. + enum: + - substring + example: substring + type: string + x-enum-varnames: + - SUBSTRING + TableWidgetTextFormatRule: + description: Text format rules. + example: {"match": {"type": "is", "value": "apple"}, "replace": {"type": "all", "with": "vegetable"}} + properties: + custom_bg_color: + description: Hex representation of the custom background color. Used with custom background palette option. + example: "#632ca6" + type: string + custom_fg_color: + description: Hex representation of the custom text color. Used with custom text palette option. + example: "#632ca6" + type: string + match: + $ref: "#/components/schemas/TableWidgetTextFormatMatch" + palette: + $ref: "#/components/schemas/TableWidgetTextFormatPalette" + replace: + $ref: "#/components/schemas/TableWidgetTextFormatReplace" + required: + - match + type: object + TagToHosts: + description: In this object, the key is the tag, and the value is a list of host names that are reporting that tag. + properties: + tags: + additionalProperties: + description: A list of host names which contain this tag + items: + description: A given tag in a list. + example: "test.metric.host" + type: string + type: array + description: A mapping of tags to host names + type: object + type: object + TargetFormatType: + description: |- + If the `target_type` of the remapper is `attribute`, try to cast the value to a new specific type. + If the cast is not possible, the original type is kept. `string`, `integer`, or `double` are the possible types. + If the `target_type` is `tag`, this parameter may not be specified. + enum: + - auto + - string + - integer + - double + type: string + x-enum-varnames: + - AUTO + - STRING + - INTEGER + - DOUBLE + TimeseriesBackground: + description: Set a timeseries on the widget background. + properties: + type: + $ref: "#/components/schemas/TimeseriesBackgroundType" + yaxis: + $ref: "#/components/schemas/WidgetAxis" + required: + - type + type: object + TimeseriesBackgroundType: + default: area + description: Timeseries is made using an area or bars. + enum: + - bars + - area + example: bars + type: string + x-enum-varnames: + - BARS + - AREA + TimeseriesRequestStyle: + description: Define request widget style for timeseries widgets. + properties: + has_value_labels: + description: If true, the value is displayed as a label relative to the data point. + type: boolean + line_type: + $ref: "#/components/schemas/WidgetLineType" + line_width: + $ref: "#/components/schemas/WidgetLineWidth" + order_by: + $ref: "#/components/schemas/WidgetStyleOrderBy" + palette: + description: Color palette to apply to the widget. + type: string + type: object + TimeseriesWidgetDefinition: + description: The timeseries visualization allows you to display the evolution of one or more metrics, log events, or Indexed Spans over time. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + events: + deprecated: true + description: List of widget events. Deprecated - Use `overlay` request type instead. + items: + $ref: "#/components/schemas/WidgetEvent" + type: array + legend_columns: + description: Columns displayed in the legend. + items: + $ref: "#/components/schemas/TimeseriesWidgetLegendColumn" + type: array + legend_layout: + $ref: "#/components/schemas/TimeseriesWidgetLegendLayout" + legend_size: + $ref: "#/components/schemas/WidgetLegendSize" + markers: + description: List of markers. + items: + $ref: "#/components/schemas/WidgetMarker" + type: array + requests: + description: List of timeseries widget requests. + example: ["q/apm_query/log_query": "{}"] + items: + $ref: "#/components/schemas/TimeseriesWidgetRequest" + minItems: 1 + type: array + right_yaxis: + $ref: "#/components/schemas/WidgetAxis" + show_legend: + description: (screenboard only) Show the legend for this widget. + type: boolean + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/TimeseriesWidgetDefinitionType" + yaxis: + $ref: "#/components/schemas/WidgetAxis" + required: + - type + - requests + type: object + TimeseriesWidgetDefinitionType: + default: timeseries + description: Type of the timeseries widget. + enum: + - timeseries + example: timeseries + type: string + x-enum-varnames: + - TIMESERIES + TimeseriesWidgetExpressionAlias: + description: Define an expression alias. + properties: + alias_name: + description: Expression alias. + type: string + expression: + description: Expression name. + example: "" + type: string + required: + - expression + type: object + TimeseriesWidgetLegendColumn: + description: Legend column. + enum: + - value + - avg + - sum + - min + - max + type: string + x-enum-varnames: + - VALUE + - AVG + - SUM + - MIN + - MAX + TimeseriesWidgetLegendLayout: + description: Layout of the legend. + enum: + - auto + - horizontal + - vertical + type: string + x-enum-varnames: + - AUTO + - HORIZONTAL + - VERTICAL + TimeseriesWidgetRequest: + description: Updated timeseries widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + display_type: + $ref: "#/components/schemas/WidgetDisplayType" + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + metadata: + description: Used to define expression aliases. + items: + $ref: "#/components/schemas/TimeseriesWidgetExpressionAlias" + type: array + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + on_right_yaxis: + description: Whether or not to display a second y-axis on the right. + type: boolean + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + style: + $ref: "#/components/schemas/TimeseriesRequestStyle" + type: object + ToplistWidgetDefinition: + description: The top list visualization enables you to display a list of Tag value like hostname or service with the most or least of any metric value, such as highest consumers of CPU, hosts with the least disk space, etc. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + description: List of top list widget requests. + example: ["q": "system.load.1"] + items: + $ref: "#/components/schemas/ToplistWidgetRequest" + type: array + style: + $ref: "#/components/schemas/ToplistWidgetStyle" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/ToplistWidgetDefinitionType" + required: + - type + - requests + type: object + ToplistWidgetDefinitionType: + default: toplist + description: Type of the top list widget. + enum: + - toplist + example: toplist + type: string + x-enum-varnames: + - TOPLIST + ToplistWidgetDisplay: + description: Top list widget display options. + oneOf: + - $ref: "#/components/schemas/ToplistWidgetStacked" + - $ref: "#/components/schemas/ToplistWidgetFlat" + ToplistWidgetFlat: + description: Top list widget flat display. + properties: + type: + $ref: "#/components/schemas/ToplistWidgetFlatType" + required: + - type + type: object + ToplistWidgetFlatType: + default: flat + description: Top list widget flat display type. + enum: + - flat + example: flat + type: string + x-enum-varnames: + - FLAT + ToplistWidgetLegend: + description: Top list widget stacked legend behavior. + enum: + - automatic + - inline + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - INLINE + - NONE + ToplistWidgetRequest: + description: Updated top list widget. + properties: + apm_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + conditional_formats: + description: List of conditional formats. + example: [{"comparator": ">=", "palette": "blue", "value": 1.0}] + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + minItems: 1 + type: array + event_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + log_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: "#/components/schemas/ProcessQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + rum_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: "#/components/schemas/LogQueryDefinition" + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: "#/components/schemas/WidgetSortBy" + style: + $ref: "#/components/schemas/WidgetRequestStyle" + type: object + ToplistWidgetScaling: + description: Top list widget scaling definition. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + ToplistWidgetStacked: + description: Top list widget stacked display options. + properties: + legend: + $ref: "#/components/schemas/ToplistWidgetLegend" + type: + $ref: "#/components/schemas/ToplistWidgetStackedType" + required: + - type + type: object + ToplistWidgetStackedType: + default: stacked + description: Top list widget stacked display type. + enum: + - stacked + example: stacked + type: string + x-enum-varnames: + - STACKED + ToplistWidgetStyle: + description: Style customization for a top list widget. + properties: + display: + $ref: "#/components/schemas/ToplistWidgetDisplay" + palette: + description: Color palette to apply to the widget. + type: string + scaling: + $ref: "#/components/schemas/ToplistWidgetScaling" + type: object + TopologyMapWidgetDefinition: + description: This widget displays a topology of nodes and edges for different data sources. It replaces the service map widget. + oneOf: + - $ref: "#/components/schemas/TopologyMapWidgetDefinitionDataStreams" + - $ref: "#/components/schemas/TopologyMapWidgetDefinitionServiceMap" + TopologyMapWidgetDefinitionDataStreams: + additionalProperties: false + description: Topology map widget backed by the data streams data source. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + description: One Topology request. + items: + $ref: "#/components/schemas/TopologyRequestDataStreams" + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/TopologyMapWidgetDefinitionType" + required: + - type + - requests + type: object + TopologyMapWidgetDefinitionServiceMap: + additionalProperties: false + description: Topology map widget backed by the service map data source. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + requests: + description: One Topology request. + items: + $ref: "#/components/schemas/TopologyRequestServiceMap" + minItems: 1 + type: array + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/TopologyMapWidgetDefinitionType" + required: + - type + - requests + type: object + TopologyMapWidgetDefinitionType: + default: topology_map + description: Type of the topology map widget. + enum: + - topology_map + example: topology_map + type: string + x-enum-varnames: + - TOPOLOGY_MAP + TopologyQueryDataStreams: + additionalProperties: false + description: Query to the data streams topology data source. + properties: + data_source: + $ref: "#/components/schemas/TopologyQueryDataStreamsDataSource" + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: ["env:prod", "az:us-east"] + items: + description: Environment or primary tag, generally in a key:value format. + type: string + minItems: 1 + type: array + query_string: + description: A search string for filtering services. When set, this replaces the `service` field. + example: "service:myservice" + type: string + service: + description: (deprecated) Name of the service. Leave this empty and use query_string instead. + example: myservice + type: string + required: + - data_source + - filters + - service + type: object + TopologyQueryDataStreamsDataSource: + description: Name of the data source. + enum: + - data_streams + example: data_streams + type: string + x-enum-varnames: + - DATA_STREAMS + TopologyQueryServiceMap: + additionalProperties: false + description: Query to the service map topology data source. + properties: + data_source: + $ref: "#/components/schemas/TopologyQueryServiceMapDataSource" + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: ["env:prod", "az:us-east"] + items: + description: Environment or primary tag, generally in a key:value format + type: string + minItems: 1 + type: array + query_string: + description: A search string for filtering services. When set, this replaces the `service` field. + example: "service:myservice" + type: string + service: + description: (deprecated) Name of the service. Leave this empty and use query_string instead. + example: myservice + type: string + required: + - data_source + - filters + - service + type: object + TopologyQueryServiceMapDataSource: + description: Name of the data source. + enum: + - service_map + example: service_map + type: string + x-enum-varnames: + - SERVICE_MAP + TopologyRequestDataStreams: + description: Request that returns nodes and edges from the data streams data source. + properties: + query: + $ref: "#/components/schemas/TopologyQueryDataStreams" + request_type: + $ref: "#/components/schemas/TopologyRequestType" + type: object + TopologyRequestServiceMap: + description: Request that returns nodes and edges from the service map data source. + properties: + query: + $ref: "#/components/schemas/TopologyQueryServiceMap" + request_type: + $ref: "#/components/schemas/TopologyRequestType" + type: object + TopologyRequestType: + description: Widget request type. + enum: + - topology + type: string + x-enum-varnames: + - TOPOLOGY + TreeMapColorBy: + default: "user" + deprecated: true + description: (deprecated) The attribute formerly used to determine color in the widget. + enum: + - user + example: "user" + type: string + x-enum-varnames: + - USER + TreeMapGroupBy: + deprecated: true + description: (deprecated) The attribute formerly used to group elements in the widget. + enum: + - user + - family + - process + example: "user" + type: string + x-enum-varnames: + - USER + - FAMILY + - PROCESS + TreeMapSizeBy: + deprecated: true + description: (deprecated) The attribute formerly used to determine size in the widget. + enum: + - pct_cpu + - pct_mem + example: "pct_cpu" + type: string + x-enum-varnames: + - PCT_CPU + - PCT_MEM + TreeMapWidgetDefinition: + description: The treemap visualization enables you to display hierarchical and nested data. It is well suited for queries that describe part-whole relationships, such as resource usage by availability zone, data center, or team. + properties: + color_by: + $ref: "#/components/schemas/TreeMapColorBy" + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + description: + description: The description of the widget. + type: string + group_by: + $ref: "#/components/schemas/TreeMapGroupBy" + requests: + description: List of treemap widget requests. + example: [{"aggregator": "sum", "data_source": "metrics", "name": "query1", "query": "sum:system.mem.total{*} by {service}"}] + items: + $ref: "#/components/schemas/TreeMapWidgetRequest" + maxItems: 1 + minItems: 1 + type: array + size_by: + $ref: "#/components/schemas/TreeMapSizeBy" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of your widget. + type: string + type: + $ref: "#/components/schemas/TreeMapWidgetDefinitionType" + required: + - type + - requests + type: object + TreeMapWidgetDefinitionType: + default: treemap + description: Type of the treemap widget. + enum: + - treemap + example: treemap + type: string + x-enum-varnames: + - TREEMAP + TreeMapWidgetRequest: + description: An updated treemap widget. + properties: + formulas: + description: List of formulas that operate on queries. + items: + $ref: "#/components/schemas/WidgetFormula" + type: array + q: + deprecated: true + description: The widget metrics query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: "#/components/schemas/FormulaAndFunctionQueryDefinition" + type: array + response_format: + $ref: "#/components/schemas/FormulaAndFunctionResponseFormat" + sort: + $ref: "#/components/schemas/WidgetSortBy" + style: + $ref: "#/components/schemas/WidgetRequestStyle" + type: object + UsageAnalyzedLogsHour: + description: The number of analyzed logs for each hour for a given organization. + properties: + analyzed_logs: + description: Contains the number of analyzed logs. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageAnalyzedLogsResponse: + description: A response containing the number of analyzed logs for each hour for a given organization. + properties: + usage: + description: Get hourly usage for analyzed logs. + items: + $ref: "#/components/schemas/UsageAnalyzedLogsHour" + type: array + type: object + UsageAttributionAggregates: + description: An array of available aggregates. + items: + $ref: "#/components/schemas/UsageAttributionAggregatesBody" + type: array + UsageAttributionAggregatesBody: + description: The object containing the aggregates. + properties: + agg_type: + description: The aggregate type. + example: "sum" + type: string + field: + description: The field. + example: "custom_timeseries_usage" + type: string + value: + description: The value for a given field. + format: double + type: number + type: object + UsageAttributionTagNames: + additionalProperties: + description: |- + A list of values that are associated with each tag key. + + - An empty list means the resource use wasn't tagged with the respective tag. + - Multiple values means the respective tag was applied multiple times on the resource. + - An `` value means the resource was tagged with the respective tag but did not have a value. + items: + description: A given tag in a list. + example: "datadog-integrations-lab" + type: string + type: array + description: |- + Tag keys and values. + + A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags + configured for usage attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). + In this scenario the API returns the total usage, not broken down by tags. + nullable: true + type: object + UsageAuditLogsHour: + description: Audit logs usage for a given organization for a given hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + lines_indexed: + description: The total number of audit logs lines indexed during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageAuditLogsResponse: + description: Response containing the audit logs usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for audit logs. + items: + $ref: "#/components/schemas/UsageAuditLogsHour" + type: array + type: object + UsageBillableSummaryBody: + description: Response with properties for each aggregated usage type. + properties: + account_billable_usage: + description: The total account usage. + format: int64 + type: integer + account_committed_usage: + description: The total account committed usage. + format: int64 + type: integer + account_on_demand_usage: + description: The total account on-demand usage. + format: int64 + type: integer + elapsed_usage_hours: + description: Elapsed usage hours for some billable product. + format: int64 + type: integer + first_billable_usage_hour: + description: The first billable hour for the org. + format: date-time + type: string + last_billable_usage_hour: + description: The last billable hour for the org. + format: date-time + type: string + org_billable_usage: + description: The number of units used within the billable timeframe. + format: int64 + type: integer + percentage_in_account: + description: The percentage of account usage the org represents. + format: double + type: number + usage_unit: + description: Units pertaining to the usage. + type: string + type: object + UsageBillableSummaryHour: + description: Response with monthly summary of data billed by Datadog. + properties: + account_name: + description: The account name. + type: string + account_public_id: + description: The account public ID. + type: string + billing_plan: + deprecated: true + description: The billing plan (metadata). (Deprecated from June 2026) + type: string + end_date: + description: Shows the last date of usage. + format: date-time + type: string + num_orgs: + description: The number of organizations. + format: int64 + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + ratio_in_month: + description: Shows usage aggregation for a billing period. + format: double + type: number + region: + description: The region of the organization. + type: string + start_date: + description: Shows the first date of usage. + format: date-time + type: string + usage: + $ref: "#/components/schemas/UsageBillableSummaryKeys" + type: object + UsageBillableSummaryKeys: + description: Response with aggregated usage types. + properties: + apm_fargate_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + apm_fargate_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + apm_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + apm_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + apm_profiler_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + apm_profiler_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + apm_trace_search_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + application_security_fargate_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + application_security_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + application_security_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ci_pipeline_indexed_spans_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ci_pipeline_maximum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ci_pipeline_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ci_test_indexed_spans_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ci_testing_maximum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ci_testing_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cloud_cost_management_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cloud_cost_management_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cspm_container_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cspm_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cspm_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + custom_event_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cws_container_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cws_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + cws_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + dbm_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + dbm_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + dbm_normalized_queries_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + dbm_normalized_queries_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + fargate_container_apm_and_profiler_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + fargate_container_apm_and_profiler_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + fargate_container_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + fargate_container_profiler_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + fargate_container_profiler_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + fargate_container_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + incident_management_maximum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + incident_management_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + infra_and_apm_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + infra_and_apm_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + infra_container_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + infra_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + infra_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ingested_spans_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ingested_timeseries_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + ingested_timeseries_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + iot_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + iot_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + lambda_function_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + lambda_function_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_forwarding_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_15day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_180day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_1day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_30day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_360day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_3day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_45day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_60day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_7day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_90day_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_custom_retention_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_indexed_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + logs_ingested_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + network_device_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + network_device_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + npm_flow_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + npm_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + npm_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + observability_pipeline_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + online_archive_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + prof_container_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + prof_host_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + prof_host_top99p: + $ref: "#/components/schemas/UsageBillableSummaryBody" + rum_lite_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + rum_replay_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + rum_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + rum_units_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + sensitive_data_scanner_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + serverless_apm_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + serverless_infra_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + serverless_infra_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + serverless_invocation_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + siem_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + standard_timeseries_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + synthetics_api_tests_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + synthetics_app_testing_maximum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + synthetics_browser_checks_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + timeseries_average: + $ref: "#/components/schemas/UsageBillableSummaryBody" + timeseries_sum: + $ref: "#/components/schemas/UsageBillableSummaryBody" + type: object + UsageBillableSummaryResponse: + description: Response with monthly summary of data billed by Datadog. + properties: + usage: + description: An array of objects regarding usage of billable summary. + items: + $ref: "#/components/schemas/UsageBillableSummaryHour" + type: array + type: object + UsageCIVisibilityHour: + description: CI visibility usage in a given hour. + properties: + ci_pipeline_indexed_spans: + description: The number of spans for pipelines in the queried hour. + format: int64 + nullable: true + type: integer + ci_test_indexed_spans: + description: The number of spans for tests in the queried hour. + format: int64 + nullable: true + type: integer + ci_visibility_itr_committers: + description: Shows the total count of all active Git committers for Intelligent Test Runner in the current month. A committer is active if they commit at least 3 times in a given month. + format: int64 + nullable: true + type: integer + ci_visibility_pipeline_committers: + description: Shows the total count of all active Git committers for Pipelines in the current month. A committer is active if they commit at least 3 times in a given month. + format: int64 + nullable: true + type: integer + ci_visibility_test_committers: + description: The total count of all active Git committers for tests in the current month. A committer is active if they commit at least 3 times in a given month. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageCIVisibilityResponse: + description: CI visibility usage response + properties: + usage: + description: Response containing CI visibility usage. + items: + $ref: "#/components/schemas/UsageCIVisibilityHour" + type: array + type: object + UsageCWSHour: + description: Cloud Workload Security usage for a given organization for a given hour. + properties: + cws_container_count: + description: The total number of Cloud Workload Security container hours from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + cws_host_count: + description: The total number of Cloud Workload Security host hours from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageCWSResponse: + description: Response containing the Cloud Workload Security usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Cloud Workload Security. + items: + $ref: "#/components/schemas/UsageCWSHour" + type: array + type: object + UsageCloudSecurityPostureManagementHour: + description: Cloud Security Management Pro usage for a given organization for a given hour. + properties: + aas_host_count: + description: The number of Cloud Security Management Pro Azure app services hosts during a given hour. + format: double + nullable: true + type: number + aws_host_count: + description: The number of Cloud Security Management Pro AWS hosts during a given hour. + format: double + nullable: true + type: number + azure_host_count: + description: The number of Cloud Security Management Pro Azure hosts during a given hour. + format: double + nullable: true + type: number + compliance_host_count: + description: The number of Cloud Security Management Pro hosts during a given hour. + format: double + nullable: true + type: number + container_count: + description: The total number of Cloud Security Management Pro containers during a given hour. + format: double + nullable: true + type: number + gcp_host_count: + description: The number of Cloud Security Management Pro GCP hosts during a given hour. + format: double + nullable: true + type: number + host_count: + description: The total number of Cloud Security Management Pro hosts during a given hour. + format: double + nullable: true + type: number + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageCloudSecurityPostureManagementResponse: + description: The response containing the Cloud Security Management Pro usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Cloud Security Management Pro. + items: + $ref: "#/components/schemas/UsageCloudSecurityPostureManagementHour" + type: array + type: object + UsageCustomReportsAttributes: + description: The response containing attributes for custom reports. + properties: + computed_on: + description: The date the specified custom report was computed. + type: string + end_date: + description: The ending date of custom report. + type: string + size: + description: size + format: int64 + type: integer + start_date: + description: The starting date of custom report. + type: string + tags: + description: A list of tags to apply to custom reports. + items: + description: A given tag in a list. + example: "env" + type: string + type: array + type: object + UsageCustomReportsData: + description: The response containing the date and type for custom reports. + properties: + attributes: + $ref: "#/components/schemas/UsageCustomReportsAttributes" + id: + description: The date for specified custom reports. + type: string + type: + $ref: "#/components/schemas/UsageReportsType" + type: object + UsageCustomReportsMeta: + description: The object containing document metadata. + properties: + page: + $ref: "#/components/schemas/UsageCustomReportsPage" + type: object + UsageCustomReportsPage: + description: The object containing page total count. + properties: + total_count: + description: Total page count. + format: int64 + type: integer + type: object + UsageCustomReportsResponse: + description: Response containing available custom reports. + properties: + data: + description: An array of available custom reports. + items: + $ref: "#/components/schemas/UsageCustomReportsData" + type: array + meta: + $ref: "#/components/schemas/UsageCustomReportsMeta" + type: object + UsageDBMHour: + description: Database Monitoring usage for a given organization for a given hour. + properties: + dbm_host_count: + description: The total number of Database Monitoring host hours from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + dbm_queries_count: + description: The total number of normalized Database Monitoring queries from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageDBMResponse: + description: Response containing the Database Monitoring usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Database Monitoring + items: + $ref: "#/components/schemas/UsageDBMHour" + type: array + type: object + UsageFargateHour: + description: Number of Fargate tasks run and hourly usage. + properties: + apm_fargate_count: + description: The high-water mark of APM ECS Fargate tasks during the given hour. + format: int64 + nullable: true + type: integer + appsec_fargate_count: + description: The Application Security Monitoring ECS Fargate tasks during the given hour. + format: int64 + nullable: true + type: integer + avg_profiled_fargate_tasks: + description: The average profiled task count for Fargate Profiling. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + tasks_count: + description: The number of Fargate tasks run. + format: int64 + nullable: true + type: integer + type: object + UsageFargateResponse: + description: Response containing the number of Fargate tasks run and hourly usage. + properties: + usage: + description: Array with the number of hourly Fargate tasks recorded for a given organization. + items: + $ref: "#/components/schemas/UsageFargateHour" + type: array + type: object + UsageHostHour: + description: Number of hosts/containers recorded for each hour for a given organization. + properties: + agent_host_count: + description: |- + Contains the total number of infrastructure hosts reporting + during a given hour that were running the Datadog Agent. + format: int64 + nullable: true + type: integer + alibaba_host_count: + description: |- + Contains the total number of hosts that reported through Alibaba integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + apm_azure_app_service_host_count: + description: Contains the total number of Azure App Services hosts using APM. + format: int64 + nullable: true + type: integer + apm_host_count: + description: |- + Shows the total number of hosts using APM during the hour, + these are counted as billable (except during trial periods). + format: int64 + nullable: true + type: integer + aws_host_count: + description: |- + Contains the total number of hosts that reported through the AWS integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + azure_host_count: + description: |- + Contains the total number of hosts that reported through Azure integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + container_count: + description: Shows the total number of containers reported by the Docker integration during the hour. + format: int64 + nullable: true + type: integer + gcp_host_count: + description: |- + Contains the total number of hosts that reported through the Google Cloud integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + heroku_host_count: + description: Contains the total number of Heroku dynos reported by the Datadog Agent. + format: int64 + nullable: true + type: integer + host_count: + description: |- + Contains the total number of billable infrastructure hosts reporting during a given hour. + This is the sum of `agent_host_count`, `aws_host_count`, and `gcp_host_count`. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + nullable: true + type: string + infra_azure_app_service: + description: |- + Contains the total number of hosts that reported through the Azure App Services integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + opentelemetry_apm_host_count: + description: Contains the total number of hosts using APM reported by Datadog exporter for the OpenTelemetry Collector. + format: int64 + nullable: true + type: integer + opentelemetry_host_count: + description: Contains the total number of hosts reported by Datadog exporter for the OpenTelemetry Collector. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + vsphere_host_count: + description: |- + Contains the total number of hosts that reported through vSphere integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + type: object + UsageHostsResponse: + description: Host usage response. + properties: + usage: + description: An array of objects related to host usage. + items: + $ref: "#/components/schemas/UsageHostHour" + type: array + type: object + UsageIncidentManagementHour: + description: Incident management usage for a given organization for a given hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + monthly_active_users: + description: Contains the total number monthly active users from the start of the given hour's month until the given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageIncidentManagementResponse: + description: Response containing the incident management usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for incident management. + items: + $ref: "#/components/schemas/UsageIncidentManagementHour" + type: array + type: object + UsageIndexedSpansHour: + description: The hours of indexed spans usage. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + indexed_events_count: + description: Contains the number of spans indexed. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageIndexedSpansResponse: + description: A response containing indexed spans usage. + properties: + usage: + description: Array with the number of hourly traces indexed for a given organization. + items: + $ref: "#/components/schemas/UsageIndexedSpansHour" + type: array + type: object + UsageIngestedSpansHour: + description: Ingested spans usage for a given organization for a given hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + ingested_events_bytes: + description: Contains the total number of bytes ingested for APM spans during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageIngestedSpansResponse: + description: Response containing the ingested spans usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for ingested spans. + items: + $ref: "#/components/schemas/UsageIngestedSpansHour" + type: array + type: object + UsageIoTHour: + description: IoT usage for a given organization for a given hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + iot_device_count: + description: The total number of IoT devices during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageIoTResponse: + description: Response containing the IoT usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for IoT. + items: + $ref: "#/components/schemas/UsageIoTHour" + type: array + type: object + UsageLambdaHour: + description: |- + Number of Lambda functions and sum of the invocations of all Lambda functions + for each hour for a given organization. + properties: + func_count: + description: Contains the number of different functions for each region and AWS account. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + invocations_sum: + description: Contains the sum of invocations of all functions. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageLambdaResponse: + description: |- + Response containing the number of Lambda functions and sum of the invocations of all Lambda functions + for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Lambda. + items: + $ref: "#/components/schemas/UsageLambdaHour" + type: array + type: object + UsageLogsByIndexHour: + description: Number of indexed logs for each hour and index for a given organization. + properties: + event_count: + description: The total number of indexed logs for the queried hour. + format: int64 + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + index_id: + description: The index ID for this usage. + type: string + index_name: + description: The user specified name for this index ID. + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + retention: + description: The retention period (in days) for this index ID. + format: int64 + type: integer + type: object + UsageLogsByIndexResponse: + description: Response containing the number of indexed logs for each hour and index for a given organization. + properties: + usage: + description: An array of objects regarding hourly usage of logs by index response. + items: + $ref: "#/components/schemas/UsageLogsByIndexHour" + type: array + type: object + UsageLogsByRetentionHour: + description: The number of indexed logs for each hour for a given organization broken down by retention period. + properties: + indexed_events_count: + description: Total logs indexed with this retention period during a given hour. + format: int64 + nullable: true + type: integer + live_indexed_events_count: + description: Live logs indexed with this retention period during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + rehydrated_indexed_events_count: + description: Rehydrated logs indexed with this retention period during a given hour. + format: int64 + nullable: true + type: integer + retention: + description: The retention period in days or "custom" for all custom retention usage. + nullable: true + type: string + type: object + UsageLogsByRetentionResponse: + description: Response containing the indexed logs usage broken down by retention period for an organization during a given hour. + properties: + usage: + description: Get hourly usage for indexed logs by retention period. + items: + $ref: "#/components/schemas/UsageLogsByRetentionHour" + type: array + type: object + UsageLogsHour: + description: Hour usage for logs. + properties: + billable_ingested_bytes: + description: Contains the number of billable log bytes ingested. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + indexed_events_count: + description: Contains the number of log events indexed. + format: int64 + nullable: true + type: integer + ingested_events_bytes: + description: Contains the number of log bytes ingested. + format: int64 + nullable: true + type: integer + logs_forwarding_events_bytes: + description: Contains the number of logs forwarded bytes (data available as of April 1st 2023) + format: int64 + nullable: true + type: integer + logs_live_indexed_count: + description: Contains the number of live log events indexed (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + logs_live_ingested_bytes: + description: Contains the number of live log bytes ingested (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + logs_rehydrated_indexed_count: + description: Contains the number of rehydrated log events indexed (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + logs_rehydrated_ingested_bytes: + description: Contains the number of rehydrated log bytes ingested (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageLogsResponse: + description: Response containing the number of logs for each hour. + properties: + usage: + description: An array of objects regarding hourly usage of logs. + items: + $ref: "#/components/schemas/UsageLogsHour" + type: array + type: object + UsageMetricCategory: + description: Contains the metric category. + enum: + - standard + - custom + type: string + x-enum-varnames: + - STANDARD + - CUSTOM + UsageNetworkFlowsHour: + description: Number of netflow events indexed for each hour for a given organization. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + indexed_events_count: + description: Contains the number of netflow events indexed. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageNetworkFlowsResponse: + description: Response containing the number of netflow events indexed for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Network Flows. + items: + $ref: "#/components/schemas/UsageNetworkFlowsHour" + type: array + type: object + UsageNetworkHostsHour: + description: Number of active NPM hosts for each hour for a given organization. + properties: + host_count: + description: Contains the number of active NPM hosts. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageNetworkHostsResponse: + description: Response containing the number of active NPM hosts for each hour for a given organization. + properties: + usage: + description: Get hourly usage for NPM hosts. + items: + $ref: "#/components/schemas/UsageNetworkHostsHour" + type: array + type: object + UsageOnlineArchiveHour: + description: Online Archive usage in a given hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + online_archive_events_count: + description: Total count of online archived events within the hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageOnlineArchiveResponse: + description: Online Archive usage response. + properties: + usage: + description: Response containing Online Archive usage. + items: + $ref: "#/components/schemas/UsageOnlineArchiveHour" + type: array + type: object + UsageProfilingHour: + description: The number of profiled hosts for each hour for a given organization. + properties: + aas_count: + description: Contains the total number of profiled Azure app services reporting during a given hour. + format: int64 + nullable: true + type: integer + avg_container_agent_count: + description: Get average number of container agents for that hour. + format: int64 + nullable: true + type: integer + host_count: + description: Contains the total number of profiled hosts reporting during a given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageProfilingResponse: + description: Response containing the number of profiled hosts for each hour for a given organization. + properties: + usage: + description: Get hourly usage for profiled hosts. + items: + $ref: "#/components/schemas/UsageProfilingHour" + type: array + type: object + UsageReportsType: + default: reports + description: The type of reports. + enum: + - reports + example: "reports" + type: string + x-enum-varnames: + - REPORTS + UsageRumSessionsHour: + description: Number of RUM sessions recorded for each hour for a given organization. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + replay_session_count: + description: Contains the number of RUM Session Replay counts (data available beginning November 1, 2021). + format: int64 + type: integer + session_count: + description: Contains the number of browser RUM lite Sessions. + format: int64 + nullable: true + type: integer + session_count_android: + description: Contains the number of mobile RUM sessions on Android (data available beginning December 1, 2020). + format: int64 + nullable: true + type: integer + session_count_flutter: + description: Contains the number of mobile RUM sessions on Flutter (data available beginning March 1, 2023). + format: int64 + nullable: true + type: integer + session_count_ios: + description: Contains the number of mobile RUM sessions on iOS (data available beginning December 1, 2020). + format: int64 + nullable: true + type: integer + session_count_reactnative: + description: Contains the number of mobile RUM sessions on React Native (data available beginning May 1, 2022). + format: int64 + nullable: true + type: integer + type: object + UsageRumSessionsResponse: + description: Response containing the number of RUM sessions for each hour for a given organization. + properties: + usage: + description: Get hourly usage for RUM sessions. + items: + $ref: "#/components/schemas/UsageRumSessionsHour" + type: array + type: object + UsageRumUnitsHour: + description: Number of RUM Units used for each hour for a given organization (data available as of November 1, 2021). + properties: + browser_rum_units: + description: The number of browser RUM units. + format: int64 + nullable: true + type: integer + mobile_rum_units: + description: The number of mobile RUM units. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + rum_units: + description: Total RUM units across mobile and browser RUM. + format: int64 + nullable: true + type: integer + type: object + UsageRumUnitsResponse: + description: Response containing the number of RUM Units for each hour for a given organization. + properties: + usage: + description: Get hourly usage for RUM Units. + items: + $ref: "#/components/schemas/UsageRumUnitsHour" + type: array + type: object + UsageSDSHour: + description: Sensitive Data Scanner usage for a given organization for a given hour. + properties: + apm_scanned_bytes: + description: The total number of bytes scanned of APM usage across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + events_scanned_bytes: + description: The total number of bytes scanned of Events usage across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + logs_scanned_bytes: + description: The total number of bytes scanned of logs usage by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + rum_scanned_bytes: + description: The total number of bytes scanned of RUM usage across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + total_scanned_bytes: + description: The total number of bytes scanned across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + type: object + UsageSDSResponse: + description: Response containing the Sensitive Data Scanner usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Sensitive Data Scanner. + items: + $ref: "#/components/schemas/UsageSDSHour" + type: array + type: object + UsageSNMPHour: + description: The number of SNMP devices for each hour for a given organization. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + snmp_devices: + description: Contains the number of SNMP devices. + format: int64 + nullable: true + type: integer + type: object + UsageSNMPResponse: + description: Response containing the number of SNMP devices for each hour for a given organization. + properties: + usage: + description: Get hourly usage for SNMP devices. + items: + $ref: "#/components/schemas/UsageSNMPHour" + type: array + type: object + UsageSort: + default: start_date + description: The field to sort by. + enum: + - computed_on + - size + - start_date + - end_date + type: string + x-enum-varnames: + - COMPUTED_ON + - SIZE + - START_DATE + - END_DATE + UsageSortDirection: + default: desc + description: The direction to sort by. + enum: + - desc + - asc + type: string + x-enum-varnames: + - DESC + - ASC + UsageSpecifiedCustomReportsAttributes: + description: The response containing attributes for specified custom reports. + properties: + computed_on: + description: The date the specified custom report was computed. + type: string + end_date: + description: The ending date of specified custom report. + type: string + location: + description: A downloadable file for the specified custom reporting file. + example: "https://an-s3-or-gs-bucket.s3.amazonaws.com" + type: string + size: + description: size + format: int64 + type: integer + start_date: + description: The starting date of specified custom report. + type: string + tags: + description: A list of tags to apply to specified custom reports. + items: + description: A given tag in a list. + example: "env" + type: string + type: array + type: object + UsageSpecifiedCustomReportsData: + description: Response containing date and type for specified custom reports. + properties: + attributes: + $ref: "#/components/schemas/UsageSpecifiedCustomReportsAttributes" + id: + description: The date for specified custom reports. + type: string + type: + $ref: "#/components/schemas/UsageReportsType" + type: object + UsageSpecifiedCustomReportsMeta: + description: The object containing document metadata. + properties: + page: + $ref: "#/components/schemas/UsageSpecifiedCustomReportsPage" + type: object + UsageSpecifiedCustomReportsPage: + description: The object containing page total count for specified ID. + properties: + total_count: + description: Total page count. + format: int64 + type: integer + type: object + UsageSpecifiedCustomReportsResponse: + description: Returns available specified custom reports. + properties: + data: + $ref: "#/components/schemas/UsageSpecifiedCustomReportsData" + meta: + $ref: "#/components/schemas/UsageSpecifiedCustomReportsMeta" + type: object + UsageSummaryDate: + description: |- + Response with hourly report of all data billed by Datadog for all organizations. + + For SDK users only: all fields at this response level are accessible through the + `additionalProperties` map. Existing typed-field getters are unchanged. New billing + dimensions will not have typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key. + properties: + agent_host_top99p: + description: Shows the 99th percentile of all agent hosts over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_agent_builder_ai_credits_sum: + description: Shows the sum of all AI credits used by Agent Builder over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_bits_assistant_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_bits_dev_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Dev over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_bits_sre_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI SRE over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_sum: + description: Shows the sum of all AI credits over all hours in the current date for all organizations. + format: int64 + type: integer + apm_azure_app_service_host_top99p: + description: Shows the 99th percentile of all Azure app services using APM over all hours in the current date all organizations. + format: int64 + type: integer + apm_devsecops_host_top99p: + description: Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_enterprise_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current date for all organizations. + format: int64 + type: integer + apm_fargate_count_avg: + description: Shows the average of all APM ECS Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + apm_host_top99p: + description: Shows the 99th percentile of all distinct APM hosts over all hours in the current date for all organizations. + format: int64 + type: integer + apm_pro_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Pro hosts over all hours in the current date for all organizations. + format: int64 + type: integer + appsec_fargate_count_avg: + description: Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + asm_serverless_sum: + description: Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current date for all organizations. + format: int64 + type: integer + audit_logs_lines_indexed_sum: + deprecated: true + description: Shows the sum of audit logs lines indexed over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + audit_trail_enabled_hwm: + description: Shows the number of organizations that had Audit Trail enabled in the current date. + format: int64 + type: integer + audit_trail_event_forwarding_events_sum: + description: Shows the sum of all Audit Trail event forwarding events over all hours in the current date for all organizations. + format: int64 + type: integer + avg_profiled_fargate_tasks: + description: The average total count for Fargate Container Profiler over all hours in the current date for all organizations. + format: int64 + type: integer + aws_host_top99p: + description: Shows the 99th percentile of all AWS hosts over all hours in the current date for all organizations. + format: int64 + type: integer + aws_lambda_func_count: + description: Shows the average of the number of functions that executed 1 or more times each hour in the current date for all organizations. + format: int64 + type: integer + aws_lambda_invocations_sum: + description: Shows the sum of all AWS Lambda invocations over all hours in the current date for all organizations. + format: int64 + type: integer + azure_app_service_top99p: + description: Shows the 99th percentile of all Azure app services over all hours in the current date for all organizations. + format: int64 + type: integer + billable_ingested_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for all organizations. + format: int64 + type: integer + bits_ai_investigations_sum: + description: Shows the sum of all Bits AI Investigations over all hours in the current date for all organizations. + format: int64 + type: integer + browser_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all browser lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_replay_session_count_sum: + description: Shows the sum of all browser replay sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_units_sum: + deprecated: true + description: Shows the sum of all browser RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ccm_anthropic_spend_last: + description: Shows the last value of Anthropic cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_aws_spend_last: + description: Shows the last value of AWS cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_azure_spend_last: + description: Shows the last value of Azure cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_confluent_spend_last: + description: Shows the last value of Confluent cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_databricks_spend_last: + description: Shows the last value of Databricks cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_elastic_spend_last: + description: Shows the last value of Elastic cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_fastly_spend_last: + description: Shows the last value of Fastly cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_gcp_spend_last: + description: Shows the last value of GCP cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_github_spend_last: + description: Shows the last value of GitHub cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_mongodb_spend_last: + description: Shows the last value of MongoDB cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_oci_spend_last: + description: Shows the last value of OCI cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_openai_spend_last: + description: Shows the last value of OpenAI cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_snowflake_spend_last: + description: Shows the last value of Snowflake cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_spend_monitored_ent_last: + description: Shows the last value of the amount of cloud spend monitored for Enterprise over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_spend_monitored_pro_last: + description: Shows the last value of the amount of cloud spend monitored for Pro over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_twilio_spend_last: + description: Shows the last value of Twilio cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ci_pipeline_indexed_spans_sum: + description: Shows the sum of all CI pipeline indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_test_indexed_spans_sum: + description: Shows the sum of all CI test indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_itr_committers_hwm: + description: Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_pipeline_committers_hwm: + description: Shows the high-water mark of all CI visibility pipeline committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_test_committers_hwm: + description: Shows the high-water mark of all CI visibility test committers over all hours in the current month for all organizations. + format: int64 + type: integer + cloud_cost_management_aws_host_count_avg: + description: Host count average of Cloud Cost Management for AWS for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_azure_host_count_avg: + description: Host count average of Cloud Cost Management for Azure for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_gcp_host_count_avg: + description: Host count average of Cloud Cost Management for GCP for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_host_count_avg: + description: Host count average of Cloud Cost Management for all cloud providers for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_oci_host_count_avg: + description: Average host count for Cloud Cost Management on OCI for the given date and organization. + format: int64 + type: integer + cloud_siem_events_sum: + description: Shows the sum of all Cloud Security Information and Event Management events over all hours in the current date for the given org. + format: int64 + type: integer + cloud_siem_indexed_logs_sum: + description: Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sa_committers_hwm: + description: Shows the high-water mark of all Static Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sca_committers_hwm: + description: Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_security_host_top99p: + description: Shows the 99th percentile of all Code Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + container_avg: + description: Shows the average of all distinct containers over all hours in the current date for all organizations. + format: int64 + type: integer + container_excl_agent_avg: + description: Shows the average of containers without the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + container_hwm: + description: Shows the high-water mark of all distinct containers over all hours in the current date for all organizations. + format: int64 + type: integer + csm_container_enterprise_compliance_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_cws_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_total_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aas_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_azure_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_compliance_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_cws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_gcp_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_total_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_aas_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_aws_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_azure_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_container_avg: + description: Shows the average number of Cloud Security Management Pro containers over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_container_hwm: + description: Shows the high-water mark of Cloud Security Management Pro containers over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_gcp_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for all organizations. + format: int64 + type: integer + custom_ts_avg: + description: Shows the average number of distinct custom metrics over all hours in the current date for all organizations. + format: int64 + type: integer + cws_container_count_avg: + description: Shows the average of all distinct Cloud Workload Security containers over all hours in the current date for all organizations. + format: int64 + type: integer + cws_fargate_task_avg: + description: Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + cws_host_top99p: + description: Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current date for all organizations. + format: int64 + type: integer + data_jobs_monitoring_host_hr_sum: + description: Shows the sum of all Data Jobs Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_stream_monitoring_host_count_sum: + description: Shows the sum of all Data Streams Monitoring hosts over all hours in the current date for all organizations. + format: int64 + type: integer + data_stream_monitoring_host_count_top99p: + description: Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current date for all organizations. + format: int64 + type: integer + date: + description: The date for the usage. + format: date-time + type: string + dbm_host_top99p: + description: Shows the 99th percentile of all Database Monitoring hosts over all hours in the current date for all organizations. + format: int64 + type: integer + dbm_queries_count_avg: + description: Shows the average of all normalized Database Monitoring queries over all hours in the current date for all organizations. + format: int64 + type: integer + do_jobs_monitoring_orchestrators_job_hours_sum: + description: Shows the sum of all orchestrator job hours over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_alibaba_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_aws_sum: + description: Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_azure_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_basic_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_ent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_gcp_sum: + description: Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_heroku_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_aas_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_apm_sum: + description: Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_sum: + description: Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_pro_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proplus_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proxmox_sum: + description: Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current date for all organizations. + format: int64 + type: integer + error_tracking_apm_error_events_sum: + description: Shows the sum of all Error Tracking APM error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_error_events_sum: + description: Shows the sum of all Error Tracking error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_events_sum: + description: Shows the sum of all Error Tracking events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_rum_error_events_sum: + description: Shows the sum of all Error Tracking RUM error events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_correlated_events_sum: + description: Shows the sum of all Event Management correlated events over all hours in the current date for all organizations. + format: int64 + type: integer + event_management_correlation_correlated_related_events_sum: + description: Shows the sum of all Event Management correlated related events over all hours in the current date for all organizations. + format: int64 + type: integer + event_management_correlation_sum: + description: Shows the sum of all Event Management correlations over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_avg: + description: The average number of Profiling Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_eks_avg: + description: The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_tasks_count_avg: + description: Shows the high-watermark of all Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_tasks_count_hwm: + description: Shows the average of all Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + feature_flags_config_requests_sum: + description: Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current date for all organizations. + format: int64 + type: integer + flex_logs_compute_large_avg: + description: Shows the average number of Flex Logs Compute Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_medium_avg: + description: Shows the average number of Flex Logs Compute Medium Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_small_avg: + description: Shows the average number of Flex Logs Compute Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xlarge_avg: + description: Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xsmall_avg: + description: Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_avg: + description: Shows the average number of Flex Logs Starter Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_index_avg: + description: Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_retention_adjustment_avg: + description: Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_stored_logs_avg: + description: Shows the average of all Flex Stored Logs over all hours in the current date for the given org. + format: int64 + type: integer + forwarding_events_bytes_sum: + description: Shows the sum of all log bytes forwarded over all hours in the current date for all organizations. + format: int64 + type: integer + gcp_host_top99p: + description: Shows the 99th percentile of all GCP hosts over all hours in the current date for all organizations. + format: int64 + type: integer + heroku_host_top99p: + description: Shows the 99th percentile of all Heroku dynos over all hours in the current date for all organizations. + format: int64 + type: integer + incident_management_monthly_active_users_hwm: + description: Shows the high-water mark of incident management monthly active users over all hours in the current date for all organizations. + format: int64 + type: integer + incident_management_seats_hwm: + description: Shows the high-water mark of Incident Management seats over all hours on the current date for all organizations. + format: int64 + type: integer + indexed_events_count_sum: + description: Shows the sum of all log events indexed over all hours in the current date for all organizations. + format: int64 + type: integer + indexed_points_sum: + description: Shows the sum of all indexed custom metrics points over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_avg: + description: Shows the average of all Infrastructure vCPU cores over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_avg: + description: Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_avg: + description: Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_sum: + description: Shows the sum of all Infrastructure vCPU cores over all hours in the current date for all organizations. + format: int64 + type: integer + infra_edge_monitoring_devices_top99p: + description: Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_agent_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_vsphere_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_basic_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current date for all organizations. + format: int64 + type: integer + infra_storage_mgmt_objects_count_avg: + description: Shows the average number of storage management objects over all hours in the current date for all organizations. + format: int64 + type: integer + ingest_points_sum: + description: Shows the sum of all ingested custom metrics points over all hours in the current date for all organizations. + format: int64 + type: integer + ingested_events_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for all organizations. + format: int64 + type: integer + iot_apm_host_sum: + description: Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current date for all organizations. + format: int64 + type: integer + iot_apm_host_top99p: + description: Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current date for all organizations. + format: int64 + type: integer + iot_device_sum: + description: Shows the sum of all IoT devices over all hours in the current date for all organizations. + format: int64 + type: integer + iot_device_top99p: + description: Shows the 99th percentile of all IoT devices over all hours in the current date all organizations. + format: int64 + type: integer + llm_observability_15day_retention_spans_sum: + description: Shows the sum of all Agent Observability 15-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_30day_retention_spans_sum: + description: Shows the sum of all Agent Observability 30-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_60day_retention_spans_sum: + description: Shows the sum of all Agent Observability 60-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_90day_retention_spans_sum: + description: Shows the sum of all Agent Observability 90-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_min_spend_sum: + description: Sum of all Agent observability minimum spend over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_sum: + description: Sum of all Agent observability sessions over all hours in the current date for all organizations. + format: int64 + type: integer + logs_archive_search_gb_scanned_sum: + description: Shows the sum of all Logs Archive Search scanned data over all hours in the current date for all organizations. + format: int64 + type: integer + metric_names_sum: + description: Shows the sum of all custom metric names over all hours in the current date for all organizations. + format: int64 + type: integer + mobile_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all mobile lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_android_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Android over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_flutter_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Flutter over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_ios_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on iOS over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_reactnative_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on React Native over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_roku_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Roku over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_units_sum: + deprecated: true + description: Shows the sum of all mobile RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ndm_netflow_events_sum: + description: Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current date for the given org. + format: int64 + type: integer + netflow_indexed_events_count_sum: + deprecated: true + description: Shows the sum of all Network flows indexed over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + network_device_wireless_top99p: + description: Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current date for all organizations. + format: int64 + type: integer + network_path_sum: + description: Shows the sum of all Network Path scheduled tests over all hours in the current date for all organizations. + format: int64 + type: integer + npm_host_top99p: + description: Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current date for all organizations. + format: int64 + type: integer + observability_pipelines_bytes_processed_sum: + description: Sum of all observability pipelines bytes processed over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_sum: + description: Shows the sum of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_top99p: + description: Shows the 99th percentile of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + on_call_seat_hwm: + description: Shows the high-water mark of On-Call seats over all hours in the current date for all organizations. + format: int64 + type: integer + online_archive_events_count_sum: + description: Sum of all online archived events over all hours in the current date for all organizations. + format: int64 + type: integer + opentelemetry_apm_host_top99p: + description: Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for all organizations. + format: int64 + type: integer + opentelemetry_host_top99p: + description: Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for all organizations. + format: int64 + type: integer + orgs: + description: Organizations associated with a user. + items: + $ref: "#/components/schemas/UsageSummaryDateOrg" + type: array + product_analytics_sum: + description: Sum of all product analytics sessions over all hours in the current date for all organizations. + format: int64 + type: integer + profiling_aas_count_top99p: + description: Shows the 99th percentile of all profiled Azure app services over all hours in the current date for all organizations. + format: int64 + type: integer + profiling_host_top99p: + description: Shows the 99th percentile of all profiled hosts over all hours within the current date for all organizations. + format: int64 + type: integer + proxmox_host_sum: + description: Sum of all Proxmox hosts over all hours in the current date for all organizations. + format: int64 + type: integer + proxmox_host_top99p: + description: 99th percentile of all Proxmox hosts over all hours in the current date for all organizations. + format: int64 + type: integer + published_app_hwm: + description: Shows the high-water mark of all published applications over all hours in the current date for all organizations. + format: int64 + type: integer + rum_browser_and_mobile_session_count: + description: Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_browser_legacy_session_count_sum: + description: Shows the sum of all browser RUM legacy sessions over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_lite_session_count_sum: + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_replay_session_count_sum: + description: Shows the sum of all browser RUM Session Replay counts over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_indexed_sessions_sum: + description: Sum of all RUM indexed sessions over all hours in the current date for all organizations. + format: int64 + type: integer + rum_ingested_sessions_sum: + description: Sum of all RUM ingested sessions over all hours in the current date for all organizations. + format: int64 + type: integer + rum_lite_session_count_sum: + description: Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_android_sum: + description: Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_flutter_sum: + description: Shows the sum of all mobile RUM legacy Sessions on Flutter over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_ios_sum: + description: Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_roku_sum: + description: Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_android_sum: + description: Shows the sum of all mobile RUM lite sessions on Android over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_flutter_sum: + description: Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_ios_sum: + description: Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current date for all organizations. + format: int64 + type: integer + rum_mobile_lite_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_roku_sum: + description: Shows the sum of all mobile RUM lite sessions on Roku over all hours within the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_unity_sum: + description: Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current date for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_android_sum: + description: Shows the sum of all mobile RUM replay sessions on Android over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_ios_sum: + description: Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current date for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current date for the given org. + format: int64 + type: integer + rum_replay_session_count_sum: + description: Shows the sum of all RUM Session Replay counts over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_session_count_sum: + deprecated: true + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_session_replay_add_on_sum: + description: Sum of all RUM session replay add-on sessions over all hours in the current date for all organizations. + format: int64 + type: integer + rum_total_session_count_sum: + description: Shows the sum of RUM sessions (browser and mobile) over all hours in the current date for all organizations. + format: int64 + type: integer + rum_units_sum: + deprecated: true + description: Shows the sum of all browser and mobile RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + sca_fargate_count_avg: + description: Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sca_fargate_count_hwm: + description: Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sds_apm_scanned_bytes_sum: + description: Sum of all APM bytes scanned with sensitive data scanner over all hours in the current date for all organizations. + format: int64 + type: integer + sds_events_scanned_bytes_sum: + description: Sum of all event stream events bytes scanned with sensitive data scanner over all hours in the current date for all organizations. + format: int64 + type: integer + sds_logs_scanned_bytes_sum: + description: Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + sds_rum_scanned_bytes_sum: + description: Sum of all RUM bytes scanned with sensitive data scanner over all hours in the current date for all organizations. + format: int64 + type: integer + sds_total_scanned_bytes_sum: + description: Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_fargate_ecs_tasks_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for the current date for all organizations. + format: int64 + type: integer + serverless_apps_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_azure_count_avg: + description: Shows the average number of Serverless Apps for Azure for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Function App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Web App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_dsm_fargate_tasks_avg: + description: Shows the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM for the current date for all organizations. + format: int64 + type: integer + serverless_apps_ecs_avg: + description: Shows the average number of Serverless Apps for Elastic Container Service for the current date for all organizations. + format: int64 + type: integer + serverless_apps_eks_avg: + description: Shows the average number of Serverless Apps for Elastic Kubernetes Service for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_avg: + description: Shows the average number of Serverless Apps excluding Fargate for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Function App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Web App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_google_count_avg: + description: Shows the average number of Serverless Apps for Google Cloud for the given date and given org. + format: int64 + type: integer + serverless_apps_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_total_count_avg: + description: Shows the average number of Serverless Apps for Azure and Google Cloud for the given date and given org. + format: int64 + type: integer + siem_12mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_6mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_analyzed_logs_add_on_count_sum: + description: Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current date for the given org. + format: int64 + type: integer + snmp_device_count_sum: + description: Shows the sum of all Network Device Monitoring devices over all hours in the current date for all organizations. + format: int64 + type: integer + snmp_device_count_top99p: + description: Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_browser_check_calls_count_sum: + description: Shows the sum of all Synthetic browser tests over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_check_calls_count_sum: + description: Shows the sum of all Synthetic API tests over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_mobile_test_runs_sum: + description: Shows the sum of all Synthetic mobile application tests over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_parallel_testing_max_slots_hwm: + description: Shows the high-water mark of used synthetics parallel testing slots over all hours in the current date for all organizations. + format: int64 + type: integer + trace_search_indexed_events_count_sum: + description: Shows the sum of all Indexed Spans indexed over all hours in the current date for all organizations. + format: int64 + type: integer + twol_ingested_events_bytes_sum: + description: Shows the sum of all ingested APM span bytes over all hours in the current date for all organizations. + format: int64 + type: integer + universal_service_monitoring_host_top99p: + description: Shows the 99th percentile of all universal service management hosts over all hours in the current date for the given org. + format: int64 + type: integer + vsphere_host_top99p: + description: Shows the 99th percentile of all vSphere hosts over all hours in the current date for all organizations. + format: int64 + type: integer + vuln_management_host_count_top99p: + description: Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current date for the given org. + format: int64 + type: integer + workflow_executions_usage_sum: + description: Sum of all workflows executed over all hours in the current date for all organizations. + format: int64 + type: integer + type: object + x-keep-typed-in-additional-properties: true + UsageSummaryDateOrg: + description: |- + Global hourly report of all data billed by Datadog for a given organization. + + For SDK users only: all fields at this response level are accessible through the + `additionalProperties` map. Existing typed-field getters are unchanged. New billing + dimensions will not have typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key. + properties: + account_name: + description: The account name. + type: string + account_public_id: + description: The account public id. + type: string + agent_host_top99p: + description: Shows the 99th percentile of all agent hosts over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_agent_builder_ai_credits_sum: + description: Shows the sum of all AI credits used by Agent Builder over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_bits_assistant_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_bits_dev_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Dev over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_bits_sre_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI SRE over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_sum: + description: Shows the sum of all AI credits over all hours in the current date for the given org. + format: int64 + type: integer + apm_azure_app_service_host_top99p: + description: Shows the 99th percentile of all Azure app services using APM over all hours in the current date for the given org. + format: int64 + type: integer + apm_devsecops_host_top99p: + description: Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_enterprise_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_fargate_count_avg: + description: Shows the average of all APM ECS Fargate tasks over all hours in the current month for the given org. + format: int64 + type: integer + apm_host_top99p: + description: Shows the 99th percentile of all distinct APM hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_pro_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Pro hosts over all hours in the current date for the given org. + format: int64 + type: integer + appsec_fargate_count_avg: + description: Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current month for the given org. + format: int64 + type: integer + asm_serverless_sum: + description: Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current month for the given org. + format: int64 + type: integer + audit_logs_lines_indexed_sum: + deprecated: true + description: Shows the sum of all audit logs lines indexed over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + audit_trail_enabled_hwm: + description: Shows whether Audit Trail is enabled for the current date for the given org. + format: int64 + type: integer + audit_trail_event_forwarding_events_sum: + description: Shows the sum of all Audit Trail event forwarding events over all hours in the current date for the given org. + format: int64 + type: integer + avg_profiled_fargate_tasks: + description: The average total count for Fargate Container Profiler over all hours in the current month for the given org. + format: int64 + type: integer + aws_host_top99p: + description: Shows the 99th percentile of all AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + aws_lambda_func_count: + description: Shows the sum of all AWS Lambda invocations over all hours in the current date for the given org. + format: int64 + type: integer + aws_lambda_invocations_sum: + description: Shows the sum of all AWS Lambda invocations over all hours in the current date for the given org. + format: int64 + type: integer + azure_app_service_top99p: + description: Shows the 99th percentile of all Azure app services over all hours in the current date for the given org. + format: int64 + type: integer + billable_ingested_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for the given org. + format: int64 + type: integer + bits_ai_investigations_sum: + description: Shows the sum of all Bits AI Investigations over all hours in the current date for the given org. + format: int64 + type: integer + browser_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all browser lite sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_replay_session_count_sum: + description: Shows the sum of all browser replay sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_units_sum: + deprecated: true + description: Shows the sum of all browser RUM units over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ccm_anthropic_spend_last: + description: Shows the last value of Anthropic cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_aws_spend_last: + description: Shows the last value of AWS cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_azure_spend_last: + description: Shows the last value of Azure cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_confluent_spend_last: + description: Shows the last value of Confluent cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_databricks_spend_last: + description: Shows the last value of Databricks cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_elastic_spend_last: + description: Shows the last value of Elastic cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_fastly_spend_last: + description: Shows the last value of Fastly cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_gcp_spend_last: + description: Shows the last value of GCP cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_github_spend_last: + description: Shows the last value of GitHub cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_mongodb_spend_last: + description: Shows the last value of MongoDB cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_oci_spend_last: + description: Shows the last value of OCI cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_openai_spend_last: + description: Shows the last value of OpenAI cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_snowflake_spend_last: + description: Shows the last value of Snowflake cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_spend_monitored_ent_last: + description: Shows the last value of the amount of cloud spend monitored for Enterprise over all hours in the current date for the given org. + format: int64 + type: integer + ccm_spend_monitored_pro_last: + description: Shows the last value of the amount of cloud spend monitored for Pro over all hours in the current date for the given org. + format: int64 + type: integer + ccm_twilio_spend_last: + description: Shows the last value of Twilio cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ci_pipeline_indexed_spans_sum: + description: Shows the sum of all CI pipeline indexed spans over all hours in the current date for the given org. + format: int64 + type: integer + ci_test_indexed_spans_sum: + description: Shows the sum of all CI test indexed spans over all hours in the current date for the given org. + format: int64 + type: integer + ci_visibility_itr_committers_hwm: + description: Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current date for the given org. + format: int64 + type: integer + ci_visibility_pipeline_committers_hwm: + description: Shows the high-water mark of all CI visibility pipeline committers over all hours in the current date for the given org. + format: int64 + type: integer + ci_visibility_test_committers_hwm: + description: Shows the high-water mark of all CI visibility test committers over all hours in the current date for the given org. + format: int64 + type: integer + cloud_cost_management_aws_host_count_avg: + description: Host count average of Cloud Cost Management for AWS for the given date and given org. + format: int64 + type: integer + cloud_cost_management_azure_host_count_avg: + description: Host count average of Cloud Cost Management for Azure for the given date and given org. + format: int64 + type: integer + cloud_cost_management_gcp_host_count_avg: + description: Host count average of Cloud Cost Management for GCP for the given date and given org. + format: int64 + type: integer + cloud_cost_management_host_count_avg: + description: Host count average of Cloud Cost Management for all cloud providers for the given date and given org. + format: int64 + type: integer + cloud_cost_management_oci_host_count_avg: + description: Average host count for Cloud Cost Management on OCI for the given date and organization. + format: int64 + type: integer + cloud_siem_events_sum: + description: Shows the sum of all Cloud Security Information and Event Management events over all hours in the current date for the given org. + format: int64 + type: integer + cloud_siem_indexed_logs_sum: + description: Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sa_committers_hwm: + description: Shows the high-water mark of all Static Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sca_committers_hwm: + description: Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_security_host_top99p: + description: Shows the 99th percentile of all Code Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + container_avg: + description: Shows the average of all distinct containers over all hours in the current date for the given org. + format: int64 + type: integer + container_excl_agent_avg: + description: Shows the average of containers without the Datadog Agent over all hours in the current date for the given organization. + format: int64 + type: integer + container_hwm: + description: Shows the high-water mark of all distinct containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_compliance_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_cws_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_total_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aas_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_azure_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_compliance_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_cws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_gcp_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_total_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_aas_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_aws_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_azure_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_container_avg: + description: Shows the average number of Cloud Security Management Pro containers over all hours in the current date for the given org. + format: int64 + type: integer + cspm_container_hwm: + description: Shows the high-water mark of Cloud Security Management Pro containers over all hours in the current date for the given org. + format: int64 + type: integer + cspm_gcp_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + custom_historical_ts_avg: + description: Shows the average number of distinct historical custom metrics over all hours in the current date for the given org. + format: int64 + type: integer + custom_live_ts_avg: + description: Shows the average number of distinct live custom metrics over all hours in the current date for the given org. + format: int64 + type: integer + custom_ts_avg: + description: Shows the average number of distinct custom metrics over all hours in the current date for the given org. + format: int64 + type: integer + cws_container_count_avg: + description: Shows the average of all distinct Cloud Workload Security containers over all hours in the current date for the given org. + format: int64 + type: integer + cws_fargate_task_avg: + description: Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + cws_host_top99p: + description: Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_jobs_monitoring_host_hr_sum: + description: Shows the sum of all Data Jobs Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_stream_monitoring_host_count_sum: + description: Shows the sum of all Data Streams Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_stream_monitoring_host_count_top99p: + description: Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + dbm_host_top99p_sum: + description: Shows the 99th percentile of all Database Monitoring hosts over all hours in the current month for the given org. + format: int64 + type: integer + dbm_queries_avg_sum: + description: Shows the average of all distinct Database Monitoring normalized queries over all hours in the current month for the given org. + format: int64 + type: integer + do_jobs_monitoring_orchestrators_job_hours_sum: + description: Shows the sum of all orchestrator job hours over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_alibaba_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_aws_sum: + description: Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_azure_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_ent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_gcp_sum: + description: Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_heroku_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_aas_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_apm_sum: + description: Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_sum: + description: Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_pro_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proplus_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proxmox_sum: + description: Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current date for the given organization. + format: int64 + type: integer + error_tracking_apm_error_events_sum: + description: Shows the sum of all Error Tracking APM error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_error_events_sum: + description: Shows the sum of all Error Tracking error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_events_sum: + description: Shows the sum of all Error Tracking events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_rum_error_events_sum: + description: Shows the sum of all Error Tracking RUM error events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_correlated_events_sum: + description: Shows the sum of all Event Management correlated events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_correlated_related_events_sum: + description: Shows the sum of all Event Management correlated related events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_sum: + description: Shows the sum of all Event Management correlations over all hours in the current date for the given org. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_avg: + description: The average number of Profiling Fargate tasks over all hours in the current month for the given org. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_eks_avg: + description: The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current month for the given org. + format: int64 + type: integer + fargate_tasks_count_avg: + description: The average task count for Fargate. + format: int64 + type: integer + fargate_tasks_count_hwm: + description: Shows the high-water mark of all Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + feature_flags_config_requests_sum: + description: Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_large_avg: + description: Shows the average number of Flex Logs Compute Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_medium_avg: + description: Shows the average number of Flex Logs Compute Medium Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_small_avg: + description: Shows the average number of Flex Logs Compute Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xlarge_avg: + description: Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xsmall_avg: + description: Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_avg: + description: Shows the average number of Flex Logs Starter Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_index_avg: + description: Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_retention_adjustment_avg: + description: Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_stored_logs_avg: + description: Shows the average of all Flex Stored Logs over all hours in the current date for the given org. + format: int64 + type: integer + forwarding_events_bytes_sum: + description: Shows the sum of all log bytes forwarded over all hours in the current date for the given org. + format: int64 + type: integer + gcp_host_top99p: + description: Shows the 99th percentile of all GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + heroku_host_top99p: + description: Shows the 99th percentile of all Heroku dynos over all hours in the current date for the given org. + format: int64 + type: integer + id: + description: The organization id. + type: string + incident_management_monthly_active_users_hwm: + description: Shows the high-water mark of incident management monthly active users over all hours in the current date for the given org. + format: int64 + type: integer + incident_management_seats_hwm: + description: Shows the high-water mark of Incident Management seats over all hours on the current date for the given organization. + format: int64 + type: integer + indexed_events_count_sum: + deprecated: true + description: Shows the sum of all log events indexed over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + indexed_points_sum: + description: Shows the sum of all indexed custom metrics points over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_avg: + description: Shows the average of all Infrastructure vCPU cores over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_avg: + description: Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_avg: + description: Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_sum: + description: Shows the sum of all Infrastructure vCPU cores over all hours in the current date for the given org. + format: int64 + type: integer + infra_edge_monitoring_devices_top99p: + description: Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_basic_infra_basic_agent_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_basic_infra_basic_vsphere_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_basic_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + infra_storage_mgmt_objects_count_avg: + description: Shows the average number of storage management objects over all hours in the current date for the given org. + format: int64 + type: integer + ingest_points_sum: + description: Shows the sum of all ingested custom metrics points over all hours in the current date for the given org. + format: int64 + type: integer + ingested_events_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for the given org. + format: int64 + type: integer + iot_apm_host_sum: + description: Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current date for the given org. + format: int64 + type: integer + iot_apm_host_top99p: + description: Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current date for the given org. + format: int64 + type: integer + iot_device_agg_sum: + description: Shows the sum of all IoT devices over all hours in the current date for the given org. + format: int64 + type: integer + iot_device_top99p_sum: + description: Shows the 99th percentile of all IoT devices over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_15day_retention_spans_sum: + description: Shows the sum of all Agent Observability 15-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_30day_retention_spans_sum: + description: Shows the sum of all Agent Observability 30-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_60day_retention_spans_sum: + description: Shows the sum of all Agent Observability 60-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_90day_retention_spans_sum: + description: Shows the sum of all Agent Observability 90-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_min_spend_sum: + description: Shows the sum of all Agent Observability minimum spend over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_sum: + description: Shows the sum of all Agent observability sessions over all hours in the current date for the given org. + format: int64 + type: integer + logs_archive_search_gb_scanned_sum: + description: Shows the sum of all Logs Archive Search scanned data over all hours in the current date for the given org. + format: int64 + type: integer + metric_names_sum: + description: Shows the sum of all custom metric names over all hours in the current date for the given org. + format: int64 + type: integer + mobile_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all mobile lite sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_android_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Android over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_flutter_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Flutter over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_ios_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on iOS over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_reactnative_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on React Native over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_roku_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Roku over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_units_sum: + deprecated: true + description: Shows the sum of all mobile RUM units over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + name: + description: The organization name. + type: string + ndm_netflow_events_sum: + description: Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current date for the given org. + format: int64 + type: integer + netflow_indexed_events_count_sum: + deprecated: true + description: Shows the sum of all Network flows indexed over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + network_device_wireless_top99p: + description: Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current date for the given org. + format: int64 + type: integer + network_path_sum: + description: Shows the sum of all Network Path scheduled tests over all hours in the current date for the given org. + format: int64 + type: integer + npm_host_top99p: + description: Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current date for the given org. + format: int64 + type: integer + observability_pipelines_bytes_processed_sum: + description: Sum of all observability pipelines bytes processed over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_sum: + description: Shows the sum of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_top99p: + description: Shows the 99th percentile of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + on_call_seat_hwm: + description: Shows the high-water mark of On-Call seats over all hours in the current date for the given org. + format: int64 + type: integer + online_archive_events_count_sum: + description: Sum of all online archived events over all hours in the current date for the given org. + format: int64 + type: integer + opentelemetry_apm_host_top99p: + description: Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + opentelemetry_host_top99p: + description: Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + product_analytics_sum: + description: Shows the sum of all product analytics sessions over all hours in the current date for the given org. + format: int64 + type: integer + profiling_aas_count_top99p: + description: Shows the 99th percentile of all profiled Azure app services over all hours in the current date for all organizations. + format: int64 + type: integer + profiling_host_top99p: + description: Shows the 99th percentile of all profiled hosts over all hours within the current date for the given org. + format: int64 + type: integer + proxmox_host_sum: + description: Sum of all Proxmox hosts over all hours in the current date for the given organization. + format: int64 + type: integer + proxmox_host_top99p: + description: 99th percentile of all Proxmox hosts over all hours in the current date for the given organization. + format: int64 + type: integer + public_id: + description: The organization public id. + type: string + published_app_hwm: + description: Shows the high-water mark of all published applications over all hours in the current date for the given org. + format: int64 + type: integer + region: + description: The region of the organization. + type: string + rum_browser_and_mobile_session_count: + description: Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_browser_legacy_session_count_sum: + description: Shows the sum of all browser RUM legacy sessions over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_lite_session_count_sum: + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_replay_session_count_sum: + description: Shows the sum of all browser RUM Session Replay counts over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_indexed_sessions_sum: + description: Shows the sum of all RUM indexed sessions over all hours in the current date for the given org. + format: int64 + type: integer + rum_ingested_sessions_sum: + description: Shows the sum of all RUM ingested sessions over all hours in the current date for the given org. + format: int64 + type: integer + rum_lite_session_count_sum: + description: Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_android_sum: + description: Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_flutter_sum: + description: Shows the sum of all mobile RUM legacy sessions on Flutter over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_ios_sum: + description: Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_roku_sum: + description: Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_android_sum: + description: Shows the sum of all mobile RUM lite sessions on Android over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_flutter_sum: + description: Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_ios_sum: + description: Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_lite_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_roku_sum: + description: Shows the sum of all mobile RUM lite sessions on Roku over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_unity_sum: + description: Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_android_sum: + description: Shows the sum of all mobile RUM replay sessions on Android over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_ios_sum: + description: Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current date for the given org. + format: int64 + type: integer + rum_replay_session_count_sum: + description: Shows the sum of all RUM Session Replay counts over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_session_count_sum: + deprecated: true + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_session_replay_add_on_sum: + description: Shows the sum of all RUM session replay add-on sessions over all hours in the current date for the given org. + format: int64 + type: integer + rum_total_session_count_sum: + description: Shows the sum of RUM sessions (browser and mobile) over all hours in the current date for the given org. + format: int64 + type: integer + rum_units_sum: + deprecated: true + description: Shows the sum of all browser and mobile RUM units over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + sca_fargate_count_avg: + description: Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sca_fargate_count_hwm: + description: Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sds_apm_scanned_bytes_sum: + description: Sum of all APM bytes scanned with sensitive data scanner over all hours in the current date for the given org. + format: int64 + type: integer + sds_events_scanned_bytes_sum: + description: Sum of all event stream events bytes scanned with sensitive data scanner over all hours in the current date for the given org. + format: int64 + type: integer + sds_logs_scanned_bytes_sum: + description: Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for the given org. + format: int64 + type: integer + sds_rum_scanned_bytes_sum: + description: Sum of all RUM bytes scanned with sensitive data scanner over all hours in the current date for the given org. + format: int64 + type: integer + sds_total_scanned_bytes_sum: + description: Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for the given org. + format: int64 + type: integer + serverless_apps_apm_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_fargate_ecs_tasks_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_count_avg: + description: Shows the average number of Serverless Apps for Azure for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Function App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Web App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_dsm_fargate_tasks_avg: + description: Shows the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM for the given date and given org. + format: int64 + type: integer + serverless_apps_ecs_avg: + description: Shows the average number of Serverless Apps for Elastic Container Service for the given date and given org. + format: int64 + type: integer + serverless_apps_eks_avg: + description: Shows the average number of Serverless Apps for Elastic Kubernetes Service for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_avg: + description: Shows the average number of Serverless Apps excluding Fargate for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Function App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Web App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances for the given date and given org. + format: int64 + type: integer + serverless_apps_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_google_count_avg: + description: Shows the average number of Serverless Apps for Google Cloud for the given date and given org. + format: int64 + type: integer + serverless_apps_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_total_count_avg: + description: Shows the average number of Serverless Apps for Azure and Google Cloud for the given date and given org. + format: int64 + type: integer + siem_12mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_6mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_analyzed_logs_add_on_count_sum: + description: Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current date for the given org. + format: int64 + type: integer + snmp_device_count_sum: + description: Shows the sum of all Network Device Monitoring devices over all hours in the current date for the given org. + format: int64 + type: integer + snmp_device_count_top99p: + description: Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_browser_check_calls_count_sum: + description: Shows the sum of all Synthetic browser tests over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_check_calls_count_sum: + description: Shows the sum of all Synthetic API tests over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_mobile_test_runs_sum: + description: Shows the sum of all Synthetic mobile application tests over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_parallel_testing_max_slots_hwm: + description: Shows the high-water mark of used synthetics parallel testing slots over all hours in the current date for the given org. + format: int64 + type: integer + trace_search_indexed_events_count_sum: + description: Shows the sum of all Indexed Spans indexed over all hours in the current date for the given org. + format: int64 + type: integer + twol_ingested_events_bytes_sum: + description: Shows the sum of all ingested APM span bytes over all hours in the current date for the given org. + format: int64 + type: integer + universal_service_monitoring_host_top99p: + description: Shows the 99th percentile of all Universal Service Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + vsphere_host_top99p: + description: Shows the 99th percentile of all vSphere hosts over all hours in the current date for the given org. + format: int64 + type: integer + vuln_management_host_count_top99p: + description: Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current date for the given org. + format: int64 + type: integer + workflow_executions_usage_sum: + description: Sum of all workflows executed over all hours in the current date for the given org. + format: int64 + type: integer + type: object + x-keep-typed-in-additional-properties: true + UsageSummaryResponse: + description: |- + Response summarizing all usage aggregated across the months in the request for + all organizations, and broken down by month and by organization. + + For SDK users only: all fields at this response level are accessible through the + `additionalProperties` map. Existing typed-field getters are unchanged. New billing + dimensions will not have typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key. + properties: + agent_host_top99p_sum: + description: Shows the 99th percentile of all agent hosts over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_agent_builder_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Agent Builder over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_agg_sum: + description: Shows the sum of all AI credits over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_bits_assistant_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_bits_dev_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Bits AI Dev over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_bits_sre_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Bits AI SRE over all hours in the current month for all organizations. + format: int64 + type: integer + apm_azure_app_service_host_top99p_sum: + description: Shows the 99th percentile of all Azure app services using APM over all hours in the current month all organizations. + format: int64 + type: integer + apm_devsecops_host_top99p_sum: + description: Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current month for all organizations. + format: int64 + type: integer + apm_enterprise_standalone_hosts_top99p_sum: + description: Shows the sum of the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current month for all organizations. + format: int64 + type: integer + apm_fargate_count_avg_sum: + description: Shows the average of all APM ECS Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + apm_host_top99p_sum: + description: Shows the 99th percentile of all distinct APM hosts over all hours in the current month for all organizations. + format: int64 + type: integer + apm_pro_standalone_hosts_top99p_sum: + description: Shows the sum of the 99th percentile of all distinct standalone Pro hosts over all hours in the current month for all organizations. + format: int64 + type: integer + appsec_fargate_count_avg_sum: + description: Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + asm_serverless_agg_sum: + description: Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current months for all organizations. + format: int64 + type: integer + audit_logs_lines_indexed_agg_sum: + deprecated: true + description: Shows the sum of all audit logs lines indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + audit_trail_enabled_hwm_sum: + description: Shows the total number of organizations that had Audit Trail enabled over a specific number of months. + format: int64 + type: integer + audit_trail_event_forwarding_events_agg_sum: + description: Shows the sum of all Audit Trail event forwarding events over all hours in the current month for all organizations. + format: int64 + type: integer + avg_profiled_fargate_tasks_sum: + description: The average total count for Fargate Container Profiler over all hours in the current month for all organizations. + format: int64 + type: integer + aws_host_top99p_sum: + description: Shows the 99th percentile of all AWS hosts over all hours in the current month for all organizations. + format: int64 + type: integer + aws_lambda_func_count: + description: Shows the average of the number of functions that executed 1 or more times each hour in the current month for all organizations. + format: int64 + type: integer + aws_lambda_invocations_sum: + description: Shows the sum of all AWS Lambda invocations over all hours in the current month for all organizations. + format: int64 + type: integer + azure_app_service_top99p_sum: + description: Shows the 99th percentile of all Azure app services over all hours in the current month for all organizations. + format: int64 + type: integer + azure_host_top99p_sum: + description: Shows the 99th percentile of all Azure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + billable_ingested_bytes_agg_sum: + description: Shows the sum of all log bytes ingested over all hours in the current month for all organizations. + format: int64 + type: integer + bits_ai_investigations_agg_sum: + description: Shows the sum of all Bits AI Investigations over all hours in the current month for all organizations. + format: int64 + type: integer + browser_rum_lite_session_count_agg_sum: + deprecated: true + description: Shows the sum of all browser lite sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_replay_session_count_agg_sum: + description: Shows the sum of all browser replay sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_units_agg_sum: + deprecated: true + description: Shows the sum of all browser RUM units over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ccm_anthropic_spend_last_sum: + description: Shows the sum of the last value of Anthropic cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_aws_spend_last_sum: + description: Shows the sum of the last value of AWS cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_azure_spend_last_sum: + description: Shows the sum of the last value of Azure cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_confluent_spend_last_sum: + description: Shows the sum of the last value of Confluent cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_databricks_spend_last_sum: + description: Shows the sum of the last value of Databricks cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_elastic_spend_last_sum: + description: Shows the sum of the last value of Elastic cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_fastly_spend_last_sum: + description: Shows the sum of the last value of Fastly cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_gcp_spend_last_sum: + description: Shows the sum of the last value of GCP cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_github_spend_last_sum: + description: Shows the sum of the last value of GitHub cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_mongodb_spend_last_sum: + description: Shows the sum of the last value of MongoDB cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_oci_spend_last_sum: + description: Shows the sum of the last value of OCI cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_openai_spend_last_sum: + description: Shows the sum of the last value of OpenAI cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_snowflake_spend_last_sum: + description: Shows the sum of the last value of Snowflake cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_spend_monitored_ent_last_sum: + description: Shows the sum of the last value of the amount of cloud spend monitored for Enterprise in the current month for all organizations. + format: int64 + type: integer + ccm_spend_monitored_pro_last_sum: + description: Shows the sum of the last value of the amount of cloud spend monitored for Pro in the current month for all organizations. + format: int64 + type: integer + ccm_twilio_spend_last_sum: + description: Shows the sum of the last value of Twilio cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ci_pipeline_indexed_spans_agg_sum: + description: Shows the sum of all CI pipeline indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_test_indexed_spans_agg_sum: + description: Shows the sum of all CI test indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_itr_committers_hwm_sum: + description: Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_pipeline_committers_hwm_sum: + description: Shows the high-water mark of all CI visibility pipeline committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_test_committers_hwm_sum: + description: Shows the high-water mark of all CI visibility test committers over all hours in the current month for all organizations. + format: int64 + type: integer + cloud_cost_management_aws_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for AWS. + format: int64 + type: integer + cloud_cost_management_azure_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for Azure. + format: int64 + type: integer + cloud_cost_management_gcp_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for GCP. + format: int64 + type: integer + cloud_cost_management_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for all cloud providers. + format: int64 + type: integer + cloud_cost_management_oci_host_count_avg_sum: + description: Sum of the average host counts for Cloud Cost Management on OCI. + format: int64 + type: integer + cloud_siem_events_agg_sum: + description: Shows the sum of all Cloud Security Information and Event Management events over all hours in the current month for all organizations. + format: int64 + type: integer + cloud_siem_indexed_logs_agg_sum: + description: Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current month for all organizations. + format: int64 + type: integer + code_analysis_sa_committers_hwm_sum: + description: Shows the high-water mark of all Static Analysis committers over all hours in the current month for all organizations. + format: int64 + type: integer + code_analysis_sca_committers_hwm_sum: + description: Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current month for all organizations. + format: int64 + type: integer + code_security_host_top99p_sum: + description: Shows the 99th percentile of all Code Security hosts over all hours in the current month for all organizations. + format: int64 + type: integer + container_avg_sum: + description: Shows the average of all distinct containers over all hours in the current month for all organizations. + format: int64 + type: integer + container_excl_agent_avg_sum: + description: Shows the average of the containers without the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + container_hwm_sum: + description: Shows the sum of the high-water marks of all distinct containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_container_enterprise_compliance_count_agg_sum: + description: Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_container_enterprise_cws_count_agg_sum: + description: Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_container_enterprise_total_count_agg_sum: + description: Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_aas_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_aws_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_azure_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_compliance_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_cws_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_gcp_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_oci_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_total_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_agg_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_pro_oci_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_aas_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_aws_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_azure_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_container_avg_sum: + description: Shows the average number of Cloud Security Management Pro containers over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_container_hwm_sum: + description: Shows the sum of the high-water marks of Cloud Security Management Pro containers over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_gcp_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_agg_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + custom_historical_ts_sum: + description: Shows the average number of distinct historical custom metrics over all hours in the current month for all organizations. + format: int64 + type: integer + custom_live_ts_sum: + description: Shows the average number of distinct live custom metrics over all hours in the current month for all organizations. + format: int64 + type: integer + custom_ts_sum: + description: Shows the average number of distinct custom metrics over all hours in the current month for all organizations. + format: int64 + type: integer + cws_container_avg_sum: + description: Shows the average of all distinct Cloud Workload Security containers over all hours in the current month for all organizations. + format: int64 + type: integer + cws_fargate_task_avg_sum: + description: Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + cws_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current month for all organizations. + format: int64 + type: integer + data_jobs_monitoring_host_hr_agg_sum: + description: Shows the sum of Data Jobs Monitoring hosts over all hours in the current months for all organizations + format: int64 + type: integer + data_stream_monitoring_host_count_agg_sum: + description: Shows the sum of all Data Streams Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + data_stream_monitoring_host_count_top99p_sum: + description: Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + dbm_host_top99p_sum: + description: Shows the 99th percentile of all Database Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + dbm_queries_avg_sum: + description: Shows the average of all distinct Database Monitoring Normalized Queries over all hours in the current month for all organizations. + format: int64 + type: integer + do_jobs_monitoring_orchestrators_job_hours_agg_sum: + description: Shows the sum of all orchestrator job hours over all hours in the current month for all organizations. + format: int64 + type: integer + end_date: + description: Shows the last date of usage in the current month for all organizations. + format: date-time + type: string + eph_infra_host_agent_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_alibaba_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_aws_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_azure_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_basic_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_agent_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_vsphere_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_ent_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_gcp_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_heroku_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_only_aas_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_only_vsphere_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_opentelemetry_agg_sum: + description: Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_opentelemetry_apm_agg_sum: + description: Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_pro_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_proplus_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_proxmox_agg_sum: + description: Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current month for all organizations. + format: int64 + type: integer + error_tracking_apm_error_events_agg_sum: + description: Shows the sum of all Error Tracking APM error events over all hours in the current month for all organizations. + format: int64 + type: integer + error_tracking_error_events_agg_sum: + description: Shows the sum of all Error Tracking error events over all hours in the current month for all organizations. + format: int64 + type: integer + error_tracking_events_agg_sum: + description: Shows the sum of all Error Tracking events over all hours in the current months for all organizations. + format: int64 + type: integer + error_tracking_rum_error_events_agg_sum: + description: Shows the sum of all Error Tracking RUM error events over all hours in the current month for all organizations. + format: int64 + type: integer + event_management_correlation_agg_sum: + description: Shows the sum of all Event Management correlations over all hours in the current month for all organizations. + format: int64 + type: integer + event_management_correlation_correlated_events_agg_sum: + description: Shows the sum of all Event Management correlated events over all hours in the current month for all organizations. + format: int64 + type: integer + event_management_correlation_correlated_related_events_agg_sum: + description: Shows the sum of all Event Management correlated related events over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_avg_sum: + description: The average number of Profiling Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_eks_avg_sum: + description: The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_tasks_count_avg_sum: + description: Shows the average of all Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_tasks_count_hwm_sum: + description: Shows the sum of the high-water marks of all Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + feature_flags_config_requests_agg_sum: + description: Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current month for all organizations. + format: int64 + type: integer + flex_logs_compute_large_avg_sum: + description: Shows the average number of Flex Logs Compute Large Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_medium_avg_sum: + description: Shows the average number of Flex Logs Compute Medium Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_small_avg_sum: + description: Shows the average number of Flex Logs Compute Small Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_xlarge_avg_sum: + description: Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_xsmall_avg_sum: + description: Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_starter_avg_sum: + description: Shows the average number of Flex Logs Starter Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_starter_storage_index_avg_sum: + description: Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_starter_storage_retention_adjustment_avg_sum: + description: Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_stored_logs_avg_sum: + description: Shows the average of all Flex Stored Logs over all hours in the current months for all organizations. + format: int64 + type: integer + forwarding_events_bytes_agg_sum: + description: Shows the sum of all logs forwarding bytes over all hours in the current month for all organizations (data available as of April 1, 2023) + format: int64 + type: integer + gcp_host_top99p_sum: + description: Shows the 99th percentile of all GCP hosts over all hours in the current month for all organizations. + format: int64 + type: integer + heroku_host_top99p_sum: + description: Shows the 99th percentile of all Heroku dynos over all hours in the current month for all organizations. + format: int64 + type: integer + incident_management_monthly_active_users_hwm_sum: + description: Shows sum of the high-water marks of incident management monthly active users in the current month for all organizations. + format: int64 + type: integer + incident_management_seats_hwm_sum: + description: Shows the sum of the high-water marks of Incident Management seats over all hours in the current month for all organizations. + format: int64 + type: integer + indexed_events_count_agg_sum: + deprecated: true + description: Shows the sum of all log events indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + indexed_points_agg_sum: + description: Shows the sum of all indexed custom metrics points over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_agg_sum: + description: Shows the sum of all Infrastructure vCPU cores over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_avg_sum: + description: Shows the average of all Infrastructure vCPU cores over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_agg_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_avg_sum: + description: Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_agg_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_avg_sum: + description: Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_edge_monitoring_devices_top99p_sum: + description: Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_agent_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_vsphere_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_basic_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + infra_storage_mgmt_objects_count_avg_sum: + description: Shows the average number of storage management objects over all hours in the current month for all organizations. + format: int64 + type: integer + ingest_points_agg_sum: + description: Shows the sum of all ingested custom metrics points over all hours in the current month for all organizations. + format: int64 + type: integer + ingested_events_bytes_agg_sum: + description: Shows the sum of all log bytes ingested over all hours in the current month for all organizations. + format: int64 + type: integer + iot_apm_host_agg_sum: + description: Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current month for all organizations. + format: int64 + type: integer + iot_apm_host_top99p_sum: + description: Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current month for all organizations. + format: int64 + type: integer + iot_device_agg_sum: + description: Shows the sum of all IoT devices over all hours in the current month for all organizations. + format: int64 + type: integer + iot_device_top99p_sum: + description: Shows the 99th percentile of all IoT devices over all hours in the current month of all organizations. + format: int64 + type: integer + last_updated: + description: Shows the most recent hour in the current month for all organizations for which all usages were calculated. + format: date-time + type: string + live_indexed_events_agg_sum: + deprecated: true + description: Shows the sum of all live logs indexed over all hours in the current month for all organization (To be deprecated on October 1st, 2024). + format: int64 + type: integer + live_ingested_bytes_agg_sum: + description: Shows the sum of all live logs bytes ingested over all hours in the current month for all organizations (data available as of December 1, 2020). + format: int64 + type: integer + llm_observability_15day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 15-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_30day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 30-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_60day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 60-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_90day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 90-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_agg_sum: + description: Sum of all Agent observability sessions for all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_min_spend_agg_sum: + description: Minimum spend for Agent observability sessions for all hours in the current month for all organizations. + format: int64 + type: integer + logs_archive_search_gb_scanned_agg_sum: + description: Shows the sum of all Logs Archive Search scanned data over all hours in the current month for all organizations. + format: int64 + type: integer + logs_by_retention: + $ref: "#/components/schemas/LogsByRetention" + metric_names_agg_sum: + description: Shows the sum of all custom metric names over all hours in the current month for all organizations. + format: int64 + type: integer + mobile_rum_lite_session_count_agg_sum: + deprecated: true + description: Shows the sum of all mobile lite sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_android_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Android over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_flutter_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Flutter over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_ios_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on iOS over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_reactnative_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on React Native over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_roku_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Roku over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_units_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM units over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ndm_netflow_events_agg_sum: + description: Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current month for all organizations. + format: int64 + type: integer + netflow_indexed_events_count_agg_sum: + deprecated: true + description: Shows the sum of all Network flows indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + network_device_wireless_top99p_sum: + description: Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current month for all organizations. + format: int64 + type: integer + network_path_agg_sum: + description: Shows the sum of all Network Path scheduled tests over all hours in the current month for all organizations. + format: int64 + type: integer + npm_host_top99p_sum: + description: Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current month for all organizations. + format: int64 + type: integer + observability_pipelines_bytes_processed_agg_sum: + description: Sum of all observability pipelines bytes processed over all hours in the current month for all organizations. + format: int64 + type: integer + oci_host_agg_sum: + description: Shows the sum of Oracle Cloud Infrastructure hosts over all hours in the current months for all organizations + format: int64 + type: integer + oci_host_top99p_sum: + description: Shows the 99th percentile of Oracle Cloud Infrastructure hosts over all hours in the current months for all organizations + format: int64 + type: integer + on_call_seat_hwm_sum: + description: Shows the sum of the high-water marks of On-Call seats over all hours in the current month for all organizations. + format: int64 + type: integer + online_archive_events_count_agg_sum: + description: Sum of all online archived events over all hours in the current month for all organizations. + format: int64 + type: integer + opentelemetry_apm_host_top99p_sum: + description: Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + opentelemetry_host_top99p_sum: + description: Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + product_analytics_agg_sum: + description: Sum of all product analytics sessions for all hours in the current month for all organizations. + format: int64 + type: integer + profiling_aas_count_top99p_sum: + description: Shows the 99th percentile of all profiled Azure app services over all hours in the current month for all organizations. + format: int64 + type: integer + profiling_container_agent_count_avg: + description: Shows the average number of profiled containers over all hours in the current month for all organizations. + format: int64 + type: integer + profiling_host_count_top99p_sum: + description: Shows the 99th percentile of all profiled hosts over all hours in the current month for all organizations. + format: int64 + type: integer + proxmox_host_agg_sum: + description: Sum of all Proxmox hosts over all hours in the current month for all organizations. + format: int64 + type: integer + proxmox_host_top99p_sum: + description: Sum of the 99th percentile of all Proxmox hosts over all hours in the current month for all organizations. + format: int64 + type: integer + published_app_hwm_sum: + description: Shows the high-water mark of all published applications over all hours in the current month for all organizations. + format: int64 + type: integer + rehydrated_indexed_events_agg_sum: + deprecated: true + description: Shows the sum of all rehydrated logs indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rehydrated_ingested_bytes_agg_sum: + description: Shows the sum of all rehydrated logs bytes ingested over all hours in the current month for all organizations (data available as of December 1, 2020). + format: int64 + type: integer + rum_browser_and_mobile_session_count: + description: Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_browser_legacy_session_count_agg_sum: + description: Shows the sum of all browser RUM legacy sessions over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_lite_session_count_agg_sum: + description: Shows the sum of all browser RUM lite sessions over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_replay_session_count_agg_sum: + description: Shows the sum of all browser RUM Session Replay counts over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_indexed_sessions_agg_sum: + description: Sum of all RUM indexed sessions for all hours in the current month for all organizations. + format: int64 + type: integer + rum_ingested_sessions_agg_sum: + description: Sum of all RUM ingested sessions for all hours in the current month for all organizations. + format: int64 + type: integer + rum_lite_session_count_agg_sum: + description: Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_android_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_flutter_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on Flutter over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_ios_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_reactnative_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_roku_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_android_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Android over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_flutter_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_ios_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_kotlinmultiplatform_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_lite_session_count_reactnative_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_roku_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Roku over all hours within the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_unity_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_android_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on Android over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_ios_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_kotlinmultiplatform_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_reactnative_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current month for all organizations. + format: int64 + type: integer + rum_replay_session_count_agg_sum: + description: Shows the sum of all RUM Session Replay counts over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_session_count_agg_sum: + deprecated: true + description: Shows the sum of all browser RUM lite sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_session_replay_add_on_agg_sum: + description: Sum of all RUM session replay add-on sessions for all hours in the current month for all organizations. + format: int64 + type: integer + rum_total_session_count_agg_sum: + description: Shows the sum of RUM sessions (browser and mobile) over all hours in the current month for all organizations. + format: int64 + type: integer + rum_units_agg_sum: + deprecated: true + description: Shows the sum of all browser and mobile RUM units over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + sca_fargate_count_avg_sum: + description: Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current months for all organizations. + format: int64 + type: integer + sca_fargate_count_hwm_sum: + description: Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current months for all organizations. + format: int64 + type: integer + sds_apm_scanned_bytes_sum: + description: Sum of all APM bytes scanned with sensitive data scanner in the current month for all organizations. + format: int64 + type: integer + sds_events_scanned_bytes_sum: + description: Sum of all event stream events bytes scanned with sensitive data scanner in the current month for all organizations. + format: int64 + type: integer + sds_logs_scanned_bytes_sum: + description: Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + sds_rum_scanned_bytes_sum: + description: Sum of all RUM bytes scanned with sensitive data scanner in the current month for all organizations. + format: int64 + type: integer + sds_total_scanned_bytes_sum: + description: Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_appservice_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_azurefunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_containerapp_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_fargate_ecs_tasks_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudfunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudrun_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_container_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_count_avg_sum: + description: Sum of the average number of Serverless Apps for Azure in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_function_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Azure Function App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_web_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Azure Web App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_dsm_fargate_tasks_avg_sum: + description: Sum of the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM in the current month for all organizations. + format: int64 + type: integer + serverless_apps_ecs_avg_sum: + description: Sum of the average number of Serverless Apps for Elastic Container Service in the current month for all organizations. + format: int64 + type: integer + serverless_apps_eks_avg_sum: + description: Sum of the average number of Serverless Apps for Elastic Kubernetes Service in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_container_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_function_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Azure Function App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_web_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Azure Web App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_functions_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_run_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_functions_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_run_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_google_count_avg_sum: + description: Sum of the average number of Serverless Apps for Google Cloud in the current month for all organizations. + format: int64 + type: integer + serverless_apps_infra_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_total_count_avg_sum: + description: Sum of the average number of Serverless Apps for Azure and Google Cloud in the current month for all organizations. + format: int64 + type: integer + siem_12mo_retention_agg_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current month for all organizations. + format: int64 + type: integer + siem_6mo_retention_agg_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current month for all organizations. + format: int64 + type: integer + siem_analyzed_logs_add_on_count_agg_sum: + description: Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current month for all organizations. + format: int64 + type: integer + snmp_device_count_agg_sum: + description: Shows the sum of all Network Device Monitoring devices over all hours in the current month for all organizations. + format: int64 + type: integer + snmp_device_count_top99p_sum: + description: Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current month for all organizations. + format: int64 + type: integer + start_date: + description: Shows the first date of usage in the current month for all organizations. + format: date-time + type: string + synthetics_browser_check_calls_count_agg_sum: + description: Shows the sum of all Synthetic browser tests over all hours in the current month for all organizations. + format: int64 + type: integer + synthetics_check_calls_count_agg_sum: + description: Shows the sum of all Synthetic API tests over all hours in the current month for all organizations. + format: int64 + type: integer + synthetics_mobile_test_runs_agg_sum: + description: Shows the sum of Synthetic mobile application tests over all hours in the current month for all organizations. + format: int64 + type: integer + synthetics_parallel_testing_max_slots_hwm_sum: + description: Shows the sum of the high-water marks of used synthetics parallel testing slots over all hours in the current month for all organizations. + format: int64 + type: integer + trace_search_indexed_events_count_agg_sum: + description: Shows the sum of all Indexed Spans indexed over all hours in the current month for all organizations. + format: int64 + type: integer + twol_ingested_events_bytes_agg_sum: + description: Shows the sum of all ingested APM span bytes over all hours in the current month for all organizations. + format: int64 + type: integer + universal_service_monitoring_host_top99p_sum: + description: Shows the 99th percentile of all Universal Service Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + usage: + description: An array of objects regarding hourly usage. + items: + $ref: "#/components/schemas/UsageSummaryDate" + type: array + vsphere_host_top99p_sum: + description: Shows the 99th percentile of all vSphere hosts over all hours in the current month for all organizations. + format: int64 + type: integer + vuln_management_host_count_top99p_sum: + description: Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current month for all organizations. + format: int64 + type: integer + workflow_executions_usage_agg_sum: + description: Sum of all workflows executed over all hours in the current month for all organizations. + format: int64 + type: integer + type: object + x-keep-typed-in-additional-properties: true + UsageSyntheticsAPIHour: + description: Number of Synthetics API tests run for each hour for a given organization. + properties: + check_calls_count: + description: Contains the number of Synthetics API tests run. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageSyntheticsAPIResponse: + description: Response containing the number of Synthetics API tests run for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Synthetics API tests. + items: + $ref: "#/components/schemas/UsageSyntheticsAPIHour" + type: array + type: object + UsageSyntheticsBrowserHour: + description: Number of Synthetics Browser tests run for each hour for a given organization. + properties: + browser_check_calls_count: + description: Contains the number of Synthetics Browser tests run. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageSyntheticsBrowserResponse: + description: Response containing the number of Synthetics Browser tests run for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Synthetics Browser tests. + items: + $ref: "#/components/schemas/UsageSyntheticsBrowserHour" + type: array + type: object + UsageSyntheticsHour: + description: The number of synthetics tests run for each hour for a given organization. + properties: + check_calls_count: + description: Contains the number of Synthetics API tests run. + format: int64 + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageSyntheticsResponse: + description: Response containing the number of Synthetics API tests run for each hour for a given organization. + properties: + usage: + description: Array with the number of hourly Synthetics test run for a given organization. + items: + $ref: "#/components/schemas/UsageSyntheticsHour" + type: array + type: object + UsageTimeseriesHour: + description: The hourly usage of timeseries. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + num_custom_input_timeseries: + description: Contains the number of custom metrics that are inputs for aggregations (metric configured is custom). + format: int64 + type: integer + num_custom_output_timeseries: + description: Contains the number of custom metrics that are outputs for aggregations (metric configured is custom). + format: int64 + type: integer + num_custom_timeseries: + description: Contains sum of non-aggregation custom metrics and custom metrics that are outputs for aggregations. + format: int64 + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageTimeseriesResponse: + description: Response containing hourly usage of timeseries. + properties: + usage: + description: An array of objects regarding hourly usage of timeseries. + items: + $ref: "#/components/schemas/UsageTimeseriesHour" + type: array + type: object + UsageTopAvgMetricsHour: + description: Number of hourly recorded custom metrics for a given organization. + properties: + avg_metric_hour: + description: Average number of timeseries per hour in which the metric occurs. + format: int64 + type: integer + max_metric_hour: + description: Maximum number of timeseries per hour in which the metric occurs. + format: int64 + type: integer + metric_category: + $ref: "#/components/schemas/UsageMetricCategory" + metric_name: + description: Contains the custom metric name. + type: string + type: object + UsageTopAvgMetricsMetadata: + description: The object containing document metadata. + properties: + day: + description: The day value from the user request that contains the returned usage data. (If day was used the request) + format: date-time + type: string + month: + description: The month value from the user request that contains the returned usage data. (If month was used the request) + format: date-time + type: string + pagination: + $ref: "#/components/schemas/UsageTopAvgMetricsPagination" + type: object + UsageTopAvgMetricsPagination: + description: The metadata for the current pagination. + properties: + limit: + description: Maximum amount of records to be returned. + format: int64 + type: integer + next_record_id: + description: The cursor to get the next results (if any). To make the next request, use the same parameters and add `next_record_id`. + nullable: true + type: string + total_number_of_records: + description: Total number of records. + format: int64 + nullable: true + type: integer + type: object + UsageTopAvgMetricsResponse: + description: Response containing the number of hourly recorded custom metrics for a given organization. + properties: + metadata: + $ref: "#/components/schemas/UsageTopAvgMetricsMetadata" + usage: + description: Number of hourly recorded custom metrics for a given organization. + items: + $ref: "#/components/schemas/UsageTopAvgMetricsHour" + type: array + type: object + User: + description: Create, edit, and disable users. + properties: + access_role: + $ref: "#/components/schemas/AccessRole" + disabled: + description: The new disabled status of the user. + example: false + type: boolean + email: + description: The new email of the user. + example: test@datadoghq.com + type: string + handle: + description: The user handle, must be a valid email. + example: test@datadoghq.com + type: string + icon: + description: Gravatar icon associated to the user. + example: /path/to/matching/gravatar/icon + readOnly: true + type: string + name: + description: The name of the user. + example: test user + type: string + verified: + description: Whether or not the user logged in Datadog at least once. + example: true + readOnly: true + type: boolean + type: object + UserDisableResponse: + description: Array of user disabled for a given organization. + properties: + message: + description: Information pertaining to a user disabled for a given organization. + type: string + type: object + UserJourneyFormulaCompute: + additionalProperties: false + description: Compute configuration for User Journey formula queries. + properties: + aggregation: + $ref: "#/components/schemas/FormulaAndFunctionEventAggregation" + interval: + description: Time bucket interval in milliseconds for time series queries. + example: 60000 + format: double + type: number + metric: + $ref: "#/components/schemas/UserJourneyFormulaComputeMetric" + target: + $ref: "#/components/schemas/UserJourneySearchTarget" + required: + - aggregation + type: object + UserJourneyFormulaComputeMetric: + description: Metric for User Journey formula compute. `__dd.conversion` and `__dd.conversion_rate` accept `count` and `cardinality` as aggregations. `__dd.time_to_convert` accepts `avg`, `median`, `pc75`, `pc95`, `pc98`, `pc99`, `min`, and `max`. + enum: + - __dd.conversion + - __dd.conversion_rate + - __dd.time_to_convert + example: __dd.conversion_rate + type: string + x-enum-varnames: + - CONVERSION + - CONVERSION_RATE + - TIME_TO_CONVERT + UserJourneyFormulaGroupBy: + description: Group by configuration for User Journey formula queries. + properties: + facet: + description: Facet name to group by. + example: "@usr.email" + type: string + limit: + description: Maximum number of groups to return. + example: 10 + format: int32 + maximum: 10000 + type: integer + should_exclude_missing: + description: Whether to exclude events missing the group-by facet. + type: boolean + sort: + $ref: "#/components/schemas/FormulaAndFunctionEventQueryGroupBySort" + target: + $ref: "#/components/schemas/UserJourneySearchTarget" + required: + - facet + type: object + UserJourneyJoinKeys: + description: Join keys for user journey queries. + properties: + primary: + description: Primary join key. + example: "@session.id" + type: string + secondary: + description: Secondary join keys. + items: + description: A secondary join key. + type: string + type: array + required: + - primary + type: object + UserJourneySearch: + additionalProperties: false + description: User journey search configuration. + properties: + expression: + description: Expression string. + example: "node_0 -> node_1" + type: string + filters: + $ref: "#/components/schemas/UserJourneySearchFilters" + join_keys: + $ref: "#/components/schemas/UserJourneyJoinKeys" + node_objects: + additionalProperties: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + description: Node objects mapping. + type: object + step_aliases: + additionalProperties: + type: string + description: Step aliases mapping. + type: object + required: + - node_objects + - expression + type: object + UserJourneySearchFilters: + description: Filters for user journey search. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + graph_filters: + description: Graph filters. + items: + $ref: "#/components/schemas/UserJourneySearchGraphFilter" + description: A graph filter for user journey search. + type: array + string_filter: + description: String filter. + example: "@session.type:user" + type: string + type: object + UserJourneySearchGraphFilter: + description: Graph filter for user journey search. + properties: + name: + description: Filter name. + example: "count" + type: string + operator: + description: Filter operator. + example: "gt" + type: string + target: + $ref: "#/components/schemas/UserJourneySearchTarget" + value: + description: Filter value. + example: 1 + format: int64 + type: integer + type: object + UserJourneySearchTarget: + description: Target for user journey search. + properties: + end: + description: End value. + example: "node_1" + type: string + start: + description: Start value. + example: "node_0" + type: string + type: + description: Target type. + example: "step" + type: string + value: + description: Target value. + example: "node_0" + type: string + required: + - type + type: object + UserListResponse: + description: Array of Datadog users for a given organization. + properties: + users: + description: Array of users. + items: + $ref: "#/components/schemas/User" + type: array + type: object + UserResponse: + description: A Datadog User. + properties: + user: + $ref: "#/components/schemas/User" + type: object + Version: + description: Version of the updated signal. If server side version is higher, update will be rejected. + example: 0 + format: int64 + type: integer + ViewingPreferences: + description: The viewing preferences for a shared dashboard. + properties: + high_density: + description: Whether the widgets on the shared dashboard should be displayed with high density. + type: boolean + theme: + $ref: "#/components/schemas/ViewingPreferencesTheme" + type: object + ViewingPreferencesTheme: + description: The theme of the shared dashboard view. "system" follows your system's default viewing theme. + enum: + - "system" + - "light" + - "dark" + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK + WebhooksIntegration: + description: Datadog-Webhooks integration. + properties: + custom_headers: + description: |- + If `null`, uses no header. + If given a JSON payload, these will be headers attached to your webhook. + nullable: true + type: string + encode_as: + $ref: "#/components/schemas/WebhooksIntegrationEncoding" + name: + description: |- + The name of the webhook. It corresponds with ``. + Learn more on how to use it in + [monitor notifications](https://docs.datadoghq.com/monitors/notify). + example: WEBHOOK_NAME + type: string + payload: + description: |- + If `null`, uses the default payload. + If given a JSON payload, the webhook returns the payload + specified by the given payload. + [Webhooks variable usage](https://docs.datadoghq.com/integrations/webhooks/#usage). + nullable: true + type: string + url: + description: URL of the webhook. + example: https://example.com/webhook + type: string + required: + - name + - url + type: object + WebhooksIntegrationCustomVariable: + description: Custom variable for Webhook integration. + properties: + is_secret: + description: |- + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + example: true + type: boolean + name: + description: The name of the variable. It corresponds with ``. + example: CUSTOM_VARIABLE_NAME + type: string + value: + description: Value of the custom variable. + example: CUSTOM_VARIABLE_VALUE + type: string + required: + - name + - value + - is_secret + type: object + WebhooksIntegrationCustomVariableResponse: + description: Custom variable for Webhook integration. + properties: + is_secret: + description: |- + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + example: true + type: boolean + name: + description: The name of the variable. It corresponds with ``. It must only contains upper-case characters, integers or underscores. + example: CUSTOM_VARIABLE_NAME + type: string + value: + description: Value of the custom variable. It won't be returned if the variable is secret. + example: CUSTOM_VARIABLE_VALUE + type: string + required: + - name + - is_secret + type: object + WebhooksIntegrationCustomVariableUpdateRequest: + description: |- + Update request of a custom variable object. + + *All properties are optional.* + properties: + is_secret: + description: |- + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + type: boolean + name: + description: The name of the variable. It corresponds with ``. It must only contains upper-case characters, integers or underscores. + example: CUSTOM_VARIABLE_NAME + type: string + value: + description: Value of the custom variable. + example: CUSTOM_VARIABLE_VALUE + type: string + type: object + WebhooksIntegrationEncoding: + default: json + description: Encoding type. Can be given either `json` or `form`. + enum: + - json + - form + type: string + x-enum-varnames: + - JSON + - FORM + WebhooksIntegrationUpdateRequest: + description: |- + Update request of a Webhooks integration object. + + *All properties are optional.* + properties: + custom_headers: + description: |- + If `null`, uses no header. + If given a JSON payload, these will be headers attached to your webhook. + type: string + encode_as: + $ref: "#/components/schemas/WebhooksIntegrationEncoding" + name: + description: |- + The name of the webhook. It corresponds with ``. + Learn more on how to use it in + [monitor notifications](https://docs.datadoghq.com/monitors/notify). + example: WEBHOOK_NAME + type: string + payload: + description: |- + If `null`, uses the default payload. + If given a JSON payload, the webhook returns the payload + specified by the given payload. + [Webhooks variable usage](https://docs.datadoghq.com/integrations/webhooks/#usage). + nullable: true + type: string + url: + description: URL of the webhook. + example: https://example.com/webhook + type: string + type: object + Widget: + description: |- + Information about widget. + + **Note**: The `layout` property is required for widgets in dashboards with `free` `layout_type`. + For the **new dashboard layout**, the `layout` property depends on the `reflow_type` of the dashboard. + - If `reflow_type` is `fixed`, `layout` is required. + - If `reflow_type` is `auto`, `layout` should not be set. + properties: + definition: + $ref: "#/components/schemas/WidgetDefinition" + id: + description: ID of the widget. + format: int64 + type: integer + layout: + $ref: "#/components/schemas/WidgetLayout" + required: + - definition + type: object + WidgetAggregator: + description: Aggregator used for the request. + enum: + - avg + - last + - max + - min + - sum + - percentile + type: string + x-enum-varnames: + - AVERAGE + - LAST + - MAXIMUM + - MINIMUM + - SUM + - PERCENTILE + WidgetAxis: + description: Axis controls for the widget. + properties: + include_zero: + description: Set to `true` to include zero. + type: boolean + label: + description: The label of the axis to display on the graph. Only usable on Scatterplot Widgets. + type: string + max: + default: auto + description: Specifies maximum numeric value to show on the axis. Defaults to `auto`. + type: string + min: + default: auto + description: Specifies minimum numeric value to show on the axis. Defaults to `auto`. + type: string + scale: + default: linear + description: Specifies the scale type. Possible values are `linear`, `log`, `sqrt`, and `pow##` (for example `pow2` or `pow0.5`). + type: string + type: object + WidgetBackgroundColor: + description: "Background color of the widget. Supported values are `white`, `blue`, `purple`, `pink`, `orange`, `yellow`, `green`, `gray`, `vivid_blue`, `vivid_purple`, `vivid_pink`, `vivid_orange`, `vivid_yellow`, `vivid_green`, and `transparent`." + type: string + WidgetChangeType: + description: Show the absolute or the relative change. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + WidgetColorPreference: + description: Which color to use on the widget. + enum: + - background + - text + type: string + x-enum-varnames: + - BACKGROUND + - TEXT + WidgetComparator: + description: Comparator to apply. + enum: + - "=" + - ">" + - ">=" + - "<" + - "<=" + example: ">" + type: string + x-enum-varnames: + - EQUAL_TO + - GREATER_THAN + - GREATER_THAN_OR_EQUAL_TO + - LESS_THAN + - LESS_THAN_OR_EQUAL_TO + WidgetCompareTo: + description: Timeframe used for the change comparison. + enum: + - hour_before + - day_before + - week_before + - month_before + type: string + x-enum-varnames: + - HOUR_BEFORE + - DAY_BEFORE + - WEEK_BEFORE + - MONTH_BEFORE + WidgetConditionalFormat: + description: Define a conditional format for the widget. + properties: + comparator: + $ref: "#/components/schemas/WidgetComparator" + custom_bg_color: + description: Color palette to apply to the background, same values available as palette. + type: string + custom_fg_color: + description: Color palette to apply to the foreground, same values available as palette. + type: string + hide_value: + description: True hides values. + type: boolean + image_url: + description: Displays an image as the background. + type: string + metric: + description: Metric from the request to correlate this conditional format with. + type: string + palette: + $ref: "#/components/schemas/WidgetPalette" + timeframe: + description: Defines the displayed timeframe. + type: string + value: + description: Value for the comparator. + example: 0.0 + format: double + type: number + required: + - comparator + - value + - palette + type: object + WidgetCustomLink: + description: Custom links help you connect a data value to a URL, like a Datadog page or your AWS console. + properties: + is_hidden: + description: The flag for toggling context menu link visibility. + type: boolean + label: + description: The label for the custom link URL. Keep the label short and descriptive. Use metrics and tags as variables. + example: "Search logs for {{host}}" + type: string + link: + description: The URL of the custom link. URL must include `http` or `https`. A relative URL must start with `/`. + example: "https://app.datadoghq.com/logs?query={{host}}" + type: string + override_label: + description: The label ID that refers to a context menu link. Can be `logs`, `hosts`, `traces`, `profiles`, `processes`, `containers`, or `rum`. + example: "logs" + type: string + type: object + WidgetDefinition: + description: >- + [Definition of the widget](https://docs.datadoghq.com/dashboards/widgets/). + oneOf: + - $ref: "#/components/schemas/AlertGraphWidgetDefinition" + - $ref: "#/components/schemas/AlertValueWidgetDefinition" + - $ref: "#/components/schemas/BarChartWidgetDefinition" + - $ref: "#/components/schemas/ChangeWidgetDefinition" + - $ref: "#/components/schemas/CheckStatusWidgetDefinition" + - $ref: "#/components/schemas/CohortWidgetDefinition" + - $ref: "#/components/schemas/DistributionWidgetDefinition" + - $ref: "#/components/schemas/EventStreamWidgetDefinition" + - $ref: "#/components/schemas/EventTimelineWidgetDefinition" + - $ref: "#/components/schemas/FreeTextWidgetDefinition" + - $ref: "#/components/schemas/FunnelWidgetDefinition" + - $ref: "#/components/schemas/ProductAnalyticsFunnelWidgetDefinition" + - $ref: "#/components/schemas/GeomapWidgetDefinition" + - $ref: "#/components/schemas/GroupWidgetDefinition" + - $ref: "#/components/schemas/HeatMapWidgetDefinition" + - $ref: "#/components/schemas/HostMapWidgetDefinition" + - $ref: "#/components/schemas/IFrameWidgetDefinition" + - $ref: "#/components/schemas/ImageWidgetDefinition" + - $ref: "#/components/schemas/ListStreamWidgetDefinition" + - $ref: "#/components/schemas/LogStreamWidgetDefinition" + - $ref: "#/components/schemas/MonitorSummaryWidgetDefinition" + - $ref: "#/components/schemas/NoteWidgetDefinition" + - $ref: "#/components/schemas/PowerpackWidgetDefinition" + - $ref: "#/components/schemas/PointPlotWidgetDefinition" + - $ref: "#/components/schemas/QueryValueWidgetDefinition" + - $ref: "#/components/schemas/RetentionCurveWidgetDefinition" + - $ref: "#/components/schemas/RunWorkflowWidgetDefinition" + - $ref: "#/components/schemas/SLOListWidgetDefinition" + - $ref: "#/components/schemas/SLOWidgetDefinition" + - $ref: "#/components/schemas/ScatterPlotWidgetDefinition" + - $ref: "#/components/schemas/SankeyWidgetDefinition" + - $ref: "#/components/schemas/ServiceMapWidgetDefinition" + - $ref: "#/components/schemas/ServiceSummaryWidgetDefinition" + - $ref: "#/components/schemas/SplitGraphWidgetDefinition" + - $ref: "#/components/schemas/SunburstWidgetDefinition" + - $ref: "#/components/schemas/TableWidgetDefinition" + - $ref: "#/components/schemas/TimeseriesWidgetDefinition" + - $ref: "#/components/schemas/ToplistWidgetDefinition" + - $ref: "#/components/schemas/TopologyMapWidgetDefinition" + - $ref: "#/components/schemas/TreeMapWidgetDefinition" + - $ref: "#/components/schemas/WildcardWidgetDefinition" + WidgetDisplayType: + description: Type of display to use for the request. + enum: + - area + - bars + - line + - overlay + type: string + x-enum-varnames: + - AREA + - BARS + - LINE + - OVERLAY + WidgetEvent: + deprecated: true + description: |- + Event overlay control options. + + See the dedicated [Events JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/widget_json/#events-schema) + to learn how to build the ``. + properties: + q: + description: Query definition. + example: "" + type: string + tags_execution: + description: The execution method for multi-value filters. + type: string + required: + - q + type: object + WidgetEventSize: + description: Size to use to display an event. + enum: + - s + - l + type: string + x-enum-varnames: + - SMALL + - LARGE + WidgetFieldSort: + description: Which column and order to sort by + properties: + column: + description: Facet path for the column + example: "" + type: string + order: + $ref: "#/components/schemas/WidgetSort" + required: + - column + - order + type: object + WidgetFormula: + description: Formula to be used in a widget query. + properties: + alias: + description: Expression alias. + type: string + cell_display_mode: + $ref: "#/components/schemas/TableWidgetCellDisplayMode" + cell_display_mode_options: + $ref: "#/components/schemas/WidgetFormulaCellDisplayModeOptions" + conditional_formats: + description: List of conditional formats. + items: + $ref: "#/components/schemas/WidgetConditionalFormat" + type: array + formula: + description: String expression built from queries, formulas, and functions. + example: "func(a) + b" + type: string + limit: + $ref: "#/components/schemas/WidgetFormulaLimit" + number_format: + $ref: "#/components/schemas/WidgetNumberFormat" + style: + $ref: "#/components/schemas/WidgetFormulaStyle" + required: + - formula + type: object + WidgetFormulaCellDisplayModeOptions: + description: Cell display mode options for the widget formula. (only if `cell_display_mode` is set to `trend`). + properties: + trend_type: + $ref: "#/components/schemas/WidgetFormulaCellDisplayModeOptionsTrendType" + y_scale: + $ref: "#/components/schemas/WidgetFormulaCellDisplayModeOptionsYScale" + type: object + WidgetFormulaCellDisplayModeOptionsTrendType: + description: Trend type for the cell display mode options. + enum: + - area + - line + - bars + example: area + type: string + x-enum-varnames: + - AREA + - LINE + - BARS + WidgetFormulaCellDisplayModeOptionsYScale: + description: Y scale for the cell display mode options. + enum: + - shared + - independent + example: shared + type: string + x-enum-varnames: + - SHARED + - INDEPENDENT + WidgetFormulaLimit: + description: Options for limiting results returned. + properties: + count: + description: Number of results to return. + format: int64 + type: integer + order: + $ref: "#/components/schemas/QuerySortOrder" + type: object + WidgetFormulaSort: + description: The formula to sort the widget by. + properties: + index: + description: The index of the formula to sort by. + example: 0 + format: int64 + minimum: 0 + type: integer + order: + $ref: "#/components/schemas/WidgetSort" + type: + $ref: "#/components/schemas/FormulaType" + required: ["type", "index", "order"] + type: object + WidgetFormulaStyle: + description: Styling options for widget formulas. + properties: + palette: + description: The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors + example: "classic" + type: string + palette_index: + description: Index specifying which color to use within the palette. + example: 1 + format: int64 + type: integer + type: object + WidgetGroupSort: + description: The group to sort the widget by. + properties: + name: + description: The name of the group. + example: "group_name" + type: string + order: + $ref: "#/components/schemas/WidgetSort" + type: + $ref: "#/components/schemas/GroupType" + required: ["type", "name", "order"] + type: object + WidgetGrouping: + description: The kind of grouping to use. + enum: + - check + - cluster + example: check + type: string + x-enum-varnames: + - CHECK + - CLUSTER + WidgetHistogramRequestType: + description: Request type for distribution of point values for distribution metrics. Query space aggregator must be `histogram:` for points distributions. + enum: + - histogram + example: histogram + type: string + x-enum-varnames: + - HISTOGRAM + WidgetHorizontalAlign: + description: Horizontal alignment. + enum: + - center + - left + - right + type: string + x-enum-varnames: + - CENTER + - LEFT + - RIGHT + WidgetImageSizing: + description: |- + How to size the image on the widget. The values are based on the image `object-fit` CSS properties. + **Note**: `zoom`, `fit` and `center` values are deprecated. + enum: + - fill + - contain + - cover + - none + - scale-down + - zoom + - fit + - center + type: string + x-enum-varnames: + - FILL + - CONTAIN + - COVER + - NONE + - SCALEDOWN + - ZOOM + - FIT + - CENTER + WidgetLayout: + description: The layout for a widget on a `free` or **new dashboard layout** dashboard. + properties: + height: + description: The height of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + is_column_break: + description: |- + Whether the widget should be the first one on the second column in high density or not. + **Note**: Only for the **new dashboard layout** and only one widget in the dashboard should have this property set to `true`. + type: boolean + width: + description: The width of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + x: + description: The position of the widget on the x (horizontal) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + y: + description: The position of the widget on the y (vertical) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - x + - y + - width + - height + type: object + WidgetLayoutType: + description: Layout type of the group. + enum: + - ordered + example: ordered + type: string + x-enum-varnames: + - ORDERED + WidgetLegacyLiveSpan: + additionalProperties: false + description: Wrapper for live span + properties: + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + live_span: + $ref: "#/components/schemas/WidgetLiveSpan" + type: object + WidgetLegendSize: + description: Available legend sizes for a widget. Should be one of "0", "2", "4", "8", "16", or "auto". + type: string + WidgetLineType: + description: Type of lines displayed. + enum: + - dashed + - dotted + - solid + type: string + x-enum-varnames: + - DASHED + - DOTTED + - SOLID + WidgetLineWidth: + description: Width of line displayed. + enum: + - normal + - thick + - thin + type: string + x-enum-varnames: + - NORMAL + - THICK + - THIN + WidgetLiveSpan: + description: The available timeframes depend on the widget you are using. + enum: + - 1m + - 5m + - 10m + - 15m + - 30m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + - 6mo + - week_to_date + - month_to_date + - 1y + - alert + example: 5m + type: string + x-enum-varnames: + - PAST_ONE_MINUTE + - PAST_FIVE_MINUTES + - PAST_TEN_MINUTES + - PAST_FIFTEEN_MINUTES + - PAST_THIRTY_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + - PAST_SIX_MONTHS + - WEEK_TO_DATE + - MONTH_TO_DATE + - PAST_ONE_YEAR + - ALERT + WidgetLiveSpanUnit: + description: Unit of the time span. + enum: + - minute + - hour + - day + - week + - month + - year + example: minute + type: string + x-enum-varnames: + - MINUTE + - HOUR + - DAY + - WEEK + - MONTH + - YEAR + WidgetMargin: + description: |- + Size of the margins around the image. + **Note**: `small` and `large` values are deprecated. + enum: + - sm + - md + - lg + - small + - large + type: string + x-enum-varnames: + - SM + - MD + - LG + - SMALL + - LARGE + WidgetMarker: + description: Markers allow you to add visual conditional formatting for your graphs. + properties: + display_type: + description: |- + Combination of: + - A severity error, warning, ok, or info + - A line type: dashed, solid, or bold + In this case of a Distribution widget, this can be set to be `percentile`. + example: "error dashed" + type: string + label: + description: Label to display over the marker. + example: "Error threshold" + type: string + time: + description: Timestamp for the widget. + type: string + value: + description: |- + Value to apply. Can be a single value y = 15 or a range of values 0 < y < 10. + For Distribution widgets with `display_type` set to `percentile`, this should be + a numeric percentile value (for example, "90" for P90). + example: "y = 15" + type: string + required: + - value + type: object + WidgetMessageDisplay: + description: Amount of log lines to display + enum: + - inline + - expanded-md + - expanded-lg + type: string + x-enum-varnames: + - INLINE + - EXPANDED_MEDIUM + - EXPANDED_LARGE + WidgetMonitorSummaryDisplayFormat: + description: What to display on the widget. + enum: + - counts + - countsAndList + - list + type: string + x-enum-varnames: + - COUNTS + - COUNTS_AND_LIST + - LIST + WidgetMonitorSummarySort: + description: Widget sorting methods. + enum: + - name + - group + - status + - tags + - triggered + - "group,asc" + - "group,desc" + - "name,asc" + - "name,desc" + - "status,asc" + - "status,desc" + - "tags,asc" + - "tags,desc" + - "triggered,asc" + - "triggered,desc" + - "priority,asc" + - "priority,desc" + example: name,asc + type: string + x-enum-varnames: + - NAME + - GROUP + - STATUS + - TAGS + - TRIGGERED + - GROUP_ASCENDING + - GROUP_DESCENDING + - NAME_ASCENDING + - NAME_DESCENDING + - STATUS_ASCENDING + - STATUS_DESCENDING + - TAGS_ASCENDING + - TAGS_DESCENDING + - TRIGGERED_ASCENDING + - TRIGGERED_DESCENDING + - PRIORITY_ASCENDING + - PRIORITY_DESCENDING + WidgetNewFixedSpan: + description: Used for fixed span times, such as 'March 1 to March 7'. + properties: + from: + description: Start time in milliseconds since epoch. + example: 1712080128000 + format: int64 + minimum: 0 + type: integer + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + to: + description: End time in milliseconds since epoch. + example: 1712083128000 + format: int64 + minimum: 0 + type: integer + type: + $ref: "#/components/schemas/WidgetNewFixedSpanType" + required: + - type + - from + - to + type: object + WidgetNewFixedSpanType: + description: Type "fixed" denotes a fixed span. + enum: ["fixed"] + example: "fixed" + type: string + x-enum-varnames: + - FIXED + WidgetNewLiveSpan: + description: Used for arbitrary live span times, such as 17 minutes or 6 hours. + properties: + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + type: + $ref: "#/components/schemas/WidgetNewLiveSpanType" + unit: + $ref: "#/components/schemas/WidgetLiveSpanUnit" + value: + description: Value of the time span. + example: 4 + format: int64 + minimum: 1 + type: integer + required: + - type + - value + - unit + type: object + WidgetNewLiveSpanType: + description: Type "live" denotes a live span in the new format. + enum: ["live"] + example: "live" + type: string + x-enum-varnames: + - LIVE + WidgetNodeType: + description: Which type of node to use in the map. + enum: + - host + - container + type: string + x-enum-varnames: + - HOST + - CONTAINER + WidgetNumberFormat: + description: Number format options for the widget. + properties: + unit: + $ref: "#/components/schemas/NumberFormatUnit" + unit_scale: + $ref: "#/components/schemas/NumberFormatUnitScale" + type: object + WidgetOrderBy: + description: What to order by. + enum: + - change + - name + - present + - past + type: string + x-enum-varnames: + - CHANGE + - NAME + - PRESENT + - PAST + WidgetPalette: + description: Color palette to apply. + enum: + - blue + - custom_bg + - custom_image + - custom_text + - gray_on_white + - grey + - green + - orange + - red + - red_on_white + - white_on_gray + - white_on_green + - green_on_white + - white_on_red + - white_on_yellow + - yellow_on_white + - black_on_light_yellow + - black_on_light_green + - black_on_light_red + example: blue + type: string + x-enum-varnames: + - BLUE + - CUSTOM_BACKGROUND + - CUSTOM_IMAGE + - CUSTOM_TEXT + - GRAY_ON_WHITE + - GREY + - GREEN + - ORANGE + - RED + - RED_ON_WHITE + - WHITE_ON_GRAY + - WHITE_ON_GREEN + - GREEN_ON_WHITE + - WHITE_ON_RED + - WHITE_ON_YELLOW + - YELLOW_ON_WHITE + - BLACK_ON_LIGHT_YELLOW + - BLACK_ON_LIGHT_GREEN + - BLACK_ON_LIGHT_RED + WidgetRequestStyle: + description: Define request widget style. + properties: + line_type: + $ref: "#/components/schemas/WidgetLineType" + line_width: + $ref: "#/components/schemas/WidgetLineWidth" + order_by: + $ref: "#/components/schemas/WidgetStyleOrderBy" + palette: + description: Color palette to apply to the widget. + type: string + type: object + WidgetServiceSummaryDisplayFormat: + description: Number of columns to display. + enum: + - one_column + - two_column + - three_column + type: string + x-enum-varnames: + - ONE_COLUMN + - TWO_COLUMN + - THREE_COLUMN + WidgetSizeFormat: + description: Size of the widget. + enum: + - small + - medium + - large + type: string + x-enum-varnames: + - SMALL + - MEDIUM + - LARGE + WidgetSort: + description: Widget sorting methods. + enum: + - asc + - desc + example: desc + type: string + x-enum-varnames: + - ASCENDING + - DESCENDING + WidgetSortBy: + description: The controls for sorting the widget. + properties: + count: + description: The number of items to limit the widget to. + format: int64 + minimum: 0 + type: integer + order_by: + description: The array of items to sort the widget by in order. + items: + $ref: "#/components/schemas/WidgetSortOrderBy" + type: array + type: object + WidgetSortOrderBy: + description: "The item to sort the widget by." + oneOf: + - $ref: "#/components/schemas/WidgetFormulaSort" + - $ref: "#/components/schemas/WidgetGroupSort" + WidgetStyle: + description: Widget style definition. + properties: + palette: + description: Color palette to apply to the widget. + type: string + type: object + WidgetStyleOrderBy: + description: |- + How to order series in timeseries visualizations. + - `tags`: Order series alphabetically by tag name (default behavior) + - `values`: Order series by their current metric values (typically descending) + enum: + - tags + - values + type: string + x-enum-varnames: + - TAGS + - VALUES + WidgetSummaryType: + description: Which summary type should be used. + enum: + - monitors + - groups + - combined + type: string + x-enum-varnames: + - MONITORS + - GROUPS + - COMBINED + WidgetTextAlign: + description: How to align the text on the widget. + enum: + - center + - left + - right + type: string + x-enum-varnames: + - CENTER + - LEFT + - RIGHT + WidgetTickEdge: + description: Define how you want to align the text on the widget. + enum: + - bottom + - left + - right + - top + type: string + x-enum-varnames: + - BOTTOM + - LEFT + - RIGHT + - TOP + WidgetTime: + description: Time setting for the widget. + oneOf: + - $ref: "#/components/schemas/WidgetLegacyLiveSpan" + - $ref: "#/components/schemas/WidgetNewLiveSpan" + - $ref: "#/components/schemas/WidgetNewFixedSpan" + WidgetTimeWindows: + description: Define a time window. + enum: + - 7d + - 30d + - 90d + - week_to_date + - previous_week + - month_to_date + - previous_month + - global_time + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + - WEEK_TO_DATE + - PREVIOUS_WEEK + - MONTH_TO_DATE + - PREVIOUS_MONTH + - GLOBAL_TIME + WidgetVerticalAlign: + description: Vertical alignment. + enum: + - center + - top + - bottom + type: string + x-enum-varnames: + - CENTER + - TOP + - BOTTOM + WidgetViewMode: + description: Define how you want the SLO to be displayed. + enum: + - overall + - component + - both + type: string + x-enum-varnames: + - OVERALL + - COMPONENT + - BOTH + WidgetVizType: + description: Whether to display the Alert Graph as a timeseries or a top list. + enum: + - timeseries + - toplist + example: timeseries + type: string + x-enum-varnames: + - TIMESERIES + - TOPLIST + WildcardWidgetDefinition: + description: >- + Custom visualization widget using Vega or Vega-Lite specifications. Combines standard Datadog data requests with a Vega or Vega-Lite JSON specification for flexible, custom visualizations. + properties: + custom_links: + description: List of custom links. + items: + $ref: "#/components/schemas/WidgetCustomLink" + type: array + requests: + description: List of data requests for the wildcard widget. + example: [{"formulas": ["formula": "query1"], "queries": [{"aggregator": "avg", "data_source": "metrics", "name": "query1", "query": "avg:system.cpu.user{*} by {env}"}], "response_format": "scalar"}] + items: + $ref: "#/components/schemas/WildcardWidgetRequest" + type: array + specification: + $ref: "#/components/schemas/WildcardWidgetSpecification" + time: + $ref: "#/components/schemas/WidgetTime" + title: + description: Title of the widget. + type: string + title_align: + $ref: "#/components/schemas/WidgetTextAlign" + title_size: + description: Size of the title. + type: string + type: + $ref: "#/components/schemas/WildcardWidgetDefinitionType" + required: + - type + - requests + - specification + type: object + WildcardWidgetDefinitionType: + default: wildcard + description: Type of the wildcard widget. + enum: + - wildcard + example: wildcard + type: string + x-enum-varnames: + - WILDCARD + WildcardWidgetRequest: + description: >- + Request object for the wildcard widget. Each variant represents a distinct data-fetching pattern: scalar formulas, timeseries formulas, list streams, and histograms. + oneOf: + - $ref: "#/components/schemas/TreeMapWidgetRequest" + - $ref: "#/components/schemas/TimeseriesWidgetRequest" + - $ref: "#/components/schemas/ListStreamWidgetRequest" + - $ref: "#/components/schemas/DistributionWidgetRequest" + WildcardWidgetSpecification: + description: >- + Vega or Vega-Lite specification for custom visualization rendering. See https://vega.github.io/vega-lite/ for the full grammar reference. + properties: + contents: + description: The Vega or Vega-Lite JSON specification object. + example: {"$schema": "https://vega.github.io/schema/vega-lite/v5.json", "data": {"name": "table1"}, "description": "A simple bar chart", "encoding": {"x": {"field": "env", "sort": "-y", "type": "nominal"}, "y": {"field": "query1", "type": "quantitative"}}, "mark": "bar"} + type: object + type: + $ref: "#/components/schemas/WildcardWidgetSpecificationType" + required: + - type + - contents + type: object + WildcardWidgetSpecificationType: + description: Type of specification used by the wildcard widget. + enum: + - vega + - vega-lite + example: vega-lite + type: string + x-enum-varnames: + - VEGA + - VEGA_LITE + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + apm_api_catalog_read: View API catalog and API definitions. + apm_api_catalog_write: Add, modify, and delete API catalog definitions. + apm_read: Read and query APM and Trace Analytics. + apm_service_catalog_read: View service catalog and service definitions. + apm_service_catalog_write: Add, modify, and delete service catalog definitions when those definitions are maintained by Datadog. + billing_read: View your organization's billing information. + cases_read: View Cases. + cases_write: Create and update cases. + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + cloud_cost_management_read: View Cloud Cost pages and the cloud cost data source in dashboards and notebooks. For more details, see the Cloud Cost Management docs. + cloud_cost_management_write: Configure cloud cost accounts and global customizations. For more details, see the Cloud Cost Management docs. + code_analysis_read: View Code Analysis. + continuous_profiler_pgo_read: Read and query Continuous Profiler data for Profile-Guided Optimization (PGO). + coterm_read: Read terminal recordings. + coterm_write: Write terminal recordings. + create_webhooks: Create webhooks integrations. + dashboards_embed_share: Create, modify, and delete shared dashboards with share type 'embed'. + dashboards_invite_share: Create, modify, and delete shared dashboards with share type 'invite'. + dashboards_public_share: Generate public and authenticated links to share dashboards or embeddable graphs externally. + dashboards_read: View dashboards. + dashboards_write: Create and change dashboards. + data_scanner_read: View Data Scanner configurations. + data_scanner_write: Edit Data Scanner configurations. + embeddable_graphs_share: Generate public links to share embeddable graphs externally. + events_read: Read Events data. + hosts_read: List hosts and their attributes. + incident_notification_settings_write: Configure Incidents Notification settings. + incident_read: View incidents in Datadog. + incident_settings_write: Configure Incident Settings. + incident_write: Create, view, and manage incidents in Datadog. + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute monitors. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit, delete, and resolve individual monitors. + org_management: Edit org configurations, including authentication and certain security preferences such as configuring SAML, renaming an org, configuring allowed login methods, creating child orgs, subscribing & unsubscribing from apps in the marketplace, and enabling & disabling Remote Configuration for the entire organization. + security_comments_read: Read comments of vulnerabilities. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: Create, edit, and delete Security Filters. + security_monitoring_findings_read: View a list of findings that include both misconfigurations and identity risks. + security_monitoring_rules_read: Read Detection Rules. + security_monitoring_rules_write: Create and edit Detection Rules. + security_monitoring_signals_read: View Security Signals. + security_monitoring_suppressions_read: Read Rule Suppressions. + security_monitoring_suppressions_write: Write Rule Suppressions. + security_pipelines_read: View Security Pipelines. + security_pipelines_write: Create, edit, and delete CSM Security Pipelines. + slos_corrections: Apply, edit, and delete SLO status corrections. A user with this permission can make status corrections, even if they do not have permission to edit those SLOs. + slos_read: View SLOs and status corrections. + slos_write: Create, edit, and delete SLOs. + synthetics_global_variable_read: View, search, and use Synthetics global variables. + synthetics_global_variable_write: Create, edit, and delete global variables for Synthetics. + synthetics_private_location_read: View, search, and use Synthetics private locations. + synthetics_private_location_write: Create and delete private locations in addition to having access to the associated installation guidelines. + synthetics_read: List and view configured Synthetic tests and test results. + synthetics_write: Create, edit, and delete Synthetic tests. + teams_manage: Manage Teams. Create, delete, rename, and edit metadata of all Teams. To control Team membership across all Teams, use the User Access Manage permission. + teams_read: Read Teams data. A User with this permission can view Team names, metadata, and which Users are on each Team. + test_optimization_read: View Test Optimization. + timeseries_query: Query Timeseries data. + usage_read: View your organization's usage and usage attribution. + user_access_invite: Invite other users to your organization. + user_access_manage: Disable users, manage user roles, manage SAML-to-role mappings, and configure logs restriction queries. + user_access_read: View users and their roles and settings. + workflows_read: View workflows. + workflows_run: Run workflows. + workflows_write: Create, edit, and delete workflows. + tokenUrl: /oauth2/v1/token + type: oauth2 + apiKeyAuth: + description: Your Datadog API Key. + in: header + name: DD-API-KEY + type: apiKey + x-env-name: DD_API_KEY + apiKeyAuthQuery: + description: Deprecated API Key as query argument. + in: query + name: api_key + type: apiKey + x-auth-id-alias: apiKeyAuth + x-env-name: DD_API_KEY + appKeyAuth: + description: Your Datadog APP Key. + in: header + name: DD-APPLICATION-KEY + type: apiKey + x-env-name: DD_APP_KEY + appKeyAuthQuery: + description: Deprecated APP Key as query argument. + in: query + name: application_key + type: apiKey + x-auth-id-alias: appKeyAuth + x-env-name: DD_APP_KEY + bearerAuth: + scheme: bearer + type: http + x-env-name: DD_BEARER_TOKEN +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: https://www.datadoghq.com/support/ + description: Collection of all Datadog Public endpoints. + title: Datadog API V1 Collection + version: "1.0" +openapi: 3.0.0 +paths: + /: + get: + description: Get information about Datadog IP ranges. + operationId: GetIPRanges + responses: + "200": + content: + application/json: + examples: + default: + value: + agents: + prefixes_ipv4: + - "1.2.3.4/32" + prefixes_ipv6: [] + api: + prefixes_ipv4: + - "1.2.3.4/32" + prefixes_ipv6: [] + apm: + prefixes_ipv4: + - "1.2.3.4/32" + prefixes_ipv6: [] + logs: + prefixes_ipv4: + - "1.2.3.4/32" + prefixes_ipv6: [] + modified: "2019-10-31-20-00-00" + process: + prefixes_ipv4: + - "1.2.3.4/32" + prefixes_ipv6: [] + version: 11 + webhooks: + prefixes_ipv4: + - "1.2.3.4/32" + prefixes_ipv6: [] + schema: + $ref: "#/components/schemas/IPRanges" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: [] + servers: + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The regional site for Datadog customers. + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - uk1.datadoghq.com + - datadoghq.eu + - ddog-gov.com + - us2.ddog-gov.com + x-enum-varnames: + - US1 + - US3 + - US5 + - AP1 + - AP2 + - UK1 + - EU1 + - GOV + - US2_GOV + subdomain: + default: ip-ranges + description: The subdomain where the API is deployed. + - url: "{protocol}://{name}" + variables: + name: + default: ip-ranges.datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.datadoghq.com + variables: + subdomain: + default: ip-ranges + description: The subdomain where the API is deployed. + summary: List IP Ranges + tags: + - IP Ranges + /api/v1/api_key: + get: + description: |- + Get all API keys available for your account. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: ListAPIKeys + responses: + "200": + content: + application/json: + examples: + default: + value: + api_keys: + - created: "2024-01-01T00:00:00+00:00" + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: "#/components/schemas/ApiKeyListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all API keys + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - api_keys_read + post: + description: |- + Creates an API key with a given name. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: CreateAPIKey + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: "#/components/schemas/ApiKey" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + api_key: + created: "2024-01-01T00:00:00+00:00" + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: "#/components/schemas/ApiKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an API key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - api_keys_write + /api/v1/api_key/{key}: + delete: + description: |- + Delete a given API key. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: DeleteAPIKey + parameters: + - description: The specific API key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + api_key: + created: "2024-01-01T00:00:00+00:00" + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: "#/components/schemas/ApiKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an API key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - api_keys_delete + get: + description: |- + Get a given API key. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: GetAPIKey + parameters: + - description: The specific API key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + api_key: + created: "2024-01-01T00:00:00+00:00" + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: "#/components/schemas/ApiKeyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get API key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - api_keys_read + put: + description: |- + Edit an API key name. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: UpdateAPIKey + parameters: + - description: The specific API key you are working with. + in: path + name: key + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: "#/components/schemas/ApiKey" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + api_key: + created: "2024-01-01T00:00:00+00:00" + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: "#/components/schemas/ApiKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an API key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - api_keys_write + /api/v1/application_key: + get: + description: |- + Get all application keys available for your Datadog account. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: ListApplicationKeys + responses: + "200": + content: + application/json: + examples: + default: + value: + application_keys: + - hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: "#/components/schemas/ApplicationKeyListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all application keys + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - org_app_keys_read + - user_app_keys + post: + description: |- + Create an application key with a given name. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: CreateApplicationKey + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: "#/components/schemas/ApplicationKey" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an application key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_app_keys + /api/v1/application_key/{key}: + delete: + description: |- + Delete a given application key. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: DeleteApplicationKey + parameters: + - description: The specific APP key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an application key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - org_app_keys_write + - user_app_keys + get: + description: |- + Get a given application key. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: GetApplicationKey + parameters: + - description: The specific APP key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an application key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - org_app_keys_read + - user_app_keys + put: + description: |- + Edit an application key name. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: UpdateApplicationKey + parameters: + - description: The specific APP key you are working with. + in: path + name: key + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: "#/components/schemas/ApplicationKey" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an application key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_app_keys_write + - user_app_keys + /api/v1/check_run: + post: + description: |- + Submit a list of Service Checks. + + **Notes**: + - A valid API key is required. + - Service checks can be submitted up to 10 minutes in the past. + operationId: SubmitServiceCheck + requestBody: + content: + application/json: + examples: + default: + value: + - check: app.ok + host_name: app.host1 + message: app is running + status: 0 + tags: + - "environment:test" + schema: + $ref: "#/components/schemas/ServiceChecks" + description: Service Check request body. + required: true + responses: + "202": + content: + text/json: + examples: + default: + value: + status: ok + schema: + $ref: "#/components/schemas/IntakePayloadAccepted" + description: Payload accepted + "400": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "408": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Request timeout + "413": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Payload too large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Submit a Service Check + tags: + - Service Checks + x-codegen-request-body-name: body + /api/v1/daily_custom_reports: + get: + deprecated: true + description: |- + Get daily custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetDailyCustomReports + parameters: + - description: The number of files to return in the response. `[default=60]`. + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + - description: "The direction to sort by: `[desc, asc]`." + in: query + name: sort_dir + required: false + schema: + $ref: "#/components/schemas/UsageSortDirection" + - description: "The field to sort by: `[computed_on, size, start_date, end_date]`." + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/UsageSort" + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + - attributes: + computed_on: "2024-01-02" + end_date: "2024-01-01" + size: 1024 + start_date: "2024-01-01" + tags: + - env + id: "2024-01-01" + type: reports + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/UsageCustomReportsResponse" + description: OK + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + summary: Get the list of available daily custom reports + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/daily_custom_reports/{report_id}: + get: + deprecated: true + description: |- + Get specified daily custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetSpecifiedDailyCustomReports + parameters: + - description: Date of the report in the format `YYYY-MM-DD`. + in: path + name: report_id + required: true + schema: + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + attributes: + computed_on: "2024-01-02" + end_date: "2024-01-01" + location: "https://example.s3.amazonaws.com/report.csv" + size: 1024 + start_date: "2024-01-01" + tags: + - env + id: "2024-01-01" + type: reports + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/UsageSpecifiedCustomReportsResponse" + description: OK + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "404": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + summary: Get specified daily custom reports + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/dashboard: + delete: + description: Delete dashboards using the specified IDs. If there are any failures, no dashboards will be deleted (partial success is not allowed). + operationId: DeleteDashboards + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 123-abc-456 + type: dashboard + - id: 789-def-101 + type: dashboard + json-request-body: + value: {"data": [{"id": "123-abc-456", "type": "dashboard"}, {"id": "789-def-101", "type": "dashboard"}]} + schema: + $ref: "#/components/schemas/DashboardBulkDeleteRequest" + description: Delete dashboards request body. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Dashboards Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete dashboards + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + get: + description: |- + Get all dashboards. + + **Note**: This query will only return custom created or cloned dashboards. + This query will not return preset dashboards. + operationId: ListDashboards + parameters: + - description: |- + When `true`, this query only returns shared custom created + or cloned dashboards. + in: query + name: filter[shared] + required: false + schema: + type: boolean + - description: |- + When `true`, this query returns only deleted custom-created + or cloned dashboards. This parameter is incompatible with `filter[shared]`. + in: query + name: filter[deleted] + required: false + schema: + type: boolean + - description: The maximum number of dashboards returned in the list. + in: query + name: count + required: false + schema: + default: 100 + format: int64 + type: integer + - description: The specific offset to use as the beginning of the returned response. + in: query + name: start + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + dashboards: + - author_handle: test@example.com + created_at: "2024-01-01T00:00:00+00:00" + id: abc-123-def + layout_type: ordered + modified_at: "2024-01-01T00:00:00+00:00" + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + schema: + $ref: "#/components/schemas/DashboardSummary" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get all dashboards + tags: + - Dashboards + x-pagination: + limitParam: count + pageOffsetParam: start + resultsPath: dashboards + "x-permission": + operator: OR + permissions: + - dashboards_read + patch: + description: Restore dashboards using the specified IDs. If there are any failures, no dashboards will be restored (partial success is not allowed). + operationId: RestoreDashboards + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 123-abc-456 + type: dashboard + - id: 789-def-101 + type: dashboard + json-request-body: + value: {"data": [{"id": "123-abc-456", "type": "dashboard"}, {"id": "789-def-101", "type": "dashboard"}]} + schema: + $ref: "#/components/schemas/DashboardRestoreRequest" + description: Restore dashboards request body. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Dashboards Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Restore deleted dashboards + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + post: + description: |- + Create a dashboard using the specified options. When defining queries in your widgets, take note of which queries should have the `as_count()` or `as_rate()` modifiers appended. + Refer to the following [documentation](https://docs.datadoghq.com/developers/metrics/type_modifiers/?tab=count#in-application-modifiers) for more information on these modifiers. + operationId: CreateDashboard + requestBody: + content: + application/json: + examples: + default: + value: + description: An example dashboard for monitoring infrastructure. + layout_type: ordered + title: Example Dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + schema: + $ref: "#/components/schemas/Dashboard" + description: Create a dashboard request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + author_handle: test@example.com + author_name: Example Name + created_at: "2024-01-01T00:00:00+00:00" + id: abc-123-def + layout_type: ordered + modified_at: "2024-01-01T00:00:00+00:00" + notify_list: + restricted_roles: [] + template_variables: + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + id: 123 + schema: + $ref: "#/components/schemas/Dashboard" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Create a new dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + /api/v1/dashboard/lists/manual: + get: + description: >- + Fetch all of your existing dashboard list definitions. + operationId: ListDashboardLists + responses: + "200": + content: + application/json: + examples: + default: + value: + dashboard_lists: + - author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_count: 0 + id: 123 + is_favorite: false + modified: "2024-01-01T00:00:00+00:00" + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: "#/components/schemas/DashboardListListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get all dashboard lists + tags: + - Dashboard Lists + "x-permission": + operator: OR + permissions: + - dashboards_read + post: + description: >- + Create an empty dashboard list. + operationId: CreateDashboardList + requestBody: + content: + application/json: + examples: + default: + value: + name: My Dashboard List + schema: + $ref: "#/components/schemas/DashboardList" + description: Create a dashboard list request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_count: 0 + id: 123 + is_favorite: false + modified: "2024-01-01T00:00:00+00:00" + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: "#/components/schemas/DashboardList" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Create a dashboard list + tags: + - Dashboard Lists + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + /api/v1/dashboard/lists/manual/{list_id}: + delete: + description: >- + Delete a dashboard list. + operationId: DeleteDashboardList + parameters: + - description: ID of the dashboard list to delete. + in: path + name: list_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + deleted_dashboard_list_id: 123 + schema: + $ref: "#/components/schemas/DashboardListDeleteResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete a dashboard list + tags: + - Dashboard Lists + "x-permission": + operator: OR + permissions: + - dashboards_write + get: + description: >- + Fetch an existing dashboard list's definition. + operationId: GetDashboardList + parameters: + - description: ID of the dashboard list to fetch. + in: path + name: list_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_count: 0 + id: 123 + is_favorite: false + modified: "2024-01-01T00:00:00+00:00" + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: "#/components/schemas/DashboardList" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a dashboard list + tags: + - Dashboard Lists + "x-permission": + operator: OR + permissions: + - dashboards_read + put: + description: >- + Update the name of a dashboard list. + operationId: UpdateDashboardList + parameters: + - description: ID of the dashboard list to update. + in: path + name: list_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + name: My Dashboard List + schema: + $ref: "#/components/schemas/DashboardList" + description: Update a dashboard list request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_count: 0 + id: 123 + is_favorite: false + modified: "2024-01-01T00:00:00+00:00" + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: "#/components/schemas/DashboardList" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Update a dashboard list + tags: + - Dashboard Lists + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + /api/v1/dashboard/public: + post: + description: >- + Share a specified private dashboard, generating a URL at which it can be publicly viewed. + operationId: CreatePublicDashboard + requestBody: + content: + application/json: + examples: + default: + value: + dashboard_id: 123-abc-456 + dashboard_type: custom_timeboard + global_time: + live_span: 1h + share_type: open + json-request-body: + value: {"dashboard_id": "123-abc-456", "dashboard_type": "custom_timeboard", "share_type": "open"} + schema: + $ref: "#/components/schemas/SharedDashboard" + description: Create a shared dashboard request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_id: abc-123-def + dashboard_type: custom_timeboard + global_time: + live_span: 1h + public_url: https://p.datadoghq.com/sb/abc-123 + share_type: open + status: active + token: abc-123 + schema: + $ref: "#/components/schemas/SharedDashboard" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Dashboard Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_public_share + - AuthZ: + - dashboards_embed_share + - AuthZ: + - dashboards_invite_share + summary: Create a shared dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_public_share + - dashboards_embed_share + - dashboards_invite_share + /api/v1/dashboard/public/{token}: + delete: + description: >- + Revoke the public URL for a dashboard (rendering it private) associated with the specified token. + operationId: DeletePublicDashboard + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + deleted_public_dashboard_token: abc-123 + schema: + $ref: "#/components/schemas/DeleteSharedDashboardResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Shared Dashboard Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_public_share + - AuthZ: + - dashboards_embed_share + - AuthZ: + - dashboards_invite_share + summary: Revoke a shared dashboard URL + tags: + - Dashboards + "x-permission": + operator: OR + permissions: + - dashboards_public_share + - dashboards_embed_share + - dashboards_invite_share + get: + description: >- + Fetch an existing shared dashboard's sharing metadata associated with the specified token. + operationId: GetPublicDashboard + parameters: + - description: The token of the shared dashboard. Generated when a dashboard is shared. + in: path + name: token + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_id: abc-123-def + dashboard_type: custom_timeboard + global_time: + live_span: 1h + public_url: https://p.datadoghq.com/sb/abc-123 + share_type: open + status: active + token: abc-123 + schema: + $ref: "#/components/schemas/SharedDashboard" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Shared Dashboard Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a shared dashboard + tags: + - Dashboards + "x-permission": + operator: OR + permissions: + - dashboards_read + put: + description: Update a shared dashboard associated with the specified token. + operationId: UpdatePublicDashboard + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + global_time: + live_span: 1h + selectable_template_vars: + - default_value: "*" + name: exampleVar + prefix: test + visible_tags: + - selectableValue1 + - selectableValue2 + share_list: + - test@datadoghq.com + - test2@datadoghq.com + share_type: invite + json-request-body: + value: {"global_time": {"live_span": "1h"}, "selectable_template_vars": [{"default_value": "*", "name": "exampleVar", "prefix": "test", "visible_tags": ["selectableValue1", "selectableValue2"]}], "share_list": ["test@datadoghq.com", "test2@datadoghq.com"], "share_type": "invite"} + schema: + $ref: "#/components/schemas/SharedDashboardUpdateRequest" + description: Update Dashboard request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: "2024-01-01T00:00:00+00:00" + dashboard_id: abc-123-def + dashboard_type: custom_timeboard + global_time: + live_span: 1h + public_url: https://p.datadoghq.com/sb/abc-123 + share_type: open + status: active + token: abc-123 + schema: + $ref: "#/components/schemas/SharedDashboard" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_public_share + - AuthZ: + - dashboards_embed_share + - AuthZ: + - dashboards_invite_share + summary: Update a shared dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_public_share + - dashboards_embed_share + - dashboards_invite_share + /api/v1/dashboard/public/{token}/invitation: + delete: + description: >- + Revoke previously sent invitation emails and active sessions used to access a given shared dashboard for specific email addresses. + operationId: DeletePublicDashboardInvitation + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + json-request-body: + value: {"data": {"attributes": {"email": "test@datadoghq.com"}, "type": "public_dashboard_invitation"}} + schema: + $ref: "#/components/schemas/SharedDashboardInvites" + description: Shared Dashboard Invitation deletion request body. + required: true + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_invite_share + summary: Revoke shared dashboard invitations + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_invite_share + get: + description: >- + Describe the invitations that exist for the given shared dashboard (paginated). + operationId: GetPublicDashboardInvitations + parameters: + - description: Token of the shared dashboard for which to fetch invitations. + in: path + name: token + required: true + schema: + type: string + - description: The number of records to return in a single request. + in: query + name: page_size + required: false + schema: + format: int64 + type: integer + - description: The page to access (base 0). + in: query + name: page_number + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + email: test@example.com + has_session: false + session_expiry: + share_token: abc-123 + type: public_dashboard_invitation + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/SharedDashboardInvites" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_invite_share + summary: Get all invitations for a shared dashboard + tags: + - Dashboards + "x-permission": + operator: OR + permissions: + - dashboards_invite_share + post: + description: >- + Send emails to specified email addresses containing links to access a given authenticated shared dashboard. Email addresses must already belong to the authenticated shared dashboard's share_list. + operationId: SendPublicDashboardInvitation + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + json-request-body: + value: {"data": [{"attributes": {"email": "test@datadoghq.com"}, "type": "public_dashboard_invitation"}]} + schema: + $ref: "#/components/schemas/SharedDashboardInvites" + description: Shared Dashboard Invitation request body. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + email: test@example.com + has_session: false + session_expiry: + share_token: abc-123 + type: public_dashboard_invitation + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/SharedDashboardInvites" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_invite_share + summary: Send shared dashboard invitation email + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_invite_share + /api/v1/dashboard/{dashboard_id}: + delete: + description: Delete a dashboard using the specified ID. + operationId: DeleteDashboard + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + deleted_dashboard_id: abc-123 + schema: + $ref: "#/components/schemas/DashboardDeleteResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Dashboards Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete a dashboard + tags: + - Dashboards + "x-permission": + operator: OR + permissions: + - dashboards_write + get: + description: Get a dashboard using the specified ID. + operationId: GetDashboard + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + author_handle: test@example.com + author_name: Example Name + created_at: "2024-01-01T00:00:00+00:00" + id: abc-123-def + layout_type: ordered + modified_at: "2024-01-01T00:00:00+00:00" + notify_list: + restricted_roles: [] + template_variables: + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + id: 123 + schema: + $ref: "#/components/schemas/Dashboard" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a dashboard + tags: + - Dashboards + "x-permission": + operator: OR + permissions: + - dashboards_read + put: + description: Update a dashboard using the specified ID. + operationId: UpdateDashboard + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: An example dashboard for monitoring infrastructure. + layout_type: ordered + title: Example Dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + schema: + $ref: "#/components/schemas/Dashboard" + description: Update Dashboard request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + author_handle: test@example.com + author_name: Example Name + created_at: "2024-01-01T00:00:00+00:00" + id: abc-123-def + layout_type: ordered + modified_at: "2024-01-01T00:00:00+00:00" + notify_list: + restricted_roles: [] + template_variables: + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + id: 123 + schema: + $ref: "#/components/schemas/Dashboard" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Update a dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + /api/v1/distribution_points: + post: + description: The distribution points end-point allows you to post distribution data that can be graphed on Datadog’s dashboards. + operationId: SubmitDistributionPoints + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: "#/components/schemas/DistributionPointsContentEncoding" + requestBody: + content: + text/json: + examples: + default: + value: + series: + - host: test.example.com + metric: system.load.1 + points: + - [1636629071, [1.0, 2.0]] + tags: + - "environment:test" + type: distribution + dynamic-points: + description: Post time-series data that can be graphed on Datadog’s dashboards. + externalValue: examples/metrics/distribution-points.json.sh + summary: Dynamic Points + x-variables: + NOW: "$(date +%s)" + schema: + $ref: "#/components/schemas/DistributionPointsPayload" + required: true + responses: + "202": + content: + text/json: + examples: + default: + value: + status: ok + schema: + $ref: "#/components/schemas/IntakePayloadAccepted" + description: Payload accepted + "400": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "408": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Request timeout + "413": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Payload too large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Submit distribution points + tags: + - Metrics + x-codegen-request-body-name: body + /api/v1/downtime: + get: + deprecated: true + description: |- + Get all scheduled downtimes. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: ListDowntimes + parameters: + - description: Only return downtimes that are active when the request is made. + in: query + name: current_only + required: false + schema: + type: boolean + - description: Return creator information. + in: query + name: with_creator + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + - active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduled maintenance + scope: + - env:staging + start: 1412792983 + schema: + items: + $ref: "#/components/schemas/Downtime" + type: array + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all downtimes + tags: + - Downtimes + "x-permission": + operator: OR + permissions: + - monitors_read + post: + deprecated: true + description: |- + Schedule a downtime. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: CreateDowntime + requestBody: + content: + application/json: + examples: + default: + value: + end: 1412793983 + message: Scheduling downtime for a database maintenance window. + monitor_tags: + - "*" + scope: + - env:staging + start: 1412792983 + timezone: America/New_York + schema: + $ref: "#/components/schemas/Downtime" + description: Schedule a downtime request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduling downtime for a database maintenance window. + scope: + - env:staging + start: 1412792983 + schema: + $ref: "#/components/schemas/Downtime" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Schedule a downtime + tags: + - Downtimes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_downtime + /api/v1/downtime/cancel/by_scope: + post: + deprecated: true + description: |- + Delete all downtimes that match the scope of `X`. **Note:** This only interacts with Downtimes created using v1 endpoints. This endpoint has been deprecated and will not be replaced. Please use v2 endpoints to find and cancel downtimes. + operationId: CancelDowntimesByScope + requestBody: + content: + application/json: + examples: + default: + value: + scope: host:myserver + schema: + $ref: "#/components/schemas/CancelDowntimesByScopeRequest" + description: Scope to cancel downtimes for. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + cancelled_ids: + - 123 + schema: + $ref: "#/components/schemas/CanceledDowntimesIds" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Downtimes not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Cancel downtimes by scope + tags: + - Downtimes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_downtime + /api/v1/downtime/{downtime_id}: + delete: + deprecated: true + description: |- + Cancel a downtime. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: CancelDowntime + parameters: + - description: ID of the downtime to cancel. + in: path + name: downtime_id + required: true + schema: + example: 123456 + format: int64 + type: integer + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Downtime not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Cancel a downtime + tags: + - Downtimes + "x-permission": + operator: OR + permissions: + - monitors_downtime + get: + deprecated: true + description: |- + Get downtime detail by `downtime_id`. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: GetDowntime + parameters: + - description: ID of the downtime to fetch. + in: path + name: downtime_id + required: true + schema: + example: 123456 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduled maintenance + scope: + - env:staging + start: 1412792983 + schema: + $ref: "#/components/schemas/Downtime" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Downtime not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a downtime + tags: + - Downtimes + "x-permission": + operator: OR + permissions: + - monitors_read + put: + deprecated: true + description: |- + Update a single downtime by `downtime_id`. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: UpdateDowntime + parameters: + - description: ID of the downtime to update. + in: path + name: downtime_id + required: true + schema: + example: 123456 + format: int64 + type: integer + style: simple + requestBody: + content: + application/json: + examples: + default: + value: + end: 1412793983 + message: Updating downtime end time. + monitor_tags: + - "*" + scope: + - env:staging + start: 1412792983 + timezone: America/New_York + schema: + $ref: "#/components/schemas/Downtime" + description: Update a downtime request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + active: true + disabled: false + end: 1412793983 + id: 1625 + message: Updating downtime end time. + scope: + - env:staging + start: 1412792983 + schema: + $ref: "#/components/schemas/Downtime" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Downtime not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Update a downtime + tags: + - Downtimes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_downtime + /api/v1/events: + get: + description: |- + The event stream can be queried and filtered by time, priority, sources and tags. + + **Notes**: + - If the event you’re querying contains markdown formatting of any kind, + you may see characters such as `%`,`\`,`n` in your output. + + - This endpoint returns a maximum of `1000` most recent results. To return additional results, + identify the last timestamp of the last result and set that as the `end` query time to + paginate the results. You can also use the page parameter to specify which set of `1000` results to return. + operationId: ListEvents + parameters: + - description: POSIX timestamp. + in: query + name: start + required: true + schema: + format: int64 + type: integer + - description: POSIX timestamp. + in: query + name: end + required: true + schema: + format: int64 + type: integer + - description: Priority of your events, either `low` or `normal`. + in: query + name: priority + required: false + schema: + $ref: "#/components/schemas/EventPriority" + - description: A comma separated string of sources. + in: query + name: sources + schema: + type: string + - description: |- + A comma separated list indicating what tags, if any, should be used to filter the list of events. + example: "host:host0" + in: query + name: tags + required: false + schema: + type: string + - description: |- + Set unaggregated to `true` to return all events within the specified [`start`,`end`] timeframe. + Otherwise if an event is aggregated to a parent event with a timestamp outside of the timeframe, + it won't be available in the output. Aggregated events with `is_aggregate=true` in the response will still be returned unless exclude_aggregate is set to `true.` + in: query + name: unaggregated + required: false + schema: + type: boolean + - description: |- + Set `exclude_aggregate` to `true` to only return unaggregated events where `is_aggregate=false` in the response. If the `exclude_aggregate` parameter is set to `true`, + then the unaggregated parameter is ignored and will be `true` by default. + in: query + name: exclude_aggregate + required: false + schema: + type: boolean + - description: |- + By default 1000 results are returned per request. Set page to the number of the page to return with `0` being the first page. The page parameter can only be used + when either unaggregated or exclude_aggregate is set to `true.` + in: query + name: page + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + events: + - alert_type: info + date_happened: 1674842440 + host: "test.host" + id: 123 + id_str: "123" + priority: normal + source_type_name: my_apps + tags: + - "environment:test" + text: "Oh boy!" + title: "Did you hear the news today?" + url: "/event/event?id=123" + status: ok + schema: + $ref: "#/components/schemas/EventListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Get a list of events + tags: + - Events + "x-permission": + operator: OR + permissions: + - events_read + post: + description: |- + This endpoint allows you to post events to the stream. + Tag them, set priority and event aggregate them with other events. + operationId: CreateEvent + requestBody: + content: + application/json: + examples: + default: + value: + priority: normal + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + schema: + $ref: "#/components/schemas/EventCreateRequest" + description: Event request object + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + event: + alert_type: info + date_happened: 1674842440 + id: 123 + id_str: "123" + priority: normal + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + url: "/event/event?id=123" + status: ok + schema: + $ref: "#/components/schemas/EventCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Post an event + tags: + - Events + x-codegen-request-body-name: body + /api/v1/events/{event_id}: + get: + description: |- + This endpoint allows you to query for event details. + + **Note**: If the event you’re querying contains markdown formatting of any kind, + you may see characters such as `%`,`\`,`n` in your output. + operationId: GetEvent + parameters: + - description: The ID of the event. + in: path + name: event_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + event: + alert_type: info + date_happened: 1674842440 + host: "test.host" + id: 123 + id_str: "123" + priority: normal + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + url: "/event/event?id=123" + status: ok + schema: + $ref: "#/components/schemas/EventResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Get an event + tags: + - Events + "x-permission": + operator: OR + permissions: + - events_read + /api/v1/graph/snapshot: + get: + description: |- + Take graph snapshots. Snapshots are PNG images generated by rendering a specified widget in a web page and capturing it once the data is available. The image is then uploaded to cloud storage. + + **Note**: When a snapshot is created, there is some delay before it is available. + operationId: GetGraphSnapshot + parameters: + - description: The metric query. + in: query + name: metric_query + schema: + type: string + x-docs-curl-required: true + - description: The POSIX timestamp of the start of the query in seconds. + in: query + name: start + required: true + schema: + format: int64 + type: integer + - description: The POSIX timestamp of the end of the query in seconds. + in: query + name: end + required: true + schema: + format: int64 + type: integer + - description: A query that adds event bands to the graph. + in: query + name: event_query + required: false + schema: + type: string + - description: |- + A JSON document defining the graph. `graph_def` can be used instead of `metric_query`. + The JSON document uses the [grammar defined here](https://docs.datadoghq.com/graphing/graphing_json/#grammar) + and should be formatted to a single line then URL encoded. + in: query + name: graph_def + required: false + schema: + type: string + - description: A title for the graph. If no title is specified, the graph does not have a title. + in: query + name: title + required: false + schema: + type: string + - description: The height of the graph. If no height is specified, the graph's original height is used. + in: query + name: height + required: false + schema: + format: int64 + type: integer + - description: The width of the graph. If no width is specified, the graph's original width is used. + in: query + name: width + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + metric_query: "avg:system.load.1{*}" + snapshot_url: https://app.datadoghq.com/s/f12345678/aaa-bbb-ccc + schema: + $ref: "#/components/schemas/GraphSnapshot" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Take graph snapshots + tags: + - Snapshots + "x-permission": + operator: OPEN + permissions: [] + /api/v1/host/{host_name}/mute: + post: + description: Mute a host. **Note:** This creates a [Downtime V2](https://docs.datadoghq.com/api/latest/downtimes/#schedule-a-downtime) for the host. + operationId: MuteHost + parameters: + - description: Name of the host to mute. + in: path + name: host_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + end: 1579098130 + message: Muting this host for a test! + override: false + schema: + $ref: "#/components/schemas/HostMuteSettings" + description: Mute a host request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + action: Muted + end: 1579098130 + hostname: test.host + message: Muting this host for a test! + schema: + $ref: "#/components/schemas/HostMuteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid Parameter Error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Mute a host + tags: + - Hosts + x-codegen-request-body-name: body + /api/v1/host/{host_name}/unmute: + post: + description: Unmutes a host. This endpoint takes no JSON arguments. + operationId: UnmuteHost + parameters: + - description: Name of the host to unmute. + in: path + name: host_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + action: Unmuted + hostname: test.host + schema: + $ref: "#/components/schemas/HostMuteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid Parameter Error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Unmute a host + tags: + - Hosts + x-codegen-request-body-name: body + /api/v1/hosts: + get: + description: |- + This endpoint allows searching for hosts by name, alias, or tag. + Hosts live within the past 3 hours are included by default. + Retention is 7 days. + Results are paginated with a max of 1000 results at a time. + **Note:** If the host is an Amazon EC2 instance, `id` is replaced with `aws_id` in the response. + **Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https://docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. + operationId: ListHosts + parameters: + - description: String to filter search results. + in: query + name: filter + required: false + schema: + type: string + - description: Sort hosts by this field. + in: query + name: sort_field + required: false + schema: + type: string + - description: Direction of sort. Options include `asc` and `desc`. + in: query + name: sort_dir + required: false + schema: + type: string + - description: Specify the starting point for the host search results. For example, if you set `count` to 100 and the first 100 results have already been returned, you can set `start` to `101` to get the next 100 results. + in: query + name: start + required: false + schema: + format: int64 + type: integer + - description: Number of hosts to return. Max 1000. + in: query + name: count + required: false + schema: + format: int64 + type: integer + - description: Number of seconds since UNIX epoch from which you want to search your hosts. + in: query + name: from + required: false + schema: + format: int64 + type: integer + - description: Include information on the muted status of hosts and when the mute expires. + in: query + name: include_muted_hosts_data + required: false + schema: + type: boolean + - description: Include additional metadata about the hosts (agent_version, machine, platform, processor, etc.). + in: query + name: include_hosts_metadata + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + host_list: + - apps: + - agent + host_name: "i-deadbeef" + is_muted: false + last_reported_time: 1565000000 + name: "i-hostname" + sources: + - aws + up: true + total_matching: 1 + total_returned: 1 + schema: + $ref: "#/components/schemas/HostListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid Parameter Error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - hosts_read + summary: Get all hosts for your organization + tags: + - Hosts + "x-permission": + operator: OR + permissions: + - hosts_read + /api/v1/hosts/totals: + get: + description: |- + This endpoint returns the total number of active and up hosts in your Datadog account. + Active means the host has reported in the past hour, and up means it has reported in the past two hours. + operationId: GetHostTotals + parameters: + - description: Number of seconds from which you want to get total number of active hosts. + in: query + name: from + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + total_active: 65 + total_up: 42 + schema: + $ref: "#/components/schemas/HostTotals" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid Parameter Error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - hosts_read + summary: Get the total number of active hosts + tags: + - Hosts + "x-permission": + operator: OR + permissions: + - hosts_read + /api/v1/integration/aws: + delete: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** Delete a Datadog-AWS integration matching the specified `account_id` and `role_name parameters`." + operationId: DeleteAWSAccount + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + role_name: "DatadogAWSIntegrationRole" + schema: + $ref: "#/components/schemas/AWSAccountDeleteRequest" + description: AWS request object + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configurations_manage + get: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** List all Datadog-AWS integrations available in your Datadog organization." + operationId: ListAWSAccounts + parameters: + - description: Only return AWS accounts that matches this `account_id`. + in: query + name: account_id + required: false + schema: + type: string + - description: Only return AWS accounts that matches this role_name. + in: query + name: role_name + required: false + schema: + type: string + - description: Only return AWS accounts that matches this `access_key_id`. + in: query + name: access_key_id + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + accounts: + - account_id: "123456789012" + account_specific_namespace_rules: + auto_scaling: false + cspm_resource_collection_enabled: true + excluded_regions: + - us-east-1 + extended_resource_collection_enabled: true + filter_tags: + - "$KEY:$VALUE" + host_tags: + - "$KEY:$VALUE" + metrics_collection_enabled: false + role_name: "DatadogAWSIntegrationRole" + schema: + $ref: "#/components/schemas/AWSAccountListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all AWS integrations + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: |- + **This endpoint is deprecated - use the V2 endpoints instead.** Create a Datadog-Amazon Web Services integration. + Using the `POST` method updates your integration configuration + by adding your new configuration to the existing one in your Datadog organization. + A unique AWS Account ID for role based authentication. + operationId: CreateAWSAccount + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + account_specific_namespace_rules: + auto_scaling: false + opswork: false + cspm_resource_collection_enabled: true + excluded_regions: + - us-east-1 + - us-west-2 + extended_resource_collection_enabled: true + filter_tags: + - "$KEY:$VALUE" + host_tags: + - "$KEY:$VALUE" + metrics_collection_enabled: false + role_name: "DatadogAWSIntegrationRole" + schema: + $ref: "#/components/schemas/AWSAccount" + description: AWS Request Object + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + external_id: abc-123 + schema: + $ref: "#/components/schemas/AWSAccountCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configurations_manage + put: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** Update a Datadog-Amazon Web Services integration." + operationId: UpdateAWSAccount + parameters: + - description: Only return AWS accounts that matches this `account_id`. + in: query + name: account_id + required: false + schema: + type: string + - description: |- + Only return AWS accounts that match this `role_name`. + Required if `account_id` is specified. + in: query + name: role_name + required: false + schema: + type: string + - description: |- + Only return AWS accounts that matches this `access_key_id`. + Required if none of the other two options are specified. + in: query + name: access_key_id + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + account_specific_namespace_rules: + auto_scaling: false + opswork: false + cspm_resource_collection_enabled: true + excluded_regions: + - us-east-1 + - us-west-2 + extended_resource_collection_enabled: true + filter_tags: + - "$KEY:$VALUE" + host_tags: + - "$KEY:$VALUE" + metrics_collection_enabled: false + role_name: "DatadogAWSIntegrationRole" + schema: + $ref: "#/components/schemas/AWSAccount" + description: AWS request object + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/available_namespace_rules: + get: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** List all namespace rules for a given Datadog-AWS integration. This endpoint takes no arguments." + operationId: ListAvailableAWSNamespaces + responses: + "200": + content: + application/json: + examples: + default: + value: + - namespace1 + - namespace2 + - namespace3 + schema: + example: ["namespace1", "namespace2", "namespace3"] + items: + type: string + type: array + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List namespace rules + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + /api/v1/integration/aws/event_bridge: + delete: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** Delete an Amazon EventBridge source." + operationId: DeleteAWSEventBridgeSource + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + event_generator_name: app-alerts-zyxw3210 + region: us-east-1 + schema: + $ref: "#/components/schemas/AWSEventBridgeDeleteRequest" + description: Delete the Amazon EventBridge source with the given name, region, and associated AWS account. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + status: empty + schema: + $ref: "#/components/schemas/AWSEventBridgeDeleteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an Amazon EventBridge source + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** Get all Amazon EventBridge sources." + operationId: ListAWSEventBridgeSources + parameters: [] + responses: + "200": + content: + application/json: + examples: + default: + value: + accounts: + - accountId: "123456789012" + eventHubs: + - name: app-alerts-zyxw3210 + region: us-east-1 + tags: + - "$KEY:$VALUE" + isInstalled: true + schema: + $ref: "#/components/schemas/AWSEventBridgeListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Amazon EventBridge sources + tags: + - AWS Integration + "x-permission": + operator: OPEN + permissions: [] + post: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** Create an Amazon EventBridge source." + operationId: CreateAWSEventBridgeSource + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + create_event_bus: true + event_generator_name: app-alerts + region: us-east-1 + schema: + $ref: "#/components/schemas/AWSEventBridgeCreateRequest" + description: Create an Amazon EventBridge source for an AWS account with a given name and region. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + event_source_name: app-alerts-zyxw3210 + has_bus: true + region: us-east-1 + status: created + schema: + $ref: "#/components/schemas/AWSEventBridgeCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an Amazon EventBridge source + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/aws/filtering: + delete: + deprecated: true + description: Delete a tag filtering entry. + operationId: DeleteAWSTagFilter + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "FAKEAC0FAKEAC2FAKEAC" + namespace: elb + schema: + $ref: "#/components/schemas/AWSTagFilterDeleteRequest" + description: Delete a tag filtering entry for a given AWS account and `dd-aws` namespace. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a tag filtering entry + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + get: + deprecated: true + description: Get all AWS tag filters. + operationId: ListAWSTagFilters + parameters: + - description: Only return AWS filters that matches this `account_id`. + in: query + name: account_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + filters: + - namespace: elb + tag_filter_str: "prod*" + schema: + $ref: "#/components/schemas/AWSTagFilterListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all AWS tag filters + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: Set an AWS tag filter. + operationId: CreateAWSTagFilter + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + namespace: elb + tag_filter_str: "prod*" + schema: + $ref: "#/components/schemas/AWSTagFilterCreateRequest" + description: |- + Set an AWS tag filter using an `aws_account_identifier`, `namespace`, and filtering string. + Namespace options are `application_elb`, `elb`, `lambda`, `network_elb`, `rds`, `sqs`, and `custom`. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Set an AWS tag filter + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/generate_new_external_id: + put: + deprecated: true + description: "**This endpoint is deprecated - use the V2 endpoints instead.** Generate a new AWS external ID for a given AWS account ID and role name pair." + operationId: CreateNewAWSExternalID + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "123456789012" + role_name: "DatadogAWSIntegrationRole" + schema: + $ref: "#/components/schemas/AWSAccount" + description: |- + Your Datadog role delegation name. + For more information about your AWS account Role name, + see the [Datadog AWS integration configuration info](https://docs.datadoghq.com/integrations/amazon_web_services/#setup). + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + external_id: abc-123 + schema: + $ref: "#/components/schemas/AWSAccountCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Generate a new external ID + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/logs: + delete: + deprecated: true + description: >- + **This endpoint is deprecated.** Delete a Datadog-AWS logs configuration by removing the specific Lambda ARN associated with a given AWS account. + operationId: DeleteAWSLambdaARN + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "1234567" + lambda_arn: "arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest" + schema: + $ref: "#/components/schemas/AWSAccountAndLambdaRequest" + description: Delete AWS Lambda ARN request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an AWS Logs integration + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + x-sunset: "2027-02-20" + get: + deprecated: true + description: >- + List all Datadog-AWS Logs integrations configured in your Datadog account. + operationId: ListAWSLogsIntegrations + responses: + "200": + content: + application/json: + examples: + default: + value: + - account_id: "123456789101" + lambdas: [] + services: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + schema: + example: [{"account_id": "123456789101", "lambdas": [], "services": ["s3", "elb", "elbv2", "cloudfront", "redshift", "lambda"]}] + items: + $ref: "#/components/schemas/AWSLogsListResponse" + type: array + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all AWS Logs integrations + tags: + - AWS Logs Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: >- + **This endpoint is deprecated.** Attach the Lambda ARN of the Lambda created for the Datadog-AWS log collection to your AWS account ID to enable log collection. + operationId: CreateAWSLambdaARN + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "1234567" + lambda_arn: "arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest" + schema: + $ref: "#/components/schemas/AWSAccountAndLambdaRequest" + description: AWS Log Lambda Async request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add AWS Log Lambda ARN + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + x-sunset: "2027-02-20" + /api/v1/integration/aws/logs/check_async: + post: + deprecated: true + description: |- + **This endpoint is deprecated.** Test if permissions are present to add a log-forwarding triggers for the given services and AWS account. The input + is the same as for Enable an AWS service log collection. Subsequent requests will always repeat the above, so this + endpoint can be polled intermittently instead of blocking. + + - Returns a status of 'created' when it's checking if the Lambda exists in the account. + - Returns a status of 'waiting' while checking. + - Returns a status of 'checked and ok' if the Lambda exists. + - Returns a status of 'error' if the Lambda does not exist. + operationId: CheckAWSLogsLambdaAsync + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "1234567" + lambda_arn: "arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest" + schema: + $ref: "#/components/schemas/AWSAccountAndLambdaRequest" + description: Check AWS Log Lambda Async request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + errors: [] + status: created + schema: + $ref: "#/components/schemas/AWSLogsAsyncResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Check that an AWS Lambda Function exists + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_read + x-sunset: "2027-02-20" + /api/v1/integration/aws/logs/services: + get: + deprecated: true + description: >- + **This endpoint is deprecated - use the V2 endpoint instead.** Get the list of current AWS services that Datadog offers automatic log collection. Use returned service IDs with the services parameter for the Enable an AWS service log collection API endpoint. + operationId: ListAWSLogsServices + responses: + "200": + content: + application/json: + examples: + default: + value: + - id: s3 + label: S3 Access Logs + - id: elb + label: Classic ELB Access Logs + schema: + example: [{"id": "s3", "label": "S3 Access Logs"}, {"id": "elb", "label": "Classic ELB Access Logs"}, {"id": "elbv2", "label": "Application ELB Access Logs"}, {"id": "cloudfront", "label": "CloudFront Access Logs"}, {"id": "redshift", "label": "Redshift Logs"}, {"id": "lambda", "label": "Lambda Cloudwatch Logs"}] + items: + $ref: "#/components/schemas/AWSLogsListServicesResponse" + type: array + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get list of AWS log ready services + tags: + - AWS Logs Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: >- + Enable automatic log collection for a list of services. This should be run after running `CreateAWSLambdaARN` to save the configuration. + operationId: EnableAWSLogServices + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "1234567" + services: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + schema: + $ref: "#/components/schemas/AWSLogsServicesRequest" + description: Enable AWS Log Services request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Enable an AWS Logs integration + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/logs/services_async: + post: + deprecated: true + description: |- + **This endpoint is deprecated.** Test if permissions are present to add log-forwarding triggers for the + given services and AWS account. Input is the same as for `EnableAWSLogServices`. + Done async, so can be repeatedly polled in a non-blocking fashion until + the async request completes. + + - Returns a status of `created` when it's checking if the permissions exists + in the AWS account. + - Returns a status of `waiting` while checking. + - Returns a status of `checked and ok` if the Lambda exists. + - Returns a status of `error` if the Lambda does not exist. + operationId: CheckAWSLogsServicesAsync + requestBody: + content: + application/json: + examples: + default: + value: + account_id: "1234567" + services: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + schema: + $ref: "#/components/schemas/AWSLogsServicesRequest" + description: Check AWS Logs Async Services request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + errors: [] + status: created + schema: + $ref: "#/components/schemas/AWSLogsAsyncResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Check permissions for log services + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_read + x-sunset: "2027-02-20" + /api/v1/integration/azure: + delete: + description: |- + Delete a given Datadog-Azure integration from your Datadog account. + operationId: DeleteAzureIntegration + requestBody: + content: + application/json: + examples: + default: + value: + client_id: "testc7f6-1234-5678-9101-3fcbf464test" + tenant_name: "testc44-1234-5678-9101-cc00736ftest" + schema: + $ref: "#/components/schemas/AzureAccount" + description: Delete a given Datadog-Azure integration request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an Azure integration + tags: + - Azure Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - azure_configurations_manage + get: + description: |- + List all Datadog-Azure integrations configured in your Datadog account. + operationId: ListAzureIntegration + responses: + "200": + content: + application/json: + examples: + default: + value: + - client_id: testc7f6-1234-5678-9101-3fcbf464test + errors: [] + host_filters: "key:value,filter:example" + tenant_name: testc44-1234-5678-9101-cc00736ftest + schema: + $ref: "#/components/schemas/AzureAccountListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all Azure integrations + tags: + - Azure Integration + "x-permission": + operator: OR + permissions: + - azure_configuration_read + post: + description: |- + Create a Datadog-Azure integration. + + Using the `POST` method updates your integration configuration by adding your new + configuration to the existing one in your Datadog organization. + + Using the `PUT` method updates your integration configuration by replacing your + current configuration with the new one sent to your Datadog organization. + operationId: CreateAzureIntegration + requestBody: + content: + application/json: + examples: + default: + value: + app_service_plan_filters: "key:value,filter:example" + automute: true + client_id: "testc7f6-1234-5678-9101-3fcbf464test" + client_secret: "TestingRh2nx664kUy5dIApvM54T4AtO" + container_app_filters: "key:value,filter:example" + cspm_enabled: true + custom_metrics_enabled: true + host_filters: "key:value,filter:example" + metrics_enabled: true + resource_collection_enabled: true + tenant_name: "testc44-1234-5678-9101-cc00736ftest" + schema: + $ref: "#/components/schemas/AzureAccount" + description: Create a Datadog-Azure integration for your Datadog account request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an Azure integration + tags: + - Azure Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - azure_configurations_manage + put: + description: |- + Update a Datadog-Azure integration. Requires an existing `tenant_name` and `client_id`. + Any other fields supplied will overwrite existing values. To overwrite `tenant_name` or `client_id`, + use `new_tenant_name` and `new_client_id`. To leave a field unchanged, do not supply that field in the payload. + operationId: UpdateAzureIntegration + requestBody: + content: + application/json: + examples: + default: + value: + automute: true + client_id: "testc7f6-1234-5678-9101-3fcbf464test" + client_secret: "TestingRh2nx664kUy5dIApvM54T4AtO" + cspm_enabled: true + host_filters: "key:value,filter:example" + metrics_enabled: true + new_client_id: "new1c7f6-1234-5678-9101-3fcbf464test" + new_tenant_name: "new1c44-1234-5678-9101-cc00736ftest" + resource_collection_enabled: true + tenant_name: "testc44-1234-5678-9101-cc00736ftest" + schema: + $ref: "#/components/schemas/AzureAccount" + description: Update a Datadog-Azure integration request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an Azure integration + tags: + - Azure Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - azure_configuration_edit + /api/v1/integration/azure/host_filters: + post: + description: |- + Update the defined list of host filters for a given Datadog-Azure integration. + operationId: UpdateAzureHostFilters + requestBody: + content: + application/json: + examples: + default: + value: + client_id: "testc7f6-1234-5678-9101-3fcbf464test" + host_filters: "key:value,filter:example" + tenant_name: "testc44-1234-5678-9101-cc00736ftest" + schema: + $ref: "#/components/schemas/AzureAccount" + description: Update a Datadog-Azure integration's host filters request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Azure integration host filters + tags: + - Azure Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - azure_configuration_edit + /api/v1/integration/gcp: + delete: + deprecated: true + description: |- + This endpoint is deprecated – use the V2 endpoints instead. Delete a given Datadog-GCP integration. + operationId: DeleteGCPIntegration + requestBody: + content: + application/json: + examples: + default: + value: + client_email: "test@sandbox.iam.gserviceaccount.com" + client_id: "123456712345671234567" + project_id: "datadog-apitest" + schema: + $ref: "#/components/schemas/GCPAccount" + description: Delete a given Datadog-GCP integration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a GCP integration + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configurations_manage + get: + deprecated: true + description: |- + This endpoint is deprecated – use the V2 endpoints instead. List all Datadog-GCP integrations configured in your Datadog account. + operationId: ListGCPIntegration + responses: + "200": + content: + application/json: + examples: + default: + value: + - client_email: test@example.com + client_id: "123456712345671234567" + errors: [] + project_id: datadog-apitest + type: service_account + schema: + $ref: "#/components/schemas/GCPAccountListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all GCP integrations + tags: + - GCP Integration + "x-permission": + operator: OR + permissions: + - gcp_configuration_read + post: + deprecated: true + description: |- + This endpoint is deprecated – use the V2 endpoints instead. Create a Datadog-GCP integration. + operationId: CreateGCPIntegration + requestBody: + content: + application/json: + examples: + default: + value: + auth_provider_x509_cert_url: "https://www.googleapis.com/oauth2/v1/certs" + auth_uri: "https://accounts.google.com/o/oauth2/auth" + client_email: "test@sandbox.iam.gserviceaccount.com" + client_id: "123456712345671234567" + client_x509_cert_url: "https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL" + host_filters: "$KEY1:$VALUE1,$KEY2:$VALUE2" + is_cspm_enabled: true + private_key: "private_key" + private_key_id: "123456789abcdefghi123456789abcdefghijklm" + project_id: "datadog-apitest" + resource_collection_enabled: true + token_uri: "https://accounts.google.com/o/oauth2/token" + type: "service_account" + schema: + $ref: "#/components/schemas/GCPAccount" + description: Create a Datadog-GCP integration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a GCP integration + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configurations_manage + put: + deprecated: true + description: |- + This endpoint is deprecated – use the V2 endpoints instead. Update a Datadog-GCP integrations host_filters and/or auto-mute. + Requires a `project_id` and `client_email`, however these fields cannot be updated. + If you need to update these fields, delete and use the create (`POST`) endpoint. + The unspecified fields will keep their original values. + operationId: UpdateGCPIntegration + requestBody: + content: + application/json: + examples: + default: + value: + client_email: "test@sandbox.iam.gserviceaccount.com" + client_id: "123456712345671234567" + host_filters: "$KEY1:$VALUE1,$KEY2:$VALUE2" + is_cspm_enabled: true + project_id: "datadog-apitest" + resource_collection_enabled: true + schema: + $ref: "#/components/schemas/GCPAccount" + description: Update a Datadog-GCP integration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a GCP integration + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configuration_edit + /api/v1/integration/pagerduty/configuration/services: + post: + description: Create a new service object in the PagerDuty integration. + operationId: CreatePagerDutyIntegrationService + requestBody: + content: + application/json: + examples: + default: + value: + service_key: "your-pagerduty-service-key" + service_name: "my-pagerduty-service" + schema: + $ref: "#/components/schemas/PagerDutyService" + description: Create a new service object request body. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + service_name: test-service + schema: + $ref: "#/components/schemas/PagerDutyServiceName" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a new service object + tags: + - PagerDuty Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/pagerduty/configuration/services/{service_name}: + delete: + description: Delete a single service object in the Datadog-PagerDuty integration. + operationId: DeletePagerDutyIntegrationService + parameters: + - description: The service name + in: path + name: service_name + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a single service object + tags: + - PagerDuty Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: |- + Get service name in the Datadog-PagerDuty integration. + operationId: GetPagerDutyIntegrationService + parameters: + - description: The service name. + in: path + name: service_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + service_name: test-service + schema: + $ref: "#/components/schemas/PagerDutyServiceName" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a single service object + tags: + - PagerDuty Integration + "x-permission": + operator: OR + permissions: + - integrations_read + put: + description: Update a single service object in the Datadog-PagerDuty integration. + operationId: UpdatePagerDutyIntegrationService + parameters: + - description: The service name + in: path + name: service_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + service_key: "updated-pagerduty-service-key" + schema: + $ref: "#/components/schemas/PagerDutyServiceKey" + description: Update an existing service object request body. + required: true + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a single service object + tags: + - PagerDuty Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/slack/configuration/accounts/{account_name}/channels: + get: + description: Get a list of all channels configured for your Datadog-Slack integration. + operationId: GetSlackIntegrationChannels + parameters: + - $ref: "#/components/parameters/SlackAccountNamePathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + - display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: "#test-channel" + schema: + $ref: "#/components/schemas/SlackIntegrationChannels" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all channels in a Slack integration + tags: + - Slack Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Add a channel to your Datadog-Slack integration. + operationId: CreateSlackIntegrationChannel + parameters: + - $ref: "#/components/parameters/SlackAccountNamePathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: "#general" + schema: + $ref: "#/components/schemas/SlackIntegrationChannel" + description: Payload describing Slack channel to be created + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: "#test-channel" + schema: + $ref: "#/components/schemas/SlackIntegrationChannel" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Slack integration channel + tags: + - Slack Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name}: + delete: + description: Remove a channel from your Datadog-Slack integration. + operationId: RemoveSlackIntegrationChannel + parameters: + - $ref: "#/components/parameters/SlackAccountNamePathParameter" + - $ref: "#/components/parameters/SlackChannelNamePathParameter" + responses: + "204": + description: The channel was removed successfully. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Remove a Slack integration channel + tags: + - Slack Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a channel configured for your Datadog-Slack integration. + operationId: GetSlackIntegrationChannel + parameters: + - $ref: "#/components/parameters/SlackAccountNamePathParameter" + - $ref: "#/components/parameters/SlackChannelNamePathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: "#test-channel" + schema: + $ref: "#/components/schemas/SlackIntegrationChannel" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Slack integration channel + tags: + - Slack Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update a channel used in your Datadog-Slack integration. + operationId: UpdateSlackIntegrationChannel + parameters: + - $ref: "#/components/parameters/SlackAccountNamePathParameter" + - $ref: "#/components/parameters/SlackChannelNamePathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: "#general" + schema: + $ref: "#/components/schemas/SlackIntegrationChannel" + description: Payload describing fields and values to be updated. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: "#test-channel" + schema: + $ref: "#/components/schemas/SlackIntegrationChannel" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Slack integration channel + tags: + - Slack Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/webhooks/configuration/custom-variables: + post: + description: Creates an endpoint with the name ``. + operationId: CreateWebhooksIntegrationCustomVariable + requestBody: + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + value: CUSTOM_VARIABLE_VALUE + schema: + $ref: "#/components/schemas/WebhooksIntegrationCustomVariable" + description: Define a custom variable request body. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + schema: + $ref: "#/components/schemas/WebhooksIntegrationCustomVariableResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a custom variable + tags: + - Webhooks Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name}: + delete: + description: Deletes the endpoint with the name ``. + operationId: DeleteWebhooksIntegrationCustomVariable + parameters: + - description: The name of the custom variable. + in: path + name: custom_variable_name + required: true + schema: + type: string + responses: + "200": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a custom variable + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: |- + Shows the content of the custom variable with the name ``. + + If the custom variable is secret, the value does not return in the + response payload. + operationId: GetWebhooksIntegrationCustomVariable + parameters: + - description: The name of the custom variable. + in: path + name: custom_variable_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + schema: + $ref: "#/components/schemas/WebhooksIntegrationCustomVariableResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a custom variable + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - integrations_read + put: + description: Updates the endpoint with the name ``. + operationId: UpdateWebhooksIntegrationCustomVariable + parameters: + - description: The name of the custom variable. + in: path + name: custom_variable_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + value: CUSTOM_VARIABLE_VALUE + schema: + $ref: "#/components/schemas/WebhooksIntegrationCustomVariableUpdateRequest" + description: Update an existing custom variable request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + schema: + $ref: "#/components/schemas/WebhooksIntegrationCustomVariableResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a custom variable + tags: + - Webhooks Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/integration/webhooks/configuration/webhooks: + post: + description: Creates an endpoint with the name ``. + operationId: CreateWebhooksIntegration + requestBody: + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: "#/components/schemas/WebhooksIntegration" + description: Create a webhooks integration request body. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: "#/components/schemas/WebhooksIntegration" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - create_webhooks + summary: Create a webhooks integration + tags: + - Webhooks Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - create_webhooks + /api/v1/integration/webhooks/configuration/webhooks/{webhook_name}: + delete: + description: Deletes the endpoint with the name ``. This action cannot be undone. + operationId: DeleteWebhooksIntegration + parameters: + - description: The name of the webhook. + in: path + name: webhook_name + required: true + schema: + type: string + responses: + "200": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a webhook + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Gets the content of the webhook with the name ``. + operationId: GetWebhooksIntegration + parameters: + - description: The name of the webhook. + in: path + name: webhook_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: "#/components/schemas/WebhooksIntegration" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a webhook integration + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - integrations_read + put: + description: Updates the endpoint with the name ``. + operationId: UpdateWebhooksIntegration + parameters: + - description: The name of the webhook. + in: path + name: webhook_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: "#/components/schemas/WebhooksIntegrationUpdateRequest" + description: Update an existing Datadog-Webhooks integration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: "#/components/schemas/WebhooksIntegration" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a webhook + tags: + - Webhooks Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v1/logs-queries/list: + post: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + **If you are considering archiving logs for your organization, + consider use of the Datadog archive capabilities instead of the log list API. + See [Datadog Logs Archive documentation][2].** + + **Note**: This endpoint is enabled by default for logs customers. To disable it, contact [Datadog support](https://docs.datadoghq.com/help/). + + [1]: /logs/guide/collect-multiple-logs-with-pagination + [2]: https://docs.datadoghq.com/logs/archives + operationId: ListLogs + requestBody: + content: + application/json: + examples: + default: + value: + index: "retention-3,retention-15" + limit: 25 + query: "service:web* AND @http.status_code:[200 TO 299]" + sort: desc + time: + from: "2020-02-02T02:02:02.202Z" + to: "2020-02-20T02:02:02.202Z" + schema: + $ref: "#/components/schemas/LogsListRequest" + description: Logs filter + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + logs: + - content: + attributes: + customAttribute: 123 + host: i-0123 + service: test-service + tags: + - team:A + timestamp: "2020-05-26T13:36:14Z" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + schema: + $ref: "#/components/schemas/LogsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Search logs + tags: + - Logs + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_read_data + /api/v1/logs/config/index-order: + get: + description: |- + Get the current order of your log indexes. This endpoint takes no JSON arguments. + operationId: GetLogsIndexOrder + responses: + "200": + content: + application/json: + examples: + default: + value: + index_names: + - main + - payments + - web + schema: + $ref: "#/components/schemas/LogsIndexesOrder" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get indexes order + tags: + - Logs Indexes + "x-permission": + operator: OR + permissions: + - logs_read_config + put: + description: |- + This endpoint updates the index order of your organization. + It returns the index order object passed in the request body when the request is successful. + operationId: UpdateLogsIndexOrder + requestBody: + content: + application/json: + examples: + default: + value: + index_names: + - main + - payments + - web + schema: + $ref: "#/components/schemas/LogsIndexesOrder" + description: Object containing the new ordered list of index names + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + index_names: + - main + - payments + - web + schema: + $ref: "#/components/schemas/LogsIndexesOrder" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update indexes order + tags: + - Logs Indexes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_modify_indexes + /api/v1/logs/config/indexes: + get: + description: |- + The Index object describes the configuration of a log index. + This endpoint returns an array of the `LogIndex` objects of your organization. + operationId: ListLogIndexes + responses: + "200": + content: + application/json: + examples: + default: + value: + indexes: + - daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: "#/components/schemas/LogsIndexListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all indexes + tags: + - Logs Indexes + "x-permission": + operator: OR + permissions: + - logs_read_config + post: + description: |- + Creates a new index. Returns the Index object passed in the request body when the request is successful. + operationId: CreateLogsIndex + requestBody: + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + daily_limit_warning_threshold_percentage: 70 + exclusion_filters: + - filter: + query: "*" + sample_rate: 1.0 + is_enabled: true + name: payment + filter: + query: source:python + name: main + num_retention_days: 15 + schema: + $ref: "#/components/schemas/LogsIndex" + description: Object containing the new index. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: "#/components/schemas/LogsIndex" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Invalid Parameter Error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPILimitReachedResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an index + tags: + - Logs Indexes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_modify_indexes + /api/v1/logs/config/indexes/{name}: + delete: + description: |- + Delete an existing index from your organization. Index deletions are permanent and cannot be reverted. + You cannot recreate an index with the same name as deleted ones. + operationId: DeleteLogsIndex + parameters: + - description: Name of the log index. + in: path + name: name + required: true + schema: + type: string + responses: + "200": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an index + tags: + - Logs Indexes + "x-permission": + operator: OR + permissions: + - logs_modify_indexes + get: + description: |- + Get one log index from your organization. This endpoint takes no JSON arguments. + operationId: GetLogsIndex + parameters: + - description: Name of the log index. + in: path + name: name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: "#/components/schemas/LogsIndex" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an index + tags: + - Logs Indexes + "x-permission": + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update an index as identified by its name. + Returns the Index object passed in the request body when the request is successful. + + Using the `PUT` method updates your index's configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. + operationId: UpdateLogsIndex + parameters: + - description: Name of the log index. + in: path + name: name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + daily_limit_warning_threshold_percentage: 70 + disable_daily_limit: false + exclusion_filters: + - filter: + query: "*" + sample_rate: 1.0 + is_enabled: true + name: payment + filter: + query: source:python + num_retention_days: 15 + schema: + $ref: "#/components/schemas/LogsIndexUpdateRequest" + description: Object containing the new `LogsIndexUpdateRequest`. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: "#/components/schemas/LogsIndex" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Invalid Parameter Error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Too Many Requests + summary: Update an index + tags: + - Logs Indexes + x-codegen-request-body-name: body + /api/v1/logs/config/pipeline-order: + get: + description: |- + Get the current order of your pipelines. + This endpoint takes no JSON arguments. + operationId: GetLogsPipelineOrder + responses: + "200": + content: + application/json: + examples: + default: + value: + pipeline_ids: + - tags + - org_ids + - products + schema: + $ref: "#/components/schemas/LogsPipelinesOrder" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get pipeline order + tags: + - Logs Pipelines + "x-permission": + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update the order of your pipelines. Since logs are processed sequentially, reordering a pipeline may change + the structure and content of the data processed by other pipelines and their processors. + + **Note**: Using the `PUT` method updates your pipeline order by replacing your current order + with the new one sent to your Datadog organization. + operationId: UpdateLogsPipelineOrder + requestBody: + content: + application/json: + examples: + default: + value: + pipeline_ids: + - tags + - org_ids + - products + schema: + $ref: "#/components/schemas/LogsPipelinesOrder" + description: Object containing the new ordered list of pipeline IDs. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + pipeline_ids: + - tags + - org_ids + - products + schema: + $ref: "#/components/schemas/LogsPipelinesOrder" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update pipeline order + tags: + - Logs Pipelines + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_pipelines + /api/v1/logs/config/pipelines: + get: + description: |- + Get all pipelines from your organization. + This endpoint takes no JSON arguments. + operationId: ListLogsPipelines + responses: + "200": + content: + application/json: + examples: + default: + value: + - filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: "#/components/schemas/LogsPipelineList" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all pipelines + tags: + - Logs Pipelines + "x-permission": + operator: OR + permissions: + - logs_read_config + post: + description: Create a pipeline in your organization. + operationId: CreateLogsPipeline + requestBody: + content: + application/json: + examples: + default: + value: + filter: + query: source:python + is_enabled: true + name: My Pipeline + processors: [] + schema: + $ref: "#/components/schemas/LogsPipeline" + description: Definition of the new pipeline. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: "#/components/schemas/LogsPipeline" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a pipeline + tags: + - Logs Pipelines + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_pipelines + /api/v1/logs/config/pipelines/{pipeline_id}: + delete: + description: |- + Delete a given pipeline from your organization. + This endpoint takes no JSON arguments. + operationId: DeleteLogsPipeline + parameters: + - description: ID of the pipeline to delete. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a pipeline + tags: + - Logs Pipelines + "x-permission": + operator: OR + permissions: + - logs_write_pipelines + get: + description: |- + Get a specific pipeline from your organization. + This endpoint takes no JSON arguments. + operationId: GetLogsPipeline + parameters: + - description: ID of the pipeline to get. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: "#/components/schemas/LogsPipeline" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a pipeline + tags: + - Logs Pipelines + "x-permission": + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update a given pipeline configuration to change it’s processors or their order. + + **Note**: Using this method updates your pipeline configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. + operationId: UpdateLogsPipeline + parameters: + - description: ID of the pipeline to delete. + in: path + name: pipeline_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + filter: + query: source:python + is_enabled: true + name: My Pipeline + processors: [] + schema: + $ref: "#/components/schemas/LogsPipeline" + description: New definition of the pipeline. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: "#/components/schemas/LogsPipeline" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/LogsAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a pipeline + tags: + - Logs Pipelines + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_pipelines + /api/v1/metrics: + get: + description: Get the list of actively reporting metrics from a given time until now. + operationId: ListActiveMetrics + parameters: + - description: Seconds since the Unix epoch. + in: query + name: from + required: true + schema: + format: int64 + type: integer + - description: |- + Hostname for filtering the list of metrics returned. + If set, metrics retrieved are those with the corresponding hostname tag. + in: query + name: host + required: false + schema: + type: string + - description: |- + Filter metrics that have been submitted with the given tags. Supports boolean and wildcard expressions. + Cannot be combined with other filters. + example: "env IN (staging,test) AND service:web" + in: query + name: tag_filter + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + from: "1567816237" + metrics: + - system.cpu.idle + - system.load.1 + schema: + $ref: "#/components/schemas/MetricsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get active metrics list + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + /api/v1/metrics/{metric_name}: + get: + description: Get metadata about a specific metric. + operationId: GetMetricMetadata + parameters: + - description: Name of the metric for which to get metadata. + in: path + name: metric_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + description: Number of requests received. + per_unit: second + type: count + unit: byte + schema: + $ref: "#/components/schemas/MetricMetadata" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get metric metadata + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + put: + description: |- + Edit metadata of a specific metric. Find out more about [supported types](https://docs.datadoghq.com/developers/metrics). + operationId: UpdateMetricMetadata + parameters: + - description: Name of the metric for which to edit metadata. + in: path + name: metric_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: Number of requests received. + per_unit: second + type: count + unit: byte + schema: + $ref: "#/components/schemas/MetricMetadata" + description: New metadata. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + description: Number of requests received. + per_unit: second + type: count + unit: byte + schema: + $ref: "#/components/schemas/MetricMetadata" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit metric metadata + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metrics_metadata_write + /api/v1/monitor: + get: + description: |- + Get all monitors from your organization. + operationId: ListMonitors + parameters: + - description: |- + When specified, shows additional information about the group states. + Choose one or more from `all`, `alert`, `warn`, and `no data`. + in: query + name: group_states + required: false + schema: + example: alert + type: string + - description: A string to filter monitors by name. + in: query + name: name + required: false + schema: + type: string + - description: |- + A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope. + For example, `host:host0`. + in: query + name: tags + required: false + schema: + example: "host:host0" + type: string + - description: |- + A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors. + Tags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`. + in: query + name: monitor_tags + required: false + schema: + example: "service:my-app" + type: string + - description: If this argument is set to true, then the returned data includes all current active downtimes for each monitor. + in: query + name: with_downtimes + required: false + schema: + type: boolean + - description: Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty. + in: query + name: id_offset + required: false + schema: + format: int64 + type: integer + - description: The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination. + in: query + name: page + required: false + schema: + example: 0 + format: int64 + type: integer + - description: The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100. + in: query + name: page_size + required: false + schema: + default: 100 + example: 20 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + - id: 123 + message: "You may need to add web hosts if this is consistently high." + name: "My monitor" + options: + no_data_timeframe: 20 + notify_no_data: true + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + - "frontend" + type: "query alert" + schema: + description: An array of monitor objects. + items: + $ref: "#/components/schemas/Monitor" + type: array + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all monitors + tags: + - Monitors + x-pagination: + limitParam: page_size + pageParam: page + "x-permission": + operator: OR + permissions: + - monitors_read + post: + description: |- + Create a monitor using the specified options. + + #### Monitor Types + + The type of monitor chosen from: + + - anomaly: `query alert` + - APM: `query alert` or `trace-analytics alert` + - composite: `composite` + - custom: `service check` + - forecast: `query alert` + - host: `service check` + - integration: `query alert` or `service check` + - live process: `process alert` + - logs: `log alert` + - metric: `query alert` + - network: `service check` + - outlier: `query alert` + - process: `service check` + - rum: `rum alert` + - SLO: `slo alert` + - watchdog: `event-v2 alert` + - event-v2: `event-v2 alert` + - audit: `audit alert` + - error-tracking: `error-tracking alert` + - database-monitoring: `database-monitoring alert` + - network-performance: `network-performance alert` + - cloud cost: `cost alert` + - network-path: `network-path alert` + + **Notes**: + - Synthetic monitors are created through the Synthetics API. See the [Synthetics API](https://docs.datadoghq.com/api/latest/synthetics/) documentation for more information. + - Log monitors require an unscoped App Key. + + #### Query Types + + ##### Metric Alert Query + + Example: `time_aggr(time_window):space_aggr:metric{tags} [by {key}] operator #` + + - `time_aggr`: avg, sum, max, min, change, or pct_change + - `time_window`: `last_#m` (with `#` between 1 and 10080 depending on the monitor type) or `last_#h`(with `#` between 1 and 168 depending on the monitor type) or `last_1d`, or `last_1w` + - `space_aggr`: avg, sum, min, or max + - `tags`: one or more tags (comma-separated), or * + - `key`: a 'key' in key:value tag syntax; defines a separate alert for each tag in the group (multi-alert) + - `operator`: <, <=, >, >=, ==, or != + - `#`: an integer or decimal number used to set the threshold + + To use a dynamic threshold on a metric monitor with a formula query, replace `#` with the `threshold` keyword + (for example, `... > threshold`) and provide the threshold as a query via `critical_query` on `options.thresholds`. + This feature is in preview. + + If you are using the `_change_` or `_pct_change_` time aggregator, instead use `change_aggr(time_aggr(time_window), + timeshift):space_aggr:metric{tags} [by {key}] operator #` with: + + - `change_aggr` change, pct_change + - `time_aggr` avg, sum, max, min [Learn more](https://docs.datadoghq.com/monitors/create/types/#define-the-conditions) + - `time_window` last\_#m (between 1 and 2880 depending on the monitor type), last\_#h (between 1 and 48 depending on the monitor type), or last_#d (1 or 2) + - `timeshift` #m_ago (5, 10, 15, or 30), #h_ago (1, 2, or 4), or 1d_ago + + Use this to create an outlier monitor using the following query: + `avg(last_30m):outliers(avg:system.cpu.user{role:es-events-data} by {host}, 'dbscan', 7) > 0` + + ##### Service Check Query + + Example: `"check".over(tags).last(count).by(group).count_by_status()` + + - `check` name of the check, for example `datadog.agent.up` + - `tags` one or more quoted tags (comma-separated), or "*". for example: `.over("env:prod", "role:db")`; `over` cannot be blank. + - `count` must be at greater than or equal to your max threshold (defined in the `options`). It is limited to 100. + For example, if you've specified to notify on 1 critical, 3 ok, and 2 warn statuses, `count` should be at least 3. + - `group` must be specified for check monitors. Per-check grouping is already explicitly known for some service checks. + For example, Postgres integration monitors are tagged by `db`, `host`, and `port`, and Network monitors by `host`, `instance`, and `url`. See [Service Checks](https://docs.datadoghq.com/api/latest/service-checks/) documentation for more information. + + ##### Event Alert Query + + **Note:** The Event Alert Query has been replaced by the Event V2 Alert Query. For more information, see the [Event Migration guide](https://docs.datadoghq.com/service_management/events/guides/migrating_to_new_events_features/). + + ##### Event V2 Alert Query + + Example: `events(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### Process Alert Query + + Example: `processes(search).over(tags).rollup('count').last(timeframe) operator #` + + - `search` free text search string for querying processes. + Matching processes match results on the [Live Processes](https://docs.datadoghq.com/infrastructure/process/?tab=linuxwindows) page. + - `tags` one or more tags (comma-separated) + - `timeframe` the timeframe to roll up the counts. Examples: 10m, 4h. Supported timeframes: s, m, h and d + - `operator` <, <=, >, >=, ==, or != + - `#` an integer or decimal number used to set the threshold + + ##### Logs Alert Query + + Example: `logs(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `index_name` For multi-index organizations, the log index in which the request is performed. + - `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### Composite Query + + Example: `12345 && 67890`, where `12345` and `67890` are the IDs of non-composite monitors + + * `name` [*required*, *default* = **dynamic, based on query**]: The name of the alert. + * `message` [*required*, *default* = **dynamic, based on query**]: A message to include with notifications for this monitor. + Email notifications can be sent to specific users by using the same '@username' notation as events. + * `tags` [*optional*, *default* = **empty list**]: A list of tags to associate with your monitor. + When getting all monitor details via the API, use the `monitor_tags` argument to filter results by these tags. + It is only available via the API and isn't visible or editable in the Datadog UI. + + ##### SLO Alert Query + + Example: `error_budget("slo_id").over("time_window") operator #` + + - `slo_id`: The alphanumeric SLO ID of the SLO you are configuring the alert for. + - `time_window`: The time window of the SLO target you wish to alert on. Valid options: `7d`, `30d`, `90d`. + - `operator`: `>=` or `>` + + ##### Audit Alert Query + + Example: `audits(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### CI Pipelines Alert Query + + Example: `ci-pipelines(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### CI Tests Alert Query + + Example: `ci-tests(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### Error Tracking Alert Query + + "New issue" example: `error-tracking(query).source(issue_source).new().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #` + "High impact issue" example: `error-tracking(query).source(issue_source).impact().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `issue_source` The issue source - supports `all`, `browser`, `mobile` and `backend` and defaults to `all` if omitted. + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality` and defaults to `count` if omitted. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `group by` Comma-separated list of attributes to group by - should contain at least `issue.id`. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + **Database Monitoring Alert Query** + + Example: `database-monitoring(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + **Network Performance Alert Query** + + Example: `network-performance(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + **Cost Alert Query** + + Example: `formula(query).timeframe_type(time_window).function(parameter) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `timeframe_type` The timeframe type to evaluate the cost + - for `forecast` supports `current` + - for `change`, `anomaly`, `threshold` supports `last` + - `time_window` - supports daily roll-up e.g. `7d` + - `function` - [optional, defaults to `threshold` monitor if omitted] supports `change`, `anomaly`, `forecast` + - `parameter` Specify the parameter of the type + - for `change`: + - supports `relative`, `absolute` + - [optional] supports `#`, where `#` is an integer or decimal number used to set the threshold + - for `anomaly`: + - supports `direction=both`, `direction=above`, `direction=below` + - [optional] supports `threshold=#`, where `#` is an integer or decimal number used to set the threshold + - `operator` + - for `threshold` supports `<`, `<=`, `>`, `>=`, `==`, or `!=` + - for `change` supports `>`, `<` + - for `anomaly` supports `>=` + - for `forecast` supports `>` + - `#` an integer or decimal number used to set the threshold. + + **Network Path Alert Query** + + Example: `network-path(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `index_name` The data type to monitor on - supports `netpath-path` and `netpath-hop`. + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + operationId: CreateMonitor + requestBody: + content: + application/json: + examples: + default: + value: + message: "You may need to add web hosts if this is consistently high." + name: "Bytes received on host0" + options: + no_data_timeframe: 20 + notify_no_data: true + priority: 3 + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + - "frontend" + type: "query alert" + schema: + $ref: "#/components/schemas/Monitor" + description: Create a monitor request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + id: 123 + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + options: + no_data_timeframe: 20 + notify_no_data: true + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + - frontend + type: query alert + schema: + $ref: "#/components/schemas/Monitor" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_write + summary: Create a monitor + tags: + - Monitors + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_write + /api/v1/monitor/can_delete: + get: + description: Check if the given monitors can be deleted. + operationId: CheckCanDeleteMonitor + parameters: + - description: The IDs of the monitor to check. + explode: false + in: query + name: monitor_ids + required: true + schema: + items: + example: 666486743 + format: int64 + type: integer + type: array + style: form + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + ok: + - 123 + errors: + schema: + $ref: "#/components/schemas/CheckCanDeleteMonitorResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/CheckCanDeleteMonitorResponse" + description: Deletion conflict error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Check if a monitor can be deleted + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + /api/v1/monitor/groups/search: + get: + description: |- + Search and filter your monitor groups details. + operationId: SearchMonitorGroups + parameters: + - description: |- + After entering a search query on the [Triggered Monitors page][1], use the query parameter value in the + URL of the page as a value for this parameter. For more information, see the [Manage Monitors documentation][2]. + + The query can contain any number of space-separated monitor attributes, for instance: `query="type:metric group_status:alert"`. + + [1]: https://app.datadoghq.com/monitors/triggered + [2]: /monitors/manage/#triggered-monitors + in: query + name: query + required: false + schema: + type: string + - description: Page to start paginating from. + in: query + name: page + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Number of monitors to return per page. + in: query + name: per_page + required: false + schema: + default: 30 + format: int64 + type: integer + - description: |- + String for sort order, composed of field and sort order separate by a comma, for example `name,asc`. Supported sort directions: `asc`, `desc`. Supported fields: + + * `name` + * `status` + * `tags` + in: query + name: sort + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + counts: + status: + - count: 1 + name: OK + type: + - count: 1 + name: metric + groups: + - group: "*" + group_tags: + - "*" + monitor_id: 123 + monitor_name: Example Monitor + status: OK + metadata: + page: 0 + page_count: 1 + per_page: 30 + total_count: 1 + schema: + $ref: "#/components/schemas/MonitorGroupSearchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Monitors group search + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + /api/v1/monitor/search: + get: + description: |- + Search and filter your monitors details. + operationId: SearchMonitors + parameters: + - description: |- + After entering a search query in your [Manage Monitor page][1] use the query parameter value in the + URL of the page as value for this parameter. Consult the dedicated [manage monitor documentation][2] + page to learn more. + + The query can contain any number of space-separated monitor attributes, for instance `query="type:metric status:alert"`. + + [1]: https://app.datadoghq.com/monitors/manage + [2]: /monitors/manage/#find-the-monitors + in: query + name: query + required: false + schema: + type: string + - description: Page to start paginating from. + in: query + name: page + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Number of monitors to return per page. + in: query + name: per_page + required: false + schema: + default: 30 + format: int64 + type: integer + - description: |- + String for sort order, composed of field and sort order separate by a comma, for example `name,asc`. Supported sort directions: `asc`, `desc`. Supported fields: + + * `name` + * `status` + * `tags` + in: query + name: sort + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + counts: + status: + - count: 1 + name: No Data + type: + - count: 1 + name: metric + metadata: + page: 0 + page_count: 1 + per_page: 30 + total_count: 1 + monitors: + - id: 123 + name: Example Monitor + org_id: 123 + status: No Data + type: query alert + schema: + $ref: "#/components/schemas/MonitorSearchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Monitors search + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + /api/v1/monitor/validate: + post: + description: |- + Validate the monitor provided in the request. + + **Note**: Log monitors require an unscoped App Key and `logs_read_data` permission. + operationId: ValidateMonitor + requestBody: + content: + application/json: + examples: + default: + value: + message: "You may need to add web hosts if this is consistently high." + name: "My monitor" + options: + no_data_timeframe: 20 + notify_no_data: true + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + - "frontend" + type: "query alert" + schema: + $ref: "#/components/schemas/Monitor" + description: Monitor request object + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid JSON + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Validate a monitor + tags: + - Monitors + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_read + /api/v1/monitor/{monitor_id}: + delete: + description: Delete the specified monitor + operationId: DeleteMonitor + parameters: + - description: The ID of the monitor. + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + - description: Delete the monitor even if it's referenced by other resources (for example SLO, composite monitor). + in: query + name: force + required: false + schema: + example: "false" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + deleted_monitor_id: 123 + schema: + $ref: "#/components/schemas/DeletedMonitor" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Item not found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_write + summary: Delete a monitor + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_write + get: + description: Get details about the specified monitor from your organization. + operationId: GetMonitor + parameters: + - description: The ID of the monitor + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + - description: When specified, shows additional information about the group states. Choose one or more from `all`, `alert`, `warn`, and `no data`. + in: query + name: group_states + required: false + schema: + type: string + - description: If this argument is set to true, then the returned data includes all current active downtimes for the monitor. + in: query + name: with_downtimes + required: false + schema: + type: boolean + - description: If this argument is set to `true`, the returned data includes all assets tied to this monitor. + in: query + name: with_assets + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + id: 123 + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + type: query alert + schema: + $ref: "#/components/schemas/Monitor" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Monitor Not Found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a monitor's details + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + put: + description: Edit the specified monitor. + operationId: UpdateMonitor + parameters: + - description: The ID of the monitor. + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + message: "Updated notification message for this monitor." + name: "Updated monitor name" + options: + no_data_timeframe: 20 + notify_no_data: true + priority: 3 + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + - "frontend" + type: "query alert" + schema: + $ref: "#/components/schemas/MonitorUpdateRequest" + description: Edit a monitor request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + id: 123 + message: Updated notification message for this monitor. + name: Updated monitor name + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + type: query alert + schema: + $ref: "#/components/schemas/Monitor" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Monitor Not Found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_write + summary: Edit a monitor + tags: + - Monitors + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_write + /api/v1/monitor/{monitor_id}/downtimes: + get: + deprecated: true + description: |- + Get all active v1 downtimes for the specified monitor. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: ListMonitorDowntimes + parameters: + - description: The id of the monitor + in: path + name: monitor_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + - active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduled maintenance + scope: + - env:staging + start: 1412792983 + schema: + items: + $ref: "#/components/schemas/Downtime" + type: array + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Monitor Not Found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get active downtimes for a monitor + tags: + - Downtimes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_read + /api/v1/monitor/{monitor_id}/validate: + post: + description: |- + Validate the monitor provided in the request. + + **Note**: Log monitors require an unscoped App Key and `logs_read_data` permission. + operationId: ValidateExistingMonitor + parameters: + - description: The ID of the monitor + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + message: "You may need to add web hosts if this is consistently high." + name: "My monitor" + options: + no_data_timeframe: 20 + notify_no_data: true + query: "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100" + tags: + - "app:webserver" + - "frontend" + type: "query alert" + schema: + $ref: "#/components/schemas/Monitor" + description: Monitor request object + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid JSON + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Validate an existing monitor + tags: + - Monitors + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_read + /api/v1/monthly_custom_reports: + get: + deprecated: true + description: |- + Get monthly custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetMonthlyCustomReports + parameters: + - description: The number of files to return in the response `[default=60].` + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + - description: "The direction to sort by: `[desc, asc]`." + in: query + name: sort_dir + required: false + schema: + $ref: "#/components/schemas/UsageSortDirection" + - description: "The field to sort by: `[computed_on, size, start_date, end_date]`." + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/UsageSort" + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + - attributes: + computed_on: "2024-02-01" + end_date: "2024-01-31" + size: 2048 + start_date: "2024-01-01" + tags: + - env + id: "2024-01" + type: reports + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/UsageCustomReportsResponse" + description: OK + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + summary: Get the list of available monthly custom reports + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/monthly_custom_reports/{report_id}: + get: + deprecated: true + description: |- + Get specified monthly custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetSpecifiedMonthlyCustomReports + parameters: + - description: Date of the report in the format `YYYY-MM-DD`. + in: path + name: report_id + required: true + schema: + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + attributes: + computed_on: "2024-02-01" + end_date: "2024-01-31" + location: "https://example.s3.amazonaws.com/report.csv" + size: 2048 + start_date: "2024-01-01" + tags: + - env + id: "2024-01" + type: reports + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/UsageSpecifiedCustomReportsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "404": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + summary: Get specified monthly custom reports + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/notebooks: + get: + description: |- + Get all notebooks. This can also be used to search for notebooks with a particular `query` in the notebook + `name` or author `handle`. + operationId: ListNotebooks + parameters: + - description: Return notebooks created by the given `author_handle`. + in: query + name: author_handle + required: false + schema: + example: test@datadoghq.com + type: string + style: form + - description: Return notebooks not created by the given `author_handle`. + in: query + name: exclude_author_handle + required: false + schema: + example: test@datadoghq.com + type: string + style: form + - description: The index of the first notebook you want returned. + in: query + name: start + required: false + schema: + example: 0 + format: int64 + type: integer + style: form + - description: The number of notebooks to be returned. + in: query + name: count + required: false + schema: + default: 100 + example: 5 + format: int64 + type: integer + style: form + - description: Sort by field `modified`, `name`, or `created`. + in: query + name: sort_field + required: false + schema: + default: modified + example: modified + type: string + style: form + - description: Sort by direction `asc` or `desc`. + in: query + name: sort_dir + required: false + schema: + default: desc + example: desc + type: string + style: form + - description: Return only notebooks with `query` string in notebook name or author handle. + in: query + name: query + required: false + schema: + example: postmortem + type: string + style: form + - description: Value of `false` excludes the `cells` and global `time` for each notebook. + in: query + name: include_cells + required: false + schema: + default: true + example: false + type: boolean + style: form + - description: True value returns only template notebooks. Default is false (returns only non-template notebooks). + in: query + name: is_template + required: false + schema: + default: false + example: false + type: boolean + style: form + - description: If type is provided, returns only notebooks with that metadata type. Default does not have type filtering. + in: query + name: type + required: false + schema: + example: investigation + type: string + style: form + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: "2021-02-24T23:14:15.173964+00:00" + modified: "2021-02-24T23:15:23.274966+00:00" + name: "Example Notebook" + status: published + id: 123456 + type: notebooks + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/NotebooksResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all notebooks + tags: + - Notebooks + x-pagination: + limitParam: count + pageOffsetParam: start + resultsPath: data + "x-permission": + operator: OR + permissions: + - notebooks_read + post: + description: Create a notebook using the specified options. + operationId: CreateNotebook + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: "## Some test markdown\n\nWith some example content." + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: line + q: "avg:system.load.1{*}" + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: + type: notebook_cells + name: "Example Notebook" + time: + live_span: 1h + type: notebooks + json-request-body: + value: {"data": {"attributes": {"cells": [{"attributes": {"definition": {"text": "## Some test markdown\n\nWith some example content.", "type": "markdown"}}, "type": "notebook_cells"}, {"attributes": {"definition": {"requests": [{"display_type": "line", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "dog_classic"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null}, "type": "notebook_cells"}], "name": "Example Notebook", "time": {"live_span": "1h"}}, "type": "notebooks"}} + schema: + $ref: "#/components/schemas/NotebookCreateRequest" + description: The JSON description of the notebook you want to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: "## Some test markdown\n\nWith some example content." + type: markdown + id: "bzbycoya" + type: notebook_cells + created: "2021-02-24T23:14:15.173964+00:00" + modified: "2021-02-24T23:15:23.274966+00:00" + name: "Example Notebook" + time: + live_span: 1h + id: 123456 + type: notebooks + schema: + $ref: "#/components/schemas/NotebookResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a notebook + tags: + - Notebooks + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - notebooks_write + /api/v1/notebooks/{notebook_id}: + delete: + description: Delete a notebook using the specified ID. + operationId: DeleteNotebook + parameters: + - description: Unique ID, assigned when you create the notebook. + in: path + name: notebook_id + required: true + schema: + format: int64 + type: integer + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a notebook + tags: + - Notebooks + "x-permission": + operator: OR + permissions: + - notebooks_write + get: + description: Get a notebook using the specified notebook ID. + operationId: GetNotebook + parameters: + - description: Unique ID, assigned when you create the notebook. + in: path + name: notebook_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: "## Example markdown" + type: markdown + id: abc-123 + type: notebook_cells + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + name: Example Notebook + status: published + time: + live_span: 1h + id: 123 + type: notebooks + schema: + $ref: "#/components/schemas/NotebookResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a notebook + tags: + - Notebooks + "x-permission": + operator: OR + permissions: + - notebooks_read + put: + description: Update a notebook using the specified ID. + operationId: UpdateNotebook + parameters: + - description: Unique ID, assigned when you create the notebook. + in: path + name: notebook_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: "## Some updated test markdown\n\nWith some example content." + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: bars + q: "avg:system.load.1{*}" + style: + line_type: solid + line_width: normal + palette: warm + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: + id: "abcd1234" + type: notebook_cells + name: "Example Notebook" + time: + live_span: 1h + type: notebooks + json-request-body: + value: {"data": {"attributes": {"cells": [{"attributes": {"definition": {"text": "## Some updated test markdown\n\nWith some example content.", "type": "markdown"}}, "type": "notebook_cells"}, {"attributes": {"definition": {"requests": [{"display_type": "bars", "q": "avg:system.load.1{*}", "style": {"line_type": "solid", "line_width": "normal", "palette": "warm"}}], "show_legend": true, "type": "timeseries", "yaxis": {"scale": "linear"}}, "graph_size": "m", "split_by": {"keys": [], "tags": []}, "time": null}, "id": "abcd1234", "type": "notebook_cells"}], "name": "Example Notebook", "time": {"live_span": "1h"}}, "type": "notebooks"}} + schema: + $ref: "#/components/schemas/NotebookUpdateRequest" + description: Update notebook request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: "## Some updated test markdown\n\nWith some example content." + type: markdown + id: "abcd1234" + type: notebook_cells + created: "2021-02-24T23:14:15.173964+00:00" + modified: "2021-02-24T23:15:23.274966+00:00" + name: "Example Notebook" + time: + live_span: 1h + id: 123456 + type: notebooks + schema: + $ref: "#/components/schemas/NotebookResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a notebook + tags: + - Notebooks + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - notebooks_write + /api/v1/org: + get: + description: This endpoint returns data on your top-level organization. + operationId: ListOrgs + responses: + "200": + content: + application/json: + examples: + default: + value: + orgs: + - created: "2019-09-26T17:28:28Z" + name: Example Org + public_id: abc-123 + schema: + $ref: "#/components/schemas/OrganizationListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List your managed organizations + tags: + - Organizations + "x-permission": + operator: OR + permissions: + - org_management + post: + description: |- + Create a child organization. + + This endpoint requires the + [multi-organization account](https://docs.datadoghq.com/account_management/multi_organization/) + feature and must be enabled by + [contacting support](https://docs.datadoghq.com/help/). + + Once a new child organization is created, you can interact with it + by using the `org.public_id`, `api_key.key`, and + `application_key.hash` provided in the response. + operationId: CreateChildOrg + requestBody: + content: + application/json: + examples: + default: + value: + billing: + type: parent_billing + name: "New child org" + subscription: + type: pro + schema: + $ref: "#/components/schemas/OrganizationCreateBody" + description: Organization object that needs to be created + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + org: + created: "2019-09-26T17:28:28Z" + name: New child org + public_id: abc-123 + user: + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: "#/components/schemas/OrganizationCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a child organization + tags: + - Organizations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_management + /api/v1/org/{public_id}: + get: + description: Get organization information. + operationId: GetOrg + parameters: + - description: The `public_id` of the organization you are operating within. + in: path + name: public_id + required: true + schema: + example: "abc123" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + org: + created: "2019-09-26T17:28:28Z" + name: Example Org + public_id: abc-123 + schema: + $ref: "#/components/schemas/OrganizationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get organization information + tags: + - Organizations + put: + description: Update your organization. + operationId: UpdateOrg + parameters: + - description: The `public_id` of the organization you are operating within. + in: path + name: public_id + required: true + schema: + example: "abc123" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + billing: + type: parent_billing + name: "New child org" + settings: + saml: + enabled: false + saml_idp_initiated_login: + enabled: false + saml_strict_mode: + enabled: false + schema: + $ref: "#/components/schemas/Organization" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + org: + created: "2019-09-26T17:28:28Z" + name: Example Org + public_id: abc-123 + schema: + $ref: "#/components/schemas/OrganizationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update your organization + tags: + - Organizations + x-codegen-request-body-name: body + /api/v1/org/{public_id}/downgrade: + post: + description: Only available for MSP customers. Removes a child organization from the hierarchy of the master organization and places the child organization on a 30-day trial. + operationId: DowngradeOrg + parameters: + - description: The `public_id` of the organization you are operating within. + in: path + name: public_id + required: true + schema: + example: "abc123" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + message: "Child organization abc-123 downgraded successfully" + schema: + $ref: "#/components/schemas/OrgDowngradedResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Spin-off Child Organization + tags: + - Organizations + /api/v1/org/{public_id}/idp_metadata: + post: + description: |- + There are a couple of options for updating the Identity Provider (IdP) + metadata from your SAML IdP. + + * **Multipart Form-Data**: Post the IdP metadata file using a form post. + + * **XML Body:** Post the IdP metadata file as the body of the request. + operationId: UploadIdPForOrg + parameters: + - description: The `public_id` of the organization you are operating with + in: path + name: public_id + required: true + schema: + example: "abc123" + type: string + requestBody: + content: + multipart/form-data: + examples: + default: + value: + idp_file: "@/path/to/idp_metadata.xml" + schema: + $ref: "#/components/schemas/IdpFormData" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + message: IdP metadata successfully uploaded for example org + schema: + $ref: "#/components/schemas/IdpResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "415": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unsupported Media Type + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Upload IdP metadata + tags: + - Organizations + x-codegen-request-body-name: body + /api/v1/query: + get: + description: |- + Query timeseries points. Datadog recommends using the v2 + `/api/v2/query/timeseries` endpoint over this endpoint for + querying timeseries data. + operationId: QueryMetrics + parameters: + - description: Start of the queried time period, seconds since the Unix epoch. + in: query + name: from + required: true + schema: + format: int64 + type: integer + - description: End of the queried time period, seconds since the Unix epoch. + in: query + name: to + required: true + schema: + format: int64 + type: integer + - description: Query string. + in: query + name: query + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + query: "avg:system.cpu.idle{*}" + res_type: time_series + series: + - aggr: avg + display_name: system.cpu.idle + expression: "avg:system.cpu.idle{*}" + metric: system.cpu.idle + pointlist: + - [1681683300000.0, 77.62145685254418] + scope: "*" + status: ok + schema: + $ref: "#/components/schemas/MetricsQueryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - timeseries_query + summary: Query timeseries points + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - timeseries_query + /api/v1/search: + get: + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Use `/api/v2/metrics` instead. + + Search for metrics from the last 24 hours in Datadog. + operationId: ListMetrics + parameters: + - description: Query string to search metrics upon. Can optionally be prefixed with `metrics:`. + in: query + name: q + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + results: + metrics: + - system.cpu.idle + - system.load.1 + schema: + $ref: "#/components/schemas/MetricSearchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Search metrics + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + /api/v1/security_analytics/signals/{signal_id}/add_to_incident: + patch: + description: >- + Add a security signal to an incident. This makes it possible to search for signals by incident within the signal explorer and to view the signals on the incident timeline. + operationId: AddSecurityMonitoringSignalToIncident + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + incident_id: 2066 + version: 0 + schema: + $ref: "#/components/schemas/AddSignalToIncidentRequest" + description: Attributes describing the signal update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + status: updated + schema: + $ref: "#/components/schemas/SuccessfulSignalUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add a security signal to an incident + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v1/security_analytics/signals/{signal_id}/assignee: + patch: + deprecated: true + description: |- + This endpoint is deprecated - Modify the triage assignee of a security signal. + operationId: EditSecurityMonitoringSignalAssignee + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + assignee: "773b045d-ccf8-4808-bd3b-955ef6a8c940" + version: 0 + schema: + $ref: "#/components/schemas/SignalAssigneeUpdateRequest" + description: Attributes describing the signal update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + status: updated + schema: + $ref: "#/components/schemas/SuccessfulSignalUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Modify the triage assignee of a security signal + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v1/security_analytics/signals/{signal_id}/state: + patch: + deprecated: true + description: |- + This endpoint is deprecated - Change the triage state of a security signal. + operationId: EditSecurityMonitoringSignalState + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + archiveReason: none + state: open + version: 0 + schema: + $ref: "#/components/schemas/SignalStateUpdateRequest" + description: Attributes describing the signal update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + status: updated + schema: + $ref: "#/components/schemas/SuccessfulSignalUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Change the triage state of a security signal + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v1/series: + post: + description: |- + The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards. + The maximum payload size is 3.2 megabytes (3200000 bytes). Compressed payloads must have a decompressed size of less than 62 megabytes (62914560 bytes). + + If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect: + + - 64 bits for the timestamp + - 64 bits for the value + - 40 bytes for the metric names + - 50 bytes for the timeseries + - The full payload is approximately 100 bytes. However, with the DogStatsD API, + compression is applied, which reduces the payload size. + operationId: SubmitMetrics + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: "#/components/schemas/MetricContentEncoding" + requestBody: + content: + text/json: + examples: + default: + value: + series: + - host: test.example.com + metric: system.load.1 + points: + - [1636629071, 0.7] + tags: + - "environment:test" + type: gauge + dynamic-points: + description: Post time-series data that can be graphed on Datadog’s dashboards. + externalValue: examples/metrics/dynamic-points.json.sh + summary: Dynamic Points + x-variables: + NOW: $(date +%s) + schema: + $ref: "#/components/schemas/MetricsPayload" + required: true + responses: + "202": + content: + text/json: + examples: + default: + value: + status: ok + schema: + $ref: "#/components/schemas/IntakePayloadAccepted" + description: Payload accepted + "400": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "408": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Request timeout + "413": + content: + text/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Payload too large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Submit metrics + tags: + - Metrics + x-codegen-request-body-name: body + /api/v1/slo: + get: + description: Get a list of service level objective objects for your organization. + operationId: ListSLOs + parameters: + - description: |- + A comma separated list of the IDs of the service level objectives objects. + example: "id1, id2, id3" + in: query + name: ids + required: false + schema: + type: string + - description: The query string to filter results based on SLO names. + example: "monitor" + in: query + name: query + required: false + schema: + type: string + - description: The query string to filter results based on a single SLO tag. + example: "env:prod" + in: query + name: tags_query + required: false + schema: + type: string + - description: |- + The query string to filter results based on SLO numerator and denominator. + example: "aws.elb.request_count" + in: query + name: metrics_query + required: false + schema: + type: string + - description: |- + The number of SLOs to return in the response. + in: query + name: limit + required: false + schema: + default: 1000 + format: int64 + type: integer + - description: |- + The specific offset to use as the beginning of the returned response. + in: query + name: offset + required: false + schema: + format: int64 + type: integer + - description: |- + Whether to return only deleted service level objective objects. + example: true + in: query + name: is_deleted + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: abc-123 + name: "Custom Metric SLO" + tags: + - "env:prod" + - "app:core" + thresholds: + - target: 95 + timeframe: "7d" + - target: 95 + timeframe: "30d" + warning: 97 + type: metric + errors: [] + schema: + $ref: "#/components/schemas/SLOListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get all SLOs + tags: + - Service Level Objectives + x-pagination: + limitParam: limit + pageOffsetParam: offset + resultsPath: data + "x-permission": + operator: OR + permissions: + - slos_read + post: + description: Create a service level objective object. + operationId: CreateSLO + requestBody: + content: + application/json: + examples: + default: + value: + description: "Track the availability of our custom metric." + name: "Custom Metric SLO" + query: + denominator: "sum:my.custom.metric{*}.as_count()" + numerator: "sum:my.custom.metric{type:good}.as_count()" + tags: + - "env:prod" + - "app:core" + thresholds: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + type: metric + schema: + $ref: "#/components/schemas/ServiceLevelObjectiveRequest" + description: Service level objective request object. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - description: "Track the availability of our custom metric." + id: abc-123 + name: "Custom Metric SLO" + tags: + - "env:prod" + - "app:core" + thresholds: + - target: 95 + target_display: "95.0" + timeframe: 7d + type: metric + errors: [] + schema: + $ref: "#/components/schemas/SLOListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Create an SLO object + tags: + - Service Level Objectives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - slos_write + /api/v1/slo/bulk_delete: + post: + description: |- + Delete (or partially delete) multiple service level objective objects. + + This endpoint facilitates deletion of one or more thresholds for one or more + service level objective objects. If all thresholds are deleted, the service level + objective object is deleted as well. + operationId: DeleteSLOTimeframeInBulk + requestBody: + content: + application/json: + examples: + default: + value: + id1: + - "7d" + - "30d" + id2: + - "7d" + - "30d" + schema: + $ref: "#/components/schemas/SLOBulkDelete" + description: Delete multiple service level objective objects request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + deleted: [] + updated: + - abc-123 + errors: [] + schema: + $ref: "#/components/schemas/SLOBulkDeleteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Bulk Delete SLO Timeframes + tags: + - Service Level Objectives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - slos_write + /api/v1/slo/can_delete: + get: + description: |- + Check if an SLO can be safely deleted. For example, + assure an SLO can be deleted without disrupting a dashboard. + operationId: CheckCanDeleteSLO + parameters: + - description: |- + A comma separated list of the IDs of the service level objectives objects. + example: "id1, id2, id3" + in: query + name: ids + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + ok: + - abc-123 + errors: {} + schema: + $ref: "#/components/schemas/CheckCanDeleteSLOResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/CheckCanDeleteSLOResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Check if SLOs can be safely deleted + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_read + /api/v1/slo/correction: + get: + description: |- + Get all Service Level Objective corrections. + operationId: ListSLOCorrection + parameters: + - description: |- + The specific offset to use as the beginning of the returned response. + in: query + name: offset + required: false + schema: + format: int64 + type: integer + - description: |- + The number of SLO corrections to return in the response. Default is 25. + in: query + name: limit + required: false + schema: + default: 25 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get all SLO corrections + tags: + - Service Level Objective Corrections + x-pagination: + limitParam: limit + pageOffsetParam: offset + resultsPath: data + "x-permission": + operator: OR + permissions: + - slos_read + post: + description: |- + Create an SLO correction. Use `slo_id` to apply the correction to a single SLO, or `slo_query` to apply the + correction to SLOs that match a query. Exactly one of `slo_id` or `slo_query` is required. + operationId: CreateSLOCorrection + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: "Scheduled Maintenance" + description: "Planned maintenance window for database upgrade." + end: 1600003600 + slo_id: sloId + start: 1600000000 + timezone: UTC + type: correction + slo_query: + value: + data: + attributes: + category: "Scheduled Maintenance" + description: "Planned maintenance window for checkout services." + end: 1600003600 + slo_query: "env:prod service:checkout" + start: 1600000000 + timezone: UTC + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionCreateRequest" + description: Create an SLO Correction + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: SLO Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_corrections + summary: Create an SLO correction + tags: + - Service Level Objective Corrections + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - slos_corrections + /api/v1/slo/correction/{slo_correction_id}: + delete: + description: |- + Permanently delete the specified SLO correction object. + operationId: DeleteSLOCorrection + parameters: + - description: The ID of the SLO correction object. + in: path + name: slo_correction_id + required: true + schema: + type: string + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an SLO correction + tags: + - Service Level Objective Corrections + get: + description: |- + Get an SLO correction. + operationId: GetSLOCorrection + parameters: + - description: The ID of the SLO correction object. + in: path + name: slo_correction_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an SLO correction for an SLO + tags: + - Service Level Objective Corrections + patch: + description: Update the specified SLO correction object. + operationId: UpdateSLOCorrection + parameters: + - description: The ID of the SLO correction object. + in: path + name: slo_correction_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: "Scheduled Maintenance" + description: "Updated correction for maintenance window." + end: 1600003600 + start: 1600000000 + timezone: UTC + type: correction + slo_query: + value: + data: + attributes: + category: "Scheduled Maintenance" + description: "Updated correction for checkout services." + end: 1600003600 + slo_query: "env:prod service:checkout" + start: 1600000000 + timezone: UTC + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionUpdateRequest" + description: The edited SLO correction object. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an SLO correction + tags: + - Service Level Objective Corrections + x-codegen-request-body-name: body + /api/v1/slo/search: + get: + description: Get a list of service level objective objects for your organization. + operationId: SearchSLO + parameters: + - description: |- + The query string to filter results based on SLO names. + Some examples of queries include `service:` + and ``. + in: query + name: query + required: false + schema: + type: string + - description: The number of files to return in the response `[default=10]`. + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + - description: Whether or not to return facet information in the response `[default=false]`. + in: query + name: include_facets + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + slos: + - data: + attributes: + name: Example SLO + thresholds: + - target: 95 + target_display: "95" + timeframe: 7d + id: abc-123 + type: slo + type: service_level_objective_search_results + schema: + $ref: "#/components/schemas/SearchSLOResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Search for SLOs + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_read + /api/v1/slo/{slo_id}: + delete: + description: |- + Permanently delete the specified service level objective object. + + If an SLO is used in a dashboard, the `DELETE /v1/slo/` endpoint returns + a 409 conflict error because the SLO is referenced in a dashboard. + operationId: DeleteSLO + parameters: + - description: The ID of the service level objective. + in: path + name: slo_id + required: true + schema: + type: string + - description: Delete the monitor even if it's referenced by other resources (for example SLO, composite monitor). + in: query + name: force + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - abc-123 + errors: {} + schema: + $ref: "#/components/schemas/SLODeleteResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/SLODeleteResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Delete an SLO + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_write + get: + description: Get a service level objective object. + operationId: GetSLO + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + - description: Get the IDs of SLO monitors that reference this SLO. + example: true + in: query + name: with_configured_alert_ids + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + description: "Track the availability of our custom metric." + id: abc-123 + name: "Custom Metric SLO" + tags: + - "env:prod" + thresholds: + - target: 95 + target_display: "95.0" + timeframe: 7d + type: metric + errors: [] + schema: + $ref: "#/components/schemas/SLOResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get an SLO's details + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_read + put: + description: Update the specified service level objective object. + operationId: UpdateSLO + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: "Updated description for the SLO." + name: "Custom Metric SLO" + query: + denominator: "sum:my.custom.metric{*}.as_count()" + numerator: "sum:my.custom.metric{type:good}.as_count()" + tags: + - "env:prod" + - "app:core" + thresholds: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + type: metric + schema: + $ref: "#/components/schemas/ServiceLevelObjective" + description: The edited service level objective request object. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - description: "Updated description for the SLO." + id: abc-123 + name: "Custom Metric SLO" + tags: + - "env:prod" + thresholds: + - target: 95 + target_display: "95.0" + timeframe: 7d + type: metric + errors: [] + schema: + $ref: "#/components/schemas/SLOListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Update an SLO + tags: + - Service Level Objectives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - slos_write + /api/v1/slo/{slo_id}/corrections: + get: + description: |- + Get corrections applied to an SLO + operationId: GetSLOCorrections + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: "#/components/schemas/SLOCorrectionListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get Corrections For an SLO + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_read + /api/v1/slo/{slo_id}/history: + get: + description: |- + Get a specific SLO’s history, regardless of its SLO type. + + The detailed history data is structured according to the source data type. + For example, metric data is included for event SLOs that use + the metric source, and monitor SLO types include the monitor transition history. + + **Note:** There are different response formats for event based and time based SLOs. + Examples of both are shown. + operationId: GetSLOHistory + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + - description: The `from` timestamp for the query window in epoch seconds. + in: query + name: from_ts + required: true + schema: + format: int64 + type: integer + - description: The `to` timestamp for the query window in epoch seconds. + in: query + name: to_ts + required: true + schema: + format: int64 + type: integer + - description: The SLO target. If `target` is passed in, the response will include the remaining error budget and a timeframe value of `custom`. + in: query + name: target + schema: + exclusiveMaximum: true + exclusiveMinimum: true + format: double + maximum: 100 + minimum: 0 + type: number + - description: |- + Defaults to `true`. If any SLO corrections are applied and this parameter is set to `false`, + then the corrections will not be applied and the SLI values will not be affected. + in: query + name: apply_correction + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + from_ts: 1615323990 + overall: + sli_value: 99.99 + span_precision: 2.0 + thresholds: + "7d": + target: 95 + timeframe: 7d + to_ts: 1615928790 + type: metric + type_id: 1 + errors: + schema: + $ref: "#/components/schemas/SLOHistoryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get an SLO's history + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_read + /api/v1/synthetics/ci/batch/{batch_id}: + get: + description: Get a batch's updated details. + operationId: GetSyntheticsCIBatch + parameters: + - description: The ID of the batch. + in: path + name: batch_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + results: + - location: "aws:eu-west-3" + result_id: "abc-123" + status: passed + test_name: "Example API test" + test_public_id: "abc-def-123" + test_type: api + status: passed + schema: + $ref: "#/components/schemas/SyntheticsBatchDetails" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Batch does not exist. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get details of batch + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/locations: + get: + description: |- + Get the list of public and private locations available for Synthetic + tests. No arguments required. + operationId: ListLocations + responses: + "200": + content: + application/json: + examples: + default: + value: + locations: + - id: "aws:eu-west-3" + name: "Paris (AWS)" + schema: + $ref: "#/components/schemas/SyntheticsLocations" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_read + summary: Get all locations (public and private) + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_private_location_read + /api/v1/synthetics/private-locations: + post: + description: Create a new Synthetic private location. + operationId: CreatePrivateLocation + requestBody: + content: + application/json: + examples: + default: + value: + description: Description of private location + name: New private location + tags: + - "team:front" + schema: + $ref: "#/components/schemas/SyntheticsPrivateLocation" + description: Details of the private location to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + private_location: + description: "Description of private location" + id: "pl:new-private-location-abc-123" + name: "New private location" + tags: + - "team:front" + schema: + $ref: "#/components/schemas/SyntheticsPrivateLocationCreationResponse" + description: OK + "402": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Quota reached for private locations + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Private locations are not activated for the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_write + summary: Create a private location + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_private_location_write + /api/v1/synthetics/private-locations/{location_id}: + delete: + description: Delete a Synthetic private location. + operationId: DeletePrivateLocation + parameters: + - description: The ID of the private location. + in: path + name: location_id + required: true + schema: + type: string + responses: + "204": + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Private locations are not activated for the user + - Private location does not exist + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_write + summary: Delete a private location + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_private_location_write + get: + description: Get a Synthetic private location. + operationId: GetPrivateLocation + parameters: + - description: The ID of the private location. + in: path + name: location_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + description: "Description of private location" + id: "pl:new-private-location-abc-123" + name: "New private location" + tags: + - "team:front" + schema: + $ref: "#/components/schemas/SyntheticsPrivateLocation" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic private locations are not activated for the user + - Private location does not exist + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_read + summary: Get a private location + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_private_location_read + put: + description: Edit a Synthetic private location. + operationId: UpdatePrivateLocation + parameters: + - description: The ID of the private location. + in: path + name: location_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: Description of private location + name: New private location + tags: + - "team:front" + schema: + $ref: "#/components/schemas/SyntheticsPrivateLocation" + description: Details of the private location to be updated. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + description: "Description of private location" + id: "pl:new-private-location-abc-123" + name: "New private location" + tags: + - "team:front" + schema: + $ref: "#/components/schemas/SyntheticsPrivateLocation" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Private locations are not activated for the user + - Private location does not exist + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_write + summary: Edit a private location + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_private_location_write + /api/v1/synthetics/settings/default_locations: + get: + description: Get the default locations settings. + operationId: GetSyntheticsDefaultLocations + responses: + "200": + content: + application/json: + examples: + default: + value: + - "aws:eu-west-3" + - "aws:us-east-1" + schema: + $ref: "#/components/schemas/SyntheticsDefaultLocations" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the default locations + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_default_settings_read + /api/v1/synthetics/tests: + get: + description: Get the list of all Synthetic tests. + operationId: ListTests + parameters: + - description: Used for pagination. The number of tests returned in the page. + in: query + name: page_size + required: false + schema: + default: 100 + format: int64 + type: integer + - description: Used for pagination. Which page you want to retrieve. Starts at zero. + in: query + name: page_number + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + tests: + - locations: + - "aws:eu-west-3" + name: "Example API test" + public_id: "abc-def-123" + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsListTestsResponse" + description: OK - Returns the list of all Synthetic tests. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Synthetic Monitoring is not activated for the user. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get the list of all Synthetic tests + tags: + - Synthetics + x-pagination: + limitParam: page_size + pageParam: page_number + resultsPath: tests + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/api: + post: + description: Create a Synthetic API test. + operationId: CreateSyntheticsAPITest + requestBody: + content: + application/json: + examples: + 1-simple-api-test: + description: Example of an API test. + summary: Create an API test. + value: + config: + assertions: + - operator: lessThan + target: 1000 + type: responseTime + - operator: is + target: 200 + type: statusCode + - operator: is + property: content-type + target: text/html; charset=UTF-8 + type: header + request: + method: GET + url: "https://example.com" + locations: + - "azure:eastus" + - "aws:eu-west-3" + message: MY_NOTIFICATION_MESSAGE + name: MY_TEST_NAME + options: + min_failure_duration: 0 + min_location_failed: 1 + monitor_options: + renotify_interval: 0 + tick_every: 60 + status: live + subtype: http + tags: + - "env:production" + type: api + 2-multistep-api-test: + description: |- + Example of a multistep API test running on a fake furniture store. + It creates a card, select a product and then add the product to the card. + summary: Create a Multistep API test + value: + config: + steps: + - assertions: + - operator: lessThan + target: 30000 + type: responseTime + extractedValues: + - field: location + name: CART_ID + parser: + type: regex + value: '(?:[^\\/](?!(\\|/)))+$' + type: http_header + name: Get a cart + request: + method: POST + timeout: 30 + url: "https://api.shopist.io/carts" + subtype: http + - assertions: + - operator: is + target: 200 + type: statusCode + extractedValues: + - name: PRODUCT_ID + parser: + type: json_path + value: "$[0].id['$oid']" + type: http_body + name: Get a product + request: + method: GET + timeout: 30 + url: "https://api.shopist.io/products.json" + subtype: http + - assertions: + - operator: is + target: 201 + type: statusCode + name: Add product to cart + request: + body: |- + { + "cart_item": { + "product_id": "{{ PRODUCT_ID }}", + "amount_paid": 500, + "quantity": 1 + }, + "cart_id": "{{ CART_ID }}" + } + headers: + content-type: application/json + method: POST + timeout: 30 + url: "https://api.shopist.io/add_item.json" + subtype: http + locations: + - "aws:us-west-2" + message: MY_NOTIFICATION_MESSAGE + name: MY_TEST_NAME + options: + ci: + executionRule: blocking + min_failure_duration: 5400 + min_location_failed: 1 + monitor_options: + renotify_interval: 0 + retry: + count: 3 + interval: 300 + tick_every: 900 + status: live + subtype: multi + tags: + - "env:prod" + type: api + default: + value: + config: + assertions: + - operator: is + target: 200 + type: statusCode + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: Notification message + name: Example API test + options: + min_failure_duration: 0 + min_location_failed: 1 + tick_every: 60 + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsAPITest" + description: Details of the test to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + assertions: + - operator: is + target: 200 + type: statusCode + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "Notification message" + monitor_id: 12345678 + name: "Example API test" + options: + min_failure_duration: 0 + min_location_failed: 1 + tick_every: 60 + public_id: "abc-123-def" + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsAPITest" + description: OK - Returns the created test details. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Creation failed + "402": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Test quota is reached + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create an API test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/api/{public_id}: + get: + description: |- + Get the detailed configuration associated with + a Synthetic API test. + operationId: GetAPITest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "Notification message" + name: "Example API test" + options: + tick_every: 60 + public_id: "abc-def-123" + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsAPITest" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get an API test + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + put: + description: Edit the configuration of a Synthetic API test. + operationId: UpdateAPITest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + config: + assertions: + - operator: is + target: 200 + type: statusCode + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: Notification message + name: Example API test + options: + min_failure_duration: 0 + min_location_failed: 1 + tick_every: 60 + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsAPITest" + description: New test details to be saved. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "Notification message" + name: "Example API test" + options: + tick_every: 60 + public_id: "abc-def-123" + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsAPITest" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit an API test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/browser: + post: + description: Create a Synthetic browser test. + operationId: CreateSyntheticsBrowserTest + requestBody: + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "" + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + status: live + steps: + - name: Check current URL + params: + check: contains + value: example + type: assertCurrentUrl + tags: + - "env:production" + type: browser + schema: + $ref: "#/components/schemas/SyntheticsBrowserTest" + description: Details of the test to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "" + name: "Example browser test" + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + public_id: "abc-def-123" + status: live + tags: + - "env:production" + type: browser + schema: + $ref: "#/components/schemas/SyntheticsBrowserTest" + description: OK - Returns the created test details. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Creation failed + "402": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Test quota is reached + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a browser test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/browser/{public_id}: + get: + description: |- + Get the detailed configuration (including steps) associated with + a Synthetic browser test. + operationId: GetBrowserTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "" + name: "Example browser test" + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + public_id: "abc-def-123" + status: live + tags: + - "env:production" + type: browser + schema: + $ref: "#/components/schemas/SyntheticsBrowserTest" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + put: + description: Edit the configuration of a Synthetic browser test. + operationId: UpdateBrowserTest + parameters: + - description: The public ID of the test to edit. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "" + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + status: live + steps: + - name: Check current URL + params: + check: contains + value: example + type: assertCurrentUrl + tags: + - "env:production" + type: browser + schema: + $ref: "#/components/schemas/SyntheticsBrowserTest" + description: New test details to be saved. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: "https://example.com" + locations: + - "aws:eu-west-3" + message: "" + name: "Example browser test" + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + public_id: "abc-def-123" + status: live + tags: + - "env:production" + type: browser + schema: + $ref: "#/components/schemas/SyntheticsBrowserTest" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a browser test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/browser/{public_id}/results: + get: + description: |- + Get the last 150 test results summaries for a given Synthetic browser test. + operationId: GetBrowserTestLatestResults + parameters: + - description: |- + The public ID of the browser test for which to search results + for. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + last_timestamp_fetched: 1706745600000 + results: + - check_time: 1706745600000 + probe_dc: "aws:eu-west-3" + result_id: "abc-123" + status: 0 + schema: + $ref: "#/components/schemas/SyntheticsGetBrowserTestLatestResultsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test's latest results summaries + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/browser/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic browser test. + operationId: GetBrowserTestResult + parameters: + - description: |- + The public ID of the browser test to which the target result + belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + check_time: 1706745600000 + probe_dc: "aws:eu-west-3" + result_id: "abc-123" + status: 0 + schema: + $ref: "#/components/schemas/SyntheticsBrowserTestResultFull" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test or result is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test result + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/delete: + post: + description: Delete multiple Synthetic tests by ID. + operationId: DeleteTests + requestBody: + content: + application/json: + examples: + default: + value: + public_ids: + - "abc-def-123" + schema: + $ref: "#/components/schemas/SyntheticsDeleteTestsPayload" + description: Public ID list of the Synthetic tests to be deleted. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + deleted_tests: + - deleted_at: "2024-01-01T00:00:00+00:00" + public_id: "abc-def-123" + schema: + $ref: "#/components/schemas/SyntheticsDeleteTestsResponse" + description: OK. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Test cannot be deleted as it's used elsewhere (as a sub-test or in an uptime widget) + - Some IDs are not owned by the user + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Tests to be deleted can't be found + - Synthetic is not activated for the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Delete tests + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/mobile: + post: + description: Create a Synthetic mobile test. + operationId: CreateSyntheticsMobileTest + requestBody: + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - "synthetics:mobile:device:apple_iphone_14_ios_16" + min_failure_duration: 0 + mobileApplication: + applicationId: "abc-123" + referenceId: "abc-456" + referenceType: latest + tick_every: 3600 + tags: + - "env:production" + type: mobile + schema: + $ref: "#/components/schemas/SyntheticsMobileTest" + description: Details of the test to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: "Notification message" + name: "Example mobile test" + options: + device_ids: + - "synthetics:mobile:device:apple_iphone_14_ios_16" + mobileApplication: + applicationId: "abc-123" + referenceId: "abc-456" + referenceType: latest + tick_every: 3600 + public_id: "abc-def-123" + status: live + tags: + - "env:production" + type: mobile + schema: + $ref: "#/components/schemas/SyntheticsMobileTest" + description: OK - Returns the created test details. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Creation failed + "402": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Test quota is reached + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a mobile test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/mobile/{public_id}: + get: + description: |- + Get the detailed configuration associated with + a Synthetic mobile test. + operationId: GetMobileTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: "Notification message" + name: "Example mobile test" + options: + device_ids: + - "synthetics:mobile:device:apple_iphone_14_ios_16" + mobileApplication: + applicationId: "abc-123" + referenceId: "abc-456" + referenceType: latest + tick_every: 3600 + public_id: "abc-def-123" + status: live + tags: + - "env:production" + type: mobile + schema: + $ref: "#/components/schemas/SyntheticsMobileTest" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a mobile test + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + put: + description: Edit the configuration of a Synthetic mobile test. + operationId: UpdateMobileTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - "synthetics:mobile:device:apple_iphone_14_ios_16" + min_failure_duration: 0 + mobileApplication: + applicationId: "abc-123" + referenceId: "abc-456" + referenceType: latest + tick_every: 3600 + tags: + - "env:production" + type: mobile + schema: + $ref: "#/components/schemas/SyntheticsMobileTest" + description: New test details to be saved. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: "Notification message" + name: "Example mobile test" + options: + device_ids: + - "synthetics:mobile:device:apple_iphone_14_ios_16" + mobileApplication: + applicationId: "abc-123" + referenceId: "abc-456" + referenceType: latest + tick_every: 3600 + public_id: "abc-def-123" + status: live + tags: + - "env:production" + type: mobile + schema: + $ref: "#/components/schemas/SyntheticsMobileTest" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a mobile test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/search: + get: + description: |- + Search for Synthetic tests. + operationId: SearchTests + parameters: + - description: The search query. + in: query + name: text + required: false + schema: + type: string + - description: If true, include the full configuration for each test in the response. + in: query + name: include_full_config + required: false + schema: + type: boolean + - description: If true, return only facets instead of full test details. + in: query + name: facets_only + required: false + schema: + type: boolean + - description: The offset from which to start returning results. + in: query + name: start + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of results to return. + in: query + name: count + required: false + schema: + default: 50 + format: int64 + type: integer + - description: The sort order for the results (e.g., `name,asc` or `name,desc`). + in: query + name: sort + required: false + schema: + default: name,asc + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + tests: + - locations: + - aws:eu-west-3 + message: Test notification + name: Example Test + public_id: abc-def-123 + status: live + tags: + - env:prod + type: api + schema: + $ref: "#/components/schemas/SyntheticsListTestsResponse" + description: OK - Returns the list of Synthetic tests matching the search. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Search Synthetic tests + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/trigger: + post: + description: Trigger a set of Synthetic tests. + operationId: TriggerTests + requestBody: + content: + application/json: + examples: + default: + value: + tests: + - public_id: aaa-aaa-aaa + schema: + $ref: "#/components/schemas/SyntheticsTriggerBody" + description: The identifiers of the tests to trigger. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + batch_id: abc-123 + results: + - location: 1 + public_id: "abc-def-123" + result_id: "abc-123" + triggered_check_ids: + - "abc-def-123" + schema: + $ref: "#/components/schemas/SyntheticsTriggerCITestsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Trigger Synthetic tests + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/trigger/ci: + post: + description: Trigger a set of Synthetic tests for continuous integration. + operationId: TriggerCITests + requestBody: + content: + application/json: + examples: + default: + value: + tests: + - public_id: aaa-aaa-aaa + schema: + $ref: "#/components/schemas/SyntheticsCITestBody" + description: Details of the test to trigger. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + batch_id: abc-123 + results: + - location: 1 + public_id: "abc-def-123" + result_id: "abc-123" + triggered_check_ids: + - "abc-def-123" + schema: + $ref: "#/components/schemas/SyntheticsTriggerCITestsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: JSON format is wrong + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Trigger tests from CI/CD pipelines + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/uptimes: + post: + description: Fetch uptime for multiple Synthetic tests by ID. + operationId: FetchUptimes + requestBody: + content: + application/json: + examples: + default: + value: + from_ts: 1726041488 + public_ids: + - "abc-def-123" + to_ts: 1726127888 + schema: + $ref: "#/components/schemas/SyntheticsFetchUptimesPayload" + description: Public ID list of the Synthetic tests and timeframe. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + - from_ts: 1726041488 + overall: + group: "name" + history: + - [1726041488, 0] + span_precision: 2.0 + uptime: 99.99 + public_id: abc-def-123 + to_ts: 1726127888 + schema: + items: + $ref: "#/components/schemas/SyntheticsTestUptime" + type: array + description: OK. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Fetch uptime for multiple tests + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/{public_id}: + get: + description: Get the detailed configuration associated with a Synthetic test. + operationId: GetTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + locations: + - "aws:eu-west-3" + message: "Notification message" + name: "Example test" + public_id: "abc-def-123" + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsTestDetailsWithoutSteps" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test configuration + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + patch: + description: Patch the configuration of a Synthetic test with partial data. + operationId: PatchTest + parameters: + - description: The public ID of the test to patch. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - op: replace + path: /name + value: New test name + - op: remove + path: /config/assertions/0 + schema: + $ref: "#/components/schemas/SyntheticsPatchTestBody" + description: "[JSON Patch](https://jsonpatch.com/) compliant list of operations" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + locations: + - "aws:eu-west-3" + message: "Notification message" + name: "New test name" + public_id: "abc-def-123" + status: live + subtype: http + tags: + - "env:production" + type: api + schema: + $ref: "#/components/schemas/SyntheticsTestDetails" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Patch a Synthetic test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/{public_id}/results: + get: + description: |- + Get the last 150 test results summaries for a given Synthetic API test. + operationId: GetAPITestLatestResults + parameters: + - description: The public ID of the test for which to search results for. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + last_timestamp_fetched: 1706745600000 + results: + - check_time: 1706745600000 + probe_dc: "aws:eu-west-3" + result: + passed: true + result_id: "abc-123" + status: 0 + schema: + $ref: "#/components/schemas/SyntheticsGetAPITestLatestResultsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get an API test's latest results summaries + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic API test. + operationId: GetAPITestResult + parameters: + - description: The public ID of the API test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + check_time: 1706745600000 + probe_dc: "aws:eu-west-3" + result_id: "abc-123" + status: 0 + schema: + $ref: "#/components/schemas/SyntheticsAPITestResultFull" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test or result is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get an API test result + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/{public_id}/status: + put: + description: Pause or start a Synthetic test by changing the status. + operationId: UpdateTestPauseStatus + parameters: + - description: The public ID of the Synthetic test to update. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + new_status: live + schema: + $ref: "#/components/schemas/SyntheticsUpdateTestPauseStatusPayload" + description: Status to set the given Synthetic test to. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: true + schema: + type: boolean + description: OK - Returns a boolean indicating if the update was successful. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: JSON format is wrong. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Pause or start a test + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/variables: + get: + description: Get the list of all Synthetic global variables. + operationId: ListGlobalVariables + responses: + "200": + content: + application/json: + examples: + default: + value: + variables: + - description: "Example description" + id: abc-123 + name: "MY_VARIABLE" + tags: + - "team:front" + value: + secure: false + value: "example-value" + schema: + $ref: "#/components/schemas/SyntheticsListGlobalVariablesResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_read + - AuthZ: + - apm_api_catalog_read + summary: Get all global variables + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_global_variable_read + - apm_api_catalog_read + post: + description: Create a Synthetic global variable. + operationId: CreateGlobalVariable + requestBody: + content: + application/json: + examples: + default: + value: + description: Example description + name: MY_VARIABLE + tags: + - "team:front" + - "test:workflow-1" + value: + secure: false + value: variable-value + schema: + $ref: "#/components/schemas/SyntheticsGlobalVariableRequest" + description: Details of the global variable to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + description: "Example description" + id: abc-123 + name: "MY_VARIABLE" + tags: + - "team:front" + - "test:workflow-1" + value: + secure: false + value: "variable-value" + schema: + $ref: "#/components/schemas/SyntheticsGlobalVariable" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_write + summary: Create a global variable + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_global_variable_write + /api/v1/synthetics/variables/{variable_id}: + delete: + description: Delete a Synthetic global variable. + operationId: DeleteGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: JSON format is wrong + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_write + summary: Delete a global variable + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_global_variable_write + get: + description: Get the detailed configuration of a global variable. + operationId: GetGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + description: "Example description" + id: abc-123 + name: "MY_VARIABLE" + tags: + - "team:front" + value: + secure: false + value: "variable-value" + schema: + $ref: "#/components/schemas/SyntheticsGlobalVariable" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_read + summary: Get a global variable + tags: + - Synthetics + put: + description: Edit a Synthetic global variable. + operationId: EditGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: Example description + name: MY_VARIABLE + tags: + - "team:front" + - "test:workflow-1" + value: + secure: false + value: variable-value + schema: + $ref: "#/components/schemas/SyntheticsGlobalVariableRequest" + description: Details of the global variable to update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + description: "Example description" + id: abc-123 + name: "MY_VARIABLE" + tags: + - "team:front" + - "test:workflow-1" + value: + secure: false + value: "variable-value" + schema: + $ref: "#/components/schemas/SyntheticsGlobalVariable" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Invalid request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_write + summary: Edit a global variable + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_global_variable_write + /api/v1/tags/hosts: + get: + description: Returns a mapping of tags to hosts. For each tag, the response returns a list of host names that contain this tag. There is a restriction of 10k total host names from the org that can be attached to tags and returned. + operationId: ListHostTags + parameters: + - description: Source to filter. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. + in: query + name: source + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + tags: + environment:production: + - test.metric.host + schema: + $ref: "#/components/schemas/TagToHosts" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get All Host Tags + tags: + - Tags + "x-permission": + operator: OPEN + permissions: [] + /api/v1/tags/hosts/{host_name}: + delete: + description: |- + This endpoint allows you to remove all tags + for a single host. If no source is specified, only deletes from the source "User". + operationId: DeleteHostTags + parameters: + - description: Specified host name to delete tags + in: path + name: host_name + required: true + schema: + type: string + - description: |- + Source of the tags to be deleted. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. + in: query + name: source + required: false + schema: + type: string + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Remove host tags + tags: + - Tags + get: + description: Return the list of tags that apply to a given host. + operationId: GetHostTags + parameters: + - description: Name of the host to retrieve tags for + in: path + name: host_name + required: true + schema: + type: string + - description: Source to filter. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. + in: query + name: source + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - "environment:production" + schema: + $ref: "#/components/schemas/HostTags" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Host Tags + tags: + - Tags + post: + description: |- + This endpoint allows you to add new tags to a host, + optionally specifying what source these tags come from. If tags already exist, appends new tags to the tag list. If no source is specified, defaults to "user". + operationId: CreateHostTags + parameters: + - description: Specified host name to add new tags + in: path + name: host_name + required: true + schema: + type: string + - description: |- + Source to add tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. If no source is specified, defaults to "user". + example: "chef" + in: query + name: source + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - "environment:production" + schema: + $ref: "#/components/schemas/HostTags" + description: Update host tags request body. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - "environment:production" + schema: + $ref: "#/components/schemas/HostTags" + description: Created + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add tags to a host + tags: + - Tags + x-codegen-request-body-name: body + put: + description: |- + This endpoint allows you to update/replace all tags in + an integration source with those supplied in the request. + operationId: UpdateHostTags + parameters: + - description: Specified host name to change tags + in: path + name: host_name + required: true + schema: + type: string + - description: |- + Source to update tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. If no source specified, defaults to "user". + in: query + name: source + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - "environment:production" + schema: + $ref: "#/components/schemas/HostTags" + description: Add tags to host + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - "environment:production" + schema: + $ref: "#/components/schemas/HostTags" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update host tags + tags: + - Tags + x-codegen-request-body-name: body + /api/v1/usage/analyzed_logs: + get: + deprecated: true + description: |- + Get hourly usage for analyzed logs (Security Monitoring). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageAnalyzedLogs + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - analyzed_logs: 50 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageAnalyzedLogsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for analyzed logs + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/audit_logs: + get: + deprecated: true + description: |- + Get hourly usage for audit logs. + **Note:** This endpoint has been deprecated. + operationId: GetUsageAuditLogs + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + lines_indexed: 1000 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageAuditLogsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for audit logs + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/aws_lambda: + get: + deprecated: true + description: |- + Get hourly usage for Lambda. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageLambda + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - func_count: 10 + hour: "2024-01-01T00:00:00+00:00" + invocations_sum: 100 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageLambdaResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for Lambda + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/billable-summary: + get: + description: |- + Get billable usage across your account. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetUsageBillableSummary + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage starting this month." + in: query + name: month + required: false + schema: + format: date-time + type: string + - description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`." + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - account_name: Example Name + account_public_id: abc-123 + end_date: "2024-01-31T00:00:00+00:00" + num_orgs: 1 + org_name: example-handle + public_id: abc-123 + start_date: "2024-01-01T00:00:00+00:00" + schema: + $ref: "#/components/schemas/UsageBillableSummaryResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get billable usage across your account + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/ci-app: + get: + deprecated: true + description: |- + Get hourly usage for CI visibility (tests, pipeline, and spans). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageCIApp + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - ci_pipeline_indexed_spans: 1000 + ci_test_indexed_spans: 2000 + ci_visibility_itr_committers: 5 + ci_visibility_pipeline_committers: 3 + ci_visibility_test_committers: 10 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageCIVisibilityResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for CI visibility + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/cspm: + get: + deprecated: true + description: |- + Get hourly usage for cloud security management (CSM) pro. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageCloudSecurityPostureManagement + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - aws_host_count: 2.0 + azure_host_count: 1.0 + container_count: 10.0 + gcp_host_count: 1.0 + host_count: 5.0 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageCloudSecurityPostureManagementResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for CSM Pro + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/cws: + get: + deprecated: true + description: |- + Get hourly usage for cloud workload security. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageCWS + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - cws_container_count: 10 + cws_host_count: 5 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageCWSResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for cloud workload security + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/dbm: + get: + deprecated: true + description: |- + Get hourly usage for database monitoring + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageDBM + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - dbm_host_count: 5 + dbm_queries_count: 100 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageDBMResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for database monitoring + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/fargate: + get: + deprecated: true + description: |- + Get hourly usage for [Fargate](https://docs.datadoghq.com/integrations/ecs_fargate/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageFargate + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - apm_fargate_count: 2 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + tasks_count: 5 + schema: + $ref: "#/components/schemas/UsageFargateResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for Fargate + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/hosts: + get: + deprecated: true + description: |- + Get hourly usage for hosts and containers. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageHosts + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - agent_host_count: 1 + apm_host_count: 1 + aws_host_count: 0 + container_count: 2 + gcp_host_count: 0 + host_count: 1 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageHostsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for hosts and containers + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/hourly-attribution: + get: + description: |- + Get hourly usage attribution. Multi-region data is available starting March 1, 2023. + + This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is + set in the response. If it is, make another request and pass `next_record_id` as a parameter. + Pseudo code example: + + ``` + response := GetHourlyUsageAttribution(start_month) + cursor := response.metadata.pagination.next_record_id + WHILE cursor != null BEGIN + sleep(5 seconds) # Avoid running into rate limit + response := GetHourlyUsageAttribution(start_month, next_record_id=cursor) + cursor := response.metadata.pagination.next_record_id + END + ``` + operationId: GetHourlyUsageAttribution + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + - description: |- + Usage type to retrieve. Usage types are in the format `_usage`. + Example: `infra_host_usage` + To obtain the complete list of active usage types that can be used to replace + `` in the field names, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + in: query + name: usage_type + required: true + schema: + $ref: "#/components/schemas/HourlyUsageAttributionUsageType" + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + - description: |- + Comma separated list of tags used to group usage. If no value is provided the usage will not be broken down by tags. + + To see which tags are available, look for the value of `tag_config_source` in the API response. + in: query + name: tag_breakdown_keys + required: false + schema: + type: string + - description: "Include child org usage in the response. Defaults to `true`." + in: query + name: include_descendants + required: false + schema: + default: true + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + metadata: + pagination: + next_record_id: + usage: + - hour: "2024-01-01T00:00:00+00:00" + org_name: "Test Org" + public_id: "abc-123" + region: "us" + total_usage_sum: 1.0 + updated_at: "2024-01-01T00:00:00+00:00" + usage_type: infra_host_usage + schema: + $ref: "#/components/schemas/HourlyUsageAttributionResponse" + description: OK + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage attribution + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/incident-management: + get: + deprecated: true + description: |- + Get hourly usage for incident management. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetIncidentManagement + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + monthly_active_users: 5 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageIncidentManagementResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for incident management + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/indexed-spans: + get: + deprecated: true + description: |- + Get hourly usage for indexed spans. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageIndexedSpans + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + indexed_events_count: 500 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageIndexedSpansResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for indexed spans + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/ingested-spans: + get: + deprecated: true + description: |- + Get hourly usage for ingested spans. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetIngestedSpans + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + ingested_events_bytes: 1000000 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageIngestedSpansResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for ingested spans + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/iot: + get: + deprecated: true + description: |- + Get hourly usage for IoT. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageInternetOfThings + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + iot_device_count: 100 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageIoTResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for IoT + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/logs: + get: + deprecated: true + description: |- + Get hourly usage for logs. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageLogs + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - billable_ingested_bytes: 100 + hour: "2024-01-01T00:00:00+00:00" + indexed_events_count: 10 + ingested_events_bytes: 200 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageLogsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for logs + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/logs-by-retention: + get: + deprecated: true + description: |- + Get hourly usage for indexed logs by retention period. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageLogsByRetention + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - indexed_events_count: 100 + live_indexed_events_count: 80 + org_name: example-handle + public_id: abc-123 + rehydrated_indexed_events_count: 20 + retention: "15" + schema: + $ref: "#/components/schemas/UsageLogsByRetentionResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly logs usage by retention + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/logs_by_index: + get: + description: |- + Get hourly usage for logs by index. + operationId: GetUsageLogsByIndex + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + - description: Comma-separated list of log index names. + in: query + name: index_name + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - event_count: 1000 + hour: "2024-01-01T00:00:00+00:00" + index_id: abc-123 + index_name: main + org_name: example-handle + public_id: abc-123 + retention: 15 + schema: + $ref: "#/components/schemas/UsageLogsByIndexResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for logs by index + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/monthly-attribution: + get: + description: |- + Get monthly usage attribution. Multi-region data is available starting March 1, 2023. + + This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is + set in the response. If it is, make another request and pass `next_record_id` as a parameter. + Pseudo code example: + + ``` + response := GetMonthlyUsageAttribution(start_month) + cursor := response.metadata.pagination.next_record_id + WHILE cursor != null BEGIN + sleep(5 seconds) # Avoid running into rate limit + response := GetMonthlyUsageAttribution(start_month, next_record_id=cursor) + cursor := response.metadata.pagination.next_record_id + END + ``` + operationId: GetMonthlyUsageAttribution + parameters: + - description: |- + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage beginning in this month. + Maximum of 15 months ago. + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage ending this month." + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: |- + Comma-separated list of usage types to return, or `*` for all usage types. + Usage types are in the format `_usage` and `_percentage`. + Example: `infra_host_usage,infra_host_percentage` + To obtain the complete list of usage attribution types that can be used to replace + `` in the field names, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + in: query + name: fields + required: true + schema: + $ref: "#/components/schemas/MonthlyUsageAttributionSupportedMetrics" + - description: "The direction to sort by: `[desc, asc]`." + in: query + name: sort_direction + required: false + schema: + $ref: "#/components/schemas/UsageSortDirection" + - description: |- + The field to sort by. Sort fields are in the format `_usage`. + Example: `infra_host_usage` + To obtain the complete list of usage attribution types that can be used to replace + `` in the field names, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + in: query + name: sort_name + required: false + schema: + $ref: "#/components/schemas/MonthlyUsageAttributionSupportedMetrics" + - description: |- + Comma separated list of tag keys used to group usage. If no value is provided the usage will not be broken down by tags. + + To see which tags are available, look for the value of `tag_config_source` in the API response. + in: query + name: tag_breakdown_keys + required: false + schema: + type: string + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + - description: "Include child org usage in the response. Defaults to `true`." + in: query + name: include_descendants + required: false + schema: + default: true + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + metadata: + pagination: + next_record_id: + usage: + - month: "2024-01-01T00:00:00+00:00" + org_name: "Test Org" + public_id: "abc-123" + region: "us" + updated_at: "2024-01-01T00:00:00+00:00" + values: + infra_host_percentage: 100.0 + infra_host_usage: 1.0 + schema: + $ref: "#/components/schemas/MonthlyUsageAttributionResponse" + description: OK + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get monthly usage attribution + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/network_flows: + get: + deprecated: true + description: |- + Get hourly usage for network flows. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageNetworkFlows + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + indexed_events_count: 200 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageNetworkFlowsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: get hourly usage for network flows + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/network_hosts: + get: + deprecated: true + description: |- + Get hourly usage for network hosts. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageNetworkHosts + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - host_count: 5 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageNetworkHostsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for network hosts + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/online-archive: + get: + deprecated: true + description: |- + Get hourly usage for online archive. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageOnlineArchive + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + online_archive_events_count: 5000 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageOnlineArchiveResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for online archive + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/profiling: + get: + deprecated: true + description: |- + Get hourly usage for profiled hosts. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageProfiling + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - avg_container_agent_count: 2 + host_count: 5 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageProfilingResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for profiled hosts + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/rum: + get: + deprecated: true + description: |- + Get hourly usage for [RUM](https://docs.datadoghq.com/real_user_monitoring/) Units. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageRumUnits + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - browser_rum_units: 50 + mobile_rum_units: 50 + org_name: example-handle + public_id: abc-123 + rum_units: 100 + schema: + $ref: "#/components/schemas/UsageRumUnitsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for RUM units + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/rum_sessions: + get: + deprecated: true + description: |- + Get hourly usage for [RUM](https://docs.datadoghq.com/real_user_monitoring/) Sessions. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageRumSessions + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + - description: "RUM type: `[browser, mobile]`. Defaults to `browser`." + in: query + name: type + required: false + schema: + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + replay_session_count: 10 + session_count: 100 + schema: + $ref: "#/components/schemas/UsageRumSessionsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for RUM sessions + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/sds: + get: + deprecated: true + description: |- + Get hourly usage for sensitive data scanner. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSDS + parameters: + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour. + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + logs_scanned_bytes: 1000000 + org_name: example-handle + public_id: abc-123 + total_scanned_bytes: 2000000 + schema: + $ref: "#/components/schemas/UsageSDSResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for sensitive data scanner + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/snmp: + get: + deprecated: true + description: |- + Get hourly usage for SNMP devices. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSNMP + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + snmp_devices: 10 + schema: + $ref: "#/components/schemas/UsageSNMPResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for SNMP devices + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/summary: + get: + description: |- + Get all usage across your account. + + For SDK users only: all fields on `UsageSummaryResponse`, `UsageSummaryDate`, and + `UsageSummaryDateOrg` are accessible through each object's `additionalProperties` map. + Existing typed-field getters are unchanged. New billing dimensions will not have + typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key at each response level. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetUsageSummary + parameters: + - description: |- + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage beginning in this month. + Maximum of 15 months ago. + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage ending this month." + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: Include usage summaries for each sub-org. + in: query + name: include_org_details + required: false + schema: + type: boolean + - description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`." + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + apm_host_top99p_sum: 2 + container_avg_sum: 5 + end_date: "2024-01-31T00:00:00+00:00" + last_updated: "2024-01-01T00:00:00+00:00" + start_date: "2024-01-01T00:00:00+00:00" + usage: + - apm_host_top99p: 2 + container_avg: 5 + date: "2024-01-01T00:00:00+00:00" + schema: + $ref: "#/components/schemas/UsageSummaryResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get usage across your account + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/synthetics: + get: + deprecated: true + description: |- + Get hourly usage for [synthetics checks](https://docs.datadoghq.com/synthetics/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSynthetics + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - check_calls_count: 50 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageSyntheticsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for synthetics checks + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/synthetics_api: + get: + deprecated: true + description: |- + Get hourly usage for [synthetics API checks](https://docs.datadoghq.com/synthetics/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSyntheticsAPI + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - check_calls_count: 50 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageSyntheticsAPIResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for synthetics API checks + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/synthetics_browser: + get: + deprecated: true + description: |- + Get hourly usage for synthetics browser checks. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSyntheticsBrowser + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - browser_check_calls_count: 20 + hour: "2024-01-01T00:00:00+00:00" + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageSyntheticsBrowserResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for synthetics browser checks + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/timeseries: + get: + deprecated: true + description: |- + Get hourly usage for [custom metrics](https://docs.datadoghq.com/developers/metrics/custom_metrics/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageTimeseries + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + usage: + - hour: "2024-01-01T00:00:00+00:00" + num_custom_input_timeseries: 10 + num_custom_output_timeseries: 5 + num_custom_timeseries: 100 + org_name: example-handle + public_id: abc-123 + schema: + $ref: "#/components/schemas/UsageTimeseriesResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for custom metrics + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/usage/top_avg_metrics: + get: + description: Get all [custom metrics](https://docs.datadoghq.com/developers/metrics/custom_metrics/) by hourly average. Use the month parameter to get a month-to-date data resolution or use the day parameter to get a daily resolution. One of the two is required, and only one of the two is allowed. + operationId: GetUsageTopAvgMetrics + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM] for usage beginning at this hour. (Either month or day should be specified, but not both)" + in: query + name: month + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to day: [YYYY-MM-DD] for usage beginning at this hour. (Either month or day should be specified, but not both)" + in: query + name: day + schema: + format: date-time + type: string + - description: Comma-separated list of metric names. + in: query + name: names + required: false + schema: + items: + type: string + type: array + - description: Maximum number of results to return (between 1 and 5000) - defaults to 500 results if limit not specified. + in: query + name: limit + required: false + schema: + default: 500 + format: int32 + maximum: 5000 + minimum: 1 + type: integer + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + metadata: + month: "2024-01-01T00:00:00+00:00" + pagination: + next_record_id: + usage: + - avg_metric_hour: 5 + max_metric_hour: 10 + metric_category: custom + metric_name: test-metric + schema: + $ref: "#/components/schemas/UsageTopAvgMetricsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get all custom metrics by hourly average + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v1/user: + get: + description: List all users for your organization. + operationId: ListUsers + responses: + "200": + content: + application/json: + examples: + default: + value: + users: + - disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: "#/components/schemas/UserListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List all users + tags: + - Users + "x-permission": + operator: OR + permissions: + - user_access_read + post: + description: |- + Create a user for your organization. + + **Note**: Users can only be created with the admin access role + if application keys belong to administrators. + operationId: CreateUser + requestBody: + content: + application/json: + examples: + default: + value: + email: test@datadoghq.com + handle: test@datadoghq.com + name: test user + schema: + $ref: "#/components/schemas/User" + description: User object that needs to be created. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + user: + disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: "#/components/schemas/UserResponse" + description: User created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a user + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_invite + /api/v1/user/{user_handle}: + delete: + description: |- + Delete a user from an organization. + + **Note**: This endpoint can only be used with application keys belonging to + administrators. + operationId: DisableUser + parameters: + - description: The handle of the user. + in: path + name: user_handle + required: true + schema: + example: test@datadoghq.com + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + message: "User user@example.com disabled" + schema: + $ref: "#/components/schemas/UserDisableResponse" + description: User disabled + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Disable a user + tags: + - Users + get: + description: Get a user's details. + operationId: GetUser + parameters: + - description: The ID of the user. + in: path + name: user_handle + required: true + schema: + example: test@datadoghq.com + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + user: + disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: "#/components/schemas/UserResponse" + description: OK for get user + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get user details + tags: + - Users + put: + description: |- + Update a user information. + + **Note**: It can only be used with application keys belonging to administrators. + operationId: UpdateUser + parameters: + - description: The ID of the user. + in: path + name: user_handle + required: true + schema: + example: test@datadoghq.com + type: string + requestBody: + content: + application/json: + examples: + default: + value: + disabled: false + email: test@datadoghq.com + name: test user + schema: + $ref: "#/components/schemas/User" + description: Description of the update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + user: + disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: "#/components/schemas/UserResponse" + description: User updated + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a user + tags: + - Users + x-codegen-request-body-name: body + /api/v1/validate: + get: + description: Check if the API key (not the APP key) is valid. If invalid, a 403 is returned. + operationId: Validate + responses: + "200": + content: + application/json: + examples: + default: + value: + valid: true + schema: + $ref: "#/components/schemas/AuthenticationValidationResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Validate API key + tags: + - Authentication + "x-permission": + operator: OPEN + permissions: [] + /v1/input: + post: + deprecated: true + description: |- + Send your logs to your Datadog platform over HTTP. Limits per HTTP request are: + + - Maximum content size per payload (uncompressed): 5MB + - Maximum size for a single log: 1MB + - Maximum array size if sending multiple logs in an array: 1000 entries + + Any log exceeding 1MB is accepted and truncated by Datadog: + - For a single log request, the API truncates the log at 1MB and returns a 2xx. + - For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx. + + Datadog recommends sending your logs compressed. + Add the `Content-Encoding: gzip` header to the request when sending compressed logs. + + The status codes answered by the HTTP API are: + - 200: OK + - 400: Bad request (likely an issue in the payload formatting) + - 403: Permission issue (likely using an invalid API Key) + - 413: Payload too large (batch is above 5MB uncompressed) + - 5xx: Internal error, request should be retried after some time + operationId: SubmitLog + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: "#/components/schemas/ContentEncoding" + - description: Log tags can be passed as query parameters with `text/plain` content type. + example: "env:prod,user:my-user" + in: query + name: ddtags + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + - ddsource: nginx + ddtags: "env:staging,version:5.1" + hostname: i-012345678 + message: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World" + service: payment + multi-json-messages: + description: Pass multiple log objects at once. + summary: Multi JSON Messages + value: + - message: hello + - message: world + schema: + $ref: "#/components/schemas/HTTPLog" + application/json;simple: + examples: + default: + value: + ddsource: nginx + ddtags: "env:staging,version:5.1" + hostname: i-012345678 + message: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World" + service: payment + simple-json-message: + description: Log attributes can be passed as `key:value` pairs in valid JSON messages. + summary: Simple JSON Message + value: + ddsource: "agent" + ddtags: "env:prod,user:joe.doe" + hostname: "fa1e1e739d95" + message: hello world + schema: + $ref: "#/components/schemas/HTTPLogItem" + application/logplex-1: + examples: + default: + value: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World" + multi-raw-message: + description: Submit log messages. + summary: Multi Logplex Messages + value: |- + hello + world + simple-logplex-message: + description: Submit log string. + summary: Simple Logplex Message + value: hello world + schema: + type: string + text/plain: + examples: + default: + value: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World" + multi-raw-message: + description: Submit log string. + summary: Multi Raw Messages + value: |- + hello + world + simple-raw-message: + description: >- + Submit log string. Log attributes can be passed as query parameters in the URL. This enables the addition of tags or the source by using the `ddtags` and `ddsource` parameters: `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`. + summary: Simple Raw Message + value: hello world + schema: + type: string + description: Log to send (JSON format). + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: Response from server (always 200 empty JSON). + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogError" + description: unexpected error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + servers: + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The regional site for Datadog customers. + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - uk1.datadoghq.com + - datadoghq.eu + - ddog-gov.com + - us2.ddog-gov.com + x-enum-varnames: + - US1 + - US3 + - US5 + - AP1 + - AP2 + - UK1 + - EU1 + - GOV + - US2_GOV + subdomain: + default: http-intake.logs + description: The subdomain where the API is deployed. + - url: "{protocol}://{name}" + variables: + name: + default: http-intake.logs.datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: Any Datadog deployment. + subdomain: + default: http-intake.logs + description: The subdomain where the API is deployed. + summary: Send logs + tags: + - Logs + x-codegen-request-body-name: body +security: + - apiKeyAuth: [] + appKeyAuth: [] +servers: + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The regional site for Datadog customers. + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - uk1.datadoghq.com + - datadoghq.eu + - ddog-gov.com + - us2.ddog-gov.com + - uk1.datadoghq.com + subdomain: + default: api + description: The subdomain where the API is deployed. + - url: "{protocol}://{name}" + variables: + name: + default: api.datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: Any Datadog deployment. + subdomain: + default: api + description: The subdomain where the API is deployed. +tags: + - description: |- + Configure your Datadog-AWS integration directly through the Datadog API. + For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services). + name: AWS Integration + - description: |- + Configure your Datadog-AWS-Logs integration directly through Datadog API. + For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection). + externalDocs: + url: https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection + name: AWS Logs Integration + - description: |- + All requests to Datadog’s API must be authenticated. + Requests that write data require reporting access and require an `API key`. + Requests that read data require full access and also require an `application key`. + + **Note:** All Datadog API clients are configured by default to consume Datadog US site APIs. + If you are on the Datadog EU site, set the environment variable `DATADOG_HOST` to + `https://api.datadoghq.eu` or override this value directly when creating your client. + + [Manage your account’s API and application keys](https://app.datadoghq.com/organization-settings/) in Datadog, and see the [API and Application Keys page](https://docs.datadoghq.com/account_management/api-app-keys/) in the documentation. + name: Authentication + - description: |- + Configure your Datadog-Azure integration directly through the Datadog API. + For more information, see the [Datadog-Azure integration page](https://docs.datadoghq.com/integrations/azure). + externalDocs: + url: https://docs.datadoghq.com/integrations/azure + name: Azure Integration + - description: |- + Interact with your dashboard lists through the API to + organize, find, and share all of your dashboards with your team and + organization. + name: Dashboard Lists + x-deprecated: true + - description: |- + Manage all your dashboards, as well as access to your shared dashboards, through the API. See the [Dashboards page](https://docs.datadoghq.com/dashboards/) for more information. + name: Dashboards + - description: |- + [Downtiming](https://docs.datadoghq.com/monitors/notify/downtimes) gives + you greater control over monitor notifications by allowing you to globally exclude + scopes from alerting. Downtime settings, which can be scheduled with start and + end times, prevent all alerting related to specified Datadog tags. + + **Note:** `curl` commands require [url encoding](https://curl.se/docs/url-syntax.html). + name: Downtimes + - description: |- + The Event Management API allows you to programmatically post events to the Events Explorer and fetch events from the Events Explorer. See the [Event Management page](https://docs.datadoghq.com/service_management/events/) for more information. + + **Update to Datadog monitor events `aggregation_key` starting March 1, 2025:** The Datadog monitor events `aggregation_key` is unique to each Monitor ID. Starting March 1st, this key will also include Monitor Group, making it unique per *Monitor ID and Monitor Group*. If you're using monitor events `aggregation_key` in dashboard queries or the Event API, you must migrate to use `@monitor.id`. Reach out to [support](https://www.datadoghq.com/support/) if you have any question. + name: Events + - description: |- + Configure your Datadog-Google Cloud Platform (GCP) integration directly + through the Datadog API. Read more about the [Datadog-Google Cloud Platform integration](https://docs.datadoghq.com/integrations/google_cloud_platform). + externalDocs: + url: https://docs.datadoghq.com/integrations/google_cloud_platform + name: GCP Integration + - description: Get information about your infrastructure hosts in Datadog, and mute or unmute any notifications from your hosts. See the [Infrastructure page](https://docs.datadoghq.com/infrastructure/) for more information. + name: Hosts + - description: Get a list of IP prefixes belonging to Datadog. + name: IP Ranges + - description: |- + Manage your Datadog API and application keys. You need an API key and an + application key for a user with the required permissions to interact with these endpoints. + + Consult the following pages to view and manage your keys: + + - [API Keys](https://app.datadoghq.com/organization-settings/api-keys) + - [Application Keys](https://app.datadoghq.com/personal-settings/application-keys) + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/account_management/api-app-keys/" + name: Key Management + - description: |- + Search your logs and send them to your Datadog platform over HTTP. See the [Log Management page](https://docs.datadoghq.com/logs/) for more information. + name: Logs + - description: |- + Manage configuration of [log indexes](https://docs.datadoghq.com/logs/indexes/). + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/logs/indexes/ + name: Logs Indexes + - description: |- + Pipelines and processors operate on incoming logs, parsing + and transforming them into structured attributes for easier querying. + + - See the [pipelines configuration page](https://app.datadoghq.com/logs/pipelines) + for a list of the pipelines and processors currently configured in web UI. + + - Additional API-related information about processors can be found in the + [processors documentation](https://docs.datadoghq.com/logs/log_configuration/processors/?tab=api#lookup-processor). + + - For more information about Pipelines, see the + [pipeline documentation](https://docs.datadoghq.com/logs/log_configuration/pipelines). + + **Notes:** + + **Grok parsing rules may effect JSON output and require + returned data to be configured before using in a request.** + For example, if you are using the data returned from a + request for another request body, and have a parsing rule + that uses a regex pattern like `\s` for spaces, you will + need to configure all escaped spaces as `%{space}` to use + in the body data. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/logs/log_configuration + name: Logs Pipelines + - description: |- + The metrics endpoint allows you to: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + + See the [Metrics page](https://docs.datadoghq.com/metrics/) for more information. + name: Metrics + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/). + + **Note:** `curl` commands require [url encoding](https://curl.se/docs/url-syntax.html). + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/monitors/create/types/ + name: Monitors + - description: |- + Interact with your notebooks through the API to make it easier to organize, find, and + share all of your notebooks with your team and organization. For more information, see the + [Notebooks documentation](https://docs.datadoghq.com/notebooks/). + externalDocs: + description: For more information, see the Notebooks documentation. + url: https://docs.datadoghq.com/notebooks/ + name: Notebooks + - description: Create, edit, and manage your organizations. Read more about [multi-org accounts](https://docs.datadoghq.com/account_management/multi_organization). + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/account_management/multi_organization" + name: Organizations + - description: |- + Configure your [Datadog-PagerDuty integration](https://docs.datadoghq.com/integrations/pagerduty/) + directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/integrations/pagerduty/ + name: PagerDuty Integration + - description: |- + Create and manage your security rules, signals, filters, and more. See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information. + name: "Security Monitoring" + - description: |- + The service check endpoint allows you to post check statuses for use with monitors. + Service check messages are limited to 500 characters. If a check is posted with a message + containing more than 500 characters, only the first 500 characters are displayed. Messages + are limited for checks with a Critical or Warning status, they are dropped for checks with + an OK status. + + - [Read more about Service Check monitors][1]. + - [Read more about Process Check monitors][2]. + - [Read more about Network monitors][3]. + - [Read more about Custom Check monitors][4]. + - [Read more about Service Checks and status codes][5]. + + [1]: https://docs.datadoghq.com/monitors/types/service_check/ + [2]: https://docs.datadoghq.com/monitors/create/types/process_check/?tab=checkalert + [3]: https://docs.datadoghq.com/monitors/create/types/network/?tab=checkalert + [4]: https://docs.datadoghq.com/monitors/create/types/custom_check/?tab=checkalert + [5]: https://docs.datadoghq.com/developers/service_checks/ + name: Service Checks + - description: |- + SLO Status Corrections allow you to prevent specific time periods from negatively impacting + your SLO’s status and error budget. You can use Status Corrections for various purposes, such + as removing planned maintenance windows, non-business hours, or other time periods that do + not correspond to genuine issues. See [SLO status corrections](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-status-corrections) for more information. + name: Service Level Objective Corrections + - description: |- + [Service Level Objectives](https://docs.datadoghq.com/monitors/service_level_objectives/#configuration) + (or SLOs) are a key part of the site reliability engineering toolkit. + SLOs provide a framework for defining clear targets around application performance, + which ultimately help teams provide a consistent customer experience, + balance feature development with platform stability, + and improve communication with internal and external users. + name: Service Level Objectives + - description: |- + Configure your [Datadog-Slack integration](https://docs.datadoghq.com/integrations/slack) + directly through the Datadog API. + externalDocs: + description: For more information about the Datadog-Slack integration, see the integration page. + url: https://docs.datadoghq.com/integrations/slack + name: Slack Integration + - description: Take graph snapshots using the API. + name: Snapshots + - description: |- + Synthetic tests use simulated requests and actions so you can monitor the availability and performance of systems and applications. Datadog supports the following types of synthetic tests: + - [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + - [Browser tests](https://docs.datadoghq.com/synthetics/browser_tests) + - [Network Path tests](https://docs.datadoghq.com/synthetics/network_path_tests/) + - [Mobile Application tests](https://docs.datadoghq.com/synthetics/mobile_app_testing) + + You can use the Datadog API to create, manage, and organize tests and test suites programmatically. + + For more information, see the [Synthetic Monitoring documentation](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: |- + The tag endpoint allows you to assign tags to hosts, + for example: `role:database`. Those tags are applied to + all metrics sent by the host. Refer to hosts by name + (`yourhost.example.com`) when fetching and applying + tags to a particular host. + + The component of your infrastructure responsible for a tag is identified + by a source. For example, some valid sources include nagios, hudson, jenkins, + users, feed, chef, puppet, git, bitbucket, fabric, capistrano, etc. Find a complete list of source type names under [API Source Attributes](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + + Read more about tags on [Getting Started with Tags](https://docs.datadoghq.com/getting_started/tagging/). + name: Tags + - description: |- + The usage metering API allows you to get hourly, daily, and + monthly usage across multiple facets of Datadog. + This API is available to all Pro and Enterprise customers. + + **Note**: Usage data is delayed by up to 72 hours from when it was incurred. + It is retained for 15 months. + + You can retrieve up to 24 hours of hourly usage data for multiple organizations, + and up to two months of hourly usage data for a single organization in one request. + Learn more on the [usage details documentation](https://docs.datadoghq.com/account_management/billing/usage_details/). + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/account_management/billing/usage_details/" + name: Usage Metering + - description: Create, edit, and disable users. + externalDocs: + url: https://docs.datadoghq.com/account_management/users + name: Users + - description: |- + Configure your Datadog-Webhooks integration directly through the Datadog API. + See the [Webhooks integration page](https://docs.datadoghq.com/integrations/webhooks) for more information. + externalDocs: + url: https://docs.datadoghq.com/integrations/webhooks + name: Webhooks Integration +x-group-parameters: true diff --git a/provider-dev/downloaded/v2-openapi.yaml b/provider-dev/downloaded/v2-openapi.yaml new file mode 100644 index 0000000..e24a358 --- /dev/null +++ b/provider-dev/downloaded/v2-openapi.yaml @@ -0,0 +1,221206 @@ +components: + callbacks: {} + examples: {} + headers: {} + links: {} + parameters: + APIKeyCategoryParameter: + description: Filter API keys by category. + in: query + name: filter[category] + required: false + schema: + type: string + APIKeyFilterCreatedAtEndParameter: + description: Only include API keys created on or before the specified date. + in: query + name: filter[created_at][end] + required: false + schema: + example: "2020-11-24T18:46:21+00:00" + type: string + APIKeyFilterCreatedAtStartParameter: + description: Only include API keys created on or after the specified date. + in: query + name: filter[created_at][start] + required: false + schema: + example: "2020-11-24T18:46:21+00:00" + type: string + APIKeyFilterModifiedAtEndParameter: + description: Only include API keys modified on or before the specified date. + in: query + name: filter[modified_at][end] + required: false + schema: + example: "2020-11-24T18:46:21+00:00" + type: string + APIKeyFilterModifiedAtStartParameter: + description: Only include API keys modified on or after the specified date. + in: query + name: filter[modified_at][start] + required: false + schema: + example: "2020-11-24T18:46:21+00:00" + type: string + APIKeyFilterParameter: + description: Filter API keys by the specified string. + in: query + name: filter + required: false + schema: + type: string + APIKeyId: + description: The ID of the API key. + in: path + name: api_key_id + required: true + schema: + type: string + APIKeyIncludeParameter: + description: |- + Comma separated list of resource paths for related resources to include in the response. Supported resource paths are `created_by` and `modified_by`. + in: query + name: include + required: false + schema: + example: "created_by,modified_by" + type: string + APIKeyReadConfigReadEnabledParameter: + description: Filter API keys by remote config read enabled status. + in: query + name: filter[remote_config_read_enabled] + required: false + schema: + type: boolean + APIKeysSortParameter: + description: |- + API key attribute used to sort results. Sort order is ascending + by default. In order to specify a descending sort, prefix the + attribute with a minus sign. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/APIKeysSort" + AWSAccountConfigIDPathParameter: + description: |- + Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the + [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) + endpoint and query by AWS Account ID. + in: path + name: aws_account_config_id + required: true + schema: + type: string + AccessTokenID: + description: The ID of the access token. + in: path + name: token_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + AnnotationEndTimeQueryParameter: + description: End of the time window in milliseconds since the Unix epoch. + example: 1704153600000 + in: query + name: end_time + required: true + schema: + format: int64 + type: integer + AnnotationIDPathParameter: + description: The ID of the annotation. + example: "00000000-0000-0000-0000-000000000000" + in: path + name: annotation_id + required: true + schema: + format: uuid + type: string + AnnotationPageIDPathParameter: + description: |- + The ID of the page, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: "dashboard:abc-def-xyz" + in: path + name: page_id + required: true + schema: + type: string + AnnotationStartTimeQueryParameter: + description: Start of the time window in milliseconds since the Unix epoch. + example: 1704067200000 + in: query + name: start_time + required: true + schema: + format: int64 + type: integer + AnomalyID: + description: The UUID of the cost anomaly. + in: path + name: anomaly_id + required: true + schema: + type: string + ApplicationKeyFilterCreatedAtEndParameter: + description: Only include application keys created on or before the specified date. + in: query + name: filter[created_at][end] + required: false + schema: + example: "2020-11-24T18:46:21+00:00" + type: string + ApplicationKeyFilterCreatedAtStartParameter: + description: Only include application keys created on or after the specified date. + in: query + name: filter[created_at][start] + required: false + schema: + example: "2020-11-24T18:46:21+00:00" + type: string + ApplicationKeyFilterOwnedByParameter: + description: Filter application keys by owner ID. + in: query + name: filter[owned_by] + required: false + schema: + type: string + ApplicationKeyFilterParameter: + description: Filter application keys by the specified string. + in: query + name: filter + required: false + schema: + type: string + ApplicationKeyID: + description: The ID of the application key. + in: path + name: app_key_id + required: true + schema: + type: string + ApplicationKeyId: + description: The ID of the app key + in: path + name: app_key_id + required: true + schema: + type: string + ApplicationKeyIncludeParameter: + description: Resource path for related resources to include in the response. Only `owned_by` is supported. + in: query + name: include + required: false + schema: + example: "owned_by" + type: string + ApplicationKeysSortParameter: + description: |- + Application key attribute used to sort results. Sort order is ascending + by default. In order to specify a descending sort, prefix the + attribute with a minus sign. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/ApplicationKeysSort" + ApplicationSecurityPolicyIDParam: + description: The ID of the policy. + example: recommended + in: path + name: policy_id + required: true + schema: + type: string + ApplicationSecurityServiceNameParam: + description: |- + The name of the service to retrieve Application Security details for. + Returns all matching services across environments. + example: web-store + in: path + name: service_filter + required: true + schema: + type: string + ApplicationSecurityWafCustomRuleIDParam: + description: The ID of the custom rule. + example: 3b5-v82-ns6 + in: path + name: custom_rule_id + required: true + schema: + type: string + ApplicationSecurityWafExclusionFilterID: + description: The identifier of the WAF exclusion filter. + example: 3b5-v82-ns6 + in: path + name: exclusion_filter_id + required: true + schema: + type: string + ArchiveID: + description: The ID of the archive. + in: path + name: archive_id + required: true + schema: + type: string + AttachmentIDPathParameter: + description: "The ID of the attachment." + in: path + name: attachment_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + AttachmentIncludeQueryParameter: + description: "Resource to include in the response. Supported value: `last_modified_by_user`." + explode: false + in: query + name: include + required: false + schema: + example: "last_modified_by_user" + type: string + AuthNMappingID: + description: The UUID of the AuthN Mapping. + in: path + name: authn_mapping_id + required: true + schema: + type: string + AwsAccountId: + description: The ID of an AWS account. + example: "123456789012" + in: path + name: account_id + required: true + schema: + type: string + BudgetID: + description: Budget id. + in: path + name: budget_id + required: true + schema: + type: string + CaseCustomAttributeIDPathParameter: + description: Case Custom attribute's UUID + example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de505" + in: path + name: custom_attribute_id + required: true + schema: + type: string + CaseCustomAttributeKeyPathParameter: + description: Case Custom attribute's key + example: "aws_region" + in: path + name: custom_attribute_key + required: true + schema: + type: string + CaseIDPathParameter: + description: Case's UUID or key + example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de504" + in: path + name: case_id + required: true + schema: + type: string + CaseSortableFieldParameter: + description: Specify which field to sort + in: query + name: sort[field] + required: false + schema: + $ref: "#/components/schemas/CaseSortableField" + CaseTypeIDPathParameter: + description: The UUID of the case type. + example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de505" + in: path + name: case_type_id + required: true + schema: + type: string + CellIDPathParameter: + description: The UUID of the timeline cell (comment) to update. + example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de504" + in: path + name: cell_id + required: true + schema: + type: string + ChangeRequestDecisionIDPathParameter: + description: The identifier of the change request decision. + example: "decision-id-0" + in: path + name: decision_id + required: true + schema: + type: string + ChangeRequestIDPathParameter: + description: The identifier of the change request. + example: "CHM-1234" + in: path + name: change_request_id + required: true + schema: + type: string + CloudAccountID: + description: Cloud Account id. + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer + CloudInventorySyncConfigID: + description: Unique identifier of the Storage Management configuration. + example: abc123 + in: path + name: id + required: true + schema: + type: string + CloudWorkloadSecurityAgentRuleID: + description: "The ID of the Agent rule" + example: 3b5-v82-ns6 + in: path + name: agent_rule_id + required: true + schema: + type: string + CloudWorkloadSecurityPathAgentPolicyID: + description: "The ID of the Agent policy" + example: 6517fcc1-cec7-4394-a655-8d6e9d085255 + in: path + name: policy_id + required: true + schema: + type: string + CloudWorkloadSecurityQueryAgentPolicyID: + description: "The ID of the Agent policy" + example: 6517fcc1-cec7-4394-a655-8d6e9d085255 + in: query + name: policy_id + required: false + schema: + type: string + CommitmentsCommitmentType: + description: Type of commitment to query. ri for Reserved Instances, sp for Savings Plans. Defaults to ri. + in: query + name: commitmentType + required: false + schema: + $ref: "#/components/schemas/CommitmentsCommitmentType" + CommitmentsEnd: + description: End of the query time range in Unix milliseconds. + example: 1696118400000 + in: query + name: end + required: true + schema: + format: int64 + type: integer + CommitmentsFilterBy: + description: Optional filter expression to narrow down results. + in: query + name: filterBy + required: false + schema: + type: string + CommitmentsProduct: + description: Cloud product identifier (for example, ec2, rds, virtualmachines). + example: ec2 + in: query + name: product + required: true + schema: + type: string + CommitmentsProvider: + description: Cloud provider for commitment programs (aws or azure). + example: aws + in: query + name: provider + required: true + schema: + $ref: "#/components/schemas/CommitmentsProvider" + CommitmentsStart: + description: Start of the query time range in Unix milliseconds. + example: 1693526400000 + in: query + name: start + required: true + schema: + format: int64 + type: integer + ConfluentAccountID: + description: Confluent Account ID. + in: path + name: account_id + required: true + schema: + type: string + ConfluentResourceID: + description: Confluent Account Resource ID. + in: path + name: resource_id + required: true + schema: + type: string + ConnectionId: + description: The ID of the action connection + in: path + name: connection_id + required: true + schema: + type: string + CustomDestinationId: + description: The ID of the custom destination. + in: path + name: custom_destination_id + required: true + schema: + type: string + CustomFrameworkHandle: + description: The framework handle + in: path + name: handle + required: true + schema: + type: string + CustomFrameworkVersion: + description: The framework version + in: path + name: version + required: true + schema: + type: string + DashboardIDPathParameter: + description: The ID of the dashboard. + example: "abc-def-ghi" + in: path + name: dashboard_id + required: true + schema: + type: string + DatasetID: + description: The ID of a defined dataset. + example: "0879ce27-29a1-481f-a12e-bc2a48ec9ae1" + in: path + name: dataset_id + required: true + schema: + type: string + DisableCorrections: + description: Whether to exclude correction windows from the SLO status calculation. Defaults to false. + in: query + name: disable_corrections + required: false + schema: + default: false + example: false + type: boolean + EntityID: + description: UUID or Entity Ref. + in: path + name: entity_id + required: true + schema: + example: "service:myservice" + type: string + EntityIntegrationConfigID: + description: The identifier of the integration whose configuration is being managed. Supported values are `github`, `jira`, and `pagerduty`. + in: path + name: integration_id + required: true + schema: + example: github + type: string + ExecutionPolicyId: + description: The ID of the execution policy. + example: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + in: path + name: policy_id + required: true + schema: + type: string + FastlyAccountID: + description: Fastly Account id. + in: path + name: account_id + required: true + schema: + type: string + FastlyServiceID: + description: Fastly Service ID. + in: path + name: service_id + required: true + schema: + type: string + FileID: + description: File ID. + in: path + name: file_id + required: true + schema: + type: string + FilterByExcludeSnapshot: + description: Filter entities by excluding snapshotted entities. + in: query + name: filter[exclude_snapshot] + required: false + schema: + type: string + FilterByID: + description: Filter entities by UUID. + explode: true + in: query + name: filter[id] + required: false + schema: + type: string + FilterByKind: + description: Filter entities by kind. + explode: true + in: query + name: filter[kind] + required: false + schema: + type: string + FilterByName: + description: Filter entities by name. + explode: true + in: query + name: filter[name] + required: false + schema: + type: string + FilterByOwner: + description: Filter entities by owner. + explode: true + in: query + name: filter[owner] + required: false + schema: + type: string + FilterByRef: + description: Filter entities by reference + example: service:shopping-cart + explode: true + in: query + name: filter[ref] + required: false + schema: + type: string + FilterByRelationType: + description: Filter entities by relation type. + explode: true + in: query + name: filter[relation][type] + required: false + schema: + $ref: "#/components/schemas/RelationType" + FilterRelationByFromRef: + description: Filter relations by the reference of the first entity in the relation. + example: service:shopping-cart + explode: true + in: query + name: filter[from_ref] + required: false + schema: + type: string + FilterRelationByToRef: + description: Filter relations by the reference of the second entity in the relation. + example: service:shopping-cart + explode: true + in: query + name: filter[to_ref] + required: false + schema: + type: string + FilterRelationByType: + description: Filter relations by type. + explode: true + in: query + name: filter[type] + required: false + schema: + $ref: "#/components/schemas/RelationType" + FromTimestamp: + description: The starting timestamp for the SLO status query in epoch seconds. + in: query + name: from_ts + required: true + schema: + example: 1690901870 + format: int64 + type: integer + GCPSTSServiceAccountID: + description: Your GCP STS enabled service account's unique ID. + in: path + name: account_id + required: true + schema: + type: string + GetIssueIncludeQueryParameter: + description: Comma-separated list of relationship objects that should be included in the response. Possible values are `assignee`, `case`, and `team_owners`. + explode: false + in: query + name: include + required: false + schema: + items: + $ref: "#/components/schemas/GetIssueIncludeQueryParameterItem" + type: array + GoogleChatHandleIdPathParameter: + description: Your organization handle ID. + in: path + name: handle_id + required: true + schema: + type: string + GoogleChatOrganizationBindingIdPathParameter: + description: Your organization binding ID. + in: path + name: organization_binding_id + required: true + schema: + type: string + GoogleChatOrganizationDomainNamePathParameter: + description: The Google Chat domain name. + in: path + name: domain_name + required: true + schema: + type: string + GoogleChatOrganizationSpaceDisplayNamePathParameter: + description: The Google Chat space display name. + in: path + name: space_display_name + required: true + schema: + type: string + GoogleChatTargetAudienceIdPathParameter: + description: Your target audience ID. + in: path + name: target_audience_id + required: true + schema: + type: string + HistoricalJobID: + description: The ID of the job. + in: path + name: job_id + required: true + schema: + type: string + HistoricalSignalID: + description: The ID of the historical signal. + in: path + name: histsignal_id + required: true + schema: + type: string + IdentityProviderId: + description: The ID of the identity provider. + in: path + name: idp_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + IncidentGoogleChatConfigurationIDPathParameter: + description: The UUID of the Google Chat configuration. + in: path + name: id + required: true + schema: + format: uuid + type: string + IncidentGoogleMeetConfigurationIDPathParameter: + description: The UUID of the Google Meet configuration. + in: path + name: id + required: true + schema: + format: uuid + type: string + IncidentIDPathParameter: + description: The UUID of the incident. + in: path + name: incident_id + required: true + schema: + type: string + IncidentImpactFieldIDPathParameter: + description: The UUID of the impact field. + in: path + name: field_id + required: true + schema: + format: uuid + type: string + IncidentImpactIDPathParameter: + description: The UUID of the incident impact. + in: path + name: impact_id + required: true + schema: + type: string + IncidentImpactIncludeQueryParameter: + description: Specifies which related resources should be included in the response. + explode: false + in: query + name: "include" + required: false + schema: + items: + $ref: "#/components/schemas/IncidentImpactRelatedObject" + type: array + IncidentImportIncludeQueryParameter: + description: Specifies which related object types to include in the response when importing an incident. + explode: false + in: query + name: "include" + required: false + schema: + items: + $ref: "#/components/schemas/IncidentImportRelatedObject" + type: array + IncidentIncludeQueryParameter: + description: Specifies which types of related objects should be included in the response. + explode: false + in: query + name: "include" + required: false + schema: + items: + $ref: "#/components/schemas/IncidentRelatedObject" + type: array + IncidentIntegrationMetadataIDPathParameter: + description: The UUID of the incident integration metadata. + in: path + name: integration_metadata_id + required: true + schema: + type: string + IncidentNotificationRuleIDPathParameter: + description: The ID of the notification rule. + in: path + name: id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + IncidentNotificationRuleIncludeQueryParameter: + description: >- + Comma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template` + explode: false + in: query + name: include + required: false + schema: + example: "created_by_user,incident_type,notification_template" + type: string + IncidentNotificationTemplateIDPathParameter: + description: The ID of the notification template. + in: path + name: id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + IncidentNotificationTemplateIncidentTypeFilterQueryParameter: + description: Optional incident type ID filter. + explode: false + in: query + name: filter[incident-type] + required: false + schema: + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + IncidentNotificationTemplateIncludeQueryParameter: + description: >- + Comma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type` + explode: false + in: query + name: include + required: false + schema: + example: "created_by_user,incident_type" + type: string + IncidentOrgSettingsTypeIDPathParameter: + description: The UUID of the incident type. + in: path + name: incident_type_id + required: true + schema: + format: uuid + type: string + IncidentResponderIDPathParameter: + description: The UUID of the incident responder. + in: path + name: responder_id + required: true + schema: + format: uuid + type: string + IncidentRuleIDPathParameter: + description: The UUID of the incident rule. + in: path + name: rule_id + required: true + schema: + format: uuid + type: string + IncidentSearchIncludeQueryParameter: + description: Specifies which types of related objects should be included in the response. + in: query + name: "include" + required: false + schema: + $ref: "#/components/schemas/IncidentRelatedObject" + IncidentSearchQueryQueryParameter: + description: |- + Specifies which incidents should be returned. The query can contain any number of incident facets + joined by `ANDs`, along with multiple values for each of those facets joined by `OR`s. For + example: `state:active AND severity:(SEV-2 OR SEV-1)`. + explode: false + in: query + name: query + required: true + schema: + type: string + IncidentSearchSortQueryParameter: + description: Specifies the order of returned incidents. + explode: false + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/IncidentSearchSortOrder" + IncidentTimestampOverrideIDPathParameter: + description: The UUID of the timestamp override. + in: path + name: id + required: true + schema: + format: uuid + type: string + IncidentTodoIDPathParameter: + description: The UUID of the incident todo. + in: path + name: todo_id + required: true + schema: + type: string + IncidentTypeIDPathParameter: + description: The UUID of the incident type. + in: path + name: incident_type_id + required: true + schema: + type: string + IncidentTypeIncludeDeletedParameter: + description: Include deleted incident types in the response. + in: query + name: include_deleted + schema: + default: false + type: boolean + IncidentUserDefinedFieldIDPathParameter: + description: The ID of the incident user-defined field. + in: path + name: field_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + type: string + IncidentUserDefinedRoleIDPathParameter: + description: The UUID of the incident user-defined role. + in: path + name: role_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000002" + format: uuid + type: string + Include: + description: Include relationship data. + explode: true + in: query + name: include + required: false + schema: + $ref: "#/components/schemas/IncludeType" + InstanceId: + description: The ID of the workflow instance. + in: path + name: instance_id + required: true + schema: + type: string + IntegrationAccountIdParameter: + description: Unique identifier of the integration account. + in: path + name: account_id + required: true + schema: + type: string + IssueIDPathParameter: + description: The identifier of the issue. + example: "c1726a66-1f64-11ee-b338-da7ad0900002" + in: path + name: issue_id + required: true + schema: + type: string + KindID: + description: Entity kind. + in: path + name: kind_id + required: true + schema: + example: "my-job" + type: string + LLMObsAccountIDPathParameter: + description: The ID of the integration account. + example: "account-abc123" + in: path + name: account_id + required: true + schema: + type: string + LLMObsAnnotationQueueIDPathParameter: + description: The ID of the Agent Observability annotation queue. + example: "00000000-0000-0000-0000-000000000001" + in: path + name: queue_id + required: true + schema: + type: string + LLMObsDatasetIDPathParameter: + description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + LLMObsEvalNamePathParameter: + description: The name of the custom Agent Observability evaluator configuration. + example: "my-custom-evaluator" + in: path + name: eval_name + required: true + schema: + type: string + LLMObsExperimentIDPathParameter: + description: The ID of the Agent Observability experiment. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + in: path + name: experiment_id + required: true + schema: + type: string + LLMObsIntegrationPathParameter: + description: The name of the LLM integration. + example: openai + in: path + name: integration + required: true + schema: + $ref: "#/components/schemas/LLMObsIntegrationName" + LLMObsPatternsConfigIDPathParameter: + description: The ID of the patterns configuration. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + in: path + name: config_id + required: true + schema: + type: string + LLMObsPatternsConfigIDQueryParameter: + description: The ID of the patterns configuration. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + in: query + name: config_id + required: true + schema: + type: string + LLMObsPatternsIncludeMetricsQueryParameter: + description: |- + When true, enrich each clustered point with span metrics such as status, + duration, token counts, estimated cost, and evaluations. + in: query + name: include_metrics + schema: + type: boolean + LLMObsPatternsPageSizeQueryParameter: + description: Maximum number of clustered points to return per page. + in: query + name: page_size + schema: + format: int64 + type: integer + LLMObsPatternsPageTokenQueryParameter: + description: Pagination token to retrieve the next page of clustered points. + in: query + name: page_token + schema: + type: string + LLMObsPatternsRunIDQueryParameter: + description: The ID of a specific patterns run. Defaults to the most recent completed run. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + in: query + name: run_id + schema: + type: string + LLMObsPatternsTopicIDQueryParameter: + description: The ID of the topic to retrieve clustered points for. + example: "5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21" + in: query + name: topic_id + required: true + schema: + type: string + LLMObsProjectIDPathParameter: + description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + LLMObsPromptIDPathParameter: + description: The customer-provided identifier of the Agent Observability prompt. + example: "customer-support-assistant" + in: path + name: prompt_id + required: true + schema: + type: string + LLMObsPromptLabelQueryParameter: + description: >- + **Deprecated.** Optional label of the prompt version to return. Do not use this parameter for new integrations. If omitted, the latest version is returned. If the prompt has no labels, the latest version is returned even when a label is requested. If the prompt has labels but none match the requested label, a 404 response is returned. + in: query + name: label + required: false + schema: + type: string + LLMObsPromptVersionPathParameter: + description: The version number of the Agent Observability prompt. + example: 1 + in: path + name: version + required: true + schema: + format: int64 + minimum: 1 + type: integer + LinkIDPathParameter: + description: "The UUID of the case link." + in: path + name: link_id + required: true + schema: + example: "804cd682-55f6-4541-ab00-b608b282ea7d" + type: string + MaintenanceWindowIDPathParameter: + description: The UUID of the maintenance window. + example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" + in: path + name: maintenance_window_id + required: true + schema: + type: string + MembershipSort: + description: >- + Field to sort memberships by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/OrgGroupMembershipSortOption" + MetricID: + description: The name of the log-based metric. + in: path + name: metric_id + required: true + schema: + type: string + MetricName: + description: The name of the metric. + example: dist.http.endpoint.request + in: path + name: metric_name + required: true + schema: + type: string + MicrosoftTeamsChannelNamePathParameter: + description: Your channel name. + in: path + name: channel_name + required: true + schema: + type: string + MicrosoftTeamsHandleNameQueryParameter: + description: Your tenant-based handle name. + in: query + name: name + required: false + schema: + type: string + MicrosoftTeamsTeamNamePathParameter: + description: Your team name. + in: path + name: team_name + required: true + schema: + type: string + MicrosoftTeamsTenantBasedHandleIDPathParameter: + description: Your tenant-based handle id. + in: path + name: handle_id + required: true + schema: + type: string + MicrosoftTeamsTenantIDPathParameter: + description: Your tenant id. + in: path + name: tenant_id + required: true + schema: + type: string + MicrosoftTeamsTenantIDQueryParameter: + description: Your tenant id. + in: query + name: tenant_id + required: false + schema: + type: string + MicrosoftTeamsTenantNamePathParameter: + description: Your tenant name. + in: path + name: tenant_name + required: true + schema: + type: string + MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter: + description: Your Workflows webhook handle id. + in: path + name: handle_id + required: true + schema: + type: string + MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter: + description: Your Workflows webhook handle name. + in: query + name: name + required: false + schema: + type: string + ModelLabProjectIDPathParameter: + description: The ID of the Model Lab project. + in: path + name: project_id + required: true + schema: + example: 1 + format: int64 + type: integer + ModelLabRunIDPathParameter: + description: The ID of the Model Lab run. + in: path + name: run_id + required: true + schema: + example: 42 + format: int64 + type: integer + NDMPageNumber: + description: Specific page number to return. Defaults to 0. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + NDMPageSize: + description: Size for a given page. The maximum allowed value is 500. Defaults to 50. + in: query + name: page[size] + required: false + schema: + default: 50 + example: 50 + format: int64 + type: integer + NotificationRuleIDPathParameter: + description: Notification Rule UUID + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: notification_rule_id + required: true + schema: + type: string + OAuth2ClientId: + description: The ID of the OAuth2 client. + in: path + name: client_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000010" + type: string + OAuthClientUUIDPathParameter: + description: UUID of the OAuth2 client. + in: path + name: client_uuid + required: true + schema: + example: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + format: uuid + type: string + OnDemandTaskId: + description: The UUID of the task. + example: "6d09294c-9ad9-42fd-a759-a0c1599b4828" + in: path + name: task_id + required: true + schema: + type: string + OpsgenieAccountIDPathParameter: + description: The UUID of the Opsgenie account. + in: path + name: account_id + required: true + schema: + type: string + OpsgenieServiceIDPathParameter: + description: The UUID of the service. + in: path + name: integration_service_id + required: true + schema: + type: string + OrgAuthorizedClientId: + description: The ID of the org authorized client. + in: path + name: org_authorized_client_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + OrgConfigName: + description: The name of an Org Config. + in: path + name: org_config_name + required: true + schema: + example: monitor_timezone + type: string + OrgConnectionId: + description: The unique identifier of the org connection. + in: path + name: connection_id + required: true + schema: + example: "f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a" + format: uuid + type: string + OrgGroupId: + description: The ID of the org group. + in: path + name: org_group_id + required: true + schema: + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + OrgGroupMembershipFilterOrgGroupId: + description: Filter memberships by org group ID. Required when `filter[org_uuid]` is not provided. + in: query + name: filter[org_group_id] + required: false + schema: + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + OrgGroupMembershipFilterOrgUuid: + description: Filter memberships by org UUID. Returns a single-item list. + in: query + name: filter[org_uuid] + required: false + schema: + example: "b2c3d4e5-f6a7-8901-bcde-f01234567890" + format: uuid + type: string + OrgGroupMembershipId: + description: The ID of the org group membership. + in: path + name: org_group_membership_id + required: true + schema: + example: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + format: uuid + type: string + OrgGroupPageNumber: + description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer + OrgGroupPageSize: + description: The number of items per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 50 + example: 50 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + OrgGroupPolicyFilterOrgGroupId: + description: Filter policies by org group ID. + in: query + name: filter[org_group_id] + required: true + schema: + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + OrgGroupPolicyFilterPolicyName: + description: Filter policies by policy name. + in: query + name: filter[policy_name] + required: false + schema: + example: monitor_timezone + type: string + OrgGroupPolicyId: + description: The ID of the org group policy. + in: path + name: org_group_policy_id + required: true + schema: + example: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + format: uuid + type: string + OrgGroupPolicyOverrideFilterOrgGroupId: + description: Filter policy overrides by org group ID. + in: query + name: filter[org_group_id] + required: true + schema: + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + OrgGroupPolicyOverrideFilterPolicyId: + description: Filter policy overrides by policy ID. + in: query + name: filter[policy_id] + required: false + schema: + example: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + format: uuid + type: string + OrgGroupPolicyOverrideId: + description: The ID of the org group policy override. + in: path + name: org_group_policy_override_id + required: true + schema: + example: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + format: uuid + type: string + OrgGroupSort: + description: >- + Field to sort org groups by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/OrgGroupSortOption" + OverrideSort: + description: >- + Field to sort overrides by. Supported values: `id`, `org_uuid`, `-id`, `-org_uuid`. Defaults to `id`. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideSortOption" + PageNumber: + description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + PageOffset: + description: Specific offset to use as the beginning of the returned page. + in: query + name: page[offset] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + PageSize: + description: Number of items to return per page. The maximum allowed value is 100. + in: query + name: page[size] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + PersonaMappingID: + description: The ID of the persona mapping + example: c5c758c6-18c2-4484-ae3f-46b84128404a + in: path + name: persona_mapping_id + required: true + schema: + type: string + PersonalAccessTokensFilterOwnerIDParameter: + description: Filter access tokens by the owner's ID. Supports multiple values. + in: query + name: filter[owned_by] + required: false + schema: + items: + example: "00000000-0000-1234-0000-000000000000" + type: string + type: array + PersonalAccessTokensFilterParameter: + description: Filter access tokens by the specified string. + in: query + name: filter + required: false + schema: + type: string + PersonalAccessTokensSortParameter: + description: |- + Access token attribute used to sort results. Sort order is ascending + by default. In order to specify a descending sort, prefix the + attribute with a minus sign. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/PersonalAccessTokensSort" + PolicySort: + description: >- + Field to sort policies by. Supported values: `id`, `name`, `-id`, `-name`. Defaults to `id`. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/OrgGroupPolicySortOption" + PostmortemTemplateFilterIncidentTypeParameter: + description: Filter postmortem templates by the associated incident type ID. + in: query + name: filter[incident-type] + required: false + schema: + format: uuid + type: string + PostmortemTemplateIdParameter: + description: The ID of the postmortem template. + example: 00000000-0000-0000-0000-000000000000 + in: path + name: template_id + required: true + schema: + type: string + PostmortemTemplateSortParameter: + description: The attribute to sort results by. Prefix with `-` for descending order. + in: query + name: sort + required: false + schema: + default: created_at + example: "-created_at" + type: string + ProductName: + description: Name of the product to be deleted. Only `logs` is supported. + in: path + name: product + required: true + schema: + type: string + ProjectIDPathParameter: + description: Project UUID. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + QueryFilterFrom: + description: The minimum timestamp for requested security signals. + example: "2019-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + QueryFilterSearch: + description: The search query for security signals. + example: security:attack status:high + in: query + name: filter[query] + required: false + schema: + type: string + QueryFilterTo: + description: The maximum timestamp for requested security signals. + example: "2019-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + QueryPageCursor: + description: A list of results using the cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + in: query + name: page[cursor] + required: false + schema: + type: string + QueryPageLimit: + description: The maximum number of security signals in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + QuerySort: + description: The order of the security signals in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsSort" + RelationInclude: + description: Include relationship data. + explode: true + in: query + name: include + required: false + schema: + $ref: "#/components/schemas/RelationIncludeType" + ReportID: + description: The ID of the report job. + in: path + name: report_id + required: true + schema: + type: string + RequestId: + description: ID of the deletion request. + in: path + name: id + required: true + schema: + type: string + ResourceFilterAccountID: + description: Filter resource filters by cloud provider account ID. This parameter is only valid when provider is specified. + in: query + name: account_id + required: false + schema: + type: string + ResourceFilterProvider: + description: Filter resource filters by cloud provider (e.g. aws, gcp, azure). + in: query + name: cloud_provider + required: false + schema: + type: string + ResourceID: + description: |- + Identifier, formatted as `type:id`. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, `powerpack`, `reference-table`, `security-rule`, `slo`, `synthetics-global-variable`, `synthetics-test`, `synthetics-private-location`, `monitor`, `workflow`, `app-builder-app`, `connection`, `connection-group`, `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, `on-call-escalation-policy`, `on-call-team-routing-rules`, `logs-pipeline`, `case-management-project`, `monitor-notification-rule`, `status-page`, `feature-flag`. + example: "dashboard:abc-def-ghi" + in: path + name: resource_id + required: true + schema: + type: string + RestrictionQueryID: + description: The ID of the restriction query. + in: path + name: restriction_query_id + required: true + schema: + type: string + RestrictionQueryRoleID: + description: "The ID of the role." + in: path + name: role_id + required: true + schema: + type: string + RestrictionQueryUserID: + description: "The ID of the user." + in: path + name: user_id + required: true + schema: + type: string + RetentionFilterIdParam: + description: The ID of the retention filter. + in: path + name: filter_id + required: true + schema: + type: string + RoleID: + description: The unique identifier of the role. + in: path + name: role_id + required: true + schema: + type: string + RuleBasedViewFramework: + description: Compliance framework handle to filter rules and findings by. + in: query + name: framework + required: false + schema: + default: "" + example: hipaa + type: string + RuleBasedViewIncludeRulesWithoutFindings: + description: When `true`, includes rules in the response that have no associated findings. + in: query + name: include_rules_without_findings + required: false + schema: + default: false + example: false + type: boolean + RuleBasedViewIsCustom: + description: Set to `true` when the requested `framework` is a custom framework. + in: query + name: is_custom + required: false + schema: + example: false + type: boolean + RuleBasedViewQuery: + description: Additional event-platform filters applied to the underlying findings query. For example, `scored:true project_id:datadog-prod-us5`. + in: query + name: query + required: false + schema: + default: "" + example: scored:true + type: string + RuleBasedViewQueryFindingsWithoutFrameworkVersion: + description: When `true`, returns findings without a `framework_version` tag. Used for findings from custom frameworks or those created before framework versioning was introduced. + in: query + name: query_findings_without_framework_version + required: false + schema: + default: false + example: false + type: boolean + RuleBasedViewTo: + description: Timestamp of the query end, in milliseconds since the Unix epoch. + in: query + name: to + required: true + schema: + example: 1739982278000 + format: int64 + type: integer + RuleBasedViewVersion: + description: Version of the compliance framework to filter rules and findings by. + in: query + name: version + required: false + schema: + example: "1" + type: string + RuleIDPathParameter: + description: The UUID of the automation rule. + example: "e6773723-fe58-49ff-9975-dff00f14e28d" + in: path + name: rule_id + required: true + schema: + type: string + RuleId: + description: The ID of the rule. + in: path + name: rule_id + required: true + schema: + type: string + RumApplicationIDParameter: + description: RUM application ID. + in: path + name: app_id + required: true + schema: + type: string + RumExclusionFilterApplicationIDParameter: + description: RUM application ID. + in: path + name: app_id + required: true + schema: + type: string + RumExclusionFilterIDParameter: + description: Exclusion filter ID. + in: path + name: ef_id + required: true + schema: + type: string + RumMetricIDParameter: + description: The name of the RUM-based metric. + in: path + name: metric_id + required: true + schema: + type: string + RumPermanentRetentionFilterIDParameter: + description: The identifier of the permanent RUM retention filter. + in: path + name: permanent_rf_id + required: true + schema: + $ref: "#/components/schemas/RumPermanentRetentionFilterID" + RumRetentionFilterIDParameter: + description: Retention filter ID. + in: path + name: rf_id + required: true + schema: + type: string + RumRetentionQuotaScopeIDParameter: + description: |- + The identifier of the scope the retention quota configuration applies to. + For the `application` scope, this is the RUM application ID. + in: path + name: scope_id + required: true + schema: + example: cd73a516-a481-4af5-8352-9b577465c77b + type: string + RumRetentionQuotaScopeTypeParameter: + description: |- + The type of scope the retention quota configuration applies to. + `application` is the only supported scope type. + in: path + name: scope_type + required: true + schema: + $ref: "#/components/schemas/RumRetentionQuotaScopeType" + SAMLConfigurationUUIDPathParameter: + description: The UUID of the SAML configuration. + in: path + name: saml_config_uuid + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + SalesforceIncidentsOrganizationIDPathParameter: + description: The Datadog-assigned ID of the connected Salesforce organization. + in: path + name: salesforce_org_id + required: true + schema: + type: string + SalesforceIncidentsTemplateIDPathParameter: + description: The ID of the Salesforce incident template. + in: path + name: incident_template_id + required: true + schema: + type: string + SampleLogGenerationContentPackID: + description: The identifier of the Cloud SIEM content pack to operate on (for example, `aws-cloudtrail`). + in: path + name: content_pack_id + required: true + schema: + type: string + SchemaVersion: + description: The schema version desired in the response. + in: query + name: schema_version + required: false + schema: + $ref: "#/components/schemas/ServiceDefinitionSchemaVersions" + SearchIssuesIncludeQueryParameter: + description: Comma-separated list of relationship objects that should be included in the response. Possible values are `issue`, `issue.assignee`, `issue.case`, and `issue.team_owners`. + explode: false + in: query + name: include + required: false + schema: + items: + $ref: "#/components/schemas/SearchIssuesIncludeQueryParameterItem" + type: array + SecureEmbedTokenPathParameter: + description: The share token identifying the secure embed. + example: "s3cur3t0k3n-abcdef123456" + in: path + name: token + required: true + schema: + type: string + SecurityFilterID: + description: The ID of the security filter. + in: path + name: security_filter_id + required: true + schema: + type: string + SecurityMonitoringCriticalAssetID: + description: The ID of the critical asset. + in: path + name: critical_asset_id + required: true + schema: + type: string + SecurityMonitoringDatasetID: + description: The UUID of the dataset. + in: path + name: dataset_id + required: true + schema: + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + SecurityMonitoringIntegrationConfigID: + description: The ID of the entity context sync configuration. + in: path + name: integration_config_id + required: true + schema: + type: string + SecurityMonitoringRuleID: + description: The ID of the rule. + in: path + name: rule_id + required: true + schema: + type: string + SecurityMonitoringRuleVersion: + description: The historical version number of the rule. + in: path + name: version + required: true + schema: + example: 1 + format: int64 + type: integer + SecurityMonitoringSuppressionID: + description: The ID of the suppression rule + in: path + name: suppression_id + required: true + schema: + type: string + SecurityMonitoringTerraformResourceId: + description: The ID of the security monitoring resource to export. + in: path + name: resource_id + required: true + schema: + type: string + SecurityMonitoringTerraformResourceType: + description: The type of security monitoring resource to export. + in: path + name: resource_type + required: true + schema: + $ref: "#/components/schemas/SecurityMonitoringTerraformResourceType" + SensitiveDataScannerGroupID: + description: The ID of a group of rules. + in: path + name: group_id + required: true + schema: + type: string + SensitiveDataScannerRuleID: + description: The ID of the rule. + in: path + name: rule_id + required: true + schema: + type: string + ServiceAccountID: + description: "The ID of the service account." + in: path + name: service_account_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + ServiceName: + description: The name of the service. + in: path + name: service_name + required: true + schema: + example: "my-service" + type: string + SharedDashboardDashboardIDPathParameter: + description: ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + example: abc-def-ghi + type: string + SignalID: + description: The ID of the signal. + in: path + name: signal_id + required: true + schema: + type: string + SkipCache: + description: Skip cache for resource filters. + in: query + name: skip_cache + required: false + schema: + type: boolean + SlackUserUuidQueryParameter: + description: The UUID of the Datadog user to list Slack bindings for. + in: query + name: user_uuid + required: true + schema: + format: uuid + type: string + SloID: + description: The ID of the SLO. + in: path + name: slo_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + type: string + SpansMetricIDParameter: + description: The name of the span-based metric. + in: path + name: metric_id + required: true + schema: + type: string + StatuspageUrlSettingIDPathParameter: + description: The UUID of the Statuspage URL setting. + in: path + name: statuspage_url_setting_id + required: true + schema: + type: string + TagIndexingRuleId: + description: ID of the tag indexing rule. + example: 00000000-0000-0000-0000-000000000001 + in: path + name: id + required: true + schema: + type: string + TagKey: + description: The Cloud Cost Management tag key. Tag keys can contain forward slashes (for example, `kubernetes/instance`). + in: path + name: tag_key + required: true + schema: + type: string + TeamsOwnershipFilterApplicationIdParameter: + description: Filter mappings by RUM application ID. Each value must be a valid UUID. + in: query + name: filter[application_id] + schema: + items: + format: uuid + type: string + type: array + TeamsOwnershipFilterServiceParameter: + description: Filter mappings by RUM application service name. + in: query + name: filter[service] + schema: + items: + type: string + type: array + TeamsOwnershipFilterTeamHandleParameter: + description: Filter mappings by owning team handle. + in: query + name: filter[team_handle] + schema: + items: + type: string + type: array + TeamsOwnershipFilterViewNameParameter: + description: Filter mappings by RUM view name. + in: query + name: filter[view_name] + schema: + items: + type: string + type: array + TeamsOwnershipMappingIdParameter: + description: The ID of the teams ownership mapping. + in: path + name: id + required: true + schema: + type: string + ToTimestamp: + description: The ending timestamp for the SLO status query in epoch seconds. + in: query + name: to_ts + required: true + schema: + example: 1706803070 + format: int64 + type: integer + TraceIDPathParameter: + description: |- + The trace ID. Accepts either a 32-character hexadecimal string (128-bit trace ID) + or a decimal string of up to 39 digits. + example: "0000000000000000abc1230000000000" + in: path + name: trace_id + required: true + schema: + type: string + UserAuthorizedClientId: + description: The ID of the user authorized client. + in: path + name: user_authorized_client_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + UserAuthorizedClientIdForOrg: + description: The ID of the user authorized client. + in: path + name: user_authorized_client_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000002" + type: string + UserID: + description: "The ID of the user." + in: path + name: user_id + required: true + schema: + example: "00000000-0000-9999-0000-000000000000" + type: string + UserIdForOrgClient: + description: The ID of the user. + in: path + name: user_id + required: true + schema: + example: "00000000-0000-9999-0000-000000000001" + type: string + UserUUIDPathParameter: + description: The UUID of the user to add or remove as a watcher. + example: "8146583c-0b5f-11ec-abf8-da7ad0900001" + in: path + name: user_uuid + required: true + schema: + type: string + ViewIDPathParameter: + description: The UUID of the case view. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + in: path + name: view_id + required: true + schema: + type: string + WebhooksAuthMethodIDPathParameter: + description: The UUID of the auth method. + in: path + name: auth_method_id + required: true + schema: + type: string + WebhooksAuthMethodInclude: + description: Comma-separated list of relationships to include in the response. + explode: true + in: query + name: include + required: false + schema: + $ref: "#/components/schemas/WebhooksAuthMethodProtocol" + WorkflowId: + description: The ID of the workflow. + in: path + name: workflow_id + required: true + schema: + type: string + environment_id: + description: The ID of the environment. + in: path + name: environment_id + required: true + schema: + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + exposure_schedule_id: + description: The ID of the exposure schedule. + in: path + name: exposure_schedule_id + required: true + schema: + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + feature_flag_id: + description: The ID of the feature flag. + in: path + name: feature_flag_id + required: true + schema: + example: "550e8400-e29b-41d4-a716-446655440000" + format: uuid + type: string + variant_id: + description: The ID of the variant. + in: path + name: variant_id + required: true + schema: + example: "550e8400-e29b-41d4-a716-446655440002" + format: uuid + type: string + requestBodies: {} + responses: + BadRequestResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + ConcurrentModificationResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Concurrent Modification + ConflictResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + FindingsBadRequestResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad Request: The server cannot process the request due to invalid syntax in the request." + FindingsForbiddenResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied" + FindingsNotFoundResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Not Found: The requested finding cannot be found." + FindingsTooManyRequestsResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Too many requests: The rate limit set by the API has been exceeded." + ForbiddenResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + HTTPCDGatesBadRequestResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCDGatesBadRequestResponse" + description: Bad request. + HTTPCDGatesNotFoundResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCDGatesNotFoundResponse" + description: Deployment gate not found. + HTTPCDRulesNotFoundResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCDRulesNotFoundResponse" + description: Deployment rule not found. + NotAuthorizedResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Authorized + NotFoundResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + NotificationRulesList: + content: + "application/json": + schema: + $ref: "#/components/schemas/NotificationRulesListResponse" + description: The list of notification rules. + PreconditionFailedResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Failed Precondition + RumExclusionFilterMethodNotAllowedResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Method Not Allowed + SpansBadRequestResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad Request." + SpansForbiddenResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied." + SpansTooManyRequestsResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Too many requests: The rate limit set by the API has been exceeded." + SpansUnprocessableEntityResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Unprocessable Entity." + TooManyRequestsResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + UnauthorizedResponse: + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unauthorized + UnprocessableEntityResponse: + content: + "application/json": + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: The server cannot process the request because it contains invalid data. + schemas: + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + APIKeyCreateAttributes: + description: Attributes used to create an API Key. + properties: + category: + description: The APIKeyCreateAttributes category. + type: string + name: + description: Name of the API key. + example: "API Key for submitting metrics" + type: string + remote_config_read_enabled: + description: The APIKeyCreateAttributes remote_config_read_enabled. + type: boolean + required: + - name + type: object + APIKeyCreateData: + description: Object used to create an API key. + properties: + attributes: + $ref: "#/components/schemas/APIKeyCreateAttributes" + type: + $ref: "#/components/schemas/APIKeysType" + required: + - attributes + - type + type: object + APIKeyCreateRequest: + description: Request used to create an API key. + properties: + data: + $ref: "#/components/schemas/APIKeyCreateData" + required: + - data + type: object + APIKeyRelationships: + description: Resources related to the API key. + properties: + created_by: + $ref: "#/components/schemas/RelationshipToUser" + modified_by: + $ref: "#/components/schemas/NullableRelationshipToUser" + type: object + APIKeyResponse: + description: Response for retrieving an API key. + properties: + data: + $ref: "#/components/schemas/FullAPIKey" + included: + description: Array of objects related to the API key. + items: + $ref: "#/components/schemas/APIKeyResponseIncludedItem" + type: array + type: object + APIKeyResponseIncludedItem: + description: An object related to an API key. + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/LeakedKey" + APIKeyUpdateAttributes: + description: Attributes used to update an API Key. + properties: + category: + description: The APIKeyUpdateAttributes category. + type: string + name: + description: Name of the API key. + example: "API Key for submitting metrics" + type: string + remote_config_read_enabled: + description: The APIKeyUpdateAttributes remote_config_read_enabled. + type: boolean + required: + - name + type: object + APIKeyUpdateData: + description: Object used to update an API key. + properties: + attributes: + $ref: "#/components/schemas/APIKeyUpdateAttributes" + id: + description: ID of the API key. + example: "00112233-4455-6677-8899-aabbccddeeff" + type: string + type: + $ref: "#/components/schemas/APIKeysType" + required: + - attributes + - id + - type + type: object + APIKeyUpdateRequest: + description: Request used to update an API key. + properties: + data: + $ref: "#/components/schemas/APIKeyUpdateData" + required: + - data + type: object + APIKeysResponse: + description: Response for a list of API keys. + properties: + data: + description: Array of API keys. + items: + $ref: "#/components/schemas/PartialAPIKey" + type: array + included: + description: Array of objects related to the API key. + items: + $ref: "#/components/schemas/APIKeyResponseIncludedItem" + type: array + meta: + $ref: "#/components/schemas/APIKeysResponseMeta" + type: object + APIKeysResponseMeta: + description: Additional information related to api keys response. + properties: + max_allowed: + description: Max allowed number of API keys. + format: int64 + type: integer + page: + $ref: "#/components/schemas/APIKeysResponseMetaPage" + type: object + APIKeysResponseMetaPage: + description: Additional information related to the API keys response. + properties: + total_filtered_count: + description: Total filtered application key count. + format: int64 + type: integer + type: object + APIKeysSort: + default: name + description: Sorting options + enum: + - created_at + - -created_at + - last4 + - -last4 + - modified_at + - -modified_at + - name + - -name + type: string + x-enum-varnames: + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - LAST4_ASCENDING + - LAST4_DESCENDING + - MODIFIED_AT_ASCENDING + - MODIFIED_AT_DESCENDING + - NAME_ASCENDING + - NAME_DESCENDING + APIKeysType: + default: api_keys + description: API Keys resource type. + enum: + - api_keys + example: api_keys + type: string + x-enum-varnames: + - API_KEYS + APITrigger: + description: "Trigger a workflow from an API request. The workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + APITriggerWrapper: + description: "Schema for an API-based trigger." + properties: + apiTrigger: + $ref: "#/components/schemas/APITrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - apiTrigger + type: object + APMSpanErrorFlag: + description: Error flag for a span. `1` when the span is in error, `0` otherwise. + enum: + - 0 + - 1 + example: 0 + format: int32 + type: integer + x-enum-varnames: + - NO_ERROR + - ERROR + APMTraceSpan: + description: A single APM span returned as part of a trace. + properties: + duration: + description: The duration of the span, in nanoseconds. + example: 500000000 + format: int64 + type: integer + endTime: + description: The end time of the span, in Unix nanoseconds. + example: 1716800000500000000 + format: int64 + type: integer + error: + $ref: "#/components/schemas/APMSpanErrorFlag" + meta: + additionalProperties: + type: string + description: |- + String-valued tags attached to the span. Tag keys starting with `_` are + filtered out of the response. + example: + env: production + http.method: GET + type: object + metrics: + additionalProperties: + format: double + type: number + description: |- + Numeric metrics attached to the span. Metric keys starting with `_` are + filtered out of the response. + example: + http.status_code: 200 + type: object + name: + description: The operation name of the span. + example: web.request + type: string + parentID: + description: The ID of the parent span, or `0` when the span is a trace root. + example: 0 + format: int64 + type: integer + resource: + description: The resource that the span describes. + example: GET /products + type: string + resourceHash: + description: A hash of the resource field. + example: 6a4e9b7f + type: string + restricted: + description: Whether access to the span is restricted by the organization's data access policies. + example: false + type: boolean + self_time: + description: The time spent in the span itself, excluding time spent in child spans, in nanoseconds. + example: 250000000 + format: double + type: number + service: + description: The name of the service that emitted the span. + example: web-store + type: string + spanID: + description: The span ID, as an unsigned 64-bit integer. + example: 9876543210987654321 + format: int64 + type: integer + startTime: + description: The start time of the span, in Unix nanoseconds. + example: 1716800000000000000 + format: int64 + type: integer + traceID: + description: The lower 64 bits of the trace ID, as an unsigned 64-bit integer. + example: 12345678901234567890 + format: int64 + type: integer + traceIDFull: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: "0000000000000000abc1230000000000" + type: string + type: + description: The type of the span (for example, `web`, `db`, or `rpc`). + example: web + type: string + required: + - service + - name + - resource + - traceID + - spanID + - parentID + - startTime + - endTime + - duration + - error + - type + - meta + - metrics + - traceIDFull + type: object + APMTraceSpans: + description: The list of spans that compose the trace. + items: + $ref: "#/components/schemas/APMTraceSpan" + type: array + AWSAccountConfigID: + description: |- + Unique Datadog ID of the AWS Account Integration Config. + To get the config ID for an account, use the + [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) + endpoint and query by AWS Account ID. + example: "00000000-abcd-0001-0000-000000000000" + type: string + AWSAccountCreateRequest: + description: AWS Account Create Request body. + properties: + data: + $ref: "#/components/schemas/AWSAccountCreateRequestData" + required: + - data + type: object + AWSAccountCreateRequestAttributes: + description: The AWS Account Integration Config to be created. + properties: + account_tags: + $ref: "#/components/schemas/AWSAccountTags" + auth_config: + $ref: "#/components/schemas/AWSAuthConfig" + aws_account_id: + $ref: "#/components/schemas/AWSAccountID" + aws_partition: + $ref: "#/components/schemas/AWSAccountPartition" + aws_regions: + $ref: "#/components/schemas/AWSRegions" + logs_config: + $ref: "#/components/schemas/AWSLogsConfig" + metrics_config: + $ref: "#/components/schemas/AWSMetricsConfig" + resources_config: + $ref: "#/components/schemas/AWSResourcesConfig" + traces_config: + $ref: "#/components/schemas/AWSTracesConfig" + required: + - aws_account_id + - aws_partition + - auth_config + type: object + AWSAccountCreateRequestData: + description: AWS Account Create Request data. + properties: + attributes: + $ref: "#/components/schemas/AWSAccountCreateRequestAttributes" + type: + $ref: "#/components/schemas/AWSAccountType" + required: + - attributes + - type + type: object + AWSAccountID: + description: AWS Account ID. + example: "123456789012" + type: string + AWSAccountPartition: + description: |- + AWS partition your AWS account is scoped to. Defaults to `aws`. + See [Partitions](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/partitions.html) + in the AWS documentation for more information. + enum: + - aws + - aws-cn + - aws-us-gov + example: aws + type: string + x-enum-varnames: + - AWS + - AWS_CN + - AWS_US_GOV + AWSAccountResponse: + description: AWS Account response body. + properties: + data: + $ref: "#/components/schemas/AWSAccountResponseData" + required: + - data + type: object + AWSAccountResponseAttributes: + description: AWS Account response attributes. + properties: + account_tags: + $ref: "#/components/schemas/AWSAccountTags" + auth_config: + $ref: "#/components/schemas/AWSAuthConfig" + aws_account_id: + $ref: "#/components/schemas/AWSAccountID" + aws_partition: + $ref: "#/components/schemas/AWSAccountPartition" + aws_regions: + $ref: "#/components/schemas/AWSRegions" + created_at: + description: Timestamp of when the account integration was created. + format: date-time + readOnly: true + type: string + logs_config: + $ref: "#/components/schemas/AWSLogsConfig" + metrics_config: + $ref: "#/components/schemas/AWSMetricsConfig" + modified_at: + description: Timestamp of when the account integration was updated. + format: date-time + readOnly: true + type: string + resources_config: + $ref: "#/components/schemas/AWSResourcesConfig" + traces_config: + $ref: "#/components/schemas/AWSTracesConfig" + required: + - aws_account_id + type: object + AWSAccountResponseData: + description: AWS Account response data. + properties: + attributes: + $ref: "#/components/schemas/AWSAccountResponseAttributes" + id: + $ref: "#/components/schemas/AWSAccountConfigID" + type: + $ref: "#/components/schemas/AWSAccountType" + required: + - id + - type + type: object + AWSAccountTags: + description: Tags to apply to all hosts and metrics reporting for this account. Defaults to `[]`. + items: + description: Tag in the form `key:value`. + example: "env:prod" + type: string + nullable: true + type: array + AWSAccountType: + default: account + description: AWS Account resource type. + enum: + - account + example: account + type: string + x-enum-varnames: + - ACCOUNT + AWSAccountUpdateRequest: + description: AWS Account Update Request body. + properties: + data: + $ref: "#/components/schemas/AWSAccountUpdateRequestData" + required: + - data + type: object + AWSAccountUpdateRequestAttributes: + description: The AWS Account Integration Config to be updated. + properties: + account_tags: + $ref: "#/components/schemas/AWSAccountTags" + auth_config: + $ref: "#/components/schemas/AWSAuthConfig" + aws_account_id: + $ref: "#/components/schemas/AWSAccountID" + aws_partition: + $ref: "#/components/schemas/AWSAccountPartition" + aws_regions: + $ref: "#/components/schemas/AWSRegions" + logs_config: + $ref: "#/components/schemas/AWSLogsConfig" + metrics_config: + $ref: "#/components/schemas/AWSMetricsConfig" + resources_config: + $ref: "#/components/schemas/AWSResourcesConfig" + traces_config: + $ref: "#/components/schemas/AWSTracesConfig" + required: + - aws_account_id + type: object + AWSAccountUpdateRequestData: + description: AWS Account Update Request data. + properties: + attributes: + $ref: "#/components/schemas/AWSAccountUpdateRequestAttributes" + id: + $ref: "#/components/schemas/AWSAccountConfigID" + type: + $ref: "#/components/schemas/AWSAccountType" + required: + - attributes + - type + type: object + AWSAccountsResponse: + description: AWS Accounts response body. + properties: + data: + description: List of AWS Account Integration Configs. + items: + $ref: "#/components/schemas/AWSAccountResponseData" + type: array + required: + - data + type: object + AWSAssumeRole: + description: The definition of `AWSAssumeRole` object. + properties: + account_id: + description: AWS account the connection is created for + example: "111222333444" + pattern: ^\d{12}$ + type: string + external_id: + description: External ID used to scope which connection can be used to assume the role + example: 33a1011635c44b38a064cf14e82e1d8f + readOnly: true + type: string + principal_id: + description: AWS account that will assume the role + example: "123456789012" + readOnly: true + type: string + role: + description: Role to assume + example: my-role + type: string + type: + $ref: "#/components/schemas/AWSAssumeRoleType" + required: + - type + - account_id + - role + type: object + AWSAssumeRoleType: + description: The definition of `AWSAssumeRoleType` object. + enum: + - AWSAssumeRole + example: AWSAssumeRole + type: string + x-enum-varnames: + - AWSASSUMEROLE + AWSAssumeRoleUpdate: + description: The definition of `AWSAssumeRoleUpdate` object. + properties: + account_id: + description: AWS account the connection is created for + example: "111222333444" + pattern: ^\d{12}$ + type: string + generate_new_external_id: + description: The `AWSAssumeRoleUpdate` `generate_new_external_id`. + type: boolean + role: + description: Role to assume + example: my-role + type: string + type: + $ref: "#/components/schemas/AWSAssumeRoleType" + required: + - type + type: object + AWSAuthConfig: + description: AWS Authentication config. + oneOf: + - $ref: "#/components/schemas/AWSAuthConfigKeys" + - $ref: "#/components/schemas/AWSAuthConfigRole" + AWSAuthConfigKeys: + description: AWS Authentication config to integrate your account using an access key pair. + properties: + access_key_id: + description: AWS Access Key ID. + example: "AKIAIOSFODNN7EXAMPLE" + type: string + secret_access_key: + description: AWS Secret Access Key. + example: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" + minLength: 1 + type: string + writeOnly: true + required: + - access_key_id + type: object + AWSAuthConfigRole: + description: AWS Authentication config to integrate your account using an IAM role. + properties: + external_id: + description: AWS IAM External ID for associated role. + type: string + role_name: + description: AWS IAM Role name. + example: "DatadogIntegrationRole" + maxLength: 576 + minLength: 1 + type: string + required: + - role_name + type: object + AWSCcmConfig: + description: AWS Cloud Cost Management config. + properties: + data_export_configs: + description: List of data export configurations for Cost and Usage Reports. + items: + $ref: "#/components/schemas/DataExportConfig" + type: array + required: + - data_export_configs + type: object + AWSCcmConfigRequest: + description: AWS CCM Config Create/Update Request body. + properties: + data: + $ref: "#/components/schemas/AWSCcmConfigRequestData" + required: + - data + type: object + AWSCcmConfigRequestAttributes: + description: AWS CCM Config attributes for Create/Update requests. + properties: + ccm_config: + $ref: "#/components/schemas/AWSCcmConfig" + required: + - ccm_config + type: object + AWSCcmConfigRequestData: + description: AWS CCM Config Create/Update Request data. + properties: + attributes: + $ref: "#/components/schemas/AWSCcmConfigRequestAttributes" + type: + $ref: "#/components/schemas/AWSCcmConfigType" + required: + - attributes + - type + type: object + AWSCcmConfigResponse: + description: AWS CCM Config response body. + properties: + data: + $ref: "#/components/schemas/AWSCcmConfigResponseData" + required: + - data + type: object + AWSCcmConfigResponseAttributes: + description: AWS CCM Config response attributes. + properties: + data_export_configs: + description: List of data export configurations for Cost and Usage Reports. + items: + $ref: "#/components/schemas/DataExportConfig" + type: array + type: object + AWSCcmConfigResponseData: + description: AWS CCM Config response data. + properties: + attributes: + $ref: "#/components/schemas/AWSCcmConfigResponseAttributes" + id: + $ref: "#/components/schemas/AWSAccountConfigID" + type: + $ref: "#/components/schemas/AWSCcmConfigType" + required: + - type + type: object + AWSCcmConfigType: + default: "ccm_config" + description: AWS CCM Config resource type. + enum: + - ccm_config + example: "ccm_config" + type: string + x-enum-varnames: + - CCM_CONFIG + AWSCcmConfigValidationIssue: + description: A single validation issue found while validating an AWS Cost and Usage Report (CUR) 2.0 configuration. + properties: + code: + $ref: "#/components/schemas/AWSCcmConfigValidationIssueCode" + description: + description: Human-readable description of the validation issue. + example: 'no CUR 2.0 export named "cost-and-usage-report" found' + type: string + required: + - code + - description + type: object + AWSCcmConfigValidationIssueCode: + description: Identifies the specific reason a Cost and Usage Report (CUR) 2.0 configuration failed validation. + enum: + - ISSUE_CODE_UNSPECIFIED + - CREDENTIAL_ERROR + - BUCKET_NAME_INVALID_GOVCLOUD + - S3_LIST_PERMISSION_MISSING + - S3_GET_PERMISSION_MISSING + - S3_BUCKET_REGION_MISMATCH + - S3_BUCKET_NOT_ACCESSIBLE + - EXPORT_LIST_PERMISSION_MISSING + - EXPORT_GET_PERMISSION_MISSING + - EXPORT_NOT_FOUND + - EXPORT_STATUS_UNHEALTHY + - TIME_GRANULARITY_INVALID + - FILE_FORMAT_INVALID + - INCLUDE_RESOURCES_DISABLED + - REFRESH_CADENCE_INVALID + - OVERWRITE_MODE_INVALID + - QUERY_STATEMENT_INVALID + example: "EXPORT_NOT_FOUND" + type: string + x-enum-varnames: + - ISSUE_CODE_UNSPECIFIED + - CREDENTIAL_ERROR + - BUCKET_NAME_INVALID_GOVCLOUD + - S3_LIST_PERMISSION_MISSING + - S3_GET_PERMISSION_MISSING + - S3_BUCKET_REGION_MISMATCH + - S3_BUCKET_NOT_ACCESSIBLE + - EXPORT_LIST_PERMISSION_MISSING + - EXPORT_GET_PERMISSION_MISSING + - EXPORT_NOT_FOUND + - EXPORT_STATUS_UNHEALTHY + - TIME_GRANULARITY_INVALID + - FILE_FORMAT_INVALID + - INCLUDE_RESOURCES_DISABLED + - REFRESH_CADENCE_INVALID + - OVERWRITE_MODE_INVALID + - QUERY_STATEMENT_INVALID + AWSCcmConfigValidationIssues: + description: List of validation issues found for the Cost and Usage Report (CUR) 2.0 configuration. Empty when the configuration is valid. + items: + $ref: "#/components/schemas/AWSCcmConfigValidationIssue" + type: array + AWSCcmConfigValidationRequest: + description: AWS CCM config validation request body. + properties: + data: + $ref: "#/components/schemas/AWSCcmConfigValidationRequestData" + required: + - data + type: object + AWSCcmConfigValidationRequestAttributes: + description: Attributes for an AWS CCM config validation request. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + bucket_name: + description: Name of the S3 bucket where the Cost and Usage Report is stored. + example: "billing" + type: string + bucket_region: + description: AWS region of the S3 bucket. + example: "us-east-1" + type: string + report_name: + description: Name of the Cost and Usage Report. + example: "cost-and-usage-report" + type: string + report_prefix: + description: S3 prefix where the Cost and Usage Report is stored. + example: "reports" + type: string + required: + - account_id + - bucket_name + - bucket_region + - report_name + type: object + AWSCcmConfigValidationRequestData: + description: AWS CCM config validation request data. + properties: + attributes: + $ref: "#/components/schemas/AWSCcmConfigValidationRequestAttributes" + type: + $ref: "#/components/schemas/AWSCcmConfigValidationType" + required: + - attributes + - type + type: object + AWSCcmConfigValidationResponse: + description: AWS CCM config validation response body. + properties: + data: + $ref: "#/components/schemas/AWSCcmConfigValidationResponseData" + required: + - data + type: object + AWSCcmConfigValidationResponseAttributes: + description: Attributes for an AWS CCM config validation response. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + issues: + $ref: "#/components/schemas/AWSCcmConfigValidationIssues" + required: + - account_id + - issues + type: object + AWSCcmConfigValidationResponseData: + description: AWS CCM config validation response data. + properties: + attributes: + $ref: "#/components/schemas/AWSCcmConfigValidationResponseAttributes" + id: + description: AWS CCM config validation resource identifier. + example: "ccm_config_validation" + type: string + type: + $ref: "#/components/schemas/AWSCcmConfigValidationType" + required: + - attributes + - id + - type + type: object + AWSCcmConfigValidationType: + default: "ccm_config_validation" + description: AWS CCM config validation resource type. + enum: + - ccm_config_validation + example: "ccm_config_validation" + type: string + x-enum-varnames: + - CCM_CONFIG_VALIDATION + AWSCloudAuthPersonaMappingAttributesResponse: + description: Attributes for AWS cloud authentication persona mapping response + properties: + account_identifier: + description: Datadog account identifier (email or handle) mapped to the AWS principal + example: "test@test.com" + type: string + account_uuid: + description: Datadog account UUID + example: "12bbdc5c-5966-47e0-8733-285f9e44bcf4" + type: string + arn_pattern: + description: AWS IAM ARN pattern to match for authentication + example: "arn:aws:iam::123456789012:user/testuser" + type: string + required: + - arn_pattern + - account_identifier + - account_uuid + type: object + AWSCloudAuthPersonaMappingCreateAttributes: + description: Attributes for creating an AWS cloud authentication persona mapping + properties: + account_identifier: + description: Datadog account identifier (email or handle) mapped to the AWS principal + example: "test@test.com" + type: string + arn_pattern: + description: AWS IAM ARN pattern to match for authentication + example: "arn:aws:iam::123456789012:user/testuser" + type: string + required: + - arn_pattern + - account_identifier + type: object + AWSCloudAuthPersonaMappingCreateData: + description: Data for creating an AWS cloud authentication persona mapping + properties: + attributes: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingCreateAttributes" + type: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingType" + required: + - type + - attributes + type: object + AWSCloudAuthPersonaMappingCreateRequest: + description: Request used to create an AWS cloud authentication persona mapping + properties: + data: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingCreateData" + required: + - data + type: object + AWSCloudAuthPersonaMappingDataResponse: + description: Data for AWS cloud authentication persona mapping response + properties: + attributes: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingAttributesResponse" + id: + description: Unique identifier for the persona mapping + example: "c5c758c6-18c2-4484-ae3f-46b84128404a" + type: string + type: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingType" + required: + - id + - type + - attributes + type: object + AWSCloudAuthPersonaMappingResponse: + description: Response containing a single AWS cloud authentication persona mapping + properties: + data: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingDataResponse" + required: + - data + type: object + AWSCloudAuthPersonaMappingType: + description: Type identifier for AWS cloud authentication persona mapping + enum: + - aws_cloud_auth_config + example: aws_cloud_auth_config + type: string + x-enum-varnames: + - AWS_CLOUD_AUTH_CONFIG + AWSCloudAuthPersonaMappingsData: + description: List of AWS cloud authentication persona mappings + items: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingDataResponse" + type: array + AWSCloudAuthPersonaMappingsResponse: + description: Response containing a list of AWS cloud authentication persona mappings + properties: + data: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingsData" + example: + - attributes: + account_identifier: "test@test.com" + account_uuid: "12bbdc5c-5966-47e0-8733-285f9e44bcf4" + arn_pattern: "arn:aws:iam::123456789012:user/testuser" + id: "c5c758c6-18c2-4484-ae3f-46b84128404a" + type: aws_cloud_auth_config + required: + - data + type: object + AWSCredentials: + description: The definition of `AWSCredentials` object. + oneOf: + - $ref: "#/components/schemas/AWSAssumeRole" + AWSCredentialsUpdate: + description: The definition of `AWSCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/AWSAssumeRoleUpdate" + AWSEventBridgeAccountConfiguration: + description: The EventBridge configuration for one AWS account. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: "123456789012" + type: string + event_hubs: + description: Array of AWS event sources associated with this account. + items: + $ref: "#/components/schemas/AWSEventBridgeSource" + type: array + tags: + description: |- + Array of tags (in the form `key:value`) which are added to all hosts + and metrics reporting through the main AWS integration. + example: ["$KEY:$VALUE"] + items: + description: The list of the host_tags. + type: string + type: array + type: object + AWSEventBridgeCreateRequest: + description: Amazon EventBridge create request body. + properties: + data: + $ref: "#/components/schemas/AWSEventBridgeCreateRequestData" + required: + - data + type: object + AWSEventBridgeCreateRequestAttributes: + description: The EventBridge source to be created. + properties: + account_id: + $ref: "#/components/schemas/AWSAccountID" + create_event_bus: + description: |- + Set to true if Datadog should create the event bus in addition to the event + source. Requires the `events:CreateEventBus` permission. + example: true + type: boolean + event_generator_name: + description: |- + The given part of the event source name, which is then combined with an + assigned suffix to form the full name. + example: "app-alerts" + type: string + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: "us-east-1" + type: string + required: + - account_id + - event_generator_name + - region + type: object + AWSEventBridgeCreateRequestData: + description: Amazon EventBridge create request data. + properties: + attributes: + $ref: "#/components/schemas/AWSEventBridgeCreateRequestAttributes" + type: + $ref: "#/components/schemas/AWSEventBridgeType" + required: + - attributes + - type + type: object + AWSEventBridgeCreateResponse: + description: Amazon EventBridge create response body. + properties: + data: + $ref: "#/components/schemas/AWSEventBridgeCreateResponseData" + required: + - data + type: object + AWSEventBridgeCreateResponseAttributes: + description: A created EventBridge source. + properties: + event_source_name: + description: The event source name. + example: "app-alerts-zyxw3210" + type: string + has_bus: + description: True if the event bus was created in addition to the source. + example: true + type: boolean + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: "us-east-1" + type: string + status: + $ref: "#/components/schemas/AWSEventBridgeCreateStatus" + type: object + AWSEventBridgeCreateResponseData: + description: Amazon EventBridge create response data. + properties: + attributes: + $ref: "#/components/schemas/AWSEventBridgeCreateResponseAttributes" + id: + default: "create_event_bridge" + description: The ID of the Amazon EventBridge create response data. + example: "create_event_bridge" + type: string + type: + $ref: "#/components/schemas/AWSEventBridgeType" + required: + - attributes + - type + type: object + AWSEventBridgeCreateStatus: + description: The event source status "created". + enum: ["created"] + example: created + type: string + x-enum-varnames: ["CREATED"] + AWSEventBridgeDeleteRequest: + description: Amazon EventBridge delete request body. + properties: + data: + $ref: "#/components/schemas/AWSEventBridgeDeleteRequestData" + required: + - data + type: object + AWSEventBridgeDeleteRequestAttributes: + description: The EventBridge source to be deleted. + properties: + account_id: + $ref: "#/components/schemas/AWSAccountID" + event_generator_name: + description: The event source name. + example: "app-alerts-zyxw3210" + type: string + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: "us-east-1" + type: string + required: + - account_id + - event_generator_name + - region + type: object + AWSEventBridgeDeleteRequestData: + description: Amazon EventBridge delete request data. + properties: + attributes: + $ref: "#/components/schemas/AWSEventBridgeDeleteRequestAttributes" + type: + $ref: "#/components/schemas/AWSEventBridgeType" + required: + - attributes + - type + type: object + AWSEventBridgeDeleteResponse: + description: Amazon EventBridge delete response body. + properties: + data: + $ref: "#/components/schemas/AWSEventBridgeDeleteResponseData" + required: + - data + type: object + AWSEventBridgeDeleteResponseAttributes: + description: The EventBridge source delete response attributes. + properties: + status: + $ref: "#/components/schemas/AWSEventBridgeDeleteStatus" + type: object + AWSEventBridgeDeleteResponseData: + description: Amazon EventBridge delete response data. + properties: + attributes: + $ref: "#/components/schemas/AWSEventBridgeDeleteResponseAttributes" + id: + default: "delete_event_bridge" + description: The ID of the Amazon EventBridge list response data. + example: "delete_event_bridge" + type: string + type: + $ref: "#/components/schemas/AWSEventBridgeType" + required: + - attributes + - type + type: object + AWSEventBridgeDeleteStatus: + description: The event source status "empty". + enum: ["empty"] + example: empty + type: string + x-enum-varnames: ["EMPTY"] + AWSEventBridgeListResponse: + description: Amazon EventBridge list response body. + properties: + data: + $ref: "#/components/schemas/AWSEventBridgeListResponseData" + required: + - data + type: object + AWSEventBridgeListResponseAttributes: + description: An object describing the EventBridge configuration for multiple accounts. + properties: + accounts: + description: List of accounts with their event sources. + items: + $ref: "#/components/schemas/AWSEventBridgeAccountConfiguration" + type: array + is_installed: + description: True if the EventBridge integration is enabled for your organization. + type: boolean + type: object + AWSEventBridgeListResponseData: + description: Amazon EventBridge list response data. + properties: + attributes: + $ref: "#/components/schemas/AWSEventBridgeListResponseAttributes" + id: + default: "get_event_bridge" + description: The ID of the Amazon EventBridge list response data. + example: "get_event_bridge" + type: string + type: + $ref: "#/components/schemas/AWSEventBridgeType" + required: + - attributes + - id + - type + type: object + AWSEventBridgeSource: + description: An EventBridge source. + properties: + name: + description: The event source name. + example: "app-alerts-zyxw3210" + type: string + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: "us-east-1" + type: string + type: object + AWSEventBridgeType: + default: "event_bridge" + description: Amazon EventBridge resource type. + enum: + - event_bridge + example: "event_bridge" + type: string + x-enum-varnames: + - EVENT_BRIDGE + AWSIntegration: + description: The definition of `AWSIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/AWSCredentials" + type: + $ref: "#/components/schemas/AWSIntegrationType" + required: + - type + - credentials + type: object + AWSIntegrationIamPermissionsResponse: + description: AWS Integration IAM Permissions response body. + properties: + data: + $ref: "#/components/schemas/AWSIntegrationIamPermissionsResponseData" + required: + - data + type: object + AWSIntegrationIamPermissionsResponseAttributes: + description: AWS Integration IAM Permissions response attributes. + properties: + permissions: + description: List of AWS IAM permissions required for the integration. + example: + - "account:GetContactInformation" + - "amplify:ListApps" + - "amplify:ListArtifacts" + - "amplify:ListBackendEnvironments" + - "amplify:ListBranches" + items: + description: An AWS IAM permission required for the Datadog integration. + example: "account:GetContactInformation" + type: string + type: array + required: + - permissions + type: object + AWSIntegrationIamPermissionsResponseData: + description: AWS Integration IAM Permissions response data. + properties: + attributes: + $ref: "#/components/schemas/AWSIntegrationIamPermissionsResponseAttributes" + id: + default: "permissions" + description: The `AWSIntegrationIamPermissionsResponseData` `id`. + example: "permissions" + type: string + type: + $ref: "#/components/schemas/AWSIntegrationIamPermissionsResponseDataType" + type: object + AWSIntegrationIamPermissionsResponseDataType: + default: "permissions" + description: The `AWSIntegrationIamPermissionsResponseData` `type`. + enum: + - permissions + example: "permissions" + type: string + x-enum-varnames: + - PERMISSIONS + AWSIntegrationType: + description: The definition of `AWSIntegrationType` object. + enum: + - AWS + example: AWS + type: string + x-enum-varnames: + - AWS + AWSIntegrationUpdate: + description: The definition of `AWSIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/AWSCredentialsUpdate" + type: + $ref: "#/components/schemas/AWSIntegrationType" + required: + - type + type: object + AWSLambdaForwarderConfig: + description: |- + Log Autosubscription configuration for Datadog Forwarder Lambda functions. + Automatically set up triggers for existing and new logs for some services, + ensuring no logs from new resources are missed and saving time spent on manual configuration. + properties: + lambdas: + description: List of Datadog Lambda Log Forwarder ARNs in your AWS account. Defaults to `[]`. + items: + description: The ARN of a Datadog Lambda Log Forwarder function. + example: "arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder" + type: string + type: array + log_source_config: + $ref: "#/components/schemas/AWSLambdaForwarderConfigLogSourceConfig" + sources: + description: |- + List of service IDs set to enable automatic log collection. + Discover the list of available services with the + [Get list of AWS log ready + services](https://docs.datadoghq.com/api/latest/aws-logs-integration/#get-list-of-aws-log-ready-services) + endpoint. + items: + description: An AWS service ID for which automatic log collection is enabled. + example: s3 + type: string + type: array + type: object + AWSLambdaForwarderConfigLogSourceConfig: + description: Log source configuration. + properties: + tag_filters: + description: List of AWS log source tag filters. Defaults to `[]`. + items: + $ref: "#/components/schemas/AWSLogSourceTagFilter" + type: array + type: object + AWSLogSourceTagFilter: + description: |- + AWS log source tag filter list. Defaults to `[]`. + Array of log source to AWS resource tag mappings. Each mapping contains a log source and its + associated AWS resource tags (in `key:value` format) used to filter logs submitted to Datadog. + Tag filters are applied for tags on the AWS resource emitting logs; tags associated with the + log storage entity (such as a CloudWatch Log Group or S3 Bucket) are not considered. + For more information on resource tag filter syntax, + [see AWS resource exclusion](https://docs.datadoghq.com/account_management/billing/aws/#aws-resource-exclusion) + in the AWS integration billing page. + properties: + source: + description: The AWS log source to which the tag filters defined in `tags` are applied. + example: "s3" + type: string + tags: + description: The AWS resource tags to filter on for the log source specified by `source`. + items: + description: Tag in the form `key:value`. + example: "env:prod" + type: string + nullable: true + type: array + type: object + AWSLogsConfig: + description: AWS Logs Collection config. + properties: + lambda_forwarder: + $ref: "#/components/schemas/AWSLambdaForwarderConfig" + type: object + AWSLogsServicesResponse: + description: AWS Logs Services response body + properties: + data: + $ref: "#/components/schemas/AWSLogsServicesResponseData" + required: + - data + type: object + AWSLogsServicesResponseAttributes: + description: AWS Logs Services response body + properties: + logs_services: + description: List of AWS services that can send logs to Datadog + example: + - "s3" + items: + description: The name of an AWS service that can send logs to Datadog. + example: "s3" + type: string + type: array + required: + - logs_services + type: object + AWSLogsServicesResponseData: + description: AWS Logs Services response body + properties: + attributes: + $ref: "#/components/schemas/AWSLogsServicesResponseAttributes" + id: + default: "logs_services" + description: The `AWSLogsServicesResponseData` `id`. + example: "logs_services" + type: string + type: + $ref: "#/components/schemas/AWSLogsServicesResponseDataType" + required: + - id + - type + type: object + AWSLogsServicesResponseDataType: + default: "logs_services" + description: The `AWSLogsServicesResponseData` `type`. + enum: + - logs_services + example: "logs_services" + type: string + x-enum-varnames: + - LOGS_SERVICES + AWSMetricNameFilterPreviewDDName: + description: A Datadog metric name and whether it is filtered. + properties: + filtered: + description: Whether this Datadog metric name is filtered out. + example: true + type: boolean + name: + description: The Datadog metric name. + example: "aws.ec2.network_in" + type: string + required: + - name + - filtered + type: object + AWSMetricNameFilterPreviewFilterMatch: + description: A metric name filter pattern and how many metrics it matched. + properties: + match_count: + description: The number of Datadog metric names matched by this pattern. + example: 1 + format: int64 + type: integer + pattern: + description: The metric name filter pattern. + example: "aws.ec2.network_in" + type: string + required: + - pattern + - match_count + type: object + AWSMetricNameFilterPreviewMetric: + description: A CloudWatch metric and the Datadog metric names it produces. + properties: + cw_name: + description: The CloudWatch metric name. + example: "NetworkIn" + type: string + dd_names: + description: The Datadog metric names produced from this CloudWatch metric. + items: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewDDName" + type: array + required: + - cw_name + - dd_names + type: object + AWSMetricNameFilterPreviewNamespace: + description: The metric name filter preview for a single namespace. + properties: + filters: + description: The metric name filter patterns evaluated for this namespace and how many metrics they matched. + items: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewFilterMatch" + type: array + metrics: + description: |- + The CloudWatch metrics collected for this namespace and whether each resulting + Datadog metric is filtered. + items: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewMetric" + type: array + namespace: + description: The AWS CloudWatch namespace. + example: "AWS/EC2" + type: string + required: + - namespace + - filters + - metrics + type: object + AWSMetricNameFilterPreviewRequest: + description: AWS metric name filter preview request body. + properties: + data: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewRequestData" + required: + - data + type: object + AWSMetricNameFilterPreviewRequestAttributes: + description: AWS metric name filter preview request attributes. + properties: + metric_name_filters: + description: The metric name filters to preview. + items: + $ref: "#/components/schemas/AWSMetricNameFilters" + type: array + required: + - metric_name_filters + type: object + AWSMetricNameFilterPreviewRequestData: + description: AWS metric name filter preview request data. + properties: + attributes: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewRequestAttributes" + type: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewType" + required: + - type + - attributes + type: object + AWSMetricNameFilterPreviewResponse: + description: AWS metric name filter preview response body. + properties: + data: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewResponseData" + required: + - data + type: object + AWSMetricNameFilterPreviewResponseAttributes: + description: AWS metric name filter preview response attributes. + properties: + namespaces: + description: The list of namespaces affected by the previewed metric name filters. + items: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewNamespace" + type: array + required: + - namespaces + type: object + AWSMetricNameFilterPreviewResponseData: + description: AWS metric name filter preview response data. + properties: + attributes: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewResponseAttributes" + id: + $ref: "#/components/schemas/AWSAccountConfigID" + type: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewType" + required: + - id + - type + - attributes + type: object + AWSMetricNameFilterPreviewType: + default: "metric_name_filter_preview" + description: The `AWSMetricNameFilterPreviewResponseData` `type`. + enum: + - metric_name_filter_preview + example: "metric_name_filter_preview" + type: string + x-enum-varnames: + - METRIC_NAME_FILTER_PREVIEW + AWSMetricNameFilters: + description: |- + AWS CloudWatch metric name filter for a single namespace. + Exactly one of `include_only` or `exclude_only` must be set. + oneOf: + - $ref: "#/components/schemas/AWSMetricNameFiltersIncludeOnly" + - $ref: "#/components/schemas/AWSMetricNameFiltersExcludeOnly" + AWSMetricNameFiltersExcludeOnly: + description: Exclude metric names matching one of these patterns for a single namespace. + properties: + exclude_only: + description: Exclude metric names matching one of these patterns. + example: + - "aws.ec2.network_in" + items: + description: A metric name pattern to exclude. + example: "aws.ec2.network_in" + type: string + type: array + namespace: + description: The AWS CloudWatch namespace to which this metric name filter applies. + example: "AWS/EC2" + type: string + required: + - namespace + - exclude_only + type: object + AWSMetricNameFiltersIncludeOnly: + description: Include only metric names matching one of these patterns for a single namespace. + properties: + include_only: + description: Include only metric names matching one of these patterns. + example: + - "aws.ec2.network_in" + items: + description: A metric name pattern to include. + example: "aws.ec2.network_in" + type: string + type: array + namespace: + description: The AWS CloudWatch namespace to which this metric name filter applies. + example: "AWS/EC2" + type: string + required: + - namespace + - include_only + type: object + AWSMetricsConfig: + description: AWS Metrics Collection config. + properties: + automute_enabled: + description: Enable EC2 automute for AWS metrics. Defaults to `true`. + example: true + type: boolean + collect_cloudwatch_alarms: + description: Enable CloudWatch alarms collection. Defaults to `false`. + example: false + type: boolean + collect_custom_metrics: + description: Enable custom metrics collection. Defaults to `false`. + example: false + type: boolean + enabled: + description: Enable AWS metrics collection. Defaults to `true`. + example: true + type: boolean + metric_name_filters: + description: |- + AWS CloudWatch metric name filters. Each filter applies to a single namespace. + Exactly one of `include_only` or `exclude_only` must be set on each filter. + items: + $ref: "#/components/schemas/AWSMetricNameFilters" + type: array + namespace_filters: + $ref: "#/components/schemas/AWSNamespaceFilters" + tag_filters: + description: AWS Metrics collection tag filters list. Defaults to `[]`. + items: + $ref: "#/components/schemas/AWSNamespaceTagFilter" + type: array + type: object + AWSNamespaceFilters: + description: AWS Metrics namespace filters. Defaults to `exclude_only`. + oneOf: + - $ref: "#/components/schemas/AWSNamespaceFiltersExcludeOnly" + - $ref: "#/components/schemas/AWSNamespaceFiltersIncludeOnly" + AWSNamespaceFiltersExcludeOnly: + description: |- + Exclude only these namespaces from metrics collection. + Defaults to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. + `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default + to reduce your AWS CloudWatch costs from `GetMetricData` API calls. + properties: + exclude_only: + description: |- + Exclude only these namespaces from metrics collection. + Defaults to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. + `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default + to reduce your AWS CloudWatch costs from `GetMetricData` API calls. + example: + - "AWS/SQS" + - "AWS/ElasticMapReduce" + - "AWS/Usage" + items: + description: An AWS CloudWatch namespace to exclude from metrics collection. + example: "AWS/SQS" + type: string + type: array + required: + - exclude_only + type: object + AWSNamespaceFiltersIncludeOnly: + description: Include only these namespaces. + properties: + include_only: + description: Include only these namespaces. + example: + - "AWS/EC2" + items: + description: An AWS CloudWatch namespace to include in metrics collection. + example: "AWS/EC2" + type: string + type: array + required: + - include_only + type: object + AWSNamespaceTagFilter: + description: |- + AWS Metrics Collection tag filters list. Defaults to `[]`. + The array of custom AWS resource tags (in the form `key:value`) defines a filter that Datadog uses + when collecting metrics from a specified service. + Wildcards, such as `?` (match a single character) and `*` (match multiple characters), + and exclusion using `!` before the tag are supported. + For EC2, only hosts that match one of the defined tags are imported into Datadog. + The rest are ignored. For example, `env:production,instance-type:c?.*,!region:us-east-1`. + properties: + namespace: + description: The AWS service for which the tag filters defined in `tags` will be applied. + example: "AWS/EC2" + type: string + tags: + description: The AWS resource tags to filter on for the service specified by `namespace`. + items: + description: Tag in the form `key:value`. + example: "datadog:true" + type: string + nullable: true + type: array + type: object + AWSNamespacesResponse: + description: AWS Namespaces response body. + properties: + data: + $ref: "#/components/schemas/AWSNamespacesResponseData" + required: + - data + type: object + AWSNamespacesResponseAttributes: + description: AWS Namespaces response attributes. + properties: + namespaces: + description: AWS CloudWatch namespace. + example: + - "AWS/ApiGateway" + items: + description: An AWS CloudWatch namespace name. + example: "AWS/ApiGateway" + type: string + type: array + required: + - namespaces + type: object + AWSNamespacesResponseData: + description: AWS Namespaces response data. + properties: + attributes: + $ref: "#/components/schemas/AWSNamespacesResponseAttributes" + id: + default: "namespaces" + description: The `AWSNamespacesResponseData` `id`. + example: "namespaces" + type: string + type: + $ref: "#/components/schemas/AWSNamespacesResponseDataType" + required: + - id + - type + type: object + AWSNamespacesResponseDataType: + default: "namespaces" + description: The `AWSNamespacesResponseData` `type`. + enum: + - namespaces + example: "namespaces" + type: string + x-enum-varnames: + - NAMESPACES + AWSNewExternalIDResponse: + description: AWS External ID response body. + properties: + data: + $ref: "#/components/schemas/AWSNewExternalIDResponseData" + required: + - data + type: object + AWSNewExternalIDResponseAttributes: + description: AWS External ID response body. + properties: + external_id: + description: AWS IAM External ID for associated role. + example: "acb8f6b8a844443dbb726d07dcb1a870" + type: string + required: + - external_id + type: object + AWSNewExternalIDResponseData: + description: AWS External ID response body. + properties: + attributes: + $ref: "#/components/schemas/AWSNewExternalIDResponseAttributes" + id: + default: "external_id" + description: The `AWSNewExternalIDResponseData` `id`. + example: "external_id" + type: string + type: + $ref: "#/components/schemas/AWSNewExternalIDResponseDataType" + required: + - id + - type + type: object + AWSNewExternalIDResponseDataType: + default: "external_id" + description: The `AWSNewExternalIDResponseData` `type`. + enum: + - external_id + example: "external_id" + type: string + x-enum-varnames: + - EXTERNAL_ID + AWSRegions: + description: AWS Regions to collect data from. Defaults to `include_all`. + oneOf: + - $ref: "#/components/schemas/AWSRegionsIncludeAll" + - $ref: "#/components/schemas/AWSRegionsIncludeOnly" + AWSRegionsIncludeAll: + description: Include all regions. Defaults to `true`. + properties: + include_all: + description: Include all regions. + example: true + type: boolean + required: + - include_all + type: object + AWSRegionsIncludeOnly: + description: Include only these regions. + properties: + include_only: + description: Include only these regions. + example: + - "us-east-1" + items: + description: An AWS region to include in metrics collection. + example: "us-east-1" + type: string + type: array + required: + - include_only + type: object + AWSResourcesConfig: + description: AWS Resources Collection config. + properties: + cloud_security_posture_management_collection: + description: |- + Enable Cloud Security Management to scan AWS resources for vulnerabilities, misconfigurations, + identity risks, and compliance violations. Defaults to `false`. + Requires `extended_collection` to be set to `true`. + example: false + type: boolean + extended_collection: + description: |- + Whether Datadog collects additional attributes and configuration information about the resources + in your AWS account. Defaults to `true`. Required for `cloud_security_posture_management_collection`. + example: true + type: boolean + type: object + AWSTracesConfig: + description: AWS Traces Collection config. + properties: + xray_services: + $ref: "#/components/schemas/XRayServicesList" + type: object + AccessTokenListItem: + description: An access token entry returned by the personal access tokens list endpoint. May represent either a personal or a service access token. + properties: + attributes: + $ref: "#/components/schemas/PersonalAccessTokenAttributes" + id: + description: ID of the access token. + type: string + relationships: + $ref: "#/components/schemas/AccessTokenListItemRelationships" + type: + $ref: "#/components/schemas/AccessTokensType" + type: object + AccessTokenListItemRelationships: + description: Resources related to the access token entry in the mixed list response. + properties: + owned_by: + $ref: "#/components/schemas/RelationshipToAccessTokenOwner" + type: object + AccessTokenOwnerType: + description: Owner resource type. Either a user or a service account. + enum: + - users + - service_account + example: users + type: string + x-enum-varnames: + - USERS + - SERVICE_ACCOUNT + AccessTokensType: + description: Resource type returned by the access tokens list endpoint. Includes both personal and service access tokens. + enum: + - personal_access_tokens + - service_access_tokens + example: personal_access_tokens + type: string + x-enum-varnames: + - PERSONAL_ACCESS_TOKENS + - SERVICE_ACCESS_TOKENS + AccountFilteringConfig: + description: The account filtering configuration. + properties: + excluded_accounts: + description: The AWS account IDs to be excluded from your billing dataset. This field is used when `include_new_accounts` is `true`. + example: ["123456789123", "123456789143"] + items: + description: An AWS account ID to exclude from the billing dataset. + type: string + type: array + include_new_accounts: + description: Whether or not to automatically include new member accounts by default in your billing dataset. + example: true + nullable: true + type: boolean + included_accounts: + description: The AWS account IDs to be included in your billing dataset. This field is used when `include_new_accounts` is `false`. + example: ["123456789123", "123456789143"] + items: + description: An AWS account ID to include in the billing dataset. + type: string + type: array + type: object + AccountFilters: + description: The account filters for a cloud account. + properties: + attributes: + $ref: "#/components/schemas/AccountFiltersAttributes" + id: + description: The ID of the cloud account. + example: "123456789123" + type: string + type: + $ref: "#/components/schemas/AccountFiltersType" + required: + - attributes + - type + type: object + AccountFiltersAttributes: + description: Attributes for the account filters of a cloud account. + properties: + account_filters: + $ref: "#/components/schemas/AccountFilteringConfig" + account_id: + description: The cloud account ID. + example: "123456789123" + type: string + cloud: + description: The cloud provider of the account, for example `aws`, `aws_cur2`, or `oci`. + example: "aws_cur2" + type: string + type: object + AccountFiltersPatchData: + description: Account filters patch data. + properties: + attributes: + $ref: "#/components/schemas/AccountFiltersPatchRequestAttributes" + type: + $ref: "#/components/schemas/AccountFiltersPatchRequestType" + required: + - attributes + - type + type: object + AccountFiltersPatchRequest: + description: Account filters patch request. + properties: + data: + $ref: "#/components/schemas/AccountFiltersPatchData" + required: + - data + type: object + AccountFiltersPatchRequestAttributes: + description: Attributes for an account filters patch request. + properties: + account_filters: + $ref: "#/components/schemas/AccountFilteringConfig" + required: + - account_filters + type: object + AccountFiltersPatchRequestType: + default: account_filters_patch_request + description: Type of account filters patch request. + enum: + - account_filters_patch_request + example: account_filters_patch_request + type: string + x-enum-varnames: + - ACCOUNT_FILTERS_PATCH_REQUEST + AccountFiltersResponse: + description: Response containing the account filters for a cloud account. + properties: + data: + $ref: "#/components/schemas/AccountFilters" + type: object + AccountFiltersType: + default: account_filters + description: Type of account filters. + enum: + - account_filters + example: account_filters + type: string + x-enum-varnames: + - ACCOUNT_FILTERS + ActionConnectionAttributes: + description: The definition of `ActionConnectionAttributes` object. + properties: + integration: + $ref: "#/components/schemas/ActionConnectionIntegration" + name: + description: Name of the connection + example: My AWS Connection + type: string + tags: + description: |- + Tags associated with the connection. Each tag must follow the `key:value` format. + The `default` tag key is reserved. + example: + - env:prod + - team:action-platform + items: + description: A non-reserved tag in `key:value` format. + pattern: "^[A-Za-z0-9._/-]+:[A-Za-z0-9._/-]+$" + type: string + type: array + required: + - name + - integration + type: object + ActionConnectionAttributesUpdate: + description: The definition of `ActionConnectionAttributesUpdate` object. + properties: + integration: + $ref: "#/components/schemas/ActionConnectionIntegrationUpdate" + name: + description: Name of the connection + example: My AWS Connection + type: string + tags: + description: |- + Tags associated with the connection. Each tag must follow the `key:value` format. + The `default` tag key is reserved. + example: + - env:prod + - team:action-platform + items: + description: A non-reserved tag in `key:value` format. + pattern: "^[A-Za-z0-9._/-]+:[A-Za-z0-9._/-]+$" + type: string + type: array + type: object + ActionConnectionData: + description: Data related to the connection. + properties: + attributes: + $ref: "#/components/schemas/ActionConnectionAttributes" + id: + description: The connection identifier + readOnly: true + type: string + type: + $ref: "#/components/schemas/ActionConnectionDataType" + required: + - type + - attributes + type: object + ActionConnectionDataType: + description: The definition of `ActionConnectionDataType` object. + enum: + - action_connection + example: action_connection + type: string + x-enum-varnames: + - ACTION_CONNECTION + ActionConnectionDataUpdate: + description: Data related to the connection update. + properties: + attributes: + $ref: "#/components/schemas/ActionConnectionAttributesUpdate" + type: + $ref: "#/components/schemas/ActionConnectionDataType" + required: + - type + - attributes + type: object + ActionConnectionIntegration: + description: The definition of `ActionConnectionIntegration` object. + oneOf: + - $ref: "#/components/schemas/AWSIntegration" + - $ref: "#/components/schemas/AnthropicIntegration" + - $ref: "#/components/schemas/AsanaIntegration" + - $ref: "#/components/schemas/AzureIntegration" + - $ref: "#/components/schemas/CircleCIIntegration" + - $ref: "#/components/schemas/ClickupIntegration" + - $ref: "#/components/schemas/CloudflareIntegration" + - $ref: "#/components/schemas/ConfigCatIntegration" + - $ref: "#/components/schemas/DatadogIntegration" + - $ref: "#/components/schemas/FastlyIntegration" + - $ref: "#/components/schemas/FreshserviceIntegration" + - $ref: "#/components/schemas/GCPIntegration" + - $ref: "#/components/schemas/GeminiIntegration" + - $ref: "#/components/schemas/GitlabIntegration" + - $ref: "#/components/schemas/GreyNoiseIntegration" + - $ref: "#/components/schemas/HTTPIntegration" + - $ref: "#/components/schemas/LaunchDarklyIntegration" + - $ref: "#/components/schemas/NotionIntegration" + - $ref: "#/components/schemas/OktaIntegration" + - $ref: "#/components/schemas/OpenAIIntegration" + - $ref: "#/components/schemas/ServiceNowIntegration" + - $ref: "#/components/schemas/SplitIntegration" + - $ref: "#/components/schemas/StatsigIntegration" + - $ref: "#/components/schemas/VirusTotalIntegration" + ActionConnectionIntegrationUpdate: + description: The definition of `ActionConnectionIntegrationUpdate` object. + oneOf: + - $ref: "#/components/schemas/AWSIntegrationUpdate" + - $ref: "#/components/schemas/AnthropicIntegrationUpdate" + - $ref: "#/components/schemas/AsanaIntegrationUpdate" + - $ref: "#/components/schemas/AzureIntegrationUpdate" + - $ref: "#/components/schemas/CircleCIIntegrationUpdate" + - $ref: "#/components/schemas/ClickupIntegrationUpdate" + - $ref: "#/components/schemas/CloudflareIntegrationUpdate" + - $ref: "#/components/schemas/ConfigCatIntegrationUpdate" + - $ref: "#/components/schemas/DatadogIntegrationUpdate" + - $ref: "#/components/schemas/FastlyIntegrationUpdate" + - $ref: "#/components/schemas/FreshserviceIntegrationUpdate" + - $ref: "#/components/schemas/GCPIntegrationUpdate" + - $ref: "#/components/schemas/GeminiIntegrationUpdate" + - $ref: "#/components/schemas/GitlabIntegrationUpdate" + - $ref: "#/components/schemas/GreyNoiseIntegrationUpdate" + - $ref: "#/components/schemas/HTTPIntegrationUpdate" + - $ref: "#/components/schemas/LaunchDarklyIntegrationUpdate" + - $ref: "#/components/schemas/NotionIntegrationUpdate" + - $ref: "#/components/schemas/OktaIntegrationUpdate" + - $ref: "#/components/schemas/OpenAIIntegrationUpdate" + - $ref: "#/components/schemas/ServiceNowIntegrationUpdate" + - $ref: "#/components/schemas/SplitIntegrationUpdate" + - $ref: "#/components/schemas/StatsigIntegrationUpdate" + - $ref: "#/components/schemas/VirusTotalIntegrationUpdate" + ActionQuery: + description: An action query. This query type is used to trigger an action, such as sending a HTTP request. + properties: + events: + description: Events to listen for downstream of the action query. + items: + $ref: "#/components/schemas/AppBuilderEvent" + type: array + id: + description: The ID of the action query. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + name: + description: A unique identifier for this action query. This name is also used to access the query's result throughout the app. + example: "fetchPendingOrders" + type: string + properties: + $ref: "#/components/schemas/ActionQueryProperties" + type: + $ref: "#/components/schemas/ActionQueryType" + required: + - id + - name + - type + - properties + type: object + ActionQueryCondition: + description: Whether to run this query. If specified, the query will only run if this condition evaluates to `true` in JavaScript and all other conditions are also met. + oneOf: + - type: boolean + - example: "${true}" + type: string + ActionQueryDebounceInMs: + description: The minimum time in milliseconds that must pass before the query can be triggered again. This is useful for preventing accidental double-clicks from triggering the query multiple times. + oneOf: + - example: 310.5 + format: double + type: number + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a number." + example: "${1000}" + type: string + ActionQueryMockedOutputs: + description: The mocked outputs of the action query. This is useful for testing the app without actually running the action. + oneOf: + - type: string + - $ref: "#/components/schemas/ActionQueryMockedOutputsObject" + ActionQueryMockedOutputsEnabled: + description: Whether to enable the mocked outputs for testing. + example: false + oneOf: + - type: boolean + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean." + example: "${true}" + type: string + ActionQueryMockedOutputsObject: + description: The mocked outputs of the action query. + properties: + enabled: + $ref: "#/components/schemas/ActionQueryMockedOutputsEnabled" + outputs: + description: The mocked outputs of the action query, serialized as JSON. + example: '{"status": "success"}' + type: string + required: + - enabled + type: object + ActionQueryOnlyTriggerManually: + description: Determines when this query is executed. If set to `false`, the query will run when the app loads and whenever any query arguments change. If set to `true`, the query will only run when manually triggered from elsewhere in the app. + oneOf: + - type: boolean + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean." + example: "${true}" + type: string + ActionQueryPollingIntervalInMs: + description: If specified, the app will poll the query at the specified interval in milliseconds. The minimum polling interval is 15 seconds. The query will only poll when the app's browser tab is active. + oneOf: + - example: 30000.0 + format: double + minimum: 15000.0 + type: number + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a number." + example: "${15000}" + type: string + ActionQueryProperties: + description: The properties of the action query. + properties: + condition: + $ref: "#/components/schemas/ActionQueryCondition" + debounceInMs: + $ref: "#/components/schemas/ActionQueryDebounceInMs" + mockedOutputs: + $ref: "#/components/schemas/ActionQueryMockedOutputs" + onlyTriggerManually: + $ref: "#/components/schemas/ActionQueryOnlyTriggerManually" + outputs: + description: The post-query transformation function, which is a JavaScript function that changes the query's `.outputs` property after the query's execution. + example: "${((outputs) => {return outputs.body.data})(self.rawOutputs)}" + type: string + pollingIntervalInMs: + $ref: "#/components/schemas/ActionQueryPollingIntervalInMs" + requiresConfirmation: + $ref: "#/components/schemas/ActionQueryRequiresConfirmation" + showToastOnError: + $ref: "#/components/schemas/ActionQueryShowToastOnError" + spec: + $ref: "#/components/schemas/ActionQuerySpec" + required: + - spec + type: object + ActionQueryRequiresConfirmation: + description: Whether to prompt the user to confirm this query before it runs. + oneOf: + - type: boolean + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean." + example: "${true}" + type: string + ActionQueryShowToastOnError: + description: Whether to display a toast to the user when the query returns an error. + oneOf: + - type: boolean + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean." + example: "${true}" + type: string + ActionQuerySpec: + description: The definition of the action query. + example: "" + oneOf: + - type: string + - $ref: "#/components/schemas/ActionQuerySpecObject" + ActionQuerySpecConnectionGroup: + description: The connection group to use for an action query. + properties: + id: + description: The ID of the connection group. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + tags: + description: The tags of the connection group. + items: + description: A tag for the connection group. + type: string + type: array + type: object + ActionQuerySpecInput: + additionalProperties: {} + description: The inputs to the action query. See the [Actions Catalog](https://docs.datadoghq.com/actions/actions_catalog/) for more detail on each action and its inputs. + type: object + ActionQuerySpecInputs: + description: The inputs to the action query. These are the values that are passed to the action when it is triggered. + oneOf: + - type: string + - $ref: "#/components/schemas/ActionQuerySpecInput" + ActionQuerySpecObject: + description: The action query spec object. + properties: + connectionGroup: + $ref: "#/components/schemas/ActionQuerySpecConnectionGroup" + connectionId: + description: The ID of the custom connection to use for this action query. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: string + fqn: + description: The fully qualified name of the action type. + example: "com.datadoghq.http.request" + type: string + inputs: + $ref: "#/components/schemas/ActionQuerySpecInputs" + required: + - fqn + type: object + ActionQueryType: + default: action + description: The action query type. + enum: + - action + example: action + type: string + x-enum-varnames: + - ACTION + ActiveBillingDimensionsAttributes: + description: List of active billing dimensions. + properties: + month: + description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`." + format: date-time + type: string + values: + description: "List of active billing dimensions. Example: `[infra_host, apm_host, serverless_infra]`." + items: + description: A given billing dimension in a list. + example: "infra_host" + type: string + type: array + type: object + ActiveBillingDimensionsBody: + description: Active billing dimensions data. + properties: + attributes: + $ref: "#/components/schemas/ActiveBillingDimensionsAttributes" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/ActiveBillingDimensionsType" + type: object + ActiveBillingDimensionsResponse: + description: Active billing dimensions response. + properties: + data: + $ref: "#/components/schemas/ActiveBillingDimensionsBody" + type: object + ActiveBillingDimensionsType: + default: billing_dimensions + description: Type of active billing dimensions data. + enum: + - billing_dimensions + type: string + x-enum-varnames: + - BILLING_DIMENSIONS + AddMemberTeamRequest: + description: Request to add a member team to super team's hierarchy + properties: + data: + $ref: "#/components/schemas/MemberTeam" + required: + - data + type: object + Advisory: + description: Advisory. + properties: + base_severity: + description: Advisory base severity. + example: Critical + type: string + id: + description: Advisory id. + example: GHSA-4wrc-f8pq-fpqp + type: string + severity: + description: Advisory Datadog severity. + example: Medium + type: string + required: + - id + - base_severity + type: object + AgentTrigger: + description: "Trigger a workflow from an agent via the MCP execute tool. Workflow can be executed from Bits Chat, Bits Agent Builder, Claude Code, Codex, Cursor, and any other coding agent using the Datadog MCP." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + AgentTriggerWrapper: + description: "Schema for an agent-based trigger." + properties: + agentTrigger: + $ref: "#/components/schemas/AgentTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - agentTrigger + type: object + AggregatedHighFrozenFrameRate: + description: Aggregated high frozen frame rate detection at view level. + properties: + avg_frozen_frame_rate: + description: Average frozen frame rate as a fraction of total frames. + example: 0.15 + format: double + type: number + avg_segment_duration: + description: Average segment duration in nanoseconds. + example: 3000000000 + format: int64 + type: integer + avg_total_frozen_duration: + description: Average total frozen duration in nanoseconds. + example: 500000000 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$mno345 + type: string + impact_score: + description: Impact score for this detection. + example: 14.0 + format: double + type: number + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 5 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_frozen_frame_rate + - avg_total_frozen_duration + - avg_segment_duration + - impact_score + type: object + AggregatedHighScriptEval: + description: Aggregated high script evaluation detection grouped by source. + properties: + avg_duration: + description: Average script evaluation duration in nanoseconds. + example: 300000000 + format: int64 + type: integer + avg_forced_style_layout: + description: Average forced style/layout duration in nanoseconds. + example: 0 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$7766a8c2180aa153f5526ba8868999f8 + type: string + impact_score: + description: Impact score combining view frequency and duration severity. + example: 30.0 + format: double + type: number + instance_count: + description: Total number of detection instances across sampled views. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + invoker_type: + description: Type of invoker that triggered the script evaluation. + example: user-callback + type: string + source_category: + description: Category of the script source. + example: third-party + nullable: true + type: string + source_function_name: + description: Name of the function that triggered the high script evaluation. + example: handleClick + type: string + source_url: + description: URL of the script that triggered the high script evaluation. + example: https://cdn.example.com/app.js + nullable: true + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - source_url + - source_function_name + - source_category + - invoker_type + - view_occurrences + - instance_count + - avg_duration + - avg_forced_style_layout + - impact_score + type: object + AggregatedLongTasksByInvokerType: + description: Aggregated long task statistics for a single invoker type. + properties: + criteria_view_occurrences: + description: Number of sampled views where this invoker type had long tasks contributing to the criteria metric. + example: 40 + format: int32 + maximum: 2147483647 + type: integer + impact_score: + description: Rank-product impact score combining view frequency and blocking time severity. + example: 0.4 + format: double + type: number + invoker_type: + description: Category of the long task invoker (for example, resolve-promise, user-callback). + example: resolve-promise + type: string + stats_per_view: + $ref: "#/components/schemas/LongTaskStatsPerView" + top_invokers: + description: Top invokers within this invoker type, sorted by impact score descending. + items: + $ref: "#/components/schemas/TopLongTaskInvoker" + type: array + view_occurrences: + description: Number of sampled views where this invoker type had any long tasks. + example: 68 + format: int32 + maximum: 2147483647 + type: integer + required: + - invoker_type + - view_occurrences + - stats_per_view + - top_invokers + type: object + AggregatedLongTasksRequest: + description: Request body for the aggregated long tasks endpoint. + properties: + data: + $ref: "#/components/schemas/AggregatedLongTasksRequestData" + required: + - data + type: object + AggregatedLongTasksRequestAttributes: + description: Attributes for an aggregated long tasks query. + properties: + application_id: + description: The RUM application ID to analyze. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteria" + filter: + description: RUM query string to filter events (for example, @session.type:user @geo.country:US). + example: "@session.type:user" + type: string + from: + description: Start of the time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + sample_size: + description: Number of view instances to sample, between 1 and 500. + example: 20 + format: int32 + maximum: 500 + minimum: 1 + type: integer + to: + description: End of the time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_name: + description: The RUM view name to analyze (for example, /account/login). + example: /account/login(/:type) + type: string + required: + - application_id + - view_name + - from + - to + - sample_size + type: object + AggregatedLongTasksRequestData: + description: Data envelope for an aggregated long tasks request. + properties: + attributes: + $ref: "#/components/schemas/AggregatedLongTasksRequestAttributes" + type: + $ref: "#/components/schemas/AggregatedLongTasksRequestType" + required: + - type + - attributes + type: object + AggregatedLongTasksRequestType: + description: The JSON:API type for aggregated long tasks requests. + enum: + - aggregated_long_tasks + example: aggregated_long_tasks + type: string + x-enum-varnames: + - AGGREGATED_LONG_TASKS + AggregatedLongTasksResponse: + description: Response body for the aggregated long tasks endpoint. + properties: + data: + $ref: "#/components/schemas/AggregatedLongTasksResponseData" + required: + - data + type: object + AggregatedLongTasksResponseAttributes: + description: Attributes of an aggregated long tasks response. + properties: + application_id: + description: The RUM application ID that was analyzed. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteria" + from: + description: Start of the analyzed time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + long_tasks_by_invoker_type: + description: Long task statistics grouped by invoker type, sorted by impact score descending. + items: + $ref: "#/components/schemas/AggregatedLongTasksByInvokerType" + type: array + sampled_view_ids: + description: List of RUM view IDs sampled for this aggregation, capped at 50. + example: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + items: + type: string + type: array + to: + description: End of the analyzed time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_count: + description: Number of view instances included in the analysis. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + view_name: + description: The RUM view name that was analyzed. + example: /account/login(/:type) + type: string + required: + - view_name + - application_id + - view_count + - from + - to + - sampled_view_ids + - long_tasks_by_invoker_type + type: object + AggregatedLongTasksResponseData: + description: Data envelope for an aggregated long tasks response. + properties: + attributes: + $ref: "#/components/schemas/AggregatedLongTasksResponseAttributes" + id: + description: Hash-based unique identifier for this aggregation. + example: 2f0b3455 + type: string + type: + $ref: "#/components/schemas/AggregatedLongTasksRequestType" + required: + - id + - type + - attributes + type: object + AggregatedLowCacheHitRate: + description: Aggregated low cache hit rate detection at view level. + properties: + avg_cache_hit_rate: + description: Average cache hit rate across affected views. + example: 0.15 + format: double + type: number + avg_resource_download_size_bytes: + description: Average total download size of uncached resources in bytes. + example: 1048576 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$abc123 + type: string + impact_score: + description: Impact score for this detection. + example: 20.0 + format: double + type: number + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 5 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_cache_hit_rate + - avg_resource_download_size_bytes + - impact_score + type: object + AggregatedMobileScrollFriction: + description: Aggregated mobile scroll friction detection at view level. + properties: + avg_scroll_frozen_frame_count: + description: Average number of frozen frames during scroll interactions. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$ghi789 + type: string + impact_score: + description: Impact score for this detection. + example: 12.0 + format: double + type: number + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 6 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_scroll_frozen_frame_count + - impact_score + type: object + AggregatedResource: + description: Aggregated performance statistics for a single network resource across sampled view instances. + properties: + avg_duration_ms: + description: Average total duration in milliseconds. + example: 839.1 + format: double + type: number + avg_start_time_ms: + description: Average start time relative to view start in milliseconds. + example: 1486.3 + format: double + type: number + cache_hit_rate_pct: + description: Cache hit rate as a percentage. + example: 100.0 + format: double + type: number + cached_count: + description: Number of requests served from cache. + example: 27 + format: int32 + maximum: 2147483647 + type: integer + downloaded_count: + description: Number of requests downloaded from the network. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + global_p75_duration_ms: + description: 75th percentile duration across all view names in the application, present when include_global_appearance is true. + example: 500.0 + format: double + type: number + global_view_name_count: + description: Number of distinct view names in the application that load this resource, present when include_global_appearance is true. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + global_view_name_pct: + description: Percentage of distinct view names in the application that load this resource, present when include_global_appearance is true. + example: 30.0 + format: double + type: number + http_method: + description: HTTP method for the resource request. + example: GET + nullable: true + type: string + load_frequency_pct: + description: Percentage of sampled view instances that loaded this resource. + example: 54.0 + format: double + type: number + max_duration_ms: + description: Maximum duration in milliseconds. + example: 945.6 + format: double + type: number + median_duration_ms: + description: Median duration in milliseconds. + example: 836.2 + format: double + type: number + min_duration_ms: + description: Minimum duration in milliseconds. + example: 812.7 + format: double + type: number + p75_duration_ms: + description: 75th percentile duration in milliseconds. + example: 844.1 + format: double + type: number + p95_duration_ms: + description: 95th percentile duration in milliseconds. + example: 861.8 + format: double + type: number + resource_type: + description: Resource type (JS, CSS, image, fetch, XHR, document, and so on). + example: fetch + nullable: true + type: string + resource_url_path_group: + description: URL path group used to aggregate similar resources. + example: /api/gallery + type: string + timing_breakdown: + $ref: "#/components/schemas/AggregatedResourceTimingBreakdown" + total_requests: + description: Total number of requests for this resource across all sampled views. + example: 27 + format: int32 + maximum: 2147483647 + type: integer + views_with_resource: + description: Number of sampled view instances that loaded this resource. + example: 27 + format: int32 + maximum: 2147483647 + type: integer + required: + - resource_url_path_group + - resource_type + - http_method + - avg_start_time_ms + - avg_duration_ms + - p95_duration_ms + - p75_duration_ms + - median_duration_ms + - min_duration_ms + - max_duration_ms + - timing_breakdown + - total_requests + - views_with_resource + - load_frequency_pct + - cached_count + - downloaded_count + - cache_hit_rate_pct + type: object + AggregatedResourceTimingBreakdown: + description: Average timing breakdown per network phase for a resource. + properties: + avg_connect_ms: + description: Average TCP connect duration in milliseconds. + example: 20.0 + format: double + type: number + avg_dns_ms: + description: Average DNS resolution duration in milliseconds. + example: 10.0 + format: double + type: number + avg_download_ms: + description: Average download phase duration in milliseconds. + example: 135.0 + format: double + type: number + avg_first_byte_ms: + description: Average time to first byte in milliseconds. + example: 30.0 + format: double + type: number + avg_redirect_ms: + description: Average redirect phase duration in milliseconds. + example: 0.0 + format: double + type: number + avg_ssl_ms: + description: Average SSL handshake duration in milliseconds. + example: 5.0 + format: double + type: number + required: + - avg_redirect_ms + - avg_dns_ms + - avg_connect_ms + - avg_ssl_ms + - avg_first_byte_ms + - avg_download_ms + type: object + AggregatedSignalsProblemsRequest: + description: Request body for the aggregated signals and problems endpoint. + properties: + data: + $ref: "#/components/schemas/AggregatedSignalsProblemsRequestData" + required: + - data + type: object + AggregatedSignalsProblemsRequestAttributes: + description: Attributes for an aggregated signals and problems query. + properties: + application_id: + description: The RUM application ID to analyze. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteria" + detection_types: + description: List of detection types to include in the response. When omitted, all types are returned. + example: + - high_script_evaluations + - uncompressed_resources + items: + type: string + type: array + filter: + description: RUM query string to filter events (for example, @session.type:user @geo.country:US). + example: "@session.type:user" + type: string + from: + description: Start of the time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + sample_size: + description: Number of view instances to sample, between 1 and 50. + example: 30 + format: int32 + maximum: 50 + minimum: 1 + type: integer + to: + description: End of the time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_name: + description: The RUM view name to analyze (for example, /account/login). + example: /account/login(/:type) + type: string + required: + - application_id + - view_name + - from + - to + - sample_size + type: object + AggregatedSignalsProblemsRequestData: + description: Data envelope for an aggregated signals and problems request. + properties: + attributes: + $ref: "#/components/schemas/AggregatedSignalsProblemsRequestAttributes" + type: + $ref: "#/components/schemas/AggregatedSignalsProblemsRequestType" + required: + - type + - attributes + type: object + AggregatedSignalsProblemsRequestType: + description: The JSON:API type for aggregated signals and problems requests. + enum: + - aggregated_signals_problems + example: aggregated_signals_problems + type: string + x-enum-varnames: + - AGGREGATED_SIGNALS_PROBLEMS + AggregatedSignalsProblemsResponse: + description: Response body for the aggregated signals and problems endpoint. + properties: + data: + $ref: "#/components/schemas/AggregatedSignalsProblemsResponseData" + required: + - data + type: object + AggregatedSignalsProblemsResponseAttributes: + description: Attributes of an aggregated signals and problems response. + properties: + application_id: + description: The RUM application ID that was analyzed. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteria" + from: + description: Start of the analyzed time range as a Unix timestamp in seconds. + example: 1710000000 + format: int64 + type: integer + problem_detections: + $ref: "#/components/schemas/SignalsProblemsDetections" + sample_metadata: + $ref: "#/components/schemas/SignalsProblemsSampleMetadata" + to: + description: End of the analyzed time range as a Unix timestamp in seconds. + example: 1710003600 + format: int64 + type: integer + view_name: + description: The RUM view name that was analyzed. + example: /checkout + type: string + required: + - view_name + - application_id + - from + - to + - sample_metadata + - problem_detections + type: object + AggregatedSignalsProblemsResponseData: + description: Data envelope for an aggregated signals and problems response. + properties: + attributes: + $ref: "#/components/schemas/AggregatedSignalsProblemsResponseAttributes" + id: + description: Hash-based unique identifier for this aggregation. + example: 2f0b3455 + type: string + type: + $ref: "#/components/schemas/AggregatedSignalsProblemsRequestType" + required: + - id + - type + - attributes + type: object + AggregatedSlowFCPHighBytes: + description: Aggregated slow first contentful paint with high byte count detection. + properties: + avg_bytes_before_fcp_bytes: + description: Average total bytes loaded before first contentful paint. + example: 2097152 + format: int64 + type: integer + avg_first_contentful_paint_ms: + description: Average first contentful paint time in milliseconds. + example: 3500 + format: int64 + type: integer + avg_resource_count_before_fcp: + description: Average number of resources loaded before first contentful paint. + example: 25 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$def456 + type: string + impact_score: + description: Impact score for this detection. + example: 18.0 + format: double + type: number + platform: + description: Platform identifier for the affected views. + example: browser + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 4 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_first_contentful_paint_ms + - avg_bytes_before_fcp_bytes + - avg_resource_count_before_fcp + - platform + - impact_score + type: object + AggregatedSlowInteractionLongTask: + description: Aggregated slow interaction with long task detection grouped by action and selector. + properties: + action_type: + description: Type of user interaction that triggered the slow response. + example: click + type: string + avg_blocking_duration: + description: Average long task blocking duration in nanoseconds. + example: 250000000 + format: int64 + type: integer + avg_duration: + description: Average total interaction duration in nanoseconds. + example: 320000000 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$jkl012 + type: string + impact_score: + description: Impact score combining view frequency and blocking severity. + example: 22.0 + format: double + type: number + instance_count: + description: Total number of detection instances across sampled views. + example: 9 + format: int32 + maximum: 2147483647 + type: integer + selector: + description: CSS selector of the element that was interacted with. + example: "#submit-button" + nullable: true + type: string + selector_normalized: + description: Normalized CSS selector with dynamic parts replaced. + example: button[data-action] + nullable: true + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 7 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - action_type + - selector + - selector_normalized + - view_occurrences + - instance_count + - avg_blocking_duration + - avg_duration + - impact_score + type: object + AggregatedUncompressedResource: + description: Aggregated uncompressed resource detection grouped by URL path. + properties: + avg_body_size: + description: Average uncompressed body size in bytes. + example: 524288 + format: int64 + type: integer + avg_duration: + description: Average resource loading duration in nanoseconds. + example: 0 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$65e268e25cab3a1f6230405ccf011a68 + type: string + impact_score: + description: Impact score combining view frequency and resource size. + example: 16.67 + format: double + type: number + instance_count: + description: Total number of detection instances across sampled views. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + provider_type: + description: CDN or hosting provider type for the resource. + example: cloudfront + nullable: true + type: string + render_blocking: + description: Whether the resource is render-blocking. + example: blocking + nullable: true + type: string + resource_type: + description: Type of the resource (JS, CSS, image, fetch, and so on). + example: image + type: string + url_path_group: + description: Normalized URL path pattern for the uncompressed resource. + example: /cdn/hero.jpg + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - url_path_group + - resource_type + - render_blocking + - provider_type + - view_occurrences + - instance_count + - avg_body_size + - avg_duration + - impact_score + type: object + AggregatedWaterfallPerformanceCriteria: + description: Performance criteria to filter view instances by a metric threshold. + properties: + max: + description: Maximum threshold in seconds (inclusive). + example: 5.0 + format: double + type: number + metric: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteriaMetric" + min: + description: Minimum threshold in seconds (inclusive). + example: 2.5 + format: double + type: number + required: + - metric + type: object + AggregatedWaterfallPerformanceCriteriaMetric: + description: Performance metric used to filter view instances by threshold. + enum: + - loading_time + - largest_contentful_paint + - first_contentful_paint + - interaction_to_next_paint + example: largest_contentful_paint + type: string + x-enum-varnames: + - LOADING_TIME + - LARGEST_CONTENTFUL_PAINT + - FIRST_CONTENTFUL_PAINT + - INTERACTION_TO_NEXT_PAINT + AggregatedWaterfallRequest: + description: Request body for the aggregated waterfall endpoint. + properties: + data: + $ref: "#/components/schemas/AggregatedWaterfallRequestData" + required: + - data + type: object + AggregatedWaterfallRequestAttributes: + description: Attributes for an aggregated waterfall query. + properties: + application_id: + description: The RUM application ID to analyze. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteria" + filter: + description: RUM query string to filter events (for example, @session.type:user @geo.country:US). + example: "@session.type:user" + type: string + from: + description: Start of the time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + include_global_appearance: + description: When true, enriches each resource with cross-view appearance statistics. + example: false + type: boolean + sample_size: + description: Number of view instances to sample, between 1 and 500. + example: 20 + format: int32 + maximum: 500 + minimum: 1 + type: integer + to: + description: End of the time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_name: + description: The RUM view name to analyze (for example, /account/login). + example: /account/login(/:type) + type: string + required: + - application_id + - view_name + - from + - to + - sample_size + type: object + AggregatedWaterfallRequestData: + description: Data envelope for an aggregated waterfall request. + properties: + attributes: + $ref: "#/components/schemas/AggregatedWaterfallRequestAttributes" + type: + $ref: "#/components/schemas/AggregatedWaterfallRequestType" + required: + - type + - attributes + type: object + AggregatedWaterfallRequestType: + description: The JSON:API type for aggregated waterfall requests. + enum: + - aggregated_waterfall + example: aggregated_waterfall + type: string + x-enum-varnames: + - AGGREGATED_WATERFALL + AggregatedWaterfallResponse: + description: Response body for the aggregated waterfall endpoint. + properties: + data: + $ref: "#/components/schemas/AggregatedWaterfallResponseData" + required: + - data + type: object + AggregatedWaterfallResponseAttributes: + description: Attributes of an aggregated waterfall response. + properties: + application_id: + description: The RUM application ID that was analyzed. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: "#/components/schemas/AggregatedWaterfallPerformanceCriteria" + from: + description: Start of the analyzed time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + resources: + description: Network resources in chronological waterfall order. + items: + $ref: "#/components/schemas/AggregatedResource" + type: array + sampled_view_ids: + description: List of RUM view IDs sampled for this aggregation, capped at 50. + example: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + - dfe318df-4ae5-44b8-9fe2-4107885e1a46 + items: + type: string + type: array + to: + description: End of the analyzed time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + total_cache_hit_rate_pct: + description: Overall cache hit rate across all sampled views. + example: 0.677 + format: double + type: number + view_count: + description: Number of view instances included in the analysis. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + view_name: + description: The RUM view name that was analyzed. + example: /account/login(/:type) + type: string + required: + - view_name + - application_id + - view_count + - from + - to + - sampled_view_ids + - total_cache_hit_rate_pct + - resources + type: object + AggregatedWaterfallResponseData: + description: Data envelope for an aggregated waterfall response. + properties: + attributes: + $ref: "#/components/schemas/AggregatedWaterfallResponseAttributes" + id: + description: Hash-based unique identifier for this aggregation. + example: 2f0b3455 + type: string + type: + $ref: "#/components/schemas/AggregatedWaterfallRequestType" + required: + - id + - type + - attributes + type: object + AiCustomRuleDataType: + description: AI custom rule resource type. + enum: [ai_rule] + example: ai_rule + type: string + x-enum-varnames: + - AI_RULE + AiCustomRuleItem: + description: An AI custom rule embedded within a ruleset response. + properties: + created_at: + description: The creation timestamp. + example: "2024-01-01T00:00:00+00:00" + format: date-time + type: string + created_by: + description: The identifier of the user who created the rule. + example: example-handle + type: string + last_revision: + $ref: "#/components/schemas/AiCustomRuleRevisionResponseAttributes" + description: The most recent revision of the rule. + nullable: true + name: + description: The rule name. + example: my-ai-rule + type: string + required: + - name + - created_at + - created_by + - last_revision + type: object + AiCustomRuleRequest: + description: Request body for creating an AI custom rule. + properties: + data: + $ref: "#/components/schemas/AiCustomRuleRequestData" + type: object + AiCustomRuleRequestAttributes: + description: Attributes for creating an AI custom rule. + properties: + name: + description: The rule name. + example: my-ai-rule + type: string + type: object + AiCustomRuleRequestData: + description: Request data for creating an AI custom rule. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRuleRequestAttributes" + id: + description: The rule identifier, which must match the name. + example: my-ai-rule + type: string + type: + $ref: "#/components/schemas/AiCustomRuleDataType" + type: object + AiCustomRuleResponse: + description: Response containing a single AI custom rule. + properties: + data: + $ref: "#/components/schemas/AiCustomRuleResponseData" + required: + - data + type: object + AiCustomRuleResponseData: + description: Response data for an AI custom rule. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRuleItem" + id: + description: The rule identifier. + example: my-ai-rule + type: string + type: + $ref: "#/components/schemas/AiCustomRuleDataType" + required: + - id + - type + - attributes + type: object + AiCustomRuleRevisionDataType: + description: AI custom rule revision resource type. + enum: [ai_rule_revision] + example: ai_rule_revision + type: string + x-enum-varnames: + - AI_RULE_REVISION + AiCustomRuleRevisionExecutionMode: + description: The execution mode for an AI rule revision. + enum: [auto, manual, always] + example: auto + type: string + x-enum-varnames: + - AUTO + - MANUAL + - ALWAYS + AiCustomRuleRevisionRequest: + description: Request body for creating an AI custom rule revision. + properties: + data: + $ref: "#/components/schemas/AiCustomRuleRevisionRequestData" + type: object + AiCustomRuleRevisionRequestAttributes: + description: Attributes for creating an AI custom rule revision. + properties: + category: + $ref: "#/components/schemas/CustomRuleRevisionAttributesCategory" + content: + description: Base64-encoded AI model content for this revision. + example: Content + type: string + cwe: + description: The associated CWE identifier. + example: "79" + nullable: true + type: string + description: + description: Base64-encoded full description. + example: Ruleset description + type: string + directories: + description: Directory patterns this rule applies to. + example: [] + items: + type: string + type: array + execution_mode: + $ref: "#/components/schemas/AiCustomRuleRevisionExecutionMode" + globs: + description: File glob patterns this rule applies to. + example: + - "**/*.py" + items: + type: string + type: array + is_published: + description: Whether this revision is published. + example: false + type: boolean + is_testing: + description: Whether this revision is for testing only. + example: false + type: boolean + severity: + $ref: "#/components/schemas/CustomRuleRevisionAttributesSeverity" + short_description: + description: Base64-encoded short description. + example: Ruleset short description + type: string + version_id: + description: The version identifier for this revision. + example: 1 + format: int64 + type: integer + required: + - short_description + - description + - content + - globs + - directories + - execution_mode + - severity + - category + - is_published + - is_testing + type: object + AiCustomRuleRevisionRequestData: + description: Request data for creating an AI custom rule revision. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRuleRevisionRequestAttributes" + id: + description: The revision identifier. + example: revision-abc-123 + type: string + type: + $ref: "#/components/schemas/AiCustomRuleRevisionDataType" + type: object + AiCustomRuleRevisionResponse: + description: Response containing a single AI custom rule revision. + properties: + data: + $ref: "#/components/schemas/AiCustomRuleRevisionResponseData" + required: + - data + type: object + AiCustomRuleRevisionResponseAttributes: + description: Response attributes of an AI custom rule revision. + properties: + category: + $ref: "#/components/schemas/CustomRuleRevisionAttributesCategory" + checksum: + description: Checksum of the revision content. + example: abc123def456 + type: string + content: + description: Base64-encoded AI model content for this revision. + example: Content + type: string + created_at: + description: The creation timestamp. + example: "2024-01-01T00:00:00+00:00" + format: date-time + type: string + created_by: + description: The identifier of the user who created the revision. + example: example-handle + type: string + cwe: + description: The associated CWE identifier. + example: "79" + nullable: true + type: string + description: + description: Base64-encoded full description. + example: Ruleset description + type: string + directories: + description: Directory patterns this rule applies to. + example: [] + items: + type: string + type: array + execution_mode: + $ref: "#/components/schemas/AiCustomRuleRevisionExecutionMode" + globs: + description: File glob patterns this rule applies to. + example: + - "**/*.py" + items: + type: string + type: array + is_default: + description: Whether this is a default Datadog rule. + example: false + type: boolean + is_published: + description: Whether this revision is published. + example: false + type: boolean + is_testing: + description: Whether this revision is for testing only. + example: false + type: boolean + severity: + $ref: "#/components/schemas/CustomRuleRevisionAttributesSeverity" + short_description: + description: Base64-encoded short description. + example: Ruleset short description + type: string + version_id: + description: The version identifier for this revision. + example: 1 + format: int64 + type: integer + required: + - version_id + - short_description + - description + - content + - globs + - directories + - execution_mode + - cwe + - checksum + - created_at + - created_by + - severity + - category + - is_published + - is_testing + - is_default + type: object + AiCustomRuleRevisionResponseData: + description: Response data for an AI custom rule revision. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRuleRevisionResponseAttributes" + id: + description: The revision identifier. + example: revision-abc-123 + type: string + type: + $ref: "#/components/schemas/AiCustomRuleRevisionDataType" + required: + - id + - type + - attributes + type: object + AiCustomRuleRevisionsResponse: + description: Response containing a list of AI custom rule revisions. + properties: + data: + description: The list of AI custom rule revisions. + items: + $ref: "#/components/schemas/AiCustomRuleRevisionResponseData" + type: array + required: + - data + type: object + AiCustomRulesetDataType: + description: AI custom ruleset resource type. + enum: [ai_ruleset] + example: ai_ruleset + type: string + x-enum-varnames: + - AI_RULESET + AiCustomRulesetRequest: + description: Request body for creating an AI custom ruleset. + properties: + data: + $ref: "#/components/schemas/AiCustomRulesetRequestData" + type: object + AiCustomRulesetRequestAttributes: + description: Attributes for creating an AI custom ruleset. + properties: + description: + description: Base64-encoded full description of the ruleset. + example: Ruleset description + type: string + name: + description: The ruleset name. + example: my-ai-ruleset + type: string + short_description: + description: Base64-encoded short description of the ruleset. + example: Ruleset short description + type: string + required: + - name + - short_description + - description + type: object + AiCustomRulesetRequestData: + description: Request data for creating an AI custom ruleset. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRulesetRequestAttributes" + id: + description: The ruleset identifier, which must match the name. + example: my-ai-ruleset + type: string + type: + $ref: "#/components/schemas/AiCustomRulesetDataType" + type: object + AiCustomRulesetResponse: + description: Response containing a single AI custom ruleset. + properties: + data: + $ref: "#/components/schemas/AiCustomRulesetResponseData" + required: + - data + type: object + AiCustomRulesetResponseAttributes: + description: Response attributes of an AI custom ruleset. + properties: + created_at: + description: The creation timestamp. + example: "2024-01-01T00:00:00+00:00" + format: date-time + type: string + created_by: + description: The identifier of the user who created the ruleset. + example: example-handle + type: string + description: + description: Base64-encoded full description of the ruleset. + example: Ruleset description + type: string + name: + description: The ruleset name. + example: my-ai-ruleset + type: string + rules: + description: The rules contained in the ruleset. + items: + $ref: "#/components/schemas/AiCustomRuleItem" + nullable: true + type: array + short_description: + description: Base64-encoded short description of the ruleset. + example: Ruleset short description + type: string + required: + - name + - short_description + - description + - created_at + - created_by + - rules + type: object + AiCustomRulesetResponseData: + description: Response data for an AI custom ruleset. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRulesetResponseAttributes" + id: + description: The ruleset identifier. + example: my-ai-ruleset + type: string + type: + $ref: "#/components/schemas/AiCustomRulesetDataType" + required: + - id + - type + - attributes + type: object + AiCustomRulesetUpdateAttributes: + description: Attributes for updating an AI custom ruleset. + properties: + description: + description: Base64-encoded full description of the ruleset. + example: Ruleset description + type: string + name: + description: The ruleset name. + example: my-ai-ruleset + type: string + short_description: + description: Base64-encoded short description of the ruleset. + example: Ruleset short description + type: string + type: object + AiCustomRulesetUpdateData: + description: Request data for updating an AI custom ruleset. + properties: + attributes: + $ref: "#/components/schemas/AiCustomRulesetUpdateAttributes" + id: + description: The ruleset identifier. + example: my-ai-ruleset + type: string + type: + $ref: "#/components/schemas/AiCustomRulesetDataType" + type: object + AiCustomRulesetUpdateRequest: + description: Request body for updating an AI custom ruleset. + properties: + data: + $ref: "#/components/schemas/AiCustomRulesetUpdateData" + type: object + AiCustomRulesetsResponse: + description: Response containing a list of AI custom rulesets. + properties: + data: + description: The list of AI custom rulesets. + items: + $ref: "#/components/schemas/AiCustomRulesetResponseData" + type: array + required: + - data + type: object + AiMemoryViolationResultDataType: + description: AI memory violation result resource type. + enum: [ai_memory_violation_result] + example: ai_memory_violation_result + type: string + x-enum-varnames: + - AI_MEMORY_VIOLATION_RESULT + AiMemoryViolationResultRequest: + description: Request body for creating an AI memory violation result. + properties: + data: + $ref: "#/components/schemas/AiMemoryViolationResultRequestData" + type: object + AiMemoryViolationResultRequestAttributes: + description: Attributes for creating an AI memory violation result. + properties: + line: + description: The line number where the violation was found. + example: 10 + format: int64 + type: integer + message: + description: A message explaining the violation result. + example: This is a false positive because the input is sanitized. + type: string + name: + description: The file path where the violation was found. + example: src/main.py + type: string + repository_id: + description: The repository identifier. + example: my-repo + type: string + rule: + description: The rule identifier in the format ruleset/rule. + example: my-ai-ruleset/my-ai-rule + type: string + sha: + description: The git commit SHA where the violation was found. + example: abc123def456789012345678901234567890abcd + type: string + type: + $ref: "#/components/schemas/AiMemoryViolationType" + required: + - rule + - repository_id + - sha + - name + - line + - type + - message + type: object + AiMemoryViolationResultRequestData: + description: Request data for creating an AI memory violation result. + properties: + attributes: + $ref: "#/components/schemas/AiMemoryViolationResultRequestAttributes" + id: + description: The violation result identifier. + example: violation-abc + type: string + type: + $ref: "#/components/schemas/AiMemoryViolationResultDataType" + type: object + AiMemoryViolationResultResponseAttributes: + description: Response attributes of an AI memory violation result. + properties: + created_at: + description: The creation timestamp. + example: "2024-01-01T00:00:00+00:00" + format: date-time + type: string + created_by: + description: The identifier of the user who created the result. + example: example-handle + type: string + line: + description: The line number where the violation was found. + example: 10 + format: int64 + type: integer + message: + description: A message explaining the violation result. + example: This is a false positive because the input is sanitized. + type: string + name: + description: The file path where the violation was found. + example: src/main.py + type: string + repository_id: + description: The repository identifier. + example: my-repo + type: string + rule: + description: The rule identifier in the format ruleset/rule. + example: my-ai-ruleset/my-ai-rule + type: string + sha: + description: The git commit SHA where the violation was found. + example: abc123def456789012345678901234567890abcd + type: string + type: + $ref: "#/components/schemas/AiMemoryViolationType" + required: + - rule + - repository_id + - sha + - name + - line + - created_at + - created_by + - type + - message + type: object + AiMemoryViolationResultResponseData: + description: Response data for an AI memory violation result. + properties: + attributes: + $ref: "#/components/schemas/AiMemoryViolationResultResponseAttributes" + id: + description: The numeric identifier of the violation result. + example: "42" + type: string + type: + $ref: "#/components/schemas/AiMemoryViolationResultDataType" + required: + - id + - type + - attributes + type: object + AiMemoryViolationResultsResponse: + description: Response containing a list of AI memory violation results. + properties: + data: + description: The list of AI memory violation results. + items: + $ref: "#/components/schemas/AiMemoryViolationResultResponseData" + type: array + required: + - data + type: object + AiMemoryViolationType: + description: The type of AI memory violation result indicating whether it is a true positive or false positive. + enum: [TP, FP] + example: FP + type: string + x-enum-varnames: + - TP + - FP + AiPromptDataType: + description: AI prompt resource type. + enum: [ai_prompt] + example: ai_prompt + type: string + x-enum-varnames: + - AI_PROMPT + AiPromptResponseAttributes: + description: Response attributes of an AI prompt. + properties: + category: + $ref: "#/components/schemas/CustomRuleRevisionAttributesCategory" + checksum: + description: Checksum of the prompt content. + example: abc123 + type: string + content: + description: Base64-encoded AI prompt content. + example: Content + type: string + cwe: + description: The CWE identifier associated with this prompt. + example: "79" + type: string + description: + description: Base64-encoded full description. + example: Ruleset description + type: string + directories: + description: Directory patterns this prompt applies to. + example: [] + items: + type: string + type: array + execution_mode: + $ref: "#/components/schemas/AiCustomRuleRevisionExecutionMode" + file_search_keywords: + description: Keywords used to search for relevant files. + example: + - import + items: + type: string + type: array + globs: + description: File glob patterns this prompt applies to. + example: + - "**/*.py" + items: + type: string + type: array + is_default: + description: Whether this is a default Datadog prompt. + example: false + type: boolean + is_testing: + description: Whether this prompt is for testing only. + example: false + type: boolean + language: + $ref: "#/components/schemas/Language" + result_keywords_exclude: + description: Keywords to exclude from results. + example: [] + items: + type: string + type: array + rule_version: + description: The version of the rule this prompt is associated with. + example: "1" + type: string + severity: + $ref: "#/components/schemas/CustomRuleRevisionAttributesSeverity" + short_description: + description: Base64-encoded short description. + example: Ruleset short description + type: string + required: + - rule_version + - globs + - short_description + - description + - severity + - category + - file_search_keywords + - result_keywords_exclude + - content + - checksum + - execution_mode + - directories + - is_testing + - is_default + type: object + AiPromptResponseData: + description: Response data for an AI prompt. + properties: + attributes: + $ref: "#/components/schemas/AiPromptResponseAttributes" + id: + description: The prompt identifier. + example: my-ai-ruleset/my-ai-rule + type: string + type: + $ref: "#/components/schemas/AiPromptDataType" + required: + - id + - type + - attributes + type: object + AiPromptsResponse: + description: Response containing a list of AI prompts. + properties: + data: + description: The list of AI prompts. + items: + $ref: "#/components/schemas/AiPromptResponseData" + type: array + required: + - data + type: object + AlertEventAttributes: + description: Alert event attributes. + properties: + aggregation_key: + $ref: "#/components/schemas/V2EventAggregationKey" + custom: + description: JSON object of custom attributes. + example: {} + type: object + evt: + $ref: "#/components/schemas/EventSystemAttributes" + links: + description: The links related to the event. + example: [{"category": "runbook", "title": "Runbook Link", "url": "https://app.datadoghq.com/runbook"}] + items: + $ref: "#/components/schemas/AlertEventAttributesLinksItem" + type: array + priority: + $ref: "#/components/schemas/AlertEventAttributesPriority" + service: + $ref: "#/components/schemas/V2EventService" + status: + $ref: "#/components/schemas/AlertEventAttributesStatus" + timestamp: + $ref: "#/components/schemas/V2EventTimestamp" + title: + $ref: "#/components/schemas/V2EventTitle" + type: object + AlertEventAttributesLinksItem: + description: A link. + properties: + category: + $ref: "#/components/schemas/AlertEventAttributesLinksItemCategory" + title: + description: |- + The display text of the link. + type: string + url: + description: |- + The URL of the link. + type: string + type: object + AlertEventAttributesLinksItemCategory: + description: |- + The category of the link. + enum: + - runbook + - documentation + - dashboard + type: string + x-enum-varnames: + - RUNBOOK + - DOCUMENTATION + - DASHBOARD + AlertEventAttributesPriority: + description: The priority of the alert. + enum: + - "1" + - "2" + - "3" + - "4" + - "5" + example: "5" + type: string + x-enum-varnames: + - PRIORITY_ONE + - PRIORITY_TWO + - PRIORITY_THREE + - PRIORITY_FOUR + - PRIORITY_FIVE + AlertEventAttributesStatus: + description: The status of the alert. + enum: + - warn + - error + - ok + example: "error" + type: string + x-enum-varnames: + - WARN + - ERROR + - OK + AlertEventCustomAttributes: + additionalProperties: false + description: |- + Alert event attributes. + properties: + custom: + $ref: "#/components/schemas/AlertEventCustomAttributesCustom" + links: + $ref: "#/components/schemas/AlertEventCustomAttributesLinks" + priority: + $ref: "#/components/schemas/AlertEventCustomAttributesPriority" + status: + $ref: "#/components/schemas/AlertEventCustomAttributesStatus" + required: + - status + type: object + AlertEventCustomAttributesCustom: + additionalProperties: {} + description: |- + Free form JSON object for arbitrary data. Supports up to 100 properties per object and a maximum nesting depth of 10 levels. + example: {} + type: object + AlertEventCustomAttributesLinks: + description: |- + The links related to the event. Maximum of 20 links allowed. + items: + $ref: "#/components/schemas/AlertEventCustomAttributesLinksItems" + maxItems: 20 + minItems: 1 + type: array + AlertEventCustomAttributesLinksItems: + additionalProperties: false + description: |- + A link. + properties: + category: + $ref: "#/components/schemas/AlertEventCustomAttributesLinksItemsCategory" + title: + description: |- + The display text of the link. Limited to 300 characters. + example: "Runbook Link" + maxLength: 300 + minLength: 1 + type: string + url: + description: |- + The URL of the link. Limited to 2048 characters. + example: "https://app.datadoghq.com/runbook" + maxLength: 2048 + minLength: 1 + type: string + required: + - url + - category + type: object + AlertEventCustomAttributesLinksItemsCategory: + description: |- + The category of the link. + enum: + - runbook + - documentation + - dashboard + - resource + example: "runbook" + type: string + x-enum-varnames: + - RUNBOOK + - DOCUMENTATION + - DASHBOARD + - RESOURCE + AlertEventCustomAttributesPriority: + default: "5" + description: |- + The priority of the alert. + enum: + - "1" + - "2" + - "3" + - "4" + - "5" + example: "5" + type: string + x-enum-varnames: + - PRIORITY_ONE + - PRIORITY_TWO + - PRIORITY_THREE + - PRIORITY_FOUR + - PRIORITY_FIVE + AlertEventCustomAttributesStatus: + description: |- + The status of the alert. + enum: + - warn + - error + - ok + example: "warn" + type: string + x-enum-varnames: + - WARN + - ERROR + - OK + Allocation: + description: Targeting rule (allocation) details for a feature flag environment. + properties: + created_at: + description: The timestamp when the targeting rule allocation was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + environment_ids: + description: Environment IDs associated with this targeting rule allocation. + example: + - "550e8400-e29b-41d4-a716-446655440001" + items: + description: Environment ID linked to this targeting rule allocation. + format: uuid + type: string + type: array + experiment_id: + description: The experiment ID linked to this targeting rule allocation. + example: "550e8400-e29b-41d4-a716-446655440030" + nullable: true + type: string + exposure_schedule: + $ref: "#/components/schemas/AllocationExposureSchedule" + guardrail_metrics: + description: Guardrail metrics associated with this targeting rule allocation. + items: + $ref: "#/components/schemas/GuardrailMetric" + type: array + id: + description: The unique identifier of the targeting rule allocation. + example: "550e8400-e29b-41d4-a716-446655440020" + format: uuid + type: string + key: + description: The unique key of the targeting rule allocation. + example: "prod-rollout" + type: string + name: + description: The display name of the targeting rule. + example: "Production Rollout" + type: string + order_position: + description: Sort order position within the environment. + example: 0 + format: int64 + type: integer + targeting_rules: + description: Conditions associated with this targeting rule allocation. + items: + $ref: "#/components/schemas/TargetingRule" + type: array + type: + $ref: "#/components/schemas/AllocationType" + updated_at: + description: The timestamp when the targeting rule allocation was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + variant_weights: + description: Weighted variant assignments for this targeting rule allocation. + items: + $ref: "#/components/schemas/VariantWeight" + type: array + required: + - name + - key + - targeting_rules + - variant_weights + - order_position + - environment_ids + - type + - guardrail_metrics + - created_at + - updated_at + type: object + AllocationDataRequest: + description: Data wrapper for allocation request payloads. + properties: + attributes: + $ref: "#/components/schemas/UpsertAllocationRequest" + type: + $ref: "#/components/schemas/AllocationDataType" + required: + - type + - attributes + type: object + AllocationDataResponse: + description: Data wrapper for targeting rule allocation responses. + properties: + attributes: + $ref: "#/components/schemas/Allocation" + id: + description: The unique identifier of the targeting rule allocation. + example: "550e8400-e29b-41d4-a716-446655440020" + format: uuid + type: string + type: + $ref: "#/components/schemas/AllocationDataType" + required: + - id + - type + - attributes + type: object + AllocationDataType: + description: The resource type. + enum: + - "allocations" + example: "allocations" + type: string + x-enum-varnames: + - ALLOCATIONS + AllocationExposureGuardrailTrigger: + description: Guardrail trigger details for a progressive rollout. + properties: + allocation_exposure_schedule_id: + description: The progressive rollout ID this trigger belongs to. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + created_at: + description: The timestamp when this trigger was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + flagging_variant_id: + description: The variant ID that triggered this event. + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + id: + description: The unique identifier of the guardrail trigger. + example: "550e8400-e29b-41d4-a716-446655440080" + format: uuid + type: string + metric_id: + description: The metric ID associated with the trigger. + example: "metric-error-rate" + type: string + triggered_action: + description: The action that was triggered. + example: "PAUSE" + type: string + updated_at: + description: The timestamp when this trigger was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + required: + - id + - allocation_exposure_schedule_id + - flagging_variant_id + - metric_id + - triggered_action + - created_at + - updated_at + type: object + AllocationExposureRolloutStep: + description: Exposure progression step details. + properties: + allocation_exposure_schedule_id: + description: The progressive rollout ID this step belongs to. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + created_at: + description: The timestamp when the progression step was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + exposure_ratio: + description: The exposure ratio for this step. + example: 0.1 + format: double + maximum: 1 + minimum: 0 + type: number + grouped_step_index: + description: Logical index grouping related steps. + example: 0 + format: int64 + minimum: 0 + type: integer + id: + description: The unique identifier of the progression step. + example: "550e8400-e29b-41d4-a716-446655440040" + format: uuid + type: string + interval_ms: + description: Step duration in milliseconds. + example: 3600000 + format: int64 + nullable: true + type: integer + is_pause_record: + description: Whether this step represents a pause record. + example: false + type: boolean + order_position: + description: Sort order for the progression step. + example: 0 + format: int64 + type: integer + updated_at: + description: The timestamp when the progression step was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + required: + - id + - allocation_exposure_schedule_id + - order_position + - exposure_ratio + - is_pause_record + - grouped_step_index + - created_at + - updated_at + type: object + AllocationExposureSchedule: + description: Progressive release details for a targeting rule allocation. + properties: + absolute_start_time: + description: The absolute UTC start time for this schedule. + example: "2025-06-13T12:00:00Z" + format: date-time + nullable: true + type: string + allocation_id: + description: The targeting rule allocation ID this progressive rollout belongs to. + example: "550e8400-e29b-41d4-a716-446655440020" + format: uuid + type: string + control_variant_id: + description: The control variant ID used for experiment comparisons. + example: "550e8400-e29b-41d4-a716-446655440012" + nullable: true + type: string + created_at: + description: The timestamp when the schedule was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + guardrail_triggered_action: + description: Last guardrail action triggered for this schedule. + example: "PAUSE" + nullable: true + type: string + guardrail_triggers: + description: Guardrail trigger records for this schedule. + items: + $ref: "#/components/schemas/AllocationExposureGuardrailTrigger" + type: array + id: + description: The unique identifier of the progressive rollout. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + rollout_options: + $ref: "#/components/schemas/RolloutOptions" + rollout_steps: + description: Ordered progression steps for exposure. + items: + $ref: "#/components/schemas/AllocationExposureRolloutStep" + type: array + updated_at: + description: The timestamp when the schedule was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + required: + - allocation_id + - rollout_options + - rollout_steps + - guardrail_triggers + - created_at + - updated_at + type: object + AllocationExposureScheduleData: + description: Data wrapper for progressive rollout schedule responses. + properties: + attributes: + $ref: "#/components/schemas/AllocationExposureSchedule" + id: + description: The unique identifier of the progressive rollout. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + type: + $ref: "#/components/schemas/AllocationExposureScheduleDataType" + required: + - id + - type + - attributes + type: object + AllocationExposureScheduleDataType: + description: The resource type for progressive rollout schedules. + enum: + - "allocation_exposure_schedules" + example: "allocation_exposure_schedules" + type: string + x-enum-varnames: + - ALLOCATION_EXPOSURE_SCHEDULES + AllocationExposureScheduleResponse: + description: Response containing a progressive rollout schedule. + properties: + data: + $ref: "#/components/schemas/AllocationExposureScheduleData" + required: + - data + type: object + AllocationResponse: + description: Response containing a single targeting rule (allocation). + properties: + data: + $ref: "#/components/schemas/AllocationDataResponse" + required: + - data + type: object + AllocationType: + description: The type of targeting rule (called allocation in the API model). + enum: + - FEATURE_GATE + - CANARY + example: "FEATURE_GATE" + type: string + x-enum-varnames: + - FEATURE_GATE + - CANARY + AnalysisEdit: + description: A single edit operation within a fix suggestion for a rule violation. + properties: + content: + description: The content to insert or replace at the specified position, if applicable. + example: "safe_alternative()" + nullable: true + type: string + edit_type: + $ref: "#/components/schemas/AnalysisEditType" + end: + $ref: "#/components/schemas/AnalysisPosition" + description: The end position of the edit, or null for pure insertions. + nullable: true + start: + $ref: "#/components/schemas/AnalysisPosition" + required: + - start + - end + - edit_type + - content + type: object + AnalysisEditType: + default: ADD + description: The type of code edit to apply when fixing a violation. + enum: + - ADD + - UPDATE + - REMOVE + example: ADD + type: string + x-enum-varnames: + - ADD + - UPDATE + - REMOVE + AnalysisFix: + description: A fix suggestion for a rule violation, consisting of one or more edit operations. + properties: + description: + description: A human-readable description of what the fix does. + example: Replace with a safe alternative. + type: string + edits: + description: The list of edit operations that constitute the fix. + items: + $ref: "#/components/schemas/AnalysisEdit" + type: array + required: + - description + - edits + type: object + AnalysisPosition: + description: A position in source code, identified by line and column numbers. + properties: + col: + description: The column number in the source file (1-based). + example: 5 + format: int64 + type: integer + line: + description: The line number in the source file (1-based). + example: 10 + format: int64 + type: integer + required: + - line + - col + type: object + AnalysisRequest: + description: The request payload for running static analysis on source code. + properties: + data: + $ref: "#/components/schemas/AnalysisRequestData" + required: + - data + type: object + AnalysisRequestData: + description: The primary data object in the analysis request. + properties: + attributes: + $ref: "#/components/schemas/AnalysisRequestDataAttributes" + id: + description: An optional identifier for the analysis request resource. + type: string + type: + $ref: "#/components/schemas/AnalysisRequestDataType" + required: + - type + - attributes + type: object + AnalysisRequestDataAttributes: + description: The attributes of the analysis request, containing the source code and rules to apply. + properties: + code: + description: The base64-encoded source code to analyze. + example: aW1wb3J0IHN5cw== + type: string + file_encoding: + description: The encoding of the source code file (must be `utf-8`). + example: utf-8 + type: string + filename: + description: The name of the file being analyzed. + example: test.py + type: string + language: + description: The programming language of the source code. + example: python + type: string + rules: + description: The list of static analysis rules to apply during analysis. + items: + $ref: "#/components/schemas/AnalysisRequestRule" + type: array + required: + - code + - file_encoding + - filename + - language + - rules + type: object + AnalysisRequestDataType: + default: analysis_request + description: Analysis request resource type. + enum: + - analysis_request + example: analysis_request + type: string + x-enum-varnames: + - ANALYSIS_REQUEST + AnalysisRequestRule: + description: A static analysis rule to apply during code analysis. + properties: + category: + description: The category of the rule (for example, `BEST_PRACTICES`, `SECURITY`). + example: BEST_PRACTICES + type: string + checksum: + description: A checksum of the rule definition. + example: abc123def456 + type: string + code: + description: The base64-encoded rule implementation code. + example: ZnVuY3Rpb24gdmlzaXQobm9kZSkge30= + type: string + entity_checked: + description: The code entity type checked by the rule, applicable when rule type is `AST_CHECK`. + nullable: true + type: string + id: + description: The unique identifier of the rule. + example: python-best-practices/no-exit + type: string + language: + description: The programming language this rule targets. + example: python + type: string + regex: + description: A base64-encoded regex pattern used by the rule, applicable when rule type is `REGEX`. + nullable: true + type: string + severity: + description: The severity of findings from this rule (for example, `ERROR`, `WARNING`). + example: WARNING + type: string + tree_sitter_query: + description: The base64-encoded tree-sitter query used by the rule. + example: KGNhbGwgbmFtZTogKGF0dHJpYnV0ZSkpQHZhbA== + type: string + type: + description: The rule type indicating the detection mechanism (for example, `TREE_SITTER_QUERY`). + example: TREE_SITTER_QUERY + type: string + required: + - id + - category + - checksum + - language + - severity + - tree_sitter_query + - type + - code + type: object + AnalysisResponse: + description: The response payload from running static analysis on source code. + properties: + data: + $ref: "#/components/schemas/AnalysisResponseData" + required: + - data + type: object + AnalysisResponseData: + description: The primary data object in the analysis response. + properties: + attributes: + $ref: "#/components/schemas/AnalysisResponseDataAttributes" + id: + description: The unique identifier of the analysis response resource. + example: abc-123 + type: string + type: + $ref: "#/components/schemas/AnalysisResponseDataType" + required: + - id + - type + - attributes + type: object + AnalysisResponseDataAttributes: + description: The attributes of the analysis response, containing rule results and any top-level errors. + properties: + errors: + description: Top-level error messages encountered during the analysis operation. + example: [] + items: + type: string + type: array + rule_responses: + description: The list of results for each static analysis rule applied during analysis. + items: + $ref: "#/components/schemas/AnalysisRuleResponse" + type: array + required: + - rule_responses + - errors + type: object + AnalysisResponseDataType: + default: server_request + description: Analysis response resource type. + enum: + - server_request + example: server_request + type: string + x-enum-varnames: + - SERVER_REQUEST + AnalysisRuleResponse: + description: The result of applying a single static analysis rule to the analyzed source code. + properties: + errors: + description: A list of error messages encountered while executing the rule. + example: [] + items: + type: string + type: array + execution_error: + description: An error message if the rule execution failed, or null if execution succeeded. + example: + nullable: true + type: string + execution_time_ms: + description: The time taken to execute the rule, in milliseconds. + example: 42 + format: int64 + type: integer + identifier: + description: The identifier of the rule that produced this response. + example: python-best-practices/no-exit + type: string + output: + description: The raw output produced by the rule engine during execution. + example: "" + type: string + violations: + description: The list of violations found by this rule. + items: + $ref: "#/components/schemas/AnalysisViolation" + type: array + required: + - errors + - execution_error + - execution_time_ms + - identifier + - output + - violations + type: object + AnalysisViolation: + description: A rule violation found in the analyzed source code. + properties: + category: + description: The category of the violation. + example: BEST_PRACTICES + type: string + end: + $ref: "#/components/schemas/AnalysisPosition" + fixes: + description: The list of suggested fixes for this violation. + items: + $ref: "#/components/schemas/AnalysisFix" + type: array + message: + description: A human-readable description of the violation. + example: Use of sys.exit() is discouraged. + type: string + severity: + description: The severity level of the violation. + example: WARNING + type: string + start: + $ref: "#/components/schemas/AnalysisPosition" + required: + - category + - severity + - message + - start + - end + - fixes + type: object + Annotation: + description: A text annotation displayed on the workflow canvas. + properties: + display: + $ref: "#/components/schemas/AnnotationDisplay" + id: + description: The unique identifier of this annotation within the workflow. + example: "" + minLength: 1 + type: string + markdownTextAnnotation: + $ref: "#/components/schemas/AnnotationMarkdownTextAnnotation" + required: + - id + - display + - markdownTextAnnotation + type: object + AnnotationAttributes: + description: Attributes of an annotation returned in a response. + properties: + author_id: + description: Identifier of the user who created the annotation. + example: "00000000-0000-0000-0000-000000000000" + type: string + color: + $ref: "#/components/schemas/AnnotationColor" + created_at: + description: Creation time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + description: + description: User-defined text attached to the annotation. + example: "Deployed v2.3.1 to production." + type: string + end_time: + description: End time of the annotation in milliseconds since the Unix epoch. Null for `pointInTime` annotations. + example: 1704070800000 + format: int64 + nullable: true + type: integer + modified_at: + description: Last modification time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + page_id: + description: |- + ID of the page the annotation belongs to, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: "dashboard:abc-def-xyz" + type: string + start_time: + description: Start time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + type: + $ref: "#/components/schemas/AnnotationKind" + widget_ids: + description: IDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page. + example: + - "1234567890" + items: + description: Widget ID. + type: string + type: array + required: + - page_id + - description + - author_id + - type + - color + - start_time + - end_time + - created_at + - modified_at + type: object + AnnotationColor: + description: Color used to render the annotation in the UI. + enum: + - gray + - blue + - purple + - green + - yellow + - red + example: blue + type: string + x-enum-varnames: + - GRAY + - BLUE + - PURPLE + - GREEN + - YELLOW + - RED + AnnotationCreateAttributes: + description: Attributes for creating or updating an annotation. + properties: + color: + $ref: "#/components/schemas/AnnotationColor" + description: + description: User-defined text attached to the annotation. + example: "Deployed v2.3.1 to production." + type: string + end_time: + description: End time of the annotation in milliseconds since the Unix epoch. Required for `timeRegion` annotations; omit or set to null for `pointInTime` annotations. + example: 1704070800000 + format: int64 + nullable: true + type: integer + page_id: + description: |- + ID of the page the annotation belongs to, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: "dashboard:abc-def-xyz" + type: string + start_time: + description: Start time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + type: + $ref: "#/components/schemas/AnnotationKind" + widget_ids: + description: IDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page. + example: + - "1234567890" + items: + description: Widget ID. + type: string + type: array + required: + - page_id + - description + - type + - color + - start_time + type: object + AnnotationCreateRequest: + description: Request body for creating an annotation. + properties: + data: + $ref: "#/components/schemas/AnnotationRequestData" + required: + - data + type: object + AnnotationData: + description: A single annotation resource. + properties: + attributes: + $ref: "#/components/schemas/AnnotationAttributes" + id: + description: Unique identifier of the annotation. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/AnnotationType" + required: + - id + - type + - attributes + type: object + AnnotationDisplay: + description: The annotation's position and size on the workflow canvas. + properties: + bounds: + $ref: "#/components/schemas/AnnotationDisplayBounds" + type: object + AnnotationDisplayBounds: + description: Canvas coordinates and dimensions for an annotation on the workflow canvas. + properties: + height: + description: The annotation's height on the canvas. + format: double + type: number + width: + description: The annotation's width on the canvas. + format: double + type: number + x: + description: The annotation's horizontal canvas coordinate. + format: double + type: number + y: + description: The annotation's vertical canvas coordinate. + format: double + type: number + type: object + AnnotationInPage: + description: A flat annotation object as it appears within a page annotations response. + properties: + author_id: + description: Identifier of the user who created the annotation. + example: "00000000-0000-0000-0000-000000000000" + type: string + color: + $ref: "#/components/schemas/AnnotationColor" + created_at: + description: Creation time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + description: + description: User-defined text attached to the annotation. + example: "Deployed v2.3.1 to production." + type: string + end_time: + description: End time of the annotation in milliseconds since the Unix epoch. Null for `pointInTime` annotations. + example: 1704070800000 + format: int64 + nullable: true + type: integer + id: + description: Unique identifier of the annotation. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + modified_at: + description: Last modification time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + page_id: + description: |- + ID of the page the annotation belongs to, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: "dashboard:abc-def-xyz" + type: string + start_time: + description: Start time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + type: + $ref: "#/components/schemas/AnnotationKind" + widget_ids: + description: IDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page. + example: + - "1234567890" + items: + description: Widget ID. + type: string + type: array + required: + - id + - page_id + - description + - author_id + - type + - color + - start_time + - end_time + - created_at + - modified_at + type: object + AnnotationKind: + description: |- + Kind of annotation. `pointInTime` annotations mark a single moment in time, + while `timeRegion` annotations span a window of time and require an `end_time`. + enum: + - pointInTime + - timeRegion + example: pointInTime + type: string + x-enum-varnames: + - POINT_IN_TIME + - TIME_REGION + AnnotationMarkdownTextAnnotation: + description: Markdown content displayed in an annotation. + properties: + text: + description: The annotation's Markdown content. + maxLength: 3000 + type: string + type: object + AnnotationRequestData: + description: Data for creating an annotation. + properties: + attributes: + $ref: "#/components/schemas/AnnotationCreateAttributes" + type: + $ref: "#/components/schemas/AnnotationType" + required: + - type + - attributes + type: object + AnnotationResponse: + description: Response containing a single annotation. + properties: + data: + $ref: "#/components/schemas/AnnotationData" + required: + - data + type: object + AnnotationType: + description: Annotation resource type. + enum: + - annotation + example: annotation + type: string + x-enum-varnames: + - ANNOTATION + AnnotationUpdateRequest: + description: Request body for updating an annotation. + properties: + data: + $ref: "#/components/schemas/AnnotationRequestData" + required: + - data + type: object + AnnotationsData: + description: List of annotation resources. + items: + $ref: "#/components/schemas/AnnotationData" + type: array + AnnotationsInPageMap: + additionalProperties: + $ref: "#/components/schemas/AnnotationInPage" + description: Map of annotation UUID to annotation object, keyed by annotation ID. + example: + "00000000-0000-0000-0000-000000000000": + author_id: "00000000-0000-0000-0000-000000000001" + color: blue + created_at: 1704067200000 + description: "Deployed v2.3.1 to production." + end_time: + id: "00000000-0000-0000-0000-000000000000" + modified_at: 1704067200000 + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + type: object + AnnotationsResponse: + description: Response containing a list of annotations. + properties: + data: + $ref: "#/components/schemas/AnnotationsData" + required: + - data + type: object + AnonymizeUserError: + description: Error encountered when anonymizing a specific user. + properties: + error: + description: Error message describing why anonymization failed. + example: "" + type: string + user_id: + description: UUID of the user that failed to be anonymized. + example: "00000000-0000-0000-0000-000000000000" + type: string + required: + - user_id + - error + type: object + AnonymizeUsersRequest: + description: Request body for anonymizing users. + properties: + data: + $ref: "#/components/schemas/AnonymizeUsersRequestData" + required: + - data + type: object + AnonymizeUsersRequestAttributes: + description: Attributes of an anonymize users request. + properties: + user_ids: + description: List of user IDs (UUIDs) to anonymize. + example: + - "00000000-0000-0000-0000-000000000000" + items: + example: "00000000-0000-0000-0000-000000000000" + type: string + type: array + required: + - user_ids + type: object + AnonymizeUsersRequestData: + description: Object to anonymize a list of users. + properties: + attributes: + $ref: "#/components/schemas/AnonymizeUsersRequestAttributes" + id: + description: Unique identifier for the request. Not used server-side. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/AnonymizeUsersRequestType" + required: + - type + - attributes + type: object + AnonymizeUsersRequestType: + default: anonymize_users_request + description: Type of the anonymize users request. + enum: + - anonymize_users_request + example: anonymize_users_request + type: string + x-enum-varnames: + - ANONYMIZE_USERS_REQUEST + AnonymizeUsersResponse: + description: Response containing the result of an anonymize users request. + properties: + data: + $ref: "#/components/schemas/AnonymizeUsersResponseData" + type: object + AnonymizeUsersResponseAttributes: + description: Attributes of an anonymize users response. + properties: + anonymize_errors: + description: List of errors encountered during anonymization, one entry per failed user. + items: + $ref: "#/components/schemas/AnonymizeUserError" + type: array + anonymized_user_ids: + description: List of user IDs (UUIDs) that were successfully anonymized. + example: + - "00000000-0000-0000-0000-000000000000" + items: + example: "00000000-0000-0000-0000-000000000000" + type: string + type: array + required: + - anonymized_user_ids + - anonymize_errors + type: object + AnonymizeUsersResponseData: + description: Response data for anonymizing users. + properties: + attributes: + $ref: "#/components/schemas/AnonymizeUsersResponseAttributes" + id: + description: Unique identifier of the response. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/AnonymizeUsersResponseType" + type: object + AnonymizeUsersResponseType: + default: anonymize_users_response + description: Type of the anonymize users response. + enum: + - anonymize_users_response + example: anonymize_users_response + type: string + x-enum-varnames: + - ANONYMIZE_USERS_RESPONSE + AnthropicAPIKey: + description: The definition of the `AnthropicAPIKey` object. + properties: + api_token: + description: The `AnthropicAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/AnthropicAPIKeyType" + required: + - type + - api_token + type: object + AnthropicAPIKeyType: + description: The definition of the `AnthropicAPIKey` object. + enum: + - AnthropicAPIKey + example: AnthropicAPIKey + type: string + x-enum-varnames: + - ANTHROPICAPIKEY + AnthropicAPIKeyUpdate: + description: The definition of the `AnthropicAPIKey` object. + properties: + api_token: + description: The `AnthropicAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/AnthropicAPIKeyType" + required: + - type + type: object + AnthropicCredentials: + description: The definition of the `AnthropicCredentials` object. + oneOf: + - $ref: "#/components/schemas/AnthropicAPIKey" + AnthropicCredentialsUpdate: + description: The definition of the `AnthropicCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/AnthropicAPIKeyUpdate" + AnthropicIntegration: + description: The definition of the `AnthropicIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/AnthropicCredentials" + type: + $ref: "#/components/schemas/AnthropicIntegrationType" + required: + - type + - credentials + type: object + AnthropicIntegrationType: + description: The definition of the `AnthropicIntegrationType` object. + enum: + - Anthropic + example: Anthropic + type: string + x-enum-varnames: + - ANTHROPIC + AnthropicIntegrationUpdate: + description: The definition of the `AnthropicIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/AnthropicCredentialsUpdate" + type: + $ref: "#/components/schemas/AnthropicIntegrationType" + required: + - type + type: object + AnyValue: + description: Represents any valid JSON value. + nullable: true + oneOf: + - $ref: "#/components/schemas/AnyValueString" + - $ref: "#/components/schemas/AnyValueNumber" + - $ref: "#/components/schemas/AnyValueObject" + - $ref: "#/components/schemas/AnyValueArray" + - $ref: "#/components/schemas/AnyValueBoolean" + type: object + AnyValueArray: + description: An array of arbitrary values. + items: + $ref: "#/components/schemas/AnyValueItem" + type: array + AnyValueBoolean: + description: A scalar boolean value. + type: boolean + AnyValueItem: + description: A single item in an array of arbitrary values, which can be a string, number, object, or boolean. + oneOf: + - $ref: "#/components/schemas/AnyValueString" + - $ref: "#/components/schemas/AnyValueNumber" + - $ref: "#/components/schemas/AnyValueObject" + - $ref: "#/components/schemas/AnyValueBoolean" + AnyValueNumber: + description: A scalar numeric value. + format: double + type: number + AnyValueObject: + additionalProperties: {} + description: An arbitrary object value with additional properties. + type: object + AnyValueString: + description: A scalar value represented as a string. + type: string + ApiID: + description: API identifier. + example: "90646597-5fdb-4a17-a240-647003f8c028" + format: uuid + type: string + ApmDependencyStatName: + description: The APM dependency statistic to query. + enum: + - avg_duration + - avg_root_duration + - avg_spans_per_trace + - error_rate + - pct_exec_time + - pct_of_traces + - total_traces_count + example: avg_duration + type: string + x-enum-varnames: + - AVG_DURATION + - AVG_ROOT_DURATION + - AVG_SPANS_PER_TRACE + - ERROR_RATE + - PCT_EXEC_TIME + - PCT_OF_TRACES + - TOTAL_TRACES_COUNT + ApmDependencyStatsDataSource: + default: apm_dependency_stats + description: A data source for APM dependency statistics queries. + enum: + - apm_dependency_stats + example: apm_dependency_stats + type: string + x-enum-varnames: + - APM_DEPENDENCY_STATS + ApmDependencyStatsQuery: + description: >- + A query for APM dependency statistics between services, such as call latency and error rates. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ApmDependencyStatsDataSource" + env: + description: The environment to query. + example: prod + type: string + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: true + type: boolean + name: + description: The variable name for use in formulas. + example: query1 + type: string + operation_name: + description: The APM operation name. + example: web.request + type: string + primary_tag_name: + description: The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + example: datacenter + type: string + primary_tag_value: + description: Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + example: us-east-1 + type: string + resource_name: + description: The resource name to filter by. + example: "GET /api/v2/users" + type: string + service: + description: The service name to filter by. + example: web-store + type: string + stat: + $ref: "#/components/schemas/ApmDependencyStatName" + required: + - data_source + - name + - env + - operation_name + - resource_name + - service + - stat + type: object + ApmMetricsDataSource: + default: apm_metrics + description: A data source for APM metrics queries. + enum: + - apm_metrics + example: apm_metrics + type: string + x-enum-varnames: + - APM_METRICS + ApmMetricsQuery: + description: >- + A query for APM trace metrics such as hits, errors, and latency percentiles, aggregated across services. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ApmMetricsDataSource" + group_by: + description: Optional fields to group the query results by. + items: + description: A field to group results by. + example: service + type: string + type: array + name: + description: The variable name for use in formulas. + example: query1 + type: string + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: "primary" + type: string + operation_name: + description: Name of operation on service. If not provided, the primary operation name is used. + example: web.request + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: A peer tag value. + example: "peer.service:my-service" + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (for example, env, primary_tag). + example: "env:prod" + type: string + resource_hash: + description: The resource hash for exact matching. + example: "abc123" + type: string + resource_name: + description: The full name of a specific resource to filter by. + example: "GET /api/v1/users" + type: string + service: + description: The service name to filter by. + example: web-store + type: string + span_kind: + $ref: "#/components/schemas/ApmMetricsSpanKind" + stat: + $ref: "#/components/schemas/ApmMetricsStat" + required: + - data_source + - name + - stat + type: object + ApmMetricsSpanKind: + description: Describes the relationship between the span, its parents, and its children in a trace. + enum: + - consumer + - server + - client + - producer + - internal + example: server + type: string + x-enum-varnames: + - CONSUMER + - SERVER + - CLIENT + - PRODUCER + - INTERNAL + ApmMetricsStat: + description: The APM metric statistic to query. + enum: + - error_rate + - errors + - errors_per_second + - hits + - hits_per_second + - apdex + - latency_avg + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + - latency_p999 + - latency_distribution + - total_time + example: latency_p99 + type: string + x-enum-varnames: + - ERROR_RATE + - ERRORS + - ERRORS_PER_SECOND + - HITS + - HITS_PER_SECOND + - APDEX + - LATENCY_AVG + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + - LATENCY_P999 + - LATENCY_DISTRIBUTION + - TOTAL_TIME + ApmResourceStatName: + description: The APM resource statistic to query. + enum: + - error_rate + - errors + - hits + - latency_avg + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + - latency_distribution + - total_time + example: latency_p95 + type: string + x-enum-varnames: + - ERROR_RATE + - ERRORS + - HITS + - LATENCY_AVG + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + - LATENCY_DISTRIBUTION + - TOTAL_TIME + ApmResourceStatsDataSource: + default: apm_resource_stats + description: A data source for APM resource statistics queries. + enum: + - apm_resource_stats + example: apm_resource_stats + type: string + x-enum-varnames: + - APM_RESOURCE_STATS + ApmResourceStatsQuery: + description: >- + A query for APM resource statistics such as latency, error rate, and hit count, grouped by resource name. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ApmResourceStatsDataSource" + env: + description: The environment to query. + example: prod + type: string + group_by: + description: Tag keys to group results by. + items: + description: A tag key to group by. + example: resource_name + type: string + type: array + name: + description: The variable name for use in formulas. + example: query1 + type: string + operation_name: + description: The APM operation name. + example: web.request + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: datacenter + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: us-east-1 + type: string + resource_name: + description: The resource name to filter by. + example: "Admin::ProductsController#create" + type: string + service: + description: The service name to filter by. + example: web-store + type: string + stat: + $ref: "#/components/schemas/ApmResourceStatName" + required: + - data_source + - name + - env + - service + - stat + type: object + ApmRetentionFilterType: + default: apm_retention_filter + description: The type of the resource. + enum: + - apm_retention_filter + example: apm_retention_filter + type: string + x-enum-varnames: ["apm_retention_filter"] + AppBuilderEvent: + additionalProperties: {} + description: An event on a UI component that triggers a response or action in an app. + properties: + name: + $ref: "#/components/schemas/AppBuilderEventName" + type: + $ref: "#/components/schemas/AppBuilderEventType" + type: object + AppBuilderEventName: + description: "The triggering action for the event." + enum: + - pageChange + - tableRowClick + - _tableRowButtonClick + - change + - submit + - click + - toggleOpen + - close + - open + - executionFinished + example: click + type: string + x-enum-varnames: + - PAGECHANGE + - TABLEROWCLICK + - TABLEROWBUTTONCLICK + - CHANGE + - SUBMIT + - CLICK + - TOGGLEOPEN + - CLOSE + - OPEN + - EXECUTIONFINISHED + AppBuilderEventType: + description: The response to the event. + enum: + - custom + - setComponentState + - triggerQuery + - openModal + - closeModal + - openUrl + - downloadFile + - setStateVariableValue + example: triggerQuery + type: string + x-enum-varnames: + - CUSTOM + - SETCOMPONENTSTATE + - TRIGGERQUERY + - OPENMODAL + - CLOSEMODAL + - OPENURL + - DOWNLOADFILE + - SETSTATEVARIABLEVALUE + AppBuilderListTagsResponse: + description: The response for listing tags associated with apps. + properties: + data: + description: An array of tags. + items: + $ref: "#/components/schemas/TagData" + type: array + type: object + AppDefinitionType: + default: appDefinitions + description: The app definition type. + enum: + - appDefinitions + example: appDefinitions + type: string + x-enum-varnames: + - APPDEFINITIONS + AppDeploymentType: + default: deployment + description: The deployment type. + enum: + - deployment + example: deployment + type: string + x-enum-varnames: + - DEPLOYMENT + AppFavoriteType: + default: favorites + description: The favorite resource type. + enum: + - favorites + example: favorites + type: string + x-enum-varnames: + - FAVORITES + AppKeyRegistrationData: + description: Data related to the app key registration. + properties: + id: + description: The app key registration identifier + format: uuid + readOnly: true + type: string + type: + $ref: "#/components/schemas/AppKeyRegistrationDataType" + required: + - type + type: object + AppKeyRegistrationDataType: + description: The definition of `AppKeyRegistrationDataType` object. + enum: + - app_key_registration + example: app_key_registration + type: string + x-enum-varnames: + - APP_KEY_REGISTRATION + AppMeta: + description: Metadata of an app. + properties: + created_at: + description: Timestamp of when the app was created. + format: date-time + type: string + deleted_at: + description: Timestamp of when the app was deleted. + format: date-time + type: string + org_id: + description: The Datadog organization ID that owns the app. + format: int64 + type: integer + updated_at: + description: Timestamp of when the app was last updated. + format: date-time + type: string + updated_since_deployment: + description: Whether the app was updated since it was last published. Published apps are pinned to a specific version and do not automatically update when the app is updated. + type: boolean + user_id: + description: The ID of the user who created the app. + format: int64 + type: integer + user_name: + description: The name (or email address) of the user who created the app. + type: string + user_uuid: + description: The UUID of the user who created the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + version: + description: The version number of the app. This starts at 1 and increments with each update. + format: int64 + type: integer + type: object + AppProtectionLevel: + description: The publication protection level of the app. `approval_required` means changes must go through an approval workflow before being published. + enum: + - direct_publish + - approval_required + example: direct_publish + type: string + x-enum-varnames: + - DIRECT_PUBLISH + - APPROVAL_REQUIRED + AppProtectionLevelType: + default: protectionLevel + description: The protection-level resource type. + enum: + - protectionLevel + example: protectionLevel + type: string + x-enum-varnames: + - PROTECTIONLEVEL + AppRelationship: + description: The app's publication relationship and custom connections. + properties: + connections: + description: Array of custom connections used by the app. + items: + $ref: "#/components/schemas/CustomConnection" + type: array + deployment: + $ref: "#/components/schemas/DeploymentRelationship" + type: object + AppSelfServiceType: + default: selfService + description: The self-service resource type. + enum: + - selfService + example: selfService + type: string + x-enum-varnames: + - SELFSERVICE + AppTagsType: + default: tags + description: The tags resource type. + enum: + - tags + example: tags + type: string + x-enum-varnames: + - TAGS + AppTriggerWrapper: + description: "Schema for an App-based trigger." + properties: + appTrigger: + description: "Trigger a workflow from an App." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - appTrigger + type: object + AppVersion: + description: A version of an app. + properties: + attributes: + $ref: "#/components/schemas/AppVersionAttributes" + id: + description: The ID of the app version. + example: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppVersionType" + type: object + AppVersionAttributes: + description: Attributes describing an app version. + properties: + app_id: + description: The ID of the app this version belongs to. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + created_at: + description: Timestamp of when the version was created. + format: date-time + type: string + has_ever_been_published: + description: Whether this version has ever been published. + example: true + type: boolean + name: + description: The optional human-readable name of the version. + example: v1.2.0 - bug fix release + type: string + updated_at: + description: Timestamp of when the version was last updated. + format: date-time + type: string + user_id: + description: The ID of the user who created the version. + format: int64 + type: integer + user_name: + description: The name (or email) of the user who created the version. + example: jane.doe@example.com + type: string + user_uuid: + description: The UUID of the user who created the version. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + version: + description: The version number of the app, starting at 1. + example: 3 + format: int64 + type: integer + type: object + AppVersionNameType: + default: versionNames + description: The version-name resource type. + enum: + - versionNames + example: versionNames + type: string + x-enum-varnames: + - VERSIONNAMES + AppVersionType: + default: appVersions + description: The app-version resource type. + enum: + - appVersions + example: appVersions + type: string + x-enum-varnames: + - APPVERSIONS + ApplicationKeyCreateAttributes: + description: Attributes used to create an application Key. + properties: + name: + description: Name of the application key. + example: "Application Key for managing dashboards" + type: string + scopes: + description: Array of scopes to grant the application key. + example: ["dashboards_read", "dashboards_write", "dashboards_public_share"] + items: + description: Name of scope. + type: string + nullable: true + type: array + required: + - name + type: object + ApplicationKeyCreateData: + description: Object used to create an application key. + properties: + attributes: + $ref: "#/components/schemas/ApplicationKeyCreateAttributes" + type: + $ref: "#/components/schemas/ApplicationKeysType" + required: + - attributes + - type + type: object + ApplicationKeyCreateRequest: + description: Request used to create an application key. + properties: + data: + $ref: "#/components/schemas/ApplicationKeyCreateData" + required: + - data + type: object + ApplicationKeyRelationships: + description: Resources related to the application key. + properties: + owned_by: + $ref: "#/components/schemas/RelationshipToUser" + type: object + ApplicationKeyResponse: + description: Response for retrieving an application key. + properties: + data: + $ref: "#/components/schemas/FullApplicationKey" + included: + description: Array of objects related to the application key. + items: + $ref: "#/components/schemas/ApplicationKeyResponseIncludedItem" + type: array + type: object + ApplicationKeyResponseIncludedItem: + description: An object related to an application key. + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/Role" + - $ref: "#/components/schemas/LeakedKey" + ApplicationKeyResponseMeta: + description: Additional information related to the application key response. + properties: + max_allowed_per_user: + description: Max allowed number of application keys per user. + format: int64 + type: integer + page: + $ref: "#/components/schemas/ApplicationKeyResponseMetaPage" + type: object + ApplicationKeyResponseMetaPage: + description: Additional information related to the application key response. + properties: + total_filtered_count: + description: Total filtered application key count. + format: int64 + type: integer + type: object + ApplicationKeyUpdateAttributes: + description: Attributes used to update an application Key. + properties: + name: + description: Name of the application key. + example: "Application Key for managing dashboards" + type: string + scopes: + description: Array of scopes to grant the application key. + example: ["dashboards_read", "dashboards_write", "dashboards_public_share"] + items: + description: Name of scope. + type: string + nullable: true + type: array + type: object + ApplicationKeyUpdateData: + description: Object used to update an application key. + properties: + attributes: + $ref: "#/components/schemas/ApplicationKeyUpdateAttributes" + id: + description: ID of the application key. + example: "00112233-4455-6677-8899-aabbccddeeff" + type: string + type: + $ref: "#/components/schemas/ApplicationKeysType" + required: + - attributes + - id + - type + type: object + ApplicationKeyUpdateRequest: + description: Request used to update an application key. + properties: + data: + $ref: "#/components/schemas/ApplicationKeyUpdateData" + required: + - data + type: object + ApplicationKeysSort: + default: name + description: Sorting options + enum: + - created_at + - -created_at + - last4 + - -last4 + - name + - -name + type: string + x-enum-varnames: + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - LAST4_ASCENDING + - LAST4_DESCENDING + - NAME_ASCENDING + - NAME_DESCENDING + ApplicationKeysType: + default: application_keys + description: Application Keys resource type. + enum: + - application_keys + example: application_keys + type: string + x-enum-varnames: + - APPLICATION_KEYS + ApplicationSecurityPolicyAttributes: + description: "A WAF policy." + properties: + description: + description: Description of the WAF policy. + example: "Policy applied to internal web applications." + type: string + isDefault: + description: |- + Make this policy the default policy. The default policy is applied to + every service not specifically assigned to another policy. + example: false + type: boolean + name: + description: The name of the WAF policy. + example: "Internal Network Policy" + type: string + protectionPresets: + description: Presets enabled on this policy. + items: + example: attack-tools + type: string + type: array + rules: + description: Rule overrides applied by the policy. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyRuleOverride" + type: array + rulesets: + deprecated: true + description: "Deprecated: Ruleset overrides. Use `protectionPresets` instead." + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyRulesetOverride" + type: array + scope: + description: The scope of the WAF policy. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyScope" + type: array + version: + default: 0 + description: Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value. + example: 0 + format: int64 + type: integer + required: + - name + - description + type: object + ApplicationSecurityPolicyCreateAttributes: + description: "Create a new WAF policy." + properties: + basedOn: + description: When creating a new policy, clone the policy indicated by this identifier. + example: recommended + type: string + description: + description: Description of the WAF policy. + example: "Policy applied to internal web applications." + type: string + isDefault: + description: |- + Make this policy the default policy. The default policy is applied to + every service not specifically assigned to another policy. + example: false + type: boolean + name: + description: The name of the WAF policy. + example: "Internal Network Policy" + type: string + protectionPresets: + description: Presets enabled on this policy. + items: + example: attack-tools + type: string + type: array + rules: + description: Rule overrides applied by the policy. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyRuleOverride" + type: array + rulesets: + deprecated: true + description: "Deprecated: Ruleset overrides. Use `protectionPresets` instead." + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyRulesetOverride" + type: array + scope: + description: The scope of the WAF policy. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyScope" + type: array + version: + default: 0 + description: Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value. + example: 0 + format: int64 + type: integer + required: + - name + - description + - basedOn + type: object + ApplicationSecurityPolicyCreateData: + description: Object for a single WAF policy. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityPolicyCreateAttributes" + type: + $ref: "#/components/schemas/ApplicationSecurityPolicyType" + required: + - attributes + - type + type: object + ApplicationSecurityPolicyCreateRequest: + description: Request object that includes the policy to create. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityPolicyCreateData" + required: + - data + type: object + ApplicationSecurityPolicyData: + description: Object for a single WAF policy. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityPolicyAttributes" + id: + description: "The ID of the policy." + example: "2857c47d-1e3a-4300-8b2f-dc24089c084b" + readOnly: true + type: string + meta: + $ref: "#/components/schemas/ApplicationSecurityPolicyMetadata" + type: + $ref: "#/components/schemas/ApplicationSecurityPolicyType" + type: object + ApplicationSecurityPolicyListResponse: + description: Response object that includes a list of WAF policies. + properties: + data: + description: The WAF policy data. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyData" + type: array + type: object + ApplicationSecurityPolicyMetadata: + description: Metadata associated with the WAF policy. + properties: + added_at: + description: The date and time the WAF policy was created. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + added_by: + description: The handle of the user who created the WAF policy. + example: "john.doe@datadoghq.com" + type: string + added_by_name: + description: The name of the user who created the WAF policy. + example: "John Doe" + type: string + modified_at: + description: The date and time the WAF policy was last updated. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + modified_by: + description: The handle of the user who last updated the WAF policy. + example: "john.doe@datadoghq.com" + type: string + modified_by_name: + description: The name of the user who last updated the WAF policy. + example: "John Doe" + type: string + readOnly: true + type: object + ApplicationSecurityPolicyResponse: + description: Response object that includes a single WAF policy. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityPolicyData" + type: object + ApplicationSecurityPolicyRuleOverride: + description: Override WAF rule parameters for services in a policy. + properties: + blocking: + description: When blocking is enabled, the rule will block the traffic matched by this rule. + example: false + type: boolean + enabled: + description: When false, this rule will not match any traffic. + example: true + type: boolean + extended_data_collection: + description: When true, collects additional data from the WAF for this rule. + example: false + type: boolean + id: + description: Override the parameters for this WAF rule identifier. + example: rasp-001-002 + type: string + required: + - id + - enabled + - blocking + type: object + ApplicationSecurityPolicyRulesetOverride: + deprecated: true + description: "Deprecated: Override WAF ruleset parameters. Use `protectionPresets` instead." + properties: + blocking: + description: When blocking is enabled, the ruleset will block the traffic it matches. + example: false + type: boolean + enabled: + description: When false, this ruleset will not match any traffic. + example: true + type: boolean + id: + description: The identifier of the ruleset to override. + example: attack_tool + type: string + required: + - id + - enabled + - blocking + type: object + ApplicationSecurityPolicyScope: + description: The scope of the WAF policy. + properties: + env: + description: The environment scope for the WAF policy. + example: "prod" + type: string + service: + description: The service scope for the WAF policy. + example: "billing-service" + type: string + required: + - service + - env + type: object + ApplicationSecurityPolicyType: + default: policy + description: The type of the resource. The value should always be `policy`. + enum: + - policy + example: policy + type: string + x-enum-varnames: + - POLICY + ApplicationSecurityPolicyUpdateAttributes: + description: "Update a WAF policy." + properties: + description: + description: Description of the WAF policy. + example: "Policy applied to internal web applications." + type: string + isDefault: + description: |- + Make this policy the default policy. The default policy is applied to + every service not specifically assigned to another policy. + example: false + type: boolean + name: + description: The name of the WAF policy. + example: "Internal Network Policy" + type: string + protectionPresets: + description: Presets enabled on this policy. + example: + - attack-tools + items: + example: attack-tools + type: string + type: array + rules: + description: Rule overrides applied by the policy. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyRuleOverride" + type: array + rulesets: + deprecated: true + description: "Deprecated: Ruleset overrides. Use `protectionPresets` instead." + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyRulesetOverride" + type: array + scope: + description: The scope of the WAF policy. + items: + $ref: "#/components/schemas/ApplicationSecurityPolicyScope" + type: array + version: + default: 0 + description: Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value. + example: 0 + format: int64 + type: integer + required: + - name + - description + - version + - isDefault + - rules + - protectionPresets + - scope + type: object + ApplicationSecurityPolicyUpdateData: + description: Object for a single WAF policy. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityPolicyUpdateAttributes" + type: + $ref: "#/components/schemas/ApplicationSecurityPolicyType" + required: + - attributes + - type + type: object + ApplicationSecurityPolicyUpdateRequest: + description: Request object that includes the policy to update. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityPolicyUpdateData" + required: + - data + type: object + ApplicationSecurityServiceAttributes: + description: Application Security details describing a service in a given environment. + properties: + agent_versions: + description: The Datadog Agent versions reporting for the service. + example: + - 7.50.0 + items: + description: A Datadog Agent version reporting for the service. + example: 7.50.0 + type: string + type: array + app_type: + description: The application type of the service, such as `web` or `serverless`. + example: web + type: string + asm_threat_compatible: + description: Whether the service is compatible with Application Security Management (Threats). + example: true + type: boolean + backend_waf_event_count: + description: The number of backend WAF events detected for the service. + example: 10 + format: int64 + type: integer + business_logic: + description: The enabled business logic detection rules for the service. + example: + - users.login.success + items: + description: A business logic detection rule enabled for the service. + example: users.login.success + type: string + type: array + color: + deprecated: true + description: "Deprecated: a display color associated with the service in the UI." + example: "" + type: string + env: + description: The environment the service runs in. + example: prod + type: string + event_count: + description: The number of Application Security events detected for the service. + example: 42 + format: int64 + type: integer + event_trend: + deprecated: true + description: "Deprecated: the trend of Application Security events over time." + example: + - 0 + items: + description: A point in the Application Security events trend. + example: 0 + format: int64 + type: integer + type: array + has_appsec_enabled: + description: Whether Application Security Management (Threats) is enabled for the service. + example: true + type: boolean + hits: + deprecated: true + description: "Deprecated: the number of hits for the service." + example: 0 + format: int64 + type: integer + iast_product_activation: + description: Whether Interactive Application Security Testing (IAST) is enabled for the service. + example: false + type: boolean + iast_product_compatibility: + description: The Interactive Application Security Testing (IAST) compatibility status of the service. + example: compatible + type: string + iast_product_compatibility_reasons: + description: The reasons explaining the Interactive Application Security Testing (IAST) compatibility status. + example: + - service_not_compatible + items: + description: A reason explaining the Interactive Application Security Testing (IAST) compatibility status. + example: service_not_compatible + type: string + type: array + languages: + description: The programming languages detected for the service. + example: + - go + items: + description: A programming language detected for the service. + example: go + type: string + type: array + last_ingested_spans: + description: The Unix timestamp, in seconds, of the last ingested span for the service. + example: 1610000000 + format: int64 + type: integer + rc_capabilities: + description: The Remote Configuration capabilities reported by the service. + example: + - ASM_DD_RULES + items: + description: A Remote Configuration capability reported by the service. + example: ASM_DD_RULES + type: string + type: array + recommended_business_logic: + description: The recommended business logic detection rules for the service. + example: + - users.login.success + items: + description: A recommended business logic detection rule for the service. + example: users.login.success + type: string + type: array + risk_product_activation: + description: Whether Software Composition Analysis (SCA) is enabled for the service. + example: false + type: boolean + risk_product_compatibility: + description: The Software Composition Analysis (SCA) compatibility status of the service. + example: compatible + type: string + risk_product_compatibility_reasons: + description: The reasons explaining the Software Composition Analysis (SCA) compatibility status. + example: + - service_not_compatible + items: + description: A reason explaining the Software Composition Analysis (SCA) compatibility status. + example: service_not_compatible + type: string + type: array + rules_version: + description: The WAF rules versions applied to the service. + example: + - 1.13.0 + items: + description: A WAF rules version applied to the service. + example: 1.13.0 + type: string + type: array + service: + description: The name of the service. + example: web-store + type: string + signal_count: + deprecated: true + description: "Deprecated: the number of security signals for the service." + example: 0 + format: int64 + type: integer + signal_trend: + deprecated: true + description: "Deprecated: the trend of security signals over time." + example: + - 0 + items: + description: A point in the security signals trend. + example: 0 + format: int64 + type: integer + type: array + source: + description: The data sources that contributed information about the service. + example: + - services-activity + items: + description: A data source that contributed information about the service. + example: services-activity + type: string + type: array + teams: + description: The teams that own the service. + example: + - security-team + items: + description: A team that owns the service. + example: security-team + type: string + type: array + tracer_versions: + description: The Datadog tracing library versions reporting for the service. + example: + - 1.60.0 + items: + description: A Datadog tracing library version reporting for the service. + example: 1.60.0 + type: string + type: array + vm-activation: + description: The Vulnerability Management activation status of the service. + example: enabled + type: string + vuln_critical_count: + deprecated: true + description: "Deprecated: the number of critical-severity vulnerabilities for the service." + example: 0 + format: int64 + type: integer + vuln_high_count: + deprecated: true + description: "Deprecated: the number of high-severity vulnerabilities for the service." + example: 0 + format: int64 + type: integer + without_filter_services: + description: The total number of services available without applying the service filter. + example: 0 + format: int64 + type: integer + required: + - service + - env + - app_type + - has_appsec_enabled + - asm_threat_compatible + - languages + - teams + - event_count + - backend_waf_event_count + - risk_product_activation + - risk_product_compatibility + - risk_product_compatibility_reasons + - iast_product_activation + - iast_product_compatibility + - iast_product_compatibility_reasons + - vm-activation + - agent_versions + - tracer_versions + - rules_version + - rc_capabilities + - source + - last_ingested_spans + - business_logic + - recommended_business_logic + - without_filter_services + - color + - event_trend + - signal_trend + - signal_count + - hits + - vuln_high_count + - vuln_critical_count + type: object + ApplicationSecurityServiceResource: + description: A JSON:API resource describing a service and its Application Security details. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityServiceAttributes" + id: + description: The unique identifier of the service, formatted as `_`. + example: web-store_prod + type: string + type: + $ref: "#/components/schemas/ApplicationSecurityServiceType" + required: + - id + - type + - attributes + type: object + ApplicationSecurityServiceType: + default: service_env + description: The type of the resource. The value should always be `service_env`. + enum: + - service_env + example: service_env + type: string + x-enum-varnames: + - SERVICE_ENV + ApplicationSecurityServicesMetadata: + description: Metadata returned alongside the list of services. + properties: + num_services_with_appsec: + description: The number of services with Application Security Management (Threats) enabled. + example: 1 + format: int64 + type: integer + required: + - num_services_with_appsec + type: object + ApplicationSecurityServicesResponse: + description: Response object containing the list of services matching the requested name. + properties: + data: + description: The list of services matching the requested name. + items: + $ref: "#/components/schemas/ApplicationSecurityServiceResource" + type: array + meta: + $ref: "#/components/schemas/ApplicationSecurityServicesMetadata" + required: + - data + - meta + type: object + ApplicationSecurityWafCustomRuleAction: + description: The definition of `ApplicationSecurityWafCustomRuleAction` object. + properties: + action: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleActionAction" + parameters: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleActionParameters" + type: object + ApplicationSecurityWafCustomRuleActionAction: + default: block_request + description: Override the default action to take when the WAF custom rule would block. + enum: + - redirect_request + - block_request + example: block_request + type: string + x-enum-varnames: + - REDIRECT_REQUEST + - BLOCK_REQUEST + ApplicationSecurityWafCustomRuleActionParameters: + description: The definition of `ApplicationSecurityWafCustomRuleActionParameters` object. + properties: + location: + description: The location to redirect to when the WAF custom rule triggers. + example: "/blocking" + type: string + status_code: + default: 403 + description: The status code to return when the WAF custom rule triggers. + example: 403 + format: int64 + type: integer + type: object + ApplicationSecurityWafCustomRuleAttributes: + description: "A WAF custom rule." + properties: + action: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleAction" + blocking: + description: Indicates whether the WAF custom rule will block the request. + example: false + type: boolean + conditions: + description: |- + Conditions for which the WAF Custom Rule will triggers, all conditions needs to match in order for the WAF + rule to trigger. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleCondition" + type: array + enabled: + description: Indicates whether the WAF custom rule is enabled. + example: false + type: boolean + metadata: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleMetadata" + name: + description: The name of the WAF custom rule. + example: "Block request from bad useragent" + type: string + path_glob: + description: The path glob for the WAF custom rule. + example: "/api/search/*" + type: string + scope: + description: The scope of the WAF custom rule. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleScope" + type: array + tags: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleTags" + required: + - enabled + - blocking + - name + - tags + - conditions + type: object + ApplicationSecurityWafCustomRuleCondition: + description: One condition of the WAF Custom Rule. + properties: + operator: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleConditionOperator" + parameters: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleConditionParameters" + required: + - operator + - parameters + type: object + ApplicationSecurityWafCustomRuleConditionInput: + description: Input from the request on which the condition should apply. + properties: + address: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleConditionInputAddress" + key_path: + description: Specific path for the input. + items: + description: A path segment for the input key. + type: string + type: array + required: + - address + type: object + ApplicationSecurityWafCustomRuleConditionInputAddress: + description: Input from the request on which the condition should apply. + enum: + - server.db.statement + - server.io.fs.file + - server.io.fs.file_write + - server.io.net.url + - server.sys.shell.cmd + - server.request.method + - server.request.uri.raw + - server.request.path_params + - server.request.query + - server.request.headers + - server.request.headers.no_cookies + - server.request.custom-auth + - server.request.cookies + - server.request.trailers + - server.request.body + - server.request.body.filenames + - server.request.body.files_content + - server.response.status + - server.response.headers.no_cookies + - server.response.trailers + - server.response.body + - grpc.server.request.metadata + - grpc.server.request.message + - grpc.server.method + - graphql.server.all_resolvers + - usr.id + - http.client_ip + - server.llm.event + - server.llm.guard.verdict + - _dd.appsec.fp.http.header + - _dd.appsec.fp.http.network + - _dd.appsec.fp.session + - _dd.appsec.fp.http.endpoint + example: server.db.statement + type: string + x-enum-varnames: + - SERVER_DB_STATEMENT + - SERVER_IO_FS_FILE + - SERVER_IO_FS_FILE_WRITE + - SERVER_IO_NET_URL + - SERVER_SYS_SHELL_CMD + - SERVER_REQUEST_METHOD + - SERVER_REQUEST_URI_RAW + - SERVER_REQUEST_PATH_PARAMS + - SERVER_REQUEST_QUERY + - SERVER_REQUEST_HEADERS + - SERVER_REQUEST_HEADERS_NO_COOKIES + - SERVER_REQUEST_CUSTOM_AUTH + - SERVER_REQUEST_COOKIES + - SERVER_REQUEST_TRAILERS + - SERVER_REQUEST_BODY + - SERVER_REQUEST_BODY_FILENAMES + - SERVER_REQUEST_BODY_FILES_CONTENT + - SERVER_RESPONSE_STATUS + - SERVER_RESPONSE_HEADERS_NO_COOKIES + - SERVER_RESPONSE_TRAILERS + - SERVER_RESPONSE_BODY + - GRPC_SERVER_REQUEST_METADATA + - GRPC_SERVER_REQUEST_MESSAGE + - GRPC_SERVER_METHOD + - GRAPHQL_SERVER_ALL_RESOLVERS + - USR_ID + - HTTP_CLIENT_IP + - SERVER_LLM_EVENT + - SERVER_LLM_GUARD_VERDICT + - DD_APPSEC_FP_HTTP_HEADER + - DD_APPSEC_FP_HTTP_NETWORK + - DD_APPSEC_FP_SESSION + - DD_APPSEC_FP_HTTP_ENDPOINT + ApplicationSecurityWafCustomRuleConditionOperator: + description: Operator to use for the WAF Condition. + enum: + - match_regex + - "!match_regex" + - phrase_match + - "!phrase_match" + - is_xss + - is_sqli + - exact_match + - "!exact_match" + - ip_match + - "!ip_match" + - capture_data + - exists + - "!exists" + - equals + - "!equals" + example: "match_regex" + type: string + x-enum-varnames: + - MATCH_REGEX + - NOT_MATCH_REGEX + - PHRASE_MATCH + - NOT_PHRASE_MATCH + - IS_XSS + - IS_SQLI + - EXACT_MATCH + - NOT_EXACT_MATCH + - IP_MATCH + - NOT_IP_MATCH + - CAPTURE_DATA + - EXISTS + - NOT_EXISTS + - EQUALS + - NOT_EQUALS + ApplicationSecurityWafCustomRuleConditionOptions: + description: Options for the operator of this condition. + properties: + case_sensitive: + default: false + description: Evaluate the value as case sensitive. + type: boolean + min_length: + default: 0 + description: Only evaluate this condition if the value has a minimum amount of characters. + format: int64 + type: integer + type: object + ApplicationSecurityWafCustomRuleConditionParameters: + description: The scope of the WAF custom rule. + properties: + data: + description: |- + Identifier of a list of data from the denylist. Can only be used as substitution from the list parameter. + example: "blocked_users" + type: string + inputs: + description: List of inputs on which at least one should match with the given operator. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleConditionInput" + type: array + list: + description: |- + List of value to use with the condition. Only used with the phrase_match, !phrase_match, exact_match and + !exact_match operator. + items: + description: A value to match against in the condition. + type: string + type: array + options: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleConditionOptions" + regex: + description: "Regex to use with the condition. Only used with match_regex and !match_regex operator." + example: "path.*" + type: string + type: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleConditionParametersType" + value: + description: |- + Store the captured value in the specified tag name. Only used with the capture_data operator. + example: custom_tag + type: string + required: + - inputs + type: object + ApplicationSecurityWafCustomRuleConditionParametersType: + description: The type of the value to compare against. Only used with the equals and !equals operator. + enum: + - boolean + - signed + - unsigned + - float + - string + example: "string" + type: string + x-enum-varnames: + - BOOLEAN + - SIGNED + - UNSIGNED + - FLOAT + - STRING + ApplicationSecurityWafCustomRuleCreateAttributes: + description: "Create a new WAF custom rule." + properties: + action: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleAction" + blocking: + description: Indicates whether the WAF custom rule will block the request. + example: false + type: boolean + conditions: + description: |- + Conditions for which the WAF Custom Rule will triggers, all conditions needs to match in order for the WAF + rule to trigger + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleCondition" + type: array + enabled: + description: Indicates whether the WAF custom rule is enabled. + example: false + type: boolean + name: + description: The name of the WAF custom rule. + example: "Block request from a bad useragent" + type: string + path_glob: + description: The path glob for the WAF custom rule. + example: "/api/search/*" + type: string + scope: + description: The scope of the WAF custom rule. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleScope" + type: array + tags: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleTags" + required: + - enabled + - blocking + - name + - tags + - conditions + type: object + ApplicationSecurityWafCustomRuleCreateData: + description: Object for a single WAF custom rule. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleCreateAttributes" + type: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleType" + required: + - attributes + - type + type: object + ApplicationSecurityWafCustomRuleCreateRequest: + description: Request object that includes the custom rule to create. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleCreateData" + required: + - data + type: object + ApplicationSecurityWafCustomRuleData: + description: Object for a single WAF custom rule. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleAttributes" + id: + description: "The ID of the custom rule." + example: "2857c47d-1e3a-4300-8b2f-dc24089c084b" + readOnly: true + type: string + type: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleType" + type: object + ApplicationSecurityWafCustomRuleListResponse: + description: Response object that includes a list of WAF custom rules. + properties: + data: + description: The WAF custom rule data. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleData" + type: array + type: object + ApplicationSecurityWafCustomRuleMetadata: + description: Metadata associated with the WAF Custom Rule. + properties: + added_at: + description: The date and time the WAF custom rule was created. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + added_by: + description: The handle of the user who created the WAF custom rule. + example: "john.doe@datadoghq.com" + type: string + added_by_name: + description: The name of the user who created the WAF custom rule. + example: "John Doe" + type: string + modified_at: + description: The date and time the WAF custom rule was last updated. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + modified_by: + description: The handle of the user who last updated the WAF custom rule. + example: "john.doe@datadoghq.com" + type: string + modified_by_name: + description: The name of the user who last updated the WAF custom rule. + example: "John Doe" + type: string + readOnly: true + type: object + ApplicationSecurityWafCustomRuleResponse: + description: Response object that includes a single WAF custom rule. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleData" + type: object + ApplicationSecurityWafCustomRuleScope: + description: The scope of the WAF custom rule. + properties: + env: + description: The environment scope for the WAF custom rule. + example: "prod" + type: string + service: + description: The service scope for the WAF custom rule. + example: "billing-service" + type: string + required: + - service + - env + type: object + ApplicationSecurityWafCustomRuleTags: + additionalProperties: + type: string + description: |- + Tags associated with the WAF Custom Rule. The concatenation of category and type will form the security + activity field associated with the traces. + maxProperties: 32 + properties: + category: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleTagsCategory" + type: + description: The type of the WAF rule, associated with the category will form the security activity. + example: "users.login.success" + type: string + required: + - category + - type + type: object + ApplicationSecurityWafCustomRuleTagsCategory: + description: The category of the WAF Rule, can be either `business_logic`, `attack_attempt` or `security_response`. + enum: + - attack_attempt + - business_logic + - security_response + example: "business_logic" + type: string + x-enum-varnames: + - ATTACK_ATTEMPT + - BUSINESS_LOGIC + - SECURITY_RESPONSE + ApplicationSecurityWafCustomRuleType: + default: custom_rule + description: The type of the resource. The value should always be `custom_rule`. + enum: + - custom_rule + example: custom_rule + type: string + x-enum-varnames: + - CUSTOM_RULE + ApplicationSecurityWafCustomRuleUpdateAttributes: + description: "Update a WAF custom rule." + properties: + action: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleAction" + blocking: + description: Indicates whether the WAF custom rule will block the request. + example: false + type: boolean + conditions: + description: |- + Conditions for which the WAF Custom Rule will triggers, all conditions needs to match in order for the WAF + rule to trigger. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleCondition" + type: array + enabled: + description: Indicates whether the WAF custom rule is enabled. + example: false + type: boolean + name: + description: The name of the WAF custom rule. + example: "Block request from bad useragent" + type: string + path_glob: + description: The path glob for the WAF custom rule. + example: "/api/search/*" + type: string + scope: + description: The scope of the WAF custom rule. + items: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleScope" + type: array + tags: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleTags" + required: + - enabled + - blocking + - name + - tags + - conditions + type: object + ApplicationSecurityWafCustomRuleUpdateData: + description: Object for a single WAF Custom Rule. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleUpdateAttributes" + type: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleType" + required: + - attributes + - type + type: object + ApplicationSecurityWafCustomRuleUpdateRequest: + description: Request object that includes the Custom Rule to update. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleUpdateData" + required: + - data + type: object + ApplicationSecurityWafExclusionFilterAttributes: + description: Attributes describing a WAF exclusion filter. + properties: + description: + description: A description for the exclusion filter. + example: "Exclude false positives on a path" + type: string + enabled: + description: Indicates whether the exclusion filter is enabled. + example: true + type: boolean + event_query: + description: The event query matched by the legacy exclusion filter. Cannot be created nor updated. + type: string + ip_list: + description: The client IP addresses matched by the exclusion filter (CIDR notation is supported). + items: + description: A single IP address to exclude. + example: "198.51.100.72" + type: string + type: array + metadata: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterMetadata" + on_match: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch" + parameters: + description: A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character. + items: + description: A request parameter name to exclude from the query string or request body. + example: "list.search.query" + type: string + type: array + path_glob: + description: The HTTP path glob expression matched by the exclusion filter. + example: "/accounts/*" + type: string + rules_target: + description: The WAF rules targeted by the exclusion filter. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget" + type: array + scope: + description: The services where the exclusion filter is deployed. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterScope" + type: array + search_query: + description: Generated event search query for traces matching the exclusion filter. + readOnly: true + type: string + type: object + ApplicationSecurityWafExclusionFilterCreateAttributes: + description: Attributes for creating a WAF exclusion filter. + properties: + description: + description: A description for the exclusion filter. + example: "Exclude false positives on a path" + type: string + enabled: + description: Indicates whether the exclusion filter is enabled. + example: true + type: boolean + ip_list: + description: The client IP addresses matched by the exclusion filter (CIDR notation is supported). + items: + description: A single IP address to exclude. + example: "198.51.100.72" + type: string + type: array + on_match: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch" + parameters: + description: A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character. + items: + description: A request parameter name to exclude from the query string or request body. + example: "list.search.query" + type: string + type: array + path_glob: + description: The HTTP path glob expression matched by the exclusion filter. + example: "/accounts/*" + type: string + rules_target: + description: The WAF rules targeted by the exclusion filter. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget" + type: array + scope: + description: The services where the exclusion filter is deployed. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterScope" + type: array + required: + - description + - enabled + type: object + ApplicationSecurityWafExclusionFilterCreateData: + description: Object for creating a single WAF exclusion filter. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterCreateAttributes" + type: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterType" + required: + - attributes + - type + type: object + ApplicationSecurityWafExclusionFilterCreateRequest: + description: Request object for creating a single WAF exclusion filter. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterCreateData" + required: + - data + type: object + ApplicationSecurityWafExclusionFilterID: + description: The identifier of the WAF exclusion filter. + example: "3dd-0uc-h1s" + readOnly: true + type: string + ApplicationSecurityWafExclusionFilterMetadata: + description: Extra information about the exclusion filter. + properties: + added_at: + description: The creation date of the exclusion filter. + format: date-time + type: string + added_by: + description: The handle of the user who created the exclusion filter. + type: string + added_by_name: + description: The name of the user who created the exclusion filter. + type: string + modified_at: + description: The last modification date of the exclusion filter. + format: date-time + type: string + modified_by: + description: The handle of the user who last modified the exclusion filter. + type: string + modified_by_name: + description: The name of the user who last modified the exclusion filter. + type: string + readOnly: true + type: object + ApplicationSecurityWafExclusionFilterOnMatch: + description: The action taken when the exclusion filter matches. When set to `monitor`, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked. + enum: + - monitor + type: string + x-enum-varnames: + - MONITOR + ApplicationSecurityWafExclusionFilterResource: + description: A JSON:API resource for an WAF exclusion filter. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterAttributes" + id: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterID" + type: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterType" + type: object + ApplicationSecurityWafExclusionFilterResponse: + description: Response object for a single WAF exclusion filter. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterResource" + type: object + ApplicationSecurityWafExclusionFilterRulesTarget: + description: Target WAF rules based either on an identifier or tags. + properties: + rule_id: + description: Target a single WAF rule based on its identifier. + example: dog-913-009 + type: string + tags: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTargetTags" + type: object + ApplicationSecurityWafExclusionFilterRulesTargetTags: + additionalProperties: + type: string + description: Target multiple WAF rules based on their tags. + properties: + category: + description: The category of the targeted WAF rules. + example: attack_attempt + type: string + type: + description: The type of the targeted WAF rules. + example: lfi + type: string + type: object + ApplicationSecurityWafExclusionFilterScope: + description: Deploy on services based on their environment and/or service name. + properties: + env: + description: Deploy on this environment. + example: www + type: string + service: + description: Deploy on this service. + example: prod + type: string + type: object + ApplicationSecurityWafExclusionFilterType: + default: exclusion_filter + description: Type of the resource. The value should always be `exclusion_filter`. + enum: + - exclusion_filter + example: exclusion_filter + type: string + x-enum-varnames: ["EXCLUSION_FILTER"] + ApplicationSecurityWafExclusionFilterUpdateAttributes: + description: Attributes for updating a WAF exclusion filter. + properties: + description: + description: A description for the exclusion filter. + example: "Exclude false positives on a path" + type: string + enabled: + description: Indicates whether the exclusion filter is enabled. + example: true + type: boolean + ip_list: + description: The client IP addresses matched by the exclusion filter (CIDR notation is supported). + items: + description: A single IP address to exclude. + example: "198.51.100.72" + type: string + type: array + on_match: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch" + parameters: + description: A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character. + items: + description: A parameter name matched by the exclusion filter in the HTTP query string or request body. + example: "list.search.query" + type: string + type: array + path_glob: + description: The HTTP path glob expression matched by the exclusion filter. + example: "/accounts/*" + type: string + rules_target: + description: The WAF rules targeted by the exclusion filter. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget" + type: array + scope: + description: The services where the exclusion filter is deployed. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterScope" + type: array + required: + - description + - enabled + type: object + ApplicationSecurityWafExclusionFilterUpdateData: + description: Object for updating a single WAF exclusion filter. + properties: + attributes: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateAttributes" + type: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterType" + required: + - attributes + - type + type: object + ApplicationSecurityWafExclusionFilterUpdateRequest: + description: Request object for updating a single WAF exclusion filter. + properties: + data: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateData" + required: + - data + type: object + ApplicationSecurityWafExclusionFiltersResponse: + description: Response object for multiple WAF exclusion filters. + properties: + data: + description: A list of WAF exclusion filters. + items: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterResource" + type: array + type: object + AppsSortField: + description: "The field and direction to sort apps by" + enum: + - name + - created_at + - updated_at + - user_name + - -name + - -created_at + - -updated_at + - -user_name + example: -created_at + type: string + x-enum-varnames: + - NAME + - CREATED_AT + - UPDATED_AT + - USER_NAME + - NAME_DESC + - CREATED_AT_DESC + - UPDATED_AT_DESC + - USER_NAME_DESC + ArbitraryCostUpsertRequest: + description: The definition of `ArbitraryCostUpsertRequest` object. + example: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + values: + - condition: in + tag: environment + value: "" + values: + - production + - staging + enabled: true + order_id: 1 + provider: + - aws + - gcp + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + values: + - condition: not in + tag: team + value: "" + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + type: upsert_arbitrary_rule + properties: + data: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestData" + type: object + ArbitraryCostUpsertRequestData: + description: The definition of `ArbitraryCostUpsertRequestData` object. + properties: + attributes: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributes" + id: + description: The `ArbitraryCostUpsertRequestData` `id`. + type: string + type: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataType" + required: + - type + type: object + ArbitraryCostUpsertRequestDataAttributes: + description: The definition of `ArbitraryCostUpsertRequestDataAttributes` object. + properties: + costs_to_allocate: + description: The `attributes` `costs_to_allocate`. + items: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesCostsToAllocateItems" + type: array + enabled: + description: The `attributes` `enabled`. + type: boolean + order_id: + description: The `attributes` `order_id`. + format: int64 + type: integer + provider: + description: The `attributes` `provider`. + example: + - "" + items: + description: A cloud provider name. + type: string + type: array + rejected: + description: The `attributes` `rejected`. + type: boolean + rule_name: + description: The `attributes` `rule_name`. + example: "" + type: string + strategy: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategy" + type: + description: The `attributes` `type`. + example: "" + type: string + required: + - costs_to_allocate + - provider + - rule_name + - strategy + - type + type: object + ArbitraryCostUpsertRequestDataAttributesCostsToAllocateItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesCostsToAllocateItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryCostUpsertRequestDataAttributesStrategy: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategy` object. + properties: + allocated_by: + description: The `strategy` `allocated_by`. + items: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItems" + type: array + allocated_by_filters: + description: The `strategy` `allocated_by_filters`. + items: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByFiltersItems" + type: array + allocated_by_tag_keys: + description: The `strategy` `allocated_by_tag_keys`. + items: + description: A tag key used to group cost allocations. + type: string + type: array + based_on_costs: + description: The `strategy` `based_on_costs`. + items: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyBasedOnCostsItems" + type: array + based_on_timeseries: + additionalProperties: {} + description: The `strategy` `based_on_timeseries`. + type: object + evaluate_grouped_by_filters: + description: The `strategy` `evaluate_grouped_by_filters`. + items: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyEvaluateGroupedByFiltersItems" + type: array + evaluate_grouped_by_tag_keys: + description: The `strategy` `evaluate_grouped_by_tag_keys`. + items: + description: A tag key used to group cost evaluation. + type: string + type: array + granularity: + description: The `strategy` `granularity`. + type: string + method: + description: The `strategy` `method`. + example: "" + type: string + required: + - method + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByFiltersItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItems` object. + properties: + allocated_tags: + description: The `items` `allocated_tags`. + items: + $ref: "#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItemsAllocatedTagsItems" + type: array + percentage: + description: The `items` `percentage`. The numeric value format should be a 32bit float value. + example: 0.0 + format: double + type: number + required: + - allocated_tags + - percentage + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItemsAllocatedTagsItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItemsAllocatedTagsItems` object. + properties: + key: + description: The `items` `key`. + example: "" + type: string + value: + description: The `items` `value`. + example: "" + type: string + required: + - key + - value + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyBasedOnCostsItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyBasedOnCostsItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyEvaluateGroupedByFiltersItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyEvaluateGroupedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryCostUpsertRequestDataType: + default: upsert_arbitrary_rule + description: Upsert arbitrary rule resource type. + enum: + - upsert_arbitrary_rule + example: upsert_arbitrary_rule + type: string + x-enum-varnames: + - UPSERT_ARBITRARY_RULE + ArbitraryRuleResponse: + description: The definition of `ArbitraryRuleResponse` object. + example: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + values: + - condition: in + tag: environment + value: "" + values: + - production + - staging + created: "2023-01-01T12:00:00Z" + enabled: true + last_modified_user_uuid: user-123-uuid + order_id: 1 + provider: + - aws + - gcp + rule_name: Example custom allocation rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + values: + - condition: not in + tag: team + value: "" + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + updated: "2023-01-01T12:00:00Z" + version: 1 + id: "123" + type: arbitrary_rule + properties: + data: + $ref: "#/components/schemas/ArbitraryRuleResponseData" + type: object + ArbitraryRuleResponseArray: + description: The definition of `ArbitraryRuleResponseArray` object. + example: + data: + - attributes: + costs_to_allocate: + - condition: like + tag: service + value: orgstore-csm* + values: + created: "2024-11-20T03:44:37Z" + enabled: true + last_modified_user_uuid: user-example-uuid + order_id: 1 + processing_status: done + provider: + - gcp + rule_name: gcp-orgstore-csm-team-allocation + strategy: + allocated_by: + - allocated_tags: + - key: team + value: csm-activation + percentage: 0.34 + - allocated_tags: + - key: team + value: csm-agentless + percentage: 0.66 + method: percent + type: shared + updated: "2025-09-02T21:28:32Z" + version: 1 + id: "19" + type: arbitrary_rule + - attributes: + costs_to_allocate: + - condition: is + tag: env + value: staging + values: + created: "2025-05-27T18:48:05Z" + enabled: true + last_modified_user_uuid: user-example-uuid-2 + order_id: 2 + processing_status: done + provider: + - aws + rule_name: test-even-2 + strategy: + allocated_by_tag_keys: + - team + based_on_costs: + - condition: is + tag: aws_product + value: s3 + values: + granularity: daily + method: even + type: shared + updated: "2025-09-03T21:00:49Z" + version: 1 + id: "311" + type: arbitrary_rule + - attributes: + costs_to_allocate: + - condition: is + tag: servicename + value: s3 + values: + created: "2025-03-21T20:42:40Z" + enabled: false + last_modified_user_uuid: user-example-uuid-3 + order_id: 3 + processing_status: done + provider: + - aws + rule_name: test-s3-timeseries + strategy: + granularity: daily + method: proportional_timeseries + type: shared + updated: "2025-09-02T21:16:50Z" + version: 1 + id: "289" + type: arbitrary_rule + - attributes: + costs_to_allocate: + - condition: "=" + tag: aws_product + value: msk + values: + - condition: is + tag: product + value: "null" + values: + created: "2025-08-27T14:39:31Z" + enabled: true + last_modified_user_uuid: user-example-uuid-4 + order_id: 4 + processing_status: done + provider: + - aws + rule_name: azure-unallocated-by-product-2 + strategy: + allocated_by_tag_keys: + - aws_product + based_on_costs: + - condition: "=" + tag: aws_product + value: msk + values: + - condition: is not + tag: product + value: "null" + values: + granularity: daily + method: proportional + type: shared + updated: "2025-09-02T21:28:32Z" + version: 1 + id: "523" + type: arbitrary_rule + properties: + data: + description: The `ArbitraryRuleResponseArray` `data`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseData" + type: array + meta: + $ref: "#/components/schemas/ArbitraryRuleResponseArrayMeta" + required: + - data + type: object + ArbitraryRuleResponseArrayMeta: + description: The `ArbitraryRuleResponseArray` `meta`. + properties: + total_count: + description: The `meta` `total_count`. + format: int64 + type: integer + type: object + ArbitraryRuleResponseData: + description: The definition of `ArbitraryRuleResponseData` object. + properties: + attributes: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributes" + id: + description: The `ArbitraryRuleResponseData` `id`. + type: string + type: + $ref: "#/components/schemas/ArbitraryRuleResponseDataType" + required: + - type + type: object + ArbitraryRuleResponseDataAttributes: + description: The definition of `ArbitraryRuleResponseDataAttributes` object. + properties: + costs_to_allocate: + description: The `attributes` `costs_to_allocate`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesCostsToAllocateItems" + type: array + created: + description: The `attributes` `created`. + example: "" + format: date-time + type: string + enabled: + description: The `attributes` `enabled`. + example: false + type: boolean + last_modified_user_uuid: + description: The `attributes` `last_modified_user_uuid`. + example: "" + type: string + order_id: + description: The `attributes` `order_id`. + example: 0 + format: int64 + type: integer + processing_status: + description: The `attributes` `processing_status`. + example: "" + type: string + provider: + description: The `attributes` `provider`. + example: + - "" + items: + description: A cloud provider name. + type: string + type: array + rejected: + description: The `attributes` `rejected`. + type: boolean + rule_name: + description: The `attributes` `rule_name`. + example: "" + type: string + strategy: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesStrategy" + type: + description: The `attributes` `type`. + example: "" + type: string + updated: + description: The `attributes` `updated`. + example: "" + format: date-time + type: string + version: + description: The `attributes` `version`. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + required: + - costs_to_allocate + - created + - enabled + - last_modified_user_uuid + - order_id + - provider + - rule_name + - strategy + - type + - updated + - version + type: object + ArbitraryRuleResponseDataAttributesCostsToAllocateItems: + description: The definition of `ArbitraryRuleResponseDataAttributesCostsToAllocateItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryRuleResponseDataAttributesStrategy: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategy` object. + properties: + allocated_by: + description: The `strategy` `allocated_by`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyAllocatedByItems" + type: array + allocated_by_filters: + description: The `strategy` `allocated_by_filters`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyAllocatedByFiltersItems" + type: array + allocated_by_tag_keys: + description: The `strategy` `allocated_by_tag_keys`. + items: + description: A tag key used to group cost allocations. + type: string + type: array + based_on_costs: + description: The `strategy` `based_on_costs`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyBasedOnCostsItems" + type: array + based_on_timeseries: + additionalProperties: {} + description: The rule `strategy` `based_on_timeseries`. + type: object + evaluate_grouped_by_filters: + description: The `strategy` `evaluate_grouped_by_filters`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyEvaluateGroupedByFiltersItems" + type: array + evaluate_grouped_by_tag_keys: + description: The `strategy` `evaluate_grouped_by_tag_keys`. + items: + description: A tag key used to group cost evaluation. + type: string + type: array + granularity: + description: The `strategy` `granularity`. + type: string + method: + description: The `strategy` `method`. + example: "" + type: string + required: + - method + type: object + ArbitraryRuleResponseDataAttributesStrategyAllocatedByFiltersItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyAllocatedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryRuleResponseDataAttributesStrategyAllocatedByItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyAllocatedByItems` object. + properties: + allocated_tags: + description: The `items` `allocated_tags`. + items: + $ref: "#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyAllocatedByItemsAllocatedTagsItems" + type: array + percentage: + description: The `items` `percentage`. The numeric value format should be a 32bit float value. + example: 0.0 + format: double + type: number + required: + - allocated_tags + - percentage + type: object + ArbitraryRuleResponseDataAttributesStrategyAllocatedByItemsAllocatedTagsItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyAllocatedByItemsAllocatedTagsItems` object. + properties: + key: + description: The `items` `key`. + example: "" + type: string + value: + description: The `items` `value`. + example: "" + type: string + required: + - key + - value + type: object + ArbitraryRuleResponseDataAttributesStrategyBasedOnCostsItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyBasedOnCostsItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryRuleResponseDataAttributesStrategyEvaluateGroupedByFiltersItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyEvaluateGroupedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: "" + type: string + tag: + description: The `items` `tag`. + example: "" + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + ArbitraryRuleResponseDataType: + default: arbitrary_rule + description: Arbitrary rule resource type. + enum: + - arbitrary_rule + example: arbitrary_rule + type: string + x-enum-varnames: + - ARBITRARY_RULE + ArbitraryRuleStatusResponseArray: + description: Processing statuses for all custom allocation rules in the specified organization. + example: + data: + - attributes: + processing_status: processing + id: "123" + type: arbitrary_rule_status + - attributes: + processing_status: done + id: "456" + type: arbitrary_rule_status + properties: + data: + description: Processing status for a custom allocation rule. + items: + $ref: "#/components/schemas/ArbitraryRuleStatusResponseData" + type: array + required: + - data + type: object + ArbitraryRuleStatusResponseData: + description: Processing status for a custom allocation rule. + properties: + attributes: + $ref: "#/components/schemas/ArbitraryRuleStatusResponseDataAttributes" + id: + description: The unique identifier of the custom allocation rule. + example: "123" + type: string + type: + $ref: "#/components/schemas/ArbitraryRuleStatusResponseDataType" + required: + - id + - type + - attributes + type: object + ArbitraryRuleStatusResponseDataAttributes: + description: Processing status for a custom allocation rule. + properties: + processing_status: + description: The processing status of the custom allocation rule. + example: processing + type: string + required: + - processing_status + type: object + ArbitraryRuleStatusResponseDataType: + default: arbitrary_rule_status + description: Custom allocation rule status resource type. + enum: + - arbitrary_rule_status + example: arbitrary_rule_status + type: string + x-enum-varnames: + - ARBITRARY_RULE_STATUS + Argument: + description: A named argument for a custom static analysis rule. + properties: + description: + description: Base64-encoded argument description + example: YXJndW1lbnQgZGVzY3JpcHRpb24= + type: string + name: + description: Base64-encoded argument name + example: YXJndW1lbnRfbmFtZQ== + type: string + required: + - name + - description + type: object + AsanaAccessToken: + description: The definition of the `AsanaAccessToken` object. + properties: + access_token: + description: The `AsanaAccessToken` `access_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/AsanaAccessTokenType" + required: + - type + - access_token + type: object + AsanaAccessTokenType: + description: The definition of the `AsanaAccessToken` object. + enum: + - AsanaAccessToken + example: AsanaAccessToken + type: string + x-enum-varnames: + - ASANAACCESSTOKEN + AsanaAccessTokenUpdate: + description: The definition of the `AsanaAccessToken` object. + properties: + access_token: + description: The `AsanaAccessTokenUpdate` `access_token`. + type: string + type: + $ref: "#/components/schemas/AsanaAccessTokenType" + required: + - type + type: object + AsanaCredentials: + description: The definition of the `AsanaCredentials` object. + oneOf: + - $ref: "#/components/schemas/AsanaAccessToken" + AsanaCredentialsUpdate: + description: The definition of the `AsanaCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/AsanaAccessTokenUpdate" + AsanaIntegration: + description: The definition of the `AsanaIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/AsanaCredentials" + type: + $ref: "#/components/schemas/AsanaIntegrationType" + required: + - type + - credentials + type: object + AsanaIntegrationType: + description: The definition of the `AsanaIntegrationType` object. + enum: + - Asana + example: Asana + type: string + x-enum-varnames: + - ASANA + AsanaIntegrationUpdate: + description: The definition of the `AsanaIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/AsanaCredentialsUpdate" + type: + $ref: "#/components/schemas/AsanaIntegrationType" + required: + - type + type: object + Asset: + description: A single vulnerable asset + properties: + attributes: + $ref: "#/components/schemas/AssetAttributes" + id: + description: The unique ID for this asset. + example: Repository|github.com/DataDog/datadog-agent.git + type: string + type: + $ref: "#/components/schemas/AssetEntityType" + required: + - id + - type + - attributes + type: object + AssetAttributes: + description: The JSON:API attributes of the asset. + properties: + arch: + description: Asset architecture. + example: arm64 + type: string + environments: + description: List of environments where the asset is deployed. + example: + - staging + items: + description: An environment where the asset is deployed. + example: staging + type: string + type: array + name: + description: Asset name. + example: github.com/DataDog/datadog-agent.git + type: string + operating_system: + $ref: "#/components/schemas/AssetOperatingSystem" + risks: + $ref: "#/components/schemas/AssetRisks" + teams: + description: List of teams that own the asset. + example: + - compute + items: + description: A team that owns the asset. + example: compute + type: string + type: array + type: + $ref: "#/components/schemas/AssetType" + version: + $ref: "#/components/schemas/AssetVersion" + required: + - name + - type + - risks + - environments + type: object + AssetEntityType: + description: The JSON:API type. + enum: + - assets + example: assets + type: string + x-enum-varnames: + - ASSETS + AssetOperatingSystem: + description: Asset operating system. + properties: + description: + description: Operating system version. + example: "24.04" + type: string + name: + description: Operating system name. + example: ubuntu + type: string + version: + description: Operating system version. + example: "24.04" + type: string + required: + - name + type: object + AssetRisks: + description: Asset risks. + properties: + has_access_to_sensitive_data: + description: Whether the asset has access to sensitive data or not. + example: false + type: boolean + has_privileged_access: + description: Whether the asset has privileged access or not. + example: false + type: boolean + in_production: + description: Whether the asset is in production or not. + example: false + type: boolean + is_publicly_accessible: + description: Whether the asset is publicly accessible or not. + example: false + type: boolean + under_attack: + description: Whether the asset is under attack or not. + example: false + type: boolean + required: + - in_production + type: object + AssetType: + description: The asset type + enum: + - Repository + - Service + - Host + - HostImage + - Image + - ServerlessFunction + example: Repository + type: string + x-enum-varnames: + - REPOSITORY + - SERVICE + - HOST + - HOSTIMAGE + - IMAGE + - SERVERLESSFUNCTION + AssetVersion: + description: Asset version. + properties: + first: + description: Asset first version. + example: _latest + type: string + last: + description: Asset last version. + example: _latest + type: string + type: object + AssignSeatsUserRequest: + description: The request body for assigning seats to users for a product code. + properties: + data: + $ref: "#/components/schemas/AssignSeatsUserRequestData" + description: The data for the assign seats user request. + type: object + AssignSeatsUserRequestData: + description: The request data object containing attributes for assigning seats to users. + properties: + attributes: + $ref: "#/components/schemas/AssignSeatsUserRequestDataAttributes" + description: The attributes of the assign seats user request. + id: + description: The ID of the assign seats user request. + type: string + type: + $ref: "#/components/schemas/SeatAssignmentsDataType" + description: The type of the assign seats user request. + required: + - type + - attributes + type: object + AssignSeatsUserRequestDataAttributes: + description: Attributes specifying the product and users to whom seats will be assigned. + properties: + product_code: + description: The product code for which to assign seats. + example: "" + type: string + user_uuids: + description: The list of user IDs to assign seats to. + example: + - "" + items: + description: A user UUID identifying a user to assign a seat to. + type: string + type: array + required: + - product_code + - user_uuids + type: object + AssignSeatsUserResponse: + description: The response body returned after successfully assigning seats to users. + properties: + data: + $ref: "#/components/schemas/AssignSeatsUserResponseData" + description: The data for the assign seats user response. + type: object + AssignSeatsUserResponseData: + description: The response data object containing attributes of the seat assignment result. + properties: + attributes: + $ref: "#/components/schemas/AssignSeatsUserResponseDataAttributes" + description: The attributes of the assign seats user response. + id: + description: The ID of the assign seats user response. + type: string + type: + $ref: "#/components/schemas/SeatAssignmentsDataType" + type: object + AssignSeatsUserResponseDataAttributes: + description: Attributes of the assign seats response, including the list of users assigned and the product code. + properties: + assigned_ids: + description: The list of user IDs to which the seats were assigned. + items: + description: A user UUID identifying a user to whom a seat was assigned. + type: string + type: array + product_code: + description: The product code for which the seats were assigned. + type: string + type: object + AssigneeDataType: + default: assignee + description: Assignee resource type. + enum: + - assignee + example: assignee + type: string + x-enum-varnames: + - ASSIGNEE + AssigneeRequest: + description: Request to assign or unassign security findings. + properties: + data: + $ref: "#/components/schemas/AssigneeRequestData" + required: + - data + type: object + AssigneeRequestData: + description: Data of the assignee request. + properties: + attributes: + $ref: "#/components/schemas/AssigneeRequestDataAttributes" + id: + description: Unique identifier of the assignee request. + example: "00000000-0000-0000-0000-000000000001" + type: string + relationships: + $ref: "#/components/schemas/AssigneeRequestDataRelationships" + type: + $ref: "#/components/schemas/AssigneeDataType" + required: + - relationships + - type + type: object + AssigneeRequestDataAttributes: + description: Attributes of the assignee request. + properties: + assignee_id: + description: Unique identifier of the Datadog user to assign the security findings to. If this field is not provided, the security findings are unassigned. + example: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + type: string + type: object + AssigneeRequestDataRelationships: + description: Relationships of the assignee request. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to assign or unassign. + required: + - findings + type: object + AssigneeResponse: + description: Response for the assign or unassign request. + properties: + data: + $ref: "#/components/schemas/AssigneeResponseData" + meta: + $ref: "#/components/schemas/AssigneeResponseMeta" + required: + - data + type: object + AssigneeResponseData: + description: Data of the assignee response. + properties: + attributes: + $ref: "#/components/schemas/AssigneeResponseDataAttributes" + id: + description: Unique identifier of the assignee request. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/AssigneeDataType" + required: + - id + - type + - attributes + type: object + AssigneeResponseDataAttributes: + description: Attributes of the assignee response. + properties: + assignee_id: + description: Unique identifier of the Datadog user assigned to the security findings. Omitted when the findings were unassigned. + example: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + type: string + type: object + AssigneeResponseMeta: + description: Per-finding warnings and failures produced while processing the bulk assignee request. + properties: + failures: + description: Findings that could not be assigned or unassigned. + items: + $ref: "#/components/schemas/AssignmentResult" + type: array + warnings: + description: Findings for which the assignment succeeded but a non-critical error occurred during processing. + items: + $ref: "#/components/schemas/AssignmentResult" + type: array + type: object + AssignmentResult: + description: Per-finding outcome of an assign or unassign operation. + properties: + detail: + description: Human-readable explanation of the outcome. + example: "failed to update finding assignee" + type: string + finding_id: + description: Unique identifier of the security finding. + example: "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==" + type: string + status: + description: HTTP-like status code describing the outcome for this finding. + example: 500 + format: int32 + maximum: 599 + type: integer + title: + description: Short label describing the outcome for this finding. + example: "Internal Server Error" + type: string + required: + - finding_id + - status + - title + - detail + type: object + AttachCaseRequest: + description: Request for attaching security findings to a case. + properties: + data: + $ref: "#/components/schemas/AttachCaseRequestData" + type: object + AttachCaseRequestData: + description: Data of the case to attach security findings to. + properties: + id: + description: Unique identifier of the case. + example: "c1234567-89ab-cdef-0123-456789abcdef" + type: string + relationships: + $ref: "#/components/schemas/AttachCaseRequestDataRelationships" + type: + $ref: "#/components/schemas/CaseDataType" + required: + - type + - id + type: object + AttachCaseRequestDataRelationships: + description: Relationships of the case to attach security findings to. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to attach to the case. + required: + - findings + type: object + AttachJiraIssueRequest: + description: Request for attaching security findings to a Jira issue. + properties: + data: + $ref: "#/components/schemas/AttachJiraIssueRequestData" + type: object + AttachJiraIssueRequestData: + description: Data of the Jira issue to attach security findings to. + properties: + attributes: + $ref: "#/components/schemas/AttachJiraIssueRequestDataAttributes" + relationships: + $ref: "#/components/schemas/AttachJiraIssueRequestDataRelationships" + type: + $ref: "#/components/schemas/JiraIssuesDataType" + required: + - type + type: object + AttachJiraIssueRequestDataAttributes: + description: Attributes of the Jira issue to attach security findings to. + properties: + jira_issue_url: + description: URL of the Jira issue to attach security findings to. + example: "https://domain.atlassian.net/browse/PROJ-123" + type: string + required: + - jira_issue_url + type: object + AttachJiraIssueRequestDataRelationships: + description: Relationships of the Jira issue to attach security findings to. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to attach to the Jira issue. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project with Jira integration configured. It is used to attach security findings to the Jira issue. To configure the integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). + required: + - findings + - project + type: object + AttachLinearIssueRequest: + description: Request for attaching security findings to a Linear issue. + properties: + data: + $ref: "#/components/schemas/AttachLinearIssueRequestData" + required: + - data + type: object + AttachLinearIssueRequestData: + description: Data of the Linear issue to attach security findings to. + properties: + attributes: + $ref: "#/components/schemas/AttachLinearIssueRequestDataAttributes" + relationships: + $ref: "#/components/schemas/AttachLinearIssueRequestDataRelationships" + type: + $ref: "#/components/schemas/LinearIssuesDataType" + required: + - attributes + - relationships + - type + type: object + AttachLinearIssueRequestDataAttributes: + description: Attributes of the Linear issue to attach security findings to. + properties: + linear_issue_url: + description: URL of the Linear issue to attach security findings to. + example: "https://linear.app/your-workspace/issue/ENG-123" + type: string + required: + - linear_issue_url + type: object + AttachLinearIssueRequestDataRelationships: + description: Relationships of the Linear issue to attach security findings to. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to attach to the Linear issue. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project with the Linear integration configured. It is used to attach security findings to the Linear issue. + required: + - findings + - project + type: object + AttachServiceNowTicketRequest: + description: Request for attaching security findings to a ServiceNow ticket. + properties: + data: + $ref: "#/components/schemas/AttachServiceNowTicketRequestData" + required: + - data + type: object + AttachServiceNowTicketRequestData: + description: Data of the ServiceNow ticket to attach security findings to. + properties: + attributes: + $ref: "#/components/schemas/AttachServiceNowTicketRequestDataAttributes" + relationships: + $ref: "#/components/schemas/AttachServiceNowTicketRequestDataRelationships" + type: + $ref: "#/components/schemas/ServiceNowTicketsDataType" + required: + - attributes + - relationships + - type + type: object + AttachServiceNowTicketRequestDataAttributes: + description: Attributes of the ServiceNow ticket to attach security findings to. + properties: + servicenow_ticket_url: + description: URL of the ServiceNow incident to attach security findings to. Must be a service-now.com URL pointing to an incident record. + example: "https://example.service-now.com/now/nav/ui/classic/params/target/incident.do?sys_id=abcdef0123456789abcdef0123456789" + type: string + required: + - servicenow_ticket_url + type: object + AttachServiceNowTicketRequestDataRelationships: + description: Relationships of the ServiceNow ticket to attach security findings to. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to attach to the ServiceNow ticket. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project with the ServiceNow integration configured. It is used to attach security findings to the ServiceNow ticket. + required: + - findings + - project + type: object + Attachment: + description: An attachment response containing the attachment data and related objects. + properties: + data: + $ref: "#/components/schemas/AttachmentData" + included: + description: A list of related objects included in the response. + items: + $ref: "#/components/schemas/AttachmentIncluded" + type: array + type: object + AttachmentArray: + description: A list of incident attachments. + properties: + data: + description: An array of attachment data objects. + items: + $ref: "#/components/schemas/AttachmentData" + type: array + included: + description: A list of related objects included in the response. + items: + $ref: "#/components/schemas/AttachmentIncluded" + type: array + required: + - data + type: object + AttachmentData: + description: Attachment data from a response. + properties: + attributes: + $ref: "#/components/schemas/AttachmentDataAttributes" + id: + description: The unique identifier of the attachment. + example: "00000000-abcd-0002-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/AttachmentDataRelationships" + type: + $ref: "#/components/schemas/IncidentAttachmentType" + required: + - type + - attributes + - relationships + - id + type: object + AttachmentDataAttributes: + description: The attachment's attributes. + properties: + attachment: + $ref: "#/components/schemas/AttachmentDataAttributesAttachment" + attachment_type: + $ref: "#/components/schemas/AttachmentDataAttributesAttachmentType" + modified: + description: Timestamp when the attachment was last modified. + example: "2025-01-01T01:01:01.000000001Z" + format: date-time + type: string + type: object + AttachmentDataAttributesAttachment: + description: The attachment object. + properties: + documentUrl: + description: The URL of the attachment. + example: "https://app.datadoghq.com/notebook/123/Postmortem-IR-123" + type: string + title: + description: The title of the attachment. + example: "Postmortem IR-123" + type: string + type: object + AttachmentDataAttributesAttachmentType: + description: The type of the attachment. + enum: ["postmortem", "link"] + example: "postmortem" + type: string + x-enum-varnames: + - POSTMORTEM + - LINK + AttachmentDataRelationships: + description: The attachment's resource relationships. + properties: + incident: + $ref: "#/components/schemas/RelationshipToIncident" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + AttachmentIncluded: + description: Objects related to an attachment. + oneOf: + - $ref: "#/components/schemas/IncidentUserData" + AuditLogsEvent: + description: Object description of an Audit Logs event after it is processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/AuditLogsEventAttributes" + id: + description: Unique ID of the event. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/AuditLogsEventType" + type: object + AuditLogsEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from Audit Logs events. + example: {"customAttribute": 123, "duration": 2345} + type: object + message: + description: Message of the event. + type: string + service: + description: |- + Name of the application or service generating Audit Logs events. + This name is used to correlate Audit Logs to APM, so make sure you specify the same + value when you use both products. + example: "web-app" + type: string + tags: + description: Array of tags associated with your event. + example: ["team:A"] + items: + description: Tag associated with your event. + type: string + type: array + timestamp: + description: Timestamp of your event. + example: "2019-01-02T09:42:36.320Z" + format: date-time + type: string + type: object + AuditLogsEventType: + default: audit + description: Type of the event. + enum: + - audit + example: "audit" + type: string + x-enum-varnames: + - Audit + AuditLogsEventsResponse: + description: Response object with all events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: "#/components/schemas/AuditLogsEvent" + type: array + links: + $ref: "#/components/schemas/AuditLogsResponseLinks" + meta: + $ref: "#/components/schemas/AuditLogsResponseMetadata" + type: object + AuditLogsQueryFilter: + description: Search and filter query settings. + properties: + from: + default: "now-15m" + description: Minimum time for the requested events. Supports date, math, and regular timestamps (in milliseconds). + example: "now-15m" + type: string + query: + default: "*" + description: Search query following the Audit Logs search syntax. + example: "@type:session AND @session.type:user" + type: string + to: + default: "now" + description: Maximum time for the requested events. Supports date, math, and regular timestamps (in milliseconds). + example: "now" + type: string + type: object + AuditLogsQueryOptions: + description: |- + Global query options that are used during the query. + Note: Specify either timezone or time offset, not both. Otherwise, the query fails. + properties: + time_offset: + description: Time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: "UTC" + description: |- + The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: "GMT" + type: string + type: object + AuditLogsQueryPageOptions: + description: Paging attributes for listing events. + properties: + cursor: + description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + AuditLogsResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: "https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + AuditLogsResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: Time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/AuditLogsResponsePage" + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/AuditLogsResponseStatus" + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: "#/components/schemas/AuditLogsWarning" + type: array + type: object + AuditLogsResponsePage: + description: Paging attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of `page[cursor]`. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + AuditLogsResponseStatus: + description: The status of the response. + enum: ["done", "timeout"] + example: "done" + type: string + x-enum-varnames: ["DONE", "TIMEOUT"] + AuditLogsSearchEventsRequest: + description: The request for a Audit Logs events list. + properties: + filter: + $ref: "#/components/schemas/AuditLogsQueryFilter" + options: + $ref: "#/components/schemas/AuditLogsQueryOptions" + page: + $ref: "#/components/schemas/AuditLogsQueryPageOptions" + sort: + $ref: "#/components/schemas/AuditLogsSort" + type: object + AuditLogsSort: + description: Sort parameters when querying events. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + AuditLogsWarning: + description: Warning message indicating something that went wrong with the query. + properties: + code: + description: Unique code for this type of warning. + example: "unknown_index" + type: string + detail: + description: Detailed explanation of this specific warning. + example: "indexes: foo, bar" + type: string + title: + description: Short human-readable summary of the warning. + example: "One or several indexes are missing or invalid, results hold data from the other indexes" + type: string + type: object + AuthNMapping: + description: The AuthN Mapping object returned by API. + properties: + attributes: + $ref: "#/components/schemas/AuthNMappingAttributes" + id: + description: ID of the AuthN Mapping. + example: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d" + type: string + relationships: + $ref: "#/components/schemas/AuthNMappingRelationships" + type: + $ref: "#/components/schemas/AuthNMappingsType" + required: + - id + - type + type: object + AuthNMappingAttributes: + description: Attributes of AuthN Mapping. + properties: + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development + type: string + created_at: + description: Creation time of the AuthN Mapping. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last AuthN Mapping modification. + format: date-time + readOnly: true + type: string + saml_assertion_attribute_id: + description: The ID of the SAML assertion attribute. + example: "0" + type: string + type: object + AuthNMappingCreateAttributes: + description: Key/Value pair of attributes used for create request. + properties: + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development + type: string + type: object + AuthNMappingCreateData: + description: Data for creating an AuthN Mapping. + properties: + attributes: + $ref: "#/components/schemas/AuthNMappingCreateAttributes" + relationships: + $ref: "#/components/schemas/AuthNMappingCreateRelationships" + type: + $ref: "#/components/schemas/AuthNMappingsType" + required: + - type + type: object + AuthNMappingCreateRelationships: + description: Relationship of AuthN Mapping create object to a Role or Team. + oneOf: + - $ref: "#/components/schemas/AuthNMappingRelationshipToRole" + - $ref: "#/components/schemas/AuthNMappingRelationshipToTeam" + AuthNMappingCreateRequest: + description: Request for creating an AuthN Mapping. + properties: + data: + $ref: "#/components/schemas/AuthNMappingCreateData" + required: + - data + type: object + AuthNMappingIncluded: + description: Included data in the AuthN Mapping response. + oneOf: + - $ref: "#/components/schemas/SAMLAssertionAttribute" + - $ref: "#/components/schemas/Role" + - $ref: "#/components/schemas/AuthNMappingTeam" + AuthNMappingRelationshipToRole: + description: Relationship of AuthN Mapping to a Role. + properties: + role: + $ref: "#/components/schemas/RelationshipToRole" + required: + - role + type: object + AuthNMappingRelationshipToTeam: + description: Relationship of AuthN Mapping to a Team. + properties: + team: + $ref: "#/components/schemas/RelationshipToTeam" + required: + - team + type: object + AuthNMappingRelationships: + description: All relationships associated with AuthN Mapping. + properties: + role: + $ref: "#/components/schemas/RelationshipToRole" + saml_assertion_attribute: + $ref: "#/components/schemas/RelationshipToSAMLAssertionAttribute" + team: + $ref: "#/components/schemas/RelationshipToTeam" + type: object + AuthNMappingResourceType: + description: The type of resource being mapped to. + enum: + - role + - team + type: string + x-enum-varnames: + - ROLE + - TEAM + AuthNMappingResponse: + description: AuthN Mapping response from the API. + properties: + data: + $ref: "#/components/schemas/AuthNMapping" + included: + description: Included data in the AuthN Mapping response. + items: + $ref: "#/components/schemas/AuthNMappingIncluded" + type: array + type: object + AuthNMappingTeam: + description: Team. + properties: + attributes: + $ref: "#/components/schemas/AuthNMappingTeamAttributes" + id: + description: The ID of the Team. + example: "f9bb8444-af7f-11ec-ac2c-da7ad0900001" + type: string + type: + $ref: "#/components/schemas/TeamType" + type: object + AuthNMappingTeamAttributes: + description: Team attributes. + properties: + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: "🥑" + nullable: true + type: string + banner: + description: Banner selection for the team + format: int64 + nullable: true + type: integer + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + link_count: + description: The number of links belonging to the team + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + summary: + description: A brief summary of the team, derived from the `description` + maxLength: 120 + nullable: true + type: string + user_count: + description: The number of users belonging to the team + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + type: object + AuthNMappingUpdateAttributes: + description: Key/Value pair of attributes used for update request. + properties: + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development + type: string + type: object + AuthNMappingUpdateData: + description: Data for updating an AuthN Mapping. + properties: + attributes: + $ref: "#/components/schemas/AuthNMappingUpdateAttributes" + id: + description: ID of the AuthN Mapping. + example: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d" + type: string + relationships: + $ref: "#/components/schemas/AuthNMappingUpdateRelationships" + type: + $ref: "#/components/schemas/AuthNMappingsType" + required: + - id + - type + type: object + AuthNMappingUpdateRelationships: + description: Relationship of AuthN Mapping update object to a Role or Team. + oneOf: + - $ref: "#/components/schemas/AuthNMappingRelationshipToRole" + - $ref: "#/components/schemas/AuthNMappingRelationshipToTeam" + AuthNMappingUpdateRequest: + description: Request to update an AuthN Mapping. + properties: + data: + $ref: "#/components/schemas/AuthNMappingUpdateData" + required: + - data + type: object + AuthNMappingsResponse: + description: Array of AuthN Mappings response. + properties: + data: + description: Array of returned AuthN Mappings. + items: + $ref: "#/components/schemas/AuthNMapping" + type: array + included: + description: Included data in the AuthN Mapping response. + items: + $ref: "#/components/schemas/AuthNMappingIncluded" + type: array + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + type: object + AuthNMappingsSort: + description: Sorting options for AuthN Mappings. + enum: + - created_at + - -created_at + - role_id + - -role_id + - saml_assertion_attribute_id + - -saml_assertion_attribute_id + - role.name + - -role.name + - saml_assertion_attribute.attribute_key + - -saml_assertion_attribute.attribute_key + - saml_assertion_attribute.attribute_value + - -saml_assertion_attribute.attribute_value + type: string + x-enum-varnames: + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - ROLE_ID_ASCENDING + - ROLE_ID_DESCENDING + - SAML_ASSERTION_ATTRIBUTE_ID_ASCENDING + - SAML_ASSERTION_ATTRIBUTE_ID_DESCENDING + - ROLE_NAME_ASCENDING + - ROLE_NAME_DESCENDING + - SAML_ASSERTION_ATTRIBUTE_KEY_ASCENDING + - SAML_ASSERTION_ATTRIBUTE_KEY_DESCENDING + - SAML_ASSERTION_ATTRIBUTE_VALUE_ASCENDING + - SAML_ASSERTION_ATTRIBUTE_VALUE_DESCENDING + AuthNMappingsType: + default: authn_mappings + description: AuthN Mappings resource type. + enum: + - authn_mappings + example: authn_mappings + type: string + x-enum-varnames: + - AUTHN_MAPPINGS + AutoCloseInactiveCases: + description: Auto-close inactive cases settings. + properties: + enabled: + description: Whether auto-close is enabled. + type: boolean + max_inactive_time_in_secs: + description: Maximum inactive time in seconds before auto-closing. + format: int64 + type: integer + type: object + AutoTransitionAssignedCases: + description: Auto-transition assigned cases settings. + properties: + auto_transition_assigned_cases_on_self_assigned: + description: Whether to auto-transition cases when self-assigned. + type: boolean + type: object + AutomationRule: + description: An automation rule that executes an action (such as running a Datadog workflow or assigning an AI agent) when a specified case event occurs within a project. + properties: + attributes: + $ref: "#/components/schemas/AutomationRuleAttributes" + id: + description: Automation rule identifier. + example: "e6773723-fe58-49ff-9975-dff00f14e28d" + type: string + relationships: + $ref: "#/components/schemas/AutomationRuleRelationships" + type: + $ref: "#/components/schemas/CaseAutomationRuleResourceType" + required: + - id + - type + - attributes + type: object + AutomationRuleAction: + description: Defines what happens when the rule triggers. Combines an action type with action-specific configuration data. + properties: + data: + $ref: "#/components/schemas/AutomationRuleActionData" + type: + $ref: "#/components/schemas/AutomationRuleActionType" + required: + - type + - data + type: object + AutomationRuleActionData: + description: Configuration for the action to execute, dependent on the action type. + properties: + agent_type: + description: The type of AI agent to assign. Required when the action type is `ASSIGN_AGENT`. + type: string + assigned_agent_id: + description: The identifier of the AI agent to assign to the case. Required when the action type is `ASSIGN_AGENT`. + type: string + handle: + description: The handle of the Datadog workflow to execute. Required when the action type is `EXECUTE_WORKFLOW`. + example: "workflow-handle-123" + type: string + type: object + AutomationRuleActionType: + description: The type of automated action to perform when the rule triggers. `EXECUTE_WORKFLOW` runs a Datadog workflow; `ASSIGN_AGENT` assigns an AI agent to the case. + enum: + - EXECUTE_WORKFLOW + - ASSIGN_AGENT + example: EXECUTE_WORKFLOW + type: string + x-enum-varnames: + - EXECUTE_WORKFLOW + - ASSIGN_AGENT + AutomationRuleActorType: + description: Whether the actor is a user or the Datadog system. + enum: + - user + - system + example: user + type: string + x-enum-varnames: + - USER + - SYSTEM + AutomationRuleAttributes: + description: Core attributes of an automation rule, including its name, trigger condition, action to execute, and current state. + properties: + action: + $ref: "#/components/schemas/AutomationRuleAction" + created_at: + description: Timestamp when the automation rule was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + readOnly: true + type: string + modified_at: + description: Timestamp when the automation rule was last modified. + format: date-time + readOnly: true + type: string + name: + description: A human-readable name for the automation rule, used to identify the rule in the UI and API responses. + example: "Auto-assign workflow" + type: string + state: + $ref: "#/components/schemas/CaseAutomationRuleState" + trigger: + $ref: "#/components/schemas/AutomationRuleTrigger" + required: + - name + - trigger + - action + - state + - created_at + type: object + AutomationRuleCreate: + description: Data object for creating an automation rule. + properties: + attributes: + $ref: "#/components/schemas/AutomationRuleCreateAttributes" + type: + $ref: "#/components/schemas/CaseAutomationRuleResourceType" + required: + - type + - attributes + type: object + AutomationRuleCreateAttributes: + description: Attributes required to create an automation rule. + properties: + action: + $ref: "#/components/schemas/AutomationRuleAction" + name: + description: Name of the automation rule. + example: "Auto-assign workflow" + type: string + state: + $ref: "#/components/schemas/CaseAutomationRuleState" + trigger: + $ref: "#/components/schemas/AutomationRuleTrigger" + required: + - name + - trigger + - action + type: object + AutomationRuleCreateRequest: + description: Request payload for creating an automation rule. + properties: + data: + $ref: "#/components/schemas/AutomationRuleCreate" + required: + - data + type: object + AutomationRuleCreatedBy: + description: The user or Datadog system who created the rule. + properties: + id: + description: The actor's identifier (a user UUID or a system identifier). + example: "00000000-0000-0000-0000-000000000000" + type: string + name: + description: The name of the actor. + example: "Jane Doe" + type: string + type: + $ref: "#/components/schemas/AutomationRuleActorType" + required: + - type + - id + - name + type: object + AutomationRuleModifiedBy: + description: The user or Datadog system who last modified the rule. + properties: + id: + description: The actor's identifier (a user UUID or a system identifier). + example: "00000000-0000-0000-0000-000000000000" + type: string + name: + description: The name of the actor. + example: "Jane Doe" + type: string + type: + $ref: "#/components/schemas/AutomationRuleActorType" + required: + - type + - id + - name + type: object + AutomationRuleRelationships: + description: Related resources for the automation rule, including the users who created and last modified it. + properties: + created_by: + $ref: "#/components/schemas/NullableUserRelationship" + modified_by: + $ref: "#/components/schemas/NullableUserRelationship" + type: object + AutomationRuleResponse: + description: Response containing a single automation rule. + properties: + data: + $ref: "#/components/schemas/AutomationRule" + required: + - data + type: object + AutomationRuleScope: + description: Defines the scope of findings to which the automation rule applies. + properties: + finding_types: + $ref: "#/components/schemas/SecurityFindingTypes" + query: + description: A search query to further filter the findings matched by this rule. The `@workflow.*` namespace and `@status` fields are not permitted. For a reference of available fields, see the [Security Findings schema documentation](https://docs.datadoghq.com/security/guide/findings-schema/). + example: "env:prod team:platform" + maxLength: 30000 + type: string + required: + - finding_types + type: object + AutomationRuleTrigger: + description: Defines when the rule activates. Combines a trigger type (the case event to listen for) with optional trigger data (conditions that narrow when the trigger fires). + properties: + data: + $ref: "#/components/schemas/AutomationRuleTriggerData" + type: + $ref: "#/components/schemas/AutomationRuleTriggerType" + required: + - type + type: object + AutomationRuleTriggerData: + description: Additional configuration for the trigger, dependent on the trigger type. For `STATUS_TRANSITIONED` triggers, specify `from_status_name` and `to_status_name`. For `ATTRIBUTE_VALUE_CHANGED` triggers, specify `field` and `change_type`. + properties: + approval_type: + description: The approval outcome to match. Used with `CASE_REVIEW_APPROVED` triggers. + type: string + change_type: + description: "The kind of attribute change to match. Allowed values: `VALUE_ADDED`, `VALUE_DELETED`, `ANY_CHANGES`. Used with `ATTRIBUTE_VALUE_CHANGED` triggers." + type: string + field: + description: The case attribute field name to monitor for changes. Used with `ATTRIBUTE_VALUE_CHANGED` triggers. + type: string + from_status_name: + description: The originating status name. Used with `STATUS_TRANSITIONED` triggers to match transitions from this status. + type: string + to_status_name: + description: The destination status name. Used with `STATUS_TRANSITIONED` triggers to match transitions to this status. + type: string + type: object + AutomationRuleTriggerType: + description: The case event that activates the automation rule. + enum: + - CASE_CREATED + - STATUS_TRANSITIONED + - ATTRIBUTE_VALUE_CHANGED + - EVENT_CORRELATION_SIGNAL_CORRELATED + - CASE_REVIEW_APPROVED + - COMMENT_ADDED + example: CASE_CREATED + type: string + x-enum-varnames: + - CASE_CREATED + - STATUS_TRANSITIONED + - ATTRIBUTE_VALUE_CHANGED + - EVENT_CORRELATION_SIGNAL_CORRELATED + - CASE_REVIEW_APPROVED + - COMMENT_ADDED + AutomationRuleUpdate: + description: Data object for updating an automation rule. + properties: + attributes: + $ref: "#/components/schemas/AutomationRuleCreateAttributes" + type: + $ref: "#/components/schemas/CaseAutomationRuleResourceType" + required: + - type + type: object + AutomationRuleUpdateRequest: + description: Request payload for updating an automation rule. + properties: + data: + $ref: "#/components/schemas/AutomationRuleUpdate" + required: + - data + type: object + AutomationRulesResponse: + description: Response containing a list of automation rules for a project. + properties: + data: + description: List of automation rules. + items: + $ref: "#/components/schemas/AutomationRule" + type: array + required: + - data + type: object + AwsAccountId: + description: The ID of the AWS account. + example: "123456789012" + type: string + AwsCURConfig: + description: AWS CUR config. + properties: + attributes: + $ref: "#/components/schemas/AwsCURConfigAttributes" + id: + description: The ID of the AWS CUR config. + type: string + type: + $ref: "#/components/schemas/AwsCURConfigType" + required: + - attributes + - type + type: object + AwsCURConfigAttributes: + description: Attributes for An AWS CUR config. + properties: + account_filters: + $ref: "#/components/schemas/AccountFilteringConfig" + account_id: + description: The AWS account ID. + example: "123456789123" + type: string + bucket_name: + description: The AWS bucket name used to store the Cost and Usage Report. + example: "dd-cost-bucket" + type: string + bucket_region: + description: The region the bucket is located in. + example: "us-east-1" + type: string + created_at: + description: The timestamp when the AWS CUR config was created. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + error_messages: + description: The error messages for the AWS CUR config. + items: + description: An error message string. + type: string + nullable: true + type: array + months: + deprecated: true + description: The number of months the report has been backfilled. + format: int32 + maximum: 36 + type: integer + report_name: + description: The name of the Cost and Usage Report. + example: "dd-report-name" + type: string + report_prefix: + description: The report prefix used for the Cost and Usage Report. + example: "dd-report-prefix" + type: string + status: + description: The status of the AWS CUR. + example: "active" + type: string + status_updated_at: + description: The timestamp when the AWS CUR config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + updated_at: + description: The timestamp when the AWS CUR config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + required: + - account_id + - bucket_name + - bucket_region + - report_name + - report_prefix + - status + type: object + AwsCURConfigPatchData: + description: AWS CUR config Patch data. + properties: + attributes: + $ref: "#/components/schemas/AwsCURConfigPatchRequestAttributes" + type: + $ref: "#/components/schemas/AwsCURConfigPatchRequestType" + required: + - attributes + - type + type: object + AwsCURConfigPatchRequest: + description: AWS CUR config Patch Request. + properties: + data: + $ref: "#/components/schemas/AwsCURConfigPatchData" + required: + - data + type: object + AwsCURConfigPatchRequestAttributes: + description: Attributes for AWS CUR config Patch Request. + properties: + account_filters: + $ref: "#/components/schemas/AccountFilteringConfig" + is_enabled: + description: Whether or not the Cloud Cost Management account is enabled. + example: true + type: boolean + type: object + AwsCURConfigPatchRequestType: + default: aws_cur_config_patch_request + description: Type of AWS CUR config Patch Request. + enum: + - aws_cur_config_patch_request + example: aws_cur_config_patch_request + type: string + x-enum-varnames: + - AWS_CUR_CONFIG_PATCH_REQUEST + AwsCURConfigPostData: + description: AWS CUR config Post data. + properties: + attributes: + $ref: "#/components/schemas/AwsCURConfigPostRequestAttributes" + type: + $ref: "#/components/schemas/AwsCURConfigPostRequestType" + required: + - type + type: object + AwsCURConfigPostRequest: + description: AWS CUR config Post Request. + properties: + data: + $ref: "#/components/schemas/AwsCURConfigPostData" + required: + - data + type: object + AwsCURConfigPostRequestAttributes: + description: Attributes for AWS CUR config Post Request. + properties: + account_filters: + $ref: "#/components/schemas/AccountFilteringConfig" + account_id: + description: The AWS account ID. + example: "123456789123" + type: string + bucket_name: + description: The AWS bucket name used to store the Cost and Usage Report. + example: "dd-cost-bucket" + type: string + bucket_region: + description: The region the bucket is located in. + example: "us-east-1" + type: string + months: + description: The month of the report. + format: int32 + maximum: 36 + type: integer + report_name: + description: The name of the Cost and Usage Report. + example: "dd-report-name" + type: string + report_prefix: + description: The report prefix used for the Cost and Usage Report. + example: "dd-report-prefix" + type: string + required: + - account_id + - bucket_name + - report_name + - report_prefix + type: object + AwsCURConfigPostRequestType: + default: aws_cur_config_post_request + description: Type of AWS CUR config Post Request. + enum: + - aws_cur_config_post_request + example: aws_cur_config_post_request + type: string + x-enum-varnames: + - AWS_CUR_CONFIG_POST_REQUEST + AwsCURConfigType: + default: aws_cur_config + description: Type of AWS CUR config. + enum: + - aws_cur_config + example: aws_cur_config + type: string + x-enum-varnames: + - AWS_CUR_CONFIG + AwsCURConfigsResponse: + description: List of AWS CUR configs. + properties: + data: + description: An AWS CUR config. + items: + $ref: "#/components/schemas/AwsCURConfig" + type: array + required: + - data + type: object + AwsCurConfigResponse: + description: The definition of `AwsCurConfigResponse` object. + example: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789124" + - "123456789125" + include_new_accounts: true + account_id: "123456789123" + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: "2023-01-01T12:00:00.000000" + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: aws_cur_config + properties: + data: + $ref: "#/components/schemas/AwsCurConfigResponseData" + type: object + AwsCurConfigResponseData: + description: The definition of `AwsCurConfigResponseData` object. + properties: + attributes: + $ref: "#/components/schemas/AwsCurConfigResponseDataAttributes" + id: + description: The `AwsCurConfigResponseData` `id`. + type: string + type: + $ref: "#/components/schemas/AwsCurConfigResponseDataType" + required: + - type + type: object + AwsCurConfigResponseDataAttributes: + description: The definition of `AwsCurConfigResponseDataAttributes` object. + properties: + account_filters: + $ref: "#/components/schemas/AwsCurConfigResponseDataAttributesAccountFilters" + account_id: + description: The `attributes` `account_id`. + type: string + bucket_name: + description: The `attributes` `bucket_name`. + type: string + bucket_region: + description: The `attributes` `bucket_region`. + type: string + created_at: + description: The `attributes` `created_at`. + type: string + error_messages: + description: The `attributes` `error_messages`. + items: + description: An error message string. + type: string + nullable: true + type: array + months: + description: The `attributes` `months`. + format: int64 + type: integer + report_name: + description: The `attributes` `report_name`. + type: string + report_prefix: + description: The `attributes` `report_prefix`. + type: string + status: + description: The `attributes` `status`. + type: string + status_updated_at: + description: The `attributes` `status_updated_at`. + type: string + updated_at: + description: The `attributes` `updated_at`. + type: string + type: object + AwsCurConfigResponseDataAttributesAccountFilters: + description: The definition of `AwsCurConfigResponseDataAttributesAccountFilters` object. + properties: + excluded_accounts: + description: The `account_filters` `excluded_accounts`. + items: + description: An AWS account ID to exclude. + type: string + type: array + include_new_accounts: + description: The `account_filters` `include_new_accounts`. + nullable: true + type: boolean + included_accounts: + description: The `account_filters` `included_accounts`. + items: + description: An AWS account ID to include. + type: string + type: array + type: object + AwsCurConfigResponseDataType: + default: aws_cur_config + description: AWS CUR config resource type. + enum: + - aws_cur_config + example: aws_cur_config + type: string + x-enum-varnames: + - AWS_CUR_CONFIG + AwsOnDemandAttributes: + description: Attributes for the AWS on demand task. + properties: + arn: + description: The arn of the resource to scan. + example: "arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba" + type: string + assigned_at: + description: Specifies the assignment timestamp if the task has been already assigned to a scanner. + example: "2025-02-11T18:25:04.550564Z" + type: string + created_at: + description: The task submission timestamp. + example: "2025-02-11T18:13:24.576915Z" + type: string + status: + description: |- + Indicates the status of the task. + QUEUED: the task has been submitted successfully and the resource has not been assigned to a scanner yet. + ASSIGNED: the task has been assigned. + ABORTED: the scan has been aborted after a period of time due to technical reasons, such as resource not found, insufficient permissions, or the absence of a configured scanner. + example: "QUEUED" + type: string + type: object + AwsOnDemandCreateAttributes: + description: Attributes for the AWS on demand task. + properties: + arn: + description: |- + The arn of the resource to scan. Agentless supports the scan of EC2 instances, lambda functions, AMI, ECR, RDS and S3 buckets. + example: "arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba" + type: string + required: + - arn + type: object + AwsOnDemandCreateData: + description: Object for a single AWS on demand task. + properties: + attributes: + $ref: "#/components/schemas/AwsOnDemandCreateAttributes" + type: + $ref: "#/components/schemas/AwsOnDemandType" + required: + - type + - attributes + type: object + AwsOnDemandCreateRequest: + description: Request object that includes the on demand task to submit. + properties: + data: + $ref: "#/components/schemas/AwsOnDemandCreateData" + required: + - data + type: object + AwsOnDemandData: + description: Single AWS on demand task. + properties: + attributes: + $ref: "#/components/schemas/AwsOnDemandAttributes" + id: + description: The UUID of the task. + example: "6d09294c-9ad9-42fd-a759-a0c1599b4828" + type: string + type: + $ref: "#/components/schemas/AwsOnDemandType" + type: object + AwsOnDemandListResponse: + description: Response object that includes a list of AWS on demand tasks. + properties: + data: + description: A list of on demand tasks. + items: + $ref: "#/components/schemas/AwsOnDemandData" + type: array + type: object + AwsOnDemandResponse: + description: Response object that includes an AWS on demand task. + properties: + data: + $ref: "#/components/schemas/AwsOnDemandData" + type: object + AwsOnDemandType: + default: aws_resource + description: The type of the on demand task. The value should always be `aws_resource`. + enum: + - aws_resource + example: aws_resource + type: string + x-enum-varnames: ["AWS_RESOURCE"] + AwsScanOptionsAttributes: + description: Attributes for the AWS scan options. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + example: false + type: boolean + lambda: + description: Indicates if scanning of Lambda functions is enabled. + example: true + type: boolean + sensitive_data: + description: Indicates if scanning for sensitive data is enabled. + example: false + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + example: true + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + example: true + type: boolean + type: object + AwsScanOptionsCreateAttributes: + description: Attributes for the AWS scan options to create. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + example: false + type: boolean + lambda: + description: Indicates if scanning of Lambda functions is enabled. + example: true + type: boolean + sensitive_data: + description: Indicates if scanning for sensitive data is enabled. + example: false + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + example: true + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + example: true + type: boolean + required: + - compliance_host + - lambda + - sensitive_data + - vuln_containers_os + - vuln_host_os + type: object + AwsScanOptionsCreateData: + description: Object for the scan options of a single AWS account. + properties: + attributes: + $ref: "#/components/schemas/AwsScanOptionsCreateAttributes" + id: + $ref: "#/components/schemas/AwsAccountId" + type: + $ref: "#/components/schemas/AwsScanOptionsType" + required: + - id + - type + - attributes + type: object + AwsScanOptionsCreateRequest: + description: Request object that includes the scan options to create. + properties: + data: + $ref: "#/components/schemas/AwsScanOptionsCreateData" + required: + - data + type: object + AwsScanOptionsData: + description: Single AWS Scan Options entry. + properties: + attributes: + $ref: "#/components/schemas/AwsScanOptionsAttributes" + id: + description: The ID of the AWS account. + example: "184366314700" + type: string + type: + $ref: "#/components/schemas/AwsScanOptionsType" + type: object + AwsScanOptionsListResponse: + description: Response object that includes a list of AWS scan options. + properties: + data: + description: A list of AWS scan options. + items: + $ref: "#/components/schemas/AwsScanOptionsData" + type: array + type: object + AwsScanOptionsResponse: + description: Response object that includes the scan options of an AWS account. + properties: + data: + $ref: "#/components/schemas/AwsScanOptionsData" + type: object + AwsScanOptionsType: + default: aws_scan_options + description: The type of the resource. The value should always be `aws_scan_options`. + enum: + - aws_scan_options + example: aws_scan_options + type: string + x-enum-varnames: ["AWS_SCAN_OPTIONS"] + AwsScanOptionsUpdateAttributes: + description: Attributes for the AWS scan options to update. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + example: false + type: boolean + lambda: + description: Indicates if scanning of Lambda functions is enabled. + example: true + type: boolean + sensitive_data: + description: Indicates if scanning for sensitive data is enabled. + example: false + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + example: true + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + example: true + type: boolean + type: object + AwsScanOptionsUpdateData: + description: Object for the scan options of a single AWS account. + properties: + attributes: + $ref: "#/components/schemas/AwsScanOptionsUpdateAttributes" + id: + $ref: "#/components/schemas/AwsAccountId" + type: + $ref: "#/components/schemas/AwsScanOptionsType" + required: + - id + - type + - attributes + type: object + AwsScanOptionsUpdateRequest: + description: Request object that includes the scan options to update. + properties: + data: + $ref: "#/components/schemas/AwsScanOptionsUpdateData" + required: + - data + type: object + AzureCredentials: + description: The definition of the `AzureCredentials` object. + oneOf: + - $ref: "#/components/schemas/AzureTenant" + AzureCredentialsUpdate: + description: The definition of the `AzureCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/AzureTenantUpdate" + AzureIntegration: + description: The definition of the `AzureIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/AzureCredentials" + type: + $ref: "#/components/schemas/AzureIntegrationType" + required: + - type + - credentials + type: object + AzureIntegrationType: + description: The definition of the `AzureIntegrationType` object. + enum: + - Azure + example: Azure + type: string + x-enum-varnames: + - AZURE + AzureIntegrationUpdate: + description: The definition of the `AzureIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/AzureCredentialsUpdate" + type: + $ref: "#/components/schemas/AzureIntegrationType" + required: + - type + type: object + AzureScanOptions: + description: Response object containing Azure scan options for a single subscription. + example: + data: + attributes: + compliance_host: false + function: true + vuln_containers_os: true + vuln_host_os: true + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + properties: + data: + $ref: "#/components/schemas/AzureScanOptionsData" + type: object + AzureScanOptionsArray: + description: Response object containing a list of Azure scan options. + example: + data: + - attributes: + compliance_host: false + function: true + vuln_containers_os: true + vuln_host_os: true + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + properties: + data: + description: A list of Azure scan options. + items: + $ref: "#/components/schemas/AzureScanOptionsData" + type: array + required: + - data + type: object + AzureScanOptionsData: + description: Single Azure scan options entry. + properties: + attributes: + $ref: "#/components/schemas/AzureScanOptionsDataAttributes" + id: + description: The Azure subscription ID. + example: "" + type: string + type: + $ref: "#/components/schemas/AzureScanOptionsDataType" + required: + - type + - id + type: object + AzureScanOptionsDataAttributes: + description: Attributes for Azure scan options configuration. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + function: + description: Indicates if scanning of Azure Functions is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + AzureScanOptionsDataType: + default: azure_scan_options + description: The type of the resource. The value should always be `azure_scan_options`. + enum: + - azure_scan_options + example: azure_scan_options + type: string + x-enum-varnames: + - AZURE_SCAN_OPTIONS + AzureScanOptionsInputUpdate: + description: Request object for updating Azure scan options. + example: + data: + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + properties: + data: + $ref: "#/components/schemas/AzureScanOptionsInputUpdateData" + type: object + AzureScanOptionsInputUpdateData: + description: Data object for updating the scan options of a single Azure subscription. + properties: + attributes: + $ref: "#/components/schemas/AzureScanOptionsInputUpdateDataAttributes" + id: + description: The Azure subscription ID. + example: "12345678-90ab-cdef-1234-567890abcdef" + type: string + type: + $ref: "#/components/schemas/AzureScanOptionsInputUpdateDataType" + required: + - type + - id + type: object + AzureScanOptionsInputUpdateDataAttributes: + description: Attributes for updating Azure scan options configuration. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + function: + description: Indicates if scanning of Azure Functions is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + AzureScanOptionsInputUpdateDataType: + default: azure_scan_options + description: Azure scan options resource type. + enum: + - azure_scan_options + example: azure_scan_options + type: string + x-enum-varnames: + - AZURE_SCAN_OPTIONS + AzureStorageDestination: + description: |- + The `azure_storage` destination forwards logs to an Azure Blob Storage container. + + **Supported pipeline types:** logs + properties: + blob_prefix: + description: Optional prefix for blobs written to the container. + example: "logs/" + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + connection_string_key: + description: Name of the environment variable or secret that holds the Azure Storage connection string. + example: AZURE_STORAGE_CONNECTION_STRING + type: string + container_name: + description: The name of the Azure Blob Storage container to store logs in. + example: "my-log-container" + type: string + id: + description: The unique identifier for this component. + example: "azure-storage-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["processor-id"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: "#/components/schemas/AzureStorageDestinationType" + required: + - id + - type + - inputs + - container_name + type: object + x-pipeline-types: [logs] + AzureStorageDestinationType: + default: azure_storage + description: The destination type. The value should always be `azure_storage`. + enum: + - azure_storage + example: azure_storage + type: string + x-enum-varnames: + - AZURE_STORAGE + AzureTenant: + description: The definition of the `AzureTenant` object. + properties: + app_client_id: + description: "The Client ID, also known as the Application ID in Azure, is a unique identifier for an application. It's used to identify the application during the authentication process. Your Application (client) ID is listed in the application's overview page. You can navigate to your application via the Azure Directory." + example: "" + type: string + client_secret: + description: The Client Secret is a confidential piece of information known only to the application and Azure AD. It's used to prove the application's identity. Your Client Secret is available from the application’s secrets page. You can navigate to your application via the Azure Directory. + example: "" + type: string + custom_scopes: + description: If provided, the custom scope to be requested from Microsoft when acquiring an OAuth 2 access token. This custom scope is used only in conjunction with the HTTP action. A resource's scope is constructed by using the identifier URI for the resource and .default, separated by a forward slash (/) as follows:{identifierURI}/.default. + type: string + tenant_id: + description: The Tenant ID, also known as the Directory ID in Azure, is a unique identifier that represents an Azure AD instance. Your Tenant ID (Directory ID) is listed in your Active Directory overview page under the 'Tenant information' section. + example: "" + type: string + type: + $ref: "#/components/schemas/AzureTenantType" + required: + - type + - tenant_id + - app_client_id + - client_secret + type: object + AzureTenantType: + description: The definition of the `AzureTenant` object. + enum: + - AzureTenant + example: AzureTenant + type: string + x-enum-varnames: + - AZURETENANT + AzureTenantUpdate: + description: The definition of the `AzureTenant` object. + properties: + app_client_id: + description: "The Client ID, also known as the Application ID in Azure, is a unique identifier for an application. It's used to identify the application during the authentication process. Your Application (client) ID is listed in the application's overview page. You can navigate to your application via the Azure Directory." + type: string + client_secret: + description: The Client Secret is a confidential piece of information known only to the application and Azure AD. It's used to prove the application's identity. Your Client Secret is available from the application’s secrets page. You can navigate to your application via the Azure Directory. + type: string + custom_scopes: + description: If provided, the custom scope to be requested from Microsoft when acquiring an OAuth 2 access token. This custom scope is used only in conjunction with the HTTP action. A resource's scope is constructed by using the identifier URI for the resource and .default, separated by a forward slash (/) as follows:{identifierURI}/.default. + type: string + tenant_id: + description: The Tenant ID, also known as the Directory ID in Azure, is a unique identifier that represents an Azure AD instance. Your Tenant ID (Directory ID) is listed in your Active Directory overview page under the 'Tenant information' section. + type: string + type: + $ref: "#/components/schemas/AzureTenantType" + required: + - type + type: object + AzureUCConfig: + description: Azure config. + properties: + account_id: + description: The tenant ID of the Azure account. + example: "1234abcd-1234-abcd-1234-1234abcd1234" + type: string + client_id: + description: The client ID of the Azure account. + example: "1234abcd-1234-abcd-1234-1234abcd1234" + type: string + created_at: + description: The timestamp when the Azure config was created. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + dataset_type: + description: The dataset type of the Azure config. + example: "actual" + type: string + error_messages: + description: The error messages for the Azure config. + items: + description: An error message string. + type: string + nullable: true + type: array + export_name: + description: The name of the configured Azure Export. + example: "dd-actual-export" + type: string + export_path: + description: The path where the Azure Export is saved. + example: "dd-export-path" + type: string + id: + description: The ID of the Azure config. + type: string + months: + deprecated: true + description: The number of months the report has been backfilled. + format: int32 + maximum: 36 + type: integer + scope: + description: The scope of your observed subscription. + example: "/subscriptions/1234abcd-1234-abcd-1234-1234abcd1234" + type: string + status: + description: The status of the Azure config. + example: "active" + type: string + status_updated_at: + description: The timestamp when the Azure config status was last updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + storage_account: + description: The name of the storage account where the Azure Export is saved. + example: "dd-storage-account" + type: string + storage_container: + description: The name of the storage container where the Azure Export is saved. + example: "dd-storage-container" + type: string + updated_at: + description: The timestamp when the Azure config was last updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + required: + - account_id + - client_id + - dataset_type + - export_name + - export_path + - scope + - status + - storage_account + - storage_container + type: object + AzureUCConfigPair: + description: Azure config pair. + properties: + attributes: + $ref: "#/components/schemas/AzureUCConfigPairAttributes" + id: + description: The ID of Cloud Cost Management account. + type: string + type: + $ref: "#/components/schemas/AzureUCConfigPairType" + required: + - attributes + - type + type: object + AzureUCConfigPairAttributes: + description: Attributes for Azure config pair. + properties: + configs: + description: An Azure config. + items: + $ref: "#/components/schemas/AzureUCConfig" + type: array + id: + description: The ID of the Azure config pair. + type: string + required: + - configs + type: object + AzureUCConfigPairType: + default: azure_uc_configs + description: Type of Azure config pair. + enum: + - azure_uc_configs + example: azure_uc_configs + type: string + x-enum-varnames: + - AZURE_UC_CONFIGS + AzureUCConfigPairsResponse: + description: Response of Azure config pair. + properties: + data: + $ref: "#/components/schemas/AzureUCConfigPair" + type: object + AzureUCConfigPatchData: + description: Azure config Patch data. + properties: + attributes: + $ref: "#/components/schemas/AzureUCConfigPatchRequestAttributes" + type: + $ref: "#/components/schemas/AzureUCConfigPatchRequestType" + required: + - type + type: object + AzureUCConfigPatchRequest: + description: Azure config Patch Request. + properties: + data: + $ref: "#/components/schemas/AzureUCConfigPatchData" + required: + - data + type: object + AzureUCConfigPatchRequestAttributes: + description: Attributes for Azure config Patch Request. + properties: + is_enabled: + description: Whether or not the Cloud Cost Management account is enabled. + example: true + type: boolean + required: + - is_enabled + type: object + AzureUCConfigPatchRequestType: + default: azure_uc_config_patch_request + description: Type of Azure config Patch Request. + enum: + - azure_uc_config_patch_request + example: azure_uc_config_patch_request + type: string + x-enum-varnames: + - AZURE_UC_CONFIG_PATCH_REQUEST + AzureUCConfigPostData: + description: Azure config Post data. + properties: + attributes: + $ref: "#/components/schemas/AzureUCConfigPostRequestAttributes" + type: + $ref: "#/components/schemas/AzureUCConfigPostRequestType" + required: + - type + type: object + AzureUCConfigPostRequest: + description: Azure config Post Request. + properties: + data: + $ref: "#/components/schemas/AzureUCConfigPostData" + required: + - data + type: object + AzureUCConfigPostRequestAttributes: + description: Attributes for Azure config Post Request. + properties: + account_id: + description: The tenant ID of the Azure account. + example: "1234abcd-1234-abcd-1234-1234abcd1234" + type: string + actual_bill_config: + $ref: "#/components/schemas/BillConfig" + amortized_bill_config: + $ref: "#/components/schemas/BillConfig" + client_id: + description: The client ID of the Azure account. + example: "1234abcd-1234-abcd-1234-1234abcd1234" + type: string + scope: + description: The scope of your observed subscription. + example: "/subscriptions/1234abcd-1234-abcd-1234-1234abcd1234" + type: string + required: + - account_id + - actual_bill_config + - amortized_bill_config + - client_id + - scope + type: object + AzureUCConfigPostRequestType: + default: azure_uc_config_post_request + description: Type of Azure config Post Request. + enum: + - azure_uc_config_post_request + example: azure_uc_config_post_request + type: string + x-enum-varnames: + - AZURE_UC_CONFIG_POST_REQUEST + AzureUCConfigsResponse: + description: List of Azure accounts with configs. + properties: + data: + description: An Azure config pair. + items: + $ref: "#/components/schemas/AzureUCConfigPair" + type: array + required: + - data + type: object + BatchDeleteRowsRequestArray: + description: The request body for deleting multiple rows from a reference table. + properties: + data: + description: List of row resources to delete from the reference table. + items: + $ref: "#/components/schemas/TableRowResourceIdentifier" + maxItems: 200 + type: array + required: + - data + type: object + BatchRowsQueryDataType: + default: reference-tables-batch-rows-query + description: Resource type identifier for batch queries of reference table rows. + enum: + - reference-tables-batch-rows-query + example: reference-tables-batch-rows-query + type: string + x-enum-varnames: + - REFERENCE_TABLES_BATCH_ROWS_QUERY + BatchRowsQueryRequest: + description: Request object for querying multiple rows from a reference table by their identifiers. + properties: + data: + $ref: "#/components/schemas/BatchRowsQueryRequestData" + type: object + BatchRowsQueryRequestData: + description: Data object for a batch rows query request. + properties: + attributes: + $ref: "#/components/schemas/BatchRowsQueryRequestDataAttributes" + type: + $ref: "#/components/schemas/BatchRowsQueryDataType" + required: + - type + type: object + BatchRowsQueryRequestDataAttributes: + description: Attributes for a batch rows query request. + properties: + row_ids: + description: List of row identifiers to query from the reference table. + example: + - "row_id_1" + - "row_id_2" + items: + description: A single row identifier. + type: string + type: array + table_id: + description: Unique identifier of the reference table to query. + example: "00000000-0000-0000-0000-000000000000" + type: string + required: + - row_ids + - table_id + type: object + BatchRowsQueryResponse: + description: Response object for a batch rows query against a reference table. + example: + data: + id: 00000000-0000-0000-0000-000000000000 + relationships: + rows: + data: + - id: row_id_1 + type: row + - id: row_id_2 + type: row + type: reference-tables-batch-rows-query + included: + - attributes: + values: + ip_address: 102.130.113.9 + id: row_id_1 + type: row + - attributes: + values: + ip_address: 102.130.113.10 + id: row_id_2 + type: row + properties: + data: + $ref: "#/components/schemas/BatchRowsQueryResponseData" + included: + description: Full row resources matching the query, included alongside the relationship references in `data`. + items: + $ref: "#/components/schemas/TableRowResourceData" + type: array + type: object + BatchRowsQueryResponseData: + description: Data object for a batch rows query response. + properties: + id: + description: Unique identifier of the batch query. + type: string + relationships: + $ref: "#/components/schemas/BatchRowsQueryResponseDataRelationships" + type: + $ref: "#/components/schemas/BatchRowsQueryDataType" + required: + - type + type: object + BatchRowsQueryResponseDataRelationships: + description: Relationships of the batch rows query response data. + properties: + rows: + $ref: "#/components/schemas/BatchRowsQueryResponseDataRelationshipsRows" + type: object + BatchRowsQueryResponseDataRelationshipsRows: + description: Relationship data containing the list of matching rows. + properties: + data: + items: + $ref: "#/components/schemas/TableRowResourceIdentifier" + type: array + type: object + BatchUpsertRowsRequestArray: + description: The request body for creating or updating multiple rows into a reference table. + properties: + data: + description: List of row resources to create or update in the reference table. + items: + $ref: "#/components/schemas/BatchUpsertRowsRequestData" + maxItems: 200 + type: array + required: + - data + type: object + BatchUpsertRowsRequestData: + description: Row resource containing a single row identifier and its column values. + properties: + attributes: + $ref: "#/components/schemas/BatchUpsertRowsRequestDataAttributes" + id: + description: The primary key value that uniquely identifies the row to create or update. + example: "primary_key_value" + type: string + type: + $ref: "#/components/schemas/TableRowResourceDataType" + required: + - type + - id + type: object + BatchUpsertRowsRequestDataAttributes: + description: Attributes containing row data values for row creation or update operations. + example: + values: {} + properties: + values: + additionalProperties: + $ref: "#/components/schemas/BatchUpsertRowsRequestDataAttributesValue" + description: >- + Key-value pairs representing row data, where keys are schema field names and values match the corresponding column types. + type: object + required: + - values + type: object + BatchUpsertRowsRequestDataAttributesValue: + description: Types allowed for Reference Table row values. + oneOf: + - example: "row_name" + type: string + - example: 25 + format: int32 + maximum: 2147483647 + type: integer + BillConfig: + description: Bill config. + properties: + export_name: + description: The name of the configured Azure Export. + example: "dd-actual-export" + type: string + export_path: + description: The path where the Azure Export is saved. + example: "dd-export-path" + type: string + storage_account: + description: The name of the storage account where the Azure Export is saved. + example: "dd-storage-account" + type: string + storage_container: + description: The name of the storage container where the Azure Export is saved. + example: "dd-storage-container" + type: string + required: + - export_name + - export_path + - storage_account + - storage_container + type: object + BillingDimensionsMappingBody: + description: Billing dimensions mapping data. + items: + $ref: "#/components/schemas/BillingDimensionsMappingBodyItem" + type: array + BillingDimensionsMappingBodyItem: + description: The mapping data for each billing dimension. + properties: + attributes: + $ref: "#/components/schemas/BillingDimensionsMappingBodyItemAttributes" + id: + description: ID of the billing dimension. + type: string + type: + $ref: "#/components/schemas/ActiveBillingDimensionsType" + type: object + BillingDimensionsMappingBodyItemAttributes: + description: Mapping of billing dimensions to endpoint keys. + properties: + endpoints: + description: "List of supported endpoints with their keys mapped to the billing_dimension." + items: + $ref: "#/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItems" + type: array + in_app_label: + description: "Label used for the billing dimension in the Plan & Usage charts." + example: APM Hosts + type: string + timestamp: + description: "Month in ISO-8601 format, UTC, and precise to the second: `[YYYY-MM-DDThh:mm:ss]`." + format: date-time + type: string + type: object + BillingDimensionsMappingBodyItemAttributesEndpointsItems: + description: An endpoint's keys mapped to the billing_dimension. + properties: + id: + description: The URL for the endpoint. + example: "api/v1/usage/billable-summary" + type: string + keys: + description: The billing dimension. + example: + - "apm_host_top99p" + - "apm_host_sum" + items: + description: A billing dimension key. + example: apm_host_top99p + type: string + type: array + status: + $ref: "#/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus" + type: object + BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus: + description: Denotes whether mapping keys were available for this endpoint. + enum: + - OK + - NOT_FOUND + type: string + x-enum-varnames: + - OK + - NOT_FOUND + BillingDimensionsMappingResponse: + description: Billing dimensions mapping response. + properties: + data: + $ref: "#/components/schemas/BillingDimensionsMappingBody" + type: object + BlueprintAttributes: + description: The attributes of a blueprint resource. + properties: + created_at: + description: The timestamp when the blueprint was created. + example: "" + format: date-time + type: string + definition: + $ref: "#/components/schemas/AppDefinitionType" + description: + description: A description of what the blueprint does. + example: "" + type: string + embedded_datastore_blueprints: + additionalProperties: {} + description: Embedded datastore blueprints. + type: object + embedded_native_actions: + description: Embedded native actions. + items: + $ref: "#/components/schemas/BlueprintNativeAction" + type: array + embedded_workflow_blueprints: + additionalProperties: {} + description: Embedded workflow blueprints. + type: object + integration_id: + description: The integration ID associated with the blueprint. + type: string + mocked_outputs: + additionalProperties: {} + description: Mocked outputs for testing the blueprint. + type: object + name: + description: The human-readable name of the blueprint. + example: AWS Service Manager + type: string + slug: + description: The unique slug identifier of the blueprint. + example: aws-service-manager + type: string + tags: + description: Tags associated with the blueprint. + items: + type: string + type: array + tile_background: + description: The background style of the blueprint tile. + type: string + tile_icon_action_fqn: + description: The fully qualified name of the action used as the tile icon. + type: string + updated_at: + description: The timestamp when the blueprint was last updated. + example: "" + format: date-time + type: string + required: + - slug + - name + - description + - definition + - created_at + - updated_at + type: object + BlueprintData: + description: A blueprint resource. + properties: + attributes: + $ref: "#/components/schemas/BlueprintAttributes" + id: + description: The ID of the blueprint. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/BlueprintDataType" + required: + - id + - type + - attributes + type: object + BlueprintDataType: + description: The resource type for a blueprint. + enum: + - blueprint + example: blueprint + type: string + x-enum-varnames: + - BLUEPRINT + BlueprintMetadataAttributes: + description: The attributes of a blueprint metadata resource. + properties: + created_at: + description: The timestamp when the blueprint was created. + example: "" + format: date-time + type: string + description: + description: A description of what the blueprint does. + example: "" + type: string + name: + description: The human-readable name of the blueprint. + example: AWS Service Manager + type: string + slug: + description: The unique slug identifier of the blueprint. + example: aws-service-manager + type: string + tags: + description: Tags associated with the blueprint. + items: + type: string + type: array + tile_background: + description: The background style of the blueprint tile. + type: string + tile_icon_action_fqn: + description: The fully qualified name of the action used as the tile icon. + type: string + updated_at: + description: The timestamp when the blueprint was last updated. + example: "" + format: date-time + type: string + required: + - slug + - name + - description + - created_at + - updated_at + type: object + BlueprintMetadataData: + description: A blueprint metadata resource. + properties: + attributes: + $ref: "#/components/schemas/BlueprintMetadataAttributes" + id: + description: The ID of the blueprint. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/BlueprintDataType" + required: + - id + - type + - attributes + type: object + BlueprintNativeAction: + additionalProperties: {} + description: An embedded native action in a blueprint. + type: object + BranchCoverageSummaryRequest: + description: Request object for getting code coverage summary for a branch. + properties: + data: + $ref: "#/components/schemas/BranchCoverageSummaryRequestData" + required: + - data + type: object + BranchCoverageSummaryRequestAttributes: + description: Attributes for requesting code coverage summary for a branch. + properties: + branch: + description: The branch name. + example: prod + minLength: 1 + type: string + repository_id: + deprecated: true + description: "Deprecated: use `repository_url` instead. The repository URL." + example: github.com/datadog/shopist + minLength: 1 + type: string + repository_url: + description: The repository URL. Accepts a full URL with or without a scheme (for example, `https://github.com/org/repo` or `github.com/org/repo`). + example: https://github.com/datadog/shopist + minLength: 1 + type: string + required: + - branch + type: object + BranchCoverageSummaryRequestData: + description: Data object for branch summary request. + properties: + attributes: + $ref: "#/components/schemas/BranchCoverageSummaryRequestAttributes" + type: + $ref: "#/components/schemas/BranchCoverageSummaryRequestType" + required: + - type + - attributes + type: object + BranchCoverageSummaryRequestType: + description: JSON:API type for branch coverage summary request. The value must always be `ci_app_coverage_branch_summary_request`. + enum: + - ci_app_coverage_branch_summary_request + example: ci_app_coverage_branch_summary_request + type: string + x-enum-varnames: + - CI_APP_COVERAGE_BRANCH_SUMMARY_REQUEST + Budget: + description: A budget. + properties: + attributes: + $ref: "#/components/schemas/BudgetAttributes" + id: + description: The id of the budget. + type: string + type: + description: The type of the object, must be `budget`. + example: "" + type: string + required: + - type + type: object + BudgetArray: + description: An array of budgets. + example: + data: + - attributes: + created_at: 1741011342772 + created_by: user1 + end_month: 202502 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1741011342772 + updated_by: user2 + id: "00000000-0a0a-0a0a-aaa0-00000000000a" + type: budget + properties: + data: + description: The `BudgetArray` `data`. + items: + $ref: "#/components/schemas/Budget" + type: array + required: + - data + type: object + BudgetAttributes: + description: The attributes of a budget. + properties: + costs: + $ref: "#/components/schemas/BudgetAttributesCosts" + description: Aggregated cost data for the budget. Present only when `actual=true` or `forecast=true` is requested. + costs_period_end: + description: The end of the period used to compute cost data, in milliseconds since epoch. + format: int64 + type: integer + costs_period_start: + description: The start of the period used to compute cost data, in milliseconds since epoch. + format: int64 + type: integer + costs_unit: + $ref: "#/components/schemas/BudgetAttributesCostsUnit" + description: The unit used for all cost values in the response. + created_at: + description: The timestamp when the budget was created. + example: 1738258683590 + format: int64 + type: integer + created_by: + description: The id of the user that created the budget. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + end_month: + description: The month when the budget ends. + example: 202502 + format: int64 + type: integer + entries: + description: The list of monthly budget entries. + items: + $ref: "#/components/schemas/BudgetWithEntriesDataAttributesEntriesItems" + type: array + metrics_query: + description: The cost query used to track against the budget. + example: aws.cost.amortized{service:ec2} by {service} + type: string + name: + description: The name of the budget. + example: my budget + type: string + org_id: + description: The id of the org the budget belongs to. + example: 123 + format: int64 + type: integer + start_month: + description: The month when the budget starts. + example: 202501 + format: int64 + type: integer + total_amount: + description: The sum of all budget entries' amounts. + example: 1000 + format: double + type: number + updated_at: + description: The timestamp when the budget was last updated. + example: 1738258683590 + format: int64 + type: integer + updated_by: + description: The id of the user that created the budget. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + type: object + BudgetAttributesCosts: + description: Aggregated cost data for the budget over the requested period. + properties: + actual: + description: The total actual cost. Present only when `actual=true` is requested. + format: double + nullable: true + type: number + amount: + description: The total budgeted amount over the requested period. + format: double + nullable: true + type: number + forecast: + description: The total forecast cost, with any custom forecast overrides applied. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + ootb_forecast: + description: The out-of-the-box ML forecast before custom overrides. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + type: object + BudgetAttributesCostsUnit: + description: The unit used for all cost values in the response. + properties: + family: + description: The unit family (for example, `currency`). + type: string + id: + description: The unique identifier for the unit. + type: string + name: + description: The full name of the unit. + type: string + plural: + description: The plural form of the unit name. + type: string + scale_factor: + description: The scale factor applied to raw cost values. + format: double + type: number + short_name: + description: The abbreviated unit name. + type: string + type: object + BudgetValidationRequest: + description: The request object for validating a budget configuration before creating or updating it. + example: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 500 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: "1" + type: budget + properties: + data: + $ref: "#/components/schemas/BudgetValidationRequestData" + type: object + BudgetValidationRequestData: + description: The data object for a budget validation request, containing the resource type, ID, and budget attributes to validate. + properties: + attributes: + $ref: "#/components/schemas/BudgetWithEntriesDataAttributes" + id: + description: The unique identifier of the budget to validate. + type: string + type: + $ref: "#/components/schemas/BudgetWithEntriesDataType" + required: + - type + type: object + BudgetValidationResponse: + description: The response object for a budget validation request, containing the validation result data. + example: + data: + attributes: + errors: [] + valid: true + id: budget_validation + type: budget_validation + properties: + data: + $ref: "#/components/schemas/BudgetValidationResponseData" + type: object + BudgetValidationResponseData: + description: The data object for a budget validation response, containing the resource type, ID, and validation attributes. + properties: + attributes: + $ref: "#/components/schemas/BudgetValidationResponseDataAttributes" + id: + description: The unique identifier of the budget being validated. + type: string + type: + $ref: "#/components/schemas/BudgetValidationResponseDataType" + required: + - type + type: object + BudgetValidationResponseDataAttributes: + description: The attributes of a budget validation response, including any validation errors and the validity status. + properties: + errors: + description: A list of validation error messages for the budget. + items: + description: A validation error message. + type: string + type: array + valid: + description: Whether the budget configuration is valid. + type: boolean + type: object + BudgetValidationResponseDataType: + default: budget_validation + description: Budget validation resource type. + enum: + - budget_validation + example: budget_validation + type: string + x-enum-varnames: + - BUDGET_VALIDATION + BudgetWithEntries: + description: The definition of the `BudgetWithEntries` object. + properties: + data: + $ref: "#/components/schemas/BudgetWithEntriesData" + type: object + BudgetWithEntriesData: + description: A budget and all its entries. + properties: + attributes: + $ref: "#/components/schemas/BudgetAttributes" + id: + description: The `BudgetWithEntriesData` `id`. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + type: + description: The type of the object, must be `budget`. + example: "" + type: string + type: object + BudgetWithEntriesDataAttributes: + description: The attributes of a budget including all its monthly entries. + properties: + created_at: + description: The timestamp when the budget was created. + format: int64 + type: integer + created_by: + description: The ID of the user that created the budget. + type: string + end_month: + description: The month when the budget ends, in YYYYMM format. + format: int64 + type: integer + entries: + description: The list of monthly budget entries. + items: + $ref: "#/components/schemas/BudgetWithEntriesDataAttributesEntriesItems" + type: array + metrics_query: + description: The cost query used to track spending against the budget. + type: string + name: + description: The name of the budget. + type: string + org_id: + description: The ID of the organization the budget belongs to. + format: int64 + type: integer + start_month: + description: The month when the budget starts, in YYYYMM format. + format: int64 + type: integer + total_amount: + description: The total budget amount across all entries. + format: double + type: number + updated_at: + description: The timestamp when the budget was last updated. + format: int64 + type: integer + updated_by: + description: The ID of the user that last updated the budget. + type: string + type: object + BudgetWithEntriesDataAttributesEntriesItems: + description: A single monthly budget entry defining the allocated amount and optional tag filters for a specific month. + properties: + amount: + description: The budgeted amount for this entry. + format: double + type: number + costs: + $ref: "#/components/schemas/BudgetWithEntriesDataAttributesEntriesItemsCosts" + description: Cost data for this entry. Present only when `actual=true` or `forecast=true` is requested. + month: + description: The month this budget entry applies to, in YYYYMM format. + format: int64 + type: integer + tag_filters: + description: The list of tag filters that scope this budget entry to specific resources. + items: + $ref: "#/components/schemas/BudgetWithEntriesDataAttributesEntriesItemsTagFiltersItems" + type: array + type: object + BudgetWithEntriesDataAttributesEntriesItemsCosts: + description: Cost data for a single budget entry. + properties: + actual: + description: The actual cost for this entry. Present only when `actual=true` is requested. + format: double + nullable: true + type: number + amount: + description: The budgeted amount for this entry. + format: double + nullable: true + type: number + custom_forecast: + description: |- + The custom forecast override for this entry. `null` when `forecast=true` is requested but no custom forecast has been set for this entry's month. A numeric value, including `0`, indicates an explicit custom forecast override. Omitted when `forecast=false` or the feature is not available for the organization. + format: double + nullable: true + type: number + forecast: + description: The final forecast for this entry, with any custom forecast override applied. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + ootb_forecast: + description: The out-of-the-box ML forecast for this entry, before custom overrides. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + type: object + BudgetWithEntriesDataAttributesEntriesItemsTagFiltersItems: + description: A tag filter used to scope a budget entry to specific resource tags. + properties: + tag_key: + description: The tag key to filter on. + type: string + tag_value: + description: The tag value to filter on. + type: string + type: object + BudgetWithEntriesDataType: + default: budget + description: Budget resource type. + enum: + - budget + example: budget + type: string + x-enum-varnames: + - BUDGET + BulkDeleteAppsDatastoreItemsRequest: + description: Request to delete items from a datastore. + properties: + data: + $ref: "#/components/schemas/BulkDeleteAppsDatastoreItemsRequestData" + type: object + BulkDeleteAppsDatastoreItemsRequestData: + description: Data wrapper containing the data needed to delete items from a datastore. + properties: + attributes: + $ref: "#/components/schemas/BulkDeleteAppsDatastoreItemsRequestDataAttributes" + id: + description: ID for the datastore of the items to delete. + type: string + type: + $ref: "#/components/schemas/BulkDeleteAppsDatastoreItemsRequestDataType" + required: + - type + type: object + BulkDeleteAppsDatastoreItemsRequestDataAttributes: + description: Attributes of request data to delete items from a datastore. + properties: + item_keys: + description: List of primary keys identifying items to delete from datastore. Up to 100 items can be deleted in a single request. + items: + description: A primary key identifying a datastore item to delete. + type: string + maxItems: 100 + type: array + type: object + BulkDeleteAppsDatastoreItemsRequestDataType: + default: items + description: Items resource type. + enum: + - items + example: items + type: string + x-enum-varnames: + - ITEMS + BulkPutAppsDatastoreItemsRequest: + description: Request to insert multiple items into a datastore in a single operation. + properties: + data: + $ref: "#/components/schemas/BulkPutAppsDatastoreItemsRequestData" + type: object + BulkPutAppsDatastoreItemsRequestData: + description: Data wrapper containing the items to insert and their configuration for the bulk insert operation. + properties: + attributes: + $ref: "#/components/schemas/BulkPutAppsDatastoreItemsRequestDataAttributes" + type: + $ref: "#/components/schemas/DatastoreItemsDataType" + required: + - type + type: object + BulkPutAppsDatastoreItemsRequestDataAttributes: + description: Configuration for bulk inserting multiple items into a datastore. + properties: + conflict_mode: + $ref: "#/components/schemas/DatastoreItemConflictMode" + values: + $ref: "#/components/schemas/DatastoreItemValues" + required: + - values + type: object + CIAppAggregateBucketValue: + description: A bucket value, can either be a timeseries or a single value. + oneOf: + - $ref: "#/components/schemas/CIAppAggregateBucketValueSingleString" + - $ref: "#/components/schemas/CIAppAggregateBucketValueSingleNumber" + - $ref: "#/components/schemas/CIAppAggregateBucketValueTimeseries" + CIAppAggregateBucketValueSingleNumber: + description: A single number value. + format: double + type: number + CIAppAggregateBucketValueSingleString: + description: A single string value. + type: string + CIAppAggregateBucketValueTimeseries: + description: A timeseries array. + items: + $ref: "#/components/schemas/CIAppAggregateBucketValueTimeseriesPoint" + type: array + x-generate-alias-as-model: true + CIAppAggregateBucketValueTimeseriesPoint: + description: A timeseries point. + properties: + time: + description: The time value for this point. + example: "2020-06-08T11:55:00.123Z" + format: date-time + type: string + value: + description: The value for this point. + example: 19 + format: double + type: number + type: object + CIAppAggregateSort: + description: |- + A sort rule. The `aggregation` field is required when `type` is `measure`. + example: {"aggregation": "count", "order": "asc"} + properties: + aggregation: + $ref: "#/components/schemas/CIAppAggregationFunction" + metric: + description: The metric to sort by (only used for `type=measure`). + example: "@duration" + type: string + order: + $ref: "#/components/schemas/CIAppSortOrder" + type: + $ref: "#/components/schemas/CIAppAggregateSortType" + type: object + CIAppAggregateSortType: + default: "alphabetical" + description: The type of sorting algorithm. + enum: ["alphabetical", "measure"] + type: string + x-enum-varnames: ["ALPHABETICAL", "MEASURE"] + CIAppAggregationFunction: + description: An aggregation function. + enum: ["count", "cardinality", "pc75", "pc90", "pc95", "pc98", "pc99", "sum", "min", "max", "avg", "median", "latest", "earliest", "most_frequent", "delta"] + example: "pc90" + type: string + x-enum-varnames: ["COUNT", "CARDINALITY", "PERCENTILE_75", "PERCENTILE_90", "PERCENTILE_95", "PERCENTILE_98", "PERCENTILE_99", "SUM", "MIN", "MAX", "AVG", "MEDIAN", "LATEST", "EARLIEST", "MOST_FREQUENT", "DELTA"] + CIAppCIError: + description: Contains information of the CI error. + nullable: true + properties: + domain: + $ref: "#/components/schemas/CIAppCIErrorDomain" + message: + description: Error message. + maxLength: 5000 + nullable: true + type: string + stack: + description: The stack trace of the reported errors. + nullable: true + type: string + type: + description: Short description of the error type. + maxLength: 100 + nullable: true + type: string + type: object + CIAppCIErrorDomain: + description: Error category used to differentiate between issues related to the developer or provider environments. + enum: [provider, user, unknown] + type: string + x-enum-varnames: ["PROVIDER", "USER", "UNKNOWN"] + CIAppCompute: + description: A compute rule to compute metrics or timeseries. + properties: + aggregation: + $ref: "#/components/schemas/CIAppAggregationFunction" + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points. + example: "5m" + type: string + metric: + description: The metric to use. + example: "@duration" + type: string + type: + $ref: "#/components/schemas/CIAppComputeType" + required: + - aggregation + type: object + CIAppComputeType: + default: "total" + description: The type of compute. + enum: ["timeseries", "total"] + type: string + x-enum-varnames: ["TIMESERIES", "TOTAL"] + CIAppComputes: + additionalProperties: + $ref: "#/components/schemas/CIAppAggregateBucketValue" + description: A map of the metric name to value for regular compute, or a list of values for a timeseries. + type: object + CIAppCreatePipelineEventRequest: + description: Request object. + properties: + data: + $ref: "#/components/schemas/CIAppCreatePipelineEventRequestDataSingleOrArray" + type: object + CIAppCreatePipelineEventRequestAttributes: + description: Attributes of the pipeline event to create. + properties: + env: + description: The Datadog environment. + type: string + provider_name: + description: The name of the CI provider. By default, this is "custom". + type: string + resource: + $ref: "#/components/schemas/CIAppCreatePipelineEventRequestAttributesResource" + service: + description: If the CI provider is SaaS, use this to differentiate between instances. + type: string + required: + - resource + type: object + CIAppCreatePipelineEventRequestAttributesResource: + description: Details of the CI pipeline event. + example: "Details TBD" + oneOf: + - $ref: "#/components/schemas/CIAppPipelineEventPipeline" + - $ref: "#/components/schemas/CIAppPipelineEventStage" + - $ref: "#/components/schemas/CIAppPipelineEventJob" + - $ref: "#/components/schemas/CIAppPipelineEventStep" + CIAppCreatePipelineEventRequestData: + description: Data of the pipeline event to create. + properties: + attributes: + $ref: "#/components/schemas/CIAppCreatePipelineEventRequestAttributes" + type: + $ref: "#/components/schemas/CIAppCreatePipelineEventRequestDataType" + type: object + CIAppCreatePipelineEventRequestDataArray: + description: Array of pipeline events to create in batch. + items: + $ref: "#/components/schemas/CIAppCreatePipelineEventRequestData" + type: array + CIAppCreatePipelineEventRequestDataSingleOrArray: + description: Data of the pipeline events to create. + oneOf: + - $ref: "#/components/schemas/CIAppCreatePipelineEventRequestData" + - $ref: "#/components/schemas/CIAppCreatePipelineEventRequestDataArray" + CIAppCreatePipelineEventRequestDataType: + default: cipipeline_resource_request + description: Type of the event. + enum: ["cipipeline_resource_request"] + example: "cipipeline_resource_request" + type: string + x-enum-varnames: ["CIPIPELINE_RESOURCE_REQUEST"] + CIAppEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from CI Visibility test events. + example: {"customAttribute": 123, "duration": 2345} + type: object + tags: + $ref: "#/components/schemas/TagsEventAttribute" + test_level: + $ref: "#/components/schemas/CIAppTestLevel" + type: object + CIAppGitHubAccountAttributes: + description: Attributes describing a GitHub account's CI Visibility opt-in status. + properties: + account: + description: The GitHub account (organization or user) name. + example: datadog + type: string + enabled: + description: Whether CI Visibility is enabled at the account level. + example: true + type: boolean + host: + description: The GitHub host (`github.com` or a GitHub Enterprise Server (GHES) hostname) this account belongs to. + example: github.com + type: string + repo_count: + description: The number of repositories known for this account. + example: 12 + format: int64 + type: integer + repositories: + description: The repositories belonging to this account, with their individual opt-in status. + items: + $ref: "#/components/schemas/CIAppGitHubAccountRepository" + type: array + type: object + CIAppGitHubAccountData: + description: Data object for a GitHub account. + properties: + attributes: + $ref: "#/components/schemas/CIAppGitHubAccountAttributes" + id: + description: |- + The account's unique identifier, in the form `/` + (for example `github.com/datadog`). + example: github.com/datadog + type: string + type: + $ref: "#/components/schemas/CIAppGitHubAccountType" + required: + - id + - type + - attributes + type: object + CIAppGitHubAccountRepository: + description: A GitHub repository within a GitHub account, and its CI Visibility opt-in status. + properties: + enabled: + description: Whether CI Visibility is enabled for this repository. + example: true + type: boolean + name: + description: The repository name. + example: shopist + type: string + type: object + CIAppGitHubAccountResponse: + description: Response object containing a single GitHub account's CI Visibility opt-in status. + properties: + data: + $ref: "#/components/schemas/CIAppGitHubAccountData" + required: + - data + type: object + CIAppGitHubAccountType: + description: |- + JSON:API type for the GitHub account resource. + The value must always be `ci_github_account`. + enum: + - ci_github_account + example: ci_github_account + type: string + x-enum-varnames: + - CI_GITHUB_ACCOUNT + CIAppGitHubAccountUpdateRequest: + description: Request object for updating a GitHub account's CI Visibility opt-in status. + properties: + data: + $ref: "#/components/schemas/CIAppGitHubAccountUpdateRequestData" + required: + - data + type: object + CIAppGitHubAccountUpdateRequestAttributes: + description: |- + Attributes for updating a GitHub account's CI Visibility opt-in status. + At least one of `enabled` or `repository.enabled` must be provided. + properties: + account: + description: The GitHub account (organization or user) name to update, identified by name. + example: datadog + minLength: 1 + type: string + enabled: + description: Whether to enable or disable CI Visibility at the account level. + example: true + type: boolean + host: + description: |- + The GitHub host (`github.com` or a GHES hostname) the account belongs to. Required to disambiguate + when the same account name exists on more than one host. + example: github.com + type: string + repository: + $ref: "#/components/schemas/CIAppGitHubAccountUpdateRequestRepository" + required: + - account + type: object + CIAppGitHubAccountUpdateRequestData: + description: Data object for updating a GitHub account's CI Visibility opt-in status. + properties: + attributes: + $ref: "#/components/schemas/CIAppGitHubAccountUpdateRequestAttributes" + type: + $ref: "#/components/schemas/CIAppGitHubAccountType" + required: + - type + - attributes + type: object + CIAppGitHubAccountUpdateRequestRepository: + description: Repository-level opt-in change to apply, identified by name. + properties: + enabled: + description: Whether to enable or disable CI Visibility for this repository. + example: true + type: boolean + name: + description: The repository name to update. + example: shopist + minLength: 1 + type: string + required: + - name + - enabled + type: object + CIAppGitHubAccountsResponse: + description: Response object containing a list of GitHub accounts and their CI Visibility opt-in status. + properties: + data: + items: + $ref: "#/components/schemas/CIAppGitHubAccountData" + type: array + required: + - data + type: object + CIAppGitInfo: + description: |- + If pipelines are triggered due to actions to a Git repository, then all payloads must contain this. + Note that either `tag` or `branch` has to be provided, but not both. + nullable: true + properties: + author_email: + description: The commit author email. + example: author@example.com + type: string + author_name: + description: The commit author name. + example: John Doe + nullable: true + type: string + author_time: + description: The commit author timestamp in RFC3339 format. + example: "2023-05-31T15:30:00Z" + nullable: true + type: string + branch: + description: The branch name (if a tag use the tag parameter). + example: feature-1 + nullable: true + type: string + commit_time: + description: The commit timestamp in RFC3339 format. + example: "2023-05-31T15:30:00Z" + nullable: true + type: string + committer_email: + description: The committer email. + example: committer@example.com + nullable: true + type: string + committer_name: + description: The committer name. + nullable: true + type: string + default_branch: + description: The Git repository's default branch. + example: main + nullable: true + type: string + message: + description: The commit message. + example: Instrumenting tests with CI Visibility. + nullable: true + type: string + repository_url: + description: The URL of the repository. + example: https://github.com/username/repository + type: string + sha: + description: The git commit SHA. + example: da39a3ee5e6b4b0d3255bfef95601890afd80709 + pattern: "^[a-fA-F0-9]{40}$" + type: string + tag: + description: The tag name (if a branch use the branch parameter). + example: v1.0.0 + nullable: true + type: string + required: + - repository_url + - sha + - author_email + type: object + CIAppGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + At most, 100 buckets are allowed, the number of buckets is `(max - min)/interval`. + properties: + interval: + description: The bin size of the histogram buckets. + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out). + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out). + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + CIAppGroupByMissing: + description: The value to use for logs that don't have the facet used to group-by. + oneOf: + - $ref: "#/components/schemas/CIAppGroupByMissingString" + - $ref: "#/components/schemas/CIAppGroupByMissingNumber" + CIAppGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + CIAppGroupByMissingString: + description: The missing value to use if there is a string valued facet. + type: string + CIAppGroupByTotal: + default: false + description: |- + A resulting object to put the given computes in over all the matching records. + oneOf: + - $ref: "#/components/schemas/CIAppGroupByTotalBoolean" + - $ref: "#/components/schemas/CIAppGroupByTotalString" + - $ref: "#/components/schemas/CIAppGroupByTotalNumber" + CIAppGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total". + type: boolean + CIAppGroupByTotalNumber: + description: A number to use as the key value for the total bucket. + format: double + type: number + CIAppGroupByTotalString: + description: A string to use as the key value for the total bucket. + type: string + CIAppHostInfo: + description: Contains information of the host running the pipeline, stage, job, or step. + nullable: true + properties: + hostname: + description: FQDN of the host. + example: www.example.com + type: string + labels: + description: A list of labels used to select or identify the node. + example: + - ubuntu-18.04 + - n2.large + items: + description: A label used to select or identify the node. + type: string + type: array + name: + description: Name for the host. + type: string + workspace: + description: The path where the code is checked out. + example: /home/workspace/code/my-repo + type: string + type: object + CIAppPipelineEvent: + description: Object description of a pipeline event after being processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/CIAppPipelineEventAttributes" + id: + description: Unique ID of the event. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/CIAppPipelineEventTypeName" + type: object + CIAppPipelineEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from CI Visibility pipeline events. + example: {"customAttribute": 123, "duration": 2345} + type: object + ci_level: + $ref: "#/components/schemas/CIAppPipelineLevel" + tags: + $ref: "#/components/schemas/TagsEventAttribute" + type: object + CIAppPipelineEventFinishedJob: + description: Details of a finished CI job. + properties: + dependencies: + description: A list of job IDs that this job depends on. + example: ["f7e6a006-a029-46c3-b0cc-742c9d7d363b", "c8a69849-3c3b-4721-8b33-3e8ec2df1ebe"] + items: + description: A list of job IDs. + type: string + nullable: true + type: array + end: + description: Time when the job run finished. The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + error: + $ref: "#/components/schemas/CIAppCIError" + git: + $ref: "#/components/schemas/CIAppGitInfo" + id: + description: The UUID for the job. It has to be unique within each pipeline execution. + example: c865bad4-de82-44b8-ade7-2c987528eb54 + type: string + level: + $ref: "#/components/schemas/CIAppPipelineEventJobLevel" + metrics: + $ref: "#/components/schemas/CIAppPipelineEventMetrics" + name: + description: The name for the job. + example: test + type: string + node: + $ref: "#/components/schemas/CIAppHostInfo" + parameters: + $ref: "#/components/schemas/CIAppPipelineEventParameters" + pipeline_name: + description: The parent pipeline name. + example: Build + type: string + pipeline_unique_id: + description: The parent pipeline UUID. + example: "76b572af-a078-42b2-a08a-cc28f98b944f" + type: string + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + stage_id: + description: The parent stage UUID (if applicable). + nullable: true + type: string + stage_name: + description: The parent stage name (if applicable). + nullable: true + type: string + start: + description: |- + Time when the job run instance started (it should not include any queue time). + The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CIAppPipelineEventJobStatus" + tags: + $ref: "#/components/schemas/CIAppPipelineEventTags" + url: + description: The URL to look at the job in the CI provider UI. + example: https://ci-platform.com/job/your-job-name/build/123 + type: string + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - end + - status + - url + type: object + CIAppPipelineEventFinishedPipeline: + description: Details of a finished pipeline. + properties: + end: + description: Time when the pipeline run finished. It cannot be older than 18 hours in the past from the current time. The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + error: + $ref: "#/components/schemas/CIAppCIError" + git: + $ref: "#/components/schemas/CIAppGitInfo" + is_manual: + description: Whether or not the pipeline was triggered manually by the user. + example: false + nullable: true + type: boolean + is_resumed: + description: Whether or not the pipeline was resumed after being blocked. + example: false + nullable: true + type: boolean + level: + $ref: "#/components/schemas/CIAppPipelineEventPipelineLevel" + metrics: + $ref: "#/components/schemas/CIAppPipelineEventMetrics" + name: + description: Name of the pipeline. All pipeline runs for the builds should have the same name. + example: Deploy to AWS + type: string + node: + $ref: "#/components/schemas/CIAppHostInfo" + parameters: + $ref: "#/components/schemas/CIAppPipelineEventParameters" + parent_pipeline: + $ref: "#/components/schemas/CIAppPipelineEventParentPipeline" + partial_retry: + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one + which only runs a subset of the original jobs. + example: false + type: boolean + pipeline_id: + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. + example: "#023" + type: string + previous_attempt: + $ref: "#/components/schemas/CIAppPipelineEventPreviousPipeline" + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + start: + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CIAppPipelineEventPipelineStatus" + tags: + $ref: "#/components/schemas/CIAppPipelineEventTags" + unique_id: + description: |- + UUID of the pipeline run. The ID has to be unique across retries and pipelines, + including partial retries. + example: "3eacb6f3-ff04-4e10-8a9c-46e6d054024a" + type: string + url: + description: The URL to look at the pipeline in the CI provider UI. + example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 + type: string + required: + - level + - unique_id + - name + - url + - start + - end + - status + - partial_retry + type: object + CIAppPipelineEventInProgressJob: + description: Details of a running CI job. + properties: + dependencies: + description: A list of job IDs that this job depends on. + example: ["f7e6a006-a029-46c3-b0cc-742c9d7d363b", "c8a69849-3c3b-4721-8b33-3e8ec2df1ebe"] + items: + description: A list of job IDs. + type: string + nullable: true + type: array + error: + $ref: "#/components/schemas/CIAppCIError" + git: + $ref: "#/components/schemas/CIAppGitInfo" + id: + description: The UUID for the job. It must match the ID of the corresponding finished job. + example: c865bad4-de82-44b8-ade7-2c987528eb54 + type: string + level: + $ref: "#/components/schemas/CIAppPipelineEventJobLevel" + metrics: + $ref: "#/components/schemas/CIAppPipelineEventMetrics" + name: + description: The name for the job. + example: test + type: string + node: + $ref: "#/components/schemas/CIAppHostInfo" + parameters: + $ref: "#/components/schemas/CIAppPipelineEventParameters" + pipeline_name: + description: The parent pipeline name. + example: Build + type: string + pipeline_unique_id: + description: The parent pipeline UUID. + example: "76b572af-a078-42b2-a08a-cc28f98b944f" + type: string + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + stage_id: + description: The parent stage UUID (if applicable). + nullable: true + type: string + stage_name: + description: The parent stage name (if applicable). + nullable: true + type: string + start: + description: |- + Time when the job run instance started (it should not include any queue time). + The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CIAppPipelineEventJobInProgressStatus" + tags: + $ref: "#/components/schemas/CIAppPipelineEventTags" + url: + description: The URL to look at the job in the CI provider UI. + example: https://ci-platform.com/job/your-job-name/build/123 + type: string + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - status + - url + type: object + CIAppPipelineEventInProgressPipeline: + description: Details of a running pipeline. + properties: + error: + $ref: "#/components/schemas/CIAppCIError" + git: + $ref: "#/components/schemas/CIAppGitInfo" + is_manual: + description: Whether or not the pipeline was triggered manually by the user. + example: false + nullable: true + type: boolean + is_resumed: + description: Whether or not the pipeline was resumed after being blocked. + example: false + nullable: true + type: boolean + level: + $ref: "#/components/schemas/CIAppPipelineEventPipelineLevel" + metrics: + $ref: "#/components/schemas/CIAppPipelineEventMetrics" + name: + description: Name of the pipeline. All pipeline runs for the builds should have the same name. + example: Deploy to AWS + type: string + node: + $ref: "#/components/schemas/CIAppHostInfo" + parameters: + $ref: "#/components/schemas/CIAppPipelineEventParameters" + parent_pipeline: + $ref: "#/components/schemas/CIAppPipelineEventParentPipeline" + partial_retry: + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one + which only runs a subset of the original jobs. + example: false + type: boolean + pipeline_id: + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. + example: "#023" + type: string + previous_attempt: + $ref: "#/components/schemas/CIAppPipelineEventPreviousPipeline" + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + start: + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CIAppPipelineEventPipelineInProgressStatus" + tags: + $ref: "#/components/schemas/CIAppPipelineEventTags" + unique_id: + description: |- + UUID of the pipeline run. The ID has to be the same as the finished pipeline. + example: "3eacb6f3-ff04-4e10-8a9c-46e6d054024a" + type: string + url: + description: The URL to look at the pipeline in the CI provider UI. + example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 + type: string + required: + - level + - unique_id + - name + - url + - start + - status + - partial_retry + type: object + CIAppPipelineEventJob: + description: Details of a CI job. + oneOf: + - $ref: "#/components/schemas/CIAppPipelineEventFinishedJob" + - $ref: "#/components/schemas/CIAppPipelineEventInProgressJob" + CIAppPipelineEventJobInProgressStatus: + description: The in-progress status of the job. + enum: ["running"] + example: running + type: string + x-enum-varnames: ["RUNNING"] + CIAppPipelineEventJobLevel: + default: job + description: Used to distinguish between pipelines, stages, jobs, and steps. + enum: ["job"] + example: "job" + type: string + x-enum-varnames: ["JOB"] + CIAppPipelineEventJobStatus: + description: The final status of the job. + enum: ["success", "error", "canceled", "skipped"] + example: success + type: string + x-enum-varnames: ["SUCCESS", "ERROR", "CANCELED", "SKIPPED"] + CIAppPipelineEventMetrics: + description: A list of user-defined metrics. The metrics must follow the `key:value` pattern and the value must be numeric. + example: + - bundle_size:370 + - build_time:50021 + items: + description: Metrics in the form of `key:value`. The value needs to be numeric. + type: string + nullable: true + type: array + CIAppPipelineEventParameters: + additionalProperties: + type: string + description: A map of key-value parameters or environment variables that were defined for the pipeline. + example: + LOG_LEVEL: debug + nullable: true + type: object + CIAppPipelineEventParentPipeline: + description: If the pipeline is triggered as child of another pipeline, this should contain the details of the parent pipeline. + nullable: true + properties: + id: + description: UUID of a pipeline. + example: 93bfeb70-af47-424d-908a-948d3f08e37f + type: string + url: + description: The URL to look at the pipeline in the CI provider UI. + example: https://ci-platform.com/pipelines/123456789 + type: string + required: + - id + type: object + CIAppPipelineEventPipeline: + description: Details of the top level pipeline, build, or workflow of your CI. + oneOf: + - $ref: "#/components/schemas/CIAppPipelineEventFinishedPipeline" + - $ref: "#/components/schemas/CIAppPipelineEventInProgressPipeline" + CIAppPipelineEventPipelineInProgressStatus: + description: The in progress status of the pipeline. + enum: ["running"] + example: running + type: string + x-enum-varnames: ["RUNNING"] + CIAppPipelineEventPipelineLevel: + default: pipeline + description: Used to distinguish between pipelines, stages, jobs, and steps. + enum: ["pipeline"] + example: "pipeline" + type: string + x-enum-varnames: ["PIPELINE"] + CIAppPipelineEventPipelineStatus: + description: The final status of the pipeline. + enum: ["success", "error", "canceled", "skipped", "blocked"] + example: success + type: string + x-enum-varnames: ["SUCCESS", "ERROR", "CANCELED", "SKIPPED", "BLOCKED"] + CIAppPipelineEventPreviousPipeline: + description: If the pipeline is a retry, this should contain the details of the previous attempt. + nullable: true + properties: + id: + description: UUID of a pipeline. + example: 93bfeb70-af47-424d-908a-948d3f08e37f + type: string + url: + description: The URL to look at the pipeline in the CI provider UI. + example: https://ci-platform.com/pipelines/123456789 + type: string + required: + - id + type: object + CIAppPipelineEventStage: + description: Details of a CI stage. + properties: + dependencies: + description: A list of stage IDs that this stage depends on. + example: ["f7e6a006-a029-46c3-b0cc-742c9d7d363b", "c8a69849-3c3b-4721-8b33-3e8ec2df1ebe"] + items: + description: A list of stage IDs. + type: string + nullable: true + type: array + end: + description: Time when the stage run finished. The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + error: + $ref: "#/components/schemas/CIAppCIError" + git: + $ref: "#/components/schemas/CIAppGitInfo" + id: + description: UUID for the stage. It has to be unique at least in the pipeline scope. + example: 562bdbbb-7cab-48c8-851c-b24ca14628bf + type: string + level: + $ref: "#/components/schemas/CIAppPipelineEventStageLevel" + metrics: + $ref: "#/components/schemas/CIAppPipelineEventMetrics" + name: + description: The name for the stage. + example: build + type: string + node: + $ref: "#/components/schemas/CIAppHostInfo" + parameters: + $ref: "#/components/schemas/CIAppPipelineEventParameters" + pipeline_name: + description: The parent pipeline name. + example: Build + type: string + pipeline_unique_id: + description: The parent pipeline UUID. + example: "76b572af-a078-42b2-a08a-cc28f98b944f" + type: string + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + start: + description: Time when the stage run started (it should not include any queue time). The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CIAppPipelineEventStageStatus" + tags: + $ref: "#/components/schemas/CIAppPipelineEventTags" + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - end + - status + type: object + CIAppPipelineEventStageLevel: + default: stage + description: Used to distinguish between pipelines, stages, jobs and steps. + enum: ["stage"] + example: "stage" + type: string + x-enum-varnames: ["STAGE"] + CIAppPipelineEventStageStatus: + description: The final status of the stage. + enum: ["success", "error", "canceled", "skipped"] + example: success + type: string + x-enum-varnames: ["SUCCESS", "ERROR", "CANCELED", "SKIPPED"] + CIAppPipelineEventStep: + description: Details of a CI step. + properties: + end: + description: Time when the step run finished. The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + error: + $ref: "#/components/schemas/CIAppCIError" + git: + $ref: "#/components/schemas/CIAppGitInfo" + id: + description: UUID for the step. It has to be unique within each pipeline execution. + example: c2d517a8-4f3a-4b41-b4ae-69df0c864c79 + type: string + job_id: + description: The parent job UUID (if applicable). + nullable: true + type: string + job_name: + description: The parent job name (if applicable). + nullable: true + type: string + level: + $ref: "#/components/schemas/CIAppPipelineEventStepLevel" + metrics: + $ref: "#/components/schemas/CIAppPipelineEventMetrics" + name: + description: The name for the step. + example: test-server + type: string + node: + $ref: "#/components/schemas/CIAppHostInfo" + parameters: + $ref: "#/components/schemas/CIAppPipelineEventParameters" + pipeline_name: + description: The parent pipeline name. + example: Build + type: string + pipeline_unique_id: + description: The parent pipeline UUID. + example: "76b572af-a078-42b2-a08a-cc28f98b944f" + type: string + stage_id: + description: The parent stage UUID (if applicable). + nullable: true + type: string + stage_name: + description: The parent stage name (if applicable). + nullable: true + type: string + start: + description: Time when the step run started. The time format must be RFC3339. + example: "2023-05-31T15:30:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CIAppPipelineEventStepStatus" + tags: + $ref: "#/components/schemas/CIAppPipelineEventTags" + url: + description: The URL to look at the step in the CI provider UI. + nullable: true + type: string + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - end + - status + type: object + CIAppPipelineEventStepLevel: + default: step + description: Used to distinguish between pipelines, stages, jobs and steps. + enum: ["step"] + example: "step" + type: string + x-enum-varnames: ["STEP"] + CIAppPipelineEventStepStatus: + description: The final status of the step. + enum: ["success", "error"] + example: success + type: string + x-enum-varnames: ["SUCCESS", "ERROR"] + CIAppPipelineEventTags: + description: A list of user-defined tags. The tags must follow the `key:value` pattern. + example: + - team:backend + - type:deployment + items: + description: Tags in the form of `key:value`. + type: string + nullable: true + type: array + CIAppPipelineEventTypeName: + description: Type of the event. + enum: ["cipipeline"] + example: "cipipeline" + type: string + x-enum-varnames: ["CIPIPELINE"] + CIAppPipelineEventsRequest: + description: The request for a pipelines search. + properties: + filter: + $ref: "#/components/schemas/CIAppPipelinesQueryFilter" + options: + $ref: "#/components/schemas/CIAppQueryOptions" + page: + $ref: "#/components/schemas/CIAppQueryPageOptions" + sort: + $ref: "#/components/schemas/CIAppSort" + type: object + CIAppPipelineEventsResponse: + description: Response object with all pipeline events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: "#/components/schemas/CIAppPipelineEvent" + type: array + links: + $ref: "#/components/schemas/CIAppResponseLinks" + meta: + $ref: "#/components/schemas/CIAppResponseMetadataWithPagination" + type: object + CIAppPipelineLevel: + description: Pipeline execution level. + enum: [pipeline, stage, job, step, custom] + example: pipeline + type: string + x-enum-varnames: ["PIPELINE", "STAGE", "JOB", "STEP", "CUSTOM"] + CIAppPipelinesAggregateRequest: + description: The object sent with the request to retrieve aggregation buckets of pipeline events from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: "#/components/schemas/CIAppCompute" + type: array + filter: + $ref: "#/components/schemas/CIAppPipelinesQueryFilter" + group_by: + description: The rules for the group-by. + items: + $ref: "#/components/schemas/CIAppPipelinesGroupBy" + type: array + options: + $ref: "#/components/schemas/CIAppQueryOptions" + type: object + CIAppPipelinesAggregationBucketsResponse: + description: The query results. + properties: + buckets: + description: The list of matching buckets, one item per bucket. + items: + $ref: "#/components/schemas/CIAppPipelinesBucketResponse" + type: array + type: object + CIAppPipelinesAnalyticsAggregateResponse: + description: The response object for the pipeline events aggregate API endpoint. + properties: + data: + $ref: "#/components/schemas/CIAppPipelinesAggregationBucketsResponse" + links: + $ref: "#/components/schemas/CIAppResponseLinks" + meta: + $ref: "#/components/schemas/CIAppResponseMetadata" + type: object + CIAppPipelinesBucketResponse: + description: Bucket values. + properties: + by: + additionalProperties: + description: The values for each group-by. + description: The key-value pairs for each group-by. + example: {"@ci.provider.name": "gitlab", "@ci.status": "success"} + type: object + computes: + $ref: "#/components/schemas/CIAppComputes" + type: object + CIAppPipelinesGroupBy: + description: A group-by rule. + properties: + facet: + description: The name of the facet to use (required). + example: "@ci.status" + type: string + histogram: + $ref: "#/components/schemas/CIAppGroupByHistogram" + limit: + default: 10 + description: The maximum buckets to return for this group-by. + format: int64 + type: integer + missing: + $ref: "#/components/schemas/CIAppGroupByMissing" + sort: + $ref: "#/components/schemas/CIAppAggregateSort" + total: + $ref: "#/components/schemas/CIAppGroupByTotal" + required: + - facet + type: object + CIAppPipelinesQueryFilter: + description: The search and filter query settings. + properties: + from: + default: "now-15m" + description: The minimum time for the requested events; supports date, math, and regular timestamps (in milliseconds). + example: "now-15m" + type: string + query: + default: "*" + description: The search query following the CI Visibility Explorer search syntax. + example: "@ci.provider.name:github AND @ci.status:error" + type: string + to: + default: "now" + description: The maximum time for the requested events, supports date, math, and regular timestamps (in milliseconds). + example: "now" + type: string + type: object + CIAppQueryOptions: + description: |- + Global query options that are used during the query. + Only supply timezone or time offset, not both. Otherwise, the query fails. + properties: + time_offset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: "UTC" + description: |- + The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: "GMT" + type: string + type: object + CIAppQueryPageOptions: + description: Paging attributes for listing events. + properties: + cursor: + description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + CIAppResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. The request can also be made using the + POST endpoint. + example: "https://app.datadoghq.com/api/v2/ci/tests/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + CIAppResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/CIAppResponseStatus" + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: "#/components/schemas/CIAppWarning" + type: array + type: object + CIAppResponseMetadataWithPagination: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/CIAppResponsePage" + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/CIAppResponseStatus" + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: "#/components/schemas/CIAppWarning" + type: array + type: object + CIAppResponsePage: + description: Paging attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of `page[cursor]`. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + CIAppResponseStatus: + description: The status of the response. + enum: ["done", "timeout"] + example: "done" + type: string + x-enum-varnames: ["DONE", "TIMEOUT"] + CIAppSort: + description: Sort parameters when querying events. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + CIAppSortOrder: + description: The order to use, ascending or descending. + enum: + - "asc" + - "desc" + example: "asc" + type: string + x-enum-varnames: + - "ASCENDING" + - "DESCENDING" + CIAppTestEvent: + description: Object description of test event after being processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/CIAppEventAttributes" + id: + description: Unique ID of the event. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/CIAppTestEventTypeName" + type: object + CIAppTestEventTypeName: + description: Type of the event. + enum: ["citest"] + example: "citest" + type: string + x-enum-varnames: ["CITEST"] + CIAppTestEventsRequest: + description: The request for a tests search. + properties: + filter: + $ref: "#/components/schemas/CIAppTestsQueryFilter" + options: + $ref: "#/components/schemas/CIAppQueryOptions" + page: + $ref: "#/components/schemas/CIAppQueryPageOptions" + sort: + $ref: "#/components/schemas/CIAppSort" + type: object + CIAppTestEventsResponse: + description: Response object with all test events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: "#/components/schemas/CIAppTestEvent" + type: array + links: + $ref: "#/components/schemas/CIAppResponseLinks" + meta: + $ref: "#/components/schemas/CIAppResponseMetadataWithPagination" + type: object + CIAppTestLevel: + description: Test run level. + enum: [session, module, suite, test] + example: test + type: string + x-enum-varnames: ["SESSION", "MODULE", "SUITE", "TEST"] + CIAppTestsAggregateRequest: + description: The object sent with the request to retrieve aggregation buckets of test events from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: "#/components/schemas/CIAppCompute" + type: array + filter: + $ref: "#/components/schemas/CIAppTestsQueryFilter" + group_by: + description: The rules for the group-by. + items: + $ref: "#/components/schemas/CIAppTestsGroupBy" + type: array + options: + $ref: "#/components/schemas/CIAppQueryOptions" + type: object + CIAppTestsAggregationBucketsResponse: + description: The query results. + properties: + buckets: + description: The list of matching buckets, one item per bucket. + items: + $ref: "#/components/schemas/CIAppTestsBucketResponse" + type: array + type: object + CIAppTestsAnalyticsAggregateResponse: + description: The response object for the test events aggregate API endpoint. + properties: + data: + $ref: "#/components/schemas/CIAppTestsAggregationBucketsResponse" + links: + $ref: "#/components/schemas/CIAppResponseLinks" + meta: + $ref: "#/components/schemas/CIAppResponseMetadataWithPagination" + type: object + CIAppTestsBucketResponse: + description: Bucket values. + properties: + by: + additionalProperties: + description: The values for each group-by. + description: The key-value pairs for each group-by. + example: {"@test.service": "web-ui-tests", "@test.status": "skip"} + type: object + computes: + $ref: "#/components/schemas/CIAppComputes" + type: object + CIAppTestsGroupBy: + description: A group-by rule. + properties: + facet: + description: The name of the facet to use (required). + example: "@test.service" + type: string + histogram: + $ref: "#/components/schemas/CIAppGroupByHistogram" + limit: + default: 10 + description: The maximum buckets to return for this group-by. + format: int64 + type: integer + missing: + $ref: "#/components/schemas/CIAppGroupByMissing" + sort: + $ref: "#/components/schemas/CIAppAggregateSort" + total: + $ref: "#/components/schemas/CIAppGroupByTotal" + required: + - facet + type: object + CIAppTestsQueryFilter: + description: The search and filter query settings. + properties: + from: + default: "now-15m" + description: The minimum time for the requested events; supports date, math, and regular timestamps (in milliseconds). + example: "now-15m" + type: string + query: + default: "*" + description: The search query following the CI Visibility Explorer search syntax. + example: "@test.service:web-ui-tests AND @test.status:fail" + type: string + to: + default: "now" + description: The maximum time for the requested events, supports date, math, and regular timestamps (in milliseconds). + example: "now" + type: string + type: object + CIAppWarning: + description: A warning message indicating something that went wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: "unknown_index" + type: string + detail: + description: A detailed explanation of this specific warning. + example: "indexes: foo, bar" + type: string + title: + description: A short human-readable summary of the warning. + example: "One or several indexes are missing or invalid, results hold data from the other indexes" + type: string + type: object + CSMAgentsMetadata: + description: Metadata related to the paginated response. + properties: + page_index: + description: The index of the current page in the paginated results. + example: 0 + format: int64 + type: integer + page_size: + description: The number of items per page in the paginated results. + example: 10 + format: int64 + type: integer + total_filtered: + description: Total number of items that match the filter criteria. + example: 128697 + format: int64 + type: integer + type: object + CSMAgentsType: + default: datadog_agent + description: The type of the resource. The value should always be `datadog_agent`. + enum: + - datadog_agent + example: datadog_agent + type: string + x-enum-varnames: ["DATADOG_AGENT"] + CVSS: + description: Vulnerability severity. + properties: + score: + description: Vulnerability severity score. + example: 4.5 + format: double + type: number + severity: + $ref: "#/components/schemas/VulnerabilitySeverity" + vector: + description: Vulnerability CVSS vector. + example: "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H" + type: string + required: + - score + - severity + - vector + type: object + CalculatedField: + description: Calculated field. + properties: + expression: + description: Expression. + example: "@request_end_timestamp - @request_start_timestamp" + type: string + name: + description: Field name. + example: response_time + type: string + required: + - name + - expression + type: object + CampaignResponse: + description: Response containing campaign data. + properties: + data: + $ref: "#/components/schemas/CampaignResponseData" + required: + - data + type: object + CampaignResponseAttributes: + description: Campaign attributes. + properties: + created_at: + description: Creation time of the campaign. + example: "2023-12-15T10:30:00Z" + format: date-time + type: string + description: + description: The description of the campaign. + example: Campaign to improve security posture for Q1 2024. + type: string + due_date: + description: The due date of the campaign. + example: "2024-03-31T23:59:59Z" + format: date-time + type: string + entity_scope: + description: Entity scope query to filter entities for this campaign. + example: kind:service AND team:platform + type: string + guidance: + description: Guidance for the campaign. + example: Please ensure all services pass the security requirements. + type: string + key: + description: The unique key for the campaign. + example: q1-security-2024 + type: string + modified_at: + description: Time of last campaign modification. + example: "2024-01-05T14:20:00Z" + format: date-time + type: string + name: + description: The name of the campaign. + example: Q1 Security Campaign + type: string + owner: + description: The UUID of the campaign owner. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + start_date: + description: The start date of the campaign. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + status: + description: The status of the campaign. + example: in_progress + type: string + required: + - key + - name + - owner + - status + - start_date + - created_at + - modified_at + type: object + CampaignResponseData: + description: Campaign data. + properties: + attributes: + $ref: "#/components/schemas/CampaignResponseAttributes" + id: + description: The unique ID of the campaign. + example: c10ODp0VCrrIpXmz + type: string + type: + $ref: "#/components/schemas/CampaignType" + required: + - id + - type + - attributes + type: object + CampaignStatus: + description: The status of the campaign. + enum: + - in_progress + - not_started + - completed + example: in_progress + type: string + x-enum-varnames: + - IN_PROGRESS + - NOT_STARTED + - COMPLETED + CampaignType: + description: The JSON:API type for campaigns. + enum: + - campaign + example: campaign + type: string + x-enum-varnames: + - CAMPAIGN + CancelDataDeletionResponseBody: + description: The response from the cancel data deletion request endpoint. + properties: + data: + $ref: "#/components/schemas/DataDeletionResponseItem" + meta: + $ref: "#/components/schemas/DataDeletionResponseMeta" + type: object + Case: + description: A case + properties: + attributes: + $ref: "#/components/schemas/CaseAttributes" + id: + description: Case's identifier + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + relationships: + $ref: "#/components/schemas/CaseRelationships" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - id + - type + - attributes + type: object + Case3rdPartyTicketStatus: + default: IN_PROGRESS + description: Case status + enum: + - IN_PROGRESS + - COMPLETED + - FAILED + example: COMPLETED + readOnly: true + type: string + x-enum-varnames: + - IN_PROGRESS + - COMPLETED + - FAILED + CaseAggregateGroup: + description: A single group within the aggregation results, containing the group key and its associated count values. + properties: + group: + description: "The value of the field being grouped on (for example, `OPEN` when grouping by status)." + example: "OPEN" + type: string + value: + description: The count of cases in this group. + example: + - 42.0 + items: + format: double + type: number + type: array + required: + - group + - value + type: object + CaseAggregateGroupBy: + description: Configuration for grouping aggregated results by one or more case fields. + properties: + groups: + description: Fields to group by. + example: + - "status" + items: + type: string + type: array + limit: + description: Maximum number of groups to return. + example: 14 + format: int32 + maximum: 1000 + type: integer + required: + - groups + - limit + type: object + CaseAggregateRequest: + description: Request payload for aggregating case counts with grouping. Use this to get faceted breakdowns of cases (for example, count of cases grouped by priority and status). + properties: + data: + $ref: "#/components/schemas/CaseAggregateRequestData" + required: + - data + type: object + CaseAggregateRequestAttributes: + description: Attributes for the aggregation request, including the search query and grouping configuration. + properties: + group_by: + $ref: "#/components/schemas/CaseAggregateGroupBy" + query_filter: + description: "A search query to filter which cases are included in the aggregation. Uses the same syntax as the Case Management search bar." + example: "service:case-api" + type: string + required: + - query_filter + - group_by + type: object + CaseAggregateRequestData: + description: Data object wrapping the aggregation query type and attributes. + properties: + attributes: + $ref: "#/components/schemas/CaseAggregateRequestAttributes" + type: + $ref: "#/components/schemas/CaseAggregateResourceType" + required: + - attributes + - type + type: object + CaseAggregateResourceType: + description: JSON:API resource type for case aggregation requests. + enum: + - aggregate + example: aggregate + type: string + x-enum-varnames: + - AGGREGATE + CaseAggregateResponse: + description: Response containing aggregated case counts grouped by the requested fields. + properties: + data: + $ref: "#/components/schemas/CaseAggregateResponseData" + required: + - data + type: object + CaseAggregateResponseAttributes: + description: Attributes of the aggregation result, including the total count across all groups and the per-group breakdowns. + properties: + groups: + description: Aggregated groups. + items: + $ref: "#/components/schemas/CaseAggregateGroup" + type: array + total: + description: Total count of aggregated cases. + example: 100.0 + format: double + type: number + required: + - total + - groups + type: object + CaseAggregateResponseData: + description: Data object containing the aggregation results, including total count and per-group breakdowns. + properties: + attributes: + $ref: "#/components/schemas/CaseAggregateResponseAttributes" + id: + description: Aggregate response identifier. + example: "agg-result-001" + type: string + type: + description: Aggregate resource type. + example: "aggregate" + type: string + required: + - type + - id + - attributes + type: object + CaseAssign: + description: Case assign + properties: + attributes: + $ref: "#/components/schemas/CaseAssignAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseAssignAttributes: + description: Case assign attributes + properties: + assignee_id: + description: Assignee's UUID + example: "f98a5a5b-e0ff-45d4-b2f5-afe6e74de504" + type: string + required: + - assignee_id + type: object + CaseAssignRequest: + description: Case assign request + properties: + data: + $ref: "#/components/schemas/CaseAssign" + required: + - data + type: object + CaseAttributes: + description: Case resource attributes + properties: + archived_at: + description: Timestamp of when the case was archived + format: date-time + nullable: true + readOnly: true + type: string + attributes: + $ref: "#/components/schemas/CaseObjectAttributes" + closed_at: + description: Timestamp of when the case was closed + format: date-time + nullable: true + readOnly: true + type: string + created_at: + description: Timestamp of when the case was created + format: date-time + readOnly: true + type: string + custom_attributes: + additionalProperties: + $ref: "#/components/schemas/CustomAttributeValue" + description: Case custom attributes + type: object + description: + description: Description + type: string + jira_issue: + $ref: "#/components/schemas/JiraIssue" + key: + description: Key + example: "CASEM-4523" + type: string + modified_at: + description: Timestamp of when the case was last modified + format: date-time + nullable: true + readOnly: true + type: string + priority: + $ref: "#/components/schemas/CasePriority" + service_now_ticket: + $ref: "#/components/schemas/ServiceNowTicket" + status: + $ref: "#/components/schemas/CaseStatus" + status_group: + $ref: "#/components/schemas/CaseStatusGroup" + status_name: + $ref: "#/components/schemas/CaseStatusName" + title: + description: Title + example: "Memory leak investigation on API" + type: string + type: + $ref: "#/components/schemas/CaseType" + type_id: + description: Case type UUID + example: "3b010bde-09ce-4449-b745-71dd5f861963" + type: string + type: object + CaseAutomationRuleResourceType: + default: rule + description: JSON:API resource type for case automation rules. + enum: + - rule + example: rule + type: string + x-enum-varnames: + - RULE + CaseAutomationRuleState: + description: Whether the automation rule is active. Enabled rules trigger on matching case events; disabled rules are inactive but preserve their configuration. + enum: + - ENABLED + - DISABLED + example: ENABLED + type: string + x-enum-varnames: + - ENABLED + - DISABLED + CaseBulkActionType: + description: "The type of action to apply in a bulk update. Allowed values are `priority`, `status`, `assign`, `unassign`, `archive`, `unarchive`, `jira`, `servicenow`, `linear`, `update_project`." + enum: + - priority + - status + - assign + - unassign + - archive + - unarchive + - jira + - servicenow + - linear + - update_project + example: priority + type: string + x-enum-varnames: + - PRIORITY + - STATUS + - ASSIGN + - UNASSIGN + - ARCHIVE + - UNARCHIVE + - JIRA + - SERVICENOW + - LINEAR + - UPDATE_PROJECT + CaseBulkResourceType: + description: JSON:API resource type for bulk case operations. + enum: + - bulk + example: bulk + type: string + x-enum-varnames: + - BULK + CaseBulkUpdateRequest: + description: Request payload for applying a single action (such as changing priority, status, or assignment) to multiple cases at once. + properties: + data: + $ref: "#/components/schemas/CaseBulkUpdateRequestData" + required: + - data + type: object + CaseBulkUpdateRequestAttributes: + description: Attributes for the bulk update, specifying which cases to update and the action to apply. + properties: + case_ids: + description: An array of case identifiers to apply the bulk action to. + example: + - "case-id-1" + - "case-id-2" + items: + type: string + type: array + payload: + additionalProperties: + type: string + description: A key-value map of action-specific parameters. The required keys depend on the action type (for example, `priority` for the priority action, `assignee_id` for assign). + example: + priority: "P1" + type: object + type: + $ref: "#/components/schemas/CaseBulkActionType" + required: + - case_ids + - type + type: object + CaseBulkUpdateRequestData: + description: Data object wrapping the bulk update type and attributes. + properties: + attributes: + $ref: "#/components/schemas/CaseBulkUpdateRequestAttributes" + type: + $ref: "#/components/schemas/CaseBulkResourceType" + required: + - attributes + - type + type: object + CaseComment: + description: Case comment + properties: + attributes: + $ref: "#/components/schemas/CaseCommentAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseCommentAttributes: + description: Case comment attributes + properties: + comment: + description: The `CaseCommentAttributes` `message`. + example: "This is my comment !" + type: string + required: + - comment + type: object + CaseCommentRequest: + description: Case comment request + properties: + data: + $ref: "#/components/schemas/CaseComment" + required: + - data + type: object + CaseCountGroup: + description: A facet group containing counts broken down by the distinct values of a case field (for example, status or priority). + properties: + group: + description: "The name of the field being grouped on (for example, `status` or `priority`)." + example: "status" + type: string + group_values: + description: Values within this group. + items: + $ref: "#/components/schemas/CaseCountGroupValue" + type: array + required: + - group + - group_values + type: object + CaseCountGroupValue: + description: A single value within a count group, representing the number of cases with that specific field value. + properties: + count: + description: Count of cases for this value. + example: 42 + format: int64 + type: integer + value: + description: The group value. + example: "OPEN" + type: string + required: + - value + - count + type: object + CaseCountResponse: + description: Response containing the total number of cases matching a query, optionally grouped by specified fields. + properties: + data: + $ref: "#/components/schemas/CaseCountResponseData" + required: + - data + type: object + CaseCountResponseAttributes: + description: Attributes for the count response, including the total count and optional facet breakdowns. + properties: + groups: + description: List of facet groups, one per field specified in `group_bys`. + items: + $ref: "#/components/schemas/CaseCountGroup" + type: array + required: + - groups + type: object + CaseCountResponseData: + description: Data object containing the count results, including per-field group breakdowns. + properties: + attributes: + $ref: "#/components/schemas/CaseCountResponseAttributes" + id: + description: Count response identifier. + example: "count-result-001" + type: string + type: + description: Count resource type. + example: "count" + type: string + required: + - type + - id + - attributes + type: object + CaseCreate: + description: Case creation data + properties: + attributes: + $ref: "#/components/schemas/CaseCreateAttributes" + relationships: + $ref: "#/components/schemas/CaseCreateRelationships" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseCreateAttributes: + description: Case creation attributes + properties: + custom_attributes: + additionalProperties: + $ref: "#/components/schemas/CustomAttributeValue" + description: Case custom attributes + type: object + description: + description: Description + type: string + priority: + $ref: "#/components/schemas/CasePriority" + status_name: + $ref: "#/components/schemas/CaseStatusName" + title: + description: Title + example: "Security breach investigation" + type: string + type_id: + description: Case type UUID + example: "3b010bde-09ce-4449-b745-71dd5f861963" + type: string + required: + - title + - type_id + type: object + CaseCreateRelationships: + description: Relationships formed with the case on creation + properties: + assignee: + $ref: "#/components/schemas/NullableUserRelationship" + project: + $ref: "#/components/schemas/ProjectRelationship" + required: + - project + type: object + CaseCreateRequest: + description: Case create request + properties: + data: + $ref: "#/components/schemas/CaseCreate" + required: + - data + type: object + CaseDataType: + default: cases + description: Cases resource type. + enum: + - cases + example: cases + type: string + x-enum-varnames: + - CASES + CaseEmpty: + description: Case empty request data + properties: + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - type + type: object + CaseEmptyRequest: + description: Case empty request + properties: + data: + $ref: "#/components/schemas/CaseEmpty" + required: + - data + type: object + CaseInsight: + description: A reference to an external Datadog resource that provides investigative context for a case, such as a security signal, monitor alert, error tracking issue, or incident. + properties: + ref: + description: "The URL path or deep link to the insight resource within Datadog (for example, `/monitors/12345?q=total`)." + example: "/monitors/12345?q=total" + type: string + resource_id: + description: The unique identifier of the referenced Datadog resource (for example, a monitor ID, incident ID, or signal ID). + example: "12345" + type: string + type: + $ref: "#/components/schemas/CaseInsightType" + required: + - type + - ref + - resource_id + type: object + CaseInsightType: + description: The type of Datadog resource linked to the case as contextual evidence. Each type corresponds to a different Datadog product signal (for example, a security finding, a monitor alert, or an incident). + enum: + - SECURITY_SIGNAL + - MONITOR + - EVENT_CORRELATION + - ERROR_TRACKING + - CLOUD_COST_RECOMMENDATION + - INCIDENT + - SENSITIVE_DATA_SCANNER_ISSUE + - EVENT + - WATCHDOG_STORY + - WIDGET + - SECURITY_FINDING + - INSIGHT_SCORECARD_CAMPAIGN + - RESOURCE_POLICY + - APM_RECOMMENDATION + - SCM_URL + - PROFILING_DOWNSIZING_EXPERIMENT + example: SECURITY_SIGNAL + type: string + x-enum-varnames: + - SECURITY_SIGNAL + - MONITOR + - EVENT_CORRELATION + - ERROR_TRACKING + - CLOUD_COST_RECOMMENDATION + - INCIDENT + - SENSITIVE_DATA_SCANNER_ISSUE + - EVENT + - WATCHDOG_STORY + - WIDGET + - SECURITY_FINDING + - INSIGHT_SCORECARD_CAMPAIGN + - RESOURCE_POLICY + - APM_RECOMMENDATION + - SCM_URL + - PROFILING_DOWNSIZING_EXPERIMENT + CaseInsightsAttributes: + description: Attributes for adding or removing insights from a case. + properties: + insights: + description: Array of insights to add to or remove from a case. + items: + $ref: "#/components/schemas/CaseInsight" + maxItems: 100 + minItems: 1 + type: array + required: + - insights + type: object + CaseInsightsData: + description: Data object containing the insights to add or remove. + properties: + attributes: + $ref: "#/components/schemas/CaseInsightsAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - type + - attributes + type: object + CaseInsightsItems: + description: An insight of the case. + properties: + ref: + description: Reference of the insight. + example: "/security/appsec/vm/library/vulnerability/dfa027f7c037b2f77159adc027fecb56?detection=static" + type: string + resource_id: + description: Unique identifier of the resource. For example, the unique identifier of a security finding. + example: "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==" + type: string + type: + description: Type of the resource. For example, the type of a security finding is "SECURITY_FINDING". + example: "SECURITY_FINDING" + type: string + type: object + CaseInsightsRequest: + description: Request payload for adding or removing case insights. + properties: + data: + $ref: "#/components/schemas/CaseInsightsData" + required: + - data + type: object + CaseLink: + description: "A directional link representing a relationship between two entities. At least one entity must be a case." + properties: + attributes: + $ref: "#/components/schemas/CaseLinkAttributes" + id: + description: "The case link identifier." + example: "804cd682-55f6-4541-ab00-b608b282ea7d" + type: string + type: + $ref: "#/components/schemas/CaseLinkResourceType" + required: + - id + - type + - attributes + type: object + CaseLinkAttributes: + description: "Attributes describing a directional relationship between two entities (cases, incidents, or pages)." + properties: + child_entity_id: + description: "The UUID of the child (target) entity in the relationship." + example: "4417921d-0866-4a38-822c-6f2a0f65f77d" + type: string + child_entity_type: + description: "The type of the child entity. Allowed values: `CASE`, `INCIDENT`, `PAGE`, `AGENT_CONVERSATION`." + example: "CASE" + type: string + parent_entity_id: + description: "The UUID of the parent (source) entity in the relationship." + example: "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f" + type: string + parent_entity_type: + description: "The type of the parent entity. Allowed values: `CASE`, `INCIDENT`, `PAGE`, `AGENT_CONVERSATION`." + example: "CASE" + type: string + relationship: + description: "The type of directional relationship. Allowed values: `RELATES_TO` (bidirectional association), `CAUSES` (parent causes child), `BLOCKS` (parent blocks child), `DUPLICATES` (parent duplicates child), `PARENT_OF` (hierarchical), `SUCCESSOR_OF` (sequence), `ESCALATES_TO` (priority escalation)." + example: "BLOCKS" + type: string + required: + - relationship + - parent_entity_id + - parent_entity_type + - child_entity_id + - child_entity_type + type: object + CaseLinkCreate: + description: "Data object for creating a case link." + properties: + attributes: + $ref: "#/components/schemas/CaseLinkAttributes" + type: + $ref: "#/components/schemas/CaseLinkResourceType" + required: + - type + - attributes + type: object + CaseLinkCreateRequest: + description: "Request payload for creating a link between two entities." + properties: + data: + $ref: "#/components/schemas/CaseLinkCreate" + required: + - data + type: object + CaseLinkResourceType: + description: "JSON:API resource type for case links." + enum: + - link + example: link + type: string + x-enum-varnames: + - LINK + CaseLinkResponse: + description: "Response containing a single case link." + properties: + data: + $ref: "#/components/schemas/CaseLink" + required: + - data + type: object + CaseLinksResponse: + description: "Response containing a list of case links." + properties: + data: + description: "A list of case links." + items: + $ref: "#/components/schemas/CaseLink" + type: array + required: + - data + type: object + CaseManagementProject: + description: Case management project. + properties: + data: + $ref: "#/components/schemas/CaseManagementProjectData" + required: + - data + type: object + CaseManagementProjectData: + description: Data object representing a case management project. + properties: + id: + description: Unique identifier of the case management project. + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + type: + $ref: "#/components/schemas/CaseManagementProjectDataType" + required: + - type + - id + type: object + CaseManagementProjectDataType: + default: projects + description: Projects resource type. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + CaseNotificationRule: + description: A notification rule for case management + properties: + attributes: + $ref: "#/components/schemas/CaseNotificationRuleAttributes" + id: + description: The notification rule's identifier + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + type: + $ref: "#/components/schemas/CaseNotificationRuleResourceType" + required: + - id + - type + - attributes + type: object + CaseNotificationRuleAttributes: + description: Notification rule attributes + properties: + is_enabled: + description: Whether the notification rule is enabled + type: boolean + query: + description: Query to filter cases for this notification rule + type: string + recipients: + description: List of notification recipients + items: + $ref: "#/components/schemas/CaseNotificationRuleRecipient" + type: array + triggers: + description: List of triggers for this notification rule + items: + $ref: "#/components/schemas/CaseNotificationRuleTrigger" + type: array + type: object + CaseNotificationRuleCreate: + description: Notification rule create + properties: + attributes: + $ref: "#/components/schemas/CaseNotificationRuleCreateAttributes" + type: + $ref: "#/components/schemas/CaseNotificationRuleResourceType" + required: + - attributes + - type + type: object + CaseNotificationRuleCreateAttributes: + description: Notification rule creation attributes + properties: + is_enabled: + default: true + description: Whether the notification rule is enabled + type: boolean + query: + description: Query to filter cases for this notification rule + type: string + recipients: + description: List of notification recipients + items: + $ref: "#/components/schemas/CaseNotificationRuleRecipient" + type: array + triggers: + description: List of triggers for this notification rule + items: + $ref: "#/components/schemas/CaseNotificationRuleTrigger" + type: array + required: + - recipients + - triggers + type: object + CaseNotificationRuleCreateRequest: + description: Notification rule create request + properties: + data: + $ref: "#/components/schemas/CaseNotificationRuleCreate" + required: + - data + type: object + CaseNotificationRuleRecipient: + description: Notification rule recipient + properties: + data: + $ref: "#/components/schemas/CaseNotificationRuleRecipientData" + type: + description: Type of recipient (SLACK_CHANNEL, EMAIL, HTTP, PAGERDUTY_SERVICE, MS_TEAMS_CHANNEL) + example: EMAIL + type: string + type: object + CaseNotificationRuleRecipientData: + description: Recipient data + properties: + channel: + description: Slack channel name + type: string + channel_id: + description: Slack channel ID + type: string + channel_name: + description: Microsoft Teams channel name + type: string + connector_name: + description: Microsoft Teams connector name + type: string + email: + description: Email address + type: string + name: + description: HTTP webhook name + type: string + service_name: + description: PagerDuty service name + type: string + team_id: + description: Microsoft Teams team ID + type: string + team_name: + description: Microsoft Teams team name + type: string + tenant_id: + description: Microsoft Teams tenant ID + type: string + tenant_name: + description: Microsoft Teams tenant name + type: string + workspace: + description: Slack workspace name + type: string + workspace_id: + description: Slack workspace ID + type: string + type: object + CaseNotificationRuleResourceType: + default: notification_rule + description: Notification rule resource type + enum: + - notification_rule + example: notification_rule + type: string + x-enum-varnames: + - NOTIFICATION_RULE + CaseNotificationRuleResponse: + description: Notification rule response + properties: + data: + $ref: "#/components/schemas/CaseNotificationRule" + type: object + CaseNotificationRuleTrigger: + description: Notification rule trigger + properties: + data: + $ref: "#/components/schemas/CaseNotificationRuleTriggerData" + type: + description: Type of trigger (CASE_CREATED, STATUS_TRANSITIONED, ATTRIBUTE_VALUE_CHANGED, EVENT_CORRELATION_SIGNAL_CORRELATED) + example: CASE_CREATED + type: string + type: object + CaseNotificationRuleTriggerData: + description: Trigger data + properties: + change_type: + description: Change type (added, removed, changed) + type: string + field: + description: Field name for attribute value changed trigger + type: string + from_status: + description: Status ID to transition from + type: string + from_status_name: + description: Status name to transition from + type: string + to_status: + description: Status ID to transition to + type: string + to_status_name: + description: Status name to transition to + type: string + type: object + CaseNotificationRuleUpdate: + description: Notification rule update + properties: + attributes: + $ref: "#/components/schemas/CaseNotificationRuleAttributes" + type: + $ref: "#/components/schemas/CaseNotificationRuleResourceType" + required: + - type + type: object + CaseNotificationRuleUpdateRequest: + description: Notification rule update request + properties: + data: + $ref: "#/components/schemas/CaseNotificationRuleUpdate" + required: + - data + type: object + CaseNotificationRulesResponse: + description: Response with notification rules + properties: + data: + description: Notification rules data + items: + $ref: "#/components/schemas/CaseNotificationRule" + type: array + type: object + CaseObjectAttributes: + additionalProperties: + items: + description: An attribute value. + type: string + type: array + description: Key-value pairs of case attributes. Each key maps to an array of string values, used for flexible metadata such as labels or tags. + type: object + CasePriority: + default: NOT_DEFINED + description: Case priority + enum: + - NOT_DEFINED + - P1 + - P2 + - P3 + - P4 + - P5 + example: NOT_DEFINED + type: string + x-enum-varnames: + - NOT_DEFINED + - P1 + - P2 + - P3 + - P4 + - P5 + CaseRelationships: + description: Resources related to a case + properties: + assignee: + $ref: "#/components/schemas/NullableUserRelationship" + created_by: + $ref: "#/components/schemas/NullableUserRelationship" + modified_by: + $ref: "#/components/schemas/NullableUserRelationship" + project: + $ref: "#/components/schemas/ProjectRelationship" + type: object + CaseResourceType: + default: case + description: JSON:API resource type for cases. + enum: + - case + example: case + type: string + x-enum-varnames: + - CASE + CaseResponse: + description: Case response + properties: + data: + $ref: "#/components/schemas/Case" + type: object + CaseSortableField: + description: Case field that can be sorted on + enum: + - created_at + - priority + - status + example: created_at + type: string + x-enum-varnames: + - CREATED_AT + - PRIORITY + - STATUS + CaseStatus: + deprecated: true + description: Deprecated way of representing the case status, which only supports OPEN, IN_PROGRESS, and CLOSED statuses. Use `status_name` instead. + enum: + - OPEN + - IN_PROGRESS + - CLOSED + example: OPEN + type: string + x-enum-varnames: + - OPEN + - IN_PROGRESS + - CLOSED + CaseStatusGroup: + description: Status group of the case. + enum: + - SG_OPEN + - SG_IN_PROGRESS + - SG_CLOSED + example: SG_OPEN + type: string + x-enum-varnames: + - SG_OPEN + - SG_IN_PROGRESS + - SG_CLOSED + CaseStatusName: + description: Status of the case. Must be one of the existing statuses for the case's type. + example: "Open" + type: string + CaseTrigger: + description: "Trigger a workflow from a Case. For automatic triggering a handle must be configured and the workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + CaseTriggerWrapper: + description: "Schema for a Case-based trigger." + properties: + caseTrigger: + $ref: "#/components/schemas/CaseTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - caseTrigger + type: object + CaseType: + deprecated: true + description: Case type + enum: + - STANDARD + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + CaseTypeCreate: + description: Data object for creating a case type. + properties: + attributes: + $ref: "#/components/schemas/CaseTypeResourceAttributes" + type: + $ref: "#/components/schemas/CaseTypeResourceType" + required: + - attributes + - type + type: object + CaseTypeCreateRequest: + description: Request payload for creating a case type. + properties: + data: + $ref: "#/components/schemas/CaseTypeCreate" + required: + - data + type: object + CaseTypeResource: + description: A case type that defines a classification category for cases. Each case type can have its own custom attributes, statuses, and automation rules. + properties: + attributes: + $ref: "#/components/schemas/CaseTypeResourceAttributes" + id: + description: Case type's identifier + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + type: + $ref: "#/components/schemas/CaseTypeResourceType" + type: object + CaseTypeResourceAttributes: + description: "Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request)." + properties: + deleted_at: + description: Timestamp when the case type was marked as deleted. A null value indicates the case type is active. + format: date-time + nullable: true + readOnly: true + type: string + description: + description: A detailed description explaining when this case type should be used. + example: "Investigations done in case management" + type: string + emoji: + description: An emoji icon representing the case type in the UI. + example: "🕵🏻‍♂️" + type: string + name: + description: The display name of the case type, shown in the Case Management UI when creating or viewing cases. + example: "Investigation" + type: string + required: + - name + type: object + CaseTypeResourceType: + default: case_type + description: JSON:API resource type for case types. + enum: + - case_type + example: case_type + type: string + x-enum-varnames: + - CASE_TYPE + CaseTypeResponse: + description: Response containing a single case type. + properties: + data: + $ref: "#/components/schemas/CaseTypeResource" + type: object + CaseTypeUpdate: + description: Data object for updating a case type. + properties: + attributes: + $ref: "#/components/schemas/CaseTypeResourceAttributes" + type: + $ref: "#/components/schemas/CaseTypeResourceType" + required: + - type + type: object + CaseTypeUpdateRequest: + description: Request payload for updating a case type. + properties: + data: + $ref: "#/components/schemas/CaseTypeUpdate" + required: + - data + type: object + CaseTypesResponse: + description: Response containing a list of case types. + properties: + data: + description: List of case types + items: + $ref: "#/components/schemas/CaseTypeResource" + type: array + type: object + CaseUpdateAttributes: + description: Case update attributes + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateAttributesAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateAttributesAttributes: + description: Case update attributes attributes + properties: + attributes: + $ref: "#/components/schemas/CaseObjectAttributes" + required: + - attributes + type: object + CaseUpdateAttributesRequest: + description: Case update attributes request + properties: + data: + $ref: "#/components/schemas/CaseUpdateAttributes" + required: + - data + type: object + CaseUpdateComment: + description: Data object for updating a case comment. + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateCommentAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - type + - attributes + type: object + CaseUpdateCommentAttributes: + description: Attributes for updating a comment. + properties: + comment: + description: The updated comment message. + example: "Updated comment text" + type: string + required: + - comment + type: object + CaseUpdateCommentRequest: + description: Request payload for updating a comment on a case timeline. + properties: + data: + $ref: "#/components/schemas/CaseUpdateComment" + required: + - data + type: object + CaseUpdateCustomAttribute: + description: Case update custom attribute + properties: + attributes: + $ref: "#/components/schemas/CustomAttributeValue" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateCustomAttributeRequest: + description: Case update custom attribute request + properties: + data: + $ref: "#/components/schemas/CaseUpdateCustomAttribute" + required: + - data + type: object + CaseUpdateDescription: + description: Case update description + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateDescriptionAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateDescriptionAttributes: + description: Case update description attributes + properties: + description: + description: Case new description + example: "Seeing some weird memory increase... We shouldn't ignore this" + type: string + required: + - description + type: object + CaseUpdateDescriptionRequest: + description: Case update description request + properties: + data: + $ref: "#/components/schemas/CaseUpdateDescription" + required: + - data + type: object + CaseUpdateDueDate: + description: Data object for updating a case's due date. + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateDueDateAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateDueDateAttributes: + description: Attributes for setting or clearing a case's due date. + properties: + due_date: + description: "The target resolution date for the case, in `YYYY-MM-DD` format. Set to `null` to clear the due date." + example: "2026-12-31" + type: string + required: + - due_date + type: object + CaseUpdateDueDateRequest: + description: Request payload for updating a case's due date. + properties: + data: + $ref: "#/components/schemas/CaseUpdateDueDate" + required: + - data + type: object + CaseUpdatePriority: + description: Case priority status + properties: + attributes: + $ref: "#/components/schemas/CaseUpdatePriorityAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdatePriorityAttributes: + description: Case update priority attributes + properties: + priority: + $ref: "#/components/schemas/CasePriority" + required: + - priority + type: object + CaseUpdatePriorityRequest: + description: Case update priority request + properties: + data: + $ref: "#/components/schemas/CaseUpdatePriority" + required: + - data + type: object + CaseUpdateResolvedReason: + description: Data object for updating a case's resolved reason. + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateResolvedReasonAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateResolvedReasonAttributes: + description: Attributes for setting the resolution reason on a security case. + properties: + security_resolved_reason: + description: "The reason the security case was resolved (for example, `FALSE_POSITIVE`, `TRUE_POSITIVE`, `BENIGN_POSITIVE`)." + example: "FALSE_POSITIVE" + type: string + required: + - security_resolved_reason + type: object + CaseUpdateResolvedReasonRequest: + description: Request payload for updating the resolution reason on a closed security case. + properties: + data: + $ref: "#/components/schemas/CaseUpdateResolvedReason" + required: + - data + type: object + CaseUpdateStatus: + description: Case update status + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateStatusAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateStatusAttributes: + description: Case update status attributes + properties: + status: + $ref: "#/components/schemas/CaseStatus" + deprecated: true + status_name: + $ref: "#/components/schemas/CaseStatusName" + type: object + CaseUpdateStatusRequest: + description: Case update status request + properties: + data: + $ref: "#/components/schemas/CaseUpdateStatus" + required: + - data + type: object + CaseUpdateTitle: + description: Case update title + properties: + attributes: + $ref: "#/components/schemas/CaseUpdateTitleAttributes" + type: + $ref: "#/components/schemas/CaseResourceType" + required: + - attributes + - type + type: object + CaseUpdateTitleAttributes: + description: Case update title attributes + properties: + title: + description: Case new title + example: "Memory leak investigation on API" + type: string + required: + - title + type: object + CaseUpdateTitleRequest: + description: Case update title request + properties: + data: + $ref: "#/components/schemas/CaseUpdateTitle" + required: + - data + type: object + CaseView: + description: A saved case view that provides a filtered, reusable list of cases matching a specific query. Views act as persistent dashboards for monitoring case subsets. + properties: + attributes: + $ref: "#/components/schemas/CaseViewAttributes" + id: + description: The view's identifier. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: string + relationships: + $ref: "#/components/schemas/CaseViewRelationships" + type: + $ref: "#/components/schemas/CaseViewResourceType" + required: + - id + - type + - attributes + type: object + CaseViewAttributes: + description: Attributes of a case view, including the filter query and optional notification rule. + properties: + created_at: + description: Timestamp when the view was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + readOnly: true + type: string + modified_at: + description: Timestamp when the view was last modified. + format: date-time + readOnly: true + type: string + name: + description: A human-readable name for the view, displayed in the Case Management UI. + example: Open bugs + type: string + np_rule_id: + description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. + type: string + query: + description: "The search query that determines which cases appear in this view. Uses the same syntax as the Case Management search bar (for example, `status:open priority:P1`)." + example: "status:open type:bug" + type: string + required: + - name + - query + - created_at + type: object + CaseViewCreate: + description: Data object for creating a case view. + properties: + attributes: + $ref: "#/components/schemas/CaseViewCreateAttributes" + type: + $ref: "#/components/schemas/CaseViewResourceType" + required: + - type + - attributes + type: object + CaseViewCreateAttributes: + description: Attributes required to create a case view. + properties: + name: + description: The name of the view. + example: Open bugs + type: string + np_rule_id: + description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. + type: string + project_id: + description: The UUID of the project this view belongs to. Views are scoped to a single project. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: string + query: + description: The query used to filter cases in this view. + example: "status:open type:bug" + type: string + required: + - name + - query + - project_id + type: object + CaseViewCreateRequest: + description: Request payload for creating a case view. + properties: + data: + $ref: "#/components/schemas/CaseViewCreate" + required: + - data + type: object + CaseViewRelationships: + description: Related resources for the case view, including the creator, last modifier, and associated project. + properties: + created_by: + $ref: "#/components/schemas/NullableUserRelationship" + modified_by: + $ref: "#/components/schemas/NullableUserRelationship" + project: + $ref: "#/components/schemas/ProjectRelationship" + type: object + CaseViewResourceType: + default: view + description: "JSON:API resource type for case views." + enum: + - view + example: view + type: string + x-enum-varnames: + - VIEW + CaseViewResponse: + description: Response containing a single case view. + properties: + data: + $ref: "#/components/schemas/CaseView" + required: + - data + type: object + CaseViewUpdate: + description: Data object for updating a case view. + properties: + attributes: + $ref: "#/components/schemas/CaseViewUpdateAttributes" + type: + $ref: "#/components/schemas/CaseViewResourceType" + required: + - type + type: object + CaseViewUpdateAttributes: + description: Attributes that can be updated on a case view. All fields are optional; only provided fields are changed. + properties: + name: + description: The name of the view. + type: string + np_rule_id: + description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. + type: string + query: + description: The query used to filter cases in this view. + type: string + type: object + CaseViewUpdateRequest: + description: Request payload for updating a case view. + properties: + data: + $ref: "#/components/schemas/CaseViewUpdate" + required: + - data + type: object + CaseViewsResponse: + description: Response containing a list of case views. + properties: + data: + description: A list of case views. + items: + $ref: "#/components/schemas/CaseView" + type: array + required: + - data + type: object + CaseWatcher: + description: Represents a user who is subscribed to notifications for a case. Watchers receive updates when the case's status, priority, assignee, or comments change. + properties: + id: + description: The primary identifier of the case watcher. + example: "8146583c-0b5f-11ec-abf8-da7ad0900001" + type: string + relationships: + $ref: "#/components/schemas/CaseWatcherRelationships" + type: + $ref: "#/components/schemas/CaseWatcherResourceType" + required: + - id + - type + - relationships + type: object + CaseWatcherRelationships: + description: Relationships for a case watcher, linking to the underlying user resource. + properties: + user: + $ref: "#/components/schemas/CaseWatcherUserRelationship" + required: + - user + type: object + CaseWatcherResourceType: + default: watcher + description: JSON:API resource type for case watchers. + enum: + - watcher + example: watcher + type: string + x-enum-varnames: + - WATCHER + CaseWatcherUserRelationship: + description: The user relationship for a case watcher. + properties: + data: + $ref: "#/components/schemas/UserRelationshipData" + required: + - data + type: object + CaseWatchersResponse: + description: Response containing the list of users watching a case. + properties: + data: + description: List of case watchers. + items: + $ref: "#/components/schemas/CaseWatcher" + type: array + required: + - data + type: object + CasesResponse: + description: Response with cases + properties: + data: + description: Cases response data + items: + $ref: "#/components/schemas/Case" + type: array + meta: + $ref: "#/components/schemas/CasesResponseMeta" + type: object + CasesResponseMeta: + description: Cases response metadata + properties: + page: + $ref: "#/components/schemas/CasesResponseMetaPagination" + type: object + CasesResponseMetaPagination: + description: Pagination metadata + properties: + current: + description: Current page number + format: int64 + type: integer + size: + description: Number of cases in current page + format: int64 + type: integer + total: + description: Total number of pages + format: int64 + type: integer + type: object + ChangeEventAttributes: + description: Change event attributes. + properties: + aggregation_key: + $ref: "#/components/schemas/V2EventAggregationKey" + author: + $ref: "#/components/schemas/ChangeEventAttributesAuthor" + change_metadata: + description: JSON object of change metadata. + example: + dd: + team: "datadog_team" + user_email: "datadog@datadog.com" + user_id: "datadog_user_id" + user_name: "datadog_username" + type: object + changed_resource: + $ref: "#/components/schemas/ChangeEventAttributesChangedResource" + evt: + $ref: "#/components/schemas/EventSystemAttributes" + impacted_resources: + description: A list of resources impacted by this change. + example: [{"name": "service-name", "type": "service"}] + items: + $ref: "#/components/schemas/ChangeEventAttributesImpactedResourcesItem" + type: array + new_value: + description: The new state of the changed resource. + example: + enabled: true + percentage: "50%" + rule: + datacenter: "devcycle.us1.prod" + type: object + prev_value: + description: The previous state of the changed resource. + example: + enabled: true + percentage: "10%" + rule: + datacenter: "devcycle.us1.prod" + type: object + service: + $ref: "#/components/schemas/V2EventService" + timestamp: + $ref: "#/components/schemas/V2EventTimestamp" + title: + $ref: "#/components/schemas/V2EventTitle" + type: object + ChangeEventAttributesAuthor: + description: The entity that made the change. + properties: + name: + description: The name of the user or system that made the change. + example: "example@datadog.com" + type: string + type: + $ref: "#/components/schemas/ChangeEventAttributesAuthorType" + type: object + ChangeEventAttributesAuthorType: + description: The type of the author. + enum: + - user + - system + - api + - automation + example: "user" + type: string + x-enum-varnames: + - USER + - SYSTEM + - API + - AUTOMATION + ChangeEventAttributesChangedResource: + description: A uniquely identified resource. + properties: + name: + description: The name of the changed resource. + type: string + type: + $ref: "#/components/schemas/ChangeEventAttributesChangedResourceType" + type: object + ChangeEventAttributesChangedResourceType: + description: The type of the changed resource. + enum: + - feature_flag + - configuration + example: "feature_flag" + type: string + x-enum-varnames: + - FEATURE_FLAG + - CONFIGURATION + ChangeEventAttributesImpactedResourcesItem: + description: A uniquely identified resource. + properties: + name: + description: The name of the impacted resource. + type: string + type: + $ref: "#/components/schemas/ChangeEventAttributesImpactedResourcesItemType" + type: object + ChangeEventAttributesImpactedResourcesItemType: + description: The type of the impacted resource. + enum: + - service + type: string + x-enum-varnames: + - SERVICE + ChangeEventCustomAttributes: + additionalProperties: false + description: |- + Change event attributes. + properties: + author: + $ref: "#/components/schemas/ChangeEventCustomAttributesAuthor" + change_metadata: + additionalProperties: {} + description: |- + Free form JSON object with information related to the `change` event. Supports up to 100 properties per object and a maximum nesting depth of 10 levels. + example: + dd: + team: "datadog_team" + user_email: "datadog@datadog.com" + user_id: "datadog_user_id" + user_name: "datadog_username" + resource_link: "datadog.com/feature/fallback_payments_test" + type: object + changed_resource: + $ref: "#/components/schemas/ChangeEventCustomAttributesChangedResource" + impacted_resources: + description: |- + A list of resources impacted by this change. It is recommended to provide an impacted resource to display + the change event at the correct location. Only resources of type `service` are supported. Maximum of 100 impacted resources allowed. + example: + - name: payments_api + type: service + items: + $ref: "#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItems" + maxItems: 100 + type: array + new_value: + additionalProperties: {} + description: |- + Free form JSON object representing the new state of the changed resource. + example: + enabled: true + percentage: "50%" + rule: + datacenter: "devcycle.us1.prod" + type: object + prev_value: + additionalProperties: {} + description: |- + Free form JSON object representing the previous state of the changed resource. + example: + enabled: true + percentage: "10%" + rule: + datacenter: "devcycle.us1.prod" + type: object + required: + - changed_resource + type: object + ChangeEventCustomAttributesAuthor: + additionalProperties: false + description: |- + The entity that made the change. Optional, if provided it must include `type` and `name`. + properties: + name: + description: The name of the user or system that made the change. Limited to 128 characters. + example: "example@datadog.com" + maxLength: 128 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/ChangeEventCustomAttributesAuthorType" + required: + - name + - type + type: object + ChangeEventCustomAttributesAuthorType: + description: Author's type. + enum: + - user + - system + - api + - automation + example: user + type: string + x-enum-varnames: + - USER + - SYSTEM + - API + - AUTOMATION + ChangeEventCustomAttributesChangedResource: + additionalProperties: false + description: |- + A uniquely identified resource. + properties: + name: + description: The name of the resource that was changed. Limited to 128 characters. Must contain at least one non-whitespace character. + example: "fallback_payments_test" + maxLength: 128 + minLength: 1 + pattern: ".*\\S.*" + type: string + type: + $ref: "#/components/schemas/ChangeEventCustomAttributesChangedResourceType" + required: + - type + - name + type: object + ChangeEventCustomAttributesChangedResourceType: + description: The type of the resource that was changed. + enum: + - feature_flag + - configuration + example: "feature_flag" + type: string + x-enum-varnames: + - FEATURE_FLAG + - CONFIGURATION + ChangeEventCustomAttributesImpactedResourcesItems: + additionalProperties: false + description: |- + Object representing a uniquely identified resource. + properties: + name: + description: The name of the impacted resource. Limited to 128 characters. + example: "payments_api" + maxLength: 128 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItemsType" + required: + - type + - name + type: object + ChangeEventCustomAttributesImpactedResourcesItemsType: + description: The type of the impacted resource. + enum: + - service + example: "service" + type: string + x-enum-varnames: + - SERVICE + ChangeEventTriggerWrapper: + description: "Schema for a Change Event-based trigger." + properties: + changeEventTrigger: + description: "Trigger a workflow from a Change Event." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - changeEventTrigger + type: object + ChangeRequestBranchCreateAttributes: + description: Attributes for creating a change request branch. + properties: + branch_name: + description: The name of the branch to create. + example: "chm/CHM-1234" + type: string + repo_id: + description: The repository identifier in the format owner/repository. + example: "DataDog/dd-source" + type: string + required: + - repo_id + - branch_name + type: object + ChangeRequestBranchCreateData: + description: Data object to create a change request branch. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestBranchCreateAttributes" + type: + $ref: "#/components/schemas/ChangeRequestBranchResourceType" + required: + - type + - attributes + type: object + ChangeRequestBranchCreateRequest: + description: Request object to create a branch for a change request. + properties: + data: + $ref: "#/components/schemas/ChangeRequestBranchCreateData" + required: + - data + type: object + ChangeRequestBranchResourceType: + description: Change request branch resource type. + enum: + - change_request_branch + example: change_request_branch + type: string + x-enum-varnames: + - CHANGE_REQUEST_BRANCH + ChangeRequestChangeType: + description: The type of the change request. + enum: + - NORMAL + - STANDARD + - EMERGENCY + example: NORMAL + type: string + x-enum-varnames: + - NORMAL + - STANDARD + - EMERGENCY + ChangeRequestCreateAttributes: + description: Attributes for creating a change request. + properties: + change_request_linked_incident_uuid: + description: The UUID of an incident to link to the change request. + example: "00000000-0000-0000-0000-000000000000" + type: string + change_request_maintenance_window_query: + description: The maintenance window query for the change request. + example: "" + type: string + change_request_plan: + description: The plan associated with the change request. + example: "1. Deploy to staging 2. Run tests 3. Deploy to production" + type: string + change_request_risk: + $ref: "#/components/schemas/ChangeRequestRiskLevel" + change_request_type: + $ref: "#/components/schemas/ChangeRequestChangeType" + description: + description: The description of the change request. + example: "Deploying new payment service v2.1" + type: string + end_date: + description: The planned end date of the change request. + example: "2024-01-02T15:00:00Z" + format: date-time + type: string + project_id: + description: The project UUID to associate with the change request. + example: "d4bbe1af-f36e-42f1-87c1-493ca35c320e" + type: string + requested_teams: + description: A list of team handles to request decisions from. + example: + - "team-handle-1" + items: + description: A team handle to request decisions from. + type: string + type: array + start_date: + description: The planned start date of the change request. + example: "2024-01-01T03:00:00Z" + format: date-time + type: string + title: + description: The title of the change request. + example: "Deploy new payment service" + type: string + required: + - title + type: object + ChangeRequestCreateData: + description: Data object to create a change request. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestCreateAttributes" + type: + $ref: "#/components/schemas/ChangeRequestResourceType" + required: + - type + - attributes + type: object + ChangeRequestCreateRequest: + description: Request object to create a change request. + properties: + data: + $ref: "#/components/schemas/ChangeRequestCreateData" + required: + - data + type: object + ChangeRequestDecisionCreateAttributes: + description: Attributes for creating a change request decision. + properties: + change_request_status: + $ref: "#/components/schemas/ChangeRequestDecisionStatusType" + request_reason: + description: The reason for requesting the decision. + example: "Please review and approve this change" + type: string + type: object + ChangeRequestDecisionCreateItem: + description: An included change request decision for a create or update operation. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestDecisionCreateAttributes" + id: + description: The decision identifier. + example: "decision-id-0" + type: string + relationships: + $ref: "#/components/schemas/ChangeRequestDecisionCreateRelationships" + type: + $ref: "#/components/schemas/ChangeRequestDecisionResourceType" + required: + - type + - id + type: object + ChangeRequestDecisionCreateRelationships: + description: Relationships for creating a change request decision. + properties: + requested_user: + $ref: "#/components/schemas/ChangeRequestUserRelationship" + type: object + ChangeRequestDecisionRelationshipData: + description: Change request decision relationship data. + properties: + id: + description: The decision UUID. + example: "decision-id-0" + type: string + type: + $ref: "#/components/schemas/ChangeRequestDecisionResourceType" + required: + - id + - type + type: object + ChangeRequestDecisionRelationships: + description: Relationships of a change request decision. + properties: + modified_by: + $ref: "#/components/schemas/ChangeRequestUserRelationship" + requested_by_user: + $ref: "#/components/schemas/ChangeRequestUserRelationship" + requested_user: + $ref: "#/components/schemas/ChangeRequestUserRelationship" + required: + - requested_user + - requested_by_user + - modified_by + type: object + ChangeRequestDecisionResourceType: + description: Change request decision resource type. + enum: + - change_request_decision + example: change_request_decision + type: string + x-enum-varnames: + - CHANGE_REQUEST_DECISION + ChangeRequestDecisionResponseAttributes: + description: Attributes of a change request decision in a response. + properties: + change_request_status: + $ref: "#/components/schemas/ChangeRequestDecisionStatusType" + decided_at: + description: Timestamp of when the decision was made. + example: "2024-01-02T00:00:00Z" + format: date-time + type: string + decision_reason: + description: The reason for the decision. + example: "LGTM" + type: string + deleted_at: + description: Timestamp of when the decision was deleted. + example: "0001-01-01T00:00:00Z" + format: date-time + type: string + request_reason: + description: The reason for requesting the decision. + example: "Please review this change" + type: string + requested_at: + description: Timestamp of when the decision was requested. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + required: + - change_request_status + - request_reason + - decision_reason + - requested_at + - decided_at + - deleted_at + type: object + ChangeRequestDecisionStatusType: + description: The status of a change request decision. + enum: + - REQUESTED + - APPROVED + - DECLINED + example: REQUESTED + type: string + x-enum-varnames: + - REQUESTED + - APPROVED + - DECLINED + ChangeRequestDecisionUpdateData: + description: Data object to update a change request decision. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestDecisionUpdateDataAttributes" + relationships: + $ref: "#/components/schemas/ChangeRequestDecisionUpdateDataRelationships" + type: + $ref: "#/components/schemas/ChangeRequestResourceType" + required: + - type + type: object + ChangeRequestDecisionUpdateDataAttributes: + description: Attributes of the parent change request for a decision update. + properties: + id: + description: The identifier of the change request. + example: "CHM-1234" + type: string + type: object + ChangeRequestDecisionUpdateDataRelationships: + description: Relationships for updating a change request decision. + properties: + change_request_decisions: + $ref: "#/components/schemas/ChangeRequestDecisionsRelationship" + required: + - change_request_decisions + type: object + ChangeRequestDecisionUpdateRequest: + description: Request object to update a change request decision. + properties: + data: + $ref: "#/components/schemas/ChangeRequestDecisionUpdateData" + included: + $ref: "#/components/schemas/ChangeRequestUpdateIncluded" + required: + - data + type: object + ChangeRequestDecisionsRelationship: + description: Relationship to change request decisions. + properties: + data: + description: Array of decision relationship data. + items: + $ref: "#/components/schemas/ChangeRequestDecisionRelationshipData" + type: array + required: + - data + type: object + ChangeRequestIncluded: + description: Included resources related to the change request. + items: + $ref: "#/components/schemas/ChangeRequestIncludedItem" + type: array + ChangeRequestIncludedDecision: + description: An included change request decision resource. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestDecisionResponseAttributes" + id: + description: The decision UUID. + example: "decision-id-0" + type: string + relationships: + $ref: "#/components/schemas/ChangeRequestDecisionRelationships" + type: + $ref: "#/components/schemas/ChangeRequestDecisionResourceType" + required: + - type + - id + - attributes + type: object + ChangeRequestIncludedItem: + description: An included resource item in the change request response. + oneOf: + - $ref: "#/components/schemas/ChangeRequestIncludedUser" + - $ref: "#/components/schemas/ChangeRequestIncludedDecision" + ChangeRequestIncludedUser: + description: An included user resource. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestIncludedUserAttributes" + id: + description: The user UUID. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + description: The resource type. + example: "user" + type: string + required: + - type + - id + - attributes + type: object + ChangeRequestIncludedUserAttributes: + description: Attributes of an included user. + properties: + email: + description: The email of the user. + example: "john.doe@example.com" + type: string + handle: + description: The handle of the user. + example: "john.doe@example.com" + type: string + name: + description: The name of the user. + example: "John Doe" + type: string + required: + - name + - email + - handle + type: object + ChangeRequestObjectAttributes: + additionalProperties: + items: + description: An attribute value. + type: string + type: array + description: Custom attributes of the change request as key-value pairs. + type: object + ChangeRequestRelationships: + description: Relationships of a change request. + properties: + change_request_decisions: + $ref: "#/components/schemas/ChangeRequestDecisionsRelationship" + created_by: + $ref: "#/components/schemas/ChangeRequestUserRelationship" + modified_by: + $ref: "#/components/schemas/ChangeRequestUserRelationship" + required: + - created_by + - modified_by + - change_request_decisions + type: object + ChangeRequestResourceType: + description: Change request resource type. + enum: + - change_request + example: change_request + type: string + x-enum-varnames: + - CHANGE_REQUEST + ChangeRequestResponse: + description: Response object for a change request. + properties: + data: + $ref: "#/components/schemas/ChangeRequestResponseData" + included: + $ref: "#/components/schemas/ChangeRequestIncluded" + required: + - data + type: object + ChangeRequestResponseAttributes: + description: Attributes of a change request response. + properties: + archived_at: + description: Timestamp of when the change request was archived. + format: date-time + nullable: true + readOnly: true + type: string + attributes: + $ref: "#/components/schemas/ChangeRequestObjectAttributes" + change_request_linked_incident_uuid: + description: The UUID of the linked incident. + example: "" + type: string + change_request_maintenance_window_query: + description: The maintenance window query for the change request. + example: "" + type: string + change_request_plan: + description: The plan associated with the change request. + example: "" + type: string + change_request_risk: + $ref: "#/components/schemas/ChangeRequestRiskLevel" + change_request_type: + $ref: "#/components/schemas/ChangeRequestChangeType" + closed_at: + description: Timestamp of when the change request was closed. + format: date-time + nullable: true + readOnly: true + type: string + created_at: + description: Timestamp of when the change request was created. + example: "2024-01-01T00:00:00Z" + format: date-time + readOnly: true + type: string + creation_source: + description: The source from which the change request was created. + example: "CS_MANUAL" + type: string + description: + description: The description of the change request. + example: "Deploying new payment service v2.1" + type: string + end_date: + description: The planned end date of the change request. + example: "2024-01-02T15:00:00Z" + format: date-time + type: string + key: + description: The human-readable key of the change request. + example: "CHM-1234" + type: string + modified_at: + description: Timestamp of when the change request was last modified. + example: "2024-01-01T00:00:00Z" + format: date-time + readOnly: true + type: string + plan_notebook_id: + description: The notebook ID associated with the change request plan. + example: 0 + format: int64 + type: integer + priority: + description: The priority of the change request. + example: "NOT_DEFINED" + type: string + project_id: + description: The project UUID associated with the change request. + example: "d4bbe1af-f36e-42f1-87c1-493ca35c320e" + type: string + start_date: + description: The planned start date of the change request. + example: "2024-01-01T03:00:00Z" + format: date-time + type: string + status: + description: The current status of the change request. + example: "OPEN" + type: string + title: + description: The title of the change request. + example: "Deploy new payment service" + type: string + type: + description: The case type. + example: "CHANGE_REQUEST" + type: string + required: + - key + - title + - type + - priority + - status + - description + - creation_source + - plan_notebook_id + - project_id + - attributes + - created_at + - modified_at + - change_request_type + - change_request_risk + - change_request_plan + - change_request_linked_incident_uuid + - change_request_maintenance_window_query + type: object + ChangeRequestResponseData: + description: Data object for a change request response. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestResponseAttributes" + id: + description: The identifier of the change request. + example: "CHM-1234" + type: string + relationships: + $ref: "#/components/schemas/ChangeRequestRelationships" + type: + $ref: "#/components/schemas/ChangeRequestResourceType" + required: + - id + - type + - attributes + type: object + ChangeRequestRiskLevel: + description: The risk level of the change request. + enum: + - UNDEFINED + - LOW + - MEDIUM + - HIGH + example: LOW + type: string + x-enum-varnames: + - UNDEFINED + - LOW + - MEDIUM + - HIGH + ChangeRequestUpdateAttributes: + description: Attributes for updating a change request. + properties: + change_request_plan: + description: The plan associated with the change request. + example: "Updated deployment plan" + type: string + change_request_risk: + $ref: "#/components/schemas/ChangeRequestRiskLevel" + change_request_type: + $ref: "#/components/schemas/ChangeRequestChangeType" + end_date: + description: The planned end date of the change request. + example: "2024-01-02T15:00:00Z" + format: date-time + type: string + id: + description: The identifier of the change request to update. + example: "CHM-1234" + type: string + start_date: + description: The planned start date of the change request. + example: "2024-01-01T03:00:00Z" + format: date-time + type: string + type: object + ChangeRequestUpdateData: + description: Data object to update a change request. + properties: + attributes: + $ref: "#/components/schemas/ChangeRequestUpdateAttributes" + relationships: + $ref: "#/components/schemas/ChangeRequestUpdateRelationships" + type: + $ref: "#/components/schemas/ChangeRequestResourceType" + required: + - type + type: object + ChangeRequestUpdateIncluded: + description: Included resources for the change request update. + items: + $ref: "#/components/schemas/ChangeRequestDecisionCreateItem" + type: array + ChangeRequestUpdateRelationships: + description: Relationships for updating a change request. + properties: + change_request_decisions: + $ref: "#/components/schemas/ChangeRequestDecisionsRelationship" + type: object + ChangeRequestUpdateRequest: + description: Request object to update a change request. + properties: + data: + $ref: "#/components/schemas/ChangeRequestUpdateData" + included: + $ref: "#/components/schemas/ChangeRequestUpdateIncluded" + required: + - data + type: object + ChangeRequestUserRelationship: + description: Relationship to a user. + properties: + data: + $ref: "#/components/schemas/ChangeRequestUserRelationshipData" + required: + - data + type: object + ChangeRequestUserRelationshipData: + description: User relationship data. + nullable: true + properties: + id: + description: The user UUID. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + description: The user resource type. + example: "user" + type: string + required: + - id + - type + type: object + ChargebackBreakdown: + description: Charges breakdown. + properties: + charge_type: + description: The type of charge for a particular product. + example: on_demand + type: string + cost: + description: The cost for a particular product and charge type during a given month. + format: double + type: number + product_name: + description: The product for which cost is being reported. + example: infra_host + type: string + type: object + CircleCIAPIKey: + description: The definition of the `CircleCIAPIKey` object. + properties: + api_token: + description: The `CircleCIAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/CircleCIAPIKeyType" + required: + - type + - api_token + type: object + CircleCIAPIKeyType: + description: The definition of the `CircleCIAPIKey` object. + enum: + - CircleCIAPIKey + example: CircleCIAPIKey + type: string + x-enum-varnames: + - CIRCLECIAPIKEY + CircleCIAPIKeyUpdate: + description: The definition of the `CircleCIAPIKey` object. + properties: + api_token: + description: The `CircleCIAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/CircleCIAPIKeyType" + required: + - type + type: object + CircleCICredentials: + description: The definition of the `CircleCICredentials` object. + oneOf: + - $ref: "#/components/schemas/CircleCIAPIKey" + CircleCICredentialsUpdate: + description: The definition of the `CircleCICredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/CircleCIAPIKeyUpdate" + CircleCIIntegration: + description: The definition of the `CircleCIIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/CircleCICredentials" + type: + $ref: "#/components/schemas/CircleCIIntegrationType" + required: + - type + - credentials + type: object + CircleCIIntegrationType: + description: The definition of the `CircleCIIntegrationType` object. + enum: + - CircleCI + example: CircleCI + type: string + x-enum-varnames: + - CIRCLECI + CircleCIIntegrationUpdate: + description: The definition of the `CircleCIIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/CircleCICredentialsUpdate" + type: + $ref: "#/components/schemas/CircleCIIntegrationType" + required: + - type + type: object + ClickupAPIKey: + description: The definition of the `ClickupAPIKey` object. + properties: + api_token: + description: The `ClickupAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/ClickupAPIKeyType" + required: + - type + - api_token + type: object + ClickupAPIKeyType: + description: The definition of the `ClickupAPIKey` object. + enum: + - ClickupAPIKey + example: ClickupAPIKey + type: string + x-enum-varnames: + - CLICKUPAPIKEY + ClickupAPIKeyUpdate: + description: The definition of the `ClickupAPIKey` object. + properties: + api_token: + description: The `ClickupAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/ClickupAPIKeyType" + required: + - type + type: object + ClickupCredentials: + description: The definition of the `ClickupCredentials` object. + oneOf: + - $ref: "#/components/schemas/ClickupAPIKey" + ClickupCredentialsUpdate: + description: The definition of the `ClickupCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/ClickupAPIKeyUpdate" + ClickupIntegration: + description: The definition of the `ClickupIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/ClickupCredentials" + type: + $ref: "#/components/schemas/ClickupIntegrationType" + required: + - type + - credentials + type: object + ClickupIntegrationType: + description: The definition of the `ClickupIntegrationType` object. + enum: + - Clickup + example: Clickup + type: string + x-enum-varnames: + - CLICKUP + ClickupIntegrationUpdate: + description: The definition of the `ClickupIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/ClickupCredentialsUpdate" + type: + $ref: "#/components/schemas/ClickupIntegrationType" + required: + - type + type: object + CloneFormData: + description: The data for cloning a form. + properties: + attributes: + $ref: "#/components/schemas/CloneFormDataAttributes" + type: + $ref: "#/components/schemas/FormType" + required: + - type + type: object + CloneFormDataAttributes: + description: The attributes for cloning a form. + properties: + name: + description: The name for the cloned form. Defaults to "Copy of (source form name)" if not provided. + example: Copy of My Form + type: string + type: object + CloneFormRequest: + description: A request to clone a form. + properties: + data: + $ref: "#/components/schemas/CloneFormData" + required: + - data + type: object + CloudAssetType: + description: The cloud asset type + enum: + - Host + - HostImage + - Image + example: Host + type: string + x-enum-varnames: + - HOST + - HOST_IMAGE + - IMAGE + CloudConfigurationComplianceRuleOptions: + additionalProperties: {} + description: "Options for cloud_configuration rules.\nFields `resourceType` and `regoRule` are mandatory when managing custom `cloud_configuration` rules." + properties: + complexRule: + description: "Whether the rule is a complex one.\nMust be set to true if `regoRule.resourceTypes` contains more than one item. Defaults to false." + type: boolean + regoRule: + $ref: "#/components/schemas/CloudConfigurationRegoRule" + resourceType: + description: "Main resource type to be checked by the rule. It should be specified again in `regoRule.resourceTypes`." + example: aws_acm + type: string + type: object + CloudConfigurationRegoRule: + description: Rule details. + properties: + policy: + description: "The policy written in `rego`, see: https://www.openpolicyagent.org/docs/latest/policy-language/" + example: "package datadog\n\nimport data.datadog.output as dd_output\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n # Logic that evaluates to true if the resource should be skipped\n true\n} else = \"pass\" {\n # Logic that evaluates to true if the resource is compliant\n true\n} else = \"fail\" {\n # Logic that evaluates to true if the resource is not compliant\n true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n some resource in input.resources[input.main_resource_type]\n result := dd_output.format(resource, eval(resource))\n}" + type: string + resourceTypes: + description: List of resource types that will be evaluated upon. Must have at least one element. + example: + - gcp_iam_service_account + - gcp_iam_policy + items: + description: A cloud resource type identifier. + type: string + type: array + required: + - policy + - resourceTypes + type: object + CloudConfigurationRuleCaseCreate: + description: Description of signals. + properties: + notifications: + description: Notification targets for each rule case. + items: + description: Notification. + type: string + type: array + status: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + required: + - status + type: object + CloudConfigurationRuleComplianceSignalOptions: + description: How to generate compliance signals. Useful for cloud_configuration rules only. + properties: + defaultActivationStatus: + description: The default activation status. + nullable: true + type: boolean + defaultGroupByFields: + description: The default group by fields. + items: + description: A field name used for default grouping. + type: string + nullable: true + type: array + userActivationStatus: + description: Whether signals will be sent. + nullable: true + type: boolean + userGroupByFields: + description: Fields to use to group findings by when sending signals. + items: + description: A field name to group findings by. + type: string + nullable: true + type: array + type: object + CloudConfigurationRuleCreatePayload: + description: Create a new cloud configuration rule. + properties: + cases: + description: "Description of generated findings and signals (severity and channels to be notified in case of a signal). Must contain exactly one item." + items: + $ref: "#/components/schemas/CloudConfigurationRuleCaseCreate" + type: array + complianceSignalOptions: + $ref: "#/components/schemas/CloudConfigurationRuleComplianceSignalOptions" + filters: + description: Additional queries to filter matched events before they are processed. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message in markdown format for generated findings and signals. + example: "#Description\nExplanation of the rule.\n\n#Remediation\nHow to fix the security issue." + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/CloudConfigurationRuleOptions" + tags: + description: Tags for generated findings and signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: "#/components/schemas/CloudConfigurationRuleType" + required: + - name + - isEnabled + - options + - complianceSignalOptions + - cases + - message + type: object + CloudConfigurationRuleOptions: + description: Options on cloud configuration rules. + properties: + complianceRuleOptions: + $ref: "#/components/schemas/CloudConfigurationComplianceRuleOptions" + required: + - complianceRuleOptions + type: object + CloudConfigurationRulePayload: + description: The payload of a cloud configuration rule. + properties: + cases: + description: "Description of generated findings and signals (severity and channels to be notified in case of a signal). Must contain exactly one item." + items: + $ref: "#/components/schemas/CloudConfigurationRuleCaseCreate" + type: array + complianceSignalOptions: + $ref: "#/components/schemas/CloudConfigurationRuleComplianceSignalOptions" + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message in markdown format for generated findings and signals. + example: "#Description\nExplanation of the rule.\n\n#Remediation\nHow to fix the security issue." + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/CloudConfigurationRuleOptions" + tags: + description: Tags for generated findings and signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: "#/components/schemas/CloudConfigurationRuleType" + required: + - name + - isEnabled + - options + - complianceSignalOptions + - cases + - message + type: object + CloudConfigurationRuleType: + description: The rule type. + enum: + - cloud_configuration + type: string + x-enum-varnames: + - CLOUD_CONFIGURATION + CloudInventoryCloudProviderId: + description: |- + Cloud provider for this sync configuration (`aws`, `gcp`, or `azure`). For requests, must match the provider block supplied under `attributes`. + enum: + - aws + - gcp + - azure + example: aws + type: string + x-enum-varnames: + - AWS + - GCP + - AZURE + CloudInventoryCloudProviderRequestType: + description: Always `cloud_provider`. + enum: + - cloud_provider + example: cloud_provider + type: string + x-enum-varnames: + - CLOUD_PROVIDER + CloudInventorySyncConfigAWSRequestAttributes: + description: AWS settings for the S3 bucket Storage Management reads inventory reports from. + properties: + aws_account_id: + description: AWS account ID that owns the inventory bucket. + example: "123456789012" + type: string + destination_bucket_name: + description: Name of the S3 bucket containing inventory files. + example: my-inventory-bucket + type: string + destination_bucket_region: + description: AWS Region of the inventory bucket. + example: us-east-1 + type: string + destination_prefix: + description: Object key prefix where inventory reports are written. Omit or set to `/` when reports are written at the bucket root. + example: logs/ + type: string + required: + - aws_account_id + - destination_bucket_name + - destination_bucket_region + type: object + CloudInventorySyncConfigAttributes: + description: Attributes for a Storage Management configuration. Fields other than `id` may be empty in the response immediately after a create or update; subsequent reads return the full configuration. + properties: + aws_account_id: + description: AWS account ID for the inventory bucket. + example: "123456789012" + type: string + aws_bucket_name: + description: AWS S3 bucket name for inventory files. + example: my-inventory-bucket + type: string + aws_region: + description: AWS Region for the inventory bucket. + example: us-east-1 + type: string + azure_client_id: + description: Azure AD application (client) ID. + example: 11111111-1111-1111-1111-111111111111 + type: string + azure_container_name: + description: Azure blob container name. + example: inventory-container + type: string + azure_storage_account_name: + description: Azure storage account name. + example: mystorageaccount + type: string + azure_tenant_id: + description: Azure AD tenant ID. + example: 22222222-2222-2222-2222-222222222222 + type: string + cloud_provider: + $ref: "#/components/schemas/CloudInventoryCloudProviderId" + error: + description: Human-readable error detail when sync is unhealthy. + example: "" + readOnly: true + type: string + error_code: + description: Machine-readable error code when sync is unhealthy. + example: "" + readOnly: true + type: string + gcp_bucket_name: + description: GCS bucket name for inventory files Datadog reads. + example: my-inventory-reports + type: string + gcp_project_id: + description: GCP project ID. + example: my-gcp-project + type: string + gcp_service_account_email: + description: Service account email for bucket access. + example: reader@my-gcp-project.iam.gserviceaccount.com + type: string + prefix: + description: Object key prefix where inventory reports are written. Returns `/` when reports are written at the bucket root. + example: logs/ + readOnly: true + type: string + required: + - aws_bucket_name + - aws_account_id + - aws_region + - azure_storage_account_name + - azure_container_name + - azure_client_id + - azure_tenant_id + - gcp_bucket_name + - gcp_project_id + - gcp_service_account_email + - cloud_provider + - prefix + - error + - error_code + type: object + CloudInventorySyncConfigAzureRequestAttributes: + description: Azure settings for the storage account and container with inventory data. + properties: + client_id: + description: Azure AD application (client) ID used for access. + example: 11111111-1111-1111-1111-111111111111 + type: string + container: + description: Blob container name. + example: inventory-container + type: string + resource_group: + description: Resource group containing the storage account. + example: my-resource-group + type: string + storage_account: + description: Storage account name. + example: mystorageaccount + type: string + subscription_id: + description: Azure subscription ID. + example: 33333333-3333-3333-3333-333333333333 + type: string + tenant_id: + description: Azure AD tenant ID. + example: 22222222-2222-2222-2222-222222222222 + type: string + required: + - client_id + - tenant_id + - subscription_id + - resource_group + - storage_account + - container + type: object + CloudInventorySyncConfigGCPRequestAttributes: + description: GCP settings for buckets involved in inventory reporting. + properties: + destination_bucket_name: + description: GCS bucket name where Datadog reads inventory reports. + example: my-inventory-reports + type: string + project_id: + description: GCP project ID for the inventory destination bucket. + example: my-gcp-project + type: string + service_account_email: + description: Service account email used to read the destination bucket. + example: reader@my-gcp-project.iam.gserviceaccount.com + type: string + source_bucket_name: + description: GCS bucket name that inventory reports are generated for. + example: my-monitored-bucket + type: string + required: + - project_id + - destination_bucket_name + - source_bucket_name + - service_account_email + type: object + CloudInventorySyncConfigResourceType: + description: Always `sync_configs`. + enum: + - sync_configs + example: sync_configs + type: string + x-enum-varnames: + - SYNC_CONFIGS + CloudInventorySyncConfigResponse: + description: Storage Management configuration returned after a create or update. Additional read-only fields appear on list and get responses. + properties: + data: + $ref: "#/components/schemas/CloudInventorySyncConfigResponseData" + required: + - data + type: object + CloudInventorySyncConfigResponseData: + description: Storage Management configuration data. + properties: + attributes: + $ref: "#/components/schemas/CloudInventorySyncConfigAttributes" + id: + description: Unique identifier for this Storage Management configuration. + example: abc123 + type: string + type: + $ref: "#/components/schemas/CloudInventorySyncConfigResourceType" + required: + - id + - type + - attributes + type: object + CloudWorkloadSecurityAgentPoliciesListResponse: + description: "Response object that includes a list of Agent policies" + properties: + data: + description: "A list of Agent policy objects" + items: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyData" + type: array + type: object + CloudWorkloadSecurityAgentPolicyAttributes: + description: "A Cloud Workload Security Agent policy returned by the API" + properties: + blockingRulesCount: + description: "The number of rules with the blocking feature in this policy" + example: 100 + format: int32 + maximum: 2147483647 + type: integer + datadogManaged: + description: "Whether the policy is managed by Datadog" + example: false + type: boolean + description: + description: "The description of the policy" + example: "My agent policy" + type: string + disabledRulesCount: + description: "The number of rules that are disabled in this policy" + example: 100 + format: int32 + maximum: 2147483647 + type: integer + enabled: + description: "Whether the Agent policy is enabled" + example: true + type: boolean + hostTags: + description: "The host tags defining where this policy is deployed" + items: + description: "A host tag used to identify where this policy is deployed." + type: string + type: array + hostTagsLists: + description: "The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR" + items: + description: "A list of host tags linked with AND logic." + items: + description: "A host tag used to filter the deployment scope." + type: string + type: array + type: array + monitoringRulesCount: + description: "The number of rules in the monitoring state in this policy" + example: 100 + format: int32 + maximum: 2147483647 + type: integer + name: + description: "The name of the policy" + example: "my_agent_policy" + type: string + pinned: + description: "Whether the policy is pinned" + example: false + type: boolean + policyType: + description: "The type of the policy" + example: "policy" + type: string + policyVersion: + description: "The version of the policy" + example: "1" + type: string + priority: + description: "The priority of the policy" + example: 10 + format: int64 + type: integer + ruleCount: + description: "The number of rules in this policy" + example: 100 + format: int32 + maximum: 2147483647 + type: integer + updateDate: + description: "Timestamp in milliseconds when the policy was last updated" + example: 1624366480320 + format: int64 + type: integer + updatedAt: + description: "When the policy was last updated, timestamp in milliseconds" + example: 1624366480320 + format: int64 + type: integer + updater: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdaterAttributes" + versions: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyVersions" + type: object + CloudWorkloadSecurityAgentPolicyCreateAttributes: + description: "Create a new Cloud Workload Security Agent policy" + properties: + description: + description: "The description of the policy" + example: "My agent policy" + type: string + enabled: + description: "Whether the policy is enabled" + example: true + type: boolean + hostTags: + description: "The host tags defining where this policy is deployed" + items: + description: "A host tag used to identify where this policy is deployed." + type: string + type: array + hostTagsLists: + description: "The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR" + items: + description: "A list of host tags linked with AND logic." + items: + description: "A host tag used to filter the deployment scope." + type: string + type: array + type: array + name: + description: "The name of the policy" + example: "my_agent_policy" + type: string + required: + - name + type: object + CloudWorkloadSecurityAgentPolicyCreateData: + description: "Object for a single Agent rule" + properties: + attributes: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateAttributes" + type: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyType" + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentPolicyCreateRequest: + description: "Request object that includes the Agent policy to create" + properties: + data: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateData" + required: + - data + type: object + CloudWorkloadSecurityAgentPolicyData: + description: "Object for a single Agent policy" + properties: + attributes: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyAttributes" + id: + description: "The ID of the Agent policy" + example: "6517fcc1-cec7-4394-a655-8d6e9d085255" + type: string + type: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyType" + type: object + CloudWorkloadSecurityAgentPolicyID: + description: "The ID of the Agent policy" + example: "6517fcc1-cec7-4394-a655-8d6e9d085255" + type: string + CloudWorkloadSecurityAgentPolicyResponse: + description: "Response object that includes an Agent policy" + properties: + data: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyData" + type: object + CloudWorkloadSecurityAgentPolicyType: + default: policy + description: "The type of the resource, must always be `policy`" + enum: + - policy + example: policy + type: string + x-enum-varnames: ["POLICY"] + CloudWorkloadSecurityAgentPolicyUpdateAttributes: + description: "Update an existing Cloud Workload Security Agent policy" + properties: + description: + description: "The description of the policy" + example: "My agent policy" + type: string + enabled: + description: "Whether the policy is enabled" + example: true + type: boolean + hostTags: + description: "The host tags defining where this policy is deployed" + items: + description: "A host tag used to identify where this policy is deployed." + type: string + type: array + hostTagsLists: + description: "The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR" + items: + description: "A list of host tags linked with AND logic." + items: + description: "A host tag used to filter the deployment scope." + type: string + type: array + type: array + name: + description: "The name of the policy" + example: "my_agent_policy" + type: string + type: object + CloudWorkloadSecurityAgentPolicyUpdateData: + description: "Object for a single Agent policy" + properties: + attributes: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateAttributes" + id: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyID" + type: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyType" + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentPolicyUpdateRequest: + description: "Request object that includes the Agent policy with the attributes to update" + properties: + data: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateData" + required: + - data + type: object + CloudWorkloadSecurityAgentPolicyUpdaterAttributes: + description: "The attributes of the user who last updated the policy" + properties: + handle: + description: "The handle of the user" + example: "datadog.user@example.com" + type: string + name: + description: "The name of the user" + example: "Datadog User" + nullable: true + type: string + type: object + CloudWorkloadSecurityAgentPolicyVersion: + description: "The versions of the policy" + properties: + date: + description: "The date and time the version was created" + nullable: true + type: string + name: + description: "The version of the policy" + example: "1.47.0-rc2" + type: string + type: object + CloudWorkloadSecurityAgentPolicyVersions: + description: "The versions of the policy" + items: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyVersion" + type: array + CloudWorkloadSecurityAgentRuleAction: + description: "The action the rule can perform if triggered" + properties: + filter: + description: "SECL expression used to target the container to apply the action on" + type: string + hash: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActionHash" + kill: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleKill" + metadata: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActionMetadata" + set: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActionSet" + type: object + CloudWorkloadSecurityAgentRuleActionHash: + description: "Hash file specified by the field attribute" + properties: + field: + description: "The field of the hash action" + type: string + type: object + CloudWorkloadSecurityAgentRuleActionMetadata: + description: "The metadata action applied on the scope matching the rule" + properties: + image_tag: + description: "The image tag of the metadata action" + type: string + service: + description: "The service of the metadata action" + type: string + short_image: + description: "The short image of the metadata action" + type: string + type: object + CloudWorkloadSecurityAgentRuleActionSet: + description: "The set action applied on the scope matching the rule" + properties: + append: + description: "Whether the value should be appended to the field." + type: boolean + default_value: + description: "The default value of the set action" + type: string + expression: + description: "The expression of the set action." + type: string + field: + description: "The field of the set action" + type: string + inherited: + description: "Whether the value should be inherited." + type: boolean + name: + description: "The name of the set action" + type: string + scope: + description: "The scope of the set action." + type: string + size: + description: "The size of the set action." + format: int64 + type: integer + ttl: + description: "The time to live of the set action." + format: int64 + type: integer + value: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActionSetValue" + type: object + CloudWorkloadSecurityAgentRuleActionSetValue: + description: "The value of the set action" + oneOf: + - type: string + - format: int32 + maximum: 2147483647 + type: integer + - type: boolean + CloudWorkloadSecurityAgentRuleActions: + description: "The array of actions the rule can perform if triggered" + items: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleAction" + nullable: true + type: array + CloudWorkloadSecurityAgentRuleAttributes: + description: "A Cloud Workload Security Agent rule returned by the API" + properties: + actions: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActions" + agentConstraint: + description: "The version of the Agent" + type: string + blocking: + description: "The blocking policies that the rule belongs to" + items: + description: "The ID of a blocking policy that this rule belongs to." + type: string + type: array + category: + description: "The category of the Agent rule" + example: "Process Activity" + type: string + creationAuthorUuId: + description: "The ID of the user who created the rule" + example: e51c9744-d158-11ec-ad23-da7ad0900002 + type: string + creationDate: + description: "When the Agent rule was created, timestamp in milliseconds" + example: 1624366480320 + format: int64 + type: integer + creator: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleCreatorAttributes" + defaultRule: + description: "Whether the rule is included by default" + example: false + type: boolean + description: + description: "The description of the Agent rule" + example: "My Agent rule" + type: string + disabled: + description: "The disabled policies that the rule belongs to" + items: + description: "The ID of a disabled policy that this rule belongs to." + type: string + type: array + enabled: + description: "Whether the Agent rule is enabled" + example: true + type: boolean + expression: + description: "The SECL expression of the Agent rule" + example: 'exec.file.name == "sh"' + type: string + filters: + description: "The platforms the Agent rule is supported on" + items: + description: "A platform filter that the Agent rule is supported on." + type: string + type: array + monitoring: + description: "The monitoring policies that the rule belongs to" + items: + description: "The ID of a monitoring policy that this rule belongs to." + type: string + type: array + name: + description: "The name of the Agent rule" + example: "my_agent_rule" + type: string + product_tags: + description: "The list of product tags associated with the rule" + items: + description: "A product tag associated with the rule." + type: string + type: array + silent: + description: "Whether the rule is silent." + example: false + type: boolean + updateAuthorUuId: + description: "The ID of the user who updated the rule" + example: e51c9744-d158-11ec-ad23-da7ad0900002 + type: string + updateDate: + description: "Timestamp in milliseconds when the Agent rule was last updated" + example: 1624366480320 + format: int64 + type: integer + updatedAt: + description: "When the Agent rule was last updated, timestamp in milliseconds" + example: 1624366480320 + format: int64 + type: integer + updater: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleUpdaterAttributes" + version: + description: "The version of the Agent rule" + example: 23 + format: int64 + type: integer + type: object + CloudWorkloadSecurityAgentRuleCreateAttributes: + description: "Create a new Cloud Workload Security Agent rule." + properties: + actions: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActions" + agent_version: + description: "Constrain the rule to specific versions of the Datadog Agent." + type: string + blocking: + description: "The blocking policies that the rule belongs to." + items: + description: "The ID of a blocking policy that this rule belongs to." + type: string + type: array + description: + description: "The description of the Agent rule." + example: "My Agent rule" + type: string + disabled: + description: "The disabled policies that the rule belongs to." + items: + description: "The ID of a disabled policy that this rule belongs to." + type: string + type: array + enabled: + description: "Whether the Agent rule is enabled." + example: true + type: boolean + expression: + description: "The SECL expression of the Agent rule." + example: 'exec.file.name == "sh"' + type: string + filters: + description: "The platforms the Agent rule is supported on." + items: + description: "A platform filter that the Agent rule is supported on." + type: string + type: array + monitoring: + description: "The monitoring policies that the rule belongs to." + items: + description: "The ID of a monitoring policy that this rule belongs to." + type: string + type: array + name: + description: "The name of the Agent rule." + example: "my_agent_rule" + type: string + policy_id: + description: "The ID of the policy where the Agent rule is saved." + example: "a8c8e364-6556-434d-b798-a4c23de29c0b" + type: string + product_tags: + description: "The list of product tags associated with the rule." + items: + description: "A product tag associated with the rule." + type: string + type: array + silent: + description: "Whether the rule is silent." + example: false + type: boolean + required: + - name + - expression + type: object + CloudWorkloadSecurityAgentRuleCreateData: + description: "Object for a single Agent rule" + properties: + attributes: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes" + type: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleType" + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentRuleCreateRequest: + description: "Request object that includes the Agent rule to create" + properties: + data: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleCreateData" + required: + - data + type: object + CloudWorkloadSecurityAgentRuleCreatorAttributes: + description: "The attributes of the user who created the Agent rule" + properties: + handle: + description: "The handle of the user" + example: "datadog.user@example.com" + type: string + name: + description: "The name of the user" + example: "Datadog User" + nullable: true + type: string + type: object + CloudWorkloadSecurityAgentRuleData: + description: "Object for a single Agent rule" + properties: + attributes: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleAttributes" + id: + description: "The ID of the Agent rule" + example: "3dd-0uc-h1s" + type: string + type: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleType" + type: object + CloudWorkloadSecurityAgentRuleID: + description: "The ID of the Agent rule" + example: "3dd-0uc-h1s" + type: string + CloudWorkloadSecurityAgentRuleKill: + description: "Kill system call applied on the container matching the rule" + properties: + signal: + description: "Supported signals for the kill system call" + type: string + type: object + CloudWorkloadSecurityAgentRuleResponse: + description: "Response object that includes an Agent rule" + properties: + data: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleData" + type: object + CloudWorkloadSecurityAgentRuleType: + default: agent_rule + description: "The type of the resource, must always be `agent_rule`" + enum: + - agent_rule + example: agent_rule + type: string + x-enum-varnames: ["AGENT_RULE"] + CloudWorkloadSecurityAgentRuleUpdateAttributes: + description: "Update an existing Cloud Workload Security Agent rule" + properties: + actions: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleActions" + agent_version: + description: "Constrain the rule to specific versions of the Datadog Agent" + type: string + blocking: + description: "The blocking policies that the rule belongs to" + items: + description: "The ID of a blocking policy that this rule belongs to." + type: string + type: array + description: + description: "The description of the Agent rule" + example: "My Agent rule" + type: string + disabled: + description: "The disabled policies that the rule belongs to" + items: + description: "The ID of a disabled policy that this rule belongs to." + type: string + type: array + enabled: + description: "Whether the Agent rule is enabled" + example: true + type: boolean + expression: + description: "The SECL expression of the Agent rule" + example: 'exec.file.name == "sh"' + type: string + monitoring: + description: "The monitoring policies that the rule belongs to" + items: + description: "The ID of a monitoring policy that this rule belongs to." + type: string + type: array + policy_id: + description: "The ID of the policy where the Agent rule is saved" + example: "a8c8e364-6556-434d-b798-a4c23de29c0b" + type: string + product_tags: + description: "The list of product tags associated with the rule" + items: + description: "A product tag associated with the rule." + type: string + type: array + silent: + description: "Whether the rule is silent." + example: false + type: boolean + type: object + CloudWorkloadSecurityAgentRuleUpdateData: + description: "Object for a single Agent rule" + properties: + attributes: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes" + id: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleID" + type: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleType" + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentRuleUpdateRequest: + description: "Request object that includes the Agent rule with the attributes to update" + properties: + data: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData" + required: + - data + type: object + CloudWorkloadSecurityAgentRuleUpdaterAttributes: + description: "The attributes of the user who last updated the Agent rule" + properties: + handle: + description: "The handle of the user" + example: "datadog.user@example.com" + type: string + name: + description: "The name of the user" + example: "Datadog User" + nullable: true + type: string + type: object + CloudWorkloadSecurityAgentRulesListResponse: + description: "Response object that includes a list of Agent rule" + properties: + data: + description: "A list of Agent rules objects" + items: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleData" + type: array + type: object + CloudflareAPIToken: + description: The definition of the `CloudflareAPIToken` object. + properties: + api_token: + description: The `CloudflareAPIToken` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/CloudflareAPITokenType" + required: + - type + - api_token + type: object + CloudflareAPITokenType: + description: The definition of the `CloudflareAPIToken` object. + enum: + - CloudflareAPIToken + example: CloudflareAPIToken + type: string + x-enum-varnames: + - CLOUDFLAREAPITOKEN + CloudflareAPITokenUpdate: + description: The definition of the `CloudflareAPIToken` object. + properties: + api_token: + description: The `CloudflareAPITokenUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/CloudflareAPITokenType" + required: + - type + type: object + CloudflareAccountCreateRequest: + description: Payload schema when adding a Cloudflare account. + properties: + data: + $ref: "#/components/schemas/CloudflareAccountCreateRequestData" + required: + - data + type: object + CloudflareAccountCreateRequestAttributes: + description: Attributes object for creating a Cloudflare account. + properties: + api_key: + description: The API key (or token) for the Cloudflare account. + example: "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3" + type: string + email: + description: The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required. + example: "test-email@example.com" + type: string + name: + description: The name of the Cloudflare account. + example: "test-name" + type: string + resources: + description: An allowlist of resources to restrict pulling metrics for including `'web', 'dns', 'lb' (load balancer), 'worker'`. + example: ["web", "dns", "lb", "worker"] + items: + description: A Cloudflare resource type (for example, `web`, `dns`, `lb`, `worker`). + type: string + type: array + zones: + description: An allowlist of zones to restrict pulling metrics for. + example: ["zone_id_1", "zone_id_2"] + items: + description: A Cloudflare zone ID to restrict pulling metrics for. + type: string + type: array + required: + - api_key + - name + type: object + CloudflareAccountCreateRequestData: + description: Data object for creating a Cloudflare account. + properties: + attributes: + $ref: "#/components/schemas/CloudflareAccountCreateRequestAttributes" + type: + $ref: "#/components/schemas/CloudflareAccountType" + required: + - attributes + - type + type: object + CloudflareAccountResponse: + description: The expected response schema when getting a Cloudflare account. + properties: + data: + $ref: "#/components/schemas/CloudflareAccountResponseData" + type: object + CloudflareAccountResponseAttributes: + description: Attributes object of a Cloudflare account. + properties: + email: + description: The email associated with the Cloudflare account. + example: "test-email@example.com" + type: string + name: + description: The name of the Cloudflare account. + example: "test-name" + type: string + resources: + description: An allowlist of resources, such as `web`, `dns`, `lb` (load balancer), `worker`, that restricts pulling metrics from those resources. + example: ["web", "dns", "lb", "worker"] + items: + description: A Cloudflare resource type (for example, `web`, `dns`, `lb`, `worker`). + type: string + type: array + zones: + description: An allowlist of zones to restrict pulling metrics for. + example: ["zone_id_1", "zone_id_2"] + items: + description: A Cloudflare zone ID to restrict pulling metrics for. + type: string + type: array + required: + - name + type: object + CloudflareAccountResponseData: + description: Data object of a Cloudflare account. + properties: + attributes: + $ref: "#/components/schemas/CloudflareAccountResponseAttributes" + id: + description: The ID of the Cloudflare account, a hash of the account name. + example: "c1a8e059bfd1e911cf10b626340c9a54" + type: string + type: + $ref: "#/components/schemas/CloudflareAccountType" + required: + - attributes + - id + - type + type: object + CloudflareAccountType: + default: cloudflare-accounts + description: The JSON:API type for this API. Should always be `cloudflare-accounts`. + enum: + - cloudflare-accounts + example: cloudflare-accounts + type: string + x-enum-varnames: + - CLOUDFLARE_ACCOUNTS + CloudflareAccountUpdateRequest: + description: Payload schema when updating a Cloudflare account. + properties: + data: + $ref: "#/components/schemas/CloudflareAccountUpdateRequestData" + required: + - data + type: object + CloudflareAccountUpdateRequestAttributes: + description: Attributes object for updating a Cloudflare account. + properties: + api_key: + description: The API key of the Cloudflare account. + example: "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3" + type: string + email: + description: The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required. + example: "test-email@example.com" + type: string + name: + description: The name of the Cloudflare account. + type: string + resources: + description: An allowlist of resources to restrict pulling metrics for including `'web', 'dns', 'lb' (load balancer), 'worker'`. + example: ["web", "dns", "lb", "worker"] + items: + description: A Cloudflare resource type (for example, `web`, `dns`, `lb`, `worker`). + type: string + type: array + zones: + description: An allowlist of zones to restrict pulling metrics for. + example: ["zone_id_1", "zone_id_2"] + items: + description: A Cloudflare zone ID to restrict pulling metrics for. + type: string + type: array + required: + - api_key + type: object + CloudflareAccountUpdateRequestData: + description: Data object for updating a Cloudflare account. + properties: + attributes: + $ref: "#/components/schemas/CloudflareAccountUpdateRequestAttributes" + type: + $ref: "#/components/schemas/CloudflareAccountType" + type: object + CloudflareAccountsResponse: + description: The expected response schema when getting Cloudflare accounts. + properties: + data: + description: The JSON:API data schema. + items: + $ref: "#/components/schemas/CloudflareAccountResponseData" + type: array + type: object + CloudflareCredentials: + description: The definition of the `CloudflareCredentials` object. + oneOf: + - $ref: "#/components/schemas/CloudflareAPIToken" + - $ref: "#/components/schemas/CloudflareGlobalAPIToken" + CloudflareCredentialsUpdate: + description: The definition of the `CloudflareCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/CloudflareAPITokenUpdate" + - $ref: "#/components/schemas/CloudflareGlobalAPITokenUpdate" + CloudflareGlobalAPIToken: + description: The definition of the `CloudflareGlobalAPIToken` object. + properties: + auth_email: + description: The `CloudflareGlobalAPIToken` `auth_email`. + example: "" + type: string + global_api_key: + description: The `CloudflareGlobalAPIToken` `global_api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/CloudflareGlobalAPITokenType" + required: + - type + - auth_email + - global_api_key + type: object + CloudflareGlobalAPITokenType: + description: The definition of the `CloudflareGlobalAPIToken` object. + enum: + - CloudflareGlobalAPIToken + example: CloudflareGlobalAPIToken + type: string + x-enum-varnames: + - CLOUDFLAREGLOBALAPITOKEN + CloudflareGlobalAPITokenUpdate: + description: The definition of the `CloudflareGlobalAPIToken` object. + properties: + auth_email: + description: The `CloudflareGlobalAPITokenUpdate` `auth_email`. + type: string + global_api_key: + description: The `CloudflareGlobalAPITokenUpdate` `global_api_key`. + type: string + type: + $ref: "#/components/schemas/CloudflareGlobalAPITokenType" + required: + - type + type: object + CloudflareIntegration: + description: The definition of the `CloudflareIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/CloudflareCredentials" + type: + $ref: "#/components/schemas/CloudflareIntegrationType" + required: + - type + - credentials + type: object + CloudflareIntegrationType: + description: The definition of the `CloudflareIntegrationType` object. + enum: + - Cloudflare + example: Cloudflare + type: string + x-enum-varnames: + - CLOUDFLARE + CloudflareIntegrationUpdate: + description: The definition of the `CloudflareIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/CloudflareCredentialsUpdate" + type: + $ref: "#/components/schemas/CloudflareIntegrationType" + required: + - type + type: object + CodeLocation: + description: Code vulnerability location. + properties: + file_path: + description: Vulnerability location file path. + example: "src/Class.java:100" + type: string + location: + description: Vulnerability extracted location. + example: "com.example.Class:100" + type: string + method: + description: Vulnerability location method. + example: FooBar + type: string + required: + - location + type: object + CommitCoverageSummaryRequest: + description: Request object for getting code coverage summary for a commit. + properties: + data: + $ref: "#/components/schemas/CommitCoverageSummaryRequestData" + required: + - data + type: object + CommitCoverageSummaryRequestAttributes: + description: Attributes for requesting code coverage summary for a commit. + properties: + commit_sha: + description: The commit SHA (40-character hexadecimal string). + example: 66adc9350f2cc9b250b69abddab733dd55e1a588 + pattern: "^[a-fA-F0-9]{40}$" + type: string + repository_id: + deprecated: true + description: "Deprecated: use `repository_url` instead. The repository URL." + example: github.com/datadog/shopist + minLength: 1 + type: string + repository_url: + description: The repository URL. Accepts a full URL with or without a scheme (for example, `https://github.com/org/repo` or `github.com/org/repo`). + example: https://github.com/datadog/shopist + minLength: 1 + type: string + required: + - commit_sha + type: object + CommitCoverageSummaryRequestData: + description: Data object for commit summary request. + properties: + attributes: + $ref: "#/components/schemas/CommitCoverageSummaryRequestAttributes" + type: + $ref: "#/components/schemas/CommitCoverageSummaryRequestType" + required: + - type + - attributes + type: object + CommitCoverageSummaryRequestType: + description: JSON:API type for commit coverage summary request. The value must always be `ci_app_coverage_commit_summary_request`. + enum: + - ci_app_coverage_commit_summary_request + example: ci_app_coverage_commit_summary_request + type: string + x-enum-varnames: + - CI_APP_COVERAGE_COMMIT_SUMMARY_REQUEST + CommitmentsAwsEC2RICommitment: + description: AWS EC2 Reserved Instance commitment details. + properties: + availability_zone: + description: The availability zone of the reservation. + example: us-east-1a + type: string + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 + type: string + expiration_date: + description: The expiration date of the commitment. + example: "2025-12-31T00:00:00Z" + type: string + instance_type: + description: The EC2 instance type. + example: m5.xlarge + type: string + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 + format: double + type: number + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + offering_class: + description: The offering class of the Reserved Instance. + example: standard + type: string + operating_system: + description: The operating system of the Reserved Instance. + example: Linux + type: string + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront + type: string + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 + type: string + start_date: + description: The start date of the commitment. + example: "2023-01-01T00:00:00Z" + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - commitment_id + - instance_type + - offering_class + - operating_system + - purchase_option + - region + type: object + CommitmentsAwsElasticacheRICommitment: + description: AWS ElastiCache Reserved Instance commitment details. + properties: + cache_engine: + description: The cache engine type of the Reserved Instance. + example: Redis + type: string + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 + type: string + expiration_date: + description: The expiration date of the commitment. + example: "2025-12-31T00:00:00Z" + type: string + instance_type: + description: The ElastiCache instance type. + example: cache.m5.xlarge + type: string + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 + format: double + type: number + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront + type: string + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 + type: string + start_date: + description: The start date of the commitment. + example: "2023-01-01T00:00:00Z" + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - cache_engine + - commitment_id + - instance_type + - purchase_option + - region + type: object + CommitmentsAwsRDSRICommitment: + description: AWS RDS Reserved Instance commitment details. + properties: + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 + type: string + database_engine: + description: The database engine of the Reserved Instance. + example: MySQL + type: string + expiration_date: + description: The expiration date of the commitment. + example: "2025-12-31T00:00:00Z" + type: string + instance_type: + description: The RDS instance type. + example: db.m5.xlarge + type: string + is_multi_az: + description: Whether the Reserved Instance is Multi-AZ. + example: false + type: boolean + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 + format: double + type: number + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront + type: string + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 + type: string + start_date: + description: The start date of the commitment. + example: "2023-01-01T00:00:00Z" + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - commitment_id + - database_engine + - instance_type + - purchase_option + - region + type: object + CommitmentsAwsSPCommitment: + description: AWS Savings Plan commitment details. + properties: + commitment_id: + description: The unique identifier of the Savings Plan. + example: arn:aws:savingsplans::123456789:savingsplan/abc123 + type: string + committed_spend_per_hour: + description: The hourly committed spend for the Savings Plan. + example: 1.5 + format: double + type: number + expiration_date: + description: The expiration date of the commitment. + example: "2025-12-31T00:00:00Z" + type: string + purchase_option: + description: The payment option for the Savings Plan. + example: All Upfront + type: string + savings_plan_type: + description: The Savings Plan type. + example: ComputeSavingsPlans + type: string + start_date: + description: The start date of the commitment. + example: "2023-01-01T00:00:00Z" + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - commitment_id + - purchase_option + - savings_plan_type + type: object + CommitmentsAzureComputeSPCommitment: + description: Azure Compute Savings Plan commitment details. + properties: + benefit_name: + description: The display name of the Azure Savings Plan. + example: my-compute-savings-plan + type: string + commitment_id: + description: The unique identifier of the Savings Plan. + example: /subscriptions/abc123/providers/Microsoft.BillingBenefits/savingsPlanOrders/xyz789 + type: string + committed_spend_per_hour: + description: The hourly committed spend for the Savings Plan. + example: 2.5 + format: double + type: number + expiration_date: + description: The expiration date of the commitment. + example: "2025-12-31T00:00:00Z" + type: string + start_date: + description: The start date of the commitment. + example: "2023-01-01T00:00:00Z" + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - benefit_name + - commitment_id + type: object + CommitmentsAzureVMRICommitment: + description: Azure Virtual Machine Reserved Instance commitment details. + properties: + benefit_name: + description: The display name of the Azure reservation. + example: my-vm-reservation + type: string + commitment_id: + description: The unique identifier of the Reserved Instance. + example: /subscriptions/abc123/providers/Microsoft.Capacity/reservationOrders/xyz789 + type: string + expiration_date: + description: The expiration date of the commitment. + example: "2025-12-31T00:00:00Z" + type: string + instance_type: + description: The Azure VM instance type. + example: Standard_D4s_v3 + type: string + meter_sub_category: + description: The Azure meter sub-category for the reservation. + example: D4s v3 + type: string + region: + description: The Azure region of the Reserved Instance. + example: eastus + type: string + start_date: + description: The start date of the commitment. + example: "2023-01-01T00:00:00Z" + type: string + status: + $ref: "#/components/schemas/CommitmentsAzureVMRIStatus" + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - benefit_name + - commitment_id + - instance_type + - meter_sub_category + - region + - status + type: object + CommitmentsAzureVMRIStatus: + description: Status of an Azure VM Reserved Instance. + enum: + - running + - expired + - cancelled + example: running + type: string + x-enum-varnames: + - RUNNING + - EXPIRED + - CANCELLED + CommitmentsCommitmentType: + description: Type of commitment. ri for Reserved Instances, sp for Savings Plans. + enum: + - ri + - sp + example: ri + type: string + x-enum-varnames: + - RESERVED_INSTANCES + - SAVINGS_PLANS + CommitmentsCoverageScalarResponse: + description: Response containing scalar coverage metrics for cloud commitment programs. + properties: + columns: + $ref: "#/components/schemas/CommitmentsScalarColumns" + required: + - columns + type: object + CommitmentsCoverageTimeseriesResponse: + description: Response containing timeseries coverage metrics for cloud commitment programs. + properties: + cost: + $ref: "#/components/schemas/CommitmentsTimeseriesMetric" + hours: + $ref: "#/components/schemas/CommitmentsTimeseriesMetric" + required: + - cost + - hours + type: object + CommitmentsListItem: + description: A commitment item, which varies based on the provider, product, and commitment type. + oneOf: + - $ref: "#/components/schemas/CommitmentsAwsEC2RICommitment" + - $ref: "#/components/schemas/CommitmentsAwsRDSRICommitment" + - $ref: "#/components/schemas/CommitmentsAwsElasticacheRICommitment" + - $ref: "#/components/schemas/CommitmentsAwsSPCommitment" + - $ref: "#/components/schemas/CommitmentsAzureVMRICommitment" + - $ref: "#/components/schemas/CommitmentsAzureComputeSPCommitment" + CommitmentsListItems: + description: Array of commitment items. + example: + - commitment_id: ri-0123456789abcdef0 + instance_type: m5.xlarge + offering_class: standard + operating_system: Linux + purchase_option: All Upfront + region: us-east-1 + items: + $ref: "#/components/schemas/CommitmentsListItem" + type: array + CommitmentsListMeta: + description: Metadata for a commitments list response. + properties: + committed_spend_unit: + $ref: "#/components/schemas/CommitmentsUnit" + type: object + CommitmentsListResponse: + description: Response containing a list of cloud commitment details. + properties: + commitments: + $ref: "#/components/schemas/CommitmentsListItems" + meta: + $ref: "#/components/schemas/CommitmentsListMeta" + required: + - commitments + type: object + CommitmentsOnDemandHotspotsScalarMeta: + description: Metadata for the on-demand hot-spots scalar response. + properties: + on_demand_filters: + description: Active on-demand filters applied to the response. + example: "region:us-east-1" + type: string + required: + - on_demand_filters + type: object + CommitmentsOnDemandHotspotsScalarResponse: + description: Response containing scalar on-demand hot-spots data for cloud commitment programs. + properties: + columns: + $ref: "#/components/schemas/CommitmentsScalarColumns" + meta: + $ref: "#/components/schemas/CommitmentsOnDemandHotspotsScalarMeta" + total: + $ref: "#/components/schemas/CommitmentsScalarColumns" + required: + - columns + - total + type: object + CommitmentsProvider: + description: Cloud provider for commitment programs. + enum: + - aws + - azure + example: aws + type: string + x-enum-varnames: + - AWS + - AZURE + CommitmentsSavingsScalarResponse: + description: Response containing scalar savings metrics for cloud commitment programs. + properties: + columns: + $ref: "#/components/schemas/CommitmentsScalarColumns" + required: + - columns + type: object + CommitmentsSavingsTimeseriesResponse: + description: Response containing timeseries savings metrics for cloud commitment programs. + properties: + actual_cost: + $ref: "#/components/schemas/CommitmentsTimeseriesMetric" + effective_savings_rate: + $ref: "#/components/schemas/CommitmentsTimeseriesMetric" + on_demand_equivalent_cost: + $ref: "#/components/schemas/CommitmentsTimeseriesMetric" + realized_savings: + $ref: "#/components/schemas/CommitmentsTimeseriesMetric" + required: + - actual_cost + - effective_savings_rate + - on_demand_equivalent_cost + - realized_savings + type: object + CommitmentsScalarColumn: + description: A column in a scalar response. When type is "group", values contains arrays of strings. When type is "number", values contains numeric values. + properties: + meta: + $ref: "#/components/schemas/CommitmentsScalarColumnMeta" + name: + description: The column name. + example: utilization + type: string + type: + $ref: "#/components/schemas/CommitmentsScalarColumnType" + values: + $ref: "#/components/schemas/CommitmentsScalarColumnValueItems" + required: + - name + - type + - values + type: object + CommitmentsScalarColumnMeta: + description: Metadata for a scalar column, including unit information. + properties: + unit: + $ref: "#/components/schemas/CommitmentsUnit" + required: + - unit + type: object + CommitmentsScalarColumnType: + description: The column type. "group" for dimension columns, "number" for metric columns. + enum: + - group + - number + example: group + type: string + x-enum-varnames: + - GROUP + - NUMBER + CommitmentsScalarColumnValueItems: + description: Values for a scalar column. Arrays of strings for group columns, numbers for value columns. + example: + - 0.85 + - 0.72 + items: + description: A scalar column value, either a group key (string) or a numeric metric. + type: array + CommitmentsScalarColumns: + description: Array of scalar columns in the response. + items: + $ref: "#/components/schemas/CommitmentsScalarColumn" + type: array + CommitmentsTimeseriesMetric: + description: A timeseries metric containing timestamps, series values, and optional unit metadata. + properties: + series: + $ref: "#/components/schemas/CommitmentsTimeseriesSeries" + times: + $ref: "#/components/schemas/CommitmentsTimestamps" + unit: + $ref: "#/components/schemas/CommitmentsUnit" + required: + - series + - times + type: object + CommitmentsTimeseriesSeries: + additionalProperties: + $ref: "#/components/schemas/CommitmentsTimeseriesValues" + description: Timeseries data as a map of series names to their corresponding value arrays. + type: object + CommitmentsTimeseriesValues: + description: A series of numeric values for a timeseries metric. + items: + description: A single numeric value in the timeseries. + format: double + type: number + type: array + CommitmentsTimestamps: + description: Unix timestamps in seconds for the timeseries data points. + example: + - 1693526400 + - 1693612800 + items: + description: A Unix timestamp in seconds. + format: int64 + type: integer + type: array + CommitmentsUnit: + description: Unit metadata for a numeric metric. + properties: + family: + description: The unit family (for example, percentage or money). + example: percentage + type: string + id: + description: The unit identifier. + example: 17 + format: int64 + type: integer + name: + description: The unit name (for example, percent or dollar). + example: percent + type: string + plural: + description: The plural form of the unit name. + example: percent + type: string + scale_factor: + description: The scale factor for the unit. + example: 1 + format: double + type: number + short_name: + description: The abbreviated unit name (for example, % or $). + example: "%" + type: string + required: + - family + - id + - name + - plural + - scale_factor + - short_name + type: object + CommitmentsUtilizationScalarProductBreakdown: + description: Array of per-product utilization breakdown entries. + items: + $ref: "#/components/schemas/CommitmentsUtilizationScalarProductBreakdownEntry" + type: array + CommitmentsUtilizationScalarProductBreakdownEntry: + description: Per-product utilization data in a scalar utilization response. + properties: + product: + description: The cloud product name. + example: ec2 + type: string + utilization: + description: The utilization percentage for the product. + example: 0.85 + format: double + type: number + required: + - product + - utilization + type: object + CommitmentsUtilizationScalarResponse: + description: Response containing scalar utilization metrics for cloud commitment programs. + properties: + columns: + $ref: "#/components/schemas/CommitmentsScalarColumns" + product_breakdown: + $ref: "#/components/schemas/CommitmentsUtilizationScalarProductBreakdown" + required: + - columns + type: object + CommitmentsUtilizationTimeseriesResponse: + description: Response containing timeseries utilization metrics for cloud commitment programs. + properties: + series: + $ref: "#/components/schemas/CommitmentsTimeseriesSeries" + times: + $ref: "#/components/schemas/CommitmentsTimestamps" + unit: + $ref: "#/components/schemas/CommitmentsUnit" + required: + - series + - times + type: object + CompletionCondition: + additionalProperties: false + description: The definition of `CompletionCondition` object. + properties: + operand1: + description: The `CompletionCondition` `operand1`. + operand2: + description: The `CompletionCondition` `operand2`. + operator: + $ref: "#/components/schemas/CompletionConditionOperator" + required: + - operand1 + - operator + type: object + CompletionConditionOperator: + description: The definition of `CompletionConditionOperator` object. + enum: + - OPERATOR_EQUAL + - OPERATOR_NOT_EQUAL + - OPERATOR_GREATER_THAN + - OPERATOR_LESS_THAN + - OPERATOR_GREATER_THAN_OR_EQUAL_TO + - OPERATOR_LESS_THAN_OR_EQUAL_TO + - OPERATOR_CONTAINS + - OPERATOR_DOES_NOT_CONTAIN + - OPERATOR_IS_NULL + - OPERATOR_IS_NOT_NULL + - OPERATOR_IS_EMPTY + - OPERATOR_IS_NOT_EMPTY + example: OPERATOR_EQUAL + type: string + x-enum-varnames: + - OPERATOR_EQUAL + - OPERATOR_NOT_EQUAL + - OPERATOR_GREATER_THAN + - OPERATOR_LESS_THAN + - OPERATOR_GREATER_THAN_OR_EQUAL_TO + - OPERATOR_LESS_THAN_OR_EQUAL_TO + - OPERATOR_CONTAINS + - OPERATOR_DOES_NOT_CONTAIN + - OPERATOR_IS_NULL + - OPERATOR_IS_NOT_NULL + - OPERATOR_IS_EMPTY + - OPERATOR_IS_NOT_EMPTY + CompletionGate: + additionalProperties: false + description: Used to create conditions before running subsequent actions. + properties: + completionCondition: + $ref: "#/components/schemas/CompletionCondition" + retryStrategy: + $ref: "#/components/schemas/RetryStrategy" + required: + - completionCondition + - retryStrategy + type: object + Component: + description: "[Definition of a UI component in the app](https://docs.datadoghq.com/service_management/app_builder/components/)" + properties: + events: + description: Events to listen for on the UI component. + items: + $ref: "#/components/schemas/AppBuilderEvent" + type: array + id: + description: The ID of the UI component. This property is deprecated; use `name` to identify individual components instead. + nullable: true + type: string + name: + description: A unique identifier for this UI component. This name is also visible in the app editor. + example: "" + type: string + properties: + $ref: "#/components/schemas/ComponentProperties" + type: + $ref: "#/components/schemas/ComponentType" + required: + - name + - type + - properties + type: object + ComponentGrid: + description: A grid component. The grid component is the root canvas for an app and contains all other components. + properties: + events: + description: Events to listen for on the grid component. + items: + $ref: "#/components/schemas/AppBuilderEvent" + type: array + id: + description: The ID of the grid component. This property is deprecated; use `name` to identify individual components instead. + type: string + name: + description: A unique identifier for this grid component. This name is also visible in the app editor. + example: "" + type: string + properties: + $ref: "#/components/schemas/ComponentGridProperties" + type: + $ref: "#/components/schemas/ComponentGridType" + required: + - name + - type + - properties + type: object + ComponentGridProperties: + description: Properties of a grid component. + properties: + backgroundColor: + default: default + description: The background color of the grid. + type: string + children: + description: The child components of the grid. + items: + $ref: "#/components/schemas/Component" + type: array + isVisible: + $ref: "#/components/schemas/ComponentGridPropertiesIsVisible" + type: object + ComponentGridPropertiesIsVisible: + description: Whether the grid component and its children are visible. If a string, it must be a valid JavaScript expression that evaluates to a boolean. + oneOf: + - type: string + - default: true + type: boolean + ComponentGridType: + default: grid + description: The grid component type. + enum: + - grid + example: grid + type: string + x-enum-varnames: + - GRID + ComponentProperties: + additionalProperties: {} + description: Properties of a UI component. Different component types can have their own additional unique properties. See the [components documentation](https://docs.datadoghq.com/service_management/app_builder/components/) for more detail on each component type and its properties. + properties: + children: + description: The child components of the UI component. + items: + $ref: "#/components/schemas/Component" + type: array + isVisible: + $ref: "#/components/schemas/ComponentPropertiesIsVisible" + type: object + ComponentPropertiesIsVisible: + description: Whether the UI component is visible. If this is a string, it must be a valid JavaScript expression that evaluates to a boolean. + oneOf: + - type: boolean + - description: "If this is a string, it must be a valid JavaScript expression that evaluates to a boolean." + example: "${true}" + type: string + ComponentRecommendation: + description: Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs. + properties: + estimation: + $ref: "#/components/schemas/Estimation" + required: [estimation] + type: object + ComponentType: + description: The UI component type. + enum: + - table + - textInput + - textArea + - button + - text + - select + - modal + - schemaForm + - checkbox + - tabs + - vegaChart + - radioButtons + - numberInput + - fileInput + - jsonInput + - gridCell + - dateRangePicker + - search + - container + - calloutValue + example: text + type: string + x-enum-varnames: + - TABLE + - TEXTINPUT + - TEXTAREA + - BUTTON + - TEXT + - SELECT + - MODAL + - SCHEMAFORM + - CHECKBOX + - TABS + - VEGACHART + - RADIOBUTTONS + - NUMBERINPUT + - FILEINPUT + - JSONINPUT + - GRIDCELL + - DATERANGEPICKER + - SEARCH + - CONTAINER + - CALLOUTVALUE + Condition: + description: |- + Targeting condition details. A condition is either an inline + predicate with `operator`, `attribute`, and `value`, or a reference to a + saved filter with `saved_filter_id`. The inline fields are omitted for saved-filter + references. + properties: + attribute: + description: The user or request attribute to evaluate. Omitted for saved-filter references. + example: "country" + type: string + created_at: + description: The timestamp when the condition was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + id: + description: The unique identifier of the condition. + example: "550e8400-e29b-41d4-a716-446655440070" + format: uuid + type: string + operator: + $ref: "#/components/schemas/ConditionOperator" + saved_filter_id: + description: The ID of the saved filter referenced by this condition, or null for inline conditions. + example: "550e8400-e29b-41d4-a716-446655440090" + format: uuid + nullable: true + type: string + updated_at: + description: The timestamp when the condition was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + value: + description: Values used by the selected operator. Omitted for saved-filter references. + example: ["US", "CA"] + items: + description: Target value for the selected operator. + type: string + type: array + required: + - id + - created_at + - updated_at + type: object + ConditionOperator: + description: The operator used in a targeting condition. + enum: + - LT + - LTE + - GT + - GTE + - MATCHES + - NOT_MATCHES + - ONE_OF + - NOT_ONE_OF + - IS_NULL + - EQUALS + example: "ONE_OF" + type: string + x-enum-varnames: + - LT + - LTE + - GT + - GTE + - MATCHES + - NOT_MATCHES + - ONE_OF + - NOT_ONE_OF + - IS_NULL + - EQUALS + ConditionRequest: + description: |- + Condition request payload for targeting rules. A condition is either an inline + predicate with `operator`, `attribute`, and `value`, or a reference to a + saved filter with `saved_filter_id`. The two shapes are mutually exclusive. + properties: + attribute: + description: The user or request attribute to evaluate. Required for inline conditions; omit when `saved_filter_id` is set. + example: "user_tier" + type: string + operator: + $ref: "#/components/schemas/ConditionOperator" + saved_filter_id: + description: |- + The ID of a saved filter to reference as this condition. Mutually exclusive + with `operator`, `attribute`, and `value`. When set, the saved filter's + targeting rules are evaluated in place of an inline predicate. + example: "550e8400-e29b-41d4-a716-446655440090" + format: uuid + type: string + value: + description: Values used by the selected operator. Required for inline conditions; omit when `saved_filter_id` is set. + example: ["premium", "enterprise"] + items: + description: Target value for the selected operator. + type: string + type: array + type: object + ConfigCatCredentials: + description: The definition of the `ConfigCatCredentials` object. + oneOf: + - $ref: "#/components/schemas/ConfigCatSDKKey" + ConfigCatCredentialsUpdate: + description: The definition of the `ConfigCatCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/ConfigCatSDKKeyUpdate" + ConfigCatIntegration: + description: The definition of the `ConfigCatIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/ConfigCatCredentials" + type: + $ref: "#/components/schemas/ConfigCatIntegrationType" + required: + - type + - credentials + type: object + ConfigCatIntegrationType: + description: The definition of the `ConfigCatIntegrationType` object. + enum: + - ConfigCat + example: ConfigCat + type: string + x-enum-varnames: + - CONFIGCAT + ConfigCatIntegrationUpdate: + description: The definition of the `ConfigCatIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/ConfigCatCredentialsUpdate" + type: + $ref: "#/components/schemas/ConfigCatIntegrationType" + required: + - type + type: object + ConfigCatSDKKey: + description: The definition of the `ConfigCatSDKKey` object. + properties: + api_password: + description: The `ConfigCatSDKKey` `api_password`. + example: "" + type: string + api_username: + description: The `ConfigCatSDKKey` `api_username`. + example: "" + type: string + sdk_key: + description: The `ConfigCatSDKKey` `sdk_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/ConfigCatSDKKeyType" + required: + - type + - sdk_key + - api_username + - api_password + type: object + ConfigCatSDKKeyType: + description: The definition of the `ConfigCatSDKKey` object. + enum: + - ConfigCatSDKKey + example: ConfigCatSDKKey + type: string + x-enum-varnames: + - CONFIGCATSDKKEY + ConfigCatSDKKeyUpdate: + description: The definition of the `ConfigCatSDKKey` object. + properties: + api_password: + description: The `ConfigCatSDKKeyUpdate` `api_password`. + type: string + api_username: + description: The `ConfigCatSDKKeyUpdate` `api_username`. + type: string + sdk_key: + description: The `ConfigCatSDKKeyUpdate` `sdk_key`. + type: string + type: + $ref: "#/components/schemas/ConfigCatSDKKeyType" + required: + - type + type: object + ConfiguredSchedule: + description: "Full resource representation of a configured schedule target with position (previous, current, or next)." + properties: + attributes: + $ref: "#/components/schemas/ConfiguredScheduleTargetAttributes" + id: + description: "Specifies the unique identifier of the configured schedule target." + example: "00000000-aba1-0000-0000-000000000000_previous" + type: string + relationships: + $ref: "#/components/schemas/ConfiguredScheduleTargetRelationships" + type: + $ref: "#/components/schemas/ConfiguredScheduleTargetType" + required: + - type + - id + - attributes + - relationships + type: object + ConfiguredScheduleTarget: + description: "Relationship reference to a configured schedule target." + properties: + id: + description: "Specifies the unique identifier of the configured schedule target." + example: "00000000-aba1-0000-0000-000000000000_previous" + type: string + type: + $ref: "#/components/schemas/ConfiguredScheduleTargetType" + required: + - type + - id + type: object + ConfiguredScheduleTargetAttributes: + description: "Attributes for a configured schedule target, including position." + example: + position: previous + properties: + position: + $ref: "#/components/schemas/ScheduleTargetPosition" + required: + - position + type: object + ConfiguredScheduleTargetRelationships: + description: "Represents the relationships of a configured schedule target." + properties: + schedule: + $ref: "#/components/schemas/ConfiguredScheduleTargetRelationshipsSchedule" + required: + - schedule + type: object + ConfiguredScheduleTargetRelationshipsSchedule: + description: "Holds the schedule reference for a configured schedule target." + properties: + data: + $ref: "#/components/schemas/ScheduleTarget" + required: + - data + type: object + ConfiguredScheduleTargetType: + default: schedule_target + description: "Indicates that the resource is of type `schedule_target`." + enum: + - schedule_target + example: schedule_target + type: string + x-enum-varnames: + - SCHEDULE_TARGET + ConfluencePostmortemSettings: + description: Settings for a postmortem template stored in Confluence. Required when `location` is `confluence`. + properties: + account_id: + description: The ID of the Confluence integration account. + example: "123456" + type: string + parent_id: + description: The ID of the parent Confluence page under which postmortems are created. + example: "345678" + nullable: true + type: string + space_id: + description: The ID of the Confluence space where postmortems are created. + example: "789012" + type: string + required: + - account_id + - space_id + type: object + ConfluentAccountCreateRequest: + description: Payload schema when adding a Confluent account. + properties: + data: + $ref: "#/components/schemas/ConfluentAccountCreateRequestData" + required: + - data + type: object + ConfluentAccountCreateRequestAttributes: + description: Attributes associated with the account creation request. + properties: + api_key: + description: The API key associated with your Confluent account. + example: "TESTAPIKEY123" + type: string + api_secret: + description: The API secret associated with your Confluent account. + example: "test-api-secret-123" + type: string + resources: + description: A list of Confluent resources associated with the Confluent account. + items: + $ref: "#/components/schemas/ConfluentAccountResourceAttributes" + type: array + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array + required: + - api_key + - api_secret + type: object + ConfluentAccountCreateRequestData: + description: The data body for adding a Confluent account. + properties: + attributes: + $ref: "#/components/schemas/ConfluentAccountCreateRequestAttributes" + type: + $ref: "#/components/schemas/ConfluentAccountType" + required: + - attributes + - type + type: object + ConfluentAccountResourceAttributes: + description: Attributes object for updating a Confluent resource. + properties: + enable_custom_metrics: + default: false + description: Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. + example: false + type: boolean + id: + description: The ID associated with a Confluent resource. + example: "resource-id-123" + type: string + resource_type: + description: The resource type of the Resource. Can be `kafka`, `connector`, `ksql`, or `schema_registry`. + example: kafka + type: string + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array + required: + - resource_type + type: object + ConfluentAccountResponse: + description: The expected response schema when getting a Confluent account. + properties: + data: + $ref: "#/components/schemas/ConfluentAccountResponseData" + type: object + ConfluentAccountResponseAttributes: + description: The attributes of a Confluent account. + properties: + api_key: + description: The API key associated with your Confluent account. + example: "TESTAPIKEY123" + type: string + resources: + description: A list of Confluent resources associated with the Confluent account. + items: + $ref: "#/components/schemas/ConfluentResourceResponseAttributes" + type: array + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array + required: + - api_key + type: object + ConfluentAccountResponseData: + description: An API key and API secret pair that represents a Confluent account. + properties: + attributes: + $ref: "#/components/schemas/ConfluentAccountResponseAttributes" + id: + description: A randomly generated ID associated with a Confluent account. + example: "account_id_abc123" + type: string + type: + $ref: "#/components/schemas/ConfluentAccountType" + required: + - attributes + - id + - type + type: object + ConfluentAccountType: + default: confluent-cloud-accounts + description: The JSON:API type for this API. Should always be `confluent-cloud-accounts`. + enum: + - confluent-cloud-accounts + example: confluent-cloud-accounts + type: string + x-enum-varnames: + - "CONFLUENT_CLOUD_ACCOUNTS" + ConfluentAccountUpdateRequest: + description: The JSON:API request for updating a Confluent account. + properties: + data: + $ref: "#/components/schemas/ConfluentAccountUpdateRequestData" + required: + - data + type: object + ConfluentAccountUpdateRequestAttributes: + description: Attributes object for updating a Confluent account. + properties: + api_key: + description: The API key associated with your Confluent account. + example: "TESTAPIKEY123" + type: string + api_secret: + description: The API secret associated with your Confluent account. + example: "test-api-secret-123" + type: string + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array + required: + - api_key + - api_secret + type: object + ConfluentAccountUpdateRequestData: + description: Data object for updating a Confluent account. + properties: + attributes: + $ref: "#/components/schemas/ConfluentAccountUpdateRequestAttributes" + type: + $ref: "#/components/schemas/ConfluentAccountType" + required: + - attributes + - type + type: object + ConfluentAccountsResponse: + description: Confluent account returned by the API. + properties: + data: + description: The Confluent account. + items: + $ref: "#/components/schemas/ConfluentAccountResponseData" + type: array + type: object + ConfluentResourceRequest: + description: The JSON:API request for updating a Confluent resource. + properties: + data: + $ref: "#/components/schemas/ConfluentResourceRequestData" + required: + - data + type: object + ConfluentResourceRequestAttributes: + description: Attributes object for updating a Confluent resource. + properties: + enable_custom_metrics: + default: false + description: Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. + example: false + type: boolean + resource_type: + description: The resource type of the Resource. Can be `kafka`, `connector`, `ksql`, or `schema_registry`. + example: kafka + type: string + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array + required: + - resource_type + type: object + ConfluentResourceRequestData: + description: JSON:API request for updating a Confluent resource. + properties: + attributes: + $ref: "#/components/schemas/ConfluentResourceRequestAttributes" + id: + description: The ID associated with a Confluent resource. + example: "resource-id-123" + type: string + type: + $ref: "#/components/schemas/ConfluentResourceType" + required: + - attributes + - type + - id + type: object + ConfluentResourceResponse: + description: Response schema when interacting with a Confluent resource. + properties: + data: + $ref: "#/components/schemas/ConfluentResourceResponseData" + type: object + ConfluentResourceResponseAttributes: + description: Model representation of a Confluent Cloud resource. + properties: + enable_custom_metrics: + default: false + description: Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. + example: false + type: boolean + id: + description: The ID associated with the Confluent resource. + example: "resource_id_abc123" + type: string + resource_type: + description: The resource type of the Resource. Can be `kafka`, `connector`, `ksql`, or `schema_registry`. + example: kafka + type: string + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array + required: + - resource_type + type: object + ConfluentResourceResponseData: + description: Confluent Cloud resource data. + properties: + attributes: + $ref: "#/components/schemas/ConfluentResourceResponseAttributes" + id: + description: The ID associated with the Confluent resource. + example: "resource_id_abc123" + type: string + type: + $ref: "#/components/schemas/ConfluentResourceType" + required: + - attributes + - type + - id + type: object + ConfluentResourceType: + default: confluent-cloud-resources + description: The JSON:API type for this request. + enum: + - confluent-cloud-resources + example: "confluent-cloud-resources" + type: string + x-enum-varnames: + - "CONFLUENT_CLOUD_RESOURCES" + ConfluentResourcesResponse: + description: Response schema when interacting with a list of Confluent resources. + properties: + data: + description: The JSON:API data attribute. + items: + $ref: "#/components/schemas/ConfluentResourceResponseData" + type: array + type: object + ConnectedTeamRef: + description: Reference to a team from an external system. + properties: + data: + $ref: "#/components/schemas/ConnectedTeamRefData" + type: object + ConnectedTeamRefData: + description: Reference to connected external team. + properties: + id: + description: The connected team ID as it is referenced throughout the Datadog ecosystem. + example: "@GitHubOrg/team-handle" + type: string + type: + $ref: "#/components/schemas/ConnectedTeamRefDataType" + required: + - id + - type + type: object + ConnectedTeamRefDataType: + default: "github_team" + description: External team resource type. + enum: + - github_team + example: "github_team" + type: string + x-enum-varnames: + - GITHUB_TEAM + Connection: + description: The definition of `Connection` object. + properties: + connectionId: + description: The `Connection` `connectionId`. + example: "" + type: string + label: + description: The `Connection` `label`. + example: "" + type: string + required: + - connectionId + - label + type: object + ConnectionEnv: + description: "A list of connections or connection groups used in the workflow." + properties: + connectionGroups: + description: The `ConnectionEnv` `connectionGroups`. + items: + $ref: "#/components/schemas/ConnectionGroup" + type: array + connections: + description: The `ConnectionEnv` `connections`. + items: + $ref: "#/components/schemas/Connection" + type: array + env: + $ref: "#/components/schemas/ConnectionEnvEnv" + required: + - env + type: object + ConnectionEnvEnv: + description: The definition of `ConnectionEnvEnv` object. + enum: + - default + example: default + type: string + x-enum-varnames: + - DEFAULT + ConnectionGroup: + description: The definition of `ConnectionGroup` object. + properties: + connectionGroupId: + description: The `ConnectionGroup` `connectionGroupId`. + example: "" + type: string + label: + description: The `ConnectionGroup` `label`. + example: "" + type: string + tags: + description: The `ConnectionGroup` `tags`. + example: + - "" + items: + description: A tag string in `key:value` format. + type: string + type: array + required: + - connectionGroupId + - label + - tags + type: object + ConnectionsPagePagination: + description: Page-based pagination metadata. + properties: + first_number: + description: The first page number. + format: int64 + type: integer + last_number: + description: The last page number. + format: int64 + type: integer + next_number: + description: The next page number. + format: int64 + nullable: true + type: integer + number: + description: The current page number. + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + nullable: true + type: integer + size: + description: The page size. + format: int64 + type: integer + total: + description: Total connections matching request. + format: int64 + type: integer + type: + description: Pagination type. + example: "number_size" + type: string + type: object + ConnectionsResponseMeta: + description: Connections response metadata. + properties: + page: + $ref: "#/components/schemas/ConnectionsPagePagination" + type: object + Container: + description: Container object. + properties: + attributes: + $ref: "#/components/schemas/ContainerAttributes" + id: + description: Container ID. + type: string + type: + $ref: "#/components/schemas/ContainerType" + type: object + ContainerAttributes: + description: Attributes for a container. + properties: + container_id: + description: The ID of the container. + type: string + created_at: + description: Time the container was created. + type: string + host: + description: Hostname of the host running the container. + type: string + image_digest: + description: Digest of the compressed image manifest. + nullable: true + type: string + image_name: + description: Name of the associated container image. + type: string + image_tags: + description: List of image tags associated with the container image. + items: + description: An image tag associated with the container. + type: string + nullable: true + type: array + name: + description: Name of the container. + type: string + started_at: + description: Time the container was started. + type: string + state: + description: State of the container. This depends on the container runtime. + type: string + tags: + description: List of tags associated with the container. + items: + description: A tag associated with the container. + type: string + type: array + type: object + ContainerDataSource: + default: container + description: A data source for container-level infrastructure metrics. + enum: + - container + example: container + type: string + x-enum-varnames: + - CONTAINER + ContainerGroup: + description: Container group object. + properties: + attributes: + $ref: "#/components/schemas/ContainerGroupAttributes" + id: + description: Container Group ID. + type: string + relationships: + $ref: "#/components/schemas/ContainerGroupRelationships" + type: + $ref: "#/components/schemas/ContainerGroupType" + type: object + ContainerGroupAttributes: + description: Attributes for a container group. + properties: + count: + description: Number of containers in the group. + format: int64 + type: integer + tags: + description: Tags from the group name parsed in key/value format. + type: object + type: object + ContainerGroupRelationships: + description: Relationships to containers inside a container group. + properties: + containers: + $ref: "#/components/schemas/ContainerGroupRelationshipsLink" + type: object + ContainerGroupRelationshipsData: + description: Links data. + items: + description: A link data. + type: string + type: array + ContainerGroupRelationshipsLink: + description: Relationships to Containers inside a Container Group. + properties: + data: + $ref: "#/components/schemas/ContainerGroupRelationshipsData" + links: + $ref: "#/components/schemas/ContainerGroupRelationshipsLinks" + type: object + ContainerGroupRelationshipsLinks: + description: Links attributes. + properties: + related: + description: Link to related containers. + type: string + type: object + ContainerGroupType: + default: container_group + description: Type of container group. + enum: + - container_group + example: container_group + type: string + x-enum-varnames: + - CONTAINER_GROUP + ContainerImage: + description: Container Image object. + properties: + attributes: + $ref: "#/components/schemas/ContainerImageAttributes" + id: + description: Container Image ID. + type: string + type: + $ref: "#/components/schemas/ContainerImageType" + type: object + ContainerImageAttributes: + description: Attributes for a Container Image. + properties: + container_count: + description: Number of containers running the image. + format: int64 + type: integer + image_flavors: + description: |- + List of platform-specific images associated with the image record. + The list contains more than 1 entry for multi-architecture images. + items: + $ref: "#/components/schemas/ContainerImageFlavor" + type: array + image_tags: + description: List of image tags associated with the Container Image. + items: + description: An image tag associated with the Container Image. + type: string + type: array + images_built_at: + description: |- + List of build times associated with the Container Image. + The list contains more than 1 entry for multi-architecture images. + items: + description: Time the platform-specific Container Image was built. + type: string + type: array + name: + description: Name of the Container Image. + type: string + os_architectures: + description: List of Operating System architectures supported by the Container Image. + items: + description: Operating System architecture supported by the Container Image. + example: amd64 + type: string + type: array + os_names: + description: List of Operating System names supported by the Container Image. + items: + description: Operating System supported by the Container Image. + example: linux + type: string + type: array + os_versions: + description: List of Operating System versions supported by the Container Image. + items: + description: Operating System version supported by the Container Image. + type: string + type: array + published_at: + description: Time the image was pushed to the container registry. + type: string + registry: + description: Registry the Container Image was pushed to. + type: string + repo_digest: + description: Digest of the compressed image manifest. + type: string + repository: + description: Repository where the Container Image is stored in. + type: string + short_image: + description: Short version of the Container Image name. + type: string + sizes: + description: |- + List of size for each platform-specific image associated with the image record. + The list contains more than 1 entry for multi-architecture images. + items: + description: Size of the platform-specific Container Image. + format: int64 + type: integer + type: array + sources: + description: List of sources where the Container Image was collected from. + items: + description: Source where the Container Image was collected from. + type: string + type: array + tags: + description: List of tags associated with the Container Image. + items: + description: A tag associated with the Container Image. + type: string + type: array + vulnerability_count: + $ref: "#/components/schemas/ContainerImageVulnerabilities" + type: object + ContainerImageFlavor: + description: Container Image breakdown by supported platform. + properties: + built_at: + description: Time the platform-specific Container Image was built. + type: string + os_architecture: + description: Operating System architecture supported by the Container Image. + type: string + os_name: + description: Operating System name supported by the Container Image. + type: string + os_version: + description: Operating System version supported by the Container Image. + type: string + size: + description: Size of the platform-specific Container Image. + format: int64 + type: integer + type: object + ContainerImageGroup: + description: Container Image Group object. + properties: + attributes: + $ref: "#/components/schemas/ContainerImageGroupAttributes" + id: + description: Container Image Group ID. + type: string + relationships: + $ref: "#/components/schemas/ContainerImageGroupRelationships" + type: + $ref: "#/components/schemas/ContainerImageGroupType" + type: object + ContainerImageGroupAttributes: + description: Attributes for a Container Image Group. + properties: + count: + description: Number of Container Images in the group. + format: int64 + type: integer + name: + description: Name of the Container Image group. + type: string + tags: + description: Tags from the group name parsed in key/value format. + type: object + type: object + ContainerImageGroupImagesRelationshipsLink: + description: Relationships to Container Images inside a Container Image Group. + properties: + data: + $ref: "#/components/schemas/ContainerImageGroupRelationshipsData" + links: + $ref: "#/components/schemas/ContainerImageGroupRelationshipsLinks" + type: object + ContainerImageGroupRelationships: + description: Relationships inside a Container Image Group. + properties: + container_images: + $ref: "#/components/schemas/ContainerImageGroupImagesRelationshipsLink" + type: object + ContainerImageGroupRelationshipsData: + description: Links data. + items: + description: A link data. + type: string + type: array + ContainerImageGroupRelationshipsLinks: + description: Links attributes. + properties: + related: + description: Link to related Container Images. + type: string + type: object + ContainerImageGroupType: + default: container_image_group + description: Type of Container Image Group. + enum: + - container_image_group + example: container_image_group + type: string + x-enum-varnames: + - CONTAINER_IMAGE_GROUP + ContainerImageItem: + description: Possible Container Image models. + oneOf: + - $ref: "#/components/schemas/ContainerImage" + - $ref: "#/components/schemas/ContainerImageGroup" + ContainerImageMeta: + description: Response metadata object. + properties: + pagination: + $ref: "#/components/schemas/ContainerImageMetaPage" + type: object + ContainerImageMetaPage: + description: Paging attributes. + properties: + cursor: + description: The cursor used to get the current results, if any. + type: string + limit: + description: Number of results returned + format: int32 + maximum: 10000 + minimum: 0 + type: integer + next_cursor: + description: The cursor used to get the next results, if any. + type: string + prev_cursor: + description: The cursor used to get the previous results, if any. + nullable: true + type: string + total: + description: Total number of records that match the query. + format: int64 + type: integer + type: + $ref: "#/components/schemas/ContainerImageMetaPageType" + type: object + ContainerImageMetaPageType: + default: cursor_limit + description: Type of Container Image pagination. + enum: + - cursor_limit + example: cursor_limit + type: string + x-enum-varnames: + - CURSOR_LIMIT + ContainerImageType: + default: container_image + description: Type of Container Image. + enum: + - container_image + example: container_image + type: string + x-enum-varnames: + - CONTAINER_IMAGE + ContainerImageVulnerabilities: + description: Vulnerability counts associated with the Container Image. + properties: + asset_id: + description: ID of the Container Image. + type: string + critical: + description: Number of vulnerabilities with CVSS Critical severity. + format: int64 + type: integer + high: + description: Number of vulnerabilities with CVSS High severity. + format: int64 + type: integer + low: + description: Number of vulnerabilities with CVSS Low severity. + format: int64 + type: integer + medium: + description: Number of vulnerabilities with CVSS Medium severity. + format: int64 + type: integer + none: + description: Number of vulnerabilities with CVSS None severity. + format: int64 + type: integer + unknown: + description: Number of vulnerabilities with an unknown CVSS severity. + format: int64 + type: integer + type: object + ContainerImagesResponse: + description: List of Container Images. + properties: + data: + description: Array of Container Image objects. + items: + $ref: "#/components/schemas/ContainerImageItem" + type: array + links: + $ref: "#/components/schemas/ContainerImagesResponseLinks" + meta: + $ref: "#/components/schemas/ContainerImageMeta" + type: object + ContainerImagesResponseLinks: + description: Pagination links. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to previous page. + nullable: true + type: string + self: + description: Link to current page. + type: string + type: object + ContainerItem: + description: Possible Container models. + oneOf: + - $ref: "#/components/schemas/Container" + - $ref: "#/components/schemas/ContainerGroup" + ContainerMeta: + description: Response metadata object. + properties: + pagination: + $ref: "#/components/schemas/ContainerMetaPage" + type: object + ContainerMetaPage: + description: Paging attributes. + properties: + cursor: + description: The cursor used to get the current results, if any. + type: string + limit: + description: Number of results returned + format: int32 + maximum: 10000 + minimum: 0 + type: integer + next_cursor: + description: The cursor used to get the next results, if any. + type: string + prev_cursor: + description: The cursor used to get the previous results, if any. + nullable: true + type: string + total: + description: Total number of records that match the query. + format: int64 + type: integer + type: + $ref: "#/components/schemas/ContainerMetaPageType" + type: object + ContainerMetaPageType: + default: cursor_limit + description: Type of Container pagination. + enum: + - cursor_limit + example: cursor_limit + type: string + x-enum-varnames: + - CURSOR_LIMIT + ContainerScalarQuery: + description: A query for container-level metrics such as CPU and memory usage. + properties: + aggregator: + $ref: "#/components/schemas/MetricsAggregator" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ContainerDataSource" + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The container metric to query. + example: process.stat.container.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: "#/components/schemas/QuerySortOrder" + tag_filters: + description: Tag filters to narrow down containers. + items: + description: A tag filter value. + example: "env:prod" + type: string + type: array + text_filter: + description: A full-text search filter to match container names. + type: string + required: + - data_source + - name + - metric + type: object + ContainerTimeseriesQuery: + description: A query for container-level metrics such as CPU and memory usage. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ContainerDataSource" + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The container metric to query. + example: process.stat.container.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: "#/components/schemas/QuerySortOrder" + tag_filters: + description: Tag filters to narrow down containers. + items: + description: A tag filter value. + example: "env:prod" + type: string + type: array + text_filter: + description: A full-text search filter to match container names. + type: string + required: + - data_source + - name + - metric + type: object + ContainerType: + default: container + description: Type of container. + enum: + - container + example: container + type: string + x-enum-varnames: + - CONTAINER + ContainersResponse: + description: List of containers. + properties: + data: + description: Array of Container objects. + items: + $ref: "#/components/schemas/ContainerItem" + type: array + links: + $ref: "#/components/schemas/ContainersResponseLinks" + meta: + $ref: "#/components/schemas/ContainerMeta" + type: object + ContainersResponseLinks: + description: Pagination links. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to previous page. + nullable: true + type: string + self: + description: Link to current page. + type: string + type: object + ContentEncoding: + description: HTTP header used to compress the media-type. + enum: + - identity + - gzip + - deflate + type: string + x-enum-varnames: + - IDENTITY + - GZIP + - DEFLATE + ControlNotificationEventSetting: + description: The notification settings for a single event type on a control. + properties: + enabled: + description: Whether notifications are enabled for this event type. + example: true + type: boolean + event_type: + description: The event type the notification settings apply to, such as `new_detection`. + example: "new_detection" + type: string + targets: + $ref: "#/components/schemas/ControlNotificationTargetArray" + required: + - event_type + - enabled + - targets + type: object + ControlNotificationEventSettingsArray: + description: The notification settings for each supported event type on the control. + items: + $ref: "#/components/schemas/ControlNotificationEventSetting" + type: array + ControlNotificationSettingsAttributes: + description: The attributes of a governance control's notification settings. + properties: + event_settings: + $ref: "#/components/schemas/ControlNotificationEventSettingsArray" + required: + - event_settings + type: object + ControlNotificationSettingsData: + description: A control notification settings resource. + properties: + attributes: + $ref: "#/components/schemas/ControlNotificationSettingsAttributes" + id: + description: The detection type the notification settings apply to. + example: "unused_api_keys" + type: string + type: + $ref: "#/components/schemas/ControlNotificationSettingsResourceType" + required: + - id + - type + - attributes + type: object + ControlNotificationSettingsResourceType: + description: Control notification settings resource type. + enum: + - control_notification_settings + example: "control_notification_settings" + type: string + x-enum-varnames: + - CONTROL_NOTIFICATION_SETTINGS + ControlNotificationSettingsResponse: + description: The notification settings for a governance control. + properties: + data: + $ref: "#/components/schemas/ControlNotificationSettingsData" + required: + - data + type: object + ControlNotificationSettingsUpdateAttributes: + description: The attributes of a governance control's notification settings that can be updated. + properties: + event_settings: + $ref: "#/components/schemas/ControlNotificationEventSettingsArray" + type: object + ControlNotificationSettingsUpdateData: + description: The data of a control notification settings update request. + properties: + attributes: + $ref: "#/components/schemas/ControlNotificationSettingsUpdateAttributes" + type: + $ref: "#/components/schemas/ControlNotificationSettingsResourceType" + required: + - type + type: object + ControlNotificationSettingsUpdateRequest: + description: A request to update the notification settings for a governance control. + properties: + data: + $ref: "#/components/schemas/ControlNotificationSettingsUpdateData" + required: + - data + type: object + ControlNotificationTarget: + description: A destination that receives notifications for an event type. + properties: + handle: + description: The destination handle, such as an email address, Slack channel, or user handle. + example: "#governance-alerts" + type: string + type: + $ref: "#/components/schemas/ControlNotificationTargetType" + required: + - type + - handle + type: object + ControlNotificationTargetArray: + description: The destinations that receive notifications for an event type. + items: + $ref: "#/components/schemas/ControlNotificationTarget" + type: array + ControlNotificationTargetType: + description: The type of notification destination. + enum: + - email + - slack + - at_mention + - case + example: "slack" + type: string + x-enum-varnames: + - EMAIL + - SLACK + - AT_MENTION + - CASE + ConvertJobResultsToSignalsAttributes: + description: Attributes for converting historical job results to signals. + properties: + jobResultIds: + description: Job result IDs. + example: + - "" + items: + description: A job result ID. + type: string + type: array + notifications: + description: Notifications sent. + example: + - "" + items: + description: A notification recipient handle. + type: string + type: array + signalMessage: + description: Message of generated signals. + example: A large number of failed login attempts. + type: string + signalSeverity: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + required: + - jobResultIds + - signalSeverity + - signalMessage + - notifications + type: object + ConvertJobResultsToSignalsData: + description: Data for converting historical job results to signals. + properties: + attributes: + $ref: "#/components/schemas/ConvertJobResultsToSignalsAttributes" + type: + $ref: "#/components/schemas/ConvertJobResultsToSignalsDataType" + type: object + ConvertJobResultsToSignalsDataType: + description: Type of payload. + enum: + - historicalDetectionsJobResultSignalConversion + type: string + x-enum-varnames: + - HISTORICALDETECTIONSJOBRESULTSIGNALCONVERSION + ConvertJobResultsToSignalsRequest: + description: Request for converting historical job results to signals. + properties: + data: + $ref: "#/components/schemas/ConvertJobResultsToSignalsData" + type: object + CostAggregationType: + description: "Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals." + enum: + - cumulative + type: string + x-enum-varnames: + - CUMULATIVE + CostAnomaliesResponse: + description: Response object containing a list of detected Cloud Cost Management anomalies and aggregated totals. + properties: + data: + $ref: "#/components/schemas/CostAnomaliesResponseData" + type: object + CostAnomaliesResponseData: + description: Resource wrapper for the list of cost anomalies and aggregated totals. + properties: + attributes: + $ref: "#/components/schemas/CostAnomaliesResponseDataAttributes" + id: + description: Static identifier of the cost anomalies collection resource. + example: anomalies + type: string + type: + $ref: "#/components/schemas/CostAnomaliesResponseDataType" + required: + - id + - type + - attributes + type: object + CostAnomaliesResponseDataAttributes: + description: Cost anomaly results and aggregated totals for the queried window. + properties: + anomalies: + description: The list of cost anomalies that match the request. + items: + $ref: "#/components/schemas/CostAnomaly" + type: array + avg_daily_anomalous_cost: + description: Average daily anomalous cost change across the queried window. + example: 625.375 + format: double + type: number + total_actual_cost: + description: Total actual cost spent across the queried window for the matching providers. + example: 3001.24 + format: double + type: number + total_anomalous_cost: + description: Sum of the anomalous cost change across all returned anomalies. + example: 1250.75 + format: double + type: number + total_count: + description: Total number of anomalies that match the request. + example: 1 + format: int64 + type: integer + required: + - anomalies + - total_count + - total_anomalous_cost + - total_actual_cost + - avg_daily_anomalous_cost + type: object + CostAnomaliesResponseDataType: + default: anomalies + description: Type of the cost anomalies collection resource. Must be `anomalies`. + enum: + - anomalies + example: anomalies + type: string + x-enum-varnames: + - ANOMALIES + CostAnomaly: + description: A single detected Cloud Cost Management anomaly. + properties: + actual_cost: + description: Actual cost incurred during the anomaly window. + example: 3001.24 + format: double + type: number + anomalous_cost_change: + description: Anomalous cost change relative to the expected baseline. + example: 1250.75 + format: double + type: number + anomaly_end: + description: Anomaly end timestamp in Unix milliseconds. + example: 1730429150000 + format: int64 + type: integer + anomaly_start: + description: Anomaly start timestamp in Unix milliseconds. + example: 1730259950000 + format: int64 + type: integer + correlated_tags: + $ref: "#/components/schemas/CostAnomalyCorrelatedTags" + dimensions: + $ref: "#/components/schemas/CostAnomalyDimensions" + dismissal: + $ref: "#/components/schemas/CostAnomalyDismissal" + max_cost: + description: Maximum cost observed during the anomaly window. + example: 5000.5 + format: double + type: number + provider: + description: Cloud or SaaS provider associated with the anomaly (for example `aws`, `gcp`, `azure`). + example: aws + type: string + query: + description: The metrics query that detected the anomaly. + example: sum:aws.cost.net.amortized{aws_cost_type IN (Usage,DiscountedUsage,SavingsPlanCoveredUsage) AND aws_product NOT IN (supportenterprise) AND service:"ec2"}.rollup(sum, daily) + type: string + uuid: + description: The unique identifier of the anomaly. + example: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + type: string + required: + - uuid + - anomaly_start + - anomaly_end + - query + - dimensions + - correlated_tags + - anomalous_cost_change + - actual_cost + - max_cost + - provider + type: object + CostAnomalyCorrelatedTags: + additionalProperties: + description: The list of correlated values for the tag key. + items: + description: A correlated tag value. + type: string + type: array + description: Map of correlated tag keys to the list of correlated tag values. + example: + region: + - us-east-1 + - us-west-2 + nullable: true + type: object + CostAnomalyDimensions: + additionalProperties: + description: The dimension value. + type: string + description: Map of cost dimension keys to their values for the anomaly grouping. + example: + service: ec2 + type: object + CostAnomalyDismissal: + description: Resolution metadata for an anomaly that has been dismissed. + properties: + cause: + description: Reason the anomaly was dismissed. + example: false_positive + type: string + dismissal_id: + description: Unique identifier of the dismissal record. + example: 12345678-1234-1234-1234-123456789abc + type: string + message: + description: Optional message explaining the dismissal. + example: This was expected due to planned infrastructure changes. + type: string + updated_at: + description: Timestamp of the last dismissal update in Unix milliseconds. + example: 1730344150000 + format: int64 + type: integer + updated_by: + description: Identifier of the user that last updated the dismissal. + example: user@example.com + type: string + required: + - dismissal_id + - cause + - message + - updated_at + - updated_by + type: object + CostAnomalyResponse: + description: Response object containing a single Cloud Cost Management anomaly. + properties: + data: + $ref: "#/components/schemas/CostAnomalyResponseData" + type: object + CostAnomalyResponseData: + description: Resource wrapper for a single cost anomaly. + properties: + attributes: + $ref: "#/components/schemas/CostAnomaly" + id: + description: The unique identifier of the anomaly. + example: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + type: string + type: + $ref: "#/components/schemas/CostAnomaliesResponseDataType" + required: + - id + - type + - attributes + type: object + CostAttributionAggregates: + description: An array of available aggregates. + items: + $ref: "#/components/schemas/CostAttributionAggregatesBody" + type: array + CostAttributionAggregatesBody: + description: The object containing the aggregates. + properties: + agg_type: + description: The aggregate type. + example: "sum" + type: string + field: + description: The field. + example: "infra_host_committed_cost" + type: string + value: + description: The value for a given field. + format: double + type: number + type: object + CostAttributionTagNames: + additionalProperties: + description: |- + A list of values that are associated with each tag key. + - An empty list means the resource use wasn't tagged with the respective tag. + - Multiple values means the respective tag was applied multiple times on the resource. + - An `` value means the resource was tagged with the respective tag but did not have a value. + items: + description: A given tag in a list. + example: "datadog-integrations-lab" + type: string + type: array + description: |- + Tag keys and values. + A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags + configured for usage attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). + In this scenario the API returns the total cost, not broken down by tags. + nullable: true + type: object + CostAttributionType: + default: cost_by_tag + description: Type of cost attribution data. + enum: + - cost_by_tag + example: cost_by_tag + type: string + x-enum-varnames: + - COST_BY_TAG + CostByOrg: + description: Cost data. + properties: + attributes: + $ref: "#/components/schemas/CostByOrgAttributes" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/CostByOrgType" + type: object + CostByOrgAttributes: + description: Cost attributes data. + properties: + account_name: + description: The account name. + type: string + account_public_id: + description: The account public ID. + type: string + charges: + description: List of charges data reported for the requested month. + items: + $ref: "#/components/schemas/ChargebackBreakdown" + type: array + date: + description: The month requested. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + total_cost: + description: The total cost of products for the month. + format: double + type: number + type: object + CostByOrgResponse: + description: Chargeback Summary response. + properties: + data: + description: Response containing Chargeback Summary. + items: + $ref: "#/components/schemas/CostByOrg" + type: array + type: object + CostByOrgType: + default: cost_by_org + description: Type of cost data. + enum: + - cost_by_org + example: cost_by_org + type: string + x-enum-varnames: + - COST_BY_ORG + CostCurrency: + description: A Cloud Cost Management billing currency entry. + properties: + id: + description: The currency code (for example, `USD`). + example: USD + type: string + type: + $ref: "#/components/schemas/CostCurrencyType" + required: + - id + - type + type: object + CostCurrencyResponse: + description: The dominant Cloud Cost Management billing currency for the requested period. The `data` array contains at most one entry, and is empty when no currency data is available. + example: + data: + - id: USD + type: cost_currency + properties: + data: + description: The dominant billing currency. Empty when no data is available, or a single entry otherwise. + items: + $ref: "#/components/schemas/CostCurrency" + type: array + required: + - data + type: object + CostCurrencyType: + default: cost_currency + description: Type of the Cloud Cost Management billing currency resource. + enum: + - cost_currency + example: cost_currency + type: string + x-enum-varnames: + - COST_CURRENCY + CostMetric: + description: A Cloud Cost Management metric that has data for the requested period. + properties: + id: + description: The metric name, for example `aws.cost.net.amortized`. + example: aws.cost.net.amortized + type: string + type: + $ref: "#/components/schemas/CostMetricType" + required: + - id + - type + type: object + CostMetricType: + default: cost_metric + description: Type of the Cloud Cost Management available metric resource. + enum: + - cost_metric + example: cost_metric + type: string + x-enum-varnames: + - COST_METRIC + CostMetricsResponse: + description: List of available Cloud Cost Management metrics for the requested period. + example: + data: + - id: aws.cost.net.amortized + type: cost_metric + - id: gcp.cost.amortized + type: cost_metric + properties: + data: + description: List of available metrics. + items: + $ref: "#/components/schemas/CostMetric" + type: array + required: + - data + type: object + CostOrchestrator: + description: A container orchestrator detected in Cloud Cost Management data. + properties: + id: + description: The orchestrator name, for example `kubernetes` or `ecs`. + example: kubernetes + type: string + type: + $ref: "#/components/schemas/CostOrchestratorType" + required: + - id + - type + type: object + CostOrchestratorType: + default: cost_orchestrator + description: Type of the Cloud Cost Management orchestrator resource. + enum: + - cost_orchestrator + example: cost_orchestrator + type: string + x-enum-varnames: + - COST_ORCHESTRATOR + CostOrchestratorsResponse: + description: List of container orchestrators detected in Cloud Cost Management data for the requested period. + example: + data: + - id: ecs + type: cost_orchestrator + - id: kubernetes + type: cost_orchestrator + properties: + data: + description: List of detected container orchestrators. + items: + $ref: "#/components/schemas/CostOrchestrator" + type: array + required: + - data + type: object + CostRecommendationArray: + description: A page of cost recommendations with pagination metadata. + properties: + data: + description: The list of cost recommendations on this page. + items: + $ref: "#/components/schemas/CostRecommendationData" + type: array + meta: + $ref: "#/components/schemas/RecommendationsPageMeta" + required: + - data + type: object + CostRecommendationData: + description: A single cost recommendation entry in JSON:API form. + properties: + attributes: + $ref: "#/components/schemas/CostRecommendationDataAttributes" + id: + description: Unique identifier for the recommendation. + type: string + type: + $ref: "#/components/schemas/CostRecommendationDataType" + required: + - type + type: object + CostRecommendationDataAttributes: + description: Attributes describing a single cost recommendation. + properties: + dd_resource_key: + description: Datadog resource key identifying the recommended resource. + type: string + potential_daily_savings: + $ref: "#/components/schemas/CostRecommendationDataAttributesPotentialDailySavings" + recommendation_type: + description: The kind of recommendation (for example, `terminate` or `rightsize`). + type: string + resource_id: + description: Cloud provider identifier of the resource. + type: string + resource_type: + description: Resource type (for example, `aws_ec2_instance`). + type: string + tags: + description: Tags attached to the recommended resource. + items: + description: A single resource tag. + type: string + type: array + type: object + CostRecommendationDataAttributesPotentialDailySavings: + description: Estimated daily savings if the recommendation is applied. + properties: + amount: + description: Numeric amount of the potential daily savings. + format: double + type: number + currency: + description: ISO 4217 currency code for the savings amount. + type: string + type: object + CostRecommendationDataType: + default: recommendation + description: Recommendation resource type. + enum: + - recommendation + example: recommendation + type: string + x-enum-varnames: + - RECOMMENDATION + CostTag: + description: A Cloud Cost Management tag. + properties: + attributes: + $ref: "#/components/schemas/CostTagAttributes" + id: + description: The tag identifier, equal to its `key:value` representation. + example: providername:aws + type: string + type: + $ref: "#/components/schemas/CostTagType" + required: + - attributes + - id + - type + type: object + CostTagAttributes: + description: Attributes of a Cloud Cost Management tag. + properties: + sources: + description: List of sources that define this tag. + example: + - focus + items: + description: A tag source. + type: string + type: array + value: + description: The tag value in `key:value` format. + example: providername:aws + type: string + required: + - sources + - value + type: object + CostTagDescription: + description: A Cloud Cost Management tag key description, either cross-cloud or scoped to a single cloud provider. + properties: + attributes: + $ref: "#/components/schemas/CostTagDescriptionAttributes" + id: + description: Stable identifier of the tag description. Equals the tag key when the description is the cross-cloud default; encodes both the cloud and the tag key when the description is cloud-specific. + example: account_id + type: string + type: + $ref: "#/components/schemas/CostTagDescriptionType" + required: + - attributes + - id + - type + type: object + CostTagDescriptionAttributes: + description: Human-readable description and metadata attached to a Cloud Cost Management tag key, optionally scoped to a single cloud provider. + properties: + cloud: + description: Cloud provider this description applies to (for example, `aws`). Empty when the description is the cross-cloud default for the tag key. + example: aws + type: string + created_at: + description: Timestamp when the description was created, in RFC 3339 format. + example: "2026-01-01T12:00:00Z" + type: string + description: + description: The human-readable description for the tag key. + example: AWS account that owns this cost. + type: string + source: + $ref: "#/components/schemas/CostTagDescriptionSource" + tag_key: + description: The tag key this description applies to. + example: account_id + type: string + updated_at: + description: Timestamp when the description was last updated, in RFC 3339 format. + example: "2026-01-01T12:00:00Z" + type: string + required: + - cloud + - created_at + - description + - source + - tag_key + - updated_at + type: object + CostTagDescriptionResponse: + description: Single Cloud Cost Management tag key description returned by the get-by-key endpoint. + example: + data: + attributes: + cloud: aws + created_at: "2026-01-01T12:00:00Z" + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: "2026-01-01T12:00:00Z" + id: account_id + type: cost_tag_description + properties: + data: + $ref: "#/components/schemas/CostTagDescription" + required: + - data + type: object + CostTagDescriptionSource: + description: Origin of the description. `human` indicates the description was written by a user, `ai_generated` was produced by AI, and `datadog` is a default supplied by Datadog. + enum: + - human + - ai_generated + - datadog + example: human + type: string + x-enum-varnames: + - HUMAN + - AI_GENERATED + - DATADOG + CostTagDescriptionType: + default: cost_tag_description + description: Type of the Cloud Cost Management tag description resource. + enum: + - cost_tag_description + example: cost_tag_description + type: string + x-enum-varnames: + - COST_TAG_DESCRIPTION + CostTagDescriptionUpsertRequest: + description: Request body for creating or updating a Cloud Cost Management tag key description. + example: + data: + attributes: + cloud: aws + description: AWS account that owns this cost. + id: account_id + type: cost_tag_description + properties: + data: + $ref: "#/components/schemas/CostTagDescriptionUpsertRequestData" + required: + - data + type: object + CostTagDescriptionUpsertRequestData: + description: Resource envelope carrying the tag key description being upserted. The `id` is informational; the authoritative tag key is taken from the URL path. + properties: + attributes: + $ref: "#/components/schemas/CostTagDescriptionUpsertRequestDataAttributes" + id: + description: Identifier of the tag key the description applies to. Matches the `tag_key` path parameter. + example: account_id + type: string + type: + $ref: "#/components/schemas/CostTagDescriptionType" + required: + - attributes + - type + type: object + CostTagDescriptionUpsertRequestDataAttributes: + description: Mutable attributes set when creating or updating a Cloud Cost Management tag key description. + properties: + cloud: + description: Cloud provider this description applies to (for example, `aws`). Omit to set the cross-cloud default for the tag key. + example: aws + type: string + description: + description: The human-readable description for the tag key. + example: AWS account that owns this cost. + type: string + required: + - description + type: object + CostTagDescriptionsResponse: + description: List of Cloud Cost Management tag key descriptions for the organization, optionally filtered to a single cloud provider. + example: + data: + - attributes: + cloud: aws + created_at: "2026-01-01T12:00:00Z" + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: "2026-01-01T12:00:00Z" + id: account_id + type: cost_tag_description + properties: + data: + description: List of tag key descriptions. + items: + $ref: "#/components/schemas/CostTagDescription" + type: array + required: + - data + type: object + CostTagKey: + description: A Cloud Cost Management tag key. + properties: + attributes: + $ref: "#/components/schemas/CostTagKeyAttributes" + id: + description: The tag key identifier. + example: providername + type: string + type: + $ref: "#/components/schemas/CostTagKeyType" + required: + - attributes + - id + - type + type: object + CostTagKeyAttributes: + description: Attributes of a Cloud Cost Management tag key. + properties: + details: + $ref: "#/components/schemas/CostTagKeyDetails" + sources: + description: List of sources that define this tag key. + example: + - focus + items: + description: A tag key source. + type: string + type: array + value: + description: The tag key name. + example: providername + type: string + required: + - sources + - value + type: object + CostTagKeyDetails: + description: Additional details for a Cloud Cost Management tag key, including its description and example tag values. + properties: + description: + description: Description of the tag key. + example: The cloud provider name reported for the cost line item. + type: string + tag_values: + description: Example tag values observed for this tag key. + example: + - aws + - gcp + - azure + items: + description: A tag value observed for this tag key. + type: string + type: array + required: + - description + - tag_values + type: object + CostTagKeyMetadata: + description: A Cloud Cost Management tag key metadata entry, aggregating coverage and example values for a single tag key, metric, and period. + properties: + attributes: + $ref: "#/components/schemas/CostTagKeyMetadataAttributes" + id: + description: A composite identifier of the form `tag_key:metric` for monthly roll-ups, or `tag_key:metric:YYYY-MM-DD` when `filter[daily]=true`. + example: env:aws.cost.net.amortized + type: string + type: + $ref: "#/components/schemas/CostTagKeyMetadataType" + required: + - attributes + - id + - type + type: object + CostTagKeyMetadataAttributes: + description: Attributes of a Cloud Cost Management tag key metadata entry. + properties: + cardinality_by_account: + $ref: "#/components/schemas/CostTagKeyMetadataCardinalityByAccount" + cost_covered: + description: Total cost (in the report currency) of cost line items that carry this tag key for the requested period. + example: 1234.56 + format: double + type: number + date: + description: The day this row corresponds to, in `YYYY-MM-DD` format. Present only when `filter[daily]=true`; omitted for the monthly roll-up returned by default. + example: "2026-02-15" + type: string + metric: + description: The Cloud Cost Management metric this row aggregates, for example `aws.cost.net.amortized`. + example: aws.cost.net.amortized + type: string + row_count: + description: Number of cost rows that carry this tag key over the requested period. + example: 100 + format: int64 + type: integer + tag_sources: + description: Origins where this tag key was observed (for example, `aws-user-defined`). + example: + - aws-user-defined + items: + description: A tag source. + type: string + type: array + top_values_by_account: + $ref: "#/components/schemas/CostTagKeyMetadataTopValuesByAccount" + required: + - cardinality_by_account + - cost_covered + - metric + - row_count + - tag_sources + - top_values_by_account + type: object + CostTagKeyMetadataCardinalityByAccount: + additionalProperties: + description: Number of unique tag values observed in the account. + format: int64 + type: integer + description: Number of unique tag values observed for this tag key, keyed by cloud account ID. + example: + "123456789012": 42 + type: object + CostTagKeyMetadataResponse: + description: List of Cloud Cost Management tag key metadata entries for the requested period. + example: + data: + - attributes: + cardinality_by_account: + "123456789012": 42 + cost_covered: 1234.56 + metric: aws.cost.net.amortized + row_count: 100 + tag_sources: + - aws-user-defined + top_values_by_account: + "123456789012": + - prod + - staging + id: env:aws.cost.net.amortized + type: cost_tag_key_metadata + properties: + data: + description: List of tag key metadata entries. + items: + $ref: "#/components/schemas/CostTagKeyMetadata" + type: array + required: + - data + type: object + CostTagKeyMetadataTopValuesByAccount: + additionalProperties: + description: A sample of the most frequent tag values observed in the account. + items: + description: A tag value observed for this tag key. + type: string + type: array + description: A sample of the most frequent tag values observed for this tag key, keyed by cloud account ID. + example: + "123456789012": + - prod + - staging + type: object + CostTagKeyMetadataType: + default: cost_tag_key_metadata + description: Type of the Cloud Cost Management tag key metadata resource. + enum: + - cost_tag_key_metadata + example: cost_tag_key_metadata + type: string + x-enum-varnames: + - COST_TAG_KEY_METADATA + CostTagKeyResponse: + description: A single Cloud Cost Management tag key. + example: + data: + attributes: + details: + description: The cloud provider name reported for the cost line item. + tag_values: + - aws + - gcp + - azure + sources: + - focus + value: providername + id: providername + type: cost_tag_key + properties: + data: + $ref: "#/components/schemas/CostTagKey" + required: + - data + type: object + CostTagKeySource: + description: A Cloud Cost Management tag key paired with the sources that produced it. + properties: + attributes: + $ref: "#/components/schemas/CostTagKeySourceAttributes" + id: + description: The tag key identifier. Equal to the empty-tag sentinel `__empty_tag_key__` when the tag key is empty. + example: env + type: string + type: + $ref: "#/components/schemas/CostTagKeySourceType" + required: + - attributes + - id + - type + type: object + CostTagKeySourceAttributes: + description: Attributes of a Cloud Cost Management tag source. + properties: + tag_key: + description: The tag key name. + example: env + type: string + tag_sources: + description: Origins where this tag key was observed (for example, `aws-user-defined`). + example: + - aws-user-defined + - custom + items: + description: A tag source. + type: string + type: array + required: + - tag_key + - tag_sources + type: object + CostTagKeySourceType: + default: cost_tag_key_source + description: Type of the Cloud Cost Management tag source resource. + enum: + - cost_tag_key_source + example: cost_tag_key_source + type: string + x-enum-varnames: + - COST_TAG_KEY_SOURCE + CostTagKeySourcesResponse: + description: List of Cloud Cost Management tag keys with their origin sources for the requested period. + example: + data: + - attributes: + tag_key: env + tag_sources: + - aws-user-defined + - custom + id: env + type: cost_tag_key_source + - attributes: + tag_key: service + tag_sources: + - aws + id: service + type: cost_tag_key_source + properties: + data: + description: List of tag keys with their origin sources. + items: + $ref: "#/components/schemas/CostTagKeySource" + type: array + required: + - data + type: object + CostTagKeyType: + default: cost_tag_key + description: Type of the Cloud Cost Management tag key resource. + enum: + - cost_tag_key + example: cost_tag_key + type: string + x-enum-varnames: + - COST_TAG_KEY + CostTagKeysResponse: + description: A list of Cloud Cost Management tag keys. + example: + data: + - attributes: + sources: + - focus + value: providername + id: providername + type: cost_tag_key + - attributes: + sources: [] + value: service + id: service + type: cost_tag_key + properties: + data: + description: The list of Cloud Cost Management tag keys. + items: + $ref: "#/components/schemas/CostTagKey" + type: array + required: + - data + type: object + CostTagMetadataDailyFilter: + description: Granularity for tag metadata results. `true` returns one row per day, `false` (or omitted) returns the monthly roll-up. + enum: + - "true" + - "false" + example: "true" + type: string + x-enum-varnames: + - "TRUE" + - "FALSE" + CostTagMetadataMonth: + description: A month that has Cloud Cost Management tag metadata available for a given provider. + properties: + id: + description: The month, in `YYYY-MM` format. + example: "2026-04" + type: string + type: + $ref: "#/components/schemas/CostTagMetadataMonthType" + required: + - id + - type + type: object + CostTagMetadataMonthType: + default: cost_tag_metadata_month + description: Type of the Cloud Cost Management tag metadata month resource. + enum: + - cost_tag_metadata_month + example: cost_tag_metadata_month + type: string + x-enum-varnames: + - COST_TAG_METADATA_MONTH + CostTagMetadataMonthsResponse: + description: List of months that have Cloud Cost Management tag metadata for the requested provider, ordered most-recent first and capped at 36 months. + example: + data: + - id: "2026-04" + type: cost_tag_metadata_month + - id: "2026-03" + type: cost_tag_metadata_month + properties: + data: + description: List of months that have tag metadata available. + items: + $ref: "#/components/schemas/CostTagMetadataMonth" + type: array + required: + - data + type: object + CostTagType: + default: cost_tag + description: Type of the Cloud Cost Management tag resource. + enum: + - cost_tag + example: cost_tag + type: string + x-enum-varnames: + - COST_TAG + CostTagsResponse: + description: A list of Cloud Cost Management tags. + example: + data: + - attributes: + sources: + - focus + value: providername:aws + id: providername:aws + type: cost_tag + - attributes: + sources: + - focus + value: providername:gcp + id: providername:gcp + type: cost_tag + properties: + data: + description: The list of Cloud Cost Management tags. + items: + $ref: "#/components/schemas/CostTag" + type: array + required: + - data + type: object + CoverageSummaryAttributes: + description: Attributes object for code coverage summary response. + properties: + codeowners: + additionalProperties: + $ref: "#/components/schemas/CoverageSummaryCodeownerStats" + description: Coverage statistics broken down by code owner. + nullable: true + type: object + evaluated_flags_count: + description: Total number of coverage flags evaluated. + example: 8 + format: int64 + type: integer + evaluated_reports_count: + description: Total number of coverage reports evaluated. + example: 12 + format: int64 + type: integer + patch_coverage: + description: Overall patch coverage percentage. + example: 70.1 + format: double + nullable: true + type: number + services: + additionalProperties: + $ref: "#/components/schemas/CoverageSummaryServiceStats" + description: Coverage statistics broken down by service. + nullable: true + type: object + total_coverage: + description: Overall total coverage percentage. + example: 82.4 + format: double + nullable: true + type: number + type: object + CoverageSummaryCodeownerStats: + description: Coverage statistics for a specific code owner. + properties: + evaluated_flags_count: + description: Number of coverage flags evaluated for the code owner. + example: 2 + format: int64 + type: integer + evaluated_reports_count: + description: Number of coverage reports evaluated for the code owner. + example: 4 + format: int64 + type: integer + patch_coverage: + description: Patch coverage percentage for the code owner. + example: 75.2 + format: double + nullable: true + type: number + total_coverage: + description: Total coverage percentage for the code owner. + example: 88.7 + format: double + nullable: true + type: number + type: object + CoverageSummaryData: + description: Data object for coverage summary response. + properties: + attributes: + $ref: "#/components/schemas/CoverageSummaryAttributes" + id: + description: Unique identifier for the coverage summary (base64-hashed). + example: ZGQxMjM0NV9tYWluXzE3MDk1NjQwMDA= + type: string + type: + $ref: "#/components/schemas/CoverageSummaryType" + type: object + CoverageSummaryResponse: + description: Response object containing code coverage summary. + properties: + data: + $ref: "#/components/schemas/CoverageSummaryData" + type: object + CoverageSummaryServiceStats: + description: Coverage statistics for a specific service. + properties: + evaluated_flags_count: + description: Number of coverage flags evaluated for the service. + example: 3 + format: int64 + type: integer + evaluated_reports_count: + description: Number of coverage reports evaluated for the service. + example: 5 + format: int64 + type: integer + patch_coverage: + description: Patch coverage percentage for the service. + example: 72.3 + format: double + nullable: true + type: number + total_coverage: + description: Total coverage percentage for the service. + example: 85.5 + format: double + nullable: true + type: number + type: object + CoverageSummaryType: + description: JSON:API type for coverage summary response. The value must always be `ci_app_coverage_summary`. + enum: + - ci_app_coverage_summary + example: ci_app_coverage_summary + type: string + x-enum-varnames: + - CI_APP_COVERAGE_SUMMARY + Cpu: + description: CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so users can choose between conservative and cost-saving risk profiles. + properties: + max: + description: Maximum CPU usage observed for the job, expressed in millicores. This represents the upper bound of usage. + format: int64 + type: integer + p75: + description: 75th percentile of CPU usage (millicores). Represents a cost-saving configuration while covering most workloads. + format: int64 + type: integer + p95: + description: 95th percentile of CPU usage (millicores). Balances performance and cost, providing a safer margin than p75. + format: int64 + type: integer + type: object + x-model-simple-name: SpaCpu + CreateActionConnectionRequest: + description: Request used to create an action connection. + properties: + data: + $ref: "#/components/schemas/ActionConnectionData" + required: + - data + type: object + CreateActionConnectionResponse: + description: The response for a created connection + properties: + data: + $ref: "#/components/schemas/ActionConnectionData" + type: object + CreateAllocationsRequest: + description: Request to create targeting rules (allocations) for a feature flag in an environment. + properties: + data: + $ref: "#/components/schemas/AllocationDataRequest" + required: + - data + type: object + CreateAppRequest: + description: A request object for creating a new app. + example: + data: + attributes: + components: + - events: [] + name: grid0 + properties: + children: + - events: [] + name: gridCell0 + properties: + children: + - events: [] + name: calloutValue0 + properties: + isDisabled: false + isLoading: false + isVisible: true + label: CPU Usage + size: sm + style: vivid_yellow + unit: kB + value: "42" + type: calloutValue + isVisible: "true" + layout: + default: + height: 8 + width: 2 + x: 0 + "y": 0 + type: gridCell + type: grid + description: "This is a simple example app" + name: "Example App" + queries: [] + rootInstanceName: grid0 + type: appDefinitions + properties: + data: + $ref: "#/components/schemas/CreateAppRequestData" + type: object + CreateAppRequestData: + description: The data object containing the app definition. + properties: + attributes: + $ref: "#/components/schemas/CreateAppRequestDataAttributes" + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - type + type: object + CreateAppRequestDataAttributes: + description: App definition attributes such as name, description, and components. + properties: + components: + description: The UI components that make up the app. + items: + $ref: "#/components/schemas/ComponentGrid" + type: array + description: + description: A human-readable description for the app. + type: string + name: + description: The name of the app. + type: string + queries: + description: An array of queries, such as external actions and state variables, that the app uses. + items: + $ref: "#/components/schemas/Query" + type: array + rootInstanceName: + description: The name of the root component of the app. This must be a `grid` component that contains all other components. + type: string + tags: + description: A list of tags for the app, which can be used to filter apps. + example: + - "service:webshop-backend" + - "team:webshop" + items: + description: An individual tag for the app. + type: string + type: array + type: object + CreateAppResponse: + description: The response object after a new app is successfully created, with the app ID. + properties: + data: + $ref: "#/components/schemas/CreateAppResponseData" + type: object + CreateAppResponseData: + description: The data object containing the app ID. + properties: + id: + description: The ID of the created app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + type: object + CreateAppsDatastoreRequest: + description: Request to create a new datastore with specified configuration and metadata. + properties: + data: + $ref: "#/components/schemas/CreateAppsDatastoreRequestData" + type: object + CreateAppsDatastoreRequestData: + description: Data wrapper containing the configuration needed to create a new datastore. + properties: + attributes: + $ref: "#/components/schemas/CreateAppsDatastoreRequestDataAttributes" + id: + description: Optional ID for the new datastore. If not provided, one will be generated automatically. + type: string + type: + $ref: "#/components/schemas/DatastoreDataType" + required: + - type + type: object + CreateAppsDatastoreRequestDataAttributes: + description: Configuration and metadata to create a new datastore. + properties: + description: + description: A human-readable description about the datastore. + type: string + name: + description: The display name for the new datastore. + example: "datastore-name" + type: string + org_access: + $ref: "#/components/schemas/CreateAppsDatastoreRequestDataAttributesOrgAccess" + primary_column_name: + $ref: "#/components/schemas/DatastoreAttributesPrimaryColumnName" + primary_key_generation_strategy: + $ref: "#/components/schemas/DatastorePrimaryKeyGenerationStrategy" + required: + - name + - primary_column_name + type: object + CreateAppsDatastoreRequestDataAttributesOrgAccess: + description: The organization access level for the datastore. For example, 'contributor'. + enum: + - contributor + - viewer + - manager + type: string + x-enum-varnames: + - CONTRIBUTOR + - VIEWER + - MANAGER + CreateAppsDatastoreResponse: + description: Response after successfully creating a new datastore, containing the datastore's assigned ID. + properties: + data: + $ref: "#/components/schemas/CreateAppsDatastoreResponseData" + type: object + CreateAppsDatastoreResponseData: + description: The newly created datastore's data. + properties: + id: + description: The unique identifier assigned to the newly created datastore. + type: string + type: + $ref: "#/components/schemas/DatastoreDataType" + required: + - type + type: object + CreateAttachmentRequest: + description: Create request for an attachment. + properties: + data: + $ref: "#/components/schemas/CreateAttachmentRequestData" + type: object + CreateAttachmentRequestData: + description: Attachment data for a create request. + properties: + attributes: + $ref: "#/components/schemas/CreateAttachmentRequestDataAttributes" + id: + description: The unique identifier of the attachment. + type: string + type: + $ref: "#/components/schemas/IncidentAttachmentType" + required: + - type + type: object + CreateAttachmentRequestDataAttributes: + description: The attributes for creating an attachment. + properties: + attachment: + $ref: "#/components/schemas/CreateAttachmentRequestDataAttributesAttachment" + attachment_type: + $ref: "#/components/schemas/AttachmentDataAttributesAttachmentType" + type: object + CreateAttachmentRequestDataAttributesAttachment: + description: The attachment object for creating an attachment. + properties: + documentUrl: + description: The URL of the attachment. + example: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + type: string + title: + description: The title of the attachment. + example: Postmortem-IR-123 + type: string + type: object + CreateBackfilledDegradationRequest: + description: Request object for creating a backfilled degradation. + example: + data: + attributes: + title: Past API Outage + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: We detected elevated error rates in the API. + started_at: "2026-04-27T13:37:31.038001628Z" + status: investigating + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: Root cause identified as a misconfigured deployment. + started_at: "2026-04-27T14:07:31.038001628Z" + status: identified + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: The issue has been resolved and API is operating normally. + started_at: "2026-04-27T14:37:31.038001628Z" + status: resolved + type: degradations + properties: + data: + $ref: "#/components/schemas/CreateBackfilledDegradationRequestData" + type: object + CreateBackfilledDegradationRequestData: + description: The data object for creating a backfilled degradation. + properties: + attributes: + $ref: "#/components/schemas/CreateBackfilledDegradationRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateBackfilledDegradationRequestDataRelationships" + type: + $ref: "#/components/schemas/PatchDegradationRequestDataType" + required: + - type + type: object + CreateBackfilledDegradationRequestDataAttributes: + description: The supported attributes for creating a backfilled degradation. + properties: + title: + description: The title of the backfilled degradation. + example: "" + type: string + updates: + description: The list of status updates describing the timeline of the degradation. + items: + $ref: "#/components/schemas/CreateBackfilledDegradationRequestDataAttributesUpdatesItems" + type: array + required: + - title + - updates + type: object + CreateBackfilledDegradationRequestDataAttributesUpdatesItems: + description: A backfilled degradation update entry. + properties: + components_affected: + description: The components affected. + items: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesComponentsAffectedItems" + type: array + description: + description: A description of the update. + type: string + started_at: + description: Timestamp of when the update occurred. + example: "" + format: date-time + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + required: + - started_at + - status + type: object + CreateBackfilledDegradationRequestDataRelationships: + description: The supported relationships for creating a backfilled degradation. + properties: + template: + $ref: "#/components/schemas/CreateBackfilledDegradationRequestDataRelationshipsTemplate" + description: The template used to create the backfilled degradation. + type: object + CreateBackfilledDegradationRequestDataRelationshipsTemplate: + description: The template used to create the backfilled degradation. + properties: + data: + $ref: "#/components/schemas/CreateBackfilledDegradationRequestDataRelationshipsTemplateData" + required: + - data + type: object + CreateBackfilledDegradationRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the backfilled degradation. + properties: + id: + description: The ID of the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + - id + type: object + CreateBackfilledMaintenanceRequest: + description: Request object for creating a backfilled maintenance. + example: + data: + attributes: + title: Past Database Maintenance + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: maintenance + description: Database maintenance is in progress. + started_at: "2026-04-27T13:37:31.038003786Z" + status: in_progress + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: Database maintenance has been completed successfully. + started_at: "2026-04-27T14:37:31.038003786Z" + status: completed + type: maintenances + properties: + data: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequestData" + type: object + CreateBackfilledMaintenanceRequestData: + description: The data object for creating a backfilled maintenance. + properties: + attributes: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequestDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceRequestDataType" + required: + - type + type: object + CreateBackfilledMaintenanceRequestDataAttributes: + description: The supported attributes for creating a backfilled maintenance. + properties: + title: + description: The title of the backfilled maintenance. + example: "" + type: string + updates: + description: "The list of updates. Exactly two updates are required: the start (`in_progress`) and the end (`completed`)." + items: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequestDataAttributesUpdatesItems" + maxItems: 2 + minItems: 2 + type: array + required: + - title + - updates + type: object + CreateBackfilledMaintenanceRequestDataAttributesUpdatesItems: + description: A backfilled maintenance update entry. + properties: + components_affected: + description: The components affected. + items: + $ref: "#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems" + type: array + description: + description: A description of the update. + example: "" + type: string + started_at: + description: Timestamp of when the update occurred. + example: "" + format: date-time + type: string + status: + $ref: "#/components/schemas/CreateMaintenanceRequestDataAttributesUpdatesItemsStatus" + required: + - description + - started_at + - status + type: object + CreateBackfilledMaintenanceRequestDataRelationships: + description: The supported relationships for creating a backfilled maintenance. + properties: + template: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequestDataRelationshipsTemplate" + description: The template used to create the backfilled maintenance. + type: object + CreateBackfilledMaintenanceRequestDataRelationshipsTemplate: + description: The template used to create the backfilled maintenance. + properties: + data: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequestDataRelationshipsTemplateData" + required: + - data + type: object + CreateBackfilledMaintenanceRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the backfilled maintenance. + properties: + id: + description: The ID of the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + - id + type: object + CreateCampaignRequest: + description: Request to create a new campaign. + properties: + data: + $ref: "#/components/schemas/CreateCampaignRequestData" + required: + - data + type: object + CreateCampaignRequestAttributes: + description: Attributes for creating a new campaign. + properties: + description: + description: The description of the campaign. + example: Campaign to improve security posture for Q1 2024. + type: string + due_date: + description: The due date of the campaign. + example: "2024-03-31T23:59:59Z" + format: date-time + type: string + entity_scope: + description: Entity scope query to filter entities for this campaign. + example: kind:service AND team:platform + type: string + guidance: + description: Guidance for the campaign. + example: Please ensure all services pass the security requirements. + type: string + key: + description: The unique key for the campaign. + example: q1-security-2024 + type: string + name: + description: The name of the campaign. + example: Q1 Security Campaign + type: string + owner_id: + description: The UUID of the campaign owner. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + rule_ids: + description: Array of rule IDs associated with this campaign. + example: ["q8MQxk8TCqrHnWkx", "r9NRyl9UDrsIoXly"] + items: + description: The unique ID of a scorecard rule. + type: string + type: array + start_date: + description: The start date of the campaign. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/CampaignStatus" + required: + - name + - key + - owner_id + - start_date + - rule_ids + type: object + CreateCampaignRequestData: + description: Data for creating a new campaign. + properties: + attributes: + $ref: "#/components/schemas/CreateCampaignRequestAttributes" + type: + $ref: "#/components/schemas/CampaignType" + required: + - type + - attributes + type: object + CreateCaseRequestArray: + description: List of requests to create cases for security findings. + properties: + data: + description: Array of case creation request data objects. + items: + $ref: "#/components/schemas/CreateCaseRequestData" + type: array + required: + - data + type: object + CreateCaseRequestData: + description: Data of the case to create. + properties: + attributes: + $ref: "#/components/schemas/CreateCaseRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateCaseRequestDataRelationships" + type: + $ref: "#/components/schemas/CaseDataType" + required: + - type + type: object + CreateCaseRequestDataAttributes: + description: Attributes of the case to create. + properties: + assignee_id: + description: Unique identifier of the user assigned to the case. + example: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + type: string + description: + description: Description of the case. If not provided, the description will be automatically generated. + example: "A description of the case." + type: string + priority: + $ref: "#/components/schemas/CasePriority" + description: Priority of the case. If not provided, the priority will be automatically set to "NOT_DEFINED". + example: "P4" + title: + description: Title of the case. If not provided, the title will be automatically generated. + example: "A title for the case." + type: string + type: object + CreateCaseRequestDataRelationships: + description: Relationships of the case to create. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to create a case for. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project in which the case will be created. + required: + - findings + - project + type: object + CreateComponentRequest: + description: Request object for creating a component. + example: + data: + attributes: + name: Metrics Intake + position: 0 + type: component + relationships: + group: + data: + type: components + properties: + data: + $ref: "#/components/schemas/CreateComponentRequestData" + type: object + CreateComponentRequestData: + description: The data object for creating a component. + properties: + attributes: + $ref: "#/components/schemas/CreateComponentRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateComponentRequestDataRelationships" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - attributes + - type + type: object + CreateComponentRequestDataAttributes: + description: The supported attributes for creating a component. + properties: + components: + description: If creating a component of type `group`, the components to create within the group. + example: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + items: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesComponentsItems" + type: array + name: + description: The name of the component. + example: Web App + type: string + position: + description: The zero-indexed position of the component. + example: 0 + format: int64 + type: integer + type: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesType" + description: The type of the component. + example: group + required: + - name + - position + - type + type: object + CreateComponentRequestDataAttributesComponentsItems: + description: A component to be created within a group. + properties: + name: + description: The name of the grouped component. + example: "" + type: string + position: + description: The zero-indexed position of the grouped component relative to the other components in the group. + example: 0 + format: int64 + type: integer + type: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType" + required: + - name + - position + - type + type: object + CreateComponentRequestDataAttributesType: + description: The type of the component. + enum: + - component + - group + example: component + type: string + x-enum-varnames: + - COMPONENT + - GROUP + CreateComponentRequestDataRelationships: + description: The supported relationships for creating a component. + properties: + group: + $ref: "#/components/schemas/CreateComponentRequestDataRelationshipsGroup" + description: The group to create the component within. + type: object + CreateComponentRequestDataRelationshipsGroup: + description: The group to create the component within. + properties: + data: + $ref: "#/components/schemas/CreateComponentRequestDataRelationshipsGroupData" + required: + - data + type: object + CreateComponentRequestDataRelationshipsGroupData: + description: The data object identifying the group to create the component within. + nullable: true + properties: + id: + description: The ID of the group. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - type + - id + type: object + CreateConnectionRequest: + description: Request body for creating a new data source connection for an entity. + example: + data: + attributes: + fields: + - description: Customer subscription tier from `CRM` + display_name: Customer Tier + id: customer_tier + source_name: subscription_tier + type: string + - description: Customer lifetime value in `USD` + display_name: Lifetime Value + id: lifetime_value + source_name: ltv + type: number + join_attribute: user_email + join_type: email + type: ref_table + id: crm-integration + type: connection_id + properties: + data: + $ref: "#/components/schemas/CreateConnectionRequestData" + type: object + CreateConnectionRequestData: + description: The data object containing the resource type and attributes for creating a new connection. + properties: + attributes: + $ref: "#/components/schemas/CreateConnectionRequestDataAttributes" + id: + description: Unique identifier for the new connection resource. + type: string + type: + $ref: "#/components/schemas/UpdateConnectionRequestDataType" + required: + - type + type: object + CreateConnectionRequestDataAttributes: + description: Attributes defining the data source connection, including join configuration and custom fields. + properties: + fields: + description: List of custom attribute fields to import from the data source. + items: + $ref: "#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems" + type: array + join_attribute: + description: The attribute in the data source used to join records with the entity. + example: "" + type: string + join_type: + description: The type of join key used to link the data source to the entity (for example, email or user_id). + example: "" + type: string + metadata: + additionalProperties: + type: string + description: Additional key-value metadata associated with the connection. + type: object + type: + description: The type of data source connection (for example, ref_table). + example: "" + type: string + required: + - join_attribute + - join_type + - type + type: object + CreateConnectionRequestDataAttributesFieldsItems: + description: Definition of a custom attribute field to import from a data source connection. + properties: + description: + description: Human-readable explanation of what the field represents. + type: string + display_name: + description: The human-readable label for the field shown in the UI. + type: string + groups: + description: List of group labels used to categorize the field. + items: + description: A group label name for categorizing the field. + type: string + type: array + id: + description: The unique identifier for the field within the connection. + example: "" + type: string + source_name: + description: The name of the column or attribute in the source data system that maps to this field. + example: "" + type: string + type: + description: The data type of the field (for example, string or number). + example: "" + type: string + required: + - id + - source_name + - type + type: object + CreateCustomFrameworkRequest: + description: Request object to create a custom framework. + properties: + data: + $ref: "#/components/schemas/CustomFrameworkData" + required: + - data + type: object + CreateCustomFrameworkResponse: + description: Response object to create a custom framework. + properties: + data: + $ref: "#/components/schemas/FrameworkHandleAndVersionResponseData" + required: + - data + type: object + CreateDataDeletionRequestBody: + description: Object needed to create a data deletion request. + properties: + data: + $ref: "#/components/schemas/CreateDataDeletionRequestBodyData" + required: + - data + type: object + CreateDataDeletionRequestBodyAttributes: + description: Attributes for creating a data deletion request. + properties: + displayed_total: + description: Total number of elements to be deleted as displayed to the user. + example: 100 + format: int64 + minimum: 1 + type: integer + from: + description: Start of requested time window, milliseconds since Unix epoch. + example: 1672527600000 + format: int64 + type: integer + indexes: + description: List of indexes for the search. If not provided, the search is performed in all indexes. + example: ["test-index", "test-index-2"] + items: + description: Individual index. + type: string + type: array + query: + additionalProperties: + type: string + description: Query for creating a data deletion request. + example: {"host": "abc", "service": "xyz"} + type: object + to: + description: End of requested time window, milliseconds since Unix epoch. + example: 1704063600000 + format: int64 + type: integer + required: + - query + - from + - to + - displayed_total + type: object + CreateDataDeletionRequestBodyData: + description: Data needed to create a data deletion request. + properties: + attributes: + $ref: "#/components/schemas/CreateDataDeletionRequestBodyAttributes" + type: + $ref: "#/components/schemas/CreateDataDeletionRequestBodyDataType" + required: + - attributes + - type + type: object + CreateDataDeletionRequestBodyDataType: + description: The deletion request type. + enum: + - create_deletion_req + example: "create_deletion_req" + type: string + x-enum-varnames: + - CREATE_DELETION_REQ + CreateDataDeletionResponseBody: + description: The response from the create data deletion request endpoint. + properties: + data: + $ref: "#/components/schemas/DataDeletionResponseItem" + meta: + $ref: "#/components/schemas/DataDeletionResponseMeta" + type: object + CreateDegradationRequest: + description: Request object for creating a degradation. + example: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: Our API is experiencing elevated latency. We are investigating the issue. + status: investigating + title: Elevated API Latency + type: degradations + properties: + data: + $ref: "#/components/schemas/CreateDegradationRequestData" + meta: + $ref: "#/components/schemas/DegradationRequestMeta" + description: The supported metadata for creating a degradation. + type: object + CreateDegradationRequestData: + description: The data object for creating a degradation. + properties: + attributes: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateDegradationRequestDataRelationships" + type: + $ref: "#/components/schemas/PatchDegradationRequestDataType" + required: + - attributes + - type + type: object + CreateDegradationRequestDataAttributes: + description: The supported attributes for creating a degradation. + properties: + components_affected: + description: The components affected by the degradation. + example: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + items: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesComponentsAffectedItems" + type: array + description: + description: The description of the degradation. + example: Our API is experiencing elevated latency. We are investigating the issue. + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + description: The status of the degradation. + example: investigating + title: + description: The title of the degradation. + example: Elevated API Latency + type: string + required: + - components_affected + - status + - title + type: object + CreateDegradationRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + required: + - id + - status + type: object + CreateDegradationRequestDataAttributesStatus: + description: The status of the degradation. + enum: + - investigating + - identified + - monitoring + - resolved + example: investigating + type: string + x-enum-varnames: + - INVESTIGATING + - IDENTIFIED + - MONITORING + - RESOLVED + CreateDegradationRequestDataRelationships: + description: The supported relationships for creating a degradation. + properties: + template: + $ref: "#/components/schemas/CreateDegradationRequestDataRelationshipsTemplate" + description: The template used to create the degradation. + type: object + CreateDegradationRequestDataRelationshipsTemplate: + description: The template used to create the degradation. + properties: + data: + $ref: "#/components/schemas/CreateDegradationRequestDataRelationshipsTemplateData" + required: + - data + type: object + CreateDegradationRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the degradation. + properties: + id: + description: The ID of the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + - id + type: object + CreateDegradationTemplateRequest: + description: Request object for creating a degradation template. + properties: + data: + $ref: "#/components/schemas/CreateDegradationTemplateRequestData" + type: object + CreateDegradationTemplateRequestData: + description: The data object for creating a degradation template. + properties: + attributes: + $ref: "#/components/schemas/CreateDegradationTemplateRequestDataAttributes" + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + type: object + CreateDegradationTemplateRequestDataAttributes: + description: The attributes for creating a degradation template. + properties: + components_affected: + description: The components affected by a degradation created from this template. + items: + $ref: "#/components/schemas/CreateDegradationTemplateRequestDataAttributesComponentsAffectedItems" + type: array + degradation_title: + description: The title used for a degradation created from this template. + type: string + name: + description: The name of the degradation template. + example: "" + type: string + updates: + description: The pre-filled updates for a degradation created from this template. + items: + $ref: "#/components/schemas/CreateDegradationTemplateRequestDataAttributesUpdatesItems" + type: array + required: + - name + type: object + CreateDegradationTemplateRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation created from this template. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "" + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus" + required: + - id + - status + type: object + CreateDegradationTemplateRequestDataAttributesUpdatesItems: + description: A pre-filled update for a degradation created from this template. + properties: + message: + description: The message of the update. + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + required: + - status + type: object + CreateDeploymentGateParams: + description: Parameters for creating a deployment gate. + properties: + data: + $ref: "#/components/schemas/CreateDeploymentGateParamsData" + required: + - data + type: object + CreateDeploymentGateParamsData: + description: Parameters for creating a deployment gate. + properties: + attributes: + $ref: "#/components/schemas/CreateDeploymentGateParamsDataAttributes" + type: + $ref: "#/components/schemas/DeploymentGateDataType" + required: + - type + - attributes + type: object + CreateDeploymentGateParamsDataAttributes: + description: Parameters for creating a deployment gate. + properties: + dry_run: + default: false + description: Whether this gate is run in dry-run mode. + example: false + type: boolean + env: + description: The environment of the deployment gate. + example: "production" + type: string + identifier: + default: default + description: The identifier of the deployment gate. + example: "pre" + type: string + service: + description: The service of the deployment gate. + example: "my-service" + type: string + required: + - env + - service + type: object + CreateDeploymentRuleParams: + description: Parameters for creating a deployment rule. + properties: + data: + $ref: "#/components/schemas/CreateDeploymentRuleParamsData" + type: object + CreateDeploymentRuleParamsData: + description: Parameters for creating a deployment rule. + properties: + attributes: + $ref: "#/components/schemas/CreateDeploymentRuleParamsDataAttributes" + type: + $ref: "#/components/schemas/DeploymentRuleDataType" + required: + - type + - attributes + type: object + CreateDeploymentRuleParamsDataAttributes: + description: Parameters for creating a deployment rule. + properties: + dry_run: + default: false + description: Whether this rule is run in dry-run mode. + example: false + type: boolean + name: + description: The name of the deployment rule. + example: "My deployment rule" + type: string + options: + $ref: "#/components/schemas/DeploymentRulesOptions" + type: + description: The type of the deployment rule (faulty_deployment_detection or monitor). + example: "faulty_deployment_detection" + type: string + required: + - name + - options + - type + type: object + CreateEmailNotificationChannelConfig: + description: "Configuration to create an e-mail notification channel" + properties: + address: + description: "The e-mail address to be notified" + example: "" + type: string + formats: + description: Preferred content formats for notifications. + example: + - html + items: + $ref: "#/components/schemas/NotificationChannelEmailFormatType" + type: array + type: + $ref: "#/components/schemas/NotificationChannelEmailConfigType" + required: + - type + - address + - formats + type: object + CreateEnvironmentAttributes: + description: Attributes for creating a new environment. + properties: + is_production: + default: false + description: Indicates whether this is a production environment. + example: false + type: boolean + name: + description: The name of the environment. + example: "env-search-term" + type: string + queries: + description: List of queries to define the environment scope. + example: ["staging", "test"] + items: + description: A query string used to match the environment scope. + type: string + minItems: 1 + type: array + require_feature_flag_approval: + default: false + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + required: + - name + - queries + type: object + CreateEnvironmentData: + description: Data for creating a new environment. + properties: + attributes: + $ref: "#/components/schemas/CreateEnvironmentAttributes" + type: + $ref: "#/components/schemas/CreateEnvironmentDataType" + required: + - type + - attributes + type: object + CreateEnvironmentDataType: + description: The resource type. + enum: + - "environments" + example: "environments" + type: string + x-enum-varnames: + - ENVIRONMENTS + CreateEnvironmentRequest: + description: Request to create a new environment. + properties: + data: + $ref: "#/components/schemas/CreateEnvironmentData" + required: + - data + type: object + CreateFeatureFlagAttributes: + description: Attributes for creating a new feature flag. + properties: + default_variant_key: + description: The key of the default variant. + example: "variant-abc123" + nullable: true + type: string + description: + description: The description of the feature flag. + example: "This is an example feature flag for demonstration" + type: string + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + key: + description: The unique key of the feature flag. + example: "feature-flag-abc123" + type: string + name: + description: The name of the feature flag. + example: "Feature Flag ABC123" + type: string + value_type: + $ref: "#/components/schemas/ValueType" + variants: + description: The variants of the feature flag. + items: + $ref: "#/components/schemas/CreateVariant" + type: array + required: + - key + - name + - description + - value_type + - variants + type: object + CreateFeatureFlagData: + description: Data for creating a new feature flag. + properties: + attributes: + $ref: "#/components/schemas/CreateFeatureFlagAttributes" + type: + $ref: "#/components/schemas/CreateFeatureFlagDataType" + required: + - type + - attributes + type: object + CreateFeatureFlagDataType: + description: The resource type. + enum: + - "feature-flags" + example: "feature-flags" + type: string + x-enum-varnames: + - FEATURE_FLAGS + CreateFeatureFlagRequest: + description: Request to create a new feature flag. + properties: + data: + $ref: "#/components/schemas/CreateFeatureFlagData" + required: + - data + type: object + CreateFormData: + description: The data for creating a form. + properties: + attributes: + $ref: "#/components/schemas/CreateFormDataAttributes" + type: + $ref: "#/components/schemas/FormType" + required: + - attributes + - type + type: object + CreateFormDataAttributes: + description: The attributes for creating a form. + properties: + anonymous: + default: false + description: Whether the form accepts anonymous submissions. + example: false + type: boolean + data_definition: + $ref: "#/components/schemas/FormDataDefinition" + description: + description: The description of the form. + example: A form to collect user feedback. + type: string + idp_survey: + default: false + description: Whether the form is an IDP survey. + example: false + type: boolean + name: + description: The name of the form. + example: User Feedback Form + type: string + single_response: + default: false + description: Whether each user can only submit one response. + example: false + type: boolean + ui_definition: + $ref: "#/components/schemas/FormUiDefinition" + required: + - data_definition + - name + - ui_definition + type: object + CreateFormRequest: + description: A request to create a form. + properties: + data: + $ref: "#/components/schemas/CreateFormData" + required: + - data + type: object + CreateIncidentNotificationRuleRequest: + description: Create request for a notification rule. + properties: + data: + $ref: "#/components/schemas/IncidentNotificationRuleCreateData" + required: + - data + type: object + CreateIncidentNotificationTemplateRequest: + description: Create request for a notification template. + properties: + data: + $ref: "#/components/schemas/IncidentNotificationTemplateCreateData" + required: + - data + type: object + CreateJiraIssueRequestArray: + description: List of requests to create Jira issues for security findings. + properties: + data: + description: Array of Jira issue creation request data objects. + items: + $ref: "#/components/schemas/CreateJiraIssueRequestData" + type: array + required: + - data + type: object + CreateJiraIssueRequestData: + description: Data of the Jira issue to create. + properties: + attributes: + $ref: "#/components/schemas/CreateJiraIssueRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateJiraIssueRequestDataRelationships" + type: + $ref: "#/components/schemas/JiraIssuesDataType" + required: + - type + type: object + CreateJiraIssueRequestDataAttributes: + description: Attributes of the Jira issue to create. + properties: + assignee_id: + description: Unique identifier of the Datadog user assigned to the Jira issue. + example: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + type: string + description: + description: Description of the Jira issue. If not provided, the description will be automatically generated. + example: "A description of the Jira issue." + type: string + fields: + additionalProperties: {} + description: Custom fields of the Jira issue to create. For the list of available fields, see [Jira documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-projectidorkey-issuetypes-issuetypeid-get). + example: {"key1": "value", "key2": ["value"], "key3": {"key4": "value"}} + type: object + priority: + $ref: "#/components/schemas/CasePriority" + description: Datadog case priority mapped to the Jira issue priority. If not provided, the priority will be automatically set to "NOT_DEFINED". To configure the mapping, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). + example: "P4" + title: + description: Title of the Jira issue. If not provided, the title will be automatically generated. + example: "A title for the Jira issue." + type: string + type: object + CreateJiraIssueRequestDataRelationships: + description: Relationships of the Jira issue to create. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to create a Jira issue for. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project configured with the Jira integration. It is used to create the Jira issue. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). + required: + - findings + - project + type: object + CreateLinearIssueRequestArray: + description: List of requests to create Linear issues for security findings. + properties: + data: + description: Array of Linear issue creation request data objects. + items: + $ref: "#/components/schemas/CreateLinearIssueRequestData" + type: array + required: + - data + type: object + CreateLinearIssueRequestData: + description: Data of the Linear issue to create. + properties: + attributes: + $ref: "#/components/schemas/CreateLinearIssueRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateLinearIssueRequestDataRelationships" + type: + $ref: "#/components/schemas/LinearIssuesDataType" + required: + - type + type: object + CreateLinearIssueRequestDataAttributes: + description: Attributes of the Linear issue to create. + properties: + assignee_id: + description: Unique identifier of the Datadog user assigned to the Linear issue. + example: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + type: string + description: + description: Description of the Linear issue. If not provided, the description will be automatically generated. + example: "A description of the Linear issue." + type: string + label_ids: + description: Linear label IDs to set on the created issue. + example: + - "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + items: + description: A Linear label ID. + type: string + type: array + linear_project_id: + description: Unique identifier of the Linear project to pin the issue to. If not provided, the issue is not associated with a Linear project. + example: "d4c3b2a1-6f5e-8b7a-0d9c-2f1e4a3b6c5d" + type: string + priority: + $ref: "#/components/schemas/CasePriority" + description: Datadog case priority mapped to the Linear issue priority. If not provided, the priority will be automatically set to "NOT_DEFINED". + example: "P4" + title: + description: Title of the Linear issue. If not provided, the title will be automatically generated. + example: "A title for the Linear issue." + type: string + type: object + CreateLinearIssueRequestDataRelationships: + description: Relationships of the Linear issue to create. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to create a Linear issue for. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project configured with the Linear integration. It is used to create the Linear issue. + required: + - findings + - project + type: object + CreateMaintenanceRequest: + description: Request object for creating a maintenance. + example: + data: + attributes: + completed_date: "2026-02-18T19:51:13.332360075Z" + completed_description: We have completed maintenance on the API to improve performance. + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + in_progress_description: We are currently performing maintenance on the API to improve performance. + scheduled_description: We will be performing maintenance on the API to improve performance. + start_date: "2026-02-18T19:21:13.332360075Z" + title: API Maintenance + type: maintenances + properties: + data: + $ref: "#/components/schemas/CreateMaintenanceRequestData" + type: object + CreateMaintenanceRequestData: + description: The data object for creating a maintenance. + properties: + attributes: + $ref: "#/components/schemas/CreateMaintenanceRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateMaintenanceRequestDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceRequestDataType" + required: + - attributes + - type + type: object + CreateMaintenanceRequestDataAttributes: + description: The supported attributes for creating a maintenance. + properties: + completed_date: + description: Timestamp of when the maintenance was completed. + example: "2026-02-18T19:51:13.332360075Z" + format: date-time + type: string + completed_description: + description: The description shown when the maintenance is completed. + example: "We have completed maintenance on the API to improve performance." + type: string + components_affected: + description: The components affected by the maintenance. + items: + $ref: "#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems" + type: array + in_progress_description: + description: The description shown while the maintenance is in progress. + example: "We are currently performing maintenance on the API to improve performance." + type: string + scheduled_description: + description: The description shown when the maintenance is scheduled. + example: "We will be performing maintenance on the API to improve performance." + type: string + start_date: + description: Timestamp of when the maintenance is scheduled to start. + example: "2026-02-18T19:21:13.332360075Z" + format: date-time + type: string + title: + description: The title of the maintenance. + example: "API Maintenance" + type: string + required: + - title + - completed_date + - completed_description + - scheduled_description + - start_date + - in_progress_description + type: object + CreateMaintenanceRequestDataAttributesComponentsAffectedItems: + description: A component affected by a maintenance. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus" + required: + - id + - status + type: object + CreateMaintenanceRequestDataAttributesUpdatesItemsStatus: + description: The status of a maintenance update. + enum: + - in_progress + - completed + example: in_progress + type: string + x-enum-varnames: + - IN_PROGRESS + - COMPLETED + CreateMaintenanceRequestDataRelationships: + description: The supported relationships for creating a maintenance. + properties: + template: + $ref: "#/components/schemas/CreateMaintenanceRequestDataRelationshipsTemplate" + description: The template used to create the maintenance. + type: object + CreateMaintenanceRequestDataRelationshipsTemplate: + description: The template used to create the maintenance. + properties: + data: + $ref: "#/components/schemas/CreateMaintenanceRequestDataRelationshipsTemplateData" + required: + - data + type: object + CreateMaintenanceRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the maintenance. + properties: + id: + description: The ID of the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + - id + type: object + CreateMaintenanceTemplateRequest: + description: Request object for creating a maintenance template. + properties: + data: + $ref: "#/components/schemas/CreateMaintenanceTemplateRequestData" + type: object + CreateMaintenanceTemplateRequestData: + description: The data object for creating a maintenance template. + properties: + attributes: + $ref: "#/components/schemas/CreateMaintenanceTemplateRequestDataAttributes" + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + type: object + CreateMaintenanceTemplateRequestDataAttributes: + description: The attributes for creating a maintenance template. + properties: + completed_description: + description: The description shown when a maintenance created from this template is completed. + type: string + component_ids: + description: The IDs of the components affected by a maintenance created from this template. + items: + type: string + type: array + in_progress_description: + description: The description shown while a maintenance created from this template is in progress. + type: string + maintenance_title: + description: The title used for a maintenance created from this template. + type: string + name: + description: The name of the maintenance template. + example: "" + type: string + scheduled_description: + description: The description shown when a maintenance created from this template is scheduled. + type: string + required: + - name + type: object + CreateNotificationChannelAttributes: + description: Attributes for creating an on-call notification channel. + properties: + config: + $ref: "#/components/schemas/CreateNotificationChannelConfig" + description: Notification channel configuration + type: object + CreateNotificationChannelConfig: + description: "Defines the configuration for creating an On-Call notification channel" + oneOf: + - $ref: "#/components/schemas/CreatePhoneNotificationChannelConfig" + - $ref: "#/components/schemas/CreateEmailNotificationChannelConfig" + CreateNotificationChannelData: + description: Data for creating an on-call notification channel + properties: + attributes: + $ref: "#/components/schemas/CreateNotificationChannelAttributes" + type: + $ref: "#/components/schemas/NotificationChannelType" + required: + - type + type: object + CreateNotificationRuleParameters: + description: Body of the notification rule create request. + properties: + data: + $ref: "#/components/schemas/CreateNotificationRuleParametersData" + type: object + CreateNotificationRuleParametersData: + description: |- + Data of the notification rule create request: the rule type, and the rule attributes. All fields are required. + properties: + attributes: + $ref: "#/components/schemas/CreateNotificationRuleParametersDataAttributes" + type: + $ref: "#/components/schemas/NotificationRulesType" + required: + - attributes + - type + type: object + CreateNotificationRuleParametersDataAttributes: + description: |- + Attributes of the notification rule create request. + properties: + enabled: + $ref: "#/components/schemas/Enabled" + name: + $ref: "#/components/schemas/RuleName" + routing: + $ref: "#/components/schemas/NotificationRuleRouting" + selectors: + $ref: "#/components/schemas/Selectors" + targets: + $ref: "#/components/schemas/Targets" + time_aggregation: + $ref: "#/components/schemas/TimeAggregation" + required: + - selectors + - name + - targets + type: object + CreateOnCallNotificationRuleRequest: + description: A top-level wrapper for creating a notification rule for a user + example: + data: + attributes: + "category": "high_urgency" + channel_settings: + method: "sms" + type: "phone" + "delay_minutes": 1 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + properties: + data: + $ref: "#/components/schemas/CreateOnCallNotificationRuleRequestData" + required: + - data + type: object + CreateOnCallNotificationRuleRequestData: + description: Data for creating an on-call notification rule + properties: + attributes: + $ref: "#/components/schemas/OnCallNotificationRuleRequestAttributes" + relationships: + $ref: "#/components/schemas/OnCallNotificationRuleRelationships" + type: + $ref: "#/components/schemas/OnCallNotificationRuleType" + required: + - type + type: object + CreateOpenAPIResponse: + description: Response for `CreateOpenAPI` operation. + properties: + data: + $ref: "#/components/schemas/CreateOpenAPIResponseData" + type: object + CreateOpenAPIResponseAttributes: + description: Attributes for `CreateOpenAPI`. + properties: + failed_endpoints: + description: List of endpoints which couldn't be parsed. + items: + $ref: "#/components/schemas/OpenAPIEndpoint" + type: array + type: object + CreateOpenAPIResponseData: + description: Data envelope for `CreateOpenAPIResponse`. + properties: + attributes: + $ref: "#/components/schemas/CreateOpenAPIResponseAttributes" + id: + $ref: "#/components/schemas/ApiID" + type: object + CreateOrUpdateWidgetRequest: + description: Request body for creating or updating a widget. + properties: + data: + $ref: "#/components/schemas/CreateOrUpdateWidgetRequestData" + required: + - data + type: object + CreateOrUpdateWidgetRequestAttributes: + description: Attributes for creating or updating a widget. + properties: + definition: + $ref: "#/components/schemas/WidgetDefinition" + tags: + description: User-defined tags for organizing the widget. + items: + description: A single user-defined tag. + type: string + nullable: true + type: array + required: + - definition + type: object + CreateOrUpdateWidgetRequestData: + description: Data for creating or updating a widget. + properties: + attributes: + $ref: "#/components/schemas/CreateOrUpdateWidgetRequestAttributes" + type: + description: Widgets resource type. + example: widgets + type: string + required: + - type + - attributes + type: object + CreatePageRequest: + description: Full request to trigger an On-Call Page. + example: + data: + attributes: + description: Page details. + tags: + - service:test + target: + identifier: my-team + type: team_handle + title: Page title + urgency: low + type: pages + properties: + data: + $ref: "#/components/schemas/CreatePageRequestData" + type: object + CreatePageRequestData: + description: The main request body, including attributes and resource type. + properties: + attributes: + $ref: "#/components/schemas/CreatePageRequestDataAttributes" + type: + $ref: "#/components/schemas/CreatePageRequestDataType" + required: + - type + type: object + CreatePageRequestDataAttributes: + description: Details about the On-Call Page you want to create. + properties: + description: + description: A short summary of the issue or context. + type: string + tags: + description: Tags to help categorize or filter the page. + items: + description: A single tag for categorizing the page. + type: string + type: array + target: + $ref: "#/components/schemas/CreatePageRequestDataAttributesTarget" + title: + description: The title of the page. + example: "Service: Test is down" + type: string + urgency: + $ref: "#/components/schemas/PageUrgency" + required: + - target + - title + - urgency + type: object + CreatePageRequestDataAttributesTarget: + description: Information about the target to notify (such as a team or user). + properties: + identifier: + description: Identifier for the target (for example, team handle or user ID). + type: string + type: + $ref: "#/components/schemas/OnCallPageTargetType" + type: object + CreatePageRequestDataType: + default: pages + description: The type of resource used when creating an On-Call Page. + enum: + - pages + example: pages + type: string + x-enum-varnames: + - PAGES + CreatePageResponse: + description: The full response object after creating a new On-Call Page. + example: + data: + id: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + type: pages + properties: + data: + $ref: "#/components/schemas/CreatePageResponseData" + type: object + CreatePageResponseData: + description: The information returned after successfully creating a page. + properties: + id: + description: The unique ID of the created page. + type: string + type: + $ref: "#/components/schemas/CreatePageResponseDataType" + required: + - type + type: object + CreatePageResponseDataType: + default: pages + description: The type of resource used when creating an On-Call Page. + enum: + - pages + example: pages + type: string + x-enum-varnames: + - PAGES + CreatePhoneNotificationChannelConfig: + description: "Configuration to create a phone notification channel" + properties: + number: + description: "The E-164 formatted phone number (e.g. +3371234567)" + example: "" + type: string + type: + $ref: "#/components/schemas/NotificationChannelPhoneConfigType" + required: + - type + - number + type: object + CreatePublishRequestRequest: + description: A request to ask for approval to publish an app whose protection level is `approval_required`. + example: + data: + attributes: + description: Adds new dashboard widgets and a few bug fixes. + title: Release v1.2 to production + type: publishRequest + properties: + data: + $ref: "#/components/schemas/CreatePublishRequestRequestData" + type: object + CreatePublishRequestRequestData: + description: Data for creating a publish request. + properties: + attributes: + $ref: "#/components/schemas/CreatePublishRequestRequestDataAttributes" + type: + $ref: "#/components/schemas/PublishRequestType" + type: object + CreatePublishRequestRequestDataAttributes: + description: Attributes for creating a publish request. + properties: + description: + description: An optional description of the changes in this publish request. + example: Adds new dashboard widgets and a few bug fixes. + type: string + title: + description: A short title for the publish request. + example: Release v1.2 to production + type: string + required: + - title + type: object + CreateRuleRequest: + description: Scorecard create rule request. + properties: + data: + $ref: "#/components/schemas/CreateRuleRequestData" + type: object + CreateRuleRequestData: + description: Scorecard create rule request data. + properties: + attributes: + $ref: "#/components/schemas/RuleAttributesRequest" + type: + $ref: "#/components/schemas/RuleType" + type: object + CreateRuleResponse: + description: Created rule in response. + properties: + data: + $ref: "#/components/schemas/CreateRuleResponseData" + type: object + CreateRuleResponseData: + description: Create rule response data. + properties: + attributes: + $ref: "#/components/schemas/RuleAttributes" + id: + $ref: "#/components/schemas/RuleId" + relationships: + $ref: "#/components/schemas/RelationshipToRule" + type: + $ref: "#/components/schemas/RuleType" + type: object + CreateRulesetRequest: + description: The definition of `CreateRulesetRequest` object. + example: + data: + attributes: + enabled: true + rules: + - enabled: true + mapping: + metadata: + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: + id: New Ruleset + type: create_ruleset + properties: + data: + $ref: "#/components/schemas/CreateRulesetRequestData" + type: object + CreateRulesetRequestData: + description: The definition of `CreateRulesetRequestData` object. + properties: + attributes: + $ref: "#/components/schemas/CreateRulesetRequestDataAttributes" + id: + description: The `CreateRulesetRequestData` `id`. + type: string + type: + $ref: "#/components/schemas/CreateRulesetRequestDataType" + required: + - type + type: object + CreateRulesetRequestDataAttributes: + description: The definition of `CreateRulesetRequestDataAttributes` object. + properties: + enabled: + description: The `attributes` `enabled`. + type: boolean + rules: + description: The `attributes` `rules`. + items: + $ref: "#/components/schemas/CreateRulesetRequestDataAttributesRulesItems" + type: array + required: + - rules + type: object + CreateRulesetRequestDataAttributesRulesItems: + description: The definition of `CreateRulesetRequestDataAttributesRulesItems` object. + properties: + enabled: + description: The `items` `enabled`. + example: false + type: boolean + mapping: + $ref: "#/components/schemas/DataAttributesRulesItemsMapping" + metadata: + $ref: "#/components/schemas/RulesetItemMetadata" + name: + description: The `items` `name`. + example: "" + type: string + query: + $ref: "#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsQuery" + reference_table: + $ref: "#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsReferenceTable" + required: + - enabled + - name + type: object + CreateRulesetRequestDataAttributesRulesItemsQuery: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsQuery` object. + nullable: true + properties: + addition: + $ref: "#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsQueryAddition" + case_insensitivity: + description: The `query` `case_insensitivity`. + type: boolean + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `query` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + query: + description: The `query` `query`. + example: "" + type: string + required: + - addition + - query + type: object + CreateRulesetRequestDataAttributesRulesItemsQueryAddition: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsQueryAddition` object. + nullable: true + properties: + key: + description: The `addition` `key`. + example: "" + type: string + value: + description: The `addition` `value`. + example: "" + type: string + required: + - key + - value + type: object + CreateRulesetRequestDataAttributesRulesItemsReferenceTable: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsReferenceTable` object. + nullable: true + properties: + case_insensitivity: + description: The `reference_table` `case_insensitivity`. + type: boolean + field_pairs: + description: The `reference_table` `field_pairs`. + items: + $ref: "#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems" + type: array + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `reference_table` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + source_keys: + description: The `reference_table` `source_keys`. + example: + - "" + items: + description: A source key for the reference table lookup. + type: string + type: array + table_name: + description: The `reference_table` `table_name`. + example: "" + type: string + required: + - field_pairs + - source_keys + - table_name + type: object + CreateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems` object. + properties: + input_column: + description: The `items` `input_column`. + example: "" + type: string + output_key: + description: The `items` `output_key`. + example: "" + type: string + required: + - input_column + - output_key + type: object + CreateRulesetRequestDataType: + default: create_ruleset + description: Create ruleset resource type. + enum: + - create_ruleset + example: create_ruleset + type: string + x-enum-varnames: + - CREATE_RULESET + CreateServiceNowTicketRequestArray: + description: List of requests to create ServiceNow tickets for security findings. + properties: + data: + description: Array of ServiceNow ticket creation request data objects. + items: + $ref: "#/components/schemas/CreateServiceNowTicketRequestData" + type: array + required: + - data + type: object + CreateServiceNowTicketRequestData: + description: Data of the ServiceNow ticket to create. + properties: + attributes: + $ref: "#/components/schemas/CreateServiceNowTicketRequestDataAttributes" + relationships: + $ref: "#/components/schemas/CreateServiceNowTicketRequestDataRelationships" + type: + $ref: "#/components/schemas/ServiceNowTicketsDataType" + required: + - relationships + - type + type: object + CreateServiceNowTicketRequestDataAttributes: + description: Attributes of the ServiceNow ticket to create. + properties: + assignee_id: + description: Unique identifier of the Datadog user assigned to the case backing the ServiceNow ticket. + example: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + type: string + description: + description: Description of the ServiceNow ticket. If not provided, the description will be automatically generated. + example: "A description of the ServiceNow ticket." + type: string + priority: + $ref: "#/components/schemas/CasePriority" + description: Datadog case priority mapped to the ServiceNow ticket priority. If not provided, the priority will be automatically set to "NOT_DEFINED". + example: "P4" + title: + description: Title of the ServiceNow ticket. If not provided, the title will be automatically generated. + example: "A title for the ServiceNow ticket." + type: string + type: object + CreateServiceNowTicketRequestDataRelationships: + description: Relationships of the ServiceNow ticket to create. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to create a ServiceNow ticket for. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Case management project configured with the ServiceNow integration. It is used to create the ServiceNow ticket. + required: + - findings + - project + type: object + CreateSnapshotAdditionalConfig: + description: Additional configuration options for snapshot creation. + properties: + template_variables: + $ref: "#/components/schemas/CreateSnapshotTemplateVariables" + timeseries_legend_type: + $ref: "#/components/schemas/CreateSnapshotTimeseriesLegendType" + timezone_offset_minutes: + description: Timezone offset in minutes from UTC. Positive values are west of UTC (for example, `300` for UTC-5). Use `0` for UTC. + example: 300 + format: int64 + type: integer + type: object + CreateSnapshotDataAttributesRequest: + description: Attributes for snapshot creation. + properties: + additional_config: + $ref: "#/components/schemas/CreateSnapshotAdditionalConfig" + end: + description: End of the time window for the snapshot, in milliseconds since Unix epoch. + example: 1692464800000 + format: int64 + type: integer + height: + description: The height of the rendered snapshot in pixels. + example: 185 + format: int64 + type: integer + is_authenticated: + description: Whether the snapshot requires authentication to view. Authenticated snapshots are scoped to the creating organization. + example: false + type: boolean + start: + description: Start of the time window for the snapshot, in milliseconds since Unix epoch. + example: 1692464000000 + format: int64 + type: integer + ttl: + $ref: "#/components/schemas/CreateSnapshotTTL" + widget_definition: + additionalProperties: {} + description: The widget definition to render as a snapshot. Must include a valid `type` field and non-empty `requests` array. + example: + requests: + - q: "avg:system.cpu.user{*}" + type: timeseries + type: object + width: + description: The width of the rendered snapshot in pixels. + example: 300 + format: int64 + type: integer + required: + - widget_definition + - start + - end + type: object + CreateSnapshotDataAttributesResponse: + description: Attributes of the created snapshot. + properties: + url: + description: The URL to access the rendered snapshot image. + example: https://app.datadoghq.com/api/v2/snapshot/view/public/60d/00000000-0000-0000-0000-000000000000/1692464400000-12345678-1234-5678-9abc-def123456789.png + type: string + required: + - url + type: object + CreateSnapshotDataRequest: + description: Data envelope for snapshot creation. + properties: + attributes: + $ref: "#/components/schemas/CreateSnapshotDataAttributesRequest" + type: + $ref: "#/components/schemas/CreateSnapshotType" + required: + - type + - attributes + type: object + CreateSnapshotDataResponse: + description: Data envelope for the snapshot creation response. + properties: + attributes: + $ref: "#/components/schemas/CreateSnapshotDataAttributesResponse" + id: + description: The unique identifier of the created snapshot. + example: 12345678-1234-5678-9abc-def123456789 + type: string + type: + $ref: "#/components/schemas/CreateSnapshotType" + required: + - id + - type + - attributes + type: object + CreateSnapshotRequest: + description: Request body for creating a graph snapshot. + properties: + data: + $ref: "#/components/schemas/CreateSnapshotDataRequest" + required: + - data + type: object + CreateSnapshotResponse: + description: Response body for a snapshot creation request. + properties: + data: + $ref: "#/components/schemas/CreateSnapshotDataResponse" + required: + - data + type: object + CreateSnapshotTTL: + description: The time-to-live for the snapshot. This value corresponds to storage lifecycle policies that automatically delete the snapshot after the specified period. + enum: + - 30d + - 60d + - 90d + - 1y + - 2y + - inf + example: 60d + type: string + x-enum-varnames: + - THIRTY_DAYS + - SIXTY_DAYS + - NINETY_DAYS + - ONE_YEAR + - TWO_YEARS + - INFINITE + CreateSnapshotTemplateVariable: + description: A template variable definition for snapshot rendering. + properties: + name: + description: The template variable name. + example: host + type: string + prefix: + description: The tag prefix associated with the template variable. For example, a prefix of `host` with a value of `web-server-1` scopes the snapshot to `host:web-server-1`. + example: host + type: string + values: + description: The list of scoped values for this template variable. + example: + - web-server-1 + - web-server-2 + items: + description: A single scoped value for the template variable. + type: string + type: array + required: + - name + - prefix + - values + type: object + CreateSnapshotTemplateVariables: + description: List of template variable definitions for snapshot rendering. + items: + $ref: "#/components/schemas/CreateSnapshotTemplateVariable" + type: array + CreateSnapshotTimeseriesLegendType: + description: The legend display type for timeseries widgets. A value of `none` hides the legend entirely; omitting the field lets the frontend choose automatically. + enum: + - compact + - expanded + - none + example: expanded + type: string + x-enum-varnames: + - COMPACT + - EXPANDED + - NONE + CreateSnapshotType: + description: The type identifier for snapshot creation resources. + enum: + - create_snapshot + example: create_snapshot + type: string + x-enum-varnames: + - CREATE_SNAPSHOT + CreateStatusPageRequest: + description: Request object for creating a status page. + example: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + components: + - name: API + position: 0 + type: component + - components: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + name: Web App + position: 1 + type: group + - name: Webhooks + position: 2 + type: component + domain_prefix: status-page-us1 + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + type: status_pages + properties: + data: + $ref: "#/components/schemas/CreateStatusPageRequestData" + type: object + CreateStatusPageRequestData: + description: The data object for creating a status page. + properties: + attributes: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributes" + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - attributes + - type + type: object + CreateStatusPageRequestDataAttributes: + description: The supported attributes for creating a status page. + properties: + company_logo: + description: The base64-encoded image data displayed on the status page. + example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + type: string + components: + description: The components displayed on the status page. + example: + - components: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + name: Web App + position: 0 + type: group + - name: API + position: 1 + type: component + - name: Webhooks + position: 2 + type: component + items: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesComponentsItems" + type: array + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + example: status-page-us1 + type: string + email_header_image: + description: Base64-encoded image data included in email notifications sent to status page subscribers. + example: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + type: string + favicon: + description: Base64-encoded image data displayed in the browser tab. + example: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + type: string + name: + description: The name of the status page. + example: Status Page US1 + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + example: true + type: boolean + type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesType" + example: public + visualization_type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType" + example: bars_and_uptime_percentage + required: + - domain_prefix + - name + - type + - visualization_type + type: object + CreateStatusPageRequestDataAttributesComponentsItems: + description: A component to be created on a status page. + properties: + components: + description: If creating a component of type `group`, the components to create within the group. + items: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesComponentsItemsComponentsItems" + type: array + id: + description: The ID of the component. + format: uuid + readOnly: true + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesType" + type: object + CreateStatusPageRequestDataAttributesComponentsItemsComponentsItems: + description: A grouped component to be created within a status page component group. + properties: + id: + description: The ID of the grouped component. + format: uuid + readOnly: true + type: string + name: + description: The name of the grouped component. + type: string + position: + description: The zero-indexed position of the grouped component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType" + type: object + CreateStatusPageRequestDataAttributesType: + description: The type of the status page controlling how the status page is accessed. + enum: + - public + - internal + example: public + type: string + x-enum-varnames: + - PUBLIC + - INTERNAL + CreateStatusPageRequestDataAttributesVisualizationType: + description: The visualization type of the status page. + enum: + - bars_and_uptime_percentage + - bars_only + - component_name_only + example: bars_and_uptime_percentage + type: string + x-enum-varnames: + - BARS_AND_UPTIME_PERCENTAGE + - BARS_ONLY + - COMPONENT_NAME_ONLY + CreateTableRequest: + description: Request body for creating a new reference table from a local file or cloud storage. + properties: + data: + $ref: "#/components/schemas/CreateTableRequestData" + type: object + CreateTableRequestData: + additionalProperties: false + description: The data object containing the table definition. + properties: + attributes: + $ref: "#/components/schemas/CreateTableRequestDataAttributes" + type: + $ref: "#/components/schemas/CreateTableRequestDataType" + required: + - type + type: object + CreateTableRequestDataAttributes: + description: Attributes that define the reference table's configuration and properties. + properties: + description: + description: Optional text describing the purpose or contents of this reference table. + type: string + file_metadata: + $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadata" + schema: + $ref: "#/components/schemas/CreateTableRequestDataAttributesSchema" + source: + $ref: "#/components/schemas/ReferenceTableCreateSourceType" + table_name: + description: Name to identify this reference table. + example: "table_1" + type: string + tags: + description: Tags for organizing and filtering reference tables. + example: + - "tag_1" + - "tag_2" + items: + description: A tag associated with the reference table. + type: string + type: array + required: + - table_name + - schema + - source + type: object + CreateTableRequestDataAttributesFileMetadata: + description: Metadata specifying where and how to access the reference table's data file. + oneOf: + - $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadataCloudStorage" + - $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadataLocalFile" + CreateTableRequestDataAttributesFileMetadataCloudStorage: + additionalProperties: false + description: Cloud storage file metadata for create requests. Both access_details and sync_enabled are required. + properties: + access_details: + $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetails" + sync_enabled: + description: Whether this table is synced automatically. + example: false + type: boolean + required: + - access_details + - sync_enabled + title: CloudFileMetadataV2 + type: object + CreateTableRequestDataAttributesFileMetadataLocalFile: + additionalProperties: false + description: Local file metadata for create requests using the upload ID. + properties: + upload_id: + description: The upload ID. + example: "00000000-0000-0000-0000-000000000000" + type: string + required: + - upload_id + title: LocalFileMetadataV2 + type: object + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetails: + description: Cloud storage access configuration for the reference table data file. + properties: + aws_detail: + $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail" + azure_detail: + $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail" + gcp_detail: + $ref: "#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail" + type: object + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail: + description: Amazon Web Services S3 storage access configuration. + properties: + aws_account_id: + description: AWS account ID where the S3 bucket is located. + example: "123456789000" + type: string + aws_bucket_name: + description: S3 bucket containing the CSV file. + example: "example-data-bucket" + type: string + file_path: + description: The relative file path from the S3 bucket root to the CSV file. + example: "reference-tables/users.csv" + type: string + required: + - aws_account_id + - aws_bucket_name + - file_path + type: object + x-oneOf-parent: + - AwsDetail + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail: + description: Azure Blob Storage access configuration. + properties: + azure_client_id: + description: Azure service principal (application) client ID with permissions to read from the container. + example: "aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb" + type: string + azure_container_name: + description: Azure Blob Storage container containing the CSV file. + example: "reference-data" + type: string + azure_storage_account_name: + description: Azure storage account where the container is located. + example: "examplestorageaccount" + type: string + azure_tenant_id: + description: Azure Active Directory tenant ID. + example: "cccccccc-4444-5555-6666-dddddddddddd" + type: string + file_path: + description: The relative file path from the Azure container root to the CSV file. + example: "tables/users.csv" + type: string + required: + - azure_client_id + - azure_container_name + - azure_storage_account_name + - azure_tenant_id + - file_path + type: object + x-oneOf-parent: + - AzureDetail + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail: + description: Google Cloud Platform storage access configuration. + properties: + file_path: + description: The relative file path from the GCS bucket root to the CSV file. + example: "data/reference_tables/users.csv" + type: string + gcp_bucket_name: + description: GCP bucket containing the CSV file. + example: "example-data-bucket" + type: string + gcp_project_id: + description: GCP project ID where the bucket is located. + example: "example-gcp-project-12345" + type: string + gcp_service_account_email: + description: Service account email with read permissions for the GCS bucket. + example: "example-service@example-gcp-project-12345.iam.gserviceaccount.com" + type: string + required: + - file_path + - gcp_bucket_name + - gcp_project_id + - gcp_service_account_email + type: object + x-oneOf-parent: + - GcpDetail + CreateTableRequestDataAttributesSchema: + description: Schema defining the structure and columns of the reference table. + properties: + fields: + description: The schema fields. Maximum of 200 columns. + items: + $ref: "#/components/schemas/CreateTableRequestDataAttributesSchemaFieldsItems" + maxItems: 200 + minItems: 1 + type: array + primary_keys: + description: List of field names that serve as primary keys for the table. Only one primary key is supported, and it is used as an ID to retrieve rows. + example: + - "field_1" + items: + description: A field name used as a primary key. + type: string + type: array + required: + - fields + - primary_keys + type: object + CreateTableRequestDataAttributesSchemaFieldsItems: + description: A single field (column) in the reference table schema to be created. + properties: + name: + description: The field name. + example: "field_1" + type: string + type: + $ref: "#/components/schemas/ReferenceTableSchemaFieldType" + required: + - name + - type + type: object + CreateTableRequestDataType: + default: reference_table + description: Reference table resource type. + enum: + - reference_table + example: reference_table + type: string + x-enum-varnames: + - REFERENCE_TABLE + CreateTenancyConfigData: + description: The data object for creating a new OCI tenancy integration configuration, including the tenancy ID, type, and configuration attributes. + properties: + attributes: + $ref: "#/components/schemas/CreateTenancyConfigDataAttributes" + id: + description: The OCID of the OCI tenancy to configure. + example: "" + type: string + type: + $ref: "#/components/schemas/UpdateTenancyConfigDataType" + required: + - type + - id + type: object + CreateTenancyConfigDataAttributes: + description: Attributes for creating a new OCI tenancy integration configuration, including credentials, region settings, and collection options. + properties: + auth_credentials: + $ref: "#/components/schemas/CreateTenancyConfigDataAttributesAuthCredentials" + config_version: + description: Version number of the integration the tenancy is integrated with + format: int64 + nullable: true + type: integer + cost_collection_enabled: + description: Whether cost data collection from OCI is enabled for the tenancy. + type: boolean + dd_compartment_id: + description: The OCID of the OCI compartment used by the Datadog integration stack. + type: string + dd_stack_id: + description: The OCID of the OCI Resource Manager stack used by the Datadog integration. + type: string + home_region: + description: The home region of the OCI tenancy (for example, us-ashburn-1). + example: "" + type: string + logs_config: + $ref: "#/components/schemas/CreateTenancyConfigDataAttributesLogsConfig" + metrics_config: + $ref: "#/components/schemas/CreateTenancyConfigDataAttributesMetricsConfig" + regions_config: + $ref: "#/components/schemas/CreateTenancyConfigDataAttributesRegionsConfig" + resource_collection_enabled: + description: Whether resource collection from OCI is enabled for the tenancy. + type: boolean + user_ocid: + description: The OCID of the OCI user used by the Datadog integration for authentication. + example: "" + type: string + required: + - auth_credentials + - home_region + - user_ocid + type: object + CreateTenancyConfigDataAttributesAuthCredentials: + description: OCI API signing key credentials used to authenticate the Datadog integration with the OCI tenancy. + properties: + fingerprint: + description: The fingerprint of the OCI API signing key used for authentication. + type: string + private_key: + description: The PEM-encoded private key corresponding to the OCI API signing key fingerprint. + example: "" + type: string + required: + - private_key + type: object + CreateTenancyConfigDataAttributesLogsConfig: + description: Log collection configuration for an OCI tenancy, controlling which compartments and services have log collection enabled. + properties: + compartment_tag_filters: + description: List of compartment tag filters to scope log collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether log collection is enabled for the tenancy. + type: boolean + enabled_services: + description: List of OCI service names for which log collection is enabled. + items: + description: An OCI service name for which log collection is enabled (for example, compute). + type: string + type: array + type: object + CreateTenancyConfigDataAttributesMetricsConfig: + description: Metrics collection configuration for an OCI tenancy, controlling which compartments and services are included or excluded. + properties: + compartment_tag_filters: + description: List of compartment tag filters to scope metrics collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether metrics collection is enabled for the tenancy. + type: boolean + excluded_services: + description: List of OCI service names to exclude from metrics collection. + items: + description: An OCI service name to exclude from metrics collection (for example, compute). + type: string + type: array + type: object + CreateTenancyConfigDataAttributesRegionsConfig: + description: Region configuration for an OCI tenancy, specifying which regions are available, enabled, or disabled for data collection. + properties: + available: + description: List of OCI regions available for data collection in the tenancy. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + disabled: + description: List of OCI regions explicitly disabled for data collection. + items: + description: An OCI region identifier (for example, us-phoenix-1). + type: string + type: array + enabled: + description: List of OCI regions enabled for data collection. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + type: object + CreateTenancyConfigRequest: + description: Request body for creating a new OCI tenancy integration configuration. + example: + data: + attributes: + auth_credentials: + fingerprint: "" + private_key: |- + ----BEGIN PRIVATE KEY----- + MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M + QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR + C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl + YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn + QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc + mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU + nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc + quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3 + LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R + W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx + l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+ + rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY + PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59 + 86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP + XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS + DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM + mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs + -----END PRIVATE KEY----- + config_version: + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + $ref: "#/components/schemas/CreateTenancyConfigData" + required: + - data + type: object + CreateUploadRequest: + description: Request to create an upload for a file to be ingested into a reference table. + example: + data: + attributes: + headers: + - product_id + - product_name + - price + part_count: 3 + part_size: 10000000 + table_name: my_products_table + type: upload + properties: + data: + $ref: "#/components/schemas/CreateUploadRequestData" + type: object + CreateUploadRequestData: + additionalProperties: false + description: Request data for creating an upload for a file to be ingested into a reference table. + properties: + attributes: + $ref: "#/components/schemas/CreateUploadRequestDataAttributes" + type: + $ref: "#/components/schemas/CreateUploadRequestDataType" + required: + - type + type: object + CreateUploadRequestDataAttributes: + description: Upload configuration specifying how data is uploaded by the user, and properties of the table to associate the upload with. + properties: + headers: + description: The CSV file headers that define the schema fields, provided in the same order as the columns in the uploaded file. Maximum of 200 columns. + example: + - "field_1" + - "field_2" + items: + description: A column header name from the CSV file. + type: string + maxItems: 200 + type: array + part_count: + description: Number of parts to split the file into for multipart upload. + example: 3 + format: int32 + maximum: 20 + type: integer + part_size: + description: >- + The size of each part in the upload in bytes. All parts except the last one must be at least 5,000,000 bytes. + example: 10000000 + format: int64 + type: integer + table_name: + description: Name of the table to associate with this upload. + example: "" + type: string + required: + - headers + - table_name + - part_count + - part_size + type: object + CreateUploadRequestDataType: + default: upload + description: Upload resource type. + enum: + - upload + example: upload + type: string + x-enum-varnames: + - UPLOAD + CreateUploadResponse: + description: Information about the upload created containing the upload ID and pre-signed URLs to PUT chunks of the CSV file to. + properties: + data: + $ref: "#/components/schemas/CreateUploadResponseData" + type: object + CreateUploadResponseData: + additionalProperties: false + description: Upload ID and attributes of the created upload. + properties: + attributes: + $ref: "#/components/schemas/CreateUploadResponseDataAttributes" + id: + description: Unique identifier for this upload. Use this ID when creating the reference table. + type: string + type: + $ref: "#/components/schemas/CreateUploadResponseDataType" + required: + - type + type: object + CreateUploadResponseDataAttributes: + description: Pre-signed URLs for uploading parts of the file. + properties: + part_urls: + description: The pre-signed URLs for uploading parts. These URLs expire after 5 minutes. + items: + description: A pre-signed URL for uploading a single file part. + type: string + type: array + type: object + CreateUploadResponseDataType: + default: upload + description: Upload resource type. + enum: + - upload + example: upload + type: string + x-enum-varnames: + - UPLOAD + CreateUserNotificationChannelRequest: + description: A top-level wrapper for creating a notification channel for a user + example: + data: + attributes: + config: + address: "foo@bar.com" + formats: ["html"] + type: "email" + type: notification_channels + properties: + data: + $ref: "#/components/schemas/CreateNotificationChannelData" + required: + - data + type: object + CreateVariant: + description: Request to create a variant. + properties: + key: + description: The unique key of the variant. + example: "variant-abc123" + type: string + name: + description: The name of the variant. + example: "Variant ABC123" + type: string + value: + description: The value of the variant as a string. + example: "true" + type: string + required: + - key + - name + - value + type: object + CreateWorkflowRequest: + description: A request object for creating a new workflow. + example: + data: + attributes: + description: "A sample workflow." + name: "Example Workflow" + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + y: -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: "Example annotation." + connectionEnvs: + - connections: + - connectionId: "e1e64943-c7c5-4487-aece-25aaec7d3aad" + label: "INTEGRATION_DATADOG" + env: "default" + handle: "my-handle" + inputSchema: + parameters: + - defaultValue: "default" + name: "input" + type: "STRING" + outputSchema: + parameters: + - name: "output" + type: "ARRAY_OBJECT" + value: "{{ Steps.Step1 }}" + steps: + - actionId: "com.datadoghq.dd.monitor.listMonitors" + connectionLabel: "INTEGRATION_DATADOG" + name: "Step1" + outboundEdges: + - branchName: "main" + nextStepName: "Step2" + parameters: + - name: "tags" + value: "service:monitoring" + - actionId: "com.datadoghq.core.noop" + name: "Step2" + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: "3600s" + startStepNames: ["Step1"] + - githubWebhookTrigger: {} + startStepNames: ["Step1"] + tags: + - "team:infra" + - "service:monitoring" + - "foo:bar" + type: "workflows" + properties: + data: + $ref: "#/components/schemas/WorkflowData" + required: + - data + type: object + CreateWorkflowResponse: + description: The response object after creating a new workflow. + properties: + data: + $ref: "#/components/schemas/WorkflowData" + required: + - data + type: object + Creator: + description: Creator of the object. + properties: + email: + description: Email of the creator. + type: string + handle: + description: Handle of the creator. + type: string + name: + description: Name of the creator. + nullable: true + type: string + type: object + CrossOrgUuids: + description: >- + Organization UUIDs to query when using [cross-organization visibility](/account_management/org_settings/cross_org_visibility/). Limited to one organization UUID. + items: + description: An organization UUID. + type: string + maxItems: 1 + type: array + CsmAgentData: + description: Single Agent Data. + properties: + attributes: + $ref: "#/components/schemas/CsmAgentsAttributes" + id: + description: "The ID of the Agent." + example: "fffffc5505f6a006fdf7cf5aae053653" + type: string + type: + $ref: "#/components/schemas/CSMAgentsType" + type: object + CsmAgentlessHostAttributes: + description: Attributes of an agentless host. + properties: + account_id: + description: The ID of the cloud account that the host belongs to. + example: "123456789012" + type: string + cloud_provider: + $ref: "#/components/schemas/CsmCloudProvider" + has_posture_management: + description: Whether CSM Misconfigurations is enabled for this host. `true` if enabled; `false` if disabled. + example: true + type: boolean + has_vulnerability_scanning: + description: Whether CSM Vulnerabilities is enabled for this host. `true` if enabled; `false` if disabled. + example: true + type: boolean + resource_type: + $ref: "#/components/schemas/CsmAgentlessHostResourceType" + required: + - account_id + - cloud_provider + - resource_type + - has_posture_management + - has_vulnerability_scanning + type: object + CsmAgentlessHostData: + description: A single agentless host resource. + properties: + attributes: + $ref: "#/components/schemas/CsmAgentlessHostAttributes" + id: + description: The resource identifier of the agentless host. + example: i-0123456789abcdef0 + type: string + type: + $ref: "#/components/schemas/CsmAgentlessHostType" + required: + - id + - type + - attributes + type: object + CsmAgentlessHostFacetAttributes: + description: Attributes of an agentless host facet. + properties: + bounded: + description: Whether the facet has a bounded set of allowed values. `true` indicates a fixed value set and `false` indicates free-form values. + example: true + type: boolean + bundled: + description: Whether the facet is bundled as part of the default facet set. `true` indicates bundled and `false` indicates custom. + example: true + type: boolean + bundledAndUsed: + description: Whether the facet is both bundled and actively used. `true` indicates in use; `false` indicates unused. + example: true + type: boolean + defaultValues: + $ref: "#/components/schemas/CsmHostFacetDefaultValues" + description: + description: A human-readable description of what the facet represents. + example: The cloud provider of the resource + type: string + editable: + description: Whether the facet can be edited by users. `true` indicates editable; `false` indicates read-only. + example: false + type: boolean + facetType: + description: The UI display type for the facet, such as `list`. + example: list + type: string + groups: + $ref: "#/components/schemas/CsmHostFacetGroups" + name: + description: The display name of the facet. + example: Cloud Provider + type: string + path: + description: The field path used when filtering by this facet. + example: cloud_provider + type: string + source: + description: The data source that provides the facet values. + example: core + type: string + type: + description: The data type of the facet values. + example: string + type: string + values: + $ref: "#/components/schemas/CsmHostFacetValues" + required: + - name + - path + - description + - groups + - bounded + - bundled + - bundledAndUsed + - defaultValues + - editable + - facetType + - source + - type + - values + type: object + CsmAgentlessHostFacetData: + description: A single agentless host facet resource. + properties: + attributes: + $ref: "#/components/schemas/CsmAgentlessHostFacetAttributes" + id: + description: The identifier of the facet, corresponding to the field path. + example: cloud_provider + type: string + type: + $ref: "#/components/schemas/CsmAgentlessHostFacetType" + required: + - id + - type + - attributes + type: object + CsmAgentlessHostFacetItems: + description: The list of available facets for agentless hosts. + items: + $ref: "#/components/schemas/CsmAgentlessHostFacetData" + type: array + CsmAgentlessHostFacetType: + default: agentless_host_facet + description: The JSON:API type for agentless host facet resources. The value should always be `agentless_host_facet`. + enum: + - agentless_host_facet + example: agentless_host_facet + type: string + x-enum-varnames: + - AGENTLESS_HOST_FACET + CsmAgentlessHostFacetsResponse: + description: The response returned when listing facets for agentless hosts. + properties: + data: + $ref: "#/components/schemas/CsmAgentlessHostFacetItems" + required: + - data + type: object + CsmAgentlessHostItems: + description: The list of agentless hosts for the current page. + items: + $ref: "#/components/schemas/CsmAgentlessHostData" + type: array + CsmAgentlessHostResourceType: + description: The type of cloud resource for an agentless host. + enum: + - aws_ec2_instance + - azure_virtual_machine_instance + - gcp_compute_instance + - oci_instance + example: aws_ec2_instance + type: string + x-enum-varnames: + - AWS_EC2_INSTANCE + - AZURE_VIRTUAL_MACHINE_INSTANCE + - GCP_COMPUTE_INSTANCE + - OCI_INSTANCE + CsmAgentlessHostType: + default: agentless_host + description: The JSON:API type for agentless host resources. The value should always be `agentless_host`. + enum: + - agentless_host + example: agentless_host + type: string + x-enum-varnames: + - AGENTLESS_HOST + CsmAgentlessHostsResponse: + description: The response returned when listing agentless hosts. + properties: + data: + $ref: "#/components/schemas/CsmAgentlessHostItems" + meta: + $ref: "#/components/schemas/CsmSettingsMeta" + required: + - data + - meta + type: object + CsmAgentsAttributes: + description: "A CSM Agent returned by the API." + properties: + agent_version: + description: Version of the Datadog Agent. + type: string + aws_fargate: + description: AWS Fargate details. + type: string + cluster_name: + description: List of cluster names associated with the Agent. + items: + description: A cluster name associated with the Agent. + type: string + type: array + datadog_agent: + description: Unique identifier for the Datadog Agent. + type: string + ecs_fargate_task_arn: + description: ARN of the ECS Fargate task. + type: string + envs: + description: List of environments associated with the Agent. + items: + description: An environment name associated with the Agent. + type: string + nullable: true + type: array + host_id: + description: ID of the host. + format: int64 + type: integer + hostname: + description: Name of the host. + type: string + install_method_installer_version: + description: Version of the installer used for installing the Datadog Agent. + type: string + install_method_tool: + description: Tool used for installing the Datadog Agent. + type: string + is_csm_vm_containers_enabled: + description: Indicates if CSM VM Containers is enabled. + nullable: true + type: boolean + is_csm_vm_hosts_enabled: + description: Indicates if CSM VM Hosts is enabled. + nullable: true + type: boolean + is_cspm_enabled: + description: Indicates if CSPM is enabled. + nullable: true + type: boolean + is_cws_enabled: + description: Indicates if CWS is enabled. + nullable: true + type: boolean + is_cws_remote_configuration_enabled: + description: Indicates if CWS Remote Configuration is enabled. + nullable: true + type: boolean + is_remote_configuration_enabled: + description: Indicates if Remote Configuration is enabled. + nullable: true + type: boolean + os: + description: Operating system of the host. + type: string + type: object + CsmAgentsResponse: + description: Response object that includes a list of CSM Agents. + properties: + data: + description: A list of Agents. + items: + $ref: "#/components/schemas/CsmAgentData" + type: array + meta: + $ref: "#/components/schemas/CSMAgentsMetadata" + type: object + CsmCloudAccountsCoverageAnalysisAttributes: + description: CSM Cloud Accounts Coverage Analysis attributes. + properties: + aws_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + azure_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + gcp_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + org_id: + description: The ID of your organization. + example: 123456 + format: int64 + type: integer + total_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + type: object + CsmCloudAccountsCoverageAnalysisData: + description: CSM Cloud Accounts Coverage Analysis data. + properties: + attributes: + $ref: "#/components/schemas/CsmCloudAccountsCoverageAnalysisAttributes" + id: + description: "The ID of your organization." + example: "66b3c6b5-5c9a-457e-b1c3-f247ca23afa3" + type: string + type: + default: "get_cloud_accounts_coverage_analysis_response_public_v0" + description: "The type of the resource. The value should always be `get_cloud_accounts_coverage_analysis_response_public_v0`." + example: "get_cloud_accounts_coverage_analysis_response_public_v0" + type: string + type: object + CsmCloudAccountsCoverageAnalysisResponse: + description: CSM Cloud Accounts Coverage Analysis response. + properties: + data: + $ref: "#/components/schemas/CsmCloudAccountsCoverageAnalysisData" + type: object + CsmCloudProvider: + description: The cloud provider of a host resource. + enum: + - aws + - gcp + - azure + - oci + example: aws + type: string + x-enum-varnames: + - AWS + - GCP + - AZURE + - OCI + CsmCoverageAnalysis: + description: CSM Coverage Analysis. + properties: + configured_resources_count: + description: The number of fully configured resources. + example: 8 + format: int64 + type: integer + coverage: + description: The coverage percentage. + example: 0.8 + format: double + type: number + partially_configured_resources_count: + description: The number of partially configured resources. + example: 0 + format: int64 + type: integer + total_resources_count: + description: The total number of resources. + example: 10 + format: int64 + type: integer + type: object + CsmFacetInfoType: + default: facet_info + description: The JSON:API type for facet info resources. The value should always be `facet_info`. + enum: + - facet_info + example: facet_info + type: string + x-enum-varnames: + - FACET_INFO + CsmHostFacetDefaultValues: + description: The list of default filter values for the facet. + example: [] + items: + type: string + type: array + CsmHostFacetGroups: + description: The list of UI groups that this facet belongs to. + example: + - agentless + items: + type: string + type: array + CsmHostFacetInfoAttributes: + description: Attributes of a facet info response, containing the value distribution for the requested facet. + properties: + items: + $ref: "#/components/schemas/CsmHostFacetInfoItems" + required: + - items + type: object + CsmHostFacetInfoData: + description: The data wrapper for a facet info response. + properties: + attributes: + $ref: "#/components/schemas/CsmHostFacetInfoAttributes" + id: + description: The identifier of the facet. + example: cloud_provider + type: string + meta: + $ref: "#/components/schemas/CsmHostFacetInfoMeta" + type: + $ref: "#/components/schemas/CsmFacetInfoType" + required: + - id + - type + - attributes + - meta + type: object + CsmHostFacetInfoItem: + description: A single value and its occurrence count for a facet. + properties: + count: + description: The number of resources with this facet value. + example: 100 + format: int64 + type: integer + value: + description: The facet value. + example: aws + type: string + required: + - value + - count + type: object + CsmHostFacetInfoItems: + description: The list of facet value entries for the current page. + items: + $ref: "#/components/schemas/CsmHostFacetInfoItem" + type: array + CsmHostFacetInfoMeta: + description: Metadata for the facet info response. + properties: + total_count: + description: The total number of distinct values for this facet. + example: 4 + format: int64 + type: integer + required: + - total_count + type: object + CsmHostFacetInfoResponse: + description: The response returned when requesting value distribution for a specific facet. + properties: + data: + $ref: "#/components/schemas/CsmHostFacetInfoData" + required: + - data + type: object + CsmHostFacetValues: + description: The list of allowed filter values for bounded facets. Empty for unbounded facets. + example: + - aws + - gcp + items: + type: string + type: array + CsmHostsAndContainersCoverageAnalysisAttributes: + description: CSM Hosts and Containers Coverage Analysis attributes. + properties: + cspm_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + cws_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + org_id: + description: The ID of your organization. + example: 123456 + format: int64 + type: integer + total_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + vm_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + type: object + CsmHostsAndContainersCoverageAnalysisData: + description: CSM Hosts and Containers Coverage Analysis data. + properties: + attributes: + $ref: "#/components/schemas/CsmHostsAndContainersCoverageAnalysisAttributes" + id: + description: "The ID of your organization." + example: "66b3c6b5-5c9a-457e-b1c3-f247ca23afa3" + type: string + type: + default: "get_hosts_and_containers_coverage_analysis_response_public_v0" + description: "The type of the resource. The value should always be `get_hosts_and_containers_coverage_analysis_response_public_v0`." + example: "get_hosts_and_containers_coverage_analysis_response_public_v0" + type: string + type: object + CsmHostsAndContainersCoverageAnalysisResponse: + description: CSM Hosts and Containers Coverage Analysis response. + properties: + data: + $ref: "#/components/schemas/CsmHostsAndContainersCoverageAnalysisData" + type: object + CsmServerlessCoverageAnalysisAttributes: + description: CSM Serverless Resources Coverage Analysis attributes. + properties: + cws_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + org_id: + description: The ID of your organization. + example: 123456 + format: int64 + type: integer + total_coverage: + $ref: "#/components/schemas/CsmCoverageAnalysis" + type: object + CsmServerlessCoverageAnalysisData: + description: CSM Serverless Resources Coverage Analysis data. + properties: + attributes: + $ref: "#/components/schemas/CsmServerlessCoverageAnalysisAttributes" + id: + description: "The ID of your organization." + example: "66b3c6b5-5c9a-457e-b1c3-f247ca23afa3" + type: string + type: + default: "get_serverless_coverage_analysis_response_public_v0" + description: "The type of the resource. The value should always be `get_serverless_coverage_analysis_response_public_v0`." + example: "get_serverless_coverage_analysis_response_public_v0" + type: string + type: object + CsmServerlessCoverageAnalysisResponse: + description: CSM Serverless Resources Coverage Analysis response. + properties: + data: + $ref: "#/components/schemas/CsmServerlessCoverageAnalysisData" + type: object + CsmSettingsMeta: + description: Pagination metadata for a CSM settings list response. + properties: + page_index: + description: The current page index (zero-based). + example: 0 + format: int64 + type: integer + page_size: + description: The number of resources returned per page. + example: 10 + format: int64 + type: integer + total_filtered: + description: The total number of resources matching the filter criteria. + example: 100 + format: int64 + type: integer + required: + - total_filtered + - page_index + - page_size + type: object + CsmUnifiedHostAttributes: + description: Attributes of a unified host, combining data from agent and agentless sources. + properties: + account_id: + description: The ID of the cloud account that the host belongs to. Present only when the host was discovered through agentless scanning. + example: "123456789012" + nullable: true + type: string + agent_csm_vm_containers_enabled: + description: Whether CSM Vulnerabilities is enabled for containers through the Datadog Agent. `true` if enabled; `false` if disabled. + example: false + nullable: true + type: boolean + agent_csm_vm_hosts_enabled: + description: Whether CSM Vulnerabilities is enabled for hosts through the Datadog Agent. `true` if enabled; `false` if disabled. + example: true + nullable: true + type: boolean + agent_cws_enabled: + description: Whether CSM Threats is enabled for this host through the Datadog Agent. `true` if enabled; `false` if disabled. + example: false + nullable: true + type: boolean + agent_posture_management: + description: Whether CSM Misconfigurations is enabled for this host through the Datadog Agent. `true` if enabled; `false` if disabled. + example: true + nullable: true + type: boolean + agent_version: + description: The version of the Datadog Agent running on this host. + example: 7.50.0 + nullable: true + type: string + agentless_posture_management: + description: Whether CSM Misconfigurations is enabled for this host via agentless scanning. `true` if enabled; `false` if disabled. + example: false + nullable: true + type: boolean + agentless_vulnerability_scanning: + description: Whether CSM Vulnerabilities is enabled for this host via agentless scanning. `true` if enabled; `false` if disabled. + example: true + nullable: true + type: boolean + cloud_provider: + $ref: "#/components/schemas/CsmCloudProvider" + cluster_name: + description: The name of the Kubernetes cluster the host belongs to, if applicable. + example: my-cluster + nullable: true + type: string + datadog_agent_key: + description: The Datadog Agent key associated with this host. Present only for agent-sourced hosts. + example: key123 + nullable: true + type: string + env: + description: The list of environment tags associated with this host. + example: + - prod + items: + type: string + nullable: true + type: array + host_id: + description: The internal Datadog host identifier. Present only for agent-sourced hosts. + example: 12345678 + format: int64 + nullable: true + type: integer + install_method_tool: + description: The tool used to install the Datadog Agent on this host. + example: helm + nullable: true + type: string + os: + description: The operating system of the host. Present only for agent-sourced hosts. + example: linux + nullable: true + type: string + resource_type: + $ref: "#/components/schemas/CsmAgentlessHostResourceType" + source: + $ref: "#/components/schemas/CsmUnifiedHostSource" + required: + - source + type: object + CsmUnifiedHostData: + description: A single unified host resource, combining agent and agentless data. + properties: + attributes: + $ref: "#/components/schemas/CsmUnifiedHostAttributes" + id: + description: The resource identifier of the unified host. + example: i-0123456789abcdef0 + type: string + type: + $ref: "#/components/schemas/CsmUnifiedHostType" + required: + - id + - type + - attributes + type: object + CsmUnifiedHostFacetData: + description: A single unified host facet resource. + properties: + attributes: + $ref: "#/components/schemas/CsmAgentlessHostFacetAttributes" + id: + description: The identifier of the facet, corresponding to the field path. + example: cloud_provider + type: string + type: + $ref: "#/components/schemas/CsmUnifiedHostFacetType" + required: + - id + - type + - attributes + type: object + CsmUnifiedHostFacetItems: + description: The list of available facets for unified hosts. + items: + $ref: "#/components/schemas/CsmUnifiedHostFacetData" + type: array + CsmUnifiedHostFacetType: + default: unified_host_facet + description: The JSON:API type for unified host facet resources. The value should always be `unified_host_facet`. + enum: + - unified_host_facet + example: unified_host_facet + type: string + x-enum-varnames: + - UNIFIED_HOST_FACET + CsmUnifiedHostFacetsResponse: + description: The response returned when listing facets for unified hosts. + properties: + data: + $ref: "#/components/schemas/CsmUnifiedHostFacetItems" + required: + - data + type: object + CsmUnifiedHostItems: + description: The list of unified hosts for the current page. + items: + $ref: "#/components/schemas/CsmUnifiedHostData" + type: array + CsmUnifiedHostSource: + description: The source of a unified host entry, indicating whether it was discovered via agent, agentless scanning, or both. + enum: + - agent + - agentless + - both + example: agent + type: string + x-enum-varnames: + - AGENT + - AGENTLESS + - BOTH + CsmUnifiedHostType: + default: unified_host + description: The JSON:API type for unified host resources. The value should always be `unified_host`. + enum: + - unified_host + example: unified_host + type: string + x-enum-varnames: + - UNIFIED_HOST + CsmUnifiedHostsMeta: + description: Pagination metadata for a unified hosts list response. + properties: + page_index: + description: The current page index (zero-based). + example: 0 + format: int64 + type: integer + page_size: + description: The number of hosts returned per page. + example: 10 + format: int64 + type: integer + total_filtered: + description: The total number of hosts matching the filter criteria. + example: 100 + format: int64 + type: integer + total_pages: + description: The total number of pages available. + example: 10 + format: int64 + type: integer + required: + - total_filtered + - page_index + - page_size + - total_pages + type: object + CsmUnifiedHostsResponse: + description: The response returned when listing unified hosts. + properties: + data: + $ref: "#/components/schemas/CsmUnifiedHostItems" + meta: + $ref: "#/components/schemas/CsmUnifiedHostsMeta" + required: + - data + - meta + type: object + CustomAttributeConfig: + description: "A custom attribute configuration that defines an organization-specific metadata field on cases. Custom attributes are scoped to a case type and can hold text, URLs, numbers, or predefined select options." + properties: + attributes: + $ref: "#/components/schemas/CustomAttributeConfigResourceAttributes" + id: + description: Custom attribute configs identifier + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + type: + $ref: "#/components/schemas/CustomAttributeConfigResourceType" + type: object + CustomAttributeConfigAttributesCreate: + description: Attributes required to create a custom attribute configuration. + properties: + description: + description: A description explaining the purpose and expected values for this custom attribute. + example: "AWS Region, must be a valid region supported by AWS" + type: string + display_name: + description: The human-readable label shown in the Case Management UI for this custom attribute. + example: "AWS Region" + type: string + is_multi: + description: "If `true`, this attribute accepts an array of values. If `false`, only a single value is allowed." + example: true + type: boolean + key: + description: The programmatic key used to reference this custom attribute in search queries and API calls. + example: "aws_region" + type: string + type: + $ref: "#/components/schemas/CustomAttributeType" + required: + - display_name + - key + - type + - is_multi + type: object + CustomAttributeConfigCreate: + description: Data object for creating a custom attribute configuration. + properties: + attributes: + $ref: "#/components/schemas/CustomAttributeConfigAttributesCreate" + type: + $ref: "#/components/schemas/CustomAttributeConfigResourceType" + required: + - attributes + - type + type: object + CustomAttributeConfigCreateRequest: + description: Request payload for creating a custom attribute configuration. + properties: + data: + $ref: "#/components/schemas/CustomAttributeConfigCreate" + required: + - data + type: object + CustomAttributeConfigResourceAttributes: + description: "Attributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type." + properties: + case_type_id: + description: The UUID of the case type this custom attribute belongs to. + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + description: + description: A description explaining the purpose and expected values for this custom attribute. + example: "AWS Region, must be a valid region supported by AWS" + type: string + display_name: + description: The human-readable label shown in the Case Management UI for this custom attribute. + example: "AWS Region" + type: string + is_multi: + description: "If `true`, this attribute accepts an array of values. If `false`, only a single value is allowed." + example: true + type: boolean + key: + description: The programmatic key used to reference this custom attribute in search queries and API calls. + example: "aws_region" + type: string + type: + $ref: "#/components/schemas/CustomAttributeType" + required: + - case_type_id + - display_name + - key + - type + - is_multi + type: object + CustomAttributeConfigResourceType: + default: custom_attribute + description: JSON:API resource type for custom attribute configurations. + enum: + - custom_attribute + example: custom_attribute + type: string + x-enum-varnames: + - CUSTOM_ATTRIBUTE + CustomAttributeConfigResponse: + description: Response containing a single custom attribute configuration. + properties: + data: + $ref: "#/components/schemas/CustomAttributeConfig" + type: object + CustomAttributeConfigUpdate: + description: Data object for updating a custom attribute configuration. + properties: + attributes: + $ref: "#/components/schemas/CustomAttributeConfigUpdateAttributes" + type: + $ref: "#/components/schemas/CustomAttributeConfigResourceType" + required: + - type + type: object + CustomAttributeConfigUpdateAttributes: + description: Attributes that can be updated on a custom attribute configuration. All fields are optional; only provided fields are changed. + properties: + description: + description: A description explaining the purpose and expected values for this custom attribute. + example: "Updated description." + type: string + display_name: + description: The human-readable label shown in the Case Management UI for this custom attribute. + example: "AWS Region" + type: string + map_from: + description: An external field identifier to auto-populate this attribute from (used for integrations with external systems). + type: string + type: + $ref: "#/components/schemas/CustomAttributeType" + type_data: + $ref: "#/components/schemas/CustomAttributeTypeData" + type: object + CustomAttributeConfigUpdateRequest: + description: Request payload for updating a custom attribute configuration. + properties: + data: + $ref: "#/components/schemas/CustomAttributeConfigUpdate" + required: + - data + type: object + CustomAttributeConfigsResponse: + description: Response containing a list of custom attribute configurations. + properties: + data: + description: List of custom attribute configs of case type + items: + $ref: "#/components/schemas/CustomAttributeConfig" + type: array + type: object + CustomAttributeMultiNumberValue: + description: An array of numeric values for a multi-value NUMBER-type custom attribute. + items: + description: NUMBER value + format: double + type: number + type: array + CustomAttributeMultiStringValue: + description: An array of string values for a multi-value TEXT, URL, or SELECT-type custom attribute. + items: + description: TEXT/URL/NUMBER/SELECT Value + type: string + type: array + CustomAttributeNumberValue: + description: A numeric value for a NUMBER-type custom attribute. + format: double + type: number + CustomAttributeSelectOption: + description: A selectable option for a SELECT-type custom attribute. + properties: + value: + description: Option value. + example: "us-east-1" + type: string + required: + - value + type: object + CustomAttributeStringValue: + description: A string value for a TEXT, URL, or SELECT-type custom attribute. + type: string + CustomAttributeType: + description: "The data type of the custom attribute, which determines the allowed values and UI input control." + enum: + - URL + - TEXT + - NUMBER + - SELECT + example: NUMBER + type: string + x-enum-varnames: + - URL + - TEXT + - NUMBER + - SELECT + CustomAttributeTypeData: + description: "Type-specific configuration for the custom attribute. For SELECT-type attributes, this contains the list of allowed options." + properties: + options: + description: Options for SELECT type custom attributes. + items: + $ref: "#/components/schemas/CustomAttributeSelectOption" + type: array + type: object + CustomAttributeValue: + description: A typed value for a custom attribute on a specific case. + properties: + is_multi: + description: If true, value must be an array + example: false + type: boolean + type: + $ref: "#/components/schemas/CustomAttributeType" + value: + $ref: "#/components/schemas/CustomAttributeValuesUnion" + required: + - type + - is_multi + - value + type: object + CustomAttributeValuesUnion: + description: The value of a custom attribute. The accepted format depends on the attribute's type and whether it accepts multiple values. + example: "" + oneOf: + - $ref: "#/components/schemas/CustomAttributeStringValue" + - $ref: "#/components/schemas/CustomAttributeMultiStringValue" + - $ref: "#/components/schemas/CustomAttributeNumberValue" + - $ref: "#/components/schemas/CustomAttributeMultiNumberValue" + CustomConnection: + description: A custom connection used by an app. + properties: + attributes: + $ref: "#/components/schemas/CustomConnectionAttributes" + id: + description: The ID of the custom connection. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/CustomConnectionType" + type: object + CustomConnectionAttributes: + description: The custom connection attributes. + properties: + name: + description: The name of the custom connection. + type: string + onPremRunner: + $ref: "#/components/schemas/CustomConnectionAttributesOnPremRunner" + type: object + CustomConnectionAttributesOnPremRunner: + description: Information about the Private Action Runner used by the custom connection, if the custom connection is associated with a Private Action Runner. + properties: + id: + description: The Private Action Runner ID. + type: string + url: + description: The URL of the Private Action Runner. + type: string + type: object + CustomConnectionType: + default: custom_connections + description: The custom connection type. + enum: + - custom_connections + example: custom_connections + type: string + x-enum-varnames: + - CUSTOM_CONNECTIONS + CustomCostGetResponseMeta: + description: Meta for the response from the Get Custom Costs endpoints. + properties: + version: + description: Version of Custom Costs file + type: string + type: object + CustomCostListResponseMeta: + description: Meta for the response from the List Custom Costs endpoints. + properties: + count_by_status: + additionalProperties: + format: int64 + type: integer + description: Number of Custom Costs files per status. + type: object + providers: + description: List of available providers. + items: + description: A provider name. + type: string + type: array + total_filtered_count: + description: Number of Custom Costs files returned by the List Custom Costs endpoint + format: int64 + type: integer + version: + description: Version of Custom Costs file + type: string + type: object + CustomCostUploadResponseMeta: + description: Meta for the response from the Upload Custom Costs endpoints. + properties: + version: + description: Version of Custom Costs file + type: string + type: object + CustomCostsFileGetResponse: + description: Response for Get Custom Costs files. + properties: + data: + $ref: "#/components/schemas/CustomCostsFileMetadataWithContentHighLevel" + meta: + $ref: "#/components/schemas/CustomCostGetResponseMeta" + type: object + CustomCostsFileLineItem: + description: Line item details from a Custom Costs file. + properties: + BilledCost: + description: Total cost in the cost file. + example: 100.50 + format: double + type: number + BillingCurrency: + description: Currency used in the Custom Costs file. + example: "USD" + type: string + ChargeDescription: + description: Description for the line item cost. + example: "Monthly usage charge for my service" + type: string + ChargePeriodEnd: + description: End date of the usage charge. + example: "2023-02-28" + pattern: ^\d{4}-\d{2}-\d{2}$ + type: string + ChargePeriodStart: + description: Start date of the usage charge. + example: "2023-02-01" + pattern: ^\d{4}-\d{2}-\d{2}$ + type: string + ProviderName: + description: Name of the provider for the line item. + type: string + Tags: + additionalProperties: + type: string + description: Additional tags for the line item. + type: object + type: object + CustomCostsFileListResponse: + description: Response for List Custom Costs files. + properties: + data: + description: List of Custom Costs files. + items: + $ref: "#/components/schemas/CustomCostsFileMetadataHighLevel" + type: array + meta: + $ref: "#/components/schemas/CustomCostListResponseMeta" + type: object + CustomCostsFileMetadata: + description: Schema of a Custom Costs metadata. + properties: + billed_cost: + description: Total cost in the cost file. + example: 100.50 + format: double + type: number + billing_currency: + description: Currency used in the Custom Costs file. + example: "USD" + type: string + charge_period: + $ref: "#/components/schemas/CustomCostsFileUsageChargePeriod" + name: + description: Name of the Custom Costs file. + example: "my_file.json" + type: string + provider_names: + description: Providers contained in the Custom Costs file. + items: + description: Name of the provider. + example: "my_provider" + type: string + type: array + status: + description: Status of the Custom Costs file. + example: "active" + type: string + uploaded_at: + description: Timestamp, in millisecond, of the upload time of the Custom Costs file. + example: 1704067200000 + format: double + type: number + uploaded_by: + $ref: "#/components/schemas/CustomCostsUser" + type: object + CustomCostsFileMetadataHighLevel: + description: JSON API format for a Custom Costs file. + properties: + attributes: + $ref: "#/components/schemas/CustomCostsFileMetadata" + id: + description: ID of the Custom Costs metadata. + type: string + type: + description: Type of the Custom Costs file metadata. + type: string + type: object + CustomCostsFileMetadataWithContent: + description: Schema of a cost file's metadata. + properties: + billed_cost: + description: Total cost in the cost file. + example: 100.50 + format: double + type: number + billing_currency: + description: Currency used in the Custom Costs file. + example: "USD" + type: string + charge_period: + $ref: "#/components/schemas/CustomCostsFileUsageChargePeriod" + content: + description: Detail of the line items from the Custom Costs file. + items: + $ref: "#/components/schemas/CustomCostsFileLineItem" + type: array + name: + description: Name of the Custom Costs file. + example: "my_file.json" + type: string + provider_names: + description: Providers contained in the Custom Costs file. + items: + description: Name of a provider. + example: "my_provider" + type: string + type: array + status: + description: Status of the Custom Costs file. + example: "active" + type: string + uploaded_at: + description: Timestamp in millisecond of the upload time of the Custom Costs file. + example: 1704067200000 + format: double + type: number + uploaded_by: + $ref: "#/components/schemas/CustomCostsUser" + type: object + CustomCostsFileMetadataWithContentHighLevel: + description: JSON API format of for a Custom Costs file with content. + properties: + attributes: + $ref: "#/components/schemas/CustomCostsFileMetadataWithContent" + id: + description: ID of the Custom Costs metadata. + type: string + type: + description: Type of the Custom Costs file metadata. + type: string + type: object + CustomCostsFileUploadRequest: + description: Request for uploading a Custom Costs file. + items: + $ref: "#/components/schemas/CustomCostsFileLineItem" + type: array + CustomCostsFileUploadResponse: + description: Response for Uploaded Custom Costs files. + properties: + data: + $ref: "#/components/schemas/CustomCostsFileMetadataHighLevel" + meta: + $ref: "#/components/schemas/CustomCostUploadResponseMeta" + type: object + CustomCostsFileUsageChargePeriod: + description: Usage charge period of a Custom Costs file. + properties: + end: + description: End of the usage of the Custom Costs file. + example: 1706745600000 + format: double + type: number + start: + description: Start of the usage of the Custom Costs file. + example: 1704067200000 + format: double + type: number + type: object + CustomCostsUser: + description: Metadata of the user that has uploaded the Custom Costs file. + properties: + email: + description: The name of the Custom Costs file. + example: "email.test@datadohq.com" + type: string + icon: + description: The name of the Custom Costs file. + example: "icon.png" + type: string + name: + description: Name of the user. + example: "Test User" + type: string + type: object + CustomDestinationAttributeTagsRestrictionListType: + default: ALLOW_LIST + description: |- + How `forward_tags_restriction_list` parameter should be interpreted. + If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the ones on the restriction list + are forwarded. + + `BLOCK_LIST` works the opposite way. It does not forward the tags matching the ones on the list. + enum: + - ALLOW_LIST + - BLOCK_LIST + example: ALLOW_LIST + type: string + x-enum-varnames: + - ALLOW_LIST + - BLOCK_LIST + CustomDestinationCreateRequest: + description: The custom destination. + properties: + data: + $ref: "#/components/schemas/CustomDestinationCreateRequestDefinition" + type: object + CustomDestinationCreateRequestAttributes: + description: The attributes associated with the custom destination. + properties: + enabled: + default: true + description: Whether logs matching this custom destination should be forwarded or not. + example: true + type: boolean + forward_tags: + default: true + description: Whether tags from the forwarded logs should be forwarded or not. + example: true + type: boolean + forward_tags_restriction_list: + default: [] + description: |- + List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered. + + An empty list represents no restriction is in place and either all or no tags will be + forwarded depending on `forward_tags_restriction_list_type` parameter. + example: ["datacenter", "host"] + items: + description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + type: string + maxItems: 10 + minItems: 0 + type: array + forward_tags_restriction_list_type: + $ref: "#/components/schemas/CustomDestinationAttributeTagsRestrictionListType" + forwarder_destination: + $ref: "#/components/schemas/CustomDestinationForwardDestination" + name: + description: The custom destination name. + example: Nginx logs + type: string + query: + default: "" + description: The custom destination query and filter. Logs matching this query are forwarded to the destination. + example: source:nginx + type: string + required: + - name + - forwarder_destination + type: object + CustomDestinationCreateRequestDefinition: + description: The definition of a custom destination. + properties: + attributes: + $ref: "#/components/schemas/CustomDestinationCreateRequestAttributes" + type: + $ref: "#/components/schemas/CustomDestinationType" + required: + - type + - attributes + type: object + CustomDestinationElasticsearchDestinationAuth: + description: Basic access authentication. + properties: + password: + description: The password of the authentication. This field is not returned by the API. + example: datadog-custom-destination-password + type: string + writeOnly: true + username: + description: The username of the authentication. This field is not returned by the API. + example: datadog-custom-destination-username + type: string + writeOnly: true + required: + - username + - password + type: object + CustomDestinationForwardDestination: + description: A custom destination's location to forward logs. + oneOf: + - $ref: "#/components/schemas/CustomDestinationForwardDestinationHttp" + - $ref: "#/components/schemas/CustomDestinationForwardDestinationSplunk" + - $ref: "#/components/schemas/CustomDestinationForwardDestinationElasticsearch" + - $ref: "#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinel" + CustomDestinationForwardDestinationElasticsearch: + description: The Elasticsearch destination. + properties: + auth: + $ref: "#/components/schemas/CustomDestinationElasticsearchDestinationAuth" + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + index_name: + description: Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). + example: nginx-logs + type: string + index_rotation: + description: |- + Date pattern with US locale and UTC timezone to be appended to the index name after adding `-` + (that is, `${index_name}-${indexPattern}`). + You can customize the index rotation naming pattern by choosing one of these options: + - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) + - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) + - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) + - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) + + If this field is missing or is blank, it means that the index name will always be the same + (that is, no rotation). + example: yyyy-MM-dd + type: string + type: + $ref: "#/components/schemas/CustomDestinationForwardDestinationElasticsearchType" + required: + - type + - endpoint + - auth + - index_name + type: object + CustomDestinationForwardDestinationElasticsearchType: + default: elasticsearch + description: Type of the Elasticsearch destination. + enum: + - elasticsearch + example: elasticsearch + type: string + x-enum-varnames: + - ELASTICSEARCH + CustomDestinationForwardDestinationHttp: + description: The HTTP destination. + properties: + auth: + $ref: "#/components/schemas/CustomDestinationHttpDestinationAuth" + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + type: + $ref: "#/components/schemas/CustomDestinationForwardDestinationHttpType" + required: + - type + - endpoint + - auth + type: object + CustomDestinationForwardDestinationHttpType: + default: http + description: Type of the HTTP destination. + enum: + - http + example: http + type: string + x-enum-varnames: + - HTTP + CustomDestinationForwardDestinationMicrosoftSentinel: + description: The Microsoft Sentinel destination. + properties: + client_id: + description: Client ID from the Datadog Azure integration. + example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 + type: string + data_collection_endpoint: + description: Azure data collection endpoint. + example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com + type: string + data_collection_rule_id: + description: Azure data collection rule ID. + example: dcr-000a00a000a00000a000000aa000a0aa + type: string + stream_name: + description: Azure stream name. + example: Custom-MyTable + type: string + writeOnly: true + tenant_id: + description: Tenant ID from the Datadog Azure integration. + example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + type: string + type: + $ref: "#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinelType" + required: + - type + - tenant_id + - client_id + - data_collection_endpoint + - data_collection_rule_id + - stream_name + type: object + CustomDestinationForwardDestinationMicrosoftSentinelType: + default: microsoft_sentinel + description: Type of the Microsoft Sentinel destination. + enum: + - microsoft_sentinel + example: microsoft_sentinel + type: string + x-enum-varnames: + - MICROSOFT_SENTINEL + CustomDestinationForwardDestinationSplunk: + description: The Splunk HTTP Event Collector (HEC) destination. + properties: + access_token: + description: Access token of the Splunk HTTP Event Collector. This field is not returned by the API. + example: splunk_access_token + type: string + writeOnly: true + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + sourcetype: + description: |- + The Splunk sourcetype for the events sent to this Splunk destination. + + If the field is absent from the request and no sourcetype has been previously set on this destination, the default sourcetype `_json` is used. + On update, if the field is absent from the request but a sourcetype was previously set, the previous value is kept. + If set to `null`, the sourcetype field is omitted from the forwarded event entirely. + Otherwise, the provided string value is used as the sourcetype. + example: my-source + nullable: true + type: string + type: + $ref: "#/components/schemas/CustomDestinationForwardDestinationSplunkType" + required: + - type + - endpoint + - access_token + type: object + CustomDestinationForwardDestinationSplunkType: + default: splunk_hec + description: Type of the Splunk HTTP Event Collector (HEC) destination. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + CustomDestinationHttpDestinationAuth: + description: Authentication method of the HTTP requests. + oneOf: + - $ref: "#/components/schemas/CustomDestinationHttpDestinationAuthBasic" + - $ref: "#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeader" + CustomDestinationHttpDestinationAuthBasic: + description: Basic access authentication. + properties: + password: + description: The password of the authentication. This field is not returned by the API. + example: datadog-custom-destination-password + type: string + writeOnly: true + type: + $ref: "#/components/schemas/CustomDestinationHttpDestinationAuthBasicType" + username: + description: The username of the authentication. This field is not returned by the API. + example: datadog-custom-destination-username + type: string + writeOnly: true + required: + - type + - username + - password + type: object + CustomDestinationHttpDestinationAuthBasicType: + default: basic + description: Type of the basic access authentication. + enum: + - basic + example: basic + type: string + x-enum-varnames: + - BASIC + CustomDestinationHttpDestinationAuthCustomHeader: + description: Custom header access authentication. + properties: + header_name: + description: The header name of the authentication. + example: CUSTOM-HEADER-NAME + type: string + header_value: + description: The header value of the authentication. This field is not returned by the API. + example: CUSTOM-HEADER-AUTHENTICATION-VALUE + type: string + writeOnly: true + type: + $ref: "#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeaderType" + required: + - type + - header_name + - header_value + type: object + CustomDestinationHttpDestinationAuthCustomHeaderType: + default: custom_header + description: Type of the custom header access authentication. + enum: + - custom_header + example: custom_header + type: string + x-enum-varnames: + - CUSTOM_HEADER + CustomDestinationResponse: + description: The custom destination. + properties: + data: + $ref: "#/components/schemas/CustomDestinationResponseDefinition" + type: object + CustomDestinationResponseAttributes: + description: The attributes associated with the custom destination. + properties: + enabled: + default: true + description: Whether logs matching this custom destination should be forwarded or not. + example: true + type: boolean + forward_tags: + default: true + description: Whether tags from the forwarded logs should be forwarded or not. + example: true + type: boolean + forward_tags_restriction_list: + default: [] + description: |- + List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered. + + An empty list represents no restriction is in place and either all or no tags will be + forwarded depending on `forward_tags_restriction_list_type` parameter. + example: ["datacenter", "host"] + items: + description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + type: string + maxItems: 10 + minItems: 0 + type: array + forward_tags_restriction_list_type: + $ref: "#/components/schemas/CustomDestinationAttributeTagsRestrictionListType" + forwarder_destination: + $ref: "#/components/schemas/CustomDestinationResponseForwardDestination" + name: + description: The custom destination name. + example: Nginx logs + type: string + query: + default: "" + description: The custom destination query filter. Logs matching this query are forwarded to the destination. + example: source:nginx + type: string + type: object + CustomDestinationResponseDefinition: + description: The definition of a custom destination. + properties: + attributes: + $ref: "#/components/schemas/CustomDestinationResponseAttributes" + id: + description: The custom destination ID. + example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 + readOnly: true + type: string + type: + $ref: "#/components/schemas/CustomDestinationType" + type: object + CustomDestinationResponseElasticsearchDestinationAuth: + additionalProperties: + description: Basic access authentication. + description: Basic access authentication. + type: object + CustomDestinationResponseForwardDestination: + description: A custom destination's location to forward logs. + oneOf: + - $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationHttp" + - $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationSplunk" + - $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearch" + - $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinel" + CustomDestinationResponseForwardDestinationElasticsearch: + description: The Elasticsearch destination. + properties: + auth: + $ref: "#/components/schemas/CustomDestinationResponseElasticsearchDestinationAuth" + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + index_name: + description: Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). + example: nginx-logs + type: string + index_rotation: + description: |- + Date pattern with US locale and UTC timezone to be appended to the index name after adding `-` + (that is, `${index_name}-${indexPattern}`). + You can customize the index rotation naming pattern by choosing one of these options: + - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) + - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) + - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) + - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) + + If this field is missing or is blank, it means that the index name will always be the same + (that is, no rotation). + example: yyyy-MM-dd + type: string + type: + $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearchType" + required: + - type + - endpoint + - auth + - index_name + type: object + CustomDestinationResponseForwardDestinationElasticsearchType: + default: elasticsearch + description: Type of the Elasticsearch destination. + enum: + - elasticsearch + example: elasticsearch + type: string + x-enum-varnames: + - ELASTICSEARCH + CustomDestinationResponseForwardDestinationHttp: + description: The HTTP destination. + properties: + auth: + $ref: "#/components/schemas/CustomDestinationResponseHttpDestinationAuth" + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + type: + $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationHttpType" + required: + - type + - endpoint + - auth + type: object + CustomDestinationResponseForwardDestinationHttpType: + default: http + description: Type of the HTTP destination. + enum: + - http + example: http + type: string + x-enum-varnames: + - HTTP + CustomDestinationResponseForwardDestinationMicrosoftSentinel: + description: The Microsoft Sentinel destination. + properties: + client_id: + description: Client ID from the Datadog Azure integration. + example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 + type: string + data_collection_endpoint: + description: Azure data collection endpoint. + example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com + type: string + data_collection_rule_id: + description: Azure data collection rule ID. + example: dcr-000a00a000a00000a000000aa000a0aa + type: string + stream_name: + description: Azure stream name. + example: Custom-MyTable + type: string + writeOnly: true + tenant_id: + description: Tenant ID from the Datadog Azure integration. + example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + type: string + type: + $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinelType" + required: + - type + - tenant_id + - client_id + - data_collection_endpoint + - data_collection_rule_id + - stream_name + type: object + CustomDestinationResponseForwardDestinationMicrosoftSentinelType: + default: microsoft_sentinel + description: Type of the Microsoft Sentinel destination. + enum: + - microsoft_sentinel + example: microsoft_sentinel + type: string + x-enum-varnames: + - MICROSOFT_SENTINEL + CustomDestinationResponseForwardDestinationSplunk: + description: The Splunk HTTP Event Collector (HEC) destination. + properties: + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + sourcetype: + description: |- + The Splunk sourcetype for the events sent to this Splunk destination. + + If the field is absent from the request and no sourcetype has been previously set on this destination, the default sourcetype `_json` is used. + On update, if the field is absent from the request but a sourcetype was previously set, the previous value is kept. + If set to `null`, the sourcetype field is omitted from the forwarded event entirely. + Otherwise, the provided string value is used as the sourcetype. + example: my-source + nullable: true + type: string + type: + $ref: "#/components/schemas/CustomDestinationResponseForwardDestinationSplunkType" + required: + - type + - endpoint + type: object + CustomDestinationResponseForwardDestinationSplunkType: + default: splunk_hec + description: Type of the Splunk HTTP Event Collector (HEC) destination. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + CustomDestinationResponseHttpDestinationAuth: + description: Authentication method of the HTTP requests. + oneOf: + - $ref: "#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasic" + - $ref: "#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeader" + CustomDestinationResponseHttpDestinationAuthBasic: + description: Basic access authentication. + properties: + type: + $ref: "#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType" + required: + - type + type: object + CustomDestinationResponseHttpDestinationAuthBasicType: + default: basic + description: Type of the basic access authentication. + enum: + - basic + example: basic + type: string + x-enum-varnames: + - BASIC + CustomDestinationResponseHttpDestinationAuthCustomHeader: + description: Custom header access authentication. + properties: + header_name: + description: The header name of the authentication. + example: CUSTOM-HEADER-NAME + type: string + type: + $ref: "#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeaderType" + required: + - type + - header_name + type: object + CustomDestinationResponseHttpDestinationAuthCustomHeaderType: + default: custom_header + description: Type of the custom header access authentication. + enum: + - custom_header + example: custom_header + type: string + x-enum-varnames: + - CUSTOM_HEADER + CustomDestinationType: + default: custom_destination + description: The type of the resource. The value should always be `custom_destination`. + enum: + - custom_destination + example: custom_destination + type: string + x-enum-varnames: + - CUSTOM_DESTINATION + CustomDestinationUpdateRequest: + description: The custom destination. + properties: + data: + $ref: "#/components/schemas/CustomDestinationUpdateRequestDefinition" + type: object + CustomDestinationUpdateRequestAttributes: + description: The attributes associated with the custom destination. + properties: + enabled: + default: true + description: Whether logs matching this custom destination should be forwarded or not. + example: true + type: boolean + forward_tags: + default: true + description: Whether tags from the forwarded logs should be forwarded or not. + example: true + type: boolean + forward_tags_restriction_list: + default: [] + description: |- + List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be restricted from being forwarded. + An empty list represents no restriction is in place and either all or no tags will be forwarded depending on `forward_tags_restriction_list_type` parameter. + example: ["datacenter", "host"] + items: + description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + type: string + maxItems: 10 + minItems: 0 + type: array + forward_tags_restriction_list_type: + $ref: "#/components/schemas/CustomDestinationAttributeTagsRestrictionListType" + forwarder_destination: + $ref: "#/components/schemas/CustomDestinationForwardDestination" + name: + description: The custom destination name. + example: Nginx logs + type: string + query: + default: "" + description: The custom destination query and filter. Logs matching this query are forwarded to the destination. + example: source:nginx + type: string + type: object + CustomDestinationUpdateRequestDefinition: + description: The definition of a custom destination. + properties: + attributes: + $ref: "#/components/schemas/CustomDestinationUpdateRequestAttributes" + id: + description: The custom destination ID. + example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 + type: string + type: + $ref: "#/components/schemas/CustomDestinationType" + required: + - type + - id + type: object + CustomDestinationsResponse: + description: The available custom destinations. + properties: + data: + description: A list of custom destinations. + items: + $ref: "#/components/schemas/CustomDestinationResponseDefinition" + type: array + type: object + CustomForecastEntry: + description: A monthly entry of a custom budget forecast. + properties: + amount: + description: Forecast amount for the month. + example: 400 + format: double + type: number + month: + description: Month the custom forecast entry applies to, in `YYYYMM` format. + example: 202501 + format: int64 + type: integer + tag_filters: + description: Tag filters that scope this custom forecast entry to specific resources. + items: + $ref: "#/components/schemas/CustomForecastEntryTagFilter" + type: array + required: + - month + - amount + - tag_filters + type: object + CustomForecastEntryTagFilter: + description: A tag filter that scopes a custom forecast entry to specific resource tags. + properties: + tag_key: + description: The tag key to filter on. + example: service + type: string + tag_value: + description: The tag value to filter on. + example: ec2 + type: string + required: + - tag_key + - tag_value + type: object + CustomForecastResponse: + description: Response object containing the custom forecast for a budget. + properties: + data: + $ref: "#/components/schemas/CustomForecastResponseData" + required: + - data + type: object + CustomForecastResponseData: + description: Custom forecast resource wrapper in a response. + properties: + attributes: + $ref: "#/components/schemas/CustomForecastResponseDataAttributes" + id: + description: The unique identifier of the custom forecast. + example: 11111111-1111-1111-1111-111111111111 + type: string + type: + $ref: "#/components/schemas/CustomForecastType" + required: + - id + - type + - attributes + type: object + CustomForecastResponseDataAttributes: + description: Attributes of a custom forecast. + properties: + budget_uid: + description: The UUID of the budget that this custom forecast belongs to. + example: 00000000-0000-0000-0000-000000000001 + type: string + created_at: + description: Timestamp the custom forecast was created, in Unix milliseconds. + example: 1738258683590 + format: int64 + type: integer + created_by: + description: The id of the user that created the custom forecast. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + entries: + description: Monthly custom forecast entries. + items: + $ref: "#/components/schemas/CustomForecastEntry" + type: array + updated_at: + description: Timestamp the custom forecast was last updated, in Unix milliseconds. + example: 1738258683590 + format: int64 + type: integer + updated_by: + description: The id of the user that last updated the custom forecast. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + required: + - budget_uid + - created_at + - updated_at + - created_by + - updated_by + - entries + type: object + CustomForecastType: + default: custom_forecast + description: The type of the custom forecast resource. Must be `custom_forecast`. + enum: + - custom_forecast + example: custom_forecast + type: string + x-enum-varnames: + - CUSTOM_FORECAST + CustomForecastUpsertRequest: + description: Request body to upsert (create or replace) the custom forecast for a budget. + properties: + data: + $ref: "#/components/schemas/CustomForecastUpsertRequestData" + required: + - data + type: object + CustomForecastUpsertRequestData: + description: Custom forecast resource wrapper in an upsert request. + properties: + attributes: + $ref: "#/components/schemas/CustomForecastUpsertRequestDataAttributes" + id: + description: Unused on upsert; the resource is keyed by `budget_uid`. Send an empty string. + example: "" + type: string + type: + $ref: "#/components/schemas/CustomForecastType" + required: + - type + - attributes + type: object + CustomForecastUpsertRequestDataAttributes: + description: Attributes of a custom forecast upsert request. + properties: + budget_uid: + description: The UUID of the budget that this custom forecast belongs to. + example: 00000000-0000-0000-0000-000000000001 + type: string + entries: + description: |- + Monthly custom forecast entries. An empty list deletes any existing + custom forecast for the budget. + items: + $ref: "#/components/schemas/CustomForecastEntry" + type: array + required: + - budget_uid + - entries + type: object + CustomFrameworkControl: + description: Framework Control. + properties: + name: + description: Control Name. + example: A1.2 + type: string + rules_id: + description: Rule IDs. + example: + - '["def-000-abc"]' + items: + description: A rule ID associated with the control. + type: string + type: array + required: + - name + - rules_id + type: object + CustomFrameworkData: + description: Contains type and attributes for custom frameworks. + properties: + attributes: + $ref: "#/components/schemas/CustomFrameworkDataAttributes" + type: + $ref: "#/components/schemas/CustomFrameworkType" + required: + - type + - attributes + type: object + CustomFrameworkDataAttributes: + description: Framework Data Attributes. + properties: + description: + description: Framework Description + type: string + handle: + description: Framework Handle + example: sec2 + type: string + icon_url: + description: Framework Icon URL + type: string + name: + description: Framework Name + example: security-framework + type: string + requirements: + description: Framework Requirements + items: + $ref: "#/components/schemas/CustomFrameworkRequirement" + type: array + version: + description: Framework Version + example: "2" + type: string + required: + - handle + - version + - name + - requirements + type: object + CustomFrameworkDataHandleAndVersion: + description: Framework Handle and Version. + properties: + handle: + description: Framework Handle + example: sec2 + type: string + version: + description: Framework Version + example: "2" + type: string + type: object + CustomFrameworkMetadata: + description: Metadata for custom frameworks. + properties: + attributes: + $ref: "#/components/schemas/CustomFrameworkWithoutRequirements" + id: + description: The ID of the custom framework. + example: handle-version + type: string + type: + $ref: "#/components/schemas/CustomFrameworkType" + type: object + CustomFrameworkRequirement: + description: Framework Requirement. + properties: + controls: + description: Requirement Controls. + items: + $ref: "#/components/schemas/CustomFrameworkControl" + type: array + name: + description: Requirement Name. + example: criteria + type: string + required: + - name + - controls + type: object + CustomFrameworkType: + default: custom_framework + description: The type of the resource. The value must be `custom_framework`. + enum: + - custom_framework + example: custom_framework + type: string + x-enum-varnames: + - CUSTOM_FRAMEWORK + CustomFrameworkWithoutRequirements: + description: Framework without requirements. + properties: + description: + description: Framework Description + example: this is a security description + type: string + handle: + description: Framework Handle + example: sec2 + type: string + icon_url: + description: Framework Icon URL + example: https://example.com/icon.png + type: string + name: + description: Framework Name + example: security-framework + type: string + version: + description: Framework Version + example: "2" + type: string + required: + - handle + - version + - name + type: object + CustomRule: + description: A custom static analysis rule within a ruleset. + properties: + created_at: + description: Creation timestamp + example: "2026-01-09T13:00:57.473141Z" + format: date-time + type: string + created_by: + description: Creator identifier + example: foobarbaz + type: string + last_revision: + $ref: "#/components/schemas/CustomRuleRevision" + description: Most recent revision + nullable: true + name: + description: Rule name + example: my-rule + type: string + required: + - name + - created_at + - created_by + - last_revision + type: object + CustomRuleDataType: + description: Resource type + enum: [custom_rule] + example: custom_rule + type: string + x-enum-varnames: + - CUSTOM_RULE + CustomRuleRequest: + description: Request body for creating or updating a custom rule. + properties: + data: + $ref: "#/components/schemas/CustomRuleRequestData" + type: object + CustomRuleRequestData: + description: Data object for a custom rule create or update request. + properties: + attributes: + $ref: "#/components/schemas/CustomRuleRequestDataAttributes" + id: + description: Rule identifier + type: string + type: + $ref: "#/components/schemas/CustomRuleDataType" + type: object + CustomRuleRequestDataAttributes: + description: Attributes for creating or updating a custom rule. + properties: + name: + description: Rule name + type: string + type: object + CustomRuleResponse: + description: Response containing a single custom rule. + properties: + data: + $ref: "#/components/schemas/CustomRuleResponseData" + required: + - data + type: object + CustomRuleResponseData: + description: Data object returned in a custom rule response, including its ID, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/CustomRule" + id: + description: Rule identifier + example: my-rule + type: string + type: + $ref: "#/components/schemas/CustomRuleDataType" + required: + - id + - type + - attributes + type: object + CustomRuleRevision: + description: A specific revision of a custom static analysis rule. + properties: + attributes: + $ref: "#/components/schemas/CustomRuleRevisionAttributes" + id: + description: Revision identifier + example: revision-123 + type: string + type: + $ref: "#/components/schemas/CustomRuleRevisionDataType" + required: + - id + - type + - attributes + type: object + CustomRuleRevisionAttributes: + description: Attributes of a custom rule revision, including code, metadata, and test cases. + properties: + arguments: + description: Rule arguments + items: + $ref: "#/components/schemas/Argument" + type: array + category: + $ref: "#/components/schemas/CustomRuleRevisionAttributesCategory" + checksum: + description: Code checksum + example: 8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99 + type: string + code: + description: Rule code + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + created_at: + description: Creation timestamp + example: "2026-01-09T13:00:57.473141Z" + format: date-time + type: string + created_by: + description: Creator identifier + example: foobarbaz + type: string + creation_message: + description: Revision creation message + example: Initial revision + type: string + cve: + description: Associated CVE + example: CVE-2024-1234 + nullable: true + type: string + cwe: + description: Associated CWE + example: CWE-79 + nullable: true + type: string + description: + description: Full description + example: bG9uZyBkZXNjcmlwdGlvbg== + type: string + documentation_url: + description: Documentation URL + example: https://docs.example.com/rules/my-rule + nullable: true + type: string + is_published: + description: Whether the revision is published + example: false + type: boolean + is_testing: + description: Whether this is a testing revision + example: false + type: boolean + language: + $ref: "#/components/schemas/Language" + severity: + $ref: "#/components/schemas/CustomRuleRevisionAttributesSeverity" + short_description: + description: Short description + example: c2hvcnQgZGVzY3JpcHRpb24= + type: string + should_use_ai_fix: + description: Whether to use AI for fixes + example: false + type: boolean + tags: + description: Rule tags + example: + - security + - custom + items: + description: A tag attached to the rule. + type: string + type: array + tests: + description: Rule tests + items: + $ref: "#/components/schemas/CustomRuleRevisionTest" + type: array + tree_sitter_query: + description: Tree-sitter query + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + required: + - creation_message + - short_description + - description + - code + - checksum + - language + - tree_sitter_query + - created_at + - created_by + - severity + - category + - cve + - cwe + - arguments + - tests + - tags + - is_published + - should_use_ai_fix + - documentation_url + - is_testing + type: object + CustomRuleRevisionAttributesCategory: + description: Rule category + enum: [SECURITY, BEST_PRACTICES, CODE_STYLE, ERROR_PRONE, PERFORMANCE] + example: SECURITY + type: string + x-enum-varnames: + - SECURITY + - BEST_PRACTICES + - CODE_STYLE + - ERROR_PRONE + - PERFORMANCE + CustomRuleRevisionAttributesSeverity: + description: Rule severity + enum: [ERROR, WARNING, NOTICE] + example: ERROR + type: string + x-enum-varnames: + - ERROR + - WARNING + - NOTICE + CustomRuleRevisionDataType: + description: Resource type + enum: [custom_rule_revision] + example: custom_rule_revision + type: string + x-enum-varnames: + - CUSTOM_RULE_REVISION + CustomRuleRevisionInputAttributes: + description: Input attributes for creating or updating a custom rule revision. + properties: + arguments: + description: Rule arguments + items: + $ref: "#/components/schemas/Argument" + type: array + category: + $ref: "#/components/schemas/CustomRuleRevisionAttributesCategory" + code: + description: Rule code + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + creation_message: + description: Revision creation message + example: Initial revision + type: string + cve: + description: Associated CVE + example: CVE-2024-1234 + nullable: true + type: string + cwe: + description: Associated CWE + example: CWE-79 + nullable: true + type: string + description: + description: Full description + example: bG9uZyBkZXNjcmlwdGlvbg== + type: string + documentation_url: + description: Documentation URL + example: https://docs.example.com/rules/my-rule + nullable: true + type: string + is_published: + description: Whether the revision is published + example: false + type: boolean + is_testing: + description: Whether this is a testing revision + example: false + type: boolean + language: + $ref: "#/components/schemas/Language" + severity: + $ref: "#/components/schemas/CustomRuleRevisionAttributesSeverity" + short_description: + description: Short description + example: c2hvcnQgZGVzY3JpcHRpb24= + type: string + should_use_ai_fix: + description: Whether to use AI for fixes + example: false + type: boolean + tags: + description: Rule tags + example: + - security + - custom + items: + description: A tag attached to the rule. + type: string + type: array + tests: + description: Rule tests + items: + $ref: "#/components/schemas/CustomRuleRevisionTest" + type: array + tree_sitter_query: + description: Tree-sitter query + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + required: + - creation_message + - short_description + - description + - code + - language + - tree_sitter_query + - severity + - category + - cve + - cwe + - arguments + - tests + - tags + - is_published + - should_use_ai_fix + - documentation_url + - is_testing + type: object + CustomRuleRevisionRequest: + description: Request body for creating a new custom rule revision. + properties: + data: + $ref: "#/components/schemas/CustomRuleRevisionRequestData" + type: object + CustomRuleRevisionRequestData: + description: Data object for a custom rule revision create request. + properties: + attributes: + $ref: "#/components/schemas/CustomRuleRevisionInputAttributes" + id: + description: Revision identifier + type: string + type: + $ref: "#/components/schemas/CustomRuleRevisionDataType" + type: object + CustomRuleRevisionResponse: + description: Response containing a single custom rule revision. + properties: + data: + $ref: "#/components/schemas/CustomRuleRevision" + required: + - data + type: object + CustomRuleRevisionTest: + description: A test case associated with a custom rule revision, used to validate rule behavior. + properties: + annotation_count: + description: Expected violation count + example: 1 + format: int64 + type: integer + code: + description: Test code + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + filename: + description: Test filename + example: test.yaml + type: string + required: + - filename + - code + - annotation_count + type: object + CustomRuleRevisionsResponse: + description: Response containing a paginated list of custom rule revisions. + properties: + data: + description: List of custom rule revisions. + items: + $ref: "#/components/schemas/CustomRuleRevision" + type: array + type: object + CustomRuleset: + description: A custom static analysis ruleset containing a set of user-defined rules. + properties: + attributes: + $ref: "#/components/schemas/CustomRulesetAttributes" + id: + description: Ruleset identifier + example: my-ruleset + type: string + type: + $ref: "#/components/schemas/CustomRulesetDataType" + required: + - id + - type + - attributes + type: object + CustomRulesetAttributes: + description: Attributes of a custom ruleset, including its name, description, and rules. + properties: + created_at: + description: Creation timestamp + example: "2026-01-09T13:00:57.473141Z" + format: date-time + type: string + created_by: + description: Creator identifier + example: foobarbaz + type: string + description: + description: Base64-encoded full description + example: bG9uZyBkZXNjcmlwdGlvbg== + type: string + name: + description: Ruleset name + example: my-ruleset + type: string + rules: + description: Rules in the ruleset + items: + $ref: "#/components/schemas/CustomRule" + nullable: true + type: array + short_description: + description: Base64-encoded short description + example: c2hvcnQgZGVzY3JpcHRpb24= + type: string + required: + - name + - short_description + - description + - created_at + - created_by + - rules + type: object + CustomRulesetDataType: + description: Resource type + enum: [custom_ruleset] + example: custom_ruleset + type: string + x-enum-varnames: + - CUSTOM_RULESET + CustomRulesetListResponse: + description: Response containing a list of custom rulesets for the authenticated organization. + properties: + data: + description: The list of custom rulesets. + items: + $ref: "#/components/schemas/CustomRuleset" + type: array + required: + - data + type: object + CustomRulesetRequest: + description: Request body for creating or updating a custom ruleset. + properties: + data: + $ref: "#/components/schemas/CustomRulesetRequestData" + type: object + CustomRulesetRequestData: + description: Data object for a custom ruleset create or update request. + properties: + attributes: + $ref: "#/components/schemas/CustomRulesetRequestDataAttributes" + id: + description: Ruleset identifier + type: string + type: + $ref: "#/components/schemas/CustomRulesetDataType" + type: object + CustomRulesetRequestDataAttributes: + description: Attributes for creating or updating a custom ruleset. + properties: + description: + description: Base64-encoded full description + type: string + name: + description: Ruleset name + type: string + rules: + description: Rules in the ruleset + items: + $ref: "#/components/schemas/CustomRule" + nullable: true + type: array + short_description: + description: Base64-encoded short description + type: string + type: object + CustomRulesetResponse: + description: Response containing a single custom ruleset. + properties: + data: + $ref: "#/components/schemas/CustomRuleset" + required: + - data + type: object + CustomerOrgDisableRequest: + description: Request payload for disabling the authenticated customer organization. + properties: + data: + $ref: "#/components/schemas/CustomerOrgDisableRequestData" + required: + - data + type: object + CustomerOrgDisableRequestAttributes: + description: |- + Optional attributes for a customer org disable request. When supplied, `org_uuid` + must match the authenticated organization or the request is rejected. + properties: + org_uuid: + description: |- + Datadog organization UUID. If supplied, must match the authenticated + organization. + example: "abcdef01-2345-6789-abcd-ef0123456789" + type: string + type: object + CustomerOrgDisableRequestData: + description: Data object for a customer org disable request. + properties: + attributes: + $ref: "#/components/schemas/CustomerOrgDisableRequestAttributes" + id: + description: |- + Optional client-supplied identifier for the request. Useful for client-side + correlation; the server does not use this value. + example: "1" + type: string + type: + $ref: "#/components/schemas/CustomerOrgDisableType" + required: + - type + type: object + CustomerOrgDisableResponse: + description: Response describing the outcome of disabling the customer organization. + properties: + data: + $ref: "#/components/schemas/CustomerOrgDisableResponseData" + required: + - data + type: object + CustomerOrgDisableResponseAttributes: + description: Attributes describing the outcome of the disable action on the customer organization. + properties: + status: + $ref: "#/components/schemas/CustomerOrgDisableStatus" + required: + - status + type: object + CustomerOrgDisableResponseData: + description: Data object returned after disabling the customer organization. + properties: + attributes: + $ref: "#/components/schemas/CustomerOrgDisableResponseAttributes" + id: + description: Identifier of the disabled organization. + example: "abcdef01-2345-6789-abcd-ef0123456789" + type: string + type: + $ref: "#/components/schemas/CustomerOrgDisableResponseType" + required: + - type + - id + - attributes + type: object + CustomerOrgDisableResponseType: + description: JSON:API resource type for a customer org disable response. + enum: + - org_disable + example: "org_disable" + type: string + x-enum-varnames: + - ORG_DISABLE + CustomerOrgDisableStatus: + description: Resulting lifecycle status of the organization after the disable action. + enum: + - disabled + - pending_disable + example: "disabled" + type: string + x-enum-varnames: + - DISABLED + - PENDING_DISABLE + CustomerOrgDisableType: + description: JSON:API resource type for a customer org disable request. + enum: + - customer_org_disable + example: "customer_org_disable" + type: string + x-enum-varnames: + - CUSTOMER_ORG_DISABLE + CycloneDXBom: + description: A CycloneDX 1.5 Bill of Materials (BOM) document containing vulnerability data. + properties: + bomFormat: + description: The BOM format identifier. Must be `CycloneDX`. + example: CycloneDX + type: string + components: + description: The list of scanned software components. Cannot be empty. + items: + $ref: "#/components/schemas/CycloneDXComponent" + type: array + metadata: + $ref: "#/components/schemas/CycloneDXMetadata" + specVersion: + description: The CycloneDX specification version. Must be `1.5`. + example: "1.5" + type: string + version: + description: The version number of the BOM document. + example: 1 + format: int64 + type: integer + vulnerabilities: + description: The list of detected vulnerabilities. Cannot be empty. + items: + $ref: "#/components/schemas/CycloneDXVulnerability" + type: array + required: + - bomFormat + - specVersion + - metadata + - components + - vulnerabilities + type: object + CycloneDXComponent: + description: A software component identified during scanning. + properties: + bom-ref: + description: A unique reference identifier used to link vulnerabilities to this component. + example: a3390fca-c315-41ae-ae05-af5e7859cdee + type: string + name: + description: The name of the component. + example: lodash + type: string + purl: + description: The Package URL (PURL) of the component. Required when `type` is `library`. + example: "pkg:npm/lodash@4.17.21" + type: string + type: + $ref: "#/components/schemas/CycloneDXComponentType" + version: + description: The version of the component. + example: 4.17.21 + type: string + required: + - bom-ref + - type + - name + - version + type: object + CycloneDXComponentType: + description: The type of the scanned component. + enum: + - library + - application + - operating-system + example: library + type: string + x-enum-varnames: + - LIBRARY + - APPLICATION + - OPERATING_SYSTEM + CycloneDXMetadata: + description: Metadata about the BOM, including the scanned asset and the scanner tool. + properties: + component: + $ref: "#/components/schemas/CycloneDXMetadataComponent" + tools: + $ref: "#/components/schemas/CycloneDXMetadataTools" + required: + - component + - tools + type: object + CycloneDXMetadataComponent: + description: The asset that was scanned (for example, a host or container image). + properties: + bom-ref: + description: >- + A unique reference identifier for this metadata component. If set, must match a `bom-ref` in `components`. + example: host-ref-abc123 + type: string + name: + description: The name or identifier of the scanned asset (for example, an instance ID or hostname). + example: i-12345 + type: string + type: + description: The type of the scanned asset. + example: operating-system + type: string + required: + - name + type: object + CycloneDXMetadataTools: + description: Information about the scanner tool that produced this BOM. + properties: + components: + description: The scanner tool components. Must contain exactly one element. + items: + $ref: "#/components/schemas/CycloneDXToolComponent" + type: array + required: + - components + type: object + CycloneDXToolComponent: + description: A scanner tool component. + properties: + name: + description: The name of the scanner tool. + example: my-scanner + type: string + type: + description: The type of the tool component. + example: application + type: string + required: + - name + type: object + CycloneDXVulnerability: + description: A security vulnerability affecting one or more components. + properties: + advisories: + description: External advisory references for the vulnerability. + items: + $ref: "#/components/schemas/CycloneDXVulnerabilityAdvisory" + type: array + affects: + description: >- + The components affected by this vulnerability. Must be non-empty. Each `ref` must match a `bom-ref` in `components`. + items: + $ref: "#/components/schemas/CycloneDXVulnerabilityAffects" + type: array + analysis: + $ref: "#/components/schemas/CycloneDXVulnerabilityAnalysis" + cwes: + description: CWE identifiers associated with the vulnerability. + example: [123, 345] + items: + format: int64 + type: integer + type: array + description: + description: A short description of the vulnerability. + example: "Sample vulnerability detected in the application." + type: string + detail: + description: Detailed information about the vulnerability. + example: "Details about the vulnerability." + type: string + id: + description: The vulnerability identifier (for example, a CVE ID). + example: CVE-2021-1234 + type: string + ratings: + description: The severity ratings for the vulnerability. Must contain exactly one element. + items: + $ref: "#/components/schemas/CycloneDXVulnerabilityRating" + type: array + references: + description: External reference identifiers for the vulnerability. + items: + $ref: "#/components/schemas/CycloneDXVulnerabilityReference" + type: array + required: + - id + - ratings + - affects + type: object + CycloneDXVulnerabilityAdvisory: + description: An external advisory reference for a vulnerability. + properties: + url: + description: The URL of the advisory. + example: "https://example.com/advisory/CVE-2021-1234" + type: string + type: object + CycloneDXVulnerabilityAffects: + description: A reference to a component affected by a vulnerability. + properties: + ref: + description: The `bom-ref` of the affected component. + example: a3390fca-c315-41ae-ae05-af5e7859cdee + type: string + required: + - ref + type: object + CycloneDXVulnerabilityAnalysis: + description: |- + The exploitability analysis for the vulnerability. When `state` is set to `resolved` + or `resolved_with_pedigree`, the vulnerability is closed in Datadog. + Other state values are accepted but have no effect on the vulnerability status. + properties: + state: + description: The vulnerability analysis state. + example: resolved + type: string + type: object + CycloneDXVulnerabilityRating: + description: A severity rating for a vulnerability. + properties: + score: + description: The CVSS score. + example: 9.0 + format: double + type: number + severity: + description: The severity level. + example: high + type: string + vector: + description: The CVSS vector string. + example: "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N" + type: string + type: object + CycloneDXVulnerabilityReference: + description: An external reference identifier for a vulnerability. + properties: + id: + description: The identifier of the external reference (for example, a GHSA ID). + example: GHSA-35m5-8cvj-8783 + type: string + source: + $ref: "#/components/schemas/CycloneDXVulnerabilityReferenceSource" + type: object + CycloneDXVulnerabilityReferenceSource: + description: The source of an external vulnerability reference. + properties: + url: + description: The URL of the reference source. + example: "https://example.com" + type: string + type: object + DORACustomTags: + description: A list of user-defined tags. The tags must follow the `key:value` pattern. Up to 100 may be added per event. + example: + - language:java + - department:engineering + items: + description: Tags in the form of `key:value`. + type: string + nullable: true + type: array + DORADeploymentFetchResponse: + description: Response for fetching a single deployment event. + properties: + data: + $ref: "#/components/schemas/DORADeploymentObject" + type: object + DORADeploymentObject: + description: A DORA deployment event. + example: + attributes: + custom_tags: + - "language:java" + - "department:engineering" + - "region:us-east-1" + env: "production" + finished_at: "2023-08-31T14:26:24Z" + git: + commit_sha: "66adc9350f2cc9b250b69abddab733dd55e1a588" + repository_id: "github.com/organization/example-repository" + service: "shopist" + started_at: "2023-08-31T14:26:14Z" + team: "backend" + version: "v1.12.07" + id: "4242fcdd31586083" + type: "dora_deployment" + properties: + attributes: + $ref: "#/components/schemas/DORADeploymentObjectAttributes" + id: + description: The ID of the deployment event. + type: string + type: + $ref: "#/components/schemas/DORADeploymentType" + type: object + DORADeploymentObjectAttributes: + description: The attributes of the deployment event. + properties: + custom_tags: + $ref: "#/components/schemas/DORACustomTags" + env: + description: Environment name to where the service was deployed. + example: production + type: string + finished_at: + description: The time when the deployment finished. + example: "2023-08-31T14:26:24Z" + format: date-time + type: string + git: + $ref: "#/components/schemas/DORAGitInfoResponse" + service: + description: Service name. + example: shopist + type: string + started_at: + description: The time when the deployment started. + example: "2023-08-31T14:26:14Z" + format: date-time + type: string + team: + description: Name of the team owning the deployed service. + example: backend + type: string + version: + description: Version to correlate with APM Deployment Tracking. + example: v1.12.07 + type: string + required: + - service + - started_at + type: object + DORADeploymentPatchByVersionRemediation: + description: Remediation details for the deployment. Optional, but required to calculate failed deployment recovery time. Specify either `id` or `version` to identify the remediation deployment, but not both. + oneOf: + - $ref: "#/components/schemas/DORADeploymentPatchByVersionRemediationByID" + - $ref: "#/components/schemas/DORADeploymentPatchByVersionRemediationByVersion" + DORADeploymentPatchByVersionRemediationByID: + additionalProperties: false + description: Remediation details identified by the ID of the remediation deployment. + properties: + id: + description: The ID of the remediation deployment. + example: eG42zNIkVjM + type: string + type: + $ref: "#/components/schemas/DORADeploymentPatchRemediationType" + required: + - id + - type + type: object + DORADeploymentPatchByVersionRemediationByVersion: + additionalProperties: false + description: Remediation details identified by the version of the remediation deployment, matched against the same service and environment as the failed deployment. + properties: + type: + $ref: "#/components/schemas/DORADeploymentPatchRemediationType" + version: + description: The version of the remediation deployment. + example: v1.2.4 + type: string + required: + - version + - type + type: object + DORADeploymentPatchByVersionRequest: + description: Request to patch a DORA deployment event identified by service, environment, and version. + example: + data: + attributes: + change_failure: true + env: "production" + remediation: + type: "rollback" + version: "v1.2.2" + service: "my-service" + version: "v1.2.3" + type: "dora_deployment_patch_request" + properties: + data: + $ref: "#/components/schemas/DORADeploymentPatchByVersionRequestData" + required: + - data + type: object + DORADeploymentPatchByVersionRequestAttributes: + description: Attributes for patching a DORA deployment event identified by service, environment, and version. + properties: + change_failure: + description: Indicates whether the deployment resulted in a change failure. + example: true + type: boolean + env: + description: The environment the deployment was performed in. + example: prod + type: string + remediation: + $ref: "#/components/schemas/DORADeploymentPatchByVersionRemediation" + service: + description: The name of the service that was deployed. + example: my-service + type: string + version: + description: "The version deployed. This can be seen in the Service Catalog or in the APM Deployment Tracking." + example: v1.2.3 + type: string + required: + - service + - env + - version + - change_failure + type: object + DORADeploymentPatchByVersionRequestData: + description: The JSON:API data for patching a deployment identified by service, environment, and version. + properties: + attributes: + $ref: "#/components/schemas/DORADeploymentPatchByVersionRequestAttributes" + type: + $ref: "#/components/schemas/DORADeploymentPatchRequestDataType" + required: + - type + - attributes + type: object + DORADeploymentPatchRemediation: + description: Remediation details for the deployment. Optional, but required to calculate failed deployment recovery time. Specify either `id` or `version` to identify the remediation deployment, but not both. + properties: + id: + description: The ID of the remediation deployment. Use this or `version` to identify the remediation deployment, but not both. + example: eG42zNIkVjM + type: string + type: + $ref: "#/components/schemas/DORADeploymentPatchRemediationType" + version: + description: The version of the remediation deployment, matched against the same service and environment as the failed deployment. Use this or `id` to identify the remediation deployment, but not both. + example: v1.2.4 + type: string + type: object + DORADeploymentPatchRemediationType: + description: The type of remediation action taken. Required when the failed deployment must be linked to a remediation deployment. + enum: + - rollback + - rollforward + example: rollback + type: string + x-enum-varnames: + - ROLLBACK + - ROLLFORWARD + DORADeploymentPatchRequest: + description: Request to patch a DORA deployment event. + example: + data: + attributes: + change_failure: true + remediation: + id: "eG42zNIkVjM" + type: "rollback" + id: "z_RwVLi7v4Y" + type: "dora_deployment_patch_request" + properties: + data: + $ref: "#/components/schemas/DORADeploymentPatchRequestData" + required: + - data + type: object + DORADeploymentPatchRequestAttributes: + description: Attributes for patching a DORA deployment event. + properties: + change_failure: + description: Indicates whether the deployment resulted in a change failure. + example: true + type: boolean + remediation: + $ref: "#/components/schemas/DORADeploymentPatchRemediation" + type: object + DORADeploymentPatchRequestData: + description: The JSON:API data for patching a deployment. + example: + attributes: + change_failure: true + remediation: + id: "eG42zNIkVjM" + type: "rollback" + id: "z_RwVLi7v4Y" + type: "dora_deployment_patch_request" + properties: + attributes: + $ref: "#/components/schemas/DORADeploymentPatchRequestAttributes" + id: + description: The ID of the deployment to patch. + example: z_RwVLi7v4Y + type: string + type: + $ref: "#/components/schemas/DORADeploymentPatchRequestDataType" + required: + - type + - id + - attributes + type: object + DORADeploymentPatchRequestDataType: + default: dora_deployment_patch_request + description: JSON:API type for DORA deployment patch request. + enum: + - dora_deployment_patch_request + example: dora_deployment_patch_request + type: string + x-enum-varnames: + - DORA_DEPLOYMENT_PATCH_REQUEST + DORADeploymentRequest: + description: Request to create a DORA deployment event. + properties: + data: + $ref: "#/components/schemas/DORADeploymentRequestData" + required: + - data + type: object + DORADeploymentRequestAttributes: + description: Attributes to create a DORA deployment event. + properties: + custom_tags: + $ref: "#/components/schemas/DORACustomTags" + env: + description: Environment name to where the service was deployed. + example: staging + type: string + finished_at: + description: Unix timestamp when the deployment finished. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491984000000000 + format: int64 + type: integer + git: + $ref: "#/components/schemas/DORAGitInfo" + id: + description: Deployment ID. Must be 16-128 characters and contain only alphanumeric characters, hyphens, underscores, periods, and colons (a-z, A-Z, 0-9, -, _, ., :). + type: string + service: + description: Service name. + example: shopist + type: string + started_at: + description: Unix timestamp when the deployment started. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491974000000000 + format: int64 + type: integer + team: + description: Name of the team owning the deployed service. If not provided, this is automatically populated with the team associated with the service in the Service Catalog. + example: backend + type: string + version: + description: "Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/)." + example: v1.12.07 + type: string + required: + - service + - started_at + - finished_at + type: object + DORADeploymentRequestData: + description: The JSON:API data. + properties: + attributes: + $ref: "#/components/schemas/DORADeploymentRequestAttributes" + required: + - attributes + type: object + DORADeploymentResponse: + description: Response after receiving a DORA deployment event. + properties: + data: + $ref: "#/components/schemas/DORADeploymentResponseData" + required: + - data + type: object + DORADeploymentResponseData: + description: The JSON:API data. + properties: + id: + description: The ID of the received DORA deployment event. + example: 4242fcdd31586083 + type: string + type: + $ref: "#/components/schemas/DORADeploymentType" + required: + - id + type: object + DORADeploymentType: + default: dora_deployment + description: JSON:API type for DORA deployment events. + enum: + - dora_deployment + example: dora_deployment + type: string + x-enum-varnames: + - DORA_DEPLOYMENT + DORADeploymentsListResponse: + description: Response for the list deployments endpoint. + example: + data: + - attributes: + custom_tags: + - "language:java" + - "department:engineering" + - "region:us-east-1" + env: "production" + finished_at: "2023-08-31T14:26:24Z" + git: + commit_sha: "66adc9350f2cc9b250b69abddab733dd55e1a588" + repository_id: "github.com/organization/example-repository" + service: "shopist" + started_at: "2023-08-31T14:26:14Z" + team: "backend" + version: "v1.12.07" + id: "4242fcdd31586083" + type: "dora_deployment" + - attributes: + custom_tags: + - "language:go" + - "department:platform" + env: "production" + finished_at: "2023-08-31T14:28:04Z" + git: + commit_sha: "77bdc9350f2cc9b250b69abddab733dd55e1a599" + repository_id: "github.com/organization/api-service" + service: "api-service" + started_at: "2023-08-31T14:27:54Z" + team: "backend" + version: "v2.1.0" + id: "4242fcdd31586084" + type: "dora_deployment" + properties: + data: + description: The list of DORA deployment events. + items: + $ref: "#/components/schemas/DORADeploymentObject" + type: array + type: object + DORAFailureFetchResponse: + description: Response for fetching a single incident event. + properties: + data: + $ref: "#/components/schemas/DORAIncidentObject" + type: object + DORAFailureRequest: + description: Request to create a DORA incident event. + properties: + data: + $ref: "#/components/schemas/DORAFailureRequestData" + required: + - data + type: object + DORAFailureRequestAttributes: + description: Attributes to create a DORA incident event. + properties: + custom_tags: + $ref: "#/components/schemas/DORACustomTags" + env: + description: Environment name that was impacted by the incident. + example: staging + type: string + finished_at: + description: Unix timestamp when the incident finished. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491984000000000 + format: int64 + type: integer + git: + $ref: "#/components/schemas/DORAGitInfo" + id: + description: Incident ID. Must be 16-128 characters and contain only alphanumeric characters, hyphens, underscores, periods, and colons (a-z, A-Z, 0-9, -, _, ., :). + type: string + name: + description: Incident name. + example: Webserver is down failing all requests. + type: string + services: + description: Service names impacted by the incident. If possible, use names registered in the Service Catalog. Required when the team field is not provided. + example: [shopist] + items: + description: A service name impacted by the incident. + type: string + type: array + severity: + description: Incident severity. + example: High + type: string + started_at: + description: Unix timestamp when the incident started. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491974000000000 + format: int64 + type: integer + team: + description: Name of the team owning the services impacted. If possible, use team handles registered in Datadog. Required when the services field is not provided. + example: backend + type: string + version: + description: "Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/)." + example: v1.12.07 + type: string + required: + - started_at + type: object + DORAFailureRequestData: + description: The JSON:API data. + properties: + attributes: + $ref: "#/components/schemas/DORAFailureRequestAttributes" + required: + - attributes + type: object + DORAFailureResponse: + description: Response after receiving a DORA incident event. + properties: + data: + $ref: "#/components/schemas/DORAFailureResponseData" + required: + - data + type: object + DORAFailureResponseData: + description: Response after receiving a DORA incident event. + properties: + id: + description: The ID of the received DORA incident event. + example: 4242fcdd31586083 + type: string + type: + $ref: "#/components/schemas/DORAFailureType" + required: + - id + type: object + DORAFailureType: + default: dora_failure + description: JSON:API type for DORA incident events. + enum: + - dora_failure + example: dora_failure + type: string + x-enum-varnames: + - DORA_FAILURE + DORAFailuresListResponse: + description: Response for the list incidents endpoint. + example: + data: + - attributes: + custom_tags: + - "incident_type:database" + - "department:engineering" + env: "production" + finished_at: "2023-08-31T14:31:14Z" + name: "Database outage" + services: + - "shopist" + severity: "SEV-1" + started_at: "2023-08-31T14:29:34Z" + team: "backend" + id: "4242fcdd31586085" + type: "dora_incident" + - attributes: + custom_tags: + - "incident_type:service_down" + - "department:platform" + env: "production" + finished_at: "2023-08-31T14:34:34Z" + name: "API service outage" + services: + - "api-service" + - "payment-service" + severity: "SEV-2" + started_at: "2023-08-31T14:32:54Z" + team: "backend" + id: "4242fcdd31586086" + type: "dora_incident" + properties: + data: + description: The list of DORA incident events. + items: + $ref: "#/components/schemas/DORAIncidentObject" + type: array + type: object + DORAGitInfo: + description: "Git info for DORA Metrics events." + properties: + commit_sha: + $ref: "#/components/schemas/GitCommitSHA" + repository_url: + $ref: "#/components/schemas/GitRepositoryURL" + required: + - repository_url + - commit_sha + type: object + DORAGitInfoResponse: + description: "Git info returned by DORA Metrics events." + properties: + commit_sha: + $ref: "#/components/schemas/GitCommitSHA" + repository_id: + $ref: "#/components/schemas/GitRepositoryID" + required: + - repository_id + - commit_sha + type: object + DORAIncidentObject: + description: A DORA incident event. + example: + attributes: + custom_tags: + - "incident_type:database" + - "department:engineering" + env: "production" + finished_at: "2023-08-31T14:31:14Z" + git: + commit_sha: "66adc9350f2cc9b250b69abddab733dd55e1a588" + repository_url: "https://github.com/organization/example-repository" + name: "Database outage" + services: + - "shopist" + severity: "SEV-1" + started_at: "2023-08-31T14:29:34Z" + team: "backend" + id: "4242fcdd31586085" + type: "dora_incident" + properties: + attributes: + $ref: "#/components/schemas/DORAIncidentObjectAttributes" + id: + description: The ID of the incident event. + type: string + type: + $ref: "#/components/schemas/DORAFailureType" + type: object + DORAIncidentObjectAttributes: + description: The attributes of the incident event. + properties: + custom_tags: + $ref: "#/components/schemas/DORACustomTags" + env: + description: Environment name that was impacted by the incident. + example: production + type: string + finished_at: + description: The time when the incident finished. + example: "2023-08-31T14:26:24Z" + format: date-time + type: string + git: + $ref: "#/components/schemas/DORAGitInfo" + name: + description: Incident name. + example: Database outage + type: string + services: + description: Service names impacted by the incident. + example: ["shopist"] + items: + description: A service name impacted by the incident. + type: string + type: array + severity: + description: Incident severity. + example: SEV-1 + type: string + started_at: + description: The time when the incident started. + example: "2023-08-31T14:26:14Z" + format: date-time + type: string + team: + description: Name of the team owning the services impacted. + example: backend + type: string + version: + description: Version to correlate with APM Deployment Tracking. + example: v1.12.07 + type: string + type: object + DORAListDeploymentsRequest: + description: Request to get a list of deployments. + example: + data: + attributes: + from: "2025-01-01T00:00:00Z" + limit: 100 + query: "service:(shopist OR api-service) env:production team:backend" + sort: "-finished_at" + to: "2025-01-31T23:59:59Z" + type: "dora_deployments_list_request" + properties: + data: + $ref: "#/components/schemas/DORAListDeploymentsRequestData" + required: + - data + type: object + DORAListDeploymentsRequestAttributes: + description: Attributes to get a list of deployments. + properties: + from: + description: Minimum timestamp for requested events. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 500 + format: int32 + maximum: 1000 + type: integer + query: + description: Search query with event platform syntax. + example: "service:(shopist OR api-service OR payment-service) env:(production OR staging) team:(backend OR platform)" + type: string + sort: + description: Sort order (prefixed with `-` for descending). + example: "-finished_at" + type: string + to: + description: Maximum timestamp for requested events. + example: "2025-01-31T23:59:59Z" + format: date-time + type: string + type: object + DORAListDeploymentsRequestData: + description: The JSON:API data. + example: + attributes: + from: "2025-01-15T08:00:00Z" + limit: 200 + query: "env:production service:payment-service version:*v2*" + sort: "-finished_at" + to: "2025-01-15T18:00:00Z" + type: "dora_deployments_list_request" + properties: + attributes: + $ref: "#/components/schemas/DORAListDeploymentsRequestAttributes" + type: + $ref: "#/components/schemas/DORAListDeploymentsRequestDataType" + required: + - attributes + type: object + DORAListDeploymentsRequestDataType: + default: dora_deployments_list_request + description: The definition of `DORAListDeploymentsRequestDataType` object. + enum: + - dora_deployments_list_request + example: dora_deployments_list_request + type: string + x-enum-varnames: + - DORA_DEPLOYMENTS_LIST_REQUEST + DORAListFailuresRequest: + description: Request to get a list of incidents. + example: + data: + attributes: + from: "2025-01-01T00:00:00Z" + limit: 100 + query: "severity:(SEV-1 OR SEV-2) env:production team:backend" + sort: "-started_at" + to: "2025-01-31T23:59:59Z" + type: "dora_failures_list_request" + properties: + data: + $ref: "#/components/schemas/DORAListFailuresRequestData" + required: + - data + type: object + DORAListFailuresRequestAttributes: + description: Attributes to get a list of incidents. + properties: + from: + description: Minimum timestamp for requested events. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 500 + format: int32 + maximum: 1000 + type: integer + query: + description: Search query with event platform syntax. + example: "severity:(SEV-1 OR SEV-2) env:(production OR staging) service:(shopist OR api-service OR payment-service) team:(backend OR platform OR payments)" + type: string + sort: + description: Sort order (prefixed with `-` for descending). + example: "-started_at" + type: string + to: + description: Maximum timestamp for requested events. + example: "2025-01-31T23:59:59Z" + format: date-time + type: string + type: object + DORAListFailuresRequestData: + description: The JSON:API data. + example: + attributes: + from: "2025-01-15T00:00:00Z" + limit: 200 + query: "severity:SEV-1 service:(api-service OR payment-service) env:production" + sort: "-finished_at" + to: "2025-01-15T23:59:59Z" + type: "dora_failures_list_request" + properties: + attributes: + $ref: "#/components/schemas/DORAListFailuresRequestAttributes" + type: + $ref: "#/components/schemas/DORAListFailuresRequestDataType" + required: + - attributes + type: object + DORAListFailuresRequestDataType: + default: dora_failures_list_request + description: The definition of `DORAListFailuresRequestDataType` object. + enum: + - dora_failures_list_request + example: dora_failures_list_request + type: string + x-enum-varnames: + - DORA_FAILURES_LIST_REQUEST + DashboardListAddItemsRequest: + description: Request containing a list of dashboards to add. + properties: + dashboards: + description: List of dashboards to add the dashboard list. + items: + $ref: "#/components/schemas/DashboardListItemRequest" + type: array + type: object + DashboardListAddItemsResponse: + description: Response containing a list of added dashboards. + properties: + added_dashboards_to_list: + description: List of dashboards added to the dashboard list. + items: + $ref: "#/components/schemas/DashboardListItemResponse" + type: array + type: object + DashboardListDeleteItemsRequest: + description: Request containing a list of dashboards to delete. + properties: + dashboards: + description: List of dashboards to delete from the dashboard list. + items: + $ref: "#/components/schemas/DashboardListItemRequest" + type: array + type: object + DashboardListDeleteItemsResponse: + description: Response containing a list of deleted dashboards. + properties: + deleted_dashboards_from_list: + description: List of dashboards deleted from the dashboard list. + items: + $ref: "#/components/schemas/DashboardListItemResponse" + type: array + type: object + DashboardListItem: + description: A dashboard within a list. + properties: + author: + $ref: "#/components/schemas/Creator" + created: + description: Date of creation of the dashboard. + format: date-time + readOnly: true + type: string + icon: + description: URL to the icon of the dashboard. + nullable: true + readOnly: true + type: string + id: + description: ID of the dashboard. + example: "q5j-nti-fv6" + type: string + integration_id: + description: The short name of the integration. + nullable: true + readOnly: true + type: string + is_favorite: + description: Whether or not the dashboard is in the favorites. + readOnly: true + type: boolean + is_read_only: + description: Whether or not the dashboard is read only. + readOnly: true + type: boolean + is_shared: + description: Whether the dashboard is publicly shared or not. + readOnly: true + type: boolean + modified: + description: Date of last edition of the dashboard. + format: date-time + readOnly: true + type: string + popularity: + description: Popularity of the dashboard. + format: int32 + maximum: 5 + readOnly: true + type: integer + tags: + description: List of team names representing ownership of a dashboard. + items: + description: The name of a Datadog team, formatted as `team:` + type: string + maxItems: 5 + nullable: true + readOnly: true + type: array + title: + description: Title of the dashboard. + readOnly: true + type: string + type: + $ref: "#/components/schemas/DashboardType" + url: + description: URL path to the dashboard. + readOnly: true + type: string + required: + - type + - id + type: object + DashboardListItemRequest: + description: A dashboard within a list. + properties: + id: + description: ID of the dashboard. + example: "q5j-nti-fv6" + type: string + type: + $ref: "#/components/schemas/DashboardType" + required: + - type + - id + type: object + DashboardListItemResponse: + description: A dashboard within a list. + properties: + id: + description: ID of the dashboard. + example: "q5j-nti-fv6" + readOnly: true + type: string + type: + $ref: "#/components/schemas/DashboardType" + required: + - type + - id + type: object + DashboardListItems: + description: Dashboards within a list. + properties: + dashboards: + description: List of dashboards in the dashboard list. + example: [] + items: + $ref: "#/components/schemas/DashboardListItem" + type: array + total: + description: Number of dashboards in the dashboard list. + format: int64 + readOnly: true + type: integer + required: + - dashboards + type: object + DashboardListUpdateItemsRequest: + description: Request containing the list of dashboards to update to. + properties: + dashboards: + description: List of dashboards to update the dashboard list to. + items: + $ref: "#/components/schemas/DashboardListItemRequest" + type: array + type: object + DashboardListUpdateItemsResponse: + description: Response containing a list of updated dashboards. + properties: + dashboards: + description: List of dashboards in the dashboard list. + items: + $ref: "#/components/schemas/DashboardListItemResponse" + type: array + type: object + DashboardTriggerWrapper: + description: "Schema for a Dashboard-based trigger." + properties: + dashboardTrigger: + description: "Trigger a workflow from a Dashboard." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - dashboardTrigger + type: object + DashboardType: + description: The type of the dashboard. + enum: + - custom_timeboard + - custom_screenboard + - integration_screenboard + - integration_timeboard + - host_timeboard + example: host_timeboard + type: string + x-enum-varnames: + - CUSTOM_TIMEBOARD + - CUSTOM_SCREENBOARD + - INTEGRATION_SCREENBOARD + - INTEGRATION_TIMEBOARD + - HOST_TIMEBOARD + DashboardUsage: + description: A single dashboard usage record. + properties: + attributes: + $ref: "#/components/schemas/DashboardUsageAttributes" + id: + description: The dashboard ID. + example: "q5j-nti-fv6" + type: string + type: + $ref: "#/components/schemas/DashboardUsageType" + required: + - id + - type + - attributes + type: object + DashboardUsageAttributes: + description: Usage statistics for a dashboard. The `viewer` field and all view-count fields (`total_views`, `viewed_at`, `total_views_by_type`) are populated only when Real User Monitoring (RUM) is active for the org. + properties: + author: + $ref: "#/components/schemas/DashboardUsageUser" + created_at: + description: When the dashboard was created. + example: "2026-01-15T09:30:00.000Z" + format: date-time + nullable: true + type: string + dashboard_quality_score: + description: The dashboard quality score, or `null` when no score is available. + example: 0.85 + format: double + nullable: true + type: number + edited_at: + description: When the dashboard was most recently edited. + example: "2026-04-20T11:05:00.000Z" + format: date-time + nullable: true + type: string + org_id: + description: The Datadog organization that owns the dashboard. + example: 100 + format: int64 + type: integer + teams: + description: Teams the dashboard is tagged with. + items: + description: A team handle. + type: string + nullable: true + type: array + title: + description: The dashboard title. + example: My production overview + type: string + total_views: + description: Total view count for the dashboard. Counts only views captured by Real User Monitoring (RUM); `0` in orgs without RUM. + example: 42 + format: int64 + type: integer + total_views_by_type: + additionalProperties: + description: View count for that view type. + format: int64 + type: integer + description: View counts keyed by view type (`in_app`, `embed`, `public`, `shared`, `api`, `unknown`). Counts only views captured by Real User Monitoring (RUM); empty in orgs without RUM. + nullable: true + type: object + viewed_at: + description: When the dashboard was most recently viewed. Populated only when Real User Monitoring (RUM) is active for the org; `null` in orgs without RUM. + example: "2026-05-01T14:22:10.000Z" + format: date-time + nullable: true + type: string + viewer: + $ref: "#/components/schemas/DashboardUsageUser" + widget_count: + description: The total number of widgets on the dashboard. + example: 12 + format: int64 + nullable: true + type: integer + widget_count_by_type: + additionalProperties: + description: Widget count for that widget type. + format: int64 + type: integer + description: Widget counts keyed by widget type. The map includes group widgets and widgets without requests. + nullable: true + type: object + required: + - org_id + type: object + DashboardUsageResponse: + description: Response containing usage statistics for a single dashboard. + properties: + data: + $ref: "#/components/schemas/DashboardUsage" + required: + - data + type: object + DashboardUsageType: + default: dashboards-usages + description: The type of the resource. Always `dashboards-usages`. + enum: + - dashboards-usages + example: dashboards-usages + type: string + x-enum-varnames: + - DASHBOARDS_USAGES + DashboardUsageUser: + description: A user referenced from a dashboard usage record (author or viewer). + nullable: true + properties: + handle: + description: Datadog handle (login) of the user. + example: jane.doe@example.com + type: string + id: + description: The user ID. + example: "00000000-0000-0000-0000-000000000000" + type: string + is_disabled: + description: Whether the user account is disabled. + type: boolean + name: + description: Display name of the user. + example: Jane Doe + type: string + type: object + DataAttributesRulesItemsIfTagExists: + description: The behavior when the tag already exists. + enum: + - append + - do_not_apply + - replace + type: string + x-enum-varnames: + - APPEND + - DO_NOT_APPLY + - REPLACE + DataAttributesRulesItemsMapping: + description: The definition of `DataAttributesRulesItemsMapping` object. + nullable: true + properties: + destination_key: + description: The `mapping` `destination_key`. + example: "" + type: string + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `mapping` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + source_keys: + description: The `mapping` `source_keys`. + example: + - "" + items: + description: A source key for the mapping rule. + type: string + type: array + required: + - destination_key + - source_keys + type: object + DataDeletionResponseItem: + description: The created data deletion request information. + properties: + attributes: + $ref: "#/components/schemas/DataDeletionResponseItemAttributes" + id: + description: The ID of the created data deletion request. + example: "1" + type: string + type: + description: The type of the request created. + example: "deletion_request" + type: string + required: + - id + - type + - attributes + type: object + DataDeletionResponseItemAttributes: + description: Deletion attribute for data deletion response. + properties: + created_at: + description: Creation time of the deletion request. + example: "2024-01-01T00:00:00.000000Z" + type: string + created_by: + description: User who created the deletion request. + example: "test.user@datadoghq.com" + type: string + customer_message: + description: A message for the customer regarding the deletion request, if any. + example: "Your deletion request is being processed." + type: string + displayed_total: + description: Total number of elements to be deleted as displayed to the user. + example: 100 + format: int64 + type: integer + error_category: + description: The category of the error for the deletion request, if any. + example: "validation_error" + type: string + from_time: + description: Start of requested time window, milliseconds since Unix epoch. + example: 1672527600000 + format: int64 + type: integer + indexes: + description: List of indexes for the search. If not provided, the search is performed in all indexes. + example: ["test-index", "test-index-2"] + items: + description: Individual index. + type: string + type: array + is_created: + description: Whether the deletion request is fully created or not. It can take several minutes to fully create a deletion request depending on the target query and timeframe. + example: true + type: boolean + org_id: + description: Organization ID. + example: 321813 + format: int64 + type: integer + product: + description: Product name. + example: "logs" + type: string + query: + description: Query for creating a data deletion request. + example: "service:xyz host:abc" + type: string + starting_at: + description: Starting time of the process to delete the requested data. + example: "2024-01-01T02:00:00.000000Z" + type: string + status: + description: Status of the deletion request. + example: "pending" + type: string + to_time: + description: End of requested time window, milliseconds since Unix epoch. + example: 1704063600000 + format: int64 + type: integer + total_unrestricted: + description: Total number of elements to be deleted. Only the data accessible to the current user that matches the query and timeframe provided will be deleted. + example: 100 + format: int64 + type: integer + updated_at: + description: Update time of the deletion request. + example: "2024-01-01T00:00:00.000000Z" + type: string + required: + - created_at + - created_by + - from_time + - is_created + - org_id + - product + - query + - starting_at + - status + - to_time + - total_unrestricted + - displayed_total + - updated_at + type: object + DataDeletionResponseMeta: + description: The metadata of the data deletion response. + properties: + count_product: + additionalProperties: + format: int64 + type: integer + description: The total deletion requests created by product. + example: {"logs": 8} + type: object + count_status: + additionalProperties: + format: int64 + type: integer + description: The total deletion requests created by status. + example: {"completed": 10, "pending": 5} + type: object + next_page: + description: The next page when searching deletion requests created in the current organization. + example: "cGFnZTI=" + type: string + product: + description: The product of the deletion request. + example: "logs" + type: string + request_status: + description: The status of the executed request. + example: "canceled" + type: string + type: object + DataExportConfig: + description: AWS Cost and Usage Report data export configuration. + properties: + bucket_name: + description: Name of the S3 bucket where the Cost and Usage Report is stored. + example: "billing" + type: string + bucket_region: + description: AWS region of the S3 bucket. + example: "us-east-1" + type: string + report_name: + description: Name of the Cost and Usage Report. + example: "cost-and-usage-report" + type: string + report_prefix: + description: S3 prefix where the Cost and Usage Report is stored. + example: "reports" + type: string + report_type: + description: |- + Type of the Cost and Usage Report. Currently only `CUR2.0` is supported. + example: "CUR2.0" + type: string + required: + - report_name + - report_prefix + - report_type + - bucket_name + - bucket_region + type: object + DataObservabilityMonitorRunStatus: + description: The status of a data observability monitor run. + enum: + - pending + - ok + - warn + - alert + - error + example: pending + type: string + x-enum-varnames: + - PENDING + - OK + - WARN + - ALERT + - ERROR + DataObservabilityMonitorRunType: + default: monitor_run + description: The JSON:API resource type for a data observability monitor run. + enum: + - monitor_run + example: monitor_run + type: string + x-enum-varnames: + - MONITOR_RUN + DataRelationshipsTeams: + description: Associates teams with this schedule in a data structure. + properties: + data: + description: An array of team references for this schedule. + items: + $ref: "#/components/schemas/DataRelationshipsTeamsDataItems" + type: array + type: object + DataRelationshipsTeamsDataItems: + description: |- + Relates a team to this schedule, identified by `id` and `type` (must be `teams`). + properties: + id: + description: The unique identifier of the team in this relationship. + example: "00000000-da3a-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/DataRelationshipsTeamsDataItemsType" + required: + - type + - id + type: object + DataRelationshipsTeamsDataItemsType: + default: teams + description: |- + Teams resource type. + enum: + - teams + example: teams + type: string + x-enum-varnames: + - TEAMS + DataScalarColumn: + description: A column containing the numerical results for a formula or query. + properties: + meta: + $ref: "#/components/schemas/ScalarMeta" + name: + description: The name referencing the formula or query for this column. + example: a + type: string + type: + $ref: "#/components/schemas/ScalarColumnTypeNumber" + values: + description: The array of numerical values for one formula or query. + example: [0.5] + items: + description: An individual value for a given column and group-by. + example: 0.5 + format: double + nullable: true + type: number + type: array + type: object + DataTransform: + description: A data transformer, which is custom JavaScript code that executes and transforms data when its inputs change. + properties: + id: + description: The ID of the data transformer. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + name: + description: A unique identifier for this data transformer. This name is also used to access the transformer's result throughout the app. + example: "combineTwoOrders" + type: string + properties: + $ref: "#/components/schemas/DataTransformProperties" + type: + $ref: "#/components/schemas/DataTransformType" + required: + - id + - name + - type + - properties + type: object + DataTransformProperties: + description: The properties of the data transformer. + properties: + outputs: + description: A JavaScript function that returns the transformed data. + example: "${(() => {return {\n allItems: [...fetchOrder1.outputs.items, ...fetchOrder2.outputs.items],\n}})()}" + type: string + type: object + DataTransformType: + default: dataTransform + description: The data transform type. + enum: + - dataTransform + example: dataTransform + type: string + x-enum-varnames: + - DATATRANSFORM + DatabaseMonitoringTriggerWrapper: + description: "Schema for a Database Monitoring-based trigger." + properties: + databaseMonitoringTrigger: + description: "Trigger a workflow from Database Monitoring." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - databaseMonitoringTrigger + type: object + DatadogAPIKey: + description: The definition of the `DatadogAPIKey` object. + properties: + api_key: + description: The `DatadogAPIKey` `api_key`. + example: "" + type: string + app_key: + description: The `DatadogAPIKey` `app_key`. + example: "" + type: string + datacenter: + description: The `DatadogAPIKey` `datacenter`. + example: "" + type: string + subdomain: + description: Custom subdomain used for Datadog URLs generated with this Connection. For example, if this org uses `https://acme.datadoghq.com` to access Datadog, set this field to `acme`. If this field is omitted, generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). + type: string + type: + $ref: "#/components/schemas/DatadogAPIKeyType" + required: + - type + - datacenter + - api_key + - app_key + type: object + DatadogAPIKeyType: + description: The definition of the `DatadogAPIKey` object. + enum: + - DatadogAPIKey + example: DatadogAPIKey + type: string + x-enum-varnames: + - DATADOGAPIKEY + DatadogAPIKeyUpdate: + description: The definition of the `DatadogAPIKey` object. + properties: + api_key: + description: The `DatadogAPIKeyUpdate` `api_key`. + type: string + app_key: + description: The `DatadogAPIKeyUpdate` `app_key`. + type: string + datacenter: + description: The `DatadogAPIKeyUpdate` `datacenter`. + type: string + subdomain: + description: Custom subdomain used for Datadog URLs generated with this Connection. For example, if this org uses `https://acme.datadoghq.com` to access Datadog, set this field to `acme`. If this field is omitted, generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). + type: string + type: + $ref: "#/components/schemas/DatadogAPIKeyType" + required: + - type + type: object + DatadogCredentials: + description: The definition of the `DatadogCredentials` object. + oneOf: + - $ref: "#/components/schemas/DatadogAPIKey" + DatadogCredentialsUpdate: + description: The definition of the `DatadogCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/DatadogAPIKeyUpdate" + DatadogIntegration: + description: The definition of the `DatadogIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/DatadogCredentials" + type: + $ref: "#/components/schemas/DatadogIntegrationType" + required: + - type + - credentials + type: object + DatadogIntegrationType: + description: The definition of the `DatadogIntegrationType` object. + enum: + - Datadog + example: Datadog + type: string + x-enum-varnames: + - DATADOG + DatadogIntegrationUpdate: + description: The definition of the `DatadogIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/DatadogCredentialsUpdate" + type: + $ref: "#/components/schemas/DatadogIntegrationType" + required: + - type + type: object + DatasetAttributesRequest: + description: Dataset metadata and configurations. + properties: + name: + description: Name of the dataset. + example: "Security Audit Dataset" + type: string + principals: + description: |- + List of access principals, formatted as `principal_type:id`. Principal can be 'team' or 'role'. + example: + - "role:94172442-be03-11e9-a77a-3b7612558ac1" + items: + description: An access principal identifier formatted as `principal_type:id`. + example: "role:94172442-be03-11e9-a77a-3b7612558ac1" + type: string + type: array + product_filters: + description: List of product-specific filters. + items: + $ref: "#/components/schemas/FiltersPerProduct" + type: array + required: + - name + - product_filters + - principals + type: object + DatasetAttributesResponse: + description: Dataset metadata and configuration(s). + properties: + created_at: + description: Timestamp when the dataset was created. + format: date-time + nullable: true + type: string + created_by: + description: Unique ID of the user who created the dataset. + format: uuid + type: string + name: + description: Name of the dataset. + example: "Security Audit Dataset" + type: string + principals: + description: |- + List of access principals, formatted as `principal_type:id`. Principal can be 'team' or 'role'. + example: + - "role:86245fce-0a4e-11f0-92bd-da7ad0900002" + items: + description: An access principal identifier formatted as `principal_type:id`. + example: "role:86245fce-0a4e-11f0-92bd-da7ad0900002" + type: string + type: array + product_filters: + description: List of product-specific filters. + items: + $ref: "#/components/schemas/FiltersPerProduct" + type: array + type: object + DatasetCreateRequest: + description: Create request for a dataset. + properties: + data: + $ref: "#/components/schemas/DatasetRequest" + required: + - data + type: object + DatasetReportScheduleListResponse: + description: Response containing a list of report schedules for a published dataset. + properties: + data: + description: A list of report schedules for the dataset. + items: + $ref: "#/components/schemas/DatasetReportScheduleResponseData" + type: array + included: + description: Related resources included with the report schedules, such as authors. + items: + $ref: "#/components/schemas/ReportScheduleIncludedResource" + type: array + required: + - data + type: object + DatasetReportScheduleResourceType: + description: The type of resource targeted by a dataset report schedule. + enum: + - widget_dataset_list + example: widget_dataset_list + type: string + x-enum-varnames: + - WIDGET_DATASET_LIST + DatasetReportScheduleResponseAttributes: + description: The configuration and derived state of a report schedule for a published dataset. + properties: + cell_id: + description: The identifier of the notebook cell that published the dataset, or `null` if not set. + example: "sevhjcis" + nullable: true + type: string + dataset_id: + description: The identifier of the dataset, or `null` if not set. + example: "MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm" + nullable: true + type: string + description: + description: The description of the report. + example: "This is a scheduled notebook dataset report." + type: string + file_row_limit: + description: The maximum number of rows included in the attached CSV file, or `null` if not set. + example: 5000 + format: int64 + nullable: true + type: integer + inline_row_limit: + description: The maximum number of rows included inline in the email body, or `null` if not set. + example: 10 + format: int64 + nullable: true + type: integer + next_recurrence: + description: |- + The Unix timestamp, in milliseconds, of the next scheduled delivery, or + `null` if none is scheduled. + example: 1725859200000 + format: int64 + nullable: true + type: integer + notebook_id: + description: The identifier of the notebook containing the dataset cell, or `null` if not set. + example: 1 + format: int64 + nullable: true + type: integer + recipients: + description: |- + The recipients of the report (email addresses, Slack channel references, or + Microsoft Teams channel references). + example: + - "test@datadoghq.com" + items: + description: |- + A single recipient (email address, Slack channel reference, or Microsoft + Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the widget containing the dataset. + example: "aaaabbbb-1111-2222-3333-444455556666" + type: string + resource_type: + $ref: "#/components/schemas/DatasetReportScheduleResourceType" + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: "DTSTART;TZID=America/New_York:20240912T090000\nRRULE:FREQ=DAILY;BYHOUR=9;BYMINUTE=0" + type: string + status: + $ref: "#/components/schemas/ReportScheduleStatus" + timeframe: + description: The relative timeframe of data included in the report. + example: "calendar_day" + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: "America/New_York" + type: string + title: + description: The title of the report. + example: "My Cool Dataset Report" + type: string + required: + - status + - resource_id + - resource_type + - recipients + - rrule + - timezone + - title + - description + - timeframe + - file_row_limit + - inline_row_limit + - next_recurrence + - notebook_id + - cell_id + - dataset_id + type: object + DatasetReportScheduleResponseData: + description: The JSON:API data object representing a dataset report schedule. + properties: + attributes: + $ref: "#/components/schemas/DatasetReportScheduleResponseAttributes" + id: + description: The unique identifier of the dataset report schedule. + example: "e1234567-1234-1234-1234-123456789012" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/ReportScheduleResponseRelationships" + type: + $ref: "#/components/schemas/ReportScheduleType" + required: + - id + - type + - attributes + - relationships + type: object + DatasetRequest: + description: |- + **Datasets Object Constraints** + - **Tag limit per dataset**: + - Each restricted dataset supports a maximum of 10 key:value pairs per product. + + - **Tag key rules per telemetry type**: + - Only one tag key or attribute may be used to define access within a single telemetry type. + - The same or different tag key may be used across different telemetry types. + + - **Tag value uniqueness**: + - Tag values must be unique within a single dataset. + - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. + properties: + attributes: + $ref: "#/components/schemas/DatasetAttributesRequest" + type: + $ref: "#/components/schemas/DatasetType" + required: + - type + - attributes + type: object + DatasetResponse: + description: |- + **Datasets Object Constraints** + - **Tag Limit per Dataset**: + - Each restricted dataset supports a maximum of 10 key:value pairs per product. + + - **Tag Key Rules per Telemetry Type**: + - Only one tag key or attribute may be used to define access within a single telemetry type. + - The same or different tag key may be used across different telemetry types. + + - **Tag Value Uniqueness**: + - Tag values must be unique within a single dataset. + - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. + properties: + attributes: + $ref: "#/components/schemas/DatasetAttributesResponse" + id: + description: Unique identifier for the dataset. + example: "123e4567-e89b-12d3-a456-426614174000" + type: string + type: + $ref: "#/components/schemas/DatasetType" + type: object + DatasetResponseMulti: + description: Response containing a list of datasets. + properties: + data: + description: The list of datasets returned in response. + items: + $ref: "#/components/schemas/DatasetResponse" + type: array + type: object + DatasetResponseSingle: + description: Response containing a single dataset object. + properties: + data: + $ref: "#/components/schemas/DatasetResponse" + type: object + DatasetType: + default: dataset + description: Resource type, always set to `dataset`. + enum: + - dataset + example: dataset + type: string + x-enum-varnames: + - DATASET + DatasetUpdateRequest: + description: Edit request for a dataset. + properties: + data: + $ref: "#/components/schemas/DatasetRequest" + required: + - data + type: object + Datastore: + description: A datastore's complete configuration and metadata. + properties: + data: + $ref: "#/components/schemas/DatastoreData" + type: object + DatastoreArray: + description: A collection of datastores returned by list operations. + properties: + data: + description: An array of datastore objects containing their configurations and metadata. + items: + $ref: "#/components/schemas/DatastoreData" + type: array + required: + - data + type: object + DatastoreAttributesPrimaryColumnName: + description: >- + The name of the primary key column for this datastore. Primary column names: + - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm) + - Cannot exceed 63 characters + example: "" + maxLength: 63 + type: string + DatastoreData: + description: Core information about a datastore, including its unique identifier and attributes. + properties: + attributes: + $ref: "#/components/schemas/DatastoreDataAttributes" + id: + description: The unique identifier of the datastore. + type: string + type: + $ref: "#/components/schemas/DatastoreDataType" + required: + - type + type: object + DatastoreDataAttributes: + description: Detailed information about a datastore. + properties: + created_at: + description: Timestamp when the datastore was created. + format: date-time + type: string + creator_user_id: + description: The numeric ID of the user who created the datastore. + format: int64 + type: integer + creator_user_uuid: + description: The UUID of the user who created the datastore. + type: string + description: + description: A human-readable description about the datastore. + type: string + modified_at: + description: Timestamp when the datastore was last modified. + format: date-time + type: string + name: + description: The display name of the datastore. + type: string + org_id: + description: The ID of the organization that owns this datastore. + format: int64 + type: integer + primary_column_name: + $ref: "#/components/schemas/DatastoreAttributesPrimaryColumnName" + primary_key_generation_strategy: + $ref: "#/components/schemas/DatastorePrimaryKeyGenerationStrategy" + type: object + DatastoreDataType: + default: datastores + description: The resource type for datastores. + enum: + - datastores + example: datastores + type: string + x-enum-varnames: + - DATASTORES + DatastoreItemConflictMode: + description: How to handle conflicts when inserting items that already exist in the datastore. + enum: + - fail_on_conflict + - overwrite_on_conflict + example: overwrite_on_conflict + type: string + x-enum-varnames: + - FAIL_ON_CONFLICT + - OVERWRITE_ON_CONFLICT + DatastoreItemValues: + description: An array of items to add to the datastore, where each item is a set of key-value pairs representing the item's data. Up to 100 items can be updated in a single request. + example: + - data: "example data" + key: "value" + - data: "example data2" + key: "value2" + items: + additionalProperties: {} + description: A single item's data as key-value pairs. Key names cannot exceed 63 characters. + type: object + maxItems: 100 + type: array + DatastoreItemsDataType: + default: items + description: The resource type for datastore items. + enum: + - items + example: items + type: string + x-enum-varnames: + - ITEMS + DatastorePrimaryKeyGenerationStrategy: + description: Can be set to `uuid` to automatically generate primary keys when new items are added. Default value is `none`, which requires you to supply a primary key for each new item. + enum: + - none + - uuid + type: string + x-enum-varnames: + - NONE + - UUID + DatastoreTrigger: + description: "Trigger a workflow from a Datastore. For automatic triggering a handle must be configured and the workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + DatastoreTriggerWrapper: + description: "Schema for a Datastore-based trigger." + properties: + datastoreTrigger: + $ref: "#/components/schemas/DatastoreTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - datastoreTrigger + type: object + Date: + description: Date as Unix timestamp in milliseconds. + example: 1722439510282 + format: int64 + type: integer + DdsqlTabularQueryColumn: + description: A single column of a DDSQL tabular query result. + properties: + name: + description: Name of the column as projected by the SQL statement. + example: service + type: string + type: + description: |- + DDSQL data type of the column's values, for example `VARCHAR`, `BIGINT`, + `DECIMAL`, `BOOLEAN`, `TIMESTAMP`, `JSON`, or an array variant such as + `VARCHAR[]`. See the + [DDSQL data-types reference](https://docs.datadoghq.com/ddsql_reference/#data-types) + for the full, up-to-date list. + example: VARCHAR + type: string + values: + description: |- + Column values in row order, one entry per result row. The element type + follows the column's `type`. The following serialization rules should be + taken into account: + + - `BIGINT` values are encoded as JSON numbers in the signed 64-bit integer range. + - `DECIMAL` values are encoded as JSON numbers with 64-bit double precision. + - `TIMESTAMP` and `DATE` values are encoded as Unix-millisecond integers; a + `DATE` resolves to midnight UTC. + - `JSON` values are returned as a JSON-encoded string. + + `null` is allowed for any column type where a value is missing. + example: + - web-store + - checkout + items: {} + type: array + required: + - name + - type + - values + type: object + DdsqlTabularQueryColumns: + description: |- + Column-major result set. Each element carries one column's name, type, and values, + with one value per row of the result. Set when `state` is `completed`. + items: + $ref: "#/components/schemas/DdsqlTabularQueryColumn" + type: array + DdsqlTabularQueryFetchRequest: + description: Wrapper for a DDSQL tabular query fetch request. + properties: + data: + $ref: "#/components/schemas/DdsqlTabularQueryFetchRequestData" + required: + - data + type: object + DdsqlTabularQueryFetchRequestAttributes: + description: Attributes describing which previously submitted DDSQL query to fetch. + properties: + query_id: + description: |- + Opaque token returned by an earlier execute or fetch response that carried + `state: running`. Identifies the query to poll for results. + example: "eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ==" + type: string + required: + - query_id + type: object + DdsqlTabularQueryFetchRequestData: + description: JSON:API resource object for a DDSQL tabular query fetch request. + properties: + attributes: + $ref: "#/components/schemas/DdsqlTabularQueryFetchRequestAttributes" + type: + $ref: "#/components/schemas/DdsqlTabularQueryFetchRequestType" + required: + - type + - attributes + type: object + DdsqlTabularQueryFetchRequestType: + default: ddsql_query_fetch_request + description: JSON:API resource type for a DDSQL tabular query fetch request. + enum: + - ddsql_query_fetch_request + example: ddsql_query_fetch_request + type: string + x-enum-varnames: + - DDSQL_QUERY_FETCH_REQUEST + DdsqlTabularQueryRequest: + description: Wrapper for a DDSQL tabular query execution request. + properties: + data: + $ref: "#/components/schemas/DdsqlTabularQueryRequestData" + required: + - data + type: object + DdsqlTabularQueryRequestAttributes: + description: Attributes describing the DDSQL query to execute. + properties: + query: + description: |- + The DDSQL statement to execute. DDSQL is Datadog's SQL dialect, which is a subset + of PostgreSQL, scoped to Datadog data sources. + example: "SELECT cloud_provider, count(*) FROM dd.hosts group by cloud_provider" + type: string + row_limit: + description: |- + Cap on the number of rows returned. Defaults to 5,000 when omitted. Must be + between 1 and 10,000 inclusive; values outside this range are rejected with 400. + example: 1000 + format: int64 + maximum: 10000 + minimum: 1 + type: integer + time: + $ref: "#/components/schemas/DdsqlTabularQueryTimeWindow" + required: + - query + - time + type: object + DdsqlTabularQueryRequestData: + description: JSON:API resource object for a DDSQL tabular query execution request. + properties: + attributes: + $ref: "#/components/schemas/DdsqlTabularQueryRequestAttributes" + type: + $ref: "#/components/schemas/DdsqlTabularQueryRequestType" + required: + - type + - attributes + type: object + DdsqlTabularQueryRequestType: + default: ddsql_query_request + description: JSON:API resource type for a DDSQL tabular query request. + enum: + - ddsql_query_request + example: ddsql_query_request + type: string + x-enum-varnames: + - DDSQL_QUERY_REQUEST + DdsqlTabularQueryResponse: + description: |- + Response envelope for both the execute and fetch DDSQL tabular query endpoints. + Carries the JSON:API primary resource and a top-level `meta` block with + request-scoped observability handles. + properties: + data: + $ref: "#/components/schemas/DdsqlTabularQueryResponseData" + meta: + $ref: "#/components/schemas/DdsqlTabularQueryResponseMeta" + required: + - data + - meta + type: object + DdsqlTabularQueryResponseAttributes: + description: |- + Attributes of a DDSQL tabular query response. `query_id` is set when + `state` is `running`; `columns` is set when `state` is `completed`. + properties: + columns: + $ref: "#/components/schemas/DdsqlTabularQueryColumns" + query_id: + description: |- + Opaque token to pass to the fetch endpoint to poll for results. + Set when `state` is `running` and absent when `state` is `completed`. + example: "eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ==" + type: string + state: + $ref: "#/components/schemas/DdsqlTabularQueryState" + warnings: + $ref: "#/components/schemas/DdsqlTabularQueryWarnings" + required: + - state + type: object + DdsqlTabularQueryResponseData: + description: JSON:API resource object for a DDSQL tabular query response. + properties: + attributes: + $ref: "#/components/schemas/DdsqlTabularQueryResponseAttributes" + id: + description: Stable identifier for the query response resource. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/DdsqlTabularQueryResponseType" + required: + - id + - type + - attributes + type: object + DdsqlTabularQueryResponseMeta: + description: |- + Top-level JSON:API meta block accompanying every DDSQL tabular query response. + Carries standard observability handles for client-side correlation. + properties: + elapsed: + description: Server-side time spent serving this request, in milliseconds. + example: 87 + format: int64 + type: integer + request_id: + description: |- + Echo of the `DD-Request-ID` header assigned by Datadog's edge to this request, + for support correlation. + example: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082" + type: string + required: + - elapsed + - request_id + type: object + DdsqlTabularQueryResponseType: + default: ddsql_query_response + description: JSON:API resource type for a DDSQL tabular query response. + enum: + - ddsql_query_response + example: ddsql_query_response + type: string + x-enum-varnames: + - DDSQL_QUERY_RESPONSE + DdsqlTabularQueryState: + description: |- + Lifecycle state of a DDSQL tabular query response. + `running` means the query is still executing and the client should poll + the fetch endpoint with the returned `query_id`. `completed` means the + result set is inlined in `columns` and no further polling is required. + enum: + - running + - completed + example: completed + type: string + x-enum-varnames: + - RUNNING + - COMPLETED + DdsqlTabularQueryTimeWindow: + description: |- + Time window scoping the underlying data sources, expressed in Unix milliseconds + since the epoch. Inclusive on `from_timestamp`, exclusive on `to_timestamp`. + Results from static tables (for example, `dd.hosts`) are not affected by the + time window, but the field must still be provided. + properties: + from_timestamp: + description: Start of the query window (inclusive), in Unix milliseconds since the epoch. + example: 1736942400000 + format: int64 + type: integer + to_timestamp: + description: End of the query window (exclusive), in Unix milliseconds since the epoch. + example: 1736946000000 + format: int64 + type: integer + required: + - from_timestamp + - to_timestamp + type: object + DdsqlTabularQueryWarnings: + description: Non-fatal messages emitted by the query engine while serving this response. + items: + description: A single non-fatal warning message. + example: "Query result was truncated at the configured row_limit." + type: string + type: array + DefaultRulesetsPerLanguageData: + description: The primary data object in the default rulesets per language response. + properties: + attributes: + $ref: "#/components/schemas/DefaultRulesetsPerLanguageDataAttributes" + id: + description: The language identifier used as the resource identifier. + example: python + type: string + type: + $ref: "#/components/schemas/DefaultRulesetsPerLanguageDataType" + required: + - id + - type + - attributes + type: object + DefaultRulesetsPerLanguageDataAttributes: + description: The attributes of the default rulesets per language response, containing the list of default ruleset names. + properties: + rulesets: + description: The list of default ruleset names for the specified programming language. + example: + - python-best-practices + items: + type: string + type: array + required: + - rulesets + type: object + DefaultRulesetsPerLanguageDataType: + default: defaultRulesetsPerLanguage + description: Default rulesets per language resource type. + enum: + - defaultRulesetsPerLanguage + example: defaultRulesetsPerLanguage + type: string + x-enum-varnames: + - DEFAULT_RULESETS_PER_LANGUAGE + DefaultRulesetsPerLanguageResponse: + description: The response payload containing the default ruleset names for a programming language. + properties: + data: + $ref: "#/components/schemas/DefaultRulesetsPerLanguageData" + required: + - data + type: object + Degradation: + description: Response object for a single degradation. + properties: + data: + $ref: "#/components/schemas/DegradationData" + included: + description: The included related resources of a degradation. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + type: object + DegradationArray: + description: Response object for a list of degradations. + properties: + data: + description: A list of degradation data objects. + items: + $ref: "#/components/schemas/DegradationData" + type: array + included: + description: The included related resources of a degradation. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + meta: + $ref: "#/components/schemas/PaginationMeta" + required: + - data + type: object + DegradationData: + description: The data object for a degradation. + properties: + attributes: + $ref: "#/components/schemas/DegradationDataAttributes" + id: + description: The ID of the degradation. + format: uuid + type: string + relationships: + $ref: "#/components/schemas/DegradationDataRelationships" + type: + $ref: "#/components/schemas/PatchDegradationRequestDataType" + required: + - type + type: object + DegradationDataAttributes: + description: The attributes of a degradation. + properties: + components_affected: + description: Components affected by the degradation. + items: + $ref: "#/components/schemas/DegradationDataAttributesComponentsAffectedItems" + type: array + created_at: + description: Timestamp of when the degradation was created. + format: date-time + type: string + description: + description: Description of the degradation. + type: string + is_backfilled: + description: Whether the degradation was backfilled. + type: boolean + modified_at: + description: Timestamp of when the degradation was last modified. + format: date-time + type: string + source: + $ref: "#/components/schemas/DegradationDataAttributesSource" + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + title: + description: Title of the degradation. + type: string + updates: + description: Past updates made to the degradation. + items: + $ref: "#/components/schemas/DegradationDataAttributesUpdatesItems" + type: array + type: object + DegradationDataAttributesComponentsAffectedItems: + description: A component affected by a degradation. + properties: + id: + description: The ID of the component. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + required: + - id + - status + type: object + DegradationDataAttributesSource: + description: The source of the degradation. + properties: + created_at: + description: Timestamp of when the source was created. + example: "" + format: date-time + type: string + source_id: + description: The ID of the source. + example: "" + type: string + type: + $ref: "#/components/schemas/DegradationDataAttributesSourceType" + required: + - created_at + - source_id + - type + type: object + DegradationDataAttributesSourceType: + description: The type of the source. + enum: + - incident + example: incident + type: string + x-enum-varnames: + - INCIDENT + DegradationDataAttributesUpdatesItems: + description: A status update recorded during a degradation. + properties: + components_affected: + description: The components affected at the time of the update. + items: + $ref: "#/components/schemas/DegradationDataAttributesUpdatesItemsComponentsAffectedItems" + type: array + created_at: + description: Timestamp of when the update was created. + format: date-time + readOnly: true + type: string + deleted_at: + description: The date and time the resource was deleted. + type: string + deleted_by_user_uuid: + description: UUID of the user who deleted the resource. + type: string + description: + description: Description of the update. + type: string + id: + description: Identifier of the update. + format: uuid + readOnly: true + type: string + last_modified_by_user_uuid: + description: UUID of the user who last modified the resource. + type: string + modified_at: + description: Timestamp of when the update was last modified. + format: date-time + readOnly: true + type: string + started_at: + description: Timestamp of when the update started. + format: date-time + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + type: object + DegradationDataAttributesUpdatesItemsComponentsAffectedItems: + description: A component affected at the time of a degradation update. + properties: + id: + description: Identifier of the component affected at the time of the update. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component affected at the time of the update. + readOnly: true + type: string + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + description: The status of the component affected at the time of the update. + required: + - id + - status + type: object + DegradationDataRelationships: + description: The relationships of a degradation. + properties: + created_by_user: + $ref: "#/components/schemas/DegradationDataRelationshipsCreatedByUser" + description: The Datadog user who created the degradation. + last_modified_by_user: + $ref: "#/components/schemas/DegradationDataRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the degradation. + status_page: + $ref: "#/components/schemas/DegradationDataRelationshipsStatusPage" + description: The status page the degradation belongs to. + template: + $ref: "#/components/schemas/DegradationDataRelationshipsTemplate" + description: The template the degradation was created from. + type: object + DegradationDataRelationshipsCreatedByUser: + description: The Datadog user who created the degradation. + properties: + data: + $ref: "#/components/schemas/DegradationDataRelationshipsCreatedByUserData" + required: + - data + type: object + DegradationDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the degradation. + properties: + id: + description: The ID of the Datadog user who created the degradation. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + DegradationDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the degradation. + properties: + data: + $ref: "#/components/schemas/DegradationDataRelationshipsLastModifiedByUserData" + required: + - data + type: object + DegradationDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the degradation. + properties: + id: + description: The ID of the Datadog user who last modified the degradation. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + DegradationDataRelationshipsStatusPage: + description: The status page the degradation belongs to. + properties: + data: + $ref: "#/components/schemas/DegradationDataRelationshipsStatusPageData" + required: + - data + type: object + DegradationDataRelationshipsStatusPageData: + description: The data object identifying the status page the degradation belongs to. + properties: + id: + description: The ID of the status page. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + DegradationDataRelationshipsTemplate: + description: The template the degradation was created from. + properties: + data: + $ref: "#/components/schemas/DegradationDataRelationshipsTemplateData" + required: + - data + type: object + DegradationDataRelationshipsTemplateData: + description: The data object identifying the template the degradation was created from. + properties: + id: + description: The ID of the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + - id + type: object + DegradationIncluded: + description: An included resource related to a degradation or maintenance. + oneOf: + - $ref: "#/components/schemas/StatusPagesUser" + - $ref: "#/components/schemas/StatusPageAsIncluded" + DegradationRequestMeta: + description: The supported metadata for a degradation request. + properties: + idempotency_key: + description: A unique key used to ensure idempotent requests. + example: 1e6a4b8e-4c2f-4a3d-8f1a-9c7d2e5b6f10 + format: uuid + type: string + type: object + DegradationTemplate: + description: Response object for a single degradation template. + properties: + data: + $ref: "#/components/schemas/DegradationTemplateData" + included: + description: The included related resources of a degradation template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + type: object + DegradationTemplateArray: + description: Response object for a list of degradation templates. + properties: + data: + description: A list of degradation template data objects. + items: + $ref: "#/components/schemas/DegradationTemplateData" + type: array + included: + description: The included related resources of a degradation template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + required: + - data + type: object + DegradationTemplateData: + description: The data object for a degradation template. + properties: + attributes: + $ref: "#/components/schemas/DegradationTemplateDataAttributes" + id: + description: The ID of the degradation template. + type: string + relationships: + $ref: "#/components/schemas/DegradationTemplateDataRelationships" + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + type: object + DegradationTemplateDataAttributes: + description: The attributes of a degradation template. + properties: + components_affected: + description: The components affected by a degradation created from this template. + items: + $ref: "#/components/schemas/DegradationTemplateDataAttributesComponentsAffectedItems" + type: array + created_at: + description: Timestamp of when the degradation template was created. + format: date-time + type: string + degradation_title: + description: The title used for a degradation created from this template. + type: string + modified_at: + description: Timestamp of when the degradation template was last modified. + format: date-time + type: string + name: + description: The name of the degradation template. + type: string + updates: + description: The pre-filled updates for a degradation created from this template. + items: + $ref: "#/components/schemas/DegradationTemplateDataAttributesUpdatesItems" + type: array + type: object + DegradationTemplateDataAttributesComponentsAffectedItems: + description: A component affected by a degradation created from this template. + properties: + id: + description: The ID of the component. + example: "" + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus" + required: + - id + - status + type: object + DegradationTemplateDataAttributesUpdatesItems: + description: A pre-filled update for a degradation created from this template. + properties: + message: + description: The message of the update. + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + required: + - status + type: object + DegradationTemplateDataRelationships: + description: The relationships of a degradation template. + properties: + created_by_user: + $ref: "#/components/schemas/DegradationTemplateDataRelationshipsCreatedByUser" + description: The Datadog user who created the degradation template. + last_modified_by_user: + $ref: "#/components/schemas/DegradationTemplateDataRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the degradation template. + status_page: + $ref: "#/components/schemas/DegradationTemplateDataRelationshipsStatusPage" + description: The status page the degradation template belongs to. + type: object + DegradationTemplateDataRelationshipsCreatedByUser: + description: The Datadog user who created the degradation template. + properties: + data: + $ref: "#/components/schemas/DegradationTemplateDataRelationshipsCreatedByUserData" + required: + - data + type: object + DegradationTemplateDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the degradation template. + properties: + id: + description: The ID of the Datadog user who created the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + DegradationTemplateDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the degradation template. + properties: + data: + $ref: "#/components/schemas/DegradationTemplateDataRelationshipsLastModifiedByUserData" + required: + - data + type: object + DegradationTemplateDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the degradation template. + properties: + id: + description: The ID of the Datadog user who last modified the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + DegradationTemplateDataRelationshipsStatusPage: + description: The status page the degradation template belongs to. + properties: + data: + $ref: "#/components/schemas/DegradationTemplateDataRelationshipsStatusPageData" + required: + - data + type: object + DegradationTemplateDataRelationshipsStatusPageData: + description: The data object identifying the status page associated with a degradation template. + properties: + id: + description: The ID of the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + DegradationUpdate: + description: Response object for a degradation update. + properties: + data: + $ref: "#/components/schemas/DegradationUpdateData" + included: + description: Resources related to the degradation update. + items: + $ref: "#/components/schemas/DegradationUpdateIncluded" + type: array + type: object + DegradationUpdateData: + description: The data object for a degradation update. + properties: + attributes: + $ref: "#/components/schemas/DegradationUpdateDataAttributes" + id: + description: The ID of the degradation update. + type: string + relationships: + $ref: "#/components/schemas/DegradationUpdateDataRelationships" + type: + $ref: "#/components/schemas/PatchDegradationUpdateRequestDataType" + required: + - type + type: object + DegradationUpdateDataAttributes: + description: Attributes of a degradation update resource. + properties: + components_affected: + description: Components affected by this update. + items: + $ref: "#/components/schemas/DegradationUpdateDataAttributesComponentsAffectedItems" + type: array + created_at: + description: The date and time the update was created. + format: date-time + type: string + deleted_at: + description: The date and time the update was soft-deleted. + format: date-time + type: string + description: + description: The message body of the update. + type: string + modified_at: + description: The date and time the update was last modified. + format: date-time + type: string + started_at: + description: The date and time the update started. + format: date-time + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + type: object + DegradationUpdateDataAttributesComponentsAffectedItems: + description: A component affected by a degradation update. + properties: + id: + description: The ID of the affected component. + example: "" + type: string + name: + description: The name of the affected component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + required: + - id + - status + type: object + DegradationUpdateDataRelationships: + description: Relationships of a degradation update resource. + properties: + created_by_user: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsUser" + degradation: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsDegradation" + deleted_by_user: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsUser" + last_modified_by_user: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsUser" + status_page: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsStatusPage" + type: object + DegradationUpdateDataRelationshipsDegradation: + description: The degradation relationship of a degradation update. + properties: + data: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsDegradationData" + required: + - data + type: object + DegradationUpdateDataRelationshipsDegradationData: + description: The degradation linked to a degradation update. + properties: + id: + description: The ID of the degradation. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchDegradationRequestDataType" + required: + - type + - id + type: object + DegradationUpdateDataRelationshipsStatusPage: + description: The status page relationship of a degradation update. + properties: + data: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsStatusPageData" + required: + - data + type: object + DegradationUpdateDataRelationshipsStatusPageData: + description: The status page linked to a degradation update. + properties: + id: + description: The ID of the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + DegradationUpdateDataRelationshipsUser: + description: A user relationship of a degradation update. + properties: + data: + $ref: "#/components/schemas/DegradationUpdateDataRelationshipsUserData" + required: + - data + type: object + DegradationUpdateDataRelationshipsUserData: + description: A Datadog user linked to a degradation update. + properties: + id: + description: The ID of the user. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + DegradationUpdateIncluded: + description: Resources included in a degradation update response. + oneOf: + - $ref: "#/components/schemas/StatusPagesUser" + - $ref: "#/components/schemas/Degradation" + - $ref: "#/components/schemas/StatusPageAsIncluded" + DeleteAppResponse: + description: The response object after an app is successfully deleted. + properties: + data: + $ref: "#/components/schemas/DeleteAppResponseData" + type: object + DeleteAppResponseData: + description: The definition of `DeleteAppResponseData` object. + properties: + id: + description: The ID of the deleted app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + type: object + DeleteAppsDatastoreItemRequest: + description: Request to delete a specific item from a datastore by its primary key. + properties: + data: + $ref: "#/components/schemas/DeleteAppsDatastoreItemRequestData" + type: object + DeleteAppsDatastoreItemRequestData: + description: Data wrapper containing the information needed to identify and delete a specific datastore item. + properties: + attributes: + $ref: "#/components/schemas/DeleteAppsDatastoreItemRequestDataAttributes" + type: + $ref: "#/components/schemas/DatastoreItemsDataType" + required: + - type + type: object + DeleteAppsDatastoreItemRequestDataAttributes: + description: Attributes specifying which datastore item to delete by its primary key. + properties: + id: + description: Optional unique identifier of the item to delete. + example: "a7656bcc-51d4-4884-adf7-4d0d9a3e0633" + type: string + item_key: + description: The primary key value that identifies the item to delete. Cannot exceed 256 characters. + example: "primaryKey" + maxLength: 256 + type: string + required: + - item_key + type: object + DeleteAppsDatastoreItemResponse: + description: Response from successfully deleting a datastore item. + properties: + data: + $ref: "#/components/schemas/DeleteAppsDatastoreItemResponseData" + type: object + DeleteAppsDatastoreItemResponseArray: + description: The definition of `DeleteAppsDatastoreItemResponseArray` object. + properties: + data: + description: The `DeleteAppsDatastoreItemResponseArray` `data`. + items: + $ref: "#/components/schemas/DeleteAppsDatastoreItemResponseData" + type: array + required: + - data + type: object + DeleteAppsDatastoreItemResponseData: + description: Data containing the identifier of the datastore item that was successfully deleted. + properties: + id: + description: The unique identifier of the item that was deleted. + type: string + type: + $ref: "#/components/schemas/DatastoreItemsDataType" + required: + - type + type: object + DeleteAppsRequest: + description: A request object for deleting multiple apps by ID. + example: + data: + - id: aea2ed17-b45f-40d0-ba59-c86b7972c901 + type: appDefinitions + - id: f69bb8be-6168-4fe7-a30d-370256b6504a + type: appDefinitions + - id: ab1ed73e-13ad-4426-b0df-a0ff8876a088 + type: appDefinitions + properties: + data: + description: An array of objects containing the IDs of the apps to delete. + items: + $ref: "#/components/schemas/DeleteAppsRequestDataItems" + type: array + type: object + DeleteAppsRequestDataItems: + description: An object containing the ID of an app to delete. + properties: + id: + description: The ID of the app to delete. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + type: object + DeleteAppsResponse: + description: The response object after multiple apps are successfully deleted. + properties: + data: + description: An array of objects containing the IDs of the deleted apps. + items: + $ref: "#/components/schemas/DeleteAppsResponseDataItems" + type: array + type: object + DeleteAppsResponseDataItems: + description: An object containing the ID of a deleted app. + properties: + id: + description: The ID of the deleted app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + type: object + DeleteCustomFrameworkResponse: + description: Response object to delete a custom framework. + properties: + data: + $ref: "#/components/schemas/CustomFrameworkMetadata" + required: + - data + type: object + DeleteFormData: + description: The data returned when a form is deleted. + properties: + id: + description: The ID of the deleted form. + example: 844dfd88-aa84-4db4-8979-e7bdbb9c1dc3 + format: uuid + type: string + type: + $ref: "#/components/schemas/FormType" + required: + - id + - type + type: object + DeleteFormResponse: + description: A response returned after deleting a form. + properties: + data: + $ref: "#/components/schemas/DeleteFormData" + type: object + DeletedSuiteResponseData: + description: Data object for a deleted Synthetic test suite. + properties: + attributes: + $ref: "#/components/schemas/DeletedSuiteResponseDataAttributes" + id: + description: The public ID of the deleted Synthetic test suite. + type: string + type: + $ref: "#/components/schemas/SyntheticsSuiteTypes" + type: object + DeletedSuiteResponseDataAttributes: + description: Attributes of a deleted Synthetic test suite, including deletion timestamp and public ID. + properties: + deleted_at: + description: Deletion timestamp of the Synthetic suite ID. + type: string + public_id: + description: The Synthetic suite ID deleted. + type: string + type: object + DeletedSuitesRequestDelete: + description: Data object for a bulk delete Synthetic test suites request. + properties: + attributes: + $ref: "#/components/schemas/DeletedSuitesRequestDeleteAttributes" + id: + description: An optional identifier for the delete request. + type: string + type: + $ref: "#/components/schemas/DeletedSuitesRequestType" + required: + - attributes + type: object + DeletedSuitesRequestDeleteAttributes: + description: Attributes for a bulk delete Synthetic test suites request. + properties: + force_delete_dependencies: + description: Whether to force deletion of suites that have dependent resources. + type: boolean + public_ids: + description: List of public IDs of the Synthetic test suites to delete. + example: + - "" + items: + description: The public ID of a Synthetic test suite to delete. + type: string + type: array + required: + - public_ids + type: object + DeletedSuitesRequestDeleteRequest: + description: Request body for bulk deleting Synthetic test suites. + properties: + data: + $ref: "#/components/schemas/DeletedSuitesRequestDelete" + required: + - data + type: object + DeletedSuitesRequestType: + default: delete_suites_request + description: Type for the bulk delete Synthetic suites request, `delete_suites_request`. + enum: + - delete_suites_request + example: delete_suites_request + type: string + x-enum-varnames: + - DELETE_SUITES_REQUEST + DeletedSuitesResponse: + description: Response containing the list of deleted Synthetic test suites. + properties: + data: + description: List of deleted Synthetic suite data objects. + items: + $ref: "#/components/schemas/DeletedSuiteResponseData" + type: array + type: object + DeletedTestResponseData: + description: Data object for a deleted Synthetic test. + properties: + attributes: + $ref: "#/components/schemas/DeletedTestResponseDataAttributes" + id: + description: The public ID of the deleted Synthetic test. + type: string + type: + $ref: "#/components/schemas/DeletedTestsResponseType" + type: object + DeletedTestResponseDataAttributes: + description: Attributes of a deleted Synthetic test, including deletion timestamp and public ID. + properties: + deleted_at: + description: Deletion timestamp of the Synthetic test ID. + type: string + public_id: + description: The Synthetic test ID deleted. + type: string + type: object + DeletedTestsRequestDelete: + description: Data object for a bulk delete Synthetic tests request. + properties: + attributes: + $ref: "#/components/schemas/DeletedTestsRequestDeleteAttributes" + id: + description: An optional identifier for the delete request. + type: string + type: + $ref: "#/components/schemas/DeletedTestsRequestType" + required: + - attributes + type: object + DeletedTestsRequestDeleteAttributes: + description: Attributes for a bulk delete Synthetic tests request. + properties: + force_delete_dependencies: + description: Whether to force deletion of tests that have dependent resources. + type: boolean + public_ids: + description: List of public IDs of the Synthetic tests to delete. + example: + - abc-def-123 + items: + description: The public ID of a Synthetic test to delete. + type: string + type: array + required: + - public_ids + type: object + DeletedTestsRequestDeleteRequest: + description: Request body for bulk deleting Synthetic tests. + properties: + data: + $ref: "#/components/schemas/DeletedTestsRequestDelete" + required: + - data + type: object + DeletedTestsRequestType: + default: delete_tests_request + description: Type for the bulk delete Synthetic tests request, `delete_tests_request`. + enum: + - delete_tests_request + example: delete_tests_request + type: string + x-enum-varnames: + - DELETE_TESTS_REQUEST + DeletedTestsResponse: + description: Response containing the list of deleted Synthetic tests. + properties: + data: + description: List of deleted Synthetic test data objects. + items: + $ref: "#/components/schemas/DeletedTestResponseData" + type: array + type: object + DeletedTestsResponseType: + default: delete_tests + description: Type for the bulk delete Synthetic tests response, `delete_tests`. + enum: + - delete_tests + example: delete_tests + type: string + x-enum-varnames: + - DELETE_TESTS + DependencyLocation: + description: Static library vulnerability location. + properties: + column_end: + description: Location column end. + example: 140 + format: int64 + type: integer + column_start: + description: Location column start. + example: 5 + format: int64 + type: integer + file_name: + description: Location file name. + example: src/go.mod + type: string + line_end: + description: Location line end. + example: 10 + format: int64 + type: integer + line_start: + description: Location line start. + example: 1 + format: int64 + type: integer + required: + - file_name + - line_start + - line_end + - column_start + - column_end + type: object + Deployment: + description: The version of the app that was published. + properties: + attributes: + $ref: "#/components/schemas/DeploymentAttributes" + id: + description: The deployment ID. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + meta: + $ref: "#/components/schemas/DeploymentMetadata" + type: + $ref: "#/components/schemas/AppDeploymentType" + type: object + DeploymentAttributes: + description: The attributes object containing the version ID of the published app. + properties: + app_version_id: + description: The version ID of the app that was published. For an unpublished app, this is always the nil UUID (`00000000-0000-0000-0000-000000000000`). + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: object + DeploymentGateDataType: + description: Deployment gate resource type. + enum: + - deployment_gate + example: deployment_gate + type: string + x-enum-varnames: + - DEPLOYMENT_GATE + DeploymentGateResponse: + description: Response for a deployment gate. + properties: + data: + $ref: "#/components/schemas/DeploymentGateResponseData" + type: object + DeploymentGateResponseData: + description: Data for a deployment gate. + properties: + attributes: + $ref: "#/components/schemas/DeploymentGateResponseDataAttributes" + id: + description: Unique identifier of the deployment gate. + example: "1111-2222-3333-4444-555566667777" + type: string + type: + $ref: "#/components/schemas/DeploymentGateDataType" + required: + - type + - attributes + - id + type: object + DeploymentGateResponseDataAttributes: + description: Basic information about a deployment gate. + properties: + created_at: + description: The timestamp when the deployment gate was created. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + created_by: + $ref: "#/components/schemas/DeploymentGateResponseDataAttributesCreatedBy" + dry_run: + description: Whether this gate is run in dry-run mode. + example: false + type: boolean + env: + description: The environment of the deployment gate. + example: "production" + type: string + identifier: + description: The identifier of the deployment gate. + example: "pre" + type: string + service: + description: The service of the deployment gate. + example: "my-service" + type: string + updated_at: + description: The timestamp when the deployment gate was last updated. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + updated_by: + $ref: "#/components/schemas/DeploymentGateResponseDataAttributesUpdatedBy" + required: + - created_at + - created_by + - dry_run + - env + - identifier + - service + type: object + DeploymentGateResponseDataAttributesCreatedBy: + description: Information about the user who created the deployment gate. + properties: + handle: + description: The handle of the user who created the deployment rule. + example: "test-user" + type: string + id: + description: The ID of the user who created the deployment rule. + example: "1111-2222-3333-4444-555566667777" + type: string + name: + description: The name of the user who created the deployment rule. + example: "Test User" + type: string + required: + - id + type: object + DeploymentGateResponseDataAttributesUpdatedBy: + description: Information about the user who updated the deployment gate. + properties: + handle: + description: The handle of the user who updated the deployment rule. + example: "test-user" + type: string + id: + description: The ID of the user who updated the deployment rule. + example: "1111-2222-3333-4444-555566667777" + type: string + name: + description: The name of the user who updated the deployment rule. + example: "Test User" + type: string + required: + - id + type: object + DeploymentGateRulesResponse: + description: Response for a deployment gate rules. + properties: + data: + $ref: "#/components/schemas/ListDeploymentRuleResponseData" + type: object + DeploymentGatesEvaluationConfiguration: + description: |- + Inline rule definitions for a deployment gate evaluation. When provided, rules are evaluated + directly from this configuration instead of using the preconfigured gate rules. + At least one rule is required. + properties: + dry_run: + description: Gate-level dry run. When enabled, the rules are evaluated normally but the gate always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + rules: + description: The list of rules to evaluate. At least one rule is required. + items: + $ref: "#/components/schemas/DeploymentGatesEvaluationRule" + minItems: 1 + type: array + required: + - rules + type: object + DeploymentGatesEvaluationRequest: + description: Request body for triggering a deployment gate evaluation. + properties: + data: + $ref: "#/components/schemas/DeploymentGatesEvaluationRequestData" + required: + - data + type: object + DeploymentGatesEvaluationRequestAttributes: + description: |- + Attributes for a deployment gate evaluation request. + When `configuration` is provided, rules are evaluated inline from that configuration. + When omitted, rules are resolved from the preconfigured gate for the given service and environment. + properties: + configuration: + $ref: "#/components/schemas/DeploymentGatesEvaluationConfiguration" + env: + description: The environment of the deployment. + example: "staging" + type: string + identifier: + default: default + description: The identifier of the deployment gate. Defaults to "default". + example: "pre-deploy" + type: string + primary_tag: + description: A primary tag to scope APM Faulty Deployment Detection rules. + example: "region:us-east-1" + type: string + service: + description: The service being deployed. + example: "transaction-backend" + type: string + version: + description: The version of the deployment. Required for APM Faulty Deployment Detection rules. + example: "v1.2.3" + type: string + required: + - env + - service + type: object + DeploymentGatesEvaluationRequestData: + description: Data for a deployment gate evaluation request. + properties: + attributes: + $ref: "#/components/schemas/DeploymentGatesEvaluationRequestAttributes" + type: + $ref: "#/components/schemas/DeploymentGatesEvaluationRequestDataType" + required: + - type + - attributes + type: object + DeploymentGatesEvaluationRequestDataType: + default: deployment_gates_evaluation_request + description: JSON:API type for a deployment gate evaluation request. + enum: + - deployment_gates_evaluation_request + example: deployment_gates_evaluation_request + type: string + x-enum-varnames: + - DEPLOYMENT_GATES_EVALUATION_REQUEST + DeploymentGatesEvaluationResponse: + description: Response for a deployment gate evaluation request. + properties: + data: + $ref: "#/components/schemas/DeploymentGatesEvaluationResponseData" + type: object + DeploymentGatesEvaluationResponseAttributes: + description: Attributes for a deployment gate evaluation response. + properties: + evaluation_id: + description: The unique identifier of the gate evaluation. + example: "e9d2f04f-4f4b-494b-86e5-52f03e10c8e9" + type: string + required: + - evaluation_id + type: object + DeploymentGatesEvaluationResponseData: + description: Data for a deployment gate evaluation response. + properties: + attributes: + $ref: "#/components/schemas/DeploymentGatesEvaluationResponseAttributes" + id: + description: The unique identifier of the evaluation response. + example: "e9d2f04f-4f4b-494b-86e5-52f03e10c8e9" + format: uuid + type: string + type: + $ref: "#/components/schemas/DeploymentGatesEvaluationResponseDataType" + required: + - type + - attributes + - id + type: object + DeploymentGatesEvaluationResponseDataType: + default: deployment_gates_evaluation_response + description: JSON:API type for a deployment gate evaluation response. + enum: + - deployment_gates_evaluation_response + example: deployment_gates_evaluation_response + type: string + x-enum-varnames: + - DEPLOYMENT_GATES_EVALUATION_RESPONSE + DeploymentGatesEvaluationResultResponse: + description: Response containing the result of a deployment gate evaluation. + properties: + data: + $ref: "#/components/schemas/DeploymentGatesEvaluationResultResponseData" + type: object + DeploymentGatesEvaluationResultResponseAttributes: + description: Attributes for a deployment gate evaluation result response. + properties: + dry_run: + description: Whether the gate was evaluated in dry-run mode. + example: false + type: boolean + evaluation_id: + description: The unique identifier of the gate evaluation. + example: "e9d2f04f-4f4b-494b-86e5-52f03e10c8e9" + type: string + evaluation_url: + description: A URL to view the evaluation details in the Datadog UI. + example: "https://app.datadoghq.com/ci/deployment-gates/evaluations?index=cdgates&query=level%3Agate+%40evaluation_id%3Ae9d2f04f-4f4b-494b-86e5-52f03e10c8e9" + type: string + gate_id: + description: The unique identifier of the deployment gate. + example: "e140302e-0cba-40d2-978c-6780647f8f1c" + format: uuid + type: string + gate_status: + $ref: "#/components/schemas/DeploymentGatesEvaluationResultResponseAttributesGateStatus" + rules: + description: The results of individual rule evaluations. + items: + $ref: "#/components/schemas/DeploymentGatesRuleResponse" + type: array + required: + - dry_run + - evaluation_id + - evaluation_url + - gate_id + - gate_status + - rules + type: object + DeploymentGatesEvaluationResultResponseAttributesGateStatus: + description: |- + The overall status of the gate evaluation. + - `in_progress`: The evaluation is still running. + - `pass`: All rules passed successfully and the deployment is allowed to proceed. + - `fail`: One or more rules did not pass; the deployment should not proceed. + enum: + - in_progress + - pass + - fail + example: "pass" + type: string + x-enum-varnames: + - IN_PROGRESS + - PASS + - FAIL + DeploymentGatesEvaluationResultResponseData: + description: Data for a deployment gate evaluation result response. + properties: + attributes: + $ref: "#/components/schemas/DeploymentGatesEvaluationResultResponseAttributes" + id: + description: The unique identifier of the evaluation. + example: "e9d2f04f-4f4b-494b-86e5-52f03e10c8e9" + type: string + type: + $ref: "#/components/schemas/DeploymentGatesEvaluationResultResponseDataType" + required: + - type + - attributes + - id + type: object + DeploymentGatesEvaluationResultResponseDataType: + default: deployment_gates_evaluation_result_response + description: JSON:API type for a deployment gate evaluation result response. + enum: + - deployment_gates_evaluation_result_response + example: deployment_gates_evaluation_result_response + type: string + x-enum-varnames: + - DEPLOYMENT_GATES_EVALUATION_RESULT_RESPONSE + DeploymentGatesEvaluationRule: + description: A rule to evaluate as part of a deployment gate evaluation. + discriminator: + mapping: + faulty_deployment_detection: "#/components/schemas/DeploymentGatesFDDRule" + monitor: "#/components/schemas/DeploymentGatesMonitorRule" + propertyName: type + oneOf: + - $ref: "#/components/schemas/DeploymentGatesMonitorRule" + - $ref: "#/components/schemas/DeploymentGatesFDDRule" + DeploymentGatesFDDRule: + description: A faulty deployment detection rule to evaluate as part of a deployment gate evaluation. + properties: + dry_run: + description: Rule-level dry run. When enabled, the rule is evaluated normally but it always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + name: + description: Human-readable name for this rule. + example: "apm faulty deployment" + type: string + options: + $ref: "#/components/schemas/DeploymentGatesFDDRuleOptions" + type: + $ref: "#/components/schemas/DeploymentGatesFDDRuleType" + required: + - type + - name + type: object + DeploymentGatesFDDRuleOptions: + description: Options for a `faulty_deployment_detection` rule. + properties: + allowed_resources: + description: APM resource names to include in analysis. Mutually exclusive with `excluded_resources`. + example: + - "GET /healthcheck" + items: + type: string + type: array + duration: + description: Evaluation window in seconds. Maximum 7200 (2 hours). + example: 900 + format: int64 + maximum: 7200 + type: integer + excluded_resources: + description: APM resource names to exclude from analysis. + example: + - "GET /healthcheck" + items: + type: string + type: array + type: object + DeploymentGatesFDDRuleType: + description: The type identifier for a faulty deployment detection rule. + enum: + - faulty_deployment_detection + example: faulty_deployment_detection + type: string + x-enum-varnames: + - FAULTY_DEPLOYMENT_DETECTION + DeploymentGatesListResponse: + description: Response containing a paginated list of deployment gates. + properties: + data: + description: Array of deployment gates. + items: + $ref: "#/components/schemas/DeploymentGateResponseData" + type: array + meta: + $ref: "#/components/schemas/DeploymentGatesListResponseMeta" + type: object + DeploymentGatesListResponseMeta: + description: Metadata for a list of deployment gates response. + properties: + page: + $ref: "#/components/schemas/DeploymentGatesListResponseMetaPage" + type: object + DeploymentGatesListResponseMetaPage: + description: Pagination information for a list of deployment gates. + properties: + cursor: + description: The cursor used for the current page. + type: string + next_cursor: + description: The cursor to use to fetch the next page. This is absent when there are no more pages. + type: string + size: + default: 50 + description: The number of results per page. + format: int64 + maximum: 1000 + minimum: 1 + type: integer + type: object + DeploymentGatesMonitorRule: + description: A monitor rule to evaluate as part of a deployment gate evaluation. + properties: + dry_run: + description: Rule-level dry run. When enabled, the rule is evaluated normally but always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + name: + description: Human-readable name for this rule. + example: "error rate monitors" + type: string + options: + $ref: "#/components/schemas/DeploymentGatesMonitorRuleOptions" + type: + $ref: "#/components/schemas/DeploymentGatesMonitorRuleType" + required: + - type + - name + type: object + DeploymentGatesMonitorRuleOptions: + description: Options for a `monitor` rule. + properties: + duration: + description: Evaluation window in seconds. Maximum 7200 (2 hours). + example: 300 + format: int64 + maximum: 7200 + type: integer + query: + description: Monitor search query. + example: "service:transaction-backend env:production" + type: string + required: + - query + type: object + DeploymentGatesMonitorRuleType: + description: The type identifier for a monitor rule. + enum: + - monitor + example: monitor + type: string + x-enum-varnames: + - MONITOR + DeploymentGatesRuleResponse: + description: The result of a single rule evaluation. + properties: + dry_run: + description: Whether this rule was evaluated in dry-run mode. + example: false + type: boolean + name: + description: The name of the rule. + example: "Check service monitors" + type: string + reason: + description: The reason for the rule result, if applicable. + example: "One or more monitors in ALERT state" + type: string + status: + $ref: "#/components/schemas/DeploymentGatesEvaluationResultResponseAttributesGateStatus" + type: object + DeploymentMetadata: + description: Metadata object containing the publication creation information. + properties: + created_at: + description: Timestamp of when the app was published. + format: date-time + type: string + user_id: + description: The ID of the user who published the app. + format: int64 + type: integer + user_name: + description: The name (or email address) of the user who published the app. + type: string + user_uuid: + description: The UUID of the user who published the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: object + DeploymentRelationship: + description: Information pointing to the app's publication status. + properties: + data: + $ref: "#/components/schemas/DeploymentRelationshipData" + meta: + $ref: "#/components/schemas/DeploymentMetadata" + type: object + DeploymentRelationshipData: + description: Data object containing the deployment ID. + properties: + id: + description: The deployment ID. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDeploymentType" + type: object + DeploymentRuleDataType: + description: Deployment rule resource type. + enum: + - deployment_rule + example: deployment_rule + type: string + x-enum-varnames: + - DEPLOYMENT_RULE + DeploymentRuleOptionsFaultyDeploymentDetection: + additionalProperties: false + description: Faulty deployment detection options for deployment rules. + properties: + allowed_resources: + description: Resources to include in faulty deployment detection. Mutually exclusive with `excluded_resources`. + example: ["resource1", "resource2"] + items: + description: A resource name to include in faulty deployment detection. + type: string + type: array + duration: + description: The duration for faulty deployment detection. + example: 3600 + format: int64 + type: integer + excluded_resources: + description: Resources to exclude from faulty deployment detection. + example: ["resource1", "resource2"] + items: + description: A resource name to exclude from faulty deployment detection. + type: string + type: array + type: object + DeploymentRuleOptionsMonitor: + additionalProperties: false + description: Monitor options for deployment rules. + properties: + duration: + description: Seconds the monitor needs to stay in OK status for the rule to pass. + example: 3600 + format: int64 + type: integer + query: + description: Monitors that match this query are evaluated. + example: "service:my-service env:prod" + type: string + required: + - query + type: object + DeploymentRuleResponse: + description: Response for a deployment rule. + properties: + data: + $ref: "#/components/schemas/DeploymentRuleResponseData" + type: object + DeploymentRuleResponseData: + description: Data for a deployment rule. + properties: + attributes: + $ref: "#/components/schemas/DeploymentRuleResponseDataAttributes" + id: + description: Unique identifier of the deployment rule. + example: "1111-2222-3333-4444-555566667777" + type: string + type: + $ref: "#/components/schemas/DeploymentRuleDataType" + required: + - type + - attributes + - id + type: object + DeploymentRuleResponseDataAttributes: + description: Basic information about a deployment rule. + properties: + created_at: + description: The timestamp when the deployment rule was created. + example: "2021-01-01T00:00:00Z" + format: date-time + type: string + created_by: + $ref: "#/components/schemas/DeploymentRuleResponseDataAttributesCreatedBy" + dry_run: + description: Whether this rule is run in dry-run mode. + example: false + type: boolean + gate_id: + description: The ID of the deployment gate. + example: "1111-2222-3333-4444-555566667777" + type: string + name: + description: The name of the deployment rule. + example: "My deployment rule" + type: string + options: + $ref: "#/components/schemas/DeploymentRulesOptions" + type: + $ref: "#/components/schemas/DeploymentRuleResponseDataAttributesType" + updated_at: + description: The timestamp when the deployment rule was last updated. + format: date-time + type: string + updated_by: + $ref: "#/components/schemas/DeploymentRuleResponseDataAttributesUpdatedBy" + required: + - created_at + - created_by + - dry_run + - gate_id + - name + - options + - type + type: object + DeploymentRuleResponseDataAttributesCreatedBy: + description: Information about the user who created the deployment rule. + properties: + handle: + description: The handle of the user who created the deployment rule. + example: "test-user" + type: string + id: + description: The ID of the user who created the deployment rule. + example: "1111-2222-3333-4444-555566667777" + type: string + name: + description: The name of the user who created the deployment rule. + example: "Test User" + type: string + required: + - id + type: object + DeploymentRuleResponseDataAttributesType: + description: The type of the deployment rule. + enum: + - faulty_deployment_detection + - monitor + example: faulty_deployment_detection + type: string + x-enum-varnames: + - FAULTY_DEPLOYMENT_DETECTION + - MONITOR + DeploymentRuleResponseDataAttributesUpdatedBy: + description: Information about the user who updated the deployment rule. + properties: + handle: + description: The handle of the user who updated the deployment rule. + example: "test-user" + type: string + id: + description: The ID of the user who updated the deployment rule. + example: "1111-2222-3333-4444-555566667777" + type: string + name: + description: The name of the user who updated the deployment rule. + example: "Test User" + type: string + required: + - id + type: object + DeploymentRulesOptions: + description: Options for deployment rule response representing either faulty deployment detection or monitor options. + oneOf: + - $ref: "#/components/schemas/DeploymentRuleOptionsFaultyDeploymentDetection" + - $ref: "#/components/schemas/DeploymentRuleOptionsMonitor" + DetachCaseRequest: + description: Request for detaching security findings from their case. + properties: + data: + $ref: "#/components/schemas/DetachCaseRequestData" + type: object + DetachCaseRequestData: + description: Data for detaching security findings from their case. + properties: + relationships: + $ref: "#/components/schemas/DetachCaseRequestDataRelationships" + type: + $ref: "#/components/schemas/CaseDataType" + required: + - type + type: object + DetachCaseRequestDataRelationships: + description: Relationships detaching security findings from their case. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to detach from their case. + required: + - findings + type: object + DetailedFinding: + description: A single finding with with message and resource configuration. + properties: + attributes: + $ref: "#/components/schemas/DetailedFindingAttributes" + id: + $ref: "#/components/schemas/FindingID" + type: + $ref: "#/components/schemas/DetailedFindingType" + type: object + DetailedFindingAttributes: + description: The JSON:API attributes of the detailed finding. + properties: + evaluation: + $ref: "#/components/schemas/FindingEvaluation" + evaluation_changed_at: + $ref: "#/components/schemas/FindingEvaluationChangedAt" + message: + description: The remediation message for this finding. + example: "## Remediation\n\n### From the console\n\n1. Go to Storage Account\n2. For each Storage Account, navigate to Data Protection\n3. Select Set soft delete enabled and enter the number of days to retain soft deleted data." + type: string + mute: + $ref: "#/components/schemas/FindingMute" + resource: + $ref: "#/components/schemas/FindingResource" + resource_configuration: + description: The resource configuration for this finding. + type: object + resource_discovery_date: + $ref: "#/components/schemas/FindingResourceDiscoveryDate" + resource_type: + $ref: "#/components/schemas/FindingResourceType" + rule: + $ref: "#/components/schemas/FindingRule" + status: + $ref: "#/components/schemas/FindingStatus" + tags: + $ref: "#/components/schemas/FindingTags" + type: object + DetailedFindingType: + default: detailed_finding + description: The JSON:API type for findings that have the message and resource configuration. + enum: + - detailed_finding + example: detailed_finding + type: string + x-enum-varnames: ["DETAILED_FINDING"] + DeviceAttributes: + description: The device attributes + properties: + description: + description: The device description + example: a device monitored with NDM + type: string + device_type: + description: The device type + example: other + type: string + integration: + description: The device integration + example: snmp + type: string + interface_statuses: + $ref: "#/components/schemas/DeviceAttributesInterfaceStatuses" + ip_address: + description: The device IP address + example: 1.2.3.4 + type: string + location: + description: The device location + example: paris + type: string + model: + description: The device model + example: xx-123 + type: string + name: + description: The device name + example: example device + type: string + os_hostname: + description: The device OS hostname + type: string + os_name: + description: The device OS name + example: example OS + type: string + os_version: + description: The device OS version + example: 1.0.2 + type: string + ping_status: + description: The device ping status + example: unmonitored + type: string + product_name: + description: The device product name + example: example device + type: string + serial_number: + description: The device serial number + example: X12345 + type: string + status: + description: The device SNMP status + example: ok + type: string + subnet: + description: The device subnet + example: 1.2.3.4/24 + type: string + sys_object_id: + description: The device `sys_object_id` + example: 1.3.6.1.4.1.99999 + type: string + tags: + description: The list of device tags + example: ["device_ip:1.2.3.4", "device_id:example:1.2.3.4"] + items: + description: A tag string in `key:value` format. + type: string + type: array + vendor: + description: The device vendor + example: example vendor + type: string + version: + description: The device version + example: 1.2.3 + type: string + type: object + DeviceAttributesInterfaceStatuses: + description: Count of the device interfaces by status + example: + down: 1 + "off": 2 + up: 12 + warning: 5 + properties: + down: + description: The number of interfaces that are down + format: int64 + type: integer + "off": + description: The number of interfaces that are off + format: int64 + type: integer + up: + description: The number of interfaces that are up + format: int64 + type: integer + warning: + description: The number of interfaces that are in a warning state + format: int64 + type: integer + type: object + DevicesListData: + description: The devices list data + properties: + attributes: + $ref: "#/components/schemas/DeviceAttributes" + id: + description: The device ID + example: example:1.2.3.4 + type: string + type: + description: The type of the resource. The value should always be device. + type: string + type: object + DnsMetricKey: + description: The metric key for DNS metrics. + enum: + - dns_total_requests + - dns_failures + - dns_successful_responses + - dns_failed_responses + - dns_timeouts + - dns_responses.nxdomain + - dns_responses.servfail + - dns_responses.other + - dns_success_latency_percentile + - dns_failure_latency_percentile + type: string + x-enum-descriptions: + - The total number of DNS requests made by the client. + - The total number of timeouts and errors in DNS requests. + - The total number of successful DNS responses. + - The total number of failed DNS responses. + - The total number of DNS timeouts. + - The total number of DNS responses with the NXDOMAIN error code. + - The total number of DNS responses with the SERVFAIL error code. + - The total number of DNS responses with other error codes. + - The latency percentile for successful DNS responses. + - The latency percentile for failed DNS responses. + x-enum-varnames: + - DNS_TOTAL_REQUESTS + - DNS_FAILURES + - DNS_SUCCESSFUL_RESPONSES + - DNS_FAILED_RESPONSES + - DNS_TIMEOUTS + - DNS_RESPONSES_NXDOMAIN + - DNS_RESPONSES_SERVFAIL + - DNS_RESPONSES_OTHER + - DNS_SUCCESS_LATENCY_PERCENTILE + - DNS_FAILURE_LATENCY_PERCENTILE + DomainAllowlist: + description: The email domain allowlist for an org. + properties: + attributes: + $ref: "#/components/schemas/DomainAllowlistAttributes" + id: + description: The unique identifier of the org. + nullable: true + type: string + type: + $ref: "#/components/schemas/DomainAllowlistType" + required: + - type + type: object + DomainAllowlistAttributes: + description: The details of the email domain allowlist. + properties: + domains: + description: The list of domains in the email domain allowlist. + items: + description: An email domain in the allowlist. + type: string + type: array + enabled: + description: Whether the email domain allowlist is enabled for the org. + type: boolean + type: object + DomainAllowlistRequest: + description: Request containing the desired email domain allowlist configuration. + properties: + data: + $ref: "#/components/schemas/DomainAllowlist" + required: + - data + type: object + DomainAllowlistResponse: + description: Response containing information about the email domain allowlist. + properties: + data: + $ref: "#/components/schemas/DomainAllowlistResponseData" + type: object + DomainAllowlistResponseData: + description: The email domain allowlist response for an org. + properties: + attributes: + $ref: "#/components/schemas/DomainAllowlistResponseDataAttributes" + id: + description: The unique identifier of the org. + nullable: true + type: string + type: + $ref: "#/components/schemas/DomainAllowlistType" + required: + - type + type: object + DomainAllowlistResponseDataAttributes: + description: The details of the email domain allowlist. + properties: + domains: + description: The list of domains in the email domain allowlist. + items: + description: An email domain in the allowlist. + type: string + type: array + enabled: + description: Whether the email domain allowlist is enabled for the org. + type: boolean + type: object + DomainAllowlistType: + default: domain_allowlist + description: Email domain allowlist allowlist type. + enum: + - domain_allowlist + example: domain_allowlist + type: string + x-enum-varnames: + - DOMAIN_ALLOWLIST + DowntimeCreateRequest: + description: Request for creating a downtime. + properties: + data: + $ref: "#/components/schemas/DowntimeCreateRequestData" + required: + - data + type: object + DowntimeCreateRequestAttributes: + description: Downtime details. + properties: + display_timezone: + $ref: "#/components/schemas/DowntimeDisplayTimezone" + message: + $ref: "#/components/schemas/DowntimeMessage" + monitor_identifier: + $ref: "#/components/schemas/DowntimeMonitorIdentifier" + mute_first_recovery_notification: + $ref: "#/components/schemas/DowntimeMuteFirstRecoveryNotification" + notify_end_states: + $ref: "#/components/schemas/DowntimeNotifyEndStates" + notify_end_types: + $ref: "#/components/schemas/DowntimeNotifyEndTypes" + schedule: + $ref: "#/components/schemas/DowntimeScheduleCreateRequest" + scope: + $ref: "#/components/schemas/DowntimeScope" + required: + - scope + - monitor_identifier + type: object + DowntimeCreateRequestData: + description: Object to create a downtime. + properties: + attributes: + $ref: "#/components/schemas/DowntimeCreateRequestAttributes" + type: + $ref: "#/components/schemas/DowntimeResourceType" + required: + - type + - attributes + type: object + DowntimeDisplayTimezone: + default: "UTC" + description: |- + The timezone in which to display the downtime's start and end times in Datadog applications. This is not used + as an offset for scheduling. + example: "America/New_York" + nullable: true + type: string + DowntimeIncludedMonitorType: + default: monitors + description: Monitor resource type. + enum: + - monitors + example: "monitors" + type: string + x-enum-varnames: + - MONITORS + DowntimeMessage: + description: |- + A message to include with notifications for this downtime. Email notifications can be sent to specific users + by using the same `@username` notation as events. + example: "Message about the downtime" + nullable: true + type: string + DowntimeMeta: + description: Pagination metadata returned by the API. + properties: + page: + $ref: "#/components/schemas/DowntimeMetaPage" + type: object + DowntimeMetaPage: + description: Object containing the total filtered count. + properties: + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer + type: object + DowntimeMonitorIdentifier: + description: Monitor identifier for the downtime. + oneOf: + - $ref: "#/components/schemas/DowntimeMonitorIdentifierId" + - $ref: "#/components/schemas/DowntimeMonitorIdentifierTags" + DowntimeMonitorIdentifierId: + additionalProperties: {} + description: Object of the monitor identifier. + properties: + monitor_id: + description: ID of the monitor to prevent notifications. + example: 123 + format: int64 + type: integer + required: + - monitor_id + type: object + DowntimeMonitorIdentifierTags: + additionalProperties: {} + description: Object of the monitor tags. + properties: + monitor_tags: + description: |- + A list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match **all** provided monitor tags. Setting `monitor_tags` + to `[*]` configures the downtime to mute all monitors for the given scope. + example: ["service:postgres", "team:frontend"] + items: + description: A list of monitor tags. + example: "service:postgres" + type: string + minItems: 1 + type: array + required: + - monitor_tags + type: object + DowntimeMonitorIncludedAttributes: + description: Attributes of the monitor identified by the downtime. + properties: + name: + description: The name of the monitor identified by the downtime. + example: "A monitor name" + type: string + type: object + DowntimeMonitorIncludedItem: + description: Information about the monitor identified by the downtime. + properties: + attributes: + $ref: "#/components/schemas/DowntimeMonitorIncludedAttributes" + id: + description: ID of the monitor identified by the downtime. + example: 12345 + format: int64 + type: integer + type: + $ref: "#/components/schemas/DowntimeIncludedMonitorType" + type: object + DowntimeMuteFirstRecoveryNotification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + DowntimeNotifyEndStateActions: + description: Action that will trigger a monitor notification if the downtime is in the `notify_end_types` state. + enum: + - canceled + - expired + example: "canceled" + type: string + x-enum-varnames: + - CANCELED + - EXPIRED + DowntimeNotifyEndStateTypes: + description: State that will trigger a monitor notification when the `notify_end_types` action occurs. + enum: + - alert + - no data + - warn + example: "alert" + type: string + x-enum-varnames: + - ALERT + - NO_DATA + - WARN + DowntimeNotifyEndStates: + description: States that will trigger a monitor notification when the `notify_end_types` action occurs. + example: ["alert", "warn"] + items: + $ref: "#/components/schemas/DowntimeNotifyEndStateTypes" + type: array + DowntimeNotifyEndTypes: + description: Actions that will trigger a monitor notification if the downtime is in the `notify_end_types` state. + example: ["canceled", "expired"] + items: + $ref: "#/components/schemas/DowntimeNotifyEndStateActions" + type: array + DowntimeRelationships: + description: All relationships associated with downtime. + properties: + created_by: + $ref: "#/components/schemas/DowntimeRelationshipsCreatedBy" + monitor: + $ref: "#/components/schemas/DowntimeRelationshipsMonitor" + type: object + DowntimeRelationshipsCreatedBy: + description: The user who created the downtime. + properties: + data: + $ref: "#/components/schemas/DowntimeRelationshipsCreatedByData" + type: object + DowntimeRelationshipsCreatedByData: + description: Data for the user who created the downtime. + nullable: true + properties: + id: + description: User ID of the downtime creator. + example: "00000000-0000-1234-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UsersType" + type: object + DowntimeRelationshipsMonitor: + description: The monitor identified by the downtime. + properties: + data: + $ref: "#/components/schemas/DowntimeRelationshipsMonitorData" + type: object + DowntimeRelationshipsMonitorData: + description: Data for the monitor. + nullable: true + properties: + id: + description: Monitor ID of the downtime. + example: "12345" + type: string + type: + $ref: "#/components/schemas/DowntimeIncludedMonitorType" + type: object + DowntimeResourceType: + default: downtime + description: Downtime resource type. + enum: + - downtime + example: "downtime" + type: string + x-enum-varnames: + - DOWNTIME + DowntimeResponse: + description: |- + Downtiming gives you greater control over monitor notifications by + allowing you to globally exclude scopes from alerting. + Downtime settings, which can be scheduled with start and end times, + prevent all alerting related to specified Datadog tags. + properties: + data: + $ref: "#/components/schemas/DowntimeResponseData" + included: + description: Array of objects related to the downtime that the user requested. + items: + $ref: "#/components/schemas/DowntimeResponseIncludedItem" + type: array + type: object + DowntimeResponseAttributes: + description: Downtime details. + properties: + canceled: + description: Time that the downtime was canceled. + example: "2020-01-02T03:04:05.282979+0000" + format: date-time + nullable: true + type: string + created: + description: Creation time of the downtime. + example: "2020-01-02T03:04:05.282979+0000" + format: date-time + type: string + display_timezone: + $ref: "#/components/schemas/DowntimeDisplayTimezone" + message: + $ref: "#/components/schemas/DowntimeMessage" + modified: + description: Time that the downtime was last modified. + example: "2020-01-02T03:04:05.282979+0000" + format: date-time + type: string + monitor_identifier: + $ref: "#/components/schemas/DowntimeMonitorIdentifier" + mute_first_recovery_notification: + $ref: "#/components/schemas/DowntimeMuteFirstRecoveryNotification" + notify_end_states: + $ref: "#/components/schemas/DowntimeNotifyEndStates" + notify_end_types: + $ref: "#/components/schemas/DowntimeNotifyEndTypes" + schedule: + $ref: "#/components/schemas/DowntimeScheduleResponse" + scope: + $ref: "#/components/schemas/DowntimeScope" + status: + $ref: "#/components/schemas/DowntimeStatus" + type: object + DowntimeResponseData: + description: Downtime data. + properties: + attributes: + $ref: "#/components/schemas/DowntimeResponseAttributes" + id: + description: The downtime ID. + example: "00000000-0000-1234-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/DowntimeRelationships" + type: + $ref: "#/components/schemas/DowntimeResourceType" + type: object + DowntimeResponseIncludedItem: + description: An object related to a downtime. + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/DowntimeMonitorIncludedItem" + DowntimeScheduleCreateRequest: + description: Schedule for the downtime. + oneOf: + - $ref: "#/components/schemas/DowntimeScheduleRecurrencesCreateRequest" + - $ref: "#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest" + DowntimeScheduleCurrentDowntimeResponse: + description: |- + The most recent actual start and end dates for a recurring downtime. For a canceled downtime, + this is the previously occurring downtime. For active downtimes, this is the ongoing downtime, and for scheduled + downtimes it is the upcoming downtime. + properties: + end: + description: The end of the current downtime. + example: 2020-01-02 03:04:00+00:00 + format: date-time + nullable: true + type: string + start: + description: The start of the current downtime. + example: 2020-01-02 03:04:00+00:00 + format: date-time + type: string + type: object + DowntimeScheduleOneTimeCreateUpdateRequest: + additionalProperties: false + description: A one-time downtime definition. + properties: + end: + description: |- + ISO-8601 Datetime to end the downtime. Must include a UTC offset of zero. If not provided, the + downtime continues forever. + example: 2020-01-02 03:04:00+00:00 + format: date-time + nullable: true + type: string + start: + description: |- + ISO-8601 Datetime to start the downtime. Must include a UTC offset of zero. If not provided, the + downtime starts the moment it is created. + example: 2020-01-02 03:04:00+00:00 + format: date-time + nullable: true + type: string + type: object + DowntimeScheduleOneTimeResponse: + description: A one-time downtime definition. + properties: + end: + description: ISO-8601 Datetime to end the downtime. + example: 2020-01-02 03:04:00+00:00 + format: date-time + nullable: true + type: string + start: + description: ISO-8601 Datetime to start the downtime. + example: 2020-01-02 03:04:00+00:00 + format: date-time + type: string + required: + - start + type: object + DowntimeScheduleRecurrenceCreateUpdateRequest: + additionalProperties: {} + description: An object defining the recurrence of the downtime. + properties: + duration: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceDuration" + rrule: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceRrule" + start: + description: |- + ISO-8601 Datetime to start the downtime. Must not include a UTC offset. If not provided, the + downtime starts the moment it is created. + example: 2020-01-02T03:04 + nullable: true + type: string + required: + - duration + - rrule + type: object + DowntimeScheduleRecurrenceDuration: + description: The length of the downtime. Must begin with an integer and end with one of 'm', 'h', d', or 'w'. + example: 123d + type: string + DowntimeScheduleRecurrenceResponse: + description: An RRULE-based recurring downtime. + properties: + duration: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceDuration" + rrule: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceRrule" + start: + description: |- + ISO-8601 Datetime to start the downtime. Must not include a UTC offset. If not provided, the + downtime starts the moment it is created. + example: 2020-01-02T03:04 + type: string + type: object + DowntimeScheduleRecurrenceRrule: + description: |- + The `RRULE` standard for defining recurring events. + For example, to have a recurring event on the first day of each month, set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to `1`. + Most common `rrule` options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) are supported. + + **Note**: Attributes specifying the duration in `RRULE` are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). + More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api). + example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 + type: string + DowntimeScheduleRecurrencesCreateRequest: + description: A recurring downtime schedule definition. + properties: + recurrences: + description: A list of downtime recurrences. + items: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest" + type: array + timezone: + default: UTC + description: The timezone in which to schedule the downtime. + example: America/New_York + type: string + required: + - recurrences + type: object + DowntimeScheduleRecurrencesResponse: + description: A recurring downtime schedule definition. + properties: + current_downtime: + $ref: "#/components/schemas/DowntimeScheduleCurrentDowntimeResponse" + recurrences: + description: A list of downtime recurrences. + items: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceResponse" + maxItems: 5 + minItems: 1 + type: array + timezone: + default: UTC + description: |- + The timezone in which to schedule the downtime. This affects recurring start and end dates. + Must match `display_timezone`. + example: "America/New_York" + type: string + required: + - recurrences + type: object + DowntimeScheduleRecurrencesUpdateRequest: + additionalProperties: false + description: A recurring downtime schedule definition. + properties: + recurrences: + description: A list of downtime recurrences. + items: + $ref: "#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest" + type: array + timezone: + default: UTC + description: The timezone in which to schedule the downtime. + example: America/New_York + type: string + type: object + DowntimeScheduleResponse: + description: |- + The schedule that defines when the monitor starts, stops, and recurs. There are two types of schedules: + one-time and recurring. Recurring schedules may have up to five RRULE-based recurrences. If no schedules are + provided, the downtime will begin immediately and never end. + oneOf: + - $ref: "#/components/schemas/DowntimeScheduleRecurrencesResponse" + - $ref: "#/components/schemas/DowntimeScheduleOneTimeResponse" + DowntimeScheduleUpdateRequest: + description: Schedule for the downtime. + oneOf: + - $ref: "#/components/schemas/DowntimeScheduleRecurrencesUpdateRequest" + - $ref: "#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest" + DowntimeScope: + description: |- + The scope to which the downtime applies. Must follow the [common search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). + example: "env:(staging OR prod) AND datacenter:us-east-1" + type: string + DowntimeStatus: + description: The current status of the downtime. + enum: + - active + - canceled + - ended + - scheduled + example: "active" + type: string + x-enum-varnames: + - ACTIVE + - CANCELED + - ENDED + - SCHEDULED + DowntimeUpdateRequest: + description: Request for editing a downtime. + properties: + data: + $ref: "#/components/schemas/DowntimeUpdateRequestData" + required: + - data + type: object + DowntimeUpdateRequestAttributes: + description: Attributes of the downtime to update. + properties: + display_timezone: + $ref: "#/components/schemas/DowntimeDisplayTimezone" + message: + $ref: "#/components/schemas/DowntimeMessage" + monitor_identifier: + $ref: "#/components/schemas/DowntimeMonitorIdentifier" + mute_first_recovery_notification: + $ref: "#/components/schemas/DowntimeMuteFirstRecoveryNotification" + notify_end_states: + $ref: "#/components/schemas/DowntimeNotifyEndStates" + notify_end_types: + $ref: "#/components/schemas/DowntimeNotifyEndTypes" + schedule: + $ref: "#/components/schemas/DowntimeScheduleUpdateRequest" + scope: + $ref: "#/components/schemas/DowntimeScope" + type: object + DowntimeUpdateRequestData: + description: Object to update a downtime. + properties: + attributes: + $ref: "#/components/schemas/DowntimeUpdateRequestAttributes" + id: + description: ID of this downtime. + example: "00000000-0000-1234-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/DowntimeResourceType" + required: + - id + - type + - attributes + type: object + DueDateFrom: + description: The reference point from which the due date is calculated. When `fix_available` is selected but not applicable to the finding type, `first_seen` is used instead. + enum: + - first_seen + - fix_available + example: first_seen + type: string + x-enum-varnames: + - FIRST_SEEN + - FIX_AVAILABLE + DueDatePerSeverityItem: + description: A mapping of a severity level to the number of days until a finding is due. + properties: + due_in_days: + description: The number of days from the reference point until the finding is due. + example: 7 + format: int64 + maximum: 365 + minimum: 1 + type: integer + severity: + $ref: "#/components/schemas/DueDateSeverity" + required: + - severity + - due_in_days + type: object + DueDatePerSeverityList: + description: A list of severity-to-due-date mappings. Each severity may appear at most once. + items: + $ref: "#/components/schemas/DueDatePerSeverityItem" + type: array + DueDateRuleAction: + description: The action to take when the due date rule matches a finding. + properties: + due_days_per_severity: + $ref: "#/components/schemas/DueDatePerSeverityList" + due_from: + $ref: "#/components/schemas/DueDateFrom" + reason_description: + description: An optional description providing more context for the due date assignment. + example: "Applied for production findings only" + maxLength: 20000 + type: string + required: + - due_days_per_severity + - due_from + type: object + DueDateRuleAttributesCreate: + description: Attributes for creating or updating a due date rule. + properties: + action: + $ref: "#/components/schemas/DueDateRuleAction" + enabled: + description: Whether the due date rule is enabled. + example: true + type: boolean + name: + description: The name of the due date rule. + example: "Critical findings due in 7 days" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - rule + - action + type: object + DueDateRuleAttributesResponse: + description: Attributes of a due date rule returned by the API. + properties: + action: + $ref: "#/components/schemas/DueDateRuleAction" + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: "#/components/schemas/AutomationRuleCreatedBy" + enabled: + description: Whether the due date rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: "#/components/schemas/AutomationRuleModifiedBy" + name: + description: The name of the due date rule. + example: "Critical findings due in 7 days" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by + type: object + DueDateRuleCreateRequest: + description: The body of a due date rule create request. + properties: + data: + $ref: "#/components/schemas/DueDateRuleDataCreate" + required: + - data + type: object + DueDateRuleDataCreate: + description: The data object for a due date rule create or update request. + properties: + attributes: + $ref: "#/components/schemas/DueDateRuleAttributesCreate" + type: + $ref: "#/components/schemas/DueDateRuleType" + required: + - type + - attributes + type: object + DueDateRuleDataResponse: + description: The data object for a due date rule returned by the API. + properties: + attributes: + $ref: "#/components/schemas/DueDateRuleAttributesResponse" + id: + description: The ID of the due date rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/DueDateRuleType" + required: + - id + - type + - attributes + type: object + DueDateRuleReorderData: + description: The ordered list of all due date rules; every rule must be included. + items: + $ref: "#/components/schemas/DueDateRuleReorderItem" + type: array + DueDateRuleReorderItem: + description: A reference to a due date rule used for reordering. + properties: + id: + description: The ID of the automation rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/DueDateRuleType" + required: + - type + - id + type: object + DueDateRuleReorderRequest: + description: The body of the due date rule reorder request. + properties: + data: + $ref: "#/components/schemas/DueDateRuleReorderData" + required: + - data + type: object + DueDateRuleResponse: + description: A single due date rule response. + properties: + data: + $ref: "#/components/schemas/DueDateRuleDataResponse" + required: + - data + type: object + DueDateRuleType: + description: The JSON:API type for due date rules. + enum: + - due_date_rules + example: due_date_rules + type: string + x-enum-varnames: + - DUE_DATE_RULES + DueDateRuleUpdateRequest: + description: The body of a due date rule update request. + properties: + data: + $ref: "#/components/schemas/DueDateRuleDataCreate" + required: + - data + type: object + DueDateRulesDataList: + description: A list of due date rule data objects. + items: + $ref: "#/components/schemas/DueDateRuleDataResponse" + type: array + DueDateRulesResponse: + description: A list of due date rules with pagination metadata. + properties: + data: + $ref: "#/components/schemas/DueDateRulesDataList" + links: + $ref: "#/components/schemas/SecurityAutomationRulesLinks" + meta: + $ref: "#/components/schemas/SecurityAutomationRulesMeta" + required: + - data + - meta + - links + type: object + DueDateSeverity: + description: A severity level used to configure due date thresholds. + enum: + - critical + - high + - medium + - low + - info + - none + - unknown + example: critical + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MEDIUM + - LOW + - INFO + - NONE + - UNKNOWN + ELFSourcemapAttributes: + description: Attributes of an ELF symbol file. + properties: + arch: + description: The target CPU architecture. + example: arm64 + type: string + created_at: + description: The timestamp when the symbol file was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + file_hash: + description: The SHA256 hash of the ELF file. + example: abc123def456 + type: string + file_name: + description: The ELF file name. + example: libmyapp.so + type: string + gnu_build_id: + description: The GNU build ID (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + go_build_id: + description: The Go build ID (UUID format). + example: 550e8400-e29b-41d4-a716-446655440001 + type: string + mapkind: + description: The type of source map. + example: elf + type: string + origin: + description: The origin of the ELF file. + example: debian + type: string + origin_version: + description: The version of the origin package. + example: 1.0.0 + type: string + size: + description: The size of the ELF file in bytes. + example: 16384 + format: int64 + type: integer + symbol_source: + description: The source of the debug symbols. + example: debuginfo + type: string + required: + - mapkind + - size + - created_at + type: object + ELFSourcemapData: + description: ELF symbol file data object. + properties: + attributes: + $ref: "#/components/schemas/ELFSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "6" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + EPSS: + description: Vulnerability EPSS severity. + properties: + score: + description: Vulnerability EPSS severity score. + example: 0.2 + format: double + type: number + severity: + $ref: "#/components/schemas/VulnerabilitySeverity" + required: + - score + - severity + type: object + ElasticCloudDetailedIndexStatsIntegrationDataflowRequest: + description: The Elastic Cloud detailed index stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudDetailedIndexStatsIntegrationDataflowResponse: + description: The Elastic Cloud detailed index stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudIndexStatsIntegrationDataflowRequest: + description: The Elastic Cloud index stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudIndexStatsIntegrationDataflowResponse: + description: The Elastic Cloud index stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudIntegrationAccountAuthenticationRequest: + description: Authentication for creating the Elastic Cloud integration account. Exactly one method is set. + oneOf: + - $ref: "#/components/schemas/IntegrationAccountBasicAuthRequest" + ElasticCloudIntegrationAccountAuthenticationResponse: + description: Authentication configured on the Elastic Cloud integration account. + oneOf: + - $ref: "#/components/schemas/IntegrationAccountBasicAuthResponse" + ElasticCloudIntegrationAccountAuthenticationUpdate: + description: Authentication for updating the Elastic Cloud integration account. Exactly one method is set. + oneOf: + - $ref: "#/components/schemas/IntegrationAccountBasicAuthUpdate" + ElasticCloudIntegrationAccountCreateAttributes: + description: Writable attributes used to create an Elastic Cloud integration account. + properties: + authentication: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountAuthenticationRequest" + dataflows: + $ref: "#/components/schemas/ElasticCloudIntegrationDataflowsRequest" + name: + description: Human-readable name of the Elastic Cloud integration account. + example: elastic-cloud-prod + type: string + settings: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountSettingsRequest" + required: + - name + - authentication + - settings + type: object + ElasticCloudIntegrationAccountCreateData: + description: Data envelope for creating an Elastic Cloud integration account. + properties: + attributes: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountCreateAttributes" + type: + $ref: "#/components/schemas/IntegrationAccountType" + required: + - type + - attributes + type: object + ElasticCloudIntegrationAccountCreateRequest: + description: Request payload to create an Elastic Cloud integration account. + properties: + data: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountCreateData" + required: + - data + type: object + ElasticCloudIntegrationAccountResponse: + description: Response payload for a single Elastic Cloud integration account. + properties: + data: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountResponseData" + required: + - data + type: object + ElasticCloudIntegrationAccountResponseAttributes: + description: Attributes of an Elastic Cloud integration account returned in responses. + properties: + authentication: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountAuthenticationResponse" + dataflows: + $ref: "#/components/schemas/ElasticCloudIntegrationDataflowsResponse" + name: + description: Human-readable name of the Elastic Cloud integration account. + example: elastic-cloud-prod + type: string + settings: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountSettingsResponse" + required: + - name + - settings + type: object + ElasticCloudIntegrationAccountResponseData: + description: Data envelope of an Elastic Cloud integration account, including server-assigned identity. + properties: + attributes: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountResponseAttributes" + id: + description: Server-generated unique identifier of the Elastic Cloud integration account. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + readOnly: true + type: string + type: + $ref: "#/components/schemas/IntegrationAccountType" + required: + - id + - attributes + - type + type: object + ElasticCloudIntegrationAccountSettingsRequest: + description: Settings for creating the Elastic Cloud integration account. + properties: + tags: + description: Comma-separated list of custom tags for this Elastic Cloud deployment. + example: "env:prod,team:saasint" + type: string + url: + description: Elastic Cloud deployment URL. + example: "https://example.es.us-central1.gcp.cloud.es.io:9243" + type: string + required: + - url + type: object + ElasticCloudIntegrationAccountSettingsResponse: + description: Settings configured on the Elastic Cloud integration account. + properties: + tags: + description: Comma-separated list of custom tags for this Elastic Cloud deployment. + example: "env:prod,team:saasint" + type: string + url: + description: Elastic Cloud deployment URL. + example: "https://example.es.us-central1.gcp.cloud.es.io:9243" + type: string + required: + - url + type: object + ElasticCloudIntegrationAccountSettingsUpdate: + description: Settings for updating the Elastic Cloud integration account. Only the fields provided are changed. + properties: + tags: + description: Comma-separated list of custom tags for this Elastic Cloud deployment. + example: "env:prod,team:saasint" + type: string + url: + description: Elastic Cloud deployment URL. + example: "https://example.es.us-central1.gcp.cloud.es.io:9243" + type: string + type: object + ElasticCloudIntegrationAccountUpdateAttributes: + description: >- + Writable attributes used to update an Elastic Cloud integration account. Every field is optional; only the fields provided are changed. When `dataflows` is provided, only the dataflow ids included in the request are modified; dataflows omitted from the map keep their current configuration. + properties: + authentication: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountAuthenticationUpdate" + dataflows: + $ref: "#/components/schemas/ElasticCloudIntegrationDataflowsRequest" + name: + description: Human-readable name of the Elastic Cloud integration account. + example: elastic-cloud-prod + type: string + settings: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountSettingsUpdate" + type: object + ElasticCloudIntegrationAccountUpdateData: + description: Data envelope for updating an Elastic Cloud integration account. + properties: + attributes: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountUpdateAttributes" + id: + description: Unique identifier of the Elastic Cloud integration account to update. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: string + type: + $ref: "#/components/schemas/IntegrationAccountType" + required: + - id + - type + - attributes + type: object + ElasticCloudIntegrationAccountUpdateRequest: + description: Request payload to update an Elastic Cloud integration account. + properties: + data: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountUpdateData" + required: + - data + type: object + ElasticCloudIntegrationAccountsResponse: + description: Response payload for a list of Elastic Cloud integration accounts. + properties: + data: + description: List of Elastic Cloud integration accounts. + items: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountResponseData" + type: array + required: + - data + type: object + ElasticCloudIntegrationDataflowsRequest: + additionalProperties: false + description: Dataflows to configure on the Elastic Cloud integration account, keyed by dataflow id. + properties: + elastic-cloud-detailed-index-stats: + $ref: "#/components/schemas/ElasticCloudDetailedIndexStatsIntegrationDataflowRequest" + elastic-cloud-index-stats: + $ref: "#/components/schemas/ElasticCloudIndexStatsIntegrationDataflowRequest" + elastic-cloud-pending-task-stats: + $ref: "#/components/schemas/ElasticCloudPendingTaskStatsIntegrationDataflowRequest" + elastic-cloud-primary-shard-graceful-timeout: + $ref: "#/components/schemas/ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowRequest" + elastic-cloud-primary-shard-stats: + $ref: "#/components/schemas/ElasticCloudPrimaryShardStatsIntegrationDataflowRequest" + elastic-cloud-shard-allocation-stats: + $ref: "#/components/schemas/ElasticCloudShardAllocationStatsIntegrationDataflowRequest" + elastic-cloud-slm-stats: + $ref: "#/components/schemas/ElasticCloudSlmStatsIntegrationDataflowRequest" + type: object + ElasticCloudIntegrationDataflowsResponse: + description: Dataflows configured on the Elastic Cloud integration account, keyed by dataflow id. + properties: + elastic-cloud-detailed-index-stats: + $ref: "#/components/schemas/ElasticCloudDetailedIndexStatsIntegrationDataflowResponse" + elastic-cloud-index-stats: + $ref: "#/components/schemas/ElasticCloudIndexStatsIntegrationDataflowResponse" + elastic-cloud-metrics: + $ref: "#/components/schemas/ElasticCloudMetricsIntegrationDataflowResponse" + elastic-cloud-pending-task-stats: + $ref: "#/components/schemas/ElasticCloudPendingTaskStatsIntegrationDataflowResponse" + elastic-cloud-primary-shard-graceful-timeout: + $ref: "#/components/schemas/ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowResponse" + elastic-cloud-primary-shard-stats: + $ref: "#/components/schemas/ElasticCloudPrimaryShardStatsIntegrationDataflowResponse" + elastic-cloud-shard-allocation-stats: + $ref: "#/components/schemas/ElasticCloudShardAllocationStatsIntegrationDataflowResponse" + elastic-cloud-slm-stats: + $ref: "#/components/schemas/ElasticCloudSlmStatsIntegrationDataflowResponse" + type: object + ElasticCloudMetricsIntegrationDataflowResponse: + description: The Elastic Cloud metrics dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + readOnly: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudPendingTaskStatsIntegrationDataflowRequest: + description: The Elastic Cloud pending task stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudPendingTaskStatsIntegrationDataflowResponse: + description: The Elastic Cloud pending task stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowRequest: + description: The Elastic Cloud primary shard graceful timeout dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowResponse: + description: The Elastic Cloud primary shard graceful timeout dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudPrimaryShardStatsIntegrationDataflowRequest: + description: The Elastic Cloud primary shard stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudPrimaryShardStatsIntegrationDataflowResponse: + description: The Elastic Cloud primary shard stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudShardAllocationStatsIntegrationDataflowRequest: + description: The Elastic Cloud shard allocation stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudShardAllocationStatsIntegrationDataflowResponse: + description: The Elastic Cloud shard allocation stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + ElasticCloudSlmStatsIntegrationDataflowRequest: + description: The Elastic Cloud snapshot lifecycle management stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudSlmStatsIntegrationDataflowResponse: + description: The Elastic Cloud snapshot lifecycle management stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + Enabled: + description: Field used to enable or disable the rule. + example: true + type: boolean + EntityAttributes: + description: Entity attributes. + properties: + apiVersion: + description: The API version. + type: string + description: + description: The description. + type: string + displayName: + description: The display name. + type: string + kind: + description: The kind. + type: string + name: + description: The name. + type: string + namespace: + description: The namespace. + type: string + owner: + description: The owner. + type: string + tags: + description: The tags. + items: + description: A tag string in the format key:value. + type: string + type: array + type: object + EntityContextEntity: + description: A single entity returned by the entity context endpoint. + properties: + attributes: + $ref: "#/components/schemas/EntityContextEntityAttributes" + id: + description: The unique identifier of the entity. + example: user@example.com + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringEntityContextEntityType" + required: + - id + - type + - attributes + type: object + EntityContextEntityAttributes: + description: The attributes of an entity context entry, grouping all the historical revisions of the entity. + properties: + revisions: + description: The historical revisions of the entity, ordered chronologically. + items: + $ref: "#/components/schemas/EntityContextRevision" + type: array + required: + - revisions + type: object + EntityContextPage: + description: Pagination metadata for the entity context response. + properties: + next_token: + description: An opaque token to pass as `page_token` in a subsequent request to retrieve the next page of results. Empty when there are no more results. + example: "" + type: string + required: + - next_token + type: object + EntityContextResponse: + description: Response from the entity context endpoint, containing the matching entities and pagination metadata. + properties: + data: + description: The list of entities matching the query. + items: + $ref: "#/components/schemas/EntityContextEntity" + type: array + meta: + $ref: "#/components/schemas/EntityContextResponseMeta" + required: + - data + - meta + type: object + EntityContextResponseMeta: + description: Metadata returned alongside the entity context response. + properties: + page: + $ref: "#/components/schemas/EntityContextPage" + total_count: + description: The total number of entities matching the query, irrespective of pagination. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - page + - total_count + type: object + EntityContextRevision: + description: A single historical revision of an entity, including the time range during which the revision was observed. + properties: + attributes: + $ref: "#/components/schemas/EntityContextRevisionAttributes" + first_seen_at: + description: The first time the entity was observed at this revision. + example: "2026-04-01T00:00:00Z" + format: date-time + type: string + last_seen_at: + description: The last time the entity was observed at this revision. + example: "2026-05-01T00:00:00Z" + format: date-time + type: string + required: + - attributes + - first_seen_at + - last_seen_at + type: object + EntityContextRevisionAttributes: + additionalProperties: {} + description: The set of attributes recorded for the entity at this revision. The keys depend on the kind of entity. + example: + accounts: + - linked-account-123 + display_name: Test User + email: user@example.com + principal_id: user@example.com + type: object + EntityData: + description: Entity data. + properties: + attributes: + $ref: "#/components/schemas/EntityAttributes" + id: + description: Entity ID. + type: string + meta: + $ref: "#/components/schemas/EntityMeta" + relationships: + $ref: "#/components/schemas/EntityRelationships" + type: + description: Entity. + type: string + type: object + EntityIntegrationConfigAttributes: + description: The organization ID, integration identifier, and integration-specific configuration payload for an entity integration configuration. + properties: + config: + $ref: "#/components/schemas/EntityIntegrationConfigPayload" + integration_id: + description: The identifier of the integration this configuration applies to (for example, `github`, `jira`, or `pagerduty`). + example: github + type: string + org_id: + description: The Datadog organization identifier that owns this configuration. + example: 1234 + format: int64 + type: integer + required: + - org_id + - integration_id + - config + type: object + EntityIntegrationConfigData: + description: JSON:API resource object for an entity integration configuration. + properties: + attributes: + $ref: "#/components/schemas/EntityIntegrationConfigAttributes" + id: + description: Unique identifier of the entity integration configuration. + example: 01HJABCD12345678ABCDEFGHIJ + type: string + type: + $ref: "#/components/schemas/EntityIntegrationConfigType" + required: + - id + - type + - attributes + type: object + EntityIntegrationConfigPayload: + additionalProperties: {} + description: Integration-specific configuration payload. The shape of this object depends on the integration identified by the path parameter. For `github`, the object must contain an `enabled_repos` array. For `jira`, it must contain an `enabled_projects` array. For `pagerduty`, it must contain an `accounts` array. + example: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + type: object + EntityIntegrationConfigRequest: + description: Request body used to create or replace the configuration for a given integration. + properties: + data: + $ref: "#/components/schemas/EntityIntegrationConfigRequestData" + required: + - data + type: object + EntityIntegrationConfigRequestAttributes: + description: Attributes used to create or update an entity integration configuration. + properties: + config: + $ref: "#/components/schemas/EntityIntegrationConfigPayload" + required: + - config + type: object + EntityIntegrationConfigRequestData: + description: JSON:API resource object used in a request to create or update an entity integration configuration. + properties: + attributes: + $ref: "#/components/schemas/EntityIntegrationConfigRequestAttributes" + type: + $ref: "#/components/schemas/EntityIntegrationConfigRequestType" + required: + - type + - attributes + type: object + EntityIntegrationConfigRequestType: + default: entity_integration_config_requests + description: JSON:API resource type for the entity integration configuration create or update request. Always `entity_integration_config_requests`. + enum: + - entity_integration_config_requests + example: entity_integration_config_requests + type: string + x-enum-varnames: + - ENTITY_INTEGRATION_CONFIG_REQUESTS + EntityIntegrationConfigResponse: + description: JSON:API document containing a single entity integration configuration resource. + properties: + data: + $ref: "#/components/schemas/EntityIntegrationConfigData" + required: + - data + type: object + EntityIntegrationConfigType: + default: entity_integration_configs + description: JSON:API resource type for an entity integration configuration. Always `entity_integration_configs`. + enum: + - entity_integration_configs + example: entity_integration_configs + type: string + x-enum-varnames: + - ENTITY_INTEGRATION_CONFIGS + EntityMeta: + description: Entity metadata. + properties: + createdAt: + description: The creation time. + type: string + ingestionSource: + description: The ingestion source. + type: string + modifiedAt: + description: The modification time. + type: string + origin: + description: The origin. + type: string + type: object + EntityRaw: + description: Entity definition in raw JSON or YAML representation. + example: |- + apiVersion: v3 + kind: service + metadata: + name: myservice + type: string + EntityReference: + description: The unique reference for an IDP entity. + example: "service:my-service" + type: string + EntityRelationships: + description: Entity relationships. + properties: + incidents: + $ref: "#/components/schemas/EntityToIncidents" + oncall: + $ref: "#/components/schemas/EntityToOncalls" + rawSchema: + $ref: "#/components/schemas/EntityToRawSchema" + relatedEntities: + $ref: "#/components/schemas/EntityToRelatedEntities" + schema: + $ref: "#/components/schemas/EntityToSchema" + type: object + EntityResponseArray: + description: Response object containing an array of entity data items. + properties: + data: + description: Array of entity response data items. + items: + $ref: "#/components/schemas/PreviewEntityResponseData" + type: array + required: + - data + type: object + EntityResponseData: + description: List of entity data. + items: + $ref: "#/components/schemas/EntityData" + type: array + EntityResponseDataAttributes: + description: Entity response attributes containing core entity metadata fields. + properties: + apiVersion: + description: The API version of the entity schema. + type: string + description: + description: A short description of the entity. + type: string + displayName: + description: The user-friendly display name of the entity. + type: string + kind: + description: The kind of the entity (e.g. service, datastore, queue). + type: string + name: + description: The unique name of the entity within its kind and namespace. + type: string + namespace: + description: The namespace the entity belongs to. + type: string + owner: + description: The owner of the entity, usually a team. + type: string + properties: + additionalProperties: {} + description: Additional custom properties for the entity. + type: object + tags: + description: A set of custom tags assigned to the entity. + items: + description: A tag string in the format key:value. + type: string + type: array + type: object + EntityResponseDataRelationships: + description: Entity relationships including incidents, oncalls, schemas, and related entities. + properties: + incidents: + $ref: "#/components/schemas/EntityResponseDataRelationshipsIncidents" + oncalls: + $ref: "#/components/schemas/EntityResponseDataRelationshipsOncalls" + rawSchema: + $ref: "#/components/schemas/EntityResponseDataRelationshipsRawSchema" + relatedEntities: + $ref: "#/components/schemas/EntityResponseDataRelationshipsRelatedEntities" + schema: + $ref: "#/components/schemas/EntityResponseDataRelationshipsSchema" + type: object + EntityResponseDataRelationshipsIncidents: + description: Incidents relationship containing a list of incident resources associated with this entity. + properties: + data: + description: List of incident relationship data items. + items: + $ref: "#/components/schemas/EntityResponseDataRelationshipsIncidentsDataItems" + type: array + type: object + EntityResponseDataRelationshipsIncidentsDataItems: + description: Incident relationship data item containing the incident resource identifier and type. + properties: + id: + description: Incident resource unique identifier. + example: "" + type: string + type: + $ref: "#/components/schemas/EntityResponseDataRelationshipsIncidentsDataItemsType" + required: + - type + - id + type: object + EntityResponseDataRelationshipsIncidentsDataItemsType: + default: incident + description: Incident resource type. + enum: + - incident + example: incident + type: string + x-enum-varnames: + - INCIDENT + EntityResponseDataRelationshipsOncalls: + description: Oncalls relationship containing a list of oncall resources associated with this entity. + properties: + data: + description: List of oncall relationship data items. + items: + $ref: "#/components/schemas/EntityResponseDataRelationshipsOncallsDataItems" + type: array + type: object + EntityResponseDataRelationshipsOncallsDataItems: + description: Oncall relationship data item containing the oncall resource identifier and type. + properties: + id: + description: Oncall resource unique identifier. + example: "" + type: string + type: + $ref: "#/components/schemas/EntityResponseDataRelationshipsOncallsDataItemsType" + required: + - type + - id + type: object + EntityResponseDataRelationshipsOncallsDataItemsType: + default: oncall + description: Oncall resource type. + enum: + - oncall + example: oncall + type: string + x-enum-varnames: + - ONCALL + EntityResponseDataRelationshipsRawSchema: + description: Raw schema relationship linking an entity to its raw schema resource. + properties: + data: + $ref: "#/components/schemas/EntityResponseDataRelationshipsRawSchemaData" + required: + - data + type: object + EntityResponseDataRelationshipsRawSchemaData: + description: Raw schema relationship data containing the raw schema resource identifier and type. + properties: + id: + description: Raw schema unique identifier. + example: "" + type: string + type: + $ref: "#/components/schemas/EntityResponseDataRelationshipsRawSchemaDataType" + required: + - type + - id + type: object + EntityResponseDataRelationshipsRawSchemaDataType: + default: rawSchema + description: Raw schema resource type. + enum: + - rawSchema + example: rawSchema + type: string + x-enum-varnames: + - RAWSCHEMA + EntityResponseDataRelationshipsRelatedEntities: + description: Related entities relationship containing a list of entity references related to this entity. + properties: + data: + description: List of related entity relationship data items. + items: + $ref: "#/components/schemas/EntityResponseDataRelationshipsRelatedEntitiesDataItems" + type: array + type: object + EntityResponseDataRelationshipsRelatedEntitiesDataItems: + description: Related entity relationship data item containing the related entity resource identifier and type. + properties: + id: + description: Related entity unique identifier. + example: "" + type: string + type: + $ref: "#/components/schemas/EntityResponseDataRelationshipsRelatedEntitiesDataItemsType" + required: + - type + - id + type: object + EntityResponseDataRelationshipsRelatedEntitiesDataItemsType: + default: relatedEntity + description: Related entity resource type. + enum: + - relatedEntity + example: relatedEntity + type: string + x-enum-varnames: + - RELATEDENTITY + EntityResponseDataRelationshipsSchema: + description: Schema relationship linking an entity to its associated schema resource. + properties: + data: + $ref: "#/components/schemas/EntityResponseDataRelationshipsSchemaData" + required: + - data + type: object + EntityResponseDataRelationshipsSchemaData: + description: Schema relationship data containing the schema resource identifier and type. + properties: + id: + description: Entity schema unique identifier. + example: "" + type: string + type: + $ref: "#/components/schemas/EntityResponseDataRelationshipsSchemaDataType" + required: + - type + - id + type: object + EntityResponseDataRelationshipsSchemaDataType: + default: schema + description: Schema resource type. + enum: + - schema + example: schema + type: string + x-enum-varnames: + - SCHEMA + EntityResponseDataType: + default: entity + description: Entity resource type. + enum: + - entity + example: entity + type: string + x-enum-varnames: + - ENTITY + EntityResponseIncludedIncident: + description: Included incident. + properties: + attributes: + $ref: "#/components/schemas/EntityResponseIncludedRelatedIncidentAttributes" + id: + description: Incident ID. + type: string + type: + $ref: "#/components/schemas/EntityResponseIncludedIncidentType" + type: object + EntityResponseIncludedIncidentType: + description: Incident description. + enum: + - incident + type: string + x-enum-varnames: + - INCIDENT + EntityResponseIncludedOncall: + description: Included oncall. + properties: + attributes: + $ref: "#/components/schemas/EntityResponseIncludedRelatedOncallAttributes" + id: + description: Oncall ID. + type: string + type: + $ref: "#/components/schemas/EntityResponseIncludedOncallType" + type: object + EntityResponseIncludedOncallType: + description: Oncall type. + enum: + - oncall + type: string + x-enum-varnames: + - ONCALL + EntityResponseIncludedRawSchema: + description: Included raw schema. + properties: + attributes: + $ref: "#/components/schemas/EntityResponseIncludedRawSchemaAttributes" + id: + description: Raw schema ID. + type: string + type: + $ref: "#/components/schemas/EntityResponseIncludedRawSchemaType" + type: object + EntityResponseIncludedRawSchemaAttributes: + description: Included raw schema attributes. + properties: + rawSchema: + description: Schema from user input in base64 encoding. + type: string + type: object + EntityResponseIncludedRawSchemaType: + description: Raw schema type. + enum: + - rawSchema + type: string + x-enum-varnames: + - RAW_SCHEMA + EntityResponseIncludedRelatedEntity: + description: Included related entity. + properties: + attributes: + $ref: "#/components/schemas/EntityResponseIncludedRelatedEntityAttributes" + id: + description: Entity UUID. + type: string + meta: + $ref: "#/components/schemas/EntityResponseIncludedRelatedEntityMeta" + type: + $ref: "#/components/schemas/EntityResponseIncludedRelatedEntityType" + type: object + EntityResponseIncludedRelatedEntityAttributes: + description: Related entity attributes. + properties: + kind: + description: Entity kind. + type: string + name: + description: Entity name. + type: string + namespace: + description: Entity namespace. + type: string + type: + description: Entity relation type to the associated entity. + type: string + type: object + EntityResponseIncludedRelatedEntityMeta: + description: Included related entity meta. + properties: + createdAt: + description: Entity creation time. + format: date-time + type: string + defined_by: + description: Entity relation defined by. + type: string + modifiedAt: + description: Entity modification time. + format: date-time + type: string + source: + description: Entity relation source. + type: string + type: object + EntityResponseIncludedRelatedEntityType: + description: Related entity. + enum: + - relatedEntity + type: string + x-enum-varnames: + - RELATED_ENTITY + EntityResponseIncludedRelatedIncidentAttributes: + description: Incident attributes. + properties: + createdAt: + description: Incident creation time. + format: date-time + type: string + htmlURL: + description: Incident URL. + type: string + provider: + description: Incident provider. + type: string + status: + description: Incident status. + type: string + title: + description: Incident title. + type: string + type: object + EntityResponseIncludedRelatedOncallAttributes: + description: Included related oncall attributes. + properties: + escalations: + $ref: "#/components/schemas/EntityResponseIncludedRelatedOncallEscalations" + provider: + description: Oncall provider. + type: string + type: object + EntityResponseIncludedRelatedOncallEscalationItem: + description: Oncall escalation. + properties: + email: + description: Oncall email. + type: string + escalationLevel: + description: Oncall level. + format: int64 + type: integer + name: + description: Oncall name. + type: string + type: object + EntityResponseIncludedRelatedOncallEscalations: + description: Oncall escalations. + items: + $ref: "#/components/schemas/EntityResponseIncludedRelatedOncallEscalationItem" + type: array + EntityResponseIncludedSchema: + description: Included detail entity schema. + properties: + attributes: + $ref: "#/components/schemas/EntityResponseIncludedSchemaAttributes" + id: + description: Entity ID. + type: string + type: + $ref: "#/components/schemas/EntityResponseIncludedSchemaType" + type: object + EntityResponseIncludedSchemaAttributes: + description: Included schema. + properties: + schema: + $ref: "#/components/schemas/EntityV3" + type: object + EntityResponseIncludedSchemaType: + description: Schema type. + enum: + - schema + type: string + x-enum-varnames: + - SCHEMA + EntityResponseMeta: + description: Entity metadata. + properties: + count: + description: Total entities count. + format: int64 + type: integer + includeCount: + description: Total included data count. + format: int64 + type: integer + type: object + EntityToIncidents: + description: Entity to incidents relationship. + properties: + data: + $ref: "#/components/schemas/RelationshipArray" + type: object + EntityToOncalls: + description: Entity to oncalls relationship. + properties: + data: + $ref: "#/components/schemas/RelationshipArray" + type: object + EntityToRawSchema: + description: Entity to raw schema relationship. + properties: + data: + $ref: "#/components/schemas/RelationshipItem" + type: object + EntityToRelatedEntities: + description: Entity to related entities relationship. + properties: + data: + $ref: "#/components/schemas/RelationshipArray" + type: object + EntityToSchema: + description: Entity to detail schema relationship. + properties: + data: + $ref: "#/components/schemas/RelationshipItem" + type: object + EntityV3: + description: Entity schema v3. + oneOf: + - $ref: "#/components/schemas/EntityV3Service" + - $ref: "#/components/schemas/EntityV3Datastore" + - $ref: "#/components/schemas/EntityV3Queue" + - $ref: "#/components/schemas/EntityV3System" + - $ref: "#/components/schemas/EntityV3API" + EntityV3API: + additionalProperties: false + description: Schema for API entities. + properties: + apiVersion: + $ref: "#/components/schemas/EntityV3APIVersion" + datadog: + $ref: "#/components/schemas/EntityV3APIDatadog" + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: "#/components/schemas/EntityV3Integrations" + kind: + $ref: "#/components/schemas/EntityV3APIKind" + metadata: + $ref: "#/components/schemas/EntityV3Metadata" + spec: + $ref: "#/components/schemas/EntityV3APISpec" + required: + - apiVersion + - kind + - metadata + type: object + EntityV3APIDatadog: + additionalProperties: false + description: Datadog product integrations for the API entity. + properties: + codeLocations: + $ref: "#/components/schemas/EntityV3DatadogCodeLocations" + events: + $ref: "#/components/schemas/EntityV3DatadogEvents" + logs: + $ref: "#/components/schemas/EntityV3DatadogLogs" + performanceData: + $ref: "#/components/schemas/EntityV3DatadogPerformance" + pipelines: + $ref: "#/components/schemas/EntityV3DatadogPipelines" + type: object + EntityV3APIKind: + description: The definition of Entity V3 API Kind object. + enum: + - api + example: api + type: string + x-enum-varnames: + - API + EntityV3APISpec: + additionalProperties: false + description: The definition of Entity V3 API Spec object. + properties: + implementedBy: + description: Services which implemented the API. + items: + description: A service entity reference string. + type: string + type: array + interface: + $ref: "#/components/schemas/EntityV3APISpecInterface" + lifecycle: + description: The lifecycle state of the component. + minLength: 1 + type: string + tier: + description: The importance of the component. + minLength: 1 + type: string + type: + description: The type of API. + type: string + type: object + EntityV3APISpecInterface: + additionalProperties: false + description: The API definition. + oneOf: + - $ref: "#/components/schemas/EntityV3APISpecInterfaceFileRef" + - $ref: "#/components/schemas/EntityV3APISpecInterfaceDefinition" + EntityV3APISpecInterfaceDefinition: + additionalProperties: false + description: The definition of `EntityV3APISpecInterfaceDefinition` object. + properties: + definition: + description: The API definition. + type: object + type: object + EntityV3APISpecInterfaceFileRef: + additionalProperties: false + description: The definition of `EntityV3APISpecInterfaceFileRef` object. + properties: + fileRef: + description: The reference to the API definition file. + type: string + type: object + EntityV3APIVersion: + description: The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version. + enum: + - v3 + - v2.2 + - v2.1 + - v2 + example: v3 + type: string + x-enum-varnames: + - V3 + - V2_2 + - V2_1 + - V2 + EntityV3DatadogCodeLocationItem: + additionalProperties: false + description: Code location item. + properties: + paths: + description: The paths (glob) to the source code of the service. + items: + description: A glob pattern path to source code files. + type: string + type: array + repositoryURL: + description: The repository path of the source code of the entity. + type: string + type: object + EntityV3DatadogCodeLocations: + additionalProperties: false + description: Schema for mapping source code locations to an entity. + items: + $ref: "#/components/schemas/EntityV3DatadogCodeLocationItem" + type: array + EntityV3DatadogEventItem: + additionalProperties: false + description: Events association item. + properties: + name: + description: The name of the query. + type: string + query: + description: The query to run. + type: string + type: object + EntityV3DatadogEvents: + additionalProperties: false + description: Events associations. + items: + $ref: "#/components/schemas/EntityV3DatadogEventItem" + type: array + EntityV3DatadogIntegrationOpsgenie: + additionalProperties: false + description: An Opsgenie integration schema. + properties: + region: + description: The region for the Opsgenie integration. + minLength: 1 + type: string + serviceURL: + description: The service URL for the Opsgenie integration. + example: "https://www.opsgenie.com/service/shopping-cart" + minLength: 1 + type: string + required: + - serviceURL + type: object + EntityV3DatadogIntegrationPagerduty: + additionalProperties: false + description: A PagerDuty integration schema. + properties: + serviceURL: + description: The service URL for the PagerDuty integration. + example: "https://www.pagerduty.com/service-directory/Pshopping-cart" + minLength: 1 + type: string + required: + - serviceURL + type: object + EntityV3DatadogLogItem: + additionalProperties: false + description: Log association item. + properties: + name: + description: The name of the query. + type: string + query: + description: The query to run. + type: string + type: object + EntityV3DatadogLogs: + additionalProperties: false + description: Logs association. + items: + $ref: "#/components/schemas/EntityV3DatadogLogItem" + type: array + EntityV3DatadogPerformance: + additionalProperties: false + description: Performance stats association. + properties: + tags: + description: A list of APM entity tags that associates the APM Stats data with the entity. + items: + description: An APM tag string in the format key:value. + type: string + type: array + type: object + EntityV3DatadogPipelines: + additionalProperties: false + description: CI Pipelines association. + properties: + fingerprints: + description: A list of CI Fingerprints that associate CI Pipelines with the entity. + items: + description: A CI pipeline fingerprint string. + type: string + type: array + type: object + EntityV3Datastore: + additionalProperties: false + description: Schema for datastore entities. + properties: + apiVersion: + $ref: "#/components/schemas/EntityV3APIVersion" + datadog: + $ref: "#/components/schemas/EntityV3DatastoreDatadog" + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: "#/components/schemas/EntityV3Integrations" + kind: + $ref: "#/components/schemas/EntityV3DatastoreKind" + metadata: + $ref: "#/components/schemas/EntityV3Metadata" + spec: + $ref: "#/components/schemas/EntityV3DatastoreSpec" + required: + - apiVersion + - kind + - metadata + type: object + EntityV3DatastoreDatadog: + additionalProperties: false + description: Datadog product integrations for the datastore entity. + properties: + events: + $ref: "#/components/schemas/EntityV3DatadogEvents" + logs: + $ref: "#/components/schemas/EntityV3DatadogLogs" + performanceData: + $ref: "#/components/schemas/EntityV3DatadogPerformance" + type: object + EntityV3DatastoreKind: + description: The definition of Entity V3 Datastore Kind object. + enum: + - datastore + example: datastore + type: string + x-enum-varnames: + - DATASTORE + EntityV3DatastoreSpec: + additionalProperties: false + description: The definition of Entity V3 Datastore Spec object. + properties: + componentOf: + description: A list of components the datastore is a part of + items: + description: A component entity reference string. + type: string + type: array + lifecycle: + description: The lifecycle state of the datastore. + minLength: 1 + type: string + tier: + description: The importance of the datastore. + minLength: 1 + type: string + type: + description: The type of datastore. + type: string + type: object + EntityV3Integrations: + additionalProperties: false + description: A base schema for defining third-party integrations. + properties: + opsgenie: + $ref: "#/components/schemas/EntityV3DatadogIntegrationOpsgenie" + pagerduty: + $ref: "#/components/schemas/EntityV3DatadogIntegrationPagerduty" + type: object + EntityV3Metadata: + additionalProperties: false + description: The definition of Entity V3 Metadata object. + properties: + additionalOwners: + additionalProperties: false + description: The additional owners of the entity, usually a team. + items: + $ref: "#/components/schemas/EntityV3MetadataAdditionalOwnersItems" + type: array + contacts: + additionalProperties: false + description: A list of contacts for the entity. + items: + $ref: "#/components/schemas/EntityV3MetadataContactsItems" + type: array + description: + description: Short description of the entity. The UI can leverage the description for display. + type: string + displayName: + description: User friendly name of the entity. The UI can leverage the display name for display. + type: string + id: + description: A read-only globally unique identifier for the entity generated by Datadog. User supplied values are ignored. + example: 4b163705-23c0-4573-b2fb-f6cea2163fcb + minLength: 1 + type: string + inheritFrom: + description: The entity reference from which to inherit metadata + example: application:default/myapp + type: string + links: + additionalProperties: false + description: A list of links for the entity. + items: + $ref: "#/components/schemas/EntityV3MetadataLinksItems" + type: array + managed: + additionalProperties: {} + description: A read-only set of Datadog managed attributes generated by Datadog. User supplied values are ignored. + type: object + name: + description: "Unique name given to an entity under the kind/namespace." + example: myService + minLength: 1 + type: string + namespace: + description: "Namespace is a part of unique identifier. It has a default value of 'default'." + example: default + minLength: 1 + type: string + owner: + description: The owner of the entity, usually a team. + type: string + tags: + description: A set of custom tags. + example: [this:tag, that:tag] + items: + description: A tag string in the format key:value. + type: string + type: array + required: + - name + type: object + EntityV3MetadataAdditionalOwnersItems: + description: The definition of Entity V3 Metadata Additional Owners Items object. + properties: + name: + description: Team name. + example: "" + type: string + type: + description: Team type. + type: string + required: + - name + type: object + EntityV3MetadataContactsItems: + additionalProperties: false + description: The definition of Entity V3 Metadata Contacts Items object. + properties: + contact: + description: Contact value. + example: "https://slack/" + type: string + name: + description: Contact name. + minLength: 2 + type: string + type: + description: Contact type. + example: slack + type: string + required: + - type + - contact + type: object + EntityV3MetadataLinksItems: + additionalProperties: false + description: The definition of Entity V3 Metadata Links Items object. + properties: + name: + description: Link name. + example: mylink + type: string + provider: + description: Link provider. + type: string + type: + default: other + description: Link type. + example: link + type: string + url: + description: Link URL. + example: "https://mylink" + type: string + required: + - name + - type + - url + type: object + EntityV3Queue: + additionalProperties: false + description: Schema for queue entities. + properties: + apiVersion: + $ref: "#/components/schemas/EntityV3APIVersion" + datadog: + $ref: "#/components/schemas/EntityV3QueueDatadog" + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: "#/components/schemas/EntityV3Integrations" + kind: + $ref: "#/components/schemas/EntityV3QueueKind" + metadata: + $ref: "#/components/schemas/EntityV3Metadata" + spec: + $ref: "#/components/schemas/EntityV3QueueSpec" + required: + - apiVersion + - kind + - metadata + type: object + EntityV3QueueDatadog: + additionalProperties: false + description: Datadog product integrations for the datastore entity. + properties: + events: + $ref: "#/components/schemas/EntityV3DatadogEvents" + logs: + $ref: "#/components/schemas/EntityV3DatadogLogs" + performanceData: + $ref: "#/components/schemas/EntityV3DatadogPerformance" + type: object + EntityV3QueueKind: + description: The definition of Entity V3 Queue Kind object. + enum: + - queue + example: queue + type: string + x-enum-varnames: + - QUEUE + EntityV3QueueSpec: + additionalProperties: false + description: The definition of Entity V3 Queue Spec object. + properties: + componentOf: + description: A list of components the queue is a part of + items: + description: A component entity reference string. + type: string + type: array + lifecycle: + description: The lifecycle state of the queue. + minLength: 1 + type: string + tier: + description: The importance of the queue. + minLength: 1 + type: string + type: + description: The type of queue. + type: string + type: object + EntityV3Service: + additionalProperties: false + description: Schema for service entities. + properties: + apiVersion: + $ref: "#/components/schemas/EntityV3APIVersion" + datadog: + $ref: "#/components/schemas/EntityV3ServiceDatadog" + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: "#/components/schemas/EntityV3Integrations" + kind: + $ref: "#/components/schemas/EntityV3ServiceKind" + metadata: + $ref: "#/components/schemas/EntityV3Metadata" + spec: + $ref: "#/components/schemas/EntityV3ServiceSpec" + required: + - apiVersion + - kind + - metadata + type: object + EntityV3ServiceDatadog: + additionalProperties: false + description: Datadog product integrations for the service entity. + properties: + codeLocations: + $ref: "#/components/schemas/EntityV3DatadogCodeLocations" + events: + $ref: "#/components/schemas/EntityV3DatadogEvents" + logs: + $ref: "#/components/schemas/EntityV3DatadogLogs" + performanceData: + $ref: "#/components/schemas/EntityV3DatadogPerformance" + pipelines: + $ref: "#/components/schemas/EntityV3DatadogPipelines" + type: object + EntityV3ServiceKind: + description: The definition of Entity V3 Service Kind object. + enum: + - service + example: service + type: string + x-enum-varnames: + - SERVICE + EntityV3ServiceSpec: + additionalProperties: false + description: The definition of Entity V3 Service Spec object. + properties: + componentOf: + description: A list of components the service is a part of + items: + description: A component entity reference string. + type: string + type: array + dependsOn: + description: A list of components the service depends on. + items: + description: A component entity reference string. + type: string + type: array + languages: + description: The service's programming language. + items: + description: A programming language name. + type: string + type: array + lifecycle: + description: The lifecycle state of the component. + minLength: 1 + type: string + tier: + description: The importance of the component. + minLength: 1 + type: string + type: + description: The type of service. + type: string + type: object + EntityV3System: + additionalProperties: false + description: Schema for system entities. + properties: + apiVersion: + $ref: "#/components/schemas/EntityV3APIVersion" + datadog: + $ref: "#/components/schemas/EntityV3SystemDatadog" + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: "#/components/schemas/EntityV3Integrations" + kind: + $ref: "#/components/schemas/EntityV3SystemKind" + metadata: + $ref: "#/components/schemas/EntityV3Metadata" + spec: + $ref: "#/components/schemas/EntityV3SystemSpec" + required: + - apiVersion + - kind + - metadata + type: object + EntityV3SystemDatadog: + additionalProperties: false + description: Datadog product integrations for the service entity. + properties: + events: + $ref: "#/components/schemas/EntityV3DatadogEvents" + logs: + $ref: "#/components/schemas/EntityV3DatadogLogs" + performanceData: + $ref: "#/components/schemas/EntityV3DatadogPerformance" + pipelines: + $ref: "#/components/schemas/EntityV3DatadogPipelines" + type: object + EntityV3SystemKind: + description: The definition of Entity V3 System Kind object. + enum: + - system + example: system + type: string + x-enum-varnames: + - SYSTEM + EntityV3SystemSpec: + additionalProperties: false + description: The definition of Entity V3 System Spec object. + properties: + components: + description: A list of components belongs to the system. + items: + description: A component entity reference string. + type: string + type: array + lifecycle: + description: The lifecycle state of the component. + minLength: 1 + type: string + tier: + description: An entity reference to the owner of the component. + minLength: 1 + type: string + type: object + Environment: + description: A feature flag environment resource. + properties: + attributes: + $ref: "#/components/schemas/EnvironmentAttributes" + id: + description: The unique identifier of the environment. + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + type: + $ref: "#/components/schemas/CreateEnvironmentDataType" + required: + - id + - type + - attributes + type: object + EnvironmentAttributes: + description: Attributes of an environment. + properties: + created_at: + description: The timestamp when the environment was created. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + description: + description: The description of the environment. + example: "Test environment XYZ789" + nullable: true + type: string + is_production: + description: Indicates whether this is a production environment. + example: false + type: boolean + key: + description: The unique key of the environment. + example: "env-search-term" + type: string + name: + description: The name of the environment. + example: "env-search-term" + type: string + queries: + description: List of queries to define the environment scope. + example: ["staging", "test"] + items: + description: A query string used to match the environment scope. + type: string + minItems: 1 + type: array + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + updated_at: + description: The timestamp when the environment was last updated. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + required: + - name + type: object + EnvironmentResponse: + description: Response containing an environment. + properties: + data: + $ref: "#/components/schemas/Environment" + required: + - data + type: object + EnvironmentsPaginationMeta: + description: Pagination metadata for environments. + properties: + page: + $ref: "#/components/schemas/EnvironmentsPaginationMetaPage" + type: object + EnvironmentsPaginationMetaPage: + description: Pagination metadata for environments list responses. + properties: + total_count: + description: Total number of items. + example: 10 + format: int64 + type: integer + total_filtered_count: + description: Total number of items matching the filter. + example: 5 + format: int64 + type: integer + type: object + ErrorHandler: + additionalProperties: false + description: Used to handle errors in an action. + properties: + fallbackStepName: + description: The `ErrorHandler` `fallbackStepName`. + example: "" + type: string + retryStrategy: + $ref: "#/components/schemas/RetryStrategy" + required: + - retryStrategy + - fallbackStepName + type: object + Escalation: + description: Represents an escalation policy step. + properties: + id: + description: Unique identifier of the escalation step. + type: string + relationships: + $ref: "#/components/schemas/EscalationRelationships" + type: + $ref: "#/components/schemas/EscalationType" + required: + - type + type: object + EscalationPolicy: + description: "Represents a complete escalation policy response, including policy data and optionally included related resources." + example: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + included: + - attributes: + avatar: "" + description: Team 1 description + handle: team1 + name: Team 1 + id: 00000000-da3a-0000-0000-000000000000 + type: teams + - attributes: + assignment: default + escalate_after_seconds: 3600 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + targets: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - id: 00000000-aba2-0000-0000-000000000000_previous + type: schedule_target + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + type: steps + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - attributes: + position: previous + id: 00000000-aba2-0000-0000-000000000000_previous + relationships: + schedule: + data: + id: 00000000-aba2-0000-0000-000000000000 + type: schedules + type: schedule_target + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + properties: + data: + $ref: "#/components/schemas/EscalationPolicyData" + included: + description: "Provides any included related resources, such as steps or targets, returned with the policy." + items: + $ref: "#/components/schemas/EscalationPolicyIncluded" + type: array + type: object + EscalationPolicyCreateRequest: + description: "Represents a request to create a new escalation policy, including the policy data." + example: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - config: + schedule: + position: previous + id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + - assignment: round-robin + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-abb1-0000-0000-000000000000 + type: users + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + properties: + data: + $ref: "#/components/schemas/EscalationPolicyCreateRequestData" + required: + - data + type: object + EscalationPolicyCreateRequestData: + description: "Represents the data for creating an escalation policy, including its attributes, relationships, and resource type." + properties: + attributes: + $ref: "#/components/schemas/EscalationPolicyCreateRequestDataAttributes" + relationships: + $ref: "#/components/schemas/EscalationPolicyCreateRequestDataRelationships" + type: + $ref: "#/components/schemas/EscalationPolicyCreateRequestDataType" + required: + - type + - attributes + type: object + EscalationPolicyCreateRequestDataAttributes: + description: "Defines the attributes for creating an escalation policy, including its description, name, resolution behavior, retries, and steps." + properties: + name: + description: "Specifies the name for the new escalation policy." + example: "On-Call Escalation Policy" + minLength: 1 + type: string + resolve_page_on_policy_end: + description: "Indicates whether the page is automatically resolved when the policy ends." + type: boolean + retries: + description: "Specifies how many times the escalation sequence is retried if there is no response." + format: int64 + maximum: 10 + minimum: 0 + type: integer + steps: + description: "A list of escalation steps, each defining assignment, escalation timeout, and targets for the new policy." + items: + $ref: "#/components/schemas/EscalationPolicyCreateRequestDataAttributesStepsItems" + maxItems: 10 + minItems: 1 + type: array + required: + - name + - steps + type: object + EscalationPolicyCreateRequestDataAttributesStepsItems: + description: "Defines a single escalation step within an escalation policy creation request. Contains assignment strategy, escalation timeout, and a list of targets." + properties: + assignment: + $ref: "#/components/schemas/EscalationPolicyStepAttributesAssignment" + escalate_after_seconds: + description: "Defines how many seconds to wait before escalating to the next step." + example: 3600 + format: int64 + maximum: 36000 + minimum: 60 + type: integer + targets: + description: "Specifies the collection of escalation targets for this step." + example: + - "users" + items: + $ref: "#/components/schemas/EscalationPolicyStepTarget" + type: array + required: + - targets + type: object + EscalationPolicyCreateRequestDataRelationships: + description: "Represents relationships in an escalation policy creation request, including references to teams." + properties: + teams: + $ref: "#/components/schemas/DataRelationshipsTeams" + type: object + EscalationPolicyCreateRequestDataType: + default: policies + description: "Indicates that the resource is of type `policies`." + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + EscalationPolicyData: + description: "Represents the data for a single escalation policy, including its attributes, ID, relationships, and resource type." + properties: + attributes: + $ref: "#/components/schemas/EscalationPolicyDataAttributes" + id: + description: "Specifies the unique identifier of the escalation policy." + example: "ab000000-0000-0000-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/EscalationPolicyDataRelationships" + type: + $ref: "#/components/schemas/EscalationPolicyDataType" + required: + - type + type: object + EscalationPolicyDataAttributes: + description: "Defines the main attributes of an escalation policy, such as its name and behavior on policy end." + properties: + name: + description: "Specifies the name of the escalation policy." + example: "On-Call Escalation Policy" + minLength: 1 + type: string + resolve_page_on_policy_end: + description: "Indicates whether the page is automatically resolved when the policy ends." + type: boolean + retries: + description: "Specifies how many times the escalation sequence is retried if there is no response." + format: int64 + maximum: 10 + minimum: 0 + type: integer + required: + - name + type: object + EscalationPolicyDataRelationships: + description: "Represents the relationships for an escalation policy, including references to steps and teams." + properties: + steps: + $ref: "#/components/schemas/EscalationPolicyDataRelationshipsSteps" + teams: + $ref: "#/components/schemas/DataRelationshipsTeams" + required: + - steps + type: object + EscalationPolicyDataRelationshipsSteps: + description: "Defines the relationship to a collection of steps within an escalation policy. Contains an array of step data references." + properties: + data: + description: "An array of references to the steps defined in this escalation policy." + items: + $ref: "#/components/schemas/EscalationPolicyDataRelationshipsStepsDataItems" + type: array + type: object + EscalationPolicyDataRelationshipsStepsDataItems: + description: "Defines a relationship to a single step within an escalation policy. Contains the step's `id` and `type`." + properties: + id: + description: "Specifies the unique identifier for the step resource." + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/EscalationPolicyDataRelationshipsStepsDataItemsType" + required: + - type + - id + type: object + EscalationPolicyDataRelationshipsStepsDataItemsType: + default: steps + description: "Indicates that the resource is of type `steps`." + enum: + - steps + example: steps + type: string + x-enum-varnames: + - STEPS + EscalationPolicyDataType: + default: policies + description: "Indicates that the resource is of type `policies`." + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + EscalationPolicyIncluded: + description: "Represents included related resources when retrieving an escalation policy, such as teams, steps, or targets." + oneOf: + - $ref: "#/components/schemas/EscalationPolicyStep" + - $ref: "#/components/schemas/EscalationPolicyUser" + - $ref: "#/components/schemas/ScheduleData" + - $ref: "#/components/schemas/ConfiguredSchedule" + - $ref: "#/components/schemas/TeamReference" + EscalationPolicyStep: + description: "Represents a single step in an escalation policy, including its attributes, relationships, and resource type." + properties: + attributes: + $ref: "#/components/schemas/EscalationPolicyStepAttributes" + id: + description: "Specifies the unique identifier of this escalation policy step." + type: string + relationships: + $ref: "#/components/schemas/EscalationPolicyStepRelationships" + type: + $ref: "#/components/schemas/EscalationPolicyStepType" + required: + - type + type: object + EscalationPolicyStepAttributes: + description: "Defines attributes for an escalation policy step, such as assignment strategy and escalation timeout." + properties: + assignment: + $ref: "#/components/schemas/EscalationPolicyStepAttributesAssignment" + escalate_after_seconds: + description: "Specifies how many seconds to wait before escalating to the next step." + format: int64 + type: integer + type: object + EscalationPolicyStepAttributesAssignment: + description: "Specifies how this escalation step will assign targets (example `default` or `round-robin`)." + enum: + - default + - round-robin + type: string + x-enum-varnames: + - DEFAULT + - ROUND_ROBIN + EscalationPolicyStepRelationships: + description: "Represents the relationship of an escalation policy step to its targets." + properties: + targets: + $ref: "#/components/schemas/EscalationTargets" + type: object + EscalationPolicyStepTarget: + description: "Defines a single escalation target within a step for an escalation policy creation request. Contains `id`, `type`, and optional `config`." + properties: + config: + $ref: "#/components/schemas/EscalationPolicyStepTargetConfig" + id: + description: "Specifies the unique identifier for this target." + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/EscalationPolicyStepTargetType" + type: object + EscalationPolicyStepTargetConfig: + description: "Configuration for an escalation target, such as schedule position." + properties: + schedule: + $ref: "#/components/schemas/EscalationPolicyStepTargetConfigSchedule" + type: object + EscalationPolicyStepTargetConfigSchedule: + description: "Schedule-specific configuration for an escalation target." + properties: + position: + $ref: "#/components/schemas/ScheduleTargetPosition" + type: object + EscalationPolicyStepTargetType: + description: "Specifies the type of escalation target (example `users`, `schedules`, or `teams`)." + enum: + - users + - schedules + - teams + example: "users" + type: string + x-enum-varnames: + - USERS + - SCHEDULES + - TEAMS + EscalationPolicyStepType: + default: steps + description: "Indicates that the resource is of type `steps`." + enum: + - steps + example: steps + type: string + x-enum-varnames: + - STEPS + EscalationPolicyUpdateRequest: + description: "Represents a request to update an existing escalation policy, including the updated policy data." + example: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: false + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + id: 00000000-aba1-0000-0000-000000000000 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + id: a3000000-0000-0000-0000-000000000000 + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + properties: + data: + $ref: "#/components/schemas/EscalationPolicyUpdateRequestData" + required: + - data + type: object + EscalationPolicyUpdateRequestData: + description: "Represents the data for updating an existing escalation policy, including its ID, attributes, relationships, and resource type." + properties: + attributes: + $ref: "#/components/schemas/EscalationPolicyUpdateRequestDataAttributes" + id: + description: "Specifies the unique identifier of the escalation policy being updated." + example: "00000000-aba1-0000-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/EscalationPolicyUpdateRequestDataRelationships" + type: + $ref: "#/components/schemas/EscalationPolicyUpdateRequestDataType" + required: + - type + - id + - attributes + type: object + EscalationPolicyUpdateRequestDataAttributes: + description: "Defines the attributes that can be updated for an escalation policy, such as description, name, resolution behavior, retries, and steps." + properties: + name: + description: "Specifies the name of the escalation policy." + example: "On-Call Escalation Policy" + minLength: 1 + type: string + resolve_page_on_policy_end: + description: "Indicates whether the page is automatically resolved when the policy ends." + type: boolean + retries: + description: "Specifies how many times the escalation sequence is retried if there is no response." + format: int64 + maximum: 10 + minimum: 0 + type: integer + steps: + description: "A list of escalation steps, each defining assignment, escalation timeout, and targets." + items: + $ref: "#/components/schemas/EscalationPolicyUpdateRequestDataAttributesStepsItems" + maxItems: 10 + minItems: 1 + type: array + required: + - name + - steps + type: object + EscalationPolicyUpdateRequestDataAttributesStepsItems: + description: "Defines a single escalation step within an escalation policy update request. Contains assignment strategy, escalation timeout, an optional step ID, and a list of targets." + properties: + assignment: + $ref: "#/components/schemas/EscalationPolicyStepAttributesAssignment" + escalate_after_seconds: + description: "Defines how many seconds to wait before escalating to the next step." + example: 3600 + format: int64 + maximum: 36000 + minimum: 60 + type: integer + id: + description: "Specifies the unique identifier of this step." + example: "00000000-aba1-0000-0000-000000000000" + type: string + targets: + description: "Specifies the collection of escalation targets for this step." + items: + $ref: "#/components/schemas/EscalationPolicyStepTarget" + type: array + required: + - targets + type: object + EscalationPolicyUpdateRequestDataRelationships: + description: "Represents relationships in an escalation policy update request, including references to teams." + properties: + teams: + $ref: "#/components/schemas/DataRelationshipsTeams" + type: object + EscalationPolicyUpdateRequestDataType: + default: policies + description: "Indicates that the resource is of type `policies`." + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + EscalationPolicyUser: + description: Represents a user object in the context of an escalation policy, including their `id`, type, and basic attributes. + properties: + attributes: + $ref: "#/components/schemas/EscalationPolicyUserAttributes" + id: + description: The unique user identifier. + type: string + type: + $ref: "#/components/schemas/EscalationPolicyUserType" + required: + - type + type: object + EscalationPolicyUserAttributes: + description: Provides basic user information for an escalation policy, including a name and email address. + properties: + email: + description: The user's email address. + example: "jane.doe@example.com" + type: string + name: + description: The user's name. + example: "Jane Doe" + type: string + status: + $ref: "#/components/schemas/UserAttributesStatus" + type: object + EscalationPolicyUserType: + default: users + description: |- + Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + EscalationRelationships: + description: Contains the relationships of an escalation object, including its responders. + properties: + responders: + $ref: "#/components/schemas/EscalationRelationshipsResponders" + type: object + EscalationRelationshipsResponders: + description: Lists the users involved in a specific step of the escalation policy. + properties: + data: + description: Array of user references assigned as responders for this escalation step. + items: + $ref: "#/components/schemas/EscalationRelationshipsRespondersDataItems" + type: array + type: object + EscalationRelationshipsRespondersDataItems: + description: Represents a user assigned to an escalation step. + properties: + id: + description: Unique identifier of the user assigned to the escalation step. + example: "" + type: string + type: + $ref: "#/components/schemas/EscalationRelationshipsRespondersDataItemsType" + required: + - type + - id + type: object + EscalationRelationshipsRespondersDataItemsType: + default: users + description: Represents the resource type for users assigned as responders in an escalation step. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + EscalationTarget: + description: "Represents an escalation target, which can be a team, user, schedule, or configured schedule target." + oneOf: + - $ref: "#/components/schemas/TeamTarget" + - $ref: "#/components/schemas/UserTarget" + - $ref: "#/components/schemas/ScheduleTarget" + - $ref: "#/components/schemas/ConfiguredScheduleTarget" + EscalationTargets: + description: "A list of escalation targets for a step" + properties: + data: + description: The `EscalationTargets` `data`. + items: + $ref: "#/components/schemas/EscalationTarget" + type: array + type: object + EscalationType: + default: escalation_policy_steps + description: Represents the resource type for individual steps in an escalation policy used during incident response. + enum: + - escalation_policy_steps + example: escalation_policy_steps + type: string + x-enum-varnames: + - ESCALATION_POLICY_STEPS + Estimation: + description: Recommended resource values for a Spark driver or executor, derived from recent real usage metrics. Used by SPA to propose more efficient pod sizing. + properties: + cpu: + $ref: "#/components/schemas/Cpu" + ephemeral_storage: + description: Recommended ephemeral storage allocation (in MiB). Derived from job temporary storage patterns. + format: int64 + type: integer + heap: + description: Recommended JVM heap size (in MiB). + format: int64 + type: integer + memory: + description: Recommended total memory allocation (in MiB). Includes both heap and overhead. + format: int64 + type: integer + overhead: + description: Recommended JVM overhead (in MiB). Computed as total memory - heap. + format: int64 + type: integer + type: object + Event: + description: The metadata associated with a request. + properties: + id: + description: Event ID. + example: "6509751066204996294" + type: string + name: + description: The event name. + type: string + source_id: + description: Event source ID. + example: 36 + format: int64 + type: integer + type: + description: Event type. + example: "error_tracking_alert" + type: string + type: object + EventAttributes: + description: Object description of attributes from your event. + properties: + aggregation_key: + description: Aggregation key of the event. + type: string + date_happened: + description: |- + POSIX timestamp of the event. Must be sent as an integer (no quotation marks). + Limited to events no older than 18 hours. + format: int64 + type: integer + device_name: + description: A device name. + type: string + duration: + description: The duration between the triggering of the event and its recovery in nanoseconds. + format: int64 + type: integer + event_object: + description: The event title. + example: "Did you hear the news today?" + type: string + evt: + $ref: "#/components/schemas/Event" + hostname: + description: |- + Host name to associate with the event. + Any tags associated with the host are also applied to this event. + type: string + monitor: + $ref: "#/components/schemas/MonitorType" + monitor_groups: + description: List of groups referred to in the event. + items: + description: Group referred to in the event. + type: string + nullable: true + type: array + monitor_id: + description: ID of the monitor that triggered the event. When an event isn't related to a monitor, this field is empty. + format: int64 + nullable: true + type: integer + priority: + $ref: "#/components/schemas/EventPriority" + related_event_id: + description: Related event ID. + format: int64 + type: integer + service: + description: Service that triggered the event. + example: "datadog-api" + type: string + source_type_name: + description: |- + The type of event being posted. + For example, `nagios`, `hudson`, `jenkins`, `my_apps`, `chef`, `puppet`, `git` or `bitbucket`. + The list of standard source attribute values is [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + type: string + sourcecategory: + description: Identifier for the source of the event, such as a monitor alert, an externally-submitted event, or an integration. + type: string + status: + $ref: "#/components/schemas/EventStatusType" + tags: + description: A list of tags to apply to the event. + example: ["environment:test"] + items: + description: A tag. + type: string + type: array + timestamp: + description: POSIX timestamp of your event in milliseconds. + example: 1652274265000 + format: int64 + type: integer + title: + description: The event title. + example: "Oh boy!" + type: string + type: object + EventCategory: + description: |- + Event category identifying the type of event. + enum: + - change + - alert + example: change + type: string + x-enum-varnames: + - CHANGE + - ALERT + EventCreateRequest: + description: An event object. + properties: + attributes: + $ref: "#/components/schemas/EventPayload" + type: + $ref: "#/components/schemas/EventCreateRequestType" + required: + - type + - attributes + type: object + EventCreateRequestPayload: + description: Payload for creating an event. + properties: + data: + $ref: "#/components/schemas/EventCreateRequest" + required: + - data + type: object + EventCreateRequestType: + description: Entity type. + enum: + - event + example: "event" + type: string + x-enum-varnames: + - EVENT + EventCreateResponse: + description: Event object. + properties: + attributes: + $ref: "#/components/schemas/EventCreateResponseAttributes" + type: + description: Entity type. + example: "event" + type: string + type: object + EventCreateResponseAttributes: + description: Event attributes. + properties: + attributes: + $ref: "#/components/schemas/EventCreateResponseAttributesAttributes" + type: object + EventCreateResponseAttributesAttributes: + description: JSON object for category-specific attributes. + properties: + evt: + $ref: "#/components/schemas/EventCreateResponseAttributesAttributesEvt" + type: object + EventCreateResponseAttributesAttributesEvt: + description: JSON object of event system attributes. + properties: + id: + deprecated: true + description: |- + Event identifier. This field is deprecated and will be removed in a future version. Use the `uid` field instead. + type: string + uid: + description: |- + A unique identifier for the event. You can use this identifier to query or reference the event. + type: string + type: object + EventCreateResponsePayload: + description: Event creation response. + properties: + data: + $ref: "#/components/schemas/EventCreateResponse" + links: + $ref: "#/components/schemas/EventCreateResponsePayloadLinks" + type: object + EventCreateResponsePayloadLinks: + description: |- + Links to the event. + properties: + self: + description: |- + The URL of the event. This link is only functional when using the default subdomain. + type: string + type: object + EventPayload: + additionalProperties: false + description: Event attributes. + properties: + aggregation_key: + description: |- + A string used for aggregation when [correlating](https://docs.datadoghq.com/service_management/events/correlation/) events. If you specify a key, events are deduplicated to alerts based on this key. Limited to 100 characters. + example: "aggregation_key_123" + maxLength: 100 + minLength: 1 + type: string + attributes: + $ref: "#/components/schemas/EventPayloadAttributes" + category: + $ref: "#/components/schemas/EventCategory" + host: + description: |- + Host name to associate with the event. Any tags associated with the host are also applied to this event. Limited to 255 characters. + example: "hostname" + maxLength: 255 + minLength: 1 + type: string + integration_id: + $ref: "#/components/schemas/EventPayloadIntegrationId" + message: + description: |- + Free formed text associated with the event. It's suggested to use `data.attributes.attributes.custom` for well-structured attributes. Limited to 4000 characters. + example: "payment_processed feature flag has been enabled" + maxLength: 4000 + minLength: 1 + type: string + tags: + description: |- + A list of tags associated with the event. Maximum of 100 tags allowed. + Refer to [Tags docs](https://docs.datadoghq.com/getting_started/tagging/). + example: ["env:api_client_test"] + items: + description: A tag. + maxLength: 200 + minLength: 1 + type: string + maxItems: 100 + minItems: 1 + type: array + timestamp: + description: |- + Timestamp when the event occurred. Must follow [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. + For example `"2017-01-15T01:30:15.010000Z"`. + Defaults to the timestamp of receipt. Limited to values no older than 18 hours. + type: string + title: + description: The title of the event. Limited to 500 characters. + example: "payment_processed feature flag updated" + maxLength: 500 + minLength: 1 + type: string + required: + - title + - category + - attributes + type: object + EventPayloadAttributes: + description: |- + JSON object for category-specific attributes. Schema is different per event category. + oneOf: + - $ref: "#/components/schemas/ChangeEventCustomAttributes" + - $ref: "#/components/schemas/AlertEventCustomAttributes" + EventPayloadIntegrationId: + description: |- + Integration ID sourced from integration manifests. + enum: + - custom-events + example: "custom-events" + type: string + x-enum-varnames: + - CUSTOM_EVENTS + EventPriority: + description: |- + The priority of the event's monitor. For example, `normal` or `low`. + enum: + - normal + - low + example: "normal" + nullable: true + type: string + x-enum-varnames: + - NORMAL + - LOW + EventResponse: + description: The object description of an event after being processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/EventResponseAttributes" + id: + description: the unique ID of the event. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/EventType" + type: object + EventResponseAttributes: + description: The object description of an event response attribute. + properties: + attributes: + $ref: "#/components/schemas/EventAttributes" + message: + description: The message of the event. + type: string + tags: + description: An array of tags associated with the event. + example: ["team:A"] + items: + description: The tag associated with the event. + type: string + type: array + timestamp: + description: The timestamp of the event. + example: "2019-01-02T09:42:36.320Z" + format: date-time + type: string + type: object + EventStatusType: + description: |- + If an alert event is enabled, its status is one of the following: + `failure`, `error`, `warning`, `info`, `success`, `user_update`, + `recommendation`, or `snapshot`. + enum: + - failure + - error + - warning + - info + - success + - user_update + - recommendation + - snapshot + example: "info" + type: string + x-enum-varnames: + - FAILURE + - ERROR + - WARNING + - INFO + - SUCCESS + - USER_UPDATE + - RECOMMENDATION + - SNAPSHOT + EventSystemAttributes: + description: JSON object of event system attributes. + properties: + category: + $ref: "#/components/schemas/EventSystemAttributesCategory" + id: + description: Event identifier. This field is deprecated and will be removed in a future version. Use the `uid` field instead. + type: string + integration_id: + $ref: "#/components/schemas/EventSystemAttributesIntegrationId" + source_id: + description: The source type ID of the event. + format: int64 + type: integer + uid: + description: A unique identifier for the event. You can use this identifier to query or reference the event. + type: string + type: object + EventSystemAttributesCategory: + description: Event category identifying the type of event. + enum: + - change + - alert + example: "change" + type: string + x-enum-varnames: + - CHANGE + - ALERT + EventSystemAttributesIntegrationId: + description: Integration ID sourced from integration manifests. + enum: + - custom-events + example: "custom-events" + type: string + x-enum-varnames: + - CUSTOM_EVENTS + EventType: + default: event + description: Type of the event. + enum: + - event + example: "event" + type: string + x-enum-varnames: + - EVENT + EventsAggregation: + default: count + description: The type of aggregation that can be performed on events-based queries. + enum: + - count + - cardinality + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + example: count + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + EventsCompute: + description: The instructions for what to compute for this query. + properties: + aggregation: + $ref: "#/components/schemas/EventsAggregation" + interval: + description: Interval for compute in milliseconds. + example: 60000 + format: int64 + type: integer + metric: + description: The "measure" attribute on which to perform the computation. + type: string + required: + - aggregation + type: object + EventsDataSource: + default: logs + description: A data source that is powered by the Events Platform. + enum: + - logs + - spans + - network + - rum + - security_signals + - profiles + - audit + - events + - ci_tests + - ci_pipelines + - incident_analytics + - product_analytics + - on_call_events + - dora + example: logs + type: string + x-enum-varnames: + - LOGS + - SPANS + - NETWORK + - RUM + - SECURITY_SIGNALS + - PROFILES + - AUDIT + - EVENTS + - CI_TESTS + - CI_PIPELINES + - INCIDENT_ANALYTICS + - PRODUCT_ANALYTICS + - ON_CALL_EVENTS + - DORA + EventsGroupBy: + description: A dimension on which to split a query's results. + properties: + facet: + description: The facet by which to split groups. + example: "@error.type" + type: string + limit: + default: 10 + description: |- + The maximum buckets to return for this group by. Note: at most 10000 buckets are allowed. + If grouping by multiple facets, the product of limits must not exceed 10000. + example: 10 + format: int32 + maximum: 10000 + type: integer + sort: + $ref: "#/components/schemas/EventsGroupBySort" + required: + - facet + type: object + EventsGroupBySort: + description: The dimension by which to sort a query's results. + properties: + aggregation: + $ref: "#/components/schemas/EventsAggregation" + metric: + description: The metric's calculated value which should be used to define the sort order of a query's results. + example: "@duration" + type: string + order: + $ref: "#/components/schemas/QuerySortOrder" + type: + $ref: "#/components/schemas/EventsSortType" + required: + - aggregation + type: object + EventsListRequest: + description: |- + The object sent with the request to retrieve a list of events from your organization. + properties: + filter: + $ref: "#/components/schemas/EventsQueryFilter" + options: + $ref: "#/components/schemas/EventsQueryOptions" + page: + $ref: "#/components/schemas/EventsRequestPage" + sort: + $ref: "#/components/schemas/EventsSort" + type: object + EventsListResponse: + description: The response object with all events matching the request and pagination information. + properties: + data: + description: An array of events matching the request. + items: + $ref: "#/components/schemas/EventResponse" + type: array + links: + $ref: "#/components/schemas/EventsListResponseLinks" + meta: + $ref: "#/components/schemas/EventsResponseMetadata" + type: object + EventsListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: "https://app.datadoghq.com/api/v2/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + EventsQueryFilter: + description: The search and filter query settings. + properties: + from: + default: "now-15m" + description: |- + The minimum time for the requested events. Supports date math and regular timestamps in milliseconds. + example: "now-15m" + type: string + query: + default: "*" + description: The search query following the event search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + to: + default: "now" + description: |- + The maximum time for the requested events. Supports date math and regular timestamps in milliseconds. + example: "now" + type: string + type: object + EventsQueryGroupBys: + description: The list of facets on which to split results. + items: + $ref: "#/components/schemas/EventsGroupBy" + type: array + EventsQueryOptions: + description: |- + The global query options that are used. Either provide a timezone or a time offset but not both, + otherwise the query fails. + properties: + timeOffset: + description: The time offset to apply to the query in seconds. + format: int64 + type: integer + timezone: + default: "UTC" + description: |- + The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: "GMT" + type: string + type: object + EventsRequestPage: + description: Pagination settings. + properties: + cursor: + description: The returned paging point to use to get the next results. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: The maximum number of logs in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + EventsResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/EventsResponseMetadataPage" + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + description: The request status. + example: "done" + type: string + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results might be returned if + warnings are present in the response. + items: + $ref: "#/components/schemas/EventsWarning" + type: array + type: object + EventsResponseMetadataPage: + description: Pagination attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + EventsScalarQuery: + description: >- + An individual scalar query for logs, RUM, traces, CI pipelines, security signals, and other event-based data sources. Use this query type for any data source powered by the Events Platform. See the data_source field for the full list of supported sources. + properties: + compute: + $ref: "#/components/schemas/EventsCompute" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/EventsDataSource" + group_by: + $ref: "#/components/schemas/EventsQueryGroupBys" + indexes: + description: The indexes in which to search. + example: ["main"] + items: + description: The unique index name. + example: main + type: string + type: array + name: + description: The variable name for use in formulas. + type: string + search: + $ref: "#/components/schemas/EventsSearch" + required: + - data_source + - compute + type: object + EventsSearch: + description: Configuration of the search/filter for an events query. + properties: + query: + description: The search/filter string for an events query. + example: "status:warn service:foo" + type: string + type: object + EventsSort: + description: The sort parameters when querying events. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + EventsSortType: + description: The type of sort to use on the calculated value. + enum: + - alphabetical + - measure + type: string + x-enum-varnames: + - ALPHABETICAL + - MEASURE + EventsTimeseriesQuery: + description: >- + An individual timeseries query for logs, RUM, traces, CI pipelines, security signals, and other event-based data sources. Use this query type for any data source powered by the Events Platform. See the data_source field for the full list of supported sources. + properties: + compute: + $ref: "#/components/schemas/EventsCompute" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/EventsDataSource" + group_by: + $ref: "#/components/schemas/EventsQueryGroupBys" + indexes: + description: The indexes in which to search. + example: ["main"] + items: + description: The unique index name. + example: main + type: string + type: array + name: + description: The variable name for use in formulas. + type: string + search: + $ref: "#/components/schemas/EventsSearch" + required: + - data_source + - compute + type: object + EventsWarning: + description: A warning message indicating something is wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: "unknown_index" + type: string + detail: + description: A detailed explanation of this specific warning. + example: "indexes: foo, bar" + type: string + title: + description: A short human-readable summary of the warning. + example: "One or several indexes are missing or invalid. Results hold data from the other indexes." + type: string + type: object + ExecutionPolicyActionPattern: + description: The set of actions this policy applies to. + properties: + action_fqns: + description: |- + The fully qualified action names this policy matches. Use `*` to match all actions + of the integration, or a fully qualified name prefixed with the integration's action + namespace (for example `com.datadoghq.script.*` for the Script integration). + example: + - "com.datadoghq.script.*" + items: + type: string + type: array + integration: + $ref: "#/components/schemas/ExecutionPolicyIntegration" + required: + - integration + - action_fqns + type: object + ExecutionPolicyAttributes: + description: An execution policy. + properties: + action_pattern: + $ref: "#/components/schemas/ExecutionPolicyActionPattern" + created_at: + description: The date and time the execution policy was created. + example: "2026-01-15T10:00:00.000Z" + format: date-time + type: string + created_by: + description: The ID of the user who created the execution policy. + example: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: string + effect: + $ref: "#/components/schemas/ExecutionPolicyEffect" + name: + description: The name of the execution policy. + example: "Block prod restarts" + type: string + scope: + $ref: "#/components/schemas/ExecutionPolicyScope" + targets: + description: The targets this policy applies to. + items: + $ref: "#/components/schemas/ExecutionPolicyTarget" + type: array + updated_at: + description: The date and time the execution policy was last updated. + example: "2026-01-15T10:00:00.000Z" + format: date-time + type: string + updated_by: + description: The ID of the user who last updated the execution policy. + example: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: string + version: + description: The version of the execution policy. Incremented on every update. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - name + - effect + - action_pattern + - targets + - version + - created_at + - updated_at + - created_by + - updated_by + type: object + ExecutionPolicyCreateRequest: + description: Request object that includes the execution policy to create. + properties: + data: + $ref: "#/components/schemas/ExecutionPolicyCreateRequestData" + required: + - data + type: object + ExecutionPolicyCreateRequestData: + description: Object for a single execution policy. + properties: + attributes: + $ref: "#/components/schemas/ExecutionPolicyWriteAttributes" + type: + $ref: "#/components/schemas/ExecutionPolicyType" + required: + - type + - attributes + type: object + ExecutionPolicyEffect: + description: Whether the policy allows or denies matching actions. + enum: + - allow + - deny + example: allow + type: string + x-enum-varnames: + - ALLOW + - DENY + ExecutionPolicyIntegration: + description: The integration the action pattern applies to. + enum: + - INTEGRATION_KUBERNETES + - INTEGRATION_SCRIPT + - INTEGRATION_REMOTE_ACTION + example: INTEGRATION_SCRIPT + type: string + x-enum-varnames: + - INTEGRATION_KUBERNETES + - INTEGRATION_SCRIPT + - INTEGRATION_REMOTE_ACTION + ExecutionPolicyKubernetesScope: + description: Restricts the policy to specific Kubernetes namespaces. + properties: + rules: + description: The Kubernetes scope rules. + items: + $ref: "#/components/schemas/ExecutionPolicyKubernetesScopeRule" + type: array + required: + - rules + type: object + ExecutionPolicyKubernetesScopeRule: + description: A rule restricting a Kubernetes scope to specific namespaces. + properties: + target_namespaces: + description: The Kubernetes namespaces this rule applies to. + example: + - "default" + items: + type: string + type: array + required: + - target_namespaces + type: object + ExecutionPolicyListResponse: + description: Response object that includes a list of execution policies. + properties: + data: + description: The execution policies. + items: + $ref: "#/components/schemas/ExecutionPolicyResponseData" + type: array + meta: + $ref: "#/components/schemas/ExecutionPolicyListResponseMeta" + required: + - data + - meta + type: object + ExecutionPolicyListResponseMeta: + description: Pagination metadata for the list of execution policies. + properties: + page: + $ref: "#/components/schemas/ExecutionPolicyListResponsePage" + required: + - page + type: object + ExecutionPolicyListResponsePage: + description: Pagination details. + properties: + total: + description: The total number of execution policies matching the query. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - total + type: object + ExecutionPolicyRemoteActionRshellAccess: + description: The level of remote shell access granted for the target paths. + enum: + - read_only + - read_write + example: read_only + type: string + x-enum-varnames: + - READ_ONLY + - READ_WRITE + ExecutionPolicyRemoteActionRshellScope: + description: Restricts the policy to specific remote shell paths. + properties: + rules: + description: The remote shell scope rules. + items: + $ref: "#/components/schemas/ExecutionPolicyRemoteActionRshellScopeRule" + type: array + required: + - rules + type: object + ExecutionPolicyRemoteActionRshellScopeRule: + description: A rule restricting remote shell access to specific paths. + properties: + access: + $ref: "#/components/schemas/ExecutionPolicyRemoteActionRshellAccess" + target_paths: + description: The file system paths this rule applies to. + example: + - "/var/log" + items: + type: string + type: array + required: + - target_paths + - access + type: object + ExecutionPolicyResponse: + description: Response object that includes a single execution policy. + properties: + data: + $ref: "#/components/schemas/ExecutionPolicyResponseData" + required: + - data + type: object + ExecutionPolicyResponseData: + description: Object for a single execution policy. + properties: + attributes: + $ref: "#/components/schemas/ExecutionPolicyAttributes" + id: + description: The ID of the execution policy. + example: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + readOnly: true + type: string + type: + $ref: "#/components/schemas/ExecutionPolicyType" + required: + - id + - type + - attributes + type: object + ExecutionPolicyScope: + description: |- + Restricts where the policy applies. At most one of `kubernetes`, `scripts`, + or `remote_action_rshell` can be set. An empty object means the policy has + no scope restriction. + properties: + kubernetes: + $ref: "#/components/schemas/ExecutionPolicyKubernetesScope" + remote_action_rshell: + $ref: "#/components/schemas/ExecutionPolicyRemoteActionRshellScope" + scripts: + $ref: "#/components/schemas/ExecutionPolicyScriptScope" + type: object + ExecutionPolicyScriptScope: + description: Restricts the policy to specific scripts. + properties: + rules: + description: The script scope rules. + items: + $ref: "#/components/schemas/ExecutionPolicyScriptScopeRule" + type: array + required: + - rules + type: object + ExecutionPolicyScriptScopeRule: + description: A rule restricting a script scope to specific script names. + properties: + target_script_names: + description: The script names this rule applies to. + example: + - "restart_service.sh" + items: + type: string + type: array + required: + - target_script_names + type: object + ExecutionPolicyTarget: + description: A target this policy is scoped to, expressed as a set of Agent tags. + properties: + agent_tags: + description: The Agent tags identifying the target. + example: + - "env:prod" + items: + type: string + type: array + name: + description: A human-readable name for the target. + example: "Production hosts" + nullable: true + type: string + required: + - agent_tags + type: object + ExecutionPolicyType: + default: execution_policy + description: The type of the resource. The value should always be `execution_policy`. + enum: + - execution_policy + example: execution_policy + type: string + x-enum-varnames: + - EXECUTION_POLICY + ExecutionPolicyUpdateRequest: + description: Request object that includes the execution policy to update. + properties: + data: + $ref: "#/components/schemas/ExecutionPolicyUpdateRequestData" + required: + - data + type: object + ExecutionPolicyUpdateRequestData: + description: Object for a single execution policy. + properties: + attributes: + $ref: "#/components/schemas/ExecutionPolicyWriteAttributes" + id: + description: The ID of the execution policy. + example: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: string + type: + $ref: "#/components/schemas/ExecutionPolicyType" + required: + - id + - type + - attributes + type: object + ExecutionPolicyWriteAttributes: + description: Attributes used to create or update an execution policy. + properties: + action_pattern: + $ref: "#/components/schemas/ExecutionPolicyActionPattern" + effect: + $ref: "#/components/schemas/ExecutionPolicyEffect" + name: + description: The name of the execution policy. + example: "Block prod restarts" + type: string + scope: + $ref: "#/components/schemas/ExecutionPolicyScope" + targets: + description: The targets this policy applies to. + items: + $ref: "#/components/schemas/ExecutionPolicyTarget" + type: array + required: + - name + - effect + - action_pattern + type: object + ExposureRolloutStepRequest: + description: Rollout step request payload. + properties: + exposure_ratio: + description: The exposure ratio for this step. + example: 0.5 + format: double + maximum: 1 + minimum: 0 + type: number + grouped_step_index: + description: Logical index grouping related steps. + example: 1 + format: int64 + minimum: 0 + type: integer + id: + description: The unique identifier of the progression step. + example: "550e8400-e29b-41d4-a716-446655440040" + format: uuid + type: string + interval_ms: + description: Step duration in milliseconds. + example: 3600000 + format: int64 + nullable: true + type: integer + is_pause_record: + description: Whether this step represents a pause record. + example: false + type: boolean + required: + - exposure_ratio + - is_pause_record + - grouped_step_index + type: object + ExposureScheduleRequest: + description: Progressive release request payload. + properties: + absolute_start_time: + description: The absolute UTC start time for this schedule. + example: "2025-06-13T12:00:00Z" + format: date-time + nullable: true + type: string + control_variant_id: + description: The control variant ID used for experiment comparisons. + example: "550e8400-e29b-41d4-a716-446655440012" + nullable: true + type: string + control_variant_key: + description: The control variant key used during creation workflows. + example: "control" + nullable: true + type: string + id: + description: The unique identifier of the progressive rollout. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + rollout_options: + $ref: "#/components/schemas/RolloutOptionsRequest" + rollout_steps: + description: Ordered progression steps for exposure. + items: + $ref: "#/components/schemas/ExposureRolloutStepRequest" + minItems: 1 + type: array + required: + - rollout_options + - rollout_steps + type: object + FacetInfoRequest: + description: Request body for retrieving facet value information for a specified attribute with optional filtering. + example: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + properties: + data: + $ref: "#/components/schemas/FacetInfoRequestData" + type: object + FacetInfoRequestData: + description: The data object containing the resource type and attributes for the facet info request. + properties: + attributes: + $ref: "#/components/schemas/FacetInfoRequestDataAttributes" + id: + description: Unique identifier for the facet info request resource. + type: string + type: + $ref: "#/components/schemas/FacetInfoRequestDataType" + required: + - type + type: object + FacetInfoRequestDataAttributes: + description: Attributes for the facet info request, specifying which facet to query and optional filters to apply. + properties: + facet_id: + description: The identifier of the facet attribute to retrieve value information for. + example: "" + type: string + limit: + description: Maximum number of facet values to return in the response. + example: 0 + format: int64 + type: integer + search: + $ref: "#/components/schemas/FacetInfoRequestDataAttributesSearch" + term_search: + $ref: "#/components/schemas/FacetInfoRequestDataAttributesTermSearch" + required: + - facet_id + - limit + type: object + FacetInfoRequestDataAttributesSearch: + description: Query-based search configuration for filtering the audience context when retrieving facet values. + properties: + query: + description: The filter expression used to scope the audience from which facet values are retrieved. + type: string + type: object + FacetInfoRequestDataAttributesTermSearch: + description: Term-level search configuration for filtering facet values by an exact or partial term match. + properties: + value: + description: The term string to match against facet values. + type: string + type: object + FacetInfoRequestDataType: + default: users_facet_info_request + description: Users facet info request resource type. + enum: + - users_facet_info_request + example: users_facet_info_request + type: string + x-enum-varnames: + - USERS_FACET_INFO_REQUEST + FacetInfoResponse: + description: Response containing facet information for an attribute, including its distinct values and occurrence counts. + example: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + - count: 2341 + value: Safari + - count: 1567 + value: Firefox + - count: 892 + value: Edge + - count: 234 + value: Opera + id: facet_info_response + type: users_facet_info + properties: + data: + $ref: "#/components/schemas/FacetInfoResponseData" + type: object + FacetInfoResponseData: + description: The data object containing the resource type and attributes for the facet info response. + properties: + attributes: + $ref: "#/components/schemas/FacetInfoResponseDataAttributes" + id: + description: Unique identifier for the facet info response resource. + type: string + type: + $ref: "#/components/schemas/FacetInfoResponseDataType" + required: + - type + type: object + FacetInfoResponseDataAttributes: + description: Attributes of the facet info response, containing the facet result data. + properties: + result: + $ref: "#/components/schemas/FacetInfoResponseDataAttributesResult" + type: object + FacetInfoResponseDataAttributesResult: + description: The facet query result containing discrete value counts or a numeric range for the requested facet. + properties: + range: + $ref: "#/components/schemas/FacetInfoResponseDataAttributesResultRange" + values: + description: List of discrete facet values with their occurrence counts. + items: + $ref: "#/components/schemas/FacetInfoResponseDataAttributesResultValuesItems" + type: array + type: object + FacetInfoResponseDataAttributesResultRange: + description: The numeric range of a facet attribute, representing the minimum and maximum observed values. + properties: + max: + description: The maximum observed value for the numeric facet attribute. + type: object + min: + description: The minimum observed value for the numeric facet attribute. + type: object + type: object + FacetInfoResponseDataAttributesResultValuesItems: + description: A single facet value with its occurrence count in the dataset. + properties: + count: + description: The number of records that have this facet value. + format: int64 + type: integer + value: + description: The facet value (for example, a browser name or country code). + type: string + type: object + FacetInfoResponseDataType: + default: users_facet_info + description: Users facet info resource type. + enum: + - users_facet_info + example: users_facet_info + type: string + x-enum-varnames: + - USERS_FACET_INFO + FastlyAPIKey: + description: The definition of the `FastlyAPIKey` object. + properties: + api_key: + description: The `FastlyAPIKey` `api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/FastlyAPIKeyType" + required: + - type + - api_key + type: object + FastlyAPIKeyType: + description: The definition of the `FastlyAPIKey` object. + enum: + - FastlyAPIKey + example: FastlyAPIKey + type: string + x-enum-varnames: + - FASTLYAPIKEY + FastlyAPIKeyUpdate: + description: The definition of the `FastlyAPIKey` object. + properties: + api_key: + description: The `FastlyAPIKeyUpdate` `api_key`. + type: string + type: + $ref: "#/components/schemas/FastlyAPIKeyType" + required: + - type + type: object + FastlyAccounResponseAttributes: + description: Attributes object of a Fastly account. + properties: + name: + description: The name of the Fastly account. + example: "test-name" + type: string + services: + description: A list of services belonging to the parent account. + items: + $ref: "#/components/schemas/FastlyService" + type: array + required: + - name + type: object + FastlyAccountCreateRequest: + description: Payload schema when adding a Fastly account. + properties: + data: + $ref: "#/components/schemas/FastlyAccountCreateRequestData" + required: + - data + type: object + FastlyAccountCreateRequestAttributes: + description: Attributes object for creating a Fastly account. + properties: + api_key: + description: The API key for the Fastly account. + example: "ABCDEFG123" + type: string + name: + description: The name of the Fastly account. + example: "test-name" + type: string + services: + description: A list of services belonging to the parent account. + items: + $ref: "#/components/schemas/FastlyService" + type: array + required: + - api_key + - name + type: object + FastlyAccountCreateRequestData: + description: Data object for creating a Fastly account. + properties: + attributes: + $ref: "#/components/schemas/FastlyAccountCreateRequestAttributes" + type: + $ref: "#/components/schemas/FastlyAccountType" + required: + - attributes + - type + type: object + FastlyAccountResponse: + description: The expected response schema when getting a Fastly account. + properties: + data: + $ref: "#/components/schemas/FastlyAccountResponseData" + type: object + FastlyAccountResponseData: + description: Data object of a Fastly account. + properties: + attributes: + $ref: "#/components/schemas/FastlyAccounResponseAttributes" + id: + description: The ID of the Fastly account, a hash of the account name. + example: "abc123" + type: string + type: + $ref: "#/components/schemas/FastlyAccountType" + required: + - attributes + - id + - type + type: object + FastlyAccountType: + default: fastly-accounts + description: The JSON:API type for this API. Should always be `fastly-accounts`. + enum: + - fastly-accounts + example: fastly-accounts + type: string + x-enum-varnames: + - FASTLY_ACCOUNTS + FastlyAccountUpdateRequest: + description: Payload schema when updating a Fastly account. + properties: + data: + $ref: "#/components/schemas/FastlyAccountUpdateRequestData" + required: + - data + type: object + FastlyAccountUpdateRequestAttributes: + description: Attributes object for updating a Fastly account. + properties: + api_key: + description: The API key of the Fastly account. + example: "ABCDEFG123" + type: string + name: + description: The name of the Fastly account. + type: string + type: object + FastlyAccountUpdateRequestData: + description: Data object for updating a Fastly account. + properties: + attributes: + $ref: "#/components/schemas/FastlyAccountUpdateRequestAttributes" + type: + $ref: "#/components/schemas/FastlyAccountType" + type: object + FastlyAccountsResponse: + description: The expected response schema when getting Fastly accounts. + properties: + data: + description: The JSON:API data schema. + items: + $ref: "#/components/schemas/FastlyAccountResponseData" + type: array + type: object + FastlyCredentials: + description: The definition of the `FastlyCredentials` object. + oneOf: + - $ref: "#/components/schemas/FastlyAPIKey" + FastlyCredentialsUpdate: + description: The definition of the `FastlyCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/FastlyAPIKeyUpdate" + FastlyIntegration: + description: The definition of the `FastlyIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/FastlyCredentials" + type: + $ref: "#/components/schemas/FastlyIntegrationType" + required: + - type + - credentials + type: object + FastlyIntegrationType: + description: The definition of the `FastlyIntegrationType` object. + enum: + - Fastly + example: Fastly + type: string + x-enum-varnames: + - FASTLY + FastlyIntegrationUpdate: + description: The definition of the `FastlyIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/FastlyCredentialsUpdate" + type: + $ref: "#/components/schemas/FastlyIntegrationType" + required: + - type + type: object + FastlyService: + description: The schema representation of a Fastly service. + properties: + id: + description: The ID of the Fastly service + example: 6abc7de6893AbcDe9fghIj + type: string + tags: + description: A list of tags for the Fastly service. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Fastly service. + type: string + type: array + required: + - id + type: object + FastlyServiceAttributes: + description: Attributes object for Fastly service requests. + properties: + tags: + description: A list of tags for the Fastly service. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Fastly service. + type: string + type: array + type: object + FastlyServiceData: + description: Data object for Fastly service requests. + properties: + attributes: + $ref: "#/components/schemas/FastlyServiceAttributes" + id: + description: The ID of the Fastly service. + example: "abc123" + type: string + type: + $ref: "#/components/schemas/FastlyServiceType" + required: + - id + - type + type: object + FastlyServiceRequest: + description: Payload schema for Fastly service requests. + properties: + data: + $ref: "#/components/schemas/FastlyServiceData" + required: + - data + type: object + FastlyServiceResponse: + description: The expected response schema when getting a Fastly service. + properties: + data: + $ref: "#/components/schemas/FastlyServiceData" + type: object + FastlyServiceType: + default: fastly-services + description: The JSON:API type for this API. Should always be `fastly-services`. + enum: + - fastly-services + example: fastly-services + type: string + x-enum-varnames: + - FASTLY_SERVICES + FastlyServicesResponse: + description: The expected response schema when getting Fastly services. + properties: + data: + description: The JSON:API data schema. + items: + $ref: "#/components/schemas/FastlyServiceData" + type: array + type: object + FeatureFlag: + description: A feature flag resource. + properties: + attributes: + $ref: "#/components/schemas/FeatureFlagAttributes" + id: + description: The unique identifier of the feature flag. + example: "550e8400-e29b-41d4-a716-446655440000" + format: uuid + type: string + type: + $ref: "#/components/schemas/CreateFeatureFlagDataType" + required: + - id + - type + - attributes + type: object + FeatureFlagAttributes: + description: Attributes of a feature flag. + properties: + archived_at: + description: The timestamp when the feature flag was archived. + example: "2023-01-01T00:00:00Z" + format: date-time + nullable: true + type: string + created_at: + description: The timestamp when the feature flag was created. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + created_by: + description: The ID of the user who created the feature flag. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + description: + description: The description of the feature flag. + example: "This is an example feature flag for demonstration" + type: string + distribution_channel: + description: Distribution channel for the feature flag. + example: "ALL" + type: string + feature_flag_environments: + description: Environment-specific settings for the feature flag. + items: + $ref: "#/components/schemas/FeatureFlagEnvironment" + type: array + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + key: + description: The unique key of the feature flag. + example: "feature-flag-abc123" + type: string + last_updated_by: + description: The ID of the user who last updated the feature flag. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + name: + description: The name of the feature flag. + example: "Feature Flag ABC123" + type: string + require_approval: + description: Indicates whether this feature flag requires approval for changes. + example: false + type: boolean + staleness_status: + description: Indicates the whether a feature flag is stale or not. + example: "ACTIVE" + type: string + tags: + description: Tags associated with the feature flag. + example: [] + items: + description: A tag associated with the feature flag. + type: string + type: array + updated_at: + description: The timestamp when the feature flag was last updated. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + value_type: + $ref: "#/components/schemas/ValueType" + variants: + description: The variants of the feature flag. + items: + $ref: "#/components/schemas/Variant" + type: array + required: + - key + - name + - description + - value_type + - variants + type: object + FeatureFlagEnvironment: + description: Environment-specific settings for a feature flag. + properties: + allocations: + additionalProperties: {} + description: Allocation metadata for this environment. + nullable: true + type: object + default_allocation_key: + description: The allocation key used for the default variant. + example: "allocation-default-123abc" + type: string + default_variant_id: + description: The ID of the default variant for this environment. + example: "550e8400-e29b-41d4-a716-446655440002" + nullable: true + type: string + environment_id: + description: The ID of the environment. + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + environment_name: + description: The name of the environment. + example: "env-search-term" + type: string + environment_queries: + description: Queries that target this environment. + example: + - "test-feature-flag" + - "env-search-term" + items: + description: A query string targeting the environment. + type: string + type: array + is_production: + description: Indicates whether the environment is production. + example: false + type: boolean + override_allocation_key: + description: The allocation key used for the override variant. + example: "allocation-override-123abc" + type: string + override_variant_id: + description: The ID of the override variant for this environment. + example: "550e8400-e29b-41d4-a716-446655440003" + nullable: true + type: string + pending_suggestion_id: + description: Pending suggestion identifier, if approval is required. + example: "550e8400-e29b-41d4-a716-446655440099" + nullable: true + type: string + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + status: + $ref: "#/components/schemas/FeatureFlagStatus" + required: + - environment_id + - status + type: object + FeatureFlagEnvironmentListItem: + description: Environment-specific settings for a feature flag in list responses. + properties: + default_allocation_key: + description: The allocation key used for the default variant. + example: "allocation-default-123abc" + type: string + default_variant_id: + description: The ID of the default variant for this environment. + example: "550e8400-e29b-41d4-a716-446655440002" + nullable: true + type: string + environment_id: + description: The ID of the environment. + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + environment_name: + description: The name of the environment. + example: "env-search-term" + type: string + environment_queries: + description: Queries that target this environment. + example: + - "test-feature-flag" + - "env-search-term" + items: + description: A query string targeting the environment. + type: string + type: array + is_production: + description: Indicates whether the environment is production. + example: false + type: boolean + override_allocation_key: + description: The allocation key used for the override variant. + example: "allocation-override-123abc" + type: string + override_variant_id: + description: The ID of the override variant for this environment. + example: "550e8400-e29b-41d4-a716-446655440003" + nullable: true + type: string + pending_suggestion_id: + description: Pending suggestion identifier, if approval is required. + example: "550e8400-e29b-41d4-a716-446655440099" + nullable: true + type: string + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + status: + $ref: "#/components/schemas/FeatureFlagStatus" + required: + - environment_id + - status + type: object + FeatureFlagListItem: + description: A feature flag resource for list responses. + properties: + attributes: + $ref: "#/components/schemas/FeatureFlagListItemAttributes" + id: + description: The unique identifier of the feature flag. + example: "550e8400-e29b-41d4-a716-446655440000" + format: uuid + type: string + type: + $ref: "#/components/schemas/CreateFeatureFlagDataType" + required: + - id + - type + - attributes + type: object + FeatureFlagListItemAttributes: + description: Attributes of a feature flag in list responses. + properties: + archived_at: + description: The timestamp when the feature flag was archived. + example: "2023-01-01T00:00:00Z" + format: date-time + nullable: true + type: string + created_at: + description: The timestamp when the feature flag was created. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + created_by: + description: The ID of the user who created the feature flag. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + description: + description: The description of the feature flag. + example: "This is an example feature flag for demonstration" + type: string + distribution_channel: + description: Distribution channel for the feature flag. + example: "ALL" + type: string + feature_flag_environments: + description: Environment-specific settings for the feature flag. + items: + $ref: "#/components/schemas/FeatureFlagEnvironmentListItem" + type: array + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + key: + description: The unique key of the feature flag. + example: "feature-flag-abc123" + type: string + last_updated_by: + description: The ID of the user who last updated the feature flag. + example: "550e8400-e29b-41d4-a716-446655440010" + format: uuid + type: string + name: + description: The name of the feature flag. + example: "Feature Flag ABC123" + type: string + require_approval: + description: Indicates whether this feature flag requires approval for changes. + example: false + type: boolean + staleness_status: + description: Indicates the staleness status of the feature flag. + example: "ACTIVE" + type: string + tags: + description: Tags associated with the feature flag. + example: [] + items: + description: A tag associated with the feature flag. + type: string + type: array + updated_at: + description: The timestamp when the feature flag was last updated. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + value_type: + $ref: "#/components/schemas/ValueType" + variants: + description: The variants of the feature flag. + items: + $ref: "#/components/schemas/Variant" + type: array + required: + - key + - name + - description + - value_type + - variants + type: object + FeatureFlagResponse: + description: Response containing a feature flag. + properties: + data: + $ref: "#/components/schemas/FeatureFlag" + required: + - data + type: object + FeatureFlagStatus: + description: The status of a feature flag in an environment. + enum: + - ENABLED + - DISABLED + example: "ENABLED" + type: string + x-enum-varnames: + - ENABLED + - DISABLED + FeatureFlagsPaginationMeta: + description: Pagination metadata for feature flags. + properties: + page: + $ref: "#/components/schemas/FeatureFlagsPaginationMetaPage" + type: object + FeatureFlagsPaginationMetaPage: + description: Pagination metadata for feature flags list responses. + properties: + total_count: + description: Total number of items. + example: 100 + format: int64 + type: integer + total_filtered_count: + description: Total number of items matching the filter. + example: 25 + format: int64 + type: integer + type: object + FiltersPerProduct: + description: Product-specific filters for the dataset. + properties: + filters: + description: |- + Defines the list of tag-based filters used to restrict access to telemetry data for a specific product. + These filters act as access control rules. Each filter must follow the tag query syntax used by + Datadog (such as `@tag.key:value`), and only one tag or attribute may be used to define the access strategy + per telemetry type. + example: + - "@application.id:ABCD" + items: + description: A tag-based filter expression using Datadog tag query syntax. + example: "@application.id:ABCD" + type: string + type: array + product: + description: |- + Name of the product the dataset is for. Possible values are 'apm', 'rum', + 'metrics', 'logs', 'error_tracking', 'cloud_cost', 'sd_repoinfo', 'secruntime', and 'signal'. + example: "logs" + type: string + required: + - product + - filters + type: object + Finding: + description: A single finding without the message and resource configuration. + properties: + attributes: + $ref: "#/components/schemas/FindingAttributes" + id: + $ref: "#/components/schemas/FindingID" + type: + $ref: "#/components/schemas/FindingType" + type: object + FindingAttributes: + description: The JSON:API attributes of the finding. + properties: + datadog_link: + $ref: "#/components/schemas/FindingDatadogLink" + description: + $ref: "#/components/schemas/FindingDescription" + evaluation: + $ref: "#/components/schemas/FindingEvaluation" + evaluation_changed_at: + $ref: "#/components/schemas/FindingEvaluationChangedAt" + external_id: + $ref: "#/components/schemas/FindingExternalId" + mute: + $ref: "#/components/schemas/FindingMute" + resource: + $ref: "#/components/schemas/FindingResource" + resource_discovery_date: + $ref: "#/components/schemas/FindingResourceDiscoveryDate" + resource_type: + $ref: "#/components/schemas/FindingResourceType" + rule: + $ref: "#/components/schemas/FindingRule" + status: + $ref: "#/components/schemas/FindingStatus" + tags: + $ref: "#/components/schemas/FindingTags" + vulnerability_type: + $ref: "#/components/schemas/FindingVulnerabilityType" + type: object + FindingCaseResponse: + description: Case response. + properties: + data: + $ref: "#/components/schemas/FindingCaseResponseData" + type: object + FindingCaseResponseArray: + description: List of case responses. + properties: + data: + description: Array of case response data objects. + items: + $ref: "#/components/schemas/FindingCaseResponseData" + type: array + required: + - data + type: object + FindingCaseResponseData: + description: Data of the case. + properties: + attributes: + $ref: "#/components/schemas/FindingCaseResponseDataAttributes" + id: + description: Unique identifier of the case. + example: "c1234567-89ab-cdef-0123-456789abcdef" + type: string + relationships: + $ref: "#/components/schemas/FindingCaseResponseDataRelationships" + type: + $ref: "#/components/schemas/CaseDataType" + required: + - type + type: object + FindingCaseResponseDataAttributes: + description: Attributes of the case. + properties: + archived_at: + description: Timestamp of when the case was archived. + example: "2025-01-01T00:00:00.000Z" + format: date-time + type: string + assigned_to: + $ref: "#/components/schemas/RelationshipToUser" + description: User assigned to the case. + attributes: + additionalProperties: + items: + description: A custom attribute value string. + type: string + type: array + description: Custom attributes associated with the case as key-value pairs where values are string arrays. + type: object + closed_at: + description: Timestamp of when the case was closed. + example: "2025-01-01T00:00:00.000Z" + format: date-time + type: string + created_at: + description: Timestamp of when the case was created. + example: "2025-01-01T00:00:00.000Z" + format: date-time + type: string + creation_source: + description: Source of the case creation. + example: "CS_SECURITY_FINDING" + type: string + description: + description: Description of the case. + example: "A description of the case." + type: string + due_date: + description: Due date of the case. + example: "2025-01-01" + type: string + insights: + description: Insights of the case. + items: + $ref: "#/components/schemas/CaseInsightsItems" + type: array + jira_issue: + $ref: "#/components/schemas/FindingJiraIssue" + description: Jira issue associated with the case. + key: + description: Key of the case. + example: "PROJ-123" + type: string + linear_issue: + $ref: "#/components/schemas/FindingLinearIssue" + description: Linear issue associated with the case. + modified_at: + description: Timestamp of when the case was last modified. + example: "2025-01-01T00:00:00.000Z" + format: date-time + type: string + priority: + description: Priority of the case. + example: "P4" + type: string + servicenow_ticket: + $ref: "#/components/schemas/FindingServiceNowTicket" + description: ServiceNow ticket associated with the case. + status: + description: Status of the case. + example: "OPEN" + type: string + status_group: + description: Status group of the case. + example: "SG_OPEN" + type: string + status_name: + description: Status name of the case. + example: "Open" + type: string + title: + description: Title of the case. + example: "A title for the case." + type: string + type: + description: Type of the case. For security cases, this is always "SECURITY". + example: "SECURITY" + type: string + type: object + FindingCaseResponseDataRelationships: + description: Relationships of the case. + properties: + created_by: + $ref: "#/components/schemas/RelationshipToUser" + description: User who created the case. + modified_by: + $ref: "#/components/schemas/RelationshipToUser" + description: User who last modified the case. + project: + $ref: "#/components/schemas/CaseManagementProject" + description: Project in which the case was created. + type: object + FindingData: + description: Data object representing a security finding. + properties: + id: + description: Unique identifier of the security finding. + example: "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==" + type: string + type: + $ref: "#/components/schemas/FindingDataType" + required: + - type + - id + type: object + FindingDataType: + default: findings + description: Security findings resource type. + enum: + - findings + example: findings + type: string + x-enum-varnames: + - FINDINGS + FindingDatadogLink: + description: The Datadog relative link for this finding. + example: "/security/compliance?panels=cpfinding%7Cevent%7CruleId%3Adef-000-u5t%7CresourceId%3Ae8c9ab7c52ebd7bf2fdb4db641082d7d%7CtabId%3Aoverview" + type: string + FindingDescription: + description: The description and remediation steps for this finding. + example: "## Remediation\n\n1. In the console, go to **Storage Account**.\n2. For each Storage Account, navigate to **Data Protection**.\n3. Select **Set soft delete enabled** and enter the number of days to retain soft deleted data." + type: string + FindingEvaluation: + description: The evaluation of the finding. + enum: + - pass + - fail + example: pass + type: string + x-enum-varnames: ["PASS", "FAIL"] + FindingEvaluationChangedAt: + description: The date on which the evaluation for this finding changed (Unix ms). + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + FindingExternalId: + description: The cloud-based ID for the resource related to the finding. + example: "arn:aws:s3:::my-example-bucket" + type: string + FindingID: + description: The unique ID for this finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: string + FindingJiraIssue: + description: Jira issue associated with the case. + properties: + error_message: + description: Error message if the Jira issue creation failed. + example: '{"errorMessages":["An error occured."],"errors":{}}' + type: string + result: + $ref: "#/components/schemas/FindingJiraIssueResult" + status: + description: Status of the Jira issue creation. Can be "COMPLETED" if the Jira issue was created successfully, or "FAILED" if the Jira issue creation failed. + example: "COMPLETED" + type: string + type: object + FindingJiraIssueResult: + description: Result of the Jira issue creation. + properties: + account_id: + description: Account ID of the Jira issue. + example: "463a8631-680e-455c-bfd3-3ed04d326eb7" + type: string + issue_id: + description: Unique identifier of the Jira issue. + example: "2871276" + type: string + issue_key: + description: Key of the Jira issue. + example: "PROJ-123" + type: string + issue_url: + description: URL of the Jira issue. + example: "https://domain.atlassian.net/browse/PROJ-123" + type: string + type: object + FindingLinearIssue: + description: Linear issue associated with the case. + properties: + error_message: + description: Error message if the Linear issue creation failed. + example: "Linear issue creation failed." + type: string + result: + $ref: "#/components/schemas/FindingLinearIssueResult" + status: + description: Status of the Linear issue creation. Can be "COMPLETED" if the Linear issue was created successfully, or "FAILED" if the Linear issue creation failed. + example: "COMPLETED" + type: string + type: object + FindingLinearIssueResult: + description: Result of the Linear issue creation. + properties: + account_id: + description: Account ID of the Linear workspace. + example: "463a8631-680e-455c-bfd3-3ed04d326eb7" + type: string + issue_id: + description: Unique identifier of the Linear issue. + example: "9c1e5f8a-2b3d-4c7e-8f6a-1d2e3f4a5b6c" + type: string + issue_key: + description: Key of the Linear issue. + example: "ENG-123" + type: string + team_id: + description: Team ID of the Linear issue. + example: "b5d3c8a1-7e6f-4d2c-9a8b-3c4d5e6f7a8b" + type: string + url: + description: URL of the Linear issue. + example: "https://linear.app/your-workspace/issue/ENG-123" + type: string + type: object + FindingMute: + additionalProperties: false + description: Information about the mute status of this finding. + properties: + description: + description: Additional information about the reason why this finding is muted or unmuted. + example: To be resolved later + type: string + expiration_date: + description: The expiration date of the mute or unmute action (Unix ms). + example: 1778721573794 + format: int64 + type: integer + muted: + description: Whether this finding is muted or unmuted. + example: true + type: boolean + reason: + $ref: "#/components/schemas/FindingMuteReason" + start_date: + description: The start of the mute period. + example: 1678721573794 + format: int64 + type: integer + uuid: + description: The ID of the user who muted or unmuted this finding. + example: e51c9744-d158-11ec-ad23-da7ad0900002 + type: string + type: object + FindingMuteReason: + description: The reason why this finding is muted or unmuted. + enum: + - PENDING_FIX + - FALSE_POSITIVE + - ACCEPTED_RISK + - NO_PENDING_FIX + - HUMAN_ERROR + - NO_LONGER_ACCEPTED_RISK + - OTHER + example: ACCEPTED_RISK + type: string + x-enum-varnames: ["PENDING_FIX", "FALSE_POSITIVE", "ACCEPTED_RISK", "NO_PENDING_FIX", "HUMAN_ERROR", "NO_LONGER_ACCEPTED_RISK", "OTHER"] + FindingResource: + description: The resource name of this finding. + example: my_resource_name + type: string + FindingResourceDiscoveryDate: + description: The date on which the resource was discovered (Unix ms). + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + FindingResourceType: + description: The resource type of this finding. + example: azure_storage_account + type: string + FindingRule: + additionalProperties: false + description: The rule that triggered this finding. + properties: + id: + description: The ID of the rule that triggered this finding. + example: dv2-jzf-41i + type: string + name: + description: The name of the rule that triggered this finding. + example: Soft delete is enabled for Azure Storage + type: string + type: object + FindingServiceNowTicket: + description: ServiceNow ticket associated with the case. + properties: + result: + $ref: "#/components/schemas/FindingServiceNowTicketResult" + status: + description: Status of the ServiceNow ticket operation. Can be "COMPLETED" if successful, or "FAILED" if the operation failed. + example: "COMPLETED" + type: string + type: object + FindingServiceNowTicketResult: + description: Result of the ServiceNow ticket creation or attachment. + properties: + instance_name: + description: ServiceNow instance name extracted from the ticket URL. + example: "example" + type: string + sys_id: + description: Unique identifier of the ServiceNow incident record. + example: "abcdef0123456789abcdef0123456789" + type: string + sys_target_link: + description: Direct link to the ServiceNow incident record. + example: "https://example.service-now.com/incident.do?sys_id=abcdef0123456789abcdef0123456789" + type: string + sys_target_sys_id: + description: Unique identifier of the target ServiceNow record. + example: "abcdef0123456789abcdef0123456789" + type: string + table_name: + description: ServiceNow table containing the incident record. + example: "incident" + type: string + url: + description: URL of the ServiceNow incident record. + example: "https://example.service-now.com/now/nav/ui/classic/params/target/incident.do?sys_id=abcdef0123456789abcdef0123456789" + type: string + type: object + FindingStatus: + description: The status of the finding. + enum: + - critical + - high + - medium + - low + - info + example: critical + type: string + x-enum-varnames: ["CRITICAL", "HIGH", "MEDIUM", "LOW", "INFO"] + FindingTags: + description: The tags associated with this finding. + example: + - cloud_provider:aws + - myTag:myValue + items: + description: The list of tags. + type: string + type: array + FindingType: + default: finding + description: The JSON:API type for findings. + enum: + - finding + example: finding + type: string + x-enum-varnames: ["FINDING"] + FindingVulnerabilityType: + description: The vulnerability type of the finding. + enum: + - misconfiguration + - attack_path + - identity_risk + - api_security + example: misconfiguration + type: string + x-enum-varnames: + - MISCONFIGURATION + - ATTACK_PATH + - IDENTITY_RISK + - API_SECURITY + Findings: + description: A list of security findings. + properties: + data: + description: Array of security finding data objects. + items: + $ref: "#/components/schemas/FindingData" + type: array + type: object + FlakyTest: + description: A flaky test object. + properties: + attributes: + $ref: "#/components/schemas/FlakyTestAttributes" + id: + description: |- + Test's ID. This ID is the hash of the test's Fully Qualified Name and Git repository ID. It is the + value of the `@test.fingerprint_fqn` facet on test events, which you can search on in the Test + Optimization Explorer to locate a specific test. To filter search results by this ID, use the + `fingerprint_fqn` search key. + type: string + type: + $ref: "#/components/schemas/FlakyTestType" + type: object + FlakyTestAttributes: + description: Attributes of a flaky test. + properties: + attempt_to_fix_id: + description: |- + Unique identifier for the attempt to fix this flaky test. Use this ID in the Git commit message in order to trigger the attempt to fix workflow. + + When the workflow is triggered the test is automatically retried by the tracer a certain number of configurable times. When all retries pass, the test is automatically marked as fixed in Flaky Test Management. + Test runs are tagged with @test.test_management.attempt_to_fix_passed and @test.test_management.is_attempt_to_fix when the attempt to fix workflow is triggered. + example: I42TEO + type: string + codeowners: + description: The name of the test's code owners as inferred from the repository configuration. + example: ["@foo", "@bar"] + items: + description: A code owner of the test as inferred from the repository configuration. + type: string + type: array + envs: + description: List of environments where this test has been flaky. + example: prod + items: + description: An environment name where this test has been flaky. + type: string + type: array + first_flaked_branch: + description: The branch name where the test exhibited flakiness for the first time. + example: main + type: string + first_flaked_sha: + description: The commit SHA where the test exhibited flakiness for the first time. + example: 0c6be03165b7f7ffe96e076ffb29afb2825616c3 + type: string + first_flaked_ts: + description: Unix timestamp when the test exhibited flakiness for the first time. + example: 1757688149 + format: int64 + type: integer + flaky_category: + description: The category of a flaky test. + example: Timeout + nullable: true + type: string + flaky_state: + $ref: "#/components/schemas/FlakyTestAttributesFlakyState" + history: + description: |- + Chronological history of status changes for this flaky test, ordered from most recent to oldest. + Includes state transitions like new -> quarantined -> fixed, along with the associated commit SHA when available. + example: + - commit_sha: abc123def456 + policy_id: ftm_policy.quarantine.failure_rate + policy_meta: + config: + failure_rate: 0.1 + required_runs: 100 + failure_rate: 0.25 + total_runs: 200 + status: quarantined + timestamp: 1704067200000 + - commit_sha: "" + policy_id: unknown + policy_meta: + status: new + timestamp: 1703980800000 + items: + $ref: "#/components/schemas/FlakyTestHistory" + type: array + impact_level: + $ref: "#/components/schemas/FlakyTestImpactLevel" + nullable: true + impact_score: + description: A score from 0 to 1 indicating the impact of this flaky test, based on factors such as how often it fails and how many pipelines it affects. + example: 0.78 + format: double + maximum: 1 + minimum: 0 + nullable: true + type: number + last_flaked_branch: + description: The branch name where the test exhibited flakiness for the last time. + example: main + type: string + last_flaked_sha: + description: The commit SHA where the test exhibited flakiness for the last time. + example: 0c6be03165b7f7ffe96e076ffb29afb2825616c3 + type: string + last_flaked_ts: + description: Unix timestamp when the test exhibited flakiness for the last time. + example: 1757688149 + format: int64 + type: integer + module: + description: |- + The name of the test module. The definition of module changes slightly per language: + - In .NET, a test module groups every test that is run under the same unit test project. + - In Swift, a test module groups every test that is run for a given bundle. + - In JavaScript, the test modules map one-to-one to test sessions. + - In Java, a test module groups every test that is run by the same Maven Surefire/Failsafe or Gradle Test task execution. + - In Python, a test module groups every test that is run under the same `.py` file as part of a test suite, which is typically managed by a framework like `unittest` or `pytest`. + - In Ruby, a test module groups every test that is run within the same test file, which is typically managed by a framework like `RSpec` or `Minitest`. + example: TestModule + nullable: true + type: string + name: + description: The test name. A concise name for a test case. Defined in the test itself. + example: TestName + type: string + pipeline_stats: + $ref: "#/components/schemas/FlakyTestPipelineStats" + nullable: true + services: + description: |- + List of test service names where this test has been flaky. + + A test service is a group of tests associated with a project or repository. It contains all the individual tests for your code, optionally organized into test suites, which are like folders for your tests. + example: ["foo", "bar"] + items: + description: A test service name where this test has been flaky. + type: string + type: array + suite: + description: The name of the test suite. A group of tests exercising the same unit of code depending on your language and testing framework. + example: TestSuite + type: string + test_run_metadata: + $ref: "#/components/schemas/FlakyTestRunMetadata" + test_stats: + $ref: "#/components/schemas/FlakyTestStats" + type: object + FlakyTestAttributesFlakyState: + description: The current state of the flaky test. + enum: [active, fixed, quarantined, disabled] + example: active + type: string + x-enum-varnames: [ACTIVE, FIXED, QUARANTINED, DISABLED] + FlakyTestHistory: + description: A single history entry representing a status change for a flaky test. + properties: + commit_sha: + description: The commit SHA associated with this status change. Will be an empty string if the commit SHA is not available. + example: abc123def456 + type: string + policy_id: + $ref: "#/components/schemas/FlakyTestHistoryPolicyId" + policy_meta: + $ref: "#/components/schemas/FlakyTestHistoryPolicyMeta" + nullable: true + status: + description: The test status at this point in history. + example: quarantined + type: string + timestamp: + description: Unix timestamp in milliseconds when this status change occurred. + example: 1704067200000 + format: int64 + type: integer + required: + - status + - commit_sha + - timestamp + type: object + FlakyTestHistoryPolicyId: + description: The policy that triggered this status change. + enum: + - ftm_policy.manual + - ftm_policy.fixed + - ftm_policy.disable.failure_rate + - ftm_policy.disable.branch_flake + - ftm_policy.disable.days_active + - ftm_policy.quarantine.failure_rate + - ftm_policy.quarantine.branch_flake + - ftm_policy.quarantine.days_active + - unknown + example: ftm_policy.quarantine.failure_rate + nullable: false + type: string + x-enum-varnames: + - MANUAL + - FIXED + - DISABLE_FAILURE_RATE + - DISABLE_BRANCH_FLAKE + - DISABLE_DAYS_ACTIVE + - QUARANTINE_FAILURE_RATE + - QUARANTINE_BRANCH_FLAKE + - QUARANTINE_DAYS_ACTIVE + - UNKNOWN + FlakyTestHistoryPolicyMeta: + description: Metadata about the policy that triggered this status change. + properties: + branches: + description: Branches where the test was flaky at the time of the status change. + example: ["main", "develop"] + items: + type: string + nullable: true + type: array + config: + $ref: "#/components/schemas/FlakyTestHistoryPolicyMetaConfig" + nullable: true + days_active: + description: The number of days the test has been active at the time of the status change. + example: 15 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + days_without_flake: + description: The number of days since the test last exhibited flakiness. + example: 30 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + failure_rate: + description: The failure rate of the test at the time of the status change. + example: 0.25 + format: double + maximum: 1 + minimum: 0 + nullable: true + type: number + state: + description: The previous state of the test. + example: quarantined + nullable: true + type: string + total_runs: + description: The total number of test runs at the time of the status change. + example: 200 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + type: object + FlakyTestHistoryPolicyMetaConfig: + description: Configuration parameters of the policy that triggered this status change. + properties: + branches: + description: The branches considered by the policy. + example: ["main"] + items: + type: string + nullable: true + type: array + days_active: + description: The number of days a test must have been active for the policy to trigger. + example: 30 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + failure_rate: + description: The failure rate threshold for the policy to trigger. + example: 0.7 + format: double + maximum: 1 + minimum: 0 + nullable: true + type: number + forget_branches: + description: Branches excluded from the policy evaluation. + example: ["release"] + items: + type: string + nullable: true + type: array + required_runs: + description: The minimum number of test runs required for the policy to trigger. + example: 100 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + state: + description: The target state the policy transitions the test from. + example: quarantined + nullable: true + type: string + test_services: + description: Test services excluded from the policy evaluation. + example: ["my-service"] + items: + type: string + nullable: true + type: array + type: object + FlakyTestImpactLevel: + description: The impact level of the flaky test, derived from its impact score. + enum: [low, medium, high] + example: medium + type: string + x-enum-varnames: [LOW, MEDIUM, HIGH] + FlakyTestPipelineStats: + description: CI pipeline related statistics for the flaky test. This information is only available if test runs are associated with CI pipeline events from CI Visibility. + properties: + failed_pipelines: + description: The number of pipelines that failed due to this test for the past 7 days. This is computed as the sum of failed CI pipeline events associated with test runs where the flaky test failed. + example: 319 + format: int64 + nullable: true + type: integer + total_lost_time_ms: + description: The total time lost by CI pipelines due to this flaky test in milliseconds. This is computed as the sum of the duration of failed CI pipeline events associated with test runs where the flaky test failed. + example: 1527550000 + format: int64 + nullable: true + type: integer + type: object + FlakyTestRunMetadata: + description: Metadata about the latest failed test run of the flaky test. + properties: + duration_ms: + description: The duration of the test run in milliseconds. + example: 27398 + format: int64 + nullable: true + type: integer + error_message: + description: The error message from the test failure. + example: "Expecting actual not to be empty" + nullable: true + type: string + error_stack: + description: The stack trace from the test failure. + example: "Traceback (most recent call last):\n File \"test_foo.py\", line 10, in test_foo\n assert actual == expected\nAssertionError: Expecting actual not to be empty" + nullable: true + type: string + source_end: + description: The line number where the test ends in the source file. + example: 20 + format: int64 + nullable: true + type: integer + source_file: + description: The source file where the test is defined. + example: test_foo.py + nullable: true + type: string + source_start: + description: The line number where the test starts in the source file. + example: 10 + format: int64 + nullable: true + type: integer + type: object + FlakyTestStats: + description: Test statistics for the flaky test. + properties: + failure_rate_pct: + description: The failure rate percentage of the test for the past 7 days. This is the number of failed test runs divided by the total number of test runs (excluding skipped test runs). + example: 0.1 + format: double + nullable: true + type: number + type: object + FlakyTestType: + description: The type of the flaky test from Flaky Test Management. + enum: [flaky_test] + type: string + x-enum-varnames: [FLAKY_TEST] + FlakyTestsPagination: + description: Pagination metadata for flaky tests. + properties: + next_page: + description: Cursor for the next page of results. + nullable: true + type: string + type: object + FlakyTestsSearchFilter: + description: Search filter settings. + properties: + include_history: + default: false + description: |- + Whether to include the status change history for each flaky test in the response. + When set to true, each test will include a `history` array with chronological status changes. + Defaults to false. + example: true + type: boolean + query: + default: "*" + description: |- + Search query following log syntax used to filter flaky tests, same as on Flaky Tests Management UI. The supported search keys are: + - `flaky_test_state` + - `flaky_test_category` + - `@test.name` + - `@test.suite` + - `@test.module` + - `@test.service` + - `@git.repository.id_v2` + - `@git.branch` + - `@test.codeowners` + - `env` + - `fingerprint_fqn` + + Use `fingerprint_fqn` to filter by a test's stable Fingerprint FQN (the same value as the test's `id`). + example: 'flaky_test_state:active @git.repository.id_v2:"github.com/datadog/shopist"' + type: string + type: object + FlakyTestsSearchPageOptions: + description: Pagination attributes for listing flaky tests. + properties: + cursor: + description: |- + List following results with a cursor provided in the previous request. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: Maximum number of flaky tests in the response. + example: 25 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + type: object + FlakyTestsSearchRequest: + description: The request for a flaky tests search. + properties: + data: + $ref: "#/components/schemas/FlakyTestsSearchRequestData" + type: object + FlakyTestsSearchRequestAttributes: + description: Attributes for the flaky tests search request. + properties: + filter: + $ref: "#/components/schemas/FlakyTestsSearchFilter" + page: + $ref: "#/components/schemas/FlakyTestsSearchPageOptions" + sort: + $ref: "#/components/schemas/FlakyTestsSearchSort" + type: object + FlakyTestsSearchRequestData: + description: The JSON:API data for flaky tests search request. + properties: + attributes: + $ref: "#/components/schemas/FlakyTestsSearchRequestAttributes" + type: + $ref: "#/components/schemas/FlakyTestsSearchRequestDataType" + type: object + FlakyTestsSearchRequestDataType: + description: The definition of `FlakyTestsSearchRequestDataType` object. + enum: + - search_flaky_tests_request + type: string + x-enum-varnames: + - SEARCH_FLAKY_TESTS_REQUEST + FlakyTestsSearchResponse: + description: Response object with flaky tests matching the search request. + properties: + data: + description: Array of flaky tests matching the request. + items: + $ref: "#/components/schemas/FlakyTest" + type: array + meta: + $ref: "#/components/schemas/FlakyTestsSearchResponseMeta" + type: object + FlakyTestsSearchResponseMeta: + description: Metadata for the flaky tests search response. + properties: + pagination: + $ref: "#/components/schemas/FlakyTestsPagination" + type: object + FlakyTestsSearchSort: + description: Parameter for sorting flaky test results. The default sort is by ascending Fully Qualified Name (FQN). The FQN is the concatenation of the test module, suite, and name. + enum: + - fqn + - -fqn + - first_flaked + - -first_flaked + - last_flaked + - -last_flaked + - failure_rate + - -failure_rate + - pipelines_failed + - -pipelines_failed + - pipelines_duration_lost + - -pipelines_duration_lost + example: failure_rate + type: string + x-enum-varnames: + - FQN_ASCENDING + - FQN_DESCENDING + - FIRST_FLAKED_ASCENDING + - FIRST_FLAKED_DESCENDING + - LAST_FLAKED_ASCENDING + - LAST_FLAKED_DESCENDING + - FAILURE_RATE_ASCENDING + - FAILURE_RATE_DESCENDING + - PIPELINES_FAILED_ASCENDING + - PIPELINES_FAILED_DESCENDING + - PIPELINES_DURATION_LOST_ASCENDING + - PIPELINES_DURATION_LOST_DESCENDING + FleetAgentAttributesTagsItems: + description: A key-value pair representing a tag associated with a Datadog Agent. + properties: + key: + description: The tag key. + type: string + value: + description: The tag value. + type: string + type: object + FleetAgentConfigurationFilesV2: + description: Configuration details for an agent, organized by configuration layer. + properties: + agent_configuration: + $ref: "#/components/schemas/FleetConfigurationLayer" + application_monitoring_configuration: + $ref: "#/components/schemas/FleetConfigurationLayer" + otel_collectors_configuration: + description: >- + Configuration for OpenTelemetry collectors associated with the agent. Present only when the agent has associated OpenTelemetry collectors. + items: + $ref: "#/components/schemas/FleetOtelCollectorConfigurationV2" + type: array + security_agent_configuration: + $ref: "#/components/schemas/FleetConfigurationLayer" + system_probe_configuration: + $ref: "#/components/schemas/FleetConfigurationLayer" + type: object + FleetAgentDetailV2: + description: Detailed information about a specific Datadog Agent. + properties: + attributes: + $ref: "#/components/schemas/FleetAgentDetailV2Attributes" + id: + description: The unique agent key identifier. + example: "a1b2c3d4e5f67890a1b2c3d4e5f67890" + type: string + type: + $ref: "#/components/schemas/FleetAgentV2ResourceType" + required: + - id + - type + - attributes + type: object + FleetAgentDetailV2Attributes: + description: Attributes for the v2 agent detail response. + properties: + agent_infos: + $ref: "#/components/schemas/FleetAgentInfoDetailsV2" + configuration_files: + $ref: "#/components/schemas/FleetAgentConfigurationFilesV2" + description: Configuration file details, present only when `configuration_files` is included in the `include` query parameter. + integrations: + $ref: "#/components/schemas/FleetIntegrationsByStatusV2" + description: Integration details, present only when `integrations` is included in the `include` query parameter. + required: + - agent_infos + type: object + FleetAgentDetailV2Response: + description: Response containing detailed information about a specific Datadog Agent. + properties: + data: + $ref: "#/components/schemas/FleetAgentDetailV2" + required: + - data + type: object + FleetAgentInfoDetailsV2: + description: Detailed information about a Datadog Agent. + properties: + active_ha_agent: + description: The currently active agent in the high-availability group. + type: string + agent_version: + description: The Datadog Agent version. + example: "7.50.0" + type: string + api_key_name: + description: The API key name (if available and not redacted). + example: "Production API Key" + type: string + api_key_uuid: + description: The API key UUID. + example: "a1b2c3d4-e5f6-4321-a123-123456789abc" + type: string + cloud_provider: + description: The cloud provider where the agent is running. + example: "aws" + type: string + cluster_name: + description: Kubernetes cluster name (if applicable). + type: string + config_id: + description: The configuration identifier applied to the agent. + type: string + datadog_agent_key: + description: The unique agent key identifier. + example: "a1b2c3d4e5f67890a1b2c3d4e5f67890" + type: string + datadog_data_center: + description: The Datadog data center the agent reports to. + example: "us1" + type: string + ecs_fargate_cluster_name: + description: The ECS Fargate cluster name, if the agent runs in an ECS Fargate environment. + example: "my-ecs-cluster" + type: string + ecs_fargate_task_arn: + description: The ECS Fargate task ARN, if the agent runs in an ECS Fargate environment. + example: "arn:aws:ecs:us-east-1:123456789012:task/my-cluster/abc123" + type: string + enabled_products: + description: Datadog products enabled on the agent. + items: + description: A Datadog product enabled on the agent. + type: string + type: array + env: + description: Environments the agent is reporting from. + items: + description: An environment name the agent is reporting from. + type: string + type: array + first_seen_at: + description: Timestamp when the agent was first seen. + format: int64 + type: integer + ha_agent_hosts: + description: Hosts participating in the agent's high-availability group. + items: + description: A hostname participating in the high-availability group. + type: string + type: array + ha_agent_state: + description: The high-availability state of the agent. + type: string + hostname: + description: The hostname of the agent. + example: "my-hostname" + type: string + hostname_aliases: + description: Alternative hostname list for the agent. + items: + description: An alternative hostname alias for the agent. + type: string + type: array + install_method_installer_version: + description: The version of the installer used. + example: "1.2.3" + type: string + install_method_tool: + description: The tool used to install the agent. + example: "chef" + type: string + ip_addresses: + description: IP addresses of the agent. + items: + description: An IP address of the agent. + type: string + type: array + is_single_step_instrumentation_enabled: + description: Whether single-step instrumentation is enabled. + type: boolean + last_restart_at: + description: Timestamp of the last agent restart. + format: int64 + type: integer + os: + description: The operating system. + example: "linux" + type: string + os_version: + description: The operating system version. + example: "Ubuntu 20.04" + type: string + otel_collectors: + description: OpenTelemetry collectors associated with the agent (if applicable). + items: + $ref: "#/components/schemas/FleetOtelCollector" + type: array + pod_name: + description: Kubernetes pod name (if applicable). + type: string + preferred_ha_active_agent: + description: The preferred active agent in the high-availability group. + type: string + python_version: + description: The Python version used by the agent. + example: "3.9.5" + type: string + region: + description: Regions where the agent is running. + items: + description: A region where the agent is running. + type: string + type: array + remote_agent_management: + description: Remote agent management status. + example: "enabled" + type: string + remote_config_status: + description: Remote configuration status. + example: "connected" + type: string + services: + description: Services running on the agent. + items: + description: A service name running on the agent. + type: string + type: array + support_agent_upgrade: + description: Whether the agent supports remote agent upgrade. + type: boolean + tags: + description: Tags associated with the agent. + items: + description: A tag string assigned to the agent. + type: string + type: array + team: + description: Team associated with the agent. + type: string + type: object + FleetAgentV2: + description: A Datadog Agent resource in the v2 list response. + properties: + attributes: + $ref: "#/components/schemas/FleetAgentV2Attributes" + id: + description: The unique agent key identifier. + example: "my-agent-hostname" + type: string + type: + $ref: "#/components/schemas/FleetAgentV2ResourceType" + required: + - id + - type + - attributes + type: object + FleetAgentV2Attributes: + description: Attributes of a Datadog Agent in the v2 list response. + properties: + agent_version: + description: The Datadog Agent version. + example: "7.50.0" + type: string + api_key_name: + description: The name of the API key used by the agent, if available and not redacted. + example: "Production API Key" + type: string + api_key_uuid: + description: The UUID of the API key used by the agent. + example: "a1b2c3d4-e5f6-4321-a123-123456789abc" + type: string + cloud_provider: + description: The cloud provider where the agent is running. + example: "aws" + type: string + cluster_name: + description: The Kubernetes cluster name, if the agent runs in a cluster. + example: "production-us-east-1" + type: string + datadog_data_center: + description: The Datadog data center the agent reports to. + example: "us1" + type: string + ecs_fargate_cluster_name: + description: The ECS Fargate cluster name, if the agent runs in an ECS Fargate environment. + example: "my-ecs-cluster" + type: string + ecs_fargate_task_arn: + description: The ECS Fargate task ARN, if the agent runs in an ECS Fargate environment. + example: "arn:aws:ecs:us-east-1:123456789012:task/my-cluster/abc123" + type: string + enabled_products: + description: Datadog products enabled on the agent. + items: + description: A Datadog product enabled on the agent. + type: string + type: array + env: + description: Environments the agent is reporting from. + items: + description: An environment name the agent is reporting from. + type: string + type: array + first_seen_at: + description: Unix timestamp when the agent was first seen. + example: 1699900000 + format: int64 + type: integer + fleet_policies: + description: Identifiers of fleet policies applied to the agent. + items: + description: A fleet policy identifier applied to the agent. + type: string + type: array + hostname: + description: The hostname of the agent. + example: "my-hostname" + type: string + instrumentation_error_counts: + description: >- + Number of instrumentation errors on the agent. Absent from the response when the count is zero. + example: 3 + format: int64 + type: integer + instrumentation_status: + $ref: "#/components/schemas/FleetAgentV2AttributesInstrumentationStatus" + integrations: + description: Names of integrations configured on the agent. + items: + description: An integration name configured on the agent. + type: string + type: array + ip_addresses: + description: IP addresses of the agent host. + items: + description: An IP address of the agent host. + type: string + type: array + is_single_step_instrumentation_enabled: + description: Whether single-step instrumentation is enabled on the agent. + example: true + type: boolean + last_restart_at: + description: Unix timestamp of the last agent restart. + example: 1699999999 + format: int64 + type: integer + os: + description: The operating system of the host. + example: "linux" + type: string + otel_collector_deployment_types: + description: OpenTelemetry collector deployment types associated with the agent. + items: + description: An OpenTelemetry collector deployment type. + type: string + type: array + otel_collector_distributions: + description: OpenTelemetry collector distributions associated with the agent. + items: + description: An OpenTelemetry collector distribution. + type: string + type: array + otel_collector_versions: + description: All OpenTelemetry collector versions associated with the agent. + items: + description: An OpenTelemetry collector version string. + type: string + type: array + otel_resource_attributes: + description: OpenTelemetry resource attributes reported by the agent. + items: + description: An OpenTelemetry resource attribute. + type: string + type: array + pod_name: + description: The Kubernetes pod name, if the agent runs as a pod. + example: "datadog-agent-abc123" + type: string + remote_agent_management: + description: The remote agent management status. + example: "enabled" + type: string + remote_config_status: + description: The remote configuration connection status of the agent. + example: "connected" + type: string + services: + description: Services running on the agent. + items: + description: A service name running on the agent. + type: string + type: array + tags: + description: >- + Tags associated with the agent. Returned as an empty array when the agent has no tags. + items: + $ref: "#/components/schemas/FleetAgentAttributesTagsItems" + type: array + team: + description: The team associated with the agent. + example: "platform" + type: string + type: object + FleetAgentV2AttributesInstrumentationStatus: + description: The single-step instrumentation status of the Agent. + enum: + - success + - failure + example: "success" + type: string + x-enum-varnames: + - SUCCESS + - FAILURE + FleetAgentV2ResourceType: + default: agent + description: The type of the agent resource. + enum: + - agent + example: agent + type: string + x-enum-varnames: + - AGENT + FleetAgentVersionV2: + description: An available Datadog Agent version resource. + properties: + attributes: + $ref: "#/components/schemas/FleetAgentVersionV2Attributes" + id: + description: The agent version string used as the unique identifier. + example: "7.81.1" + type: string + type: + $ref: "#/components/schemas/FleetAgentVersionV2ResourceType" + required: + - id + - type + - attributes + type: object + FleetAgentVersionV2Attributes: + description: Attributes of an available Datadog Agent version. + properties: + version: + description: The agent version string. + example: "7.81.1" + type: string + type: object + FleetAgentVersionV2ResourceType: + default: agent_version + description: The type of the agent version resource. + enum: + - agent_version + example: agent_version + type: string + x-enum-varnames: + - AGENT_VERSION + FleetAgentVersionsV2Page: + description: Pagination details for the v2 list of agent versions. + properties: + total_count: + description: Total number of available agent versions. + example: 10 + format: int64 + type: integer + type: object + FleetAgentVersionsV2Response: + description: Response containing a list of available Datadog Agent versions. + properties: + data: + description: Array of available agent versions. + items: + $ref: "#/components/schemas/FleetAgentVersionV2" + type: array + meta: + $ref: "#/components/schemas/FleetAgentVersionsV2ResponseMeta" + required: + - data + type: object + FleetAgentVersionsV2ResponseMeta: + description: Metadata for the v2 list of agent versions. + properties: + page: + $ref: "#/components/schemas/FleetAgentVersionsV2Page" + type: object + FleetAgentsV2Page: + description: Pagination details for the v2 list of agents. + properties: + total_count: + description: Total number of agents in the fleet, regardless of any filter. + example: 500 + format: int64 + type: integer + total_filtered_count: + description: Total number of agents matching the current filter criteria. + example: 42 + format: int64 + type: integer + type: object + FleetAgentsV2Response: + description: Response containing a paginated list of Datadog Agents. + properties: + data: + description: Array of agents matching the query criteria. + items: + $ref: "#/components/schemas/FleetAgentV2" + type: array + meta: + $ref: "#/components/schemas/FleetAgentsV2ResponseMeta" + required: + - data + type: object + FleetAgentsV2ResponseMeta: + description: Metadata for the v2 list of agents, including pagination information. + properties: + page: + $ref: "#/components/schemas/FleetAgentsV2Page" + type: object + FleetConfigurationFileV2: + description: A configuration file for an integration. + properties: + agent_hash: + description: Hash of the configuration file as seen by the agent. + type: string + file_content: + description: The raw content of the configuration file. + type: string + file_path: + description: Path to the configuration file. + example: "/conf.d/postgres.d/postgres.yaml" + type: string + filename: + description: Name of the configuration file. + example: "postgres.yaml" + type: string + type: object + FleetConfigurationLayer: + description: Configuration information organized by layers. + properties: + compiled_configuration: + description: The final compiled configuration. + type: string + env_configuration: + description: Configuration from environment variables. + type: string + file_configuration: + description: Configuration from files. + type: string + remote_configuration: + description: Remote configuration settings. + type: string + runtime_configuration: + description: Runtime configuration. + type: string + type: object + FleetDeployment: + description: A deployment that defines automated configuration changes for a fleet of hosts. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentAttributes" + id: + description: Unique identifier for the deployment. + example: "aeadc05e-98a8-11ec-ac2c-da7ad0900001" + type: string + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - id + - type + - attributes + type: object + FleetDeploymentAttributes: + description: Attributes of a deployment in the response. + properties: + config_operations: + description: Ordered list of configuration file operations to perform on the target hosts. + items: + $ref: "#/components/schemas/FleetDeploymentOperation" + type: array + estimated_end_time_unix: + description: Estimated completion time of the deployment as a Unix timestamp (seconds since epoch). + example: 1699999999 + format: int64 + type: integer + filter_query: + description: Query used to filter and select target hosts for the deployment. Uses the Datadog query syntax. + example: "env:prod AND service:web" + type: string + high_level_status: + description: |- + Current high-level status of the deployment (for example, "pending", "running", + "completed", "failed"). + example: "pending" + type: string + hosts: + description: |- + Paginated list of hosts in this deployment with their individual statuses. Only included + when fetching a single deployment by ID. Use the `limit` and `page` query parameters to + navigate through pages. Pagination metadata is included in the response `meta.hosts` field. + items: + $ref: "#/components/schemas/FleetDeploymentHost" + type: array + packages: + description: List of packages to deploy to target hosts. Present only for package upgrade deployments. + items: + $ref: "#/components/schemas/FleetDeploymentPackage" + type: array + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + type: object + FleetDeploymentConfigureV2Attributes: + description: Attributes for creating a new v2 configuration deployment. + properties: + config_operations: + description: Ordered list of configuration file operations to perform on the target hosts. + items: + $ref: "#/components/schemas/FleetDeploymentOperation" + type: array + dry_run: + description: |- + Set to `true` to validate the configuration and resolve target hosts and packages + without deploying anything. Returns a 200 with the validation result instead of + creating and starting a real deployment. + example: false + type: boolean + filter_query: + description: Query used to filter and select target hosts for the deployment. Uses the Datadog query syntax. + example: "env:prod AND service:web" + type: string + target_packages: + description: |- + List of packages and their target versions to additionally deploy alongside + the configuration change. + items: + $ref: "#/components/schemas/FleetDeploymentConfigureV2Package" + type: array + required: + - filter_query + - config_operations + type: object + FleetDeploymentConfigureV2Create: + description: Data for creating a new v2 configuration deployment. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentConfigureV2Attributes" + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - type + - attributes + type: object + FleetDeploymentConfigureV2CreateRequest: + description: Request payload for creating a new v2 configuration deployment. + properties: + data: + $ref: "#/components/schemas/FleetDeploymentConfigureV2Create" + required: + - data + type: object + FleetDeploymentConfigureV2DryRun: + description: The result of a configuration deployment dry run. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentConfigureV2DryRunAttributes" + id: + description: |- + Always `"dry-run"` for a dry-run response. Does not identify a real deployment + and cannot be used to fetch a deployment by ID. + example: "dry-run" + type: string + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - id + - type + - attributes + type: object + FleetDeploymentConfigureV2DryRunAttributes: + description: Attributes of a configuration deployment dry-run response. + properties: + dry_run: + $ref: "#/components/schemas/FleetDeploymentConfigureV2DryRunResult" + query: + description: Query used to filter and select target hosts for the deployment. + example: "env:prod AND service:web" + type: string + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + type: object + FleetDeploymentConfigureV2DryRunResponse: + description: Response containing the result of a configuration deployment dry run. + properties: + data: + $ref: "#/components/schemas/FleetDeploymentConfigureV2DryRun" + required: + - data + type: object + FleetDeploymentConfigureV2DryRunResult: + description: Validation result of a configuration deployment dry run. + properties: + config_validated: + description: Whether the configuration passed schema validation. + example: true + type: boolean + non_upgradable_by_reason: + additionalProperties: + format: int64 + type: integer + description: |- + Breakdown of ineligible host counts by reason. Only includes reasons with a + non-zero count. Absent from the response when no targeted host is ineligible. + example: {} + type: object + non_upgradable_hosts: + description: Number of targeted hosts that are not eligible to receive this configuration. + example: 0 + format: int64 + type: integer + type: object + FleetDeploymentConfigureV2Package: + description: A package and its target version to additionally deploy alongside a configuration change. + properties: + apm_instrumentation: + description: APM auto-instrumentation mode to enable for this package, if applicable. + example: "host" + type: string + name: + description: The name of the package to deploy. + example: "datadog-agent" + type: string + version: + description: The target version of the package to deploy. + example: "7.52.0" + type: string + required: + - name + - version + type: object + FleetDeploymentFileOp: + description: |- + Type of file operation to perform on the target configuration file. + - `merge-patch`: Merges the provided patch data with the existing configuration file. + Creates the file if it doesn't exist. + - `delete`: Removes the specified configuration file from the target hosts. + enum: + - "merge-patch" + - "delete" + example: "merge-patch" + type: string + x-enum-varnames: + - MERGE_PATCH + - DELETE + FleetDeploymentHost: + description: A host that is part of a deployment with its current status. + properties: + error: + description: Error message if the deployment failed on this host. + example: "" + type: string + hostname: + description: The hostname of the agent. + example: "web-server-01.example.com" + type: string + status: + description: Current deployment status for this specific host. + example: "succeeded" + type: string + versions: + description: List of packages and their versions currently installed on this host. + items: + $ref: "#/components/schemas/FleetDeploymentHostPackage" + type: array + type: object + FleetDeploymentHostPackage: + description: |- + Package version information for a host, showing the initial version before deployment, + the target version to deploy, and the current version on the host. + properties: + current_version: + description: The current version of the package on the host. + example: "7.51.0" + type: string + initial_version: + description: The initial version of the package on the host before the deployment started. + example: "7.51.0" + type: string + package_name: + description: The name of the package. + example: "datadog-agent" + type: string + target_version: + description: The target version that the deployment is attempting to install. + example: "7.52.0" + type: string + type: object + FleetDeploymentHostsPage: + description: Pagination details for the list of hosts in a deployment. + properties: + current_page: + description: Current page index (zero-based). + example: 0 + format: int64 + type: integer + page_size: + description: Number of hosts returned per page. + example: 50 + format: int64 + type: integer + total_hosts: + description: Total number of hosts in this deployment. + example: 150 + format: int64 + type: integer + total_pages: + description: Total number of pages available. + example: 3 + format: int64 + type: integer + type: object + FleetDeploymentOperation: + description: A single configuration file operation to perform on the target hosts. + properties: + file_op: + $ref: "#/components/schemas/FleetDeploymentFileOp" + file_path: + description: Absolute path to the target configuration file on the host. + example: "/datadog.yaml" + type: string + patch: + additionalProperties: {} + description: |- + Patch data in JSON format to apply to the configuration file. + When using `merge-patch`, this object is merged with the existing configuration, + allowing you to add, update, or override specific fields without replacing the entire file. + The structure must match the target configuration file format (for example, YAML structure + for Datadog Agent config). Not applicable when using the `delete` operation. + example: + apm_config: + enabled: true + log_level: "debug" + logs_enabled: true + type: object + required: + - file_op + - file_path + type: object + FleetDeploymentPackage: + description: A package and its target version for deployment. + properties: + name: + description: The name of the package to deploy. + example: "datadog-agent" + type: string + version: + description: The target version of the package to deploy. + example: "7.52.0" + type: string + required: + - name + - version + type: object + FleetDeploymentPackageUpgradeV2Attributes: + description: Attributes for creating a new v2 package upgrade deployment. + properties: + filter_query: + description: Query used to filter and select target hosts for the deployment. Uses the Datadog query syntax. + example: "env:prod AND service:web" + type: string + target_packages: + description: List of packages and their target versions to deploy to the selected hosts. + items: + $ref: "#/components/schemas/FleetDeploymentPackage" + type: array + required: + - filter_query + - target_packages + type: object + FleetDeploymentPackageUpgradeV2Create: + description: Data for creating a new v2 package upgrade deployment. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentPackageUpgradeV2Attributes" + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - type + - attributes + type: object + FleetDeploymentPackageUpgradeV2CreateRequest: + description: Request payload for creating a new v2 package upgrade deployment. + properties: + data: + $ref: "#/components/schemas/FleetDeploymentPackageUpgradeV2Create" + required: + - data + type: object + FleetDeploymentResourceType: + default: deployment + description: The type of deployment resource. + enum: + - deployment + example: deployment + type: string + x-enum-varnames: + - DEPLOYMENT + FleetDeploymentResponse: + description: Response containing a single deployment. + properties: + data: + $ref: "#/components/schemas/FleetDeployment" + meta: + $ref: "#/components/schemas/FleetDeploymentResponseMeta" + type: object + FleetDeploymentResponseMeta: + description: Metadata for a single deployment response, including pagination information for hosts. + properties: + hosts: + $ref: "#/components/schemas/FleetDeploymentHostsPage" + type: object + FleetDeploymentV2: + description: A deployment in the v2 API response. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentV2Attributes" + id: + description: Unique identifier for the deployment. + example: "k7Q-3mX-p9Z" + type: string + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - id + - type + - attributes + type: object + FleetDeploymentV2Attributes: + description: Attributes of a deployment in the v2 API response. + properties: + author: + description: Handle of the user who triggered the deployment. + example: "alice@datadoghq.com" + type: string + config_operations: + description: |- + Ordered list of configuration file operations applied by this deployment. + Absent for package deployments, which have no configuration file operations. + items: + $ref: "#/components/schemas/FleetDeploymentOperation" + type: array + duration_seconds: + description: |- + Duration of the deployment in seconds, computed as `finished_at - started_at`. + Zero if the deployment has not finished. + example: 1000 + format: int64 + type: integer + error_summary: + description: Top-level error message for the deployment. Populated only when the deployment has failed. + example: "A host failed to update" + type: string + estimated_finished_at: + description: Estimated completion time of the deployment as a Unix timestamp. Zero if not available. + example: 1699999999 + format: int64 + type: integer + finished_at: + description: Time the deployment finished as a Unix timestamp. Zero if not yet finished. + example: 0 + format: int64 + type: integer + is_scheduled: + description: Whether this deployment was triggered by a schedule (`schedule_id` is non-empty). + example: true + type: boolean + query: + description: Query used to filter and select target hosts for the deployment. + example: "env:prod AND service:web" + type: string + schedule_id: + description: Identifier of the schedule that triggered this deployment. Empty if triggered manually. + example: "sched-123" + type: string + started_at: + description: Time the deployment started as a Unix timestamp. Zero if not yet started. + example: 1699990000 + format: int64 + type: integer + status: + description: |- + Current high-level status of the deployment (for example, "pending", "running", + "completed", "failed"). + example: "pending" + type: string + target_versions: + description: Package versions targeted by this deployment. + example: ["7.52.0"] + items: + type: string + type: array + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + update_type: + description: |- + Type of update operation performed by this deployment + (for example, "update_config_operations", "update_package"). + example: "update_config_operations" + type: string + type: object + FleetDeploymentV2Cancel: + description: A deployment cancellation response. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentV2CancelAttributes" + id: + description: Unique identifier for the deployment. + example: "k7Q-3mX-p9Z" + type: string + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - id + - type + - attributes + type: object + FleetDeploymentV2CancelAttributes: + description: Attributes of a deployment cancellation response. + properties: + message: + description: Human-readable message describing the outcome of the cancellation request. + example: "Cancellation has been requested; the deployment is stopping." + type: string + status: + description: Status of the deployment after the cancellation request. + example: "stopping" + type: string + type: object + FleetDeploymentV2CancelResponse: + description: Response containing the result of a deployment cancellation request. + properties: + data: + $ref: "#/components/schemas/FleetDeploymentV2Cancel" + required: + - data + type: object + FleetDeploymentV2CreateResponse: + description: Response containing the newly created deployment. + properties: + data: + $ref: "#/components/schemas/FleetDeploymentV2" + required: + - data + type: object + FleetDeploymentV2Detail: + description: Detailed information about a deployment. + properties: + attributes: + $ref: "#/components/schemas/FleetDeploymentV2DetailAttributes" + id: + description: Unique identifier for the deployment. + example: "k7Q-3mX-p9Z" + type: string + type: + $ref: "#/components/schemas/FleetDeploymentResourceType" + required: + - id + - type + - attributes + type: object + FleetDeploymentV2DetailAgent: + description: Per-host status entry for a deployment. + properties: + error: + description: Error message if the deployment failed on this host. + example: "" + type: string + hostname: + description: Hostname of the agent. + example: "web-01.example.com" + type: string + running_step: + description: Name of the step currently executing on this host. + example: "applying_config" + type: string + status: + description: Deployment status for this host (for example, "pending", "running", "succeeded", "failed"). + example: "running" + type: string + status_details: + description: Additional details about the current deployment status on this host. + example: "step 2/3" + type: string + versions: + description: Package version details for this host. + items: + $ref: "#/components/schemas/FleetDeploymentHostPackage" + type: array + type: object + FleetDeploymentV2DetailAttributes: + description: Attributes of a deployment detail response. + properties: + author: + description: Handle of the user who triggered the deployment. + example: "carol@datadoghq.com" + type: string + canceled_hosts: + description: Number of hosts on which the deployment was canceled. + example: 1 + format: int64 + minimum: 0 + type: integer + config_operations: + description: |- + Ordered list of configuration file operations applied by this deployment. + Absent for package deployments, which have no configuration file operations. + items: + $ref: "#/components/schemas/FleetDeploymentOperation" + type: array + duration_seconds: + description: |- + Duration of the deployment in seconds, computed as `finished_at - started_at`. + Zero if the deployment has not finished. + example: 3600 + format: int64 + type: integer + error_summary: + description: Top-level error message for the deployment. Populated only when the deployment has failed. + example: "A host failed to update" + type: string + estimated_finished_at: + description: Estimated completion time of the deployment as a Unix timestamp. Zero if not available. + example: 1699999999 + format: int64 + type: integer + failed_hosts: + description: Number of hosts on which the deployment failed. + example: 1 + format: int64 + minimum: 0 + type: integer + high_level_status: + description: |- + Current high-level status of the deployment (for example, "pending", "running", + "completed", "failed"). + example: "running" + type: string + hosts: + description: Per-host status list for this deployment. + items: + $ref: "#/components/schemas/FleetDeploymentV2DetailAgent" + type: array + is_scheduled: + description: Whether this deployment was triggered by a schedule (`schedule_id` is non-empty). + example: true + type: boolean + query: + description: Query used to filter and select target hosts for the deployment. + example: "env:prod AND service:web" + type: string + running_hosts: + description: Number of hosts on which the deployment is currently running. + example: 1 + format: int64 + minimum: 0 + type: integer + schedule_id: + description: Identifier of the schedule that triggered this deployment. Empty if triggered manually. + example: "sched-789" + type: string + skipped_hosts: + description: Number of hosts that were skipped during the deployment. + example: 1 + format: int64 + minimum: 0 + type: integer + succeeded_hosts: + description: Number of hosts on which the deployment succeeded. + example: 1 + format: int64 + minimum: 0 + type: integer + target_versions: + description: Distinct package versions targeted by this deployment, in first-seen order. + example: ["7.52.0"] + items: + type: string + type: array + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + update_type: + description: |- + Type of update operation performed by this deployment + (for example, "update_config_operations", "update_package"). + example: "update_config_operations" + type: string + type: object + FleetDeploymentV2DetailResponse: + description: Response containing detailed information about a single deployment. + properties: + data: + $ref: "#/components/schemas/FleetDeploymentV2Detail" + required: + - data + type: object + FleetDeploymentsV2Page: + description: Pagination details for the v2 list of deployments. + properties: + total_count: + description: Total number of deployments available across all pages. + example: 25 + format: int64 + type: integer + total_filtered_count: + description: Total number of deployments matching the current filter query. + example: 10 + format: int64 + type: integer + type: object + FleetDeploymentsV2Response: + description: Response containing a paginated list of deployments. + properties: + data: + description: Array of deployments matching the query criteria. + items: + $ref: "#/components/schemas/FleetDeploymentV2" + type: array + meta: + $ref: "#/components/schemas/FleetDeploymentsV2ResponseMeta" + required: + - data + type: object + FleetDeploymentsV2ResponseMeta: + description: Metadata for the v2 list of deployments, including pagination information. + properties: + page: + $ref: "#/components/schemas/FleetDeploymentsV2Page" + type: object + FleetDetectedIntegration: + description: An integration detected on the agent but not necessarily configured. + properties: + escaped_name: + description: Escaped integration name. + example: "postgresql" + type: string + prefix: + description: Integration prefix identifier. + example: "postgres" + type: string + type: object + FleetIntegrationDetailsV2: + description: Detailed information about a single integration. + properties: + data_type: + description: Type of data collected, such as metrics or logs. + example: "metrics" + type: string + error_messages: + description: Error messages if the integration has issues. + items: + description: An error message describing an issue with the integration. + type: string + type: array + init_config: + description: Initialization configuration (YAML format). + type: string + instance_config: + description: Instance-specific configuration (YAML format). + type: string + is_custom_check: + description: Whether this is a custom integration. + type: boolean + is_default: + description: Whether this is a default integration instance. + type: boolean + is_init: + description: Whether this integration configuration is an init config. + type: boolean + log_config: + description: Log collection configuration (YAML format). + type: string + name: + description: Name of the integration instance. + type: string + pod_count: + description: >- + Number of pods running this integration. Absent from the response when the count is zero. + format: int64 + type: integer + source_index: + description: Index in the configuration file. + format: int64 + type: integer + source_path: + description: Path to the configuration file. + type: string + type: + description: Integration type. + example: "postgres" + type: string + type: object + FleetIntegrationsByStatusV2: + description: Integrations organized by their status. + properties: + configuration_files: + description: Configuration files for integrations. + items: + $ref: "#/components/schemas/FleetConfigurationFileV2" + type: array + error_integrations: + description: Integrations with errors. + items: + $ref: "#/components/schemas/FleetIntegrationDetailsV2" + type: array + missing_integrations: + description: Detected but not configured integrations. + items: + $ref: "#/components/schemas/FleetDetectedIntegration" + type: array + warning_integrations: + description: Integrations with warnings. + items: + $ref: "#/components/schemas/FleetIntegrationDetailsV2" + type: array + working_integrations: + description: Integrations that are working correctly. + items: + $ref: "#/components/schemas/FleetIntegrationDetailsV2" + type: array + type: object + FleetOtelCollector: + additionalProperties: {} + description: OpenTelemetry collector information. + type: object + FleetOtelCollectorConfigurationV2: + description: Configuration for a single OpenTelemetry collector associated with the agent. + properties: + collector_id: + description: The unique identifier of the OpenTelemetry collector. + type: string + compiled_configuration: + description: The final compiled configuration of the OpenTelemetry collector. + type: string + distribution: + description: The distribution of the OpenTelemetry collector. + type: string + type: object + FleetSchedule: + description: A schedule that automatically creates deployments based on a recurrence rule. + properties: + attributes: + $ref: "#/components/schemas/FleetScheduleAttributes" + id: + description: Unique identifier for the schedule. + example: "abc-def-ghi-123" + type: string + type: + $ref: "#/components/schemas/FleetScheduleResourceType" + required: + - id + - type + - attributes + type: object + FleetScheduleAttributes: + description: Attributes of a schedule in the response. + properties: + created_at_unix: + description: Unix timestamp (seconds since epoch) when the schedule was created. + example: 1699999999 + format: int64 + type: integer + created_by: + description: User handle of the person who created the schedule. + example: "user@example.com" + type: string + name: + description: Human-readable name for the schedule. + example: "Weekly Production Agent Updates" + type: string + query: + description: Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax. + example: "env:prod AND service:web" + type: string + rule: + $ref: "#/components/schemas/FleetScheduleRecurrenceRule" + status: + $ref: "#/components/schemas/FleetScheduleStatus" + updated_at_unix: + description: Unix timestamp (seconds since epoch) when the schedule was last updated. + example: 1699999999 + format: int64 + type: integer + updated_by: + description: User handle of the person who last updated the schedule. + example: "user@example.com" + type: string + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version + - 1: Upgrade to latest minus 1 major version + - 2: Upgrade to latest minus 2 major versions + Maximum value is 2. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + type: object + FleetScheduleCreate: + description: Data for creating a new schedule. + properties: + attributes: + $ref: "#/components/schemas/FleetScheduleCreateAttributes" + type: + $ref: "#/components/schemas/FleetScheduleResourceType" + required: + - type + - attributes + type: object + FleetScheduleCreateAttributes: + description: Attributes for creating a new schedule. + properties: + name: + description: Human-readable name for the schedule. + example: "Weekly Production Agent Updates" + type: string + query: + description: Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax. + example: "env:prod AND service:web" + type: string + rule: + $ref: "#/components/schemas/FleetScheduleRecurrenceRule" + status: + $ref: "#/components/schemas/FleetScheduleStatus" + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version (default) + - 1: Upgrade to latest minus 1 major version + - 2: Upgrade to latest minus 2 major versions + Maximum value is 2. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + required: + - name + - query + - rule + type: object + FleetScheduleCreateRequest: + description: Request payload for creating a new schedule. + properties: + data: + $ref: "#/components/schemas/FleetScheduleCreate" + required: + - data + type: object + FleetSchedulePatch: + description: Data for partially updating a schedule. + properties: + attributes: + $ref: "#/components/schemas/FleetSchedulePatchAttributes" + type: + $ref: "#/components/schemas/FleetScheduleResourceType" + required: + - type + type: object + FleetSchedulePatchAttributes: + description: Attributes for partially updating a schedule. All fields are optional. + properties: + name: + description: Human-readable name for the schedule. + example: "Weekly Production Agent Updates" + type: string + query: + description: Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax. + example: "env:prod AND service:web" + type: string + rule: + $ref: "#/components/schemas/FleetScheduleRecurrenceRule" + status: + $ref: "#/components/schemas/FleetScheduleStatus" + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version + - 1: Upgrade to latest minus 1 major version + - 2: Upgrade to latest minus 2 major versions + Maximum value is 2. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + type: object + FleetSchedulePatchRequest: + description: Request payload for partially updating a schedule. + properties: + data: + $ref: "#/components/schemas/FleetSchedulePatch" + required: + - data + type: object + FleetScheduleRecurrenceRule: + description: |- + Defines the recurrence pattern for the schedule. Specifies when deployments should be + automatically triggered based on maintenance windows. + properties: + days_of_week: + description: |- + List of days of the week when the schedule should trigger. Valid values are: + "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun". + example: ["Mon", "Wed", "Fri"] + items: + description: A day of the week (for example, "Mon", "Tue"). + type: string + type: array + maintenance_window_duration: + description: Duration of the maintenance window in minutes. + example: 1200 + format: int64 + type: integer + start_maintenance_window: + description: |- + Start time of the maintenance window in 24-hour clock format (HH:MM). + Deployments will be triggered at this time on the specified days. + example: "02:00" + type: string + timezone: + description: Timezone for the schedule in IANA Time Zone Database format (e.g., "America/New_York", "UTC"). + example: "America/New_York" + type: string + required: + - days_of_week + - start_maintenance_window + - maintenance_window_duration + - timezone + type: object + FleetScheduleResourceType: + default: schedule + description: The type of schedule resource. + enum: + - schedule + example: schedule + type: string + x-enum-varnames: + - SCHEDULE + FleetScheduleResponse: + description: Response containing a single schedule. + properties: + data: + $ref: "#/components/schemas/FleetSchedule" + type: object + FleetScheduleStatus: + description: |- + The status of the schedule. + - `active`: The schedule is active and will create deployments according to its recurrence rule. + - `inactive`: The schedule is inactive and will not create any deployments. + enum: + - active + - inactive + example: active + type: string + x-enum-varnames: + - ACTIVE + - INACTIVE + FleetScheduleV2: + description: A fleet upgrade schedule resource in the v2 API response. + properties: + attributes: + $ref: "#/components/schemas/FleetScheduleV2Attributes" + id: + description: Unique identifier for the schedule. + example: "abc-def-ghi-123" + type: string + type: + $ref: "#/components/schemas/FleetScheduleResourceType" + required: + - id + - type + - attributes + type: object + FleetScheduleV2Attributes: + description: Attributes of a fleet schedule in the v2 API response. + properties: + created_at: + description: RFC3339 timestamp when the schedule was created. + example: "2023-11-14T22:13:19Z" + type: string + created_by: + description: User handle of the person who created the schedule. + example: "user@example.com" + type: string + is_default: + description: Whether this is the default schedule for the organization. + example: false + type: boolean + name: + description: Human-readable name for the schedule. + example: "Weekly Production Agent Updates" + type: string + next_run: + description: |- + RFC3339 timestamp of the next scheduled maintenance window start time. + Absent when the next run time cannot be computed. + example: "2025-01-06T02:00:00Z" + type: string + notification_rule: + $ref: "#/components/schemas/FleetScheduleV2NotificationRule" + query: + description: Query used to filter and select target hosts for scheduled deployments. + example: "env:prod AND service:web" + type: string + rule: + $ref: "#/components/schemas/FleetScheduleV2RecurrenceRule" + status: + $ref: "#/components/schemas/FleetScheduleStatus" + updated_at: + description: RFC3339 timestamp when the schedule was last updated. + example: "2023-11-14T22:13:19Z" + type: string + updated_by: + description: User handle of the person who last updated the schedule. + example: "user@example.com" + type: string + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version. + - 1: Upgrade to latest minus 1 major version. + - 2: Upgrade to latest minus 2 major versions. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + type: object + FleetScheduleV2NotificationRule: + description: |- + Notification configuration attached to a schedule. + + Included when available. If the notification rule cannot be retrieved, this field is + omitted and the schedule is still returned. If the notification rule is retrieved but its + handles cannot be resolved, it is still included with an empty `handles` array. + properties: + handles: + description: Notification handles (for example, Slack channels or PagerDuty integrations). + items: + description: A notification handle. + type: string + type: array + tags: + description: Tags associated with the notification rule. + items: + description: A tag string. + type: string + type: array + type: object + FleetScheduleV2RecurrenceRule: + description: Defines the recurrence pattern for the schedule. + properties: + days_of_week: + description: |- + Days of the week when the schedule triggers. Valid values are + "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun". + example: ["Mon", "Wed", "Fri"] + items: + description: A day of the week (for example, "Mon"). + type: string + type: array + interval: + description: |- + Interval between schedule runs in weeks. 1 means the schedule runs every week + on the specified days. Higher values repeat every N weeks. + example: 1 + format: int64 + type: integer + maintenance_window_duration: + description: Duration of the maintenance window in minutes. + example: 120 + format: int64 + type: integer + start_maintenance_window: + description: |- + Start time of the maintenance window in 24-hour clock format (HHMM). + Deployments are triggered at this time on the specified days. + example: "0200" + type: string + timezone: + description: Timezone in IANA Time Zone Database format. + example: "America/New_York" + type: string + type: object + FleetScheduleV2Response: + description: Response containing a single fleet schedule. + properties: + data: + $ref: "#/components/schemas/FleetScheduleV2" + required: + - data + type: object + FleetSchedulesV2Page: + description: Pagination details for the v2 list of schedules. + properties: + total_count: + description: Total number of schedules returned. + example: 5 + format: int64 + type: integer + type: object + FleetSchedulesV2Response: + description: Response containing a list of fleet schedules. + properties: + data: + description: Array of schedules for the organization. + items: + $ref: "#/components/schemas/FleetScheduleV2" + type: array + meta: + $ref: "#/components/schemas/FleetSchedulesV2ResponseMeta" + required: + - data + type: object + FleetSchedulesV2ResponseMeta: + description: Metadata for the v2 list of schedules response. + properties: + page: + $ref: "#/components/schemas/FleetSchedulesV2Page" + type: object + FleetTracerAttributes: + description: Attributes of a fleet tracer representing a service instance reporting telemetry. + properties: + env: + description: The environment the tracer is reporting from. + example: "production" + type: string + hostname: + description: The hostname where the tracer is running. + example: "my-hostname" + type: string + language: + description: The programming language of the traced application. + example: "java" + type: string + language_version: + description: The version of the programming language runtime. + example: "17.0.1" + type: string + remote_config_status: + description: The remote configuration status of the tracer. + example: "connected" + type: string + runtime_ids: + description: Runtime identifiers for the tracer instances. + items: + description: A runtime identifier for a tracer instance. + type: string + type: array + service: + description: The telemetry-derived service name reported by the tracer. + example: "inventory-service" + type: string + service_hostname: + description: The service hostname reported by the tracer. + example: "my-service-host" + type: string + service_version: + description: The version of the traced service. + example: "2.1.0" + type: string + tracer_version: + description: The version of the Datadog tracer library. + example: "1.32.0" + type: string + type: object + FleetTracersResponse: + description: Response containing a paginated list of fleet tracers. + properties: + data: + $ref: "#/components/schemas/FleetTracersResponseData" + meta: + $ref: "#/components/schemas/FleetTracersResponseMeta" + required: + - data + type: object + FleetTracersResponseData: + description: The response data containing status and tracers array. + properties: + attributes: + $ref: "#/components/schemas/FleetTracersResponseDataAttributes" + id: + description: Status identifier. + example: "done" + type: string + type: + description: Resource type. + example: "status" + type: string + required: + - id + - type + - attributes + type: object + FleetTracersResponseDataAttributes: + description: Attributes of the fleet tracers response containing the list of tracers. + properties: + tracers: + description: Array of tracers matching the query criteria. + items: + $ref: "#/components/schemas/FleetTracerAttributes" + type: array + type: object + FleetTracersResponseMeta: + description: Metadata for the list of tracers response. + properties: + total_filtered_count: + description: Total number of tracers matching the filter criteria across all pages. + example: 42 + format: int64 + type: integer + type: object + FlutterSourcemapAttributes: + description: Attributes of a Flutter symbol file. + properties: + arch: + description: The target CPU architecture. + example: arm64 + type: string + created_at: + description: The timestamp when the symbol file was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + mapkind: + description: The type of source map. + example: flutter + type: string + service: + description: The service name associated with the symbol file. + example: my-flutter-app + type: string + size: + description: The size of the symbol file in bytes. + example: 8192 + format: int64 + type: integer + variant: + description: The build variant. + example: release + type: string + version: + description: The version of the service associated with the symbol file. + example: 1.0.0 + type: string + required: + - mapkind + - size + - created_at + type: object + FlutterSourcemapData: + description: Flutter symbol file data object. + properties: + attributes: + $ref: "#/components/schemas/FlutterSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "12" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + FormData: + description: A form resource object. + properties: + attributes: + $ref: "#/components/schemas/FormDataAttributes" + id: + description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + format: uuid + type: string + type: + $ref: "#/components/schemas/FormType" + required: + - id + - type + - attributes + type: object + FormDataAttributes: + description: The attributes of a form. + properties: + active: + description: Whether the form is currently active. + example: true + type: boolean + anonymous: + description: Whether the form accepts anonymous submissions. + example: false + type: boolean + created_at: + description: The time at which the form was created. + example: "2026-05-29T20:06:13.677353Z" + format: date-time + type: string + datastore_config: + $ref: "#/components/schemas/FormDatastoreConfigAttributes" + description: + description: The description of the form. + example: A form to collect user feedback. + type: string + end_date: + description: The date and time at which the form stops accepting responses. + example: + format: date-time + nullable: true + type: string + has_submitted: + description: Whether the current user has already submitted this form. Only present for forms with `single_response` set to `true`. + nullable: true + type: boolean + idp_survey: + description: Whether the form is an IDP survey. + example: false + type: boolean + modified_at: + description: The time at which the form was last modified. + example: "2026-05-29T20:06:13.677353Z" + format: date-time + type: string + name: + description: The name of the form. + example: User Feedback Form + type: string + org_id: + description: The ID of the organization that owns this form. + example: 2 + format: int64 + type: integer + publication: + $ref: "#/components/schemas/FormPublicationAttributes" + self_service: + description: Whether the form is available in the self-service catalog. + example: false + type: boolean + single_response: + description: Whether each user can only submit one response. + example: false + type: boolean + user_id: + description: The ID of the user who created this form. + example: 10001 + format: int64 + type: integer + user_uuid: + description: The UUID of the user who created this form. + example: 1fc709aa-be19-4539-a47d-52a30d78a978 + format: uuid + type: string + version: + $ref: "#/components/schemas/FormVersionAttributes" + required: + - active + - anonymous + - created_at + - datastore_config + - description + - idp_survey + - modified_at + - name + - org_id + - self_service + - single_response + - user_id + - user_uuid + type: object + FormDataDefinition: + additionalProperties: {} + description: A JSON Schema definition that describes the form's data fields. + properties: + description: + description: A description shown to form respondents. + example: Welcome to the Engineering Experience Survey. + type: string + properties: + additionalProperties: {} + description: A map of field names to their JSON Schema definitions. + type: object + required: + description: List of field names that must be answered. + items: + type: string + type: array + title: + description: The title of the form schema. + example: Developer Experience Survey + type: string + type: + $ref: "#/components/schemas/FormDataDefinitionType" + type: object + FormDataDefinitionType: + default: object + description: The root schema type. + enum: + - object + type: string + x-enum-varnames: + - OBJECT + FormDataList: + description: A list of form resource objects. + items: + $ref: "#/components/schemas/FormData" + type: array + FormDatastoreConfigAttributes: + description: The datastore configuration for a form. + properties: + datastore_id: + description: The ID of the datastore. + example: 5108ea24-dd83-4696-9caa-f069f73d0fad + format: uuid + type: string + primary_column_name: + description: The name of the primary column in the datastore. + example: id + type: string + primary_key_generation_strategy: + description: The strategy used to generate primary keys in the datastore. + example: none + type: string + required: + - datastore_id + - primary_column_name + - primary_key_generation_strategy + type: object + FormPublicationAttributes: + description: The attributes of a form publication. + properties: + created_at: + description: The time at which the publication was created. + example: "2026-05-29T20:06:13.677353Z" + format: date-time + type: string + form_id: + description: The ID of the form. + example: afc67600-0511-43b1-9b18-578fb4979bd3 + format: uuid + type: string + form_version: + description: The version number that was published. + example: 1 + format: int64 + type: integer + id: + description: The ID of the form publication. + example: "42" + type: string + modified_at: + description: The time at which the publication was last modified. + example: "2026-05-29T20:06:13.677353Z" + format: date-time + type: string + org_id: + description: The ID of the organization that owns this publication. + example: 2 + format: int64 + type: integer + publish_seq: + description: The sequential publication number for this form. + example: 1 + format: int64 + type: integer + user_id: + description: The ID of the user who created this publication. + example: 10001 + format: int64 + type: integer + user_uuid: + description: The UUID of the user who created this publication. + example: 1fc709aa-be19-4539-a47d-52a30d78a978 + format: uuid + type: string + required: + - created_at + - form_id + - form_version + - modified_at + - org_id + - publish_seq + - user_id + - user_uuid + type: object + FormPublicationData: + description: A form publication resource object. + properties: + attributes: + $ref: "#/components/schemas/FormPublicationAttributes" + id: + description: The ID of the form publication. + example: "42" + type: string + type: + $ref: "#/components/schemas/FormPublicationType" + required: + - id + - type + - attributes + type: object + FormPublicationResponse: + description: A response containing a single form publication. + properties: + data: + $ref: "#/components/schemas/FormPublicationData" + required: + - data + type: object + FormPublicationType: + default: form_publications + description: The resource type for a form publication. + enum: + - form_publications + example: form_publications + type: string + x-enum-varnames: + - FORM_PUBLICATIONS + FormResponse: + description: A response containing a single form. + properties: + data: + $ref: "#/components/schemas/FormData" + required: + - data + type: object + FormTrigger: + description: "Trigger a workflow from a Form." + properties: + formId: + description: The form UUID. + example: "" + type: string + type: object + FormTriggerWrapper: + description: "Schema for a Form-based trigger." + properties: + formTrigger: + $ref: "#/components/schemas/FormTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - formTrigger + type: object + FormType: + default: forms + description: The resource type for a form. + enum: + - forms + example: forms + type: string + x-enum-varnames: + - FORMS + FormUiDefinition: + additionalProperties: {} + description: UI configuration for rendering form fields, including widget overrides, field ordering, and themes. + properties: + "ui:order": + description: The order in which form fields are displayed. + items: + type: string + type: array + "ui:theme": + $ref: "#/components/schemas/FormUiDefinitionUiTheme" + type: object + FormUiDefinitionUiTheme: + description: The visual theme applied to the form. + properties: + primaryColor: + $ref: "#/components/schemas/FormUiDefinitionUiThemePrimaryColor" + type: object + FormUiDefinitionUiThemePrimaryColor: + description: The primary color of the form theme. + enum: + - gray + - red + - orange + - yellow + - green + - light-blue + - dark-blue + - magenta + - indigo + type: string + x-enum-varnames: + - GRAY + - RED + - ORANGE + - YELLOW + - GREEN + - LIGHT_BLUE + - DARK_BLUE + - MAGENTA + - INDIGO + FormUpdateAttributes: + description: The fields to update on a form. At least one field must be provided. + properties: + datastore_config: + $ref: "#/components/schemas/FormDatastoreConfigAttributes" + description: + description: The updated description of the form. + example: An updated description. + type: string + name: + description: The updated name of the form. + example: Updated Form Name + type: string + type: object + FormVersionAttributes: + description: The attributes of a form version. + properties: + created_at: + description: The time at which the version was created. + example: "2026-05-29T20:06:14.895921Z" + format: date-time + type: string + data_definition: + $ref: "#/components/schemas/FormDataDefinition" + definition_signature: + description: The signature of the version definition. + example: '{"signature":"b7f312957a80cea2c8c9950532b205a90a3f8a7ebb7e52fc25437a25d903d545","version":1}' + type: string + etag: + description: The ETag for optimistic concurrency control. + example: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + nullable: true + type: string + id: + description: The ID of the form version. + example: "126" + type: string + modified_at: + description: The time at which the version was last modified. + example: "2026-05-29T20:06:14.949163Z" + format: date-time + type: string + state: + $ref: "#/components/schemas/FormVersionState" + ui_definition: + $ref: "#/components/schemas/FormUiDefinition" + user_id: + description: The ID of the user who created this version. + example: 10001 + format: int64 + type: integer + user_uuid: + description: The UUID of the user who created this version. + example: 1fc709aa-be19-4539-a47d-52a30d78a978 + format: uuid + type: string + version: + description: The sequential version number. + example: 1 + format: int64 + type: integer + required: + - created_at + - data_definition + - definition_signature + - etag + - modified_at + - state + - ui_definition + - user_id + - user_uuid + - version + type: object + FormVersionData: + description: A form version resource object. + properties: + attributes: + $ref: "#/components/schemas/FormVersionAttributes" + id: + description: The ID of the form version. + example: "126" + type: string + type: + $ref: "#/components/schemas/FormVersionType" + required: + - id + - type + - attributes + type: object + FormVersionResponse: + description: A response containing a single form version. + properties: + data: + $ref: "#/components/schemas/FormVersionData" + required: + - data + type: object + FormVersionState: + description: The state of a form version. + enum: + - draft + - frozen + example: frozen + type: string + x-enum-varnames: + - DRAFT + - FROZEN + FormVersionType: + default: form_versions + description: The resource type for a form version. + enum: + - form_versions + example: form_versions + type: string + x-enum-varnames: + - FORM_VERSIONS + FormsResponse: + description: A response containing a list of forms. + properties: + data: + $ref: "#/components/schemas/FormDataList" + required: + - data + type: object + FormulaLimit: + description: |- + Message for specifying limits to the number of values returned by a query. + This limit is only for scalar queries and has no effect on timeseries queries. + properties: + count: + description: The number of results to which to limit. + example: 10 + format: int32 + maximum: 2147483647 + type: integer + order: + $ref: "#/components/schemas/QuerySortOrder" + type: object + FrameworkHandleAndVersionResponseData: + description: Contains type and attributes for custom frameworks. + properties: + attributes: + $ref: "#/components/schemas/CustomFrameworkDataHandleAndVersion" + id: + description: The ID of the custom framework. + example: handle-version + type: string + type: + $ref: "#/components/schemas/CustomFrameworkType" + required: + - id + - type + - attributes + type: object + FreshserviceAPIKey: + description: The definition of the `FreshserviceAPIKey` object. + properties: + api_key: + description: The `FreshserviceAPIKey` `api_key`. + example: "" + type: string + domain: + description: The `FreshserviceAPIKey` `domain`. + example: "" + type: string + type: + $ref: "#/components/schemas/FreshserviceAPIKeyType" + required: + - type + - domain + - api_key + type: object + FreshserviceAPIKeyType: + description: The definition of the `FreshserviceAPIKey` object. + enum: + - FreshserviceAPIKey + example: FreshserviceAPIKey + type: string + x-enum-varnames: + - FRESHSERVICEAPIKEY + FreshserviceAPIKeyUpdate: + description: The definition of the `FreshserviceAPIKey` object. + properties: + api_key: + description: The `FreshserviceAPIKeyUpdate` `api_key`. + type: string + domain: + description: The `FreshserviceAPIKeyUpdate` `domain`. + type: string + type: + $ref: "#/components/schemas/FreshserviceAPIKeyType" + required: + - type + type: object + FreshserviceCredentials: + description: The definition of the `FreshserviceCredentials` object. + oneOf: + - $ref: "#/components/schemas/FreshserviceAPIKey" + FreshserviceCredentialsUpdate: + description: The definition of the `FreshserviceCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/FreshserviceAPIKeyUpdate" + FreshserviceIntegration: + description: The definition of the `FreshserviceIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/FreshserviceCredentials" + type: + $ref: "#/components/schemas/FreshserviceIntegrationType" + required: + - type + - credentials + type: object + FreshserviceIntegrationType: + description: The definition of the `FreshserviceIntegrationType` object. + enum: + - Freshservice + example: Freshservice + type: string + x-enum-varnames: + - FRESHSERVICE + FreshserviceIntegrationUpdate: + description: The definition of the `FreshserviceIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/FreshserviceCredentialsUpdate" + type: + $ref: "#/components/schemas/FreshserviceIntegrationType" + required: + - type + type: object + FullAPIKey: + description: Datadog API key. + properties: + attributes: + $ref: "#/components/schemas/FullAPIKeyAttributes" + id: + description: ID of the API key. + type: string + relationships: + $ref: "#/components/schemas/APIKeyRelationships" + type: + $ref: "#/components/schemas/APIKeysType" + type: object + FullAPIKeyAttributes: + description: Attributes of a full API key. + properties: + category: + description: The category of the API key. + type: string + created_at: + description: Creation date of the API key. + example: "2020-11-23T10:00:00.000Z" + format: date-time + readOnly: true + type: string + date_last_used: + description: "Date the API Key was last used" + example: "2020-11-27T10:00:00.000Z" + format: date-time + nullable: true + readOnly: true + type: string + key: + description: The API key. + readOnly: true + type: string + last4: + description: The last four characters of the API key. + example: "abcd" + maxLength: 4 + minLength: 4 + readOnly: true + type: string + modified_at: + description: Date the API key was last modified. + example: "2020-11-23T10:00:00.000Z" + format: date-time + readOnly: true + type: string + name: + description: Name of the API key. + example: "API Key for submitting metrics" + type: string + remote_config_read_enabled: + description: The remote config read enabled status. + type: boolean + type: object + FullApplicationKey: + description: Datadog application key. + properties: + attributes: + $ref: "#/components/schemas/FullApplicationKeyAttributes" + id: + description: ID of the application key. + type: string + relationships: + $ref: "#/components/schemas/ApplicationKeyRelationships" + type: + $ref: "#/components/schemas/ApplicationKeysType" + type: object + FullApplicationKeyAttributes: + description: Attributes of a full application key. + properties: + created_at: + description: Creation date of the application key. + example: "2020-11-23T10:00:00.000Z" + format: date-time + readOnly: true + type: string + key: + description: The application key. + readOnly: true + type: string + last4: + description: The last four characters of the application key. + example: "abcd" + maxLength: 4 + minLength: 4 + readOnly: true + type: string + last_used_at: + description: Last usage timestamp of the application key. + example: "2020-12-20T10:00:00.000Z" + format: date-time + nullable: true + readOnly: true + type: string + name: + description: Name of the application key. + example: "Application Key for managing dashboards" + type: string + scopes: + description: Array of scopes to grant the application key. + example: ["dashboards_read", "dashboards_write", "dashboards_public_share"] + items: + description: Name of scope. + type: string + nullable: true + type: array + type: object + FullCustomFrameworkData: + description: Contains type and attributes for custom frameworks. + properties: + attributes: + $ref: "#/components/schemas/FullCustomFrameworkDataAttributes" + id: + description: The ID of the custom framework. + example: handle-version + type: string + type: + $ref: "#/components/schemas/CustomFrameworkType" + required: + - id + - type + - attributes + type: object + FullCustomFrameworkDataAttributes: + description: Full Framework Data Attributes. + properties: + handle: + description: Framework Handle + example: sec2 + type: string + icon_url: + description: Framework Icon URL + example: https://example.com/icon.png + type: string + name: + description: Framework Name + example: security-framework + type: string + requirements: + description: Framework Requirements + items: + $ref: "#/components/schemas/CustomFrameworkRequirement" + type: array + version: + description: Framework Version + example: "2" + type: string + required: + - handle + - version + - name + - requirements + type: object + FullPersonalAccessToken: + description: Datadog access token, including the token key. + properties: + attributes: + $ref: "#/components/schemas/FullPersonalAccessTokenAttributes" + id: + description: ID of the access token. + type: string + relationships: + $ref: "#/components/schemas/PersonalAccessTokenRelationships" + type: + $ref: "#/components/schemas/PersonalAccessTokensType" + type: object + FullPersonalAccessTokenAttributes: + description: Attributes of a full access token, including the token key. + properties: + created_at: + description: Creation date of the access token. + example: "2024-01-01T00:00:00+00:00" + format: date-time + readOnly: true + type: string + expires_at: + description: Expiration date of the access token. + example: "2025-12-31T23:59:59+00:00" + format: date-time + nullable: true + readOnly: true + type: string + key: + description: The access token key. Only returned upon creation. + readOnly: true + type: string + name: + description: Name of the access token. + example: "My Access Token" + type: string + public_portion: + description: The public portion of the access token. + example: "ddpat_abc123" + readOnly: true + type: string + scopes: + description: Array of scopes granted to the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + type: object + FullServiceAccessToken: + description: Datadog access token, including the token key. + properties: + attributes: + $ref: "#/components/schemas/FullServiceAccessTokenAttributes" + id: + description: ID of the access token. + type: string + relationships: + $ref: "#/components/schemas/ServiceAccessTokenRelationships" + type: + $ref: "#/components/schemas/ServiceAccessTokensType" + type: object + FullServiceAccessTokenAttributes: + description: Attributes of a full access token, including the token key. + properties: + created_at: + description: Creation date of the access token. + example: "2024-01-01T00:00:00+00:00" + format: date-time + readOnly: true + type: string + expires_at: + description: Expiration date of the access token. + example: "2025-12-31T23:59:59+00:00" + format: date-time + nullable: true + readOnly: true + type: string + key: + description: The access token key. Only returned upon creation. + readOnly: true + type: string + name: + description: Name of the access token. + example: "My Access Token" + type: string + public_portion: + description: The public portion of the access token. + example: "ddsat_abc123" + readOnly: true + type: string + scopes: + description: Array of scopes granted to the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + type: object + GCPCredentials: + description: The definition of the `GCPCredentials` object. + oneOf: + - $ref: "#/components/schemas/GCPServiceAccount" + GCPCredentialsUpdate: + description: The definition of the `GCPCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/GCPServiceAccountUpdate" + GCPIntegration: + description: The definition of the `GCPIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/GCPCredentials" + type: + $ref: "#/components/schemas/GCPIntegrationType" + required: + - type + - credentials + type: object + GCPIntegrationType: + description: The definition of the `GCPIntegrationType` object. + enum: + - GCP + example: GCP + type: string + x-enum-varnames: + - GCP + GCPIntegrationUpdate: + description: The definition of the `GCPIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/GCPCredentialsUpdate" + type: + $ref: "#/components/schemas/GCPIntegrationType" + required: + - type + type: object + GCPMetricNamespaceConfig: + description: Configuration for a GCP metric namespace. + properties: + disabled: + default: false + description: When disabled, Datadog does not collect metrics that are related to this GCP metric namespace. + example: true + type: boolean + filters: + description: |- + When enabled, Datadog applies these additional filters to limit metric collection. A metric is collected only if it does not match all exclusion filters and matches at least one allow filter. + example: ["snapshot.*", "!*_by_region"] + items: + description: A metric namespace filter + type: string + type: array + id: + description: The id of the GCP metric namespace. + example: "pubsub" + type: string + type: object + GCPMonitoredResourceConfig: + description: Configuration for a GCP monitored resource. + properties: + filters: + description: |- + List of filters to limit the monitored resources that are pulled into Datadog by using tags. + Only monitored resources that apply to specified filters are imported into Datadog. + example: ["$KEY:$VALUE"] + items: + description: A monitored resource filter + type: string + type: array + type: + $ref: "#/components/schemas/GCPMonitoredResourceConfigType" + type: object + GCPMonitoredResourceConfigType: + description: The GCP monitored resource type. Only a subset of resource types are supported. + enum: ["cloud_function", "cloud_run_revision", "gce_instance"] + example: "gce_instance" + type: string + x-enum-varnames: + - CLOUD_FUNCTION + - CLOUD_RUN_REVISION + - GCE_INSTANCE + GCPSTSDelegateAccount: + description: Datadog principal service account info. + properties: + attributes: + $ref: "#/components/schemas/GCPSTSDelegateAccountAttributes" + id: + description: The ID of the delegate service account. + example: "ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com" + type: string + type: + $ref: "#/components/schemas/GCPSTSDelegateAccountType" + type: object + GCPSTSDelegateAccountAttributes: + description: Your delegate account attributes. + properties: + delegate_account_email: + description: Your organization's Datadog principal email address. + example: "ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com" + type: string + type: object + GCPSTSDelegateAccountResponse: + description: Your delegate service account response data. + properties: + data: + $ref: "#/components/schemas/GCPSTSDelegateAccount" + type: object + GCPSTSDelegateAccountType: + default: gcp_sts_delegate + description: The type of account. + enum: + - gcp_sts_delegate + example: gcp_sts_delegate + type: string + x-enum-varnames: + - GCP_STS_DELEGATE + GCPSTSServiceAccount: + description: Info on your service account. + properties: + attributes: + $ref: "#/components/schemas/GCPSTSServiceAccountAttributes" + id: + description: Your service account's unique ID. + example: "d291291f-12c2-22g4-j290-123456678897" + type: string + meta: + $ref: "#/components/schemas/GCPServiceAccountMeta" + type: + $ref: "#/components/schemas/GCPServiceAccountType" + type: object + GCPSTSServiceAccountAttributes: + description: Attributes associated with your service account. + properties: + account_tags: + description: Tags to be associated with GCP metrics and service checks from your account. + items: + description: Account Level Tag + type: string + type: array + automute: + description: |- + Silence monitors for expected GCE instance shutdowns. + type: boolean + client_email: + description: Your service account email address. + example: "datadog-service-account@test-project.iam.gserviceaccount.com" + type: string + cloud_run_revision_filters: + deprecated: true + description: |- + List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. + Only Cloud Run revision resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=cloud_run_revision` + example: ["$KEY:$VALUE"] + items: + description: Cloud Run revision filters + type: string + type: array + host_filters: + deprecated: true + description: |- + List of filters to limit the VM instances that are pulled into Datadog by using tags. + Only VM instance resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=gce_instance` + example: ["$KEY:$VALUE"] + items: + description: VM instance filters + type: string + type: array + is_cspm_enabled: + description: |- + When enabled, Datadog will activate the Cloud Security Monitoring product for this service account. Note: This requires resource_collection_enabled to be set to true. + type: boolean + is_global_location_enabled: + default: true + description: When enabled, Datadog collects metrics where location is explicitly stated as "global" or where location information cannot be deduced from GCP labels. + example: true + type: boolean + is_per_project_quota_enabled: + default: false + description: |- + When enabled, Datadog applies the `X-Goog-User-Project` header, attributing Google Cloud billing and quota usage to the project being monitored rather than the default service account project. + example: true + type: boolean + is_resource_change_collection_enabled: + default: false + description: |- + When enabled, Datadog scans for all resource change data in your Google Cloud environment. + example: true + type: boolean + is_security_command_center_enabled: + default: false + description: |- + When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account. + example: true + type: boolean + metric_namespace_configs: + description: Configurations for GCP metric namespaces. + example: [{"disabled": true, "id": "aiplatform"}, {"filters": ["snapshot.*", "!*_by_region"], "id": "pubsub"}] + items: + $ref: "#/components/schemas/GCPMetricNamespaceConfig" + type: array + monitored_resource_configs: + description: Configurations for GCP monitored resources. + example: [{"filters": ["$KEY:$VALUE"], "type": "gce_instance"}] + items: + $ref: "#/components/schemas/GCPMonitoredResourceConfig" + type: array + region_filter_configs: + description: Configurations for GCP location filtering, such as region, multi-region, or zone. Only monitored resources that match the specified regions are imported into Datadog. By default, Datadog collects from all locations. + example: ["nam4", "europe-north1"] + items: + description: Region Filter Configs + type: string + type: array + resource_collection_enabled: + description: |- + When enabled, Datadog scans for all resources in your GCP environment. + type: boolean + type: object + GCPSTSServiceAccountCreateRequest: + description: Data on your newly generated service account. + properties: + data: + $ref: "#/components/schemas/GCPSTSServiceAccountData" + type: object + GCPSTSServiceAccountData: + description: Additional metadata on your generated service account. + properties: + attributes: + $ref: "#/components/schemas/GCPSTSServiceAccountAttributes" + type: + $ref: "#/components/schemas/GCPServiceAccountType" + type: object + GCPSTSServiceAccountResponse: + description: The account creation response. + properties: + data: + $ref: "#/components/schemas/GCPSTSServiceAccount" + type: object + GCPSTSServiceAccountUpdateRequest: + description: Service account info. + properties: + data: + $ref: "#/components/schemas/GCPSTSServiceAccountUpdateRequestData" + type: object + GCPSTSServiceAccountUpdateRequestData: + description: Data on your service account. + properties: + attributes: + $ref: "#/components/schemas/GCPSTSServiceAccountAttributes" + id: + description: Your service account's unique ID. + example: "d291291f-12c2-22g4-j290-123456678897" + type: string + type: + $ref: "#/components/schemas/GCPServiceAccountType" + type: object + GCPSTSServiceAccountsResponse: + description: Object containing all your STS enabled accounts. + properties: + data: + description: Array of GCP STS enabled service accounts. + items: + $ref: "#/components/schemas/GCPSTSServiceAccount" + type: array + type: object + GCPServiceAccount: + description: The definition of the `GCPServiceAccount` object. + properties: + private_key: + description: The `GCPServiceAccount` `private_key`. + example: "" + type: string + service_account_email: + description: The `GCPServiceAccount` `service_account_email`. + example: "" + type: string + type: + $ref: "#/components/schemas/GCPServiceAccountCredentialType" + required: + - type + - service_account_email + - private_key + type: object + GCPServiceAccountCredentialType: + description: The definition of the `GCPServiceAccount` object. + enum: + - GCPServiceAccount + example: GCPServiceAccount + type: string + x-enum-varnames: + - GCPSERVICEACCOUNT + GCPServiceAccountMeta: + description: Additional information related to your service account. + properties: + accessible_projects: + description: The current list of projects accessible from your service account. + items: + description: List of GCP projects. + type: string + type: array + type: object + GCPServiceAccountType: + default: gcp_service_account + description: The type of account. + enum: + - gcp_service_account + example: gcp_service_account + type: string + x-enum-varnames: + - GCP_SERVICE_ACCOUNT + GCPServiceAccountUpdate: + description: The definition of the `GCPServiceAccount` object. + properties: + private_key: + description: The `GCPServiceAccountUpdate` `private_key`. + type: string + service_account_email: + description: The `GCPServiceAccountUpdate` `service_account_email`. + type: string + type: + $ref: "#/components/schemas/GCPServiceAccountCredentialType" + required: + - type + type: object + GCPUsageCostConfig: + description: Google Cloud Usage Cost config. + properties: + attributes: + $ref: "#/components/schemas/GCPUsageCostConfigAttributes" + id: + description: The ID of the Google Cloud Usage Cost config. + type: string + type: + $ref: "#/components/schemas/GCPUsageCostConfigType" + required: + - attributes + - type + type: object + GCPUsageCostConfigAttributes: + description: Attributes for a Google Cloud Usage Cost config. + properties: + account_id: + description: The Google Cloud account ID. + example: "123456_A123BC_12AB34" + type: string + bucket_name: + description: The Google Cloud bucket name used to store the Usage Cost export. + example: "dd-cost-bucket" + type: string + created_at: + description: The timestamp when the Google Cloud Usage Cost config was created. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + dataset: + description: The export dataset name used for the Google Cloud Usage Cost Report. + example: "billing" + type: string + error_messages: + description: The error messages for the Google Cloud Usage Cost config. + items: + description: An error message string. + type: string + nullable: true + type: array + export_prefix: + description: The export prefix used for the Google Cloud Usage Cost Report. + example: "datadog_cloud_cost_usage_export" + type: string + export_project_name: + description: The name of the Google Cloud Usage Cost Report. + example: "dd-cloud-cost-report" + type: string + months: + deprecated: true + description: The number of months the report has been backfilled. + format: int32 + maximum: 36 + type: integer + project_id: + description: The `project_id` of the Google Cloud Usage Cost report. + example: "my-project-123" + type: string + service_account: + description: The unique Google Cloud service account email. + example: "dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com" + type: string + status: + description: The status of the Google Cloud Usage Cost config. + example: "active" + type: string + status_updated_at: + description: The timestamp when the Google Cloud Usage Cost config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + updated_at: + description: The timestamp when the Google Cloud Usage Cost config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + required: + - account_id + - bucket_name + - dataset + - export_prefix + - export_project_name + - service_account + - status + type: object + GCPUsageCostConfigPatchData: + description: Google Cloud Usage Cost config patch data. + properties: + attributes: + $ref: "#/components/schemas/GCPUsageCostConfigPatchRequestAttributes" + type: + $ref: "#/components/schemas/GCPUsageCostConfigPatchRequestType" + required: + - attributes + - type + type: object + GCPUsageCostConfigPatchRequest: + description: Google Cloud Usage Cost config patch request. + properties: + data: + $ref: "#/components/schemas/GCPUsageCostConfigPatchData" + required: + - data + type: object + GCPUsageCostConfigPatchRequestAttributes: + description: Attributes for Google Cloud Usage Cost config patch request. + properties: + is_enabled: + description: Whether or not the Cloud Cost Management account is enabled. + example: true + type: boolean + required: + - is_enabled + type: object + GCPUsageCostConfigPatchRequestType: + default: gcp_uc_config_patch_request + description: Type of Google Cloud Usage Cost config patch request. + enum: + - gcp_uc_config_patch_request + example: gcp_uc_config_patch_request + type: string + x-enum-varnames: + - GCP_USAGE_COST_CONFIG_PATCH_REQUEST + GCPUsageCostConfigPostData: + description: Google Cloud Usage Cost config post data. + properties: + attributes: + $ref: "#/components/schemas/GCPUsageCostConfigPostRequestAttributes" + type: + $ref: "#/components/schemas/GCPUsageCostConfigPostRequestType" + required: + - type + type: object + GCPUsageCostConfigPostRequest: + description: Google Cloud Usage Cost config post request. + properties: + data: + $ref: "#/components/schemas/GCPUsageCostConfigPostData" + required: + - data + type: object + GCPUsageCostConfigPostRequestAttributes: + description: Attributes for Google Cloud Usage Cost config post request. + properties: + billing_account_id: + description: The Google Cloud account ID. + example: "123456_A123BC_12AB34" + type: string + bucket_name: + description: The Google Cloud bucket name used to store the Usage Cost export. + example: "dd-cost-bucket" + type: string + export_dataset_name: + description: The export dataset name used for the Google Cloud Usage Cost report. + example: "billing" + type: string + export_prefix: + description: The export prefix used for the Google Cloud Usage Cost report. + example: "datadog_cloud_cost_usage_export" + type: string + export_project_name: + description: The name of the Google Cloud Usage Cost report. + example: "dd-cloud-cost-report" + type: string + service_account: + description: The unique Google Cloud service account email. + example: "dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com" + type: string + required: + - billing_account_id + - bucket_name + - export_project_name + - export_dataset_name + - service_account + type: object + GCPUsageCostConfigPostRequestType: + default: gcp_uc_config_post_request + description: Type of Google Cloud Usage Cost config post request. + enum: + - gcp_uc_config_post_request + example: gcp_uc_config_post_request + type: string + x-enum-varnames: + - GCP_USAGE_COST_CONFIG_POST_REQUEST + GCPUsageCostConfigResponse: + description: Response of Google Cloud Usage Cost config. + properties: + data: + $ref: "#/components/schemas/GCPUsageCostConfig" + type: object + GCPUsageCostConfigType: + default: gcp_uc_config + description: Type of Google Cloud Usage Cost config. + enum: + - gcp_uc_config + example: gcp_uc_config + type: string + x-enum-varnames: + - GCP_UC_CONFIG + GCPUsageCostConfigsResponse: + description: List of Google Cloud Usage Cost configs. + properties: + data: + description: A Google Cloud Usage Cost config. + items: + $ref: "#/components/schemas/GCPUsageCostConfig" + type: array + required: + - data + type: object + GcpScanOptions: + description: Response object containing GCP scan options for a single project. + example: + data: + attributes: + cloud_function: true + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: company-project-id + type: gcp_scan_options + properties: + data: + $ref: "#/components/schemas/GcpScanOptionsData" + type: object + GcpScanOptionsArray: + description: Response object containing a list of GCP scan options. + example: + data: + - attributes: + cloud_function: true + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: company-project-id + type: gcp_scan_options + properties: + data: + description: A list of GCP scan options. + items: + $ref: "#/components/schemas/GcpScanOptionsData" + type: array + required: + - data + type: object + GcpScanOptionsData: + description: Single GCP scan options entry. + properties: + attributes: + $ref: "#/components/schemas/GcpScanOptionsDataAttributes" + id: + description: The GCP project ID. + example: "" + type: string + type: + $ref: "#/components/schemas/GcpScanOptionsDataType" + required: + - type + - id + type: object + GcpScanOptionsDataAttributes: + description: Attributes for GCP scan options configuration. + properties: + cloud_function: + description: Indicates if scanning of Cloud Functions is enabled. + type: boolean + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + GcpScanOptionsDataType: + default: gcp_scan_options + description: GCP scan options resource type. + enum: + - gcp_scan_options + example: gcp_scan_options + type: string + x-enum-varnames: + - GCP_SCAN_OPTIONS + GcpScanOptionsInputUpdate: + description: Request object for updating GCP scan options. + example: + data: + id: company-project-id + type: gcp_scan_options + properties: + data: + $ref: "#/components/schemas/GcpScanOptionsInputUpdateData" + type: object + GcpScanOptionsInputUpdateData: + description: Data object for updating the scan options of a single GCP project. + properties: + attributes: + $ref: "#/components/schemas/GcpScanOptionsInputUpdateDataAttributes" + id: + description: The GCP project ID. + example: "" + type: string + type: + $ref: "#/components/schemas/GcpScanOptionsInputUpdateDataType" + required: + - type + - id + type: object + GcpScanOptionsInputUpdateDataAttributes: + description: Attributes for updating GCP scan options configuration. + properties: + cloud_function: + description: Indicates if scanning of Cloud Functions is enabled. + type: boolean + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + GcpScanOptionsInputUpdateDataType: + default: gcp_scan_options + description: GCP scan options resource type. + enum: + - gcp_scan_options + example: gcp_scan_options + type: string + x-enum-varnames: + - GCP_SCAN_OPTIONS + GcpUcConfigResponse: + description: The definition of `GcpUcConfigResponse` object. + example: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: "2023-01-01T12:00:00.000000" + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: gcp_uc_config + properties: + data: + $ref: "#/components/schemas/GcpUcConfigResponseData" + type: object + GcpUcConfigResponseData: + description: The definition of `GcpUcConfigResponseData` object. + properties: + attributes: + $ref: "#/components/schemas/GcpUcConfigResponseDataAttributes" + id: + description: The `GcpUcConfigResponseData` `id`. + type: string + type: + $ref: "#/components/schemas/GcpUcConfigResponseDataType" + required: + - type + type: object + GcpUcConfigResponseDataAttributes: + description: The definition of `GcpUcConfigResponseDataAttributes` object. + properties: + account_id: + description: The `attributes` `account_id`. + type: string + bucket_name: + description: The `attributes` `bucket_name`. + type: string + created_at: + description: The `attributes` `created_at`. + type: string + dataset: + description: The `attributes` `dataset`. + type: string + error_messages: + description: The `attributes` `error_messages`. + items: + description: An error message string. + type: string + nullable: true + type: array + export_prefix: + description: The `attributes` `export_prefix`. + type: string + export_project_name: + description: The `attributes` `export_project_name`. + type: string + months: + description: The `attributes` `months`. + format: int64 + type: integer + project_id: + description: The `attributes` `project_id`. + type: string + service_account: + description: The `attributes` `service_account`. + type: string + status: + description: The `attributes` `status`. + type: string + status_updated_at: + description: The `attributes` `status_updated_at`. + type: string + updated_at: + description: The `attributes` `updated_at`. + type: string + type: object + GcpUcConfigResponseDataType: + default: gcp_uc_config + description: Google Cloud Usage Cost config resource type. + enum: + - gcp_uc_config + example: gcp_uc_config + type: string + x-enum-varnames: + - GCP_UC_CONFIG + GeminiAPIKey: + description: The definition of the `GeminiAPIKey` object. + properties: + api_key: + description: The `GeminiAPIKey` `api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/GeminiAPIKeyType" + required: + - type + - api_key + type: object + GeminiAPIKeyType: + description: The definition of the `GeminiAPIKey` object. + enum: + - GeminiAPIKey + example: GeminiAPIKey + type: string + x-enum-varnames: + - GEMINIAPIKEY + GeminiAPIKeyUpdate: + description: The definition of the `GeminiAPIKey` object. + properties: + api_key: + description: The `GeminiAPIKeyUpdate` `api_key`. + type: string + type: + $ref: "#/components/schemas/GeminiAPIKeyType" + required: + - type + type: object + GeminiCredentials: + description: The definition of the `GeminiCredentials` object. + oneOf: + - $ref: "#/components/schemas/GeminiAPIKey" + GeminiCredentialsUpdate: + description: The definition of the `GeminiCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/GeminiAPIKeyUpdate" + GeminiIntegration: + description: The definition of the `GeminiIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/GeminiCredentials" + type: + $ref: "#/components/schemas/GeminiIntegrationType" + required: + - type + - credentials + type: object + GeminiIntegrationType: + description: The definition of the `GeminiIntegrationType` object. + enum: + - Gemini + example: Gemini + type: string + x-enum-varnames: + - GEMINI + GeminiIntegrationUpdate: + description: The definition of the `GeminiIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/GeminiCredentialsUpdate" + type: + $ref: "#/components/schemas/GeminiIntegrationType" + required: + - type + type: object + GenerateCostTagDescriptionResponse: + description: Response wrapping an AI-generated Cloud Cost Management tag key description. + example: + data: + attributes: + description: AWS account that owns this cost. + id: account_id + type: cost_generated_tag_description + properties: + data: + $ref: "#/components/schemas/GeneratedCostTagDescription" + required: + - data + type: object + GeneratedCostTagDescription: + description: AI-generated Cloud Cost Management tag key description returned by the generate endpoint. The result is returned to the client but is not persisted by this endpoint. + properties: + attributes: + $ref: "#/components/schemas/GeneratedCostTagDescriptionAttributes" + id: + description: The tag key the AI description was generated for. + example: account_id + type: string + type: + $ref: "#/components/schemas/GeneratedCostTagDescriptionType" + required: + - attributes + - id + - type + type: object + GeneratedCostTagDescriptionAttributes: + description: Attributes of an AI-generated Cloud Cost Management tag key description. + properties: + description: + description: The AI-generated description for the tag key. + example: AWS account that owns this cost. + type: string + required: + - description + type: object + GeneratedCostTagDescriptionType: + default: cost_generated_tag_description + description: Type of the AI-generated Cloud Cost Management tag description resource. + enum: + - cost_generated_tag_description + example: cost_generated_tag_description + type: string + x-enum-varnames: + - COST_GENERATED_TAG_DESCRIPTION + GetActionConnectionResponse: + description: The response for found connection + properties: + data: + $ref: "#/components/schemas/ActionConnectionData" + type: object + GetAppKeyRegistrationResponse: + description: The response object after getting an app key registration. + properties: + data: + $ref: "#/components/schemas/AppKeyRegistrationData" + type: object + GetAppResponse: + description: The full app definition response object. + properties: + data: + $ref: "#/components/schemas/GetAppResponseData" + included: + description: Data on the version of the app that was published. + items: + $ref: "#/components/schemas/Deployment" + type: array + meta: + $ref: "#/components/schemas/AppMeta" + relationship: + $ref: "#/components/schemas/AppRelationship" + type: object + GetAppResponseData: + description: The data object containing the app definition. + properties: + attributes: + $ref: "#/components/schemas/GetAppResponseDataAttributes" + id: + description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + - attributes + type: object + GetAppResponseDataAttributes: + description: The app definition attributes, such as name, description, and components. + properties: + components: + description: The UI components that make up the app. + items: + $ref: "#/components/schemas/ComponentGrid" + type: array + description: + description: A human-readable description for the app. + type: string + favorite: + description: Whether the app is marked as a favorite by the current user. + type: boolean + name: + description: The name of the app. + type: string + queries: + description: An array of queries, such as external actions and state variables, that the app uses. + items: + $ref: "#/components/schemas/Query" + type: array + rootInstanceName: + description: The name of the root component of the app. This must be a `grid` component that contains all other components. + type: string + tags: + description: A list of tags for the app, which can be used to filter apps. + example: + - "service:webshop-backend" + - "team:webshop" + items: + description: An individual tag for the app. + type: string + type: array + type: object + GetAstRequest: + description: The request payload for parsing source code into an abstract syntax tree. + properties: + data: + $ref: "#/components/schemas/GetAstRequestData" + required: + - data + type: object + GetAstRequestData: + description: The primary data object in the get-AST request. + properties: + attributes: + $ref: "#/components/schemas/GetAstRequestDataAttributes" + id: + description: An optional identifier for the get-AST request resource. + type: string + type: + $ref: "#/components/schemas/GetAstRequestDataType" + required: + - type + - attributes + type: object + GetAstRequestDataAttributes: + description: The attributes of the get-AST request, containing the source code to parse. + properties: + code: + description: The base64-encoded source code to parse into an abstract syntax tree. + example: aW1wb3J0IHN5cw== + type: string + file_encoding: + description: The encoding of the source code file (must be utf-8). + example: utf-8 + type: string + language: + description: The programming language of the source code to parse. + example: python + type: string + required: + - code + - file_encoding + - language + type: object + GetAstRequestDataType: + default: get_ast_request + description: Get AST request resource type. + enum: + - get_ast_request + example: get_ast_request + type: string + x-enum-varnames: + - GET_AST_REQUEST + GetAstResponse: + description: The response payload containing the parsed abstract syntax tree. + properties: + data: + $ref: "#/components/schemas/GetAstResponseData" + required: + - data + type: object + GetAstResponseData: + description: The primary data object in the get-AST response. + properties: + attributes: + $ref: "#/components/schemas/GetAstResponseDataAttributes" + id: + description: The identifier of the get-AST response resource. + type: string + type: + $ref: "#/components/schemas/GetAstResponseDataType" + required: + - type + - attributes + type: object + GetAstResponseDataAttributes: + description: The attributes of the get-AST response, containing the parsed abstract syntax tree. + properties: + ast: + additionalProperties: {} + description: The parsed abstract syntax tree as a JSON object. + type: object + required: + - ast + type: object + GetAstResponseDataType: + default: get_ast_response + description: Get AST response resource type. + enum: + - get_ast_response + example: get_ast_response + type: string + x-enum-varnames: + - GET_AST_RESPONSE + GetBlueprintResponse: + description: The response for retrieving a single blueprint. + properties: + data: + $ref: "#/components/schemas/BlueprintData" + type: object + GetBlueprintsResponse: + description: The response for retrieving multiple blueprints. + properties: + data: + description: An array of blueprints. + items: + $ref: "#/components/schemas/BlueprintData" + type: array + type: object + GetCustomFrameworkResponse: + description: Response object to get a custom framework. + properties: + data: + $ref: "#/components/schemas/FullCustomFrameworkData" + required: + - data + type: object + GetDataDeletionsResponseBody: + description: The response from the get data deletion requests endpoint. + properties: + data: + description: The list of data deletion requests that matches the query. + items: + $ref: "#/components/schemas/DataDeletionResponseItem" + type: array + meta: + $ref: "#/components/schemas/DataDeletionResponseMeta" + type: object + GetDataObservabilityMonitorRunStatusResponse: + description: The response for getting the status of a data observability monitor run. + properties: + data: + $ref: "#/components/schemas/GetDataObservabilityMonitorRunStatusResponseData" + required: + - data + type: object + GetDataObservabilityMonitorRunStatusResponseAttributes: + description: The attributes of a data observability monitor run status response. + properties: + error_message: + description: Error message describing why the monitor run failed. Only present when status is error. + example: "run completed but produced no metric data" + type: string + status: + $ref: "#/components/schemas/DataObservabilityMonitorRunStatus" + required: + - status + type: object + GetDataObservabilityMonitorRunStatusResponseData: + description: The data object for a data observability monitor run status response. + properties: + attributes: + $ref: "#/components/schemas/GetDataObservabilityMonitorRunStatusResponseAttributes" + id: + description: The unique identifier of the monitor run. + example: "abc123def456" + type: string + type: + $ref: "#/components/schemas/DataObservabilityMonitorRunType" + required: + - id + - type + - attributes + type: object + GetDeviceAttributes: + description: The device attributes + properties: + description: + description: A description of the device. + example: a device monitored with NDM + type: string + device_type: + description: The type of the device. + example: other + type: string + integration: + description: The integration of the device. + example: snmp + type: string + ip_address: + description: The IP address of the device. + example: 1.2.3.4 + type: string + location: + description: The location of the device. + example: paris + type: string + model: + description: The model of the device. + example: xx-123 + type: string + name: + description: The name of the device. + example: example device + type: string + os_hostname: + description: The operating system hostname of the device. + example: 1.0.2 + type: string + os_name: + description: The operating system name of the device. + example: example OS + type: string + os_version: + description: The operating system version of the device. + example: 1.0.2 + type: string + ping_status: + description: The ping status of the device. + example: unmonitored + type: string + product_name: + description: The product name of the device. + example: example device + type: string + serial_number: + description: The serial number of the device. + example: X12345 + type: string + status: + description: The status of the device. + example: ok + type: string + subnet: + description: The subnet of the device. + example: 1.2.3.4/24 + type: string + sys_object_id: + description: The device `sys_object_id`. + example: 1.3.6.1.4.1.99999 + type: string + tags: + description: A list of tags associated with the device. + example: ["device_ip:1.2.3.4", "device_id:example:1.2.3.4"] + items: + description: A tag string in `key:value` format. + type: string + type: array + vendor: + description: The vendor of the device. + example: example vendor + type: string + version: + description: The version of the device. + example: 1.2.3 + type: string + type: object + GetDeviceData: + description: Get device response data. + properties: + attributes: + $ref: "#/components/schemas/GetDeviceAttributes" + id: + description: The device ID + example: example:1.2.3.4 + type: string + type: + description: The type of the resource. The value should always be device. + type: string + type: object + GetDeviceResponse: + description: The `GetDevice` operation's response. + properties: + data: + $ref: "#/components/schemas/GetDeviceData" + type: object + GetFindingResponse: + description: The expected response schema when getting a finding. + properties: + data: + $ref: "#/components/schemas/DetailedFinding" + required: + - data + type: object + GetInterfacesData: + description: The interfaces list data + properties: + attributes: + $ref: "#/components/schemas/InterfaceAttributes" + id: + description: The interface ID + example: example:1.2.3.4:99 + type: string + type: + description: The type of the resource. The value should always be interface. + type: string + type: object + GetInterfacesResponse: + description: The `GetInterfaces` operation's response. + properties: + data: + description: Get Interfaces response + items: + $ref: "#/components/schemas/GetInterfacesData" + type: array + type: object + GetInvestigationResponse: + description: Response for a single Bits AI investigation. + properties: + data: + $ref: "#/components/schemas/GetInvestigationResponseData" + links: + $ref: "#/components/schemas/GetInvestigationResponseLinks" + required: + - data + - links + type: object + GetInvestigationResponseData: + description: Data for the get investigation response. + properties: + attributes: + $ref: "#/components/schemas/GetInvestigationResponseDataAttributes" + id: + description: The unique identifier of the investigation. + example: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + type: string + type: + $ref: "#/components/schemas/InvestigationType" + required: + - id + - type + - attributes + type: object + GetInvestigationResponseDataAttributes: + description: Attributes of the investigation. + properties: + conclusions: + description: The conclusions drawn from the investigation. + items: + $ref: "#/components/schemas/InvestigationConclusion" + type: array + status: + description: The current status of the investigation. + example: "conclusive" + type: string + title: + description: The title of the investigation. + example: "Monitor alert investigation for web-server-01" + type: string + required: + - title + - status + - conclusions + type: object + GetInvestigationResponseLinks: + description: Links related to the investigation. + properties: + self: + description: The URL to the investigation in the Datadog app. + example: "https://app.datadoghq.com/bits-ai/investigations/a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + type: string + required: + - self + type: object + GetIoCIndicatorResponse: + description: Response for the get indicator of compromise endpoint. + properties: + data: + $ref: "#/components/schemas/GetIoCIndicatorResponseData" + type: object + GetIoCIndicatorResponseAttributes: + description: Attributes of the get indicator response. + properties: + data: + $ref: "#/components/schemas/IoCIndicatorDetailed" + type: object + GetIoCIndicatorResponseData: + description: IoC indicator response data object. + properties: + attributes: + $ref: "#/components/schemas/GetIoCIndicatorResponseAttributes" + id: + description: Unique identifier for the response. + type: string + type: + description: Response type identifier. + type: string + type: object + GetIssueIncludeQueryParameterItem: + description: Relationship object that should be included in the response. + enum: + - assignee + - case + - team_owners + example: "case" + type: string + x-enum-varnames: + - ASSIGNEE + - CASE + - TEAM_OWNERS + GetMappingResponse: + description: Response containing the entity attribute mapping configuration including all available attributes and their properties. + example: + data: + attributes: + attributes: + - attribute: user_id + description: Unique user identifier + display_name: User ID + groups: + - Identity + is_custom: false + type: string + - attribute: user_email + description: User email address + display_name: Email Address + groups: + - Identity + - Contact + is_custom: false + type: string + - attribute: first_country_code + description: The ISO code of the country for the user's first session + display_name: First Country Code + groups: + - Geography + is_custom: false + type: string + - attribute: "@customer_tier" + description: Customer subscription tier + display_name: Customer Tier + groups: + - Business + is_custom: true + type: string + id: get_mappings_response + type: get_mappings_response + properties: + data: + $ref: "#/components/schemas/GetMappingResponseData" + type: object + GetMappingResponseData: + description: The data object containing the resource type and attributes for the get mapping response. + properties: + attributes: + $ref: "#/components/schemas/GetMappingResponseDataAttributes" + id: + description: Unique identifier for the get mapping response resource. + type: string + type: + $ref: "#/components/schemas/GetMappingResponseDataType" + required: + - type + type: object + GetMappingResponseDataAttributes: + description: Attributes of the get mapping response, containing the list of configured entity attributes. + properties: + attributes: + description: The list of entity attributes and their mapping configurations. + items: + $ref: "#/components/schemas/GetMappingResponseDataAttributesAttributesItems" + type: array + type: object + GetMappingResponseDataAttributesAttributesItems: + description: Details of a single entity attribute including its mapping configuration and metadata. + properties: + attribute: + description: The attribute identifier as used in the entity data model. + type: string + description: + description: Human-readable explanation of what the attribute represents. + type: string + display_name: + description: The human-readable label for the attribute shown in the UI. + type: string + groups: + description: List of group labels used to categorize the attribute. + items: + description: A group label name for categorizing the attribute. + type: string + type: array + is_custom: + description: Whether this attribute is a custom user-defined attribute rather than a built-in one. + type: boolean + type: + description: The data type of the attribute (for example, string or number). + type: string + type: object + GetMappingResponseDataType: + default: get_mappings_response + description: Get mappings response resource type. + enum: + - get_mappings_response + example: get_mappings_response + type: string + x-enum-varnames: + - GET_MAPPINGS_RESPONSE + GetMultipleRulesetsRequest: + description: The request payload for retrieving rules for multiple rulesets in a single batch call. + properties: + data: + $ref: "#/components/schemas/GetMultipleRulesetsRequestData" + type: object + GetMultipleRulesetsRequestData: + description: The primary data object in the get-multiple-rulesets request, containing request attributes and resource type. + properties: + attributes: + $ref: "#/components/schemas/GetMultipleRulesetsRequestDataAttributes" + id: + description: An optional identifier for the get-multiple-rulesets request resource. + type: string + type: + $ref: "#/components/schemas/GetMultipleRulesetsRequestDataType" + required: + - type + type: object + GetMultipleRulesetsRequestDataAttributes: + description: The request attributes for fetching multiple rulesets, specifying which rulesets to retrieve and what data to include. + properties: + include_testing_rules: + description: When true, rules that are available in testing mode are included in the response. + type: boolean + include_tests: + description: When true, test cases associated with each rule are included in the response. + type: boolean + rulesets: + description: The list of ruleset names to retrieve. + items: + description: The name of a ruleset to include in the batch request. + type: string + type: array + type: object + GetMultipleRulesetsRequestDataType: + default: get_multiple_rulesets_request + description: Get multiple rulesets request resource type. + enum: + - get_multiple_rulesets_request + example: get_multiple_rulesets_request + type: string + x-enum-varnames: + - GET_MULTIPLE_RULESETS_REQUEST + GetMultipleRulesetsResponse: + description: The response payload for the get-multiple-rulesets endpoint, containing the requested rulesets and their rules. + properties: + data: + $ref: "#/components/schemas/GetMultipleRulesetsResponseData" + type: object + GetMultipleRulesetsResponseData: + description: The primary data object in the get-multiple-rulesets response, containing the response attributes and resource type. + properties: + attributes: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributes" + id: + description: The unique identifier of the get-multiple-rulesets response resource. + type: string + type: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataType" + required: + - type + type: object + GetMultipleRulesetsResponseDataAttributes: + description: The attributes of the get-multiple-rulesets response, containing the list of requested rulesets. + properties: + rulesets: + description: The list of rulesets returned in response to the batch request. + items: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItems" + type: array + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItems: + description: A ruleset returned in the response, containing its metadata and associated rules. + properties: + data: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsData" + description: + description: A detailed description of the ruleset's purpose and the types of issues it targets. + type: string + name: + description: The unique name of the ruleset. + type: string + rules: + description: The list of static analysis rules included in this ruleset. + items: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItems" + type: array + short_description: + description: A brief summary of the ruleset, suitable for display in listings. + type: string + required: + - data + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsData: + description: The resource identifier and type for a ruleset. + properties: + id: + description: The unique identifier of the ruleset resource. + type: string + type: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsDataType" + required: + - type + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsDataType: + default: rulesets + description: Rulesets resource type. + enum: + - rulesets + example: rulesets + type: string + x-enum-varnames: + - RULESETS + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItems: + description: A static analysis rule within a ruleset, including its definition, metadata, and associated test cases. + properties: + arguments: + description: The list of configurable arguments accepted by this rule. + items: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsArgumentsItems" + type: array + category: + description: The category classifying the type of issue this rule detects (e.g., security, style, performance). + type: string + checksum: + description: A checksum of the rule definition used to detect changes. + type: string + code: + description: The rule implementation code used by the static analysis engine. + type: string + created_at: + description: The date and time when the rule was created. + format: date-time + type: string + created_by: + description: The identifier of the user or system that created the rule. + type: string + cve: + description: The CVE identifier associated with the vulnerability this rule detects, if applicable. + type: string + cwe: + description: The CWE identifier associated with the weakness category this rule detects, if applicable. + type: string + data: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsData" + description: + description: A detailed explanation of what the rule detects and why it matters. + type: string + documentation_url: + description: A URL pointing to additional documentation for this rule. + type: string + entity_checked: + description: The code entity type (e.g., function, class, variable) that this rule inspects. + type: string + is_published: + description: Indicates whether the rule is publicly published and available to all users. + type: boolean + is_testing: + description: Indicates whether the rule is in testing mode and not yet promoted to production. + type: boolean + language: + description: The programming language this rule applies to. + type: string + last_updated_at: + description: The date and time when the rule was last modified. + format: date-time + type: string + last_updated_by: + description: The identifier of the user or system that last updated the rule. + type: string + name: + description: The unique name identifying this rule within its ruleset. + type: string + regex: + description: A regular expression pattern used by the rule for pattern-based detection. + type: string + severity: + description: The severity level of findings produced by this rule (e.g., ERROR, WARNING, NOTICE). + type: string + short_description: + description: A brief summary of what the rule detects, suitable for display in listings. + type: string + should_use_ai_fix: + description: Indicates whether an AI-generated fix suggestion should be offered for findings from this rule. + type: boolean + tests: + description: The list of test cases used to validate the rule's behavior. + items: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsTestsItems" + type: array + tree_sitter_query: + description: The Tree-sitter query expression used by the rule to match code patterns in the AST. + type: string + type: + description: The rule type indicating the detection mechanism used (e.g., tree_sitter, regex). + type: string + required: + - data + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsArgumentsItems: + description: An argument parameter for a static analysis rule, with a name and description. + properties: + description: + description: A human-readable explanation of the argument's purpose and accepted values. + type: string + name: + description: The name of the rule argument. + type: string + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsData: + description: The resource identifier and type for a static analysis rule. + properties: + id: + description: The unique identifier of the rule resource. + type: string + type: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsDataType" + required: + - type + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsDataType: + default: rules + description: Rules resource type. + enum: + - rules + example: rules + type: string + x-enum-varnames: + - RULES + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsTestsItems: + description: A test case associated with a static analysis rule, containing the source code and expected annotation count. + properties: + annotation_count: + description: The expected number of annotations (findings) the rule should produce when run against the test code. + format: int64 + maximum: 65535 + minimum: 0 + type: integer + code: + description: The source code snippet used as input for the rule test. + type: string + filename: + description: The filename associated with the test code snippet. + type: string + type: object + GetMultipleRulesetsResponseDataType: + default: get_multiple_rulesets_response + description: Get multiple rulesets response resource type. + enum: + - get_multiple_rulesets_response + example: get_multiple_rulesets_response + type: string + x-enum-varnames: + - GET_MULTIPLE_RULESETS_RESPONSE + GetResourceEvaluationFiltersResponse: + description: The definition of `GetResourceEvaluationFiltersResponse` object. + properties: + data: + $ref: "#/components/schemas/GetResourceEvaluationFiltersResponseData" + required: + - data + type: object + GetResourceEvaluationFiltersResponseData: + description: The definition of `GetResourceFilterResponseData` object. + properties: + attributes: + $ref: "#/components/schemas/ResourceFilterAttributes" + id: + description: The `data` `id`. + example: csm_resource_filter + type: string + type: + $ref: "#/components/schemas/ResourceFilterRequestType" + type: object + GetRuleVersionHistoryData: + description: Data for the rule version history. + properties: + attributes: + $ref: "#/components/schemas/RuleVersionHistory" + id: + description: ID of the rule. + type: string + type: + $ref: "#/components/schemas/GetRuleVersionHistoryDataType" + type: object + GetRuleVersionHistoryDataType: + description: Type of data. + enum: + - GetRuleVersionHistoryResponse + type: string + x-enum-varnames: + - GETRULEVERSIONHISTORYRESPONSE + GetRuleVersionHistoryResponse: + description: Response for getting the rule version history. + properties: + data: + $ref: "#/components/schemas/GetRuleVersionHistoryData" + type: object + GetSBOMResponse: + description: The expected response schema when getting an SBOM. + properties: + data: + $ref: "#/components/schemas/SBOM" + required: + - data + type: object + GetSuppressionVersionHistoryData: + description: Data for the suppression version history. + properties: + attributes: + $ref: "#/components/schemas/SuppressionVersionHistory" + id: + description: ID of the suppression. + type: string + type: + $ref: "#/components/schemas/GetSuppressionVersionHistoryDataType" + type: object + GetSuppressionVersionHistoryDataType: + description: Type of data. + enum: + - suppression_version_history + type: string + x-enum-varnames: + - SUPPRESSIONVERSIONHISTORY + GetSuppressionVersionHistoryResponse: + description: Response for getting the suppression version history. + properties: + data: + $ref: "#/components/schemas/GetSuppressionVersionHistoryData" + type: object + GetTeamMembershipsSort: + description: Specifies the order of returned team memberships + enum: + - manager_name + - -manager_name + - name + - -name + - handle + - -handle + - email + - -email + type: string + x-enum-varnames: + - MANAGER_NAME + - _MANAGER_NAME + - NAME + - _NAME + - HANDLE + - _HANDLE + - EMAIL + - _EMAIL + GetWorkflowResponse: + description: The response object after getting a workflow. + properties: + data: + $ref: "#/components/schemas/WorkflowData" + type: object + GitCommitSHA: + description: "Git Commit SHA." + example: 66adc9350f2cc9b250b69abddab733dd55e1a588 + pattern: "^[a-fA-F0-9]{40,}$" + type: string + GitRepositoryID: + description: "Git Repository ID" + example: "github.com/organization/example-repository" + type: string + GitRepositoryURL: + description: "Git Repository URL" + example: "https://github.com/organization/example-repository" + type: string + GithubWebhookTrigger: + description: 'Trigger a workflow from a GitHub webhook. To trigger a workflow from GitHub, you must set a `webhookSecret`. In your GitHub Webhook Settings, set the Payload URL to "base_url"/api/v2/workflows/"workflow_id"/webhook?orgId="org_id", select application/json for the content type, and be highly recommend enabling SSL verification for security. The workflow must be published.' + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + GithubWebhookTriggerWrapper: + description: "Schema for a GitHub webhook-based trigger." + properties: + githubWebhookTrigger: + $ref: "#/components/schemas/GithubWebhookTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - githubWebhookTrigger + type: object + GitlabAPIKey: + description: The definition of the `GitlabAPIKey` object. + properties: + api_token: + description: The `GitlabAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/GitlabAPIKeyType" + required: + - type + - api_token + type: object + GitlabAPIKeyType: + description: The definition of the `GitlabAPIKey` object. + enum: + - GitlabAPIKey + example: GitlabAPIKey + type: string + x-enum-varnames: + - GITLABAPIKEY + GitlabAPIKeyUpdate: + description: The definition of the `GitlabAPIKey` object. + properties: + api_token: + description: The `GitlabAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/GitlabAPIKeyType" + required: + - type + type: object + GitlabCredentials: + description: The definition of the `GitlabCredentials` object. + oneOf: + - $ref: "#/components/schemas/GitlabAPIKey" + GitlabCredentialsUpdate: + description: The definition of the `GitlabCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/GitlabAPIKeyUpdate" + GitlabIntegration: + description: The definition of the `GitlabIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/GitlabCredentials" + type: + $ref: "#/components/schemas/GitlabIntegrationType" + required: + - type + - credentials + type: object + GitlabIntegrationType: + description: The definition of the `GitlabIntegrationType` object. + enum: + - Gitlab + example: Gitlab + type: string + x-enum-varnames: + - GITLAB + GitlabIntegrationUpdate: + description: The definition of the `GitlabIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/GitlabCredentialsUpdate" + type: + $ref: "#/components/schemas/GitlabIntegrationType" + required: + - type + type: object + GlobalAnnotationIds: + description: List of annotation IDs that apply to the entire page rather than a specific widget. + example: + - "00000000-0000-0000-0000-000000000001" + items: + description: Annotation ID. + format: uuid + type: string + type: array + GlobalIncidentSettingsAttributesRequest: + description: Global incident settings attributes + properties: + analytics_dashboard_id: + description: The analytics dashboard ID + example: abc-123-def + type: string + type: object + GlobalIncidentSettingsAttributesResponse: + description: Global incident settings attributes + properties: + analytics_dashboard_id: + description: The analytics dashboard ID + example: abc-123-def + type: string + created: + description: Timestamp when the settings were created + example: "2026-01-13T17:15:56.557278191Z" + format: date-time + type: string + modified: + description: Timestamp when the settings were last modified + example: "2026-01-13T17:15:56.557278191Z" + format: date-time + type: string + required: + - created + - modified + - analytics_dashboard_id + type: object + GlobalIncidentSettingsDataRequest: + description: Data object in the global incident settings request. + properties: + attributes: + $ref: "#/components/schemas/GlobalIncidentSettingsAttributesRequest" + type: + $ref: "#/components/schemas/GlobalIncidentSettingsType" + required: + - type + type: object + GlobalIncidentSettingsDataResponse: + description: Data object in the global incident settings response. + properties: + attributes: + $ref: "#/components/schemas/GlobalIncidentSettingsAttributesResponse" + id: + description: The unique identifier for the global incident settings + example: f8b9a915-ed85-48b4-9071-ceba567a3db5 + type: string + type: + $ref: "#/components/schemas/GlobalIncidentSettingsType" + required: + - id + - type + - attributes + type: object + GlobalIncidentSettingsRequest: + description: Request payload for updating global incident settings. + properties: + data: + $ref: "#/components/schemas/GlobalIncidentSettingsDataRequest" + required: + - data + type: object + GlobalIncidentSettingsResponse: + description: Response payload containing global incident settings. + properties: + data: + $ref: "#/components/schemas/GlobalIncidentSettingsDataResponse" + required: + - data + type: object + GlobalIncidentSettingsType: + description: Global incident settings resource type + enum: + - incidents_global_settings + example: incidents_global_settings + type: string + x-enum-varnames: + - INCIDENTS_GLOBAL_SETTINGS + GlobalOrg: + description: Organization information for a global organization association. + properties: + name: + description: The name of the organization. + example: Example Org + type: string + public_id: + description: The public identifier of the organization. + example: abcdef12345 + nullable: true + type: string + subdomain: + description: The subdomain used to access the organization, if configured. + example: example + nullable: true + type: string + uuid: + description: The UUID of the organization. + example: "13d10a96-6ff2-49be-be7b-4f56ebb13335" + format: uuid + type: string + required: + - uuid + - name + type: object + GlobalOrgAttributes: + description: Attributes of an organization associated with the authenticated user. + properties: + org: + $ref: "#/components/schemas/GlobalOrg" + redirect_url: + description: The login URL used to switch into the organization, if available. + example: "https://app.datadoghq.com/account/login/password?dd_oid=13d10a96-6ff2-49be-be7b-4f56ebb13335&login_hint=user%40example.com" + nullable: true + type: string + source_region: + description: The source region of the organization. + example: us1.prod.dog + type: string + user: + $ref: "#/components/schemas/GlobalOrgUser" + required: + - user + - org + - source_region + type: object + GlobalOrgData: + description: An organization associated with the authenticated user. + properties: + attributes: + $ref: "#/components/schemas/GlobalOrgAttributes" + type: + $ref: "#/components/schemas/GlobalOrgType" + required: + - type + - attributes + type: object + GlobalOrgIdentifier: + description: A unique identifier for an organization including its site. + properties: + org_site: + description: The site of the organization. + example: "us1" + type: string + org_uuid: + description: The UUID of the organization. + example: "c3d4e5f6-a7b8-9012-cdef-012345678901" + format: uuid + type: string + required: + - org_uuid + - org_site + type: object + GlobalOrgType: + description: The resource type for global user organizations. + enum: [global_user_orgs] + example: global_user_orgs + type: string + x-enum-varnames: + - GLOBAL_USER_ORGS + GlobalOrgUser: + description: User information for a global organization association. + properties: + handle: + description: The handle of the user. + example: user@example.com + type: string + uuid: + description: The UUID of the user. + example: "cfab5cf9-5472-48ea-a79c-a64045f4f745" + format: uuid + type: string + required: + - uuid + - handle + type: object + GlobalOrgsLinks: + description: Pagination links. + properties: + next: + description: Link to the next page. + example: "https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100&page[cursor]=next-page" + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + example: "https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100" + type: string + type: object + GlobalOrgsMeta: + description: Response metadata object. + properties: + page: + $ref: "#/components/schemas/GlobalOrgsMetaPage" + type: object + GlobalOrgsMetaPage: + description: Paging attributes. + properties: + cursor: + description: The cursor used to get the current results, if any. + example: "" + type: string + limit: + description: Number of results returned. + example: 100 + format: int32 + maximum: 1000 + type: integer + next_cursor: + description: The cursor used to get the next results, if any. + example: next-page + nullable: true + type: string + prev_cursor: + description: The cursor used to get the previous results, if any. + nullable: true + type: string + type: + $ref: "#/components/schemas/GlobalOrgsMetaPageType" + type: object + GlobalOrgsMetaPageType: + description: Type of global orgs pagination. + enum: [cursor] + example: cursor + type: string + x-enum-varnames: + - CURSOR + GlobalOrgsResponse: + description: Response containing organizations across regions for the authenticated user. + properties: + data: + description: Organizations across regions for the authenticated user. + items: + $ref: "#/components/schemas/GlobalOrgData" + type: array + links: + $ref: "#/components/schemas/GlobalOrgsLinks" + meta: + $ref: "#/components/schemas/GlobalOrgsMeta" + required: + - data + type: object + GlobalVariableData: + description: Synthetics global variable data. Wrapper around the global variable object. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsGlobalVariable" + id: + description: Global variable identifier. + type: string + type: + $ref: "#/components/schemas/GlobalVariableType" + type: object + GlobalVariableJsonPatchRequest: + description: JSON Patch request for global variable. + properties: + data: + $ref: "#/components/schemas/GlobalVariableJsonPatchRequestData" + required: + - data + type: object + GlobalVariableJsonPatchRequestData: + description: Data object for a JSON Patch request on a Synthetic global variable. + properties: + attributes: + $ref: "#/components/schemas/GlobalVariableJsonPatchRequestDataAttributes" + type: + $ref: "#/components/schemas/GlobalVariableJsonPatchType" + type: object + GlobalVariableJsonPatchRequestDataAttributes: + description: Attributes for a JSON Patch request on a Synthetic global variable. + properties: + json_patch: + description: JSON Patch operations following RFC 6902. + items: + $ref: "#/components/schemas/JsonPatchOperation" + type: array + type: object + GlobalVariableJsonPatchType: + description: Global variable JSON Patch type. + enum: + - global_variables_json_patch + type: string + x-enum-varnames: + - GLOBAL_VARIABLES_JSON_PATCH + GlobalVariableResponse: + description: Global variable response. + properties: + data: + $ref: "#/components/schemas/GlobalVariableData" + type: object + GlobalVariableType: + description: Global variable type. + enum: + - global_variables + type: string + x-enum-varnames: + - GLOBAL_VARIABLES + GoogleChatAppNamedSpaceResponse: + description: Response with Google Chat space information. + properties: + data: + $ref: "#/components/schemas/GoogleChatAppNamedSpaceResponseData" + required: + - data + type: object + GoogleChatAppNamedSpaceResponseAttributes: + description: Google Chat space attributes. + properties: + display_name: + description: Google space display name. + example: "Fake Space Name" + maxLength: 255 + type: string + organization_binding_id: + description: Organization binding ID. + example: "2f18a894-adb5-4c53-8248-39fd3f5386a5" + maxLength: 255 + type: string + resource_name: + description: Google space resource name. + example: "spaces/AAAAAAAAA" + maxLength: 255 + type: string + space_uri: + description: Google space URI. + example: "https://chat.google.com/room/AAAAAAAAA" + maxLength: 255 + type: string + type: object + GoogleChatAppNamedSpaceResponseData: + description: Google Chat space data from a response. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatAppNamedSpaceResponseAttributes" + id: + description: The ID of the Google Chat space. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/GoogleChatAppNamedSpaceType" + type: object + GoogleChatAppNamedSpaceType: + default: google-chat-app-named-space + description: Google Chat space resource type. + enum: + - google-chat-app-named-space + example: google-chat-app-named-space + type: string + x-enum-varnames: + - GOOGLE_CHAT_APP_NAMED_SPACE_TYPE + GoogleChatCreateOrganizationHandleRequest: + description: Create organization handle request. + properties: + data: + $ref: "#/components/schemas/GoogleChatCreateOrganizationHandleRequestData" + type: + $ref: "#/components/schemas/GoogleChatOrganizationHandleType" + required: + - type + - data + type: object + GoogleChatCreateOrganizationHandleRequestAttributes: + description: Organization handle attributes for a create request. + properties: + name: + description: Organization handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + space_resource_name: + description: Google space resource name. + example: "spaces/AAAAAAAAA" + maxLength: 255 + type: string + required: + - name + - space_resource_name + type: object + GoogleChatCreateOrganizationHandleRequestData: + description: Organization handle data for a create request. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatCreateOrganizationHandleRequestAttributes" + required: + - attributes + type: object + GoogleChatDelegatedUserAttributes: + description: Google Chat delegated user attributes. + properties: + display_name: + description: The delegated user's display name. + example: "fake-display-name" + type: string + email: + description: The delegated user's email address. + example: "user@example.com" + type: string + features: + description: The list of features enabled for the delegated user. + items: + type: string + type: array + type: object + GoogleChatDelegatedUserData: + description: Google Chat delegated user data from a response. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatDelegatedUserAttributes" + id: + description: The ID of the delegated user. + example: "2b3c4d5e-6f78-9012-bcde-f23456789012" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/GoogleChatDelegatedUserType" + type: object + GoogleChatDelegatedUserResponse: + description: Response containing a Google Chat delegated user. + properties: + data: + $ref: "#/components/schemas/GoogleChatDelegatedUserData" + required: + - data + type: object + GoogleChatDelegatedUserType: + default: google-chat-delegated-user + description: Google Chat delegated user resource type. + enum: + - google-chat-delegated-user + example: google-chat-delegated-user + type: string + x-enum-varnames: + - GOOGLE_CHAT_DELEGATED_USER_TYPE + GoogleChatOrganizationAttributes: + description: Google Chat organization attributes. + properties: + domain_id: + description: The Google Chat organization domain ID. + example: "fake-domain-id" + maxLength: 255 + type: string + domain_name: + description: The Google Chat organization domain name. + example: "example.com" + maxLength: 255 + type: string + type: object + GoogleChatOrganizationData: + description: Google Chat organization data from a response. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatOrganizationAttributes" + id: + description: The ID of the Google Chat organization binding. + example: "5ce87709-a12f-4086-fcc8-147045b73a19" + maxLength: 100 + minLength: 1 + type: string + relationships: + $ref: "#/components/schemas/GoogleChatOrganizationRelationships" + type: + $ref: "#/components/schemas/GoogleChatOrganizationType" + type: object + GoogleChatOrganizationHandleResponse: + description: Organization handle for monitor notifications to a Google Chat space within a Google organization. + properties: + data: + $ref: "#/components/schemas/GoogleChatOrganizationHandleResponseData" + required: + - data + type: object + GoogleChatOrganizationHandleResponseAttributes: + description: Organization handle attributes. + properties: + name: + description: Organization handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + space_display_name: + description: Google space display name. + example: "Fake Space Name" + maxLength: 255 + type: string + space_resource_name: + description: Google space resource name. + example: "spaces/AAAAAAAAA" + maxLength: 255 + type: string + type: object + GoogleChatOrganizationHandleResponseData: + description: Organization handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatOrganizationHandleResponseAttributes" + id: + description: The ID of the organization handle. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/GoogleChatOrganizationHandleType" + type: object + GoogleChatOrganizationHandleType: + default: google-chat-organization-handle + description: Organization handle resource type. + enum: + - google-chat-organization-handle + example: google-chat-organization-handle + type: string + x-enum-varnames: + - GOOGLE_CHAT_ORGANIZATION_HANDLE_TYPE + GoogleChatOrganizationHandlesResponse: + description: List of organization handles for monitor notifications to Google Chat spaces within a Google organization. + properties: + data: + description: An array of organization handles. + example: [{"attributes": {"name": "general-handle", "space_display_name": "General", "space_resource_name": "spaces/AAAAAAAAA"}, "id": "596da4af-0563-4097-90ff-07230c3f9db3", "type": "google-chat-organization-handle"}, {"attributes": {"name": "general-handle-2", "space_display_name": "General2", "space_resource_name": "spaces/BBBBBBBBB"}, "id": "596da4af-0563-4097-90ff-07230c3f9db4", "type": "google-chat-organization-handle"}] + items: + $ref: "#/components/schemas/GoogleChatOrganizationHandleResponseData" + type: array + required: + - data + type: object + GoogleChatOrganizationRelationships: + description: Google Chat organization relationships. + properties: + delegated_user: + $ref: "#/components/schemas/GoogleChatOrganizationRelationshipsDelegatedUser" + type: object + GoogleChatOrganizationRelationshipsDelegatedUser: + description: The delegated user relationship. + properties: + data: + $ref: "#/components/schemas/GoogleChatOrganizationRelationshipsDelegatedUserData" + type: object + GoogleChatOrganizationRelationshipsDelegatedUserData: + description: Delegated user relationship data. + properties: + id: + description: The ID of the delegated user. + example: "2b3c4d5e-6f78-9012-bcde-f23456789012" + type: string + type: + $ref: "#/components/schemas/GoogleChatDelegatedUserType" + type: object + GoogleChatOrganizationResponse: + description: Response containing a Google Chat organization binding. + properties: + data: + $ref: "#/components/schemas/GoogleChatOrganizationData" + required: + - data + type: object + GoogleChatOrganizationType: + default: google-chat-organization + description: Google Chat organization resource type. + enum: + - google-chat-organization + example: google-chat-organization + type: string + x-enum-varnames: + - GOOGLE_CHAT_ORGANIZATION_TYPE + GoogleChatOrganizationsResponse: + description: Response containing a list of Google Chat organization bindings. + properties: + data: + description: An array of Google Chat organization bindings. + items: + $ref: "#/components/schemas/GoogleChatOrganizationData" + type: array + required: + - data + type: object + GoogleChatTargetAudienceAttributes: + description: Google Chat target audience attributes. + properties: + audience_id: + description: The audience ID. + example: "fake-audience-id-1" + maxLength: 255 + type: string + audience_name: + description: The audience name. + example: "fake audience name 1" + maxLength: 255 + type: string + required: + - audience_name + - audience_id + type: object + GoogleChatTargetAudienceCreateRequest: + description: Create target audience request. + properties: + data: + $ref: "#/components/schemas/GoogleChatTargetAudienceCreateRequestData" + required: + - data + type: object + GoogleChatTargetAudienceCreateRequestAttributes: + description: Attributes for creating a Google Chat target audience. + properties: + audience_id: + description: The audience ID. + example: "fake-audience-id-1" + maxLength: 255 + type: string + audience_name: + description: The audience name. + example: "fake audience name 1" + maxLength: 255 + type: string + required: + - audience_name + - audience_id + type: object + GoogleChatTargetAudienceCreateRequestData: + description: Data for a create target audience request. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatTargetAudienceCreateRequestAttributes" + type: + $ref: "#/components/schemas/GoogleChatTargetAudienceType" + required: + - type + - attributes + type: object + GoogleChatTargetAudienceData: + description: Google Chat target audience data from a response. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatTargetAudienceAttributes" + id: + description: The ID of the target audience. + example: "1f3e5ce6-944a-4075-97ae-105b5920b5cb" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/GoogleChatTargetAudienceType" + type: object + GoogleChatTargetAudienceResponse: + description: Response containing a Google Chat target audience. + properties: + data: + $ref: "#/components/schemas/GoogleChatTargetAudienceData" + required: + - data + type: object + GoogleChatTargetAudienceType: + default: google-chat-target-audience + description: Google Chat target audience resource type. + enum: + - google-chat-target-audience + example: google-chat-target-audience + type: string + x-enum-varnames: + - GOOGLE_CHAT_TARGET_AUDIENCE_TYPE + GoogleChatTargetAudienceUpdateRequest: + description: Update target audience request. + properties: + data: + $ref: "#/components/schemas/GoogleChatTargetAudienceUpdateRequestData" + required: + - data + type: object + GoogleChatTargetAudienceUpdateRequestAttributes: + description: Attributes for updating a Google Chat target audience. + properties: + audience_id: + description: The audience ID. + example: "fake-audience-id-1" + maxLength: 255 + type: string + audience_name: + description: The audience name. + example: "fake audience name 1" + maxLength: 255 + type: string + type: object + GoogleChatTargetAudienceUpdateRequestData: + description: Data for an update target audience request. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatTargetAudienceUpdateRequestAttributes" + type: + $ref: "#/components/schemas/GoogleChatTargetAudienceType" + required: + - type + - attributes + type: object + GoogleChatTargetAudiencesResponse: + description: Response containing a list of Google Chat target audiences. + properties: + data: + description: An array of Google Chat target audiences. + items: + $ref: "#/components/schemas/GoogleChatTargetAudienceData" + type: array + required: + - data + type: object + GoogleChatUpdateOrganizationHandleRequest: + description: Update organization handle request. + properties: + data: + $ref: "#/components/schemas/GoogleChatUpdateOrganizationHandleRequestData" + type: + $ref: "#/components/schemas/GoogleChatOrganizationHandleType" + required: + - type + - data + type: object + GoogleChatUpdateOrganizationHandleRequestAttributes: + description: Organization handle attributes for an update request. + properties: + name: + description: Organization handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + space_resource_name: + description: Google space resource name. + example: "spaces/AAAAAAAAA" + maxLength: 255 + type: string + type: object + GoogleChatUpdateOrganizationHandleRequestData: + description: Organization handle data for an update request. + properties: + attributes: + $ref: "#/components/schemas/GoogleChatUpdateOrganizationHandleRequestAttributes" + required: + - attributes + type: object + GoogleDocsPostmortemSettings: + description: Settings for a postmortem template stored in Google Docs. Required when `location` is `google_docs`. + properties: + account_id: + description: The ID of the Google Drive integration account. + example: "123456" + type: string + parent_folder_id: + description: The ID of the Google Drive folder where postmortems are created. + example: "789012" + type: string + required: + - account_id + - parent_folder_id + type: object + GoogleMeetConfigurationReference: + description: A reference to a Google Meet Configuration resource. + nullable: true + properties: + data: + $ref: "#/components/schemas/GoogleMeetConfigurationReferenceData" + required: + - data + type: object + GoogleMeetConfigurationReferenceData: + description: The Google Meet configuration relationship data object. + nullable: true + properties: + id: + description: The unique identifier of the Google Meet configuration. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + description: The type of the Google Meet configuration. + example: "google_meet_configurations" + type: string + required: + - id + - type + type: object + GovernanceConfigAttributes: + description: The attributes of a Governance Console configuration. + properties: + assignment_notifications_enabled: + description: Whether notifications are sent to users when detections are assigned to them. + example: true + type: boolean + enabled: + description: Whether the Governance Console is enabled for the organization. + example: true + type: boolean + usage_attribution_configured: + description: Whether usage attribution is configured for the organization. + example: true + type: boolean + xorg_insights_enabled: + description: |- + Whether the organization has opted in to sharing governance data with a managing org + for cross-org insights. + example: true + type: boolean + required: + - enabled + - assignment_notifications_enabled + - usage_attribution_configured + - xorg_insights_enabled + type: object + GovernanceConfigData: + description: A Governance Console configuration resource. + properties: + attributes: + $ref: "#/components/schemas/GovernanceConfigAttributes" + id: + description: |- + The unique identifier of the organization the Governance Console configuration applies + to. May be the nil UUID (`00000000-0000-0000-0000-000000000000`) when the configuration + is not tied to a specific organization record. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/GovernanceConsoleConfigResourceType" + required: + - id + - type + - attributes + type: object + GovernanceConfigResponse: + description: The Governance Console configuration for an organization. + properties: + data: + $ref: "#/components/schemas/GovernanceConfigData" + required: + - data + type: object + GovernanceConsoleConfigResourceType: + description: Governance console config resource type. + enum: + - governance_console_config + example: "governance_console_config" + type: string + x-enum-varnames: + - GOVERNANCE_CONSOLE_CONFIG + GovernanceControlAttributes: + description: The attributes of a governance control. + properties: + active_detections_count: + description: The number of active detections for the control. + example: 12 + format: int64 + type: integer + category: + description: The value driver the control is grouped under, such as `security` or `cost`. + example: "security" + type: string + created_at: + description: The time the control configuration was created. + example: "2024-01-15T09:30:00Z" + format: date-time + type: string + created_by: + description: The UUID of the user who created the control configuration. + example: "11111111-2222-3333-4444-555555555555" + type: string + description: + description: A human-readable description of what the control detects. + example: "Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials." + type: string + detection_parameters: + $ref: "#/components/schemas/GovernanceControlParametersMap" + nullable: true + insights: + description: The insight slugs associated with the control. + example: [] + items: + description: An insight slug associated with the control. + type: string + type: array + last_detection_at: + description: The time of the most recent detection for the control. `null` when there are no detections. + example: "2024-03-01T12:00:00Z" + format: date-time + nullable: true + type: string + mitigated_detections_count: + description: The number of mitigated detections for the control. + example: 3 + format: int64 + type: integer + mitigation_parameters: + $ref: "#/components/schemas/GovernanceControlParametersMap" + nullable: true + mitigation_type: + description: The configured mitigation type for the control. Empty when not configured. + example: "revoke_api_key" + type: string + mitigations: + $ref: "#/components/schemas/GovernanceControlMitigationDefinitionArray" + name: + description: Human-readable name of the control. + example: "Unused API Keys" + type: string + priority: + description: The priority of the control, such as `High`. + example: "High" + type: string + product: + description: The product the control belongs to. + example: "api_keys" + type: string + resource_type: + description: The type of resource the control evaluates. + example: "api_key" + type: string + resource_type_display_name: + description: The human-readable name of the resource type. + example: "API Key" + type: string + supported_detection_parameters: + $ref: "#/components/schemas/GovernanceControlParameterDefinitionArray" + type: + description: The control type, such as `Proactive` or `Detection`. + example: "Proactive" + type: string + required: + - name + - description + - supported_detection_parameters + - resource_type + - resource_type_display_name + - product + - category + - insights + - mitigations + - type + - priority + - detection_parameters + - mitigation_type + - mitigation_parameters + - created_at + - created_by + - active_detections_count + - mitigated_detections_count + - last_detection_at + type: object + GovernanceControlData: + description: A governance control resource. + properties: + attributes: + $ref: "#/components/schemas/GovernanceControlAttributes" + id: + description: The detection type that uniquely identifies the control. + example: "unused_api_keys" + type: string + type: + $ref: "#/components/schemas/GovernanceControlResourceType" + required: + - id + - type + - attributes + type: object + GovernanceControlDetectionAssignmentSource: + description: How the detection's current assignment was determined. Possible values are `auto_resolved`, `manual`, `reassigned`, and `cleared`. + enum: + - auto_resolved + - manual + - reassigned + - cleared + example: "manual" + type: string + x-enum-varnames: + - AUTO_RESOLVED + - MANUAL + - REASSIGNED + - CLEARED + GovernanceControlDetectionAttributes: + description: The attributes of a governance control detection. + properties: + assigned_team: + description: The identifier of the team the detection is assigned to, if any. + example: "platform-security" + type: string + assigned_to: + description: The identifier of the user the detection is assigned to, if any. + example: "11111111-2222-3333-4444-555555555555" + type: string + assignment_source: + $ref: "#/components/schemas/GovernanceControlDetectionAssignmentSource" + control_id: + deprecated: true + description: |- + DEPRECATED: mirrors `detection_type` for backward compatibility; use `detection_type` + instead. + example: "unused_api_keys" + type: string + created_at: + description: The date and time when the detection was created. + example: "2024-03-01T12:00:00Z" + format: date-time + type: string + detection_type: + description: The type of detection, which determines what condition was detected. + example: "unused_api_keys" + type: string + display_name: + description: The human-readable name of the detected resource. + example: "CI Deploy Key" + type: string + exception_at: + description: The date and time when the detection was marked as an exception, if applicable. + example: "2024-03-05T09:00:00Z" + format: date-time + type: string + exception_by: + description: The identifier of the user who marked the detection as an exception, if applicable. + example: "11111111-2222-3333-4444-555555555555" + type: string + metadata: + description: Free-form metadata associated with the detection. + example: + region: "us-east-1" + mitigate_after: + description: The date and time after which the detection is scheduled to be mitigated, if applicable. + example: "2024-03-15T00:00:00Z" + format: date-time + type: string + mitigated_at: + description: The date and time when the detection was mitigated, if applicable. + example: "2024-03-10T15:30:00Z" + format: date-time + type: string + priority: + description: The priority of the detection, if set. + example: 1 + format: int64 + type: integer + resource_id: + description: The identifier of the resource the detection applies to. + example: "api-key-12345" + type: string + resource_type: + description: The type of resource the detection applies to, for example `api_key` or `dashboard`. + example: "api_key" + type: string + state: + $ref: "#/components/schemas/GovernanceControlDetectionState" + required: + - state + - control_id + - resource_id + - detection_type + - resource_type + - display_name + - created_at + - assignment_source + - priority + type: object + GovernanceControlDetectionData: + description: A governance control detection resource. + properties: + attributes: + $ref: "#/components/schemas/GovernanceControlDetectionAttributes" + id: + description: The unique identifier of the detection. + example: "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + type: string + type: + $ref: "#/components/schemas/GovernanceControlDetectionResourceType" + required: + - id + - type + - attributes + type: object + GovernanceControlDetectionResourceType: + description: Governance control detection resource type. + enum: + - governance_control_detection + example: "governance_control_detection" + type: string + x-enum-varnames: + - GOVERNANCE_CONTROL_DETECTION + GovernanceControlDetectionResponse: + description: A single governance control detection. + properties: + data: + $ref: "#/components/schemas/GovernanceControlDetectionData" + required: + - data + type: object + GovernanceControlDetectionState: + description: The current state of the detection. Possible values are `active`, `exception`, `mitigated`, `inactive`, `obsolete`, `resolved_externally`, and `mitigation_in_progress`. + enum: + - active + - exception + - mitigated + - inactive + - obsolete + - resolved_externally + - mitigation_in_progress + example: "active" + type: string + x-enum-varnames: + - ACTIVE + - EXCEPTION + - MITIGATED + - INACTIVE + - OBSOLETE + - RESOLVED_EXTERNALLY + - MITIGATION_IN_PROGRESS + GovernanceControlDetectionUpdateAttributes: + description: The attributes of a governance control detection that can be updated. Only the attributes present in the request are modified. + properties: + assigned_team: + description: The handle of the team the detection is assigned to. Set to an empty string to clear the assignment. + example: "platform-security" + type: string + assigned_to: + description: The UUID of the user the detection is assigned to. Set to an empty string to clear the assignment. + example: "11111111-2222-3333-4444-555555555555" + type: string + mitigate_after: + description: The timestamp after which the detection becomes eligible for mitigation. Used to defer mitigation to a later time. + example: "2024-03-15T00:00:00Z" + format: date-time + type: string + state: + $ref: "#/components/schemas/GovernanceControlDetectionUpdateState" + type: object + GovernanceControlDetectionUpdateData: + description: The data of a governance control detection update request. + properties: + attributes: + $ref: "#/components/schemas/GovernanceControlDetectionUpdateAttributes" + type: + $ref: "#/components/schemas/GovernanceControlDetectionResourceType" + required: + - type + type: object + GovernanceControlDetectionUpdateRequest: + description: A request to update a governance control detection. + properties: + data: + $ref: "#/components/schemas/GovernanceControlDetectionUpdateData" + required: + - data + type: object + GovernanceControlDetectionUpdateState: + description: The new state to set for the detection. Set to `exception` to acknowledge the detection and exclude it from active counts, or `active` to reopen it. + enum: + - exception + - active + example: "exception" + type: string + x-enum-varnames: + - EXCEPTION + - ACTIVE + GovernanceControlDetectionsDataArray: + description: An array of governance control detection resources. + items: + $ref: "#/components/schemas/GovernanceControlDetectionData" + type: array + GovernanceControlDetectionsResponse: + description: A list of governance control detections. + properties: + data: + $ref: "#/components/schemas/GovernanceControlDetectionsDataArray" + required: + - data + type: object + GovernanceControlMitigationDefinition: + description: The definition of a mitigation available for a control. + properties: + description: + description: A human-readable description of the mitigation. + example: "Automatically identifies and revokes inactive API keys to improve security and reduce potential attack surface." + type: string + execution_modes: + description: The execution modes the mitigation supports, such as `manual` or `automatic`. + example: + - "manual" + - "automatic" + items: + description: An execution mode the mitigation supports. + type: string + type: array + id: + description: The unique identifier of the mitigation. + example: "revoke_api_key" + type: string + permissions: + description: The permissions required to apply the mitigation. + example: + - "api_keys_write" + - "api_keys_delete" + items: + description: A permission required to apply the mitigation. + type: string + type: array + supported_parameters: + $ref: "#/components/schemas/GovernanceControlParameterDefinitionArray" + title: + description: A short, human-readable name for the mitigation. + example: "Revoke Unused API Keys" + type: string + required: + - id + - title + - description + - supported_parameters + - permissions + - execution_modes + type: object + GovernanceControlMitigationDefinitionArray: + description: The mitigations available for a control. + items: + $ref: "#/components/schemas/GovernanceControlMitigationDefinition" + type: array + GovernanceControlParameterDefinition: + description: The definition of a configurable parameter on a control or mitigation. + properties: + default_value: + description: The default value of the parameter. The JSON type depends on the parameter's `type`. + example: 30 + description: + description: A human-readable description of the parameter. + example: "Number of days of inactivity before an API key is considered unused." + type: string + display_name: + description: The human-readable name of the parameter. + example: "Unused API Key Threshold" + type: string + name: + description: The machine-readable name of the parameter. + example: "api_key_threshold" + type: string + required: + description: Whether the parameter must be provided. + example: false + type: boolean + supported_values: + $ref: "#/components/schemas/GovernanceControlSupportedValueArray" + type: + description: The type of the parameter, such as `integer`, `string`, `boolean`, `enum`, or `pattern_list`. + example: "integer" + type: string + required: + - name + - display_name + - description + - type + - required + - supported_values + - default_value + type: object + GovernanceControlParameterDefinitionArray: + description: An array of parameter definitions. + items: + $ref: "#/components/schemas/GovernanceControlParameterDefinition" + type: array + GovernanceControlParametersMap: + additionalProperties: {} + description: A free-form map of parameter names to their configured values. + type: object + GovernanceControlResourceType: + description: JSON:API resource type for a governance control. + enum: + - governance_control + example: "governance_control" + type: string + x-enum-varnames: + - GOVERNANCE_CONTROL + GovernanceControlResponse: + description: A single governance control. + properties: + data: + $ref: "#/components/schemas/GovernanceControlData" + required: + - data + type: object + GovernanceControlSupportedValue: + description: A supported value for an enumerated parameter. + properties: + label: + description: The human-readable label for the value. + example: "30 days" + type: string + value: + description: The machine-readable value. + example: "thirty" + type: string + required: + - value + - label + type: object + GovernanceControlSupportedValueArray: + description: The supported values for an enumerated parameter. `null` when the parameter is not an enumerated type. + items: + $ref: "#/components/schemas/GovernanceControlSupportedValue" + nullable: true + type: array + GovernanceControlUpdateAttributes: + description: The attributes of a governance control that can be updated. Only the attributes present in the request are modified. + properties: + detection_parameters: + $ref: "#/components/schemas/GovernanceControlParametersMap" + nullable: true + mitigation_parameters: + $ref: "#/components/schemas/GovernanceControlParametersMap" + nullable: true + mitigation_type: + description: The mitigation type to configure for the control. + example: "revoke_api_key" + type: string + type: object + GovernanceControlUpdateData: + description: The data of a governance control update request. + properties: + attributes: + $ref: "#/components/schemas/GovernanceControlUpdateAttributes" + type: + $ref: "#/components/schemas/GovernanceControlResourceType" + required: + - type + type: object + GovernanceControlUpdateRequest: + description: A request to update a governance control. + properties: + data: + $ref: "#/components/schemas/GovernanceControlUpdateData" + required: + - data + type: object + GovernanceControlsDataArray: + description: An array of governance control resources. + items: + $ref: "#/components/schemas/GovernanceControlData" + type: array + GovernanceControlsResponse: + description: A list of governance controls. + properties: + data: + $ref: "#/components/schemas/GovernanceControlsDataArray" + required: + - data + type: object + GovernanceInsightAttributes: + description: |- + The attributes of a governance insight. Exactly one of `metric_query`, `event_query`, + `usage_query`, `audit_query`, or `percentage_query` is populated, depending on the data + source the insight is computed from; the rest are `null`. + properties: + audit_query: + $ref: "#/components/schemas/GovernanceInsightAuditQuery" + nullable: true + description: + description: A human-readable description of what the insight measures. + example: "Number of users who have used the Dashboard in the last 30 days" + type: string + display_name: + description: Human-readable name of the insight. + example: "Active Dashboards" + type: string + event_query: + $ref: "#/components/schemas/GovernanceInsightEventQuery" + nullable: true + metric_query: + $ref: "#/components/schemas/GovernanceInsightMetricQuery" + nullable: true + percentage_query: + $ref: "#/components/schemas/GovernanceInsightPercentageQuery" + nullable: true + product: + description: The product the insight belongs to. + example: "Usage" + type: string + query_config: + $ref: "#/components/schemas/GovernanceInsightQueryConfig" + nullable: true + sub_product: + description: The sub-product the insight belongs to, if any. + example: "Indexes" + type: string + time_range: + description: The time range the insight value is computed over, if applicable. + example: "month" + type: string + unit_name: + description: The unit that the insight's value is measured in. + example: "active dashboards" + type: string + usage_query: + $ref: "#/components/schemas/GovernanceInsightUsageQuery" + nullable: true + required: + - display_name + - product + - sub_product + - unit_name + - description + - time_range + type: object + GovernanceInsightAuditCompute: + description: The aggregation applied to an audit log query. + properties: + aggregation: + description: The aggregation function to apply. + example: "cardinality" + type: string + interval: + description: The aggregation time window, in milliseconds. + example: 86400000 + format: int64 + type: integer + metric: + description: The metric or attribute to aggregate. + example: "@usr.id" + type: string + rollup: + description: An optional secondary aggregation applied to the audit query result. + example: "" + type: string + required: + - aggregation + - metric + - interval + type: object + GovernanceInsightAuditQuery: + description: An audit log query used to compute an insight value. + properties: + compute: + $ref: "#/components/schemas/GovernanceInsightAuditCompute" + indexes: + description: The audit log indexes the query runs against. + example: + - "main" + items: + description: An audit log index name. + type: string + type: array + query: + description: The audit log search query string. + example: "@evt.name:Dashboard" + type: string + source: + description: The data source the query runs against. + example: "audit" + type: string + required: + - source + - query + - indexes + - compute + type: object + GovernanceInsightData: + description: A governance insight resource. + properties: + attributes: + $ref: "#/components/schemas/GovernanceInsightAttributes" + id: + description: The unique identifier of the insight. + example: "498ee21f-8037-48b8-a961-a488692902f4" + type: string + type: + $ref: "#/components/schemas/GovernanceInsightResourceType" + required: + - id + - type + - attributes + type: object + GovernanceInsightDirectionality: + description: Whether an increase in the insight's value is good, bad, or neutral. + enum: + - neutral + - increase_better + - decrease_better + example: "neutral" + type: string + x-enum-varnames: + - NEUTRAL + - INCREASE_BETTER + - DECREASE_BETTER + GovernanceInsightEventCompute: + description: The aggregation applied to an event query. + properties: + aggregation: + description: The aggregation function to apply. + example: "count" + type: string + interval: + description: The aggregation time window, in milliseconds. + example: 86400000 + format: int64 + type: integer + required: + - aggregation + - interval + type: object + GovernanceInsightEventQuery: + description: An event query used to compute an insight value. + properties: + compute: + $ref: "#/components/schemas/GovernanceInsightEventCompute" + nullable: true + indexes: + description: The event indexes the query runs against. + example: + - "main" + items: + description: An event index name. + type: string + type: array + query: + description: The event search query string. + example: "source:cloudtrail" + type: string + required: + - query + - indexes + type: object + GovernanceInsightMetricQuery: + description: A metric query used to compute an insight value. + properties: + query: + description: The query string. + example: "avg:system.cpu.user{*}" + type: string + reducer: + description: How the query result series is reduced to a single value. + example: "avg" + type: string + source: + description: The data source the query runs against. + example: "metrics" + type: string + required: + - source + - query + - reducer + type: object + GovernanceInsightPercentageQuery: + description: A percentage query that computes an insight value as a ratio of two metric queries. + properties: + denominator_query: + $ref: "#/components/schemas/GovernanceInsightMetricQuery" + numerator_query: + $ref: "#/components/schemas/GovernanceInsightMetricQuery" + required: + - numerator_query + - denominator_query + type: object + GovernanceInsightQueryConfig: + description: Query execution context for running insight queries directly. + properties: + chart_type: + description: The chart type used to render the insight. + example: "line" + type: string + comparison_shift: + description: The window used for the previous value comparison; for example, `week` or `month`. + example: "month" + type: string + default_value: + description: The default value to display when no data is available. + example: 0 + format: int64 + type: integer + directionality: + $ref: "#/components/schemas/GovernanceInsightDirectionality" + effective_time_window_days: + description: The number of days the insight value is computed over. + example: 30 + format: int64 + type: integer + required: + - effective_time_window_days + - comparison_shift + type: object + GovernanceInsightResourceType: + description: JSON:API resource type for a governance insight. + enum: + - insight + example: "insight" + type: string + x-enum-varnames: + - INSIGHT + GovernanceInsightUsageQuery: + description: A usage query used to compute an insight value. + properties: + query: + description: The usage query string. + example: "logs_indexed_events" + type: string + reducer: + description: How the query result series is reduced to a single value. + example: "sum" + type: string + required: + - query + - reducer + type: object + GovernanceInsightsDataArray: + description: An array of governance insight resources. + items: + $ref: "#/components/schemas/GovernanceInsightData" + type: array + GovernanceInsightsResponse: + description: A list of governance insights. + properties: + data: + $ref: "#/components/schemas/GovernanceInsightsDataArray" + required: + - data + type: object + GovernanceMitigationRequest: + description: A request to mitigate a set of governance detections. + properties: + data: + $ref: "#/components/schemas/GovernanceMitigationRequestData" + required: + - data + type: object + GovernanceMitigationRequestAttributes: + description: The attributes of a governance mitigation request. + properties: + detection_ids: + description: The identifiers of the detections to mitigate in this request. + example: + - "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + items: + description: The identifier of a detection to mitigate in this request. + type: string + type: array + detection_type: + description: The detection type whose detections should be mitigated. + example: "unused_api_keys" + type: string + mitigation_parameters: + $ref: "#/components/schemas/GovernanceControlParametersMap" + nullable: true + mitigation_type: + description: The mitigation to apply to the selected detections. Defaults to the control's configured mitigation when omitted. + example: "revoke_api_key" + type: string + required: + - detection_type + - detection_ids + type: object + GovernanceMitigationRequestData: + description: The data of a governance mitigation request. + properties: + attributes: + $ref: "#/components/schemas/GovernanceMitigationRequestAttributes" + type: + $ref: "#/components/schemas/GovernanceControlDetectionResourceType" + required: + - type + type: object + GovernanceNotificationSettingsAttributes: + description: The attributes of the organization-wide governance notification settings. + properties: + assignment_notifications_enabled: + description: Whether notifications are sent to users when detections are assigned to them. + example: true + type: boolean + required: + - assignment_notifications_enabled + type: object + GovernanceNotificationSettingsData: + description: A governance notification settings resource. + properties: + attributes: + $ref: "#/components/schemas/GovernanceNotificationSettingsAttributes" + id: + description: The unique identifier of the organization the notification settings apply to. + example: "11111111-2222-3333-4444-555555555555" + type: string + type: + $ref: "#/components/schemas/GovernanceNotificationSettingsResourceType" + required: + - id + - type + - attributes + type: object + GovernanceNotificationSettingsResourceType: + description: Governance notification settings resource type. + enum: + - governance_notification_settings + example: "governance_notification_settings" + type: string + x-enum-varnames: + - GOVERNANCE_NOTIFICATION_SETTINGS + GovernanceNotificationSettingsResponse: + description: The organization-wide governance notification settings. + properties: + data: + $ref: "#/components/schemas/GovernanceNotificationSettingsData" + required: + - data + type: object + GovernanceNotificationSettingsUpdateAttributes: + description: The attributes of the governance notification settings that can be updated. Only the attributes present in the request are modified. + properties: + assignment_notifications_enabled: + description: Whether notifications are sent to users when detections are assigned to them. + example: true + type: boolean + type: object + GovernanceNotificationSettingsUpdateData: + description: The data of a governance notification settings update request. + properties: + attributes: + $ref: "#/components/schemas/GovernanceNotificationSettingsUpdateAttributes" + type: + $ref: "#/components/schemas/GovernanceNotificationSettingsResourceType" + required: + - type + type: object + GovernanceNotificationSettingsUpdateRequest: + description: A request to update the organization-wide governance notification settings. + properties: + data: + $ref: "#/components/schemas/GovernanceNotificationSettingsUpdateData" + required: + - data + type: object + GreyNoiseAPIKey: + description: The definition of the `GreyNoiseAPIKey` object. + properties: + api_key: + description: The `GreyNoiseAPIKey` `api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/GreyNoiseAPIKeyType" + required: + - type + - api_key + type: object + GreyNoiseAPIKeyType: + description: The definition of the `GreyNoiseAPIKey` object. + enum: + - GreyNoiseAPIKey + example: GreyNoiseAPIKey + type: string + x-enum-varnames: + - GREYNOISEAPIKEY + GreyNoiseAPIKeyUpdate: + description: The definition of the `GreyNoiseAPIKey` object. + properties: + api_key: + description: The `GreyNoiseAPIKeyUpdate` `api_key`. + type: string + type: + $ref: "#/components/schemas/GreyNoiseAPIKeyType" + required: + - type + type: object + GreyNoiseCredentials: + description: The definition of the `GreyNoiseCredentials` object. + oneOf: + - $ref: "#/components/schemas/GreyNoiseAPIKey" + GreyNoiseCredentialsUpdate: + description: The definition of the `GreyNoiseCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/GreyNoiseAPIKeyUpdate" + GreyNoiseIntegration: + description: The definition of the `GreyNoiseIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/GreyNoiseCredentials" + type: + $ref: "#/components/schemas/GreyNoiseIntegrationType" + required: + - type + - credentials + type: object + GreyNoiseIntegrationType: + description: The definition of the `GreyNoiseIntegrationType` object. + enum: + - GreyNoise + example: GreyNoise + type: string + x-enum-varnames: + - GREYNOISE + GreyNoiseIntegrationUpdate: + description: The definition of the `GreyNoiseIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/GreyNoiseCredentialsUpdate" + type: + $ref: "#/components/schemas/GreyNoiseIntegrationType" + required: + - type + type: object + GroupScalarColumn: + description: A column containing the tag keys and values in a group. + properties: + name: + description: The name of the tag key or group. + example: env + type: string + type: + $ref: "#/components/schemas/ScalarColumnTypeGroup" + values: + description: The array of tag values for each group found for the results of the formulas or queries. + example: [["production"], ["staging"]] + items: + description: An individual tag value for a given group column. + items: + description: One tag value within a values array. + example: production + type: string + type: array + type: array + type: object + GroupTags: + description: List of tags that apply to a single response value. + items: + description: A single tag that applies to a single response value. + example: "env:production" + type: string + type: array + GuardrailMetric: + description: Guardrail metric details. + properties: + metric_id: + description: The metric ID to monitor. + example: "metric-error-rate" + type: string + trigger_action: + $ref: "#/components/schemas/GuardrailTriggerAction" + triggered_by: + description: The signal or system that triggered the action. + example: "guardrail_monitor" + nullable: true + type: string + required: + - metric_id + - trigger_action + type: object + GuardrailMetricRequest: + description: Guardrail metric request payload. + properties: + metric_id: + description: The metric ID to monitor. + example: "metric-error-rate" + type: string + trigger_action: + $ref: "#/components/schemas/GuardrailTriggerAction" + required: + - metric_id + - trigger_action + type: object + GuardrailTriggerAction: + description: Action to perform when a guardrail threshold is triggered. + enum: + - PAUSE + - ABORT + example: "PAUSE" + type: string + x-enum-varnames: + - PAUSE + - ABORT + HTTPBody: + description: The definition of `HTTPBody` object. + properties: + content: + description: Serialized body content + example: '{"some-json": "with-value"}' + type: string + content_type: + description: Content type of the body + example: application/json + type: string + type: object + HTTPCDGatesBadRequestResponse: + description: Bad request. + properties: + errors: + description: Structured errors. + items: + $ref: "#/components/schemas/HTTPCIAppError" + type: array + type: object + HTTPCDGatesNotFoundResponse: + description: Deployment gate not found. + properties: + errors: + description: Structured errors. + items: + $ref: "#/components/schemas/HTTPCIAppError" + type: array + type: object + HTTPCDRulesNotFoundResponse: + description: Deployment rule not found. + properties: + errors: + description: Structured errors. + items: + $ref: "#/components/schemas/HTTPCIAppError" + type: array + type: object + HTTPCIAppError: + description: List of errors. + properties: + detail: + description: Error message. + example: "Malformed payload" + type: string + status: + description: Error code. + example: "400" + type: string + title: + description: Error title. + example: "Bad Request" + type: string + type: object + HTTPCIAppErrors: + description: Errors occurred. + properties: + errors: + description: Structured errors. + items: + $ref: "#/components/schemas/HTTPCIAppError" + type: array + type: object + HTTPCredentials: + description: The definition of `HTTPCredentials` object. + oneOf: + - $ref: "#/components/schemas/HTTPTokenAuth" + HTTPCredentialsUpdate: + description: The definition of `HTTPCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/HTTPTokenAuthUpdate" + HTTPHeader: + description: The definition of `HTTPHeader` object. + properties: + name: + description: The `HTTPHeader` `name`. + example: MyHttpHeader + pattern: ^[A-Za-z][A-Za-z\\d\\-\\_]*$ + type: string + value: + description: The `HTTPHeader` `value`. + example: Some header value + type: string + required: + - name + - value + type: object + HTTPHeaderUpdate: + description: The definition of `HTTPHeaderUpdate` object. + properties: + deleted: + description: Should the header be deleted. + type: boolean + name: + description: The `HTTPHeaderUpdate` `name`. + example: MyHttpHeader + pattern: ^[A-Za-z][A-Za-z\\d\\-\\_]*$ + type: string + value: + description: The `HTTPHeaderUpdate` `value`. + example: Updated Header Value + type: string + required: + - name + type: object + HTTPIntegration: + description: The definition of `HTTPIntegration` object. + properties: + base_url: + description: Base HTTP url for the integration + example: http://datadoghq.com + type: string + credentials: + $ref: "#/components/schemas/HTTPCredentials" + type: + $ref: "#/components/schemas/HTTPIntegrationType" + required: + - type + - base_url + - credentials + type: object + HTTPIntegrationType: + description: The definition of `HTTPIntegrationType` object. + enum: + - HTTP + example: HTTP + type: string + x-enum-varnames: + - HTTP + HTTPIntegrationUpdate: + description: The definition of `HTTPIntegrationUpdate` object. + properties: + base_url: + description: Base HTTP url for the integration + example: http://datadoghq.com + type: string + credentials: + $ref: "#/components/schemas/HTTPCredentialsUpdate" + type: + $ref: "#/components/schemas/HTTPIntegrationType" + required: + - type + type: object + HTTPLog: + description: Structured log message. + items: + $ref: "#/components/schemas/HTTPLogItem" + type: array + HTTPLogError: + description: List of errors. + properties: + detail: + description: Error message. + example: "Malformed payload" + type: string + status: + description: Error code. + example: "400" + type: string + title: + description: Error title. + example: "Bad Request" + type: string + type: object + HTTPLogErrors: + description: Invalid query performed. + properties: + errors: + description: Structured errors. + items: + $ref: "#/components/schemas/HTTPLogError" + type: array + type: object + HTTPLogItem: + additionalProperties: + description: Additional log attributes. + description: Logs that are sent over HTTP. + properties: + ddsource: + description: |- + The integration name associated with your log: the technology from which the log originated. + When it matches an integration name, Datadog automatically installs the corresponding parsers and facets. + See [reserved attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). + example: nginx + type: string + ddtags: + description: Tags associated with your logs. + example: env:staging,version:5.1 + type: string + hostname: + description: The name of the originating host of the log. + example: i-012345678 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same value when you use both products. + See [reserved attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). + example: payment + type: string + required: + - message + type: object + HTTPToken: + description: The definition of `HTTPToken` object. + properties: + name: + description: The `HTTPToken` `name`. + example: MyToken + pattern: ^[A-Za-z][A-Za-z\\d]*$ + type: string + type: + $ref: "#/components/schemas/TokenType" + value: + description: The `HTTPToken` `value`. + example: Some Token Value + type: string + required: + - name + - value + - type + type: object + HTTPTokenAuth: + description: The definition of `HTTPTokenAuth` object. + properties: + body: + $ref: "#/components/schemas/HTTPBody" + headers: + description: The `HTTPTokenAuth` `headers`. + items: + $ref: "#/components/schemas/HTTPHeader" + type: array + tokens: + description: The `HTTPTokenAuth` `tokens`. + items: + $ref: "#/components/schemas/HTTPToken" + type: array + type: + $ref: "#/components/schemas/HTTPTokenAuthType" + url_parameters: + description: The `HTTPTokenAuth` `url_parameters`. + items: + $ref: "#/components/schemas/UrlParam" + type: array + required: + - type + type: object + HTTPTokenAuthType: + description: The definition of `HTTPTokenAuthType` object. + enum: + - HTTPTokenAuth + example: HTTPTokenAuth + type: string + x-enum-varnames: + - HTTPTOKENAUTH + HTTPTokenAuthUpdate: + description: The definition of `HTTPTokenAuthUpdate` object. + properties: + body: + $ref: "#/components/schemas/HTTPBody" + headers: + description: The `HTTPTokenAuthUpdate` `headers`. + items: + $ref: "#/components/schemas/HTTPHeaderUpdate" + type: array + tokens: + description: The `HTTPTokenAuthUpdate` `tokens`. + items: + $ref: "#/components/schemas/HTTPTokenUpdate" + type: array + type: + $ref: "#/components/schemas/HTTPTokenAuthType" + url_parameters: + description: The `HTTPTokenAuthUpdate` `url_parameters`. + items: + $ref: "#/components/schemas/UrlParamUpdate" + type: array + required: + - type + type: object + HTTPTokenUpdate: + description: The definition of `HTTPTokenUpdate` object. + properties: + deleted: + description: Should the header be deleted. + type: boolean + name: + description: The `HTTPToken` `name`. + example: MyToken + pattern: ^[A-Za-z][A-Za-z\\d]*$ + type: string + type: + $ref: "#/components/schemas/TokenType" + value: + description: The `HTTPToken` `value`. + example: Some Token Value + type: string + required: + - name + - type + - value + type: object + HamrOrgConnectionAttributesRequest: + description: Attributes for a HAMR organization connection request. + properties: + hamr_status: + $ref: "#/components/schemas/HamrOrgConnectionStatus" + is_primary: + description: |- + Indicates whether this organization is the primary organization in the HAMR relationship. + If true, this is the primary organization. If false, this is the secondary/backup organization. + example: true + type: boolean + modified_by: + description: Username or identifier of the user who last modified this HAMR connection. + example: "admin@example.com" + type: string + target_org_datacenter: + description: Datacenter location of the target organization (e.g., us1, eu1, us5). + example: "us1" + type: string + target_org_name: + description: Name of the target organization in the HAMR relationship. + example: "Production Backup Org" + type: string + target_org_uuid: + description: UUID of the target organization in the HAMR relationship. + example: "660f9511-f3ac-52e5-b827-557766551111" + type: string + required: + - target_org_uuid + - target_org_name + - target_org_datacenter + - hamr_status + - is_primary + - modified_by + type: object + HamrOrgConnectionAttributesResponse: + description: Attributes of a HAMR organization connection response. + properties: + hamr_status: + $ref: "#/components/schemas/HamrOrgConnectionStatus" + is_primary: + description: |- + Indicates whether this organization is the primary organization in the HAMR relationship. + If true, this is the primary organization. If false, this is the secondary/backup organization. + example: true + type: boolean + modified_at: + description: Timestamp of when this HAMR connection was last modified (RFC3339 format). + example: "2026-01-13T17:26:48.830968Z" + type: string + modified_by: + description: Username or identifier of the user who last modified this HAMR connection. + example: "admin@example.com" + type: string + target_org_datacenter: + description: Datacenter location of the target organization (e.g., us1, eu1, us5). + example: "us1" + type: string + target_org_name: + description: Name of the target organization in the HAMR relationship. + example: "Production Backup Org" + type: string + target_org_uuid: + description: UUID of the target organization in the HAMR relationship. + example: "660f9511-f3ac-52e5-b827-557766551111" + type: string + required: + - target_org_uuid + - target_org_name + - target_org_datacenter + - hamr_status + - is_primary + - modified_at + - modified_by + type: object + HamrOrgConnectionDataRequest: + description: Data object for a HAMR organization connection request. + properties: + attributes: + $ref: "#/components/schemas/HamrOrgConnectionAttributesRequest" + id: + description: The organization UUID for this HAMR connection. Must match the authenticated organization's UUID. + example: "550e8400-e29b-41d4-a716-446655440000" + type: string + type: + $ref: "#/components/schemas/HamrOrgConnectionType" + required: + - id + - type + - attributes + type: object + HamrOrgConnectionDataResponse: + description: Data object for a HAMR organization connection response. + properties: + attributes: + $ref: "#/components/schemas/HamrOrgConnectionAttributesResponse" + id: + description: The organization UUID for this HAMR connection. + example: "550e8400-e29b-41d4-a716-446655440000" + type: string + type: + $ref: "#/components/schemas/HamrOrgConnectionType" + required: + - id + - type + - attributes + type: object + HamrOrgConnectionRequest: + description: Request payload for creating or updating a HAMR organization connection. + properties: + data: + $ref: "#/components/schemas/HamrOrgConnectionDataRequest" + required: + - data + type: object + HamrOrgConnectionResponse: + description: Response payload for a HAMR organization connection. + properties: + data: + $ref: "#/components/schemas/HamrOrgConnectionDataResponse" + required: + - data + type: object + HamrOrgConnectionStatus: + description: |- + Status of the HAMR connection: + - 0: UNSPECIFIED - Connection status not specified + - 1: ONBOARDING - Initial setup of HAMR connection + - 2: PASSIVE - Secondary organization in passive standby mode + - 3: FAILOVER - Liminal status between PASSIVE and ACTIVE + - 4: ACTIVE - Organization is an active failover + - 5: RECOVERY - Recovery operation in progress + enum: + - 0 + - 1 + - 2 + - 3 + - 4 + - 5 + example: 4 + format: int64 + type: integer + x-enum-varnames: + - UNSPECIFIED + - ONBOARDING + - PASSIVE + - FAILOVER + - ACTIVE + - RECOVERY + HamrOrgConnectionType: + description: Type of the HAMR organization connection resource. + enum: + - hamr_org_connections + example: hamr_org_connections + type: string + x-enum-varnames: + - HAMR_ORG_CONNECTIONS + HistoricalJobDataType: + description: Type of payload. + enum: + - historicalDetectionsJob + type: string + x-enum-varnames: + - HISTORICALDETECTIONSJOB + HistoricalJobListMeta: + description: Metadata about the list of jobs. + properties: + totalCount: + description: Number of jobs in the list. + format: int32 + maximum: 2147483647 + type: integer + type: object + HistoricalJobOptions: + description: Job options. + properties: + anomalyDetectionOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptions" + detectionMethod: + $ref: "#/components/schemas/SecurityMonitoringRuleDetectionMethod" + evaluationWindow: + $ref: "#/components/schemas/SecurityMonitoringRuleEvaluationWindow" + impossibleTravelOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions" + keepAlive: + $ref: "#/components/schemas/SecurityMonitoringRuleKeepAlive" + maxSignalDuration: + $ref: "#/components/schemas/SecurityMonitoringRuleMaxSignalDuration" + newValueOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleNewValueOptions" + sequenceDetectionOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleSequenceDetectionOptions" + thirdPartyRuleOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleThirdPartyOptions" + type: object + HistoricalJobQuery: + description: Query for selecting logs analyzed by the historical job. + properties: + additionalFilters: + description: Additional filters appended to the query at evaluation time. + type: string + aggregation: + $ref: "#/components/schemas/SecurityMonitoringRuleQueryAggregation" + correlatedByFields: + description: Fields used to correlate results across queries in sequence detection rules. + items: + description: Field. + type: string + type: array + correlatedQueryIndex: + description: Zero-based index of the query to correlate with in sequence detection rules. Up to 10 queries are supported, so valid values are 0 to 9. + format: int64 + maximum: 9 + minimum: 0 + type: integer + customQueryExtension: + description: Custom query extension used to refine the base query. + type: string + dataSource: + $ref: "#/components/schemas/SecurityMonitoringStandardDataSource" + datasetIds: + description: IDs of reference datasets used by this query. + items: + description: Dataset ID. + type: string + type: array + distinctFields: + description: Field for which the cardinality is measured. Sent as an array. + items: + description: Field. + type: string + type: array + groupByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + hasOptionalGroupByFields: + default: false + description: When false, events without a group-by value are ignored by the query. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values. + example: false + type: boolean + index: + description: Index used to load the data for this query. + type: string + indexes: + description: Indexes used to load the data for this query. Mutually exclusive with `index`. + items: + description: Index name. + type: string + type: array + metrics: + description: Group of target fields to aggregate over when using the sum, max, geo data, or new value aggregations. The sum, max, and geo data aggregations only accept one value in this list, whereas the new value aggregation accepts up to five values. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + query: + description: Query to run on logs. + example: a > 3 + type: string + queryLanguage: + description: Language used to parse the query string. + type: string + type: object + HistoricalJobResponse: + description: Historical job response. + properties: + data: + $ref: "#/components/schemas/HistoricalJobResponseData" + type: object + HistoricalJobResponseAttributes: + description: Historical job attributes. + properties: + createdAt: + description: Time when the job was created. + type: string + createdByHandle: + description: The handle of the user who created the job. + type: string + createdByName: + description: The name of the user who created the job. + type: string + createdFromRuleId: + description: ID of the rule used to create the job (if it is created from a rule). + type: string + jobDefinition: + $ref: "#/components/schemas/JobDefinition" + jobName: + description: Job name. + type: string + jobStatus: + description: Job status. + type: string + modifiedAt: + description: Last modification time of the job. + type: string + progressRate: + description: Job execution progress as a value between 0 and 1. Available for ongoing jobs. + format: double + type: number + signalOutput: + description: Whether the job outputs signals. + type: boolean + type: object + HistoricalJobResponseData: + description: Historical job response data. + properties: + attributes: + $ref: "#/components/schemas/HistoricalJobResponseAttributes" + id: + description: ID of the job. + type: string + type: + $ref: "#/components/schemas/HistoricalJobDataType" + type: object + HistoricalMetricsConfigurationAttributes: + description: Attributes of a historical metrics configuration. + properties: + created_at: + description: Timestamp when historical metrics ingestion was enabled for the metric. + example: "2024-01-15T12:00:00.000Z" + format: date-time + readOnly: true + type: string + type: object + HistoricalMetricsConfigurationCreateData: + description: Data object for enabling historical metrics ingestion for a metric. + properties: + id: + description: The metric name, used as the resource ID. + example: dd.test.metric + type: string + type: + $ref: "#/components/schemas/HistoricalMetricsConfigurationType" + required: + - id + - type + type: object + HistoricalMetricsConfigurationCreateRequest: + description: Request body for enabling historical metrics ingestion for a metric. + properties: + data: + $ref: "#/components/schemas/HistoricalMetricsConfigurationCreateData" + required: + - data + type: object + HistoricalMetricsConfigurationData: + description: >- + A historical metrics configuration resource object. Existence of this resource means historical metrics ingestion is enabled for the metric; there is no separate enabled attribute. + properties: + attributes: + $ref: "#/components/schemas/HistoricalMetricsConfigurationAttributes" + id: + description: The metric name, used as the resource ID. + example: dd.test.metric + type: string + type: + $ref: "#/components/schemas/HistoricalMetricsConfigurationType" + type: object + HistoricalMetricsConfigurationResponse: + description: Response containing a historical metrics configuration. + properties: + data: + $ref: "#/components/schemas/HistoricalMetricsConfigurationData" + readOnly: true + type: object + HistoricalMetricsConfigurationType: + default: historical_metrics_configurations + description: The historical metrics configuration resource type. + enum: + - historical_metrics_configurations + example: historical_metrics_configurations + type: string + x-enum-varnames: + - HISTORICAL_METRICS_CONFIGURATIONS + HourlyUsage: + description: Hourly usage for a product family for an org. + properties: + attributes: + $ref: "#/components/schemas/HourlyUsageAttributes" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/UsageTimeSeriesType" + type: object + HourlyUsageAttributes: + description: Attributes of hourly usage for a product family for an org for a time period. + properties: + account_name: + description: The account name. + type: string + account_public_id: + description: The account public ID. + type: string + measurements: + description: List of the measured usage values for the product family for the org for the time period. + items: + $ref: "#/components/schemas/HourlyUsageMeasurement" + type: array + org_name: + description: The organization name. + type: string + product_family: + description: The product for which usage is being reported. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + timestamp: + description: Datetime in ISO-8601 format, UTC. The hour for the usage. + format: date-time + type: string + type: object + HourlyUsageMeasurement: + description: Usage amount for a given usage type. + properties: + usage_type: + description: Type of usage. + type: string + value: + description: Contains the number measured for the given usage_type during the hour. + format: int64 + nullable: true + type: integer + type: object + HourlyUsageMetadata: + description: The object containing document metadata. + properties: + pagination: + $ref: "#/components/schemas/HourlyUsagePagination" + type: object + HourlyUsagePagination: + description: The metadata for the current pagination. + properties: + next_record_id: + description: The cursor to get the next results (if any). To make the next request, use the same parameters and add `next_record_id`. + nullable: true + type: string + type: object + HourlyUsageResponse: + description: Hourly usage response. + properties: + data: + description: Response containing hourly usage. + items: + $ref: "#/components/schemas/HourlyUsage" + type: array + meta: + $ref: "#/components/schemas/HourlyUsageMetadata" + type: object + HourlyUsageType: + description: Usage type that is being measured. + enum: + - app_sec_host_count + - observability_pipelines_bytes_processed + - lambda_traced_invocations_count + example: observability_pipelines_bytes_processed + type: string + x-enum-varnames: + - APP_SEC_HOST_COUNT + - OBSERVABILITY_PIPELINES_BYTES_PROCESSSED + - LAMBDA_TRACED_INVOCATIONS_COUNT + ID: + description: The ID of a notification rule. + example: aaa-bbb-ccc + type: string + IL2CPPSourcemapAttributes: + description: Attributes of an IL2CPP mapping file. + properties: + build_id: + description: The build identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + created_at: + description: The timestamp when the mapping file was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + mapkind: + description: The type of source map. + example: il2cpp + type: string + size: + description: The size of the mapping file in bytes. + example: 4096 + format: int64 + type: integer + required: + - mapkind + - size + - created_at + type: object + IL2CPPSourcemapData: + description: IL2CPP mapping file data object. + properties: + attributes: + $ref: "#/components/schemas/IL2CPPSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "8" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + IOSSourcemapAttributes: + description: Attributes of an iOS dSYM source map. + properties: + created_at: + description: The timestamp when the source map was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + mapkind: + description: The type of source map. + example: ios + type: string + size: + description: The size of the dSYM file in bytes. + example: 4096 + format: int64 + type: integer + uuids: + description: The UUID(s) associated with the dSYM file. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + required: + - mapkind + - size + - created_at + type: object + IOSSourcemapData: + description: iOS dSYM source map data object. + properties: + attributes: + $ref: "#/components/schemas/IOSSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "11" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + IPAllowlistAttributes: + description: Attributes of the IP allowlist. + properties: + enabled: + description: Whether the IP allowlist logic is enabled or not. + type: boolean + entries: + description: Array of entries in the IP allowlist. + items: + $ref: "#/components/schemas/IPAllowlistEntry" + type: array + type: object + IPAllowlistData: + description: IP allowlist data. + properties: + attributes: + $ref: "#/components/schemas/IPAllowlistAttributes" + id: + description: The unique identifier of the org. + type: string + type: + $ref: "#/components/schemas/IPAllowlistType" + required: + - type + type: object + IPAllowlistEntry: + description: IP allowlist entry object. + properties: + data: + $ref: "#/components/schemas/IPAllowlistEntryData" + required: + - data + type: object + IPAllowlistEntryAttributes: + description: Attributes of the IP allowlist entry. + properties: + cidr_block: + description: The CIDR block describing the IP range of the entry. + type: string + created_at: + description: Creation time of the entry. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last entry modification. + format: date-time + readOnly: true + type: string + note: + description: A note describing the IP allowlist entry. + type: string + type: object + IPAllowlistEntryData: + description: Data of the IP allowlist entry object. + properties: + attributes: + $ref: "#/components/schemas/IPAllowlistEntryAttributes" + id: + description: The unique identifier of the IP allowlist entry. + type: string + type: + $ref: "#/components/schemas/IPAllowlistEntryType" + required: + - type + type: object + IPAllowlistEntryType: + default: ip_allowlist_entry + description: IP allowlist Entry type. + enum: + - ip_allowlist_entry + example: ip_allowlist_entry + type: string + x-enum-varnames: + - IP_ALLOWLIST_ENTRY + IPAllowlistResponse: + description: Response containing information about the IP allowlist. + properties: + data: + $ref: "#/components/schemas/IPAllowlistData" + type: object + IPAllowlistType: + default: ip_allowlist + description: IP allowlist type. + enum: + - ip_allowlist + example: ip_allowlist + type: string + x-enum-varnames: + - IP_ALLOWLIST + IPAllowlistUpdateRequest: + description: Update the IP allowlist. + properties: + data: + $ref: "#/components/schemas/IPAllowlistData" + required: + - data + type: object + IdPMetadataFormData: + description: The form data submitted to upload IdP metadata + properties: + idp_file: + description: The IdP metadata XML file + format: binary + type: string + x-mimetype: application/xml + type: object + IdentityProviderAttributes: + description: Attributes of an organization identity provider. + properties: + authentication_method: + description: The authentication method used by this identity provider. + example: "SAML" + type: string + enabled: + description: Whether this identity provider is enabled for the organization. + example: true + type: boolean + required: + - authentication_method + - enabled + type: object + IdentityProviderData: + description: Data object representing an organization identity provider. + properties: + attributes: + $ref: "#/components/schemas/IdentityProviderAttributes" + id: + description: The unique identifier of the identity provider. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/IdentityProviderType" + required: + - id + - type + - attributes + type: object + IdentityProviderDataList: + description: List of organization identity provider data objects. + items: + $ref: "#/components/schemas/IdentityProviderData" + type: array + IdentityProviderResponse: + description: Response containing a single organization identity provider. + properties: + data: + $ref: "#/components/schemas/IdentityProviderData" + required: + - data + type: object + IdentityProviderType: + description: The resource type for identity providers. + enum: + - identity_providers + example: identity_providers + type: string + x-enum-varnames: + - IDENTITY_PROVIDERS + IdentityProviderUpdateAttributes: + description: Attributes for updating an organization identity provider. + properties: + enabled: + description: Whether to enable or disable this identity provider for the organization. + example: true + type: boolean + required: + - enabled + type: object + IdentityProviderUpdateData: + description: Data object for updating an organization identity provider. + properties: + attributes: + $ref: "#/components/schemas/IdentityProviderUpdateAttributes" + id: + description: The unique identifier of the identity provider to update. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/IdentityProviderType" + required: + - id + - type + - attributes + type: object + IdentityProviderUpdateRequest: + description: Request body for updating an organization identity provider. + properties: + data: + $ref: "#/components/schemas/IdentityProviderUpdateData" + required: + - data + type: object + IdentityProvidersResponse: + description: Response containing a list of identity providers for an organization. + properties: + data: + $ref: "#/components/schemas/IdentityProviderDataList" + required: + - data + type: object + IncidentAIPostmortemDataAttributesResponse: + description: Attributes of an AI-generated incident postmortem. + properties: + action_items: + description: Action items to prevent recurrence. + example: "1. Improve failover testing. 2. Add more monitoring alerts." + type: string + customer_impact: + description: The impact of the incident on customers. + example: "5% of users experienced timeouts for 30 minutes." + type: string + executive_summary: + description: An executive summary of the incident. + example: "A database failover caused a 30-minute service outage affecting 5% of users." + type: string + key_timeline: + description: Key timeline events during the incident. + example: "10:00 - Alert fired. 10:05 - On-call engineer paged. 10:30 - Issue resolved." + type: string + lessons_learned: + description: Lessons learned from the incident. + example: "We need to test the failover process under realistic load conditions." + type: string + system_overview: + description: An overview of the affected systems. + example: "The primary database cluster experienced a failover event." + type: string + type: object + IncidentAIPostmortemDataResponse: + description: AI postmortem data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentAIPostmortemDataAttributesResponse" + id: + description: The incident identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentAIPostmortemResponseType" + required: + - id + - type + - attributes + type: object + IncidentAIPostmortemResponse: + description: Response with an AI-generated incident postmortem. + properties: + data: + $ref: "#/components/schemas/IncidentAIPostmortemDataResponse" + required: + - data + type: object + IncidentAIPostmortemResponseType: + description: AI postmortem response resource type. + enum: + - get_incident_ai_postmortem_response + example: get_incident_ai_postmortem_response + type: string + x-enum-varnames: + - GET_INCIDENT_AI_POSTMORTEM_RESPONSE + IncidentAttachmentType: + default: incident_attachments + description: The incident attachment resource type. + enum: + - incident_attachments + example: incident_attachments + type: string + x-enum-varnames: + - INCIDENT_ATTACHMENTS + IncidentConfigurationDataAttributesRequest: + description: Attributes for creating an incident configuration. + properties: + execute_integrations: + description: Whether to execute integrations for this incident. + example: true + type: boolean + execute_notification_rules: + description: Whether to execute notification rules for this incident. + example: true + type: boolean + include_in_analytics: + description: Whether to include this incident in analytics. + example: true + type: boolean + include_in_search: + description: Whether to include this incident in search results. + example: true + type: boolean + type: object + IncidentConfigurationDataAttributesResponse: + description: Attributes of an incident configuration in a response. + properties: + created_at: + description: Timestamp when the configuration was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + execute_integrations: + description: Whether integrations are executed for this incident. + example: true + type: boolean + execute_notification_rules: + description: Whether notification rules are executed for this incident. + example: true + type: boolean + incident_id: + description: The incident identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + include_in_analytics: + description: Whether this incident is included in analytics. + example: true + type: boolean + include_in_search: + description: Whether this incident is included in search results. + example: true + type: boolean + modified_at: + description: Timestamp when the configuration was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + required: + - incident_id + - created_at + - modified_at + type: object + IncidentConfigurationDataRequest: + description: Incident configuration data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentConfigurationDataAttributesRequest" + type: + $ref: "#/components/schemas/IncidentConfigurationType" + required: + - type + type: object + IncidentConfigurationDataResponse: + description: Incident configuration data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentConfigurationDataAttributesResponse" + id: + description: The incident configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentConfigurationRelationships" + type: + $ref: "#/components/schemas/IncidentConfigurationType" + required: + - id + - type + - attributes + type: object + IncidentConfigurationPatchDataAttributesRequest: + description: Attributes for patching an incident configuration. All fields are optional. + properties: + execute_integrations: + description: Whether to execute integrations for this incident. + example: true + type: boolean + execute_notification_rules: + description: Whether to execute notification rules for this incident. + example: true + type: boolean + include_in_analytics: + description: Whether to include this incident in analytics. + example: true + type: boolean + include_in_search: + description: Whether to include this incident in search results. + example: true + type: boolean + type: object + IncidentConfigurationPatchDataRequest: + description: Incident configuration data in a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentConfigurationPatchDataAttributesRequest" + id: + description: The incident configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentConfigurationType" + required: + - id + - type + type: object + IncidentConfigurationPatchRequest: + description: Request payload for patching an incident configuration. + properties: + data: + $ref: "#/components/schemas/IncidentConfigurationPatchDataRequest" + required: + - data + type: object + IncidentConfigurationRelationships: + description: Relationships for an incident configuration. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentConfigurationRequest: + description: Request payload for creating an incident configuration. + properties: + data: + $ref: "#/components/schemas/IncidentConfigurationDataRequest" + required: + - data + type: object + IncidentConfigurationResponse: + description: Response with an incident configuration. + properties: + data: + $ref: "#/components/schemas/IncidentConfigurationDataResponse" + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentConfigurationType: + description: Incident configuration resource type. + enum: + - incidents_configurations + example: incidents_configurations + type: string + x-enum-varnames: + - INCIDENTS_CONFIGURATIONS + IncidentCreateAttributes: + description: The incident's attributes for a create request. + properties: + customer_impact_scope: + description: Required if `customer_impacted:"true"`. A summary of the impact customers experienced during the incident. + example: "Example customer impact scope" + type: string + customer_impacted: + description: A flag indicating whether the incident caused customer impact. + example: false + type: boolean + fields: + additionalProperties: + $ref: "#/components/schemas/IncidentFieldAttributes" + description: A condensed view of the user-defined fields for which to create initial selections. + example: {"severity": {"type": "dropdown", "value": "SEV-5"}} + type: object + incident_type_uuid: + description: A unique identifier that represents an incident type. The default incident type will be used if this property is not provided. + example: "00000000-0000-0000-0000-000000000000" + type: string + initial_cells: + description: An array of initial timeline cells to be placed at the beginning of the incident timeline. + items: + $ref: "#/components/schemas/IncidentTimelineCellCreateAttributes" + type: array + is_test: + description: A flag indicating whether the incident is a test incident. + example: false + type: boolean + notification_handles: + description: Notification handles that will be notified of the incident at creation. + example: [{"display_name": "Jane Doe", "handle": "@user@email.com"}, {"display_name": "Slack Channel", "handle": "@slack-channel"}, {"display_name": "Incident Workflow", "handle": "@workflow-from-incident"}] + items: + $ref: "#/components/schemas/IncidentNotificationHandle" + type: array + title: + description: The title of the incident, which summarizes what happened. + example: "A test incident title" + type: string + required: + - title + - customer_impacted + type: object + IncidentCreateData: + description: Incident data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentCreateAttributes" + relationships: + $ref: "#/components/schemas/IncidentCreateRelationships" + type: + $ref: "#/components/schemas/IncidentType" + required: + - type + - attributes + type: object + IncidentCreateOnCallPageDataAttributesRequest: + description: Attributes for creating an on-call page from an incident. + properties: + description: + description: The description of the page. + example: A critical incident affecting production systems. + type: string + role: + $ref: "#/components/schemas/IncidentPageRoleReference" + services: + description: List of affected services. + example: + - web-store + items: + type: string + type: array + tags: + description: List of tags for the page. + example: + - env:prod + items: + type: string + type: array + target: + $ref: "#/components/schemas/IncidentPageTarget" + title: + description: The title of the page. + example: Production outage - SEV-1 + type: string + type: object + IncidentCreateOnCallPageDataRequest: + description: On-call page data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentCreateOnCallPageDataAttributesRequest" + type: + $ref: "#/components/schemas/IncidentCreatePageFromIncidentType" + required: + - type + - attributes + type: object + IncidentCreateOnCallPageRequest: + description: Request payload for creating an on-call page from an incident. + properties: + data: + $ref: "#/components/schemas/IncidentCreateOnCallPageDataRequest" + required: + - data + type: object + IncidentCreatePageFromIncidentDataAttributesRequest: + description: Attributes for creating a page from an incident. + properties: + description: + description: The description of the page. + example: A critical incident affecting production systems. + type: string + incident_public_id: + description: The public ID of the incident. + example: "12345" + type: string + role: + $ref: "#/components/schemas/IncidentPageRoleReference" + services: + description: List of affected services. + example: + - web-store + - checkout + items: + type: string + type: array + tags: + description: List of tags for the page. + example: + - env:prod + items: + type: string + type: array + target: + $ref: "#/components/schemas/IncidentPageTarget" + title: + description: The title of the page. + example: Production outage - SEV-1 + type: string + type: object + IncidentCreatePageFromIncidentDataRequest: + description: Page data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentCreatePageFromIncidentDataAttributesRequest" + type: + $ref: "#/components/schemas/IncidentCreatePageFromIncidentType" + required: + - type + - attributes + type: object + IncidentCreatePageFromIncidentRequest: + description: Request payload for creating a page from an incident. + properties: + data: + $ref: "#/components/schemas/IncidentCreatePageFromIncidentDataRequest" + required: + - data + type: object + IncidentCreatePageFromIncidentType: + description: Resource type for a page creation request. + enum: + - page + example: page + type: string + x-enum-varnames: + - PAGE + IncidentCreateRelationships: + description: The relationships the incident will have with other resources once created. + properties: + commander_user: + $ref: "#/components/schemas/NullableRelationshipToUser" + required: + - commander_user + type: object + IncidentCreateRequest: + description: Create request for an incident. + properties: + data: + $ref: "#/components/schemas/IncidentCreateData" + required: + - data + type: object + IncidentFieldAttributes: + description: Dynamic fields for which selections can be made, with field names as keys. + oneOf: + - $ref: "#/components/schemas/IncidentFieldAttributesSingleValue" + - $ref: "#/components/schemas/IncidentFieldAttributesMultipleValue" + IncidentFieldAttributesMultipleValue: + description: A field with potentially multiple values selected. + properties: + type: + $ref: "#/components/schemas/IncidentFieldAttributesValueType" + value: + description: The multiple values selected for this field. + example: ["1.0", "1.1"] + items: + description: A value which has been selected for the parent field. + example: "1.1" + type: string + nullable: true + type: array + type: object + IncidentFieldAttributesSingleValue: + description: A field with a single value selected. + properties: + type: + $ref: "#/components/schemas/IncidentFieldAttributesSingleValueType" + value: + description: The single value selected for this field. + example: "SEV-1" + nullable: true + type: string + type: object + IncidentFieldAttributesSingleValueType: + default: dropdown + description: Type of the single value field definitions. + enum: + - dropdown + - textbox + example: dropdown + type: string + x-enum-varnames: + - DROPDOWN + - TEXTBOX + IncidentFieldAttributesValueType: + default: multiselect + description: Type of the multiple value field definitions. + enum: + - multiselect + - textarray + - metrictag + - autocomplete + example: multiselect + type: string + x-enum-varnames: + - MULTISELECT + - TEXTARRAY + - METRICTAG + - AUTOCOMPLETE + IncidentGoogleChatConfigurationDataAttributesRequest: + description: Attributes for creating a Google Chat configuration. + properties: + domain_id: + description: The Google Chat domain ID. + example: my-domain + type: string + space_name_template: + description: The template for the Google Chat space name. + example: "{{incident.title}}" + type: string + space_target_audience_id: + description: The target audience ID for the Google Chat space. + example: "123456789" + type: string + space_time_zone: + description: The time zone for the Google Chat space. + example: America/New_York + type: string + required: + - domain_id + - space_name_template + - space_time_zone + - space_target_audience_id + type: object + IncidentGoogleChatConfigurationDataAttributesResponse: + description: Attributes of a Google Chat configuration. + properties: + created_at: + description: Timestamp when the configuration was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + domain_id: + description: The Google Chat domain ID. + example: my-domain + type: string + modified_at: + description: Timestamp when the configuration was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + space_name_template: + description: The template for the Google Chat space name. + example: "{{incident.title}}" + type: string + space_target_audience_id: + description: The target audience ID for the Google Chat space. + example: "123456789" + type: string + space_time_zone: + description: The time zone for the Google Chat space. + example: America/New_York + type: string + required: + - domain_id + - space_name_template + - space_time_zone + - space_target_audience_id + - created_at + - modified_at + type: object + IncidentGoogleChatConfigurationDataRequest: + description: Google Chat configuration data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationDataAttributesRequest" + relationships: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationRelationshipsRequest" + type: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationType" + required: + - type + - attributes + - relationships + type: object + IncidentGoogleChatConfigurationDataResponse: + description: Google Chat configuration data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationDataAttributesResponse" + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationRelationships" + type: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationType" + required: + - id + - type + - attributes + type: object + IncidentGoogleChatConfigurationPatchDataAttributesRequest: + description: Attributes for patching a Google Chat configuration. All fields are optional. + properties: + domain_id: + description: The Google Chat domain ID. + example: my-domain + type: string + space_name_template: + description: The template for the Google Chat space name. + example: "{{incident.title}}" + type: string + space_target_audience_id: + description: The target audience ID for the Google Chat space. + example: "123456789" + type: string + space_time_zone: + description: The time zone for the Google Chat space. + example: America/New_York + type: string + type: object + IncidentGoogleChatConfigurationPatchDataRequest: + description: Google Chat configuration data in a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationPatchDataAttributesRequest" + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationType" + required: + - id + - type + type: object + IncidentGoogleChatConfigurationPatchRequest: + description: Request payload for patching a Google Chat configuration. + properties: + data: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationPatchDataRequest" + required: + - data + type: object + IncidentGoogleChatConfigurationRelationships: + description: Relationships for a Google Chat configuration. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentGoogleChatConfigurationRelationshipsRequest: + description: Relationships for a Google Chat configuration create request. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + required: + - incident_type + type: object + IncidentGoogleChatConfigurationRequest: + description: Request payload for creating a Google Chat configuration. + properties: + data: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationDataRequest" + required: + - data + type: object + IncidentGoogleChatConfigurationResponse: + description: Response with a Google Chat configuration. + properties: + data: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationDataResponse" + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentGoogleChatConfigurationType: + description: Google Chat configuration resource type. + enum: + - google_chat_configurations + example: google_chat_configurations + type: string + x-enum-varnames: + - GOOGLE_CHAT_CONFIGURATIONS + IncidentGoogleMeetConfigurationDataAttributesRequest: + description: Attributes for creating a Google Meet configuration. + properties: + allow_manual_meeting_creation: + description: Whether to allow manual meeting creation. + example: true + type: boolean + auto_summarize: + description: Whether to auto-summarize meetings. + example: false + type: boolean + required: + - allow_manual_meeting_creation + - auto_summarize + type: object + IncidentGoogleMeetConfigurationDataAttributesResponse: + description: Attributes of a Google Meet configuration. + properties: + allow_manual_meeting_creation: + description: Whether manual meeting creation is allowed. + example: true + type: boolean + auto_summarize: + description: Whether meetings are auto-summarized. + example: false + type: boolean + created_at: + description: Timestamp when the configuration was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + modified_at: + description: Timestamp when the configuration was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + required: + - allow_manual_meeting_creation + - auto_summarize + - modified_at + type: object + IncidentGoogleMeetConfigurationDataRequest: + description: Google Meet configuration data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationDataAttributesRequest" + relationships: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationRelationshipsRequest" + type: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationType" + required: + - type + - attributes + - relationships + type: object + IncidentGoogleMeetConfigurationDataResponse: + description: Google Meet configuration data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationDataAttributesResponse" + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationRelationships" + type: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationType" + required: + - id + - type + - attributes + type: object + IncidentGoogleMeetConfigurationPatchDataAttributesRequest: + description: Attributes for patching a Google Meet configuration. All fields are optional. + properties: + allow_manual_meeting_creation: + description: Whether to allow manual meeting creation. + example: true + type: boolean + auto_summarize: + description: Whether to auto-summarize meetings. + example: false + type: boolean + type: object + IncidentGoogleMeetConfigurationPatchDataRequest: + description: Google Meet configuration data in a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationPatchDataAttributesRequest" + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationType" + required: + - id + - type + type: object + IncidentGoogleMeetConfigurationPatchRequest: + description: Request payload for patching a Google Meet configuration. + properties: + data: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationPatchDataRequest" + required: + - data + type: object + IncidentGoogleMeetConfigurationRelationships: + description: Relationships for a Google Meet configuration. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentGoogleMeetConfigurationRelationshipsRequest: + description: Relationships for a Google Meet configuration create request. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + required: + - incident_type + type: object + IncidentGoogleMeetConfigurationRequest: + description: Request payload for creating a Google Meet configuration. + properties: + data: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationDataRequest" + required: + - data + type: object + IncidentGoogleMeetConfigurationResponse: + description: Response with a Google Meet configuration. + properties: + data: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationDataResponse" + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentGoogleMeetConfigurationType: + description: Google Meet configuration resource type. + enum: + - google_meet_configurations + example: google_meet_configurations + type: string + x-enum-varnames: + - GOOGLE_MEET_CONFIGURATIONS + IncidentHandleAttributesFields: + description: Dynamic fields associated with the handle + example: + severity: ["SEV-1"] + properties: + severity: + description: Severity levels associated with the handle + items: + $ref: "#/components/schemas/IncidentHandleAttributesFieldsSeverity" + type: array + type: object + IncidentHandleAttributesFieldsSeverity: + description: Severity level associated with an incident handle. + example: SEV-1 + type: string + IncidentHandleAttributesRequest: + description: Incident handle attributes for requests + properties: + fields: + $ref: "#/components/schemas/IncidentHandleAttributesFields" + name: + description: The handle name + example: "@incident-sev-1" + type: string + required: + - name + type: object + IncidentHandleAttributesResponse: + description: Incident handle attributes for responses + properties: + created_at: + description: Timestamp when the handle was created + example: "2026-01-13T17:15:52.726905Z" + format: date-time + type: string + fields: + $ref: "#/components/schemas/IncidentHandleAttributesFields" + modified_at: + description: Timestamp when the handle was last modified + example: "2026-01-13T17:15:52.726905Z" + format: date-time + type: string + name: + description: The handle name + example: "@incident-sev-1" + type: string + required: + - name + - fields + - created_at + - modified_at + type: object + IncidentHandleDataRequest: + description: Data object representing an incident handle in a create or update request. + properties: + attributes: + $ref: "#/components/schemas/IncidentHandleAttributesRequest" + id: + description: The ID of the incident handle (required for PUT requests) + example: "b2494081-cdf0-4205-b366-4e1dd4fdf0bf" + type: string + relationships: + $ref: "#/components/schemas/IncidentHandleRelationshipsRequest" + type: + $ref: "#/components/schemas/IncidentHandleType" + required: + - type + - attributes + type: object + IncidentHandleDataResponse: + description: Data object representing an incident handle in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentHandleAttributesResponse" + id: + description: The ID of the incident handle + example: "12ceee6d-a7c0-4407-bc54-30e54140d7f0" + type: string + relationships: + $ref: "#/components/schemas/IncidentHandleRelationships" + type: + $ref: "#/components/schemas/IncidentHandleType" + required: + - id + - type + - attributes + type: object + IncidentHandleIncludedItemResponse: + description: A single included resource item in an incident handle response, which can be a user or an incident type. + oneOf: + - $ref: "#/components/schemas/IncidentUserData" + - $ref: "#/components/schemas/IncidentTypeObject" + IncidentHandleIncludedResponse: + description: Included related resources + items: + $ref: "#/components/schemas/IncidentHandleIncludedItemResponse" + type: array + IncidentHandleRelationship: + description: A single relationship object for an incident handle, wrapping the related resource data. + properties: + data: + $ref: "#/components/schemas/IncidentHandleRelationshipData" + required: + - data + type: object + IncidentHandleRelationshipData: + description: Relationship data for an incident handle, containing the ID and type of the related resource. + properties: + id: + description: The ID of the related resource + example: "f7b538b1-ed7c-4e84-82de-fdf84a539d40" + type: string + type: + description: The type of the related resource + example: "incident_types" + type: string + required: + - id + - type + type: object + IncidentHandleRelationships: + description: Relationships associated with an incident handle response, including linked users and incident type. + nullable: true + properties: + commander_user: + $ref: "#/components/schemas/IncidentHandleRelationship" + created_by_user: + $ref: "#/components/schemas/IncidentHandleRelationship" + incident_type: + $ref: "#/components/schemas/IncidentHandleRelationship" + last_modified_by_user: + $ref: "#/components/schemas/IncidentHandleRelationship" + required: + - incident_type + - created_by_user + - last_modified_by_user + type: object + IncidentHandleRelationshipsRequest: + description: Relationships to associate with an incident handle in a create or update request. + nullable: true + properties: + commander_user: + $ref: "#/components/schemas/IncidentHandleRelationship" + incident_type: + $ref: "#/components/schemas/IncidentHandleRelationship" + required: + - incident_type + type: object + IncidentHandleRequest: + description: Request payload for creating or updating a global incident handle. + properties: + data: + $ref: "#/components/schemas/IncidentHandleDataRequest" + required: + - data + type: object + IncidentHandleResponse: + description: Response payload for a single incident handle, including the handle data and related resources. + properties: + data: + $ref: "#/components/schemas/IncidentHandleDataResponse" + included: + $ref: "#/components/schemas/IncidentHandleIncludedResponse" + required: + - data + type: object + IncidentHandleType: + description: Incident handle resource type + enum: + - incidents_handles + example: incidents_handles + type: string + x-enum-varnames: + - INCIDENTS_HANDLES + IncidentHandlesResponse: + description: Response payload for a list of global incident handles, including handle data and related resources. + properties: + data: + $ref: "#/components/schemas/IncidentHandlesResponseData" + example: + - attributes: + name: "@incident-sev-1" + id: "12ceee6d-a7c0-4407-bc54-30e54140d7f0" + type: incident_handles + included: + $ref: "#/components/schemas/IncidentHandleIncludedResponse" + required: + - data + type: object + IncidentHandlesResponseData: + description: Array of incident handle data objects returned in a list response. + items: + $ref: "#/components/schemas/IncidentHandleDataResponse" + type: array + IncidentImpactAttributes: + description: The incident impact's attributes. + properties: + created: + description: Timestamp when the impact was created. + example: "2025-08-29T13:17:00Z" + format: date-time + readOnly: true + type: string + description: + description: Description of the impact. + example: "Service was unavailable for external users" + type: string + end_at: + description: Timestamp when the impact ended. + example: "2025-08-29T13:17:00Z" + format: date-time + nullable: true + type: string + fields: + $ref: "#/components/schemas/IncidentImpactFieldsObject" + impact_type: + description: The type of impact. + example: "customer" + type: string + modified: + description: Timestamp when the impact was last modified. + example: "2025-08-29T13:17:00Z" + format: date-time + readOnly: true + type: string + start_at: + description: Timestamp representing when the impact started. + example: "2025-08-28T13:17:00Z" + format: date-time + type: string + required: + - description + - start_at + type: object + IncidentImpactCreateAttributes: + description: The incident impact's attributes for a create request. + properties: + description: + description: Description of the impact. + example: "Service was unavailable for external users" + type: string + end_at: + description: Timestamp when the impact ended. + example: "2025-08-29T13:17:00Z" + format: date-time + nullable: true + type: string + fields: + $ref: "#/components/schemas/IncidentImpactFieldsObject" + start_at: + description: Timestamp when the impact started. + example: "2025-08-28T13:17:00Z" + format: date-time + type: string + required: + - description + - start_at + type: object + IncidentImpactCreateData: + description: Incident impact data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentImpactCreateAttributes" + type: + $ref: "#/components/schemas/IncidentImpactType" + required: + - type + - attributes + type: object + IncidentImpactCreateRequest: + description: Create request for an incident impact. + properties: + data: + $ref: "#/components/schemas/IncidentImpactCreateData" + required: + - data + type: object + IncidentImpactFieldChoice: + description: A choice option for a dropdown or multiselect impact field. + properties: + description: + description: The description of the choice. + example: Affects all customers + type: string + display_name: + description: The display name of the choice. + example: Critical + type: string + value: + description: The value of the choice. + example: critical + type: string + required: + - value + - display_name + type: object + IncidentImpactFieldDataAttributesRequest: + description: Attributes for creating an impact field. + properties: + display_name: + description: The display name of the impact field. + example: Customer Impact Scope + type: string + field_choices: + description: The choices for dropdown or multiselect fields. + items: + $ref: "#/components/schemas/IncidentImpactFieldChoice" + type: array + field_type: + $ref: "#/components/schemas/IncidentImpactFieldValueType" + name: + description: The normalized name of the impact field (used as identifier). + example: customer_impact_scope + type: string + tag_key: + description: The tag key associated with the field (for metrictag type). + example: env + nullable: true + type: string + required: + - name + - display_name + - field_type + type: object + IncidentImpactFieldDataAttributesResponse: + description: Attributes of an impact field in a response. + properties: + display_name: + description: The display name of the impact field. + example: Customer Impact Scope + type: string + field_choices: + description: The choices for dropdown or multiselect fields. + items: + $ref: "#/components/schemas/IncidentImpactFieldChoice" + type: array + field_type: + $ref: "#/components/schemas/IncidentImpactFieldValueType" + name: + description: The normalized name of the impact field. + example: customer_impact_scope + type: string + tag_key: + description: The tag key associated with the field. + example: env + nullable: true + type: string + required: + - name + - display_name + - field_type + type: object + IncidentImpactFieldDataRequest: + description: Impact field data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentImpactFieldDataAttributesRequest" + relationships: + $ref: "#/components/schemas/IncidentImpactFieldRelationshipsRequest" + type: + $ref: "#/components/schemas/IncidentImpactFieldType" + required: + - type + - attributes + - relationships + type: object + IncidentImpactFieldDataResponse: + description: Impact field data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentImpactFieldDataAttributesResponse" + id: + description: The impact field identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentImpactFieldRelationships" + type: + $ref: "#/components/schemas/IncidentImpactFieldType" + required: + - id + - type + - attributes + type: object + IncidentImpactFieldRelationships: + description: Relationships for an impact field. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentImpactFieldRelationshipsRequest: + description: Relationships for an impact field create request. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + required: + - incident_type + type: object + IncidentImpactFieldRequest: + description: Request payload for creating an impact field. + properties: + data: + $ref: "#/components/schemas/IncidentImpactFieldDataRequest" + required: + - data + type: object + IncidentImpactFieldResponse: + description: Response with a single impact field. + properties: + data: + $ref: "#/components/schemas/IncidentImpactFieldDataResponse" + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentImpactFieldType: + description: Impact field resource type. + enum: + - impact_fields + example: impact_fields + type: string + x-enum-varnames: + - IMPACT_FIELDS + IncidentImpactFieldValueType: + description: The type of an impact field. + enum: + - dropdown + - text + - textarray + - metrictag + - number + - datetime + - multiselect + example: dropdown + type: string + x-enum-varnames: + - DROPDOWN + - TEXT + - TEXTARRAY + - METRICTAG + - NUMBER + - DATETIME + - MULTISELECT + IncidentImpactFieldsObject: + additionalProperties: {} + description: An object mapping impact field names to field values. + example: {"customers_impacted": "all", "products_impacted": ["shopping", "marketing"]} + type: object + IncidentImpactFieldsResponse: + description: Response with a list of impact fields. + properties: + data: + description: List of impact fields. + items: + $ref: "#/components/schemas/IncidentImpactFieldDataResponse" + type: array + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentImpactPatchAttributes: + description: The incident impact's attributes for a patch request. All fields are optional. + properties: + description: + description: Description of the impact. + example: "Service was unavailable for external users" + type: string + end_at: + description: Timestamp when the impact ended. + example: "2025-08-29T13:17:00Z" + format: date-time + nullable: true + type: string + fields: + $ref: "#/components/schemas/IncidentImpactFieldsObject" + start_at: + description: Timestamp when the impact started. + example: "2025-08-28T13:17:00Z" + format: date-time + type: string + type: object + IncidentImpactPatchData: + description: Incident impact data for a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentImpactPatchAttributes" + type: + $ref: "#/components/schemas/IncidentImpactType" + required: + - type + type: object + IncidentImpactPatchRequest: + description: Patch request for an incident impact. + properties: + data: + $ref: "#/components/schemas/IncidentImpactPatchData" + required: + - data + type: object + IncidentImpactRelatedObject: + description: A reference to a resource related to an incident impact. + enum: + - incident + - created_by_user + - last_modified_by_user + type: string + x-enum-varnames: + - INCIDENT + - CREATED_BY_USER + - LAST_MODIFIED_BY_USER + IncidentImpactRelationships: + description: The incident impact's resource relationships. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident: + $ref: "#/components/schemas/RelationshipToIncident" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentImpactResponse: + description: Response with an incident impact. + properties: + data: + $ref: "#/components/schemas/IncidentImpactResponseData" + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentImpactResponseData: + description: Incident impact data from a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentImpactAttributes" + id: + description: The incident impact's ID. + example: "00000000-0000-0000-1234-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentImpactRelationships" + type: + $ref: "#/components/schemas/IncidentImpactType" + required: + - id + - type + type: object + IncidentImpactType: + default: incident_impacts + description: Incident impact resource type. + enum: + - incident_impacts + example: incident_impacts + type: string + x-enum-varnames: + - INCIDENT_IMPACTS + IncidentImpactsResponse: + description: Response with a list of incident impacts. + properties: + data: + description: An array of incident impacts. + items: + $ref: "#/components/schemas/IncidentImpactResponseData" + type: array + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentImpactsType: + description: The incident impacts type. + enum: + - incident_impacts + example: incident_impacts + type: string + x-enum-varnames: + - INCIDENT_IMPACTS + IncidentImportFieldAttributes: + description: Dynamic fields for which selections can be made, with field names as keys. + oneOf: + - $ref: "#/components/schemas/IncidentImportFieldAttributesSingleValue" + - $ref: "#/components/schemas/IncidentImportFieldAttributesMultipleValue" + IncidentImportFieldAttributesMultipleValue: + additionalProperties: false + description: A field with potentially multiple values selected. + properties: + value: + description: The multiple values selected for this field. + example: ["1.0", "1.1"] + items: + description: A value which has been selected for the parent field. + example: "1.1" + type: string + nullable: true + type: array + type: object + IncidentImportFieldAttributesSingleValue: + additionalProperties: false + description: A field with a single value selected. + properties: + value: + description: The single value selected for this field. + example: "SEV-1" + nullable: true + type: string + type: object + IncidentImportRelatedObject: + description: Object related to an incident that can be included in the response. + enum: + - last_modified_by_user + - created_by_user + - commander_user + - declared_by_user + - incident_type + type: string + x-enum-varnames: + - LAST_MODIFIED_BY_USER + - CREATED_BY_USER + - COMMANDER_USER + - DECLARED_BY_USER + - INCIDENT_TYPE + IncidentImportRelationships: + description: The relationships for an incident import request. + properties: + commander_user: + $ref: "#/components/schemas/NullableRelationshipToUser" + declared_by_user: + $ref: "#/components/schemas/NullableRelationshipToUser" + type: object + IncidentImportRequest: + description: Import request for an incident. Used to import historical incidents from external systems. + properties: + data: + $ref: "#/components/schemas/IncidentImportRequestData" + required: + - data + type: object + IncidentImportRequestAttributes: + description: The incident's attributes for an import request. + properties: + declared: + description: Timestamp when the incident was declared. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + detected: + description: Timestamp when the incident was detected. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + fields: + additionalProperties: + $ref: "#/components/schemas/IncidentImportFieldAttributes" + description: A condensed view of the user-defined fields for which to create initial selections. + example: {"severity": {"value": "SEV-5"}, "state": {"value": "active"}} + type: object + incident_type_uuid: + description: A unique identifier that represents the incident type. If not provided, the default incident type is used. + example: "00000000-0000-0000-0000-000000000000" + type: string + resolved: + description: Timestamp when the incident was resolved. Can only be set when the state field is set to 'resolved'. + example: "2025-01-01T01:00:00Z" + format: date-time + type: string + title: + description: The title of the incident that summarizes what happened. + example: "Imported incident from external system" + maxLength: 1024 + type: string + visibility: + $ref: "#/components/schemas/IncidentImportVisibility" + required: + - title + type: object + IncidentImportRequestData: + description: Incident data for an import request. + properties: + attributes: + $ref: "#/components/schemas/IncidentImportRequestAttributes" + relationships: + $ref: "#/components/schemas/IncidentImportRelationships" + type: + $ref: "#/components/schemas/IncidentType" + required: + - type + - attributes + type: object + IncidentImportResponse: + description: Response with an incident. + properties: + data: + $ref: "#/components/schemas/IncidentImportResponseData" + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentImportResponseIncludedItem" + readOnly: true + type: array + required: + - data + type: object + IncidentImportResponseAttributes: + description: The incident's attributes from an import response. + properties: + archived: + description: Timestamp when the incident was archived. + format: date-time + nullable: true + readOnly: true + type: string + case_id: + description: The incident case ID. + format: int64 + nullable: true + type: integer + created: + description: Timestamp when the incident was created. + example: "2025-01-01T00:00:00Z" + format: date-time + readOnly: true + type: string + created_by_uuid: + description: UUID of the user who created the incident. + nullable: true + type: string + creation_idempotency_key: + description: A unique key used to ensure idempotent incident creation. + nullable: true + type: string + customer_impact_end: + description: Timestamp when customers were no longer impacted by the incident. + format: date-time + nullable: true + type: string + customer_impact_scope: + description: A summary of the impact customers experienced during the incident. + example: "An example customer impact scope" + nullable: true + type: string + customer_impact_start: + description: Timestamp when customers began to be impacted by the incident. + format: date-time + nullable: true + type: string + declared: + description: Timestamp when the incident was declared. + example: "2025-01-01T00:00:00Z" + format: date-time + nullable: true + type: string + declared_by_uuid: + description: UUID of the user who declared the incident. + nullable: true + type: string + detected: + description: Timestamp when the incident was detected. + example: "2025-01-01T00:00:00Z" + format: date-time + nullable: true + type: string + fields: + additionalProperties: + $ref: "#/components/schemas/IncidentFieldAttributes" + description: A condensed view of the user-defined fields attached to incidents. + example: {"severity": {"type": "dropdown", "value": "SEV-5"}} + type: object + incident_type_uuid: + description: A unique identifier that represents an incident type. + example: "00000000-0000-0000-0000-000000000000" + type: string + is_test: + description: A flag indicating whether the incident is a test incident. + example: false + type: boolean + last_modified_by_uuid: + description: UUID of the user who last modified the incident. + nullable: true + type: string + modified: + description: Timestamp when the incident was last modified. + format: date-time + readOnly: true + type: string + non_datadog_creator: + $ref: "#/components/schemas/IncidentNonDatadogCreator" + notification_handles: + description: Notification handles that are notified of the incident during update. + items: + $ref: "#/components/schemas/IncidentNotificationHandle" + nullable: true + type: array + public_id: + description: The monotonically increasing integer ID for the incident. + example: 1 + format: int64 + type: integer + resolved: + description: Timestamp when the incident's state was last changed from active or stable to resolved or completed. + format: date-time + nullable: true + type: string + severity: + $ref: "#/components/schemas/IncidentSeverity" + state: + description: The state of the incident. + nullable: true + type: string + title: + description: The title of the incident that summarizes what happened. + example: "A test incident title" + type: string + visibility: + description: The incident visibility status. + nullable: true + type: string + required: + - title + type: object + IncidentImportResponseData: + description: Incident data from an import response. + properties: + attributes: + $ref: "#/components/schemas/IncidentImportResponseAttributes" + id: + description: The incident's ID. + example: "00000000-0000-0000-1234-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentImportResponseRelationships" + type: + $ref: "#/components/schemas/IncidentType" + required: + - id + - type + type: object + IncidentImportResponseIncludedItem: + description: An object related to an incident that is included in the response. + oneOf: + - $ref: "#/components/schemas/IncidentUserData" + - $ref: "#/components/schemas/IncidentTypeObject" + IncidentImportResponseRelationships: + description: The incident's relationships from an import response. + properties: + attachments: + $ref: "#/components/schemas/RelationshipToIncidentAttachment" + commander_user: + $ref: "#/components/schemas/NullableRelationshipToUser" + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + declared_by_user: + $ref: "#/components/schemas/RelationshipToUser" + impacts: + $ref: "#/components/schemas/RelationshipToIncidentImpacts" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + integrations: + $ref: "#/components/schemas/RelationshipToIncidentIntegrationMetadatas" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + responders: + $ref: "#/components/schemas/RelationshipToIncidentResponders" + user_defined_fields: + $ref: "#/components/schemas/RelationshipToIncidentUserDefinedFields" + type: object + IncidentImportVisibility: + default: organization + description: The visibility of the incident. + enum: + - organization + - private + example: organization + type: string + x-enum-varnames: + - ORGANIZATION + - PRIVATE + IncidentIntegrationMetadataAttributes: + description: Incident integration metadata's attributes for a create request. + properties: + created: + description: Timestamp when the incident todo was created. + format: date-time + readOnly: true + type: string + incident_id: + description: UUID of the incident this integration metadata is connected to. + example: "00000000-aaaa-0000-0000-000000000000" + type: string + integration_type: + description: |- + A number indicating the type of integration this metadata is for. 1 indicates Slack; + 7 indicates Microsoft Teams; + 8 indicates Jira. + example: 1 + format: int32 + maximum: 100 + type: integer + metadata: + $ref: "#/components/schemas/IncidentIntegrationMetadataMetadata" + modified: + description: Timestamp when the incident todo was last modified. + format: date-time + readOnly: true + type: string + status: + description: |- + A number indicating the status of this integration metadata. 0 indicates unknown; + 1 indicates pending; 2 indicates complete; 3 indicates manually created; + 4 indicates manually updated; 5 indicates failed. + format: int32 + maximum: 5 + type: integer + required: + - integration_type + - metadata + type: object + IncidentIntegrationMetadataCreateData: + description: Incident integration metadata data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentIntegrationMetadataAttributes" + type: + $ref: "#/components/schemas/IncidentIntegrationMetadataType" + required: + - type + - attributes + type: object + IncidentIntegrationMetadataCreateRequest: + description: Create request for an incident integration metadata. + properties: + data: + $ref: "#/components/schemas/IncidentIntegrationMetadataCreateData" + required: + - data + type: object + IncidentIntegrationMetadataListResponse: + description: Response with a list of incident integration metadata. + properties: + data: + description: An array of incident integration metadata. + items: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponseData" + type: array + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponseIncludedItem" + readOnly: true + type: array + meta: + $ref: "#/components/schemas/IncidentResponseMeta" + required: + - data + type: object + IncidentIntegrationMetadataMetadata: + description: Incident integration metadata's metadata attribute. + oneOf: + - $ref: "#/components/schemas/SlackIntegrationMetadata" + - $ref: "#/components/schemas/JiraIntegrationMetadata" + - $ref: "#/components/schemas/MSTeamsIntegrationMetadata" + IncidentIntegrationMetadataPatchData: + description: Incident integration metadata data for a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentIntegrationMetadataAttributes" + type: + $ref: "#/components/schemas/IncidentIntegrationMetadataType" + required: + - type + - attributes + type: object + IncidentIntegrationMetadataPatchRequest: + description: Patch request for an incident integration metadata. + properties: + data: + $ref: "#/components/schemas/IncidentIntegrationMetadataPatchData" + required: + - data + type: object + IncidentIntegrationMetadataResponse: + description: Response with an incident integration metadata. + properties: + data: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponseData" + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponseIncludedItem" + readOnly: true + type: array + required: + - data + type: object + IncidentIntegrationMetadataResponseData: + description: Incident integration metadata from a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentIntegrationMetadataAttributes" + id: + description: The incident integration metadata's ID. + example: "00000000-0000-0000-1234-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentIntegrationRelationships" + type: + $ref: "#/components/schemas/IncidentIntegrationMetadataType" + required: + - id + - type + type: object + IncidentIntegrationMetadataResponseIncludedItem: + description: An object related to an incident integration metadata that is included in the response. + oneOf: + - $ref: "#/components/schemas/User" + IncidentIntegrationMetadataType: + default: incident_integrations + description: Integration metadata resource type. + enum: + - incident_integrations + example: incident_integrations + type: string + x-enum-varnames: + - INCIDENT_INTEGRATIONS + IncidentIntegrationRelationships: + description: The incident's integration relationships from a response. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentNonDatadogCreator: + description: Incident's non Datadog creator. + nullable: true + properties: + image_48_px: + description: Non Datadog creator `48px` image. + type: string + name: + description: Non Datadog creator name. + type: string + type: object + IncidentNotificationHandle: + description: A notification handle that will be notified at incident creation. + properties: + display_name: + description: The name of the notified handle. + example: Jane Doe + type: string + handle: + description: The handle used for the notification. This includes an email address, Slack channel, or workflow. + example: "@test.user@test.com" + type: string + type: object + IncidentNotificationRule: + description: Response with a notification rule. + properties: + data: + $ref: "#/components/schemas/IncidentNotificationRuleResponseData" + included: + description: Related objects that are included in the response. + items: + $ref: "#/components/schemas/IncidentNotificationRuleIncludedItems" + type: array + required: + - data + type: object + IncidentNotificationRuleArray: + description: Response with notification rules. + properties: + data: + description: The `NotificationRuleArray` `data`. + items: + $ref: "#/components/schemas/IncidentNotificationRuleResponseData" + type: array + included: + description: Related objects that are included in the response. + items: + $ref: "#/components/schemas/IncidentNotificationRuleIncludedItems" + type: array + meta: + $ref: "#/components/schemas/IncidentNotificationRuleArrayMeta" + required: + - data + type: object + IncidentNotificationRuleArrayMeta: + description: Response metadata. + properties: + pagination: + $ref: "#/components/schemas/IncidentNotificationRuleArrayMetaPage" + type: object + IncidentNotificationRuleArrayMetaPage: + description: Pagination metadata. + properties: + next_offset: + description: The offset for the next page of results. + example: 15 + format: int64 + type: integer + offset: + description: The current offset in the results. + example: 0 + format: int64 + type: integer + size: + description: The number of results returned per page. + example: 15 + format: int64 + type: integer + type: object + IncidentNotificationRuleAttributes: + description: The notification rule's attributes. + properties: + conditions: + $ref: "#/components/schemas/IncidentNotificationRuleConditions" + created: + description: Timestamp when the notification rule was created. + example: "2025-01-15T10:30:00Z" + format: date-time + readOnly: true + type: string + enabled: + description: Whether the notification rule is enabled. + example: true + type: boolean + handles: + $ref: "#/components/schemas/IncidentNotificationRuleHandles" + modified: + description: Timestamp when the notification rule was last modified. + example: "2025-01-15T14:45:00Z" + format: date-time + readOnly: true + type: string + renotify_on: + $ref: "#/components/schemas/IncidentNotificationRuleRenotifyOn" + trigger: + description: The trigger event for this notification rule. + example: "incident_created_trigger" + type: string + visibility: + $ref: "#/components/schemas/IncidentNotificationRuleAttributesVisibility" + required: + - conditions + - handles + - visibility + - trigger + - enabled + - created + - modified + type: object + IncidentNotificationRuleAttributesVisibility: + description: The visibility of the notification rule. + enum: ["all", "organization", "private"] + example: "organization" + type: string + x-enum-varnames: + - ALL + - ORGANIZATION + - PRIVATE + IncidentNotificationRuleConditions: + description: The conditions that trigger this notification rule. + example: [{"field": "severity", "values": ["SEV-1", "SEV-2"]}] + items: + $ref: "#/components/schemas/IncidentNotificationRuleConditionsItems" + type: array + IncidentNotificationRuleConditionsItems: + description: A condition that must be met to trigger the notification rule. + properties: + field: + description: The incident field to evaluate + example: "severity" + type: string + values: + description: The value(s) to compare against. Multiple values are `ORed` together. + example: ["SEV-1", "SEV-2"] + items: + description: A value to compare against the incident field. + type: string + type: array + required: + - field + - values + type: object + IncidentNotificationRuleCreateAttributes: + description: The attributes for creating a notification rule. + properties: + conditions: + $ref: "#/components/schemas/IncidentNotificationRuleConditions" + enabled: + default: false + description: Whether the notification rule is enabled. + example: true + type: boolean + handles: + $ref: "#/components/schemas/IncidentNotificationRuleHandles" + renotify_on: + $ref: "#/components/schemas/IncidentNotificationRuleRenotifyOn" + trigger: + description: The trigger event for this notification rule. + example: "incident_created_trigger" + type: string + visibility: + $ref: "#/components/schemas/IncidentNotificationRuleCreateAttributesVisibility" + required: + - conditions + - handles + - trigger + type: object + IncidentNotificationRuleCreateAttributesVisibility: + description: The visibility of the notification rule. + enum: ["all", "organization", "private"] + example: "organization" + type: string + x-enum-varnames: + - ALL + - ORGANIZATION + - PRIVATE + IncidentNotificationRuleCreateData: + description: Notification rule data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationRuleCreateAttributes" + relationships: + $ref: "#/components/schemas/IncidentNotificationRuleCreateDataRelationships" + type: + $ref: "#/components/schemas/IncidentNotificationRuleType" + required: + - type + - attributes + type: object + IncidentNotificationRuleCreateDataRelationships: + description: The definition of `NotificationRuleCreateDataRelationships` object. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + notification_template: + $ref: "#/components/schemas/RelationshipToIncidentNotificationTemplate" + type: object + IncidentNotificationRuleHandles: + description: The notification handles (targets) for this rule. + example: ["@team-email@company.com", "@slack-channel"] + items: + description: A notification handle (email, Slack channel, etc.). + type: string + type: array + IncidentNotificationRuleIncludedItems: + description: Objects related to a notification rule. + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/IncidentTypeObject" + - $ref: "#/components/schemas/IncidentNotificationTemplateObject" + IncidentNotificationRuleRelationships: + description: The notification rule's resource relationships. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + notification_template: + $ref: "#/components/schemas/RelationshipToIncidentNotificationTemplate" + type: object + IncidentNotificationRuleRenotifyOn: + description: List of incident fields that trigger re-notification when changed. + example: ["status", "severity"] + items: + description: An incident field name. + type: string + type: array + IncidentNotificationRuleResponseData: + description: Notification rule data from a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationRuleAttributes" + id: + description: The unique identifier of the notification rule. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentNotificationRuleRelationships" + type: + $ref: "#/components/schemas/IncidentNotificationRuleType" + required: + - id + - type + type: object + IncidentNotificationRuleType: + description: Notification rules resource type. + enum: + - incident_notification_rules + example: incident_notification_rules + type: string + x-enum-varnames: + - INCIDENT_NOTIFICATION_RULES + IncidentNotificationRuleUpdateData: + description: Notification rule data for an update request. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationRuleCreateAttributes" + id: + description: The unique identifier of the notification rule. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentNotificationRuleCreateDataRelationships" + type: + $ref: "#/components/schemas/IncidentNotificationRuleType" + required: + - id + - type + - attributes + type: object + IncidentNotificationTemplate: + description: Response with a notification template. + properties: + data: + $ref: "#/components/schemas/IncidentNotificationTemplateResponseData" + included: + description: Related objects that are included in the response. + items: + $ref: "#/components/schemas/IncidentNotificationTemplateIncludedItems" + type: array + required: + - data + type: object + IncidentNotificationTemplateArray: + description: Response with notification templates. + properties: + data: + description: The `NotificationTemplateArray` `data`. + items: + $ref: "#/components/schemas/IncidentNotificationTemplateResponseData" + type: array + included: + description: Related objects that are included in the response. + items: + $ref: "#/components/schemas/IncidentNotificationTemplateIncludedItems" + type: array + meta: + $ref: "#/components/schemas/IncidentNotificationTemplateArrayMeta" + required: + - data + type: object + IncidentNotificationTemplateArrayMeta: + description: Response metadata. + properties: + page: + $ref: "#/components/schemas/IncidentNotificationTemplateArrayMetaPage" + type: object + IncidentNotificationTemplateArrayMetaPage: + description: Pagination metadata. + properties: + total_count: + description: Total number of notification templates. + example: 42 + format: int64 + type: integer + total_filtered_count: + description: Total number of notification templates matching the filter. + example: 15 + format: int64 + type: integer + type: object + IncidentNotificationTemplateAttributes: + description: The notification template's attributes. + properties: + category: + description: The category of the notification template. + example: "alert" + type: string + content: + description: The content body of the notification template. + example: "An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nAffected Services: {{incident.services}}\nStatus: {{incident.state}}\n\nPlease join the incident channel for updates." + type: string + created: + description: Timestamp when the notification template was created. + example: "2025-01-15T10:30:00Z" + format: date-time + readOnly: true + type: string + modified: + description: Timestamp when the notification template was last modified. + example: "2025-01-15T14:45:00Z" + format: date-time + readOnly: true + type: string + name: + description: The name of the notification template. + example: "Incident Alert Template" + type: string + subject: + description: The subject line of the notification template. + example: "{{incident.severity}} Incident: {{incident.title}}" + type: string + required: + - name + - subject + - content + - category + - created + - modified + type: object + IncidentNotificationTemplateCreateAttributes: + description: The attributes for creating a notification template. + properties: + category: + description: The category of the notification template. + example: "alert" + type: string + content: + description: The content body of the notification template. + example: "An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nAffected Services: {{incident.services}}\nStatus: {{incident.state}}\n\nPlease join the incident channel for updates." + type: string + name: + description: The name of the notification template. + example: "Incident Alert Template" + type: string + subject: + description: The subject line of the notification template. + example: "{{incident.severity}} Incident: {{incident.title}}" + type: string + required: + - name + - subject + - content + - category + type: object + IncidentNotificationTemplateCreateData: + description: Notification template data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationTemplateCreateAttributes" + relationships: + $ref: "#/components/schemas/IncidentNotificationTemplateCreateDataRelationships" + type: + $ref: "#/components/schemas/IncidentNotificationTemplateType" + required: + - type + - attributes + type: object + IncidentNotificationTemplateCreateDataRelationships: + description: The definition of `NotificationTemplateCreateDataRelationships` object. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + type: object + IncidentNotificationTemplateIncludedItems: + description: Objects related to a notification template. + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/IncidentTypeObject" + IncidentNotificationTemplateObject: + description: A notification template object for inclusion in other resources. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationTemplateAttributes" + id: + description: The unique identifier of the notification template. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentNotificationTemplateRelationships" + type: + $ref: "#/components/schemas/IncidentNotificationTemplateType" + required: + - id + - type + type: object + IncidentNotificationTemplateRelationships: + description: The notification template's resource relationships. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentNotificationTemplateResponseData: + description: Notification template data from a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationTemplateAttributes" + id: + description: The unique identifier of the notification template. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentNotificationTemplateRelationships" + type: + $ref: "#/components/schemas/IncidentNotificationTemplateType" + required: + - id + - type + type: object + IncidentNotificationTemplateType: + description: Notification templates resource type. + enum: + - notification_templates + example: notification_templates + type: string + x-enum-varnames: + - NOTIFICATION_TEMPLATES + IncidentNotificationTemplateUpdateAttributes: + description: The attributes to update on a notification template. + properties: + category: + description: The category of the notification template. + example: "update" + type: string + content: + description: The content body of the notification template. + example: "Incident Status Update:\n\nTitle: {{incident.title}}\nNew Status: {{incident.state}}\nSeverity: {{incident.severity}}\nServices: {{incident.services}}\nCommander: {{incident.commander}}\n\nFor more details, visit the incident page." + type: string + name: + description: The name of the notification template. + example: "Incident Status Update Template" + type: string + subject: + description: The subject line of the notification template. + example: "Incident Update: {{incident.title}} - {{incident.state}}" + type: string + type: object + IncidentNotificationTemplateUpdateData: + description: Notification template data for an update request. + properties: + attributes: + $ref: "#/components/schemas/IncidentNotificationTemplateUpdateAttributes" + id: + description: The unique identifier of the notification template. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentNotificationTemplateType" + required: + - id + - type + type: object + IncidentOnCallPageDataAttributesRequest: + description: Attributes for linking a page to an incident. + properties: + key: + description: The key of the on-call page. + example: PAGE-12345 + type: string + page_target: + $ref: "#/components/schemas/IncidentOnCallPageTarget" + team_id: + description: The team ID associated with the page (deprecated, use page_target instead). + example: team-abc-123 + type: string + type: object + IncidentOnCallPageDataRequest: + description: On-call page data in a link request. + properties: + attributes: + $ref: "#/components/schemas/IncidentOnCallPageDataAttributesRequest" + id: + description: The ID of the on-call page to link. + example: PAGE-12345 + type: string + type: + $ref: "#/components/schemas/IncidentOnCallPageType" + required: + - id + - type + type: object + IncidentOnCallPageLinkRequest: + description: Request payload for linking an on-call page to an incident. + properties: + data: + $ref: "#/components/schemas/IncidentOnCallPageDataRequest" + required: + - data + type: object + IncidentOnCallPageTarget: + description: The target of an on-call page. + properties: + identifier: + description: The identifier of the page target. + example: my-oncall-team + type: string + type: + description: The type of the page target. + example: team_handle + type: string + required: + - type + - identifier + type: object + IncidentOnCallPageType: + description: On-call page resource type. + enum: + - page + example: page + type: string + x-enum-varnames: + - PAGE + IncidentOrgSettingsDataAttributesResponse: + description: Attributes of an incident org settings resource in a response. + properties: + created: + description: Timestamp when the settings were created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + modified: + description: Timestamp when the settings were last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + settings: + $ref: "#/components/schemas/IncidentOrgSettingsMeta" + required: + - created + - modified + - settings + type: object + IncidentOrgSettingsDataResponse: + description: Incident org settings data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentOrgSettingsDataAttributesResponse" + id: + description: The org settings identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentOrgSettingsRelationships" + type: + $ref: "#/components/schemas/IncidentOrgSettingsType" + required: + - id + - type + - attributes + type: object + IncidentOrgSettingsListResponse: + description: Response with a list of incident org settings resources. + properties: + data: + description: List of incident org settings resources. + items: + $ref: "#/components/schemas/IncidentOrgSettingsDataResponse" + type: array + required: + - data + type: object + IncidentOrgSettingsMeta: + additionalProperties: {} + description: The settings configuration for an incident org settings resource. + example: + allow_anonymous_incident_declaration: false + allow_guest_incident_declaration: false + pagerduty_paging: true + private_incidents_by_default: false + type: object + IncidentOrgSettingsRelationships: + description: Relationships for an incident org settings resource. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + type: object + IncidentOrgSettingsResponse: + description: Response with a single incident org settings resource. + properties: + data: + $ref: "#/components/schemas/IncidentOrgSettingsDataResponse" + required: + - data + type: object + IncidentOrgSettingsType: + description: Incident org settings resource type. + enum: + - incident_org_settings + example: incident_org_settings + type: string + x-enum-varnames: + - INCIDENT_ORG_SETTINGS + IncidentPageRoleReference: + description: A reference to an incident role for a page. + properties: + id: + description: The role identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentPageRoleType" + required: + - type + - id + type: object + IncidentPageRoleType: + description: The type of incident role for a page. + enum: + - incident_user_defined_roles + - incident_reserved_roles + example: incident_user_defined_roles + type: string + x-enum-varnames: + - INCIDENT_USER_DEFINED_ROLES + - INCIDENT_RESERVED_ROLES + IncidentPageTarget: + description: The target recipient for a page. + properties: + identifier: + description: The identifier of the target (handle, UUID, or user UUID). + example: my-team-handle + type: string + type: + $ref: "#/components/schemas/IncidentPageTargetType" + required: + - type + - identifier + type: object + IncidentPageTargetType: + description: The type of target for a page request. + enum: + - team_handle + - team_uuid + - user_uuid + example: team_uuid + type: string + x-enum-varnames: + - TEAM_HANDLE + - TEAM_UUID + - USER_UUID + IncidentPageUUIDDataResponse: + description: Page UUID data in a response. + properties: + id: + description: The UUID of the created page. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentPageUUIDType" + required: + - id + - type + type: object + IncidentPageUUIDResponse: + description: Response with a page UUID. + properties: + data: + $ref: "#/components/schemas/IncidentPageUUIDDataResponse" + required: + - data + type: object + IncidentPageUUIDType: + description: Resource type for a page UUID response. + enum: + - page_uuid + example: page_uuid + type: string + x-enum-varnames: + - PAGE_UUID + IncidentPostmortemType: + default: incident_postmortems + description: Incident postmortem resource type. + enum: + - incident_postmortems + example: incident_postmortems + type: string + x-enum-varnames: + - INCIDENT_POSTMORTEMS + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentRelationshipData: + description: Incident relationship data + properties: + id: + description: Incident identifier + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentResourceType" + required: + - type + - id + type: object + IncidentResourceType: + description: Incident resource type + enum: + - incidents + example: incidents + type: string + x-enum-varnames: + - INCIDENTS + IncidentResponderDataAttributesResponse: + description: Attributes of an incident responder in a response. + properties: + created: + description: Timestamp when the responder was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + external_id: + description: The external ID of the responder. + example: + nullable: true + type: string + external_source: + description: The external source of the responder. + example: + nullable: true + type: string + is_billable: + description: Whether this responder counts toward billing. + example: true + type: boolean + last_active: + description: Timestamp when the responder was last active. + example: "2024-01-01T00:00:00.000Z" + format: date-time + nullable: true + type: string + meta: + additionalProperties: {} + description: Additional metadata for the responder. + nullable: true + type: object + modified: + description: Timestamp when the responder was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + required: + - created + - modified + - is_billable + type: object + IncidentResponderDataRequest: + description: Incident responder data in a create request. + properties: + relationships: + $ref: "#/components/schemas/IncidentResponderRelationshipsRequest" + type: + $ref: "#/components/schemas/IncidentResponderType" + required: + - type + - relationships + type: object + IncidentResponderDataResponse: + description: Incident responder data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentResponderDataAttributesResponse" + id: + description: The responder identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentResponderRelationships" + type: + $ref: "#/components/schemas/IncidentResponderType" + required: + - id + - type + - attributes + type: object + IncidentResponderRelationships: + description: Relationships for an incident responder. + properties: + created_by: + $ref: "#/components/schemas/RelationshipToUser" + last_modified_by: + $ref: "#/components/schemas/RelationshipToUser" + role_assignments: + $ref: "#/components/schemas/IncidentResponderRoleAssignmentsRelationship" + user: + $ref: "#/components/schemas/NullableRelationshipToUser" + type: object + IncidentResponderRelationshipsRequest: + description: Relationships for creating an incident responder. + properties: + user: + $ref: "#/components/schemas/IncidentResponderUserRelationship" + required: + - user + type: object + IncidentResponderRequest: + description: Request payload for creating an incident responder. + properties: + data: + $ref: "#/components/schemas/IncidentResponderDataRequest" + required: + - data + type: object + IncidentResponderResponse: + description: Response with a single incident responder. + properties: + data: + $ref: "#/components/schemas/IncidentResponderDataResponse" + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentResponderRoleAssignmentRelationshipData: + description: A single role assignment relationship data object. + properties: + id: + description: The role assignment identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + description: The role assignment resource type. + example: incident_role_assignments + type: string + required: + - id + - type + type: object + IncidentResponderRoleAssignmentsRelationship: + description: Relationship to role assignments for a responder. + properties: + data: + description: List of role assignment relationship data. + items: + $ref: "#/components/schemas/IncidentResponderRoleAssignmentRelationshipData" + type: array + type: object + IncidentResponderType: + description: Incident responder resource type. + enum: + - incident_responders + example: incident_responders + type: string + x-enum-varnames: + - INCIDENT_RESPONDERS + IncidentResponderUserRelationship: + description: Relationship to a user for a responder create request. + properties: + data: + $ref: "#/components/schemas/IncidentResponderUserRelationshipData" + required: + - data + type: object + IncidentResponderUserRelationshipData: + description: A user relationship data object for creating a responder. + properties: + id: + description: The user identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + description: The user resource type. + example: users + type: string + required: + - id + - type + type: object + IncidentRespondersResponse: + description: Response with a list of incident responders. + properties: + data: + description: List of incident responders. + items: + $ref: "#/components/schemas/IncidentResponderDataResponse" + type: array + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentRespondersType: + description: The incident responders type. + enum: + - incident_responders + example: incident_responders + type: string + x-enum-varnames: + - INCIDENT_RESPONDERS + IncidentResponse: + description: Response with an incident. + properties: + data: + $ref: "#/components/schemas/IncidentResponseData" + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentResponseIncludedItem" + readOnly: true + type: array + required: + - data + type: object + IncidentResponseAttributes: + additionalProperties: {} + description: The incident's attributes from a response. + properties: + archived: + description: Timestamp of when the incident was archived. + format: date-time + nullable: true + readOnly: true + type: string + case_id: + description: The incident case id. + format: int64 + nullable: true + type: integer + created: + description: Timestamp when the incident was created. + format: date-time + readOnly: true + type: string + customer_impact_duration: + description: |- + Length of the incident's customer impact in seconds. + Equals the difference between `customer_impact_start` and `customer_impact_end`. + format: int64 + readOnly: true + type: integer + customer_impact_end: + description: Timestamp when customers were no longer impacted by the incident. + format: date-time + nullable: true + type: string + customer_impact_scope: + description: A summary of the impact customers experienced during the incident. + example: "An example customer impact scope" + nullable: true + type: string + customer_impact_start: + description: Timestamp when customers began being impacted by the incident. + format: date-time + nullable: true + type: string + customer_impacted: + description: A flag indicating whether the incident caused customer impact. + example: false + type: boolean + declared: + description: Timestamp when the incident was declared. + format: date-time + readOnly: true + type: string + declared_by: + $ref: "#/components/schemas/IncidentNonDatadogCreator" + declared_by_uuid: + description: UUID of the user who declared the incident. + nullable: true + type: string + detected: + description: Timestamp when the incident was detected. + format: date-time + nullable: true + type: string + fields: + additionalProperties: + $ref: "#/components/schemas/IncidentFieldAttributes" + description: A condensed view of the user-defined fields attached to incidents. + example: {"severity": {"type": "dropdown", "value": "SEV-5"}} + type: object + incident_type_uuid: + description: A unique identifier that represents an incident type. + example: "00000000-0000-0000-0000-000000000000" + type: string + is_test: + description: A flag indicating whether the incident is a test incident. + example: false + type: boolean + modified: + description: Timestamp when the incident was last modified. + format: date-time + readOnly: true + type: string + non_datadog_creator: + $ref: "#/components/schemas/IncidentNonDatadogCreator" + notification_handles: + description: Notification handles that will be notified of the incident during update. + example: [{"display_name": "Jane Doe", "handle": "@user@email.com"}, {"display_name": "Slack Channel", "handle": "@slack-channel"}, {"display_name": "Incident Workflow", "handle": "@workflow-from-incident"}] + items: + $ref: "#/components/schemas/IncidentNotificationHandle" + nullable: true + type: array + public_id: + description: The monotonically increasing integer ID for the incident. + example: 1 + format: int64 + type: integer + resolved: + description: |- + Timestamp when the incident's state was last changed from active or stable to resolved or completed. + format: date-time + nullable: true + type: string + severity: + $ref: "#/components/schemas/IncidentSeverity" + state: + description: The state incident. + nullable: true + type: string + time_to_detect: + description: |- + The amount of time in seconds to detect the incident. + Equals the difference between `customer_impact_start` and `detected`. + format: int64 + readOnly: true + type: integer + time_to_internal_response: + description: >- + The amount of time in seconds to call incident after detection. Equals the difference of `detected` and `created`. + format: int64 + readOnly: true + type: integer + time_to_repair: + description: >- + The amount of time in seconds to resolve customer impact after detecting the issue. Equals the difference between `customer_impact_end` and `detected`. + format: int64 + readOnly: true + type: integer + time_to_resolve: + description: >- + The amount of time in seconds to resolve the incident after it was created. Equals the difference between `created` and `resolved`. + format: int64 + readOnly: true + type: integer + title: + description: The title of the incident, which summarizes what happened. + example: "A test incident title" + type: string + visibility: + description: The incident visibility status. + nullable: true + type: string + required: + - title + type: object + IncidentResponseData: + description: Incident data from a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentResponseAttributes" + id: + description: The incident's ID. + example: "00000000-0000-0000-1234-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentResponseRelationships" + type: + $ref: "#/components/schemas/IncidentType" + required: + - id + - type + type: object + IncidentResponseIncludedItem: + description: An object related to an incident that is included in the response. + oneOf: + - $ref: "#/components/schemas/IncidentUserData" + - $ref: "#/components/schemas/AttachmentData" + IncidentResponseMeta: + description: The metadata object containing pagination metadata. + properties: + pagination: + $ref: "#/components/schemas/IncidentResponseMetaPagination" + readOnly: true + type: object + IncidentResponseMetaPagination: + description: Pagination properties. + properties: + next_offset: + description: The index of the first element in the next page of results. Equal to page size added to the current offset. + example: 1000 + format: int64 + type: integer + offset: + description: The index of the first element in the results. + example: 10 + format: int64 + type: integer + size: + description: Maximum size of pages to return. + example: 1000 + format: int64 + type: integer + type: object + IncidentResponseRelationships: + description: The incident's relationships from a response. + properties: + attachments: + $ref: "#/components/schemas/RelationshipToIncidentAttachment" + commander_user: + $ref: "#/components/schemas/NullableRelationshipToUser" + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + declared_by_user: + $ref: "#/components/schemas/RelationshipToUser" + impacts: + $ref: "#/components/schemas/RelationshipToIncidentImpacts" + integrations: + $ref: "#/components/schemas/RelationshipToIncidentIntegrationMetadatas" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + responders: + $ref: "#/components/schemas/RelationshipToIncidentResponders" + user_defined_fields: + $ref: "#/components/schemas/RelationshipToIncidentUserDefinedFields" + type: object + IncidentRuleCondition: + description: A condition for an incident rule. + properties: + field: + description: The field to match on. + example: severity + type: string + values: + description: The values to match. + example: + - SEV-1 + - SEV-2 + items: + type: string + type: array + required: + - field + - values + type: object + IncidentRuleDataAttributesRequest: + description: Attributes for creating an incident rule. + properties: + condition: + $ref: "#/components/schemas/IncidentRuleQueryCondition" + condition_table_type: + description: "The condition table type. 1 = raw query." + example: 1 + format: int64 + type: integer + conditions: + description: List of field-based conditions. + items: + $ref: "#/components/schemas/IncidentRuleCondition" + type: array + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + execution_type: + $ref: "#/components/schemas/IncidentRuleExecutionType" + incident_type_uuid: + description: The UUID of the incident type this rule applies to. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + nullable: true + type: string + match_any_condition: + description: Whether any condition (OR logic) should match instead of all (AND logic). + example: false + type: boolean + task_id: + $ref: "#/components/schemas/IncidentRuleTaskIDType" + task_payload: + description: The JSON-encoded payload for the task. + example: "{}" + type: string + trigger: + $ref: "#/components/schemas/IncidentRuleTriggerType" + required: + - execution_type + - condition_table_type + - condition + - task_id + - task_payload + - enabled + type: object + IncidentRuleDataAttributesResponse: + description: Attributes of an incident rule in a response. + properties: + condition: + $ref: "#/components/schemas/IncidentRuleQueryCondition" + condition_table_type: + description: The condition table type. + example: 1 + format: int64 + type: integer + conditions: + description: List of field-based conditions. + items: + $ref: "#/components/schemas/IncidentRuleCondition" + type: array + created: + description: Timestamp when the rule was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + created_by_uuid: + description: UUID of the user who created the rule. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + deleted: + description: Timestamp when the rule was deleted. + example: + format: date-time + nullable: true + type: string + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + execution_type: + description: The execution type of the rule. + example: 1 + format: int64 + type: integer + incident_settings_association_uuid: + description: The incident settings association UUID. + example: + format: uuid + nullable: true + type: string + match_any_condition: + description: Whether any condition should match. + example: false + type: boolean + modified: + description: Timestamp when the rule was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + modified_by_uuid: + description: UUID of the user who last modified the rule. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + org_id: + description: The organization ID. + example: 123456 + format: int64 + type: integer + task_id: + description: The task ID. + example: notify-incident-handles-job + nullable: true + type: string + task_payload: + description: The JSON-encoded task payload. + example: "{}" + nullable: true + type: string + trigger: + description: The trigger event for the rule. + example: incident_created_trigger + type: string + type: object + IncidentRuleDataRequest: + description: Incident rule data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentRuleDataAttributesRequest" + type: + $ref: "#/components/schemas/IncidentRuleType" + required: + - type + - attributes + type: object + IncidentRuleDataResponse: + description: Incident rule data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentRuleDataAttributesResponse" + id: + description: The rule identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentRuleResponseType" + required: + - id + - type + - attributes + type: object + IncidentRuleExecutionType: + description: The execution type of an incident rule. + enum: + - 1 + - 2 + example: 1 + format: int64 + type: integer + x-enum-varnames: + - SINGLE_EXECUTION + - MULTI_EXECUTION + IncidentRulePatchDataAttributesRequest: + description: Attributes for patching an incident rule. All fields are optional. + properties: + condition: + $ref: "#/components/schemas/IncidentRuleQueryCondition" + conditions: + description: List of field-based conditions. + items: + $ref: "#/components/schemas/IncidentRuleCondition" + type: array + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + task_payload: + description: The JSON-encoded payload for the task. + example: "{}" + type: string + trigger: + $ref: "#/components/schemas/IncidentRuleTriggerType" + type: object + IncidentRulePatchDataRequest: + description: Incident rule data in a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentRulePatchDataAttributesRequest" + id: + description: The rule identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentRuleType" + required: + - id + - type + type: object + IncidentRulePatchRequest: + description: Request payload for patching an incident rule. + properties: + data: + $ref: "#/components/schemas/IncidentRulePatchDataRequest" + required: + - data + type: object + IncidentRuleQueryCondition: + description: A query-based condition for an incident rule. + properties: + normalized_query: + description: The normalized query string. + example: "severity:SEV-1" + nullable: true + type: string + raw_query: + description: The raw query string. + example: "severity:SEV-1" + nullable: true + type: string + type: object + IncidentRuleRequest: + description: Request payload for creating an incident rule. + properties: + data: + $ref: "#/components/schemas/IncidentRuleDataRequest" + required: + - data + type: object + IncidentRuleResponse: + description: Response with a single incident rule. + properties: + data: + $ref: "#/components/schemas/IncidentRuleDataResponse" + required: + - data + type: object + IncidentRuleResponseType: + description: Incident rule response resource type. + enum: + - incidents_rules + example: incidents_rules + type: string + x-enum-varnames: + - INCIDENTS_RULES + IncidentRuleTaskIDType: + description: The task ID for an incident rule. + enum: + - jira-create-issue-job + - notify-incident-handles-job + - servicenow-create-incident-job + - slack-create-channel-job + - zoom-create-meeting-job + - google-meet-create-meeting-job + - workflow-automation-job + - ms-teams-create-meeting-job + - google-chat-create-space-job + - zoom-suppress-summarization-job + - ms-teams-suppress-summarization-job + - google-meet-suppress-summarization-job + example: notify-incident-handles-job + type: string + x-enum-varnames: + - JIRA_CREATE_ISSUE_JOB + - NOTIFY_INCIDENT_HANDLES_JOB + - SERVICENOW_CREATE_INCIDENT_JOB + - SLACK_CREATE_CHANNEL_JOB + - ZOOM_CREATE_MEETING_JOB + - GOOGLE_MEET_CREATE_MEETING_JOB + - WORKFLOW_AUTOMATION_JOB + - MS_TEAMS_CREATE_MEETING_JOB + - GOOGLE_CHAT_CREATE_SPACE_JOB + - ZOOM_SUPPRESS_SUMMARIZATION_JOB + - MS_TEAMS_SUPPRESS_SUMMARIZATION_JOB + - GOOGLE_MEET_SUPPRESS_SUMMARIZATION_JOB + IncidentRuleTriggerType: + description: The trigger event for an incident rule. + enum: + - incident_saved_trigger + - incident_created_trigger + - incident_modified_trigger + example: incident_created_trigger + type: string + x-enum-varnames: + - INCIDENT_SAVED_TRIGGER + - INCIDENT_CREATED_TRIGGER + - INCIDENT_MODIFIED_TRIGGER + IncidentRuleType: + description: Incident rule resource type. + enum: + - incident_rules + example: incident_rules + type: string + x-enum-varnames: + - INCIDENT_RULES + IncidentRulesResponse: + description: Response with a list of incident rules. + properties: + data: + description: List of incident rules. + items: + $ref: "#/components/schemas/IncidentRuleDataResponse" + type: array + required: + - data + type: object + IncidentSearchResponse: + description: Response with incidents and facets. + properties: + data: + $ref: "#/components/schemas/IncidentSearchResponseData" + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentResponseIncludedItem" + readOnly: true + type: array + meta: + $ref: "#/components/schemas/IncidentSearchResponseMeta" + required: + - data + type: object + IncidentSearchResponseAttributes: + description: Attributes returned by an incident search. + properties: + facets: + $ref: "#/components/schemas/IncidentSearchResponseFacetsData" + incidents: + description: Incidents returned by the search. + items: + $ref: "#/components/schemas/IncidentSearchResponseIncidentsData" + type: array + total: + description: Number of incidents returned by the search. + example: 10 + format: int32 + maximum: 2147483647 + type: integer + required: + - facets + - incidents + - total + type: object + IncidentSearchResponseData: + description: Data returned by an incident search. + properties: + attributes: + $ref: "#/components/schemas/IncidentSearchResponseAttributes" + type: + $ref: "#/components/schemas/IncidentSearchResultsType" + type: object + IncidentSearchResponseFacetCount: + description: Count of the facet value appearing in search results. + example: 5 + format: int32 + maximum: 2147483647 + type: integer + IncidentSearchResponseFacetsData: + description: Facet data for incidents returned by a search query. + properties: + commander: + description: Facet data for incident commander users. + items: + $ref: "#/components/schemas/IncidentSearchResponseUserFacetData" + type: array + created_by: + description: Facet data for incident creator users. + items: + $ref: "#/components/schemas/IncidentSearchResponseUserFacetData" + type: array + fields: + description: Facet data for incident property fields. + items: + $ref: "#/components/schemas/IncidentSearchResponsePropertyFieldFacetData" + type: array + impact: + description: Facet data for incident impact attributes. + items: + $ref: "#/components/schemas/IncidentSearchResponseFieldFacetData" + type: array + last_modified_by: + description: Facet data for incident last modified by users. + items: + $ref: "#/components/schemas/IncidentSearchResponseUserFacetData" + type: array + postmortem: + description: Facet data for incident postmortem existence. + items: + $ref: "#/components/schemas/IncidentSearchResponseFieldFacetData" + type: array + responder: + description: Facet data for incident responder users. + items: + $ref: "#/components/schemas/IncidentSearchResponseUserFacetData" + type: array + severity: + description: Facet data for incident severity attributes. + items: + $ref: "#/components/schemas/IncidentSearchResponseFieldFacetData" + type: array + state: + description: Facet data for incident state attributes. + items: + $ref: "#/components/schemas/IncidentSearchResponseFieldFacetData" + type: array + time_to_repair: + description: Facet data for incident time to repair metrics. + items: + $ref: "#/components/schemas/IncidentSearchResponseNumericFacetData" + type: array + time_to_resolve: + description: Facet data for incident time to resolve metrics. + items: + $ref: "#/components/schemas/IncidentSearchResponseNumericFacetData" + type: array + type: object + IncidentSearchResponseFieldFacetData: + description: Facet value and number of occurrences for a property field of an incident. + properties: + count: + $ref: "#/components/schemas/IncidentSearchResponseFacetCount" + name: + description: The facet value appearing in search results. + example: SEV-2 + type: string + type: object + IncidentSearchResponseIncidentsData: + description: Incident returned by the search. + properties: + data: + $ref: "#/components/schemas/IncidentResponseData" + required: + - data + type: object + IncidentSearchResponseMeta: + description: The metadata object containing pagination metadata. + properties: + pagination: + $ref: "#/components/schemas/IncidentResponseMetaPagination" + readOnly: true + type: object + IncidentSearchResponseNumericFacetData: + description: Facet data numeric attributes of an incident. + properties: + aggregates: + $ref: "#/components/schemas/IncidentSearchResponseNumericFacetDataAggregates" + name: + description: Name of the incident property field. + example: time_to_repair + type: string + required: + - name + - aggregates + type: object + IncidentSearchResponseNumericFacetDataAggregates: + description: Aggregate information for numeric incident data. + properties: + max: + description: Maximum value of the numeric aggregates. + example: 1234.0 + format: double + nullable: true + type: number + min: + description: Minimum value of the numeric aggregates. + example: 20.0 + format: double + nullable: true + type: number + type: object + IncidentSearchResponsePropertyFieldFacetData: + description: Facet data for the incident property fields. + properties: + aggregates: + $ref: "#/components/schemas/IncidentSearchResponseNumericFacetDataAggregates" + facets: + description: Facet data for the property field of an incident. + items: + $ref: "#/components/schemas/IncidentSearchResponseFieldFacetData" + type: array + name: + description: Name of the incident property field. + example: Severity + type: string + required: + - facets + - name + type: object + IncidentSearchResponseUserFacetData: + description: Facet data for user attributes of an incident. + properties: + count: + $ref: "#/components/schemas/IncidentSearchResponseFacetCount" + email: + description: Email of the user. + example: datadog.user@example.com + type: string + handle: + description: Handle of the user. + example: "@datadog.user@example.com" + type: string + name: + description: Name of the user. + example: Datadog User + type: string + uuid: + description: ID of the user. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + type: string + type: object + IncidentSearchResultsType: + default: incidents_search_results + description: Incident search result type. + enum: + - incidents_search_results + example: incidents_search_results + type: string + x-enum-varnames: + - INCIDENTS_SEARCH_RESULTS + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - -created + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + IncidentServiceNowRecordDataAttributesRequest: + description: Attributes for creating a ServiceNow record for an incident. + properties: + assignment_group: + description: The ServiceNow assignment group. + example: IT Support + type: string + configuration_item_mapping: + description: The ServiceNow configuration item mapping. + example: my-service + type: string + instance_name: + description: The ServiceNow instance name. + example: my-instance + type: string + record_id: + description: An existing ServiceNow record ID (Sys ID) to link instead of creating a new record. + example: abc123def456 + type: string + required: + - instance_name + - assignment_group + - configuration_item_mapping + type: object + IncidentServiceNowRecordDataRequest: + description: ServiceNow record data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentServiceNowRecordDataAttributesRequest" + type: + $ref: "#/components/schemas/IncidentServiceNowRecordPromptType" + required: + - type + - attributes + type: object + IncidentServiceNowRecordPromptType: + description: ServiceNow record prompt resource type. + enum: + - incident_servicenow_record_prompt + example: incident_servicenow_record_prompt + type: string + x-enum-varnames: + - INCIDENT_SERVICENOW_RECORD_PROMPT + IncidentServiceNowRecordRequest: + description: Request payload for creating a ServiceNow record for an incident. + properties: + data: + $ref: "#/components/schemas/IncidentServiceNowRecordDataRequest" + required: + - data + type: object + IncidentSeverity: + description: The incident severity. + enum: + - UNKNOWN + - SEV-0 + - SEV-1 + - SEV-2 + - SEV-3 + - SEV-4 + - SEV-5 + example: UNKNOWN + type: string + x-enum-varnames: + - UNKNOWN + - SEV_0 + - SEV_1 + - SEV_2 + - SEV_3 + - SEV_4 + - SEV_5 + IncidentTimelineCellCreateAttributes: + description: The timeline cell's attributes for a create request. + oneOf: + - $ref: "#/components/schemas/IncidentTimelineCellMarkdownCreateAttributes" + IncidentTimelineCellMarkdownContentType: + default: markdown + description: Type of the Markdown timeline cell. + enum: + - markdown + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + IncidentTimelineCellMarkdownCreateAttributes: + description: Timeline cell data for Markdown timeline cells for a create request. + properties: + cell_type: + $ref: "#/components/schemas/IncidentTimelineCellMarkdownContentType" + content: + $ref: "#/components/schemas/IncidentTimelineCellMarkdownCreateAttributesContent" + important: + default: false + description: A flag indicating whether the timeline cell is important and should be highlighted. + example: false + type: boolean + required: + - content + - cell_type + type: object + IncidentTimelineCellMarkdownCreateAttributesContent: + description: The Markdown timeline cell contents. + properties: + content: + description: The Markdown content of the cell. + example: "An example timeline cell message." + nullable: false + type: string + type: object + IncidentTimestampOverrideDataAttributesRequest: + description: Attributes for creating a timestamp override. + properties: + timestamp_type: + $ref: "#/components/schemas/IncidentTimestampType" + timestamp_value: + description: The overridden timestamp value. + example: "2024-01-01T10:00:00.000Z" + format: date-time + type: string + required: + - timestamp_type + - timestamp_value + type: object + IncidentTimestampOverrideDataAttributesResponse: + description: Attributes of a timestamp override in a response. + properties: + created_at: + description: Timestamp when the override was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + deleted_at: + description: Timestamp when the override was deleted. + example: + format: date-time + nullable: true + type: string + incident_id: + description: The incident identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + modified_at: + description: Timestamp when the override was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + timestamp_type: + $ref: "#/components/schemas/IncidentTimestampType" + timestamp_value: + description: The overridden timestamp value. + example: "2024-01-01T10:00:00.000Z" + format: date-time + type: string + required: + - incident_id + - timestamp_type + - timestamp_value + - created_at + - modified_at + type: object + IncidentTimestampOverrideDataRequest: + description: Timestamp override data in a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentTimestampOverrideDataAttributesRequest" + type: + $ref: "#/components/schemas/IncidentTimestampOverrideType" + required: + - type + - attributes + type: object + IncidentTimestampOverrideDataResponse: + description: Timestamp override data in a response. + properties: + attributes: + $ref: "#/components/schemas/IncidentTimestampOverrideDataAttributesResponse" + id: + description: The timestamp override identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentTimestampOverrideRelationships" + type: + $ref: "#/components/schemas/IncidentTimestampOverrideType" + required: + - id + - type + - attributes + type: object + IncidentTimestampOverridePatchDataAttributesRequest: + description: Attributes for patching a timestamp override. + properties: + timestamp_value: + description: The overridden timestamp value. + example: "2024-01-01T10:00:00.000Z" + format: date-time + type: string + required: + - timestamp_value + type: object + IncidentTimestampOverridePatchDataRequest: + description: Timestamp override data in a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentTimestampOverridePatchDataAttributesRequest" + id: + description: The timestamp override identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentTimestampOverrideType" + required: + - id + - type + type: object + IncidentTimestampOverridePatchRequest: + description: Request payload for patching a timestamp override. + properties: + data: + $ref: "#/components/schemas/IncidentTimestampOverridePatchDataRequest" + required: + - data + type: object + IncidentTimestampOverrideRelationships: + description: Relationships for a timestamp override. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentTimestampOverrideRequest: + description: Request payload for creating a timestamp override. + properties: + data: + $ref: "#/components/schemas/IncidentTimestampOverrideDataRequest" + required: + - data + type: object + IncidentTimestampOverrideResponse: + description: Response with a single timestamp override. + properties: + data: + $ref: "#/components/schemas/IncidentTimestampOverrideDataResponse" + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentTimestampOverrideType: + description: Incident timestamp override resource type. + enum: + - incidents_timestamp_overrides + example: incidents_timestamp_overrides + type: string + x-enum-varnames: + - INCIDENTS_TIMESTAMP_OVERRIDES + IncidentTimestampOverridesResponse: + description: Response with a list of timestamp overrides. + properties: + data: + description: List of timestamp overrides. + items: + $ref: "#/components/schemas/IncidentTimestampOverrideDataResponse" + type: array + included: + description: Included related resources. + items: + $ref: "#/components/schemas/IncidentUserData" + readOnly: true + type: array + required: + - data + type: object + IncidentTimestampType: + description: The type of timestamp to override. + enum: + - detected + - resolved + - declared + example: detected + type: string + x-enum-varnames: + - DETECTED + - RESOLVED + - DECLARED + IncidentTodoAnonymousAssignee: + description: Anonymous assignee entity. + properties: + icon: + description: URL for assignee's icon. + example: https://a.slack-edge.com/80588/img/slackbot_48.png + type: string + id: + description: Anonymous assignee's ID. + example: USLACKBOT + type: string + name: + description: Assignee's name. + example: Slackbot + type: string + source: + $ref: "#/components/schemas/IncidentTodoAnonymousAssigneeSource" + required: + - id + - icon + - name + - source + type: object + IncidentTodoAnonymousAssigneeSource: + default: slack + description: The source of the anonymous assignee. + enum: + - slack + - microsoft_teams + example: slack + type: string + x-enum-varnames: + - SLACK + - MICROSOFT_TEAMS + IncidentTodoAssignee: + description: A todo assignee. + example: "@test.user@test.com" + oneOf: + - $ref: "#/components/schemas/IncidentTodoAssigneeHandle" + - $ref: "#/components/schemas/IncidentTodoAnonymousAssignee" + IncidentTodoAssigneeArray: + description: Array of todo assignees. + example: + - "@test.user@test.com" + items: + $ref: "#/components/schemas/IncidentTodoAssignee" + type: array + IncidentTodoAssigneeHandle: + description: Assignee's @-handle. + example: "@test.user@test.com" + type: string + IncidentTodoAttributes: + description: Incident todo's attributes. + properties: + assignees: + $ref: "#/components/schemas/IncidentTodoAssigneeArray" + completed: + description: Timestamp when the todo was completed. + example: "2023-03-06T22:00:00.000000+00:00" + nullable: true + type: string + content: + description: The follow-up task's content. + example: Restore lost data. + type: string + created: + description: Timestamp when the incident todo was created. + format: date-time + readOnly: true + type: string + due_date: + description: Timestamp when the todo should be completed by. + example: "2023-07-10T05:00:00.000000+00:00" + nullable: true + type: string + incident_id: + description: UUID of the incident this todo is connected to. + example: "00000000-aaaa-0000-0000-000000000000" + type: string + modified: + description: Timestamp when the incident todo was last modified. + format: date-time + readOnly: true + type: string + required: + - content + - assignees + type: object + IncidentTodoCreateData: + description: Incident todo data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentTodoAttributes" + type: + $ref: "#/components/schemas/IncidentTodoType" + required: + - type + - attributes + type: object + IncidentTodoCreateRequest: + description: Create request for an incident todo. + properties: + data: + $ref: "#/components/schemas/IncidentTodoCreateData" + required: + - data + type: object + IncidentTodoListResponse: + description: Response with a list of incident todos. + properties: + data: + description: An array of incident todos. + items: + $ref: "#/components/schemas/IncidentTodoResponseData" + type: array + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentTodoResponseIncludedItem" + readOnly: true + type: array + meta: + $ref: "#/components/schemas/IncidentResponseMeta" + required: + - data + type: object + IncidentTodoPatchData: + description: Incident todo data for a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentTodoAttributes" + type: + $ref: "#/components/schemas/IncidentTodoType" + required: + - type + - attributes + type: object + IncidentTodoPatchRequest: + description: Patch request for an incident todo. + properties: + data: + $ref: "#/components/schemas/IncidentTodoPatchData" + required: + - data + type: object + IncidentTodoRelationships: + description: The incident's relationships from a response. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentTodoResponse: + description: Response with an incident todo. + properties: + data: + $ref: "#/components/schemas/IncidentTodoResponseData" + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentTodoResponseIncludedItem" + readOnly: true + type: array + required: + - data + type: object + IncidentTodoResponseData: + description: Incident todo response data. + properties: + attributes: + $ref: "#/components/schemas/IncidentTodoAttributes" + id: + description: The incident todo's ID. + example: "00000000-0000-0000-1234-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentTodoRelationships" + type: + $ref: "#/components/schemas/IncidentTodoType" + required: + - id + - type + type: object + IncidentTodoResponseIncludedItem: + description: An object related to an incident todo that is included in the response. + oneOf: + - $ref: "#/components/schemas/User" + IncidentTodoType: + default: incident_todos + description: Todo resource type. + enum: + - incident_todos + example: incident_todos + type: string + x-enum-varnames: + - INCIDENT_TODOS + IncidentTrigger: + description: "Trigger a workflow from an Incident. For automatic triggering a handle must be configured and the workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + IncidentTriggerWrapper: + description: "Schema for an Incident-based trigger." + properties: + incidentTrigger: + $ref: "#/components/schemas/IncidentTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - incidentTrigger + type: object + IncidentType: + default: incidents + description: Incident resource type. + enum: + - incidents + example: incidents + type: string + x-enum-varnames: + - INCIDENTS + IncidentTypeAttributes: + description: Incident type's attributes. + properties: + configuration: + $ref: "#/components/schemas/IncidentTypeConfiguration" + readOnly: true + createdAt: + description: Timestamp when the incident type was created. + format: date-time + readOnly: true + type: string + createdBy: + description: A unique identifier that represents the user that created the incident type. + example: "00000000-0000-0000-0000-000000000000" + readOnly: true + type: string + description: + description: Text that describes the incident type. + example: "Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data." + type: string + is_default: + default: false + description: If true, this incident type will be used as the default incident type if a type is not specified during the creation of incident resources. + example: false + type: boolean + lastModifiedBy: + description: A unique identifier that represents the user that last modified the incident type. + example: "00000000-0000-0000-0000-000000000000" + readOnly: true + type: string + modifiedAt: + description: Timestamp when the incident type was last modified. + format: date-time + readOnly: true + type: string + name: + description: The name of the incident type. + example: "Security Incident" + type: string + prefix: + description: The string that will be prepended to the incident title across the Datadog app. + example: "IR" + readOnly: true + type: string + required: + - name + type: object + IncidentTypeConfiguration: + description: >- + The incident-type-scoped behavior settings. All fields are optional on update. Any field omitted from a PATCH request keeps its current value. This object is read-only on the incident type resource itself and is only mutated through the update (PATCH) endpoint. + properties: + allow_incident_deletion: + default: false + description: Whether incidents of this type can be deleted. + example: false + type: boolean + allow_workflows: + default: true + description: Whether automation workflows can be triggered for incidents of this type. + example: true + type: boolean + create_message: + description: An optional message shown to users when they declare an incident of this type. + example: "Create an incident here" + type: string + editable_timestamps: + default: false + description: Whether responders can edit incident timestamps for incidents of this type. + example: false + type: boolean + private_incidents: + default: false + description: >- + Whether responders can create private incidents of this type. This is an opt-in setting, distinct from `private_incidents_by_default`, which controls whether incidents are created private automatically. + example: false + type: boolean + private_incidents_by_default: + default: false + description: Whether incidents of this type are created as private by default. + example: false + type: boolean + slug_source: + $ref: "#/components/schemas/IncidentTypeSlugSource" + test_incidents: + default: true + description: Whether incidents of this type are treated as test incidents. + example: true + type: boolean + type: object + IncidentTypeCreateData: + description: Incident type data for a create request. + properties: + attributes: + $ref: "#/components/schemas/IncidentTypeAttributes" + type: + $ref: "#/components/schemas/IncidentTypeType" + required: + - type + - attributes + type: object + IncidentTypeCreateRequest: + description: Create request for an incident type. + properties: + data: + $ref: "#/components/schemas/IncidentTypeCreateData" + required: + - data + type: object + IncidentTypeListResponse: + description: Response with a list of incident types. + properties: + data: + description: An array of incident type objects. + items: + $ref: "#/components/schemas/IncidentTypeObject" + type: array + required: + - data + type: object + IncidentTypeObject: + description: Incident type response data. + properties: + attributes: + $ref: "#/components/schemas/IncidentTypeAttributes" + id: + description: The incident type's ID. + example: "00000000-0000-0000-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentTypeRelationships" + type: + $ref: "#/components/schemas/IncidentTypeType" + required: + - id + - type + type: object + IncidentTypePatchData: + description: Incident type data for a patch request. + properties: + attributes: + $ref: "#/components/schemas/IncidentTypeUpdateAttributes" + id: + description: The incident type's ID. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentTypeType" + required: + - id + - type + - attributes + type: object + IncidentTypePatchRequest: + description: Patch request for an incident type. + properties: + data: + $ref: "#/components/schemas/IncidentTypePatchData" + required: + - data + type: object + IncidentTypeRelationships: + additionalProperties: {} + description: The incident type's resource relationships. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + google_meet_configuration: + $ref: "#/components/schemas/GoogleMeetConfigurationReference" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + microsoft_teams_configuration: + $ref: "#/components/schemas/MicrosoftTeamsConfigurationReference" + zoom_configuration: + $ref: "#/components/schemas/ZoomConfigurationReference" + type: object + IncidentTypeResponse: + description: Incident type response data. + properties: + data: + $ref: "#/components/schemas/IncidentTypeObject" + required: + - data + type: object + IncidentTypeSlugSource: + default: default + description: >- + When set to `servicenow`, incidents will display the ServiceNow record ID instead of the public ID. If no ServiceNow integration exists, the public ID will be displayed. + enum: + - default + - servicenow + example: default + type: string + x-enum-varnames: + - DEFAULT + - SERVICENOW + IncidentTypeType: + default: incident_types + description: Incident type resource type. + enum: + - incident_types + example: incident_types + type: string + x-enum-varnames: + - INCIDENT_TYPES + IncidentTypeUpdateAttributes: + description: Incident type's attributes for updates. + properties: + configuration: + $ref: "#/components/schemas/IncidentTypeConfiguration" + createdAt: + description: Timestamp when the incident type was created. + format: date-time + readOnly: true + type: string + createdBy: + description: A unique identifier that represents the user that created the incident type. + example: "00000000-0000-0000-0000-000000000000" + readOnly: true + type: string + description: + description: Text that describes the incident type. + example: "Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. Note: This will notify the security team." + type: string + is_default: + description: When true, this incident type will be used as the default type when an incident type is not specified. + example: false + type: boolean + lastModifiedBy: + description: A unique identifier that represents the user that last modified the incident type. + example: "00000000-0000-0000-0000-000000000000" + readOnly: true + type: string + modifiedAt: + description: Timestamp when the incident type was last modified. + format: date-time + readOnly: true + type: string + name: + description: The name of the incident type. + example: "Security Incident" + type: string + prefix: + description: The string that will be prepended to the incident title across the Datadog app. + example: "IR" + readOnly: true + type: string + type: object + IncidentUpdateAttributes: + description: The incident's attributes for an update request. + properties: + customer_impact_end: + description: Timestamp when customers were no longer impacted by the incident. + format: date-time + nullable: true + type: string + customer_impact_scope: + description: A summary of the impact customers experienced during the incident. + example: "Example customer impact scope" + type: string + customer_impact_start: + description: Timestamp when customers began being impacted by the incident. + format: date-time + nullable: true + type: string + customer_impacted: + description: A flag indicating whether the incident caused customer impact. + example: false + type: boolean + detected: + description: Timestamp when the incident was detected. + format: date-time + nullable: true + type: string + fields: + additionalProperties: + $ref: "#/components/schemas/IncidentFieldAttributes" + description: A condensed view of the user-defined fields for which to update selections. + example: {"severity": {"type": "dropdown", "value": "SEV-5"}} + type: object + notification_handles: + description: Notification handles that will be notified of the incident during update. + example: [{"display_name": "Jane Doe", "handle": "@user@email.com"}, {"display_name": "Slack Channel", "handle": "@slack-channel"}, {"display_name": "Incident Workflow", "handle": "@workflow-from-incident"}] + items: + $ref: "#/components/schemas/IncidentNotificationHandle" + type: array + title: + description: The title of the incident, which summarizes what happened. + example: "A test incident title" + type: string + type: object + IncidentUpdateData: + description: Incident data for an update request. + properties: + attributes: + $ref: "#/components/schemas/IncidentUpdateAttributes" + id: + description: The incident's ID. + example: "00000000-0000-0000-4567-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentUpdateRelationships" + type: + $ref: "#/components/schemas/IncidentType" + required: + - id + - type + type: object + IncidentUpdateRelationships: + description: The incident's relationships for an update request. + properties: + commander_user: + $ref: "#/components/schemas/NullableRelationshipToUser" + integrations: + $ref: "#/components/schemas/RelationshipToIncidentIntegrationMetadatas" + postmortem: + $ref: "#/components/schemas/RelationshipToIncidentPostmortem" + type: object + IncidentUpdateRequest: + description: Update request for an incident. + properties: + data: + $ref: "#/components/schemas/IncidentUpdateData" + required: + - data + type: object + IncidentUserAttributes: + description: Attributes of user object returned by the API. + properties: + email: + description: Email of the user. + type: string + handle: + description: Handle of the user. + type: string + icon: + description: URL of the user's icon. + type: string + name: + description: Name of the user. + nullable: true + type: string + uuid: + description: UUID of the user. + type: string + type: object + IncidentUserData: + description: User object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserAttributes" + id: + description: ID of the user. + type: string + type: + $ref: "#/components/schemas/UsersType" + type: object + IncidentUserDefinedFieldAttributesCreateRequest: + description: Attributes for creating an incident user-defined field. + properties: + category: + $ref: "#/components/schemas/IncidentUserDefinedFieldCategory" + collected: + $ref: "#/components/schemas/IncidentUserDefinedFieldCollected" + default_value: + description: The default value for the field. Must be one of the valid values when valid_values is set. + example: "critical" + nullable: true + type: string + display_name: + description: The human-readable name shown in the UI. Defaults to a formatted version of the name if not provided. + example: "Root Cause" + type: string + name: + description: The unique identifier of the field. Must start with a letter or digit and contain only letters, digits, underscores, or periods. + example: "root_cause" + type: string + ordinal: + description: A decimal string representing the field's display order in the UI. + example: "1.5" + nullable: true + type: string + required: + description: When true, users must fill out this field on incidents. + example: false + type: boolean + tag_key: + description: For metric tag-type fields only, the metric tag key that powers the autocomplete options. + example: "datacenter" + nullable: true + type: string + type: + $ref: "#/components/schemas/IncidentUserDefinedFieldFieldType" + valid_values: + description: The list of allowed values for dropdown and multiselect fields. Limited to 1000 values. + items: + $ref: "#/components/schemas/IncidentUserDefinedFieldValidValue" + type: array + required: + - name + - type + type: object + IncidentUserDefinedFieldAttributesResponse: + description: Attributes of an incident user-defined field. + properties: + category: + $ref: "#/components/schemas/IncidentUserDefinedFieldCategory" + collected: + $ref: "#/components/schemas/IncidentUserDefinedFieldCollected" + created: + description: Timestamp when the field was created. + example: "2026-03-18T08:40:05.185406Z" + format: date-time + readOnly: true + type: string + default_value: + description: The default value for the field. + example: "critical" + nullable: true + type: string + deleted: + description: Timestamp when the field was soft-deleted, or null if not deleted. + example: + format: date-time + nullable: true + readOnly: true + type: string + display_name: + description: The human-readable name shown in the UI. + example: "Root Cause" + type: string + metadata: + $ref: "#/components/schemas/IncidentUserDefinedFieldMetadata" + modified: + description: Timestamp when the field was last modified. + example: "2026-03-18T08:40:05.185406Z" + format: date-time + nullable: true + readOnly: true + type: string + name: + description: The unique identifier of the field. + example: "root_cause" + type: string + ordinal: + description: A decimal string representing the field's display order in the UI. + example: "1.5" + nullable: true + type: string + required: + description: When true, users must fill out this field on incidents. + example: false + type: boolean + reserved: + description: When true, this field is reserved for system use and cannot be deleted. + example: false + readOnly: true + type: boolean + tag_key: + description: For metric tag-type fields only, the metric tag key that powers the autocomplete options. + example: + nullable: true + type: string + type: + description: The data type of the field. 1=dropdown, 2=multiselect, 3=textbox, 4=textarray, 5=metrictag, 6=autocomplete, 7=number, 8=datetime. + example: 3 + format: int32 + maximum: 8 + minimum: 1 + nullable: true + type: integer + valid_values: + description: The list of allowed values for dropdown, multiselect, and autocomplete fields. + items: + $ref: "#/components/schemas/IncidentUserDefinedFieldValidValue" + nullable: true + type: array + required: + - category + - collected + - created + - default_value + - deleted + - display_name + - metadata + - modified + - name + - ordinal + - required + - reserved + - tag_key + - type + - valid_values + type: object + IncidentUserDefinedFieldAttributesUpdateRequest: + description: Attributes for updating an incident user-defined field. All fields are optional. + properties: + category: + $ref: "#/components/schemas/IncidentUserDefinedFieldCategory" + collected: + $ref: "#/components/schemas/IncidentUserDefinedFieldCollected" + default_value: + description: The default value for the field. Must be one of the valid values when valid_values is set. + example: "critical" + nullable: true + type: string + display_name: + description: The human-readable name shown in the UI. + example: "Root Cause" + type: string + ordinal: + description: A decimal string representing the field's display order in the UI. + example: "1.5" + nullable: true + type: string + required: + description: When true, users must fill out this field on incidents. + example: false + nullable: true + type: boolean + valid_values: + description: The list of allowed values for dropdown and multiselect fields. Limited to 1000 values. + items: + $ref: "#/components/schemas/IncidentUserDefinedFieldValidValue" + nullable: true + type: array + type: object + IncidentUserDefinedFieldCategory: + description: 'The section in which the field appears: "what_happened" or "why_it_happened". When null, the field appears in the Attributes section.' + enum: + - what_happened + - why_it_happened + example: what_happened + nullable: true + type: string + x-enum-varnames: + - WHAT_HAPPENED + - WHY_IT_HAPPENED + IncidentUserDefinedFieldCollected: + description: The lifecycle stage at which the app prompts users to fill out this field. Cannot be set on required fields. + enum: + - active + - stable + - resolved + - completed + example: active + nullable: true + type: string + x-enum-varnames: + - ACTIVE + - STABLE + - RESOLVED + - COMPLETED + IncidentUserDefinedFieldCreateData: + description: Data for creating an incident user-defined field. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserDefinedFieldAttributesCreateRequest" + relationships: + $ref: "#/components/schemas/IncidentUserDefinedFieldCreateRelationships" + type: + $ref: "#/components/schemas/IncidentUserDefinedFieldType" + required: + - type + - attributes + - relationships + type: object + IncidentUserDefinedFieldCreateRelationships: + description: Relationships for creating an incident user-defined field. + properties: + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + required: + - incident_type + type: object + IncidentUserDefinedFieldCreateRequest: + description: Request body for creating an incident user-defined field. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedFieldCreateData" + required: + - data + type: object + IncidentUserDefinedFieldFieldType: + description: The data type of the field. 1=dropdown, 2=multiselect, 3=textbox, 4=textarray, 5=metrictag, 6=autocomplete, 7=number, 8=datetime. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + example: 3 + format: int32 + type: integer + x-enum-varnames: + - DROPDOWN + - MULTISELECT + - TEXTBOX + - TEXTARRAY + - METRICTAG + - AUTOCOMPLETE + - NUMBER + - DATETIME + IncidentUserDefinedFieldListMeta: + description: Pagination metadata for the user-defined field list response. + properties: + offset: + description: The offset of the current page. + example: 0 + format: int64 + type: integer + size: + description: The total number of items in the current page. + example: 5 + format: int64 + type: integer + type: object + IncidentUserDefinedFieldListResponse: + description: Response containing a list of incident user-defined fields. + properties: + data: + description: An array of user-defined field objects. + items: + $ref: "#/components/schemas/IncidentUserDefinedFieldResponseData" + type: array + meta: + $ref: "#/components/schemas/IncidentUserDefinedFieldListMeta" + required: + - data + - meta + type: object + IncidentUserDefinedFieldMetadata: + description: Metadata for autocomplete-type user-defined fields, describing how to populate autocomplete options. + nullable: true + properties: + category: + description: The category of the autocomplete source. + example: "teams_and_services" + type: string + search_limit_param: + description: The query parameter used to limit the number of autocomplete results. + example: "page[size]" + type: string + search_params: + additionalProperties: {} + description: Additional query parameters to include in the search URL. + type: object + search_query_param: + description: The query parameter used to pass typed input to the search URL. + example: "filter" + type: string + search_result_path: + description: The JSON path to the results in the response body. + example: "$.data[*].attributes.name" + type: string + search_url: + description: The URL used to populate autocomplete options. + example: "/api/v2/incidents/config/services" + type: string + required: + - category + - search_url + - search_query_param + - search_limit_param + - search_result_path + - search_params + type: object + IncidentUserDefinedFieldRelationships: + description: Relationships of an incident user-defined field. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/RelationshipToIncidentType" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + required: + - created_by_user + - last_modified_by_user + - incident_type + type: object + IncidentUserDefinedFieldResponse: + description: Response containing a single incident user-defined field. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedFieldResponseData" + required: + - data + type: object + IncidentUserDefinedFieldResponseData: + description: Data object for an incident user-defined field response. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserDefinedFieldAttributesResponse" + id: + description: The unique identifier of the user-defined field. + example: "00000000-0000-0000-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/IncidentUserDefinedFieldRelationships" + type: + $ref: "#/components/schemas/IncidentUserDefinedFieldType" + required: + - id + - type + - attributes + - relationships + type: object + IncidentUserDefinedFieldType: + description: The incident user defined fields type. + enum: + - user_defined_field + example: user_defined_field + type: string + x-enum-varnames: + - USER_DEFINED_FIELD + IncidentUserDefinedFieldUpdateData: + description: Data for updating an incident user-defined field. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserDefinedFieldAttributesUpdateRequest" + id: + description: The unique identifier of the user-defined field to update. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentUserDefinedFieldType" + required: + - id + - type + - attributes + type: object + IncidentUserDefinedFieldUpdateRequest: + description: Request body for updating an incident user-defined field. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedFieldUpdateData" + required: + - data + type: object + IncidentUserDefinedFieldValidValue: + description: A valid value for an incident user-defined field. + properties: + description: + description: A detailed description of the valid value. + example: "A critical severity incident." + type: string + display_name: + description: The human-readable display name for this value. + example: "Critical" + type: string + short_description: + description: A short description of the valid value. + example: "Critical" + type: string + value: + description: The identifier that is stored when this option is selected. + example: "critical" + type: string + required: + - display_name + - value + type: object + IncidentUserDefinedRoleDataAttributesRequest: + description: Attributes for creating an incident user-defined role. + properties: + description: + description: A description of the user-defined role. + example: "The technical lead for the incident." + nullable: true + type: string + name: + description: The name of the user-defined role. + example: "Tech Lead" + type: string + policy: + $ref: "#/components/schemas/IncidentUserDefinedRolePolicy" + required: + - name + type: object + IncidentUserDefinedRoleDataAttributesResponse: + description: Attributes of an incident user-defined role. + properties: + created: + description: Timestamp when the role was created. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + description: + description: A description of the user-defined role. + example: "The technical lead for the incident." + nullable: true + type: string + modified: + description: Timestamp when the role was last modified. + example: "2024-01-01T00:00:00.000Z" + format: date-time + type: string + name: + description: The name of the user-defined role. + example: "Tech Lead" + type: string + policy: + $ref: "#/components/schemas/IncidentUserDefinedRolePolicy" + required: + - name + - policy + - created + - modified + type: object + IncidentUserDefinedRoleDataRequest: + description: Data for creating an incident user-defined role. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserDefinedRoleDataAttributesRequest" + relationships: + $ref: "#/components/schemas/IncidentUserDefinedRoleRelationshipsRequest" + type: + $ref: "#/components/schemas/IncidentUserDefinedRoleType" + required: + - type + - attributes + - relationships + type: object + IncidentUserDefinedRoleDataResponse: + description: Data for an incident user-defined role response. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserDefinedRoleDataAttributesResponse" + id: + description: The ID of the user-defined role. + example: "00000000-0000-0000-0000-000000000002" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/IncidentUserDefinedRoleRelationshipsResponse" + type: + $ref: "#/components/schemas/IncidentUserDefinedRoleType" + required: + - id + - type + - attributes + type: object + IncidentUserDefinedRoleIncidentTypeRelationship: + description: Relationship to an incident type for a user-defined role. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedRoleIncidentTypeRelationshipData" + required: + - data + type: object + IncidentUserDefinedRoleIncidentTypeRelationshipData: + description: Data for the incident type relationship of a user-defined role. + properties: + id: + description: The ID of the incident type. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + type: + description: The type of the resource. + example: "incident_types" + type: string + required: + - id + - type + type: object + IncidentUserDefinedRoleIncludedItem: + description: A single included resource in a user-defined role response. + oneOf: + - $ref: "#/components/schemas/IncidentUserData" + - $ref: "#/components/schemas/IncidentTypeObject" + IncidentUserDefinedRoleIncludedResponse: + description: Included resources for an incident user-defined role response. + items: + $ref: "#/components/schemas/IncidentUserDefinedRoleIncludedItem" + type: array + IncidentUserDefinedRolePatchDataAttributesRequest: + description: Attributes for updating an incident user-defined role. + properties: + description: + description: A description of the user-defined role. + example: "The technical lead for the incident." + nullable: true + type: string + name: + description: The name of the user-defined role. + example: "Tech Lead" + type: string + policy: + $ref: "#/components/schemas/IncidentUserDefinedRolePolicy" + type: object + IncidentUserDefinedRolePatchDataRequest: + description: Data for updating an incident user-defined role. + properties: + attributes: + $ref: "#/components/schemas/IncidentUserDefinedRolePatchDataAttributesRequest" + id: + description: The ID of the user-defined role to update. + example: "00000000-0000-0000-0000-000000000002" + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentUserDefinedRoleType" + required: + - id + - type + type: object + IncidentUserDefinedRolePatchRequest: + description: Request for updating an incident user-defined role. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedRolePatchDataRequest" + required: + - data + type: object + IncidentUserDefinedRolePolicy: + description: Policy configuration for a user-defined role. + properties: + is_single: + description: Whether this role can only be assigned to one responder at a time. + example: true + type: boolean + required: + - is_single + type: object + IncidentUserDefinedRoleRelationshipsRequest: + description: Relationships for creating a user-defined role. + properties: + incident_type: + $ref: "#/components/schemas/IncidentUserDefinedRoleIncidentTypeRelationship" + required: + - incident_type + type: object + IncidentUserDefinedRoleRelationshipsResponse: + description: Relationships of a user-defined role response. + properties: + created_by_user: + $ref: "#/components/schemas/RelationshipToUser" + incident_type: + $ref: "#/components/schemas/IncidentUserDefinedRoleIncidentTypeRelationship" + last_modified_by_user: + $ref: "#/components/schemas/RelationshipToUser" + type: object + IncidentUserDefinedRoleRequest: + description: Request for creating an incident user-defined role. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedRoleDataRequest" + required: + - data + type: object + IncidentUserDefinedRoleResponse: + description: Response with a single incident user-defined role. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedRoleDataResponse" + included: + $ref: "#/components/schemas/IncidentUserDefinedRoleIncludedResponse" + required: + - data + type: object + IncidentUserDefinedRoleType: + description: Incident user-defined role resource type. + enum: + - incident_user_defined_roles + example: incident_user_defined_roles + type: string + x-enum-varnames: + - INCIDENT_USER_DEFINED_ROLES + IncidentUserDefinedRolesDataResponse: + description: List of incident user-defined role data objects. + items: + $ref: "#/components/schemas/IncidentUserDefinedRoleDataResponse" + type: array + IncidentUserDefinedRolesResponse: + description: Response with a list of incident user-defined roles. + properties: + data: + $ref: "#/components/schemas/IncidentUserDefinedRolesDataResponse" + included: + $ref: "#/components/schemas/IncidentUserDefinedRoleIncludedResponse" + required: + - data + type: object + IncidentsResponse: + description: Response with a list of incidents. + properties: + data: + description: An array of incidents. + example: [{"attributes": {"created": "2020-04-21T15:34:08.627205+00:00", "creation_idempotency_key": null, "customer_impact_duration": 0, "customer_impact_end": null, "customer_impact_scope": null, "customer_impact_start": null, "customer_impacted": false, "detected": "2020-04-14T00:00:00+00:00", "incident_type_uuid": "00000000-0000-0000-0000-000000000001", "modified": "2020-09-17T14:16:58.696424+00:00", "public_id": 1, "resolved": null, "severity": "SEV-1", "time_to_detect": 0, "time_to_internal_response": 0, "time_to_repair": 0, "time_to_resolve": 0, "title": "Example Incident"}, "id": "00000000-aaaa-0000-0000-000000000000", "relationships": {"attachments": {"data": [{"id": "00000000-9999-0000-0000-000000000000", "type": "incident_attachments"}, {"id": "00000000-1234-0000-0000-000000000000", "type": "incident_attachments"}]}, "commander_user": {"data": {"id": "00000000-0000-0000-cccc-000000000000", "type": "users"}}, "created_by_user": {"data": {"id": "00000000-0000-0000-cccc-000000000000", + "type": "users"}}, "integrations": {"data": [{"id": "00000000-0000-0000-4444-000000000000", "type": "incident_integrations"}, {"id": "00000000-0000-0000-5555-000000000000", "type": "incident_integrations"}]}, "last_modified_by_user": {"data": {"id": "00000000-0000-0000-cccc-000000000000", "type": "users"}}}, "type": "incidents"}, {"attributes": {"created": "2020-04-21T15:34:08.627205+00:00", "creation_idempotency_key": null, "customer_impact_duration": 0, "customer_impact_end": null, "customer_impact_scope": null, "customer_impact_start": null, "customer_impacted": false, "detected": "2020-04-14T00:00:00+00:00", "incident_type_uuid": "00000000-0000-0000-0000-000000000002", "modified": "2020-09-17T14:16:58.696424+00:00", "public_id": 2, "resolved": null, "severity": "SEV-5", "time_to_detect": 0, "time_to_internal_response": 0, "time_to_repair": 0, "time_to_resolve": 0, "title": "Example Incident 2"}, "id": "00000000-1111-0000-0000-000000000000", "relationships": {"attachments": { + "data": [{"id": "00000000-9999-0000-0000-000000000000", "type": "incident_attachments"}]}, "commander_user": {"data": {"id": "00000000-aaaa-0000-0000-000000000000", "type": "users"}}, "created_by_user": {"data": {"id": "00000000-aaaa-0000-0000-000000000000", "type": "users"}}, "integrations": {"data": [{"id": "00000000-0000-0000-0001-000000000000", "type": "incident_integrations"}, {"id": "00000000-0000-0000-0002-000000000000", "type": "incident_integrations"}]}, "last_modified_by_user": {"data": {"id": "00000000-aaaa-0000-0000-000000000000", "type": "users"}}}, "type": "incidents"}] + items: + $ref: "#/components/schemas/IncidentResponseData" + type: array + included: + description: Included related resources that the user requested. + items: + $ref: "#/components/schemas/IncidentResponseIncludedItem" + readOnly: true + type: array + meta: + $ref: "#/components/schemas/IncidentResponseMeta" + required: + - data + type: object + IncludeType: + description: Supported include types. + enum: + - schema + - raw_schema + - oncall + - incident + - relation + type: string + x-enum-varnames: + - SCHEMA + - RAW_SCHEMA + - ONCALL + - INCIDENT + - RELATION + InputSchema: + description: "A list of input parameters for the workflow. Input parameters are available under the `Trigger` object and can be referenced in workflow steps using `{{ Trigger. }}`." + properties: + parameters: + description: The `InputSchema` `parameters`. + items: + $ref: "#/components/schemas/InputSchemaParameters" + type: array + type: object + InputSchemaParameters: + description: The definition of `InputSchemaParameters` object. + properties: + allowExtraValues: + description: The `InputSchemaParameters` `allowExtraValues`. + type: boolean + allowedValues: + description: The `InputSchemaParameters` `allowedValues`. + defaultValue: + description: The `InputSchemaParameters` `defaultValue`. + description: + description: The `InputSchemaParameters` `description`. + type: string + label: + description: The `InputSchemaParameters` `label`. + type: string + name: + description: The `InputSchemaParameters` `name`. + example: "" + minLength: 1 + type: string + type: + $ref: "#/components/schemas/InputSchemaParametersType" + required: + - name + - type + type: object + InputSchemaParametersType: + description: The definition of `InputSchemaParametersType` object. + enum: + - STRING + - NUMBER + - BOOLEAN + - OBJECT + - ARRAY_STRING + - ARRAY_NUMBER + - ARRAY_BOOLEAN + - ARRAY_OBJECT + example: STRING + type: string + x-enum-varnames: + - STRING + - NUMBER + - BOOLEAN + - OBJECT + - ARRAY_STRING + - ARRAY_NUMBER + - ARRAY_BOOLEAN + - ARRAY_OBJECT + IntakePayloadAccepted: + description: The payload accepted for intake. + properties: + errors: + description: A list of errors. + items: + description: An empty error list. + type: string + type: array + type: object + Integration: + description: Integration resource object. + properties: + attributes: + $ref: "#/components/schemas/IntegrationAttributes" + id: + description: The unique identifier of the integration. + example: "calico" + type: string + links: + $ref: "#/components/schemas/IntegrationLinks" + type: + $ref: "#/components/schemas/IntegrationType" + required: + - type + - id + - attributes + type: object + IntegrationAccountBasicAuthRequest: + description: Username and password authentication. + properties: + auth_type: + $ref: "#/components/schemas/IntegrationAccountBasicAuthType" + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog + type: string + required: + - auth_type + - username + - password + type: object + IntegrationAccountBasicAuthResponse: + description: The basic authentication method and username configured on the account. + properties: + auth_type: + $ref: "#/components/schemas/IntegrationAccountBasicAuthType" + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog + type: string + required: + - auth_type + - username + type: object + IntegrationAccountBasicAuthType: + default: basic + description: The authentication method type. + enum: + - basic + example: basic + type: string + x-enum-varnames: + - BASIC + IntegrationAccountBasicAuthUpdate: + description: Username and password authentication. Only the fields provided are changed; omit `password` to keep the stored one. + properties: + auth_type: + $ref: "#/components/schemas/IntegrationAccountBasicAuthType" + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog + type: string + required: + - auth_type + type: object + IntegrationAccountDataflowHealth: + description: Collection health of a single dataflow. + enum: + - DATAFLOW_HEALTH_OK + - DATAFLOW_HEALTH_BROKEN + - DATAFLOW_HEALTH_UNKNOWN + example: DATAFLOW_HEALTH_OK + type: string + x-enum-varnames: + - OK + - BROKEN + - UNKNOWN + IntegrationAccountDataflowStatus: + description: Read-only collection status of a dataflow. + properties: + health: + $ref: "#/components/schemas/IntegrationAccountDataflowHealth" + message: + description: Human-readable detail, populated when the dataflow is not healthy. + example: "" + type: string + updated_at: + description: Time the status was last computed. + example: "2026-06-25T08:30:50Z" + format: date-time + type: string + readOnly: true + type: object + IntegrationAccountType: + default: integration-account + description: The type of the integration account resource. Always `integration-account`. + enum: + - integration-account + example: integration-account + type: string + x-enum-varnames: + - INTEGRATION_ACCOUNT + IntegrationAttributes: + description: Attributes for an integration. + properties: + categories: + description: List of categories associated with the integration. + example: + - "Category::Kubernetes" + - "Category::Log Collection" + items: + description: A category associated with the integration. + type: string + type: array + description: + description: A description of the integration. + example: "Calico is a networking and network security solution for containers." + type: string + installed: + description: Whether the integration is installed. + example: true + type: boolean + title: + description: The name of the integration. + example: "calico" + type: string + required: + - title + - description + - categories + - installed + type: object + IntegrationIncident: + description: Incident integration settings. + properties: + auto_escalation_query: + description: Query for auto-escalation. + type: string + default_incident_commander: + description: Default incident commander. + type: string + enabled: + description: Whether incident integration is enabled. + type: boolean + field_mappings: + description: List of mappings between incident fields and case fields. + items: + $ref: "#/components/schemas/IntegrationIncidentFieldMappingsItems" + type: array + incident_type: + description: Incident type. + type: string + severity_config: + $ref: "#/components/schemas/IntegrationIncidentSeverityConfig" + type: object + IntegrationIncidentFieldMappingsItems: + description: Mapping between an incident user-defined field and a case field. + properties: + case_field: + description: The case field to map the incident field value to. + type: string + incident_user_defined_field_id: + description: The identifier of the incident user-defined field to map from. + type: string + type: object + IntegrationIncidentSeverityConfig: + description: Severity configuration for mapping incident priorities to case priorities. + properties: + priority_mapping: + additionalProperties: + type: string + description: Mapping of incident severity values to case priority values. + type: object + type: object + IntegrationJira: + description: Jira integration settings. + properties: + auto_creation: + $ref: "#/components/schemas/IntegrationJiraAutoCreation" + enabled: + description: Whether Jira integration is enabled. + type: boolean + metadata: + $ref: "#/components/schemas/IntegrationJiraMetadata" + sync: + $ref: "#/components/schemas/IntegrationJiraSync" + type: object + IntegrationJiraAutoCreation: + description: Auto-creation settings for Jira issues from cases. + properties: + enabled: + description: Whether automatic Jira issue creation is enabled. + type: boolean + type: object + IntegrationJiraMetadata: + description: Metadata for connecting a case management project to a Jira project. + properties: + account_id: + description: The Jira account identifier. + type: string + issue_type_id: + description: The Jira issue type identifier to use when creating issues. + type: string + project_id: + description: The Jira project identifier to associate with this case project. + type: string + type: object + IntegrationJiraSync: + description: Synchronization configuration for Jira integration. + properties: + enabled: + description: Whether Jira field synchronization is enabled. + type: boolean + properties: + $ref: "#/components/schemas/IntegrationJiraSyncProperties" + type: object + IntegrationJiraSyncDueDate: + description: Due date synchronization configuration for Jira integration. + properties: + jira_field_id: + description: The Jira field identifier used to store the due date. + type: string + sync_type: + description: The type of synchronization to apply for the due date field. + type: string + type: object + IntegrationJiraSyncProperties: + description: Field synchronization properties for Jira integration. + properties: + assignee: + $ref: "#/components/schemas/SyncProperty" + comments: + $ref: "#/components/schemas/SyncProperty" + custom_fields: + additionalProperties: + $ref: "#/components/schemas/IntegrationJiraSyncPropertiesCustomFieldsAdditionalProperties" + description: Map of custom field identifiers to their sync configurations. + type: object + description: + $ref: "#/components/schemas/SyncProperty" + due_date: + $ref: "#/components/schemas/IntegrationJiraSyncDueDate" + priority: + $ref: "#/components/schemas/SyncPropertyWithMapping" + status: + $ref: "#/components/schemas/SyncPropertyWithMapping" + title: + $ref: "#/components/schemas/SyncProperty" + type: object + IntegrationJiraSyncPropertiesCustomFieldsAdditionalProperties: + description: Synchronization configuration for a Jira custom field. + properties: + sync_type: + description: The type of synchronization to apply for this custom field. + type: string + value: + $ref: "#/components/schemas/AnyValue" + type: object + IntegrationLinks: + description: Links for the integration resource. + properties: + self: + description: Link to the integration resource. + example: "/integrations?integrationId=calico" + type: string + type: object + IntegrationMonitor: + description: Monitor integration settings. + properties: + auto_resolve_enabled: + description: Whether auto-resolve is enabled. + type: boolean + case_type_id: + description: Case type ID for monitor integration. + type: string + enabled: + description: Whether monitor integration is enabled. + type: boolean + handle: + description: Monitor handle. + type: string + type: object + IntegrationOnCall: + description: On-Call integration settings. + properties: + auto_assign_on_call: + description: Whether to auto-assign on-call. + type: boolean + enabled: + description: Whether On-Call integration is enabled. + type: boolean + escalation_queries: + description: List of escalation queries for routing cases to on-call responders. + items: + $ref: "#/components/schemas/IntegrationOnCallEscalationQueriesItems" + type: array + type: object + IntegrationOnCallEscalationQueriesItems: + description: An On-Call escalation query entry used to route cases to on-call responders. + properties: + enabled: + description: Whether this escalation query is enabled. + type: boolean + id: + description: Unique identifier of the escalation query. + type: string + query: + description: The query used to match cases for escalation. + type: string + target: + $ref: "#/components/schemas/IntegrationOnCallEscalationQueriesItemsTarget" + type: object + IntegrationOnCallEscalationQueriesItemsTarget: + description: The target recipient for an On-Call escalation query. + properties: + dynamic_team_paging: + description: Whether to use dynamic team paging for escalation. + type: boolean + team_id: + description: The identifier of the team to escalate to. + type: string + user_id: + description: The identifier of the user to escalate to. + type: string + type: object + IntegrationServiceNow: + description: ServiceNow integration settings. + properties: + assignment_group: + description: Assignment group. + type: string + auto_creation: + $ref: "#/components/schemas/IntegrationServiceNowAutoCreation" + enabled: + description: Whether ServiceNow integration is enabled. + type: boolean + instance_name: + description: ServiceNow instance name. + type: string + sync_config: + $ref: "#/components/schemas/IntegrationServiceNowSyncConfig" + type: object + IntegrationServiceNowAutoCreation: + description: Auto-creation settings for ServiceNow incidents from cases. + properties: + enabled: + description: Whether automatic ServiceNow incident creation is enabled. + type: boolean + type: object + IntegrationServiceNowSyncConfig: + description: Synchronization configuration for ServiceNow integration. + properties: + enabled: + description: Whether ServiceNow synchronization is enabled. + type: boolean + properties: + $ref: "#/components/schemas/IntegrationServiceNowSyncConfig139772721534496" + type: object + IntegrationServiceNowSyncConfig139772721534496: + description: Field-level synchronization properties for ServiceNow integration. + properties: + comments: + $ref: "#/components/schemas/SyncProperty" + priority: + $ref: "#/components/schemas/IntegrationServiceNowSyncConfigPriority" + status: + $ref: "#/components/schemas/SyncPropertyWithMapping" + type: object + IntegrationServiceNowSyncConfigPriority: + description: Priority synchronization configuration for ServiceNow integration. + properties: + impact_mapping: + additionalProperties: + type: string + description: Mapping of case priority values to ServiceNow impact values. + type: object + sync_type: + description: The type of synchronization to apply for priority. + type: string + urgency_mapping: + additionalProperties: + type: string + description: Mapping of case priority values to ServiceNow urgency values. + type: object + type: object + IntegrationType: + default: integration + description: Integration resource type. + enum: + - integration + example: integration + type: string + x-enum-varnames: + - INTEGRATION + InterfaceAttributes: + description: The interface attributes + properties: + alias: + description: The interface alias + example: interface_0 + type: string + description: + description: The interface description + example: a network interface + type: string + index: + description: The interface index + example: 0 + format: int64 + type: integer + ip_addresses: + description: The interface IP addresses + example: ["1.1.1.1", "1.1.1.2"] + items: + description: An IP address assigned to the interface. + type: string + type: array + mac_address: + description: The interface MAC address + example: 00:00:00:00:00:00 + type: string + name: + description: The interface name + example: if0 + type: string + status: + $ref: "#/components/schemas/InterfaceAttributesStatus" + type: object + InterfaceAttributesStatus: + description: The interface status + enum: + - up + - down + - warning + - "off" + example: up + type: string + x-enum-varnames: + - UP + - DOWN + - WARNING + - "OFF" + InvestigationConclusion: + description: A full explanation of the finding, including root cause analysis and supporting evidence. + properties: + description: + description: A full explanation of the finding, including root cause analysis and supporting evidence. + example: "The investigation found that a memory leak in payments-service caused CPU usage to spike above 95% starting at 14:32 UTC." + type: string + summary: + description: A summary of the finding, including affected components and timeframe. + example: "CPU usage exceeded 95% for over 10 minutes on web-server-01." + type: string + title: + description: The title of the conclusion. + example: "High CPU usage detected on web-server-01" + type: string + required: + - title + - summary + - description + type: object + InvestigationType: + description: The resource type for investigations. + enum: + - investigation + example: investigation + type: string + x-enum-varnames: + - INVESTIGATION + IoCExplorerListResponse: + description: Response for the list indicators of compromise endpoint. + properties: + data: + $ref: "#/components/schemas/IoCExplorerListResponseData" + type: object + IoCExplorerListResponseAttributes: + description: Attributes of the IoC Explorer list response. + properties: + data: + description: List of indicators of compromise. + items: + $ref: "#/components/schemas/IoCIndicator" + type: array + metadata: + $ref: "#/components/schemas/IoCExplorerListResponseMetadata" + paging: + $ref: "#/components/schemas/IoCExplorerListResponsePaging" + type: object + IoCExplorerListResponseData: + description: IoC Explorer list response data object. + properties: + attributes: + $ref: "#/components/schemas/IoCExplorerListResponseAttributes" + id: + description: Unique identifier for the response. + type: string + type: + description: Response type identifier. + type: string + type: object + IoCExplorerListResponseMetadata: + description: Response metadata. + properties: + count: + description: Total number of indicators matching the query. + format: int64 + type: integer + type: object + IoCExplorerListResponsePaging: + description: Pagination information. + properties: + offset: + description: Current pagination offset. + format: int64 + type: integer + type: object + IoCGeoLocation: + description: Geographic location information for an IP indicator. + properties: + city: + description: City name. + type: string + country_code: + description: ISO country code. + type: string + country_name: + description: Full country name. + type: string + type: object + IoCIndicator: + description: An indicator of compromise with threat intelligence data. + properties: + as_geo: + $ref: "#/components/schemas/IoCGeoLocation" + as_type: + description: Autonomous system type. + type: string + benign_sources: + description: Threat intelligence sources that flagged this indicator as benign. + items: + $ref: "#/components/schemas/IoCSource" + nullable: true + type: array + categories: + description: Threat categories associated with the indicator. + items: + type: string + type: array + first_seen: + description: Timestamp when the indicator was first seen. + format: date-time + type: string + id: + description: Unique identifier for the indicator. + type: string + indicator: + description: The indicator value (for example, an IP address or domain). + type: string + indicator_type: + description: Type of indicator (for example, IP address or domain). + type: string + last_seen: + description: Timestamp when the indicator was last seen. + format: date-time + type: string + log_matches: + description: Number of logs that matched this indicator. + format: int64 + type: integer + m_as_type: + $ref: "#/components/schemas/IoCScoreEffect" + m_persistence: + $ref: "#/components/schemas/IoCScoreEffect" + m_signal: + $ref: "#/components/schemas/IoCScoreEffect" + m_sources: + $ref: "#/components/schemas/IoCScoreEffect" + malicious_sources: + description: Threat intelligence sources that flagged this indicator as malicious. + items: + $ref: "#/components/schemas/IoCSource" + nullable: true + type: array + max_trust_score: + $ref: "#/components/schemas/IoCScoreEffect" + score: + description: Threat score for the indicator (0-100). + format: double + type: number + signal_matches: + description: Number of security signals that matched this indicator. + format: int64 + type: integer + signal_tier: + description: Signal tier level. + format: int64 + type: integer + suspicious_sources: + description: Threat intelligence sources that flagged this indicator as suspicious. + items: + $ref: "#/components/schemas/IoCSource" + nullable: true + type: array + tags: + description: Tags associated with the indicator. + items: + type: string + type: array + triage_state: + $ref: "#/components/schemas/IoCTriageState" + triaged_at: + description: Timestamp when the indicator was last triaged. + format: date-time + type: string + triaged_by: + description: UUID of the user who last triaged the indicator. + type: string + type: object + IoCIndicatorDetailed: + description: An indicator of compromise with extended context from your environment. + properties: + additional_data: + additionalProperties: {} + description: Additional domain-specific context from threat intelligence sources. + type: object + as_cidr_block: + description: Autonomous system CIDR block. + type: string + as_geo: + $ref: "#/components/schemas/IoCGeoLocation" + as_number: + description: Autonomous system number. + type: string + as_organization: + description: Autonomous system organization name. + type: string + as_type: + description: Autonomous system type. + type: string + benign_sources: + description: Threat intelligence sources that flagged this indicator as benign. + items: + $ref: "#/components/schemas/IoCSource" + nullable: true + type: array + categories: + description: Threat categories associated with the indicator. + items: + type: string + type: array + critical_assets: + description: Critical assets associated with this indicator. + items: + type: string + type: array + first_seen: + description: Timestamp when the indicator was first seen. + format: date-time + type: string + hosts: + description: Hosts associated with this indicator. + items: + type: string + type: array + id: + description: Unique identifier for the indicator. + type: string + indicator: + description: The indicator value (for example, an IP address or domain). + type: string + indicator_type: + description: Type of indicator (for example, IP address or domain). + type: string + last_seen: + description: Timestamp when the indicator was last seen. + format: date-time + type: string + log_matches: + description: Number of logs that matched this indicator. + format: int64 + type: integer + log_sources: + description: Log sources where this indicator was observed. + items: + type: string + type: array + m_as_type: + $ref: "#/components/schemas/IoCScoreEffect" + m_persistence: + $ref: "#/components/schemas/IoCScoreEffect" + m_signal: + $ref: "#/components/schemas/IoCScoreEffect" + m_sources: + $ref: "#/components/schemas/IoCScoreEffect" + malicious_sources: + description: Threat intelligence sources that flagged this indicator as malicious. + items: + $ref: "#/components/schemas/IoCSource" + nullable: true + type: array + max_trust_score: + $ref: "#/components/schemas/IoCScoreEffect" + score: + description: Threat score for the indicator (0-100). + format: double + type: number + services: + description: Services where this indicator was observed. + items: + type: string + type: array + signal_matches: + description: Number of security signals that matched this indicator. + format: int64 + type: integer + signal_severity: + description: Breakdown of security signals by severity. + items: + $ref: "#/components/schemas/IoCSignalSeverityCount" + type: array + signal_tier: + description: Signal tier level. + format: int64 + type: integer + suspicious_sources: + description: Threat intelligence sources that flagged this indicator as suspicious. + items: + $ref: "#/components/schemas/IoCSource" + nullable: true + type: array + tags: + description: Tags associated with the indicator. + items: + type: string + type: array + triage_history: + description: Full triage history timeline. Returned only when `include_triage_history` is true. + items: + $ref: "#/components/schemas/IoCTriageEvent" + type: array + triage_state: + $ref: "#/components/schemas/IoCTriageState" + triaged_at: + description: Timestamp when the indicator was last triaged. + format: date-time + type: string + triaged_by: + description: UUID of the user who last triaged the indicator. + type: string + users: + additionalProperties: + description: List of user identifiers in this category. + items: + type: string + type: array + description: Users associated with this indicator, grouped by category. + type: object + type: object + IoCScoreEffect: + description: Effect of a scoring factor on the indicator's threat score. + enum: + - RAISE_SCORE + - LOWER_SCORE + - NO_EFFECT + type: string + x-enum-varnames: + - RAISE_SCORE + - LOWER_SCORE + - NO_EFFECT + IoCSignalSeverityCount: + description: Count of security signals by severity level. + properties: + count: + description: Number of signals at this severity level. + format: int64 + type: integer + severity: + description: Severity level (for example, critical, high, medium, low, info). + type: string + type: object + IoCSource: + description: A threat intelligence source that has flagged an indicator. + properties: + name: + description: Name of the threat intelligence source. + type: string + type: object + IoCTriageEvent: + description: A single entry in an indicator's triage history timeline. + properties: + triage_state: + $ref: "#/components/schemas/IoCTriageState" + triaged_at: + description: Timestamp when this triage action occurred. + format: date-time + type: string + triaged_by: + description: UUID of the user who performed this triage action. + type: string + type: object + IoCTriageState: + description: Current triage state of the indicator. + enum: + - not_reviewed + - reviewed + example: not_reviewed + type: string + x-enum-varnames: + - NOT_REVIEWED + - REVIEWED + IoCTriageWriteRequest: + description: Request body for creating or updating an indicator triage state. + properties: + data: + $ref: "#/components/schemas/IoCTriageWriteRequestData" + required: + - data + type: object + IoCTriageWriteRequestAttributes: + description: Attributes for setting an indicator's triage state. + properties: + indicator: + description: The indicator value to triage (for example, an IP address or domain). + example: "192.0.2.1" + type: string + triage_state: + $ref: "#/components/schemas/IoCTriageState" + required: + - indicator + - triage_state + type: object + IoCTriageWriteRequestData: + description: Data object for the triage write request. + properties: + attributes: + $ref: "#/components/schemas/IoCTriageWriteRequestAttributes" + type: + default: ioc_triage_state + description: Triage state resource type. + example: ioc_triage_state + type: string + required: + - type + - attributes + type: object + IoCTriageWriteResponse: + description: Response for the create indicator triage state endpoint. + properties: + data: + $ref: "#/components/schemas/IoCTriageWriteResponseData" + type: object + IoCTriageWriteResponseAttributes: + description: Attributes of a created or updated triage state. + properties: + created_at: + description: Timestamp when the triage record was created. + format: date-time + type: string + indicator: + description: The indicator value that was triaged. + type: string + triage_state: + $ref: "#/components/schemas/IoCTriageState" + triaged_at: + description: Timestamp when the triage state was set. + format: date-time + type: string + triaged_by: + description: UUID of the user who set the triage state. + type: string + type: object + IoCTriageWriteResponseData: + description: Data object of the triage write response. + properties: + attributes: + $ref: "#/components/schemas/IoCTriageWriteResponseAttributes" + id: + description: Unique identifier for the triage state record. + type: string + type: + default: ioc_triage_state + description: Triage state resource type. + type: string + type: object + Issue: + description: The issue matching the request. + properties: + attributes: + $ref: "#/components/schemas/IssueAttributes" + id: + description: Issue identifier. + example: "c1726a66-1f64-11ee-b338-da7ad0900002" + type: string + relationships: + $ref: "#/components/schemas/IssueRelationships" + type: + $ref: "#/components/schemas/IssueType" + required: + - id + - type + - attributes + type: object + IssueAssigneeRelationship: + description: Relationship between the issue and assignee. + properties: + data: + $ref: "#/components/schemas/IssueUserReference" + required: + - data + type: object + IssueAttributes: + description: Object containing the information of an issue. + properties: + error_message: + description: Error message associated with the issue. + example: "object of type 'NoneType' has no len()" + type: string + error_type: + description: Type of the error that matches the issue. + example: "builtins.TypeError" + type: string + file_path: + description: Path of the file where the issue occurred. + example: "/django-email/conduit/apps/core/utils.py" + type: string + first_seen: + description: Timestamp of the first seen error in milliseconds since the Unix epoch. + example: 1671612804001 + format: int64 + type: integer + first_seen_version: + description: The application version (for example, git commit hash) where the issue was first observed. + example: "aaf65cd0" + type: string + function_name: + description: Name of the function where the issue occurred. + example: "filter_forbidden_tags" + type: string + is_crash: + description: Error is a crash. + example: false + type: boolean + languages: + description: Array of programming languages associated with the issue. + example: ["PYTHON", "GO"] + items: + $ref: "#/components/schemas/IssueLanguage" + type: array + last_seen: + description: Timestamp of the last seen error in milliseconds since the Unix epoch. + example: 1671620003100 + format: int64 + type: integer + last_seen_version: + description: The application version (for example, git commit hash) where the issue was last observed. + example: "b6199f80" + type: string + platform: + $ref: "#/components/schemas/IssuePlatform" + regression: + $ref: "#/components/schemas/IssueRegression" + service: + description: Service name. + example: "email-api-py" + type: string + state: + $ref: "#/components/schemas/IssueState" + type: object + IssueCase: + description: The case attached to the issue. + properties: + attributes: + $ref: "#/components/schemas/IssueCaseAttributes" + id: + description: Case identifier. + example: "2841440d-e780-4fe2-96cd-6a8c1d194da5" + type: string + relationships: + $ref: "#/components/schemas/IssueCaseRelationships" + type: + $ref: "#/components/schemas/IssueCaseResourceType" + required: + - id + - type + - attributes + type: object + IssueCaseAttributes: + description: Object containing the information of a case. + properties: + archived_at: + description: Timestamp of when the case was archived. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + closed_at: + description: Timestamp of when the case was closed. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + created_at: + description: Timestamp of when the case was created. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + creation_source: + description: Source of the case creation. + example: "ERROR_TRACKING" + type: string + description: + description: Description of the case. + type: string + due_date: + description: Due date of the case. + example: "2025-01-01" + type: string + insights: + description: Insights of the case. + items: + $ref: "#/components/schemas/IssueCaseInsight" + type: array + jira_issue: + $ref: "#/components/schemas/IssueCaseJiraIssue" + key: + description: Key of the case. + example: "ET-123" + type: string + linear_issue: + $ref: "#/components/schemas/IssueCaseLinearIssue" + modified_at: + description: Timestamp of when the case was last modified. + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + priority: + $ref: "#/components/schemas/CasePriority" + status: + $ref: "#/components/schemas/CaseStatus" + title: + description: Title of the case. + example: "Error: HTTP error" + type: string + type: + description: Type of the case. + example: "ERROR_TRACKING_ISSUE" + type: string + type: object + IssueCaseInsight: + description: Insight of the case. + properties: + ref: + description: Reference of the insight. + example: "/error-tracking?issueId=2841440d-e780-4fe2-96cd-6a8c1d194da5" + type: string + resource_id: + description: Insight identifier. + example: "2841440d-e780-4fe2-96cd-6a8c1d194da5" + type: string + type: + description: Type of the insight. + example: "ERROR_TRACKING" + type: string + type: object + IssueCaseJiraIssue: + description: Jira issue of the case. + properties: + error_message: + description: Error message set when the Jira issue creation fails. + example: "" + type: string + result: + $ref: "#/components/schemas/IssueCaseJiraIssueResult" + status: + description: Creation status of the Jira issue. + example: "COMPLETED" + type: string + type: object + IssueCaseJiraIssueResult: + description: Contains the identifiers and URL for a successfully created Jira issue. + properties: + account_id: + description: Jira account identifier. + example: "abcd1234-5678-90ab-cdef-1234567890ab" + type: string + issue_id: + description: Jira issue identifier. + example: "1904866" + type: string + issue_key: + description: Jira issue key. + example: "ET-123" + type: string + issue_url: + description: Jira issue URL. + example: "https://your-jira-instance.atlassian.net/browse/ET-123" + type: string + project_id: + description: Jira project identifier. + example: "10001" + type: string + project_key: + description: Jira project key. + example: "ET" + type: string + type: object + IssueCaseLinearIssue: + description: Linear issue of the case. + properties: + error_message: + description: Error message set when the Linear issue creation fails. + example: "" + type: string + result: + $ref: "#/components/schemas/IssueCaseLinearIssueResult" + status: + description: Creation status of the Linear issue. + example: "COMPLETED" + type: string + type: object + IssueCaseLinearIssueResult: + description: Contains the identifiers and URL for a successfully created Linear issue. + properties: + account_id: + description: Linear account identifier. + example: "abcd1234-5678-90ab-cdef-1234567890ab" + type: string + issue_id: + description: Linear issue identifier. + example: "a1b2c3d4-5678-90ab-cdef-1234567890ab" + type: string + issue_key: + description: Linear issue key. + example: "ENG-123" + type: string + issue_url: + description: Linear issue URL. + example: "https://linear.app/your-workspace/issue/ENG-123" + type: string + team_id: + description: Linear team identifier. + example: "f1e2d3c4-5678-90ab-cdef-1234567890ab" + type: string + type: object + IssueCaseReference: + description: The case the issue is attached to. + properties: + id: + description: Case identifier. + example: "2841440d-e780-4fe2-96cd-6a8c1d194da5" + type: string + type: + $ref: "#/components/schemas/IssueCaseResourceType" + required: + - id + - type + type: object + IssueCaseRelationship: + description: Relationship between the issue and case. + properties: + data: + $ref: "#/components/schemas/IssueCaseReference" + required: + - data + type: object + IssueCaseRelationships: + description: Resources related to a case. + properties: + assignee: + $ref: "#/components/schemas/NullableUserRelationship" + created_by: + $ref: "#/components/schemas/NullableUserRelationship" + modified_by: + $ref: "#/components/schemas/NullableUserRelationship" + project: + $ref: "#/components/schemas/ProjectRelationship" + type: object + IssueCaseResourceType: + description: Type of the object. + enum: ["case"] + example: "case" + type: string + x-enum-varnames: + - CASE + IssueIncluded: + description: An array of related resources, returned when the `include` query parameter is used. + oneOf: + - $ref: "#/components/schemas/IssueCase" + - $ref: "#/components/schemas/IssueUser" + - $ref: "#/components/schemas/IssueTeam" + IssueLanguage: + description: Programming language associated with the issue. + enum: + - BRIGHTSCRIPT + - C + - C_PLUS_PLUS + - C_SHARP + - CLOJURE + - DOT_NET + - ELIXIR + - ERLANG + - GO + - GROOVY + - HASKELL + - HCL + - JAVA + - JAVASCRIPT + - JVM + - KOTLIN + - OBJECTIVE_C + - PERL + - PHP + - PYTHON + - RUBY + - RUST + - SCALA + - SWIFT + - TERRAFORM + - TYPESCRIPT + - UNKNOWN + example: "PYTHON" + type: string + x-enum-varnames: + - BRIGHTSCRIPT + - C + - C_PLUS_PLUS + - C_SHARP + - CLOJURE + - DOT_NET + - ELIXIR + - ERLANG + - GO + - GROOVY + - HASKELL + - HCL + - JAVA + - JAVASCRIPT + - JVM + - KOTLIN + - OBJECTIVE_C + - PERL + - PHP + - PYTHON + - RUBY + - RUST + - SCALA + - SWIFT + - TERRAFORM + - TYPESCRIPT + - UNKNOWN + IssuePlatform: + description: Platform associated with the issue. + enum: + - ANDROID + - BACKEND + - BROWSER + - FLUTTER + - IOS + - REACT_NATIVE + - ROKU + - UNKNOWN + example: "BACKEND" + type: string + x-enum-varnames: + - ANDROID + - BACKEND + - BROWSER + - FLUTTER + - IOS + - REACT_NATIVE + - ROKU + - UNKNOWN + IssueReference: + description: The issue the search result corresponds to. + properties: + id: + description: Issue identifier. + example: "c1726a66-1f64-11ee-b338-da7ad0900002" + type: string + type: + $ref: "#/components/schemas/IssueType" + required: + - id + - type + type: object + IssueRegression: + description: Regression information for an issue that was previously resolved and then reopened. + properties: + regressed_at: + description: Timestamp when the issue was reopened (regressed). + example: "2024-01-03T08:00:00Z" + format: date-time + type: string + regressed_at_version: + description: Application version where the regression was observed. + example: "v2.5.2" + type: string + resolved_at: + description: Timestamp when the issue was resolved before the regression. + example: "2024-01-01T10:00:00Z" + format: date-time + type: string + required: + - resolved_at + - regressed_at + type: object + IssueRelationships: + description: Relationship between the issue and an assignee, case and/or teams. + properties: + assignee: + $ref: "#/components/schemas/IssueAssigneeRelationship" + case: + $ref: "#/components/schemas/IssueCaseRelationship" + team_owners: + $ref: "#/components/schemas/IssueTeamOwnersRelationship" + type: object + IssueResponse: + description: Response containing error tracking issue data. + properties: + data: + $ref: "#/components/schemas/Issue" + included: + description: Array of resources related to the issue. + items: + $ref: "#/components/schemas/IssueIncluded" + type: array + type: object + IssueState: + description: State of the issue + enum: + - OPEN + - ACKNOWLEDGED + - RESOLVED + - IGNORED + - EXCLUDED + example: "RESOLVED" + type: string + x-enum-varnames: + - OPEN + - ACKNOWLEDGED + - RESOLVED + - IGNORED + - EXCLUDED + IssueTeam: + description: A team that owns an issue. + properties: + attributes: + $ref: "#/components/schemas/IssueTeamAttributes" + id: + description: Team identifier. + example: "221b0179-6447-4d03-91c3-3ca98bf60e8a" + type: string + type: + $ref: "#/components/schemas/IssueTeamType" + required: + - id + - type + - attributes + type: object + IssueTeamAttributes: + description: Object containing the information of a team. + properties: + handle: + description: The team's identifier. + example: "team-handle" + type: string + name: + description: The name of the team. + example: "Team Name" + type: string + summary: + description: A brief summary of the team, derived from its description. + example: "This is a team." + type: string + type: object + IssueTeamOwnersRelationship: + description: Relationship between the issue and teams. + properties: + data: + description: Array of teams that are owners of the issue. + items: + $ref: "#/components/schemas/IssueTeamReference" + type: array + required: + - data + type: object + IssueTeamReference: + description: A team that owns the issue. + properties: + id: + description: Team identifier. + example: "221b0179-6447-4d03-91c3-3ca98bf60e8a" + type: string + type: + $ref: "#/components/schemas/IssueTeamType" + required: + - id + - type + type: object + IssueTeamType: + description: Type of the object. + enum: ["team"] + example: "team" + type: string + x-enum-varnames: + - TEAM + IssueType: + description: Type of the object. + enum: ["issue"] + example: "issue" + type: string + x-enum-varnames: + - ISSUE + IssueUpdateAssigneeRequest: + description: Update issue assignee request payload. + properties: + data: + $ref: "#/components/schemas/IssueUpdateAssigneeRequestData" + required: + - data + type: object + IssueUpdateAssigneeRequestData: + description: Update issue assignee request. + properties: + id: + description: User identifier. + example: "87cb11a0-278c-440a-99fe-701223c80296" + type: string + type: + $ref: "#/components/schemas/IssueUpdateAssigneeRequestDataType" + required: + - id + - type + type: object + IssueUpdateAssigneeRequestDataType: + description: Type of the object. + enum: ["assignee"] + example: "assignee" + type: string + x-enum-varnames: + - ASSIGNEE + IssueUpdateStateRequest: + description: Update issue state request payload. + properties: + data: + $ref: "#/components/schemas/IssueUpdateStateRequestData" + required: + - data + type: object + IssueUpdateStateRequestData: + description: Update issue state request. + properties: + attributes: + $ref: "#/components/schemas/IssueUpdateStateRequestDataAttributes" + id: + description: Issue identifier. + example: "c1726a66-1f64-11ee-b338-da7ad0900002" + type: string + type: + $ref: "#/components/schemas/IssueUpdateStateRequestDataType" + required: + - id + - type + - attributes + type: object + IssueUpdateStateRequestDataAttributes: + description: Object describing an issue state update request. + properties: + state: + $ref: "#/components/schemas/IssueState" + required: + - state + type: object + IssueUpdateStateRequestDataType: + description: Type of the object. + enum: ["error_tracking_issue"] + example: "error_tracking_issue" + type: string + x-enum-varnames: + - ERROR_TRACKING_ISSUE + IssueUser: + description: The user to whom the issue is assigned. + properties: + attributes: + $ref: "#/components/schemas/IssueUserAttributes" + id: + description: User identifier. + example: "87cb11a0-278c-440a-99fe-701223c80296" + type: string + type: + $ref: "#/components/schemas/IssueUserType" + required: + - id + - type + - attributes + type: object + IssueUserAttributes: + description: Object containing the information of a user. + properties: + email: + description: Email of the user. + example: "user@company.com" + type: string + handle: + description: Handle of the user. + example: "User Handle" + type: string + name: + description: Name of the user. + example: "User Name" + type: string + type: object + IssueUserReference: + description: The user the issue is assigned to. + properties: + id: + description: User identifier. + example: "87cb11a0-278c-440a-99fe-701223c80296" + type: string + type: + $ref: "#/components/schemas/IssueUserType" + required: + - id + - type + type: object + IssueUserType: + description: Type of the object + enum: ["user"] + example: "user" + type: string + x-enum-varnames: + - USER + IssuesSearchRequest: + description: Search issues request payload. + properties: + data: + $ref: "#/components/schemas/IssuesSearchRequestData" + required: + - data + type: object + IssuesSearchRequestData: + description: Search issues request. + properties: + attributes: + $ref: "#/components/schemas/IssuesSearchRequestDataAttributes" + type: + $ref: "#/components/schemas/IssuesSearchRequestDataType" + required: + - type + - attributes + type: object + IssuesSearchRequestDataAttributes: + description: Object describing a search issue request. + properties: + assignee_ids: + description: Filter issues by assignee IDs. Multiple values are combined with OR logic. + example: + - "00000000-0000-0000-0000-000000000001" + items: + format: uuid + type: string + maxItems: 50 + type: array + from: + description: Start date (inclusive) of the query in milliseconds since the Unix epoch. + example: 1671612804000 + format: int64 + type: integer + order_by: + $ref: "#/components/schemas/IssuesSearchRequestDataAttributesOrderBy" + persona: + $ref: "#/components/schemas/IssuesSearchRequestDataAttributesPersona" + query: + description: Search query following the event search syntax. + example: "service:orders-* AND @language:go" + type: string + states: + description: Filter issues by state. Multiple values are combined with OR logic. + example: + - "OPEN" + - "ACKNOWLEDGED" + items: + $ref: "#/components/schemas/IssueState" + maxItems: 20 + type: array + team_ids: + description: Filter issues by team IDs. Multiple values are combined with OR logic. + example: + - "00000000-0000-0000-0000-000000000002" + items: + format: uuid + type: string + maxItems: 50 + type: array + to: + description: End date (exclusive) of the query in milliseconds since the Unix epoch. + example: 1671620004000 + format: int64 + type: integer + track: + $ref: "#/components/schemas/IssuesSearchRequestDataAttributesTrack" + required: + - query + - from + - to + type: object + IssuesSearchRequestDataAttributesOrderBy: + description: The attribute to sort the search results by. + enum: + - TOTAL_COUNT + - FIRST_SEEN + - IMPACTED_SESSIONS + - PRIORITY + example: "IMPACTED_SESSIONS" + type: string + x-enum-varnames: + - TOTAL_COUNT + - FIRST_SEEN + - IMPACTED_SESSIONS + - PRIORITY + IssuesSearchRequestDataAttributesPersona: + description: Persona for the search. Either track(s) or persona(s) must be specified. + enum: ["ALL", "BROWSER", "MOBILE", "BACKEND"] + example: "BACKEND" + type: string + x-enum-varnames: + - ALL + - BROWSER + - MOBILE + - BACKEND + IssuesSearchRequestDataAttributesTrack: + description: Track of the events to query. Either track(s) or persona(s) must be specified. + enum: ["trace", "logs", "rum"] + example: "trace" + type: string + x-enum-varnames: + - TRACE + - LOGS + - RUM + IssuesSearchRequestDataType: + description: Type of the object. + enum: ["search_request"] + example: "search_request" + type: string + x-enum-varnames: + - SEARCH_REQUEST + IssuesSearchResponse: + description: Search issues response payload. + properties: + data: + description: Array of results matching the search query. + items: + $ref: "#/components/schemas/IssuesSearchResult" + type: array + included: + description: Array of resources related to the search results. + items: + $ref: "#/components/schemas/IssuesSearchResultIncluded" + type: array + type: object + IssuesSearchResult: + description: Result matching the search query. + properties: + attributes: + $ref: "#/components/schemas/IssuesSearchResultAttributes" + id: + description: Search result identifier (matches the nested issue's identifier). + example: "c1726a66-1f64-11ee-b338-da7ad0900002" + type: string + relationships: + $ref: "#/components/schemas/IssuesSearchResultRelationships" + type: + $ref: "#/components/schemas/IssuesSearchResultType" + required: + - id + - type + - attributes + type: object + IssuesSearchResultAttributes: + description: Object containing the information of a search result. + properties: + impacted_sessions: + description: Count of sessions impacted by the issue over the queried time window. + example: 12 + format: int64 + type: integer + impacted_users: + description: Count of users impacted by the issue over the queried time window. + example: 4 + format: int64 + type: integer + total_count: + description: Total count of errors that match the issue over the queried time window. + example: 82 + format: int64 + type: integer + type: object + IssuesSearchResultIncluded: + description: An array of related resources, returned when the `include` query parameter is used. + oneOf: + - $ref: "#/components/schemas/Issue" + - $ref: "#/components/schemas/Case" + - $ref: "#/components/schemas/IssueUser" + - $ref: "#/components/schemas/IssueTeam" + IssuesSearchResultIssueRelationship: + description: Relationship between the search result and the corresponding issue. + properties: + data: + $ref: "#/components/schemas/IssueReference" + required: + - data + type: object + IssuesSearchResultRelationships: + description: Relationships between the search result and other resources. + properties: + issue: + $ref: "#/components/schemas/IssuesSearchResultIssueRelationship" + type: object + IssuesSearchResultType: + description: Type of the object. + enum: ["error_tracking_search_result"] + example: "error_tracking_search_result" + type: string + x-enum-varnames: + - ERROR_TRACKING_SEARCH_RESULT + ItemApiPayload: + description: A single datastore item with its content and metadata. + properties: + data: + $ref: "#/components/schemas/ItemApiPayloadData" + type: object + ItemApiPayloadArray: + description: A collection of datastore items with pagination and schema metadata. + properties: + data: + description: An array of datastore items with their content and metadata. + items: + $ref: "#/components/schemas/ItemApiPayloadData" + maxItems: 100 + type: array + meta: + $ref: "#/components/schemas/ItemApiPayloadMeta" + description: Metadata about the included items, including pagination info and datastore schema. + required: + - data + type: object + ItemApiPayloadData: + description: Core data and metadata for a single datastore item. + properties: + attributes: + $ref: "#/components/schemas/ItemApiPayloadDataAttributes" + id: + description: The unique identifier of the datastore. + type: string + type: + $ref: "#/components/schemas/DatastoreItemsDataType" + required: + - type + type: object + ItemApiPayloadDataAttributes: + description: Metadata and content of a datastore item. + properties: + created_at: + description: Timestamp when the item was first created. + format: date-time + type: string + modified_at: + description: Timestamp when the item was last modified. + format: date-time + type: string + org_id: + description: The ID of the organization that owns this item. + format: int64 + type: integer + primary_column_name: + $ref: "#/components/schemas/DatastoreAttributesPrimaryColumnName" + signature: + description: A unique signature identifying this item version. + type: string + store_id: + description: The unique identifier of the datastore containing this item. + type: string + value: + $ref: "#/components/schemas/ItemApiPayloadDataAttributesValue" + type: object + ItemApiPayloadDataAttributesValue: + additionalProperties: {} + description: The data content (as key-value pairs) of a datastore item. + type: object + ItemApiPayloadMeta: + description: Additional metadata about a collection of datastore items, including pagination and schema information. + properties: + page: + $ref: "#/components/schemas/ItemApiPayloadMetaPage" + schema: + $ref: "#/components/schemas/ItemApiPayloadMetaSchema" + type: object + ItemApiPayloadMetaPage: + description: Pagination information for a collection of datastore items. + properties: + hasMore: + description: Whether there are additional pages of items beyond the current page. + type: boolean + totalCount: + description: The total number of items in the datastore, ignoring any filters. + format: int64 + type: integer + totalFilteredCount: + description: The total number of items that match the current filter criteria. + format: int64 + type: integer + type: object + ItemApiPayloadMetaSchema: + description: Schema information about the datastore, including its primary key and field definitions. + properties: + fields: + description: An array describing the columns available in this datastore. + items: + $ref: "#/components/schemas/ItemApiPayloadMetaSchemaField" + type: array + primary_key: + description: The name of the primary key column for this datastore. + type: string + type: object + ItemApiPayloadMetaSchemaField: + description: Information about a specific column in the datastore schema. + properties: + name: + description: The name of this column in the datastore. + example: "" + type: string + type: + description: The data type of this column. For example, 'string', 'number', or 'boolean'. + example: "" + type: string + required: + - name + - type + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: "#/components/schemas/JSONAPIErrorItemSource" + status: + description: Status code of the response. + example: "400" + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: "Authorization" + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: "limit" + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: "/data/attributes/title" + type: string + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: "#/components/schemas/JSONAPIErrorItem" + type: array + required: + - errors + type: object + JSSourcemapAttributes: + description: Attributes of a JavaScript source map. + properties: + absolute_path: + description: The absolute path to the minified JavaScript file. + example: /js/bundle.min.js + type: string + blob_storage_sourcemap_path: + description: The path to the source map in blob storage. + example: org123/1.0.0/bundle.min.js.map + type: string + build_id: + description: The build identifier. + example: abc123 + type: string + created_at: + description: The timestamp when the source map was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + domain: + description: The domain associated with the source map. + example: example.com + type: string + file_name: + description: The file name of the minified JavaScript file. + example: bundle.min.js + type: string + mapkind: + description: The type of source map. + example: js + type: string + service: + description: The service name associated with the source map. + example: my-web-service + type: string + size: + description: The size of the source map file in bytes. + example: 1024 + format: int64 + type: integer + variant: + description: The source map variant. + example: release + type: string + version: + description: The version of the service associated with the source map. + example: 1.0.0 + type: string + version_code: + description: The version code. + example: "100" + type: string + required: + - mapkind + - size + - created_at + type: object + JSSourcemapData: + description: JavaScript source map data object. + properties: + attributes: + $ref: "#/components/schemas/JSSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "5" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + JVMSourcemapAttributes: + description: Attributes of a JVM mapping file. + properties: + build_id: + description: The build identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + created_at: + description: The timestamp when the mapping file was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + mapkind: + description: The type of source map. + example: jvm + type: string + service: + description: The service name associated with the mapping file. + example: my-android-app + type: string + size: + description: The size of the mapping file in bytes. + example: 512 + format: int64 + type: integer + variant: + description: The build variant (e.g., `release`, `debug`). + example: release + type: string + version: + description: The version of the service associated with the mapping file. + example: 1.0.0 + type: string + version_code: + description: The version code. + example: "100" + type: string + required: + - mapkind + - size + - created_at + type: object + JVMSourcemapData: + description: JVM (ProGuard/R8) mapping file data object. + properties: + attributes: + $ref: "#/components/schemas/JVMSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "9" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + JiraAccountAttributes: + description: Attributes of a Jira account + properties: + consumer_key: + description: The consumer key for the Jira account + example: "consumer-key-1" + type: string + instance_url: + description: The URL of the Jira instance + example: "https://example.atlassian.net" + type: string + last_webhook_timestamp: + description: Timestamp of the last webhook received + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - consumer_key + - instance_url + type: object + JiraAccountData: + description: Data object for a Jira account + properties: + attributes: + $ref: "#/components/schemas/JiraAccountAttributes" + id: + description: Unique identifier for the Jira account + example: "account-1" + type: string + type: + $ref: "#/components/schemas/JiraAccountType" + required: + - id + - type + - attributes + type: object + JiraAccountRelationship: + description: Relationship to a Jira account + properties: + data: + $ref: "#/components/schemas/JiraAccountData" + required: + - data + type: object + JiraAccountType: + description: Type identifier for Jira account resources + enum: + - jira-account + example: jira-account + type: string + x-enum-varnames: + - JIRA_ACCOUNT + JiraAccountsData: + description: Array of Jira account data objects + items: + $ref: "#/components/schemas/JiraAccountData" + type: array + JiraAccountsMeta: + description: Metadata for Jira accounts response + properties: + public_key: + description: Public key for the Jira integration + example: "c29tZSBkYXRhIHdpdGggACBhbmQg77u/" + type: string + type: object + JiraAccountsResponse: + description: Response containing Jira accounts + properties: + data: + $ref: "#/components/schemas/JiraAccountsData" + example: + - attributes: + consumer_key: "consumer-key-1" + instance_url: "https://example.atlassian.net" + id: "account-1" + type: jira-account + meta: + $ref: "#/components/schemas/JiraAccountsMeta" + required: + - data + type: object + JiraIntegrationMetadata: + description: Incident integration metadata for the Jira integration. + properties: + issues: + description: Array of Jira issues in this integration metadata. + example: [] + items: + $ref: "#/components/schemas/JiraIntegrationMetadataIssuesItem" + type: array + required: + - issues + type: object + JiraIntegrationMetadataIssuesItem: + description: Item in the Jira integration metadata issue array. + properties: + account: + description: URL of issue's Jira account. + example: https://example.atlassian.net + type: string + issue_key: + description: Jira issue's issue key. + example: PROJ-123 + type: string + issuetype_id: + description: Jira issue's issue type. + example: "1000" + type: string + project_key: + description: Jira issue's project keys. + example: PROJ + type: string + redirect_url: + description: URL redirecting to the Jira issue. + example: https://example.atlassian.net/browse/PROJ-123 + type: string + required: + - project_key + - account + type: object + JiraIssue: + description: Jira issue attached to case + nullable: true + properties: + result: + $ref: "#/components/schemas/JiraIssueResult" + status: + $ref: "#/components/schemas/Case3rdPartyTicketStatus" + readOnly: true + type: object + JiraIssueCreateAttributes: + description: Jira issue creation attributes + properties: + fields: + additionalProperties: {} + description: Additional Jira fields + example: {} + type: object + issue_type_id: + description: Jira issue type ID + example: "10001" + type: string + jira_account_id: + description: Jira account ID + example: "1234" + type: string + project_id: + description: Jira project ID + example: "5678" + type: string + required: + - jira_account_id + - project_id + - issue_type_id + type: object + JiraIssueCreateData: + description: Jira issue creation data + properties: + attributes: + $ref: "#/components/schemas/JiraIssueCreateAttributes" + type: + $ref: "#/components/schemas/JiraIssueResourceType" + required: + - type + - attributes + type: object + JiraIssueCreateRequest: + description: Jira issue creation request + properties: + data: + $ref: "#/components/schemas/JiraIssueCreateData" + required: + - data + type: object + JiraIssueLinkAttributes: + description: Jira issue link attributes + properties: + jira_issue_url: + description: URL of the Jira issue + example: "https://jira.example.com/browse/PROJ-123" + type: string + required: + - jira_issue_url + type: object + JiraIssueLinkData: + description: Jira issue link data + properties: + attributes: + $ref: "#/components/schemas/JiraIssueLinkAttributes" + type: + $ref: "#/components/schemas/JiraIssueResourceType" + required: + - type + - attributes + type: object + JiraIssueLinkRequest: + description: Jira issue link request + properties: + data: + $ref: "#/components/schemas/JiraIssueLinkData" + required: + - data + type: object + JiraIssueResourceType: + description: Jira issue resource type + enum: + - issues + example: issues + type: string + x-enum-varnames: + - ISSUES + JiraIssueResult: + description: Jira issue information + properties: + issue_id: + description: Jira issue ID + type: string + issue_key: + description: Jira issue key + type: string + issue_url: + description: Jira issue URL + type: string + project_key: + description: Jira project key + type: string + type: object + JiraIssueTemplateCreateRequest: + description: Request to create a Jira issue template + properties: + data: + $ref: "#/components/schemas/JiraIssueTemplateCreateRequestData" + type: object + JiraIssueTemplateCreateRequestAttributes: + description: Attributes for creating a Jira issue template + properties: + fields: + additionalProperties: {} + description: Custom fields for the Jira issue template + example: + description: + payload: "Test" + type: "json" + type: object + issue_type_id: + description: The ID of the Jira issue type + example: "12730" + type: string + jira-account: + $ref: "#/components/schemas/JiraIssueTemplateCreateRequestAttributesJiraAccount" + name: + description: The name of the issue template + example: "test-template" + type: string + project_id: + description: The ID of the Jira project + example: "10772" + type: string + type: object + JiraIssueTemplateCreateRequestAttributesJiraAccount: + description: Reference to the Jira account + properties: + id: + description: The ID of the Jira account + example: "80f16d40-1fba-486e-b1fc-983e6ca19bec" + format: uuid + type: string + required: + - id + type: object + JiraIssueTemplateCreateRequestData: + description: Data object for creating a Jira issue template + properties: + attributes: + $ref: "#/components/schemas/JiraIssueTemplateCreateRequestAttributes" + type: + $ref: "#/components/schemas/JiraIssueTemplateType" + type: object + JiraIssueTemplateData: + description: Data object for a Jira issue template + properties: + attributes: + $ref: "#/components/schemas/JiraIssueTemplateDataAttributes" + id: + description: Unique identifier for the Jira issue template + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/JiraIssueTemplateDataRelationships" + type: + $ref: "#/components/schemas/JiraIssueTemplateType" + required: + - id + - type + - attributes + type: object + JiraIssueTemplateDataAttributes: + description: Attributes of a Jira issue template + properties: + fields: + additionalProperties: {} + description: Custom fields for the Jira issue template + example: + description: + payload: "Test Description" + type: "json" + type: object + issue_type_id: + description: The ID of the Jira issue type + example: "456" + type: string + name: + description: The name of the issue template + example: "Test Template" + type: string + project_id: + description: The ID of the Jira project + example: "123" + type: string + required: + - name + - project_id + - issue_type_id + - fields + type: object + JiraIssueTemplateDataRelationships: + description: Relationships of a Jira issue template + properties: + jira-account: + $ref: "#/components/schemas/JiraAccountRelationship" + required: + - jira-account + type: object + JiraIssueTemplateResponse: + description: Response containing a single Jira issue template + properties: + data: + $ref: "#/components/schemas/JiraIssueTemplateData" + included: + $ref: "#/components/schemas/JiraAccountsData" + required: + - data + type: object + JiraIssueTemplateType: + description: Type identifier for Jira issue template resources + enum: + - jira-issue-template + example: jira-issue-template + type: string + x-enum-varnames: + - JIRA_ISSUE_TEMPLATE + JiraIssueTemplateUpdateRequest: + description: Request to update a Jira issue template + properties: + data: + $ref: "#/components/schemas/JiraIssueTemplateUpdateRequestData" + required: + - data + type: object + JiraIssueTemplateUpdateRequestAttributes: + description: Attributes for updating a Jira issue template + properties: + fields: + additionalProperties: {} + description: Custom fields for the Jira issue template + example: + description: + payload: "Updated Description" + type: "json" + type: object + name: + description: The name of the issue template + example: "test_template_updated" + type: string + type: object + JiraIssueTemplateUpdateRequestData: + description: Data object for updating a Jira issue template + properties: + attributes: + $ref: "#/components/schemas/JiraIssueTemplateUpdateRequestAttributes" + type: + $ref: "#/components/schemas/JiraIssueTemplateType" + required: + - type + - attributes + type: object + JiraIssueTemplatesData: + description: Array of Jira issue template data objects + items: + $ref: "#/components/schemas/JiraIssueTemplateData" + type: array + JiraIssueTemplatesResponse: + description: Response containing Jira issue templates + properties: + data: + $ref: "#/components/schemas/JiraIssueTemplatesData" + example: + - attributes: + fields: + description: + payload: "Test Description" + type: "json" + issue_type_id: "10001" + name: "Bug Report Template" + project_id: "PROJECT-1" + id: "65b3341b-0680-47f9-a6d4-134db45c603e" + type: jira-issue-template + included: + $ref: "#/components/schemas/JiraAccountsData" + required: + - data + type: object + JiraIssuesDataType: + default: jira_issues + description: Jira issues resource type. + enum: + - jira_issues + example: jira_issues + type: string + x-enum-varnames: + - JIRA_ISSUES + JobCreateResponse: + description: Run a historical job response. + properties: + data: + $ref: "#/components/schemas/JobCreateResponseData" + type: object + JobCreateResponseData: + description: The definition of `JobCreateResponseData` object. + properties: + id: + description: ID of the created job. + type: string + type: + $ref: "#/components/schemas/HistoricalJobDataType" + type: object + JobDefinition: + description: Definition of a historical job. + properties: + calculatedFields: + description: Calculated fields. + items: + $ref: "#/components/schemas/CalculatedField" + type: array + cases: + description: Cases used for generating job results. Up to 10 cases are allowed. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseCreate" + maxItems: 10 + type: array + from: + description: Starting time of data analyzed by the job. + example: 1729843470000 + format: int64 + type: integer + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + index: + description: Index used to load the data. + example: cloud_siem + type: string + message: + description: Message for generated results. + example: A large number of failed login attempts. + type: string + name: + description: Job name. + example: Excessive number of failed attempts. + type: string + options: + $ref: "#/components/schemas/HistoricalJobOptions" + queries: + description: Queries for selecting logs analyzed by the job. Up to 10 queries are allowed. + items: + $ref: "#/components/schemas/HistoricalJobQuery" + maxItems: 10 + type: array + referenceTables: + description: Reference tables used in the queries. + items: + $ref: "#/components/schemas/SecurityMonitoringReferenceTable" + type: array + tags: + description: Tags for generated signals. + items: + description: A tag string in `key:value` format. + type: string + type: array + thirdPartyCases: + description: Cases for generating results from third-party detection method. Only available for third-party detection method. Up to 10 cases are allowed. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate" + maxItems: 10 + type: array + to: + description: Ending time of data analyzed by the job. + example: 1729847070000 + format: int64 + type: integer + type: + description: Job type. + type: string + required: + - from + - to + - index + - name + - cases + - queries + - message + type: object + JobDefinitionFromRule: + description: Definition of a historical job based on a security monitoring rule. + properties: + caseIndex: + description: Zero-based index of the rule case to use as the job's signal condition. When omitted, all cases are evaluated. Up to 10 cases are supported, so valid values are 0 to 9. + format: int32 + maximum: 9 + minimum: 0 + type: integer + from: + description: Starting time of data analyzed by the job. + example: 1729843470000 + format: int64 + type: integer + id: + description: ID of the detection rule used to create the job. + example: abc-def-ghi + type: string + index: + description: Index used to load the data. + example: cloud_siem + type: string + notifications: + description: Notifications sent when the job is completed. + example: + - "@sns-cloudtrail-results" + items: + description: A notification recipient handle (for example, `@user` or `@channel`). + type: string + type: array + to: + description: Ending time of data analyzed by the job. + example: 1729847070000 + format: int64 + type: integer + required: + - id + - from + - to + - index + type: object + JsonPatchOperation: + description: A JSON Patch operation as per RFC 6902. + properties: + op: + $ref: "#/components/schemas/JsonPatchOperationOp" + path: + description: A JSON Pointer path (e.g., "/name", "/value/secure"). + example: "/name" + type: string + value: + description: The value to use for the operation (not applicable for "remove" and "test" operations). + required: + - op + - path + type: object + JsonPatchOperationOp: + description: The operation to perform. + enum: + - add + - remove + - replace + - move + - copy + - test + example: add + type: string + x-enum-varnames: + - ADD + - REMOVE + - REPLACE + - MOVE + - COPY + - TEST + KindAttributes: + description: Kind attributes. + properties: + description: + description: Short description of the kind. + type: string + displayName: + description: User friendly name of the kind. + type: string + name: + description: The kind name. + example: my-job + minLength: 1 + type: string + type: object + KindData: + description: Schema that defines the structure of a Kind object in the Software Catalog. + properties: + attributes: + $ref: "#/components/schemas/KindAttributes" + id: + description: A read-only globally unique identifier for the entity generated by Datadog. User supplied values are ignored. + example: 4b163705-23c0-4573-b2fb-f6cea2163fcb + minLength: 1 + type: string + meta: + $ref: "#/components/schemas/KindMetadata" + type: + description: Kind. + type: string + type: object + KindMetadata: + description: Kind metadata. + properties: + createdAt: + description: The creation time. + type: string + modifiedAt: + description: The modification time. + type: string + type: object + KindObj: + description: Schema for kind. + properties: + description: + description: Short description of the kind. + type: string + displayName: + description: The display name of the kind. Automatically generated if not provided. + type: string + kind: + description: The name of the kind to create or update. This must be in kebab-case format. + example: "my-job" + type: string + required: + - kind + type: object + KindRaw: + description: Kind definition in raw JSON or YAML representation. + example: |- + kind: service + displayName: Service + description: A service entity in the catalog. + type: string + KindResponseData: + description: List of kind responses. + items: + $ref: "#/components/schemas/KindData" + type: array + KindResponseMeta: + description: Kind response metadata. + properties: + count: + description: Total kinds count. + format: int64 + type: integer + type: object + LLMObsAnnotatedInteractionByTraceItem: + description: An annotated interaction returned by the cross-queue lookup, including the source queue metadata. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: "#/components/schemas/LLMObsAnnotationItem" + type: array + content_id: + description: Upstream entity identifier (trace ID, session ID, or deterministic display_block ID). + example: "trace-abc-123" + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: "2025-06-01T12:00:00Z" + format: date-time + type: string + display_block: + $ref: "#/components/schemas/LLMObsContentBlocks" + id: + description: Unique identifier of the interaction. + example: "interaction-456" + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: "2025-06-01T12:00:00Z" + format: date-time + type: string + queue_id: + description: Identifier of the annotation queue this interaction belongs to. + example: "queue-uuid-001" + type: string + queue_name: + description: Name of the annotation queue this interaction belongs to. + example: "My Annotation Queue" + type: string + type: + $ref: "#/components/schemas/LLMObsAnyInteractionType" + required: + - id + - type + - content_id + - created_at + - modified_at + - queue_id + - queue_name + - annotations + type: object + LLMObsAnnotatedInteractionItem: + description: An interaction with its associated annotations. + oneOf: + - $ref: "#/components/schemas/LLMObsTraceAnnotatedInteractionItem" + - $ref: "#/components/schemas/LLMObsDisplayBlockAnnotatedInteractionItem" + LLMObsAnnotatedInteractionsByTraceDataAttributesResponse: + description: Attributes of the cross-queue annotated interactions response. + properties: + annotated_interactions: + description: List of annotated interactions across all queues for the requested content IDs. + items: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionByTraceItem" + type: array + total_count: + description: Total number of annotated interactions matching the query. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - annotated_interactions + - total_count + type: object + LLMObsAnnotatedInteractionsByTraceDataResponse: + description: Data object for the cross-queue annotated interactions response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsByTraceDataAttributesResponse" + id: + description: Opaque identifier for the response object. + example: "trace-query" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsByTraceType" + required: + - id + - type + - attributes + type: object + LLMObsAnnotatedInteractionsByTraceResponse: + description: Response containing annotated interactions across all queues for the requested content IDs. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsByTraceDataResponse" + required: + - data + type: object + LLMObsAnnotatedInteractionsByTraceType: + description: Resource type for cross-queue annotated interactions lookup. + enum: + - annotated_interactions_by_trace + example: annotated_interactions_by_trace + type: string + x-enum-varnames: + - ANNOTATED_INTERACTIONS_BY_TRACE + LLMObsAnnotatedInteractionsDataAttributesResponse: + description: Attributes containing the list of annotated interactions. + properties: + annotated_interactions: + description: List of interactions with their annotations. + example: + - annotations: [] + content_id: trace-abc-123 + id: "interaction-456" + type: trace + items: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionItem" + type: array + required: + - annotated_interactions + type: object + LLMObsAnnotatedInteractionsDataResponse: + description: Data object for annotated interactions. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsDataAttributesResponse" + id: + description: The annotation queue ID. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsType" + required: + - id + - type + - attributes + type: object + LLMObsAnnotatedInteractionsResponse: + description: Response containing the annotated interactions for an annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsDataResponse" + required: + - data + type: object + LLMObsAnnotatedInteractionsType: + description: Resource type for annotated interactions. + enum: + - annotated_interactions + example: annotated_interactions + type: string + x-enum-varnames: + - ANNOTATED_INTERACTIONS + LLMObsAnnotationAssessment: + description: Assessment result for a label value. + enum: + - pass + - fail + example: "pass" + type: string + x-enum-varnames: + - PASS + - FAIL + LLMObsAnnotationError: + description: A partial error for a single annotation that could not be processed. + properties: + annotation_id: + description: ID of the annotation that failed, if applicable. + example: "00000000-0000-0000-0000-000000000000" + type: string + error: + description: Error message. + example: "interaction not found" + type: string + interaction_id: + description: ID of the interaction that failed. + example: "00000000-0000-0000-0000-000000000001" + type: string + required: + - interaction_id + - error + type: object + LLMObsAnnotationItem: + description: A single annotation on an interaction. + properties: + created_at: + description: Timestamp when the annotation was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + created_by: + description: Identifier of the user who created the annotation. + example: "00000000-0000-0000-0000-000000000002" + type: string + id: + description: Unique identifier of the annotation. + example: "annotation-789" + type: string + interaction_id: + description: Identifier of the interaction this annotation belongs to. + example: "interaction-456" + type: string + label_values: + additionalProperties: {} + description: Label values for this annotation. + example: + - label_schema_id: "abc-123" + value: "good" + type: object + modified_at: + description: Timestamp when the annotation was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + modified_by: + description: Identifier of the user who last modified the annotation. + example: "00000000-0000-0000-0000-000000000002" + type: string + required: + - id + - interaction_id + - label_values + - created_by + - created_at + - modified_by + - modified_at + type: object + LLMObsAnnotationItemResponse: + description: A single annotation on an interaction, as returned by the API. + properties: + created_at: + description: Timestamp when the annotation was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + created_by: + description: Identifier of the user who created the annotation. + example: "00000000-0000-0000-0000-000000000002" + type: string + id: + description: Unique identifier of the annotation. + example: "annotation-789" + type: string + interaction_id: + description: Identifier of the interaction this annotation belongs to. + example: "interaction-456" + type: string + label_values: + description: |- + Label values for this annotation. Each entry references a label schema by ID + and provides the corresponding value. + example: + - label_schema_id: "abc-123" + value: "good" + items: + $ref: "#/components/schemas/LLMObsAnnotationLabelValueResponse" + type: array + modified_at: + description: Timestamp when the annotation was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + modified_by: + description: Identifier of the user who last modified the annotation. + example: "00000000-0000-0000-0000-000000000002" + type: string + required: + - id + - interaction_id + - label_values + - created_by + - created_at + - modified_by + - modified_at + type: object + LLMObsAnnotationLabelValue: + description: |- + A single label value entry in an annotation. + The `value` type must match the label schema type: + - `score`: a number within the schema `min`/`max` range (integer if `is_integer` is `true`). + - `categorical`: a string that is one of the schema `values`. + - `boolean`: `true` or `false`. + - `text`: any non-empty string. + properties: + assessment: + $ref: "#/components/schemas/LLMObsAnnotationAssessment" + label_schema_id: + description: ID of the label schema this value corresponds to. + example: "abc-123" + type: string + reasoning: + description: Free text reasoning for this label value. + example: "The response was accurate and well-structured." + type: string + value: + $ref: "#/components/schemas/LLMObsAnnotationLabelValueValue" + required: + - label_schema_id + - value + type: object + LLMObsAnnotationLabelValueResponse: + description: |- + A single label value entry in an annotation response. + In addition to the submitted fields, the server populates `type` and + `name_when_saved` to mirror the schema state at the time the annotation + was created — these help clients display values correctly when the schema + has since changed. + properties: + assessment: + $ref: "#/components/schemas/LLMObsAnnotationAssessment" + label_schema_id: + description: ID of the label schema this value corresponds to. + example: "abc-123" + type: string + name_when_saved: + description: Name of the label schema at the time the annotation was created. + example: "quality" + type: string + reasoning: + description: Free text reasoning for this label value. + example: "The response was accurate and well-structured." + type: string + type: + $ref: "#/components/schemas/LLMObsLabelSchemaType" + value: + $ref: "#/components/schemas/LLMObsAnnotationLabelValueValue" + required: + - label_schema_id + - value + type: object + LLMObsAnnotationLabelValueStringArray: + description: For categorical-type labels allowing multiple selections. + items: + type: string + type: array + LLMObsAnnotationLabelValueValue: + description: The value for this label. Must comply with the label schema type constraints. + example: 0.0 + oneOf: + - $ref: "#/components/schemas/AnyValueNumber" + - $ref: "#/components/schemas/AnyValueString" + - $ref: "#/components/schemas/LLMObsAnnotationLabelValueStringArray" + - $ref: "#/components/schemas/AnyValueBoolean" + LLMObsAnnotationQueueDataAttributesRequest: + description: Attributes for creating an Agent Observability annotation queue. + properties: + annotation_schema: + $ref: "#/components/schemas/LLMObsAnnotationSchema" + description: + description: Description of the annotation queue. + example: "Queue for annotating customer support traces" + type: string + name: + description: Name of the annotation queue. + example: "My annotation queue" + type: string + project_id: + description: Identifier of the project this queue belongs to. + example: "00000000-0000-0000-0000-000000000002" + type: string + required: + - name + - project_id + type: object + LLMObsAnnotationQueueDataAttributesResponse: + description: Attributes of an Agent Observability annotation queue. + properties: + annotation_schema: + $ref: "#/components/schemas/LLMObsAnnotationSchema" + created_at: + description: Timestamp when the queue was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + created_by: + description: Identifier of the user who created the queue. + example: "00000000-0000-0000-0000-000000000002" + type: string + description: + description: Description of the annotation queue. + example: "Queue for annotating customer support traces" + type: string + modified_at: + description: Timestamp when the queue was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + modified_by: + description: Identifier of the user who last modified the queue. + example: "00000000-0000-0000-0000-000000000002" + type: string + name: + description: Name of the annotation queue. + example: "My annotation queue" + type: string + owned_by: + description: Identifier of the user who owns the queue. + example: "00000000-0000-0000-0000-000000000002" + type: string + project_id: + description: Identifier of the project this queue belongs to. + example: "00000000-0000-0000-0000-000000000002" + type: string + required: + - name + - project_id + - description + - created_by + - created_at + - modified_by + - modified_at + - owned_by + type: object + LLMObsAnnotationQueueDataRequest: + description: Data object for creating an Agent Observability annotation queue. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueType" + required: + - type + - attributes + type: object + LLMObsAnnotationQueueDataResponse: + description: Data object for an Agent Observability annotation queue. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueDataAttributesResponse" + id: + description: Unique identifier of the annotation queue. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueType" + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueInteractionItem: + description: A single interaction to add to an annotation queue. + oneOf: + - $ref: "#/components/schemas/LLMObsTraceInteractionItem" + - $ref: "#/components/schemas/LLMObsDisplayBlockInteractionItem" + LLMObsAnnotationQueueInteractionResponseItem: + description: A single interaction result. + oneOf: + - $ref: "#/components/schemas/LLMObsTraceInteractionResponseItem" + - $ref: "#/components/schemas/LLMObsDisplayBlockInteractionResponseItem" + LLMObsAnnotationQueueInteractionsDataAttributesRequest: + description: Attributes for adding interactions to an annotation queue. + properties: + interactions: + description: List of interactions to add to the queue. Must contain at least one item. + example: + - content_id: trace-abc-123 + type: trace + items: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionItem" + minItems: 1 + type: array + required: + - interactions + type: object + LLMObsAnnotationQueueInteractionsDataAttributesResponse: + description: Attributes of the interaction addition response. + properties: + interactions: + description: List of interactions that were processed. + example: + - already_existed: false + content_id: trace-abc-123 + id: "00000000-0000-0000-0000-000000000000" + type: trace + items: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionResponseItem" + type: array + required: + - interactions + type: object + LLMObsAnnotationQueueInteractionsDataRequest: + description: Data object for adding interactions to an annotation queue. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsType" + required: + - type + - attributes + type: object + LLMObsAnnotationQueueInteractionsDataResponse: + description: Data object for the interaction addition response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsDataAttributesResponse" + id: + description: The queue ID the interactions were added to. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsType" + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueInteractionsRequest: + description: Request to add interactions to an Agent Observability annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsDataRequest" + required: + - data + type: object + LLMObsAnnotationQueueInteractionsResponse: + description: Response containing the result of adding interactions to an annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsDataResponse" + required: + - data + type: object + LLMObsAnnotationQueueInteractionsType: + description: Resource type for annotation queue interactions. + enum: + - interactions + example: interactions + type: string + x-enum-varnames: + - INTERACTIONS + LLMObsAnnotationQueueLabelSchemaAttributes: + description: Attributes of an annotation queue label schema. + properties: + annotation_schema: + $ref: "#/components/schemas/LLMObsAnnotationSchema" + required: + - annotation_schema + type: object + LLMObsAnnotationQueueLabelSchemaData: + description: Data object for an annotation queue label schema. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaAttributes" + id: + description: Unique identifier of the annotation queue. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueType" + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueLabelSchemaResponse: + description: Response containing the label schema of an annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaData" + required: + - data + type: object + LLMObsAnnotationQueueLabelSchemaUpdateAttributes: + description: Attributes for updating an annotation queue label schema. + properties: + annotation_schema: + $ref: "#/components/schemas/LLMObsAnnotationSchema" + required: + - annotation_schema + type: object + LLMObsAnnotationQueueLabelSchemaUpdateData: + description: Data object for updating an annotation queue label schema. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaUpdateAttributes" + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueType" + required: + - type + - attributes + type: object + LLMObsAnnotationQueueLabelSchemaUpdateRequest: + description: Request to update the label schema of an annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaUpdateData" + required: + - data + type: object + LLMObsAnnotationQueueRequest: + description: Request to create an Agent Observability annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueDataRequest" + required: + - data + type: object + LLMObsAnnotationQueueResponse: + description: Response containing a single Agent Observability annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueDataResponse" + required: + - data + type: object + LLMObsAnnotationQueueType: + description: Resource type of an Agent Observability annotation queue. + enum: + - queues + example: queues + type: string + x-enum-varnames: + - QUEUES + LLMObsAnnotationQueueUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability annotation queue. All fields are optional. + properties: + annotation_schema: + $ref: "#/components/schemas/LLMObsAnnotationSchema" + description: + description: Updated description of the annotation queue. + example: "Updated description" + type: string + name: + description: Updated name of the annotation queue. + example: "Updated queue name" + type: string + type: object + LLMObsAnnotationQueueUpdateDataRequest: + description: Data object for updating an Agent Observability annotation queue. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationQueueUpdateDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueType" + required: + - type + - attributes + type: object + LLMObsAnnotationQueueUpdateRequest: + description: Request to update an Agent Observability annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationQueueUpdateDataRequest" + required: + - data + type: object + LLMObsAnnotationQueuesResponse: + description: Response containing a list of Agent Observability annotation queues. + properties: + data: + description: List of annotation queues. + items: + $ref: "#/components/schemas/LLMObsAnnotationQueueDataResponse" + type: array + required: + - data + type: object + LLMObsAnnotationSchema: + description: Schema defining the labels for an annotation queue. + properties: + label_schemas: + description: List of label schema definitions. + items: + $ref: "#/components/schemas/LLMObsLabelSchema" + type: array + required: + - label_schemas + type: object + LLMObsAnnotationsDataAttributesRequest: + description: Attributes for creating or updating annotations. + properties: + annotations: + description: List of annotations to create or update. Must contain at least one item. + items: + $ref: "#/components/schemas/LLMObsUpsertAnnotationItem" + minItems: 1 + type: array + required: + - annotations + type: object + LLMObsAnnotationsDataAttributesResponse: + description: Attributes of the annotations response. + properties: + annotations: + description: Successfully created or updated annotations. + items: + $ref: "#/components/schemas/LLMObsAnnotationItemResponse" + type: array + errors: + description: Partial errors for annotations that could not be processed. + items: + $ref: "#/components/schemas/LLMObsAnnotationError" + type: array + required: + - annotations + type: object + LLMObsAnnotationsDataRequest: + description: Data object for creating or updating annotations. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsAnnotationsType" + required: + - type + - attributes + type: object + LLMObsAnnotationsDataResponse: + description: Data object for the annotations response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsAnnotationsDataAttributesResponse" + id: + description: The annotation queue ID. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotationsType" + required: + - id + - type + - attributes + type: object + LLMObsAnnotationsRequest: + description: Request to create or update annotations on interactions in an annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationsDataRequest" + required: + - data + type: object + LLMObsAnnotationsResponse: + description: Response containing the created or updated annotations. + properties: + data: + $ref: "#/components/schemas/LLMObsAnnotationsDataResponse" + required: + - data + type: object + LLMObsAnnotationsType: + description: Resource type for Agent Observability annotations. + enum: + - annotations + example: annotations + type: string + x-enum-varnames: + - ANNOTATIONS + LLMObsAnthropicEffort: + description: The effort level for Anthropic inference. + enum: + - low + - medium + - high + - max + example: medium + nullable: true + type: string + x-enum-varnames: + - LOW + - MEDIUM + - HIGH + - MAX + LLMObsAnthropicMetadata: + description: Anthropic-specific metadata for an inference request. + properties: + effort: + $ref: "#/components/schemas/LLMObsAnthropicEffort" + thinking: + $ref: "#/components/schemas/LLMObsAnthropicThinkingConfig" + nullable: true + type: object + LLMObsAnthropicThinkingConfig: + description: Configuration for Anthropic extended thinking feature. + properties: + budget_tokens: + description: Maximum token budget for extended thinking. Required when type is `enabled`. + example: 1024 + format: int64 + nullable: true + type: integer + type: + $ref: "#/components/schemas/LLMObsAnthropicThinkingType" + required: + - type + type: object + LLMObsAnthropicThinkingType: + description: The thinking mode for Anthropic extended thinking. + enum: + - enabled + - disabled + - adaptive + example: enabled + type: string + x-enum-varnames: + - ENABLED + - DISABLED + - ADAPTIVE + LLMObsAnyInteractionType: + description: Type of an annotated interaction. + enum: + - trace + - experiment_trace + - session + - display_block + example: trace + type: string + x-enum-varnames: + - TRACE + - EXPERIMENT_TRACE + - SESSION + - DISPLAY_BLOCK + LLMObsAzureOpenAIMetadata: + description: Azure OpenAI-specific metadata for an integration account or inference request. + properties: + deployment_id: + description: The Azure OpenAI deployment ID. + example: "my-gpt4-deployment" + type: string + model_version: + description: The model version deployed in Azure. + example: "0613" + type: string + resource_name: + description: The Azure OpenAI resource name. + example: "my-azure-resource" + type: string + type: object + LLMObsBedrockMetadata: + description: Amazon Bedrock-specific metadata for an inference request. + properties: + region: + description: The AWS region for the Bedrock request. + example: "us-east-1" + type: string + type: object + LLMObsContentBlock: + description: |- + A single content block rendered inside a `display_block` interaction. + `type` discriminates which other fields are meaningful: + + - `markdown` / `text`: `content` must be a string. + - `header`: `content` must be a string; `level`, when set, must be one of `sm`, `md`, `lg`, `xl`. + - `json`: `content` must be a well-formed JSON value (object, array, or scalar). + - `image`: `url` is required. + - `widget`: `tileDef` is required (any well-formed JSON; the frontend owns the renderable schema). + - `llmobs_trace`: `traceId` is required; `interactionType`, when set, must be `trace` or `experiment_trace`. + + `height`, when set, must be positive. + properties: + alt: + description: Alternative text for an `image` block. + example: "Example image" + type: string + content: + description: |- + Block payload. A string for `markdown`, `header`, and `text`; an + arbitrary JSON value (object, array, or scalar) for `json`. Omitted + for `image`, `widget`, and `llmobs_trace`. + example: "## Triage Instructions" + height: + description: Optional rendered height. Must be positive when set. + example: 240 + format: int64 + type: integer + interactionType: + $ref: "#/components/schemas/LLMObsContentBlockLLMObsTraceInteractionType" + label: + description: Optional label rendered alongside the block. + example: "Triage Instructions" + type: string + level: + $ref: "#/components/schemas/LLMObsContentBlockHeaderLevel" + tileDef: + description: |- + Tile definition for a `widget` block. Required for `widget`. The + schema is owned by the frontend renderer. + example: + requests: + - queries: + - data_source: metrics + name: q + query: "avg:system.cpu.user{*}" + response_format: timeseries + type: line + viz: timeseries + timeFrame: + $ref: "#/components/schemas/LLMObsContentBlockTimeFrame" + traceId: + description: Trace identifier. Required for `llmobs_trace` blocks. + example: "69fcc2bb0000000003113989d83069ba" + type: string + type: + $ref: "#/components/schemas/LLMObsContentBlockType" + url: + description: URL of the image. Required for `image` blocks. + example: "https://example.com/image.png" + type: string + required: + - type + type: object + LLMObsContentBlockHeaderLevel: + description: Visual size for a `header` block. + enum: + - sm + - md + - lg + - xl + example: md + type: string + x-enum-varnames: + - SM + - MD + - LG + - XL + LLMObsContentBlockLLMObsTraceInteractionType: + description: |- + Upstream interaction type referenced by an `llmobs_trace` block. + Restricted to `trace` or `experiment_trace`. + enum: + - trace + - experiment_trace + example: trace + type: string + x-enum-varnames: + - TRACE + - EXPERIMENT_TRACE + LLMObsContentBlockTimeFrame: + description: Unix-millis time range used by chart blocks. + properties: + end: + description: End of the range, in Unix milliseconds. + example: 1705315800000 + format: int64 + type: integer + start: + description: Start of the range, in Unix milliseconds. + example: 1705312200000 + format: int64 + type: integer + required: + - start + - end + type: object + LLMObsContentBlockType: + description: |- + Discriminator for a single `display_block` content block. Adding a + variant requires coordinated changes in the frontend renderer. + enum: + - markdown + - header + - text + - json + - image + - widget + - llmobs_trace + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + - HEADER + - TEXT + - JSON + - IMAGE + - WIDGET + - LLMOBS_TRACE + LLMObsContentBlocks: + description: |- + List of content blocks that make up a `display_block` interaction. + Must contain at least one block. + items: + $ref: "#/components/schemas/LLMObsContentBlock" + minItems: 1 + type: array + LLMObsCreatePromptData: + description: Data object for creating an Agent Observability prompt. + properties: + attributes: + $ref: "#/components/schemas/LLMObsCreatePromptDataAttributes" + type: + $ref: "#/components/schemas/LLMObsPromptType" + required: + - type + - attributes + type: object + LLMObsCreatePromptDataAttributes: + description: >- + Attributes for creating an Agent Observability prompt and its first version. `prompt_id` and `template` are required; all other attributes are optional. + properties: + description: + description: Optional description of the prompt. + type: string + env_ids: + description: >- + Optional feature-flag environment UUIDs the service attempts to enable and configure to use the first version as their default after creation. + items: + type: string + type: array + labels: + deprecated: true + description: >- + Optional labels to attach to the first version. Do not use this attribute for new integrations. + items: + $ref: "#/components/schemas/LLMObsPromptVersionLabel" + type: array + prompt_id: + description: Customer-provided identifier for the new prompt. + example: "customer-support-assistant" + minLength: 1 + type: string + template: + $ref: "#/components/schemas/LLMObsPromptTemplate" + title: + description: Optional title of the prompt. + type: string + user_version: + description: Optional user-supplied version identifier for the first version. + type: string + required: + - prompt_id + - template + type: object + LLMObsCreatePromptRequest: + description: Request to create an Agent Observability prompt. + properties: + data: + $ref: "#/components/schemas/LLMObsCreatePromptData" + required: + - data + type: object + LLMObsCreatePromptVersionData: + description: Data object for creating an Agent Observability prompt version. + properties: + attributes: + $ref: "#/components/schemas/LLMObsCreatePromptVersionDataAttributes" + type: + $ref: "#/components/schemas/LLMObsPromptVersionType" + required: + - type + - attributes + type: object + LLMObsCreatePromptVersionDataAttributes: + description: >- + Attributes for creating a new version of an Agent Observability prompt. `template` is required; all other attributes are optional. + properties: + description: + description: Optional description of this version. + type: string + env_ids: + description: >- + Optional feature-flag environment UUIDs the service attempts to enable and configure to use this version as their default after creation. + items: + type: string + type: array + labels: + deprecated: true + description: Optional labels to attach to this version. Do not use this attribute for new integrations. + items: + $ref: "#/components/schemas/LLMObsPromptVersionLabel" + type: array + template: + $ref: "#/components/schemas/LLMObsPromptTemplate" + user_version: + description: Optional user-supplied version identifier for this version. + type: string + required: + - template + type: object + LLMObsCreatePromptVersionRequest: + description: Request to create a new version of an Agent Observability prompt. + properties: + data: + $ref: "#/components/schemas/LLMObsCreatePromptVersionData" + required: + - data + type: object + LLMObsCursorMeta: + description: Pagination cursor metadata. + properties: + after: + description: Cursor for the next page of results. + nullable: true + type: string + type: object + LLMObsCustomEvalConfigAssessmentCriteria: + description: Criteria used to assess the pass/fail result of a custom evaluator. + properties: + max_threshold: + description: Maximum numeric threshold for a passing result. + example: 1.0 + format: double + nullable: true + type: number + min_threshold: + description: Minimum numeric threshold for a passing result. + example: 0.7 + format: double + nullable: true + type: number + pass_values: + description: Specific output values considered as a passing result. + example: + - "pass" + - "yes" + items: + description: A value considered as a passing result. + type: string + nullable: true + type: array + pass_when: + description: When true, a boolean output of true is treated as passing. + example: true + nullable: true + type: boolean + type: object + LLMObsCustomEvalConfigAttributes: + description: Attributes of a custom Agent Observability evaluator configuration. + properties: + category: + description: Category of the evaluator. + example: "Custom" + type: string + created_at: + description: Timestamp when the evaluator configuration was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + created_by: + $ref: "#/components/schemas/LLMObsCustomEvalConfigUser" + eval_name: + description: Name of the custom evaluator. + example: "my-custom-evaluator" + type: string + last_updated_by: + $ref: "#/components/schemas/LLMObsCustomEvalConfigUser" + llm_judge_config: + $ref: "#/components/schemas/LLMObsCustomEvalConfigLLMJudgeConfig" + llm_provider: + $ref: "#/components/schemas/LLMObsCustomEvalConfigLLMProvider" + target: + $ref: "#/components/schemas/LLMObsCustomEvalConfigTarget" + updated_at: + description: Timestamp when the evaluator configuration was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - eval_name + - created_at + - updated_at + type: object + LLMObsCustomEvalConfigBedrockOptions: + description: AWS Bedrock-specific options for LLM provider configuration. + properties: + inference_profile: + description: Bedrock inference profile identifier, such as an application inference profile ARN. + example: "arn:aws:bedrock:us-east-1:123456789012:application-inference-profile/abc123" + type: string + region: + description: AWS region for Bedrock. + example: "us-east-1" + type: string + type: object + LLMObsCustomEvalConfigData: + description: Data object for a custom Agent Observability evaluator configuration. + properties: + attributes: + $ref: "#/components/schemas/LLMObsCustomEvalConfigAttributes" + id: + description: Unique name identifier of the evaluator configuration. + example: "my-custom-evaluator" + type: string + type: + $ref: "#/components/schemas/LLMObsCustomEvalConfigType" + required: + - id + - type + - attributes + type: object + LLMObsCustomEvalConfigEvalScope: + description: Scope at which to evaluate spans. + enum: + - span + - trace + - session + example: "span" + type: string + x-enum-varnames: + - SPAN + - TRACE + - SESSION + LLMObsCustomEvalConfigInferenceParams: + description: LLM inference parameters for a custom evaluator. + properties: + frequency_penalty: + description: Frequency penalty to reduce repetition. + example: 0.0 + format: double + type: number + max_tokens: + description: Maximum number of tokens to generate. + example: 1024 + format: int64 + type: integer + presence_penalty: + description: Presence penalty to reduce repetition. + example: 0.0 + format: double + type: number + temperature: + description: Sampling temperature for the LLM. + example: 0.7 + format: double + type: number + top_k: + description: Top-k sampling parameter. + example: 50 + format: int64 + type: integer + top_p: + description: Top-p (nucleus) sampling parameter. + example: 1.0 + format: double + type: number + type: object + LLMObsCustomEvalConfigIntegrationProvider: + description: Name of the LLM integration provider. + enum: + - openai + - amazon-bedrock + - anthropic + - azure-openai + - vertex-ai + - llm-proxy + example: "openai" + type: string + x-enum-varnames: + - OPENAI + - AMAZON_BEDROCK + - ANTHROPIC + - AZURE_OPENAI + - VERTEX_AI + - LLM_PROXY + LLMObsCustomEvalConfigLLMJudgeConfig: + description: LLM judge configuration for a custom evaluator. + properties: + assessment_criteria: + $ref: "#/components/schemas/LLMObsCustomEvalConfigAssessmentCriteria" + context_query: + description: Query used to extract additional context for the evaluation. + example: "@input.context" + nullable: true + type: string + inference_params: + $ref: "#/components/schemas/LLMObsCustomEvalConfigInferenceParams" + last_used_library_prompt_template_name: + description: Name of the last library prompt template used. + example: "sentiment-analysis-v1" + nullable: true + type: string + modified_library_prompt_template: + description: Whether the library prompt template was modified. + example: false + nullable: true + type: boolean + output_schema: + additionalProperties: {} + description: JSON schema describing the expected output format of the LLM judge. + nullable: true + type: object + parsing_type: + $ref: "#/components/schemas/LLMObsCustomEvalConfigParsingType" + prompt_template: + description: List of messages forming the LLM judge prompt template. + items: + $ref: "#/components/schemas/LLMObsCustomEvalConfigPromptMessage" + type: array + target_query: + description: Query used to extract the target value to evaluate. + example: "@output.value" + nullable: true + type: string + user_specified_json_post_processing_function: + description: User-provided function applied to post-process the JSON output of the LLM judge. + nullable: true + type: string + required: + - inference_params + type: object + LLMObsCustomEvalConfigLLMProvider: + description: LLM provider configuration for a custom evaluator. + properties: + bedrock: + $ref: "#/components/schemas/LLMObsCustomEvalConfigBedrockOptions" + integration_account_id: + description: Integration account identifier. + example: "my-account-id" + type: string + integration_provider: + $ref: "#/components/schemas/LLMObsCustomEvalConfigIntegrationProvider" + model_name: + description: Name of the LLM model. + example: "gpt-4o" + type: string + vertex_ai: + $ref: "#/components/schemas/LLMObsCustomEvalConfigVertexAIOptions" + type: object + LLMObsCustomEvalConfigListResponse: + description: Response containing a list of custom Agent Observability evaluator configurations. + properties: + data: + description: List of custom evaluator configuration data objects. + items: + $ref: "#/components/schemas/LLMObsCustomEvalConfigData" + type: array + required: + - data + type: object + LLMObsCustomEvalConfigParsingType: + description: Output parsing type for a custom LLM judge evaluator. + enum: + - structured_output + - json + - keyword_search + example: "structured_output" + type: string + x-enum-varnames: + - STRUCTURED_OUTPUT + - JSON + - KEYWORD_SEARCH + LLMObsCustomEvalConfigPromptContent: + description: A content block within a prompt message. + properties: + type: + description: Content block type. + example: "text" + type: string + value: + $ref: "#/components/schemas/LLMObsCustomEvalConfigPromptContentValue" + required: + - type + - value + type: object + LLMObsCustomEvalConfigPromptContentValue: + description: Value of a prompt message content block. + properties: + text: + description: Text content of the message block. + example: "What is the sentiment of this review?" + type: string + tool_call: + $ref: "#/components/schemas/LLMObsCustomEvalConfigPromptToolCall" + tool_call_result: + $ref: "#/components/schemas/LLMObsCustomEvalConfigPromptToolResult" + type: object + LLMObsCustomEvalConfigPromptMessage: + description: A message in the prompt template for a custom LLM judge evaluator. + properties: + content: + description: Text content of the message. + example: "Rate the quality of the following response:" + type: string + contents: + description: Multi-part content blocks for the message. + items: + $ref: "#/components/schemas/LLMObsCustomEvalConfigPromptContent" + type: array + role: + description: Role of the message author. + example: "user" + type: string + required: + - role + type: object + LLMObsCustomEvalConfigPromptToolCall: + description: A tool call within a prompt message. + properties: + arguments: + description: JSON-encoded arguments for the tool call. + example: '{"location": "San Francisco"}' + type: string + id: + description: Unique identifier of the tool call. + example: "call_abc123" + type: string + name: + description: Name of the tool being called. + example: "get_weather" + type: string + type: + description: Type of the tool call. + example: "function" + type: string + type: object + LLMObsCustomEvalConfigPromptToolResult: + description: A tool call result within a prompt message. + properties: + name: + description: Name of the tool that produced this result. + example: "get_weather" + type: string + result: + description: The result returned by the tool. + example: "sunny, 72F" + type: string + tool_id: + description: Identifier of the tool call this result corresponds to. + example: "call_abc123" + type: string + type: + description: Type of the tool result. + example: "function" + type: string + type: object + LLMObsCustomEvalConfigResponse: + description: Response containing a custom Agent Observability evaluator configuration. + properties: + data: + $ref: "#/components/schemas/LLMObsCustomEvalConfigData" + required: + - data + type: object + LLMObsCustomEvalConfigTarget: + description: Target application configuration for a custom evaluator. + properties: + application_name: + description: Name of the ML application this evaluator targets. + example: "my-llm-app" + type: string + enabled: + description: Whether the evaluator is active for the target application. + example: true + type: boolean + eval_scope: + $ref: "#/components/schemas/LLMObsCustomEvalConfigEvalScope" + nullable: true + experiment_project_ids: + description: Experiment project IDs this evaluator is scoped to. + items: + description: An experiment project ID. + format: uuid + type: string + type: array + filter: + description: Filter expression to select which spans to evaluate. + example: "@service:my-service" + nullable: true + type: string + root_spans_only: + description: When true, only root spans are evaluated. + example: true + nullable: true + type: boolean + sampling_percentage: + description: Percentage of traces to evaluate. Must be greater than 0 and at most 100. + example: 50.0 + format: double + nullable: true + type: number + required: + - application_name + - enabled + type: object + LLMObsCustomEvalConfigType: + description: Type of the custom Agent Observability evaluator configuration resource. + enum: + - evaluator_config + example: "evaluator_config" + type: string + x-enum-varnames: + - EVALUATOR_CONFIG + LLMObsCustomEvalConfigUpdateAttributes: + description: Attributes for creating or updating a custom Agent Observability evaluator configuration. + properties: + category: + description: Category of the evaluator. + example: "Custom" + type: string + eval_name: + description: Name of the custom evaluator. If provided, must match the eval_name path parameter. + example: "my-custom-evaluator" + type: string + llm_judge_config: + $ref: "#/components/schemas/LLMObsCustomEvalConfigLLMJudgeConfig" + llm_provider: + $ref: "#/components/schemas/LLMObsCustomEvalConfigLLMProvider" + target: + $ref: "#/components/schemas/LLMObsCustomEvalConfigTarget" + required: + - target + type: object + LLMObsCustomEvalConfigUpdateData: + description: Data object for creating or updating a custom Agent Observability evaluator configuration. + properties: + attributes: + $ref: "#/components/schemas/LLMObsCustomEvalConfigUpdateAttributes" + id: + description: Name of the evaluator. If provided, must match the eval_name path parameter. + example: "my-custom-evaluator" + type: string + type: + $ref: "#/components/schemas/LLMObsCustomEvalConfigType" + required: + - type + - attributes + type: object + LLMObsCustomEvalConfigUpdateRequest: + description: Request to create or update a custom Agent Observability evaluator configuration. + properties: + data: + $ref: "#/components/schemas/LLMObsCustomEvalConfigUpdateData" + required: + - data + type: object + LLMObsCustomEvalConfigUser: + description: A Datadog user associated with a custom evaluator configuration. + properties: + email: + description: Email address of the user. + example: "user@example.com" + type: string + type: object + LLMObsCustomEvalConfigVertexAIOptions: + description: Google Vertex AI-specific options for LLM provider configuration. + properties: + location: + description: Google Cloud region. + example: "us-central1" + type: string + project: + description: Google Cloud project ID. + example: "my-gcp-project" + type: string + type: object + LLMObsDatasetBatchUpdateDataAttributesRequest: + description: Attributes for batch-updating records in an Agent Observability dataset. + properties: + create_new_version: + description: Whether to create a new dataset version when applying the batch update. Defaults to `true`. + example: true + type: boolean + delete_records: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateDeleteRecords" + insert_records: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateInsertRecords" + tags: + $ref: "#/components/schemas/LLMObsDatasetRecordTagsList" + update_records: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateUpdateRecords" + type: object + LLMObsDatasetBatchUpdateDataRequest: + description: Data object for batch-updating records in an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateDataAttributesRequest" + id: + description: Unique identifier of the dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - id + - type + - attributes + type: object + LLMObsDatasetBatchUpdateDeleteRecords: + description: Record IDs to delete. + items: + description: A record ID to delete. + type: string + type: array + LLMObsDatasetBatchUpdateInsertRecord: + description: A record to insert as part of a batch update on an Agent Observability dataset. + properties: + expected_output: + $ref: "#/components/schemas/AnyValue" + id: + description: Optional user-provided identifier for the record. If omitted, the server generates an identifier. + example: "rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c" + type: string + input: + $ref: "#/components/schemas/AnyValue" + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the record. + type: object + tag_operations: + $ref: "#/components/schemas/LLMObsDatasetRecordTagOperations" + tags: + $ref: "#/components/schemas/LLMObsDatasetRecordTagsList" + required: + - input + type: object + LLMObsDatasetBatchUpdateInsertRecords: + description: Records to insert. + items: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateInsertRecord" + type: array + LLMObsDatasetBatchUpdateRequest: + description: Request to batch-insert, update, and delete records in an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateDataRequest" + required: + - data + type: object + LLMObsDatasetBatchUpdateUpdateRecord: + description: A record update payload as part of a batch update on an Agent Observability dataset. + properties: + expected_output: + $ref: "#/components/schemas/AnyValue" + id: + description: Unique identifier of the record to update. + example: "rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c" + type: string + input: + $ref: "#/components/schemas/AnyValue" + metadata: + additionalProperties: {} + description: Updated metadata associated with the record. + type: object + tag_operations: + $ref: "#/components/schemas/LLMObsDatasetRecordTagOperations" + required: + - id + type: object + LLMObsDatasetBatchUpdateUpdateRecords: + description: Records to update by ID. + items: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateUpdateRecord" + type: array + LLMObsDatasetCloneDataAttributesRequest: + description: Attributes for cloning an Agent Observability dataset. + properties: + description: + description: Description of the cloned dataset. + example: "Clone of the original dataset for experimentation." + type: string + name: + description: Name of the cloned dataset. + example: "My cloned dataset" + type: string + required: + - name + type: object + LLMObsDatasetCloneDataRequest: + description: Data object for cloning an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetCloneDataAttributesRequest" + id: + description: Identifier of the source dataset to clone. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - id + - type + - attributes + type: object + LLMObsDatasetCloneRequest: + description: Request to clone an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetCloneDataRequest" + required: + - data + type: object + LLMObsDatasetDataAttributesRequest: + description: Attributes for creating an Agent Observability dataset. + properties: + description: + description: Description of the dataset. + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the dataset. + type: object + name: + description: Name of the dataset. + example: "My LLM Dataset" + type: string + required: + - name + type: object + LLMObsDatasetDataAttributesResponse: + description: Attributes of an Agent Observability dataset. + properties: + created_at: + description: Timestamp when the dataset was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + current_version: + description: Current version number of the dataset. + example: 1 + format: int64 + type: integer + description: + description: Description of the dataset. + example: "" + nullable: true + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the dataset. + nullable: true + type: object + name: + description: Name of the dataset. + example: "My LLM Dataset" + type: string + updated_at: + description: Timestamp when the dataset was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - name + - description + - metadata + - current_version + - created_at + - updated_at + type: object + LLMObsDatasetDataRequest: + description: Data object for creating an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - type + - attributes + type: object + LLMObsDatasetDataResponse: + description: Data object for an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetDataAttributesResponse" + id: + description: Unique identifier of the dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - id + - type + - attributes + type: object + LLMObsDatasetDraftStateData: + description: Data object for an Agent Observability dataset draft state. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetDraftStateDataAttributes" + id: + description: Unique identifier of the dataset draft state. Matches the dataset ID. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + type: + $ref: "#/components/schemas/LLMObsDatasetDraftStateType" + required: + - id + - type + - attributes + type: object + LLMObsDatasetDraftStateDataAttributes: + description: Attributes of an Agent Observability dataset draft state. + properties: + drafting_since: + description: Timestamp when the dataset draft session started. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + user: + $ref: "#/components/schemas/LLMObsDatasetDraftStateUser" + required: + - user + - drafting_since + type: object + LLMObsDatasetDraftStateResponse: + description: Response containing the draft state of an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetDraftStateData" + required: + - data + type: object + LLMObsDatasetDraftStateType: + description: Resource type of an Agent Observability dataset draft state. + enum: + - draft_state_data + example: draft_state_data + type: string + x-enum-varnames: + - DRAFT_STATE_DATA + LLMObsDatasetDraftStateUser: + description: User information associated with a dataset draft state. + properties: + email: + description: Email address of the user. + example: "jane.doe@example.com" + type: string + handle: + description: Handle of the user. + example: "jane.doe@example.com" + type: string + icon: + description: Icon for the user. + example: "" + type: string + id: + description: Unique identifier of the user holding the draft lock. + example: "00000000-0000-0000-0000-000000000010" + type: string + name: + description: Display name of the user. + example: "Jane Doe" + type: string + required: + - id + type: object + LLMObsDatasetExportFormat: + default: csv + description: Supported export format for an Agent Observability dataset. + enum: + - csv + example: csv + type: string + x-enum-varnames: + - CSV + LLMObsDatasetRecordDataResponse: + description: A single Agent Observability dataset record. + properties: + created_at: + description: Timestamp when the record was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + dataset_id: + description: Identifier of the dataset this record belongs to. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + expected_output: + $ref: "#/components/schemas/AnyValue" + id: + description: Unique identifier of the record. + example: "rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c" + type: string + input: + $ref: "#/components/schemas/AnyValue" + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the record. + nullable: true + type: object + updated_at: + description: Timestamp when the record was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - id + - dataset_id + - input + - expected_output + - metadata + - created_at + - updated_at + type: object + LLMObsDatasetRecordItem: + description: A single record to append to an Agent Observability dataset. + properties: + expected_output: + $ref: "#/components/schemas/AnyValue" + input: + $ref: "#/components/schemas/AnyValue" + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the record. + type: object + required: + - input + type: object + LLMObsDatasetRecordTagOperations: + description: Explicit tag operations for updating records. Operations are applied in order, Remove then Add then Set. `set` is the final override; if specified, the result of `remove` and `add` is discarded. + properties: + add: + $ref: "#/components/schemas/LLMObsDatasetRecordTagsList" + remove: + $ref: "#/components/schemas/LLMObsDatasetRecordTagsList" + set: + $ref: "#/components/schemas/LLMObsDatasetRecordTagsList" + type: object + LLMObsDatasetRecordTagsList: + description: List of tag strings. + items: + description: A tag. + type: string + type: array + LLMObsDatasetRecordUpdateItem: + description: A record update payload for an Agent Observability dataset. + properties: + expected_output: + $ref: "#/components/schemas/AnyValue" + id: + description: Unique identifier of the record to update. + example: "rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c" + type: string + input: + $ref: "#/components/schemas/AnyValue" + metadata: + additionalProperties: {} + description: Updated metadata associated with the record. + type: object + required: + - id + type: object + LLMObsDatasetRecordsDataAttributesRequest: + description: Attributes for appending records to an Agent Observability dataset. + properties: + deduplicate: + description: Whether to deduplicate records before appending. Defaults to `true`. + type: boolean + records: + description: List of records to append to the dataset. + items: + $ref: "#/components/schemas/LLMObsDatasetRecordItem" + type: array + required: + - records + type: object + LLMObsDatasetRecordsDataRequest: + description: Data object for appending records to an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetRecordsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsRecordType" + required: + - type + - attributes + type: object + LLMObsDatasetRecordsListResponse: + description: Response containing a paginated list of Agent Observability dataset records. + properties: + data: + description: List of dataset records. + items: + $ref: "#/components/schemas/LLMObsDatasetRecordDataResponse" + type: array + meta: + $ref: "#/components/schemas/LLMObsCursorMeta" + required: + - data + type: object + LLMObsDatasetRecordsMutationData: + description: Response containing records after a create or update operation. + properties: + records: + description: List of affected dataset records. + items: + $ref: "#/components/schemas/LLMObsDatasetRecordDataResponse" + type: array + required: + - records + type: object + LLMObsDatasetRecordsMutationResponse: + description: Response containing records after a create or update operation. + properties: + data: + description: List of affected dataset records. + items: + $ref: "#/components/schemas/LLMObsDatasetRecordsMutationData" + type: array + required: + - data + type: object + LLMObsDatasetRecordsRequest: + description: Request to append records to an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetRecordsDataRequest" + required: + - data + type: object + LLMObsDatasetRecordsUpdateDataAttributesRequest: + description: Attributes for updating records in an Agent Observability dataset. + properties: + records: + description: List of records to update. + items: + $ref: "#/components/schemas/LLMObsDatasetRecordUpdateItem" + type: array + required: + - records + type: object + LLMObsDatasetRecordsUpdateDataRequest: + description: Data object for updating records in an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetRecordsUpdateDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsRecordType" + required: + - type + - attributes + type: object + LLMObsDatasetRecordsUpdateRequest: + description: Request to update records in an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetRecordsUpdateDataRequest" + required: + - data + type: object + LLMObsDatasetRecordsUploadFile: + description: Multipart payload for uploading dataset records from a file. + properties: + file: + description: The records file to upload. Currently only CSV is supported. The file must include an `input` column. Optional columns include `id`, `expected_output`, `metadata`, and `tags`. + format: binary + type: string + type: object + LLMObsDatasetRequest: + description: Request to create an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetDataRequest" + required: + - data + type: object + LLMObsDatasetResponse: + description: Response containing a single Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetDataResponse" + required: + - data + type: object + LLMObsDatasetRestoreVersionDataAttributesRequest: + description: Attributes for restoring an Agent Observability dataset to a previous version. + properties: + dataset_version: + description: Version number of the dataset to restore. Must be between 0 and the current version of the dataset, inclusive. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - dataset_version + type: object + LLMObsDatasetRestoreVersionDataRequest: + description: Data object for restoring an Agent Observability dataset to a previous version. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetRestoreVersionDataAttributesRequest" + id: + description: Unique identifier of the dataset to restore. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - id + - type + - attributes + type: object + LLMObsDatasetRestoreVersionRequest: + description: Request to restore an Agent Observability dataset to a previous version. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetRestoreVersionDataRequest" + required: + - data + type: object + LLMObsDatasetType: + description: Resource type of an Agent Observability dataset. + enum: + - datasets + example: datasets + type: string + x-enum-varnames: + - DATASETS + LLMObsDatasetUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability dataset. + properties: + description: + description: Updated description of the dataset. + type: string + metadata: + additionalProperties: {} + description: Updated metadata associated with the dataset. + type: object + name: + description: Updated name of the dataset. + type: string + type: object + LLMObsDatasetUpdateDataRequest: + description: Data object for updating an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetUpdateDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - type + - attributes + type: object + LLMObsDatasetUpdateRequest: + description: Request to partially update an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetUpdateDataRequest" + required: + - data + type: object + LLMObsDatasetVersionData: + description: Data object for an Agent Observability dataset version. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDatasetVersionDataAttributes" + id: + description: Unique identifier of the dataset version. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + type: + $ref: "#/components/schemas/LLMObsDatasetVersionType" + required: + - id + - type + - attributes + type: object + LLMObsDatasetVersionDataAttributes: + description: Attributes of an Agent Observability dataset version. + properties: + dataset_id: + description: Unique identifier of the dataset this version belongs to. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + last_used: + description: Timestamp when this dataset version was last referenced. Null if the version has never been used. + example: "2024-01-15T10:30:00Z" + format: date-time + nullable: true + type: string + version_number: + description: Sequential version number for this dataset version. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - dataset_id + - version_number + - last_used + type: object + LLMObsDatasetVersionType: + description: Resource type of an Agent Observability dataset version. + enum: + - dataset_version + example: dataset_version + type: string + x-enum-varnames: + - DATASET_VERSION + LLMObsDatasetVersionsResponse: + description: Response containing the active versions of an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDatasetVersionsResponseData" + required: + - data + type: object + LLMObsDatasetVersionsResponseData: + description: List of dataset versions. + items: + $ref: "#/components/schemas/LLMObsDatasetVersionData" + type: array + LLMObsDatasetsResponse: + description: Response containing a list of Agent Observability datasets. + properties: + data: + description: List of datasets. + items: + $ref: "#/components/schemas/LLMObsDatasetDataResponse" + type: array + meta: + $ref: "#/components/schemas/LLMObsCursorMeta" + required: + - data + type: object + LLMObsDeleteAnnotationError: + description: A partial error for a single annotation that could not be deleted. + properties: + annotation_id: + description: ID of the annotation that could not be deleted. + example: "00000000-0000-0000-0000-000000000000" + type: string + error: + description: Error message. + example: "annotation not found" + type: string + required: + - annotation_id + - error + type: object + LLMObsDeleteAnnotationQueueInteractionsDataAttributesRequest: + description: Attributes for deleting interactions from an annotation queue. + properties: + interaction_ids: + description: List of interaction IDs to delete. Must contain at least one item. + example: + - "00000000-0000-0000-0000-000000000000" + - "00000000-0000-0000-0000-000000000001" + items: + description: An interaction ID to delete. + type: string + minItems: 1 + type: array + required: + - interaction_ids + type: object + LLMObsDeleteAnnotationQueueInteractionsDataRequest: + description: Data object for deleting interactions from an annotation queue. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteAnnotationQueueInteractionsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsType" + required: + - type + - attributes + type: object + LLMObsDeleteAnnotationQueueInteractionsRequest: + description: Request to delete interactions from an Agent Observability annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteAnnotationQueueInteractionsDataRequest" + required: + - data + type: object + LLMObsDeleteAnnotationsDataAttributesRequest: + description: Attributes for deleting annotations. + properties: + annotation_ids: + description: IDs of the annotations to delete. Must contain at least one item. + example: + - "00000000-0000-0000-0000-000000000000" + - "00000000-0000-0000-0000-000000000001" + items: + type: string + minItems: 1 + type: array + required: + - annotation_ids + type: object + LLMObsDeleteAnnotationsDataAttributesResponse: + description: Attributes of the annotation deletion response. + properties: + annotation_ids: + description: IDs of the successfully deleted annotations. + example: + - "00000000-0000-0000-0000-000000000000" + items: + type: string + type: array + errors: + description: Errors for annotations that could not be deleted. + items: + $ref: "#/components/schemas/LLMObsDeleteAnnotationError" + type: array + required: + - annotation_ids + - errors + type: object + LLMObsDeleteAnnotationsDataRequest: + description: Data object for deleting annotations. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteAnnotationsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsAnnotationsType" + required: + - type + - attributes + type: object + LLMObsDeleteAnnotationsDataResponse: + description: Data object for the annotation deletion response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteAnnotationsDataAttributesResponse" + id: + description: The annotation queue ID. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsAnnotationsType" + required: + - id + - type + - attributes + type: object + LLMObsDeleteAnnotationsRequest: + description: Request to delete annotations from an annotation queue. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteAnnotationsDataRequest" + required: + - data + type: object + LLMObsDeleteAnnotationsResponse: + description: |- + Response for a batch annotation deletion. Partial errors are listed in the + response if any annotations could not be deleted. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteAnnotationsDataResponse" + required: + - data + type: object + LLMObsDeleteDatasetRecordsDataAttributesRequest: + description: Attributes for deleting records from an Agent Observability dataset. + properties: + record_ids: + description: List of record IDs to delete. + example: + - "rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c" + items: + description: A record ID to delete. + type: string + type: array + required: + - record_ids + type: object + LLMObsDeleteDatasetRecordsDataRequest: + description: Data object for deleting records from an Agent Observability dataset. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteDatasetRecordsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsRecordType" + required: + - type + - attributes + type: object + LLMObsDeleteDatasetRecordsRequest: + description: Request to delete records from an Agent Observability dataset. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteDatasetRecordsDataRequest" + required: + - data + type: object + LLMObsDeleteDatasetsDataAttributesRequest: + description: Attributes for deleting Agent Observability datasets. + properties: + dataset_ids: + description: List of dataset IDs to delete. + example: + - "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + items: + description: A dataset ID to delete. + type: string + type: array + required: + - dataset_ids + type: object + LLMObsDeleteDatasetsDataRequest: + description: Data object for deleting Agent Observability datasets. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteDatasetsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsDatasetType" + required: + - type + - attributes + type: object + LLMObsDeleteDatasetsRequest: + description: Request to delete one or more Agent Observability datasets. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteDatasetsDataRequest" + required: + - data + type: object + LLMObsDeleteExperimentsDataAttributesRequest: + description: Attributes for deleting Agent Observability experiments. + properties: + experiment_ids: + description: List of experiment IDs to delete. + example: + - "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + items: + description: An experiment ID to delete. + type: string + type: array + required: + - experiment_ids + type: object + LLMObsDeleteExperimentsDataRequest: + description: Data object for deleting Agent Observability experiments. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteExperimentsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsExperimentType" + required: + - type + - attributes + type: object + LLMObsDeleteExperimentsRequest: + description: Request to delete one or more Agent Observability experiments. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteExperimentsDataRequest" + required: + - data + type: object + LLMObsDeleteProjectsDataAttributesRequest: + description: Attributes for deleting Agent Observability projects. + properties: + project_ids: + description: List of project IDs to delete. + example: + - "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + items: + description: A project ID to delete. + type: string + type: array + required: + - project_ids + type: object + LLMObsDeleteProjectsDataRequest: + description: Data object for deleting Agent Observability projects. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeleteProjectsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsProjectType" + required: + - type + - attributes + type: object + LLMObsDeleteProjectsRequest: + description: Request to delete one or more Agent Observability projects. + properties: + data: + $ref: "#/components/schemas/LLMObsDeleteProjectsDataRequest" + required: + - data + type: object + LLMObsDeletedPromptData: + description: Data object confirming that an Agent Observability prompt was deleted. + properties: + attributes: + $ref: "#/components/schemas/LLMObsDeletedPromptDataAttributes" + id: + description: Unique identifier of the deleted prompt. + example: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: string + type: + $ref: "#/components/schemas/LLMObsPromptType" + required: + - id + - type + - attributes + type: object + LLMObsDeletedPromptDataAttributes: + description: Attributes confirming that an Agent Observability prompt was deleted. + properties: + deleted_at: + description: Timestamp when the prompt was deleted. + example: "2025-02-10T09:15:00Z" + format: date-time + type: string + prompt_id: + description: Customer-provided identifier of the deleted prompt. + example: "customer-support-assistant" + type: string + required: + - prompt_id + - deleted_at + type: object + LLMObsDeletedPromptResponse: + description: Response confirming that an Agent Observability prompt was deleted. + example: + data: + attributes: + deleted_at: "2025-02-10T09:15:00Z" + prompt_id: "customer-support-assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + properties: + data: + $ref: "#/components/schemas/LLMObsDeletedPromptData" + required: + - data + type: object + LLMObsDisplayBlockAnnotatedInteractionItem: + description: A display_block interaction with its associated annotations. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: "#/components/schemas/LLMObsAnnotationItem" + type: array + content_id: + description: Server-generated deterministic identifier derived from the block list. + example: "9a87f3e2b1d4c5a6f8b3e2d1c4a7b5f6e3d2a1c4b7e5f8a3d6c2e1b4a7d5f8c2" + type: string + display_block: + $ref: "#/components/schemas/LLMObsContentBlocks" + id: + description: Unique identifier of the interaction. + example: "interaction-456" + type: string + type: + $ref: "#/components/schemas/LLMObsDisplayBlockInteractionType" + required: + - id + - type + - content_id + - annotations + - display_block + type: object + LLMObsDisplayBlockInteractionItem: + description: |- + An interaction whose rendered content is supplied directly as a list + of display blocks. The server generates `content_id` deterministically + from the block list. + properties: + display_block: + $ref: "#/components/schemas/LLMObsContentBlocks" + type: + $ref: "#/components/schemas/LLMObsDisplayBlockInteractionType" + required: + - type + - display_block + type: object + LLMObsDisplayBlockInteractionResponseItem: + description: A display_block interaction result. + properties: + already_existed: + description: Whether this interaction already existed in the queue. + example: false + type: boolean + content_id: + description: Server-generated deterministic identifier derived from the block list. + example: "9a87f3e2b1d4c5a6f8b3e2d1c4a7b5f6e3d2a1c4b7e5f8a3d6c2e1b4a7d5f8c2" + type: string + display_block: + $ref: "#/components/schemas/LLMObsContentBlocks" + id: + description: Unique identifier of the interaction. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/LLMObsDisplayBlockInteractionType" + required: + - id + - type + - content_id + - already_existed + - display_block + type: object + LLMObsDisplayBlockInteractionType: + description: Type discriminator for a `display_block` interaction. + enum: + - display_block + example: display_block + type: string + x-enum-varnames: + - DISPLAY_BLOCK + LLMObsEventType: + description: Resource type for Agent Observability experiment events. + enum: + - events + example: events + type: string + x-enum-varnames: + - EVENTS + LLMObsExperimentDataAttributesRequest: + description: Attributes for creating an Agent Observability experiment. + properties: + config: + additionalProperties: {} + description: Configuration parameters for the experiment. + type: object + dataset_id: + description: Identifier of the dataset used in this experiment. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + dataset_version: + description: Version of the dataset to use. Defaults to the current version if not specified. + format: int64 + type: integer + description: + description: Description of the experiment. + type: string + ensure_unique: + description: Whether to ensure the experiment name is unique. Defaults to `true`. + type: boolean + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the experiment. + type: object + name: + description: Name of the experiment. + example: "My Experiment v1" + type: string + parent_experiment_id: + description: Identifier of the parent (baseline) experiment this experiment is run against. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + project_id: + description: Identifier of the project this experiment belongs to. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + type: string + run_count: + description: Number of runs configured for this experiment. + format: int32 + maximum: 2147483647 + type: integer + required: + - project_id + - name + type: object + LLMObsExperimentDataAttributesResponse: + description: Attributes of an Agent Observability experiment. + properties: + aggregate_data: + additionalProperties: {} + description: >- + Pre-computed aggregate metrics for this experiment run, including eval score distributions, token costs, and error rates. + nullable: true + type: object + author: + $ref: "#/components/schemas/LLMObsExperimentUser" + config: + additionalProperties: {} + description: Configuration parameters for the experiment. + nullable: true + type: object + created_at: + description: Timestamp when the experiment was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + dataset_id: + description: Identifier of the dataset used in this experiment. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + dataset_name: + description: |- + Name of the dataset used in this experiment. + Only present when `include[dataset_names]` is `true`. + nullable: true + type: string + dataset_version: + description: Version of the dataset used in this experiment. + format: int64 + type: integer + deleted_at: + description: Timestamp when the experiment was soft-deleted, if applicable. + format: date-time + nullable: true + type: string + description: + description: Description of the experiment. + example: "" + nullable: true + type: string + error: + description: Error message describing why the experiment failed, if applicable. + nullable: true + type: string + experiment: + description: Logical name of the experiment, shared across all runs of the same pipeline. + example: "my-pipeline" + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the experiment. + nullable: true + type: object + name: + description: Name of the experiment. + example: "My Experiment v1" + type: string + parent_experiment_id: + description: Identifier of the parent (baseline) experiment this experiment was run against, if any. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + nullable: true + type: string + project_id: + description: Identifier of the project this experiment belongs to. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + type: string + run_count: + description: Expected number of runs for this experiment. + format: int32 + maximum: 2147483647 + type: integer + status: + $ref: "#/components/schemas/LLMObsExperimentStatus" + updated_at: + description: Timestamp when the experiment was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - project_id + - dataset_id + - name + - description + - metadata + - config + - created_at + - updated_at + type: object + LLMObsExperimentDataRequest: + description: Data object for creating an Agent Observability experiment. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsExperimentType" + required: + - type + - attributes + type: object + LLMObsExperimentDataResponse: + description: Data object for an Agent Observability experiment. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentDataAttributesResponse" + id: + description: Unique identifier of the experiment. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + type: + $ref: "#/components/schemas/LLMObsExperimentType" + required: + - id + - type + - attributes + type: object + LLMObsExperimentEvalMetricEvent: + description: An evaluation metric event associated with an experiment span. + properties: + assessment: + $ref: "#/components/schemas/LLMObsMetricAssessment" + boolean_value: + description: Boolean value. Present when `metric_type` is `boolean`. + nullable: true + type: boolean + categorical_value: + description: Categorical value. Present when `metric_type` is `categorical`. + nullable: true + type: string + eval_source_type: + description: Source type of the evaluation. + example: "managed" + type: string + id: + description: Unique identifier of the evaluation metric event. + example: "00000000-0000-0000-0000-000000000001" + type: string + json_value: + additionalProperties: {} + description: JSON value. Present when `metric_type` is `json`. + nullable: true + type: object + label: + description: Label or name for the metric. + example: "faithfulness" + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the metric. + nullable: true + type: object + metric_source: + description: Source of the metric. Either `custom` (user-submitted) or `summary` (experiment-level aggregate). + example: "custom" + type: string + metric_type: + $ref: "#/components/schemas/LLMObsMetricScoreType" + reasoning: + description: Human-readable reasoning for the metric value. + nullable: true + type: string + score_value: + description: Numeric score. Present when `metric_type` is `score`. + format: double + nullable: true + type: number + span_id: + description: Span ID this metric is associated with. + example: "span-7a1b2c3d" + type: string + tags: + description: Tags associated with the metric. + items: + type: string + type: array + timestamp_ms: + description: Timestamp when the metric was recorded, in milliseconds since Unix epoch. + example: 1705314600000 + format: int64 + type: integer + trace_id: + description: Trace ID linking this metric to a span. + example: "abc123def456" + type: string + type: object + LLMObsExperimentEventsDataAttributesRequest: + description: Attributes for pushing experiment events including spans and metrics. + properties: + metrics: + description: List of metrics to push for the experiment. + items: + $ref: "#/components/schemas/LLMObsExperimentMetric" + type: array + spans: + description: List of spans to push for the experiment. + items: + $ref: "#/components/schemas/LLMObsExperimentSpan" + type: array + type: object + LLMObsExperimentEventsDataRequest: + description: Data object for pushing experiment events. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentEventsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsEventType" + required: + - type + - attributes + type: object + LLMObsExperimentEventsRequest: + description: Request to push spans and metrics for an Agent Observability experiment. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentEventsDataRequest" + required: + - data + type: object + LLMObsExperimentEventsType: + description: Resource type for an experiment events collection. + enum: + - experiment_events + example: experiment_events + type: string + x-enum-varnames: + - EXPERIMENT_EVENTS + LLMObsExperimentEventsV2DataAttributesResponse: + description: Attributes of an experiment events response. + properties: + spans: + description: Experiment spans, each enriched with their associated evaluation metrics. + items: + $ref: "#/components/schemas/LLMObsExperimentSpanWithEvals" + type: array + summary_metrics: + description: Experiment-level summary evaluation metrics (not tied to individual spans). + items: + $ref: "#/components/schemas/LLMObsExperimentEvalMetricEvent" + type: array + required: + - spans + - summary_metrics + type: object + LLMObsExperimentEventsV2DataResponse: + description: JSON:API data object for an experiment events response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentEventsV2DataAttributesResponse" + id: + description: Identifier for this events resource. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + type: + $ref: "#/components/schemas/LLMObsExperimentEventsType" + required: + - id + - type + - attributes + type: object + LLMObsExperimentEventsV2Response: + description: Response for listing experiment events (v2/v3). Returns spans and summary metrics in a single resource. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentEventsV2DataResponse" + meta: + $ref: "#/components/schemas/LLMObsCursorMeta" + required: + - data + type: object + LLMObsExperimentMetric: + description: A metric associated with an Agent Observability experiment span. + properties: + assessment: + $ref: "#/components/schemas/LLMObsMetricAssessment" + boolean_value: + description: Boolean value. Used when `metric_type` is `boolean`. + type: boolean + categorical_value: + description: Categorical value. Used when `metric_type` is `categorical`. + type: string + error: + $ref: "#/components/schemas/LLMObsExperimentMetricError" + json_value: + additionalProperties: {} + description: JSON value. Used when `metric_type` is `json`. + type: object + label: + description: Label or name for the metric. + example: "faithfulness" + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the metric. + type: object + metric_type: + $ref: "#/components/schemas/LLMObsMetricScoreType" + reasoning: + description: Human-readable reasoning for the metric value. + type: string + score_value: + description: Numeric score value. Used when `metric_type` is `score`. + format: double + type: number + span_id: + description: The ID of the span this metric measures. + example: "span-7a1b2c3d" + type: string + tags: + description: List of tags associated with the metric. + items: + description: A tag string in `key:value` format. + type: string + type: array + timestamp_ms: + description: Timestamp when the metric was recorded, in milliseconds since Unix epoch. + example: 1705314600000 + format: int64 + type: integer + required: + - span_id + - metric_type + - timestamp_ms + - label + type: object + LLMObsExperimentMetricError: + description: Error details for an experiment metric evaluation. + properties: + message: + description: Error message associated with the metric evaluation. + type: string + type: object + LLMObsExperimentRequest: + description: Request to create an Agent Observability experiment. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentDataRequest" + required: + - data + type: object + LLMObsExperimentResponse: + description: Response containing a single Agent Observability experiment. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentDataResponse" + required: + - data + type: object + LLMObsExperimentRunDataResponse: + description: Data object for an Agent Observability experiment run. + properties: + aggregate_data: + additionalProperties: {} + description: Aggregated metric data for this run. + nullable: true + type: object + created_at: + description: Timestamp when the run was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + experiment_id: + description: Identifier of the experiment this run belongs to. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + id: + description: Unique identifier of the experiment run. + example: "7a1b2c3d-4e5f-6789-abcd-ef0123456789" + type: string + run_number: + description: Sequential number of this run within the experiment. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + LLMObsExperimentSpan: + description: A span associated with an Agent Observability experiment. + properties: + dataset_id: + description: Dataset ID associated with this span. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + duration: + description: Duration of the span in nanoseconds. + example: 1500000000 + format: int64 + type: integer + meta: + $ref: "#/components/schemas/LLMObsExperimentSpanMeta" + name: + description: Name of the span. + example: "llm_call" + type: string + project_id: + description: Project ID associated with this span. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + type: string + span_id: + description: Unique identifier of the span. + example: "span-7a1b2c3d" + type: string + start_ns: + description: Start time of the span in nanoseconds since Unix epoch. + example: 1705314600000000000 + format: int64 + type: integer + status: + $ref: "#/components/schemas/LLMObsExperimentSpanStatus" + tags: + description: List of tags associated with the span. + items: + description: A tag string in `key:value` format. + type: string + type: array + trace_id: + description: Trace ID for the span. + example: "abc123def456" + type: string + required: + - trace_id + - span_id + - project_id + - dataset_id + - name + - start_ns + - duration + - status + type: object + LLMObsExperimentSpanDataResponse: + description: JSON:API data item wrapping a single experiment span with evaluations. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentSpanWithEvals" + id: + description: Unique identifier of the span. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsExperimentSpanType" + required: + - id + - type + - attributes + type: object + LLMObsExperimentSpanError: + description: Error details for an experiment span. + properties: + message: + description: Error message. + example: "Model response timed out" + type: string + stack: + description: Stack trace of the error. + example: "Traceback (most recent call last):\n File \"main.py\", line 10, in \n response = model.generate(input)\n File \"model.py\", line 45, in generate\n raise TimeoutError(\"Model response timed out\")\nTimeoutError: Model response timed out" + type: string + type: + description: The error type or exception class name. + example: "TimeoutError" + type: string + type: object + LLMObsExperimentSpanMeta: + description: Metadata associated with an experiment span. + properties: + error: + $ref: "#/components/schemas/LLMObsExperimentSpanError" + expected_output: + additionalProperties: {} + description: Expected output for the span, used for evaluation. + type: object + input: + $ref: "#/components/schemas/AnyValue" + output: + $ref: "#/components/schemas/AnyValue" + type: object + LLMObsExperimentSpanStatus: + description: Status of the span. + enum: + - ok + - error + example: "ok" + type: string + x-enum-varnames: + - OK + - ERROR + LLMObsExperimentSpanType: + description: Resource type for a span item in an experiment spans response. + enum: + - experiments + example: experiments + type: string + x-enum-varnames: + - EXPERIMENTS_SPAN + LLMObsExperimentSpanWithEvals: + description: An experiment span enriched with its associated evaluation metrics. + properties: + dataset_record_id: + description: ID of the dataset record this span evaluated. + nullable: true + type: string + duration: + description: Duration of the span in nanoseconds. + example: 1500000000.0 + format: double + type: number + eval_metrics: + description: Evaluation metrics associated with this span. + items: + $ref: "#/components/schemas/LLMObsExperimentEvalMetricEvent" + type: array + id: + description: Unique identifier of the span. + example: "00000000-0000-0000-0000-000000000001" + type: string + meta: + $ref: "#/components/schemas/LLMObsExperimentSpanMeta" + metrics: + additionalProperties: + format: double + type: number + description: Numeric metrics attached to the span. + type: object + name: + description: Name of the span. + example: "llm_call" + type: string + parent_id: + description: Parent span ID, if any. + type: string + span_id: + description: Span ID. + example: "span-7a1b2c3d" + type: string + start_ns: + description: Start time in nanoseconds since Unix epoch. + example: 1705314600000000000 + format: int64 + type: integer + status: + $ref: "#/components/schemas/LLMObsExperimentSpanStatus" + tags: + description: Tags associated with the span. + items: + type: string + type: array + trace_id: + description: Trace ID. + example: "abc123def456" + type: string + type: object + LLMObsExperimentSpansResponse: + description: >- + Response for listing experiment spans (v1). Returns only spans with their evaluation metrics. No summary metrics or pagination are included. Deprecated in favor of `ListLLMObsExperimentEventsV3`. + properties: + data: + description: List of experiment spans with their evaluation metrics. + items: + $ref: "#/components/schemas/LLMObsExperimentSpanDataResponse" + type: array + required: + - data + type: object + LLMObsExperimentStatus: + description: Execution status of an Agent Observability experiment. + enum: + - running + - completed + - failed + - interrupted + example: completed + type: string + x-enum-varnames: + - RUNNING + - COMPLETED + - FAILED + - INTERRUPTED + LLMObsExperimentType: + description: Resource type of an Agent Observability experiment. + enum: + - experiments + example: experiments + type: string + x-enum-varnames: + - EXPERIMENTS + LLMObsExperimentUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability experiment. + properties: + dataset_id: + description: Updated identifier of the dataset used in this experiment. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + type: string + description: + description: Updated description of the experiment. + type: string + error: + description: Error message describing why the experiment failed, if applicable. + type: string + metadata: + additionalProperties: {} + description: Updated arbitrary metadata associated with the experiment. + type: object + name: + description: Updated name of the experiment. + type: string + status: + $ref: "#/components/schemas/LLMObsExperimentStatus" + type: object + LLMObsExperimentUpdateDataRequest: + description: Data object for updating an Agent Observability experiment. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentUpdateDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsExperimentType" + required: + - type + - attributes + type: object + LLMObsExperimentUpdateRequest: + description: Request to partially update an Agent Observability experiment. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentUpdateDataRequest" + required: + - data + type: object + LLMObsExperimentUser: + description: User data for the author of an experiment. Only present when `include[user_data]` is `true`. + properties: + email: + description: Email address of the user. + example: "jane.doe@example.com" + type: string + handle: + description: Username or handle associated with the user's Datadog account. + example: "jane.doe@example.com" + type: string + icon: + description: URL of the user's icon. + example: "https://example.com/icon.png" + type: string + id: + description: Unique identifier of the user. + example: "00000000-0000-0000-0000-000000000010" + type: string + name: + description: Display name of the user. + example: "Jane Doe" + type: string + type: object + LLMObsExperimentationAnalyticsAggregate: + description: Analytics aggregation parameters. + properties: + compute: + description: List of metric computations to perform. + items: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsCompute" + minItems: 1 + type: array + dataset_version: + description: Filter to a specific dataset version. + format: int64 + nullable: true + type: integer + group_by: + description: Fields to group results by. + items: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsGroupBy" + type: array + indexes: + description: Data indexes to query. At least one is required. + example: + - "experiment-evals" + items: + type: string + minItems: 1 + type: array + limit: + description: Maximum number of results to return. + example: 1000 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + search: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsSearch" + time: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsTimeRange" + required: + - compute + - indexes + - search + type: object + LLMObsExperimentationAnalyticsCompute: + description: A single metric computation definition. + properties: + metric: + description: Name of the metric to compute. + example: "score_value" + type: string + name: + description: Optional alias for this computation in the response. + example: "avg_faithfulness" + type: string + required: + - metric + type: object + LLMObsExperimentationAnalyticsDataAttributesRequest: + description: Attributes for an analytics request. + properties: + aggregate: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsAggregate" + required: + - aggregate + type: object + LLMObsExperimentationAnalyticsDataAttributesResponse: + description: Attributes of an analytics response. + properties: + hit_count: + description: Total number of events matched by the query before grouping. + example: 1500 + format: int64 + type: integer + result: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsResult" + required: + - hit_count + - result + type: object + LLMObsExperimentationAnalyticsDataRequest: + description: Data object for an analytics request. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsExperimentationType" + required: + - type + - attributes + type: object + LLMObsExperimentationAnalyticsDataResponse: + description: JSON:API data object for an analytics response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsDataAttributesResponse" + id: + description: Server-generated identifier for this analytics result. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsExperimentationType" + required: + - id + - type + - attributes + type: object + LLMObsExperimentationAnalyticsGroupBy: + description: A field to group analytics results by. + properties: + field: + description: Field name to group by. + example: "span_id" + type: string + required: + - field + type: object + LLMObsExperimentationAnalyticsRequest: + description: Request to run an analytics aggregation over Agent Observability experimentation data. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsDataRequest" + required: + - data + type: object + LLMObsExperimentationAnalyticsResponse: + description: Response to an analytics query. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsDataResponse" + required: + - data + type: object + LLMObsExperimentationAnalyticsResult: + description: Analytics query result containing all buckets. + properties: + values: + description: List of result buckets. + items: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsValue" + type: array + required: + - values + type: object + LLMObsExperimentationAnalyticsSearch: + description: Search query for filtering analytics data. + properties: + query: + description: Filter expression. + example: "@experiment_id:3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + required: + - query + type: object + LLMObsExperimentationAnalyticsTimeRange: + description: Unix-millisecond time range for filtering analytics data. + properties: + from: + description: Start of the time range in milliseconds since Unix epoch. + example: 1705312200000 + format: int64 + type: integer + to: + description: End of the time range in milliseconds since Unix epoch. + example: 1705315800000 + format: int64 + type: integer + required: + - from + - to + type: object + LLMObsExperimentationAnalyticsValue: + description: A single analytics result bucket. + properties: + by: + additionalProperties: {} + description: The group-by field values for this bucket. + example: + span_id: "span-7a1b2c3d" + type: object + metrics: + additionalProperties: {} + description: Computed metric values for this bucket. + example: + score_value: 0.85 + type: object + required: + - metrics + type: object + LLMObsExperimentationContentPreview: + description: Options to control content preview truncation. + properties: + limit: + description: Maximum number of characters to include in content previews. + example: 500 + format: int64 + type: integer + type: object + LLMObsExperimentationCursorPage: + description: Cursor-based pagination parameters. + properties: + cursor: + description: Opaque cursor returned from a previous response to fetch the next page. + type: string + limit: + description: Maximum number of results per page. + example: 100 + format: int64 + type: integer + type: object + LLMObsExperimentationFilter: + description: Filter criteria for an experimentation search request. + properties: + include_deleted: + default: false + description: When `true`, include soft-deleted entities alongside active ones. + type: boolean + is_deleted: + default: false + description: When `true`, return only soft-deleted entities. + type: boolean + query: + description: Free-text search query. + example: "my experiment" + type: string + scope: + description: >- + Entity types to search. Valid values are `projects`, `datasets`, `dataset_records`, `experiments`, and `experiment_runs`. + example: + - "experiments" + items: + example: "experiments" + type: string + type: array + version: + description: Filter dataset records by a specific dataset version. + format: int64 + nullable: true + type: integer + required: + - scope + type: object + LLMObsExperimentationInclude: + description: Additional data to include in the response. + properties: + user_data: + default: false + description: When `true`, enrich results with author user data (name and email). + type: boolean + type: object + LLMObsExperimentationNumberPage: + description: Offset-based pagination parameters for simple search. + properties: + limit: + description: Maximum number of results per page. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + number: + description: Page number to retrieve (1-indexed). + example: 1 + format: int32 + maximum: 2147483647 + minimum: 1 + type: integer + type: object + LLMObsExperimentationSearchDataAttributesRequest: + description: Attributes for an experimentation search request. + properties: + content_preview: + $ref: "#/components/schemas/LLMObsExperimentationContentPreview" + filter: + $ref: "#/components/schemas/LLMObsExperimentationFilter" + include: + $ref: "#/components/schemas/LLMObsExperimentationInclude" + page: + $ref: "#/components/schemas/LLMObsExperimentationCursorPage" + required: + - filter + type: object + LLMObsExperimentationSearchDataRequest: + description: Data object for an experimentation search request. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentationSearchDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsExperimentationType" + required: + - type + - attributes + type: object + LLMObsExperimentationSearchDataResponse: + description: JSON:API data object for an experimentation search response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentationSearchResults" + id: + description: Server-generated identifier for this search result. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsExperimentationType" + required: + - id + - type + - attributes + type: object + LLMObsExperimentationSearchRequest: + description: Request to search across Agent Observability experimentation entities using cursor-based pagination. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentationSearchDataRequest" + required: + - data + type: object + LLMObsExperimentationSearchResponse: + description: Response to a cursor-based experimentation search. Returns `200 OK` when all results fit in one page; `206 Partial Content` when a next-page cursor is available. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentationSearchDataResponse" + meta: + $ref: "#/components/schemas/LLMObsCursorMeta" + required: + - data + type: object + LLMObsExperimentationSearchResults: + description: The matching experimentation entities grouped by type. + properties: + dataset_records: + description: Matching dataset records. Present when `dataset_records` is included in `filter.scope`. + items: + $ref: "#/components/schemas/LLMObsDatasetRecordDataResponse" + nullable: true + type: array + datasets: + description: Matching datasets. Present when `datasets` is included in `filter.scope`. + items: + $ref: "#/components/schemas/LLMObsDatasetDataResponse" + nullable: true + type: array + experiment_runs: + description: Matching experiment runs. Present when `experiment_runs` is included in `filter.scope`. + items: + $ref: "#/components/schemas/LLMObsExperimentRunDataResponse" + nullable: true + type: array + experiments: + description: Matching experiments. Present when `experiments` is included in `filter.scope`. + items: + $ref: "#/components/schemas/LLMObsExperimentDataAttributesResponse" + nullable: true + type: array + projects: + description: Matching projects. Present when `projects` is included in `filter.scope`. + items: + $ref: "#/components/schemas/LLMObsProjectDataResponse" + nullable: true + type: array + type: object + LLMObsExperimentationSimpleSearchDataAttributesRequest: + description: Attributes for an experimentation simple search request. + properties: + content_preview: + $ref: "#/components/schemas/LLMObsExperimentationContentPreview" + filter: + $ref: "#/components/schemas/LLMObsExperimentationFilter" + include: + $ref: "#/components/schemas/LLMObsExperimentationInclude" + page: + $ref: "#/components/schemas/LLMObsExperimentationNumberPage" + sort: + description: Sort order for results. + items: + $ref: "#/components/schemas/LLMObsExperimentationSortField" + type: array + required: + - filter + type: object + LLMObsExperimentationSimpleSearchDataRequest: + description: Data object for an experimentation simple search request. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsExperimentationType" + required: + - type + - attributes + type: object + LLMObsExperimentationSimpleSearchDataResponse: + description: JSON:API data object for a simple search response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsExperimentationSearchResults" + id: + description: Server-generated identifier for this search result. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsExperimentationType" + required: + - id + - type + - attributes + type: object + LLMObsExperimentationSimpleSearchMeta: + description: Pagination metadata for a simple search response. + properties: + page: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchMetaPage" + type: object + LLMObsExperimentationSimpleSearchMetaPage: + description: Page metadata. + properties: + current: + description: Current page number. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + limit: + description: Page size used for this response. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + total_count: + description: Total number of matching results (capped at the maximum search limit). + example: 193 + format: int32 + maximum: 2147483647 + type: integer + total_pages: + description: Total number of pages available. + example: 4 + format: int32 + maximum: 2147483647 + type: integer + type: object + LLMObsExperimentationSimpleSearchRequest: + description: Request to search across Agent Observability experimentation entities using offset-based pagination. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchDataRequest" + required: + - data + type: object + LLMObsExperimentationSimpleSearchResponse: + description: Response to an offset-based experimentation simple search. + properties: + data: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchDataResponse" + meta: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchMeta" + required: + - data + type: object + LLMObsExperimentationSortField: + description: A field and direction to sort results by. + properties: + direction: + $ref: "#/components/schemas/LLMObsExperimentationSortFieldDirection" + field: + description: The field name to sort on. + example: "created_at" + type: string + required: + - field + type: object + LLMObsExperimentationSortFieldDirection: + description: Sort direction. + enum: + - asc + - desc + example: "desc" + type: string + x-enum-varnames: + - ASC + - DESC + LLMObsExperimentationType: + description: Resource type for experimentation search and analytics operations. + enum: + - experimentation + example: experimentation + type: string + x-enum-varnames: + - EXPERIMENTATION + LLMObsExperimentsResponse: + description: Response containing a list of Agent Observability experiments. + properties: + data: + description: List of experiments. + items: + $ref: "#/components/schemas/LLMObsExperimentDataResponse" + type: array + meta: + $ref: "#/components/schemas/LLMObsCursorMeta" + required: + - data + type: object + LLMObsInferenceCode: + description: A generated code snippet for running an inference request programmatically. + properties: + code: + description: The generated code content. + example: "import openai\nclient = openai.OpenAI()\n..." + type: string + id: + description: Unique identifier for the code snippet. + example: "code-python-001" + type: string + type: + description: The programming language or SDK type of the code snippet. + example: "python" + type: string + required: + - id + - type + - code + type: object + LLMObsInferenceContent: + description: A structured content block within a message. + properties: + type: + description: The content block type. + example: "text" + type: string + value: + $ref: "#/components/schemas/LLMObsInferenceContentValue" + required: + - type + - value + type: object + LLMObsInferenceContentList: + description: List of structured content blocks in a message. + items: + $ref: "#/components/schemas/LLMObsInferenceContent" + type: array + LLMObsInferenceContentValue: + description: The typed value of a message content block. + properties: + text: + description: Plain text content. + example: "Hello, how can I help you?" + type: string + tool_call: + $ref: "#/components/schemas/LLMObsInferenceToolCall" + tool_call_result: + $ref: "#/components/schemas/LLMObsInferenceToolResult" + type: object + LLMObsInferenceErrorResponse: + description: Error details returned when an inference provider returns an error. + properties: + message: + description: A human-readable description of the error. + example: "The model does not exist." + type: string + type: + description: The provider-specific error type. + example: "invalid_request_error" + type: string + required: + - type + - message + type: object + LLMObsInferenceFunction: + description: A function definition for a tool available to the model. + properties: + description: + description: A description of what the function does. + example: "Get the current weather for a location." + type: string + name: + description: The name of the function. + example: "get_weather" + type: string + parameters: + additionalProperties: {} + description: JSON schema describing the function parameters. + example: + properties: + location: + type: string + type: object + type: object + required: + - name + - parameters + type: object + LLMObsInferenceMessage: + description: A single message in an LLM inference conversation. + properties: + content: + description: Plain text content of the message. + example: "What is the capital of France?" + type: string + contents: + $ref: "#/components/schemas/LLMObsInferenceContentList" + id: + description: Unique identifier for the message. + example: "msg_001" + type: string + role: + description: The role of the message author. + example: "user" + type: string + tool_calls: + $ref: "#/components/schemas/LLMObsInferenceToolCallsList" + tool_results: + $ref: "#/components/schemas/LLMObsInferenceToolResultsList" + type: object + LLMObsInferenceMessagesList: + description: List of messages in an inference conversation. + items: + $ref: "#/components/schemas/LLMObsInferenceMessage" + type: array + LLMObsInferenceRunResult: + description: The output of a completed LLM inference call. + properties: + assessment: + description: An optional assessment of the inference output quality. + example: "pass" + nullable: true + type: string + content: + description: The text content of the model response. + example: "The capital of France is Paris." + type: string + finish_reason: + description: The reason the model stopped generating tokens. + example: "stop" + type: string + inference_codes: + $ref: "#/components/schemas/LLMObsIntegrationInferenceCodesResponse" + input_tokens: + description: Number of input tokens consumed. + example: 15 + format: int64 + type: integer + internal_reasoning: + $ref: "#/components/schemas/LLMObsInternalReasoning" + nullable: true + latency: + description: Request latency in milliseconds. + example: 843 + format: int64 + type: integer + output_tokens: + description: Number of output tokens generated. + example: 10 + format: int64 + type: integer + tools: + $ref: "#/components/schemas/LLMObsInferenceToolsList" + total_tokens: + description: Total tokens used (input plus output). + example: 25 + format: int64 + type: integer + required: + - content + - input_tokens + - output_tokens + - total_tokens + - latency + - finish_reason + - inference_codes + - tools + - assessment + type: object + LLMObsInferenceTool: + description: A tool definition available to the model during inference. + properties: + function: + $ref: "#/components/schemas/LLMObsInferenceFunction" + type: + description: The type of tool. + example: "function" + type: string + required: + - type + - function + type: object + LLMObsInferenceToolCall: + description: A tool call made during LLM inference. + properties: + arguments: + additionalProperties: {} + description: The arguments passed to the tool. + example: + location: "San Francisco" + type: object + name: + description: The name of the tool being called. + example: "get_weather" + type: string + tool_id: + description: Unique identifier for the tool call. + example: "call_abc123" + type: string + type: + description: The type of tool call. + example: "function" + type: string + type: object + LLMObsInferenceToolCallsList: + description: List of tool calls in a message. + items: + $ref: "#/components/schemas/LLMObsInferenceToolCall" + type: array + LLMObsInferenceToolResult: + description: The result returned by a tool call during LLM inference. + properties: + name: + description: The name of the tool that produced this result. + example: "get_weather" + type: string + result: + description: The result content returned by the tool. + example: "The weather in San Francisco is 68°F and sunny." + type: string + tool_id: + description: Identifier matching the corresponding tool call. + example: "call_abc123" + type: string + type: + description: The type of tool result. + example: "function" + type: string + type: object + LLMObsInferenceToolResultsList: + description: List of tool results in a message. + items: + $ref: "#/components/schemas/LLMObsInferenceToolResult" + type: array + LLMObsInferenceToolsList: + description: List of tools available to the model. + items: + $ref: "#/components/schemas/LLMObsInferenceTool" + type: array + LLMObsIntegrationAccount: + description: A configured account for an LLM provider integration. + properties: + account_id: + description: Provider-specific account identifier. + example: "org-XYZ123" + type: string + account_name: + description: Human-readable name for the integration account. + example: "Production OpenAI" + type: string + account_region: + description: Provider region associated with the account, if applicable. + example: "us-east-1" + type: string + azure_openai_metadata: + $ref: "#/components/schemas/LLMObsAzureOpenAIMetadata" + id: + description: Unique identifier for the integration account. + example: "account-abc123" + type: string + integration: + description: The name of the LLM provider integration. + example: openai + type: string + vertex_ai_metadata: + $ref: "#/components/schemas/LLMObsVertexAIMetadata" + required: + - id + - account_id + - account_name + - integration + type: object + LLMObsIntegrationInferenceCodesResponse: + description: List of generated code snippets for the inference configuration. + items: + $ref: "#/components/schemas/LLMObsInferenceCode" + type: array + LLMObsIntegrationInferenceRequest: + description: Parameters for an LLM inference request. + properties: + anthropic_metadata: + $ref: "#/components/schemas/LLMObsAnthropicMetadata" + nullable: true + azure_openai_metadata: + $ref: "#/components/schemas/LLMObsAzureOpenAIMetadata" + nullable: true + bedrock_metadata: + $ref: "#/components/schemas/LLMObsBedrockMetadata" + nullable: true + frequency_penalty: + description: Penalty for token frequency to reduce repetition. + example: 0.0 + format: double + nullable: true + type: number + json_schema: + description: JSON schema for structured output, if supported by the model. + example: '{"type":"object","properties":{"answer":{"type":"string"}}}' + nullable: true + type: string + max_completion_tokens: + description: Maximum number of completion tokens to generate (alternative to max_tokens for some providers). + example: 1024 + format: int64 + nullable: true + type: integer + max_tokens: + description: Maximum number of tokens to generate. + example: 1024 + format: int64 + nullable: true + type: integer + messages: + $ref: "#/components/schemas/LLMObsInferenceMessagesList" + model_id: + description: The model identifier to use for inference. + example: "gpt-4o" + type: string + openai_metadata: + $ref: "#/components/schemas/LLMObsOpenAIMetadata" + nullable: true + presence_penalty: + description: Penalty for token presence to encourage topic diversity. + example: 0.0 + format: double + nullable: true + type: number + temperature: + description: Sampling temperature between 0 and 2. Higher values produce more random output. + example: 0.7 + format: double + nullable: true + type: number + tools: + $ref: "#/components/schemas/LLMObsInferenceToolsList" + top_k: + description: Top-K sampling parameter. + example: 50 + format: int64 + nullable: true + type: integer + top_p: + description: Nucleus sampling probability mass. + example: 1.0 + format: double + nullable: true + type: number + vertex_ai_metadata: + $ref: "#/components/schemas/LLMObsVertexAIMetadata" + nullable: true + required: + - model_id + - messages + type: object + LLMObsIntegrationInferenceResponse: + description: The result of an LLM inference request, including input parameters and the model response. + properties: + anthropic_metadata: + $ref: "#/components/schemas/LLMObsAnthropicMetadata" + nullable: true + azure_openai_metadata: + $ref: "#/components/schemas/LLMObsAzureOpenAIMetadata" + nullable: true + bedrock_metadata: + $ref: "#/components/schemas/LLMObsBedrockMetadata" + nullable: true + error_response: + $ref: "#/components/schemas/LLMObsInferenceErrorResponse" + frequency_penalty: + description: Frequency penalty that was applied. + example: 0.0 + format: double + nullable: true + type: number + json_schema: + description: JSON schema that was applied for structured output. + example: '{"type":"object","properties":{"answer":{"type":"string"}}}' + nullable: true + type: string + max_completion_tokens: + description: Maximum number of completion tokens that were configured. + example: 1024 + format: int64 + nullable: true + type: integer + max_tokens: + description: Maximum number of tokens that were configured. + example: 1024 + format: int64 + nullable: true + type: integer + messages: + $ref: "#/components/schemas/LLMObsInferenceMessagesList" + model_id: + description: The model identifier used for inference. + example: "gpt-4o" + type: string + openai_metadata: + $ref: "#/components/schemas/LLMObsOpenAIMetadata" + nullable: true + presence_penalty: + description: Presence penalty that was applied. + example: 0.0 + format: double + nullable: true + type: number + response: + $ref: "#/components/schemas/LLMObsInferenceRunResult" + temperature: + description: Sampling temperature that was used. + example: 0.7 + format: double + nullable: true + type: number + tools: + $ref: "#/components/schemas/LLMObsInferenceToolsList" + top_k: + description: Top-K sampling parameter that was used. + example: 50 + format: int64 + nullable: true + type: integer + top_p: + description: Nucleus sampling parameter that was used. + example: 1.0 + format: double + nullable: true + type: number + vertex_ai_metadata: + $ref: "#/components/schemas/LLMObsVertexAIMetadata" + nullable: true + required: + - model_id + - messages + - response + type: object + LLMObsIntegrationModel: + description: A model available for a given LLM provider integration and account. + properties: + has_access: + description: Whether the account has access to this model. + example: true + type: boolean + id: + description: Unique identifier for the model entry. + example: "gpt-4o" + type: string + integration: + description: The name of the LLM provider integration. + example: "openai" + type: string + integration_display_name: + description: Human-readable name of the LLM provider integration. + example: "OpenAI" + type: string + json_schema: + description: Whether the model supports structured output via JSON schema. + example: true + type: boolean + model_display_name: + description: Human-readable model name. + example: "GPT-4o" + type: string + model_id: + description: Provider-specific model identifier used in inference calls. + example: "gpt-4o" + type: string + provider: + description: The underlying model provider. + example: "openai" + type: string + provider_display_name: + description: Human-readable name of the underlying model provider. + example: "OpenAI" + type: string + region_prefix_overrides: + $ref: "#/components/schemas/LLMObsIntegrationModelRegionPrefixOverrides" + required: + - id + - model_id + - model_display_name + - integration + - integration_display_name + - provider + - provider_display_name + - json_schema + - has_access + type: object + LLMObsIntegrationModelRegionPrefixOverrides: + additionalProperties: + type: string + description: Map of region-specific model ID prefix overrides. + example: + us-east-1: "us." + type: object + LLMObsIntegrationName: + description: The name of a supported LLM provider integration. + enum: + - openai + - amazon_bedrock + - anthropic + - azure_openai + - vertex_ai + - llmproxy + example: openai + type: string + x-enum-varnames: + - OPENAI + - AMAZON_BEDROCK + - ANTHROPIC + - AZURE_OPENAI + - VERTEX_AI + - LLMPROXY + LLMObsInternalReasoning: + description: The model's internal reasoning or thinking output, if available. + properties: + reasoning_tokens: + description: Number of tokens used for internal reasoning. + example: 256 + format: int64 + nullable: true + type: integer + text: + description: The reasoning text produced by the model. + example: "Let me think about this step by step..." + type: string + required: + - text + type: object + LLMObsLabelSchema: + description: Schema definition for a single label in an annotation queue. + properties: + description: + description: Description of the label. + example: "Rating of the response quality." + type: string + has_assessment: + description: Whether this label includes an assessment field. + example: false + type: boolean + has_reasoning: + description: Whether this label includes a reasoning field. + example: false + type: boolean + id: + description: Unique identifier of the label schema. Assigned by the server if not provided. + example: "abc-123" + type: string + is_assessment: + description: Whether the boolean label represents an assessment. Requires `has_assessment` to be true. + example: false + type: boolean + is_integer: + description: Whether score values must be integers. Applicable to score-type labels. + example: false + type: boolean + is_required: + description: Whether this label is required for an annotation. + example: true + type: boolean + max: + description: Maximum value for score-type labels. + example: 5.0 + format: double + type: number + min: + description: Minimum value for score-type labels. + example: 0.0 + format: double + type: number + name: + description: Name of the label. Must match the pattern `^[a-zA-Z0-9_-]+$` and be unique within the queue. + example: "quality" + type: string + type: + $ref: "#/components/schemas/LLMObsLabelSchemaType" + values: + description: Allowed values for categorical-type labels. Must contain at least one non-empty, unique value. + example: + - "good" + - "bad" + - "neutral" + items: + description: An allowed value for a categorical label. + type: string + type: array + required: + - name + - type + type: object + LLMObsLabelSchemaType: + description: Type of a label in an annotation queue label schema. + enum: + - score + - categorical + - boolean + - text + example: score + type: string + x-enum-varnames: + - SCORE + - CATEGORICAL + - BOOLEAN + - TEXT + LLMObsMetricAssessment: + description: Assessment result for an Agent Observability experiment metric. + enum: + - pass + - fail + example: pass + type: string + x-enum-varnames: + - PASS + - FAIL + LLMObsMetricScoreType: + description: Type of metric recorded for an Agent Observability experiment. + enum: + - score + - categorical + - boolean + - json + example: score + type: string + x-enum-varnames: + - SCORE + - CATEGORICAL + - BOOLEAN + - JSON + LLMObsOpenAIMetadata: + description: OpenAI-specific metadata for an inference request. + properties: + reasoning_effort: + $ref: "#/components/schemas/LLMObsOpenAIReasoningEffort" + reasoning_summary: + $ref: "#/components/schemas/LLMObsOpenAIReasoningSummary" + type: object + LLMObsOpenAIReasoningEffort: + description: The reasoning effort level for OpenAI models that support it. + enum: + - none + - low + - medium + - high + - xhigh + example: medium + nullable: true + type: string + x-enum-varnames: + - NONE + - LOW + - MEDIUM + - HIGH + - XHIGH + LLMObsOpenAIReasoningSummary: + description: The verbosity of the reasoning summary. + enum: + - auto + - concise + - detailed + example: auto + nullable: true + type: string + x-enum-varnames: + - AUTO + - CONCISE + - DETAILED + LLMObsPatternsActivityProgress: + description: Progress information for a single step of a patterns run. + properties: + name: + description: Name of the step. + example: generate_topics + type: string + started_at: + description: Timestamp when the step started. Null if the step has not started. + example: "2024-01-15T10:30:00Z" + format: date-time + nullable: true + type: string + status: + description: Status of the step. + example: completed + type: string + required: + - name + - status + type: object + LLMObsPatternsClusteredPoint: + description: A single data point grouped into a topic. + properties: + event_id: + description: Identifier of the source event. + example: "AAAAAYabc123" + type: string + id: + description: Unique identifier of the clustered point. + example: "9b0c1d2e-3f40-5a61-b728-c9d0e1f2a3b4" + type: string + input: + description: Input text of the source span. + example: "How do I get a refund?" + type: string + is_included: + description: Whether the point is included in the patterns dataset. + example: false + type: boolean + is_suggested: + description: Whether the point is suggested for inclusion in the patterns dataset. + example: true + type: boolean + session_id: + description: Identifier of the source session. + example: "session-7c3f5a1b" + type: string + span_id: + description: Identifier of the source span. + example: "1234567890123456789" + type: string + topic_id: + description: Identifier of the topic the point belongs to. + example: "5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21" + type: string + required: + - id + - event_id + - topic_id + - span_id + - session_id + - input + - is_suggested + - is_included + type: object + LLMObsPatternsClusteredPointRef: + description: |- + A clustered point attached inline to a topic. The metric fields are populated + only when the request includes `include_metrics=true`. + properties: + duration: + description: Duration of the source span in nanoseconds. Included only when metrics are requested. + example: 1500000 + format: double + type: number + estimated_total_cost: + description: Estimated total cost of the source span. Included only when metrics are requested. + example: 0.0021 + format: double + type: number + evaluation: + additionalProperties: {} + description: |- + Evaluation results for the source span keyed by evaluation name. Included + only when metrics are requested. + type: object + input_tokens: + description: Number of input tokens of the source span. Included only when metrics are requested. + example: 128 + format: double + type: number + output_tokens: + description: Number of output tokens of the source span. Included only when metrics are requested. + example: 64 + format: double + type: number + span_id: + description: Identifier of the source span. + example: "1234567890123456789" + type: string + status: + description: Status of the source span. Included only when metrics are requested. + example: ok + type: string + total_tokens: + description: Total number of tokens of the source span. Included only when metrics are requested. + example: 192 + format: double + type: number + required: + - span_id + type: object + LLMObsPatternsClusteredPointRefsList: + description: List of clustered points attached to a topic. + items: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointRef" + type: array + LLMObsPatternsClusteredPointsList: + description: List of clustered points. + items: + $ref: "#/components/schemas/LLMObsPatternsClusteredPoint" + type: array + LLMObsPatternsClusteredPointsResponse: + description: Response containing the clustered points of an Agent Observability topic. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointsResponseData" + required: + - data + type: object + LLMObsPatternsClusteredPointsResponseAttributes: + description: Attributes of an Agent Observability patterns clustered points response. + properties: + next_page_token: + description: Pagination token for the next page of points. Null if there are no more pages. + example: "eyJvZmZzZXQiOjUwfQ==" + nullable: true + type: string + points: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointsList" + topic_id: + description: Identifier of the topic the points belong to. + example: "5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21" + type: string + required: + - topic_id + - next_page_token + - points + type: object + LLMObsPatternsClusteredPointsResponseData: + description: Data object of an Agent Observability patterns clustered points response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointsResponseAttributes" + id: + description: Identifier of the topic the points belong to. + example: "5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointsType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsClusteredPointsType: + description: Resource type of an Agent Observability patterns clustered points response. + enum: + - clustered_points_response + example: clustered_points_response + type: string + x-enum-varnames: + - CLUSTERED_POINTS_RESPONSE + LLMObsPatternsConfigAttributes: + description: Attributes of an Agent Observability patterns configuration. + properties: + account_id: + description: Integration account ID for a bring-your-own-model configuration. + example: "1000000001" + nullable: true + type: string + created_at: + description: Timestamp when the configuration was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + evp_query: + description: Query that selects the spans the patterns run analyzes. + example: "@ml_app:support-bot" + type: string + hierarchy_depth: + description: Depth of the topic hierarchy to generate. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + integration_provider: + description: Integration provider for a bring-your-own-model configuration. + example: openai + nullable: true + type: string + model_name: + description: Model name for a bring-your-own-model configuration. + example: gpt-4o + nullable: true + type: string + name: + description: Name of the configuration. + example: "Support chatbot topics" + type: string + num_records: + description: Maximum number of records to process for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans to sample for the run. + example: 0.1 + format: double + type: number + scope: + description: Scope of the configuration. + example: "" + type: string + template: + description: Template used to guide topic generation. + example: "" + nullable: true + type: string + updated_at: + description: Timestamp when the configuration was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - name + - evp_query + - sampling_ratio + - num_records + - hierarchy_depth + - scope + - created_at + - updated_at + type: object + LLMObsPatternsConfigItem: + description: A single Agent Observability patterns configuration in a list response. + properties: + account_id: + description: Integration account ID for a bring-your-own-model configuration. + example: "1000000001" + nullable: true + type: string + created_at: + description: Timestamp when the configuration was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + evp_query: + description: Query that selects the spans the patterns run analyzes. + example: "@ml_app:support-bot" + type: string + hierarchy_depth: + description: Depth of the topic hierarchy to generate. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + id: + description: Unique identifier of the configuration. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + integration_provider: + description: Integration provider for a bring-your-own-model configuration. + example: openai + nullable: true + type: string + model_name: + description: Model name for a bring-your-own-model configuration. + example: gpt-4o + nullable: true + type: string + name: + description: Name of the configuration. + example: "Support chatbot topics" + type: string + num_records: + description: Maximum number of records to process for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans to sample for the run. + example: 0.1 + format: double + type: number + scope: + description: Scope of the configuration. + example: "" + type: string + template: + description: Template used to guide topic generation. + example: "" + nullable: true + type: string + updated_at: + description: Timestamp when the configuration was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - id + - name + - evp_query + - sampling_ratio + - num_records + - hierarchy_depth + - scope + - created_at + - updated_at + type: object + LLMObsPatternsConfigItemsList: + description: List of patterns configurations. + items: + $ref: "#/components/schemas/LLMObsPatternsConfigItem" + type: array + LLMObsPatternsConfigResponse: + description: Response containing a single Agent Observability patterns configuration. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsConfigResponseData" + required: + - data + type: object + LLMObsPatternsConfigResponseData: + description: Data object of an Agent Observability patterns configuration. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsConfigAttributes" + id: + description: Unique identifier of the configuration. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsConfigType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsConfigSnapshot: + description: Snapshot of the configuration used for a patterns run. + properties: + account_id: + description: Integration account ID used for a bring-your-own-model run. + example: "1000000001" + type: string + evp_query: + description: Query that selected the spans for the run. + example: "@ml_app:support-bot" + type: string + hierarchy_depth: + description: Depth of the topic hierarchy generated. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + integration_provider: + description: Integration provider used for a bring-your-own-model run. + example: openai + type: string + model_name: + description: Model name used for a bring-your-own-model run. + example: gpt-4o + type: string + num_records: + description: Maximum number of records processed for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans sampled for the run. + example: 0.1 + format: double + type: number + type: object + LLMObsPatternsConfigType: + description: Resource type of an Agent Observability patterns configuration. + enum: + - topic_discovery_configs + example: topic_discovery_configs + type: string + x-enum-varnames: + - TOPIC_DISCOVERY_CONFIGS + LLMObsPatternsConfigUpsertRequest: + description: Request to create or update an Agent Observability patterns configuration. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsConfigUpsertRequestData" + required: + - data + type: object + LLMObsPatternsConfigUpsertRequestAttributes: + description: Attributes for creating or updating an Agent Observability patterns configuration. + properties: + account_id: + description: Integration account ID for a bring-your-own-model configuration. + example: "1000000001" + type: string + config_id: + description: The ID of an existing configuration to update. If omitted, a new configuration is created. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + evp_query: + description: Query that selects the spans the patterns run analyzes. + example: "@ml_app:support-bot" + type: string + hierarchy_depth: + description: Depth of the topic hierarchy to generate. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + integration_provider: + description: Integration provider for a bring-your-own-model configuration. + example: openai + type: string + model_name: + description: Model name for a bring-your-own-model configuration. + example: gpt-4o + type: string + name: + description: Name of the configuration. + example: "Support chatbot topics" + type: string + num_records: + description: Maximum number of records to process for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans to sample for the run. + example: 0.1 + format: double + type: number + scope: + description: Scope of the configuration. + example: "" + type: string + template: + description: Template used to guide topic generation. + example: "" + type: string + required: + - name + - evp_query + - sampling_ratio + - num_records + - hierarchy_depth + type: object + LLMObsPatternsConfigUpsertRequestData: + description: Data object for creating or updating an Agent Observability patterns configuration. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsConfigUpsertRequestAttributes" + type: + $ref: "#/components/schemas/LLMObsPatternsConfigType" + required: + - type + - attributes + type: object + LLMObsPatternsConfigsListType: + description: Resource type of a list of Agent Observability patterns configurations. + enum: + - list_topic_discovery_configs_response + example: list_topic_discovery_configs_response + type: string + x-enum-varnames: + - LIST_TOPIC_DISCOVERY_CONFIGS_RESPONSE + LLMObsPatternsConfigsResponse: + description: Response containing a list of Agent Observability patterns configurations. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsConfigsResponseData" + required: + - data + type: object + LLMObsPatternsConfigsResponseAttributes: + description: Attributes of a list of Agent Observability patterns configurations. + properties: + configs: + $ref: "#/components/schemas/LLMObsPatternsConfigItemsList" + required: + - configs + type: object + LLMObsPatternsConfigsResponseData: + description: Data object of a list of Agent Observability patterns configurations. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsConfigsResponseAttributes" + id: + description: Identifier of the list response. + example: "1000000001" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsConfigsListType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsProgressList: + description: List of step-by-step progress entries for a patterns run. + items: + $ref: "#/components/schemas/LLMObsPatternsActivityProgress" + type: array + LLMObsPatternsRequestType: + description: Resource type for triggering an Agent Observability patterns run. + enum: + - topic_discovery + example: topic_discovery + type: string + x-enum-varnames: + - TOPIC_DISCOVERY + LLMObsPatternsRunStatusResponse: + description: Response containing the status of an Agent Observability patterns run. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsRunStatusResponseData" + required: + - data + type: object + LLMObsPatternsRunStatusResponseAttributes: + description: Attributes of an Agent Observability patterns run status. + properties: + created_at: + description: Timestamp when the run was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + progress: + $ref: "#/components/schemas/LLMObsPatternsProgressList" + status: + description: Overall status of the run. + example: running + type: string + step: + description: The current step of the run. + example: generate_topics + type: string + required: + - created_at + - status + - step + - progress + type: object + LLMObsPatternsRunStatusResponseData: + description: Data object of an Agent Observability patterns run status response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsRunStatusResponseAttributes" + id: + description: The ID of the patterns run. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsRunStatusType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsRunStatusType: + description: Resource type of an Agent Observability patterns run status. + enum: + - topic_discovery_run_status + example: topic_discovery_run_status + type: string + x-enum-varnames: + - TOPIC_DISCOVERY_RUN_STATUS + LLMObsPatternsRunSummary: + description: Summary of an Agent Observability patterns run. + properties: + completed_at: + description: Timestamp when the run completed. Null if the run has not completed. + example: "2024-01-15T10:45:00Z" + format: date-time + nullable: true + type: string + config_snapshot: + $ref: "#/components/schemas/LLMObsPatternsConfigSnapshot" + created_at: + description: Timestamp when the run was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + id: + description: Unique identifier of the run. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + status: + description: Status of the run. + example: completed + type: string + required: + - id + - status + - created_at + type: object + LLMObsPatternsRunsList: + description: List of patterns runs. + items: + $ref: "#/components/schemas/LLMObsPatternsRunSummary" + type: array + LLMObsPatternsRunsListType: + description: Resource type of a list of Agent Observability patterns runs. + enum: + - list_topic_discovery_runs_response + example: list_topic_discovery_runs_response + type: string + x-enum-varnames: + - LIST_TOPIC_DISCOVERY_RUNS_RESPONSE + LLMObsPatternsRunsResponse: + description: Response containing the completed runs of an Agent Observability patterns configuration. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsRunsResponseData" + required: + - data + type: object + LLMObsPatternsRunsResponseAttributes: + description: Attributes of an Agent Observability patterns runs response. + properties: + runs: + $ref: "#/components/schemas/LLMObsPatternsRunsList" + required: + - runs + type: object + LLMObsPatternsRunsResponseData: + description: Data object of an Agent Observability patterns runs response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsRunsResponseAttributes" + id: + description: Identifier of the configuration the runs belong to. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsRunsListType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsTopic: + description: A topic discovered by an Agent Observability patterns run. + properties: + created_at: + description: Timestamp when the topic was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + description: + description: Description of the topic. + example: "Questions about invoices, charges, and refunds." + type: string + first_seen_at: + description: Timestamp when the topic was first seen. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + hierarchy_level: + description: Level of the topic in the hierarchy. Level 0 is a leaf topic. + example: 0 + format: int64 + type: integer + id: + description: Unique identifier of the topic. + example: "5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21" + type: string + is_validated: + description: Whether the topic has been validated. + example: true + type: boolean + name: + description: Name of the topic. + example: "Billing questions" + type: string + parent_topic_id: + description: Identifier of the parent topic. Empty for top-level topics. + example: "" + type: string + point_count: + description: Number of data points assigned to the topic. + example: 125 + format: int64 + type: integer + run_id: + description: Identifier of the run that produced the topic. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + required: + - id + - run_id + - parent_topic_id + - hierarchy_level + - name + - description + - is_validated + - created_at + - point_count + - first_seen_at + type: object + LLMObsPatternsTopicWithClusteredPoints: + description: |- + A topic discovered by an Agent Observability patterns run, including the + clustered points attached to leaf topics. + properties: + cluster_points: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointRefsList" + created_at: + description: Timestamp when the topic was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + description: + description: Description of the topic. + example: "Questions about invoices, charges, and refunds." + type: string + first_seen_at: + description: Timestamp when the topic was first seen. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + hierarchy_level: + description: Level of the topic in the hierarchy. Level 0 is a leaf topic. + example: 0 + format: int64 + type: integer + id: + description: Unique identifier of the topic. + example: "5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21" + type: string + is_validated: + description: Whether the topic has been validated. + example: true + type: boolean + name: + description: Name of the topic. + example: "Billing questions" + type: string + parent_topic_id: + description: Identifier of the parent topic. Empty for top-level topics. + example: "" + type: string + point_count: + description: Number of data points assigned to the topic. + example: 125 + format: int64 + type: integer + run_id: + description: Identifier of the run that produced the topic. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + required: + - id + - run_id + - parent_topic_id + - hierarchy_level + - name + - description + - is_validated + - created_at + - point_count + - first_seen_at + type: object + LLMObsPatternsTopicsList: + description: List of discovered topics. + items: + $ref: "#/components/schemas/LLMObsPatternsTopic" + type: array + LLMObsPatternsTopicsResponse: + description: Response containing the topics discovered by an Agent Observability patterns run. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsTopicsResponseData" + required: + - data + type: object + LLMObsPatternsTopicsResponseAttributes: + description: Attributes of an Agent Observability patterns topics response. + properties: + completed_at: + description: Timestamp when the run completed. Null if the run has not completed. + example: "2024-01-15T10:45:00Z" + format: date-time + nullable: true + type: string + config_id: + description: Identifier of the configuration that produced the run. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + config_snapshot: + $ref: "#/components/schemas/LLMObsPatternsConfigSnapshot" + created_at: + description: Timestamp when the run was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + previous_run_id: + description: Identifier of the run that completed immediately before this one. Empty if none. + example: "" + type: string + run_id: + description: Identifier of the run that produced the topics. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + topics: + $ref: "#/components/schemas/LLMObsPatternsTopicsList" + required: + - run_id + - config_id + - previous_run_id + - created_at + - topics + type: object + LLMObsPatternsTopicsResponseData: + description: Data object of an Agent Observability patterns topics response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsTopicsResponseAttributes" + id: + description: Identifier of the run the topics belong to. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsTopicsType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsTopicsType: + description: Resource type of an Agent Observability patterns topics response. + enum: + - get_topics_response + example: get_topics_response + type: string + x-enum-varnames: + - GET_TOPICS_RESPONSE + LLMObsPatternsTopicsWithClusteredPointsList: + description: List of discovered topics with their clustered points. + items: + $ref: "#/components/schemas/LLMObsPatternsTopicWithClusteredPoints" + type: array + LLMObsPatternsTopicsWithClusteredPointsResponse: + description: |- + Response containing the topics, and the clustered points of their leaf topics, + discovered by an Agent Observability patterns run. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsResponseData" + required: + - data + type: object + LLMObsPatternsTopicsWithClusteredPointsResponseAttributes: + description: Attributes of an Agent Observability patterns topics-with-clustered-points response. + properties: + completed_at: + description: Timestamp when the run completed. Null if the run has not completed. + example: "2024-01-15T10:45:00Z" + format: date-time + nullable: true + type: string + config_id: + description: Identifier of the configuration that produced the run. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + config_snapshot: + $ref: "#/components/schemas/LLMObsPatternsConfigSnapshot" + created_at: + description: Timestamp when the run was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + previous_run_id: + description: Identifier of the run that completed immediately before this one. Empty if none. + example: "" + type: string + run_id: + description: Identifier of the run that produced the topics. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + topics: + $ref: "#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsList" + required: + - run_id + - config_id + - previous_run_id + - created_at + - topics + type: object + LLMObsPatternsTopicsWithClusteredPointsResponseData: + description: Data object of an Agent Observability patterns topics-with-clustered-points response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsResponseAttributes" + id: + description: Identifier of the run the topics belong to. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsTopicsWithClusteredPointsType: + description: Resource type of an Agent Observability patterns topics-with-clustered-points response. + enum: + - get_topics_with_cluster_points_response + example: get_topics_with_cluster_points_response + type: string + x-enum-varnames: + - GET_TOPICS_WITH_CLUSTER_POINTS_RESPONSE + LLMObsPatternsTriggerRequest: + description: Request to trigger an Agent Observability patterns run. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsTriggerRequestData" + required: + - data + type: object + LLMObsPatternsTriggerRequestAttributes: + description: Attributes for triggering an Agent Observability patterns run. + properties: + config_id: + description: The ID of the patterns configuration to run. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + required: + - config_id + type: object + LLMObsPatternsTriggerRequestData: + description: Data object for triggering an Agent Observability patterns run. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsTriggerRequestAttributes" + type: + $ref: "#/components/schemas/LLMObsPatternsRequestType" + required: + - type + - attributes + type: object + LLMObsPatternsTriggerResponse: + description: Response after triggering an Agent Observability patterns run. + properties: + data: + $ref: "#/components/schemas/LLMObsPatternsTriggerResponseData" + required: + - data + type: object + LLMObsPatternsTriggerResponseAttributes: + description: Attributes of an Agent Observability patterns trigger response. + properties: + config_id: + description: The ID of the patterns configuration that was run. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + run_id: + description: The ID of the patterns run that was started. + example: "3fd6b5e0-8910-4b1c-a7d0-5b84de329012" + type: string + status: + description: Status of the patterns run. + example: started + type: string + required: + - run_id + - config_id + - status + type: object + LLMObsPatternsTriggerResponseData: + description: Data object of an Agent Observability patterns trigger response. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPatternsTriggerResponseAttributes" + id: + description: The ID of the patterns configuration that was run. + example: "a7c8d9e0-1234-5678-9abc-def012345678" + type: string + type: + $ref: "#/components/schemas/LLMObsPatternsTriggerResponseType" + required: + - id + - type + - attributes + type: object + LLMObsPatternsTriggerResponseType: + description: Resource type of an Agent Observability patterns trigger response. + enum: + - topic_discovery_run + example: topic_discovery_run + type: string + x-enum-varnames: + - TOPIC_DISCOVERY_RUN + LLMObsProjectDataAttributesRequest: + description: Attributes for creating an Agent Observability project. + properties: + description: + description: Description of the project. + type: string + name: + description: Name of the project. + example: "My LLM Project" + type: string + required: + - name + type: object + LLMObsProjectDataAttributesResponse: + description: Attributes of an Agent Observability project. + properties: + created_at: + description: Timestamp when the project was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + description: + description: Description of the project. + example: "" + nullable: true + type: string + name: + description: Name of the project. + example: "My LLM Project" + type: string + updated_at: + description: Timestamp when the project was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + required: + - name + - description + - created_at + - updated_at + type: object + LLMObsProjectDataRequest: + description: Data object for creating an Agent Observability project. + properties: + attributes: + $ref: "#/components/schemas/LLMObsProjectDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsProjectType" + required: + - type + - attributes + type: object + LLMObsProjectDataResponse: + description: Data object for an Agent Observability project. + properties: + attributes: + $ref: "#/components/schemas/LLMObsProjectDataAttributesResponse" + id: + description: Unique identifier of the project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + type: string + type: + $ref: "#/components/schemas/LLMObsProjectType" + required: + - id + - type + - attributes + type: object + LLMObsProjectRequest: + description: Request to create an Agent Observability project. + properties: + data: + $ref: "#/components/schemas/LLMObsProjectDataRequest" + required: + - data + type: object + LLMObsProjectResponse: + description: Response containing a single Agent Observability project. + properties: + data: + $ref: "#/components/schemas/LLMObsProjectDataResponse" + required: + - data + type: object + LLMObsProjectType: + description: Resource type of an Agent Observability project. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + LLMObsProjectUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability project. + properties: + description: + description: Updated description of the project. + type: string + name: + description: Updated name of the project. + type: string + type: object + LLMObsProjectUpdateDataRequest: + description: Data object for updating an Agent Observability project. + properties: + attributes: + $ref: "#/components/schemas/LLMObsProjectUpdateDataAttributesRequest" + type: + $ref: "#/components/schemas/LLMObsProjectType" + required: + - type + - attributes + type: object + LLMObsProjectUpdateRequest: + description: Request to partially update an Agent Observability project. + properties: + data: + $ref: "#/components/schemas/LLMObsProjectUpdateDataRequest" + required: + - data + type: object + LLMObsProjectsResponse: + description: Response containing a list of Agent Observability projects. + properties: + data: + description: List of projects. + items: + $ref: "#/components/schemas/LLMObsProjectDataResponse" + type: array + meta: + $ref: "#/components/schemas/LLMObsCursorMeta" + required: + - data + type: object + LLMObsPromptChatMessage: + description: A single chat message in a prompt template. + properties: + content: + description: Content of the message. + example: "You are a helpful customer support assistant for {{company_name}}." + type: string + role: + description: Role of the message (for example `system`, `user`, or `assistant`). + example: "system" + type: string + required: + - role + - content + type: object + LLMObsPromptChatTemplate: + description: A chat prompt template. + items: + $ref: "#/components/schemas/LLMObsPromptChatMessage" + minItems: 1 + type: array + x-generate-alias-as-model: true + LLMObsPromptData: + description: Data object for an Agent Observability prompt. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPromptDataAttributes" + id: + description: Unique identifier of the prompt. + example: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: string + type: + $ref: "#/components/schemas/LLMObsPromptType" + required: + - id + - type + - attributes + type: object + LLMObsPromptDataAttributes: + description: Attributes of an Agent Observability prompt registry entry. + properties: + author: + description: UUID of the user who authored the prompt. + type: string + created_at: + description: Timestamp when the prompt was created. + format: date-time + type: string + created_from: + description: >- + Source that created the prompt, such as `ui-registry`, `sdk-registry`, or `sdk-instrumentation`. + example: "sdk-registry" + type: string + datasets: + description: Datasets observed in runs associated with this prompt. + items: + $ref: "#/components/schemas/LLMObsPromptDataset" + type: array + description: + description: Description of the prompt. + type: string + extracted_from: + description: Source prompt from which this prompt was extracted, when applicable. + type: string + in_registry: + description: Whether the prompt is a registry entry (as opposed to a code-discovered prompt). + example: true + type: boolean + last_seen_at: + description: Timestamp of the most recent observed run of this prompt. + format: date-time + type: string + last_version_created_at: + description: Timestamp when the most recent version of the prompt was created. + format: date-time + type: string + ml_app: + description: The ML application this prompt is associated with. + type: string + ml_apps: + description: ML applications observed running this prompt. + items: + type: string + type: array + num_versions: + description: Number of versions of the prompt. + example: 2 + format: int64 + type: integer + prompt_id: + description: Customer-provided identifier of the prompt. + example: "customer-support-assistant" + type: string + source: + $ref: "#/components/schemas/LLMObsPromptResponseSource" + tags: + description: Tags observed on runs of this prompt. + items: + type: string + type: array + title: + description: Title of the prompt. + type: string + required: + - prompt_id + - source + - num_versions + - in_registry + - created_from + type: object + LLMObsPromptDataset: + description: A dataset observed in runs associated with a prompt or prompt version. + properties: + id: + description: Unique identifier of the dataset. + example: "" + type: string + name: + description: Name of the dataset. + type: string + required: + - id + type: object + LLMObsPromptResponse: + description: Response containing a single Agent Observability prompt. + example: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + created_from: "sdk-registry" + description: "Answers customer questions using the company knowledge base." + in_registry: true + last_version_created_at: "2025-01-15T10:00:00Z" + num_versions: 1 + prompt_id: "customer-support-assistant" + source: registry + title: "Customer Support Assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + properties: + data: + $ref: "#/components/schemas/LLMObsPromptData" + required: + - data + type: object + LLMObsPromptResponseSource: + description: Whether the prompt was created from the registry or discovered from observed LLM calls. + enum: + - registry + - code + example: registry + type: string + x-enum-varnames: + - REGISTRY + - CODE + LLMObsPromptSDKData: + description: Data object for a flattened Agent Observability prompt version returned for SDK consumption. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPromptSDKDataAttributes" + id: + description: Unique identifier of the prompt. + example: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: string + type: + $ref: "#/components/schemas/LLMObsPromptType" + required: + - id + - type + - attributes + type: object + LLMObsPromptSDKDataAttributes: + description: >- + Attributes of a flattened prompt version returned for SDK consumption. Exactly one of `template` and `chat_template` is returned. + properties: + chat_template: + description: >- + Chat template for this prompt version, as a list of role and content messages. Omitted for text templates. + items: + $ref: "#/components/schemas/LLMObsPromptChatMessage" + type: array + labels: + deprecated: true + description: Labels attached to the selected version. + items: + type: string + type: array + prompt_id: + description: Customer-provided identifier of the prompt. + example: "customer-support-assistant" + type: string + prompt_version_uuid: + description: Unique identifier of this prompt version. + example: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: string + template: + description: Text template for this prompt version. Omitted for chat templates. + type: string + version: + description: >- + Version identifier for this prompt version. This is the sequential version number unless a user-supplied version identifier was set, in which case that identifier is used instead. + example: "2" + type: string + type: object + LLMObsPromptSDKResponse: + description: Response containing a flattened Agent Observability prompt version for SDK consumption. + example: + data: + attributes: + chat_template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + prompt_id: "customer-support-assistant" + prompt_version_uuid: "d83ab666-61cc-5545-a83b-2424bb85467b" + version: "2" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + properties: + data: + $ref: "#/components/schemas/LLMObsPromptSDKData" + required: + - data + type: object + LLMObsPromptTemplate: + description: A text template or a list of chat messages. + example: "You are a helpful assistant for {{audience}}." + oneOf: + - $ref: "#/components/schemas/LLMObsPromptTextTemplate" + - $ref: "#/components/schemas/LLMObsPromptChatTemplate" + LLMObsPromptTextTemplate: + description: A text prompt template. + minLength: 1 + pattern: ".*\\S.*" + type: string + LLMObsPromptType: + description: Resource type of an Agent Observability prompt. + enum: + - prompt-templates + example: prompt-templates + type: string + x-enum-varnames: + - PROMPT_TEMPLATES + LLMObsPromptVersionData: + description: Data object for a specific version of an Agent Observability prompt. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPromptVersionDataAttributes" + id: + description: Unique identifier of the prompt version. + example: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: string + type: + $ref: "#/components/schemas/LLMObsPromptVersionType" + required: + - id + - type + - attributes + type: object + LLMObsPromptVersionDataAttributes: + description: Attributes of a specific version of an Agent Observability prompt. + properties: + author: + description: UUID of the user who authored this version. + type: string + created_at: + description: Timestamp stored on this prompt version. + format: date-time + type: string + datasets: + description: Datasets observed in runs associated with this prompt version. + items: + $ref: "#/components/schemas/LLMObsPromptDataset" + type: array + description: + description: Description of this version. + type: string + labels: + deprecated: true + description: Labels attached to this version (for example `development`, `staging`, `production`). + items: + type: string + type: array + last_seen_at: + description: Timestamp of the most recent observed run of this prompt version. + format: date-time + type: string + ml_app: + description: The ML application this prompt is associated with. + type: string + ml_apps: + description: ML applications observed running this prompt version. + items: + type: string + type: array + prompt_id: + description: Customer-provided identifier of the parent prompt. + example: "customer-support-assistant" + type: string + prompt_uuid: + description: Unique identifier of the parent prompt. + example: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: string + tags: + description: Tags observed on runs of this prompt version. + items: + type: string + type: array + template: + $ref: "#/components/schemas/LLMObsPromptTemplate" + user_version: + description: User-supplied identifier for this version. + type: string + version: + description: Sequential version number. + example: 1 + format: int64 + minimum: 1 + type: integer + version_created_at: + description: Timestamp when this version was created. + format: date-time + type: string + required: + - prompt_uuid + - prompt_id + - template + - version + type: object + LLMObsPromptVersionLabel: + description: A label attached to an Agent Observability prompt version. + enum: + - production + - development + type: string + x-enum-varnames: + - PRODUCTION + - DEVELOPMENT + LLMObsPromptVersionListData: + description: Data object for a prompt version returned in a list. + properties: + attributes: + $ref: "#/components/schemas/LLMObsPromptVersionListDataAttributes" + id: + description: Unique identifier of the prompt version. + example: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: string + type: + $ref: "#/components/schemas/LLMObsPromptVersionType" + required: + - id + - type + - attributes + type: object + LLMObsPromptVersionListDataAttributes: + description: Attributes of a prompt version returned in a list, excluding its template. + properties: + author: + description: UUID of the user who authored this version. + type: string + created_at: + description: Timestamp stored on this prompt version. + format: date-time + type: string + datasets: + description: Datasets observed in runs associated with this prompt version. + items: + $ref: "#/components/schemas/LLMObsPromptDataset" + type: array + description: + description: Description of this version. + type: string + labels: + deprecated: true + description: Labels attached to this version (for example `development`, `staging`, `production`). + items: + type: string + type: array + last_seen_at: + description: Timestamp of the most recent observed run of this prompt version. + format: date-time + type: string + ml_app: + description: The ML application this prompt is associated with. + type: string + ml_apps: + description: ML applications observed running this prompt version. + items: + type: string + type: array + prompt_id: + description: Customer-provided identifier of the parent prompt. + example: "customer-support-assistant" + type: string + prompt_uuid: + description: Unique identifier of the parent prompt. + example: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: string + tags: + description: Tags observed on runs of this prompt version. + items: + type: string + type: array + user_version: + description: User-supplied identifier for this version. + type: string + version: + description: Sequential version number. + example: 1 + format: int64 + minimum: 1 + type: integer + version_created_at: + description: Timestamp when this version was created. + format: date-time + type: string + required: + - prompt_uuid + - prompt_id + - version + type: object + LLMObsPromptVersionResponse: + description: Response containing a specific version of an Agent Observability prompt. + example: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-02-01T14:30:00Z" + description: "Give concise answers and cite relevant help-center articles." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + version: 2 + version_created_at: "2025-02-01T14:30:00Z" + id: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: prompt-template-versions + properties: + data: + $ref: "#/components/schemas/LLMObsPromptVersionData" + required: + - data + type: object + LLMObsPromptVersionType: + description: Resource type of an Agent Observability prompt version. + enum: + - prompt-template-versions + example: prompt-template-versions + type: string + x-enum-varnames: + - PROMPT_TEMPLATE_VERSIONS + LLMObsPromptVersionsResponse: + description: Response containing the versions of an Agent Observability prompt. + example: + data: + - attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-02-01T14:30:00Z" + description: "Give concise answers and cite relevant help-center articles." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + version: 2 + version_created_at: "2025-02-01T14:30:00Z" + id: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: prompt-template-versions + - attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + description: "Initial customer support prompt." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + version: 1 + version_created_at: "2025-01-15T10:00:00Z" + id: "20e5280b-c75d-5699-8a70-a2773a751428" + type: prompt-template-versions + properties: + data: + description: Prompt versions ordered from newest to oldest. + items: + $ref: "#/components/schemas/LLMObsPromptVersionListData" + type: array + required: + - data + type: object + LLMObsPromptsResponse: + description: Response containing a list of Agent Observability prompts. + example: + data: + - attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + created_from: "sdk-registry" + description: "Answers customer questions using the company knowledge base." + in_registry: true + last_version_created_at: "2025-02-01T14:30:00Z" + num_versions: 2 + prompt_id: "customer-support-assistant" + source: registry + title: "Customer Support Assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + properties: + data: + description: List of Agent Observability prompts. + items: + $ref: "#/components/schemas/LLMObsPromptData" + type: array + required: + - data + type: object + LLMObsRecordType: + description: Resource type of Agent Observability dataset records. + enum: + - records + example: records + type: string + x-enum-varnames: + - RECORDS + LLMObsSearchSpansRequest: + description: Request body for searching Agent Observability spans. + properties: + data: + $ref: "#/components/schemas/LLMObsSearchSpansRequestData" + required: + - data + type: object + LLMObsSearchSpansRequestAttributes: + description: Attributes of an Agent Observability spans search request. + properties: + filter: + $ref: "#/components/schemas/LLMObsSpanFilter" + options: + $ref: "#/components/schemas/LLMObsSpanSearchOptions" + page: + $ref: "#/components/schemas/LLMObsSpanPageQuery" + sort: + description: Sort order for the results. Use `-` prefix for descending order. + example: "-start_ns" + type: string + type: object + LLMObsSearchSpansRequestData: + description: Data object for an Agent Observability spans search request. + properties: + attributes: + $ref: "#/components/schemas/LLMObsSearchSpansRequestAttributes" + type: + $ref: "#/components/schemas/LLMObsSearchSpansRequestType" + required: + - type + - attributes + type: object + LLMObsSearchSpansRequestType: + description: Resource type for an Agent Observability spans search request. + enum: + - spans + example: spans + type: string + x-enum-varnames: + - SPANS + LLMObsSpanAttributes: + description: Attributes of an Agent Observability span. + properties: + duration: + description: Duration of the span in nanoseconds. + example: 1500000000.0 + format: double + type: number + evaluation: + additionalProperties: + $ref: "#/components/schemas/LLMObsSpanEvaluationMetric" + description: Evaluation metrics keyed by evaluator name. + type: object + input: + $ref: "#/components/schemas/LLMObsSpanIO" + intent: + description: Detected intent of the span. + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the span. + type: object + metrics: + additionalProperties: + format: double + type: number + description: Numeric metrics associated with the span (e.g., token counts). + type: object + ml_app: + description: Name of the ML application this span belongs to. + example: "my-llm-app" + type: string + model_name: + description: Name of the model used in this span. + example: "gpt-4o" + type: string + model_provider: + description: Provider of the model used in this span. + example: "openai" + type: string + name: + description: Name of the span. + example: "llm_call" + type: string + output: + $ref: "#/components/schemas/LLMObsSpanIO" + parent_id: + description: Identifier of the parent span, if any. + type: string + span_id: + description: Unique identifier of the span. + example: "abc123def456" + type: string + span_kind: + description: Kind of span (e.g., llm, agent, tool, task, workflow). + example: "llm" + type: string + start_ns: + description: Start time of the span in nanoseconds since Unix epoch. + example: 1705314600000000000 + format: int64 + type: integer + status: + description: Status of the span (e.g., ok, error). + example: "ok" + type: string + tags: + description: Tags associated with the span. + items: + type: string + type: array + tool_definitions: + description: Tool definitions available to the span. + items: + $ref: "#/components/schemas/LLMObsSpanToolDefinition" + type: array + trace_id: + description: Trace identifier this span belongs to. + example: "trace-9a8b7c6d5e4f" + type: string + required: + - span_id + - trace_id + - name + - status + - start_ns + - duration + - ml_app + - span_kind + type: object + LLMObsSpanData: + description: A single Agent Observability span. + properties: + attributes: + $ref: "#/components/schemas/LLMObsSpanAttributes" + id: + description: Unique identifier of the span. + example: "abc123def456" + type: string + type: + $ref: "#/components/schemas/LLMObsSpanType" + required: + - id + - type + - attributes + type: object + LLMObsSpanEvaluationMetric: + description: An evaluation metric associated with an Agent Observability span. + properties: + assessment: + description: Assessment result (e.g., pass or fail). + example: pass + type: string + eval_metric_type: + description: Type of the evaluation metric (e.g., score, categorical, boolean). + example: score + type: string + reasoning: + description: Human-readable reasoning for the evaluation result. + type: string + status: + description: Status of the evaluation execution. + type: string + tags: + description: Tags associated with the evaluation metric. + items: + type: string + type: array + value: + description: Value of the evaluation result. + type: object + LLMObsSpanFilter: + description: Filter criteria for an Agent Observability span search. + properties: + from: + description: Start of the time range. Accepts ISO 8601 or relative format (e.g., `now-15m`). Defaults to `now-15m`. + example: "now-900s" + type: string + ml_app: + description: Filter by ML application name. + example: "my-llm-app" + type: string + query: + description: >- + Search query using Agent Observability query syntax. Supports attribute filters using the field:value syntax (e.g. session_id, trace_id, ml_app, meta.span.kind). When provided, structured field filters (`span_id`, `trace_id`, etc.) are ignored. + example: "@session_id:abc123def456" + type: string + span_id: + description: Filter by exact span ID. + example: "abc123def456" + type: string + span_kind: + description: Filter by span kind (e.g., llm, agent, tool, task, workflow). + example: "llm" + type: string + span_name: + description: Filter by span name. + example: "llm_call" + type: string + tags: + additionalProperties: + type: string + description: Filter by tag key-value pairs. + type: object + to: + description: End of the time range. Accepts ISO 8601 or relative format (e.g., `now`). Defaults to `now`. + example: "now" + type: string + trace_id: + description: Filter by exact trace ID. + example: "trace-9a8b7c6d5e4f" + type: string + type: object + LLMObsSpanIO: + description: Input or output content of an Agent Observability span. + properties: + messages: + description: List of messages in the input or output. + items: + $ref: "#/components/schemas/LLMObsSpanMessage" + type: array + value: + description: Plain-text value of the input or output. + type: string + type: object + LLMObsSpanMessage: + description: A single message in a span input or output. + properties: + content: + description: Text content of the message. + type: string + id: + description: Unique identifier of the message. + type: string + role: + description: Role of the message sender (e.g., user, assistant, system). + type: string + tool_calls: + description: Tool calls made in this message. + items: + $ref: "#/components/schemas/LLMObsSpanToolCall" + type: array + tool_results: + description: Tool results returned in this message. + items: + $ref: "#/components/schemas/LLMObsSpanToolResult" + type: array + type: object + LLMObsSpanPageQuery: + description: Pagination settings for a span search request. + properties: + cursor: + description: Cursor from the previous response to retrieve the next page. + example: "eyJzdGFydCI6MTAwfQ==" + type: string + limit: + description: Maximum number of spans to return. Defaults to `10`. + example: 10 + format: int64 + type: integer + type: object + LLMObsSpanSearchOptions: + description: Additional options for a span search request. + properties: + include_attachments: + description: Whether to include attachment data in the response. Defaults to `true`. + example: true + type: boolean + time_offset: + description: Offset in seconds applied to both `from` and `to` timestamps. + example: 0 + format: int64 + type: integer + type: object + LLMObsSpanToolCall: + description: A tool call made during a span. + properties: + arguments: + additionalProperties: {} + description: Arguments passed to the tool. + type: object + name: + description: Name of the tool called. + type: string + tool_id: + description: Identifier of the tool call. + type: string + type: + description: Type of the tool call. + type: string + type: object + LLMObsSpanToolDefinition: + description: A tool definition available to an LLM span. + properties: + description: + description: Description of what the tool does. + type: string + name: + description: Name of the tool. + type: string + schema: + additionalProperties: {} + description: JSON schema describing the tool's input parameters. + type: object + version: + description: Version of the tool definition. + type: string + type: object + LLMObsSpanToolResult: + description: A result returned from a tool call during a span. + properties: + name: + description: Name of the tool that produced this result. + type: string + result: + description: Result value returned by the tool. + type: string + tool_id: + description: Identifier of the corresponding tool call. + type: string + type: + description: Type of the tool result. + type: string + type: object + LLMObsSpanType: + description: Resource type for an Agent Observability span. + enum: + - span + example: span + type: string + x-enum-varnames: + - SPAN + LLMObsSpansResponse: + description: Response containing a list of Agent Observability spans. + properties: + data: + description: List of spans matching the query. + items: + $ref: "#/components/schemas/LLMObsSpanData" + type: array + links: + $ref: "#/components/schemas/LLMObsSpansResponseLinks" + meta: + $ref: "#/components/schemas/LLMObsSpansResponseMeta" + required: + - data + - meta + type: object + LLMObsSpansResponseLinks: + description: Pagination links accompanying the spans response. + properties: + next: + description: URL to retrieve the next page of results. + example: "https://api.datadoghq.com/api/v2/llm-obs/v1/spans/events?page[cursor]=eyJzdGFydCI6MTAwfQ==" + type: string + type: object + LLMObsSpansResponseMeta: + description: Metadata accompanying the spans response. + properties: + elapsed: + description: Time elapsed for the query in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/LLMObsSpansResponsePage" + request_id: + description: Unique identifier for the request. + example: "req-abc123" + type: string + status: + description: Status of the query execution. + example: "done" + type: string + required: + - elapsed + - request_id + - status + - page + type: object + LLMObsSpansResponsePage: + description: Pagination cursor for the spans response. + properties: + after: + description: Cursor to retrieve the next page of results. Absent when there are no more results. + example: "eyJzdGFydCI6MTAwfQ==" + type: string + type: object + LLMObsTraceAnnotatedInteractionItem: + description: A trace, experiment trace, or session interaction with its associated annotations. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: "#/components/schemas/LLMObsAnnotationItem" + type: array + content_id: + description: Upstream entity identifier supplied by the caller. + example: "trace-abc-123" + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + id: + description: Unique identifier of the interaction. + example: "interaction-456" + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + type: + $ref: "#/components/schemas/LLMObsTraceInteractionType" + required: + - id + - type + - content_id + - created_at + - modified_at + - annotations + type: object + LLMObsTraceInteractionItem: + description: An interaction that references an upstream trace, experiment trace, or session. + properties: + content_id: + description: Upstream entity identifier (trace, experiment trace, or session ID). + example: "trace-abc-123" + type: string + type: + $ref: "#/components/schemas/LLMObsTraceInteractionType" + required: + - type + - content_id + type: object + LLMObsTraceInteractionResponseItem: + description: A trace, experiment trace, or session interaction result. + properties: + already_existed: + description: Whether this interaction already existed in the queue. + example: false + type: boolean + content_id: + description: Upstream entity identifier supplied by the caller. + example: "trace-abc-123" + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + id: + description: Unique identifier of the interaction. + example: "00000000-0000-0000-0000-000000000000" + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + type: + $ref: "#/components/schemas/LLMObsTraceInteractionType" + required: + - id + - type + - content_id + - already_existed + - created_at + - modified_at + type: object + LLMObsTraceInteractionType: + description: Type of an upstream-entity interaction. + enum: + - trace + - experiment_trace + - session + example: trace + type: string + x-enum-varnames: + - TRACE + - EXPERIMENT_TRACE + - SESSION + LLMObsUpdatePromptData: + description: Data object for updating an Agent Observability prompt. + properties: + attributes: + $ref: "#/components/schemas/LLMObsUpdatePromptDataAttributes" + type: + $ref: "#/components/schemas/LLMObsPromptType" + required: + - type + - attributes + type: object + LLMObsUpdatePromptDataAttributes: + additionalProperties: false + description: >- + Attributes for updating an Agent Observability prompt. At least one of `title` or `description` must be provided; both attributes are optional individually. + minProperties: 1 + properties: + description: + description: Optional new description for the prompt. + type: string + title: + description: Optional new title for the prompt. + type: string + type: object + LLMObsUpdatePromptRequest: + description: Request to update an Agent Observability prompt's metadata. + properties: + data: + $ref: "#/components/schemas/LLMObsUpdatePromptData" + required: + - data + type: object + LLMObsUpdatePromptVersionData: + description: Data object for updating an Agent Observability prompt version. + properties: + attributes: + $ref: "#/components/schemas/LLMObsUpdatePromptVersionDataAttributes" + type: + $ref: "#/components/schemas/LLMObsPromptVersionType" + required: + - type + - attributes + type: object + LLMObsUpdatePromptVersionDataAttributes: + additionalProperties: false + description: >- + Attributes for updating an Agent Observability prompt version. At least one of `description`, `labels`, or `env_ids` must be provided; all three attributes are optional individually. + minProperties: 1 + properties: + description: + description: Optional new description for this version. + type: string + env_ids: + description: >- + Optional feature-flag environment UUIDs the service attempts to enable and configure to use this version as their default. + items: + type: string + type: array + labels: + deprecated: true + description: Optional new labels for this version. Do not use this attribute for new integrations. + items: + $ref: "#/components/schemas/LLMObsPromptVersionLabel" + type: array + type: object + LLMObsUpdatePromptVersionRequest: + description: Request to update an Agent Observability prompt version's metadata or feature-flag environments. + properties: + data: + $ref: "#/components/schemas/LLMObsUpdatePromptVersionData" + required: + - data + type: object + LLMObsUpsertAnnotationItem: + description: |- + A single annotation to create or update. The annotation is matched by + `interaction_id` and the requesting user's identity. + properties: + interaction_id: + description: ID of the interaction to annotate. + example: "00000000-0000-0000-0000-000000000001" + type: string + label_values: + description: |- + Label values for this annotation. Each entry references a label schema by ID + and provides the corresponding value validated against the schema type constraints. + example: + - label_schema_id: "abc-123" + value: "good" + - label_schema_id: "ef56gh78" + value: "positive" + items: + $ref: "#/components/schemas/LLMObsAnnotationLabelValue" + minItems: 1 + type: array + required: + - interaction_id + - label_values + type: object + LLMObsVertexAIMetadata: + description: Vertex AI-specific metadata for an integration account or inference request. + properties: + location: + description: The Vertex AI region. + example: "us-central1" + type: string + project: + description: The Google Cloud project ID. + example: "my-gcp-project" + type: string + project_ids: + description: List of Google Cloud project IDs available to the service account. + example: + - "my-gcp-project" + items: + type: string + type: array + type: object + Language: + description: Programming language + enum: + - PYTHON + - JAVASCRIPT + - TYPESCRIPT + - JAVA + - GO + - YAML + - RUBY + - CSHARP + - PHP + - KOTLIN + - SWIFT + example: PYTHON + type: string + x-enum-varnames: + - PYTHON + - JAVASCRIPT + - TYPESCRIPT + - JAVA + - GO + - YAML + - RUBY + - CSHARP + - PHP + - KOTLIN + - SWIFT + LatestVersionMatchPolicy: + description: The policy for matching the latest form version during an upsert operation. + enum: + - none + - if_etag_match + example: none + type: string + x-enum-varnames: + - NONE + - IF_ETAG_MATCH + LaunchDarklyAPIKey: + description: The definition of the `LaunchDarklyAPIKey` object. + properties: + api_token: + description: The `LaunchDarklyAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/LaunchDarklyAPIKeyType" + required: + - type + - api_token + type: object + LaunchDarklyAPIKeyType: + description: The definition of the `LaunchDarklyAPIKey` object. + enum: + - LaunchDarklyAPIKey + example: LaunchDarklyAPIKey + type: string + x-enum-varnames: + - LAUNCHDARKLYAPIKEY + LaunchDarklyAPIKeyUpdate: + description: The definition of the `LaunchDarklyAPIKey` object. + properties: + api_token: + description: The `LaunchDarklyAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/LaunchDarklyAPIKeyType" + required: + - type + type: object + LaunchDarklyCredentials: + description: The definition of the `LaunchDarklyCredentials` object. + oneOf: + - $ref: "#/components/schemas/LaunchDarklyAPIKey" + LaunchDarklyCredentialsUpdate: + description: The definition of the `LaunchDarklyCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/LaunchDarklyAPIKeyUpdate" + LaunchDarklyIntegration: + description: The definition of the `LaunchDarklyIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/LaunchDarklyCredentials" + type: + $ref: "#/components/schemas/LaunchDarklyIntegrationType" + required: + - type + - credentials + type: object + LaunchDarklyIntegrationType: + description: The definition of the `LaunchDarklyIntegrationType` object. + enum: + - LaunchDarkly + example: LaunchDarkly + type: string + x-enum-varnames: + - LAUNCHDARKLY + LaunchDarklyIntegrationUpdate: + description: The definition of the `LaunchDarklyIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/LaunchDarklyCredentialsUpdate" + type: + $ref: "#/components/schemas/LaunchDarklyIntegrationType" + required: + - type + type: object + Layer: + description: Encapsulates a layer resource, holding attributes like rotation details, plus relationships to the members covering that layer. + properties: + attributes: + $ref: "#/components/schemas/LayerAttributes" + id: + description: A unique identifier for this layer. + type: string + relationships: + $ref: "#/components/schemas/LayerRelationships" + type: + $ref: "#/components/schemas/LayerType" + required: + - type + type: object + LayerAttributes: + description: Describes key properties of a Layer, including rotation details, name, start/end times, and any restrictions. + properties: + effective_date: + description: When the layer becomes active (ISO 8601). + format: date-time + type: string + end_date: + description: When the layer ceases to be active (ISO 8601). + format: date-time + type: string + interval: + $ref: "#/components/schemas/LayerAttributesInterval" + name: + description: The name of this layer. + example: Weekend Layer + type: string + restrictions: + description: An optional list of time restrictions for when this layer is in effect. + items: + $ref: "#/components/schemas/TimeRestriction" + type: array + rotation_start: + description: The date/time when the rotation starts (ISO 8601). + format: date-time + type: string + time_zone: + description: The time zone for this layer. + example: "America/New_York" + type: string + type: object + LayerAttributesInterval: + description: Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour. + properties: + days: + description: The number of days in each rotation cycle. + example: 1 + format: int32 + maximum: 400 + type: integer + seconds: + description: Any additional seconds for the rotation cycle (up to 30 days). + example: 300 + format: int64 + maximum: 2592000 + type: integer + type: object + LayerRelationships: + description: Holds references to objects related to the Layer entity, such as its members. + properties: + members: + $ref: "#/components/schemas/LayerRelationshipsMembers" + type: object + LayerRelationshipsMembers: + description: Holds an array of references to the members of a Layer, each containing member IDs. + properties: + data: + description: The list of members who belong to this layer. + items: + $ref: "#/components/schemas/LayerRelationshipsMembersDataItems" + type: array + type: object + LayerRelationshipsMembersDataItems: + description: |- + Represents a single member object in a layer's `members` array, referencing + a unique Datadog user ID. + properties: + id: + description: The unique user ID of the layer member. + example: "00000000-0000-0000-0000-000000000002" + type: string + type: + $ref: "#/components/schemas/LayerRelationshipsMembersDataItemsType" + required: + - type + - id + type: object + LayerRelationshipsMembersDataItemsType: + default: members + description: |- + Members resource type. + enum: + - members + example: members + type: string + x-enum-varnames: + - MEMBERS + LayerType: + default: layers + description: |- + Layers resource type. + enum: + - layers + example: layers + type: string + x-enum-varnames: + - LAYERS + LeakedKey: + description: The definition of LeakedKey object. + properties: + attributes: + $ref: "#/components/schemas/LeakedKeyAttributes" + id: + description: The LeakedKey id. + example: "id" + type: string + type: + $ref: "#/components/schemas/LeakedKeyType" + required: + - attributes + - id + - type + type: object + LeakedKeyAttributes: + description: The definition of LeakedKeyAttributes object. + properties: + date: + description: The LeakedKeyAttributes date. + example: "2017-07-21T17:32:28Z" + format: date-time + type: string + leak_source: + description: The LeakedKeyAttributes leak_source. + type: string + required: + - date + type: object + LeakedKeyType: + default: leaked_keys + description: The definition of LeakedKeyType object. + enum: + - leaked_keys + example: leaked_keys + type: string + x-enum-varnames: + - LEAKED_KEYS + Library: + description: Vulnerability library. + properties: + additional_names: + description: Related library or package names (such as child packages or affected binary paths). + items: + description: A related library or package name affected by the vulnerability. + example: linux-tools-common + type: string + type: array + name: + description: Vulnerability library name. + example: linux-aws-5.15 + type: string + version: + description: Vulnerability library version. + example: 5.15.0 + type: string + required: + - name + type: object + LicensesListResponse: + description: The top-level response object returned by the licenses list endpoint, containing the array of supported SPDX licenses. + properties: + data: + $ref: "#/components/schemas/LicensesListResponseData" + required: + - data + type: object + LicensesListResponseData: + description: The data object in a licenses list response, containing the list of SPDX licenses. + properties: + attributes: + $ref: "#/components/schemas/LicensesListResponseDataAttributes" + id: + description: The unique identifier for this licenses list response. + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + type: + $ref: "#/components/schemas/LicensesListResponseDataType" + required: + - id + - type + - attributes + type: object + LicensesListResponseDataAttributes: + description: The attributes of the licenses list response, containing the array of SPDX licenses. + properties: + licenses: + $ref: "#/components/schemas/LicensesListResponseDataAttributesLicenses" + required: + - licenses + type: object + LicensesListResponseDataAttributesLicenses: + description: The list of SPDX licenses returned by the API. + items: + $ref: "#/components/schemas/LicensesListResponseDataAttributesLicensesItems" + type: array + LicensesListResponseDataAttributesLicensesItems: + description: An SPDX license entry returned by the licenses list endpoint. + properties: + display_name: + description: The human-readable name of the license. + example: MIT License + type: string + identifier: + description: The SPDX identifier of the license. + example: MIT + type: string + short_name: + description: The short name of the license, typically matching the SPDX identifier. + example: MIT + type: string + required: + - display_name + - identifier + - short_name + type: object + LicensesListResponseDataType: + default: licenserequest + description: The type identifier for license list responses. + enum: + - licenserequest + example: licenserequest + type: string + x-enum-varnames: + - LICENSEREQUEST + LinearIssuesDataType: + default: linear_issues + description: Linear issues resource type. + enum: + - linear_issues + example: linear_issues + type: string + x-enum-varnames: + - LINEAR_ISSUES + Links: + description: The JSON:API links related to pagination. + properties: + first: + description: First page link. + example: "https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=1&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + type: string + last: + description: Last page link. + example: "https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=15&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + type: string + next: + description: Next page link. + example: "https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=16&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + type: string + previous: + description: Previous page link. + example: "https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=14&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + type: string + self: + description: Request link. + example: https://api.datadoghq.com/api/v2/security/vulnerabilities?filter%5Btool%5D=Infra + type: string + required: + - self + - first + - last + type: object + ListAPIsResponse: + description: Response for `ListAPIs`. + properties: + data: + description: List of API items. + items: + $ref: "#/components/schemas/ListAPIsResponseData" + type: array + meta: + $ref: "#/components/schemas/ListAPIsResponseMeta" + type: object + ListAPIsResponseData: + description: Data envelope for `ListAPIsResponse`. + properties: + attributes: + $ref: "#/components/schemas/ListAPIsResponseDataAttributes" + id: + $ref: "#/components/schemas/ApiID" + type: object + ListAPIsResponseDataAttributes: + description: Attributes for `ListAPIsResponseData`. + properties: + name: + description: API name. + example: "Payments API" + type: string + type: object + ListAPIsResponseMeta: + description: Metadata for `ListAPIsResponse`. + properties: + pagination: + $ref: "#/components/schemas/ListAPIsResponseMetaPagination" + type: object + ListAPIsResponseMetaPagination: + description: Pagination metadata information for `ListAPIsResponse`. + properties: + limit: + description: Number of items in the current page. + example: 20 + format: int64 + type: integer + offset: + description: Offset for pagination. + example: 0 + format: int64 + type: integer + total_count: + description: Total number of items. + example: 35 + format: int64 + type: integer + type: object + ListAllocationsResponse: + description: Response containing a list of targeting rules (allocations). + properties: + data: + description: List of targeting rules (allocations). + items: + $ref: "#/components/schemas/AllocationDataResponse" + description: Allocation item. + type: array + required: + - data + type: object + ListAppKeyRegistrationsResponse: + description: A paginated list of app key registrations. + properties: + data: + description: An array of app key registrations. + items: + $ref: "#/components/schemas/AppKeyRegistrationData" + type: array + meta: + $ref: "#/components/schemas/ListAppKeyRegistrationsResponseMeta" + type: object + ListAppKeyRegistrationsResponseMeta: + description: The definition of `ListAppKeyRegistrationsResponseMeta` object. + properties: + total: + description: The total number of app key registrations. + example: 1 + format: int64 + type: integer + total_filtered: + description: The total number of app key registrations that match the specified filters. + example: 1 + format: int64 + type: integer + type: object + ListAppVersionsResponse: + description: A paginated list of versions for an app. + properties: + data: + description: The list of app versions. + items: + $ref: "#/components/schemas/AppVersion" + type: array + meta: + $ref: "#/components/schemas/ListAppsResponseMeta" + type: object + ListApplicationKeysResponse: + description: Response for a list of application keys. + properties: + data: + description: Array of application keys. + items: + $ref: "#/components/schemas/PartialApplicationKey" + type: array + included: + description: Array of objects related to the application key. + items: + $ref: "#/components/schemas/ApplicationKeyResponseIncludedItem" + type: array + meta: + $ref: "#/components/schemas/ApplicationKeyResponseMeta" + type: object + ListAppsResponse: + description: A paginated list of apps matching the specified filters and sorting. + properties: + data: + description: An array of app definitions. + items: + $ref: "#/components/schemas/ListAppsResponseDataItems" + type: array + included: + description: Data on the version of the app that was published. + items: + $ref: "#/components/schemas/Deployment" + type: array + meta: + $ref: "#/components/schemas/ListAppsResponseMeta" + type: object + ListAppsResponseDataItems: + description: An app definition object. This contains only basic information about the app such as ID, name, and tags. + properties: + attributes: + $ref: "#/components/schemas/ListAppsResponseDataItemsAttributes" + id: + description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + meta: + $ref: "#/components/schemas/AppMeta" + relationships: + $ref: "#/components/schemas/ListAppsResponseDataItemsRelationships" + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + - attributes + type: object + ListAppsResponseDataItemsAttributes: + description: Basic information about the app such as name, description, and tags. + properties: + description: + description: A human-readable description for the app. + type: string + favorite: + description: Whether the app is marked as a favorite by the current user. + type: boolean + name: + description: The name of the app. + type: string + selfService: + description: Whether the app is enabled for use in the Datadog self-service hub. + type: boolean + tags: + description: A list of tags for the app, which can be used to filter apps. + example: + - "service:webshop-backend" + - "team:webshop" + items: + description: An individual tag for the app. + type: string + type: array + type: object + ListAppsResponseDataItemsRelationships: + description: The app's publication information. + properties: + deployment: + $ref: "#/components/schemas/DeploymentRelationship" + type: object + ListAppsResponseMeta: + description: Pagination metadata. + properties: + page: + $ref: "#/components/schemas/ListAppsResponseMetaPage" + type: object + ListAppsResponseMetaPage: + description: Information on the total number of apps, to be used for pagination. + properties: + totalCount: + description: The total number of apps under the Datadog organization, disregarding any filters applied. + format: int64 + type: integer + totalFilteredCount: + description: The total number of apps that match the specified filters. + format: int64 + type: integer + type: object + ListAssetsSBOMsResponse: + description: The expected response schema when listing assets SBOMs. + properties: + data: + description: List of assets SBOMs. + items: + $ref: "#/components/schemas/SBOM" + type: array + links: + $ref: "#/components/schemas/Links" + meta: + $ref: "#/components/schemas/Metadata" + required: + - data + type: object + ListBlueprintsResponse: + description: The response for listing available blueprints. + properties: + data: + description: An array of blueprint metadata. + items: + $ref: "#/components/schemas/BlueprintMetadataData" + type: array + type: object + ListCampaignsResponse: + description: Response containing a list of campaigns. + properties: + data: + $ref: "#/components/schemas/ListCampaignsResponseData" + meta: + $ref: "#/components/schemas/PaginatedResponseMeta" + required: + - data + - meta + type: object + ListCampaignsResponseData: + description: Array of campaigns. + items: + $ref: "#/components/schemas/CampaignResponseData" + type: array + ListConnectionsResponse: + description: Response containing the list of all data source connections configured for an entity. + example: + data: + attributes: + connections: + - created_at: "0001-01-01T00:00:00Z" + created_by: 00000000-0000-0000-0000-000000000000 + fields: + - description: Customer subscription tier + display_name: Customer Tier + groups: + - Business + - Subscription + id: customer_tier + source_name: subscription_tier + type: string + - description: Channel through which user signed up + display_name: Signup Source + groups: + - Marketing + - Attribution + id: signup_source + source_name: acquisition_channel + type: string + id: user-profiles-connection + join: + attribute: user_email + type: email + type: ref_table + updated_at: "0001-01-01T00:00:00Z" + updated_by: 00000000-0000-0000-0000-000000000000 + id: list_connections_response + type: list_connections_response + properties: + data: + $ref: "#/components/schemas/ListConnectionsResponseData" + type: object + ListConnectionsResponseData: + description: The data object containing the resource type and attributes for the list connections response. + properties: + attributes: + $ref: "#/components/schemas/ListConnectionsResponseDataAttributes" + id: + description: Unique identifier for the list connections response resource. + type: string + type: + $ref: "#/components/schemas/ListConnectionsResponseDataType" + required: + - type + type: object + ListConnectionsResponseDataAttributes: + description: Attributes of the list connections response, containing the collection of data source connections. + properties: + connections: + description: The list of data source connections configured for the entity. + items: + $ref: "#/components/schemas/ListConnectionsResponseDataAttributesConnectionsItems" + type: array + type: object + ListConnectionsResponseDataAttributesConnectionsItems: + description: Details of a single data source connection, including its fields, join configuration, and audit metadata. + properties: + created_at: + description: Timestamp indicating when the connection was created. + format: date-time + type: string + created_by: + description: Identifier of the user who created the connection. + type: string + fields: + description: List of custom attribute fields imported from the data source. + items: + $ref: "#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems" + type: array + id: + description: Unique identifier of the connection. + type: string + join: + $ref: "#/components/schemas/ListConnectionsResponseDataAttributesConnectionsItemsJoin" + metadata: + additionalProperties: + type: string + description: Additional key-value metadata associated with the connection. + type: object + type: + description: The type of data source connection (for example, ref_table). + type: string + updated_at: + description: Timestamp indicating when the connection was last updated. + format: date-time + type: string + updated_by: + description: Identifier of the user who last updated the connection. + type: string + type: object + ListConnectionsResponseDataAttributesConnectionsItemsJoin: + description: The join configuration describing how the data source is linked to the entity. + properties: + attribute: + description: The entity attribute used as the join key to link records from the data source. + type: string + type: + description: The type of join key used (for example, email or user_id). + type: string + type: object + ListConnectionsResponseDataType: + default: list_connections_response + description: List connections response resource type. + enum: + - list_connections_response + example: list_connections_response + type: string + x-enum-varnames: + - LIST_CONNECTIONS_RESPONSE + ListDashboardsUsageResponse: + description: Paginated list of dashboard usage records. + properties: + data: + description: Dashboard usage records, one per dashboard in the caller's organization. + items: + $ref: "#/components/schemas/DashboardUsage" + type: array + links: + $ref: "#/components/schemas/ListDashboardsUsageResponseLinks" + meta: + $ref: "#/components/schemas/ListDashboardsUsageResponseMeta" + required: + - data + - meta + type: object + ListDashboardsUsageResponseLinks: + description: Pagination links for a list of dashboard usage records. + properties: + first: + description: Link to the first page. + example: "https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=0&page[limit]=250" + type: string + last: + description: Link to the last page, or `null` if the total is unknown. + nullable: true + type: string + next: + description: Link to the next page. Absent when there is no next page. + nullable: true + type: string + prev: + description: Link to the previous page. Absent when there is no previous page. + nullable: true + type: string + self: + description: Link to the current page. + example: "https://api.datadoghq.com/api/v2/dashboards/usage" + type: string + type: object + ListDashboardsUsageResponseMeta: + description: Pagination metadata for a list of dashboard usage records. + properties: + page: + $ref: "#/components/schemas/PaginationMetaPage" + type: object + ListDeploymentRuleResponseData: + description: Data for a list of deployment rules. + properties: + attributes: + $ref: "#/components/schemas/ListDeploymentRulesResponseDataAttributes" + id: + description: Unique identifier of the deployment rule. + example: "1111-2222-3333-4444-555566667777" + type: string + type: + $ref: "#/components/schemas/ListDeploymentRulesDataType" + required: + - type + - attributes + - id + type: object + ListDeploymentRulesDataType: + description: List deployment rule resource type. + enum: + - list_deployment_rules + example: list_deployment_rules + type: string + x-enum-varnames: + - LIST_DEPLOYMENT_RULES + ListDeploymentRulesResponseDataAttributes: + description: Attributes of the response for listing deployment rules. + properties: + rules: + description: The list of deployment rules. + items: + $ref: "#/components/schemas/DeploymentRuleResponseDataAttributes" + type: array + type: object + ListDevicesResponse: + description: List devices response. + properties: + data: + description: The list devices response data. + items: + $ref: "#/components/schemas/DevicesListData" + type: array + meta: + $ref: "#/components/schemas/ListDevicesResponseMetadata" + type: object + ListDevicesResponseMetadata: + description: Object describing meta attributes of response. + properties: + page: + $ref: "#/components/schemas/ListDevicesResponseMetadataPage" + type: object + ListDevicesResponseMetadataPage: + description: Pagination object. + properties: + total_filtered_count: + description: Total count of devices matched by the filter. + example: 1 + format: int64 + type: integer + type: object + ListDowntimesResponse: + description: Response for retrieving all downtimes. + properties: + data: + description: An array of downtimes. + items: + $ref: "#/components/schemas/DowntimeResponseData" + type: array + included: + description: Array of objects related to the downtimes. + items: + $ref: "#/components/schemas/DowntimeResponseIncludedItem" + type: array + meta: + $ref: "#/components/schemas/DowntimeMeta" + type: object + ListEntityCatalogResponse: + description: List entity response. + properties: + data: + $ref: "#/components/schemas/EntityResponseData" + included: + $ref: "#/components/schemas/ListEntityCatalogResponseIncluded" + links: + $ref: "#/components/schemas/ListEntityCatalogResponseLinks" + meta: + $ref: "#/components/schemas/EntityResponseMeta" + type: object + ListEntityCatalogResponseIncluded: + description: List entity response included. + items: + $ref: "#/components/schemas/ListEntityCatalogResponseIncludedItem" + type: array + ListEntityCatalogResponseIncludedItem: + description: List entity response included item. + oneOf: + - $ref: "#/components/schemas/EntityResponseIncludedSchema" + - $ref: "#/components/schemas/EntityResponseIncludedRawSchema" + - $ref: "#/components/schemas/EntityResponseIncludedRelatedEntity" + - $ref: "#/components/schemas/EntityResponseIncludedOncall" + - $ref: "#/components/schemas/EntityResponseIncludedIncident" + ListEntityCatalogResponseLinks: + description: List entity response links. + properties: + next: + description: Next link. + type: string + previous: + description: Previous link. + type: string + self: + description: Current link. + type: string + type: object + ListEnvironmentsResponse: + description: Response containing a list of environments. + properties: + data: + description: List of environments. + items: + $ref: "#/components/schemas/Environment" + type: array + meta: + $ref: "#/components/schemas/EnvironmentsPaginationMeta" + required: + - data + type: object + ListFeatureFlagsResponse: + description: Response containing a list of feature flags. + properties: + data: + description: List of feature flags. + items: + $ref: "#/components/schemas/FeatureFlagListItem" + type: array + meta: + $ref: "#/components/schemas/FeatureFlagsPaginationMeta" + required: + - data + type: object + ListFindingsData: + description: Array of findings. + items: + $ref: "#/components/schemas/Finding" + type: array + ListFindingsMeta: + additionalProperties: false + description: Metadata for pagination. + properties: + page: + $ref: "#/components/schemas/ListFindingsPage" + snapshot_timestamp: + description: The point in time corresponding to the listed findings. + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + type: object + ListFindingsPage: + additionalProperties: false + description: Pagination and findings count information. + properties: + cursor: + description: The cursor used to paginate requests. + example: "eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=" + type: string + total_filtered_count: + description: The total count of findings after the filter has been applied. + example: 213 + format: int64 + type: integer + type: object + ListFindingsResponse: + description: The expected response schema when listing findings. + properties: + data: + $ref: "#/components/schemas/ListFindingsData" + example: + - attributes: + evaluation: fail + resource: "arn:aws:s3:::my-bucket" + resource_type: aws_s3_bucket + status: high + id: "abc-123-xyz" + type: finding + meta: + $ref: "#/components/schemas/ListFindingsMeta" + required: + - data + - meta + type: object + ListHistoricalJobsResponse: + description: List of historical jobs. + properties: + data: + description: Array containing the list of historical jobs. + items: + $ref: "#/components/schemas/HistoricalJobResponseData" + type: array + meta: + $ref: "#/components/schemas/HistoricalJobListMeta" + type: object + ListIntegrationsResponse: + description: Response containing information about multiple integrations. + properties: + data: + description: Array of integration objects. + items: + $ref: "#/components/schemas/Integration" + type: array + required: + - data + type: object + ListInterfaceTagsResponse: + description: Response for listing interface tags. + properties: + data: + $ref: "#/components/schemas/ListInterfaceTagsResponseData" + type: object + ListInterfaceTagsResponseData: + description: Response data for listing interface tags. + properties: + attributes: + $ref: "#/components/schemas/ListTagsResponseDataAttributes" + id: + description: The interface ID + example: example:1.2.3.4:1 + type: string + type: + description: The type of the resource. The value should always be tags. + type: string + type: object + ListInvestigationsResponse: + description: Response for listing investigations. + properties: + data: + description: List of investigations. + items: + $ref: "#/components/schemas/ListInvestigationsResponseData" + type: array + links: + $ref: "#/components/schemas/ListInvestigationsResponseLinks" + meta: + $ref: "#/components/schemas/ListInvestigationsResponseMeta" + required: + - data + - meta + - links + type: object + ListInvestigationsResponseData: + description: Data for an investigation list item. + properties: + attributes: + $ref: "#/components/schemas/ListInvestigationsResponseDataAttributes" + id: + description: The unique identifier of the investigation. + example: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + type: string + type: + $ref: "#/components/schemas/InvestigationType" + required: + - id + - type + - attributes + type: object + ListInvestigationsResponseDataAttributes: + description: Attributes of an investigation list item. + properties: + status: + description: The current status of the investigation. + example: "conclusive" + type: string + title: + description: The title of the investigation. + example: "Monitor alert investigation for web-server-01" + type: string + required: + - status + - title + type: object + ListInvestigationsResponseLinks: + description: Pagination links for the list investigations response. + properties: + first: + description: Link to the first page. + example: "https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10" + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + example: "https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=10&page[limit]=10" + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + example: "https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10" + type: string + required: + - first + - next + - self + type: object + ListInvestigationsResponseMeta: + description: Metadata for the list investigations response. + properties: + page: + $ref: "#/components/schemas/ListInvestigationsResponseMetaPage" + required: + - page + type: object + ListInvestigationsResponseMetaPage: + description: Pagination metadata. + properties: + limit: + description: Maximum number of results per page. + example: 10 + format: int64 + type: integer + offset: + description: Offset of the current page. + example: 0 + format: int64 + type: integer + total: + description: Total number of investigations. + example: 50 + format: int64 + type: integer + required: + - total + - limit + - offset + type: object + ListKindCatalogResponse: + description: List kind response. + properties: + data: + $ref: "#/components/schemas/KindResponseData" + meta: + $ref: "#/components/schemas/KindResponseMeta" + type: object + ListNotificationChannelsResponse: + description: Response type for listing notification channels for a user + properties: + data: + description: Array of notification channel data objects. + items: + $ref: "#/components/schemas/NotificationChannelData" + type: array + type: object + ListOnCallNotificationRulesResponse: + description: Response type for listing notification rules for a user + properties: + data: + description: Array of notification rule data objects. + items: + $ref: "#/components/schemas/OnCallNotificationRuleData" + type: array + included: + items: + $ref: "#/components/schemas/OnCallNotificationRulesIncluded" + type: array + type: object + ListPersonalAccessTokensResponse: + description: Response for a list of access tokens. Includes both personal and service access tokens. + properties: + data: + description: Array of access tokens. Includes both personal and service access tokens. + items: + $ref: "#/components/schemas/AccessTokenListItem" + type: array + meta: + $ref: "#/components/schemas/PersonalAccessTokenResponseMeta" + type: object + ListPipelinesResponse: + description: Represents the response payload containing a list of pipelines and associated metadata. + properties: + data: + description: The `schema` `data`. + items: + $ref: "#/components/schemas/ObservabilityPipelineData" + type: array + meta: + $ref: "#/components/schemas/ListPipelinesResponseMeta" + required: + - data + type: object + ListPipelinesResponseMeta: + description: Metadata about the response. + properties: + totalCount: + description: The total number of pipelines. + example: 42 + format: int64 + type: integer + type: object + ListPowerpacksResponse: + description: Response object which includes all powerpack configurations. + properties: + data: + description: List of powerpack definitions. + items: + $ref: "#/components/schemas/PowerpackData" + type: array + included: + description: Array of objects related to the users. + items: + $ref: "#/components/schemas/User" + type: array + links: + $ref: "#/components/schemas/PowerpackResponseLinks" + meta: + $ref: "#/components/schemas/PowerpacksResponseMeta" + type: object + ListRelationCatalogResponse: + description: List entity relation response. + properties: + data: + $ref: "#/components/schemas/RelationResponseData" + included: + $ref: "#/components/schemas/ListRelationCatalogResponseIncluded" + links: + $ref: "#/components/schemas/ListRelationCatalogResponseLinks" + meta: + $ref: "#/components/schemas/RelationResponseMeta" + type: object + ListRelationCatalogResponseIncluded: + description: List relation response included entities. + items: + $ref: "#/components/schemas/EntityData" + type: array + ListRelationCatalogResponseLinks: + description: List relation response links. + properties: + next: + description: Next link. + example: "/api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=2" + type: string + previous: + description: Previous link. + type: string + self: + description: Current link. + example: "/api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=0" + type: string + type: object + ListRowsResponse: + description: Paginated list of reference table rows. + example: + data: + - attributes: + values: + category: tor + intention: suspicious + ip_address: 102.130.113.9 + id: 102.130.113.9 + type: row + links: + first: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Blimit%5D=100" + self: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100" + meta: + page: + next_continuation_token: eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ== + properties: + data: + description: The rows. + items: + $ref: "#/components/schemas/TableRowResourceData" + type: array + links: + $ref: "#/components/schemas/ListRowsResponseLinks" + meta: + $ref: "#/components/schemas/ListRowsResponseMeta" + required: + - data + - links + type: object + ListRowsResponseLinks: + description: Pagination links for the list rows response. + properties: + first: + description: Link to the first page of results. + example: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Blimit%5D=100" + type: string + next: + description: Link to the next page of results. Only present when more rows are available. + example: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100" + type: string + self: + description: Link to the current page of results. + example: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100" + type: string + required: + - self + - first + type: object + ListRowsResponseMeta: + description: Contains pagination details, including the continuation token for fetching additional rows. + properties: + page: + $ref: "#/components/schemas/ListRowsResponseMetaPage" + type: object + ListRowsResponseMetaPage: + description: Contains the continuation token for navigating to the next page of rows. + properties: + next_continuation_token: + description: Opaque token to pass as the `page[continuation_token]` query parameter to fetch the next page of results. Only present when more rows are available. + example: eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ== + type: string + type: object + ListRulesResponse: + description: Scorecard rules response. + properties: + data: + $ref: "#/components/schemas/ListRulesResponseData" + links: + $ref: "#/components/schemas/ListRulesResponseLinks" + type: object + ListRulesResponseData: + description: Array of rule details. + items: + $ref: "#/components/schemas/ListRulesResponseDataItem" + type: array + ListRulesResponseDataItem: + description: Rule details. + properties: + attributes: + $ref: "#/components/schemas/RuleAttributes" + id: + $ref: "#/components/schemas/RuleId" + relationships: + $ref: "#/components/schemas/RelationshipToRule" + type: + $ref: "#/components/schemas/RuleType" + type: object + ListRulesResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of rules. + example: "/api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2" + type: string + type: object + ListScorecardScoresMeta: + description: Pagination metadata for scores. + properties: + count: + description: The number of results returned in this page. + format: int64 + type: integer + limit: + description: The page limit. + format: int64 + type: integer + offset: + description: The page offset. + format: int64 + type: integer + total: + description: The total number of results. + format: int64 + type: integer + type: object + ListScorecardScoresResponse: + description: A list of scorecard scores for a given aggregation type. + properties: + data: + description: Array of score objects. + items: + $ref: "#/components/schemas/ScorecardScoreData" + type: array + links: + $ref: "#/components/schemas/ListRulesResponseLinks" + meta: + $ref: "#/components/schemas/ListScorecardScoresMeta" + type: object + ListScorecardsResponse: + description: Response containing a list of scorecards. + properties: + data: + $ref: "#/components/schemas/ListScorecardsResponseData" + required: + - data + type: object + ListScorecardsResponseData: + description: Array of scorecards. + items: + $ref: "#/components/schemas/ScorecardListResponseData" + type: array + ListSecurityFindingsResponse: + description: The expected response schema when listing security findings. + properties: + data: + description: Array of security findings matching the search query. + items: + $ref: "#/components/schemas/SecurityFindingsData" + type: array + links: + $ref: "#/components/schemas/SecurityFindingsLinks" + meta: + $ref: "#/components/schemas/SecurityFindingsMeta" + type: object + ListServiceAccessTokensResponse: + description: Response for a list of access tokens. + properties: + data: + description: Array of access tokens. + items: + $ref: "#/components/schemas/ServiceAccessToken" + type: array + meta: + $ref: "#/components/schemas/ServiceAccessTokenResponseMeta" + type: object + ListSharedDashboardsResponse: + description: Response containing shared dashboards for a dashboard. + properties: + data: + description: Shared dashboards for the dashboard. + items: + $ref: "#/components/schemas/SharedDashboardResponse" + type: array + included: + description: Users and dashboards related to the shared dashboards. + items: + $ref: "#/components/schemas/SharedDashboardIncluded" + type: array + required: + - data + - included + type: object + ListSourcemapsResponse: + description: Response containing a paginated list of source maps. + properties: + data: + $ref: "#/components/schemas/SourcemapsData" + meta: + $ref: "#/components/schemas/SourcemapsListMeta" + required: + - data + type: object + ListTagsResponse: + description: List tags response. + properties: + data: + $ref: "#/components/schemas/ListTagsResponseData" + type: object + ListTagsResponseData: + description: The list tags response data. + properties: + attributes: + $ref: "#/components/schemas/ListTagsResponseDataAttributes" + id: + description: The device ID + example: example:1.2.3.4 + type: string + type: + description: The type of the resource. The value should always be tags. + type: string + type: object + ListTagsResponseDataAttributes: + description: The definition of ListTagsResponseDataAttributes object. + properties: + tags: + description: The list of tags + example: ["tag:test", "tag:testbis"] + items: + description: A tag string in `key:value` format. + type: string + type: array + type: object + ListTeamsInclude: + description: Included related resources optionally requested. + enum: + - team_links + - user_team_permissions + type: string + x-enum-varnames: + - TEAM_LINKS + - USER_TEAM_PERMISSIONS + ListTeamsSort: + description: Specifies the order of the returned teams + enum: + - name + - -name + - user_count + - -user_count + type: string + x-enum-varnames: + - NAME + - _NAME + - USER_COUNT + - _USER_COUNT + ListVulnerabilitiesResponse: + description: The expected response schema when listing vulnerabilities. + properties: + data: + description: List of vulnerabilities. + items: + $ref: "#/components/schemas/Vulnerability" + type: array + links: + $ref: "#/components/schemas/Links" + meta: + $ref: "#/components/schemas/Metadata" + required: + - data + type: object + ListVulnerableAssetsResponse: + description: The expected response schema when listing vulnerable assets. + properties: + data: + description: List of vulnerable assets. + items: + $ref: "#/components/schemas/Asset" + type: array + links: + $ref: "#/components/schemas/Links" + meta: + $ref: "#/components/schemas/Metadata" + required: + - data + type: object + ListWorkflowsResponse: + description: The response object for a listing workflows request. + properties: + data: + description: A list of workflows. + items: + $ref: "#/components/schemas/WorkflowListItem" + type: array + meta: + $ref: "#/components/schemas/ListWorkflowsResponseMeta" + type: object + ListWorkflowsResponseMeta: + description: Metadata for a List Workflows response. + properties: + page: + $ref: "#/components/schemas/ListWorkflowsResponseMetaPage" + type: object + ListWorkflowsResponseMetaPage: + description: Pagination metadata for a List Workflows response. + properties: + totalCount: + description: The total number of workflows in the organization. + format: int64 + type: integer + totalFilteredCount: + description: The total number of workflows matching the applied filters. + format: int64 + type: integer + type: object + Log: + description: Object description of a log after being processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/LogAttributes" + id: + description: Unique ID of the Log. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/LogType" + type: object + LogAttributes: + description: JSON object containing all log attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from your log. + example: {"customAttribute": 123, "duration": 2345} + type: object + host: + description: |- + Name of the machine from where the logs are being sent. + example: "i-0123" + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: "Host connected to remote" + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same + value when you use both products. + example: "agent" + type: string + status: + description: |- + Status of the message associated with your log. + example: "INFO" + type: string + tags: + description: Array of tags associated with your log. + example: ["team:A"] + items: + description: Tag associated with your log. + type: string + type: array + timestamp: + description: Timestamp of your log. + example: "2019-01-02T09:42:36.320Z" + format: date-time + type: string + type: object + LogType: + default: log + description: Type of the event. + enum: + - log + example: "log" + type: string + x-enum-varnames: + - LOG + LogsAggregateBucket: + description: A bucket values + properties: + by: + additionalProperties: + description: The values for each group by + description: The key, value pairs for each group by + example: {"@state": "success", "@version": "abc"} + type: object + computes: + additionalProperties: + $ref: "#/components/schemas/LogsAggregateBucketValue" + description: A map of the metric name -> value for regular compute or list of values for a timeseries + type: object + type: object + LogsAggregateBucketValue: + description: A bucket value, can be either a timeseries or a single value + oneOf: + - $ref: "#/components/schemas/LogsAggregateBucketValueSingleString" + - $ref: "#/components/schemas/LogsAggregateBucketValueSingleNumber" + - $ref: "#/components/schemas/LogsAggregateBucketValueTimeseries" + LogsAggregateBucketValueSingleNumber: + description: A single number value + format: double + type: number + LogsAggregateBucketValueSingleString: + description: A single string value + type: string + LogsAggregateBucketValueTimeseries: + description: A timeseries array + items: + $ref: "#/components/schemas/LogsAggregateBucketValueTimeseriesPoint" + type: array + x-generate-alias-as-model: true + LogsAggregateBucketValueTimeseriesPoint: + description: A timeseries point + properties: + time: + description: The time value for this point + example: "2020-06-08T11:55:00Z" + type: string + value: + description: The value for this point + example: 19 + format: double + type: number + type: object + LogsAggregateRequest: + description: The object sent with the request to retrieve a list of logs from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: "#/components/schemas/LogsCompute" + type: array + filter: + $ref: "#/components/schemas/LogsQueryFilter" + group_by: + description: The rules for the group by + items: + $ref: "#/components/schemas/LogsGroupBy" + type: array + options: + $ref: "#/components/schemas/LogsQueryOptions" + page: + $ref: "#/components/schemas/LogsAggregateRequestPage" + type: object + LogsAggregateRequestPage: + description: Paging settings + properties: + cursor: + description: |- + The returned paging point to use to get the next results. Note: at most 1000 results can be paged. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + LogsAggregateResponse: + description: The response object for the logs aggregate API endpoint + properties: + data: + $ref: "#/components/schemas/LogsAggregateResponseData" + meta: + $ref: "#/components/schemas/LogsResponseMetadata" + type: object + LogsAggregateResponseData: + description: The query results + properties: + buckets: + description: The list of matching buckets, one item per bucket + items: + $ref: "#/components/schemas/LogsAggregateBucket" + type: array + type: object + LogsAggregateResponseStatus: + description: The status of the response + enum: ["done", "timeout"] + example: "done" + type: string + x-enum-varnames: ["DONE", "TIMEOUT"] + LogsAggregateSort: + description: A sort rule + example: {"aggregation": "count", "order": "asc"} + properties: + aggregation: + $ref: "#/components/schemas/LogsAggregationFunction" + metric: + description: The metric to sort by (only used for `type=measure`) + example: "@duration" + type: string + order: + $ref: "#/components/schemas/LogsSortOrder" + type: + $ref: "#/components/schemas/LogsAggregateSortType" + type: object + LogsAggregateSortType: + default: "alphabetical" + description: The type of sorting algorithm + enum: ["alphabetical", "measure"] + type: string + x-enum-varnames: ["ALPHABETICAL", "MEASURE"] + LogsAggregationFunction: + description: An aggregation function + enum: ["count", "cardinality", "pc75", "pc90", "pc95", "pc98", "pc99", "sum", "min", "max", "avg", "median"] + example: "pc90" + type: string + x-enum-varnames: ["COUNT", "CARDINALITY", "PERCENTILE_75", "PERCENTILE_90", "PERCENTILE_95", "PERCENTILE_98", "PERCENTILE_99", "SUM", "MIN", "MAX", "AVG", "MEDIAN"] + LogsArchive: + description: The logs archive. + properties: + data: + $ref: "#/components/schemas/LogsArchiveDefinition" + type: object + LogsArchiveAttributes: + description: The attributes associated with the archive. + properties: + compression_method: + $ref: "#/components/schemas/LogsArchiveAttributesCompressionMethod" + destination: + $ref: "#/components/schemas/LogsArchiveDestination" + include_tags: + default: false + description: |- + To store the tags in the archive, set the value "true". + If it is set to "false", the tags will be deleted when the logs are sent to the archive. + example: false + type: boolean + lookup_attributes: + description: An array of attributes to use as lookup keys for the archive. + example: ["trace_id", "user_id"] + items: + description: A lookup attribute name. + type: string + type: array + name: + description: The archive name. + example: Nginx Archive + type: string + partitioning_attributes: + description: An array of attributes to use as partition keys for the archive. The attribute used most frequently for querying should be first. + example: ["service", "status"] + items: + description: A partition attribute name. + type: string + type: array + query: + description: The archive query/filter. Logs matching this query are included in the archive. + example: source:nginx + type: string + rehydration_max_scan_size_in_gb: + description: Maximum scan size for rehydration from this archive. + example: 100 + format: int64 + nullable: true + type: integer + rehydration_tags: + description: An array of tags to add to rehydrated logs from an archive. + example: ["team:intake", "team:app"] + items: + description: A given tag in the `:` format. + type: string + type: array + state: + $ref: "#/components/schemas/LogsArchiveState" + required: + - name + - query + - destination + type: object + LogsArchiveAttributesCompressionMethod: + default: GZIP + description: The type of compression for the archive. + enum: + - GZIP + - ZSTD + example: GZIP + type: string + x-enum-varnames: + - GZIP + - ZSTD + LogsArchiveCreateRequest: + description: The logs archive. + properties: + data: + $ref: "#/components/schemas/LogsArchiveCreateRequestDefinition" + type: object + LogsArchiveCreateRequestAttributes: + description: The attributes associated with the archive. + properties: + compression_method: + $ref: "#/components/schemas/LogsArchiveAttributesCompressionMethod" + destination: + $ref: "#/components/schemas/LogsArchiveCreateRequestDestination" + include_tags: + default: false + description: |- + To store the tags in the archive, set the value "true". + If it is set to "false", the tags will be deleted when the logs are sent to the archive. + example: false + type: boolean + lookup_attributes: + description: An array of attributes to use as lookup keys for the archive. + example: ["trace_id", "user_id"] + items: + description: A lookup attribute name. + type: string + type: array + name: + description: The archive name. + example: Nginx Archive + type: string + partitioning_attributes: + description: An array of attributes to use as partition keys for the archive. The attribute used most frequently for querying should be first. + example: ["service", "status"] + items: + description: A partition attribute name. + type: string + type: array + query: + description: The archive query/filter. Logs matching this query are included in the archive. + example: source:nginx + type: string + rehydration_max_scan_size_in_gb: + description: Maximum scan size for rehydration from this archive. + example: 100 + format: int64 + nullable: true + type: integer + rehydration_tags: + description: An array of tags to add to rehydrated logs from an archive. + example: ["team:intake", "team:app"] + items: + description: A given tag in the `:` format. + type: string + type: array + required: + - name + - query + - destination + type: object + LogsArchiveCreateRequestDefinition: + description: The definition of an archive. + properties: + attributes: + $ref: "#/components/schemas/LogsArchiveCreateRequestAttributes" + type: + default: archives + description: The type of the resource. The value should always be archives. + example: archives + type: string + required: + - type + type: object + LogsArchiveCreateRequestDestination: + description: An archive's destination. + oneOf: + - $ref: "#/components/schemas/LogsArchiveDestinationAzure" + - $ref: "#/components/schemas/LogsArchiveDestinationGCS" + - $ref: "#/components/schemas/LogsArchiveDestinationS3" + LogsArchiveDefinition: + description: The definition of an archive. + properties: + attributes: + $ref: "#/components/schemas/LogsArchiveAttributes" + id: + description: The archive ID. + example: a2zcMylnM4OCHpYusxIi3g + readOnly: true + type: string + type: + default: archives + description: The type of the resource. The value should always be archives. + example: archives + readOnly: true + type: string + required: + - type + type: object + LogsArchiveDestination: + description: An archive's destination. + nullable: true + oneOf: + - $ref: "#/components/schemas/LogsArchiveDestinationAzure" + - $ref: "#/components/schemas/LogsArchiveDestinationGCS" + - $ref: "#/components/schemas/LogsArchiveDestinationS3" + type: object + LogsArchiveDestinationAzure: + description: The Azure archive destination. + properties: + container: + description: The container where the archive will be stored. + example: container-name + type: string + integration: + $ref: "#/components/schemas/LogsArchiveIntegrationAzure" + path: + description: The archive path. + type: string + region: + description: The region where the archive will be stored. + type: string + storage_account: + description: The associated storage account. + example: account-name + type: string + type: + $ref: "#/components/schemas/LogsArchiveDestinationAzureType" + required: + - storage_account + - container + - integration + - type + type: object + LogsArchiveDestinationAzureType: + default: azure + description: Type of the Azure archive destination. + enum: + - azure + example: azure + type: string + x-enum-varnames: + - AZURE + LogsArchiveDestinationGCS: + description: The GCS archive destination. + properties: + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + integration: + $ref: "#/components/schemas/LogsArchiveIntegrationGCS" + path: + description: The archive path. + type: string + type: + $ref: "#/components/schemas/LogsArchiveDestinationGCSType" + required: + - bucket + - integration + - type + type: object + LogsArchiveDestinationGCSType: + default: gcs + description: Type of the GCS archive destination. + enum: + - gcs + example: gcs + type: string + x-enum-varnames: + - GCS + LogsArchiveDestinationS3: + description: The S3 archive destination. + properties: + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + encryption: + $ref: "#/components/schemas/LogsArchiveEncryptionS3" + integration: + $ref: "#/components/schemas/LogsArchiveIntegrationS3" + path: + description: The archive path. + type: string + storage_class: + $ref: "#/components/schemas/LogsArchiveStorageClassS3Type" + type: + $ref: "#/components/schemas/LogsArchiveDestinationS3Type" + required: + - bucket + - integration + - type + type: object + LogsArchiveDestinationS3Type: + default: s3 + description: Type of the S3 archive destination. + enum: + - s3 + example: s3 + type: string + x-enum-varnames: + - S3 + LogsArchiveEncryptionS3: + description: The S3 encryption settings. + properties: + key: + description: An Amazon Resource Name (ARN) used to identify an AWS KMS key. + example: arn:aws:kms:us-east-1:012345678901:key/DatadogIntegrationRoleKms + type: string + type: + $ref: "#/components/schemas/LogsArchiveEncryptionS3Type" + required: + - type + type: object + LogsArchiveEncryptionS3Type: + description: Type of S3 encryption for a destination. + enum: + - NO_OVERRIDE + - SSE_S3 + - SSE_KMS + example: SSE_S3 + type: string + x-enum-varnames: + - NO_OVERRIDE + - SSE_S3 + - SSE_KMS + LogsArchiveIntegrationAzure: + description: The Azure archive's integration destination. + properties: + client_id: + description: A client ID. + example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + type: string + tenant_id: + description: A tenant ID. + example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + type: string + required: + - tenant_id + - client_id + type: object + LogsArchiveIntegrationGCS: + description: The GCS archive's integration destination. + properties: + client_email: + description: A client email. + example: youremail@example.com + type: string + project_id: + description: A project ID. + example: project-id + type: string + required: + - client_email + type: object + LogsArchiveIntegrationS3: + description: >- + The S3 Archive's integration destination. You must provide one of the following: `access_key_id` alone, or both `account_id` and `role_name` together. + oneOf: + - $ref: "#/components/schemas/LogsArchiveIntegrationS3AccessKey" + - $ref: "#/components/schemas/LogsArchiveIntegrationS3Role" + LogsArchiveIntegrationS3AccessKey: + description: The S3 Archive's integration destination using an access key. + properties: + access_key_id: + description: The access key ID for the integration. + example: AKIAIOSFODNN7EXAMPLE + type: string + required: + - access_key_id + type: object + LogsArchiveIntegrationS3Role: + description: The S3 Archive's integration destination using an IAM role. + properties: + account_id: + description: The account ID for the integration. + example: "123456789012" + type: string + role_name: + description: The name of the role to assume for the integration. + example: role-name + type: string + required: + - account_id + - role_name + type: object + LogsArchiveOrder: + description: A ordered list of archive IDs. + properties: + data: + $ref: "#/components/schemas/LogsArchiveOrderDefinition" + type: object + LogsArchiveOrderAttributes: + description: The attributes associated with the archive order. + properties: + archive_ids: + description: |- + An ordered array of `` strings, the order of archive IDs in the array + define the overall archives order for Datadog. + example: ["a2zcMylnM4OCHpYusxIi1g", "a2zcMylnM4OCHpYusxIi2g", "a2zcMylnM4OCHpYusxIi3g"] + items: + description: A given archive ID. + type: string + type: array + required: + - archive_ids + type: object + LogsArchiveOrderDefinition: + description: The definition of an archive order. + properties: + attributes: + $ref: "#/components/schemas/LogsArchiveOrderAttributes" + type: + $ref: "#/components/schemas/LogsArchiveOrderDefinitionType" + required: + - type + - attributes + type: object + LogsArchiveOrderDefinitionType: + default: archive_order + description: Type of the archive order definition. + enum: + - archive_order + example: archive_order + type: string + x-enum-varnames: + - ARCHIVE_ORDER + LogsArchiveState: + description: The state of the archive. + enum: + - UNKNOWN + - WORKING + - FAILING + - WORKING_AUTH_LEGACY + example: WORKING + type: string + x-enum-varnames: + - UNKNOWN + - WORKING + - FAILING + - WORKING_AUTH_LEGACY + LogsArchiveStorageClassS3Type: + default: STANDARD + description: The storage class where the archive will be stored. + enum: + - STANDARD + - STANDARD_IA + - ONEZONE_IA + - INTELLIGENT_TIERING + - GLACIER_IR + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + - STANDARD_IA + - ONEZONE_IA + - INTELLIGENT_TIERING + - GLACIER_IR + LogsArchives: + description: The available archives. + properties: + data: + description: A list of archives. + items: + $ref: "#/components/schemas/LogsArchiveDefinition" + type: array + type: object + LogsCompute: + description: A compute rule to compute metrics or timeseries + properties: + aggregation: + $ref: "#/components/schemas/LogsAggregationFunction" + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points + example: "5m" + type: string + metric: + description: The metric to use + example: "@duration" + type: string + type: + $ref: "#/components/schemas/LogsComputeType" + required: + - aggregation + type: object + LogsComputeType: + default: "total" + description: The type of compute + enum: ["timeseries", "total"] + type: string + x-enum-varnames: ["TIMESERIES", "TOTAL"] + LogsGroupBy: + description: A group by rule + properties: + facet: + description: The name of the facet to use (required) + example: "host" + type: string + histogram: + $ref: "#/components/schemas/LogsGroupByHistogram" + limit: + default: 10 + description: |- + The maximum buckets to return for this group by. Note: at most 10000 buckets are allowed. + If grouping by multiple facets, the product of limits must not exceed 10000. + format: int64 + type: integer + missing: + $ref: "#/components/schemas/LogsGroupByMissing" + sort: + $ref: "#/components/schemas/LogsAggregateSort" + total: + $ref: "#/components/schemas/LogsGroupByTotal" + required: + - facet + type: object + LogsGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + Note: at most 100 buckets are allowed, the number of buckets is (max - min)/interval. + properties: + interval: + description: The bin size of the histogram buckets + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out) + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out) + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + LogsGroupByMissing: + description: The value to use for logs that don't have the facet used to group by + oneOf: + - $ref: "#/components/schemas/LogsGroupByMissingString" + - $ref: "#/components/schemas/LogsGroupByMissingNumber" + LogsGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + LogsGroupByMissingString: + description: The missing value to use if there is string valued facet. + type: string + LogsGroupByTotal: + default: false + description: |- + A resulting object to put the given computes in over all the matching records. + oneOf: + - $ref: "#/components/schemas/LogsGroupByTotalBoolean" + - $ref: "#/components/schemas/LogsGroupByTotalString" + - $ref: "#/components/schemas/LogsGroupByTotalNumber" + LogsGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total" + type: boolean + LogsGroupByTotalNumber: + description: A number to use as the key value for the total bucket + format: double + type: number + LogsGroupByTotalString: + description: A string to use as the key value for the total bucket + type: string + LogsListRequest: + description: The request for a logs list. + properties: + filter: + $ref: "#/components/schemas/LogsQueryFilter" + options: + $ref: "#/components/schemas/LogsQueryOptions" + page: + $ref: "#/components/schemas/LogsListRequestPage" + sort: + $ref: "#/components/schemas/LogsSort" + type: object + LogsListRequestPage: + description: Paging attributes for listing logs. + properties: + cursor: + description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: Maximum number of logs in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + LogsListResponse: + description: Response object with all logs matching the request and pagination information. + properties: + data: + description: Array of logs matching the request. + items: + $ref: "#/components/schemas/Log" + type: array + links: + $ref: "#/components/schemas/LogsListResponseLinks" + meta: + $ref: "#/components/schemas/LogsResponseMetadata" + type: object + LogsListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: "https://app.datadoghq.com/api/v2/logs/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + LogsMetricCompute: + description: The compute rule to compute the log-based metric. + properties: + aggregation_type: + $ref: "#/components/schemas/LogsMetricComputeAggregationType" + include_percentiles: + $ref: "#/components/schemas/LogsMetricComputeIncludePercentiles" + path: + description: The path to the value the log-based metric will aggregate on (only used if the aggregation type is a "distribution"). + example: "@duration" + type: string + required: + - aggregation_type + type: object + LogsMetricComputeAggregationType: + description: The type of aggregation to use. + enum: ["count", "distribution"] + example: "distribution" + type: string + x-enum-varnames: ["COUNT", "DISTRIBUTION"] + LogsMetricComputeIncludePercentiles: + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. + Only present when the `aggregation_type` is `distribution`. + example: true + type: boolean + LogsMetricCreateAttributes: + description: The object describing the Datadog log-based metric to create. + properties: + compute: + $ref: "#/components/schemas/LogsMetricCompute" + filter: + $ref: "#/components/schemas/LogsMetricFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/LogsMetricGroupBy" + type: array + required: + - compute + type: object + LogsMetricCreateData: + description: The new log-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/LogsMetricCreateAttributes" + id: + $ref: "#/components/schemas/LogsMetricID" + type: + $ref: "#/components/schemas/LogsMetricType" + required: + - id + - type + - attributes + type: object + LogsMetricCreateRequest: + description: The new log-based metric body. + properties: + data: + $ref: "#/components/schemas/LogsMetricCreateData" + required: + - data + type: object + LogsMetricFilter: + description: The log-based metric filter. Logs matching this filter will be aggregated in this metric. + properties: + query: + default: "*" + description: The search query - following the log search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + type: object + LogsMetricGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the log-based metric will be aggregated over. + example: "@http.status_code" + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. + example: "status_code" + type: string + required: + - path + type: object + LogsMetricID: + description: The name of the log-based metric. + example: "logs.page.load.count" + type: string + LogsMetricResponse: + description: The log-based metric object. + properties: + data: + $ref: "#/components/schemas/LogsMetricResponseData" + type: object + LogsMetricResponseAttributes: + description: The object describing a Datadog log-based metric. + properties: + compute: + $ref: "#/components/schemas/LogsMetricResponseCompute" + filter: + $ref: "#/components/schemas/LogsMetricResponseFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/LogsMetricResponseGroupBy" + type: array + type: object + LogsMetricResponseCompute: + description: The compute rule to compute the log-based metric. + properties: + aggregation_type: + $ref: "#/components/schemas/LogsMetricResponseComputeAggregationType" + include_percentiles: + $ref: "#/components/schemas/LogsMetricComputeIncludePercentiles" + path: + description: The path to the value the log-based metric will aggregate on (only used if the aggregation type is a "distribution"). + example: "@duration" + type: string + type: object + LogsMetricResponseComputeAggregationType: + description: The type of aggregation to use. + enum: ["count", "distribution"] + example: "distribution" + type: string + x-enum-varnames: ["COUNT", "DISTRIBUTION"] + LogsMetricResponseData: + description: The log-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/LogsMetricResponseAttributes" + id: + $ref: "#/components/schemas/LogsMetricID" + type: + $ref: "#/components/schemas/LogsMetricType" + type: object + LogsMetricResponseFilter: + description: The log-based metric filter. Logs matching this filter will be aggregated in this metric. + properties: + query: + description: The search query - following the log search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + type: object + LogsMetricResponseGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the log-based metric will be aggregated over. + example: "@http.status_code" + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. + example: "status_code" + type: string + type: object + LogsMetricType: + default: logs_metrics + description: The type of the resource. The value should always be logs_metrics. + enum: + - logs_metrics + example: logs_metrics + type: string + x-enum-varnames: ["LOGS_METRICS"] + LogsMetricUpdateAttributes: + description: The log-based metric properties that will be updated. + properties: + compute: + $ref: "#/components/schemas/LogsMetricUpdateCompute" + filter: + $ref: "#/components/schemas/LogsMetricFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/LogsMetricGroupBy" + type: array + type: object + LogsMetricUpdateCompute: + description: The compute rule to compute the log-based metric. + properties: + include_percentiles: + $ref: "#/components/schemas/LogsMetricComputeIncludePercentiles" + type: object + LogsMetricUpdateData: + description: The new log-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/LogsMetricUpdateAttributes" + type: + $ref: "#/components/schemas/LogsMetricType" + required: + - type + - attributes + type: object + LogsMetricUpdateRequest: + description: The new log-based metric body. + properties: + data: + $ref: "#/components/schemas/LogsMetricUpdateData" + required: + - data + type: object + LogsMetricsResponse: + description: All the available log-based metric objects. + properties: + data: + description: A list of log-based metric objects. + items: + $ref: "#/components/schemas/LogsMetricResponseData" + type: array + type: object + LogsQueryFilter: + description: The search and filter query settings + properties: + from: + default: "now-15m" + description: The minimum time for the requested logs, supports date math and regular timestamps (milliseconds). + example: "now-15m" + type: string + indexes: + default: ["*"] + description: For customers with multiple indexes, the indexes to search. Defaults to ['*'] which means all indexes. + example: ["main", "web"] + items: + description: The name of a log index. + type: string + type: array + query: + default: "*" + description: The search query - following the log search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + storage_tier: + $ref: "#/components/schemas/LogsStorageTier" + to: + default: "now" + description: The maximum time for the requested logs, supports date math and regular timestamps (milliseconds). + example: "now" + type: string + type: object + LogsQueryOptions: + deprecated: true + description: |- + Global query options that are used during the query. + Note: These fields are currently deprecated and do not affect the query results. + properties: + timeOffset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: "UTC" + description: |- + The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: "GMT" + type: string + type: object + LogsResponseMetadata: + description: The metadata associated with a request + properties: + elapsed: + description: The time elapsed in milliseconds + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/LogsResponseMetadataPage" + request_id: + description: The identifier of the request + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/LogsAggregateResponseStatus" + warnings: + description: |- + A list of warnings (non fatal errors) encountered, partial results might be returned if + warnings are present in the response. + items: + $ref: "#/components/schemas/LogsWarning" + type: array + type: object + LogsResponseMetadataPage: + description: Paging attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + LogsRestrictionQueriesType: + default: logs_restriction_queries + description: Restriction query resource type. + enum: + - logs_restriction_queries + example: logs_restriction_queries + type: string + x-enum-varnames: + - LOGS_RESTRICTION_QUERIES + LogsSort: + description: Sort parameters when querying logs. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + LogsSortOrder: + description: The order to use, ascending or descending + enum: + - "asc" + - "desc" + example: "asc" + type: string + x-enum-varnames: + - "ASCENDING" + - "DESCENDING" + LogsStorageTier: + default: "indexes" + description: Specifies storage type as indexes, online-archives or flex + enum: ["indexes", "online-archives", "flex"] + example: "indexes" + type: string + x-enum-varnames: ["INDEXES", "ONLINE_ARCHIVES", "FLEX"] + LogsWarning: + description: A warning message indicating something that went wrong with the query + properties: + code: + description: A unique code for this type of warning + example: "unknown_index" + type: string + detail: + description: A detailed explanation of this specific warning + example: "indexes: foo, bar" + type: string + title: + description: A short human-readable summary of the warning + example: "One or several indexes are missing or invalid, results hold data from the other indexes" + type: string + type: object + LongTaskMetricStats: + description: Statistical distribution (average, min, max) of a long task metric across sampled views. + properties: + average: + description: Average value across sampled views. + example: 3504.1 + format: double + type: number + max: + description: Maximum value across sampled views. + example: 3517.8 + format: double + type: number + min: + description: Minimum value across sampled views. + example: 3500.1 + format: double + type: number + required: + - average + - min + - max + type: object + LongTaskStatsPerView: + description: Statistical distributions of long task metrics computed per view across sampled views. + properties: + fcp_blocking_time_ms: + $ref: "#/components/schemas/LongTaskMetricStats" + fcp_count: + $ref: "#/components/schemas/LongTaskMetricStats" + inp_overlap_blocking_time_ms: + $ref: "#/components/schemas/LongTaskMetricStats" + inp_overlap_count: + $ref: "#/components/schemas/LongTaskMetricStats" + lcp_blocking_time_ms: + $ref: "#/components/schemas/LongTaskMetricStats" + lcp_count: + $ref: "#/components/schemas/LongTaskMetricStats" + loading_time_blocking_time_ms: + $ref: "#/components/schemas/LongTaskMetricStats" + loading_time_count: + $ref: "#/components/schemas/LongTaskMetricStats" + total_blocking_time_ms: + $ref: "#/components/schemas/LongTaskMetricStats" + total_count: + $ref: "#/components/schemas/LongTaskMetricStats" + type: object + MSTeamsIntegrationMetadata: + description: Incident integration metadata for the Microsoft Teams integration. + properties: + teams: + description: Array of Microsoft Teams in this integration metadata. + example: [] + items: + $ref: "#/components/schemas/MSTeamsIntegrationMetadataTeamsItem" + type: array + required: + - teams + type: object + MSTeamsIntegrationMetadataTeamsItem: + description: Item in the Microsoft Teams integration metadata teams array. + properties: + ms_channel_id: + description: Microsoft Teams channel ID. + example: 19:abc00abcdef00a0abcdef0abcdef0a@thread.tacv2 + type: string + ms_channel_name: + description: Microsoft Teams channel name. + example: incident-0001-example + type: string + ms_tenant_id: + description: Microsoft Teams tenant ID. + example: 00000000-abcd-0005-0000-000000000000 + type: string + redirect_url: + description: URL redirecting to the Microsoft Teams channel. + example: https://teams.microsoft.com/l/channel/19%3Aabc00abcdef00a0abcdef0abcdef0a%40thread.tacv2/conversations?groupId=12345678-abcd-dcba-abcd-1234567890ab&tenantId=00000000-abcd-0005-0000-000000000000 + type: string + required: + - ms_tenant_id + - ms_channel_id + - ms_channel_name + - redirect_url + type: object + Maintenance: + description: Response object for a single maintenance. + properties: + data: + $ref: "#/components/schemas/MaintenanceData" + included: + description: The included related resources of a maintenance. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + type: object + MaintenanceArray: + description: Response object for a list of maintenances. + properties: + data: + description: A list of maintenance data objects. + items: + $ref: "#/components/schemas/MaintenanceData" + type: array + included: + description: The included related resources of a maintenance. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + meta: + $ref: "#/components/schemas/PaginationMeta" + required: + - data + type: object + MaintenanceData: + description: The data object for a maintenance. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceDataAttributes" + id: + description: The ID of the maintenance. + format: uuid + type: string + relationships: + $ref: "#/components/schemas/MaintenanceDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceRequestDataType" + required: + - type + type: object + MaintenanceDataAttributes: + description: The attributes of a maintenance. + properties: + completed_date: + description: Timestamp of when the maintenance was completed. + format: date-time + type: string + completed_description: + description: The description shown when the maintenance is completed. + type: string + components_affected: + description: Components affected by the maintenance. + items: + $ref: "#/components/schemas/MaintenanceDataAttributesComponentsAffectedItems" + type: array + in_progress_description: + description: The description shown while the maintenance is in progress. + type: string + is_backfilled: + description: Whether the maintenance was backfilled. + type: boolean + modified_at: + description: Timestamp of when the maintenance was last modified. + format: date-time + type: string + published_date: + description: Timestamp of when the maintenance was published. + format: date-time + type: string + scheduled_description: + description: The description shown when the maintenance is scheduled. + type: string + start_date: + description: Timestamp of when the maintenance is scheduled to start. + format: date-time + type: string + status: + $ref: "#/components/schemas/MaintenanceDataAttributesStatus" + description: The status of the maintenance. + title: + description: Title of the maintenance. + type: string + updates: + description: Past updates made to the maintenance. + items: + $ref: "#/components/schemas/MaintenanceDataAttributesUpdatesItems" + type: array + type: object + MaintenanceDataAttributesComponentsAffectedItems: + description: A component affected by a maintenance. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus" + required: + - id + - status + type: object + MaintenanceDataAttributesStatus: + description: The status of the maintenance. + enum: + - scheduled + - in_progress + - completed + type: string + x-enum-varnames: + - SCHEDULED + - IN_PROGRESS + - COMPLETED + MaintenanceDataAttributesUpdatesItems: + description: An update made to a maintenance. + properties: + components_affected: + description: The components affected at the time of the update. + items: + $ref: "#/components/schemas/MaintenanceDataAttributesUpdatesItemsComponentsAffectedItems" + type: array + created_at: + description: Timestamp of when the update was created. + format: date-time + readOnly: true + type: string + description: + description: Description of the update. + type: string + id: + description: Identifier of the update. + format: uuid + readOnly: true + type: string + manual_transition: + description: Whether the update was applied manually by a user (true) or automatically by the system (false). + readOnly: true + type: boolean + modified_at: + description: Timestamp of when the update was last modified. + format: date-time + readOnly: true + type: string + started_at: + description: Timestamp of when the update started. + format: date-time + type: string + status: + description: The status of the update. + type: string + type: object + MaintenanceDataAttributesUpdatesItemsComponentsAffectedItems: + description: A component affected at the time of a maintenance update. + properties: + id: + description: Identifier of the component affected at the time of the update. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component affected at the time of the update. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus" + description: The status of the component affected at the time of the update. + required: + - id + - status + type: object + MaintenanceDataRelationships: + description: The relationships of a maintenance. + properties: + created_by_user: + $ref: "#/components/schemas/MaintenanceDataRelationshipsCreatedByUser" + description: The Datadog user who created the maintenance. + last_modified_by_user: + $ref: "#/components/schemas/MaintenanceDataRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the maintenance. + status_page: + $ref: "#/components/schemas/MaintenanceDataRelationshipsStatusPage" + description: The status page the maintenance belongs to. + template: + $ref: "#/components/schemas/MaintenanceDataRelationshipsTemplate" + description: The template the maintenance was created from. + type: object + MaintenanceDataRelationshipsCreatedByUser: + description: The Datadog user who created the maintenance. + properties: + data: + $ref: "#/components/schemas/MaintenanceDataRelationshipsCreatedByUserData" + required: + - data + type: object + MaintenanceDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the maintenance. + properties: + id: + description: The ID of the Datadog user who created the maintenance. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + MaintenanceDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the maintenance. + properties: + data: + $ref: "#/components/schemas/MaintenanceDataRelationshipsLastModifiedByUserData" + required: + - data + type: object + MaintenanceDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the maintenance. + properties: + id: + description: The ID of the Datadog user who last modified the maintenance. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + MaintenanceDataRelationshipsStatusPage: + description: The status page the maintenance belongs to. + properties: + data: + $ref: "#/components/schemas/MaintenanceDataRelationshipsStatusPageData" + required: + - data + type: object + MaintenanceDataRelationshipsStatusPageData: + description: The data object identifying the status page associated with a maintenance. + properties: + id: + description: The ID of the status page. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + MaintenanceDataRelationshipsTemplate: + description: The template the maintenance was created from. + properties: + data: + $ref: "#/components/schemas/MaintenanceDataRelationshipsTemplateData" + required: + - data + type: object + MaintenanceDataRelationshipsTemplateData: + description: The data object identifying the template the maintenance was created from. + properties: + id: + description: The ID of the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + - id + type: object + MaintenanceTemplate: + description: Response object for a single maintenance template. + properties: + data: + $ref: "#/components/schemas/MaintenanceTemplateData" + included: + description: The included related resources of a maintenance template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + type: object + MaintenanceTemplateArray: + description: Response object for a list of maintenance templates. + properties: + data: + description: A list of maintenance template data objects. + items: + $ref: "#/components/schemas/MaintenanceTemplateData" + type: array + included: + description: The included related resources of a maintenance template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/DegradationIncluded" + type: array + required: + - data + type: object + MaintenanceTemplateData: + description: The data object for a maintenance template. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceTemplateDataAttributes" + id: + description: The ID of the maintenance template. + type: string + relationships: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + type: object + MaintenanceTemplateDataAttributes: + description: The attributes of a maintenance template. + properties: + completed_description: + description: The description shown when a maintenance created from this template is completed. + type: string + component_ids: + description: The IDs of the components affected by a maintenance created from this template. + items: + type: string + type: array + created_at: + description: Timestamp of when the maintenance template was created. + format: date-time + type: string + in_progress_description: + description: The description shown while a maintenance created from this template is in progress. + type: string + maintenance_title: + description: The title used for a maintenance created from this template. + type: string + modified_at: + description: Timestamp of when the maintenance template was last modified. + format: date-time + type: string + name: + description: The name of the maintenance template. + type: string + scheduled_description: + description: The description shown when a maintenance created from this template is scheduled. + type: string + type: object + MaintenanceTemplateDataRelationships: + description: The relationships of a maintenance template. + properties: + created_by_user: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationshipsCreatedByUser" + description: The Datadog user who created the maintenance template. + last_modified_by_user: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the maintenance template. + status_page: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationshipsStatusPage" + description: The status page the maintenance template belongs to. + type: object + MaintenanceTemplateDataRelationshipsCreatedByUser: + description: The Datadog user who created the maintenance template. + properties: + data: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationshipsCreatedByUserData" + required: + - data + type: object + MaintenanceTemplateDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the maintenance template. + properties: + id: + description: The ID of the Datadog user who created the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + MaintenanceTemplateDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the maintenance template. + properties: + data: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationshipsLastModifiedByUserData" + required: + - data + type: object + MaintenanceTemplateDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the maintenance template. + properties: + id: + description: The ID of the Datadog user who last modified the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + MaintenanceTemplateDataRelationshipsStatusPage: + description: The status page the maintenance template belongs to. + properties: + data: + $ref: "#/components/schemas/MaintenanceTemplateDataRelationshipsStatusPageData" + required: + - data + type: object + MaintenanceTemplateDataRelationshipsStatusPageData: + description: The data object identifying the status page associated with a maintenance template. + properties: + id: + description: The ID of the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + MaintenanceUpdate: + description: Response object for a maintenance update. + properties: + data: + $ref: "#/components/schemas/MaintenanceUpdateData" + type: object + MaintenanceUpdateData: + description: The data object for a maintenance update. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceUpdateDataAttributes" + id: + description: The ID of the maintenance update. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestDataType" + required: + - id + - type + type: object + MaintenanceUpdateDataAttributes: + description: Attributes of a maintenance update resource. + properties: + components_affected: + description: Components affected at the time of the update. + items: + $ref: "#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems" + type: array + created_at: + description: The date and time the update was created. + format: date-time + type: string + description: + description: The message body of the update. + type: string + manual_transition: + description: Whether the update was applied manually by a user (true) or automatically by the system (false). + type: boolean + modified_at: + description: The date and time the update was last modified. + format: date-time + type: string + started_at: + description: The date and time the update started. + format: date-time + type: string + status: + $ref: "#/components/schemas/MaintenanceUpdateDataAttributesStatus" + type: object + MaintenanceUpdateDataAttributesStatus: + description: The status of the maintenance update. + enum: + - scheduled + - in_progress + - completed + - canceled + type: string + x-enum-varnames: + - SCHEDULED + - IN_PROGRESS + - COMPLETED + - CANCELED + MaintenanceUpdateDataRelationships: + description: Relationships of a maintenance update resource. + properties: + created_by_user: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsUser" + last_modified_by_user: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsUser" + maintenance: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsMaintenance" + type: object + MaintenanceUpdateDataRelationshipsMaintenance: + description: The parent maintenance of the update. + properties: + data: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsMaintenanceData" + required: + - data + type: object + MaintenanceUpdateDataRelationshipsMaintenanceData: + description: The maintenance linked to a maintenance update. + properties: + id: + description: The ID of the maintenance. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceRequestDataType" + required: + - type + - id + type: object + MaintenanceUpdateDataRelationshipsUser: + description: A user relationship of a maintenance update. + properties: + data: + $ref: "#/components/schemas/MaintenanceUpdateDataRelationshipsUserData" + required: + - data + type: object + MaintenanceUpdateDataRelationshipsUserData: + description: The data object identifying a Datadog user linked to a maintenance update. + properties: + id: + description: The ID of the Datadog user. + example: "" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + MaintenanceWindow: + description: A maintenance window that defines a scheduled time period during which case-related notifications and automation rules are suppressed. Each maintenance window applies to cases matching a specified query. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceWindowAttributes" + id: + description: The maintenance window's identifier. + example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" + type: string + type: + $ref: "#/components/schemas/MaintenanceWindowResourceType" + required: + - id + - type + - attributes + type: object + MaintenanceWindowAttributes: + description: Attributes of a maintenance window, including its schedule and the query that determines which cases are affected. + properties: + created_by: + description: The UUID of the user who created this maintenance window. Read-only. + readOnly: true + type: string + end_at: + description: The ISO 8601 timestamp when the maintenance window ends and normal notification behavior resumes. + example: "2026-06-01T06:00:00Z" + format: date-time + type: string + name: + description: "A human-readable name for the maintenance window (for example, `Database migration - Dec 15`)." + example: "Weekly maintenance" + type: string + query: + description: A case search query that determines which cases are affected during the maintenance window. Uses the same syntax as the Case Management search bar. + example: "project:SEC" + type: string + start_at: + description: The ISO 8601 timestamp when the maintenance window begins and notifications start being suppressed. + example: "2026-06-01T00:00:00Z" + format: date-time + type: string + updated_by: + description: The UUID of the user who last modified this maintenance window. Read-only. + readOnly: true + type: string + required: + - name + - query + - start_at + - end_at + type: object + MaintenanceWindowCreate: + description: Data object for creating a maintenance window. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceWindowCreateAttributes" + type: + $ref: "#/components/schemas/MaintenanceWindowResourceType" + required: + - type + - attributes + type: object + MaintenanceWindowCreateAttributes: + description: Attributes required to create a maintenance window. + properties: + end_at: + description: The end time of the maintenance window. + example: "2026-06-01T06:00:00Z" + format: date-time + type: string + name: + description: The name of the maintenance window. + example: "Weekly maintenance" + type: string + query: + description: The query to filter event management cases for this maintenance window. + example: "project:SEC" + type: string + start_at: + description: The start time of the maintenance window. + example: "2026-06-01T00:00:00Z" + format: date-time + type: string + required: + - name + - query + - start_at + - end_at + type: object + MaintenanceWindowCreateRequest: + description: Request payload for creating a maintenance window. + properties: + data: + $ref: "#/components/schemas/MaintenanceWindowCreate" + required: + - data + type: object + MaintenanceWindowResourceType: + default: maintenance_window + description: JSON:API resource type for maintenance windows. + enum: + - maintenance_window + example: maintenance_window + type: string + x-enum-varnames: + - MAINTENANCE_WINDOW + MaintenanceWindowResponse: + description: Response containing a single maintenance window. + properties: + data: + $ref: "#/components/schemas/MaintenanceWindow" + required: + - data + type: object + MaintenanceWindowUpdate: + description: Data object for updating a maintenance window. + properties: + attributes: + $ref: "#/components/schemas/MaintenanceWindowUpdateAttributes" + type: + $ref: "#/components/schemas/MaintenanceWindowResourceType" + required: + - type + type: object + MaintenanceWindowUpdateAttributes: + description: Attributes that can be updated on a maintenance window. All fields are optional; only provided fields are changed. + properties: + end_at: + description: The end time of the maintenance window. + format: date-time + type: string + name: + description: The name of the maintenance window. + type: string + query: + description: The query to filter event management cases for this maintenance window. + type: string + start_at: + description: The start time of the maintenance window. + format: date-time + type: string + type: object + MaintenanceWindowUpdateRequest: + description: Request payload for updating a maintenance window. + properties: + data: + $ref: "#/components/schemas/MaintenanceWindowUpdate" + required: + - data + type: object + MaintenanceWindowsResponse: + description: Response containing a list of maintenance windows. + properties: + data: + description: List of maintenance windows. + items: + $ref: "#/components/schemas/MaintenanceWindow" + type: array + required: + - data + type: object + ManagedOrgsData: + description: The managed organizations resource. + properties: + id: + description: The UUID of the current organization. + example: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/ManagedOrgsRelationships" + type: + $ref: "#/components/schemas/ManagedOrgsType" + required: + - id + - type + - relationships + type: object + ManagedOrgsRelationshipToOrg: + description: Relationship to the current organization. + properties: + data: + $ref: "#/components/schemas/OrgRelationshipData" + required: + - data + type: object + ManagedOrgsRelationshipToOrgs: + description: Relationship to the managed organizations. + properties: + data: + description: List of managed organization references. + items: + $ref: "#/components/schemas/OrgRelationshipData" + type: array + required: + - data + type: object + ManagedOrgsRelationships: + description: Relationships of the managed organizations resource. + properties: + current_org: + $ref: "#/components/schemas/ManagedOrgsRelationshipToOrg" + managed_orgs: + $ref: "#/components/schemas/ManagedOrgsRelationshipToOrgs" + required: + - current_org + - managed_orgs + type: object + ManagedOrgsResponse: + description: Response containing the current organization and its managed organizations. + properties: + data: + $ref: "#/components/schemas/ManagedOrgsData" + included: + description: Included organization resources. + items: + $ref: "#/components/schemas/OrgData" + type: array + required: + - data + - included + type: object + ManagedOrgsType: + description: The resource type for managed organizations. + enum: [managed_orgs] + example: "managed_orgs" + type: string + x-enum-varnames: + - MANAGED_ORGS + MaxSessionDurationType: + description: Data type of a maximum session duration update. + enum: [max_session_duration] + example: max_session_duration + type: string + x-enum-varnames: + - MAX_SESSION_DURATION + MaxSessionDurationUpdateAttributes: + description: Attributes for the maximum session duration update request. + properties: + max_session_duration: + description: The maximum session duration, in seconds. + example: 604800 + format: int64 + minimum: 1 + type: integer + required: [max_session_duration] + type: object + MaxSessionDurationUpdateData: + description: The data object for a maximum session duration update request. + properties: + attributes: + $ref: "#/components/schemas/MaxSessionDurationUpdateAttributes" + type: + $ref: "#/components/schemas/MaxSessionDurationType" + required: [type, attributes] + type: object + MaxSessionDurationUpdateRequest: + description: A request to update the maximum session duration for an organization. + properties: + data: + $ref: "#/components/schemas/MaxSessionDurationUpdateData" + required: [data] + type: object + McpScanRequest: + description: The top-level request object for submitting an MCP SCA dependency scan. + properties: + data: + $ref: "#/components/schemas/McpScanRequestData" + required: + - data + type: object + McpScanRequestData: + description: The data object in an MCP SCA scan request, containing the scan attributes and request type. + properties: + attributes: + $ref: "#/components/schemas/McpScanRequestDataAttributes" + id: + description: An optional identifier for this scan request. + type: string + type: + $ref: "#/components/schemas/McpScanRequestDataType" + required: + - type + - attributes + type: object + McpScanRequestDataAttributes: + description: The attributes of an MCP SCA scan request, describing the libraries to scan and their context. + properties: + commit_hash: + description: The commit hash of the source code being scanned. + example: 0e9fc8de83eaabecd722e1cd0ed44fb489fe15fc + type: string + libraries: + $ref: "#/components/schemas/McpScanRequestDataAttributesLibraries" + resource_name: + description: The name of the resource (typically the repository or project name) being scanned. + example: my-org/my-repo + type: string + required: + - resource_name + - commit_hash + - libraries + type: object + McpScanRequestDataAttributesLibraries: + description: The list of libraries to scan for vulnerabilities. + items: + $ref: "#/components/schemas/McpScanRequestDataAttributesLibrariesItems" + type: array + McpScanRequestDataAttributesLibrariesItems: + description: A library declaration to include in the dependency scan. + properties: + exclusions: + $ref: "#/components/schemas/McpScanRequestDataAttributesLibrariesItemsExclusions" + is_dev: + description: Whether this library is a development-only dependency. + example: false + type: boolean + is_direct: + description: Whether this library is a direct (rather than transitive) dependency. + example: true + type: boolean + package_manager: + description: The package manager that produced this library entry (for example, `npm`, `pip`, `nuget`). + example: nuget + type: string + purl: + description: The Package URL (PURL) uniquely identifying the library and its version. + example: pkg:nuget/Newtonsoft.Json@13.0.1 + type: string + target_frameworks: + $ref: "#/components/schemas/McpScanRequestDataAttributesLibrariesItemsTargetFrameworks" + required: + - purl + - is_dev + - is_direct + - package_manager + type: object + McpScanRequestDataAttributesLibrariesItemsExclusions: + description: The list of dependency PURLs to exclude when resolving transitive dependencies for this library. + items: + description: A dependency PURL to exclude. + type: string + type: array + McpScanRequestDataAttributesLibrariesItemsTargetFrameworks: + description: The list of target framework identifiers associated with the library. + items: + description: A target framework identifier (for example, `net8.0`). + type: string + type: array + McpScanRequestDataType: + default: mcpscanrequest + description: The type identifier for MCP SCA scan requests. + enum: + - mcpscanrequest + example: mcpscanrequest + type: string + x-enum-varnames: + - MCPSCANREQUEST + McpScanRequestResponse: + description: The top-level response object returned when an MCP SCA dependency scan request has been accepted. + properties: + data: + $ref: "#/components/schemas/McpScanRequestResponseData" + required: + - data + type: object + McpScanRequestResponseData: + description: The data object returned when a scan request has been accepted. + properties: + attributes: + $ref: "#/components/schemas/McpScanRequestResponseDataAttributes" + id: + description: The job identifier assigned to the scan. + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + type: + $ref: "#/components/schemas/McpScanRequestResponseDataType" + required: + - id + - type + - attributes + type: object + McpScanRequestResponseDataAttributes: + description: The attributes returned when a scan request has been accepted, containing the job identifier used to poll for results. + properties: + job_id: + description: The job identifier assigned to the scan, used to retrieve the scan result. + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + required: + - job_id + type: object + McpScanRequestResponseDataType: + default: mcpscanrequestresponse + description: The type identifier for MCP SCA scan request responses. + enum: + - mcpscanrequestresponse + example: mcpscanrequestresponse + type: string + x-enum-varnames: + - MCPSCANREQUESTRESPONSE + MemberTeam: + description: A member team + properties: + id: + description: The member team's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/MemberTeamType" + required: + - id + - type + type: object + MemberTeamType: + default: member_teams + description: Member team type + enum: + - member_teams + example: member_teams + type: string + x-enum-varnames: + - MEMBER_TEAMS + Metadata: + description: The metadata related to this request. + properties: + count: + description: Number of entities included in the response. + example: 150 + format: int64 + type: integer + token: + description: The token that identifies the request. + example: "b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + type: string + total: + description: Total number of entities across all pages. + example: 152431 + format: int64 + type: integer + required: + - count + - total + - token + type: object + Metric: + description: Object for a single metric. + example: + id: metric.foo.bar + type: metrics + properties: + id: + $ref: "#/components/schemas/MetricName" + relationships: + $ref: "#/components/schemas/MetricRelationships" + type: + $ref: "#/components/schemas/MetricType" + type: object + MetricActiveConfigurationType: + default: actively_queried_configurations + description: The metric actively queried configuration resource type. + enum: + - actively_queried_configurations + example: actively_queried_configurations + type: string + x-enum-varnames: + - ACTIVELY_QUERIED_CONFIGURATIONS + MetricAllTags: + description: Object for a single metric's indexed and ingested tags. + properties: + attributes: + $ref: "#/components/schemas/MetricAllTagsAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricType" + type: object + MetricAllTagsAttributes: + description: Object containing the definition of a metric's indexed and ingested tags. + properties: + ingested_tags: + description: List of ingested tags that are not indexed. + example: ["env:prod", "service:web", "version:1.0"] + items: + description: Ingested tags for the metric. + type: string + type: array + tags: + description: List of indexed tags. + example: ["sport:golf", "sport:football", "animal:dog"] + items: + description: Indexed tags for the metric. + type: string + type: array + type: object + MetricAllTagsResponse: + description: Response object that includes a single metric's indexed and ingested tags. + properties: + data: + $ref: "#/components/schemas/MetricAllTags" + readOnly: true + type: object + MetricAssetAttributes: + description: Assets related to the object, including title, url, and tags. + properties: + tags: + description: List of tag keys used in the asset. + example: ["env", "service", "host", "datacenter"] + items: + description: Tag key used in assets. + type: string + type: array + title: + description: Title of the asset. + type: string + url: + description: URL path of the asset. + type: string + type: object + MetricAssetDashboardRelationship: + description: An object of type `dashboard` that can be referenced in the `included` data. + properties: + id: + $ref: "#/components/schemas/MetricDashboardID" + type: + $ref: "#/components/schemas/MetricDashboardType" + type: object + MetricAssetDashboardRelationships: + description: An object containing the list of dashboards that can be referenced in the `included` data. + properties: + data: + description: A list of dashboards that can be referenced in the `included` data. + items: + $ref: "#/components/schemas/MetricAssetDashboardRelationship" + type: array + type: object + MetricAssetMonitorRelationship: + description: An object of type `monitor` that can be referenced in the `included` data. + properties: + id: + $ref: "#/components/schemas/MetricMonitorID" + type: + $ref: "#/components/schemas/MetricMonitorType" + type: object + MetricAssetMonitorRelationships: + description: A object containing the list of monitors that can be referenced in the `included` data. + properties: + data: + description: A list of monitors that can be referenced in the `included` data. + items: + $ref: "#/components/schemas/MetricAssetMonitorRelationship" + type: array + type: object + MetricAssetNotebookRelationship: + description: An object of type `notebook` that can be referenced in the `included` data. + properties: + id: + $ref: "#/components/schemas/MetricNotebookID" + type: + $ref: "#/components/schemas/MetricNotebookType" + type: object + MetricAssetNotebookRelationships: + description: An object containing the list of notebooks that can be referenced in the `included` data. + properties: + data: + description: A list of notebooks that can be referenced in the `included` data. + items: + $ref: "#/components/schemas/MetricAssetNotebookRelationship" + type: array + type: object + MetricAssetResponseData: + description: Metric assets response data. + properties: + id: + $ref: "#/components/schemas/MetricName" + relationships: + $ref: "#/components/schemas/MetricAssetResponseRelationships" + type: + $ref: "#/components/schemas/MetricType" + required: + - id + - type + type: object + MetricAssetResponseIncluded: + description: List of included assets with full set of attributes. + oneOf: + - $ref: "#/components/schemas/MetricDashboardAsset" + - $ref: "#/components/schemas/MetricMonitorAsset" + - $ref: "#/components/schemas/MetricNotebookAsset" + - $ref: "#/components/schemas/MetricSLOAsset" + MetricAssetResponseRelationships: + description: Relationships to assets related to the metric. + properties: + dashboards: + $ref: "#/components/schemas/MetricAssetDashboardRelationships" + monitors: + $ref: "#/components/schemas/MetricAssetMonitorRelationships" + notebooks: + $ref: "#/components/schemas/MetricAssetNotebookRelationships" + slos: + $ref: "#/components/schemas/MetricAssetSLORelationships" + type: object + MetricAssetSLORelationship: + description: An object of type `slos` that can be referenced in the `included` data. + properties: + id: + $ref: "#/components/schemas/MetricSLOID" + type: + $ref: "#/components/schemas/MetricSLOType" + type: object + MetricAssetSLORelationships: + description: An object containing a list of SLOs that can be referenced in the `included` data. + properties: + data: + description: A list of SLOs that can be referenced in the `included` data. + items: + $ref: "#/components/schemas/MetricAssetSLORelationship" + type: array + type: object + MetricAssetsResponse: + description: Response object that includes related dashboards, monitors, notebooks, and SLOs. + properties: + data: + $ref: "#/components/schemas/MetricAssetResponseData" + included: + description: Array of objects related to the metric assets. + items: + $ref: "#/components/schemas/MetricAssetResponseIncluded" + type: array + type: object + MetricBulkConfigureTagsType: + default: metric_bulk_configure_tags + description: The metric bulk configure tags resource. + enum: + - metric_bulk_configure_tags + example: metric_bulk_configure_tags + type: string + x-enum-varnames: + - BULK_MANAGE_TAGS + MetricBulkTagConfigCreate: + description: Request object to bulk configure tags for metrics matching the given prefix. + properties: + attributes: + $ref: "#/components/schemas/MetricBulkTagConfigCreateAttributes" + id: + $ref: "#/components/schemas/MetricBulkTagConfigNamePrefix" + type: + $ref: "#/components/schemas/MetricBulkConfigureTagsType" + required: + - id + - type + type: object + MetricBulkTagConfigCreateAttributes: + description: Optional parameters for bulk creating metric tag configurations. + properties: + emails: + $ref: "#/components/schemas/MetricBulkTagConfigEmailList" + exclude_tags_mode: + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. + Defaults to false. + type: boolean + include_actively_queried_tags_window: + description: |- + When provided, all tags that have been actively queried are + configured (and, therefore, remain queryable) for each metric that + matches the given prefix. Minimum value is 1 second, and maximum + value is 7,776,000 seconds (90 days). + format: double + maximum: 7776000 + minimum: 1 + type: number + override_existing_configurations: + description: |- + When set to true, the configuration overrides any existing + configurations for the given metric with the new set of tags in this + configuration request. If false, old configurations are kept and + are merged with the set of tags in this configuration request. + Defaults to true. + type: boolean + tags: + $ref: "#/components/schemas/MetricBulkTagConfigTagNameList" + type: object + MetricBulkTagConfigCreateRequest: + description: Wrapper object for a single bulk tag configuration request. + properties: + data: + $ref: "#/components/schemas/MetricBulkTagConfigCreate" + required: + - data + type: object + MetricBulkTagConfigDelete: + description: Request object to bulk delete all tag configurations for metrics matching the given prefix. + properties: + attributes: + $ref: "#/components/schemas/MetricBulkTagConfigDeleteAttributes" + id: + $ref: "#/components/schemas/MetricBulkTagConfigNamePrefix" + type: + $ref: "#/components/schemas/MetricBulkConfigureTagsType" + required: + - id + - type + type: object + MetricBulkTagConfigDeleteAttributes: + description: Optional parameters for bulk deleting metric tag configurations. + properties: + emails: + $ref: "#/components/schemas/MetricBulkTagConfigEmailList" + type: object + MetricBulkTagConfigDeleteRequest: + description: Wrapper object for a single bulk tag deletion request. + properties: + data: + $ref: "#/components/schemas/MetricBulkTagConfigDelete" + required: + - data + type: object + MetricBulkTagConfigEmailList: + description: A list of account emails to notify when the configuration is applied. + example: ["sue@example.com", "bob@example.com"] + items: + description: An email address. + type: string + type: array + MetricBulkTagConfigNamePrefix: + description: A text prefix to match against metric names. + example: "kafka.lag" + type: string + MetricBulkTagConfigResponse: + description: Wrapper for a single bulk tag configuration status response. + properties: + data: + $ref: "#/components/schemas/MetricBulkTagConfigStatus" + type: object + MetricBulkTagConfigStatus: + description: |- + The status of a request to bulk configure metric tags. + It contains the fields from the original request for reference. + properties: + attributes: + $ref: "#/components/schemas/MetricBulkTagConfigStatusAttributes" + id: + $ref: "#/components/schemas/MetricBulkTagConfigNamePrefix" + type: + $ref: "#/components/schemas/MetricBulkConfigureTagsType" + required: + - id + - type + type: object + MetricBulkTagConfigStatusAttributes: + description: Optional attributes for the status of a bulk tag configuration request. + properties: + emails: + $ref: "#/components/schemas/MetricBulkTagConfigEmailList" + exclude_tags_mode: + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. + type: boolean + status: + description: The status of the request. + example: "Accepted" + type: string + tags: + $ref: "#/components/schemas/MetricBulkTagConfigTagNameList" + type: object + MetricBulkTagConfigTagNameList: + description: A list of tag names to apply to the configuration. + example: ["host", "pod_name", "is_shadow"] + items: + description: A metric tag name. + maxLength: 200 + pattern: ^[A-Za-z][A-Za-z0-9\.\-\_:\/]*$ + type: string + type: array + MetricContentEncoding: + default: deflate + description: HTTP header used to compress the media-type. + enum: + - deflate + - zstd1 + - gzip + example: deflate + type: string + x-enum-varnames: + - DEFLATE + - ZSTD1 + - GZIP + MetricCustomAggregation: + description: |- + A time and space aggregation combination for use in query. + example: + space: sum + time: sum + properties: + space: + $ref: "#/components/schemas/MetricCustomSpaceAggregation" + time: + $ref: "#/components/schemas/MetricCustomTimeAggregation" + required: + - time + - space + type: object + MetricCustomAggregations: + description: |- + Deprecated. You no longer need to configure specific time and space aggregations for Metrics Without Limits. + example: + - space: sum + time: sum + - space: sum + time: count + items: + $ref: "#/components/schemas/MetricCustomAggregation" + type: array + MetricCustomSpaceAggregation: + description: A space aggregation for use in query. + enum: + - avg + - max + - min + - sum + example: sum + type: string + x-enum-varnames: + - AVG + - MAX + - MIN + - SUM + MetricCustomTimeAggregation: + description: A time aggregation for use in query. + enum: + - avg + - count + - max + - min + - sum + example: sum + type: string + x-enum-varnames: + - AVG + - COUNT + - MAX + - MIN + - SUM + MetricDashboardAsset: + description: A dashboard object with title and popularity. + properties: + attributes: + $ref: "#/components/schemas/MetricDashboardAttributes" + id: + $ref: "#/components/schemas/MetricDashboardID" + type: + $ref: "#/components/schemas/MetricDashboardType" + required: + - id + - type + type: object + MetricDashboardAttributes: + description: Attributes related to the dashboard, including title, popularity, and url. + properties: + popularity: + description: Value from 0 to 5 that ranks popularity of the dashboard. + format: double + maximum: 5 + minimum: 0 + type: number + tags: + description: List of tag keys used in the asset. + example: ["env", "service", "host", "datacenter"] + items: + description: Tag key used in assets. + type: string + type: array + title: + description: Title of the asset. + type: string + url: + description: URL path of the asset. + type: string + type: object + MetricDashboardID: + description: The related dashboard's ID. + example: "xxx-yyy-zzz" + type: string + MetricDashboardType: + description: Dashboard resource type. + enum: + - dashboards + example: "dashboards" + type: string + x-enum-varnames: + - DASHBOARDS + MetricDistinctVolume: + description: Object for a single metric's distinct volume. + properties: + attributes: + $ref: "#/components/schemas/MetricDistinctVolumeAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricDistinctVolumeType" + type: object + MetricDistinctVolumeAttributes: + description: Object containing the definition of a metric's distinct volume. + properties: + distinct_volume: + description: Distinct volume for the given metric. + example: 10 + format: int64 + type: integer + type: object + MetricDistinctVolumeType: + default: distinct_metric_volumes + description: The metric distinct volume type. + enum: + - distinct_metric_volumes + example: distinct_metric_volumes + type: string + x-enum-varnames: + - DISTINCT_METRIC_VOLUMES + MetricEstimate: + description: Object for a metric cardinality estimate. + properties: + attributes: + $ref: "#/components/schemas/MetricEstimateAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricEstimateResourceType" + type: object + MetricEstimateAttributes: + description: Object containing the definition of a metric estimate attribute. + properties: + estimate_type: + $ref: "#/components/schemas/MetricEstimateType" + estimated_at: + description: Timestamp when the cardinality estimate was requested. + example: "2022-04-27T09:48:37.463835Z" + format: date-time + type: string + estimated_output_series: + description: Estimated cardinality of the metric based on the queried configuration. + example: 50 + format: int64 + type: integer + type: object + MetricEstimateResourceType: + default: metric_cardinality_estimate + description: The metric estimate resource type. + enum: + - metric_cardinality_estimate + example: metric_cardinality_estimate + type: string + x-enum-varnames: + - METRIC_CARDINALITY_ESTIMATE + MetricEstimateResponse: + description: Response object that includes metric cardinality estimates. + properties: + data: + $ref: "#/components/schemas/MetricEstimate" + type: object + MetricEstimateType: + default: count_or_gauge + description: |- + Estimate type based on the queried configuration. `count_or_gauge` is returned by default, and `distribution` is returned for distribution metrics. The `filter[pct]` query parameter has no effect on this value. + enum: + - count_or_gauge + - distribution + - percentile + example: distribution + type: string + x-enum-varnames: + - COUNT_OR_GAUGE + - DISTRIBUTION + - PERCENTILE + MetricIngestedIndexedVolume: + description: Object for a single metric's ingested and indexed volume. + properties: + attributes: + $ref: "#/components/schemas/MetricIngestedIndexedVolumeAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricIngestedIndexedVolumeType" + type: object + MetricIngestedIndexedVolumeAttributes: + description: Object containing the definition of a metric's ingested and indexed volume. + properties: + indexed_volume: + description: Estimated average hourly number of indexed time series for the given metric over the last hour. For organizations on Metric Name Pricing, this represents the estimated sum of indexed data points over the last hour. + example: 10 + format: int64 + type: integer + ingested_volume: + description: Estimated average hourly number of ingested time series for the given metric over the last hour. This value is `0` for metrics not configured with Metrics Without Limits. For organizations on Metric Name Pricing, this represents the estimated sum of ingested data points over the last hour. + example: 20 + format: int64 + type: integer + type: object + MetricIngestedIndexedVolumeType: + default: metric_volumes + description: The metric ingested and indexed volume type. + enum: + - metric_volumes + example: metric_volumes + type: string + x-enum-varnames: + - METRIC_VOLUMES + MetricIntakeType: + description: The type of metric. The available types are `0` (unspecified), `1` (count), `2` (rate), and `3` (gauge). + enum: + - 0 + - 1 + - 2 + - 3 + format: int32 + type: integer + x-enum-varnames: + - UNSPECIFIED + - COUNT + - RATE + - GAUGE + MetricMetaPage: + description: Paging attributes. Only present if pagination query parameters were provided. + properties: + cursor: + description: The cursor used to get the current results, if any. + nullable: true + type: string + limit: + description: Number of results returned + format: int32 + maximum: 20000 + minimum: 0 + type: integer + next_cursor: + description: The cursor used to get the next results, if any. + nullable: true + type: string + type: + $ref: "#/components/schemas/MetricMetaPageType" + type: object + MetricMetaPageType: + default: cursor_limit + description: Type of metric pagination. + enum: + - cursor_limit + example: cursor_limit + type: string + x-enum-varnames: + - CURSOR_LIMIT + MetricMetadata: + description: Metadata for the metric. + properties: + origin: + $ref: "#/components/schemas/MetricOrigin" + type: object + MetricMonitorAsset: + description: A monitor object with title. + properties: + attributes: + $ref: "#/components/schemas/MetricAssetAttributes" + id: + $ref: "#/components/schemas/MetricMonitorID" + type: + $ref: "#/components/schemas/MetricMonitorType" + required: + - id + - type + type: object + MetricMonitorID: + description: The related monitor's ID. + example: "1775073" + type: string + MetricMonitorType: + description: Monitor resource type. + enum: + - monitors + example: "monitors" + type: string + x-enum-varnames: + - MONITORS + MetricName: + description: The metric name for this resource. + example: test.metric.latency + type: string + MetricNotebookAsset: + description: A notebook object with title. + properties: + attributes: + $ref: "#/components/schemas/MetricAssetAttributes" + id: + $ref: "#/components/schemas/MetricNotebookID" + type: + $ref: "#/components/schemas/MetricNotebookType" + required: + - id + - type + type: object + MetricNotebookID: + description: The related notebook's ID. + example: "12345" + type: string + MetricNotebookType: + description: Notebook resource type. + enum: + - notebooks + example: "notebooks" + type: string + x-enum-varnames: + - NOTEBOOKS + MetricOrigin: + description: Metric origin information. + properties: + metric_type: + default: 0 + description: The origin metric type code + format: int32 + maximum: 1000 + type: integer + product: + default: 0 + description: The origin product code + format: int32 + maximum: 1000 + type: integer + service: + default: 0 + description: The origin service code + format: int32 + maximum: 1000 + type: integer + type: object + MetricPaginationMeta: + description: Response metadata object. + properties: + pagination: + $ref: "#/components/schemas/MetricMetaPage" + type: object + MetricPayload: + description: The metrics' payload. + properties: + series: + description: A list of timeseries to submit to Datadog. + example: + - metric: "system.load.1" + points: + - {timestamp: 1475317847, value: 0.7} + resources: + - {name: "dummyhost", type: "host"} + items: + $ref: "#/components/schemas/MetricSeries" + type: array + required: + - series + type: object + MetricPoint: + description: A point object is of the form `{POSIX_timestamp, numeric_value}`. + example: {timestamp: 1575317847, value: 0.5} + properties: + timestamp: + description: |- + The timestamp should be in seconds and current. + Current is defined as not more than 10 minutes in the future or more than 1 hour in the past. + format: int64 + type: integer + value: + description: The numeric value format should be a 64bit float gauge-type value. + format: double + type: number + type: object + MetricRelationships: + description: Relationships for a metric. + properties: + metric_volumes: + $ref: "#/components/schemas/MetricVolumesRelationship" + type: object + MetricResource: + description: Metric resource. + example: {name: "dummyhost", type: "host"} + properties: + name: + description: The name of the resource. + type: string + type: + description: The type of the resource. + type: string + type: object + MetricSLOAsset: + description: A SLO object with title. + properties: + attributes: + $ref: "#/components/schemas/MetricAssetAttributes" + id: + $ref: "#/components/schemas/MetricSLOID" + type: + $ref: "#/components/schemas/MetricSLOType" + required: + - id + - type + type: object + MetricSLOID: + description: The SLO ID. + example: "9ffef113b389520db54391d67d652dfb" + type: string + MetricSLOType: + description: SLO resource type. + enum: + - slos + example: "slos" + type: string + x-enum-varnames: + - SLOS + MetricSeries: + description: |- + A metric to submit to Datadog. + See [Datadog metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). + properties: + interval: + description: If the type of the metric is rate or count, define the corresponding interval in seconds. + example: 20 + format: int64 + type: integer + metadata: + $ref: "#/components/schemas/MetricMetadata" + metric: + description: The name of the timeseries. + example: system.load.1 + type: string + points: + description: Points relating to a metric. All points must be objects with timestamp and a scalar value (cannot be a string). Timestamps should be in POSIX time in seconds, and cannot be more than ten minutes in the future or more than one hour in the past. + example: + - {timestamp: 1575317847, value: 0.5} + items: + $ref: "#/components/schemas/MetricPoint" + type: array + resources: + description: A list of resources to associate with this metric. + items: + $ref: "#/components/schemas/MetricResource" + type: array + source_type_name: + description: The source type name. + example: "datadog" + type: string + tags: + description: A list of tags associated with the metric. + example: ["environment:test"] + items: + description: Individual tags. + type: string + type: array + type: + $ref: "#/components/schemas/MetricIntakeType" + unit: + description: The unit of point value. + example: "second" + type: string + required: + - metric + - points + type: object + MetricSuggestedAggregations: + description: |- + List of aggregation combinations that have been actively queried. + example: + - space: sum + time: sum + - space: sum + time: count + items: + $ref: "#/components/schemas/MetricCustomAggregation" + type: array + MetricSuggestedTagsAndAggregations: + description: Object for a single metric's actively queried tags and aggregations. + properties: + attributes: + $ref: "#/components/schemas/MetricSuggestedTagsAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricActiveConfigurationType" + type: object + MetricSuggestedTagsAndAggregationsResponse: + description: Response object that includes a single metric's actively queried tags and aggregations. + properties: + data: + $ref: "#/components/schemas/MetricSuggestedTagsAndAggregations" + readOnly: true + type: object + MetricSuggestedTagsAttributes: + description: Object containing the definition of a metric's actively queried tags and aggregations. + properties: + active_aggregations: + $ref: "#/components/schemas/MetricSuggestedAggregations" + active_tags: + description: List of tag keys that have been actively queried. + example: ["app", "datacenter"] + items: + description: Actively queried tag keys. + type: string + type: array + type: object + MetricTagCardinalitiesData: + description: A list of tag cardinalities associated with the given metric. + items: + $ref: "#/components/schemas/MetricTagCardinality" + type: array + MetricTagCardinalitiesMeta: + description: Response metadata object. + properties: + metric_name: + description: |- + The name of metric for which the tag cardinalities are returned. + This matches the metric name provided in the request. + type: string + type: object + MetricTagCardinalitiesResponse: + description: |- + Response object that includes an array of objects representing the cardinality details of a metric's tags. + properties: + data: + $ref: "#/components/schemas/MetricTagCardinalitiesData" + meta: + $ref: "#/components/schemas/MetricTagCardinalitiesMeta" + readOnly: true + type: object + MetricTagCardinality: + description: Object containing metadata and attributes related to a specific tag key associated with the metric. + example: + attributes: + cardinality_delta: 25 + id: http.request.latency + type: tag_cardinality + properties: + attributes: + $ref: "#/components/schemas/MetricTagCardinalityAttributes" + id: + description: The name of the tag key. + type: string + type: + default: tag_cardinality + description: This describes the endpoint action. + type: string + type: object + MetricTagCardinalityAttributes: + description: An object containing properties related to the tag key + properties: + cardinality_delta: + description: This describes the recent change in the tag keys cardinality + format: int64 + type: integer + type: object + MetricTagConfiguration: + description: Object for a single metric tag configuration. + example: + attributes: + aggregations: [{"space": "avg", "time": "avg"}] + created_at: "2020-03-25T09:48:37.463835Z" + metric_type: gauge + modified_at: "2020-04-25T09:48:37.463835Z" + tags: ["app", "datacenter"] + id: http.request.latency + type: manage_tags + properties: + attributes: + $ref: "#/components/schemas/MetricTagConfigurationAttributes" + id: + $ref: "#/components/schemas/MetricName" + relationships: + $ref: "#/components/schemas/MetricRelationships" + type: + $ref: "#/components/schemas/MetricTagConfigurationType" + type: object + MetricTagConfigurationAttributes: + description: Object containing the definition of a metric tag configuration attributes. + properties: + aggregations: + $ref: "#/components/schemas/MetricCustomAggregations" + created_at: + description: Timestamp when the tag configuration was created. + example: "2020-03-25T09:48:37.463835Z" + format: date-time + type: string + exclude_tags_mode: + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. + Defaults to false. Requires `tags` property. + type: boolean + include_percentiles: + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. + Only present when the `metric_type` is `distribution`. + example: true + type: boolean + metric_type: + $ref: "#/components/schemas/MetricTagConfigurationMetricTypes" + modified_at: + description: Timestamp when the tag configuration was last modified. + example: "2020-03-25T09:48:37.463835Z" + format: date-time + type: string + tags: + description: List of tag keys on which to group. + example: ["app", "datacenter"] + items: + description: Tag keys to group by. + type: string + type: array + type: object + MetricTagConfigurationCreateAttributes: + description: Object containing the definition of a metric tag configuration to be created. + properties: + aggregations: + $ref: "#/components/schemas/MetricCustomAggregations" + exclude_tags_mode: + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. + Defaults to false. Requires `tags` property. + type: boolean + include_percentiles: + description: |- + Toggle to include/exclude percentiles for a distribution metric. + Defaults to false. Can only be applied to metrics that have a `metric_type` of `distribution`. + example: true + type: boolean + metric_type: + $ref: "#/components/schemas/MetricTagConfigurationMetricTypes" + tags: + default: [] + description: A list of tag keys that will be queryable for your metric. + example: ["app", "datacenter"] + items: + description: Tag keys to group by. + type: string + type: array + required: + - tags + - metric_type + type: object + MetricTagConfigurationCreateData: + description: Object for a single metric to be configure tags on. + example: + attributes: + include_percentiles: false + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + properties: + attributes: + $ref: "#/components/schemas/MetricTagConfigurationCreateAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricTagConfigurationType" + required: + - id + - type + type: object + MetricTagConfigurationCreateRequest: + description: Request object that includes the metric that you would like to configure tags for. + properties: + data: + $ref: "#/components/schemas/MetricTagConfigurationCreateData" + required: + - data + type: object + MetricTagConfigurationMetricTypeCategory: + default: distribution + description: The metric's type category. + enum: + - non_distribution + - distribution + example: distribution + type: string + x-enum-varnames: + - NON_DISTRIBUTION + - DISTRIBUTION + MetricTagConfigurationMetricTypes: + default: gauge + description: The metric's type. + enum: + - gauge + - count + - rate + - distribution + example: count + type: string + x-enum-varnames: + - GAUGE + - COUNT + - RATE + - DISTRIBUTION + MetricTagConfigurationResponse: + description: Response object which includes a single metric's tag configuration. + properties: + data: + $ref: "#/components/schemas/MetricTagConfiguration" + readOnly: true + type: object + MetricTagConfigurationType: + default: manage_tags + description: The metric tag configuration resource type. + enum: + - manage_tags + example: manage_tags + type: string + x-enum-varnames: + - MANAGE_TAGS + MetricTagConfigurationUpdateAttributes: + description: Object containing the definition of a metric tag configuration to be updated. + properties: + aggregations: + $ref: "#/components/schemas/MetricCustomAggregations" + exclude_tags_mode: + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. + Defaults to false. Requires `tags` property. + type: boolean + include_percentiles: + description: |- + Toggle to include/exclude percentiles for a distribution metric. + Defaults to false. Can only be applied to metrics that have a `metric_type` of `distribution`. + example: true + type: boolean + tags: + default: [] + description: A list of tag keys that will be queryable for your metric. + example: ["app", "datacenter"] + items: + description: Tag keys to group by. + type: string + type: array + type: object + MetricTagConfigurationUpdateData: + description: Object for a single tag configuration to be edited. + example: + attributes: + group_by: + - app + - datacenter + include_percentiles: false + id: http.endpoint.request + type: manage_tags + properties: + attributes: + $ref: "#/components/schemas/MetricTagConfigurationUpdateAttributes" + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricTagConfigurationType" + required: + - id + - type + type: object + MetricTagConfigurationUpdateRequest: + description: Request object that includes the metric that you would like to edit the tag configuration on. + properties: + data: + $ref: "#/components/schemas/MetricTagConfigurationUpdateData" + required: + - data + type: object + MetricType: + default: metrics + description: The metric resource type. + enum: + - metrics + example: metrics + type: string + x-enum-varnames: + - METRICS + MetricVolumes: + description: Possible response objects for a metric's volume. + oneOf: + - $ref: "#/components/schemas/MetricDistinctVolume" + - $ref: "#/components/schemas/MetricIngestedIndexedVolume" + MetricVolumesRelationship: + description: Relationship to a metric volume included in the response. + properties: + data: + $ref: "#/components/schemas/MetricVolumesRelationshipData" + type: object + MetricVolumesRelationshipData: + description: Relationship data for a metric volume. + properties: + id: + $ref: "#/components/schemas/MetricName" + type: + $ref: "#/components/schemas/MetricIngestedIndexedVolumeType" + type: object + MetricVolumesResponse: + description: Response object which includes a single metric's volume. + properties: + data: + $ref: "#/components/schemas/MetricVolumes" + readOnly: true + type: object + MetricsAggregator: + default: "avg" + description: The type of aggregation that can be performed on metrics-based queries. + enum: + - avg + - min + - max + - sum + - last + - percentile + - mean + - l2norm + - area + example: "avg" + type: string + x-enum-varnames: + - AVG + - MIN + - MAX + - SUM + - LAST + - PERCENTILE + - MEAN + - L2NORM + - AREA + MetricsAndMetricTagConfigurations: + description: Object for a metrics and metric tag configurations. + oneOf: + - $ref: "#/components/schemas/Metric" + - $ref: "#/components/schemas/MetricTagConfiguration" + MetricsAndMetricTagConfigurationsResponse: + description: Response object that includes metrics and metric tag configurations. + properties: + data: + description: Array of metrics and metric tag configurations. + items: + $ref: "#/components/schemas/MetricsAndMetricTagConfigurations" + type: array + included: + description: Array of metric volume resources included when requested with `include=metric_volumes`. + items: + $ref: "#/components/schemas/MetricIngestedIndexedVolume" + type: array + links: + $ref: "#/components/schemas/MetricsListResponseLinks" + meta: + $ref: "#/components/schemas/MetricPaginationMeta" + readOnly: true + type: object + MetricsDataSource: + default: metrics + description: A data source that is powered by the Metrics platform. + enum: + - metrics + - cloud_cost + example: metrics + type: string + x-enum-varnames: + - METRICS + - CLOUD_COST + MetricsListResponseLinks: + description: Pagination links. Only present if pagination query parameters were provided. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to previous page. + nullable: true + type: string + self: + description: Link to current page. + type: string + type: object + MetricsScalarQuery: + description: A query against Datadog custom metrics or Cloud Cost data sources. + properties: + aggregator: + $ref: "#/components/schemas/MetricsAggregator" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/MetricsDataSource" + name: + description: The variable name for use in formulas. + type: string + query: + description: A classic metrics query string. + example: avg:system.cpu.user{*} by {env} + type: string + required: + - data_source + - query + - aggregator + type: object + MetricsTimeseriesQuery: + description: A query against Datadog custom metrics or Cloud Cost data sources. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/MetricsDataSource" + name: + description: The variable name for use in formulas. + type: string + query: + description: A classic metrics query string. + example: avg:system.cpu.user{*} by {env} + type: string + required: + - data_source + - query + type: object + MicrosoftSentinelDestination: + description: |- + The `microsoft_sentinel` destination forwards logs to Microsoft Sentinel. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + client_id: + description: Azure AD client ID used for authentication. + example: "a1b2c3d4-5678-90ab-cdef-1234567890ab" + type: string + client_secret_key: + description: Name of the environment variable or secret that holds the Azure AD client secret. + example: AZURE_CLIENT_SECRET + type: string + dce_uri_key: + description: Name of the environment variable or secret that holds the Data Collection Endpoint (DCE) URI. + example: DCE_URI + type: string + dcr_immutable_id: + description: The immutable ID of the Data Collection Rule (DCR). + example: "dcr-uuid-1234" + type: string + id: + description: The unique identifier for this component. + example: "sentinel-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + table: + description: The name of the Log Analytics table where logs are sent. + example: "CustomLogsTable" + type: string + tenant_id: + description: Azure AD tenant ID. + example: "abcdef12-3456-7890-abcd-ef1234567890" + type: string + type: + $ref: "#/components/schemas/MicrosoftSentinelDestinationType" + required: + - id + - type + - inputs + - client_id + - tenant_id + - dcr_immutable_id + - table + type: object + x-pipeline-types: [logs] + MicrosoftSentinelDestinationType: + default: microsoft_sentinel + description: The destination type. The value should always be `microsoft_sentinel`. + enum: + - microsoft_sentinel + example: microsoft_sentinel + type: string + x-enum-varnames: + - MICROSOFT_SENTINEL + MicrosoftTeamsChannelInfoResponseAttributes: + description: Channel attributes. + properties: + is_primary: + description: Indicates if this is the primary channel. + example: true + maxLength: 255 + type: boolean + team_id: + description: Team id. + example: "00000000-0000-0000-0000-000000000000" + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: "00000000-0000-0000-0000-000000000001" + maxLength: 255 + type: string + type: object + MicrosoftTeamsChannelInfoResponseData: + description: Channel data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsChannelInfoResponseAttributes" + id: + description: The ID of the channel. + example: "19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2" + maxLength: 255 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/MicrosoftTeamsChannelInfoType" + type: object + MicrosoftTeamsChannelInfoType: + default: ms-teams-channel-info + description: Channel info resource type. + enum: + - ms-teams-channel-info + example: ms-teams-channel-info + type: string + x-enum-varnames: + - MS_TEAMS_CHANNEL_INFO + MicrosoftTeamsConfigurationReference: + description: A reference to a Microsoft Teams Configuration resource. + nullable: true + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsConfigurationReferenceData" + required: + - data + type: object + MicrosoftTeamsConfigurationReferenceData: + description: The Microsoft Teams configuration relationship data object. + nullable: true + properties: + id: + description: The unique identifier of the Microsoft Teams configuration. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + description: The type of the Microsoft Teams configuration. + example: "microsoft_teams_configurations" + type: string + required: + - id + - type + type: object + MicrosoftTeamsCreateTenantBasedHandleRequest: + description: Create tenant-based handle request. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestData" + required: + - data + type: object + MicrosoftTeamsCreateWorkflowsWebhookHandleRequest: + description: Create Workflows webhook handle request. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestData" + required: + - data + type: object + MicrosoftTeamsGetChannelByNameResponse: + description: Response with channel, team, and tenant ID information. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsChannelInfoResponseData" + type: object + MicrosoftTeamsTenantBasedHandleAttributes: + description: Tenant-based handle attributes. + properties: + channel_id: + description: Channel id. + example: "fake-channel-id" + maxLength: 255 + type: string + name: + description: Tenant-based handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + team_id: + description: Team id. + example: "00000000-0000-0000-0000-000000000000" + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: "00000000-0000-0000-0000-000000000001" + maxLength: 255 + type: string + type: object + MicrosoftTeamsTenantBasedHandleInfoResponseAttributes: + description: Tenant-based handle attributes. + properties: + channel_id: + description: Channel id. + example: "fake-channel-id" + maxLength: 255 + type: string + channel_name: + description: Channel name. + example: "fake-channel-name" + maxLength: 255 + type: string + name: + description: Tenant-based handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + team_id: + description: Team id. + example: "00000000-0000-0000-0000-000000000000" + maxLength: 255 + type: string + team_name: + description: Team name. + example: "fake-team-name" + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: "00000000-0000-0000-0000-000000000001" + maxLength: 255 + type: string + tenant_name: + description: Tenant name. + example: "fake-tenant-name" + maxLength: 255 + type: string + type: object + MicrosoftTeamsTenantBasedHandleInfoResponseData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseAttributes" + id: + description: The ID of the tenant-based handle. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoType" + type: object + MicrosoftTeamsTenantBasedHandleInfoType: + default: ms-teams-tenant-based-handle-info + description: Tenant-based handle resource type. + enum: + - ms-teams-tenant-based-handle-info + example: ms-teams-tenant-based-handle-info + type: string + x-enum-varnames: + - MS_TEAMS_TENANT_BASED_HANDLE_INFO + MicrosoftTeamsTenantBasedHandleRequestAttributes: + description: Tenant-based handle attributes. + properties: + channel_id: + description: Channel id. + example: "fake-channel-id" + maxLength: 255 + type: string + name: + description: Tenant-based handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + team_id: + description: Team id. + example: "00000000-0000-0000-0000-000000000000" + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: "00000000-0000-0000-0000-000000000001" + maxLength: 255 + type: string + required: + - name + - channel_id + - team_id + - tenant_id + type: object + MicrosoftTeamsTenantBasedHandleRequestData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestAttributes" + type: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleType" + required: + - type + - attributes + type: object + MicrosoftTeamsTenantBasedHandleResponse: + description: Response of a tenant-based handle. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleResponseData" + required: + - data + type: object + MicrosoftTeamsTenantBasedHandleResponseData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes" + id: + description: The ID of the tenant-based handle. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleType" + type: object + MicrosoftTeamsTenantBasedHandleType: + default: tenant-based-handle + description: Specifies the tenant-based handle resource type. + enum: + - tenant-based-handle + example: tenant-based-handle + type: string + x-enum-varnames: + - TENANT_BASED_HANDLE + MicrosoftTeamsTenantBasedHandlesResponse: + description: Response with a list of tenant-based handles. + properties: + data: + description: An array of tenant-based handles. + example: [{"attributes": {"channelId": "19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2", "channelName": "General", "name": "general-handle", "teamId": "00000000-0000-0000-0000-000000000000", "teamName": "Example Team", "tenantId": "00000000-0000-0000-0000-000000000001", "tenantName": "Company, Inc."}, "id": "596da4af-0563-4097-90ff-07230c3f9db3", "type": "ms-teams-tenant-based-handle-info"}, {"attributes": {"channelId": "19:b41k24b14bn1nwffkernfkwrnfneubgk1@thread.tacv2", "channelName": "General2", "name": "general-handle-2", "teamId": "00000000-0000-0000-0000-000000000002", "teamName": "Example Team 2", "tenantId": "00000000-0000-0000-0000-000000000003", "tenantName": "Company, Inc."}, "id": "596da4af-0563-4097-90ff-07230c3f9db4", "type": "ms-teams-tenant-based-handle-info"}] + items: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseData" + type: array + required: + - data + type: object + MicrosoftTeamsUpdateTenantBasedHandleRequest: + description: Update tenant-based handle request. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequestData" + required: + - data + type: object + MicrosoftTeamsUpdateTenantBasedHandleRequestData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes" + type: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleType" + required: + - type + - attributes + type: object + MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest: + description: Update Workflows webhook handle request. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData" + required: + - data + type: object + MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData: + description: Workflows Webhook handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleAttributes" + type: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType" + required: + - type + - attributes + type: object + MicrosoftTeamsWorkflowsWebhookHandleAttributes: + description: Workflows Webhook handle attributes. + properties: + name: + description: Workflows Webhook handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + url: + description: Workflows Webhook URL. + example: "https://fake.url.com" + maxLength: 255 + type: string + type: object + MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes: + description: Workflows Webhook handle attributes. + properties: + name: + description: Workflows Webhook handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + url: + description: Workflows Webhook URL. + example: "https://fake.url.com" + maxLength: 255 + type: string + required: + - name + - url + type: object + MicrosoftTeamsWorkflowsWebhookHandleRequestData: + description: Workflows Webhook handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes" + type: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType" + required: + - type + - attributes + type: object + MicrosoftTeamsWorkflowsWebhookHandleResponse: + description: Response of a Workflows webhook handle. + properties: + data: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData" + required: + - data + type: object + MicrosoftTeamsWorkflowsWebhookHandleResponseData: + description: Workflows Webhook handle data from a response. + properties: + attributes: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookResponseAttributes" + id: + description: The ID of the Workflows webhook handle. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType" + type: object + MicrosoftTeamsWorkflowsWebhookHandleType: + default: workflows-webhook-handle + description: Specifies the Workflows webhook handle resource type. + enum: + - workflows-webhook-handle + example: workflows-webhook-handle + type: string + x-enum-varnames: + - WORKFLOWS_WEBHOOK_HANDLE + MicrosoftTeamsWorkflowsWebhookHandlesResponse: + description: Response with a list of Workflows webhook handles. + properties: + data: + description: An array of Workflows webhook handles. + example: [{"attributes": {"name": "general-handle"}, "id": "596da4af-0563-4097-90ff-07230c3f9db3", "type": "workflows-webhook-handle"}, {"attributes": {"name": "general-handle-2"}, "id": "596da4af-0563-4097-90ff-07230c3f9db4", "type": "workflows-webhook-handle"}] + items: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData" + type: array + required: + - data + type: object + MicrosoftTeamsWorkflowsWebhookResponseAttributes: + description: Workflows Webhook handle attributes. + properties: + name: + description: Workflows Webhook handle name. + example: "fake-handle-name" + maxLength: 255 + type: string + type: object + ModelLabArtifactInfo: + description: Information about a project-level artifact file. + properties: + artifact_path: + description: The full artifact path relative to the project's artifact root. + example: projects/1/artifacts/model.pkl + type: string + created_at: + description: The date and time the artifact was created. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + file_size: + description: The size of the file in bytes. + format: int64 + nullable: true + type: integer + filename: + description: The filename of the artifact. + example: model.pkl + type: string + required: + - filename + - artifact_path + - created_at + type: object + ModelLabArtifactObjectInfo: + description: Information about an artifact file or directory within a run. + properties: + file_size: + description: The size of the file in bytes. + format: int64 + nullable: true + type: integer + is_dir: + description: Whether this artifact entry is a directory. + example: false + type: boolean + path: + description: The path of the artifact relative to the run's artifact root. + example: model/weights.pt + type: string + required: + - path + - is_dir + type: object + ModelLabFacetKeysAttributes: + description: Available facet key names for filtering resources. + properties: + metrics: + description: The list of available metric facet keys. + example: + - accuracy + items: + type: string + nullable: true + type: array + parameters: + description: The list of available parameter facet keys. + example: + - learning_rate + items: + type: string + type: array + tags: + description: The list of available tag facet keys. + example: + - model + items: + type: string + type: array + required: + - parameters + - tags + - metrics + type: object + ModelLabFacetKeysData: + description: A facet keys JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabFacetKeysAttributes" + id: + description: The unique identifier of the facet keys resource. + example: "1" + type: string + type: + $ref: "#/components/schemas/ModelLabFacetKeysType" + required: + - id + - type + - attributes + type: object + ModelLabFacetKeysResponse: + description: Response containing available facet keys. + properties: + data: + $ref: "#/components/schemas/ModelLabFacetKeysData" + required: + - data + type: object + ModelLabFacetKeysType: + description: The JSON:API type for a facet keys resource. + enum: + - facet_keys + example: facet_keys + type: string + x-enum-varnames: + - FACET_KEYS + ModelLabFacetType: + description: The type of facet for filtering Model Lab runs. + enum: + - parameter + - attribute + - tag + - metric + example: tag + type: string + x-enum-varnames: + - PARAMETER + - ATTRIBUTE + - TAG + - METRIC + ModelLabFacetValuesAttributes: + description: Available values for a specific facet key. + properties: + facet_name: + description: The name of the facet. + example: model + type: string + facet_type: + description: The type of the facet. + example: tag + type: string + metric_stat_ranges: + description: The ranges for each metric statistic. + items: + $ref: "#/components/schemas/ModelLabMetricStatRange" + type: array + numeric_range: + $ref: "#/components/schemas/ModelLabNumericRange" + values: + description: The list of available string values for this facet. + example: + - gpt4 + items: + type: string + type: array + required: + - facet_type + - facet_name + - values + type: object + ModelLabFacetValuesData: + description: A facet values JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabFacetValuesAttributes" + id: + description: The unique identifier of the facet values resource. + example: "1" + type: string + type: + $ref: "#/components/schemas/ModelLabFacetValuesType" + required: + - id + - type + - attributes + type: object + ModelLabFacetValuesResponse: + description: Response containing available values for a facet key. + properties: + data: + $ref: "#/components/schemas/ModelLabFacetValuesData" + required: + - data + type: object + ModelLabFacetValuesType: + description: The JSON:API type for a facet values resource. + enum: + - facet_values + example: facet_values + type: string + x-enum-varnames: + - FACET_VALUES + ModelLabMetricStatRange: + description: The range of values for a specific metric statistic. + properties: + max: + description: The maximum value of the statistic. + example: 1.0 + format: double + type: number + min: + description: The minimum value of the statistic. + example: 0.0 + format: double + type: number + stat: + description: The metric statistic name. + example: mean + type: string + required: + - stat + - min + - max + type: object + ModelLabMetricSummary: + description: Summary statistics for a metric recorded during a Model Lab run. + properties: + count: + description: The total number of recorded values. + example: 100 + format: int64 + type: integer + first_step: + description: The first step at which the metric was recorded. + format: int64 + nullable: true + type: integer + key: + description: The metric name. + example: accuracy + type: string + last_step: + description: The last step at which the metric was recorded. + format: int64 + nullable: true + type: integer + latest: + description: The most recently recorded value. + format: double + nullable: true + type: number + max: + description: The maximum recorded value. + format: double + nullable: true + type: number + mean: + description: The mean of recorded values. + format: double + nullable: true + type: number + min: + description: The minimum recorded value. + format: double + nullable: true + type: number + stddev: + description: The standard deviation of recorded values. + format: double + nullable: true + type: number + required: + - key + - count + type: object + ModelLabNumericRange: + description: The numeric range of values for a facet. + properties: + max: + description: The maximum value. + example: 1.0 + format: double + type: number + min: + description: The minimum value. + example: 0.0 + format: double + type: number + required: + - min + - max + type: object + ModelLabPageMeta: + description: Pagination metadata for a list response. + properties: + page: + $ref: "#/components/schemas/ModelLabPageMetaPage" + required: + - page + type: object + ModelLabPageMetaPage: + description: Pagination details for a list response. + properties: + first_number: + description: The first page number. + format: int64 + type: integer + last_number: + description: The last page number. + format: int64 + type: integer + next_number: + description: The next page number. + format: int64 + nullable: true + type: integer + number: + description: The current page number. + example: 1 + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + nullable: true + type: integer + size: + description: The number of items per page. + example: 25 + format: int64 + type: integer + total: + description: The total number of items. + example: 100 + format: int64 + type: integer + type: + description: The pagination type. + type: string + required: + - number + - size + - total + type: object + ModelLabPaginationLinks: + description: Pagination links for navigating list responses. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + type: string + type: object + ModelLabProjectArtifactsAttributes: + description: Artifact listing for a Model Lab project. + properties: + files: + description: The list of artifact files associated with the project. + items: + $ref: "#/components/schemas/ModelLabArtifactInfo" + type: array + required: + - files + type: object + ModelLabProjectArtifactsData: + description: A project artifacts JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabProjectArtifactsAttributes" + id: + description: The unique identifier of the project artifacts resource. + example: "1" + type: string + type: + $ref: "#/components/schemas/ModelLabProjectArtifactsType" + required: + - id + - type + - attributes + type: object + ModelLabProjectArtifactsResponse: + description: Response containing the artifact listing for a Model Lab project. + properties: + data: + $ref: "#/components/schemas/ModelLabProjectArtifactsData" + required: + - data + type: object + ModelLabProjectArtifactsType: + description: The JSON:API type for a project artifacts resource. + enum: + - project_files + example: project_files + type: string + x-enum-varnames: + - PROJECT_FILES + ModelLabProjectAttributes: + description: Attributes of a Model Lab project. + properties: + artifact_storage_location: + description: The storage location for project artifacts. + example: s3://bucket/active-project + type: string + created_at: + description: The date and time the project was created. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + deleted_at: + description: The date and time the project was soft-deleted. + format: date-time + nullable: true + type: string + description: + description: A description of the project. + example: A machine learning training project. + type: string + external_url: + description: An optional external URL associated with the project. + nullable: true + type: string + is_starred: + description: Whether the project is starred by the current user. + example: false + type: boolean + name: + description: The name of the project. + example: active-project + type: string + owner_id: + description: The UUID of the project owner. + nullable: true + type: string + tags: + description: The list of tags associated with the project. + items: + $ref: "#/components/schemas/ModelLabTag" + type: array + updated_at: + description: The date and time the project was last updated. + example: "2024-01-20T11:00:00Z" + format: date-time + type: string + required: + - name + - description + - artifact_storage_location + - created_at + - updated_at + - tags + - is_starred + type: object + ModelLabProjectData: + description: A Model Lab project JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabProjectAttributes" + id: + description: The unique identifier of the project. + example: "2" + type: string + type: + $ref: "#/components/schemas/ModelLabProjectType" + required: + - id + - type + - attributes + type: object + ModelLabProjectFacetType: + description: The type of facet for filtering Model Lab projects. + enum: + - tag + example: tag + type: string + x-enum-varnames: + - TAG + ModelLabProjectResponse: + description: Response containing a single Model Lab project. + properties: + data: + $ref: "#/components/schemas/ModelLabProjectData" + required: + - data + type: object + ModelLabProjectType: + description: The JSON:API type for a Model Lab project resource. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + ModelLabProjectsResponse: + description: Response containing a list of Model Lab projects with pagination metadata. + properties: + data: + description: The list of projects. + items: + $ref: "#/components/schemas/ModelLabProjectData" + type: array + links: + $ref: "#/components/schemas/ModelLabPaginationLinks" + meta: + $ref: "#/components/schemas/ModelLabPageMeta" + required: + - data + - meta + type: object + ModelLabRunArtifactsAttributes: + description: Artifact listing for a Model Lab run. + properties: + files: + description: The list of artifact files and directories. + items: + $ref: "#/components/schemas/ModelLabArtifactObjectInfo" + type: array + path_in_project: + description: The path of the run's artifacts relative to the project's artifact root. + example: runs/42 + type: string + required: + - path_in_project + - files + type: object + ModelLabRunArtifactsData: + description: A run artifacts JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabRunArtifactsAttributes" + id: + description: The unique identifier of the artifacts resource. + example: "42" + type: string + type: + $ref: "#/components/schemas/ModelLabRunArtifactsType" + required: + - id + - type + - attributes + type: object + ModelLabRunArtifactsResponse: + description: Response containing the artifact listing for a Model Lab run. + properties: + data: + $ref: "#/components/schemas/ModelLabRunArtifactsData" + required: + - data + type: object + ModelLabRunArtifactsType: + description: The JSON:API type for a run artifacts resource. + enum: + - artifacts + example: artifacts + type: string + x-enum-varnames: + - ARTIFACTS + ModelLabRunAttributes: + description: Attributes of a Model Lab run. + properties: + completed_at: + description: The date and time the run completed. + format: date-time + nullable: true + type: string + created_at: + description: The date and time the run was created. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + deleted_at: + description: The date and time the run was soft-deleted. + format: date-time + nullable: true + type: string + descendant_match: + description: Whether a descendant run matched the applied filters. + example: false + type: boolean + description: + description: A description of the run. + example: Fine-tuning run with custom hyperparameters. + type: string + duration: + description: The duration of the run in seconds. + format: double + nullable: true + type: number + external_url: + description: An optional external URL associated with the run. + nullable: true + type: string + has_children: + description: Whether the run has child runs. + example: false + type: boolean + is_pinned: + description: Whether the run is pinned by the current user. + example: false + type: boolean + metric_summaries: + description: Summary statistics for metrics recorded during the run. + items: + $ref: "#/components/schemas/ModelLabMetricSummary" + type: array + mlflow_artifact_location: + description: The MLflow artifact storage location for this run. + example: s3://bucket/active-run + type: string + name: + description: The name of the run. + example: training-run-1 + type: string + owner_id: + description: The UUID of the run owner. + nullable: true + type: string + params: + description: The list of parameters used for the run. + items: + $ref: "#/components/schemas/ModelLabRunParam" + nullable: true + type: array + project_id: + description: The ID of the project this run belongs to. + example: 101 + format: int64 + type: integer + started_at: + description: The date and time the run started. + example: "2024-01-20T10:00:00Z" + format: date-time + type: string + status: + $ref: "#/components/schemas/ModelLabRunStatus" + tags: + description: The list of tags associated with the run. + items: + $ref: "#/components/schemas/ModelLabTag" + type: array + updated_at: + description: The date and time the run was last updated. + example: "2024-01-20T11:00:00Z" + format: date-time + type: string + required: + - project_id + - name + - description + - status + - mlflow_artifact_location + - started_at + - created_at + - updated_at + - tags + - params + - metric_summaries + - is_pinned + - has_children + - descendant_match + type: object + ModelLabRunData: + description: A Model Lab run JSON:API resource object. + properties: + attributes: + $ref: "#/components/schemas/ModelLabRunAttributes" + id: + description: The unique identifier of the run. + example: "42" + type: string + type: + $ref: "#/components/schemas/ModelLabRunType" + required: + - id + - type + - attributes + type: object + ModelLabRunParam: + description: A key-value parameter for a Model Lab run. + properties: + key: + description: The parameter key. + example: algorithm + type: string + value: + description: The parameter value. + example: gpt4 + type: string + required: + - key + - value + type: object + ModelLabRunResponse: + description: Response containing a single Model Lab run. + properties: + data: + $ref: "#/components/schemas/ModelLabRunData" + required: + - data + type: object + ModelLabRunStatus: + description: The status of a Model Lab run. + enum: + - pending + - running + - completed + - failed + - killed + - unresponsive + - paused + example: running + type: string + x-enum-varnames: + - PENDING + - RUNNING + - COMPLETED + - FAILED + - KILLED + - UNRESPONSIVE + - PAUSED + ModelLabRunType: + description: The JSON:API type for a Model Lab run resource. + enum: + - runs + example: runs + type: string + x-enum-varnames: + - RUNS + ModelLabRunsResponse: + description: Response containing a list of Model Lab runs with pagination metadata. + properties: + data: + description: The list of runs. + items: + $ref: "#/components/schemas/ModelLabRunData" + type: array + links: + $ref: "#/components/schemas/ModelLabPaginationLinks" + meta: + $ref: "#/components/schemas/ModelLabPageMeta" + required: + - data + - meta + type: object + ModelLabTag: + description: A key-value tag attached to a resource. + properties: + key: + description: The tag key. + example: model + type: string + value: + description: The tag value. + example: opus + type: string + required: + - key + - value + type: object + MonitorAlertTriggerAttributes: + description: Attributes for a monitor alert trigger. + properties: + event_id: + description: The event ID associated with the monitor alert. + example: "1234567890123456789" + type: string + event_ts: + description: The timestamp of the event in Unix milliseconds. + example: 1700000000000 + format: int64 + type: integer + monitor_id: + description: The monitor ID that triggered the alert. + example: 12345678 + format: int64 + type: integer + required: + - monitor_id + - event_id + - event_ts + type: object + MonitorConfigPolicyAttributeCreateRequest: + description: Policy and policy type for a monitor configuration policy. + properties: + policy: + $ref: "#/components/schemas/MonitorConfigPolicyPolicyCreateRequest" + policy_type: + $ref: "#/components/schemas/MonitorConfigPolicyType" + required: + - policy_type + - policy + type: object + MonitorConfigPolicyAttributeEditRequest: + description: Policy and policy type for a monitor configuration policy. + properties: + policy: + $ref: "#/components/schemas/MonitorConfigPolicyPolicy" + policy_type: + $ref: "#/components/schemas/MonitorConfigPolicyType" + required: + - policy_type + - policy + type: object + MonitorConfigPolicyAttributeResponse: + description: Policy and policy type for a monitor configuration policy. + properties: + policy: + $ref: "#/components/schemas/MonitorConfigPolicyPolicy" + policy_type: + $ref: "#/components/schemas/MonitorConfigPolicyType" + type: object + MonitorConfigPolicyCreateData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: "#/components/schemas/MonitorConfigPolicyAttributeCreateRequest" + type: + $ref: "#/components/schemas/MonitorConfigPolicyResourceType" + required: + - type + - attributes + type: object + MonitorConfigPolicyCreateRequest: + description: Request for creating a monitor configuration policy. + properties: + data: + $ref: "#/components/schemas/MonitorConfigPolicyCreateData" + required: + - data + type: object + MonitorConfigPolicyEditData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: "#/components/schemas/MonitorConfigPolicyAttributeEditRequest" + id: + description: ID of this monitor configuration policy. + example: "00000000-0000-1234-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/MonitorConfigPolicyResourceType" + required: + - id + - type + - attributes + type: object + MonitorConfigPolicyEditRequest: + description: Request for editing a monitor configuration policy. + properties: + data: + $ref: "#/components/schemas/MonitorConfigPolicyEditData" + required: + - data + type: object + MonitorConfigPolicyListResponse: + description: Response for retrieving all monitor configuration policies. + properties: + data: + description: An array of monitor configuration policies. + items: + $ref: "#/components/schemas/MonitorConfigPolicyResponseData" + type: array + type: object + MonitorConfigPolicyPolicy: + description: Configuration for the policy. + oneOf: + - $ref: "#/components/schemas/MonitorConfigPolicyTagPolicy" + MonitorConfigPolicyPolicyCreateRequest: + description: Configuration for the policy. + oneOf: + - $ref: "#/components/schemas/MonitorConfigPolicyTagPolicyCreateRequest" + MonitorConfigPolicyResourceType: + default: monitor-config-policy + description: Monitor configuration policy resource type. + enum: + - monitor-config-policy + example: "monitor-config-policy" + type: string + x-enum-varnames: + - MONITOR_CONFIG_POLICY + MonitorConfigPolicyResponse: + description: Response for retrieving a monitor configuration policy. + properties: + data: + $ref: "#/components/schemas/MonitorConfigPolicyResponseData" + type: object + MonitorConfigPolicyResponseData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: "#/components/schemas/MonitorConfigPolicyAttributeResponse" + id: + description: ID of this monitor configuration policy. + example: "00000000-0000-1234-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/MonitorConfigPolicyResourceType" + type: object + MonitorConfigPolicyTagPolicy: + description: Tag attributes of a monitor configuration policy. + properties: + tag_key: + description: The key of the tag. + example: datacenter + maxLength: 255 + type: string + tag_key_required: + description: If a tag key is required for monitor creation. + example: true + type: boolean + valid_tag_values: + description: Valid values for the tag. + example: ["prod", "staging"] + items: + description: A valid tag value for the monitor configuration policy. + maxLength: 255 + type: string + type: array + type: object + MonitorConfigPolicyTagPolicyCreateRequest: + description: Tag attributes of a monitor configuration policy. + properties: + tag_key: + description: The key of the tag. + example: datacenter + maxLength: 255 + type: string + tag_key_required: + description: If a tag key is required for monitor creation. + example: true + type: boolean + valid_tag_values: + description: Valid values for the tag. + example: ["prod", "staging"] + items: + description: A valid tag value for the monitor configuration policy. + maxLength: 255 + type: string + type: array + required: + - tag_key + - tag_key_required + - valid_tag_values + type: object + MonitorConfigPolicyType: + default: tag + description: The monitor configuration policy type. + enum: + - tag + example: "tag" + type: string + x-enum-varnames: + - TAG + MonitorDowntimeMatchResourceType: + default: downtime_match + description: Monitor Downtime Match resource type. + enum: + - downtime_match + example: "downtime_match" + type: string + x-enum-varnames: + - DOWNTIME_MATCH + MonitorDowntimeMatchResponse: + description: Response for retrieving all downtime matches for a monitor. + properties: + data: + description: An array of downtime matches. + items: + $ref: "#/components/schemas/MonitorDowntimeMatchResponseData" + type: array + meta: + $ref: "#/components/schemas/DowntimeMeta" + type: object + MonitorDowntimeMatchResponseAttributes: + description: Downtime match details. + properties: + end: + description: The end of the downtime. + example: 2020-01-02 03:04:00+00:00 + format: date-time + nullable: true + type: string + groups: + description: An array of groups associated with the downtime. + example: ["service:postgres", "team:frontend"] + items: + description: An array of groups. + example: "service:postgres" + type: string + type: array + scope: + $ref: "#/components/schemas/DowntimeScope" + start: + description: The start of the downtime. + example: 2020-01-02 03:04:00+00:00 + format: date-time + type: string + type: object + MonitorDowntimeMatchResponseData: + description: A downtime match. + properties: + attributes: + $ref: "#/components/schemas/MonitorDowntimeMatchResponseAttributes" + id: + description: The downtime ID. + example: "00000000-0000-1234-0000-000000000000" + nullable: true + type: string + type: + $ref: "#/components/schemas/MonitorDowntimeMatchResourceType" + type: object + MonitorNotificationRuleAttributes: + additionalProperties: false + description: Attributes of the monitor notification rule. + properties: + bundle_config: + $ref: "#/components/schemas/MonitorNotificationRuleBundleConfig" + conditional_recipients: + $ref: "#/components/schemas/MonitorNotificationRuleConditionalRecipients" + filter: + $ref: "#/components/schemas/MonitorNotificationRuleFilter" + name: + $ref: "#/components/schemas/MonitorNotificationRuleName" + recipients: + $ref: "#/components/schemas/MonitorNotificationRuleRecipients" + required: [name] + type: object + MonitorNotificationRuleBundleConfig: + description: |- + Use bundle config to enable alert bundling to reduce monitor signal noises. **Note**: This feature is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + properties: + duration: + description: Duration of the bundling period. + example: 3600 + format: int32 + maximum: 2147483647 + type: integer + required: [duration] + type: object + MonitorNotificationRuleCondition: + description: |- + A conditional recipient rule composed of a `scope` (the matching condition) and + `recipients` (who to notify when it matches). + properties: + recipients: + $ref: "#/components/schemas/MonitorNotificationRuleRecipients" + description: A list of recipients to notify. Uses the same format as the monitor `message` field. Must not start with an '@'. + scope: + $ref: "#/components/schemas/MonitorNotificationRuleConditionScope" + required: [scope, recipients] + type: object + MonitorNotificationRuleConditionScope: + description: |- + Defines the condition under which the recipients are notified. Supported formats: + - Monitor status condition using `transition_type:`, for example `transition_type:is_alert`. + - A single tag key:value pair, for example `env:prod`. + example: transition_type:is_alert + maxLength: 3000 + minLength: 1 + type: string + MonitorNotificationRuleConditionalRecipients: + description: |- + Use conditional recipients to define different recipients for different situations. Cannot be used with `recipients`. + properties: + conditions: + description: Conditions of the notification rule. + items: + $ref: "#/components/schemas/MonitorNotificationRuleCondition" + maxItems: 10 + minItems: 1 + type: array + fallback_recipients: + $ref: "#/components/schemas/MonitorNotificationRuleRecipients" + description: If none of the `conditions` applied, `fallback_recipients` will get notified. + required: [conditions] + type: object + MonitorNotificationRuleCreateRequest: + description: Request for creating a monitor notification rule. + properties: + data: + $ref: "#/components/schemas/MonitorNotificationRuleCreateRequestData" + required: [data] + type: object + MonitorNotificationRuleCreateRequestData: + description: Object to create a monitor notification rule. + properties: + attributes: + $ref: "#/components/schemas/MonitorNotificationRuleAttributes" + type: + $ref: "#/components/schemas/MonitorNotificationRuleResourceType" + required: [attributes] + type: object + MonitorNotificationRuleData: + description: Monitor notification rule data. + properties: + attributes: + $ref: "#/components/schemas/MonitorNotificationRuleResponseAttributes" + id: + $ref: "#/components/schemas/MonitorNotificationRuleId" + relationships: + $ref: "#/components/schemas/MonitorNotificationRuleRelationships" + type: + $ref: "#/components/schemas/MonitorNotificationRuleResourceType" + type: object + MonitorNotificationRuleFilter: + description: Specifies the matching criteria for monitor notifications. + oneOf: + - $ref: "#/components/schemas/MonitorNotificationRuleFilterTags" + - $ref: "#/components/schemas/MonitorNotificationRuleFilterScope" + MonitorNotificationRuleFilterScope: + additionalProperties: false + description: Filters monitor notifications using a scope expression over key:value pairs with boolean logic (AND, OR, NOT). + properties: + scope: + description: |- + A scope expression composed by key:value pairs (e.g. `service:foo`) with boolean operators (AND, OR, NOT) and parentheses for grouping. + example: service:(foo OR bar) AND team:test NOT environment:staging + maxLength: 3000 + minLength: 1 + type: string + required: [scope] + type: object + MonitorNotificationRuleFilterTags: + additionalProperties: false + description: Filters monitor notifications by a list of tag key:value pairs. + properties: + tags: + description: |- + A list of tag key:value pairs (e.g. `team:product`). All tags must match (AND semantics). + example: [team:product, host:abc] + items: + description: A tag key:value pair to match against monitor notifications. + maxLength: 255 + type: string + maxItems: 20 + minItems: 1 + type: array + uniqueItems: true + required: [tags] + type: object + MonitorNotificationRuleId: + description: The ID of the monitor notification rule. + example: 00000000-0000-1234-0000-000000000000 + type: string + MonitorNotificationRuleListResponse: + description: Response for retrieving all monitor notification rules. + properties: + data: + description: A list of monitor notification rules. + items: + $ref: "#/components/schemas/MonitorNotificationRuleData" + type: array + included: + description: Array of objects related to the monitor notification rules. + items: + $ref: "#/components/schemas/MonitorNotificationRuleResponseIncludedItem" + type: array + type: object + MonitorNotificationRuleName: + description: The name of the monitor notification rule. + example: A notification rule name + maxLength: 1000 + minLength: 1 + type: string + MonitorNotificationRuleRecipients: + description: |- + A list of recipients to notify. Uses the same format as the monitor `message` field. Must not start with an '@'. Cannot be used with `conditional_recipients`. + example: [slack-test-channel, jira-test] + items: + description: individual recipient. + maxLength: 255 + type: string + maxItems: 20 + minItems: 1 + type: array + uniqueItems: true + MonitorNotificationRuleRelationships: + description: All relationships associated with monitor notification rule. + properties: + created_by: + $ref: "#/components/schemas/MonitorNotificationRuleRelationshipsCreatedBy" + type: object + MonitorNotificationRuleRelationshipsCreatedBy: + description: The user who created the monitor notification rule. + properties: + data: + $ref: "#/components/schemas/MonitorNotificationRuleRelationshipsCreatedByData" + type: object + MonitorNotificationRuleRelationshipsCreatedByData: + description: Data for the user who created the monitor notification rule. + nullable: true + properties: + id: + description: User ID of the monitor notification rule creator. + example: "00000000-0000-1234-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UsersType" + type: object + MonitorNotificationRuleResourceType: + default: monitor-notification-rule + description: Monitor notification rule resource type. + enum: [monitor-notification-rule] + example: monitor-notification-rule + type: string + x-enum-varnames: [MONITOR_NOTIFICATION_RULE] + MonitorNotificationRuleResponse: + description: A monitor notification rule. + properties: + data: + $ref: "#/components/schemas/MonitorNotificationRuleData" + included: + description: Array of objects related to the monitor notification rule that the user requested. + items: + $ref: "#/components/schemas/MonitorNotificationRuleResponseIncludedItem" + type: array + type: object + MonitorNotificationRuleResponseAttributes: + additionalProperties: {} + description: Attributes of the monitor notification rule. + properties: + bundle_config: + $ref: "#/components/schemas/MonitorNotificationRuleBundleConfig" + conditional_recipients: + $ref: "#/components/schemas/MonitorNotificationRuleConditionalRecipients" + created: + description: Creation time of the monitor notification rule. + example: 2020-01-02 03:04:00+00:00 + format: date-time + type: string + filter: + $ref: "#/components/schemas/MonitorNotificationRuleFilter" + modified: + description: Time the monitor notification rule was last modified. + example: 2020-01-02 03:04:00+00:00 + format: date-time + type: string + name: + $ref: "#/components/schemas/MonitorNotificationRuleName" + recipients: + $ref: "#/components/schemas/MonitorNotificationRuleRecipients" + type: object + MonitorNotificationRuleResponseIncludedItem: + description: An object related to a monitor notification rule. + oneOf: + - $ref: "#/components/schemas/User" + MonitorNotificationRuleUpdateRequest: + description: Request for updating a monitor notification rule. + properties: + data: + $ref: "#/components/schemas/MonitorNotificationRuleUpdateRequestData" + required: [data] + type: object + MonitorNotificationRuleUpdateRequestData: + description: Object to update a monitor notification rule. + properties: + attributes: + $ref: "#/components/schemas/MonitorNotificationRuleAttributes" + id: + $ref: "#/components/schemas/MonitorNotificationRuleId" + type: + $ref: "#/components/schemas/MonitorNotificationRuleResourceType" + required: [id, attributes] + type: object + MonitorTrigger: + description: "Trigger a workflow from a Monitor. For automatic triggering a handle must be configured and the workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + MonitorTriggerWrapper: + description: "Schema for a Monitor-based trigger." + properties: + monitorTrigger: + $ref: "#/components/schemas/MonitorTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - monitorTrigger + type: object + MonitorType: + description: |- + Attributes from the monitor that triggered the event. + nullable: true + properties: + created_at: + description: The POSIX timestamp of the monitor's creation in nanoseconds. + example: 1646318692000 + format: int64 + type: integer + group_status: + description: Monitor group status used when there is no `result_groups`. + format: int32 + maximum: 2147483647 + type: integer + groups: + description: Groups to which the monitor belongs. + items: + description: A group. + type: string + type: array + id: + description: The monitor ID. + format: int64 + type: integer + message: + description: The monitor message. + type: string + modified: + description: The monitor's last-modified timestamp. + format: int64 + type: integer + name: + description: The monitor name. + type: string + query: + description: The query that triggers the alert. + type: string + tags: + description: A list of tags attached to the monitor. + example: ["environment:test"] + items: + description: A tag. + type: string + type: array + templated_name: + description: The templated name of the monitor before resolving any template variables. + type: string + type: + description: The monitor type. + type: string + type: object + MonitorUserTemplate: + additionalProperties: {} + description: A monitor user template object. + properties: + created: + $ref: "#/components/schemas/MonitorUserTemplateCreated" + description: + $ref: "#/components/schemas/MonitorUserTemplateDescription" + modified: + $ref: "#/components/schemas/MonitorUserTemplateModified" + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: {"message": "You may need to add web hosts if this is consistently high.", "name": "Bytes received on host0", "query": "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100", "type": "query alert"} + type: object + tags: + $ref: "#/components/schemas/MonitorUserTemplateTags" + template_variables: + $ref: "#/components/schemas/MonitorUserTemplateTemplateVariables" + title: + $ref: "#/components/schemas/MonitorUserTemplateTitle" + version: + $ref: "#/components/schemas/MonitorUserTemplateVersion" + versions: + description: All versions of the monitor user template. + items: + $ref: "#/components/schemas/SimpleMonitorUserTemplate" + type: array + type: object + MonitorUserTemplateCreateData: + description: Monitor user template data. + properties: + attributes: + $ref: "#/components/schemas/MonitorUserTemplateRequestAttributes" + type: + $ref: "#/components/schemas/MonitorUserTemplateResourceType" + required: + - type + - attributes + type: object + MonitorUserTemplateCreateRequest: + description: Request for creating a monitor user template. + properties: + data: + $ref: "#/components/schemas/MonitorUserTemplateCreateData" + required: + - data + type: object + MonitorUserTemplateCreateResponse: + description: Response for creating a monitor user template. + properties: + data: + $ref: "#/components/schemas/MonitorUserTemplateResponseData" + type: object + MonitorUserTemplateCreated: + description: The created timestamp of the template. + example: "2024-01-02T03:04:23.274966+00:00" + format: date-time + readOnly: true + type: string + MonitorUserTemplateDescription: + description: A brief description of the monitor user template. + example: "This is a template for monitoring user activity." + nullable: true + type: string + MonitorUserTemplateId: + description: The unique identifier. + example: "00000000-0000-1234-0000-000000000000" + type: string + MonitorUserTemplateListResponse: + description: Response for retrieving all monitor user templates. + properties: + data: + description: An array of monitor user templates. + items: + $ref: "#/components/schemas/MonitorUserTemplateResponseData" + type: array + type: object + MonitorUserTemplateModified: + description: The last modified timestamp. When the template version was created. + example: "2024-02-02T03:04:23.274966+00:00" + format: date-time + readOnly: true + type: string + MonitorUserTemplateRequestAttributes: + additionalProperties: false + description: Attributes for a monitor user template. + properties: + description: + $ref: "#/components/schemas/MonitorUserTemplateDescription" + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: {"message": "You may need to add web hosts if this is consistently high.", "name": "Bytes received on host0", "query": "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100", "type": "query alert"} + type: object + tags: + $ref: "#/components/schemas/MonitorUserTemplateTags" + template_variables: + $ref: "#/components/schemas/MonitorUserTemplateTemplateVariables" + title: + $ref: "#/components/schemas/MonitorUserTemplateTitle" + required: + - title + - monitor_definition + - tags + type: object + MonitorUserTemplateResourceType: + default: monitor-user-template + description: Monitor user template resource type. + enum: + - monitor-user-template + example: "monitor-user-template" + type: string + x-enum-varnames: + - MONITOR_USER_TEMPLATE + MonitorUserTemplateResponse: + description: Response for retrieving a monitor user template. + properties: + data: + $ref: "#/components/schemas/MonitorUserTemplateResponseDataWithVersions" + type: object + MonitorUserTemplateResponseAttributes: + additionalProperties: {} + description: Attributes for a monitor user template. + properties: + created: + $ref: "#/components/schemas/MonitorUserTemplateCreated" + description: + $ref: "#/components/schemas/MonitorUserTemplateDescription" + modified: + $ref: "#/components/schemas/MonitorUserTemplateModified" + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: {"message": "You may need to add web hosts if this is consistently high.", "name": "Bytes received on host0", "query": "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100", "type": "query alert"} + type: object + tags: + $ref: "#/components/schemas/MonitorUserTemplateTags" + template_variables: + $ref: "#/components/schemas/MonitorUserTemplateTemplateVariables" + title: + $ref: "#/components/schemas/MonitorUserTemplateTitle" + version: + $ref: "#/components/schemas/MonitorUserTemplateVersion" + type: object + MonitorUserTemplateResponseData: + description: Monitor user template list response data. + properties: + attributes: + $ref: "#/components/schemas/MonitorUserTemplateResponseAttributes" + id: + $ref: "#/components/schemas/MonitorUserTemplateId" + type: + $ref: "#/components/schemas/MonitorUserTemplateResourceType" + type: object + MonitorUserTemplateResponseDataWithVersions: + description: Monitor user template data. + properties: + attributes: + $ref: "#/components/schemas/MonitorUserTemplate" + id: + $ref: "#/components/schemas/MonitorUserTemplateId" + type: + $ref: "#/components/schemas/MonitorUserTemplateResourceType" + type: object + MonitorUserTemplateTags: + description: The definition of `MonitorUserTemplateTags` object. + example: ["product:Our Custom App", "integration:Azure"] + items: + description: |- + Tags associated with the monitor user template. Must be key value. Only 'product' and 'integration' keys are + allowed. The value is the name of the category to display the template under. Integrations can be filtered out in the UI. + (Review note: This modeling of 'categories' is subject to change.) + example: "us-east1" + minLength: 1 + type: string + uniqueItems: true + type: array + MonitorUserTemplateTemplateVariables: + description: The definition of `MonitorUserTemplateTemplateVariables` object. + items: + $ref: "#/components/schemas/MonitorUserTemplateTemplateVariablesItems" + type: array + MonitorUserTemplateTemplateVariablesItems: + additionalProperties: false + description: List of objects representing template variables on the monitor which can have selectable values. + properties: + available_values: + description: Available values for the variable. + example: ["value1", "value2"] + items: + description: An available value for the template variable. + minLength: 1 + type: string + uniqueItems: true + type: array + defaults: + description: Default values of the template variable. + example: ["defaultValue"] + items: + description: A default value for the template variable. + minLength: 0 + type: string + uniqueItems: true + type: array + name: + description: The name of the template variable. + example: "regionName" + type: string + tag_key: + description: |- + The tag key associated with the variable. This works the same as dashboard template variables. + example: "datacenter" + type: string + required: + - name + type: object + MonitorUserTemplateTitle: + description: The title of the monitor user template. + example: "Postgres CPU Monitor" + type: string + MonitorUserTemplateUpdateData: + description: Monitor user template data. + properties: + attributes: + $ref: "#/components/schemas/MonitorUserTemplateRequestAttributes" + id: + $ref: "#/components/schemas/MonitorUserTemplateId" + type: + $ref: "#/components/schemas/MonitorUserTemplateResourceType" + required: + - id + - type + - attributes + type: object + MonitorUserTemplateUpdateRequest: + description: Request for creating a new monitor user template version. + properties: + data: + $ref: "#/components/schemas/MonitorUserTemplateUpdateData" + required: + - data + type: object + MonitorUserTemplateVersion: + description: The version of the monitor user template. + example: 0 + format: int64 + nullable: true + readOnly: true + type: integer + MonthlyCostAttributionAttributes: + description: Cost Attribution by Tag for a given organization. + properties: + month: + description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`." + format: date-time + type: string + org_name: + description: The name of the organization. + type: string + public_id: + description: The organization public ID. + type: string + tag_config_source: + description: The source of the cost attribution tag configuration and the selected tags in the format `::://////`. + type: string + tags: + $ref: "#/components/schemas/CostAttributionTagNames" + updated_at: + description: Shows the most recent hour in the current months for all organizations for which all costs were calculated. + type: string + values: + description: |- + Fields in Cost Attribution by tag(s). Example: `infra_host_on_demand_cost`, `infra_host_committed_cost`, `infra_host_total_cost`, `infra_host_percentage_in_org`, `infra_host_percentage_in_account`. + type: object + type: object + MonthlyCostAttributionBody: + description: Cost data. + properties: + attributes: + $ref: "#/components/schemas/MonthlyCostAttributionAttributes" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/CostAttributionType" + type: object + MonthlyCostAttributionMeta: + description: The object containing document metadata. + properties: + aggregates: + $ref: "#/components/schemas/CostAttributionAggregates" + pagination: + $ref: "#/components/schemas/MonthlyCostAttributionPagination" + type: object + MonthlyCostAttributionPagination: + description: The metadata for the current pagination. + properties: + next_record_id: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of the `next_record_id`. + nullable: true + type: string + type: object + MonthlyCostAttributionResponse: + description: Response containing the monthly cost attribution by tag(s). + properties: + data: + description: Response containing cost attribution. + items: + $ref: "#/components/schemas/MonthlyCostAttributionBody" + type: array + meta: + $ref: "#/components/schemas/MonthlyCostAttributionMeta" + type: object + MuteDataType: + default: mute + description: Mute resource type. + enum: + - mute + example: mute + type: string + x-enum-varnames: + - MUTE + MuteFindingsMuteAttributes: + description: Mute properties to apply to the findings. + properties: + description: + description: Additional information about the reason why the findings are muted or unmuted. This field has a limit of 280 characters. + example: "To be resolved later." + type: string + expire_at: + description: >- + The expiration date of the mute action (Unix ms). It must be set to a value greater than the current timestamp. If this field is not provided, the findings remain muted indefinitely. + example: 1778721573794 + format: int64 + type: integer + is_muted: + description: Whether the findings should be muted or unmuted. + example: true + type: boolean + reason: + $ref: "#/components/schemas/MuteFindingsReason" + description: The reason why the findings are muted or unmuted. + required: + - is_muted + - reason + type: object + MuteFindingsReason: + description: The reason why the findings are muted or unmuted. + enum: + - PENDING_FIX + - FALSE_POSITIVE + - OTHER + - NO_FIX + - DUPLICATE + - RISK_ACCEPTED + - NO_PENDING_FIX + - HUMAN_ERROR + - NO_LONGER_ACCEPTED_RISK + example: PENDING_FIX + type: string + x-enum-varnames: + - PENDING_FIX + - FALSE_POSITIVE + - OTHER + - NO_FIX + - DUPLICATE + - RISK_ACCEPTED + - NO_PENDING_FIX + - HUMAN_ERROR + - NO_LONGER_ACCEPTED_RISK + MuteFindingsRequest: + description: Request to mute or unmute security findings. + properties: + data: + $ref: "#/components/schemas/MuteFindingsRequestData" + required: + - data + type: object + MuteFindingsRequestData: + description: Data of the mute request. + properties: + attributes: + $ref: "#/components/schemas/MuteFindingsRequestDataAttributes" + id: + description: Unique identifier of the mute request. + example: "00000000-0000-0000-0000-000000000001" + type: string + relationships: + $ref: "#/components/schemas/MuteFindingsRequestDataRelationships" + type: + $ref: "#/components/schemas/MuteDataType" + required: + - attributes + - relationships + - type + type: object + MuteFindingsRequestDataAttributes: + description: Attributes of the mute request. + properties: + mute: + $ref: "#/components/schemas/MuteFindingsMuteAttributes" + required: + - mute + type: object + MuteFindingsRequestDataRelationships: + description: Relationships of the mute request. + properties: + findings: + $ref: "#/components/schemas/Findings" + description: Security findings to mute or unmute. + required: + - findings + type: object + MuteFindingsResponse: + description: Response for the mute or unmute request. + properties: + data: + $ref: "#/components/schemas/MuteFindingsResponseData" + type: object + MuteFindingsResponseData: + description: Data of the mute response. + properties: + id: + description: Unique identifier of the mute request. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/MuteDataType" + required: + - type + - id + type: object + MuteReason: + description: The reason for muting a security finding. + enum: + - duplicate + - false_positive + - no_fix + - other + - pending_fix + - risk_accepted + example: risk_accepted + type: string + x-enum-varnames: + - DUPLICATE + - FALSE_POSITIVE + - NO_FIX + - OTHER + - PENDING_FIX + - RISK_ACCEPTED + MuteRuleAction: + description: The action to take when the mute rule matches a finding. + properties: + expire_at: + description: The Unix timestamp in milliseconds at which the mute expires. If omitted, the mute does not expire. + example: 4070908800000 + format: int64 + type: integer + reason: + $ref: "#/components/schemas/MuteReason" + reason_description: + description: An optional description providing more context for the mute reason. + example: "Accepted for dev environments only" + maxLength: 20000 + type: string + required: + - reason + type: object + MuteRuleAttributesCreate: + description: Attributes for creating or updating a mute rule. + properties: + action: + $ref: "#/components/schemas/MuteRuleAction" + enabled: + description: Whether the mute rule is enabled. + example: true + type: boolean + name: + description: The name of the mute rule. + example: "Mute accepted risks in dev" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - rule + - action + type: object + MuteRuleAttributesResponse: + description: Attributes of a mute rule returned by the API. + properties: + action: + $ref: "#/components/schemas/MuteRuleAction" + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: "#/components/schemas/AutomationRuleCreatedBy" + enabled: + description: Whether the mute rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: "#/components/schemas/AutomationRuleModifiedBy" + name: + description: The name of the mute rule. + example: "Mute accepted risks in dev" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by + type: object + MuteRuleCreateRequest: + description: The body of a mute rule create request. + properties: + data: + $ref: "#/components/schemas/MuteRuleDataCreate" + required: + - data + type: object + MuteRuleDataCreate: + description: The data object for a mute rule create or update request. + properties: + attributes: + $ref: "#/components/schemas/MuteRuleAttributesCreate" + type: + $ref: "#/components/schemas/MuteRuleType" + required: + - type + - attributes + type: object + MuteRuleDataResponse: + description: The data object for a mute rule returned by the API. + properties: + attributes: + $ref: "#/components/schemas/MuteRuleAttributesResponse" + id: + description: The ID of the mute rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/MuteRuleType" + required: + - id + - type + - attributes + type: object + MuteRuleReorderData: + description: The ordered list of all mute rules; every rule must be included. + items: + $ref: "#/components/schemas/MuteRuleReorderItem" + type: array + MuteRuleReorderItem: + description: A reference to a mute rule used for reordering. + properties: + id: + description: The ID of the automation rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/MuteRuleType" + required: + - type + - id + type: object + MuteRuleReorderRequest: + description: The body of the mute rule reorder request. + properties: + data: + $ref: "#/components/schemas/MuteRuleReorderData" + required: + - data + type: object + MuteRuleResponse: + description: A single mute rule response. + properties: + data: + $ref: "#/components/schemas/MuteRuleDataResponse" + required: + - data + type: object + MuteRuleType: + description: The JSON:API type for mute rules. + enum: + - mute_rules + example: mute_rules + type: string + x-enum-varnames: + - MUTE_RULES + MuteRuleUpdateRequest: + description: The body of a mute rule update request. + properties: + data: + $ref: "#/components/schemas/MuteRuleDataCreate" + required: + - data + type: object + MuteRulesDataList: + description: A list of mute rule data objects. + items: + $ref: "#/components/schemas/MuteRuleDataResponse" + type: array + MuteRulesResponse: + description: A list of mute rules with pagination metadata. + properties: + data: + $ref: "#/components/schemas/MuteRulesDataList" + links: + $ref: "#/components/schemas/SecurityAutomationRulesLinks" + meta: + $ref: "#/components/schemas/SecurityAutomationRulesMeta" + required: + - data + - meta + - links + type: object + NDKSourcemapAttributes: + description: Attributes of an Android NDK symbol file. + properties: + arch: + description: The target CPU architecture. + example: arm64-v8a + type: string + build_id: + description: The build identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + created_at: + description: The timestamp when the symbol file was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + file_name: + description: The NDK library file name. + example: libmyapp.so + type: string + mapkind: + description: The type of source map. + example: ndk + type: string + size: + description: The size of the symbol file in bytes. + example: 32768 + format: int64 + type: integer + required: + - mapkind + - size + - created_at + type: object + NDKSourcemapData: + description: Android NDK symbol file data object. + properties: + attributes: + $ref: "#/components/schemas/NDKSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "7" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + NetworkHealthInsight: + description: A single network health insight describing a service-to-service connectivity issue. + properties: + attributes: + $ref: "#/components/schemas/NetworkHealthInsightAttributes" + id: + description: Unique identifier for this network health insight. + example: example-insight-id + type: string + type: + $ref: "#/components/schemas/NetworkHealthInsightsType" + required: + - type + - id + - attributes + type: object + NetworkHealthInsightAttributes: + description: Detailed attributes of a network health insight. + properties: + account_id: + description: AWS account identifier where the certificate is located. Only set for `tls-cert` insights. + example: "123456789012" + type: string + certificate_id: + description: ARN or identifier of the certificate. Only set for `tls-cert` insights. + example: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f" + type: string + certificate_lifetime_percent: + description: |- + Percentage of the certificate's validity period that has elapsed, ranging from 0 to 100. + Only set for `tls-cert` insights. + example: 96.7 + format: double + type: number + client_region: + description: AWS region where the client is located. Only set for `tls-cert` insights. + example: us-west-2 + type: string + client_service: + description: |- + Name of the service making the request (DNS query or TLS-secured connection). + Set to `N/A` when the client service cannot be determined. + example: network-logger + type: string + days_until_expiration: + description: |- + Number of days remaining until the certificate expires. Negative values indicate the + certificate has already expired. Only set for `tls-cert` insights. + example: 3 + format: int64 + type: integer + dns_query: + description: Domain name that was being resolved when the DNS failure occurred. Only set for `dns` insights. + example: kafka-broker.internal.domain.com + type: string + dns_server: + description: DNS server that received the failing query. Only set for `dns` insights. + example: cluster-dns + type: string + domain_name: + description: Domain name covered by the certificate. Only set for `tls-cert` insights. + example: api.example.com + type: string + failure_magnitude: + description: |- + Count of failed events observed during the query window. Only set for `dns`, `tcp`, + and `security-group` insights. + example: 150 + format: int64 + minimum: 0 + type: integer + failure_rate: + description: |- + Percentage of requests that failed during the query window, ranging from 0 to 100. + Only set for `dns`, `tcp`, and `security-group` insights. + example: 91 + format: double + maximum: 100 + minimum: 0 + type: number + failure_type: + $ref: "#/components/schemas/NetworkHealthInsightFailureType" + loadbalancer_id: + description: ARN of the load balancer using the certificate. Only set for `tls-cert` insights. + example: "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188" + type: string + server_region: + description: AWS region where the server or load balancer is located. Only set for `tls-cert` insights. + example: us-east-1 + type: string + server_service: + description: Name of the target service the client was trying to reach. + example: kafka + type: string + total_requests: + description: |- + Total number of requests observed during the query window. Provides context for + `failure_magnitude` and `failure_rate`. Only set for `dns`, `tcp`, and `security-group` insights. + example: 1200 + format: int64 + minimum: 0 + type: integer + traffic_volume: + $ref: "#/components/schemas/NetworkHealthInsightTrafficVolume" + type: + $ref: "#/components/schemas/NetworkHealthInsightCategory" + type: object + NetworkHealthInsightCategory: + description: |- + Category of network health insight. Indicates whether the insight relates to a DNS issue (`dns`), + a TCP issue (`tcp`), a TLS certificate issue (`tls-cert`), or a security group denial (`security-group`). + enum: + - dns + - tcp + - tls-cert + - security-group + example: dns + type: string + x-enum-varnames: + - DNS + - TCP + - TLS_CERT + - SECURITY_GROUP + NetworkHealthInsightFailureType: + description: |- + Specific failure type within the insight category. For DNS insights: `timeout`, `nxdomain`, + `servfail`, or `general_failure`. For TLS certificate insights: `expired` or `expiring_soon`. + For security group insights: `denied`. + enum: + - timeout + - nxdomain + - servfail + - general_failure + - expired + - expiring_soon + - denied + example: nxdomain + type: string + x-enum-varnames: + - TIMEOUT + - NXDOMAIN + - SERVFAIL + - GENERAL_FAILURE + - EXPIRED + - EXPIRING_SOON + - DENIED + NetworkHealthInsightTrafficVolume: + description: Network traffic volume metrics between the client and server services during the query window. + properties: + bytes_read: + description: Total bytes read from the server to the client during the query window. + example: 1800000 + format: int64 + type: integer + bytes_written: + description: Total bytes written from the client to the server during the query window. + example: 2500000 + format: int64 + type: integer + total_traffic: + description: Sum of bytes written and bytes read across the query window. + example: 4300000 + format: int64 + type: integer + type: object + NetworkHealthInsightsResponse: + description: Response containing a list of network health insights for the organization. + properties: + data: + description: Array of network health insights returned for the query window. + items: + $ref: "#/components/schemas/NetworkHealthInsight" + type: array + required: + - data + type: object + NetworkHealthInsightsType: + default: network-health-insights + description: The resource type for network health insights. Always `network-health-insights`. + enum: + - network-health-insights + example: network-health-insights + type: string + x-enum-varnames: + - NETWORK_HEALTH_INSIGHTS + NodeType: + additionalProperties: {} + description: A tree-sitter node type definition for a given language, describing the node's structure, subtypes, and fields. + type: object + NodeTypesResponse: + description: The response payload containing tree-sitter node type definitions for a programming language. + properties: + data: + $ref: "#/components/schemas/NodeTypesResponseData" + required: + - data + type: object + NodeTypesResponseData: + description: The primary data object in the node types response. + properties: + attributes: + $ref: "#/components/schemas/NodeTypesResponseDataAttributes" + id: + description: The unique identifier of the node types response resource. + example: python + type: string + type: + $ref: "#/components/schemas/NodeTypesResponseDataType" + required: + - id + - type + - attributes + type: object + NodeTypesResponseDataAttributes: + description: The attributes of the node types response, containing the list of node type definitions for the requested language. + properties: + node_types: + description: The list of tree-sitter node type definitions for the language. + items: + $ref: "#/components/schemas/NodeType" + type: array + required: + - node_types + type: object + NodeTypesResponseDataType: + default: get_node_types_response + description: Get node types response resource type. + enum: + - get_node_types_response + example: get_node_types_response + type: string + x-enum-varnames: + - GET_NODE_TYPES_RESPONSE + NotebookCreateData: + description: Notebook creation data + properties: + type: + $ref: "#/components/schemas/NotebookResourceType" + required: + - type + type: object + NotebookCreateRequest: + description: Notebook creation request + properties: + data: + $ref: "#/components/schemas/NotebookCreateData" + required: + - data + type: object + NotebookResourceType: + description: Notebook resource type + enum: + - notebook + example: notebook + type: string + x-enum-varnames: + - NOTEBOOK + NotebookTriggerWrapper: + description: "Schema for a Notebook-based trigger." + properties: + notebookTrigger: + description: "Trigger a workflow from a Notebook." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - notebookTrigger + type: object + NotificationChannel: + description: A top-level wrapper for a user notification channel + example: + data: + attributes: + config: + address: "foo@bar.com" + formats: ["html"] + type: "email" + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + properties: + data: + $ref: "#/components/schemas/NotificationChannelData" + type: object + NotificationChannelAttributes: + description: Attributes for an on-call notification channel. + properties: + active: + description: Whether the notification channel is currently active. + type: boolean + config: + $ref: "#/components/schemas/NotificationChannelConfig" + description: Notification channel configuration + type: object + NotificationChannelConfig: + description: "Defines the configuration for an On-Call notification channel" + oneOf: + - $ref: "#/components/schemas/NotificationChannelPhoneConfig" + - $ref: "#/components/schemas/NotificationChannelEmailConfig" + - $ref: "#/components/schemas/NotificationChannelPushConfig" + NotificationChannelData: + description: Data for an on-call notification channel + properties: + attributes: + $ref: "#/components/schemas/NotificationChannelAttributes" + id: + description: Unique identifier for the channel + type: string + type: + $ref: "#/components/schemas/NotificationChannelType" + required: + - type + type: object + NotificationChannelEmailConfig: + description: "Email notification channel configuration" + properties: + address: + description: "The e-mail address to be notified" + example: "" + type: string + formats: + description: Preferred content formats for notifications. + example: + - html + items: + $ref: "#/components/schemas/NotificationChannelEmailFormatType" + type: array + type: + $ref: "#/components/schemas/NotificationChannelEmailConfigType" + required: + - type + - address + - formats + type: object + NotificationChannelEmailConfigType: + default: email + description: "Indicates that the notification channel is an e-mail address" + enum: + - email + example: email + type: string + x-enum-varnames: + - EMAIL + NotificationChannelEmailFormatType: + default: html + description: Specifies the format of the e-mail that is sent for On-Call notifications + enum: + - html + - text + example: html + type: string + x-enum-varnames: + - HTML + - TEXT + NotificationChannelPhoneConfig: + description: "Phone notification channel configuration" + properties: + formatted_number: + description: "The formatted international version of Number (e.g. +33 7 1 23 45 67)." + example: "" + type: string + number: + description: "The E-164 formatted phone number (e.g. +3371234567)" + example: "" + type: string + region: + description: "The ISO 3166-1 alpha-2 two-letter country code." + example: "" + type: string + sms_subscribed_at: + description: "If present, the date the user subscribed this number to SMS messages" + format: date-time + nullable: true + type: string + type: + $ref: "#/components/schemas/NotificationChannelPhoneConfigType" + verified: + description: "Indicates whether this phone has been verified by the user in Datadog On-Call" + example: false + type: boolean + required: + - type + - number + - formatted_number + - region + - verified + type: object + NotificationChannelPhoneConfigType: + default: phone + description: "Indicates that the notification channel is a phone" + enum: + - phone + example: phone + type: string + x-enum-varnames: + - PHONE + NotificationChannelPushConfig: + description: "Push notification channel configuration" + properties: + application_name: + description: "The name of the application used to receive push notifications" + example: "" + type: string + device_name: + description: "The name of the mobile device being used" + example: "" + type: string + type: + $ref: "#/components/schemas/NotificationChannelPushConfigType" + required: + - type + - device_name + - application_name + type: object + NotificationChannelPushConfigType: + default: push + description: "Indicates that the notification channel is a mobile device for push notifications" + enum: + - push + example: push + type: string + x-enum-varnames: + - PUSH + NotificationChannelType: + default: notification_channels + description: "Indicates that the resource is of type 'notification_channels'." + enum: + - notification_channels + example: notification_channels + type: string + x-enum-varnames: + - NOTIFICATION_CHANNELS + NotificationRule: + description: |- + Notification rules allow full control over notifications generated by the various Datadog security products. + They allow users to define the conditions under which a notification should be generated (based on rule severities, + rule types, rule tags, and so on), and the targets to notify. + A notification rule is composed of a rule ID, a rule type, and the rule attributes. All fields are required. + properties: + attributes: + $ref: "#/components/schemas/NotificationRuleAttributes" + id: + $ref: "#/components/schemas/ID" + type: + $ref: "#/components/schemas/NotificationRulesType" + required: + - attributes + - id + - type + type: object + NotificationRuleAttributes: + description: Attributes of the notification rule. + properties: + created_at: + $ref: "#/components/schemas/Date" + created_by: + $ref: "#/components/schemas/RuleUser" + enabled: + $ref: "#/components/schemas/Enabled" + modified_at: + $ref: "#/components/schemas/Date" + modified_by: + $ref: "#/components/schemas/RuleUser" + name: + $ref: "#/components/schemas/RuleName" + selectors: + $ref: "#/components/schemas/Selectors" + targets: + $ref: "#/components/schemas/Targets" + time_aggregation: + $ref: "#/components/schemas/TimeAggregation" + version: + $ref: "#/components/schemas/Version" + required: + - created_at + - created_by + - enabled + - modified_at + - modified_by + - name + - selectors + - targets + - version + type: object + NotificationRulePreviewNotificationStatus: + description: The notification status for the given rule type. `SUCCESS` means a matching event was found and the notification was sent successfully. `DEFAULT` means no matching event was found and a default placeholder notification was sent instead. `ERROR` means an error occurred while sending the notification. + enum: + - SUCCESS + - DEFAULT + - ERROR + example: SUCCESS + type: string + x-enum-varnames: + - SUCCESS + - DEFAULT + - ERROR + NotificationRulePreviewResponse: + description: Response from the notification preview request. + properties: + data: + $ref: "#/components/schemas/NotificationRulePreviewResponseData" + required: + - data + type: object + NotificationRulePreviewResponseAttributes: + description: Attributes of the notification preview response. + properties: + preview_results: + $ref: "#/components/schemas/NotificationRulePreviewResults" + required: + - preview_results + type: object + NotificationRulePreviewResponseData: + description: The notification preview response data. + properties: + attributes: + $ref: "#/components/schemas/NotificationRulePreviewResponseAttributes" + id: + description: The ID of the notification preview response. + example: rka-loa-zwu + type: string + type: + $ref: "#/components/schemas/NotificationRulePreviewResponseType" + required: + - type + - attributes + type: object + NotificationRulePreviewResponseType: + description: The type of the notification preview response. + enum: + - notification_preview_response + example: notification_preview_response + type: string + x-enum-varnames: + - NOTIFICATION_PREVIEW_RESPONSE + NotificationRulePreviewResult: + description: The preview result for a single rule type. + properties: + notification_status: + $ref: "#/components/schemas/NotificationRulePreviewNotificationStatus" + rule_type: + $ref: "#/components/schemas/RuleTypesItems" + required: + - rule_type + - notification_status + type: object + NotificationRulePreviewResults: + description: List of preview results for each rule type matched by the notification rule. + example: + - notification_status: DEFAULT + rule_type: log_detection + items: + $ref: "#/components/schemas/NotificationRulePreviewResult" + type: array + NotificationRuleQuery: + description: The query is composed of one or several key:value pairs, which can be used to filter security issues on tags and attributes. + example: (source:production_service OR env:prod) + type: string + NotificationRuleResponse: + description: Response object which includes a notification rule. + properties: + data: + $ref: "#/components/schemas/NotificationRule" + type: object + NotificationRuleRouting: + description: Routing configuration for the notification rule. + properties: + mode: + $ref: "#/components/schemas/NotificationRuleRoutingMode" + required: + - mode + type: object + NotificationRuleRoutingMode: + description: The routing mode for the notification rule. `manual` sends notifications to the configured targets. + enum: + - manual + example: manual + type: string + x-enum-varnames: + - MANUAL + NotificationRulesListResponse: + description: The list of notification rules. + properties: + data: + items: + $ref: "#/components/schemas/NotificationRule" + type: array + type: object + NotificationRulesType: + description: The rule type associated to notification rules. + enum: + - notification_rules + example: notification_rules + type: string + x-enum-varnames: + - NOTIFICATION_RULES + NotionAPIKey: + description: The definition of the `NotionAPIKey` object. + properties: + api_token: + description: The `NotionAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/NotionAPIKeyType" + required: + - type + - api_token + type: object + NotionAPIKeyType: + description: The definition of the `NotionAPIKey` object. + enum: + - NotionAPIKey + example: NotionAPIKey + type: string + x-enum-varnames: + - NOTIONAPIKEY + NotionAPIKeyUpdate: + description: The definition of the `NotionAPIKey` object. + properties: + api_token: + description: The `NotionAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/NotionAPIKeyType" + required: + - type + type: object + NotionCredentials: + description: The definition of the `NotionCredentials` object. + oneOf: + - $ref: "#/components/schemas/NotionAPIKey" + NotionCredentialsUpdate: + description: The definition of the `NotionCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/NotionAPIKeyUpdate" + NotionIntegration: + description: The definition of the `NotionIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/NotionCredentials" + type: + $ref: "#/components/schemas/NotionIntegrationType" + required: + - type + - credentials + type: object + NotionIntegrationType: + description: The definition of the `NotionIntegrationType` object. + enum: + - Notion + example: Notion + type: string + x-enum-varnames: + - NOTION + NotionIntegrationUpdate: + description: The definition of the `NotionIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/NotionCredentialsUpdate" + type: + $ref: "#/components/schemas/NotionIntegrationType" + required: + - type + type: object + NullableRelationshipToUser: + description: Relationship to user. + nullable: true + properties: + data: + $ref: "#/components/schemas/NullableRelationshipToUserData" + required: + - data + type: object + NullableRelationshipToUserData: + description: Relationship to user object. + nullable: true + properties: + id: + description: A unique identifier that represents the user. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UsersType" + required: + - id + - type + type: object + NullableUserRelationship: + description: Relationship to user. + nullable: true + properties: + data: + $ref: "#/components/schemas/NullableUserRelationshipData" + required: + - data + type: object + NullableUserRelationshipData: + description: Relationship to user object. + nullable: true + properties: + id: + description: A unique identifier that represents the user. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UserResourceType" + required: + - id + - type + type: object + OAuth2WellKnownSitesAttributes: + description: Attributes containing the list of public OAuth2 sites. + properties: + sites: + description: Array of public OAuth2 site URLs for the environment. + example: + - datadoghq.com + - datadoghq.eu + - us5.datadoghq.com + - us3.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + items: + description: Public OAuth2 site URL. + example: app.datadoghq.com + type: string + type: array + required: + - sites + type: object + OAuth2WellKnownSitesData: + description: Data object containing OAuth2 well-known sites information. + properties: + attributes: + $ref: "#/components/schemas/OAuth2WellKnownSitesAttributes" + id: + description: Environment identifier. + example: prod + type: string + type: + $ref: "#/components/schemas/OAuth2WellKnownSitesEnvType" + required: + - id + - type + - attributes + type: object + OAuth2WellKnownSitesEnvType: + default: env + description: JSON:API resource type for OAuth2 well-known sites environment. + enum: + - env + example: env + type: string + x-enum-varnames: + - ENV + OAuth2WellKnownSitesResponse: + description: Response payload containing the list of public OAuth2 sites for discovery. + properties: + data: + $ref: "#/components/schemas/OAuth2WellKnownSitesData" + required: + - data + type: object + OAuthClientRegistrationError: + description: Error payload returned by OAuth2 dynamic client registration as defined by RFC 7591. + properties: + error: + description: Single ASCII error code per RFC 7591, such as `invalid_request` or `invalid_client_metadata`. + example: invalid_client_metadata + type: string + error_description: + description: Human-readable description of the error. + example: redirect URI is not well-formed + type: string + required: + - error + - error_description + type: object + OAuthClientRegistrationGrantType: + description: OAuth 2.0 grant type that a registered client may use. + enum: + - authorization_code + - refresh_token + example: authorization_code + type: string + x-enum-varnames: + - AUTHORIZATION_CODE + - REFRESH_TOKEN + OAuthClientRegistrationRequest: + description: Request payload for OAuth2 dynamic client registration as defined by RFC 7591. + properties: + client_name: + description: Human-readable name of the client. Control characters are rejected. + example: Example MCP Client + maxLength: 1000 + type: string + client_uri: + description: URL of the home page of the client. + example: https://example.com + maxLength: 1000 + type: string + grant_types: + description: |- + OAuth 2.0 grant types the client may use. + Defaults to `authorization_code` and `refresh_token` when omitted. + example: + - authorization_code + - refresh_token + items: + $ref: "#/components/schemas/OAuthClientRegistrationGrantType" + type: array + jwks_uri: + description: URL referencing the client's JSON Web Key Set. + example: https://example.com/.well-known/jwks.json + maxLength: 1000 + type: string + logo_uri: + description: URL referencing a logo for the client. + example: https://example.com/logo.png + maxLength: 1000 + type: string + policy_uri: + description: URL pointing to the client's privacy policy. + example: https://example.com/privacy + maxLength: 1000 + type: string + redirect_uris: + description: Array of redirection URI strings used by the client in redirect-based flows. + example: + - https://example.com/oauth/callback + items: + description: Redirection URI registered for the client. + example: https://example.com/oauth/callback + maxLength: 1000 + type: string + type: array + response_types: + description: OAuth 2.0 response types the client may use. Only `code` is supported. + example: + - code + items: + $ref: "#/components/schemas/OAuthClientRegistrationResponseType" + type: array + scope: + description: Space-separated list of scope values the client may request. + example: openid profile + maxLength: 1000 + type: string + token_endpoint_auth_method: + description: Requested authentication method for the token endpoint. Only `none` is supported. + example: none + maxLength: 20 + type: string + tos_uri: + description: URL pointing to the client's terms of service. + example: https://example.com/tos + maxLength: 1000 + type: string + required: + - client_name + - redirect_uris + type: object + OAuthClientRegistrationResponse: + description: Response payload for a successful OAuth2 dynamic client registration as defined by RFC 7591. + properties: + client_id: + description: Unique identifier assigned to the registered client. + example: 72b68208-36a6-11f0-b21b-da7ad0900002 + format: uuid + type: string + client_name: + description: Human-readable name of the client. + example: Example MCP Client + type: string + grant_types: + description: OAuth 2.0 grant types registered for the client. + example: + - authorization_code + - refresh_token + items: + $ref: "#/components/schemas/OAuthClientRegistrationGrantType" + type: array + redirect_uris: + description: Redirection URIs registered for the client. + example: + - https://example.com/oauth/callback + items: + description: Redirection URI registered for the client. + example: https://example.com/oauth/callback + type: string + type: array + response_types: + description: OAuth 2.0 response types registered for the client. + example: + - code + items: + $ref: "#/components/schemas/OAuthClientRegistrationResponseType" + type: array + token_endpoint_auth_method: + description: Authentication method registered for the token endpoint. Always `none`. + example: none + type: string + required: + - client_id + - client_name + - redirect_uris + - token_endpoint_auth_method + - grant_types + - response_types + type: object + OAuthClientRegistrationResponseType: + description: OAuth 2.0 response type that a registered client may use. + enum: + - code + example: code + type: string + x-enum-varnames: + - CODE + OAuthOidcScope: + description: OIDC scope a client may be restricted to. + enum: + - openid + - profile + - email + - offline_access + example: openid + type: string + x-enum-varnames: + - OPENID + - PROFILE + - EMAIL + - OFFLINE_ACCESS + OAuthScopesRestriction: + description: Allowlist of OIDC and permission scopes enforced for the OAuth2 client. + nullable: true + properties: + oidc_scopes: + description: OIDC scopes the client is restricted to. + example: + - openid + - email + items: + $ref: "#/components/schemas/OAuthOidcScope" + type: array + permission_scopes: + description: Datadog permission scopes the client is restricted to. + example: + - dashboards_read + - metrics_read + items: + description: Datadog permission scope name. + example: dashboards_read + type: string + type: array + required: + - oidc_scopes + - permission_scopes + type: object + OAuthScopesRestrictionResponse: + description: Response payload describing the scopes restriction of an OAuth2 client. + properties: + data: + $ref: "#/components/schemas/OAuthScopesRestrictionResponseData" + required: + - data + type: object + OAuthScopesRestrictionResponseAttributes: + description: Attributes of an OAuth2 client scopes restriction. + properties: + required_permission_scopes: + description: |- + Permission scopes automatically required for this client (for example, mobile-app permission scopes). + Returns `null` when no scopes are required. + example: + - mobile_app_access + items: + description: Datadog permission scope name. + example: mobile_app_access + type: string + nullable: true + type: array + scopes_restriction: + $ref: "#/components/schemas/OAuthScopesRestriction" + required: + - scopes_restriction + - required_permission_scopes + type: object + OAuthScopesRestrictionResponseData: + description: Data object of an OAuth2 client scopes restriction response. + properties: + attributes: + $ref: "#/components/schemas/OAuthScopesRestrictionResponseAttributes" + id: + description: UUID of the OAuth2 client this restriction applies to. + example: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + format: uuid + type: string + type: + $ref: "#/components/schemas/OAuthScopesRestrictionType" + required: + - id + - type + - attributes + type: object + OAuthScopesRestrictionType: + default: scopes_restriction + description: JSON:API resource type for an OAuth2 client scopes restriction. + enum: + - scopes_restriction + example: scopes_restriction + type: string + x-enum-varnames: + - SCOPES_RESTRICTION + OCIConfig: + description: OCI config. + properties: + attributes: + $ref: "#/components/schemas/OCIConfigAttributes" + id: + description: The ID of the OCI config. + example: "1" + type: string + type: + $ref: "#/components/schemas/OCIConfigType" + required: + - attributes + - id + - type + type: object + OCIConfigAttributes: + description: Attributes for an OCI config. + properties: + account_id: + description: The OCID of the OCI tenancy. + example: "ocid1.tenancy.oc1..example" + type: string + created_at: + description: The timestamp when the OCI config was created. + example: "2026-01-01T12:00:00Z" + type: string + error_messages: + description: The error messages for the OCI config. + items: + description: An error message string. + type: string + nullable: true + type: array + status: + description: The status of the OCI config. + example: "active" + type: string + status_updated_at: + description: The timestamp when the OCI config status was last updated. + example: "2026-01-01T12:00:00Z" + type: string + updated_at: + description: The timestamp when the OCI config was last updated. + example: "2026-01-01T12:00:00Z" + type: string + required: + - account_id + - created_at + - status + - status_updated_at + - updated_at + type: object + OCIConfigType: + default: oci_config + description: Type of OCI config. + enum: + - oci_config + example: oci_config + type: string + x-enum-varnames: + - OCI_CONFIG + OCIConfigsResponse: + description: List of OCI configs. + example: + data: + - attributes: + account_id: "ocid1.tenancy.oc1..example" + created_at: "2026-01-01T12:00:00Z" + error_messages: [] + status: active + status_updated_at: "2026-01-01T12:00:00Z" + updated_at: "2026-01-01T12:00:00Z" + id: "1" + type: oci_config + properties: + data: + description: An OCI config. + items: + $ref: "#/components/schemas/OCIConfig" + type: array + required: + - data + type: object + ObservabilityPipeline: + description: Top-level schema representing a pipeline. + properties: + data: + $ref: "#/components/schemas/ObservabilityPipelineData" + required: + - data + type: object + ObservabilityPipelineAddEnvVarsProcessor: + description: |- + The `add_env_vars` processor adds environment variable values to log events. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this processor in the pipeline. + example: add-env-vars-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorType" + variables: + description: A list of environment variable mappings to apply to log fields. + items: + $ref: "#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable" + type: array + required: + - id + - type + - include + - variables + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAddEnvVarsProcessorType: + default: add_env_vars + description: The processor type. The value should always be `add_env_vars`. + enum: + - add_env_vars + example: add_env_vars + type: string + x-enum-varnames: + - ADD_ENV_VARS + ObservabilityPipelineAddEnvVarsProcessorVariable: + description: Defines a mapping between an environment variable and a log field. + properties: + field: + description: The target field in the log event. + example: log.environment.region + type: string + name: + description: The name of the environment variable to read. + example: AWS_REGION + type: string + required: + - field + - name + type: object + ObservabilityPipelineAddFieldsProcessor: + description: |- + The `add_fields` processor adds static key-value fields to logs. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of static fields (key-value pairs) that is added to each log event processed by this component. + items: + $ref: "#/components/schemas/ObservabilityPipelineFieldValue" + type: array + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "add-fields-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineAddFieldsProcessorType" + required: + - id + - type + - include + - fields + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAddFieldsProcessorType: + default: add_fields + description: The processor type. The value should always be `add_fields`. + enum: + - add_fields + example: add_fields + type: string + x-enum-varnames: + - ADD_FIELDS + ObservabilityPipelineAddHostnameProcessor: + description: |- + The `add_hostname` processor adds the hostname to log events. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: add-hostname-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineAddHostnameProcessorType" + required: + - id + - type + - include + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAddHostnameProcessorType: + default: add_hostname + description: The processor type. The value should always be `add_hostname`. + enum: + - add_hostname + example: add_hostname + type: string + x-enum-varnames: + - ADD_HOSTNAME + ObservabilityPipelineAddMetricTagsProcessor: + description: |- + The `add_metric_tags` processor adds static tags to metrics. + + **Supported pipeline types:** metrics + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "add-metric-tags-processor" + type: string + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: "*" + type: string + tags: + description: A list of static tags (key-value pairs) added to each metric processed by this component. + items: + $ref: "#/components/schemas/ObservabilityPipelineFieldValue" + maxItems: 15 + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineAddMetricTagsProcessorType" + required: + - id + - type + - include + - tags + - enabled + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineAddMetricTagsProcessorType: + default: add_metric_tags + description: The processor type. The value must be `add_metric_tags`. + enum: [add_metric_tags] + example: add_metric_tags + type: string + x-enum-varnames: + - ADD_METRIC_TAGS + ObservabilityPipelineAggregateProcessor: + description: |- + The `aggregate` processor combines metrics that share the same name and tags into a single metric over a configurable interval. + + **Supported pipeline types:** metrics + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "aggregate-processor" + type: string + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: "*" + type: string + interval_secs: + description: The interval, in seconds, over which metrics are aggregated. + example: 10 + format: int64 + maximum: 60 + minimum: 1 + type: integer + mode: + $ref: "#/components/schemas/ObservabilityPipelineAggregateProcessorMode" + type: + $ref: "#/components/schemas/ObservabilityPipelineAggregateProcessorType" + required: + - id + - type + - include + - interval_secs + - mode + - enabled + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineAggregateProcessorMode: + description: The aggregation mode applied to metrics that share the same name and tags within the interval. + enum: + - auto + - sum + - latest + - count + - max + - min + - mean + example: auto + type: string + x-enum-varnames: + - AUTO + - SUM + - LATEST + - COUNT + - MAX + - MIN + - MEAN + ObservabilityPipelineAggregateProcessorType: + default: aggregate + description: The processor type. The value must be `aggregate`. + enum: [aggregate] + example: aggregate + type: string + x-enum-varnames: + - AGGREGATE + ObservabilityPipelineAmazonDataFirehoseSource: + description: |- + The `amazon_data_firehose` source ingests logs from AWS Data Firehose. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the Firehose delivery stream address. + example: FIREHOSE_ADDRESS + type: string + auth: + $ref: "#/components/schemas/ObservabilityPipelineAwsAuth" + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: amazon-firehose-source + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAmazonDataFirehoseSourceType: + default: amazon_data_firehose + description: The source type. The value should always be `amazon_data_firehose`. + enum: [amazon_data_firehose] + example: amazon_data_firehose + type: string + x-enum-varnames: [AMAZON_DATA_FIREHOSE] + ObservabilityPipelineAmazonOpenSearchDestination: + description: |- + The `amazon_opensearch` destination writes logs to Amazon OpenSearch. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuth" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + bulk_index: + description: The index to write logs to. + example: logs-index + type: string + id: + description: The unique identifier for this component. + example: elasticsearch-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationType" + required: + - id + - type + - inputs + - auth + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAmazonOpenSearchDestinationAuth: + description: |- + Authentication settings for the Amazon OpenSearch destination. + The `strategy` field determines whether basic or AWS-based authentication is used. + properties: + assume_role: + description: The ARN of the role to assume (used with `aws` strategy). + type: string + aws_region: + description: AWS region + type: string + external_id: + description: External ID for the assumed role (used with `aws` strategy). + type: string + session_name: + description: Session name for the assumed role (used with `aws` strategy). + type: string + strategy: + $ref: "#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy" + required: + - strategy + type: object + ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy: + description: The authentication strategy to use. + enum: [basic, aws] + example: aws + type: string + x-enum-varnames: + - BASIC + - AWS + ObservabilityPipelineAmazonOpenSearchDestinationType: + default: amazon_opensearch + description: The destination type. The value should always be `amazon_opensearch`. + enum: + - amazon_opensearch + example: amazon_opensearch + type: string + x-enum-varnames: + - AMAZON_OPENSEARCH + ObservabilityPipelineAmazonS3Destination: + description: |- + The `amazon_s3` destination sends your logs in Datadog-rehydratable format to an Amazon S3 bucket for archiving. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineAwsAuth" + bucket: + description: S3 bucket name. + example: "error-logs" + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + id: + description: Unique identifier for the destination component. + example: amazon-s3-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["datadog-agent-source"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + key_prefix: + description: Optional prefix for object keys. + type: string + region: + description: AWS region of the S3 bucket. + example: "us-east-1" + type: string + server_side_encryption: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3DestinationServerSideEncryption" + ssekms_key_id: + description: |- + The AWS KMS key ID used for SSE-KMS encryption. + Only applies when `server_side_encryption` is set to `aws:kms`. + example: "arn:aws:kms:us-east-1:123456789012:key/mrk-abc123" + type: string + storage_class: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass" + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3DestinationType" + required: + - id + - type + - inputs + - bucket + - region + - storage_class + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAmazonS3DestinationServerSideEncryption: + description: Server-side encryption type for Amazon S3. + enum: + - "aws:kms" + - AES256 + example: "aws:kms" + type: string + x-enum-varnames: + - AWS_KMS + - AES256 + ObservabilityPipelineAmazonS3DestinationStorageClass: + description: S3 storage class. + enum: + - STANDARD + - REDUCED_REDUNDANCY + - INTELLIGENT_TIERING + - STANDARD_IA + - EXPRESS_ONEZONE + - ONEZONE_IA + - GLACIER + - GLACIER_IR + - DEEP_ARCHIVE + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + - REDUCED_REDUNDANCY + - INTELLIGENT_TIERING + - STANDARD_IA + - EXPRESS_ONEZONE + - ONEZONE_IA + - GLACIER + - GLACIER_IR + - DEEP_ARCHIVE + ObservabilityPipelineAmazonS3DestinationType: + default: amazon_s3 + description: The destination type. Always `amazon_s3`. + enum: + - amazon_s3 + example: amazon_s3 + type: string + x-enum-varnames: + - AMAZON_S3 + ObservabilityPipelineAmazonS3GenericBatchSettings: + description: Event batching settings + properties: + batch_size: + description: Maximum batch size in bytes. + example: 100000000 + format: int64 + type: integer + timeout_secs: + description: Maximum number of seconds to wait before flushing the batch. + example: 900 + format: int64 + type: integer + type: object + ObservabilityPipelineAmazonS3GenericCompression: + description: Compression algorithm applied to encoded logs. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionZstd" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionGzip" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionSnappy" + ObservabilityPipelineAmazonS3GenericCompressionGzip: + description: Gzip compression. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionGzipType" + level: + description: Gzip compression level. + example: 6 + format: int64 + type: integer + required: + - algorithm + - level + type: object + ObservabilityPipelineAmazonS3GenericCompressionGzipType: + default: gzip + description: The compression type. Always `gzip`. + enum: + - gzip + example: gzip + type: string + x-enum-varnames: + - GZIP + ObservabilityPipelineAmazonS3GenericCompressionSnappy: + description: Snappy compression. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionSnappyType" + required: + - algorithm + type: object + ObservabilityPipelineAmazonS3GenericCompressionSnappyType: + default: snappy + description: The compression type. Always `snappy`. + enum: + - snappy + example: snappy + type: string + x-enum-varnames: + - SNAPPY + ObservabilityPipelineAmazonS3GenericCompressionZstd: + description: Zstd compression. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionZstdType" + level: + description: Zstd compression level. + example: 3 + format: int64 + type: integer + required: + - algorithm + - level + type: object + ObservabilityPipelineAmazonS3GenericCompressionZstdType: + default: zstd + description: The compression type. Always `zstd`. + enum: + - zstd + example: zstd + type: string + x-enum-varnames: + - ZSTD + ObservabilityPipelineAmazonS3GenericDestination: + description: |- + The `amazon_s3_generic` destination sends your logs to an Amazon S3 bucket. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineAwsAuth" + batch_settings: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericBatchSettings" + bucket: + description: S3 bucket name. + example: "my-bucket" + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + compression: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericCompression" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericEncoding" + id: + description: Unique identifier for the destination component. + example: generic-s3-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: A component ID referenced as an input source. + type: string + type: array + key_prefix: + description: Optional prefix for object keys. + type: string + region: + description: AWS region of the S3 bucket. + example: "us-east-1" + type: string + server_side_encryption: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3DestinationServerSideEncryption" + ssekms_key_id: + description: |- + The AWS KMS key ID used for SSE-KMS encryption. + Only applies when `server_side_encryption` is set to `aws:kms`. + example: "arn:aws:kms:us-east-1:123456789012:key/mrk-abc123" + type: string + storage_class: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass" + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericDestinationType" + required: + - id + - type + - inputs + - bucket + - region + - storage_class + - encoding + - compression + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAmazonS3GenericDestinationType: + default: amazon_s3_generic + description: The destination type. Always `amazon_s3_generic`. + enum: + - amazon_s3_generic + example: amazon_s3_generic + type: string + x-enum-varnames: + - GENERIC_ARCHIVES_S3 + ObservabilityPipelineAmazonS3GenericEncoding: + description: Encoding format for the destination. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingJson" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingParquet" + ObservabilityPipelineAmazonS3GenericEncodingJson: + description: JSON encoding. + properties: + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingJsonType" + required: + - type + type: object + ObservabilityPipelineAmazonS3GenericEncodingJsonType: + default: json + description: The encoding type. Always `json`. + enum: + - json + example: json + type: string + x-enum-varnames: + - JSON + ObservabilityPipelineAmazonS3GenericEncodingParquet: + description: Parquet encoding. + properties: + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingParquetType" + required: + - type + type: object + ObservabilityPipelineAmazonS3GenericEncodingParquetType: + default: parquet + description: The encoding type. Always `parquet`. + enum: + - parquet + example: parquet + type: string + x-enum-varnames: + - PARQUET + ObservabilityPipelineAmazonS3Source: + description: |- + The `amazon_s3` source ingests logs from an Amazon S3 bucket. + It supports AWS authentication, TLS encryption, and configurable compression. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineAwsAuth" + compression: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3SourceCompression" + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: aws-s3-source + type: string + region: + description: AWS region where the S3 bucket resides. + example: us-east-1 + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonS3SourceType" + url_key: + description: Name of the environment variable or secret that holds the S3 bucket URL. + example: S3_BUCKET_URL + type: string + required: + - id + - type + - region + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAmazonS3SourceCompression: + description: Compression format for objects retrieved from the S3 bucket. Use `auto` to detect compression from the object's Content-Encoding header or file extension. + enum: + - auto + - none + - gzip + - zstd + example: gzip + type: string + x-enum-varnames: + - AUTO + - NONE + - GZIP + - ZSTD + ObservabilityPipelineAmazonS3SourceType: + default: amazon_s3 + description: The source type. Always `amazon_s3`. + enum: + - amazon_s3 + example: amazon_s3 + type: string + x-enum-varnames: + - AMAZON_S3 + ObservabilityPipelineAmazonSecurityLakeDestination: + description: |- + The `amazon_security_lake` destination sends your logs to Amazon Security Lake. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineAwsAuth" + bucket: + description: Name of the Amazon S3 bucket in Security Lake (3-63 characters). + example: "security-lake-bucket" + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + custom_source_name: + description: Custom source name for the logs in Security Lake. + example: "my-custom-source" + type: string + id: + description: Unique identifier for the destination component. + example: amazon-security-lake-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + region: + description: AWS region of the S3 bucket. + example: "us-east-1" + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestinationType" + required: + - id + - type + - inputs + - bucket + - region + - custom_source_name + type: object + x-pipeline-types: [logs] + ObservabilityPipelineAmazonSecurityLakeDestinationType: + default: amazon_security_lake + description: The destination type. Always `amazon_security_lake`. + enum: + - amazon_security_lake + example: amazon_security_lake + type: string + x-enum-varnames: + - AMAZON_SECURITY_LAKE + ObservabilityPipelineAwsAuth: + description: |- + AWS authentication credentials used for accessing AWS services such as S3. + If omitted, the system’s default credentials are used (for example, the IAM role and environment variables). + properties: + assume_role: + description: The Amazon Resource Name (ARN) of the role to assume. + type: string + external_id: + description: A unique identifier for cross-account role assumption. + type: string + session_name: + description: A session identifier used for logging and tracing the assumed role session. + type: string + type: object + ObservabilityPipelineBufferOptions: + description: Configuration for buffer settings on destination components. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineDiskBufferOptions" + - $ref: "#/components/schemas/ObservabilityPipelineMemoryBufferOptions" + - $ref: "#/components/schemas/ObservabilityPipelineMemoryBufferSizeOptions" + ObservabilityPipelineBufferOptionsDiskType: + default: disk + description: The type of the buffer that will be configured, a disk buffer. + enum: + - disk + type: string + x-enum-varnames: + - DISK + ObservabilityPipelineBufferOptionsMemoryType: + default: memory + description: The type of the buffer that will be configured, a memory buffer. + enum: + - memory + type: string + x-enum-varnames: + - MEMORY + ObservabilityPipelineBufferOptionsWhenFull: + default: block + description: Behavior when the buffer is full (block and stop accepting new events, or drop new events) + enum: + - block + - drop_newest + type: string + x-enum-varnames: + - BLOCK + - DROP_NEWEST + ObservabilityPipelineClickhouseDestination: + description: |- + The `clickhouse` destination sends log events to a ClickHouse database table over HTTP. + + **Supported pipeline types:** logs. + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationAuth" + batch: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationBatch" + batch_encoding: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationBatchEncoding" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + compression: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationCompression" + database: + description: Optional ClickHouse database name. If omitted, the user's default database on the ClickHouse server is used. + example: my_database + type: string + date_time_best_effort: + description: When `true`, enables flexible DateTime parsing on the ClickHouse server side. + example: false + type: boolean + endpoint_url_key: + description: |- + Name of the environment variable or secret that contains the ClickHouse HTTP endpoint URL. + Defaults to `DESTINATION_CLICKHOUSE_ENDPOINT_URL` (prefixed with `DD_OP_` at runtime). + example: CLICKHOUSE_ENDPOINT_URL + type: string + format: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationFormat" + id: + description: The unique identifier for this component. + example: clickhouse-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + skip_unknown_fields: + description: |- + When `true`, fields not present in the target table schema are dropped instead of causing insert errors. + When unset, the ClickHouse server's own `input_format_skip_unknown_fields` setting applies. + example: true + nullable: true + type: boolean + table: + description: Target ClickHouse table name. Events are inserted into this table. + example: application_logs + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationType" + required: + - id + - type + - inputs + - table + type: object + x-pipeline-types: [logs] + ObservabilityPipelineClickhouseDestinationAuth: + description: |- + HTTP Basic Authentication credentials for the ClickHouse destination. + When `strategy` is `basic`, provide `username_key` and `password_key` that reference environment variables or secrets containing the credentials. + properties: + password_key: + description: Name of the environment variable or secret that contains the ClickHouse password. + example: CLICKHOUSE_PASSWORD + type: string + strategy: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationAuthStrategy" + username_key: + description: Name of the environment variable or secret that contains the ClickHouse username. + example: CLICKHOUSE_USERNAME + type: string + required: + - strategy + type: object + ObservabilityPipelineClickhouseDestinationAuthStrategy: + description: The authentication strategy for ClickHouse HTTP requests. Only `basic` is supported. + enum: + - basic + example: basic + type: string + x-enum-varnames: + - BASIC + ObservabilityPipelineClickhouseDestinationBatch: + description: Batching configuration for ClickHouse inserts. + properties: + max_events: + description: Maximum number of events per batch before it is flushed. + example: 1000 + format: int64 + minimum: 1 + type: integer + timeout_secs: + description: Maximum number of seconds to wait before flushing a partial batch. + example: 1 + format: int64 + maximum: 65535 + minimum: 1 + type: integer + type: object + ObservabilityPipelineClickhouseDestinationBatchEncoding: + description: |- + Batch encoding configuration for the ClickHouse destination. + Required when `format` is `arrow_stream`. The `codec` field must be set to `arrow_stream`. + properties: + allow_nullable_fields: + description: |- + When `true`, null values are allowed for non-nullable fields in the ClickHouse schema. + When `false` (default), missing values for non-nullable columns cause encoding errors. + example: false + type: boolean + codec: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationBatchEncodingCodec" + required: + - codec + type: object + ObservabilityPipelineClickhouseDestinationBatchEncodingCodec: + description: The codec used for batch encoding. Only `arrow_stream` is supported. + enum: + - arrow_stream + example: arrow_stream + type: string + x-enum-varnames: + - ARROW_STREAM + ObservabilityPipelineClickhouseDestinationCompression: + description: |- + Compression setting for outbound HTTP requests to ClickHouse. + Can be specified as a shorthand string (`"gzip"` or `"none"`) or as an object + with an `algorithm` field and an optional `level` (gzip only, 1–9). + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationCompressionAlgorithm" + - $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationCompressionObject" + ObservabilityPipelineClickhouseDestinationCompressionAlgorithm: + description: The compression algorithm applied to outbound HTTP requests. + enum: + - gzip + - none + example: gzip + type: string + x-enum-varnames: + - GZIP + - NONE + ObservabilityPipelineClickhouseDestinationCompressionObject: + description: |- + Structured compression configuration for the ClickHouse destination. + Use `algorithm` to specify the compression type and `level` (optional, gzip only) to control compression strength. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestinationCompressionAlgorithm" + level: + description: Compression level (1–9). Only applicable when `algorithm` is `gzip`. + example: 6 + format: int64 + maximum: 9 + minimum: 1 + type: integer + required: + - algorithm + type: object + ObservabilityPipelineClickhouseDestinationFormat: + description: |- + Insert format for events sent to ClickHouse. + - `json_each_row`: Maps event fields to columns by name (ClickHouse `JSONEachRow`). + - `json_as_object`: Inserts each event into a single `Object('json')` / `JSON` column (ClickHouse `JSONAsObject`). + - `json_as_string`: Inserts each event into a single `String`-typed column as raw JSON (ClickHouse `JSONAsString`). + - `arrow_stream`: Batches events using Apache Arrow IPC streaming format. Requires `batch_encoding`. + enum: + - json_each_row + - json_as_object + - json_as_string + - arrow_stream + example: json_each_row + type: string + x-enum-varnames: + - JSON_EACH_ROW + - JSON_AS_OBJECT + - JSON_AS_STRING + - ARROW_STREAM + ObservabilityPipelineClickhouseDestinationType: + default: clickhouse + description: The destination type. The value must be `clickhouse`. + enum: + - clickhouse + example: clickhouse + type: string + x-enum-varnames: + - CLICKHOUSE + ObservabilityPipelineClientTls: + description: Configuration for enabling TLS encryption between the pipeline component and external services. + properties: + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the server’s TLS certificate. + type: string + crt_file: + description: Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services. + example: "/path/to/cert.crt" + type: string + key_file: + description: Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication. + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: TLS_KEY_PASSPHRASE + type: string + server_name: + description: Server name to use for Server Name Indication (SNI) and to verify against the certificate presented by the remote host. Use this when the address you connect to doesn't match the certificate's Common Name or Subject Alternative Name. + example: server.example.com + maxLength: 253 + minLength: 1 + type: string + required: + - crt_file + type: object + ObservabilityPipelineCloudPremDestination: + description: |- + The `cloud_prem` destination sends logs to Datadog CloudPrem. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + endpoint_url_key: + description: Name of the environment variable or secret that holds the CloudPrem endpoint URL. + example: CLOUDPREM_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: cloud-prem-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + tls: + $ref: "#/components/schemas/ObservabilityPipelineClientTls" + description: Configuration for TLS encryption. + type: + $ref: "#/components/schemas/ObservabilityPipelineCloudPremDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineCloudPremDestinationType: + default: cloud_prem + description: The destination type. The value should always be `cloud_prem`. + enum: + - cloud_prem + example: cloud_prem + type: string + x-enum-varnames: + - CLOUD_PREM + ObservabilityPipelineComponentDisplayName: + description: The display name for a component. + example: "my component" + type: string + ObservabilityPipelineConfig: + description: Specifies the pipeline's configuration, including its sources, processors, and destinations. + properties: + destinations: + description: A list of destination components where processed logs are sent. + example: [{"id": "datadog-logs-destination", "inputs": ["my-processor-group"], "type": "datadog_logs"}] + items: + $ref: "#/components/schemas/ObservabilityPipelineConfigDestinationItem" + type: array + pipeline_type: + $ref: "#/components/schemas/ObservabilityPipelineConfigPipelineType" + processor_groups: + description: A list of processor groups that transform or enrich log data. + example: [{"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}, {"enabled": true, "field": "message", "id": "json-processor", "include": "*", "type": "parse_json"}]}] + items: + $ref: "#/components/schemas/ObservabilityPipelineConfigProcessorGroup" + type: array + processors: + deprecated: true + description: |- + A list of processor groups that transform or enrich log data. + + **Deprecated:** This field is deprecated, you should now use the processor_groups field. + example: [] + items: + $ref: "#/components/schemas/ObservabilityPipelineConfigProcessorGroup" + type: array + sources: + description: A list of configured data sources for the pipeline. + example: [{"id": "datadog-agent-source", "type": "datadog_agent"}] + items: + $ref: "#/components/schemas/ObservabilityPipelineConfigSourceItem" + type: array + use_legacy_search_syntax: + description: |- + Set to `true` to continue using the legacy search syntax while migrating filter queries. After migrating all queries to the new syntax, set to `false`. + The legacy syntax is deprecated and will eventually be removed. + Requires Observability Pipelines Worker 2.11 or later. + Only applies to `logs` pipelines. This field is ignored for `metrics` pipelines. + See [Upgrade Your Filter Queries to the New Search Syntax](https://docs.datadoghq.com/observability_pipelines/guide/upgrade_your_filter_queries_to_the_new_search_syntax/) for more information. + type: boolean + required: + - sources + - destinations + type: object + ObservabilityPipelineConfigDestinationItem: + description: "A destination for the pipeline." + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestination" + - $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestination" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestination" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3Destination" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3GenericDestination" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestination" + - $ref: "#/components/schemas/AzureStorageDestination" + - $ref: "#/components/schemas/ObservabilityPipelineClickhouseDestination" + - $ref: "#/components/schemas/ObservabilityPipelineCloudPremDestination" + - $ref: "#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestination" + - $ref: "#/components/schemas/ObservabilityPipelineDatadogLogsDestination" + - $ref: "#/components/schemas/ObservabilityPipelineGoogleChronicleDestination" + - $ref: "#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestination" + - $ref: "#/components/schemas/ObservabilityPipelineGooglePubSubDestination" + - $ref: "#/components/schemas/ObservabilityPipelineKafkaDestination" + - $ref: "#/components/schemas/MicrosoftSentinelDestination" + - $ref: "#/components/schemas/ObservabilityPipelineNewRelicDestination" + - $ref: "#/components/schemas/ObservabilityPipelineOpenSearchDestination" + - $ref: "#/components/schemas/ObservabilityPipelineRsyslogDestination" + - $ref: "#/components/schemas/ObservabilityPipelineSentinelOneDestination" + - $ref: "#/components/schemas/ObservabilityPipelineSocketDestination" + - $ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestination" + - $ref: "#/components/schemas/ObservabilityPipelineSumoLogicDestination" + - $ref: "#/components/schemas/ObservabilityPipelineSyslogNgDestination" + - $ref: "#/components/schemas/ObservabilityPipelineDatabricksZerobusDestination" + - $ref: "#/components/schemas/ObservabilityPipelineDatadogMetricsDestination" + - $ref: "#/components/schemas/ObservabilityPipelineSplunkHecMetricsDestination" + ObservabilityPipelineConfigPipelineType: + default: logs + description: The type of data being ingested. Defaults to `logs` if not specified. + enum: [logs, metrics] + example: logs + type: string + x-enum-varnames: + - LOGS + - METRICS + ObservabilityPipelineConfigProcessorGroup: + description: "A group of processors." + example: {"enabled": true, "id": "my-processor-group", "include": "service:my-service", "inputs": ["datadog-agent-source"], "processors": [{"enabled": true, "fields": [{"name": "env", "value": "prod"}], "id": "add-fields-processor", "include": "*", "type": "add_fields"}, {"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}]} + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Whether this processor group is enabled. + example: true + type: boolean + id: + description: The unique identifier for the processor group. + example: "grouped-processors" + type: string + include: + description: Conditional expression for when this processor group should execute. + example: "service:my-service" + type: string + inputs: + description: A list of IDs for components whose output is used as the input for this processor group. + example: ["datadog-agent-source"] + items: + description: The ID of a component whose output is used as input. + type: string + type: array + processors: + description: Processors applied sequentially within this group. Events flow through each processor in order. + example: [{"enabled": true, "fields": [{"name": "env", "value": "prod"}], "id": "add-fields-processor", "include": "*", "type": "add_fields"}, {"enabled": true, "id": "filter-processor", "include": "status:error", "type": "filter"}] + items: + $ref: "#/components/schemas/ObservabilityPipelineConfigProcessorItem" + type: array + required: + - id + - include + - inputs + - processors + - enabled + type: object + ObservabilityPipelineConfigProcessorItem: + description: "A processor for the pipeline." + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineFilterProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineAddEnvVarsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineAddFieldsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineAddHostnameProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineCustomProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineDatadogTagsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineDedupeProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineGenerateMetricsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineGenerateMetricsV2Processor" + - $ref: "#/components/schemas/ObservabilityPipelineOcsfMapperProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineParseJSONProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineParseXMLProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineReduceProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineRemoveFieldsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineRenameFieldsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineSampleProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineSplitArrayProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineThrottleProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineAddMetricTagsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineAggregateProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineMetricTagsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineRenameMetricTagsProcessor" + - $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessor" + ObservabilityPipelineConfigSourceItem: + description: "A data source for the pipeline." + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineDatadogAgentSource" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSource" + - $ref: "#/components/schemas/ObservabilityPipelineAmazonS3Source" + - $ref: "#/components/schemas/ObservabilityPipelineFluentBitSource" + - $ref: "#/components/schemas/ObservabilityPipelineFluentdSource" + - $ref: "#/components/schemas/ObservabilityPipelineGooglePubSubSource" + - $ref: "#/components/schemas/ObservabilityPipelineHttpClientSource" + - $ref: "#/components/schemas/ObservabilityPipelineHttpServerSource" + - $ref: "#/components/schemas/ObservabilityPipelineKafkaSource" + - $ref: "#/components/schemas/ObservabilityPipelineLogstashSource" + - $ref: "#/components/schemas/ObservabilityPipelineRsyslogSource" + - $ref: "#/components/schemas/ObservabilityPipelineSocketSource" + - $ref: "#/components/schemas/ObservabilityPipelineSplunkHecSource" + - $ref: "#/components/schemas/ObservabilityPipelineSplunkTcpSource" + - $ref: "#/components/schemas/ObservabilityPipelineSumoLogicSource" + - $ref: "#/components/schemas/ObservabilityPipelineSyslogNgSource" + - $ref: "#/components/schemas/ObservabilityPipelineWebsocketSource" + - $ref: "#/components/schemas/ObservabilityPipelineOpentelemetrySource" + ObservabilityPipelineCrowdStrikeNextGenSiemDestination: + description: |- + The `crowdstrike_next_gen_siem` destination forwards logs to CrowdStrike Next Gen SIEM. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + compression: + $ref: "#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding" + endpoint_url_key: + description: Name of the environment variable or secret that holds the CrowdStrike endpoint URL. + example: CROWDSTRIKE_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: crowdstrike-ngsiem-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + token_key: + description: Name of the environment variable or secret that holds the CrowdStrike API token. + example: CROWDSTRIKE_TOKEN + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType" + required: + - id + - type + - inputs + - encoding + type: object + x-pipeline-types: [logs] + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression: + description: Compression configuration for log events. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm" + level: + description: Compression level. + example: 6 + format: int64 + type: integer + required: + - algorithm + type: object + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm: + description: Compression algorithm for log events. + enum: + - gzip + - zlib + example: gzip + type: string + x-enum-varnames: + - GZIP + - ZLIB + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType: + default: crowdstrike_next_gen_siem + description: The destination type. The value should always be `crowdstrike_next_gen_siem`. + enum: + - crowdstrike_next_gen_siem + example: crowdstrike_next_gen_siem + type: string + x-enum-varnames: + - CROWDSTRIKE_NEXT_GEN_SIEM + ObservabilityPipelineCustomProcessor: + description: |- + The `custom_processor` processor transforms events using [Vector Remap Language (VRL)](https://vector.dev/docs/reference/vrl/) scripts with advanced filtering capabilities. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this processor. + example: remap-vrl-processor + type: string + include: + default: "*" + description: A Datadog search query used to determine which logs this processor targets. This field should always be set to `*` for the custom_processor processor. + example: "*" + type: string + remaps: + description: Array of VRL remap rules. + items: + $ref: "#/components/schemas/ObservabilityPipelineCustomProcessorRemap" + minItems: 1 + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineCustomProcessorType" + required: + - id + - type + - include + - remaps + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineCustomProcessorRemap: + description: Defines a single VRL remap rule with its own filtering and transformation logic. + properties: + drop_on_error: + description: Whether to drop events that caused errors during processing. + example: false + type: boolean + enabled: + description: Whether this remap rule is enabled. + example: true + type: boolean + include: + description: A Datadog search query used to filter events for this specific remap rule. + example: "service:web" + type: string + name: + description: A descriptive name for this remap rule. + example: "Parse JSON from message field" + type: string + source: + description: The VRL script source code that defines the processing logic. + example: ". = parse_json!(.message)" + type: string + required: + - include + - name + - source + - drop_on_error + type: object + ObservabilityPipelineCustomProcessorType: + default: custom_processor + description: The processor type. The value should always be `custom_processor`. + enum: + - custom_processor + example: custom_processor + type: string + x-enum-varnames: + - CUSTOM_PROCESSOR + ObservabilityPipelineData: + description: Contains the pipeline’s ID, type, and configuration attributes. + properties: + attributes: + $ref: "#/components/schemas/ObservabilityPipelineDataAttributes" + id: + description: Unique identifier for the pipeline. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + type: + default: pipelines + description: The resource type identifier. For pipeline resources, this should always be set to `pipelines`. + example: pipelines + type: string + required: + - id + - type + - attributes + type: object + ObservabilityPipelineDataAttributes: + description: Defines the pipeline’s name and its components (sources, processors, and destinations). + properties: + config: + $ref: "#/components/schemas/ObservabilityPipelineConfig" + name: + description: Name of the pipeline. + example: Main Observability Pipeline + type: string + required: + - name + - config + type: object + ObservabilityPipelineDatabricksZerobusDestination: + description: |- + The `databricks_zerobus` destination sends logs to Databricks using the Zerobus ingestion API, streaming data directly into your Databricks Lakehouse. + + **Supported pipeline types:** Logs, rehydration + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineDatabricksZerobusDestinationAuth" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + id: + description: The unique identifier for this component. + example: databricks-zerobus-destination + type: string + ingestion_endpoint_key: + description: Name of the environment variable or the secret identifier that references the Databricks Zerobus ingestion endpoint, which is used to stream data directly into your Databricks Lakehouse. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_INGESTION_ENDPOINT + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + table_name: + description: The fully qualified name of your target Databricks table. Make sure this table already exists in your Databricks workspace before deploying. + example: catalog.schema.table + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineDatabricksZerobusDestinationType" + unity_catalog_endpoint_key: + description: Name of the environment variable or the secret identifier that references your Databricks workspace URL, which is used to communicate with the Unity Catalog API. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_UNITY_CATALOG_ENDPOINT + type: string + required: + - id + - type + - inputs + - table_name + - auth + type: object + x-pipeline-types: [logs, rehydration] + ObservabilityPipelineDatabricksZerobusDestinationAuth: + description: OAuth credentials for authenticating with the Databricks Zerobus ingestion API. + properties: + client_id: + description: Your service principal application ID (UUID). + example: 9a8b7c6d-1234-5678-abcd-ef0123456789 + type: string + client_secret_key: + description: Name of the environment variable or secret that holds the OAuth client secret used to authenticate with the Databricks ingestion endpoint. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_OAUTH_CLIENT_SECRET + type: string + required: + - client_id + type: object + ObservabilityPipelineDatabricksZerobusDestinationType: + default: databricks_zerobus + description: The destination type. The value must be `databricks_zerobus`. + enum: + - databricks_zerobus + example: databricks_zerobus + type: string + x-enum-varnames: + - DATABRICKS_ZEROBUS + ObservabilityPipelineDatadogAgentSource: + description: |- + The `datadog_agent` source collects logs/metrics from the Datadog Agent. + + **Supported pipeline types:** logs, metrics + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Datadog Agent source. + example: DATADOG_AGENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "datadog-agent-source" + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineDatadogAgentSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs, metrics] + ObservabilityPipelineDatadogAgentSourceType: + default: datadog_agent + description: The source type. The value should always be `datadog_agent`. + enum: + - datadog_agent + example: datadog_agent + type: string + x-enum-varnames: + - DATADOG_AGENT + ObservabilityPipelineDatadogLogsDestination: + description: |- + The `datadog_logs` destination forwards logs to Datadog Log Management. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + id: + description: The unique identifier for this component. + example: "datadog-logs-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + routes: + description: A list of routing rules that forward matching logs to Datadog using dedicated API keys. + example: [{"api_key_key": "API_KEY_IDENTIFIER", "include": "service:api", "route_id": "datadog-logs-route-us1", "site": "us1"}] + items: + $ref: "#/components/schemas/ObservabilityPipelineDatadogLogsDestinationRoute" + maxItems: 100 + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineDatadogLogsDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineDatadogLogsDestinationRoute: + description: Defines how the `datadog_logs` destination routes matching logs to a Datadog site using a specific API key. + properties: + api_key_key: + description: Name of the environment variable or secret that stores the Datadog API key used by this route. + example: API_KEY_IDENTIFIER + type: string + include: + description: A Datadog search query that determines which logs are forwarded using this route. + example: service:api + type: string + route_id: + description: Unique identifier for this route within the destination. + example: datadog-logs-route-us + type: string + site: + description: Datadog site where matching logs are sent (for example, `us1`). + example: us1 + type: string + type: object + ObservabilityPipelineDatadogLogsDestinationType: + default: datadog_logs + description: The destination type. The value should always be `datadog_logs`. + enum: + - datadog_logs + example: datadog_logs + type: string + x-enum-varnames: + - DATADOG_LOGS + ObservabilityPipelineDatadogMetricsDestination: + description: |- + The `datadog_metrics` destination forwards metrics to Datadog. + + **Supported pipeline types:** metrics + properties: + id: + description: The unique identifier for this component. + example: datadog-metrics-destination + type: string + inputs: + description: A list of component IDs whose output is used as the input for this component. + example: ["metric-tags-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineDatadogMetricsDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineDatadogMetricsDestinationType: + default: datadog_metrics + description: The destination type. The value should always be `datadog_metrics`. + enum: + - datadog_metrics + example: datadog_metrics + type: string + x-enum-varnames: + - DATADOG_METRICS + ObservabilityPipelineDatadogTagsProcessor: + description: |- + The `datadog_tags` processor includes or excludes specific Datadog tags in your logs. + + **Supported pipeline types:** logs + properties: + action: + $ref: "#/components/schemas/ObservabilityPipelineDatadogTagsProcessorAction" + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "datadog-tags-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + keys: + description: A list of tag keys. + example: ["env", "service", "version"] + items: + description: A Datadog tag key to include or exclude. + type: string + type: array + mode: + $ref: "#/components/schemas/ObservabilityPipelineDatadogTagsProcessorMode" + type: + $ref: "#/components/schemas/ObservabilityPipelineDatadogTagsProcessorType" + required: + - id + - type + - include + - mode + - action + - keys + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineDatadogTagsProcessorAction: + description: The action to take on tags with matching keys. + enum: + - include + - exclude + example: include + type: string + x-enum-varnames: + - INCLUDE + - EXCLUDE + ObservabilityPipelineDatadogTagsProcessorMode: + description: The processing mode. + enum: + - filter + example: filter + type: string + x-enum-varnames: + - FILTER + ObservabilityPipelineDatadogTagsProcessorType: + default: datadog_tags + description: The processor type. The value should always be `datadog_tags`. + enum: + - datadog_tags + example: datadog_tags + type: string + x-enum-varnames: + - DATADOG_TAGS + ObservabilityPipelineDecoding: + description: The decoding format used to interpret incoming logs. + enum: + - bytes + - gelf + - json + - syslog + example: json + type: string + x-enum-varnames: + - DECODE_BYTES + - DECODE_GELF + - DECODE_JSON + - DECODE_SYSLOG + ObservabilityPipelineDedupeProcessor: + description: |- + The `dedupe` processor removes duplicate fields in log events. + + **Supported pipeline types:** logs + properties: + cache: + $ref: "#/components/schemas/ObservabilityPipelineDedupeProcessorCache" + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of log field paths to check for duplicates. + example: ["log.message", "log.error"] + items: + description: A log field path to evaluate for duplicate values. + type: string + type: array + id: + description: The unique identifier for this processor. + example: dedupe-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + mode: + $ref: "#/components/schemas/ObservabilityPipelineDedupeProcessorMode" + type: + $ref: "#/components/schemas/ObservabilityPipelineDedupeProcessorType" + required: + - id + - type + - include + - fields + - mode + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineDedupeProcessorCache: + description: Configuration for the cache used to detect duplicates. + properties: + num_events: + description: The number of events to cache for duplicate detection. + example: 5000 + format: int64 + maximum: 1000000000 + minimum: 1 + type: integer + required: + - num_events + type: object + ObservabilityPipelineDedupeProcessorMode: + description: The deduplication mode to apply to the fields. + enum: + - match + - ignore + example: match + type: string + x-enum-varnames: + - MATCH + - IGNORE + ObservabilityPipelineDedupeProcessorType: + default: dedupe + description: The processor type. The value should always be `dedupe`. + enum: + - dedupe + example: dedupe + type: string + x-enum-varnames: + - DEDUPE + ObservabilityPipelineDiskBufferOptions: + description: Options for configuring a disk buffer. + properties: + max_size: + description: Maximum size of the disk buffer. + example: 4096 + format: int64 + type: integer + type: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptionsDiskType" + when_full: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull" + required: + - max_size + type: object + ObservabilityPipelineElasticsearchDestination: + description: |- + The `elasticsearch` destination writes logs or metrics to an Elasticsearch cluster. + + **Supported pipeline types:** logs, metrics + properties: + api_version: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion" + auth: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + bulk_index: + description: The name of the index to write events to in Elasticsearch. + example: logs-index + type: string + compression: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompression" + data_stream: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationDataStream" + endpoint_url_key: + description: Name of the environment variable or secret that holds the Elasticsearch endpoint URL. + example: ELASTICSEARCH_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: "elasticsearch-destination" + type: string + id_key: + description: The name of the field used as the document ID in Elasticsearch. + example: id + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + pipeline: + description: The name of an Elasticsearch ingest pipeline to apply to events before indexing. + example: my-pipeline + type: string + request_retry_partial: + description: When `true`, retries failed partial bulk requests when some events in a batch fail while others succeed. + type: boolean + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs, metrics] + ObservabilityPipelineElasticsearchDestinationApiVersion: + description: The Elasticsearch API version to use. Set to `auto` to auto-detect. + enum: [auto, v6, v7, v8] + example: auto + type: string + x-enum-varnames: + - AUTO + - V6 + - V7 + - V8 + ObservabilityPipelineElasticsearchDestinationAuth: + description: |- + Authentication settings for the Elasticsearch destination. + When `strategy` is `basic`, use `username_key` and `password_key` to reference credentials stored in environment variables or secrets. + properties: + password_key: + description: Name of the environment variable or secret that holds the Elasticsearch password (used when `strategy` is `basic`). + example: ELASTICSEARCH_PASSWORD + type: string + strategy: + $ref: "#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy" + username_key: + description: Name of the environment variable or secret that holds the Elasticsearch username (used when `strategy` is `basic`). + example: ELASTICSEARCH_USERNAME + type: string + required: + - strategy + type: object + ObservabilityPipelineElasticsearchDestinationCompression: + description: Compression configuration for the Elasticsearch destination. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompressionAlgorithm" + level: + description: The compression level. Only applicable for `gzip`, `zlib`, and `zstd` algorithms. + example: 6 + format: int64 + type: integer + required: + - algorithm + type: object + ObservabilityPipelineElasticsearchDestinationCompressionAlgorithm: + description: The compression algorithm applied when sending data to Elasticsearch. + enum: [none, gzip, zlib, zstd, snappy] + example: gzip + type: string + x-enum-varnames: + - NONE + - GZIP + - ZLIB + - ZSTD + - SNAPPY + ObservabilityPipelineElasticsearchDestinationDataStream: + description: Configuration options for writing to Elasticsearch Data Streams instead of a fixed index. + properties: + auto_routing: + description: When `true`, automatically routes events to the appropriate data stream based on the event content. + type: boolean + dataset: + description: The data stream dataset. This groups events by their source or application. + type: string + dtype: + description: The data stream type. This determines how events are categorized within the data stream. + type: string + namespace: + description: The data stream namespace. This separates events into different environments or domains. + type: string + sync_fields: + description: When `true`, synchronizes data stream fields with the Elasticsearch index mapping. + type: boolean + type: object + ObservabilityPipelineElasticsearchDestinationType: + default: elasticsearch + description: The destination type. The value should always be `elasticsearch`. + enum: + - elasticsearch + example: elasticsearch + type: string + x-enum-varnames: + - ELASTICSEARCH + ObservabilityPipelineEnrichmentTableFieldEventLookup: + description: Looks up a value from a field path in the log event. + properties: + event: + description: The path to the field in the log event to use as the lookup key. + example: log.user.id + type: string + required: + - event + type: object + ObservabilityPipelineEnrichmentTableFieldSecretLookup: + description: Looks up a value stored as a pipeline secret. + properties: + secret: + description: The name of the secret containing the lookup key value. + example: MY_LOOKUP_SECRET + type: string + required: + - secret + type: object + ObservabilityPipelineEnrichmentTableFieldStringPath: + description: A plain field path in the log event, used as the lookup key. + example: log.user.id + type: string + ObservabilityPipelineEnrichmentTableFieldVrlLookup: + description: Evaluates a VRL expression to produce the lookup key. + properties: + vrl: + description: A VRL expression that returns the value to use as the lookup key. + example: .log.user.id + type: string + required: + - vrl + type: object + ObservabilityPipelineEnrichmentTableFile: + description: Defines a static enrichment table loaded from a CSV file. + properties: + encoding: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncoding" + key: + description: Key fields used to look up enrichment values. + items: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItems" + type: array + path: + description: Path to the CSV file. + example: /etc/enrichment/lookup.csv + type: string + schema: + description: Schema defining column names and their types. + items: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItems" + type: array + required: + - encoding + - key + - path + - schema + type: object + ObservabilityPipelineEnrichmentTableFileEncoding: + description: File encoding format. + properties: + delimiter: + description: The `encoding` `delimiter`. + example: "," + type: string + includes_headers: + description: The `encoding` `includes_headers`. + example: true + type: boolean + type: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncodingType" + required: + - type + - delimiter + - includes_headers + type: object + ObservabilityPipelineEnrichmentTableFileEncodingType: + description: Specifies the encoding format (e.g., CSV) used for enrichment tables. + enum: [csv] + example: csv + type: string + x-enum-varnames: + - CSV + ObservabilityPipelineEnrichmentTableFileKeyItemField: + description: |- + Specifies the source of the key value used for enrichment table lookups. + Can be a plain field path string or an object specifying `event`, `vrl`, or `secret`. + example: log.user.id + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldStringPath" + - $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldEventLookup" + - $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldVrlLookup" + - $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFieldSecretLookup" + ObservabilityPipelineEnrichmentTableFileKeyItems: + description: Defines how to map log fields to enrichment table columns during lookups. + properties: + column: + description: The `items` `column`. + example: user_id + type: string + comparison: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison" + field: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemField" + required: + - column + - comparison + - field + type: object + ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: + description: Defines how to compare key fields for enrichment table lookups. + enum: [equals] + example: equals + type: string + x-enum-varnames: + - EQUALS + ObservabilityPipelineEnrichmentTableFileSchemaItems: + description: Describes a single column and its type in an enrichment table schema. + properties: + column: + description: The `items` `column`. + example: region + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItemsType" + required: + - column + - type + type: object + ObservabilityPipelineEnrichmentTableFileSchemaItemsType: + description: Declares allowed data types for enrichment table columns. + enum: [string, boolean, integer, float, date, timestamp] + example: string + type: string + x-enum-varnames: + - STRING + - BOOLEAN + - INTEGER + - FLOAT + - DATE + - TIMESTAMP + ObservabilityPipelineEnrichmentTableGeoIp: + description: Uses a GeoIP database to enrich logs based on an IP field. + properties: + key_field: + description: Path to the IP field in the log. + example: log.source.ip + type: string + locale: + description: Locale used to resolve geographical names. + example: en + type: string + path: + description: Path to the GeoIP database file. + example: /etc/geoip/GeoLite2-City.mmdb + type: string + required: + - key_field + - locale + - path + type: object + ObservabilityPipelineEnrichmentTableProcessor: + description: |- + The `enrichment_table` processor enriches logs using a static CSV file, GeoIP database, or reference table. Exactly one of `file`, `geoip`, or `reference_table` must be configured. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + file: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableFile" + geoip: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp" + id: + description: The unique identifier for this processor. + example: enrichment-table-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: source:my-source + type: string + reference_table: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableReferenceTable" + target: + description: Path where enrichment results should be stored in the log. + example: enriched.geoip + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineEnrichmentTableProcessorType" + required: + - id + - type + - include + - target + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineEnrichmentTableProcessorType: + default: enrichment_table + description: The processor type. The value should always be `enrichment_table`. + enum: + - enrichment_table + example: enrichment_table + type: string + x-enum-varnames: + - ENRICHMENT_TABLE + ObservabilityPipelineEnrichmentTableReferenceTable: + description: Uses a Datadog reference table to enrich logs. + properties: + app_key_key: + description: Name of the environment variable or secret that holds the Datadog application key used to access the reference table. + example: DD_APP_KEY + type: string + columns: + description: List of column names to include from the reference table. If not provided, all columns are included. + items: + description: The name of a column to include from the reference table. + type: string + type: array + key_field: + description: Path to the field in the log event to match against the reference table. + example: log.user.id + type: string + table_id: + description: The unique identifier of the reference table. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + required: + - key_field + - table_id + type: object + ObservabilityPipelineFieldValue: + description: Represents a static key-value pair used in various processors. + properties: + name: + description: The field name. + example: "field_name" + type: string + value: + description: The field value. + example: "field_value" + type: string + required: + - name + - value + type: object + ObservabilityPipelineFilterProcessor: + description: |- + The `filter` processor allows conditional processing of logs/metrics based on a Datadog search query. Logs/metrics that match the `include` query are passed through; others are discarded. + + **Supported pipeline types:** logs, metrics + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "filter-processor" + type: string + include: + description: A Datadog search query used to determine which logs/metrics should pass through the filter. Logs/metrics that match this query continue to downstream components; others are dropped. + example: "service:my-service" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineFilterProcessorType" + required: + - id + - type + - include + - enabled + type: object + x-pipeline-types: [logs, metrics] + ObservabilityPipelineFilterProcessorType: + default: filter + description: The processor type. The value should always be `filter`. + enum: + - filter + example: filter + type: string + x-enum-varnames: + - FILTER + ObservabilityPipelineFluentBitSource: + description: |- + The `fluent_bit` source ingests logs from Fluent Bit. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Fluent Bit receiver. + example: FLUENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "fluent-source" + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineFluentBitSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineFluentBitSourceType: + default: fluent_bit + description: The source type. The value should always be `fluent_bit`. + enum: + - fluent_bit + example: fluent_bit + type: string + x-enum-varnames: + - FLUENT_BIT + ObservabilityPipelineFluentdSource: + description: |- + The `fluentd` source ingests logs from a Fluentd-compatible service. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Fluent receiver. + example: FLUENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "fluent-source" + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineFluentdSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineFluentdSourceType: + default: fluentd + description: The source type. The value should always be `fluentd. + enum: + - fluentd + example: fluentd + type: string + x-enum-varnames: + - FLUENTD + ObservabilityPipelineGcpAuth: + description: |- + Google Cloud credentials used to authenticate with Google Cloud Storage. + properties: + credentials_file: + description: Path to the Google Cloud service account key file. + example: /var/secrets/gcp-credentials.json + type: string + required: + - credentials_file + type: object + ObservabilityPipelineGenerateMetricsProcessor: + description: |- + The `generate_datadog_metrics` processor creates custom metrics from logs and sends them to Datadog. + Metrics can be counters, gauges, or distributions and optionally grouped by log fields. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this component in other parts of the pipeline. + example: generate-metrics-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + metrics: + description: Configuration for generating individual metrics. + items: + $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetric" + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineGenerateMetricsProcessorType" + required: + - id + - type + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineGenerateMetricsProcessorType: + default: generate_datadog_metrics + description: The processor type. Always `generate_datadog_metrics`. + enum: + - generate_datadog_metrics + example: generate_datadog_metrics + type: string + x-enum-varnames: + - GENERATE_DATADOG_METRICS + ObservabilityPipelineGenerateMetricsV2Processor: + description: |- + The `generate_metrics` processor creates custom metrics from logs. + Metrics can be counters, gauges, or distributions and optionally grouped by log fields. + The generated metrics must be routed to a metrics destination using the input `.metrics`. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this component in other parts of the pipeline. + example: generate-metrics-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + metrics: + description: Configuration for generating individual metrics. + items: + $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetric" + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineGenerateMetricsV2ProcessorType" + required: + - id + - type + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineGenerateMetricsV2ProcessorType: + default: generate_metrics + description: The processor type. Always `generate_metrics`. + enum: + - generate_metrics + example: generate_metrics + type: string + x-enum-varnames: + - GENERATE_METRICS + ObservabilityPipelineGeneratedMetric: + description: |- + Defines a log-based custom metric, including its name, type, filter, value computation strategy, + and optional grouping fields. + properties: + group_by: + description: Optional fields used to group the metric series. + example: ["service", "env"] + items: + description: A log field name used to group the metric series. + type: string + type: array + include: + description: Datadog filter query to match logs for metric generation. + example: service:billing + type: string + metric_type: + $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetricMetricType" + name: + description: Name of the custom metric to be created. + example: logs.processed + type: string + value: + $ref: "#/components/schemas/ObservabilityPipelineMetricValue" + required: + - name + - include + - metric_type + - value + type: object + ObservabilityPipelineGeneratedMetricIncrementByField: + description: Strategy that increments a generated metric based on the value of a log field. + properties: + field: + description: Name of the log field containing the numeric value to increment the metric by. + example: "errors" + type: string + strategy: + $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy" + required: + - strategy + - field + type: object + ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy: + description: Uses a numeric field in the log event as the metric increment. + enum: + - increment_by_field + example: increment_by_field + type: string + x-enum-varnames: + - INCREMENT_BY_FIELD + ObservabilityPipelineGeneratedMetricIncrementByOne: + description: Strategy that increments a generated metric by one for each matching event. + properties: + strategy: + $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOneStrategy" + required: + - strategy + type: object + ObservabilityPipelineGeneratedMetricIncrementByOneStrategy: + description: Increments the metric by 1 for each matching event. + enum: + - increment_by_one + example: increment_by_one + type: string + x-enum-varnames: + - INCREMENT_BY_ONE + ObservabilityPipelineGeneratedMetricMetricType: + description: Type of metric to create. + enum: + - count + - gauge + - distribution + example: count + type: string + x-enum-varnames: + - COUNT + - GAUGE + - DISTRIBUTION + ObservabilityPipelineGoogleChronicleDestination: + description: |- + The `google_chronicle` destination sends logs to Google Chronicle. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineGcpAuth" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + customer_id: + description: The Google Chronicle customer ID. + example: abcdefg123456789 + type: string + encoding: + $ref: "#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding" + endpoint_url_key: + description: Name of the environment variable or secret that holds the Google Chronicle endpoint URL. + example: CHRONICLE_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: google-chronicle-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["parse-json-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + log_type: + description: The log type metadata associated with the Chronicle destination. + example: nginx_logs + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationType" + required: + - id + - type + - inputs + - customer_id + type: object + x-pipeline-types: [logs] + ObservabilityPipelineGoogleChronicleDestinationEncoding: + description: The encoding format for the logs sent to Chronicle. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineGoogleChronicleDestinationType: + default: google_chronicle + description: The destination type. The value should always be `google_chronicle`. + enum: + - google_chronicle + example: google_chronicle + type: string + x-enum-varnames: + - GOOGLE_CHRONICLE + ObservabilityPipelineGoogleCloudStorageDestination: + description: |- + The `google_cloud_storage` destination stores logs in a Google Cloud Storage (GCS) bucket. + It requires a bucket name, Google Cloud authentication, and metadata fields. + + **Supported pipeline types:** logs + properties: + acl: + $ref: "#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationAcl" + auth: + $ref: "#/components/schemas/ObservabilityPipelineGcpAuth" + bucket: + description: Name of the GCS bucket. + example: "error-logs" + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + id: + description: Unique identifier for the destination component. + example: gcs-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["datadog-agent-source"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + key_prefix: + description: Optional prefix for object keys within the GCS bucket. + type: string + metadata: + description: Custom metadata to attach to each object uploaded to the GCS bucket. + items: + $ref: "#/components/schemas/ObservabilityPipelineMetadataEntry" + type: array + storage_class: + $ref: "#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationStorageClass" + type: + $ref: "#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationType" + required: + - id + - type + - inputs + - bucket + - storage_class + type: object + x-pipeline-types: [logs] + ObservabilityPipelineGoogleCloudStorageDestinationAcl: + description: Access control list setting for objects written to the bucket. + enum: + - private + - project-private + - public-read + - authenticated-read + - bucket-owner-read + - bucket-owner-full-control + example: private + type: string + x-enum-varnames: + - PRIVATE + - PROJECTNOT_PRIVATE + - PUBLICNOT_READ + - AUTHENTICATEDNOT_READ + - BUCKETNOT_OWNERNOT_READ + - BUCKETNOT_OWNERNOT_FULLNOT_CONTROL + ObservabilityPipelineGoogleCloudStorageDestinationStorageClass: + description: Storage class used for objects stored in GCS. + enum: + - STANDARD + - NEARLINE + - COLDLINE + - ARCHIVE + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + - NEARLINE + - COLDLINE + - ARCHIVE + ObservabilityPipelineGoogleCloudStorageDestinationType: + default: google_cloud_storage + description: The destination type. Always `google_cloud_storage`. + enum: + - google_cloud_storage + example: google_cloud_storage + type: string + x-enum-varnames: + - GOOGLE_CLOUD_STORAGE + ObservabilityPipelineGooglePubSubDestination: + description: |- + The `google_pubsub` destination publishes logs to a Google Cloud Pub/Sub topic. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineGcpAuth" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineGooglePubSubDestinationEncoding" + endpoint_url_key: + description: Name of the environment variable or secret that holds the Google Cloud Pub/Sub endpoint URL. + example: GCP_PUBSUB_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: google-pubsub-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + project: + description: The Google Cloud project ID that owns the Pub/Sub topic. + example: my-gcp-project + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + topic: + description: The Pub/Sub topic name to publish logs to. + example: logs-subscription + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineGooglePubSubDestinationType" + required: + - id + - type + - inputs + - encoding + - project + - topic + type: object + x-pipeline-types: [logs] + ObservabilityPipelineGooglePubSubDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineGooglePubSubDestinationType: + default: google_pubsub + description: The destination type. The value should always be `google_pubsub`. + enum: + - google_pubsub + example: google_pubsub + type: string + x-enum-varnames: + - GOOGLE_PUBSUB + ObservabilityPipelineGooglePubSubSource: + description: |- + The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub subscription. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineGcpAuth" + decoding: + $ref: "#/components/schemas/ObservabilityPipelineDecoding" + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: google-pubsub-source + type: string + project: + description: The Google Cloud project ID that owns the Pub/Sub subscription. + example: my-gcp-project + type: string + subscription: + description: The Pub/Sub subscription name from which messages are consumed. + example: logs-subscription + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineGooglePubSubSourceType" + required: + - id + - type + - decoding + - project + - subscription + type: object + x-pipeline-types: [logs] + ObservabilityPipelineGooglePubSubSourceType: + default: google_pubsub + description: The source type. The value should always be `google_pubsub`. + enum: [google_pubsub] + example: google_pubsub + type: string + x-enum-varnames: [GOOGLE_PUBSUB] + ObservabilityPipelineHttpClientDestination: + description: |- + The `http_client` destination sends data to an HTTP endpoint. + + **Supported pipeline types:** logs, metrics + properties: + auth_strategy: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestinationAuthStrategy" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + compression: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestinationCompression" + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + encoding: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestinationEncoding" + id: + description: The unique identifier for this component. + example: http-client-destination + type: string + inputs: + description: A list of component IDs whose output is used as the input for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineClientTls" + token_key: + description: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestinationType" + uri_key: + description: Name of the environment variable or secret that holds the HTTP endpoint URI. + example: HTTP_DESTINATION_URI + type: string + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string + required: + - id + - type + - inputs + - encoding + type: object + x-pipeline-types: [logs, metrics] + ObservabilityPipelineHttpClientDestinationAuthStrategy: + description: HTTP authentication strategy. + enum: [none, basic, bearer] + example: basic + type: string + x-enum-varnames: + - NONE + - BASIC + - BEARER + ObservabilityPipelineHttpClientDestinationCompression: + description: Compression configuration for HTTP requests. + properties: + algorithm: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientDestinationCompressionAlgorithm" + required: + - algorithm + type: object + ObservabilityPipelineHttpClientDestinationCompressionAlgorithm: + description: Compression algorithm. + enum: [gzip] + example: gzip + type: string + x-enum-varnames: + - GZIP + ObservabilityPipelineHttpClientDestinationEncoding: + description: Encoding format for log events. + enum: [json] + example: json + type: string + x-enum-varnames: + - JSON + ObservabilityPipelineHttpClientDestinationType: + default: http_client + description: The destination type. The value should always be `http_client`. + enum: [http_client] + example: http_client + type: string + x-enum-varnames: + - HTTP_CLIENT + ObservabilityPipelineHttpClientSource: + description: |- + The `http_client` source scrapes logs from HTTP endpoints at regular intervals. + + **Supported pipeline types:** logs + properties: + auth_strategy: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy" + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + decoding: + $ref: "#/components/schemas/ObservabilityPipelineDecoding" + endpoint_url_key: + description: Name of the environment variable or secret that holds the HTTP endpoint URL to scrape. + example: HTTP_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: http-client-source + type: string + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string + scrape_interval_secs: + description: The interval (in seconds) between HTTP scrape requests. + example: 60 + format: int64 + type: integer + scrape_timeout_secs: + description: The timeout (in seconds) for each scrape request. + example: 10 + format: int64 + type: integer + tls: + $ref: "#/components/schemas/ObservabilityPipelineClientTls" + token_key: + description: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineHttpClientSourceType" + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string + required: + - id + - type + - decoding + type: object + x-pipeline-types: [logs] + ObservabilityPipelineHttpClientSourceAuthStrategy: + description: Optional authentication strategy for HTTP requests. + enum: [none, basic, bearer, custom] + example: basic + type: string + x-enum-varnames: + - NONE + - BASIC + - BEARER + - CUSTOM + ObservabilityPipelineHttpClientSourceType: + default: http_client + description: The source type. The value should always be `http_client`. + enum: [http_client] + example: http_client + type: string + x-enum-varnames: [HTTP_CLIENT] + ObservabilityPipelineHttpServerSource: + description: |- + The `http_server` source collects logs over HTTP POST from external services. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the HTTP server. + example: HTTP_SERVER_ADDRESS + type: string + auth_strategy: + $ref: "#/components/schemas/ObservabilityPipelineHttpServerSourceAuthStrategy" + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + decoding: + $ref: "#/components/schemas/ObservabilityPipelineDecoding" + id: + description: Unique ID for the HTTP server source. + example: "http-server-source" + type: string + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `plain`). + example: HTTP_AUTH_PASSWORD + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineHttpServerSourceType" + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `plain`). + example: HTTP_AUTH_USERNAME + type: string + valid_tokens: + description: |- + A list of tokens that are accepted for authenticating incoming HTTP requests. When set, + the source rejects any request whose token does not match an enabled entry in this list. + Cannot be combined with the `plain` auth strategy. + items: + $ref: "#/components/schemas/ObservabilityPipelineHttpServerSourceValidToken" + maxItems: 1000 + minItems: 1 + type: array + required: + - id + - type + - auth_strategy + - decoding + type: object + x-pipeline-types: [logs] + ObservabilityPipelineHttpServerSourceAuthStrategy: + description: HTTP authentication method. + enum: + - none + - plain + example: plain + type: string + x-enum-varnames: + - NONE + - PLAIN + ObservabilityPipelineHttpServerSourceType: + default: http_server + description: The source type. The value should always be `http_server`. + enum: [http_server] + example: http_server + type: string + x-enum-varnames: + - HTTP_SERVER + ObservabilityPipelineHttpServerSourceValidToken: + description: An accepted token used to authenticate incoming HTTP server requests. + properties: + enabled: + default: true + description: |- + Indicates whether this token is currently accepted. Disabled tokens are rejected without + being removed from the configuration. + example: true + type: boolean + field_to_add: + $ref: "#/components/schemas/ObservabilityPipelineSourceValidTokenFieldToAdd" + path_to_token: + $ref: "#/components/schemas/ObservabilityPipelineHttpServerSourceValidTokenPathToToken" + token_key: + description: Name of the environment variable or secret that holds the expected token value. + example: HTTP_SERVER_TOKEN + pattern: "^[A-Za-z0-9_]+$" + type: string + required: + - token_key + type: object + ObservabilityPipelineHttpServerSourceValidTokenPathToToken: + description: |- + Specifies where the worker extracts the token from in the incoming HTTP request. + This can be either a built-in location (`path` or `address`) or an HTTP header object. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineHttpServerSourceValidTokenPathToTokenLocation" + - $ref: "#/components/schemas/ObservabilityPipelineHttpServerSourceValidTokenPathToTokenHeader" + ObservabilityPipelineHttpServerSourceValidTokenPathToTokenHeader: + description: Extract the token from a specific HTTP request header. + properties: + header: + description: The name of the HTTP header that carries the token. + example: X-Token + type: string + required: + - header + type: object + ObservabilityPipelineHttpServerSourceValidTokenPathToTokenLocation: + description: Built-in token location on the incoming HTTP request. + enum: + - path + - address + example: path + type: string + x-enum-varnames: + - PATH + - ADDRESS + ObservabilityPipelineKafkaDestination: + description: |- + The `kafka` destination sends logs to Apache Kafka topics. + + **Supported pipeline types:** logs + properties: + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + compression: + $ref: "#/components/schemas/ObservabilityPipelineKafkaDestinationCompression" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineKafkaDestinationEncoding" + headers_key: + description: The field name to use for Kafka message headers. + example: headers + type: string + id: + description: The unique identifier for this component. + example: kafka-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + key_field: + description: The field name to use as the Kafka message key. + example: message_id + type: string + librdkafka_options: + description: Optional list of advanced Kafka producer configuration options, defined as key-value pairs. + items: + $ref: "#/components/schemas/ObservabilityPipelineKafkaLibrdkafkaOption" + type: array + message_timeout_ms: + description: Maximum time in milliseconds to wait for message delivery confirmation. + example: 300000 + format: int64 + minimum: 1 + type: integer + rate_limit_duration_secs: + description: Duration in seconds for the rate limit window. + example: 1 + format: int64 + minimum: 1 + type: integer + rate_limit_num: + description: Maximum number of messages allowed per rate limit duration. + example: 1000 + format: int64 + minimum: 1 + type: integer + sasl: + $ref: "#/components/schemas/ObservabilityPipelineKafkaSasl" + socket_timeout_ms: + description: Socket timeout in milliseconds for network requests. + example: 60000 + format: int64 + maximum: 300000 + minimum: 10 + type: integer + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + topic: + description: The Kafka topic name to publish logs to. + example: logs-topic + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineKafkaDestinationType" + required: + - id + - type + - inputs + - topic + - encoding + type: object + x-pipeline-types: [logs] + ObservabilityPipelineKafkaDestinationCompression: + description: Compression codec for Kafka messages. + enum: + - none + - gzip + - snappy + - lz4 + - zstd + example: gzip + type: string + x-enum-varnames: + - NONE + - GZIP + - SNAPPY + - LZ4 + - ZSTD + ObservabilityPipelineKafkaDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineKafkaDestinationType: + default: kafka + description: The destination type. The value should always be `kafka`. + enum: + - kafka + example: kafka + type: string + x-enum-varnames: + - KAFKA + ObservabilityPipelineKafkaLibrdkafkaOption: + description: Represents a key-value pair used to configure low-level `librdkafka` client options for Kafka source and destination, such as timeouts, buffer sizes, and security settings. + properties: + name: + description: The name of the `librdkafka` configuration option to set. + example: "fetch.message.max.bytes" + type: string + value: + description: The value assigned to the specified `librdkafka` configuration option. + example: "1048576" + type: string + required: + - name + - value + type: object + ObservabilityPipelineKafkaSasl: + description: Specifies the SASL mechanism for authenticating with a Kafka cluster. + properties: + mechanism: + $ref: "#/components/schemas/ObservabilityPipelineKafkaSaslMechanism" + password_key: + description: Name of the environment variable or secret that holds the SASL password. + example: KAFKA_SASL_PASSWORD + type: string + username_key: + description: Name of the environment variable or secret that holds the SASL username. + example: KAFKA_SASL_USERNAME + type: string + type: object + ObservabilityPipelineKafkaSaslMechanism: + description: SASL mechanism used for Kafka authentication. + enum: + - PLAIN + - SCRAM-SHA-256 + - SCRAM-SHA-512 + type: string + x-enum-varnames: + - PLAIN + - SCRAMNOT_SHANOT_256 + - SCRAMNOT_SHANOT_512 + ObservabilityPipelineKafkaSource: + description: |- + The `kafka` source ingests data from Apache Kafka topics. + + **Supported pipeline types:** logs + properties: + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string + group_id: + description: Consumer group ID used by the Kafka client. + example: "consumer-group-0" + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "kafka-source" + type: string + librdkafka_options: + description: Optional list of advanced Kafka client configuration options, defined as key-value pairs. + items: + $ref: "#/components/schemas/ObservabilityPipelineKafkaLibrdkafkaOption" + type: array + sasl: + $ref: "#/components/schemas/ObservabilityPipelineKafkaSasl" + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + topics: + description: A list of Kafka topic names to subscribe to. The source ingests messages from each topic specified. + example: ["topic1", "topic2"] + items: + description: A Kafka topic name to subscribe to. + type: string + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineKafkaSourceType" + required: + - id + - type + - group_id + - topics + type: object + x-pipeline-types: [logs] + ObservabilityPipelineKafkaSourceType: + default: kafka + description: The source type. The value should always be `kafka`. + enum: + - kafka + example: kafka + type: string + x-enum-varnames: + - KAFKA + ObservabilityPipelineLogstashSource: + description: |- + The `logstash` source ingests logs from a Logstash forwarder. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Logstash receiver. + example: LOGSTASH_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: logstash-source + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineLogstashSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineLogstashSourceType: + default: logstash + description: The source type. The value should always be `logstash`. + enum: + - logstash + example: logstash + type: string + x-enum-varnames: + - LOGSTASH + ObservabilityPipelineMemoryBufferOptions: + description: Options for configuring a memory buffer by byte size. + properties: + max_size: + description: Maximum size of the memory buffer. + example: 4096 + format: int64 + type: integer + type: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptionsMemoryType" + when_full: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull" + required: + - max_size + type: object + ObservabilityPipelineMemoryBufferSizeOptions: + description: Options for configuring a memory buffer by queue length. + properties: + max_events: + description: Maximum events for the memory buffer. + example: 500 + format: int64 + type: integer + type: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptionsMemoryType" + when_full: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull" + required: + - max_events + type: object + ObservabilityPipelineMetadataEntry: + description: A custom metadata entry. + properties: + name: + description: The metadata key. + example: environment + type: string + value: + description: The metadata value. + example: production + type: string + required: + - name + - value + type: object + ObservabilityPipelineMetricTagsProcessor: + description: |- + The `metric_tags` processor filters metrics based on their tags using Datadog tag key patterns. + + **Supported pipeline types:** metrics + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: metric-tags-processor + type: string + include: + description: A Datadog search query that determines which metrics the processor targets. + example: "*" + type: string + rules: + description: A list of rules for filtering metric tags. + items: + $ref: "#/components/schemas/ObservabilityPipelineMetricTagsProcessorRule" + maxItems: 100 + minItems: 1 + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineMetricTagsProcessorType" + required: + - id + - type + - include + - rules + - enabled + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineMetricTagsProcessorRule: + description: Defines a rule for filtering metric tags based on key patterns. + properties: + action: + $ref: "#/components/schemas/ObservabilityPipelineMetricTagsProcessorRuleAction" + include: + description: A Datadog search query used to determine which metrics this rule targets. + example: "*" + type: string + keys: + description: A list of tag keys to include or exclude. + example: ["env", "service", "version"] + items: + description: A metric tag key to include or exclude based on the action. + type: string + type: array + mode: + $ref: "#/components/schemas/ObservabilityPipelineMetricTagsProcessorRuleMode" + required: + - include + - mode + - action + - keys + type: object + ObservabilityPipelineMetricTagsProcessorRuleAction: + description: The action to take on tags with matching keys. + enum: [include, exclude] + example: include + type: string + x-enum-varnames: + - INCLUDE + - EXCLUDE + ObservabilityPipelineMetricTagsProcessorRuleMode: + description: The processing mode for tag filtering. + enum: [filter] + example: filter + type: string + x-enum-varnames: + - FILTER + ObservabilityPipelineMetricTagsProcessorType: + default: metric_tags + description: The processor type. The value should always be `metric_tags`. + enum: [metric_tags] + example: metric_tags + type: string + x-enum-varnames: + - METRIC_TAGS + ObservabilityPipelineMetricValue: + description: Specifies how the value of the generated metric is computed. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOne" + - $ref: "#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByField" + ObservabilityPipelineMtlsServerTls: + description: Configuration for enabling TLS encryption between the pipeline component and external connecting clients. + properties: + ca_file: + description: Path to the Certificate Authority (CA) file used to validate connecting clients' TLS certificates. + type: string + crt_file: + description: Path to the TLS server certificate file used to used to identify the pipeline component to connecting clients. + example: "/path/to/cert.crt" + type: string + key_file: + description: Path to the private key file associated with the TLS server certificate. + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: TLS_KEY_PASSPHRASE + type: string + verify_certificate: + description: When `true`, requires client connections to present a valid certificate, enabling mutual TLS authentication. + type: boolean + required: + - crt_file + type: object + ObservabilityPipelineNewRelicDestination: + description: |- + The `new_relic` destination sends logs to the New Relic platform. + + **Supported pipeline types:** logs + properties: + account_id_key: + description: Name of the environment variable or secret that holds the New Relic account ID. + example: NEW_RELIC_ACCOUNT_ID + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + id: + description: The unique identifier for this component. + example: new-relic-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["parse-json-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + license_key_key: + description: Name of the environment variable or secret that holds the New Relic license key. + example: NEW_RELIC_LICENSE_KEY + type: string + region: + $ref: "#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion" + type: + $ref: "#/components/schemas/ObservabilityPipelineNewRelicDestinationType" + required: + - id + - type + - inputs + - region + type: object + x-pipeline-types: [logs] + ObservabilityPipelineNewRelicDestinationRegion: + description: The New Relic region. + enum: + - us + - eu + example: us + type: string + x-enum-varnames: + - US + - EU + ObservabilityPipelineNewRelicDestinationType: + default: new_relic + description: The destination type. The value should always be `new_relic`. + enum: + - new_relic + example: new_relic + type: string + x-enum-varnames: + - NEW_RELIC + ObservabilityPipelineOcsfMapperProcessor: + description: |- + The `ocsf_mapper` processor transforms logs into the OCSF schema using a predefined mapping configuration. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this component in other parts of the pipeline. + example: ocsf-mapper-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + keep_unmatched: + description: Whether to keep an event that does not match any of the mapping filters. + example: false + type: boolean + mappings: + description: A list of mapping rules to convert events to the OCSF format. + items: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping" + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMapperProcessorType" + required: + - id + - type + - include + - mappings + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineOcsfMapperProcessorMapping: + description: Defines how specific events are transformed to OCSF using a mapping configuration. + properties: + include: + description: A Datadog search query used to select the logs that this mapping should apply to. + example: service:my-service + type: string + mapping: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMappingMapping" + required: + - include + - mapping + type: object + ObservabilityPipelineOcsfMapperProcessorMappingMapping: + description: Defines a single mapping rule for transforming logs into the OCSF schema. + example: CloudTrail Account Change + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineOcsfMappingLibrary" + - $ref: "#/components/schemas/ObservabilityPipelineOcsfMappingCustom" + ObservabilityPipelineOcsfMapperProcessorType: + default: ocsf_mapper + description: The processor type. The value should always be `ocsf_mapper`. + enum: + - ocsf_mapper + example: ocsf_mapper + type: string + x-enum-varnames: + - OCSF_MAPPER + ObservabilityPipelineOcsfMappingCustom: + description: Custom OCSF mapping configuration for transforming logs. + properties: + mapping: + description: A list of field mapping rules for transforming log fields to OCSF schema fields. + items: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMappingCustomFieldMapping" + type: array + metadata: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMappingCustomMetadata" + version: + description: The version of the custom mapping configuration. + example: 1 + format: int64 + type: integer + required: + - mapping + - metadata + - version + type: object + ObservabilityPipelineOcsfMappingCustomFieldMapping: + description: Defines a single field mapping rule for transforming a source field to an OCSF destination field. + properties: + default: + description: The default value to use if the source field is missing or empty. + example: "" + dest: + description: The destination OCSF field path. + example: device.type + type: string + lookup: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMappingCustomLookup" + source: + description: The source field path from the log event. + example: host.type + sources: + description: Multiple source field paths for combined mapping. + example: + - field1 + - field2 + value: + description: A static value to use for the destination field. + example: static_value + required: + - dest + type: object + ObservabilityPipelineOcsfMappingCustomLookup: + description: Lookup table configuration for mapping source values to destination values. + properties: + default: + description: The default value to use if no lookup match is found. + example: unknown + table: + description: A list of lookup table entries for value transformation. + items: + $ref: "#/components/schemas/ObservabilityPipelineOcsfMappingCustomLookupTableEntry" + type: array + type: object + ObservabilityPipelineOcsfMappingCustomLookupTableEntry: + description: A single entry in a lookup table for value transformation. + properties: + contains: + description: The substring to match in the source value. + example: Desktop + type: string + equals: + description: The exact value to match in the source. + example: desktop + equals_source: + description: The source field to match against. + example: device_type + type: string + matches: + description: A regex pattern to match in the source value. + example: "^Desktop.*" + type: string + not_matches: + description: A regex pattern that must not match the source value. + example: "^Mobile.*" + type: string + value: + description: The value to use when a match is found. + example: desktop + type: object + ObservabilityPipelineOcsfMappingCustomMetadata: + description: Metadata for the custom OCSF mapping. + properties: + class: + description: The OCSF event class name. + example: Device Inventory Info + type: string + profiles: + description: A list of OCSF profiles to apply. + example: + - container + items: + description: The name of an OCSF profile to apply to the event. + type: string + type: array + version: + description: The OCSF schema version. + example: "1.3.0" + type: string + required: + - class + - version + type: object + ObservabilityPipelineOcsfMappingLibrary: + description: Predefined library mappings for common log formats. + enum: + - CloudTrail Account Change + - GCP Cloud Audit CreateBucket + - GCP Cloud Audit CreateSink + - GCP Cloud Audit SetIamPolicy + - GCP Cloud Audit UpdateSink + - Github Audit Log API Activity + - Google Workspace Admin Audit addPrivilege + - Microsoft 365 Defender Incident + - Microsoft 365 Defender UserLoggedIn + - Okta System Log Authentication + - Palo Alto Networks Firewall Traffic + example: CloudTrail Account Change + type: string + x-enum-varnames: + - CLOUDTRAIL_ACCOUNT_CHANGE + - GCP_CLOUD_AUDIT_CREATEBUCKET + - GCP_CLOUD_AUDIT_CREATESINK + - GCP_CLOUD_AUDIT_SETIAMPOLICY + - GCP_CLOUD_AUDIT_UPDATESINK + - GITHUB_AUDIT_LOG_API_ACTIVITY + - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE + - MICROSOFT_365_DEFENDER_INCIDENT + - MICROSOFT_365_DEFENDER_USERLOGGEDIN + - OKTA_SYSTEM_LOG_AUTHENTICATION + - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC + ObservabilityPipelineOpenSearchDestination: + description: |- + The `opensearch` destination writes logs to an OpenSearch cluster. + + **Supported pipeline types:** logs + properties: + auth: + $ref: "#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth" + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + bulk_index: + description: The index to write logs to. + example: logs-index + type: string + data_stream: + $ref: "#/components/schemas/ObservabilityPipelineOpenSearchDestinationDataStream" + endpoint_url_key: + description: Name of the environment variable or secret that holds the OpenSearch endpoint URL. + example: OPENSEARCH_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: "opensearch-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineOpenSearchDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineOpenSearchDestinationDataStream: + description: Configuration options for writing to OpenSearch Data Streams instead of a fixed index. + properties: + dataset: + description: The data stream dataset for your logs. This groups logs by their source or application. + type: string + dtype: + description: The data stream type for your logs. This determines how logs are categorized within the data stream. + type: string + namespace: + description: The data stream namespace for your logs. This separates logs into different environments or domains. + type: string + type: object + ObservabilityPipelineOpenSearchDestinationType: + default: opensearch + description: The destination type. The value should always be `opensearch`. + enum: + - opensearch + example: opensearch + type: string + x-enum-varnames: + - OPENSEARCH + ObservabilityPipelineOpentelemetrySource: + description: |- + The `opentelemetry` source receives telemetry data using the OpenTelemetry Protocol (OTLP) over gRPC and HTTP. + + **Supported pipeline types:** logs, metrics + properties: + grpc_address_key: + description: Environment variable name containing the gRPC server address for receiving OTLP data. Must be a valid environment variable name (alphanumeric characters and underscores only). + example: OTEL_GRPC_ADDRESS + type: string + http_address_key: + description: Environment variable name containing the HTTP server address for receiving OTLP data. Must be a valid environment variable name (alphanumeric characters and underscores only). + example: OTEL_HTTP_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: opentelemetry-source + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineOpentelemetrySourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs, metrics] + ObservabilityPipelineOpentelemetrySourceType: + default: opentelemetry + description: The source type. The value should always be `opentelemetry`. + enum: [opentelemetry] + example: opentelemetry + type: string + x-enum-varnames: + - OPENTELEMETRY + ObservabilityPipelineParseGrokProcessor: + description: |- + The `parse_grok` processor extracts structured fields from unstructured log messages using Grok patterns. + + **Supported pipeline types:** logs + example: + id: "parse-grok-processor" + include: "service:my-service" + type: "parse_grok" + properties: + disable_library_rules: + default: false + description: If set to `true`, disables the default Grok rules provided by Datadog. + example: true + type: boolean + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + field: + default: "message" + description: The log field to parse with the Grok rules. + example: "message" + type: string + id: + description: A unique identifier for this processor. + example: "parse-grok-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + rules: + description: The list of Grok parsing rules selected by either source field or include query. + items: + $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleItem" + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorType" + required: + - id + - type + - include + - rules + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineParseGrokProcessorIncludeRule: + description: |- + A Grok parsing rule selected using the `include` query. Each rule defines how to extract structured fields + from logs matching a Datadog search query. + properties: + include: + description: A Datadog search query used to determine which logs this Grok rule targets. + example: "service:my-service" + type: string + match_rules: + description: |- + A list of Grok parsing rules that define how to extract fields from matching logs. + Each rule must contain a name and a valid Grok pattern. + example: + - name: "MyParsingRule" + rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' + items: + $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule" + type: array + support_rules: + description: A list of Grok helper rules that can be referenced by the parsing rules. + example: + - name: "user" + rule: "%{word:user.name}" + items: + $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule" + type: array + required: + - include + - match_rules + type: object + ObservabilityPipelineParseGrokProcessorRule: + description: |- + A Grok parsing rule used in the `parse_grok` processor. Each rule defines how to extract structured fields + from a specific log field using Grok patterns. + properties: + match_rules: + description: |- + A list of Grok parsing rules that define how to extract fields from the source field. + Each rule must contain a name and a valid Grok pattern. + example: + - name: "MyParsingRule" + rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' + items: + $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule" + type: array + source: + description: The value of the source field in log events to be processed by the Grok rules. + example: "message" + type: string + support_rules: + description: |- + A list of Grok helper rules that can be referenced by the parsing rules. + example: + - name: "user" + rule: "%{word:user.name}" + items: + $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule" + type: array + required: + - source + - match_rules + type: object + ObservabilityPipelineParseGrokProcessorRuleItem: + description: A single Grok parsing rule, selected by either source field or include query. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorRule" + - $ref: "#/components/schemas/ObservabilityPipelineParseGrokProcessorIncludeRule" + ObservabilityPipelineParseGrokProcessorRuleMatchRule: + description: |- + Defines a Grok parsing rule, which extracts structured fields from log content using named Grok patterns. + Each rule must have a unique name and a valid Datadog Grok pattern that will be applied to the source field. + properties: + name: + description: The name of the rule. + example: "MyParsingRule" + type: string + rule: + description: The definition of the Grok rule. + example: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' + type: string + required: + - name + - rule + type: object + ObservabilityPipelineParseGrokProcessorRuleSupportRule: + description: The Grok helper rule referenced in the parsing rules. + properties: + name: + description: The name of the Grok helper rule. + example: "user" + type: string + rule: + description: The definition of the Grok helper rule. + example: " %{word:user.name}" + type: string + required: + - name + - rule + type: object + ObservabilityPipelineParseGrokProcessorType: + default: parse_grok + description: The processor type. The value should always be `parse_grok`. + enum: [parse_grok] + example: parse_grok + type: string + x-enum-varnames: + - PARSE_GROK + ObservabilityPipelineParseJSONProcessor: + description: |- + The `parse_json` processor extracts JSON from a specified field and flattens it into the event. This is useful when logs contain embedded JSON as a string. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + field: + description: The name of the log field that contains a JSON string. + example: "message" + type: string + id: + description: A unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + example: "parse-json-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineParseJSONProcessorType" + required: + - id + - type + - include + - field + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineParseJSONProcessorType: + default: parse_json + description: The processor type. The value should always be `parse_json`. + enum: + - parse_json + example: parse_json + type: string + x-enum-varnames: + - PARSE_JSON + ObservabilityPipelineParseXMLProcessor: + description: |- + The `parse_xml` processor parses XML from a specified field and extracts it into the event. + + **Supported pipeline types:** logs + properties: + always_use_text_key: + description: Whether to always use a text key for element content. + type: boolean + attr_prefix: + description: The prefix to use for XML attributes in the parsed output. + type: string + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + field: + description: The name of the log field that contains an XML string. + example: "message" + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: parse-xml-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + include_attr: + description: Whether to include XML attributes in the parsed output. + type: boolean + parse_bool: + description: Whether to parse boolean values from strings. + type: boolean + parse_null: + description: Whether to parse null values. + type: boolean + parse_number: + description: Whether to parse numeric values from strings. + type: boolean + text_key: + description: The key name to use for text content within XML elements. Must be at least 1 character if specified. + minLength: 1 + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineParseXMLProcessorType" + required: + - id + - type + - include + - field + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineParseXMLProcessorType: + default: parse_xml + description: The processor type. The value should always be `parse_xml`. + enum: + - parse_xml + example: parse_xml + type: string + x-enum-varnames: + - PARSE_XML + ObservabilityPipelineQuotaProcessor: + description: |- + The `quota` processor measures logging traffic for logs that match a specified filter. When the configured daily quota is met, the processor can drop or alert. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + drop_events: + description: |- + If set to `true`, logs that match the quota filter and are sent after the quota is exceeded are dropped. Logs that do not match the filter continue through the pipeline. **Note**: You can set either `drop_events` or `overflow_action`, but not both. + example: false + type: boolean + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "quota-processor" + type: string + ignore_when_missing_partitions: + description: If `true`, the processor skips quota checks when partition fields are missing from the logs. + type: boolean + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + limit: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorLimit" + name: + description: Name of the quota. + example: MyQuota + type: string + overflow_action: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction" + overrides: + description: A list of alternate quota rules that apply to specific sets of events, identified by matching field values. Each override can define a custom limit. + items: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorOverride" + type: array + partition_fields: + description: A list of fields used to segment log traffic for quota enforcement. Quotas are tracked independently by unique combinations of these field values. + items: + description: The name of a log field used to partition quota enforcement. + type: string + type: array + too_many_buckets_action: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction" + type: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorType" + required: + - id + - type + - include + - name + - limit + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineQuotaProcessorLimit: + description: The maximum amount of data or number of events allowed before the quota is enforced. Can be specified in bytes or events. + properties: + enforce: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorLimitEnforceType" + limit: + description: The limit for quota enforcement. + example: 1000 + format: int64 + type: integer + required: + - enforce + - limit + type: object + ObservabilityPipelineQuotaProcessorLimitEnforceType: + description: Unit for quota enforcement in bytes for data size or events for count. + enum: + - bytes + - events + example: bytes + type: string + x-enum-varnames: + - BYTES + - EVENTS + ObservabilityPipelineQuotaProcessorOverflowAction: + description: |- + The action to take when the quota or bucket limit is exceeded. Options: + - `drop`: Drop the event. + - `no_action`: Let the event pass through. + - `overflow_routing`: Route to an overflow destination. + enum: + - drop + - no_action + - overflow_routing + example: drop + type: string + x-enum-varnames: + - DROP + - NO_ACTION + - OVERFLOW_ROUTING + ObservabilityPipelineQuotaProcessorOverride: + description: Defines a custom quota limit that applies to specific log events based on matching field values. + properties: + fields: + description: A list of field matchers used to apply a specific override. If an event matches all listed key-value pairs, the corresponding override limit is enforced. + items: + $ref: "#/components/schemas/ObservabilityPipelineFieldValue" + type: array + limit: + $ref: "#/components/schemas/ObservabilityPipelineQuotaProcessorLimit" + required: + - fields + - limit + type: object + ObservabilityPipelineQuotaProcessorType: + default: quota + description: The processor type. The value should always be `quota`. + enum: + - quota + example: quota + type: string + x-enum-varnames: + - QUOTA + ObservabilityPipelineReduceProcessor: + description: |- + The `reduce` processor aggregates and merges logs based on matching keys and merge strategies. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + group_by: + description: A list of fields used to group log events for merging. + example: ["log.user.id", "log.device.id"] + items: + description: A log field path used to group events for aggregation. + type: string + type: array + id: + description: The unique identifier for this processor. + example: reduce-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: env:prod + type: string + merge_strategies: + description: List of merge strategies defining how values from grouped events should be combined. + items: + $ref: "#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy" + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineReduceProcessorType" + required: + - id + - type + - include + - group_by + - merge_strategies + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineReduceProcessorMergeStrategy: + description: Defines how a specific field should be merged across grouped events. + properties: + path: + description: The field path in the log event. + example: log.user.roles + type: string + strategy: + $ref: "#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategyStrategy" + required: + - path + - strategy + type: object + ObservabilityPipelineReduceProcessorMergeStrategyStrategy: + description: The merge strategy to apply. + enum: + - discard + - retain + - sum + - max + - min + - array + - concat + - concat_newline + - concat_raw + - shortest_array + - longest_array + - flat_unique + example: flat_unique + type: string + x-enum-varnames: + - DISCARD + - RETAIN + - SUM + - MAX + - MIN + - ARRAY + - CONCAT + - CONCAT_NEWLINE + - CONCAT_RAW + - SHORTEST_ARRAY + - LONGEST_ARRAY + - FLAT_UNIQUE + ObservabilityPipelineReduceProcessorType: + default: reduce + description: The processor type. The value should always be `reduce`. + enum: + - reduce + example: reduce + type: string + x-enum-varnames: + - REDUCE + ObservabilityPipelineRemoveFieldsProcessor: + description: |- + The `remove_fields` processor deletes specified fields from logs. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of field names to be removed from each log event. + example: ["field1", "field2"] + items: + description: The name of a field to remove from the log event. + type: string + type: array + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "remove-fields-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineRemoveFieldsProcessorType" + required: + - id + - type + - include + - fields + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineRemoveFieldsProcessorType: + default: remove_fields + description: The processor type. The value should always be `remove_fields`. + enum: + - remove_fields + example: remove_fields + type: string + x-enum-varnames: + - REMOVE_FIELDS + ObservabilityPipelineRenameFieldsProcessor: + description: |- + The `rename_fields` processor changes field names. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of rename rules specifying which fields to rename in the event, what to rename them to, and whether to preserve the original fields. + items: + $ref: "#/components/schemas/ObservabilityPipelineRenameFieldsProcessorField" + type: array + id: + description: A unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + example: "rename-fields-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineRenameFieldsProcessorType" + required: + - id + - type + - include + - fields + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineRenameFieldsProcessorField: + description: Defines how to rename a field in log events. + properties: + destination: + description: The field name to assign the renamed value to. + example: "destination_field" + type: string + preserve_source: + description: Indicates whether the original field, that is received from the source, should be kept (`true`) or removed (`false`) after renaming. + example: false + type: boolean + source: + description: The original field name in the log event that should be renamed. + example: "source_field" + type: string + required: + - source + - destination + - preserve_source + type: object + ObservabilityPipelineRenameFieldsProcessorType: + default: rename_fields + description: The processor type. The value should always be `rename_fields`. + enum: + - rename_fields + example: rename_fields + type: string + x-enum-varnames: + - RENAME_FIELDS + ObservabilityPipelineRenameMetricTagsProcessor: + description: |- + The `rename_metric_tags` processor changes the keys of tags on metrics. + + **Supported pipeline types:** metrics + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "rename-metric-tags-processor" + type: string + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: "*" + type: string + tags: + description: A list of rename rules specifying which tag keys to rename on each metric. + items: + $ref: "#/components/schemas/ObservabilityPipelineRenameMetricTagsProcessorTag" + maxItems: 15 + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineRenameMetricTagsProcessorType" + required: + - id + - type + - include + - tags + - enabled + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineRenameMetricTagsProcessorTag: + description: Defines how to rename a tag on metric events. + properties: + rename_to: + description: The new tag key to assign in place of the original. + example: "destination_tag" + type: string + tag: + description: The original tag key on the metric event. + example: "source_tag" + type: string + required: + - tag + - rename_to + type: object + ObservabilityPipelineRenameMetricTagsProcessorType: + default: rename_metric_tags + description: The processor type. The value must be `rename_metric_tags`. + enum: [rename_metric_tags] + example: rename_metric_tags + type: string + x-enum-varnames: + - RENAME_METRIC_TAGS + ObservabilityPipelineRsyslogDestination: + description: |- + The `rsyslog` destination forwards logs to an external `rsyslog` server over TCP or UDP using the syslog protocol. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + endpoint_url_key: + description: Name of the environment variable or secret that holds the syslog server endpoint URL. + example: SYSLOG_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: "rsyslog-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + keepalive: + description: Optional socket keepalive duration in milliseconds. + example: 60000 + format: int64 + minimum: 0 + type: integer + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineRsyslogDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineRsyslogDestinationType: + default: rsyslog + description: The destination type. The value should always be `rsyslog`. + enum: [rsyslog] + example: rsyslog + type: string + x-enum-varnames: + - RSYSLOG + ObservabilityPipelineRsyslogSource: + description: |- + The `rsyslog` source listens for logs over TCP or UDP from an `rsyslog` server using the syslog protocol. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the syslog receiver. + example: SYSLOG_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "rsyslog-source" + type: string + mode: + $ref: "#/components/schemas/ObservabilityPipelineSyslogSourceMode" + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineRsyslogSourceType" + required: + - id + - type + - mode + type: object + x-pipeline-types: [logs] + ObservabilityPipelineRsyslogSourceType: + default: rsyslog + description: The source type. The value should always be `rsyslog`. + enum: [rsyslog] + example: rsyslog + type: string + x-enum-varnames: + - RSYSLOG + ObservabilityPipelineSampleProcessor: + description: |- + The `sample` processor allows probabilistic sampling of logs at a fixed rate. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + group_by: + description: Optional list of fields to group events by. Each group is sampled independently. + example: ["service", "host"] + items: + description: A log field name used to group events for independent sampling. + type: string + minItems: 1 + type: array + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "sample-processor" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "service:my-service" + type: string + percentage: + description: The percentage of logs to sample. + example: 10.0 + format: double + type: number + type: + $ref: "#/components/schemas/ObservabilityPipelineSampleProcessorType" + required: + - id + - type + - include + - percentage + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSampleProcessorType: + default: sample + description: The processor type. The value should always be `sample`. + enum: [sample] + example: sample + type: string + x-enum-varnames: + - SAMPLE + ObservabilityPipelineSensitiveDataScannerProcessor: + description: |- + The `sensitive_data_scanner` processor detects and optionally redacts sensitive data in log events. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "sensitive-scanner" + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: "source:prod" + type: string + rules: + description: A list of rules for identifying and acting on sensitive data patterns. + items: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorRule" + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorType" + required: + - id + - type + - include + - rules + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSensitiveDataScannerProcessorAction: + description: Defines what action to take when sensitive data is matched. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedact" + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHash" + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact" + ObservabilityPipelineSensitiveDataScannerProcessorActionHash: + description: Configuration for hashing matched sensitive values. + properties: + action: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction" + options: + description: |- + Optional settings for the hash action. When omitted or empty, matched sensitive data is + replaced with a deterministic hashed value that preserves structure for analytics while + protecting the original content. Reserved for future hash configuration (for example, algorithm or salt). + type: object + required: [action] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction: + description: Action type that replaces the matched sensitive data with a hashed representation, preserving structure while securing content. + enum: [hash] + example: hash + type: string + x-enum-varnames: + - HASH + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact: + description: Configuration for partially redacting matched sensitive data. + properties: + action: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction" + options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions" + required: [action, options] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction: + description: Action type that redacts part of the sensitive data while preserving a configurable number of characters, typically used for masking purposes (e.g., show last 4 digits of a credit card). + enum: [partial_redact] + example: partial_redact + type: string + x-enum-varnames: + - PARTIAL_REDACT + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions: + description: Controls how partial redaction is applied, including character count and direction. + properties: + characters: + description: Number of characters to leave visible from the start or end of the matched value; the rest are redacted. + example: 4 + format: int64 + type: integer + direction: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection" + required: [characters, direction] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection: + description: Indicates whether to redact characters from the first or last part of the matched value. + enum: [first, last] + example: last + type: string + x-enum-varnames: + - FIRST + - LAST + ObservabilityPipelineSensitiveDataScannerProcessorActionRedact: + description: Configuration for completely redacting matched sensitive data. + properties: + action: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction" + options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions" + required: [action, options] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction: + description: Action type that completely replaces the matched sensitive data with a fixed replacement string to remove all visibility. + enum: [redact] + example: redact + type: string + x-enum-varnames: + - REDACT + ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions: + description: Configuration for fully redacting sensitive data. + properties: + replace: + description: The string used to replace matched sensitive data (for example, "***" or "[REDACTED]"). + example: "***" + type: string + required: [replace] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern: + description: Defines a custom regex-based pattern for identifying sensitive data in logs. + properties: + options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions" + type: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType" + required: [type, options] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions: + description: Options for defining a custom regex pattern. + properties: + description: + description: Human-readable description providing context about a sensitive data scanner rule + example: Custom regex for internal API keys + type: string + rule: + description: A regular expression used to detect sensitive values. Must be a valid regex. + example: "\\b\\d{16}\\b" + type: string + required: [rule] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType: + description: Indicates a custom regular expression is used for matching. + enum: [custom] + example: custom + type: string + x-enum-varnames: + - CUSTOM + ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions: + description: Configuration for keywords used to reinforce sensitive data pattern detection. + properties: + keywords: + description: A list of keywords to match near the sensitive pattern. + example: ["ssn", "card", "account"] + items: + description: A keyword string that reinforces detection when found near the sensitive pattern. + type: string + type: array + proximity: + description: Maximum number of tokens between a keyword and a sensitive value match. + example: 5 + format: int64 + type: integer + required: [keywords, proximity] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern: + description: Specifies a pattern from Datadog’s sensitive data detection library to match known sensitive data types. + properties: + options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions" + type: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType" + required: [type, options] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions: + description: Options for selecting a predefined library pattern and enabling keyword support. + properties: + description: + description: Human-readable description providing context about a sensitive data scanner rule + example: Credit card pattern + type: string + id: + description: Identifier for a predefined pattern from the sensitive data scanner pattern library. + example: credit_card + type: string + use_recommended_keywords: + description: Whether to augment the pattern with recommended keywords (optional). + type: boolean + required: [id] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType: + description: Indicates that a predefined library pattern is used. + enum: [library] + example: library + type: string + x-enum-varnames: + - LIBRARY + ObservabilityPipelineSensitiveDataScannerProcessorPattern: + description: Pattern detection configuration for identifying sensitive data using either a custom regex or a library reference. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern" + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern" + ObservabilityPipelineSensitiveDataScannerProcessorRule: + description: Defines a rule for detecting sensitive data, including matching pattern, scope, and the action to take. + properties: + keyword_options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions" + name: + description: A name identifying the rule. + example: "Redact Credit Card Numbers" + type: string + on_match: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorAction" + pattern: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorPattern" + scope: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScope" + tags: + description: Tags assigned to this rule for filtering and classification. + example: ["pii", "ccn"] + items: + description: A tag string used to classify and filter this sensitive data rule. + type: string + type: array + required: + - name + - pattern + - scope + - on_match + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScope: + description: Determines which parts of the log the pattern-matching rule should be applied to. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude" + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude" + - $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAll" + ObservabilityPipelineSensitiveDataScannerProcessorScopeAll: + description: Applies scanning across all available fields. + properties: + target: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget" + required: [target] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget: + description: Applies the rule to all fields. + enum: [all] + example: all + type: string + x-enum-varnames: + - ALL + ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude: + description: Excludes specific fields from sensitive data scanning. + properties: + options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions" + target: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget" + required: [target, options] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget: + description: Excludes specific fields from processing. + enum: [exclude] + example: exclude + type: string + x-enum-varnames: + - EXCLUDE + ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude: + description: Includes only specific fields for sensitive data scanning. + properties: + options: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions" + target: + $ref: "#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget" + required: [target, options] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget: + description: Applies the rule only to included fields. + enum: [include] + example: include + type: string + x-enum-varnames: + - INCLUDE + ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions: + description: Fields to which the scope rule applies. + properties: + fields: + description: List of log attribute names (field paths) to which the scope applies. Only these fields are included in or excluded from pattern matching. + example: + - "" + items: + description: A log field path to include or exclude from sensitive data scanning. + type: string + type: array + required: [fields] + type: object + ObservabilityPipelineSensitiveDataScannerProcessorType: + default: sensitive_data_scanner + description: The processor type. The value should always be `sensitive_data_scanner`. + enum: [sensitive_data_scanner] + example: sensitive_data_scanner + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER + ObservabilityPipelineSentinelOneDestination: + description: |- + The `sentinel_one` destination sends logs to SentinelOne. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + id: + description: The unique identifier for this component. + example: sentinelone-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + region: + $ref: "#/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion" + token_key: + description: Name of the environment variable or secret that holds the SentinelOne API token. + example: SENTINELONE_TOKEN + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineSentinelOneDestinationType" + required: + - id + - type + - inputs + - region + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSentinelOneDestinationRegion: + description: The SentinelOne region to send logs to. + enum: + - us + - eu + - ca + - data_set_us + example: us + type: string + x-enum-varnames: + - US + - EU + - CA + - DATA_SET_US + ObservabilityPipelineSentinelOneDestinationType: + default: sentinel_one + description: The destination type. The value should always be `sentinel_one`. + enum: + - sentinel_one + example: sentinel_one + type: string + x-enum-varnames: + - SENTINEL_ONE + ObservabilityPipelineSocketDestination: + description: |- + The `socket` destination sends logs over TCP or UDP to a remote server. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the socket address (host:port). + example: SOCKET_ADDRESS + type: string + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationEncoding" + framing: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFraming" + id: + description: The unique identifier for this component. + example: socket-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + mode: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationMode" + tls: + $ref: "#/components/schemas/ObservabilityPipelineClientTls" + description: TLS configuration. Relevant only when `mode` is `tcp`. + type: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationType" + required: + - id + - type + - inputs + - encoding + - framing + - mode + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSocketDestinationEncoding: + description: Encoding format for log events. + enum: [json, raw_message] + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineSocketDestinationFraming: + description: Framing method configuration. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimited" + - $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFramingBytes" + - $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimited" + ObservabilityPipelineSocketDestinationFramingBytes: + description: Event data is not delimited at all. + properties: + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFramingBytesMethod" + required: [method] + type: object + ObservabilityPipelineSocketDestinationFramingBytesMethod: + description: The definition of `ObservabilityPipelineSocketDestinationFramingBytesMethod` object. + enum: [bytes] + example: bytes + type: string + x-enum-varnames: + - BYTES + ObservabilityPipelineSocketDestinationFramingCharacterDelimited: + description: Each log event is separated using the specified delimiter character. + properties: + delimiter: + description: A single ASCII character used as a delimiter. + example: "|" + maxLength: 1 + minLength: 1 + type: string + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod" + required: [method, delimiter] + type: object + ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod: + description: The definition of `ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod` object. + enum: [character_delimited] + example: character_delimited + type: string + x-enum-varnames: + - CHARACTER_DELIMITED + ObservabilityPipelineSocketDestinationFramingNewlineDelimited: + description: Each log event is delimited by a newline character. + properties: + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod" + required: [method] + type: object + ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod: + description: The definition of `ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod` object. + enum: [newline_delimited] + example: newline_delimited + type: string + x-enum-varnames: + - NEWLINE_DELIMITED + ObservabilityPipelineSocketDestinationMode: + description: Protocol used to send logs. + enum: [tcp, udp] + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + ObservabilityPipelineSocketDestinationType: + default: socket + description: The destination type. The value should always be `socket`. + enum: [socket] + example: socket + type: string + x-enum-varnames: + - SOCKET + ObservabilityPipelineSocketSource: + description: |- + The `socket` source ingests logs over TCP or UDP. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the socket. + example: SOCKET_ADDRESS + type: string + framing: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFraming" + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: socket-source + type: string + mode: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceMode" + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + description: TLS configuration. Relevant only when `mode` is `tcp`. + type: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceType" + required: + - id + - type + - mode + - framing + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSocketSourceFraming: + description: Framing method configuration for the socket source. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimited" + - $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingBytes" + - $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimited" + - $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCounting" + - $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelf" + ObservabilityPipelineSocketSourceFramingBytes: + description: Byte frames are passed through as-is according to the underlying I/O boundaries (for example, split between messages or stream segments). + properties: + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingBytesMethod" + required: [method] + type: object + ObservabilityPipelineSocketSourceFramingBytesMethod: + description: Byte frames are passed through as-is according to the underlying I/O boundaries (for example, split between messages or stream segments). + enum: [bytes] + example: bytes + type: string + x-enum-varnames: + - BYTES + ObservabilityPipelineSocketSourceFramingCharacterDelimited: + description: Byte frames which are delimited by a chosen character. + properties: + delimiter: + description: A single ASCII character used to delimit events. + example: "|" + maxLength: 1 + minLength: 1 + type: string + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod" + required: [method, delimiter] + type: object + ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod: + description: Byte frames which are delimited by a chosen character. + enum: [character_delimited] + example: character_delimited + type: string + x-enum-varnames: + - CHARACTER_DELIMITED + ObservabilityPipelineSocketSourceFramingChunkedGelf: + description: Byte frames which are chunked GELF messages. + properties: + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelfMethod" + required: [method] + type: object + ObservabilityPipelineSocketSourceFramingChunkedGelfMethod: + description: Byte frames which are chunked GELF messages. + enum: [chunked_gelf] + example: chunked_gelf + type: string + x-enum-varnames: + - CHUNKED_GELF + ObservabilityPipelineSocketSourceFramingNewlineDelimited: + description: Byte frames which are delimited by a newline character. + properties: + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod" + required: [method] + type: object + ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod: + description: Byte frames which are delimited by a newline character. + enum: [newline_delimited] + example: newline_delimited + type: string + x-enum-varnames: + - NEWLINE_DELIMITED + ObservabilityPipelineSocketSourceFramingOctetCounting: + description: Byte frames according to the octet counting format as per RFC6587. + properties: + method: + $ref: "#/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCountingMethod" + required: [method] + type: object + ObservabilityPipelineSocketSourceFramingOctetCountingMethod: + description: Byte frames according to the octet counting format as per RFC6587. + enum: [octet_counting] + example: octet_counting + type: string + x-enum-varnames: + - OCTET_COUNTING + ObservabilityPipelineSocketSourceMode: + description: Protocol used to receive logs. + enum: [tcp, udp] + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + ObservabilityPipelineSocketSourceType: + default: socket + description: The source type. The value should always be `socket`. + enum: [socket] + example: socket + type: string + x-enum-varnames: + - SOCKET + ObservabilityPipelineSourceValidTokenFieldToAdd: + description: |- + An optional metadata field that is attached to every event authenticated by the + associated token. Both `key` and `value` must match `^[A-Za-z0-9_]+$`. + properties: + key: + description: The metadata field name to add to incoming events. + example: token_name + maxLength: 256 + pattern: "^[A-Za-z0-9_]+$" + type: string + value: + description: The metadata field value to add to incoming events. + example: my_token + maxLength: 1024 + pattern: "^[A-Za-z0-9_]+$" + type: string + required: + - key + - value + type: object + ObservabilityPipelineSpec: + description: Input schema representing an observability pipeline configuration. Used in create and validate requests. + properties: + data: + $ref: "#/components/schemas/ObservabilityPipelineSpecData" + required: + - data + type: object + ObservabilityPipelineSpecData: + description: Contains the the pipeline configuration. + properties: + attributes: + $ref: "#/components/schemas/ObservabilityPipelineDataAttributes" + type: + default: pipelines + description: The resource type identifier. For pipeline resources, this should always be set to `pipelines`. + example: pipelines + type: string + required: + - type + - attributes + type: object + ObservabilityPipelineSplitArrayProcessor: + description: |- + The `split_array` processor splits array fields into separate events based on configured rules. + + **Supported pipeline types:** logs + properties: + arrays: + description: A list of array split configurations. + items: + $ref: "#/components/schemas/ObservabilityPipelineSplitArrayProcessorArrayConfig" + maxItems: 15 + minItems: 1 + type: array + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: split-array-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. For split_array, this should typically be `*`. + example: "*" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineSplitArrayProcessorType" + required: + - id + - type + - include + - arrays + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSplitArrayProcessorArrayConfig: + description: Configuration for a single array split operation. + properties: + field: + description: The path to the array field to split. + example: "tags" + type: string + include: + description: A Datadog search query used to determine which logs this array split operation targets. + example: "*" + type: string + required: + - include + - field + type: object + ObservabilityPipelineSplitArrayProcessorType: + default: split_array + description: The processor type. The value should always be `split_array`. + enum: + - split_array + example: split_array + type: string + x-enum-varnames: + - SPLIT_ARRAY + ObservabilityPipelineSplunkHecDestination: + description: |- + The `splunk_hec` destination forwards logs to Splunk using the HTTP Event Collector (HEC). + + **Supported pipeline types:** logs + properties: + auto_extract_timestamp: + description: |- + If `true`, Splunk tries to extract timestamps from incoming log events. + If `false`, Splunk assigns the time the event was received. + example: true + type: boolean + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestinationEncoding" + endpoint_url_key: + description: Name of the environment variable or secret that holds the Splunk HEC endpoint URL. + example: SPLUNK_HEC_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-hec-destination + type: string + index: + description: Optional name of the Splunk index where logs are written. + example: "main" + type: string + indexed_fields: + description: List of log field names to send as indexed fields to Splunk HEC. Available only when `encoding` is `json`. + example: ["service", "host"] + items: + description: A log field name to index in Splunk. + type: string + type: array + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + sourcetype: + description: The Splunk sourcetype to assign to log events. + example: "custom_sourcetype" + type: string + token_key: + description: Name of the environment variable or secret that holds the Splunk HEC token. + example: SPLUNK_HEC_TOKEN + type: string + token_strategy: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestinationTokenStrategy" + type: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSplunkHecDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineSplunkHecDestinationTokenStrategy: + description: Controls how the Splunk HEC token is supplied. Use `custom` to provide a token with `token_key`, or `from_source` to forward the token received from an upstream Splunk HEC source. + enum: + - custom + - from_source + example: custom + type: string + x-enum-varnames: + - CUSTOM + - FROM_SOURCE + ObservabilityPipelineSplunkHecDestinationType: + default: splunk_hec + description: The destination type. Always `splunk_hec`. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + ObservabilityPipelineSplunkHecMetricsDestination: + description: |- + The `splunk_hec_metrics` destination forwards metrics to Splunk using the HTTP Event Collector (HEC). + + **Supported pipeline types:** metrics + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + compression: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecMetricsDestinationCompression" + default_namespace: + description: Optional default namespace for metrics sent to Splunk HEC. + example: "custom_namespace" + type: string + endpoint_url_key: + description: Name of the environment variable or secret that holds the Splunk HEC endpoint URL. + example: SPLUNK_HEC_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-hec-metrics-destination + type: string + index: + description: Optional name of the Splunk index where metrics are written. + example: "metrics" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["metrics-filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + source: + description: The Splunk source field value for metric events. + example: "observability_pipelines" + type: string + sourcetype: + description: The Splunk sourcetype to assign to metric events. + example: "custom_sourcetype" + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineTls" + token_key: + description: Name of the environment variable or secret that holds the Splunk HEC token. + example: SPLUNK_HEC_TOKEN + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecMetricsDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineSplunkHecMetricsDestinationCompression: + default: none + description: Compression algorithm applied when sending metrics to Splunk HEC. + enum: + - none + - gzip + example: none + type: string + x-enum-varnames: + - NONE + - GZIP + ObservabilityPipelineSplunkHecMetricsDestinationType: + default: splunk_hec_metrics + description: The destination type. Always `splunk_hec_metrics`. + enum: + - splunk_hec_metrics + example: splunk_hec_metrics + type: string + x-enum-varnames: + - SPLUNK_HEC_METRICS + ObservabilityPipelineSplunkHecSource: + description: |- + The `splunk_hec` source implements the Splunk HTTP Event Collector (HEC) API. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the HEC API. + example: SPLUNK_HEC_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-hec-source + type: string + store_hec_token: + description: |- + When `true`, the Splunk HEC token from the incoming request is stored in the event metadata. + This allows downstream components to forward the token to other Splunk HEC destinations. + example: true + type: boolean + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecSourceType" + valid_tokens: + description: |- + A list of tokens that are accepted for authenticating incoming HEC requests. When set, the source + rejects any request whose HEC token does not match an enabled entry in this list. + items: + $ref: "#/components/schemas/ObservabilityPipelineSplunkHecSourceValidToken" + maxItems: 1000 + minItems: 1 + type: array + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSplunkHecSourceType: + default: splunk_hec + description: The source type. Always `splunk_hec`. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + ObservabilityPipelineSplunkHecSourceValidToken: + description: An accepted HEC token used to authenticate incoming Splunk HEC requests. + properties: + enabled: + default: true + description: |- + Indicates whether this token is currently accepted. Disabled tokens are rejected without + being removed from the configuration. + example: true + type: boolean + field_to_add: + $ref: "#/components/schemas/ObservabilityPipelineSourceValidTokenFieldToAdd" + token_key: + description: Name of the environment variable or secret that holds the expected HEC token value. + example: SPLUNK_HEC_TOKEN + pattern: "^[A-Za-z0-9_]+$" + type: string + required: + - token_key + type: object + ObservabilityPipelineSplunkTcpSource: + description: |- + The `splunk_tcp` source receives logs from a Splunk Universal Forwarder over TCP. + TLS is supported for secure transmission. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Splunk TCP receiver. + example: SPLUNK_TCP_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-tcp-source + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineSplunkTcpSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSplunkTcpSourceType: + default: splunk_tcp + description: The source type. Always `splunk_tcp`. + enum: + - splunk_tcp + example: splunk_tcp + type: string + x-enum-varnames: + - SPLUNK_TCP + ObservabilityPipelineSumoLogicDestination: + description: |- + The `sumo_logic` destination forwards logs to Sumo Logic. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + encoding: + $ref: "#/components/schemas/ObservabilityPipelineSumoLogicDestinationEncoding" + endpoint_url_key: + description: Name of the environment variable or secret that holds the Sumo Logic HTTP endpoint URL. + example: SUMO_LOGIC_ENDPOINT_URL + type: string + header_custom_fields: + description: A list of custom headers to include in the request to Sumo Logic. + items: + $ref: "#/components/schemas/ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem" + type: array + header_host_name: + description: Optional override for the host name header. + example: "host-123" + type: string + header_source_category: + description: Optional override for the source category header. + example: "source-category" + type: string + header_source_name: + description: Optional override for the source name header. + example: "source-name" + type: string + id: + description: The unique identifier for this component. + example: "sumo-logic-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: "#/components/schemas/ObservabilityPipelineSumoLogicDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSumoLogicDestinationEncoding: + description: The output encoding format. + enum: [json, raw_message, logfmt] + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + - LOGFMT + ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem: + description: Single key-value pair used as a custom log header for Sumo Logic. + properties: + name: + description: The header field name. + example: "X-Sumo-Category" + type: string + value: + description: The header field value. + example: "my-app-logs" + type: string + required: + - name + - value + type: object + ObservabilityPipelineSumoLogicDestinationType: + default: sumo_logic + description: The destination type. The value should always be `sumo_logic`. + enum: + - sumo_logic + example: sumo_logic + type: string + x-enum-varnames: + - SUMO_LOGIC + ObservabilityPipelineSumoLogicSource: + description: |- + The `sumo_logic` source receives logs from Sumo Logic collectors. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Sumo Logic receiver. + example: SUMO_LOGIC_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "sumo-logic-source" + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineSumoLogicSourceType" + required: + - id + - type + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSumoLogicSourceType: + default: sumo_logic + description: The source type. The value should always be `sumo_logic`. + enum: + - sumo_logic + example: sumo_logic + type: string + x-enum-varnames: + - SUMO_LOGIC + ObservabilityPipelineSyslogNgDestination: + description: |- + The `syslog_ng` destination forwards logs to an external `syslog-ng` server over TCP or UDP using the syslog protocol. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: "#/components/schemas/ObservabilityPipelineBufferOptions" + endpoint_url_key: + description: Name of the environment variable or secret that holds the syslog-ng server endpoint URL. + example: SYSLOG_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: "syslog-ng-destination" + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: ["filter-processor"] + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + keepalive: + description: Optional socket keepalive duration in milliseconds. + example: 60000 + format: int64 + minimum: 0 + type: integer + tls: + $ref: "#/components/schemas/ObservabilityPipelineClientTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineSyslogNgDestinationType" + required: + - id + - type + - inputs + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSyslogNgDestinationType: + default: syslog_ng + description: The destination type. The value should always be `syslog_ng`. + enum: [syslog_ng] + example: syslog_ng + type: string + x-enum-varnames: + - SYSLOG_NG + ObservabilityPipelineSyslogNgSource: + description: |- + The `syslog_ng` source listens for logs over TCP or UDP from a `syslog-ng` server using the syslog protocol. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the syslog-ng receiver. + example: SYSLOG_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "syslog-ng-source" + type: string + mode: + $ref: "#/components/schemas/ObservabilityPipelineSyslogSourceMode" + tls: + $ref: "#/components/schemas/ObservabilityPipelineMtlsServerTls" + type: + $ref: "#/components/schemas/ObservabilityPipelineSyslogNgSourceType" + required: + - id + - type + - mode + type: object + x-pipeline-types: [logs] + ObservabilityPipelineSyslogNgSourceType: + default: syslog_ng + description: The source type. The value should always be `syslog_ng`. + enum: [syslog_ng] + example: syslog_ng + type: string + x-enum-varnames: + - SYSLOG_NG + ObservabilityPipelineSyslogSourceMode: + description: Protocol used by the syslog source to receive messages. + enum: [tcp, udp] + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + ObservabilityPipelineTagCardinalityLimitProcessor: + description: |- + The `tag_cardinality_limit` processor caps the number of distinct tag value combinations on metrics, dropping tags or events once the limit is exceeded. + + **Supported pipeline types:** metrics + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: "tag-cardinality-limit-processor" + type: string + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: "*" + type: string + limit_exceeded_action: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorAction" + per_metric_limits: + description: A list of per-metric cardinality overrides that take precedence over the default `value_limit`. + items: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorPerMetricLimit" + maxItems: 100 + type: array + tracking_mode: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorTrackingMode" + type: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorType" + value_limit: + description: The default maximum number of distinct tag value combinations allowed per metric. + example: 10000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer + required: + - id + - type + - include + - limit_exceeded_action + - tracking_mode + - value_limit + - enabled + type: object + x-pipeline-types: [metrics] + ObservabilityPipelineTagCardinalityLimitProcessorAction: + description: The action to take when the cardinality limit is exceeded. + enum: + - drop_tag + - drop_event + example: drop_tag + type: string + x-enum-varnames: + - DROP_TAG + - DROP_EVENT + ObservabilityPipelineTagCardinalityLimitProcessorOverrideType: + description: How the override is applied. `limit_override` enforces a custom limit; `excluded` omits the metric or tag from cardinality tracking. + enum: + - limit_override + - excluded + example: limit_override + type: string + x-enum-varnames: + - LIMIT_OVERRIDE + - EXCLUDED + ObservabilityPipelineTagCardinalityLimitProcessorPerMetricLimit: + description: A cardinality override applied to a specific metric. + properties: + limit_exceeded_action: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorAction" + metric_name: + description: The name of the metric this override applies to. + example: "system.cpu.user" + type: string + override_type: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorOverrideType" + per_tag_limits: + description: A list of per-tag cardinality overrides that apply within this metric. Must be omitted when `override_type` is `excluded`. + items: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorPerTagLimit" + maxItems: 50 + type: array + value_limit: + description: The maximum number of distinct tag value combinations allowed for this metric. Required when `override_type` is `limit_override`. Must be omitted when `override_type` is `excluded`. + example: 10000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer + required: + - metric_name + - override_type + type: object + ObservabilityPipelineTagCardinalityLimitProcessorPerTagLimit: + description: A cardinality override for a specific tag key within a per-metric limit. + properties: + override_type: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorOverrideType" + tag_key: + description: The tag key this override applies to. + example: "host" + type: string + value_limit: + description: The maximum number of distinct values allowed for this tag. Required when `override_type` is `limit_override`. Must be omitted when `override_type` is `excluded`. + example: 5000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer + required: + - tag_key + - override_type + type: object + ObservabilityPipelineTagCardinalityLimitProcessorTrackingMode: + description: Controls whether the processor uses exact or probabilistic tag tracking. + properties: + mode: + $ref: "#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorTrackingModeMode" + required: + - mode + type: object + ObservabilityPipelineTagCardinalityLimitProcessorTrackingModeMode: + description: The cardinality tracking algorithm to use. + enum: + - exact_fingerprint + - probabilistic + example: exact_fingerprint + type: string + x-enum-varnames: + - EXACT_FINGERPRINT + - PROBABILISTIC + ObservabilityPipelineTagCardinalityLimitProcessorType: + default: tag_cardinality_limit + description: The processor type. The value must be `tag_cardinality_limit`. + enum: [tag_cardinality_limit] + example: tag_cardinality_limit + type: string + x-enum-varnames: + - TAG_CARDINALITY_LIMIT + ObservabilityPipelineThrottleProcessor: + description: |- + The `throttle` processor limits the number of events that pass through over a given time window. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: "#/components/schemas/ObservabilityPipelineComponentDisplayName" + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + group_by: + description: Optional list of fields used to group events before the threshold has been reached. + example: ["log.user.id"] + items: + description: A log field name used to group events for independent throttling. + type: string + type: array + id: + description: The unique identifier for this processor. + example: throttle-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: env:prod + type: string + threshold: + description: the number of events allowed in a given time window. Events sent after the threshold has been reached, are dropped. + example: 1000 + format: int64 + type: integer + type: + $ref: "#/components/schemas/ObservabilityPipelineThrottleProcessorType" + window: + description: The time window in seconds over which the threshold applies. + example: 60.0 + format: double + type: number + required: + - id + - type + - include + - threshold + - window + - enabled + type: object + x-pipeline-types: [logs] + ObservabilityPipelineThrottleProcessorType: + default: throttle + description: The processor type. The value should always be `throttle`. + enum: + - throttle + example: throttle + type: string + x-enum-varnames: + - THROTTLE + ObservabilityPipelineTls: + description: Configuration for enabling TLS encryption between the pipeline component and external services. + properties: + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the server’s TLS certificate. + type: string + crt_file: + description: Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services. + example: "/path/to/cert.crt" + type: string + key_file: + description: Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication. + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: TLS_KEY_PASSPHRASE + type: string + required: + - crt_file + type: object + ObservabilityPipelineWebsocketSource: + description: |- + The `websocket` source ingests logs from a WebSocket server using the `ws://` or `wss://` protocol. + + **Supported pipeline types:** logs. + properties: + auth_strategy: + $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceAuthStrategy" + custom_key: + description: Name of the environment variable or secret that holds the custom authorization header value. Used when `auth_strategy` is `custom`. + example: WS_AUTH_CUSTOM_HEADER + type: string + decoding: + $ref: "#/components/schemas/ObservabilityPipelineDecoding" + id: + description: The unique identifier for this component. + example: websocket-source + type: string + password_key: + description: Name of the environment variable or secret that holds the password. Used when `auth_strategy` is `basic`. + example: WS_AUTH_PASSWORD + type: string + tls: + $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTls" + token_key: + description: Name of the environment variable or secret that holds the bearer token. Used when `auth_strategy` is `bearer`. + example: WS_BEARER_TOKEN + type: string + type: + $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceType" + uri_key: + description: Name of the environment variable or secret that holds the WebSocket server URI (`ws://` or `wss://`). + example: WS_URI + type: string + username_key: + description: Name of the environment variable or secret that holds the username. Used when `auth_strategy` is `basic`. + example: WS_AUTH_USERNAME + type: string + required: + - id + - type + - decoding + - auth_strategy + type: object + x-pipeline-types: [logs] + ObservabilityPipelineWebsocketSourceAuthStrategy: + description: Authentication strategy for the WebSocket source connection. + enum: + - none + - basic + - bearer + - custom + example: bearer + type: string + x-enum-varnames: + - NONE + - BASIC + - BEARER + - CUSTOM + ObservabilityPipelineWebsocketSourceTls: + description: TLS configuration for the WebSocket source. Use `enabled` for standard `wss://` connections, or `with_client_cert` to present a client certificate for mutual TLS. + oneOf: + - $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabled" + - $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCert" + ObservabilityPipelineWebsocketSourceTlsEnabled: + description: TLS configuration that enables encryption without a client certificate. Use this for standard `wss://` connections that do not require mutual TLS. + properties: + mode: + $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabledMode" + required: + - mode + type: object + ObservabilityPipelineWebsocketSourceTlsEnabledMode: + description: TLS mode. Must be `enabled`. + enum: + - enabled + example: enabled + type: string + x-enum-varnames: + - ENABLED + ObservabilityPipelineWebsocketSourceTlsWithClientCert: + description: TLS configuration that enables encryption and presents a client certificate for mutual TLS authentication. + properties: + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the remote server's TLS certificate. + example: /path/to/ca.crt + type: string + crt_file: + description: Path to the TLS client certificate file used to identify this source to the remote server. + example: /path/to/client.crt + type: string + key_file: + description: Path to the private key file associated with the client certificate. + example: /path/to/client.key + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: WS_TLS_KEY_PASSPHRASE + type: string + mode: + $ref: "#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCertMode" + required: + - mode + - crt_file + type: object + ObservabilityPipelineWebsocketSourceTlsWithClientCertMode: + description: TLS mode. Must be `with_client_cert`. + enum: + - with_client_cert + example: with_client_cert + type: string + x-enum-varnames: + - WITH_CLIENT_CERT + ObservabilityPipelineWebsocketSourceType: + default: websocket + description: The source type. The value should always be `websocket`. + enum: + - websocket + example: websocket + type: string + x-enum-varnames: + - WEBSOCKET + OktaAPIToken: + description: The definition of the `OktaAPIToken` object. + properties: + api_token: + description: The `OktaAPIToken` `api_token`. + example: "" + type: string + domain: + description: The `OktaAPIToken` `domain`. + example: "" + type: string + type: + $ref: "#/components/schemas/OktaAPITokenType" + required: + - type + - domain + - api_token + type: object + OktaAPITokenType: + description: The definition of the `OktaAPIToken` object. + enum: + - OktaAPIToken + example: OktaAPIToken + type: string + x-enum-varnames: + - OKTAAPITOKEN + OktaAPITokenUpdate: + description: The definition of the `OktaAPIToken` object. + properties: + api_token: + description: The `OktaAPITokenUpdate` `api_token`. + type: string + domain: + description: The `OktaAPITokenUpdate` `domain`. + type: string + type: + $ref: "#/components/schemas/OktaAPITokenType" + required: + - type + type: object + OktaAccount: + description: Schema for an Okta account. + properties: + attributes: + $ref: "#/components/schemas/OktaAccountAttributes" + id: + description: The ID of the Okta account, a UUID hash of the account name. + example: "f749daaf-682e-4208-a38d-c9b43162c609" + type: string + type: + $ref: "#/components/schemas/OktaAccountType" + required: + - attributes + - type + type: object + OktaAccountAttributes: + description: Attributes object for an Okta account. + properties: + api_key: + description: The API key of the Okta account. + type: string + writeOnly: true + auth_method: + description: The authorization method for an Okta account. + example: "oauth" + type: string + client_id: + description: The Client ID of an Okta app integration. + type: string + client_secret: + description: The client secret of an Okta app integration. + type: string + writeOnly: true + domain: + description: The domain of the Okta account. + example: "https://example.okta.com/" + type: string + name: + description: The name of the Okta account. + example: "Okta-Prod" + type: string + required: + - auth_method + - domain + - name + type: object + OktaAccountRequest: + description: Request object for an Okta account. + properties: + data: + $ref: "#/components/schemas/OktaAccount" + required: + - data + type: object + OktaAccountResponse: + description: Response object for an Okta account. + properties: + data: + $ref: "#/components/schemas/OktaAccount" + type: object + OktaAccountResponseData: + description: Data object of an Okta account + properties: + attributes: + $ref: "#/components/schemas/OktaAccountAttributes" + id: + description: The ID of the Okta account, a UUID hash of the account name. + example: "f749daaf-682e-4208-a38d-c9b43162c609" + type: string + type: + $ref: "#/components/schemas/OktaAccountType" + required: + - attributes + - id + - type + type: object + OktaAccountType: + default: okta-accounts + description: Account type for an Okta account. + enum: + - okta-accounts + example: okta-accounts + type: string + x-enum-varnames: + - OKTA_ACCOUNTS + OktaAccountUpdateRequest: + description: Payload schema when updating an Okta account. + properties: + data: + $ref: "#/components/schemas/OktaAccountUpdateRequestData" + required: + - data + type: object + OktaAccountUpdateRequestAttributes: + description: Attributes object for updating an Okta account. + properties: + api_key: + description: The API key of the Okta account. + type: string + writeOnly: true + auth_method: + description: The authorization method for an Okta account. + example: "oauth" + type: string + client_id: + description: The Client ID of an Okta app integration. + type: string + client_secret: + description: The client secret of an Okta app integration. + type: string + writeOnly: true + domain: + description: The domain associated with an Okta account. + example: "https://dev-test.okta.com/" + type: string + required: + - auth_method + - domain + type: object + OktaAccountUpdateRequestData: + description: Data object for updating an Okta account. + properties: + attributes: + $ref: "#/components/schemas/OktaAccountUpdateRequestAttributes" + type: + $ref: "#/components/schemas/OktaAccountType" + type: object + OktaAccountsResponse: + description: The expected response schema when getting Okta accounts. + properties: + data: + description: List of Okta accounts. + items: + $ref: "#/components/schemas/OktaAccountResponseData" + type: array + type: object + OktaCredentials: + description: The definition of the `OktaCredentials` object. + oneOf: + - $ref: "#/components/schemas/OktaAPIToken" + OktaCredentialsUpdate: + description: The definition of the `OktaCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/OktaAPITokenUpdate" + OktaIntegration: + description: The definition of the `OktaIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/OktaCredentials" + type: + $ref: "#/components/schemas/OktaIntegrationType" + required: + - type + - credentials + type: object + OktaIntegrationType: + description: The definition of the `OktaIntegrationType` object. + enum: + - Okta + example: Okta + type: string + x-enum-varnames: + - OKTA + OktaIntegrationUpdate: + description: The definition of the `OktaIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/OktaCredentialsUpdate" + type: + $ref: "#/components/schemas/OktaIntegrationType" + required: + - type + type: object + OnCallNotificationRule: + description: A top-level wrapper for a notification rule + example: + data: + attributes: + "category": "high_urgency" + channel_settings: + method: "sms" + type: "phone" + "delay_minutes": 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + properties: + data: + $ref: "#/components/schemas/OnCallNotificationRuleData" + included: + items: + $ref: "#/components/schemas/OnCallNotificationRulesIncluded" + type: array + required: + - data + type: object + OnCallNotificationRuleAttributes: + description: Attributes for an on-call notification rule. + properties: + category: + $ref: "#/components/schemas/OnCallNotificationRuleCategory" + channel_settings: + $ref: "#/components/schemas/OnCallNotificationRuleChannelSettings" + description: Configuration for the associated channel, if necessary + nullable: true + delay_minutes: + description: The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation + format: int64 + type: integer + type: object + OnCallNotificationRuleCategory: + default: high_urgency + description: "Specifies the category a notification rule will apply to" + enum: + - high_urgency + - low_urgency + type: string + x-enum-varnames: + - HIGH_URGENCY + - LOW_URGENCY + OnCallNotificationRuleChannelRelationship: + description: Relationship object for creating a notification rule + properties: + data: + $ref: "#/components/schemas/OnCallNotificationRuleChannelRelationshipData" + required: + - data + type: object + OnCallNotificationRuleChannelRelationshipData: + description: Channel relationship data for creating a notification rule + properties: + id: + description: ID of the notification channel + type: string + type: + $ref: "#/components/schemas/NotificationChannelType" + type: object + OnCallNotificationRuleChannelSettings: + description: "Defines the configuration for a channel associated with a notification rule" + oneOf: + - $ref: "#/components/schemas/OnCallPhoneNotificationRuleSettings" + OnCallNotificationRuleData: + description: Data for an on-call notification rule + properties: + attributes: + $ref: "#/components/schemas/OnCallNotificationRuleAttributes" + id: + description: Unique identifier for the rule + type: string + relationships: + $ref: "#/components/schemas/OnCallNotificationRuleRelationships" + type: + $ref: "#/components/schemas/OnCallNotificationRuleType" + required: + - type + type: object + OnCallNotificationRuleRelationships: + description: Relationship object for creating a notification rule + properties: + channel: + $ref: "#/components/schemas/OnCallNotificationRuleChannelRelationship" + type: object + OnCallNotificationRuleRequestAttributes: + description: Attributes for creating or modifying an on-call notification rule. + properties: + category: + $ref: "#/components/schemas/OnCallNotificationRuleCategory" + channel_settings: + $ref: "#/components/schemas/OnCallNotificationRuleChannelSettings" + description: Configuration for the associated channel, if necessary + nullable: true + delay_minutes: + description: The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation + format: int64 + type: integer + type: object + OnCallNotificationRuleType: + default: notification_rules + description: "Indicates that the resource is of type 'notification_rules'." + enum: + - notification_rules + example: notification_rules + type: string + x-enum-varnames: + - NOTIFICATION_RULES + OnCallNotificationRulesIncluded: + description: Represents additional included resources for a on-call notification rules + oneOf: + - $ref: "#/components/schemas/NotificationChannelData" + OnCallPageTargetType: + description: The kind of target, `team_id` | `team_handle` | `user_id`. + enum: + - team_id + - team_handle + - user_id + example: team_id + type: string + x-enum-varnames: + - TEAM_ID + - TEAM_HANDLE + - USER_ID + OnCallPhoneNotificationRuleMethod: + description: "Specifies the method in which a phone is used in a notification rule" + enum: + - sms + - voice + example: sms + type: string + x-enum-varnames: + - SMS + - VOICE + OnCallPhoneNotificationRuleSettings: + description: "Configuration for using a phone notification channel in a notification rule" + properties: + method: + $ref: "#/components/schemas/OnCallPhoneNotificationRuleMethod" + type: + $ref: "#/components/schemas/NotificationChannelPhoneConfigType" + required: + - type + - method + type: object + OnCallTrigger: + description: "Trigger a workflow from an On-Call Page or On-Call Handover. For automatic triggering a handle must be configured and the workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + OnCallTriggerWrapper: + description: "Schema for an On-Call-based trigger." + properties: + onCallTrigger: + $ref: "#/components/schemas/OnCallTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - onCallTrigger + type: object + OnDemandConcurrencyCap: + description: On-demand concurrency cap. + properties: + attributes: + $ref: "#/components/schemas/OnDemandConcurrencyCapAttributes" + type: + $ref: "#/components/schemas/OnDemandConcurrencyCapType" + type: object + OnDemandConcurrencyCapAttributes: + description: On-demand concurrency cap attributes. + properties: + on_demand_concurrency_cap: + description: Value of the on-demand concurrency cap. + format: double + type: number + type: object + OnDemandConcurrencyCapResponse: + description: On-demand concurrency cap response. + properties: + data: + $ref: "#/components/schemas/OnDemandConcurrencyCap" + type: object + OnDemandConcurrencyCapType: + description: On-demand concurrency cap type. + enum: + - on_demand_concurrency_cap + type: string + x-enum-varnames: + - ON_DEMAND_CONCURRENCY_CAP + OpenAIAPIKey: + description: The definition of the `OpenAIAPIKey` object. + properties: + api_token: + description: The `OpenAIAPIKey` `api_token`. + example: "" + type: string + type: + $ref: "#/components/schemas/OpenAIAPIKeyType" + required: + - type + - api_token + type: object + OpenAIAPIKeyType: + description: The definition of the `OpenAIAPIKey` object. + enum: + - OpenAIAPIKey + example: OpenAIAPIKey + type: string + x-enum-varnames: + - OPENAIAPIKEY + OpenAIAPIKeyUpdate: + description: The definition of the `OpenAIAPIKey` object. + properties: + api_token: + description: The `OpenAIAPIKeyUpdate` `api_token`. + type: string + type: + $ref: "#/components/schemas/OpenAIAPIKeyType" + required: + - type + type: object + OpenAICredentials: + description: The definition of the `OpenAICredentials` object. + oneOf: + - $ref: "#/components/schemas/OpenAIAPIKey" + OpenAICredentialsUpdate: + description: The definition of the `OpenAICredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/OpenAIAPIKeyUpdate" + OpenAIIntegration: + description: The definition of the `OpenAIIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/OpenAICredentials" + type: + $ref: "#/components/schemas/OpenAIIntegrationType" + required: + - type + - credentials + type: object + OpenAIIntegrationType: + description: The definition of the `OpenAIIntegrationType` object. + enum: + - OpenAI + example: OpenAI + type: string + x-enum-varnames: + - OPENAI + OpenAIIntegrationUpdate: + description: The definition of the `OpenAIIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/OpenAICredentialsUpdate" + type: + $ref: "#/components/schemas/OpenAIIntegrationType" + required: + - type + type: object + OpenAPIEndpoint: + description: Endpoint info extracted from an `OpenAPI` specification. + properties: + method: + description: The endpoint method. + type: string + path: + description: The endpoint path. + type: string + type: object + OpenAPIFile: + description: Object for API data in an `OpenAPI` format as a file. + properties: + openapi_spec_file: + description: Binary `OpenAPI` spec file + format: binary + type: string + type: object + OpsgenieAccountCreateAttributes: + description: The Opsgenie account attributes for a create request. + properties: + api_key: + description: The Opsgenie API key for your Opsgenie account. + example: "00000000-0000-0000-0000-000000000000" + minLength: 1 + type: string + region: + $ref: "#/components/schemas/OpsgenieServiceRegionType" + required: + - api_key + - region + type: object + OpsgenieAccountCreateData: + description: Opsgenie account data for a create request. + properties: + attributes: + $ref: "#/components/schemas/OpsgenieAccountCreateAttributes" + type: + $ref: "#/components/schemas/OpsgenieAccountType" + required: + - type + - attributes + type: object + OpsgenieAccountCreateRequest: + description: Create request for an Opsgenie account. + properties: + data: + $ref: "#/components/schemas/OpsgenieAccountCreateData" + required: + - data + type: object + OpsgenieAccountResponse: + description: Response containing an Opsgenie account. + properties: + data: + $ref: "#/components/schemas/OpsgenieAccountResponseData" + required: + - data + type: object + OpsgenieAccountResponseAttributes: + description: The attributes from an Opsgenie account response. + properties: + region: + $ref: "#/components/schemas/OpsgenieServiceRegionType" + type: object + OpsgenieAccountResponseData: + description: Opsgenie account data from a response. + properties: + attributes: + $ref: "#/components/schemas/OpsgenieAccountResponseAttributes" + id: + description: The ID of the Opsgenie account. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/OpsgenieAccountType" + required: + - id + - type + - attributes + type: object + OpsgenieAccountType: + default: opsgenie-account + description: Opsgenie account resource type. + enum: + - opsgenie-account + example: opsgenie-account + type: string + x-enum-varnames: + - OPSGENIE_ACCOUNT + OpsgenieAccountUpdateAttributes: + description: The Opsgenie account attributes for an update request. + properties: + api_key: + description: The Opsgenie API key for your Opsgenie account. + example: "00000000-0000-0000-0000-000000000000" + minLength: 1 + type: string + region: + $ref: "#/components/schemas/OpsgenieServiceRegionType" + type: object + OpsgenieAccountUpdateData: + description: Opsgenie account data for an update request. + properties: + attributes: + $ref: "#/components/schemas/OpsgenieAccountUpdateAttributes" + id: + description: The ID of the Opsgenie account. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/OpsgenieAccountType" + required: + - id + - type + - attributes + type: object + OpsgenieAccountUpdateRequest: + description: Update request for an Opsgenie account. + properties: + data: + $ref: "#/components/schemas/OpsgenieAccountUpdateData" + required: + - data + type: object + OpsgenieAccountsResponse: + description: Response with a list of Opsgenie accounts. + properties: + data: + description: An array of Opsgenie accounts. + example: [{"attributes": {"region": "us"}, "id": "596da4af-0563-4097-90ff-07230c3f9db3", "type": "opsgenie-account"}, {"attributes": {"region": "eu"}, "id": "0d2937f1-b561-44fa-914a-99910f848014", "type": "opsgenie-account"}] + items: + $ref: "#/components/schemas/OpsgenieAccountResponseData" + type: array + required: + - data + type: object + OpsgenieServiceCreateAttributes: + description: The Opsgenie service attributes for a create request. + properties: + custom_url: + description: The custom URL for a custom region. + example: "https://example.com" + type: string + name: + description: The name for the Opsgenie service. + example: "fake-opsgenie-service-name" + maxLength: 100 + type: string + opsgenie_api_key: + description: The Opsgenie API key for your Opsgenie service. + example: "00000000-0000-0000-0000-000000000000" + type: string + region: + $ref: "#/components/schemas/OpsgenieServiceRegionType" + required: + - name + - opsgenie_api_key + - region + type: object + OpsgenieServiceCreateData: + description: Opsgenie service data for a create request. + properties: + attributes: + $ref: "#/components/schemas/OpsgenieServiceCreateAttributes" + type: + $ref: "#/components/schemas/OpsgenieServiceType" + required: + - type + - attributes + type: object + OpsgenieServiceCreateRequest: + description: Create request for an Opsgenie service. + properties: + data: + $ref: "#/components/schemas/OpsgenieServiceCreateData" + required: + - data + type: object + OpsgenieServiceRegionType: + description: The region for the Opsgenie service. + enum: + - us + - eu + - custom + example: "us" + type: string + x-enum-varnames: + - US + - EU + - CUSTOM + OpsgenieServiceResponse: + description: Response of an Opsgenie service. + properties: + data: + $ref: "#/components/schemas/OpsgenieServiceResponseData" + required: + - data + type: object + OpsgenieServiceResponseAttributes: + description: The attributes from an Opsgenie service response. + properties: + custom_url: + description: The custom URL for a custom region. + example: + nullable: true + type: string + name: + description: The name for the Opsgenie service. + example: "fake-opsgenie-service-name" + maxLength: 100 + type: string + region: + $ref: "#/components/schemas/OpsgenieServiceRegionType" + type: object + OpsgenieServiceResponseData: + description: Opsgenie service data from a response. + properties: + attributes: + $ref: "#/components/schemas/OpsgenieServiceResponseAttributes" + id: + description: The ID of the Opsgenie service. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/OpsgenieServiceType" + required: + - id + - type + - attributes + type: object + OpsgenieServiceType: + default: opsgenie-service + description: Opsgenie service resource type. + enum: + - opsgenie-service + example: opsgenie-service + type: string + x-enum-varnames: + - OPSGENIE_SERVICE + OpsgenieServiceUpdateAttributes: + description: The Opsgenie service attributes for an update request. + properties: + custom_url: + description: The custom URL for a custom region. + example: "https://example.com" + nullable: true + type: string + name: + description: The name for the Opsgenie service. + example: "fake-opsgenie-service-name" + maxLength: 100 + type: string + opsgenie_api_key: + description: The Opsgenie API key for your Opsgenie service. + example: "00000000-0000-0000-0000-000000000000" + type: string + region: + $ref: "#/components/schemas/OpsgenieServiceRegionType" + type: object + OpsgenieServiceUpdateData: + description: Opsgenie service for an update request. + properties: + attributes: + $ref: "#/components/schemas/OpsgenieServiceUpdateAttributes" + id: + description: The ID of the Opsgenie service. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/OpsgenieServiceType" + required: + - id + - type + - attributes + type: object + OpsgenieServiceUpdateRequest: + description: Update request for an Opsgenie service. + properties: + data: + $ref: "#/components/schemas/OpsgenieServiceUpdateData" + required: + - data + type: object + OpsgenieServicesResponse: + description: Response with a list of Opsgenie services. + properties: + data: + description: An array of Opsgenie services. + example: [{"attributes": {"custom_url": null, "name": "fake-opsgenie-service-name", "region": "us"}, "id": "596da4af-0563-4097-90ff-07230c3f9db3", "type": "opsgenie-service"}, {"attributes": {"custom_url": null, "name": "fake-opsgenie-service-name-2", "region": "eu"}, "id": "0d2937f1-b561-44fa-914a-99910f848014", "type": "opsgenie-service"}] + items: + $ref: "#/components/schemas/OpsgenieServiceResponseData" + type: array + required: + - data + type: object + OrderDirection: + description: The sort direction for results. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASC + - DESC + OrgAttributes: + description: Attributes of an organization. + properties: + created_at: + description: The creation timestamp of the organization. + example: "2019-09-26T17:28:28Z" + format: date-time + type: string + description: + description: A description of the organization. + example: "Production organization." + type: string + disabled: + description: Whether the organization is disabled. + example: false + type: boolean + modified_at: + description: The last modification timestamp of the organization. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + name: + description: The name of the organization. + example: "My Organization" + type: string + public_id: + description: The public identifier of the organization. + example: "abcdef12345" + type: string + sharing: + description: The sharing setting of the organization. + example: "none" + type: string + url: + description: The URL of the organization. + example: "https://app.datadoghq.com/account/my-org" + type: string + required: + - public_id + - name + - description + - sharing + - url + - disabled + - created_at + - modified_at + type: object + OrgAuthorizedClientAttributes: + description: Attributes of an org authorized client. + properties: + disabled: + description: Whether the organization has disabled this client. + example: false + type: boolean + last_exercised: + description: The date and time this client was last exercised. + example: "2024-01-15T10:30:00+00:00" + format: date-time + nullable: true + type: string + user_count: + description: The number of users in the organization who have authorized this client. + example: 2 + format: int64 + type: integer + required: + - last_exercised + - disabled + - user_count + type: object + OrgAuthorizedClientData: + description: Data object representing an org authorized client. + properties: + attributes: + $ref: "#/components/schemas/OrgAuthorizedClientAttributes" + id: + description: The unique identifier of the org authorized client. + example: "00000000-0000-0000-0000-000000000001" + type: string + relationships: + $ref: "#/components/schemas/OrgAuthorizedClientRelationships" + type: + $ref: "#/components/schemas/OrgAuthorizedClientType" + required: + - id + - type + - attributes + - relationships + type: object + OrgAuthorizedClientDataList: + description: List of org authorized client data objects. + items: + $ref: "#/components/schemas/OrgAuthorizedClientData" + type: array + OrgAuthorizedClientRelationshipOAuth2Client: + description: Relationship to the OAuth2 client for this org authorized client. + properties: + data: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipOAuth2ClientData" + required: + - data + type: object + OrgAuthorizedClientRelationshipOAuth2ClientData: + description: Data identifying the OAuth2 client associated with this org authorized client. + properties: + id: + description: The ID of the OAuth2 client. + example: "00000000-0000-0000-0000-000000000010" + type: string + type: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipOAuth2ClientDataType" + required: + - type + - id + type: object + OrgAuthorizedClientRelationshipOAuth2ClientDataType: + description: OAuth2 client resource type. + enum: + - oauth2_clients + example: oauth2_clients + type: string + x-enum-varnames: + - OAUTH2_CLIENTS + OrgAuthorizedClientRelationshipUserAuthorizedClients: + description: Relationship to the user authorized clients for this org authorized client. + properties: + data: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsDataList" + links: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsLinks" + required: + - links + - data + type: object + OrgAuthorizedClientRelationshipUserAuthorizedClientsData: + description: Data identifying a user authorized client. + properties: + id: + description: The ID of the user authorized client. + example: "00000000-0000-0000-0000-000000000020" + type: string + type: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsDataType" + required: + - type + - id + type: object + OrgAuthorizedClientRelationshipUserAuthorizedClientsDataList: + description: List of user authorized client relationship data objects. + items: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsData" + type: array + OrgAuthorizedClientRelationshipUserAuthorizedClientsDataType: + description: User authorized client resource type. + enum: + - user_authorized_clients + example: user_authorized_clients + type: string + x-enum-varnames: + - USER_AUTHORIZED_CLIENTS + OrgAuthorizedClientRelationshipUserAuthorizedClientsLinks: + description: Links for the user authorized clients relationship. + properties: + related: + description: Link to the user authorized clients for this org authorized client. + example: "/api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients" + type: string + required: + - related + type: object + OrgAuthorizedClientRelationships: + description: Relationships for an org authorized client. + properties: + oauth2_client: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipOAuth2Client" + user_authorized_clients: + $ref: "#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClients" + required: + - oauth2_client + - user_authorized_clients + type: object + OrgAuthorizedClientResponse: + description: Response containing a single org authorized client. + properties: + data: + $ref: "#/components/schemas/OrgAuthorizedClientData" + required: + - data + type: object + OrgAuthorizedClientType: + description: The resource type for org authorized clients. + enum: + - org_authorized_clients + example: org_authorized_clients + type: string + x-enum-varnames: + - ORG_AUTHORIZED_CLIENTS + OrgAuthorizedClientUpdateAttributes: + description: Attributes for updating an org authorized client. + properties: + disabled: + description: Whether to disable or enable this client for the organization. + example: true + type: boolean + type: object + OrgAuthorizedClientUpdateData: + description: Data object for updating an org authorized client. + properties: + attributes: + $ref: "#/components/schemas/OrgAuthorizedClientUpdateAttributes" + id: + description: The unique identifier of the org authorized client to update. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/OrgAuthorizedClientType" + required: + - id + - type + type: object + OrgAuthorizedClientUpdateRequest: + description: Request body for updating an org authorized client. + properties: + data: + $ref: "#/components/schemas/OrgAuthorizedClientUpdateData" + required: + - data + type: object + OrgAuthorizedClientUserAuthorizationsSort: + description: Field to sort user authorizations by. + enum: + - user.name + - user.email + - oauth2_client.name + example: user.name + type: string + x-enum-varnames: + - USER_NAME + - USER_EMAIL + - OAUTH2_CLIENT_NAME + OrgAuthorizedClientsResponse: + description: Response containing a list of org authorized clients. + properties: + data: + $ref: "#/components/schemas/OrgAuthorizedClientDataList" + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + required: + - data + - meta + type: object + OrgConfigGetResponse: + description: A response with a single Org Config. + properties: + data: + $ref: "#/components/schemas/OrgConfigRead" + required: [data] + type: object + OrgConfigListResponse: + description: A response with multiple Org Configs. + properties: + data: + description: An array of Org Configs. + items: + $ref: "#/components/schemas/OrgConfigRead" + type: array + required: [data] + type: object + OrgConfigRead: + description: A single Org Config. + properties: + attributes: + $ref: "#/components/schemas/OrgConfigReadAttributes" + id: + description: A unique identifier for an Org Config. + example: abcd1234 + type: string + type: + $ref: "#/components/schemas/OrgConfigType" + required: [id, type, attributes] + type: object + OrgConfigReadAttributes: + description: Readable attributes of an Org Config. + properties: + description: + description: The description of an Org Config. + example: Frobulate the turbo encabulator manifold + type: string + modified_at: + description: The timestamp of the last Org Config update (if any). + format: date-time + nullable: true + type: string + name: + description: The machine-friendly name of an Org Config. + example: monitor_timezone + type: string + value: + description: The value of an Org Config. + value_type: + description: The type of an Org Config value. + example: bool + type: string + required: [name, description, value_type, value] + type: object + OrgConfigType: + description: Data type of an Org Config. + enum: [org_configs] + example: org_configs + type: string + x-enum-varnames: + - ORG_CONFIGS + OrgConfigWrite: + description: An Org Config write operation. + properties: + attributes: + $ref: "#/components/schemas/OrgConfigWriteAttributes" + type: + $ref: "#/components/schemas/OrgConfigType" + required: [type, attributes] + type: object + OrgConfigWriteAttributes: + description: Writable attributes of an Org Config. + properties: + value: + description: The value of an Org Config. + required: [value] + type: object + OrgConfigWriteRequest: + description: A request to update an Org Config. + properties: + data: + $ref: "#/components/schemas/OrgConfigWrite" + required: [data] + type: object + OrgConnection: + description: An org connection. + properties: + attributes: + $ref: "#/components/schemas/OrgConnectionAttributes" + id: + description: The unique identifier of the org connection. + example: "f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/OrgConnectionRelationships" + type: + $ref: "#/components/schemas/OrgConnectionType" + required: [id, type, attributes, relationships] + type: object + OrgConnectionAttributes: + description: Org connection attributes. + properties: + connection_types: + description: List of connection types. + example: ["logs", "metrics"] + items: + $ref: "#/components/schemas/OrgConnectionTypeEnum" + type: array + created_at: + description: Timestamp when the connection was created. + example: "2023-01-01T12:00:00Z" + format: date-time + type: string + required: [connection_types, created_at] + type: object + OrgConnectionCreate: + description: Org connection creation data. + properties: + attributes: + $ref: "#/components/schemas/OrgConnectionCreateAttributes" + relationships: + $ref: "#/components/schemas/OrgConnectionCreateRelationships" + type: + $ref: "#/components/schemas/OrgConnectionType" + required: [type, attributes, relationships] + type: object + OrgConnectionCreateAttributes: + description: Attributes for creating an org connection. + properties: + connection_types: + description: List of connection types to establish. + example: ["logs"] + items: + $ref: "#/components/schemas/OrgConnectionTypeEnum" + minItems: 1 + type: array + required: [connection_types] + type: object + OrgConnectionCreateRelationships: + description: Relationships for org connection creation. + properties: + sink_org: + $ref: "#/components/schemas/OrgConnectionOrgRelationship" + required: [sink_org] + type: object + OrgConnectionCreateRequest: + description: Request to create an org connection. + properties: + data: + $ref: "#/components/schemas/OrgConnectionCreate" + required: [data] + type: object + OrgConnectionListResponse: + description: Response containing a list of org connections. + properties: + data: + description: List of org connections. + items: + $ref: "#/components/schemas/OrgConnection" + type: array + meta: + $ref: "#/components/schemas/OrgConnectionListResponseMeta" + required: [data] + type: object + OrgConnectionListResponseMeta: + description: Pagination metadata. + properties: + page: + $ref: "#/components/schemas/OrgConnectionListResponseMetaPage" + type: object + OrgConnectionListResponseMetaPage: + description: Page information. + properties: + total_count: + description: Total number of org connections. + example: 0 + format: int64 + type: integer + total_filtered_count: + description: Total number of org connections matching the filter. + example: 0 + format: int64 + type: integer + type: object + OrgConnectionOrgRelationship: + description: Org relationship. + properties: + data: + $ref: "#/components/schemas/OrgConnectionOrgRelationshipData" + type: object + OrgConnectionOrgRelationshipData: + description: The definition of `OrgConnectionOrgRelationshipData` object. + properties: + id: + description: Org UUID. + example: "f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a" + type: string + name: + description: Org name. + example: "Example Org" + type: string + type: + $ref: "#/components/schemas/OrgConnectionOrgRelationshipDataType" + type: object + OrgConnectionOrgRelationshipDataType: + description: The type of the organization relationship. + enum: [orgs] + example: "orgs" + type: string + x-enum-varnames: + - ORGS + OrgConnectionRelationships: + description: Related organizations and user. + properties: + created_by: + $ref: "#/components/schemas/OrgConnectionUserRelationship" + sink_org: + $ref: "#/components/schemas/OrgConnectionOrgRelationship" + source_org: + $ref: "#/components/schemas/OrgConnectionOrgRelationship" + type: object + OrgConnectionResponse: + description: Response containing a single org connection. + properties: + data: + $ref: "#/components/schemas/OrgConnection" + required: [data] + type: object + OrgConnectionType: + description: Org connection type. + enum: [org_connection] + example: "org_connection" + type: string + x-enum-varnames: + - ORG_CONNECTION + OrgConnectionTypeEnum: + description: Available connection types between organizations. + enum: + - logs + - metrics + - audit + example: "logs" + type: string + x-enum-varnames: + - LOGS + - METRICS + - AUDIT + OrgConnectionUpdate: + description: Org connection update data. + properties: + attributes: + $ref: "#/components/schemas/OrgConnectionUpdateAttributes" + id: + description: The unique identifier of the org connection. + example: "f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgConnectionType" + required: [type, id, attributes] + type: object + OrgConnectionUpdateAttributes: + description: Attributes for updating an org connection. + properties: + connection_types: + description: Updated list of connection types. + example: ["logs", "metrics"] + items: + $ref: "#/components/schemas/OrgConnectionTypeEnum" + minItems: 1 + type: array + required: [connection_types] + type: object + OrgConnectionUpdateRequest: + description: Request to update an org connection. + properties: + data: + $ref: "#/components/schemas/OrgConnectionUpdate" + required: [data] + type: object + OrgConnectionUserRelationship: + description: User relationship. + properties: + data: + $ref: "#/components/schemas/OrgConnectionUserRelationshipData" + type: object + OrgConnectionUserRelationshipData: + description: The data for a user relationship. + properties: + id: + description: User UUID. + example: "usr123abc456" + type: string + name: + description: User name. + example: "John Doe" + type: string + type: + $ref: "#/components/schemas/OrgConnectionUserRelationshipDataType" + type: object + OrgConnectionUserRelationshipDataType: + description: The type of the user relationship. + enum: [users] + example: "users" + type: string + x-enum-varnames: + - USERS + OrgData: + description: An organization resource. + properties: + attributes: + $ref: "#/components/schemas/OrgAttributes" + id: + description: The UUID of the organization. + example: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgResourceType" + required: + - id + - type + - attributes + type: object + OrgGroupAttributes: + description: Attributes of an org group. + properties: + created_at: + description: Timestamp when the org group was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + modified_at: + description: Timestamp when the org group was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + name: + description: The name of the org group. + example: "My Org Group" + type: string + owner_org_site: + description: The site of the organization that owns this org group. + example: "us1" + type: string + owner_org_uuid: + description: The UUID of the organization that owns this org group. + example: "b2c3d4e5-f6a7-8901-bcde-f01234567890" + format: uuid + type: string + required: + - name + - owner_org_uuid + - owner_org_site + - created_at + - modified_at + type: object + OrgGroupCreateAttributes: + description: Attributes for creating an org group. + properties: + name: + description: The name of the org group. + example: "My Org Group" + type: string + required: + - name + type: object + OrgGroupCreateData: + description: Data for creating an org group. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupCreateAttributes" + type: + $ref: "#/components/schemas/OrgGroupType" + required: + - type + - attributes + type: object + OrgGroupCreateRequest: + description: Request to create an org group. + properties: + data: + $ref: "#/components/schemas/OrgGroupCreateData" + required: + - data + type: object + OrgGroupData: + description: An org group resource. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupAttributes" + id: + description: The ID of the org group. + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgGroupType" + required: + - id + - type + - attributes + type: object + OrgGroupListResponse: + description: Response containing a list of org groups. + properties: + data: + description: An array of org groups. + items: + $ref: "#/components/schemas/OrgGroupData" + type: array + links: + $ref: "#/components/schemas/OrgGroupPaginationLinks" + meta: + $ref: "#/components/schemas/OrgGroupPaginationMeta" + required: + - data + type: object + OrgGroupMembershipAttributes: + description: Attributes of an org group membership. + properties: + created_at: + description: Timestamp when the membership was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + modified_at: + description: Timestamp when the membership was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + org_name: + description: The name of the member organization. + example: "Acme Corp" + type: string + org_site: + description: The site of the member organization. + example: "us1" + type: string + org_uuid: + description: The UUID of the member organization. + example: "c3d4e5f6-a7b8-9012-cdef-012345678901" + format: uuid + type: string + required: + - org_name + - org_uuid + - org_site + - created_at + - modified_at + type: object + OrgGroupMembershipBulkUpdateAttributes: + description: Attributes for bulk updating org group memberships. + properties: + orgs: + description: List of organizations to move. Maximum 100 per request. + items: + $ref: "#/components/schemas/GlobalOrgIdentifier" + type: array + required: + - orgs + type: object + OrgGroupMembershipBulkUpdateData: + description: Data for bulk updating org group memberships. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupMembershipBulkUpdateAttributes" + relationships: + $ref: "#/components/schemas/OrgGroupMembershipBulkUpdateRelationships" + type: + $ref: "#/components/schemas/OrgGroupMembershipBulkUpdateType" + required: + - type + - attributes + - relationships + type: object + OrgGroupMembershipBulkUpdateRelationships: + description: Relationships for bulk updating memberships. + properties: + source_org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + target_org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + required: + - source_org_group + - target_org_group + type: object + OrgGroupMembershipBulkUpdateRequest: + description: Request to bulk update org group memberships. + properties: + data: + $ref: "#/components/schemas/OrgGroupMembershipBulkUpdateData" + required: + - data + type: object + OrgGroupMembershipBulkUpdateType: + description: Org group membership bulk update resource type. + enum: + - org_group_membership_bulk_updates + example: org_group_membership_bulk_updates + type: string + x-enum-varnames: + - ORG_GROUP_MEMBERSHIP_BULK_UPDATES + OrgGroupMembershipData: + description: An org group membership resource. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupMembershipAttributes" + id: + description: The ID of the org group membership. + example: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/OrgGroupMembershipRelationships" + type: + $ref: "#/components/schemas/OrgGroupMembershipType" + required: + - id + - type + - attributes + type: object + OrgGroupMembershipListResponse: + description: Response containing a list of org group memberships. + properties: + data: + description: An array of org group memberships. + items: + $ref: "#/components/schemas/OrgGroupMembershipData" + type: array + links: + $ref: "#/components/schemas/OrgGroupPaginationLinks" + meta: + $ref: "#/components/schemas/OrgGroupPaginationMeta" + required: + - data + type: object + OrgGroupMembershipRelationships: + description: Relationships of an org group membership. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + type: object + OrgGroupMembershipResponse: + description: Response containing a single org group membership. + properties: + data: + $ref: "#/components/schemas/OrgGroupMembershipData" + required: + - data + type: object + OrgGroupMembershipSortOption: + default: uuid + description: Field to sort memberships by. + enum: + - name + - -name + - uuid + - -uuid + example: uuid + type: string + x-enum-varnames: + - NAME + - MINUS_NAME + - UUID + - MINUS_UUID + OrgGroupMembershipType: + description: Org group memberships resource type. + enum: + - org_group_memberships + example: org_group_memberships + type: string + x-enum-varnames: + - ORG_GROUP_MEMBERSHIPS + OrgGroupMembershipUpdateData: + description: Data for updating an org group membership. + properties: + id: + description: The ID of the membership. + example: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/OrgGroupMembershipUpdateRelationships" + type: + $ref: "#/components/schemas/OrgGroupMembershipType" + required: + - id + - type + - relationships + type: object + OrgGroupMembershipUpdateRelationships: + description: Relationships for updating a membership. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + required: + - org_group + type: object + OrgGroupMembershipUpdateRequest: + description: Request to update an org group membership. + properties: + data: + $ref: "#/components/schemas/OrgGroupMembershipUpdateData" + required: + - data + type: object + OrgGroupPaginationLinks: + description: Pagination links for navigating between pages of an org group list response. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + type: string + type: object + OrgGroupPaginationMeta: + description: Pagination metadata for org group list responses. + properties: + page: + $ref: "#/components/schemas/OrgGroupPaginationMetaPage" + type: object + OrgGroupPaginationMetaPage: + description: Page-based pagination details for org group list responses. + properties: + first_number: + description: First page number. + format: int64 + type: integer + last_number: + description: Last page number. + format: int64 + nullable: true + type: integer + next_number: + description: Next page number. + format: int64 + nullable: true + type: integer + number: + description: Page number. + format: int64 + type: integer + prev_number: + description: Previous page number. + format: int64 + nullable: true + type: integer + size: + description: Page size. + format: int64 + type: integer + total: + description: Total number of results. + format: int64 + type: integer + type: + description: Pagination type. + example: "number_size" + type: string + type: object + OrgGroupPolicyAttributes: + description: Attributes of an org group policy. + properties: + content: + additionalProperties: {} + description: The policy content as key-value pairs. + example: + value: "UTC" + type: object + enforcement_tier: + $ref: "#/components/schemas/OrgGroupPolicyEnforcementTier" + modified_at: + description: Timestamp when the policy was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + policy_name: + description: The name of the policy. + example: "monitor_timezone" + type: string + policy_type: + $ref: "#/components/schemas/OrgGroupPolicyPolicyType" + required: + - policy_name + - policy_type + - enforcement_tier + - modified_at + type: object + OrgGroupPolicyConfigAttributes: + description: Attributes of an org group policy config. + properties: + allowed_values: + description: The allowed values for this config. + example: ["UTC", "US/Eastern", "US/Pacific"] + items: + description: An allowed value for this config. + type: string + type: array + default_value: + description: The default value for this config. + example: "UTC" + description: + description: The description of the policy config. + example: "The default timezone for monitors." + type: string + name: + description: The name of the policy config. + example: "monitor_timezone" + type: string + value_type: + description: The type of the value for this config. + example: "string" + type: string + required: + - name + - description + - value_type + - allowed_values + - default_value + type: object + OrgGroupPolicyConfigData: + description: An org group policy config resource. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyConfigAttributes" + id: + description: The identifier of the policy config (uses the config name). + example: "monitor_timezone" + type: string + type: + $ref: "#/components/schemas/OrgGroupPolicyConfigType" + required: + - id + - type + - attributes + type: object + OrgGroupPolicyConfigListResponse: + description: Response containing a list of org group policy configs. + properties: + data: + description: An array of org group policy configs. + items: + $ref: "#/components/schemas/OrgGroupPolicyConfigData" + type: array + required: + - data + type: object + OrgGroupPolicyConfigType: + description: Org group policy configs resource type. + enum: + - org_group_policy_configs + example: org_group_policy_configs + type: string + x-enum-varnames: + - ORG_GROUP_POLICY_CONFIGS + OrgGroupPolicyCreateAttributes: + description: >- + Attributes for creating an org group policy. If `policy_type` or `enforcement_tier` are not provided, they default to `org_config` and `DEFAULT` respectively. + properties: + content: + additionalProperties: {} + description: The policy content as key-value pairs. + example: + value: "UTC" + type: object + enforcement_tier: + $ref: "#/components/schemas/OrgGroupPolicyEnforcementTier" + policy_name: + description: The name of the policy. + example: "monitor_timezone" + type: string + policy_type: + $ref: "#/components/schemas/OrgGroupPolicyPolicyType" + required: + - policy_name + - content + type: object + OrgGroupPolicyCreateData: + description: Data for creating an org group policy. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyCreateAttributes" + relationships: + $ref: "#/components/schemas/OrgGroupPolicyCreateRelationships" + type: + $ref: "#/components/schemas/OrgGroupPolicyType" + required: + - type + - attributes + - relationships + type: object + OrgGroupPolicyCreateRelationships: + description: Relationships for creating a policy. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + required: + - org_group + type: object + OrgGroupPolicyCreateRequest: + description: Request to create an org group policy. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyCreateData" + required: + - data + type: object + OrgGroupPolicyData: + description: An org group policy resource. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyAttributes" + id: + description: The ID of the org group policy. + example: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/OrgGroupPolicyRelationships" + type: + $ref: "#/components/schemas/OrgGroupPolicyType" + required: + - id + - type + - attributes + type: object + OrgGroupPolicyEnforcementTier: + default: OVERRIDE_ALLOWED + description: >- + The enforcement tier of the policy. `OVERRIDE_ALLOWED` means the policy is set but member orgs may mutate it. `GROUP_MANAGED` means the policy is strictly controlled and mutations are blocked for affected orgs. `DELEGATE` means each member org controls its own value. + enum: + - OVERRIDE_ALLOWED + - GROUP_MANAGED + - DELEGATE + example: OVERRIDE_ALLOWED + type: string + x-enum-varnames: + - OVERRIDE_ALLOWED + - GROUP_MANAGED + - DELEGATE + OrgGroupPolicyListResponse: + description: Response containing a list of org group policies. + properties: + data: + description: An array of org group policies. + items: + $ref: "#/components/schemas/OrgGroupPolicyData" + type: array + links: + $ref: "#/components/schemas/OrgGroupPaginationLinks" + meta: + $ref: "#/components/schemas/OrgGroupPaginationMeta" + required: + - data + type: object + OrgGroupPolicyOverrideAttributes: + description: Attributes of an org group policy override. + properties: + content: + additionalProperties: {} + description: The override content as key-value pairs. + type: object + created_at: + description: Timestamp when the override was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + modified_at: + description: Timestamp when the override was last modified. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + org_site: + description: The site of the organization that has the override. + example: "us1" + type: string + org_uuid: + description: The UUID of the organization that has the override. + example: "c3d4e5f6-a7b8-9012-cdef-012345678901" + format: uuid + type: string + required: + - org_uuid + - org_site + - created_at + - modified_at + type: object + OrgGroupPolicyOverrideCreateAttributes: + description: Attributes for creating a policy override. + properties: + org_site: + description: The site of the organization. + example: "us1" + type: string + org_uuid: + description: The UUID of the organization to grant the override. + example: "c3d4e5f6-a7b8-9012-cdef-012345678901" + format: uuid + type: string + required: + - org_uuid + - org_site + type: object + OrgGroupPolicyOverrideCreateData: + description: Data for creating an org group policy override. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyOverrideCreateAttributes" + relationships: + $ref: "#/components/schemas/OrgGroupPolicyOverrideCreateRelationships" + type: + $ref: "#/components/schemas/OrgGroupPolicyOverrideType" + required: + - type + - attributes + - relationships + type: object + OrgGroupPolicyOverrideCreateRelationships: + description: Relationships for creating a policy override. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + org_group_policy: + $ref: "#/components/schemas/OrgGroupPolicyRelationshipToOne" + required: + - org_group + - org_group_policy + type: object + OrgGroupPolicyOverrideCreateRequest: + description: Request to create an org group policy override. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyOverrideCreateData" + required: + - data + type: object + OrgGroupPolicyOverrideData: + description: An org group policy override resource. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyOverrideAttributes" + id: + description: The ID of the policy override. + example: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/OrgGroupPolicyOverrideRelationships" + type: + $ref: "#/components/schemas/OrgGroupPolicyOverrideType" + required: + - id + - type + - attributes + type: object + OrgGroupPolicyOverrideListResponse: + description: Response containing a list of org group policy overrides. + properties: + data: + description: An array of org group policy overrides. + items: + $ref: "#/components/schemas/OrgGroupPolicyOverrideData" + type: array + links: + $ref: "#/components/schemas/OrgGroupPaginationLinks" + meta: + $ref: "#/components/schemas/OrgGroupPaginationMeta" + required: + - data + type: object + OrgGroupPolicyOverrideRelationships: + description: Relationships of an org group policy override. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + org_group_policy: + $ref: "#/components/schemas/OrgGroupPolicyRelationshipToOne" + type: object + OrgGroupPolicyOverrideResponse: + description: Response containing a single org group policy override. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyOverrideData" + required: + - data + type: object + OrgGroupPolicyOverrideSortOption: + default: id + description: Field to sort overrides by. + enum: + - id + - -id + - org_uuid + - -org_uuid + example: id + type: string + x-enum-varnames: + - ID + - MINUS_ID + - ORG_UUID + - MINUS_ORG_UUID + OrgGroupPolicyOverrideType: + description: Org group policy overrides resource type. + enum: + - org_group_policy_overrides + example: org_group_policy_overrides + type: string + x-enum-varnames: + - ORG_GROUP_POLICY_OVERRIDES + OrgGroupPolicyOverrideUpdateAttributes: + description: >- + Attributes for updating a policy override. The `org_uuid` and `org_site` fields must match the existing override and cannot be changed. + properties: + org_site: + description: The site of the organization. + example: "us1" + type: string + org_uuid: + description: The UUID of the organization. + example: "c3d4e5f6-a7b8-9012-cdef-012345678901" + format: uuid + type: string + required: + - org_uuid + - org_site + type: object + OrgGroupPolicyOverrideUpdateData: + description: Data for updating a policy override. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyOverrideUpdateAttributes" + id: + description: The ID of the policy override. + example: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgGroupPolicyOverrideType" + required: + - id + - type + - attributes + type: object + OrgGroupPolicyOverrideUpdateRequest: + description: Request to update an org group policy override. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyOverrideUpdateData" + required: + - data + type: object + OrgGroupPolicyPolicyType: + default: org_config + description: >- + The type of the policy. Only `org_config` is supported, indicating a policy backed by an organization configuration setting. + enum: + - org_config + example: org_config + type: string + x-enum-varnames: + - ORG_CONFIG + OrgGroupPolicyRelationshipToOne: + description: Relationship to a single org group policy. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyRelationshipToOneData" + required: + - data + type: object + OrgGroupPolicyRelationshipToOneData: + description: A reference to an org group policy. + properties: + id: + description: The ID of the policy. + example: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgGroupPolicyType" + required: + - id + - type + type: object + OrgGroupPolicyRelationships: + description: Relationships of an org group policy. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + type: object + OrgGroupPolicyResponse: + description: Response containing a single org group policy. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyData" + required: + - data + type: object + OrgGroupPolicySortOption: + default: id + description: Field to sort policies by. + enum: + - id + - -id + - name + - -name + example: id + type: string + x-enum-varnames: + - ID + - MINUS_ID + - NAME + - MINUS_NAME + OrgGroupPolicySuggestionAttributes: + description: Attributes of an org group policy suggestion. + properties: + consensus_ratio: + description: The ratio of member orgs whose configuration agrees on the recommended value. + example: 0.75 + format: double + maximum: 1 + minimum: 0 + type: number + policy_name: + description: The name of the suggested policy. + example: "monitor_timezone" + type: string + recommended_value: + description: The recommended value for the policy, based on member org consensus. + example: "UTC" + status: + $ref: "#/components/schemas/OrgGroupPolicySuggestionStatus" + required: + - policy_name + - status + - consensus_ratio + - recommended_value + type: object + OrgGroupPolicySuggestionData: + description: An org group policy suggestion resource. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicySuggestionAttributes" + id: + description: The ID of the org group policy suggestion. + example: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: string + relationships: + $ref: "#/components/schemas/OrgGroupPolicySuggestionRelationships" + type: + $ref: "#/components/schemas/OrgGroupPolicySuggestionType" + required: + - id + - type + - attributes + type: object + OrgGroupPolicySuggestionListResponse: + description: Response containing a list of org group policy suggestions. + properties: + data: + description: An array of org group policy suggestions. + items: + $ref: "#/components/schemas/OrgGroupPolicySuggestionData" + type: array + required: + - data + type: object + OrgGroupPolicySuggestionRelationships: + description: Relationships of an org group policy suggestion. + properties: + org_group: + $ref: "#/components/schemas/OrgGroupRelationshipToOne" + type: object + OrgGroupPolicySuggestionStatus: + description: The status of the policy suggestion. + enum: + - pending + - accepted + - dismissed + example: pending + type: string + x-enum-varnames: + - PENDING + - ACCEPTED + - DISMISSED + OrgGroupPolicySuggestionType: + description: Org group policy suggestions resource type. + enum: + - org_group_policy_suggestions + example: org_group_policy_suggestions + type: string + x-enum-varnames: + - ORG_GROUP_POLICY_SUGGESTIONS + OrgGroupPolicyType: + description: Org group policies resource type. + enum: + - org_group_policies + example: org_group_policies + type: string + x-enum-varnames: + - ORG_GROUP_POLICIES + OrgGroupPolicyUpdateAttributes: + description: Attributes for updating an org group policy. + properties: + content: + additionalProperties: {} + description: The policy content as key-value pairs. + example: + value: "UTC" + type: object + enforcement_tier: + $ref: "#/components/schemas/OrgGroupPolicyEnforcementTier" + type: object + OrgGroupPolicyUpdateData: + description: Data for updating an org group policy. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupPolicyUpdateAttributes" + id: + description: The ID of the policy. + example: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgGroupPolicyType" + required: + - id + - type + - attributes + type: object + OrgGroupPolicyUpdateRequest: + description: Request to update an org group policy. + properties: + data: + $ref: "#/components/schemas/OrgGroupPolicyUpdateData" + required: + - data + type: object + OrgGroupRelationshipToOne: + description: Relationship to a single org group. + properties: + data: + $ref: "#/components/schemas/OrgGroupRelationshipToOneData" + required: + - data + type: object + OrgGroupRelationshipToOneData: + description: A reference to an org group. + properties: + id: + description: The ID of the org group. + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgGroupType" + required: + - id + - type + type: object + OrgGroupResponse: + description: Response containing a single org group. + properties: + data: + $ref: "#/components/schemas/OrgGroupData" + required: + - data + type: object + OrgGroupSortOption: + default: uuid + description: Field to sort org groups by. + enum: + - name + - -name + - uuid + - -uuid + example: name + type: string + x-enum-varnames: + - NAME + - MINUS_NAME + - UUID + - MINUS_UUID + OrgGroupType: + description: Org groups resource type. + enum: + - org_groups + example: org_groups + type: string + x-enum-varnames: + - ORG_GROUPS + OrgGroupUpdateAttributes: + description: Attributes for updating an org group. + properties: + name: + description: The name of the org group. + example: "Updated Org Group Name" + type: string + required: + - name + type: object + OrgGroupUpdateData: + description: Data for updating an org group. + properties: + attributes: + $ref: "#/components/schemas/OrgGroupUpdateAttributes" + id: + description: The ID of the org group. + example: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgGroupType" + required: + - id + - type + - attributes + type: object + OrgGroupUpdateRequest: + description: Request to update an org group. + properties: + data: + $ref: "#/components/schemas/OrgGroupUpdateData" + required: + - data + type: object + OrgRelationshipData: + description: Reference to an organization resource. + properties: + id: + description: The UUID of the organization. + example: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + format: uuid + type: string + type: + $ref: "#/components/schemas/OrgResourceType" + required: + - id + - type + type: object + OrgResourceType: + description: The resource type for organizations. + enum: [orgs] + example: "orgs" + type: string + x-enum-varnames: + - ORGS + OrgSAMLPreferencesAttributes: + description: Attributes for updating an organization's SAML preferences. + properties: + default_role_uuids: + description: |- + The UUID of the default role assigned to just-in-time provisioned users. + Exactly one role UUID must be provided. + example: + - 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + items: + description: The UUID of a role. + example: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + format: uuid + type: string + maxItems: 1 + minItems: 1 + type: array + jit_domains: + description: |- + Email domains for which users are automatically provisioned on first SAML login + (just-in-time provisioning). + example: + - example.com + items: + description: An email domain for just-in-time user provisioning. + example: example.com + maxLength: 256 + minLength: 1 + type: string + maxItems: 50 + type: array + required: + - jit_domains + - default_role_uuids + type: object + OrgSAMLPreferencesData: + description: Data for updating an organization's SAML preferences. + properties: + attributes: + $ref: "#/components/schemas/OrgSAMLPreferencesAttributes" + id: + description: The identifier of the SAML preferences resource. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/OrgSAMLPreferencesType" + required: + - type + - attributes + type: object + OrgSAMLPreferencesType: + default: saml_preferences + description: SAML preferences resource type. + enum: + - saml_preferences + example: saml_preferences + type: string + x-enum-varnames: + - SAML_PREFERENCES + OrgSAMLPreferencesUpdateRequest: + description: Request to update an organization's SAML preferences. + properties: + data: + $ref: "#/components/schemas/OrgSAMLPreferencesData" + required: + - data + type: object + Organization: + description: Organization object. + properties: + attributes: + $ref: "#/components/schemas/OrganizationAttributes" + id: + description: ID of the organization. + type: string + type: + $ref: "#/components/schemas/OrganizationsType" + required: + - type + type: object + OrganizationAttributes: + description: Attributes of the organization. + properties: + created_at: + description: Creation time of the organization. + format: date-time + type: string + description: + description: Description of the organization. + type: string + disabled: + description: Whether or not the organization is disabled. + type: boolean + modified_at: + description: Time of last organization modification. + format: date-time + type: string + name: + description: Name of the organization. + type: string + public_id: + description: Public ID of the organization. + type: string + sharing: + description: Sharing type of the organization. + type: string + url: + description: URL of the site that this organization exists at. + type: string + type: object + OrganizationsType: + default: orgs + description: Organizations resource type. + enum: + - orgs + example: orgs + type: string + x-enum-varnames: + - ORGS + OutboundEdge: + description: The definition of `OutboundEdge` object. + properties: + branchName: + description: The `OutboundEdge` `branchName`. + example: main + minLength: 1 + type: string + nextStepName: + description: The `OutboundEdge` `nextStepName`. + example: Step2 + minLength: 1 + type: string + required: + - nextStepName + - branchName + type: object + OutcomeType: + default: outcome + description: The JSON:API type for an outcome. + enum: + - outcome + example: outcome + type: string + x-enum-varnames: + - OUTCOME + OutcomesBatchAttributes: + description: The JSON:API attributes for a batched set of scorecard outcomes. + properties: + results: + description: Set of scorecard outcomes to update. + items: + $ref: "#/components/schemas/OutcomesBatchRequestItem" + type: array + type: object + OutcomesBatchRequest: + description: Scorecard outcomes batch request. + properties: + data: + $ref: "#/components/schemas/OutcomesBatchRequestData" + type: object + OutcomesBatchRequestData: + description: Scorecard outcomes batch request data. + properties: + attributes: + $ref: "#/components/schemas/OutcomesBatchAttributes" + type: + $ref: "#/components/schemas/OutcomesBatchType" + type: object + OutcomesBatchRequestItem: + description: Scorecard outcome for a specific rule, for a given service within a batched update. + properties: + remarks: + description: >- + Any remarks regarding the scorecard rule's evaluation, and supports HTML hyperlinks. + example: 'See: Services' + type: string + rule_id: + $ref: "#/components/schemas/RuleId" + service_name: + description: The unique name for a service in the catalog. + example: my-service + type: string + state: + $ref: "#/components/schemas/State" + required: + - rule_id + - service_name + - state + type: object + OutcomesBatchResponse: + description: Scorecard outcomes batch response. + properties: + data: + $ref: "#/components/schemas/OutcomesBatchResponseData" + example: + - attributes: + service_name: my-service + state: pass + id: "outcome-abc123" + type: rule-outcome + meta: + $ref: "#/components/schemas/OutcomesBatchResponseMeta" + required: + - data + - meta + type: object + OutcomesBatchResponseAttributes: + description: The JSON:API attributes for an outcome. + properties: + created_at: + description: Creation time of the rule outcome. + format: date-time + type: string + modified_at: + description: Time of last rule outcome modification. + format: date-time + type: string + remarks: + description: >- + Any remarks regarding the scorecard rule's evaluation, and supports HTML hyperlinks. + example: 'See: Services' + type: string + service_name: + description: The unique name for a service in the catalog. + example: my-service + type: string + state: + $ref: "#/components/schemas/State" + type: object + OutcomesBatchResponseData: + description: List of rule outcomes which were affected during the bulk operation. + items: + $ref: "#/components/schemas/OutcomesResponseDataItem" + type: array + OutcomesBatchResponseMeta: + description: Metadata pertaining to the bulk operation. + properties: + total_received: + description: Total number of scorecard results received during the bulk operation. + format: int64 + type: integer + total_updated: + description: Total number of scorecard results modified during the bulk operation. + format: int64 + type: integer + type: object + OutcomesBatchType: + default: batched-outcome + description: The JSON:API type for scorecard outcomes. + enum: [batched-outcome] + example: batched-outcome + type: string + x-enum-varnames: [BATCHED_OUTCOME] + OutcomesResponse: + description: Scorecard outcomes - the result of a rule for a service. + properties: + data: + $ref: "#/components/schemas/OutcomesResponseData" + included: + $ref: "#/components/schemas/OutcomesResponseIncluded" + links: + $ref: "#/components/schemas/OutcomesResponseLinks" + type: object + OutcomesResponseData: + description: List of rule outcomes. + items: + $ref: "#/components/schemas/OutcomesResponseDataItem" + type: array + OutcomesResponseDataItem: + description: A single rule outcome. + properties: + attributes: + $ref: "#/components/schemas/OutcomesBatchResponseAttributes" + id: + description: The unique ID for a rule outcome. + type: string + relationships: + $ref: "#/components/schemas/RuleOutcomeRelationships" + type: + $ref: "#/components/schemas/OutcomeType" + type: object + OutcomesResponseIncluded: + description: Array of rule details. + items: + $ref: "#/components/schemas/OutcomesResponseIncludedItem" + type: array + OutcomesResponseIncludedItem: + description: Attributes of the included rule. + properties: + attributes: + $ref: "#/components/schemas/OutcomesResponseIncludedRuleAttributes" + id: + $ref: "#/components/schemas/RuleId" + type: + $ref: "#/components/schemas/RuleType" + type: object + OutcomesResponseIncludedRuleAttributes: + description: Details of a rule. + properties: + name: + description: Name of the rule. + example: Team Defined + type: string + scorecard_name: + description: The scorecard name to which this rule must belong. + example: Observability Best Practices + type: string + type: object + OutcomesResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. + example: "/api/v2/scorecard/outcomes?include=rule&page%5Blimit%5D=100&page%5Boffset%5D=100" + type: string + type: object + OutputSchema: + description: "A list of output parameters for the workflow." + properties: + parameters: + description: The `OutputSchema` `parameters`. + items: + $ref: "#/components/schemas/OutputSchemaParameters" + type: array + type: object + OutputSchemaParameters: + description: The definition of `OutputSchemaParameters` object. + properties: + defaultValue: + description: The `OutputSchemaParameters` `defaultValue`. + description: + description: The `OutputSchemaParameters` `description`. + type: string + label: + description: The `OutputSchemaParameters` `label`. + type: string + name: + description: The `OutputSchemaParameters` `name`. + example: "" + type: string + type: + $ref: "#/components/schemas/OutputSchemaParametersType" + value: + description: The `OutputSchemaParameters` `value`. + required: + - name + - type + type: object + OutputSchemaParametersType: + description: The definition of `OutputSchemaParametersType` object. + enum: + - STRING + - NUMBER + - BOOLEAN + - OBJECT + - ARRAY_STRING + - ARRAY_NUMBER + - ARRAY_BOOLEAN + - ARRAY_OBJECT + example: STRING + type: string + x-enum-varnames: + - STRING + - NUMBER + - BOOLEAN + - OBJECT + - ARRAY_STRING + - ARRAY_NUMBER + - ARRAY_BOOLEAN + - ARRAY_OBJECT + OverwriteAllocationsRequest: + description: Request to overwrite targeting rules (allocations) for a feature flag in an environment. + properties: + data: + description: Targeting rules (allocations) to replace existing ones with. + items: + $ref: "#/components/schemas/AllocationDataRequest" + type: array + required: + - data + type: object + OwnershipConfidenceLevel: + description: The ownership confidence level. + enum: + - high + - medium + - low + example: high + type: string + x-enum-varnames: + - HIGH + - MEDIUM + - LOW + OwnershipEvidenceAttributes: + description: The attributes of an ownership evidence response. + properties: + evidence_versions: + $ref: "#/components/schemas/OwnershipEvidenceVersions" + required: + - evidence_versions + type: object + OwnershipEvidenceData: + description: The data wrapper for an ownership evidence response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipEvidenceAttributes" + id: + description: The identifier of the resource the evidence applies to. + example: test-resource + type: string + type: + $ref: "#/components/schemas/OwnershipEvidenceType" + required: + - id + - type + - attributes + type: object + OwnershipEvidenceResponse: + description: The response returned when retrieving the evidence backing an ownership inference for an owner type. + properties: + data: + $ref: "#/components/schemas/OwnershipEvidenceData" + required: + - data + type: object + OwnershipEvidenceType: + default: ownership_evidence + description: The type of the ownership evidence resource. The value should always be `ownership_evidence`. + enum: + - ownership_evidence + example: ownership_evidence + type: string + x-enum-varnames: + - OWNERSHIP_EVIDENCE + OwnershipEvidenceVersion: + additionalProperties: {} + description: A single evidence version entry describing how an inference was produced. + example: + pipeline_id: p1 + version: v3 + type: object + OwnershipEvidenceVersions: + description: The list of evidence versions associated with an inference. + example: + - pipeline_id: p1 + version: v3 + items: + $ref: "#/components/schemas/OwnershipEvidenceVersion" + nullable: true + type: array + OwnershipFeedbackAction: + description: The feedback action to apply to an inference. + enum: + - confirm + - reject + - correct + - persist + example: confirm + type: string + x-enum-varnames: + - CONFIRM + - REJECT + - CORRECT + - PERSIST + OwnershipFeedbackRequest: + description: The request body for submitting ownership feedback. + properties: + data: + $ref: "#/components/schemas/OwnershipFeedbackRequestData" + required: + - data + type: object + OwnershipFeedbackRequestAttributes: + description: The attributes of an ownership feedback request. + properties: + action: + $ref: "#/components/schemas/OwnershipFeedbackAction" + actor_handle: + description: The handle of the actor submitting the feedback. + example: user@example.com + type: string + actor_type: + description: The type of actor submitting the feedback, for example `user` or `service`. + example: user + type: string + corrected_owner_handle: + description: The corrected owner handle. Required when `action` is `correct`. + example: team-b + nullable: true + type: string + corrected_owner_type: + description: The corrected owner type. Required when `action` is `correct`. + example: team + nullable: true + type: string + inference_checksum: + description: The checksum of the inference being acted upon. Must match the current inference checksum or the request returns a conflict. + example: abc123 + type: string + reason: + description: An optional free-form reason explaining the feedback. + example: Confirmed by team lead. + nullable: true + type: string + required: + - action + - actor_handle + - actor_type + - inference_checksum + type: object + OwnershipFeedbackRequestData: + description: The data wrapper for an ownership feedback request. + properties: + attributes: + $ref: "#/components/schemas/OwnershipFeedbackRequestAttributes" + type: + $ref: "#/components/schemas/OwnershipFeedbackType" + required: + - type + - attributes + type: object + OwnershipFeedbackResponse: + description: The response returned after applying ownership feedback to an inference. + properties: + data: + $ref: "#/components/schemas/OwnershipFeedbackResultData" + required: + - data + type: object + OwnershipFeedbackResultAttributes: + description: The attributes of an ownership feedback result. + properties: + action: + $ref: "#/components/schemas/OwnershipFeedbackAction" + checksum: + description: The checksum of the inference after the feedback was applied. + example: abc123 + type: string + new_status: + $ref: "#/components/schemas/OwnershipInferenceStatus" + owner_type: + $ref: "#/components/schemas/OwnershipOwnerType" + previous_status: + $ref: "#/components/schemas/OwnershipInferenceStatus" + primary_contact_ref: + description: The primary contact reference for the inferred owner after the feedback was applied, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + updated_at: + description: The time when the inference was updated by the feedback. + example: "2026-01-15T10:00:00Z" + format: date-time + type: string + required: + - action + - previous_status + - new_status + - owner_type + - checksum + - updated_at + type: object + OwnershipFeedbackResultData: + description: The data wrapper for an ownership feedback result response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipFeedbackResultAttributes" + id: + description: The identifier of the resource that the feedback was applied to. + example: res-1 + type: string + type: + $ref: "#/components/schemas/OwnershipFeedbackResultType" + required: + - id + - type + - attributes + type: object + OwnershipFeedbackResultType: + default: ownership_feedback_result + description: The type of the ownership feedback result resource. The value should always be `ownership_feedback_result`. + enum: + - ownership_feedback_result + example: ownership_feedback_result + type: string + x-enum-varnames: + - OWNERSHIP_FEEDBACK_RESULT + OwnershipFeedbackType: + default: ownership_feedback + description: The type of the ownership feedback request resource. The value should always be `ownership_feedback`. + enum: + - ownership_feedback + example: ownership_feedback + type: string + x-enum-varnames: + - OWNERSHIP_FEEDBACK + OwnershipHistoryAttributes: + description: The attributes of an ownership history response. + properties: + items: + $ref: "#/components/schemas/OwnershipHistoryItems" + pagination: + $ref: "#/components/schemas/OwnershipHistoryPagination" + required: + - items + - pagination + type: object + OwnershipHistoryData: + description: The data wrapper for an ownership history response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipHistoryAttributes" + id: + description: The resource identifier for which history is returned. + example: res-1 + type: string + type: + $ref: "#/components/schemas/OwnershipHistoryType" + required: + - id + - type + - attributes + type: object + OwnershipHistoryItem: + description: A single ownership inference history entry. + properties: + checksum: + description: A checksum identifying the state of the inference at this point in time. + example: "" + type: string + confidence: + description: The confidence score of the inference, expressed as a numeric string with up to four decimal places. + example: "0.9000" + type: string + created_at: + description: The time this history entry was created. + example: "2026-01-15T10:00:00Z" + format: date-time + type: string + evidence_versions: + $ref: "#/components/schemas/OwnershipEvidenceVersions" + explanation: + description: A human-readable explanation of how the inference was produced. + example: "" + type: string + failed_at: + description: The time when this inference failed, if applicable. + example: "2026-01-15T10:00:00Z" + format: date-time + nullable: true + type: string + failure_reason: + description: The reason why this inference failed, if applicable. + example: missing evidence + nullable: true + type: string + id: + description: The unique identifier of the history entry. + example: 100 + format: int64 + type: integer + owner_type: + $ref: "#/components/schemas/OwnershipOwnerType" + primary_contact_ref: + description: The primary contact reference for the inferred owner, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + resource_id: + description: The identifier of the resource that the inference applies to. + example: res-1 + type: string + retry_schedule: + description: The scheduled retry time for a failed inference, if applicable. + example: "2026-01-15T11:00:00Z" + format: date-time + nullable: true + type: string + sources: + $ref: "#/components/schemas/OwnershipInferenceSources" + status: + $ref: "#/components/schemas/OwnershipInferenceStatus" + required: + - id + - resource_id + - owner_type + - confidence + - explanation + - evidence_versions + - sources + - checksum + - status + - created_at + type: object + OwnershipHistoryItems: + description: The list of history entries returned for this page. + items: + $ref: "#/components/schemas/OwnershipHistoryItem" + type: array + OwnershipHistoryPagination: + description: Cursor-based pagination metadata for the history response. + properties: + has_more: + description: Whether more history entries are available beyond this page. + example: false + type: boolean + next_cursor: + description: An opaque, base64-encoded cursor token. Pass it as the `cursor` query parameter to retrieve the next page. Absent or `null` when there are no further pages. + example: eyJpZCI6OTh9 + nullable: true + type: string + required: + - has_more + type: object + OwnershipHistoryResponse: + description: The response returned when listing the inference history for a resource. + properties: + data: + $ref: "#/components/schemas/OwnershipHistoryData" + required: + - data + type: object + OwnershipHistoryType: + default: ownership_history + description: The type of the ownership history resource. The value should always be `ownership_history`. + enum: + - ownership_history + example: ownership_history + type: string + x-enum-varnames: + - OWNERSHIP_HISTORY + OwnershipInferenceAttributes: + description: The attributes of a single ownership inference. + properties: + checksum: + description: A checksum that uniquely identifies the current state of the inference. Required when submitting feedback. + example: abc123 + type: string + confidence: + description: The confidence score of the inference, expressed as a numeric string with up to four decimal places. + example: "0.9500" + type: string + created_at: + description: The time when the inference was created. + example: "2026-01-15T10:00:00Z" + format: date-time + type: string + evidence_versions: + $ref: "#/components/schemas/OwnershipEvidenceVersions" + explanation: + description: A human-readable explanation of how the inference was produced. + example: High confidence match + type: string + owner_type: + $ref: "#/components/schemas/OwnershipOwnerType" + primary_contact_ref: + description: The primary contact reference for the inferred owner, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + sources: + $ref: "#/components/schemas/OwnershipInferenceSources" + status: + $ref: "#/components/schemas/OwnershipInferenceStatus" + updated_at: + description: The time when the inference was last updated. + example: "2026-01-15T10:00:00Z" + format: date-time + type: string + required: + - owner_type + - confidence + - explanation + - evidence_versions + - sources + - status + - checksum + - created_at + - updated_at + type: object + OwnershipInferenceData: + description: The data wrapper for a single ownership inference response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipInferenceAttributes" + id: + description: The identifier of the inference, formatted as `resource_id:owner_type`. + example: test-resource:team + type: string + type: + $ref: "#/components/schemas/OwnershipInferenceType" + required: + - id + - type + - attributes + type: object + OwnershipInferenceItem: + description: A single ownership inference, scoped to a specific owner type. + properties: + checksum: + description: A checksum that uniquely identifies the current state of the inference. Required when submitting feedback. + example: abc123 + type: string + confidence: + description: The confidence score of the inference, expressed as a numeric string with up to four decimal places. + example: "0.9500" + type: string + created_at: + description: The time when the inference was created. + example: "2026-01-15T10:00:00Z" + format: date-time + type: string + evidence_versions: + $ref: "#/components/schemas/OwnershipEvidenceVersions" + explanation: + description: A human-readable explanation of how the inference was produced. + example: High confidence match + type: string + id: + description: The identifier of the inference, formatted as `resource_id:owner_type`. + example: test-resource:team + type: string + owner_type: + $ref: "#/components/schemas/OwnershipOwnerType" + primary_contact_ref: + description: The primary contact reference for the inferred owner, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + sources: + $ref: "#/components/schemas/OwnershipInferenceSources" + status: + $ref: "#/components/schemas/OwnershipInferenceStatus" + updated_at: + description: The time when the inference was last updated. + example: "2026-01-15T10:00:00Z" + format: date-time + type: string + required: + - id + - owner_type + - confidence + - explanation + - evidence_versions + - sources + - status + - checksum + - created_at + - updated_at + type: object + OwnershipInferenceItems: + description: The list of inferences for a resource, with one inference per owner type. + items: + $ref: "#/components/schemas/OwnershipInferenceItem" + type: array + OwnershipInferenceListAttributes: + description: The attributes of the ownership inferences collection response. + properties: + items: + $ref: "#/components/schemas/OwnershipInferenceItems" + required: + - items + type: object + OwnershipInferenceListData: + description: The data wrapper for the ownership inferences collection response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipInferenceListAttributes" + id: + description: The resource identifier associated with the returned inferences. + example: test-resource + type: string + type: + $ref: "#/components/schemas/OwnershipInferencesType" + required: + - id + - type + - attributes + type: object + OwnershipInferenceListResponse: + description: The response returned when listing all current ownership inferences for a resource. + properties: + data: + $ref: "#/components/schemas/OwnershipInferenceListData" + required: + - data + type: object + OwnershipInferenceResponse: + description: The response returned when retrieving a single ownership inference for an owner type. + properties: + data: + $ref: "#/components/schemas/OwnershipInferenceData" + required: + - data + type: object + OwnershipInferenceSource: + additionalProperties: {} + description: A source describing how an inference was derived. + example: + kind: code_owners + type: object + OwnershipInferenceSources: + description: The list of sources backing an ownership inference. Empty when the inference status is not whitelisted to expose sources. + example: + - kind: code_owners + items: + $ref: "#/components/schemas/OwnershipInferenceSource" + type: array + OwnershipInferenceStatus: + description: The lifecycle status of an ownership inference. + enum: + - suggested + - persisted + - overridden + - failed + - unknown + example: suggested + type: string + x-enum-varnames: + - SUGGESTED + - PERSISTED + - OVERRIDDEN + - FAILED + - UNKNOWN + OwnershipInferenceType: + default: ownership_inference + description: The type of the ownership inference resource. The value should always be `ownership_inference`. + enum: + - ownership_inference + example: ownership_inference + type: string + x-enum-varnames: + - OWNERSHIP_INFERENCE + OwnershipInferencesType: + default: ownership_inferences + description: The type of the ownership inferences collection resource. The value should always be `ownership_inferences`. + enum: + - ownership_inferences + example: ownership_inferences + type: string + x-enum-varnames: + - OWNERSHIP_INFERENCES + OwnershipOwnerType: + description: The owner type for an ownership inference. + enum: + - user + - team + - service + - unknown + example: team + type: string + x-enum-varnames: + - USER + - TEAM + - SERVICE + - UNKNOWN + OwnershipSettingsAttributes: + description: The attributes of the ownership settings response. + properties: + auto_tag: + description: Whether automatic ownership tagging is enabled. + example: true + type: boolean + confidence_level: + $ref: "#/components/schemas/OwnershipConfidenceLevel" + version: + description: The current version of the ownership settings. + example: 1 + format: int64 + type: integer + required: + - version + - auto_tag + - confidence_level + type: object + OwnershipSettingsData: + description: The data wrapper for an ownership settings response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipSettingsAttributes" + id: + description: The identifier of the ownership settings resource. + example: settings + type: string + type: + $ref: "#/components/schemas/OwnershipSettingsType" + required: + - id + - type + - attributes + type: object + OwnershipSettingsRequest: + description: The request body for updating ownership settings. + properties: + data: + $ref: "#/components/schemas/OwnershipSettingsRequestData" + required: + - data + type: object + OwnershipSettingsRequestAttributes: + description: The attributes of an ownership settings request. + properties: + auto_tag: + description: Whether automatic ownership tagging is enabled. + example: true + type: boolean + confidence_level: + $ref: "#/components/schemas/OwnershipConfidenceLevel" + required: + - auto_tag + - confidence_level + type: object + OwnershipSettingsRequestData: + description: The data wrapper for an ownership settings request. + properties: + attributes: + $ref: "#/components/schemas/OwnershipSettingsRequestAttributes" + type: + $ref: "#/components/schemas/OwnershipSettingsType" + required: + - type + - attributes + type: object + OwnershipSettingsResponse: + description: The response returned when retrieving or updating ownership settings. + properties: + data: + $ref: "#/components/schemas/OwnershipSettingsData" + required: + - data + type: object + OwnershipSettingsType: + default: ownership_settings + description: The type of the ownership settings resource. The value should always be `ownership_settings`. + enum: + - ownership_settings + example: ownership_settings + type: string + x-enum-varnames: + - OWNERSHIP_SETTINGS + OwnershipUntaggedFindingsAttributes: + description: The counts of findings without a team tag by ownership confidence. + properties: + high_confidence: + description: The number of high confidence findings without a team tag. + example: 30 + format: int64 + type: integer + low_confidence: + description: The number of low confidence findings without a team tag. + example: 42 + format: int64 + type: integer + medium_confidence: + description: The number of medium confidence findings without a team tag. + example: 70 + format: int64 + type: integer + total: + description: The total number of findings without a team tag. + example: 142 + format: int64 + type: integer + required: + - total + - high_confidence + - medium_confidence + - low_confidence + type: object + OwnershipUntaggedFindingsData: + description: The data wrapper for an ownership untagged findings response. + properties: + attributes: + $ref: "#/components/schemas/OwnershipUntaggedFindingsAttributes" + id: + description: The identifier of the ownership untagged findings resource. + example: untagged + type: string + type: + $ref: "#/components/schemas/OwnershipUntaggedFindingsType" + required: + - id + - type + - attributes + type: object + OwnershipUntaggedFindingsResponse: + description: The response returned when counting findings without a team tag by ownership confidence. + properties: + data: + $ref: "#/components/schemas/OwnershipUntaggedFindingsData" + required: + - data + type: object + OwnershipUntaggedFindingsType: + default: ownership_untagged_findings + description: The type of the ownership untagged findings resource. The value should always be `ownership_untagged_findings`. + enum: + - ownership_untagged_findings + example: ownership_untagged_findings + type: string + x-enum-varnames: + - OWNERSHIP_UNTAGGED_FINDINGS + PageAnnotationsAttributes: + description: Attributes of the annotations on a page. + properties: + annotations: + $ref: "#/components/schemas/AnnotationsInPageMap" + global_annotations: + $ref: "#/components/schemas/GlobalAnnotationIds" + widget_mapping: + $ref: "#/components/schemas/WidgetAnnotationsMap" + required: + - annotations + - widget_mapping + - global_annotations + type: object + PageAnnotationsData: + description: Annotations grouped by widget for a single page. + properties: + attributes: + $ref: "#/components/schemas/PageAnnotationsAttributes" + id: + description: |- + ID of the page, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: "dashboard:abc-def-xyz" + type: string + type: + $ref: "#/components/schemas/PageAnnotationsType" + required: + - id + - type + - attributes + type: object + PageAnnotationsResponse: + description: Response containing all annotations on a page, grouped by widget. + properties: + data: + $ref: "#/components/schemas/PageAnnotationsData" + required: + - data + type: object + PageAnnotationsType: + description: Page annotations resource type. + enum: + - page_annotations + example: page_annotations + type: string + x-enum-varnames: + - PAGE_ANNOTATIONS + PageUrgency: + default: high + description: On-Call Page urgency level. + enum: + - low + - high + example: high + type: string + x-enum-varnames: + - LOW + - HIGH + PaginatedResponseMeta: + description: Metadata for scores response. + properties: + count: + description: Number of entities in this response. + example: 10 + format: int64 + type: integer + limit: + description: Pagination limit. + example: 10 + format: int64 + type: integer + offset: + description: Pagination offset. + example: 0 + format: int64 + type: integer + total: + description: Total number of entities available. + example: 150 + format: int64 + type: integer + required: + - count + - total + - limit + - offset + type: object + Pagination: + description: Pagination object. + properties: + total_count: + description: Total count. + format: int64 + type: integer + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer + type: object + PaginationMeta: + description: Response metadata. + properties: + page: + $ref: "#/components/schemas/PaginationMetaPage" + readOnly: true + type: object + PaginationMetaPage: + description: Offset-based pagination schema. + example: + first_offset: 0 + last_offset: 900 + limit: 100 + next_offset: 100 + offset: 0 + prev_offset: 100 + total: 1000 + type: offset_limit + properties: + first_offset: + description: Integer representing the offset to fetch the first page of results. + example: 0 + format: int64 + type: integer + last_offset: + description: Integer representing the offset to fetch the last page of results. + example: 900 + format: int64 + nullable: true + type: integer + limit: + description: Integer representing the number of elements to be returned in the results. + example: 100 + format: int64 + type: integer + next_offset: + description: >- + Integer representing the index of the first element in the next page of results. Equal to page size added to the current offset. + example: 100 + format: int64 + nullable: true + type: integer + offset: + description: Integer representing the index of the first element in the results. + example: 0 + format: int64 + type: integer + prev_offset: + description: Integer representing the index of the first element in the previous page of results. + example: 100 + format: int64 + nullable: true + type: integer + total: + description: Integer representing the total number of elements available. + example: 1000 + format: int64 + nullable: true + type: integer + type: + $ref: "#/components/schemas/PaginationMetaPageType" + type: object + PaginationMetaPageType: + default: offset_limit + description: The pagination type used for offset-based pagination. + enum: + - offset_limit + example: offset_limit + type: string + x-enum-varnames: + - OFFSET_LIMIT + Parameter: + description: The definition of `Parameter` object. + properties: + name: + description: The `Parameter` `name`. + example: "" + minLength: 1 + type: string + value: + description: The `Parameter` `value`. + required: + - name + - value + type: object + PartialAPIKey: + description: Partial Datadog API key. + properties: + attributes: + $ref: "#/components/schemas/PartialAPIKeyAttributes" + id: + description: ID of the API key. + type: string + relationships: + $ref: "#/components/schemas/APIKeyRelationships" + type: + $ref: "#/components/schemas/APIKeysType" + type: object + PartialAPIKeyAttributes: + description: Attributes of a partial API key. + properties: + category: + description: The category of the API key. + type: string + created_at: + description: Creation date of the API key. + example: "2020-11-23T10:00:00.000Z" + readOnly: true + type: string + date_last_used: + description: Date the API Key was last used. + example: "2020-11-27T10:00:00.000Z" + format: date-time + nullable: true + readOnly: true + type: string + last4: + description: The last four characters of the API key. + example: "abcd" + maxLength: 4 + minLength: 4 + readOnly: true + type: string + modified_at: + description: Date the API key was last modified. + example: "2020-11-23T10:00:00.000Z" + readOnly: true + type: string + name: + description: Name of the API key. + example: "API Key for submitting metrics" + type: string + remote_config_read_enabled: + description: The remote config read enabled status. + type: boolean + type: object + PartialApplicationKey: + description: Partial Datadog application key. + properties: + attributes: + $ref: "#/components/schemas/PartialApplicationKeyAttributes" + id: + description: ID of the application key. + type: string + relationships: + $ref: "#/components/schemas/ApplicationKeyRelationships" + type: + $ref: "#/components/schemas/ApplicationKeysType" + type: object + PartialApplicationKeyAttributes: + description: Attributes of a partial application key. + properties: + created_at: + description: Creation date of the application key. + example: "2020-11-23T10:00:00.000Z" + readOnly: true + type: string + last4: + description: The last four characters of the application key. + example: "abcd" + maxLength: 4 + minLength: 4 + readOnly: true + type: string + last_used_at: + description: Last usage timestamp of the application key. + example: "2020-12-20T10:00:00.000Z" + nullable: true + readOnly: true + type: string + name: + description: Name of the application key. + example: "Application Key for managing dashboards" + type: string + scopes: + description: Array of scopes to grant the application key. + example: ["dashboards_read", "dashboards_write", "dashboards_public_share"] + items: + description: Name of scope. + type: string + nullable: true + type: array + type: object + PartialApplicationKeyResponse: + description: Response for retrieving a partial application key. + properties: + data: + $ref: "#/components/schemas/PartialApplicationKey" + included: + description: Array of objects related to the application key. + items: + $ref: "#/components/schemas/ApplicationKeyResponseIncludedItem" + type: array + type: object + PatchAttachmentRequest: + description: Request to update an attachment. + properties: + data: + $ref: "#/components/schemas/PatchAttachmentRequestData" + type: object + PatchAttachmentRequestData: + description: Attachment data for an update request. + properties: + attributes: + $ref: "#/components/schemas/PatchAttachmentRequestDataAttributes" + id: + description: The unique identifier of the attachment. + example: "00000000-abcd-0002-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentAttachmentType" + required: + - type + type: object + PatchAttachmentRequestDataAttributes: + description: The attributes for updating an attachment. + properties: + attachment: + $ref: "#/components/schemas/PatchAttachmentRequestDataAttributesAttachment" + type: object + PatchAttachmentRequestDataAttributesAttachment: + description: The updated attachment object. + properties: + documentUrl: + description: The updated URL for the attachment. + example: https://app.datadoghq.com/notebook/124/Postmortem-IR-124 + type: string + title: + description: The updated title for the attachment. + example: Postmortem-IR-124 + type: string + type: object + PatchComponentRequest: + description: Request object for updating a component. + example: + data: + attributes: + name: Metrics Intake Service + position: 4 + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: components + properties: + data: + $ref: "#/components/schemas/PatchComponentRequestData" + type: object + PatchComponentRequestData: + description: The data object for updating a component. + properties: + attributes: + $ref: "#/components/schemas/PatchComponentRequestDataAttributes" + id: + description: The ID of the component. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - attributes + - id + - type + type: object + PatchComponentRequestDataAttributes: + description: The supported attributes for updating a component. + properties: + name: + description: The name of the component. + example: Web App + type: string + position: + description: The position of the component. If the component belongs to a group, the position is relative to the other components in the group. + example: 1 + format: int64 + type: integer + type: object + PatchDegradationRequest: + description: Request object for updating a degradation. + example: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: We've deployed a fix and latency has returned to normal. This issue has been resolved. + status: resolved + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: degradations + properties: + data: + $ref: "#/components/schemas/PatchDegradationRequestData" + meta: + $ref: "#/components/schemas/DegradationRequestMeta" + description: The supported metadata for updating a degradation. + type: object + PatchDegradationRequestData: + description: The data object for updating a degradation. + properties: + attributes: + $ref: "#/components/schemas/PatchDegradationRequestDataAttributes" + id: + description: The ID of the degradation. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/PatchDegradationRequestDataRelationships" + type: + $ref: "#/components/schemas/PatchDegradationRequestDataType" + required: + - attributes + - id + - type + type: object + PatchDegradationRequestDataAttributes: + description: The supported attributes for updating a degradation. + properties: + components_affected: + description: The components affected by the degradation. + example: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + items: + $ref: "#/components/schemas/PatchDegradationRequestDataAttributesComponentsAffectedItems" + type: array + description: + description: The description of the degradation. + example: We've deployed a fix and latency has returned to normal. This issue has been resolved. + type: string + status: + $ref: "#/components/schemas/PatchDegradationRequestDataAttributesStatus" + example: resolved + title: + description: The title of the degradation. + example: Elevated API Latency + type: string + type: object + PatchDegradationRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + required: + - id + - status + type: object + PatchDegradationRequestDataAttributesStatus: + description: The status of the degradation. + enum: + - investigating + - identified + - monitoring + - resolved + type: string + x-enum-varnames: + - INVESTIGATING + - IDENTIFIED + - MONITORING + - RESOLVED + PatchDegradationRequestDataRelationships: + description: The supported relationships for updating a degradation. + properties: + template: + $ref: "#/components/schemas/PatchDegradationRequestDataRelationshipsTemplate" + description: The template used to create the degradation. + type: object + PatchDegradationRequestDataRelationshipsTemplate: + description: The template used to create the degradation. + properties: + data: + $ref: "#/components/schemas/PatchDegradationRequestDataRelationshipsTemplateData" + required: + - data + type: object + PatchDegradationRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the degradation. + properties: + id: + description: The ID of the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + - id + type: object + PatchDegradationRequestDataType: + default: degradations + description: Degradations resource type. + enum: + - degradations + example: degradations + type: string + x-enum-varnames: + - DEGRADATIONS + PatchDegradationTemplateRequest: + description: Request object for updating a degradation template. + properties: + data: + $ref: "#/components/schemas/PatchDegradationTemplateRequestData" + type: object + PatchDegradationTemplateRequestData: + description: The data object for updating a degradation template. + properties: + attributes: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataAttributes" + id: + description: The ID of the degradation template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataType" + required: + - type + - id + type: object + PatchDegradationTemplateRequestDataAttributes: + description: The supported attributes for updating a degradation template. + properties: + components_affected: + description: The components affected by a degradation created from this template. + items: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItems" + type: array + degradation_title: + description: The title used for a degradation created from this template. + type: string + name: + description: The name of the degradation template. + type: string + updates: + description: The pre-filled updates for a degradation created from this template. + items: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataAttributesUpdatesItems" + type: array + type: object + PatchDegradationTemplateRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation created from this template. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "" + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus" + required: + - id + - status + type: object + PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus: + description: The status of the component. + enum: + - operational + - degraded + - partial_outage + - major_outage + example: operational + type: string + x-enum-varnames: + - OPERATIONAL + - DEGRADED + - PARTIAL_OUTAGE + - MAJOR_OUTAGE + PatchDegradationTemplateRequestDataAttributesUpdatesItems: + description: A pre-filled update for a degradation created from this template. + properties: + message: + description: The message of the update. + type: string + status: + $ref: "#/components/schemas/CreateDegradationRequestDataAttributesStatus" + required: + - status + type: object + PatchDegradationTemplateRequestDataType: + default: degradation_templates + description: Degradation templates resource type. + enum: + - degradation_templates + example: degradation_templates + type: string + x-enum-varnames: + - DEGRADATION_TEMPLATES + PatchDegradationUpdateRequest: + description: Request object for editing a degradation update. + example: + data: + attributes: + description: We've identified the source of the latency increase and are deploying a fix. + status: identified + id: 00000000-0000-0000-0000-000000000000 + type: degradation_updates + properties: + data: + $ref: "#/components/schemas/PatchDegradationUpdateRequestData" + type: object + PatchDegradationUpdateRequestData: + description: The data object for editing a degradation update. + properties: + attributes: + $ref: "#/components/schemas/PatchDegradationUpdateRequestDataAttributes" + id: + description: The ID of the degradation update to edit. + type: string + type: + $ref: "#/components/schemas/PatchDegradationUpdateRequestDataType" + required: + - type + type: object + PatchDegradationUpdateRequestDataAttributes: + description: Attributes for editing a degradation update. + properties: + description: + description: The message body of the update. + type: string + status: + $ref: "#/components/schemas/PatchDegradationUpdateRequestDataAttributesStatus" + type: object + PatchDegradationUpdateRequestDataAttributesStatus: + description: The status of the degradation update. + enum: + - investigating + - identified + - monitoring + type: string + x-enum-varnames: + - INVESTIGATING + - IDENTIFIED + - MONITORING + PatchDegradationUpdateRequestDataType: + default: degradation_updates + description: Degradation updates resource type. + enum: + - degradation_updates + example: degradation_updates + type: string + x-enum-varnames: + - DEGRADATION_UPDATES + PatchIncidentNotificationTemplateRequest: + description: Update request for a notification template. + properties: + data: + $ref: "#/components/schemas/IncidentNotificationTemplateUpdateData" + required: + - data + type: object + PatchMaintenanceRequest: + description: Request object for updating a maintenance. + example: + data: + attributes: + completed_date: "2026-02-18T20:01:13.332360075Z" + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + start_date: "2026-02-18T19:21:13.332360075Z" + title: API Maintenance + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: maintenances + properties: + data: + $ref: "#/components/schemas/PatchMaintenanceRequestData" + type: object + PatchMaintenanceRequestData: + description: The data object for updating a maintenance. + properties: + attributes: + $ref: "#/components/schemas/PatchMaintenanceRequestDataAttributes" + id: + description: The ID of the maintenance. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + relationships: + $ref: "#/components/schemas/PatchMaintenanceRequestDataRelationships" + type: + $ref: "#/components/schemas/PatchMaintenanceRequestDataType" + required: + - attributes + - type + - id + type: object + PatchMaintenanceRequestDataAttributes: + description: The supported attributes for updating a maintenance. + properties: + canceled_description: + description: The description shown when the maintenance is canceled. + type: string + completed_date: + description: Timestamp of when the maintenance was completed. + format: date-time + type: string + completed_description: + description: The description shown when the maintenance is completed. + type: string + components_affected: + description: The components affected by the maintenance. + items: + $ref: "#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItems" + type: array + in_progress_description: + description: The description shown while the maintenance is in progress. + type: string + scheduled_description: + description: The description shown when the maintenance is scheduled. + type: string + start_date: + description: Timestamp of when the maintenance is scheduled to start. + format: date-time + type: string + status: + $ref: "#/components/schemas/MaintenanceDataAttributesStatus" + description: The status of the maintenance. + title: + description: The title of the maintenance. + type: string + type: object + PatchMaintenanceRequestDataAttributesComponentsAffectedItems: + description: A component affected by a maintenance. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: "#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus" + required: + - id + - status + type: object + PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus: + description: The status of the component. + enum: + - operational + - maintenance + example: operational + type: string + x-enum-varnames: + - OPERATIONAL + - MAINTENANCE + PatchMaintenanceRequestDataRelationships: + description: The supported relationships for updating a maintenance. + properties: + template: + $ref: "#/components/schemas/PatchMaintenanceRequestDataRelationshipsTemplate" + description: The template used to create the maintenance. + type: object + PatchMaintenanceRequestDataRelationshipsTemplate: + description: The template used to create the maintenance. + properties: + data: + $ref: "#/components/schemas/PatchMaintenanceRequestDataRelationshipsTemplateData" + required: + - data + type: object + PatchMaintenanceRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the maintenance. + properties: + id: + description: The ID of the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + - id + type: object + PatchMaintenanceRequestDataType: + default: maintenances + description: Maintenances resource type. + enum: + - maintenances + example: maintenances + type: string + x-enum-varnames: + - MAINTENANCES + PatchMaintenanceTemplateRequest: + description: Request object for updating a maintenance template. + properties: + data: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestData" + type: object + PatchMaintenanceTemplateRequestData: + description: The data object for updating a maintenance template. + properties: + attributes: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataAttributes" + id: + description: The ID of the maintenance template. + example: "" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequestDataType" + required: + - type + - id + type: object + PatchMaintenanceTemplateRequestDataAttributes: + description: The supported attributes for updating a maintenance template. + properties: + completed_description: + description: The description shown when a maintenance created from this template is completed. + type: string + component_ids: + description: The IDs of the components affected by a maintenance created from this template. + items: + type: string + type: array + in_progress_description: + description: The description shown while a maintenance created from this template is in progress. + type: string + maintenance_title: + description: The title used for a maintenance created from this template. + type: string + name: + description: The name of the maintenance template. + type: string + scheduled_description: + description: The description shown when a maintenance created from this template is scheduled. + type: string + type: object + PatchMaintenanceTemplateRequestDataType: + default: maintenance_templates + description: Maintenance templates resource type. + enum: + - maintenance_templates + example: maintenance_templates + type: string + x-enum-varnames: + - MAINTENANCE_TEMPLATES + PatchMaintenanceUpdateRequest: + description: Request object for editing a maintenance update. + example: + data: + attributes: + description: We have completed maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + properties: + data: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestData" + type: object + PatchMaintenanceUpdateRequestData: + description: The data object for editing a maintenance update. + properties: + attributes: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestDataAttributes" + id: + description: The ID of the maintenance update to edit. Must match the `update_id` path parameter. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + type: string + type: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequestDataType" + required: + - id + - type + type: object + PatchMaintenanceUpdateRequestDataAttributes: + description: Attributes for editing a maintenance update. + properties: + description: + description: The message body of the update. + example: "" + type: string + type: object + PatchMaintenanceUpdateRequestDataType: + default: maintenance_updates + description: Maintenance updates resource type. + enum: + - maintenance_updates + example: maintenance_updates + type: string + x-enum-varnames: + - MAINTENANCE_UPDATES + PatchNotificationRuleParameters: + description: Body of the notification rule patch request. + properties: + data: + $ref: "#/components/schemas/PatchNotificationRuleParametersData" + type: object + PatchNotificationRuleParametersData: + description: |- + Data of the notification rule patch request: the rule ID, the rule type, and the rule attributes. All fields are required. + properties: + attributes: + $ref: "#/components/schemas/PatchNotificationRuleParametersDataAttributes" + id: + $ref: "#/components/schemas/ID" + type: + $ref: "#/components/schemas/NotificationRulesType" + required: + - attributes + - id + - type + type: object + PatchNotificationRuleParametersDataAttributes: + description: |- + Attributes of the notification rule patch request. It is required to update the version of the rule when patching it. + properties: + enabled: + $ref: "#/components/schemas/Enabled" + name: + $ref: "#/components/schemas/RuleName" + routing: + $ref: "#/components/schemas/NotificationRuleRouting" + selectors: + $ref: "#/components/schemas/Selectors" + targets: + $ref: "#/components/schemas/Targets" + time_aggregation: + $ref: "#/components/schemas/TimeAggregation" + version: + $ref: "#/components/schemas/Version" + type: object + PatchStatusPageRequest: + description: Request object for updating a status page. + example: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + domain_prefix: status-page-us1-east + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 East + subscriptions_enabled: false + type: internal + visualization_type: bars_only + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: status_pages + properties: + data: + $ref: "#/components/schemas/PatchStatusPageRequestData" + type: object + PatchStatusPageRequestData: + description: The data object for updating a status page. + properties: + attributes: + $ref: "#/components/schemas/PatchStatusPageRequestDataAttributes" + id: + description: The ID of the status page. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - attributes + - id + - type + type: object + PatchStatusPageRequestDataAttributes: + description: The supported attributes for updating a status page. + properties: + company_logo: + description: The base64-encoded image data displayed on the status page. + example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + type: string + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + example: status-page-us1 + type: string + email_header_image: + description: The base64-encoded image data displayed in email notifications sent to status page subscribers. + example: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + type: string + favicon: + description: The base64-encoded image data displayed in the browser tab. + example: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + type: string + name: + description: The name of the status page. + example: Status Page US1 + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + example: true + type: boolean + type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesType" + example: public + visualization_type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType" + example: bars_and_uptime_percentage + type: object + PatchTableRequest: + description: Request body for updating an existing reference table. + example: + data: + attributes: + description: this is a cloud table generated via a cloud bucket sync + file_metadata: + access_details: + aws_detail: + aws_account_id: test-account-id + aws_bucket_name: test-bucket + file_path: test_rt.csv + sync_enabled: true + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + tags: + - test_tag + type: reference_table + properties: + data: + $ref: "#/components/schemas/PatchTableRequestData" + type: object + PatchTableRequestData: + additionalProperties: false + description: The data object containing the partial table definition updates. + properties: + attributes: + $ref: "#/components/schemas/PatchTableRequestDataAttributes" + type: + $ref: "#/components/schemas/PatchTableRequestDataType" + required: + - type + type: object + PatchTableRequestDataAttributes: + description: Attributes that define the updates to the reference table's configuration and properties. + properties: + description: + description: Optional text describing the purpose or contents of this reference table. + example: "example description" + type: string + file_metadata: + $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadata" + schema: + $ref: "#/components/schemas/PatchTableRequestDataAttributesSchema" + tags: + description: Tags for organizing and filtering reference tables. + example: + - "tag_1" + - "tag_2" + items: + description: A tag associated with the reference table. + type: string + type: array + type: object + PatchTableRequestDataAttributesFileMetadata: + description: Metadata specifying where and how to access the reference table's data file. + oneOf: + - $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadataCloudStorage" + - $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadataLocalFile" + PatchTableRequestDataAttributesFileMetadataCloudStorage: + additionalProperties: false + description: Cloud storage file metadata for patch requests. Allows partial updates of access_details and sync_enabled. + properties: + access_details: + $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetails" + sync_enabled: + description: Whether this table is synced automatically. + example: false + type: boolean + title: CloudFileMetadataV2 + type: object + PatchTableRequestDataAttributesFileMetadataLocalFile: + additionalProperties: false + description: Local file metadata for patch requests using upload ID. + properties: + upload_id: + description: The upload ID. + example: "00000000-0000-0000-0000-000000000000" + type: string + required: + - upload_id + title: LocalFileMetadataV2 + type: object + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetails: + description: Cloud storage access configuration for the reference table data file. + properties: + aws_detail: + $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail" + azure_detail: + $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail" + gcp_detail: + $ref: "#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail" + type: object + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail: + description: Amazon Web Services S3 storage access configuration. + properties: + aws_account_id: + description: AWS account ID where the S3 bucket is located. + example: "123456789000" + type: string + aws_bucket_name: + description: S3 bucket containing the CSV file. + example: "example-data-bucket" + type: string + file_path: + description: The relative file path from the S3 bucket root to the CSV file. + example: "reference-tables/users.csv" + type: string + type: object + x-oneOf-parent: + - AwsDetail + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail: + description: Azure Blob Storage access configuration. + properties: + azure_client_id: + description: Azure service principal (application) client ID with permissions to read from the container. + example: "aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb" + type: string + azure_container_name: + description: Azure Blob Storage container containing the CSV file. + example: "reference-data" + type: string + azure_storage_account_name: + description: Azure storage account where the container is located. + example: "examplestorageaccount" + type: string + azure_tenant_id: + description: Azure Active Directory tenant ID. + example: "cccccccc-4444-5555-6666-dddddddddddd" + type: string + file_path: + description: The relative file path from the Azure container root to the CSV file. + example: "tables/users.csv" + type: string + type: object + x-oneOf-parent: + - AzureDetail + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail: + description: Google Cloud Platform storage access configuration. + properties: + file_path: + description: The relative file path from the GCS bucket root to the CSV file. + example: "data/reference_tables/users.csv" + type: string + gcp_bucket_name: + description: GCP bucket containing the CSV file. + example: "example-data-bucket" + type: string + gcp_project_id: + description: GCP project ID where the bucket is located. + example: "example-gcp-project-12345" + type: string + gcp_service_account_email: + description: Service account email with read permissions for the GCS bucket. + example: "example-service@example-gcp-project-12345.iam.gserviceaccount.com" + type: string + type: object + x-oneOf-parent: + - GcpDetail + PatchTableRequestDataAttributesSchema: + description: Schema defining the updates to the structure and columns of the reference table. Schema fields cannot be deleted or renamed. + properties: + fields: + description: The schema fields. Maximum of 200 columns. + items: + $ref: "#/components/schemas/PatchTableRequestDataAttributesSchemaFieldsItems" + maxItems: 200 + minItems: 1 + type: array + primary_keys: + description: List of field names that serve as primary keys for the table. Only one primary key is supported, and it is used as an ID to retrieve rows. Primary keys cannot be changed after table creation. + example: + - "field_1" + items: + description: A field name used as a primary key. + type: string + type: array + required: + - fields + - primary_keys + type: object + PatchTableRequestDataAttributesSchemaFieldsItems: + description: A single field (column) in the reference table schema to be updated. Schema fields cannot be deleted or renamed. + properties: + name: + description: The field name. + example: "field_1" + type: string + type: + $ref: "#/components/schemas/ReferenceTableSchemaFieldType" + required: + - name + - type + type: object + PatchTableRequestDataType: + default: reference_table + description: Reference table resource type. + enum: + - reference_table + example: reference_table + type: string + x-enum-varnames: + - REFERENCE_TABLE + Permission: + description: Permission object. + properties: + attributes: + $ref: "#/components/schemas/PermissionAttributes" + id: + description: ID of the permission. + type: string + type: + $ref: "#/components/schemas/PermissionsType" + required: + - type + type: object + PermissionAttributes: + description: Attributes of a permission. + properties: + created: + description: Creation time of the permission. + format: date-time + type: string + description: + description: Description of the permission. + type: string + display_name: + description: Displayed name for the permission. + type: string + display_type: + description: Display type. + type: string + group_name: + description: Name of the permission group. + type: string + name: + description: Name of the permission. + type: string + name_aliases: + description: List of alias names for the permission. + items: + description: An alternative name for the permission. + type: string + type: array + restricted: + description: Whether or not the permission is restricted. + type: boolean + type: object + PermissionsResponse: + description: Payload with API-returned permissions. + properties: + data: + description: Array of permissions. + items: + $ref: "#/components/schemas/Permission" + type: array + type: object + PermissionsType: + default: permissions + description: Permissions resource type. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + PersonalAccessToken: + description: Datadog access token. + properties: + attributes: + $ref: "#/components/schemas/PersonalAccessTokenAttributes" + id: + description: ID of the access token. + type: string + relationships: + $ref: "#/components/schemas/PersonalAccessTokenRelationships" + type: + $ref: "#/components/schemas/PersonalAccessTokensType" + type: object + PersonalAccessTokenAttributes: + description: Attributes of an access token. + properties: + created_at: + description: Creation date of the access token. + example: "2024-01-01T00:00:00+00:00" + format: date-time + readOnly: true + type: string + expires_at: + description: Expiration date of the access token. + example: "2025-12-31T23:59:59+00:00" + format: date-time + nullable: true + readOnly: true + type: string + last_used_at: + description: Date the access token was last used. + example: "2025-06-15T12:30:00+00:00" + format: date-time + nullable: true + readOnly: true + type: string + modified_at: + description: Date of last modification of the access token. + example: "2024-06-01T00:00:00+00:00" + format: date-time + nullable: true + readOnly: true + type: string + name: + description: Name of the access token. + example: "My Access Token" + type: string + public_portion: + description: The public portion of the access token. + example: "ddpat_abc123" + readOnly: true + type: string + scopes: + description: Array of scopes granted to the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + type: object + PersonalAccessTokenCreateAttributes: + description: Attributes used to create an access token. + properties: + expires_at: + description: Expiration date of the access token. Must be at least 24 hours in the future. + example: "2025-12-31T23:59:59+00:00" + format: date-time + type: string + name: + description: Name of the access token. + example: "My Personal Access Token" + type: string + scopes: + description: Array of scopes to grant the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + required: + - name + - scopes + - expires_at + type: object + PersonalAccessTokenCreateData: + description: Object used to create an access token. + properties: + attributes: + $ref: "#/components/schemas/PersonalAccessTokenCreateAttributes" + type: + $ref: "#/components/schemas/PersonalAccessTokensType" + required: + - attributes + - type + type: object + PersonalAccessTokenCreateRequest: + description: Request used to create an access token. + properties: + data: + $ref: "#/components/schemas/PersonalAccessTokenCreateData" + required: + - data + type: object + PersonalAccessTokenCreateResponse: + description: Response for creating an access token. Includes the token key. + properties: + data: + $ref: "#/components/schemas/FullPersonalAccessToken" + type: object + PersonalAccessTokenRelationships: + description: Resources related to the access token. + properties: + owned_by: + $ref: "#/components/schemas/RelationshipToUser" + type: object + PersonalAccessTokenResponse: + description: Response for retrieving an access token. + properties: + data: + $ref: "#/components/schemas/PersonalAccessToken" + type: object + PersonalAccessTokenResponseMeta: + description: Additional information related to the access token response. + properties: + page: + $ref: "#/components/schemas/PersonalAccessTokenResponseMetaPage" + type: object + PersonalAccessTokenResponseMetaPage: + description: Pagination information. + properties: + total_filtered_count: + description: Total filtered access token count. + format: int64 + type: integer + type: object + PersonalAccessTokenUpdateAttributes: + description: Attributes used to update an access token. + properties: + name: + description: Name of the access token. + example: "Updated Personal Access Token" + type: string + scopes: + description: Array of scopes to grant the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + type: object + PersonalAccessTokenUpdateData: + description: Object used to update an access token. + properties: + attributes: + $ref: "#/components/schemas/PersonalAccessTokenUpdateAttributes" + id: + description: ID of the access token. + example: "00112233-4455-6677-8899-aabbccddeeff" + type: string + type: + $ref: "#/components/schemas/PersonalAccessTokensType" + required: + - attributes + - id + - type + type: object + PersonalAccessTokenUpdateRequest: + description: Request used to update an access token. + properties: + data: + $ref: "#/components/schemas/PersonalAccessTokenUpdateData" + required: + - data + type: object + PersonalAccessTokensSort: + default: name + description: Sorting options + enum: + - name + - -name + - created_at + - -created_at + - expires_at + - -expires_at + - last_used_at + - -last_used_at + type: string + x-enum-varnames: + - NAME_ASCENDING + - NAME_DESCENDING + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - EXPIRES_AT_ASCENDING + - EXPIRES_AT_DESCENDING + - LAST_USED_AT_ASCENDING + - LAST_USED_AT_DESCENDING + PersonalAccessTokensType: + default: personal_access_tokens + description: Personal access tokens resource type. + enum: + - personal_access_tokens + example: personal_access_tokens + type: string + x-enum-varnames: + - PERSONAL_ACCESS_TOKENS + Playlist: + description: A single RUM replay playlist resource returned by create, update, or get operations. + properties: + data: + $ref: "#/components/schemas/PlaylistData" + required: + - data + type: object + PlaylistArray: + description: A list of RUM replay playlists returned by a list operation. + properties: + data: + description: Array of playlist data objects. + items: + $ref: "#/components/schemas/PlaylistData" + type: array + required: + - data + type: object + PlaylistData: + description: Data object representing a RUM replay playlist, including its identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/PlaylistDataAttributes" + id: + description: Unique identifier of the playlist. + type: string + type: + $ref: "#/components/schemas/PlaylistDataType" + required: + - type + type: object + PlaylistDataAttributes: + description: Attributes of a RUM replay playlist, including its name, description, session count, and audit timestamps. + properties: + created_at: + description: Timestamp when the playlist was created. + format: date-time + type: string + created_by: + $ref: "#/components/schemas/PlaylistDataAttributesCreatedBy" + description: + description: Optional human-readable description of the playlist's purpose or contents. + type: string + name: + description: Human-readable name of the playlist. + example: My Playlist + type: string + session_count: + description: Number of replay sessions in the playlist. + format: int64 + type: integer + updated_at: + description: Timestamp when the playlist was last updated. + format: date-time + type: string + required: + - name + type: object + PlaylistDataAttributesCreatedBy: + description: Information about the user who created the playlist. + properties: + handle: + description: Email handle of the user who created the playlist. + example: john.doe@example.com + type: string + icon: + description: URL or identifier of the user's avatar icon. + type: string + id: + description: Unique identifier of the user who created the playlist. + example: 00000000-0000-0000-0000-000000000001 + type: string + name: + description: Display name of the user who created the playlist. + type: string + uuid: + description: UUID of the user who created the playlist. + example: 00000000-0000-0000-0000-000000000001 + type: string + required: + - handle + - id + - uuid + type: object + PlaylistDataType: + default: rum_replay_playlist + description: Rum replay playlist resource type. + enum: + - rum_replay_playlist + example: rum_replay_playlist + type: string + x-enum-varnames: + - RUM_REPLAY_PLAYLIST + PlaylistsSession: + description: A single RUM replay session resource as it appears within a playlist context. + properties: + data: + $ref: "#/components/schemas/PlaylistsSessionData" + required: + - data + type: object + PlaylistsSessionArray: + description: A list of RUM replay sessions belonging to a playlist. + properties: + data: + description: Array of playlist session data objects. + items: + $ref: "#/components/schemas/PlaylistsSessionData" + type: array + required: + - data + type: object + PlaylistsSessionData: + description: Data object representing a session within a playlist, including its identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/PlaylistsSessionDataAttributes" + id: + description: Unique identifier of the RUM replay session. + type: string + type: + $ref: "#/components/schemas/ViewershipHistorySessionDataType" + required: + - type + type: object + PlaylistsSessionDataAttributes: + description: Attributes of a session within a playlist, including the session event data and its replay track. + properties: + session_event: + additionalProperties: {} + description: Raw event data associated with the replay session. + type: object + track: + description: Replay track identifier indicating which recording track the session belongs to. + type: string + type: object + PostmortemAttachmentRequest: + description: Request body for creating a postmortem attachment. + properties: + data: + $ref: "#/components/schemas/PostmortemAttachmentRequestData" + required: + - data + type: object + PostmortemAttachmentRequestAttributes: + description: Postmortem attachment attributes + properties: + cells: + description: The cells of the postmortem + items: + $ref: "#/components/schemas/PostmortemCell" + type: array + content: + description: The content of the postmortem + example: |- + # Incident Report - IR-123 + [...] + type: string + postmortem_template_id: + description: The ID of the postmortem template + example: "93645509-874e-45c4-adfa-623bfeaead89-123" + type: string + title: + description: The title of the postmortem + example: Postmortem-IR-123 + type: string + type: object + PostmortemAttachmentRequestData: + description: Postmortem attachment data + properties: + attributes: + $ref: "#/components/schemas/PostmortemAttachmentRequestAttributes" + type: + $ref: "#/components/schemas/IncidentAttachmentType" + required: + - type + - attributes + type: object + PostmortemCell: + description: A cell in the postmortem + properties: + attributes: + $ref: "#/components/schemas/PostmortemCellAttributes" + id: + description: The unique identifier of the cell + example: "cell-1" + type: string + type: + $ref: "#/components/schemas/PostmortemCellType" + type: object + PostmortemCellAttributes: + description: Attributes of a postmortem cell + properties: + definition: + $ref: "#/components/schemas/PostmortemCellDefinition" + type: object + PostmortemCellDefinition: + description: Definition of a postmortem cell + properties: + content: + description: The content of the cell in markdown format + example: |- + ## Incident Summary + This incident was caused by... + type: string + type: object + PostmortemCellType: + description: The postmortem cell resource type. + enum: + - markdown + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + PostmortemTemplateAttributesRequest: + description: Attributes for creating or updating a postmortem template. + properties: + confluence_postmortem_settings: + $ref: "#/components/schemas/ConfluencePostmortemSettings" + content: + description: The templated content of the postmortem, supporting Markdown and incident template variables. + example: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + type: string + google_docs_postmortem_settings: + $ref: "#/components/schemas/GoogleDocsPostmortemSettings" + is_default: + description: When set, marks this template as a default. The effective default for an incident type is the template with the most recent `is_default` timestamp. Set to `null` to unset. + example: "2024-01-01T00:00:00+00:00" + format: date-time + nullable: true + type: string + location: + $ref: "#/components/schemas/PostmortemTemplateLocation" + name: + description: The name of the template. + example: "Standard Postmortem Template" + type: string + required: + - name + type: object + PostmortemTemplateAttributesResponse: + description: Attributes of a postmortem template returned in a response. + properties: + confluence_postmortem_settings: + $ref: "#/components/schemas/ConfluencePostmortemSettings" + content: + description: The templated content of the postmortem, supporting Markdown and incident template variables. + example: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + type: string + createdAt: + description: When the template was created. + example: "2026-01-13T17:15:53.208340Z" + format: date-time + type: string + google_docs_postmortem_settings: + $ref: "#/components/schemas/GoogleDocsPostmortemSettings" + is_default: + description: When set, marks this template as a default. The effective default for an incident type is the template with the most recent `is_default` timestamp. + example: "2024-01-01T00:00:00+00:00" + format: date-time + nullable: true + type: string + location: + $ref: "#/components/schemas/PostmortemTemplateLocation" + modifiedAt: + description: When the template was last modified. + example: "2026-01-13T17:15:53.208340Z" + format: date-time + type: string + name: + description: The name of the template. + example: "Standard Postmortem Template" + type: string + required: + - name + - content + - is_default + - location + - createdAt + - modifiedAt + type: object + PostmortemTemplateCreateRelationships: + description: Relationships for a postmortem template. `incident_type` is required when creating a template and is immutable afterwards. + properties: + incident_type: + $ref: "#/components/schemas/PostmortemTemplateIncidentTypeRelationship" + type: object + PostmortemTemplateDataRequest: + description: Data object for creating or updating a postmortem template. + properties: + attributes: + $ref: "#/components/schemas/PostmortemTemplateAttributesRequest" + id: + description: The ID of the template. Required when updating. + example: 00000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: "#/components/schemas/PostmortemTemplateCreateRelationships" + type: + $ref: "#/components/schemas/PostmortemTemplateType" + required: + - type + - attributes + type: object + PostmortemTemplateDataResponse: + description: Data object for a postmortem template returned in a response. + properties: + attributes: + $ref: "#/components/schemas/PostmortemTemplateAttributesResponse" + id: + description: The ID of the template. + example: 00000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: "#/components/schemas/PostmortemTemplateResponseRelationships" + type: + $ref: "#/components/schemas/PostmortemTemplateType" + required: + - id + - type + - attributes + type: object + PostmortemTemplateIncidentTypeRelationship: + description: Relationship to the incident type this template belongs to. + properties: + data: + $ref: "#/components/schemas/PostmortemTemplateIncidentTypeRelationshipData" + required: + - data + type: object + PostmortemTemplateIncidentTypeRelationshipData: + description: Incident type relationship data. + properties: + id: + description: The incident type identifier. + example: 00000000-0000-0000-0000-000000000009 + format: uuid + type: string + type: + description: The incident type resource type. + example: incident_types + type: string + required: + - id + - type + type: object + PostmortemTemplateLocation: + default: datadog_notebooks + description: The location where the postmortem is created and stored. + enum: + - datadog_notebooks + - confluence + - google_docs + example: datadog_notebooks + type: string + x-enum-varnames: + - DATADOG_NOTEBOOKS + - CONFLUENCE + - GOOGLE_DOCS + PostmortemTemplateRequest: + description: Request body for creating or updating a postmortem template. + properties: + data: + $ref: "#/components/schemas/PostmortemTemplateDataRequest" + required: + - data + type: object + PostmortemTemplateResponse: + description: Response containing a single postmortem template. + properties: + data: + $ref: "#/components/schemas/PostmortemTemplateDataResponse" + required: + - data + type: object + PostmortemTemplateResponseRelationships: + description: Relationships of a postmortem template returned in a response. + properties: + incident_type: + $ref: "#/components/schemas/PostmortemTemplateIncidentTypeRelationship" + last_modified_by_user: + $ref: "#/components/schemas/PostmortemTemplateUserRelationship" + type: object + PostmortemTemplateType: + description: Postmortem template resource type. + enum: + - postmortem_templates + - postmortem_template + example: postmortem_templates + type: string + x-enum-varnames: + - POSTMORTEM_TEMPLATES + - POSTMORTEM_TEMPLATE + PostmortemTemplateUserRelationship: + description: Relationship to a user. + properties: + data: + $ref: "#/components/schemas/PostmortemTemplateUserRelationshipData" + required: + - data + type: object + PostmortemTemplateUserRelationshipData: + description: User relationship data. + properties: + id: + description: The user identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + description: The user resource type. + example: users + type: string + required: + - id + - type + type: object + PostmortemTemplatesResponse: + description: Response containing a list of postmortem templates. + properties: + data: + description: An array of postmortem template data objects. + items: + $ref: "#/components/schemas/PostmortemTemplateDataResponse" + type: array + required: + - data + type: object + Powerpack: + description: |- + Powerpacks are templated groups of dashboard widgets you can save from an existing dashboard and turn into reusable packs in the widget tray. + properties: + data: + $ref: "#/components/schemas/PowerpackData" + type: object + PowerpackAttributes: + description: Powerpack attribute object. + properties: + description: + description: Description of this powerpack. + example: "Powerpack for ABC" + type: string + group_widget: + $ref: "#/components/schemas/PowerpackGroupWidget" + name: + description: Name of the powerpack. + example: "Sample Powerpack" + type: string + tags: + description: List of tags to identify this powerpack. + example: ["tag:foo1"] + items: + description: A tag to identify this powerpack. + maxLength: 80 + type: string + maxItems: 8 + type: array + template_variables: + description: List of template variables for this powerpack. + example: [{"defaults": ["*"], "name": "test"}] + items: + $ref: "#/components/schemas/PowerpackTemplateVariable" + type: array + required: + - group_widget + - name + type: object + PowerpackData: + description: Powerpack data object. + properties: + attributes: + $ref: "#/components/schemas/PowerpackAttributes" + id: + description: ID of the powerpack. + type: string + relationships: + $ref: "#/components/schemas/PowerpackRelationships" + type: + description: Type of widget, must be powerpack. + example: "powerpack" + type: string + type: object + PowerpackGroupWidget: + description: Powerpack group widget definition object. + properties: + definition: + $ref: "#/components/schemas/PowerpackGroupWidgetDefinition" + layout: + $ref: "#/components/schemas/PowerpackGroupWidgetLayout" + live_span: + $ref: "#/components/schemas/WidgetLiveSpan" + required: + - definition + type: object + PowerpackGroupWidgetDefinition: + description: Powerpack group widget object. + properties: + layout_type: + description: Layout type of widgets. + example: ordered + type: string + show_title: + description: Boolean indicating whether powerpack group title should be visible or not. + example: true + type: boolean + title: + description: Name for the group widget. + example: Sample Powerpack + type: string + type: + description: Type of widget, must be group. + example: group + type: string + widgets: + description: Widgets inside the powerpack. + example: [{"definition": {"content": "example", "type": "note"}, "layout": {"height": 5, "width": 10, "x": 0, "y": 0}}] + items: + $ref: "#/components/schemas/PowerpackInnerWidgets" + type: array + required: + - widgets + - layout_type + - type + type: object + PowerpackGroupWidgetLayout: + description: Powerpack group widget layout. + properties: + height: + description: The height of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + width: + description: The width of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + x: + description: The position of the widget on the x (horizontal) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + y: + description: The position of the widget on the y (vertical) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - x + - y + - width + - height + type: object + PowerpackInnerWidgetLayout: + description: Powerpack inner widget layout. + properties: + height: + description: The height of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + width: + description: The width of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + x: + description: The position of the widget on the x (horizontal) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + y: + description: The position of the widget on the y (vertical) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - x + - y + - width + - height + type: object + PowerpackInnerWidgets: + description: Powerpack group widget definition of individual widgets. + properties: + definition: + additionalProperties: {} + description: Information about widget. + example: {"definition": {"content": "example", "type": "note"}} + type: object + layout: + $ref: "#/components/schemas/PowerpackInnerWidgetLayout" + required: + - definition + type: object + PowerpackRelationships: + description: Powerpack relationship object. + properties: + author: + $ref: "#/components/schemas/RelationshipToUser" + type: object + PowerpackResponse: + description: Response object which includes a single powerpack configuration. + properties: + data: + $ref: "#/components/schemas/PowerpackData" + included: + description: Array of objects related to the users. + items: + $ref: "#/components/schemas/User" + type: array + readOnly: true + type: object + PowerpackResponseLinks: + description: Links attributes. + properties: + first: + description: Link to last page. + type: string + last: + description: Link to first page. + example: "https://app.datadoghq.com/api/v2/powerpacks?page[offset]=0&page[limit]=25" + nullable: true + type: string + next: + description: Link for the next set of results. + example: "https://app.datadoghq.com/api/v2/powerpacks?page[offset]=25&page[limit]=25" + type: string + prev: + description: Link for the previous set of results. + nullable: true + type: string + self: + description: Link to current page. + example: "https://app.datadoghq.com/api/v2/powerpacks" + type: string + type: object + PowerpackTemplateVariable: + description: Powerpack template variables. + properties: + available_values: + description: The list of values that the template variable drop-down is limited to. + example: ["my-host", "host1", "host2"] + items: + description: Template variable value. + type: string + nullable: true + type: array + defaults: + description: One or many template variable default values within the saved view, which are unioned together using `OR` if more than one is specified. + items: + description: One or many default values of the template variable. + minLength: 1 + type: string + type: array + name: + description: The name of the variable. + example: datacenter + type: string + prefix: + description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down. + example: host + nullable: true + type: string + required: + - name + type: object + PowerpacksResponseMeta: + description: Powerpack response metadata. + properties: + pagination: + $ref: "#/components/schemas/PowerpacksResponseMetaPagination" + type: object + PowerpacksResponseMetaPagination: + description: Powerpack response pagination metadata. + properties: + first_offset: + description: The first offset. + format: int64 + type: integer + last_offset: + description: The last offset. + format: int64 + nullable: true + type: integer + limit: + description: Pagination limit. + format: int64 + type: integer + next_offset: + description: The next offset. + format: int64 + type: integer + offset: + description: The offset. + format: int64 + type: integer + prev_offset: + description: The previous offset. + format: int64 + type: integer + total: + description: Total results. + format: int64 + type: integer + type: + description: Offset type. + type: string + type: object + PreviewEntityResponseData: + description: Entity data returned in a preview response, including attributes, relationships, and type. + properties: + attributes: + $ref: "#/components/schemas/EntityResponseDataAttributes" + id: + description: Entity unique identifier. + type: string + relationships: + $ref: "#/components/schemas/EntityResponseDataRelationships" + type: + $ref: "#/components/schemas/EntityResponseDataType" + required: + - type + type: object + PrintReportRequest: + description: Request body for initiating a print-only report. + properties: + data: + $ref: "#/components/schemas/PrintReportRequestData" + required: + - data + type: object + PrintReportRequestAttributes: + description: |- + The configuration for a print-only report. Specify exactly one of `timeframe` (for a + relative time window) or both `from_ts` and `to_ts` (for an absolute time range). + properties: + from_ts: + description: |- + The start of an absolute time range, as a Unix timestamp in milliseconds. + Required when `timeframe` is omitted. + example: 1780318800000 + format: int64 + type: integer + resource_id: + description: The identifier of the dashboard or integration dashboard to render. + example: "abc-def-ghi" + type: string + resource_type: + $ref: "#/components/schemas/ReportScheduleResourceType" + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: "#/components/schemas/ReportScheduleTemplateVariable" + type: array + timeframe: + description: |- + A relative time window (for example `1w` or `calendar_month`). Mutually + exclusive with `from_ts` and `to_ts`. + example: "1w" + type: string + timezone: + description: The IANA time zone identifier used to evaluate the time window. + example: "America/New_York" + type: string + to_ts: + description: |- + The end of an absolute time range, as a Unix timestamp in milliseconds. + Required when `timeframe` is omitted. + example: 1780923600000 + format: int64 + type: integer + required: + - resource_id + - resource_type + - timezone + - template_variables + type: object + PrintReportRequestData: + description: The JSON:API data object for a print report request. + properties: + attributes: + $ref: "#/components/schemas/PrintReportRequestAttributes" + type: + $ref: "#/components/schemas/PrintReportType" + required: + - type + - attributes + type: object + PrintReportResponse: + description: Response containing the initiated print-only report. + properties: + data: + $ref: "#/components/schemas/PrintReportResponseData" + required: + - data + type: object + PrintReportResponseAttributes: + description: The configuration and download URL for the initiated print-only report. + properties: + download_url: + description: The URL from which the rendered PDF report can be downloaded. + example: "https://app.datadoghq.com/..." + type: string + from_ts: + description: The start of the rendered time range, as a Unix timestamp in milliseconds. + example: 1780318800000 + format: int64 + type: integer + resource_id: + description: The identifier of the dashboard or integration dashboard. + example: "abc-def-ghi" + type: string + resource_type: + $ref: "#/components/schemas/ReportScheduleResourceType" + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: "#/components/schemas/ReportScheduleTemplateVariable" + type: array + timeframe: + description: The relative time window used, if one was specified in the request. + example: "1w" + type: string + timezone: + description: The IANA time zone identifier used when rendering the report. + example: "America/New_York" + type: string + to_ts: + description: The end of the rendered time range, as a Unix timestamp in milliseconds. + example: 1780923600000 + format: int64 + type: integer + required: + - resource_id + - resource_type + - timezone + - template_variables + - from_ts + - to_ts + - download_url + type: object + PrintReportResponseData: + description: The JSON:API data object for a print-only report. + properties: + attributes: + $ref: "#/components/schemas/PrintReportResponseAttributes" + id: + description: The unique identifier of the report. + example: "11111111-2222-3333-4444-555555555555" + format: uuid + type: string + type: + $ref: "#/components/schemas/PrintReportType" + required: + - id + - type + - attributes + type: object + PrintReportType: + description: JSON:API resource type for a print-only report. + enum: + - report + example: report + type: string + x-enum-varnames: + - REPORT + ProcessDataSource: + default: process + description: A data source for process-level infrastructure metrics. + enum: + - process + example: process + type: string + x-enum-varnames: + - PROCESS + ProcessScalarQuery: + description: A query for host-level process metrics such as CPU and memory usage. + properties: + aggregator: + $ref: "#/components/schemas/MetricsAggregator" + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ProcessDataSource" + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The process metric to query. + example: process.stat.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: "#/components/schemas/QuerySortOrder" + tag_filters: + description: Tag filters to narrow down processes. + items: + description: A tag filter value. + example: "env:prod" + type: string + type: array + text_filter: + description: A full-text search filter to match process names or commands. + type: string + required: + - data_source + - name + - metric + type: object + ProcessSummariesMeta: + description: Response metadata object. + properties: + page: + $ref: "#/components/schemas/ProcessSummariesMetaPage" + type: object + ProcessSummariesMetaPage: + description: Paging attributes. + properties: + after: + description: |- + The cursor used to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: 911abf1204838d9cdfcb9a96d0b6a1bd03e1b514074f1ce1737c4cbd + type: string + size: + description: Number of results returned. + format: int32 + maximum: 10000 + minimum: 0 + type: integer + type: object + ProcessSummariesResponse: + description: List of process summaries. + properties: + data: + description: Array of process summary objects. + items: + $ref: "#/components/schemas/ProcessSummary" + type: array + meta: + $ref: "#/components/schemas/ProcessSummariesMeta" + type: object + ProcessSummary: + description: Process summary object. + properties: + attributes: + $ref: "#/components/schemas/ProcessSummaryAttributes" + id: + description: Process ID. + type: string + type: + $ref: "#/components/schemas/ProcessSummaryType" + type: object + ProcessSummaryAttributes: + description: Attributes for a process summary. + properties: + cmdline: + description: Process command line. + type: string + host: + description: Host running the process. + type: string + pid: + description: Process ID. + format: int64 + type: integer + ppid: + description: Parent process ID. + format: int64 + type: integer + start: + description: Time the process was started. + type: string + tags: + description: List of tags associated with the process. + items: + description: A tag associated with the process. + type: string + type: array + timestamp: + description: Time the process was seen. + type: string + user: + description: Process owner. + type: string + type: object + ProcessSummaryType: + default: process + description: Type of process summary. + enum: + - process + example: process + type: string + x-enum-varnames: + - PROCESS + ProcessTimeseriesQuery: + description: A query for host-level process metrics such as CPU and memory usage. + properties: + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/ProcessDataSource" + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The process metric to query. + example: process.stat.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: "#/components/schemas/QuerySortOrder" + tag_filters: + description: Tag filters to narrow down processes. + items: + description: A tag filter value. + example: "env:prod" + type: string + type: array + text_filter: + description: A full-text search filter to match process names or commands. + type: string + required: + - data_source + - name + - metric + type: object + ProductAnalyticsAnalyticsListQuery: + description: |- + The analytics list query definition. It selects the events to return with `query`, then + chooses the columns on each event row, the sort applied to those rows, and a row limit. + Unlike the scalar and timeseries queries, a list query returns raw event rows rather than + aggregates, so it takes no compute or group-by rule. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + columns: + description: Attribute columns to include in each event row. + items: + description: The name of an attribute to return as a column. + type: string + type: array + limit: + description: Maximum number of event rows to return. + example: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + sort: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListSort" + required: + - query + type: object + ProductAnalyticsAnalyticsListRecord: + additionalProperties: + description: The value of one column of the event row. + description: A single event row, keyed by column name. + type: object + ProductAnalyticsAnalyticsListRequest: + description: Request for listing the individual event records matching an analytics query. + example: + data: + attributes: + from: 1771232048460 + query: + columns: + - "@view.name" + limit: 100 + query: + data_source: product_analytics + search: + query: "@type:view" + to: 1771836848262 + type: formula_analytics_extended_list_request + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListRequestData" + required: + - data + type: object + ProductAnalyticsAnalyticsListRequestAttributes: + description: Attributes for an analytics list request. + properties: + from: + description: Start time in epoch milliseconds. Must be less than `to`. + example: 1771232048460 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListQuery" + to: + description: End time in epoch milliseconds. + example: 1771836848262 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsAnalyticsListRequestData: + description: Data object for an analytics list request. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsAnalyticsListRequestType: + description: The resource type for analytics list requests. + enum: + - formula_analytics_extended_list_request + example: formula_analytics_extended_list_request + type: string + x-enum-varnames: + - FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST + ProductAnalyticsAnalyticsListResponse: + description: Response for an analytics list query, containing individual event records. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListResponseData" + meta: + $ref: "#/components/schemas/ProductAnalyticsResponseMeta" + required: + - data + type: object + ProductAnalyticsAnalyticsListResponseAttributes: + description: Attributes of an analytics list response, containing the matching event rows. + properties: + records: + description: The event rows, each holding the values of the requested columns. + items: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListRecord" + type: array + total_count: + description: Total number of records matching the query, before the row limit is applied. + format: int64 + type: integer + type: object + ProductAnalyticsAnalyticsListResponseData: + description: Data object for an analytics list response. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListResponseAttributes" + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsAnalyticsListResponseType: + description: The resource type identifier for an analytics list response. + enum: + - list_response + example: list_response + type: string + x-enum-varnames: + - LIST_RESPONSE + ProductAnalyticsAnalyticsListSort: + description: The sort applied to the returned event rows. + properties: + facet: + description: Name of the facet to sort the rows by. + type: string + order: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListSortOrder" + type: object + ProductAnalyticsAnalyticsListSortOrder: + description: The direction rows are sorted in. + enum: + - asc + - desc + type: string + x-enum-varnames: + - ASC + - DESC + ProductAnalyticsAnalyticsQuery: + description: The analytics query definition containing a base query, compute rule, and optional grouping. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + compute: + $ref: "#/components/schemas/ProductAnalyticsCompute" + group_by: + description: Group-by rules for segmenting results. + items: + $ref: "#/components/schemas/ProductAnalyticsGroupBy" + type: array + indexes: + deprecated: true + description: |- + Deprecated. Index selection is a rollout detail and will be removed. + Do not set this field. + items: + description: Index name to restrict the query to. + type: string + maxItems: 1 + type: array + query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + required: + - query + - compute + type: object + ProductAnalyticsAnalyticsRequest: + description: Request for computing analytics results (scalar or timeseries). + example: + data: + attributes: + from: 1771232048460 + query: + compute: + aggregation: count + query: + data_source: product_analytics + search: + query: "@type:view" + to: 1771836848262 + type: formula_analytics_extended_request + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsRequestData" + required: + - data + type: object + ProductAnalyticsAnalyticsRequestAttributes: + description: Attributes for an analytics request. + properties: + enforced_execution_type: + $ref: "#/components/schemas/ProductAnalyticsExecutionType" + deprecated: true + description: |- + Deprecated. Selects the internal query execution infrastructure and will be removed. + Do not set this field. + from: + description: Start time in epoch milliseconds. Must be less than `to`. + example: 1771232048460 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsQuery" + request_id: + description: Unique identifier of the query. + type: string + to: + description: End time in epoch milliseconds. + example: 1771836848262 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsAnalyticsRequestData: + description: Data object for an analytics request. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsAnalyticsRequestType: + description: The resource type for analytics requests. + enum: + - formula_analytics_extended_request + example: formula_analytics_extended_request + type: string + x-enum-varnames: + - FORMULA_ANALYTICS_EXTENDED_REQUEST + ProductAnalyticsAudienceAccountSubquery: + description: An account-based audience query. + properties: + name: + description: Name of this query, referenced in the formula. + example: "" + type: string + query: + description: Search query for filtering accounts. + type: string + required: + - name + type: object + ProductAnalyticsAudienceFilters: + description: Audience filter definitions for targeting specific user segments. + properties: + accounts: + description: Account audience queries. + items: + $ref: "#/components/schemas/ProductAnalyticsAudienceAccountSubquery" + type: array + formula: + description: Boolean formula combining audience queries by name. + example: "u" + type: string + segments: + description: Segment audience queries. + items: + $ref: "#/components/schemas/ProductAnalyticsAudienceSegmentSubquery" + type: array + users: + description: User audience queries. + items: + $ref: "#/components/schemas/ProductAnalyticsAudienceUserSubquery" + type: array + type: object + ProductAnalyticsAudienceSegmentSubquery: + description: A segment-based audience query. + properties: + name: + description: Name of this query, referenced in the formula. + example: "" + type: string + segment_id: + description: UUID of the segment to filter by. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + required: + - name + - segment_id + type: object + ProductAnalyticsAudienceUserSubquery: + description: A user-based audience query. + properties: + name: + description: Name of this query, referenced in the formula. + example: u + type: string + query: + description: Search query for filtering users. + example: "*" + type: string + required: + - name + type: object + ProductAnalyticsBaseQuery: + description: |- + A query definition discriminated by the `data_source` field. + Use `product_analytics` for standard event queries, or + `product_analytics_occurrence` for occurrence-filtered queries. + oneOf: + - $ref: "#/components/schemas/ProductAnalyticsEventQuery" + - $ref: "#/components/schemas/ProductAnalyticsOccurrenceQuery" + ProductAnalyticsCalendarInterval: + description: A calendar-aligned bucket definition, such as "every 1 week starting on Monday". + properties: + alignment: + description: |- + Where each bucket starts within the calendar unit. Use an hour for `day` (for example `1am` or `14`), + a day name for `week` (for example `monday`), or an ordinal for `month` (for example `1st`). + example: monday + type: string + quantity: + description: Number of calendar units per bucket. + example: 1 + format: int64 + minimum: 1 + type: integer + timezone: + description: Timezone used to align the buckets. + example: UTC + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsCalendarIntervalType" + required: + - type + type: object + ProductAnalyticsCalendarIntervalType: + description: Calendar unit used to bucket cohorts. + enum: + - minute + - hour + - day + - week + - month + - quarter + - year + example: week + type: string + x-enum-varnames: + - MINUTE + - HOUR + - DAY + - WEEK + - MONTH + - QUARTER + - YEAR + ProductAnalyticsCompute: + description: A compute rule for aggregating data. + properties: + aggregation: + description: The aggregation function (count, cardinality, avg, sum, min, max, etc.). + example: count + type: string + interval: + description: |- + Time bucket size in milliseconds. Required for timeseries queries; ignored by the + scalar endpoint, which returns a single value. + example: 3600000 + format: int64 + type: integer + metric: + description: The metric to aggregate on. Required for non-count aggregations. + example: "@session.time_spent" + type: string + required: + - aggregation + type: object + ProductAnalyticsElapsedTime: + description: Elapsed time statistics (min/max/avg in milliseconds). + properties: + avg: + description: Average elapsed time to reach the next step, in milliseconds. + example: 5100 + format: int64 + type: integer + max: + description: Maximum elapsed time to reach the next step, in milliseconds. + example: 42000 + format: int64 + type: integer + min: + description: Minimum elapsed time to reach the next step, in milliseconds. + example: 900 + format: int64 + type: integer + required: + - min + - max + - avg + type: object + ProductAnalyticsEventQuery: + description: A standard Product Analytics event query. + properties: + data_source: + $ref: "#/components/schemas/ProductAnalyticsEventQueryDataSource" + search: + $ref: "#/components/schemas/ProductAnalyticsEventSearch" + required: + - data_source + - search + type: object + ProductAnalyticsEventQueryDataSource: + description: The data source identifier. + enum: + - product_analytics + example: product_analytics + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS + ProductAnalyticsEventSearch: + description: Search parameters for an event query. + properties: + query: + description: The search query using Datadog search syntax. + example: "@type:view" + type: string + type: object + ProductAnalyticsExecutionType: + description: Override the query execution strategy. + enum: + - simple + - background + - trino-multistep + - materialized-view + type: string + x-enum-varnames: + - SIMPLE + - BACKGROUND + - TRINO_MULTISTEP + - MATERIALIZED_VIEW + ProductAnalyticsFormulaJourneyQuery: + description: Query definition for a journey timeseries request. + properties: + compute: + $ref: "#/components/schemas/ProductAnalyticsGraphQueryCompute" + group_by: + description: Segments the results by the values of one or more facets. + items: + $ref: "#/components/schemas/ProductAnalyticsGraphQueryGroupBy" + type: array + query_id: + description: Caller-defined identifier echoed back in the results. + type: string + search: + $ref: "#/components/schemas/ProductAnalyticsJourneySearch" + required: + - search + - compute + type: object + ProductAnalyticsFormulaJourneyRequest: + description: Request body for a journey timeseries query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsFormulaJourneyRequestData" + required: + - data + type: object + ProductAnalyticsFormulaJourneyRequestAttributes: + description: Attributes of a journey timeseries request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + interval: + description: Time bucket interval in milliseconds. + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsFormulaJourneyQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsFormulaJourneyRequestData: + description: |- + The single JSON:API resource carrying a journey timeseries query. Its attributes hold the time + window, the bucket interval that splits it, and the journey metric to compute per bucket. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsFormulaJourneyRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsFormulaJourneyRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsFormulaJourneyRequestType: + description: The resource type identifier for a journey timeseries or scalar request. + enum: + - formula_journey_request + example: formula_journey_request + type: string + x-enum-varnames: + - FORMULA_JOURNEY_REQUEST + ProductAnalyticsFormulaRetentionQuery: + description: Query definition for a retention scalar or retention timeseries request. + properties: + computation_scope: + $ref: "#/components/schemas/ProductAnalyticsRetentionScope" + compute: + $ref: "#/components/schemas/ProductAnalyticsRetentionCompute" + group_by: + description: Splits the results by the values of one or more facets. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionGroupBy" + type: array + search: + $ref: "#/components/schemas/ProductAnalyticsRetentionSearch" + required: + - search + - compute + type: object + ProductAnalyticsFormulaRetentionRequest: + description: Request body for a retention scalar or retention timeseries query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsFormulaRetentionRequestData" + required: + - data + type: object + ProductAnalyticsFormulaRetentionRequestAttributes: + description: Attributes of a retention scalar or retention timeseries request. + properties: + exclude_anonymous_traffic: + default: false + description: Whether to exclude sessions that are not tied to an identified user. + type: boolean + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsFormulaRetentionQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsFormulaRetentionRequestData: + description: |- + The single JSON:API resource carrying a retention scalar or timeseries query. Its attributes + hold the time window to query and the retention query definition to evaluate. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsFormulaRetentionRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsFormulaRetentionRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsFormulaRetentionRequestType: + description: The resource type identifier for a retention scalar or retention timeseries request. + enum: + - formula_retention_request + example: formula_retention_request + type: string + x-enum-varnames: + - FORMULA_RETENTION_REQUEST + ProductAnalyticsGraphQueryCompute: + description: Defines the metric computed over the journey. + properties: + aggregation: + description: |- + Aggregation function: `count`, `cardinality`, `avg`, `median`, `min`, `max`, `sum`, + or a percentile of the form `pc` such as `pc95`. Defaults to `cardinality`. + example: count + pattern: "^(count|cardinality|avg|median|min|max|sum|pc[0-9]{1,2})$" + type: string + interval: + description: Time bucket interval in milliseconds, used by timeseries queries. + format: int64 + type: integer + metric: + description: |- + Metric to aggregate on. Use a facet path such as `@view.time_spent`, or one of the + journey metrics `__dd.conversion`, `__dd.conversion_rate`, `__dd.time_to_convert`, + or `__dd.dropoff_rate`. Defaults to `__dd.conversion`. + type: string + target: + $ref: "#/components/schemas/ProductAnalyticsJourneyTarget" + required: + - aggregation + type: object + ProductAnalyticsGraphQueryGroupBy: + description: Segments journey results by the values of a facet. + properties: + facet: + description: Attribute path to group by. + example: "@geo.country" + type: string + limit: + description: Maximum number of groups to return. Omit it to let the service choose. + format: int64 + minimum: 1 + type: integer + should_exclude_missing: + default: false + description: Whether to exclude entities that have no value for this facet. + type: boolean + sort: + $ref: "#/components/schemas/ProductAnalyticsGroupBySort" + source: + $ref: "#/components/schemas/ProductAnalyticsGraphQueryGroupBySource" + target: + $ref: "#/components/schemas/ProductAnalyticsJourneyTarget" + value_filters: + description: Restricts the results to these facet values. + items: + description: A facet value to keep. + type: string + type: array + required: + - facet + type: object + ProductAnalyticsGraphQueryGroupBySource: + description: Audience dimension to group by, instead of an event facet. + enum: + - product_analytics_audience_filters.users + - product_analytics_audience_filters.accounts + example: product_analytics_audience_filters.users + type: string + x-enum-varnames: + - USERS + - ACCOUNTS + ProductAnalyticsGroupBy: + description: A group-by rule for segmenting results by facet values. + properties: + facet: + description: The facet to group by. + example: "@view.name" + type: string + limit: + description: Maximum number of groups to return. + example: 10 + format: int64 + type: integer + should_exclude_missing: + default: false + description: Exclude results with missing facet values. + type: boolean + sort: + $ref: "#/components/schemas/ProductAnalyticsGroupBySort" + source: + description: The source for audience-filter-based group-by. + type: string + required: + - facet + type: object + ProductAnalyticsGroupBySort: + description: Sort configuration for group-by results. + properties: + aggregation: + description: The aggregation function to sort by. + example: count + type: string + metric: + description: The metric to sort by. + type: string + order: + $ref: "#/components/schemas/QuerySortOrder" + type: object + ProductAnalyticsInterval: + description: An interval definition in a timeseries response. + properties: + milliseconds: + description: The duration of each time bucket in milliseconds. + format: int64 + type: integer + start_time: + description: The start of this interval as an epoch timestamp in milliseconds. + format: int64 + type: integer + times: + description: Epoch timestamps (in milliseconds) for each bucket in this interval. + items: + description: Epoch timestamp in milliseconds for a time bucket boundary. + format: int64 + type: integer + type: array + type: + description: The interval type (e.g., fixed or auto-computed bucket size). + type: string + type: object + ProductAnalyticsJoinKeys: + description: Identity join keys used to stitch events belonging to the same user or session. + properties: + primary: + description: Primary identity join key. Defaults to `@session.id`. + example: "@session.id" + type: string + secondary: + description: Additional identity join keys. + items: + description: An identity join key facet. + type: string + type: array + type: object + ProductAnalyticsJourneyAudienceAccountQuery: + description: A named sub-query selecting a set of accounts. + properties: + name: + description: Unique name for this sub-query, referenced from `formula`. + example: enterprise_accounts + type: string + query: + description: Search query selecting the accounts. + type: string + required: + - name + type: object + ProductAnalyticsJourneyAudienceFilters: + description: |- + Restricts the journey to an audience built from named sub-queries. + Sub-query names must be unique across `users`, `segments`, and `accounts`. + properties: + accounts: + description: Named account sub-queries. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyAudienceAccountQuery" + type: array + formula: + description: |- + Boolean expression combining the sub-query names with `AND`, `OR`, and `NOT`. + When empty, all sub-queries are combined with `AND`. + example: power_users AND NOT trial_segment + type: string + segments: + description: Named segment sub-queries. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyAudienceSegmentQuery" + type: array + users: + description: Named user sub-queries. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyAudienceUserQuery" + type: array + type: object + ProductAnalyticsJourneyAudienceSegmentQuery: + description: A named sub-query selecting a saved segment. + properties: + name: + description: Unique name for this sub-query, referenced from `formula`. + example: trial_segment + type: string + segment_id: + description: Identifier of the saved segment. + example: 00000000-0000-0000-0000-000000000000 + type: string + required: + - name + - segment_id + type: object + ProductAnalyticsJourneyAudienceUserQuery: + description: A named sub-query selecting a set of users. + properties: + name: + description: Unique name for this sub-query, referenced from `formula`. + example: power_users + type: string + query: + description: Search query selecting the users. + type: string + required: + - name + type: object + ProductAnalyticsJourneyComputedColumn: + description: |- + A computed column added to each row. Requesting `first_conversion_timestamps` adds one + `_timestamp` key per step. + properties: + name: + $ref: "#/components/schemas/ProductAnalyticsJourneyComputedColumnName" + required: + - name + type: object + ProductAnalyticsJourneyComputedColumnName: + description: Name of a computed column to add to each row. + enum: + - first_conversion_timestamps + example: first_conversion_timestamps + type: string + x-enum-varnames: + - FIRST_CONVERSION_TIMESTAMPS + ProductAnalyticsJourneyConversionType: + description: Whether to return the entities that converted at the target step, or those that dropped off. + enum: + - conversion + - drop-off + example: conversion + type: string + x-enum-varnames: + - CONVERSION + - DROP_OFF + ProductAnalyticsJourneyEntity: + description: The kind of entity returned by a journey list query. + enum: + - session + - user + - account + example: session + type: string + x-enum-varnames: + - SESSION + - USER + - ACCOUNT + ProductAnalyticsJourneyFunnelCompute: + description: Defines the metric computed at each funnel step. + properties: + aggregation: + description: |- + Aggregation function: `count`, `cardinality`, `avg`, `median`, `min`, `max`, `sum`, + or a percentile of the form `pc` such as `pc95`. Defaults to `cardinality`. + pattern: "^(count|cardinality|avg|median|min|max|sum|pc[0-9]{1,2})$" + type: string + metric: + description: Metric to aggregate on. Defaults to the identity join key. + type: string + type: object + ProductAnalyticsJourneyFunnelQuery: + description: Query definition for a journey funnel request. + properties: + compute: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelCompute" + group_by: + description: Segments the funnel by the values of one or more facets. + items: + $ref: "#/components/schemas/ProductAnalyticsGraphQueryGroupBy" + type: array + search: + $ref: "#/components/schemas/ProductAnalyticsJourneySearch" + required: + - search + type: object + ProductAnalyticsJourneyFunnelRequest: + description: Request body for a journey funnel analysis. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelRequestData" + required: + - data + type: object + ProductAnalyticsJourneyFunnelRequestAttributes: + description: Attributes of a journey funnel request. + properties: + exclude_anonymous_traffic: + default: false + description: Whether to exclude sessions that are not tied to an identified user. + type: boolean + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsJourneyFunnelRequestData: + description: |- + The single JSON:API resource carrying a funnel query. Its attributes hold the time window to + query and the journey whose step-to-step conversion should be measured. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsJourneyFunnelResponse: + description: Response for a journey funnel analysis. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelResponseData" + required: + - data + type: object + ProductAnalyticsJourneyFunnelResponseAttributes: + description: Attributes of a journey funnel response. + properties: + end_to_end_conversion_rate: + description: Conversion rate from the first step to the last step. + example: 0.42 + format: double + type: number + end_to_end_elapsed_time: + $ref: "#/components/schemas/ProductAnalyticsElapsedTime" + funnel_steps: + description: The funnel steps, in the order given by the search expression. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelStep" + type: array + initial_count: + description: Number of entities that entered the funnel. + example: 1200 + format: int64 + type: integer + required: + - initial_count + - end_to_end_conversion_rate + - end_to_end_elapsed_time + - funnel_steps + type: object + ProductAnalyticsJourneyFunnelResponseData: + description: |- + The single JSON:API resource holding a computed funnel. Its attributes contain the number of + entities that entered, the end-to-end conversion, and one entry per funnel step. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelResponseAttributes" + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsJourneyFunnelResponseType: + description: The resource type identifier for a journey funnel response. + enum: + - funnel_response + example: funnel_response + type: string + x-enum-varnames: + - FUNNEL_RESPONSE + ProductAnalyticsJourneyFunnelStep: + description: A single step of the funnel with its conversion counts and timings. + properties: + elapsed_time_to_next_step: + $ref: "#/components/schemas/ProductAnalyticsElapsedTime" + groups: + description: Breakdown of this step by the requested group-by facets. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelStepGroup" + type: array + label: + description: Label of the step, derived from the node alias. + example: A + type: string + unit: + description: Unit of the elapsed time values. + example: millisecond + type: string + value: + description: Value of the computed metric at this step. + example: 1200 + format: double + type: number + required: + - value + - label + - unit + - elapsed_time_to_next_step + - groups + type: object + ProductAnalyticsJourneyFunnelStepGroup: + description: Breakdown of a funnel step for one combination of group-by values. + properties: + conversion_count: + description: Number of entities in this group that reached the next step. + example: 210 + format: int64 + type: integer + elapsed_time_to_next_step: + $ref: "#/components/schemas/ProductAnalyticsElapsedTime" + group_tags: + description: Group-by values identifying this cohort. + example: + - United States + items: + description: A group-by value. + type: string + type: array + value: + description: Value of the computed metric for this group at this step. + example: 480 + format: double + type: number + required: + - group_tags + - value + - conversion_count + - elapsed_time_to_next_step + type: object + ProductAnalyticsJourneyListQuery: + description: Query definition for a journey list request. + properties: + computed_columns: + description: Computed columns to add to each row. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyComputedColumn" + type: array + conversion_type: + $ref: "#/components/schemas/ProductAnalyticsJourneyConversionType" + entity_columns: + description: Attribute columns to return for each row, in addition to the identity join key and `timestamp`. + items: + description: An attribute column to return. + type: string + type: array + entity_filters: + description: Additional search query applied to the returned rows. + type: string + group_by: + description: Segments the results by the values of one or more facets. + items: + $ref: "#/components/schemas/ProductAnalyticsGraphQueryGroupBy" + type: array + limit: + description: Maximum number of rows to return. Omit it to let the service choose. + format: int64 + minimum: 1 + type: integer + search: + $ref: "#/components/schemas/ProductAnalyticsJourneySearch" + sort: + $ref: "#/components/schemas/ProductAnalyticsJourneyListSort" + target: + $ref: "#/components/schemas/ProductAnalyticsJourneyTarget" + required: + - search + type: object + ProductAnalyticsJourneyListRecord: + additionalProperties: {} + description: |- + A single row. Keys are the returned column names: the identity join key, `timestamp`, + each entry of `entity_columns`, and any computed columns. A value is null when the + column has no value for that row. + type: object + ProductAnalyticsJourneyListRequest: + description: Request body for a journey list query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyListRequestData" + required: + - data + type: object + ProductAnalyticsJourneyListRequestAttributes: + description: Attributes of a journey list request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsJourneyListQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsJourneyListRequestData: + description: |- + The single JSON:API resource carrying a journey list query. Its attributes hold the time window + and the journey whose matching entities should be listed, one row each. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsJourneyListRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyListRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsJourneyListRequestType: + description: The resource type identifier for a journey list request. + enum: + - journey_list_request + example: journey_list_request + type: string + x-enum-varnames: + - JOURNEY_LIST_REQUEST + ProductAnalyticsJourneyListResponse: + description: Response for a journey list query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyListResponseData" + required: + - data + type: object + ProductAnalyticsJourneyListResponseAttributes: + description: Attributes of a journey list response. + properties: + entity: + $ref: "#/components/schemas/ProductAnalyticsJourneyEntity" + records: + description: The returned rows. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneyListRecord" + type: array + total_count: + description: Total number of rows matching the query, ignoring `limit`. + example: 231 + format: int64 + type: integer + required: + - entity + - total_count + - records + type: object + ProductAnalyticsJourneyListResponseData: + description: |- + The single JSON:API resource holding the entities matching a journey. Its attributes contain + the returned rows and the total number of rows that matched, ignoring `limit`. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsJourneyListResponseAttributes" + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyListResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsJourneyListResponseType: + description: The resource type identifier for a journey list response. + enum: + - journey_list_response + example: journey_list_response + type: string + x-enum-varnames: + - JOURNEY_LIST_RESPONSE + ProductAnalyticsJourneyListSort: + description: |- + Sort configuration for the returned rows. The sort is applied only when `facet` + is one of the returned columns; otherwise it is ignored. + properties: + facet: + description: Column to sort on. + type: string + order: + $ref: "#/components/schemas/QuerySortOrder" + type: object + ProductAnalyticsJourneyNodeTarget: + description: A reference to a single step of the journey. + properties: + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyNodeTargetType" + value: + description: Alias of the targeted node. + example: A + type: string + required: + - type + - value + type: object + ProductAnalyticsJourneyNodeTargetType: + description: The discriminator identifying a target that references a single step. + enum: + - node + example: node + type: string + x-enum-varnames: + - NODE + ProductAnalyticsJourneyPathTarget: + description: A reference to the range of steps between two nodes of the journey. + properties: + end: + description: Alias of the node the path ends at. + example: B + type: string + start: + description: Alias of the node the path starts at. + example: A + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyPathTargetType" + required: + - type + - start + - end + type: object + ProductAnalyticsJourneyPathTargetType: + description: The discriminator identifying a target that references a range of steps. + enum: + - path + example: path + type: string + x-enum-varnames: + - PATH + ProductAnalyticsJourneyRequestType: + description: The resource type identifier for a journey funnel request. + enum: + - journey_request + example: journey_request + type: string + x-enum-varnames: + - JOURNEY_REQUEST + ProductAnalyticsJourneyScalarCompute: + description: Defines the metric computed over the journey for a scalar query. + properties: + aggregation: + description: |- + Aggregation function: `count`, `cardinality`, `avg`, `median`, `min`, `max`, `sum`, + or a percentile of the form `pc` such as `pc95`. Defaults to `cardinality`. + example: count + pattern: "^(count|cardinality|avg|median|min|max|sum|pc[0-9]{1,2})$" + type: string + metric: + description: |- + Metric to aggregate on. Use a facet path such as `@view.time_spent`, or one of the + journey metrics `__dd.conversion`, `__dd.conversion_rate`, `__dd.time_to_convert`, + or `__dd.dropoff_rate`. Defaults to `__dd.conversion`. + type: string + target: + $ref: "#/components/schemas/ProductAnalyticsJourneyTarget" + required: + - aggregation + type: object + ProductAnalyticsJourneyScalarQuery: + description: Query definition for a journey scalar request. + properties: + compute: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarCompute" + group_by: + description: Segments the results by the values of one or more facets. + items: + $ref: "#/components/schemas/ProductAnalyticsGraphQueryGroupBy" + type: array + query_id: + description: Caller-defined identifier echoed back in the results. + type: string + search: + $ref: "#/components/schemas/ProductAnalyticsJourneySearch" + required: + - search + - compute + type: object + ProductAnalyticsJourneyScalarRequest: + description: Request body for a journey scalar query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarRequestData" + required: + - data + type: object + ProductAnalyticsJourneyScalarRequestAttributes: + description: Attributes of a journey scalar request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsJourneyScalarRequestData: + description: |- + The single JSON:API resource carrying a journey scalar query. Its attributes hold the time + window and the journey metric to reduce to one value over that window. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsFormulaJourneyRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsJourneyScalarResponse: + description: Response for a journey scalar query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarResponseData" + required: + - data + type: object + ProductAnalyticsJourneyScalarResponseData: + description: |- + The single JSON:API resource holding journey scalar results. Its attributes contain one value + per group, suitable for a query value or top list widget. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsScalarResponseAttributes" + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsJourneyScalarResponseType: + description: The resource type identifier for a journey scalar response. + enum: + - journey_scalar_response + example: journey_scalar_response + type: string + x-enum-varnames: + - JOURNEY_SCALAR_RESPONSE + ProductAnalyticsJourneySearch: + description: Defines the steps of the journey and the filters applied to it. + properties: + expression: + description: Expression combining the node aliases in order, for example `A -> B -> C`. + example: A -> B + type: string + filters: + $ref: "#/components/schemas/ProductAnalyticsJourneySearchFilters" + join_keys: + $ref: "#/components/schemas/ProductAnalyticsJoinKeys" + node_objects: + additionalProperties: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + description: |- + Map of node alias to the query matching that step of the journey. + Every alias used in `expression` must have an entry here. + example: + A: + data_source: product_analytics + search: + query: "@type:view @view.name:Login" + B: + data_source: product_analytics + search: + query: "@type:action @action.target.name:Submit" + type: object + required: + - expression + - node_objects + type: object + ProductAnalyticsJourneySearchFilters: + description: Filters applied on top of the journey step expression. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsJourneyAudienceFilters" + graph_filters: + description: Filters on journey-level metrics such as time to convert. + items: + $ref: "#/components/schemas/ProductAnalyticsJourneySearchGraphFilter" + type: array + string_filter: + description: Free-text search query applied to the whole journey. + type: string + type: object + ProductAnalyticsJourneySearchGraphFilter: + description: A filter applied to a step, or a range of steps, of the journey graph. + properties: + name: + $ref: "#/components/schemas/ProductAnalyticsJourneySearchGraphFilterName" + operator: + $ref: "#/components/schemas/ProductAnalyticsJourneySearchGraphFilterOperator" + target: + $ref: "#/components/schemas/ProductAnalyticsJourneyTarget" + value: + description: Value compared against the metric. Durations are expressed in milliseconds. + example: 60000 + format: int64 + type: integer + required: + - name + - operator + - value + type: object + ProductAnalyticsJourneySearchGraphFilterName: + description: The journey-level metric the graph filter applies to. + enum: + - __dd.time_to_convert + - __dd.session + - __dd.dropoff_rate + example: __dd.time_to_convert + type: string + x-enum-varnames: + - TIME_TO_CONVERT + - SESSION + - DROPOFF_RATE + ProductAnalyticsJourneySearchGraphFilterOperator: + description: Comparison operator applied to the graph filter value. + enum: + - "=" + - "<" + - ">" + - "<=" + - ">=" + example: "<=" + type: string + x-enum-varnames: + - EQUAL + - LESS_THAN + - GREATER_THAN + - LESS_THAN_OR_EQUAL + - GREATER_THAN_OR_EQUAL + ProductAnalyticsJourneyTarget: + description: |- + A reference to a step, or a range of steps, in the journey. + Use a `node` target to name a single step, or a `path` target to name the range + between two steps. + oneOf: + - $ref: "#/components/schemas/ProductAnalyticsJourneyNodeTarget" + - $ref: "#/components/schemas/ProductAnalyticsJourneyPathTarget" + ProductAnalyticsJourneyTimeseriesResponse: + description: Response for a journey timeseries query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsJourneyTimeseriesResponseData" + required: + - data + type: object + ProductAnalyticsJourneyTimeseriesResponseData: + description: |- + The single JSON:API resource holding journey timeseries results. Its attributes contain one + series per group along with the timestamps the points fall on. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsTimeseriesResponseAttributes" + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsJourneyTimeseriesResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsJourneyTimeseriesResponseType: + description: The resource type identifier for a journey timeseries response. + enum: + - journey_timeseries_response + example: journey_timeseries_response + type: string + x-enum-varnames: + - JOURNEY_TIMESERIES_RESPONSE + ProductAnalyticsOccurrenceFilter: + description: Filter for occurrence-based queries. + properties: + meta: + additionalProperties: + type: string + description: Additional metadata. + type: object + operator: + description: Comparison operator (=, >=, <=, >, <). + example: ">=" + type: string + value: + description: The occurrence count threshold as a string. + example: "1" + type: string + required: + - operator + - value + type: object + ProductAnalyticsOccurrenceQuery: + description: A Product Analytics occurrence-filtered query. + properties: + data_source: + $ref: "#/components/schemas/ProductAnalyticsOccurrenceQueryDataSource" + search: + $ref: "#/components/schemas/ProductAnalyticsOccurrenceSearch" + required: + - data_source + - search + type: object + ProductAnalyticsOccurrenceQueryDataSource: + description: The data source identifier for occurrence queries. + enum: + - product_analytics_occurrence + example: product_analytics_occurrence + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_OCCURRENCE + ProductAnalyticsOccurrenceSearch: + description: Search parameters for an occurrence query. + properties: + occurrences: + $ref: "#/components/schemas/ProductAnalyticsOccurrenceFilter" + query: + description: The search query using Datadog search syntax. + example: "@type:action" + type: string + type: object + ProductAnalyticsResponseMeta: + description: Metadata for a Product Analytics query response. + properties: + request_id: + description: Unique identifier of the query. + type: string + status: + $ref: "#/components/schemas/ProductAnalyticsResponseMetaStatus" + type: object + ProductAnalyticsResponseMetaStatus: + description: The execution status of a Product Analytics query. + enum: + - done + - running + - timeout + type: string + x-enum-varnames: + - DONE + - RUNNING + - TIMEOUT + ProductAnalyticsRetentionAggregationTarget: + description: Selects the rolled-up row that aggregates every cohort, rather than a single cohort. + properties: + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionAggregationTargetType" + value: + description: The aggregation that produced the rolled-up row. + example: weighted_avg + type: string + required: + - type + - value + type: object + ProductAnalyticsRetentionAggregationTargetType: + description: The discriminator identifying a target selected by aggregation. + enum: + - aggregation + example: aggregation + type: string + x-enum-varnames: + - AGGREGATION + ProductAnalyticsRetentionCalendarTimeInterval: + description: A retention interval aligned to calendar boundaries. + properties: + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionCalendarTimeIntervalType" + value: + $ref: "#/components/schemas/ProductAnalyticsCalendarInterval" + required: + - type + - value + type: object + ProductAnalyticsRetentionCalendarTimeIntervalType: + description: The discriminator identifying a calendar-aligned retention interval. + enum: + - calendar + example: calendar + type: string + x-enum-varnames: + - CALENDAR + ProductAnalyticsRetentionCellScope: + description: Narrows a retention query to a single cell, at the intersection of one cohort and one return period. + properties: + cohort_target: + $ref: "#/components/schemas/ProductAnalyticsRetentionCohortTarget" + return_period_target: + $ref: "#/components/schemas/ProductAnalyticsRetentionIndexTarget" + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionCellScopeType" + required: + - type + - cohort_target + - return_period_target + type: object + ProductAnalyticsRetentionCellScopeType: + description: The discriminator identifying a scope narrowed to one grid cell. + enum: + - cell + example: cell + type: string + x-enum-varnames: + - CELL + ProductAnalyticsRetentionCohortCriteria: + description: Defines the event that places an entity into a cohort, and how cohorts are bucketed over time. + properties: + base_query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + time_interval: + $ref: "#/components/schemas/ProductAnalyticsRetentionTimeInterval" + required: + - base_query + - time_interval + type: object + ProductAnalyticsRetentionCohortScope: + description: Narrows a retention query to a single cohort row. + properties: + target: + $ref: "#/components/schemas/ProductAnalyticsRetentionCohortTarget" + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionCohortScopeType" + required: + - type + - target + type: object + ProductAnalyticsRetentionCohortScopeType: + description: The discriminator identifying a scope narrowed to one cohort. + enum: + - cohort + example: cohort + type: string + x-enum-varnames: + - COHORT + ProductAnalyticsRetentionCohortTarget: + description: Selects a cohort, either by index or by the aggregation that rolls all cohorts together. + oneOf: + - $ref: "#/components/schemas/ProductAnalyticsRetentionIndexTarget" + - $ref: "#/components/schemas/ProductAnalyticsRetentionAggregationTarget" + ProductAnalyticsRetentionCompute: + description: The metric and aggregation applied to a retention query. + properties: + aggregation: + description: The aggregation function applied to the metric, such as `count` or `avg`. + example: count + type: string + metric: + $ref: "#/components/schemas/ProductAnalyticsRetentionComputeMetric" + required: + - metric + - aggregation + type: object + ProductAnalyticsRetentionComputeMetric: + description: The retention metric to compute, either an absolute count or a rate. + enum: + - "__dd.retention" + - "__dd.retention_rate" + example: "__dd.retention_rate" + type: string + x-enum-varnames: + - RETENTION + - RETENTION_RATE + ProductAnalyticsRetentionEntity: + description: The entity whose retention is measured. + enum: + - "@usr.id" + - "@account.id" + example: "@usr.id" + type: string + x-enum-varnames: + - USER_ID + - ACCOUNT_ID + ProductAnalyticsRetentionFilters: + description: Filters narrowing the events considered by a retention query. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + string_filter: + description: Free-text search query applied to the events. + type: string + type: object + ProductAnalyticsRetentionFixedTimeInterval: + description: A retention interval of fixed length, such as "7 days". + properties: + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionFixedTimeIntervalType" + unit: + $ref: "#/components/schemas/ProductAnalyticsRetentionFixedTimeIntervalUnit" + value: + description: Length of the interval, expressed in `unit`. + example: 7 + exclusiveMinimum: true + format: double + minimum: 0 + type: number + required: + - type + - value + - unit + type: object + ProductAnalyticsRetentionFixedTimeIntervalType: + description: The discriminator identifying a fixed-length retention interval. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + ProductAnalyticsRetentionFixedTimeIntervalUnit: + description: Time unit for a fixed-length retention interval. + enum: + - day + - week + - month + example: day + type: string + x-enum-varnames: + - DAY + - WEEK + - MONTH + ProductAnalyticsRetentionGridCohort: + description: One row of the retention grid, holding the results for a single cohort. + properties: + cells: + description: The cells of the row, one per return period. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridCohortCell" + type: array + cohort_end_time: + description: End of the cohort window, in epoch milliseconds. + format: int64 + type: integer + cohort_index: + description: Zero-based index of the cohort in the grid. + format: int64 + type: integer + cohort_size: + description: Number of entities in the cohort. + format: int64 + type: integer + cohort_start_time: + description: Start of the cohort window, in epoch milliseconds. + format: int64 + type: integer + group_tags: + description: The group-by facet values that identify this row. + items: + description: A tag value for a group-by facet. + type: string + type: array + name: + description: Label identifying the cohort, such as the week it started. + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridCohortType" + unit: + description: Unit definitions for the cell values. + items: + $ref: "#/components/schemas/ProductAnalyticsUnit" + type: array + type: object + ProductAnalyticsRetentionGridCohortCell: + description: |- + One cell of the retention grid, holding the result for a single cohort over a single return period. + Aggregated rows omit the time and count fields. + properties: + cell_count: + description: Number of entities that returned during the period. + format: int64 + type: integer + cell_rate: + description: Fraction of the cohort that returned, between `0` and `1`. + format: double + type: number + cell_relative_value_change: + description: Change in the metric relative to the cohort baseline. + format: double + nullable: true + type: number + cell_value: + description: Value of the computed metric, when a metric other than the retention rate is requested. + format: double + nullable: true + type: number + is_partial_data: + description: Whether the return period is still open, so the numbers are not yet final. + type: boolean + return_period_end_time: + description: End of the return period, in epoch milliseconds. + format: int64 + type: integer + return_period_index: + description: Zero-based index of the return period this cell belongs to. + format: int64 + type: integer + return_period_start_time: + description: Start of the return period, in epoch milliseconds. + format: int64 + type: integer + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridCohortType" + type: object + ProductAnalyticsRetentionGridCohortType: + description: |- + Whether the row holds one cohort's own numbers, or the weighted roll-up across every cohort. + enum: + - raw + - aggregated + example: raw + type: string + x-enum-varnames: + - RAW + - AGGREGATED + ProductAnalyticsRetentionGridQuery: + description: Query definition for a retention grid or retention metadata request. + properties: + computation_scope: + $ref: "#/components/schemas/ProductAnalyticsRetentionScope" + compute: + $ref: "#/components/schemas/ProductAnalyticsRetentionCompute" + group_by: + description: Splits the results by the values of one or more facets. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionGroupBy" + type: array + search: + $ref: "#/components/schemas/ProductAnalyticsRetentionSearch" + required: + - search + - compute + type: object + ProductAnalyticsRetentionGridRequest: + description: Request body for a retention grid query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridRequestData" + required: + - data + type: object + ProductAnalyticsRetentionGridRequestAttributes: + description: Attributes of a retention grid request. + properties: + exclude_anonymous_traffic: + default: false + description: Whether to exclude sessions that are not tied to an identified user. + type: boolean + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsRetentionGridRequestData: + description: |- + The single JSON:API resource carrying a retention grid query. Its attributes hold the time + window to query and the cohort and return criteria that define the grid. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsRetentionGridRequestType: + description: The resource type identifier for a retention grid request. + enum: + - retention_grid_request + example: retention_grid_request + type: string + x-enum-varnames: + - RETENTION_GRID_REQUEST + ProductAnalyticsRetentionGridResponse: + description: Response for a retention grid query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridResponseData" + required: + - data + type: object + ProductAnalyticsRetentionGridResponseAttributes: + description: Attributes of a retention grid response, containing the cohort rows and the period columns. + properties: + cohorts: + description: The cohorts forming the rows of the grid. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridCohort" + type: array + retention_entity: + description: The entity whose retention was measured. + type: string + retention_periods: + description: The return periods forming the columns of the grid. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionPeriod" + type: array + unit: + description: Unit definitions for the grid values. + items: + $ref: "#/components/schemas/ProductAnalyticsUnit" + type: array + type: object + ProductAnalyticsRetentionGridResponseData: + description: |- + The single JSON:API resource holding a computed retention grid. Its attributes contain the + return periods forming the columns and the cohorts forming the rows. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridResponseAttributes" + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsRetentionGridResponseType: + description: The resource type identifier for a retention grid response. + enum: + - retention_grid_response + example: retention_grid_response + type: string + x-enum-varnames: + - RETENTION_GRID_RESPONSE + ProductAnalyticsRetentionGroupBy: + description: Splits retention results by the values of a facet. + properties: + facet: + description: The attribute path to group by. + example: "@geo.country" + type: string + limit: + description: Maximum number of groups to return. Omit it to let the service choose. + example: 10 + format: int64 + minimum: 1 + type: integer + should_exclude_missing: + default: false + description: Whether to drop entities that have no value for the facet. + type: boolean + sort: + $ref: "#/components/schemas/ProductAnalyticsGroupBySort" + source: + description: Audience source backing the group-by, when grouping by an audience rather than a facet. + type: string + target: + $ref: "#/components/schemas/ProductAnalyticsRetentionGroupByTarget" + required: + - target + - facet + type: object + ProductAnalyticsRetentionGroupByTarget: + description: Which axis of the retention grid a group-by applies to. + enum: + - cohort + - return_period + example: cohort + type: string + x-enum-varnames: + - COHORT + - RETURN_PERIOD + ProductAnalyticsRetentionIndexTarget: + description: Selects a cohort or return period by its zero-based position in the grid. + properties: + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionIndexTargetType" + value: + description: Zero-based index of the targeted cohort or return period. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - type + - value + type: object + ProductAnalyticsRetentionIndexTargetType: + description: The discriminator identifying a target selected by index. + enum: + - index + example: index + type: string + x-enum-varnames: + - INDEX + ProductAnalyticsRetentionListColumn: + description: A column to include in each returned entity row. + properties: + field: + $ref: "#/components/schemas/ProductAnalyticsRetentionListColumnField" + type: object + ProductAnalyticsRetentionListColumnField: + description: The attribute selected for a column. + properties: + path: + description: Attribute path of the column. + example: "@usr.email" + type: string + type: object + ProductAnalyticsRetentionListQuery: + description: Query definition for a retention list request. + properties: + columns: + description: The attribute columns to include in each returned row. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionListColumn" + type: array + computation_scope: + $ref: "#/components/schemas/ProductAnalyticsRetentionCellScope" + limit: + description: Maximum number of rows to return. Use `0` for no limit. + example: 100 + format: int64 + minimum: 0 + type: integer + search: + $ref: "#/components/schemas/ProductAnalyticsRetentionSearch" + required: + - search + - computation_scope + type: object + ProductAnalyticsRetentionListRecord: + additionalProperties: {} + description: A single entity row, keyed by the requested column paths. + type: object + ProductAnalyticsRetentionListRequest: + description: Request body listing the individual entities behind one cell of the retention grid. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsRetentionListRequestData" + required: + - data + type: object + ProductAnalyticsRetentionListRequestAttributes: + description: Attributes of a retention list request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: "#/components/schemas/ProductAnalyticsRetentionListQuery" + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsRetentionListRequestData: + description: |- + The single JSON:API resource carrying a retention list query. Its attributes hold the time + window, the cell to list, and the columns to return for each entity. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsRetentionListRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionListRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsRetentionListRequestType: + description: The resource type identifier for a retention list request. + enum: + - retention_list_request + example: retention_list_request + type: string + x-enum-varnames: + - RETENTION_LIST_REQUEST + ProductAnalyticsRetentionListResponse: + description: Response for a retention list query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsRetentionListResponseData" + required: + - data + type: object + ProductAnalyticsRetentionListResponseAttributes: + description: Attributes of a retention list response, containing the matching entity rows. + properties: + records: + description: The matching entity rows. + items: + $ref: "#/components/schemas/ProductAnalyticsRetentionListRecord" + type: array + retention_entity: + description: The entity whose retention was measured. + type: string + type: object + ProductAnalyticsRetentionListResponseData: + description: |- + The single JSON:API resource holding the entities behind one retention cell. Its attributes + contain the entity whose retention was measured and one row per matching entity. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsRetentionListResponseAttributes" + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionListResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsRetentionListResponseType: + description: The resource type identifier for a retention list response. + enum: + - retention_list_response + example: retention_list_response + type: string + x-enum-varnames: + - RETENTION_LIST_RESPONSE + ProductAnalyticsRetentionPeriod: + description: A return period definition, such as "1 week". + properties: + unit: + description: Time unit of the period, such as `day`, `week`, `month`, or `year`. + example: week + type: string + value: + description: Length of the period, expressed in `unit`. + example: 1 + format: int64 + type: integer + type: object + ProductAnalyticsRetentionReturnCondition: + description: |- + When an entity counts as having returned. Use `conversion_on` to count only entities that + returned during the period itself, or `conversion_on_or_after` to also count later returns. + enum: + - conversion_on + - conversion_on_or_after + example: conversion_on_or_after + type: string + x-enum-varnames: + - CONVERSION_ON + - CONVERSION_ON_OR_AFTER + ProductAnalyticsRetentionReturnCriteria: + description: Defines the event that counts as a return, and the window in which it must occur. + properties: + base_query: + $ref: "#/components/schemas/ProductAnalyticsBaseQuery" + time_interval: + $ref: "#/components/schemas/ProductAnalyticsRetentionTimeInterval" + required: + - base_query + type: object + ProductAnalyticsRetentionReturnPeriodScope: + description: Narrows a retention query to a single return-period column. + properties: + target: + $ref: "#/components/schemas/ProductAnalyticsRetentionIndexTarget" + type: + $ref: "#/components/schemas/ProductAnalyticsRetentionReturnPeriodScopeType" + required: + - type + - target + type: object + ProductAnalyticsRetentionReturnPeriodScopeType: + description: The discriminator identifying a scope narrowed to one return period. + enum: + - return_period + example: return_period + type: string + x-enum-varnames: + - RETURN_PERIOD + ProductAnalyticsRetentionScope: + description: |- + Restricts a retention query to part of the grid, so that results can be examined in detail. + Omit it to compute the whole grid. + oneOf: + - $ref: "#/components/schemas/ProductAnalyticsRetentionCohortScope" + - $ref: "#/components/schemas/ProductAnalyticsRetentionReturnPeriodScope" + - $ref: "#/components/schemas/ProductAnalyticsRetentionCellScope" + ProductAnalyticsRetentionSearch: + description: Defines the cohort and return criteria that make up a retention query. + properties: + cohort_criteria: + $ref: "#/components/schemas/ProductAnalyticsRetentionCohortCriteria" + filters: + $ref: "#/components/schemas/ProductAnalyticsRetentionFilters" + retention_entity: + $ref: "#/components/schemas/ProductAnalyticsRetentionEntity" + return_condition: + $ref: "#/components/schemas/ProductAnalyticsRetentionReturnCondition" + return_criteria: + $ref: "#/components/schemas/ProductAnalyticsRetentionReturnCriteria" + required: + - cohort_criteria + - retention_entity + - return_condition + type: object + ProductAnalyticsRetentionTimeInterval: + description: |- + A retention interval, either aligned to calendar boundaries or of a fixed length. + Cohort criteria use calendar intervals; return criteria use fixed intervals. + oneOf: + - $ref: "#/components/schemas/ProductAnalyticsRetentionCalendarTimeInterval" + - $ref: "#/components/schemas/ProductAnalyticsRetentionFixedTimeInterval" + ProductAnalyticsSankeyAggregatedNode: + description: One of the nodes rolled up into an aggregated node, retained so the roll-up can be broken down. + properties: + id: + description: Unique identifier for the node. + type: string + incoming_value: + description: Number of sessions entering the node. + format: int64 + type: integer + name: + description: The facet value the node represents. + type: string + outgoing_value: + description: Number of sessions leaving the node. + format: int64 + type: integer + type: + $ref: "#/components/schemas/ProductAnalyticsSankeyAggregatedNodeType" + value: + description: Number of sessions passing through the node. + format: int64 + type: integer + type: object + ProductAnalyticsSankeyAggregatedNodeType: + description: The resource type identifier for a node rolled up into an aggregated node. + enum: + - aggregated + type: string + x-enum-varnames: + - AGGREGATED + ProductAnalyticsSankeyDefinition: + description: The shape of the Sankey diagram, expressed as the facets to flow between and how many steps to show. + properties: + entries_per_step: + description: |- + Maximum number of nodes to keep in each column. Remaining values are rolled up into an + aggregated node. Omit it, or send `0`, to use the default of `5`. + example: 10 + format: int64 + maximum: 10 + minimum: 0 + type: integer + number_of_steps: + description: |- + Number of intermediate columns between the source and the target. + Omit it, or send `0`, to use the default of `5`. + example: 3 + format: int64 + maximum: 10 + minimum: 0 + type: integer + source: + description: Facet forming the first column of the diagram. + example: "@view.name" + type: string + target: + description: Facet forming the last column of the diagram. + example: "@view.name" + type: string + required: + - source + - target + type: object + ProductAnalyticsSankeyLink: + description: A link of the Sankey diagram, representing the sessions flowing between two nodes. + properties: + column: + description: Zero-based index of the column the link starts from. + format: int64 + type: integer + id: + description: Unique identifier for the link. + type: string + source: + description: Identifier of the node the link starts at. + type: string + target: + description: Identifier of the node the link ends at. + type: string + value: + description: Number of sessions flowing along the link. + format: int64 + type: integer + type: object + ProductAnalyticsSankeyNode: + description: A node of the Sankey diagram, representing one facet value in one column. + properties: + aggregated_nodes: + description: The nodes rolled up into this one, when the node is an aggregate. + items: + $ref: "#/components/schemas/ProductAnalyticsSankeyAggregatedNode" + type: array + column: + description: Zero-based index of the column the node sits in. + format: int64 + type: integer + dropoff_value: + description: Number of sessions that ended at the node. + format: int64 + type: integer + id: + description: Unique identifier for the node. + type: string + incoming_value: + description: Number of sessions entering the node. + format: int64 + type: integer + name: + description: The facet value the node represents. + type: string + outgoing_value: + description: Number of sessions leaving the node. + format: int64 + type: integer + type: + $ref: "#/components/schemas/ProductAnalyticsSankeyNodeType" + value: + description: Number of sessions passing through the node. + format: int64 + type: integer + type: object + ProductAnalyticsSankeyNodeType: + description: |- + The kind of node. `regular` is a single facet value, `other` rolls up the values that did not + fit within `entries_per_step`, and `dropoff` collects the sessions that ended at this column. + enum: + - regular + - other + - dropoff + type: string + x-enum-varnames: + - REGULAR + - OTHER + - DROPOFF + ProductAnalyticsSankeyRequest: + description: Request body for a Sankey diagram query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsSankeyRequestData" + required: + - data + type: object + ProductAnalyticsSankeyRequestAttributes: + description: Attributes of a Sankey request. + properties: + definition: + $ref: "#/components/schemas/ProductAnalyticsSankeyDefinition" + search: + $ref: "#/components/schemas/ProductAnalyticsSankeySearch" + time: + $ref: "#/components/schemas/ProductAnalyticsSankeyTime" + required: + - time + - search + - definition + type: object + ProductAnalyticsSankeyRequestData: + description: |- + The single JSON:API resource carrying a Sankey query. Its attributes hold the time window to + query, the search that selects the sessions, and the definition of the diagram to build. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsSankeyRequestAttributes" + type: + $ref: "#/components/schemas/ProductAnalyticsSankeyRequestType" + required: + - type + - attributes + type: object + ProductAnalyticsSankeyRequestType: + description: The resource type identifier for a Sankey request. + enum: + - sankey_request + example: sankey_request + type: string + x-enum-varnames: + - SANKEY_REQUEST + ProductAnalyticsSankeyResponse: + description: Response for a Sankey diagram query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsSankeyResponseData" + required: + - data + type: object + ProductAnalyticsSankeyResponseAttributes: + description: Attributes of a Sankey response, containing the nodes and the links between them. + properties: + links: + description: The links of the diagram, one per pair of connected nodes. + items: + $ref: "#/components/schemas/ProductAnalyticsSankeyLink" + type: array + nodes: + description: The nodes of the diagram, one per facet value and column. + items: + $ref: "#/components/schemas/ProductAnalyticsSankeyNode" + type: array + type: object + ProductAnalyticsSankeyResponseData: + description: |- + The single JSON:API resource holding a computed Sankey diagram. Its attributes contain the + nodes of every column and the links that carry sessions between them. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsSankeyResponseAttributes" + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsSankeyResponseType" + required: + - id + - type + - attributes + type: object + ProductAnalyticsSankeyResponseType: + description: The resource type identifier for a Sankey response. + enum: + - sankey_response + example: sankey_response + type: string + x-enum-varnames: + - SANKEY_RESPONSE + ProductAnalyticsSankeySearch: + description: Selects the sessions a Sankey diagram is built from. + properties: + audience_filters: + $ref: "#/components/schemas/ProductAnalyticsAudienceFilters" + join_keys: + $ref: "#/components/schemas/ProductAnalyticsJoinKeys" + query: + description: Datadog search query restricting the events considered. + example: "@type:view" + type: string + type: object + ProductAnalyticsSankeyTime: + description: The time window a Sankey query covers. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + type: object + ProductAnalyticsScalarColumn: + description: A column in a scalar response. + properties: + meta: + $ref: "#/components/schemas/ProductAnalyticsScalarColumnMeta" + name: + description: Column name (facet name for group-by, or "query"). + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsScalarColumnType" + values: + description: Column values. + items: + description: A single cell value within the column (string for group-by columns, number for metric columns). + type: array + type: object + ProductAnalyticsScalarColumnMeta: + description: Metadata associated with a scalar response column, including optional unit information. + properties: + unit: + description: Unit definitions for the column values, if applicable. + items: + $ref: "#/components/schemas/ProductAnalyticsUnit" + nullable: true + type: array + type: object + ProductAnalyticsScalarColumnType: + description: Column type. + enum: + - number + - group + type: string + x-enum-varnames: + - NUMBER + - GROUP + ProductAnalyticsScalarResponse: + description: Response for a scalar analytics query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsScalarResponseData" + meta: + $ref: "#/components/schemas/ProductAnalyticsResponseMeta" + type: object + ProductAnalyticsScalarResponseAttributes: + description: Attributes of a scalar analytics response, containing the result columns. + properties: + columns: + description: The list of result columns, each containing values and metadata. + items: + $ref: "#/components/schemas/ProductAnalyticsScalarColumn" + type: array + type: object + ProductAnalyticsScalarResponseData: + description: Data object for a scalar response. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsScalarResponseAttributes" + id: + description: Unique identifier for this response data object. + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsScalarResponseType" + type: object + ProductAnalyticsScalarResponseType: + description: The resource type identifier for a scalar analytics response. + enum: + - scalar_response + type: string + x-enum-varnames: + - SCALAR_RESPONSE + ProductAnalyticsSerie: + description: A series in a timeseries response. + properties: + group_tags: + description: The group-by tag values that identify this series. + items: + description: A tag value for a group-by facet. + type: string + type: array + query_index: + description: The index of the query that produced this series. + format: int64 + type: integer + unit: + description: Unit definitions for the series values. + items: + $ref: "#/components/schemas/ProductAnalyticsUnit" + type: array + type: object + ProductAnalyticsServerSideEventError: + description: Error details. + properties: + detail: + description: Error message. + example: "Malformed payload" + type: string + status: + description: Error code. + example: "400" + type: string + title: + description: Error title. + example: "Bad Request" + type: string + type: object + ProductAnalyticsServerSideEventErrors: + description: Error response. + properties: + errors: + description: Structured errors. + items: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventError" + type: array + type: object + ProductAnalyticsServerSideEventItem: + description: A Product Analytics server-side event. + properties: + account: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItemAccount" + application: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItemApplication" + event: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItemEvent" + session: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItemSession" + type: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItemType" + usr: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItemUsr" + required: + - application + - event + - type + type: object + ProductAnalyticsServerSideEventItemAccount: + description: The account linked to your event. + properties: + id: + description: The account ID used in Datadog. + example: "account-67890" + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventItemApplication: + description: The application in which you want to send your events. + properties: + id: + description: |- + The application ID of your application. It can be found in your + [application management page](https://app.datadoghq.com/rum/list). + example: "123abcde-123a-123b-1234-123456789abc" + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventItemEvent: + description: Fields used for the event. + properties: + name: + description: |- + The name of your event, which is used for search in the same way as view or action names. + example: "payment.processed" + type: string + required: + - name + type: object + ProductAnalyticsServerSideEventItemSession: + description: The session linked to your event. + properties: + id: + description: The session ID captured by the SDK. + example: "session-abcdef" + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventItemType: + description: The type of Product Analytics event. Must be `server` for server-side events. + enum: + - server + example: server + type: string + x-enum-varnames: + - SERVER + ProductAnalyticsServerSideEventItemUsr: + description: The user linked to your event. + properties: + id: + description: The user ID used in Datadog. + example: "user-12345" + type: string + required: + - id + type: object + ProductAnalyticsTimeseriesResponse: + description: Response for a timeseries analytics query. + properties: + data: + $ref: "#/components/schemas/ProductAnalyticsTimeseriesResponseData" + meta: + $ref: "#/components/schemas/ProductAnalyticsResponseMeta" + type: object + ProductAnalyticsTimeseriesResponseAttributes: + description: |- + Attributes of a timeseries analytics response, containing series data, timestamps, and + interval definitions. + properties: + intervals: + description: Interval definitions describing the time buckets used in the response. + items: + $ref: "#/components/schemas/ProductAnalyticsInterval" + type: array + series: + description: The list of series, each corresponding to a query or group-by combination. + items: + $ref: "#/components/schemas/ProductAnalyticsSerie" + type: array + times: + description: Timestamps for each data point (epoch milliseconds). + items: + description: Epoch timestamp in milliseconds. + format: int64 + type: integer + type: array + values: + description: Values for each series at each time point. + items: + description: Array of numeric values for a single series across all time points. + items: + description: Numeric value at a time point, or null if no data is available. + format: double + nullable: true + type: number + type: array + type: array + type: object + ProductAnalyticsTimeseriesResponseData: + description: Data object for a timeseries analytics response. + properties: + attributes: + $ref: "#/components/schemas/ProductAnalyticsTimeseriesResponseAttributes" + id: + description: Unique identifier for this response data object. + type: string + type: + $ref: "#/components/schemas/ProductAnalyticsTimeseriesResponseType" + type: object + ProductAnalyticsTimeseriesResponseType: + description: The resource type identifier for a timeseries analytics response. + enum: + - timeseries_response + type: string + x-enum-varnames: + - TIMESERIES_RESPONSE + ProductAnalyticsUnit: + description: A unit definition for metric values. + properties: + family: + description: The unit family (e.g., time, bytes). + example: time + type: string + id: + description: Numeric identifier for the unit. + format: int64 + type: integer + name: + description: The full name of the unit (e.g., nanosecond). + example: nanosecond + type: string + plural: + description: Plural form of the unit name (e.g., nanoseconds). + type: string + scale_factor: + description: Conversion factor relative to the base unit of the family. + format: double + type: number + short_name: + description: Abbreviated unit name (e.g., ns). + type: string + type: object + Project: + description: A Project. + properties: + attributes: + $ref: "#/components/schemas/ProjectAttributes" + id: + description: The Project's identifier. + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + relationships: + $ref: "#/components/schemas/ProjectRelationships" + type: + $ref: "#/components/schemas/ProjectResourceType" + required: + - id + - type + - attributes + type: object + ProjectAttributes: + description: Project attributes. + properties: + columns_config: + $ref: "#/components/schemas/ProjectColumnsConfig" + enabled_custom_case_types: + description: List of enabled custom case type IDs. + items: + description: A custom case type identifier. + type: string + type: array + key: + description: The project's key. + example: CASEM + type: string + name: + description: Project's name. + example: "Security Investigation" + type: string + restricted: + description: Whether the project is restricted. + type: boolean + settings: + $ref: "#/components/schemas/ProjectSettings" + type: object + ProjectColumnsConfig: + description: Project columns configuration. + properties: + columns: + description: List of column configurations for the project board view. + items: + $ref: "#/components/schemas/ProjectColumnsConfigColumnsItems" + type: array + type: object + ProjectColumnsConfigColumnsItems: + description: Configuration for a single column in a project board view. + properties: + sort: + $ref: "#/components/schemas/ProjectColumnsConfigColumnsItemsSort" + sort_field: + description: The field used to sort items in this column. + type: string + type: + description: The type of column. + type: string + type: object + ProjectColumnsConfigColumnsItemsSort: + description: Sort configuration for a project board column. + properties: + ascending: + description: Whether to sort in ascending order. + type: boolean + priority: + description: The sort priority order for this column. + format: int64 + type: integer + type: object + ProjectCreate: + description: Project create. + properties: + attributes: + $ref: "#/components/schemas/ProjectCreateAttributes" + type: + $ref: "#/components/schemas/ProjectResourceType" + required: + - attributes + - type + type: object + ProjectCreateAttributes: + description: Project creation attributes. + properties: + enabled_custom_case_types: + description: List of enabled custom case type IDs. + items: + description: A custom case type identifier. + type: string + type: array + key: + description: Project's key. Cannot be "CASE". + example: "SEC" + type: string + name: + description: Project name. + example: "Security Investigation" + type: string + team_uuid: + description: Team UUID to associate with the project. + type: string + required: + - name + - key + type: object + ProjectCreateRequest: + description: Project create request. + properties: + data: + $ref: "#/components/schemas/ProjectCreate" + required: + - data + type: object + ProjectFavorite: + description: Represents a case project that the current user has bookmarked for quick access. Favorited projects appear prominently in the Case Management UI. + properties: + id: + description: The UUID of the favorited project. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + type: string + type: + $ref: "#/components/schemas/ProjectFavoriteResourceType" + required: + - id + - type + type: object + ProjectFavoriteResourceType: + default: project_favorite + description: "JSON:API resource type for project favorites." + enum: + - project_favorite + example: project_favorite + type: string + x-enum-varnames: + - PROJECT_FAVORITE + ProjectFavoritesResponse: + description: Response containing the list of projects the current user has favorited. + properties: + data: + description: List of project favorites. + items: + $ref: "#/components/schemas/ProjectFavorite" + type: array + required: + - data + type: object + ProjectNotificationSettings: + description: Project notification settings. + properties: + destinations: + description: Notification destinations (1=email, 2=slack, 3=in-app). + items: + description: Notification channel identifier (1=email, 2=slack, 3=in-app). + format: int64 + type: integer + type: array + enabled: + description: Whether notifications are enabled. + type: boolean + notify_on_case_assignment: + description: Whether to send a notification when a case is assigned. + type: boolean + notify_on_case_closed: + description: Whether to send a notification when a case is closed. + type: boolean + notify_on_case_comment: + description: Whether to send a notification when a comment is added to a case. + type: boolean + notify_on_case_comment_mention: + description: Whether to send a notification when a user is mentioned in a case comment. + type: boolean + notify_on_case_priority_change: + description: Whether to send a notification when a case's priority changes. + type: boolean + notify_on_case_status_change: + description: Whether to send a notification when a case's status changes. + type: boolean + notify_on_case_unassignment: + description: Whether to send a notification when a case is unassigned. + type: boolean + type: object + ProjectRelationship: + description: Relationship to project. + properties: + data: + $ref: "#/components/schemas/ProjectRelationshipData" + required: + - data + type: object + ProjectRelationshipData: + description: Relationship to project object. + properties: + id: + description: A unique identifier that represents the project. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + type: string + type: + $ref: "#/components/schemas/ProjectResourceType" + required: + - id + - type + type: object + ProjectRelationships: + description: Project relationships. + properties: + member_team: + $ref: "#/components/schemas/RelationshipToTeamLinks" + member_user: + $ref: "#/components/schemas/UsersRelationship" + type: object + ProjectResourceType: + default: project + description: Project resource type. + enum: + - project + example: project + type: string + x-enum-varnames: + - PROJECT + ProjectResponse: + description: Project response. + properties: + data: + $ref: "#/components/schemas/Project" + type: object + ProjectSettings: + description: Project settings. + properties: + auto_close_inactive_cases: + $ref: "#/components/schemas/AutoCloseInactiveCases" + auto_transition_assigned_cases: + $ref: "#/components/schemas/AutoTransitionAssignedCases" + integration_incident: + $ref: "#/components/schemas/IntegrationIncident" + integration_jira: + $ref: "#/components/schemas/IntegrationJira" + integration_monitor: + $ref: "#/components/schemas/IntegrationMonitor" + integration_on_call: + $ref: "#/components/schemas/IntegrationOnCall" + integration_service_now: + $ref: "#/components/schemas/IntegrationServiceNow" + notification: + $ref: "#/components/schemas/ProjectNotificationSettings" + type: object + ProjectUpdate: + description: Project update. + properties: + attributes: + $ref: "#/components/schemas/ProjectUpdateAttributes" + type: + $ref: "#/components/schemas/ProjectResourceType" + required: + - type + type: object + ProjectUpdateAttributes: + description: Project update attributes. + properties: + columns_config: + $ref: "#/components/schemas/ProjectColumnsConfig" + enabled_custom_case_types: + description: List of enabled custom case type IDs. + items: + description: A custom case type identifier. + type: string + type: array + name: + description: Project name. + type: string + settings: + $ref: "#/components/schemas/ProjectSettings" + team_uuid: + description: Team UUID to associate with the project. + type: string + type: object + ProjectUpdateRequest: + description: Project update request. + properties: + data: + $ref: "#/components/schemas/ProjectUpdate" + required: + - data + type: object + ProjectedCost: + description: Projected Cost data. + properties: + attributes: + $ref: "#/components/schemas/ProjectedCostAttributes" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/ProjectedCostType" + type: object + ProjectedCostAttributes: + description: Projected Cost attributes data. + properties: + account_name: + description: The account name. + type: string + account_public_id: + description: The account public ID. + type: string + charges: + description: List of charges data reported for the requested month. + items: + $ref: "#/components/schemas/ChargebackBreakdown" + type: array + date: + description: The month requested. + format: date-time + type: string + org_name: + description: The organization name. + type: string + projected_total_cost: + description: The total projected cost of products for the month. + format: double + type: number + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + type: object + ProjectedCostResponse: + description: Projected Cost response. + properties: + data: + description: Response containing Projected Cost. + items: + $ref: "#/components/schemas/ProjectedCost" + type: array + type: object + ProjectedCostType: + default: projected_cost + description: Type of cost data. + enum: + - projected_cost + example: projected_cost + type: string + x-enum-varnames: + - PROJECt_COST + ProjectsResponse: + description: Response with projects. + properties: + data: + description: Projects response data. + items: + $ref: "#/components/schemas/Project" + type: array + type: object + PrunedTraceAttributes: + description: The attributes of a pruned trace returned by the Get pruned trace by ID endpoint. + properties: + is_truncated: + description: |- + Indicates whether the underlying trace was truncated because its size + exceeded the maximum that can be retrieved from storage. + example: false + type: boolean + size_bytes: + description: The size, in bytes, of the original (non-pruned) trace before summarization. + example: 12345 + format: int32 + maximum: 2147483647 + type: integer + summarized_trace: + $ref: "#/components/schemas/SummarizedTrace" + required: + - summarized_trace + - is_truncated + - size_bytes + type: object + PrunedTraceData: + description: A pruned trace resource document. + properties: + attributes: + $ref: "#/components/schemas/PrunedTraceAttributes" + id: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: "0000000000000000abc1230000000000" + type: string + type: + $ref: "#/components/schemas/PrunedTraceType" + required: + - id + - type + - attributes + type: object + PrunedTraceResponse: + description: Response containing a single pruned trace. + properties: + data: + $ref: "#/components/schemas/PrunedTraceData" + required: + - data + type: object + PrunedTraceType: + description: The type of the pruned trace resource. The value is always `pruned_trace`. + enum: + - pruned_trace + example: pruned_trace + type: string + x-enum-varnames: + - PRUNED_TRACE + PublishAppResponse: + description: The response object after an app is successfully published. + properties: + data: + $ref: "#/components/schemas/Deployment" + type: object + PublishFormData: + description: The data for publishing a form version. + properties: + attributes: + $ref: "#/components/schemas/PublishFormDataAttributes" + type: + $ref: "#/components/schemas/FormPublicationType" + required: + - type + - attributes + type: object + PublishFormDataAttributes: + description: The attributes for publishing a form version. + properties: + version: + description: The version number to publish. + example: 1 + format: int64 + type: integer + required: + - version + type: object + PublishFormRequest: + description: A request to publish a form version. + properties: + data: + $ref: "#/components/schemas/PublishFormData" + required: + - data + type: object + PublishRequestType: + default: publishRequest + description: The publish-request resource type. + enum: + - publishRequest + example: publishRequest + type: string + x-enum-varnames: + - PUBLISHREQUEST + PutAppsDatastoreItemResponseArray: + description: Response after successfully inserting multiple items into a datastore, containing the identifiers of the created items. + properties: + data: + description: An array of data objects containing the identifiers of the successfully inserted items. + items: + $ref: "#/components/schemas/PutAppsDatastoreItemResponseData" + maxItems: 100 + type: array + required: + - data + type: object + PutAppsDatastoreItemResponseData: + description: Data containing the identifier of a single item that was successfully inserted into the datastore. + properties: + id: + description: The unique identifier assigned to the inserted item. + type: string + type: + $ref: "#/components/schemas/DatastoreItemsDataType" + required: + - type + type: object + PutIncidentNotificationRuleRequest: + description: Put request for a notification rule. + properties: + data: + $ref: "#/components/schemas/IncidentNotificationRuleUpdateData" + required: + - data + type: object + Query: + description: A data query used by an app. This can take the form of an external action, a data transformation, or a state variable. + oneOf: + - $ref: "#/components/schemas/ActionQuery" + - $ref: "#/components/schemas/DataTransform" + - $ref: "#/components/schemas/StateVariable" + QueryAccountRequest: + description: Request body for querying accounts with optional filtering, column selection, and sorting. + example: + data: + attributes: + limit: 20 + query: plan_type:enterprise AND user_count:>100 AND subscription_status:active + select_columns: + - account_id + - account_name + - user_count + - plan_type + - subscription_status + - created_at + - mrr + - industry + sort: + field: user_count + order: DESC + wildcard_search_term: tech + id: query_account_request + type: query_account_request + properties: + data: + $ref: "#/components/schemas/QueryAccountRequestData" + type: object + QueryAccountRequestData: + description: The data object containing the resource type and attributes for querying accounts. + properties: + attributes: + $ref: "#/components/schemas/QueryAccountRequestDataAttributes" + id: + description: Unique identifier for the query account request resource. + type: string + type: + $ref: "#/components/schemas/QueryAccountRequestDataType" + required: + - type + type: object + QueryAccountRequestDataAttributes: + description: Attributes for filtering and shaping the account query results. + properties: + limit: + description: Maximum number of account records to return in the response. + format: int64 + type: integer + query: + description: Filter expression using account attribute conditions to narrow results. + type: string + select_columns: + description: List of account attribute column names to include in the response. + items: + description: Name of an account attribute column to include in the response. + type: string + type: array + sort: + $ref: "#/components/schemas/QueryAccountRequestDataAttributesSort" + wildcard_search_term: + description: Free-text term used for wildcard search across account attribute values. + type: string + type: object + QueryAccountRequestDataAttributesSort: + description: Sorting configuration specifying the field and direction for ordering query results. + properties: + field: + description: The attribute field name to sort results by. + type: string + order: + description: The sort direction, either ascending or descending. + type: string + type: object + QueryAccountRequestDataType: + default: query_account_request + description: Query account request resource type. + enum: + - query_account_request + example: query_account_request + type: string + x-enum-varnames: + - QUERY_ACCOUNT_REQUEST + QueryEventFilteredUsersRequest: + description: Request body for querying users filtered by user properties combined with event platform activity. + example: + data: + attributes: + event_query: + query: "@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform" + time_frame: + end: 1761309676 + start: 1760100076 + include_row_count: true + limit: 25 + query: user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - first_country_code + - first_browser_name + - events_count + - session_count + - error_count + - avg_loading_time + id: query_event_filtered_users_request + type: query_event_filtered_users_request + properties: + data: + $ref: "#/components/schemas/QueryEventFilteredUsersRequestData" + type: object + QueryEventFilteredUsersRequestData: + description: The data object containing the resource type and attributes for querying event-filtered users. + properties: + attributes: + $ref: "#/components/schemas/QueryEventFilteredUsersRequestDataAttributes" + id: + description: Unique identifier for the query event filtered users request resource. + type: string + type: + $ref: "#/components/schemas/QueryEventFilteredUsersRequestDataType" + required: + - type + type: object + QueryEventFilteredUsersRequestDataAttributes: + description: Attributes for filtering users by both user properties and event platform activity. + properties: + event_query: + $ref: "#/components/schemas/QueryEventFilteredUsersRequestDataAttributesEventQuery" + include_row_count: + description: Whether to include the total count of matching users in the response. + type: boolean + limit: + description: Maximum number of user records to return in the response. + format: int64 + type: integer + query: + description: Filter expression using user attribute conditions to narrow results. + type: string + select_columns: + description: List of user attribute column names to include in the response. + items: + description: Name of a user attribute column to include in the response. + type: string + type: array + type: object + QueryEventFilteredUsersRequestDataAttributesEventQuery: + description: Event platform query used to filter users based on their event activity within a specified time window. + properties: + query: + description: The event platform query expression for filtering users by their event activity. + type: string + time_frame: + $ref: "#/components/schemas/QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame" + type: object + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame: + description: The time window defining the start and end of the event query period as Unix timestamps. + properties: + end: + description: End of the time frame as a Unix timestamp in seconds. + format: int64 + type: integer + start: + description: Start of the time frame as a Unix timestamp in seconds. + format: int64 + type: integer + type: object + QueryEventFilteredUsersRequestDataType: + default: query_event_filtered_users_request + description: Query event filtered users request resource type. + enum: + - query_event_filtered_users_request + example: query_event_filtered_users_request + type: string + x-enum-varnames: + - QUERY_EVENT_FILTERED_USERS_REQUEST + QueryFormula: + description: A formula for calculation based on one or more queries. + properties: + formula: + description: Formula string, referencing one or more queries with their name property. + example: "a+b" + type: string + limit: + $ref: "#/components/schemas/FormulaLimit" + required: + - formula + type: object + QueryResponse: + description: Response containing the query results with matched records and total count. + example: + data: + attributes: + hits: + - first_browser_name: Chrome + first_city: San Francisco + first_country_code: US + first_device_type: Desktop + last_seen: "2025-08-14T06:45:12.142Z" + session_count: 47 + user_created: "2024-12-15T08:42:33.287Z" + user_email: john.smith@techcorp.com + user_id: "150847" + user_name: John Smith + user_org_id: "5001" + - first_browser_name: Chrome + first_city: Austin + first_country_code: US + first_device_type: Desktop + last_seen: "2025-08-14T05:22:08.951Z" + session_count: 89 + user_created: "2024-11-28T14:17:45.634Z" + user_email: john.williams@techcorp.com + user_id: "150848" + user_name: John Williams + user_org_id: "5001" + - first_browser_name: Chrome + first_city: Seattle + first_country_code: US + first_device_type: Desktop + last_seen: "2025-08-14T04:18:34.726Z" + session_count: 23 + user_created: "2025-01-03T16:33:21.445Z" + user_email: john.jones@techcorp.com + user_id: "150849" + user_name: John Jones + user_org_id: "5001" + total: 147 + id: query_response + type: query_response + properties: + data: + $ref: "#/components/schemas/QueryResponseData" + type: object + QueryResponseData: + description: The data object containing the resource type and attributes of the query response. + properties: + attributes: + $ref: "#/components/schemas/QueryResponseDataAttributes" + id: + description: Unique identifier for the query response resource. + type: string + type: + $ref: "#/components/schemas/QueryResponseDataType" + required: + - type + type: object + QueryResponseDataAttributes: + description: Attributes of the query response, containing the matched records and total count. + properties: + hits: + description: The list of matching records returned by the query, each as a map of attribute names to values. + items: + additionalProperties: {} + description: A single matched record represented as a map of attribute names to their values. + type: array + total: + description: Total number of records matching the query, regardless of the limit applied. + format: int64 + type: integer + type: object + QueryResponseDataType: + default: query_response + description: Query response resource type. + enum: + - query_response + example: query_response + type: string + x-enum-varnames: + - QUERY_RESPONSE + QuerySortOrder: + default: desc + description: Direction of sort. + enum: + - asc + - desc + type: string + x-enum-varnames: + - ASC + - DESC + QueryUsersRequest: + description: Request body for querying users with optional filtering, column selection, and sorting. + example: + data: + attributes: + limit: 25 + query: user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - user_name + - user_org_id + - first_country_code + - first_browser_name + - first_device_type + - last_seen + sort: + field: first_seen + order: DESC + wildcard_search_term: john + id: query_users_request + type: query_users_request + properties: + data: + $ref: "#/components/schemas/QueryUsersRequestData" + type: object + QueryUsersRequestData: + description: The data object containing the resource type and attributes for querying users. + properties: + attributes: + $ref: "#/components/schemas/QueryUsersRequestDataAttributes" + id: + description: Unique identifier for the query users request resource. + type: string + type: + $ref: "#/components/schemas/QueryUsersRequestDataType" + required: + - type + type: object + QueryUsersRequestDataAttributes: + description: Attributes for filtering and shaping the user query results. + properties: + limit: + description: Maximum number of user records to return in the response. + format: int64 + type: integer + query: + description: Filter expression using user attribute conditions to narrow results. + type: string + select_columns: + description: List of user attribute column names to include in the response. + items: + description: Name of a user attribute column to include in the response. + type: string + type: array + sort: + $ref: "#/components/schemas/QueryUsersRequestDataAttributesSort" + wildcard_search_term: + description: Free-text term used for wildcard search across user attribute values. + type: string + type: object + QueryUsersRequestDataAttributesSort: + description: Sorting configuration specifying the field and direction for ordering user query results. + properties: + field: + description: The user attribute field name to sort results by. + type: string + order: + description: The sort direction, either ascending or descending. + type: string + type: object + QueryUsersRequestDataType: + default: query_users_request + description: Query users request resource type. + enum: + - query_users_request + example: query_users_request + type: string + x-enum-varnames: + - QUERY_USERS_REQUEST + RUMAggregateBucketValue: + description: A bucket value, can be either a timeseries or a single value. + oneOf: + - $ref: "#/components/schemas/RUMAggregateBucketValueSingleString" + - $ref: "#/components/schemas/RUMAggregateBucketValueSingleNumber" + - $ref: "#/components/schemas/RUMAggregateBucketValueTimeseries" + RUMAggregateBucketValueSingleNumber: + description: A single number value. + format: double + type: number + RUMAggregateBucketValueSingleString: + description: A single string value. + type: string + RUMAggregateBucketValueTimeseries: + description: A timeseries array. + items: + $ref: "#/components/schemas/RUMAggregateBucketValueTimeseriesPoint" + type: array + x-generate-alias-as-model: true + RUMAggregateBucketValueTimeseriesPoint: + description: A timeseries point. + properties: + time: + description: The time value for this point. + example: "2020-06-08T11:55:00.123Z" + format: date-time + type: string + value: + description: The value for this point. + example: 19 + format: double + type: number + type: object + RUMAggregateRequest: + description: The object sent with the request to retrieve aggregation buckets of RUM events from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: "#/components/schemas/RUMCompute" + type: array + filter: + $ref: "#/components/schemas/RUMQueryFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/RUMGroupBy" + type: array + options: + $ref: "#/components/schemas/RUMQueryOptions" + page: + $ref: "#/components/schemas/RUMQueryPageOptions" + type: object + RUMAggregateSort: + description: A sort rule. + example: {"aggregation": "count", "order": "asc"} + properties: + aggregation: + $ref: "#/components/schemas/RUMAggregationFunction" + metric: + description: The metric to sort by (only used for `type=measure`). + example: "@duration" + type: string + order: + $ref: "#/components/schemas/RUMSortOrder" + type: + $ref: "#/components/schemas/RUMAggregateSortType" + type: object + RUMAggregateSortType: + default: "alphabetical" + description: The type of sorting algorithm. + enum: ["alphabetical", "measure"] + type: string + x-enum-varnames: ["ALPHABETICAL", "MEASURE"] + RUMAggregationBucketsResponse: + description: The query results. + properties: + buckets: + description: The list of matching buckets, one item per bucket. + items: + $ref: "#/components/schemas/RUMBucketResponse" + type: array + type: object + RUMAggregationFunction: + description: An aggregation function. + enum: ["count", "cardinality", "pc75", "pc90", "pc95", "pc98", "pc99", "sum", "min", "max", "avg", "median"] + example: "pc90" + type: string + x-enum-varnames: ["COUNT", "CARDINALITY", "PERCENTILE_75", "PERCENTILE_90", "PERCENTILE_95", "PERCENTILE_98", "PERCENTILE_99", "SUM", "MIN", "MAX", "AVG", "MEDIAN"] + RUMAnalyticsAggregateResponse: + description: The response object for the RUM events aggregate API endpoint. + properties: + data: + $ref: "#/components/schemas/RUMAggregationBucketsResponse" + links: + $ref: "#/components/schemas/RUMResponseLinks" + meta: + $ref: "#/components/schemas/RUMResponseMetadata" + type: object + RUMApplication: + description: RUM application. + properties: + attributes: + $ref: "#/components/schemas/RUMApplicationAttributes" + id: + description: RUM application ID. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + type: + $ref: "#/components/schemas/RUMApplicationType" + required: + - attributes + - id + - type + type: object + RUMApplicationAttributes: + description: RUM application attributes. + properties: + api_key_id: + description: ID of the API key associated with the application. + example: 123456789 + format: int32 + maximum: 2147483647 + type: integer + application_id: + description: ID of the RUM application. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + client_token: + description: Client token of the RUM application. + example: abcd1234efgh5678ijkl90abcd1234efgh0 + type: string + created_at: + description: Timestamp in ms of the creation date. + example: 1659479836169 + format: int64 + type: integer + created_by_handle: + description: Handle of the creator user. + example: john.doe + type: string + hash: + description: Hash of the RUM application. Optional. + type: string + is_active: + description: Indicates if the RUM application is active. + example: true + type: boolean + name: + description: Name of the RUM application. + example: my_rum_application + type: string + org_id: + description: Org ID of the RUM application. + example: 999 + format: int32 + maximum: 2147483647 + type: integer + product_scales: + $ref: "#/components/schemas/RUMProductScales" + remote_config_id: + description: ID of the RUM SDK remote configuration for the application, if one exists. + example: abc12345-1234-5678-abcd-ef1234567890 + type: string + type: + description: "Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`." + example: browser + type: string + updated_at: + description: Timestamp in ms of the last update date. + example: 1659479836169 + format: int64 + type: integer + updated_by_handle: + description: Handle of the updater user. + example: jane.doe + type: string + required: + - application_id + - client_token + - created_at + - created_by_handle + - name + - org_id + - type + - updated_at + - updated_by_handle + type: object + RUMApplicationCreate: + description: RUM application creation. + properties: + attributes: + $ref: "#/components/schemas/RUMApplicationCreateAttributes" + type: + $ref: "#/components/schemas/RUMApplicationCreateType" + required: + - attributes + - type + type: object + RUMApplicationCreateAttributes: + description: RUM application creation attributes. + properties: + name: + description: Name of the RUM application. + example: my_new_rum_application + type: string + product_analytics_retention_state: + $ref: "#/components/schemas/RUMProductAnalyticsRetentionState" + rum_event_processing_state: + $ref: "#/components/schemas/RUMEventProcessingState" + type: + description: "Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`." + example: browser + type: string + required: + - name + type: object + RUMApplicationCreateRequest: + description: RUM application creation request attributes. + properties: + data: + $ref: "#/components/schemas/RUMApplicationCreate" + required: + - data + type: object + RUMApplicationCreateType: + default: rum_application_create + description: RUM application creation type. + enum: + - rum_application_create + example: rum_application_create + type: string + x-enum-varnames: + - RUM_APPLICATION_CREATE + RUMApplicationList: + description: RUM application list. + properties: + attributes: + $ref: "#/components/schemas/RUMApplicationListAttributes" + id: + description: RUM application ID. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + type: + $ref: "#/components/schemas/RUMApplicationListType" + required: + - attributes + - type + type: object + RUMApplicationListAttributes: + description: RUM application list attributes. + properties: + application_id: + description: ID of the RUM application. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + created_at: + description: Timestamp in ms of the creation date. + example: 1659479836169 + format: int64 + type: integer + created_by_handle: + description: Handle of the creator user. + example: john.doe + type: string + hash: + description: Hash of the RUM application. Optional. + type: string + is_active: + description: Indicates if the RUM application is active. + example: true + type: boolean + name: + description: Name of the RUM application. + example: my_rum_application + type: string + org_id: + description: Org ID of the RUM application. + example: 999 + format: int32 + maximum: 2147483647 + type: integer + product_scales: + $ref: "#/components/schemas/RUMProductScales" + type: + description: Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. + example: browser + type: string + updated_at: + description: Timestamp in ms of the last update date. + example: 1659479836169 + format: int64 + type: integer + updated_by_handle: + description: Handle of the updater user. + example: jane.doe + type: string + required: + - application_id + - created_at + - created_by_handle + - name + - org_id + - type + - updated_at + - updated_by_handle + type: object + RUMApplicationListType: + default: rum_application + description: RUM application list type. + enum: + - rum_application + example: rum_application + type: string + x-enum-varnames: + - RUM_APPLICATION + RUMApplicationResponse: + description: RUM application response. + properties: + data: + $ref: "#/components/schemas/RUMApplication" + type: object + RUMApplicationType: + default: rum_application + description: RUM application response type. + enum: + - rum_application + example: rum_application + type: string + x-enum-varnames: + - RUM_APPLICATION + RUMApplicationUpdate: + description: RUM application update. + properties: + attributes: + $ref: "#/components/schemas/RUMApplicationUpdateAttributes" + id: + description: RUM application ID. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + type: + $ref: "#/components/schemas/RUMApplicationUpdateType" + required: + - id + - type + type: object + RUMApplicationUpdateAttributes: + description: RUM application update attributes. + properties: + name: + description: Name of the RUM application. + example: updated_name_for_my_existing_rum_application + type: string + product_analytics_retention_state: + $ref: "#/components/schemas/RUMProductAnalyticsRetentionState" + rum_event_processing_state: + $ref: "#/components/schemas/RUMEventProcessingState" + type: + description: "Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`." + example: browser + type: string + type: object + RUMApplicationUpdateRequest: + description: RUM application update request. + properties: + data: + $ref: "#/components/schemas/RUMApplicationUpdate" + required: + - data + type: object + RUMApplicationUpdateType: + default: rum_application_update + description: RUM application update type. + enum: + - rum_application_update + example: rum_application_update + type: string + x-enum-varnames: + - RUM_APPLICATION_UPDATE + RUMApplicationsResponse: + description: RUM applications response. + properties: + data: + description: RUM applications array response. + items: + $ref: "#/components/schemas/RUMApplicationList" + type: array + type: object + RUMBucketResponse: + description: Bucket values. + properties: + by: + additionalProperties: + description: The values for each group-by. + type: string + description: The key-value pairs for each group-by. + example: {"@session.type": "user", "@type": "view"} + type: object + computes: + additionalProperties: + $ref: "#/components/schemas/RUMAggregateBucketValue" + description: A map of the metric name to value for regular compute, or a list of values for a timeseries. + type: object + type: object + RUMCompute: + description: A compute rule to compute metrics or timeseries. + properties: + aggregation: + $ref: "#/components/schemas/RUMAggregationFunction" + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points. + example: "5m" + type: string + metric: + description: The metric to use. + example: "@duration" + type: string + type: + $ref: "#/components/schemas/RUMComputeType" + required: + - aggregation + type: object + RUMComputeType: + default: "total" + description: The type of compute. + enum: ["timeseries", "total"] + type: string + x-enum-varnames: ["TIMESERIES", "TOTAL"] + RUMEvent: + description: Object description of a RUM event after being processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/RUMEventAttributes" + id: + description: Unique ID of the event. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/RUMEventType" + type: object + RUMEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from RUM events. + example: {"customAttribute": 123, "duration": 2345} + type: object + service: + description: |- + The name of the application or service generating RUM events. + It is used to switch from RUM to APM, so make sure you define the same + value when you use both products. + example: "web-app" + type: string + tags: + description: Array of tags associated with your event. + example: ["team:A"] + items: + description: Tag associated with your event. + type: string + type: array + timestamp: + description: Timestamp of your event. + example: "2019-01-02T09:42:36.320Z" + format: date-time + type: string + type: object + RUMEventProcessingScale: + description: RUM event processing scale configuration. + properties: + last_modified_at: + description: Timestamp in milliseconds when this scale was last modified. + example: 1721897494108 + format: int64 + type: integer + state: + $ref: "#/components/schemas/RUMEventProcessingState" + type: object + RUMEventProcessingState: + description: Configures which RUM events are processed and stored for the application. + enum: + - ALL + - ERROR_FOCUSED_MODE + - NONE + example: ALL + type: string + x-enum-descriptions: + - Process and store all RUM events (sessions, views, actions, resources, errors) + - Process and store only error events and related critical events + - Disable RUM event processing—no events are stored + x-enum-varnames: + - ALL + - ERROR_FOCUSED_MODE + - NONE + RUMEventType: + default: rum + description: Type of the event. + enum: + - rum + example: "rum" + type: string + x-enum-varnames: + - RUM + RUMEventsResponse: + description: Response object with all events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: "#/components/schemas/RUMEvent" + type: array + links: + $ref: "#/components/schemas/RUMResponseLinks" + meta: + $ref: "#/components/schemas/RUMResponseMetadata" + type: object + RUMGroupBy: + description: A group-by rule. + properties: + facet: + description: The name of the facet to use (required). + example: "@view.time_spent" + type: string + histogram: + $ref: "#/components/schemas/RUMGroupByHistogram" + limit: + default: 10 + description: The maximum buckets to return for this group-by. + format: int64 + type: integer + missing: + $ref: "#/components/schemas/RUMGroupByMissing" + sort: + $ref: "#/components/schemas/RUMAggregateSort" + total: + $ref: "#/components/schemas/RUMGroupByTotal" + required: + - facet + type: object + RUMGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval. + properties: + interval: + description: The bin size of the histogram buckets. + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out). + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out). + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + RUMGroupByMissing: + description: The value to use for logs that don't have the facet used to group by. + oneOf: + - $ref: "#/components/schemas/RUMGroupByMissingString" + - $ref: "#/components/schemas/RUMGroupByMissingNumber" + RUMGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + RUMGroupByMissingString: + description: The missing value to use if there is string valued facet. + type: string + RUMGroupByTotal: + default: false + description: |- + A resulting object to put the given computes in over all the matching records. + oneOf: + - $ref: "#/components/schemas/RUMGroupByTotalBoolean" + - $ref: "#/components/schemas/RUMGroupByTotalString" + - $ref: "#/components/schemas/RUMGroupByTotalNumber" + RUMGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total". + type: boolean + RUMGroupByTotalNumber: + description: A number to use as the key value for the total bucket. + format: double + type: number + RUMGroupByTotalString: + description: A string to use as the key value for the total bucket. + type: string + RUMOperationCreateRequest: + description: The request body for creating a RUM operation. + properties: + data: + $ref: "#/components/schemas/RUMOperationCreateRequestData" + required: + - data + type: object + RUMOperationCreateRequestData: + description: The data object for creating a RUM operation. + properties: + attributes: + $ref: "#/components/schemas/RUMOperationRequestAttributes" + type: + $ref: "#/components/schemas/RUMOperationType" + required: + - type + - attributes + type: object + RUMOperationJourneyCompositeRule: + description: |- + A composite rule combining several predicates. Used as an alternative to `nodes` on a journey + step when several conditions must be matched together, in any order or in a specific order. + properties: + composite_rule_id: + description: The unique identifier of the composite rule. Generated by the server if omitted. + readOnly: true + type: string + config_version: + description: A hash of the composite rule's configuration, computed by the server. + readOnly: true + type: string + kind: + $ref: "#/components/schemas/RUMOperationJourneyCompositeRuleKind" + max_window_ms: + description: The maximum time window, in milliseconds, in which all predicates must match. + example: 30000 + format: int64 + type: integer + predicates: + description: The list of predicates that must be matched by RUM events. + items: + $ref: "#/components/schemas/RUMOperationJourneyPredicate" + type: array + required: + - kind + - predicates + type: object + RUMOperationJourneyCompositeRuleKind: + description: |- + The rule used to combine the composite rule's predicates. `all_of` requires every predicate + to match, in any order. `in_order` requires every predicate to match in the given order. + enum: + - all_of + - in_order + example: all_of + type: string + x-enum-varnames: + - ALL_OF + - IN_ORDER + RUMOperationJourneyNode: + description: A single node within a RUM operation journey step, matching RUM events with a query. + properties: + id: + description: The unique identifier of the node. Generated by the server if omitted. + readOnly: true + type: string + query: + description: The RUM search query used to match events for this node. + example: "@type:action @action.type:click" + type: string + required: + - query + type: object + RUMOperationJourneyPredicate: + description: A single predicate within a composite rule, matching RUM events with a query. + properties: + query: + description: The RUM search query used to match events for this predicate. + example: "@type:action @action.type:click" + type: string + required: + - query + type: object + RUMOperationJourneyRum: + description: The definition of a RUM operation's journey, used to detect it from RUM events. + properties: + rum_steps: + description: The ordered list of steps composing the RUM journey. + items: + $ref: "#/components/schemas/RUMOperationJourneyStep" + type: array + required: + - rum_steps + type: object + RUMOperationJourneyStep: + description: |- + A single step of a RUM operation's journey. Matches RUM events either through a list of `nodes` + or through a `composite` rule; the two are mutually exclusive. + properties: + composite: + $ref: "#/components/schemas/RUMOperationJourneyCompositeRule" + nodes: + description: The list of nodes that can match this step. Mutually exclusive with `composite`. + items: + $ref: "#/components/schemas/RUMOperationJourneyNode" + type: array + type: + $ref: "#/components/schemas/RUMOperationJourneyStepType" + required: + - type + type: object + RUMOperationJourneyStepType: + description: The type of a step within a RUM operation's journey. + enum: + - start + - update + - stop + - error + - abandoned + example: start + type: string + x-enum-varnames: + - START + - UPDATE + - STOP + - ERROR + - ABANDONED + RUMOperationRequestAttributes: + description: Attributes for creating or updating a RUM operation. + properties: + application_id: + description: The RUM application ID the operation belongs to. + example: "abc12345-1234-5678-abcd-ef1234567890" + format: uuid + type: string + category: + description: The category of the RUM operation. + nullable: true + type: string + description: + description: A description of the RUM operation. + nullable: true + type: string + display_name: + description: A human-readable display name for the RUM operation. + example: Checkout completed + type: string + feature_ids: + description: The list of feature IDs associated with the RUM operation. + items: + type: string + type: array + journey_rum: + $ref: "#/components/schemas/RUMOperationJourneyRum" + name: + description: The unique name of the RUM operation. Must not contain spaces. + example: checkout_completed + type: string + tags: + description: A list of tags associated with the RUM operation. + example: + - "team:checkout" + items: + type: string + type: array + required: + - name + - tags + - journey_rum + type: object + RUMOperationResponse: + description: The response for a single RUM operation. + properties: + data: + $ref: "#/components/schemas/RUMOperationResponseData" + required: + - data + type: object + RUMOperationResponseAttributes: + description: Attributes of a RUM operation response. + properties: + application_id: + description: The RUM application ID the operation belongs to. + format: uuid + nullable: true + type: string + category: + description: The category of the RUM operation. + nullable: true + type: string + created_at: + description: The timestamp when the RUM operation was created. + format: date-time + readOnly: true + type: string + created_by: + $ref: "#/components/schemas/RUMOperationUser" + description: + description: A description of the RUM operation. + nullable: true + type: string + display_name: + description: A human-readable display name for the RUM operation. + example: Checkout completed + type: string + feature_ids: + description: The list of feature IDs associated with the RUM operation. + items: + type: string + type: array + journey_rum: + $ref: "#/components/schemas/RUMOperationJourneyRum" + name: + description: The unique name of the RUM operation. Must not contain spaces. + example: checkout_completed + type: string + org_id: + description: The ID of the organization the RUM operation belongs to. + format: int64 + readOnly: true + type: integer + tags: + description: A list of tags associated with the RUM operation. + example: + - "team:checkout" + items: + type: string + type: array + updated_at: + description: The timestamp when the RUM operation was last updated. + format: date-time + nullable: true + readOnly: true + type: string + updated_by: + $ref: "#/components/schemas/RUMOperationUser" + required: + - name + - tags + - journey_rum + type: object + RUMOperationResponseData: + description: The data object in a RUM operation response. + properties: + attributes: + $ref: "#/components/schemas/RUMOperationResponseAttributes" + id: + description: The unique identifier of the RUM operation. + example: "abc12345-1234-5678-abcd-ef1234567890" + readOnly: true + type: string + type: + $ref: "#/components/schemas/RUMOperationType" + required: + - id + - type + - attributes + type: object + RUMOperationStrongLinkCreateRequest: + description: The request body for creating a RUM operation strong link. + properties: + data: + $ref: "#/components/schemas/RUMOperationStrongLinkCreateRequestData" + required: + - data + type: object + RUMOperationStrongLinkCreateRequestAttributes: + description: Attributes for creating a RUM operation strong link. + properties: + application_id: + description: The RUM application ID used when creating a stub operation from `operation_name`. + format: uuid + type: string + description: + description: A description of the strong link. + nullable: true + type: string + feature_id: + description: The unique identifier of the feature to link. + example: "feature-123" + type: string + operation_id: + description: |- + The unique identifier of the RUM operation to link. Either `operation_id` or + `operation_name` is required. + example: "abc12345-1234-5678-abcd-ef1234567890" + type: string + operation_name: + description: |- + The name of the RUM operation to link. Either `operation_id` or `operation_name` is + required. If no operation with this name exists, a stub operation is created. + type: string + status: + $ref: "#/components/schemas/RUMOperationStrongLinkStatus" + tags: + description: A list of tags associated with the strong link. + items: + type: string + type: array + required: + - feature_id + type: object + RUMOperationStrongLinkCreateRequestData: + description: The data object for creating a RUM operation strong link. + properties: + attributes: + $ref: "#/components/schemas/RUMOperationStrongLinkCreateRequestAttributes" + type: + $ref: "#/components/schemas/RUMOperationStrongLinkType" + required: + - type + - attributes + type: object + RUMOperationStrongLinkResponse: + description: The response for a single RUM operation strong link. + properties: + data: + $ref: "#/components/schemas/RUMOperationStrongLinkResponseData" + required: + - data + type: object + RUMOperationStrongLinkResponseAttributes: + description: Attributes of a RUM operation strong link response. + properties: + created_at: + description: The timestamp when the strong link was created. + format: date-time + readOnly: true + type: string + description: + description: A description of the strong link. + nullable: true + type: string + feature_id: + description: The unique identifier of the linked feature. + example: "feature-123" + readOnly: true + type: string + operation_id: + description: The unique identifier of the linked RUM operation. + example: "abc12345-1234-5678-abcd-ef1234567890" + readOnly: true + type: string + status: + $ref: "#/components/schemas/RUMOperationStrongLinkStatus" + tags: + description: A list of tags associated with the strong link. + items: + type: string + type: array + updated_at: + description: The timestamp when the strong link was last updated. + format: date-time + nullable: true + readOnly: true + type: string + required: + - operation_id + - feature_id + - status + type: object + RUMOperationStrongLinkResponseData: + description: The data object in a RUM operation strong link response. + properties: + attributes: + $ref: "#/components/schemas/RUMOperationStrongLinkResponseAttributes" + id: + description: The unique identifier of the strong link, formatted as `:`. + example: "abc12345-1234-5678-abcd-ef1234567890:feature-123" + readOnly: true + type: string + type: + $ref: "#/components/schemas/RUMOperationStrongLinkType" + required: + - id + - type + - attributes + type: object + RUMOperationStrongLinkStatus: + description: The status of a RUM operation strong link. + enum: + - DRAFT + - CONFIRMED + - REJECTED + example: CONFIRMED + type: string + x-enum-varnames: + - DRAFT + - CONFIRMED + - REJECTED + RUMOperationStrongLinkType: + description: The JSON:API type for RUM operation strong link resources. + enum: + - strong_links + example: strong_links + type: string + x-enum-varnames: + - STRONG_LINKS + RUMOperationStrongLinkUpdateRequest: + description: The request body for updating a RUM operation strong link. + properties: + data: + $ref: "#/components/schemas/RUMOperationStrongLinkUpdateRequestData" + required: + - data + type: object + RUMOperationStrongLinkUpdateRequestAttributes: + description: Attributes for updating a RUM operation strong link. + properties: + status: + $ref: "#/components/schemas/RUMOperationStrongLinkUpdateStatus" + required: + - status + type: object + RUMOperationStrongLinkUpdateRequestData: + description: The data object for updating a RUM operation strong link. + properties: + attributes: + $ref: "#/components/schemas/RUMOperationStrongLinkUpdateRequestAttributes" + type: + $ref: "#/components/schemas/RUMOperationStrongLinkType" + required: + - type + - attributes + type: object + RUMOperationStrongLinkUpdateStatus: + description: The status of a RUM operation strong link. Can only be set to `CONFIRMED` or `REJECTED`. + enum: + - CONFIRMED + - REJECTED + example: CONFIRMED + type: string + x-enum-varnames: + - CONFIRMED + - REJECTED + RUMOperationStrongLinksListResponse: + description: The response for a list of RUM operation strong links. + properties: + data: + items: + $ref: "#/components/schemas/RUMOperationStrongLinkResponseData" + type: array + meta: + $ref: "#/components/schemas/RUMOperationStrongLinksListResponseMeta" + required: + - data + type: object + RUMOperationStrongLinksListResponseMeta: + description: Metadata for a list of RUM operation strong links. + properties: + limit: + description: The pagination limit. + format: int64 + type: integer + offset: + description: The current offset. + format: int64 + type: integer + total: + description: The total number of strong links matching the request. + format: int64 + type: integer + type: object + RUMOperationType: + description: The JSON:API type for RUM operation resources. + enum: + - operations + example: operations + type: string + x-enum-varnames: + - OPERATIONS + RUMOperationUpdateRequest: + description: The request body for updating a RUM operation. + properties: + data: + $ref: "#/components/schemas/RUMOperationUpdateRequestData" + required: + - data + type: object + RUMOperationUpdateRequestData: + description: The data object for updating a RUM operation. + properties: + attributes: + $ref: "#/components/schemas/RUMOperationRequestAttributes" + id: + description: The unique identifier of the RUM operation. Must match the ID in the URL path. + example: "abc12345-1234-5678-abcd-ef1234567890" + type: string + type: + $ref: "#/components/schemas/RUMOperationType" + required: + - id + - type + - attributes + type: object + RUMOperationUser: + description: A Datadog user referenced by a RUM operation. + properties: + email: + description: The email of the user. + readOnly: true + type: string + handle: + description: The handle of the user. + readOnly: true + type: string + name: + description: The name of the user. + readOnly: true + type: string + uuid: + description: The UUID of the user. + readOnly: true + type: string + type: object + RUMOperationsListResponse: + description: The response for a list of RUM operations. + properties: + data: + items: + $ref: "#/components/schemas/RUMOperationResponseData" + type: array + meta: + $ref: "#/components/schemas/RUMOperationsListResponseMeta" + required: + - data + type: object + RUMOperationsListResponseMeta: + description: Metadata for a list of RUM operations. + properties: + page: + $ref: "#/components/schemas/RUMOperationsListResponseMetaPage" + type: object + RUMOperationsListResponseMetaPage: + description: Pagination metadata for a list of RUM operations. + properties: + first_offset: + description: The offset of the first page. + format: int64 + type: integer + last_offset: + description: The offset of the last page. + format: int64 + type: integer + limit: + description: The pagination limit. + format: int64 + type: integer + next_offset: + description: The offset of the next page, if any. + format: int64 + nullable: true + type: integer + offset: + description: The current offset. + format: int64 + type: integer + prev_offset: + description: The offset of the previous page, if any. + format: int64 + nullable: true + type: integer + total: + description: The total number of RUM operations matching the search. + format: int64 + type: integer + type: + description: The type of pagination used. + example: offset + type: string + type: object + RUMProductAnalyticsRetentionScale: + description: Product Analytics retention scale configuration. + properties: + last_modified_at: + description: Timestamp in milliseconds when this scale was last modified. + example: 1747922145974 + format: int64 + type: integer + state: + $ref: "#/components/schemas/RUMProductAnalyticsRetentionState" + type: object + RUMProductAnalyticsRetentionState: + description: Controls the retention policy for Product Analytics data derived from RUM events. + enum: + - MAX + - NONE + example: MAX + type: string + x-enum-descriptions: + - Store Product Analytics data for the maximum available retention period + - Do not store Product Analytics data + x-enum-varnames: + - MAX + - NONE + RUMProductScales: + description: Product Scales configuration for the RUM application. + properties: + product_analytics_retention_scale: + $ref: "#/components/schemas/RUMProductAnalyticsRetentionScale" + rum_event_processing_scale: + $ref: "#/components/schemas/RUMEventProcessingScale" + type: object + RUMQueryFilter: + description: The search and filter query settings. + properties: + from: + default: "now-15m" + description: The minimum time for the requested events; supports date (in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, hours, minutes, and the `Z` UTC indicator - seconds and fractional seconds are optional), math, and regular timestamps (in milliseconds). + example: "now-15m" + type: string + query: + default: "*" + description: The search query following the RUM search syntax. + example: "@type:session AND @session.type:user" + type: string + to: + default: "now" + description: The maximum time for the requested events; supports date (in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, hours, minutes, and the `Z` UTC indicator - seconds and fractional seconds are optional), math, and regular timestamps (in milliseconds). + example: "now" + type: string + type: object + RUMQueryOptions: + description: |- + Global query options that are used during the query. + Note: Only supply timezone or time offset, not both. Otherwise, the query fails. + properties: + time_offset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: "UTC" + description: |- + The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: "GMT" + type: string + type: object + RUMQueryPageOptions: + description: Paging attributes for listing events. + properties: + cursor: + description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + RUMResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: "https://app.datadoghq.com/api/v2/rum/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + RUMResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/RUMResponsePage" + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/RUMResponseStatus" + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: "#/components/schemas/RUMWarning" + type: array + type: object + RUMResponsePage: + description: Paging attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of `page[cursor]`. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + RUMResponseStatus: + description: The status of the response. + enum: ["done", "timeout"] + example: "done" + type: string + x-enum-varnames: ["DONE", "TIMEOUT"] + RUMSearchEventsRequest: + description: The request for a RUM events list. + properties: + filter: + $ref: "#/components/schemas/RUMQueryFilter" + options: + $ref: "#/components/schemas/RUMQueryOptions" + page: + $ref: "#/components/schemas/RUMQueryPageOptions" + sort: + $ref: "#/components/schemas/RUMSort" + type: object + RUMSort: + description: Sort parameters when querying events. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + RUMSortOrder: + description: The order to use, ascending or descending. + enum: + - "asc" + - "desc" + example: "asc" + type: string + x-enum-varnames: + - "ASCENDING" + - "DESCENDING" + RUMWarning: + description: A warning message indicating something that went wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: "unknown_index" + type: string + detail: + description: A detailed explanation of this specific warning. + example: "indexes: foo, bar" + type: string + title: + description: A short human-readable summary of the warning. + example: "One or several indexes are missing or invalid, results hold data from the other indexes" + type: string + type: object + RawErrorBudgetRemaining: + description: The raw error budget remaining for the SLO. + properties: + unit: + description: The unit of the error budget (for example, `seconds`, `requests`). + example: seconds + type: string + value: + description: The numeric value of the remaining error budget. + example: 86400.5 + format: double + type: number + required: + - value + - unit + type: object + ReactNativeSourcemapAttributes: + description: Attributes of a React Native source map. + properties: + build_number: + description: The build number. + example: "100" + type: string + bundle_name: + description: The bundle name. + example: com.example.app + type: string + bundle_version: + description: The bundle version. + example: "1.0" + type: string + created_at: + description: The timestamp when the source map was created. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + debug_id: + description: The debug identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + mapkind: + description: The type of source map. + example: react + type: string + platform: + description: The platform the source map was built for (e.g., `ios`, `android`). + example: ios + type: string + service: + description: The service name associated with the source map. + example: my-react-native-app + type: string + size: + description: The size of the source map file in bytes. + example: 2048 + format: int64 + type: integer + version: + description: The version of the service associated with the source map. + example: 1.0.0 + type: string + required: + - mapkind + - size + - created_at + type: object + ReactNativeSourcemapData: + description: React Native source map data object. + properties: + attributes: + $ref: "#/components/schemas/ReactNativeSourcemapAttributes" + id: + description: The unique identifier of the source map. + example: "10" + type: string + type: + $ref: "#/components/schemas/SourcemapDataType" + required: + - id + - type + - attributes + type: object + ReadinessGate: + additionalProperties: false + description: Used to merge multiple branches into a single branch. + properties: + thresholdType: + $ref: "#/components/schemas/ReadinessGateThresholdType" + required: + - thresholdType + type: object + ReadinessGateThresholdType: + description: The definition of `ReadinessGateThresholdType` object. + enum: + - ANY + - ALL + example: ANY + type: string + x-enum-varnames: + - ANY + - ALL + RecommendationAttributes: + description: Attributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components. + properties: + confidence_level: + description: The confidence level of the recommendation, expressed as a value between 0.0 (low confidence) and 1.0 (high confidence). + format: double + type: number + driver: + $ref: "#/components/schemas/ComponentRecommendation" + executor: + $ref: "#/components/schemas/ComponentRecommendation" + required: [driver, executor] + type: object + RecommendationData: + description: JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource attributes with structured recommendations. + properties: + attributes: + $ref: "#/components/schemas/RecommendationAttributes" + id: + description: Resource identifier for the recommendation. Optional in responses. + type: string + type: + $ref: "#/components/schemas/RecommendationType" + required: [type, attributes] + type: object + RecommendationDocument: + description: JSON:API document containing a single Recommendation resource. Returned by SPA when the Spark Gateway requests recommendations. + properties: + data: + $ref: "#/components/schemas/RecommendationData" + required: [data] + type: object + RecommendationType: + default: recommendation + description: JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. + enum: + - recommendation + example: recommendation + type: string + x-enum-varnames: + - RECOMMENDATION + RecommendationsFilterRequest: + description: Request body for filtering cost recommendations. + example: + filter: "@resource_table:aws_ec2_instance" + sort: + - expression: potential_daily_savings.amount + order: DESC + properties: + filter: + description: Filter expression applied to the recommendations. + type: string + sort: + description: Ordered list of sort clauses applied to the result set. + items: + $ref: "#/components/schemas/RecommendationsFilterRequestSortItems" + type: array + view: + description: Active view name (for example, `active`, `dismissed`, `open`, `in-progress`, or `completed`). + type: string + type: object + RecommendationsFilterRequestSortItems: + description: A single sort clause applied to the cost recommendations result set. + properties: + expression: + description: Field to sort by (for example, `potential_daily_savings.amount`). + type: string + order: + description: Sort direction, either `ASC` or `DESC`. + type: string + type: object + RecommendationsPageMeta: + description: Top-level JSON:API meta object for paginated cost recommendation responses. + properties: + page: + $ref: "#/components/schemas/RecommendationsPageMetaPage" + type: object + RecommendationsPageMetaPage: + description: Pagination metadata for a page of cost recommendations. + properties: + filter: + description: The filter expression that was applied to produce this page. + type: string + next_page_token: + description: Opaque token used to fetch the next page; absent on the last page. + type: string + page_size: + description: Number of items returned in this page (1–10000). + format: int32 + maximum: 10000 + minimum: 1 + type: integer + page_token: + description: Pagination token echoed back from the request. + type: string + type: object + ReferenceTableCreateSourceType: + description: The source type for creating reference table data. Only these source types can be created through this API. + enum: + - LOCAL_FILE + - S3 + - GCS + - AZURE + example: "LOCAL_FILE" + type: string + x-enum-varnames: + - LOCAL_FILE + - S3 + - GCS + - AZURE + ReferenceTableSchemaFieldType: + description: The field type for reference table schema fields. + enum: + - STRING + - INT32 + example: "STRING" + type: string + x-enum-varnames: + - STRING + - INT32 + ReferenceTableSortType: + default: "-updated_at" + description: Sort field and direction for reference tables. Use field name for ascending, prefix with "-" for descending. + enum: + - updated_at + - table_name + - status + - "-updated_at" + - "-table_name" + - "-status" + type: string + x-enum-varnames: + - UPDATED_AT + - TABLE_NAME + - STATUS + - MINUS_UPDATED_AT + - MINUS_TABLE_NAME + - MINUS_STATUS + ReferenceTableSourceType: + description: The source type for reference table data. Includes all possible source types that can appear in responses. + enum: + - LOCAL_FILE + - S3 + - GCS + - AZURE + - SERVICENOW + - SALESFORCE + - DATABRICKS + - SNOWFLAKE + example: "LOCAL_FILE" + type: string + x-enum-varnames: + - LOCAL_FILE + - S3 + - GCS + - AZURE + - SERVICENOW + - SALESFORCE + - DATABRICKS + - SNOWFLAKE + RegisterAppKeyResponse: + description: The response object after creating an app key registration. + properties: + data: + $ref: "#/components/schemas/AppKeyRegistrationData" + type: object + RelationAttributes: + description: Relation attributes. + properties: + from: + $ref: "#/components/schemas/RelationEntity" + to: + $ref: "#/components/schemas/RelationEntity" + type: + $ref: "#/components/schemas/RelationType" + type: object + RelationEntity: + description: Relation entity reference. + properties: + kind: + description: Entity kind. + type: string + name: + description: Entity name. + type: string + namespace: + description: Entity namespace. + type: string + type: object + RelationIncludeType: + description: Supported include types for relations. + enum: + - entity + - schema + type: string + x-enum-varnames: + - ENTITY + - SCHEMA + RelationMeta: + description: Relation metadata. + properties: + createdAt: + description: Relation creation time. + format: date-time + type: string + definedBy: + description: Relation defined by. + type: string + modifiedAt: + description: Relation modification time. + format: date-time + type: string + source: + description: Relation source. + type: string + type: object + RelationRelationships: + description: Relation relationships. + properties: + fromEntity: + $ref: "#/components/schemas/RelationToEntity" + toEntity: + $ref: "#/components/schemas/RelationToEntity" + type: object + RelationResponse: + description: Relation response data. + properties: + attributes: + $ref: "#/components/schemas/RelationAttributes" + id: + description: Relation ID. + type: string + meta: + $ref: "#/components/schemas/RelationMeta" + relationships: + $ref: "#/components/schemas/RelationRelationships" + subtype: + description: Relation subtype. + type: string + type: + $ref: "#/components/schemas/RelationResponseType" + type: object + RelationResponseData: + description: Array of relation responses + items: + $ref: "#/components/schemas/RelationResponse" + type: array + RelationResponseMeta: + description: Relation response metadata. + properties: + count: + description: Total relations count. + format: int64 + type: integer + includeCount: + description: Total included data count. + format: int64 + type: integer + type: object + RelationResponseType: + description: Relation type. + enum: [relation] + type: string + x-enum-varnames: + - RELATION + RelationToEntity: + description: Relation to entity. + properties: + data: + $ref: "#/components/schemas/RelationshipItem" + meta: + $ref: "#/components/schemas/EntityMeta" + type: object + RelationType: + description: Supported relation types. + enum: + - RelationTypeOwns + - RelationTypeOwnedBy + - RelationTypeDependsOn + - RelationTypeDependencyOf + - RelationTypePartsOf + - RelationTypeHasPart + - RelationTypeOtherOwns + - RelationTypeOtherOwnedBy + - RelationTypeImplementedBy + - RelationTypeImplements + type: string + x-enum-varnames: + - RELATIONTYPEOWNS + - RELATIONTYPEOWNEDBY + - RELATIONTYPEDEPENDSON + - RELATIONTYPEDEPENDENCYOF + - RELATIONTYPEPARTSOF + - RELATIONTYPEHASPART + - RELATIONTYPEOTHEROWNS + - RELATIONTYPEOTHEROWNEDBY + - RELATIONTYPEIMPLEMENTEDBY + - RELATIONTYPEIMPLEMENTS + RelationshipArray: + description: Relationships. + items: + $ref: "#/components/schemas/RelationshipItem" + type: array + RelationshipItem: + description: Relationship entry. + properties: + id: + description: Associated data ID. + type: string + type: + description: Relationship type. + type: string + type: object + RelationshipToAccessTokenOwner: + description: Relationship to the access token's owner. + properties: + data: + $ref: "#/components/schemas/RelationshipToAccessTokenOwnerData" + required: + - data + type: object + RelationshipToAccessTokenOwnerData: + description: Relationship to the access token's owner. + properties: + id: + description: A unique identifier that represents the owner. + example: "00000000-0000-0000-2345-000000000000" + type: string + type: + $ref: "#/components/schemas/AccessTokenOwnerType" + required: + - id + - type + type: object + RelationshipToIncident: + description: Relationship to incident. + properties: + data: + $ref: "#/components/schemas/RelationshipToIncidentData" + required: + - data + type: object + RelationshipToIncidentAttachment: + description: A relationship reference for attachments. + properties: + data: + description: |- + An array of incident attachments. + items: + $ref: "#/components/schemas/RelationshipToIncidentAttachmentData" + type: array + required: + - data + type: object + RelationshipToIncidentAttachmentData: + description: The attachment relationship data. + properties: + id: + description: A unique identifier that represents the attachment. + example: "00000000-0000-abcd-1000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentAttachmentType" + required: + - id + - type + type: object + RelationshipToIncidentData: + description: Relationship to incident object. + properties: + id: + description: A unique identifier that represents the incident. + example: "00000000-0000-0000-1234-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentType" + required: + - id + - type + type: object + RelationshipToIncidentImpactData: + description: Relationship to impact object. + properties: + id: + description: A unique identifier that represents the impact. + example: "00000000-0000-0000-2345-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentImpactsType" + required: + - id + - type + type: object + RelationshipToIncidentImpacts: + description: Relationship to impacts. + properties: + data: + description: An array of incident impacts. + items: + $ref: "#/components/schemas/RelationshipToIncidentImpactData" + type: array + required: + - data + type: object + RelationshipToIncidentIntegrationMetadataData: + description: A relationship reference for an integration metadata object. + example: {"id": "00000000-abcd-0002-0000-000000000000", "type": "incident_integrations"} + properties: + id: + description: A unique identifier that represents the integration metadata. + example: "00000000-abcd-0001-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentIntegrationMetadataType" + required: + - id + - type + type: object + RelationshipToIncidentIntegrationMetadatas: + description: A relationship reference for multiple integration metadata objects. + example: {"data": [{"id": "00000000-abcd-0005-0000-000000000000", "type": "incident_integrations"}, {"id": "00000000-abcd-0006-0000-000000000000", "type": "incident_integrations"}]} + properties: + data: + description: Integration metadata relationship array + example: [{"id": "00000000-abcd-0003-0000-000000000000", "type": "incident_integrations"}, {"id": "00000000-abcd-0004-0000-000000000000", "type": "incident_integrations"}] + items: + $ref: "#/components/schemas/RelationshipToIncidentIntegrationMetadataData" + type: array + required: + - data + type: object + RelationshipToIncidentNotificationTemplate: + description: A relationship reference to a notification template. + properties: + data: + $ref: "#/components/schemas/RelationshipToIncidentNotificationTemplateData" + required: + - data + type: object + RelationshipToIncidentNotificationTemplateData: + description: The notification template relationship data. + properties: + id: + description: The unique identifier of the notification template. + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + type: + $ref: "#/components/schemas/IncidentNotificationTemplateType" + required: + - id + - type + type: object + RelationshipToIncidentPostmortem: + description: A relationship reference for postmortems. + example: {"data": {"id": "00000000-0000-abcd-3000-000000000000", "type": "incident_postmortems"}} + properties: + data: + $ref: "#/components/schemas/RelationshipToIncidentPostmortemData" + required: + - data + type: object + RelationshipToIncidentPostmortemData: + description: The postmortem relationship data. + example: {"id": "00000000-0000-abcd-2000-000000000000", "type": "incident_postmortems"} + properties: + id: + description: A unique identifier that represents the postmortem. + example: "00000000-0000-abcd-1000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentPostmortemType" + required: + - id + - type + type: object + RelationshipToIncidentRequest: + description: Relationship to incident request + properties: + data: + $ref: "#/components/schemas/IncidentRelationshipData" + required: + - data + type: object + RelationshipToIncidentResponderData: + description: Relationship to impact object. + properties: + id: + description: A unique identifier that represents the responder. + example: "00000000-0000-0000-2345-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentRespondersType" + required: + - id + - type + type: object + RelationshipToIncidentResponders: + description: Relationship to incident responders. + properties: + data: + description: An array of incident responders. + items: + $ref: "#/components/schemas/RelationshipToIncidentResponderData" + type: array + required: + - data + type: object + RelationshipToIncidentType: + description: Relationship to an incident type. + properties: + data: + $ref: "#/components/schemas/RelationshipToIncidentTypeData" + required: + - data + type: object + RelationshipToIncidentTypeData: + description: Relationship to incident type object. + properties: + id: + description: The incident type's ID. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentTypeType" + required: + - id + - type + type: object + RelationshipToIncidentUserDefinedFieldData: + description: Relationship to impact object. + properties: + id: + description: A unique identifier that represents the responder. + example: "00000000-0000-0000-2345-000000000000" + type: string + type: + $ref: "#/components/schemas/IncidentUserDefinedFieldType" + required: + - id + - type + type: object + RelationshipToIncidentUserDefinedFields: + description: Relationship to incident user defined fields. + properties: + data: + description: An array of user defined fields. + items: + $ref: "#/components/schemas/RelationshipToIncidentUserDefinedFieldData" + type: array + required: + - data + type: object + RelationshipToOrganization: + description: Relationship to an organization. + properties: + data: + $ref: "#/components/schemas/RelationshipToOrganizationData" + required: + - data + type: object + RelationshipToOrganizationData: + description: Relationship to organization object. + properties: + id: + description: ID of the organization. + example: "00000000-0000-beef-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/OrganizationsType" + required: + - id + - type + type: object + RelationshipToOrganizations: + description: Relationship to organizations. + properties: + data: + description: Relationships to organization objects. + example: [] + items: + $ref: "#/components/schemas/RelationshipToOrganizationData" + type: array + required: + - data + type: object + RelationshipToOutcome: + description: The JSON:API relationship to a scorecard outcome. + properties: + data: + $ref: "#/components/schemas/RelationshipToOutcomeData" + type: object + RelationshipToOutcomeData: + description: The JSON:API relationship to an outcome, which returns the related rule id. + properties: + id: + $ref: "#/components/schemas/RuleId" + type: + $ref: "#/components/schemas/RuleType" + type: object + RelationshipToPermission: + description: Relationship to a permissions object. + properties: + data: + $ref: "#/components/schemas/RelationshipToPermissionData" + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: "#/components/schemas/PermissionsType" + type: object + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: "#/components/schemas/RelationshipToPermissionData" + type: array + type: object + RelationshipToRole: + description: Relationship to role. + properties: + data: + $ref: "#/components/schemas/RelationshipToRoleData" + type: object + RelationshipToRoleData: + description: Relationship to role object. + properties: + id: + description: The unique identifier of the role. + example: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d" + type: string + type: + $ref: "#/components/schemas/RolesType" + type: object + RelationshipToRoles: + description: Relationship to roles. + properties: + data: + description: An array containing type and the unique identifier of a role. + items: + $ref: "#/components/schemas/RelationshipToRoleData" + type: array + type: object + RelationshipToRule: + description: Scorecard create rule response relationship. + properties: + scorecard: + $ref: "#/components/schemas/RelationshipToRuleData" + type: object + RelationshipToRuleData: + description: Relationship data for a rule. + properties: + data: + $ref: "#/components/schemas/RelationshipToRuleDataObject" + type: object + RelationshipToRuleDataObject: + description: Rule relationship data. + properties: + id: + description: The unique ID for a scorecard. + example: q8MQxk8TCqrHnWkp + type: string + type: + $ref: "#/components/schemas/ScorecardType" + type: object + RelationshipToSAMLAssertionAttribute: + description: AuthN Mapping relationship to SAML Assertion Attribute. + properties: + data: + $ref: "#/components/schemas/RelationshipToSAMLAssertionAttributeData" + required: + - data + type: object + RelationshipToSAMLAssertionAttributeData: + description: Data of AuthN Mapping relationship to SAML Assertion Attribute. + properties: + id: + description: The ID of the SAML assertion attribute. + example: "0" + type: string + type: + $ref: "#/components/schemas/SAMLAssertionAttributesType" + required: + - id + - type + type: object + RelationshipToServiceAccount: + description: Relationship to service account. + properties: + data: + $ref: "#/components/schemas/RelationshipToServiceAccountData" + required: + - data + type: object + RelationshipToServiceAccountData: + description: Relationship to service account object. + properties: + id: + description: A unique identifier that represents the service account. + example: "00000000-0000-0000-2345-000000000000" + type: string + type: + $ref: "#/components/schemas/ServiceAccountType" + required: + - id + - type + type: object + RelationshipToTeam: + description: Relationship to team. + properties: + data: + $ref: "#/components/schemas/RelationshipToTeamData" + type: object + RelationshipToTeamData: + description: Relationship to Team object. + properties: + id: + description: The unique identifier of the team. + example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/TeamType" + type: object + RelationshipToTeamLinkData: + description: Relationship between a link and a team + properties: + id: + description: The team link's identifier + example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/TeamLinkType" + required: + - id + - type + type: object + RelationshipToTeamLinks: + description: Relationship between a team and a team link + properties: + data: + description: Related team links + items: + $ref: "#/components/schemas/RelationshipToTeamLinkData" + type: array + links: + $ref: "#/components/schemas/TeamRelationshipsLinks" + type: object + RelationshipToUser: + description: Relationship to user. + properties: + data: + $ref: "#/components/schemas/RelationshipToUserData" + required: + - data + type: object + RelationshipToUserData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: "00000000-0000-0000-2345-000000000000" + type: string + type: + $ref: "#/components/schemas/UsersType" + required: + - id + - type + type: object + RelationshipToUserTeamPermission: + description: Relationship between a user team permission and a team + properties: + data: + $ref: "#/components/schemas/RelationshipToUserTeamPermissionData" + links: + $ref: "#/components/schemas/TeamRelationshipsLinks" + type: object + RelationshipToUserTeamPermissionData: + description: Related user team permission data + nullable: true + properties: + id: + description: The ID of the user team permission + example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 + type: string + type: + $ref: "#/components/schemas/UserTeamPermissionType" + required: + - id + - type + type: object + RelationshipToUserTeamTeam: + description: Relationship between team membership and team + properties: + data: + $ref: "#/components/schemas/RelationshipToUserTeamTeamData" + required: + - data + type: object + RelationshipToUserTeamTeamData: + description: The team associated with the membership + properties: + id: + description: The ID of the team associated with the membership + example: d7e15d9d-d346-43da-81d8-3d9e71d9a5e9 + type: string + type: + $ref: "#/components/schemas/UserTeamTeamType" + required: + - id + - type + type: object + RelationshipToUserTeamUser: + description: Relationship between team membership and user + properties: + data: + $ref: "#/components/schemas/RelationshipToUserTeamUserData" + required: + - data + type: object + RelationshipToUserTeamUserData: + description: A user's relationship with a team + properties: + id: + description: The ID of the user associated with the team + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/UserTeamUserType" + required: + - id + - type + type: object + RelationshipToUsers: + description: Relationship to users. + properties: + data: + description: Relationships to user objects. + example: [] + items: + $ref: "#/components/schemas/RelationshipToUserData" + type: array + required: + - data + type: object + Remediation: + description: Vulnerability remediation. + properties: + auto_solvable: + description: Whether the vulnerability can be resolved when recompiling the package or not. + example: false + type: boolean + avoided_advisories: + description: Avoided advisories. + items: + $ref: "#/components/schemas/Advisory" + type: array + fixed_advisories: + description: Remediation fixed advisories. + items: + $ref: "#/components/schemas/Advisory" + type: array + library_name: + description: Library name remediating the vulnerability. + example: stdlib + type: string + library_version: + description: Library version remediating the vulnerability. + example: Upgrade to a version >= 1.20.0 + type: string + new_advisories: + description: New advisories. + items: + $ref: "#/components/schemas/Advisory" + type: array + remaining_advisories: + description: Remaining advisories. + items: + $ref: "#/components/schemas/Advisory" + type: array + type: + description: Remediation type. + example: text + type: string + required: + - type + - library_name + - library_version + - auto_solvable + - fixed_advisories + - remaining_advisories + - new_advisories + - avoided_advisories + type: object + ReorderRetentionFiltersRequest: + description: A list of retention filters to reorder. + properties: + data: + description: A list of retention filters objects. + items: + $ref: "#/components/schemas/RetentionFilterWithoutAttributes" + type: array + required: + - data + type: object + ReorderRuleResourceArray: + description: The definition of `ReorderRuleResourceArray` object. + example: + data: + - id: "456" + type: arbitrary_rule + - id: "123" + type: arbitrary_rule + - id: "789" + type: arbitrary_rule + properties: + data: + description: The `ReorderRuleResourceArray` `data`. + items: + $ref: "#/components/schemas/ReorderRuleResourceData" + type: array + required: + - data + type: object + ReorderRuleResourceData: + description: The definition of `ReorderRuleResourceData` object. + properties: + id: + description: The `ReorderRuleResourceData` `id`. + type: string + type: + $ref: "#/components/schemas/ReorderRuleResourceDataType" + required: + - type + type: object + ReorderRuleResourceDataType: + default: arbitrary_rule + description: Arbitrary rule resource type. + enum: + - arbitrary_rule + example: arbitrary_rule + type: string + x-enum-varnames: + - ARBITRARY_RULE + ReorderRulesetResourceArray: + description: The definition of `ReorderRulesetResourceArray` object. + example: + data: + - id: "55ef2385-9ae1-4410-90c4-5ac1b60fec10" + type: ruleset + - id: "a7b8c9d0-1234-5678-9abc-def012345678" + type: ruleset + - id: "f1e2d3c4-b5a6-9780-1234-567890abcdef" + type: ruleset + properties: + data: + description: The `ReorderRulesetResourceArray` `data`. + items: + $ref: "#/components/schemas/ReorderRulesetResourceData" + type: array + required: + - data + type: object + ReorderRulesetResourceData: + description: The definition of `ReorderRulesetResourceData` object. + properties: + id: + description: The `ReorderRulesetResourceData` `id`. + type: string + type: + $ref: "#/components/schemas/ReorderRulesetResourceDataType" + required: + - type + type: object + ReorderRulesetResourceDataType: + default: ruleset + description: Ruleset resource type. + enum: + - ruleset + example: ruleset + type: string + x-enum-varnames: + - RULESET + ReportScheduleAuthor: + description: A user included as a related JSON:API resource. + properties: + attributes: + $ref: "#/components/schemas/ReportScheduleAuthorAttributes" + id: + description: The user UUID. + example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: string + type: + $ref: "#/components/schemas/ReportScheduleAuthorType" + required: + - type + - id + - attributes + type: object + ReportScheduleAuthorAttributes: + description: Attributes of the report author. + properties: + email: + description: The email address of the report author, or `null` if unavailable. + example: "user@example.com" + nullable: true + type: string + name: + description: The display name of the report author, or `null` if unavailable. + example: "Example User" + nullable: true + type: string + required: + - name + - email + type: object + ReportScheduleAuthorRelationship: + description: Relationship to the author of the report schedule. + properties: + data: + $ref: "#/components/schemas/ReportScheduleAuthorRelationshipData" + required: + - data + type: object + ReportScheduleAuthorRelationshipData: + description: Relationship data for the author of the report schedule. + properties: + id: + description: The user UUID of the report schedule author. + example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: string + type: + $ref: "#/components/schemas/ReportScheduleAuthorType" + required: + - id + - type + type: object + ReportScheduleAuthorType: + description: JSON:API resource type for the included report author. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ReportScheduleCreateRequest: + description: Request body for creating a report schedule. + properties: + data: + $ref: "#/components/schemas/ReportScheduleCreateRequestData" + required: + - data + type: object + ReportScheduleCreateRequestAttributes: + description: The configuration of the report schedule to create. + properties: + delivery_format: + $ref: "#/components/schemas/ReportScheduleDeliveryFormat" + description: + description: A description of the report, up to 4096 characters. + example: "Weekly summary of infrastructure health." + maxLength: 4096 + type: string + recipients: + description: |- + The recipients of the report. Each entry is an email address, a Slack channel + reference in the form `slack:{team_id}.{channel_id}.{channel_name}`, or a Microsoft + Teams channel reference in the form `teams:{tenant_id}|{team_id}|{channel_id}`. + example: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the dashboard or integration dashboard to render in the report. + example: "abc-def-ghi" + type: string + resource_type: + $ref: "#/components/schemas/ReportScheduleResourceType" + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + type: string + tab_id: + description: The identifier of the dashboard tab to render, when the dashboard has tabs. + example: "66666666-7777-8888-9999-000000000000" + format: uuid + type: string + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: "#/components/schemas/ReportScheduleTemplateVariable" + type: array + timeframe: + description: The relative timeframe of data to include in the report. + example: "1w" + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: "America/New_York" + type: string + title: + description: The title of the report, between 1 and 78 characters. + example: "Weekly Infrastructure Report" + maxLength: 78 + minLength: 1 + type: string + required: + - resource_id + - resource_type + - recipients + - rrule + - timezone + - template_variables + - timeframe + - title + - description + type: object + ReportScheduleCreateRequestData: + description: The JSON:API data object for a report schedule creation request. + properties: + attributes: + $ref: "#/components/schemas/ReportScheduleCreateRequestAttributes" + type: + $ref: "#/components/schemas/ReportScheduleType" + required: + - type + - attributes + type: object + ReportScheduleDeliveryFormat: + description: |- + How a PDF-export report is delivered. `pdf` attaches a PDF file, `png` embeds + an inline PNG image, and `pdf_and_png` delivers both. + enum: + - pdf + - png + - pdf_and_png + example: pdf + type: string + x-enum-varnames: + - PDF + - PNG + - PDF_AND_PNG + ReportScheduleIncludedResource: + description: A related resource included with a report schedule. + oneOf: + - $ref: "#/components/schemas/ReportScheduleAuthor" + - $ref: "#/components/schemas/ReportScheduleResource" + ReportScheduleIncludedResourceType: + description: JSON:API resource type for an included report resource. + enum: + - resource + example: resource + type: string + x-enum-varnames: + - RESOURCE + ReportScheduleIndexTemplateVariable: + description: Template variable metadata from a dashboard index. + properties: + available_values: + description: Available values for the template variable. + example: + - prod + - staging + items: + type: string + nullable: true + type: array + defaults: + description: Default values for the template variable. + example: + - prod + items: + type: string + nullable: true + type: array + name: + description: The template variable name. + example: env + nullable: true + type: string + prefix: + description: The tag prefix for the template variable, when available. + example: env + nullable: true + type: string + type: object + ReportScheduleListResourceRelationship: + description: Relationship to the report target resource. + properties: + data: + $ref: "#/components/schemas/ReportScheduleListResourceRelationshipData" + required: + - data + type: object + ReportScheduleListResourceRelationshipData: + description: Relationship data for the report target resource. + properties: + id: + description: The resource identifier. + example: "abc-def-ghi" + type: string + type: + $ref: "#/components/schemas/ReportScheduleIncludedResourceType" + required: + - id + - type + type: object + ReportScheduleListResponse: + description: Response containing a list of report schedules. + properties: + data: + description: The list of report schedules. + items: + $ref: "#/components/schemas/ReportScheduleListResponseData" + type: array + included: + description: Related resources included with the report schedules, such as authors and rendered resources. + items: + $ref: "#/components/schemas/ReportScheduleIncludedResource" + type: array + links: + $ref: "#/components/schemas/ReportScheduleListResponseLinks" + meta: + $ref: "#/components/schemas/ReportScheduleListResponseMeta" + required: + - data + type: object + ReportScheduleListResponseAttributes: + description: The configuration and derived state of a report schedule in a list response. + properties: + delivery_format: + $ref: "#/components/schemas/ReportScheduleResponseAttributesDeliveryFormat" + description: + description: The description of the report. + example: "Weekly summary of infrastructure health." + type: string + next_recurrence: + description: The Unix timestamp, in milliseconds, of the next scheduled delivery, or `null` if none is scheduled. + example: 1780923600000 + format: int64 + nullable: true + type: integer + recipients: + description: The recipients of the report (email addresses, Slack channel references, or Microsoft Teams channel references). + example: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the resource rendered in the report. + example: "abc-def-ghi" + type: string + resource_type: + $ref: "#/components/schemas/ReportScheduleResourceType" + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + type: string + status: + $ref: "#/components/schemas/ReportScheduleStatus" + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: "#/components/schemas/ReportScheduleTemplateVariable" + type: array + timeframe: + description: The relative timeframe of data included in the report, or `null` if not set. + example: "1w" + nullable: true + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: "America/New_York" + type: string + title: + description: The title of the report. + example: "Weekly Infrastructure Report" + type: string + required: + - status + - resource_id + - resource_type + - recipients + - rrule + - timezone + - template_variables + - title + - description + - timeframe + - next_recurrence + type: object + ReportScheduleListResponseData: + description: The JSON:API data object representing a report schedule in a list response. + properties: + attributes: + $ref: "#/components/schemas/ReportScheduleListResponseAttributes" + id: + description: The unique identifier of the report schedule. + example: "11111111-2222-3333-4444-555555555555" + type: string + relationships: + $ref: "#/components/schemas/ReportScheduleListResponseRelationships" + type: + $ref: "#/components/schemas/ReportScheduleType" + required: + - id + - type + - attributes + - relationships + type: object + ReportScheduleListResponseLinks: + description: Pagination links for navigating a report schedule list response. + properties: + first: + description: Link to the first page. + example: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25" + nullable: true + type: string + last: + description: Link to the last page, or `null` if it is unavailable. + example: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25" + nullable: true + type: string + next: + description: Link to the next page, or `null` if it is unavailable. + example: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=25&page[limit]=25" + nullable: true + type: string + prev: + description: Link to the previous page, or `null` if it is unavailable. + example: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25" + nullable: true + type: string + self: + description: Link to the current page. + example: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[limit]=25" + nullable: true + type: string + type: object + ReportScheduleListResponseMeta: + description: Metadata for a paginated report schedule list response. + properties: + pagination: + $ref: "#/components/schemas/ReportScheduleListResponsePagination" + type: object + ReportScheduleListResponsePagination: + description: Offset and limit pagination metadata for a report schedule list response. + properties: + first_offset: + description: The first offset. + example: 0 + format: int64 + type: integer + last_offset: + description: The last offset when the total count is known, or `null` if it is unavailable. + example: 0 + format: int64 + nullable: true + type: integer + limit: + description: The maximum number of schedules returned. + example: 25 + format: int64 + type: integer + next_offset: + description: The next offset. + example: 25 + format: int64 + type: integer + offset: + description: The current offset. + example: 0 + format: int64 + type: integer + prev_offset: + description: The previous offset. + example: 0 + format: int64 + type: integer + total: + description: The total number of matching schedules. + example: 1 + format: int64 + type: integer + type: + $ref: "#/components/schemas/ReportScheduleListResponsePaginationType" + type: object + ReportScheduleListResponsePaginationType: + description: The pagination type. + enum: + - offset_limit + example: offset_limit + type: string + x-enum-varnames: + - OFFSET_LIMIT + ReportScheduleListResponseRelationships: + description: Relationships for a report schedule in a list response. + properties: + author: + $ref: "#/components/schemas/ReportScheduleAuthorRelationship" + resource: + $ref: "#/components/schemas/ReportScheduleListResourceRelationship" + required: + - author + type: object + ReportSchedulePatchRequest: + description: Request body for updating a report schedule. + properties: + data: + $ref: "#/components/schemas/ReportSchedulePatchRequestData" + required: + - data + type: object + ReportSchedulePatchRequestAttributes: + description: |- + The updated configuration of the report schedule. These values replace the existing + ones; the targeted resource (`resource_id` and `resource_type`) cannot be changed. + properties: + delivery_format: + $ref: "#/components/schemas/ReportScheduleDeliveryFormat" + description: + description: A description of the report, up to 4096 characters. + example: "Updated weekly summary of infrastructure health." + maxLength: 4096 + type: string + recipients: + description: |- + The recipients of the report. Each entry is an email address, a Slack channel + reference in the form `slack:{team_id}.{channel_id}.{channel_name}`, or a Microsoft + Teams channel reference in the form `teams:{tenant_id}|{team_id}|{channel_id}`. + example: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + type: string + tab_id: + description: The identifier of the dashboard tab to render, when the dashboard has tabs. + example: "66666666-7777-8888-9999-000000000000" + format: uuid + type: string + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: "#/components/schemas/ReportScheduleTemplateVariable" + type: array + timeframe: + description: The relative timeframe of data to include in the report. + example: "1w" + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: "America/New_York" + type: string + title: + description: The title of the report, between 1 and 78 characters. + example: "Weekly Infrastructure Report" + maxLength: 78 + minLength: 1 + type: string + required: + - recipients + - rrule + - timezone + - template_variables + - timeframe + - title + - description + type: object + ReportSchedulePatchRequestData: + description: The JSON:API data object for a report schedule update request. + properties: + attributes: + $ref: "#/components/schemas/ReportSchedulePatchRequestAttributes" + type: + $ref: "#/components/schemas/ReportScheduleType" + required: + - type + - attributes + type: object + ReportScheduleResource: + description: A report target resource included as a related JSON:API resource. + properties: + attributes: + $ref: "#/components/schemas/ReportScheduleResourceAttributes" + id: + description: The resource identifier. + example: "abc-def-ghi" + type: string + type: + $ref: "#/components/schemas/ReportScheduleIncludedResourceType" + required: + - type + - id + - attributes + type: object + ReportScheduleResourceAttributes: + description: Attributes of an included report target resource. + properties: + resource_type: + $ref: "#/components/schemas/ReportScheduleResourceType" + template_variables: + description: Template variable metadata from the dashboard resource, when available. + items: + $ref: "#/components/schemas/ReportScheduleIndexTemplateVariable" + nullable: true + type: array + title: + description: The title of the dashboard or integration dashboard resource, when available. + example: "Infrastructure Overview" + nullable: true + type: string + required: + - resource_type + type: object + ReportScheduleResourceType: + description: The type of dashboard resource the report schedule targets. + enum: + - dashboard + - integration_dashboard + example: dashboard + type: string + x-enum-varnames: + - DASHBOARD + - INTEGRATION_DASHBOARD + ReportScheduleResponse: + description: Response containing a single report schedule. + properties: + data: + $ref: "#/components/schemas/ReportScheduleResponseData" + included: + description: Related resources included with the report schedule, such as the author. + items: + $ref: "#/components/schemas/ReportScheduleIncludedResource" + type: array + required: + - data + type: object + ReportScheduleResponseAttributes: + description: The configuration and derived state of a report schedule. + properties: + delivery_format: + $ref: "#/components/schemas/ReportScheduleResponseAttributesDeliveryFormat" + description: + description: The description of the report. + example: "Weekly summary of infrastructure health." + type: string + next_recurrence: + description: The Unix timestamp, in milliseconds, of the next scheduled delivery, or `null` if none is scheduled. + example: 1780923600000 + format: int64 + nullable: true + type: integer + recipients: + description: The recipients of the report (email addresses, Slack channel references, or Microsoft Teams channel references). + example: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the resource rendered in the report. + example: "abc-def-ghi" + type: string + resource_type: + $ref: "#/components/schemas/ReportScheduleResourceType" + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + type: string + status: + $ref: "#/components/schemas/ReportScheduleStatus" + tab_id: + description: The identifier of the dashboard tab rendered in the report, or `null` if not set. + example: "66666666-7777-8888-9999-000000000000" + nullable: true + type: string + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: "#/components/schemas/ReportScheduleTemplateVariable" + type: array + timeframe: + description: The relative timeframe of data included in the report, or `null` if not set. + example: "1w" + nullable: true + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: "America/New_York" + type: string + title: + description: The title of the report. + example: "Weekly Infrastructure Report" + type: string + required: + - status + - resource_id + - resource_type + - recipients + - rrule + - timezone + - template_variables + - title + - description + - timeframe + - next_recurrence + - tab_id + type: object + ReportScheduleResponseAttributesDeliveryFormat: + description: The delivery format for dashboard report schedules, or `null` if not set. + enum: + - pdf + - png + - pdf_and_png + example: pdf + nullable: true + type: string + x-enum-varnames: + - PDF + - PNG + - PDF_AND_PNG + ReportScheduleResponseData: + description: The JSON:API data object representing a report schedule. + properties: + attributes: + $ref: "#/components/schemas/ReportScheduleResponseAttributes" + id: + description: The unique identifier of the report schedule. + example: "11111111-2222-3333-4444-555555555555" + type: string + relationships: + $ref: "#/components/schemas/ReportScheduleResponseRelationships" + type: + $ref: "#/components/schemas/ReportScheduleType" + required: + - id + - type + - attributes + - relationships + type: object + ReportScheduleResponseRelationships: + description: Relationships for the report schedule. + properties: + author: + $ref: "#/components/schemas/ReportScheduleAuthorRelationship" + required: + - author + type: object + ReportScheduleStatus: + description: Whether the schedule is currently delivering reports (`active`) or paused (`inactive`). + enum: + - active + - inactive + example: active + type: string + x-enum-varnames: + - ACTIVE + - INACTIVE + ReportScheduleTemplateVariable: + description: A dashboard template variable applied when rendering the report. + properties: + name: + description: The name of the template variable. + example: env + type: string + values: + description: The selected values for the template variable. + example: + - "prod" + items: + description: A single selected template variable value. + type: string + type: array + required: + - name + - values + type: object + ReportScheduleToggleRequest: + description: Request body for toggling a report schedule. + properties: + data: + $ref: "#/components/schemas/ReportScheduleToggleRequestData" + required: + - data + type: object + ReportScheduleToggleRequestAttributes: + description: The status to set on the report schedule. + properties: + status: + $ref: "#/components/schemas/ReportScheduleStatus" + required: + - status + type: object + ReportScheduleToggleRequestData: + description: The JSON:API data object for a report schedule toggle request. + properties: + attributes: + $ref: "#/components/schemas/ReportScheduleToggleRequestAttributes" + type: + $ref: "#/components/schemas/ReportScheduleType" + required: + - type + - attributes + type: object + ReportScheduleType: + description: JSON:API resource type for report schedules. + enum: + - schedule + example: schedule + type: string + x-enum-varnames: + - SCHEDULE + ResolveVulnerableSymbolsRequest: + description: The top-level request object for resolving vulnerable symbols in a set of packages. + properties: + data: + $ref: "#/components/schemas/ResolveVulnerableSymbolsRequestData" + type: object + ResolveVulnerableSymbolsRequestData: + description: The data object in a request to resolve vulnerable symbols, containing the package PURLs and request type. + properties: + attributes: + $ref: "#/components/schemas/ResolveVulnerableSymbolsRequestDataAttributes" + id: + description: An optional identifier for this request data object. + type: string + type: + $ref: "#/components/schemas/ResolveVulnerableSymbolsRequestDataType" + required: + - type + type: object + ResolveVulnerableSymbolsRequestDataAttributes: + description: The attributes of a request to resolve vulnerable symbols, containing the list of package PURLs to check. + properties: + purls: + description: The list of Package URLs (PURLs) for which to resolve vulnerable symbols. + items: + description: A Package URL (PURL) identifying a specific package and version. + type: string + type: array + type: object + ResolveVulnerableSymbolsRequestDataType: + default: resolve-vulnerable-symbols-request + description: The type identifier for requests to resolve vulnerable symbols. + enum: + - resolve-vulnerable-symbols-request + example: resolve-vulnerable-symbols-request + type: string + x-enum-varnames: + - RESOLVE_VULNERABLE_SYMBOLS_REQUEST + ResolveVulnerableSymbolsResponse: + description: The top-level response object returned when resolving vulnerable symbols for a set of packages. + properties: + data: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponseData" + type: object + ResolveVulnerableSymbolsResponseData: + description: The data object in a response for resolving vulnerable symbols, containing the result attributes and response type. + properties: + attributes: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponseDataAttributes" + id: + description: The unique identifier for this response data object. + type: string + type: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponseDataType" + required: + - type + type: object + ResolveVulnerableSymbolsResponseDataAttributes: + description: The attributes of a response containing resolved vulnerable symbols, organized by package. + properties: + results: + description: The list of resolved vulnerable symbol results, one entry per queried package. + items: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponseResults" + type: array + type: object + ResolveVulnerableSymbolsResponseDataType: + default: resolve-vulnerable-symbols-response + description: The type identifier for responses containing resolved vulnerable symbols. + enum: + - resolve-vulnerable-symbols-response + example: resolve-vulnerable-symbols-response + type: string + x-enum-varnames: + - RESOLVE_VULNERABLE_SYMBOLS_RESPONSE + ResolveVulnerableSymbolsResponseResults: + description: The result of resolving vulnerable symbols for a specific package, identified by its PURL. + properties: + purl: + description: The Package URL (PURL) uniquely identifying the package for which vulnerable symbols are resolved. + type: string + vulnerable_symbols: + description: The list of vulnerable symbol groups found in this package, organized by advisory. + items: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponseResultsVulnerableSymbols" + type: array + type: object + ResolveVulnerableSymbolsResponseResultsVulnerableSymbols: + description: A collection of vulnerable symbols associated with a specific security advisory. + properties: + advisory_id: + description: The identifier of the security advisory that describes the vulnerability. + type: string + symbols: + description: The list of symbols that are vulnerable according to this advisory. + items: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponseResultsVulnerableSymbolsSymbols" + type: array + type: object + ResolveVulnerableSymbolsResponseResultsVulnerableSymbolsSymbols: + description: A symbol identified as vulnerable within a dependency, including its name, type, and value. + properties: + name: + description: The name of the vulnerable symbol. + type: string + type: + description: The type classification of the vulnerable symbol (e.g., function, class, variable). + type: string + value: + description: The value or identifier associated with the vulnerable symbol. + type: string + type: object + ResourceFilterAttributes: + description: Attributes of a resource filter. + example: + aws: + "123456789": + - environment:production + - team:devops + azure: + sub-001: + - app:frontend + gcp: + project-abc: + - region:us-central1 + properties: + cloud_provider: + additionalProperties: + additionalProperties: + items: + description: Tag filter in format "key:value" + example: environment:production + type: string + type: array + type: object + description: A map of cloud provider names (e.g., "aws", "gcp", "azure") to a map of account/resource IDs and their associated tag filters. + type: object + uuid: + description: The UUID of the resource filter. + type: string + required: + - cloud_provider + type: object + ResourceFilterRequestType: + description: Constant string to identify the request type. + enum: + - csm_resource_filter + example: csm_resource_filter + type: string + x-enum-varnames: + - CSM_RESOURCE_FILTER + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: "#/components/schemas/Pagination" + type: object + RestrictionPolicy: + description: Restriction policy object. + properties: + attributes: + $ref: "#/components/schemas/RestrictionPolicyAttributes" + id: + description: The identifier, always equivalent to the value specified in the `resource_id` path parameter. + example: "dashboard:abc-def-ghi" + type: string + type: + $ref: "#/components/schemas/RestrictionPolicyType" + required: + - type + - id + - attributes + type: object + RestrictionPolicyAttributes: + description: Restriction policy attributes. + example: {"bindings": []} + properties: + bindings: + description: An array of bindings. + items: + $ref: "#/components/schemas/RestrictionPolicyBinding" + type: array + required: + - bindings + type: object + RestrictionPolicyBinding: + description: Specifies which principals are associated with a relation. + properties: + principals: + description: |- + An array of principals. A principal is a subject or group of subjects. + Each principal is formatted as `type:id`. Supported types: `role`, `team`, `user`, and `org`. + The org ID can be obtained through the api/v2/current_user API. + The user principal type accepts service account IDs. + example: ["role:00000000-0000-1111-0000-000000000000"] + items: + description: |- + Subject or group of subjects. Each principal is formatted as `type:id`. + Supported types: `role`, `team`, `user`, and `org`. + The org ID can be obtained through the api/v2/current_user API. + The user principal type accepts service account IDs. + type: string + type: array + relation: + description: The role/level of access. + example: editor + type: string + required: + - relation + - principals + type: object + RestrictionPolicyResponse: + description: Response containing information about a single restriction policy. + properties: + data: + $ref: "#/components/schemas/RestrictionPolicy" + required: + - data + type: object + RestrictionPolicyType: + default: restriction_policy + description: Restriction policy type. + enum: + - restriction_policy + example: restriction_policy + type: string + x-enum-varnames: + - RESTRICTION_POLICY + RestrictionPolicyUpdateRequest: + description: Update request for a restriction policy. + properties: + data: + $ref: "#/components/schemas/RestrictionPolicy" + required: + - data + type: object + RestrictionQueryAttributes: + description: Attributes of the restriction query. + properties: + created_at: + description: Creation time of the restriction query. + example: "2020-03-17T21:06:44.000Z" + format: date-time + readOnly: true + type: string + last_modifier_email: + description: Email of the user who last modified this restriction query. + example: "user@example.com" + readOnly: true + type: string + last_modifier_name: + description: Name of the user who last modified this restriction query. + example: "John Doe" + readOnly: true + type: string + modified_at: + description: Time of last restriction query modification. + example: "2020-03-17T21:15:15.000Z" + format: date-time + readOnly: true + type: string + restriction_query: + description: The query that defines the restriction. Only the content matching the query can be returned. + example: "env:sandbox" + type: string + role_count: + description: Number of roles associated with this restriction query. + example: 3 + format: int64 + readOnly: true + type: integer + user_count: + description: Number of users associated with this restriction query. + example: 5 + format: int64 + readOnly: true + type: integer + type: object + RestrictionQueryCreateAttributes: + description: Attributes of the created restriction query. + properties: + restriction_query: + description: The restriction query. + example: "env:sandbox" + type: string + required: + - restriction_query + type: object + RestrictionQueryCreateData: + description: Data related to the creation of a restriction query. + properties: + attributes: + $ref: "#/components/schemas/RestrictionQueryCreateAttributes" + type: + $ref: "#/components/schemas/LogsRestrictionQueriesType" + type: object + RestrictionQueryCreatePayload: + description: Create a restriction query. + properties: + data: + $ref: "#/components/schemas/RestrictionQueryCreateData" + type: object + RestrictionQueryListResponse: + description: Response containing information about multiple restriction queries. + properties: + data: + description: Array of returned restriction queries. + items: + $ref: "#/components/schemas/RestrictionQueryWithoutRelationships" + type: array + type: object + RestrictionQueryResponseIncludedItem: + description: An object related to a restriction query. + oneOf: + - $ref: "#/components/schemas/RestrictionQueryRole" + RestrictionQueryRole: + description: Partial role object. + properties: + attributes: + $ref: "#/components/schemas/RestrictionQueryRoleAttribute" + id: + description: ID of the role. + example: "" + type: string + type: + $ref: "#/components/schemas/RolesType" + required: + - type + - id + - attributes + type: object + RestrictionQueryRoleAttribute: + description: Attributes of the role for a restriction query. + properties: + name: + description: The role name. + example: "Datadog Admin Role" + type: string + type: object + RestrictionQueryRolesResponse: + description: Response containing information about roles attached to a restriction query. + properties: + data: + description: Array of roles. + items: + $ref: "#/components/schemas/RestrictionQueryRole" + type: array + type: object + RestrictionQueryUpdateAttributes: + description: Attributes of the edited restriction query. + properties: + restriction_query: + description: The restriction query. + example: "env:sandbox" + type: string + required: + - restriction_query + type: object + RestrictionQueryUpdateData: + description: Data related to the update of a restriction query. + properties: + attributes: + $ref: "#/components/schemas/RestrictionQueryUpdateAttributes" + type: + $ref: "#/components/schemas/LogsRestrictionQueriesType" + type: object + RestrictionQueryUpdatePayload: + description: Update a restriction query. + properties: + data: + $ref: "#/components/schemas/RestrictionQueryUpdateData" + type: object + RestrictionQueryWithRelationships: + description: Restriction query object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/RestrictionQueryAttributes" + id: + description: ID of the restriction query. + example: "79a0e60a-644a-11ea-ad29-43329f7f58b5" + type: string + relationships: + $ref: "#/components/schemas/UserRelationships" + type: + $ref: "#/components/schemas/LogsRestrictionQueriesType" + type: object + RestrictionQueryWithRelationshipsResponse: + description: Response containing information about a single restriction query. + properties: + data: + $ref: "#/components/schemas/RestrictionQueryWithRelationships" + included: + description: Array of objects related to the restriction query. + items: + $ref: "#/components/schemas/RestrictionQueryResponseIncludedItem" + type: array + type: object + RestrictionQueryWithoutRelationships: + description: Restriction query object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/RestrictionQueryAttributes" + id: + description: ID of the restriction query. + example: "79a0e60a-644a-11ea-ad29-43329f7f58b5" + type: string + type: + default: logs_restriction_queries + description: Restriction queries type. + example: "logs_restriction_queries" + readOnly: true + type: string + type: object + RestrictionQueryWithoutRelationshipsResponse: + description: Response containing information about a single restriction query. + properties: + data: + $ref: "#/components/schemas/RestrictionQueryWithoutRelationships" + type: object + RetentionFilter: + description: The definition of the retention filter. + properties: + attributes: + $ref: "#/components/schemas/RetentionFilterAttributes" + id: + description: The ID of the retention filter. + example: "7RBOb7dLSYWI01yc3pIH8w" + type: string + type: + $ref: "#/components/schemas/ApmRetentionFilterType" + required: + - id + - type + - attributes + type: object + RetentionFilterAll: + description: The definition of the retention filter. + properties: + attributes: + $ref: "#/components/schemas/RetentionFilterAllAttributes" + id: + description: The ID of the retention filter. + example: "7RBOb7dLSYWI01yc3pIH8w" + type: string + type: + $ref: "#/components/schemas/ApmRetentionFilterType" + required: + - id + - type + - attributes + type: object + RetentionFilterAllAttributes: + description: The attributes of the retention filter. + properties: + created_at: + description: The creation timestamp of the retention filter. + format: int64 + type: integer + created_by: + description: The creator of the retention filter. + type: string + editable: + description: Shows whether the filter can be edited. + example: true + type: boolean + enabled: + description: The status of the retention filter (Enabled/Disabled). + example: true + type: boolean + execution_order: + description: The execution order of the retention filter. + format: int64 + type: integer + filter: + $ref: "#/components/schemas/SpansFilter" + filter_type: + $ref: "#/components/schemas/RetentionFilterAllType" + modified_at: + description: The modification timestamp of the retention filter. + format: int64 + type: integer + modified_by: + description: The modifier of the retention filter. + type: string + name: + description: The name of the retention filter. + example: my retention filter + type: string + rate: + description: |- + Sample rate to apply to spans going through this retention filter. + A value of 1.0 keeps all spans matching the query. + example: 1.0 + format: double + type: number + trace_rate: + description: |- + Sample rate to apply to traces containing spans going through this retention filter. + A value of 1.0 keeps all traces with spans matching the query. + example: 1.0 + format: double + type: number + type: object + RetentionFilterAllType: + default: spans-sampling-processor + description: The type of retention filter. + enum: + - spans-sampling-processor + - spans-errors-sampling-processor + - spans-appsec-sampling-processor + example: spans-sampling-processor + type: string + x-enum-varnames: + - SPANS_SAMPLING_PROCESSOR + - SPANS_ERRORS_SAMPLING_PROCESSOR + - SPANS_APPSEC_SAMPLING_PROCESSOR + RetentionFilterAttributes: + description: The attributes of the retention filter. + properties: + created_at: + description: The creation timestamp of the retention filter. + format: int64 + type: integer + created_by: + description: The creator of the retention filter. + type: string + editable: + description: Shows whether the filter can be edited. + example: true + type: boolean + enabled: + description: The status of the retention filter (Enabled/Disabled). + example: true + type: boolean + execution_order: + description: The execution order of the retention filter. + format: int64 + type: integer + filter: + $ref: "#/components/schemas/SpansFilter" + filter_type: + $ref: "#/components/schemas/RetentionFilterType" + modified_at: + description: The modification timestamp of the retention filter. + format: int64 + type: integer + modified_by: + description: The modifier of the retention filter. + type: string + name: + description: The name of the retention filter. + example: my retention filter + type: string + rate: + description: |- + Sample rate to apply to spans going through this retention filter. + A value of 1.0 keeps all spans matching the query. + example: 1.0 + format: double + type: number + trace_rate: + description: |- + Sample rate to apply to traces containing spans going through this retention filter. + A value of 1.0 keeps all traces with spans matching the query. + example: 1.0 + format: double + type: number + type: object + RetentionFilterCreateAttributes: + description: The object describing the configuration of the retention filter to create/update. + properties: + enabled: + description: Enable/Disable the retention filter. + example: true + type: boolean + filter: + $ref: "#/components/schemas/SpansFilterCreate" + filter_type: + $ref: "#/components/schemas/RetentionFilterType" + name: + description: The name of the retention filter. + example: my retention filter + type: string + rate: + description: |- + Sample rate to apply to spans going through this retention filter. + A value of 1.0 keeps all spans matching the query. + example: 1.0 + format: double + type: number + trace_rate: + description: |- + Sample rate to apply to traces containing spans going through this retention filter. + A value of 1.0 keeps all traces with spans matching the query. + example: 1.0 + format: double + type: number + required: + - name + - filter + - enabled + - filter_type + - rate + type: object + RetentionFilterCreateData: + description: The body of the retention filter to be created. + properties: + attributes: + $ref: "#/components/schemas/RetentionFilterCreateAttributes" + type: + $ref: "#/components/schemas/ApmRetentionFilterType" + required: + - attributes + - type + type: object + RetentionFilterCreateRequest: + description: The body of the retention filter to be created. + properties: + data: + $ref: "#/components/schemas/RetentionFilterCreateData" + required: + - data + type: object + RetentionFilterCreateResponse: + description: The retention filters definition. + properties: + data: + $ref: "#/components/schemas/RetentionFilter" + type: object + RetentionFilterResponse: + description: The retention filters definition. + properties: + data: + $ref: "#/components/schemas/RetentionFilterAll" + type: object + RetentionFilterType: + default: spans-sampling-processor + description: The type of retention filter. The value should always be spans-sampling-processor. + enum: + - spans-sampling-processor + example: spans-sampling-processor + type: string + x-enum-varnames: + - SPANS_SAMPLING_PROCESSOR + RetentionFilterUpdateAttributes: + description: The object describing the configuration of the retention filter to create/update. + properties: + enabled: + description: Enable/Disable the retention filter. + example: true + type: boolean + filter: + $ref: "#/components/schemas/SpansFilterCreate" + filter_type: + $ref: "#/components/schemas/RetentionFilterAllType" + name: + description: The name of the retention filter. + example: my retention filter + type: string + rate: + description: |- + Sample rate to apply to spans going through this retention filter. + A value of 1.0 keeps all spans matching the query. + example: 1.0 + format: double + type: number + trace_rate: + description: |- + Sample rate to apply to traces containing spans going through this retention filter. + A value of 1.0 keeps all traces with spans matching the query. + example: 1.0 + format: double + type: number + required: + - name + - filter + - enabled + - filter_type + - rate + type: object + RetentionFilterUpdateData: + description: The body of the retention filter to be updated. + properties: + attributes: + $ref: "#/components/schemas/RetentionFilterUpdateAttributes" + id: + description: The ID of the retention filter. + example: "retention-filter-id" + type: string + type: + $ref: "#/components/schemas/ApmRetentionFilterType" + required: + - id + - attributes + - type + type: object + RetentionFilterUpdateRequest: + description: The body of the retention filter to be updated. + properties: + data: + $ref: "#/components/schemas/RetentionFilterUpdateData" + required: + - data + type: object + RetentionFilterWithoutAttributes: + description: The retention filter object . + properties: + id: + description: The ID of the retention filter. + example: "7RBOb7dLSYWI01yc3pIH8w" + type: string + type: + $ref: "#/components/schemas/ApmRetentionFilterType" + required: + - id + - type + type: object + RetentionFiltersResponse: + description: An ordered list of retention filters. + properties: + data: + description: A list of retention filters objects. + items: + $ref: "#/components/schemas/RetentionFilterAll" + type: array + required: + - data + type: object + RetryStrategy: + additionalProperties: false + description: The definition of `RetryStrategy` object. + properties: + kind: + $ref: "#/components/schemas/RetryStrategyKind" + linear: + $ref: "#/components/schemas/RetryStrategyLinear" + required: + - kind + - linear + type: object + RetryStrategyKind: + description: The definition of `RetryStrategyKind` object. + enum: + - RETRY_STRATEGY_LINEAR + example: RETRY_STRATEGY_LINEAR + type: string + x-enum-varnames: + - RETRY_STRATEGY_LINEAR + RetryStrategyLinear: + additionalProperties: false + description: The definition of `RetryStrategyLinear` object. + properties: + interval: + description: The `RetryStrategyLinear` `interval`. The expected format is the number of seconds ending with an s. For example, 1 day is 86400s + example: "" + pattern: ^[1-9][0-9]*s$ + type: string + maxRetries: + description: The `RetryStrategyLinear` `maxRetries`. + example: 0 + format: int32 + maximum: 2147483647 + minimum: 0 + type: integer + required: + - interval + - maxRetries + type: object + RevertCustomRuleRevisionDataType: + description: Request type + enum: [revert_custom_rule_revision_request] + type: string + x-enum-varnames: + - REVERT_CUSTOM_RULE_REVISION_REQUEST + RevertCustomRuleRevisionRequest: + description: Request body for reverting a custom rule to a previous revision. + properties: + data: + $ref: "#/components/schemas/RevertCustomRuleRevisionRequestData" + type: object + RevertCustomRuleRevisionRequestData: + description: Data object for a request to revert a custom rule to a previous revision. + properties: + attributes: + $ref: "#/components/schemas/RevertCustomRuleRevisionRequestDataAttributes" + id: + description: Request identifier + type: string + type: + $ref: "#/components/schemas/RevertCustomRuleRevisionDataType" + type: object + RevertCustomRuleRevisionRequestDataAttributes: + description: Attributes specifying the current and target revision IDs for a revert operation. + properties: + currentRevision: + description: Current revision ID + type: string + revertToRevision: + description: Target revision ID to revert to + type: string + type: object + Role: + description: Role object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/RoleAttributes" + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: "#/components/schemas/RoleResponseRelationships" + type: + $ref: "#/components/schemas/RolesType" + required: + - type + type: object + RoleAttributes: + additionalProperties: {} + description: Attributes of the role. + properties: + created_at: + description: Creation time of the role. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last role modification. + format: date-time + readOnly: true + type: string + name: + description: The name of the role. The name is neither unique nor a stable identifier of the role. + type: string + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. + items: + description: Name of a managed role to inherit permissions from. + type: string + type: array + user_count: + description: Number of users with that role. + format: int64 + readOnly: true + type: integer + type: object + RoleClone: + description: Data for the clone role request. + properties: + attributes: + $ref: "#/components/schemas/RoleCloneAttributes" + type: + $ref: "#/components/schemas/RolesType" + required: + - type + - attributes + type: object + RoleCloneAttributes: + description: Attributes required to create a new role by cloning an existing one. + properties: + name: + description: Name of the new role that is cloned. + example: "cloned-role" + type: string + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. + items: + description: Name of a managed role to inherit permissions from. + type: string + type: array + required: + - name + type: object + RoleCloneRequest: + description: Request to create a role by cloning an existing role. + properties: + data: + $ref: "#/components/schemas/RoleClone" + required: + - data + type: object + RoleCreateAttributes: + description: Attributes of the created role. + properties: + created_at: + description: Creation time of the role. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last role modification. + format: date-time + readOnly: true + type: string + name: + description: Name of the role. + example: developers + type: string + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. + items: + description: Name of a managed role to inherit permissions from. + type: string + type: array + required: + - name + type: object + RoleCreateData: + description: Data related to the creation of a role. + properties: + attributes: + $ref: "#/components/schemas/RoleCreateAttributes" + relationships: + $ref: "#/components/schemas/RoleRelationships" + type: + $ref: "#/components/schemas/RolesType" + required: + - attributes + type: object + RoleCreateRequest: + description: Create a role. + properties: + data: + $ref: "#/components/schemas/RoleCreateData" + required: + - data + type: object + RoleCreateResponse: + description: Response containing information about a created role. + properties: + data: + $ref: "#/components/schemas/RoleCreateResponseData" + type: object + RoleCreateResponseData: + description: Role object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/RoleCreateAttributes" + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: "#/components/schemas/RoleResponseRelationships" + type: + $ref: "#/components/schemas/RolesType" + required: + - type + type: object + RoleRelationships: + description: Relationships of the role object. + properties: + permissions: + $ref: "#/components/schemas/RelationshipToPermissions" + type: object + RoleResponse: + description: Response containing information about a single role. + properties: + data: + $ref: "#/components/schemas/Role" + type: object + RoleResponseRelationships: + description: Relationships of the role object returned by the API. + properties: + permissions: + $ref: "#/components/schemas/RelationshipToPermissions" + type: object + RoleTemplateArray: + description: The definition of `RoleTemplateArray` object. + properties: + data: + description: The `RoleTemplateArray` `data`. + items: + $ref: "#/components/schemas/RoleTemplateData" + type: array + required: + - data + type: object + RoleTemplateData: + description: The definition of `RoleTemplateData` object. + properties: + attributes: + $ref: "#/components/schemas/RoleTemplateDataAttributes" + id: + description: The `RoleTemplateData` `id`. + type: string + type: + $ref: "#/components/schemas/RoleTemplateDataType" + required: + - type + type: object + RoleTemplateDataAttributes: + description: The definition of `RoleTemplateDataAttributes` object. + properties: + description: + description: The `attributes` `description`. + type: string + name: + description: The `attributes` `name`. + type: string + type: object + RoleTemplateDataType: + default: roles + description: Roles resource type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + RoleUpdateAttributes: + description: Attributes of the role. + properties: + created_at: + description: Creation time of the role. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last role modification. + format: date-time + readOnly: true + type: string + name: + description: Name of the role. + type: string + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. + items: + description: Name of a managed role to inherit permissions from. + type: string + type: array + user_count: + description: The user count. + format: int32 + maximum: 2147483647 + type: integer + type: object + RoleUpdateData: + description: Data related to the update of a role. + properties: + attributes: + $ref: "#/components/schemas/RoleUpdateAttributes" + id: + description: The unique identifier of the role. + example: "00000000-0000-1111-0000-000000000000" + type: string + relationships: + $ref: "#/components/schemas/RoleRelationships" + type: + $ref: "#/components/schemas/RolesType" + required: + - attributes + - type + - id + type: object + RoleUpdateRequest: + description: Update a role. + properties: + data: + $ref: "#/components/schemas/RoleUpdateData" + required: + - data + type: object + RoleUpdateResponse: + description: Response containing information about an updated role. + properties: + data: + $ref: "#/components/schemas/RoleUpdateResponseData" + type: object + RoleUpdateResponseData: + description: Role object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/RoleUpdateAttributes" + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: "#/components/schemas/RoleResponseRelationships" + type: + $ref: "#/components/schemas/RolesType" + required: + - type + type: object + RolesResponse: + description: Response containing information about multiple roles. + properties: + data: + description: Array of returned roles. + items: + $ref: "#/components/schemas/Role" + type: array + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + type: object + RolesSort: + default: name + description: Sorting options for roles. + enum: + - name + - -name + - modified_at + - -modified_at + - user_count + - -user_count + type: string + x-enum-varnames: + - NAME_ASCENDING + - NAME_DESCENDING + - MODIFIED_AT_ASCENDING + - MODIFIED_AT_DESCENDING + - USER_COUNT_ASCENDING + - USER_COUNT_DESCENDING + RolesType: + default: roles + description: Roles type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + RolloutOptions: + description: Applied progression options for a progressive rollout. + properties: + autostart: + description: Whether the schedule starts automatically. + example: false + type: boolean + selection_interval_ms: + description: Interval in milliseconds for uniform interval strategies. + example: 3600000 + format: int64 + type: integer + strategy: + $ref: "#/components/schemas/RolloutStrategy" + required: + - strategy + - autostart + - selection_interval_ms + type: object + RolloutOptionsRequest: + description: Rollout options request payload. + properties: + autostart: + description: Whether the schedule should begin automatically. + example: false + nullable: true + type: boolean + selection_interval_ms: + description: Interval in milliseconds for uniform interval strategies. + example: 3600000 + format: int64 + type: integer + strategy: + $ref: "#/components/schemas/RolloutStrategy" + required: + - strategy + type: object + RolloutStrategy: + description: The progression strategy used by a progressive rollout. + enum: + - UNIFORM_INTERVALS + - NO_ROLLOUT + example: "UNIFORM_INTERVALS" + type: string + x-enum-varnames: + - UNIFORM_INTERVALS + - NO_ROLLOUT + RoutingRule: + description: Represents a routing rule, including its attributes, relationships, and unique identifier. + properties: + attributes: + $ref: "#/components/schemas/RoutingRuleAttributes" + id: + description: Specifies the unique identifier of this routing rule. + type: string + relationships: + $ref: "#/components/schemas/RoutingRuleRelationships" + type: + $ref: "#/components/schemas/RoutingRuleType" + required: + - type + type: object + RoutingRuleAction: + description: "Defines an action that is executed when a routing rule matches certain criteria." + oneOf: + - $ref: "#/components/schemas/SendSlackMessageAction" + - $ref: "#/components/schemas/SendTeamsMessageAction" + - $ref: "#/components/schemas/TriggerWorkflowAutomationAction" + - $ref: "#/components/schemas/RoutingRuleEscalationPolicyAction" + RoutingRuleAttributes: + description: Defines the configurable attributes of a routing rule, such as actions, query, time restriction, and urgency. + properties: + actions: + description: Specifies the list of actions to perform when the routing rule matches. + items: + $ref: "#/components/schemas/RoutingRuleAction" + type: array + query: + description: Defines the query or condition that triggers this routing rule. + type: string + time_restriction: + $ref: "#/components/schemas/TimeRestrictions" + nullable: true + urgency: + $ref: "#/components/schemas/Urgency" + type: object + RoutingRuleEscalationPolicyAction: + description: "Triggers an escalation policy." + properties: + ack_timeout_minutes: + description: "The number of minutes before an acknowledged page is re-triggered." + example: 30 + format: int64 + type: integer + policy_id: + description: "The ID of the escalation policy to route to." + example: "00000000-0000-0000-0000-000000000000" + type: string + support_hours: + $ref: "#/components/schemas/RoutingRuleEscalationPolicyActionSupportHours" + type: + $ref: "#/components/schemas/RoutingRuleEscalationPolicyActionType" + urgency: + $ref: "#/components/schemas/Urgency" + required: + - type + - policy_id + type: object + RoutingRuleEscalationPolicyActionSupportHours: + description: "Support hours during which the escalation policy will be executed. Outside of these hours, the escalation policy will be on hold and triggered once the next support hours window starts. This is mutually exclusive with the top-level `time_restriction` field on the routing rule." + properties: + restrictions: + description: "The list of support hours time windows." + items: + $ref: "#/components/schemas/TimeRestriction" + type: array + time_zone: + description: "The time zone in which the support hours are expressed." + example: "" + type: string + required: + - time_zone + type: object + RoutingRuleEscalationPolicyActionType: + default: escalation_policy + description: "Indicates that the action pages an escalation policy. This action can be set once per routing rule item, and is mutually exclusive with the top-level `policy_id` field on the routing rule." + enum: + - escalation_policy + example: escalation_policy + type: string + x-enum-varnames: + - ESCALATION_POLICY + RoutingRuleRelationships: + description: Specifies relationships for a routing rule, linking to associated policy resources. + properties: + policy: + $ref: "#/components/schemas/RoutingRuleRelationshipsPolicy" + type: object + RoutingRuleRelationshipsPolicy: + description: Defines the relationship that links a routing rule to a policy. + properties: + data: + $ref: "#/components/schemas/RoutingRuleRelationshipsPolicyData" + nullable: true + type: object + RoutingRuleRelationshipsPolicyData: + description: Represents the policy data reference, containing the policy's ID and resource type. + properties: + id: + description: Specifies the unique identifier of the policy. + example: "" + type: string + type: + $ref: "#/components/schemas/RoutingRuleRelationshipsPolicyDataType" + required: + - type + - id + type: object + RoutingRuleRelationshipsPolicyDataType: + default: policies + description: "Indicates that the resource is of type 'policies'." + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + RoutingRuleType: + default: team_routing_rules + description: Team routing rules resource type. + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + RuleAttributes: + description: Details of a rule. + properties: + category: + deprecated: true + description: The scorecard name to which this rule must belong. + type: string + created_at: + description: Creation time of the rule outcome. + format: date-time + type: string + custom: + description: Defines if the rule is a custom rule. + type: boolean + description: + description: Explanation of the rule. + type: string + enabled: + description: If enabled, the rule is calculated as part of the score. + example: true + type: boolean + level: + $ref: "#/components/schemas/RuleLevel" + modified_at: + description: Time of the last rule outcome modification. + format: date-time + type: string + name: + description: Name of the rule. + example: Team Defined + type: string + owner: + description: Owner of the rule. + type: string + scope_query: + description: A query to filter which entities this rule applies to. + example: "kind:service" + type: string + scorecard_name: + description: The scorecard name to which this rule must belong. + example: Deployments automated via Deployment Trains + type: string + type: object + RuleAttributesRequest: + description: Attributes for creating or updating a rule. Server-managed fields (created_at, modified_at, custom) are excluded. + properties: + description: + description: Explanation of the rule. + type: string + enabled: + description: If enabled, the rule is calculated as part of the score. + example: true + type: boolean + level: + $ref: "#/components/schemas/RuleLevel" + name: + description: Name of the rule. + example: Team Defined + type: string + owner: + description: Owner of the rule. + type: string + scope_query: + description: A query to filter which entities this rule applies to. + example: "kind:service" + type: string + scorecard_name: + description: The scorecard name to which this rule must belong. + example: Deployments automated via Deployment Trains + type: string + type: object + RuleBasedViewAttributes: + description: Attributes of the rule-based view. + properties: + count: + description: Total number of rules in the view. + example: 1 + format: int64 + type: integer + rules: + $ref: "#/components/schemas/RuleBasedViewRules" + required: + - count + - rules + type: object + RuleBasedViewComplianceFramework: + description: Compliance framework mapping for a rule. + properties: + control: + description: Identifier of the control inside the requirement. + example: 164.308-a-4-i + type: string + framework: + description: Handle of the compliance framework. + example: hipaa + type: string + is_default: + description: Whether the framework is a Datadog default framework. `true` indicates a Datadog framework and `false` indicates a custom framework. + example: true + type: boolean + message: + description: Optional message describing the framework mapping for the rule. + example: "" + type: string + requirement: + description: Name of the requirement that contains the control. + example: Information-Access-Management + type: string + version: + description: Version of the compliance framework. + example: "1" + type: string + type: object + RuleBasedViewComplianceFrameworks: + description: List of compliance framework mappings associated with the rule. + items: + $ref: "#/components/schemas/RuleBasedViewComplianceFramework" + type: array + RuleBasedViewData: + description: Data envelope for the rule-based view response. + properties: + attributes: + $ref: "#/components/schemas/RuleBasedViewAttributes" + id: + description: Unique identifier of the rule-based view document. + example: JSONAPI_USELESS_ID + type: string + type: + $ref: "#/components/schemas/RuleBasedViewType" + required: + - attributes + - id + - type + type: object + RuleBasedViewResourceAttributes: + description: List of resource attribute names exposed by the rule. + example: + - instance_id + items: + description: Name of a resource attribute exposed by the rule. + example: instance_id + type: string + type: array + RuleBasedViewResponse: + description: Response containing an aggregated view of compliance rules with their finding statistics. + properties: + data: + $ref: "#/components/schemas/RuleBasedViewData" + required: + - data + type: object + RuleBasedViewRule: + description: A compliance rule along with its evaluation statistics and framework mappings. + properties: + compliance_frameworks: + $ref: "#/components/schemas/RuleBasedViewComplianceFrameworks" + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + id: + description: Unique identifier of the rule. + example: qjx-udx-xo8 + type: string + name: + description: Human-readable name of the rule. + example: IAM roles should not allow untrusted GitHub Actions to assume them + type: string + resourceAttributes: + $ref: "#/components/schemas/RuleBasedViewResourceAttributes" + resourceCategory: + description: Resource category targeted by the rule. + example: identity + type: string + resourceType: + description: Resource type targeted by the rule. + example: aws_iam_role + type: string + stats: + $ref: "#/components/schemas/RuleBasedViewRuleStats" + status: + description: Severity associated with the rule (for example, `info`, `low`, `medium`, `high`, or `critical`). + example: critical + type: string + tags: + $ref: "#/components/schemas/RuleBasedViewRuleTags" + type: + $ref: "#/components/schemas/RuleBasedViewRuleCategory" + required: + - compliance_frameworks + - enabled + - id + - name + - resourceAttributes + - resourceCategory + - resourceType + - stats + - status + - tags + - type + type: object + RuleBasedViewRuleCategory: + description: The category of the security rule. + enum: + - cloud_configuration + - infrastructure_configuration + - api_security + example: cloud_configuration + type: string + x-enum-varnames: + - CLOUD_CONFIGURATION + - INFRASTRUCTURE_CONFIGURATION + - API_SECURITY + RuleBasedViewRuleStats: + description: Counts of findings for the rule, grouped by their evaluation status. + properties: + fail: + description: Number of findings that failed evaluation. + example: 0 + format: int64 + type: integer + muted: + description: Number of findings that have been muted. + example: 0 + format: int64 + type: integer + pass: + description: Number of findings that passed evaluation. + example: 3 + format: int64 + type: integer + required: + - fail + - pass + - muted + type: object + RuleBasedViewRuleTags: + description: List of tags attached to the rule. + example: + - security:compliance + items: + description: A tag attached to the rule. + example: security:compliance + type: string + type: array + RuleBasedViewRules: + description: List of rules in the rule-based view. + items: + $ref: "#/components/schemas/RuleBasedViewRule" + type: array + RuleBasedViewType: + default: rule_based_view + description: The type of the resource. The value should always be `rule_based_view`. + enum: + - rule_based_view + example: rule_based_view + type: string + x-enum-varnames: + - RULE_BASED_VIEW + RuleId: + description: The unique ID for a scorecard rule. + example: q8MQxk8TCqrHnWkx + type: string + RuleLevel: + description: The maturity level of the rule (1, 2, or 3). + example: 2 + format: int32 + maximum: 3 + minimum: 1 + type: integer + RuleName: + description: Name of the notification rule. + example: Rule 1 + type: string + RuleOutcomeRelationships: + description: The JSON:API relationship to a scorecard rule. + properties: + rule: + $ref: "#/components/schemas/RelationshipToOutcome" + type: object + RuleSeverity: + description: Severity of a security rule. + enum: + - critical + - high + - medium + - low + - unknown + - info + example: critical + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MEDIUM + - LOW + - UNKNOWN + - INFO + RuleType: + default: rule + description: The JSON:API type for scorecard rules. + enum: + - rule + example: rule + type: string + x-enum-varnames: + - RULE + RuleTypes: + description: Security rule types used as filters in security rules. + example: [misconfiguration, attack_path] + items: + $ref: "#/components/schemas/RuleTypesItems" + type: array + RuleTypesItems: + description: |- + Security rule type which can be used in security rules. + Signal-based notification rules can filter signals based on rule types application_security, log_detection, + workload_security, signal_correlation, cloud_configuration and infrastructure_configuration. + Vulnerability-based notification rules can filter vulnerabilities based on rule types application_code_vulnerability, + application_library_vulnerability, attack_path, container_image_vulnerability, identity_risk, misconfiguration, + api_security, host_vulnerability, iac_misconfiguration, sast_vulnerability, secret_vulnerability and workload_activity. + enum: + - application_security + - log_detection + - workload_security + - signal_correlation + - cloud_configuration + - infrastructure_configuration + - application_code_vulnerability + - application_library_vulnerability + - attack_path + - container_image_vulnerability + - identity_risk + - misconfiguration + - api_security + - host_vulnerability + - iac_misconfiguration + - sast_vulnerability + - secret_vulnerability + - workload_activity + example: log_detection + type: string + x-enum-varnames: + - APPLICATION_SECURITY + - LOG_DETECTION + - WORKLOAD_SECURITY + - SIGNAL_CORRELATION + - CLOUD_CONFIGURATION + - INFRASTRUCTURE_CONFIGURATION + - APPLICATION_CODE_VULNERABILITY + - APPLICATION_LIBRARY_VULNERABILITY + - ATTACK_PATH + - CONTAINER_IMAGE_VULNERABILITY + - IDENTITY_RISK + - MISCONFIGURATION + - API_SECURITY + - HOST_VULNERABILITY + - IAC_MISCONFIGURATION + - SAST_VULNERABILITY + - SECRET_VULNERABILITY + - WORKLOAD_ACTIVITY + RuleUser: + description: User creating or modifying a rule. + properties: + handle: + description: The user handle. + example: john.doe@domain.com + type: string + name: + description: The user name. + example: John Doe + type: string + type: object + RuleVersionHistory: + description: Response object containing the version history of a rule. + properties: + count: + description: The number of rule versions. + format: int32 + maximum: 2147483647 + type: integer + data: + additionalProperties: + $ref: "#/components/schemas/RuleVersions" + description: A rule version with a list of updates. + description: The `RuleVersionHistory` `data`. + type: object + type: object + RuleVersions: + description: A rule version with a list of updates. + properties: + changes: + description: A list of changes. + items: + $ref: "#/components/schemas/VersionHistoryUpdate" + type: array + rule: + $ref: "#/components/schemas/SecurityMonitoringRuleResponse" + type: object + RulesValidateQueryRequest: + description: The definition of `RulesValidateQueryRequest` object. + example: + data: + attributes: + Query: example:query AND test:true + type: validate_query + properties: + data: + $ref: "#/components/schemas/RulesValidateQueryRequestData" + type: object + RulesValidateQueryRequestData: + description: The definition of `RulesValidateQueryRequestData` object. + properties: + attributes: + $ref: "#/components/schemas/RulesValidateQueryRequestDataAttributes" + id: + description: The `RulesValidateQueryRequestData` `id`. + type: string + type: + $ref: "#/components/schemas/RulesValidateQueryRequestDataType" + required: + - type + type: object + RulesValidateQueryRequestDataAttributes: + description: The definition of `RulesValidateQueryRequestDataAttributes` object. + properties: + Query: + description: The `attributes` `Query`. + example: "" + type: string + required: + - Query + type: object + RulesValidateQueryRequestDataType: + default: validate_query + description: Validate query resource type. + enum: + - validate_query + example: validate_query + type: string + x-enum-varnames: + - VALIDATE_QUERY + RulesValidateQueryResponse: + description: The definition of `RulesValidateQueryResponse` object. + example: + data: + attributes: + Canonical: canonical query representation + type: validate_response + properties: + data: + $ref: "#/components/schemas/RulesValidateQueryResponseData" + type: object + RulesValidateQueryResponseData: + description: The definition of `RulesValidateQueryResponseData` object. + properties: + attributes: + $ref: "#/components/schemas/RulesValidateQueryResponseDataAttributes" + id: + description: The `RulesValidateQueryResponseData` `id`. + type: string + type: + $ref: "#/components/schemas/RulesValidateQueryResponseDataType" + required: + - type + type: object + RulesValidateQueryResponseDataAttributes: + description: The definition of `RulesValidateQueryResponseDataAttributes` object. + properties: + Canonical: + description: The `attributes` `Canonical`. + example: "" + type: string + required: + - Canonical + type: object + RulesValidateQueryResponseDataType: + default: validate_response + description: Validate response resource type. + enum: + - validate_response + example: validate_response + type: string + x-enum-varnames: + - VALIDATE_RESPONSE + RulesetItemMetadata: + additionalProperties: + type: string + description: The `items` `metadata`. + nullable: true + type: object + RulesetResp: + description: The definition of `RulesetResp` object. + example: + data: + attributes: + created: + enabled: true + last_modified_user_uuid: "" + modified: + name: Example Ruleset + position: 0 + rules: + - enabled: false + mapping: + metadata: + name: RC test rule edited1 + query: + addition: + key: abc + value: ww + case_insensitivity: false + if_tag_exists: do_not_apply + query: billingcurrency:"USD" AND account_name:"SZA96462" AND billingcurrency:"USD" + reference_table: + - enabled: true + mapping: + destination_key: h + if_tag_exists: do_not_apply + source_keys: + - accountname + - accountownerid + metadata: + name: rule with empty source key + query: + reference_table: + - enabled: true + mapping: + metadata: + name: New table rule with new UI + query: + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + version: 1 + id: "12345" + type: ruleset + properties: + data: + $ref: "#/components/schemas/RulesetRespData" + type: object + RulesetRespArray: + description: The definition of `RulesetRespArray` object. + example: + data: + - attributes: + created: + enabled: true + last_modified_user_uuid: "" + modified: + name: Production Cost Allocation Rules + position: 0 + rules: + - enabled: true + mapping: + metadata: + name: AWS Production Account Tagging + query: + addition: + key: environment + value: production + case_insensitivity: false + if_tag_exists: do_not_apply + query: billingcurrency:"USD" AND account_name:"prod-account" + reference_table: + - enabled: true + mapping: + destination_key: team_owner + if_tag_exists: do_not_apply + source_keys: + - account_name + - service + metadata: + name: Team Mapping Rule + query: + reference_table: + - enabled: true + mapping: + metadata: + name: New table rule with new UI + query: + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + version: 2 + id: "55ef2385-9ae1-4410-90c4-5ac1b60fec10" + type: ruleset + - attributes: + created: + enabled: true + last_modified_user_uuid: "" + modified: + name: Development Environment Rules + position: 0 + rules: + - enabled: true + mapping: + metadata: + name: Dev Account Cost Center + query: + addition: + key: cost_center + value: engineering + case_insensitivity: true + if_tag_exists: do_not_apply + query: account_name:"dev-*" + reference_table: + version: 1 + id: "a7b8c9d0-1234-5678-9abc-def012345678" + type: ruleset + properties: + data: + description: The `RulesetRespArray` `data`. + items: + $ref: "#/components/schemas/RulesetRespData" + type: array + required: + - data + type: object + RulesetRespData: + description: The definition of `RulesetRespData` object. + properties: + attributes: + $ref: "#/components/schemas/RulesetRespDataAttributes" + id: + description: The `RulesetRespData` `id`. + type: string + type: + $ref: "#/components/schemas/RulesetRespDataType" + required: + - type + type: object + RulesetRespDataAttributes: + description: The definition of `RulesetRespDataAttributes` object. + properties: + created: + $ref: "#/components/schemas/RulesetRespDataAttributesCreated" + enabled: + description: The `attributes` `enabled`. + example: false + type: boolean + last_modified_user_uuid: + description: The `attributes` `last_modified_user_uuid`. + example: "" + type: string + modified: + $ref: "#/components/schemas/RulesetRespDataAttributesModified" + name: + description: The `attributes` `name`. + example: "" + type: string + position: + description: The `attributes` `position`. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + processing_status: + description: The `attributes` `processing_status`. + example: "" + type: string + rules: + description: The `attributes` `rules`. + items: + $ref: "#/components/schemas/RulesetRespDataAttributesRulesItems" + type: array + version: + description: The `attributes` `version`. + example: 0 + format: int64 + type: integer + required: + - created + - enabled + - last_modified_user_uuid + - modified + - name + - position + - rules + - version + type: object + RulesetRespDataAttributesCreated: + description: The definition of `RulesetRespDataAttributesCreated` object. + properties: + nanos: + description: The `created` `nanos`. + format: int32 + maximum: 2147483647 + type: integer + seconds: + description: The `created` `seconds`. + format: int64 + type: integer + type: object + RulesetRespDataAttributesModified: + description: The definition of `RulesetRespDataAttributesModified` object. + properties: + nanos: + description: The `modified` `nanos`. + format: int32 + maximum: 2147483647 + type: integer + seconds: + description: The `modified` `seconds`. + format: int64 + type: integer + type: object + RulesetRespDataAttributesRulesItems: + description: The definition of `RulesetRespDataAttributesRulesItems` object. + properties: + enabled: + description: The `items` `enabled`. + example: false + type: boolean + mapping: + $ref: "#/components/schemas/DataAttributesRulesItemsMapping" + metadata: + $ref: "#/components/schemas/RulesetItemMetadata" + name: + description: The `items` `name`. + example: "" + type: string + query: + $ref: "#/components/schemas/RulesetRespDataAttributesRulesItemsQuery" + reference_table: + $ref: "#/components/schemas/RulesetRespDataAttributesRulesItemsReferenceTable" + required: + - enabled + - name + type: object + RulesetRespDataAttributesRulesItemsQuery: + description: The definition of `RulesetRespDataAttributesRulesItemsQuery` object. + nullable: true + properties: + addition: + $ref: "#/components/schemas/RulesetRespDataAttributesRulesItemsQueryAddition" + case_insensitivity: + description: The `query` `case_insensitivity`. + type: boolean + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `query` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + query: + description: The `query` `query`. + example: "" + type: string + required: + - addition + - query + type: object + RulesetRespDataAttributesRulesItemsQueryAddition: + description: The definition of `RulesetRespDataAttributesRulesItemsQueryAddition` object. + nullable: true + properties: + key: + description: The `addition` `key`. + example: "" + type: string + value: + description: The `addition` `value`. + example: "" + type: string + required: + - key + - value + type: object + RulesetRespDataAttributesRulesItemsReferenceTable: + description: The definition of `RulesetRespDataAttributesRulesItemsReferenceTable` object. + nullable: true + properties: + case_insensitivity: + description: The `reference_table` `case_insensitivity`. + type: boolean + field_pairs: + description: The `reference_table` `field_pairs`. + items: + $ref: "#/components/schemas/RulesetRespDataAttributesRulesItemsReferenceTableFieldPairsItems" + type: array + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `reference_table` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + source_keys: + description: The `reference_table` `source_keys`. + example: + - "" + items: + description: A source key for the reference table lookup. + type: string + type: array + table_name: + description: The `reference_table` `table_name`. + example: "" + type: string + required: + - field_pairs + - source_keys + - table_name + type: object + RulesetRespDataAttributesRulesItemsReferenceTableFieldPairsItems: + description: The definition of `RulesetRespDataAttributesRulesItemsReferenceTableFieldPairsItems` object. + properties: + input_column: + description: The `items` `input_column`. + example: "" + type: string + output_key: + description: The `items` `output_key`. + example: "" + type: string + required: + - input_column + - output_key + type: object + RulesetRespDataType: + default: ruleset + description: Ruleset resource type. + enum: + - ruleset + example: ruleset + type: string + x-enum-varnames: + - RULESET + RulesetStatusRespArray: + description: Processing statuses for all tag pipeline rulesets in the specified organization. + example: + data: + - attributes: + processing_status: processing + id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset_status + - attributes: + processing_status: done + id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset_status + properties: + data: + description: Processing status for a tag pipeline ruleset. + items: + $ref: "#/components/schemas/RulesetStatusRespData" + type: array + required: + - data + type: object + RulesetStatusRespData: + description: Processing status for a tag pipeline ruleset. + properties: + attributes: + $ref: "#/components/schemas/RulesetStatusRespDataAttributes" + id: + description: The unique identifier of the ruleset. + example: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: string + type: + $ref: "#/components/schemas/RulesetStatusRespDataType" + required: + - id + - type + - attributes + type: object + RulesetStatusRespDataAttributes: + description: Processing status for a tag pipeline ruleset. + properties: + processing_status: + description: The processing status of the ruleset. + example: processing + type: string + required: + - processing_status + type: object + RulesetStatusRespDataType: + default: ruleset_status + description: Ruleset status resource type. + enum: + - ruleset_status + example: ruleset_status + type: string + x-enum-varnames: + - RULESET_STATUS + RumConfigAttributes: + description: Attributes of the RUM configuration. + properties: + disabled: + description: Whether the RUM configuration is disabled for the organization. + example: false + type: boolean + enforced_application_tags: + description: Whether application tags are enforced for the RUM applications in the organization. + example: true + type: boolean + enforced_application_tags_updated_at: + description: Timestamp of when the enforced application tags setting was last updated. + example: "2024-01-15T09:30:00.000Z" + format: date-time + type: string + enforced_application_tags_updated_by: + description: Handle of the user who last updated the enforced application tags setting. + example: "user@example.com" + type: string + ootb_metrics_version: + description: Version of the out-of-the-box metrics installed for the organization. + example: 5 + format: int64 + type: integer + ootb_metrics_version_installed_at: + description: Timestamp of when the out-of-the-box metrics version was installed. + example: "2024-01-15T09:30:00.000Z" + format: date-time + type: string + retention_filters_enabled: + description: Whether retention filters are enabled for the organization. + example: true + type: boolean + retention_filters_enabled_updated_at: + description: Timestamp of when the retention filters setting was last updated. + example: "2024-01-15T09:30:00.000Z" + format: date-time + type: string + retention_filters_enabled_updated_by: + description: Handle of the user or job who last updated the retention filters setting. + example: "contract-update-job" + type: string + required: + - enforced_application_tags + - retention_filters_enabled + type: object + RumConfigCreateAttributes: + description: Attributes of the RUM configuration to create. + properties: + enforced_application_tags: + description: Whether application tags are enforced for the RUM applications in the organization. + example: true + type: boolean + required: + - enforced_application_tags + type: object + RumConfigCreateData: + description: Object describing the RUM configuration to create. + properties: + attributes: + $ref: "#/components/schemas/RumConfigCreateAttributes" + type: + $ref: "#/components/schemas/RumConfigType" + required: + - type + - attributes + type: object + RumConfigCreateRequest: + description: Request body for creating the RUM configuration. + properties: + data: + $ref: "#/components/schemas/RumConfigCreateData" + required: + - data + type: object + RumConfigData: + description: The RUM configuration data. + properties: + attributes: + $ref: "#/components/schemas/RumConfigAttributes" + id: + description: The organization ID associated with the RUM configuration. + example: "1234" + type: string + type: + $ref: "#/components/schemas/RumConfigType" + required: + - id + - type + - attributes + type: object + RumConfigResponse: + description: The RUM configuration object. + properties: + data: + $ref: "#/components/schemas/RumConfigData" + required: + - data + type: object + RumConfigType: + default: rum_config + description: The type of the resource. The value should always be `rum_config`. + enum: + - rum_config + example: rum_config + type: string + x-enum-varnames: + - RUM_CONFIG + RumConfigUpdateAttributes: + description: Attributes of the RUM configuration to update. + properties: + enforced_application_tags: + description: Whether application tags are enforced for the RUM applications in the organization. + example: true + type: boolean + required: + - enforced_application_tags + type: object + RumConfigUpdateData: + description: Object describing the RUM configuration to update. + properties: + attributes: + $ref: "#/components/schemas/RumConfigUpdateAttributes" + type: + $ref: "#/components/schemas/RumConfigType" + required: + - type + - attributes + type: object + RumConfigUpdateRequest: + description: Request body for updating the RUM configuration. + properties: + data: + $ref: "#/components/schemas/RumConfigUpdateData" + required: + - data + type: object + RumCrossProductSampling: + description: The configuration for cross-product retention filters. + properties: + trace_enabled: + description: Whether the cross-product retention filter for APM traces is enabled. + example: true + type: boolean + trace_sample_rate: + description: The sample rate for the APM cross-product retention filter, between 0 and 100. + example: 25.0 + format: double + maximum: 100 + minimum: 0 + type: number + type: object + RumCrossProductSamplingCreate: + description: The configuration for cross-product retention filters. + properties: + trace_enabled: + description: Whether the cross-product retention filter for APM traces is enabled. + example: true + type: boolean + trace_sample_rate: + description: The sample rate for the APM cross-product retention filter, between 0 and 100. + example: 25.0 + format: double + maximum: 100 + minimum: 0 + type: number + required: + - trace_sample_rate + type: object + RumCrossProductSamplingUpdate: + description: The configuration for cross-product retention filters. All fields are optional for partial updates. + properties: + trace_enabled: + description: Whether the cross-product retention filter for APM traces is enabled. + example: true + type: boolean + trace_sample_rate: + description: The sample rate for the APM cross-product retention filter, between 0 and 100. + example: 25.0 + format: double + maximum: 100 + minimum: 0 + type: number + type: object + RumExclusionFilterAttributes: + description: The attributes of an exclusion filter. + properties: + enabled: + $ref: "#/components/schemas/RumExclusionFilterEnabled" + event_type: + $ref: "#/components/schemas/RumExclusionFilterEventType" + name: + $ref: "#/components/schemas/RumExclusionFilterName" + query: + $ref: "#/components/schemas/RumExclusionFilterQuery" + type: object + RumExclusionFilterCreateAttributes: + description: The attributes of an exclusion filter to create. + properties: + enabled: + description: Whether the exclusion filter is active. Defaults to `true`. + example: true + type: boolean + event_type: + $ref: "#/components/schemas/RumExclusionFilterEventType" + name: + $ref: "#/components/schemas/RumExclusionFilterName" + query: + $ref: "#/components/schemas/RumExclusionFilterQuery" + required: + - name + type: object + RumExclusionFilterCreateData: + description: The new exclusion filter properties to create. + properties: + attributes: + $ref: "#/components/schemas/RumExclusionFilterCreateAttributes" + type: + $ref: "#/components/schemas/RumExclusionFilterType" + required: + - type + - attributes + type: object + RumExclusionFilterCreateRequest: + description: The exclusion filter body to create. + properties: + data: + $ref: "#/components/schemas/RumExclusionFilterCreateData" + required: + - data + type: object + RumExclusionFilterData: + description: An exclusion filter. + properties: + attributes: + $ref: "#/components/schemas/RumExclusionFilterAttributes" + id: + description: The ID of the exclusion filter. + example: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: string + meta: + $ref: "#/components/schemas/RumExclusionFilterMeta" + type: + $ref: "#/components/schemas/RumExclusionFilterType" + required: + - id + - type + type: object + RumExclusionFilterEnabled: + description: Whether the exclusion filter is active. + example: true + type: boolean + RumExclusionFilterEventType: + description: The type of RUM events to filter on. + enum: + - session + - view + - action + - error + - resource + - long_task + - vital + example: error + type: string + x-enum-varnames: + - SESSION + - VIEW + - ACTION + - ERROR + - RESOURCE + - LONG_TASK + - VITAL + RumExclusionFilterMeta: + description: Metadata about the exclusion filter. + properties: + enabled_at: + description: Unix epoch (in milliseconds) when the exclusion filter was last enabled. + example: 1735689600000 + format: int64 + type: integer + updated_at: + description: Unix epoch (in milliseconds) of the last update. + example: 1735689600000 + format: int64 + type: integer + updated_by_handle: + description: Handle of the user who last updated the exclusion filter. + example: jane.doe@example.com + type: string + type: object + RumExclusionFilterName: + description: The name of the exclusion filter. + example: Exclude noisy browser extension errors + type: string + RumExclusionFilterQuery: + description: |- + Additional query used to further restrict which RUM events are excluded. + Combined with `event_type` when both are provided. + example: "@error.message:*extension*" + type: string + RumExclusionFilterResponse: + description: An exclusion filter response body. + properties: + data: + $ref: "#/components/schemas/RumExclusionFilterData" + type: object + RumExclusionFilterType: + default: exclusion_filters + description: The resource type. The value must be `exclusion_filters`. + enum: + - exclusion_filters + example: exclusion_filters + type: string + x-enum-varnames: + - EXCLUSION_FILTERS + RumExclusionFilterUpdateAttributes: + description: |- + The attributes of an exclusion filter that can be updated. + For the built-in Error Tracking exclusion filter, only `enabled` can be set; + `name`, `event_type`, and `query` must be omitted. + properties: + enabled: + $ref: "#/components/schemas/RumExclusionFilterEnabled" + event_type: + $ref: "#/components/schemas/RumExclusionFilterEventType" + name: + $ref: "#/components/schemas/RumExclusionFilterName" + query: + $ref: "#/components/schemas/RumExclusionFilterQuery" + type: object + RumExclusionFilterUpdateData: + description: The exclusion filter properties to update. + properties: + attributes: + $ref: "#/components/schemas/RumExclusionFilterUpdateAttributes" + id: + description: The ID of the exclusion filter. Must match the `ef_id` path parameter. + example: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: string + type: + $ref: "#/components/schemas/RumExclusionFilterType" + required: + - id + - type + - attributes + type: object + RumExclusionFilterUpdateRequest: + description: The exclusion filter body to update. + properties: + data: + $ref: "#/components/schemas/RumExclusionFilterUpdateData" + required: + - data + type: object + RumExclusionFiltersResponse: + description: All exclusion filters for a RUM application. + properties: + data: + description: A list of exclusion filters. + items: + $ref: "#/components/schemas/RumExclusionFilterData" + type: array + type: object + RumMetricCompute: + description: The compute rule to compute the RUM-based metric. + properties: + aggregation_type: + $ref: "#/components/schemas/RumMetricComputeAggregationType" + include_percentiles: + $ref: "#/components/schemas/RumMetricComputeIncludePercentiles" + path: + description: |- + The path to the value the RUM-based metric will aggregate on. + Only present when `aggregation_type` is `distribution`. + example: "@duration" + type: string + required: + - aggregation_type + type: object + RumMetricComputeAggregationType: + description: The type of aggregation to use. + enum: ["count", "distribution"] + example: "distribution" + type: string + x-enum-varnames: ["COUNT", "DISTRIBUTION"] + RumMetricComputeIncludePercentiles: + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. + Only present when `aggregation_type` is `distribution`. + example: true + type: boolean + RumMetricCreateAttributes: + description: The object describing the Datadog RUM-based metric to create. + properties: + compute: + $ref: "#/components/schemas/RumMetricCompute" + event_type: + $ref: "#/components/schemas/RumMetricEventType" + filter: + $ref: "#/components/schemas/RumMetricFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/RumMetricGroupBy" + type: array + uniqueness: + $ref: "#/components/schemas/RumMetricUniqueness" + required: + - event_type + - compute + type: object + RumMetricCreateData: + description: The new RUM-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/RumMetricCreateAttributes" + id: + $ref: "#/components/schemas/RumMetricID" + type: + $ref: "#/components/schemas/RumMetricType" + required: + - id + - type + - attributes + type: object + RumMetricCreateRequest: + description: The new RUM-based metric body. + properties: + data: + $ref: "#/components/schemas/RumMetricCreateData" + required: + - data + type: object + RumMetricEventType: + description: The type of RUM events to filter on. + enum: ["session", "view", "action", "error", "resource", "long_task", "vital"] + example: "session" + type: string + x-enum-varnames: ["SESSION", "VIEW", "ACTION", "ERROR", "RESOURCE", "LONG_TASK", "VITAL"] + RumMetricFilter: + description: The RUM-based metric filter. Events matching this filter will be aggregated in this metric. + properties: + query: + default: "*" + description: The search query - following the RUM search syntax. + example: "@service:web-ui:" + type: string + required: + - query + type: object + RumMetricGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the RUM-based metric will be aggregated over. + example: "@browser.name" + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, `path` is used as the tag name. + example: "browser_name" + type: string + required: + - path + type: object + RumMetricID: + description: The name of the RUM-based metric. + example: "rum.sessions.webui.count" + type: string + RumMetricResponse: + description: The RUM-based metric object. + properties: + data: + $ref: "#/components/schemas/RumMetricResponseData" + type: object + RumMetricResponseAttributes: + description: The object describing a Datadog RUM-based metric. + properties: + compute: + $ref: "#/components/schemas/RumMetricResponseCompute" + event_type: + $ref: "#/components/schemas/RumMetricEventType" + filter: + $ref: "#/components/schemas/RumMetricResponseFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/RumMetricResponseGroupBy" + type: array + uniqueness: + $ref: "#/components/schemas/RumMetricResponseUniqueness" + type: object + RumMetricResponseCompute: + description: The compute rule to compute the RUM-based metric. + properties: + aggregation_type: + $ref: "#/components/schemas/RumMetricComputeAggregationType" + include_percentiles: + $ref: "#/components/schemas/RumMetricComputeIncludePercentiles" + path: + description: |- + The path to the value the RUM-based metric will aggregate on. + Only present when `aggregation_type` is `distribution`. + example: "@duration" + type: string + type: object + RumMetricResponseData: + description: The RUM-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/RumMetricResponseAttributes" + id: + $ref: "#/components/schemas/RumMetricID" + type: + $ref: "#/components/schemas/RumMetricType" + type: object + RumMetricResponseFilter: + description: The RUM-based metric filter. RUM events matching this filter will be aggregated in this metric. + properties: + query: + description: The search query - following the RUM search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + type: object + RumMetricResponseGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the RUM-based metric will be aggregated over. + example: "@http.status_code" + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, `path` is used as the tag name. + example: "status_code" + type: string + type: object + RumMetricResponseUniqueness: + description: The rule to count updatable events. Is only set if `event_type` is `session` or `view`. + properties: + when: + $ref: "#/components/schemas/RumMetricUniquenessWhen" + type: object + RumMetricType: + default: rum_metrics + description: The type of the resource. The value should always be rum_metrics. + enum: + - rum_metrics + example: rum_metrics + type: string + x-enum-varnames: ["RUM_METRICS"] + RumMetricUniqueness: + description: The rule to count updatable events. Is only set if `event_type` is `sessions` or `views`. + properties: + when: + $ref: "#/components/schemas/RumMetricUniquenessWhen" + required: + - when + type: object + RumMetricUniquenessWhen: + description: When to count updatable events. `match` when the event is first seen, or `end` when the event is complete. + enum: ["match", "end"] + example: "match" + type: string + x-enum-varnames: ["WHEN_MATCH", "WHEN_END"] + RumMetricUpdateAttributes: + description: The RUM-based metric properties that will be updated. + properties: + compute: + $ref: "#/components/schemas/RumMetricUpdateCompute" + filter: + $ref: "#/components/schemas/RumMetricFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/RumMetricGroupBy" + type: array + type: object + RumMetricUpdateCompute: + description: The compute rule to compute the RUM-based metric. + properties: + include_percentiles: + $ref: "#/components/schemas/RumMetricComputeIncludePercentiles" + type: object + RumMetricUpdateData: + description: The new RUM-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/RumMetricUpdateAttributes" + id: + $ref: "#/components/schemas/RumMetricID" + type: + $ref: "#/components/schemas/RumMetricType" + required: + - type + - attributes + type: object + RumMetricUpdateRequest: + description: The new RUM-based metric body. + properties: + data: + $ref: "#/components/schemas/RumMetricUpdateData" + required: + - data + type: object + RumMetricsResponse: + description: All the available RUM-based metric objects. + properties: + data: + description: A list of RUM-based metric objects. + items: + $ref: "#/components/schemas/RumMetricResponseData" + type: array + type: object + RumPermanentRetentionFilterAttributes: + description: The attributes of a permanent RUM retention filter. + properties: + cross_product_sampling: + $ref: "#/components/schemas/RumCrossProductSampling" + description: + description: A description of what the filter retains. + example: "All sessions generated by Synthetics are retained at 100%." + type: string + editability: + $ref: "#/components/schemas/RumPermanentRetentionFilterEditability" + name: + description: The display name of the permanent retention filter. + example: "Synthetics Sessions" + type: string + type: object + RumPermanentRetentionFilterData: + description: A permanent RUM retention filter. + properties: + attributes: + $ref: "#/components/schemas/RumPermanentRetentionFilterAttributes" + id: + $ref: "#/components/schemas/RumPermanentRetentionFilterID" + type: + $ref: "#/components/schemas/RumPermanentRetentionFilterType" + type: object + RumPermanentRetentionFilterEditability: + description: Indicates which cross-product fields of a permanent RUM retention filter can be updated. + properties: + trace_editable: + description: Whether the APM trace cross-product configuration of the filter can be updated. + example: true + type: boolean + type: object + RumPermanentRetentionFilterID: + description: The identifier of a permanent RUM retention filter. + enum: + - rum_apm_flat_sampling + - synthetics_sessions + - forced_replay_sessions + example: synthetics_sessions + type: string + x-enum-varnames: ["RUM_APM_FLAT_SAMPLING", "SYNTHETICS_SESSIONS", "FORCED_REPLAY_SESSIONS"] + RumPermanentRetentionFilterResponse: + description: A permanent RUM retention filter object. + properties: + data: + $ref: "#/components/schemas/RumPermanentRetentionFilterData" + type: object + RumPermanentRetentionFilterType: + default: permanent_retention_filters + description: The type of the resource. The value should always be `permanent_retention_filters`. + enum: + - permanent_retention_filters + example: permanent_retention_filters + type: string + x-enum-varnames: ["PERMANENT_RETENTION_FILTERS"] + RumPermanentRetentionFilterUpdateAttributes: + description: The configuration to update on a permanent RUM retention filter. + properties: + cross_product_sampling: + $ref: "#/components/schemas/RumCrossProductSamplingUpdate" + type: object + RumPermanentRetentionFilterUpdateData: + description: The new permanent RUM retention filter configuration to update. + properties: + attributes: + $ref: "#/components/schemas/RumPermanentRetentionFilterUpdateAttributes" + id: + $ref: "#/components/schemas/RumPermanentRetentionFilterID" + type: + $ref: "#/components/schemas/RumPermanentRetentionFilterType" + required: + - id + - type + - attributes + type: object + RumPermanentRetentionFilterUpdateRequest: + description: The permanent RUM retention filter body to update. + properties: + data: + $ref: "#/components/schemas/RumPermanentRetentionFilterUpdateData" + required: + - data + type: object + RumPermanentRetentionFiltersResponse: + description: All permanent RUM retention filters for a RUM application. + properties: + data: + description: A list of permanent RUM retention filters. + items: + $ref: "#/components/schemas/RumPermanentRetentionFilterData" + type: array + type: object + RumRetentionFilterAttributes: + description: The object describing attributes of a RUM retention filter. + properties: + cross_product_sampling: + $ref: "#/components/schemas/RumCrossProductSampling" + enabled: + $ref: "#/components/schemas/RumRetentionFilterEnabled" + event_type: + $ref: "#/components/schemas/RumRetentionFilterEventType" + name: + $ref: "#/components/schemas/RunRetentionFilterName" + query: + $ref: "#/components/schemas/RumRetentionFilterQuery" + sample_rate: + $ref: "#/components/schemas/RumRetentionFilterSampleRate" + type: object + RumRetentionFilterCreateAttributes: + description: The object describing attributes of a RUM retention filter to create. + properties: + cross_product_sampling: + $ref: "#/components/schemas/RumCrossProductSamplingCreate" + enabled: + $ref: "#/components/schemas/RumRetentionFilterEnabled" + event_type: + $ref: "#/components/schemas/RumRetentionFilterEventType" + name: + $ref: "#/components/schemas/RunRetentionFilterName" + query: + $ref: "#/components/schemas/RumRetentionFilterQuery" + sample_rate: + $ref: "#/components/schemas/RumRetentionFilterSampleRate" + required: + - event_type + - name + - sample_rate + type: object + RumRetentionFilterCreateData: + description: The new RUM retention filter properties to create. + properties: + attributes: + $ref: "#/components/schemas/RumRetentionFilterCreateAttributes" + type: + $ref: "#/components/schemas/RumRetentionFilterType" + required: + - type + - attributes + type: object + RumRetentionFilterCreateRequest: + description: The RUM retention filter body to create. + properties: + data: + $ref: "#/components/schemas/RumRetentionFilterCreateData" + required: + - data + type: object + RumRetentionFilterData: + description: The RUM retention filter. + properties: + attributes: + $ref: "#/components/schemas/RumRetentionFilterAttributes" + id: + $ref: "#/components/schemas/RumRetentionFilterID" + type: + $ref: "#/components/schemas/RumRetentionFilterType" + type: object + RumRetentionFilterEnabled: + description: Whether the retention filter is enabled. + example: true + type: boolean + RumRetentionFilterEventType: + description: The type of RUM events to filter on. + enum: ["session", "view", "action", "error", "resource", "long_task", "vital"] + example: "session" + type: string + x-enum-varnames: ["SESSION", "VIEW", "ACTION", "ERROR", "RESOURCE", "LONG_TASK", "VITAL"] + RumRetentionFilterID: + description: ID of retention filter in UUID. + example: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: string + RumRetentionFilterQuery: + description: The query string for a RUM retention filter. + example: "@session.has_replay:true" + type: string + RumRetentionFilterResponse: + description: The RUM retention filter object. + properties: + data: + $ref: "#/components/schemas/RumRetentionFilterData" + type: object + RumRetentionFilterSampleRate: + description: The sample rate for a RUM retention filter, between 0.1 and 100. + example: 50.5 + format: double + maximum: 100 + minimum: 0.1 + type: number + RumRetentionFilterType: + default: retention_filters + description: The type of the resource. The value should always be retention_filters. + enum: + - retention_filters + example: retention_filters + type: string + x-enum-varnames: ["RETENTION_FILTERS"] + RumRetentionFilterUpdateAttributes: + description: The object describing attributes of a RUM retention filter to update. + properties: + cross_product_sampling: + $ref: "#/components/schemas/RumCrossProductSamplingUpdate" + enabled: + $ref: "#/components/schemas/RumRetentionFilterEnabled" + event_type: + $ref: "#/components/schemas/RumRetentionFilterEventType" + name: + $ref: "#/components/schemas/RunRetentionFilterName" + query: + $ref: "#/components/schemas/RumRetentionFilterQuery" + sample_rate: + $ref: "#/components/schemas/RumRetentionFilterSampleRate" + type: object + RumRetentionFilterUpdateData: + description: The new RUM retention filter properties to update. + properties: + attributes: + $ref: "#/components/schemas/RumRetentionFilterUpdateAttributes" + id: + $ref: "#/components/schemas/RumRetentionFilterID" + type: + $ref: "#/components/schemas/RumRetentionFilterType" + required: + - id + - type + - attributes + type: object + RumRetentionFilterUpdateRequest: + description: The RUM retention filter body to update. + properties: + data: + $ref: "#/components/schemas/RumRetentionFilterUpdateData" + required: + - data + type: object + RumRetentionFiltersOrderData: + description: The RUM retention filter data for ordering. + properties: + id: + $ref: "#/components/schemas/RumRetentionFilterID" + type: + $ref: "#/components/schemas/RumRetentionFilterType" + required: + - id + - type + type: object + RumRetentionFiltersOrderRequest: + description: |- + The list of RUM retention filter IDs along with their corresponding type to reorder. + All retention filter IDs should be included in the list created for a RUM application. + properties: + data: + description: A list of RUM retention filter IDs along with type. + items: + $ref: "#/components/schemas/RumRetentionFiltersOrderData" + type: array + type: object + RumRetentionFiltersOrderResponse: + description: The list of RUM retention filter IDs along with type. + properties: + data: + description: A list of RUM retention filter IDs along with type. + items: + $ref: "#/components/schemas/RumRetentionFiltersOrderData" + type: array + type: object + RumRetentionFiltersResponse: + description: All RUM retention filters for a RUM application. + properties: + data: + description: A list of RUM retention filters. + items: + $ref: "#/components/schemas/RumRetentionFilterData" + type: array + type: object + RumRetentionQuotaConfigAttributes: + description: The RUM retention quota configuration properties. + properties: + custom: + $ref: "#/components/schemas/RumRetentionQuotaCustomConfig" + mode: + $ref: "#/components/schemas/RumRetentionQuotaMode" + org_id: + description: The ID of the organization the retention quota configuration belongs to. + example: 2 + format: int64 + type: integer + updated_at: + description: The date the retention quota configuration was last updated. + example: "2026-03-04T15:37:54.951447Z" + format: date-time + type: string + updated_by: + description: The handle of the user who last updated the retention quota configuration. + example: test@example.com + type: string + required: + - mode + - org_id + type: object + RumRetentionQuotaConfigData: + description: The RUM retention quota configuration object. + properties: + attributes: + $ref: "#/components/schemas/RumRetentionQuotaConfigAttributes" + id: + description: The identifier of the scope the retention quota configuration applies to. + example: cd73a516-a481-4af5-8352-9b577465c77b + type: string + type: + $ref: "#/components/schemas/RumRetentionQuotaConfigType" + required: + - id + - type + - attributes + type: object + RumRetentionQuotaConfigResponse: + description: The RUM retention quota configuration response. + properties: + data: + $ref: "#/components/schemas/RumRetentionQuotaConfigData" + required: + - data + type: object + RumRetentionQuotaConfigType: + default: rum_quota_config + description: The type of the resource, always `rum_quota_config`. + enum: + - rum_quota_config + example: rum_quota_config + type: string + x-enum-varnames: ["RUM_QUOTA_CONFIG"] + RumRetentionQuotaConfigUpdateAttributes: + description: The RUM retention quota configuration properties to create or update. + properties: + custom: + $ref: "#/components/schemas/RumRetentionQuotaCustomConfig" + mode: + $ref: "#/components/schemas/RumRetentionQuotaMode" + required: + - mode + type: object + RumRetentionQuotaConfigUpdateData: + description: The RUM retention quota configuration to create or update. + properties: + attributes: + $ref: "#/components/schemas/RumRetentionQuotaConfigUpdateAttributes" + id: + description: |- + The identifier of the scope the retention quota configuration applies to. + Must match `scope_id` in the path. + example: cd73a516-a481-4af5-8352-9b577465c77b + type: string + type: + $ref: "#/components/schemas/RumRetentionQuotaConfigType" + required: + - id + - type + - attributes + type: object + RumRetentionQuotaConfigUpdateRequest: + description: The body of a request to create or update a RUM retention quota configuration. + properties: + data: + $ref: "#/components/schemas/RumRetentionQuotaConfigUpdateData" + required: + - data + type: object + RumRetentionQuotaCustomConfig: + description: The configuration used when `mode` is `custom`. + properties: + daily_reset_time: + description: The time of day when the daily quota resets, in `HH:MM` 24-hour format. + example: "08:00" + pattern: "^([01]\\d|2[0-3]):[0-5]\\d$" + type: string + daily_reset_timezone: + description: The timezone offset used for the daily reset time, in `±HH:MM` format. + example: "+09:00" + pattern: "^[+-](0\\d|1[0-4]):[0-5]\\d$" + type: string + quota_reached_action: + $ref: "#/components/schemas/RumRetentionQuotaReachedAction" + session_limit: + description: The maximum number of sessions allowed within the window. Must be at least `1000`. + example: 1000000 + format: int64 + minimum: 1000 + type: integer + window_type: + $ref: "#/components/schemas/RumRetentionQuotaWindowType" + required: + - window_type + - session_limit + - daily_reset_time + - daily_reset_timezone + - quota_reached_action + type: object + RumRetentionQuotaMode: + description: |- + The retention quota mode. `custom` enforces a fixed session limit. + `custom` is the only supported mode. + enum: + - custom + example: custom + type: string + x-enum-varnames: ["CUSTOM"] + RumRetentionQuotaReachedAction: + description: The action to take when the session quota is reached. + enum: + - stop + - slowdown + example: stop + type: string + x-enum-varnames: ["STOP", "SLOWDOWN"] + RumRetentionQuotaScopeType: + default: application + description: |- + The type of scope the retention quota configuration applies to. + `application` is the only supported scope type. + enum: + - application + example: application + type: string + x-enum-varnames: ["APPLICATION"] + RumRetentionQuotaWindowType: + description: The window type over which the session limit is enforced. + enum: + - daily + example: daily + type: string + x-enum-varnames: ["DAILY"] + RumSdkConfigAllowedTracingUrlList: + description: A list of URL configurations for distributed tracing. + items: + $ref: "#/components/schemas/RumSdkConfigTracingUrlConfig" + type: array + RumSdkConfigAllowedTrackingOriginList: + description: A list of origin patterns allowed for cross-origin session tracking. + items: + $ref: "#/components/schemas/RumSdkConfigMatchOption" + type: array + RumSdkConfigAttributes: + description: Attributes of the RUM SDK configuration. + properties: + rum: + $ref: "#/components/schemas/RumSdkConfigRumAttributes" + required: + - rum + type: object + RumSdkConfigData: + description: The RUM SDK configuration data object. + properties: + attributes: + $ref: "#/components/schemas/RumSdkConfigAttributes" + id: + description: The unique identifier of the RUM SDK configuration. + example: "abc12345-1234-5678-abcd-ef1234567890" + type: string + meta: + $ref: "#/components/schemas/RumSdkConfigMeta" + type: + $ref: "#/components/schemas/RumSdkConfigType" + required: + - id + - type + - attributes + type: object + RumSdkConfigDynamicOption: + description: A dynamic configuration option that extracts a value at runtime using a specified strategy. + properties: + attribute: + description: The element attribute to read. Used when `strategy` is `dom`. + example: "data-version" + type: string + extractor: + $ref: "#/components/schemas/RumSdkConfigSerializedRegex" + key: + description: The `localStorage` key to read. Required when `strategy` is `localStorage`. + example: "app.version" + type: string + name: + description: The cookie name to read. Required when `strategy` is `cookie`. + example: "app_version" + type: string + path: + description: The JavaScript path used to extract the value. Required when `strategy` is `js`. + example: "application.version" + type: string + rc_serialized_type: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionSerializedType" + selector: + description: The CSS selector to read from the page. Required when `strategy` is `dom`. + example: "#app-version" + type: string + strategy: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionStrategy" + required: + - rc_serialized_type + - strategy + type: object + RumSdkConfigDynamicOptionPair: + description: A key-value pair where the value is a dynamic configuration option. + properties: + key: + description: The key name for this dynamic configuration pair. + example: "id" + type: string + value: + $ref: "#/components/schemas/RumSdkConfigDynamicOption" + required: + - key + - value + type: object + RumSdkConfigDynamicOptionPairList: + description: A list of dynamic option key-value pairs. + items: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionPair" + type: array + RumSdkConfigDynamicOptionSerializedType: + description: The type identifier for a dynamic option. Always `dynamic`. + enum: + - dynamic + example: dynamic + type: string + x-enum-varnames: + - DYNAMIC + RumSdkConfigDynamicOptionStrategy: + description: The strategy used to extract the dynamic value. + enum: + - js + - cookie + - dom + - localStorage + example: js + type: string + x-enum-varnames: + - JS + - COOKIE + - DOM + - LOCAL_STORAGE + RumSdkConfigMatchOption: + description: A match option used for URL or origin pattern matching. + properties: + rc_serialized_type: + $ref: "#/components/schemas/RumSdkConfigMatchOptionSerializedType" + value: + description: The value to match against. + example: "https://app.datadoghq.com" + type: string + required: + - rc_serialized_type + - value + type: object + RumSdkConfigMatchOptionSerializedType: + description: The type of match pattern, either a literal string or a regex. + enum: + - string + - regex + example: string + type: string + x-enum-varnames: + - STRING + - REGEX + RumSdkConfigMeta: + description: Metadata associated with a RUM SDK configuration. + properties: + updated_at: + description: The timestamp of the last update to this configuration. + example: "2024-01-15T09:30:00.000Z" + format: date-time + type: string + updated_by: + description: The handle of the user who last updated this configuration. + example: "user@datadoghq.com" + type: string + required: + - updated_at + - updated_by + type: object + RumSdkConfigResponse: + description: Response containing a RUM SDK configuration. + properties: + data: + $ref: "#/components/schemas/RumSdkConfigData" + required: + - data + type: object + RumSdkConfigRumAttributes: + description: The RUM SDK settings for a configuration. + properties: + allowed_tracing_urls: + $ref: "#/components/schemas/RumSdkConfigAllowedTracingUrlList" + allowed_tracking_origins: + $ref: "#/components/schemas/RumSdkConfigAllowedTrackingOriginList" + application_id: + description: The ID of the RUM application this configuration belongs to. + example: "f80e917c-3cd0-4048-ade7-1c4c207baa99" + type: string + context: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionPairList" + default_privacy_level: + description: The default privacy masking level applied to all RUM data. + example: "mask-user-input" + type: string + enable_privacy_for_action_name: + description: Whether to mask user-interaction action names for privacy. + example: false + type: boolean + env: + description: The environment tag for the RUM application. + example: "production" + type: string + service: + description: The service name tag for the RUM application. + example: "my-service" + type: string + session_replay_sample_rate: + description: The percentage of collected sessions for which a replay is captured (0–100). + example: 10 + format: int64 + maximum: 100 + minimum: 0 + type: integer + session_sample_rate: + description: The percentage of user sessions to collect (0–100). + example: 50 + format: int64 + maximum: 100 + minimum: 0 + type: integer + trace_sample_rate: + description: The percentage of requests to forward as APM traces (0–100). + example: 100 + format: int64 + maximum: 100 + minimum: 0 + type: integer + track_session_across_subdomains: + description: Whether to share a session across subdomains of the same site. + example: false + type: boolean + user: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionPairList" + version: + $ref: "#/components/schemas/RumSdkConfigDynamicOption" + required: + - application_id + - session_sample_rate + - session_replay_sample_rate + - default_privacy_level + - enable_privacy_for_action_name + type: object + RumSdkConfigRumUpdateAttributes: + description: The RUM SDK settings to apply when updating a configuration. + properties: + allowed_tracing_urls: + $ref: "#/components/schemas/RumSdkConfigAllowedTracingUrlList" + allowed_tracking_origins: + $ref: "#/components/schemas/RumSdkConfigAllowedTrackingOriginList" + context: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionPairList" + default_privacy_level: + description: The default privacy masking level applied to all RUM data. + example: "mask" + type: string + enable_privacy_for_action_name: + description: Whether to mask user-interaction action names for privacy. + example: true + type: boolean + env: + description: The environment tag for the RUM application. + example: "production" + type: string + service: + description: The service name tag for the RUM application. + example: "my-service" + type: string + session_replay_sample_rate: + description: The percentage of collected sessions for which a replay is captured (0–100). + example: 20 + format: int64 + maximum: 100 + minimum: 0 + type: integer + session_sample_rate: + description: The percentage of user sessions to collect (0–100). + example: 75 + format: int64 + maximum: 100 + minimum: 0 + type: integer + trace_sample_rate: + description: The percentage of requests to forward as APM traces (0–100). + example: 100 + format: int64 + maximum: 100 + minimum: 0 + type: integer + track_session_across_subdomains: + description: Whether to share a session across subdomains of the same site. + example: false + type: boolean + user: + $ref: "#/components/schemas/RumSdkConfigDynamicOptionPairList" + version: + $ref: "#/components/schemas/RumSdkConfigDynamicOption" + required: + - session_sample_rate + - session_replay_sample_rate + - default_privacy_level + - enable_privacy_for_action_name + type: object + RumSdkConfigSerializedRegex: + description: A serialized regex used as an extractor in dynamic options. + properties: + rc_serialized_type: + $ref: "#/components/schemas/RumSdkConfigSerializedRegexType" + value: + description: The regex pattern used for extraction. + example: "^https://app-.*.datadoghq.com" + type: string + required: + - rc_serialized_type + - value + type: object + RumSdkConfigSerializedRegexType: + description: The type identifier for a serialized regex. Always `regex`. + enum: + - regex + example: regex + type: string + x-enum-varnames: + - REGEX + RumSdkConfigTracingUrlConfig: + description: Configuration for a URL that should have distributed tracing enabled. + properties: + match: + $ref: "#/components/schemas/RumSdkConfigMatchOption" + propagator_types: + description: The list of trace propagator types to use for this URL. + example: + - datadog + - tracecontext + items: + $ref: "#/components/schemas/RumSdkConfigTracingUrlPropagatorType" + type: array + required: + - match + - propagator_types + type: object + RumSdkConfigTracingUrlPropagatorType: + description: A trace propagator type. + enum: + - datadog + - b3 + - b3multi + - tracecontext + example: datadog + type: string + x-enum-varnames: + - DATADOG + - B3 + - B3MULTI + - TRACECONTEXT + RumSdkConfigType: + default: rum_sdk_config + description: The type of the resource. The value should always be `rum_sdk_config`. + enum: + - rum_sdk_config + example: rum_sdk_config + type: string + x-enum-varnames: + - RUM_SDK_CONFIG + RumSdkConfigUpdateAttributes: + description: Attributes of the RUM SDK configuration to update. + properties: + rum: + $ref: "#/components/schemas/RumSdkConfigRumUpdateAttributes" + required: + - rum + type: object + RumSdkConfigUpdateData: + description: The data object for updating a RUM SDK configuration. + properties: + attributes: + $ref: "#/components/schemas/RumSdkConfigUpdateAttributes" + id: + description: The ID of the RUM SDK configuration to update. + example: "abc12345-1234-5678-abcd-ef1234567890" + type: string + type: + $ref: "#/components/schemas/RumSdkConfigType" + required: + - id + - type + - attributes + type: object + RumSdkConfigUpdateRequest: + description: Request body for updating a RUM SDK configuration. + properties: + data: + $ref: "#/components/schemas/RumSdkConfigUpdateData" + required: + - data + type: object + RunDataObservabilityMonitorResponse: + description: The response returned when a data observability monitor run is triggered. + properties: + data: + $ref: "#/components/schemas/RunDataObservabilityMonitorResponseData" + required: + - data + type: object + RunDataObservabilityMonitorResponseData: + description: The data object returned when a data observability monitor run is triggered. + properties: + id: + description: The unique identifier of the monitor run. + example: "abc123def456" + type: string + type: + $ref: "#/components/schemas/DataObservabilityMonitorRunType" + required: + - id + - type + type: object + RunHistoricalJobRequest: + description: Run a historical job request. + properties: + data: + $ref: "#/components/schemas/RunHistoricalJobRequestData" + type: object + RunHistoricalJobRequestAttributes: + description: Run a historical job request. + properties: + fromRule: + $ref: "#/components/schemas/JobDefinitionFromRule" + jobDefinition: + $ref: "#/components/schemas/JobDefinition" + signalOutput: + description: Whether the job outputs signals when results are converted. + type: boolean + type: object + RunHistoricalJobRequestData: + description: Data for running a historical job request. + properties: + attributes: + $ref: "#/components/schemas/RunHistoricalJobRequestAttributes" + type: + $ref: "#/components/schemas/RunHistoricalJobRequestDataType" + type: object + RunHistoricalJobRequestDataType: + description: Type of data. + enum: + - historicalDetectionsJobCreate + type: string + x-enum-varnames: + - HISTORICALDETECTIONSJOBCREATE + RunRetentionFilterName: + description: The name of a RUM retention filter. + example: "Retention filter for session" + type: string + SAMLAssertionAttribute: + description: SAML assertion attribute. + properties: + attributes: + $ref: "#/components/schemas/SAMLAssertionAttributeAttributes" + id: + description: The ID of the SAML assertion attribute. + example: "0" + type: string + type: + $ref: "#/components/schemas/SAMLAssertionAttributesType" + required: + - id + - type + type: object + SAMLAssertionAttributeAttributes: + description: Key/Value pair of attributes used in SAML assertion attributes. + properties: + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development + type: string + type: object + SAMLAssertionAttributesType: + default: saml_assertion_attributes + description: SAML assertion attributes resource type. + enum: + - saml_assertion_attributes + example: saml_assertion_attributes + type: string + x-enum-varnames: + - SAML_ASSERTION_ATTRIBUTES + SAMLConfiguration: + description: A SAML configuration object. + properties: + attributes: + $ref: "#/components/schemas/SAMLConfigurationAttributes" + id: + description: The UUID of the SAML configuration. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + relationships: + $ref: "#/components/schemas/SAMLConfigurationRelationships" + type: + $ref: "#/components/schemas/SAMLConfigurationsType" + required: + - id + - type + type: object + SAMLConfigurationAttributes: + description: Attributes of a SAML configuration. + properties: + assertion_consumer_service: + description: The assertion consumer service (ACS) URLs that the identity provider posts SAML responses to. + example: + - https://app.datadoghq.com/account/saml/assertion + items: + description: An assertion consumer service URL. + example: https://app.datadoghq.com/account/saml/assertion + type: string + type: array + created_at: + description: Creation time of the SAML configuration. + format: date-time + readOnly: true + type: string + entity_id: + description: The service provider entity ID Datadog presents to the identity provider. + example: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + type: string + expires_at: + description: Expiration time of the uploaded identity provider metadata. + example: "2010-10-26T13:31:15+00:00" + format: date-time + nullable: true + type: string + idp_initiated: + description: Whether identity-provider-initiated login is enabled for the organization. + example: true + type: boolean + jit_domains: + description: |- + Email domains for which users are automatically provisioned on first SAML login + (just-in-time provisioning). + example: + - example.com + items: + description: An email domain for just-in-time user provisioning. + example: example.com + type: string + type: array + modified_at: + description: Time of the last SAML configuration modification. + format: date-time + readOnly: true + type: string + sso_url: + description: |- + The single sign-on URL users can visit to start a SAML login. + Returns `null` when the organization is identity-provider-initiated and has no subdomain. + example: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + nullable: true + type: string + type: object + SAMLConfigurationRelationships: + description: Relationships of a SAML configuration. + properties: + default_roles: + $ref: "#/components/schemas/RelationshipToRoles" + type: object + SAMLConfigurationResponse: + description: Response containing a single SAML configuration. + properties: + data: + $ref: "#/components/schemas/SAMLConfiguration" + included: + description: Resources related to the SAML configuration, such as the default roles. + items: + $ref: "#/components/schemas/Role" + type: array + required: + - data + type: object + SAMLConfigurationUpdateAttributes: + description: Attributes for updating a SAML configuration. + properties: + idp_initiated: + description: Whether identity-provider-initiated login is enabled for the organization. + example: true + type: boolean + jit_domains: + description: |- + Email domains for which users are automatically provisioned on first SAML login + (just-in-time provisioning). A default role is required to enable just-in-time provisioning. + example: + - example.com + items: + description: An email domain for just-in-time user provisioning. + example: example.com + maxLength: 255 + minLength: 1 + type: string + maxItems: 50 + minItems: 0 + type: array + type: object + SAMLConfigurationUpdateData: + description: Data for updating a SAML configuration. + properties: + attributes: + $ref: "#/components/schemas/SAMLConfigurationUpdateAttributes" + id: + description: The UUID of the SAML configuration to update. Must match the UUID in the URL path. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + maxLength: 39 + type: string + relationships: + $ref: "#/components/schemas/SAMLConfigurationRelationships" + type: + $ref: "#/components/schemas/SAMLConfigurationsType" + required: + - id + - type + type: object + SAMLConfigurationUpdateRequest: + description: Request to update a SAML configuration. + properties: + data: + $ref: "#/components/schemas/SAMLConfigurationUpdateData" + required: + - data + type: object + SAMLConfigurationsResponse: + description: Response containing a list of SAML configurations. + properties: + data: + description: Array of SAML configurations. An organization has at most one SAML configuration. + items: + $ref: "#/components/schemas/SAMLConfiguration" + type: array + included: + description: Resources related to the SAML configurations, such as the default roles. + items: + $ref: "#/components/schemas/Role" + type: array + type: object + SAMLConfigurationsType: + default: saml_configurations + description: SAML configurations resource type. + enum: + - saml_configurations + example: saml_configurations + type: string + x-enum-varnames: + - SAML_CONFIGURATIONS + SBOM: + description: A single SBOM + properties: + attributes: + $ref: "#/components/schemas/SBOMAttributes" + id: + description: The unique ID for this SBOM (it is equivalent to the `asset_name` or `asset_name@repo_digest` (Image) + example: "github.com/datadog/datadog-agent" + type: string + type: + $ref: "#/components/schemas/SBOMType" + type: object + SBOMAttributes: + description: The JSON:API attributes of the SBOM. + properties: + bomFormat: + description: Specifies the format of the BOM. This helps to identify the file as CycloneDX since BOM do not have a filename convention nor does JSON schema support namespaces. This value MUST be `CycloneDX`. + example: CycloneDX + type: string + components: + description: A list of software and hardware components. + items: + $ref: "#/components/schemas/SBOMComponent" + type: array + dependencies: + description: List of dependencies between components of the SBOM. + items: + $ref: "#/components/schemas/SBOMComponentDependency" + type: array + metadata: + $ref: "#/components/schemas/SBOMMetadata" + serialNumber: + description: Every BOM generated has a unique serial number, even if the contents of the BOM have not changed overt time. The serial number follows [RFC-4122](https://datatracker.ietf.org/doc/html/rfc4122) + example: urn:uuid:f7119d2f-1vgh-24b5-91f0-12010db72da7 + type: string + specVersion: + $ref: "#/components/schemas/SpecVersion" + version: + description: It increments when a BOM is modified. The default value is 1. + example: 1 + format: int64 + type: integer + required: + - bomFormat + - specVersion + - components + - metadata + - serialNumber + - version + - dependencies + type: object + SBOMComponent: + description: Software or hardware component. + properties: + bom-ref: + description: An optional identifier that can be used to reference the component elsewhere in the BOM. + example: "pkg:golang/google.golang.org/grpc@1.68.1" + type: string + licenses: + description: The software licenses of the SBOM component. + items: + $ref: "#/components/schemas/SBOMComponentLicense" + type: array + name: + description: The name of the component. This will often be a shortened, single name of the component. + example: "google.golang.org/grpc" + type: string + properties: + description: The custom properties of the component of the SBOM. + items: + $ref: "#/components/schemas/SBOMComponentProperty" + type: array + purl: + description: Specifies the package-url (purl). The purl, if specified, MUST be valid and conform to the [specification](https://github.com/package-url/purl-spec). + example: "pkg:golang/google.golang.org/grpc@1.68.1" + type: string + supplier: + $ref: "#/components/schemas/SBOMComponentSupplier" + type: + $ref: "#/components/schemas/SBOMComponentType" + version: + description: The component version. + example: "1.68.1" + type: string + required: + - type + - name + - version + - supplier + type: object + SBOMComponentDependency: + description: The dependencies of a component of the SBOM. + properties: + dependsOn: + description: The components that are dependencies of the ref component. + items: + description: A package URL (purl) identifying a dependency of the component. + example: pkg:golang/google.golang.org/grpc@1.68.1 + type: string + required: + - ref + - dependsOn + type: array + ref: + description: The identifier for the related component. + example: Repository|github.com/datadog/datadog-agent + type: string + type: object + SBOMComponentLicense: + description: The software license of the component of the SBOM. + properties: + license: + $ref: "#/components/schemas/SBOMComponentLicenseLicense" + required: + - license + type: object + SBOMComponentLicenseLicense: + description: The software license of the component of the SBOM. + properties: + name: + description: The name of the software license of the component of the SBOM. + example: MIT + type: string + required: + - name + type: object + SBOMComponentLicenseType: + description: The SBOM component license type. + enum: + - network_strong_copyleft + - non_standard_copyleft + - other_non_free + - other_non_standard + - permissive + - public_domain + - strong_copyleft + - weak_copyleft + example: application + type: string + x-enum-varnames: + - NETWORK_STRONG_COPYLEFT + - NON_STANDARD_COPYLEFT + - OTHER_NON_FREE + - OTHER_NON_STANDARD + - PERMISSIVE + - PUBLIC_DOMAIN + - STRONG_COPYLEFT + - WEAK_COPYLEFT + SBOMComponentProperty: + description: The custom property of the component of the SBOM. + properties: + name: + description: The name of the custom property of the component of the SBOM. + example: license_type + type: string + value: + description: The value of the custom property of the component of the SBOM. + example: permissive + type: string + required: + - name + - value + type: object + SBOMComponentSupplier: + description: The supplier of the component. + properties: + name: + description: Identifier of the supplier of the component. + example: https://go.dev + type: string + required: + - name + type: object + SBOMComponentType: + description: The SBOM component type + enum: + - application + - container + - data + - device + - device-driver + - file + - firmware + - framework + - library + - machine-learning-model + - operating-system + - platform + example: application + type: string + x-enum-varnames: + - APPLICATION + - CONTAINER + - DATA + - DEVICE + - DEVICE_DRIVER + - FILE + - FIRMWARE + - FRAMEWORK + - LIBRARY + - MACHINE_LEARNING_MODEL + - OPERATING_SYSTEM + - PLATFORM + SBOMFormat: + description: The SBOM standard + enum: + - CycloneDX + - SPDX + example: CycloneDX + type: string + x-enum-varnames: + - CYCLONEDX + - SPDX + SBOMMetadata: + description: Provides additional information about a BOM. + properties: + authors: + description: List of authors of the SBOM. + items: + $ref: "#/components/schemas/SBOMMetadataAuthor" + type: array + component: + $ref: "#/components/schemas/SBOMMetadataComponent" + timestamp: + description: The timestamp of the SBOM creation. + example: "2025-07-08T07:24:53Z" + type: string + type: object + SBOMMetadataAuthor: + description: Author of the SBOM. + properties: + name: + description: The identifier of the Author of the SBOM. + example: "Datadog, Inc." + type: string + type: object + SBOMMetadataComponent: + description: The component that the BOM describes. + properties: + name: + description: The name of the component. This will often be a shortened, single name of the component. + example: "github.com/datadog/datadog-agent" + type: string + type: + description: Specifies the type of the component. + example: application + type: string + type: object + SBOMType: + description: The JSON:API type. + enum: + - sboms + example: sboms + type: string + x-enum-varnames: + - SBOMS + SLOReportInterval: + description: |- + The frequency at which report data is to be generated. + enum: + - daily + - weekly + - monthly + example: weekly + type: string + x-enum-varnames: + - DAILY + - WEEKLY + - MONTHLY + SLOReportPostResponse: + description: The SLO report response. + properties: + data: + $ref: "#/components/schemas/SLOReportPostResponseData" + type: object + SLOReportPostResponseData: + description: The data portion of the SLO report response. + properties: + id: + description: The ID of the report job. + example: "dc8d92aa-e0af-11ee-af21-1feeaccaa3a3" + type: string + type: + description: The type of ID. + example: "report_id" + type: string + type: object + SLOReportStatus: + description: The status of the SLO report job. + enum: + - in_progress + - completed + - completed_with_errors + - failed + example: "completed" + type: string + x-enum-varnames: + - IN_PROGRESS + - COMPLETED + - COMPLETED_WITH_ERRORS + - FAILED + SLOReportStatusGetResponse: + description: The SLO report status response. + properties: + data: + $ref: "#/components/schemas/SLOReportStatusGetResponseData" + type: object + SLOReportStatusGetResponseAttributes: + description: The attributes portion of the SLO report status response. + properties: + status: + $ref: "#/components/schemas/SLOReportStatus" + type: object + SLOReportStatusGetResponseData: + description: The data portion of the SLO report status response. + properties: + attributes: + $ref: "#/components/schemas/SLOReportStatusGetResponseAttributes" + id: + description: The ID of the report job. + example: "dc8d92aa-e0af-11ee-af21-1feeaccaa3a3" + type: string + type: + description: The type of ID. + example: "report_id" + type: string + type: object + SalesforceIncidentsOrganizationResponseAttributes: + description: Attributes of a Salesforce organization connected to the Datadog Salesforce integration. + properties: + instance_url: + description: The Salesforce instance URL used to call this organization's APIs. + example: "https://acme.my.salesforce.com" + type: string + name: + description: Human-readable name of the Salesforce organization. + example: "Acme Production Org" + type: string + sfdc_org_id: + description: The Salesforce organization identifier (15- or 18-character Salesforce org ID). + example: "00D000000000000" + type: string + sfdc_org_type: + description: The Salesforce organization type (for example, `Production` or `Sandbox`). + example: "Production" + type: string + type: object + SalesforceIncidentsOrganizationResponseData: + description: Salesforce organization data from a response. + properties: + attributes: + $ref: "#/components/schemas/SalesforceIncidentsOrganizationResponseAttributes" + id: + description: The Datadog-assigned ID of the connected Salesforce organization. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/SalesforceIncidentsOrganizationType" + required: + - id + - type + - attributes + type: object + SalesforceIncidentsOrganizationType: + default: salesforce-incidents-org + description: Salesforce organization resource type. + enum: + - salesforce-incidents-org + example: salesforce-incidents-org + type: string + x-enum-varnames: + - SALESFORCE_INCIDENTS_ORG + SalesforceIncidentsOrganizationsResponse: + description: |- + Response containing a list of Salesforce organizations connected to the + Datadog Salesforce integration. + properties: + data: + description: An array of Salesforce organizations. + items: + $ref: "#/components/schemas/SalesforceIncidentsOrganizationResponseData" + type: array + required: + - data + type: object + SalesforceIncidentsTemplateCreateAttributes: + description: Salesforce incident template attributes for a create request. + properties: + description: + description: Long-form description body for Salesforce incidents created from this template. + example: "An incident was detected by Datadog monitors." + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this incident template. Must be unique within your organization. + example: "production-outage" + maxLength: 100 + minLength: 1 + type: string + owner_id: + description: The Salesforce user ID that owns incidents created from this template. + example: "005000000000000" + maxLength: 255 + minLength: 1 + type: string + priority: + $ref: "#/components/schemas/SalesforceIncidentsTemplatePriority" + salesforce_org_id: + description: The Datadog-assigned ID of the Salesforce organization this template belongs to. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + format: uuid + type: string + subject: + description: Subject line for Salesforce incidents created from this template. + example: "Datadog Incident: Production Outage" + maxLength: 255 + minLength: 1 + type: string + required: + - salesforce_org_id + - name + - subject + - description + - owner_id + - priority + type: object + SalesforceIncidentsTemplateCreateData: + description: Salesforce incident template data for a create request. + properties: + attributes: + $ref: "#/components/schemas/SalesforceIncidentsTemplateCreateAttributes" + type: + $ref: "#/components/schemas/SalesforceIncidentsTemplateType" + required: + - type + - attributes + type: object + SalesforceIncidentsTemplateCreateRequest: + description: Create request for a Salesforce incident template. + properties: + data: + $ref: "#/components/schemas/SalesforceIncidentsTemplateCreateData" + required: + - data + type: object + SalesforceIncidentsTemplatePriority: + description: Priority of the Salesforce incident created from this template. + enum: + - Critical + - High + - Moderate + - Low + example: "High" + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MODERATE + - LOW + SalesforceIncidentsTemplateResponse: + description: Response containing a Salesforce incident template. + properties: + data: + $ref: "#/components/schemas/SalesforceIncidentsTemplateResponseData" + required: + - data + type: object + SalesforceIncidentsTemplateResponseAttributes: + description: Salesforce incident template attributes returned by the API. + properties: + description: + description: Long-form description body for Salesforce incidents created from this template. + example: "An incident was detected by Datadog monitors." + type: string + name: + description: Human-readable name for this incident template. + example: "production-outage" + type: string + owner_id: + description: The Salesforce user ID that owns incidents created from this template. + example: "005000000000000" + type: string + priority: + $ref: "#/components/schemas/SalesforceIncidentsTemplatePriority" + salesforce_org_id: + description: The Datadog-assigned ID of the Salesforce organization this template belongs to. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + format: uuid + type: string + subject: + description: Subject line for Salesforce incidents created from this template. + example: "Datadog Incident: Production Outage" + type: string + type: object + SalesforceIncidentsTemplateResponseData: + description: Salesforce incident template data from a response. + properties: + attributes: + $ref: "#/components/schemas/SalesforceIncidentsTemplateResponseAttributes" + id: + description: The ID of the Salesforce incident template. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/SalesforceIncidentsTemplateType" + required: + - id + - type + - attributes + type: object + SalesforceIncidentsTemplateType: + default: salesforce-incidents-incident-template + description: Salesforce incident template resource type. + enum: + - salesforce-incidents-incident-template + example: salesforce-incidents-incident-template + type: string + x-enum-varnames: + - SALESFORCE_INCIDENTS_INCIDENT_TEMPLATE + SalesforceIncidentsTemplateUpdateAttributes: + description: Salesforce incident template attributes for an update request. + properties: + description: + description: Long-form description body for Salesforce incidents created from this template. + example: "An incident was detected by Datadog monitors." + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this incident template. + example: "production-outage" + maxLength: 100 + minLength: 1 + type: string + owner_id: + description: The Salesforce user ID that owns incidents created from this template. + example: "005000000000000" + maxLength: 255 + minLength: 1 + type: string + priority: + $ref: "#/components/schemas/SalesforceIncidentsTemplatePriority" + salesforce_org_id: + description: The Datadog-assigned ID of the Salesforce organization this template belongs to. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + format: uuid + type: string + subject: + description: Subject line for Salesforce incidents created from this template. + example: "Datadog Incident: Production Outage" + maxLength: 255 + minLength: 1 + type: string + type: object + SalesforceIncidentsTemplateUpdateData: + description: Salesforce incident template data for an update request. + properties: + attributes: + $ref: "#/components/schemas/SalesforceIncidentsTemplateUpdateAttributes" + id: + description: The ID of the Salesforce incident template being updated. Must match the path parameter. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/SalesforceIncidentsTemplateType" + required: + - id + - type + - attributes + type: object + SalesforceIncidentsTemplateUpdateRequest: + description: Update request for a Salesforce incident template. + properties: + data: + $ref: "#/components/schemas/SalesforceIncidentsTemplateUpdateData" + required: + - data + type: object + SalesforceIncidentsTemplatesResponse: + description: Response containing a list of Salesforce incident templates. + properties: + data: + description: An array of Salesforce incident templates. + items: + $ref: "#/components/schemas/SalesforceIncidentsTemplateResponseData" + type: array + required: + - data + type: object + SampleLogGenerationBulkSubscriptionAttributes: + description: The attributes for creating sample log generation subscriptions for multiple content packs. + properties: + content_pack_ids: + description: The identifiers of the Cloud SIEM content packs to subscribe to. At most five content packs can be requested in a single call. + example: + - aws-cloudtrail + items: + description: A Cloud SIEM content pack identifier. + type: string + maxItems: 5 + type: array + duration: + $ref: "#/components/schemas/SampleLogGenerationDuration" + required: + - content_pack_ids + type: object + SampleLogGenerationBulkSubscriptionData: + description: The bulk subscription request body. + properties: + attributes: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionAttributes" + type: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionRequestType" + required: + - type + - attributes + type: object + SampleLogGenerationBulkSubscriptionItemMeta: + description: Per-item status returned for a bulk subscription request. + properties: + error: + description: A description of the error encountered for this content pack, if the subscription could not be created. + example: content pack does not exist + type: string + status: + description: The HTTP status code that resulted from creating the subscription for this content pack. + example: 200 + format: int32 + maximum: 599 + type: integer + required: + - status + type: object + SampleLogGenerationBulkSubscriptionRequest: + description: Request body to create sample log generation subscriptions for multiple content packs at once. + properties: + data: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionData" + required: + - data + type: object + SampleLogGenerationBulkSubscriptionRequestType: + default: bulk_subscription_requests + description: The type of the resource. The value should always be `bulk_subscription_requests`. + enum: + - bulk_subscription_requests + example: bulk_subscription_requests + type: string + x-enum-varnames: + - BULK_SUBSCRIPTION_REQUESTS + SampleLogGenerationBulkSubscriptionResponse: + description: Response containing the per-content-pack results of a bulk subscription request. + properties: + data: + description: The list of bulk subscription results, one per requested content pack. + items: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionResultItem" + type: array + required: + - data + type: object + SampleLogGenerationBulkSubscriptionResultItem: + description: A single result entry returned by the bulk subscription endpoint. + properties: + attributes: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionAttributes" + id: + description: The unique identifier of the subscription, when one was created. + example: "123" + type: string + meta: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionItemMeta" + type: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionResourceType" + required: + - id + - type + - attributes + - meta + type: object + SampleLogGenerationDuration: + default: 3d + description: How long the subscription should remain active before expiring. + enum: + - 1h + - 1d + - 3d + - 7d + example: 3d + type: string + x-enum-varnames: + - ONE_HOUR + - ONE_DAY + - THREE_DAYS + - SEVEN_DAYS + SampleLogGenerationSubscriptionAttributes: + description: The attributes describing a sample log generation subscription. + properties: + content_pack_id: + description: The identifier of the Cloud SIEM content pack the subscription targets. + example: aws-cloudtrail + type: string + created_at: + description: The time at which the subscription was created. + example: "2026-05-08T20:02:13.77481Z" + format: date-time + type: string + expires_at: + description: The time at which the subscription expires and stops generating logs. + example: "2026-05-11T20:02:13.77481Z" + format: date-time + type: string + is_active: + description: Whether the subscription is currently active and generating logs. + example: true + type: boolean + status: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionStatus" + required: + - content_pack_id + - status + - is_active + - created_at + - expires_at + type: object + SampleLogGenerationSubscriptionCreateAttributes: + description: The attributes for creating a sample log generation subscription. + properties: + content_pack_id: + description: The identifier of the Cloud SIEM content pack to subscribe to. + example: aws-cloudtrail + type: string + duration: + $ref: "#/components/schemas/SampleLogGenerationDuration" + required: + - content_pack_id + type: object + SampleLogGenerationSubscriptionCreateData: + description: The subscription request body. + properties: + attributes: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionCreateAttributes" + type: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionRequestType" + required: + - type + - attributes + type: object + SampleLogGenerationSubscriptionCreateRequest: + description: Request body to create a sample log generation subscription for a single content pack. + properties: + data: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionCreateData" + required: + - data + type: object + SampleLogGenerationSubscriptionData: + description: A sample log generation subscription. + properties: + attributes: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionAttributes" + id: + description: The unique identifier of the subscription. + example: "789" + type: string + type: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionResourceType" + required: + - id + - type + - attributes + type: object + SampleLogGenerationSubscriptionRequestType: + default: subscription_requests + description: The type of the resource. The value should always be `subscription_requests`. + enum: + - subscription_requests + example: subscription_requests + type: string + x-enum-varnames: + - SUBSCRIPTION_REQUESTS + SampleLogGenerationSubscriptionResourceType: + default: subscriptions + description: The type of the resource. The value should always be `subscriptions`. + enum: + - subscriptions + example: subscriptions + type: string + x-enum-varnames: + - SUBSCRIPTIONS + SampleLogGenerationSubscriptionResponse: + description: Response containing a single sample log generation subscription. + properties: + data: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionData" + required: + - data + type: object + SampleLogGenerationSubscriptionStatus: + description: The status of the subscription. + enum: + - subscribed + - renewed + - unsubscribed + - no_active_subscription + - not_available + - active + - expired + example: subscribed + type: string + x-enum-varnames: + - SUBSCRIBED + - RENEWED + - UNSUBSCRIBED + - NO_ACTIVE_SUBSCRIPTION + - NOT_AVAILABLE + - ACTIVE + - EXPIRED + SampleLogGenerationSubscriptionsResponse: + description: Response containing a list of sample log generation subscriptions. + properties: + data: + description: The list of sample log generation subscriptions. + items: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionData" + type: array + meta: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionsResponseMeta" + required: + - data + - meta + type: object + SampleLogGenerationSubscriptionsResponseMeta: + description: Metadata returned alongside a list of sample log generation subscriptions. + properties: + total_subscriptions: + description: The total number of subscriptions matching the request, irrespective of pagination. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - total_subscriptions + type: object + SampleLogGenerationSubscriptionsStatusFilter: + default: active + description: Filter that controls whether to return only active subscriptions or every subscription on record. + enum: + - active + - all + example: active + type: string + x-enum-varnames: + - ACTIVE + - ALL + SastRulesetData: + description: The primary data object representing a SAST ruleset. + properties: + attributes: + $ref: "#/components/schemas/SastRulesetDataAttributes" + id: + description: The unique identifier of the ruleset resource. + example: python-best-practices + type: string + type: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsDataType" + required: + - id + - type + - attributes + type: object + SastRulesetDataAttributes: + description: The attributes of a SAST ruleset, including its name, description, and rules. + properties: + description: + description: A detailed description of the ruleset's purpose and the types of issues it targets. + example: A collection of Python best practice rules. + type: string + name: + description: The unique name of the ruleset. + example: python-best-practices + type: string + rules: + description: The list of static analysis rules included in this ruleset. + items: + $ref: "#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItems" + type: array + short_description: + description: A brief summary of the ruleset, suitable for display in listings. + example: Python best practices ruleset. + type: string + required: + - name + - short_description + - description + - rules + type: object + SastRulesetResponse: + description: The response payload containing a single SAST ruleset and its rules. + properties: + data: + $ref: "#/components/schemas/SastRulesetData" + required: + - data + type: object + SastRulesetsResponse: + description: The response payload containing a list of SAST rulesets and their rules. + properties: + data: + description: The list of SAST rulesets returned in the response. + items: + $ref: "#/components/schemas/SastRulesetData" + type: array + required: + - data + type: object + ScaRequest: + description: The top-level request object for submitting a Software Composition Analysis (SCA) scan result. + properties: + data: + $ref: "#/components/schemas/ScaRequestData" + type: object + ScaRequestData: + description: The data object in an SCA request, containing the dependency graph attributes and request type. + properties: + attributes: + $ref: "#/components/schemas/ScaRequestDataAttributes" + id: + description: An optional identifier for this SCA request data object. + type: string + type: + $ref: "#/components/schemas/ScaRequestDataType" + required: + - type + type: object + ScaRequestDataAttributes: + description: The attributes of an SCA request, containing dependency graph data, vulnerability information, and repository context. + properties: + commit: + $ref: "#/components/schemas/ScaRequestDataAttributesCommit" + dependencies: + description: The list of dependencies discovered in the repository. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItems" + type: array + env: + description: The environment context in which the SCA scan was performed (e.g., production, staging). + type: string + files: + description: The list of dependency manifest files found in the repository. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesFilesItems" + type: array + relations: + description: The dependency relations describing the inter-component dependency graph. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesRelationsItems" + type: array + repository: + $ref: "#/components/schemas/ScaRequestDataAttributesRepository" + service: + description: The name of the service or application being analyzed. + type: string + tags: + additionalProperties: + type: string + description: A map of key-value tags providing additional metadata for the SCA scan. + type: object + vulnerabilities: + description: The list of vulnerabilities identified in the dependency graph. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesVulnerabilitiesItems" + type: array + type: object + ScaRequestDataAttributesCommit: + description: Metadata about the commit associated with the SCA scan, including author, committer, and branch information. + properties: + author_date: + description: The date when the commit was authored. + type: string + author_email: + description: The email address of the commit author. + type: string + author_name: + description: The full name of the commit author. + type: string + branch: + description: The branch name on which the commit was made. + type: string + committer_email: + description: The email address of the person who committed the change. + type: string + committer_name: + description: The full name of the person who committed the change. + type: string + sha: + description: The SHA hash uniquely identifying the commit. + type: string + type: object + ScaRequestDataAttributesDependenciesItems: + description: A dependency found in the repository, including its identity, location, and reachability metadata. + properties: + exclusions: + description: A list of patterns or identifiers that should be excluded from analysis for this dependency. + items: + description: An exclusion pattern or identifier. + type: string + type: array + group: + description: The group or organization namespace of the dependency (e.g., Maven group ID). + type: string + is_dev: + description: Indicates whether this is a development-only dependency not used in production. + type: boolean + is_direct: + description: Indicates whether this is a direct dependency (as opposed to a transitive one). + type: boolean + language: + description: The programming language ecosystem of this dependency (e.g., java, python, javascript). + type: string + locations: + description: The list of source file locations where this dependency is declared. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItems" + type: array + name: + description: The name of the dependency package. + type: string + package_manager: + description: The package manager responsible for this dependency (e.g., maven, pip, npm). + type: string + purl: + description: The Package URL (PURL) uniquely identifying this dependency. + type: string + reachable_symbol_properties: + description: Properties describing symbols from this dependency that are reachable in the application code. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsReachableSymbolPropertiesItems" + type: array + version: + description: The version of the dependency. + type: string + type: object + ScaRequestDataAttributesDependenciesItemsLocationsItems: + description: The source code location where a dependency is declared, including block, name, namespace, and version positions within the file. + properties: + block: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition" + name: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition" + namespace: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition" + version: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition" + type: object + ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition: + description: A range within a file defined by a start and end position, along with the file name. + properties: + end: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsPosition" + file_name: + description: The name or path of the file containing this location. + type: string + start: + $ref: "#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsPosition" + type: object + ScaRequestDataAttributesDependenciesItemsLocationsItemsPosition: + description: A specific position (line and column) within a source file. + properties: + col: + description: The column number of the position within the line. + format: int32 + maximum: 2147483647 + type: integer + line: + description: The line number of the position within the file. + format: int32 + maximum: 2147483647 + type: integer + type: object + ScaRequestDataAttributesDependenciesItemsReachableSymbolPropertiesItems: + description: A key-value property describing a reachable symbol within a dependency. + properties: + name: + description: The name of the reachable symbol property. + type: string + value: + description: The value of the reachable symbol property. + type: string + type: object + ScaRequestDataAttributesFilesItems: + description: A file entry in the repository associated with a dependency manifest. + properties: + name: + description: The name or path of the file within the repository. + type: string + purl: + description: The Package URL (PURL) associated with the dependency declared in this file. + type: string + type: object + ScaRequestDataAttributesRelationsItems: + description: A dependency relation describing which other components a given component depends on. + properties: + depends_on: + description: The list of BOM references that this component directly depends on. + items: + description: A BOM reference of a dependency. + type: string + type: array + ref: + description: The BOM reference of the component that has dependencies. + type: string + type: object + ScaRequestDataAttributesRepository: + description: Information about the source code repository being analyzed. + properties: + url: + description: The URL of the repository. + type: string + type: object + ScaRequestDataAttributesVulnerabilitiesItems: + description: A vulnerability entry from the Software Bill of Materials (SBOM), describing a known security issue and the components it affects. + properties: + affects: + description: The list of components affected by this vulnerability. + items: + $ref: "#/components/schemas/ScaRequestDataAttributesVulnerabilitiesItemsAffectsItems" + type: array + bom_ref: + description: The unique BOM reference identifier for this vulnerability entry. + type: string + id: + description: The vulnerability identifier (e.g., CVE ID or similar). + type: string + type: object + ScaRequestDataAttributesVulnerabilitiesItemsAffectsItems: + description: A reference to a component affected by a vulnerability. + properties: + ref: + description: The BOM reference identifying the affected component. + type: string + type: object + ScaRequestDataType: + default: scarequests + description: The type identifier for SCA dependency analysis requests. + enum: + - scarequests + example: scarequests + type: string + x-enum-varnames: + - SCAREQUESTS + ScalarColumn: + description: A single column in a scalar query response. + oneOf: + - $ref: "#/components/schemas/GroupScalarColumn" + - $ref: "#/components/schemas/DataScalarColumn" + ScalarColumnTypeGroup: + default: group + description: The type of column present for groups. + enum: + - group + example: group + type: string + x-enum-varnames: + - GROUP + ScalarColumnTypeNumber: + default: number + description: The type of column present for numbers. + enum: + - number + example: number + type: string + x-enum-varnames: + - NUMBER + ScalarFormulaQueryRequest: + description: A wrapper request around one scalar query to be executed. + properties: + data: + $ref: "#/components/schemas/ScalarFormulaRequest" + required: + - data + type: object + ScalarFormulaQueryResponse: + description: A message containing one or more responses to scalar queries. + properties: + data: + $ref: "#/components/schemas/ScalarResponse" + errors: + description: An error generated when processing a request. + type: string + type: object + ScalarFormulaRequest: + description: A single scalar query to be executed. + properties: + attributes: + $ref: "#/components/schemas/ScalarFormulaRequestAttributes" + type: + $ref: "#/components/schemas/ScalarFormulaRequestType" + required: + - type + - attributes + type: object + ScalarFormulaRequestAttributes: + description: The object describing a scalar formula request. + properties: + formulas: + description: List of formulas to be calculated and returned as responses. + items: + $ref: "#/components/schemas/QueryFormula" + type: array + from: + description: Start date (inclusive) of the query in milliseconds since the Unix epoch. + example: 1568899800000 + format: int64 + type: integer + queries: + $ref: "#/components/schemas/ScalarFormulaRequestQueries" + to: + description: End date (exclusive) of the query in milliseconds since the Unix epoch. + example: 1568923200000 + format: int64 + type: integer + required: + - to + - from + - queries + type: object + ScalarFormulaRequestQueries: + description: List of queries to be run and used as inputs to the formulas. + example: + - aggregator: avg + data_source: metrics + query: "avg:system.cpu.user{*} by {env}" + items: + $ref: "#/components/schemas/ScalarQuery" + type: array + ScalarFormulaRequestType: + default: "scalar_request" + description: The type of the resource. The value should always be scalar_request. + enum: ["scalar_request"] + example: "scalar_request" + type: string + x-enum-varnames: ["SCALAR_REQUEST"] + ScalarFormulaResponseAtrributes: + description: The object describing a scalar response. + properties: + columns: + description: List of response columns, each corresponding to an individual formula or query in the request and with values in parallel arrays matching the series list. + items: + $ref: "#/components/schemas/ScalarColumn" + type: array + type: object + ScalarFormulaResponseType: + default: "scalar_response" + description: The type of the resource. The value should always be scalar_response. + enum: ["scalar_response"] + example: "scalar_response" + type: string + x-enum-varnames: ["SCALAR_RESPONSE"] + ScalarMeta: + description: Metadata for the resulting numerical values. + properties: + unit: + description: |- + Detailed information about the unit. + First element describes the "primary unit" (for example, `bytes` in `bytes per second`). + The second element describes the "per unit" (for example, `second` in `bytes per second`). + If the second element is not present, the API returns null. + items: + $ref: "#/components/schemas/Unit" + nullable: true + type: array + type: object + ScalarQuery: + description: An individual scalar query to one of the basic Datadog data sources. + example: + aggregator: avg + data_source: metrics + query: "avg:system.cpu.user{*} by {env}" + oneOf: + - $ref: "#/components/schemas/MetricsScalarQuery" + - $ref: "#/components/schemas/EventsScalarQuery" + - $ref: "#/components/schemas/ApmResourceStatsQuery" + - $ref: "#/components/schemas/ApmMetricsQuery" + - $ref: "#/components/schemas/ApmDependencyStatsQuery" + - $ref: "#/components/schemas/SloQuery" + - $ref: "#/components/schemas/ProcessScalarQuery" + - $ref: "#/components/schemas/ContainerScalarQuery" + ScalarResponse: + description: A message containing the response to a scalar query. + properties: + attributes: + $ref: "#/components/schemas/ScalarFormulaResponseAtrributes" + type: + $ref: "#/components/schemas/ScalarFormulaResponseType" + type: object + ScanResultResponse: + description: |- + The raw scan result document produced by the SCA processor. + The contents reflect the vulnerabilities and metadata produced for the libraries + submitted in the original scan request. + oneOf: + - $ref: "#/components/schemas/AnyValueObject" + ScannedAssetMetadata: + description: The metadata of a scanned asset. + properties: + attributes: + $ref: "#/components/schemas/ScannedAssetMetadataAttributes" + id: + description: The ID of the scanned asset metadata. + example: "Host|i-0fc7edef1ab26d7ef" + type: string + type: + $ref: "#/components/schemas/ScannedAssetMetadataType" + required: + - id + - type + - attributes + type: object + ScannedAssetMetadataAsset: + description: The asset of a scanned asset metadata. + properties: + name: + description: The name of the asset. + example: "i-0fc7edef1ab26d7ef" + type: string + type: + $ref: "#/components/schemas/CloudAssetType" + required: + - type + - name + type: object + ScannedAssetMetadataAttributes: + description: The attributes of a scanned asset metadata. + properties: + asset: + $ref: "#/components/schemas/ScannedAssetMetadataAsset" + first_success_timestamp: + description: The timestamp when the scan of the asset was performed for the first time. + example: "2025-07-08T07:24:53Z" + type: string + last_success: + $ref: "#/components/schemas/ScannedAssetMetadataLastSuccess" + required: + - asset + - last_success + - first_success_timestamp + type: object + ScannedAssetMetadataLastSuccess: + description: Metadata for the last successful scan of an asset. + properties: + env: + description: The environment of the last success scan of the asset. + example: "prod" + type: string + origin: + description: The list of origins of the last success scan of the asset. + example: + - production + items: + description: An origin identifier for the last successful scan of the asset. + example: production + type: string + type: array + timestamp: + description: The timestamp of the last success scan of the asset. + example: "2025-07-08T07:24:53Z" + type: string + required: + - timestamp + type: object + ScannedAssetMetadataType: + description: The JSON:API type. + enum: + - scanned-assets-metadata + example: scanned-assets-metadata + type: string + x-enum-varnames: + - SCANNED_ASSETS_METADATA + ScannedAssetsMetadata: + description: The expected response schema when listing scanned assets metadata. + properties: + data: + description: List of scanned assets metadata. + items: + $ref: "#/components/schemas/ScannedAssetMetadata" + type: array + links: + $ref: "#/components/schemas/Links" + meta: + $ref: "#/components/schemas/Metadata" + required: + - data + type: object + Schedule: + description: Top-level container for a schedule object, including both the `data` payload and any related `included` resources (such as teams, layers, or members). + example: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: layers + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + included: + - attributes: + avatar: "" + description: Team 1 description + handle: team1 + name: Team 1 + id: 00000000-da3a-0000-0000-000000000000 + type: teams + - attributes: + effective_date: "2025-02-03T05:00:00Z" + end_date: "2025-12-31T00:00:00Z" + interval: + days: 1 + name: Layer 1 + restrictions: + - end_day: friday + end_time: "17:00:00" + start_day: monday + start_time: "09:00:00" + rotation_start: "2025-02-01T00:00:00Z" + id: 00000000-0000-0000-0000-000000000001 + relationships: + members: + data: + - id: 00000000-0000-0000-0000-000000000002 + type: members + type: layers + - id: 00000000-0000-0000-0000-000000000002 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: members + - attributes: + email: foo@bar.com + name: User 1 + id: 00000000-aba1-0000-0000-000000000000 + type: users + properties: + data: + $ref: "#/components/schemas/ScheduleData" + included: + description: Any additional resources related to this schedule, such as teams and layers. + items: + $ref: "#/components/schemas/ScheduleDataIncludedItem" + type: array + type: object + ScheduleCreateRequest: + description: The top-level request body for schedule creation, wrapping a `data` object. + example: + data: + attributes: + layers: + - effective_date: "2025-02-03T05:00:00Z" + end_date: "2025-12-31T00:00:00Z" + interval: + days: 1 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: "17:00:00" + start_day: monday + start_time: "09:00:00" + rotation_start: "2025-02-01T00:00:00Z" + name: On-Call Schedule + time_zone: America/New_York + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + properties: + data: + $ref: "#/components/schemas/ScheduleCreateRequestData" + required: + - data + type: object + ScheduleCreateRequestData: + description: The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type. + properties: + attributes: + $ref: "#/components/schemas/ScheduleCreateRequestDataAttributes" + relationships: + $ref: "#/components/schemas/ScheduleCreateRequestDataRelationships" + type: + $ref: "#/components/schemas/ScheduleCreateRequestDataType" + required: + - type + - attributes + type: object + ScheduleCreateRequestDataAttributes: + description: Describes the main attributes for creating a new schedule, including name, layers, and time zone. + properties: + layers: + description: The layers of On-Call coverage that define rotation intervals and restrictions. + items: + $ref: "#/components/schemas/ScheduleCreateRequestDataAttributesLayersItems" + type: array + name: + description: A human-readable name for the new schedule. + example: Team A On-Call + type: string + time_zone: + description: The time zone in which the schedule is defined. + example: America/New_York + type: string + required: + - name + - time_zone + - layers + type: object + ScheduleCreateRequestDataAttributesLayersItems: + description: |- + Describes a schedule layer, including rotation intervals, members, restrictions, and timeline settings. + properties: + effective_date: + description: The date/time when this layer becomes active (in ISO 8601). + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + end_date: + description: The date/time after which this layer no longer applies (in ISO 8601). + format: date-time + type: string + interval: + $ref: "#/components/schemas/LayerAttributesInterval" + members: + description: A list of members who participate in this layer's rotation. + items: + $ref: "#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems" + type: array + name: + description: The name of this layer. + example: Primary On-Call Layer + type: string + restrictions: + description: Zero or more time-based restrictions (for example, only weekdays, during business hours). + items: + $ref: "#/components/schemas/TimeRestriction" + type: array + rotation_start: + description: The date/time when the rotation for this layer starts (in ISO 8601). + example: "2025-01-01T00:00:00Z" + format: date-time + type: string + time_zone: + description: The time zone for this layer. + example: "America/New_York" + type: string + required: + - name + - interval + - rotation_start + - effective_date + - members + type: object + ScheduleCreateRequestDataRelationships: + description: Gathers relationship objects for the schedule creation request, including the teams to associate. + properties: + teams: + $ref: "#/components/schemas/DataRelationshipsTeams" + type: object + ScheduleCreateRequestDataType: + default: schedules + description: |- + Schedules resource type. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleData: + description: Represents the primary data object for a schedule, linking attributes and relationships. + properties: + attributes: + $ref: "#/components/schemas/ScheduleDataAttributes" + id: + description: The schedule's unique identifier. + example: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d" + type: string + relationships: + $ref: "#/components/schemas/ScheduleDataRelationships" + type: + $ref: "#/components/schemas/ScheduleDataType" + required: + - type + type: object + ScheduleDataAttributes: + description: Provides core properties of a schedule object such as its name and time zone. + properties: + name: + description: A short name for the schedule. + example: Primary On-Call + type: string + tags: + description: A list of tags associated with the schedule. + items: + type: string + type: array + time_zone: + description: The time zone in which this schedule operates. + example: America/New_York + type: string + type: object + ScheduleDataIncludedItem: + description: Any additional resources related to this schedule, such as teams and layers. + oneOf: + - $ref: "#/components/schemas/TeamReference" + - $ref: "#/components/schemas/Layer" + - $ref: "#/components/schemas/ScheduleMember" + - $ref: "#/components/schemas/ScheduleUser" + ScheduleDataRelationships: + description: Groups the relationships for a schedule object, referencing layers and teams. + properties: + layers: + $ref: "#/components/schemas/ScheduleDataRelationshipsLayers" + teams: + $ref: "#/components/schemas/DataRelationshipsTeams" + type: object + ScheduleDataRelationshipsLayers: + description: Associates layers with this schedule in a data structure. + properties: + data: + description: An array of layer references for this schedule. + items: + $ref: "#/components/schemas/ScheduleDataRelationshipsLayersDataItems" + type: array + type: object + ScheduleDataRelationshipsLayersDataItems: + description: |- + Relates a layer to this schedule, identified by `id` and `type` (must be `layers`). + properties: + id: + description: The unique identifier of the layer in this relationship. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/ScheduleDataRelationshipsLayersDataItemsType" + required: + - type + - id + type: object + ScheduleDataRelationshipsLayersDataItemsType: + default: layers + description: |- + Layers resource type. + enum: + - layers + example: layers + type: string + x-enum-varnames: + - LAYERS + ScheduleDataType: + default: schedules + description: |- + Schedules resource type. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleMember: + description: Represents a single member entry in a schedule, referencing a specific user. + properties: + id: + description: The unique identifier for this schedule member. + type: string + relationships: + $ref: "#/components/schemas/ScheduleMemberRelationships" + type: + $ref: "#/components/schemas/ScheduleMemberType" + required: + - type + type: object + ScheduleMemberRelationships: + description: Defines relationships for a schedule member, primarily referencing a single user. + properties: + user: + $ref: "#/components/schemas/ScheduleMemberRelationshipsUser" + type: object + ScheduleMemberRelationshipsUser: + description: Wraps the user data reference for a schedule member. + properties: + data: + $ref: "#/components/schemas/ScheduleMemberRelationshipsUserData" + required: + - data + type: object + ScheduleMemberRelationshipsUserData: + description: Points to the user data associated with this schedule member, including an ID and type. + properties: + id: + description: The user's unique identifier. + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/ScheduleMemberRelationshipsUserDataType" + required: + - type + - id + type: object + ScheduleMemberRelationshipsUserDataType: + default: users + description: |- + Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ScheduleMemberType: + default: members + description: |- + Schedule Members resource type. + enum: + - members + example: members + type: string + x-enum-varnames: + - MEMBERS + ScheduleOnCallResponderData: + description: Represents one position's (previous, current, or next) group of on-call responder shifts. Positions with no matching shift are omitted entirely from the response. + properties: + attributes: + $ref: "#/components/schemas/ScheduleOnCallResponderDataAttributes" + id: + description: Unique identifier of this responder group. + type: string + relationships: + $ref: "#/components/schemas/ScheduleOnCallResponderDataRelationships" + type: + $ref: "#/components/schemas/ScheduleOnCallResponderDataType" + required: + - type + type: object + ScheduleOnCallResponderDataAttributes: + description: Attributes for one position's (previous, current, or next) group of on-call responder shifts. + properties: + position: + $ref: "#/components/schemas/ScheduleTargetPosition" + type: object + ScheduleOnCallResponderDataRelationships: + description: Relationships for a single position's (previous, current, or next) responder group. + properties: + shifts: + $ref: "#/components/schemas/ScheduleOnCallResponderDataRelationshipsShifts" + type: object + ScheduleOnCallResponderDataRelationshipsShifts: + description: Defines the list of shifts satisfying this responder group's position. Multiple shifts occur when a schedule has multiple concurrent on-call responders at that position. + properties: + data: + description: Array of references to the shifts included in the response. + items: + $ref: "#/components/schemas/ScheduleOnCallResponderDataRelationshipsShiftsDataItems" + type: array + type: object + ScheduleOnCallResponderDataRelationshipsShiftsDataItems: + description: Represents a reference to one of the shifts satisfying this responder group's position. + properties: + id: + description: Unique identifier of the shift. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/ScheduleOnCallResponderDataRelationshipsShiftsDataItemsType" + required: + - type + - id + type: object + ScheduleOnCallResponderDataRelationshipsShiftsDataItemsType: + default: shifts + description: "Indicates that the related resource is of type `shifts`." + enum: + - shifts + example: shifts + type: string + x-enum-varnames: + - SHIFTS + ScheduleOnCallResponderDataType: + default: schedule_oncall_responder + description: Represents the resource type for a single position's (previous, current, or next) group of on-call responder shifts. + enum: + - schedule_oncall_responder + example: schedule_oncall_responder + type: string + x-enum-varnames: + - SCHEDULE_ONCALL_RESPONDER + ScheduleOnCallResponders: + description: Root object representing a schedule's on-call responders, grouped by position (previous, current, next), for a given point in time. + example: + data: + attributes: + scheduled_at: "2024-05-07T02:53:01.000000000Z" + id: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400" + relationships: + responders: + data: + - id: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current" + type: schedule_oncall_responder + schedule: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: schedules + type: schedule_oncall_responders + included: + - attributes: + position: current + id: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current" + relationships: + shifts: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: shifts + type: schedule_oncall_responder + - attributes: + end: "2024-05-08T02:53:01.000000000Z" + start: "2024-05-07T02:53:01.000000000Z" + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + - attributes: + email: test@test.com + name: Test User + status: active + id: 00000000-aba1-0000-0000-000000000000 + type: users + properties: + data: + $ref: "#/components/schemas/ScheduleOnCallRespondersData" + included: + description: Related resources referenced in the responder groups' relationships, such as shifts, schedules, and users. + items: + $ref: "#/components/schemas/ScheduleOnCallRespondersIncluded" + type: array + type: object + ScheduleOnCallRespondersData: + description: The main data object representing a schedule's on-call responders lookup, including relationships and metadata. + properties: + attributes: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataAttributes" + id: + description: Unique identifier of this on-call responders lookup. + type: string + relationships: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationships" + type: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataType" + required: + - type + type: object + ScheduleOnCallRespondersDataAttributes: + description: Attributes for a schedule's on-call responders lookup. + properties: + scheduled_at: + description: The timestamp the responders were resolved at. + format: date-time + type: string + type: object + ScheduleOnCallRespondersDataRelationships: + description: Relationships for a schedule's on-call responders lookup, including the schedule and its responder groups. + properties: + responders: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationshipsResponders" + schedule: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationshipsSchedule" + type: object + ScheduleOnCallRespondersDataRelationshipsResponders: + description: Defines the list of per-position (previous, current, next) responder groups for the schedule. + properties: + data: + description: Array of references to the responder groups included in the response. + items: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationshipsRespondersDataItems" + type: array + type: object + ScheduleOnCallRespondersDataRelationshipsRespondersDataItems: + description: Represents a reference to one position's (previous, current, or next) responder group. + properties: + id: + description: Unique identifier of the responder group. + example: "" + type: string + type: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationshipsRespondersDataItemsType" + required: + - type + - id + type: object + ScheduleOnCallRespondersDataRelationshipsRespondersDataItemsType: + default: schedule_oncall_responder + description: Identifies the resource type for a responder group linked to a schedule's on-call responders lookup. + enum: + - schedule_oncall_responder + example: schedule_oncall_responder + type: string + x-enum-varnames: + - SCHEDULE_ONCALL_RESPONDER + ScheduleOnCallRespondersDataRelationshipsSchedule: + description: Defines the relationship to the schedule this on-call responders lookup was performed for. + properties: + data: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationshipsScheduleData" + type: object + ScheduleOnCallRespondersDataRelationshipsScheduleData: + description: Represents a reference to the schedule this on-call responders lookup was performed for. + properties: + id: + description: Unique identifier of the schedule. + example: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d" + type: string + type: + $ref: "#/components/schemas/ScheduleOnCallRespondersDataRelationshipsScheduleDataType" + required: + - type + - id + type: object + ScheduleOnCallRespondersDataRelationshipsScheduleDataType: + default: schedules + description: Identifies the resource type for the schedule associated with this on-call responders lookup. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleOnCallRespondersDataType: + default: schedule_oncall_responders + description: Represents the resource type for a schedule's grouped on-call responders across the previous, current, and next positions. + enum: + - schedule_oncall_responders + example: schedule_oncall_responders + type: string + x-enum-varnames: + - SCHEDULE_ONCALL_RESPONDERS + ScheduleOnCallRespondersIncluded: + description: Represents a union of related resources included in the response, such as responder groups, shifts, schedules, and users. + oneOf: + - $ref: "#/components/schemas/ScheduleOnCallResponderData" + - $ref: "#/components/schemas/ShiftData" + - $ref: "#/components/schemas/ScheduleData" + - $ref: "#/components/schemas/User" + ScheduleRequestDataAttributesLayersItemsMembersItems: + description: |- + Defines a single member within a schedule layer, including the reference to the underlying user. + properties: + user: + $ref: "#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItemsUser" + type: object + ScheduleRequestDataAttributesLayersItemsMembersItemsUser: + description: Identifies the user participating in this layer as a single object with an `id`. + properties: + id: + description: The user's ID. + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: object + ScheduleTarget: + description: "Represents a schedule target for an escalation policy step, including its ID and resource type. This is a shortcut for a configured schedule target with position set to 'current'." + properties: + id: + description: "Specifies the unique identifier of the schedule resource." + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/ScheduleTargetType" + required: + - type + - id + type: object + ScheduleTargetPosition: + description: "Specifies the position of a schedule target (example `previous`, `current`, or `next`)." + enum: + - previous + - current + - next + example: previous + type: string + x-enum-varnames: + - PREVIOUS + - CURRENT + - NEXT + ScheduleTargetType: + default: schedules + description: "Indicates that the resource is of type `schedules`." + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleTrigger: + description: "Trigger a workflow from a Schedule. The workflow must be published." + properties: + overlapBehavior: + $ref: "#/components/schemas/ScheduleTriggerOverlapBehavior" + rruleExpression: + description: "Recurrence rule expression for scheduling." + example: "" + type: string + required: + - rruleExpression + type: object + ScheduleTriggerOverlapBehavior: + default: EXCLUSIVE_RUN + description: Controls whether a scheduled workflow run may start while another instance is still running. + enum: + - EXCLUSIVE_RUN + - OVERLAP_ALLOWED + example: EXCLUSIVE_RUN + type: string + x-enum-varnames: + - EXCLUSIVE_RUN + - OVERLAP_ALLOWED + ScheduleTriggerWrapper: + description: "Schema for a Schedule-based trigger." + properties: + scheduleTrigger: + $ref: "#/components/schemas/ScheduleTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - scheduleTrigger + type: object + ScheduleUpdateRequest: + description: A top-level wrapper for a schedule update request, referring to the `data` object with the new details. + example: + data: + attributes: + layers: + - effective_date: "2025-02-03T05:00:00Z" + end_date: "2025-12-31T00:00:00Z" + interval: + seconds: 3600 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: "17:00:00" + start_day: monday + start_time: "09:00:00" + rotation_start: "2025-02-01T00:00:00Z" + name: On-Call Schedule Updated + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + properties: + data: + $ref: "#/components/schemas/ScheduleUpdateRequestData" + required: + - data + type: object + ScheduleUpdateRequestData: + description: Contains all data needed to update an existing schedule, including its attributes (such as name and time zone) and any relationships to teams. + properties: + attributes: + $ref: "#/components/schemas/ScheduleUpdateRequestDataAttributes" + id: + description: The ID of the schedule to be updated. + example: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d" + type: string + relationships: + $ref: "#/components/schemas/ScheduleUpdateRequestDataRelationships" + type: + $ref: "#/components/schemas/ScheduleUpdateRequestDataType" + required: + - type + - id + - attributes + type: object + ScheduleUpdateRequestDataAttributes: + description: |- + Defines the updatable attributes for a schedule, such as name, time zone, and layers. + properties: + layers: + description: The updated list of layers (rotations) for this schedule. + items: + $ref: "#/components/schemas/ScheduleUpdateRequestDataAttributesLayersItems" + type: array + name: + description: A short name for the schedule. + example: Primary On-Call + type: string + time_zone: + description: The time zone used when interpreting rotation times. + example: America/New_York + type: string + required: + - name + - time_zone + - layers + type: object + ScheduleUpdateRequestDataAttributesLayersItems: + description: |- + Represents a layer within a schedule update, including rotation details, members, + and optional restrictions. + properties: + effective_date: + description: When this updated layer takes effect (ISO 8601 format). + example: "2025-02-03T05:00:00Z" + format: date-time + type: string + end_date: + description: When this updated layer should stop being active (ISO 8601 format). + example: "2025-12-31T00:00:00Z" + format: date-time + type: string + id: + description: A unique identifier for the layer being updated. + example: "00000000-0000-0000-0000-000000000001" + type: string + interval: + $ref: "#/components/schemas/LayerAttributesInterval" + members: + description: The members assigned to this layer. + items: + $ref: "#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems" + type: array + name: + description: The name for this layer (for example, "Secondary Coverage"). + example: "Primary On-Call Layer" + type: string + restrictions: + description: Any time restrictions that define when this layer is active. + items: + $ref: "#/components/schemas/TimeRestriction" + type: array + rotation_start: + description: The date/time at which the rotation begins (ISO 8601 format). + example: "2025-02-01T00:00:00Z" + format: date-time + type: string + time_zone: + description: The time zone for this layer. + example: "America/New_York" + type: string + required: + - effective_date + - interval + - members + - name + - rotation_start + type: object + ScheduleUpdateRequestDataRelationships: + description: |- + Houses relationships for the schedule update, typically referencing teams. + properties: + teams: + $ref: "#/components/schemas/DataRelationshipsTeams" + type: object + ScheduleUpdateRequestDataType: + default: schedules + description: |- + Schedules resource type. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleUser: + description: Represents a user object in the context of a schedule, including their `id`, type, and basic attributes. + properties: + attributes: + $ref: "#/components/schemas/ScheduleUserAttributes" + id: + description: The unique user identifier. + type: string + type: + $ref: "#/components/schemas/ScheduleUserType" + required: + - type + type: object + ScheduleUserAttributes: + description: Provides basic user information for a schedule, including a name and email address. + properties: + email: + description: The user's email address. + example: "jane.doe@example.com" + type: string + name: + description: The user's name. + example: "Jane Doe" + type: string + status: + $ref: "#/components/schemas/UserAttributesStatus" + type: object + ScheduleUserType: + default: users + description: |- + Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ScorecardListResponseAttributes: + description: Scorecard attributes. + properties: + created_at: + description: Creation time of the scorecard. + example: "2023-01-15T10:30:00Z" + format: date-time + type: string + description: + description: The description of the scorecard. + example: Best practices for observability. + type: string + modified_at: + description: Time of last scorecard modification. + example: "2024-01-05T14:20:00Z" + format: date-time + type: string + name: + description: The name of the scorecard. + example: Observability Best Practices + type: string + required: + - name + - created_at + - modified_at + type: object + ScorecardListResponseData: + description: Scorecard data. + properties: + attributes: + $ref: "#/components/schemas/ScorecardListResponseAttributes" + id: + description: The unique ID of the scorecard. + example: q8MQxk8TCqrHnWkx + type: string + type: + $ref: "#/components/schemas/ScorecardListType" + required: + - id + - type + - attributes + type: object + ScorecardListType: + description: The JSON:API type for scorecard list. + enum: + - scorecard + example: scorecard + type: string + x-enum-varnames: + - SCORECARD + ScorecardScoreAttributes: + description: Attributes of a scorecard score. + properties: + aggregation: + $ref: "#/components/schemas/ScorecardScoresAggregation" + denominator: + description: The denominator used to compute the score ratio. + format: int64 + type: integer + level: + description: The maturity level of the associated rule. + format: int64 + type: integer + numerator: + description: The numerator used to compute the score ratio. + format: int64 + type: integer + score: + description: The computed score ratio (numerator/denominator), from 0 to 1. + format: double + type: number + total_entities: + description: The total number of entities evaluated. + format: int64 + type: integer + total_fail: + description: The number of rules that failed. + format: int64 + type: integer + total_no_data: + description: The number of rules with no data. + format: int64 + type: integer + total_pass: + description: The number of rules that passed. + format: int64 + type: integer + total_skip: + description: The number of rules that were skipped. + format: int64 + type: integer + type: object + ScorecardScoreData: + description: A scorecard score object for a single entity, rule, scorecard, service, or team. + properties: + attributes: + $ref: "#/components/schemas/ScorecardScoreAttributes" + id: + description: The ID of the entity or resource being scored. + example: "" + type: string + relationships: + $ref: "#/components/schemas/ScorecardScoreRelationships" + type: + $ref: "#/components/schemas/ScorecardScoreDataType" + required: + - id + - type + type: object + ScorecardScoreDataType: + default: score + description: The JSON:API resource type. + enum: [score] + example: score + type: string + x-enum-varnames: + - SCORE + ScorecardScoreRelationshipData: + description: A relationship data object for a score. + properties: + id: + description: The ID of the related resource. + example: "" + type: string + type: + description: The type of the related resource. + example: "" + type: string + required: + - id + - type + type: object + ScorecardScoreRelationshipItem: + description: A relationship item for a score. + properties: + data: + $ref: "#/components/schemas/ScorecardScoreRelationshipData" + type: object + ScorecardScoreRelationships: + description: Relationships for a scorecard score, depending on the aggregation type. + properties: + entity: + $ref: "#/components/schemas/ScorecardScoreRelationshipItem" + rule: + $ref: "#/components/schemas/ScorecardScoreRelationshipItem" + scorecard: + $ref: "#/components/schemas/ScorecardScoreRelationshipItem" + service: + $ref: "#/components/schemas/ScorecardScoreRelationshipItem" + team: + $ref: "#/components/schemas/ScorecardScoreRelationshipItem" + type: object + ScorecardScoresAggregation: + description: Dimension to group scores by. + enum: [by-entity, by-rule, by-scorecard, by-team, by-kind] + example: by-entity + type: string + x-enum-varnames: + - BY_ENTITY + - BY_RULE + - BY_SCORECARD + - BY_TEAM + - BY_KIND + ScorecardType: + default: scorecard + description: The JSON:API type for scorecard. + enum: + - scorecard + example: scorecard + type: string + x-enum-varnames: + - SCORECARD + SearchIssuesIncludeQueryParameterItem: + description: Relationship object that should be included in the search response. + enum: + - issue + - issue.assignee + - issue.case + - issue.team_owners + example: "issue.case" + type: string + x-enum-varnames: + - ISSUE + - ISSUE_ASSIGNEE + - ISSUE_CASE + - ISSUE_TEAM_OWNERS + SeatAssignmentsDataType: + default: seat-assignments + description: Seat assignments resource type. + enum: + - seat-assignments + example: seat-assignments + type: string + x-enum-varnames: + - SEAT_ASSIGNMENTS + SeatUserData: + description: A seat user resource object containing its ID, type, and associated attributes. + properties: + attributes: + $ref: "#/components/schemas/SeatUserDataAttributes" + description: The attributes of the seat user. + id: + description: The ID of the seat user. + example: "00000000-0000-0000-0000-000000000000" + nullable: true + type: string + type: + $ref: "#/components/schemas/SeatUserDataType" + type: object + SeatUserDataArray: + description: A paginated list of seat user resources with associated pagination metadata. + properties: + data: + description: The list of seat users. + items: + $ref: "#/components/schemas/SeatUserData" + type: array + meta: + $ref: "#/components/schemas/SeatUserMeta" + description: The metadata of the seat users. + type: object + SeatUserDataAttributes: + description: Attributes of a user assigned to a seat, including their email, name, and assignment timestamp. + properties: + assigned_at: + description: The date and time the seat was assigned. + example: "2021-01-01T00:00:00Z" + format: date-time + nullable: true + type: string + email: + description: The email of the user. + example: "user@example.com" + nullable: true + type: string + name: + description: The name of the user. + example: "John Doe" + nullable: true + type: string + type: object + SeatUserDataType: + default: seat-users + description: Seat users resource type. + enum: + - seat-users + example: seat-users + type: string + x-enum-varnames: + - SEAT_USERS + SeatUserMeta: + description: Pagination metadata for the seat users list response. + properties: + cursor: + description: The cursor for the seat users. + type: string + limit: + description: The limit for the seat users. + format: int64 + type: integer + next_cursor: + description: The next cursor for the seat users. + type: string + type: object + SecretRuleArray: + description: A collection of secret detection rules returned by the list endpoint. + properties: + data: + description: The list of secret detection rules. + items: + $ref: "#/components/schemas/SecretRuleData" + type: array + required: + - data + type: object + SecretRuleData: + description: The data object representing a secret detection rule, including its attributes and resource type. + properties: + attributes: + $ref: "#/components/schemas/SecretRuleDataAttributes" + id: + description: The unique identifier of the secret rule resource. + type: string + type: + $ref: "#/components/schemas/SecretRuleDataType" + required: + - type + type: object + SecretRuleDataAttributes: + description: The attributes of a secret detection rule, including its pattern, priority, and validation configuration. + properties: + default_included_keywords: + description: A list of keywords that are included by default when scanning for secrets matching this rule. + items: + description: A keyword used to narrow down secret detection to relevant contexts. + type: string + type: array + description: + description: A detailed explanation of what type of secret this rule detects. + type: string + license: + description: The license under which this secret rule is distributed. + type: string + match_validation: + $ref: "#/components/schemas/SecretRuleDataAttributesMatchValidation" + name: + description: The unique name of the secret detection rule. + type: string + pattern: + description: The regular expression pattern used to identify potential secrets in source code or configuration. + type: string + priority: + description: The priority level of this rule, used to rank findings when multiple rules match. + type: string + sds_id: + description: The identifier of the corresponding Sensitive Data Scanner rule, if one exists. + type: string + validators: + description: A list of validator identifiers used to further confirm a detected secret is genuine. + items: + description: A validator identifier applied to refine secret detection accuracy. + type: string + type: array + type: object + SecretRuleDataAttributesMatchValidation: + description: Configuration for validating whether a detected secret is active by making an HTTP request and inspecting the response. + properties: + endpoint: + description: The URL endpoint to call when validating a detected secret. + type: string + hosts: + description: The list of hostnames to include when performing secret match validation. + items: + description: A hostname used during match validation. + type: string + type: array + http_method: + description: The HTTP method (e.g., GET, POST) to use when making the validation request. + type: string + invalid_http_status_code: + description: The HTTP status code ranges that indicate the detected secret is invalid or inactive. + items: + $ref: "#/components/schemas/SecretRuleDataAttributesMatchValidationInvalidHttpStatusCodeItems" + type: array + request_headers: + additionalProperties: + type: string + description: A map of HTTP header names to values to include in the validation request. + type: object + timeout_seconds: + description: The maximum number of seconds to wait for a response during validation before timing out. + format: int64 + maximum: 1.8446744073709551e+19 + minimum: 0 + type: integer + type: + description: The type of match validation to perform (e.g., http). + type: string + valid_http_status_code: + description: The HTTP status code ranges that indicate the detected secret is valid and active. + items: + $ref: "#/components/schemas/SecretRuleDataAttributesMatchValidationValidHttpStatusCodeItems" + type: array + type: object + SecretRuleDataAttributesMatchValidationInvalidHttpStatusCodeItems: + description: An HTTP status code range that indicates an invalid (unsuccessful) secret match during validation. + properties: + end: + description: The inclusive upper bound of the HTTP status code range. + format: int64 + maximum: 1.8446744073709551e+19 + minimum: 0 + type: integer + start: + description: The inclusive lower bound of the HTTP status code range. + format: int64 + maximum: 1.8446744073709551e+19 + minimum: 0 + type: integer + type: object + SecretRuleDataAttributesMatchValidationValidHttpStatusCodeItems: + description: An HTTP status code range that indicates a valid (successful) secret match during validation. + properties: + end: + description: The inclusive upper bound of the HTTP status code range. + format: int64 + maximum: 1.8446744073709551e+19 + minimum: 0 + type: integer + start: + description: The inclusive lower bound of the HTTP status code range. + format: int64 + maximum: 1.8446744073709551e+19 + minimum: 0 + type: integer + type: object + SecretRuleDataType: + default: secret_rule + description: Secret rule resource type. + enum: + - secret_rule + example: secret_rule + type: string + x-enum-varnames: + - SECRET_RULE + SecureEmbedCreateRequest: + description: Request to create a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedCreateRequestData" + required: + - data + type: object + SecureEmbedCreateRequestAttributes: + description: Attributes for creating a secure embed shared dashboard. + properties: + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether viewers can change the time range. + example: true + type: boolean + selectable_template_vars: + description: Template variables viewers can modify. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title for the shared dashboard. + example: "Q1 Metrics Dashboard" + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + required: + - status + - title + - global_time_selectable + - selectable_template_vars + - viewing_preferences + - global_time + type: object + SecureEmbedCreateRequestData: + description: Data object for creating a secure embed. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedCreateRequestAttributes" + type: + $ref: "#/components/schemas/SecureEmbedRequestType" + required: + - type + - attributes + type: object + SecureEmbedCreateResponse: + description: Response for creating a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedCreateResponseData" + required: + - data + type: object + SecureEmbedCreateResponseAttributes: + description: Attributes of a newly created secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: "2026-03-11T18:30:00.000000" + readOnly: true + type: string + credential: + description: >- + The secret credential used for HMAC signing. Returned only on creation. Store securely — it cannot be retrieved again. + example: "A1b2C3d4E5f6G7h8I9j0K1l2M3n4O5p6Q7r8S9t0U1v2" + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: "abc-def-ghi" + readOnly: true + type: string + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: "12345" + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SecureEmbedShareType" + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title. + example: "Q1 Metrics Dashboard" + type: string + token: + description: Public share token. + example: "s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: "https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedCreateResponseData: + description: Data object for a secure embed create response. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedCreateResponseAttributes" + id: + description: Internal share ID. + example: "12345" + type: string + type: + $ref: "#/components/schemas/SecureEmbedCreateResponseType" + required: + - type + - id + - attributes + type: object + SecureEmbedCreateResponseType: + description: Resource type for secure embed create responses. + enum: + - secure_embed_create_response + example: "secure_embed_create_response" + type: string + x-enum-varnames: + - SECURE_EMBED_CREATE_RESPONSE + SecureEmbedGetResponse: + description: Response for getting a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedGetResponseData" + required: + - data + type: object + SecureEmbedGetResponseAttributes: + description: Attributes of an existing secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: "2026-03-11T18:30:00.000000" + readOnly: true + type: string + credential_suffix: + description: Last 4 characters of the credential. Defaults to `0000` if unavailable. + example: "ab3f" + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: "abc-def-ghi" + readOnly: true + type: string + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: "12345" + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SecureEmbedShareType" + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title. + example: "Q1 Metrics Dashboard" + type: string + token: + description: Public share token. + example: "s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: "https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedGetResponseData: + description: Data object for a secure embed get response. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedGetResponseAttributes" + id: + description: Internal share ID. + example: "12345" + type: string + type: + $ref: "#/components/schemas/SecureEmbedGetResponseType" + required: + - type + - id + - attributes + type: object + SecureEmbedGetResponseType: + description: Resource type for secure embed get responses. + enum: + - secure_embed_get_response + example: "secure_embed_get_response" + type: string + x-enum-varnames: + - SECURE_EMBED_GET_RESPONSE + SecureEmbedGlobalTime: + description: Default time range configuration for the secure embed. + properties: + live_span: + $ref: "#/components/schemas/SecureEmbedGlobalTimeLiveSpan" + type: object + SecureEmbedGlobalTimeLiveSpan: + description: Dashboard global time live_span selection. + enum: + - 15m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + example: "1h" + type: string + x-enum-varnames: + - PAST_FIFTEEN_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + SecureEmbedRequestType: + description: Resource type for secure embed create requests. + enum: + - secure_embed_request + example: "secure_embed_request" + type: string + x-enum-varnames: + - SECURE_EMBED_REQUEST + SecureEmbedSelectableTemplateVariable: + description: A template variable that viewers can modify on the secure embed shared dashboard. + properties: + default_values: + description: Default selected values for the variable. + example: ["1"] + items: + description: A default value for the template variable. + type: string + type: array + name: + description: Name of the template variable. Usually matches the prefix unless you want a different display name. + example: "org_id" + type: string + prefix: + description: Tag prefix for the variable (e.g., `environment`, `service`). + example: "org_id" + type: string + visible_tags: + description: Restrict which tag values are visible to the viewer. + example: ["1"] + items: + description: A visible tag value for the template variable. + type: string + type: array + type: object + SecureEmbedShareType: + description: The type of share. Always `secure_embed`. + enum: + - secure_embed + example: "secure_embed" + type: string + x-enum-varnames: + - SECURE_EMBED + SecureEmbedStatus: + description: The status of the secure embed share. Active means the shared dashboard is available. Paused means it is not. + enum: + - active + - paused + example: "active" + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + SecureEmbedUpdateRequest: + description: Request to update a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedUpdateRequestData" + required: + - data + type: object + SecureEmbedUpdateRequestAttributes: + description: Attributes for updating a secure embed shared dashboard. All fields are optional. + properties: + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Updated time selectability. + example: true + type: boolean + selectable_template_vars: + description: Updated template variables. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Updated title. + example: "Q1 Metrics Dashboard (Updated)" + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedUpdateRequestData: + description: Data object for updating a secure embed. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedUpdateRequestAttributes" + type: + $ref: "#/components/schemas/SecureEmbedUpdateRequestType" + required: + - type + - attributes + type: object + SecureEmbedUpdateRequestType: + description: Resource type for secure embed update requests. + enum: + - secure_embed_update_request + example: "secure_embed_update_request" + type: string + x-enum-varnames: + - SECURE_EMBED_UPDATE_REQUEST + SecureEmbedUpdateResponse: + description: Response for updating a secure embed shared dashboard. + properties: + data: + $ref: "#/components/schemas/SecureEmbedUpdateResponseData" + required: + - data + type: object + SecureEmbedUpdateResponseAttributes: + description: Attributes of an updated secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: "2026-03-11T18:30:00.000000" + readOnly: true + type: string + credential_suffix: + description: Last 4 characters of the credential. Defaults to `0000` if unavailable. + example: "ab3f" + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: "abc-def-ghi" + readOnly: true + type: string + global_time: + $ref: "#/components/schemas/SecureEmbedGlobalTime" + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: "12345" + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: "#/components/schemas/SecureEmbedSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SecureEmbedShareType" + status: + $ref: "#/components/schemas/SecureEmbedStatus" + title: + description: Display title. + example: "Q1 Metrics Dashboard (Updated)" + type: string + token: + description: Public share token. + example: "s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: "https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456" + readOnly: true + type: string + viewing_preferences: + $ref: "#/components/schemas/SecureEmbedViewingPreferences" + type: object + SecureEmbedUpdateResponseData: + description: Data object for a secure embed update response. + properties: + attributes: + $ref: "#/components/schemas/SecureEmbedUpdateResponseAttributes" + id: + description: Internal share ID. + example: "12345" + type: string + type: + $ref: "#/components/schemas/SecureEmbedUpdateResponseType" + required: + - type + - id + - attributes + type: object + SecureEmbedUpdateResponseType: + description: Resource type for secure embed update responses. + enum: + - secure_embed_update_response + example: "secure_embed_update_response" + type: string + x-enum-varnames: + - SECURE_EMBED_UPDATE_RESPONSE + SecureEmbedViewingPreferences: + description: Display settings for the secure embed shared dashboard. + properties: + high_density: + description: Whether widgets are displayed in high density mode. + example: false + type: boolean + theme: + $ref: "#/components/schemas/SecureEmbedViewingPreferencesTheme" + type: object + SecureEmbedViewingPreferencesTheme: + description: The theme of the shared dashboard view. `system` follows the viewer's system default. + enum: + - system + - light + - dark + example: "system" + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK + SecurityAutomationRulesLinks: + description: Pagination links for the list of automation rules. + properties: + first: + description: Link to the first page of results. + example: "/api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=0" + type: string + last: + description: Link to the last page of results. + example: "/api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=5" + type: string + next: + description: Link to the next page of results. + example: "/api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=2" + type: string + prev: + description: Link to the previous page of results. + example: "/api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=0" + type: string + required: + - first + - last + type: object + SecurityAutomationRulesMeta: + description: Metadata for the list of automation rules. + properties: + page: + $ref: "#/components/schemas/SecurityAutomationRulesPageInfo" + required: + - page + type: object + SecurityAutomationRulesPageInfo: + description: Pagination information for the list of automation rules. + properties: + total_filtered_count: + description: The total number of rules matching the current filter. + example: 42 + format: int64 + type: integer + required: + - total_filtered_count + type: object + SecurityEntityConfigRisks: + description: Configuration risks associated with the entity + properties: + hasIdentityRisk: + description: Whether the entity has identity risks + example: false + type: boolean + hasMisconfiguration: + description: Whether the entity has misconfigurations + example: true + type: boolean + hasPrivilegedRole: + description: Whether the entity has privileged roles + example: true + type: boolean + isPrivileged: + description: Whether the entity has privileged access + example: false + type: boolean + isProduction: + description: Whether the entity is in a production environment + example: true + type: boolean + isPubliclyAccessible: + description: Whether the entity is publicly accessible + example: true + type: boolean + required: + - hasMisconfiguration + - hasIdentityRisk + - isPubliclyAccessible + - isProduction + - hasPrivilegedRole + - isPrivileged + type: object + SecurityEntityMetadata: + description: Metadata about the entity from cloud providers + properties: + accountID: + description: Cloud account ID (AWS) + example: "123456789012" + type: string + environments: + description: Environment tags associated with the entity + example: ["production", "us-east-1"] + items: + description: An environment tag associated with the entity. + type: string + type: array + mitreTactics: + description: MITRE ATT&CK tactics detected + example: ["Credential Access", "Privilege Escalation"] + items: + description: Detected MITRE ATT&CK tactic + type: string + type: array + mitreTechniques: + description: MITRE ATT&CK techniques detected + example: ["T1078", "T1098"] + items: + description: Detected MITRE ATT&CK technique + type: string + type: array + projectID: + description: Cloud project ID (GCP) + example: "my-gcp-project" + type: string + services: + description: Services associated with the entity + example: ["api-gateway", "lambda"] + items: + description: A service name associated with the entity. + type: string + type: array + sources: + description: Data sources that detected this entity + example: ["cloudtrail", "cloud-security-posture-management"] + items: + description: A data source identifier. + type: string + type: array + subscriptionID: + description: Cloud subscription ID (Azure) + example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" + type: string + required: + - sources + - environments + - services + - mitreTactics + - mitreTechniques + type: object + SecurityEntityRiskScore: + description: An entity risk score containing security risk assessment information + properties: + attributes: + $ref: "#/components/schemas/SecurityEntityRiskScoreAttributes" + id: + description: Unique identifier for the entity + example: "arn:aws:iam::123456789012:user/john.doe" + type: string + type: + $ref: "#/components/schemas/SecurityEntityRiskScoreType" + required: + - id + - type + - attributes + type: object + SecurityEntityRiskScoreAttributes: + description: Attributes of an entity risk score. + properties: + accountIds: + description: Cloud account IDs associated with the entity. + example: ["222233334444", "3333333555555"] + items: + description: A cloud account ID. + type: string + type: array + configRisks: + $ref: "#/components/schemas/SecurityEntityConfigRisks" + entityMetadata: + $ref: "#/components/schemas/SecurityEntityMetadata" + entityName: + description: Human-readable name of the entity. + example: "john.doe" + type: string + entityProviders: + description: Cloud providers associated with the entity. + example: ["AWS"] + items: + description: A cloud provider name. + type: string + type: array + entityRoles: + description: Roles associated with the entity. + example: [] + items: + description: A role assigned to the entity. + type: string + type: array + entitySubTypes: + description: Sub-types associated with the entity. + example: ["Root"] + items: + description: An entity sub-type label. + type: string + type: array + entityType: + description: Type of the entity (for example, aws_iam_user, aws_ec2_instance). + example: "aws_iam_user" + type: string + entityTypes: + description: All types associated with the entity. + example: ["Root", "User Name"] + items: + description: An entity type label. + type: string + type: array + firstDetected: + description: Timestamp when the entity was first detected (Unix milliseconds). + example: 1778876604661 + format: int64 + type: integer + lastActivityTitle: + description: Title of the most recent signal detected for this entity. + example: "Suspicious API call detected" + type: string + lastDetected: + description: Timestamp when the entity was last detected (Unix milliseconds). + example: 1780064607093 + format: int64 + type: integer + riskScore: + description: Current risk score for the entity. + example: 85 + format: int64 + type: integer + riskScoreEvolution: + description: Change in risk score compared to previous period. + example: 12 + format: int64 + type: integer + severity: + $ref: "#/components/schemas/SecurityEntityRiskScoreAttributesSeverity" + signalsDetected: + description: Number of security signals detected for this entity. + example: 15 + format: int64 + type: integer + required: + - entityProviders + - entitySubTypes + - accountIds + - riskScore + - riskScoreEvolution + - severity + - firstDetected + - lastDetected + - lastActivityTitle + - signalsDetected + - configRisks + - entityMetadata + type: object + SecurityEntityRiskScoreAttributesSeverity: + description: Severity level based on risk score + enum: + - critical + - high + - medium + - low + - info + example: "critical" + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MEDIUM + - LOW + - INFO + SecurityEntityRiskScoreResponse: + description: Response containing a single entity risk score + properties: + data: + $ref: "#/components/schemas/SecurityEntityRiskScore" + required: + - data + type: object + SecurityEntityRiskScoreType: + description: Resource type. + enum: + - SecurityEntityRiskScore + example: SecurityEntityRiskScore + type: string + x-enum-varnames: + - SECURITY_ENTITY_RISK_SCORE + SecurityEntityRiskScoresMeta: + description: Metadata for pagination + properties: + pageNumber: + description: Current page number (1-indexed) + example: 1 + format: int64 + type: integer + pageSize: + description: Number of items per page + example: 10 + format: int64 + type: integer + queryId: + description: Query ID for pagination consistency + example: "abc123def456" + type: string + totalRowCount: + description: Total number of entities matching the query + example: 150 + format: int64 + type: integer + required: + - queryId + - totalRowCount + - pageSize + - pageNumber + type: object + SecurityEntityRiskScoresResponse: + description: Response containing a list of entity risk scores + properties: + data: + description: Array of entity risk score objects. + items: + $ref: "#/components/schemas/SecurityEntityRiskScore" + type: array + meta: + $ref: "#/components/schemas/SecurityEntityRiskScoresMeta" + required: + - data + - meta + type: object + SecurityFilter: + description: The security filter's properties. + properties: + attributes: + $ref: "#/components/schemas/SecurityFilterAttributes" + id: + $ref: "#/components/schemas/SecurityFilterID" + type: + $ref: "#/components/schemas/SecurityFilterType" + type: object + SecurityFilterAttributes: + description: The object describing a security filter. + properties: + exclusion_filters: + description: The list of exclusion filters applied in this security filter. + items: + $ref: "#/components/schemas/SecurityFilterExclusionFilterResponse" + type: array + filtered_data_type: + $ref: "#/components/schemas/SecurityFilterFilteredDataType" + is_builtin: + description: Whether the security filter is the built-in filter. + example: false + type: boolean + is_enabled: + description: Whether the security filter is enabled. + example: false + type: boolean + name: + description: The security filter name. + example: Custom security filter + type: string + query: + description: The security filter query. Logs accepted by this query will be accepted by this filter. + example: service:api + type: string + version: + description: The version of the security filter. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityFilterCreateAttributes: + description: Object containing the attributes of the security filter to be created. + properties: + exclusion_filters: + description: Exclusion filters to exclude some logs from the security filter. + example: + - name: Exclude staging + query: source:staging + items: + $ref: "#/components/schemas/SecurityFilterExclusionFilter" + type: array + filtered_data_type: + $ref: "#/components/schemas/SecurityFilterFilteredDataType" + is_enabled: + description: Whether the security filter is enabled. + example: true + type: boolean + name: + description: The name of the security filter. + example: Custom security filter + type: string + query: + description: The query of the security filter. + example: service:api + type: string + required: + - name + - query + - exclusion_filters + - filtered_data_type + - is_enabled + type: object + SecurityFilterCreateData: + description: Object for a single security filter. + properties: + attributes: + $ref: "#/components/schemas/SecurityFilterCreateAttributes" + type: + $ref: "#/components/schemas/SecurityFilterType" + required: + - type + - attributes + type: object + SecurityFilterCreateRequest: + description: Request object that includes the security filter that you would like to create. + properties: + data: + $ref: "#/components/schemas/SecurityFilterCreateData" + required: + - data + type: object + SecurityFilterExclusionFilter: + description: Exclusion filter for the security filter. + example: + name: Exclude staging + query: source:staging + properties: + name: + description: Exclusion filter name. + example: Exclude staging + type: string + query: + description: Exclusion filter query. Logs that match this query are excluded from the security filter. + example: source:staging + type: string + required: + - name + - query + type: object + SecurityFilterExclusionFilterResponse: + description: A single exclusion filter. + properties: + name: + description: The exclusion filter name. + example: Exclude staging + type: string + query: + description: The exclusion filter query. + example: source:staging + type: string + type: object + SecurityFilterFilteredDataType: + description: The filtered data type. + enum: + - logs + example: logs + type: string + x-enum-varnames: + - LOGS + SecurityFilterID: + description: The ID of the security filter. + example: 3dd-0uc-h1s + type: string + SecurityFilterMeta: + description: Optional metadata associated to the response. + properties: + warning: + description: A warning message. + example: All the security filters are disabled. As a result, no logs are being analyzed. + type: string + type: object + SecurityFilterResponse: + description: Response object which includes a single security filter. + properties: + data: + $ref: "#/components/schemas/SecurityFilter" + meta: + $ref: "#/components/schemas/SecurityFilterMeta" + type: object + SecurityFilterType: + default: security_filters + description: The type of the resource. The value should always be `security_filters`. + enum: + - security_filters + example: security_filters + type: string + x-enum-varnames: + - SECURITY_FILTERS + SecurityFilterUpdateAttributes: + description: The security filters properties to be updated. + properties: + exclusion_filters: + description: Exclusion filters to exclude some logs from the security filter. + example: [] + items: + $ref: "#/components/schemas/SecurityFilterExclusionFilter" + type: array + filtered_data_type: + $ref: "#/components/schemas/SecurityFilterFilteredDataType" + is_enabled: + description: Whether the security filter is enabled. + example: true + type: boolean + name: + description: The name of the security filter. + example: Custom security filter + type: string + query: + description: The query of the security filter. + example: service:api + type: string + version: + description: The version of the security filter to update. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityFilterUpdateData: + description: The new security filter properties. + properties: + attributes: + $ref: "#/components/schemas/SecurityFilterUpdateAttributes" + type: + $ref: "#/components/schemas/SecurityFilterType" + required: + - type + - attributes + type: object + SecurityFilterUpdateRequest: + description: The new security filter body. + properties: + data: + $ref: "#/components/schemas/SecurityFilterUpdateData" + required: + - data + type: object + SecurityFilterVersion: + description: A snapshot of all security filters at a specific configuration version. + properties: + attributes: + $ref: "#/components/schemas/SecurityFilterVersionAttributes" + id: + description: The identifier of the configuration version. + example: "1" + type: string + type: + $ref: "#/components/schemas/SecurityFilterVersionType" + required: + - id + - type + - attributes + type: object + SecurityFilterVersionAttributes: + description: The attributes describing a single security filter configuration version. + properties: + date: + description: The Unix timestamp in milliseconds at which this configuration version was applied. + example: 1758177253469 + format: int64 + type: integer + filters: + description: The set of security filters at this configuration version. + items: + $ref: "#/components/schemas/SecurityFilterVersionEntry" + type: array + version: + description: The configuration version number. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - version + - date + - filters + type: object + SecurityFilterVersionEntry: + description: A single security filter as it existed at a given configuration version. + properties: + exclusion_filters: + description: The list of exclusion filters applied in this security filter. + items: + $ref: "#/components/schemas/SecurityFilterExclusionFilterResponse" + type: array + filtered_data_type: + $ref: "#/components/schemas/SecurityFilterFilteredDataType" + id: + description: The ID of the security filter. + example: "123" + type: string + is_builtin: + description: Whether the security filter is the built-in filter. + example: false + type: boolean + is_enabled: + description: Whether the security filter is enabled. + example: true + type: boolean + name: + description: The name of the security filter. + example: Test Security Filter + type: string + query: + description: The query of the security filter. + example: source:test + type: string + version: + description: The version of this security filter. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - id + - name + - version + - query + - is_enabled + - exclusion_filters + - filtered_data_type + - is_builtin + type: object + SecurityFilterVersionType: + default: security_filters_configuration + description: The type of the resource. The value should always be `security_filters_configuration`. + enum: + - security_filters_configuration + example: security_filters_configuration + type: string + x-enum-varnames: + - SECURITY_FILTERS_CONFIGURATION + SecurityFilterVersionsResponse: + description: Response containing the version history of security filters. + properties: + data: + description: A list of historical security filter configurations, ordered from the most recent to the oldest. + items: + $ref: "#/components/schemas/SecurityFilterVersion" + type: array + required: + - data + type: object + SecurityFiltersResponse: + description: All the available security filters objects. + properties: + data: + description: A list of security filters objects. + items: + $ref: "#/components/schemas/SecurityFilter" + type: array + meta: + $ref: "#/components/schemas/SecurityFilterMeta" + type: object + SecurityFindingType: + description: The type of security finding that the automation rule applies to. + enum: + - api_security + - attack_path + - host_and_container_vulnerability + - iac_misconfiguration + - identity_risk + - library_vulnerability + - misconfiguration + - runtime_code_vulnerability + - secret + - static_code_vulnerability + - workload_activity + example: misconfiguration + type: string + x-enum-varnames: + - API_SECURITY + - ATTACK_PATH + - HOST_AND_CONTAINER_VULNERABILITY + - IAC_MISCONFIGURATION + - IDENTITY_RISK + - LIBRARY_VULNERABILITY + - MISCONFIGURATION + - RUNTIME_CODE_VULNERABILITY + - SECRET + - STATIC_CODE_VULNERABILITY + - WORKLOAD_ACTIVITY + SecurityFindingTypes: + description: The list of security finding types that the automation rule applies to. + example: + - misconfiguration + items: + $ref: "#/components/schemas/SecurityFindingType" + minItems: 1 + type: array + SecurityFindingsAttributes: + description: The JSON object containing all attributes of the security finding. + properties: + attributes: + additionalProperties: {} + description: The custom attributes of the security finding. + example: {"severity": "high", "status": "open"} + type: object + tags: + description: List of tags associated with the security finding. + example: + - "team:platform" + - "env:prod" + items: + description: A tag associated with the security finding. + type: string + type: array + timestamp: + description: The Unix timestamp at which the detection changed for the resource. Same value as @detection_changed_at. + example: 1765901760 + format: int64 + type: integer + type: object + SecurityFindingsData: + description: A single security finding. + properties: + attributes: + $ref: "#/components/schemas/SecurityFindingsAttributes" + id: + description: The unique ID of the security finding. + example: "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==" + type: string + type: + $ref: "#/components/schemas/SecurityFindingsDataType" + type: object + SecurityFindingsDataType: + default: finding + description: The type of the security finding resource. + enum: + - finding + example: finding + type: string + x-enum-varnames: + - FINDING + SecurityFindingsLinks: + description: Links for pagination. + properties: + next: + description: Link for the next page of results. Note that paginated requests can also be made using the POST endpoint. + example: "https://app.datadoghq.com/api/v2/security/findings?page[cursor]=eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==&page[limit]=25" + type: string + type: object + SecurityFindingsMeta: + description: Metadata about the response. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 548 + format: int64 + type: integer + page: + $ref: "#/components/schemas/SecurityFindingsPage" + request_id: + description: The identifier of the request. + example: "pddv1ChZwVlMxMUdYRFRMQ1lyb3B4MGNYbFlnIi0KHQu35LDbucx" + type: string + status: + $ref: "#/components/schemas/SecurityFindingsStatus" + type: object + SecurityFindingsPage: + description: Pagination information. + properties: + after: + description: The cursor used to get the next page of results. + example: "eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=" + type: string + type: object + SecurityFindingsSearchRequest: + description: The request body for searching security findings. + properties: + data: + $ref: "#/components/schemas/SecurityFindingsSearchRequestData" + type: object + SecurityFindingsSearchRequestData: + description: Request data for searching security findings. + properties: + attributes: + $ref: "#/components/schemas/SecurityFindingsSearchRequestDataAttributes" + type: object + SecurityFindingsSearchRequestDataAttributes: + description: Request attributes for searching security findings. + properties: + filter: + default: "*" + description: The search query following log search syntax. + example: "@severity:(critical OR high) @status:open team:platform" + type: string + page: + $ref: "#/components/schemas/SecurityFindingsSearchRequestPage" + sort: + $ref: "#/components/schemas/SecurityFindingsSort" + type: object + SecurityFindingsSearchRequestPage: + description: Pagination attributes for the search request. + properties: + cursor: + description: Get the next page of results with a cursor provided in the previous query. + example: "eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==" + type: string + limit: + default: 10 + description: The maximum number of security findings in the response. + example: 25 + format: int64 + maximum: 150 + minimum: 1 + type: integer + type: object + SecurityFindingsSort: + default: "-@detection_changed_at" + description: The sort parameters when querying security findings. + enum: + - "@detection_changed_at" + - "-@detection_changed_at" + type: string + x-enum-varnames: + - DETECTION_CHANGED_AT_ASC + - DETECTION_CHANGED_AT_DESC + SecurityFindingsStatus: + description: The status of the response. + enum: + - done + - timeout + example: done + type: string + x-enum-varnames: + - DONE + - TIMEOUT + SecurityMonitoringAzureAppRegistration: + description: An Azure App Registration discovered for the organization. + properties: + client_id: + description: The client ID of the App Registration. + example: 66666666-7777-8888-9999-000000000000 + type: string + error_count: + description: The number of errors encountered while crawling resources for this App Registration. + example: 0 + format: int64 + type: integer + resource_collection_enabled: + description: Whether resource collection is enabled for this App Registration. + example: true + type: boolean + subscription_count: + description: The number of Azure subscriptions associated with this App Registration. + example: 3 + format: int64 + type: integer + tenant_id: + description: The Azure tenant ID of the App Registration. + example: 11111111-2222-3333-4444-555555555555 + type: string + required: + - tenant_id + - client_id + - resource_collection_enabled + - subscription_count + - error_count + type: object + SecurityMonitoringContentPackActivation: + description: The activation status of a content pack. + enum: + - never_activated + - activated + - deactivated + example: activated + type: string + x-enum-descriptions: + - Pack has never been activated for this organization. + - Pack is currently activated. + - Pack was previously activated but has since been deactivated. + x-enum-varnames: + - NEVER_ACTIVATED + - ACTIVATED + - DEACTIVATED + SecurityMonitoringContentPackAppSecDetails: + description: Details for an Application Security content pack. + properties: + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackAppSecDetailsType" + required: + - type + type: object + SecurityMonitoringContentPackAppSecDetailsType: + description: Type for Application Security content pack details. + enum: + - appsec + example: appsec + type: string + x-enum-varnames: + - APPSEC + SecurityMonitoringContentPackAuditDetails: + description: Details for an audit trail content pack. + properties: + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackAuditDetailsType" + required: + - type + type: object + SecurityMonitoringContentPackAuditDetailsType: + description: Type for audit trail content pack details. + enum: + - audit + example: audit + type: string + x-enum-varnames: + - AUDIT + SecurityMonitoringContentPackEntityDetails: + description: Details for an entity or identity content pack. + properties: + cp_activation: + $ref: "#/components/schemas/SecurityMonitoringContentPackActivation" + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackEntityDetailsType" + required: + - type + - cp_activation + type: object + SecurityMonitoringContentPackEntityDetailsType: + description: Type for entity content pack details. + enum: + - entity + example: entity + type: string + x-enum-varnames: + - ENTITY + SecurityMonitoringContentPackIntegrationStatus: + description: The installation status of the related integration. + enum: + - installed + - available + - partially_installed + - detected + - error + example: installed + type: string + x-enum-descriptions: + - Integration is fully installed. + - Integration exists in the catalog but is not installed. + - Integration is only partially configured. + - Integration detected (for example, logs are flowing) but not explicitly installed. + - Integration is in an error state. + x-enum-varnames: + - INSTALLED + - AVAILABLE + - PARTIALLY_INSTALLED + - DETECTED + - ERROR + SecurityMonitoringContentPackLogsDetails: + description: Details for a logs-based content pack. + properties: + cp_activation: + $ref: "#/components/schemas/SecurityMonitoringContentPackActivation" + data_last_seen: + $ref: "#/components/schemas/SecurityMonitoringContentPackTimestampBucket" + filters_configured: + description: |- + Whether filters (Security Filters or Index Query depending on the pricing model) are + present and correctly configured to route logs into Cloud SIEM. + example: true + type: boolean + integration_installed_status: + $ref: "#/components/schemas/SecurityMonitoringContentPackIntegrationStatus" + logs_seen_from_any_index: + description: Whether logs for this content pack have been seen in any Datadog index in the last 72 hours. + example: true + type: boolean + siem_index_incorrect: + description: Whether the Cloud SIEM index configuration is incorrect (only applies to certain pricing models). + example: false + type: boolean + type: + $ref: "#/components/schemas/SecurityFilterFilteredDataType" + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + - filters_configured + - logs_seen_from_any_index + - siem_index_incorrect + type: object + SecurityMonitoringContentPackOnboardingDetails: + description: |- + Content pack details returned when Cloud SIEM is inactive for the requesting organization. + properties: + integration_installed_status: + $ref: "#/components/schemas/SecurityMonitoringContentPackIntegrationStatus" + logs_seen_from_any_index: + description: Whether logs for this content pack have been seen in any Datadog index in the last 72 hours. + example: true + type: boolean + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackOnboardingDetailsType" + required: + - type + - logs_seen_from_any_index + type: object + SecurityMonitoringContentPackOnboardingDetailsType: + description: Type for onboarding content pack details. + enum: + - onboarding + example: onboarding + type: string + x-enum-varnames: + - ONBOARDING + SecurityMonitoringContentPackStateAttributes: + description: Attributes of a content pack state. + properties: + details: + $ref: "#/components/schemas/SecurityMonitoringContentPackStateDetails" + status: + $ref: "#/components/schemas/SecurityMonitoringContentPackStatus" + required: + - status + - details + type: object + SecurityMonitoringContentPackStateData: + description: Content pack state data. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringContentPackStateAttributes" + id: + description: The content pack identifier. + example: aws-cloudtrail + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackStateType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringContentPackStateDetails: + description: |- + Type-specific details for a content pack state. The set of fields present depends + on the content pack's `type`. When Cloud SIEM is inactive for the requesting organization, `onboarding` is returned instead of the content pack's usual type, such as `logs` or `vulnerability`.` + discriminator: + mapping: + appsec: "#/components/schemas/SecurityMonitoringContentPackAppSecDetails" + audit: "#/components/schemas/SecurityMonitoringContentPackAuditDetails" + entity: "#/components/schemas/SecurityMonitoringContentPackEntityDetails" + logs: "#/components/schemas/SecurityMonitoringContentPackLogsDetails" + onboarding: "#/components/schemas/SecurityMonitoringContentPackOnboardingDetails" + threat_intel: "#/components/schemas/SecurityMonitoringContentPackThreatIntelDetails" + vulnerability: "#/components/schemas/SecurityMonitoringContentPackVulnerabilityDetails" + propertyName: type + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringContentPackLogsDetails" + - $ref: "#/components/schemas/SecurityMonitoringContentPackThreatIntelDetails" + - $ref: "#/components/schemas/SecurityMonitoringContentPackEntityDetails" + - $ref: "#/components/schemas/SecurityMonitoringContentPackAuditDetails" + - $ref: "#/components/schemas/SecurityMonitoringContentPackAppSecDetails" + - $ref: "#/components/schemas/SecurityMonitoringContentPackVulnerabilityDetails" + - $ref: "#/components/schemas/SecurityMonitoringContentPackOnboardingDetails" + SecurityMonitoringContentPackStateMeta: + description: Metadata for content pack states. + properties: + cloud_siem_index_incorrect: + description: Whether the Cloud SIEM index configuration is incorrect for the organization. + example: false + type: boolean + retention_months: + description: |- + The number of months that standard logs are retained for organizations on the standalone_indexed` pricing model. This field is omitted for other pricing models. + example: 15 + format: int32 + maximum: 60 + type: integer + sku: + $ref: "#/components/schemas/SecurityMonitoringSKU" + required: + - cloud_siem_index_incorrect + - sku + type: object + SecurityMonitoringContentPackStateType: + description: Type for content pack state object + enum: + - content_pack_state + example: content_pack_state + type: string + x-enum-varnames: + - CONTENT_PACK_STATE + SecurityMonitoringContentPackStatesResponse: + description: Response containing content pack states. + properties: + data: + description: Array of content pack states. + items: + $ref: "#/components/schemas/SecurityMonitoringContentPackStateData" + type: array + meta: + $ref: "#/components/schemas/SecurityMonitoringContentPackStateMeta" + required: + - data + - meta + type: object + SecurityMonitoringContentPackStatus: + description: The current operational status of a content pack. + enum: + - install + - activate + - initializing + - active + - warning + - broken + - not_configured + example: active + type: string + x-enum-descriptions: + - Not activated; no logs detected in the last 72 hours. + - Not activated; logs are flowing into a Datadog index but not yet routed through Cloud SIEM. + - Activated; awaiting first log ingestion. + - Activated; logs received within the last 24 hours. + - Activated; integration not installed or logs last seen 24 to 72 hours ago. + - Activated; no logs for over 72 hours, filter missing, or Cloud SIEM index incorrectly ordered. + - Activated, but no credentials are configured (entity content packs only). + x-enum-varnames: + - INSTALL + - ACTIVATE + - INITIALIZING + - ACTIVE + - WARNING + - BROKEN + - NOT_CONFIGURED + SecurityMonitoringContentPackThreatIntelDetails: + description: Details for a threat intelligence content pack. + properties: + cp_activation: + $ref: "#/components/schemas/SecurityMonitoringContentPackActivation" + data_last_seen: + $ref: "#/components/schemas/SecurityMonitoringContentPackTimestampBucket" + integration_installed_status: + $ref: "#/components/schemas/SecurityMonitoringContentPackIntegrationStatus" + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackThreatIntelDetailsType" + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + type: object + SecurityMonitoringContentPackThreatIntelDetailsType: + description: Type for threat intelligence content pack details. + enum: + - threat_intel + example: threat_intel + type: string + x-enum-varnames: + - THREAT_INTEL + SecurityMonitoringContentPackTimestampBucket: + description: Timestamp bucket indicating when logs were last collected. + enum: + - not_seen + - within_24_hours + - within_24_to_72_hours + - over_72h_to_30d + - over_30d + example: within_24_hours + type: string + x-enum-descriptions: + - No logs observed. + - Logs received within the last 24 hours. + - Logs last seen 24 to 72 hours ago. + - Logs last seen 3 to 30 days ago. + - Logs last seen more than 30 days ago. + x-enum-varnames: + - NOT_SEEN + - WITHIN_24_HOURS + - WITHIN_24_TO_72_HOURS + - OVER_72H_TO_30D + - OVER_30D + SecurityMonitoringContentPackVulnerabilityDetails: + description: Details for a vulnerability content pack. + properties: + cp_activation: + $ref: "#/components/schemas/SecurityMonitoringContentPackActivation" + data_last_seen: + $ref: "#/components/schemas/SecurityMonitoringContentPackTimestampBucket" + integration_installed_status: + $ref: "#/components/schemas/SecurityMonitoringContentPackIntegrationStatus" + type: + $ref: "#/components/schemas/SecurityMonitoringContentPackVulnerabilityDetailsType" + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + type: object + SecurityMonitoringContentPackVulnerabilityDetailsType: + description: Type for vulnerability content pack details. + enum: + - vulnerability + example: vulnerability + type: string + x-enum-varnames: + - VULNERABILITY + SecurityMonitoringCriticalAsset: + description: The critical asset's properties. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetAttributes" + id: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetID" + type: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetType" + type: object + SecurityMonitoringCriticalAssetAttributes: + description: The attributes of the critical asset. + properties: + creation_author_id: + description: ID of user who created the critical asset. + example: 367742 + format: int64 + type: integer + creation_date: + description: A Unix millisecond timestamp given the creation date of the critical asset. + format: int64 + type: integer + creator: + $ref: "#/components/schemas/SecurityMonitoringUser" + description: + description: A description of the critical asset. + example: Production database servers handling PII + type: string + editable: + description: Whether the critical asset is editable. + example: true + type: boolean + enabled: + description: Whether the critical asset is enabled. + example: true + type: boolean + query: + description: The query for the critical asset. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: security:monitoring + type: string + rule_query: + description: The rule query of the critical asset, with the same syntax as the search bar for detection rules. This determines which rules this critical asset will apply to. + example: type:log_detection source:cloudtrail + type: string + severity: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetSeverity" + tags: + description: List of tags associated with the critical asset. + example: + - team:database + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + update_author_id: + description: ID of user who updated the critical asset. + example: 367743 + format: int64 + type: integer + update_date: + description: A Unix millisecond timestamp given the update date of the critical asset. + format: int64 + type: integer + updater: + $ref: "#/components/schemas/SecurityMonitoringUser" + version: + description: The version of the critical asset; it starts at 1, and is incremented at each update. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityMonitoringCriticalAssetCreateAttributes: + description: Object containing the attributes of the critical asset to be created. + properties: + description: + description: A description of the critical asset. + example: Production database servers handling PII + type: string + enabled: + default: true + description: Whether the critical asset is enabled. Defaults to `true` if not specified. + example: true + type: boolean + query: + description: The query for the critical asset. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: security:monitoring + type: string + rule_query: + description: The rule query of the critical asset, with the same syntax as the search bar for detection rules. This determines which rules this critical asset will apply to. + example: type:(log_detection OR signal_correlation OR workload_security OR application_security) source:cloudtrail + type: string + severity: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetSeverity" + tags: + description: List of tags associated with the critical asset. + example: + - team:database + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + required: + - query + - severity + - rule_query + type: object + SecurityMonitoringCriticalAssetCreateData: + description: Object for a single critical asset. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetCreateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetType" + required: + - type + - attributes + type: object + SecurityMonitoringCriticalAssetCreateRequest: + description: Request object that includes the critical asset that you would like to create. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetCreateData" + required: + - data + type: object + SecurityMonitoringCriticalAssetID: + description: The ID of the critical asset. + example: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: string + SecurityMonitoringCriticalAssetResponse: + description: Response object containing a single critical asset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringCriticalAsset" + type: object + SecurityMonitoringCriticalAssetSeverity: + description: Severity associated with this critical asset. Either an explicit severity can be set, or the severity can be increased or decreased, or the severity can be left unchanged (no-op). + enum: + - info + - low + - medium + - high + - critical + - increase + - decrease + - no-op + example: increase + type: string + x-enum-varnames: + - INFO + - LOW + - MEDIUM + - HIGH + - CRITICAL + - INCREASE + - DECREASE + - NO_OP + SecurityMonitoringCriticalAssetType: + default: critical_assets + description: The type of the resource. The value should always be `critical_assets`. + enum: + - critical_assets + example: critical_assets + type: string + x-enum-varnames: + - CRITICAL_ASSETS + SecurityMonitoringCriticalAssetUpdateAttributes: + description: The critical asset properties to be updated. + properties: + description: + description: A description of the critical asset. + example: Production database servers handling PII + type: string + enabled: + description: Whether the critical asset is enabled. + example: true + type: boolean + query: + description: The query for the critical asset. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: security:monitoring + type: string + rule_query: + description: The rule query of the critical asset, with the same syntax as the search bar for detection rules. This determines which rules this critical asset will apply to. + example: type:log_detection source:cloudtrail + type: string + severity: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetSeverity" + tags: + description: List of tags associated with the critical asset. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + version: + description: The version of the critical asset being updated. Used for optimistic locking to prevent concurrent modifications. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityMonitoringCriticalAssetUpdateData: + description: The new critical asset properties; partial updates are supported. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetUpdateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetType" + required: + - type + - attributes + type: object + SecurityMonitoringCriticalAssetUpdateRequest: + description: Request object containing the fields to update on the critical asset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetUpdateData" + required: + - data + type: object + SecurityMonitoringCriticalAssetsResponse: + description: Response object containing the available critical assets. + properties: + data: + description: A list of critical assets objects. + items: + $ref: "#/components/schemas/SecurityMonitoringCriticalAsset" + type: array + type: object + SecurityMonitoringCrowdStrikeIntegrationConfigCreateAttributes: + description: The attributes of a CrowdStrike entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: api.crowdstrike.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeCrowdStrike" + name: + description: The display name for the entity context sync configuration. + example: My CrowdStrike Integration + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigCrowdStrikeSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + - domain + - name + - secrets + type: object + SecurityMonitoringCrowdStrikeIntegrationConfigUpdateAttributes: + description: Fields to update on a CrowdStrike entity context sync configuration. + properties: + domain: + description: The new domain associated with the external entity source. + example: api.crowdstrike.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeCrowdStrike" + name: + description: The new display name for the entity context sync configuration. + example: My CrowdStrike Integration (renamed) + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigCrowdStrikeSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + type: object + SecurityMonitoringCrowdStrikeIntegrationCredentialsValidateAttributes: + description: The CrowdStrike credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: api.crowdstrike.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeCrowdStrike" + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigCrowdStrikeSecrets" + required: + - integration_type + - domain + - secrets + type: object + SecurityMonitoringDatasetAttributesRequest: + description: The attributes of a dataset create or update request. + properties: + definition: + $ref: "#/components/schemas/SecurityMonitoringDatasetDefinition" + description: + description: The description of the dataset. Maximum 255 characters. + example: A sample dataset used for detection rules. + type: string + version: + description: |- + The expected current version of the dataset for optimistic concurrency control on updates. + If the dataset's current version does not match, the request is rejected with a 409 Conflict. + example: 1 + format: int64 + type: integer + required: + - definition + type: object + SecurityMonitoringDatasetAttributesResponse: + description: The attributes of a Cloud SIEM dataset. + properties: + createdAt: + description: The creation timestamp of the dataset, in ISO 8601 format. + example: "2025-03-20T10:00:00Z" + type: string + createdByHandle: + description: The Datadog handle of the user who created the dataset. + example: bruce.lee + type: string + createdByName: + description: The display name of the user who created the dataset. + example: Bruce Lee + type: string + definition: + $ref: "#/components/schemas/SecurityMonitoringDatasetDefinition" + description: + description: The description of the dataset. + example: A sample dataset used for detection rules. + type: string + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + isDefault: + description: Whether the dataset is an out-of-the-box dataset provided by Datadog. + example: false + type: boolean + isDeprecated: + description: Whether the dataset is marked as deprecated. + example: false + type: boolean + modifiedAt: + description: The timestamp of the last modification of the dataset, in ISO 8601 format. + example: "2025-03-20T10:00:00Z" + type: string + name: + description: The unique name of the dataset. + example: sample_dataset + type: string + updatedByHandle: + description: The Datadog handle of the user who last updated the dataset. + example: bruce.lee + nullable: true + type: string + updatedByName: + description: The display name of the user who last updated the dataset. + example: Bruce Lee + nullable: true + type: string + version: + description: The current version of the dataset. + example: 1 + format: int64 + type: integer + required: + - id + - name + - description + - version + - definition + - createdAt + - createdByHandle + - createdByName + - modifiedAt + - updatedByHandle + - updatedByName + - isDefault + - isDeprecated + type: object + SecurityMonitoringDatasetColumn: + description: A column exposed by an event platform dataset. + properties: + column: + description: The name of the column. + example: message + type: string + type: + description: The type of the column value. + example: string + type: string + required: + - column + - type + type: object + SecurityMonitoringDatasetCreateData: + description: The data wrapper of a dataset create request. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringDatasetAttributesRequest" + type: + $ref: "#/components/schemas/SecurityMonitoringDatasetCreateType" + required: + - type + - attributes + type: object + SecurityMonitoringDatasetCreateRequest: + description: Request body for creating a Cloud SIEM dataset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetCreateData" + required: + - data + type: object + SecurityMonitoringDatasetCreateResponse: + description: Response returned after creating a dataset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetCreateResponseData" + required: + - data + type: object + SecurityMonitoringDatasetCreateResponseData: + description: The data wrapper of a dataset create response. + properties: + id: + description: The UUID of the newly created dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringDatasetType" + required: + - id + - type + type: object + SecurityMonitoringDatasetCreateType: + description: The type of resource for a dataset create request. + enum: + - datasetCreate + example: datasetCreate + type: string + x-enum-varnames: + - DATASET_CREATE + SecurityMonitoringDatasetData: + description: The data wrapper of a dataset response. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringDatasetAttributesResponse" + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringDatasetType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringDatasetDefinition: + description: |- + The definition of the dataset. The shape depends on the value of `data_source`. + Use `reference_table` or `managed_resource` for a referential dataset, or one of the + event platform sources (for example `logs`, `audit`, `events`, `spans`, `rum`) for + an event platform dataset. + properties: + columns: + description: For event platform datasets, the list of columns exposed by the dataset. + items: + $ref: "#/components/schemas/SecurityMonitoringDatasetColumn" + type: array + data_source: + description: The data source backing this dataset definition. + example: logs + type: string + indexes: + description: For event platform datasets, the list of indexes to query. + items: + type: string + type: array + name: + description: The unique name of the dataset. Must start with a lowercase letter and contain only lowercase letters, digits, and underscores (max 255 characters). + example: sample_dataset + type: string + query_filter: + description: For referential datasets, an optional filter expression applied to the table. + example: status = 'active' + type: string + search: + $ref: "#/components/schemas/SecurityMonitoringDatasetSearch" + storage: + description: Storage tier the dataset reads from. Applies to event platform datasets. + example: hot + type: string + table_name: + description: For referential datasets, the name of the underlying table. + example: my_reference_table + type: string + time_window: + $ref: "#/components/schemas/SecurityMonitoringDatasetTimeWindow" + required: + - data_source + - name + type: object + SecurityMonitoringDatasetDependenciesRequest: + description: Request body for retrieving dependencies of a batch of datasets. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependenciesRequestData" + required: + - data + type: object + SecurityMonitoringDatasetDependenciesRequestAttributes: + description: The attributes of a dataset dependencies request. + properties: + datasetIds: + description: The list of dataset UUIDs to query dependencies for. Must contain between 1 and 100 items. + example: + - 123e4567-e89b-12d3-a456-426614174000 + items: + type: string + type: array + required: + - datasetIds + type: object + SecurityMonitoringDatasetDependenciesRequestData: + description: The data wrapper of a dataset dependencies request. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependenciesRequestAttributes" + required: + - attributes + type: object + SecurityMonitoringDatasetDependenciesResponse: + description: Response listing the dependents of each requested dataset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependenciesResponseData" + required: + - data + type: object + SecurityMonitoringDatasetDependenciesResponseData: + description: The list of dataset dependents entries. + items: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependentsData" + type: array + SecurityMonitoringDatasetDependentsAttributes: + description: The attributes of a dataset dependents entry. + properties: + count: + description: The number of resources that depend on the dataset. + example: 0 + format: int64 + type: integer + datasetId: + description: The UUID of the dataset whose dependencies are being reported. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + ids: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependentsIds" + resource_type: + description: The type of resource that depends on the dataset. + example: security_detection_rule + type: string + required: + - datasetId + - resource_type + - ids + - count + type: object + SecurityMonitoringDatasetDependentsData: + description: A single entry describing the dependents of one dataset. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependentsAttributes" + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependentsType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringDatasetDependentsIds: + description: The list of resource IDs that depend on the dataset. + example: [] + items: + type: string + type: array + SecurityMonitoringDatasetDependentsType: + description: The type of resource for a dataset dependents entry. + enum: + - datasetDependents + example: datasetDependents + type: string + x-enum-varnames: + - DATASET_DEPENDENTS + SecurityMonitoringDatasetResponse: + description: Response containing a single Cloud SIEM dataset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetData" + required: + - data + type: object + SecurityMonitoringDatasetSearch: + description: The search clause applied to an event platform dataset. + properties: + query: + description: The search query expression. + example: "*" + type: string + required: + - query + type: object + SecurityMonitoringDatasetTimeWindow: + description: An optional time window that overrides the default query time range. + properties: + from: + description: Inclusive start of the time window, in milliseconds since the Unix epoch. + example: 1700000000000 + format: int64 + type: integer + to: + description: Exclusive end of the time window, in milliseconds since the Unix epoch. + example: 1700003600000 + format: int64 + type: integer + type: object + SecurityMonitoringDatasetType: + description: The type of resource for a dataset response. + enum: + - dataset + example: dataset + type: string + x-enum-varnames: + - DATASET + SecurityMonitoringDatasetUpdateData: + description: The data wrapper of a dataset update request. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringDatasetAttributesRequest" + type: + $ref: "#/components/schemas/SecurityMonitoringDatasetUpdateType" + required: + - type + - attributes + type: object + SecurityMonitoringDatasetUpdateRequest: + description: Request body for updating a Cloud SIEM dataset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetUpdateData" + required: + - data + type: object + SecurityMonitoringDatasetUpdateType: + description: The type of resource for a dataset update request. + enum: + - datasetUpdate + example: datasetUpdate + type: string + x-enum-varnames: + - DATASET_UPDATE + SecurityMonitoringDatasetVersionChanges: + description: The list of field changes between this version of the dataset and the previous one. + items: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionFieldChange" + type: array + SecurityMonitoringDatasetVersionEntry: + description: A single entry in the version history of a dataset. + properties: + changes: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionChanges" + dataset: + $ref: "#/components/schemas/SecurityMonitoringDatasetAttributesResponse" + required: + - dataset + - changes + type: object + SecurityMonitoringDatasetVersionFieldChange: + description: A single field change between two versions of a dataset. + properties: + current: + description: The current value of the field, serialized as a JSON value. + example: New description. + field: + description: The name of the field that changed. + example: description + type: string + previous: + description: The previous value of the field, serialized as a JSON value. + example: Old description. + required: + - field + - previous + - current + type: object + SecurityMonitoringDatasetVersionHistoryAttributes: + description: The attributes of a dataset version history response. + properties: + count: + description: The total number of versions available for this dataset. + example: 1 + format: int64 + type: integer + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionHistoryEntries" + required: + - data + - count + type: object + SecurityMonitoringDatasetVersionHistoryData: + description: The data wrapper of a dataset version history response. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionHistoryAttributes" + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionHistoryType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringDatasetVersionHistoryEntries: + additionalProperties: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionEntry" + description: A map from version number (as a string) to the dataset state at that version. + type: object + SecurityMonitoringDatasetVersionHistoryResponse: + description: Response containing the version history of a Cloud SIEM dataset. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionHistoryData" + required: + - data + type: object + SecurityMonitoringDatasetVersionHistoryType: + description: The type of resource for a dataset version history response. + enum: + - dataset_version_history + example: dataset_version_history + type: string + x-enum-varnames: + - DATASET_VERSION_HISTORY + SecurityMonitoringDatasetsListData: + description: A list of dataset data items. + items: + $ref: "#/components/schemas/SecurityMonitoringDatasetData" + type: array + SecurityMonitoringDatasetsListMeta: + description: Metadata returned with a list of datasets. + properties: + totalCount: + description: The total number of datasets matching the request, across all pages. + example: 1 + format: int64 + type: integer + required: + - totalCount + type: object + SecurityMonitoringDatasetsListResponse: + description: Response containing a paginated list of Cloud SIEM datasets. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringDatasetsListData" + meta: + $ref: "#/components/schemas/SecurityMonitoringDatasetsListMeta" + required: + - data + - meta + type: object + SecurityMonitoringEntityContextEntityType: + default: entity + description: |- + The type of the entity. Reflects the underlying entity kind from the entity context store + (for example, `siem_entity_identity` for identities). Defaults to `entity` when the kind is unknown. + example: siem_entity_identity + type: string + SecurityMonitoringEntraIdAzureAppRegistrationsAttributes: + description: The attributes of the Entra ID Azure App Registration prerequisites. + properties: + azure_app_registrations: + description: The Azure App Registrations discovered for the organization. + items: + $ref: "#/components/schemas/SecurityMonitoringAzureAppRegistration" + type: array + has_valid_prerequisite: + description: Whether at least one Azure App Registration has resource collection enabled. + example: true + type: boolean + integration_id: + description: The ID of the Entra ID integration configuration, if one exists. + example: 11111111-2222-3333-4444-555555555555 + type: string + is_enabled: + description: Whether the Entra ID integration configuration is enabled, if one exists. + example: true + type: boolean + subscribed_at: + description: The time at which the Entra ID integration configuration was created, if one exists. + example: "2026-05-01T12:00:00Z" + format: date-time + type: string + required: + - azure_app_registrations + - has_valid_prerequisite + type: object + SecurityMonitoringEntraIdAzureAppRegistrationsData: + description: The Azure App Registration prerequisites for the Entra ID integration. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsAttributes" + id: + description: The ID of the organization the Azure App Registrations belong to. + example: "123456" + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsResourceType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringEntraIdAzureAppRegistrationsResourceType: + default: entra_id_azure_app_registrations + description: The type of the resource. The value should always be `entra_id_azure_app_registrations`. + enum: + - entra_id_azure_app_registrations + example: entra_id_azure_app_registrations + type: string + x-enum-varnames: + - ENTRA_ID_AZURE_APP_REGISTRATIONS + SecurityMonitoringEntraIdAzureAppRegistrationsResponse: + description: Response containing the Azure App Registration prerequisites for the Entra ID integration. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsData" + required: + - data + type: object + SecurityMonitoringEntraIdIntegrationConfigCreateAttributes: + description: The attributes of an Entra ID entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeEntraId" + name: + description: The display name for the entity context sync configuration. + example: My Entra ID Integration + type: string + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + - domain + - name + type: object + SecurityMonitoringEntraIdIntegrationConfigUpdateAttributes: + description: Fields to update on an Entra ID entity context sync configuration. + properties: + domain: + description: The new domain associated with the external entity source. + example: siem-test.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeEntraId" + name: + description: The new display name for the entity context sync configuration. + example: My Entra ID Integration (renamed) + type: string + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + type: object + SecurityMonitoringEntraIdIntegrationCredentialsValidateAttributes: + description: The Entra ID credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeEntraId" + required: + - integration_type + - domain + type: object + SecurityMonitoringFilter: + description: The rule's suppression filter. + properties: + action: + $ref: "#/components/schemas/SecurityMonitoringFilterAction" + query: + description: Query for selecting logs to apply the filtering action. + type: string + type: object + SecurityMonitoringFilterAction: + description: The type of filtering action. + enum: + - require + - suppress + type: string + x-enum-varnames: + - REQUIRE + - SUPPRESS + SecurityMonitoringGoogleWorkspaceIntegrationConfigCreateAttributes: + description: The attributes of a Google Workspace entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace" + name: + description: The display name for the entity context sync configuration. + example: My GWS Integration + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + - domain + - name + - secrets + type: object + SecurityMonitoringGoogleWorkspaceIntegrationConfigUpdateAttributes: + description: Fields to update on a Google Workspace entity context sync configuration. + properties: + domain: + description: The new domain associated with the external entity source. + example: siem-test.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace" + name: + description: The new display name for the entity context sync configuration. + example: My GWS Integration (renamed) + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + type: object + SecurityMonitoringGoogleWorkspaceIntegrationCredentialsValidateAttributes: + description: The Google Workspace credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace" + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets" + required: + - integration_type + - domain + - secrets + type: object + SecurityMonitoringIntegrationActivateAttributes: + description: Overrides applied when activating the integration. All fields are optional. + properties: + domain: + description: The domain associated with the external entity source. + example: default + type: string + name: + description: The display name for the entity context sync configuration. + example: My Entra ID Integration + type: string + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + type: object + SecurityMonitoringIntegrationActivateData: + description: The configuration overrides for the integration to activate. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringIntegrationActivateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationActivateResourceType" + type: object + SecurityMonitoringIntegrationActivateRequest: + description: Request body to activate an entity context sync integration for a source type that does not require secrets. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringIntegrationActivateData" + type: object + SecurityMonitoringIntegrationActivateResourceType: + default: activate_entra_id_request + description: The type of the resource. The value should always be `activate_entra_id_request`. + enum: + - activate_entra_id_request + example: activate_entra_id_request + type: string + x-enum-varnames: + - ACTIVATE_ENTRA_ID_REQUEST + SecurityMonitoringIntegrationConfigAttributes: + description: The attributes of an entity context sync configuration as returned by the API. + properties: + created_at: + description: The time at which the entity context sync configuration was created. + example: "2026-05-01T12:00:00Z" + format: date-time + type: string + domain: + description: The domain associated with the external entity source (for example, the customer's identity provider domain). + example: siem-test.com + type: string + enabled: + description: Whether the sync is enabled and actively ingesting entities into Cloud SIEM. + example: true + type: boolean + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationType" + modified_at: + description: The time at which the entity context sync configuration was last modified. + example: "2026-05-01T12:00:00Z" + format: date-time + type: string + name: + description: The display name of the entity context sync configuration. + example: My GWS Integration + type: string + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + state: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigState" + required: + - enabled + - domain + - integration_type + type: object + SecurityMonitoringIntegrationConfigCreateAttributes: + description: The attributes of the entity context sync configuration to create. + discriminator: + mapping: + CROWDSTRIKE: "#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationConfigCreateAttributes" + ENTRA_ID: "#/components/schemas/SecurityMonitoringEntraIdIntegrationConfigCreateAttributes" + GOOGLE_WORKSPACE: "#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationConfigCreateAttributes" + OKTA: "#/components/schemas/SecurityMonitoringOktaIntegrationConfigCreateAttributes" + SENTINELONE: "#/components/schemas/SecurityMonitoringSentinelOneIntegrationConfigCreateAttributes" + propertyName: integration_type + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationConfigCreateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringOktaIntegrationConfigCreateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringEntraIdIntegrationConfigCreateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationConfigCreateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringSentinelOneIntegrationConfigCreateAttributes" + SecurityMonitoringIntegrationConfigCreateData: + description: The entity context sync configuration to create. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigCreateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResourceType" + required: + - type + - attributes + type: object + SecurityMonitoringIntegrationConfigCreateRequest: + description: Request body to create an entity context sync configuration. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigCreateData" + required: + - data + type: object + SecurityMonitoringIntegrationConfigCrowdStrikeSecrets: + description: Credentials for a CrowdStrike entity context sync. + properties: + client_id: + description: The CrowdStrike API client ID. + example: abcdef0123456789abcdef0123456789 + type: string + client_secret: + description: The CrowdStrike API client secret. + example: aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789ABCDEF + type: string + required: + - client_id + - client_secret + type: object + SecurityMonitoringIntegrationConfigData: + description: An entity context sync configuration. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigAttributes" + id: + description: The unique identifier of the integration configuration. + example: 11111111-2222-3333-4444-555555555555 + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResourceType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets: + description: Credentials for a Google Workspace entity context sync. + properties: + admin_email: + description: The admin email to impersonate for domain-wide delegation. + example: admin@example.com + type: string + service_account_json: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceServiceAccount" + required: + - service_account_json + type: object + SecurityMonitoringIntegrationConfigGoogleWorkspaceServiceAccount: + additionalProperties: {} + description: The Google Cloud service account JSON used to authenticate against the Google Workspace Admin SDK. Additional keys beyond those documented are preserved. + properties: + client_email: + description: The service account client email. + example: svc@my-project.iam.gserviceaccount.com + type: string + private_key: + description: The service account private key. + example: "-----BEGIN PRIVATE KEY-----\n...\n-----END PRIVATE KEY-----" + type: string + project_id: + description: The Google Cloud project ID that owns the service account. + example: my-project + type: string + type: + description: The service account type. Must be `service_account`. + example: service_account + type: string + required: + - type + - project_id + - private_key + - client_email + type: object + SecurityMonitoringIntegrationConfigOktaSecrets: + description: Credentials for an Okta entity context sync. + properties: + api_token: + description: The Okta API token used to authenticate against the Okta API. + example: 00aBcDeFgHiJkLmNoPqRsTuVwXyZ + type: string + required: + - api_token + type: object + SecurityMonitoringIntegrationConfigResourceType: + default: integration_config + description: The type of the resource. The value should always be `integration_config`. + enum: + - integration_config + example: integration_config + type: string + x-enum-varnames: + - INTEGRATION_CONFIG + SecurityMonitoringIntegrationConfigResponse: + description: Response containing a single entity context sync configuration. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigData" + required: + - data + type: object + SecurityMonitoringIntegrationConfigSentinelOneSecrets: + description: Credentials for a SentinelOne entity context sync. + properties: + api_token: + description: The SentinelOne API token. + example: aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789 + type: string + required: + - api_token + type: object + SecurityMonitoringIntegrationConfigSettings: + additionalProperties: {} + description: Free-form, non-sensitive settings for the entity context sync. The accepted keys depend on the source type. + example: + setting1: value1 + type: object + SecurityMonitoringIntegrationConfigState: + description: The state of the credentials configured on the entity context sync. + enum: + - valid + - invalid + - initializing + example: valid + type: string + x-enum-varnames: + - VALID + - INVALID + - INITIALIZING + SecurityMonitoringIntegrationConfigUpdateAttributes: + description: Fields to update on the entity context sync configuration. All fields other than the integration type are optional. + discriminator: + mapping: + CROWDSTRIKE: "#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationConfigUpdateAttributes" + ENTRA_ID: "#/components/schemas/SecurityMonitoringEntraIdIntegrationConfigUpdateAttributes" + GOOGLE_WORKSPACE: "#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationConfigUpdateAttributes" + OKTA: "#/components/schemas/SecurityMonitoringOktaIntegrationConfigUpdateAttributes" + SENTINELONE: "#/components/schemas/SecurityMonitoringSentinelOneIntegrationConfigUpdateAttributes" + propertyName: integration_type + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationConfigUpdateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringOktaIntegrationConfigUpdateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringEntraIdIntegrationConfigUpdateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationConfigUpdateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringSentinelOneIntegrationConfigUpdateAttributes" + SecurityMonitoringIntegrationConfigUpdateData: + description: The entity context sync configuration fields to update. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigUpdateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResourceType" + required: + - type + - attributes + type: object + SecurityMonitoringIntegrationConfigUpdateRequest: + description: Request body to update an entity context sync configuration. Supports partial updates. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigUpdateData" + required: + - data + type: object + SecurityMonitoringIntegrationConfigsResponse: + description: Response containing a list of entity context sync configurations. + properties: + data: + description: The list of integration configurations. + items: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigData" + type: array + required: + - data + type: object + SecurityMonitoringIntegrationCredentialsValidateAttributes: + description: The credentials to validate against the external entity source. + discriminator: + mapping: + CROWDSTRIKE: "#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationCredentialsValidateAttributes" + ENTRA_ID: "#/components/schemas/SecurityMonitoringEntraIdIntegrationCredentialsValidateAttributes" + GOOGLE_WORKSPACE: "#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationCredentialsValidateAttributes" + OKTA: "#/components/schemas/SecurityMonitoringOktaIntegrationCredentialsValidateAttributes" + SENTINELONE: "#/components/schemas/SecurityMonitoringSentinelOneIntegrationCredentialsValidateAttributes" + propertyName: integration_type + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationCredentialsValidateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringOktaIntegrationCredentialsValidateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringEntraIdIntegrationCredentialsValidateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationCredentialsValidateAttributes" + - $ref: "#/components/schemas/SecurityMonitoringSentinelOneIntegrationCredentialsValidateAttributes" + SecurityMonitoringIntegrationCredentialsValidateData: + description: The credentials to validate. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringIntegrationCredentialsValidateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResourceType" + required: + - type + - attributes + type: object + SecurityMonitoringIntegrationCredentialsValidateRequest: + description: Request body to validate credentials against an external entity source before creating a sync configuration. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringIntegrationCredentialsValidateData" + required: + - data + type: object + SecurityMonitoringIntegrationType: + description: The type of external source that provides entities to Cloud SIEM. + enum: + - GOOGLE_WORKSPACE + - OKTA + - ENTRA_ID + - CROWDSTRIKE + - SENTINELONE + example: GOOGLE_WORKSPACE + type: string + x-enum-varnames: + - GOOGLE_WORKSPACE + - OKTA + - ENTRA_ID + - CROWDSTRIKE + - SENTINELONE + SecurityMonitoringIntegrationTypeCrowdStrike: + description: The source type for a CrowdStrike entity context sync. + enum: + - CROWDSTRIKE + example: CROWDSTRIKE + type: string + x-enum-varnames: + - CROWDSTRIKE + SecurityMonitoringIntegrationTypeEntraId: + description: The source type for an Entra ID entity context sync. + enum: + - ENTRA_ID + example: ENTRA_ID + type: string + x-enum-varnames: + - ENTRA_ID + SecurityMonitoringIntegrationTypeGoogleWorkspace: + description: The source type for a Google Workspace entity context sync. + enum: + - GOOGLE_WORKSPACE + example: GOOGLE_WORKSPACE + type: string + x-enum-varnames: + - GOOGLE_WORKSPACE + SecurityMonitoringIntegrationTypeOkta: + description: The source type for an Okta entity context sync. + enum: + - OKTA + example: OKTA + type: string + x-enum-varnames: + - OKTA + SecurityMonitoringIntegrationTypeSentinelOne: + description: The source type for a SentinelOne entity context sync. + enum: + - SENTINELONE + example: SENTINELONE + type: string + x-enum-varnames: + - SENTINELONE + SecurityMonitoringListRulesResponse: + description: List of rules. + properties: + data: + description: Array containing the list of rules. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleResponse" + type: array + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + type: object + SecurityMonitoringOktaIntegrationConfigCreateAttributes: + description: The attributes of an Okta entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeOkta" + name: + description: The display name for the entity context sync configuration. + example: My Okta Integration + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigOktaSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + - domain + - name + - secrets + type: object + SecurityMonitoringOktaIntegrationConfigUpdateAttributes: + description: Fields to update on an Okta entity context sync configuration. + properties: + domain: + description: The new domain associated with the external entity source. + example: siem-test.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeOkta" + name: + description: The new display name for the entity context sync configuration. + example: My Okta Integration (renamed) + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigOktaSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + type: object + SecurityMonitoringOktaIntegrationCredentialsValidateAttributes: + description: The Okta credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeOkta" + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigOktaSecrets" + required: + - integration_type + - domain + - secrets + type: object + SecurityMonitoringPaginatedSuppressionsResponse: + description: Response object containing the available suppression rules with pagination metadata. + properties: + data: + description: A list of suppressions objects. + items: + $ref: "#/components/schemas/SecurityMonitoringSuppression" + type: array + meta: + $ref: "#/components/schemas/SecurityMonitoringSuppressionsMeta" + type: object + SecurityMonitoringReferenceTable: + description: Reference tables used in the queries. + properties: + checkPresence: + description: Whether to include or exclude the matched values. + type: boolean + columnName: + description: The name of the column in the reference table. + type: string + logFieldPath: + description: The field in the log to match against the reference table. + type: string + ruleQueryName: + description: The name of the query to apply the reference table to. + type: string + tableName: + description: The name of the reference table. + type: string + type: object + SecurityMonitoringRuleAnomalyDetectionOptions: + additionalProperties: {} + description: Options on anomaly detection method. + properties: + bucketDuration: + $ref: "#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptionsBucketDuration" + detectionTolerance: + $ref: "#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptionsDetectionTolerance" + instantaneousBaseline: + $ref: "#/components/schemas/SecurityMonitoringRuleInstantaneousBaseline" + learningDuration: + $ref: "#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptionsLearningDuration" + learningPeriodBaseline: + description: An optional override baseline to apply while the rule is in the learning period. Must be greater than or equal to 0. + format: int64 + minimum: 0 + type: integer + type: object + SecurityMonitoringRuleAnomalyDetectionOptionsBucketDuration: + description: "Duration in seconds of the time buckets used to aggregate events matched by the rule.\nMust be greater than or equal to 300." + enum: + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 10800 + example: 300 + format: int32 + type: integer + x-enum-varnames: + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - THREE_HOURS + SecurityMonitoringRuleAnomalyDetectionOptionsDetectionTolerance: + description: "An optional parameter that sets how permissive anomaly detection is.\nHigher values require higher deviations before triggering a signal." + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + example: 5 + format: int32 + type: integer + x-enum-varnames: + - ONE + - TWO + - THREE + - FOUR + - FIVE + SecurityMonitoringRuleAnomalyDetectionOptionsLearningDuration: + description: Learning duration in hours. Anomaly detection waits for at least this amount of historical data before it starts evaluating. + enum: + - 1 + - 6 + - 12 + - 24 + - 48 + - 168 + - 336 + format: int32 + type: integer + x-enum-varnames: + - ONE_HOUR + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + - TWO_DAYS + - ONE_WEEK + - TWO_WEEKS + SecurityMonitoringRuleBulkDeleteAttributes: + description: Attributes for bulk deleting security monitoring rules. + properties: + ruleIds: + description: List of rule IDs to delete. + example: + - abc-000-u7q + - abc-000-7dd + items: + description: A rule ID to delete. + type: string + minItems: 1 + type: array + required: + - ruleIds + type: object + SecurityMonitoringRuleBulkDeleteData: + description: Data for bulk deleting security monitoring rules. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteAttributes" + id: + description: Request ID. This value is echoed back as the response's resource ID. + example: bulk_delete + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteRequestDataType" + required: + - attributes + - type + type: object + SecurityMonitoringRuleBulkDeletePayload: + description: Payload for bulk deleting security monitoring rules. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteData" + required: + - data + type: object + SecurityMonitoringRuleBulkDeleteRequestDataType: + description: The resource type for a bulk delete request. + enum: + - bulk_delete_rules + example: bulk_delete_rules + type: string + x-enum-varnames: + - BULK_DELETE_RULES + SecurityMonitoringRuleBulkDeleteResponse: + description: Response for bulk deleting security monitoring rules. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteResponseData" + type: object + SecurityMonitoringRuleBulkDeleteResponseAttributes: + description: Attributes for the bulk delete response. + properties: + deletedRules: + description: List of successfully deleted rule IDs. + items: + type: string + type: array + failedRules: + description: List of rule IDs that could not be deleted. + items: + type: string + type: array + type: object + SecurityMonitoringRuleBulkDeleteResponseData: + description: Data for the bulk delete response. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteResponseAttributes" + id: + description: The identifier of the bulk delete response. + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteResponseDataType" + type: object + SecurityMonitoringRuleBulkDeleteResponseDataType: + description: The resource type for a bulk delete response. + enum: + - bulk_delete_response + example: bulk_delete_response + type: string + x-enum-varnames: + - BULK_DELETE_RESPONSE + SecurityMonitoringRuleBulkExportAttributes: + description: Attributes for bulk exporting security monitoring rules. + properties: + ruleIds: + description: "List of rule IDs to export. Each rule will be included in the resulting ZIP file\nas a separate JSON file." + example: + - def-000-u7q + - def-000-7dd + items: + description: A rule ID to include in the bulk export. + type: string + minItems: 1 + type: array + required: + - ruleIds + type: object + SecurityMonitoringRuleBulkExportData: + description: Data for bulk exporting security monitoring rules. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkExportAttributes" + id: + description: Request ID. + example: bulk_export + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkExportDataType" + required: + - attributes + - type + type: object + SecurityMonitoringRuleBulkExportDataType: + description: The type of the resource. + enum: + - security_monitoring_rules_bulk_export + example: security_monitoring_rules_bulk_export + type: string + x-enum-varnames: + - SECURITY_MONITORING_RULES_BULK_EXPORT + SecurityMonitoringRuleBulkExportPayload: + description: Payload for bulk exporting security monitoring rules. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkExportData" + required: + - data + type: object + SecurityMonitoringRuleCase: + description: Case when signal is generated. + properties: + actions: + description: Action to perform for each rule case. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseAction" + type: array + condition: + description: "A rule case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated\nbased on the event counts in the previously defined queries." + type: string + customStatus: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + name: + description: Name of the case. + type: string + notifications: + description: Notification targets for each rule case. + items: + description: Notification. + type: string + type: array + status: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + type: object + SecurityMonitoringRuleCaseAction: + description: Action to perform when a signal is triggered. Only available for Application Security rule type. + properties: + options: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseActionOptions" + type: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseActionType" + type: object + SecurityMonitoringRuleCaseActionOptions: + additionalProperties: {} + description: Options for the rule action + properties: + duration: + description: Duration of the action in seconds. 0 indicates no expiration. + example: 0 + format: int64 + minimum: 0 + type: integer + flaggedIPType: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseActionOptionsFlaggedIPType" + userBehaviorName: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseActionOptionsUserBehaviorName" + type: object + SecurityMonitoringRuleCaseActionOptionsFlaggedIPType: + description: Used with the case action of type 'flag_ip'. The value specified in this field is applied as a flag to the IP addresses. + enum: + - SUSPICIOUS + - FLAGGED + example: FLAGGED + type: string + x-enum-varnames: + - SUSPICIOUS + - FLAGGED + SecurityMonitoringRuleCaseActionOptionsUserBehaviorName: + description: Used with the case action of type 'user_behavior'. The value specified in this field is applied as a risk tag to all users affected by the rule. + type: string + SecurityMonitoringRuleCaseActionType: + description: The action type. + enum: + - block_ip + - block_user + - user_behavior + - flag_ip + type: string + x-enum-varnames: + - BLOCK_IP + - BLOCK_USER + - USER_BEHAVIOR + - FLAG_IP + SecurityMonitoringRuleCaseCreate: + description: Case when signal is generated. + properties: + actions: + description: Action to perform for each rule case. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseAction" + type: array + condition: + description: "A case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated\nbased on the event counts in the previously defined queries." + type: string + name: + description: Name of the case. + type: string + notifications: + description: Notification targets. + items: + description: Notification. + type: string + type: array + status: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + required: + - status + type: object + SecurityMonitoringRuleConvertBulkAttributes: + description: Attributes for bulk converting security monitoring rules to Terraform. + properties: + ruleIds: + description: "List of rule IDs to convert. Each rule will be included in the resulting ZIP file\nas a separate Terraform file." + example: + - def-000-u7q + - def-000-7dd + items: + description: A rule ID to include in the bulk convert. + type: string + minItems: 1 + type: array + required: + - ruleIds + type: object + SecurityMonitoringRuleConvertBulkData: + description: Data for bulk converting security monitoring rules to Terraform. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertBulkAttributes" + id: + description: Request ID. + example: convert_bulk + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertBulkDataType" + required: + - attributes + - type + type: object + SecurityMonitoringRuleConvertBulkDataType: + description: The type of the resource. + enum: + - security_monitoring_rules_convert_bulk + example: security_monitoring_rules_convert_bulk + type: string + x-enum-varnames: + - SECURITY_MONITORING_RULES_CONVERT_BULK + SecurityMonitoringRuleConvertBulkPayload: + description: Payload for bulk converting security monitoring rules to Terraform. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertBulkData" + required: + - data + type: object + SecurityMonitoringRuleConvertPayload: + description: Convert a rule from JSON to Terraform. + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringStandardRulePayload" + - $ref: "#/components/schemas/SecurityMonitoringSignalRulePayload" + SecurityMonitoringRuleConvertResponse: + description: Result of the convert rule request containing Terraform content. + properties: + ruleId: + description: the ID of the rule. + type: string + terraformContent: + description: Terraform string as a result of converting the rule from JSON. + type: string + type: object + SecurityMonitoringRuleCreatePayload: + description: Create a new rule. + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringStandardRuleCreatePayload" + - $ref: "#/components/schemas/SecurityMonitoringSignalRuleCreatePayload" + - $ref: "#/components/schemas/CloudConfigurationRuleCreatePayload" + SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv: + description: "If true, signals in non-production environments have a lower severity than what is defined by the rule case, which can reduce signal noise.\nThe severity is decreased by one level: `CRITICAL` in production becomes `HIGH` in non-production, `HIGH` becomes `MEDIUM` and so on. `INFO` remains `INFO`.\nThe decrement is applied when the environment tag of the signal starts with `staging`, `test` or `dev`." + example: false + type: boolean + SecurityMonitoringRuleDetectionMethod: + description: The detection method. + enum: + - threshold + - new_value + - anomaly_detection + - impossible_travel + - hardcoded + - third_party + - anomaly_threshold + - sequence_detection + type: string + x-enum-varnames: + - THRESHOLD + - NEW_VALUE + - ANOMALY_DETECTION + - IMPOSSIBLE_TRAVEL + - HARDCODED + - THIRD_PARTY + - ANOMALY_THRESHOLD + - SEQUENCE_DETECTION + SecurityMonitoringRuleEvaluationWindow: + description: "A time window is specified to match when at least one of the cases matches true. This is a sliding window\nand evaluates in real time. For third party detection method, this field is not used." + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + - 43200 + - 86400 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + - THREE_HOURS + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + SecurityMonitoringRuleHardcodedEvaluatorType: + description: Hardcoded evaluator type. + enum: + - log4shell + type: string + x-enum-varnames: + - LOG4SHELL + SecurityMonitoringRuleImpossibleTravelOptions: + description: Options on impossible travel detection method. + properties: + baselineUserLocations: + $ref: "#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations" + baselineUserLocationsDuration: + $ref: "#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocationsDuration" + type: object + SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations: + description: "If true, signals are suppressed for the first 24 hours. In that time, Datadog learns the user's regular\naccess locations. This can be helpful to reduce noise and infer VPN usage or credentialed API access." + example: true + type: boolean + SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocationsDuration: + description: The duration in days during which Datadog learns the user's regular access locations. After this period, signals are generated for accesses from unknown locations. + format: int32 + maximum: 30 + minimum: 1 + nullable: true + type: integer + SecurityMonitoringRuleInstantaneousBaseline: + description: When set to true, Datadog uses previous values that fall within the defined learning window to construct the baseline, enabling the system to establish an accurate baseline more rapidly rather than relying solely on gradual learning over time. + example: false + type: boolean + SecurityMonitoringRuleKeepAlive: + description: 'Once a signal is generated, the signal will remain "open" if a case is matched at least once within + + this keep alive window. For third party detection method, this field is not used.' + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + - 43200 + - 86400 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + - THREE_HOURS + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + SecurityMonitoringRuleMaxSignalDuration: + description: 'A signal will "close" regardless of the query being matched once the time exceeds the maximum duration. + + This time is calculated from the first seen timestamp.' + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + - 43200 + - 86400 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + - THREE_HOURS + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + SecurityMonitoringRuleNewValueOptions: + description: Options on new value detection method. + properties: + forgetAfter: + $ref: "#/components/schemas/SecurityMonitoringRuleNewValueOptionsForgetAfter" + instantaneousBaseline: + $ref: "#/components/schemas/SecurityMonitoringRuleInstantaneousBaseline" + learningDuration: + $ref: "#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningDuration" + learningMethod: + $ref: "#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningMethod" + learningThreshold: + $ref: "#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningThreshold" + type: object + SecurityMonitoringRuleNewValueOptionsForgetAfter: + description: The duration in days after which a learned value is forgotten. + format: int32 + maximum: 30 + minimum: 1 + type: integer + SecurityMonitoringRuleNewValueOptionsLearningDuration: + default: 0 + description: "The duration in days during which values are learned, and after which signals will be generated for values that\nweren't learned. If set to 0, a signal will be generated for all new values after the first value is learned." + format: int32 + maximum: 30 + minimum: 0 + type: integer + SecurityMonitoringRuleNewValueOptionsLearningMethod: + default: duration + description: The learning method used to determine when signals should be generated for values that weren't learned. + enum: + - duration + - threshold + type: string + x-enum-varnames: + - DURATION + - THRESHOLD + SecurityMonitoringRuleNewValueOptionsLearningThreshold: + default: 0 + description: A number of occurrences after which signals will be generated for values that weren't learned. + enum: + - 0 + - 1 + format: int32 + type: integer + x-enum-varnames: + - ZERO_OCCURRENCES + - ONE_OCCURRENCE + SecurityMonitoringRuleOptions: + description: Options. + properties: + anomalyDetectionOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptions" + complianceRuleOptions: + $ref: "#/components/schemas/CloudConfigurationComplianceRuleOptions" + decreaseCriticalityBasedOnEnv: + $ref: "#/components/schemas/SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv" + detectionMethod: + $ref: "#/components/schemas/SecurityMonitoringRuleDetectionMethod" + evaluationWindow: + $ref: "#/components/schemas/SecurityMonitoringRuleEvaluationWindow" + hardcodedEvaluatorType: + $ref: "#/components/schemas/SecurityMonitoringRuleHardcodedEvaluatorType" + impossibleTravelOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions" + keepAlive: + $ref: "#/components/schemas/SecurityMonitoringRuleKeepAlive" + maxSignalDuration: + $ref: "#/components/schemas/SecurityMonitoringRuleMaxSignalDuration" + newValueOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleNewValueOptions" + sequenceDetectionOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleSequenceDetectionOptions" + thirdPartyRuleOptions: + $ref: "#/components/schemas/SecurityMonitoringRuleThirdPartyOptions" + type: object + SecurityMonitoringRuleQuery: + description: Query for matching rule. + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringStandardRuleQuery" + - $ref: "#/components/schemas/SecurityMonitoringSignalRuleQuery" + SecurityMonitoringRuleQueryAggregation: + description: The aggregation type. + enum: + - count + - cardinality + - sum + - max + - new_value + - geo_data + - event_count + - none + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - SUM + - MAX + - NEW_VALUE + - GEO_DATA + - EVENT_COUNT + - NONE + SecurityMonitoringRuleQueryPayload: + description: Payload to test a rule query with the expected result. + properties: + expectedResult: + description: Expected result of the test. + example: true + type: boolean + index: + description: Index of the query under test. + example: 0 + format: int64 + minimum: 0 + type: integer + payload: + $ref: "#/components/schemas/SecurityMonitoringRuleQueryPayloadData" + type: object + SecurityMonitoringRuleQueryPayloadData: + additionalProperties: {} + description: Payload used to test the rule query. + properties: + ddsource: + description: Source of the payload. + example: nginx + type: string + ddtags: + description: Tags associated with your data. + example: env:staging,version:5.1 + type: string + hostname: + description: The name of the originating host of the log. + example: i-012345678 + type: string + message: + description: The message of the payload. + example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: string + service: + description: The name of the application or service generating the data. + example: payment + type: string + type: object + SecurityMonitoringRuleResponse: + description: Create a new rule. + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringStandardRuleResponse" + - $ref: "#/components/schemas/SecurityMonitoringSignalRuleResponse" + SecurityMonitoringRuleSequenceDetectionOptions: + description: Options on sequence detection method. + properties: + stepTransitions: + description: Transitions defining the allowed order of steps and their evaluation windows. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleSequenceDetectionStepTransition" + type: array + steps: + description: Steps that define the conditions to be matched in sequence. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleSequenceDetectionStep" + type: array + type: object + SecurityMonitoringRuleSequenceDetectionStep: + description: Step definition for sequence detection containing the step name, condition, and evaluation window. + properties: + condition: + description: Condition referencing rule queries (e.g., `a > 0`). + type: string + evaluationWindow: + $ref: "#/components/schemas/SecurityMonitoringRuleEvaluationWindow" + name: + description: Unique name identifying the step. + type: string + type: object + SecurityMonitoringRuleSequenceDetectionStepTransition: + description: Transition from a parent step to a child step within a sequence detection rule. + properties: + child: + description: Name of the child step. + type: string + evaluationWindow: + $ref: "#/components/schemas/SecurityMonitoringRuleEvaluationWindow" + parent: + description: Name of the parent step. + type: string + type: object + SecurityMonitoringRuleSeverity: + description: Severity of the Security Signal. + enum: + - info + - low + - medium + - high + - critical + example: critical + type: string + x-enum-varnames: + - INFO + - LOW + - MEDIUM + - HIGH + - CRITICAL + SecurityMonitoringRuleSort: + description: The sort parameters used for querying security monitoring rules. + enum: + - name + - creation_date + - update_date + - enabled + - type + - highest_severity + - source + - -name + - -creation_date + - -update_date + - -enabled + - -type + - -highest_severity + - -source + type: string + x-enum-varnames: + - NAME + - CREATION_DATE + - UPDATE_DATE + - ENABLED + - TYPE + - HIGHEST_SEVERITY + - SOURCE + - NAME_DESCENDING + - CREATION_DATE_DESCENDING + - UPDATE_DATE_DESCENDING + - ENABLED_DESCENDING + - TYPE_DESCENDING + - HIGHEST_SEVERITY_DESCENDING + - SOURCE_DESCENDING + SecurityMonitoringRuleTestPayload: + description: Test a rule. + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringStandardRuleTestPayload" + SecurityMonitoringRuleTestRequest: + description: Test the rule queries of a rule (rule property is ignored when applied to an existing rule) + properties: + rule: + $ref: "#/components/schemas/SecurityMonitoringRuleTestPayload" + ruleQueryPayloads: + description: Data payloads used to test rules query with the expected result. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleQueryPayload" + type: array + type: object + SecurityMonitoringRuleTestResponse: + description: Result of the test of the rule queries. + properties: + results: + description: "Assert results are returned in the same order as the rule query payloads.\nFor each payload, it returns True if the result matched the expected result,\nFalse otherwise." + items: + description: Whether the rule query result matched the expected result. + type: boolean + type: array + type: object + SecurityMonitoringRuleThirdPartyOptions: + description: Options on third party detection method. + properties: + defaultNotifications: + description: Notification targets for the logs that do not correspond to any of the cases. + items: + description: Notification. + type: string + type: array + defaultStatus: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + rootQueries: + description: Queries to be combined with third party case queries. Each of them can have different group by fields, to aggregate differently based on the type of alert. + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRootQuery" + type: array + signalTitleTemplate: + description: A template for the signal title; if omitted, the title is generated based on the case name. + type: string + type: object + SecurityMonitoringRuleTypeCreate: + description: The rule type. + enum: + - api_security + - application_security + - log_detection + - workload_activity + - workload_security + type: string + x-enum-varnames: + - API_SECURITY + - APPLICATION_SECURITY + - LOG_DETECTION + - WORKLOAD_ACTIVITY + - WORKLOAD_SECURITY + SecurityMonitoringRuleTypeRead: + description: The rule type. + enum: + - log_detection + - infrastructure_configuration + - workload_security + - cloud_configuration + - application_security + - api_security + - workload_activity + type: string + x-enum-varnames: + - LOG_DETECTION + - INFRASTRUCTURE_CONFIGURATION + - WORKLOAD_SECURITY + - CLOUD_CONFIGURATION + - APPLICATION_SECURITY + - API_SECURITY + - WORKLOAD_ACTIVITY + SecurityMonitoringRuleTypeTest: + description: The rule type. + enum: + - log_detection + type: string + x-enum-varnames: + - LOG_DETECTION + SecurityMonitoringRuleUpdatePayload: + description: Update an existing rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: "#/components/schemas/CalculatedField" + type: array + cases: + description: Cases for generating signals. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCase" + type: array + complianceSignalOptions: + $ref: "#/components/schemas/CloudConfigurationRuleComplianceSignalOptions" + customMessage: + description: Custom/Overridden Message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: Name of the rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleQuery" + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringReferenceTable" + type: array + schedulingOptions: + $ref: "#/components/schemas/SecurityMonitoringSchedulingOptions" + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRuleCase" + type: array + version: + description: The version of the rule being updated. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityMonitoringRuleValidatePayload: + description: Validate a rule. + oneOf: + - $ref: "#/components/schemas/SecurityMonitoringStandardRulePayload" + - $ref: "#/components/schemas/SecurityMonitoringSignalRulePayload" + - $ref: "#/components/schemas/CloudConfigurationRulePayload" + SecurityMonitoringSKU: + description: The Cloud SIEM pricing model (SKU) for the organization. + enum: + - per_gb_analyzed + - per_event_in_siem_index_2023 + - add_on_2024 + - standalone_indexed + - unknown + example: add_on_2024 + type: string + x-enum-varnames: + - PER_GB_ANALYZED + - PER_EVENT_IN_SIEM_INDEX_2023 + - ADD_ON_2024 + - STANDALONE_INDEXED + - UNKNOWN + SecurityMonitoringSchedulingOptions: + description: Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs. + nullable: true + properties: + rrule: + description: Schedule for the rule queries, written in RRULE syntax. See [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) for syntax reference. + example: FREQ=HOURLY;INTERVAL=1; + type: string + start: + description: Start date for the schedule, in ISO 8601 format without timezone. + example: "2025-07-14T12:00:00" + type: string + timezone: + description: Time zone of the start date, in the [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) format. + example: America/New_York + type: string + type: object + SecurityMonitoringSentinelOneIntegrationConfigCreateAttributes: + description: The attributes of a SentinelOne entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: acme.sentinelone.net + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeSentinelOne" + name: + description: The display name for the entity context sync configuration. + example: My SentinelOne Integration + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSentinelOneSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + - domain + - name + - secrets + type: object + SecurityMonitoringSentinelOneIntegrationConfigUpdateAttributes: + description: Fields to update on a SentinelOne entity context sync configuration. + properties: + domain: + description: The new domain associated with the external entity source. + example: acme.sentinelone.net + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeSentinelOne" + name: + description: The new display name for the entity context sync configuration. + example: My SentinelOne Integration (renamed) + type: string + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSentinelOneSecrets" + settings: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSettings" + required: + - integration_type + type: object + SecurityMonitoringSentinelOneIntegrationCredentialsValidateAttributes: + description: The SentinelOne credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: acme.sentinelone.net + type: string + integration_type: + $ref: "#/components/schemas/SecurityMonitoringIntegrationTypeSentinelOne" + secrets: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigSentinelOneSecrets" + required: + - integration_type + - domain + - secrets + type: object + SecurityMonitoringSignal: + description: Object description of a security signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalAttributes" + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringSignalType" + type: object + SecurityMonitoringSignalArchiveComment: + description: Optional comment to display on archived signals. + type: string + SecurityMonitoringSignalArchiveReason: + description: Reason a signal is archived. + enum: + - none + - false_positive + - testing_or_maintenance + - remediated + - investigated_case_opened + - true_positive_benign + - true_positive_malicious + - other + type: string + x-enum-varnames: + - NONE + - FALSE_POSITIVE + - TESTING_OR_MAINTENANCE + - REMEDIATED + - INVESTIGATED_CASE_OPENED + - TRUE_POSITIVE_BENIGN + - TRUE_POSITIVE_MALICIOUS + - OTHER + SecurityMonitoringSignalAssigneeUpdateAttributes: + description: Attributes describing the new assignee of a security signal. + properties: + assignee: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + version: + $ref: "#/components/schemas/SecurityMonitoringSignalVersion" + required: + - assignee + type: object + SecurityMonitoringSignalAssigneeUpdateData: + description: Data containing the patch for changing the assignee of a signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalAssigneeUpdateAttributes" + required: + - attributes + type: object + SecurityMonitoringSignalAssigneeUpdateRequest: + description: Request body for changing the assignee of a given security monitoring signal. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignalAssigneeUpdateData" + required: + - data + type: object + SecurityMonitoringSignalAttributes: + additionalProperties: {} + description: "The object containing all signal attributes and their\nassociated values." + properties: + custom: + additionalProperties: {} + description: A JSON object of attributes in the security signal. + example: + workflow: + first_seen: "2020-06-23T14:46:01.000Z" + last_seen: "2020-06-23T14:46:49.000Z" + rule: + id: 0f5-e0c-805 + name: "Brute Force Attack Grouped By User" + version: 12 + type: object + message: + description: The message in the security signal defined by the rule that generated the signal. + example: Detect Account Take Over (ATO) through brute force attempts + type: string + tags: + description: An array of tags associated with the security signal. + example: + - security:attack + - technique:T1110-brute-force + items: + description: The tag associated with the security signal. + type: string + type: array + timestamp: + description: The timestamp of the security signal. + example: "2019-01-02T09:42:36.320Z" + format: date-time + type: string + type: object + SecurityMonitoringSignalIncidentIds: + description: Array of incidents that are associated with this signal. + example: + - 2066 + items: + description: Public ID attribute of the incident that is associated with the signal. + example: 2066 + format: int64 + type: integer + type: array + SecurityMonitoringSignalIncidentsUpdateAttributes: + description: Attributes describing the new list of related signals for a security signal. + properties: + incident_ids: + $ref: "#/components/schemas/SecurityMonitoringSignalIncidentIds" + version: + $ref: "#/components/schemas/SecurityMonitoringSignalVersion" + required: + - incident_ids + type: object + SecurityMonitoringSignalIncidentsUpdateData: + description: Data containing the patch for changing the related incidents of a signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalIncidentsUpdateAttributes" + required: + - attributes + type: object + SecurityMonitoringSignalIncidentsUpdateRequest: + description: Request body for changing the related incidents of a given security monitoring signal. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignalIncidentsUpdateData" + required: + - data + type: object + SecurityMonitoringSignalInvestigationQueryTemplateVariables: + additionalProperties: + items: + description: A value for this template variable extracted from the signal. + type: string + type: array + description: Template variables applied to the investigation log query, mapping attribute paths to values extracted from the signal. + example: + "@userIdentity.arn": + - foo + type: object + SecurityMonitoringSignalListRequest: + description: The request for a security signal list. + properties: + filter: + $ref: "#/components/schemas/SecurityMonitoringSignalListRequestFilter" + page: + $ref: "#/components/schemas/SecurityMonitoringSignalListRequestPage" + sort: + $ref: "#/components/schemas/SecurityMonitoringSignalsSort" + type: object + SecurityMonitoringSignalListRequestFilter: + description: Search filters for listing security signals. + properties: + from: + description: The minimum timestamp for requested security signals. + example: "2019-01-02T09:42:36.320Z" + format: date-time + type: string + query: + description: Search query for listing security signals. + example: security:attack status:high + type: string + to: + description: The maximum timestamp for requested security signals. + example: "2019-01-03T09:42:36.320Z" + format: date-time + type: string + type: object + SecurityMonitoringSignalListRequestPage: + description: The paging attributes for listing security signals. + properties: + cursor: + description: A list of results using the cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: The maximum number of security signals in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + SecurityMonitoringSignalMetadataType: + default: signal_metadata + description: The type of event. + enum: + - signal_metadata + example: signal_metadata + type: string + x-enum-varnames: + - SIGNAL_METADATA + SecurityMonitoringSignalResponse: + description: Security Signal response data object. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignal" + type: object + SecurityMonitoringSignalRuleCreatePayload: + description: Create a new signal correlation rule. + properties: + cases: + description: Cases for generating signals. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseCreate" + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: "" + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting signals which are part of the rule. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringSignalRuleQuery" + type: array + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringSignalRuleType" + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringSignalRulePayload: + description: The payload of a signal correlation rule. + properties: + cases: + description: Cases for generating signals. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseCreate" + type: array + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: "" + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting signals which are part of the rule. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringSignalRuleQuery" + type: array + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringSignalRuleType" + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringSignalRuleQuery: + description: Query for matching rule on signals. + properties: + aggregation: + $ref: "#/components/schemas/SecurityMonitoringRuleQueryAggregation" + correlatedByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + correlatedQueryIndex: + description: Index of the rule query used to retrieve the correlated field. + format: int32 + maximum: 9 + type: integer + metrics: + description: Group of target fields to aggregate over. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + ruleId: + description: Rule ID to match on signals. + example: org-ru1-e1d + type: string + required: + - ruleId + type: object + SecurityMonitoringSignalRuleResponse: + description: Rule. + properties: + cases: + description: Cases for generating signals. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCase" + type: array + createdAt: + description: When the rule was created, timestamp in milliseconds. + format: int64 + type: integer + creationAuthorId: + description: User ID of the user who created the rule. + format: int64 + type: integer + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + deprecationDate: + description: When the rule will be deprecated, timestamp in milliseconds. + format: int64 + type: integer + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + type: boolean + id: + description: The ID of the rule. + type: string + isDefault: + description: Whether the rule is included by default. + type: boolean + isDeleted: + description: Whether the rule has been deleted. + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: The name of the rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringSignalRuleResponseQuery" + type: array + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringSignalRuleType" + updateAuthorId: + description: User ID of the user who updated the rule. + format: int64 + type: integer + version: + description: The version of the rule. + format: int64 + type: integer + type: object + SecurityMonitoringSignalRuleResponseQuery: + description: Query for matching rule on signals. + properties: + aggregation: + $ref: "#/components/schemas/SecurityMonitoringRuleQueryAggregation" + correlatedByFields: + description: Fields to correlate by. + items: + description: Field. + type: string + type: array + correlatedQueryIndex: + description: Index of the rule query used to retrieve the correlated field. + format: int32 + maximum: 9 + type: integer + defaultRuleId: + description: Default Rule ID to match on signals. + example: d3f-ru1-e1d + type: string + distinctFields: + description: Field for which the cardinality is measured. Sent as an array. + items: + description: Field. + type: string + type: array + groupByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + metrics: + description: Group of target fields to aggregate over. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + ruleId: + description: Rule ID to match on signals. + example: org-ru1-e1d + type: string + type: object + SecurityMonitoringSignalRuleType: + description: The rule type. + enum: + - signal_correlation + type: string + x-enum-varnames: + - SIGNAL_CORRELATION + SecurityMonitoringSignalState: + description: The new triage state of the signal. + enum: + - open + - archived + - under_review + example: open + type: string + x-enum-varnames: + - OPEN + - ARCHIVED + - UNDER_REVIEW + SecurityMonitoringSignalStateUpdateAttributes: + description: Attributes describing the change of state of a security signal. + properties: + archive_comment: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveComment" + archive_reason: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveReason" + state: + $ref: "#/components/schemas/SecurityMonitoringSignalState" + version: + $ref: "#/components/schemas/SecurityMonitoringSignalVersion" + required: + - state + type: object + SecurityMonitoringSignalStateUpdateData: + description: Data containing the patch for changing the state of a signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes" + id: + description: The unique ID of the security signal. + type: + $ref: "#/components/schemas/SecurityMonitoringSignalMetadataType" + required: + - attributes + type: object + SecurityMonitoringSignalStateUpdateRequest: + description: Request body for changing the state of a given security monitoring signal. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignalStateUpdateData" + required: + - data + type: object + SecurityMonitoringSignalSuggestedAction: + description: A suggested action for a security signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalSuggestedActionAttributes" + id: + description: The unique ID of the suggested action. + example: w00-t10-992 + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringSignalSuggestedActionType" + required: + - id + - type + - attributes + type: object + SecurityMonitoringSignalSuggestedActionAttributes: + description: Attributes of a suggested action for a security signal. The available fields depend on the action type. + properties: + name: + description: The name of the investigation log query. + example: Cloudtrail events for user ARN + type: string + query_filter: + description: The log query filter for the investigation. + example: 'source:cloudtrail @userIdentity.arn:"foo"' + type: string + template_variables: + $ref: "#/components/schemas/SecurityMonitoringSignalInvestigationQueryTemplateVariables" + title: + description: The title of the recommended blog post. + example: Monitor Okta logs to track system access and unusual activity + type: string + url: + description: The URL of the suggested action. + example: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + type: string + type: object + SecurityMonitoringSignalSuggestedActionList: + description: List of suggested actions for a security signal. + example: + - attributes: + name: Cloudtrail events for user ARN + query_filter: 'source:cloudtrail @userIdentity.arn:"foo"' + template_variables: + "@userIdentity.arn": + - foo + url: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + id: w00-t10-992 + type: investigation_log_queries + - attributes: + title: Monitor Okta logs to track system access and unusual activity + url: https://www.datadoghq.com/blog/monitor-activity-with-okta/ + id: bxy-o8v-i1a + type: recommended_blog_posts + items: + $ref: "#/components/schemas/SecurityMonitoringSignalSuggestedAction" + type: array + SecurityMonitoringSignalSuggestedActionType: + description: The type of the suggested action resource. + enum: + - investigation_log_queries + - recommended_blog_posts + example: investigation_log_queries + type: string + x-enum-varnames: + - INVESTIGATION_LOG_QUERIES + - RECOMMENDED_BLOG_POSTS + SecurityMonitoringSignalSuggestedActionsResponse: + description: Response with suggested actions for a security signal. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignalSuggestedActionList" + required: + - data + type: object + SecurityMonitoringSignalTriageAttributes: + description: Attributes describing a triage state update operation over a security signal. + properties: + archive_comment: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveComment" + archive_comment_timestamp: + description: Timestamp of the last edit to the comment. + format: int64 + minimum: 0 + type: integer + archive_comment_user: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + archive_reason: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveReason" + assignee: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + incident_ids: + $ref: "#/components/schemas/SecurityMonitoringSignalIncidentIds" + state: + $ref: "#/components/schemas/SecurityMonitoringSignalState" + state_update_timestamp: + description: Timestamp of the last update to the signal state. + format: int64 + minimum: 0 + type: integer + state_update_user: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + required: + - assignee + - state + - incident_ids + type: object + SecurityMonitoringSignalTriageUpdateData: + description: Data containing the updated triage attributes of the signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalTriageAttributes" + id: + description: The unique ID of the security signal. + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringSignalMetadataType" + type: object + SecurityMonitoringSignalTriageUpdateResponse: + description: The response returned after all triage operations, containing the updated signal triage data. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignalTriageUpdateData" + required: + - data + type: object + SecurityMonitoringSignalType: + default: signal + description: The type of event. + enum: + - signal + example: signal + type: string + x-enum-varnames: + - SIGNAL + SecurityMonitoringSignalUpdateAttributes: + description: Attributes for updating the triage state or assignee of a security signal. + properties: + archive_comment: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveComment" + archive_reason: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveReason" + assignee: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + state: + $ref: "#/components/schemas/SecurityMonitoringSignalState" + version: + $ref: "#/components/schemas/SecurityMonitoringSignalVersion" + type: object + SecurityMonitoringSignalUpdateData: + description: Data containing the triage state or assignee update for a security signal. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalUpdateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringSignalMetadataType" + required: + - attributes + type: object + SecurityMonitoringSignalUpdateRequest: + description: Request body for updating the triage state or assignee of a security signal. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSignalUpdateData" + required: + - data + type: object + SecurityMonitoringSignalVersion: + description: Version of the updated signal. If server side version is higher, update will be rejected. + format: int64 + type: integer + SecurityMonitoringSignalsBulkAssigneeUpdateAttributes: + description: Attributes describing the new assignees for a bulk signal update. + properties: + assignee: + description: UUID of the user to assign to the signal. Use an empty string to unassign. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + type: string + version: + $ref: "#/components/schemas/SecurityMonitoringSignalVersion" + required: + - assignee + type: object + SecurityMonitoringSignalsBulkAssigneeUpdateData: + description: Data for updating the assignees for multiple security signals. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkAssigneeUpdateAttributes" + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringSignalType" + required: + - id + - attributes + type: object + SecurityMonitoringSignalsBulkAssigneeUpdateRequest: + description: Request body for updating the assignee of multiple security signals. + properties: + data: + description: An array of signal assignee updates. + items: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkAssigneeUpdateData" + maxItems: 199 + type: array + required: + - data + type: object + SecurityMonitoringSignalsBulkStateUpdateData: + description: Data for updating the state for multiple security signals. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes" + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringSignalType" + required: + - id + - attributes + type: object + SecurityMonitoringSignalsBulkStateUpdateRequest: + description: Request body for updating the triage states of multiple security signals. + properties: + data: + description: An array of signal state updates. + items: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkStateUpdateData" + maxItems: 199 + type: array + required: + - data + type: object + SecurityMonitoringSignalsBulkTriageEvent: + description: A single signal event entry in a bulk triage update response. + properties: + event: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkTriageEventAttributes" + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + required: + - id + - event + type: object + SecurityMonitoringSignalsBulkTriageEventAttributes: + description: Triage attributes of a security signal returned in a bulk update response. + properties: + archive_comment: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveComment" + archive_comment_timestamp: + description: Timestamp of the last edit to the archive comment. + format: int64 + type: integer + archive_comment_user: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + archive_reason: + $ref: "#/components/schemas/SecurityMonitoringSignalArchiveReason" + assignee: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + incident_ids: + $ref: "#/components/schemas/SecurityMonitoringSignalIncidentIds" + state: + $ref: "#/components/schemas/SecurityMonitoringSignalState" + state_update_timestamp: + description: Timestamp of the last state update. + format: int64 + type: integer + state_update_user: + $ref: "#/components/schemas/SecurityMonitoringTriageUser" + required: + - id + - state + - assignee + - incident_ids + type: object + SecurityMonitoringSignalsBulkTriageUpdateResponse: + description: Response for a bulk triage update of security signals. + properties: + result: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResult" + status: + description: The status of the bulk operation. + example: done + type: string + type: + description: The type of the response. + example: status + type: string + required: + - type + - status + - result + type: object + SecurityMonitoringSignalsBulkTriageUpdateResult: + description: The result payload of a bulk signal triage update. + properties: + count: + description: The number of signals updated. + example: 2 + format: int64 + type: integer + events: + description: The list of updated signals. + items: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkTriageEvent" + type: array + required: + - count + - events + type: object + SecurityMonitoringSignalsBulkUpdateData: + description: Data for updating a single security signal in a bulk update operation. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSignalUpdateAttributes" + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: "#/components/schemas/SecurityMonitoringSignalType" + required: + - id + - attributes + type: object + SecurityMonitoringSignalsBulkUpdateRequest: + description: Request body for updating multiple attributes of multiple security signals. + properties: + data: + description: An array of signal updates. + items: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkUpdateData" + maxItems: 199 + type: array + required: + - data + type: object + SecurityMonitoringSignalsListResponse: + description: "The response object with all security signals matching the request\nand pagination information." + properties: + data: + description: An array of security signals matching the request. + items: + $ref: "#/components/schemas/SecurityMonitoringSignal" + type: array + links: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponseLinks" + meta: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponseMeta" + type: object + SecurityMonitoringSignalsListResponseLinks: + description: Links attributes. + properties: + next: + description: "The link for the next set of results. **Note**: The request can also be made using the\nPOST endpoint." + example: https://app.datadoghq.com/api/v2/security_monitoring/signals?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + SecurityMonitoringSignalsListResponseMeta: + description: Meta attributes. + properties: + page: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponseMetaPage" + type: object + SecurityMonitoringSignalsListResponseMetaPage: + description: Paging attributes. + properties: + after: + description: "The cursor used to get the next results, if any. To make the next request, use the same\nparameters with the addition of the `page[cursor]`." + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + SecurityMonitoringSignalsSort: + description: The sort parameters used for querying security signals. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + SecurityMonitoringStandardDataSource: + default: logs + description: Source of events, either logs, audit trail, security signals, or Datadog events. `app_sec_spans` is deprecated in favor of `spans`. + enum: + - logs + - audit + - app_sec_spans + - spans + - security_runtime + - network + - events + - security_signals + example: logs + type: string + x-enum-varnames: + - LOGS + - AUDIT + - APP_SEC_SPANS + - SPANS + - SECURITY_RUNTIME + - NETWORK + - EVENTS + - SECURITY_SIGNALS + SecurityMonitoringStandardRuleCreatePayload: + description: Create a new rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: "#/components/schemas/CalculatedField" + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseCreate" + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: "" + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringStandardRuleQuery" + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringReferenceTable" + type: array + schedulingOptions: + $ref: "#/components/schemas/SecurityMonitoringSchedulingOptions" + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate" + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringRuleTypeCreate" + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringStandardRulePayload: + description: The payload of a rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: "#/components/schemas/CalculatedField" + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseCreate" + type: array + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: "" + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringStandardRuleQuery" + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringReferenceTable" + type: array + schedulingOptions: + $ref: "#/components/schemas/SecurityMonitoringSchedulingOptions" + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate" + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringRuleTypeCreate" + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringStandardRuleQuery: + description: Query for matching rule. + properties: + aggregation: + $ref: "#/components/schemas/SecurityMonitoringRuleQueryAggregation" + customQueryExtension: + description: Query extension to append to the logs query. + example: a > 3 + type: string + dataSource: + $ref: "#/components/schemas/SecurityMonitoringStandardDataSource" + distinctFields: + description: Field for which the cardinality is measured. Sent as an array. + items: + description: Field. + type: string + type: array + groupByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + hasOptionalGroupByFields: + default: false + description: When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values. + example: false + type: boolean + index: + description: "**This field is currently unstable and might be removed in a minor version upgrade.**\nThe index to run the query on, if the `dataSource` is `logs`. Only used for scheduled rules - in other words, when the `schedulingOptions` field is present in the rule payload." + type: string + indexes: + description: List of indexes to query when the `dataSource` is `logs`. Only used for scheduled rules, such as when the `schedulingOptions` field is present in the rule payload. + items: + description: Index. + type: string + type: array + metric: + deprecated: true + description: "(Deprecated) The target field to aggregate over when using the sum or max\naggregations. `metrics` field should be used instead." + type: string + metrics: + description: Group of target fields to aggregate over when using the sum, max, geo data, or new value aggregations. The sum, max, and geo data aggregations only accept one value in this list, whereas the new value aggregation accepts up to five values. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + query: + description: Query to run on logs. + example: a > 3 + type: string + type: object + SecurityMonitoringStandardRuleResponse: + description: Rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: "#/components/schemas/CalculatedField" + type: array + cases: + description: Cases for generating signals. + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCase" + type: array + complianceSignalOptions: + $ref: "#/components/schemas/CloudConfigurationRuleComplianceSignalOptions" + createdAt: + description: When the rule was created, timestamp in milliseconds. + format: int64 + type: integer + creationAuthorId: + description: User ID of the user who created the rule. + format: int64 + type: integer + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + defaultTags: + description: Default Tags for default rules (included in tags) + example: + - security:attacks + items: + description: Default Tag. + type: string + type: array + deprecationDate: + description: When the rule will be deprecated, timestamp in milliseconds. + format: int64 + type: integer + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + type: boolean + id: + description: The ID of the rule. + type: string + isDefault: + description: Whether the rule is included by default. + type: boolean + isDeleted: + description: Whether the rule has been deleted. + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: The name of the rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringStandardRuleQuery" + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringReferenceTable" + type: array + schedulingOptions: + $ref: "#/components/schemas/SecurityMonitoringSchedulingOptions" + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRuleCase" + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringRuleTypeRead" + updateAuthorId: + description: User ID of the user who updated the rule. + format: int64 + type: integer + updatedAt: + description: The date the rule was last updated, in milliseconds. + format: int64 + type: integer + version: + description: The version of the rule. + format: int64 + type: integer + type: object + SecurityMonitoringStandardRuleTestPayload: + description: The payload of a rule to test + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: "#/components/schemas/CalculatedField" + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringRuleCaseCreate" + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: "#/components/schemas/SecurityMonitoringFilter" + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: "" + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: "#/components/schemas/SecurityMonitoringRuleOptions" + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringStandardRuleQuery" + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: "#/components/schemas/SecurityMonitoringReferenceTable" + type: array + schedulingOptions: + $ref: "#/components/schemas/SecurityMonitoringSchedulingOptions" + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: "#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate" + type: array + type: + $ref: "#/components/schemas/SecurityMonitoringRuleTypeTest" + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringSuppression: + description: The suppression rule's properties. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSuppressionAttributes" + id: + $ref: "#/components/schemas/SecurityMonitoringSuppressionID" + type: + $ref: "#/components/schemas/SecurityMonitoringSuppressionType" + type: object + SecurityMonitoringSuppressionAttributes: + description: The attributes of the suppression rule. + properties: + creation_date: + description: A Unix millisecond timestamp given the creation date of the suppression rule. + format: int64 + type: integer + creator: + $ref: "#/components/schemas/SecurityMonitoringUser" + data_exclusion_query: + description: An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule. + example: source:cloudtrail account_id:12345 + type: string + description: + description: A description for the suppression rule. + example: This rule suppresses low-severity signals in staging environments. + type: string + editable: + description: Whether the suppression rule is editable. + example: true + type: boolean + enabled: + description: Whether the suppression rule is enabled. + example: true + type: boolean + expiration_date: + description: A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore. + example: 1703187336000 + format: int64 + type: integer + name: + description: The name of the suppression rule. + example: Custom suppression + type: string + rule_query: + description: The rule query of the suppression rule, with the same syntax as the search bar for detection rules. + example: type:log_detection source:cloudtrail + type: string + start_date: + description: A Unix millisecond timestamp giving the start date for the suppression rule. After this date, it starts suppressing signals. + example: 1703187336000 + format: int64 + type: integer + suppression_query: + description: The suppression query of the suppression rule. If a signal matches this query, it is suppressed and not triggered. Same syntax as the queries to search signals in the signal explorer. + example: env:staging status:low + type: string + tags: + description: List of tags associated with the suppression rule. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + update_date: + description: A Unix millisecond timestamp given the update date of the suppression rule. + format: int64 + type: integer + updater: + $ref: "#/components/schemas/SecurityMonitoringUser" + version: + description: The version of the suppression rule; it starts at 1, and is incremented at each update. + example: 42 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityMonitoringSuppressionCreateAttributes: + description: Object containing the attributes of the suppression rule to be created. + properties: + data_exclusion_query: + description: An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule. + example: source:cloudtrail account_id:12345 + type: string + description: + description: A description for the suppression rule. + example: This rule suppresses low-severity signals in staging environments. + type: string + enabled: + description: Whether the suppression rule is enabled. + example: true + type: boolean + expiration_date: + description: A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore. + example: 1703187336000 + format: int64 + type: integer + name: + description: The name of the suppression rule. + example: Custom suppression + type: string + rule_query: + description: The rule query of the suppression rule, with the same syntax as the search bar for detection rules. + example: type:log_detection source:cloudtrail + type: string + start_date: + description: A Unix millisecond timestamp giving the start date for the suppression rule. After this date, it starts suppressing signals. + example: 1703187336000 + format: int64 + type: integer + suppression_query: + description: The suppression query of the suppression rule. If a signal matches this query, it is suppressed and is not triggered. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: env:staging status:low + type: string + tags: + description: List of tags associated with the suppression rule. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + required: + - name + - enabled + - rule_query + type: object + SecurityMonitoringSuppressionCreateData: + description: Object for a single suppression rule. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSuppressionCreateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringSuppressionType" + required: + - type + - attributes + type: object + SecurityMonitoringSuppressionCreateRequest: + description: Request object that includes the suppression rule that you would like to create. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSuppressionCreateData" + required: + - data + type: object + SecurityMonitoringSuppressionID: + description: The ID of the suppression rule. + example: 3dd-0uc-h1s + type: string + SecurityMonitoringSuppressionResponse: + description: Response object containing a single suppression rule. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSuppression" + type: object + SecurityMonitoringSuppressionSort: + description: The sort parameters used for querying suppression rules. + enum: + - name + - start_date + - expiration_date + - update_date + - enabled + - -name + - -start_date + - -expiration_date + - -update_date + - -creation_date + - -enabled + type: string + x-enum-varnames: + - NAME + - START_DATE + - EXPIRATION_DATE + - UPDATE_DATE + - ENABLED + - NAME_DESCENDING + - START_DATE_DESCENDING + - EXPIRATION_DATE_DESCENDING + - UPDATE_DATE_DESCENDING + - CREATION_DATE_DESCENDING + - ENABLED_DESCENDING + SecurityMonitoringSuppressionType: + default: suppressions + description: The type of the resource. The value should always be `suppressions`. + enum: + - suppressions + example: suppressions + type: string + x-enum-varnames: + - SUPPRESSIONS + SecurityMonitoringSuppressionUpdateAttributes: + description: The suppression rule properties to be updated. + properties: + data_exclusion_query: + description: An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule. + example: source:cloudtrail account_id:12345 + type: string + description: + description: A description for the suppression rule. + example: This rule suppresses low-severity signals in staging environments. + type: string + enabled: + description: Whether the suppression rule is enabled. + example: true + type: boolean + expiration_date: + description: A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore. If unset, the expiration date of the suppression rule is left untouched. If set to `null`, the expiration date is removed. + example: 1703187336000 + format: int64 + nullable: true + type: integer + name: + description: The name of the suppression rule. + example: Custom suppression + type: string + rule_query: + description: The rule query of the suppression rule, with the same syntax as the search bar for detection rules. + example: type:log_detection source:cloudtrail + type: string + start_date: + description: A Unix millisecond timestamp giving the start date for the suppression rule. After this date, it starts suppressing signals. If unset, the start date of the suppression rule is left untouched. If set to `null`, the start date is removed. + example: 1703187336000 + format: int64 + nullable: true + type: integer + suppression_query: + description: The suppression query of the suppression rule. If a signal matches this query, it is suppressed and not triggered. Same syntax as the queries to search signals in the signal explorer. + example: env:staging status:low + type: string + tags: + description: List of tags associated with the suppression rule. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + version: + description: The current version of the suppression. This is optional, but it can help prevent concurrent modifications. + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityMonitoringSuppressionUpdateData: + description: The new suppression properties; partial updates are supported. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringSuppressionUpdateAttributes" + type: + $ref: "#/components/schemas/SecurityMonitoringSuppressionType" + required: + - type + - attributes + type: object + SecurityMonitoringSuppressionUpdateRequest: + description: Request object containing the fields to update on the suppression rule. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringSuppressionUpdateData" + required: + - data + type: object + SecurityMonitoringSuppressionsMeta: + description: Metadata for the suppression list response. + properties: + page: + $ref: "#/components/schemas/SecurityMonitoringSuppressionsPageMeta" + type: object + SecurityMonitoringSuppressionsPageMeta: + description: Pagination metadata. + properties: + pageNumber: + description: Current page number. + example: 0 + format: int64 + type: integer + pageSize: + description: Current page size. + example: 2 + format: int64 + type: integer + totalCount: + description: Total count of suppressions. + example: 2 + format: int64 + type: integer + type: object + SecurityMonitoringSuppressionsResponse: + description: Response object containing the available suppression rules. + properties: + data: + description: A list of suppressions objects. + items: + $ref: "#/components/schemas/SecurityMonitoringSuppression" + type: array + type: object + SecurityMonitoringTerraformBulkExportAttributes: + description: Attributes for the bulk export request. + properties: + resource_ids: + description: The list of resource IDs to export. Maximum 1000 items. + example: + - "" + items: + description: The ID of the resource to export. + type: string + maxItems: 1000 + type: array + required: + - resource_ids + type: object + SecurityMonitoringTerraformBulkExportData: + description: The bulk export request data object. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringTerraformBulkExportAttributes" + type: + description: The JSON:API type. Always `bulk_export_resources`. + example: bulk_export_resources + type: string + required: + - type + - attributes + type: object + SecurityMonitoringTerraformBulkExportRequest: + description: Request body for bulk exporting security monitoring resources to Terraform. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringTerraformBulkExportData" + required: + - data + type: object + SecurityMonitoringTerraformConvertAttributes: + description: Attributes for the convert request. + properties: + resource_json: + additionalProperties: {} + description: The resource attributes as a JSON object, matching the structure returned by the corresponding Datadog API (for example, the attributes of a suppression rule). + example: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + type: object + required: + - resource_json + type: object + SecurityMonitoringTerraformConvertData: + description: The convert request data object. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringTerraformConvertAttributes" + id: + description: The ID of the resource being converted. + example: abc-123 + type: string + type: + description: The JSON:API type. Always `convert_resource`. + example: convert_resource + type: string + required: + - type + - id + - attributes + type: object + SecurityMonitoringTerraformConvertRequest: + description: Request body for converting a security monitoring resource JSON to Terraform. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringTerraformConvertData" + required: + - data + type: object + SecurityMonitoringTerraformExportAttributes: + description: Attributes of the Terraform export response. + properties: + output: + description: The Terraform configuration for the resource. + type: string + resource_id: + description: The ID of the exported resource. + example: abc-123 + type: string + type_name: + description: The Terraform resource type name. + example: datadog_security_monitoring_suppression + type: string + required: + - type_name + - resource_id + type: object + SecurityMonitoringTerraformExportData: + description: The Terraform export data object. + properties: + attributes: + $ref: "#/components/schemas/SecurityMonitoringTerraformExportAttributes" + id: + description: The resource identifier composed of the Terraform type name and the resource ID separated by `|`. + example: datadog_security_monitoring_suppression|abc-123 + type: string + type: + description: The JSON:API type. Always `format_resource`. + example: format_resource + type: string + required: + - type + - id + - attributes + type: object + SecurityMonitoringTerraformExportResponse: + description: Response containing the Terraform configuration for a security monitoring resource. + properties: + data: + $ref: "#/components/schemas/SecurityMonitoringTerraformExportData" + type: object + SecurityMonitoringTerraformResourceType: + description: The type of security monitoring resource to export to Terraform. + enum: + - suppressions + - critical_assets + - security_filters + - rules + type: string + x-enum-varnames: + - SUPPRESSIONS + - CRITICAL_ASSETS + - SECURITY_FILTERS + - RULES + SecurityMonitoringThirdPartyRootQuery: + description: A query to be combined with the third party case query. + properties: + groupByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + query: + description: Query to run on logs. + example: source:cloudtrail + type: string + type: object + SecurityMonitoringThirdPartyRuleCase: + description: Case when signal is generated by a third party rule. + properties: + customStatus: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + name: + description: Name of the case. + type: string + notifications: + description: Notification targets for each rule case. + items: + description: Notification. + type: string + type: array + query: + description: A query to map a third party event to this case. + type: string + status: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + type: object + SecurityMonitoringThirdPartyRuleCaseCreate: + description: Case when a signal is generated by a third party rule. + properties: + name: + description: Name of the case. + type: string + notifications: + description: Notification targets for each case. + items: + description: Notification. + type: string + type: array + query: + description: A query to map a third party event to this case. + type: string + status: + $ref: "#/components/schemas/SecurityMonitoringRuleSeverity" + required: + - status + type: object + SecurityMonitoringTriageUser: + description: Object representing a given user entity. + properties: + handle: + description: The handle for this user account. + type: string + icon: + description: Gravatar icon associated to the user. + example: /path/to/matching/gravatar/icon + readOnly: true + type: string + id: + description: Numerical ID assigned by Datadog to this user account. + format: int64 + type: integer + name: + description: The name for this user account. + nullable: true + type: string + uuid: + description: UUID assigned by Datadog to this user account. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + type: string + required: + - uuid + type: object + SecurityMonitoringUser: + description: A user. + properties: + handle: + description: The handle of the user. + example: john.doe@datadoghq.com + type: string + name: + description: The name of the user. + example: John Doe + nullable: true + type: string + type: object + SecurityTrigger: + description: "Trigger a workflow from a Security Signal or Finding. For automatic triggering a handle must be configured and the workflow must be published." + properties: + rateLimit: + $ref: "#/components/schemas/TriggerRateLimit" + type: object + SecurityTriggerWrapper: + description: "Schema for a Security-based trigger." + properties: + securityTrigger: + $ref: "#/components/schemas/SecurityTrigger" + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - securityTrigger + type: object + Selectors: + description: |- + Selectors are used to filter security issues for which notifications should be generated. + Users can specify rule severities, rule types, a query to filter security issues on tags and attributes, and the trigger source. + Only the trigger_source field is required. + properties: + query: + $ref: "#/components/schemas/NotificationRuleQuery" + rule_types: + $ref: "#/components/schemas/RuleTypes" + severities: + description: The security rules severities to consider. + items: + $ref: "#/components/schemas/RuleSeverity" + type: array + trigger_source: + $ref: "#/components/schemas/TriggerSource" + required: + - trigger_source + type: object + SelfServiceTriggerWrapper: + description: "Schema for a Self Service-based trigger." + properties: + selfServiceTrigger: + description: "Trigger a workflow from Self Service." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - selfServiceTrigger + type: object + SendSlackMessageAction: + description: "Sends a message to a Slack channel." + properties: + channel: + description: "The channel ID." + example: CHANNEL + type: string + type: + $ref: "#/components/schemas/SendSlackMessageActionType" + workspace: + description: "The workspace ID." + example: WORKSPACE + type: string + required: + - type + - channel + - workspace + type: object + SendSlackMessageActionType: + default: send_slack_message + description: "Indicates that the action is a send Slack message action." + enum: + - send_slack_message + example: send_slack_message + type: string + x-enum-varnames: + - SEND_SLACK_MESSAGE + SendTeamsMessageAction: + description: "Sends a message to a Microsoft Teams channel." + properties: + channel: + description: The channel ID. + example: CHANNEL + type: string + team: + description: The team ID. + example: TEAM + type: string + tenant: + description: The tenant ID. + example: TENANT + type: string + type: + $ref: "#/components/schemas/SendTeamsMessageActionType" + required: + - type + - channel + - tenant + - team + type: object + SendTeamsMessageActionType: + default: send_teams_message + description: "Indicates that the action is a send Microsoft Teams message action." + enum: + - send_teams_message + example: send_teams_message + type: string + x-enum-varnames: + - SEND_TEAMS_MESSAGE + SensitiveDataScannerConfigRequest: + description: Group reorder request. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerReorderConfig" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + required: + - data + - meta + type: object + SensitiveDataScannerConfiguration: + description: A Sensitive Data Scanner configuration. + properties: + id: + description: ID of the configuration. + type: string + type: + $ref: "#/components/schemas/SensitiveDataScannerConfigurationType" + type: object + SensitiveDataScannerConfigurationData: + description: A Sensitive Data Scanner configuration data. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerConfiguration" + type: object + SensitiveDataScannerConfigurationRelationships: + description: Relationships of the configuration. + properties: + groups: + $ref: "#/components/schemas/SensitiveDataScannerGroupList" + type: object + SensitiveDataScannerConfigurationType: + default: sensitive_data_scanner_configuration + description: Sensitive Data Scanner configuration type. + enum: + - sensitive_data_scanner_configuration + example: sensitive_data_scanner_configuration + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_CONFIGURATIONS + SensitiveDataScannerCreateGroupResponse: + description: Create group response. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerGroupResponse" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerCreateRuleResponse: + description: Create rule response. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerRuleResponse" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerFilter: + description: Filter for the Scanning Group. + properties: + query: + description: Query to filter the events. + type: string + type: object + SensitiveDataScannerGetConfigIncludedArray: + description: Included objects from relationships. + items: + $ref: "#/components/schemas/SensitiveDataScannerGetConfigIncludedItem" + type: array + SensitiveDataScannerGetConfigIncludedItem: + description: An object related to the configuration. + oneOf: + - $ref: "#/components/schemas/SensitiveDataScannerRuleIncludedItem" + - $ref: "#/components/schemas/SensitiveDataScannerGroupIncludedItem" + SensitiveDataScannerGetConfigResponse: + description: Get all groups response. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerGetConfigResponseData" + included: + $ref: "#/components/schemas/SensitiveDataScannerGetConfigIncludedArray" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMeta" + type: object + SensitiveDataScannerGetConfigResponseData: + description: Response data related to the scanning groups. + properties: + attributes: + additionalProperties: {} + description: Attributes of the Sensitive Data configuration. + type: object + id: + description: ID of the configuration. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerConfigurationRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerConfigurationType" + type: object + SensitiveDataScannerGroup: + description: A scanning group. + properties: + id: + description: ID of the group. + type: string + type: + $ref: "#/components/schemas/SensitiveDataScannerGroupType" + type: object + SensitiveDataScannerGroupAttributes: + description: Attributes of the Sensitive Data Scanner group. + properties: + description: + description: Description of the group. + type: string + filter: + $ref: "#/components/schemas/SensitiveDataScannerFilter" + is_enabled: + description: Whether or not the group is enabled. + type: boolean + name: + description: Name of the group. + type: string + product_list: + description: List of products the scanning group applies. + items: + $ref: "#/components/schemas/SensitiveDataScannerProduct" + type: array + samplings: + description: List of sampling rates per product type. + items: + $ref: "#/components/schemas/SensitiveDataScannerSamplings" + type: array + type: object + SensitiveDataScannerGroupCreate: + description: Data related to the creation of a group. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerGroupAttributes" + relationships: + $ref: "#/components/schemas/SensitiveDataScannerGroupRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerGroupType" + required: + - type + - attributes + type: object + SensitiveDataScannerGroupCreateRequest: + description: Create group request. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerGroupCreate" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerGroupData: + description: A scanning group data. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerGroup" + type: object + SensitiveDataScannerGroupDeleteRequest: + description: Delete group request. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + required: + - meta + type: object + SensitiveDataScannerGroupDeleteResponse: + description: Delete group response. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerGroupIncludedItem: + description: A Scanning Group included item. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerGroupAttributes" + id: + description: ID of the group. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerGroupRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerGroupType" + type: object + SensitiveDataScannerGroupItem: + description: Data related to a Sensitive Data Scanner Group. + properties: + id: + description: ID of the group. + type: string + type: + $ref: "#/components/schemas/SensitiveDataScannerGroupType" + type: object + SensitiveDataScannerGroupList: + description: List of groups, ordered. + properties: + data: + description: List of groups. The order is important. + items: + $ref: "#/components/schemas/SensitiveDataScannerGroupItem" + type: array + type: object + SensitiveDataScannerGroupRelationships: + description: Relationships of the group. + properties: + configuration: + $ref: "#/components/schemas/SensitiveDataScannerConfigurationData" + rules: + $ref: "#/components/schemas/SensitiveDataScannerRuleData" + type: object + SensitiveDataScannerGroupResponse: + description: Response data related to the creation of a group. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerGroupAttributes" + id: + description: ID of the group. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerGroupRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerGroupType" + type: object + SensitiveDataScannerGroupType: + default: sensitive_data_scanner_group + description: Sensitive Data Scanner group type. + enum: + - sensitive_data_scanner_group + example: sensitive_data_scanner_group + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_GROUP + SensitiveDataScannerGroupUpdate: + description: Data related to the update of a group. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerGroupAttributes" + id: + description: ID of the group. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerGroupRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerGroupType" + type: object + SensitiveDataScannerGroupUpdateRequest: + description: Update group request. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerGroupUpdate" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + required: + - data + - meta + type: object + SensitiveDataScannerGroupUpdateResponse: + description: Update group response. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerIncludedKeywordConfiguration: + description: |- + Object defining a set of keywords and a number of characters that help reduce noise. + You can provide a list of keywords you would like to check within a defined proximity of the matching pattern. + If any of the keywords are found within the proximity check, the match is kept. + If none are found, the match is discarded. + properties: + character_count: + description: |- + The number of characters behind a match detected by Sensitive Data Scanner to look for the keywords defined. + `character_count` should be greater than the maximum length of a keyword defined for a rule. + example: 30 + format: int64 + maximum: 50 + minimum: 1 + type: integer + keywords: + description: |- + Keyword list that will be checked during scanning in order to validate a match. + The number of keywords in the list must be less than or equal to 30. + example: ["email", "address", "login"] + items: + description: A keyword to match within the defined proximity of the detected pattern. + type: string + type: array + use_recommended_keywords: + description: |- + Should the rule use the underlying standard pattern keyword configuration. If set to `true`, the rule must be tied + to a standard pattern. If set to `false`, the specified keywords and `character_count` are applied. + type: boolean + required: + - keywords + - character_count + type: object + SensitiveDataScannerMeta: + description: Meta response containing information about the API. + properties: + count_limit: + description: Maximum number of scanning rules allowed for the org. + format: int64 + type: integer + group_count_limit: + description: Maximum number of scanning groups allowed for the org. + format: int64 + type: integer + has_highlight_enabled: + default: true + deprecated: true + description: (Deprecated) Whether or not scanned events are highlighted in Logs or RUM for the org. + type: boolean + has_multi_pass_enabled: + deprecated: true + description: (Deprecated) Whether or not scanned events have multi-pass enabled. + type: boolean + is_pci_compliant: + description: Whether or not the org is compliant to the payment card industry standard. + type: boolean + version: + description: Version of the API. + example: 0 + format: int64 + minimum: 0 + type: integer + type: object + SensitiveDataScannerMetaVersionOnly: + description: Meta payload containing information about the API. + properties: + version: + description: Version of the API (optional). + example: 0 + format: int64 + minimum: 0 + type: integer + type: object + SensitiveDataScannerProduct: + default: logs + description: Datadog product onto which Sensitive Data Scanner can be activated. + enum: + - logs + - rum + - events + - apm + type: string + x-enum-varnames: + - LOGS + - RUM + - EVENTS + - APM + SensitiveDataScannerReorderConfig: + description: Data related to the reordering of scanning groups. + properties: + id: + description: ID of the configuration. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerConfigurationRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerConfigurationType" + type: object + SensitiveDataScannerReorderGroupsResponse: + description: Group reorder response. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMeta" + type: object + SensitiveDataScannerRule: + description: Rule item included in the group. + properties: + id: + description: ID of the rule. + type: string + type: + $ref: "#/components/schemas/SensitiveDataScannerRuleType" + type: object + SensitiveDataScannerRuleAttributes: + description: Attributes of the Sensitive Data Scanner rule. + properties: + description: + description: Description of the rule. + type: string + excluded_namespaces: + description: Attributes excluded from the scan. If namespaces is provided, it has to be a sub-path of the namespaces array. + example: ["admin.name"] + items: + description: An attribute path to exclude from the scan. + type: string + type: array + included_keyword_configuration: + $ref: "#/components/schemas/SensitiveDataScannerIncludedKeywordConfiguration" + is_enabled: + description: Whether or not the rule is enabled. + type: boolean + name: + description: Name of the rule. + type: string + namespaces: + description: |- + Attributes included in the scan. If namespaces is empty or missing, all attributes except excluded_namespaces are scanned. + If both are missing the whole event is scanned. + example: ["admin"] + items: + description: An attribute path to include in the scan. + type: string + type: array + pattern: + description: Not included if there is a relationship to a standard pattern. + type: string + priority: + description: Integer from 1 (high) to 5 (low) indicating rule issue severity. + format: int64 + maximum: 5 + minimum: 1 + type: integer + suppressions: + $ref: "#/components/schemas/SensitiveDataScannerSuppressions" + tags: + description: List of tags. + items: + description: A tag associated with the rule. + type: string + type: array + text_replacement: + $ref: "#/components/schemas/SensitiveDataScannerTextReplacement" + type: object + SensitiveDataScannerRuleCreate: + description: Data related to the creation of a rule. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerRuleAttributes" + relationships: + $ref: "#/components/schemas/SensitiveDataScannerRuleRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerRuleType" + required: + - type + - attributes + - relationships + type: object + SensitiveDataScannerRuleCreateRequest: + description: Create rule request. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerRuleCreate" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + required: + - data + - meta + type: object + SensitiveDataScannerRuleData: + description: Rules included in the group. + properties: + data: + description: Rules included in the group. The order is important. + items: + $ref: "#/components/schemas/SensitiveDataScannerRule" + type: array + type: object + SensitiveDataScannerRuleDeleteRequest: + description: Delete rule request. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + required: + - meta + type: object + SensitiveDataScannerRuleDeleteResponse: + description: Delete rule response. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerRuleIncludedItem: + description: A Scanning Rule included item. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerRuleAttributes" + id: + description: ID of the rule. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerRuleRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerRuleType" + type: object + SensitiveDataScannerRuleRelationships: + description: Relationships of a scanning rule. + properties: + group: + $ref: "#/components/schemas/SensitiveDataScannerGroupData" + standard_pattern: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternData" + type: object + SensitiveDataScannerRuleResponse: + description: Response data related to the creation of a rule. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerRuleAttributes" + id: + description: ID of the rule. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerRuleRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerRuleType" + type: object + SensitiveDataScannerRuleType: + default: sensitive_data_scanner_rule + description: Sensitive Data Scanner rule type. + enum: + - sensitive_data_scanner_rule + example: sensitive_data_scanner_rule + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_RULE + SensitiveDataScannerRuleUpdate: + description: Data related to the update of a rule. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerRuleAttributes" + id: + description: ID of the rule. + type: string + relationships: + $ref: "#/components/schemas/SensitiveDataScannerRuleRelationships" + type: + $ref: "#/components/schemas/SensitiveDataScannerRuleType" + type: object + SensitiveDataScannerRuleUpdateRequest: + description: Update rule request. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerRuleUpdate" + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + required: + - data + - meta + type: object + SensitiveDataScannerRuleUpdateResponse: + description: Update rule response. + properties: + meta: + $ref: "#/components/schemas/SensitiveDataScannerMetaVersionOnly" + type: object + SensitiveDataScannerSamplings: + description: Sampling configurations for the Scanning Group. + properties: + product: + $ref: "#/components/schemas/SensitiveDataScannerProduct" + rate: + description: Rate at which data in product type will be scanned, as a percentage. + example: 100.0 + format: double + maximum: 100.0 + minimum: 0.0 + type: number + type: object + SensitiveDataScannerStandardPattern: + description: Data containing the standard pattern id. + properties: + id: + description: ID of the standard pattern. + type: string + type: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternType" + type: object + SensitiveDataScannerStandardPatternAttributes: + description: Attributes of the Sensitive Data Scanner standard pattern. + properties: + description: + description: Description of the standard pattern. + type: string + included_keywords: + description: List of included keywords. + items: + description: A keyword used to increase match precision for the standard pattern. + type: string + type: array + name: + description: Name of the standard pattern. + type: string + pattern: + deprecated: true + description: (Deprecated) Regex to match, optionally documented for older standard rules. Refer to the `description` field to understand what the rule does. + type: string + priority: + description: Integer from 1 (high) to 5 (low) indicating standard pattern issue severity. + format: int64 + maximum: 5 + minimum: 1 + type: integer + tags: + description: List of tags. + items: + description: A tag associated with the standard pattern. + type: string + type: array + type: object + SensitiveDataScannerStandardPatternData: + description: A standard pattern. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerStandardPattern" + type: object + SensitiveDataScannerStandardPatternType: + default: sensitive_data_scanner_standard_pattern + description: Sensitive Data Scanner standard pattern type. + enum: + - sensitive_data_scanner_standard_pattern + example: sensitive_data_scanner_standard_pattern + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_STANDARD_PATTERN + SensitiveDataScannerStandardPatternsResponse: + description: List Standard patterns response. + items: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternsResponseItem" + type: array + SensitiveDataScannerStandardPatternsResponseData: + description: List Standard patterns response data. + properties: + data: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternsResponse" + type: object + SensitiveDataScannerStandardPatternsResponseItem: + description: Standard pattern item. + properties: + attributes: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternAttributes" + id: + description: ID of the standard pattern. + type: string + type: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternType" + type: object + SensitiveDataScannerSuppressions: + description: |- + Object describing the suppressions for a rule. There are three types of suppressions, `starts_with`, `ends_with`, and `exact_match`. + Suppressed matches are not obfuscated, counted in metrics, or displayed in the Findings page. + properties: + ends_with: + description: List of strings to use for suppression of matches ending with these strings. + example: ["@example.com", "another.example.com"] + items: + description: A string suffix; matches ending with this value are suppressed. + type: string + type: array + exact_match: + description: List of strings to use for suppression of matches exactly matching these strings. + example: ["admin@example.com", "user@example.com"] + items: + description: A string value; matches exactly equal to this value are suppressed. + type: string + type: array + starts_with: + description: List of strings to use for suppression of matches starting with these strings. + example: ["admin", "user"] + items: + description: A string prefix; matches starting with this value are suppressed. + type: string + type: array + type: object + SensitiveDataScannerTextReplacement: + description: Object describing how the scanned event will be replaced. + properties: + number_of_chars: + description: |- + Required if type == 'partial_replacement_from_beginning' + or 'partial_replacement_from_end'. It must be > 0. + format: int64 + minimum: 0 + type: integer + replacement_string: + description: Required if type == 'replacement_string'. + type: string + should_save_match: + description: Only valid when type == `replacement_string`. When enabled, matches can be unmasked in logs by users with ‘Data Scanner Unmask’ permission. As a security best practice, avoid masking for highly-sensitive, long-lived data. + type: boolean + type: + $ref: "#/components/schemas/SensitiveDataScannerTextReplacementType" + type: object + SensitiveDataScannerTextReplacementType: + default: none + description: |- + Type of the replacement text. None means no replacement. + hash means the data will be stubbed. replacement_string means that + one can chose a text to replace the data. partial_replacement_from_beginning + allows a user to partially replace the data from the beginning, and + partial_replacement_from_end on the other hand, allows to replace data from + the end. + enum: + - none + - hash + - replacement_string + - partial_replacement_from_beginning + - partial_replacement_from_end + type: string + x-enum-varnames: + - NONE + - HASH + - REPLACEMENT_STRING + - PARTIAL_REPLACEMENT_FROM_BEGINNING + - PARTIAL_REPLACEMENT_FROM_END + ServiceAccessToken: + description: Datadog access token. + properties: + attributes: + $ref: "#/components/schemas/ServiceAccessTokenAttributes" + id: + description: ID of the access token. + type: string + relationships: + $ref: "#/components/schemas/ServiceAccessTokenRelationships" + type: + $ref: "#/components/schemas/ServiceAccessTokensType" + type: object + ServiceAccessTokenAttributes: + description: Attributes of an access token. + properties: + created_at: + description: Creation date of the access token. + example: "2024-01-01T00:00:00+00:00" + format: date-time + readOnly: true + type: string + expires_at: + description: Expiration date of the access token. + example: "2025-12-31T23:59:59+00:00" + format: date-time + nullable: true + readOnly: true + type: string + last_used_at: + description: Date the access token was last used. + example: "2025-06-15T12:30:00+00:00" + format: date-time + nullable: true + readOnly: true + type: string + modified_at: + description: Date of last modification of the access token. + example: "2024-06-01T00:00:00+00:00" + format: date-time + nullable: true + readOnly: true + type: string + name: + description: Name of the access token. + example: "My Access Token" + type: string + public_portion: + description: The public portion of the access token. + example: "ddsat_abc123" + readOnly: true + type: string + scopes: + description: Array of scopes granted to the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + type: object + ServiceAccessTokenCreateResponse: + description: Response for creating an access token. Includes the token key. + properties: + data: + $ref: "#/components/schemas/FullServiceAccessToken" + type: object + ServiceAccessTokenRelationships: + description: Resources related to the access token. + properties: + owned_by: + $ref: "#/components/schemas/RelationshipToServiceAccount" + type: object + ServiceAccessTokenResponse: + description: Response for retrieving an access token. + properties: + data: + $ref: "#/components/schemas/ServiceAccessToken" + type: object + ServiceAccessTokenResponseMeta: + description: Additional information related to the access token response. + properties: + page: + $ref: "#/components/schemas/ServiceAccessTokenResponseMetaPage" + type: object + ServiceAccessTokenResponseMetaPage: + description: Pagination information. + properties: + total_filtered_count: + description: Total filtered access token count. + format: int64 + type: integer + type: object + ServiceAccessTokensType: + default: service_access_tokens + description: Service access tokens resource type. + enum: + - service_access_tokens + example: service_access_tokens + type: string + x-enum-varnames: + - SERVICE_ACCESS_TOKENS + ServiceAccountAccessTokenCreateAttributes: + description: Attributes used to create a service account access token. + properties: + expires_at: + description: Expiration date of the access token. Optional for service account tokens. + example: "2025-12-31T23:59:59+00:00" + format: date-time + type: string + name: + description: Name of the access token. + example: "Service Account Access Token" + type: string + scopes: + description: Array of scopes to grant the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + required: + - name + - scopes + type: object + ServiceAccountAccessTokenCreateData: + description: Object used to create a service account access token. + properties: + attributes: + $ref: "#/components/schemas/ServiceAccountAccessTokenCreateAttributes" + type: + $ref: "#/components/schemas/ServiceAccessTokensType" + required: + - attributes + - type + type: object + ServiceAccountAccessTokenCreateRequest: + description: Request used to create a service account access token. + properties: + data: + $ref: "#/components/schemas/ServiceAccountAccessTokenCreateData" + required: + - data + type: object + ServiceAccountAccessTokenUpdateAttributes: + description: Attributes used to update a service account access token. + properties: + name: + description: Name of the access token. + example: "Updated Service Access Token" + type: string + scopes: + description: Array of scopes to grant the access token. + example: + - "dashboards_read" + - "dashboards_write" + items: + description: Name of scope. + type: string + type: array + type: object + ServiceAccountAccessTokenUpdateData: + description: Object used to update a service account access token. + properties: + attributes: + $ref: "#/components/schemas/ServiceAccountAccessTokenUpdateAttributes" + id: + description: ID of the access token. + example: "00112233-4455-6677-8899-aabbccddeeff" + type: string + type: + $ref: "#/components/schemas/ServiceAccessTokensType" + required: + - attributes + - id + - type + type: object + ServiceAccountAccessTokenUpdateRequest: + description: Request used to update a service account access token. + properties: + data: + $ref: "#/components/schemas/ServiceAccountAccessTokenUpdateData" + required: + - data + type: object + ServiceAccountCreateAttributes: + description: Attributes of the created user. + properties: + email: + description: The email of the user. + example: "jane.doe@example.com" + type: string + name: + description: The name of the user. + type: string + service_account: + description: Whether the user is a service account. Must be true. + example: true + type: boolean + title: + description: The title of the user. + type: string + required: + - email + - service_account + type: object + ServiceAccountCreateData: + description: Object to create a service account User. + properties: + attributes: + $ref: "#/components/schemas/ServiceAccountCreateAttributes" + relationships: + $ref: "#/components/schemas/UserRelationships" + type: + $ref: "#/components/schemas/UsersType" + required: + - attributes + - type + type: object + ServiceAccountCreateRequest: + description: Create a service account. + properties: + data: + $ref: "#/components/schemas/ServiceAccountCreateData" + required: + - data + type: object + ServiceAccountType: + description: Service account resource type. + enum: + - service_account + example: service_account + type: string + x-enum-varnames: + - SERVICE_ACCOUNT + ServiceDefinitionCreateResponse: + description: Create service definitions response. + properties: + data: + description: Create service definitions response payload. + items: + $ref: "#/components/schemas/ServiceDefinitionData" + type: array + type: object + ServiceDefinitionData: + description: Service definition data. + properties: + attributes: + $ref: "#/components/schemas/ServiceDefinitionDataAttributes" + id: + description: Service definition id. + type: string + type: + description: Service definition type. + type: string + type: object + ServiceDefinitionDataAttributes: + description: Service definition attributes. + properties: + meta: + $ref: "#/components/schemas/ServiceDefinitionMeta" + schema: + $ref: "#/components/schemas/ServiceDefinitionSchema" + type: object + ServiceDefinitionGetResponse: + description: Get service definition response. + properties: + data: + $ref: "#/components/schemas/ServiceDefinitionData" + type: object + ServiceDefinitionMeta: + description: Metadata about a service definition. + properties: + github-html-url: + description: GitHub HTML URL. + type: string + ingested-schema-version: + description: Ingestion schema version. + type: string + ingestion-source: + description: Ingestion source of the service definition. + type: string + last-modified-time: + description: Last modified time of the service definition. + type: string + origin: + description: User defined origin of the service definition. + type: string + origin-detail: + description: User defined origin's detail of the service definition. + type: string + warnings: + description: A list of schema validation warnings. + items: + $ref: "#/components/schemas/ServiceDefinitionMetaWarnings" + type: array + type: object + ServiceDefinitionMetaWarnings: + description: Schema validation warnings. + properties: + instance-location: + description: The warning instance location. + type: string + keyword-location: + description: The warning keyword location. + type: string + message: + description: The warning message. + type: string + type: object + ServiceDefinitionRaw: + description: Service Definition in raw JSON/YAML representation. + example: |- + --- + schema-version: v2 + dd-service: my-service + type: string + ServiceDefinitionSchema: + description: Service definition schema. + oneOf: + - $ref: "#/components/schemas/ServiceDefinitionV1" + - $ref: "#/components/schemas/ServiceDefinitionV2" + - $ref: "#/components/schemas/ServiceDefinitionV2Dot1" + - $ref: "#/components/schemas/ServiceDefinitionV2Dot2" + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + ServiceDefinitionV1: + deprecated: true + description: Deprecated - Service definition V1 for providing additional service metadata and integrations. + properties: + contact: + $ref: "#/components/schemas/ServiceDefinitionV1Contact" + extensions: + additionalProperties: {} + description: Extensions to V1 schema. + example: {"myorg/extension": "extensionValue"} + type: object + external-resources: + description: A list of external links related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV1Resource" + type: array + info: + $ref: "#/components/schemas/ServiceDefinitionV1Info" + integrations: + $ref: "#/components/schemas/ServiceDefinitionV1Integrations" + org: + $ref: "#/components/schemas/ServiceDefinitionV1Org" + schema-version: + $ref: "#/components/schemas/ServiceDefinitionV1Version" + tags: + description: A set of custom tags. + example: ["my:tag", "service:tag"] + items: + description: A custom tag string in `key:value` format. + type: string + type: array + required: + - schema-version + - info + type: object + ServiceDefinitionV1Contact: + description: Contact information about the service. + properties: + email: + description: Service owner’s email. + example: contact@datadoghq.com + type: string + slack: + description: Service owner’s Slack channel. + example: https://yourcompany.slack.com/archives/channel123 + type: string + type: object + ServiceDefinitionV1Info: + description: Basic information about a service. + properties: + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: myservice + type: string + description: + description: A short description of the service. + example: A shopping cart service + type: string + display-name: + description: A friendly name of the service. + example: My Service + type: string + service-tier: + description: Service tier. + example: Tier 1 + type: string + required: [dd-service] + type: object + ServiceDefinitionV1Integrations: + description: Third party integrations that Datadog supports. + properties: + pagerduty: + $ref: "#/components/schemas/ServiceDefinitionV1Pagerduty" + type: object + ServiceDefinitionV1Org: + description: Org related information about the service. + properties: + application: + description: App feature this service supports. + example: E-Commerce + type: string + team: + description: Team that owns the service. + example: my-team + type: string + type: object + ServiceDefinitionV1Pagerduty: + description: PagerDuty service URL for the service. + example: https://my-org.pagerduty.com/service-directory/PMyService + type: string + ServiceDefinitionV1Resource: + description: Service's external links. + properties: + name: + description: Link name. + example: Runbook + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV1ResourceType" + url: + description: Link URL. + example: https://my-runbook + type: string + required: + - name + - type + - url + type: object + ServiceDefinitionV1ResourceType: + description: Link type. + enum: + - doc + - wiki + - runbook + - url + - repo + - dashboard + - oncall + - code + - link + example: runbook + type: string + x-enum-varnames: + - DOC + - WIKI + - RUNBOOK + - URL + - REPO + - DASHBOARD + - ONCALL + - CODE + - LINK + ServiceDefinitionV1Version: + default: v1 + description: Schema version being used. + enum: + - v1 + example: v1 + type: string + x-enum-varnames: + - V1 + ServiceDefinitionV2: + description: Service definition V2 for providing service metadata and integrations. + properties: + contacts: + description: A list of contacts related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Contact" + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + dd-team: + description: Experimental feature. A Team handle that matches a Team in the Datadog Teams product. + example: my-team + type: string + docs: + description: A list of documentation related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Doc" + type: array + extensions: + additionalProperties: {} + description: Extensions to V2 schema. + example: {"myorg/extension": "extensionValue"} + type: object + integrations: + $ref: "#/components/schemas/ServiceDefinitionV2Integrations" + links: + description: A list of links related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Link" + type: array + repos: + description: A list of code repositories related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Repo" + type: array + schema-version: + $ref: "#/components/schemas/ServiceDefinitionV2Version" + tags: + description: A set of custom tags. + example: ["my:tag", "service:tag"] + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. + example: my-team + type: string + required: + - schema-version + - dd-service + type: object + ServiceDefinitionV2Contact: + description: Service owner's contacts information. + oneOf: + - $ref: "#/components/schemas/ServiceDefinitionV2Email" + - $ref: "#/components/schemas/ServiceDefinitionV2Slack" + - $ref: "#/components/schemas/ServiceDefinitionV2MSTeams" + ServiceDefinitionV2Doc: + description: Service documents. + properties: + name: + description: Document name. + example: Architecture + type: string + provider: + description: Document provider. + example: google drive + type: string + url: + description: Document URL. + example: "https://gdrive/mydoc" + type: string + required: + - name + - url + type: object + ServiceDefinitionV2Dot1: + description: Service definition v2.1 for providing service metadata and integrations. + properties: + application: + description: Identifier for a group of related services serving a product feature, which the service is a part of. + example: my-app + type: string + contacts: + description: A list of contacts related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1Contact" + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + description: + description: A short description of the service. + example: My service description + type: string + extensions: + additionalProperties: {} + description: Extensions to v2.1 schema. + example: {"myorg/extension": "extensionValue"} + type: object + integrations: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1Integrations" + lifecycle: + description: The current life cycle phase of the service. + example: sandbox + type: string + links: + description: A list of links related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1Link" + type: array + schema-version: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1Version" + tags: + description: A set of custom tags. + example: ["my:tag", "service:tag"] + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. + example: my-team + type: string + tier: + description: Importance of the service. + example: High + type: string + required: + - schema-version + - dd-service + type: object + ServiceDefinitionV2Dot1Contact: + description: Service owner's contacts information. + oneOf: + - $ref: "#/components/schemas/ServiceDefinitionV2Dot1Email" + - $ref: "#/components/schemas/ServiceDefinitionV2Dot1Slack" + - $ref: "#/components/schemas/ServiceDefinitionV2Dot1MSTeams" + ServiceDefinitionV2Dot1Email: + description: Service owner's email. + properties: + contact: + description: Contact value. + example: contact@datadoghq.com + type: string + name: + description: Contact email. + example: Team Email + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1EmailType" + required: + - type + - contact + type: object + ServiceDefinitionV2Dot1EmailType: + description: Contact type. + enum: + - email + example: email + type: string + x-enum-varnames: + - EMAIL + ServiceDefinitionV2Dot1Integrations: + description: Third party integrations that Datadog supports. + properties: + opsgenie: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1Opsgenie" + pagerduty: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1Pagerduty" + type: object + ServiceDefinitionV2Dot1Link: + description: Service's external links. + properties: + name: + description: Link name. + example: Runbook + type: string + provider: + description: Link provider. + example: Github + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1LinkType" + url: + description: Link URL. + example: https://my-runbook + type: string + required: + - name + - type + - url + type: object + ServiceDefinitionV2Dot1LinkType: + description: Link type. + enum: + - doc + - repo + - runbook + - dashboard + - other + example: runbook + type: string + x-enum-varnames: + - DOC + - REPO + - RUNBOOK + - DASHBOARD + - OTHER + ServiceDefinitionV2Dot1MSTeams: + description: Service owner's Microsoft Teams. + properties: + contact: + description: Contact value. + example: https://teams.microsoft.com/myteam + type: string + name: + description: Contact Microsoft Teams. + example: My team channel + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1MSTeamsType" + required: + - type + - contact + type: object + ServiceDefinitionV2Dot1MSTeamsType: + description: Contact type. + enum: + - microsoft-teams + example: microsoft-teams + type: string + x-enum-varnames: + - MICROSOFT_TEAMS + ServiceDefinitionV2Dot1Opsgenie: + description: Opsgenie integration for the service. + properties: + region: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1OpsgenieRegion" + service-url: + description: Opsgenie service url. + example: "https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000" + type: string + required: [service-url] + type: object + ServiceDefinitionV2Dot1OpsgenieRegion: + description: Opsgenie instance region. + enum: [US, EU] + example: US + type: string + x-enum-varnames: [US, EU] + ServiceDefinitionV2Dot1Pagerduty: + description: PagerDuty integration for the service. + properties: + service-url: + description: PagerDuty service url. + example: "https://my-org.pagerduty.com/service-directory/PMyService" + type: string + type: object + ServiceDefinitionV2Dot1Slack: + description: Service owner's Slack channel. + properties: + contact: + description: Slack Channel. + example: https://yourcompany.slack.com/archives/channel123 + type: string + name: + description: Contact Slack. + example: Team Slack + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2Dot1SlackType" + required: + - type + - contact + type: object + ServiceDefinitionV2Dot1SlackType: + description: Contact type. + enum: + - slack + example: slack + type: string + x-enum-varnames: + - SLACK + ServiceDefinitionV2Dot1Version: + default: v2.1 + description: Schema version being used. + enum: + - v2.1 + example: v2.1 + type: string + x-enum-varnames: + - V2_1 + ServiceDefinitionV2Dot2: + description: Service definition v2.2 for providing service metadata and integrations. + properties: + application: + description: Identifier for a group of related services serving a product feature, which the service is a part of. + example: my-app + type: string + ci-pipeline-fingerprints: + description: A set of CI fingerprints. + example: ["j88xdEy0J5lc", "eZ7LMljCk8vo"] + items: + description: A CI pipeline fingerprint string. + type: string + type: array + contacts: + description: A list of contacts related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Contact" + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + description: + description: A short description of the service. + example: My service description + type: string + extensions: + additionalProperties: {} + description: Extensions to v2.2 schema. + example: {"myorg/extension": "extensionValue"} + type: object + integrations: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Integrations" + languages: + description: "The service's programming language. Datadog recognizes the following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, and `c++`." + example: ["dotnet", "go", "java", "js", "php", "python", "ruby", "c++"] + items: + description: A programming language identifier. + type: string + type: array + lifecycle: + description: The current life cycle phase of the service. + example: sandbox + type: string + links: + description: A list of links related to the services. + items: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Link" + type: array + schema-version: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Version" + tags: + description: A set of custom tags. + example: ["my:tag", "service:tag"] + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. + example: my-team + type: string + tier: + description: Importance of the service. + example: High + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Type" + required: + - schema-version + - dd-service + type: object + ServiceDefinitionV2Dot2Contact: + description: Service owner's contacts information. + properties: + contact: + description: Contact value. + example: https://teams.microsoft.com/myteam + type: string + name: + description: Contact Name. + example: My team channel + type: string + type: + description: "Contact type. Datadog recognizes the following types: `email`, `slack`, and `microsoft-teams`." + example: slack + type: string + required: + - type + - contact + type: object + ServiceDefinitionV2Dot2Integrations: + description: Third party integrations that Datadog supports. + properties: + opsgenie: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Opsgenie" + pagerduty: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2Pagerduty" + type: object + ServiceDefinitionV2Dot2Link: + description: Service's external links. + properties: + name: + description: Link name. + example: Runbook + type: string + provider: + description: Link provider. + example: Github + type: string + type: + description: "Link type. Datadog recognizes the following types: `runbook`, `doc`, `repo`, `dashboard`, and `other`." + example: runbook + type: string + url: + description: Link URL. + example: https://my-runbook + type: string + required: + - name + - type + - url + type: object + ServiceDefinitionV2Dot2Opsgenie: + description: Opsgenie integration for the service. + properties: + region: + $ref: "#/components/schemas/ServiceDefinitionV2Dot2OpsgenieRegion" + service-url: + description: Opsgenie service url. + example: "https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000" + type: string + required: [service-url] + type: object + ServiceDefinitionV2Dot2OpsgenieRegion: + description: Opsgenie instance region. + enum: [US, EU] + example: US + type: string + x-enum-varnames: [US, EU] + ServiceDefinitionV2Dot2Pagerduty: + description: PagerDuty integration for the service. + properties: + service-url: + description: PagerDuty service url. + example: "https://my-org.pagerduty.com/service-directory/PMyService" + type: string + type: object + ServiceDefinitionV2Dot2Type: + description: "The type of service." + example: web + type: string + ServiceDefinitionV2Dot2Version: + default: v2.2 + description: Schema version being used. + enum: + - v2.2 + example: v2.2 + type: string + x-enum-varnames: + - V2_2 + ServiceDefinitionV2Email: + description: Service owner's email. + properties: + contact: + description: Contact value. + example: contact@datadoghq.com + type: string + name: + description: Contact email. + example: Team Email + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2EmailType" + required: + - type + - contact + type: object + ServiceDefinitionV2EmailType: + description: Contact type. + enum: + - email + example: email + type: string + x-enum-varnames: + - EMAIL + ServiceDefinitionV2Integrations: + description: Third party integrations that Datadog supports. + properties: + opsgenie: + $ref: "#/components/schemas/ServiceDefinitionV2Opsgenie" + pagerduty: + $ref: "#/components/schemas/ServiceDefinitionV2Pagerduty" + type: object + ServiceDefinitionV2Link: + description: Service's external links. + properties: + name: + description: Link name. + example: Runbook + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2LinkType" + url: + description: Link URL. + example: https://my-runbook + type: string + required: + - name + - type + - url + type: object + ServiceDefinitionV2LinkType: + description: Link type. + enum: + - doc + - wiki + - runbook + - url + - repo + - dashboard + - oncall + - code + - link + example: runbook + type: string + x-enum-varnames: + - DOC + - WIKI + - RUNBOOK + - URL + - REPO + - DASHBOARD + - ONCALL + - CODE + - LINK + ServiceDefinitionV2MSTeams: + description: Service owner's Microsoft Teams. + properties: + contact: + description: Contact value. + example: https://teams.microsoft.com/myteam + type: string + name: + description: Contact Microsoft Teams. + example: My team channel + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2MSTeamsType" + required: + - type + - contact + type: object + ServiceDefinitionV2MSTeamsType: + description: Contact type. + enum: + - microsoft-teams + example: microsoft-teams + type: string + x-enum-varnames: + - MICROSOFT_TEAMS + ServiceDefinitionV2Opsgenie: + description: Opsgenie integration for the service. + properties: + region: + $ref: "#/components/schemas/ServiceDefinitionV2OpsgenieRegion" + service-url: + description: Opsgenie service url. + example: "https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000" + type: string + required: [service-url] + type: object + ServiceDefinitionV2OpsgenieRegion: + description: Opsgenie instance region. + enum: [US, EU] + example: US + type: string + x-enum-varnames: [US, EU] + ServiceDefinitionV2Pagerduty: + description: PagerDuty service URL for the service. + example: https://my-org.pagerduty.com/service-directory/PMyService + type: string + ServiceDefinitionV2Repo: + description: Service code repositories. + properties: + name: + description: Repository name. + example: Source Code + type: string + provider: + description: Repository provider. + example: GitHub + type: string + url: + description: Repository URL. + example: "https://github.com/DataDog/schema" + type: string + required: + - name + - url + type: object + ServiceDefinitionV2Slack: + description: Service owner's Slack channel. + properties: + contact: + description: Slack Channel. + example: https://yourcompany.slack.com/archives/channel123 + type: string + name: + description: Contact Slack. + example: Team Slack + type: string + type: + $ref: "#/components/schemas/ServiceDefinitionV2SlackType" + required: + - type + - contact + type: object + ServiceDefinitionV2SlackType: + description: Contact type. + enum: + - slack + example: slack + type: string + x-enum-varnames: + - SLACK + ServiceDefinitionV2Version: + default: v2 + description: Schema version being used. + enum: + - v2 + example: v2 + type: string + x-enum-varnames: + - V2 + ServiceDefinitionsCreateRequest: + description: Create service definitions request. + oneOf: + - $ref: "#/components/schemas/ServiceDefinitionV2Dot2" + - $ref: "#/components/schemas/ServiceDefinitionV2Dot1" + - $ref: "#/components/schemas/ServiceDefinitionV2" + - $ref: "#/components/schemas/ServiceDefinitionRaw" + ServiceDefinitionsListResponse: + description: Create service definitions response. + properties: + data: + description: Data representing service definitions. + items: + $ref: "#/components/schemas/ServiceDefinitionData" + type: array + type: object + ServiceList: + description: The response body for the service list endpoint. + properties: + data: + $ref: "#/components/schemas/ServiceListData" + type: object + ServiceListData: + description: A single data item in the service list response. + properties: + attributes: + $ref: "#/components/schemas/ServiceListDataAttributes" + id: + description: The unique identifier of the service. + type: string + type: + $ref: "#/components/schemas/ServiceListDataType" + required: + - type + type: object + ServiceListDataAttributes: + description: Attributes of a service list entry, containing metadata and a list of service names. + properties: + metadata: + description: A list of metadata items associated with the service. + items: + $ref: "#/components/schemas/ServiceListDataAttributesMetadataItems" + type: array + services: + description: A list of service names. + items: + description: A single service name. + type: string + type: array + type: object + ServiceListDataAttributesMetadataItems: + description: An object containing metadata flags for a service, indicating whether it is traced by APM or monitored through Universal Service Monitoring. + properties: + isTraced: + description: Indicates whether the service is traced by APM. + type: boolean + isUsm: + description: Indicates whether the service uses Universal Service Monitoring. + type: boolean + type: object + ServiceListDataType: + default: services_list + description: Services list resource type. + enum: + - services_list + example: services_list + type: string + x-enum-varnames: + - SERVICES_LIST + ServiceNowAssignmentGroupAttributes: + description: Attributes of a ServiceNow assignment group + properties: + assignment_group_name: + description: The name of the assignment group + example: "Network Team" + type: string + assignment_group_sys_id: + description: The system ID of the assignment group in ServiceNow + example: "abc123def456" + type: string + instance_id: + description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + required: + - instance_id + - assignment_group_name + - assignment_group_sys_id + type: object + ServiceNowAssignmentGroupData: + description: Data object for a ServiceNow assignment group + properties: + attributes: + $ref: "#/components/schemas/ServiceNowAssignmentGroupAttributes" + id: + description: Unique identifier for the ServiceNow assignment group + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + type: + $ref: "#/components/schemas/ServiceNowAssignmentGroupType" + required: + - id + - type + - attributes + type: object + ServiceNowAssignmentGroupType: + description: Type identifier for ServiceNow assignment group resources + enum: + - assignment_groups + example: assignment_groups + type: string + x-enum-varnames: + - ASSIGNMENT_GROUPS + ServiceNowAssignmentGroupsData: + description: Array of ServiceNow assignment group data objects + items: + $ref: "#/components/schemas/ServiceNowAssignmentGroupData" + type: array + ServiceNowAssignmentGroupsResponse: + description: Response containing ServiceNow assignment groups + properties: + data: + $ref: "#/components/schemas/ServiceNowAssignmentGroupsData" + example: + - attributes: + group_name: "IT Operations" + group_sys_id: "abc123def456" + instance_id: "65b3341b-0680-47f9-a6d4-134db45c603e" + id: "65b3341b-0680-47f9-a6d4-134db45c603e" + type: assignment_groups + required: + - data + type: object + ServiceNowBasicAuth: + description: The definition of the `ServiceNowBasicAuth` object. + properties: + instance: + description: The `ServiceNowBasicAuth` `instance`. + example: "" + type: string + password: + description: The `ServiceNowBasicAuth` `password`. + example: "" + type: string + type: + $ref: "#/components/schemas/ServiceNowBasicAuthType" + username: + description: The `ServiceNowBasicAuth` `username`. + example: "" + type: string + required: + - type + - instance + - username + - password + type: object + ServiceNowBasicAuthType: + description: The definition of the `ServiceNowBasicAuth` object. + enum: + - ServiceNowBasicAuth + example: ServiceNowBasicAuth + type: string + x-enum-varnames: + - SERVICENOWBASICAUTH + ServiceNowBasicAuthUpdate: + description: The definition of the `ServiceNowBasicAuth` object. + properties: + instance: + description: The `ServiceNowBasicAuthUpdate` `instance`. + type: string + password: + description: The `ServiceNowBasicAuthUpdate` `password`. + type: string + type: + $ref: "#/components/schemas/ServiceNowBasicAuthType" + username: + description: The `ServiceNowBasicAuthUpdate` `username`. + type: string + required: + - type + type: object + ServiceNowBusinessServiceAttributes: + description: Attributes of a ServiceNow business service + properties: + instance_id: + description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + service_name: + description: The name of the business service + example: "IT Support" + type: string + service_sys_id: + description: The system ID of the business service in ServiceNow + example: "abc123def456" + type: string + required: + - instance_id + - service_name + - service_sys_id + type: object + ServiceNowBusinessServiceData: + description: Data object for a ServiceNow business service + properties: + attributes: + $ref: "#/components/schemas/ServiceNowBusinessServiceAttributes" + id: + description: Unique identifier for the ServiceNow business service + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + type: + $ref: "#/components/schemas/ServiceNowBusinessServiceType" + required: + - id + - type + - attributes + type: object + ServiceNowBusinessServiceType: + description: Type identifier for ServiceNow business service resources + enum: + - business_services + example: business_services + type: string + x-enum-varnames: + - BUSINESS_SERVICES + ServiceNowBusinessServicesData: + description: Array of ServiceNow business service data objects + items: + $ref: "#/components/schemas/ServiceNowBusinessServiceData" + type: array + ServiceNowBusinessServicesResponse: + description: Response containing ServiceNow business services + properties: + data: + $ref: "#/components/schemas/ServiceNowBusinessServicesData" + example: + - attributes: + instance_id: "65b3341b-0680-47f9-a6d4-134db45c603e" + service_name: "IT Support" + service_sys_id: "abc123def456" + id: "65b3341b-0680-47f9-a6d4-134db45c603e" + type: business_services + required: + - data + type: object + ServiceNowCredentials: + description: The definition of the `ServiceNowCredentials` object. + oneOf: + - $ref: "#/components/schemas/ServiceNowBasicAuth" + ServiceNowCredentialsUpdate: + description: The definition of the `ServiceNowCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/ServiceNowBasicAuthUpdate" + ServiceNowInstanceAttributes: + description: Attributes of a ServiceNow instance + properties: + instance_name: + description: The name of the ServiceNow instance + example: "my-servicenow-instance" + type: string + required: + - instance_name + type: object + ServiceNowInstanceData: + description: Data object for a ServiceNow instance + properties: + attributes: + $ref: "#/components/schemas/ServiceNowInstanceAttributes" + id: + description: Unique identifier for the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + type: + $ref: "#/components/schemas/ServiceNowInstanceType" + required: + - id + - type + - attributes + type: object + ServiceNowInstanceType: + description: Type identifier for ServiceNow instance resources + enum: + - instance + example: instance + type: string + x-enum-varnames: + - INSTANCE + ServiceNowInstancesData: + description: Array of ServiceNow instance data objects + items: + $ref: "#/components/schemas/ServiceNowInstanceData" + type: array + ServiceNowInstancesResponse: + description: Response containing ServiceNow instances + properties: + data: + $ref: "#/components/schemas/ServiceNowInstancesData" + example: + - attributes: + instance_name: "my-servicenow-instance" + id: "65b3341b-0680-47f9-a6d4-134db45c603e" + type: instance + required: + - data + type: object + ServiceNowIntegration: + description: The definition of the `ServiceNowIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/ServiceNowCredentials" + type: + $ref: "#/components/schemas/ServiceNowIntegrationType" + required: + - type + - credentials + type: object + ServiceNowIntegrationType: + description: The definition of the `ServiceNowIntegrationType` object. + enum: + - ServiceNow + example: ServiceNow + type: string + x-enum-varnames: + - SERVICENOW + ServiceNowIntegrationUpdate: + description: The definition of the `ServiceNowIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/ServiceNowCredentialsUpdate" + type: + $ref: "#/components/schemas/ServiceNowIntegrationType" + required: + - type + type: object + ServiceNowTemplateAttributes: + description: Attributes of a ServiceNow template + properties: + assignment_group_id: + description: The ID of the assignment group + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + business_service_id: + description: The ID of the business service + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + fields_mapping: + additionalProperties: + type: string + description: Custom field mappings for the template + example: + category: "software" + priority: "1" + type: object + handle_name: + description: The handle name of the template + example: "incident-template" + type: string + instance_id: + description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + servicenow_tablename: + description: The name of the destination ServiceNow table + example: "incident" + type: string + user_id: + description: The ID of the user + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + required: + - instance_id + - handle_name + - servicenow_tablename + type: object + ServiceNowTemplateCreateRequest: + description: Request to create a ServiceNow template + properties: + data: + $ref: "#/components/schemas/ServiceNowTemplateCreateRequestData" + required: + - data + type: object + ServiceNowTemplateCreateRequestAttributes: + description: Attributes for creating a ServiceNow template + properties: + assignment_group_id: + description: The ID of the assignment group + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + business_service_id: + description: The ID of the business service + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + fields_mapping: + additionalProperties: + type: string + description: Custom field mappings for the template + example: + category: "software" + priority: "1" + type: object + handle_name: + description: The handle name of the template + example: "incident-template" + type: string + instance_id: + description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + servicenow_tablename: + description: The name of the destination ServiceNow table + example: "incident" + type: string + user_id: + description: The ID of the user + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + required: + - instance_id + - handle_name + - servicenow_tablename + type: object + ServiceNowTemplateCreateRequestData: + description: Data object for creating a ServiceNow template + properties: + attributes: + $ref: "#/components/schemas/ServiceNowTemplateCreateRequestAttributes" + type: + $ref: "#/components/schemas/ServiceNowTemplateType" + required: + - type + - attributes + type: object + ServiceNowTemplateData: + description: Data object for a ServiceNow template + properties: + attributes: + $ref: "#/components/schemas/ServiceNowTemplateAttributes" + id: + description: Unique identifier for the ServiceNow template + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + type: + $ref: "#/components/schemas/ServiceNowTemplateType" + required: + - id + - type + - attributes + type: object + ServiceNowTemplateResponse: + description: Response containing a single ServiceNow template + properties: + data: + $ref: "#/components/schemas/ServiceNowTemplateData" + required: + - data + type: object + ServiceNowTemplateType: + description: Type identifier for ServiceNow template resources + enum: + - servicenow_templates + example: servicenow_templates + type: string + x-enum-varnames: + - SERVICENOW_TEMPLATES + ServiceNowTemplateUpdateRequest: + description: Request to update a ServiceNow template + properties: + data: + $ref: "#/components/schemas/ServiceNowTemplateUpdateRequestData" + required: + - data + type: object + ServiceNowTemplateUpdateRequestAttributes: + description: Attributes for updating a ServiceNow template + properties: + assignment_group_id: + description: The ID of the assignment group + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + business_service_id: + description: The ID of the business service + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + fields_mapping: + additionalProperties: + type: string + description: Custom field mappings for the template + example: + category: "hardware" + priority: "2" + type: object + handle_name: + description: The handle name of the template + example: "incident-template-updated" + type: string + instance_id: + description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + servicenow_tablename: + description: The name of the destination ServiceNow table + example: "incident" + type: string + user_id: + description: The ID of the user + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + required: + - instance_id + - handle_name + - servicenow_tablename + type: object + ServiceNowTemplateUpdateRequestData: + description: Data object for updating a ServiceNow template + properties: + attributes: + $ref: "#/components/schemas/ServiceNowTemplateUpdateRequestAttributes" + type: + $ref: "#/components/schemas/ServiceNowTemplateType" + required: + - type + - attributes + type: object + ServiceNowTemplatesData: + description: Array of ServiceNow template data objects + items: + $ref: "#/components/schemas/ServiceNowTemplateData" + type: array + ServiceNowTemplatesResponse: + description: Response containing ServiceNow templates + properties: + data: + $ref: "#/components/schemas/ServiceNowTemplatesData" + example: + - attributes: + handle_name: "incident-template" + instance_id: "65b3341b-0680-47f9-a6d4-134db45c603e" + servicenow_tablename: "incident" + id: "65b3341b-0680-47f9-a6d4-134db45c603e" + type: servicenow_templates + required: + - data + type: object + ServiceNowTicket: + description: ServiceNow ticket attached to case + nullable: true + properties: + result: + $ref: "#/components/schemas/ServiceNowTicketResult" + status: + $ref: "#/components/schemas/Case3rdPartyTicketStatus" + readOnly: true + type: object + ServiceNowTicketCreateAttributes: + description: ServiceNow ticket creation attributes + properties: + assignment_group: + description: ServiceNow assignment group + example: "IT Support" + type: string + instance_name: + description: ServiceNow instance name + example: "my-instance" + type: string + required: + - instance_name + type: object + ServiceNowTicketCreateData: + description: ServiceNow ticket creation data + properties: + attributes: + $ref: "#/components/schemas/ServiceNowTicketCreateAttributes" + type: + $ref: "#/components/schemas/ServiceNowTicketResourceType" + required: + - type + - attributes + type: object + ServiceNowTicketCreateRequest: + description: ServiceNow ticket creation request + properties: + data: + $ref: "#/components/schemas/ServiceNowTicketCreateData" + required: + - data + type: object + ServiceNowTicketResourceType: + description: ServiceNow ticket resource type + enum: + - tickets + example: tickets + type: string + x-enum-varnames: + - TICKETS + ServiceNowTicketResult: + description: ServiceNow ticket information + properties: + sys_target_link: + description: Link to the Incident created on ServiceNow + type: string + type: object + ServiceNowTicketsDataType: + default: servicenow_tickets + description: ServiceNow tickets resource type. + enum: + - servicenow_tickets + example: servicenow_tickets + type: string + x-enum-varnames: + - SERVICENOW_TICKETS + ServiceNowUserAttributes: + description: Attributes of a ServiceNow user + properties: + email: + description: The email address of the user + example: "john.doe@example.com" + type: string + full_name: + description: The full name of the user + example: "John Doe" + type: string + instance_id: + description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + user_name: + description: The username of the ServiceNow user + example: "john.doe" + type: string + user_sys_id: + description: The system ID of the user in ServiceNow + example: "abc123def456" + type: string + required: + - instance_id + - user_name + - user_sys_id + - email + type: object + ServiceNowUserData: + description: Data object for a ServiceNow user + properties: + attributes: + $ref: "#/components/schemas/ServiceNowUserAttributes" + id: + description: Unique identifier for the ServiceNow user + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + format: uuid + type: string + type: + $ref: "#/components/schemas/ServiceNowUserType" + required: + - id + - type + - attributes + type: object + ServiceNowUserType: + description: Type identifier for ServiceNow user resources + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ServiceNowUsersData: + description: Array of ServiceNow user data objects + items: + $ref: "#/components/schemas/ServiceNowUserData" + type: array + ServiceNowUsersResponse: + description: Response containing ServiceNow users + properties: + data: + $ref: "#/components/schemas/ServiceNowUsersData" + example: + - attributes: + email: "john.doe@example.com" + instance_id: "65b3341b-0680-47f9-a6d4-134db45c603e" + user_name: "john.doe" + user_sys_id: "abc123def456" + id: "65b3341b-0680-47f9-a6d4-134db45c603e" + type: users + required: + - data + type: object + ServiceRepositoryInfoDataType: + description: The resource type for service repository info objects. + enum: + - service_repository_info + example: service_repository_info + type: string + x-enum-varnames: + - SERVICE_REPOSITORY_INFO + ServiceRepositoryInfoRequest: + description: Request body for retrieving service repository information. + properties: + data: + $ref: "#/components/schemas/ServiceRepositoryInfoRequestData" + required: + - data + type: object + ServiceRepositoryInfoRequestAttributes: + description: Attributes for the service repository info request. + properties: + service: + description: The name of the service. + example: my-web-service + type: string + version: + description: The version of the service. + example: 1.0.0 + type: string + required: + - service + - version + type: object + ServiceRepositoryInfoRequestData: + description: Data object for the service repository info request. + properties: + attributes: + $ref: "#/components/schemas/ServiceRepositoryInfoRequestAttributes" + type: + $ref: "#/components/schemas/ServiceRepositoryInfoDataType" + required: + - type + - attributes + type: object + ServiceRepositoryInfoResponse: + description: Response containing service repository information. + properties: + data: + $ref: "#/components/schemas/ServiceRepositoryInfoResponseData" + required: + - data + type: object + ServiceRepositoryInfoResponseAttributes: + description: Attributes of the service repository information. + properties: + commit_sha: + description: The SHA of the commit associated with the service version. + example: abc123def456789 + type: string + repository_url: + description: The URL of the source code repository. + example: https://github.com/my-org/my-repo + type: string + status: + $ref: "#/components/schemas/ServiceRepositoryInfoStatus" + required: + - status + type: object + ServiceRepositoryInfoResponseData: + description: Data object for the service repository info response. + properties: + attributes: + $ref: "#/components/schemas/ServiceRepositoryInfoResponseAttributes" + id: + description: The identifier composed of the service name and version. + example: my-web-service:1.0.0 + type: string + type: + $ref: "#/components/schemas/ServiceRepositoryInfoDataType" + required: + - id + - type + - attributes + type: object + ServiceRepositoryInfoStatus: + description: The status of the service repository info lookup. + enum: + - success + - not_found + - no_repository + - internal_error + - unknown + example: success + type: string + x-enum-varnames: + - SUCCESS + - NOT_FOUND + - NO_REPOSITORY + - INTERNAL_ERROR + - UNKNOWN + SessionIdArray: + description: A collection of session identifiers used for bulk add or remove operations on a playlist. + properties: + data: + description: Array of session identifier data objects. + items: + $ref: "#/components/schemas/SessionIdData" + type: array + required: + - data + type: object + SessionIdData: + description: A session identifier data object used for bulk playlist operations. + properties: + id: + description: Unique identifier of the RUM replay session. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: "#/components/schemas/ViewershipHistorySessionDataType" + required: + - type + type: object + SeverityModifierRuleAction: + description: |- + The action to take when a severity modifier rule matches a finding. This is a discriminated union on `type`: `set` assigns a fixed severity, while `shift` moves the severity up or down by one rank. + + A severity modifier rule's `rule.query` must not filter on `@severity` or on the `@severity_details.user_adjusted.*` namespace. + + Use `@severity_details.adjusted.value` instead, which reflects the severity before user-defined adjustments. + oneOf: + - $ref: "#/components/schemas/SeverityModifierRuleSetAction" + - $ref: "#/components/schemas/SeverityModifierRuleShiftAction" + SeverityModifierRuleAttributesCreate: + description: Attributes for creating or updating a severity modifier rule. + properties: + action: + $ref: "#/components/schemas/SeverityModifierRuleAction" + enabled: + description: Whether the severity modifier rule is enabled. + example: true + type: boolean + name: + description: The name of the severity modifier rule. + example: "Downgrade misconfigurations in dev" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - rule + - action + type: object + SeverityModifierRuleAttributesResponse: + description: Attributes of a severity modifier rule as returned by the API. + properties: + action: + $ref: "#/components/schemas/SeverityModifierRuleAction" + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: "#/components/schemas/AutomationRuleCreatedBy" + enabled: + description: Whether the severity modifier rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: "#/components/schemas/AutomationRuleModifiedBy" + name: + description: The name of the severity modifier rule. + example: "Downgrade misconfigurations in dev" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by + type: object + SeverityModifierRuleCreateRequest: + description: The body of a severity modifier rule create request. + properties: + data: + $ref: "#/components/schemas/SeverityModifierRuleDataCreate" + required: + - data + type: object + SeverityModifierRuleDataCreate: + description: The data object for a severity modifier rule create or update request. + properties: + attributes: + $ref: "#/components/schemas/SeverityModifierRuleAttributesCreate" + type: + $ref: "#/components/schemas/SeverityModifierRuleType" + required: + - type + - attributes + type: object + SeverityModifierRuleDataResponse: + description: The data object for a severity modifier rule as returned by the API. + properties: + attributes: + $ref: "#/components/schemas/SeverityModifierRuleAttributesResponse" + id: + description: The ID of the severity modifier rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/SeverityModifierRuleType" + required: + - id + - type + - attributes + type: object + SeverityModifierRuleReorderData: + description: The ordered list of severity modifier rules; every rule must be included. + items: + $ref: "#/components/schemas/SeverityModifierRuleReorderItem" + type: array + SeverityModifierRuleReorderItem: + description: A reference to a severity modifier rule used for reordering. + properties: + id: + description: The ID of the automation rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/SeverityModifierRuleType" + required: + - type + - id + type: object + SeverityModifierRuleReorderRequest: + description: The body of a severity modifier rule reorder request. + properties: + data: + $ref: "#/components/schemas/SeverityModifierRuleReorderData" + required: + - data + type: object + SeverityModifierRuleReorderResponse: + description: The response of a severity modifier rule reorder request. + properties: + data: + $ref: "#/components/schemas/SeverityModifierRuleReorderData" + required: + - data + type: object + SeverityModifierRuleResponse: + description: A single severity modifier rule response. + properties: + data: + $ref: "#/components/schemas/SeverityModifierRuleDataResponse" + required: + - data + type: object + SeverityModifierRuleSetAction: + description: Sets matched findings to a fixed severity. + properties: + description: + description: An optional free-form explanation for the severity change. + example: "Lower severity for dev environment noise" + maxLength: 20000 + type: string + severity: + $ref: "#/components/schemas/SeverityModifierSeverity" + type: + $ref: "#/components/schemas/SeverityModifierRuleSetActionType" + required: + - type + - severity + type: object + SeverityModifierRuleSetActionType: + description: The type of a severity modifier rule action that sets a fixed severity. + enum: + - set + example: set + type: string + x-enum-varnames: + - SET + SeverityModifierRuleShiftAction: + description: Shifts matched findings up or down by one severity rank. + properties: + description: + description: An optional free-form explanation for the severity change. + example: "Lower severity for dev environment noise" + maxLength: 20000 + type: string + severity_delta: + $ref: "#/components/schemas/SeverityModifierSeverityDelta" + type: + $ref: "#/components/schemas/SeverityModifierRuleShiftActionType" + required: + - type + - severity_delta + type: object + SeverityModifierRuleShiftActionType: + description: The type of a severity modifier rule action that shifts the severity by one rank. + enum: + - shift + example: shift + type: string + x-enum-varnames: + - SHIFT + SeverityModifierRuleType: + description: The JSON:API type for severity modifier rules. + enum: + - severity_modifier_rules + example: severity_modifier_rules + type: string + x-enum-varnames: + - SEVERITY_MODIFIER_RULES + SeverityModifierRuleUpdateRequest: + description: The body of a severity modifier rule update request. + properties: + data: + $ref: "#/components/schemas/SeverityModifierRuleDataCreate" + required: + - data + type: object + SeverityModifierRulesDataList: + description: A list of severity modifier rule data objects. + items: + $ref: "#/components/schemas/SeverityModifierRuleDataResponse" + type: array + SeverityModifierRulesResponse: + description: A list of severity modifier rules with pagination metadata. + properties: + data: + $ref: "#/components/schemas/SeverityModifierRulesDataList" + links: + $ref: "#/components/schemas/SecurityAutomationRulesLinks" + meta: + $ref: "#/components/schemas/SecurityAutomationRulesMeta" + required: + - data + - meta + - links + type: object + SeverityModifierSeverity: + description: The severity to assign to matched findings. `info_none` is not supported for the `iac_misconfiguration`, `runtime_code_vulnerability`, `secret`, or `static_code_vulnerability` finding types. + enum: + - info_none + - low + - medium + - high + - critical + example: low + type: string + x-enum-varnames: + - INFO_NONE + - LOW + - MEDIUM + - HIGH + - CRITICAL + SeverityModifierSeverityDelta: + description: The direction in which to shift the severity of matched findings by one rank. + enum: + - up_one + - down_one + example: up_one + type: string + x-enum-varnames: + - UP_ONE + - DOWN_ONE + SharedDashboardGlobalTime: + additionalProperties: {} + description: Default time range configuration for the shared dashboard. + example: + live_span: 1h + nullable: true + type: object + SharedDashboardIncluded: + description: Resource included with a shared dashboard. + oneOf: + - $ref: "#/components/schemas/SharedDashboardIncludedDashboard" + - $ref: "#/components/schemas/SharedDashboardIncludedUser" + SharedDashboardIncludedDashboard: + description: Included dashboard resource. + properties: + attributes: + $ref: "#/components/schemas/SharedDashboardIncludedDashboardAttributes" + id: + description: ID of the dashboard. + example: abc-def-ghi + type: string + type: + $ref: "#/components/schemas/SharedDashboardIncludedDashboardType" + required: + - id + - type + - attributes + type: object + SharedDashboardIncludedDashboardAttributes: + description: Attributes of the included dashboard. + properties: + title: + description: Dashboard title. + example: Q1 Metrics Dashboard + type: string + required: + - title + type: object + SharedDashboardIncludedDashboardType: + default: dashboard + description: Included dashboard resource type. + enum: + - dashboard + example: dashboard + type: string + x-enum-varnames: + - DASHBOARD + SharedDashboardIncludedUser: + description: Included user resource. + properties: + attributes: + $ref: "#/components/schemas/SharedDashboardIncludedUserAttributes" + id: + description: ID of the user. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: "#/components/schemas/UserResourceType" + required: + - id + - type + - attributes + type: object + SharedDashboardIncludedUserAttributes: + description: Attributes of the included user. + properties: + handle: + description: User handle. + example: jane.doe@example.com + type: string + name: + description: User display name. + example: Jane Doe + type: string + required: + - handle + - name + type: object + SharedDashboardInvitee: + description: Invitee that can access an invite-only shared dashboard. + properties: + access_expiration: + description: Time when the invitee's access expires. + example: "2026-01-15T09:30:00.000Z" + format: date-time + nullable: true + type: string + created_at: + description: Time when the invitee was added. + example: "2026-01-01T00:00:00.000Z" + format: date-time + type: string + email: + description: Email address of the invitee. + example: jane.doe@example.com + type: string + required: + - email + - access_expiration + - created_at + type: object + SharedDashboardRelationshipDashboard: + description: Dashboard associated with the shared dashboard. + properties: + data: + $ref: "#/components/schemas/SharedDashboardRelationshipDashboardData" + required: + - data + type: object + SharedDashboardRelationshipDashboardData: + description: Dashboard relationship data. + properties: + id: + description: ID of the dashboard. + example: abc-def-ghi + type: string + type: + $ref: "#/components/schemas/SharedDashboardIncludedDashboardType" + required: + - id + - type + type: object + SharedDashboardRelationshipSharer: + description: User who shared the dashboard. + properties: + data: + $ref: "#/components/schemas/UserRelationshipData" + required: + - data + type: object + SharedDashboardRelationships: + description: Relationships of a shared dashboard. + properties: + dashboard: + $ref: "#/components/schemas/SharedDashboardRelationshipDashboard" + sharer: + $ref: "#/components/schemas/SharedDashboardRelationshipSharer" + required: + - dashboard + - sharer + type: object + SharedDashboardResponse: + description: A shared dashboard response resource. + properties: + attributes: + $ref: "#/components/schemas/SharedDashboardResponseAttributes" + id: + description: ID of the shared dashboard. + example: "12345" + type: string + relationships: + $ref: "#/components/schemas/SharedDashboardRelationships" + type: + $ref: "#/components/schemas/SharedDashboardType" + required: + - id + - type + - attributes + - relationships + type: object + SharedDashboardResponseAttributes: + description: Attributes of a shared dashboard response. + properties: + created_at: + description: Time when the shared dashboard was created. + example: "2026-01-01T00:00:00.000Z" + format: date-time + type: string + embeddable_domains: + description: Domains where embed-type shared dashboards can be embedded. + example: ["https://example.com"] + items: + description: An embeddable domain. + type: string + type: array + expiration: + description: Time when the shared dashboard expires. + example: "2026-02-01T00:00:00.000Z" + format: date-time + nullable: true + type: string + global_time: + $ref: "#/components/schemas/SharedDashboardGlobalTime" + global_time_selectable: + description: Whether viewers can select a different global time setting. + example: false + type: boolean + invitees: + description: Invitees for invite-only shared dashboards. + items: + $ref: "#/components/schemas/SharedDashboardInvitee" + type: array + last_accessed: + description: Time when the shared dashboard was last accessed. + example: "2026-01-15T09:30:00.000Z" + format: date-time + nullable: true + type: string + selectable_template_vars: + description: Template variables that viewers can modify. + items: + $ref: "#/components/schemas/SharedDashboardSelectableTemplateVariable" + type: array + share_type: + $ref: "#/components/schemas/SharedDashboardShareType" + sharer_disabled: + description: Whether the user who shared the dashboard is disabled. + example: false + type: boolean + status: + $ref: "#/components/schemas/SharedDashboardStatus" + title: + description: Display title for the shared dashboard. + example: Q1 Metrics Dashboard + type: string + token: + description: Token assigned to the shared dashboard. + example: abc-123-token + type: string + url: + description: URL for the shared dashboard. + example: https://p.datadoghq.com/sb/abc-123-token + type: string + viewing_preferences: + $ref: "#/components/schemas/SharedDashboardViewingPreferences" + required: + - token + - title + - url + - viewing_preferences + - global_time_selectable + - global_time + - selectable_template_vars + - created_at + - last_accessed + - status + - share_type + - invitees + - embeddable_domains + - expiration + - sharer_disabled + type: object + SharedDashboardSelectableTemplateVariable: + description: A template variable that viewers can modify on the shared dashboard. + properties: + allow_any_value: + description: Whether viewers can see all tag values for the template variable and specify any value. + example: false + type: boolean + default_values: + description: Default selected values for the variable. + example: ["prod"] + items: + description: A default value for the template variable. + type: string + type: array + name: + description: Name of the template variable. + example: environment + type: string + prefix: + description: Tag prefix for the variable. + example: env + type: string + type: + description: Type of the template variable. + example: group + type: string + visible_tags: + description: Restricts which tag values are visible to the viewer. + example: ["prod"] + items: + description: A visible tag value for the template variable. + type: string + type: array + required: + - name + - prefix + - type + - allow_any_value + - default_values + - visible_tags + type: object + SharedDashboardShareType: + description: Type of dashboard sharing. + enum: + - open + - invite + - embed + - secure-embed + example: invite + type: string + x-enum-varnames: + - OPEN + - INVITE + - EMBED + - SECURE_EMBED + SharedDashboardStatus: + description: Status of the shared dashboard. + enum: + - active + - paused + example: active + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + SharedDashboardType: + default: shared_dashboard + description: Shared dashboard resource type. + enum: + - shared_dashboard + example: shared_dashboard + type: string + x-enum-varnames: + - SHARED_DASHBOARD + SharedDashboardViewingPreferences: + description: Display settings for the shared dashboard. + properties: + high_density: + description: Whether widgets are displayed in high-density mode. + example: false + type: boolean + theme: + $ref: "#/components/schemas/SharedDashboardViewingPreferencesTheme" + required: + - high_density + - theme + type: object + SharedDashboardViewingPreferencesTheme: + description: The theme of the shared dashboard view. `system` follows the viewer's system default. + enum: + - system + - light + - dark + example: system + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK + Shift: + description: An on-call shift with its associated data and relationships. + example: + data: + attributes: + end: "2025-05-07T03:53:01.206662873Z" + start: "2025-05-07T02:53:01.206662814Z" + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + included: + - attributes: + email: foo@bar.com + name: User 1 + status: "" + id: 00000000-aba1-0000-0000-000000000000 + type: users + properties: + data: + $ref: "#/components/schemas/ShiftData" + nullable: true + included: + description: The `Shift` `included`. + items: + $ref: "#/components/schemas/ShiftIncluded" + type: array + type: object + ShiftData: + description: Data for an on-call shift. + properties: + attributes: + $ref: "#/components/schemas/ShiftDataAttributes" + id: + description: The `ShiftData` `id`. + type: string + relationships: + $ref: "#/components/schemas/ShiftDataRelationships" + type: + $ref: "#/components/schemas/ShiftDataType" + required: + - type + type: object + ShiftDataAttributes: + description: Attributes for an on-call shift. + properties: + end: + description: The end time of the shift. + format: date-time + type: string + start: + description: The start time of the shift. + format: date-time + type: string + type: object + ShiftDataRelationships: + description: Relationships for an on-call shift. + properties: + user: + $ref: "#/components/schemas/ShiftDataRelationshipsUser" + type: object + ShiftDataRelationshipsUser: + description: "Defines the relationship between a shift and the user who is working that shift." + properties: + data: + $ref: "#/components/schemas/ShiftDataRelationshipsUserData" + required: + - data + type: object + ShiftDataRelationshipsUserData: + description: "Represents a reference to the user assigned to this shift, containing the user's ID and resource type." + properties: + id: + description: "Specifies the unique identifier of the user." + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/ShiftDataRelationshipsUserDataType" + required: + - type + - id + type: object + ShiftDataRelationshipsUserDataType: + default: users + description: "Indicates that the related resource is of type 'users'." + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ShiftDataType: + default: shifts + description: "Indicates that the resource is of type 'shifts'." + enum: + - shifts + example: shifts + type: string + x-enum-varnames: + - SHIFTS + ShiftIncluded: + description: Included data for shift operations. + oneOf: + - $ref: "#/components/schemas/ScheduleUser" + SignalEntitiesAttributes: + description: Attributes containing the entities related to the signal. + properties: + identities: + description: The identity entities related to the signal. Each item is a free-form object describing an identity (for example, a user or principal). + example: + - display_name: Test User + principal_id: user@example.com + items: + $ref: "#/components/schemas/SignalEntityIdentity" + type: array + required: + - identities + type: object + SignalEntitiesData: + description: Entities related to a security signal. + properties: + attributes: + $ref: "#/components/schemas/SignalEntitiesAttributes" + id: + description: The signal ID the entities are associated with. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: "#/components/schemas/SignalEntitiesType" + required: + - id + - type + - attributes + type: object + SignalEntitiesResponse: + description: Response containing entities related to a security signal. + properties: + data: + $ref: "#/components/schemas/SignalEntitiesData" + required: + - data + type: object + SignalEntitiesType: + default: entities + description: The type of the resource. The value should always be `entities`. + enum: + - entities + example: entities + type: string + x-enum-varnames: + - ENTITIES + SignalEntityIdentity: + additionalProperties: {} + description: An identity entity related to a signal. The set of attributes is dynamic and depends on the source providing the identity. + example: + display_name: Test User + principal_id: user@example.com + type: object + SignalsProblemsDetections: + description: Grouped detection results by detection type. + properties: + high_frozen_frame_rates: + description: Detected high frozen frame rate issues. + items: + $ref: "#/components/schemas/AggregatedHighFrozenFrameRate" + type: array + high_script_evaluations: + description: Detected high script evaluation issues. + items: + $ref: "#/components/schemas/AggregatedHighScriptEval" + type: array + low_cache_hit_rates: + description: Detected low cache hit rate issues. + items: + $ref: "#/components/schemas/AggregatedLowCacheHitRate" + type: array + mobile_scroll_frictions: + description: Detected mobile scroll friction issues. + items: + $ref: "#/components/schemas/AggregatedMobileScrollFriction" + type: array + slow_fcp_high_bytes: + description: Detected slow first contentful paint with high byte count issues. + items: + $ref: "#/components/schemas/AggregatedSlowFCPHighBytes" + type: array + slow_interaction_long_tasks: + description: Detected slow interaction with long task issues. + items: + $ref: "#/components/schemas/AggregatedSlowInteractionLongTask" + type: array + uncompressed_resources: + description: Detected uncompressed resource issues. + items: + $ref: "#/components/schemas/AggregatedUncompressedResource" + type: array + type: object + SignalsProblemsSampleMetadata: + description: Metadata about the sampling quality for a signals and problems query. + properties: + failed: + description: Number of view instances that failed to process. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + requested: + description: Number of view instances requested for sampling. + example: 30 + format: int32 + maximum: 2147483647 + type: integer + sampled_view_ids: + description: List of RUM view IDs that were sampled. + example: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + items: + type: string + type: array + succeeded: + description: Number of view instances successfully processed. + example: 28 + format: int32 + maximum: 2147483647 + type: integer + success_rate: + description: Ratio of successfully processed views to requested views. + example: 0.93 + format: double + type: number + required: + - requested + - succeeded + - failed + - success_rate + - sampled_view_ids + type: object + SimpleMonitorUserTemplate: + description: A simplified version of a monitor user template. + properties: + created: + $ref: "#/components/schemas/MonitorUserTemplateCreated" + description: + $ref: "#/components/schemas/MonitorUserTemplateDescription" + id: + description: The unique identifier. The initial version will match the template ID. + example: "00000000-0000-1234-0000-000000000000" + type: string + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: {"message": "You may need to add web hosts if this is consistently high.", "name": "Bytes received on host0", "query": "avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100", "type": "query alert"} + type: object + tags: + $ref: "#/components/schemas/MonitorUserTemplateTags" + template_variables: + $ref: "#/components/schemas/MonitorUserTemplateTemplateVariables" + title: + $ref: "#/components/schemas/MonitorUserTemplateTitle" + version: + $ref: "#/components/schemas/MonitorUserTemplateVersion" + type: object + SingleAggregatedConnectionResponseArray: + description: List of aggregated connections. + example: + data: + - attributes: + bytes_sent_by_client: 100 + bytes_sent_by_server: 200 + group_bys: + client_team: + - networks + server_service: + - hucklebuck + packets_sent_by_client: 10 + packets_sent_by_server: 20 + rtt_micro_seconds: 800 + tcp_closed_connections: 30 + tcp_delivered_ce: 12 + tcp_established_connections: 40 + tcp_probe0_count: 2 + tcp_rcv_ooo_pack: 15 + tcp_recovery_count: 8 + tcp_refusals: 7 + tcp_reord_seen: 4 + tcp_resets: 5 + tcp_retransmits: 30 + tcp_rto_count: 3 + tcp_timeouts: 6 + id: client_team:networks, server_service:hucklebuck + type: aggregated_connection + properties: + data: + description: Array of aggregated connection objects. + items: + $ref: "#/components/schemas/SingleAggregatedConnectionResponseData" + type: array + type: object + SingleAggregatedConnectionResponseData: + description: Object describing an aggregated connection. + properties: + attributes: + $ref: "#/components/schemas/SingleAggregatedConnectionResponseDataAttributes" + id: + description: A unique identifier for the aggregated connection based on the group by values. + type: string + type: + $ref: "#/components/schemas/SingleAggregatedConnectionResponseDataType" + type: object + SingleAggregatedConnectionResponseDataAttributes: + description: Attributes for an aggregated connection. + properties: + bytes_sent_by_client: + description: The total number of bytes sent by the client over the given period. + format: int64 + type: integer + bytes_sent_by_server: + description: The total number of bytes sent by the server over the given period. + format: int64 + type: integer + group_bys: + additionalProperties: + description: The values for each group by. + items: + description: A group-by value. + type: string + type: array + description: The key, value pairs for each group by. + type: object + packets_sent_by_client: + description: The total number of packets sent by the client over the given period. + format: int64 + type: integer + packets_sent_by_server: + description: The total number of packets sent by the server over the given period. + format: int64 + type: integer + rtt_micro_seconds: + description: Measured as TCP smoothed round trip time in microseconds (the time between a TCP frame being sent and acknowledged). + format: int64 + type: integer + tcp_closed_connections: + description: The number of TCP connections in a closed state. Measured in connections per second from the client. + format: int64 + type: integer + tcp_delivered_ce: + description: The number of TCP segments acknowledged with the ECN Congestion Experienced (CE) mark, indicating that an upstream router marked packets as experiencing congestion. + format: int64 + type: integer + tcp_established_connections: + description: The number of TCP connections in an established state. Measured in connections per second from the client. + format: int64 + type: integer + tcp_probe0_count: + description: The number of TCP zero-window probes sent. These probes are sent when the receiver advertises a zero receive window, indicating it cannot accept more data. + format: int64 + type: integer + tcp_rcv_ooo_pack: + description: The number of TCP packets received out of order. This indicates network-level packet reordering, which can degrade TCP performance by triggering spurious retransmissions and reducing throughput. + format: int64 + type: integer + tcp_recovery_count: + description: The number of TCP fast recovery events. Fast recovery retransmits lost segments detected through duplicate ACKs or selective acknowledgment (SACK) without waiting for a retransmission timeout. + format: int64 + type: integer + tcp_refusals: + description: The number of TCP connections that were refused by the server. Typically this indicates an attempt to connect to an IP/port that is not receiving connections, or a firewall/security misconfiguration. + format: int64 + type: integer + tcp_reord_seen: + description: The number of times reordering of sent packets was detected. Reordering detection adjusts the duplicate ACK threshold, preventing spurious retransmissions caused by out-of-order delivery. + format: int64 + type: integer + tcp_resets: + description: The number of TCP connections that were reset by the server. + format: int64 + type: integer + tcp_retransmits: + description: TCP Retransmits represent detected failures that are retransmitted to ensure delivery. Measured in count of retransmits from the client. + format: int64 + type: integer + tcp_rto_count: + description: The number of TCP retransmission timeouts (RTOs). An RTO occurs when an ACK is not received within the estimated round-trip time, forcing the sender to retransmit and halve its congestion window. + format: int64 + type: integer + tcp_timeouts: + description: The number of TCP connections that timed out from the perspective of the operating system. This can indicate general connectivity and latency issues. + format: int64 + type: integer + type: object + SingleAggregatedConnectionResponseDataType: + default: aggregated_connection + description: |- + Aggregated connection resource type. + enum: + - aggregated_connection + type: string + x-enum-varnames: + - AGGREGATED_CONNECTION + SingleAggregatedDnsResponseArray: + description: List of aggregated DNS flows. + example: + data: + - attributes: + group_bys: + - key: client_service + value: example-service + - key: network.dns_query + value: example.com + metrics: + - key: dns_total_requests + value: 100 + - key: dns_failures + value: 7 + - key: dns_successful_responses + value: 93 + - key: dns_failed_responses + value: 5 + - key: dns_timeouts + value: 2 + - key: dns_responses.nxdomain + value: 1 + - key: dns_responses.servfail + value: 1 + - key: dns_responses.other + value: 3 + - key: dns_success_latency_percentile + value: 50 + - key: dns_failure_latency_percentile + value: 75 + id: client_service:example-service,network.dns_query:example.com + type: aggregated_dns + properties: + data: + description: Array of aggregated DNS objects. + items: + $ref: "#/components/schemas/SingleAggregatedDnsResponseData" + type: array + type: object + SingleAggregatedDnsResponseData: + description: Object describing an aggregated DNS flow. + properties: + attributes: + $ref: "#/components/schemas/SingleAggregatedDnsResponseDataAttributes" + id: + description: A unique identifier for the aggregated DNS traffic based on the group by values. + type: string + type: + $ref: "#/components/schemas/SingleAggregatedDnsResponseDataType" + type: object + SingleAggregatedDnsResponseDataAttributes: + description: Attributes for an aggregated DNS flow. + properties: + group_bys: + description: The key, value pairs for each group by. + items: + $ref: "#/components/schemas/SingleAggregatedDnsResponseDataAttributesGroupByItems" + type: array + metrics: + description: Metrics associated with an aggregated DNS flow. + items: + $ref: "#/components/schemas/SingleAggregatedDnsResponseDataAttributesMetricsItems" + type: array + type: object + SingleAggregatedDnsResponseDataAttributesGroupByItems: + description: Attributes associated with a group by + properties: + key: + description: The group by key. + type: string + value: + description: The group by value. + type: string + type: object + SingleAggregatedDnsResponseDataAttributesMetricsItems: + description: Metrics associated with an aggregated DNS flow. + properties: + key: + $ref: "#/components/schemas/DnsMetricKey" + value: + description: The metric value. + format: int64 + type: integer + type: object + SingleAggregatedDnsResponseDataType: + default: aggregated_dns + description: |- + Aggregated DNS resource type. + enum: + - aggregated_dns + type: string + x-enum-varnames: + - AGGREGATED_DNS + SingleEntityContextResponse: + description: Response from the single entity context endpoint, containing the matching entity. + properties: + data: + $ref: "#/components/schemas/EntityContextEntity" + required: + - data + type: object + SlackIntegrationMetadata: + description: Incident integration metadata for the Slack integration. + properties: + channels: + description: Array of Slack channels in this integration metadata. + example: [] + items: + $ref: "#/components/schemas/SlackIntegrationMetadataChannelItem" + type: array + required: + - channels + type: object + SlackIntegrationMetadataChannelItem: + description: Item in the Slack integration metadata channel array. + properties: + channel_id: + description: Slack channel ID. + example: C0123456789 + type: string + channel_name: + description: Name of the Slack channel. + example: "#example-channel-name" + type: string + redirect_url: + description: URL redirecting to the Slack channel. + example: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 + type: string + team_id: + description: Slack team ID. + example: T01234567 + type: string + required: + - channel_id + - channel_name + - redirect_url + type: object + SlackTriggerWrapper: + description: "Schema for a Slack-based trigger." + properties: + slackTrigger: + description: "Trigger a workflow from Slack. The workflow must be published." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - slackTrigger + type: object + SlackUserBindingData: + description: Slack team ID data from a response. + properties: + id: + description: The Slack team ID. + example: "T01234567" + type: string + type: + $ref: "#/components/schemas/SlackUserBindingType" + type: object + SlackUserBindingType: + default: team_id + description: Slack user binding resource type. + enum: + - team_id + example: team_id + type: string + x-enum-varnames: + - TEAM_ID + SlackUserBindingsResponse: + description: Response with a list of Slack user bindings. + properties: + data: + description: An array of Slack user bindings. + example: [{"id": "T01234567", "type": "team_id"}, {"id": "T09876543", "type": "team_id"}] + items: + $ref: "#/components/schemas/SlackUserBindingData" + type: array + required: + - data + type: object + SloDataSource: + default: slo + description: A data source for SLO queries. + enum: + - slo + example: slo + type: string + x-enum-varnames: + - SLO + SloQuery: + description: A query for SLO status, error budget, and burn rate metrics. + example: + additional_query_filters: "*" + data_source: "slo" + group_mode: "overall" + measure: "good_events" + name: "my_slo" + slo_id: "12345678910" + slo_query_type: "metric" + properties: + additional_query_filters: + description: Additional filters applied to the SLO query. + example: "host:host_a,env:prod" + type: string + cross_org_uuids: + $ref: "#/components/schemas/CrossOrgUuids" + data_source: + $ref: "#/components/schemas/SloDataSource" + group_mode: + $ref: "#/components/schemas/SlosGroupMode" + measure: + $ref: "#/components/schemas/SlosMeasure" + name: + description: The variable name for use in formulas. + example: query1 + type: string + slo_id: + description: The unique identifier of the SLO to query. + example: "a]b123c45de6f78g90h" + type: string + slo_query_type: + $ref: "#/components/schemas/SlosQueryType" + required: + - data_source + - slo_id + - measure + type: object + SloReportCreateRequest: + description: The SLO report request body. + properties: + data: + $ref: "#/components/schemas/SloReportCreateRequestData" + required: + - data + type: object + SloReportCreateRequestAttributes: + description: The attributes portion of the SLO report request. + properties: + from_ts: + description: The `from` timestamp for the report in epoch seconds. + example: 1690901870 + format: int64 + type: integer + interval: + $ref: "#/components/schemas/SLOReportInterval" + query: + description: The query string used to filter SLO results. Some examples of queries include `service:` and `slo-name`. + example: "slo_type:metric" + type: string + timezone: + description: The timezone used to determine the start and end of each interval. For example, weekly intervals start at 12am on Sunday in the specified timezone. + example: America/New_York + type: string + to_ts: + description: The `to` timestamp for the report in epoch seconds. + example: 1706803070 + format: int64 + type: integer + required: + - query + - from_ts + - to_ts + type: object + SloReportCreateRequestData: + description: The data portion of the SLO report request. + properties: + attributes: + $ref: "#/components/schemas/SloReportCreateRequestAttributes" + required: + - attributes + type: object + SloStatusData: + description: The data portion of the SLO status response. + properties: + attributes: + $ref: "#/components/schemas/SloStatusDataAttributes" + id: + description: The ID of the SLO. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/SloStatusType" + required: + - id + - type + - attributes + type: object + SloStatusDataAttributes: + description: The attributes of the SLO status. + properties: + error_budget_remaining: + description: The percentage of error budget remaining. + example: 99.5 + format: double + type: number + raw_error_budget_remaining: + $ref: "#/components/schemas/RawErrorBudgetRemaining" + sli: + description: The current Service Level Indicator (SLI) value as a percentage. + example: 99.95 + format: double + type: number + span_precision: + description: The precision of the time span in seconds. + example: 2 + format: int64 + type: integer + state: + description: The current state of the SLO (for example, `breached`, `warning`, `ok`). + example: ok + type: string + required: + - sli + - error_budget_remaining + - raw_error_budget_remaining + - state + - span_precision + type: object + SloStatusResponse: + description: The SLO status response. + properties: + data: + $ref: "#/components/schemas/SloStatusData" + required: + - data + type: object + SloStatusType: + description: The type of the SLO status resource. + enum: + - slo_status + example: slo_status + type: string + x-enum-varnames: + - SLO_STATUS + SlosGroupMode: + description: How SLO results are grouped in the response. + enum: + - overall + - components + example: overall + type: string + x-enum-varnames: + - OVERALL + - COMPONENTS + SlosMeasure: + description: The SLO measurement to retrieve. + enum: + - good_events + - bad_events + - slo_status + - error_budget_remaining + - error_budget_remaining_history + - error_budget_burndown + - burn_rate + - slo_status_history + - good_minutes + - bad_minutes + example: slo_status + type: string + x-enum-varnames: + - GOOD_EVENTS + - BAD_EVENTS + - SLO_STATUS + - ERROR_BUDGET_REMAINING + - ERROR_BUDGET_REMAINING_HISTORY + - ERROR_BUDGET_BURNDOWN + - BURN_RATE + - SLO_STATUS_HISTORY + - GOOD_MINUTES + - BAD_MINUTES + SlosQueryType: + description: The type of SLO definition being queried. + enum: + - metric + - time_slice + - monitor + example: metric + type: string + x-enum-varnames: + - METRIC + - TIME_SLICE + - MONITOR + Snapshot: + description: A single heatmap snapshot resource returned by create or update operations. + properties: + data: + $ref: "#/components/schemas/SnapshotData" + type: object + SnapshotArray: + description: A list of heatmap snapshots returned by a list operation. + properties: + data: + description: Array of heatmap snapshot data objects. + items: + $ref: "#/components/schemas/SnapshotData" + type: array + required: + - data + type: object + SnapshotCreateRequest: + description: Request body for creating a heatmap snapshot. + properties: + data: + $ref: "#/components/schemas/SnapshotCreateRequestData" + required: + - data + type: object + SnapshotCreateRequestData: + description: Data object for a heatmap snapshot creation request, containing the resource type and attributes. + properties: + attributes: + $ref: "#/components/schemas/SnapshotCreateRequestDataAttributes" + type: + $ref: "#/components/schemas/SnapshotUpdateRequestDataType" + required: + - type + type: object + SnapshotCreateRequestDataAttributes: + description: Attributes for creating a heatmap snapshot, including the view, session, event, and device context. + properties: + application_id: + description: Unique identifier of the RUM application. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + device_type: + description: Device type used when capturing the snapshot (e.g., desktop, mobile, tablet). + example: desktop + type: string + event_id: + description: Unique identifier of the RUM event associated with the snapshot. + example: 11111111-2222-3333-4444-555555555555 + type: string + is_device_type_selected_by_user: + description: Indicates whether the device type was explicitly selected by the user rather than auto-detected. + example: false + type: boolean + session_id: + description: Unique identifier of the RUM session associated with the snapshot. + type: string + snapshot_name: + description: Human-readable name for the snapshot. + example: My Snapshot + type: string + start: + description: Offset in milliseconds from the start of the session at which the snapshot was captured. + example: 0 + format: int64 + type: integer + view_id: + description: Unique identifier of the RUM view associated with the snapshot. + type: string + view_name: + description: URL path or name of the view where the snapshot was captured. + example: /home + type: string + required: + - view_name + - device_type + - application_id + - snapshot_name + - event_id + - start + - is_device_type_selected_by_user + type: object + SnapshotData: + description: Data object representing a heatmap snapshot, including its identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/SnapshotDataAttributes" + id: + description: Unique identifier of the heatmap snapshot. + readOnly: true + type: string + type: + $ref: "#/components/schemas/SnapshotUpdateRequestDataType" + required: + - type + type: object + SnapshotDataAttributes: + description: Attributes of a heatmap snapshot, including view context, device information, and audit metadata. + properties: + application_id: + description: Unique identifier of the RUM application. + type: string + created_at: + description: Timestamp when the snapshot was created. + format: date-time + readOnly: true + type: string + created_by: + description: Display name of the user who created the snapshot. + readOnly: true + type: string + created_by_handle: + description: Email handle of the user who created the snapshot. + readOnly: true + type: string + created_by_user_id: + description: Numeric identifier of the user who created the snapshot. + format: int64 + readOnly: true + type: integer + device_type: + description: Device type used when capturing the snapshot (e.g., desktop, mobile, tablet). + type: string + event_id: + description: Unique identifier of the RUM event associated with the snapshot. + type: string + is_device_type_selected_by_user: + description: Indicates whether the device type was explicitly selected by the user rather than auto-detected. + type: boolean + modified_at: + description: Timestamp when the snapshot was last modified. + format: date-time + readOnly: true + type: string + org_id: + description: Numeric identifier of the organization that owns the snapshot. + format: int64 + readOnly: true + type: integer + session_id: + description: Unique identifier of the RUM session associated with the snapshot. + type: string + snapshot_name: + description: Human-readable name for the snapshot. + type: string + start: + description: Offset in milliseconds from the start of the session at which the snapshot was captured. + format: int64 + type: integer + view_id: + description: Unique identifier of the RUM view associated with the snapshot. + type: string + view_name: + description: URL path or name of the view where the snapshot was captured. + type: string + type: object + SnapshotUpdateRequest: + description: Request body for updating a heatmap snapshot. + properties: + data: + $ref: "#/components/schemas/SnapshotUpdateRequestData" + required: + - data + type: object + SnapshotUpdateRequestData: + description: Data object for a heatmap snapshot update request, containing the resource identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/SnapshotUpdateRequestDataAttributes" + id: + description: Unique identifier of the heatmap snapshot to update. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: "#/components/schemas/SnapshotUpdateRequestDataType" + required: + - type + type: object + SnapshotUpdateRequestDataAttributes: + description: Attributes for updating a heatmap snapshot, including event, session, and view context. + properties: + event_id: + description: Unique identifier of the RUM event associated with the snapshot. + example: 11111111-2222-3333-4444-555555555555 + type: string + is_device_type_selected_by_user: + description: Indicates whether the device type was explicitly selected by the user rather than auto-detected. + example: false + type: boolean + session_id: + description: Unique identifier of the RUM session associated with the snapshot. + type: string + start: + description: Offset in milliseconds from the start of the session at which the snapshot was captured. + example: 0 + format: int64 + type: integer + view_id: + description: Unique identifier of the RUM view associated with the snapshot. + type: string + required: + - event_id + - start + - is_device_type_selected_by_user + type: object + SnapshotUpdateRequestDataType: + default: snapshots + description: Snapshots resource type. + enum: + - snapshots + example: snapshots + type: string + x-enum-varnames: + - SNAPSHOTS + SoftwareCatalogTriggerWrapper: + description: "Schema for a Software Catalog-based trigger." + properties: + softwareCatalogTrigger: + description: "Trigger a workflow from Software Catalog." + type: object + startStepNames: + $ref: "#/components/schemas/StartStepNames" + required: + - softwareCatalogTrigger + type: object + SortDirection: + default: desc + description: The direction to sort by. + enum: + - desc + - asc + type: string + x-enum-varnames: + - DESC + - ASC + SourcemapDataType: + description: The resource type for source map objects. + enum: + - sourcemaps + example: sourcemaps + type: string + x-enum-varnames: + - SOURCEMAPS + SourcemapFileAttributes: + description: Attributes of a JavaScript source map file. + properties: + file: + description: The name of the minified JavaScript file. + example: bundle.js + type: string + mappings: + description: |- + The Base64 VLQ encoded string that maps positions in the minified + file to positions in the original source files. + example: AAAA,OAAO,CAAC,GAAG + type: string + minifiedLineLengths: + description: List of character counts for each line in the minified file. + example: + - 50 + - 30 + items: + format: int64 + type: integer + type: array + names: + description: List of symbol names referenced in the mappings. + example: + - console + - log + items: {} + type: array + sourceRoot: + description: The root path prepended to source file paths. + example: / + type: string + sources: + description: List of original source file paths. + example: + - src/index.js + - src/utils.js + items: + type: string + type: array + sourcesContent: + description: List of original source file contents corresponding to the paths in `sources`. + example: + - "console.log('index');" + - "export function util() {}" + items: + type: string + type: array + version: + description: The version of the source map format (typically 3). + example: 3 + format: int64 + type: integer + required: + - file + - version + - sourceRoot + - sources + - sourcesContent + - names + - mappings + - minifiedLineLengths + type: object + SourcemapFileData: + description: JavaScript source map file data object. + properties: + attributes: + $ref: "#/components/schemas/SourcemapFileAttributes" + id: + description: The unique identifier of the source map file, typically the path to the file. + example: path/to/sourcemap.js.map + type: string + type: + $ref: "#/components/schemas/SourcemapFileDataType" + required: + - id + - type + - attributes + type: object + SourcemapFileDataType: + description: The resource type for source map file objects. + enum: + - sourcemap_files + example: sourcemap_files + type: string + x-enum-varnames: + - SOURCEMAP_FILES + SourcemapFileResponse: + description: Response containing a JavaScript source map file. + properties: + data: + $ref: "#/components/schemas/SourcemapFileData" + required: + - data + type: object + SourcemapItem: + description: A source map data object representing one of the supported map kinds. + oneOf: + - $ref: "#/components/schemas/JSSourcemapData" + - $ref: "#/components/schemas/ReactNativeSourcemapData" + - $ref: "#/components/schemas/IOSSourcemapData" + - $ref: "#/components/schemas/JVMSourcemapData" + - $ref: "#/components/schemas/FlutterSourcemapData" + - $ref: "#/components/schemas/ELFSourcemapData" + - $ref: "#/components/schemas/NDKSourcemapData" + - $ref: "#/components/schemas/IL2CPPSourcemapData" + SourcemapMapKind: + description: The type of source map. + enum: + - js + - jvm + - ios + - react + - flutter + - elf + - ndk + - il2cpp + example: js + type: string + x-enum-varnames: + - JS + - JVM + - IOS + - REACT + - FLUTTER + - ELF + - NDK + - IL2CPP + SourcemapsData: + description: List of source map data objects. + items: + $ref: "#/components/schemas/SourcemapItem" + type: array + SourcemapsListMeta: + description: Pagination metadata for the source maps list response. + properties: + page: + $ref: "#/components/schemas/SourcemapsListMetaPage" + required: + - page + type: object + SourcemapsListMetaPage: + description: Page information for the source maps list response. + properties: + has_more_results: + description: Whether there are more results available beyond the current page. + example: false + type: boolean + total_filtered_count: + description: Total number of source maps matching the filter criteria. + example: 100 + format: int64 + type: integer + required: + - total_filtered_count + - has_more_results + type: object + SourcemapsResponse: + description: Response containing a list of affected source maps. + properties: + data: + $ref: "#/components/schemas/SourcemapsData" + required: + - data + type: object + Span: + description: Object description of a spans after being processed and stored by Datadog. + properties: + attributes: + $ref: "#/components/schemas/SpansAttributes" + id: + description: Unique ID of the Span. + example: "AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA" + type: string + type: + $ref: "#/components/schemas/SpansType" + type: object + SpansAggregateBucket: + description: Spans aggregate. + properties: + attributes: + $ref: "#/components/schemas/SpansAggregateBucketAttributes" + id: + description: ID of the spans aggregate. + type: string + type: + $ref: "#/components/schemas/SpansAggregateBucketType" + type: object + SpansAggregateBucketAttributes: + description: A bucket values. + properties: + by: + additionalProperties: + description: The values for each group by. + description: The key, value pairs for each group by. + example: {"@state": "success", "@version": "abc"} + type: object + compute: + description: The compute data. + type: object + computes: + additionalProperties: + $ref: "#/components/schemas/SpansAggregateBucketValue" + description: A map of the metric name -> value for regular compute or list of values for a timeseries. + type: object + type: object + SpansAggregateBucketType: + description: The spans aggregate bucket type. + enum: ["bucket"] + example: "bucket" + type: string + x-enum-varnames: ["BUCKET"] + SpansAggregateBucketValue: + description: A bucket value, can be either a timeseries or a single value. + oneOf: + - $ref: "#/components/schemas/SpansAggregateBucketValueSingleString" + - $ref: "#/components/schemas/SpansAggregateBucketValueSingleNumber" + - $ref: "#/components/schemas/SpansAggregateBucketValueTimeseries" + SpansAggregateBucketValueSingleNumber: + description: A single number value. + format: double + type: number + SpansAggregateBucketValueSingleString: + description: A single string value. + type: string + SpansAggregateBucketValueTimeseries: + description: A timeseries array. + items: + $ref: "#/components/schemas/SpansAggregateBucketValueTimeseriesPoint" + type: array + x-generate-alias-as-model: true + SpansAggregateBucketValueTimeseriesPoint: + description: A timeseries point. + properties: + time: + description: The time value for this point. + example: "2023-06-08T11:55:00Z" + type: string + value: + description: The value for this point. + example: 19 + format: double + type: number + type: object + SpansAggregateData: + description: The object containing the query content. + properties: + attributes: + $ref: "#/components/schemas/SpansAggregateRequestAttributes" + type: + $ref: "#/components/schemas/SpansAggregateRequestType" + type: object + SpansAggregateRequest: + description: The object sent with the request to retrieve a list of aggregated spans from your organization. + properties: + data: + $ref: "#/components/schemas/SpansAggregateData" + type: object + SpansAggregateRequestAttributes: + description: The object containing all the query parameters. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: "#/components/schemas/SpansCompute" + type: array + filter: + $ref: "#/components/schemas/SpansQueryFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/SpansGroupBy" + type: array + options: + $ref: "#/components/schemas/SpansQueryOptions" + type: object + SpansAggregateRequestType: + default: aggregate_request + description: The type of resource. The value should always be aggregate_request. + enum: + - aggregate_request + example: aggregate_request + type: string + x-enum-varnames: ["AGGREGATE_REQUEST"] + SpansAggregateResponse: + description: The response object for the spans aggregate API endpoint. + properties: + data: + description: The list of matching buckets, one item per bucket. + items: + $ref: "#/components/schemas/SpansAggregateBucket" + type: array + meta: + $ref: "#/components/schemas/SpansAggregateResponseMetadata" + type: object + SpansAggregateResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/SpansAggregateResponseStatus" + warnings: + description: |- + A list of warnings (non fatal errors) encountered, partial results might be returned if + warnings are present in the response. + items: + $ref: "#/components/schemas/SpansWarning" + type: array + type: object + SpansAggregateResponseStatus: + description: The status of the response. + enum: ["done", "timeout"] + example: "done" + type: string + x-enum-varnames: ["DONE", "TIMEOUT"] + SpansAggregateSort: + description: A sort rule. + example: {"aggregation": "count", "order": "asc"} + properties: + aggregation: + $ref: "#/components/schemas/SpansAggregationFunction" + metric: + description: The metric to sort by (only used for `type=measure`). + example: "@duration" + type: string + order: + $ref: "#/components/schemas/SpansSortOrder" + type: + $ref: "#/components/schemas/SpansAggregateSortType" + type: object + SpansAggregateSortType: + default: "alphabetical" + description: The type of sorting algorithm. + enum: ["alphabetical", "measure"] + type: string + x-enum-varnames: ["ALPHABETICAL", "MEASURE"] + SpansAggregationFunction: + description: An aggregation function. + enum: ["count", "cardinality", "pc75", "pc90", "pc95", "pc98", "pc99", "sum", "min", "max", "avg", "median"] + example: "pc90" + type: string + x-enum-varnames: ["COUNT", "CARDINALITY", "PERCENTILE_75", "PERCENTILE_90", "PERCENTILE_95", "PERCENTILE_98", "PERCENTILE_99", "SUM", "MIN", "MAX", "AVG", "MEDIAN"] + SpansAttributes: + description: JSON object containing all span attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from your span. + example: {"customAttribute": 123, "duration": 2345} + type: object + custom: + additionalProperties: {} + description: JSON object of custom spans data. + type: object + end_timestamp: + description: End timestamp of your span. + example: "2023-01-02T09:42:36.420Z" + format: date-time + type: string + env: + description: |- + Name of the environment from where the spans are being sent. + example: "prod" + type: string + host: + description: |- + Name of the machine from where the spans are being sent. + example: "i-0123" + type: string + ingestion_reason: + description: The reason why the span was ingested. + example: "rule" + type: string + parent_id: + description: Id of the span that's parent of this span. + example: "0" + type: string + resource_hash: + description: Unique identifier of the resource. + example: "a12345678b91c23d" + type: string + resource_name: + description: The name of the resource. + example: "agent" + type: string + retained_by: + description: The reason why the span was indexed. + example: "retention_filter" + type: string + service: + description: |- + The name of the application or service generating the span events. + It is used to switch from APM to Logs, so make sure you define the same + value when you use both products. + example: "agent" + type: string + single_span: + description: |- + Whether or not the span was collected as a stand-alone span. Always associated to "single_span" ingestion_reason if true. + example: true + type: boolean + span_id: + description: Id of the span. + example: "1234567890987654321" + type: string + start_timestamp: + description: Start timestamp of your span. + example: "2023-01-02T09:42:36.320Z" + format: date-time + type: string + tags: + description: Array of tags associated with your span. + example: ["team:A"] + items: + description: Tag associated with your span. + type: string + type: array + trace_id: + description: Id of the trace to which the span belongs. + example: "1234567890987654321" + type: string + type: + description: The type of the span. + example: "web" + type: string + type: object + SpansCompute: + description: A compute rule to compute metrics or timeseries. + properties: + aggregation: + $ref: "#/components/schemas/SpansAggregationFunction" + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points. + example: "5m" + type: string + metric: + description: The metric to use. + example: "@duration" + type: string + type: + $ref: "#/components/schemas/SpansComputeType" + required: + - aggregation + type: object + SpansComputeType: + default: "total" + description: The type of compute. + enum: ["timeseries", "total"] + type: string + x-enum-varnames: ["TIMESERIES", "TOTAL"] + SpansFilter: + description: The spans filter used to index spans. + properties: + query: + description: The search query - following the [span search syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). + example: "@http.status_code:200 service:my-service" + type: string + type: object + SpansFilterCreate: + description: The spans filter. Spans matching this filter will be indexed and stored. + properties: + query: + description: The search query - following the [span search syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). + example: "@http.status_code:200 service:my-service" + type: string + required: + - query + type: object + SpansGroupBy: + description: A group by rule. + properties: + facet: + description: The name of the facet to use (required). + example: "host" + type: string + histogram: + $ref: "#/components/schemas/SpansGroupByHistogram" + limit: + default: 10 + description: The maximum buckets to return for this group by. + format: int64 + type: integer + missing: + $ref: "#/components/schemas/SpansGroupByMissing" + sort: + $ref: "#/components/schemas/SpansAggregateSort" + total: + $ref: "#/components/schemas/SpansGroupByTotal" + required: + - facet + type: object + SpansGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval. + properties: + interval: + description: The bin size of the histogram buckets. + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out). + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out). + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + SpansGroupByMissing: + description: The value to use for spans that don't have the facet used to group by. + oneOf: + - $ref: "#/components/schemas/SpansGroupByMissingString" + - $ref: "#/components/schemas/SpansGroupByMissingNumber" + SpansGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + SpansGroupByMissingString: + description: The missing value to use if there is string valued facet. + type: string + SpansGroupByTotal: + default: false + description: |- + A resulting object to put the given computes in over all the matching records. + oneOf: + - $ref: "#/components/schemas/SpansGroupByTotalBoolean" + - $ref: "#/components/schemas/SpansGroupByTotalString" + - $ref: "#/components/schemas/SpansGroupByTotalNumber" + SpansGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total". + type: boolean + SpansGroupByTotalNumber: + description: A number to use as the key value for the total bucket. + format: double + type: number + SpansGroupByTotalString: + description: A string to use as the key value for the total bucket. + type: string + SpansListRequest: + description: The request for a spans list. + properties: + data: + $ref: "#/components/schemas/SpansListRequestData" + type: object + SpansListRequestAttributes: + description: The object containing all the query parameters. + properties: + filter: + $ref: "#/components/schemas/SpansQueryFilter" + options: + $ref: "#/components/schemas/SpansQueryOptions" + page: + $ref: "#/components/schemas/SpansListRequestPage" + sort: + $ref: "#/components/schemas/SpansSort" + type: object + SpansListRequestData: + description: The object containing the query content. + properties: + attributes: + $ref: "#/components/schemas/SpansListRequestAttributes" + type: + $ref: "#/components/schemas/SpansListRequestType" + type: object + SpansListRequestPage: + description: Paging attributes for listing spans. + properties: + cursor: + description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + limit: + default: 10 + description: Maximum number of spans in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + SpansListRequestType: + default: search_request + description: The type of resource. The value should always be search_request. + enum: + - search_request + example: search_request + type: string + x-enum-varnames: ["SEARCH_REQUEST"] + SpansListResponse: + description: Response object with all spans matching the request and pagination information. + properties: + data: + description: Array of spans matching the request. + items: + $ref: "#/components/schemas/Span" + type: array + links: + $ref: "#/components/schemas/SpansListResponseLinks" + meta: + $ref: "#/components/schemas/SpansListResponseMetadata" + type: object + SpansListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: "https://app.datadoghq.com/api/v2/spans/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + SpansListResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: "#/components/schemas/SpansResponseMetadataPage" + request_id: + description: The identifier of the request. + example: "MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR" + type: string + status: + $ref: "#/components/schemas/SpansAggregateResponseStatus" + warnings: + description: |- + A list of warnings (non fatal errors) encountered, partial results might be returned if + warnings are present in the response. + items: + $ref: "#/components/schemas/SpansWarning" + type: array + type: object + SpansMetricCompute: + description: The compute rule to compute the span-based metric. + properties: + aggregation_type: + $ref: "#/components/schemas/SpansMetricComputeAggregationType" + include_percentiles: + $ref: "#/components/schemas/SpansMetricComputeIncludePercentiles" + path: + description: The path to the value the span-based metric will aggregate on (only used if the aggregation type is a "distribution"). + example: "@duration" + type: string + required: + - aggregation_type + type: object + SpansMetricComputeAggregationType: + description: The type of aggregation to use. + enum: ["count", "distribution"] + example: "distribution" + type: string + x-enum-varnames: ["COUNT", "DISTRIBUTION"] + SpansMetricComputeIncludePercentiles: + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. + Only present when the `aggregation_type` is `distribution`. + example: false + type: boolean + SpansMetricCreateAttributes: + description: The object describing the Datadog span-based metric to create. + properties: + compute: + $ref: "#/components/schemas/SpansMetricCompute" + filter: + $ref: "#/components/schemas/SpansMetricFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/SpansMetricGroupBy" + type: array + required: + - compute + type: object + SpansMetricCreateData: + description: The new span-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/SpansMetricCreateAttributes" + id: + $ref: "#/components/schemas/SpansMetricID" + type: + $ref: "#/components/schemas/SpansMetricType" + required: + - id + - type + - attributes + type: object + SpansMetricCreateRequest: + description: The new span-based metric body. + properties: + data: + $ref: "#/components/schemas/SpansMetricCreateData" + required: + - data + type: object + SpansMetricFilter: + description: The span-based metric filter. Spans matching this filter will be aggregated in this metric. + properties: + query: + default: "*" + description: The search query - following the span search syntax. + example: "@http.status_code:200 service:my-service" + type: string + type: object + SpansMetricGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the span-based metric will be aggregated over. + example: "resource_name" + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. + example: "resource_name" + type: string + required: + - path + type: object + SpansMetricID: + description: The name of the span-based metric. + example: "my.metric" + type: string + SpansMetricResponse: + description: The span-based metric object. + properties: + data: + $ref: "#/components/schemas/SpansMetricResponseData" + type: object + SpansMetricResponseAttributes: + description: The object describing a Datadog span-based metric. + properties: + compute: + $ref: "#/components/schemas/SpansMetricResponseCompute" + filter: + $ref: "#/components/schemas/SpansMetricResponseFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/SpansMetricResponseGroupBy" + type: array + type: object + SpansMetricResponseCompute: + description: The compute rule to compute the span-based metric. + properties: + aggregation_type: + $ref: "#/components/schemas/SpansMetricComputeAggregationType" + include_percentiles: + $ref: "#/components/schemas/SpansMetricComputeIncludePercentiles" + path: + description: The path to the value the span-based metric will aggregate on (only used if the aggregation type is a "distribution"). + example: "@duration" + type: string + type: object + SpansMetricResponseData: + description: The span-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/SpansMetricResponseAttributes" + id: + $ref: "#/components/schemas/SpansMetricID" + type: + $ref: "#/components/schemas/SpansMetricType" + type: object + SpansMetricResponseFilter: + description: The span-based metric filter. Spans matching this filter will be aggregated in this metric. + properties: + query: + description: The search query - following the span search syntax. + example: "@http.status_code:200 service:my-service" + type: string + type: object + SpansMetricResponseGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the span-based metric will be aggregated over. + example: "resource_name" + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. + example: "resource_name" + type: string + type: object + SpansMetricType: + default: spans_metrics + description: The type of resource. The value should always be spans_metrics. + enum: + - spans_metrics + example: spans_metrics + type: string + x-enum-varnames: ["SPANS_METRICS"] + SpansMetricUpdateAttributes: + description: The span-based metric properties that will be updated. + properties: + compute: + $ref: "#/components/schemas/SpansMetricUpdateCompute" + filter: + $ref: "#/components/schemas/SpansMetricFilter" + group_by: + description: The rules for the group by. + items: + $ref: "#/components/schemas/SpansMetricGroupBy" + type: array + type: object + SpansMetricUpdateCompute: + description: The compute rule to compute the span-based metric. + properties: + include_percentiles: + $ref: "#/components/schemas/SpansMetricComputeIncludePercentiles" + type: object + SpansMetricUpdateData: + description: The new span-based metric properties. + properties: + attributes: + $ref: "#/components/schemas/SpansMetricUpdateAttributes" + type: + $ref: "#/components/schemas/SpansMetricType" + required: + - type + - attributes + type: object + SpansMetricUpdateRequest: + description: The new span-based metric body. + properties: + data: + $ref: "#/components/schemas/SpansMetricUpdateData" + required: + - data + type: object + SpansMetricsResponse: + description: All the available span-based metric objects. + properties: + data: + description: A list of span-based metric objects. + items: + $ref: "#/components/schemas/SpansMetricResponseData" + type: array + type: object + SpansQueryFilter: + description: The search and filter query settings. + properties: + from: + default: "now-15m" + description: The minimum time for the requested spans, supports date-time ISO8601, date math, and regular timestamps (milliseconds). + example: "now-15m" + type: string + query: + default: "*" + description: The search query - following the span search syntax. + example: "service:web* AND @http.status_code:[200 TO 299]" + type: string + to: + default: "now" + description: The maximum time for the requested spans, supports date-time ISO8601, date math, and regular timestamps (milliseconds). + example: "now" + type: string + type: object + SpansQueryOptions: + description: |- + Global query options that are used during the query. + Note: You should only supply timezone or time offset but not both otherwise the query will fail. + properties: + timeOffset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: "UTC" + description: |- + The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: "GMT" + type: string + type: object + SpansResponseMetadataPage: + description: Paging attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + type: string + type: object + SpansSort: + description: Sort parameters when querying spans. + enum: + - timestamp + - -timestamp + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + SpansSortOrder: + description: The order to use, ascending or descending. + enum: + - "asc" + - "desc" + example: "asc" + type: string + x-enum-varnames: + - "ASCENDING" + - "DESCENDING" + SpansType: + default: spans + description: Type of the span. + enum: + - spans + example: "spans" + type: string + x-enum-varnames: + - SPANS + SpansWarning: + description: A warning message indicating something that went wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: "unknown_index" + type: string + detail: + description: A detailed explanation of this specific warning. + example: "indexes: foo, bar" + type: string + title: + description: A short human-readable summary of the warning. + example: "One or several indexes are missing or invalid, results hold data from the other indexes" + type: string + type: object + Spec: + description: A complete Workflow Automation definition, including its triggers, steps, and connections. + properties: + annotations: + description: Up to 100 text annotations displayed on the workflow canvas. + items: + $ref: "#/components/schemas/Annotation" + maxItems: 100 + type: array + connectionEnvs: + description: A list of connections or connection groups used in the workflow. + items: + $ref: "#/components/schemas/ConnectionEnv" + type: array + handle: + description: Unique identifier used to trigger workflows automatically in Datadog. + type: string + inputSchema: + $ref: "#/components/schemas/InputSchema" + outputSchema: + $ref: "#/components/schemas/OutputSchema" + steps: + description: A `Step` is a sub-component of a workflow. Each `Step` performs an action. + items: + $ref: "#/components/schemas/Step" + type: array + triggers: + description: The list of triggers that activate this workflow. At least one trigger is required, and each trigger type may appear at most once. + items: + $ref: "#/components/schemas/Trigger" + type: array + type: object + SpecVersion: + description: The version of the CycloneDX specification a BOM conforms to. + enum: + - "1.0" + - "1.1" + - "1.2" + - "1.3" + - "1.4" + - "1.5" + - "1.6" + example: "1.6" + type: string + x-enum-varnames: + - ONE_ZERO + - ONE_ONE + - ONE_TWO + - ONE_THREE + - ONE_FOUR + - ONE_FIVE + - ONE_SIX + SplitAPIKey: + description: The definition of the `SplitAPIKey` object. + properties: + api_key: + description: The `SplitAPIKey` `api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/SplitAPIKeyType" + required: + - type + - api_key + type: object + SplitAPIKeyType: + description: The definition of the `SplitAPIKey` object. + enum: + - SplitAPIKey + example: SplitAPIKey + type: string + x-enum-varnames: + - SPLITAPIKEY + SplitAPIKeyUpdate: + description: The definition of the `SplitAPIKey` object. + properties: + api_key: + description: The `SplitAPIKeyUpdate` `api_key`. + type: string + type: + $ref: "#/components/schemas/SplitAPIKeyType" + required: + - type + type: object + SplitCredentials: + description: The definition of the `SplitCredentials` object. + oneOf: + - $ref: "#/components/schemas/SplitAPIKey" + SplitCredentialsUpdate: + description: The definition of the `SplitCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/SplitAPIKeyUpdate" + SplitIntegration: + description: The definition of the `SplitIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/SplitCredentials" + type: + $ref: "#/components/schemas/SplitIntegrationType" + required: + - type + - credentials + type: object + SplitIntegrationType: + description: The definition of the `SplitIntegrationType` object. + enum: + - Split + example: Split + type: string + x-enum-varnames: + - SPLIT + SplitIntegrationUpdate: + description: The definition of the `SplitIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/SplitCredentialsUpdate" + type: + $ref: "#/components/schemas/SplitIntegrationType" + required: + - type + type: object + StartStepNames: + description: "Names of existing workflow steps that run first after a trigger fires." + example: + - "" + items: + description: The `StartStepNames` `items`. + minLength: 1 + type: string + type: array + State: + description: The state of the rule evaluation. + enum: [pass, fail, skip] + example: pass + type: string + x-enum-varnames: [PASS, FAIL, SKIP] + StateVariable: + description: A variable, which can be set and read by other components in the app. + properties: + id: + description: The ID of the state variable. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + name: + description: A unique identifier for this state variable. This name is also used to access the variable's value throughout the app. + example: "ordersToSubmit" + type: string + properties: + $ref: "#/components/schemas/StateVariableProperties" + type: + $ref: "#/components/schemas/StateVariableType" + required: + - id + - name + - type + - properties + type: object + StateVariableProperties: + description: The properties of the state variable. + properties: + defaultValue: + description: The default value of the state variable. + example: "${['order_3145', 'order_4920']}" + type: object + StateVariableType: + default: stateVariable + description: The state variable type. + enum: + - stateVariable + example: stateVariable + type: string + x-enum-varnames: + - STATEVARIABLE + StatsigAPIKey: + description: The definition of the `StatsigAPIKey` object. + properties: + api_key: + description: The `StatsigAPIKey` `api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/StatsigAPIKeyType" + required: + - type + - api_key + type: object + StatsigAPIKeyType: + description: The definition of the `StatsigAPIKey` object. + enum: + - StatsigAPIKey + example: StatsigAPIKey + type: string + x-enum-varnames: + - STATSIGAPIKEY + StatsigAPIKeyUpdate: + description: The definition of the `StatsigAPIKey` object. + properties: + api_key: + description: The `StatsigAPIKeyUpdate` `api_key`. + type: string + type: + $ref: "#/components/schemas/StatsigAPIKeyType" + required: + - type + type: object + StatsigCredentials: + description: The definition of the `StatsigCredentials` object. + oneOf: + - $ref: "#/components/schemas/StatsigAPIKey" + StatsigCredentialsUpdate: + description: The definition of the `StatsigCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/StatsigAPIKeyUpdate" + StatsigIntegration: + description: The definition of the `StatsigIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/StatsigCredentials" + type: + $ref: "#/components/schemas/StatsigIntegrationType" + required: + - type + - credentials + type: object + StatsigIntegrationType: + description: The definition of the `StatsigIntegrationType` object. + enum: + - Statsig + example: Statsig + type: string + x-enum-varnames: + - STATSIG + StatsigIntegrationUpdate: + description: The definition of the `StatsigIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/StatsigCredentialsUpdate" + type: + $ref: "#/components/schemas/StatsigIntegrationType" + required: + - type + type: object + StatusPage: + description: Response object for a single status page. + properties: + data: + $ref: "#/components/schemas/StatusPageData" + included: + description: The included related resources of a status page. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/StatusPageArrayIncluded" + type: array + type: object + StatusPageArray: + description: Response object for a list of status pages. + properties: + data: + description: A list of status page data objects. + items: + $ref: "#/components/schemas/StatusPageData" + type: array + included: + description: The included related resources of a status page. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/StatusPageArrayIncluded" + type: array + meta: + $ref: "#/components/schemas/PaginationMeta" + required: + - data + type: object + StatusPageArrayIncluded: + description: An included resource related to a status page. + oneOf: + - $ref: "#/components/schemas/StatusPagesUser" + StatusPageAsIncluded: + description: The included status page resource. + properties: + attributes: + $ref: "#/components/schemas/StatusPageAsIncludedAttributes" + id: + description: The ID of the status page. + format: uuid + type: string + relationships: + $ref: "#/components/schemas/StatusPageAsIncludedRelationships" + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + type: object + StatusPageAsIncludedAttributes: + description: The attributes of a status page. + properties: + company_logo: + description: The base64-encoded image data displayed in the company logo. + type: string + components: + description: Components displayed on the status page. + items: + $ref: "#/components/schemas/StatusPageAsIncludedAttributesComponentsItems" + type: array + created_at: + description: Timestamp of when the status page was created. + format: date-time + type: string + custom_domain: + description: If configured, the url that the status page is accessible at. + type: string + custom_domain_enabled: + description: Whether the custom domain is configured. + type: boolean + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + type: string + email_header_image: + description: Base64-encoded image data included in email notifications sent to status page subscribers. + type: string + enabled: + description: Whether the status page is enabled. + type: boolean + favicon: + description: Base64-encoded image data displayed in the browser tab. + type: string + modified_at: + description: Timestamp of when the status page was last modified. + format: date-time + type: string + name: + description: The name of the status page. + type: string + page_url: + description: The url that the status page is accessible at. + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + type: boolean + type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesType" + visualization_type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType" + type: object + StatusPageAsIncludedAttributesComponentsItems: + description: A component displayed on an included status page. + properties: + components: + description: If the component is of type `group`, the components within the group. + items: + $ref: "#/components/schemas/StatusPageAsIncludedAttributesComponentsItemsComponentsItems" + type: array + id: + description: The ID of the component. + format: uuid + readOnly: true + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesType" + type: object + StatusPageAsIncludedAttributesComponentsItemsComponentsItems: + description: A grouped component within a status page component group. + properties: + id: + description: The ID of the grouped component. + format: uuid + readOnly: true + type: string + name: + description: The name of the grouped component. + type: string + position: + description: The zero-indexed position of the grouped component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType" + type: object + StatusPageAsIncludedRelationships: + description: The relationships of a status page. + properties: + created_by_user: + $ref: "#/components/schemas/StatusPageAsIncludedRelationshipsCreatedByUser" + description: The Datadog user who created the status page. + last_modified_by_user: + $ref: "#/components/schemas/StatusPageAsIncludedRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the status page. + type: object + StatusPageAsIncludedRelationshipsCreatedByUser: + description: The Datadog user who created the status page. + properties: + data: + $ref: "#/components/schemas/StatusPageAsIncludedRelationshipsCreatedByUserData" + required: + - data + type: object + StatusPageAsIncludedRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the status page. + properties: + id: + description: The ID of the Datadog user who created the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPageAsIncludedRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the status page. + properties: + data: + $ref: "#/components/schemas/StatusPageAsIncludedRelationshipsLastModifiedByUserData" + required: + - data + type: object + StatusPageAsIncludedRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the status page. + properties: + id: + description: The ID of the Datadog user who last modified the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPageData: + description: The data object for a status page. + properties: + attributes: + $ref: "#/components/schemas/StatusPageDataAttributes" + id: + description: The ID of the status page. + format: uuid + type: string + relationships: + $ref: "#/components/schemas/StatusPageDataRelationships" + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + type: object + StatusPageDataAttributes: + description: The attributes of a status page. + properties: + company_logo: + description: Base64-encoded image data displayed on the status page. + nullable: true + type: string + components: + description: Components displayed on the status page. + items: + $ref: "#/components/schemas/StatusPageDataAttributesComponentsItems" + type: array + created_at: + description: Timestamp of when the status page was created. + format: date-time + type: string + custom_domain: + description: If configured, the url that the status page is accessible at. + nullable: true + type: string + custom_domain_enabled: + description: Whether the custom domain is configured. + type: boolean + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + type: string + email_header_image: + description: Base64-encoded image data included in email notifications sent to status page subscribers. + nullable: true + type: string + enabled: + description: Whether the status page is enabled. + type: boolean + favicon: + description: Base64-encoded image data displayed in the browser tab. + nullable: true + type: string + modified_at: + description: Timestamp of when the status page was last modified. + format: date-time + type: string + name: + description: The name of the status page. + type: string + page_url: + description: The url that the status page is accessible at. + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + type: boolean + type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesType" + visualization_type: + $ref: "#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType" + type: object + StatusPageDataAttributesComponentsItems: + description: A component displayed on a status page. + properties: + components: + description: If the component is of type `group`, the components within the group. + items: + $ref: "#/components/schemas/StatusPageDataAttributesComponentsItemsComponentsItems" + type: array + id: + description: The ID of the component. + format: uuid + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesType" + type: object + StatusPageDataAttributesComponentsItemsComponentsItems: + description: A grouped component within a status page component group. + properties: + id: + description: The ID of the component. + format: uuid + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType" + type: object + StatusPageDataRelationships: + description: The relationships of a status page. + properties: + created_by_user: + $ref: "#/components/schemas/StatusPageDataRelationshipsCreatedByUser" + description: The Datadog user who created the status page. + last_modified_by_user: + $ref: "#/components/schemas/StatusPageDataRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the status page. + type: object + StatusPageDataRelationshipsCreatedByUser: + description: The Datadog user who created the status page. + properties: + data: + $ref: "#/components/schemas/StatusPageDataRelationshipsCreatedByUserData" + required: + - data + type: object + StatusPageDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the status page. + properties: + id: + description: The ID of the Datadog user who created the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPageDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the status page. + properties: + data: + $ref: "#/components/schemas/StatusPageDataRelationshipsLastModifiedByUserData" + required: + - data + type: object + StatusPageDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the status page. + properties: + id: + description: The ID of the Datadog user who last modified the status page. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPageDataType: + default: status_pages + description: Status pages resource type. + enum: + - status_pages + example: status_pages + type: string + x-enum-varnames: + - STATUS_PAGES + StatusPagesComponent: + description: Response object for a single component. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentData" + included: + description: The included related resources of a component. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/StatusPagesComponentArrayIncluded" + type: array + type: object + StatusPagesComponentArray: + description: Response object for a list of components. + properties: + data: + description: A list of component data objects. + items: + $ref: "#/components/schemas/StatusPagesComponentData" + type: array + included: + description: The included related resources of a component. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: "#/components/schemas/StatusPagesComponentArrayIncluded" + type: array + required: + - data + type: object + StatusPagesComponentArrayIncluded: + description: An included resource related to a component. + oneOf: + - $ref: "#/components/schemas/StatusPagesUser" + - $ref: "#/components/schemas/StatusPageAsIncluded" + - $ref: "#/components/schemas/StatusPagesComponentGroup" + StatusPagesComponentData: + description: The data object for a component. + properties: + attributes: + $ref: "#/components/schemas/StatusPagesComponentDataAttributes" + id: + description: The ID of the component. + format: uuid + type: string + relationships: + $ref: "#/components/schemas/StatusPagesComponentDataRelationships" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - type + type: object + StatusPagesComponentDataAttributes: + description: The attributes of a component. + properties: + components: + description: If the component is of type `group`, the components within the group. + items: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesComponentsItems" + type: array + created_at: + description: Timestamp of when the component was created. + format: date-time + type: string + modified_at: + description: Timestamp of when the component was last modified. + format: date-time + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + type: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesType" + required: + - type + type: object + StatusPagesComponentDataAttributesComponentsItems: + description: A component within a component group. + properties: + id: + description: The ID of the component within the group. + format: uuid + readOnly: true + type: string + name: + description: The name of the component within the group. + type: string + position: + description: The zero-indexed position of the component within the group. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType" + type: object + StatusPagesComponentDataAttributesStatus: + description: The status of the component. + enum: + - operational + - degraded + - partial_outage + - major_outage + - maintenance + example: operational + type: string + x-enum-varnames: + - OPERATIONAL + - DEGRADED + - PARTIAL_OUTAGE + - MAJOR_OUTAGE + - MAINTENANCE + StatusPagesComponentDataRelationships: + description: The relationships of a component. + properties: + created_by_user: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsCreatedByUser" + description: The Datadog user who created the component. + group: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsGroup" + description: The group the component belongs to. + last_modified_by_user: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsLastModifiedByUser" + description: The Datadog user who last modified the component. + status_page: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsStatusPage" + description: The status page the component belongs to. + type: object + StatusPagesComponentDataRelationshipsCreatedByUser: + description: The Datadog user who created the component. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsCreatedByUserData" + required: + - data + type: object + StatusPagesComponentDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the component. + properties: + id: + description: The ID of the Datadog user who created the component. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPagesComponentDataRelationshipsGroup: + description: The group the component belongs to. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsGroupData" + required: + - data + type: object + StatusPagesComponentDataRelationshipsGroupData: + description: The data object identifying the group the component belongs to. + nullable: true + properties: + id: + description: The ID of the group the component belongs to. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - type + - id + type: object + StatusPagesComponentDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the component. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsLastModifiedByUserData" + required: + - data + type: object + StatusPagesComponentDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the component. + properties: + id: + description: The ID of the Datadog user who last modified the component. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPagesComponentDataRelationshipsStatusPage: + description: The status page the component belongs to. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentDataRelationshipsStatusPageData" + required: + - data + type: object + StatusPagesComponentDataRelationshipsStatusPageData: + description: The data object identifying the status page the component belongs to. + properties: + id: + description: The ID of the status page the component belongs to. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + StatusPagesComponentGroup: + description: The included component group resource. + properties: + attributes: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributes" + id: + description: The ID of the component. + format: uuid + type: string + relationships: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationships" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - type + type: object + StatusPagesComponentGroupAttributes: + description: The attributes of a component group. + properties: + components: + description: If the component is of type `group`, the components within the group. + items: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItems" + type: array + created_at: + description: Timestamp of when the component was created. + format: date-time + type: string + modified_at: + description: Timestamp of when the component was last modified. + format: date-time + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentDataAttributesStatus" + type: + $ref: "#/components/schemas/CreateComponentRequestDataAttributesType" + required: + - type + type: object + StatusPagesComponentGroupAttributesComponentsItems: + description: A component within a component group. + properties: + id: + description: The ID of the grouped component. + format: uuid + readOnly: true + type: string + name: + description: The name of the grouped component. + type: string + position: + description: The zero-indexed position of the grouped component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus" + type: + $ref: "#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType" + type: object + StatusPagesComponentGroupAttributesComponentsItemsStatus: + description: The status of the component. + enum: + - operational + - degraded + - partial_outage + - major_outage + - maintenance + readOnly: true + type: string + x-enum-varnames: + - OPERATIONAL + - DEGRADED + - PARTIAL_OUTAGE + - MAJOR_OUTAGE + - MAINTENANCE + StatusPagesComponentGroupAttributesComponentsItemsType: + description: The type of the component. + enum: + - component + example: component + type: string + x-enum-varnames: + - COMPONENT + StatusPagesComponentGroupRelationships: + description: The relationships of a component group. + properties: + created_by_user: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsCreatedByUser" + group: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsGroup" + last_modified_by_user: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsLastModifiedByUser" + status_page: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsStatusPage" + type: object + StatusPagesComponentGroupRelationshipsCreatedByUser: + description: The Datadog user who created the component group. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsCreatedByUserData" + required: + - data + type: object + StatusPagesComponentGroupRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the component group. + properties: + id: + description: The ID of the Datadog user who created the component group. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsGroup: + description: The group the component group belongs to. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsGroupData" + required: + - data + type: object + StatusPagesComponentGroupRelationshipsGroupData: + description: The data object identifying the parent group of a component group. + nullable: true + properties: + id: + description: The ID of the parent group. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesComponentGroupType" + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the component group. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsLastModifiedByUserData" + required: + - data + type: object + StatusPagesComponentGroupRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the component group. + properties: + id: + description: The ID of the Datadog user who last modified the component group. + example: "" + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsStatusPage: + description: The status page the component group belongs to. + properties: + data: + $ref: "#/components/schemas/StatusPagesComponentGroupRelationshipsStatusPageData" + required: + - data + type: object + StatusPagesComponentGroupRelationshipsStatusPageData: + description: The data object identifying the status page the component group belongs to. + properties: + id: + description: The ID of the status page. + example: "1234abcd-12ab-34cd-56ef-123456abcdef" + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPageDataType" + required: + - type + - id + type: object + StatusPagesComponentGroupType: + default: components + description: Components resource type. + enum: + - components + example: components + type: string + x-enum-varnames: + - COMPONENTS + StatusPagesUser: + description: The included Datadog user resource. + properties: + attributes: + $ref: "#/components/schemas/StatusPagesUserAttributes" + id: + description: The ID of the Datadog user. + format: uuid + type: string + type: + $ref: "#/components/schemas/StatusPagesUserType" + required: + - type + type: object + StatusPagesUserAttributes: + description: Attributes of the Datadog user. + properties: + email: + description: The email of the Datadog user. + type: string + handle: + description: The handle of the Datadog user. + type: string + icon: + description: The icon of the Datadog user. + type: string + name: + description: The name of the Datadog user. + type: string + uuid: + description: The UUID of the Datadog user. + type: string + type: object + StatusPagesUserType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + StatuspageAccountCreateAttributes: + description: The Statuspage account attributes for a create request. + properties: + api_key: + description: The Statuspage API key for your Statuspage account. + example: "00000000-0000-0000-0000-000000000000" + minLength: 1 + type: string + required: + - api_key + type: object + StatuspageAccountCreateData: + description: Statuspage account data for a create request. + properties: + attributes: + $ref: "#/components/schemas/StatuspageAccountCreateAttributes" + type: + $ref: "#/components/schemas/StatuspageAccountType" + required: + - type + - attributes + type: object + StatuspageAccountCreateRequest: + description: Create request for a Statuspage account. + properties: + data: + $ref: "#/components/schemas/StatuspageAccountCreateData" + required: + - data + type: object + StatuspageAccountResponse: + description: Response containing a Statuspage account. + properties: + data: + $ref: "#/components/schemas/StatuspageAccountResponseData" + required: + - data + type: object + StatuspageAccountResponseAttributes: + description: The attributes from a Statuspage account response. + properties: + api_key: + description: The Statuspage API key for your Statuspage account. The value is always returned masked. + example: "*****" + type: string + type: object + StatuspageAccountResponseData: + description: Statuspage account data from a response. + properties: + attributes: + $ref: "#/components/schemas/StatuspageAccountResponseAttributes" + type: + $ref: "#/components/schemas/StatuspageAccountType" + required: + - type + - attributes + type: object + StatuspageAccountType: + default: statuspage-account + description: Statuspage account resource type. + enum: + - statuspage-account + example: statuspage-account + type: string + x-enum-varnames: + - STATUSPAGE_ACCOUNT + StatuspageAccountUpdateAttributes: + description: The Statuspage account attributes for an update request. + properties: + api_key: + description: The Statuspage API key for your Statuspage account. + example: "00000000-0000-0000-0000-000000000000" + minLength: 1 + type: string + type: object + StatuspageAccountUpdateData: + description: Statuspage account data for an update request. + properties: + attributes: + $ref: "#/components/schemas/StatuspageAccountUpdateAttributes" + type: + $ref: "#/components/schemas/StatuspageAccountType" + required: + - type + - attributes + type: object + StatuspageAccountUpdateRequest: + description: Update request for a Statuspage account. + properties: + data: + $ref: "#/components/schemas/StatuspageAccountUpdateData" + required: + - data + type: object + StatuspageUrlSettingCreateAttributes: + description: The Statuspage URL setting attributes for a create request. + properties: + custom_tags: + description: Comma-separated list of custom tags to apply to events generated from this Statuspage URL. + example: "team:collaboration-integrations,env:prod" + minLength: 1 + type: string + url: + description: The Statuspage URL to monitor. Must be a `status.io` or `statuspage.com` URL. + example: "https://example.statuspage.io" + minLength: 1 + type: string + required: + - url + - custom_tags + type: object + StatuspageUrlSettingCreateData: + description: Statuspage URL setting data for a create request. + properties: + attributes: + $ref: "#/components/schemas/StatuspageUrlSettingCreateAttributes" + type: + $ref: "#/components/schemas/StatuspageUrlSettingType" + required: + - type + - attributes + type: object + StatuspageUrlSettingCreateRequest: + description: Create request for a Statuspage URL setting. + properties: + data: + $ref: "#/components/schemas/StatuspageUrlSettingCreateData" + required: + - data + type: object + StatuspageUrlSettingResponse: + description: Response containing a Statuspage URL setting. + properties: + data: + $ref: "#/components/schemas/StatuspageUrlSettingResponseData" + required: + - data + type: object + StatuspageUrlSettingResponseAttributes: + description: The attributes from a Statuspage URL setting response. + properties: + custom_tags: + description: Comma-separated list of custom tags applied to events generated from this Statuspage URL. + example: "team:collaboration-integrations,env:prod" + type: string + url: + description: The Statuspage URL being monitored. + example: "https://example.statuspage.io" + type: string + type: object + StatuspageUrlSettingResponseData: + description: Statuspage URL setting data from a response. + properties: + attributes: + $ref: "#/components/schemas/StatuspageUrlSettingResponseAttributes" + id: + description: The ID of the Statuspage URL setting. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/StatuspageUrlSettingType" + required: + - id + - type + - attributes + type: object + StatuspageUrlSettingType: + default: statuspage-url-setting + description: Statuspage URL setting resource type. + enum: + - statuspage-url-setting + example: statuspage-url-setting + type: string + x-enum-varnames: + - STATUSPAGE_URL_SETTING + StatuspageUrlSettingUpdateAttributes: + description: The Statuspage URL setting attributes for an update request. + properties: + custom_tags: + description: Comma-separated list of custom tags to apply to events generated from this Statuspage URL. + example: "team:collaboration-integrations,env:prod" + minLength: 1 + type: string + url: + description: The Statuspage URL to monitor. + example: "https://example.statuspage.io" + minLength: 1 + type: string + type: object + StatuspageUrlSettingUpdateData: + description: Statuspage URL setting data for an update request. + properties: + attributes: + $ref: "#/components/schemas/StatuspageUrlSettingUpdateAttributes" + id: + description: The ID of the Statuspage URL setting. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/StatuspageUrlSettingType" + required: + - id + - type + - attributes + type: object + StatuspageUrlSettingUpdateRequest: + description: Update request for a Statuspage URL setting. + properties: + data: + $ref: "#/components/schemas/StatuspageUrlSettingUpdateData" + required: + - data + type: object + StatuspageUrlSettingsResponse: + description: Response with a list of Statuspage URL settings. + properties: + data: + description: An array of Statuspage URL settings. + example: [{"attributes": {"custom_tags": "team:collaboration-integrations", "url": "https://example.statuspage.io"}, "id": "596da4af-0563-4097-90ff-07230c3f9db3", "type": "statuspage-url-setting"}] + items: + $ref: "#/components/schemas/StatuspageUrlSettingResponseData" + type: array + required: + - data + type: object + StegadographyGetWidgetsRequest: + description: Multipart form data containing the PNG image to scan for watermarks. + properties: + image: + description: PNG image file to scan for embedded watermarks. + example: "screenshot.png" + format: binary + type: string + required: + - image + type: object + StegadographyGetWidgetsResponse: + description: Response containing watermarked widgets recovered from an image. + properties: + data: + $ref: "#/components/schemas/StegadographyWidgetItems" + required: + - data + type: object + StegadographyWidget: + description: A single watermarked widget resource recovered from an image. + properties: + attributes: + $ref: "#/components/schemas/StegadographyWidgetAttributes" + id: + description: Composite identifier formed from the organization ID and watermark, separated by a colon. + example: "abc123:0123456789abcdef" + type: string + type: + $ref: "#/components/schemas/StegadographyWidgetType" + required: + - id + - type + - attributes + type: object + StegadographyWidgetAttributes: + description: Attributes of a watermarked widget recovered from an image. + properties: + locationx: + description: Horizontal pixel coordinate where the watermark was found in the image. + example: 100 + format: int64 + type: integer + locationy: + description: Vertical pixel coordinate where the watermark was found in the image. + example: 200 + format: int64 + type: integer + rawData: + description: JSON-encoded string representing the widget state. + example: '{"widgetType":"timeseries","requests":[]}' + type: string + watermark: + description: Hex-encoded watermark string identifying the widget. + example: "0123456789abcdef" + type: string + required: + - rawData + - watermark + - locationx + - locationy + type: object + StegadographyWidgetItems: + description: List of watermarked widget resources recovered from an image. + example: + - attributes: + locationx: 100 + locationy: 200 + rawData: '{"widgetType":"timeseries","requests":[]}' + watermark: "0123456789abcdef" + id: "abc123:0123456789abcdef" + type: widget + items: + $ref: "#/components/schemas/StegadographyWidget" + type: array + StegadographyWidgetType: + description: Stegadography widget resource type. + enum: + - widget + example: widget + type: string + x-enum-varnames: + - WIDGET + Step: + description: A Step is a sub-component of a workflow. Each Step performs an action. + properties: + actionId: + description: The unique identifier of an action. + example: "" + minLength: 1 + type: string + completionGate: + $ref: "#/components/schemas/CompletionGate" + connectionLabel: + description: The unique identifier of a connection defined in the spec. + type: string + display: + $ref: "#/components/schemas/StepDisplay" + errorHandlers: + description: The `Step` `errorHandlers`. + items: + $ref: "#/components/schemas/ErrorHandler" + type: array + name: + description: Name of the step. + example: "" + minLength: 1 + type: string + outboundEdges: + description: A list of subsequent actions to run. This list is empty for a terminal step. + items: + $ref: "#/components/schemas/OutboundEdge" + type: array + parameters: + description: A list of inputs for an action. + items: + $ref: "#/components/schemas/Parameter" + type: array + readinessGate: + $ref: "#/components/schemas/ReadinessGate" + required: + - name + - actionId + type: object + StepDisplay: + description: |- + The position of a step on the workflow canvas. Omit `display` from every step to use + automatic layout, or provide it for every step to preserve a manual layout. + properties: + bounds: + $ref: "#/components/schemas/StepDisplayBounds" + type: object + StepDisplayBounds: + description: The definition of `StepDisplayBounds` object. + properties: + x: + description: The `bounds` `x`. + format: double + type: number + y: + description: The `bounds` `y`. + format: double + type: number + type: object + SuiteCreateEdit: + description: Data object for creating or editing a Synthetic test suite. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsSuite" + type: + $ref: "#/components/schemas/SyntheticsSuiteTypes" + required: + - attributes + - type + type: object + SuiteCreateEditRequest: + description: Request body for creating or editing a Synthetic test suite. + properties: + data: + $ref: "#/components/schemas/SuiteCreateEdit" + required: + - data + type: object + SuiteJsonPatchRequest: + description: JSON Patch request for a Synthetic test suite. + properties: + data: + $ref: "#/components/schemas/SuiteJsonPatchRequestData" + required: + - data + type: object + SuiteJsonPatchRequestData: + description: Data object for a JSON Patch request on a Synthetic test suite. + properties: + attributes: + $ref: "#/components/schemas/SuiteJsonPatchRequestDataAttributes" + type: + $ref: "#/components/schemas/SuiteJsonPatchType" + type: object + SuiteJsonPatchRequestDataAttributes: + description: Attributes for a JSON Patch request on a Synthetic test suite. + properties: + json_patch: + description: JSON Patch operations following RFC 6902. + items: + $ref: "#/components/schemas/JsonPatchOperation" + type: array + type: object + SuiteJsonPatchType: + default: suites_json_patch + description: Type for a JSON Patch request on a Synthetic test suite, `suites_json_patch`. + enum: + - suites_json_patch + example: suites_json_patch + type: string + x-enum-varnames: + - SUITES_JSON_PATCH + SuiteSearchResponseType: + default: suites_search + description: Type for the Synthetics suites search response, `suites_search`. + enum: + - suites_search + example: suites_search + type: string + x-enum-varnames: + - SUITES_SEARCH + SummarizedSpan: + description: A node in the pruned trace tree. + properties: + children: + description: The child spans of this node in the pruned tree. + example: [] + items: + $ref: "#/components/schemas/SummarizedSpan" + type: array + durationSeconds: + description: The duration of the span, in seconds. + example: 0.5 + format: double + type: number + endTime: + description: The end time of the span, in RFC3339 format. + example: "2026-05-27T12:00:00.5Z" + format: date-time + type: string + error: + $ref: "#/components/schemas/APMSpanErrorFlag" + hidden_child_spans_count: + description: The number of child spans that were pruned from this node when summarizing the trace. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + meta: + additionalProperties: + type: string + description: String-valued tags attached to the span. + example: + env: production + type: object + metrics: + additionalProperties: + format: double + type: number + description: Numeric metrics attached to the span. + example: + http.status_code: 200 + type: object + name: + description: The operation name of the span. + example: web.request + type: string + parentID: + description: The ID of the parent span, or `0` when the span is the trace root. + example: 0 + format: int64 + type: integer + resource: + description: The resource that the span describes. + example: GET /products + type: string + service: + description: The name of the service that emitted the span. + example: web-store + type: string + spanID: + description: The span ID, as an unsigned 64-bit integer. + example: 9876543210987654321 + format: int64 + type: integer + span_kind: + description: |- + The OpenTelemetry span kind, for example `INTERNAL`, `SERVER`, `CLIENT`, + `PRODUCER`, or `CONSUMER`. + example: SERVER + type: string + startTime: + description: The start time of the span, in RFC3339 format. + example: "2026-05-27T12:00:00Z" + format: date-time + type: string + required: + - service + - name + - resource + - parentID + - spanID + - startTime + - endTime + - durationSeconds + - error + - meta + - metrics + - span_kind + - hidden_child_spans_count + - children + type: object + SummarizedTrace: + description: A summarized, hierarchical view of a trace. + properties: + root: + $ref: "#/components/schemas/SummarizedSpan" + traceId: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: "0000000000000000abc1230000000000" + type: string + required: + - traceId + - root + type: object + SuppressionVersionHistory: + description: Response object containing the version history of a suppression. + properties: + count: + description: The number of suppression versions. + format: int32 + maximum: 2147483647 + type: integer + data: + additionalProperties: + $ref: "#/components/schemas/SuppressionVersions" + description: A suppression version with a list of updates. + description: The version history of a suppression. + type: object + type: object + SuppressionVersions: + description: A suppression version with a list of updates. + properties: + changes: + description: A list of changes. + items: + $ref: "#/components/schemas/VersionHistoryUpdate" + type: array + suppression: + $ref: "#/components/schemas/SecurityMonitoringSuppressionAttributes" + type: object + SyncProperty: + description: Sync property configuration. + properties: + sync_type: + description: The direction and type of synchronization for this property. + type: string + type: object + SyncPropertyWithMapping: + description: Sync property with mapping configuration. + properties: + mapping: + additionalProperties: + type: string + description: Map of source values to destination values for synchronization. + type: object + name_mapping: + additionalProperties: + type: string + description: Map of source names to display names used during synchronization. + type: object + sync_type: + description: The direction and type of synchronization for this property. + type: string + type: object + SyntheticsApiMultistepParentTestAttributes: + description: Attributes of a parent API multistep test. + properties: + child_name: + description: The name of the child subtest. + example: My API Subtest + type: string + child_public_id: + description: The public ID of the child subtest. + example: xyz-uvw-789 + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + type: integer + name: + description: Name of the parent test. + example: My Multistep Test + type: string + overall_state: + description: The overall state of the parent test. + example: 0 + format: int64 + type: integer + overall_state_modified: + description: Timestamp of when the overall state was last modified. + example: "2024-01-01T00:00:00+00:00" + type: string + public_id: + description: The public ID of the parent test. + example: abc-def-123 + type: string + type: object + SyntheticsApiMultistepParentTestData: + description: Data object for a parent API multistep test. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsApiMultistepParentTestAttributes" + id: + description: The public ID of the parent test. + example: abc-def-123 + type: string + type: + $ref: "#/components/schemas/SyntheticsApiMultistepParentTestType" + type: object + SyntheticsApiMultistepParentTestType: + default: parent_test + description: Type of the parent test resource. + enum: + - parent_test + example: parent_test + type: string + x-enum-varnames: + - PARENT_TEST + SyntheticsApiMultistepParentTestsResponse: + description: |- + Response containing the list of parent tests for an API multistep subtest. + properties: + data: + description: List of parent tests that include this subtest. + items: + $ref: "#/components/schemas/SyntheticsApiMultistepParentTestData" + type: array + type: object + SyntheticsApiMultistepSubtestAttributes: + description: Attributes of a Synthetic API multistep subtest. + properties: + name: + description: Name of the subtest. + example: My API Test + type: string + public_id: + description: The public ID of the subtest. + example: abc-def-123 + type: string + type: object + SyntheticsApiMultistepSubtestData: + description: Data object for a Synthetic API multistep subtest. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsApiMultistepSubtestAttributes" + id: + description: The public ID of the subtest. + example: abc-def-123 + type: string + type: + $ref: "#/components/schemas/SyntheticsApiMultistepSubtestType" + type: object + SyntheticsApiMultistepSubtestType: + default: subtest + description: Type of the subtest resource. + enum: + - subtest + example: subtest + type: string + x-enum-varnames: + - SUBTEST + SyntheticsApiMultistepSubtestsResponse: + description: |- + Response containing the list of available subtests for an API multistep test. + properties: + data: + description: List of API tests that can be added as subtests. + items: + $ref: "#/components/schemas/SyntheticsApiMultistepSubtestData" + type: array + type: object + SyntheticsDowntimeData: + description: A Synthetics downtime object. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsDowntimeDataAttributesResponse" + id: + description: The unique identifier of the downtime. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/SyntheticsDowntimeResourceType" + required: + - id + - type + - attributes + type: object + SyntheticsDowntimeDataAttributesRequest: + description: Attributes for creating or updating a Synthetics downtime. + properties: + description: + description: An optional description of the downtime. + example: Scheduled weekly maintenance window. + type: string + isEnabled: + description: Whether the downtime is enabled. + example: true + type: boolean + name: + description: The name of the downtime. + example: Weekly maintenance + type: string + tags: + $ref: "#/components/schemas/SyntheticsDowntimeTags" + testIds: + $ref: "#/components/schemas/SyntheticsDowntimeTestIds" + timeSlots: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotRequests" + required: + - name + - isEnabled + - timeSlots + - testIds + type: object + SyntheticsDowntimeDataAttributesResponse: + description: Attributes of a Synthetics downtime response object. + properties: + createdAt: + description: The timestamp when the downtime was created. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + createdBy: + description: The UUID of the user who created the downtime. + example: "00000000-0000-0000-0000-000000000003" + type: string + createdByName: + description: The display name of the user who created the downtime. + example: Jane Doe + type: string + description: + description: The description of the downtime. + example: Scheduled weekly maintenance window. + type: string + isEnabled: + description: Whether the downtime is enabled. + example: true + type: boolean + name: + description: The name of the downtime. + example: Weekly maintenance + type: string + tags: + $ref: "#/components/schemas/SyntheticsDowntimeTags" + testIds: + $ref: "#/components/schemas/SyntheticsDowntimeTestIds" + timeSlots: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotResponses" + updatedAt: + description: The timestamp when the downtime was last updated. + example: "2024-01-15T10:30:00Z" + format: date-time + type: string + updatedBy: + description: The UUID of the user who last updated the downtime. + example: "00000000-0000-0000-0000-000000000003" + type: string + updatedByName: + description: The display name of the user who last updated the downtime. + example: Jane Doe + type: string + required: + - name + - description + - isEnabled + - createdBy + - createdByName + - createdAt + - updatedBy + - updatedByName + - updatedAt + - timeSlots + - testIds + - tags + type: object + SyntheticsDowntimeDataList: + description: List of Synthetics downtime objects. + example: + - attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + items: + $ref: "#/components/schemas/SyntheticsDowntimeData" + type: array + SyntheticsDowntimeDataRequest: + description: The data object for a Synthetics downtime create or update request. + example: + attributes: + isEnabled: true + name: Weekly maintenance + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + type: downtime + properties: + attributes: + $ref: "#/components/schemas/SyntheticsDowntimeDataAttributesRequest" + type: + $ref: "#/components/schemas/SyntheticsDowntimeResourceType" + required: + - type + - attributes + type: object + SyntheticsDowntimeFrequency: + description: The recurrence frequency of a Synthetics downtime time slot. + enum: + - DAILY + - WEEKLY + - MONTHLY + - YEARLY + example: WEEKLY + type: string + x-enum-varnames: + - DAILY + - WEEKLY + - MONTHLY + - YEARLY + SyntheticsDowntimeRequest: + description: Request body for creating or updating a Synthetics downtime. + properties: + data: + $ref: "#/components/schemas/SyntheticsDowntimeDataRequest" + required: + - data + type: object + SyntheticsDowntimeResourceType: + description: The resource type for a Synthetics downtime. + enum: + - downtime + example: downtime + type: string + x-enum-varnames: + - DOWNTIME + SyntheticsDowntimeResponse: + description: Response containing a single Synthetics downtime. + properties: + data: + $ref: "#/components/schemas/SyntheticsDowntimeData" + required: + - data + type: object + SyntheticsDowntimeTags: + description: List of tags associated with a Synthetics downtime. + example: + - "team:backend" + - "env:prod" + items: + description: A tag. + type: string + type: array + SyntheticsDowntimeTestIds: + description: List of Synthetics test public IDs associated with a downtime. + example: + - abc-def-123 + - xyz-uvw-456 + items: + description: A Synthetics test public ID. + type: string + type: array + SyntheticsDowntimeTimeSlotDate: + description: A specific date and time used to define the start or end of a Synthetics downtime time slot. + properties: + day: + description: The day component of the date (1-31). + example: 15 + format: int64 + type: integer + hour: + description: The hour component of the time (0-23). + example: 10 + format: int64 + type: integer + minute: + description: The minute component of the time (0-59). + example: 30 + format: int64 + type: integer + month: + description: The month component of the date (1-12). + example: 1 + format: int64 + type: integer + year: + description: The year component of the date. + example: 2024 + format: int64 + type: integer + required: + - year + - month + - day + - hour + - minute + type: object + SyntheticsDowntimeTimeSlotRecurrenceRequest: + description: Recurrence settings for a Synthetics downtime time slot. + properties: + end: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotDate" + frequency: + $ref: "#/components/schemas/SyntheticsDowntimeFrequency" + interval: + description: The interval between recurrences, relative to the frequency. + example: 1 + format: int64 + type: integer + weekdayPositions: + $ref: "#/components/schemas/SyntheticsDowntimeWeekdayPositions" + weekdays: + $ref: "#/components/schemas/SyntheticsDowntimeWeekdays" + required: + - frequency + type: object + SyntheticsDowntimeTimeSlotRecurrenceResponse: + description: Recurrence settings returned in a Synthetics downtime time slot response. + properties: + frequency: + $ref: "#/components/schemas/SyntheticsDowntimeFrequency" + interval: + description: The interval between recurrences, relative to the frequency. + example: 1 + format: int64 + type: integer + until: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotDate" + weekdayPositions: + $ref: "#/components/schemas/SyntheticsDowntimeWeekdayPositions" + weekdays: + $ref: "#/components/schemas/SyntheticsDowntimeWeekdays" + required: + - frequency + - interval + - weekdays + type: object + SyntheticsDowntimeTimeSlotRequest: + description: A time slot for a Synthetics downtime create or update request. + properties: + duration: + description: The duration of the time slot in seconds, between 60 and 604800. + example: 3600 + format: int64 + type: integer + name: + description: An optional label for the time slot. + example: Weekly maintenance window + type: string + recurrence: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotRecurrenceRequest" + start: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotDate" + timezone: + description: The IANA timezone name for the time slot. + example: Europe/Paris + type: string + required: + - start + - timezone + - duration + type: object + SyntheticsDowntimeTimeSlotRequests: + description: List of time slots for a Synthetics downtime create or update request. + example: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + items: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotRequest" + type: array + SyntheticsDowntimeTimeSlotResponse: + description: A time slot returned in a Synthetics downtime response. + properties: + duration: + description: The duration of the time slot in seconds. + example: 3600 + format: int64 + type: integer + id: + description: The unique identifier of the time slot. + example: "00000000-0000-0000-0000-000000000002" + type: string + name: + description: The label for the time slot. + example: Weekly maintenance window + type: string + recurrence: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotRecurrenceResponse" + start: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotDate" + timezone: + description: The IANA timezone name for the time slot. + example: Europe/Paris + type: string + required: + - id + - start + - timezone + - duration + type: object + SyntheticsDowntimeTimeSlotResponses: + description: List of time slots in a Synthetics downtime response. + example: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + items: + $ref: "#/components/schemas/SyntheticsDowntimeTimeSlotResponse" + type: array + SyntheticsDowntimeWeekday: + description: A day of the week for a Synthetics downtime recurrence. + enum: + - MO + - TU + - WE + - TH + - FR + - SA + - SU + example: MO + type: string + x-enum-varnames: + - MONDAY + - TUESDAY + - WEDNESDAY + - THURSDAY + - FRIDAY + - SATURDAY + - SUNDAY + SyntheticsDowntimeWeekdayPosition: + description: >- + The position of a weekday within a month for a monthly Synthetics downtime recurrence. `1` through `4` select the first through fourth occurrence of the weekday in the month, and `-1` selects the last occurrence. + enum: + - 1 + - 2 + - 3 + - 4 + - -1 + example: 1 + format: int64 + type: integer + x-enum-varnames: + - FIRST + - SECOND + - THIRD + - FOURTH + - LAST + SyntheticsDowntimeWeekdayPositions: + description: >- + Positions of the weekdays within a month for a monthly Synthetics downtime recurrence. Used in combination with `weekdays` to schedule occurrences such as "the first Monday of the month". + example: + - 1 + items: + $ref: "#/components/schemas/SyntheticsDowntimeWeekdayPosition" + type: array + SyntheticsDowntimeWeekdays: + description: Days of the week for a Synthetics downtime recurrence schedule. + example: + - MO + - WE + - FR + items: + $ref: "#/components/schemas/SyntheticsDowntimeWeekday" + type: array + SyntheticsDowntimesResponse: + description: Response containing a list of Synthetics downtimes. + properties: + data: + $ref: "#/components/schemas/SyntheticsDowntimeDataList" + required: + - data + type: object + SyntheticsFastTestResult: + description: |- + Fast test result response. Returns `null` if the result is not yet available + (the test is still running or timed out before completing). + nullable: true + properties: + data: + $ref: "#/components/schemas/SyntheticsFastTestResultData" + type: object + SyntheticsFastTestResultAttributes: + description: Attributes of the fast test result. + properties: + device: + $ref: "#/components/schemas/SyntheticsTestResultDevice" + location: + $ref: "#/components/schemas/SyntheticsTestResultLocation" + result: + $ref: "#/components/schemas/SyntheticsFastTestResultDetail" + test_sub_type: + $ref: "#/components/schemas/SyntheticsFastTestSubType" + test_type: + $ref: "#/components/schemas/SyntheticsFastTestType" + test_version: + description: Version of the test at the time the fast test was triggered. + example: 1 + format: int64 + type: integer + type: object + SyntheticsFastTestResultData: + description: Fast test result data object (JSON:API format). + properties: + attributes: + $ref: "#/components/schemas/SyntheticsFastTestResultAttributes" + id: + description: The UUID of the fast test, used as the result identifier. + example: abc12345-1234-1234-1234-abc123456789 + type: string + type: + $ref: "#/components/schemas/SyntheticsFastTestResultType" + type: object + SyntheticsFastTestResultDetail: + description: |- + Detailed result data for the fast test run. The exact shape of nested fields + (`request`, `response`, `assertions`, etc.) depends on the test subtype. + properties: + assertions: + description: Results of each assertion evaluated during the test. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + cert: + $ref: "#/components/schemas/SyntheticsTestResultCertificate" + duration: + description: Total duration of the test in milliseconds. + example: 150.5 + format: double + type: number + failure: + $ref: "#/components/schemas/SyntheticsTestResultFailure" + finished_at: + description: Unix timestamp (ms) of when the test finished. + example: 1679328001000 + format: int64 + type: integer + id: + description: The result ID. Set to the fast test UUID because no persistent result ID exists for fast tests. + example: abc12345-1234-1234-1234-abc123456789 + type: string + is_fast_retry: + description: Whether this result is from an automatic fast retry. + example: false + type: boolean + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + resolved_ip: + description: IP address resolved for the target host. + example: "1.2.3.4" + type: string + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + run_type: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + started_at: + description: Unix timestamp (ms) of when the test started. + example: 1679328000000 + format: int64 + type: integer + status: + description: Status of the test result (`passed` or `failed`). + example: passed + type: string + steps: + description: Step results for multistep API tests. + items: + $ref: "#/components/schemas/SyntheticsTestResultStep" + type: array + timings: + additionalProperties: {} + description: Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + traceroute: + description: Traceroute hop results, present for ICMP and TCP tests. + items: + $ref: "#/components/schemas/SyntheticsTestResultTracerouteHop" + type: array + triggered_at: + description: Unix timestamp (ms) of when the test was triggered. + example: 1679327999000 + format: int64 + type: integer + tunnel: + description: Whether the test was run through a Synthetics tunnel. + example: false + type: boolean + type: object + SyntheticsFastTestResultType: + default: result + description: JSON:API type for a fast test result. + enum: + - result + example: result + type: string + x-enum-varnames: + - RESULT + SyntheticsFastTestSubType: + description: Subtype of the Synthetic test that produced this result. + enum: + - dns + - grpc + - http + - icmp + - mcp + - multi + - ssl + - tcp + - udp + - websocket + example: http + type: string + x-enum-varnames: + - DNS + - GRPC + - HTTP + - ICMP + - MCP + - MULTI + - SSL + - TCP + - UDP + - WEBSOCKET + SyntheticsFastTestType: + description: Type of the Synthetic fast test that produced this result. + enum: + - fast-api + - fast-browser + example: fast-api + type: string + x-enum-varnames: + - FAST_API + - FAST_BROWSER + SyntheticsGlobalVariable: + description: Synthetic global variable. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsGlobalVariableAttributes" + description: + description: Description of the global variable. + example: "Example description" + type: string + id: + description: Unique identifier of the global variable. + readOnly: true + type: string + is_fido: + description: Determines if the global variable is a FIDO variable. + type: boolean + is_totp: + description: Determines if the global variable is a TOTP/MFA variable. + type: boolean + name: + description: Name of the global variable. Unique across Synthetic global variables. + example: "MY_VARIABLE" + type: string + parse_test_options: + $ref: "#/components/schemas/SyntheticsGlobalVariableParseTestOptions" + parse_test_public_id: + description: A Synthetic test ID to use as a test to generate the variable value. + example: "abc-def-123" + type: string + tags: + description: Tags of the global variable. + example: ["team:front", "test:workflow-1"] + items: + description: Tag name. + type: string + type: array + value: + $ref: "#/components/schemas/SyntheticsGlobalVariableValue" + required: + - description + - name + - tags + - value + type: object + SyntheticsGlobalVariableAttributes: + description: Attributes of the global variable. + properties: + restricted_roles: + $ref: "#/components/schemas/SyntheticsRestrictedRoles" + type: object + SyntheticsGlobalVariableOptions: + description: Options for the Global Variable for MFA. + properties: + totp_parameters: + $ref: "#/components/schemas/SyntheticsGlobalVariableTOTPParameters" + type: object + SyntheticsGlobalVariableParseTestOptions: + description: Parser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with `parse_test_public_id`. + properties: + field: + description: When type is `http_header`, name of the header to use to extract the value. + example: "content-type" + type: string + localVariableName: + description: When type is `local_variable`, name of the local variable to use to extract the value. + example: "LOCAL_VARIABLE" + type: string + parser: + $ref: "#/components/schemas/SyntheticsVariableParser" + type: + $ref: "#/components/schemas/SyntheticsGlobalVariableParseTestOptionsType" + required: + - type + type: object + SyntheticsGlobalVariableParseTestOptionsType: + description: Type of value to extract from a test for a Synthetic global variable. + enum: + - http_body + - http_header + - http_status_code + - local_variable + example: http_body + type: string + x-enum-varnames: + - HTTP_BODY + - HTTP_HEADER + - HTTP_STATUS_CODE + - LOCAL_VARIABLE + SyntheticsGlobalVariableParserType: + description: Type of parser for a Synthetic global variable from a synthetics test. + enum: + - raw + - json_path + - regex + - x_path + example: raw + type: string + x-enum-varnames: + - RAW + - JSON_PATH + - REGEX + - X_PATH + SyntheticsGlobalVariableTOTPParameters: + description: "Parameters for the TOTP/MFA variable" + properties: + digits: + description: Number of digits for the OTP code. + example: 6 + format: int32 + maximum: 10 + minimum: 4 + type: integer + refresh_interval: + description: Interval for which to refresh the token (in seconds). + example: 30 + format: int32 + maximum: 999 + minimum: 0 + type: integer + type: object + SyntheticsGlobalVariableValue: + description: Value of the global variable. + example: + secure: true + value: value + properties: + options: + $ref: "#/components/schemas/SyntheticsGlobalVariableOptions" + secure: + description: Determines if the value of the variable is hidden. + type: boolean + value: + description: |- + Value of the global variable. When reading a global variable, + the value will not be present if the variable is hidden with the `secure` property. + example: "example-value" + type: string + type: object + SyntheticsNetworkAssertion: + description: Object describing an assertion for a Network Path test. + oneOf: + - $ref: "#/components/schemas/SyntheticsNetworkAssertionLatency" + - $ref: "#/components/schemas/SyntheticsNetworkAssertionMultiNetworkHop" + - $ref: "#/components/schemas/SyntheticsNetworkAssertionPacketLossPercentage" + - $ref: "#/components/schemas/SyntheticsNetworkAssertionJitter" + SyntheticsNetworkAssertionJitter: + description: Jitter assertion for a Network Path test. + properties: + operator: + $ref: "#/components/schemas/SyntheticsNetworkAssertionOperator" + target: + description: Target value in milliseconds. + example: 5 + format: double + type: number + type: + $ref: "#/components/schemas/SyntheticsNetworkAssertionJitterType" + required: + - operator + - target + - type + type: object + SyntheticsNetworkAssertionJitterType: + default: jitter + description: Type of the jitter assertion. + enum: + - jitter + example: jitter + type: string + x-enum-varnames: + - JITTER + SyntheticsNetworkAssertionLatency: + description: Network latency assertion for a Network Path test. + properties: + operator: + $ref: "#/components/schemas/SyntheticsNetworkAssertionOperator" + property: + $ref: "#/components/schemas/SyntheticsNetworkAssertionProperty" + target: + description: Target value in milliseconds. + example: 500 + format: double + type: number + type: + $ref: "#/components/schemas/SyntheticsNetworkAssertionLatencyType" + required: + - operator + - property + - target + - type + type: object + SyntheticsNetworkAssertionLatencyType: + default: latency + description: Type of the latency assertion. + enum: + - latency + example: latency + type: string + x-enum-varnames: + - LATENCY + SyntheticsNetworkAssertionMultiNetworkHop: + description: Multi-network hop assertion for a Network Path test. + properties: + operator: + $ref: "#/components/schemas/SyntheticsNetworkAssertionOperator" + property: + $ref: "#/components/schemas/SyntheticsNetworkAssertionProperty" + target: + description: Target value in number of hops. + example: 3 + format: double + type: number + type: + $ref: "#/components/schemas/SyntheticsNetworkAssertionMultiNetworkHopType" + required: + - operator + - property + - target + - type + type: object + SyntheticsNetworkAssertionMultiNetworkHopType: + default: multiNetworkHop + description: Type of the multi-network hop assertion. + enum: + - multiNetworkHop + example: multiNetworkHop + type: string + x-enum-varnames: + - MULTI_NETWORK_HOP + SyntheticsNetworkAssertionOperator: + description: Assertion operator to apply. + enum: + - is + - isNot + - lessThan + - lessThanOrEqual + - moreThan + - moreThanOrEqual + example: lessThan + type: string + x-enum-varnames: + - IS + - IS_NOT + - LESS_THAN + - LESS_THAN_OR_EQUAL + - MORE_THAN + - MORE_THAN_OR_EQUAL + SyntheticsNetworkAssertionPacketLossPercentage: + description: Packet loss percentage assertion for a Network Path test. + properties: + operator: + $ref: "#/components/schemas/SyntheticsNetworkAssertionOperator" + target: + description: Target value as a percentage (0 to 1). + example: 0.05 + format: double + maximum: 1 + minimum: 0 + type: number + type: + $ref: "#/components/schemas/SyntheticsNetworkAssertionPacketLossPercentageType" + required: + - operator + - target + - type + type: object + SyntheticsNetworkAssertionPacketLossPercentageType: + default: packetLossPercentage + description: Type of the packet loss percentage assertion. + enum: + - packetLossPercentage + example: packetLossPercentage + type: string + x-enum-varnames: + - PACKET_LOSS_PERCENTAGE + SyntheticsNetworkAssertionProperty: + description: The associated assertion property. + enum: + - avg + - max + - min + example: avg + type: string + x-enum-varnames: + - AVG + - MAX + - MIN + SyntheticsNetworkTest: + description: Object containing details about a Network Path test. + properties: + config: + $ref: "#/components/schemas/SyntheticsNetworkTestConfig" + locations: + description: |- + Array of locations used to run the test. Network Path tests can be run from managed locations to test public endpoints, + or from a [Datadog Agent](https://docs.datadoghq.com/synthetics/network_path_tests/#agent-configuration) to test private environments. + example: ["aws:us-east-1", "agent:my-agent-name"] + items: + description: A location to run the test from. + type: string + type: array + message: + description: Notification message associated with the test. + example: "Network Path test notification" + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: "Example Network Path test" + type: string + options: + $ref: "#/components/schemas/SyntheticsTestOptions" + public_id: + description: The public ID for the test. + example: abc-def-123 + readOnly: true + type: string + status: + $ref: "#/components/schemas/SyntheticsTestPauseStatus" + subtype: + $ref: "#/components/schemas/SyntheticsNetworkTestSubType" + tags: + description: Array of tags attached to the test. + example: ["env:production"] + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: "#/components/schemas/SyntheticsNetworkTestType" + required: + - name + - config + - locations + - options + - type + - message + type: object + SyntheticsNetworkTestConfig: + description: Configuration object for a Network Path test. + properties: + assertions: + default: [] + description: Array of assertions used for the test. + example: [{"operator": "lessThan", "property": "avg", "target": 500, "type": "latency"}] + items: + $ref: "#/components/schemas/SyntheticsNetworkAssertion" + type: array + request: + $ref: "#/components/schemas/SyntheticsNetworkTestRequest" + type: object + SyntheticsNetworkTestEdit: + description: Data object for creating or editing a Network Path test. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsNetworkTest" + type: + $ref: "#/components/schemas/SyntheticsNetworkTestType" + required: + - attributes + - type + type: object + SyntheticsNetworkTestEditRequest: + description: Network Path test request. + properties: + data: + $ref: "#/components/schemas/SyntheticsNetworkTestEdit" + required: + - data + type: object + SyntheticsNetworkTestRequest: + description: Object describing the request for a Network Path test. + properties: + destination_service: + description: An optional label displayed for the destination host in the Network Path visualization. + type: string + e2e_queries: + description: The number of packets sent to probe the destination to measure packet loss, latency and jitter. + example: 50 + format: int64 + type: integer + host: + description: Host name to query. + example: "" + type: string + max_ttl: + description: The maximum time-to-live (max number of hops) used in outgoing probe packets. + example: 30 + format: int64 + type: integer + port: + description: |- + For TCP or UDP tests, the port to use when performing the test. + If not set on a UDP test, a random port is assigned, which may affect the results. + example: 443 + format: int64 + type: integer + source_service: + description: An optional label displayed for the source host in the Network Path visualization. + type: string + tcp_method: + $ref: "#/components/schemas/SyntheticsNetworkTestRequestTCPMethod" + timeout: + description: Timeout in seconds. + format: int64 + type: integer + traceroute_queries: + description: The number of traceroute path tracings. + example: 3 + format: int64 + type: integer + required: + - host + - max_ttl + - e2e_queries + - traceroute_queries + type: object + SyntheticsNetworkTestRequestTCPMethod: + description: For TCP tests, the TCP traceroute strategy. + enum: + - prefer_sack + - syn + - sack + example: prefer_sack + type: string + x-enum-varnames: + - PREFER_SACK + - SYN + - SACK + SyntheticsNetworkTestResponse: + description: Network Path test response. + properties: + data: + $ref: "#/components/schemas/SyntheticsNetworkTestResponseData" + type: object + SyntheticsNetworkTestResponseData: + description: Network Path test response data. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsNetworkTest" + id: + description: The public ID of the Network Path test. + example: abc-def-123 + readOnly: true + type: string + type: + $ref: "#/components/schemas/SyntheticsNetworkTestResponseType" + type: object + SyntheticsNetworkTestResponseType: + default: "network_test" + description: Type of response, `network_test`. + enum: + - network_test + example: network_test + type: string + x-enum-varnames: + - NETWORK_TEST + SyntheticsNetworkTestSubType: + description: |- + Subtype of the Synthetic Network Path test: `tcp`, `udp`, or `icmp`. + enum: + - tcp + - udp + - icmp + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + - ICMP + SyntheticsNetworkTestType: + default: "network" + description: Type of the Synthetic test, `network`. + enum: + - network + example: network + type: string + x-enum-varnames: + - NETWORK + SyntheticsPollTestResultsResponse: + description: Response object for polling Synthetic test results. + properties: + data: + description: Array of Synthetic test results. + items: + $ref: "#/components/schemas/SyntheticsTestResultData" + type: array + included: + description: Array of included related resources, such as the test definition. + items: + $ref: "#/components/schemas/SyntheticsTestResultIncludedItem" + type: array + type: object + SyntheticsRestrictedRoles: + deprecated: true + description: A list of role identifiers that can be pulled from the Roles API, for restricting read and write access. This field is deprecated. Use the restriction policies API to manage permissions. + example: ["xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"] + items: + description: UUID for a role. + example: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + type: string + type: array + SyntheticsSuite: + description: Object containing details about a Synthetic suite. + properties: + message: + description: Notification message associated with the suite. + example: Notification message + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the suite. + example: "Example suite name" + type: string + options: + $ref: "#/components/schemas/SyntheticsSuiteOptions" + public_id: + description: The public ID for the test. + example: 123-abc-456 + readOnly: true + type: string + tags: + description: Array of tags attached to the suite. + example: ["env:production"] + items: + description: A tag attached to the suite. + type: string + type: array + tests: + description: Array of Synthetic tests included in the suite. + items: + $ref: "#/components/schemas/SyntheticsSuiteTest" + type: array + type: + $ref: "#/components/schemas/SyntheticsSuiteType" + required: + - name + - type + - tests + - options + type: object + SyntheticsSuiteOptions: + description: Object describing the extra options for a Synthetic suite. + properties: + alerting_threshold: + description: Percentage of critical tests failure needed for a suite to fail. + format: double + maximum: 1 + minimum: 0 + type: number + type: object + SyntheticsSuiteResponse: + description: Synthetics suite response + properties: + data: + $ref: "#/components/schemas/SyntheticsSuiteResponseData" + type: object + SyntheticsSuiteResponseData: + description: Synthetics suite response data + properties: + attributes: + $ref: "#/components/schemas/SyntheticsSuite" + id: + description: The public ID for the suite. + example: 123-abc-456 + readOnly: true + type: string + type: + $ref: "#/components/schemas/SyntheticsSuiteTypes" + type: object + SyntheticsSuiteSearchResponse: + description: Synthetics suite search response + properties: + data: + $ref: "#/components/schemas/SyntheticsSuiteSearchResponseData" + type: object + SyntheticsSuiteSearchResponseData: + description: Synthetics suite search response data + properties: + attributes: + $ref: "#/components/schemas/SyntheticsSuiteSearchResponseDataAttributes" + id: + description: The unique identifier of the suite search response data. + format: uuid + type: string + type: + $ref: "#/components/schemas/SuiteSearchResponseType" + type: object + SyntheticsSuiteSearchResponseDataAttributes: + description: Synthetics suite search response data attributes + properties: + suites: + description: List of Synthetic suites matching the search query. + items: + $ref: "#/components/schemas/SyntheticsSuite" + type: array + total: + description: Total number of Synthetic suites matching the search query. + format: int32 + maximum: 2147483647 + type: integer + type: object + SyntheticsSuiteTest: + description: Object containing details about a Synthetic test included in a Synthetic suite. + properties: + alerting_criticality: + $ref: "#/components/schemas/SyntheticsSuiteTestAlertingCriticality" + public_id: + description: The public ID of the Synthetic test included in the suite. + example: "" + type: string + required: + - public_id + type: object + SyntheticsSuiteTestAlertingCriticality: + description: Alerting criticality for each the test. + enum: + - ignore + - critical + example: critical + type: string + x-enum-varnames: + - IGNORE + - CRITICAL + SyntheticsSuiteType: + default: "suite" + description: Type of the Synthetic suite, `suite`. + enum: + - suite + example: suite + type: string + x-enum-varnames: + - SUITE + SyntheticsSuiteTypes: + default: "suites" + description: Type for the Synthetics suites responses, `suites`. + enum: + - suites + example: suites + type: string + x-enum-varnames: + - SUITES + SyntheticsTestFileAbortMultipartUploadRequest: + description: Request body for aborting a multipart file upload. + properties: + key: + description: The full storage path of the file whose upload should be aborted. + example: "org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json" + type: string + uploadId: + description: The upload ID of the multipart upload to abort. + example: "upload-id-abc123" + type: string + required: + - uploadId + - key + type: object + SyntheticsTestFileCompleteMultipartUploadPart: + description: A completed part of a multipart upload. + properties: + ETag: + description: The ETag returned by the storage provider after uploading the part. + example: '"d41d8cd98f00b204e9800998ecf8427e"' + type: string + PartNumber: + description: The 1-indexed part number for the multipart upload. + example: 1 + format: int64 + type: integer + required: + - ETag + - PartNumber + type: object + SyntheticsTestFileCompleteMultipartUploadRequest: + description: Request body for completing a multipart file upload. + properties: + key: + description: The full storage path for the uploaded file. + example: "org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json" + type: string + parts: + description: Array of completed parts with their ETags. + items: + $ref: "#/components/schemas/SyntheticsTestFileCompleteMultipartUploadPart" + type: array + uploadId: + description: The upload ID returned when the multipart upload was initiated. + example: "upload-id-abc123" + type: string + required: + - uploadId + - key + - parts + type: object + SyntheticsTestFileDownloadRequest: + description: Request body for getting a presigned download URL for a test file. + properties: + bucketKey: + description: The bucket key referencing the file to download. + example: "api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json" + minLength: 1 + type: string + required: + - bucketKey + type: object + SyntheticsTestFileDownloadResponse: + description: Response containing a presigned URL for downloading a test file. + properties: + url: + description: A presigned URL to download the file. The URL expires after a short period. + example: "https://storage.example.com/presigned-download-url" + type: string + type: object + SyntheticsTestFileMultipartPresignedUrlsParams: + description: Presigned URL parameters returned for a multipart upload. + properties: + key: + description: The full storage path for the file being uploaded. + example: "org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json" + type: string + upload_id: + description: The upload ID assigned by the storage provider for this multipart upload. + example: "upload-id-abc123" + type: string + urls: + additionalProperties: + type: string + description: A map of part numbers to presigned upload URLs. + example: + "1": "https://storage.example.com/presigned-upload-url-part-1" + "2": "https://storage.example.com/presigned-upload-url-part-2" + type: object + type: object + SyntheticsTestFileMultipartPresignedUrlsPart: + description: A part descriptor for initiating a multipart upload. + properties: + md5: + description: Base64-encoded MD5 digest of the part content. + example: "1B2M2Y8AsgTpgAmY7PhCfg==" + maxLength: 24 + minLength: 22 + type: string + partNumber: + description: The 1-indexed part number for the multipart upload. + example: 1 + format: int64 + type: integer + required: + - md5 + - partNumber + type: object + SyntheticsTestFileMultipartPresignedUrlsRequest: + description: Request body for getting presigned URLs for a multipart file upload. + properties: + bucketKeyPrefix: + $ref: "#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsRequestBucketKeyPrefix" + parts: + description: Array of part descriptors for the multipart upload. + items: + $ref: "#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsPart" + type: array + required: + - bucketKeyPrefix + - parts + type: object + SyntheticsTestFileMultipartPresignedUrlsRequestBucketKeyPrefix: + description: The bucket key prefix indicating the type of file upload. + enum: + - api-upload-file + - browser-upload-file-step + example: "api-upload-file" + type: string + x-enum-varnames: + - API_UPLOAD_FILE + - BROWSER_UPLOAD_FILE_STEP + SyntheticsTestFileMultipartPresignedUrlsResponse: + description: Response containing presigned URLs for multipart file upload and the bucket key. + properties: + bucketKey: + description: The bucket key that references the uploaded file after completion. + example: "api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json" + type: string + multipart_presigned_urls_params: + $ref: "#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsParams" + type: object + SyntheticsTestLatestResultsResponse: + description: Response object for a Synthetic test's latest result summaries. + properties: + data: + description: Array of Synthetic test result summaries. + items: + $ref: "#/components/schemas/SyntheticsTestResultSummaryData" + type: array + included: + description: Array of included related resources, such as the test definition. + items: + $ref: "#/components/schemas/SyntheticsTestResultIncludedItem" + type: array + type: object + SyntheticsTestOptions: + description: Object describing the extra options for a Synthetic test. + properties: + min_failure_duration: + description: Minimum amount of time in failure required to trigger an alert. + format: int64 + type: integer + min_location_failed: + description: |- + Minimum number of locations in failure required to trigger + an alert. + format: int64 + type: integer + monitor_name: + description: The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs. + type: string + monitor_options: + $ref: "#/components/schemas/SyntheticsTestOptionsMonitorOptions" + monitor_priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int32 + maximum: 5 + minimum: 1 + type: integer + restricted_roles: + $ref: "#/components/schemas/SyntheticsRestrictedRoles" + retry: + $ref: "#/components/schemas/SyntheticsTestOptionsRetry" + scheduling: + $ref: "#/components/schemas/SyntheticsTestOptionsScheduling" + tick_every: + description: The frequency at which to run the Synthetic test (in seconds). + format: int64 + maximum: 604800 + minimum: 30 + type: integer + type: object + SyntheticsTestOptionsMonitorOptions: + description: |- + Object containing the options for a Synthetic test as a monitor + (for example, renotification). + properties: + escalation_message: + description: Message to include in the escalation notification. + type: string + notification_preset_name: + $ref: "#/components/schemas/SyntheticsTestOptionsMonitorOptionsNotificationPresetName" + renotify_interval: + description: |- + Time interval before renotifying if the test is still failing + (in minutes). + format: int64 + minimum: 0 + type: integer + renotify_occurrences: + description: The number of times to renotify if the test is still failing. + format: int64 + type: integer + type: object + SyntheticsTestOptionsMonitorOptionsNotificationPresetName: + description: The name of the preset for the notification for the monitor. + enum: + - show_all + - hide_all + - hide_query + - hide_handles + - hide_query_and_handles + - show_only_snapshot + - hide_handles_and_footer + type: string + x-enum-varnames: + - SHOW_ALL + - HIDE_ALL + - HIDE_QUERY + - HIDE_HANDLES + - HIDE_QUERY_AND_HANDLES + - SHOW_ONLY_SNAPSHOT + - HIDE_HANDLES_AND_FOOTER + SyntheticsTestOptionsRetry: + description: Object describing the retry strategy to apply to a Synthetic test. + properties: + count: + description: |- + Number of times a test needs to be retried before marking a + location as failed. Defaults to 0. + format: int64 + type: integer + interval: + description: |- + Time interval between retries (in milliseconds). Defaults to + 300ms. + format: double + type: number + type: object + SyntheticsTestOptionsScheduling: + description: Object containing timeframes and timezone used for advanced scheduling. + properties: + timeframes: + description: Array containing objects describing the scheduling pattern to apply to each day. + example: [{"day": 1, "from": "07:00", "to": "16:00"}, {"day": 3, "from": "07:00", "to": "16:00"}] + items: + $ref: "#/components/schemas/SyntheticsTestOptionsSchedulingTimeframe" + type: array + timezone: + description: Timezone in which the timeframe is based. + example: "America/New_York" + type: string + required: + - timeframes + - timezone + type: object + SyntheticsTestOptionsSchedulingTimeframe: + description: Object describing a timeframe. + properties: + day: + description: Number representing the day of the week. + example: 1 + format: int32 + maximum: 7 + minimum: 1 + type: integer + from: + description: The hour of the day on which scheduling starts. + example: "07:00" + type: string + to: + description: The hour of the day on which scheduling ends. + example: "16:00" + type: string + required: + - day + - from + - to + type: object + SyntheticsTestParentSuiteAttributes: + description: Object containing details about a parent suite of a Synthetic test. + properties: + child_name: + description: The name of the child test within the suite. + example: My API Test + type: string + child_public_id: + description: The public ID of the child test within the suite. + example: xyz-uvw-789 + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + type: integer + name: + description: Name of the parent suite. + example: My Suite + type: string + overall_state: + description: The overall state of the parent suite. + example: 0 + format: int64 + type: integer + overall_state_modified: + description: Timestamp of when the overall state was last modified. + example: "2024-01-01T00:00:00+00:00" + type: string + public_id: + description: The public ID of the parent suite. + example: abc-def-123 + type: string + type: object + SyntheticsTestParentSuiteData: + description: Data object for a parent suite. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestParentSuiteAttributes" + id: + description: The public ID of the parent suite. + example: abc-def-123 + type: string + type: + $ref: "#/components/schemas/SyntheticsTestParentSuiteType" + type: object + SyntheticsTestParentSuiteType: + default: parent_suite + description: Type of the parent suite resource. + enum: + - parent_suite + example: parent_suite + type: string + x-enum-varnames: + - PARENT_SUITE + SyntheticsTestParentSuitesResponse: + description: Response containing the list of parent suites for a Synthetic test. + properties: + data: + description: List of parent suites for the given test. + items: + $ref: "#/components/schemas/SyntheticsTestParentSuiteData" + type: array + type: object + SyntheticsTestPauseStatus: + description: |- + Define whether you want to start (`live`) or pause (`paused`) a + Synthetic test. + enum: + - live + - paused + example: live + type: string + x-enum-varnames: + - LIVE + - PAUSED + SyntheticsTestResultAssertionResult: + description: An individual assertion result from a Synthetic test. + properties: + actual: + description: Actual value observed during the test. Its type depends on the assertion type. + example: 200 + error_message: + description: Error message if the assertion failed. + example: "Assertion failed: expected 200 but got 500" + type: string + expected: + description: Expected value for the assertion. Its type depends on the assertion type. + example: "200" + operator: + description: Operator used for the assertion (for example, `is`, `contains`). + example: is + type: string + property: + description: Property targeted by the assertion, when applicable. + example: content-type + type: string + target: + description: Target value for the assertion. Its type depends on the assertion type. + example: 200 + target_path: + description: JSON path or XPath evaluated for the assertion. + example: $.url + type: string + target_path_operator: + description: Operator used for the target path assertion. + example: contains + type: string + type: + description: Type of the assertion (for example, `responseTime`, `statusCode`, `body`). + example: statusCode + type: string + valid: + description: Whether the assertion passed. + example: true + type: boolean + type: object + SyntheticsTestResultAttributes: + description: Attributes of a Synthetic test result. + properties: + batch: + $ref: "#/components/schemas/SyntheticsTestResultBatch" + ci: + $ref: "#/components/schemas/SyntheticsTestResultCI" + device: + $ref: "#/components/schemas/SyntheticsTestResultDevice" + git: + $ref: "#/components/schemas/SyntheticsTestResultGit" + location: + $ref: "#/components/schemas/SyntheticsTestResultLocation" + result: + $ref: "#/components/schemas/SyntheticsTestResultDetail" + test_sub_type: + $ref: "#/components/schemas/SyntheticsTestSubType" + test_type: + $ref: "#/components/schemas/SyntheticsTestType" + type: object + SyntheticsTestResultBatch: + description: Batch information for the test result. + properties: + id: + description: Batch identifier. + example: batch-abc-123 + type: string + type: object + SyntheticsTestResultBounds: + description: Bounding box of an element on the page. + properties: + height: + description: Height in pixels. + example: 37 + format: int64 + type: integer + width: + description: Width in pixels. + example: 343 + format: int64 + type: integer + x: + description: Horizontal position in pixels. + example: 16 + format: int64 + type: integer + y: + description: Vertical position in pixels. + example: 140 + format: int64 + type: integer + type: object + SyntheticsTestResultBrowserError: + description: A browser error captured during a browser test step. + properties: + description: + description: Error description. + example: Failed to fetch resource + type: string + method: + description: HTTP method associated with the error (for network errors). + example: GET + type: string + name: + description: Error name. + example: NetworkError + type: string + status: + description: HTTP status code associated with the error (for network errors). + example: 500 + format: int64 + type: integer + type: + description: Type of the browser error. + example: network + type: string + url: + additionalProperties: {} + description: URL associated with the error. + type: object + type: object + SyntheticsTestResultBucketKeys: + description: Storage bucket keys for artifacts produced during a step or test. + properties: + after_step_screenshot: + description: Key for the screenshot captured after the step (goal-based tests). + example: screenshots/after-step-1-1.png + type: string + after_turn_screenshot: + description: Key for the screenshot captured after the turn (goal-based tests). + example: screenshots/after-turn-1.png + type: string + artifacts: + description: Key for miscellaneous artifacts. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/artifacts__1724521416257.json + type: string + before_step_screenshot: + description: Key for the screenshot captured before the step (goal-based tests). + example: screenshots/before-step-1-1.png + type: string + before_turn_screenshot: + description: Key for the screenshot captured before the turn (goal-based tests). + example: screenshots/before-turn-1.png + type: string + crash_report: + description: Key for a captured crash report. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/crash_report.log + type: string + device_logs: + description: Key for captured device logs. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/d2z-32s-iax_1340718101990858549_device_logs.log + type: string + email_messages: + description: Keys for email message payloads captured by the step. + items: + description: Storage bucket key for a captured email message. + type: string + type: array + screenshot: + description: Key for the captured screenshot. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/step-0__1724521416269.jpeg + type: string + snapshot: + description: Key for the captured DOM snapshot. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/snapshot.html + type: string + source: + description: Key for the page source or element source. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/step-0__1724445301832.xml + type: string + type: object + SyntheticsTestResultCI: + description: CI information associated with the test result. + properties: + pipeline: + $ref: "#/components/schemas/SyntheticsTestResultCIPipeline" + provider: + $ref: "#/components/schemas/SyntheticsTestResultCIProvider" + stage: + $ref: "#/components/schemas/SyntheticsTestResultCIStage" + workspace_path: + description: Path of the workspace that ran the CI job. + example: /home/runner/work/example + type: string + type: object + SyntheticsTestResultCIPipeline: + description: Details of the CI pipeline. + properties: + id: + description: Pipeline identifier. + example: pipeline-abc-123 + type: string + name: + description: Pipeline name. + example: build-and-test + type: string + number: + description: Pipeline number. + example: 42 + format: int64 + type: integer + url: + description: Pipeline URL. + example: https://github.com/DataDog/example/actions/runs/42 + type: string + type: object + SyntheticsTestResultCIProvider: + description: Details of the CI provider. + properties: + name: + description: Provider name. + example: github + type: string + type: object + SyntheticsTestResultCIStage: + description: Details of the CI stage. + properties: + name: + description: Stage name. + example: test + type: string + type: object + SyntheticsTestResultCdnCacheStatus: + description: Cache status reported by the CDN for the response. + properties: + cached: + description: Whether the response was served from the CDN cache. + example: true + type: boolean + status: + description: Raw cache status string reported by the CDN. + example: HIT + type: string + type: object + SyntheticsTestResultCdnProviderInfo: + description: CDN provider details inferred from response headers. + properties: + cache: + $ref: "#/components/schemas/SyntheticsTestResultCdnCacheStatus" + provider: + description: Name of the CDN provider. + example: google_cloud + type: string + type: object + SyntheticsTestResultCdnResource: + description: A CDN resource encountered while executing a browser step. + properties: + cdn: + $ref: "#/components/schemas/SyntheticsTestResultCdnProviderInfo" + resolved_ip: + description: Resolved IP address for the CDN resource. + example: 34.95.79.70 + type: string + timestamp: + description: Unix timestamp (ms) of when the resource was fetched. + example: 1724521406576 + format: int64 + type: integer + timings: + additionalProperties: {} + description: Timing breakdown for fetching the CDN resource. + example: + firstByte: 99.7 + tcp: 0.9 + type: object + type: object + SyntheticsTestResultCertificate: + description: SSL/TLS certificate information returned from an SSL test. + properties: + cipher: + description: Cipher used for the TLS connection. + example: TLS_AES_256_GCM_SHA384 + type: string + exponent: + description: RSA exponent of the certificate. + example: 65537 + format: int64 + type: integer + ext_key_usage: + description: Extended key usage extensions for the certificate. + example: + - 1.3.6.1.5.5.7.3.1 + items: + description: Extended key usage value. + type: string + type: array + fingerprint: + description: SHA-1 fingerprint of the certificate. + example: D6:03:5A:9F:93:E1:B7:28:EC:90:C5:9F:72:30:55:7C:74:5F:53:92 + type: string + fingerprint256: + description: SHA-256 fingerprint of the certificate. + example: 04:45:93:A9:4C:14:70:47:DB:3C:FC:05:F9:5A:50:4E:DA:DB:A1:C6:37:3D:15:C0:B2:7E:5D:93:5F:A2:02:C7 + type: string + issuer: + additionalProperties: + type: string + description: Certificate issuer details. + example: + C: US + CN: WE2 + O: Google Trust Services + type: object + modulus: + description: RSA modulus of the certificate. + example: C0FCE9F9... + type: string + protocol: + description: TLS protocol used (for example, `TLSv1.2`). + example: TLSv1.3 + type: string + serial_number: + description: Serial number of the certificate. + example: 7B584A1A6670A1EB0941A9A121569D60 + type: string + subject: + additionalProperties: + type: string + description: Certificate subject details. + example: + CN: "*.google.fr" + altName: "DNS:*.google.fr, DNS:google.fr" + type: object + tls_version: + description: TLS protocol version. + example: 1.3 + format: double + type: number + valid: + $ref: "#/components/schemas/SyntheticsTestResultCertificateValidity" + type: object + SyntheticsTestResultCertificateValidity: + description: Validity window of a certificate. + properties: + from: + description: Unix timestamp (ms) of when the certificate became valid. + example: 1742469686000 + format: int64 + type: integer + to: + description: Unix timestamp (ms) of when the certificate expires. + example: 1749727285000 + format: int64 + type: integer + type: object + SyntheticsTestResultData: + description: Wrapper object for a Synthetic test result. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestResultAttributes" + id: + description: The result ID. + example: "5158904793181869365" + type: string + relationships: + $ref: "#/components/schemas/SyntheticsTestResultRelationships" + type: + $ref: "#/components/schemas/SyntheticsTestResultType" + type: object + SyntheticsTestResultDetail: + description: Full result details for a Synthetic test execution. + properties: + assertions: + description: Assertion results produced by the test. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + cert: + $ref: "#/components/schemas/SyntheticsTestResultCertificate" + compressed_json_descriptor: + description: Compressed JSON descriptor for the test (internal format). + example: compressedJsonDescriptorValue + type: string + compressed_steps: + description: Compressed representation of the test steps (internal format). + example: eJzLSM3JyQcABiwCFQ== + type: string + connection_outcome: + description: Outcome of the connection attempt (for example, `established`, `refused`). + example: established + type: string + dns_resolution: + $ref: "#/components/schemas/SyntheticsTestResultDnsResolution" + duration: + description: Duration of the test execution (in milliseconds). + example: 380.7 + format: double + type: number + exited_on_step_success: + description: Whether the test exited early because a step marked with `exitIfSucceed` passed. + example: false + type: boolean + failure: + $ref: "#/components/schemas/SyntheticsTestResultFailure" + finished_at: + description: Timestamp of when the test finished (in milliseconds). + example: 1723782422760 + format: int64 + type: integer + handshake: + $ref: "#/components/schemas/SyntheticsTestResultHandshake" + id: + description: The unique identifier for this result. + example: "5158904793181869365" + type: string + initial_id: + description: The initial result ID before any retries. + example: "5158904793181869365" + type: string + is_fast_retry: + description: Whether this result is from a fast retry. + example: true + type: boolean + is_last_retry: + description: Whether this result is from the last retry. + example: true + type: boolean + netpath: + $ref: "#/components/schemas/SyntheticsTestResultNetpath" + netstats: + $ref: "#/components/schemas/SyntheticsTestResultNetstats" + ocsp: + $ref: "#/components/schemas/SyntheticsTestResultOCSPResponse" + ping: + $ref: "#/components/schemas/SyntheticsTestResultTracerouteHop" + received_email_count: + description: Number of emails received during the test (email tests). + example: 1 + format: int64 + type: integer + received_message: + description: Message received from the target (for WebSocket/TCP/UDP tests). + example: "UDP echo: b'Test message'" + type: string + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + resolved_ip: + description: IP address resolved for the target host. + example: "54.243.255.141" + type: string + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + run_type: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + sent_message: + description: Message sent to the target (for WebSocket/TCP/UDP tests). + example: udp mess + type: string + start_url: + description: Start URL for the test (browser tests). + example: http://34.95.79.70/prototype + type: string + started_at: + description: Timestamp of when the test started (in milliseconds). + example: 1723782422750 + format: int64 + type: integer + status: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + steps: + description: Step results (for browser, mobile, and multistep API tests). + items: + $ref: "#/components/schemas/SyntheticsTestResultStep" + type: array + time_to_interactive: + description: Time to interactive in milliseconds (browser tests). + example: 183 + format: int64 + type: integer + timings: + additionalProperties: {} + description: Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + trace: + $ref: "#/components/schemas/SyntheticsTestResultTrace" + traceroute: + description: Traceroute hop results (for network tests). + items: + $ref: "#/components/schemas/SyntheticsTestResultTracerouteHop" + type: array + triggered_at: + description: Timestamp of when the test was triggered (in milliseconds). + example: 1723782422715 + format: int64 + type: integer + tunnel: + description: Whether the test was executed through a tunnel. + example: false + type: boolean + turns: + description: Turns executed by a goal-based browser test. + items: + $ref: "#/components/schemas/SyntheticsTestResultTurn" + type: array + unhealthy: + description: Whether the test runner was unhealthy at the time of execution. + example: false + type: boolean + variables: + $ref: "#/components/schemas/SyntheticsTestResultVariables" + type: object + SyntheticsTestResultDevice: + description: Device information for the test result (browser and mobile tests). + properties: + browser: + $ref: "#/components/schemas/SyntheticsTestResultDeviceBrowser" + id: + description: Device identifier. + example: chrome.laptop_large + type: string + name: + description: Device name. + example: "Chrome - Laptop Large" + type: string + platform: + $ref: "#/components/schemas/SyntheticsTestResultDevicePlatform" + resolution: + $ref: "#/components/schemas/SyntheticsTestResultDeviceResolution" + type: + description: Device type. + example: browser + type: string + type: object + SyntheticsTestResultDeviceBrowser: + description: Browser information for the device used to run the test. + properties: + type: + description: Browser type (for example, `chrome`, `firefox`). + example: edge + type: string + user_agent: + description: User agent string reported by the browser. + example: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36 Edg/127.0.2651.105 DatadogSynthetics + type: string + version: + description: Browser version. + example: 127.0.2651.105 + type: string + type: object + SyntheticsTestResultDevicePlatform: + description: Platform information for the device used to run the test. + properties: + name: + description: Platform name (for example, `linux`, `macos`). + example: ios + type: string + version: + description: Platform version. + example: "14.8" + type: string + type: object + SyntheticsTestResultDeviceResolution: + description: Screen resolution of the device used to run the test. + properties: + height: + description: Viewport height in pixels. + example: 1100 + format: int64 + type: integer + pixel_ratio: + description: Device pixel ratio. + example: 2 + format: double + type: number + width: + description: Viewport width in pixels. + example: 1440 + format: int64 + type: integer + type: object + SyntheticsTestResultDnsRecord: + description: A DNS record returned in a DNS test response. + properties: + type: + description: DNS record type (for example, `A`, `AAAA`, `CNAME`). + example: A + type: string + values: + description: Values associated with the DNS record. + example: + - 213.186.33.19 + items: + description: DNS record value. + type: string + type: array + type: object + SyntheticsTestResultDnsResolution: + description: DNS resolution details recorded during the test execution. + properties: + attempts: + description: DNS resolution attempts made during the test. + items: + $ref: "#/components/schemas/SyntheticsTestResultDnsResolutionAttempt" + type: array + resolved_ip: + description: Resolved IP address for the target host. + example: 54.243.255.141 + type: string + resolved_port: + description: Resolved port for the target service. + example: "443" + type: string + server: + description: DNS server used for the resolution. + example: 8.8.4.4 + type: string + type: object + SyntheticsTestResultDnsResolutionAttempt: + additionalProperties: + type: string + description: A single DNS resolution attempt. Keys are provider-specific attempt fields. + type: object + SyntheticsTestResultDuration: + description: Total duration of a Synthetic test execution. + properties: + has_duration: + description: Whether a duration was recorded for this execution. + example: true + type: boolean + value: + description: Duration value in milliseconds. + example: 380 + format: int64 + type: integer + type: object + SyntheticsTestResultExecutionInfo: + description: Execution details for a Synthetic test result. + properties: + duration: + $ref: "#/components/schemas/SyntheticsTestResultDuration" + error_message: + description: Error message if the execution encountered an issue. + example: Connection timed out + type: string + is_fast_retry: + description: Whether this result is from a fast retry. + example: true + type: boolean + timings: + additionalProperties: {} + description: Timing breakdown of the test execution in milliseconds. + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + tunnel: + description: Whether the test was executed through a tunnel. + example: false + type: boolean + unhealthy: + description: Whether the location was unhealthy during execution. + example: false + type: boolean + type: object + SyntheticsTestResultFailure: + description: Details about the failure of a Synthetic test. + properties: + code: + description: Error code for the failure. + example: TIMEOUT + type: string + internal_code: + description: Internal error code used for debugging. + example: INCORRECT_ASSERTION + type: string + internal_message: + description: Internal error message used for debugging. + example: Assertion failed on step 2 + type: string + message: + description: Error message for the failure. + example: Connection timed out + type: string + type: object + SyntheticsTestResultFileRef: + description: Reference to a file attached to a Synthetic test request. + properties: + bucket_key: + description: Storage bucket key where the file is stored. + example: api-upload-file/s3v-msw-tp3/2024-08-20T12:18:27.628081_f433c953-a58a-4296-834b-0669e32ba55f.json + type: string + encoding: + description: Encoding of the file contents. + example: base64 + type: string + name: + description: File name. + example: dd_logo_h_rgb.jpg + type: string + size: + description: File size in bytes. + example: 30294 + format: int64 + type: integer + type: + description: File MIME type. + example: image/jpeg + type: string + type: object + SyntheticsTestResultGit: + description: Git information associated with the test result. + properties: + branch: + description: Git branch name. + example: main + type: string + commit: + $ref: "#/components/schemas/SyntheticsTestResultGitCommit" + repository_url: + description: Git repository URL. + example: https://github.com/DataDog/example + type: string + type: object + SyntheticsTestResultGitCommit: + description: Details of the Git commit associated with the test result. + properties: + author: + $ref: "#/components/schemas/SyntheticsTestResultGitUser" + committer: + $ref: "#/components/schemas/SyntheticsTestResultGitUser" + message: + description: Commit message. + example: Fix bug in login flow + type: string + sha: + description: Commit SHA. + example: 9e107d9d372bb6826bd81d3542a419d6f0e1de56 + type: string + url: + description: URL of the commit. + example: https://github.com/DataDog/example/commit/9e107d9d372bb6826bd81d3542a419d6f0e1de56 + type: string + type: object + SyntheticsTestResultGitUser: + description: A Git user (author or committer). + properties: + date: + description: Timestamp of the commit action for this user. + example: "2024-08-15T14:23:00Z" + type: string + email: + description: Email address of the Git user. + example: jane.doe@example.com + type: string + name: + description: Name of the Git user. + example: Jane Doe + type: string + type: object + SyntheticsTestResultHandshake: + description: Handshake request and response for protocol-level tests. + properties: + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + type: object + SyntheticsTestResultHealthCheck: + description: Health check information returned from a gRPC health check call. + properties: + message: + additionalProperties: + type: string + description: Raw health check message payload. + type: object + status: + description: Health check status code. + example: 1 + format: int64 + type: integer + type: object + SyntheticsTestResultIncludedItem: + description: An included related resource. + properties: + attributes: + additionalProperties: {} + description: Attributes of the included resource. + type: object + id: + description: ID of the included resource. + example: abc-def-123 + type: string + type: + description: Type of the included resource. + example: test + type: string + type: object + SyntheticsTestResultLocation: + description: Location information for a Synthetic test result. + properties: + id: + description: Identifier of the location. + example: aws:us-east-1 + type: string + name: + description: Human-readable name of the location. + example: "N. Virginia (AWS)" + type: string + version: + description: Version of the worker that ran the test. + example: 1.0.0 + type: string + worker_id: + description: Identifier of the specific worker that ran the test. + example: worker-abc-123 + type: string + type: object + SyntheticsTestResultNetpath: + description: Network Path test result capturing the path between source and destination. + properties: + destination: + $ref: "#/components/schemas/SyntheticsTestResultNetpathDestination" + hops: + description: Hops along the network path. + items: + $ref: "#/components/schemas/SyntheticsTestResultNetpathHop" + type: array + origin: + description: Origin of the network path (for example, probe source). + example: synthetics + type: string + pathtrace_id: + description: Identifier of the path trace. + example: 5d3cb978-533b-41ce-85a4-3661c8dd6a0b + type: string + protocol: + description: Protocol used for the path trace (for example, `tcp`, `udp`, `icmp`). + example: TCP + type: string + source: + $ref: "#/components/schemas/SyntheticsTestResultNetpathEndpoint" + tags: + description: Tags associated with the network path measurement. + example: + - synthetics.test_id:nja-epx-mg8 + items: + description: Tag associated with the network path measurement. + type: string + type: array + timestamp: + description: Unix timestamp (ms) of the network path measurement. + example: 1744117822266 + format: int64 + type: integer + type: object + SyntheticsTestResultNetpathDestination: + description: Destination endpoint of a network path measurement. + properties: + hostname: + description: Hostname of the destination. + example: 34.95.79.70 + type: string + ip_address: + description: IP address of the destination. + example: 34.95.79.70 + type: string + port: + description: Port of the destination service. + example: 80 + format: int64 + type: integer + type: object + SyntheticsTestResultNetpathEndpoint: + description: Source endpoint of a network path measurement. + properties: + hostname: + description: Hostname of the endpoint. + example: edge-eu1.staging.dog + type: string + type: object + SyntheticsTestResultNetpathHop: + description: A single hop along a network path. + properties: + hostname: + description: Resolved hostname of the hop. + example: 70.79.95.34.bc.googleusercontent.com + type: string + ip_address: + description: IP address of the hop. + example: 10.240.134.15 + type: string + reachable: + description: Whether this hop was reachable. + example: true + type: boolean + rtt: + description: Round-trip time to this hop in milliseconds. + example: 0.000346599 + format: double + type: number + ttl: + description: Time-to-live value of the probe packet at this hop. + example: 2 + format: int64 + type: integer + type: object + SyntheticsTestResultNetstats: + description: Aggregated network statistics from the test execution. + properties: + hops: + $ref: "#/components/schemas/SyntheticsTestResultNetstatsHops" + jitter: + description: Network jitter in milliseconds. + example: 0.08 + format: double + type: number + latency: + $ref: "#/components/schemas/SyntheticsTestResultNetworkLatency" + packet_loss_percentage: + description: Percentage of probe packets lost. + example: 0.0 + format: double + type: number + packets_received: + description: Number of probe packets received. + example: 4 + format: int64 + type: integer + packets_sent: + description: Number of probe packets sent. + example: 4 + format: int64 + type: integer + type: object + SyntheticsTestResultNetstatsHops: + description: Statistics about the number of hops for a network test. + properties: + avg: + description: Average number of hops. + example: 11.0 + format: double + type: number + max: + description: Maximum number of hops. + example: 11 + format: int64 + type: integer + min: + description: Minimum number of hops. + example: 11 + format: int64 + type: integer + type: object + SyntheticsTestResultNetworkLatency: + description: Latency statistics for a network probe. + properties: + avg: + description: Average latency in milliseconds. + example: 1.8805 + format: double + type: number + max: + description: Maximum latency in milliseconds. + example: 1.97 + format: double + type: number + min: + description: Minimum latency in milliseconds. + example: 1.76 + format: double + type: number + type: object + SyntheticsTestResultOCSPCertificate: + description: Certificate details returned in an OCSP response. + properties: + revocation_reason: + description: Reason code for the revocation, when applicable. + example: unspecified + type: string + revocation_time: + description: Unix timestamp (ms) of the revocation. + example: 1749727285000 + format: int64 + type: integer + serial_number: + description: Serial number of the certificate. + example: 7B584A1A6670A1EB0941A9A121569D60 + type: string + type: object + SyntheticsTestResultOCSPResponse: + description: OCSP response received while validating a certificate. + properties: + certificate: + $ref: "#/components/schemas/SyntheticsTestResultOCSPCertificate" + status: + description: OCSP response status (for example, `good`, `revoked`, `unknown`). + example: good + type: string + updates: + $ref: "#/components/schemas/SyntheticsTestResultOCSPUpdates" + type: object + SyntheticsTestResultOCSPUpdates: + description: OCSP response update timestamps. + properties: + next_update: + description: Unix timestamp (ms) of the next expected OCSP update. + example: 1743074486000 + format: int64 + type: integer + produced_at: + description: Unix timestamp (ms) of when the OCSP response was produced. + example: 1742469686000 + format: int64 + type: integer + this_update: + description: Unix timestamp (ms) of this OCSP update. + example: 1742469686000 + format: int64 + type: integer + type: object + SyntheticsTestResultParentStep: + description: Reference to the parent step of a sub-step. + properties: + id: + description: Identifier of the parent step. + example: fkk-j2a-gmw + type: string + type: object + SyntheticsTestResultParentTest: + description: Reference to the parent test of a sub-step. + properties: + id: + description: Identifier of the parent test. + example: abc-def-123 + type: string + type: object + SyntheticsTestResultRedirect: + description: A redirect hop encountered while performing the request. + properties: + location: + description: Target location of the redirect. + example: https://example.com/new-location + type: string + status_code: + description: HTTP status code of the redirect response. + example: 301 + format: int64 + type: integer + type: object + SyntheticsTestResultRelationshipTest: + description: Relationship to the Synthetic test. + properties: + data: + $ref: "#/components/schemas/SyntheticsTestResultRelationshipTestData" + type: object + SyntheticsTestResultRelationshipTestData: + description: Data for the test relationship. + properties: + id: + description: The public ID of the test. + example: abc-def-123 + type: string + type: + description: Type of the related resource. + example: test + type: string + type: object + SyntheticsTestResultRelationships: + description: Relationships for a Synthetic test result. + properties: + test: + $ref: "#/components/schemas/SyntheticsTestResultRelationshipTest" + type: object + SyntheticsTestResultRequestInfo: + description: Details of the outgoing request made during the test execution. + properties: + allow_insecure: + description: Whether insecure certificates are allowed for this request. + example: false + type: boolean + body: + description: Body sent with the request. + example: '{"key":"value"}' + type: string + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + destination_service: + description: Destination service for a Network Path test. + example: my-service + type: string + dns_server: + description: DNS server used to resolve the target host. + example: 8.8.8.8 + type: string + dns_server_port: + description: Port of the DNS server used for resolution. + example: 53 + format: int64 + type: integer + e2e_queries: + description: Number of end-to-end probe queries issued. + example: 4 + format: int64 + type: integer + files: + description: Files attached to the request. + items: + $ref: "#/components/schemas/SyntheticsTestResultFileRef" + type: array + headers: + additionalProperties: {} + description: Headers sent with the request. + example: + content-type: application/json + type: object + host: + description: Host targeted by the request. + example: grpcbin.test.k6.io + type: string + max_ttl: + description: Maximum TTL for network probe packets. + example: 64 + format: int64 + type: integer + message: + description: Message sent with the request (for WebSocket/TCP/UDP tests). + example: My message + type: string + method: + description: HTTP method used for the request. + example: GET + type: string + no_saving_response_body: + description: Whether the response body was not saved. + example: true + type: boolean + port: + description: Port targeted by the request. Can be a number or a string variable reference. + example: 9000 + service: + description: Service name targeted by the request (for gRPC tests). + example: addsvc.Add + type: string + source_service: + description: Source service for a Network Path test. + example: synthetics + type: string + timeout: + description: Request timeout in milliseconds. + example: 60 + format: int64 + type: integer + tool_name: + description: Name of the MCP tool called (MCP tests only). + example: search + type: string + traceroute_queries: + description: Number of traceroute probe queries issued. + example: 2 + format: int64 + type: integer + url: + description: URL targeted by the request. + example: https://httpbin.org/anything/lol valuehugo + type: string + type: object + SyntheticsTestResultResponse: + description: Response object for a Synthetic test result. + properties: + data: + $ref: "#/components/schemas/SyntheticsTestResultData" + included: + description: Array of included related resources, such as the test definition. + items: + $ref: "#/components/schemas/SyntheticsTestResultIncludedItem" + type: array + type: object + SyntheticsTestResultResponseInfo: + description: Details of the response received during the test execution. + properties: + body: + description: Body of the response. + example: '{"status":"ok"}' + type: string + body_compressed: + description: Compressed representation of the response body. + example: eJzLSM3JyQcABiwCFQ== + type: string + body_hashes: + description: Hashes computed over the response body. + example: 9e107d9d372bb6826bd81d3542a419d6 + type: string + body_size: + description: Size of the response body in bytes. + example: 793 + format: int64 + type: integer + cache_headers: + additionalProperties: + type: string + description: Cache-related response headers. + example: + server: gunicorn/19.9.0 + type: object + cdn: + $ref: "#/components/schemas/SyntheticsTestResultCdnProviderInfo" + close: + $ref: "#/components/schemas/SyntheticsTestResultWebSocketClose" + compressed_message: + description: Compressed representation of the response message. + example: eJzLSM3JyQcABiwCFQ== + type: string + headers: + additionalProperties: {} + description: Response headers. + example: + content-type: application/json + type: object + healthcheck: + $ref: "#/components/schemas/SyntheticsTestResultHealthCheck" + http_version: + description: HTTP version of the response. + example: "2.0" + type: string + is_body_truncated: + description: Whether the response body was truncated. + example: false + type: boolean + is_message_truncated: + description: Whether the response message was truncated. + example: false + type: boolean + message: + description: Message received in the response (for WebSocket/TCP/UDP tests). + example: '{"f_string":"concat-STATIC_HIDDEN_VALUE"}' + type: string + metadata: + additionalProperties: + type: string + description: Additional metadata returned with the response. + type: object + records: + description: DNS records returned in the response (DNS tests only). + items: + $ref: "#/components/schemas/SyntheticsTestResultDnsRecord" + type: array + redirects: + description: Redirect hops encountered while performing the request. + items: + $ref: "#/components/schemas/SyntheticsTestResultRedirect" + type: array + status_code: + description: HTTP status code of the response. + example: 200 + format: int64 + type: integer + type: object + SyntheticsTestResultRouter: + description: A router along the traceroute path. + properties: + ip: + description: IP address of the router. + example: 34.95.79.70 + type: string + resolved_host: + description: Resolved hostname of the router. + example: 70.79.95.34.bc.googleusercontent.com + type: string + type: object + SyntheticsTestResultRumContext: + description: RUM application context associated with a step or sub-test. + properties: + application_id: + description: RUM application identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + session_id: + description: RUM session identifier. + example: 11111111-1111-1111-1111-111111111111 + type: string + view_id: + description: RUM view identifier. + example: 22222222-2222-2222-2222-222222222222 + type: string + type: object + SyntheticsTestResultRunType: + description: The type of run for a Synthetic test result. + enum: + - scheduled + - fast + - ci + - triggered + example: scheduled + type: string + x-enum-varnames: + - SCHEDULED + - FAST + - CI + - TRIGGERED + SyntheticsTestResultStatus: + description: Status of a Synthetic test result. + enum: + - passed + - failed + - no_data + example: passed + type: string + x-enum-varnames: + - PASSED + - FAILED + - NO_DATA + SyntheticsTestResultStep: + description: A step result from a browser, mobile, or multistep API test. + properties: + allow_failure: + description: Whether the test continues when this step fails. + example: false + type: boolean + api_test: + additionalProperties: {} + description: Inner API test definition for browser `runApiTest` steps. + type: object + assertion_result: + $ref: "#/components/schemas/SyntheticsTestResultStepAssertionResult" + assertions: + description: Assertion results produced by the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + blocked_requests_urls: + description: URLs of requests blocked during the step. + items: + description: Blocked request URL. + type: string + type: array + bounds: + $ref: "#/components/schemas/SyntheticsTestResultBounds" + browser_errors: + description: Browser errors captured during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultBrowserError" + type: array + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + cdn_resources: + description: CDN resources encountered during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultCdnResource" + type: array + click_type: + description: Click type performed in a browser step. + example: primary + type: string + compressed_json_descriptor: + description: Compressed JSON descriptor for the step (internal format). + example: compressedJsonDescriptorValue + type: string + config: + additionalProperties: {} + description: Request configuration executed by this step (API test steps). + type: object + description: + description: Human-readable description of the step. + example: Navigate to start URL + type: string + duration: + description: Duration of the step in milliseconds. + example: 1015.0 + format: double + type: number + element_description: + description: Description of the element interacted with by the step. + example: '' + type: string + element_updates: + $ref: "#/components/schemas/SyntheticsTestResultStepElementUpdates" + extracted_value: + $ref: "#/components/schemas/SyntheticsTestResultVariable" + failure: + $ref: "#/components/schemas/SyntheticsTestResultFailure" + http_results: + description: HTTP results produced by an MCP step. + items: + $ref: "#/components/schemas/SyntheticsTestResultAssertionResult" + type: array + id: + description: Identifier of the step. + example: fkk-j2a-gmw + type: string + is_critical: + description: Whether this step is critical for the test outcome. + example: true + type: boolean + javascript_custom_assertion_code: + description: Whether the step uses a custom JavaScript assertion. + example: false + type: boolean + locate_element_duration: + description: Time taken to locate the element in milliseconds. + example: 845.0 + format: double + type: number + name: + description: Name of the step. + example: Extract variable from body + type: string + request: + $ref: "#/components/schemas/SyntheticsTestResultRequestInfo" + response: + $ref: "#/components/schemas/SyntheticsTestResultResponseInfo" + retries: + description: Retry results for the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultStep" + type: array + retry_count: + description: Number of times this step was retried. + example: 0 + format: int64 + type: integer + rum_context: + $ref: "#/components/schemas/SyntheticsTestResultRumContext" + started_at: + description: Unix timestamp (ms) of when the step started. + example: 1724445283308 + format: int64 + type: integer + status: + description: Status of the step (for example, `passed`, `failed`). + example: passed + type: string + sub_step: + $ref: "#/components/schemas/SyntheticsTestResultSubStep" + sub_test: + $ref: "#/components/schemas/SyntheticsTestResultSubTest" + subtype: + description: Subtype of the step. + example: http + type: string + tabs: + description: Browser tabs involved in the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultTab" + type: array + timings: + additionalProperties: {} + description: Timing breakdown of the step execution. + type: object + tunnel: + description: Whether the step was executed through a Synthetics tunnel. + example: false + type: boolean + type: + description: Type of the step (for example, `click`, `assertElementContent`, `runApiTest`). + example: click + type: string + url: + description: URL associated with the step (for navigation steps). + example: http://34.95.79.70/prototype + type: string + value: + description: Step value. Its type depends on the step type. + example: http://34.95.79.70/prototype + variables: + $ref: "#/components/schemas/SyntheticsTestResultVariables" + vitals_metrics: + description: Web vitals metrics captured during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultVitalsMetrics" + type: array + warnings: + description: Warnings emitted during the step. + items: + $ref: "#/components/schemas/SyntheticsTestResultWarning" + type: array + type: object + SyntheticsTestResultStepAssertionResult: + description: Assertion result for a browser or mobile step. + properties: + actual: + description: Actual value observed during the step assertion. Its type depends on the check type. + example: "True\ngood\ngood\ngood\ngood\nTrue" + check_type: + description: Type of the step assertion check. + example: contains + type: string + expected: + description: Expected value for the step assertion. Its type depends on the check type. + example: True good good good good True + has_secure_variables: + description: Whether the assertion involves secure variables. + example: false + type: boolean + type: object + SyntheticsTestResultStepElementUpdates: + description: Element locator updates produced during a step. + properties: + multi_locator: + additionalProperties: + type: string + description: Updated multi-locator definition. + type: object + target_outer_html: + description: Updated outer HTML of the targeted element. + example:

My website - v4

+ type: string + version: + description: Version of the element locator definition. + example: 3 + format: int64 + type: integer + type: object + SyntheticsTestResultStepsInfo: + description: Step execution summary for a Synthetic test result. + properties: + completed: + description: Number of completed steps. + example: 6 + format: int64 + type: integer + errors: + description: Number of steps with errors. + example: 0 + format: int64 + type: integer + total: + description: Total number of steps. + example: 6 + format: int64 + type: integer + type: object + SyntheticsTestResultSubStep: + description: Information about a sub-step in a nested test execution. + properties: + level: + description: Depth of the sub-step in the execution tree. + example: 1 + format: int64 + type: integer + parent_step: + $ref: "#/components/schemas/SyntheticsTestResultParentStep" + parent_test: + $ref: "#/components/schemas/SyntheticsTestResultParentTest" + type: object + SyntheticsTestResultSubTest: + description: Information about a sub-test played from a parent browser test. + properties: + id: + description: Identifier of the sub-test. + example: abc-def-123 + type: string + playing_tab: + description: Index of the browser tab playing the sub-test. + example: 0 + format: int64 + type: integer + rum_context: + $ref: "#/components/schemas/SyntheticsTestResultRumContext" + type: object + SyntheticsTestResultSummaryAttributes: + description: Attributes of a Synthetic test result summary. + properties: + device: + $ref: "#/components/schemas/SyntheticsTestResultDevice" + execution_info: + $ref: "#/components/schemas/SyntheticsTestResultExecutionInfo" + finished_at: + description: Timestamp of when the test finished (in milliseconds). + format: int64 + type: integer + location: + $ref: "#/components/schemas/SyntheticsTestResultLocation" + run_type: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + started_at: + description: Timestamp of when the test started (in milliseconds). + format: int64 + type: integer + status: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + steps_info: + $ref: "#/components/schemas/SyntheticsTestResultStepsInfo" + test_sub_type: + $ref: "#/components/schemas/SyntheticsTestSubType" + test_type: + $ref: "#/components/schemas/SyntheticsTestType" + type: object + SyntheticsTestResultSummaryData: + description: Wrapper object for a Synthetic test result summary. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestResultSummaryAttributes" + id: + description: The result ID. + example: "5158904793181869365" + type: string + relationships: + $ref: "#/components/schemas/SyntheticsTestResultRelationships" + type: + $ref: "#/components/schemas/SyntheticsTestResultSummaryType" + type: object + SyntheticsTestResultSummaryType: + default: "result_summary" + description: Type of the Synthetic test result summary resource, `result_summary`. + enum: + - result_summary + example: result_summary + type: string + x-enum-varnames: + - RESULT_SUMMARY + SyntheticsTestResultTab: + description: Information about a browser tab involved in a step. + properties: + focused: + description: Whether the tab was focused during the step. + example: true + type: boolean + title: + description: Title of the tab. + example: Team Browser mini-websites + type: string + url: + description: URL loaded in the tab. + example: http://34.95.79.70/prototype + type: string + type: object + SyntheticsTestResultTrace: + description: Trace identifiers associated with a Synthetic test result. + properties: + id: + description: Datadog APM trace identifier. + example: "5513046492231128177" + type: string + otel_id: + description: OpenTelemetry trace identifier. + example: d8ba00eb1507bdba8643ba8e7a1c022c + type: string + type: object + SyntheticsTestResultTracerouteHop: + description: A network probe result, used for traceroute hops and ping summaries. + properties: + host: + description: Target hostname. + example: 34.95.79.70 + type: string + latency: + $ref: "#/components/schemas/SyntheticsTestResultNetworkLatency" + packet_loss_percentage: + description: Percentage of probe packets lost. + example: 0.0 + format: double + type: number + packet_size: + description: Size of each probe packet in bytes. + example: 56 + format: int64 + type: integer + packets_received: + description: Number of probe packets received. + example: 4 + format: int64 + type: integer + packets_sent: + description: Number of probe packets sent. + example: 4 + format: int64 + type: integer + resolved_ip: + description: Resolved IP address for the target. + example: 34.95.79.70 + type: string + routers: + description: List of intermediate routers for the traceroute. + items: + $ref: "#/components/schemas/SyntheticsTestResultRouter" + type: array + type: object + SyntheticsTestResultTurn: + description: A turn in a goal-based browser test, grouping steps and reasoning. + properties: + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + name: + description: Name of the turn. + example: Turn 1 + type: string + reasoning: + description: Agent reasoning produced for this turn. + example: I need to navigate to the chairs section + type: string + status: + description: Status of the turn (for example, `passed`, `failed`). + example: passed + type: string + steps: + description: Steps executed during the turn. + items: + $ref: "#/components/schemas/SyntheticsTestResultTurnStep" + type: array + turn_finished_at: + description: Unix timestamp (ms) of when the turn finished. + example: 1724521438800 + format: int64 + type: integer + turn_started_at: + description: Unix timestamp (ms) of when the turn started. + example: 1724521436800 + format: int64 + type: integer + type: object + SyntheticsTestResultTurnStep: + description: A step executed during a goal-based browser test turn. + properties: + bucket_keys: + $ref: "#/components/schemas/SyntheticsTestResultBucketKeys" + config: + additionalProperties: {} + description: Browser step configuration for this turn step. + example: + id: step-1 + name: Click on div "Chairs" + type: click + type: object + type: object + SyntheticsTestResultType: + default: "result" + description: Type of the Synthetic test result resource, `result`. + enum: + - result + example: result + type: string + x-enum-varnames: + - RESULT + SyntheticsTestResultVariable: + description: A variable used or extracted during a test. + properties: + err: + description: Error encountered when evaluating the variable. + example: LOCAL_VARIABLE_UNKNOWN + type: string + error_message: + description: Human-readable error message for variable evaluation. + example: Unknown variable name undefined. + type: string + example: + description: Example value for the variable. + example: lol value + type: string + id: + description: Variable identifier. + example: c896702c-1e34-4e62-a67b-432e8092d062 + type: string + name: + description: Variable name. + example: HEADER_VALUE + type: string + pattern: + description: Pattern used to extract the variable. + example: lol value + type: string + secure: + description: Whether the variable holds a secure value. + example: false + type: boolean + type: + description: Variable type. + example: text + type: string + val: + description: Evaluated value of the variable. + example: value-to-extract + type: string + value: + description: Current value of the variable. + example: lol value + type: string + type: object + SyntheticsTestResultVariables: + description: Variables captured during a test step. + properties: + config: + description: Variables defined in the test configuration. + items: + $ref: "#/components/schemas/SyntheticsTestResultVariable" + type: array + extracted: + description: Variables extracted during the test execution. + items: + $ref: "#/components/schemas/SyntheticsTestResultVariable" + type: array + type: object + SyntheticsTestResultVitalsMetrics: + description: Web vitals metrics captured during a browser test step. + properties: + cls: + description: Cumulative Layout Shift score. + example: 0.0 + format: double + type: number + fcp: + description: First Contentful Paint in milliseconds. + example: 120.3 + format: double + type: number + inp: + description: Interaction to Next Paint in milliseconds. + example: 85.0 + format: double + type: number + lcp: + description: Largest Contentful Paint in milliseconds. + example: 210.5 + format: double + type: number + ttfb: + description: Time To First Byte in milliseconds. + example: 95.2 + format: double + type: number + url: + description: URL that produced the metrics. + example: http://34.95.79.70/prototype + type: string + type: object + SyntheticsTestResultWarning: + description: A warning captured during a browser test step. + properties: + element_bounds: + description: Bounds of elements related to the warning. + items: + $ref: "#/components/schemas/SyntheticsTestResultBounds" + type: array + message: + description: Warning message. + example: Element is not visible in the viewport + type: string + type: + description: Type of the warning. + example: visibility + type: string + type: object + SyntheticsTestResultWebSocketClose: + description: WebSocket close frame information for WebSocket test responses. + properties: + reason: + description: Reason string received in the close frame. + example: Normal closure + type: string + status_code: + description: Status code received in the close frame. + example: 1000 + format: int64 + type: integer + type: object + SyntheticsTestSubType: + description: Subtype of the Synthetic test that produced this result. + enum: + - dns + - grpc + - http + - icmp + - mcp + - multi + - ssl + - tcp + - udp + - websocket + example: http + type: string + x-enum-varnames: + - DNS + - GRPC + - HTTP + - ICMP + - MCP + - MULTI + - SSL + - TCP + - UDP + - WEBSOCKET + SyntheticsTestType: + description: Type of the Synthetic test that produced this result. + enum: + - api + - browser + - mobile + - network + example: api + type: string + x-enum-varnames: + - API + - BROWSER + - MOBILE + - NETWORK + SyntheticsTestVersionActionMetadata: + description: Object containing metadata about a change action. + properties: + after_value: + description: The value of the property after the change. + before_value: + description: The value of the property before the change. + diff_patches: + description: List of diff patches for text changes. + items: + $ref: "#/components/schemas/SyntheticsTestVersionDiffPatches" + nullable: true + type: array + property_path: + description: The dot-separated path of the property that was changed. + type: string + type: object + SyntheticsTestVersionAttributes: + description: Attributes of a specific Synthetic test version. + properties: + author: + $ref: "#/components/schemas/SyntheticsTestVersionAuthor" + change_metadata: + description: |- + List of metadata describing individual changes in this version. + Only returned when the `include_change_metadata` query parameter is `true`. + items: + $ref: "#/components/schemas/SyntheticsTestVersionChangeMetadataItem" + type: array + payload: + additionalProperties: {} + description: The full test configuration at this version. + type: object + version_payload_created_at: + description: Timestamp of when this version was created. + example: "2024-01-01T00:00:00+00:00" + format: date-time + type: string + type: object + SyntheticsTestVersionAuthor: + description: Object describing the author of a test version. + properties: + email: + description: Email address of the author. + example: john.doe@example.com + type: string + handle: + description: The author's Datadog handle (login username). + example: john.doe + type: string + id: + description: UUID of the author. + example: "00000000-0000-0000-0000-000000000000" + type: string + name: + description: Display name of the author. + example: John Doe + type: string + type: object + SyntheticsTestVersionChangeAttributes: + description: Attributes of a version change record. + properties: + author_uuid: + description: UUID of the user who created this version. + example: "00000000-0000-0000-0000-000000000000" + type: string + change_metadata: + description: List of metadata describing individual changes in this version. + items: + $ref: "#/components/schemas/SyntheticsTestVersionChangeMetadataItem" + type: array + version_number: + description: The sequential version number. + example: 5 + format: int64 + type: integer + version_payload_created_at: + description: Timestamp of when this version was created. + example: "2024-01-01T00:00:00+00:00" + format: date-time + type: string + type: object + SyntheticsTestVersionChangeData: + description: Data object for a version change record. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestVersionChangeAttributes" + id: + description: UUID of the version change record. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/SyntheticsTestVersionChangeType" + type: object + SyntheticsTestVersionChangeMetadataItem: + description: Object describing a single change within a version. + properties: + action: + description: The action that was performed (for example, `updated` or `created`). + type: string + action_metadata: + $ref: "#/components/schemas/SyntheticsTestVersionActionMetadata" + type: object + SyntheticsTestVersionChangeType: + default: version_metadata + description: Type of the version metadata resource. + enum: + - version_metadata + example: version_metadata + type: string + x-enum-varnames: + - VERSION_METADATA + SyntheticsTestVersionData: + description: Data object for a specific Synthetic test version. + properties: + attributes: + $ref: "#/components/schemas/SyntheticsTestVersionAttributes" + id: + description: UUID of the version record. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/SyntheticsTestVersionType" + type: object + SyntheticsTestVersionDiffPatchDiff: + description: Object describing a single text diff operation. + properties: + change_text: + description: The text that was changed. + type: string + operation: + description: The diff operation applied. + type: string + type: object + SyntheticsTestVersionDiffPatches: + description: Object describing a patch in the diff. + properties: + diffs: + description: List of individual diff operations. + items: + $ref: "#/components/schemas/SyntheticsTestVersionDiffPatchDiff" + type: array + length1: + description: Length of the original text segment. + format: int64 + type: integer + length2: + description: Length of the modified text segment. + format: int64 + type: integer + start1: + description: Start position in the original text. + format: int64 + type: integer + start2: + description: Start position in the modified text. + format: int64 + type: integer + type: object + SyntheticsTestVersionHistoryMeta: + description: Pagination metadata for a version history response. + properties: + next_last_version_number: + description: |- + The version number to use as the `last_version_number` query parameter + to fetch the next page. `null` indicates there are no more pages. + example: 3 + format: int64 + nullable: true + type: integer + retention_period_in_days: + description: The number of days that version history is retained. + example: 30 + format: int64 + type: integer + type: object + SyntheticsTestVersionHistoryResponse: + description: Response containing the paginated version history for a Synthetic test. + properties: + data: + description: List of version change records. + items: + $ref: "#/components/schemas/SyntheticsTestVersionChangeData" + type: array + meta: + $ref: "#/components/schemas/SyntheticsTestVersionHistoryMeta" + type: object + SyntheticsTestVersionResponse: + description: Response containing a specific version of a Synthetic test. + properties: + data: + $ref: "#/components/schemas/SyntheticsTestVersionData" + type: object + SyntheticsTestVersionType: + default: version + description: Type of the version resource. + enum: + - version + example: version + type: string + x-enum-varnames: + - VERSION + SyntheticsVariableParser: + description: Details of the parser to use for the global variable. + example: + type: regex + value: .* + properties: + type: + $ref: "#/components/schemas/SyntheticsGlobalVariableParserType" + value: + description: Regex or JSON path used for the parser. Not used with type `raw`. + type: string + required: + - type + type: object + TableResultV2: + description: A reference table resource containing its full configuration and state. + example: + data: + attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: + aws_detail: + aws_account_id: "123456789000" + aws_bucket_name: "my-bucket" + file_path: "path/to/file.csv" + sync_enabled: true + last_updated_by: 00000000-0000-0000-0000-000000000000 + row_count: 5 + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + source: S3 + status: DONE + table_name: test_reference_table + tags: + - tag1 + - tag2 + updated_at: "2000-01-01T01:00:00+00:00" + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + properties: + data: + $ref: "#/components/schemas/TableResultV2Data" + type: object + TableResultV2Array: + description: List of reference tables. + example: + data: + - attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: {} + error_message: "" + error_row_count: 0 + upload_id: 00000000-0000-0000-0000-000000000000 + last_updated_by: "" + row_count: 5 + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + source: LOCAL_FILE + status: DONE + table_name: test_reference_table + tags: + - tag1 + - tag2 + updated_at: "2000-01-01T01:00:00+00:00" + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + - attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: + aws_detail: + aws_account_id: test-account-id + aws_bucket_name: test-bucket + file_path: test_rt.csv + error_message: "" + error_row_count: 0 + sync_enabled: true + last_updated_by: 00000000-0000-0000-0000-000000000000 + row_count: 5 + schema: + fields: + - name: location + type: STRING + - name: file_name + type: STRING + primary_keys: + - location + source: S3 + status: DONE + table_name: test_reference_table_2 + tags: + - test_tag1 + - tag2 + - "3" + updated_at: "2000-01-01T01:00:00+00:00" + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + properties: + data: + description: The reference tables. + items: + $ref: "#/components/schemas/TableResultV2Data" + type: array + required: + - data + type: object + TableResultV2Data: + additionalProperties: false + description: The data object containing the reference table configuration and state. + properties: + attributes: + $ref: "#/components/schemas/TableResultV2DataAttributes" + id: + description: Unique identifier for the reference table. + type: string + type: + $ref: "#/components/schemas/TableResultV2DataType" + required: + - type + type: object + TableResultV2DataAttributes: + description: Attributes that define the reference table's configuration and properties. + properties: + created_by: + description: UUID of the user who created the reference table. + example: "00000000-0000-0000-0000-000000000000" + type: string + description: + description: Optional text describing the purpose or contents of this reference table. + example: "example description" + type: string + file_metadata: + $ref: "#/components/schemas/TableResultV2DataAttributesFileMetadata" + last_updated_by: + description: UUID of the user who last updated the reference table. + example: "00000000-0000-0000-0000-000000000000" + type: string + row_count: + description: The number of successfully processed rows in the reference table. + example: 5 + format: int64 + type: integer + schema: + $ref: "#/components/schemas/TableResultV2DataAttributesSchema" + source: + $ref: "#/components/schemas/ReferenceTableSourceType" + status: + description: The processing status of the table. + example: "DONE" + type: string + table_name: + description: Unique name to identify this reference table. Used in enrichment processors and API calls. + example: "table_1" + type: string + tags: + description: Tags for organizing and filtering reference tables. + example: + - "tag_1" + - "tag_2" + items: + description: A tag associated with the reference table. + type: string + type: array + updated_at: + description: When the reference table was last updated, in ISO 8601 format. + example: "2000-01-01T01:00:00+00:00" + type: string + type: object + TableResultV2DataAttributesFileMetadata: + additionalProperties: false + description: |- + Metadata specifying where and how to access the reference table's data file. + + For cloud storage tables (S3/GCS/Azure): + - sync_enabled and access_details will always be present + - error fields (error_message, error_row_count, error_type) are present only when errors occur + + For local file tables: + - error fields (error_message, error_row_count) are present only when errors occur + - sync_enabled, access_details are never present + properties: + access_details: + $ref: "#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetails" + description: Cloud storage access configuration. Only present for cloud storage sources (S3, GCS, Azure). + error_message: + description: The error message returned from the last operation (sync for cloud storage, upload for local file). + type: string + error_row_count: + description: The number of rows that failed to process. + format: int64 + type: integer + error_type: + $ref: "#/components/schemas/TableResultV2DataAttributesFileMetadataCloudStorageErrorType" + description: The type of error that occurred during file processing. Only applicable for cloud storage sources. + sync_enabled: + description: Whether this table is synced automatically from cloud storage. Only applicable for cloud storage sources. + type: boolean + title: FileMetadataV2 + type: object + TableResultV2DataAttributesFileMetadataCloudStorageErrorType: + description: The type of error that occurred during file processing. This field provides high-level error categories for easier troubleshooting and is only present when there are errors. + enum: + - TABLE_SCHEMA_ERROR + - FILE_FORMAT_ERROR + - CONFIGURATION_ERROR + - QUOTA_EXCEEDED + - CONFLICT_ERROR + - VALIDATION_ERROR + - STATE_ERROR + - OPERATION_ERROR + - SYSTEM_ERROR + type: string + x-enum-varnames: + - TABLE_SCHEMA_ERROR + - FILE_FORMAT_ERROR + - CONFIGURATION_ERROR + - QUOTA_EXCEEDED + - CONFLICT_ERROR + - VALIDATION_ERROR + - STATE_ERROR + - OPERATION_ERROR + - SYSTEM_ERROR + TableResultV2DataAttributesFileMetadataOneOfAccessDetails: + description: Cloud storage access configuration for the reference table data file. + properties: + aws_detail: + $ref: "#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAwsDetail" + azure_detail: + $ref: "#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAzureDetail" + gcp_detail: + $ref: "#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetailsGcpDetail" + type: object + TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAwsDetail: + description: Amazon Web Services S3 storage access configuration. + properties: + aws_account_id: + description: AWS account ID where the S3 bucket is located. + example: "123456789000" + type: string + aws_bucket_name: + description: S3 bucket containing the CSV file. + example: "example-data-bucket" + type: string + file_path: + description: The relative file path from the S3 bucket root to the CSV file. + example: "reference-tables/users.csv" + type: string + type: object + x-oneOf-parent: + - AwsDetail + TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAzureDetail: + description: Azure Blob Storage access configuration. + properties: + azure_client_id: + description: Azure service principal (application) client ID with permissions to read from the container. + example: "aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb" + type: string + azure_container_name: + description: Azure Blob Storage container containing the CSV file. + example: "reference-data" + type: string + azure_storage_account_name: + description: Azure storage account where the container is located. + example: "examplestorageaccount" + type: string + azure_tenant_id: + description: Azure Active Directory tenant ID. + example: "cccccccc-4444-5555-6666-dddddddddddd" + type: string + file_path: + description: The relative file path from the Azure container root to the CSV file. + example: "tables/users.csv" + type: string + type: object + x-oneOf-parent: + - AzureDetail + TableResultV2DataAttributesFileMetadataOneOfAccessDetailsGcpDetail: + description: Google Cloud Platform storage access configuration. + properties: + file_path: + description: The relative file path from the GCS bucket root to the CSV file. + example: "data/reference_tables/users.csv" + type: string + gcp_bucket_name: + description: GCP bucket containing the CSV file. + example: "example-data-bucket" + type: string + gcp_project_id: + description: GCP project ID where the bucket is located. + example: "example-gcp-project-12345" + type: string + gcp_service_account_email: + description: Service account email with read permissions for the GCS bucket. + example: "example-service@example-gcp-project-12345.iam.gserviceaccount.com" + type: string + type: object + x-oneOf-parent: + - GcpDetail + TableResultV2DataAttributesSchema: + description: Schema defining the structure and columns of the reference table. + properties: + fields: + description: The schema fields. Maximum of 200 columns. + items: + $ref: "#/components/schemas/TableResultV2DataAttributesSchemaFieldsItems" + maxItems: 200 + minItems: 1 + type: array + primary_keys: + description: List of field names that serve as primary keys for the table. Only one primary key is supported, and it is used as an ID to retrieve rows. + example: + - "field_1" + items: + description: A field name used as a primary key. + type: string + type: array + required: + - fields + - primary_keys + type: object + TableResultV2DataAttributesSchemaFieldsItems: + description: A single field (column) in the reference table schema to be returned. + properties: + name: + description: The field name. + example: "field_1" + type: string + type: + $ref: "#/components/schemas/ReferenceTableSchemaFieldType" + required: + - name + - type + type: object + TableResultV2DataType: + default: reference_table + description: Reference table resource type. + enum: + - reference_table + example: reference_table + type: string + x-enum-varnames: + - REFERENCE_TABLE + TableRowResourceArray: + description: List of rows from a reference table query. + properties: + data: + description: The rows. + items: + $ref: "#/components/schemas/TableRowResourceData" + type: array + required: + - data + type: object + TableRowResourceData: + additionalProperties: false + description: The data object containing the row column names and values. + properties: + attributes: + $ref: "#/components/schemas/TableRowResourceDataAttributes" + id: + description: Row identifier, corresponding to the primary key value. + type: string + type: + $ref: "#/components/schemas/TableRowResourceDataType" + required: + - type + type: object + TableRowResourceDataAttributes: + additionalProperties: false + description: Column values for this row in the reference table. + properties: + values: + description: Key-value pairs representing the row data, where keys are field names from the schema. + type: object + type: object + TableRowResourceDataType: + default: row + description: Row resource type. + enum: + - row + example: row + type: string + x-enum-varnames: + - ROW + TableRowResourceIdentifier: + description: Row resource containing a single row identifier. + properties: + id: + description: The primary key value that uniquely identifies the row to delete. + example: "primary_key_value" + type: string + type: + $ref: "#/components/schemas/TableRowResourceDataType" + required: + - type + - id + type: object + TagData: + description: A tag resource associated with an app. + properties: + id: + description: The name of the tag. + example: production + type: string + type: + $ref: "#/components/schemas/TagDataType" + required: + - id + - type + type: object + TagDataType: + description: The resource type for a tag. + enum: + - tag + example: tag + minLength: 3 + type: string + x-enum-varnames: + - TAG + TagIndexingRuleAttributes: + description: Attributes of a tag indexing rule. + properties: + created_at: + description: Timestamp when the rule was created. + example: "2024-01-15T12:00:00.000Z" + format: date-time + readOnly: true + type: string + created_by_handle: + description: Handle of the user who created the rule. + example: user@datadoghq.com + readOnly: true + type: string + exclude_tags_mode: + description: >- + When true, the rule excludes the listed tags and indexes all others. When false (default), the rule includes only the listed tags. + example: false + type: boolean + ignored_metric_name_matches: + description: Metric name prefixes excluded from the rule's scope. + example: + - "dd.test.excluded.*" + items: + type: string + type: array + metric_name_matches: + description: Metric name prefixes (glob patterns) this rule applies to. + example: + - "dd.test.*" + items: + type: string + type: array + modified_at: + description: Timestamp when the rule was last modified. + example: "2024-01-15T12:00:00.000Z" + format: date-time + readOnly: true + type: string + modified_by_handle: + description: Handle of the user who last modified the rule. + example: user@datadoghq.com + readOnly: true + type: string + name: + description: Human-readable name for the rule. + example: my-indexing-rule + type: string + options: + $ref: "#/components/schemas/TagIndexingRuleOptions" + rule_order: + description: >- + Evaluation order within the org. Lower values are evaluated first. Assigned server-side on create (max+1); pass on update to change the rule's position. + example: 1 + format: int64 + readOnly: true + type: integer + tags: + description: Tag keys managed by this rule. + example: + - env + - service + items: + type: string + type: array + type: object + TagIndexingRuleCreateAttributes: + description: Attributes for creating a tag indexing rule. + properties: + exclude_tags_mode: + description: >- + When true, the rule excludes the listed tags and indexes all others. When false (default), the rule includes only the listed tags. + example: false + type: boolean + ignored_metric_name_matches: + description: Metric name prefixes excluded from the rule's scope. + items: + type: string + type: array + metric_name_matches: + description: Metric name prefixes (glob patterns) this rule applies to. + example: + - "dd.test.*" + items: + type: string + type: array + name: + description: Human-readable name for the rule. + example: my-indexing-rule + type: string + options: + $ref: "#/components/schemas/TagIndexingRuleOptions" + tags: + description: Tag keys managed by this rule. + example: + - env + - service + items: + type: string + type: array + required: + - name + - metric_name_matches + type: object + TagIndexingRuleCreateData: + description: Data object for creating a tag indexing rule. + properties: + attributes: + $ref: "#/components/schemas/TagIndexingRuleCreateAttributes" + type: + $ref: "#/components/schemas/TagIndexingRuleType" + required: + - type + - attributes + type: object + TagIndexingRuleCreateRequest: + description: Request body for creating a tag indexing rule. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleCreateData" + required: + - data + type: object + TagIndexingRuleData: + description: A tag indexing rule resource object. + properties: + attributes: + $ref: "#/components/schemas/TagIndexingRuleAttributes" + id: + description: The unique identifier (UUID) of the tag indexing rule. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/TagIndexingRuleType" + type: object + TagIndexingRuleDynamicTags: + description: |- + Options for dynamic tag indexing applied per metric, such as tags filtered by query usage. + + Before a tag key is dropped by this rule, two grace period conditions must be met: + + 1. The metric must be submitted for at least as long as the selected window. + 2. A tag key must have been submitted for at least 15 days. + + Any metric or tag key that does not meet these conditions are excluded from this + indexing rule. The `exclude_not_*` fields require `exclude_tags_mode` to be set to `true`. + properties: + exclude_not_queried_window_seconds: + description: >- + Tags that have not been queried within this window are excluded from indexing. Maximum of `7776000` (90 days). + example: 3600 + format: int64 + maximum: 7776000 + type: integer + exclude_not_used_in_assets: + description: >- + Tags not used in any dashboards, monitors, notebooks, or SLOs are excluded from indexing. + example: false + type: boolean + queried_tags_window_seconds: + description: Window in seconds for evaluating queried tags. + example: 3600 + format: int64 + type: integer + related_asset_tags: + description: When true, tags from related assets are included. + example: false + type: boolean + type: object + TagIndexingRuleExemptionAttributes: + description: Attributes of a tag indexing rule exemption. + properties: + created_at: + description: Timestamp when the exemption was created. + example: "2024-01-15T12:00:00.000Z" + format: date-time + readOnly: true + type: string + created_by_handle: + description: Handle of the user who created the exemption. + example: user@datadoghq.com + readOnly: true + type: string + kind: + description: >- + Discriminates between an explicit exemption (`exemption`) and a pre-existing legacy tag configuration acting as an implicit exclusion (`legacy_tag_configuration`). + example: exemption + type: string + reason: + description: The reason the metric is exempt from tag indexing rules. + example: This metric has a pre-existing tag configuration. + type: string + type: object + TagIndexingRuleExemptionCreateAttributes: + description: Attributes for creating a tag indexing rule exemption. + properties: + reason: + description: The reason the metric is exempt from tag indexing rules. + example: This metric has a pre-existing tag configuration. + type: string + required: + - reason + type: object + TagIndexingRuleExemptionCreateData: + description: Data object for creating a tag indexing rule exemption. + properties: + attributes: + $ref: "#/components/schemas/TagIndexingRuleExemptionCreateAttributes" + type: + $ref: "#/components/schemas/TagIndexingRuleExemptionType" + required: + - type + - attributes + type: object + TagIndexingRuleExemptionCreateRequest: + description: Request body for creating a tag indexing rule exemption. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleExemptionCreateData" + required: + - data + type: object + TagIndexingRuleExemptionData: + description: A tag indexing rule exemption resource object. + properties: + attributes: + $ref: "#/components/schemas/TagIndexingRuleExemptionAttributes" + id: + description: The metric name, used as the resource ID. + example: dd.test.metric + type: string + type: + $ref: "#/components/schemas/TagIndexingRuleExemptionType" + type: object + TagIndexingRuleExemptionResponse: + description: Response containing a tag indexing rule exemption. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleExemptionData" + readOnly: true + type: object + TagIndexingRuleExemptionType: + default: tag_indexing_rule_exemptions + description: The tag indexing rule exemption resource type. + enum: + - tag_indexing_rule_exemptions + example: tag_indexing_rule_exemptions + type: string + x-enum-varnames: + - TAG_INDEXING_RULE_EXEMPTIONS + TagIndexingRuleMetricMatch: + description: Criteria for matching metrics based on query state. + properties: + is_queried: + description: Match metrics that are being queried. + type: boolean + not_queried: + description: Match metrics that are not being queried. + type: boolean + not_used_in_assets: + description: Match metrics not used in any dashboards or monitors. + type: boolean + queried_window_seconds: + description: Window in seconds for evaluating query state. + example: 3600 + format: int64 + type: integer + used_in_assets: + description: Match metrics used in dashboards or monitors. + type: boolean + type: object + TagIndexingRuleOptions: + description: Versioned configuration options for a tag indexing rule. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleOptionsData" + version: + description: Options schema version. Only `1` is supported. + example: 1 + format: int64 + type: integer + type: object + TagIndexingRuleOptionsData: + description: Data payload for tag indexing rule options. + properties: + dynamic_tags: + $ref: "#/components/schemas/TagIndexingRuleDynamicTags" + manage_preexisting_metrics: + description: >- + When true, the rule applies to metrics that were ingested before the rule was created. + example: true + type: boolean + metric_match: + $ref: "#/components/schemas/TagIndexingRuleMetricMatch" + override_previous_rules: + description: >- + When true, this rule's tag list overrides tags configured by earlier rules for the same metric. When false (default), tags from all matching rules are combined. + example: false + type: boolean + type: object + TagIndexingRuleOrderAttributes: + description: Attributes for the reorder operation. + properties: + rule_ids: + description: >- + Ordered list of tag indexing rule UUIDs. The server assigns rule_order 1, 2, … matching position in this list. + example: + - "00000000-0000-0000-0000-000000000001" + - "00000000-0000-0000-0000-000000000002" + items: + type: string + type: array + type: object + TagIndexingRuleOrderData: + description: Data object for the reorder operation. + properties: + attributes: + $ref: "#/components/schemas/TagIndexingRuleOrderAttributes" + type: + $ref: "#/components/schemas/TagIndexingRuleType" + required: + - type + - attributes + type: object + TagIndexingRuleOrderRequest: + description: Request body for reordering tag indexing rules. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleOrderData" + required: + - data + type: object + TagIndexingRuleResponse: + description: Response containing a single tag indexing rule. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleData" + readOnly: true + type: object + TagIndexingRuleType: + default: tag_indexing_rules + description: The tag indexing rule resource type. + enum: + - tag_indexing_rules + example: tag_indexing_rules + type: string + x-enum-varnames: + - TAG_INDEXING_RULES + TagIndexingRuleUpdateAttributes: + description: Attributes for updating a tag indexing rule. All fields are optional; omitted fields are unchanged. + properties: + exclude_tags_mode: + description: >- + When true, the rule excludes the listed tags and indexes all others. + type: boolean + ignored_metric_name_matches: + description: Metric name prefixes excluded from the rule's scope. + items: + type: string + type: array + metric_name_matches: + description: Metric name prefixes (glob patterns) this rule applies to. + example: + - "dd.test.*" + items: + type: string + type: array + name: + description: Human-readable name for the rule. + example: my-indexing-rule + type: string + options: + $ref: "#/components/schemas/TagIndexingRuleOptions" + rule_order: + description: >- + Desired evaluation order. Returns 409 if the value conflicts with another rule; use POST /api/v2/metrics/tag-indexing-rules/order for atomic re-sequencing. + example: 2 + format: int64 + type: integer + tags: + description: Tag keys managed by this rule. + example: + - env + - service + items: + type: string + type: array + type: object + TagIndexingRuleUpdateData: + description: Data object for updating a tag indexing rule. + properties: + attributes: + $ref: "#/components/schemas/TagIndexingRuleUpdateAttributes" + type: + $ref: "#/components/schemas/TagIndexingRuleType" + required: + - type + type: object + TagIndexingRuleUpdateRequest: + description: Request body for updating a tag indexing rule. + properties: + data: + $ref: "#/components/schemas/TagIndexingRuleUpdateData" + required: + - data + type: object + TagIndexingRulesResponse: + description: Response containing a page of tag indexing rules. + properties: + data: + description: Array of tag indexing rule objects. + items: + $ref: "#/components/schemas/TagIndexingRuleData" + type: array + links: + $ref: "#/components/schemas/MetricsListResponseLinks" + meta: + $ref: "#/components/schemas/TagIndexingRulesResponseMeta" + readOnly: true + type: object + TagIndexingRulesResponseMeta: + description: Pagination metadata for a list of tag indexing rules. + properties: + total: + description: Total number of tag indexing rules in the org. + example: 5 + format: int64 + type: integer + type: object + TagRuleAttributes: + description: The attributes of a tag rule resource. + properties: + created_at: + description: The RFC 3339 timestamp at which the rule was created. + example: "2026-05-21T22:11:06.108696Z" + format: date-time + type: string + created_by: + description: The identifier of the user who created the rule. + example: "test-user" + type: string + deleted_at: + description: The RFC 3339 timestamp at which the rule was soft-deleted. `null` if the rule has not been deleted. Only present when `include_deleted=true` is requested. + format: date-time + nullable: true + type: string + deleted_by: + description: The identifier of the user who soft-deleted the rule. `null` if the rule has not been deleted. + nullable: true + type: string + enabled: + description: Whether the rule is currently enforced. + example: true + type: boolean + modified_at: + description: The RFC 3339 timestamp at which the rule was last modified. + example: "2026-05-21T22:11:06.108696Z" + format: date-time + type: string + modified_by: + description: The identifier of the user who last modified the rule. + example: "test-user" + type: string + name: + description: Human-readable name for the tag rule. + example: "Service tag must be one of api or web" + type: string + negated: + description: When `true`, the rule matches tag values that do NOT match any of the supplied patterns. + example: false + type: boolean + required: + description: When `true`, telemetry without this tag is treated as a violation. + example: true + type: boolean + rule_type: + $ref: "#/components/schemas/TagRuleType" + scope: + description: The scope the rule applies within. + example: "env" + type: string + source: + $ref: "#/components/schemas/TagRuleSource" + tag_key: + description: The tag key that the rule governs. + example: "service" + type: string + tag_value_patterns: + description: The patterns that valid values for the tag key must match. + example: + - "api" + - "web" + items: + description: A pattern that valid tag values must match. + type: string + type: array + version: + description: A monotonically increasing version counter that is incremented on each update. + example: 1 + format: int64 + type: integer + required: + - name + - source + - scope + - tag_key + - tag_value_patterns + - negated + - required + - enabled + - rule_type + - version + - created_at + - created_by + - modified_at + - modified_by + type: object + TagRuleCreateAttributes: + description: Attributes that can be supplied when creating a tag rule. + properties: + enabled: + description: Whether the rule is currently enforced. Defaults to `true` for newly created rules. + example: true + type: boolean + name: + description: Human-readable name for the tag rule. + example: "Service tag must be one of api or web" + type: string + negated: + description: When `true`, the rule matches tag values that do NOT match any of the supplied patterns. Defaults to `false`. + example: false + type: boolean + required: + description: When `true`, telemetry without this tag is treated as a violation. Defaults to `false`. + example: true + type: boolean + rule_type: + $ref: "#/components/schemas/TagRuleCreateType" + scope: + description: |- + The scope the rule applies within. Typically an environment, team, or + organization-level identifier used to limit where the rule is enforced. + example: "env" + type: string + source: + $ref: "#/components/schemas/TagRuleSource" + tag_key: + description: The tag key that the rule governs (for example, `service`). + example: "service" + type: string + tag_value_patterns: + description: |- + One or more patterns that valid values for the tag key must match. At least one + pattern is required. + example: + - "api" + - "web" + items: + description: A pattern that valid tag values must match. + type: string + minItems: 1 + type: array + required: + - name + - source + - scope + - tag_key + - tag_value_patterns + - rule_type + type: object + TagRuleCreateData: + description: Data object for creating a tag rule. + properties: + attributes: + $ref: "#/components/schemas/TagRuleCreateAttributes" + type: + $ref: "#/components/schemas/TagRuleResourceType" + required: + - type + - attributes + type: object + TagRuleCreateRequest: + description: Payload for creating a new tag rule. + properties: + data: + $ref: "#/components/schemas/TagRuleCreateData" + required: + - data + type: object + TagRuleCreateType: + description: |- + The rule type allowed when creating a tag rule. Only `surfacing` is accepted at + creation time. + enum: + - surfacing + example: "surfacing" + type: string + x-enum-varnames: + - SURFACING + TagRuleData: + description: A tag rule resource. + properties: + attributes: + $ref: "#/components/schemas/TagRuleAttributes" + id: + description: The unique identifier of the tag rule. + example: "123" + type: string + relationships: + $ref: "#/components/schemas/TagRuleRelationships" + type: + $ref: "#/components/schemas/TagRuleResourceType" + required: + - type + - id + - attributes + type: object + TagRuleDataArray: + description: An array of tag rule data objects. + items: + $ref: "#/components/schemas/TagRuleData" + type: array + TagRuleInclude: + description: A related resource to include alongside a tag rule in the response. Currently the only supported value is `score`. + enum: + - score + example: "score" + type: string + x-enum-varnames: + - SCORE + TagRuleIncludedResources: + description: Related resources fetched alongside the primary tag rules. Populated when an `include` query parameter is supplied. + items: + $ref: "#/components/schemas/TagRuleScoreData" + type: array + TagRuleRelationships: + description: Related resources for a tag rule. Only present when the corresponding `include` query parameter is supplied. + properties: + score: + $ref: "#/components/schemas/TagRuleScoreRelationship" + type: object + TagRuleResourceType: + description: JSON:API resource type for a tag rule. + enum: + - tag_rule + example: "tag_rule" + type: string + x-enum-varnames: + - TAG_RULE + TagRuleResponse: + description: A single tag rule. + properties: + data: + $ref: "#/components/schemas/TagRuleData" + included: + $ref: "#/components/schemas/TagRuleIncludedResources" + required: + - data + type: object + TagRuleScoreAttributes: + description: Attributes of a tag rule compliance score. + properties: + score: + description: |- + The compliance score for the rule over the requested time window, as a percentage + between 0 and 100. `null` indicates that no relevant telemetry was found. + example: 80 + format: double + nullable: true + type: number + ts_end: + description: End of the time window the score was computed over, as a Unix timestamp in milliseconds. + example: 1779401466097 + format: int64 + type: integer + ts_start: + description: Start of the time window the score was computed over, as a Unix timestamp in milliseconds. + example: 1779315066097 + format: int64 + type: integer + version: + description: The version of the tag rule that the score was computed against. + example: 1 + format: int64 + type: integer + required: + - score + - ts_start + - ts_end + - version + type: object + TagRuleScoreData: + description: A compliance score resource for a tag rule. + properties: + attributes: + $ref: "#/components/schemas/TagRuleScoreAttributes" + id: + description: The unique identifier of the compliance score resource. + example: "123-v1-1779315066097-1779401466097" + type: string + type: + $ref: "#/components/schemas/TagRuleScoreResourceType" + required: + - type + - id + - attributes + type: object + TagRuleScoreRelationship: + description: A relationship to the compliance score resource for this rule. + properties: + data: + $ref: "#/components/schemas/TagRuleScoreRelationshipData" + required: + - data + type: object + TagRuleScoreRelationshipData: + description: Identifier of the related compliance score resource. + properties: + id: + description: The unique identifier of the related compliance score resource. + example: "123-v1-1779315066097-1779401466097" + type: string + type: + $ref: "#/components/schemas/TagRuleScoreResourceType" + required: + - type + - id + type: object + TagRuleScoreResourceType: + description: JSON:API resource type for a tag rule compliance score. + enum: + - tag_rule_score + example: "tag_rule_score" + type: string + x-enum-varnames: + - TAG_RULE_SCORE + TagRuleScoreResponse: + description: A tag rule compliance score. + properties: + data: + $ref: "#/components/schemas/TagRuleScoreData" + required: + - data + type: object + TagRuleSource: + description: The telemetry source that a tag rule applies to. + enum: + - logs + - spans + - metrics + - rum + - feed + example: "logs" + type: string + x-enum-varnames: + - LOGS + - SPANS + - METRICS + - RUM + - FEED + TagRuleType: + description: |- + How the rule is enforced. `blocking` rejects telemetry that violates the rule. + `surfacing` only highlights non-compliant telemetry without blocking it. + enum: + - blocking + - surfacing + example: "surfacing" + type: string + x-enum-varnames: + - BLOCKING + - SURFACING + TagRuleUpdateAttributes: + description: |- + Mutable attributes of a tag rule. Each field is optional; omitting a field leaves its + current value unchanged. The `source` of a rule cannot be changed. + properties: + enabled: + description: Whether the rule is currently enforced. + type: boolean + name: + description: Human-readable name for the tag rule. + type: string + negated: + description: When `true`, the rule matches tag values that do NOT match any of the supplied patterns. + type: boolean + required: + description: When `true`, telemetry without this tag is treated as a violation. + type: boolean + rule_type: + $ref: "#/components/schemas/TagRuleType" + scope: + description: The scope the rule applies within. + type: string + tag_key: + description: The tag key that the rule governs. + type: string + tag_value_patterns: + description: One or more patterns that valid values for the tag key must match. + items: + description: A pattern that valid tag values must match. + type: string + type: array + type: object + TagRuleUpdateData: + description: Data object for updating a tag rule. + properties: + attributes: + $ref: "#/components/schemas/TagRuleUpdateAttributes" + id: + description: The unique identifier of the tag rule being updated. + example: "123" + type: string + type: + $ref: "#/components/schemas/TagRuleResourceType" + required: + - type + - id + type: object + TagRuleUpdateRequest: + description: Payload for updating an existing tag rule. Only the supplied fields are modified. + properties: + data: + $ref: "#/components/schemas/TagRuleUpdateData" + required: + - data + type: object + TagRulesListResponse: + description: A page of tag rules. + properties: + data: + $ref: "#/components/schemas/TagRuleDataArray" + included: + $ref: "#/components/schemas/TagRuleIncludedResources" + required: + - data + type: object + TagsEventAttribute: + description: Array of tags associated with your event. + example: ["team:A"] + items: + description: Tag associated with your event. + type: string + type: array + TargetingRule: + description: Targeting rule details. + properties: + conditions: + description: Conditions evaluated by this targeting rule. + items: + $ref: "#/components/schemas/Condition" + type: array + created_at: + description: The timestamp when the targeting rule was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + id: + description: The unique identifier of the targeting rule. + example: "550e8400-e29b-41d4-a716-446655440060" + format: uuid + type: string + updated_at: + description: The timestamp when the targeting rule was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + required: + - id + - conditions + - created_at + - updated_at + type: object + TargetingRuleRequest: + description: Targeting rule request payload. + properties: + conditions: + description: Conditions that must match for this rule. + items: + $ref: "#/components/schemas/ConditionRequest" + minItems: 1 + type: array + required: + - conditions + type: object + Targets: + description: |- + List of recipients to notify when a notification rule is triggered. Many different target types are supported, + such as email addresses, Slack channels, and PagerDuty services. + The appropriate integrations need to be properly configured to send notifications to the specified targets. + example: ["@john.doe@email.com"] + items: + description: Recipients to notify. + type: string + type: array + Team: + description: A team + properties: + attributes: + $ref: "#/components/schemas/TeamAttributes" + id: + description: The team's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + relationships: + $ref: "#/components/schemas/TeamRelationships" + type: + $ref: "#/components/schemas/TeamType" + required: + - attributes + - id + - type + type: object + TeamAttributes: + description: Team attributes + properties: + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: "🥑" + nullable: true + type: string + banner: + description: Banner selection for the team + format: int64 + nullable: true + type: integer + created_at: + description: Creation date of the team + format: date-time + type: string + description: + description: Free-form markdown description/content for the team's homepage + nullable: true + type: string + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + hidden_modules: + description: Collection of hidden modules for the team + items: + description: String identifier of the module + type: string + nullable: true + type: array + is_managed: + description: Whether the team is managed from an external source + type: boolean + link_count: + description: The number of links belonging to the team + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + modified_at: + description: Modification date of the team + format: date-time + type: string + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + summary: + description: A brief summary of the team, derived from the `description` + maxLength: 120 + nullable: true + type: string + user_count: + description: The number of users belonging to the team + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + visible_modules: + description: Collection of visible modules for the team + items: + description: String identifier of the module + type: string + nullable: true + type: array + required: + - handle + - name + type: object + TeamConnection: + description: A relationship between a Datadog team and a team from another external system. + properties: + attributes: + $ref: "#/components/schemas/TeamConnectionAttributes" + id: + description: The unique identifier of the team connection. + example: "12345678-1234-5678-9abc-123456789012" + type: string + relationships: + $ref: "#/components/schemas/TeamConnectionRelationships" + type: + $ref: "#/components/schemas/TeamConnectionType" + required: + - id + - type + type: object + TeamConnectionAttributes: + description: Attributes of the team connection. + properties: + managed_by: + description: The entity that manages this team connection. + example: "github_sync" + type: string + source: + description: The name of the external source. + example: "github" + type: string + type: object + TeamConnectionCreateData: + description: Data for creating a team connection. + properties: + attributes: + $ref: "#/components/schemas/TeamConnectionAttributes" + relationships: + $ref: "#/components/schemas/TeamConnectionRelationships" + type: + $ref: "#/components/schemas/TeamConnectionType" + required: + - type + type: object + TeamConnectionCreateRequest: + description: Request for creating team connections. + properties: + data: + description: Array of team connections to create. + items: + $ref: "#/components/schemas/TeamConnectionCreateData" + type: array + required: + - data + type: object + TeamConnectionDeleteRequest: + description: Request for deleting team connections. + properties: + data: + description: Array of team connection IDs to delete. + items: + $ref: "#/components/schemas/TeamConnectionDeleteRequestDataItem" + type: array + required: + - data + type: object + TeamConnectionDeleteRequestDataItem: + description: A collection of connection ids to delete. + properties: + id: + description: The unique identifier of the team connection to delete. + example: "12345678-1234-5678-9abc-123456789012" + type: string + type: + $ref: "#/components/schemas/TeamConnectionType" + required: + - id + - type + type: object + TeamConnectionRelationships: + description: Relationships of the team connection. + properties: + connected_team: + $ref: "#/components/schemas/ConnectedTeamRef" + team: + $ref: "#/components/schemas/TeamRef" + type: object + TeamConnectionType: + default: "team_connection" + description: Team connection resource type. + enum: + - team_connection + example: "team_connection" + type: string + x-enum-varnames: + - TEAM_CONNECTION + TeamConnectionsResponse: + description: Response containing information about multiple team connections. + properties: + data: + description: Array of team connections. + items: + $ref: "#/components/schemas/TeamConnection" + type: array + meta: + $ref: "#/components/schemas/ConnectionsResponseMeta" + type: object + TeamCreate: + description: Team create + properties: + attributes: + $ref: "#/components/schemas/TeamCreateAttributes" + relationships: + $ref: "#/components/schemas/TeamCreateRelationships" + type: + $ref: "#/components/schemas/TeamType" + required: + - attributes + - type + type: object + TeamCreateAttributes: + description: Team creation attributes + properties: + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: "🥑" + nullable: true + type: string + banner: + description: Banner selection for the team + format: int64 + nullable: true + type: integer + description: + description: Free-form markdown description/content for the team's homepage + type: string + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + hidden_modules: + description: Collection of hidden modules for the team + items: + description: String identifier of the module + type: string + type: array + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + visible_modules: + description: Collection of visible modules for the team + items: + description: String identifier of the module + type: string + type: array + required: + - handle + - name + type: object + TeamCreateRelationships: + description: Relationships formed with the team on creation + properties: + users: + $ref: "#/components/schemas/RelationshipToUsers" + type: object + TeamCreateRequest: + description: Request to create a team + properties: + data: + $ref: "#/components/schemas/TeamCreate" + required: + - data + type: object + TeamHierarchyLink: + description: Team hierarchy link + properties: + attributes: + $ref: "#/components/schemas/TeamHierarchyLinkAttributes" + id: + description: The team hierarchy link's identifier + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + relationships: + $ref: "#/components/schemas/TeamHierarchyLinkRelationships" + type: + $ref: "#/components/schemas/TeamHierarchyLinkType" + required: + - attributes + - id + - type + type: object + TeamHierarchyLinkAttributes: + description: Team hierarchy link attributes + properties: + created_at: + description: Timestamp when the team hierarchy link was created + example: "" + format: date-time + type: string + provisioned_by: + description: The provisioner of the team hierarchy link + example: "system" + type: string + required: + - provisioned_by + - created_at + type: object + TeamHierarchyLinkCreate: + description: Data provided when creating a team hierarchy link + properties: + relationships: + $ref: "#/components/schemas/TeamHierarchyLinkCreateRelationships" + type: + $ref: "#/components/schemas/TeamHierarchyLinkType" + required: + - relationships + - type + type: object + TeamHierarchyLinkCreateRelationships: + description: The related teams that will be connected by the team hierarchy link + properties: + parent_team: + $ref: "#/components/schemas/TeamHierarchyLinkCreateTeamRelationship" + sub_team: + $ref: "#/components/schemas/TeamHierarchyLinkCreateTeamRelationship" + required: + - parent_team + - sub_team + type: object + TeamHierarchyLinkCreateRequest: + description: Request to create a team hierarchy link + properties: + data: + $ref: "#/components/schemas/TeamHierarchyLinkCreate" + required: + - data + type: object + TeamHierarchyLinkCreateTeam: + description: This schema defines the attributes about each team that has to be provided when creating a team hierarchy link + properties: + id: + description: The team's identifier + example: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: string + type: + $ref: "#/components/schemas/TeamType" + required: + - id + - type + type: object + TeamHierarchyLinkCreateTeamRelationship: + description: Data about each team that will be connected by the team hierarchy link + properties: + data: + $ref: "#/components/schemas/TeamHierarchyLinkCreateTeam" + required: + - data + type: object + TeamHierarchyLinkRelationships: + description: Team hierarchy link relationships + properties: + parent_team: + $ref: "#/components/schemas/TeamHierarchyLinkTeamRelationship" + sub_team: + $ref: "#/components/schemas/TeamHierarchyLinkTeamRelationship" + required: + - parent_team + - sub_team + type: object + TeamHierarchyLinkResponse: + description: Team hierarchy link response + properties: + data: + $ref: "#/components/schemas/TeamHierarchyLink" + included: + description: Included teams + items: + $ref: "#/components/schemas/TeamHierarchyLinkTeam" + type: array + links: + $ref: "#/components/schemas/TeamsHierarchyLinksResponseLinks" + type: object + TeamHierarchyLinkTeam: + description: Team hierarchy links connect different teams. This represents team objects that are connected by the team hierarchy link. + properties: + attributes: + $ref: "#/components/schemas/TeamHierarchyLinkTeamAttributes" + id: + description: The team's identifier + example: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: string + type: + $ref: "#/components/schemas/TeamType" + required: + - id + - type + type: object + TeamHierarchyLinkTeamAttributes: + description: Team hierarchy links connect different teams. This represents attributes from teams that are connected by the team hierarchy link. + properties: + avatar: + description: The team's avatar + nullable: true + type: string + banner: + description: The team's banner + format: int64 + type: integer + handle: + description: The team's handle + example: team-handle + type: string + is_managed: + description: Whether the team is managed + type: boolean + is_open_membership: + description: Whether the team has open membership + type: boolean + link_count: + description: The number of links for the team + format: int64 + type: integer + name: + description: The team's name + example: Team Name + type: string + summary: + description: The team's summary + nullable: true + type: string + user_count: + description: The number of users in the team + format: int64 + type: integer + required: + - handle + - name + type: object + TeamHierarchyLinkTeamRelationship: + description: Team hierarchy link team relationship + properties: + data: + $ref: "#/components/schemas/TeamHierarchyLinkTeam" + required: + - data + type: object + TeamHierarchyLinkType: + default: team_hierarchy_links + description: Team hierarchy link type + enum: + - team_hierarchy_links + example: team_hierarchy_links + type: string + x-enum-varnames: + - TEAM_HIERARCHY_LINKS + TeamHierarchyLinksResponse: + description: Team hierarchy links response + properties: + data: + description: Team hierarchy links response data + items: + $ref: "#/components/schemas/TeamHierarchyLink" + type: array + included: + description: Included teams + items: + $ref: "#/components/schemas/TeamHierarchyLinkTeam" + type: array + links: + $ref: "#/components/schemas/TeamsHierarchyLinksResponseLinks" + meta: + $ref: "#/components/schemas/TeamsHierarchyLinksResponseMeta" + type: object + TeamIncluded: + description: Included resources related to the team + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/TeamLink" + - $ref: "#/components/schemas/UserTeamPermission" + TeamLink: + description: Team link + properties: + attributes: + $ref: "#/components/schemas/TeamLinkAttributes" + id: + description: The team link's identifier + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/TeamLinkType" + required: + - attributes + - id + - type + type: object + TeamLinkAttributes: + description: Team link attributes + properties: + label: + description: The link's label + example: Link label + maxLength: 256 + type: string + position: + description: The link's position, used to sort links for the team + format: int32 + maximum: 2147483647 + type: integer + team_id: + description: ID of the team the link is associated with + readOnly: true + type: string + url: + description: The URL for the link + example: "https://example.com" + type: string + required: + - label + - url + type: object + TeamLinkCreate: + description: Team link create + properties: + attributes: + $ref: "#/components/schemas/TeamLinkAttributes" + type: + $ref: "#/components/schemas/TeamLinkType" + required: + - attributes + - type + type: object + TeamLinkCreateRequest: + description: Team link create request + properties: + data: + $ref: "#/components/schemas/TeamLinkCreate" + required: + - data + type: object + TeamLinkResponse: + description: Team link response + properties: + data: + $ref: "#/components/schemas/TeamLink" + type: object + TeamLinkType: + default: team_links + description: Team link type + enum: + - team_links + example: team_links + type: string + x-enum-varnames: + - TEAM_LINKS + TeamLinksResponse: + description: Team links response + properties: + data: + description: Team links response data + items: + $ref: "#/components/schemas/TeamLink" + type: array + type: object + TeamNotificationRule: + description: Team notification rule + properties: + attributes: + $ref: "#/components/schemas/TeamNotificationRuleAttributes" + id: + description: The identifier of the team notification rule + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/TeamNotificationRuleType" + required: + - attributes + - type + type: object + TeamNotificationRuleAttributes: + description: Team notification rule attributes + properties: + email: + $ref: "#/components/schemas/TeamNotificationRuleAttributesEmail" + ms_teams: + $ref: "#/components/schemas/TeamNotificationRuleAttributesMsTeams" + pagerduty: + $ref: "#/components/schemas/TeamNotificationRuleAttributesPagerduty" + slack: + $ref: "#/components/schemas/TeamNotificationRuleAttributesSlack" + type: object + TeamNotificationRuleAttributesEmail: + description: Email notification settings for the team + properties: + enabled: + description: Flag indicating email notification + type: boolean + type: object + TeamNotificationRuleAttributesMsTeams: + description: MS Teams notification settings for the team + properties: + connector_name: + description: Handle for MS Teams + type: string + type: object + TeamNotificationRuleAttributesPagerduty: + description: PagerDuty notification settings for the team + properties: + service_name: + description: Service name for PagerDuty + type: string + type: object + TeamNotificationRuleAttributesSlack: + description: Slack notification settings for the team + properties: + channel: + description: Channel for Slack notification + type: string + workspace: + description: Workspace for Slack notification + type: string + type: object + TeamNotificationRuleRequest: + description: Request to create or update a team notification rule + properties: + data: + $ref: "#/components/schemas/TeamNotificationRule" + required: + - data + type: object + TeamNotificationRuleResponse: + description: Team notification rule response + properties: + data: + $ref: "#/components/schemas/TeamNotificationRule" + type: object + TeamNotificationRuleType: + default: team_notification_rules + description: Team notification rule type + enum: + - team_notification_rules + example: team_notification_rules + type: string + x-enum-varnames: + - TEAM_NOTIFICATION_RULES + TeamNotificationRulesResponse: + description: Team notification rules response + properties: + data: + description: Team notification rules response data + items: + $ref: "#/components/schemas/TeamNotificationRule" + type: array + meta: + $ref: "#/components/schemas/TeamNotificationRulesResponseMeta" + type: object + TeamNotificationRulesResponseMeta: + description: Metadata that is included in the response when querying the team notification rules + properties: + page: + $ref: "#/components/schemas/TeamNotificationRulesResponseMetaPage" + type: object + TeamNotificationRulesResponseMetaPage: + description: |- + Metadata related to paging information that is included in the response when querying the team notification rules + properties: + first_offset: + description: The first offset. + format: int64 + type: integer + last_offset: + description: The last offset. + format: int64 + type: integer + limit: + description: Pagination limit. + format: int64 + type: integer + next_offset: + description: The next offset. + format: int64 + nullable: true + type: integer + offset: + description: The offset. + format: int64 + type: integer + prev_offset: + description: The previous offset. + format: int64 + nullable: true + type: integer + total: + description: Total results. + format: int64 + type: integer + type: + description: Offset type. + type: string + type: object + TeamOnCallResponders: + description: Root object representing a team's on-call responder configuration. + example: + data: + id: "111ee23r-aaaaa-aaaa-aaww-1234wertsd23" + relationships: + escalations: + data: + - id: "111ee23r-aaaaa-aaaa-aaww-1234wertsd23" + type: escalation_policy_steps + responders: + data: + - id: "111ee23r-aaaaa-aaaa-aaww-1234wertsd23" + type: users + type: team_oncall_responders + included: + - attributes: + email: test@test.com + name: Test User + status: active + id: "111ee23r-aaaaa-aaaa-aaww-1234wertsd23" + type: users + - id: "111ee23r-aaaaa-aaaa-aaww-1234wertsd23" + relationships: + responders: + data: + - id: "111ee23r-aaaaa-aaaa-aaww-1234wertsd23" + type: users + type: escalation_policy_steps + properties: + data: + $ref: "#/components/schemas/TeamOnCallRespondersData" + included: + description: The `TeamOnCallResponders` `included`. + items: + $ref: "#/components/schemas/TeamOnCallRespondersIncluded" + type: array + type: object + TeamOnCallRespondersData: + description: Defines the main on-call responder object for a team, including relationships and metadata. + properties: + id: + description: Unique identifier of the on-call responder configuration. + type: string + relationships: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationships" + type: + $ref: "#/components/schemas/TeamOnCallRespondersDataType" + required: + - type + type: object + TeamOnCallRespondersDataRelationships: + description: Relationship objects linked to a team's on-call responder configuration, including escalations and responders. + properties: + escalations: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalations" + responders: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationshipsResponders" + type: object + TeamOnCallRespondersDataRelationshipsEscalations: + description: Defines the escalation policy steps linked to the team's on-call configuration. + properties: + data: + description: Array of escalation step references. + items: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItems" + type: array + type: object + TeamOnCallRespondersDataRelationshipsEscalationsDataItems: + description: Represents a link to a specific escalation policy step associated with the on-call team. + properties: + id: + description: Unique identifier of the escalation step. + example: "" + type: string + type: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType" + required: + - type + - id + type: object + TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType: + default: escalation_policy_steps + description: Identifies the resource type for escalation policy steps linked to a team's on-call configuration. + enum: + - escalation_policy_steps + example: escalation_policy_steps + type: string + x-enum-varnames: + - ESCALATION_POLICY_STEPS + TeamOnCallRespondersDataRelationshipsResponders: + description: Defines the list of users assigned as on-call responders for the team. + properties: + data: + description: Array of user references associated as responders. + items: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItems" + type: array + type: object + TeamOnCallRespondersDataRelationshipsRespondersDataItems: + description: Represents a user responder associated with the on-call team. + properties: + id: + description: Unique identifier of the responder. + example: "" + type: string + type: + $ref: "#/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItemsType" + required: + - type + - id + type: object + TeamOnCallRespondersDataRelationshipsRespondersDataItemsType: + default: users + description: Identifies the resource type for individual user entities associated with on-call response. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + TeamOnCallRespondersDataType: + default: team_oncall_responders + description: Represents the resource type for a group of users assigned to handle on-call duties within a team. + enum: + - team_oncall_responders + example: team_oncall_responders + type: string + x-enum-varnames: + - TEAM_ONCALL_RESPONDERS + TeamOnCallRespondersIncluded: + description: Represents an union of related resources included in the response, such as users and escalation steps. + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/Escalation" + TeamPermissionSetting: + description: Team permission setting + properties: + attributes: + $ref: "#/components/schemas/TeamPermissionSettingAttributes" + id: + description: The team permission setting's identifier + example: TeamPermission-aeadc05e-98a8-11ec-ac2c-da7ad0900001-edit + type: string + type: + $ref: "#/components/schemas/TeamPermissionSettingType" + required: + - id + - type + type: object + TeamPermissionSettingAttributes: + description: Team permission setting attributes + properties: + action: + $ref: "#/components/schemas/TeamPermissionSettingSerializerAction" + editable: + description: Whether or not the permission setting is editable by the current user + readOnly: true + type: boolean + options: + $ref: "#/components/schemas/TeamPermissionSettingValues" + title: + description: The team permission name + readOnly: true + type: string + value: + $ref: "#/components/schemas/TeamPermissionSettingValue" + type: object + TeamPermissionSettingResponse: + description: Team permission setting response + properties: + data: + $ref: "#/components/schemas/TeamPermissionSetting" + type: object + TeamPermissionSettingSerializerAction: + description: The identifier for the action + enum: + - manage_membership + - edit + readOnly: true + type: string + x-enum-varnames: + - MANAGE_MEMBERSHIP + - EDIT + TeamPermissionSettingType: + default: team_permission_settings + description: Team permission setting type + enum: + - team_permission_settings + example: team_permission_settings + type: string + x-enum-varnames: + - TEAM_PERMISSION_SETTINGS + TeamPermissionSettingUpdate: + description: Team permission setting update + properties: + attributes: + $ref: "#/components/schemas/TeamPermissionSettingUpdateAttributes" + type: + $ref: "#/components/schemas/TeamPermissionSettingType" + required: + - type + type: object + TeamPermissionSettingUpdateAttributes: + description: Team permission setting update attributes + properties: + value: + $ref: "#/components/schemas/TeamPermissionSettingValue" + type: object + TeamPermissionSettingUpdateRequest: + description: Team permission setting update request + properties: + data: + $ref: "#/components/schemas/TeamPermissionSettingUpdate" + required: + - data + type: object + TeamPermissionSettingValue: + description: What type of user is allowed to perform the specified action + enum: + - admins + - members + - organization + - user_access_manage + - teams_manage + type: string + x-enum-varnames: + - ADMINS + - MEMBERS + - ORGANIZATION + - USER_ACCESS_MANAGE + - TEAMS_MANAGE + TeamPermissionSettingValues: + description: Possible values for action + items: + $ref: "#/components/schemas/TeamPermissionSettingValue" + readOnly: true + type: array + TeamPermissionSettingsResponse: + description: Team permission settings response + properties: + data: + description: Team permission settings response data + items: + $ref: "#/components/schemas/TeamPermissionSetting" + type: array + type: object + TeamRef: + description: Reference to a Datadog team. + properties: + data: + $ref: "#/components/schemas/TeamRefData" + type: object + TeamRefData: + description: Reference to a Datadog team. + properties: + id: + description: The Datadog team ID. + example: "87654321-4321-8765-dcba-210987654321" + type: string + type: + $ref: "#/components/schemas/TeamRefDataType" + required: + - id + - type + type: object + TeamRefDataType: + default: "team" + description: Datadog team resource type. + enum: + - team + example: "team" + type: string + x-enum-varnames: + - TEAM + TeamReference: + description: Provides a reference to a team, including ID, type, and basic attributes/relationships. + properties: + attributes: + $ref: "#/components/schemas/TeamReferenceAttributes" + id: + description: The team's unique identifier. + type: string + type: + $ref: "#/components/schemas/TeamReferenceType" + required: + - type + type: object + TeamReferenceAttributes: + description: Encapsulates the basic attributes of a Team reference, such as name, handle, and an optional avatar or description. + properties: + avatar: + description: URL or reference for the team's avatar (if available). + type: string + description: + description: A short text describing the team. + type: string + handle: + description: A unique handle/slug for the team. + type: string + name: + description: The full, human-readable name of the team. + type: string + type: object + TeamReferenceType: + default: teams + description: |- + Teams resource type. + enum: + - teams + example: teams + type: string + x-enum-varnames: + - TEAMS + TeamRelationships: + description: Resources related to a team + properties: + team_links: + $ref: "#/components/schemas/RelationshipToTeamLinks" + user_team_permissions: + $ref: "#/components/schemas/RelationshipToUserTeamPermission" + type: object + TeamRelationshipsLinks: + description: Links attributes. + properties: + related: + description: Related link. + example: "/api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links" + type: string + type: object + TeamResponse: + description: Response with a team + properties: + data: + $ref: "#/components/schemas/Team" + type: object + TeamRoutingRules: + description: Represents a complete set of team routing rules, including data and optionally included related resources. + example: + data: + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + rules: + data: + - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a + type: team_routing_rules + - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a + type: team_routing_rules + type: team_routing_rules + included: + - attributes: + actions: + query: tags.service:test + time_restriction: + restrictions: + - end_day: monday + end_time: "17:00:00" + start_day: monday + start_time: "09:00:00" + - end_day: tuesday + end_time: "17:00:00" + start_day: tuesday + start_time: "09:00:00" + time_zone: "" + urgency: high + id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a + relationships: + policy: + data: + type: team_routing_rules + properties: + data: + $ref: "#/components/schemas/TeamRoutingRulesData" + included: + description: Provides related routing rules or other included resources. + items: + $ref: "#/components/schemas/TeamRoutingRulesIncluded" + type: array + type: object + TeamRoutingRulesData: + description: Represents the top-level data object for team routing rules, containing the ID, relationships, and resource type. + properties: + id: + description: Specifies the unique identifier of this team routing rules record. + type: string + relationships: + $ref: "#/components/schemas/TeamRoutingRulesDataRelationships" + type: + $ref: "#/components/schemas/TeamRoutingRulesDataType" + required: + - type + type: object + TeamRoutingRulesDataRelationships: + description: Specifies relationships for team routing rules, including rule references. + properties: + rules: + $ref: "#/components/schemas/TeamRoutingRulesDataRelationshipsRules" + type: object + TeamRoutingRulesDataRelationshipsRules: + description: Holds references to a set of routing rules in a relationship. + properties: + data: + description: An array of references to the routing rules associated with this team. + items: + $ref: "#/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItems" + type: array + type: object + TeamRoutingRulesDataRelationshipsRulesDataItems: + description: "Defines a relationship item to link a routing rule by its ID and type." + properties: + id: + description: Specifies the unique identifier for the related routing rule. + example: "" + type: string + type: + $ref: "#/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItemsType" + required: + - type + - id + type: object + TeamRoutingRulesDataRelationshipsRulesDataItemsType: + default: team_routing_rules + description: "Indicates that the resource is of type 'team_routing_rules'." + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + TeamRoutingRulesDataType: + default: team_routing_rules + description: Team routing rules resource type. + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + TeamRoutingRulesIncluded: + description: Represents additional included resources for team routing rules, such as associated routing rules. + oneOf: + - $ref: "#/components/schemas/RoutingRule" + TeamRoutingRulesRequest: + description: Represents a request to create or update team routing rules, including the data payload. + example: + data: + attributes: + rules: + - actions: + policy_id: "" + query: tags.service:test + time_restriction: + restrictions: + - end_day: monday + end_time: "17:00:00" + start_day: monday + start_time: "09:00:00" + - end_day: tuesday + end_time: "17:00:00" + start_day: tuesday + start_time: "09:00:00" + time_zone: "" + urgency: high + - actions: + - channel: channel + type: send_slack_message + workspace: workspace + policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 + query: "" + time_restriction: + urgency: low + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: team_routing_rules + properties: + data: + $ref: "#/components/schemas/TeamRoutingRulesRequestData" + type: object + TeamRoutingRulesRequestData: + description: Holds the data necessary to create or update team routing rules, including attributes, ID, and resource type. + properties: + attributes: + $ref: "#/components/schemas/TeamRoutingRulesRequestDataAttributes" + id: + description: Specifies the unique identifier for this set of team routing rules. + type: string + type: + $ref: "#/components/schemas/TeamRoutingRulesRequestDataType" + required: + - type + type: object + TeamRoutingRulesRequestDataAttributes: + description: Represents the attributes of a request to update or create team routing rules. + properties: + rules: + description: A list of routing rule items that define how incoming pages should be handled. + items: + $ref: "#/components/schemas/TeamRoutingRulesRequestRule" + type: array + type: object + TeamRoutingRulesRequestDataType: + default: team_routing_rules + description: Team routing rules resource type. + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + TeamRoutingRulesRequestRule: + description: Defines an individual routing rule item that contains the rule data for the request. + properties: + actions: + description: Specifies the list of actions to perform when the routing rule is matched. + items: + $ref: "#/components/schemas/RoutingRuleAction" + type: array + policy_id: + description: Identifies the policy to be applied when this routing rule matches. + type: string + query: + description: Defines the query or condition that triggers this routing rule. + type: string + time_restriction: + $ref: "#/components/schemas/TimeRestrictions" + urgency: + $ref: "#/components/schemas/Urgency" + type: object + TeamSyncAttributes: + description: Team sync attributes. + properties: + frequency: + $ref: "#/components/schemas/TeamSyncAttributesFrequency" + selection_state: + $ref: "#/components/schemas/TeamSyncAttributesSelectionState" + source: + $ref: "#/components/schemas/TeamSyncAttributesSource" + sync_membership: + $ref: "#/components/schemas/TeamSyncAttributesSyncMembership" + type: + $ref: "#/components/schemas/TeamSyncAttributesType" + required: + - source + - type + type: object + TeamSyncAttributesFrequency: + description: How often the sync process should be run. Defaults to `once` when not provided. + enum: + - once + - continuously + - paused + example: once + type: string + x-enum-varnames: + - ONCE + - CONTINUOUSLY + - PAUSED + TeamSyncAttributesSelectionState: + description: |- + Specifies which teams or organizations to sync. When + provided, synchronization is limited to the specified + items and their subtrees. + items: + $ref: "#/components/schemas/TeamSyncSelectionStateItem" + type: array + TeamSyncAttributesSource: + description: The external source platform for team synchronization. Only "github" is supported. + enum: + - github + example: github + type: string + x-enum-varnames: + - GITHUB + TeamSyncAttributesSyncMembership: + default: false + description: Whether to sync members from the external team to the Datadog team. Defaults to `false` when not provided. + example: true + type: boolean + TeamSyncAttributesType: + description: The type of synchronization operation. "link" connects teams by matching names. "provision" creates new teams when no match is found. + enum: + - link + - provision + example: link + type: string + x-enum-varnames: + - LINK + - PROVISION + TeamSyncBulkType: + description: Team sync bulk type. + enum: + - team_sync_bulk + example: team_sync_bulk + type: string + x-enum-varnames: + - TEAM_SYNC_BULK + TeamSyncData: + description: A configuration governing syncing between Datadog teams and teams from an external system. + properties: + attributes: + $ref: "#/components/schemas/TeamSyncAttributes" + id: + description: The sync's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/TeamSyncBulkType" + required: + - attributes + - type + type: object + TeamSyncRequest: + description: Team sync request. + example: + data: + attributes: + source: github + type: link + type: team_sync_bulk + properties: + data: + $ref: "#/components/schemas/TeamSyncData" + required: + - data + type: object + TeamSyncResponse: + description: Team sync configurations response. + properties: + data: + description: List of team sync configurations + items: + $ref: "#/components/schemas/TeamSyncData" + type: array + type: object + TeamSyncSelectionStateExternalId: + description: The external identifier for a team or organization in the source platform. + properties: + type: + $ref: "#/components/schemas/TeamSyncSelectionStateExternalIdType" + value: + $ref: "#/components/schemas/TeamSyncSelectionStateExternalIdValue" + required: + - type + - value + type: object + TeamSyncSelectionStateExternalIdType: + description: |- + The type of external identifier for the selection state item. + For GitHub synchronization, the allowed values are `team` and + `organization`. + enum: + - team + - organization + example: team + type: string + x-enum-varnames: + - TEAM + - ORGANIZATION + TeamSyncSelectionStateExternalIdValue: + description: |- + The external identifier value from the source + platform. For GitHub, this is the string + representation of a GitHub organization ID or team + ID. + example: "1" + type: string + TeamSyncSelectionStateItem: + description: Identifies a team or organization hierarchy to include in synchronization. + properties: + external_id: + $ref: "#/components/schemas/TeamSyncSelectionStateExternalId" + operation: + $ref: "#/components/schemas/TeamSyncSelectionStateOperation" + scope: + $ref: "#/components/schemas/TeamSyncSelectionStateScope" + required: + - external_id + type: object + TeamSyncSelectionStateOperation: + description: |- + The operation to perform on the selected hierarchy. + When set to `include`, synchronization covers the + referenced teams or organizations. + enum: + - include + example: include + type: string + x-enum-varnames: + - INCLUDE + TeamSyncSelectionStateScope: + description: |- + The scope of the selection. When set to `subtree`, + synchronization includes the referenced team or + organization and everything nested under it. + enum: + - subtree + example: subtree + type: string + x-enum-varnames: + - SUBTREE + TeamTarget: + description: "Represents a team target for an escalation policy step, including the team's ID and resource type." + properties: + id: + description: "Specifies the unique identifier of the team resource." + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/TeamTargetType" + required: + - type + - id + type: object + TeamTargetType: + default: teams + description: "Indicates that the resource is of type `teams`." + enum: + - teams + example: teams + type: string + x-enum-varnames: + - TEAMS + TeamType: + default: team + description: Team type + enum: + - team + example: team + type: string + x-enum-varnames: + - TEAM + TeamUpdate: + description: Team update request + properties: + attributes: + $ref: "#/components/schemas/TeamUpdateAttributes" + relationships: + $ref: "#/components/schemas/TeamUpdateRelationships" + type: + $ref: "#/components/schemas/TeamType" + required: + - attributes + - type + type: object + TeamUpdateAttributes: + description: Team update attributes + properties: + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: "🥑" + nullable: true + type: string + banner: + description: Banner selection for the team + format: int64 + nullable: true + type: integer + description: + description: Free-form markdown description/content for the team's homepage + type: string + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + hidden_modules: + description: Collection of hidden modules for the team + items: + description: String identifier of the module + type: string + type: array + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + visible_modules: + description: Collection of visible modules for the team + items: + description: String identifier of the module + type: string + type: array + required: + - handle + - name + type: object + TeamUpdateRelationships: + description: Team update relationships + properties: + team_links: + $ref: "#/components/schemas/RelationshipToTeamLinks" + type: object + TeamUpdateRequest: + description: Team update request + properties: + data: + $ref: "#/components/schemas/TeamUpdate" + required: + - data + type: object + TeamsField: + description: Supported teams field. + enum: + - id + - name + - handle + - summary + - description + - avatar + - banner + - visible_modules + - hidden_modules + - created_at + - modified_at + - user_count + - link_count + - team_links + - user_team_permissions + type: string + x-enum-varnames: + - ID + - NAME + - HANDLE + - SUMMARY + - DESCRIPTION + - AVATAR + - BANNER + - VISIBLE_MODULES + - HIDDEN_MODULES + - CREATED_AT + - MODIFIED_AT + - USER_COUNT + - LINK_COUNT + - TEAM_LINKS + - USER_TEAM_PERMISSIONS + TeamsHierarchyLinksResponseLinks: + description: When querying team hierarchy links, a set of links for navigation between different pages is included + properties: + first: + description: Link to the first page. + nullable: true + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current object. + type: string + type: object + TeamsHierarchyLinksResponseMeta: + description: Metadata that is included in the response when querying the team hierarchy links + properties: + page: + $ref: "#/components/schemas/TeamsHierarchyLinksResponseMetaPage" + type: object + TeamsHierarchyLinksResponseMetaPage: + description: Metadata related to paging information that is included in the response when querying the team hierarchy links + properties: + first_number: + description: First page number. + format: int64 + type: integer + last_number: + description: Last page number. + format: int64 + type: integer + next_number: + description: Next page number. + format: int64 + nullable: true + type: integer + number: + description: Page number. + format: int64 + type: integer + prev_number: + description: Previous page number. + format: int64 + nullable: true + type: integer + size: + description: Page size. + format: int64 + type: integer + total: + description: Total number of results. + format: int64 + type: integer + type: + description: Pagination type. + example: "number_size" + type: string + type: object + TeamsOwnershipMappingBatchError: + description: An error encountered while validating or applying an operation. + properties: + detail: + description: A human-readable explanation specific to this error. + example: "prefix match_type is not enabled for this org" + type: string + status: + description: The HTTP status code applicable to this error. + example: "400" + type: string + title: + description: A short, human-readable summary of the error. + example: "Bad Request" + type: string + required: + - status + - title + type: object + TeamsOwnershipMappingBatchOperation: + description: A single add or remove operation, applied atomically with every other operation in the request. + properties: + data: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchOperationData" + op: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchOperationOp" + ref: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchOperationRef" + required: + - op + type: object + TeamsOwnershipMappingBatchOperationData: + description: The mapping to add. Required when `op` is `add`. + properties: + attributes: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchOperationDataAttributes" + type: + $ref: "#/components/schemas/TeamsOwnershipMappingType" + required: + - type + - attributes + type: object + TeamsOwnershipMappingBatchOperationDataAttributes: + description: |- + The attributes of the mapping to add. `team_handle` and `view_name` are required + when `op` is `add`. At least one of `service` or `application_id` must be provided. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, provide the real application UUID — the team is applied to the view regardless of service. + For mobile applications, omit this field (or set it to the nil UUID `00000000-0000-0000-0000-000000000000`) — the team is applied to the view and service combination across all applications. + example: "11111111-2222-3333-4444-555555555555" + format: uuid + type: string + match_type: + $ref: "#/components/schemas/TeamsOwnershipMatchType" + service: + description: The RUM application's service name. For browser applications, this is optional. For mobile applications, this is required and scopes the ownership to a specific service. + example: "web-checkout" + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: "team-rum" + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: "/checkout" + type: string + type: object + TeamsOwnershipMappingBatchOperationOp: + description: Whether this operation adds a new mapping or removes an existing one. + enum: + - add + - remove + example: add + type: string + x-enum-varnames: ["ADD", "REMOVE"] + TeamsOwnershipMappingBatchOperationRef: + description: Identifies an existing mapping to remove. Required when `op` is `remove`. + properties: + id: + description: The ID of the mapping to remove. + example: "456" + type: string + type: + $ref: "#/components/schemas/TeamsOwnershipMappingType" + required: + - type + - id + type: object + TeamsOwnershipMappingBatchRequest: + description: The request body for bulk-creating and bulk-removing teams ownership mappings. + properties: + atomic:operations: + description: The list of add and remove operations to apply atomically. + items: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchOperation" + type: array + required: + - atomic:operations + type: object + TeamsOwnershipMappingBatchResponse: + description: |- + The response body for the bulk create and remove operation. On success, `atomic:results` + contains one entry per operation. Add results appear before remove results and may not match + request order. Correlate add results by their `type` and `id` rather than by array position. + On failure, no operations were applied and `errors` describes what went wrong. + properties: + atomic:results: + description: |- + The result of each operation. + Add operations are processed first, then remove operations, so results may not appear + in the same order as the request. Present only on success. + items: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchResult" + type: array + errors: + description: The validation or processing errors encountered. Present only when the request could not be completed. + items: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchError" + type: array + type: object + TeamsOwnershipMappingBatchResult: + description: |- + The result of a single operation. + Add operations are processed first, then remove operations, so results may not appear + in the same order as the request. Empty for `remove` operations. + properties: + data: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchResultData" + type: object + TeamsOwnershipMappingBatchResultData: + description: The mapping created by an `add` operation. + properties: + attributes: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchResultDataAttributes" + id: + description: The unique identifier of the teams ownership mapping. + example: "123" + type: string + type: + $ref: "#/components/schemas/TeamsOwnershipMappingType" + required: + - type + - id + - attributes + type: object + TeamsOwnershipMappingBatchResultDataAttributes: + description: The attributes of a mapping created by an `add` operation. + properties: + application_id: + description: The ID of the RUM application, when one was provided. + example: "11111111-2222-3333-4444-555555555555" + format: uuid + type: string + created_at: + description: Timestamp when the mapping was created. + example: "2026-01-15T09:30:00.000Z" + format: date-time + type: string + created_by: + description: The UUID of the user who created the mapping. + example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: string + match_type: + $ref: "#/components/schemas/TeamsOwnershipMatchType" + org_id: + description: The ID of the organization that owns this mapping. + example: 123456 + format: int64 + type: integer + service: + description: The RUM application's service name, when one was provided. + example: "web-checkout" + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: "team-rum" + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: "/checkout" + type: string + required: + - team_handle + - view_name + - org_id + - created_at + - created_by + - match_type + type: object + TeamsOwnershipMappingCreateData: + description: The JSON:API data envelope for a teams ownership mapping create request. + properties: + attributes: + $ref: "#/components/schemas/TeamsOwnershipMappingCreateDataAttributes" + type: + $ref: "#/components/schemas/TeamsOwnershipMappingType" + required: + - type + - attributes + type: object + TeamsOwnershipMappingCreateDataAttributes: + description: The attributes of the teams ownership mapping to create. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, provide the real application UUID — the team is applied to the view regardless of service. + For mobile applications, omit this field (or set it to the nil UUID `00000000-0000-0000-0000-000000000000`) — the team is applied to the view and service combination across all applications. + example: "11111111-2222-3333-4444-555555555555" + format: uuid + type: string + match_type: + $ref: "#/components/schemas/TeamsOwnershipMatchType" + service: + description: The RUM application's service name. For browser applications, this is optional. For mobile applications, this is required and scopes the ownership to a specific service. + example: "web-checkout" + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: "team-rum" + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: "/checkout" + type: string + required: + - team_handle + - view_name + type: object + TeamsOwnershipMappingCreateRequest: + description: The request body for creating a teams ownership mapping. + properties: + data: + $ref: "#/components/schemas/TeamsOwnershipMappingCreateData" + required: + - data + type: object + TeamsOwnershipMappingResponse: + description: The response body for a single teams ownership mapping. + properties: + data: + $ref: "#/components/schemas/TeamsOwnershipMappingResponseData" + required: + - data + type: object + TeamsOwnershipMappingResponseAttributes: + description: The attributes of a teams ownership mapping. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, this is the real application UUID. + For mobile applications, this is the nil UUID `00000000-0000-0000-0000-000000000000` (wildcard), meaning the ownership applies across all applications. + example: "11111111-2222-3333-4444-555555555555" + type: string + created_at: + description: Timestamp when the mapping was created. + example: "2026-01-15T09:30:00.000Z" + format: date-time + type: string + created_by: + description: The UUID of the user who created the mapping. + example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: string + match_type: + $ref: "#/components/schemas/TeamsOwnershipMatchType" + org_id: + description: The ID of the organization that owns this mapping. + example: 123456 + format: int64 + type: integer + service: + description: The RUM application's service name. For browser applications, may be empty. For mobile applications, this is the service that scopes the ownership. + example: "web-checkout" + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: "team-rum" + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: "/checkout" + type: string + required: + - team_handle + - view_name + - service + - application_id + - org_id + - created_at + - created_by + - match_type + type: object + TeamsOwnershipMappingResponseData: + description: The JSON:API data envelope for a teams ownership mapping. + properties: + attributes: + $ref: "#/components/schemas/TeamsOwnershipMappingResponseAttributes" + id: + description: The unique identifier of the teams ownership mapping. + example: "123" + type: string + type: + $ref: "#/components/schemas/TeamsOwnershipMappingType" + required: + - id + - type + - attributes + type: object + TeamsOwnershipMappingType: + default: teams_ownership_mappings + description: The type of the resource. The value should always be teams_ownership_mappings. + enum: + - teams_ownership_mappings + example: teams_ownership_mappings + type: string + x-enum-varnames: ["TEAMS_OWNERSHIP_MAPPINGS"] + TeamsOwnershipMappingsResponse: + description: The response body for a list of teams ownership mappings. + properties: + data: + description: A list of teams ownership mappings. + items: + $ref: "#/components/schemas/TeamsOwnershipMappingResponseData" + type: array + required: + - data + type: object + TeamsOwnershipMatchType: + default: exact + description: How the `view_name` is matched against RUM view names. + enum: + - exact + - prefix + example: exact + type: string + x-enum-varnames: ["EXACT", "PREFIX"] + TeamsOwnershipRuleResponseAttributes: + description: The attributes of a teams ownership rule. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, this is the real application UUID. + For mobile applications, this is the nil UUID `00000000-0000-0000-0000-000000000000` (wildcard), meaning the ownership applies across all applications. + example: "11111111-2222-3333-4444-555555555555" + type: string + match_type: + $ref: "#/components/schemas/TeamsOwnershipMatchType" + service: + description: The RUM application's service name. For browser applications, may be empty. For mobile applications, this is the service that scopes the ownership. + example: "web-checkout" + type: string + teams: + description: The teams that own the matched views, each paired with the ID of its underlying mapping. + items: + $ref: "#/components/schemas/TeamsOwnershipRuleTeamMapping" + type: array + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: "/checkout" + type: string + required: + - teams + - view_name + - service + - application_id + - match_type + type: object + TeamsOwnershipRuleResponseData: + description: The JSON:API data envelope for a teams ownership rule. + properties: + attributes: + $ref: "#/components/schemas/TeamsOwnershipRuleResponseAttributes" + id: + description: |- + A deterministic identifier derived from the rule's grouping key. + This ID cannot be used to delete the rule directly; delete individual mappings + using the `mapping_id` under `teams` instead. + example: "3b1e2f7a9c4d6e8f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f" + type: string + type: + $ref: "#/components/schemas/TeamsOwnershipRuleType" + required: + - id + - type + - attributes + type: object + TeamsOwnershipRuleTeamMapping: + description: An individual team's ownership entry within a teams ownership rule. + properties: + mapping_id: + description: The ID of the underlying mapping, used to delete this team's ownership individually. + example: "123" + type: string + team_handle: + description: The handle of the owning team. + example: "team-rum" + type: string + required: + - team_handle + - mapping_id + type: object + TeamsOwnershipRuleType: + default: teams_ownership_grouped_mappings + description: The type of the resource. The value should always be teams_ownership_grouped_mappings. + enum: + - teams_ownership_grouped_mappings + example: teams_ownership_grouped_mappings + type: string + x-enum-varnames: ["TEAMS_OWNERSHIP_GROUPED_MAPPINGS"] + TeamsOwnershipRulesResponse: + description: The response body for a list of teams ownership rules. + properties: + data: + description: A list of teams ownership rules. + items: + $ref: "#/components/schemas/TeamsOwnershipRuleResponseData" + type: array + required: + - data + type: object + TeamsResponse: + description: Response with multiple teams + properties: + data: + description: Teams response data + items: + $ref: "#/components/schemas/Team" + type: array + included: + description: Resources related to the team + items: + $ref: "#/components/schemas/TeamIncluded" + type: array + links: + $ref: "#/components/schemas/TeamsResponseLinks" + meta: + $ref: "#/components/schemas/TeamsResponseMeta" + type: object + TeamsResponseLinks: + description: Teams response links. + properties: + first: + description: First link. + type: string + last: + description: Last link. + nullable: true + type: string + next: + description: Next link. + type: string + prev: + description: Previous link. + nullable: true + type: string + self: + description: Current link. + type: string + type: object + TeamsResponseMeta: + description: Teams response metadata. + properties: + pagination: + $ref: "#/components/schemas/TeamsResponseMetaPagination" + type: object + TeamsResponseMetaPagination: + description: Teams response metadata. + properties: + first_offset: + description: The first offset. + format: int64 + type: integer + last_offset: + description: The last offset. + format: int64 + type: integer + limit: + description: Pagination limit. + format: int64 + type: integer + next_offset: + description: The next offset. + format: int64 + type: integer + offset: + description: The offset. + format: int64 + type: integer + prev_offset: + description: The previous offset. + format: int64 + type: integer + total: + description: Total results. + format: int64 + type: integer + type: + description: Offset type. + type: string + type: object + TenancyConfig: + description: Response containing a single OCI tenancy integration configuration. + example: + data: + attributes: + config_version: 2 + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - compartment.test + enabled: true + enabled_services: + - compute + metrics_config: + compartment_tag_filters: + - compartment.test + enabled: true + excluded_services: + - compute + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + $ref: "#/components/schemas/TenancyConfigData" + type: object + TenancyConfigData: + description: A single OCI tenancy integration configuration resource object containing the tenancy ID, type, and configuration attributes. + properties: + attributes: + $ref: "#/components/schemas/TenancyConfigDataAttributes" + id: + description: The OCID of the OCI tenancy. + type: string + type: + $ref: "#/components/schemas/UpdateTenancyConfigDataType" + required: + - type + type: object + TenancyConfigDataAttributes: + description: Attributes of an OCI tenancy integration configuration, including authentication details, region settings, and collection options. + properties: + billing_plan_id: + description: The identifier of the billing plan associated with the OCI tenancy. + format: int32 + maximum: 2147483647 + type: integer + config_version: + description: Version number of the integration the tenancy is integrated with + format: int64 + type: integer + cost_collection_enabled: + description: Whether cost data collection from OCI is enabled for the tenancy. + type: boolean + dd_compartment_id: + description: The OCID of the OCI compartment used by the Datadog integration stack. + type: string + dd_stack_id: + description: The OCID of the OCI Resource Manager stack used by the Datadog integration. + type: string + home_region: + description: The home region of the OCI tenancy (for example, us-ashburn-1). + type: string + logs_config: + $ref: "#/components/schemas/TenancyConfigDataAttributesLogsConfig" + metrics_config: + $ref: "#/components/schemas/TenancyConfigDataAttributesMetricsConfig" + parent_tenancy_name: + description: The name of the parent OCI tenancy, if applicable. + type: string + regions_config: + $ref: "#/components/schemas/TenancyConfigDataAttributesRegionsConfig" + resource_collection_enabled: + description: Whether resource collection from OCI is enabled for the tenancy. + type: boolean + tenancy_name: + description: The human-readable name of the OCI tenancy. + type: string + user_ocid: + description: The OCID of the OCI user used by the Datadog integration for authentication. + type: string + type: object + TenancyConfigDataAttributesLogsConfig: + description: Log collection configuration for an OCI tenancy, indicating which compartments and services have log collection enabled. + properties: + compartment_tag_filters: + description: List of compartment tag filters scoping log collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether log collection is enabled for the tenancy. + type: boolean + enabled_services: + description: List of OCI service names for which log collection is enabled. + items: + description: An OCI service name for which log collection is enabled (for example, compute). + type: string + type: array + type: object + TenancyConfigDataAttributesMetricsConfig: + description: Metrics collection configuration for an OCI tenancy, indicating which compartments and services are included or excluded. + properties: + compartment_tag_filters: + description: List of compartment tag filters scoping metrics collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether metrics collection is enabled for the tenancy. + type: boolean + excluded_services: + description: List of OCI service names excluded from metrics collection. + items: + description: An OCI service name excluded from metrics collection (for example, compute). + type: string + type: array + type: object + TenancyConfigDataAttributesRegionsConfig: + description: Region configuration for an OCI tenancy, indicating which regions are available, enabled, or disabled for data collection. + properties: + available: + description: List of OCI regions available for data collection in the tenancy. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + disabled: + description: List of OCI regions explicitly disabled for data collection. + items: + description: An OCI region identifier (for example, us-phoenix-1). + type: string + type: array + enabled: + description: List of OCI regions enabled for data collection. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + type: object + TenancyConfigList: + description: Response containing a list of OCI tenancy integration configurations. + example: + data: + - attributes: + config_version: 2 + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - compartment.test + enabled: true + enabled_services: + - compute + metrics_config: + compartment_tag_filters: + - compartment.test + enabled: true + excluded_services: + - compute + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + description: List of OCI tenancy integration configuration objects. + items: + $ref: "#/components/schemas/TenancyConfigData" + type: array + required: + - data + type: object + TenancyProductsData: + description: A single OCI tenancy product resource object containing the tenancy ID, type, and product attributes. + properties: + attributes: + $ref: "#/components/schemas/TenancyProductsDataAttributes" + id: + description: The OCID of the OCI tenancy. + type: string + type: + $ref: "#/components/schemas/TenancyProductsDataType" + required: + - type + type: object + TenancyProductsDataAttributes: + description: Attributes of an OCI tenancy product resource, containing the list of available products and their enablement status. + properties: + products: + description: List of Datadog products and their enablement status for the tenancy. + items: + $ref: "#/components/schemas/TenancyProductsDataAttributesProductsItems" + type: array + type: object + TenancyProductsDataAttributesProductsItems: + description: An individual Datadog product with its enablement status for a tenancy. + properties: + enabled: + description: Indicates whether the product is enabled for the tenancy. + type: boolean + product_key: + description: The unique key identifying the Datadog product (for example, CLOUD_SECURITY_POSTURE_MANAGEMENT). + type: string + type: object + TenancyProductsDataType: + default: oci_tenancy_product + description: OCI tenancy product resource type. + enum: + - oci_tenancy_product + example: oci_tenancy_product + type: string + x-enum-varnames: + - OCI_TENANCY_PRODUCT + TenancyProductsList: + description: Response containing a list of OCI tenancy product resources with their product enablement status. + example: + data: + - attributes: + products: + - enabled: true + product_key: CLOUD_SECURITY_POSTURE_MANAGEMENT + id: ocid.tenancy.test + type: oci_tenancy_product + properties: + data: + description: List of OCI tenancy product resource objects. + items: + $ref: "#/components/schemas/TenancyProductsData" + type: array + required: + - data + type: object + TestOptimizationDeleteServiceSettingsRequest: + description: Request object for deleting Test Optimization service settings. + properties: + data: + $ref: "#/components/schemas/TestOptimizationDeleteServiceSettingsRequestData" + required: + - data + type: object + TestOptimizationDeleteServiceSettingsRequestAttributes: + description: Attributes for deleting Test Optimization service settings. + properties: + env: + description: The environment name. If omitted, defaults to `none`. + example: prod + type: string + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + service_name: + description: The service name. + example: shopist + minLength: 1 + type: string + required: + - repository_id + - service_name + type: object + TestOptimizationDeleteServiceSettingsRequestData: + description: Data object for delete service settings request. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationDeleteServiceSettingsRequestAttributes" + type: + $ref: "#/components/schemas/TestOptimizationDeleteServiceSettingsRequestDataType" + required: + - type + - attributes + type: object + TestOptimizationDeleteServiceSettingsRequestDataType: + description: |- + JSON:API type for delete service settings request. + The value must always be `test_optimization_delete_service_settings_request`. + enum: + - test_optimization_delete_service_settings_request + example: test_optimization_delete_service_settings_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_DELETE_SERVICE_SETTINGS_REQUEST + TestOptimizationFlakyTestsManagementPoliciesAttemptToFix: + description: Configuration for the attempt-to-fix Flaky Tests Management policy. + properties: + retries: + description: Number of retries when attempting to fix a flaky test. Must be greater than 0. + example: 3 + format: int64 + type: integer + type: object + TestOptimizationFlakyTestsManagementPoliciesAttributes: + description: Attributes of the Flaky Tests Management policies for a repository. + properties: + attempt_to_fix: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAttemptToFix" + disabled: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabled" + quarantined: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesQuarantined" + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + type: string + type: object + TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule: + description: Automatic disable triggering rule based on a time window and test status. + properties: + enabled: + description: Whether this auto-disable rule is enabled. + example: false + type: boolean + status: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabledStatus" + window_seconds: + description: Time window in seconds over which flakiness is evaluated. Must be greater than 0. + example: 3600 + format: int64 + type: integer + type: object + TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule: + description: Automatic quarantine triggering rule based on a time window. + properties: + enabled: + description: Whether this auto-quarantine rule is enabled. + example: true + type: boolean + window_seconds: + description: Time window in seconds over which flakiness is evaluated. Must be greater than 0. + example: 3600 + format: int64 + type: integer + type: object + TestOptimizationFlakyTestsManagementPoliciesBranchRule: + description: Branch filtering rule for a Flaky Tests Management policy. + properties: + branches: + description: List of branches to which the policy applies. + example: + - main + items: + description: A branch name. + type: string + type: array + enabled: + description: Whether this branch rule is enabled. + example: true + type: boolean + excluded_branches: + description: List of branches excluded from the policy. + example: [] + items: + description: A branch name. + type: string + type: array + excluded_test_services: + description: List of test services excluded from the policy. + example: [] + items: + description: A test service name. + type: string + type: array + type: object + TestOptimizationFlakyTestsManagementPoliciesData: + description: Data object for Flaky Tests Management policies response. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAttributes" + id: + description: The repository identifier used as the resource ID. + example: github.com/datadog/shopist + type: string + type: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesType" + type: object + TestOptimizationFlakyTestsManagementPoliciesDisabled: + description: Configuration for the disabled Flaky Tests Management policy. + properties: + auto_disable_rule: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule" + branch_rule: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesBranchRule" + enabled: + description: Whether the disabled policy is enabled. + example: false + type: boolean + failure_rate_rule: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule" + type: object + TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule: + description: Failure-rate-based rule for the disabled policy. + properties: + branches: + description: List of branches to which this rule applies. + example: [] + items: + description: A branch name. + type: string + type: array + enabled: + description: Whether this failure rate rule is enabled. + example: false + type: boolean + min_runs: + description: Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0. + example: 10 + format: int64 + type: integer + status: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabledStatus" + threshold: + description: Failure rate threshold (0.0–1.0) above which the rule triggers. + example: 0.5 + format: double + type: number + type: object + TestOptimizationFlakyTestsManagementPoliciesDisabledStatus: + description: |- + Test status that the disable policy applies to. + Must be either `active` or `quarantined`. + enum: + - active + - quarantined + example: active + type: string + x-enum-varnames: + - ACTIVE + - QUARANTINED + TestOptimizationFlakyTestsManagementPoliciesGetRequest: + description: Request object for getting Flaky Tests Management policies. + properties: + data: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesGetRequestData" + required: + - data + type: object + TestOptimizationFlakyTestsManagementPoliciesGetRequestAttributes: + description: Attributes for requesting Flaky Tests Management policies. + properties: + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + required: + - repository_id + type: object + TestOptimizationFlakyTestsManagementPoliciesGetRequestData: + description: Data object for get Flaky Tests Management policies request. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesGetRequestAttributes" + type: + $ref: "#/components/schemas/TestOptimizationGetFlakyTestsManagementPoliciesRequestDataType" + required: + - type + - attributes + type: object + TestOptimizationFlakyTestsManagementPoliciesQuarantined: + description: Configuration for the quarantined Flaky Tests Management policy. + properties: + auto_quarantine_rule: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule" + branch_rule: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesBranchRule" + enabled: + description: Whether the quarantined policy is enabled. + example: true + type: boolean + failure_rate_rule: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule" + type: object + TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule: + description: Failure-rate-based rule for the quarantined policy. + properties: + branches: + description: List of branches to which this rule applies. + example: + - main + items: + description: A branch name. + type: string + type: array + enabled: + description: Whether this failure rate rule is enabled. + example: true + type: boolean + min_runs: + description: Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0. + example: 10 + format: int64 + type: integer + threshold: + description: Failure rate threshold (0.0–1.0) above which the rule triggers. + example: 0.5 + format: double + type: number + type: object + TestOptimizationFlakyTestsManagementPoliciesResponse: + description: Response object containing Flaky Tests Management policies for a repository. + properties: + data: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesData" + type: object + TestOptimizationFlakyTestsManagementPoliciesType: + description: |- + JSON:API type for Flaky Tests Management policies response. + The value must always be `test_optimization_flaky_tests_management_policies`. + enum: + - test_optimization_flaky_tests_management_policies + example: test_optimization_flaky_tests_management_policies + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_FLAKY_TESTS_MANAGEMENT_POLICIES + TestOptimizationFlakyTestsManagementPoliciesUpdateRequest: + description: Request object for updating Flaky Tests Management policies. + properties: + data: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData" + required: + - data + type: object + TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes: + description: |- + Attributes for updating Flaky Tests Management policies. + Only provided policy blocks are updated; omitted blocks are left unchanged. + properties: + attempt_to_fix: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAttemptToFix" + disabled: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabled" + quarantined: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesQuarantined" + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + required: + - repository_id + type: object + TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData: + description: Data object for update Flaky Tests Management policies request. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes" + type: + $ref: "#/components/schemas/TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType" + required: + - type + - attributes + type: object + TestOptimizationGetFlakyTestsManagementPoliciesRequestDataType: + description: |- + JSON:API type for get Flaky Tests Management policies request. + The value must always be `test_optimization_get_flaky_tests_management_policies_request`. + enum: + - test_optimization_get_flaky_tests_management_policies_request + example: test_optimization_get_flaky_tests_management_policies_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_GET_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST + TestOptimizationGetServiceSettingsRequest: + description: Request object for getting Test Optimization service settings. + properties: + data: + $ref: "#/components/schemas/TestOptimizationGetServiceSettingsRequestData" + required: + - data + type: object + TestOptimizationGetServiceSettingsRequestAttributes: + description: Attributes for requesting Test Optimization service settings. + properties: + env: + description: The environment name. If omitted, defaults to `none`. + example: prod + type: string + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + service_name: + description: The service name. + example: shopist + minLength: 1 + type: string + required: + - repository_id + - service_name + type: object + TestOptimizationGetServiceSettingsRequestData: + description: Data object for get service settings request. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationGetServiceSettingsRequestAttributes" + type: + $ref: "#/components/schemas/TestOptimizationGetServiceSettingsRequestDataType" + required: + - type + - attributes + type: object + TestOptimizationGetServiceSettingsRequestDataType: + description: |- + JSON:API type for get service settings request. + The value must always be `test_optimization_get_service_settings_request`. + enum: + - test_optimization_get_service_settings_request + example: test_optimization_get_service_settings_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_GET_SERVICE_SETTINGS_REQUEST + TestOptimizationServiceSettingsAttributes: + description: Attributes for Test Optimization service settings. + properties: + auto_test_retries_enabled: + description: Whether Auto Test Retries are enabled for this service. + example: false + type: boolean + auto_test_retries_enabled_is_overridden: + description: Whether the Auto Test Retries setting is overridden at the service level. + example: false + type: boolean + code_coverage_enabled: + description: Whether Code Coverage is enabled for this service. + example: false + type: boolean + code_coverage_enabled_is_overridden: + description: Whether the Code Coverage setting is overridden at the service level. + example: false + type: boolean + early_flake_detection_enabled: + description: Whether Early Flake Detection is enabled for this service. + example: false + type: boolean + early_flake_detection_enabled_is_overridden: + description: Whether the Early Flake Detection setting is overridden at the service level. + example: false + type: boolean + env: + description: The environment name. + example: prod + type: string + failed_test_replay_enabled: + description: Whether Failed Test Replay is enabled for this service. + example: false + type: boolean + failed_test_replay_enabled_is_overridden: + description: Whether the Failed Test Replay setting is overridden at the service level. + example: false + type: boolean + pr_comments_enabled: + description: Whether PR Comments are enabled. This value reflects the repository-level setting and cannot be overridden at the service level. + example: false + type: boolean + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + type: string + service_name: + description: The service name. + example: shopist + type: string + test_impact_analysis_enabled: + description: Whether Test Impact Analysis is enabled for this service. + example: true + type: boolean + test_impact_analysis_enabled_is_overridden: + description: Whether the Test Impact Analysis setting is overridden at the service level. + example: true + type: boolean + type: object + TestOptimizationServiceSettingsData: + description: Data object for Test Optimization service settings response. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationServiceSettingsAttributes" + id: + description: Unique identifier for the service settings. + example: 9b8a7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d + type: string + type: + $ref: "#/components/schemas/TestOptimizationServiceSettingsType" + type: object + TestOptimizationServiceSettingsResponse: + description: Response object containing Test Optimization service settings. + properties: + data: + $ref: "#/components/schemas/TestOptimizationServiceSettingsData" + type: object + TestOptimizationServiceSettingsType: + description: |- + JSON:API type for service settings response. + The value must always be `test_optimization_service_settings`. + enum: + - test_optimization_service_settings + example: test_optimization_service_settings + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_SERVICE_SETTINGS + TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType: + description: |- + JSON:API type for update Flaky Tests Management policies request. + The value must always be `test_optimization_update_flaky_tests_management_policies_request`. + enum: + - test_optimization_update_flaky_tests_management_policies_request + example: test_optimization_update_flaky_tests_management_policies_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST + TestOptimizationUpdateServiceSettingsRequest: + description: Request object for updating Test Optimization service settings. + properties: + data: + $ref: "#/components/schemas/TestOptimizationUpdateServiceSettingsRequestData" + required: + - data + type: object + TestOptimizationUpdateServiceSettingsRequestAttributes: + description: |- + Attributes for updating Test Optimization service settings. + All non-required fields are optional; only provided fields will be updated. + Setting a field to `null` is a no-op. To reset a setting to inherit from the repository level, use the corresponding `_inherit` field. + properties: + auto_test_retries_enabled: + description: Whether Auto Test Retries are enabled for this service. Setting to `null` is a no-op; use `auto_test_retries_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + auto_test_retries_enabled_inherit: + description: When `true`, resets the Auto Test Retries setting to inherit from the repository level. + example: false + type: boolean + code_coverage_enabled: + description: Whether Code Coverage is enabled for this service. Setting to `null` is a no-op; use `code_coverage_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + code_coverage_enabled_inherit: + description: When `true`, resets the Code Coverage setting to inherit from the repository level. + example: false + type: boolean + early_flake_detection_enabled: + description: Whether Early Flake Detection is enabled for this service. Setting to `null` is a no-op; use `early_flake_detection_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + early_flake_detection_enabled_inherit: + description: When `true`, resets the Early Flake Detection setting to inherit from the repository level. + example: false + type: boolean + env: + description: The environment name. If omitted, defaults to `none`. + example: prod + type: string + failed_test_replay_enabled: + description: Whether Failed Test Replay is enabled for this service. Setting to `null` is a no-op; use `failed_test_replay_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + failed_test_replay_enabled_inherit: + description: When `true`, resets the Failed Test Replay setting to inherit from the repository level. + example: false + type: boolean + pr_comments_enabled: + description: This field is ignored. PR Comments cannot be overridden at the service level. + example: false + type: boolean + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + service_name: + description: The service name. + example: shopist + minLength: 1 + type: string + test_impact_analysis_enabled: + description: Whether Test Impact Analysis is enabled for this service. Setting to `null` is a no-op; use `test_impact_analysis_enabled_inherit` to reset to repository-level inheritance. + example: true + type: boolean + test_impact_analysis_enabled_inherit: + description: When `true`, resets the Test Impact Analysis setting to inherit from the repository level. + example: true + type: boolean + required: + - repository_id + - service_name + type: object + TestOptimizationUpdateServiceSettingsRequestData: + description: Data object for update service settings request. + properties: + attributes: + $ref: "#/components/schemas/TestOptimizationUpdateServiceSettingsRequestAttributes" + type: + $ref: "#/components/schemas/TestOptimizationUpdateServiceSettingsRequestDataType" + required: + - type + - attributes + type: object + TestOptimizationUpdateServiceSettingsRequestDataType: + description: |- + JSON:API type for update service settings request. + The value must always be `test_optimization_update_service_settings_request`. + enum: + - test_optimization_update_service_settings_request + example: test_optimization_update_service_settings_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_UPDATE_SERVICE_SETTINGS_REQUEST + TicketCreationRuleAction: + description: The action to take when the ticket creation rule matches a finding. + properties: + assignee_id: + description: The UUID of the default assignee for created tickets. + example: "22222222-2222-2222-2222-222222222222" + format: uuid + type: string + fields: + description: Custom fields of the Jira issue to create. For the list of available fields, see [Jira documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-projectidorkey-issuetypes-issuetypeid-get). + example: + labels: + - security + type: object + max_tickets_per_day: + description: The maximum number of tickets the rule may create per day. If exceeded, one final ticket will be created, explaining the limit was hit and link back to the responsible rule. + example: 100 + format: int64 + maximum: 500 + minimum: 1 + type: integer + project_id: + description: The UUID of the case management project. + example: "11111111-1111-1111-1111-111111111111" + format: uuid + type: string + target: + $ref: "#/components/schemas/TicketCreationTarget" + required: + - project_id + - target + - max_tickets_per_day + type: object + TicketCreationRuleActionResponse: + description: The action to take when the ticket creation rule matches a finding. + properties: + assignee_id: + description: The UUID of the default assignee for created tickets. + example: "22222222-2222-2222-2222-222222222222" + format: uuid + type: string + auto_disabled_reason: + description: The reason the rule was automatically disabled by the system due to a ticketing integration error. + example: "Daily ticket creation limit exceeded" + type: string + fields: + description: Custom fields of the Jira issue to create. For the list of available fields, see [Jira documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-projectidorkey-issuetypes-issuetypeid-get). + example: + labels: + - security + type: object + max_tickets_per_day: + description: The maximum number of tickets the rule may create per day. If exceeded, one final ticket will be created, explaining the limit was hit and link back to the responsible rule. + example: 100 + format: int64 + maximum: 500 + minimum: 1 + type: integer + project_id: + description: The UUID of the case management project. + example: "11111111-1111-1111-1111-111111111111" + format: uuid + type: string + target: + $ref: "#/components/schemas/TicketCreationTarget" + required: + - project_id + - target + - max_tickets_per_day + type: object + TicketCreationRuleAttributesCreate: + description: Attributes for creating or updating a ticket creation rule. + properties: + action: + $ref: "#/components/schemas/TicketCreationRuleAction" + enabled: + description: Whether the ticket creation rule is enabled. + example: true + type: boolean + name: + description: The name of the ticket creation rule. + example: "Auto-create Jira tickets for critical findings" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - rule + - action + type: object + TicketCreationRuleAttributesResponse: + description: Attributes of a ticket creation rule returned by the API. + properties: + action: + $ref: "#/components/schemas/TicketCreationRuleActionResponse" + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: "#/components/schemas/AutomationRuleCreatedBy" + enabled: + description: Whether the ticket creation rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: "#/components/schemas/AutomationRuleModifiedBy" + name: + description: The name of the ticket creation rule. + example: "Auto-create Jira tickets for critical findings" + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: "#/components/schemas/AutomationRuleScope" + required: + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by + type: object + TicketCreationRuleCreateRequest: + description: The body of a ticket creation rule create request. + properties: + data: + $ref: "#/components/schemas/TicketCreationRuleDataCreate" + required: + - data + type: object + TicketCreationRuleDataCreate: + description: The data object for a ticket creation rule create or update request. + properties: + attributes: + $ref: "#/components/schemas/TicketCreationRuleAttributesCreate" + type: + $ref: "#/components/schemas/TicketCreationRuleType" + required: + - type + - attributes + type: object + TicketCreationRuleDataResponse: + description: The data object for a ticket creation rule returned by the API. + properties: + attributes: + $ref: "#/components/schemas/TicketCreationRuleAttributesResponse" + id: + description: The ID of the ticket creation rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/TicketCreationRuleType" + required: + - id + - type + - attributes + type: object + TicketCreationRuleReorderData: + description: The ordered list of all ticket creation rules; every rule must be included. + items: + $ref: "#/components/schemas/TicketCreationRuleReorderItem" + type: array + TicketCreationRuleReorderItem: + description: A reference to a ticket creation rule used for reordering. + properties: + id: + description: The ID of the automation rule. + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + type: + $ref: "#/components/schemas/TicketCreationRuleType" + required: + - type + - id + type: object + TicketCreationRuleReorderRequest: + description: The body of the ticket creation rule reorder request. + properties: + data: + $ref: "#/components/schemas/TicketCreationRuleReorderData" + required: + - data + type: object + TicketCreationRuleResponse: + description: A single ticket creation rule response. + properties: + data: + $ref: "#/components/schemas/TicketCreationRuleDataResponse" + required: + - data + type: object + TicketCreationRuleType: + description: The JSON:API type for ticket creation rules. + enum: + - ticket_creation_rules + example: ticket_creation_rules + type: string + x-enum-varnames: + - TICKET_CREATION_RULES + TicketCreationRuleUpdateRequest: + description: The body of a ticket creation rule update request. + properties: + data: + $ref: "#/components/schemas/TicketCreationRuleDataCreate" + required: + - data + type: object + TicketCreationRulesDataList: + description: A list of ticket creation rule data objects. + items: + $ref: "#/components/schemas/TicketCreationRuleDataResponse" + type: array + TicketCreationRulesResponse: + description: A list of ticket creation rules with pagination metadata. + properties: + data: + $ref: "#/components/schemas/TicketCreationRulesDataList" + links: + $ref: "#/components/schemas/SecurityAutomationRulesLinks" + meta: + $ref: "#/components/schemas/SecurityAutomationRulesMeta" + required: + - data + - meta + - links + type: object + TicketCreationTarget: + description: The ticketing system to create tickets in. + enum: + - jira + - case_management + example: jira + type: string + x-enum-varnames: + - JIRA + - CASE_MANAGEMENT + TimeAggregation: + description: |- + Time aggregation period (in seconds) is used to aggregate the results of the notification rule evaluation. + Results are aggregated over a selected time frame using a rolling window, which updates with each new evaluation. + Notifications are only sent for new issues discovered during the window. + Time aggregation is only available for vulnerability-based notification rules. When omitted or set to 0, no aggregation + is done. + example: 86400 + format: int64 + type: integer + TimeRestriction: + description: Defines a single time restriction rule with start and end times and the applicable weekdays. + properties: + end_day: + $ref: "#/components/schemas/Weekday" + end_time: + description: Specifies the ending time for this restriction. + type: string + start_day: + $ref: "#/components/schemas/Weekday" + start_time: + description: Specifies the starting time for this restriction. + type: string + type: object + TimeRestrictions: + description: Time restrictions during which the routing rule is active. Outside of these hours, the rule does not match and routing continues to subsequent rules. This is mutually exclusive with the action-level `support_hours` field. + properties: + restrictions: + description: Defines the list of time-based restrictions. + items: + $ref: "#/components/schemas/TimeRestriction" + type: array + time_zone: + description: Specifies the time zone applicable to the restrictions. + example: "" + type: string + required: + - time_zone + - restrictions + type: object + TimelineCell: + description: "Attributes of a timeline cell, representing a single event in a case's chronological activity log (for example, a comment, status change, or assignment update)." + properties: + author: + $ref: "#/components/schemas/TimelineCellAuthor" + cell_content: + $ref: "#/components/schemas/TimelineCellContent" + created_at: + description: Timestamp of when the cell was created + format: date-time + readOnly: true + type: string + deleted_at: + description: Timestamp of when the cell was deleted + format: date-time + readOnly: true + type: string + modified_at: + description: Timestamp of when the cell was last modified + format: date-time + readOnly: true + type: string + type: + $ref: "#/components/schemas/TimelineCellType" + type: object + TimelineCellAuthor: + description: The author of the timeline cell. Currently only user authors are supported. + oneOf: + - $ref: "#/components/schemas/TimelineCellAuthorUser" + TimelineCellAuthorUser: + description: A user who authored a timeline cell. + properties: + content: + $ref: "#/components/schemas/TimelineCellAuthorUserContent" + type: + $ref: "#/components/schemas/TimelineCellAuthorUserType" + type: object + TimelineCellAuthorUserContent: + description: Profile information for the user who authored the timeline cell. + properties: + email: + description: The email address of the user. + type: string + handle: + description: The Datadog handle of the user. + type: string + id: + description: The UUID of the user. + type: string + name: + description: The display name of the user. + type: string + type: object + TimelineCellAuthorUserType: + description: The type of timeline cell author. Currently only `USER` is supported. + enum: + - USER + example: USER + type: string + x-enum-varnames: + - USER + TimelineCellContent: + description: The content payload of a timeline cell, varying by cell type. + oneOf: + - $ref: "#/components/schemas/TimelineCellContentComment" + TimelineCellContentComment: + description: The content of a comment timeline cell. + properties: + message: + description: The text content of the comment. Supports Markdown formatting. + type: string + type: object + TimelineCellResource: + description: A timeline cell resource representing a single entry in a case's activity timeline. + properties: + attributes: + $ref: "#/components/schemas/TimelineCell" + id: + description: Timeline cell's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: "#/components/schemas/TimelineCellResourceType" + required: + - id + - type + - attributes + type: object + TimelineCellResourceType: + default: timeline_cell + description: JSON:API resource type for timeline cells. + enum: + - timeline_cell + example: timeline_cell + type: string + x-enum-varnames: + - TIMELINE_CELL + TimelineCellType: + description: The type of content in the timeline cell. Currently only `COMMENT` is supported in this endpoint. + enum: + - COMMENT + example: COMMENT + type: string + x-enum-varnames: + - COMMENT + TimelineResponse: + description: Response containing the chronological list of timeline cells for a case. + properties: + data: + description: The `TimelineResponse` `data`. + items: + $ref: "#/components/schemas/TimelineCellResource" + type: array + type: object + TimeseriesFormulaQueryRequest: + description: A request wrapper around a single timeseries query to be executed. + properties: + data: + $ref: "#/components/schemas/TimeseriesFormulaRequest" + required: + - data + type: object + TimeseriesFormulaQueryResponse: + description: A message containing one response to a timeseries query made with timeseries formula query request. + properties: + data: + $ref: "#/components/schemas/TimeseriesResponse" + errors: + description: The error generated by the request. + type: string + type: object + TimeseriesFormulaRequest: + description: A single timeseries query to be executed. + properties: + attributes: + $ref: "#/components/schemas/TimeseriesFormulaRequestAttributes" + type: + $ref: "#/components/schemas/TimeseriesFormulaRequestType" + required: + - type + - attributes + type: object + TimeseriesFormulaRequestAttributes: + description: The object describing a timeseries formula request. + properties: + formulas: + description: List of formulas to be calculated and returned as responses. + items: + $ref: "#/components/schemas/QueryFormula" + type: array + from: + description: Start date (inclusive) of the query in milliseconds since the Unix epoch. + example: 1568899800000 + format: int64 + type: integer + interval: + description: |- + A time interval in milliseconds. + May be overridden by a larger interval if the query would result in + too many points for the specified timeframe. + Defaults to a reasonable interval for the given timeframe. + example: 5000 + format: int64 + type: integer + queries: + $ref: "#/components/schemas/TimeseriesFormulaRequestQueries" + to: + description: End date (exclusive) of the query in milliseconds since the Unix epoch. + example: 1568923200000 + format: int64 + type: integer + required: + - to + - from + - queries + type: object + TimeseriesFormulaRequestQueries: + description: List of queries to be run and used as inputs to the formulas. + example: + - data_source: metrics + query: "avg:system.cpu.user{*} by {env}" + items: + $ref: "#/components/schemas/TimeseriesQuery" + type: array + TimeseriesFormulaRequestType: + default: "timeseries_request" + description: The type of the resource. The value should always be timeseries_request. + enum: ["timeseries_request"] + example: "timeseries_request" + type: string + x-enum-varnames: ["TIMESERIES_REQUEST"] + TimeseriesFormulaResponseType: + default: "timeseries_response" + description: The type of the resource. The value should always be timeseries_response. + enum: ["timeseries_response"] + example: "timeseries_response" + type: string + x-enum-varnames: ["TIMESERIES_RESPONSE"] + TimeseriesQuery: + description: An individual timeseries query to one of the basic Datadog data sources. + example: + data_source: metrics + query: "avg:system.cpu.user{*} by {env}" + oneOf: + - $ref: "#/components/schemas/MetricsTimeseriesQuery" + - $ref: "#/components/schemas/EventsTimeseriesQuery" + - $ref: "#/components/schemas/ApmResourceStatsQuery" + - $ref: "#/components/schemas/ApmMetricsQuery" + - $ref: "#/components/schemas/ApmDependencyStatsQuery" + - $ref: "#/components/schemas/SloQuery" + - $ref: "#/components/schemas/ProcessTimeseriesQuery" + - $ref: "#/components/schemas/ContainerTimeseriesQuery" + TimeseriesResponse: + description: A message containing the response to a timeseries query. + properties: + attributes: + $ref: "#/components/schemas/TimeseriesResponseAttributes" + type: + $ref: "#/components/schemas/TimeseriesFormulaResponseType" + type: object + TimeseriesResponseAttributes: + description: The object describing a timeseries response. + properties: + series: + $ref: "#/components/schemas/TimeseriesResponseSeriesList" + times: + $ref: "#/components/schemas/TimeseriesResponseTimes" + values: + $ref: "#/components/schemas/TimeseriesResponseValuesList" + type: object + TimeseriesResponseSeries: + description: A single series in a timeseries query response, containing the query index, unit information, and group tags. + properties: + group_tags: + $ref: "#/components/schemas/GroupTags" + query_index: + description: The index of the query in the "formulas" array (or "queries" array if no "formulas" was specified). + example: 0 + format: int32 + maximum: 2147483647 + type: integer + unit: + description: |- + Detailed information about the unit. + The first element describes the "primary unit" (for example, `bytes` in `bytes per second`). + The second element describes the "per unit" (for example, `second` in `bytes per second`). + If the second element is not present, the API returns null. + items: + $ref: "#/components/schemas/Unit" + nullable: true + type: array + type: object + TimeseriesResponseSeriesList: + description: Array of response series. The index here corresponds to the index in the `formulas` or `queries` array from the request. + items: + $ref: "#/components/schemas/TimeseriesResponseSeries" + type: array + TimeseriesResponseTimes: + description: Array of times, 1-1 match with individual values arrays. + items: + description: Start date (inclusive) of the query in seconds since the Unix epoch. + example: 1568899800000 + format: int64 + type: integer + type: array + TimeseriesResponseValues: + description: Array of values for an individual formula or query. + example: [1575317847.0, 0.5] + items: + description: An individual value for a given time. + format: double + nullable: true + type: number + type: array + TimeseriesResponseValuesList: + description: Array of value-arrays. The index here corresponds to the index in the `formulas` or `queries` array from the request. + items: + $ref: "#/components/schemas/TimeseriesResponseValues" + type: array + TokenName: + description: Name for tokens. + example: MyTokenName + pattern: ^[A-Za-z][A-Za-z\\d]*$ + type: string + TokenType: + description: The definition of `TokenType` object. + enum: + - SECRET + example: SECRET + type: string + x-enum-varnames: + - SECRET + TopLongTaskInvoker: + description: A top long task invoker within an invoker type. + properties: + criteria_view_occurrences: + description: Number of sampled views where this invoker had long tasks contributing to the criteria metric. + example: 40 + format: int32 + maximum: 2147483647 + type: integer + file: + description: Cleaned source file path for the invoker script. + example: src/pages/Gallery.tsx + nullable: true + type: string + impact_score: + description: Rank-product impact score combining view frequency and blocking time severity. + example: 0.67 + format: double + type: number + invoker: + description: Name of the invoker function or script. + example: Response.json.then + type: string + stats_per_view: + $ref: "#/components/schemas/LongTaskStatsPerView" + view_occurrences: + description: Number of sampled views where this invoker had any long tasks. + example: 68 + format: int32 + maximum: 2147483647 + type: integer + required: + - invoker + - file + - view_occurrences + - stats_per_view + type: object + TraceAttributes: + description: The attributes of a trace returned by the Get trace by ID endpoint. + properties: + is_truncated: + description: Indicates whether the trace was truncated because its size exceeded the maximum response payload. + example: false + type: boolean + spans: + $ref: "#/components/schemas/APMTraceSpans" + required: + - is_truncated + - spans + type: object + TraceData: + description: A trace resource document. + properties: + attributes: + $ref: "#/components/schemas/TraceAttributes" + id: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: "0000000000000000abc1230000000000" + type: string + type: + $ref: "#/components/schemas/TraceType" + required: + - id + - type + - attributes + type: object + TraceResponse: + description: Response containing a single trace. + properties: + data: + $ref: "#/components/schemas/TraceData" + required: + - data + type: object + TraceType: + description: The type of the trace resource. The value is always `trace`. + enum: + - trace + example: trace + type: string + x-enum-varnames: + - TRACE + Trigger: + description: "One of the triggers that can start the execution of a workflow." + oneOf: + - $ref: "#/components/schemas/AgentTriggerWrapper" + - $ref: "#/components/schemas/APITriggerWrapper" + - $ref: "#/components/schemas/AppTriggerWrapper" + - $ref: "#/components/schemas/CaseTriggerWrapper" + - $ref: "#/components/schemas/ChangeEventTriggerWrapper" + - $ref: "#/components/schemas/DatabaseMonitoringTriggerWrapper" + - $ref: "#/components/schemas/DatastoreTriggerWrapper" + - $ref: "#/components/schemas/DashboardTriggerWrapper" + - $ref: "#/components/schemas/FormTriggerWrapper" + - $ref: "#/components/schemas/GithubWebhookTriggerWrapper" + - $ref: "#/components/schemas/IncidentTriggerWrapper" + - $ref: "#/components/schemas/MonitorTriggerWrapper" + - $ref: "#/components/schemas/NotebookTriggerWrapper" + - $ref: "#/components/schemas/OnCallTriggerWrapper" + - $ref: "#/components/schemas/ScheduleTriggerWrapper" + - $ref: "#/components/schemas/SecurityTriggerWrapper" + - $ref: "#/components/schemas/SelfServiceTriggerWrapper" + - $ref: "#/components/schemas/SlackTriggerWrapper" + - $ref: "#/components/schemas/SoftwareCatalogTriggerWrapper" + - $ref: "#/components/schemas/WorkflowTriggerWrapper" + TriggerAttributes: + description: The trigger definition for starting an investigation. + properties: + monitor_alert_trigger: + $ref: "#/components/schemas/MonitorAlertTriggerAttributes" + type: + $ref: "#/components/schemas/TriggerType" + required: + - type + - monitor_alert_trigger + type: object + TriggerInvestigationRequest: + description: Request to trigger a new investigation. + properties: + data: + $ref: "#/components/schemas/TriggerInvestigationRequestData" + required: + - data + type: object + TriggerInvestigationRequestData: + description: Data for the trigger investigation request. + properties: + attributes: + $ref: "#/components/schemas/TriggerInvestigationRequestDataAttributes" + type: + $ref: "#/components/schemas/TriggerInvestigationRequestType" + required: + - type + - attributes + type: object + TriggerInvestigationRequestDataAttributes: + description: Attributes for the trigger investigation request. + properties: + trigger: + $ref: "#/components/schemas/TriggerAttributes" + required: + - trigger + type: object + TriggerInvestigationRequestType: + description: The resource type for trigger investigation requests. + enum: + - trigger_investigation_request + example: trigger_investigation_request + type: string + x-enum-varnames: + - TRIGGER_INVESTIGATION_REQUEST + TriggerInvestigationResponse: + description: Response after triggering an investigation. + properties: + data: + $ref: "#/components/schemas/TriggerInvestigationResponseData" + required: + - data + type: object + TriggerInvestigationResponseData: + description: Data for the trigger investigation response. + properties: + attributes: + $ref: "#/components/schemas/TriggerInvestigationResponseDataAttributes" + id: + description: Unique identifier for the trigger response. + example: "f5e6a7b8-c9d0-1e2f-3a4b-5c6d7e8f9a0b" + type: string + type: + $ref: "#/components/schemas/TriggerInvestigationResponseType" + required: + - id + - type + - attributes + type: object + TriggerInvestigationResponseDataAttributes: + description: Attributes for the trigger investigation response. + properties: + investigation_id: + description: The ID of the investigation that was created. + example: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + type: string + required: + - investigation_id + type: object + TriggerInvestigationResponseType: + description: The resource type for trigger investigation responses. + enum: + - trigger_investigation_response + example: trigger_investigation_response + type: string + x-enum-varnames: + - TRIGGER_INVESTIGATION_RESPONSE + TriggerRateLimit: + description: Defines a rate limit for a trigger. + properties: + count: + description: The `TriggerRateLimit` `count`. + format: int64 + type: integer + interval: + description: The `TriggerRateLimit` `interval`. The expected format is the number of seconds ending with an s. For example, 1 day is 86400s + type: string + type: object + TriggerSource: + description: |- + The type of security issues on which the rule applies. Notification rules based on security signals need to use the trigger source "security_signals", + while notification rules based on security vulnerabilities need to use the trigger source "security_findings". + enum: + - security_findings + - security_signals + example: security_findings + type: string + x-enum-varnames: + - SECURITY_FINDINGS + - SECURITY_SIGNALS + TriggerType: + description: The type of trigger for the investigation. + enum: + - monitor_alert_trigger + example: monitor_alert_trigger + type: string + x-enum-varnames: + - MONITOR_ALERT_TRIGGER + TriggerWorkflowAutomationAction: + description: "Triggers a Workflow Automation." + properties: + handle: + description: "The handle of the Workflow Automation to trigger." + example: my-workflow-handle + type: string + type: + $ref: "#/components/schemas/TriggerWorkflowAutomationActionType" + required: + - type + - handle + type: object + TriggerWorkflowAutomationActionType: + default: workflow + description: "Indicates that the action triggers a Workflow Automation." + enum: + - workflow + example: workflow + type: string + x-enum-varnames: + - TRIGGER_WORKFLOW_AUTOMATION + TwilioAlertsLogsIntegrationDataflowRequest: + description: The Twilio alerts logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + type: object + TwilioAlertsLogsIntegrationDataflowResponse: + description: The Twilio alerts logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + TwilioCallSummariesLogsIntegrationDataflowRequest: + description: The Twilio call summaries logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + type: object + TwilioCallSummariesLogsIntegrationDataflowResponse: + description: The Twilio call summaries logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + TwilioCloudCostMetricsIntegrationDataflowRequest: + description: The Twilio cloud cost metrics dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + type: object + TwilioCloudCostMetricsIntegrationDataflowResponse: + description: The Twilio cloud cost metrics dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + TwilioEventsLogsIntegrationDataflowRequest: + description: The Twilio events logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + type: object + TwilioEventsLogsIntegrationDataflowResponse: + description: The Twilio events logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + TwilioIntegrationAccountAuthenticationRequest: + description: Authentication for creating the Twilio integration account. Exactly one method is set. + oneOf: + - $ref: "#/components/schemas/IntegrationAccountBasicAuthRequest" + TwilioIntegrationAccountAuthenticationResponse: + description: Authentication configured on the Twilio integration account. + oneOf: + - $ref: "#/components/schemas/IntegrationAccountBasicAuthResponse" + TwilioIntegrationAccountAuthenticationUpdate: + description: Authentication for updating the Twilio integration account. Exactly one method is set. + oneOf: + - $ref: "#/components/schemas/IntegrationAccountBasicAuthUpdate" + TwilioIntegrationAccountCreateAttributes: + description: Writable attributes used to create a Twilio integration account. + properties: + authentication: + $ref: "#/components/schemas/TwilioIntegrationAccountAuthenticationRequest" + dataflows: + $ref: "#/components/schemas/TwilioIntegrationDataflowsRequest" + name: + description: Human-readable name of the Twilio integration account. + example: twilio-prod + type: string + settings: + $ref: "#/components/schemas/TwilioIntegrationAccountSettingsRequest" + required: + - name + - authentication + - settings + type: object + TwilioIntegrationAccountCreateData: + description: Data envelope for creating a Twilio integration account. + properties: + attributes: + $ref: "#/components/schemas/TwilioIntegrationAccountCreateAttributes" + type: + $ref: "#/components/schemas/IntegrationAccountType" + required: + - type + - attributes + type: object + TwilioIntegrationAccountCreateRequest: + description: Request payload to create a Twilio integration account. + properties: + data: + $ref: "#/components/schemas/TwilioIntegrationAccountCreateData" + required: + - data + type: object + TwilioIntegrationAccountResponse: + description: Response payload for a single Twilio integration account. + properties: + data: + $ref: "#/components/schemas/TwilioIntegrationAccountResponseData" + required: + - data + type: object + TwilioIntegrationAccountResponseAttributes: + description: Attributes of a Twilio integration account returned in responses. + properties: + authentication: + $ref: "#/components/schemas/TwilioIntegrationAccountAuthenticationResponse" + dataflows: + $ref: "#/components/schemas/TwilioIntegrationDataflowsResponse" + name: + description: Human-readable name of the Twilio integration account. + example: twilio-prod + type: string + settings: + $ref: "#/components/schemas/TwilioIntegrationAccountSettingsResponse" + required: + - name + - settings + type: object + TwilioIntegrationAccountResponseData: + description: Data envelope of a Twilio integration account, including server-assigned identity. + properties: + attributes: + $ref: "#/components/schemas/TwilioIntegrationAccountResponseAttributes" + id: + description: Server-generated unique identifier of the Twilio integration account. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + readOnly: true + type: string + type: + $ref: "#/components/schemas/IntegrationAccountType" + required: + - id + - attributes + - type + type: object + TwilioIntegrationAccountSettingsRequest: + description: Settings for creating the Twilio integration account. + properties: + account_sid: + description: Twilio Account SID that uniquely identifies your Twilio account. + example: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + type: string + censor_logs: + description: When enabled, Twilio phone numbers in the `to` field and SMS message bodies are censored for privacy. + example: true + type: boolean + required: + - account_sid + type: object + TwilioIntegrationAccountSettingsResponse: + description: Settings configured on the Twilio integration account. + properties: + account_sid: + description: Twilio Account SID that uniquely identifies your Twilio account. + example: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + type: string + censor_logs: + description: When enabled, Twilio phone numbers in the `to` field and SMS message bodies are censored for privacy. + example: true + type: boolean + required: + - account_sid + type: object + TwilioIntegrationAccountSettingsUpdate: + description: Settings for updating the Twilio integration account. Only the fields provided are changed. + properties: + account_sid: + description: Twilio Account SID that uniquely identifies your Twilio account. + example: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + type: string + censor_logs: + description: When enabled, Twilio phone numbers in the `to` field and SMS message bodies are censored for privacy. + example: true + type: boolean + type: object + TwilioIntegrationAccountUpdateAttributes: + description: >- + Writable attributes used to update a Twilio integration account. Every field is optional; only the fields provided are changed. When `dataflows` is provided, only the dataflow ids included in the request are modified; dataflows omitted from the map keep their current configuration. + properties: + authentication: + $ref: "#/components/schemas/TwilioIntegrationAccountAuthenticationUpdate" + dataflows: + $ref: "#/components/schemas/TwilioIntegrationDataflowsRequest" + name: + description: Human-readable name of the Twilio integration account. + example: twilio-prod + type: string + settings: + $ref: "#/components/schemas/TwilioIntegrationAccountSettingsUpdate" + type: object + TwilioIntegrationAccountUpdateData: + description: Data envelope for updating a Twilio integration account. + properties: + attributes: + $ref: "#/components/schemas/TwilioIntegrationAccountUpdateAttributes" + id: + description: Unique identifier of the Twilio integration account to update. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: string + type: + $ref: "#/components/schemas/IntegrationAccountType" + required: + - id + - type + - attributes + type: object + TwilioIntegrationAccountUpdateRequest: + description: Request payload to update a Twilio integration account. + properties: + data: + $ref: "#/components/schemas/TwilioIntegrationAccountUpdateData" + required: + - data + type: object + TwilioIntegrationAccountsResponse: + description: Response payload for a list of Twilio integration accounts. + properties: + data: + description: List of Twilio integration accounts. + items: + $ref: "#/components/schemas/TwilioIntegrationAccountResponseData" + type: array + required: + - data + type: object + TwilioIntegrationDataflowsRequest: + additionalProperties: false + description: Dataflows to configure on the Twilio integration account, keyed by dataflow id. + properties: + twilio-alerts-logs: + $ref: "#/components/schemas/TwilioAlertsLogsIntegrationDataflowRequest" + twilio-call-summaries-logs: + $ref: "#/components/schemas/TwilioCallSummariesLogsIntegrationDataflowRequest" + twilio-cloud-cost-metrics: + $ref: "#/components/schemas/TwilioCloudCostMetricsIntegrationDataflowRequest" + twilio-events-logs: + $ref: "#/components/schemas/TwilioEventsLogsIntegrationDataflowRequest" + twilio-messages-logs: + $ref: "#/components/schemas/TwilioMessagesLogsIntegrationDataflowRequest" + type: object + TwilioIntegrationDataflowsResponse: + description: Dataflows configured on the Twilio integration account, keyed by dataflow id. + properties: + twilio-alerts-logs: + $ref: "#/components/schemas/TwilioAlertsLogsIntegrationDataflowResponse" + twilio-call-summaries-logs: + $ref: "#/components/schemas/TwilioCallSummariesLogsIntegrationDataflowResponse" + twilio-cloud-cost-metrics: + $ref: "#/components/schemas/TwilioCloudCostMetricsIntegrationDataflowResponse" + twilio-events-logs: + $ref: "#/components/schemas/TwilioEventsLogsIntegrationDataflowResponse" + twilio-messages-logs: + $ref: "#/components/schemas/TwilioMessagesLogsIntegrationDataflowResponse" + type: object + TwilioMessagesLogsIntegrationDataflowRequest: + description: The Twilio messages logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + type: object + TwilioMessagesLogsIntegrationDataflowResponse: + description: The Twilio messages logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean + status: + $ref: "#/components/schemas/IntegrationAccountDataflowStatus" + type: object + UCConfigPair: + description: The definition of `UCConfigPair` object. + example: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: "2023-01-01T12:00:00.000000" + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: "123456789123" + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: azure_uc_configs + properties: + data: + $ref: "#/components/schemas/UCConfigPairData" + type: object + UCConfigPairData: + description: The definition of `UCConfigPairData` object. + properties: + attributes: + $ref: "#/components/schemas/UCConfigPairDataAttributes" + id: + description: The `UCConfigPairData` `id`. + type: string + type: + $ref: "#/components/schemas/UCConfigPairDataType" + required: + - type + type: object + UCConfigPairDataAttributes: + description: The definition of `UCConfigPairDataAttributes` object. + properties: + configs: + description: The `attributes` `configs`. + items: + $ref: "#/components/schemas/UCConfigPairDataAttributesConfigsItems" + type: array + type: object + UCConfigPairDataAttributesConfigsItems: + description: The definition of `UCConfigPairDataAttributesConfigsItems` object. + properties: + account_id: + description: The `items` `account_id`. + type: string + client_id: + description: The `items` `client_id`. + type: string + created_at: + description: The `items` `created_at`. + type: string + dataset_type: + description: The `items` `dataset_type`. + type: string + error_messages: + description: The `items` `error_messages`. + items: + description: An error message string. + type: string + nullable: true + type: array + export_name: + description: The `items` `export_name`. + type: string + export_path: + description: The `items` `export_path`. + type: string + id: + description: The `items` `id`. + type: string + months: + description: The `items` `months`. + format: int64 + type: integer + scope: + description: The `items` `scope`. + type: string + status: + description: The `items` `status`. + type: string + status_updated_at: + description: The `items` `status_updated_at`. + type: string + storage_account: + description: The `items` `storage_account`. + type: string + storage_container: + description: The `items` `storage_container`. + type: string + updated_at: + description: The `items` `updated_at`. + type: string + type: object + UCConfigPairDataType: + default: azure_uc_configs + description: Azure UC configs resource type. + enum: + - azure_uc_configs + example: azure_uc_configs + type: string + x-enum-varnames: + - AZURE_UC_CONFIGS + UnassignSeatsUserRequest: + description: The request body for unassigning seats from users for a product code. + properties: + data: + $ref: "#/components/schemas/UnassignSeatsUserRequestData" + description: The data for the unassign seats user request. + type: object + UnassignSeatsUserRequestData: + description: The request data object containing attributes for unassigning seats from users. + properties: + attributes: + $ref: "#/components/schemas/UnassignSeatsUserRequestDataAttributes" + description: The attributes of the unassign seats user request. + id: + description: The ID of the unassign seats user request. + type: string + type: + $ref: "#/components/schemas/SeatAssignmentsDataType" + description: The type of the unassign seats user request. + required: + - type + - attributes + type: object + UnassignSeatsUserRequestDataAttributes: + description: Attributes specifying the product and users from whom seats will be unassigned. + properties: + product_code: + description: The product code for which to unassign seats. + example: "" + type: string + user_uuids: + description: The list of user IDs to unassign seats from. + example: + - "" + items: + description: A user UUID identifying a user to unassign seats from. + type: string + type: array + required: + - product_code + - user_uuids + type: object + Unit: + description: Object containing the metric unit family, scale factor, name, and short name. + nullable: true + properties: + family: + description: Unit family, allows for conversion between units of the same family, for scaling. + example: time + type: string + name: + description: Unit name + example: minute + type: string + plural: + description: Plural form of the unit name. + example: minutes + type: string + scale_factor: + description: Factor for scaling between units of the same family. + example: 60.0 + format: double + type: number + short_name: + description: Abbreviation of the unit. + example: min + type: string + type: object + UnpublishAppResponse: + description: The response object after an app is successfully unpublished. + properties: + data: + $ref: "#/components/schemas/Deployment" + type: object + UpdateActionConnectionRequest: + description: Request used to update an action connection. + properties: + data: + $ref: "#/components/schemas/ActionConnectionDataUpdate" + required: + - data + type: object + UpdateActionConnectionResponse: + description: The response for an updated connection. + properties: + data: + $ref: "#/components/schemas/ActionConnectionData" + type: object + UpdateAppFavoriteRequest: + description: A request to add or remove an app from the current user's favorites. + example: + data: + attributes: + favorite: true + type: favorites + properties: + data: + $ref: "#/components/schemas/UpdateAppFavoriteRequestData" + type: object + UpdateAppFavoriteRequestData: + description: Data for updating an app's favorite status. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppFavoriteRequestDataAttributes" + type: + $ref: "#/components/schemas/AppFavoriteType" + type: object + UpdateAppFavoriteRequestDataAttributes: + description: Attributes for updating an app's favorite status. + properties: + favorite: + description: Whether the app should be marked as a favorite for the current user. + example: true + type: boolean + required: + - favorite + type: object + UpdateAppProtectionLevelRequest: + description: A request to update an app's publication protection level. + example: + data: + attributes: + protectionLevel: approval_required + type: protectionLevel + properties: + data: + $ref: "#/components/schemas/UpdateAppProtectionLevelRequestData" + type: object + UpdateAppProtectionLevelRequestData: + description: Data for updating an app's publication protection level. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppProtectionLevelRequestDataAttributes" + type: + $ref: "#/components/schemas/AppProtectionLevelType" + type: object + UpdateAppProtectionLevelRequestDataAttributes: + description: Attributes for updating an app's publication protection level. + properties: + protectionLevel: + $ref: "#/components/schemas/AppProtectionLevel" + required: + - protectionLevel + type: object + UpdateAppRequest: + description: A request object for updating an existing app. + example: + data: + attributes: + components: + - events: [] + name: grid0 + properties: + children: + - events: [] + name: gridCell0 + properties: + children: + - events: [] + name: calloutValue0 + properties: + isDisabled: false + isLoading: false + isVisible: true + label: CPU Usage + size: sm + style: vivid_yellow + unit: kB + value: "42" + type: calloutValue + isVisible: "true" + layout: + default: + height: 8 + width: 2 + x: 0 + "y": 0 + type: gridCell + type: grid + description: "This is a simple example app" + name: "Example App" + queries: [] + rootInstanceName: grid0 + id: "9e20cbaf-68da-45a6-9ccf-54193ac29fa5" + type: appDefinitions + properties: + data: + $ref: "#/components/schemas/UpdateAppRequestData" + type: object + UpdateAppRequestData: + description: The data object containing the new app definition. Any fields not included in the request remain unchanged. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppRequestDataAttributes" + id: + description: The ID of the app to update. The app ID must match the ID in the URL path. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - type + type: object + UpdateAppRequestDataAttributes: + description: App definition attributes to be updated, such as name, description, and components. + properties: + components: + description: The new UI components that make up the app. If this field is set, all existing components are replaced with the new components under this field. + items: + $ref: "#/components/schemas/ComponentGrid" + type: array + description: + description: The new human-readable description for the app. + type: string + name: + description: The new name of the app. + type: string + queries: + description: The new array of queries, such as external actions and state variables, that the app uses. If this field is set, all existing queries are replaced with the new queries under this field. + items: + $ref: "#/components/schemas/Query" + type: array + rootInstanceName: + description: The new name of the root component of the app. This must be a `grid` component that contains all other components. + type: string + tags: + description: The new list of tags for the app, which can be used to filter apps. If this field is set, any existing tags not included in the request are removed. + example: + - "service:webshop-backend" + - "team:webshop" + items: + description: An individual tag for the app. + type: string + type: array + type: object + UpdateAppResponse: + description: The response object after an app is successfully updated. + properties: + data: + $ref: "#/components/schemas/UpdateAppResponseData" + included: + description: Data on the version of the app that was published. + items: + $ref: "#/components/schemas/Deployment" + type: array + meta: + $ref: "#/components/schemas/AppMeta" + relationship: + $ref: "#/components/schemas/AppRelationship" + type: object + UpdateAppResponseData: + description: The data object containing the updated app definition. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppResponseDataAttributes" + id: + description: The ID of the updated app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: "#/components/schemas/AppDefinitionType" + required: + - id + - type + - attributes + type: object + UpdateAppResponseDataAttributes: + description: The updated app definition attributes, such as name, description, and components. + properties: + components: + description: The UI components that make up the app. + items: + $ref: "#/components/schemas/ComponentGrid" + type: array + description: + description: The human-readable description for the app. + type: string + favorite: + description: Whether the app is marked as a favorite by the current user. + type: boolean + name: + description: The name of the app. + type: string + queries: + description: An array of queries, such as external actions and state variables, that the app uses. + items: + $ref: "#/components/schemas/Query" + type: array + rootInstanceName: + description: The name of the root component of the app. This must be a `grid` component that contains all other components. + type: string + tags: + description: A list of tags for the app, which can be used to filter apps. + example: + - "service:webshop-backend" + - "team:webshop" + items: + description: An individual tag for the app. + type: string + type: array + type: object + UpdateAppSelfServiceRequest: + description: A request to enable or disable self-service for an app. + example: + data: + attributes: + selfService: true + type: selfService + properties: + data: + $ref: "#/components/schemas/UpdateAppSelfServiceRequestData" + type: object + UpdateAppSelfServiceRequestData: + description: Data for updating an app's self-service status. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppSelfServiceRequestDataAttributes" + type: + $ref: "#/components/schemas/AppSelfServiceType" + type: object + UpdateAppSelfServiceRequestDataAttributes: + description: Attributes for updating an app's self-service status. + properties: + selfService: + description: Whether the app is enabled for self-service. + example: true + type: boolean + required: + - selfService + type: object + UpdateAppTagsRequest: + description: A request to replace the tags on an app. + example: + data: + attributes: + tags: + - team:platform + - service:ops + type: tags + properties: + data: + $ref: "#/components/schemas/UpdateAppTagsRequestData" + type: object + UpdateAppTagsRequestData: + description: Data for replacing an app's tags. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppTagsRequestDataAttributes" + type: + $ref: "#/components/schemas/AppTagsType" + type: object + UpdateAppTagsRequestDataAttributes: + description: Attributes for replacing an app's tags. + properties: + tags: + description: The full list of tags that should be set on the app. Existing tags not present in this list are removed. + example: + - team:platform + - service:ops + items: + type: string + type: array + required: + - tags + type: object + UpdateAppVersionNameRequest: + description: A request to assign a human-readable name to a specific app version. + example: + data: + attributes: + name: v1.2.0 - bug fix release + type: versionNames + properties: + data: + $ref: "#/components/schemas/UpdateAppVersionNameRequestData" + type: object + UpdateAppVersionNameRequestData: + description: Data for naming a specific app version. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppVersionNameRequestDataAttributes" + type: + $ref: "#/components/schemas/AppVersionNameType" + type: object + UpdateAppVersionNameRequestDataAttributes: + description: Attributes for naming a specific app version. + properties: + name: + description: The name to assign to the app version. + example: v1.2.0 - bug fix release + type: string + required: + - name + type: object + UpdateAppsDatastoreItemRequest: + description: Request to update specific fields on an existing datastore item. + properties: + data: + $ref: "#/components/schemas/UpdateAppsDatastoreItemRequestData" + type: object + UpdateAppsDatastoreItemRequestData: + description: Data wrapper containing the item identifier and the changes to apply during the update operation. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributes" + id: + description: The unique identifier of the datastore item. + type: string + type: + $ref: "#/components/schemas/UpdateAppsDatastoreItemRequestDataType" + required: + - type + type: object + UpdateAppsDatastoreItemRequestDataAttributes: + description: Attributes for updating a datastore item, including the item key and changes to apply. + properties: + id: + description: The unique identifier of the item being updated. + type: string + item_changes: + $ref: "#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributesItemChanges" + item_key: + description: The primary key that identifies the item to update. Cannot exceed 256 characters. + example: "" + maxLength: 256 + type: string + required: + - item_changes + - item_key + type: object + UpdateAppsDatastoreItemRequestDataAttributesItemChanges: + description: Changes to apply to a datastore item using set operations. + properties: + ops_set: + additionalProperties: {} + description: Set operation that contains key-value pairs to set on the datastore item. + type: object + type: object + UpdateAppsDatastoreItemRequestDataType: + default: items + description: The resource type for datastore items. + enum: + - items + example: items + type: string + x-enum-varnames: + - ITEMS + UpdateAppsDatastoreRequest: + description: Request to update a datastore's configuration such as its name or description. + properties: + data: + $ref: "#/components/schemas/UpdateAppsDatastoreRequestData" + type: object + UpdateAppsDatastoreRequestData: + description: Data wrapper containing the datastore identifier and the attributes to update. + properties: + attributes: + $ref: "#/components/schemas/UpdateAppsDatastoreRequestDataAttributes" + id: + description: The unique identifier of the datastore to update. + type: string + type: + $ref: "#/components/schemas/DatastoreDataType" + required: + - type + type: object + UpdateAppsDatastoreRequestDataAttributes: + description: Attributes that can be updated on a datastore. + properties: + description: + description: A human-readable description about the datastore. + type: string + name: + description: The display name of the datastore. + type: string + type: object + UpdateCampaignRequest: + description: Request to update a campaign. + properties: + data: + $ref: "#/components/schemas/UpdateCampaignRequestData" + required: + - data + type: object + UpdateCampaignRequestAttributes: + description: Attributes for updating a campaign. + properties: + description: + description: The description of the campaign. + example: Campaign to improve security posture for Q1 2024. + type: string + due_date: + description: The due date of the campaign. + example: "2024-03-31T23:59:59Z" + format: date-time + type: string + entity_scope: + description: Entity scope query to filter entities for this campaign. + example: kind:service AND team:platform + type: string + guidance: + description: Guidance for the campaign. + example: Please ensure all services pass the security requirements. + type: string + key: + description: The unique key for the campaign. + example: q1-security-2024 + type: string + name: + description: The name of the campaign. + example: Q1 Security Campaign + type: string + owner_id: + description: The UUID of the campaign owner. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + rule_ids: + description: Array of rule IDs associated with this campaign. + example: ["q8MQxk8TCqrHnWkx", "r9NRyl9UDrsIoXly"] + items: + description: The unique ID of a scorecard rule. + type: string + type: array + start_date: + description: The start date of the campaign. + example: "2024-01-01T00:00:00Z" + format: date-time + type: string + status: + description: The status of the campaign. + example: in_progress + type: string + required: + - name + - owner_id + - status + - start_date + - rule_ids + type: object + UpdateCampaignRequestData: + description: Data for updating a campaign. + properties: + attributes: + $ref: "#/components/schemas/UpdateCampaignRequestAttributes" + type: + $ref: "#/components/schemas/CampaignType" + required: + - type + - attributes + type: object + UpdateConnectionRequest: + description: Request body for updating an existing data source connection by adding, modifying, or removing fields. + example: + data: + attributes: + fields_to_add: + - description: Net Promoter Score from customer surveys + display_name: NPS Score + groups: + - Satisfaction + - Metrics + id: nps_score + source_name: net_promoter_score + type: number + fields_to_delete: + - old_revenue_field + fields_to_update: + - field_id: lifetime_value + updated_display_name: Customer Lifetime Value (`USD`) + updated_groups: + - Financial + - Metrics + id: crm-integration + type: connection_id + properties: + data: + $ref: "#/components/schemas/UpdateConnectionRequestData" + type: object + UpdateConnectionRequestData: + description: The data object containing the resource identifier and attributes for updating an existing connection. + properties: + attributes: + $ref: "#/components/schemas/UpdateConnectionRequestDataAttributes" + id: + description: The unique identifier of the connection to update. + example: "" + type: string + type: + $ref: "#/components/schemas/UpdateConnectionRequestDataType" + required: + - type + - id + type: object + UpdateConnectionRequestDataAttributes: + description: Attributes specifying the field modifications to apply to an existing connection. + properties: + fields_to_add: + description: New fields to add to the connection from the data source. + items: + $ref: "#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems" + type: array + fields_to_delete: + description: Identifiers of existing fields to remove from the connection. + items: + description: The identifier of a field to delete from the connection. + type: string + type: array + fields_to_update: + description: Existing fields with updated metadata to apply to the connection. + items: + $ref: "#/components/schemas/UpdateConnectionRequestDataAttributesFieldsToUpdateItems" + type: array + type: object + UpdateConnectionRequestDataAttributesFieldsToUpdateItems: + description: Specification for updating an existing field in a connection, including which field to modify and the new values. + properties: + field_id: + description: The identifier of the existing field to update. + example: "" + type: string + updated_description: + description: The new description to set for the field. + type: string + updated_display_name: + description: The new human-readable display name to set for the field. + type: string + updated_field_id: + description: The new identifier to assign to the field, if renaming it. + type: string + updated_groups: + description: The updated list of group labels to associate with the field. + items: + description: A group label name for categorizing the field. + type: string + type: array + required: + - field_id + type: object + UpdateConnectionRequestDataType: + default: connection_id + description: Connection id resource type. + enum: + - connection_id + example: connection_id + type: string + x-enum-varnames: + - CONNECTION_ID + UpdateCustomFrameworkRequest: + description: Request object to update a custom framework. + properties: + data: + $ref: "#/components/schemas/CustomFrameworkData" + required: + - data + type: object + UpdateCustomFrameworkResponse: + description: Response object to update a custom framework. + properties: + data: + $ref: "#/components/schemas/FrameworkHandleAndVersionResponseData" + required: + - data + type: object + UpdateDeploymentGateParams: + description: Parameters for updating a deployment gate. + properties: + data: + $ref: "#/components/schemas/UpdateDeploymentGateParamsData" + required: + - data + type: object + UpdateDeploymentGateParamsData: + description: Parameters for updating a deployment gate. + properties: + attributes: + $ref: "#/components/schemas/UpdateDeploymentGateParamsDataAttributes" + id: + description: Unique identifier of the deployment gate. + example: "12345678-1234-1234-1234-123456789012" + type: string + type: + $ref: "#/components/schemas/DeploymentGateDataType" + required: + - type + - id + - attributes + type: object + UpdateDeploymentGateParamsDataAttributes: + description: Attributes for updating a deployment gate. + properties: + dry_run: + description: Whether to run in dry-run mode. + example: false + type: boolean + required: + - dry_run + type: object + UpdateDeploymentRuleParams: + description: Parameters for updating a deployment rule. + properties: + data: + $ref: "#/components/schemas/UpdateDeploymentRuleParamsData" + required: + - data + type: object + UpdateDeploymentRuleParamsData: + description: Parameters for updating a deployment rule. + properties: + attributes: + $ref: "#/components/schemas/UpdateDeploymentRuleParamsDataAttributes" + type: + $ref: "#/components/schemas/DeploymentRuleDataType" + required: + - type + - attributes + type: object + UpdateDeploymentRuleParamsDataAttributes: + description: Parameters for updating a deployment rule. + properties: + dry_run: + description: Whether to run this rule in dry-run mode. + example: false + type: boolean + name: + description: The name of the deployment rule. + example: "Updated deployment rule" + type: string + options: + $ref: "#/components/schemas/DeploymentRulesOptions" + required: + - dry_run + - name + - options + type: object + UpdateEnvironmentAttributes: + description: Attributes for updating an environment. + properties: + is_production: + description: Indicates whether this is a production environment. + example: false + type: boolean + name: + description: The name of the environment. + example: "Environment XYZ789" + type: string + queries: + description: List of queries to define the environment scope. + example: ["staging", "test"] + items: + description: A query string used to match the environment scope. + type: string + minItems: 1 + type: array + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: true + type: boolean + type: object + UpdateEnvironmentData: + description: Data for updating an environment. + properties: + attributes: + $ref: "#/components/schemas/UpdateEnvironmentAttributes" + type: + $ref: "#/components/schemas/UpdateEnvironmentDataType" + required: + - type + - attributes + type: object + UpdateEnvironmentDataType: + description: The resource type. + enum: + - "environments" + example: "environments" + type: string + x-enum-varnames: + - ENVIRONMENTS + UpdateEnvironmentRequest: + description: Request to update an environment. + properties: + data: + $ref: "#/components/schemas/UpdateEnvironmentData" + required: + - data + type: object + UpdateFeatureFlagAttributes: + description: Attributes for updating a feature flag. + properties: + description: + description: The description of the feature flag. + example: "Updated description for feature flag XYZ789" + type: string + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + name: + description: The name of the feature flag. + example: "Updated Feature Flag XYZ789" + type: string + type: object + UpdateFeatureFlagData: + description: Data for updating a feature flag. + properties: + attributes: + $ref: "#/components/schemas/UpdateFeatureFlagAttributes" + type: + $ref: "#/components/schemas/UpdateFeatureFlagDataType" + required: + - type + - attributes + type: object + UpdateFeatureFlagDataType: + description: The resource type. + enum: + - "feature-flags" + example: "feature-flags" + type: string + x-enum-varnames: + - FEATURE_FLAGS + UpdateFeatureFlagRequest: + description: Request to update a feature flag. + properties: + data: + $ref: "#/components/schemas/UpdateFeatureFlagData" + required: + - data + type: object + UpdateFlakyTestsRequest: + description: Request to update the state of multiple flaky tests. + properties: + data: + $ref: "#/components/schemas/UpdateFlakyTestsRequestData" + required: + - data + type: object + UpdateFlakyTestsRequestAttributes: + description: Attributes for updating flaky test states. + properties: + tests: + description: List of flaky tests to update. + items: + $ref: "#/components/schemas/UpdateFlakyTestsRequestTest" + type: array + required: + - tests + type: object + UpdateFlakyTestsRequestData: + description: The JSON:API data for updating flaky test states. + properties: + attributes: + $ref: "#/components/schemas/UpdateFlakyTestsRequestAttributes" + type: + $ref: "#/components/schemas/UpdateFlakyTestsRequestDataType" + required: + - type + - attributes + type: object + UpdateFlakyTestsRequestDataType: + description: The definition of `UpdateFlakyTestsRequestDataType` object. + enum: + - update_flaky_test_state_request + example: update_flaky_test_state_request + type: string + x-enum-varnames: + - UPDATE_FLAKY_TEST_STATE_REQUEST + UpdateFlakyTestsRequestTest: + description: Details of what tests to update and their new attributes. + properties: + id: + description: |- + The ID of the flaky test. This is the same ID returned by the Search flaky tests endpoint and is the + value of the `@test.fingerprint_fqn` facet on test events. You can find it by searching on + `@test.fingerprint_fqn` in the Test Optimization Explorer, or by filtering the Search flaky tests + endpoint with the `fingerprint_fqn` key. + example: 4eb1887a8adb1847 + type: string + new_state: + $ref: "#/components/schemas/UpdateFlakyTestsRequestTestNewState" + required: + - id + - new_state + type: object + UpdateFlakyTestsRequestTestNewState: + description: The new state to set for the flaky test. + enum: + - active + - quarantined + - disabled + - fixed + example: active + type: string + x-enum-varnames: + - ACTIVE + - QUARANTINED + - DISABLED + - FIXED + UpdateFlakyTestsResponse: + description: Response object for updating flaky test states. + properties: + data: + $ref: "#/components/schemas/UpdateFlakyTestsResponseData" + type: object + UpdateFlakyTestsResponseAttributes: + description: Attributes for the update flaky test state response. + properties: + has_errors: + description: "`True` if any errors occurred during the update operations. `False` if all tests succeeded to be updated." + example: true + type: boolean + results: + description: Results of the update operation for each test. + items: + $ref: "#/components/schemas/UpdateFlakyTestsResponseResult" + type: array + required: + - has_errors + - results + type: object + UpdateFlakyTestsResponseData: + description: Summary of the update operations. Tells whether a test succeeded or failed to be updated. + properties: + attributes: + $ref: "#/components/schemas/UpdateFlakyTestsResponseAttributes" + id: + description: The ID of the response. + type: string + type: + $ref: "#/components/schemas/UpdateFlakyTestsResponseDataType" + type: object + UpdateFlakyTestsResponseDataType: + description: The definition of `UpdateFlakyTestsResponseDataType` object. + enum: + - update_flaky_test_state_response + type: string + x-enum-varnames: + - UPDATE_FLAKY_TEST_STATE_RESPONSE + UpdateFlakyTestsResponseResult: + description: Result of updating a single flaky test state. + properties: + error: + description: Error message if the update failed. + type: string + id: + description: |- + The ID of the flaky test from the request. This is the value of the `@test.fingerprint_fqn` facet + on test events, the same ID accepted by the update request and returned by the Search flaky tests + endpoint. + example: 4eb1887a8adb1847 + type: string + success: + description: "`True` if the update was successful, `False` if there were any errors." + example: false + type: boolean + required: + - id + - success + type: object + UpdateFormData: + description: The data for updating a form. + properties: + attributes: + $ref: "#/components/schemas/UpdateFormDataAttributes" + id: + description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + format: uuid + type: string + type: + $ref: "#/components/schemas/FormType" + required: + - type + - attributes + type: object + UpdateFormDataAttributes: + description: The attributes for updating a form. + properties: + form_update: + $ref: "#/components/schemas/FormUpdateAttributes" + required: + - form_update + type: object + UpdateFormRequest: + description: A request to update a form. + properties: + data: + $ref: "#/components/schemas/UpdateFormData" + required: + - data + type: object + UpdateOnCallNotificationRuleRequest: + description: A top-level wrapper for updating a notification rule for a user + example: + data: + attributes: + "category": "high_urgency" + channel_settings: + method: "sms" + type: "phone" + "delay_minutes": 1 + id: 2462ace1-49e2-aab1-xc4f-29cc4ae1105n7 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + properties: + data: + $ref: "#/components/schemas/UpdateOnCallNotificationRuleRequestData" + required: + - data + type: object + UpdateOnCallNotificationRuleRequestAttributes: + description: Attributes for creating or modifying an on-call notification rule. + properties: + category: + $ref: "#/components/schemas/OnCallNotificationRuleCategory" + channel_settings: + $ref: "#/components/schemas/OnCallNotificationRuleChannelSettings" + description: Configuration for the associated channel, if necessary + nullable: true + delay_minutes: + description: The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation + format: int64 + type: integer + type: object + UpdateOnCallNotificationRuleRequestData: + description: Data for updating an on-call notification rule + properties: + attributes: + $ref: "#/components/schemas/UpdateOnCallNotificationRuleRequestAttributes" + id: + description: Unique identifier for the rule + type: string + relationships: + $ref: "#/components/schemas/OnCallNotificationRuleRelationships" + type: + $ref: "#/components/schemas/OnCallNotificationRuleType" + required: + - type + type: object + UpdateOpenAPIResponse: + description: Response for `UpdateOpenAPI`. + properties: + data: + $ref: "#/components/schemas/UpdateOpenAPIResponseData" + type: object + UpdateOpenAPIResponseAttributes: + description: Attributes for `UpdateOpenAPI`. + properties: + failed_endpoints: + description: List of endpoints which couldn't be parsed. + items: + $ref: "#/components/schemas/OpenAPIEndpoint" + type: array + type: object + UpdateOpenAPIResponseData: + description: Data envelope for `UpdateOpenAPIResponse`. + properties: + attributes: + $ref: "#/components/schemas/UpdateOpenAPIResponseAttributes" + id: + $ref: "#/components/schemas/ApiID" + type: object + UpdateOutcomesAsyncAttributes: + description: The JSON:API attributes for a batched set of scorecard outcomes. + properties: + results: + description: Set of scorecard outcomes to update asynchronously. + items: + $ref: "#/components/schemas/UpdateOutcomesAsyncRequestItem" + type: array + type: object + UpdateOutcomesAsyncRequest: + description: Scorecard outcomes batch request. + properties: + data: + $ref: "#/components/schemas/UpdateOutcomesAsyncRequestData" + type: object + UpdateOutcomesAsyncRequestData: + description: Scorecard outcomes batch request data. + properties: + attributes: + $ref: "#/components/schemas/UpdateOutcomesAsyncAttributes" + type: + $ref: "#/components/schemas/UpdateOutcomesAsyncType" + type: object + UpdateOutcomesAsyncRequestItem: + description: Scorecard outcome for a single entity and rule. + properties: + entity_reference: + $ref: "#/components/schemas/EntityReference" + remarks: + description: >- + Any remarks regarding the scorecard rule's evaluation. Supports HTML hyperlinks. + example: 'See: Services' + type: string + rule_id: + $ref: "#/components/schemas/RuleId" + state: + $ref: "#/components/schemas/State" + required: + - rule_id + - entity_reference + - state + type: object + UpdateOutcomesAsyncType: + default: batched-outcome + description: The JSON:API type for scorecard outcomes. + enum: [batched-outcome] + example: batched-outcome + type: string + x-enum-varnames: [BATCHED_OUTCOME] + UpdateResourceEvaluationFiltersRequest: + description: Request object to update a resource filter. + properties: + data: + $ref: "#/components/schemas/UpdateResourceEvaluationFiltersRequestData" + required: + - data + type: object + UpdateResourceEvaluationFiltersRequestData: + description: The definition of `UpdateResourceFilterRequestData` object. + properties: + attributes: + $ref: "#/components/schemas/ResourceFilterAttributes" + id: + description: The `UpdateResourceEvaluationFiltersRequestData` `id`. + example: csm_resource_filter + type: string + type: + $ref: "#/components/schemas/ResourceFilterRequestType" + required: + - attributes + - type + type: object + UpdateResourceEvaluationFiltersResponse: + description: The definition of `UpdateResourceEvaluationFiltersResponse` object. + properties: + data: + $ref: "#/components/schemas/UpdateResourceEvaluationFiltersResponseData" + required: + - data + type: object + UpdateResourceEvaluationFiltersResponseData: + description: The definition of `UpdateResourceFilterResponseData` object. + properties: + attributes: + $ref: "#/components/schemas/ResourceFilterAttributes" + id: + description: The `data` `id`. + example: csm_resource_filter + type: string + type: + $ref: "#/components/schemas/ResourceFilterRequestType" + required: + - attributes + - type + type: object + UpdateRuleRequest: + description: Request to update a scorecard rule. + properties: + data: + $ref: "#/components/schemas/UpdateRuleRequestData" + type: object + UpdateRuleRequestData: + description: Data for the request to update a scorecard rule. + properties: + attributes: + $ref: "#/components/schemas/RuleAttributesRequest" + type: + $ref: "#/components/schemas/RuleType" + type: object + UpdateRuleResponse: + description: The response from a rule update request. + properties: + data: + $ref: "#/components/schemas/UpdateRuleResponseData" + type: object + UpdateRuleResponseData: + description: The data for a rule update response. + properties: + attributes: + $ref: "#/components/schemas/RuleAttributes" + id: + $ref: "#/components/schemas/RuleId" + relationships: + $ref: "#/components/schemas/RelationshipToRule" + type: + $ref: "#/components/schemas/RuleType" + type: object + UpdateRulesetRequest: + description: The definition of `UpdateRulesetRequest` object. + example: + data: + attributes: + enabled: true + last_version: 1 + name: Updated Ruleset + rules: + - enabled: true + mapping: + metadata: + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: + - enabled: true + mapping: + destination_key: team_owner + if_tag_exists: do_not_apply + source_keys: + - account_name + - account_id + metadata: + name: Account Name Mapping + query: + reference_table: + - enabled: true + mapping: + metadata: + name: New table rule with new UI + query: + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + type: update_ruleset + properties: + data: + $ref: "#/components/schemas/UpdateRulesetRequestData" + type: object + UpdateRulesetRequestData: + description: The definition of `UpdateRulesetRequestData` object. + properties: + attributes: + $ref: "#/components/schemas/UpdateRulesetRequestDataAttributes" + id: + description: The `UpdateRulesetRequestData` `id`. + type: string + type: + $ref: "#/components/schemas/UpdateRulesetRequestDataType" + required: + - type + type: object + UpdateRulesetRequestDataAttributes: + description: The definition of `UpdateRulesetRequestDataAttributes` object. + properties: + enabled: + description: The `attributes` `enabled`. + example: false + type: boolean + last_version: + description: The `attributes` `last_version`. + format: int64 + type: integer + rules: + description: The `attributes` `rules`. + items: + $ref: "#/components/schemas/UpdateRulesetRequestDataAttributesRulesItems" + type: array + required: + - enabled + - rules + type: object + UpdateRulesetRequestDataAttributesRulesItems: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItems` object. + properties: + enabled: + description: The `items` `enabled`. + example: false + type: boolean + mapping: + $ref: "#/components/schemas/DataAttributesRulesItemsMapping" + metadata: + $ref: "#/components/schemas/RulesetItemMetadata" + name: + description: The `items` `name`. + example: "" + type: string + query: + $ref: "#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsQuery" + reference_table: + $ref: "#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsReferenceTable" + required: + - enabled + - name + type: object + UpdateRulesetRequestDataAttributesRulesItemsQuery: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsQuery` object. + nullable: true + properties: + addition: + $ref: "#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsQueryAddition" + case_insensitivity: + description: The `query` `case_insensitivity`. + type: boolean + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `query` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + query: + description: The `query` `query`. + example: "" + type: string + required: + - addition + - query + type: object + UpdateRulesetRequestDataAttributesRulesItemsQueryAddition: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsQueryAddition` object. + nullable: true + properties: + key: + description: The `addition` `key`. + example: "" + type: string + value: + description: The `addition` `value`. + example: "" + type: string + required: + - key + - value + type: object + UpdateRulesetRequestDataAttributesRulesItemsReferenceTable: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsReferenceTable` object. + nullable: true + properties: + case_insensitivity: + description: The `reference_table` `case_insensitivity`. + type: boolean + field_pairs: + description: The `reference_table` `field_pairs`. + items: + $ref: "#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems" + type: array + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `reference_table` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: "#/components/schemas/DataAttributesRulesItemsIfTagExists" + source_keys: + description: The `reference_table` `source_keys`. + example: + - "" + items: + description: A source key for the reference table lookup. + type: string + type: array + table_name: + description: The `reference_table` `table_name`. + example: "" + type: string + required: + - field_pairs + - source_keys + - table_name + type: object + UpdateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems` object. + properties: + input_column: + description: The `items` `input_column`. + example: "" + type: string + output_key: + description: The `items` `output_key`. + example: "" + type: string + required: + - input_column + - output_key + type: object + UpdateRulesetRequestDataType: + default: update_ruleset + description: Update ruleset resource type. + enum: + - update_ruleset + example: update_ruleset + type: string + x-enum-varnames: + - UPDATE_RULESET + UpdateTenancyConfigData: + description: The data object for updating an existing OCI tenancy integration configuration, including the tenancy ID, type, and updated attributes. + properties: + attributes: + $ref: "#/components/schemas/UpdateTenancyConfigDataAttributes" + id: + description: The OCID of the OCI tenancy to update. + example: "" + type: string + type: + $ref: "#/components/schemas/UpdateTenancyConfigDataType" + required: + - type + - id + type: object + UpdateTenancyConfigDataAttributes: + description: Attributes for updating an existing OCI tenancy integration configuration, including optional credentials, region settings, and collection options. + properties: + auth_credentials: + $ref: "#/components/schemas/UpdateTenancyConfigDataAttributesAuthCredentials" + cost_collection_enabled: + description: Whether cost data collection from OCI is enabled for the tenancy. + type: boolean + home_region: + description: The home region of the OCI tenancy (for example, us-ashburn-1). + type: string + logs_config: + $ref: "#/components/schemas/UpdateTenancyConfigDataAttributesLogsConfig" + metrics_config: + $ref: "#/components/schemas/UpdateTenancyConfigDataAttributesMetricsConfig" + regions_config: + $ref: "#/components/schemas/UpdateTenancyConfigDataAttributesRegionsConfig" + resource_collection_enabled: + description: Whether resource collection from OCI is enabled for the tenancy. + type: boolean + user_ocid: + description: The OCID of the OCI user used by the Datadog integration for authentication. + type: string + type: object + UpdateTenancyConfigDataAttributesAuthCredentials: + description: OCI API signing key credentials used to update the Datadog integration's authentication with the OCI tenancy. + properties: + fingerprint: + description: The fingerprint of the OCI API signing key used for authentication. + type: string + private_key: + description: The PEM-encoded private key corresponding to the OCI API signing key fingerprint. + example: "" + type: string + required: + - private_key + type: object + UpdateTenancyConfigDataAttributesLogsConfig: + description: Log collection configuration for updating an OCI tenancy, controlling which compartments and services have log collection enabled. + properties: + compartment_tag_filters: + description: List of compartment tag filters to scope log collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether log collection is enabled for the tenancy. + type: boolean + enabled_services: + description: List of OCI service names for which log collection is enabled. + items: + description: An OCI service name for which log collection is enabled (for example, compute). + type: string + type: array + type: object + UpdateTenancyConfigDataAttributesMetricsConfig: + description: Metrics collection configuration for updating an OCI tenancy, controlling which compartments and services are included or excluded. + properties: + compartment_tag_filters: + description: List of compartment tag filters to scope metrics collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether metrics collection is enabled for the tenancy. + type: boolean + excluded_services: + description: List of OCI service names to exclude from metrics collection. + items: + description: An OCI service name to exclude from metrics collection (for example, compute). + type: string + type: array + type: object + UpdateTenancyConfigDataAttributesRegionsConfig: + description: Region configuration for updating an OCI tenancy, specifying which regions are available, enabled, or disabled for data collection. + properties: + available: + description: List of OCI regions available for data collection in the tenancy. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + disabled: + description: List of OCI regions explicitly disabled for data collection. + items: + description: An OCI region identifier (for example, us-phoenix-1). + type: string + type: array + enabled: + description: List of OCI regions enabled for data collection. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + type: object + UpdateTenancyConfigDataType: + default: oci_tenancy + description: OCI tenancy resource type. + enum: + - oci_tenancy + example: oci_tenancy + type: string + x-enum-varnames: + - OCI_TENANCY + UpdateTenancyConfigRequest: + description: Request body for updating an existing OCI tenancy integration configuration. + example: + data: + attributes: + auth_credentials: + fingerprint: "" + private_key: |- + ----BEGIN PRIVATE KEY----- + MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M + QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR + C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl + YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn + QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc + mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU + nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc + quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3 + LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R + W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx + l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+ + rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY + PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59 + 86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP + XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS + DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM + mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs + -----END PRIVATE KEY----- + cost_collection_enabled: true + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + $ref: "#/components/schemas/UpdateTenancyConfigData" + required: + - data + type: object + UpdateUserIdentityProvidersRequest: + description: Request body for setting identity provider overrides for a user. + properties: + data: + $ref: "#/components/schemas/UserRelationshipIdentityProviderDataList" + required: + - data + type: object + UpdateVariantRequest: + description: Request to update an existing variant's name and value. + properties: + name: + description: The display name of the variant. + example: "Variant ABC123 Updated" + type: string + value: + description: The value of the variant as a string. + example: "new_value" + type: string + type: object + UpdateWorkflowRequest: + description: A request object for updating an existing workflow. + example: + data: + attributes: + description: "A sample workflow." + name: "Example Workflow" + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + y: -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: "Example annotation." + connectionEnvs: + - connections: + - connectionId: "e1e64943-c7c5-4487-aece-25aaec7d3aad" + label: "INTEGRATION_DATADOG" + env: "default" + handle: "my-handle" + inputSchema: + parameters: + - defaultValue: "default" + name: "input" + type: "STRING" + outputSchema: + parameters: + - name: "output" + type: "ARRAY_OBJECT" + value: "{{ Steps.Step1 }}" + steps: + - actionId: "com.datadoghq.dd.monitor.listMonitors" + connectionLabel: "INTEGRATION_DATADOG" + name: "Step1" + outboundEdges: + - branchName: "main" + nextStepName: "Step2" + parameters: + - name: "tags" + value: "service:monitoring" + - actionId: "com.datadoghq.core.noop" + name: "Step2" + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: "3600s" + startStepNames: ["Step1"] + - githubWebhookTrigger: {} + startStepNames: ["Step1"] + tags: + - "team:infra" + - "service:monitoring" + - "foo:bar" + id: "22222222-2222-2222-2222-222222222222" + type: "workflows" + properties: + data: + $ref: "#/components/schemas/WorkflowDataUpdate" + required: + - data + type: object + UpdateWorkflowResponse: + description: The response object after updating a workflow. + properties: + data: + $ref: "#/components/schemas/WorkflowDataUpdate" + type: object + UpsertAllocationRequest: + description: Request to create or update a targeting rule (allocation) for a feature flag environment. + properties: + experiment_id: + description: The experiment ID for experiment-linked allocations. + example: "550e8400-e29b-41d4-a716-446655440030" + nullable: true + type: string + exposure_schedule: + $ref: "#/components/schemas/ExposureScheduleRequest" + guardrail_metrics: + description: Guardrail metrics used to monitor and auto-pause or abort. + items: + $ref: "#/components/schemas/GuardrailMetricRequest" + type: array + id: + description: The unique identifier of the targeting rule allocation. + example: "550e8400-e29b-41d4-a716-446655440020" + format: uuid + type: string + key: + description: The unique key of the targeting rule allocation. + example: "prod-rollout" + type: string + name: + description: The display name of the targeting rule. + example: "Production Rollout" + type: string + targeting_rules: + description: Targeting rules that determine audience eligibility. + items: + $ref: "#/components/schemas/TargetingRuleRequest" + type: array + type: + $ref: "#/components/schemas/AllocationType" + variant_weights: + description: Variant distribution weights. + items: + $ref: "#/components/schemas/VariantWeightRequest" + type: array + required: + - name + - key + - type + type: object + UpsertAndPublishFormVersionData: + description: The data for upserting and publishing a form version. + properties: + attributes: + $ref: "#/components/schemas/UpsertAndPublishFormVersionDataAttributes" + type: + $ref: "#/components/schemas/FormVersionType" + required: + - type + - attributes + type: object + UpsertAndPublishFormVersionDataAttributes: + description: The attributes for upserting and publishing a form version. + properties: + data_definition: + $ref: "#/components/schemas/FormDataDefinition" + ui_definition: + $ref: "#/components/schemas/FormUiDefinition" + upsert_params: + $ref: "#/components/schemas/UpsertAndPublishFormVersionUpsertParams" + required: + - data_definition + - ui_definition + - upsert_params + type: object + UpsertAndPublishFormVersionRequest: + description: A request to upsert and publish a form version in a single transaction. + properties: + data: + $ref: "#/components/schemas/UpsertAndPublishFormVersionData" + required: + - data + type: object + UpsertAndPublishFormVersionUpsertParams: + description: Concurrency control parameters for the upsert and publish operation. + properties: + etag: + description: The ETag of the latest version used for optimistic concurrency control. + example: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + type: string + required: + - etag + type: object + UpsertCatalogEntityRequest: + description: Create or update entity request. + oneOf: + - $ref: "#/components/schemas/EntityV3" + - $ref: "#/components/schemas/EntityRaw" + UpsertCatalogEntityResponse: + description: Upsert entity response. + properties: + data: + $ref: "#/components/schemas/EntityResponseData" + included: + $ref: "#/components/schemas/UpsertCatalogEntityResponseIncluded" + meta: + $ref: "#/components/schemas/EntityResponseMeta" + type: object + UpsertCatalogEntityResponseIncluded: + description: Upsert entity response included. + items: + $ref: "#/components/schemas/UpsertCatalogEntityResponseIncludedItem" + type: array + UpsertCatalogEntityResponseIncludedItem: + description: Upsert entity response included item. + oneOf: + - $ref: "#/components/schemas/EntityResponseIncludedSchema" + UpsertCatalogKindRequest: + description: Create or update kind request. + oneOf: + - $ref: "#/components/schemas/KindObj" + - $ref: "#/components/schemas/KindRaw" + UpsertCatalogKindResponse: + description: Upsert kind response. + properties: + data: + $ref: "#/components/schemas/KindResponseData" + meta: + $ref: "#/components/schemas/KindResponseMeta" + type: object + UpsertCloudInventorySyncConfigRequest: + description: Request body for creating or updating a cloud inventory sync configuration. + properties: + data: + $ref: "#/components/schemas/UpsertCloudInventorySyncConfigRequestData" + required: + - data + type: object + UpsertCloudInventorySyncConfigRequestAttributes: + description: |- + Settings for the cloud provider specified in `data.id`. Include only the matching provider object (`aws`, `gcp`, or `azure`). + properties: + aws: + $ref: "#/components/schemas/CloudInventorySyncConfigAWSRequestAttributes" + azure: + $ref: "#/components/schemas/CloudInventorySyncConfigAzureRequestAttributes" + gcp: + $ref: "#/components/schemas/CloudInventorySyncConfigGCPRequestAttributes" + type: object + UpsertCloudInventorySyncConfigRequestData: + description: Storage Management configuration data for the create or update request. + properties: + attributes: + $ref: "#/components/schemas/UpsertCloudInventorySyncConfigRequestAttributes" + id: + $ref: "#/components/schemas/CloudInventoryCloudProviderId" + type: + $ref: "#/components/schemas/CloudInventoryCloudProviderRequestType" + required: + - type + - id + - attributes + type: object + UpsertFormVersionData: + description: The data for creating or updating a form version. + properties: + attributes: + $ref: "#/components/schemas/UpsertFormVersionDataAttributes" + type: + $ref: "#/components/schemas/FormVersionType" + required: + - type + - attributes + type: object + UpsertFormVersionDataAttributes: + description: The attributes for creating or updating a form version. + properties: + data_definition: + $ref: "#/components/schemas/FormDataDefinition" + state: + $ref: "#/components/schemas/FormVersionState" + ui_definition: + $ref: "#/components/schemas/FormUiDefinition" + upsert_params: + $ref: "#/components/schemas/UpsertFormVersionUpsertParams" + required: + - state + - data_definition + - ui_definition + - upsert_params + type: object + UpsertFormVersionRequest: + description: A request to create or update a form version. + properties: + data: + $ref: "#/components/schemas/UpsertFormVersionData" + required: + - data + type: object + UpsertFormVersionUpsertParams: + description: Concurrency control parameters for the form version upsert operation. + properties: + etag: + description: The ETag of the latest version. Required when `match_policy` is `if_etag_match`. + example: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + nullable: true + type: string + insert_only: + description: If true, only a new version may be inserted; updating the current draft is not allowed. + example: false + type: boolean + match_policy: + $ref: "#/components/schemas/LatestVersionMatchPolicy" + required: + - match_policy + type: object + UpsertOAuthScopesRestrictionData: + description: Data object of an upsert OAuth2 scopes restriction request. + properties: + attributes: + $ref: "#/components/schemas/UpsertOAuthScopesRestrictionDataAttributes" + type: + $ref: "#/components/schemas/UpsertOAuthScopesRestrictionType" + required: + - type + type: object + UpsertOAuthScopesRestrictionDataAttributes: + description: Attributes of an upsert OAuth2 scopes restriction request. + properties: + oidc_scopes: + description: OIDC scopes the client is allowed to request. + example: + - openid + - email + items: + $ref: "#/components/schemas/OAuthOidcScope" + type: array + permission_scopes: + description: |- + Datadog permission scopes the client is allowed to request. + Each value must be a valid permission name. + example: + - dashboards_read + - metrics_read + items: + description: Datadog permission scope name. + example: dashboards_read + type: string + type: array + type: object + UpsertOAuthScopesRestrictionRequest: + description: Request payload for creating or updating the scopes restriction of an OAuth2 client. + properties: + data: + $ref: "#/components/schemas/UpsertOAuthScopesRestrictionData" + required: + - data + type: object + UpsertOAuthScopesRestrictionType: + default: upsert_scopes_restriction + description: JSON:API resource type for an upsert OAuth2 client scopes restriction request. + enum: + - upsert_scopes_restriction + example: upsert_scopes_restriction + type: string + x-enum-varnames: + - UPSERT_SCOPES_RESTRICTION + Urgency: + description: Specifies the level of urgency for a routing rule (low, high, or dynamic). + enum: + - low + - high + - dynamic + example: low + type: string + x-enum-varnames: + - LOW + - HIGH + - DYNAMIC + UrlParam: + description: The definition of `UrlParam` object. + properties: + name: + $ref: "#/components/schemas/TokenName" + example: MyUrlParameter + value: + description: The `UrlParam` `value`. + example: Some Url Parameter value + type: string + required: + - name + - value + type: object + UrlParamUpdate: + description: The definition of `UrlParamUpdate` object. + properties: + deleted: + description: Should the header be deleted. + type: boolean + name: + $ref: "#/components/schemas/TokenName" + example: MyUrlParameter + value: + description: The `UrlParamUpdate` `value`. + example: Some Url Parameter value + type: string + required: + - name + type: object + UsageApplicationSecurityMonitoringResponse: + description: Application Security Monitoring usage response. + properties: + data: + description: Response containing Application Security Monitoring usage. + items: + $ref: "#/components/schemas/UsageDataObject" + type: array + type: object + UsageAttributesObject: + description: Usage attributes data. + properties: + org_name: + description: The organization name. + type: string + product_family: + description: The product for which usage is being reported. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + timeseries: + description: List of usage data reported for each requested hour. + items: + $ref: "#/components/schemas/UsageTimeSeriesObject" + type: array + usage_type: + $ref: "#/components/schemas/HourlyUsageType" + type: object + UsageAttributionTypesAttributes: + description: List of usage attribution types. + properties: + values: + description: "List of usage attribution types." + items: + description: A given usage type in a list. + example: "infra_host" + type: string + type: array + type: object + UsageAttributionTypesBody: + description: Usage attribution types data. + properties: + attributes: + $ref: "#/components/schemas/UsageAttributionTypesAttributes" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/UsageAttributionTypesType" + type: object + UsageAttributionTypesResponse: + description: Usage attribution types response. + properties: + data: + $ref: "#/components/schemas/UsageAttributionTypesBody" + type: object + UsageAttributionTypesType: + default: usage_attribution_types + description: Type of usage attribution types data. + enum: + - usage_attribution_types + type: string + x-enum-varnames: + - USAGE_ATTRIBUTION_TYPES + UsageDataObject: + description: Usage data. + properties: + attributes: + $ref: "#/components/schemas/UsageAttributesObject" + id: + description: Unique ID of the response. + type: string + type: + $ref: "#/components/schemas/UsageTimeSeriesType" + type: object + UsageLambdaTracedInvocationsResponse: + description: Lambda Traced Invocations usage response. + properties: + data: + description: Response containing Lambda Traced Invocations usage. + items: + $ref: "#/components/schemas/UsageDataObject" + type: array + type: object + UsageObservabilityPipelinesResponse: + description: Observability Pipelines usage response. + properties: + data: + description: Response containing Observability Pipelines usage. + items: + $ref: "#/components/schemas/UsageDataObject" + type: array + type: object + UsageSummaryAvailableFieldsAttributes: + description: |- + The lists of field names returned by `GET /api/v1/usage/summary` at each + of its three response levels. Each list contains every key the data endpoint + emits—both typed fields declared in the OpenAPI spec and untyped keys + exposed through `additionalProperties`. + properties: + date_fields: + description: |- + Sorted list of every key returned inside each `UsageSummaryDate` + entry of `usage[]` (typed fields and `additionalProperties` keys + combined). + items: + type: string + type: array + date_org_fields: + description: |- + Sorted list of every key returned inside each `UsageSummaryDateOrg` + entry of `usage[].orgs[]` (typed fields and `additionalProperties` + keys combined). + items: + type: string + type: array + response_fields: + description: |- + Sorted list of every key returned as a direct property of + `UsageSummaryResponse` (typed fields and `additionalProperties` + keys combined). + items: + type: string + type: array + type: object + UsageSummaryAvailableFieldsBody: + description: Available-fields data. + properties: + attributes: + $ref: "#/components/schemas/UsageSummaryAvailableFieldsAttributes" + id: + description: The identifier for the discovery scope. Always `"all"`. + example: all + type: string + type: + $ref: "#/components/schemas/UsageSummaryAvailableFieldsType" + type: object + UsageSummaryAvailableFieldsResponse: + description: |- + Response listing every field name returned by `GET /api/v1/usage/summary` + at each of its three response levels. Includes both typed fields and untyped + `additionalProperties` keys. + properties: + data: + $ref: "#/components/schemas/UsageSummaryAvailableFieldsBody" + type: object + UsageSummaryAvailableFieldsType: + default: usage_summary_available_fields + description: Type of available-fields data. + enum: + - usage_summary_available_fields + type: string + x-enum-varnames: + - USAGE_SUMMARY_AVAILABLE_FIELDS + UsageTimeSeriesObject: + description: Usage timeseries data. + properties: + timestamp: + description: Datetime in ISO-8601 format, UTC. The hour for the usage. + format: date-time + type: string + value: + description: Contains the number measured for the given usage_type during the hour. + format: int64 + nullable: true + type: integer + type: object + UsageTimeSeriesType: + default: usage_timeseries + description: Type of usage data. + enum: + - usage_timeseries + example: usage_timeseries + type: string + x-enum-varnames: + - USAGE_TIMESERIES + User: + description: User object returned by the API. + properties: + attributes: + $ref: "#/components/schemas/UserAttributes" + id: + description: ID of the user. + type: string + relationships: + $ref: "#/components/schemas/UserResponseRelationships" + type: + $ref: "#/components/schemas/UsersType" + type: object + UserAttributes: + description: Attributes of user object returned by the API. + properties: + created_at: + description: The ISO 8601 timestamp of when the user account was created. + format: date-time + type: string + disabled: + description: Whether the user account is deactivated. Disabled users cannot log in. + type: boolean + email: + description: The email address of the user, used for login and notifications. + type: string + handle: + description: The unique handle (username) of the user, typically matching their email prefix. + type: string + icon: + description: URL of the user's profile icon, typically a Gravatar URL derived from the email address. + type: string + last_login_time: + description: The ISO 8601 timestamp of the user's most recent login, or null if the user has never logged in. + format: date-time + nullable: true + readOnly: true + type: string + mfa_enabled: + description: Whether multi-factor authentication (MFA) is enabled for the user's account. + readOnly: true + type: boolean + modified_at: + description: The ISO 8601 timestamp of when the user account was last modified. + format: date-time + type: string + name: + description: The full display name of the user as shown in the Datadog UI. + nullable: true + type: string + service_account: + description: |- + Whether this is a service account rather than a human user. + Service accounts are used for programmatic API access. + type: boolean + status: + description: The current status of the user account (for example, `Active`, `Pending`, or `Disabled`). + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true + type: string + uuid: + description: The globally unique identifier (UUID) of the user. + readOnly: true + type: string + verified: + description: Whether the user's email address has been verified. + type: boolean + type: object + UserAttributesStatus: + description: The user's status. + enum: + - active + - deactivated + - pending + type: string + x-enum-varnames: + - ACTIVE + - DEACTIVATED + - PENDING + UserAuthorizedClientAttributes: + description: Attributes of a user authorized client. + properties: + created_at: + description: The date and time this authorization was created. + example: "2024-01-10T08:00:00+00:00" + format: date-time + type: string + disabled: + description: Whether the user has disabled this authorization. + example: false + type: boolean + last_exercised: + description: The date and time this authorization was last exercised. + example: "2024-01-15T10:30:00+00:00" + format: date-time + nullable: true + type: string + modified_at: + description: The date and time this authorization was last modified. + example: "2024-01-10T08:00:00+00:00" + format: date-time + type: string + org_disabled: + description: Whether the organization has disabled this authorization. + example: false + type: boolean + required: + - created_at + - modified_at + - last_exercised + - disabled + - org_disabled + type: object + UserAuthorizedClientData: + description: Data object representing a user authorized client. + properties: + attributes: + $ref: "#/components/schemas/UserAuthorizedClientAttributes" + id: + description: The unique identifier of the user authorized client. + example: "00000000-0000-0000-0000-000000000001" + type: string + relationships: + $ref: "#/components/schemas/UserAuthorizedClientRelationships" + type: + $ref: "#/components/schemas/UserAuthorizedClientType" + required: + - id + - type + - attributes + - relationships + type: object + UserAuthorizedClientDataList: + description: List of user authorized client data objects. + items: + $ref: "#/components/schemas/UserAuthorizedClientData" + type: array + UserAuthorizedClientRelationshipOAuth2Client: + description: Relationship to the OAuth2 client that was authorized. + properties: + data: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipOAuth2ClientData" + required: + - data + type: object + UserAuthorizedClientRelationshipOAuth2ClientData: + description: Data identifying the OAuth2 client that was authorized. + properties: + id: + description: The ID of the OAuth2 client. + example: "00000000-0000-0000-0000-000000000010" + type: string + type: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipOAuth2ClientDataType" + required: + - type + - id + type: object + UserAuthorizedClientRelationshipOAuth2ClientDataType: + description: OAuth2 client resource type. + enum: + - oauth2_clients + example: oauth2_clients + type: string + x-enum-varnames: + - OAUTH2_CLIENTS + UserAuthorizedClientRelationshipScopeData: + description: Data identifying a scope granted to the OAuth2 client. + properties: + id: + description: The identifier of the scope. + example: "example_scope" + type: string + type: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipScopeDataType" + required: + - type + - id + type: object + UserAuthorizedClientRelationshipScopeDataList: + description: List of scope relationship data objects. + items: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipScopeData" + type: array + UserAuthorizedClientRelationshipScopeDataType: + description: Scope resource type. + enum: + - scopes + example: scopes + type: string + x-enum-varnames: + - SCOPES + UserAuthorizedClientRelationshipScopes: + description: Relationship to the scopes granted to the OAuth2 client. + properties: + data: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipScopeDataList" + required: + - data + type: object + UserAuthorizedClientRelationshipUser: + description: Relationship to the user who granted this authorization. + properties: + data: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipUserData" + required: + - data + type: object + UserAuthorizedClientRelationshipUserData: + description: Data identifying the user who granted this authorization. + properties: + id: + description: The ID of the user. + example: "00000000-0000-9999-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipUserDataType" + required: + - type + - id + type: object + UserAuthorizedClientRelationshipUserDataType: + description: User resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + UserAuthorizedClientRelationships: + description: Relationships for a user authorized client. + properties: + oauth2_client: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipOAuth2Client" + scopes: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipScopes" + user: + $ref: "#/components/schemas/UserAuthorizedClientRelationshipUser" + required: + - user + - oauth2_client + - scopes + type: object + UserAuthorizedClientResponse: + description: Response containing a single user authorized client. + properties: + data: + $ref: "#/components/schemas/UserAuthorizedClientData" + required: + - data + type: object + UserAuthorizedClientType: + description: The resource type for user authorized clients. + enum: + - user_authorized_clients + example: user_authorized_clients + type: string + x-enum-varnames: + - USER_AUTHORIZED_CLIENTS + UserAuthorizedClientsResponse: + description: Response containing a list of user authorized clients. + properties: + data: + $ref: "#/components/schemas/UserAuthorizedClientDataList" + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + required: + - data + - meta + type: object + UserCreateAttributes: + description: Attributes of the created user. + properties: + email: + description: The email of the user. + example: "jane.doe@example.com" + type: string + name: + description: The name of the user. + type: string + title: + description: The title of the user. + type: string + required: + - email + type: object + UserCreateData: + description: Object to create a user. + properties: + attributes: + $ref: "#/components/schemas/UserCreateAttributes" + relationships: + $ref: "#/components/schemas/UserRelationships" + type: + $ref: "#/components/schemas/UsersType" + required: + - attributes + - type + type: object + UserCreateRequest: + description: Create a user. + properties: + data: + $ref: "#/components/schemas/UserCreateData" + required: + - data + type: object + UserInvitationData: + description: Object to create a user invitation. + properties: + relationships: + $ref: "#/components/schemas/UserInvitationRelationships" + type: + $ref: "#/components/schemas/UserInvitationsType" + required: + - type + - relationships + type: object + UserInvitationDataAttributes: + description: Attributes of a user invitation. + properties: + created_at: + description: Creation time of the user invitation. + format: date-time + type: string + expires_at: + description: Time of invitation expiration. + format: date-time + type: string + invite_type: + description: Type of invitation. + type: string + uuid: + description: UUID of the user invitation. + type: string + type: object + UserInvitationRelationships: + description: Relationships data for user invitation. + properties: + user: + $ref: "#/components/schemas/RelationshipToUser" + required: + - user + type: object + UserInvitationResponse: + description: User invitation as returned by the API. + properties: + data: + $ref: "#/components/schemas/UserInvitationResponseData" + type: object + UserInvitationResponseData: + description: Object of a user invitation returned by the API. + properties: + attributes: + $ref: "#/components/schemas/UserInvitationDataAttributes" + id: + description: ID of the user invitation. + type: string + relationships: + $ref: "#/components/schemas/UserInvitationRelationships" + type: + $ref: "#/components/schemas/UserInvitationsType" + type: object + UserInvitationsRequest: + description: Object to invite users to join the organization. + properties: + data: + description: "List of user invitations." + example: [] + items: + $ref: "#/components/schemas/UserInvitationData" + type: array + required: + - data + type: object + UserInvitationsResponse: + description: User invitations as returned by the API. + properties: + data: + description: Array of user invitations. + items: + $ref: "#/components/schemas/UserInvitationResponseData" + type: array + type: object + UserInvitationsType: + default: user_invitations + description: User invitations type. + enum: + - user_invitations + example: user_invitations + type: string + x-enum-varnames: + - USER_INVITATIONS + UserOverrideIdentityProviderAttributes: + description: Attributes of an identity provider override for a user. + properties: + authentication_method: + description: The authentication method used by this identity provider. + example: "SAML" + type: string + required: + - authentication_method + type: object + UserOverrideIdentityProviderData: + description: Data object representing a user identity provider override. + properties: + attributes: + $ref: "#/components/schemas/UserOverrideIdentityProviderAttributes" + id: + description: The unique identifier of the identity provider. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/UserOverrideIdentityProviderDataType" + required: + - id + - type + - attributes + type: object + UserOverrideIdentityProviderDataList: + description: List of user identity provider override data objects. + items: + $ref: "#/components/schemas/UserOverrideIdentityProviderData" + type: array + UserOverrideIdentityProviderDataType: + description: The resource type for identity providers. + enum: + - identity_providers + example: identity_providers + type: string + x-enum-varnames: + - IDENTITY_PROVIDERS + UserOverrideIdentityProvidersResponse: + description: Response containing a user's identity provider overrides. + properties: + data: + $ref: "#/components/schemas/UserOverrideIdentityProviderDataList" + required: + - data + type: object + UserRelationshipData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UserResourceType" + required: + - id + - type + type: object + UserRelationshipIdentityProviderData: + description: Resource identifier for an identity provider in a relationship update. + properties: + id: + description: The unique identifier of the identity provider. + example: "00000000-0000-0000-0000-000000000001" + type: string + type: + $ref: "#/components/schemas/UserRelationshipIdentityProviderDataType" + required: + - id + - type + type: object + UserRelationshipIdentityProviderDataList: + description: List of identity provider resource identifiers for a relationship update. + items: + $ref: "#/components/schemas/UserRelationshipIdentityProviderData" + type: array + UserRelationshipIdentityProviderDataType: + description: The resource type for identity providers. + enum: + - identity_providers + example: identity_providers + type: string + x-enum-varnames: + - IDENTITY_PROVIDERS + UserRelationships: + description: Relationships of the user object. + properties: + roles: + $ref: "#/components/schemas/RelationshipToRoles" + type: object + UserResourceType: + default: user + description: User resource type. + enum: + - user + example: user + type: string + x-enum-varnames: + - USER + UserResponse: + description: Response containing information about a single user. + properties: + data: + $ref: "#/components/schemas/User" + included: + description: Array of objects related to the user. + items: + $ref: "#/components/schemas/UserResponseIncludedItem" + type: array + type: object + UserResponseIncludedItem: + description: An object related to a user. + oneOf: + - $ref: "#/components/schemas/Organization" + - $ref: "#/components/schemas/Permission" + - $ref: "#/components/schemas/Role" + UserResponseRelationships: + description: Relationships of the user object returned by the API. + properties: + org: + $ref: "#/components/schemas/RelationshipToOrganization" + other_orgs: + $ref: "#/components/schemas/RelationshipToOrganizations" + other_users: + $ref: "#/components/schemas/RelationshipToUsers" + roles: + $ref: "#/components/schemas/RelationshipToRoles" + type: object + UserTarget: + description: "Represents a user target for an escalation policy step, including the user's ID and resource type." + properties: + id: + description: "Specifies the unique identifier of the user resource." + example: "00000000-aba1-0000-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UserTargetType" + required: + - type + - id + type: object + UserTargetType: + default: users + description: "Indicates that the resource is of type `users`." + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + UserTeam: + description: A user's relationship with a team + properties: + attributes: + $ref: "#/components/schemas/UserTeamAttributes" + id: + description: The ID of a user's relationship with a team + example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + type: string + relationships: + $ref: "#/components/schemas/UserTeamRelationships" + type: + $ref: "#/components/schemas/UserTeamType" + required: + - id + - type + type: object + UserTeamAttributes: + description: Team membership attributes + properties: + provisioned_by: + description: |- + The mechanism responsible for provisioning the team relationship. + Possible values: null for added by a user, "service_account" if added by a service account, and "saml_mapping" if provisioned via SAML mapping. + nullable: true + readOnly: true + type: string + provisioned_by_id: + description: UUID of the User or Service Account who provisioned this team membership, or null if provisioned via SAML mapping. + nullable: true + readOnly: true + type: string + role: + $ref: "#/components/schemas/UserTeamRole" + type: object + UserTeamCreate: + description: A user's relationship with a team + properties: + attributes: + $ref: "#/components/schemas/UserTeamAttributes" + relationships: + $ref: "#/components/schemas/UserTeamRelationships" + type: + $ref: "#/components/schemas/UserTeamType" + required: + - type + type: object + UserTeamIncluded: + description: Included resources related to the team membership + oneOf: + - $ref: "#/components/schemas/User" + - $ref: "#/components/schemas/Team" + UserTeamPermission: + description: A user's permissions for a given team + properties: + attributes: + $ref: "#/components/schemas/UserTeamPermissionAttributes" + id: + description: The user team permission's identifier + example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 + type: string + type: + $ref: "#/components/schemas/UserTeamPermissionType" + required: + - id + - type + type: object + UserTeamPermissionAttributes: + description: User team permission attributes + properties: + permissions: + description: Object of team permission actions and boolean values that a logged in user can perform on this team. + readOnly: true + type: object + type: object + UserTeamPermissionType: + default: user_team_permissions + description: User team permission type + enum: + - user_team_permissions + example: user_team_permissions + type: string + x-enum-varnames: + - USER_TEAM_PERMISSIONS + UserTeamRelationships: + description: Relationship between membership and a user + properties: + team: + $ref: "#/components/schemas/RelationshipToUserTeamTeam" + user: + $ref: "#/components/schemas/RelationshipToUserTeamUser" + type: object + UserTeamRequest: + description: Team membership request + properties: + data: + $ref: "#/components/schemas/UserTeamCreate" + required: + - data + type: object + UserTeamResponse: + description: Team membership response + properties: + data: + $ref: "#/components/schemas/UserTeam" + included: + description: Resources related to the team memberships + items: + $ref: "#/components/schemas/UserTeamIncluded" + type: array + type: object + UserTeamRole: + description: The user's role within the team + enum: + - admin + nullable: true + type: string + x-enum-varnames: + - ADMIN + UserTeamTeamType: + default: team + description: User team team type + enum: + - team + example: team + type: string + x-enum-varnames: + - TEAM + UserTeamType: + default: team_memberships + description: Team membership type + enum: + - team_memberships + example: team_memberships + type: string + x-enum-varnames: + - TEAM_MEMBERSHIPS + UserTeamUpdate: + description: A user's relationship with a team + properties: + attributes: + $ref: "#/components/schemas/UserTeamAttributes" + type: + $ref: "#/components/schemas/UserTeamType" + required: + - type + type: object + UserTeamUpdateRequest: + description: Team membership request + properties: + data: + $ref: "#/components/schemas/UserTeamUpdate" + required: + - data + type: object + UserTeamUserType: + default: users + description: User team user type + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + UserTeamsResponse: + description: Team memberships response + properties: + data: + description: Team memberships response data + items: + $ref: "#/components/schemas/UserTeam" + type: array + included: + description: Resources related to the team memberships + items: + $ref: "#/components/schemas/UserTeamIncluded" + type: array + links: + $ref: "#/components/schemas/TeamsResponseLinks" + meta: + $ref: "#/components/schemas/TeamsResponseMeta" + type: object + UserUpdateAttributes: + description: Attributes of the edited user. + properties: + disabled: + description: |- + When set to `true`, the user is deactivated and can no longer log in. + When `false`, the user is active. + type: boolean + email: + description: |- + The email address of the user, used for login and notifications. + Must be a valid email format. + type: string + name: + description: |- + The full display name of the user as shown in the Datadog UI. + Maximum 55 characters, cannot contain `<` or `>`. + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true + type: string + type: object + UserUpdateData: + description: Object to update a user. + properties: + attributes: + $ref: "#/components/schemas/UserUpdateAttributes" + id: + description: ID of the user. + example: "00000000-0000-feed-0000-000000000000" + type: string + type: + $ref: "#/components/schemas/UsersType" + required: + - attributes + - type + - id + type: object + UserUpdateRequest: + description: Update a user. + properties: + data: + $ref: "#/components/schemas/UserUpdateData" + required: + - data + type: object + UsersRelationship: + description: Relationship to users. + properties: + data: + description: Relationships to user objects. + example: [] + items: + $ref: "#/components/schemas/UserRelationshipData" + type: array + required: + - data + type: object + UsersResponse: + description: Response containing information about multiple users. + properties: + data: + description: Array of returned users. + items: + $ref: "#/components/schemas/User" + type: array + included: + description: Array of objects related to the users. + items: + $ref: "#/components/schemas/UserResponseIncludedItem" + type: array + meta: + $ref: "#/components/schemas/ResponseMetaAttributes" + readOnly: true + type: object + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + V2Event: + description: An event object. + properties: + attributes: + $ref: "#/components/schemas/V2EventAttributes" + id: + description: The event's ID. + example: "" + type: string + type: + description: Entity type. + example: "event" + type: string + type: object + V2EventAggregationKey: + description: Aggregation key of the event. + example: "aggregation-key" + type: string + V2EventAttributes: + description: Event attributes. + properties: + attributes: + $ref: "#/components/schemas/V2EventAttributesAttributes" + message: + description: Free-form text associated with the event. + example: "The event message" + type: string + tags: + description: A list of tags associated with the event. + example: ["env:api_client_test"] + items: + description: A tag. + type: string + type: array + timestamp: + description: Timestamp when the event occurred. + example: "2017-01-15T01:30:15.010000Z" + type: string + type: object + V2EventAttributesAttributes: + description: JSON object for category-specific attributes. + oneOf: + - $ref: "#/components/schemas/ChangeEventAttributes" + - $ref: "#/components/schemas/AlertEventAttributes" + V2EventResponse: + description: Get an event response. + properties: + data: + $ref: "#/components/schemas/V2Event" + type: object + V2EventService: + description: Service that triggered the event. + example: "service-name" + type: string + V2EventTimestamp: + description: POSIX timestamp of the event. + example: 175019386627 + format: int64 + type: integer + V2EventTitle: + description: The title of the event. + example: "The event title" + type: string + ValidateAPIKeyResponse: + description: Response object for the API and application key validation status check. + properties: + status: + $ref: "#/components/schemas/ValidateAPIKeyStatus" + required: + - status + type: object + ValidateAPIKeyStatus: + description: Status of the validation. Always `ok` when both the API key and the application key are valid. + enum: + - ok + example: ok + type: string + x-enum-varnames: + - OK + ValidateV2Attributes: + description: Attributes of the API key validation response. + properties: + api_key_id: + description: The UUID of the API key. + example: "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6" + type: string + api_key_scopes: + description: List of scope names associated with the API key. + example: + - "remote_config_read" + items: + type: string + type: array + valid: + description: Whether the API key is valid. + example: true + type: boolean + required: + - valid + - api_key_scopes + - api_key_id + type: object + ValidateV2Data: + description: Data object containing the API key validation result. + properties: + attributes: + $ref: "#/components/schemas/ValidateV2Attributes" + id: + description: The UUID of the organization associated with the API key. + example: "550e8400-e29b-41d4-a716-446655440000" + type: string + type: + $ref: "#/components/schemas/ValidateV2Type" + required: + - id + - type + - attributes + type: object + ValidateV2Response: + description: Response for the API key validation endpoint. + properties: + data: + $ref: "#/components/schemas/ValidateV2Data" + required: + - data + type: object + ValidateV2Type: + description: Resource type for the API key validation response. + enum: + - validate_v2 + example: validate_v2 + type: string + x-enum-varnames: + - ValidateV2 + ValidationError: + description: Represents a single validation error, including a human-readable title and metadata. + properties: + meta: + $ref: "#/components/schemas/ValidationErrorMeta" + title: + description: A short, human-readable summary of the error. + example: Field 'region' is required + type: string + required: + - title + - meta + type: object + ValidationErrorMeta: + description: Describes additional metadata for validation errors, including field names and error messages. + properties: + field: + description: The field name that caused the error. + example: region + type: string + id: + description: The ID of the component in which the error occurred. + example: datadog-agent-source + type: string + message: + description: The detailed error message. + example: Field 'region' is required + type: string + required: + - message + type: object + ValidationResponse: + description: Response containing validation errors. + example: + errors: + - meta: + field: "region" + id: "datadog-agent-source" + message: "Field 'region' is required" + title: "Field 'region' is required" + properties: + errors: + description: The `ValidationResponse` `errors`. + items: + $ref: "#/components/schemas/ValidationError" + type: array + type: object + ValueType: + description: The type of values for the feature flag variants. + enum: + - BOOLEAN + - INTEGER + - NUMERIC + - STRING + - JSON + example: "BOOLEAN" + type: string + x-enum-varnames: + - BOOLEAN + - INTEGER + - NUMERIC + - STRING + - JSON + Variant: + description: A variant of a feature flag. + properties: + created_at: + description: The timestamp when the variant was created. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + id: + description: The unique identifier of the variant. + example: "550e8400-e29b-41d4-a716-446655440002" + format: uuid + type: string + key: + description: The unique key of the variant. + example: "variant-abc123" + type: string + name: + description: The name of the variant. + example: "Variant ABC123" + type: string + updated_at: + description: The timestamp when the variant was last updated. + example: "2023-01-01T00:00:00Z" + format: date-time + type: string + value: + description: The value of the variant as a string. + example: "true" + type: string + required: + - id + - key + - name + - value + type: object + VariantWeight: + description: Variant weight details. + properties: + created_at: + description: The timestamp when the variant weight was created. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + id: + description: Unique identifier of the variant weight assignment. + example: "59061199-e2ff-46e9-8b40-2193e3b21687" + format: uuid + type: string + updated_at: + description: The timestamp when the variant weight was last updated. + example: "2024-01-01T12:00:00Z" + format: date-time + type: string + value: + description: The percentage weight for the variant. + example: 50 + format: double + type: number + variant: + $ref: "#/components/schemas/Variant" + variant_id: + description: The variant ID. + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + required: + - variant_id + - value + type: object + VariantWeightRequest: + description: Variant weight request payload. + properties: + value: + description: The percentage weight for this variant. + example: 50 + format: double + type: number + variant_id: + description: The variant ID to assign weight to. + example: "550e8400-e29b-41d4-a716-446655440001" + format: uuid + type: string + variant_key: + description: The variant key to assign weight to. + example: "control" + type: string + required: + - value + type: object + Version: + description: Version of the notification rule. It is updated when the rule is modified. + example: 1 + format: int64 + type: integer + VersionHistoryUpdate: + description: A change in a rule version. + properties: + change: + description: The new value of the field. + example: cloud_provider:aws + type: string + field: + description: The field that was changed. + example: Tags + type: string + type: + $ref: "#/components/schemas/VersionHistoryUpdateType" + type: object + VersionHistoryUpdateType: + description: The type of change. + enum: + - create + - update + - delete + type: string + x-enum-varnames: + - CREATE + - UPDATE + - DELETE + ViewershipHistorySessionArray: + description: A list of RUM replay sessions from a user's viewership history. + properties: + data: + description: Array of viewership history session data objects. + items: + $ref: "#/components/schemas/ViewershipHistorySessionData" + type: array + required: + - data + type: object + ViewershipHistorySessionData: + description: Data object representing a session in the viewership history, including its identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/ViewershipHistorySessionDataAttributes" + id: + description: Unique identifier of the RUM replay session. + type: string + type: + $ref: "#/components/schemas/ViewershipHistorySessionDataType" + required: + - type + type: object + ViewershipHistorySessionDataAttributes: + description: Attributes of a viewership history session entry, capturing when it was last watched and the associated event data. + properties: + event_id: + description: Unique identifier of the RUM event associated with the watched session. + type: string + last_watched_at: + description: Timestamp when the session was last watched by the user. + example: "2026-01-13T17:15:53.208340Z" + format: date-time + type: string + session_event: + additionalProperties: {} + description: Raw event data associated with the replay session. + type: object + track: + description: Replay track identifier indicating which recording track the session belongs to. + type: string + required: + - last_watched_at + type: object + ViewershipHistorySessionDataType: + default: rum_replay_session + description: Rum replay session resource type. + enum: + - rum_replay_session + example: rum_replay_session + type: string + x-enum-varnames: + - RUM_REPLAY_SESSION + VirusTotalAPIKey: + description: The definition of the `VirusTotalAPIKey` object. + properties: + api_key: + description: The `VirusTotalAPIKey` `api_key`. + example: "" + type: string + type: + $ref: "#/components/schemas/VirusTotalAPIKeyType" + required: + - type + - api_key + type: object + VirusTotalAPIKeyType: + description: The definition of the `VirusTotalAPIKey` object. + enum: + - VirusTotalAPIKey + example: VirusTotalAPIKey + type: string + x-enum-varnames: + - VIRUSTOTALAPIKEY + VirusTotalAPIKeyUpdate: + description: The definition of the `VirusTotalAPIKey` object. + properties: + api_key: + description: The `VirusTotalAPIKeyUpdate` `api_key`. + type: string + type: + $ref: "#/components/schemas/VirusTotalAPIKeyType" + required: + - type + type: object + VirusTotalCredentials: + description: The definition of the `VirusTotalCredentials` object. + oneOf: + - $ref: "#/components/schemas/VirusTotalAPIKey" + VirusTotalCredentialsUpdate: + description: The definition of the `VirusTotalCredentialsUpdate` object. + oneOf: + - $ref: "#/components/schemas/VirusTotalAPIKeyUpdate" + VirusTotalIntegration: + description: The definition of the `VirusTotalIntegration` object. + properties: + credentials: + $ref: "#/components/schemas/VirusTotalCredentials" + type: + $ref: "#/components/schemas/VirusTotalIntegrationType" + required: + - type + - credentials + type: object + VirusTotalIntegrationType: + description: The definition of the `VirusTotalIntegrationType` object. + enum: + - VirusTotal + example: VirusTotal + type: string + x-enum-varnames: + - VIRUSTOTAL + VirusTotalIntegrationUpdate: + description: The definition of the `VirusTotalIntegrationUpdate` object. + properties: + credentials: + $ref: "#/components/schemas/VirusTotalCredentialsUpdate" + type: + $ref: "#/components/schemas/VirusTotalIntegrationType" + required: + - type + type: object + VulnerabilitiesType: + description: The JSON:API type. + enum: + - vulnerabilities + example: vulnerabilities + type: string + x-enum-varnames: + - VULNERABILITIES + Vulnerability: + description: A single vulnerability + properties: + attributes: + $ref: "#/components/schemas/VulnerabilityAttributes" + id: + description: The unique ID for this vulnerability. + example: 3ecdfea798f2ce8f6e964805a344945f + type: string + relationships: + $ref: "#/components/schemas/VulnerabilityRelationships" + type: + $ref: "#/components/schemas/VulnerabilitiesType" + required: + - id + - type + - attributes + - relationships + type: object + VulnerabilityAdvisory: + description: Advisory associated with the vulnerability. + properties: + id: + description: Vulnerability advisory ID. + example: TRIVY-CVE-2023-0615 + type: string + last_modification_date: + description: Vulnerability advisory last modification date. + example: 2024-09-19 21:23:08+00:00 + type: string + publish_date: + description: Vulnerability advisory publish date. + example: 2024-09-19 21:23:08+00:00 + type: string + required: + - id + type: object + VulnerabilityAttributes: + description: The JSON:API attributes of the vulnerability. + properties: + advisory: + $ref: "#/components/schemas/VulnerabilityAdvisory" + advisory_id: + description: Vulnerability advisory ID. + example: TRIVY-CVE-2023-0615 + type: string + code_location: + $ref: "#/components/schemas/CodeLocation" + cve_list: + description: Vulnerability CVE list. + example: + - CVE-2023-0615 + items: + description: A CVE identifier associated with the vulnerability. + example: CVE-2023-0615 + type: string + type: array + cvss: + $ref: "#/components/schemas/VulnerabilityCvss" + dependency_locations: + $ref: "#/components/schemas/VulnerabilityDependencyLocations" + description: + description: Vulnerability description. + example: "LDAP Injection is a security vulnerability that occurs when untrusted user input is improperly handled and directly incorporated into LDAP queries without appropriate sanitization or validation. This vulnerability enables attackers to manipulate LDAP queries and potentially gain unauthorized access, modify data, or extract sensitive information from the directory server. By exploiting the LDAP injection vulnerability, attackers can execute malicious commands, bypass authentication mechanisms, and perform unauthorized actions within the directory service." + type: string + ecosystem: + $ref: "#/components/schemas/VulnerabilityEcosystem" + exposure_time: + description: Vulnerability exposure time in seconds. + example: 5618604 + format: int64 + type: integer + first_detection: + description: "First detection of the vulnerability in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format" + example: 2024-09-19 21:23:08+00:00 + type: string + fix_available: + description: Whether the vulnerability has a remediation or not. + example: false + type: boolean + language: + description: Vulnerability language. + example: ubuntu + type: string + last_detection: + description: "Last detection of the vulnerability in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format" + example: 2024-09-01 21:23:08+00:00 + type: string + library: + $ref: "#/components/schemas/Library" + origin: + description: Vulnerability origin. + example: + - agentless-scanner + items: + description: The detection origin of the vulnerability (for example, the scanner type). + example: agentless-scanner + type: string + type: array + remediations: + description: List of remediations. + items: + $ref: "#/components/schemas/Remediation" + type: array + repo_digests: + description: Vulnerability `repo_digest` list (when the vulnerability is related to `Image` asset). + items: + description: A container image repository digest identifying the affected image. + example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 + type: string + type: array + risks: + $ref: "#/components/schemas/VulnerabilityRisks" + running_kernel: + description: True if the vulnerability affects a package in the host’s running kernel, false if it affects a non-running kernel, and omit if it is not kernel-related. + example: true + type: boolean + status: + $ref: "#/components/schemas/VulnerabilityStatus" + title: + description: Vulnerability title. + example: "LDAP Injection" + type: string + tool: + $ref: "#/components/schemas/VulnerabilityTool" + type: + $ref: "#/components/schemas/VulnerabilityType" + required: + - type + - cvss + - status + - tool + - title + - description + - cve_list + - risks + - language + - first_detection + - last_detection + - exposure_time + - remediations + - fix_available + - origin + type: object + VulnerabilityCvss: + description: Vulnerability severities. + properties: + base: + $ref: "#/components/schemas/CVSS" + datadog: + $ref: "#/components/schemas/CVSS" + required: + - base + - datadog + type: object + VulnerabilityDependencyLocations: + description: Static library vulnerability location. + properties: + block: + $ref: "#/components/schemas/DependencyLocation" + name: + $ref: "#/components/schemas/DependencyLocation" + version: + $ref: "#/components/schemas/DependencyLocation" + required: + - block + type: object + VulnerabilityEcosystem: + description: The related vulnerability asset ecosystem. + enum: + - PyPI + - Maven + - NuGet + - Npm + - RubyGems + - Go + - Packagist + - Deb + - Rpm + - Apk + - Windows + - Generic + - MacOs + - Oci + - BottleRocket + - None + type: string + x-enum-varnames: + - PYPI + - MAVEN + - NUGET + - NPM + - RUBY_GEMS + - GO + - PACKAGIST + - DEB + - RPM + - APK + - WINDOWS + - GENERIC + - MAC_OS + - OCI + - BOTTLE_ROCKET + - NONE + VulnerabilityRelationships: + description: Related entities object. + properties: + affects: + $ref: "#/components/schemas/VulnerabilityRelationshipsAffects" + required: + - affects + type: object + VulnerabilityRelationshipsAffects: + description: Relationship type. + properties: + data: + $ref: "#/components/schemas/VulnerabilityRelationshipsAffectsData" + required: + - data + type: object + VulnerabilityRelationshipsAffectsData: + description: Asset affected by this vulnerability. + properties: + id: + description: The unique ID for this related asset. + example: Repository|github.com/DataDog/datadog-agent.git + type: string + type: + $ref: "#/components/schemas/AssetEntityType" + required: + - id + - type + type: object + VulnerabilityRisks: + description: Vulnerability risks. + properties: + epss: + $ref: "#/components/schemas/EPSS" + exploit_available: + description: Vulnerability public exploit availability. + example: false + type: boolean + exploit_sources: + description: Vulnerability exploit sources. + example: + - NIST + items: + description: An exploit source reporting this vulnerability. + example: NIST + type: string + type: array + exploitation_probability: + description: Vulnerability exploitation probability. + example: false + type: boolean + poc_exploit_available: + description: Vulnerability POC exploit availability. + example: false + type: boolean + required: + - exploitation_probability + - poc_exploit_available + - exploit_available + - exploit_sources + type: object + VulnerabilitySeverity: + description: The vulnerability severity. + enum: + - Unknown + - None + - Low + - Medium + - High + - Critical + example: Medium + type: string + x-enum-varnames: + - UNKNOWN + - NONE + - LOW + - MEDIUM + - HIGH + - CRITICAL + VulnerabilityStatus: + description: The vulnerability status. + enum: + - Open + - Muted + - Remediated + - InProgress + - AutoClosed + example: Open + type: string + x-enum-varnames: + - OPEN + - MUTED + - REMEDIATED + - INPROGRESS + - AUTOCLOSED + VulnerabilityTool: + description: The vulnerability tool. + enum: + - IAST + - SCA + - Infra + - SAST + example: SCA + type: string + x-enum-varnames: + - IAST + - SCA + - INFRA + - SAST + VulnerabilityType: + description: The vulnerability type. + enum: + - AdminConsoleActive + - CodeInjection + - CommandInjection + - ComponentWithKnownVulnerability + - DangerousWorkflows + - DefaultAppDeployed + - DefaultHtmlEscapeInvalid + - DirectoryListingLeak + - EmailHtmlInjection + - EndOfLife + - HardcodedPassword + - HardcodedSecret + - HeaderInjection + - HstsHeaderMissing + - InsecureAuthProtocol + - InsecureCookie + - InsecureJspLayout + - LdapInjection + - MaliciousPackage + - MandatoryRemediation + - NoHttpOnlyCookie + - NoSameSiteCookie + - NoSqlMongoDbInjection + - PathTraversal + - ReflectionInjection + - RiskyLicense + - SessionRewriting + - SessionRewritting + - SessionTimeout + - SqlInjection + - Ssrf + - StackTraceLeak + - TemplateInjection + - TrustBoundaryViolation + - Unmaintained + - UntrustedDeserialization + - UnvalidatedRedirect + - VerbTampering + - WeakCipher + - WeakHash + - WeakRandomness + - XContentTypeHeaderMissing + - XPathInjection + - Xss + example: WeakCipher + type: string + x-enum-varnames: + - ADMIN_CONSOLE_ACTIVE + - CODE_INJECTION + - COMMAND_INJECTION + - COMPONENT_WITH_KNOWN_VULNERABILITY + - DANGEROUS_WORKFLOWS + - DEFAULT_APP_DEPLOYED + - DEFAULT_HTML_ESCAPE_INVALID + - DIRECTORY_LISTING_LEAK + - EMAIL_HTML_INJECTION + - END_OF_LIFE + - HARDCODED_PASSWORD + - HARDCODED_SECRET + - HEADER_INJECTION + - HSTS_HEADER_MISSING + - INSECURE_AUTH_PROTOCOL + - INSECURE_COOKIE + - INSECURE_JSP_LAYOUT + - LDAP_INJECTION + - MALICIOUS_PACKAGE + - MANDATORY_REMEDIATION + - NO_HTTP_ONLY_COOKIE + - NO_SAME_SITE_COOKIE + - NO_SQL_MONGO_DB_INJECTION + - PATH_TRAVERSAL + - REFLECTION_INJECTION + - RISKY_LICENSE + - SESSION_REWRITING + - SESSION_REWRITTING + - SESSION_TIMEOUT + - SQL_INJECTION + - SSRF + - STACK_TRACE_LEAK + - TEMPLATE_INJECTION + - TRUST_BOUNDARY_VIOLATION + - UNMAINTAINED + - UNTRUSTED_DESERIALIZATION + - UNVALIDATED_REDIRECT + - VERB_TAMPERING + - WEAK_CIPHER + - WEAK_HASH + - WEAK_RANDOMNESS + - X_CONTENT_TYPE_HEADER_MISSING + - X_PATH_INJECTION + - XSS + Watch: + description: A single RUM replay session watch resource returned by create operations. + properties: + data: + $ref: "#/components/schemas/WatchData" + required: + - data + type: object + WatchData: + description: Data object representing a session watch record, including its identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/WatchDataAttributes" + id: + description: Unique identifier of the watch record. + type: string + type: + $ref: "#/components/schemas/WatchDataType" + required: + - type + type: object + WatchDataAttributes: + description: Attributes for recording a session watch event, including the application, event reference, and timestamp. + properties: + application_id: + description: Unique identifier of the RUM application containing the session. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + data_source: + description: Data source type indicating the origin of the session data (e.g., rum or product_analytics). + type: string + event_id: + description: Unique identifier of the RUM event that was watched. + example: 11111111-2222-3333-4444-555555555555 + type: string + timestamp: + description: Timestamp when the session was watched. + example: "2026-01-13T17:15:53.208340Z" + format: date-time + type: string + required: + - application_id + - event_id + - timestamp + type: object + WatchDataType: + default: rum_replay_watch + description: Rum replay watch resource type. + enum: + - rum_replay_watch + example: rum_replay_watch + type: string + x-enum-varnames: + - RUM_REPLAY_WATCH + WatcherArray: + description: A list of users who have watched a RUM replay session. + properties: + data: + description: Array of watcher data objects. + items: + $ref: "#/components/schemas/WatcherData" + type: array + required: + - data + type: object + WatcherData: + description: Data object representing a session watcher, including their identifier, type, and attributes. + properties: + attributes: + $ref: "#/components/schemas/WatcherDataAttributes" + id: + description: Unique identifier of the watcher user. + type: string + type: + $ref: "#/components/schemas/WatcherDataType" + required: + - type + type: object + WatcherDataAttributes: + description: Attributes of a user who has watched a RUM replay session, including contact information and watch statistics. + properties: + handle: + description: Email handle of the user who watched the session. + example: john.doe@example.com + type: string + icon: + description: URL or identifier of the watcher's avatar icon. + type: string + last_watched_at: + description: Timestamp when the watcher last viewed the session. + example: "2026-01-13T17:15:53.208340Z" + format: date-time + type: string + name: + description: Display name of the user who watched the session. + type: string + watch_count: + description: Total number of times the user has watched the session. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + required: + - handle + - last_watched_at + - watch_count + type: object + WatcherDataType: + default: rum_replay_watcher + description: Rum replay watcher resource type. + enum: + - rum_replay_watcher + example: rum_replay_watcher + type: string + x-enum-varnames: + - RUM_REPLAY_WATCHER + WebIntegrationAccountCreateRequest: + description: Payload schema when adding a web integration account. + properties: + data: + $ref: "#/components/schemas/WebIntegrationAccountCreateRequestData" + required: + - data + type: object + WebIntegrationAccountCreateRequestAttributes: + description: Attributes object for creating a web integration account. + properties: + name: + description: A human-readable name for the account. Must be unique among accounts of the same integration. + example: my-databricks-account + type: string + secrets: + $ref: "#/components/schemas/WebIntegrationAccountSecrets" + settings: + $ref: "#/components/schemas/WebIntegrationAccountSettings" + required: + - name + - settings + - secrets + type: object + WebIntegrationAccountCreateRequestData: + description: Data object for creating a web integration account. + properties: + attributes: + $ref: "#/components/schemas/WebIntegrationAccountCreateRequestAttributes" + type: + $ref: "#/components/schemas/WebIntegrationAccountType" + required: + - attributes + - type + type: object + WebIntegrationAccountResponse: + description: The expected response schema when getting a single web integration account. + properties: + data: + $ref: "#/components/schemas/WebIntegrationAccountResponseData" + type: object + WebIntegrationAccountResponseAttributes: + description: Attributes object of a web integration account. Secrets are never returned. + properties: + name: + description: A human-readable name for the account. + example: my-databricks-account + type: string + settings: + $ref: "#/components/schemas/WebIntegrationAccountSettings" + required: + - name + type: object + WebIntegrationAccountResponseData: + description: Data object of a web integration account. + properties: + attributes: + $ref: "#/components/schemas/WebIntegrationAccountResponseAttributes" + id: + description: The unique identifier of the web integration account. + example: "abc123def456" + type: string + type: + $ref: "#/components/schemas/WebIntegrationAccountType" + required: + - attributes + - id + - type + type: object + WebIntegrationAccountSecrets: + additionalProperties: {} + description: |- + Integration-specific secrets. The shape of this object varies by integration. Secrets + are write-only and never returned by the API. + example: + client_secret: my-client-secret + type: object + WebIntegrationAccountSettings: + additionalProperties: {} + description: |- + Integration-specific settings. The shape of this object varies by integration. + example: + workspace_url: https://example.azuredatabricks.net + type: object + WebIntegrationAccountType: + default: Account + description: Account resource type. + enum: + - Account + example: Account + type: string + x-enum-varnames: + - ACCOUNT + WebIntegrationAccountUpdateRequest: + description: Payload schema when updating a web integration account. + properties: + data: + $ref: "#/components/schemas/WebIntegrationAccountUpdateRequestData" + required: + - data + type: object + WebIntegrationAccountUpdateRequestAttributes: + description: Attributes object for updating a web integration account. + properties: + name: + description: A human-readable name for the account. + example: my-databricks-account + type: string + secrets: + $ref: "#/components/schemas/WebIntegrationAccountSecrets" + settings: + $ref: "#/components/schemas/WebIntegrationAccountSettings" + type: object + WebIntegrationAccountUpdateRequestData: + description: Data object for updating a web integration account. + properties: + attributes: + $ref: "#/components/schemas/WebIntegrationAccountUpdateRequestAttributes" + type: + $ref: "#/components/schemas/WebIntegrationAccountType" + required: + - attributes + - type + type: object + WebIntegrationAccountsResponse: + description: The expected response schema when listing web integration accounts. + properties: + data: + description: The JSON:API data array. + items: + $ref: "#/components/schemas/WebIntegrationAccountResponseData" + type: array + type: object + WebhooksAuthMethodAttributes: + description: Attributes of a webhooks auth method. + properties: + protocol: + $ref: "#/components/schemas/WebhooksAuthMethodProtocol" + type: object + WebhooksAuthMethodProtocol: + description: Authentication protocol used by the auth method. + enum: + - oauth2-client-credentials + example: oauth2-client-credentials + type: string + x-enum-varnames: + - OAUTH2_CLIENT_CREDENTIALS + WebhooksAuthMethodRelationships: + description: Relationships of a webhooks auth method to its protocol-specific resource. + properties: + oauth2-client-credentials: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsRelationship" + type: object + WebhooksAuthMethodResponseData: + description: Webhooks auth method data from a response. + properties: + attributes: + $ref: "#/components/schemas/WebhooksAuthMethodAttributes" + id: + description: The ID of the auth method. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + type: string + relationships: + $ref: "#/components/schemas/WebhooksAuthMethodRelationships" + type: + $ref: "#/components/schemas/WebhooksAuthMethodType" + required: + - id + - type + - attributes + type: object + WebhooksAuthMethodType: + default: webhooks-auth-method + description: Webhooks auth method resource type. + enum: + - webhooks-auth-method + example: webhooks-auth-method + type: string + x-enum-varnames: + - WEBHOOKS_AUTH_METHOD + WebhooksAuthMethodsResponse: + description: Response containing a list of webhooks auth methods. + properties: + data: + description: An array of webhooks auth methods. + items: + $ref: "#/components/schemas/WebhooksAuthMethodResponseData" + type: array + included: + description: Resources related to the auth methods, included when requested via the `include` query parameter. + items: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsResponseData" + type: array + required: + - data + type: object + WebhooksOAuth2ClientCredentialsCreateAttributes: + description: OAuth2 client credentials attributes for a create request. + properties: + access_token_url: + description: URL of the OAuth2 access token endpoint. + example: "https://example.com/oauth/token" + maxLength: 2048 + minLength: 1 + type: string + audience: + description: The intended audience for the OAuth2 access token. + example: "https://api.example.com" + maxLength: 2048 + minLength: 1 + nullable: true + type: string + client_id: + description: The OAuth2 client ID issued by the authorization server. + example: "my-client-id" + maxLength: 2048 + minLength: 1 + type: string + client_secret: + description: |- + The OAuth2 client secret issued by the authorization server. + Write-only; never returned by the API. + example: "my-client-secret" + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this auth method. Must be unique within your organization. + example: "my-oauth2-auth" + maxLength: 100 + minLength: 1 + type: string + scope: + description: Space-separated list of OAuth2 scopes to request. + example: "read:webhooks write:webhooks" + maxLength: 2048 + minLength: 1 + nullable: true + type: string + required: + - name + - access_token_url + - client_id + - client_secret + type: object + WebhooksOAuth2ClientCredentialsCreateData: + description: OAuth2 client credentials data for a create request. + properties: + attributes: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsCreateAttributes" + type: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsType" + required: + - type + - attributes + type: object + WebhooksOAuth2ClientCredentialsCreateRequest: + description: Create request for an OAuth2 client credentials auth method. + properties: + data: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsCreateData" + required: + - data + type: object + WebhooksOAuth2ClientCredentialsRelationship: + description: Relationship pointing to the OAuth2 client credentials resource for this auth method. + properties: + data: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsRelationshipData" + type: object + WebhooksOAuth2ClientCredentialsRelationshipData: + description: Relationship data referencing an OAuth2 client credentials resource. + properties: + id: + description: The ID of the OAuth2 client credentials resource. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + type: string + type: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsType" + type: object + WebhooksOAuth2ClientCredentialsResponse: + description: Response containing an OAuth2 client credentials auth method. + properties: + data: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsResponseData" + required: + - data + type: object + WebhooksOAuth2ClientCredentialsResponseAttributes: + description: OAuth2 client credentials attributes returned by the API. The `client_secret` is never echoed. + properties: + access_token_url: + description: URL of the OAuth2 access token endpoint. + example: "https://example.com/oauth/token" + type: string + audience: + description: The intended audience for the OAuth2 access token. + example: "https://api.example.com" + nullable: true + type: string + client_id: + description: The OAuth2 client ID issued by the authorization server. + example: "my-client-id" + type: string + name: + description: Human-readable name for this auth method. + example: "my-oauth2-auth" + type: string + protocol: + $ref: "#/components/schemas/WebhooksAuthMethodProtocol" + scope: + description: Space-separated list of OAuth2 scopes to request. + example: "read:webhooks write:webhooks" + nullable: true + type: string + type: object + WebhooksOAuth2ClientCredentialsResponseData: + description: OAuth2 client credentials data from a response. + properties: + attributes: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsResponseAttributes" + id: + description: The ID of the OAuth2 client credentials auth method. + example: "596da4af-0563-4097-90ff-07230c3f9db3" + type: string + type: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsType" + required: + - id + - type + - attributes + type: object + WebhooksOAuth2ClientCredentialsType: + default: webhooks-auth-method-oauth2-client-credentials + description: OAuth2 client credentials resource type. + enum: + - webhooks-auth-method-oauth2-client-credentials + example: webhooks-auth-method-oauth2-client-credentials + type: string + x-enum-varnames: + - WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS + WebhooksOAuth2ClientCredentialsUpdateAttributes: + description: OAuth2 client credentials attributes for an update request. + properties: + access_token_url: + description: URL of the OAuth2 access token endpoint. + example: "https://example.com/oauth/token" + maxLength: 2048 + minLength: 1 + type: string + audience: + description: The intended audience for the OAuth2 access token. + example: "https://api.example.com" + maxLength: 2048 + minLength: 1 + nullable: true + type: string + client_id: + description: The OAuth2 client ID issued by the authorization server. + example: "my-client-id" + maxLength: 2048 + minLength: 1 + type: string + client_secret: + description: |- + The OAuth2 client secret issued by the authorization server. + Write-only; never returned by the API. + example: "my-client-secret" + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this auth method. + example: "my-oauth2-auth" + maxLength: 100 + minLength: 1 + type: string + scope: + description: Space-separated list of OAuth2 scopes to request. + example: "read:webhooks write:webhooks" + maxLength: 2048 + minLength: 1 + nullable: true + type: string + type: object + WebhooksOAuth2ClientCredentialsUpdateData: + description: OAuth2 client credentials data for an update request. + properties: + attributes: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsUpdateAttributes" + type: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsType" + required: + - type + - attributes + type: object + WebhooksOAuth2ClientCredentialsUpdateRequest: + description: Update request for an OAuth2 client credentials auth method. + properties: + data: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsUpdateData" + required: + - data + type: object + Weekday: + description: A day of the week. + enum: + - monday + - tuesday + - wednesday + - thursday + - friday + - saturday + - sunday + type: string + x-enum-varnames: + - MONDAY + - TUESDAY + - WEDNESDAY + - THURSDAY + - FRIDAY + - SATURDAY + - SUNDAY + WidgetAnnotationIds: + description: List of annotation IDs displayed on a widget. + example: + - "00000000-0000-0000-0000-000000000000" + items: + description: Annotation ID. + format: uuid + type: string + type: array + WidgetAnnotationsMap: + additionalProperties: + $ref: "#/components/schemas/WidgetAnnotationIds" + description: Map from widget ID to the list of annotation IDs displayed on that widget. + example: + "1234567890": + - "00000000-0000-0000-0000-000000000000" + type: object + WidgetAttributes: + description: Attributes of a widget resource. + properties: + created_at: + description: ISO 8601 timestamp of when the widget was created. + example: "2024-01-15T00:00:00.000Z" + type: string + definition: + $ref: "#/components/schemas/WidgetDefinition" + is_favorited: + description: |- + Whether the current user has favorited this widget. Populated on get, + batch_get, update, and search responses; create responses always return + `false` because a widget can only be favorited after it exists. + Favoriting itself is performed through the shared favorites API, not + this service. + example: false + type: boolean + modified_at: + description: ISO 8601 timestamp of when the widget was last modified. + example: "2024-01-15T00:00:00.000Z" + type: string + tags: + description: User-defined tags for organizing widgets. + example: + - "team:my-team" + items: + description: A single user-defined tag. + type: string + nullable: true + type: array + required: + - definition + - tags + - is_favorited + - created_at + - modified_at + type: object + WidgetData: + description: A widget resource object. + properties: + attributes: + $ref: "#/components/schemas/WidgetAttributes" + id: + description: The unique identifier of the widget. + example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" + type: string + relationships: + $ref: "#/components/schemas/WidgetRelationships" + type: + description: Widgets resource type. + example: widgets + type: string + required: + - id + - type + - attributes + type: object + WidgetDefinition: + additionalProperties: {} + description: The definition of a widget, including its type and configuration. + properties: + title: + description: The display title of the widget. + example: My Widget + maxLength: 100 + minLength: 1 + type: string + type: + $ref: "#/components/schemas/WidgetType" + required: + - type + - title + type: object + WidgetExperienceType: + description: Widget experience types that differentiate between the products using the specific widget. + enum: + - ccm_reports + - logs_reports + - csv_reports + - product_analytics + example: ccm_reports + type: string + x-enum-varnames: + - CCM_REPORTS + - LOGS_REPORTS + - CSV_REPORTS + - PRODUCT_ANALYTICS + WidgetIncludedUser: + description: A user resource included in the response. + properties: + attributes: + $ref: "#/components/schemas/WidgetIncludedUserAttributes" + id: + description: The unique identifier of the user. + example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" + type: string + type: + description: Users resource type. + example: users + type: string + required: + - id + - type + type: object + WidgetIncludedUserAttributes: + description: Attributes of an included user resource. + properties: + handle: + description: The email handle of the user. + example: "john.doe@example.com" + type: string + name: + description: The display name of the user. + example: "John Doe" + nullable: true + type: string + type: object + WidgetListResponse: + description: Response containing a list of widgets. + properties: + data: + description: List of widget resources. + items: + $ref: "#/components/schemas/WidgetData" + type: array + included: + description: Array of user resources related to the widgets. + items: + $ref: "#/components/schemas/WidgetIncludedUser" + type: array + meta: + $ref: "#/components/schemas/WidgetSearchMeta" + required: + - data + type: object + WidgetLiveSpan: + description: The available timeframes depend on the widget you are using. + enum: + - 1m + - 5m + - 10m + - 15m + - 30m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + - 6mo + - 1y + - alert + example: 5m + type: string + x-enum-varnames: + - PAST_ONE_MINUTE + - PAST_FIVE_MINUTES + - PAST_TEN_MINUTES + - PAST_FIFTEEN_MINUTES + - PAST_THIRTY_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + - PAST_SIX_MONTHS + - PAST_ONE_YEAR + - ALERT + WidgetRelationshipData: + description: Relationship data referencing a user resource. + properties: + id: + description: The unique identifier of the user. + example: "a1b2c3d4-e5f6-7890-abcd-ef1234567890" + type: string + type: + description: Users resource type. + example: users + type: string + required: + - id + - type + type: object + WidgetRelationshipItem: + description: A JSON:API relationship to a user. + properties: + data: + $ref: "#/components/schemas/WidgetRelationshipData" + type: object + WidgetRelationships: + description: Relationships of the widget resource. + properties: + created_by: + $ref: "#/components/schemas/WidgetRelationshipItem" + description: The user who created the widget. + modified_by: + $ref: "#/components/schemas/WidgetRelationshipItem" + description: The user who last modified the widget. + type: object + WidgetResponse: + description: Response containing a single widget. + properties: + data: + $ref: "#/components/schemas/WidgetData" + included: + description: Array of user resources related to the widget. + items: + $ref: "#/components/schemas/WidgetIncludedUser" + type: array + required: + - data + type: object + WidgetSearchMeta: + description: Metadata about the search results. + properties: + created_by_anyone_total: + description: Total number of widgets created by anyone. + format: int64 + type: integer + created_by_you_total: + description: Total number of widgets created by the current user. + format: int64 + type: integer + favorited_by_you_total: + description: Total number of widgets favorited by the current user. + format: int64 + type: integer + filtered_total: + description: Total number of widgets matching the current filter criteria. + format: int64 + type: integer + type: object + WidgetType: + description: |- + Widget types that are allowed to be stored as individual records. + This is not a complete list of dashboard and notebook widget types. + enum: + - bar_chart + - change + - cloud_cost_summary + - cohort + - funnel + - geomap + - list_stream + - query_table + - query_value + - retention_curve + - sankey + - sunburst + - timeseries + - toplist + - treemap + example: bar_chart + type: string + x-enum-varnames: + - BAR_CHART + - CHANGE + - CLOUD_COST_SUMMARY + - COHORT + - FUNNEL + - GEOMAP + - LIST_STREAM + - QUERY_TABLE + - QUERY_VALUE + - RETENTION_CURVE + - SANKEY + - SUNBURST + - TIMESERIES + - TOPLIST + - TREEMAP + WorkflowData: + description: Data related to the workflow. + properties: + attributes: + $ref: "#/components/schemas/WorkflowDataAttributes" + id: + description: The workflow identifier + readOnly: true + type: string + relationships: + $ref: "#/components/schemas/WorkflowDataRelationships" + type: + $ref: "#/components/schemas/WorkflowDataType" + required: + - type + - attributes + type: object + WorkflowDataAttributes: + description: The definition of `WorkflowDataAttributes` object. + properties: + createdAt: + description: When the workflow was created. + format: date-time + readOnly: true + type: string + description: + description: Description of the workflow. + type: string + name: + description: Name of the workflow. + example: "" + type: string + published: + description: Set the workflow to published or unpublished. Workflows in an unpublished state will only be executable via manual runs. Automatic triggers such as Schedule will not execute the workflow until it is published. + type: boolean + spec: + $ref: "#/components/schemas/Spec" + tags: + description: Tags of the workflow. + items: + description: A tag string in `key:value` format. + type: string + type: array + updatedAt: + description: When the workflow was last updated. + format: date-time + readOnly: true + type: string + webhookSecret: + description: If a Webhook trigger is defined on this workflow, a webhookSecret is required and should be provided here. + type: string + writeOnly: true + required: + - name + - spec + type: object + WorkflowDataRelationships: + description: The definition of `WorkflowDataRelationships` object. + properties: + creator: + $ref: "#/components/schemas/WorkflowUserRelationship" + owner: + $ref: "#/components/schemas/WorkflowUserRelationship" + readOnly: true + type: object + WorkflowDataType: + description: The definition of `WorkflowDataType` object. + enum: + - workflows + example: workflows + type: string + x-enum-varnames: + - WORKFLOWS + WorkflowDataUpdate: + description: Data related to the workflow being updated. + properties: + attributes: + $ref: "#/components/schemas/WorkflowDataUpdateAttributes" + id: + description: The workflow identifier + type: string + relationships: + $ref: "#/components/schemas/WorkflowDataRelationships" + type: + $ref: "#/components/schemas/WorkflowDataType" + required: + - type + - attributes + type: object + WorkflowDataUpdateAttributes: + description: The definition of `WorkflowDataUpdateAttributes` object. + properties: + createdAt: + description: When the workflow was created. + format: date-time + readOnly: true + type: string + description: + description: Description of the workflow. + type: string + name: + description: Name of the workflow. + type: string + published: + description: Set the workflow to published or unpublished. Workflows in an unpublished state will only be executable via manual runs. Automatic triggers such as Schedule will not execute the workflow until it is published. + type: boolean + spec: + $ref: "#/components/schemas/Spec" + tags: + description: Tags of the workflow. + items: + description: A tag string in `key:value` format. + type: string + type: array + updatedAt: + description: When the workflow was last updated. + format: date-time + readOnly: true + type: string + webhookSecret: + description: If a Webhook trigger is defined on this workflow, a webhookSecret is required and should be provided here. + type: string + writeOnly: true + type: object + WorkflowInstanceCreateMeta: + description: Additional information for creating a workflow instance. + properties: + payload: + additionalProperties: {} + description: The input parameters to the workflow. + type: object + type: object + WorkflowInstanceCreateRequest: + description: Request used to create a workflow instance. + properties: + meta: + $ref: "#/components/schemas/WorkflowInstanceCreateMeta" + type: object + WorkflowInstanceCreateResponse: + additionalProperties: {} + description: Response returned upon successful workflow instance creation. + properties: + data: + $ref: "#/components/schemas/WorkflowInstanceCreateResponseData" + type: object + WorkflowInstanceCreateResponseData: + additionalProperties: {} + description: Data about the created workflow instance. + properties: + id: + description: The ID of the workflow execution. It can be used to fetch the execution status. + type: string + type: object + WorkflowInstanceListItem: + additionalProperties: {} + description: An item in the workflow instances list. + properties: + id: + description: The ID of the workflow instance + type: string + type: object + WorkflowListInstancesResponse: + additionalProperties: {} + description: Response returned when listing workflow instances. + properties: + data: + description: A list of workflow instances. + items: + $ref: "#/components/schemas/WorkflowInstanceListItem" + type: array + meta: + $ref: "#/components/schemas/WorkflowListInstancesResponseMeta" + type: object + WorkflowListInstancesResponseMeta: + additionalProperties: {} + description: Metadata about the instances list + properties: + page: + $ref: "#/components/schemas/WorkflowListInstancesResponseMetaPage" + type: object + WorkflowListInstancesResponseMetaPage: + additionalProperties: {} + description: Page information for the list instances response. + properties: + totalCount: + description: The total count of items. + format: int64 + type: integer + type: object + WorkflowListItem: + description: A workflow returned by the list workflows endpoint. + properties: + attributes: + $ref: "#/components/schemas/WorkflowListItemAttributes" + id: + description: The workflow identifier. + readOnly: true + type: string + relationships: + $ref: "#/components/schemas/WorkflowDataRelationships" + type: + $ref: "#/components/schemas/WorkflowDataType" + required: + - type + - attributes + type: object + WorkflowListItemAttributes: + description: Attributes of a workflow returned in a list response. + properties: + createdAt: + description: When the workflow was created. + format: date-time + readOnly: true + type: string + description: + description: Description of the workflow. + type: string + name: + description: Name of the workflow. + example: "My Workflow" + type: string + published: + description: Whether the workflow is published. Unpublished workflows can only be run manually. Automatic triggers such as Schedule do not fire until the workflow is published. + type: boolean + spec: + $ref: "#/components/schemas/Spec" + nullable: true + tags: + description: Tags of the workflow. + items: + description: A tag string in `key:value` format. + type: string + type: array + updatedAt: + description: When the workflow was last updated. + format: date-time + readOnly: true + type: string + required: + - name + type: object + WorkflowTriggerWrapper: + description: "Schema for a Workflow-based trigger." + properties: + startStepNames: + $ref: "#/components/schemas/StartStepNames" + workflowTrigger: + description: "Trigger a workflow from the Datadog UI. When present, this must be the workflow's only trigger." + type: object + required: + - workflowTrigger + type: object + WorkflowUserRelationship: + description: The definition of `WorkflowUserRelationship` object. + properties: + data: + $ref: "#/components/schemas/WorkflowUserRelationshipData" + type: object + WorkflowUserRelationshipData: + description: The definition of `WorkflowUserRelationshipData` object. + properties: + id: + description: The user identifier + example: "" + type: string + type: + $ref: "#/components/schemas/WorkflowUserRelationshipType" + required: + - type + - id + type: object + WorkflowUserRelationshipType: + description: The definition of `WorkflowUserRelationshipType` object. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + WorklflowCancelInstanceResponse: + description: Information about the canceled instance. + properties: + data: + $ref: "#/components/schemas/WorklflowCancelInstanceResponseData" + type: object + WorklflowCancelInstanceResponseData: + description: Data about the canceled instance. + properties: + id: + description: The id of the canceled instance + type: string + type: object + WorklflowGetInstanceResponse: + additionalProperties: {} + description: The state of the given workflow instance. + properties: + data: + $ref: "#/components/schemas/WorklflowGetInstanceResponseData" + type: object + WorklflowGetInstanceResponseData: + additionalProperties: {} + description: The data of the instance response. + properties: + attributes: + $ref: "#/components/schemas/WorklflowGetInstanceResponseDataAttributes" + type: object + WorklflowGetInstanceResponseDataAttributes: + additionalProperties: {} + description: The attributes of the instance response data. + properties: + id: + description: The id of the instance. + type: string + type: object + XRayServicesIncludeAll: + description: Include all services. + properties: + include_all: + description: Include all services. + example: false + type: boolean + required: + - include_all + type: object + XRayServicesIncludeOnly: + description: Include only these services. Defaults to `[]`. + nullable: true + properties: + include_only: + description: Include only these services. + example: + - "AWS/AppSync" + items: + description: An AWS X-Ray service name to include in traces collection. + example: "AWS/AppSync" + type: string + type: array + required: + - include_only + type: object + XRayServicesList: + description: AWS X-Ray services to collect traces from. Defaults to `include_only`. + oneOf: + - $ref: "#/components/schemas/XRayServicesIncludeAll" + - $ref: "#/components/schemas/XRayServicesIncludeOnly" + ZoomConfigurationReference: + description: A reference to a Zoom configuration resource. + nullable: true + properties: + data: + $ref: "#/components/schemas/ZoomConfigurationReferenceData" + required: + - data + type: object + ZoomConfigurationReferenceData: + description: The Zoom configuration relationship data object. + nullable: true + properties: + id: + description: The unique identifier of the Zoom configuration. + example: "00000000-0000-0000-0000-000000000000" + type: string + type: + description: The type of the Zoom configuration. + example: "zoom_configurations" + type: string + required: + - id + - type + type: object + securitySchemes: + AuthZ: + description: This API uses OAuth 2 with the implicit grant flow. + flows: + authorizationCode: + authorizationUrl: /oauth2/v1/authorize + scopes: + apm_api_catalog_read: View API catalog and API definitions. + apm_api_catalog_write: Add, modify, and delete API catalog definitions. + apm_read: Read and query APM and Trace Analytics. + apm_service_catalog_read: View service catalog and service definitions. + apm_service_catalog_write: Add, modify, and delete service catalog definitions when those definitions are maintained by Datadog. + appsec_vm_read: View infrastructure, application code, and library vulnerability findings. + aws_configurations_manage: Manage AWS integration account configurations and related integration settings. + billing_edit: Edit your organization's billing information. + billing_read: View your organization's billing information. + bits_investigations_read: View Bits AI investigations. + bits_investigations_write: Create and manage Bits AI investigations. + cases_read: View Cases. + cases_shared_settings_write: Update shared case management settings. + cases_write: Create and update cases. + ci_visibility_pipelines_write: Create CI Visibility pipeline spans using the API. + ci_visibility_read: View CI Visibility. + cloud_cost_management_read: View Cloud Cost pages and the cloud cost data source in dashboards and notebooks. For more details, see the Cloud Cost Management docs. + cloud_cost_management_write: Configure cloud cost accounts and global customizations. For more details, see the Cloud Cost Management docs. + code_analysis_read: View Code Analysis. + code_coverage_read: View Code Coverage. + continuous_profiler_pgo_read: Read and query Continuous Profiler data for Profile-Guided Optimization (PGO). + coterm_read: Read terminal recordings. + coterm_write: Write terminal recordings. + create_webhooks: Create webhooks integrations. + dashboards_embed_share: Create, modify, and delete shared dashboards with share type 'embed'. + dashboards_invite_share: Create, modify, and delete shared dashboards with share type 'invite'. + dashboards_public_share: Generate public and authenticated links to share dashboards or embeddable graphs externally. + dashboards_read: View dashboards. + dashboards_write: Create and change dashboards. + data_scanner_read: View Data Scanner configurations. + data_scanner_write: Edit Data Scanner configurations. + embeddable_graphs_share: Generate public links to share embeddable graphs externally. + error_tracking_read: Read Error Tracking data. + error_tracking_write: Edit Error Tracking issues. + event_correlation_config_read: View event correlation configurations. + event_correlation_config_write: Create and update event correlation configurations. + events_read: Read Events data. + hosts_read: List hosts and their attributes. + incident_notification_settings_read: View Incident Notification Rule Settings. + incident_notification_settings_write: Configure Incidents Notification Rule settings. + incident_read: View incidents in Datadog. + incident_settings_read: View Incident Settings. + incident_settings_write: Configure Incident Settings. + incident_write: Create, view, and manage incidents in Datadog. + integrations_read: View configured integrations and their settings. + logs_modify_indexes: Modify log indexes, filters, exclusion filters, and configurations. + logs_read_data: Read log data. + logs_read_index_data: Read indexed log data. + manage_integrations: Install, uninstall, and configure integrations. + metrics_read: View custom metrics. + monitors_downtime: Set downtimes to suppress alerts from any monitor in an organization. Mute and unmute monitors. The ability to write monitors is not required to set downtimes. + monitors_read: View monitors. + monitors_write: Edit, delete, and resolve individual monitors. + network_connections_read: Read cloud network connections. + org_connections_read: Read cross organization connections. + org_connections_write: Create, edit, and delete cross organization connections. + org_management: Edit org configurations, including authentication and certain security preferences such as configuring SAML, renaming an org, configuring allowed login methods, creating child orgs, subscribing & unsubscribing from apps in the marketplace, and enabling & disabling Remote Configuration for the entire organization. + security_comments_read: Read comments of vulnerabilities. + security_monitoring_critical_assets_read: Read Critical Assets. + security_monitoring_critical_assets_write: Write Critical Assets. + security_monitoring_filters_read: Read Security Filters. + security_monitoring_filters_write: Create, edit, and delete Security Filters. + security_monitoring_findings_read: View a list of findings that include both misconfigurations and identity risks. + security_monitoring_rules_read: Read Detection Rules. + security_monitoring_rules_write: Create and edit Detection Rules. + security_monitoring_signals_read: View Security Signals. + security_monitoring_suppressions_read: Read Rule Suppressions. + security_monitoring_suppressions_write: Write Rule Suppressions. + security_pipelines_read: View Security Pipelines. + security_pipelines_write: Create, edit, and delete CSM Security Pipelines. + siem_entities_read: View Cloud SIEM entities. + slos_corrections: Apply, edit, and delete SLO status corrections. A user with this permission can make status corrections, even if they do not have permission to edit those SLOs. + slos_read: View SLOs and status corrections. + slos_write: Create, edit, and delete SLOs. + synthetics_global_variable_read: View, search, and use Synthetics global variables. + synthetics_global_variable_write: Create, edit, and delete global variables for Synthetics. + synthetics_private_location_read: View, search, and use Synthetics private locations. + synthetics_private_location_write: Create and delete private locations in addition to having access to the associated installation guidelines. + synthetics_read: List and view configured Synthetic tests and test results. + synthetics_write: Create, edit, and delete Synthetic tests. + teams_manage: Manage Teams. Create, delete, rename, and edit metadata of all Teams. To control Team membership across all Teams, use the User Access Manage permission. + teams_read: Read Teams data. A User with this permission can view Team names, metadata, and which Users are on each Team. + test_optimization_read: View Test Optimization. + test_optimization_settings_write: Update service settings in Test Optimization. + test_optimization_write: Update flaky tests from Flaky Tests Management of Test Optimization. + timeseries_query: Query Timeseries data. + usage_read: View your organization's usage and usage attribution. + user_access_invite: Invite other users to your organization. + user_access_manage: Disable users, manage user roles, manage SAML-to-role mappings, and configure logs restriction queries. + user_access_read: View users and their roles and settings. + workflows_read: View workflows. + workflows_run: Run workflows. + workflows_write: Create, edit, and delete workflows. + tokenUrl: /oauth2/v1/token + type: oauth2 + apiKeyAuth: + description: Your Datadog API Key. + in: header + name: DD-API-KEY + type: apiKey + x-env-name: DD_API_KEY + appKeyAuth: + description: Your Datadog APP Key. + in: header + name: DD-APPLICATION-KEY + type: apiKey + x-env-name: DD_APP_KEY + bearerAuth: + scheme: bearer + type: http + x-env-name: DD_BEARER_TOKEN +info: + contact: + email: support@datadoghq.com + name: Datadog Support + url: https://www.datadoghq.com/support/ + description: Collection of all Datadog Public endpoints. + title: Datadog API V2 Collection + version: "1.0" +openapi: 3.0.0 +paths: + /api/unstable/fleet/agents/{agent_key}/tracers: + get: + description: |- + Retrieve a paginated list of tracers for a specific agent. + + This endpoint returns tracers associated with a given agent key, identified by the + agent's hostname. Use this to discover telemetry-derived service names for a particular host. + operationId: ListFleetAgentTracers + parameters: + - description: The unique identifier (agent key) for the Datadog Agent. + in: path + name: agent_key + required: true + schema: + type: string + - description: Page number for pagination (starts at 0). + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of results per page (must be greater than 0 and less than or equal to 100). + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Attribute to sort by. + in: query + name: sort_attribute + required: false + schema: + type: string + - description: Sort order (true for descending, false for ascending). + in: query + name: sort_descending + required: false + schema: + default: true + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tracers: + - env: production + hostname: my-hostname + language: java + service: test-service + tracer_version: "1.32.0" + id: done + type: status + meta: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/FleetTracersResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List tracers for a specific agent + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/schedules: + post: + description: |- + Create a new schedule for automated package upgrades. + + Schedules define when and how often to automatically deploy package upgrades to a fleet + of hosts. Each schedule includes: + - A filter query to select target hosts + - A recurrence rule defining maintenance windows + - A version strategy (e.g., always latest, or N versions behind latest) + + When the schedule triggers during a maintenance window, it automatically creates a + deployment that upgrades the Datadog Agent to the specified version on all matching hosts. + operationId: CreateFleetSchedule + requestBody: + content: + application/json: + examples: + conservative_staging: + summary: Conservative staging updates (N-1 version) + value: + data: + attributes: + name: "Staging Environment - Conservative Updates" + query: "env:staging" + rule: + days_of_week: ["Fri"] + maintenance_window_duration: 240 + start_maintenance_window: "22:00" + timezone: "UTC" + status: "active" + version_to_latest: 1 + type: schedule + default: + value: + data: + attributes: + name: Weekly Production Agent Updates + query: env:prod + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 180 + start_maintenance_window: 02:00 + timezone: America/New_York + status: active + version_to_latest: 0 + type: schedule + weekly_production_update: + summary: Weekly production agent updates + value: + data: + attributes: + name: "Weekly Production Agent Updates" + query: "env:prod" + rule: + days_of_week: ["Mon", "Wed"] + maintenance_window_duration: 180 + start_maintenance_window: "02:00" + timezone: "America/New_York" + status: "active" + version_to_latest: 0 + type: schedule + schema: + $ref: "#/components/schemas/FleetScheduleCreateRequest" + description: Request payload containing the schedule details. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Weekly Production Agent Updates + query: env:prod + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 180 + start_maintenance_window: "02:00" + timezone: America/New_York + status: active + version_to_latest: 0 + id: abc-123 + type: schedule + schema: + $ref: "#/components/schemas/FleetScheduleResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a schedule + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/schedules/{id}: + delete: + description: |- + Delete a schedule permanently. + + When you delete a schedule: + - The schedule is permanently removed and will no longer create deployments + - Any deployments already created by this schedule are not affected + - This action cannot be undone + + If you want to temporarily stop a schedule from creating deployments, consider + updating its status to "inactive" instead of deleting it. + operationId: DeleteFleetSchedule + parameters: + - description: The unique identifier of the schedule to delete. + example: "abc-def-ghi-123" + in: path + name: id + required: true + schema: + type: string + responses: + "204": + description: Schedule successfully deleted. + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a schedule + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Partially update a schedule by providing only the fields you want to change. + + This endpoint allows you to modify specific attributes of a schedule without + affecting other fields. Common use cases include: + - Changing the schedule status between active and inactive + - Updating the maintenance window times + - Modifying the filter query to target different hosts + - Adjusting the version strategy + + Only include the fields you want to update in the request body. All fields + are optional in a PATCH request. + operationId: UpdateFleetSchedule + parameters: + - description: The unique identifier of the schedule to update. + example: "abc-def-ghi-123" + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + change_maintenance_window: + summary: Change maintenance window time + value: + data: + attributes: + rule: + days_of_week: ["Mon", "Wed", "Fri"] + maintenance_window_duration: 240 + start_maintenance_window: "03:00" + timezone: "America/New_York" + type: schedule + default: + value: + data: + attributes: + status: inactive + type: schedule + pause_schedule: + summary: Pause a schedule + value: + data: + attributes: + status: "inactive" + type: schedule + update_query: + summary: Update target hosts query + value: + data: + attributes: + query: "env:prod AND service:api" + type: schedule + schema: + $ref: "#/components/schemas/FleetSchedulePatchRequest" + description: Request payload containing the fields to update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at_unix: 1699999999 + created_by: test@example.com + name: Weekly Production Agent Updates + query: env:prod AND service:web + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 120 + start_maintenance_window: "02:00" + timezone: America/New_York + status: inactive + updated_at_unix: 1699999999 + updated_by: test@example.com + version_to_latest: 0 + id: abc-def-ghi-123 + type: schedule + schema: + $ref: "#/components/schemas/FleetScheduleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a schedule + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/schedules/{id}/trigger: + post: + description: |- + Manually trigger a schedule to immediately create and start a deployment. + + This endpoint allows you to manually initiate a deployment using the schedule's + configuration, without waiting for the next scheduled maintenance window. This is + useful for: + - Testing a schedule before it runs automatically + - Performing an emergency update outside the regular maintenance window + - Creating an ad-hoc deployment with the same settings as a schedule + + The deployment is created immediately with: + - The same filter query as the schedule + - The package version determined by the schedule's version strategy + - All matching hosts as targets + + The manually triggered deployment is independent of the schedule and does not + affect the schedule's normal recurrence pattern. + operationId: TriggerFleetSchedule + parameters: + - description: The unique identifier of the schedule to trigger. + example: "abc-def-ghi-123" + in: path + name: id + required: true + schema: + type: string + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + filter_query: env:prod AND service:web + high_level_status: pending + packages: + - name: datadog-agent + version: 7.52.0 + total_hosts: 10 + id: abc-123 + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentResponse" + description: CREATED - Deployment successfully created and started. + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Trigger a schedule deployment + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/tracers: + get: + description: |- + Retrieve a paginated list of all fleet tracers. + + This endpoint returns telemetry-derived service names from the SDK telemetry pipeline. + These names may differ from span-derived names in APM and are useful for querying + service library configurations. + Use the `page_number` and `page_size` query parameters to paginate through results. + operationId: ListFleetTracers + parameters: + - description: Page number for pagination (starts at 0). + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of results per page (must be greater than 0 and less than or equal to 100). + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Attribute to sort by. + in: query + name: sort_attribute + required: false + schema: + type: string + - description: Sort order (true for descending, false for ascending). + in: query + name: sort_descending + required: false + schema: + default: true + type: boolean + - description: Filter string for narrowing down tracer results. + example: "hostname:my-host OR env:prod" + in: query + name: filter + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tracers: + - env: production + hostname: my-hostname + language: java + service: test-service + tracer_version: "1.32.0" + id: done + type: status + meta: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/FleetTracersResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all fleet tracers + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/llm-obs/config/evaluators/custom: + get: + description: List all custom Agent Observability evaluator configurations for the organization. + operationId: ListLLMObsCustomEvalConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: "Custom" + created_at: "2024-01-15T10:30:00Z" + created_by: + email: "user@example.com" + eval_name: "my-custom-evaluator" + last_updated_by: + email: "user@example.com" + llm_judge_config: + inference_params: + max_tokens: 1024 + temperature: 0.7 + parsing_type: "structured_output" + llm_provider: + integration_provider: "openai" + model_name: "gpt-4o" + target: + application_name: "my-llm-app" + enabled: true + sampling_percentage: 50.0 + updated_at: "2024-01-15T10:30:00Z" + id: "my-custom-evaluator" + type: "evaluator_config" + schema: + $ref: "#/components/schemas/LLMObsCustomEvalConfigListResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List custom evaluator configurations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/llm-obs/config/evaluators/custom/{eval_name}: + delete: + description: Delete a custom Agent Observability evaluator configuration by its name. + operationId: DeleteLLMObsCustomEvalConfig + parameters: + - $ref: "#/components/parameters/LLMObsEvalNamePathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a custom evaluator configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a custom Agent Observability evaluator configuration by its name. + operationId: GetLLMObsCustomEvalConfig + parameters: + - $ref: "#/components/parameters/LLMObsEvalNamePathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: "Custom" + created_at: "2024-01-15T10:30:00Z" + created_by: + email: "user@example.com" + eval_name: "my-custom-evaluator" + last_updated_by: + email: "user@example.com" + llm_judge_config: + inference_params: + max_tokens: 1024 + temperature: 0.7 + parsing_type: "structured_output" + llm_provider: + integration_provider: "openai" + model_name: "gpt-4o" + target: + application_name: "my-llm-app" + enabled: true + sampling_percentage: 50.0 + updated_at: "2024-01-15T10:30:00Z" + id: "my-custom-evaluator" + type: "evaluator_config" + schema: + $ref: "#/components/schemas/LLMObsCustomEvalConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a custom evaluator configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create or update a custom Agent Observability evaluator configuration by its name. + operationId: UpdateLLMObsCustomEvalConfig + parameters: + - $ref: "#/components/parameters/LLMObsEvalNamePathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + llm_judge_config: + inference_params: + max_tokens: 1024 + temperature: 0.7 + parsing_type: "structured_output" + llm_provider: + integration_provider: "openai" + model_name: "gpt-4o" + target: + application_name: "my-llm-app" + enabled: true + sampling_percentage: 50.0 + id: "my-custom-evaluator" + type: "evaluator_config" + full: + summary: Full example with prompt template, output schema, and assessment criteria + value: + data: + attributes: + category: "Custom" + eval_name: "my-custom-evaluator" + llm_judge_config: + assessment_criteria: + pass_when: false + inference_params: + frequency_penalty: 0 + max_tokens: 4096 + presence_penalty: 0 + temperature: 1 + top_p: 1 + output_schema: + name: "boolean_eval" + strict: true + parsing_type: "structured_output" + prompt_template: + - content: "You are a judge LLM." + role: "system" + - content: "{{span_output}}" + role: "user" + llm_provider: + integration_account_id: "your-account-uuid" + integration_provider: "openai" + model_name: "gpt-4o" + target: + application_name: "my-llm-app" + enabled: true + eval_scope: "span" + filter: "@meta.span.kind:llm" + root_spans_only: false + sampling_percentage: 100 + id: "my-custom-evaluator" + type: "evaluator_config" + schema: + $ref: "#/components/schemas/LLMObsCustomEvalConfigUpdateRequest" + description: Custom evaluator configuration payload. + required: true + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update a custom evaluator configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/actions-datastores: + get: + description: Lists all datastores for the organization. + operationId: ListDatastores + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A sample datastore + modified_at: "2024-01-01T00:00:00+00:00" + name: Example Datastore + org_id: 123 + primary_column_name: id + primary_key_generation_strategy: none + id: 00000000-0000-0000-0000-000000000001 + type: datastores + schema: + $ref: "#/components/schemas/DatastoreArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List datastores + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_read + post: + description: Creates a new datastore. + operationId: CreateDatastore + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: datastore-name + org_access: contributor + primary_column_name: primaryKey + primary_key_generation_strategy: none + type: datastores + schema: + $ref: "#/components/schemas/CreateAppsDatastoreRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000002 + type: datastores + schema: + $ref: "#/components/schemas/CreateAppsDatastoreResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create datastore + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_manage + /api/v2/actions-datastores/{datastore_id}: + delete: + description: Deletes a datastore by its unique identifier. + operationId: DeleteDatastore + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete datastore + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_manage + get: + description: Retrieves a specific datastore by its ID. + operationId: GetDatastore + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A sample datastore + modified_at: "2024-01-01T00:00:00+00:00" + name: Example Datastore + org_id: 123 + primary_column_name: id + primary_key_generation_strategy: none + id: 00000000-0000-0000-0000-000000000003 + type: datastores + schema: + $ref: "#/components/schemas/Datastore" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get datastore + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_read + patch: + description: Updates an existing datastore's attributes. + operationId: UpdateDatastore + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: datastores + schema: + $ref: "#/components/schemas/UpdateAppsDatastoreRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: An updated datastore + modified_at: "2024-01-01T00:00:00+00:00" + name: Updated Datastore + org_id: 123 + primary_column_name: id + primary_key_generation_strategy: none + id: 00000000-0000-0000-0000-000000000004 + type: datastores + schema: + $ref: "#/components/schemas/Datastore" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update datastore + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_manage + /api/v2/actions-datastores/{datastore_id}/items: + delete: + description: Deletes an item from a datastore by its key. + operationId: DeleteDatastoreItem + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + id: a7656bcc-51d4-4884-adf7-4d0d9a3e0633 + item_key: primaryKey + type: items + schema: + $ref: "#/components/schemas/DeleteAppsDatastoreItemRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000007 + type: items + schema: + $ref: "#/components/schemas/DeleteAppsDatastoreItemResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete datastore item + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_write + get: + description: >- + Lists items from a datastore. You can filter the results by specifying either an item key or a filter query parameter, but not both at the same time. Supports server-side pagination for large datasets. + operationId: ListDatastoreItems + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + - description: Optional query filter to search items using the [logs search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). + in: query + name: filter + schema: + type: string + - description: Optional primary key value to retrieve a specific item. Cannot be used together with the filter parameter. + in: query + name: item_key + schema: + maxLength: 256 + type: string + - description: Optional field to limit the number of items to return per page for pagination. Up to 100 items can be returned per page. + in: query + name: "page[limit]" + schema: + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Optional field to offset the number of items to skip from the beginning of the result set for pagination. + in: query + name: "page[offset]" + schema: + format: int64 + type: integer + - description: Optional field to sort results by. Prefix with '-' for descending order (e.g., '-created_at'). + in: query + name: sort + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + modified_at: "2024-01-01T00:00:00+00:00" + org_id: 123 + primary_column_name: id + store_id: 00000000-0000-0000-0000-000000000006 + value: + key: example-value + id: 00000000-0000-0000-0000-000000000005 + type: items + schema: + $ref: "#/components/schemas/ItemApiPayloadArray" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List datastore items + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_read + patch: + description: Partially updates an item in a datastore by its key. + operationId: UpdateDatastoreItem + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + item_changes: + ops_set: + count: 42 + status: active + item_key: my-item-key + type: items + schema: + $ref: "#/components/schemas/UpdateAppsDatastoreItemRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + modified_at: "2024-01-01T00:00:00+00:00" + org_id: 123 + primary_column_name: id + store_id: 00000000-0000-0000-0000-000000000009 + value: + count: 42 + status: active + id: 00000000-0000-0000-0000-000000000008 + type: items + schema: + $ref: "#/components/schemas/ItemApiPayload" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update datastore item + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_write + /api/v2/actions-datastores/{datastore_id}/items/bulk: + delete: + description: >- + Deletes multiple items from a datastore by their keys in a single operation. + operationId: BulkDeleteDatastoreItems + parameters: + - description: The ID of the datastore. + in: path + name: datastore_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: items + schema: + $ref: "#/components/schemas/BulkDeleteAppsDatastoreItemsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000010 + type: items + schema: + $ref: "#/components/schemas/DeleteAppsDatastoreItemResponseArray" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Bulk delete datastore items + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_write + post: + description: >- + Creates or replaces multiple items in a datastore by their keys in a single operation. + operationId: BulkWriteDatastoreItems + parameters: + - description: The unique identifier of the datastore to retrieve. + in: path + name: datastore_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + conflict_mode: overwrite_on_conflict + values: + - data: example data + key: value + - data: example data2 + key: value2 + type: items + schema: + $ref: "#/components/schemas/BulkPutAppsDatastoreItemsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000011 + type: items + schema: + $ref: "#/components/schemas/PutAppsDatastoreItemResponseArray" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Bulk write datastore items + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_write + /api/v2/actions/app_key_registrations: + get: + description: List App Key Registrations + operationId: ListAppKeyRegistrations + parameters: + - description: The number of App Key Registrations to return per page. + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: app_key_registration + meta: + total: 1 + total_filtered: 1 + schema: + $ref: "#/components/schemas/ListAppKeyRegistrationsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: List App Key Registrations + tags: + - Action Connection + x-permission: + operator: OR + permissions: + - org_app_keys_read + /api/v2/actions/app_key_registrations/{app_key_id}: + delete: + description: Unregister an App Key + operationId: UnregisterAppKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyId" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Unregister an App Key + tags: + - Action Connection + x-permission: + operator: OR + permissions: + - user_access_manage + - user_app_keys + - service_account_write + get: + description: Get an existing App Key Registration + operationId: GetAppKeyRegistration + parameters: + - $ref: "#/components/parameters/ApplicationKeyId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: app_key_registration + schema: + $ref: "#/components/schemas/GetAppKeyRegistrationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Get an existing App Key Registration + tags: + - Action Connection + x-permission: + operator: OR + permissions: + - org_app_keys_read + put: + description: Register a new App Key + operationId: RegisterAppKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyId" + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: app_key_registration + schema: + $ref: "#/components/schemas/RegisterAppKeyResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Register a new App Key + tags: + - Action Connection + x-permission: + operator: OR + permissions: + - user_access_manage + - user_app_keys + - service_account_write + /api/v2/actions/connections: + post: + description: Create a new Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + operationId: CreateActionConnection + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + integration: + credentials: + account_id: "123456789123" + role: MyRoleUpdated + type: AWSAssumeRole + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + type: action_connection + schema: + $ref: "#/components/schemas/CreateActionConnectionRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + id: 00000000-0000-0000-0000-000000000001 + type: action_connection + schema: + $ref: "#/components/schemas/CreateActionConnectionResponse" + description: Successfully created Action Connection + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Request + summary: Create a new Action Connection + tags: + - Action Connection + /api/v2/actions/connections/{connection_id}: + delete: + description: Delete an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: DeleteActionConnection + parameters: + - $ref: "#/components/parameters/ConnectionId" + responses: + "204": + description: The resource was deleted successfully. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Request + summary: Delete an existing Action Connection + tags: + - Action Connection + x-permission: + operator: OR + permissions: + - connection_write + get: + description: Get an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + operationId: GetActionConnection + parameters: + - $ref: "#/components/parameters/ConnectionId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + id: 00000000-0000-0000-0000-000000000002 + type: action_connection + schema: + $ref: "#/components/schemas/GetActionConnectionResponse" + description: Successfully get Action Connection + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Request + summary: Get an existing Action Connection + tags: + - Action Connection + patch: + description: Update an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + operationId: UpdateActionConnection + parameters: + - $ref: "#/components/parameters/ConnectionId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + type: action_connection + schema: + $ref: "#/components/schemas/UpdateActionConnectionRequest" + description: Update an existing Action Connection request body + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + id: 00000000-0000-0000-0000-000000000003 + type: action_connection + schema: + $ref: "#/components/schemas/UpdateActionConnectionResponse" + description: Successfully updated Action Connection + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Request + summary: Update an existing Action Connection + tags: + - Action Connection + /api/v2/actions/execution-policies: + get: + description: Retrieve a list of execution policies for the current organization. + operationId: ListExecutionPolicies + parameters: + - description: The number of execution policies to return per page. + example: 100 + in: query + name: page[size] + required: false + schema: + default: 100 + format: int32 + maximum: 100 + type: integer + - description: The page number to return. + example: 0 + in: query + name: page[number] + required: false + schema: + default: 0 + format: int32 + maximum: 1000 + minimum: 0 + type: integer + - description: Filter execution policies by name. + example: "Block prod restarts" + in: query + name: filter[name] + required: false + schema: + type: string + - description: Filter execution policies by a list of IDs. + example: + - "3fa85f64-5717-4562-b3fc-2c963f66afa6" + explode: true + in: query + name: filter[ids] + required: false + schema: + items: + type: string + type: array + style: form + - description: Filter execution policies by a list of integrations. + example: + - INTEGRATION_SCRIPT + explode: true + in: query + name: filter[integration] + required: false + schema: + items: + $ref: "#/components/schemas/ExecutionPolicyIntegration" + type: array + style: form + - description: Filter execution policies by a list of effects. + example: + - allow + explode: true + in: query + name: filter[effects] + required: false + schema: + items: + $ref: "#/components/schemas/ExecutionPolicyEffect" + type: array + style: form + - description: Filter execution policies by a list of creator IDs. + example: + - "3fa85f64-5717-4562-b3fc-2c963f66afa6" + explode: true + in: query + name: filter[creator_ids] + required: false + schema: + items: + type: string + type: array + style: form + - description: |- + The sort order for the results. Prefix a field with `-` to sort in + descending order. Valid fields are `name`, `effect`, `integration`, + `created_at`, and `updated_at`. + example: + - "-created_at" + explode: true + in: query + name: sort + required: false + schema: + items: + type: string + type: array + style: form + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action_pattern: + action_fqns: + - "com.datadoghq.script.*" + integration: INTEGRATION_SCRIPT + created_at: "2026-01-15T10:00:00.000Z" + created_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + effect: allow + name: "Block prod restarts" + targets: [] + updated_at: "2026-01-15T10:00:00.000Z" + updated_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + version: 1 + id: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: execution_policy + meta: + page: + total: 1 + schema: + $ref: "#/components/schemas/ExecutionPolicyListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List execution policies + tags: + - Execution Policy + x-permission: + operator: OR + permissions: + - execution_groups_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new execution policy. + operationId: CreateExecutionPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - "com.datadoghq.script.*" + integration: INTEGRATION_SCRIPT + effect: allow + name: "Block prod restarts" + type: execution_policy + schema: + $ref: "#/components/schemas/ExecutionPolicyCreateRequest" + description: The execution policy to create. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - "com.datadoghq.script.*" + integration: INTEGRATION_SCRIPT + created_at: "2026-01-15T10:00:00.000Z" + created_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + effect: allow + name: "Block prod restarts" + targets: [] + updated_at: "2026-01-15T10:00:00.000Z" + updated_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + version: 1 + id: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: execution_policy + schema: + $ref: "#/components/schemas/ExecutionPolicyResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an execution policy + tags: + - Execution Policy + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - execution_groups_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/actions/execution-policies/{policy_id}: + delete: + description: Delete a specific execution policy. + operationId: DeleteExecutionPolicy + parameters: + - $ref: "#/components/parameters/ExecutionPolicyId" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an execution policy + tags: + - Execution Policy + x-permission: + operator: OR + permissions: + - execution_groups_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve an existing execution policy by ID. + operationId: GetExecutionPolicy + parameters: + - $ref: "#/components/parameters/ExecutionPolicyId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - "com.datadoghq.script.*" + integration: INTEGRATION_SCRIPT + created_at: "2026-01-15T10:00:00.000Z" + created_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + effect: allow + name: "Block prod restarts" + targets: [] + updated_at: "2026-01-15T10:00:00.000Z" + updated_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + version: 1 + id: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: execution_policy + schema: + $ref: "#/components/schemas/ExecutionPolicyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an execution policy + tags: + - Execution Policy + x-permission: + operator: OR + permissions: + - execution_groups_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Update an existing execution policy. + Returns the execution policy object when the request is successful. + operationId: UpdateExecutionPolicy + parameters: + - $ref: "#/components/parameters/ExecutionPolicyId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - "com.datadoghq.script.*" + integration: INTEGRATION_SCRIPT + effect: allow + name: "Block prod restarts" + id: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: execution_policy + schema: + $ref: "#/components/schemas/ExecutionPolicyUpdateRequest" + description: The new execution policy. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - "com.datadoghq.script.*" + integration: INTEGRATION_SCRIPT + created_at: "2026-01-15T10:00:00.000Z" + created_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + effect: allow + name: "Block prod restarts" + targets: [] + updated_at: "2026-01-15T10:00:00.000Z" + updated_by: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + version: 2 + id: "3fa85f64-5717-4562-b3fc-2c963f66afa6" + type: execution_policy + schema: + $ref: "#/components/schemas/ExecutionPolicyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an execution policy + tags: + - Execution Policy + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - execution_groups_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/agentless_scanning/accounts/aws: + get: + description: Fetches the scan options configured for AWS accounts. + operationId: ListAwsScanOptions + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: "123456789012" + type: aws_scan_options + schema: + $ref: "#/components/schemas/AwsScanOptionsListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List AWS scan options + tags: ["Agentless Scanning"] + post: + description: Activate Agentless scan options for an AWS account. + operationId: CreateAwsScanOptions + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: "123456789012" + type: aws_scan_options + schema: + $ref: "#/components/schemas/AwsScanOptionsCreateRequest" + description: The definition of the new scan options. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: "123456789012" + type: aws_scan_options + schema: + $ref: "#/components/schemas/AwsScanOptionsResponse" + description: Agentless scan options enabled successfully. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create AWS scan options + tags: ["Agentless Scanning"] + x-codegen-request-body-name: body + /api/v2/agentless_scanning/accounts/aws/{account_id}: + delete: + description: Delete Agentless scan options for an AWS account. + operationId: DeleteAwsScanOptions + parameters: + - $ref: "#/components/parameters/AwsAccountId" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Delete AWS scan options + tags: ["Agentless Scanning"] + get: + description: Fetches the Agentless scan options for an activated account. + operationId: GetAwsScanOptions + parameters: + - $ref: "#/components/parameters/AwsAccountId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: "123456789012" + type: aws_scan_options + schema: + $ref: "#/components/schemas/AwsScanOptionsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get AWS scan options + tags: ["Agentless Scanning"] + patch: + description: Update the Agentless scan options for an activated account. + operationId: UpdateAwsScanOptions + parameters: + - $ref: "#/components/parameters/AwsAccountId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: "123456789012" + type: aws_scan_options + schema: + $ref: "#/components/schemas/AwsScanOptionsUpdateRequest" + description: New definition of the scan options. + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update AWS scan options + tags: ["Agentless Scanning"] + x-codegen-request-body-name: body + /api/v2/agentless_scanning/accounts/azure: + get: + description: Fetches the scan options configured for Azure accounts. + operationId: ListAzureScanOptions + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + vuln_containers_os: true + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options + schema: + $ref: "#/components/schemas/AzureScanOptionsArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List Azure scan options + tags: + - Agentless Scanning + post: + description: Activate Agentless scan options for an Azure subscription. + operationId: CreateAzureScanOptions + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + schema: + $ref: "#/components/schemas/AzureScanOptions" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options + schema: + $ref: "#/components/schemas/AzureScanOptions" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create Azure scan options + tags: + - Agentless Scanning + /api/v2/agentless_scanning/accounts/azure/{subscription_id}: + delete: + description: Delete Agentless scan options for an Azure subscription. + operationId: DeleteAzureScanOptions + parameters: + - description: The Azure subscription ID. + in: path + name: subscription_id + required: true + schema: + example: 12345678-90ab-cdef-1234-567890abcdef + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Delete Azure scan options + tags: + - Agentless Scanning + get: + description: Fetches the Agentless scan options for an activated subscription. + operationId: GetAzureScanOptions + parameters: + - description: The Azure subscription ID. + in: path + name: subscription_id + required: true + schema: + example: 12345678-90ab-cdef-1234-567890abcdef + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options + schema: + $ref: "#/components/schemas/AzureScanOptions" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get Azure scan options + tags: ["Agentless Scanning"] + patch: + description: Update the Agentless scan options for an activated subscription. + operationId: UpdateAzureScanOptions + parameters: + - description: The Azure subscription ID. + in: path + name: subscription_id + required: true + schema: + example: 12345678-90ab-cdef-1234-567890abcdef + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: false + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + schema: + $ref: "#/components/schemas/AzureScanOptionsInputUpdate" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: false + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options + schema: + $ref: "#/components/schemas/AzureScanOptions" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update Azure scan options + tags: + - Agentless Scanning + /api/v2/agentless_scanning/accounts/gcp: + get: + description: Fetches the scan options configured for all GCP projects. + operationId: ListGcpScanOptions + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options + schema: + $ref: "#/components/schemas/GcpScanOptionsArray" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List GCP scan options + tags: + - Agentless Scanning + post: + description: Activate Agentless scan options for a GCP project. + operationId: CreateGcpScanOptions + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: company-project-id + type: gcp_scan_options + schema: + $ref: "#/components/schemas/GcpScanOptions" + description: The definition of the new scan options. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options + schema: + $ref: "#/components/schemas/GcpScanOptions" + description: Agentless scan options enabled successfully. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create GCP scan options + tags: + - Agentless Scanning + x-codegen-request-body-name: body + /api/v2/agentless_scanning/accounts/gcp/{project_id}: + delete: + description: Delete Agentless scan options for a GCP project. + operationId: DeleteGcpScanOptions + parameters: + - description: The GCP project ID. + in: path + name: project_id + required: true + schema: + example: company-project-id + type: string + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Delete GCP scan options + tags: + - Agentless Scanning + get: + description: Fetches the Agentless scan options for an activated GCP project. + operationId: GetGcpScanOptions + parameters: + - description: The GCP project ID. + in: path + name: project_id + required: true + schema: + example: company-project-id + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options + schema: + $ref: "#/components/schemas/GcpScanOptions" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get GCP scan options + tags: + - Agentless Scanning + patch: + description: Update the Agentless scan options for an activated GCP project. + operationId: UpdateGcpScanOptions + parameters: + - description: The GCP project ID. + in: path + name: project_id + required: true + schema: + example: company-project-id + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: false + id: company-project-id + type: gcp_scan_options + schema: + $ref: "#/components/schemas/GcpScanOptionsInputUpdate" + description: New definition of the scan options. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options + schema: + $ref: "#/components/schemas/GcpScanOptions" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update GCP scan options + tags: + - Agentless Scanning + x-codegen-request-body-name: body + /api/v2/agentless_scanning/ondemand/aws: + get: + description: Fetches the most recent 1000 AWS on demand tasks. + operationId: ListAwsOnDemandTasks + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + arn: "arn:aws:ec2:us-east-1:123456789012:instance/i-0eabb50529b67a1ba" + assigned_at: "2024-01-01T00:00:00+00:00" + created_at: "2024-01-01T00:00:00+00:00" + status: QUEUED + id: abc-123 + type: aws_resource + schema: + $ref: "#/components/schemas/AwsOnDemandListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List AWS on demand tasks + tags: ["Agentless Scanning"] + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_read + post: + description: Trigger the scan of an AWS resource with a high priority. Agentless scanning must be activated for the AWS account containing the resource to scan. + operationId: CreateAwsOnDemandTask + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + arn: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba + type: aws_resource + schema: + $ref: "#/components/schemas/AwsOnDemandCreateRequest" + description: The definition of the on demand task. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + arn: "arn:aws:ec2:us-east-1:123456789012:instance/i-0eabb50529b67a1ba" + created_at: "2024-01-01T00:00:00+00:00" + status: QUEUED + id: abc-123 + type: aws_resource + schema: + $ref: "#/components/schemas/AwsOnDemandResponse" + description: AWS on demand task created successfully. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create AWS on demand task + tags: ["Agentless Scanning"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + /api/v2/agentless_scanning/ondemand/aws/{task_id}: + get: + description: Fetch the data of a specific on demand task. + operationId: GetAwsOnDemandTask + parameters: + - $ref: "#/components/parameters/OnDemandTaskId" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + arn: "arn:aws:ec2:us-east-1:123456789012:instance/i-0eabb50529b67a1ba" + assigned_at: "2024-01-01T00:00:00+00:00" + created_at: "2024-01-01T00:00:00+00:00" + status: ASSIGNED + id: abc-123 + type: aws_resource + schema: + $ref: "#/components/schemas/AwsOnDemandResponse" + description: OK. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get AWS on demand task + tags: ["Agentless Scanning"] + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_read + /api/v2/annotation: + get: + description: Returns a flat list of annotations matching the given page, time window, and optional widget filter. + operationId: ListAnnotations + parameters: + - description: |- + ID of the page to list annotations for, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: "dashboard:abc-def-xyz" + in: query + name: page_id + required: true + schema: + type: string + - $ref: "#/components/parameters/AnnotationStartTimeQueryParameter" + - $ref: "#/components/parameters/AnnotationEndTimeQueryParameter" + - description: Optional widget ID to restrict results to annotations on a specific widget. + in: query + name: widget_id + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + author_id: "00000000-0000-0000-0000-000000000001" + color: blue + created_at: 1704067200000 + description: "Deployed v2.3.1 to production." + end_time: + modified_at: 1704067200000 + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + id: "00000000-0000-0000-0000-000000000000" + type: annotation + schema: + $ref: "#/components/schemas/AnnotationsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List annotations + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Creates a new annotation on a dashboard or notebook page. + Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`. + Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`). + operationId: CreateAnnotation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + color: blue + description: "Deployed v2.3.1 to production." + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + type: annotation + schema: + $ref: "#/components/schemas/AnnotationCreateRequest" + description: Annotation to create. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author_id: "00000000-0000-0000-0000-000000000001" + color: blue + created_at: 1704067200000 + description: "Deployed v2.3.1 to production." + end_time: + modified_at: 1704067200000 + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + id: "00000000-0000-0000-0000-000000000000" + type: annotation + schema: + $ref: "#/components/schemas/AnnotationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an annotation + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/annotation/page/{page_id}: + get: + description: |- + Returns all annotations on a specific page for a given time window, grouped by widget. + Unlike `ListAnnotations`, this endpoint returns a single structured object with annotations + indexed by their ID and a widget-to-annotation mapping for easy UI rendering. + operationId: GetPageAnnotations + parameters: + - $ref: "#/components/parameters/AnnotationPageIDPathParameter" + - $ref: "#/components/parameters/AnnotationStartTimeQueryParameter" + - $ref: "#/components/parameters/AnnotationEndTimeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotations: + "00000000-0000-0000-0000-000000000000": + author_id: "00000000-0000-0000-0000-000000000001" + color: blue + created_at: 1704067200000 + description: "Deployed v2.3.1 to production." + end_time: + id: "00000000-0000-0000-0000-000000000000" + modified_at: 1704067200000 + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + global_annotations: + - "00000000-0000-0000-0000-000000000002" + widget_mapping: + "1234567890": + - "00000000-0000-0000-0000-000000000000" + id: "dashboard:abc-def-xyz" + type: page_annotations + schema: + $ref: "#/components/schemas/PageAnnotationsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotations for a page + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/annotation/{annotation_id}: + delete: + description: |- + Deletes an existing annotation by ID. + Returns `204 No Content` if the annotation does not exist (idempotent). + operationId: DeleteAnnotation + parameters: + - $ref: "#/components/parameters/AnnotationIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an annotation + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Updates an existing annotation. + Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`. + Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`). + operationId: UpdateAnnotation + parameters: + - $ref: "#/components/parameters/AnnotationIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + color: green + description: "Deployed v2.3.1 to production (updated)." + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + type: annotation + schema: + $ref: "#/components/schemas/AnnotationUpdateRequest" + description: Updated annotation payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author_id: "00000000-0000-0000-0000-000000000001" + color: green + created_at: 1704067200000 + description: "Deployed v2.3.1 to production (updated)." + end_time: + modified_at: 1704070800000 + page_id: "dashboard:abc-def-xyz" + start_time: 1704067200000 + type: pointInTime + widget_ids: + - "1234567890" + id: "00000000-0000-0000-0000-000000000000" + type: annotation + schema: + $ref: "#/components/schemas/AnnotationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an annotation + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/anonymize_users: + put: + description: |- + Anonymize a list of users, removing their personal data. This operation is irreversible. + Requires the `user_access_manage` permission. + operationId: AnonymizeUsers + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + user_ids: + - "00000000-0000-0000-0000-000000000000" + type: anonymize_users_request + schema: + $ref: "#/components/schemas/AnonymizeUsersRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: abc-123 + type: anonymize_users_response + schema: + $ref: "#/components/schemas/AnonymizeUsersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Anonymize users + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: "**Note**: This endpoint is in Preview and may be subject to changes." + /api/v2/api_keys: + get: + description: List all API keys available for your account. + operationId: ListAPIKeys + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/APIKeysSortParameter" + - $ref: "#/components/parameters/APIKeyFilterParameter" + - $ref: "#/components/parameters/APIKeyFilterCreatedAtStartParameter" + - $ref: "#/components/parameters/APIKeyFilterCreatedAtEndParameter" + - $ref: "#/components/parameters/APIKeyFilterModifiedAtStartParameter" + - $ref: "#/components/parameters/APIKeyFilterModifiedAtEndParameter" + - $ref: "#/components/parameters/APIKeyIncludeParameter" + - $ref: "#/components/parameters/APIKeyReadConfigReadEnabledParameter" + - $ref: "#/components/parameters/APIKeyCategoryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + last4: abcd + modified_at: "2024-01-01T00:00:00+00:00" + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000001 + type: api_keys + schema: + $ref: "#/components/schemas/APIKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all API keys + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - api_keys_read + post: + description: Create an API key. + operationId: CreateAPIKey + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: API Key for submitting metrics + type: api_keys + schema: + $ref: "#/components/schemas/APIKeyCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + last4: abcd + modified_at: "2024-01-01T00:00:00+00:00" + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000002 + type: api_keys + schema: + $ref: "#/components/schemas/APIKeyResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an API key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - api_keys_write + /api/v2/api_keys/{api_key_id}: + delete: + description: Delete an API key. + operationId: DeleteAPIKey + parameters: + - $ref: "#/components/parameters/APIKeyId" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an API key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - api_keys_delete + get: + description: Get an API key. + operationId: GetAPIKey + parameters: + - $ref: "#/components/parameters/APIKeyId" + - $ref: "#/components/parameters/APIKeyIncludeParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + last4: abcd + modified_at: "2024-01-01T00:00:00+00:00" + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000003 + type: api_keys + schema: + $ref: "#/components/schemas/APIKeyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get API key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - api_keys_read + patch: + description: Update an API key. + operationId: UpdateAPIKey + parameters: + - $ref: "#/components/parameters/APIKeyId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: API Key for submitting metrics + id: 00112233-4455-6677-8899-aabbccddeeff + type: api_keys + schema: + $ref: "#/components/schemas/APIKeyUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + last4: abcd + modified_at: "2024-01-01T00:00:00+00:00" + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000004 + type: api_keys + schema: + $ref: "#/components/schemas/APIKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an API key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - api_keys_write + /api/v2/apicatalog/api: + get: + deprecated: true + description: List APIs and their IDs. + operationId: ListAPIs + parameters: + - description: Filter APIs by name + in: query + name: query + required: false + schema: + example: "payments" + type: string + - description: Number of items per page. + in: query + name: page[limit] + required: false + schema: + default: 20 + format: int64 + minimum: 1 + type: integer + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Payments API + id: abc-123 + meta: + pagination: + limit: 20 + offset: 0 + total_count: 1 + schema: + $ref: "#/components/schemas/ListAPIsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_api_catalog_read + summary: List APIs + tags: ["API Management"] + "x-permission": + operator: OR + permissions: + - apm_api_catalog_read + x-unstable: |- + **Note**: This endpoint is deprecated. + /api/v2/apicatalog/api/{id}: + delete: + deprecated: true + description: Delete a specific API by ID. + operationId: DeleteOpenAPI + parameters: + - description: ID of the API to delete + in: path + name: id + required: true + schema: + $ref: "#/components/schemas/ApiID" + responses: + "204": + description: API deleted successfully + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: API not found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_api_catalog_write + summary: Delete an API + tags: ["API Management"] + "x-permission": + operator: OR + permissions: + - apm_api_catalog_write + x-unstable: |- + **Note**: This endpoint is deprecated. + /api/v2/apicatalog/api/{id}/openapi: + get: + deprecated: true + description: Retrieve information about a specific API in [OpenAPI](https://spec.openapis.org/oas/latest.html) format file. + operationId: GetOpenAPI + parameters: + - description: ID of the API to retrieve + in: path + name: id + required: true + schema: + $ref: "#/components/schemas/ApiID" + responses: + "200": + content: + multipart/form-data: + examples: + default: + value: openapi-spec.yaml + schema: + format: binary + type: string + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: API not found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_api_catalog_read + summary: Get an API + tags: ["API Management"] + "x-permission": + operator: OR + permissions: + - apm_api_catalog_read + x-unstable: |- + **Note**: This endpoint is deprecated. + put: + deprecated: true + description: |- + Update information about a specific API. The given content will replace all API content of the given ID. + The ID is returned by the create API, or can be found in the URL in the API catalog UI. + operationId: UpdateOpenAPI + parameters: + - description: ID of the API to modify + in: path + name: id + required: true + schema: + $ref: "#/components/schemas/ApiID" + requestBody: + content: + multipart/form-data: + examples: + default: + value: + openapi_spec_file: openapi-spec.yaml + schema: + $ref: "#/components/schemas/OpenAPIFile" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + failed_endpoints: [] + id: abc-123 + schema: + $ref: "#/components/schemas/UpdateOpenAPIResponse" + description: API updated successfully + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: API not found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_api_catalog_write + summary: Update an API + tags: ["API Management"] + "x-permission": + operator: OR + permissions: + - apm_api_catalog_write + x-unstable: |- + **Note**: This endpoint is deprecated. + /api/v2/apicatalog/openapi: + post: + deprecated: true + description: |- + Create a new API from the [OpenAPI](https://spec.openapis.org/oas/latest.html) specification given. + See the [API Catalog documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) for additional + information about the possible metadata. + It returns the created API ID. + operationId: CreateOpenAPI + requestBody: + content: + multipart/form-data: + examples: + default: + value: + openapi_spec_file: openapi-spec.yaml + schema: + $ref: "#/components/schemas/OpenAPIFile" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + failed_endpoints: [] + id: abc-123 + schema: + $ref: "#/components/schemas/CreateOpenAPIResponse" + description: API created successfully + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_api_catalog_write + summary: Create a new API + tags: ["API Management"] + "x-permission": + operator: OR + permissions: + - apm_api_catalog_write + x-unstable: |- + **Note**: This endpoint is deprecated. + /api/v2/apm/config/metrics: + get: + description: Get the list of configured span-based metrics with their definitions. + operationId: ListSpansMetrics + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: "@duration" + filter: + query: "@http.status_code:200 service:my-service" + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics + schema: + $ref: "#/components/schemas/SpansMetricsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all span-based metrics + tags: + - Spans Metrics + "x-permission": + operator: OR + permissions: + - apm_read + post: + description: |- + Create a metric based on your ingested spans in your organization. + Returns the span-based metric object from the request body when the request is successful. + operationId: CreateSpansMetric + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: "@duration" + filter: + query: "@http.status_code:200 service:my-service" + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics + schema: + $ref: "#/components/schemas/SpansMetricCreateRequest" + description: The definition of the new span-based metric. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: "@duration" + filter: + query: "@http.status_code:200 service:my-service" + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics + schema: + $ref: "#/components/schemas/SpansMetricResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a span-based metric + tags: + - Spans Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_generate_metrics + /api/v2/apm/config/metrics/{metric_id}: + delete: + description: Delete a specific span-based metric from your organization. + operationId: DeleteSpansMetric + parameters: + - $ref: "#/components/parameters/SpansMetricIDParameter" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a span-based metric + tags: + - Spans Metrics + "x-permission": + operator: OR + permissions: + - apm_generate_metrics + get: + description: Get a specific span-based metric from your organization. + operationId: GetSpansMetric + parameters: + - $ref: "#/components/parameters/SpansMetricIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: "@duration" + filter: + query: "@http.status_code:200 service:my-service" + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics + schema: + $ref: "#/components/schemas/SpansMetricResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a span-based metric + tags: + - Spans Metrics + "x-permission": + operator: OR + permissions: + - apm_read + patch: + description: |- + Update a specific span-based metric from your organization. + Returns the span-based metric object from the request body when the request is successful. + operationId: UpdateSpansMetric + parameters: + - $ref: "#/components/parameters/SpansMetricIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + include_percentiles: false + filter: + query: "@http.status_code:200 service:my-service" + group_by: + - path: resource_name + tag_name: resource_name + type: spans_metrics + schema: + $ref: "#/components/schemas/SpansMetricUpdateRequest" + description: New definition of the span-based metric. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: "@duration" + filter: + query: "@http.status_code:200 service:my-service" + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics + schema: + $ref: "#/components/schemas/SpansMetricResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a span-based metric + tags: + - Spans Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_generate_metrics + /api/v2/apm/config/retention-filters: + get: + description: Get the list of APM retention filters. + operationId: ListApmRetentionFilters + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + filter: + query: "@http.status_code:200 service:my-service" + filter_type: spans-sampling-processor + name: my retention filter + rate: 1.0 + id: abc-123 + type: apm_retention_filter + schema: + $ref: "#/components/schemas/RetentionFiltersResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all APM retention filters + tags: + - APM Retention Filters + "x-permission": + operator: OR + permissions: + - apm_retention_filter_read + post: + description: |- + Create a retention filter to index spans in your organization. + Returns the retention filter definition when the request is successful. + + Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. + operationId: CreateApmRetentionFilter + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: "@http.status_code:200 service:my-service" + filter_type: spans-sampling-processor + name: my retention filter + rate: 1.0 + trace_rate: 1.0 + type: apm_retention_filter + schema: + $ref: "#/components/schemas/RetentionFilterCreateRequest" + description: The definition of the new retention filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: "@http.status_code:200 service:my-service" + filter_type: spans-sampling-processor + name: my retention filter + rate: 1.0 + id: abc-123 + type: apm_retention_filter + schema: + $ref: "#/components/schemas/RetentionFilterCreateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a retention filter + tags: + - APM Retention Filters + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_retention_filter_write + /api/v2/apm/config/retention-filters-execution-order: + put: + description: Re-order the execution order of retention filters. + operationId: ReorderApmRetentionFilters + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 7RBOb7dLSYWI01yc3pIH8w + type: apm_retention_filter + schema: + $ref: "#/components/schemas/ReorderRetentionFiltersRequest" + description: The list of retention filters in the new order. + required: true + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Re-order retention filters + tags: + - APM Retention Filters + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_retention_filter_write + /api/v2/apm/config/retention-filters/{filter_id}: + delete: + description: |- + Delete a specific retention filter from your organization. + + Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted. + operationId: DeleteApmRetentionFilter + parameters: + - $ref: "#/components/parameters/RetentionFilterIdParam" + responses: + "200": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a retention filter + tags: + - APM Retention Filters + "x-permission": + operator: OR + permissions: + - apm_retention_filter_write + get: + description: Get an APM retention filter. + operationId: GetApmRetentionFilter + parameters: + - $ref: "#/components/parameters/RetentionFilterIdParam" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: "@http.status_code:200 service:my-service" + filter_type: spans-sampling-processor + name: my retention filter + rate: 1.0 + id: abc-123 + type: apm_retention_filter + schema: + $ref: "#/components/schemas/RetentionFilterResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a given APM retention filter + tags: + - APM Retention Filters + "x-permission": + operator: OR + permissions: + - apm_retention_filter_read + put: + description: |- + Update a retention filter from your organization. + + Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) cannot be renamed or removed. + operationId: UpdateApmRetentionFilter + parameters: + - $ref: "#/components/parameters/RetentionFilterIdParam" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: "@http.status_code:200 service:my-service" + filter_type: spans-sampling-processor + name: my retention filter + rate: 1.0 + trace_rate: 1.0 + id: retention-filter-id + type: apm_retention_filter + schema: + $ref: "#/components/schemas/RetentionFilterUpdateRequest" + description: The updated definition of the retention filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: "@http.status_code:200 service:my-service" + filter_type: spans-sampling-processor + name: my retention filter + rate: 1.0 + id: abc-123 + type: apm_retention_filter + schema: + $ref: "#/components/schemas/RetentionFilterResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a retention filter + tags: + - APM Retention Filters + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_retention_filter_write + /api/v2/apm/services: + get: + operationId: GetServiceList + parameters: + - description: Filter services by environment. Can be set to `*` to return all services across all environments. + in: query + name: filter[env] + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metadata: + - isTraced: true + isUsm: false + services: + - test-service + id: abc-123 + type: services_list + schema: + $ref: "#/components/schemas/ServiceList" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get service list + tags: + - APM + /api/v2/app-builder/apps: + delete: + description: Delete multiple apps in a single request from a list of app IDs. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: DeleteApps + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: aea2ed17-b45f-40d0-ba59-c86b7972c901 + type: appDefinitions + - id: f69bb8be-6168-4fe7-a30d-370256b6504a + type: appDefinitions + - id: ab1ed73e-13ad-4426-b0df-a0ff8876a088 + type: appDefinitions + schema: + $ref: "#/components/schemas/DeleteAppsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions + schema: + $ref: "#/components/schemas/DeleteAppsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Multiple Apps + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + get: + description: List all apps, with optional filters and sorting. This endpoint is paginated. Only basic app information such as the app ID, name, and description is returned by this endpoint. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: ListApps + parameters: + - description: The number of apps to return per page. + in: query + name: limit + required: false + schema: + format: int64 + type: integer + - description: The page number to return. + in: query + name: page + required: false + schema: + format: int64 + type: integer + - description: Filter apps by the app creator. Usually the user's email. + in: query + name: filter[user_name] + required: false + schema: + type: string + - description: Filter apps by the app creator's UUID. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: query + name: filter[user_uuid] + required: false + schema: + format: uuid + type: string + - description: Filter by app name. + in: query + name: filter[name] + required: false + schema: + type: string + - description: Filter apps by the app name or the app creator. + in: query + name: filter[query] + required: false + schema: + type: string + - description: Filter apps by whether they are published. + in: query + name: filter[deployed] + required: false + schema: + type: boolean + - description: Filter apps by tags. + in: query + name: filter[tags] + required: false + schema: + type: string + - description: Filter apps by whether you have added them to your favorites. + in: query + name: filter[favorite] + required: false + schema: + type: boolean + - description: Filter apps by whether they are enabled for self-service. + in: query + name: filter[self_service] + required: false + schema: + type: boolean + - description: The fields and direction to sort apps by. + explode: false + in: query + name: sort + required: false + schema: + items: + $ref: "#/components/schemas/AppsSortField" + type: array + style: form + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: A sample app + favorite: false + name: My App + selfService: false + tags: + - "team:webshop" + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions + meta: + page: + totalCount: 1 + totalFilteredCount: 1 + schema: + $ref: "#/components/schemas/ListAppsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Apps + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + post: + description: Create a new app, returning the app ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CreateApp + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + name: Example App + queries: [] + rootInstanceName: grid0 + type: appDefinitions + schema: + $ref: "#/components/schemas/CreateAppRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions + schema: + $ref: "#/components/schemas/CreateAppResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create App + tags: + - App Builder + "x-permission": + operator: AND + permissions: + - apps_write + - connections_resolve + - workflows_run + /api/v2/app-builder/apps/{app_id}: + delete: + description: Delete a single app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: DeleteApp + parameters: + - description: The ID of the app to delete. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000002 + type: appDefinitions + schema: + $ref: "#/components/schemas/DeleteAppResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "410": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Gone + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete App + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + get: + description: Get the full definition of an app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: GetApp + parameters: + - description: The ID of the app to retrieve. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The version number of the app to retrieve. If not specified, the latest version is returned. Version numbers start at 1 and increment with each update. The special values `latest` and `deployed` can be used to retrieve the latest version or the published version, respectively. + in: query + name: version + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: A sample app + name: Example App + queries: [] + rootInstanceName: grid0 + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions + schema: + $ref: "#/components/schemas/GetAppResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "410": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Gone + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get App + tags: + - App Builder + "x-permission": + operator: AND + permissions: + - apps_run + - connections_read + patch: + description: Update an existing app. This creates a new version of the app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: UpdateApp + parameters: + - description: The ID of the app to update. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + name: Example App + queries: [] + rootInstanceName: grid0 + id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + type: appDefinitions + schema: + $ref: "#/components/schemas/UpdateAppRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + name: Example App + queries: [] + rootInstanceName: grid0 + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions + schema: + $ref: "#/components/schemas/UpdateAppResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update App + tags: + - App Builder + "x-permission": + operator: AND + permissions: + - apps_write + - connections_resolve + - workflows_run + /api/v2/app-builder/apps/{app_id}/deployment: + delete: + description: Unpublish an app, removing the live version of the app. Unpublishing creates a new instance of a `deployment` object on the app, with a nil `app_version_id` (`00000000-0000-0000-0000-000000000000`). The app can still be updated and published again in the future. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: UnpublishApp + parameters: + - description: The ID of the app to unpublish. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + app_version_id: 00000000-0000-0000-0000-000000000000 + id: 00000000-0000-0000-0000-000000000001 + type: deployment + schema: + $ref: "#/components/schemas/UnpublishAppResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Unpublish App + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + post: + description: Publish an app for use by other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: PublishApp + parameters: + - description: The ID of the app to publish. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + app_version_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: deployment + schema: + $ref: "#/components/schemas/PublishAppResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Publish App + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/favorite: + patch: + description: Add or remove an app from the current user's favorites. Favorited apps can be filtered for using the `filter[favorite]` query parameter on the [List Apps](https://docs.datadoghq.com/api/latest/app-builder/#list-apps) endpoint. + operationId: UpdateAppFavorite + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + favorite: true + type: favorites + schema: + $ref: "#/components/schemas/UpdateAppFavoriteRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update App Favorite Status + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + /api/v2/app-builder/apps/{app_id}/protection-level: + patch: + description: Update the publication protection level of an app. When set to `approval_required`, future publishes must go through an approval workflow before going live. + operationId: UpdateProtectionLevel + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + protectionLevel: approval_required + type: protectionLevel + schema: + $ref: "#/components/schemas/UpdateAppProtectionLevelRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + favorite: false + name: Example App + queries: [] + rootInstanceName: grid0 + tags: [] + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: appDefinitions + schema: + $ref: "#/components/schemas/UpdateAppResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update App Protection Level + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/publish-request: + post: + description: Create a publish request to ask for approval to publish an app whose protection level is `approval_required`. Publishing happens automatically once the request is approved by a user with the appropriate permissions. + operationId: CreatePublishRequest + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Adds new dashboard widgets and a few bug fixes. + title: Release v1.2 to production + type: publishRequest + schema: + $ref: "#/components/schemas/CreatePublishRequestRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + app_version_id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + meta: + created_at: "2026-04-01T12:00:00Z" + user_name: jane.doe@example.com + user_uuid: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: deployment + schema: + $ref: "#/components/schemas/PublishAppResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Publish Request + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/revert: + post: + description: Revert an app to a previous version. The version to revert to is selected through the `version` query parameter. The reverted version becomes the new latest version of the app. + operationId: RevertApp + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The version number of the app to revert to. Cannot be `latest`. The special value `deployed` can be used to revert to the currently published version. + example: "2" + in: query + name: version + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + favorite: false + name: Example App + queries: [] + rootInstanceName: grid0 + tags: [] + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: appDefinitions + schema: + $ref: "#/components/schemas/UpdateAppResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Revert App + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/self-service: + patch: + description: Enable or disable self-service for an app. Self-service apps can be discovered and run by users in your organization without explicit access being granted. + operationId: UpdateAppSelfService + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + selfService: true + type: selfService + schema: + $ref: "#/components/schemas/UpdateAppSelfServiceRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update App Self-Service Status + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/tags: + patch: + description: Replace the tags on an app. The provided list overwrites the existing tags entirely; tags not present in the request body are removed. + operationId: UpdateAppTags + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - team:platform + - service:ops + type: tags + schema: + $ref: "#/components/schemas/UpdateAppTagsRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update App Tags + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/version-name: + patch: + description: Assign a human-readable name to a specific version of an app. The version is selected through the `version` query parameter. + operationId: UpdateAppVersionName + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The version number of the app to name. The special values `latest` and `deployed` can also be used to target the latest or currently published version. + example: "3" + in: query + name: version + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: v1.2.0 - bug fix release + type: versionNames + schema: + $ref: "#/components/schemas/UpdateAppVersionNameRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Name App Version + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/versions: + get: + description: List the versions of an app. This endpoint is paginated. + operationId: ListAppVersions + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The number of versions to return per page. + in: query + name: limit + required: false + schema: + format: int64 + type: integer + - description: The page number to return. + in: query + name: page + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + app_id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + created_at: "2026-04-01T12:00:00Z" + has_ever_been_published: true + name: v1.2.0 - bug fix release + updated_at: "2026-04-01T12:00:00Z" + user_name: jane.doe@example.com + user_uuid: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + version: 3 + id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + type: appVersions + meta: + page: + totalCount: 1 + schema: + $ref: "#/components/schemas/ListAppVersionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List App Versions + tags: + - App Builder + "x-permission": + operator: AND + permissions: + - apps_run + - connections_read + /api/v2/app-builder/blueprint/{blueprint_id}: + get: + description: Retrieve an app blueprint by its ID. + operationId: GetBlueprint + parameters: + - description: The ID of the blueprint to retrieve. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: blueprint_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00Z" + definition: {} + description: Manage your AWS services from Datadog. + name: AWS Service Manager + slug: aws-service-manager + updated_at: "2024-01-01T00:00:00Z" + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: "#/components/schemas/GetBlueprintResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Blueprint + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/blueprints: + get: + description: List available app blueprints. + operationId: ListBlueprints + parameters: + - description: The number of blueprints to return per page. Defaults to 10. Maximum is 100. + in: query + name: limit + required: false + schema: + format: int64 + type: integer + - description: The page of results to return. Starts at 0. + in: query + name: page + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00Z" + description: Manage your AWS services from Datadog. + name: AWS Service Manager + slug: aws-service-manager + updated_at: "2024-01-01T00:00:00Z" + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: "#/components/schemas/ListBlueprintsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Blueprints + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/blueprints/integration-id/{integration_id}: + get: + description: List app blueprints associated with a specific integration ID. + operationId: GetBlueprintsByIntegrationId + parameters: + - description: The integration ID to filter blueprints by. + example: aws + in: path + name: integration_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00Z" + definition: {} + description: Manage your AWS services from Datadog. + integration_id: aws + name: AWS Service Manager + slug: aws-service-manager + updated_at: "2024-01-01T00:00:00Z" + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: "#/components/schemas/GetBlueprintsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Blueprints by Integration ID + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/blueprints/slugs/{slugs}: + get: + description: Retrieve app blueprints by their slugs. + operationId: GetBlueprintsBySlugs + parameters: + - description: A comma-separated list of blueprint slugs. + example: aws-service-manager + in: path + name: slugs + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00Z" + definition: {} + description: Manage your AWS services from Datadog. + name: AWS Service Manager + slug: aws-service-manager + updated_at: "2024-01-01T00:00:00Z" + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: "#/components/schemas/GetBlueprintsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Blueprints by Slugs + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/tags: + get: + description: List all tags associated with the authenticated user's apps. + operationId: ListTags + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: production + type: tag + schema: + $ref: "#/components/schemas/AppBuilderListTagsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Tags + tags: + - App Builder + "x-permission": + operator: OR + permissions: + - apps_run + /api/v2/application_keys: + get: + description: List all application keys available for your org + operationId: ListApplicationKeys + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/ApplicationKeysSortParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterOwnedByParameter" + - $ref: "#/components/parameters/ApplicationKeyIncludeParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000001 + type: application_keys + schema: + $ref: "#/components/schemas/ListApplicationKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all application keys + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - org_app_keys_read + /api/v2/application_keys/{app_key_id}: + delete: + description: Delete an application key + operationId: DeleteApplicationKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an application key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_app_keys_write + get: + description: Get an application key for your org. + operationId: GetApplicationKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyID" + - $ref: "#/components/parameters/ApplicationKeyIncludeParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000002 + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an application key + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - org_app_keys_read + patch: + description: Edit an application key + operationId: UpdateApplicationKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + id: 00112233-4455-6677-8899-aabbccddeeff + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000003 + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an application key + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_app_keys_write + /api/v2/audit/events: + get: + description: |- + List endpoint returns events that match a Audit Logs search query. + [Results are paginated][1]. + + Use this endpoint to see your latest Audit Logs events. + + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + operationId: ListAuditLogs + parameters: + - description: Search query following Audit Logs syntax. + example: "@type:session @application_id:xxxx" + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events. + example: "2019-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested events. + example: "2019-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/AuditLogsSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: "User logged in" + service: web-app + tags: + - "team:A" + timestamp: "2024-01-01T00:00:00+00:00" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: audit + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done + schema: + $ref: "#/components/schemas/AuditLogsEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a list of Audit Logs events + tags: ["Audit"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - audit_logs_read + /api/v2/audit/events/search: + post: + description: |- + List endpoint returns Audit Logs events that match an Audit search query. + [Results are paginated][1]. + + Use this endpoint to build complex Audit Logs events filtering and search. + + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + operationId: SearchAuditLogs + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: now-15m + query: "@type:session AND @session.type:user" + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/AuditLogsSearchEventsRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: "User logged in" + service: web-app + tags: + - team:A + timestamp: "2019-01-02T09:42:36.320Z" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: audit + links: + next: "https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done + schema: + $ref: "#/components/schemas/AuditLogsEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Search Audit Logs events + tags: ["Audit"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - audit_logs_read + /api/v2/authn_mappings: + get: + description: List all AuthN Mappings in the org. + operationId: ListAuthNMappings + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: Sort AuthN Mappings depending on the given field. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/AuthNMappingsSort" + - description: Filter all mappings by the given string. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by mapping resource type. Defaults to "role" if not specified. + in: query + name: resource_type + schema: + $ref: "#/components/schemas/AuthNMappingResourceType" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000003 + type: authn_mappings + schema: + $ref: "#/components/schemas/AuthNMappingsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all AuthN Mappings + tags: + - AuthN Mappings + "x-permission": + operator: OR + permissions: + - user_access_read + post: + description: Create an AuthN Mapping. + operationId: CreateAuthNMapping + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + type: authn_mappings + schema: + $ref: "#/components/schemas/AuthNMappingCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000004 + type: authn_mappings + schema: + $ref: "#/components/schemas/AuthNMappingResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an AuthN Mapping + tags: + - AuthN Mappings + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/authn_mappings/{authn_mapping_id}: + delete: + description: Delete an AuthN Mapping specified by AuthN Mapping UUID. + operationId: DeleteAuthNMapping + parameters: + - $ref: "#/components/parameters/AuthNMappingID" + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an AuthN Mapping + tags: + - AuthN Mappings + "x-permission": + operator: OR + permissions: + - user_access_manage + get: + description: Get an AuthN Mapping specified by the AuthN Mapping UUID. + operationId: GetAuthNMapping + parameters: + - $ref: "#/components/parameters/AuthNMappingID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000001 + type: authn_mappings + schema: + $ref: "#/components/schemas/AuthNMappingResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an AuthN Mapping by UUID + tags: + - AuthN Mappings + "x-permission": + operator: OR + permissions: + - user_access_read + patch: + description: Edit an AuthN Mapping. + operationId: UpdateAuthNMapping + parameters: + - $ref: "#/components/parameters/AuthNMappingID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: authn_mappings + schema: + $ref: "#/components/schemas/AuthNMappingUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000002 + type: authn_mappings + schema: + $ref: "#/components/schemas/AuthNMappingResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an AuthN Mapping + tags: + - AuthN Mappings + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/bits-ai/investigations: + get: + description: List all Bits AI investigations for the organization. + operationId: ListInvestigations + parameters: + - description: Offset for pagination. + example: 0 + in: query + name: page[offset] + required: false + schema: + format: int64 + type: integer + - description: Maximum number of investigations to return. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 25 + format: int64 + maximum: 100 + type: integer + - description: Filter investigations by monitor ID. + example: 12345678 + in: query + name: filter[monitor_id] + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + status: "conclusive" + title: "Monitor alert investigation for web-server-01" + id: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + type: investigation + links: + first: "https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10" + next: "https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=10&page[limit]=10" + self: "https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10" + meta: + page: + limit: 10 + offset: 0 + total: 50 + schema: + $ref: "#/components/schemas/ListInvestigationsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - bits_investigations_read + summary: List Bits AI investigations + tags: + - Bits AI + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + "x-permission": + operator: OR + permissions: + - bits_investigations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Trigger a new Bits AI investigation based on a monitor alert. + operationId: TriggerInvestigation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + trigger: + monitor_alert_trigger: + event_id: "1234567890123456789" + event_ts: 1700000000000 + monitor_id: 12345678 + type: monitor_alert_trigger + type: trigger_investigation_request + schema: + $ref: "#/components/schemas/TriggerInvestigationRequest" + description: Trigger investigation request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + investigation_id: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + id: "f5e6a7b8-c9d0-1e2f-3a4b-5c6d7e8f9a0b" + type: trigger_investigation_response + schema: + $ref: "#/components/schemas/TriggerInvestigationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - bits_investigations_write + summary: Trigger a Bits AI investigation + tags: + - Bits AI + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - bits_investigations_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/bits-ai/investigations/{id}: + get: + description: Get a specific Bits AI investigation by ID. + operationId: GetInvestigation + parameters: + - description: The ID of the investigation. + example: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + conclusions: + - description: "The investigation found that a memory leak in payments-service caused CPU usage to spike above 95% starting at 14:32 UTC." + summary: "CPU usage exceeded 95% for over 10 minutes on web-server-01." + title: "High CPU usage detected on web-server-01" + status: "conclusive" + title: "Monitor alert investigation for web-server-01" + id: "a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + type: investigation + links: + self: "https://app.datadoghq.com/bits-ai/investigations/a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d" + schema: + $ref: "#/components/schemas/GetInvestigationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - bits_investigations_read + summary: Get a Bits AI investigation + tags: + - Bits AI + "x-permission": + operator: OR + permissions: + - bits_investigations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cases: + get: + description: >- + Search cases. + operationId: SearchCases + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/CaseSortableFieldParameter" + - description: Search query + in: query + name: filter + required: false + schema: + example: "status:open (team:case-management OR team:event-management)" + type: string + - description: Specify if order is ascending or not + in: query + name: sort[asc] + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + meta: + page: + current: 1 + size: 10 + total: 1 + schema: + $ref: "#/components/schemas/CasesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Search cases + tags: + - Case Management + x-pagination: + limitParam: page[size] + pageParam: page[number] + pageStart: 1 + resultsPath: data + post: + description: Create a Case + operationId: CreateCase + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + priority: NOT_DEFINED + status_name: Open + title: Security breach investigation + type_id: 3b010bde-09ce-4449-b745-71dd5f861963 + relationships: + assignee: + data: + id: 00000000-0000-0000-0000-000000000000 + type: user + project: + data: + id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseCreateRequest" + description: Case payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a case + tags: + - Case Management + /api/v2/cases/aggregate: + post: + description: Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics. + operationId: AggregateCases + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + group_by: + groups: + - "status" + limit: 14 + query_filter: "service:case-api" + type: aggregate + schema: + $ref: "#/components/schemas/CaseAggregateRequest" + description: Case aggregate request payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + groups: + - group: OPEN + value: + - 42.0 + total: 100.0 + id: agg-result-001 + type: aggregate + schema: + $ref: "#/components/schemas/CaseAggregateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Aggregate cases + tags: + - Case Management + /api/v2/cases/bulk: + post: + description: Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body. + operationId: BulkUpdateCases + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + case_ids: + - "case-id-1" + - "case-id-2" + payload: + priority: "P1" + type: priority + type: bulk + schema: + $ref: "#/components/schemas/CaseBulkUpdateRequest" + description: Case bulk update request payload. + required: true + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Bulk update cases + tags: + - Case Management + /api/v2/cases/count: + get: + description: Returns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope. + operationId: CountCases + parameters: + - description: Filter query for cases. + in: query + name: query_filter + required: false + schema: + type: string + - description: Comma-separated fields to group by. + example: "status,priority" + in: query + name: group_bys + required: false + schema: + type: string + - description: Maximum facet values to return. + in: query + name: limit + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + groups: + - group: status + group_values: + - count: 42 + value: OPEN + id: count-result-001 + type: count + schema: + $ref: "#/components/schemas/CaseCountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Count cases + tags: + - Case Management + /api/v2/cases/link: + get: + description: Returns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters. + operationId: ListCaseLinks + parameters: + - description: "The entity type to look up links for. Use `CASE` to find links for a specific case." + in: query + name: entity_type + required: true + schema: + example: "CASE" + type: string + - description: "The UUID of the entity to look up links for." + in: query + name: entity_id + required: true + schema: + example: "bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f" + type: string + - description: "Optional filter to only return links of a specific relationship type (for example, `BLOCKS` or `CAUSES`)." + in: query + name: relationship + required: false + schema: + example: "BLOCKS" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d + child_entity_type: CASE + parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + parent_entity_type: CASE + relationship: BLOCKS + id: 804cd682-55f6-4541-ab00-b608b282ea7d + type: link + schema: + $ref: "#/components/schemas/CaseLinksResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: List case links + tags: + - Case Management + post: + description: Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified. + operationId: CreateCaseLink + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d + child_entity_type: CASE + parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + parent_entity_type: CASE + relationship: BLOCKS + type: link + schema: + $ref: "#/components/schemas/CaseLinkCreateRequest" + description: "Case link create request." + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d + child_entity_type: CASE + parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + parent_entity_type: CASE + relationship: BLOCKS + id: 804cd682-55f6-4541-ab00-b608b282ea7d + type: link + schema: + $ref: "#/components/schemas/CaseLinkResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a case link + tags: + - Case Management + /api/v2/cases/link/{link_id}: + delete: + description: Deletes an existing link between cases by link ID. + operationId: DeleteCaseLink + parameters: + - $ref: "#/components/parameters/LinkIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete a case link + tags: + - Case Management + /api/v2/cases/projects: + get: + description: >- + Get all projects. + operationId: GetProjects + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000002 + type: project + schema: + $ref: "#/components/schemas/ProjectsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get all projects + tags: + - Case Management + post: + description: Create a project. + operationId: CreateProject + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + type: project + schema: + $ref: "#/components/schemas/ProjectCreateRequest" + description: Project payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000001 + type: project + schema: + $ref: "#/components/schemas/ProjectResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a project + tags: + - Case Management + /api/v2/cases/projects/favorites: + get: + description: Returns the list of case projects that the current authenticated user has marked as favorites. + operationId: ListUserCaseProjectFavorites + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: project_favorite + schema: + $ref: "#/components/schemas/ProjectFavoritesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: List project favorites + tags: + - Case Management + /api/v2/cases/projects/{project_id}: + delete: + description: Remove a project using the project's `id`. + operationId: DeleteProject + parameters: + - $ref: "#/components/parameters/ProjectIDPathParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Remove a project + tags: + - Case Management + get: + description: >- + Get the details of a project by `project_id`. + operationId: GetProject + parameters: + - $ref: "#/components/parameters/ProjectIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000003 + type: project + schema: + $ref: "#/components/schemas/ProjectResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get the details of a project + tags: + - Case Management + patch: + description: >- + Update a project. + operationId: UpdateProject + parameters: + - $ref: "#/components/parameters/ProjectIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: project + schema: + $ref: "#/components/schemas/ProjectUpdateRequest" + description: Project payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000004 + type: project + schema: + $ref: "#/components/schemas/ProjectResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update a project + tags: + - Case Management + /api/v2/cases/projects/{project_id}/favorites: + delete: + description: Removes a case project from the current user's favorites list. + operationId: UnfavoriteCaseProject + parameters: + - $ref: "#/components/parameters/ProjectIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Unfavorite a project + tags: + - Case Management + post: + description: Marks a case project as a favorite for the current authenticated user. + operationId: FavoriteCaseProject + parameters: + - $ref: "#/components/parameters/ProjectIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Favorite a project + tags: + - Case Management + /api/v2/cases/projects/{project_id}/notification_rules: + get: + description: >- + Get all notification rules for a project. + operationId: GetProjectNotificationRules + parameters: + - description: Project UUID + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + is_enabled: true + query: "" + recipients: + - data: + email: test@example.com + type: EMAIL + triggers: + - data: {} + type: CASE_CREATED + id: 00000000-0000-0000-0000-000000000001 + type: notification_rule + schema: + $ref: "#/components/schemas/CaseNotificationRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get notification rules + tags: + - Case Management + post: + description: Create a notification rule for a project. + operationId: CreateProjectNotificationRule + parameters: + - description: Project UUID + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + recipients: + - type: EMAIL + triggers: + - type: CASE_CREATED + type: notification_rule + schema: + $ref: "#/components/schemas/CaseNotificationRuleCreateRequest" + description: Notification rule payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + is_enabled: true + query: "" + recipients: + - data: + email: test@example.com + type: EMAIL + triggers: + - data: {} + type: CASE_CREATED + id: 00000000-0000-0000-0000-000000000002 + type: notification_rule + schema: + $ref: "#/components/schemas/CaseNotificationRuleResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a notification rule + tags: + - Case Management + /api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id}: + delete: + description: Delete a notification rule using the notification rule's `id`. + operationId: DeleteProjectNotificationRule + parameters: + - description: Project UUID + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/NotificationRuleIDPathParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete a notification rule + tags: + - Case Management + put: + description: >- + Update a notification rule. + operationId: UpdateProjectNotificationRule + parameters: + - description: Project UUID + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/NotificationRuleIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + recipients: + - type: EMAIL + triggers: + - type: CASE_CREATED + type: notification_rule + schema: + $ref: "#/components/schemas/CaseNotificationRuleUpdateRequest" + description: Notification rule payload + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update a notification rule + tags: + - Case Management + /api/v2/cases/projects/{project_id}/rules: + get: + description: Returns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes. + operationId: ListCaseAutomationRules + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: "2024-01-01T00:00:00.000Z" + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule + schema: + $ref: "#/components/schemas/AutomationRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: List automation rules + tags: + - Case Management + post: + description: Creates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute. + operationId: CreateCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleCreateRequest" + description: Automation rule payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: "2024-01-01T00:00:00.000Z" + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create an automation rule + tags: + - Case Management + /api/v2/cases/projects/{project_id}/rules/{rule_id}: + delete: + description: Permanently deletes an automation rule from a project. + operationId: DeleteCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/RuleIDPathParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete an automation rule + tags: + - Case Management + get: + description: Returns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled). + operationId: GetCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/RuleIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: "2024-01-01T00:00:00.000Z" + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get an automation rule + tags: + - Case Management + put: + description: Updates the trigger, action, name, or state of an existing automation rule. + operationId: UpdateCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/RuleIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleUpdateRequest" + description: Automation rule payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: "2024-01-01T00:00:00.000Z" + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update an automation rule + tags: + - Case Management + /api/v2/cases/projects/{project_id}/rules/{rule_id}/disable: + post: + description: Disables an automation rule so it no longer triggers on case events. The rule configuration is preserved. + operationId: DisableCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/RuleIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: "2024-01-01T00:00:00.000Z" + name: Auto-assign workflow + state: DISABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Disable an automation rule + tags: + - Case Management + /api/v2/cases/projects/{project_id}/rules/{rule_id}/enable: + post: + description: Enables a previously disabled automation rule so it triggers on matching case events. + operationId: EnableCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: "e555e290-ed65-49bd-ae18-8acbfcf18db7" + in: path + name: project_id + required: true + schema: + type: string + - $ref: "#/components/parameters/RuleIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: "2024-01-01T00:00:00.000Z" + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule + schema: + $ref: "#/components/schemas/AutomationRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Enable an automation rule + tags: + - Case Management + /api/v2/cases/types: + get: + description: Get all case types + operationId: GetAllCaseTypes + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Investigations done in case management + emoji: "🕵🏻‍♂️" + name: Investigation + id: 00000000-0000-0000-0000-000000000001 + type: case_type + schema: + $ref: "#/components/schemas/CaseTypesResponse" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all case types + tags: + - Case Management Type + post: + description: Create a Case Type + operationId: CreateCaseType + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: 🕵🏻‍♂️ + name: Investigation + type: case_type + schema: + $ref: "#/components/schemas/CaseTypeCreateRequest" + description: Case type payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: "🕵🏻‍♂️" + name: Investigation + id: 00000000-0000-0000-0000-000000000001 + type: case_type + schema: + $ref: "#/components/schemas/CaseTypeResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a case type + tags: + - Case Management Type + /api/v2/cases/types/custom_attributes: + get: + description: Get all custom attributes + operationId: GetAllCustomAttributes + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + case_type_id: 00000000-0000-0000-0000-000000000002 + description: "AWS Region, must be a valid region supported by AWS" + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000001 + type: custom_attribute + schema: + $ref: "#/components/schemas/CustomAttributeConfigsResponse" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all custom attributes + tags: + - Case Management Attribute + /api/v2/cases/types/{case_type_id}: + delete: + description: Delete a case type + operationId: DeleteCaseType + parameters: + - $ref: "#/components/parameters/CaseTypeIDPathParameter" + responses: + "204": + description: No Content + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a case type + tags: + - Case Management Type + put: + description: Updates the name, emoji, or description of an existing case type. + operationId: UpdateCaseType + parameters: + - $ref: "#/components/parameters/CaseTypeIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: "🕵🏻‍♂️" + name: Investigation + type: case_type + schema: + $ref: "#/components/schemas/CaseTypeUpdateRequest" + description: Case type payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: "🕵🏻‍♂️" + name: Investigation + id: 00000000-0000-0000-0000-000000000001 + type: case_type + schema: + $ref: "#/components/schemas/CaseTypeResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_shared_settings_write + summary: Update a case type + tags: + - Case Management Type + /api/v2/cases/types/{case_type_id}/custom_attributes: + get: + description: Get all custom attribute config of case type + operationId: GetAllCustomAttributeConfigsByCaseType + parameters: + - $ref: "#/components/parameters/CaseTypeIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + case_type_id: 00000000-0000-0000-0000-000000000004 + description: "AWS Region, must be a valid region supported by AWS" + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000003 + type: custom_attribute + schema: + $ref: "#/components/schemas/CustomAttributeConfigsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all custom attributes config of case type + tags: + - Case Management Attribute + post: + description: Create custom attribute config for a case type + operationId: CreateCustomAttributeConfig + parameters: + - $ref: "#/components/parameters/CaseTypeIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: AWS Region, must be a valid region supported by AWS + display_name: AWS Region + is_multi: true + key: aws_region + type: NUMBER + type: custom_attribute + schema: + $ref: "#/components/schemas/CustomAttributeConfigCreateRequest" + description: Custom attribute config payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + case_type_id: 00000000-0000-0000-0000-000000000006 + description: "AWS Region, must be a valid region supported by AWS" + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000005 + type: custom_attribute + schema: + $ref: "#/components/schemas/CustomAttributeConfigResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create custom attribute config for a case type + tags: + - Case Management Attribute + /api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id}: + delete: + description: Delete custom attribute config + operationId: DeleteCustomAttributeConfig + parameters: + - $ref: "#/components/parameters/CaseTypeIDPathParameter" + - $ref: "#/components/parameters/CaseCustomAttributeIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete custom attributes config + tags: + - Case Management Attribute + put: + description: Updates the display name, description, type, or options of an existing custom attribute configuration for a case type. + operationId: UpdateCustomAttributeConfig + parameters: + - $ref: "#/components/parameters/CaseTypeIDPathParameter" + - $ref: "#/components/parameters/CaseCustomAttributeIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Updated description. + display_name: AWS Region + type: custom_attribute + schema: + $ref: "#/components/schemas/CustomAttributeConfigUpdateRequest" + description: Custom attribute config payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + case_type_id: 00000000-0000-0000-0000-000000000006 + description: Updated description. + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000005 + type: custom_attribute + schema: + $ref: "#/components/schemas/CustomAttributeConfigResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_shared_settings_write + summary: Update custom attribute config + tags: + - Case Management Attribute + /api/v2/cases/views: + get: + description: Returns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases. + operationId: ListCaseViews + parameters: + - description: Filter views by project identifier. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: query + name: project_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00.000Z" + name: Open bugs + query: "status:open type:bug" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view + schema: + $ref: "#/components/schemas/CaseViewsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: List case views + tags: + - Case Management + post: + description: Creates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view. + operationId: CreateCaseView + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Open bugs + project_id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + query: "status:open type:bug" + type: view + schema: + $ref: "#/components/schemas/CaseViewCreateRequest" + description: Case view payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + name: Open bugs + query: "status:open type:bug" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view + schema: + $ref: "#/components/schemas/CaseViewResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a case view + tags: + - Case Management + /api/v2/cases/views/{view_id}: + delete: + description: Permanently deletes a saved case view. + operationId: DeleteCaseView + parameters: + - $ref: "#/components/parameters/ViewIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete a case view + tags: + - Case Management + get: + description: Returns a single saved case view identified by its UUID, including its query, associated project, and timestamps. + operationId: GetCaseView + parameters: + - $ref: "#/components/parameters/ViewIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + name: Open bugs + query: "status:open type:bug" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view + schema: + $ref: "#/components/schemas/CaseViewResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get a case view + tags: + - Case Management + put: + description: Updates the name, query, or notification rule of an existing case view. + operationId: UpdateCaseView + parameters: + - $ref: "#/components/parameters/ViewIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated view name + type: view + schema: + $ref: "#/components/schemas/CaseViewUpdateRequest" + description: Case view payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + name: Updated view name + query: "status:open type:bug" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view + schema: + $ref: "#/components/schemas/CaseViewResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update a case view + tags: + - Case Management + /api/v2/cases/{case_id}: + get: + description: >- + Get the details of case by `case_id` + operationId: GetCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get the details of a case + tags: + - Case Management + /api/v2/cases/{case_id}/archive: + post: + description: Archive case + operationId: ArchiveCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: case + schema: + $ref: "#/components/schemas/CaseEmptyRequest" + description: Archive case payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Archive case + tags: + - Case Management + /api/v2/cases/{case_id}/assign: + post: + description: Assign case to a user + operationId: AssignCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee_id: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 + type: case + schema: + $ref: "#/components/schemas/CaseAssignRequest" + description: Assign case payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Assign case + tags: + - Case Management + /api/v2/cases/{case_id}/attributes: + post: + description: Update case attributes + operationId: UpdateAttributes + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: + env: + - prod + service: + - web-store + - web-api + team: + - engineering + type: case + schema: + $ref: "#/components/schemas/CaseUpdateAttributesRequest" + description: Case attributes update payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case attributes + tags: + - Case Management + /api/v2/cases/{case_id}/comment: + post: + description: Comment case + operationId: CommentCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + comment: This is my comment ! + type: case + schema: + $ref: "#/components/schemas/CaseCommentRequest" + description: Case comment payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cell_content: + message: This is my comment ! + created_at: "2024-01-01T00:00:00+00:00" + type: COMMENT + id: 00000000-0000-0000-0000-000000000001 + type: timeline_cell + schema: + $ref: "#/components/schemas/TimelineResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Comment case + tags: + - Case Management + /api/v2/cases/{case_id}/comment/{cell_id}: + delete: + description: Delete case comment + operationId: DeleteCaseComment + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - $ref: "#/components/parameters/CellIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete case comment + tags: + - Case Management + put: + description: Updates the text content of an existing comment on a case timeline. The comment is identified by its cell ID. + operationId: UpdateCaseComment + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - $ref: "#/components/parameters/CellIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + comment: Updated comment text + type: case + schema: + $ref: "#/components/schemas/CaseUpdateCommentRequest" + description: Case update comment payload. + required: true + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case comment + tags: + - Case Management + /api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key}: + delete: + description: Delete custom attribute from case + operationId: DeleteCaseCustomAttribute + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - $ref: "#/components/parameters/CaseCustomAttributeKeyPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete custom attribute from case + tags: + - Case Management + post: + description: Update case custom attribute + operationId: UpdateCaseCustomAttribute + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - $ref: "#/components/parameters/CaseCustomAttributeKeyPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + is_multi: false + type: NUMBER + value: 42 + type: case + schema: + $ref: "#/components/schemas/CaseUpdateCustomAttributeRequest" + description: Update case custom attribute payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case custom attribute + tags: + - Case Management + /api/v2/cases/{case_id}/description: + post: + description: Update case description + operationId: UpdateCaseDescription + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Seeing some weird memory increase... We shouldn't ignore this + type: case + schema: + $ref: "#/components/schemas/CaseUpdateDescriptionRequest" + description: Case description update payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case description + tags: + - Case Management + /api/v2/cases/{case_id}/due_date: + post: + description: Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved. + operationId: UpdateCaseDueDate + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + due_date: "2026-12-31" + type: case + schema: + $ref: "#/components/schemas/CaseUpdateDueDateRequest" + description: Case due date update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case due date + tags: + - Case Management + /api/v2/cases/{case_id}/insights: + delete: + description: Removes one or more previously added insights from a case by specifying their type and resource identifier in the request body. + operationId: RemoveCaseInsights + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + insights: + - ref: "/monitors/12345?q=total" + resource_id: "12345" + type: SECURITY_SIGNAL + type: case + schema: + $ref: "#/components/schemas/CaseInsightsRequest" + description: Case insights request. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Remove insights from a case + tags: + - Case Management + put: + description: >- + Adds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see `CaseInsightType` for allowed values), a ref (URL path to the resource), and a resource_id. + operationId: AddCaseInsights + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + insights: + - ref: "/monitors/12345?q=total" + resource_id: "12345" + type: SECURITY_SIGNAL + type: case + schema: + $ref: "#/components/schemas/CaseInsightsRequest" + description: Case insights request. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Add insights to a case + tags: + - Case Management + /api/v2/cases/{case_id}/priority: + post: + description: Update case priority + operationId: UpdatePriority + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + priority: NOT_DEFINED + type: case + schema: + $ref: "#/components/schemas/CaseUpdatePriorityRequest" + description: Case priority update payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case priority + tags: + - Case Management + /api/v2/cases/{case_id}/relationships/incidents: + post: + description: Link an incident to a case + operationId: LinkIncident + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incidents + schema: + $ref: "#/components/schemas/RelationshipToIncidentRequest" + description: Incident link request + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + key: CASEM-4523 + priority: NOT_DEFINED + status: OPEN + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000002 + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Link incident to case + tags: + - Case Management + /api/v2/cases/{case_id}/relationships/jira_issues: + delete: + description: Remove the link between a Jira issue and a case + operationId: UnlinkJiraIssue + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Remove Jira issue link from case + tags: + - Case Management + patch: + description: Link an existing Jira issue to a case + operationId: LinkJiraIssueToCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + jira_issue_url: https://jira.example.com/browse/PROJ-123 + type: issues + schema: + $ref: "#/components/schemas/JiraIssueLinkRequest" + description: Jira issue link request + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Link existing Jira issue to case + tags: + - Case Management + post: + description: Create a new Jira issue and link it to a case + operationId: CreateCaseJiraIssue + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: {} + issue_type_id: "10001" + jira_account_id: "1234" + project_id: "5678" + type: issues + schema: + $ref: "#/components/schemas/JiraIssueCreateRequest" + description: Jira issue creation request + required: true + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create Jira issue for case + tags: + - Case Management + /api/v2/cases/{case_id}/relationships/notebook: + post: + description: Create a new investigation notebook and link it to a case + operationId: CreateCaseNotebook + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: notebook + schema: + $ref: "#/components/schemas/NotebookCreateRequest" + description: Notebook creation request + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create investigation notebook for case + tags: + - Case Management + /api/v2/cases/{case_id}/relationships/project: + patch: + description: Update the project associated with a case + operationId: MoveCaseToProject + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: project + schema: + $ref: "#/components/schemas/ProjectRelationship" + description: Project update request + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + key: CASEM-4523 + priority: NOT_DEFINED + status: OPEN + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case project + tags: + - Case Management + /api/v2/cases/{case_id}/relationships/servicenow_tickets: + post: + description: Create a new ServiceNow incident ticket and link it to a case + operationId: CreateCaseServiceNowTicket + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group: IT Support + instance_name: my-instance + type: tickets + schema: + $ref: "#/components/schemas/ServiceNowTicketCreateRequest" + description: ServiceNow ticket creation request + required: true + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create ServiceNow ticket for case + tags: + - Case Management + /api/v2/cases/{case_id}/resolved_reason: + post: + description: Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases. + operationId: UpdateCaseResolvedReason + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + security_resolved_reason: "FALSE_POSITIVE" + type: case + schema: + $ref: "#/components/schemas/CaseUpdateResolvedReasonRequest" + description: Case resolved reason update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case resolved reason + tags: + - Case Management + /api/v2/cases/{case_id}/status: + post: + description: Update case status + operationId: UpdateStatus + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + status: OPEN + status_name: Open + type: case + schema: + $ref: "#/components/schemas/CaseUpdateStatusRequest" + description: Case status update payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case status + tags: + - Case Management + /api/v2/cases/{case_id}/timelines: + get: + description: Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order. + operationId: ListCaseTimeline + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - description: Number of timeline cells to return per page. + in: query + name: page[size] + required: false + schema: + default: 100 + format: int64 + type: integer + - description: Zero-based page number for pagination. + in: query + name: page[number] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: "If `true`, returns timeline cells in chronological order (oldest first). Defaults to `false` (newest first)." + in: query + name: sort[ascending] + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cell_content: + message: This is a comment + created_at: "2024-01-01T00:00:00+00:00" + type: COMMENT + id: 00000000-0000-0000-0000-000000000001 + type: timeline_cell + schema: + $ref: "#/components/schemas/TimelineResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get case timeline + tags: + - Case Management + /api/v2/cases/{case_id}/title: + post: + description: Update case title + operationId: UpdateCaseTitle + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + title: Memory leak investigation on API + type: case + schema: + $ref: "#/components/schemas/CaseUpdateTitleRequest" + description: Case title update payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case title + tags: + - Case Management + /api/v2/cases/{case_id}/unarchive: + post: + description: Unarchive case + operationId: UnarchiveCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: case + schema: + $ref: "#/components/schemas/CaseEmptyRequest" + description: Unarchive case payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Unarchive case + tags: + - Case Management + /api/v2/cases/{case_id}/unassign: + post: + description: Unassign case + operationId: UnassignCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: case + schema: + $ref: "#/components/schemas/CaseEmptyRequest" + description: Unassign case payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: "#/components/schemas/CaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Unassign case + tags: + - Case Management + /api/v2/cases/{case_id}/watchers: + get: + description: Returns the list of users who are watching a case. Watchers receive notifications about updates to the case. + operationId: ListCaseWatchers + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: 8146583c-0b5f-11ec-abf8-da7ad0900001 + relationships: + user: + data: + id: 8146583c-0b5f-11ec-abf8-da7ad0900001 + type: user + type: watcher + schema: + $ref: "#/components/schemas/CaseWatchersResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: List case watchers + tags: + - Case Management + /api/v2/cases/{case_id}/watchers/{user_uuid}: + delete: + description: Removes a user from the watchers list of a case. The user no longer receives notifications about updates to the case. + operationId: UnwatchCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - $ref: "#/components/parameters/UserUUIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Unwatch a case + tags: + - Case Management + post: + description: Adds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case. + operationId: WatchCase + parameters: + - $ref: "#/components/parameters/CaseIDPathParameter" + - $ref: "#/components/parameters/UserUUIDPathParameter" + responses: + "201": + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Watch a case + tags: + - Case Management + /api/v2/catalog/entity: + get: + description: Get a list of entities from Software Catalog. + operationId: ListCatalogEntity + parameters: + - $ref: "#/components/parameters/PageOffset" + - description: Maximum number of entities in the response. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + - $ref: "#/components/parameters/FilterByID" + - $ref: "#/components/parameters/FilterByRef" + - $ref: "#/components/parameters/FilterByName" + - $ref: "#/components/parameters/FilterByKind" + - $ref: "#/components/parameters/FilterByOwner" + - $ref: "#/components/parameters/FilterByRelationType" + - $ref: "#/components/parameters/FilterByExcludeSnapshot" + - $ref: "#/components/parameters/Include" + - description: If true, includes discovered services from APM and USM that do not have entity definitions. + in: query + name: includeDiscovered + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + apiVersion: v3 + kind: service + name: myService + namespace: default + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: entity + meta: + count: 1 + includeCount: 0 + schema: + $ref: "#/components/schemas/ListEntityCatalogResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get a list of entities + tags: + - Software Catalog + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + post: + description: Create or update entities in Software Catalog. + operationId: UpsertCatalogEntity + requestBody: + content: + application/json: + examples: + default: + value: + apiVersion: v3 + integrations: + opsgenie: + serviceURL: https://www.opsgenie.com/service/shopping-cart + pagerduty: + serviceURL: https://www.pagerduty.com/service-directory/Pshopping-cart + kind: service + metadata: + additionalOwners: + - name: "" + contacts: + - contact: https://slack/ + type: slack + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + inheritFrom: application:default/myapp + links: + - name: mylink + type: link + url: https://mylink + name: myService + namespace: default + tags: + - this:tag + - that:tag + schema: + $ref: "#/components/schemas/UpsertCatalogEntityRequest" + description: Entity YAML or JSON. + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + - attributes: + apiVersion: v3 + kind: service + name: myService + namespace: default + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: entity + meta: + count: 1 + includeCount: 0 + schema: + $ref: "#/components/schemas/UpsertCatalogEntityResponse" + description: ACCEPTED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Create or update entities + tags: + - Software Catalog + x-codegen-request-body-name: body + /api/v2/catalog/entity/preview: + post: + operationId: PreviewCatalogEntities + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + - id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: entity + schema: + $ref: "#/components/schemas/EntityResponseArray" + description: Accepted + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Preview catalog entities + tags: + - Software Catalog + /api/v2/catalog/entity/{entity_id}: + delete: + description: Delete a single entity in Software Catalog. + operationId: DeleteCatalogEntity + parameters: + - $ref: "#/components/parameters/EntityID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Delete a single entity + tags: + - Software Catalog + /api/v2/catalog/kind: + get: + description: Get a list of entity kinds from Software Catalog. + operationId: ListCatalogKind + parameters: + - $ref: "#/components/parameters/PageOffset" + - description: Maximum number of kinds in the response. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + - $ref: "#/components/parameters/FilterByID" + - $ref: "#/components/parameters/FilterByName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: A job entity in the catalog. + displayName: My Job + name: my-job + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: kind + meta: + count: 1 + schema: + $ref: "#/components/schemas/ListKindCatalogResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get a list of entity kinds + tags: + - Software Catalog + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + post: + description: Create or update kinds in Software Catalog. + operationId: UpsertCatalogKind + requestBody: + content: + application/json: + examples: + default: + value: + kind: my-job + schema: + $ref: "#/components/schemas/UpsertCatalogKindRequest" + description: Kind YAML or JSON. + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: A job entity in the catalog. + displayName: My Job + name: my-job + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: kind + meta: + count: 1 + schema: + $ref: "#/components/schemas/UpsertCatalogKindResponse" + description: ACCEPTED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Create or update kinds + tags: + - Software Catalog + x-codegen-request-body-name: body + /api/v2/catalog/kind/{kind_id}: + delete: + description: Delete a single kind in Software Catalog. + operationId: DeleteCatalogKind + parameters: + - $ref: "#/components/parameters/KindID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Delete a single kind + tags: + - Software Catalog + /api/v2/catalog/relation: + get: + description: Get a list of entity relations from Software Catalog. + operationId: ListCatalogRelation + parameters: + - $ref: "#/components/parameters/PageOffset" + - description: Maximum number of relations in the response. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + - $ref: "#/components/parameters/FilterRelationByType" + - $ref: "#/components/parameters/FilterRelationByFromRef" + - $ref: "#/components/parameters/FilterRelationByToRef" + - $ref: "#/components/parameters/RelationInclude" + - description: If true, includes relationships discovered by APM and USM. + in: query + name: includeDiscovered + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + from: + kind: service + name: test-service + to: + kind: service + name: other-service + type: RelationTypeOwns + id: abc-123 + type: relation + meta: + count: 1 + schema: + $ref: "#/components/schemas/ListRelationCatalogResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get a list of entity relations + tags: + - Software Catalog + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + /api/v2/change-management/change-request: + post: + description: Create a new change request. + operationId: CreateChangeRequest + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_request_linked_incident_uuid: 00000000-0000-0000-0000-000000000000 + change_request_maintenance_window_query: "" + change_request_plan: 1. Deploy to staging 2. Run tests 3. Deploy to production + change_request_risk: LOW + change_request_type: NORMAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T15:00:00Z" + project_id: d4bbe1af-f36e-42f1-87c1-493ca35c320e + requested_teams: + - team-handle-1 + start_date: "2024-01-01T03:00:00Z" + title: Deploy new payment service + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestCreateRequest" + description: Change request payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: "" + change_request_maintenance_window_query: "" + change_request_plan: "" + change_request_risk: LOW + change_request_type: NORMAL + created_at: "2024-01-01T00:00:00+00:00" + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T00:00:00+00:00" + key: CHM-1234 + modified_at: "2024-01-01T00:00:00+00:00" + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: "2024-01-01T00:00:00+00:00" + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a change request + tags: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/change-management/change-request/{change_request_id}: + get: + description: Get the details of a change request by its ID. + operationId: GetChangeRequest + parameters: + - $ref: "#/components/parameters/ChangeRequestIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: "" + change_request_maintenance_window_query: "" + change_request_plan: "" + change_request_risk: LOW + change_request_type: NORMAL + created_at: "2024-01-01T00:00:00+00:00" + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T00:00:00+00:00" + key: CHM-1234 + modified_at: "2024-01-01T00:00:00+00:00" + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: "2024-01-01T00:00:00+00:00" + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: Get a change request + tags: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the properties of a change request. + operationId: UpdateChangeRequest + parameters: + - $ref: "#/components/parameters/ChangeRequestIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_request_plan: Updated deployment plan + change_request_risk: LOW + change_request_type: NORMAL + end_date: "2024-01-02T15:00:00Z" + id: CHM-1234 + start_date: "2024-01-01T03:00:00Z" + relationships: + change_request_decisions: + data: + - id: decision-id-0 + type: change_request + included: + - attributes: + change_request_status: REQUESTED + request_reason: Please review and approve this change + id: decision-id-0 + type: change_request_decision + schema: + $ref: "#/components/schemas/ChangeRequestUpdateRequest" + description: Change request update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: "" + change_request_maintenance_window_query: "" + change_request_plan: "" + change_request_risk: LOW + change_request_type: NORMAL + created_at: "2024-01-01T00:00:00+00:00" + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T00:00:00+00:00" + key: CHM-1234 + modified_at: "2024-01-01T00:00:00+00:00" + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: "2024-01-01T00:00:00+00:00" + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update a change request + tags: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/change-management/change-request/{change_request_id}/branch: + post: + description: Create a new branch in a repository for a change request. + operationId: CreateChangeRequestBranch + parameters: + - $ref: "#/components/parameters/ChangeRequestIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + branch_name: chm/CHM-1234 + repo_id: DataDog/test-repo + type: change_request_branch + schema: + $ref: "#/components/schemas/ChangeRequestBranchCreateRequest" + description: Branch creation payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: "" + change_request_maintenance_window_query: "" + change_request_plan: "" + change_request_risk: LOW + change_request_type: NORMAL + created_at: "2024-01-01T00:00:00+00:00" + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T00:00:00+00:00" + key: CHM-1234 + modified_at: "2024-01-01T00:00:00+00:00" + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: "2024-01-01T00:00:00+00:00" + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Create a change request branch + tags: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/change-management/change-request/{change_request_id}/decisions/{decision_id}: + delete: + description: Delete a decision from a change request. + operationId: DeleteChangeRequestDecision + parameters: + - $ref: "#/components/parameters/ChangeRequestIDPathParameter" + - $ref: "#/components/parameters/ChangeRequestDecisionIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: "" + change_request_maintenance_window_query: "" + change_request_plan: "" + change_request_risk: LOW + change_request_type: NORMAL + created_at: "2024-01-01T00:00:00+00:00" + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T00:00:00+00:00" + key: CHM-1234 + modified_at: "2024-01-01T00:00:00+00:00" + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: "2024-01-01T00:00:00+00:00" + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete a change request decision + tags: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a decision on a change request, such as approving or declining it. + operationId: UpdateChangeRequestDecision + parameters: + - $ref: "#/components/parameters/ChangeRequestIDPathParameter" + - $ref: "#/components/parameters/ChangeRequestDecisionIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + id: CHM-1234 + relationships: + change_request_decisions: + data: + - id: decision-id-0 + type: change_request + included: + - attributes: + change_request_status: REQUESTED + request_reason: Please review and approve this change + id: decision-id-0 + type: change_request_decision + schema: + $ref: "#/components/schemas/ChangeRequestDecisionUpdateRequest" + description: Decision update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: "" + change_request_maintenance_window_query: "" + change_request_plan: "" + change_request_risk: LOW + change_request_type: NORMAL + created_at: "2024-01-01T00:00:00+00:00" + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: "2024-01-02T00:00:00+00:00" + key: CHM-1234 + modified_at: "2024-01-01T00:00:00+00:00" + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: "2024-01-01T00:00:00+00:00" + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request + schema: + $ref: "#/components/schemas/ChangeRequestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update a change request decision + tags: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/ci/github/accounts: + get: + description: |- + Retrieve the list of GitHub accounts (organizations or users) available to this Datadog organization + through its GitHub App installation, along with each account's and repository's CI Visibility opt-in status. + operationId: ListCIAppGitHubAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account: datadog + enabled: true + host: github.com + repo_count: 2 + repositories: + - enabled: true + name: shopist + - enabled: false + name: dd-source + id: github.com/datadog + type: ci_github_account + schema: + $ref: "#/components/schemas/CIAppGitHubAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: List GitHub CI Visibility status + tags: ["CI Visibility GitHub Accounts"] + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: |- + Enable or disable CI Visibility for a GitHub account, one of its repositories, or both in the same request. + The account (and, optionally, repository) are identified by name. Account-level and repository-level + changes are independent and may both be supplied in the same request. At least one of `enabled` or + `repository.enabled` must be provided. If the account name matches installations on more than one host, + `host` must be supplied to disambiguate, otherwise a 409 is returned. Returns a 404 if the CI Visibility + GitHub integration is not enabled for this organization, or if the given account or repository cannot be + found by name. + operationId: UpdateCIAppGitHubAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account: datadog + enabled: true + host: github.com + repository: + enabled: true + name: shopist + type: ci_github_account + schema: + $ref: "#/components/schemas/CIAppGitHubAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account: datadog + enabled: true + host: github.com + repo_count: 2 + repositories: + - enabled: true + name: shopist + - enabled: false + name: dd-source + id: github.com/datadog + type: ci_github_account + schema: + $ref: "#/components/schemas/CIAppGitHubAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_provider_settings_write + summary: Update GitHub CI Visibility status + tags: ["CI Visibility GitHub Accounts"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - ci_provider_settings_write + /api/v2/ci/pipeline: + post: + description: |- + Send your pipeline event to your Datadog platform over HTTP. For details about how pipeline executions are modeled and what execution types we support, see [Pipeline Data Model And Execution Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/). + + Multiple events can be sent in an array (up to 1000). + + Pipeline events can be submitted with a timestamp that is up to 18 hours in the past. + The duration between the event start and end times cannot exceed 1 year. + operationId: CreateCIAppPipelineEvent + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource: + end: "2024-11-25T20:08:11.018Z" + git: + author_email: john.doe@email.com + repository_url: https://github.com/organization/example-repository + sha: 7f263865994b76066c4612fd1965215e7dcb4cd2 + level: pipeline + name: Deploy to AWS + partial_retry: false + start: "2024-11-25T20:06:41.018Z" + status: success + unique_id: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a + url: https://my-ci-provider.example/pipelines/my-pipeline/run/1 + type: cipipeline_resource_request + schema: + $ref: "#/components/schemas/CIAppCreatePipelineEventRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: Request accepted for processing + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Forbidden + "408": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Request Timeout + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Payload Too Large + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Too Many Requests + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + "503": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Service Unavailable + security: + - apiKeyAuth: [] + summary: Send pipeline event + tags: ["CI Visibility Pipelines"] + x-codegen-request-body-name: body + /api/v2/ci/pipelines/analytics/aggregate: + post: + description: |- + Use this API endpoint to aggregate CI Visibility pipeline events into buckets of computed metrics and timeseries. + operationId: AggregateCIAppPipelineEvents + requestBody: + content: + "application/json": + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: "@duration" + type: timeseries + filter: + from: now-15m + query: "@ci.provider.name:github AND @ci.status:error" + to: now + group_by: + - facet: "@ci.status" + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + schema: + $ref: "#/components/schemas/CIAppPipelinesAggregateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + buckets: + - by: + "@ci.status": error + computes: + pc90: + - time: "2020-06-08T11:55:00.123Z" + value: 2345 + schema: + $ref: "#/components/schemas/CIAppPipelinesAnalyticsAggregateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_visibility_read + summary: Aggregate pipelines events + tags: ["CI Visibility Pipelines"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - ci_visibility_read + /api/v2/ci/pipelines/events: + get: + description: |- + List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to see your latest pipeline events. + operationId: ListCIAppPipelineEvents + parameters: + - description: Search query following log syntax. + example: "@ci.provider.name:github @ci.pipeline.name:Pull Request Labeler" + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events. + example: "2019-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested events. + example: "2019-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/CIAppSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + meta: + page: {} + schema: + $ref: "#/components/schemas/CIAppPipelineEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_visibility_read + summary: Get a list of pipelines events + tags: ["CI Visibility Pipelines"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - ci_visibility_read + /api/v2/ci/pipelines/events/search: + post: + description: |- + List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to build complex events filtering and search. + operationId: SearchCIAppPipelineEvents + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: now-15m + query: "@ci.provider.name:github AND @ci.status:error" + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/CIAppPipelineEventsRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + attributes: + duration: 2345 + ci_level: pipeline + tags: + - team:backend + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: cipipeline + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done + schema: + $ref: "#/components/schemas/CIAppPipelineEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_visibility_read + summary: Search pipelines events + tags: ["CI Visibility Pipelines"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - ci_visibility_read + /api/v2/ci/test-optimization/settings/policies: + patch: + description: |- + Partially update Flaky Tests Management repository-level policies for the given repository. + Only provided policy blocks are updated; omitted blocks are left unchanged. + operationId: UpdateFlakyTestsManagementPolicies + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attempt_to_fix: + retries: 3 + disabled: + enabled: false + quarantined: + auto_quarantine_rule: + enabled: true + window_seconds: 3600 + branch_rule: + branches: + - main + enabled: true + excluded_branches: [] + excluded_test_services: [] + enabled: true + failure_rate_rule: + branches: + - main + enabled: true + min_runs: 10 + threshold: 0.5 + repository_id: "github.com/example-org/example-repo" + type: test_optimization_update_flaky_tests_management_policies_request + schema: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + repository_id: github.com/datadog/test-service + id: github.com/datadog/test-service + type: test_optimization_flaky_tests_management_policies + schema: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_settings_write + summary: Update Flaky Tests Management policies + tags: ["Test Optimization"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_settings_write + post: + description: |- + Retrieve Flaky Tests Management repository-level policies for the given repository. + operationId: GetFlakyTestsManagementPolicies + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + repository_id: "github.com/example-org/example-repo" + type: test_optimization_get_flaky_tests_management_policies_request + schema: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesGetRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + repository_id: github.com/datadog/test-service + id: github.com/datadog/test-service + type: test_optimization_flaky_tests_management_policies + schema: + $ref: "#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_read + summary: Get Flaky Tests Management policies + tags: ["Test Optimization"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_read + /api/v2/ci/test-optimization/settings/service: + delete: + description: |- + Delete Test Optimization settings for a specific service identified by repository, service name, and environment. + operationId: DeleteTestOptimizationServiceSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + env: prod + repository_id: github.com/datadog/test-service + service_name: test-service + type: test_optimization_delete_service_settings_request + schema: + $ref: "#/components/schemas/TestOptimizationDeleteServiceSettingsRequest" + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_settings_write + summary: Delete Test Optimization service settings + tags: ["Test Optimization"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_settings_write + patch: + description: |- + Partially update Test Optimization settings for a specific service identified by repository, service name, and environment. + Only provided fields are updated; setting a field to `null` is a no-op. + To reset a setting to inherit from the repository level, use the corresponding `_inherit` field. + The `pr_comments_enabled` field is ignored as it cannot be overridden at the service level. + operationId: UpdateTestOptimizationServiceSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + env: prod + repository_id: github.com/datadog/test-service + service_name: test-service + test_impact_analysis_enabled_inherit: true + type: test_optimization_update_service_settings_request + schema: + $ref: "#/components/schemas/TestOptimizationUpdateServiceSettingsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_test_retries_enabled: false + auto_test_retries_enabled_is_overridden: false + code_coverage_enabled: false + code_coverage_enabled_is_overridden: false + early_flake_detection_enabled: false + early_flake_detection_enabled_is_overridden: false + env: prod + failed_test_replay_enabled: false + failed_test_replay_enabled_is_overridden: false + pr_comments_enabled: false + repository_id: github.com/datadog/test-service + service_name: test-service + test_impact_analysis_enabled: true + test_impact_analysis_enabled_is_overridden: true + id: 9b8a7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d + type: test_optimization_service_settings + schema: + $ref: "#/components/schemas/TestOptimizationServiceSettingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_settings_write + summary: Update Test Optimization service settings + tags: ["Test Optimization"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_settings_write + post: + description: |- + Retrieve Test Optimization settings for a specific service identified by repository, service name, and environment. + operationId: GetTestOptimizationServiceSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + env: prod + repository_id: github.com/datadog/test-service + service_name: test-service + type: test_optimization_get_service_settings_request + schema: + $ref: "#/components/schemas/TestOptimizationGetServiceSettingsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_test_retries_enabled: false + auto_test_retries_enabled_is_overridden: false + code_coverage_enabled: false + code_coverage_enabled_is_overridden: false + early_flake_detection_enabled: false + early_flake_detection_enabled_is_overridden: false + env: prod + failed_test_replay_enabled: false + failed_test_replay_enabled_is_overridden: false + pr_comments_enabled: false + repository_id: github.com/datadog/test-service + service_name: test-service + test_impact_analysis_enabled: true + test_impact_analysis_enabled_is_overridden: true + id: 9b8a7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d + type: test_optimization_service_settings + schema: + $ref: "#/components/schemas/TestOptimizationServiceSettingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_read + summary: Get Test Optimization service settings + tags: ["Test Optimization"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_read + /api/v2/ci/tests/analytics/aggregate: + post: + description: |- + The API endpoint to aggregate CI Visibility test events into buckets of computed metrics and timeseries. + operationId: AggregateCIAppTestEvents + requestBody: + content: + "application/json": + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: "@duration" + type: timeseries + filter: + from: now-15m + query: "@test.service:web-tests AND @test.status:fail" + to: now + group_by: + - facet: "@test.service" + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + schema: + $ref: "#/components/schemas/CIAppTestsAggregateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + buckets: + - by: + "@test.service": web-tests + computes: + pc90: + - time: "2020-06-08T11:55:00.123Z" + value: 2345 + schema: + $ref: "#/components/schemas/CIAppTestsAnalyticsAggregateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_visibility_read + - AuthZ: + - test_optimization_read + summary: Aggregate tests events + tags: ["CI Visibility Tests"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - ci_visibility_read + - test_optimization_read + /api/v2/ci/tests/events: + get: + description: |- + List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to see your latest test events. + operationId: ListCIAppTestEvents + parameters: + - description: Search query following log syntax. + example: "@test.name:test_foo @test.suite:github.com/DataDog/dd-go/model" + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events. + example: "2019-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested events. + example: "2019-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/CIAppSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + meta: + page: {} + schema: + $ref: "#/components/schemas/CIAppTestEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_visibility_read + - AuthZ: + - test_optimization_read + summary: Get a list of tests events + tags: ["CI Visibility Tests"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - ci_visibility_read + - test_optimization_read + /api/v2/ci/tests/events/search: + post: + description: |- + List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to build complex events filtering and search. + operationId: SearchCIAppTestEvents + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: now-15m + query: "@test.service:web-tests AND @test.status:fail" + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/CIAppTestEventsRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + attributes: + duration: 2345 + tags: + - team:backend + test_level: test + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: citest + links: + next: https://app.datadoghq.com/api/v2/ci/tests/events?page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done + schema: + $ref: "#/components/schemas/CIAppTestEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_visibility_read + - AuthZ: + - test_optimization_read + summary: Search tests events + tags: ["CI Visibility Tests"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - ci_visibility_read + - test_optimization_read + /api/v2/cloud_auth/aws/persona_mapping: + get: + description: List all AWS cloud authentication persona mappings. This endpoint retrieves all configured persona mappings that associate AWS IAM principals with Datadog users. + operationId: ListAWSCloudAuthPersonaMappings + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_identifier: test@example.com + account_uuid: 00000000-0000-0000-0000-000000000001 + arn_pattern: "arn:aws:iam::123456789012:user/testuser" + id: abc-123 + type: aws_cloud_auth_config + schema: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List AWS cloud authentication persona mappings + tags: + - Cloud Authentication + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an AWS cloud authentication persona mapping. This endpoint associates an AWS IAM principal with a Datadog user. + operationId: CreateAWSCloudAuthPersonaMapping + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_identifier: test@test.com + arn_pattern: arn:aws:iam::123456789012:user/testuser + type: aws_cloud_auth_config + schema: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_identifier: test@example.com + account_uuid: 00000000-0000-0000-0000-000000000001 + arn_pattern: "arn:aws:iam::123456789012:user/testuser" + id: abc-123 + type: aws_cloud_auth_config + schema: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an AWS cloud authentication persona mapping + tags: + - Cloud Authentication + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cloud_auth/aws/persona_mapping/{persona_mapping_id}: + delete: + description: Delete an AWS cloud authentication persona mapping by ID. This removes the association between an AWS IAM principal and a Datadog user. + operationId: DeleteAWSCloudAuthPersonaMapping + parameters: + - $ref: "#/components/parameters/PersonaMappingID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an AWS cloud authentication persona mapping + tags: + - Cloud Authentication + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a specific AWS cloud authentication persona mapping by ID. This endpoint retrieves a single configured persona mapping that associates an AWS IAM principal with a Datadog user. + operationId: GetAWSCloudAuthPersonaMapping + parameters: + - $ref: "#/components/parameters/PersonaMappingID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_identifier: test@example.com + account_uuid: 00000000-0000-0000-0000-000000000001 + arn_pattern: "arn:aws:iam::123456789012:user/testuser" + id: abc-123 + type: aws_cloud_auth_config + schema: + $ref: "#/components/schemas/AWSCloudAuthPersonaMappingResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an AWS cloud authentication persona mapping + tags: + - Cloud Authentication + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cloud_security_management/custom_frameworks: + post: + description: Create a custom framework. + operationId: CreateCustomFramework + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + requirements: + - controls: + - name: control + rules_id: + - def-000-be9 + name: criteria + version: "2" + type: custom_framework + schema: + $ref: "#/components/schemas/CreateCustomFrameworkRequest" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + handle: sec2 + version: "2" + id: sec2-2 + type: custom_framework + schema: + $ref: "#/components/schemas/CreateCustomFrameworkResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + $ref: "#/components/responses/BadRequestResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_rules_write + summary: Create a custom framework + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_rules_write + /api/v2/cloud_security_management/custom_frameworks/{handle}/{version}: + delete: + description: Delete a custom framework. + operationId: DeleteCustomFramework + parameters: + - $ref: "#/components/parameters/CustomFrameworkHandle" + - $ref: "#/components/parameters/CustomFrameworkVersion" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + version: "2" + id: sec2-2 + type: custom_framework + schema: + $ref: "#/components/schemas/DeleteCustomFrameworkResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + $ref: "#/components/responses/BadRequestResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_rules_write + summary: Delete a custom framework + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_rules_write + get: + description: Get a custom framework. + operationId: GetCustomFramework + parameters: + - $ref: "#/components/parameters/CustomFrameworkHandle" + - $ref: "#/components/parameters/CustomFrameworkVersion" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + requirements: + - controls: + - name: control + rules_id: + - def-000-be9 + name: criteria + version: "2" + id: sec2-2 + type: custom_framework + schema: + $ref: "#/components/schemas/GetCustomFrameworkResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + $ref: "#/components/responses/BadRequestResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a custom framework + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + put: + description: Update a custom framework. + operationId: UpdateCustomFramework + parameters: + - $ref: "#/components/parameters/CustomFrameworkHandle" + - $ref: "#/components/parameters/CustomFrameworkVersion" + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + requirements: + - controls: + - name: control + rules_id: + - def-000-be9 + name: criteria + version: "2" + type: custom_framework + schema: + $ref: "#/components/schemas/UpdateCustomFrameworkRequest" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + handle: sec2 + version: "2" + id: sec2-2 + type: custom_framework + schema: + $ref: "#/components/schemas/UpdateCustomFrameworkResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + $ref: "#/components/responses/BadRequestResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_rules_write + summary: Update a custom framework + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_rules_write + /api/v2/cloud_security_management/resource_filters: + get: + description: List resource filters. + operationId: GetResourceEvaluationFilters + parameters: + - $ref: "#/components/parameters/ResourceFilterProvider" + - $ref: "#/components/parameters/ResourceFilterAccountID" + - $ref: "#/components/parameters/SkipCache" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + cloud_provider: + aws: + "123456789": + - environment:production + id: csm_resource_filter + type: csm_resource_filter + schema: + $ref: "#/components/schemas/GetResourceEvaluationFiltersResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: List resource filters + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_read + put: + description: Update resource filters. + operationId: UpdateResourceEvaluationFilters + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + aws: + "123456789": + - environment:production + - team:devops + azure: + sub-001: + - app:frontend + gcp: + project-abc: + - region:us-central1 + id: csm_resource_filter + type: csm_resource_filter + schema: + $ref: "#/components/schemas/UpdateResourceEvaluationFiltersRequest" + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + cloud_provider: + aws: + "123456789": + - environment:production + id: csm_resource_filter + type: csm_resource_filter + schema: + $ref: "#/components/schemas/UpdateResourceEvaluationFiltersResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Update resource filters + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_write + /api/v2/cloudinventoryservice/syncconfigs: + put: + description: |- + Enable Storage Management for an S3 bucket, GCS bucket, or Azure container by registering the destination that holds its inventory reports. Set `data.id` to the cloud provider (`aws`, `gcp`, or `azure`) and provide the matching settings under data.attributes. Calling this endpoint with the same provider replaces the existing configuration. + operationId: UpsertSyncConfig + requestBody: + content: + application/json: + examples: + default: + summary: AWS inventory bucket + value: + data: + attributes: + aws: + aws_account_id: "123456789012" + destination_bucket_name: my-inventory-bucket + destination_bucket_region: us-east-1 + destination_prefix: logs/ + id: aws + type: cloud_provider + schema: + $ref: "#/components/schemas/UpsertCloudInventorySyncConfigRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + aws_account_id: "123456789012" + aws_bucket_name: my-inventory-bucket + aws_region: us-east-1 + id: aws + type: sync_configs + schema: + $ref: "#/components/schemas/CloudInventorySyncConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Enable Storage Management for a bucket + tags: + - Storage Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configurations_manage + /api/v2/cloudinventoryservice/syncconfigs/{id}: + delete: + description: |- + Delete a Storage Management configuration by its unique identifier. Deleting a configuration stops inventory file synchronization for the associated cloud account. + operationId: DeleteSyncConfig + parameters: + - $ref: "#/components/parameters/CloudInventorySyncConfigID" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Storage Management configuration + tags: + - Storage Management + "x-permission": + operator: OR + permissions: + - aws_configurations_manage + /api/v2/code-coverage/branch/summary: + post: + description: |- + Retrieve aggregated code coverage statistics for a specific branch in a repository. + This endpoint provides overall coverage metrics as well as breakdowns by service + and code owner. + operationId: GetCodeCoverageBranchSummary + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + branch: prod + repository_url: https://github.com/datadog/test-service + type: ci_app_coverage_branch_summary_request + schema: + $ref: "#/components/schemas/BranchCoverageSummaryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + evaluated_flags_count: 8 + evaluated_reports_count: 12 + patch_coverage: 70.1 + total_coverage: 82.4 + id: ZGQxMjM0NV9tYWluXzE3MDk1NjQwMDA= + type: ci_app_coverage_summary + schema: + $ref: "#/components/schemas/CoverageSummaryResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal server error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_coverage_read + summary: Get code coverage summary for a branch + tags: ["Code Coverage"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - code_coverage_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/code-coverage/commit/summary: + post: + description: |- + Retrieve aggregated code coverage statistics for a specific commit in a repository. + This endpoint provides overall coverage metrics as well as breakdowns by service + and code owner. + + The commit SHA must be a 40-character hexadecimal string (SHA-1 hash). + operationId: GetCodeCoverageCommitSummary + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/datadog/test-service + type: ci_app_coverage_commit_summary_request + schema: + $ref: "#/components/schemas/CommitCoverageSummaryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + evaluated_flags_count: 8 + evaluated_reports_count: 12 + patch_coverage: 70.1 + total_coverage: 82.4 + id: ZGQxMjM0NV9tYWluXzE3MDk1NjQwMDA= + type: ci_app_coverage_summary + schema: + $ref: "#/components/schemas/CoverageSummaryResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal server error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_coverage_read + summary: Get code coverage summary for a commit + tags: ["Code Coverage"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - code_coverage_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/compliance_findings/rule_based_view: + get: + deprecated: true + description: |- + **This endpoint is deprecated.** Use the [Security Monitoring - Search Security Findings](https://docs.datadoghq.com/api/latest/security-monitoring/search-security-findings/) endpoint instead. + + Get an aggregated view of compliance rules with their pass, fail, and muted finding counts. + Supports filtering by compliance framework, framework version, and additional query filters. + operationId: GetRuleBasedView + parameters: + - $ref: "#/components/parameters/RuleBasedViewTo" + - $ref: "#/components/parameters/RuleBasedViewFramework" + - $ref: "#/components/parameters/RuleBasedViewVersion" + - $ref: "#/components/parameters/RuleBasedViewQueryFindingsWithoutFrameworkVersion" + - $ref: "#/components/parameters/RuleBasedViewIncludeRulesWithoutFindings" + - $ref: "#/components/parameters/RuleBasedViewIsCustom" + - $ref: "#/components/parameters/RuleBasedViewQuery" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + rules: + - compliance_frameworks: + - control: 164.308-a-4-i + framework: hipaa + is_default: true + message: "" + requirement: Information-Access-Management + version: "1" + enabled: true + id: qjx-udx-xo8 + name: IAM roles should not allow untrusted GitHub Actions to assume them + resourceAttributes: [] + resourceCategory: identity + resourceType: aws_iam_role + stats: + fail: 0 + muted: 0 + pass: 3 + status: critical + tags: + - security:compliance + - cloud_provider:aws + - framework:hipaa + type: cloud_configuration + id: JSONAPI_USELESS_ID + type: rule_based_view + schema: + $ref: "#/components/schemas/RuleBasedViewResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "503": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Service Unavailable + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get the rule-based view of compliance findings + tags: ["Compliance"] + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_read + x-sunset: "2027-06-26" + x-unstable: |- + **Note**: This endpoint is in Preview and subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/container_images: + get: + description: |- + Get all Container Images for your organization. + **Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https://docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. + operationId: ListContainerImages + parameters: + - description: Comma-separated list of tags to filter Container Images by. + example: short_image:redis,status:running + in: query + name: filter[tags] + required: false + schema: + type: string + - description: Comma-separated list of tags to group Container Images by. + example: registry,image_tags + in: query + name: group_by + required: false + schema: + type: string + - description: Attribute to sort Container Images by. + example: container_count + in: query + name: sort + required: false + schema: + type: string + - description: Maximum number of results returned. + in: query + name: page[size] + required: false + schema: + default: 1000 + format: int32 + maximum: 10000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.pagination.next_cursor`. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + container_count: 1 + image_tags: + - latest + name: nginx + registry: docker.io + repository: library/nginx + short_image: nginx + id: abc-123 + type: container_image + meta: + pagination: + limit: 1000 + total: 1 + type: cursor_limit + schema: + $ref: "#/components/schemas/ContainerImagesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get all Container Images + tags: + - Container Images + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.pagination.next_cursor + limitParam: page[size] + resultsPath: data + "x-permission": + operator: OPEN + permissions: [] + /api/v2/containers: + get: + description: Get all containers for your organization. + operationId: ListContainers + parameters: + - description: Comma-separated list of tags to filter containers by. + example: env:prod,short_image:cassandra + in: query + name: filter[tags] + required: false + schema: + type: string + - description: Comma-separated list of tags to group containers by. + example: datacenter,cluster + in: query + name: group_by + required: false + schema: + type: string + - description: Attribute to sort containers by. + example: started_at + in: query + name: sort + required: false + schema: + type: string + - description: Maximum number of results returned. + in: query + name: page[size] + required: false + schema: + default: 1000 + format: int32 + maximum: 10000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.pagination.next_cursor`. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + container_id: abc-123 + host: example-host + image_name: nginx + name: example-container + state: running + id: abc-123 + type: container + meta: + pagination: + limit: 1000 + total: 1 + type: cursor_limit + schema: + $ref: "#/components/schemas/ContainersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get All Containers + tags: + - Containers + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.pagination.next_cursor + limitParam: page[size] + resultsPath: data + "x-permission": + operator: OPEN + permissions: [] + /api/v2/cost/account_filters/{cloud_account_id}: + get: + description: Get the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds). + operationId: GetCostAccountFilters + parameters: + - $ref: "#/components/parameters/CloudAccountID" + responses: + "200": + content: + application/json: + examples: + default: + summary: Include new accounts and exclude specific accounts + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789123" + - "123456789143" + include_new_accounts: true + account_id: "123456789123" + cloud: aws_cur2 + id: "123" + type: account_filters + include_accounts: + summary: Exclude new accounts and include specific accounts + value: + data: + attributes: + account_filters: + include_new_accounts: false + included_accounts: + - "123456789123" + - "123456789143" + account_id: "123456789123" + cloud: aws_cur2 + id: "123" + type: account_filters + schema: + $ref: "#/components/schemas/AccountFiltersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get account filters + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + patch: + description: Update the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds). + operationId: UpdateCostAccountFilters + parameters: + - $ref: "#/components/parameters/CloudAccountID" + requestBody: + content: + application/json: + examples: + default: + summary: Exclude new accounts and include specific accounts + value: + data: + attributes: + account_filters: + include_new_accounts: false + included_accounts: + - "123456789123" + - "123456789143" + type: account_filters_patch_request + exclude_accounts: + summary: Include new accounts and exclude specific accounts + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789123" + - "123456789143" + include_new_accounts: true + type: account_filters_patch_request + schema: + $ref: "#/components/schemas/AccountFiltersPatchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + summary: Exclude new accounts and include specific accounts + value: + data: + attributes: + account_filters: + include_new_accounts: false + included_accounts: + - "123456789123" + - "123456789143" + account_id: "123456789123" + cloud: aws_cur2 + id: "123" + type: account_filters + exclude_accounts: + summary: Include new accounts and exclude specific accounts + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789123" + - "123456789143" + include_new_accounts: true + account_id: "123456789123" + cloud: aws_cur2 + id: "123" + type: account_filters + schema: + $ref: "#/components/schemas/AccountFiltersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update account filters + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/anomalies: + get: + description: List detected Cloud Cost Management anomalies for the organization. + operationId: ListCostAnomalies + parameters: + - description: Start time as Unix milliseconds. Defaults to the start of the latest stable seven-day window. + in: query + name: start + required: false + schema: + example: 1730259950000 + format: int64 + type: integer + - description: End time as Unix milliseconds. Defaults to the end of the latest stable seven-day window. + in: query + name: end + required: false + schema: + example: 1730429150000 + format: int64 + type: integer + - description: 'Optional JSON object mapping cost tag keys to allowed values, for example `{"team":["payments"],"env":["prod"]}`. Filters match anomaly dimensions or correlated tags.' + in: query + name: filter + required: false + schema: + example: '{"team":["payments"]}' + type: string + - description: Minimum absolute anomalous cost change to include. Numeric value; defaults to `1`. + in: query + name: min_anomalous_threshold + required: false + schema: + example: "1.0" + type: string + - description: Minimum absolute actual cost to include. Numeric value; defaults to `0`. + in: query + name: min_cost_threshold + required: false + schema: + example: "0.0" + type: string + - description: Filter by resolution state. Use `none` for unresolved anomalies, `all` or `*` for resolved anomalies, or a comma-separated list of causes. + in: query + name: dismissal_cause + required: false + schema: + example: none + type: string + - description: Sort field. One of `start_date`, `end_date`, `duration`, `max_cost`, `anomalous_cost`, or `dismissal_date`. Defaults to `anomalous_cost`. + in: query + name: order_by + required: false + schema: + example: anomalous_cost + type: string + - description: Sort direction. One of `asc` or `desc`. Defaults to `desc`. + in: query + name: order + required: false + schema: + example: desc + type: string + - description: Maximum number of anomalies to return. Defaults to `200`. + in: query + name: limit + required: false + schema: + example: 200 + format: int64 + type: integer + - description: Pagination offset. Defaults to `0`. + in: query + name: offset + required: false + schema: + example: 0 + format: int64 + type: integer + - description: Optional repeated cloud or SaaS provider filters, such as `aws`, `gcp`, `azure`, `Oracle`, `datadog`, `OpenAI`, or `Anthropic`. + explode: true + in: query + name: provider_ids + required: false + schema: + items: + example: aws + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + anomalies: + - actual_cost: 3001.24 + anomalous_cost_change: 1250.75 + anomaly_end: 1730429150000 + anomaly_start: 1730259950000 + correlated_tags: + region: + - us-east-1 + - us-west-2 + dimensions: + service: ec2 + max_cost: 5000.5 + provider: aws + query: 'sum:aws.cost.net.amortized{aws_cost_type IN (Usage,DiscountedUsage,SavingsPlanCoveredUsage) AND aws_product NOT IN (supportenterprise) AND service:"ec2"}.rollup(sum, daily)' + uuid: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + avg_daily_anomalous_cost: 625.375 + total_actual_cost: 3001.24 + total_anomalous_cost: 1250.75 + total_count: 1 + id: anomalies + type: anomalies + schema: + $ref: "#/components/schemas/CostAnomaliesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List cost anomalies + tags: + - Cloud Cost Management + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/anomalies/{anomaly_id}: + get: + description: Get a detected Cloud Cost Management anomaly by UUID. + operationId: GetCostAnomaly + parameters: + - $ref: "#/components/parameters/AnomalyID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + actual_cost: 3001.24 + anomalous_cost_change: 1250.75 + anomaly_end: 1730429150000 + anomaly_start: 1730259950000 + correlated_tags: + region: + - us-east-1 + - us-west-2 + dimensions: + service: ec2 + max_cost: 5000.5 + provider: aws + query: 'sum:aws.cost.net.amortized{aws_cost_type IN (Usage,DiscountedUsage,SavingsPlanCoveredUsage) AND aws_product NOT IN (supportenterprise) AND service:"ec2"}.rollup(sum, daily)' + uuid: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + id: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + type: anomalies + schema: + $ref: "#/components/schemas/CostAnomalyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get cost anomaly + tags: + - Cloud Cost Management + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/arbitrary_rule: + get: + description: List all custom allocation rules - Retrieve a list of all custom allocation rules for the organization + operationId: ListCustomAllocationRules + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + values: + created: "2024-01-01T00:00:00+00:00" + enabled: true + last_modified_user_uuid: user-example-uuid + order_id: 1 + processing_status: done + provider: + - aws + rule_name: example-custom-allocation-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: "2024-01-01T00:00:00+00:00" + version: 1 + id: "123" + type: arbitrary_rule + schema: + $ref: "#/components/schemas/ArbitraryRuleResponseArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List custom allocation rules + tags: + - Cloud Cost Management + post: + description: |- + Create a new custom allocation rule with the specified filters and allocation strategy. + + **Strategy Methods:** + - **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters. + - **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys. + - **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations). + + **Filter Conditions:** + - Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like" + - Use **values** for multi-value conditions: "in", "not in" + - Cannot use both value and values simultaneously. + + **Supported operators**: is, is not, contains, in, not in, =, !=, like, not like + operationId: CreateCustomAllocationRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + - condition: in + tag: environment + value: "" + values: + - production + - staging + enabled: true + order_id: 1 + provider: + - aws + - gcp + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + - condition: not in + tag: team + value: "" + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + type: upsert_arbitrary_rule + schema: + $ref: "#/components/schemas/ArbitraryCostUpsertRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + created: "2024-01-01T00:00:00+00:00" + enabled: true + order_id: 1 + provider: + - aws + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: "2024-01-01T00:00:00+00:00" + version: 1 + id: "123" + type: arbitrary_rule + schema: + $ref: "#/components/schemas/ArbitraryRuleResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create custom allocation rule + tags: + - Cloud Cost Management + /api/v2/cost/arbitrary_rule/reorder: + post: + description: |- + Reorder custom allocation rules - Change the execution order of custom allocation rules. + + **Important**: You must provide the **complete list** of all rule IDs in the desired execution order. The API will reorder ALL rules according to the provided sequence. + + Rules are executed in the order specified, with lower indices (earlier in the array) having higher priority. + + **Example**: If you have rules with IDs [123, 456, 789] and want to change order from 123→456→789 to 456→123→789, send: [{"id": "456"}, {"id": "123"}, {"id": "789"}] + operationId: ReorderCustomAllocationRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: "456" + type: arbitrary_rule + - id: "123" + type: arbitrary_rule + - id: "789" + type: arbitrary_rule + schema: + $ref: "#/components/schemas/ReorderRuleResourceArray" + required: true + responses: + "204": + description: Successfully reordered rules + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Reorder custom allocation rules + tags: + - Cloud Cost Management + /api/v2/cost/arbitrary_rule/status: + get: + description: List the processing status of all custom allocation rules. Returns only the ID and processing status for each rule. + operationId: ListCustomAllocationRulesStatus + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + processing_status: processing + id: "123" + type: arbitrary_rule_status + - attributes: + processing_status: done + id: "456" + type: arbitrary_rule_status + schema: + $ref: "#/components/schemas/ArbitraryRuleStatusResponseArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List custom allocation rule statuses + tags: + - Cloud Cost Management + /api/v2/cost/arbitrary_rule/{rule_id}: + delete: + description: Delete a custom allocation rule - Delete an existing custom allocation rule by its ID + operationId: DeleteCustomAllocationRule + parameters: + - description: The unique identifier of the custom allocation rule + in: path + name: rule_id + required: true + schema: + format: int64 + type: integer + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete custom allocation rule + tags: + - Cloud Cost Management + get: + description: Get a specific custom allocation rule - Retrieve a specific custom allocation rule by its ID + operationId: GetCustomAllocationRule + parameters: + - description: The unique identifier of the custom allocation rule + in: path + name: rule_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + values: + created: "2024-01-01T00:00:00+00:00" + enabled: true + last_modified_user_uuid: user-example-uuid + order_id: 1 + provider: + - aws + rule_name: example-custom-allocation-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: "2024-01-01T00:00:00+00:00" + version: 1 + id: "123" + type: arbitrary_rule + schema: + $ref: "#/components/schemas/ArbitraryRuleResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get custom allocation rule + tags: + - Cloud Cost Management + patch: + description: |- + Update an existing custom allocation rule with new filters and allocation strategy. + + **Strategy Methods:** + - **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters. + - **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys. + - **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations). + - **USAGE_METRIC**: Allocates based on usage metrics (implementation varies). + + **Filter Conditions:** + - Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like" + - Use **values** for multi-value conditions: "in", "not in" + - Cannot use both value and values simultaneously. + + **Supported operators**: is, is not, contains, in, not in, =, !=, like, not like + operationId: UpdateCustomAllocationRule + parameters: + - description: The unique identifier of the custom allocation rule + in: path + name: rule_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + - condition: in + tag: environment + value: "" + values: + - production + - staging + enabled: true + order_id: 1 + provider: + - aws + - gcp + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + - condition: not in + tag: team + value: "" + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + type: upsert_arbitrary_rule + schema: + $ref: "#/components/schemas/ArbitraryCostUpsertRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: "123456789" + created: "2024-01-01T00:00:00+00:00" + enabled: true + order_id: 1 + provider: + - aws + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: "2024-01-01T00:00:00+00:00" + version: 1 + id: "123" + type: arbitrary_rule + schema: + $ref: "#/components/schemas/ArbitraryRuleResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update custom allocation rule + tags: + - Cloud Cost Management + /api/v2/cost/aws_cur_config: + get: + description: List the AWS CUR configs. + operationId: ListCostAWSCURConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: "123456789123" + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: "2023-01-01T12:00:00.000000" + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123" + type: aws_cur_config + schema: + $ref: "#/components/schemas/AwsCURConfigsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management AWS CUR configs + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + post: + description: Create a Cloud Cost Management account for an AWS CUR config. + operationId: CreateCostAWSCURConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789123" + - "123456789143" + include_new_accounts: true + included_accounts: + - "123456789123" + - "123456789143" + account_id: "123456789123" + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + report_name: dd-report-name + report_prefix: dd-report-prefix + type: aws_cur_config_post_request + schema: + $ref: "#/components/schemas/AwsCURConfigPostRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789124" + - "123456789125" + include_new_accounts: true + account_id: "123456789123" + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: "2023-01-01T12:00:00.000000" + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: aws_cur_config + schema: + $ref: "#/components/schemas/AwsCurConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create Cloud Cost Management AWS CUR config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/aws_cur_config/{cloud_account_id}: + delete: + description: Archive a Cloud Cost Management Account. + operationId: DeleteCostAWSCURConfig + parameters: + - $ref: "#/components/parameters/CloudAccountID" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete Cloud Cost Management AWS CUR config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + get: + description: Get a specific AWS CUR config. + operationId: GetCostAWSCURConfig + parameters: + - description: The unique identifier of the cloud account + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789124" + - "123456789125" + include_new_accounts: true + account_id: "123456789123" + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: "2023-01-01T12:00:00.000000" + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: aws_cur_config + schema: + $ref: "#/components/schemas/AwsCurConfigResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get cost AWS CUR config + tags: + - Cloud Cost Management + patch: + description: Update the status (active/archived) and/or account filtering configuration of an AWS CUR config. + operationId: UpdateCostAWSCURConfig + parameters: + - $ref: "#/components/parameters/CloudAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - "123456789123" + - "123456789143" + include_new_accounts: true + included_accounts: + - "123456789123" + - "123456789143" + is_enabled: true + type: aws_cur_config_patch_request + schema: + $ref: "#/components/schemas/AwsCURConfigPatchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: "123456789123" + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: "2023-01-01T12:00:00.000000" + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123" + type: aws_cur_config + schema: + $ref: "#/components/schemas/AwsCURConfigsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update Cloud Cost Management AWS CUR config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/azure_uc_config: + get: + description: List the Azure configs. + operationId: ListCostAzureUCConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: "2023-01-01T12:00:00.000000" + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: "123456789123" + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: azure_uc_configs + schema: + $ref: "#/components/schemas/AzureUCConfigsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management Azure configs + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + post: + description: Create a Cloud Cost Management account for an Azure config. + operationId: CreateCostAzureUCConfigs + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + actual_bill_config: + export_name: dd-actual-export + export_path: dd-export-path + storage_account: dd-storage-account + storage_container: dd-storage-container + amortized_bill_config: + export_name: dd-actual-export + export_path: dd-export-path + storage_account: dd-storage-account + storage_container: dd-storage-container + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + type: azure_uc_config_post_request + schema: + $ref: "#/components/schemas/AzureUCConfigPostRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: "2023-01-01T12:00:00.000000" + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: "123456789123" + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: azure_uc_configs + schema: + $ref: "#/components/schemas/AzureUCConfigPairsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create Cloud Cost Management Azure configs + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/azure_uc_config/{cloud_account_id}: + delete: + description: Archive a Cloud Cost Management Account. + operationId: DeleteCostAzureUCConfig + parameters: + - $ref: "#/components/parameters/CloudAccountID" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete Cloud Cost Management Azure config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + get: + description: Get a specific Azure config. + operationId: GetCostAzureUCConfig + parameters: + - description: The unique identifier of the cloud account + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: "2023-01-01T12:00:00.000000" + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: "123456789123" + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: azure_uc_configs + schema: + $ref: "#/components/schemas/UCConfigPair" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get cost Azure UC config + tags: + - Cloud Cost Management + patch: + description: Update the status of an Azure config (active/archived). + operationId: UpdateCostAzureUCConfigs + parameters: + - $ref: "#/components/parameters/CloudAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + is_enabled: true + type: azure_uc_config_patch_request + schema: + $ref: "#/components/schemas/AzureUCConfigPatchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: "2023-01-01T12:00:00.000000" + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: "123456789123" + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: azure_uc_configs + schema: + $ref: "#/components/schemas/AzureUCConfigPairsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update Cloud Cost Management Azure config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/budget: + put: + description: Create a new budget or update an existing one. + operationId: UpsertBudget + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: "" + schema: + $ref: "#/components/schemas/BudgetWithEntries" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget + schema: + $ref: "#/components/schemas/BudgetWithEntries" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update a budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/csv/validate: + post: + operationId: ValidateCsvBudget + responses: + "200": + content: + application/json: + examples: + default: + value: + errors: [] + schema: + $ref: "#/components/schemas/ValidationResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: [] + summary: Validate CSV budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/custom-forecast: + put: + description: |- + Create or replace the custom forecast for an existing budget. + Pass an empty `entries` list to delete the custom forecast for the budget. + operationId: UpsertCustomForecast + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + budget_uid: 00000000-0000-0000-0000-000000000001 + entries: + - amount: 400 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 450 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + id: "" + type: custom_forecast + schema: + $ref: "#/components/schemas/CustomForecastUpsertRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + budget_uid: 00000000-0000-0000-0000-000000000001 + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + entries: + - amount: 400 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 450 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 11111111-1111-1111-1111-111111111111 + type: custom_forecast + schema: + $ref: "#/components/schemas/CustomForecastResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or replace a budget's custom forecast + tags: + - Cloud Cost Management + /api/v2/cost/budget/validate: + post: + description: Validate a budget configuration without creating or modifying it + operationId: ValidateBudget + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 500 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: "1" + type: budget + schema: + $ref: "#/components/schemas/BudgetValidationRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + errors: [] + valid: true + id: budget_validation + type: budget_validation + schema: + $ref: "#/components/schemas/BudgetValidationResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Validate budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/{budget_id}: + delete: + description: Delete a budget + operationId: DeleteBudget + parameters: + - $ref: "#/components/parameters/BudgetID" + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete budget + tags: + - Cloud Cost Management + get: + description: Get a budget by ID. Pass `actual=true` or `forecast=true` to include cost data in the response. Use `start` and `end` (millisecond epochs, both required) to set the cost window. When `forecast=true`, each entry also includes `ootb_forecast` (the ML forecast before overrides) and `custom_forecast` (`null` if no override is set, a number if one is). + operationId: GetBudget + parameters: + - $ref: "#/components/parameters/BudgetID" + - description: When `true`, includes actual cost data in the response. + in: query + name: actual + required: false + schema: + type: boolean + - description: When `true`, includes forecast cost data in the response, including `ootb_forecast` and `custom_forecast` per entry. + in: query + name: forecast + required: false + schema: + type: boolean + - description: Start of the cost window in milliseconds since epoch. Must be used together with `end`. + in: query + name: start + required: false + schema: + format: int64 + type: integer + - description: End of the cost window in milliseconds since epoch. Must be used together with `start`. + in: query + name: end + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + costs: + actual: 850.25 + amount: 1000.0 + forecast: 1100.5 + ootb_forecast: 1100.5 + costs_period_end: 1740873600000 + costs_period_start: 1738281600000 + costs_unit: + family: currency + id: "1" + name: dollar + plural: dollars + scale_factor: 1.0 + short_name: $ + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + costs: + actual: 425.5 + amount: 500.0 + custom_forecast: + forecast: 550.25 + ootb_forecast: 550.25 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget + schema: + $ref: "#/components/schemas/BudgetWithEntries" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/{budget_id}/custom-forecast: + delete: + description: Delete the custom forecast for a budget. + operationId: DeleteCustomForecast + parameters: + - $ref: "#/components/parameters/BudgetID" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a budget's custom forecast + tags: + - Cloud Cost Management + get: + description: Get the custom forecast for a budget. + operationId: GetCustomForecast + parameters: + - $ref: "#/components/parameters/BudgetID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + budget_uid: 00000000-0000-0000-0000-000000000001 + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + entries: + - amount: 400 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 450 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 11111111-1111-1111-1111-111111111111 + type: custom_forecast + schema: + $ref: "#/components/schemas/CustomForecastResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a budget's custom forecast + tags: + - Cloud Cost Management + /api/v2/cost/budgets: + get: + description: List budgets. + operationId: ListBudgets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: 1741011342772 + created_by: user1 + end_month: 202502 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1741011342772 + updated_by: user2 + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget + schema: + $ref: "#/components/schemas/BudgetArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List budgets + tags: + - Cloud Cost Management + /api/v2/cost/commitments/commitment-list: + get: + description: Get a list of individual cloud commitments (Reserved Instances or Savings Plans) with their utilization details. The response schema varies based on the provider, product, and commitment type. + operationId: GetCommitmentsCommitmentList + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + - $ref: "#/components/parameters/CommitmentsCommitmentType" + responses: + "200": + content: + application/json: + examples: + default: + value: + commitments: + - commitment_id: ri-0123456789abcdef0 + expiration_date: "2025-12-31T00:00:00Z" + instance_type: m5.xlarge + offering_class: standard + operating_system: Linux + purchase_option: All Upfront + region: us-east-1 + start_date: "2023-01-01T00:00:00Z" + term_length: 1 + utilization: 0.85 + schema: + $ref: "#/components/schemas/CommitmentsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments list + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/coverage/scalar: + get: + description: Get scalar coverage metrics for cloud commitment programs, including hours and cost coverage percentages. + operationId: GetCommitmentsCoverageScalar + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + responses: + "200": + content: + application/json: + examples: + default: + value: + columns: + - name: service + type: group + values: + - - ec2 + - meta: + unit: + family: percentage + id: 17 + name: percent + plural: percent + scale_factor: 1 + short_name: "%" + name: hours_coverage + type: number + values: + - 0.78 + schema: + $ref: "#/components/schemas/CommitmentsCoverageScalarResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments coverage (scalar) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/coverage/timeseries: + get: + description: Get timeseries coverage metrics for cloud commitment programs, broken down by coverage type (Reserved Instances, Savings Plans, On-Demand, and Spot) for both hours and cost. + operationId: GetCommitmentsCoverageTimeseries + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + responses: + "200": + content: + application/json: + examples: + default: + value: + cost: + series: + on_demand_only: + - 1000.0 + - 900.0 + ri: + - 3600.0 + - 3700.0 + sp: + - 400.0 + - 400.0 + spot_only: + - 50.0 + - 50.0 + times: + - 1693526400 + - 1693612800 + hours: + series: + on_demand_only: + - 500.0 + - 450.0 + ri: + - 1800.0 + - 1850.0 + sp: + - 200.0 + - 200.0 + spot_only: + - 100.0 + - 100.0 + times: + - 1693526400 + - 1693612800 + schema: + $ref: "#/components/schemas/CommitmentsCoverageTimeseriesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments coverage (timeseries) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/on-demand-hot-spots/scalar: + get: + description: Get scalar on-demand hot-spots data for cloud commitment programs, showing per-dimension breakdowns of on-demand spending with coverage metrics and potential savings. + operationId: GetCommitmentsOnDemandHotspotsScalar + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + responses: + "200": + content: + application/json: + examples: + default: + value: + columns: + - name: service + type: group + values: + - - ec2 + - meta: + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: "$" + name: on_demand_cost + type: number + values: + - 1500.0 + total: + - meta: + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: "$" + name: on_demand_cost + type: number + values: + - 1500.0 + schema: + $ref: "#/components/schemas/CommitmentsOnDemandHotspotsScalarResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments on-demand hot spots (scalar) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/savings/scalar: + get: + description: Get scalar savings metrics for cloud commitment programs, including realized savings and effective savings rate. + operationId: GetCommitmentsSavingsScalar + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + responses: + "200": + content: + application/json: + examples: + default: + value: + columns: + - meta: + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: "$" + name: realized_savings + type: number + values: + - 2500.0 + - meta: + unit: + family: percentage + id: 17 + name: percent + plural: percent + scale_factor: 1 + short_name: "%" + name: effective_savings_rate + type: number + values: + - 0.33 + schema: + $ref: "#/components/schemas/CommitmentsSavingsScalarResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments savings (scalar) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/savings/timeseries: + get: + description: Get timeseries savings metrics for cloud commitment programs, including actual cost, on-demand equivalent cost, realized savings, and effective savings rate over time. + operationId: GetCommitmentsSavingsTimeseries + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + responses: + "200": + content: + application/json: + examples: + default: + value: + actual_cost: + series: + total: + - 5000.0 + - 5200.0 + times: + - 1693526400 + - 1693612800 + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: "$" + effective_savings_rate: + series: + total: + - 0.33 + - 0.33 + times: + - 1693526400 + - 1693612800 + on_demand_equivalent_cost: + series: + total: + - 7500.0 + - 7800.0 + times: + - 1693526400 + - 1693612800 + realized_savings: + series: + total: + - 2500.0 + - 2600.0 + times: + - 1693526400 + - 1693612800 + schema: + $ref: "#/components/schemas/CommitmentsSavingsTimeseriesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments savings (timeseries) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/utilization/scalar: + get: + description: Get scalar utilization metrics for cloud commitment programs, including utilization percentage and unused cost. + operationId: GetCommitmentsUtilizationScalar + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + - $ref: "#/components/parameters/CommitmentsCommitmentType" + responses: + "200": + content: + application/json: + examples: + default: + value: + columns: + - name: service + type: group + values: + - - ec2 + - - rds + - meta: + unit: + family: percentage + id: 17 + name: percent + plural: percent + scale_factor: 1 + short_name: "%" + name: utilization + type: number + values: + - 0.85 + - 0.72 + schema: + $ref: "#/components/schemas/CommitmentsUtilizationScalarResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments utilization (scalar) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/utilization/timeseries: + get: + description: Get timeseries utilization metrics for cloud commitment programs, including used and unused cost series over time. + operationId: GetCommitmentsUtilizationTimeseries + parameters: + - $ref: "#/components/parameters/CommitmentsProvider" + - $ref: "#/components/parameters/CommitmentsProduct" + - $ref: "#/components/parameters/CommitmentsStart" + - $ref: "#/components/parameters/CommitmentsEnd" + - $ref: "#/components/parameters/CommitmentsFilterBy" + - $ref: "#/components/parameters/CommitmentsCommitmentType" + responses: + "200": + content: + application/json: + examples: + default: + value: + series: + unused: + - 750.0 + - 600.0 + used: + - 4250.0 + - 4400.0 + times: + - 1693526400 + - 1693612800 + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: "$" + schema: + $ref: "#/components/schemas/CommitmentsUtilizationTimeseriesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments utilization (timeseries) + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/custom_costs: + get: + description: List the Custom Costs files. + operationId: ListCustomCostsFiles + parameters: + - description: Page number for pagination + in: query + name: page[number] + schema: + format: int64 + type: integer + - description: Page size for pagination + in: query + name: page[size] + schema: + default: 100 + format: int64 + type: integer + - description: Filter by file status + in: query + name: filter[status] + schema: + type: string + - description: Filter files by name with case-insensitive substring matching. + in: query + name: filter[name] + schema: + type: string + - description: Filter by provider. + in: query + name: filter[provider] + schema: + items: + type: string + type: array + - description: Sort key with optional descending prefix + in: query + name: sort + schema: + default: created_at + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + billed_cost: 100.5 + billing_currency: USD + charge_period: + end: 1706745600000 + start: 1704067200000 + name: my_file.json + provider_names: + - my_provider + status: active + uploaded_at: 1704067200000 + id: 00000000-0000-0000-0000-000000000005 + type: custom_costs + meta: + total_filtered_count: 1 + version: "1" + schema: + $ref: "#/components/schemas/CustomCostsFileListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Custom Costs files + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + put: + description: Upload a Custom Costs file. + operationId: UploadCustomCostsFile + requestBody: + content: + application/json: + examples: + default: + value: + - BilledCost: 100.5 + BillingCurrency: USD + ChargeDescription: Monthly usage charge for my service + ChargePeriodEnd: "2023-02-28" + ChargePeriodStart: "2023-02-01" + schema: + $ref: "#/components/schemas/CustomCostsFileUploadRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + billed_cost: 100.5 + billing_currency: USD + charge_period: + end: 1706745600000 + start: 1704067200000 + name: my_file.json + provider_names: + - my_provider + status: pending + uploaded_at: 1704067200000 + id: 00000000-0000-0000-0000-000000000006 + type: custom_costs + meta: + version: "1" + schema: + $ref: "#/components/schemas/CustomCostsFileUploadResponse" + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Upload Custom Costs file + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/custom_costs/{file_id}: + delete: + description: Delete the specified Custom Costs file. + operationId: DeleteCustomCostsFile + parameters: + - $ref: "#/components/parameters/FileID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete Custom Costs file + tags: + - Cloud Cost Management + get: + description: Fetch the specified Custom Costs file. + operationId: GetCustomCostsFile + parameters: + - $ref: "#/components/parameters/FileID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + billed_cost: 100.5 + billing_currency: USD + charge_period: + end: 1706745600000 + start: 1704067200000 + content: + - BilledCost: 100.5 + BillingCurrency: USD + ChargeDescription: Monthly usage charge for my service + ChargePeriodEnd: "2023-02-28" + ChargePeriodStart: "2023-02-01" + name: my_file.json + provider_names: + - my_provider + status: active + uploaded_at: 1704067200000 + id: 00000000-0000-0000-0000-000000000007 + type: custom_costs + meta: + version: "1" + schema: + $ref: "#/components/schemas/CustomCostsFileGetResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get Custom Costs file + tags: + - Cloud Cost Management + /api/v2/cost/gcp_uc_config: + get: + description: List the Google Cloud Usage Cost configs. + operationId: ListCostGCPUsageCostConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: "2023-01-01T12:00:00.000000" + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: gcp_uc_config + schema: + $ref: "#/components/schemas/GCPUsageCostConfigsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Google Cloud Usage Cost configs + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + post: + description: Create a Cloud Cost Management account for an Google Cloud Usage Cost config. + operationId: CreateCostGCPUsageCostConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + billing_account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + export_dataset_name: billing + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + type: gcp_uc_config_post_request + schema: + $ref: "#/components/schemas/GCPUsageCostConfigPostRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: "2023-01-01T12:00:00.000000" + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: gcp_uc_config + schema: + $ref: "#/components/schemas/GCPUsageCostConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create Google Cloud Usage Cost config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/gcp_uc_config/{cloud_account_id}: + delete: + description: Archive a Cloud Cost Management account. + operationId: DeleteCostGCPUsageCostConfig + parameters: + - $ref: "#/components/parameters/CloudAccountID" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete Google Cloud Usage Cost config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + get: + description: Get a specific Google Cloud Usage Cost config. + operationId: GetCostGCPUsageCostConfig + parameters: + - description: The unique identifier of the cloud account + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: "2023-01-01T12:00:00.000000" + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: gcp_uc_config + schema: + $ref: "#/components/schemas/GcpUcConfigResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get Google Cloud Usage Cost config + tags: + - Cloud Cost Management + patch: + description: Update the status of an Google Cloud Usage Cost config (active/archived). + operationId: UpdateCostGCPUsageCostConfig + parameters: + - $ref: "#/components/parameters/CloudAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + is_enabled: true + type: gcp_uc_config_patch_request + schema: + $ref: "#/components/schemas/GCPUsageCostConfigPatchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: "2023-01-01T12:00:00.000000" + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: "2023-01-01T12:00:00.000000" + updated_at: "2023-01-01T12:00:00.000000" + id: "123456789123" + type: gcp_uc_config + schema: + $ref: "#/components/schemas/GCPUsageCostConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update Google Cloud Usage Cost config + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/oci_config: + get: + description: List the OCI configs. + operationId: ListCostOCIConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: "ocid1.tenancy.oc1..example" + created_at: "2026-01-01T12:00:00Z" + status: active + status_updated_at: "2026-01-01T12:00:00Z" + updated_at: "2026-01-01T12:00:00Z" + id: "1" + type: oci_config + schema: + $ref: "#/components/schemas/OCIConfigsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management OCI configs + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/recommendations: + post: + description: List cost recommendations matching a filter, with pagination and sorting. + operationId: SearchCostRecommendations + parameters: + - description: Number of results per page (1–10000). + in: query + name: page[size] + schema: + type: string + - description: Pagination token from a previous response. + in: query + name: page[token] + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + filter: "@resource_table:aws_ec2_instance" + sort: + - expression: potential_daily_savings.amount + order: DESC + schema: + $ref: "#/components/schemas/RecommendationsFilterRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + dd_resource_key: "arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0" + potential_daily_savings: + amount: 1.23 + currency: USD + recommendation_type: terminate + resource_id: i-1234567890abcdef0 + resource_type: aws_ec2_instance + tags: + - "env:prod" + - "team:ccm" + id: encoded-event-id-1 + type: recommendation + meta: + page: + filter: "@resource_table:aws_ec2_instance" + next_page_token: "" + page_size: 100 + schema: + $ref: "#/components/schemas/CostRecommendationArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Search cost recommendations + tags: + - Cloud Cost Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_descriptions: + get: + description: List Cloud Cost Management tag key descriptions for the organization. Use `filter[cloud]` to scope the result to a single cloud provider; when omitted, both cross-cloud defaults and cloud-specific descriptions are returned. + operationId: ListCostTagDescriptions + parameters: + - description: Filter descriptions to a specific cloud provider (for example, `aws`). Omit to return descriptions across all clouds. + in: query + name: filter[cloud] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cloud: aws + created_at: "2026-01-01T12:00:00Z" + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: "2026-01-01T12:00:00Z" + id: account_id + type: cost_tag_description + schema: + $ref: "#/components/schemas/CostTagDescriptionsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag descriptions + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_descriptions/{tag_key}: + delete: + description: Delete a Cloud Cost Management tag key description. When `cloud` is omitted, deletes every description for the tag key, falling back to Datadog's global default when available. When `cloud` is provided, deletes only the description scoped to that cloud provider. + operationId: DeleteCostTagDescriptionByKey + parameters: + - description: The tag key whose description is being deleted. + in: path + name: tag_key + required: true + schema: + type: string + - description: Cloud provider to scope the deletion to (for example, `aws`). Omit to delete every description for the tag key. + in: query + name: cloud + required: false + schema: + type: string + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete a Cloud Cost Management tag description + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + get: + description: Get the Cloud Cost Management description for a single tag key. Use `filter[cloud]` to scope the lookup to a specific cloud provider; when omitted, the response resolves the description in fallback order (cloud-specific organization override, then cloudless organization default, then Datadog's global default). + operationId: GetCostTagDescriptionByKey + parameters: + - description: The tag key whose description is being fetched. + in: path + name: tag_key + required: true + schema: + type: string + - description: Cloud provider to scope the lookup to (for example, `aws`). Omit to use the resolved fallback. + in: query + name: filter[cloud] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cloud: aws + created_at: "2026-01-01T12:00:00Z" + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: "2026-01-01T12:00:00Z" + id: account_id + type: cost_tag_description + schema: + $ref: "#/components/schemas/CostTagDescriptionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get a Cloud Cost Management tag description + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + put: + description: Create or update a Cloud Cost Management tag key description. The new description and optional cloud scoping are supplied in the request body. Omit `cloud` to set a cross-cloud default for the tag key. + operationId: UpsertCostTagDescriptionByKey + parameters: + - description: The tag key whose description is being upserted. + in: path + name: tag_key + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cloud: aws + description: AWS account that owns this cost. + id: account_id + type: cost_tag_description + schema: + $ref: "#/components/schemas/CostTagDescriptionUpsertRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Upsert a Cloud Cost Management tag description + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/tag_descriptions/{tag_key}/generate: + get: + description: Use AI to draft a Cloud Cost Management tag key description based on associated cost data. The generated description is returned in the response and is not persisted by this endpoint; follow up with `UpsertCostTagDescriptionByKey` to save it. + operationId: GenerateCostTagDescriptionByKey + parameters: + - description: The tag key to generate an AI description for. + in: path + name: tag_key + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: AWS account that owns this cost. + id: account_id + type: cost_generated_tag_description + schema: + $ref: "#/components/schemas/GenerateCostTagDescriptionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Generate a Cloud Cost Management tag description + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_keys: + get: + description: List Cloud Cost Management tag keys. + operationId: ListCostTagKeys + parameters: + - description: The Cloud Cost Management metric to scope the tag keys to. When omitted, returns tag keys across all metrics. + in: query + name: filter[metric] + schema: + type: string + - description: |- + Filter to return only tag keys that appear with the given `key:value` tag values. For example, `filter[tags]=providername:aws` returns tag keys found on the same cost data, such as `is_aws_ec2_compute` and `aws_instance_type`. + in: query + name: filter[tags] + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + sources: + - focus + value: providername + id: providername + type: cost_tag_key + - attributes: + sources: [] + value: service + id: service + type: cost_tag_key + schema: + $ref: "#/components/schemas/CostTagKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag keys + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_keys/{tag_key}: + get: + description: Get details for a specific Cloud Cost Management tag key, including example tag values and description. + operationId: GetCostTagKey + parameters: + - $ref: "#/components/parameters/TagKey" + - description: The Cloud Cost Management metric to scope the tag key details to. When omitted, returns details across all metrics. + in: query + name: filter[metric] + schema: + type: string + - description: |- + Controls the size of the internal tag value search scope. This does **not** restrict the number of example tag values returned in the response. Defaults to 50, maximum 10000. + in: query + name: page[size] + schema: + default: 50 + format: int32 + maximum: 10000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + details: + description: The cloud provider name reported for the cost line item. + tag_values: + - aws + - gcp + - azure + sources: + - focus + value: providername + id: providername + type: cost_tag_key + schema: + $ref: "#/components/schemas/CostTagKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get a Cloud Cost Management tag key + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_metadata: + get: + description: List Cloud Cost Management tag key metadata, including row counts, cost covered, cardinality, and a sample of top tag values per cloud account. Use `filter[daily]=true` to return daily rows instead of the default monthly roll-up. + operationId: ListCostTagMetadata + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: "2026-02" + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + - description: Filter results to a specific Cloud Cost Management metric (for example, `aws.cost.net.amortized`). When omitted, every available metric for the requested period is returned. + in: query + name: filter[metric] + schema: + type: string + - description: Restrict results to a single tag key. + in: query + name: filter[tag_key] + schema: + type: string + - description: When `true`, return one row per day with the day in the `date` attribute. Defaults to the monthly roll-up when omitted. + in: query + name: filter[daily] + schema: + $ref: "#/components/schemas/CostTagMetadataDailyFilter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cardinality_by_account: + "123456789012": 42 + cost_covered: 1234.56 + metric: aws.cost.net.amortized + row_count: 100 + tag_sources: + - aws-user-defined + top_values_by_account: + "123456789012": + - prod + - staging + id: env:aws.cost.net.amortized + type: cost_tag_key_metadata + schema: + $ref: "#/components/schemas/CostTagKeyMetadataResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag key metadata + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/currency: + get: + description: Get the dominant billing currency observed in Cloud Cost Management data for the requested period. The response wraps the currency in a JSON:API `data` array containing at most one entry; the array is empty when no currency data is available. + operationId: GetCostTagMetadataCurrency + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: "2026-02" + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: USD + type: cost_currency + schema: + $ref: "#/components/schemas/CostCurrencyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get the Cloud Cost Management billing currency + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/metrics: + get: + description: List Cloud Cost Management metrics that have data for the requested period. + operationId: ListCostTagMetadataMetrics + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: "2026-02" + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: aws.cost.net.amortized + type: cost_metric + - id: gcp.cost.amortized + type: cost_metric + schema: + $ref: "#/components/schemas/CostMetricsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List available Cloud Cost Management metrics + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/months: + get: + description: |- + List months that have Cloud Cost Management tag metadata for a given provider, + ordered most-recent first. The response is capped at 36 months. + operationId: ListCostTagMetadataMonths + parameters: + - description: |- + Provider to scope the query to. Use the value of the `providername` tag in CCM + (for example, `aws`, `azure`, `gcp`, `Oracle`, `Confluent Cloud`, `Snowflake`). + For costs uploaded through the Custom Costs API, use `custom`. + Values are case-sensitive. + example: aws + in: query + name: filter[provider] + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: "2026-04" + type: cost_tag_metadata_month + - id: "2026-03" + type: cost_tag_metadata_month + schema: + $ref: "#/components/schemas/CostTagMetadataMonthsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag metadata months + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/orchestrators: + get: + description: List container orchestrators (for example, `kubernetes`, `ecs`) detected in Cloud Cost Management data for the requested period. + operationId: ListCostTagMetadataOrchestrators + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: "2026-02" + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: ecs + type: cost_orchestrator + - id: kubernetes + type: cost_orchestrator + schema: + $ref: "#/components/schemas/CostOrchestratorsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management orchestrators + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/tag_sources: + get: + description: List Cloud Cost Management tag keys observed for the requested period, along with the origin sources that produced them (for example, `aws-user-defined`, `custom`). + operationId: ListCostTagKeySources + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: "2026-02" + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + - description: Filter results to tag keys that have data for a specific Cloud Cost Management metric (for example, `aws.cost.net.amortized`). When omitted, all tag keys for the requested period are returned. + in: query + name: filter[metric] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + tag_key: env + tag_sources: + - aws-user-defined + - custom + id: env + type: cost_tag_key_source + - attributes: + tag_key: service + tag_sources: + - aws + id: service + type: cost_tag_key_source + schema: + $ref: "#/components/schemas/CostTagKeySourcesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag sources + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tags: + get: + description: List Cloud Cost Management tags for a given metric. + operationId: ListCostTags + parameters: + - description: The Cloud Cost Management metric to scope the tags to. When omitted, returns tags across all metrics. + in: query + name: filter[metric] + schema: + type: string + - description: A substring used to filter the returned tags by name. + in: query + name: filter[match] + schema: + type: string + - description: |- + Filter to return only tags that appear with the given `key:value` tag values. For example, `filter[tags]=providername:aws` returns tags found on the same cost data, such as `aws_instance_type:t3.micro` and `aws_instance_type:m5.large`. + in: query + name: filter[tags] + schema: + items: + type: string + type: array + - description: Restrict the returned tags to those whose key matches one of the given tag keys. + in: query + name: filter[tag_keys] + schema: + items: + type: string + type: array + - description: |- + Controls the size of the internal tag search scope. This does **not** restrict the number of tags returned in the response. Defaults to 50, maximum 10000. + in: query + name: page[size] + schema: + default: 50 + format: int32 + maximum: 10000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + sources: + - focus + value: providername:aws + id: providername:aws + type: cost_tag + - attributes: + sources: + - focus + value: providername:gcp + id: providername:gcp + type: cost_tag + schema: + $ref: "#/components/schemas/CostTagsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tags + tags: + - Cloud Cost Management + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost_by_tag/active_billing_dimensions: + get: + description: |- + Get active billing dimensions for cost attribution. Cost data for a given month becomes available no later than the 19th of the following month. + operationId: GetActiveBillingDimensions + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + id: abc-123 + type: billing_dimensions + schema: + $ref: "#/components/schemas/ActiveBillingDimensionsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get active billing dimensions for cost attribution + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/cost_by_tag/monthly_cost_attribution: + get: + description: |- + Get monthly cost attribution by tag across multi-org and single root-org accounts. + Cost Attribution data for a given month becomes available no later than the 19th of the following month. + This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is + set in the response. If it is, make another request and pass `next_record_id` as a parameter. + Pseudo code example: + ``` + response := GetMonthlyCostAttribution(start_month, end_month) + cursor := response.metadata.pagination.next_record_id + WHILE cursor != null BEGIN + sleep(5 seconds) # Avoid running into rate limit + response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor) + cursor := response.metadata.pagination.next_record_id + END + ``` + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). This endpoint is not available in the Government (US1-FED) site. + operationId: GetMonthlyCostAttribution + parameters: + - description: |- + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning in this month. + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month." + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: |- + Comma-separated list specifying cost types (e.g., `_on_demand_cost`, `_committed_cost`, `_total_cost`) and the + proportions (`_percentage_in_org`, `_percentage_in_account`). Use `*` to retrieve all fields. + Example: `infra_host_on_demand_cost,infra_host_percentage_in_account` + To obtain the complete list of active billing dimensions that can be used to replace + `` in the field names, make a request to the [Get active billing dimensions API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution). + in: query + name: fields + required: true + schema: + type: string + - description: "The direction to sort by: `[desc, asc]`." + in: query + name: sort_direction + required: false + schema: + $ref: "#/components/schemas/SortDirection" + - description: "The billing dimension to sort by. Always sorted by total cost. Example: `infra_host`." + in: query + name: sort_name + required: false + schema: + type: string + - description: |- + Comma separated list of tag keys used to group cost. If no value is provided the cost will not be broken down by tags. + To see which tags are available, look for the value of `tag_config_source` in the API response. + in: query + name: tag_breakdown_keys + required: false + schema: + type: string + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + - description: "Include child org cost in the response. Defaults to `true`." + in: query + name: include_descendants + required: false + schema: + default: true + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + - id: abc-123 + type: cost_by_tag + schema: + $ref: "#/components/schemas/MonthlyCostAttributionResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get Monthly Cost Attribution + tags: + - Usage Metering + "x-permission": + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/csm/onboarding/agents: + get: + description: Get the list of all CSM Agents running on your hosts and containers. + operationId: ListAllCSMAgents + parameters: + - description: The page index for pagination (zero-based). + in: query + name: page + required: false + schema: + example: 2 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of items to include in a single page. + in: query + name: size + required: false + schema: + example: 12 + format: int32 + maximum: 100 + minimum: 0 + type: integer + - description: A search query string to filter results (for example, `hostname:COMP-T2H4J27423`). + in: query + name: query + required: false + schema: + example: "hostname:COMP-T2H4J27423" + type: string + - description: The sort direction for results. Use `asc` for ascending or `desc` for descending. + in: query + name: order_direction + required: false + schema: + $ref: "#/components/schemas/OrderDirection" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + agent_version: "7.50.0" + hostname: example-host + os: linux + id: abc-123 + type: datadog_agent + meta: + page_index: 0 + page_size: 10 + total_filtered: 1 + schema: + $ref: "#/components/schemas/CsmAgentsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all CSM Agents + tags: ["CSM Agents"] + /api/v2/csm/onboarding/coverage_analysis/cloud_accounts: + get: + description: |- + Get the CSM Coverage Analysis of your Cloud Accounts. + This is calculated based on the number of your Cloud Accounts that are + scanned for security issues. + operationId: GetCSMCloudAccountsCoverageAnalysis + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + org_id: 123 + total_coverage: + configured_resources_count: 8 + coverage: 0.8 + partially_configured_resources_count: 0 + total_resources_count: 10 + id: abc-123 + type: get_cloud_accounts_coverage_analysis_response_public_v0 + schema: + $ref: "#/components/schemas/CsmCloudAccountsCoverageAnalysisResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the CSM Cloud Accounts Coverage Analysis + tags: ["CSM Coverage Analysis"] + /api/v2/csm/onboarding/coverage_analysis/hosts_and_containers: + get: + description: |- + Get the CSM Coverage Analysis of your Hosts and Containers. + This is calculated based on the number of agents running on your Hosts + and Containers with CSM feature(s) enabled. + operationId: GetCSMHostsAndContainersCoverageAnalysis + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + org_id: 123 + total_coverage: + configured_resources_count: 8 + coverage: 0.8 + partially_configured_resources_count: 0 + total_resources_count: 10 + id: abc-123 + type: get_hosts_and_containers_coverage_analysis_response_public_v0 + schema: + $ref: "#/components/schemas/CsmHostsAndContainersCoverageAnalysisResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the CSM Hosts and Containers Coverage Analysis + tags: ["CSM Coverage Analysis"] + /api/v2/csm/onboarding/coverage_analysis/serverless: + get: + description: |- + Get the CSM Coverage Analysis of your Serverless Resources. + This is calculated based on the number of agents running on your Serverless + Resources with CSM feature(s) enabled. + operationId: GetCSMServerlessCoverageAnalysis + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + org_id: 123 + total_coverage: + configured_resources_count: 8 + coverage: 0.8 + partially_configured_resources_count: 0 + total_resources_count: 10 + id: abc-123 + type: get_serverless_coverage_analysis_response_public_v0 + schema: + $ref: "#/components/schemas/CsmServerlessCoverageAnalysisResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the CSM Serverless Coverage Analysis + tags: ["CSM Coverage Analysis"] + /api/v2/csm/onboarding/serverless/agents: + get: + description: Get the list of all CSM Serverless Agents running on your hosts and containers. + operationId: ListAllCSMServerlessAgents + parameters: + - description: The page index for pagination (zero-based). + in: query + name: page + required: false + schema: + example: 2 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of items to include in a single page. + in: query + name: size + required: false + schema: + example: 12 + format: int32 + maximum: 100 + minimum: 0 + type: integer + - description: A search query string to filter results (for example, `hostname:COMP-T2H4J27423`). + in: query + name: query + required: false + schema: + example: "hostname:COMP-T2H4J27423" + type: string + - description: The sort direction for results. Use `asc` for ascending or `desc` for descending. + in: query + name: order_direction + required: false + schema: + $ref: "#/components/schemas/OrderDirection" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + agent_version: "7.50.0" + hostname: example-host + os: linux + id: abc-123 + type: datadog_agent + meta: + page_index: 0 + page_size: 10 + total_filtered: 1 + schema: + $ref: "#/components/schemas/CsmAgentsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all CSM Serverless Agents + tags: ["CSM Agents"] + /api/v2/csm/ownership/settings: + get: + description: Get ownership settings for the org. When settings are unset, the API returns the default opt-out configuration with `auto_tag` set to `true` and `confidence_level` set to `high`. + operationId: GetOwnershipSettings + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_tag: true + confidence_level: high + version: 1 + id: settings + type: ownership_settings + schema: + $ref: "#/components/schemas/OwnershipSettingsResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get ownership settings for the org + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Update ownership settings for the org. + operationId: PostOwnershipSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_tag: true + confidence_level: high + type: ownership_settings + schema: + $ref: "#/components/schemas/OwnershipSettingsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_tag: true + confidence_level: high + version: 1 + id: settings + type: ownership_settings + schema: + $ref: "#/components/schemas/OwnershipSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update ownership settings for the org + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/settings/untagged: + get: + description: Count findings with no team tag, grouped by ownership confidence level. + operationId: GetOwnershipUntaggedFindings + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + high_confidence: 30 + low_confidence: 42 + medium_confidence: 70 + total: 142 + id: untagged + type: ownership_untagged_findings + schema: + $ref: "#/components/schemas/OwnershipUntaggedFindingsResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Count untagged findings by ownership confidence + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}: + get: + description: Get all current ownership inferences for a resource, one per owner type (`user`, `team`, `service`, `unknown`). + operationId: ListOwnershipInferences + parameters: + - description: The identifier of the resource to retrieve ownership inferences for. + in: path + name: resource_id + required: true + schema: + example: test-resource + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - checksum: abc123 + confidence: "0.9500" + created_at: "2026-01-15T10:00:00Z" + evidence_versions: + - pipeline_id: p1 + explanation: High confidence match + id: test-resource:team + owner_type: team + primary_contact_ref: ref:handle/team-a + sources: [] + status: suggested + updated_at: "2026-01-15T10:00:00Z" + id: test-resource + type: ownership_inferences + schema: + $ref: "#/components/schemas/OwnershipInferenceListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ownership inferences for a resource + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/history: + get: + description: List inference history entries for a resource across all owner types, ordered from most recent to oldest. Uses cursor-based pagination. + operationId: ListOwnershipHistory + parameters: + - description: The identifier of the resource to retrieve inference history for. + in: path + name: resource_id + required: true + schema: + example: res-1 + type: string + - description: An opaque, base64-encoded cursor token returned by a previous call in `pagination.next_cursor`. Omit to fetch the first page. + in: query + name: cursor + required: false + schema: + example: eyJpZCI6OTh9 + type: string + - description: The maximum number of history entries to return per page. + in: query + name: limit + required: false + schema: + default: 25 + example: 25 + format: int32 + maximum: 100 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - checksum: "" + confidence: "0.9000" + created_at: "2026-01-15T10:00:00Z" + evidence_versions: + explanation: "" + failed_at: + failure_reason: + id: 100 + owner_type: team + primary_contact_ref: ref:handle/team-a + resource_id: res-1 + retry_schedule: + sources: [] + status: suggested + pagination: + has_more: false + next_cursor: + id: res-1 + type: ownership_history + schema: + $ref: "#/components/schemas/OwnershipHistoryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ownership inference history for a resource + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}: + get: + description: |- + Get the current ownership inference for a resource for a specific owner type. + + This endpoint supports ETag-based caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the inference has not changed. + operationId: GetOwnershipInference + parameters: + - description: The identifier of the resource to retrieve the ownership inference for. + in: path + name: resource_id + required: true + schema: + example: test-resource + type: string + - description: The owner type of the inference to retrieve. + in: path + name: owner_type + required: true + schema: + $ref: "#/components/schemas/OwnershipOwnerType" + - description: A previously returned `ETag` value. When supplied and the resource has not changed, the endpoint returns `304 Not Modified`. + in: header + name: If-None-Match + required: false + schema: + example: '"abc123"' + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + checksum: abc123 + confidence: "0.9500" + created_at: "2026-01-15T10:00:00Z" + evidence_versions: + - pipeline_id: p1 + explanation: High confidence match + owner_type: team + primary_contact_ref: ref:handle/team-a + sources: [] + status: suggested + updated_at: "2026-01-15T10:00:00Z" + id: test-resource:team + type: ownership_inference + schema: + $ref: "#/components/schemas/OwnershipInferenceResponse" + description: OK + headers: + Cache-Control: + description: The cache control directives applied to the response. + schema: + example: private, max-age=60 + type: string + ETag: + description: A strong validator that identifies the current state of the inference. + schema: + example: '"abc123"' + type: string + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an ownership inference by owner type + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}/evidence: + get: + description: |- + Get the evidence versions backing the current ownership inference for a resource and owner type. + + This endpoint supports weak ETag caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the evidence has not changed. + operationId: GetOwnershipEvidence + parameters: + - description: The identifier of the resource to retrieve evidence for. + in: path + name: resource_id + required: true + schema: + example: test-resource + type: string + - description: The owner type of the inference to retrieve evidence for. + in: path + name: owner_type + required: true + schema: + $ref: "#/components/schemas/OwnershipOwnerType" + - description: A previously returned weak `ETag` value. When supplied and the evidence has not changed, the endpoint returns `304 Not Modified`. + in: header + name: If-None-Match + required: false + schema: + example: W/"f2e126916327bda8" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + evidence_versions: + - pipeline_id: p1 + version: v3 + id: test-resource + type: ownership_evidence + schema: + $ref: "#/components/schemas/OwnershipEvidenceResponse" + description: OK + headers: + ETag: + description: A weak validator that identifies the current state of the evidence. + schema: + example: W/"f2e126916327bda8" + type: string + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the evidence for an ownership inference + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}/feedback: + post: + description: |- + Submit feedback on the current ownership inference for a resource and owner type. Valid actions are `confirm`, `reject`, `correct`, and `persist`. + + The request must include the current inference `checksum` in `inference_checksum`. If the checksum does not match the current inference state, the endpoint returns `409 Conflict`. + + When `action` is `correct`, `corrected_owner_handle` and `corrected_owner_type` are required. + operationId: CreateOwnershipFeedback + parameters: + - description: The identifier of the resource that the feedback applies to. + in: path + name: resource_id + required: true + schema: + example: res-1 + type: string + - description: The type of owner that the feedback applies to. + in: path + name: owner_type + required: true + schema: + $ref: "#/components/schemas/OwnershipOwnerType" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: confirm + actor_handle: user@example.com + actor_type: user + inference_checksum: abc123 + type: ownership_feedback + schema: + $ref: "#/components/schemas/OwnershipFeedbackRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: confirm + checksum: abc123 + new_status: suggested + owner_type: team + previous_status: suggested + primary_contact_ref: ref:handle/team-a + updated_at: "2026-01-15T10:00:00Z" + id: res-1 + type: ownership_feedback_result + schema: + $ref: "#/components/schemas/OwnershipFeedbackResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/OwnershipInferenceResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Submit feedback on an ownership inference + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}/history: + get: + description: List inference history entries for a resource filtered by owner type, ordered from most recent to oldest. Uses cursor-based pagination. + operationId: ListOwnershipHistoryByOwnerType + parameters: + - description: The identifier of the resource to retrieve inference history for. + in: path + name: resource_id + required: true + schema: + example: res-1 + type: string + - description: The owner type to filter history by. + in: path + name: owner_type + required: true + schema: + $ref: "#/components/schemas/OwnershipOwnerType" + - description: An opaque, base64-encoded cursor token returned by a previous call in `pagination.next_cursor`. Omit to fetch the first page. + in: query + name: cursor + required: false + schema: + example: eyJpZCI6OTh9 + type: string + - description: The maximum number of history entries to return per page. + in: query + name: limit + required: false + schema: + default: 25 + example: 25 + format: int32 + maximum: 100 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - checksum: "" + confidence: "0.9000" + created_at: "2026-01-15T10:00:00Z" + evidence_versions: + explanation: "" + failed_at: + failure_reason: + id: 100 + owner_type: team + primary_contact_ref: ref:handle/team-a + resource_id: res-1 + retry_schedule: + sources: [] + status: suggested + pagination: + has_more: false + next_cursor: + id: res-1 + type: ownership_history + schema: + $ref: "#/components/schemas/OwnershipHistoryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ownership history by owner type + tags: ["CSM Ownership"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/agentless_hosts: + get: + description: Get the list of agentless hosts for CSM, with optional pagination and filtering. + operationId: ListCSMAgentlessHosts + parameters: + - description: The page index for pagination (zero-based). + in: query + name: page + required: false + schema: + default: 0 + example: 0 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of agentless hosts to return per page. + in: query + name: size + required: false + schema: + default: 10 + example: 10 + format: int32 + maximum: 100 + minimum: 1 + type: integer + - description: A search query string to filter agentless hosts. + in: query + name: query + required: false + schema: + example: "cloud_provider:aws" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: "123456789012" + cloud_provider: aws + has_posture_management: true + has_vulnerability_scanning: true + resource_type: aws_ec2_instance + id: i-0123456789abcdef0 + type: agentless_host + meta: + page_index: 0 + page_size: 10 + total_filtered: 1 + schema: + $ref: "#/components/schemas/CsmAgentlessHostsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List agentless hosts + tags: ["CSM Settings"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/agentless_hosts/facet_info: + get: + description: Get the value distribution for a specific agentless host facet, with optional search and filtering. + operationId: GetCSMAgentlessHostFacetInfo + parameters: + - description: The facet identifier to retrieve value distribution for. Valid values are `resource_name`, `account_id`, `resource_type`, `cloud_provider`, `has_vulnerability_scanning`, and `has_posture_management`. + in: query + name: facet + required: true + schema: + example: cloud_provider + type: string + - description: A search string to filter the facet values. + in: query + name: search + required: false + schema: + example: aws + type: string + - description: A filter query to scope the facet value counts. + in: query + name: query + required: false + schema: + example: "cloud_provider:aws" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - count: 100 + value: aws + - count: 50 + value: gcp + id: cloud_provider + meta: + total_count: 2 + type: facet_info + schema: + $ref: "#/components/schemas/CsmHostFacetInfoResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get agentless host facet info + tags: ["CSM Settings"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/agentless_hosts/facets: + get: + description: Get the list of available facets for filtering agentless hosts. + operationId: ListCSMAgentlessHostFacets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + bounded: true + bundled: true + bundledAndUsed: true + defaultValues: [] + description: The cloud provider of the resource. + editable: false + facetType: list + groups: + - agentless + name: Cloud Provider + path: cloud_provider + source: core + type: string + values: + - aws + - gcp + - azure + - oci + id: cloud_provider + type: agentless_host_facet + schema: + $ref: "#/components/schemas/CsmAgentlessHostFacetsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List agentless host facets + tags: ["CSM Settings"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/hosts: + get: + description: Get the list of unified hosts for CSM, combining agent and agentless host data, with optional pagination and filtering. + operationId: ListCSMUnifiedHosts + parameters: + - description: The page index for pagination (zero-based). + in: query + name: page + required: false + schema: + default: 0 + example: 0 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of hosts to return per page. + in: query + name: size + required: false + schema: + default: 10 + example: 10 + format: int32 + maximum: 100 + minimum: 1 + type: integer + - description: A search query string to filter unified hosts. + in: query + name: query + required: false + schema: + example: "source:agent" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + agent_cws_enabled: false + agent_posture_management: true + agent_version: 7.50.0 + datadog_agent_key: key123 + os: linux + source: agent + id: agent-host + type: unified_host + - attributes: + account_id: "123456789012" + agentless_posture_management: true + agentless_vulnerability_scanning: true + cloud_provider: aws + resource_type: aws_ec2_instance + source: agentless + id: i-0123456789abcdef0 + type: unified_host + meta: + page_index: 0 + page_size: 10 + total_filtered: 2 + total_pages: 1 + schema: + $ref: "#/components/schemas/CsmUnifiedHostsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List unified hosts + tags: ["CSM Settings"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/hosts/facet_info: + get: + description: Get the value distribution for a specific unified host facet, with optional search and filtering. + operationId: GetCSMUnifiedHostFacetInfo + parameters: + - description: The facet identifier to retrieve value distribution for. Valid values include `resource_name`, `account_id`, `resource_type`, `cloud_provider`, `agentless_vulnerability_scanning`, `agentless_posture_management`, `hostname`, `agent_version`, `os`, `cluster_name`, `agent_posture_management`, `agent_cws_enabled`, `agent_csm_vm_hosts_enabled`, and `agent_csm_vm_containers_enabled`. + in: query + name: facet + required: true + schema: + example: cloud_provider + type: string + - description: A search string to filter the facet values. + in: query + name: search + required: false + schema: + example: aws + type: string + - description: A filter query to scope the facet value counts. + in: query + name: query + required: false + schema: + example: "cloud_provider:aws" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - count: 100 + value: aws + - count: 50 + value: gcp + id: cloud_provider + meta: + total_count: 2 + type: facet_info + schema: + $ref: "#/components/schemas/CsmHostFacetInfoResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get unified host facet info + tags: ["CSM Settings"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/hosts/facets: + get: + description: Get the list of available facets for filtering unified hosts. + operationId: ListCSMUnifiedHostFacets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + bounded: true + bundled: true + bundledAndUsed: true + defaultValues: [] + description: The cloud provider of the resource. + editable: false + facetType: list + groups: + - hosts + name: Cloud Provider + path: cloud_provider + source: core + type: string + values: + - aws + - gcp + - azure + - oci + id: cloud_provider + type: unified_host_facet + schema: + $ref: "#/components/schemas/CsmUnifiedHostFacetsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List unified host facets + tags: ["CSM Settings"] + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/current_user: + get: + description: |- + Get the user associated with the current authentication context. + The response includes the user's profile attributes (name, email, handle, + status, MFA state), along with related resources: the user's organization, + assigned roles with their granted permissions, and team-scoped roles. + No additional permissions are required beyond valid authentication. + operationId: GetCurrentUser + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00+00:00" + disabled: false + email: jane.doe@example.com + handle: jane.doe + icon: "https://secure.gravatar.com/avatar/abc123" + mfa_enabled: true + modified_at: "2024-06-01T12:00:00+00:00" + name: Jane Doe + service_account: false + status: Active + title: Senior Engineer + verified: true + id: 00000000-0000-9999-0000-000000000000 + type: users + included: [] + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get current user + tags: + - Users + patch: + description: |- + Edit the profile of the currently authenticated user. Updatable fields + include `name`, `title`, `email`, and `disabled` status. The `id` field + in the request body must match the authenticated user's UUID; a mismatch + returns a 422 error. Email address changes are recorded in the audit trail. + Requires the `user_self_profile_write` permission. + operationId: UpdateCurrentUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: jane.doe@example.com + name: Jane Doe + title: Staff Engineer + id: 00000000-0000-9999-0000-000000000000 + type: users + schema: + $ref: "#/components/schemas/UserUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00+00:00" + disabled: false + email: jane.doe@example.com + handle: jane.doe + icon: "https://secure.gravatar.com/avatar/abc123" + mfa_enabled: true + modified_at: "2024-06-01T12:00:00+00:00" + name: Jane Doe + service_account: false + status: Active + title: Staff Engineer + verified: true + id: 00000000-0000-9999-0000-000000000000 + type: users + included: [] + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update current user + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_self_profile_write + /api/v2/current_user/application_keys: + get: + description: List all application keys available for current user + operationId: ListCurrentUserApplicationKeys + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/ApplicationKeysSortParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter" + - $ref: "#/components/parameters/ApplicationKeyIncludeParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000004 + type: application_keys + schema: + $ref: "#/components/schemas/ListApplicationKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all application keys owned by current user + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - user_app_keys + post: + description: Create an application key for current user + operationId: CreateCurrentUserApplicationKey + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000005 + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an application key for current user + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_app_keys + /api/v2/current_user/application_keys/{app_key_id}: + delete: + description: Delete an application key owned by current user + operationId: DeleteCurrentUserApplicationKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an application key owned by current user + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - user_app_keys + get: + description: |- + Get an application key owned by current user. + The `key` field is not returned for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + operationId: GetCurrentUserApplicationKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000006 + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get one application key owned by current user + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - user_app_keys + patch: + description: |- + Edit an application key owned by current user. + The `key` field is not returned for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + operationId: UpdateCurrentUserApplicationKey + parameters: + - $ref: "#/components/parameters/ApplicationKeyID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + id: 00112233-4455-6677-8899-aabbccddeeff + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2020-11-23T10:00:00.000Z" + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000007 + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an application key owned by current user + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_app_keys + /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards: + delete: + description: Delete dashboards from an existing dashboard list. + operationId: DeleteDashboardListItems + parameters: + - description: ID of the dashboard list to delete items from. + in: path + name: dashboard_list_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard + schema: + $ref: "#/components/schemas/DashboardListDeleteItemsRequest" + description: Dashboards to delete from the dashboard list. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + deleted_dashboards_from_list: + - id: q5j-nti-fv6 + type: host_timeboard + schema: + $ref: "#/components/schemas/DashboardListDeleteItemsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete items from a dashboard list + tags: + - Dashboard Lists + x-codegen-request-body-name: body + get: + description: Fetch the dashboard list’s dashboard definitions. + operationId: GetDashboardListItems + parameters: + - description: ID of the dashboard list to get items from. + in: path + name: dashboard_list_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard + total: 1 + schema: + $ref: "#/components/schemas/DashboardListItems" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get items of a Dashboard List + tags: + - Dashboard Lists + "x-permission": + operator: OR + permissions: + - dashboards_read + post: + description: Add dashboards to an existing dashboard list. + operationId: CreateDashboardListItems + parameters: + - description: ID of the dashboard list to add items to. + in: path + name: dashboard_list_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard + schema: + $ref: "#/components/schemas/DashboardListAddItemsRequest" + description: Dashboards to add to the dashboard list. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + added_dashboards_to_list: + - id: q5j-nti-fv6 + type: host_timeboard + schema: + $ref: "#/components/schemas/DashboardListAddItemsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add Items to a Dashboard List + tags: + - Dashboard Lists + x-codegen-request-body-name: body + put: + description: Update dashboards of an existing dashboard list. + operationId: UpdateDashboardListItems + parameters: + - description: ID of the dashboard list to update items from. + in: path + name: dashboard_list_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard + schema: + $ref: "#/components/schemas/DashboardListUpdateItemsRequest" + description: New dashboards of the dashboard list. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard + schema: + $ref: "#/components/schemas/DashboardListUpdateItemsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update items of a dashboard list + tags: + - Dashboard Lists + x-codegen-request-body-name: body + /api/v2/dashboard/{dashboard_id}/shared: + get: + description: Retrieve shared dashboards associated with the specified dashboard. + operationId: ListSharedDashboardsByDashboardId + parameters: + - $ref: "#/components/parameters/SharedDashboardDashboardIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2026-01-01T00:00:00.000Z" + embeddable_domains: [] + expiration: + global_time: + live_span: 1h + global_time_selectable: false + invitees: + - access_expiration: + created_at: "2026-01-01T00:00:00.000Z" + email: jane.doe@example.com + last_accessed: + selectable_template_vars: [] + share_type: invite + sharer_disabled: false + status: active + title: Q1 Metrics Dashboard + token: abc-123-token + url: https://p.datadoghq.com/sb/abc-123-token + viewing_preferences: + high_density: false + theme: system + id: "12345" + relationships: + dashboard: + data: + id: abc-def-ghi + type: dashboard + sharer: + data: + id: 00000000-0000-0000-0000-000000000000 + type: user + type: shared_dashboard + included: + - attributes: + title: Q1 Metrics Dashboard + id: abc-def-ghi + type: dashboard + - attributes: + handle: jane.doe@example.com + name: Jane Doe + id: 00000000-0000-0000-0000-000000000000 + type: user + schema: + $ref: "#/components/schemas/ListSharedDashboardsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Dashboard Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: List shared dashboards for a dashboard + tags: + - Dashboard Sharing + "x-permission": + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboard/{dashboard_id}/shared/secure-embed: + post: + description: >- + Create a secure embed share for a dashboard. The response includes a one-time `credential` used for HMAC-SHA256 signing. Store it securely — it cannot be retrieved again. + operationId: CreateDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + global_time: + live_span: "1h" + global_time_selectable: true + selectable_template_vars: + - default_values: ["1"] + name: "org_id" + prefix: "org_id" + visible_tags: ["1"] + status: active + title: "Q1 Metrics Dashboard" + viewing_preferences: + high_density: false + theme: "system" + type: secure_embed_request + schema: + $ref: "#/components/schemas/SecureEmbedCreateRequest" + description: Secure embed creation request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + credential: example-credential-value + dashboard_id: abc-def-ghi + global_time_selectable: true + id: "12345" + share_type: secure_embed + status: active + title: "Q1 Metrics Dashboard" + token: abc-123-token + url: "https://p.datadoghq.com/sb/secure-embed/abc-123-token" + id: "12345" + type: secure_embed_create_response + schema: + $ref: "#/components/schemas/SecureEmbedCreateResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Dashboard Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict — max 1000 share URLs per dashboard exceeded + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Create a secure embed for a dashboard + tags: + - Dashboard Secure Embed + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}: + delete: + description: >- + Delete a secure embed share for a dashboard. + operationId: DeleteDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + - $ref: "#/components/parameters/SecureEmbedTokenPathParameter" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Delete a secure embed for a dashboard + tags: + - Dashboard Secure Embed + "x-permission": + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: >- + Retrieve an existing secure embed configuration for a dashboard. + operationId: GetDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + - $ref: "#/components/parameters/SecureEmbedTokenPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + credential_suffix: ab3f + dashboard_id: abc-def-ghi + global_time_selectable: true + id: "12345" + share_type: secure_embed + status: active + title: "Q1 Metrics Dashboard" + token: abc-123-token + url: "https://p.datadoghq.com/sb/secure-embed/abc-123-token" + id: "12345" + type: secure_embed_get_response + schema: + $ref: "#/components/schemas/SecureEmbedGetResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a secure embed for a dashboard + tags: + - Dashboard Secure Embed + "x-permission": + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: >- + Partially update a secure embed configuration. All fields are optional (PATCH semantics). + operationId: UpdateDashboardSecureEmbed + parameters: + - $ref: "#/components/parameters/DashboardIDPathParameter" + - $ref: "#/components/parameters/SecureEmbedTokenPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + status: active + title: "Q1 Metrics Dashboard (Updated)" + type: secure_embed_update_request + schema: + $ref: "#/components/schemas/SecureEmbedUpdateRequest" + description: Secure embed update request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + credential_suffix: ab3f + dashboard_id: abc-def-ghi + global_time_selectable: true + id: "12345" + share_type: secure_embed + status: active + title: "Q1 Metrics Dashboard (Updated)" + token: abc-123-token + url: "https://p.datadoghq.com/sb/secure-embed/abc-123-token" + id: "12345" + type: secure_embed_update_response + schema: + $ref: "#/components/schemas/SecureEmbedUpdateResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Update a secure embed for a dashboard + tags: + - Dashboard Secure Embed + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboards/usage: + get: + description: Get paginated usage statistics for every dashboard in the caller's organization. Use `page[limit]` and `page[offset]` to walk the result set. Use `filter[edited_before]` or `filter[viewed_before]` to narrow results by edit or view date. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included. + operationId: ListDashboardsUsage + parameters: + - description: Maximum number of dashboards to return per page. Server-side maximum is 500; values above 500 return a 400 Bad Request. + in: query + name: page[limit] + required: false + schema: + default: 250 + format: int64 + type: integer + - description: Zero-based offset into the result set. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Return only dashboards whose last edit (`edited_at`) is strictly before this ISO 8601 timestamp (`edited_at < value`; boundary matches are excluded). Must include a timezone offset (for example, `Z` or `+00:00`); naive timestamps return HTTP 400. + in: query + name: filter[edited_before] + required: false + schema: + example: "2025-04-26T00:00:00Z" + type: string + - description: Return only dashboards whose most recent view (`viewed_at`) is strictly before this ISO 8601 timestamp, including dashboards that have never been viewed. Must include a timezone offset; naive timestamps return HTTP 400. Orgs without Real User Monitoring (RUM) will see all dashboards returned by this filter. + in: query + name: filter[viewed_before] + required: false + schema: + example: "2025-04-26T00:00:00Z" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: + handle: "jane.doe@example.com" + id: "00000000-0000-0000-0000-000000000000" + is_disabled: false + name: "Jane Doe" + created_at: "2026-01-15T09:30:00.000Z" + dashboard_quality_score: 0.85 + edited_at: "2026-04-20T11:05:00.000Z" + org_id: 100 + teams: ["sre"] + title: "My production overview" + total_views: 42 + total_views_by_type: + embed: 12 + in_app: 30 + viewed_at: "2026-05-01T14:22:10.000Z" + viewer: + handle: "john.smith@example.com" + id: "00000000-0000-0000-0000-000000000001" + is_disabled: false + name: "John Smith" + widget_count: 12 + widget_count_by_type: + query_value: 4 + timeseries: 8 + id: "q5j-nti-fv6" + type: "dashboards-usages" + links: + first: "https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=0&page[limit]=250" + last: "https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=1000&page[limit]=250" + next: "https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=250&page[limit]=250" + self: "https://api.datadoghq.com/api/v2/dashboards/usage" + meta: + page: + first_offset: 0 + last_offset: 1000 + limit: 250 + next_offset: 250 + offset: 0 + prev_offset: + total: 1234 + type: offset_limit + schema: + $ref: "#/components/schemas/ListDashboardsUsageResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get usage stats for all dashboards + tags: + - Dashboards + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-permission: + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboards/{dashboard_id}/usage: + get: + description: Get usage statistics for a single dashboard. The response includes view counts, the most recent view and edit times, widget counts, and the dashboard quality score. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included. + operationId: GetDashboardUsage + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + example: "q5j-nti-fv6" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: + handle: "jane.doe" + id: "00000000-0000-0000-0000-000000000000" + is_disabled: false + name: "Jane Doe" + created_at: "2026-01-15T09:30:00.000Z" + dashboard_quality_score: 0.85 + edited_at: "2026-04-20T11:05:00.000Z" + org_id: 100 + teams: ["sre"] + title: "My production overview" + total_views: 42 + total_views_by_type: + embed: 12 + in_app: 30 + viewed_at: "2026-05-01T14:22:10.000Z" + viewer: + handle: "john.smith" + id: "00000000-0000-0000-0000-000000000001" + is_disabled: false + name: "John Smith" + widget_count: 12 + widget_count_by_type: + query_value: 4 + timeseries: 8 + id: "q5j-nti-fv6" + type: "dashboards-usages" + schema: + $ref: "#/components/schemas/DashboardUsageResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get usage stats for a dashboard + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/data-observability/monitors/runs/{run_id}/status: + get: + description: Retrieves the current status of a data observability monitor run. Poll this endpoint after triggering a run to determine when evaluation is complete. + operationId: GetDataObservabilityMonitorRunStatus + parameters: + - description: The ID of the monitor run to retrieve status for. + example: "abc123def456" + in: path + name: run_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + status: ok + id: "abc123def456" + type: monitor_run + schema: + $ref: "#/components/schemas/GetDataObservabilityMonitorRunStatusResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - data_observability_monitors_write + - monitors_write + summary: Get data observability monitor run status + tags: + - Data Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/data-observability/monitors/{monitor_id}/run: + post: + description: Manually triggers a run for a data observability monitor. Only monitors that are not scheduled (manually-runnable) can be triggered this way. + operationId: RunDataObservabilityMonitor + parameters: + - description: The ID of the data observability monitor to run. + example: 12345 + in: path + name: monitor_id + required: true + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: "abc123def456" + type: monitor_run + schema: + $ref: "#/components/schemas/RunDataObservabilityMonitorResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - data_observability_monitors_write + - monitors_write + summary: Run a data observability monitor + tags: + - Data Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/datasets: + get: + description: Get all datasets that have been configured for an organization. + operationId: GetAllDatasets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000003 + type: dataset + schema: + $ref: "#/components/schemas/DatasetResponseMulti" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get all datasets + tags: + - Datasets + "x-permission": + operator: OR + permissions: + - user_access_read + x-unstable: |- + **Note: Data Access is in preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/).** + post: + description: |- + Create a dataset with the configurations in the request. + operationId: CreateDataset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + restriction_query_id: 00000000-0000-0000-0000-000000000001 + type: dataset + schema: + $ref: "#/components/schemas/DatasetCreateRequest" + description: Dataset payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - "role:abc-123" + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000004 + type: dataset + schema: + $ref: "#/components/schemas/DatasetResponseSingle" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Create a dataset + tags: + - Datasets + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note: Data Access is in preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/).** + /api/v2/datasets/{dataset_id}: + delete: + description: Deletes the dataset associated with the ID. + operationId: DeleteDataset + parameters: + - $ref: "#/components/parameters/DatasetID" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Delete a dataset + tags: + - Datasets + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note: Data Access is in preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/).** + get: + description: Retrieves the dataset associated with the ID. + operationId: GetDataset + parameters: + - $ref: "#/components/parameters/DatasetID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000001 + type: dataset + schema: + $ref: "#/components/schemas/DatasetResponseSingle" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get a single dataset by ID + tags: + - Datasets + "x-permission": + operator: OPEN + permissions: [] + x-unstable: |- + **Note: Data Access is in preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/).** + put: + description: |- + Edits the dataset associated with the ID. + operationId: UpdateDataset + parameters: + - $ref: "#/components/parameters/DatasetID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - "@application.id:ABCD" + product: logs + type: dataset + schema: + $ref: "#/components/schemas/DatasetUpdateRequest" + description: Dataset payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000002 + type: dataset + schema: + $ref: "#/components/schemas/DatasetResponseSingle" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Edit a dataset + tags: + - Datasets + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note: Data Access is in preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/).** + /api/v2/ddsql/query/tabular: + post: + description: |- + Submit a DDSQL statement and return either a `running` state with an opaque `query_id` + for the client to poll, or a `completed` state with the column-major result set inlined + when the query finishes quickly enough to be served synchronously. + operationId: ExecuteDdsqlTabularQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + query: "SELECT cloud_provider, count(*) FROM dd.hosts group by cloud_provider" + row_limit: 1000 + time: + from_timestamp: 1736942400000 + to_timestamp: 1736946000000 + type: ddsql_query_request + schema: + $ref: "#/components/schemas/DdsqlTabularQueryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + completed: + summary: Query finished synchronously + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: "00000000-0000-0000-0000-000000000000" + type: ddsql_query_response + meta: + elapsed: 318 + request_id: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7081" + default: + summary: Query finished synchronously + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: "00000000-0000-0000-0000-000000000000" + type: ddsql_query_response + meta: + elapsed: 318 + request_id: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7081" + running: + summary: Query still executing + value: + data: + attributes: + query_id: "eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ==" + state: running + id: "00000000-0000-0000-0000-000000000000" + type: ddsql_query_response + meta: + elapsed: 42 + request_id: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7081" + schema: + $ref: "#/components/schemas/DdsqlTabularQueryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Execute a tabular DDSQL query + tags: + - DDSQL + /api/v2/ddsql/query/tabular/fetch: + post: + description: |- + Poll a previously submitted DDSQL query for results. Pass the opaque `query_id` returned + by a prior `ExecuteDdsqlTabularQuery` (or by a prior `FetchDdsqlTabularQuery` that + returned `state: running`) and the server returns either a `running` state to poll again + or a `completed` state with the column-major result set inlined. + operationId: FetchDdsqlTabularQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + query_id: "eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ==" + type: ddsql_query_fetch_request + schema: + $ref: "#/components/schemas/DdsqlTabularQueryFetchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + completed: + summary: Query finished + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: "00000000-0000-0000-0000-000000000000" + type: ddsql_query_response + meta: + elapsed: 87 + request_id: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082" + default: + summary: Query finished + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: "00000000-0000-0000-0000-000000000000" + type: ddsql_query_response + meta: + elapsed: 87 + request_id: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082" + running: + summary: Query still executing + value: + data: + attributes: + query_id: "eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ==" + state: running + id: "00000000-0000-0000-0000-000000000000" + type: ddsql_query_response + meta: + elapsed: 12 + request_id: "req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082" + schema: + $ref: "#/components/schemas/DdsqlTabularQueryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Fetch the result of a DDSQL query + tags: + - DDSQL + /api/v2/deletion/data/{product}: + post: + description: Creates a data deletion request by providing a query and a timeframe targeting the proper data. + operationId: CreateDataDeletionRequest + parameters: + - $ref: "#/components/parameters/ProductName" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + displayed_total: 100 + from: 1672527600000 + indexes: + - test-index + - test-index-2 + query: + host: abc + service: xyz + to: 1704063600000 + type: create_deletion_req + schema: + $ref: "#/components/schemas/CreateDataDeletionRequestBody" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000000Z" + created_by: test@example.com + displayed_total: 100 + from_time: 1672527600000 + is_created: true + org_id: 123 + product: logs + query: "service:xyz host:abc" + starting_at: "2024-01-01T02:00:00.000000Z" + status: pending + to_time: 1704063600000 + total_unrestricted: 100 + updated_at: "2024-01-01T00:00:00.000000Z" + id: "1" + type: deletion_request + meta: + product: logs + request_status: pending + schema: + $ref: "#/components/schemas/CreateDataDeletionResponseBody" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Precondition failed error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal server error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Creates a data deletion request + tags: + - Data Deletion + x-permission: + operator: OR + permissions: + - logs_delete_data + /api/v2/deletion/requests: + get: + description: Gets a list of data deletion requests based on several filter parameters. + operationId: GetDataDeletionRequests + parameters: + - description: |- + The next page of the previous search. If the next_page parameter is included, the rest of the query elements are ignored. + example: "cGFnZTI=" + in: query + name: next_page + required: false + schema: + type: string + - description: Retrieve only the requests related to the given product. + example: "logs" + in: query + name: product + required: false + schema: + type: string + - description: Retrieve only the requests that matches the given query. + example: "service:xyz host:abc" + in: query + name: query + required: false + schema: + type: string + - description: Retrieve only the requests with the given status. + example: "pending" + in: query + name: status + required: false + schema: + type: string + - description: Sets the page size of the search. + example: "50" + in: query + name: page_size + required: false + schema: + default: 50 + format: int64 + maximum: 50 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00.000000Z" + created_by: test@example.com + displayed_total: 100 + from_time: 1672527600000 + is_created: true + org_id: 123 + product: logs + query: "service:xyz host:abc" + starting_at: "2024-01-01T02:00:00.000000Z" + status: pending + to_time: 1704063600000 + total_unrestricted: 100 + updated_at: "2024-01-01T00:00:00.000000Z" + id: "1" + type: deletion_request + meta: + next_page: "cGFnZTI=" + product: logs + schema: + $ref: "#/components/schemas/GetDataDeletionsResponseBody" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal server error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Gets a list of data deletion requests + tags: + - Data Deletion + x-permission: + operator: OR + permissions: + - logs_delete_data + /api/v2/deletion/requests/{id}/cancel: + put: + description: Cancels a data deletion request by providing its ID. + operationId: CancelDataDeletionRequest + parameters: + - $ref: "#/components/parameters/RequestId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000000Z" + created_by: test@example.com + displayed_total: 100 + from_time: 1672527600000 + is_created: true + org_id: 123 + product: logs + query: "service:xyz host:abc" + starting_at: "2024-01-01T02:00:00.000000Z" + status: canceled + to_time: 1704063600000 + total_unrestricted: 100 + updated_at: "2024-01-01T00:00:00.000000Z" + id: "1" + type: deletion_request + meta: + product: logs + request_status: canceled + schema: + $ref: "#/components/schemas/CancelDataDeletionResponseBody" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Precondition failed error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal server error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Cancels a data deletion request + tags: + - Data Deletion + x-permission: + operator: OR + permissions: + - logs_delete_data + /api/v2/deployment_gates: + get: + description: |- + Returns a paginated list of all deployment gates for the organization. + Use `page[cursor]` and `page[size]` query parameters to paginate through results. + operationId: ListDeploymentGates + parameters: + - description: Cursor for pagination. Use the `meta.page.next_cursor` value from the previous response. + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Number of results per page. Defaults to 50. Must be between 1 and 1000. + in: query + name: page[size] + required: false + schema: + default: 50 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + id: 00000000-0000-0000-0000-000000000004 + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000003 + type: deployment_gate + meta: + page: + size: 50 + schema: + $ref: "#/components/schemas/DeploymentGatesListResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get all deployment gates + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Endpoint to create a deployment gate. + operationId: CreateDeploymentGate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + env: production + identifier: pre + service: my-service + type: deployment_gate + schema: + $ref: "#/components/schemas/CreateDeploymentGateParams" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + handle: example-handle + id: 00000000-0000-0000-0000-000000000002 + name: Example Name + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000001 + type: deployment_gate + schema: + $ref: "#/components/schemas/DeploymentGateResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create deployment gate + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates/{gate_id}/rules: + get: + description: |- + Endpoint to get rules for a deployment gate. + operationId: GetDeploymentGateRules + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + rules: + - created_at: "2024-01-01T00:00:00+00:00" + created_by: + id: 00000000-0000-0000-0000-000000000012 + dry_run: false + gate_id: abc-123 + name: My deployment rule + options: + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000011 + type: list_deployment_rules + schema: + $ref: "#/components/schemas/DeploymentGateRulesResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get rules for a deployment gate + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Endpoint to create a deployment rule. A gate for the rule must already exist. + operationId: CreateDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + name: My deployment rule + options: + - resource1 + - resource2 + type: faulty_deployment_detection + type: deployment_rule + schema: + $ref: "#/components/schemas/CreateDeploymentRuleParams" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + handle: test-user + id: 00000000-0000-0000-0000-000000000010 + name: Test User + dry_run: false + gate_id: abc-123 + name: My deployment rule + options: + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000009 + type: deployment_rule + schema: + $ref: "#/components/schemas/DeploymentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create deployment rule + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates/{gate_id}/rules/{id}: + delete: + description: |- + Endpoint to delete a deployment rule. + operationId: DeleteDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + - description: The ID of the deployment rule. + in: path + name: id + required: true + schema: + type: string + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDGatesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete deployment rule + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Endpoint to get a deployment rule. + operationId: GetDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + - description: The ID of the deployment rule. + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + id: 00000000-0000-0000-0000-000000000014 + dry_run: false + gate_id: abc-123 + name: My deployment rule + options: + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000013 + type: deployment_rule + schema: + $ref: "#/components/schemas/DeploymentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDRulesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get deployment rule + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Endpoint to update a deployment rule. + operationId: UpdateDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + - description: The ID of the deployment rule. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + name: Updated deployment rule + options: + - resource1 + - resource2 + type: deployment_rule + schema: + $ref: "#/components/schemas/UpdateDeploymentRuleParams" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + id: 00000000-0000-0000-0000-000000000016 + dry_run: false + gate_id: abc-123 + name: Updated deployment rule + options: + - resource1 + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000015 + type: deployment_rule + schema: + $ref: "#/components/schemas/DeploymentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDRulesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update deployment rule + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates/{id}: + delete: + description: |- + Endpoint to delete a deployment gate. Rules associated with the gate are also deleted. + operationId: DeleteDeploymentGate + parameters: + - description: The ID of the deployment gate. + in: path + name: id + required: true + schema: + type: string + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDGatesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete deployment gate + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Endpoint to get a deployment gate. + operationId: GetDeploymentGate + parameters: + - description: The ID of the deployment gate. + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + id: 00000000-0000-0000-0000-000000000006 + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000005 + type: deployment_gate + schema: + $ref: "#/components/schemas/DeploymentGateResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDGatesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get deployment gate + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Endpoint to update a deployment gate. + operationId: UpdateDeploymentGate + parameters: + - description: The ID of the deployment gate. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + id: 12345678-1234-1234-1234-123456789012 + type: deployment_gate + schema: + $ref: "#/components/schemas/UpdateDeploymentGateParams" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: + id: 00000000-0000-0000-0000-000000000008 + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000007 + type: deployment_gate + schema: + $ref: "#/components/schemas/DeploymentGateResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDGatesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update deployment gate + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployments/gates/evaluation: + post: + description: |- + Triggers an asynchronous deployment gate evaluation for the given service and environment. + Returns an evaluation ID that can be used to poll for the result via the + `GET /api/v2/deployments/gates/evaluation/{id}` endpoint. + + When the `configuration` attribute is provided, rules are evaluated inline from that configuration + and no pre-configured gate is required. When `configuration` is omitted, rules are resolved from the + gate pre-configured for the given service and environment through the Datadog UI, API, or Terraform. + operationId: TriggerDeploymentGatesEvaluation + requestBody: + content: + application/json: + examples: + default: + summary: Evaluate a preconfigured gate + value: + data: + attributes: + env: staging + identifier: pre-deploy + primary_tag: region:us-east-1 + service: transaction-backend + version: v1.2.3 + type: deployment_gates_evaluation_request + with-configuration: + summary: Evaluate with inline rule configuration + value: + data: + attributes: + configuration: + dry_run: false + rules: + - dry_run: false + name: error rate monitors + options: + duration: 300 + query: "service:transaction-backend env:production" + type: monitor + - dry_run: false + name: apm faulty deployment + options: + duration: 900 + excluded_resources: + - "GET /healthcheck" + type: faulty_deployment_detection + env: production + service: transaction-backend + version: 1.2.3 + type: deployment_gates_evaluation_request + schema: + $ref: "#/components/schemas/DeploymentGatesEvaluationRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + evaluation_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: deployment_gates_evaluation_response + schema: + $ref: "#/components/schemas/DeploymentGatesEvaluationResponse" + description: Accepted + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDGatesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Trigger a deployment gate evaluation + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_evaluate + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployments/gates/evaluation/{id}: + get: + description: |- + Retrieves the result of a deployment gate evaluation by its evaluation ID. + If the evaluation is still in progress, `data.attributes.gate_status` will be `in_progress`; + continue polling until it returns `pass` or `fail`. + Polling every 10-20 seconds is recommended. + The endpoint may return a 404 if called too soon after triggering; retry after a few seconds. + operationId: GetDeploymentGatesEvaluationResult + parameters: + - description: The evaluation ID returned by the trigger endpoint. + in: path + name: id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + evaluation_id: 00000000-0000-0000-0000-000000000001 + evaluation_url: https://app.datadoghq.com/ci/deployment-gates/evaluations?index=cdgates&query=level%3Agate+%40evaluation_id%3A00000000-0000-0000-0000-000000000001 + gate_id: 00000000-0000-0000-0000-000000000001 + gate_status: pass + rules: [] + id: 00000000-0000-0000-0000-000000000001 + type: deployment_gates_evaluation_result_response + schema: + $ref: "#/components/schemas/DeploymentGatesEvaluationResultResponse" + description: OK + "400": + $ref: "#/components/responses/HTTPCDGatesBadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/HTTPCDGatesNotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPCIAppErrors" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a deployment gate evaluation result + tags: ["Deployment Gates"] + x-permission: + operator: OR + permissions: + - deployment_gates_evaluate + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/domain_allowlist: + get: + description: Get the domain allowlist for an organization. + operationId: GetDomainAllowlist + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + domains: + - "@example.com" + enabled: false + id: 00000000-0000-0000-0000-000000000002 + type: domain_allowlist + schema: + $ref: "#/components/schemas/DomainAllowlistResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + - AuthZ: + - monitors_write + summary: Get Domain Allowlist + tags: + - Domain Allowlist + "x-permission": + operator: OR + permissions: + - org_management + - monitors_write + - generate_dashboard_reports + - generate_log_reports + - manage_log_reports + patch: + description: Update the domain allowlist for an organization. + operationId: PatchDomainAllowlist + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domains: + - "@static-test-domain.test" + enabled: false + type: domain_allowlist + schema: + $ref: "#/components/schemas/DomainAllowlistRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + domains: + - "@example.com" + enabled: false + id: 00000000-0000-0000-0000-000000000001 + type: domain_allowlist + schema: + $ref: "#/components/schemas/DomainAllowlistResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + - AuthZ: + - monitors_write + summary: Sets Domain Allowlist + tags: + - Domain Allowlist + "x-permission": + operator: OR + permissions: + - org_management + - monitors_write + - generate_dashboard_reports + - generate_log_reports + - manage_log_reports + /api/v2/dora/deployment: + post: + description: |- + Use this API endpoint to provide deployment data. + + This is necessary for: + - Deployment Frequency + - Change Lead Time + - Change Failure Rate + - Failed Deployment Recovery Time + operationId: CreateDORADeployment + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: + - language:java + - department:engineering + env: staging + finished_at: 1693491984000000000 + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + service: test-service + started_at: 1693491974000000000 + team: backend + version: v1.12.07 + schema: + $ref: "#/components/schemas/DORADeploymentRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586083 + type: dora_deployment + schema: + $ref: "#/components/schemas/DORADeploymentResponse" + description: OK + "202": + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586083 + type: dora_deployment + schema: + $ref: "#/components/schemas/DORADeploymentResponse" + description: OK - but delayed due to incident + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Send a deployment event + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + /api/v2/dora/deployment/{deployment_id}: + delete: + description: |- + Use this API endpoint to delete a deployment event. + operationId: DeleteDORADeployment + parameters: + - description: The ID of the deployment event to delete. + in: path + name: deployment_id + required: true + schema: + type: string + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a deployment event + tags: ["DORA Metrics"] + x-permission: + operator: OR + permissions: + - dora_metrics_write + /api/v2/dora/deployments: + patch: + description: |- + Update a deployment's change failure status, identifying the deployment by its service, environment, and version instead of its ID. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. If multiple deployments match the given service, environment, and version, the most recently finished one is updated. + operationId: PatchDORADeploymentByVersion + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_failure: true + env: production + service: my-service + version: v1.2.3 + type: dora_deployment_patch_request + schema: + $ref: "#/components/schemas/DORADeploymentPatchByVersionRequest" + required: true + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a deployment event by version + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Use this API endpoint to get a list of deployment events. + operationId: ListDORADeployments + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: "2025-01-01T00:00:00Z" + limit: 100 + query: service:(test-service OR api-service) env:production team:backend + sort: -finished_at + to: "2025-01-31T23:59:59Z" + type: dora_deployments_list_request + schema: + $ref: "#/components/schemas/DORAListDeploymentsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + env: production + finished_at: "2023-08-31T14:26:24Z" + service: test-service + started_at: "2023-08-31T14:26:14Z" + team: backend + id: abc-123 + type: dora_deployment + schema: + $ref: "#/components/schemas/DORADeploymentsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a list of deployment events + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + /api/v2/dora/deployments/{deployment_id}: + get: + description: |- + Use this API endpoint to get a deployment event. + operationId: GetDORADeployment + parameters: + - description: The ID of the deployment event. + in: path + name: deployment_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + env: production + finished_at: "2023-08-31T14:26:24Z" + service: test-service + started_at: "2023-08-31T14:26:14Z" + team: backend + id: abc-123 + type: dora_deployment + schema: + $ref: "#/components/schemas/DORADeploymentFetchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a deployment event + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + patch: + description: |- + Update a deployment's change failure status. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. + operationId: PatchDORADeployment + parameters: + - description: The ID of the deployment event. + in: path + name: deployment_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_failure: true + remediation: + id: eG42zNIkVjM + type: rollback + id: z_RwVLi7v4Y + type: dora_deployment_patch_request + schema: + $ref: "#/components/schemas/DORADeploymentPatchRequest" + required: true + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a deployment event + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_write + /api/v2/dora/failure: + post: + description: |- + Use this API endpoint to provide incident data for DORA Metrics. + Note that change failure rate and failed deployment recovery time are computed from change failures detected on deployments, not from incident events sent through this endpoint. + Tracking incidents gives a side-by-side view of how failed deployments translate into real-world incidents, including their severity and frequency. + operationId: CreateDORAFailure + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: + - language:java + - department:engineering + env: staging + finished_at: 1693491984000000000 + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + name: Webserver is down failing all requests. + services: + - test-service + severity: High + started_at: 1693491974000000000 + team: backend + version: v1.12.07 + schema: + $ref: "#/components/schemas/DORAFailureRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: "#/components/schemas/DORAFailureResponse" + description: OK + "202": + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: "#/components/schemas/DORAFailureResponse" + description: OK - but delayed due to incident + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Send an incident event + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + /api/v2/dora/failure/{failure_id}: + delete: + description: |- + Use this API endpoint to delete an incident event. + operationId: DeleteDORAFailure + parameters: + - description: The ID of the incident event to delete. + in: path + name: failure_id + required: true + schema: + type: string + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an incident event + tags: ["DORA Metrics"] + x-permission: + operator: OR + permissions: + - dora_metrics_write + /api/v2/dora/failures: + post: + description: |- + Use this API endpoint to get a list of incident events. + operationId: ListDORAFailures + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: "2025-01-01T00:00:00Z" + limit: 100 + query: severity:(SEV-1 OR SEV-2) env:production team:backend + sort: -started_at + to: "2025-01-31T23:59:59Z" + type: dora_failures_list_request + schema: + $ref: "#/components/schemas/DORAListFailuresRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + env: production + name: Database outage + services: + - test-service + severity: SEV-1 + started_at: "2023-08-31T14:29:34Z" + team: backend + id: abc-123 + type: dora_failure + schema: + $ref: "#/components/schemas/DORAFailuresListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a list of incident events + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + /api/v2/dora/failures/{failure_id}: + get: + description: |- + Use this API endpoint to get an incident event. + operationId: GetDORAFailure + parameters: + - description: The ID of the incident event. + in: path + name: failure_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + env: production + name: Database outage + services: + - test-service + severity: SEV-1 + started_at: "2023-08-31T14:29:34Z" + team: backend + id: abc-123 + type: dora_failure + schema: + $ref: "#/components/schemas/DORAFailureFetchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get an incident event + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + /api/v2/dora/incident: + post: + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` instead. + + Use this API endpoint to provide incident data. + Tracking incidents gives a side-by-side view of how failed deployments translate into real-world incidents. + operationId: CreateDORAIncident + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: + - language:java + - department:engineering + env: staging + finished_at: 1693491984000000000 + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + name: Webserver is down failing all requests. + services: + - test-service + severity: High + started_at: 1693491974000000000 + team: backend + version: v1.12.07 + schema: + $ref: "#/components/schemas/DORAFailureRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: "#/components/schemas/DORAFailureResponse" + description: OK + "202": + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: "#/components/schemas/DORAFailureResponse" + description: OK - but delayed due to incident + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Send an incident event (legacy) + tags: ["DORA Metrics"] + x-codegen-request-body-name: body + /api/v2/downtime: + get: + description: Get all scheduled downtimes. + operationId: ListDowntimes + parameters: + - description: Only return downtimes that are active when the request is made. + in: query + name: current_only + required: false + schema: + type: boolean + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource + paths are `created_by` and `monitor`. + in: query + name: include + required: false + schema: + example: "created_by,monitor" + type: string + - $ref: "#/components/parameters/PageOffset" + - description: Maximum number of downtimes in the response. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 30 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: "2024-01-01T00:00:00+00:00" + display_timezone: America/New_York + message: Message about the downtime + modified: "2024-01-01T00:00:00+00:00" + monitor_identifier: + monitor_tags: + - "*" + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: "00000000-0000-1234-0000-000000000000" + type: downtime + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/ListDowntimesResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Get all downtimes + tags: + - Downtimes + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + "x-permission": + operator: OR + permissions: + - monitors_downtime + post: + description: Schedule a downtime. + operationId: CreateDowntime + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_timezone: America/New_York + message: Message about the downtime + monitor_identifier: + monitor_id: 123 + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + schedule: + timezone: America/New_York + scope: env:(staging OR prod) AND datacenter:us-east-1 + type: downtime + schema: + $ref: "#/components/schemas/DowntimeCreateRequest" + description: Schedule a downtime request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + display_timezone: America/New_York + message: Message about the downtime + modified: "2024-01-01T00:00:00+00:00" + monitor_identifier: + monitor_tags: + - "*" + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: "00000000-0000-1234-0000-000000000000" + type: downtime + schema: + $ref: "#/components/schemas/DowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Schedule a downtime + tags: + - Downtimes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_downtime + /api/v2/downtime/{downtime_id}: + delete: + description: |- + Cancel a downtime. + + **Note**: Downtimes canceled through the API are no longer active, but are retained for approximately two days before being permanently removed. The downtime may still appear in search results until it is permanently removed. + operationId: CancelDowntime + parameters: + - description: ID of the downtime to cancel. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-1234-0000-000000000000 + type: string + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Downtime not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Cancel a downtime + tags: + - Downtimes + "x-permission": + operator: OR + permissions: + - monitors_downtime + get: + description: Get downtime detail by `downtime_id`. + operationId: GetDowntime + parameters: + - description: ID of the downtime to fetch. + in: path + name: downtime_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource + paths are `created_by` and `monitor`. + in: query + name: include + required: false + schema: + example: "created_by,monitor" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + display_timezone: America/New_York + message: Message about the downtime + modified: "2024-01-01T00:00:00+00:00" + monitor_identifier: + monitor_tags: + - "*" + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: "00000000-0000-1234-0000-000000000000" + type: downtime + schema: + $ref: "#/components/schemas/DowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Get a downtime + tags: + - Downtimes + "x-permission": + operator: OR + permissions: + - monitors_downtime + patch: + description: Update a downtime by `downtime_id`. + operationId: UpdateDowntime + parameters: + - description: ID of the downtime to update. + in: path + name: downtime_id + required: true + schema: + example: "00e000000-0000-1234-0000-000000000000" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_timezone: America/New_York + message: Message about the downtime + monitor_identifier: + monitor_id: 123 + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + schedule: + timezone: America/New_York + scope: env:(staging OR prod) AND datacenter:us-east-1 + id: 00000000-0000-1234-0000-000000000000 + type: downtime + schema: + $ref: "#/components/schemas/DowntimeUpdateRequest" + description: Update a downtime request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + display_timezone: America/New_York + message: Message about the downtime + modified: "2024-01-01T00:00:00+00:00" + monitor_identifier: + monitor_tags: + - "*" + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: "00000000-0000-1234-0000-000000000000" + type: downtime + schema: + $ref: "#/components/schemas/DowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Downtime not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Update a downtime + tags: + - Downtimes + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitors_downtime + /api/v2/error-tracking/issues/search: + post: + description: Search issues endpoint allows you to programmatically search for issues within your organization. This endpoint returns a list of issues that match a given search query, following the event search syntax. The search results are limited to a maximum of 100 issues per request. + operationId: SearchIssues + parameters: + - $ref: "#/components/parameters/SearchIssuesIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1671612804000 + order_by: IMPACTED_SESSIONS + persona: BACKEND + query: service:orders-* AND @language:go + to: 1671620004000 + type: search_request + schema: + $ref: "#/components/schemas/IssuesSearchRequest" + description: Search issues request payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + impacted_sessions: 12 + impacted_users: 4 + total_count: 82 + id: abc-123 + type: error_tracking_search_result + schema: + $ref: "#/components/schemas/IssuesSearchResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - error_tracking_read + summary: Search error tracking issues + tags: + - Error Tracking + /api/v2/error-tracking/issues/{issue_id}: + get: + description: Retrieve the full details for a specific error tracking issue, including attributes and relationships. + operationId: GetIssue + parameters: + - $ref: "#/components/parameters/IssueIDPathParameter" + - $ref: "#/components/parameters/GetIssueIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + error_message: "object of type 'NoneType' has no len()" + error_type: builtins.TypeError + service: test-service + state: OPEN + id: 00000000-0000-0000-0000-000000000001 + type: issue + schema: + $ref: "#/components/schemas/IssueResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - error_tracking_read + summary: Get the details of an error tracking issue + tags: + - Error Tracking + /api/v2/error-tracking/issues/{issue_id}/assignee: + delete: + description: Remove the assignee of an issue by `issue_id`. + operationId: DeleteIssueAssignee + parameters: + - $ref: "#/components/parameters/IssueIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - error_tracking_read + - error_tracking_write + - cases_read + - cases_write + summary: Remove the assignee of an issue + tags: + - Error Tracking + put: + description: Update the assignee of an issue by `issue_id`. + operationId: UpdateIssueAssignee + parameters: + - $ref: "#/components/parameters/IssueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 87cb11a0-278c-440a-99fe-701223c80296 + type: assignee + schema: + $ref: "#/components/schemas/IssueUpdateAssigneeRequest" + description: Update issue assignee request payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + error_message: "object of type 'NoneType' has no len()" + error_type: builtins.TypeError + service: test-service + state: OPEN + id: 00000000-0000-0000-0000-000000000003 + type: issue + schema: + $ref: "#/components/schemas/IssueResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - error_tracking_read + - error_tracking_write + - cases_read + - cases_write + summary: Update the assignee of an issue + tags: + - Error Tracking + /api/v2/error-tracking/issues/{issue_id}/state: + put: + description: Update the state of an issue by `issue_id`. Use this endpoint to move an issue between states such as `OPEN`, `RESOLVED`, or `IGNORED`. + operationId: UpdateIssueState + parameters: + - $ref: "#/components/parameters/IssueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + state: RESOLVED + id: c1726a66-1f64-11ee-b338-da7ad0900002 + type: error_tracking_issue + schema: + $ref: "#/components/schemas/IssueUpdateStateRequest" + description: Update issue state request payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + error_message: "object of type 'NoneType' has no len()" + error_type: builtins.TypeError + service: test-service + state: RESOLVED + id: 00000000-0000-0000-0000-000000000002 + type: issue + schema: + $ref: "#/components/schemas/IssueResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - error_tracking_read + - error_tracking_write + summary: Update the state of an issue + tags: + - Error Tracking + /api/v2/events: + get: + description: |- + List endpoint returns events that match an events search query. + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to see your latest events. + operationId: ListEvents + parameters: + - description: Search query following events syntax. + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events, in milliseconds. + in: query + name: filter[from] + required: false + schema: + type: string + - description: Maximum timestamp for requested events, in milliseconds. + in: query + name: filter[to] + required: false + schema: + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/EventsSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: "Test event" + tags: + - "env:prod" + timestamp: "2019-01-02T09:42:36.320Z" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: event + meta: + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + schema: + $ref: "#/components/schemas/EventsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Get a list of events + tags: ["Events"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - events_read + post: + description: |- + This endpoint allows you to publish events. + + **Note:** To utilize this endpoint with our client libraries, please ensure you are using the latest version released on or after July 1, 2025. Earlier versions do not support this functionality. + + **Important:** Upgrade to the latest client library version to use the updated endpoint at `https://event-management-intake.{site}/api/v2/events`. Older client library versions of the Post an event (v2) API send requests to a deprecated endpoint (`https://api.{site}/api/v2/events`). + + ✅ **Only events with the `change` or `alert` category** are in General Availability. For change events, see [Change Tracking](https://docs.datadoghq.com/change_tracking) for more details. + + ❌ For use cases involving other event categories, use the V1 endpoint or reach out to [support](https://www.datadoghq.com/support/). + operationId: CreateEvent + requestBody: + content: + application/json: + examples: + alert-event: + description: Example of an alert event for tracking alerts and monitoring events. + summary: Alert Event + value: {"data": {"attributes": {"aggregation_key": "deduplication_key_here", "attributes": {"custom": {"my-object-attribute": {"my-array-attribute": [1, 2, 3], "my-array-object-attribute": ["name": "test-object-1", "name": "test-object-2"], "my-integer-attribute": 1}, "my-string-attribute": "my-custom-value"}, "links": [{"category": "runbook", "title": "Datadog website", "url": "https://datadoghq.com"}], "priority": "1", "status": "error"}, "category": "alert", "message": "Something is broken!", "tags": ["service:my-test-service", "datacenter:primary"], "title": "My Alerting Event"}, "type": "event"}} + change-event: + description: Example of a change event for tracking configuration or feature flag changes. + summary: Change Event + value: {"data": {"attributes": {"aggregation_key": "aggregation_key_123", "attributes": {"author": {"name": "example@datadog.com", "type": "user"}, "change_metadata": {"dd": {"team": "datadog_team", "user_email": "datadog@datadog.com", "user_id": "datadog_user_id", "user_name": "datadog_username"}, "resource_link": "datadog.com/feature/fallback_payments_test"}, "changed_resource": {"name": "fallback_payments_test", "type": "feature_flag"}, "impacted_resources": [{"name": "payments_api", "type": "service"}], "new_value": {"enabled": true, "percentage": "50%", "rule": {"datacenter": "devcycle.us1.prod"}}, "prev_value": {"enabled": true, "percentage": "10%", "rule": {"datacenter": "devcycle.us1.prod"}}}, "category": "change", "host": "hostname", "integration_id": "custom-events", "message": "payment_processed feature flag has been enabled", "tags": ["env:api_client_test"], "timestamp": "2020-01-01T01:30:15.010000Z", "title": "payment_processed feature flag updated"}, "type": "event"}} + default: + value: + data: + attributes: + aggregation_key: aggregation_key_123 + attributes: + author: + name: example@datadog.com + type: user + change_metadata: + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username + resource_link: datadog.com/feature/fallback_payments_test + changed_resource: + name: fallback_payments_test + type: feature_flag + impacted_resources: + - name: payments_api + type: service + new_value: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + prev_value: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + category: change + host: hostname + integration_id: custom-events + message: payment_processed feature flag has been enabled + tags: + - env:api_client_test + timestamp: "2020-01-01T01:30:15.010000Z" + title: payment_processed feature flag updated + type: event + schema: + $ref: "#/components/schemas/EventCreateRequestPayload" + description: Event creation request payload. + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: + evt: + uid: abc-123 + type: event + schema: + $ref: "#/components/schemas/EventCreateResponsePayload" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + servers: + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The regional site for customers. + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - uk1.datadoghq.com + - datadoghq.eu + - ddog-gov.com + - us2.ddog-gov.com + x-enum-varnames: + - US1 + - US3 + - US5 + - AP1 + - AP2 + - UK1 + - EU1 + - GOV + - US2_GOV + subdomain: + default: event-management-intake + description: The subdomain where the API is deployed. + - url: "{protocol}://{name}" + variables: + name: + default: event-management-intake.datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: Any Datadog deployment. + subdomain: + default: event-management-intake + description: The subdomain where the API is deployed. + summary: Post an event + tags: ["Events"] + x-codegen-request-body-name: body + /api/v2/events/search: + post: + description: |- + List endpoint returns events that match an events search query. + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to build complex events filtering and search. + operationId: SearchEvents + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: now-15m + query: service:web* AND @http.status_code:[200 TO 299] + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/EventsListRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: "Test event" + tags: + - "env:prod" + timestamp: "2019-01-02T09:42:36.320Z" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: event + meta: + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + schema: + $ref: "#/components/schemas/EventsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Search events + tags: ["Events"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - events_read + /api/v2/events/{event_id}: + get: + description: >- + Get the details of an event by `event_id`. + operationId: GetEvent + parameters: + - description: The UID of the event. + in: path + name: event_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + message: "The event message" + tags: + - "env:api_client_test" + timestamp: "2017-01-15T01:30:15.010000Z" + id: abc-123 + type: event + schema: + $ref: "#/components/schemas/V2EventResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Get an event + tags: ["Events"] + "x-permission": + operator: OR + permissions: + - events_read + /api/v2/feature-flags: + get: + description: |- + Returns a list of feature flags for the organization. + Supports filtering by key and archived status. + operationId: ListFeatureFlags + parameters: + - description: Filter feature flags by key (partial matching). + example: "flag-search-term" + in: query + name: key + schema: + type: string + - description: Filter by archived status. + example: false + in: query + name: is_archived + schema: + type: boolean + - description: Maximum number of results to return. + example: 10 + in: query + name: limit + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Number of results to skip. + example: 0 + in: query + name: offset + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ListFeatureFlagsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List feature flags + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_read + - feature_flag_environment_config_read + post: + description: |- + Creates a new feature flag with variants. + operationId: CreateFeatureFlag + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + default_variant_key: variant-a + description: A sample feature flag + enabled: true + key: feature-flag-abc123 + name: Feature Flag ABC 123 + variants: + - description: Variant A + key: variant-a + - description: Variant B + key: variant-b + type: feature-flags + schema: + $ref: "#/components/schemas/CreateFeatureFlagRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: "2024-01-01T00:00:00+00:00" + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000002 + key: variant-a + name: Variant A + value: "true" + - id: 00000000-0000-0000-0000-000000000003 + key: variant-b + name: Variant B + value: "false" + id: 00000000-0000-0000-0000-000000000001 + type: feature-flags + schema: + $ref: "#/components/schemas/FeatureFlagResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/environments: + get: + description: |- + Returns a list of environments for the organization. + Supports filtering by name, key, and DD_ENV. + operationId: ListFeatureFlagsEnvironments + parameters: + - description: Filter environments by name (partial matching). + example: "env-search-term" + in: query + name: name + schema: + type: string + - description: Filter environments by key (partial matching). + example: "env-partial" + in: query + name: key + schema: + type: string + - description: Filter environments by queries that contain the provided DD_ENV value. + example: "staging" + in: query + name: dd_env + schema: + type: string + - description: Maximum number of results to return. + example: 10 + in: query + name: limit + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Number of results to skip. + example: 0 + in: query + name: offset + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ListEnvironmentsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List environments + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_read + post: + description: |- + Creates a new environment for organizing feature flags. + operationId: CreateFeatureFlagsEnvironment + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: staging-environment + queries: + - staging + - canary + type: environments + schema: + $ref: "#/components/schemas/CreateEnvironmentRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + is_production: false + key: staging-environment + name: staging-environment + queries: + - staging + require_feature_flag_approval: false + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000017 + type: environments + schema: + $ref: "#/components/schemas/EnvironmentResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_write + /api/v2/feature-flags/environments/{environment_id}: + delete: + description: |- + Deletes an environment. This operation cannot be undone. + operationId: DeleteFeatureFlagsEnvironment + parameters: + - $ref: "#/components/parameters/environment_id" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_write + get: + description: |- + Returns the details of a specific environment. + operationId: GetFeatureFlagsEnvironment + parameters: + - $ref: "#/components/parameters/environment_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + is_production: false + key: staging-environment + name: staging-environment + queries: + - staging + require_feature_flag_approval: false + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000018 + type: environments + schema: + $ref: "#/components/schemas/EnvironmentResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_read + put: + description: |- + Updates an existing environment's metadata such as + name and description. + operationId: UpdateFeatureFlagsEnvironment + parameters: + - $ref: "#/components/parameters/environment_id" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: production-environment + queries: + - production + - prod-us + type: environments + schema: + $ref: "#/components/schemas/UpdateEnvironmentRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + is_production: false + key: production-environment + name: production-environment + queries: + - production + require_feature_flag_approval: false + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000019 + type: environments + schema: + $ref: "#/components/schemas/EnvironmentResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/pause: + post: + description: |- + Pauses a progressive rollout while preserving rollout state. + operationId: PauseExposureSchedule + parameters: + - $ref: "#/components/parameters/exposure_schedule_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + absolute_start_time: "2025-06-13T12:00:00Z" + allocation_id: "550e8400-e29b-41d4-a716-446655440020" + control_variant_id: "550e8400-e29b-41d4-a716-446655440012" + created_at: "2024-01-01T12:00:00Z" + guardrail_triggered_action: + guardrail_triggers: [] + id: "550e8400-e29b-41d4-a716-446655440010" + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: "UNIFORM_INTERVALS" + rollout_steps: [] + updated_at: "2024-01-01T12:00:00Z" + schema: + $ref: "#/components/schemas/AllocationExposureScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Pause a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/resume: + post: + description: |- + Resumes progression for a previously paused progressive rollout. + operationId: ResumeExposureSchedule + parameters: + - $ref: "#/components/parameters/exposure_schedule_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + absolute_start_time: "2025-06-13T12:00:00Z" + allocation_id: "550e8400-e29b-41d4-a716-446655440020" + control_variant_id: "550e8400-e29b-41d4-a716-446655440012" + created_at: "2024-01-01T12:00:00Z" + guardrail_triggered_action: + guardrail_triggers: [] + id: "550e8400-e29b-41d4-a716-446655440010" + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: "UNIFORM_INTERVALS" + rollout_steps: [] + updated_at: "2024-01-01T12:00:00Z" + schema: + $ref: "#/components/schemas/AllocationExposureScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Resume a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/start: + post: + description: |- + Starts a progressive rollout and begins progression. + operationId: StartExposureSchedule + parameters: + - $ref: "#/components/parameters/exposure_schedule_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + absolute_start_time: "2025-06-13T12:00:00Z" + allocation_id: "550e8400-e29b-41d4-a716-446655440020" + control_variant_id: "550e8400-e29b-41d4-a716-446655440012" + created_at: "2024-01-01T12:00:00Z" + guardrail_triggered_action: + guardrail_triggers: [] + id: "550e8400-e29b-41d4-a716-446655440010" + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: "UNIFORM_INTERVALS" + rollout_steps: [] + updated_at: "2024-01-01T12:00:00Z" + schema: + $ref: "#/components/schemas/AllocationExposureScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Start a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/stop: + post: + description: |- + Stops a progressive rollout and marks it as aborted. + operationId: StopExposureSchedule + parameters: + - $ref: "#/components/parameters/exposure_schedule_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + absolute_start_time: "2025-06-13T12:00:00Z" + allocation_id: "550e8400-e29b-41d4-a716-446655440020" + control_variant_id: "550e8400-e29b-41d4-a716-446655440012" + created_at: "2024-01-01T12:00:00Z" + guardrail_triggered_action: + guardrail_triggers: [] + id: "550e8400-e29b-41d4-a716-446655440010" + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: "UNIFORM_INTERVALS" + rollout_steps: [] + updated_at: "2024-01-01T12:00:00Z" + schema: + $ref: "#/components/schemas/AllocationExposureScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Stop a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/{feature_flag_id}: + get: + description: |- + Returns the details of a specific feature flag + including variants and environment status. + operationId: GetFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: "2024-01-01T00:00:00+00:00" + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000005 + key: variant-a + name: Variant A + value: "true" + - id: 00000000-0000-0000-0000-000000000006 + key: variant-b + name: Variant B + value: "false" + id: 00000000-0000-0000-0000-000000000004 + type: feature-flags + schema: + $ref: "#/components/schemas/FeatureFlagResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_read + - feature_flag_environment_config_read + put: + description: |- + Updates an existing feature flag's metadata such as + name and description. Does not modify targeting rules or allocations. + operationId: UpdateFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Updated description for the feature flag + enabled: true + name: Updated Feature Flag XYZ789 + type: feature-flags + schema: + $ref: "#/components/schemas/UpdateFeatureFlagRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: "2024-01-01T00:00:00+00:00" + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000008 + key: variant-a + name: Variant A + value: "true" + - id: 00000000-0000-0000-0000-000000000009 + key: variant-b + name: Variant B + value: "false" + id: 00000000-0000-0000-0000-000000000007 + type: feature-flags + schema: + $ref: "#/components/schemas/FeatureFlagResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/archive: + post: + description: |- + Archives a feature flag. Archived flags are + hidden from the main list but remain accessible and can be unarchived. + operationId: ArchiveFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: "2024-01-01T00:00:00+00:00" + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000011 + key: variant-a + name: Variant A + value: "true" + - id: 00000000-0000-0000-0000-000000000012 + key: variant-b + name: Variant B + value: "false" + id: 00000000-0000-0000-0000-000000000010 + type: feature-flags + schema: + $ref: "#/components/schemas/FeatureFlagResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Archive a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/allocations: + post: + description: |- + Creates a new targeting rule (allocation) for a specific feature flag in a specific environment. + operationId: CreateAllocationsForFeatureFlagInEnvironment + parameters: + - $ref: "#/components/parameters/feature_flag_id" + - $ref: "#/components/parameters/environment_id" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: "prod-rollout" + name: "Production Rollout" + type: "FEATURE_GATE" + variant_weights: + - value: 50 + variant_id: "550e8400-e29b-41d4-a716-446655440001" + - value: 50 + variant_id: "550e8400-e29b-41d4-a716-446655440002" + type: "allocations" + schema: + $ref: "#/components/schemas/CreateAllocationsRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T12:00:00Z" + environment_ids: + - "550e8400-e29b-41d4-a716-446655440001" + guardrail_metrics: [] + id: "550e8400-e29b-41d4-a716-446655440020" + key: "prod-rollout" + name: "Production Rollout" + order_position: 0 + targeting_rules: [] + type: "FEATURE_GATE" + updated_at: "2024-01-01T12:00:00Z" + variant_weights: + - value: 50 + variant_id: "550e8400-e29b-41d4-a716-446655440001" + id: "550e8400-e29b-41d4-a716-446655440020" + type: "allocations" + schema: + $ref: "#/components/schemas/AllocationResponse" + description: Created + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + environment_ids: + - abc-123 + guardrail_metrics: [] + id: 00000000-0000-0000-0000-000000000016 + key: prod-rollout + name: Production Rollout + order_position: 0 + targeting_rules: [] + type: FEATURE_GATE + updated_at: "2024-01-01T00:00:00+00:00" + variant_weights: + - value: 50 + variant_id: abc-123 + id: 00000000-0000-0000-0000-000000000015 + type: allocations + schema: + $ref: "#/components/schemas/AllocationResponse" + description: Accepted - Approval required for this change + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create targeting rules for a flag env + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + put: + description: |- + Updates targeting rules (allocations) for a specific feature flag in a specific environment. + This operation replaces the existing allocation set with the request payload. + operationId: UpdateAllocationsForFeatureFlagInEnvironment + parameters: + - $ref: "#/components/parameters/feature_flag_id" + - $ref: "#/components/parameters/environment_id" + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + key: "prod-rollout" + name: "Production Rollout" + type: "FEATURE_GATE" + variant_weights: + - value: 50 + variant_id: "550e8400-e29b-41d4-a716-446655440001" + - value: 50 + variant_id: "550e8400-e29b-41d4-a716-446655440002" + type: "allocations" + schema: + $ref: "#/components/schemas/OverwriteAllocationsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T12:00:00Z" + environment_ids: + - "550e8400-e29b-41d4-a716-446655440001" + guardrail_metrics: [] + id: "550e8400-e29b-41d4-a716-446655440020" + key: "prod-rollout" + name: "Production Rollout" + order_position: 0 + targeting_rules: [] + type: "FEATURE_GATE" + updated_at: "2024-01-01T12:00:00Z" + variant_weights: + - value: 50 + variant_id: "550e8400-e29b-41d4-a716-446655440001" + id: "550e8400-e29b-41d4-a716-446655440020" + type: "allocations" + schema: + $ref: "#/components/schemas/ListAllocationsResponse" + description: OK + "202": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ListAllocationsResponse" + description: Accepted - Approval required for this change + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update targeting rules for a flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/disable: + post: + description: |- + Disable a feature flag in a specific environment. + operationId: DisableFeatureFlagEnvironment + parameters: + - $ref: "#/components/parameters/feature_flag_id" + - $ref: "#/components/parameters/environment_id" + responses: + "200": + description: OK + "202": + description: Accepted - Approval required for this change + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Disable a feature flag in an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/enable: + post: + description: |- + Enable a feature flag in a specific environment. + operationId: EnableFeatureFlagEnvironment + parameters: + - $ref: "#/components/parameters/feature_flag_id" + - $ref: "#/components/parameters/environment_id" + responses: + "200": + description: OK + "202": + description: Accepted - Approval required for this change + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Enable a feature flag in an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/unarchive: + post: + description: |- + Unarchives a previously archived feature flag, + making it visible in the main list again. + operationId: UnarchiveFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: This is an example feature flag + distribution_channel: ALL + key: feature-flag-abc123 + name: Feature Flag ABC123 + require_approval: false + tags: [] + updated_at: "2024-01-01T00:00:00+00:00" + value_type: boolean + variants: + - id: 00000000-0000-0000-0000-000000000014 + key: variant-abc123 + name: Variant ABC123 + value: "true" + id: 00000000-0000-0000-0000-000000000013 + type: feature-flags + schema: + $ref: "#/components/schemas/FeatureFlagResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Unarchive a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/variants: + post: + description: |- + Adds a single new variant to an existing feature flag. This endpoint is + additive-only: it never modifies existing variants. A request whose `key` + already exists on the flag is rejected with `409 Conflict`; a `value` + whose type does not match the flag's `value_type` is rejected with `400`. + The server generates the variant UUID and returns it in the response body; + callers (for example, the flag-migration tool) need this UUID to reference + the new variant in subsequent allocation syncs. + operationId: CreateVariantForFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: dark + name: Dark Theme + value: dark + type: variants + schema: + $ref: "#/components/schemas/CreateVariant" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: dark + name: Dark Theme + updated_at: "2024-01-01T00:00:00+00:00" + value: dark + id: "550e8400-e29b-41d4-a716-446655440002" + type: variants + schema: + $ref: "#/components/schemas/Variant" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict - A variant with this key already exists on the flag. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Add a variant to a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/{feature_flag_id}/variants/{variant_id}: + delete: + description: |- + Deletes a variant from a feature flag. + + When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of deleting the variant immediately. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`. + operationId: DeleteVariantFromFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + - $ref: "#/components/parameters/variant_id" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict - A pending suggestion already exists for this property. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a variant + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + put: + description: |- + Updates the name and value of an existing variant on a feature flag. + + When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of applying the change immediately. Use the returned suggestion `id` to approve or reject the change. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`. + operationId: UpdateVariantForFeatureFlag + parameters: + - $ref: "#/components/parameters/feature_flag_id" + - $ref: "#/components/parameters/variant_id" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Dark Theme Updated + value: dark_v2 + id: "550e8400-e29b-41d4-a716-446655440002" + type: variants + schema: + $ref: "#/components/schemas/UpdateVariantRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + key: dark + name: Dark Theme Updated + updated_at: "2024-06-01T00:00:00+00:00" + value: dark_v2 + id: "550e8400-e29b-41d4-a716-446655440002" + type: variants + schema: + $ref: "#/components/schemas/Variant" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict - A pending suggestion already exists for this property. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a variant + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/fleet/agent_versions: + get: + description: |- + Retrieve the list of Datadog Agent versions available for deployment. + + Returns `200` with an empty `data` array if the Agent package exists in the catalog + but has no available versions, and `404` only if the Agent package itself is absent + from the catalog. + operationId: ListFleetAgentVersionsV2 + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + version: "7.80.4" + id: "7.80.4" + type: agent_version + - attributes: + version: "7.81.1" + id: "7.81.1" + type: agent_version + meta: + page: + total_count: 2 + schema: + $ref: "#/components/schemas/FleetAgentVersionsV2Response" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List available Datadog Agent versions + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + /api/v2/fleet/agents: + get: + description: |- + Retrieve a paginated list of Datadog Agents. + + Returns agents with support for pagination, sorting, and filtering. + Use `page_number` and `page_size` to navigate pages, `filter` to narrow by field values, + and `tags` to filter by agent tags. + operationId: ListFleetAgentsV2 + parameters: + - description: Page number for pagination, starting at 0. + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of agents to return per page. Maximum value is 100. Defaults to 10. + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Filter string to narrow down agent results. + example: "hostname:my-hostname OR env:dev" + in: query + name: filter + required: false + schema: + type: string + - description: >- + Comma-separated list of tag keys to select which tags are included in each agent's `tags` attribute. Does not filter which agents are returned. + in: query + name: tags + required: false + schema: + type: string + - description: >- + Agent attribute to sort results by. Must be a supported attribute name; unsupported values return a 400 error. + in: query + name: sort_attribute + required: false + schema: + type: string + - description: Set to `true` to sort results in descending order. Defaults to ascending. + in: query + name: sort_descending + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + agent_version: "7.50.0" + api_key_name: "Production API Key" + api_key_uuid: "a1b2c3d4-e5f6-4321-a123-123456789abc" + cloud_provider: aws + datadog_data_center: us1 + enabled_products: + - apm + - logs + env: + - prod + first_seen_at: 1699900000 + fleet_policies: [] + hostname: my-hostname + integrations: + - mysql + ip_addresses: + - "10.0.0.1" + is_single_step_instrumentation_enabled: false + last_restart_at: 1699999999 + os: linux + otel_collector_versions: [] + remote_agent_management: enabled + remote_config_status: connected + services: + - web + tags: + - key: team + value: platform + id: my-agent-hostname + type: agent + meta: + page: + total_count: 500 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/FleetAgentsV2Response" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all Datadog Agents + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + /api/v2/fleet/agents/{agent_key}: + get: + description: |- + Retrieve detailed information about a specific Datadog Agent. + + By default, only `agent_infos` is returned. Use the `include` query parameter to + request additional data: `integrations` and/or `configuration_files`. + operationId: GetFleetAgentDetailV2 + parameters: + - description: >- + The unique identifier (Agent key) for the Datadog Agent. Must be a 32-character lowercase hexadecimal string. + example: "a1b2c3d4e5f67890a1b2c3d4e5f67890" + in: path + name: agent_key + required: true + schema: + pattern: "^[0-9a-f]{32}$" + type: string + - description: >- + Comma-separated list of additional fields to include in the response. Valid values are `integrations` and `configuration_files`. Omitting this parameter returns only `agent_infos`. Unrecognized values are silently ignored rather than causing an error. + example: "integrations,configuration_files" + in: query + name: include + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + agent_infos: + agent_version: "7.50.0" + datadog_agent_key: a1b2c3d4e5f67890a1b2c3d4e5f67890 + hostname: my-hostname + os: linux + id: a1b2c3d4e5f67890a1b2c3d4e5f67890 + type: agent + schema: + $ref: "#/components/schemas/FleetAgentDetailV2Response" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get detailed information about an agent + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + /api/v2/fleet/deployments: + get: + description: Retrieve a paginated list of all deployments for fleet automation. + operationId: ListFleetDeploymentsV2 + parameters: + - description: Number of deployments to return per page. Maximum value is 100. + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + type: integer + - description: Page number for pagination, starting at 0. + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: |- + Field to sort results by (for example, `start_date`). Must be a supported field + name; unsupported values return a 400 error. + in: query + name: sort + required: false + schema: + type: string + - description: |- + Set to `true` to sort in ascending order. This setting has no effect unless `sort` is also set. + Defaults to descending order. + in: query + name: ascending + required: false + schema: + type: boolean + - description: |- + Query used to filter deployments. Uses the Datadog query syntax. Filtering on an + unsupported field returns a 400 error. For example: + - `status:failed` or `status:done_with_errors`: deployments that need investigation. + - `status:running`: deployments currently in flight. + - `update_type:update_package` or `update_type:update_config_operations`: deployments of a given type. + example: "status:failed" + in: query + name: filter + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: "alice@datadoghq.com" + config_operations: + - file_op: merge-patch + file_path: "/datadog.yaml" + patch: + logs_enabled: true + duration_seconds: 0 + error_summary: "" + estimated_finished_at: 1699999999 + finished_at: 0 + is_scheduled: true + query: "env:prod AND service:web" + schedule_id: "sched-123" + started_at: 1699990000 + status: running + target_versions: ["7.52.0"] + total_hosts: 10 + update_type: update_config_operations + id: k7Q-3mX-p9Z + type: deployment + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/FleetDeploymentsV2Response" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all deployments + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + /api/v2/fleet/deployments/configure: + post: + description: |- + Create a new deployment to apply configuration changes + to a fleet of hosts matching the specified filter query. + + This endpoint supports two types of configuration operations: + - `merge-patch`: Merges the provided patch data with the existing configuration file, + creating the file if it doesn't exist. + - `delete`: Removes the specified configuration file from the target hosts. + + You can optionally use `target_packages` to apply the configuration change only to specific package versions. + + The deployment is created and started automatically. You can specify multiple configuration + operations to execute in order on each target host. Use the filter query to target + specific hosts using the Datadog query syntax. + + Set `dry_run` to `true` to validate the configuration and resolve target hosts and packages without deploying anything. A dry run returns a 200 with the validation result instead of creating and starting a deployment. + + Returns a 400 if `filter_query` or `config_operations` is missing, a target package is missing a name or version or cannot be resolved, the configuration fails validation, or the filter query does not match any host eligible for the deployment. + operationId: CreateFleetDeploymentConfigureV2 + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config_operations: + - file_op: merge-patch + file_path: /datadog.yaml + patch: + apm_config: + enabled: true + log_level: info + logs_enabled: true + filter_query: env:prod AND datacenter:us-east-1 + type: deployment + dry_run: + summary: Dry run + value: + data: + attributes: + config_operations: + - file_op: merge-patch + file_path: /datadog.yaml + patch: + log_level: info + dry_run: true + filter_query: env:prod AND datacenter:us-east-1 + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentConfigureV2CreateRequest" + description: Request payload containing the deployment details. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: + config_validated: true + non_upgradable_hosts: 0 + query: "env:prod AND datacenter:us-east-1" + total_hosts: 42 + id: dry-run + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentConfigureV2DryRunResponse" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "alice@datadoghq.com" + duration_seconds: 0 + error_summary: "" + estimated_finished_at: 0 + finished_at: 0 + is_scheduled: false + query: "env:prod AND datacenter:us-east-1" + started_at: 1699990000 + status: pending + target_versions: [] + update_type: update_config_operations + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentV2CreateResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a configuration deployment + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + - fleet_policies_write + /api/v2/fleet/deployments/upgrade: + post: + description: |- + Create and immediately start a new package upgrade + on hosts matching the specified filter query. + + This endpoint allows you to upgrade the Datadog Agent to a specific version + on hosts matching the specified filter query. + + The deployment is created and started automatically. The system: + 1. Identifies all hosts matching the filter query. + 2. Validates that the specified version is available. + 3. Begins rolling out the package upgrade to the target hosts. + + Returns a 400 if `filter_query` or `target_packages` is missing, a target package is missing a name or version, or the filter query does not match any host eligible for the upgrade. Returns a 409 if a conflicting upgrade is already running on one or more target hosts. + operationId: CreateFleetDeploymentUpgradeV2 + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter_query: env:prod AND service:web + target_packages: + - name: datadog-agent + version: 7.52.0 + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentPackageUpgradeV2CreateRequest" + description: Request payload containing the package upgrade details. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "alice@datadoghq.com" + duration_seconds: 0 + error_summary: "" + estimated_finished_at: 0 + finished_at: 0 + is_scheduled: false + query: "env:prod AND service:web" + started_at: 1699990000 + status: pending + target_versions: ["7.52.0"] + update_type: update_package + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentV2CreateResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Upgrade hosts + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + - fleet_policies_write + /api/v2/fleet/deployments/{deployment_id}: + get: + description: |- + Retrieve detailed information about a specific deployment, including its current status, + configuration operations, and per-host execution status. + + Returns a 404 if no deployment matches the given ID or if you do not have access to it. + operationId: GetFleetDeploymentV2 + parameters: + - description: The unique identifier of the deployment to retrieve. + example: "k7Q-3mX-p9Z" + in: path + name: deployment_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "carol@datadoghq.com" + canceled_hosts: 1 + config_operations: + - file_op: merge-patch + file_path: "/datadog.yaml" + patch: + logs_enabled: true + duration_seconds: 0 + error_summary: "" + estimated_finished_at: 1699999999 + failed_hosts: 1 + high_level_status: running + hosts: + - hostname: web-01.example.com + running_step: applying_config + status: running + status_details: "step 2/3" + versions: + - current_version: "7.50.0" + package_name: datadog-agent + target_version: "7.52.0" + - hostname: web-02.example.com + status: succeeded + versions: + - current_version: "7.52.0" + package_name: datadog-agent + target_version: "7.52.0" + is_scheduled: true + query: "env:prod AND service:web" + running_hosts: 1 + schedule_id: "sched-789" + skipped_hosts: 1 + succeeded_hosts: 1 + target_versions: ["7.52.0"] + total_hosts: 5 + update_type: update_config_operations + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentV2DetailResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a deployment by ID + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - hosts_read + /api/v2/fleet/deployments/{deployment_id}/cancel: + post: + description: |- + Cancel an active deployment and stop all pending operations. + When you cancel a deployment: + - All pending operations on hosts that haven't started yet are stopped. + - Operations currently in progress on hosts may complete or be interrupted, depending on their current status. + - Configuration changes or package upgrades already applied to hosts are not rolled back. + + After cancellation, you can view the final state of the deployment using the GET endpoint to see which hosts + were successfully updated before the cancellation. + + Only deployments with a `pending` or `running` status can be canceled. Returns a 400 if the deployment is not in a cancelable status. Returns a 404 if no deployment matches the specified ID or if you do not have access to it. + operationId: CancelFleetDeploymentV2 + parameters: + - description: The unique identifier of the deployment to cancel. + example: "k7Q-3mX-p9Z" + in: path + name: deployment_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + message: "Cancellation has been requested; the deployment is stopping." + status: stopping + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: "#/components/schemas/FleetDeploymentV2CancelResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Cancel a deployment + tags: + - Fleet Automation + "x-permission": + operator: AND + permissions: + - agent_upgrade_write + - fleet_policies_write + /api/v2/fleet/schedules: + get: + description: |- + Retrieve all upgrade schedules for the organization. + + Schedules automate package upgrades by defining maintenance windows and recurrence rules. + Each schedule automatically creates deployments based on its configuration. + operationId: ListFleetSchedulesV2 + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2023-11-14T22:13:19Z" + created_by: user@example.com + is_default: false + name: Weekly Production Agent Updates + next_run: "2025-01-06T02:00:00Z" + query: env:prod AND service:web + rule: + days_of_week: + - Mon + - Wed + interval: 1 + maintenance_window_duration: 120 + start_maintenance_window: "0200" + timezone: America/New_York + status: active + updated_at: "2023-11-14T22:13:19Z" + updated_by: user@example.com + version_to_latest: 0 + id: abc-def-ghi-123 + type: schedule + meta: + page: + total_count: 1 + schema: + $ref: "#/components/schemas/FleetSchedulesV2Response" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all schedules + tags: + - Fleet Automation + "x-permission": + operator: OR + permissions: + - hosts_read + /api/v2/fleet/schedules/{id}: + get: + description: |- + Retrieve detailed information about a specific schedule by its unique identifier. + operationId: GetFleetScheduleV2 + parameters: + - description: The unique identifier of the schedule to retrieve. + example: "abc-def-ghi-123" + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2023-11-14T22:13:19Z" + created_by: user@example.com + is_default: false + name: Weekly Production Agent Updates + next_run: "2025-01-06T02:00:00Z" + query: env:prod AND service:web + rule: + days_of_week: + - Mon + - Wed + interval: 1 + maintenance_window_duration: 120 + start_maintenance_window: "0200" + timezone: America/New_York + status: active + updated_at: "2023-11-14T22:13:19Z" + updated_by: user@example.com + version_to_latest: 0 + id: abc-def-ghi-123 + type: schedule + schema: + $ref: "#/components/schemas/FleetScheduleV2Response" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a schedule by ID + tags: + - Fleet Automation + "x-permission": + operator: OR + permissions: + - hosts_read + /api/v2/forms: + get: + description: Get all forms for the authenticated user's organization. + operationId: ListForms + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + active: true + anonymous: false + created_at: "2026-05-29T20:06:14.895284Z" + datastore_config: + datastore_id: 00000000-0000-0000-0000-000000000000 + primary_column_name: "" + primary_key_generation_strategy: "" + description: A form to collect user feedback. + end_date: + idp_survey: false + modified_at: "2026-05-29T20:06:14.895285Z" + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: "#/components/schemas/FormsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List forms + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new form. The form is created in draft mode and must be published before it can be used. This also creates a new datastore for form responses and links it to the form. + operationId: CreateForm + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + anonymous: false + data_definition: {} + description: A form to collect user feedback. + idp_survey: false + name: User Feedback Form + single_response: false + ui_definition: {} + type: forms + schema: + $ref: "#/components/schemas/CreateFormRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: "2026-05-29T20:06:14.895284Z" + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: + idp_survey: false + modified_at: "2026-05-29T20:06:14.895285Z" + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: "#/components/schemas/FormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/create_and_publish: + post: + description: Creates a new form and immediately publishes its initial version. This also creates a new datastore for form responses and links it to the form. + operationId: CreateAndPublishForm + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + anonymous: false + data_definition: {} + description: A form to collect user feedback. + idp_survey: false + name: User Feedback Form + single_response: false + ui_definition: {} + type: forms + schema: + $ref: "#/components/schemas/CreateFormRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: "2026-05-29T20:06:14.895284Z" + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: + idp_survey: false + modified_at: "2026-05-29T20:06:14.895285Z" + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: "#/components/schemas/FormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create and publish a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}: + delete: + description: Delete a form by its ID. This will also try to delete the associated datastore. + operationId: DeleteForm + parameters: + - description: The ID of the form. + example: 844dfd88-aa84-4db4-8979-e7bdbb9c1dc3 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 844dfd88-aa84-4db4-8979-e7bdbb9c1dc3 + type: forms + schema: + $ref: "#/components/schemas/DeleteFormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a form definition by its ID. + operationId: GetForm + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + - description: The version of the form to retrieve. Use 'latest' for the most recent draft, 'published' for the last published version, or a specific version number. + in: query + name: version + required: false + schema: + default: latest + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: "2026-05-29T20:06:14.895284Z" + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: + idp_survey: false + modified_at: "2026-05-29T20:06:14.895285Z" + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: "#/components/schemas/FormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a form's properties such as its name, description, or datastore configuration. + operationId: UpdateForm + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + form_update: + description: An updated description. + name: Updated Form Name + type: forms + schema: + $ref: "#/components/schemas/UpdateFormRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: "2026-05-29T20:06:14.895284Z" + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: An updated description. + end_date: + idp_survey: false + modified_at: "2026-05-29T20:06:15.000000Z" + name: Updated Form Name + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: "#/components/schemas/FormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/clone: + post: + description: Clone an existing form. The clone is created in draft mode using the source form's latest version. + operationId: CloneForm + parameters: + - description: The ID of the form to clone. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Copy of My Form + type: forms + schema: + $ref: "#/components/schemas/CloneFormRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: "2026-05-30T10:00:00.000000Z" + datastore_config: + datastore_id: a2b3c4d5-e6f7-8901-2345-6789abcdef01 + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: + idp_survey: false + modified_at: "2026-05-30T10:00:00.000000Z" + name: Copy of My Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 7a1e9054-5f6a-4b08-9e3d-c2f189a3bce0 + type: forms + schema: + $ref: "#/components/schemas/FormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Clone a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/publish: + post: + description: Publish a specific version of a form, making it available for submissions. + operationId: PublishForm + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + version: 1 + type: form_publications + schema: + $ref: "#/components/schemas/PublishFormRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-29T20:06:13.677353Z" + form_id: afc67600-0511-43b1-9b18-578fb4979bd3 + form_version: 1 + id: "42" + modified_at: "2026-05-29T20:06:13.677353Z" + org_id: 2 + publish_seq: 1 + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: "42" + type: form_publications + schema: + $ref: "#/components/schemas/FormPublicationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Publish a form version + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/versions: + post: + description: |- + Create or update the latest draft version of a form. The `upsert_params` field controls + optimistic concurrency behavior. + operationId: UpsertFormVersion + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_definition: {} + state: draft + ui_definition: {} + upsert_params: + match_policy: none + type: form_versions + schema: + $ref: "#/components/schemas/UpsertFormVersionRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-29T20:06:14.895921Z" + data_definition: + $ref: "#/components/schemas/FormDataDefinition" + definition_signature: '{"signature":"b7f312957a80cea2c8c9950532b205a90a3f8a7ebb7e52fc25437a25d903d545","version":1}' + etag: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + modified_at: "2026-05-29T20:06:14.949163Z" + state: draft + ui_definition: {} + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + version: 2 + id: "126" + type: form_versions + schema: + $ref: "#/components/schemas/FormVersionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create or update a form version + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/versions/upsert_and_publish: + post: + description: Upsert the latest form version and publish it in a single atomic transaction. + operationId: UpsertAndPublishFormVersion + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_definition: {} + ui_definition: {} + upsert_params: + etag: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + type: form_versions + schema: + $ref: "#/components/schemas/UpsertAndPublishFormVersionRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: "2026-05-29T20:06:14.895284Z" + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: + idp_survey: false + modified_at: "2026-05-29T20:06:15.000000Z" + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: "#/components/schemas/FormResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Upsert and publish a form version + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/global_orgs: + get: + description: |- + Returns organizations across regions for the authenticated user. The `user_handle` query parameter must match the authenticated user's handle. + operationId: ListGlobalOrgs + parameters: + - description: The handle of the authenticated user. + in: query + name: user_handle + required: true + schema: + example: user@example.com + type: string + - description: Maximum number of results returned. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int32 + maximum: 1000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.page.next_cursor`. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + org: + name: Example Org + public_id: abcdef12345 + subdomain: example + uuid: "13d10a96-6ff2-49be-be7b-4f56ebb13335" + redirect_url: "https://app.datadoghq.com/account/login/password?dd_oid=13d10a96-6ff2-49be-be7b-4f56ebb13335&login_hint=user%40example.com" + source_region: us1.prod.dog + user: + handle: user@example.com + uuid: "cfab5cf9-5472-48ea-a79c-a64045f4f745" + type: global_user_orgs + links: + next: "https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100&page[cursor]=next-page" + self: "https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100" + meta: + page: + cursor: "" + limit: 100 + next_cursor: next-page + type: cursor + schema: + $ref: "#/components/schemas/GlobalOrgsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List global orgs + tags: + - Organizations + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.next_cursor + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - user_access_read + /api/v2/governance/config: + get: + description: |- + Retrieve the Governance Console configuration for the organization, including whether the + Console is enabled, whether assignment notifications are enabled, and whether usage + attribution is configured. + operationId: GetGovernanceConfig + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + enabled: true + usage_attribution_configured: true + xorg_insights_enabled: true + id: "00000000-0000-0000-0000-000000000000" + type: "governance_console_config" + schema: + $ref: "#/components/schemas/GovernanceConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get the Governance Console configuration + tags: + - Governance Console + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control: + get: + description: |- + Retrieve the list of governance controls configured for the organization. Each control pairs a + detection definition with the organization's current detection, notification, and mitigation + configuration, along with counts of active and mitigated detections. + operationId: ListGovernanceControls + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + active_detections_count: 12 + category: "security" + created_at: "2024-01-15T09:30:00Z" + created_by: "11111111-2222-3333-4444-555555555555" + description: "Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials." + detection_parameters: + api_key_threshold: 30 + insights: [] + last_detection_at: "2024-03-01T12:00:00Z" + mitigated_detections_count: 3 + mitigation_parameters: {} + mitigation_type: "" + mitigations: + - description: "Automatically identifies and revokes inactive API keys to improve security and reduce potential attack surface." + execution_modes: + - "manual" + - "automatic" + id: "revoke_api_key" + permissions: + - "api_keys_write" + - "api_keys_delete" + supported_parameters: [] + title: "Revoke Unused API Keys" + name: "Unused API Keys" + priority: "High" + product: "api_keys" + resource_type: "api_key" + resource_type_display_name: "API Key" + supported_detection_parameters: + - default_value: 30 + description: "Number of days of inactivity before an API key is considered unused." + display_name: "Unused API Key Threshold" + name: "api_key_threshold" + required: false + supported_values: + type: "integer" + type: "Proactive" + id: "unused_api_keys" + type: "governance_control" + schema: + $ref: "#/components/schemas/GovernanceControlsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List controls + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control/{detection_type}: + get: + description: |- + Retrieve a single governance control by its detection type, including the organization's current + detection, notification, and mitigation configuration and detection counts. + operationId: GetGovernanceControl + parameters: + - description: The detection type that identifies the control, for example `unused_api_keys`. + example: "unused_api_keys" + in: path + name: detection_type + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active_detections_count: 12 + category: "security" + created_at: "2024-01-15T09:30:00Z" + created_by: "11111111-2222-3333-4444-555555555555" + description: "Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials." + detection_parameters: + api_key_threshold: 30 + insights: [] + last_detection_at: "2024-03-01T12:00:00Z" + mitigated_detections_count: 3 + mitigation_parameters: {} + mitigation_type: "revoke_api_key" + mitigations: [] + name: "Unused API Keys" + priority: "High" + product: "api_keys" + resource_type: "api_key" + resource_type_display_name: "API Key" + supported_detection_parameters: + - default_value: 30 + description: "Number of days of inactivity before an API key is considered unused." + display_name: "Unused API Key Threshold" + name: "api_key_threshold" + required: false + supported_values: + type: "integer" + type: "Proactive" + id: "unused_api_keys" + type: "governance_control" + schema: + $ref: "#/components/schemas/GovernanceControlResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a control + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the detection, notification, and mitigation configuration of a governance control. Only + the attributes present in the request are modified. Changing the mitigation type or its + parameters may require additional permissions. + operationId: UpdateGovernanceControl + parameters: + - description: The detection type that identifies the control, for example `unused_api_keys`. + example: "unused_api_keys" + in: path + name: detection_type + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + detection_parameters: + api_key_threshold: 60 + mitigation_type: "revoke_api_key" + type: "governance_control" + schema: + $ref: "#/components/schemas/GovernanceControlUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active_detections_count: 12 + category: "security" + created_at: "2024-01-15T09:30:00Z" + created_by: "11111111-2222-3333-4444-555555555555" + description: "Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials." + detection_parameters: + api_key_threshold: 60 + insights: [] + last_detection_at: "2024-03-01T12:00:00Z" + mitigated_detections_count: 3 + mitigation_parameters: {} + mitigation_type: "revoke_api_key" + mitigations: [] + name: "Unused API Keys" + priority: "High" + product: "api_keys" + resource_type: "api_key" + resource_type_display_name: "API Key" + supported_detection_parameters: [] + type: "Proactive" + id: "unused_api_keys" + type: "governance_control" + schema: + $ref: "#/components/schemas/GovernanceControlResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update a control + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + - governance_console_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control/{detection_type}/detections: + get: + description: |- + Retrieve the detections produced by the governance control with the given detection type. + Results can be filtered by state and free-text query, sorted, and paginated. + operationId: ListGovernanceControlDetections + parameters: + - description: The detection type that identifies the control; for example, `unused_api_keys`. + example: "unused_api_keys" + in: path + name: detection_type + required: true + schema: + type: string + - description: Restrict the results to detections in the given state. + example: "active" + in: query + name: filter[state] + required: false + schema: + type: string + - description: Restrict the results to detections matching the given free-text query. + example: "production" + in: query + name: filter[query] + required: false + schema: + type: string + - description: |- + A comma-separated list of attributes to sort detections by. Prefix an attribute with + `-` for descending order. + + The attributes available for sorting are `id`, `created_at`, `assigned_to`, + `detection_type`, `display_name`, `exception_at`, `mitigate_after`, `mitigated_at`, + `priority`, `resource_id`, and `state`. Defaults to `created_at,-id`. + example: "-created_at,-id" + in: query + name: sort + required: false + schema: + type: string + - description: "The zero-based index of the page to return; the first page is 0." + example: 0 + in: query + name: page[number] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The number of detections to return per page. + example: 50 + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + assigned_team: "platform-security" + assigned_to: "11111111-2222-3333-4444-555555555555" + assignment_source: "manual" + control_id: "unused_api_keys" + created_at: "2024-03-01T12:00:00Z" + detection_type: "unused_api_keys" + display_name: "CI Deploy Key" + metadata: + region: "us-east-1" + priority: 1 + resource_id: "api-key-12345" + resource_type: "api_key" + state: "active" + id: "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + type: "governance_control_detection" + schema: + $ref: "#/components/schemas/GovernanceControlDetectionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List control detections + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control/{detection_type}/notification_settings: + get: + description: |- + Retrieve the notification settings for the governance control with the given detection type, + including, for each supported event type, whether notifications are enabled and which + destinations receive them. + operationId: GetGovernanceControlNotificationSettings + parameters: + - description: The detection type that identifies the control; for example, `unused_api_keys`. + example: "unused_api_keys" + in: path + name: detection_type + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + event_settings: + - enabled: true + event_type: "new_detection" + targets: + - handle: "#governance-alerts" + type: "slack" + id: "unused_api_keys" + type: "control_notification_settings" + schema: + $ref: "#/components/schemas/ControlNotificationSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get control notification settings + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Replace the notification settings for the governance control with the given detection type, + setting, for each supported event type, whether notifications are enabled and which + destinations receive them. + operationId: UpdateGovernanceControlNotificationSettings + parameters: + - description: The detection type that identifies the control; for example, `unused_api_keys`. + example: "unused_api_keys" + in: path + name: detection_type + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + event_settings: + - enabled: true + event_type: "new_detection" + targets: + - handle: "#governance-alerts" + type: "slack" + type: "control_notification_settings" + schema: + $ref: "#/components/schemas/ControlNotificationSettingsUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + event_settings: + - enabled: true + event_type: "new_detection" + targets: + - handle: "#governance-alerts" + type: "slack" + id: "unused_api_keys" + type: "control_notification_settings" + schema: + $ref: "#/components/schemas/ControlNotificationSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update control notification settings + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + - governance_console_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/detections/mitigate: + post: + description: |- + Apply a mitigation to a set of governance detections of a given detection type. When the + mitigation type is omitted, the control's configured mitigation is used. The request is + accepted for asynchronous processing. + operationId: MitigateGovernanceDetections + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + detection_ids: + - "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + detection_type: "unused_api_keys" + mitigation_parameters: {} + mitigation_type: "revoke_api_key" + type: "governance_control_detection" + schema: + $ref: "#/components/schemas/GovernanceMitigationRequest" + required: true + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Mitigate detections + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/detections/{detection_id}: + get: + description: Retrieve a single governance detection by its unique identifier. + operationId: GetGovernanceDetection + parameters: + - description: The unique identifier of the detection. + example: "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + in: path + name: detection_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assigned_team: "platform-security" + assigned_to: "11111111-2222-3333-4444-555555555555" + assignment_source: "manual" + control_id: "unused_api_keys" + created_at: "2024-03-01T12:00:00Z" + detection_type: "unused_api_keys" + display_name: "CI Deploy Key" + metadata: + region: "us-east-1" + priority: 1 + resource_id: "api-key-12345" + resource_type: "api_key" + state: "active" + id: "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + type: "governance_control_detection" + schema: + $ref: "#/components/schemas/GovernanceControlDetectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a detection + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update a governance detection by its unique identifier. Only the attributes present in the + request are modified, allowing a detection to be acknowledged as an exception, reopened, + reassigned, or deferred for mitigation. + operationId: UpdateGovernanceDetection + parameters: + - description: The unique identifier of the detection. + example: "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + in: path + name: detection_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assigned_to: "11111111-2222-3333-4444-555555555555" + state: "exception" + type: "governance_control_detection" + schema: + $ref: "#/components/schemas/GovernanceControlDetectionUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assigned_team: "platform-security" + assigned_to: "11111111-2222-3333-4444-555555555555" + assignment_source: "manual" + control_id: "unused_api_keys" + created_at: "2024-03-01T12:00:00Z" + detection_type: "unused_api_keys" + display_name: "CI Deploy Key" + metadata: + region: "us-east-1" + priority: 1 + resource_id: "api-key-12345" + resource_type: "api_key" + state: "active" + id: "3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d" + type: "governance_control_detection" + schema: + $ref: "#/components/schemas/GovernanceControlDetectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update a detection + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/insights: + get: + description: |- + Retrieve the list of governance insights available to the organization. Each insight + reports the query used to compute it, so that the value can be computed client-side. + Insights can be filtered by product. + operationId: ListGovernanceInsights + parameters: + - description: |- + Restrict the results to insights belonging to the given products. May be repeated to + filter by multiple products. Matching is case-insensitive. + example: + - "Usage" + - "Logs Settings" + in: query + name: filter[product] + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + audit_query: + description: "Number of custom metrics submitted by the organization." + display_name: "Custom Metrics" + event_query: + metric_query: + query: "sum:datadog.estimated_usage.metrics.custom{*}" + reducer: "sum" + source: "metrics" + percentage_query: + product: "Usage" + query_config: + chart_type: "line" + comparison_shift: "month" + directionality: "decrease_better" + effective_time_window_days: 30 + sub_product: "" + time_range: "month" + unit_name: "custom metrics" + usage_query: + id: "498ee21f-8037-48b8-a961-a488692902f4" + type: "insight" + - attributes: + audit_query: + compute: + aggregation: "cardinality" + interval: 86400000 + metric: "@usr.id" + indexes: + - "main" + query: "@evt.name:Dashboard" + source: "audit" + description: "Number of users who have used the Dashboard in the last 30 days" + display_name: "Active Users" + event_query: + metric_query: + percentage_query: + product: "Usage" + query_config: + chart_type: "line" + comparison_shift: "month" + directionality: "neutral" + effective_time_window_days: 30 + sub_product: "" + time_range: "month" + unit_name: "active users" + usage_query: + id: "a3248d1b-5578-4345-a34e-fe9657300f22" + type: "insight" + schema: + $ref: "#/components/schemas/GovernanceInsightsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + - metrics_read + summary: List insights + tags: + - Governance Console + "x-permission": + operator: OR + permissions: + - metrics_read + - events_read + - audit_logs_read + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/notification_settings: + get: + description: |- + Retrieve the organization-wide governance notification settings, including whether users are + notified when detections are assigned to them. + operationId: GetGovernanceNotificationSettings + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + id: "11111111-2222-3333-4444-555555555555" + type: "governance_notification_settings" + schema: + $ref: "#/components/schemas/GovernanceNotificationSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get notification settings + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the organization-wide governance notification settings. Only the attributes present in + the request are modified. + operationId: UpdateGovernanceNotificationSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + type: "governance_notification_settings" + schema: + $ref: "#/components/schemas/GovernanceNotificationSettingsUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + id: "11111111-2222-3333-4444-555555555555" + type: "governance_notification_settings" + schema: + $ref: "#/components/schemas/GovernanceNotificationSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update notification settings + tags: + - Governance Console + "x-permission": + operator: AND + permissions: + - governance_console_read + - governance_console_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/tag_rules: + get: + description: |- + Retrieve all tag rules for the organization. Optionally include disabled or deleted + rules, filter by telemetry source, and include each rule's current compliance score + via the `include=score` query parameter. + operationId: ListTagRules + parameters: + - description: Whether to include rules that are currently disabled. Defaults to `false`. + example: false + in: query + name: include_disabled + required: false + schema: + type: boolean + - description: Whether to include rules that have been soft-deleted. Defaults to `false`. + example: false + in: query + name: include_deleted + required: false + schema: + type: boolean + - description: Comma-separated list of related resources to include alongside each rule in the response. Currently the only supported value is `score`. + example: "score" + in: query + name: include + required: false + schema: + $ref: "#/components/schemas/TagRuleInclude" + - description: Restrict the result set to rules whose source matches the given value. + in: query + name: filter[source] + required: false + schema: + $ref: "#/components/schemas/TagRuleSource" + - description: Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Defaults to a recent window appropriate for the source. + example: 1779315066097 + in: query + name: ts_start + required: false + schema: + format: int64 + type: integer + - description: End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. + example: 1779401466097 + in: query + name: ts_end + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2026-05-21T22:11:06.108696Z" + created_by: "test-user" + enabled: true + modified_at: "2026-05-21T22:11:06.108696Z" + modified_by: "test-user" + name: "Service tag must be one of api or web" + negated: false + required: true + rule_type: "surfacing" + scope: "env" + source: "logs" + tag_key: "service" + tag_value_patterns: + - "api" + - "web" + version: 1 + id: "123" + relationships: + score: + data: + id: "123-v1-1779315066097-1779401466097" + type: "tag_rule_score" + type: "tag_rule" + included: + - attributes: + score: 80 + ts_end: 1779401466097 + ts_start: 1779315066097 + version: 1 + id: "123-v1-1779315066097-1779401466097" + type: "tag_rule_score" + schema: + $ref: "#/components/schemas/TagRulesListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List tag rules + tags: + - Tag Rules + "x-permission": + operator: OR + permissions: + - telemetry_rules_read + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new tag rule for the organization. The caller's organization is derived from + the authenticated user; cross-organization creation is not supported. Fields such as + `rule_id`, `version`, and the timestamp/audit fields are assigned by the server. + operationId: CreateTagRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: "Service tag must be one of api or web" + negated: false + required: true + rule_type: "surfacing" + scope: "env" + source: "logs" + tag_key: "service" + tag_value_patterns: + - "api" + - "web" + type: "tag_rule" + schema: + $ref: "#/components/schemas/TagRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-21T22:11:06.108696Z" + created_by: "test-user" + enabled: true + modified_at: "2026-05-21T22:11:06.108696Z" + modified_by: "test-user" + name: "Service tag must be one of api or web" + negated: false + required: true + rule_type: "surfacing" + scope: "env" + source: "logs" + tag_key: "service" + tag_value_patterns: + - "api" + - "web" + version: 1 + id: "123" + type: "tag_rule" + schema: + $ref: "#/components/schemas/TagRuleResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a tag rule + tags: + - Tag Rules + "x-permission": + operator: AND + permissions: + - telemetry_rules_create + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/tag_rules/{rule_id}: + delete: + description: |- + Delete a tag rule. By default the rule is soft-deleted so it can be recovered later + and so that historical score data remains queryable. Pass `hard_delete=true` to remove + the rule permanently. + operationId: DeleteTagRule + parameters: + - description: The unique identifier of the tag rule to delete. + example: "123" + in: path + name: rule_id + required: true + schema: + type: string + - description: Whether to permanently delete the rule instead of performing a soft delete. Defaults to `false`. + example: false + in: query + name: hard_delete + required: false + schema: + type: boolean + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a tag rule + tags: + - Tag Rules + "x-permission": + operator: AND + permissions: + - telemetry_rules_create + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Retrieve a single tag rule by ID. Optionally include the rule's current compliance + score via the `include=score` query parameter. Rules belonging to other organizations + cannot be retrieved. + operationId: GetTagRule + parameters: + - description: The unique identifier of the tag rule. + example: "123" + in: path + name: rule_id + required: true + schema: + type: string + - description: Comma-separated list of related resources to include alongside the rule. Currently the only supported value is `score`. + example: "score" + in: query + name: include + required: false + schema: + $ref: "#/components/schemas/TagRuleInclude" + - description: Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. + example: 1779315066097 + in: query + name: ts_start + required: false + schema: + format: int64 + type: integer + - description: End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. + example: 1779401466097 + in: query + name: ts_end + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-21T22:11:06.108696Z" + created_by: "test-user" + enabled: true + modified_at: "2026-05-21T22:11:06.108696Z" + modified_by: "test-user" + name: "Service tag must be one of api or web" + negated: false + required: true + rule_type: "surfacing" + scope: "env" + source: "logs" + tag_key: "service" + tag_value_patterns: + - "api" + - "web" + version: 1 + id: "123" + relationships: + score: + data: + id: "123-v1-1779315066097-1779401466097" + type: "tag_rule_score" + type: "tag_rule" + included: + - attributes: + score: 80 + ts_end: 1779401466097 + ts_start: 1779315066097 + version: 1 + id: "123-v1-1779315066097-1779401466097" + type: "tag_rule_score" + schema: + $ref: "#/components/schemas/TagRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a tag rule + tags: + - Tag Rules + "x-permission": + operator: OR + permissions: + - telemetry_rules_read + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update one or more attributes of an existing tag rule. Only the fields supplied in the + request body are modified; omitted fields retain their current values. The rule's + `source` cannot be changed after creation. + operationId: UpdateTagRule + parameters: + - description: The unique identifier of the tag rule to update. + example: "123" + in: path + name: rule_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: "Service tag must be one of api, web, or worker" + id: "123" + type: "tag_rule" + schema: + $ref: "#/components/schemas/TagRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-21T22:11:06.108696Z" + created_by: "test-user" + enabled: true + modified_at: "2026-05-21T22:25:01.000000Z" + modified_by: "test-user" + name: "Service tag must be one of api, web, or worker" + negated: false + required: true + rule_type: "surfacing" + scope: "env" + source: "logs" + tag_key: "service" + tag_value_patterns: + - "api" + - "web" + version: 2 + id: "123" + type: "tag_rule" + schema: + $ref: "#/components/schemas/TagRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a tag rule + tags: + - Tag Rules + "x-permission": + operator: AND + permissions: + - telemetry_rules_create + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/tag_rules/{rule_id}/score: + get: + description: |- + Retrieve the compliance score for a single tag rule. The score is computed over the + requested time window (or a source-appropriate default) and represents the percentage of + telemetry within that window that conforms to the rule. A `null` score indicates that + no relevant telemetry was found. + operationId: GetTagRuleScore + parameters: + - description: The unique identifier of the tag rule. + example: "123" + in: path + name: rule_id + required: true + schema: + type: string + - description: Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. + example: 1779315066097 + in: query + name: ts_start + required: false + schema: + format: int64 + type: integer + - description: End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. + example: 1779401466097 + in: query + name: ts_end + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + score: 80 + ts_end: 1779401466097 + ts_start: 1779315066097 + version: 1 + id: "123-v1-1779315066097-1779401466097" + type: "tag_rule_score" + schema: + $ref: "#/components/schemas/TagRuleScoreResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a tag rule compliance score + tags: + - Tag Rules + "x-permission": + operator: OR + permissions: + - telemetry_rules_read + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/hamr: + get: + description: |- + Retrieve the High Availability Multi-Region (HAMR) organization connection details for the authenticated organization. + This endpoint returns information about the HAMR connection configuration, including the target organization, + datacenter, status, and whether this is the primary or secondary organization in the HAMR relationship. + operationId: GetHamrOrgConnection + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + hamr_status: 4 + is_primary: true + modified_at: "2024-01-01T00:00:00+00:00" + modified_by: test@example.com + target_org_datacenter: us1 + target_org_name: Production Backup Org + target_org_uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: hamr_org_connections + schema: + $ref: "#/components/schemas/HamrOrgConnectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get HAMR organization connection + tags: + - High Availability MultiRegion + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create or update the High Availability Multi-Region (HAMR) organization connection. + This endpoint allows you to configure the HAMR connection between the authenticated organization + and a target organization, including setting the connection status (ONBOARDING, PASSIVE, FAILOVER, ACTIVE, RECOVERY) + operationId: CreateHamrOrgConnection + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + hamr_status: 4 + is_primary: true + modified_by: admin@example.com + target_org_datacenter: us1 + target_org_name: Production Backup Org + target_org_uuid: 660f9511-f3ac-52e5-b827-557766551111 + id: 550e8400-e29b-41d4-a716-446655440000 + type: hamr_org_connections + schema: + $ref: "#/components/schemas/HamrOrgConnectionRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + hamr_status: 4 + is_primary: true + modified_at: "2024-01-01T00:00:00+00:00" + modified_by: test@example.com + target_org_datacenter: us1 + target_org_name: Production Backup Org + target_org_uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000002 + type: hamr_org_connections + schema: + $ref: "#/components/schemas/HamrOrgConnectionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update HAMR organization connection + tags: + - High Availability MultiRegion + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/identity_providers: + get: + description: Get all identity providers available for the current organization. + operationId: ListIdentityProviders + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + authentication_method: "SAML" + enabled: true + id: "00000000-0000-0000-0000-000000000001" + type: identity_providers + - attributes: + authentication_method: google_oidc + enabled: false + id: "00000000-0000-0000-0000-000000000002" + type: identity_providers + - attributes: + authentication_method: standard + enabled: false + id: "00000000-0000-0000-0000-000000000003" + type: identity_providers + schema: + $ref: "#/components/schemas/IdentityProvidersResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: List identity providers + tags: + - Identity Providers + "x-permission": + operator: OR + permissions: + - org_management + - user_access_manage + /api/v2/identity_providers/{idp_id}: + patch: + description: Enable or disable an identity provider for the current organization. + operationId: UpdateIdentityProvider + parameters: + - $ref: "#/components/parameters/IdentityProviderId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + id: "00000000-0000-0000-0000-000000000001" + type: identity_providers + schema: + $ref: "#/components/schemas/IdentityProviderUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication_method: "SAML" + enabled: true + id: "00000000-0000-0000-0000-000000000001" + type: identity_providers + schema: + $ref: "#/components/schemas/IdentityProviderResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update an identity provider + tags: + - Identity Providers + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/identity_providers/{idp_id}/users: + get: + description: |- + Get all users in the organization whose login method has been overridden + to use the specified identity provider. + operationId: ListIdentityProviderUsers + parameters: + - $ref: "#/components/parameters/IdentityProviderId" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: User attribute to order results by. Options include `email` and `name`. + in: query + name: sort + required: false + schema: + default: email + example: email + type: string + - description: "Direction of sort. Options: `asc`, `desc`." + in: query + name: sort_dir + required: false + schema: + $ref: "#/components/schemas/QuerySortOrder" + - description: Filter users by the given string. Defaults to no filtering. + in: query + name: filter + required: false + schema: + type: string + - description: |- + Filter on status attribute. + Comma-separated list, with possible values `Active`, `Pending`, and `Disabled`. + Defaults to no filtering. + in: query + name: filter[status] + required: false + schema: + example: Active + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: example@datadoghq.com + handle: example-user + name: Example User + status: Active + id: "00000000-0000-9999-0000-000000000001" + type: users + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/UsersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: List users with an identity provider override + tags: + - Identity Providers + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/idp/entity_integrations/{integration_id}: + delete: + description: Delete the configuration stored for a given integration in the caller's organization. + operationId: DeleteEntityIntegrationConfig + parameters: + - $ref: "#/components/parameters/EntityIntegrationConfigID" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an entity integration configuration + tags: + - Entity Integration Configs + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve the configuration currently stored for a given integration in the caller's organization. + operationId: GetEntityIntegrationConfig + parameters: + - $ref: "#/components/parameters/EntityIntegrationConfigID" + responses: + "200": + content: + application/json: + example: + data: + attributes: + config: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + integration_id: github + org_id: 1234 + id: 01HJABCD12345678ABCDEFGHIJ + type: entity_integration_configs + schema: + $ref: "#/components/schemas/EntityIntegrationConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an entity integration configuration + tags: + - Entity Integration Configs + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Create or replace the configuration for a given integration in the caller's organization. The shape of `data.attributes.config` depends on the integration: + + - For `github`: `config` must contain an `enabled_repos` array of objects with `hostname`, `github_org_name`, and `repo_name`. + - For `jira`: `config` must contain an `enabled_projects` array of objects with `hostname`, `account_id`, and `project_key`. + - For `pagerduty`: `config` must contain an `accounts` array of objects with a required `enabled` boolean and an optional `subdomain` string. + operationId: UpdateEntityIntegrationConfig + parameters: + - $ref: "#/components/parameters/EntityIntegrationConfigID" + requestBody: + content: + application/json: + examples: + default: + summary: GitHub integration configuration + value: + data: + attributes: + config: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + type: entity_integration_config_requests + jira: + summary: Jira integration configuration + value: + data: + attributes: + config: + enabled_projects: + - account_id: "123456789" + hostname: mycompany.atlassian.net + project_key: AAA + type: entity_integration_config_requests + pagerduty: + summary: PagerDuty integration configuration + value: + data: + attributes: + config: + accounts: + - enabled: true + subdomain: mycompany + type: entity_integration_config_requests + schema: + $ref: "#/components/schemas/EntityIntegrationConfigRequest" + required: true + responses: + "200": + content: + application/json: + example: + data: + attributes: + config: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + integration_id: github + org_id: 1234 + id: 01HJABCD12345678ABCDEFGHIJ + type: entity_integration_configs + schema: + $ref: "#/components/schemas/EntityIntegrationConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create or update entity integration configuration + tags: + - Entity Integration Configs + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents: + get: + description: >- + Get all incidents for the user's organization. + operationId: ListIncidents + parameters: + - $ref: "#/components/parameters/IncidentIncludeQueryParameter" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageOffset" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: "2024-01-01T00:00:00+00:00" + customer_impacted: false + modified: "2024-01-01T00:00:00+00:00" + title: A test incident title + id: "00000000-0000-0000-1234-000000000000" + type: incidents + schema: + $ref: "#/components/schemas/IncidentsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of incidents + tags: + - Incidents + x-pagination: + limitParam: page[size] + pageOffsetParam: page[offset] + resultsPath: data + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident. + operationId: CreateIncident + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + customer_impact_scope: Example customer impact scope + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + incident_type_uuid: 00000000-0000-0000-0000-000000000000 + initial_cells: + - cell_type: markdown + content: + content: "An example timeline cell message." + important: false + is_test: false + notification_handles: + - display_name: Jane Doe + handle: "@user@email.com" + - display_name: Slack Channel + handle: "@slack-channel" + - display_name: Incident Workflow + handle: "@workflow-from-incident" + title: A test incident title + relationships: + commander_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + type: incidents + schema: + $ref: "#/components/schemas/IncidentCreateRequest" + description: Incident payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + modified: "2024-01-01T00:00:00+00:00" + title: A test incident title + id: "00000000-0000-0000-1234-000000000000" + type: incidents + schema: + $ref: "#/components/schemas/IncidentResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/global/incident-handles: + delete: + description: Delete a global incident handle. + operationId: DeleteGlobalIncidentHandle + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete global incident handle + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a list of global incident handles. + operationId: ListGlobalIncidentHandles + parameters: + - description: Comma-separated list of related resources to include in the response + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,commander_user,incident_type" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + fields: + severity: + - SEV-1 + modified_at: "2024-01-01T00:00:00+00:00" + name: "@incident-sev-1" + id: 00000000-0000-0000-0000-000000000006 + type: incidents_handles + schema: + $ref: "#/components/schemas/IncidentHandlesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List global incident handles + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new global incident handle. + operationId: CreateGlobalIncidentHandle + parameters: + - description: Comma-separated list of related resources to include in the response + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,commander_user,incident_type" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + severity: + - SEV-1 + name: "@incident-sev-1" + id: b2494081-cdf0-4205-b366-4e1dd4fdf0bf + relationships: + commander_user: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + incident_type: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + type: incidents_handles + schema: + $ref: "#/components/schemas/IncidentHandleRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + fields: + severity: + - SEV-1 + modified_at: "2024-01-01T00:00:00+00:00" + name: "@incident-sev-1" + id: 00000000-0000-0000-0000-000000000007 + type: incidents_handles + schema: + $ref: "#/components/schemas/IncidentHandleResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create global incident handle + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing global incident handle. + operationId: UpdateGlobalIncidentHandle + parameters: + - description: Comma-separated list of related resources to include in the response + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,commander_user,incident_type" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + severity: + - SEV-1 + name: "@incident-sev-1" + id: b2494081-cdf0-4205-b366-4e1dd4fdf0bf + relationships: + commander_user: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + incident_type: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + type: incidents_handles + schema: + $ref: "#/components/schemas/IncidentHandleRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + fields: + severity: + - SEV-1 + modified_at: "2024-01-01T00:00:00+00:00" + name: "@incident-sev-1" + id: 00000000-0000-0000-0000-000000000008 + type: incidents_handles + schema: + $ref: "#/components/schemas/IncidentHandleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update global incident handle + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/global/settings: + get: + description: Retrieve global incident settings for the organization. + operationId: GetGlobalIncidentSettings + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + analytics_dashboard_id: 00000000-0000-0000-0000-000000000002-def + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + type: incidents_global_settings + schema: + $ref: "#/components/schemas/GlobalIncidentSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get global incident settings + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update global incident settings for the organization. + operationId: UpdateGlobalIncidentSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + analytics_dashboard_id: 00000000-0000-0000-0000-000000000003-def + type: incidents_global_settings + schema: + $ref: "#/components/schemas/GlobalIncidentSettingsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + analytics_dashboard_id: 00000000-0000-0000-0000-000000000005-def + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000004 + type: incidents_global_settings + schema: + $ref: "#/components/schemas/GlobalIncidentSettingsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update global incident settings + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-chat-configurations: + post: + description: Create a Google Chat configuration for incidents. + operationId: CreateIncidentGoogleChatConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain_id: my-domain + space_name_template: "{{incident.title}}" + space_target_audience_id: "123456789" + space_time_zone: America/New_York + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: google_chat_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationRequest" + description: Google Chat configuration payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + domain_id: my-domain + modified_at: "2024-01-01T00:00:00.000Z" + space_name_template: "{{incident.title}}" + space_target_audience_id: "123456789" + space_time_zone: America/New_York + id: 00000000-0000-0000-0000-000000000001 + type: google_chat_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident Google Chat configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-chat-configurations/{id}: + patch: + description: Update a Google Chat configuration for incidents. + operationId: UpdateIncidentGoogleChatConfiguration + parameters: + - $ref: "#/components/parameters/IncidentGoogleChatConfigurationIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain_id: updated-domain + id: 00000000-0000-0000-0000-000000000001 + type: google_chat_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationPatchRequest" + description: Google Chat configuration patch payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + domain_id: updated-domain + modified_at: "2024-01-02T00:00:00.000Z" + space_name_template: "{{incident.title}}" + space_target_audience_id: "123456789" + space_time_zone: America/New_York + id: 00000000-0000-0000-0000-000000000001 + type: google_chat_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleChatConfigurationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident Google Chat configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-meet-configurations: + post: + description: Create a Google Meet configuration for incidents. + operationId: CreateIncidentGoogleMeetConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + allow_manual_meeting_creation: true + auto_summarize: false + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: google_meet_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationRequest" + description: Google Meet configuration payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + allow_manual_meeting_creation: true + auto_summarize: false + created_at: "2024-01-01T00:00:00.000Z" + modified_at: "2024-01-01T00:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: google_meet_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident Google Meet configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-meet-configurations/{id}: + patch: + description: Update a Google Meet configuration for incidents. + operationId: UpdateIncidentGoogleMeetConfiguration + parameters: + - $ref: "#/components/parameters/IncidentGoogleMeetConfigurationIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_summarize: true + id: 00000000-0000-0000-0000-000000000001 + type: google_meet_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationPatchRequest" + description: Google Meet configuration patch payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + allow_manual_meeting_creation: true + auto_summarize: true + created_at: "2024-01-01T00:00:00.000Z" + modified_at: "2024-01-02T00:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: google_meet_configurations + schema: + $ref: "#/components/schemas/IncidentGoogleMeetConfigurationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident Google Meet configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/impact-fields: + get: + description: List all impact fields for incidents. + operationId: ListIncidentImpactFields + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/IncidentImpactFieldsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: List incident impact fields + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an impact field for incidents. + operationId: CreateIncidentImpactField + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope + field_choices: + - description: Affects all customers + display_name: All Customers + value: all_customers + - description: Affects some customers + display_name: Some Customers + value: some_customers + field_type: dropdown + name: customer_impact_scope + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: impact_fields + schema: + $ref: "#/components/schemas/IncidentImpactFieldRequest" + description: Impact field payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope + field_choices: + - description: Affects all customers + display_name: All Customers + value: all_customers + field_type: dropdown + name: customer_impact_scope + id: 00000000-0000-0000-0000-000000000001 + type: impact_fields + schema: + $ref: "#/components/schemas/IncidentImpactFieldResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident impact field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/impact-fields/{field_id}: + delete: + description: Delete an impact field for incidents. + operationId: DeleteIncidentImpactField + parameters: + - $ref: "#/components/parameters/IncidentImpactFieldIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident impact field + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an impact field for incidents. + operationId: UpdateIncidentImpactField + parameters: + - $ref: "#/components/parameters/IncidentImpactFieldIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope Updated + field_type: dropdown + name: customer_impact_scope + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: impact_fields + schema: + $ref: "#/components/schemas/IncidentImpactFieldRequest" + description: Impact field update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope Updated + field_type: dropdown + name: customer_impact_scope + id: 00000000-0000-0000-0000-000000000001 + type: impact_fields + schema: + $ref: "#/components/schemas/IncidentImpactFieldResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident impact field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-rules: + get: + description: Lists all notification rules for the organization. Optionally filter by incident type. + operationId: ListIncidentNotificationRules + parameters: + - $ref: "#/components/parameters/IncidentNotificationRuleIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: "2024-01-01T00:00:00+00:00" + enabled: true + handles: + - "@team-email@example.com" + modified: "2024-01-01T00:00:00+00:00" + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: "#/components/schemas/IncidentNotificationRuleArray" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List incident notification rules + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Creates a new notification rule. + operationId: CreateIncidentNotificationRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + enabled: true + handles: + - "@team-email@company.com" + - "@slack-channel" + renotify_on: + - status + - severity + trigger: incident_created_trigger + visibility: organization + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + notification_template: + data: + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + type: incident_notification_rules + schema: + $ref: "#/components/schemas/CreateIncidentNotificationRuleRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: "2024-01-01T00:00:00+00:00" + enabled: true + handles: + - "@team-email@example.com" + modified: "2024-01-01T00:00:00+00:00" + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: "#/components/schemas/IncidentNotificationRule" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Create an incident notification rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-rules/{id}: + delete: + description: Deletes a notification rule by its ID. + operationId: DeleteIncidentNotificationRule + parameters: + - $ref: "#/components/parameters/IncidentNotificationRuleIDPathParameter" + - $ref: "#/components/parameters/IncidentNotificationRuleIncludeQueryParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Delete an incident notification rule + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieves a specific notification rule by its ID. + operationId: GetIncidentNotificationRule + parameters: + - $ref: "#/components/parameters/IncidentNotificationRuleIDPathParameter" + - $ref: "#/components/parameters/IncidentNotificationRuleIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: "2024-01-01T00:00:00+00:00" + enabled: true + handles: + - "@team-email@example.com" + modified: "2024-01-01T00:00:00+00:00" + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: "#/components/schemas/IncidentNotificationRule" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_read + summary: Get an incident notification rule + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Updates an existing notification rule with a complete replacement. + operationId: UpdateIncidentNotificationRule + parameters: + - $ref: "#/components/parameters/IncidentNotificationRuleIDPathParameter" + - $ref: "#/components/parameters/IncidentNotificationRuleIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + enabled: true + handles: + - "@team-email@company.com" + - "@slack-channel" + renotify_on: + - status + - severity + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + notification_template: + data: + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + type: incident_notification_rules + schema: + $ref: "#/components/schemas/PutIncidentNotificationRuleRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: "2024-01-01T00:00:00+00:00" + enabled: true + handles: + - "@team-email@example.com" + modified: "2024-01-01T00:00:00+00:00" + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: "#/components/schemas/IncidentNotificationRule" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Update an incident notification rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-templates: + get: + description: Lists all notification templates. Optionally filter by incident type. + operationId: ListIncidentNotificationTemplates + parameters: + - $ref: "#/components/parameters/IncidentNotificationTemplateIncidentTypeFilterQueryParameter" + - $ref: "#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: alert + content: "An incident has been declared.\n\nTitle: {{incident.title}}" + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + name: Incident Alert Template + subject: "{{incident.severity}} Incident: {{incident.title}}" + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: "#/components/schemas/IncidentNotificationTemplateArray" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List incident notification templates + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Creates a new notification template. + operationId: CreateIncidentNotificationTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: "An incident has been declared.\n\nTitle: {{incident.title}}\nSeverity: {{incident.severity}}\nAffected Services: {{incident.services}}\nStatus: {{incident.state}}\n\nPlease join the incident channel for updates." + name: Incident Alert Template + subject: "{{incident.severity}} Incident: {{incident.title}}" + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: notification_templates + schema: + $ref: "#/components/schemas/CreateIncidentNotificationTemplateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: "An incident has been declared.\n\nTitle: {{incident.title}}" + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + name: Incident Alert Template + subject: "{{incident.severity}} Incident: {{incident.title}}" + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: "#/components/schemas/IncidentNotificationTemplate" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Create incident notification template + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-templates/{id}: + delete: + description: Deletes a notification template by its ID. + operationId: DeleteIncidentNotificationTemplate + parameters: + - $ref: "#/components/parameters/IncidentNotificationTemplateIDPathParameter" + - $ref: "#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Delete a notification template + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieves a specific notification template by its ID. + operationId: GetIncidentNotificationTemplate + parameters: + - $ref: "#/components/parameters/IncidentNotificationTemplateIDPathParameter" + - $ref: "#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: "An incident has been declared.\n\nTitle: {{incident.title}}" + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + name: Incident Alert Template + subject: "{{incident.severity}} Incident: {{incident.title}}" + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: "#/components/schemas/IncidentNotificationTemplate" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + - incident_write + summary: Get incident notification template + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_write + - incident_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Updates an existing notification template's attributes. + operationId: UpdateIncidentNotificationTemplate + parameters: + - $ref: "#/components/parameters/IncidentNotificationTemplateIDPathParameter" + - $ref: "#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: update + content: "Incident Status Update:\n\nTitle: {{incident.title}}\nNew Status: {{incident.state}}\nSeverity: {{incident.severity}}\nServices: {{incident.services}}\nCommander: {{incident.commander}}\n\nFor more details, visit the incident page." + name: Incident Status Update Template + subject: "Incident Update: {{incident.title}} - {{incident.state}}" + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: "#/components/schemas/PatchIncidentNotificationTemplateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: "An incident has been declared.\n\nTitle: {{incident.title}}" + created: "2024-01-01T00:00:00+00:00" + modified: "2024-01-01T00:00:00+00:00" + name: Incident Alert Template + subject: "{{incident.severity}} Incident: {{incident.title}}" + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: "#/components/schemas/IncidentNotificationTemplate" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Update incident notification template + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/postmortem-templates: + get: + description: Retrieve a list of all postmortem templates for incidents. + operationId: ListIncidentPostmortemTemplates + parameters: + - $ref: "#/components/parameters/PostmortemTemplateFilterIncidentTypeParameter" + - $ref: "#/components/parameters/PostmortemTemplateSortParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + content: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + createdAt: "2024-01-01T00:00:00+00:00" + is_default: "2024-01-01T00:00:00+00:00" + location: datadog_notebooks + modifiedAt: "2024-01-01T00:00:00+00:00" + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000001 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: "#/components/schemas/PostmortemTemplatesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List postmortem templates + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new postmortem template for incidents. + operationId: CreateIncidentPostmortemTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + name: Standard Postmortem Template + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: "#/components/schemas/PostmortemTemplateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + content: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + createdAt: "2024-01-01T00:00:00+00:00" + is_default: + location: datadog_notebooks + modifiedAt: "2024-01-01T00:00:00+00:00" + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000002 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: "#/components/schemas/PostmortemTemplateResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/postmortem-templates/{template_id}: + delete: + description: Delete a postmortem template. + operationId: DeleteIncidentPostmortemTemplate + parameters: + - $ref: "#/components/parameters/PostmortemTemplateIdParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve details of a specific postmortem template. + operationId: GetIncidentPostmortemTemplate + parameters: + - $ref: "#/components/parameters/PostmortemTemplateIdParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + content: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + createdAt: "2024-01-01T00:00:00+00:00" + is_default: + location: datadog_notebooks + modifiedAt: "2024-01-01T00:00:00+00:00" + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000003 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: "#/components/schemas/PostmortemTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing postmortem template. + operationId: UpdateIncidentPostmortemTemplate + parameters: + - $ref: "#/components/parameters/PostmortemTemplateIdParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000004 + type: postmortem_templates + schema: + $ref: "#/components/schemas/PostmortemTemplateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + content: "# Overview\n\n# What Happened\n\n# Timeline\n\n# Action Items" + createdAt: "2024-01-01T00:00:00+00:00" + is_default: + location: datadog_notebooks + modifiedAt: "2024-01-01T00:00:00+00:00" + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000004 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: "#/components/schemas/PostmortemTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/rules: + get: + description: List all incident rules. + operationId: ListIncidentRules + parameters: + - description: Filter rules by task ID. + in: query + name: "filter[task_id]" + required: false + schema: + example: notify-incident-handles-job + type: string + - description: Filter rules by trigger. + in: query + name: "filter[trigger]" + required: false + schema: + example: incident_created_trigger + type: string + - description: Filter rules by incident type UUID. + in: query + name: incidentTypeUUID + required: false + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/IncidentRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: List incident rules + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident rule. + operationId: CreateIncidentRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: "severity:SEV-1" + condition_table_type: 1 + enabled: true + execution_type: 1 + task_id: notify-incident-handles-job + task_payload: "{}" + trigger: incident_created_trigger + type: incident_rules + schema: + $ref: "#/components/schemas/IncidentRuleRequest" + description: Incident rule payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: "severity:SEV-1" + condition_table_type: 1 + created: "2024-01-01T00:00:00.000Z" + enabled: true + execution_type: 1 + modified: "2024-01-01T00:00:00.000Z" + task_id: notify-incident-handles-job + task_payload: "{}" + trigger: incident_created_trigger + id: 00000000-0000-0000-0000-000000000001 + type: incidents_rules + schema: + $ref: "#/components/schemas/IncidentRuleResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/rules/{rule_id}: + delete: + description: Delete an incident rule. + operationId: DeleteIncidentRule + parameters: + - $ref: "#/components/parameters/IncidentRuleIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident rule + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_write + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single incident rule by ID. + operationId: GetIncidentRule + parameters: + - $ref: "#/components/parameters/IncidentRuleIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: "severity:SEV-1" + condition_table_type: 1 + created: "2024-01-01T00:00:00.000Z" + enabled: true + execution_type: 1 + modified: "2024-01-01T00:00:00.000Z" + task_id: notify-incident-handles-job + task_payload: "{}" + trigger: incident_created_trigger + id: 00000000-0000-0000-0000-000000000001 + type: incidents_rules + schema: + $ref: "#/components/schemas/IncidentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: Get an incident rule + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident rule. + operationId: UpdateIncidentRule + parameters: + - $ref: "#/components/parameters/IncidentRuleIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + id: 00000000-0000-0000-0000-000000000001 + type: incident_rules + schema: + $ref: "#/components/schemas/IncidentRulePatchRequest" + description: Incident rule patch payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: "severity:SEV-1" + condition_table_type: 1 + created: "2024-01-01T00:00:00.000Z" + enabled: false + execution_type: 1 + modified: "2024-01-02T00:00:00.000Z" + task_id: notify-incident-handles-job + task_payload: "{}" + trigger: incident_created_trigger + id: 00000000-0000-0000-0000-000000000001 + type: incidents_rules + schema: + $ref: "#/components/schemas/IncidentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types: + get: + description: Get all incident types. + operationId: ListIncidentTypes + parameters: + - $ref: "#/components/parameters/IncidentTypeIncludeDeletedParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000002 + type: incident_types + schema: + $ref: "#/components/schemas/IncidentTypeListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of incident types + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_settings_read + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident type. + operationId: CreateIncidentType + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + createdBy: 00000000-0000-0000-0000-000000000000 + description: Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. + is_default: false + lastModifiedBy: 00000000-0000-0000-0000-000000000000 + name: Security Incident + prefix: IR + type: incident_types + schema: + $ref: "#/components/schemas/IncidentTypeCreateRequest" + description: Incident type payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000001 + type: incident_types + schema: + $ref: "#/components/schemas/IncidentTypeResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident type + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types/org-settings: + get: + description: List org settings for all incident types. + operationId: ListOrgSettings + parameters: + - description: Maximum number of results to return. + in: query + name: "page[size]" + required: false + schema: + example: 10 + format: int64 + type: integer + - description: The offset for pagination. + in: query + name: "page[offset]" + required: false + schema: + example: 0 + format: int64 + type: integer + - description: Whether to include deleted records. + in: query + name: include-deleted + required: false + schema: + example: false + type: boolean + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: incident_type + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/IncidentOrgSettingsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List incident type org settings + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types/{incident_type_id}: + delete: + description: Delete an incident type. + operationId: DeleteIncidentType + parameters: + - $ref: "#/components/parameters/IncidentTypeIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident type + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get incident type details. + operationId: GetIncidentType + parameters: + - $ref: "#/components/parameters/IncidentTypeIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000003 + type: incident_types + schema: + $ref: "#/components/schemas/IncidentTypeResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get incident type details + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident type. + operationId: UpdateIncidentType + parameters: + - $ref: "#/components/parameters/IncidentTypeIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + createdBy: 00000000-0000-0000-0000-000000000000 + description: "Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. Note: This will notify the security team." + is_default: false + lastModifiedBy: 00000000-0000-0000-0000-000000000000 + name: Security Incident + prefix: IR + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + schema: + $ref: "#/components/schemas/IncidentTypePatchRequest" + description: Incident type payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000004 + type: incident_types + schema: + $ref: "#/components/schemas/IncidentTypeResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident type + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types/{incident_type_id}/org-settings: + get: + description: Get the org settings for a specific incident type. + operationId: GetOrgSettingsByIncidentType + parameters: + - $ref: "#/components/parameters/IncidentOrgSettingsTypeIDPathParameter" + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: incident_type + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00.000Z" + modified: "2024-01-01T00:00:00.000Z" + settings: + allow_anonymous_incident_declaration: false + allow_guest_incident_declaration: false + pagerduty_paging: true + private_incidents_by_default: false + id: 00000000-0000-0000-0000-000000000001 + type: incident_org_settings + schema: + $ref: "#/components/schemas/IncidentOrgSettingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get org settings by incident type + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-fields: + get: + description: Get a list of all incident user-defined fields. + operationId: ListIncidentUserDefinedFields + parameters: + - description: The number of results to return per page. Must be between 0 and 1000. + in: query + name: page[size] + schema: + default: 1000 + format: int64 + maximum: 1000 + minimum: 0 + type: integer + - description: The page number to retrieve, starting at 0. + in: query + name: page[number] + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: When true, include soft-deleted fields in the response. + in: query + name: include-deleted + schema: + default: false + type: boolean + - description: Filter results to fields associated with the given incident type UUID. + in: query + name: filter[incident-type] + schema: + type: string + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: "what_happened" + collected: "active" + created: "2026-03-18T08:40:04.437887Z" + default_value: + deleted: + display_name: "Root Cause" + metadata: + modified: "2026-03-18T08:40:04.437887Z" + name: "root_cause" + ordinal: "1.1" + required: false + reserved: false + tag_key: + type: 1 + valid_values: + - description: "A bug in the service code." + display_name: "Service Bug" + value: "service_bug" + id: "6f8f42e0-6a84-4495-9a24-6decb0a87de0" + relationships: + created_by_user: + data: + id: "00000000-0000-0000-0000-000000000001" + type: "users" + incident_type: + data: + id: "7459c30c-c661-4171-9474-db3a486377b2" + type: "incident_types" + last_modified_by_user: + data: + id: "00000000-0000-0000-0000-000000000001" + type: "users" + type: "user_defined_field" + meta: + offset: 0 + size: 1 + schema: + $ref: "#/components/schemas/IncidentUserDefinedFieldListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of incident user-defined fields + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident user-defined field. + operationId: CreateIncidentUserDefinedField + parameters: + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: what_happened + collected: active + default_value: critical + display_name: Root Cause + name: root_cause + ordinal: "1.5" + required: false + tag_key: datacenter + type: 3 + valid_values: + - description: A critical severity incident. + display_name: Critical + short_description: Critical + value: critical + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: user_defined_field + schema: + $ref: "#/components/schemas/IncidentUserDefinedFieldCreateRequest" + description: Incident user-defined field payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: + collected: + created: "2026-03-18T08:40:05.185406Z" + default_value: + deleted: + display_name: "Root Cause" + metadata: + modified: "2026-03-18T08:40:05.185406Z" + name: "root_cause" + ordinal: "9" + required: false + reserved: false + tag_key: + type: 3 + valid_values: + id: "82263487-b540-4c12-8797-58ac1d4fed17" + relationships: + created_by_user: + data: + id: "2f2c94fe-cd6e-4f8e-b9c7-d5755aca09a6" + type: "users" + incident_type: + data: + id: "7459c30c-c661-4171-9474-db3a486377b2" + type: "incident_types" + last_modified_by_user: + data: + id: "2f2c94fe-cd6e-4f8e-b9c7-d5755aca09a6" + type: "users" + type: "user_defined_field" + schema: + $ref: "#/components/schemas/IncidentUserDefinedFieldResponse" + description: CREATED + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident user-defined field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-fields/{field_id}: + delete: + description: Delete an incident user-defined field. + operationId: DeleteIncidentUserDefinedField + parameters: + - $ref: "#/components/parameters/IncidentUserDefinedFieldIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident user-defined field + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get details of an incident user-defined field. + operationId: GetIncidentUserDefinedField + parameters: + - $ref: "#/components/parameters/IncidentUserDefinedFieldIDPathParameter" + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: "what_happened" + collected: "active" + created: "2026-03-18T08:40:04.437887Z" + default_value: + deleted: + display_name: "Root Cause" + metadata: + modified: "2026-03-18T08:40:04.437887Z" + name: "root_cause" + ordinal: "1.1" + required: false + reserved: false + tag_key: + type: 1 + valid_values: + - description: "A bug in the service code." + display_name: "Service Bug" + value: "service_bug" + id: "6f8f42e0-6a84-4495-9a24-6decb0a87de0" + relationships: + created_by_user: + data: + id: "00000000-0000-0000-0000-000000000001" + type: "users" + incident_type: + data: + id: "7459c30c-c661-4171-9474-db3a486377b2" + type: "incident_types" + last_modified_by_user: + data: + id: "00000000-0000-0000-0000-000000000001" + type: "users" + type: "user_defined_field" + schema: + $ref: "#/components/schemas/IncidentUserDefinedFieldResponse" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get an incident user-defined field + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident user-defined field. + operationId: UpdateIncidentUserDefinedField + parameters: + - $ref: "#/components/parameters/IncidentUserDefinedFieldIDPathParameter" + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: what_happened + collected: active + default_value: critical + display_name: Root Cause + ordinal: "1.5" + required: false + valid_values: + - description: A critical severity incident. + display_name: Critical + short_description: Critical + value: critical + id: 00000000-0000-0000-0000-000000000000 + type: user_defined_field + schema: + $ref: "#/components/schemas/IncidentUserDefinedFieldUpdateRequest" + description: Incident user-defined field update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: "what_happened" + collected: + created: "2026-03-18T08:39:49.913895Z" + default_value: + deleted: + display_name: "Root Cause" + metadata: + modified: "2026-03-18T08:39:49.922909Z" + name: "root_cause" + ordinal: "8" + required: false + reserved: false + tag_key: + type: 3 + valid_values: + id: "13a731a3-a010-450e-b6a3-3d450a26170c" + relationships: + created_by_user: + data: + id: "8e7d4859-0916-4df8-b51c-5f5a4ea7815e" + type: "users" + incident_type: + data: + id: "95edc42f-c55d-46fa-92a1-a182646454af" + type: "incident_types" + last_modified_by_user: + data: + id: "8e7d4859-0916-4df8-b51c-5f5a4ea7815e" + type: "users" + type: "user_defined_field" + schema: + $ref: "#/components/schemas/IncidentUserDefinedFieldResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident user-defined field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-roles: + get: + description: List all user-defined roles for incidents. + operationId: ListIncidentUserDefinedRoles + parameters: + - description: Filter roles by incident type UUID. + in: query + name: filter[incident-type] + required: false + schema: + example: "00000000-0000-0000-0000-000000000001" + format: uuid + type: string + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,incident_type" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: "2024-01-01T00:00:00.000Z" + description: "The technical lead for the incident." + modified: "2024-01-01T00:00:00.000Z" + name: "Tech Lead" + policy: + is_single: true + id: "00000000-0000-0000-0000-000000000002" + type: incident_user_defined_roles + schema: + $ref: "#/components/schemas/IncidentUserDefinedRolesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: List incident user-defined roles + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new user-defined role for incidents. + operationId: CreateIncidentUserDefinedRole + parameters: + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,incident_type" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "The technical lead for the incident." + name: "Tech Lead" + policy: + is_single: true + relationships: + incident_type: + data: + id: "00000000-0000-0000-0000-000000000001" + type: incident_types + type: incident_user_defined_roles + schema: + $ref: "#/components/schemas/IncidentUserDefinedRoleRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00.000Z" + description: "The technical lead for the incident." + modified: "2024-01-01T00:00:00.000Z" + name: "Tech Lead" + policy: + is_single: true + id: "00000000-0000-0000-0000-000000000002" + type: incident_user_defined_roles + schema: + $ref: "#/components/schemas/IncidentUserDefinedRoleResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-roles/{role_id}: + delete: + description: Delete an existing user-defined role for incidents. + operationId: DeleteIncidentUserDefinedRole + parameters: + - $ref: "#/components/parameters/IncidentUserDefinedRoleIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a single user-defined role for incidents. + operationId: GetIncidentUserDefinedRole + parameters: + - $ref: "#/components/parameters/IncidentUserDefinedRoleIDPathParameter" + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,incident_type" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00.000Z" + description: "The technical lead for the incident." + modified: "2024-01-01T00:00:00.000Z" + name: "Tech Lead" + policy: + is_single: true + id: "00000000-0000-0000-0000-000000000002" + type: incident_user_defined_roles + schema: + $ref: "#/components/schemas/IncidentUserDefinedRoleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: Get an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing user-defined role for incidents. + operationId: UpdateIncidentUserDefinedRole + parameters: + - $ref: "#/components/parameters/IncidentUserDefinedRoleIDPathParameter" + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: "created_by_user,last_modified_by_user,incident_type" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: "Updated Tech Lead" + id: "00000000-0000-0000-0000-000000000002" + type: incident_user_defined_roles + schema: + $ref: "#/components/schemas/IncidentUserDefinedRolePatchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00.000Z" + modified: "2024-01-02T00:00:00.000Z" + name: "Updated Tech Lead" + policy: + is_single: true + id: "00000000-0000-0000-0000-000000000002" + type: incident_user_defined_roles + schema: + $ref: "#/components/schemas/IncidentUserDefinedRoleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/import: + post: + description: |- + Import an incident from an external system. This endpoint allows you to create incidents with + historical data such as custom timestamps for detection, declaration, and resolution. + Imported incidents do not execute integrations or notification rules. + operationId: ImportIncident + parameters: + - $ref: "#/components/parameters/IncidentImportIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + declared: "2025-01-01T00:00:00Z" + detected: "2025-01-01T00:00:00Z" + fields: + severity: + value: SEV-5 + state: + value: active + incident_type_uuid: 00000000-0000-0000-0000-000000000000 + resolved: "2025-01-01T01:00:00Z" + title: Imported incident from external system + visibility: organization + relationships: + commander_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + declared_by_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + type: incidents + schema: + $ref: "#/components/schemas/IncidentImportRequest" + description: Incident import payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + fields: + severity: + value: SEV-5 + state: + value: active + modified: "2024-01-01T00:00:00+00:00" + title: Imported incident from external system + id: "00000000-0000-0000-1234-000000000000" + type: incidents + schema: + $ref: "#/components/schemas/IncidentImportResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Import an incident + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/search: + get: + description: >- + Search for incidents matching a certain query. + operationId: SearchIncidents + parameters: + - $ref: "#/components/parameters/IncidentSearchIncludeQueryParameter" + - $ref: "#/components/parameters/IncidentSearchQueryQueryParameter" + - $ref: "#/components/parameters/IncidentSearchSortQueryParameter" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageOffset" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + facets: + severity: [] + state: [] + incidents: [] + total: 0 + type: incidents_search_results + schema: + $ref: "#/components/schemas/IncidentSearchResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Search for incidents + tags: + - Incidents + x-pagination: + limitParam: page[size] + pageOffsetParam: page[offset] + resultsPath: data.attributes.incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}: + delete: + description: Deletes an existing incident from the users organization. + operationId: DeleteIncident + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an existing incident + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: >- + Get the details of an incident by `incident_id`. + operationId: GetIncident + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + modified: "2024-01-01T00:00:00+00:00" + title: A test incident title + id: "00000000-0000-0000-1234-000000000000" + type: incidents + schema: + $ref: "#/components/schemas/IncidentResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get the details of an incident + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: >- + Updates an incident. Provide only the attributes that should be updated as this request is a partial update. + operationId: UpdateIncident + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + customer_impact_scope: Example customer impact scope + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + notification_handles: + - display_name: Jane Doe + handle: "@user@email.com" + - display_name: Slack Channel + handle: "@slack-channel" + - display_name: Incident Workflow + handle: "@workflow-from-incident" + title: A test incident title + id: 00000000-0000-0000-4567-000000000000 + relationships: + commander_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + integrations: + data: + - id: 00000000-abcd-0005-0000-000000000000 + type: incident_integrations + - id: 00000000-abcd-0006-0000-000000000000 + type: incident_integrations + postmortem: + data: + id: 00000000-0000-abcd-3000-000000000000 + type: incident_postmortems + type: incidents + schema: + $ref: "#/components/schemas/IncidentUpdateRequest" + description: Incident Payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + modified: "2024-01-01T00:00:00+00:00" + title: A test incident title + id: "00000000-0000-0000-1234-000000000000" + type: incidents + schema: + $ref: "#/components/schemas/IncidentResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an existing incident + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/ai/postmortem: + post: + description: Generate an AI postmortem for an incident. + operationId: GetIncidentAIPostmortem + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action_items: "1. Improve failover testing." + customer_impact: "5% of users experienced timeouts for 30 minutes." + executive_summary: "A database failover caused a 30-minute service outage." + key_timeline: "10:00 - Alert fired. 10:30 - Issue resolved." + lessons_learned: "We need to test the failover process under realistic load." + system_overview: "The primary database cluster experienced a failover event." + id: 00000000-0000-0000-0000-000000000000 + type: get_incident_ai_postmortem_response + schema: + $ref: "#/components/schemas/IncidentAIPostmortemResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Get an AI-generated incident postmortem + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/attachments: + get: + description: List incident attachments. + operationId: ListIncidentAttachments + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - description: Filter attachments by type. Supported values are `1` (`postmortem`) and `2` (`link`). + in: query + name: filter[attachment_type] + schema: + example: "1" + type: string + - $ref: "#/components/parameters/AttachmentIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + attachment: + documentUrl: "https://app.datadoghq.com/notebook/123/Postmortem-IR-123" + title: Postmortem IR-123 + attachment_type: postmortem + modified: "2024-01-01T00:00:00+00:00" + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: "#/components/schemas/AttachmentArray" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List incident attachments + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident attachment. + operationId: CreateIncidentAttachment + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/AttachmentIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + title: Postmortem-IR-123 + attachment_type: postmortem + type: incident_attachments + schema: + $ref: "#/components/schemas/CreateAttachmentRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: "https://app.datadoghq.com/notebook/123/Postmortem-IR-123" + title: Postmortem IR-123 + attachment_type: postmortem + modified: "2024-01-01T00:00:00+00:00" + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: "#/components/schemas/Attachment" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create incident attachment + tags: + - Incidents + "x-permission": + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/attachments/postmortems: + post: + description: |- + Create a postmortem attachment for an incident. + + The endpoint accepts markdown for notebooks created in Confluence or Google Docs. + Postmortems created from notebooks need to be formatted using frontend notebook cells, + in addition to markdown format. + operationId: CreateIncidentPostmortemAttachment + parameters: + - description: The ID of the incident + in: path + name: incident_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - id: cell-1 + type: markdown + content: "# Incident Report - IR-123\n[...]" + postmortem_template_id: 93645509-874e-45c4-adfa-623bfeaead89-123 + title: Postmortem-IR-123 + type: incident_attachments + schema: + $ref: "#/components/schemas/PostmortemAttachmentRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: "https://app.datadoghq.com/notebook/123/Postmortem-IR-123" + title: Postmortem IR-123 + attachment_type: postmortem + modified: "2024-01-01T00:00:00+00:00" + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: "#/components/schemas/Attachment" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create postmortem attachment + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/attachments/{attachment_id}: + delete: + operationId: DeleteIncidentAttachment + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/AttachmentIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete incident attachment + tags: + - Incidents + "x-permission": + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + operationId: UpdateIncidentAttachment + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/AttachmentIDPathParameter" + - $ref: "#/components/parameters/AttachmentIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/124/Postmortem-IR-124 + title: Postmortem-IR-124 + id: 00000000-abcd-0002-0000-000000000000 + type: incident_attachments + schema: + $ref: "#/components/schemas/PatchAttachmentRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: "https://app.datadoghq.com/notebook/124/Postmortem-IR-124" + title: Postmortem IR-124 + attachment_type: postmortem + modified: "2024-01-01T00:00:00+00:00" + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: "#/components/schemas/Attachment" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update incident attachment + tags: + - Incidents + "x-permission": + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/cases/page: + post: + description: Create a page from an incident using the Cases service. + operationId: CreatePageFromIncident + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A critical incident affecting production systems. + services: + - web-store + tags: + - env:prod + target: + identifier: my-oncall-team + type: team_handle + title: Production outage - SEV-1 + type: page + schema: + $ref: "#/components/schemas/IncidentCreatePageFromIncidentRequest" + description: Page creation payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: page_uuid + schema: + $ref: "#/components/schemas/IncidentPageUUIDResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create a page from an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - oncall_page + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/configurations: + patch: + description: Update a configuration for an incident. + operationId: UpdateIncidentConfiguration + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + include_in_search: false + id: 00000000-0000-0000-0000-000000000001 + type: incidents_configurations + schema: + $ref: "#/components/schemas/IncidentConfigurationPatchRequest" + description: Incident configuration patch payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + execute_integrations: true + execute_notification_rules: true + incident_id: 00000000-0000-0000-0000-000000000000 + include_in_analytics: true + include_in_search: false + modified_at: "2024-01-02T00:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: incidents_configurations + schema: + $ref: "#/components/schemas/IncidentConfigurationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a configuration for an incident. + operationId: CreateIncidentConfiguration + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + execute_integrations: true + execute_notification_rules: true + include_in_analytics: true + include_in_search: true + type: incidents_configurations + schema: + $ref: "#/components/schemas/IncidentConfigurationRequest" + description: Incident configuration payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + execute_integrations: true + execute_notification_rules: true + incident_id: 00000000-0000-0000-0000-000000000000 + include_in_analytics: true + include_in_search: true + modified_at: "2024-01-01T00:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: incidents_configurations + schema: + $ref: "#/components/schemas/IncidentConfigurationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/impacts: + get: + description: Get all impacts for an incident. + operationId: ListIncidentImpacts + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentImpactIncludeQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: "Service was unavailable for external users" + end_at: "2024-01-01T01:00:00+00:00" + start_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + type: incident_impacts + schema: + $ref: "#/components/schemas/IncidentImpactsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List an incident's impacts + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + post: + description: Create an impact for an incident. + operationId: CreateIncidentImpact + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentImpactIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Service was unavailable for external users + end_at: "2025-08-29T13:17:00Z" + fields: + customers_impacted: all + products_impacted: + - shopping + - marketing + start_at: "2025-08-28T13:17:00Z" + type: incident_impacts + schema: + $ref: "#/components/schemas/IncidentImpactCreateRequest" + description: Incident impact payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "Service was unavailable for external users" + end_at: "2024-01-01T01:00:00+00:00" + start_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000002 + type: incident_impacts + schema: + $ref: "#/components/schemas/IncidentImpactResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident impact + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_write + /api/v2/incidents/{incident_id}/impacts/{impact_id}: + delete: + description: Delete an incident impact. + operationId: DeleteIncidentImpact + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentImpactIDPathParameter" + responses: + "204": + description: No Content + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident impact + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_write + patch: + description: Update an incident impact. + operationId: PatchIncidentImpact + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentImpactIDPathParameter" + - $ref: "#/components/parameters/IncidentImpactIncludeQueryParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Patched service impact description + type: incident_impacts + schema: + $ref: "#/components/schemas/IncidentImpactPatchRequest" + description: Incident impact patch payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Patched service impact description + start_at: "2025-08-28T13:17:00Z" + id: 00000000-0000-0000-0000-000000000002 + type: incident_impacts + schema: + $ref: "#/components/schemas/IncidentImpactResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident impact + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/page: + post: + description: Create an on-call page directly from an incident. + operationId: CreateOnCallPageFromIncident + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A critical incident affecting production systems. + services: + - web-store + target: + identifier: my-oncall-team + type: team_handle + title: Production outage - SEV-1 + type: page + schema: + $ref: "#/components/schemas/IncidentCreateOnCallPageRequest" + description: On-call page creation payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: page_uuid + schema: + $ref: "#/components/schemas/IncidentPageUUIDResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an on-call page from an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - oncall_page + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/pages/link: + post: + description: Link an existing on-call page to an incident. + operationId: LinkPageToIncident + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: PAGE-12345 + page_target: + identifier: my-oncall-team + type: team_handle + id: PAGE-12345 + type: page + schema: + $ref: "#/components/schemas/IncidentOnCallPageLinkRequest" + description: On-call page link payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + integration_type: 15 + status: 2 + id: 00000000-0000-0000-0000-000000000001 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict - page already linked to incident. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Link a page to an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/integrations: + get: + description: Get all integration metadata for an incident. + operationId: ListIncidentIntegrations + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of an incident's integration metadata + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident integration metadata. + operationId: CreateIncidentIntegration + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 1 + metadata: + channels: + - channel_id: C0123456789 + channel_name: "#new-channel" + redirect_url: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 + team_id: T01234567 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataCreateRequest" + description: Incident integration metadata payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident integration metadata + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id}: + delete: + description: Delete an incident integration metadata. + operationId: DeleteIncidentIntegration + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentIntegrationMetadataIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident integration metadata + tags: + - Incidents + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get incident integration metadata details. + operationId: GetIncidentIntegration + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentIntegrationMetadataIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get incident integration metadata details + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing incident integration metadata. + operationId: UpdateIncidentIntegration + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentIntegrationMetadataIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 1 + metadata: + channels: + - channel_id: C0123456789 + channel_name: "#updated-channel-name" + redirect_url: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 + team_id: T01234567 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataPatchRequest" + description: Incident integration metadata payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + issue_key: PROJ-123 + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an existing incident integration metadata + tags: + - Incidents + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/todos: + get: + description: Get all todos for an incident. + operationId: ListIncidentTodos + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignees: + - "@test.user@example.com" + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000002 + type: incident_todos + schema: + $ref: "#/components/schemas/IncidentTodoListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of an incident's todos + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident todo. + operationId: CreateIncidentTodo + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - "@test.user@test.com" + completed: "2023-03-06T22:00:00.000000+00:00" + content: Restore lost data. + due_date: "2023-07-10T05:00:00.000000+00:00" + incident_id: 00000000-aaaa-0000-0000-000000000000 + type: incident_todos + schema: + $ref: "#/components/schemas/IncidentTodoCreateRequest" + description: Incident todo payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - "@test.user@example.com" + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000001 + type: incident_todos + schema: + $ref: "#/components/schemas/IncidentTodoResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident todo + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/todos/{todo_id}: + delete: + description: Delete an incident todo. + operationId: DeleteIncidentTodo + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentTodoIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident todo + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get incident todo details. + operationId: GetIncidentTodo + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentTodoIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - "@test.user@example.com" + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000003 + type: incident_todos + schema: + $ref: "#/components/schemas/IncidentTodoResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get incident todo details + tags: + - Incidents + "x-permission": + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident todo. + operationId: UpdateIncidentTodo + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentTodoIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - "@test.user@test.com" + completed: "2023-03-06T22:00:00.000000+00:00" + content: Restore lost data. + due_date: "2023-07-10T05:00:00.000000+00:00" + incident_id: 00000000-aaaa-0000-0000-000000000000 + type: incident_todos + schema: + $ref: "#/components/schemas/IncidentTodoPatchRequest" + description: Incident todo payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - "@test.user@example.com" + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000004 + type: incident_todos + schema: + $ref: "#/components/schemas/IncidentTodoResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident todo + tags: + - Incidents + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/responders: + get: + description: List all responders for an incident. + operationId: ListIncidentResponders + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/IncidentRespondersResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List incident responders + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Add a responder to an incident. + operationId: CreateIncidentResponder + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + user: + data: + id: 00000000-0000-0000-0000-000000000001 + type: users + type: incident_responders + schema: + $ref: "#/components/schemas/IncidentResponderRequest" + description: Incident responder payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00.000Z" + is_billable: true + modified: "2024-01-01T00:00:00.000Z" + id: 00000000-0000-0000-0000-000000000002 + type: incident_responders + schema: + $ref: "#/components/schemas/IncidentResponderResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident responder + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/responders/{responder_id}: + delete: + description: Remove a responder from an incident. + operationId: DeleteIncidentResponder + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentResponderIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident responder + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single responder for an incident. + operationId: GetIncidentResponder + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentResponderIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00.000Z" + is_billable: true + modified: "2024-01-01T00:00:00.000Z" + id: 00000000-0000-0000-0000-000000000002 + type: incident_responders + schema: + $ref: "#/components/schemas/IncidentResponderResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get an incident responder + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/servicenow-records: + post: + description: Create a ServiceNow record for an incident. + operationId: CreateIncidentServiceNowRecord + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group: IT Support + configuration_item_mapping: my-service + instance_name: my-instance + type: incident_servicenow_record_prompt + schema: + $ref: "#/components/schemas/IncidentServiceNowRecordRequest" + description: ServiceNow record payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-0000-0000-0000-000000000000 + integration_type: 13 + metadata: + records: + - instance_name: my-instance + record_num: INC0001234 + redirect_url: https://my-instance.service-now.com/nav_to.do?uri=incident.do?sys_id=abc123 + status: 2 + id: 00000000-0000-0000-0000-000000000001 + type: incident_integrations + schema: + $ref: "#/components/schemas/IncidentIntegrationMetadataResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident ServiceNow record + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/timestamp-overrides: + get: + description: List all timestamp overrides for an incident. + operationId: ListTimestampOverrides + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/IncidentTimestampOverridesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List incident timestamp overrides + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a timestamp override for an incident. + operationId: CreateTimestampOverride + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + timestamp_type: detected + timestamp_value: "2024-01-01T10:00:00.000Z" + type: incidents_timestamp_overrides + schema: + $ref: "#/components/schemas/IncidentTimestampOverrideRequest" + description: Timestamp override payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + incident_id: 00000000-0000-0000-0000-000000000000 + modified_at: "2024-01-01T00:00:00.000Z" + timestamp_type: detected + timestamp_value: "2024-01-01T10:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: incidents_timestamp_overrides + schema: + $ref: "#/components/schemas/IncidentTimestampOverrideResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident timestamp override + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/timestamp-overrides/{id}: + delete: + description: Delete a timestamp override for an incident. + operationId: DeleteTimestampOverride + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentTimestampOverrideIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident timestamp override + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a timestamp override for an incident. + operationId: UpdateTimestampOverride + parameters: + - $ref: "#/components/parameters/IncidentIDPathParameter" + - $ref: "#/components/parameters/IncidentTimestampOverrideIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + timestamp_value: "2024-01-01T11:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: incidents_timestamp_overrides + schema: + $ref: "#/components/schemas/IncidentTimestampOverridePatchRequest" + description: Timestamp override patch payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00.000Z" + incident_id: 00000000-0000-0000-0000-000000000000 + modified_at: "2024-01-02T00:00:00.000Z" + timestamp_type: detected + timestamp_value: "2024-01-01T11:00:00.000Z" + id: 00000000-0000-0000-0000-000000000001 + type: incidents_timestamp_overrides + schema: + $ref: "#/components/schemas/IncidentTimestampOverrideResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident timestamp override + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/elastic-cloud/accounts: + get: + description: List Elastic Cloud integration accounts. + operationId: ListElasticCloudIntegrationAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: "env:prod,team:saasint" + url: "https://example.es.us-central1.gcp.cloud.es.io:9243" + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Elastic Cloud integration accounts + tags: + - Elastic Cloud Integration Accounts + "x-permission": + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an Elastic Cloud integration account. + operationId: CreateElasticCloudIntegrationAccount + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: "env:prod,team:saasint" + url: "https://example.es.us-central1.gcp.cloud.es.io:9243" + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an Elastic Cloud integration account + tags: + - Elastic Cloud Integration Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/elastic-cloud/accounts/{account_id}: + delete: + description: Delete an Elastic Cloud integration account. + operationId: DeleteElasticCloudIntegrationAccount + parameters: + - $ref: "#/components/parameters/IntegrationAccountIdParameter" + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an Elastic Cloud integration account + tags: + - Elastic Cloud Integration Accounts + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get an Elastic Cloud integration account. + operationId: GetElasticCloudIntegrationAccount + parameters: + - $ref: "#/components/parameters/IntegrationAccountIdParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: "env:prod,team:saasint" + url: "https://example.es.us-central1.gcp.cloud.es.io:9243" + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an Elastic Cloud integration account + tags: + - Elastic Cloud Integration Accounts + "x-permission": + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an Elastic Cloud integration account. Only the fields provided are changed. + operationId: UpdateElasticCloudIntegrationAccount + parameters: + - $ref: "#/components/parameters/IntegrationAccountIdParameter" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: "env:prod,team:saasint" + url: "https://example.es.us-central1.gcp.cloud.es.io:9243" + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/ElasticCloudIntegrationAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an Elastic Cloud integration account + tags: + - Elastic Cloud Integration Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/twilio/accounts: + get: + description: List Twilio integration accounts. + operationId: ListTwilioIntegrationAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/TwilioIntegrationAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Twilio integration accounts + tags: + - Twilio Integration Accounts + "x-permission": + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a Twilio integration account. + operationId: CreateTwilioIntegrationAccount + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/TwilioIntegrationAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/TwilioIntegrationAccountResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Twilio integration account + tags: + - Twilio Integration Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/twilio/accounts/{account_id}: + delete: + description: Delete a Twilio integration account. + operationId: DeleteTwilioIntegrationAccount + parameters: + - $ref: "#/components/parameters/IntegrationAccountIdParameter" + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Twilio integration account + tags: + - Twilio Integration Accounts + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a Twilio integration account. + operationId: GetTwilioIntegrationAccount + parameters: + - $ref: "#/components/parameters/IntegrationAccountIdParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/TwilioIntegrationAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Twilio integration account + tags: + - Twilio Integration Accounts + "x-permission": + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a Twilio integration account. Only the fields provided are changed. + operationId: UpdateTwilioIntegrationAccount + parameters: + - $ref: "#/components/parameters/IntegrationAccountIdParameter" + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/TwilioIntegrationAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: "2026-06-25T08:30:50Z" + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account + schema: + $ref: "#/components/schemas/TwilioIntegrationAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Twilio integration account + tags: + - Twilio Integration Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/aws/accounts: + get: + description: Get a list of AWS Account Integration Configs. + operationId: ListAWSAccounts + parameters: + - description: |- + Optional query parameter to filter accounts by AWS Account ID. + If not provided, all accounts are returned. + example: "123456789012" + in: query + name: aws_account_id + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/AWSAccountsResponse" + description: AWS Accounts List object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all AWS integrations + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + post: + description: Create a new AWS Account Integration Config. + operationId: CreateAWSAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_tags: + - env:prod + auth_config: + access_key_id: ACCESS_KEY_ID + secret_access_key: SECRET_ACCESS_KEY + aws_account_id: "123456789012" + aws_partition: aws + aws_regions: + include_all: true + logs_config: + lambda_forwarder: + lambdas: + - arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder + sources: + - s3 + metrics_config: + automute_enabled: true + collect_cloudwatch_alarms: false + collect_custom_metrics: false + enabled: true + metric_name_filters: + - include_only: + - aws.ec2.network_in + namespace: AWS/EC2 + tag_filters: + - namespace: AWS/EC2 + resources_config: + cloud_security_posture_management_collection: false + extended_collection: true + type: account + schema: + $ref: "#/components/schemas/AWSAccountCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_config: + access_key_id: ACCESS_KEY_ID + aws_account_id: "123456789012" + aws_partition: aws + id: 00000000-0000-0000-0000-000000000001 + type: account + schema: + $ref: "#/components/schemas/AWSAccountResponse" + description: AWS Account object + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configurations_manage + /api/v2/integration/aws/accounts/{aws_account_config_id}: + delete: + description: Delete an AWS Account Integration Config by config ID. + operationId: DeleteAWSAccount + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an AWS integration + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configurations_manage + get: + description: Get an AWS Account Integration Config by config ID. + operationId: GetAWSAccount + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_config: + access_key_id: ACCESS_KEY_ID + aws_account_id: "123456789012" + aws_partition: aws + id: 00000000-0000-0000-0000-000000000002 + type: account + schema: + $ref: "#/components/schemas/AWSAccountResponse" + description: AWS Account object + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an AWS integration by config ID + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + patch: + description: Update an AWS Account Integration Config by config ID. + operationId: UpdateAWSAccount + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_tags: + - env:prod + auth_config: + access_key_id: ACCESS_KEY_ID + secret_access_key: SECRET_ACCESS_KEY + aws_account_id: "123456789012" + aws_partition: aws + aws_regions: + include_all: true + logs_config: + lambda_forwarder: + lambdas: + - arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder + sources: + - s3 + metrics_config: + automute_enabled: true + collect_cloudwatch_alarms: false + collect_custom_metrics: false + enabled: true + metric_name_filters: + - include_only: + - aws.ec2.network_in + namespace: AWS/EC2 + tag_filters: + - namespace: AWS/EC2 + resources_config: + cloud_security_posture_management_collection: false + extended_collection: true + id: 00000000-abcd-0001-0000-000000000000 + type: account + schema: + $ref: "#/components/schemas/AWSAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_config: + access_key_id: ACCESS_KEY_ID + aws_account_id: "123456789012" + aws_partition: aws + id: 00000000-0000-0000-0000-000000000003 + type: account + schema: + $ref: "#/components/schemas/AWSAccountResponse" + description: AWS Account object + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + /api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config: + delete: + description: |- + Delete the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: DeleteAWSAccountCCMConfig + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete AWS CCM config + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Get the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: GetAWSAccountCCMConfig + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + id: 00000000-0000-0000-0000-000000000004 + type: ccm_config + schema: + $ref: "#/components/schemas/AWSCcmConfigResponse" + description: AWS CCM Config object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get AWS CCM config + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: UpdateAWSAccountCCMConfig + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ccm_config: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + type: ccm_config + schema: + $ref: "#/components/schemas/AWSCcmConfigRequest" + description: Update a Cloud Cost Management config for an AWS Account Integration Config. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + id: 00000000-0000-0000-0000-000000000006 + type: ccm_config + schema: + $ref: "#/components/schemas/AWSCcmConfigResponse" + description: AWS CCM Config object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update AWS CCM config + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: CreateAWSAccountCCMConfig + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ccm_config: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + type: ccm_config + schema: + $ref: "#/components/schemas/AWSCcmConfigRequest" + description: Create a Cloud Cost Management config for an AWS Account Integration Config. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + id: 00000000-0000-0000-0000-000000000005 + type: ccm_config + schema: + $ref: "#/components/schemas/AWSCcmConfigResponse" + description: AWS CCM Config object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create AWS CCM config + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/aws/accounts/{aws_account_config_id}/metric_name_filter_preview: + get: + description: |- + Preview which collected CloudWatch metrics would be filtered by the account's saved metric name filters. + operationId: GetAWSMetricNameFilterPreview + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + namespaces: + - filters: + - match_count: 1 + pattern: "aws.ec2.network_in" + metrics: + - cw_name: "NetworkIn" + dd_names: + - filtered: true + name: "aws.ec2.network_in" + namespace: "AWS/EC2" + id: "00000000-0000-0000-0000-000000000001" + type: metric_name_filter_preview + schema: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewResponse" + description: AWS metric name filter preview result + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get AWS metric name filter preview + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Preview which collected CloudWatch metrics would be filtered by the supplied metric name filters. + The filters are not persisted. + operationId: PreviewAWSMetricNameFilter + parameters: + - $ref: "#/components/parameters/AWSAccountConfigIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_name_filters: + - exclude_only: + - "aws.ec2.network_in" + namespace: "AWS/EC2" + type: metric_name_filter_preview + schema: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewRequest" + description: The metric name filters to preview. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + namespaces: + - filters: + - match_count: 1 + pattern: "aws.ec2.network_in" + metrics: + - cw_name: "NetworkIn" + dd_names: + - filtered: true + name: "aws.ec2.network_in" + namespace: "AWS/EC2" + id: "00000000-0000-0000-0000-000000000001" + type: metric_name_filter_preview + schema: + $ref: "#/components/schemas/AWSMetricNameFilterPreviewResponse" + description: AWS metric name filter preview result + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Preview AWS metric name filter + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - aws_configuration_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/aws/available_namespaces: + get: + description: Get a list of available AWS CloudWatch namespaces that can send metrics to Datadog. + operationId: ListAWSNamespaces + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + namespaces: + - AWS/EC2 + id: namespaces + type: namespaces + schema: + $ref: "#/components/schemas/AWSNamespacesResponse" + description: AWS Namespaces List object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List available namespaces + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + /api/v2/integration/aws/event_bridge: + delete: + description: Delete an Amazon EventBridge source. + operationId: DeleteAWSEventBridgeSource + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: "123456789012" + event_generator_name: app-alerts-zyxw3210 + region: us-east-1 + type: event_bridge + schema: + $ref: "#/components/schemas/AWSEventBridgeDeleteRequest" + description: Delete the Amazon EventBridge source with the given name, region, and associated AWS account. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + status: empty + id: delete_event_bridge + type: event_bridge + schema: + $ref: "#/components/schemas/AWSEventBridgeDeleteResponse" + description: Amazon EventBridge source deleted. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an Amazon EventBridge source + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get all Amazon EventBridge sources. + operationId: ListAWSEventBridgeSources + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + accounts: [] + is_installed: true + id: get_event_bridge + type: event_bridge + schema: + $ref: "#/components/schemas/AWSEventBridgeListResponse" + description: Amazon EventBridge sources list. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Amazon EventBridge sources + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create an Amazon EventBridge source. + operationId: CreateAWSEventBridgeSource + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: "123456789012" + create_event_bus: true + event_generator_name: app-alerts + region: us-east-1 + type: event_bridge + schema: + $ref: "#/components/schemas/AWSEventBridgeCreateRequest" + description: Create an Amazon EventBridge source for an AWS account with a given name and region. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + event_source_name: app-alerts-zyxw3210 + has_bus: true + region: us-east-1 + status: created + id: create_event_bridge + type: event_bridge + schema: + $ref: "#/components/schemas/AWSEventBridgeCreateResponse" + description: Amazon EventBridge source created. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an Amazon EventBridge source + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/aws/generate_new_external_id: + post: + description: Generate a new external ID for AWS role-based authentication. + operationId: CreateNewAWSExternalID + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + external_id: abc-123 + id: external_id + type: external_id + schema: + $ref: "#/components/schemas/AWSNewExternalIDResponse" + description: AWS External ID object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Generate a new external ID + tags: + - AWS Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_edit + /api/v2/integration/aws/iam_permissions: + get: + description: Get all AWS IAM permissions required for the AWS integration. + operationId: GetAWSIntegrationIAMPermissions + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + permissions: + - account:GetContactInformation + id: permissions + type: permissions + schema: + $ref: "#/components/schemas/AWSIntegrationIamPermissionsResponse" + description: AWS IAM Permissions object + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get AWS integration IAM permissions + tags: + - AWS Integration + /api/v2/integration/aws/iam_permissions/resource_collection: + get: + description: Get all resource collection AWS IAM permissions required for the AWS integration. + operationId: GetAWSIntegrationIAMPermissionsResourceCollection + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + permissions: + - account:GetContactInformation + id: permissions + type: permissions + schema: + $ref: "#/components/schemas/AWSIntegrationIamPermissionsResponse" + description: AWS integration resource collection IAM permissions. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get resource collection IAM permissions + tags: + - AWS Integration + /api/v2/integration/aws/iam_permissions/standard: + get: + description: Get all standard AWS IAM permissions required for the AWS integration. + operationId: GetAWSIntegrationIAMPermissionsStandard + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + permissions: + - account:GetContactInformation + id: permissions + type: permissions + schema: + $ref: "#/components/schemas/AWSIntegrationIamPermissionsResponse" + description: AWS integration standard IAM permissions. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get AWS integration standard IAM permissions + tags: + - AWS Integration + /api/v2/integration/aws/logs/services: + get: + description: Get a list of AWS services that can send logs to Datadog. + operationId: ListAWSLogsServices + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + logs_services: + - s3 + id: logs_services + type: logs_services + schema: + $ref: "#/components/schemas/AWSLogsServicesResponse" + description: AWS Logs Services List object + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get list of AWS log ready services + tags: + - AWS Logs Integration + "x-permission": + operator: OR + permissions: + - aws_configuration_read + /api/v2/integration/aws/validate_ccm_config: + post: + description: |- + Validate a Cloud Cost Management config for an AWS account using Cost and Usage Report + (CUR) 2.0 against Datadog's ingest requirements without persisting it. + operationId: ValidateAWSCCMConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: "123456789012" + bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + type: ccm_config_validation + schema: + $ref: "#/components/schemas/AWSCcmConfigValidationRequest" + description: Validate a Cloud Cost Management config for an AWS account integration config. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: "123456789012" + issues: + - code: EXPORT_NOT_FOUND + description: 'no CUR 2.0 export named "cost-and-usage-report" found' + id: ccm_config_validation + type: ccm_config_validation + schema: + $ref: "#/components/schemas/AWSCcmConfigValidationResponse" + description: AWS CCM Config validation result + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "503": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Service Unavailable + summary: Validate AWS CCM config + tags: + - AWS Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - cloud_cost_management_read + - cloud_cost_management_write + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/gcp/accounts: + get: + description: List all GCP STS-enabled service accounts configured in your Datadog account. + operationId: ListGCPSTSAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + automute: true + client_email: service-account@test-project.iam.gserviceaccount.com + is_cspm_enabled: true + resource_collection_enabled: true + id: abc-123 + type: gcp_service_account + schema: + $ref: "#/components/schemas/GCPSTSServiceAccountsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all GCP STS-enabled service accounts + tags: + - GCP Integration + "x-permission": + operator: OR + permissions: + - gcp_configuration_read + post: + description: |- + Create a new entry within Datadog for your STS enabled service account. + operationId: CreateGCPSTSAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + client_email: datadog-service-account@test-project.iam.gserviceaccount.com + cloud_run_revision_filters: + - $KEY:$VALUE + host_filters: + - $KEY:$VALUE + is_global_location_enabled: true + is_per_project_quota_enabled: true + is_resource_change_collection_enabled: true + is_security_command_center_enabled: true + metric_namespace_configs: + - disabled: true + id: aiplatform + - filters: + - snapshot.* + - "!*_by_region" + id: pubsub + monitored_resource_configs: + - filters: + - $KEY:$VALUE + type: gce_instance + region_filter_configs: + - nam4 + - europe-north1 + type: gcp_service_account + schema: + $ref: "#/components/schemas/GCPSTSServiceAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + automute: true + client_email: service-account@test-project.iam.gserviceaccount.com + is_cspm_enabled: true + resource_collection_enabled: true + id: abc-123 + type: gcp_service_account + schema: + $ref: "#/components/schemas/GCPSTSServiceAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a new entry for your service account + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configurations_manage + /api/v2/integration/gcp/accounts/{account_id}: + delete: + description: Delete an STS enabled GCP account from within Datadog. + operationId: DeleteGCPSTSAccount + parameters: + - $ref: "#/components/parameters/GCPSTSServiceAccountID" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an STS enabled GCP Account + tags: + - GCP Integration + "x-permission": + operator: OR + permissions: + - gcp_configurations_manage + patch: + description: Update an STS enabled service account. + operationId: UpdateGCPSTSAccount + parameters: + - $ref: "#/components/parameters/GCPSTSServiceAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + client_email: datadog-service-account@test-project.iam.gserviceaccount.com + cloud_run_revision_filters: + - $KEY:$VALUE + host_filters: + - $KEY:$VALUE + is_global_location_enabled: true + is_per_project_quota_enabled: true + is_resource_change_collection_enabled: true + is_security_command_center_enabled: true + metric_namespace_configs: + - disabled: true + id: aiplatform + - filters: + - snapshot.* + - "!*_by_region" + id: pubsub + monitored_resource_configs: + - filters: + - $KEY:$VALUE + type: gce_instance + region_filter_configs: + - nam4 + - europe-north1 + id: d291291f-12c2-22g4-j290-123456678897 + type: gcp_service_account + schema: + $ref: "#/components/schemas/GCPSTSServiceAccountUpdateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + automute: true + client_email: service-account@test-project.iam.gserviceaccount.com + is_cspm_enabled: true + resource_collection_enabled: true + id: abc-123 + type: gcp_service_account + schema: + $ref: "#/components/schemas/GCPSTSServiceAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update STS Service Account + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configuration_edit + /api/v2/integration/gcp/sts_delegate: + get: + description: List your Datadog-GCP STS delegate account configured in your Datadog account. + operationId: GetGCPSTSDelegate + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + delegate_account_email: test@example.com + id: abc-123 + type: gcp_sts_delegate + schema: + $ref: "#/components/schemas/GCPSTSDelegateAccountResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List delegate account + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configuration_read + post: + description: Create a Datadog GCP principal. + operationId: MakeGCPSTSDelegate + requestBody: + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: object + description: Create a delegate service account within Datadog. + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + delegate_account_email: test@example.com + id: abc-123 + type: gcp_sts_delegate + schema: + $ref: "#/components/schemas/GCPSTSDelegateAccountResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Datadog GCP principal + tags: + - GCP Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - gcp_configuration_edit + /api/v2/integration/google-chat/organizations: + get: + description: Get a list of all Google Chat organization bindings in the Datadog Google Chat integration. + operationId: ListGoogleChatOrganizations + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + domain_id: fake-domain-id + domain_name: example.com + id: 00000000-0000-0000-0000-000000000001 + relationships: + delegated_user: + data: + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-delegated-user + type: google-chat-organization + - attributes: + domain_id: fake-domain-id-2 + domain_name: example2.com + id: 00000000-0000-0000-0000-000000000003 + type: google-chat-organization + schema: + $ref: "#/components/schemas/GoogleChatOrganizationsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Google Chat organization bindings + tags: + - Google Chat Integration + /api/v2/integration/google-chat/organizations/app/named-spaces/{domain_name}/{space_display_name}: + get: + description: Get the resource name and organization binding ID of a space in the Datadog Google Chat integration. + operationId: GetSpaceByDisplayName + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationDomainNamePathParameter" + - $ref: "#/components/parameters/GoogleChatOrganizationSpaceDisplayNamePathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: General + organization_binding_id: 00000000-0000-0000-0000-000000000006 + resource_name: spaces/AAAAAAAAA + space_uri: https://chat.google.com/room/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000005 + type: google-chat-app-named-space + schema: + $ref: "#/components/schemas/GoogleChatAppNamedSpaceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get space information by display name + tags: + - Google Chat Integration + /api/v2/integration/google-chat/organizations/{organization_binding_id}: + delete: + description: Delete a Google Chat organization binding from the Datadog Google Chat integration. + operationId: DeleteGoogleChatOrganization + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Google Chat organization binding + tags: + - Google Chat Integration + get: + description: Get a Google Chat organization binding from the Datadog Google Chat integration. + operationId: GetGoogleChatOrganization + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + domain_id: fake-domain-id + domain_name: example.com + id: 00000000-0000-0000-0000-000000000001 + relationships: + delegated_user: + data: + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-delegated-user + type: google-chat-organization + schema: + $ref: "#/components/schemas/GoogleChatOrganizationResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Google Chat organization binding + tags: + - Google Chat Integration + /api/v2/integration/google-chat/organizations/{organization_binding_id}/delegated-user: + delete: + description: Delete the delegated user for a Google Chat organization binding from the Datadog Google Chat integration. + operationId: DeleteGoogleChatDelegatedUser + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete the delegated user + tags: + - Google Chat Integration + get: + description: Get the delegated user for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: GetGoogleChatDelegatedUser + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: fake-display-name + email: user@example.com + features: + - incident-automatic-space-creation + - workflow-space-creation + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-delegated-user + schema: + $ref: "#/components/schemas/GoogleChatDelegatedUserResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the delegated user + tags: + - Google Chat Integration + /api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles: + get: + description: Get a list of all organization handles from the Datadog Google Chat integration. + operationId: ListOrganizationHandles + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000001 + type: google-chat-organization-handle + schema: + $ref: "#/components/schemas/GoogleChatOrganizationHandlesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all organization handles + tags: + - Google Chat Integration + post: + description: Create an organization handle in the Datadog Google Chat integration. + operationId: CreateOrganizationHandle + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + space_resource_name: spaces/AAAAAAAAA + type: google-chat-organization-handle + schema: + $ref: "#/components/schemas/GoogleChatCreateOrganizationHandleRequest" + description: Organization handle payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-organization-handle + schema: + $ref: "#/components/schemas/GoogleChatOrganizationHandleResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create organization handle + tags: + - Google Chat Integration + x-codegen-request-body-name: body + /api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id}: + delete: + description: Delete an organization handle from the Datadog Google Chat integration. + operationId: DeleteOrganizationHandle + parameters: + - description: Your organization binding ID. + in: path + name: organization_binding_id + required: true + schema: + type: string + - description: Your organization handle ID. + in: path + name: handle_id + required: true + schema: + type: string + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete organization handle + tags: + - Google Chat Integration + get: + description: Get an organization handle from the Datadog Google Chat integration. + operationId: GetOrganizationHandle + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + - $ref: "#/components/parameters/GoogleChatHandleIdPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000003 + type: google-chat-organization-handle + schema: + $ref: "#/components/schemas/GoogleChatOrganizationHandleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get organization handle + tags: + - Google Chat Integration + patch: + description: Update an organization handle from the Datadog Google Chat integration. + operationId: UpdateOrganizationHandle + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + - $ref: "#/components/parameters/GoogleChatHandleIdPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + space_resource_name: spaces/AAAAAAAAA + type: google-chat-organization-handle + schema: + $ref: "#/components/schemas/GoogleChatUpdateOrganizationHandleRequest" + description: Organization handle payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-organization-handle + schema: + $ref: "#/components/schemas/GoogleChatOrganizationHandleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update organization handle + tags: + - Google Chat Integration + x-codegen-request-body-name: body + /api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences: + get: + description: Get a list of all target audiences for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: ListGoogleChatTargetAudiences + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience + - attributes: + audience_id: fake-audience-id-2 + audience_name: fake-audience-name-2 + id: 00000000-0000-0000-0000-000000000005 + type: google-chat-target-audience + schema: + $ref: "#/components/schemas/GoogleChatTargetAudiencesResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all target audiences + tags: + - Google Chat Integration + post: + description: Create a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: CreateGoogleChatTargetAudience + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + type: google-chat-target-audience + schema: + $ref: "#/components/schemas/GoogleChatTargetAudienceCreateRequest" + description: Target audience payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience + schema: + $ref: "#/components/schemas/GoogleChatTargetAudienceResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a target audience + tags: + - Google Chat Integration + x-codegen-request-body-name: body + /api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id}: + delete: + description: Delete a target audience from a Google Chat organization binding in the Datadog Google Chat integration. + operationId: DeleteGoogleChatTargetAudience + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + - $ref: "#/components/parameters/GoogleChatTargetAudienceIdPathParameter" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a target audience + tags: + - Google Chat Integration + get: + description: Get a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: GetGoogleChatTargetAudience + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + - $ref: "#/components/parameters/GoogleChatTargetAudienceIdPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience + schema: + $ref: "#/components/schemas/GoogleChatTargetAudienceResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a target audience + tags: + - Google Chat Integration + patch: + description: Update a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: UpdateGoogleChatTargetAudience + parameters: + - $ref: "#/components/parameters/GoogleChatOrganizationBindingIdPathParameter" + - $ref: "#/components/parameters/GoogleChatTargetAudienceIdPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + audience_id: updated-audience-id + audience_name: updated-audience-name + type: google-chat-target-audience + schema: + $ref: "#/components/schemas/GoogleChatTargetAudienceUpdateRequest" + description: Target audience payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + audience_id: updated-audience-id + audience_name: updated-audience-name + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience + schema: + $ref: "#/components/schemas/GoogleChatTargetAudienceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a target audience + tags: + - Google Chat Integration + x-codegen-request-body-name: body + /api/v2/integration/jira/accounts: + get: + description: |- + Get all Jira accounts for the organization. + operationId: ListJiraAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + consumer_key: consumer-key-1 + instance_url: "https://example.atlassian.net" + id: account-1 + type: jira-account + meta: + public_key: "c29tZSBkYXRhIHdpdGggACBhbmQg77u/" + schema: + $ref: "#/components/schemas/JiraAccountsResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Jira accounts + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/jira/accounts/{account_id}: + delete: + description: |- + Delete a Jira account by ID. + operationId: DeleteJiraAccount + parameters: + - description: The ID of the Jira account to delete + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: account_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Jira account + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/jira/issue-templates: + get: + description: |- + Get all Jira issue templates for the organization. + operationId: ListJiraIssueTemplates + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + fields: + description: + payload: "Test Description" + type: json + issue_type_id: "456" + name: Bug Report Template + project_id: "123" + id: "abc-123" + type: jira-issue-template + schema: + $ref: "#/components/schemas/JiraIssueTemplatesResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Jira issue templates + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new Jira issue template. + operationId: CreateJiraIssueTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Test + type: json + issue_type_id: "12730" + jira-account: + id: 80f16d40-1fba-486e-b1fc-983e6ca19bec + name: test-template + project_id: "10772" + type: jira-issue-template + schema: + $ref: "#/components/schemas/JiraIssueTemplateCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Test + type: json + issue_type_id: "456" + name: test-template + project_id: "123" + id: "abc-123" + type: jira-issue-template + schema: + $ref: "#/components/schemas/JiraIssueTemplateResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/jira/issue-templates/{issue_template_id}: + delete: + description: |- + Delete a Jira issue template by ID. + operationId: DeleteJiraIssueTemplate + parameters: + - description: The ID of the Jira issue template to delete + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: issue_template_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Get a Jira issue template by ID. + operationId: GetJiraIssueTemplate + parameters: + - description: The ID of the Jira issue template to retrieve + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: issue_template_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Test Description + type: json + issue_type_id: "456" + name: test-template + project_id: "123" + id: "abc-123" + type: jira-issue-template + schema: + $ref: "#/components/schemas/JiraIssueTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update a Jira issue template by ID. + operationId: UpdateJiraIssueTemplate + parameters: + - description: The ID of the Jira issue template to update + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: issue_template_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Updated Description + type: json + name: test_template_updated + type: jira-issue-template + schema: + $ref: "#/components/schemas/JiraIssueTemplateUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Updated Description + type: json + issue_type_id: "456" + name: test_template_updated + project_id: "123" + id: "abc-123" + type: jira-issue-template + schema: + $ref: "#/components/schemas/JiraIssueTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name}: + get: + description: Get the tenant, team, and channel ID of a channel in the Datadog Microsoft Teams integration. + operationId: GetChannelByName + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsTenantNamePathParameter" + - $ref: "#/components/parameters/MicrosoftTeamsTeamNamePathParameter" + - $ref: "#/components/parameters/MicrosoftTeamsChannelNamePathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + is_primary: true + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: "19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2" + type: ms-teams-channel-info + schema: + $ref: "#/components/schemas/MicrosoftTeamsGetChannelByNameResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get channel information by name + tags: + - Microsoft Teams Integration + /api/v2/integration/ms-teams/configuration/tenant-based-handles: + get: + description: Get a list of all tenant-based handles from the Datadog Microsoft Teams integration. + operationId: ListTenantBasedHandles + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsTenantIDQueryParameter" + - $ref: "#/components/parameters/MicrosoftTeamsHandleNameQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: ms-teams-tenant-based-handle-info + schema: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandlesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all tenant-based handles + tags: + - Microsoft Teams Integration + post: + description: Create a tenant-based handle in the Datadog Microsoft Teams integration. + operationId: CreateTenantBasedHandle + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + type: tenant-based-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsCreateTenantBasedHandleRequest" + description: Tenant-based handle payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000002 + type: tenant-based-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create tenant-based handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id}: + delete: + description: Delete a tenant-based handle from the Datadog Microsoft Teams integration. + operationId: DeleteTenantBasedHandle + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete tenant-based handle + tags: + - Microsoft Teams Integration + get: + description: Get the tenant, team, and channel information of a tenant-based handle from the Datadog Microsoft Teams integration. + operationId: GetTenantBasedHandle + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000003 + type: tenant-based-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get tenant-based handle information + tags: + - Microsoft Teams Integration + patch: + description: Update a tenant-based handle from the Datadog Microsoft Teams integration. + operationId: UpdateTenantBasedHandle + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + type: tenant-based-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequest" + description: Tenant-based handle payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name-updated + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000004 + type: tenant-based-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update tenant-based handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/ms-teams/configuration/user-binding/{tenant_id}: + delete: + description: Delete the user binding for a given tenant from the Datadog Microsoft Teams integration. + operationId: DeleteMSTeamsUserBinding + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsTenantIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete user binding + tags: + - Microsoft Teams Integration + /api/v2/integration/ms-teams/configuration/workflows-webhook-handles: + get: + description: Get a list of all Workflows webhook handles from the Datadog Microsoft Teams integration. + operationId: ListWorkflowsWebhookHandles + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: fake-handle-name + id: 00000000-0000-0000-0000-000000000005 + type: workflows-webhook-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandlesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Workflows webhook handles + tags: + - Microsoft Teams Integration + post: + description: Create a Workflows webhook handle in the Datadog Microsoft Teams integration. + operationId: CreateWorkflowsWebhookHandle + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + url: https://fake.url.com + type: workflows-webhook-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsCreateWorkflowsWebhookHandleRequest" + description: Workflows Webhook handle payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + id: 00000000-0000-0000-0000-000000000006 + type: workflows-webhook-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Workflows webhook handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id}: + delete: + description: Delete a Workflows webhook handle from the Datadog Microsoft Teams integration. + operationId: DeleteWorkflowsWebhookHandle + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Workflows webhook handle + tags: + - Microsoft Teams Integration + get: + description: Get the name of a Workflows webhook handle from the Datadog Microsoft Teams integration. + operationId: GetWorkflowsWebhookHandle + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + id: 00000000-0000-0000-0000-000000000007 + type: workflows-webhook-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Workflows webhook handle information + tags: + - Microsoft Teams Integration + patch: + description: Update a Workflows webhook handle from the Datadog Microsoft Teams integration. + operationId: UpdateWorkflowsWebhookHandle + parameters: + - $ref: "#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + url: https://fake.url.com + type: workflows-webhook-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest" + description: Workflows Webhook handle payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name-updated + id: 00000000-0000-0000-0000-000000000008 + type: workflows-webhook-handle + schema: + $ref: "#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "412": + $ref: "#/components/responses/PreconditionFailedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Workflows webhook handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/oci/products: + get: + description: >- + Lists the products for a given tenancy. Returns the enabled/disabled status of Datadog products (such as Cloud Security Posture Management) for specific OCI tenancies. + operationId: ListTenancyProducts + parameters: + - description: Comma-separated list of product keys to filter by. + in: query + name: productKeys + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + products: + - enabled: true + product_key: CLOUD_SECURITY_POSTURE_MANAGEMENT + id: ocid.tenancy.test + type: oci_tenancy_product + schema: + $ref: "#/components/schemas/TenancyProductsList" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List tenancy products + tags: + - OCI Integration + /api/v2/integration/oci/tenancies: + get: + description: >- + Get a list of all configured OCI tenancy integrations. Returns basic information about each tenancy including authentication credentials, region settings, and collection preferences for metrics, logs, and resources. + operationId: GetTenancyConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: "#/components/schemas/TenancyConfigList" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get tenancy configs + tags: + - OCI Integration + x-unstable: "**Note**: This endpoint may be subject to changes." + post: + description: >- + Create a new tenancy config to establish monitoring and data collection from your OCI environment. Requires OCI authentication credentials and tenancy details. Warning: Datadog recommends interacting with this endpoint only through the Datadog web UI to ensure all necessary OCI resources have been created and configured properly. + operationId: CreateTenancyConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_credentials: + fingerprint: "" + private_key: "" + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: "#/components/schemas/CreateTenancyConfigRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: "#/components/schemas/TenancyConfig" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create tenancy config + tags: + - OCI Integration + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/integration/oci/tenancies/{tenancy_ocid}: + delete: + description: >- + Delete an existing tenancy config. This will stop all data collection from the specified OCI tenancy and remove the stored configuration. This operation cannot be undone. + operationId: DeleteTenancyConfig + parameters: + - description: The OCID of the tenancy config to delete. + in: path + name: tenancy_ocid + required: true + schema: + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete tenancy config + tags: + - OCI Integration + get: + description: >- + Get a single tenancy config object by its OCID. Returns detailed configuration including authentication credentials, enabled services, region settings, and collection preferences. + operationId: GetTenancyConfig + parameters: + - description: The OCID of the tenancy config to retrieve. + in: path + name: tenancy_ocid + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: "#/components/schemas/TenancyConfig" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get tenancy config + tags: + - OCI Integration + patch: + description: >- + Update an existing tenancy config. You can modify authentication credentials, enable/disable collection types, update service filters, and change region settings. Warning: We recommend using the Datadog web UI to avoid unintended update effects. + operationId: UpdateTenancyConfig + parameters: + - description: The OCID of the tenancy config to update. + in: path + name: tenancy_ocid + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_credentials: + fingerprint: "" + private_key: "" + cost_collection_enabled: true + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: "#/components/schemas/UpdateTenancyConfigRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: "#/components/schemas/TenancyConfig" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update tenancy config + tags: + - OCI Integration + /api/v2/integration/opsgenie/accounts: + get: + description: Get a list of all Opsgenie accounts from the Datadog Opsgenie integration. + operationId: ListOpsgenieAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + region: us + id: 00000000-0000-0000-0000-000000000001 + type: opsgenie-account + schema: + $ref: "#/components/schemas/OpsgenieAccountsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Opsgenie accounts + tags: + - Opsgenie Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a new Opsgenie account in the Datadog Opsgenie integration. + operationId: CreateOpsgenieAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + region: us + type: opsgenie-account + schema: + $ref: "#/components/schemas/OpsgenieAccountCreateRequest" + description: Opsgenie account payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + region: us + id: 00000000-0000-0000-0000-000000000002 + type: opsgenie-account + schema: + $ref: "#/components/schemas/OpsgenieAccountResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a new Opsgenie account + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/opsgenie/accounts/{account_id}: + delete: + description: Delete a single Opsgenie account from the Datadog Opsgenie integration. + operationId: DeleteOpsgenieAccount + parameters: + - $ref: "#/components/parameters/OpsgenieAccountIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an Opsgenie account + tags: + - Opsgenie Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + patch: + description: Update a single Opsgenie account in the Datadog Opsgenie integration. + operationId: UpdateOpsgenieAccount + parameters: + - $ref: "#/components/parameters/OpsgenieAccountIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + region: us + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: opsgenie-account + schema: + $ref: "#/components/schemas/OpsgenieAccountUpdateRequest" + description: Opsgenie account payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + region: us + id: 00000000-0000-0000-0000-000000000003 + type: opsgenie-account + schema: + $ref: "#/components/schemas/OpsgenieAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an Opsgenie account + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/opsgenie/services: + get: + description: Get a list of all services from the Datadog Opsgenie integration. + operationId: ListOpsgenieServices + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + custom_url: + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000001 + type: opsgenie-service + schema: + $ref: "#/components/schemas/OpsgenieServicesResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all service objects + tags: + - Opsgenie Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a new service object in the Opsgenie integration. + operationId: CreateOpsgenieService + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + opsgenie_api_key: 00000000-0000-0000-0000-000000000000 + region: us + type: opsgenie-service + schema: + $ref: "#/components/schemas/OpsgenieServiceCreateRequest" + description: Opsgenie service payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000002 + type: opsgenie-service + schema: + $ref: "#/components/schemas/OpsgenieServiceResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a new service object + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/opsgenie/services/{integration_service_id}: + delete: + description: Delete a single service object in the Datadog Opsgenie integration. + operationId: DeleteOpsgenieService + parameters: + - $ref: "#/components/parameters/OpsgenieServiceIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a single service object + tags: + - Opsgenie Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a single service from the Datadog Opsgenie integration. + operationId: GetOpsgenieService + parameters: + - $ref: "#/components/parameters/OpsgenieServiceIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000003 + type: opsgenie-service + schema: + $ref: "#/components/schemas/OpsgenieServiceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a single service object + tags: + - Opsgenie Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update a single service object in the Datadog Opsgenie integration. + operationId: UpdateOpsgenieService + parameters: + - $ref: "#/components/parameters/OpsgenieServiceIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + opsgenie_api_key: 00000000-0000-0000-0000-000000000000 + region: us + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: opsgenie-service + schema: + $ref: "#/components/schemas/OpsgenieServiceUpdateRequest" + description: Opsgenie service payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000004 + type: opsgenie-service + schema: + $ref: "#/components/schemas/OpsgenieServiceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a single service object + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/salesforce-incidents/incident-templates: + get: + description: Get all Salesforce incident templates configured for your organization. + operationId: GetIncidentTemplates + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: An incident was detected by Datadog monitors. + name: production-outage + owner_id: "005000000000000" + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: "Datadog Incident: Production Outage" + id: 00000000-0000-0000-0000-000000000001 + type: salesforce-incidents-incident-template + schema: + $ref: "#/components/schemas/SalesforceIncidentsTemplatesResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Salesforce incident templates + tags: + - Salesforce Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: |- + Create a new Salesforce incident template for your organization. Template + names must be unique within an organization. + operationId: CreateIncidentTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: An incident was detected by Datadog monitors. + name: production-outage + owner_id: "005000000000000" + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: "Datadog Incident: Production Outage" + type: salesforce-incidents-incident-template + schema: + $ref: "#/components/schemas/SalesforceIncidentsTemplateCreateRequest" + description: Salesforce incident template payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: An incident was detected by Datadog monitors. + name: production-outage + owner_id: "005000000000000" + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: "Datadog Incident: Production Outage" + id: 00000000-0000-0000-0000-000000000002 + type: salesforce-incidents-incident-template + schema: + $ref: "#/components/schemas/SalesforceIncidentsTemplateResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Salesforce incident template + tags: + - Salesforce Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/salesforce-incidents/incident-templates/{incident_template_id}: + delete: + description: Delete a single Salesforce incident template from your organization. + operationId: DeleteIncidentTemplate + parameters: + - $ref: "#/components/parameters/SalesforceIncidentsTemplateIDPathParameter" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Salesforce incident template + tags: + - Salesforce Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + patch: + description: Update a single Salesforce incident template in your organization. + operationId: UpdateIncidentTemplate + parameters: + - $ref: "#/components/parameters/SalesforceIncidentsTemplateIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: production-outage-renamed + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: salesforce-incidents-incident-template + schema: + $ref: "#/components/schemas/SalesforceIncidentsTemplateUpdateRequest" + description: Salesforce incident template payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: An incident was detected by Datadog monitors. + name: production-outage-renamed + owner_id: "005000000000000" + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: "Datadog Incident: Production Outage" + id: 00000000-0000-0000-0000-000000000003 + type: salesforce-incidents-incident-template + schema: + $ref: "#/components/schemas/SalesforceIncidentsTemplateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Salesforce incident template + tags: + - Salesforce Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/salesforce-incidents/organizations: + get: + description: |- + Get all Salesforce organizations connected to your Datadog organization + through the Salesforce integration. Salesforce organizations are connected + through the OAuth setup flow in the Datadog Salesforce integration page. + operationId: GetSalesforceOrganizations + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + instance_url: "https://acme.my.salesforce.com" + name: "Acme Production Org" + sfdc_org_id: "00D000000000000" + sfdc_org_type: "Production" + id: 00000000-0000-0000-0000-000000000001 + type: salesforce-incidents-org + schema: + $ref: "#/components/schemas/SalesforceIncidentsOrganizationsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all connected Salesforce organizations + tags: + - Salesforce Integration + "x-permission": + operator: OR + permissions: + - integrations_read + /api/v2/integration/salesforce-incidents/organizations/{salesforce_org_id}: + delete: + description: |- + Disconnect a Salesforce organization from your Datadog organization. + This also deletes any incident templates referencing the organization. + operationId: DeleteSalesforceOrganization + parameters: + - $ref: "#/components/parameters/SalesforceIncidentsOrganizationIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a connected Salesforce organization + tags: + - Salesforce Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/servicenow/assignment_groups/{instance_id}: + get: + description: |- + Get all assignment groups for a ServiceNow instance. + operationId: ListServiceNowAssignmentGroups + parameters: + - description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: instance_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignment_group_name: Network Team + assignment_group_sys_id: abc-123 + instance_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: assignment_groups + schema: + $ref: "#/components/schemas/ServiceNowAssignmentGroupsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ServiceNow assignment groups + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/business_services/{instance_id}: + get: + description: |- + Get all business services for a ServiceNow instance. + operationId: ListServiceNowBusinessServices + parameters: + - description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: instance_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + instance_id: 00000000-0000-0000-0000-000000000001 + service_name: IT Support + service_sys_id: abc-123 + id: 00000000-0000-0000-0000-000000000001 + type: business_services + schema: + $ref: "#/components/schemas/ServiceNowBusinessServicesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ServiceNow business services + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/handles: + get: + description: |- + Get all ServiceNow templates for the organization. + operationId: ListServiceNowTemplates + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle_name: incident-template + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: "#/components/schemas/ServiceNowTemplatesResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ServiceNow templates + tags: + - ServiceNow Integration + post: + description: |- + Create a new ServiceNow template. + operationId: CreateServiceNowTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group_id: 65b3341b-0680-47f9-a6d4-134db45c603e + business_service_id: 65b3341b-0680-47f9-a6d4-134db45c603e + fields_mapping: + category: software + priority: "1" + handle_name: incident-template + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + servicenow_tablename: incident + user_id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: servicenow_templates + schema: + $ref: "#/components/schemas/ServiceNowTemplateCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + handle_name: incident-template + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: "#/components/schemas/ServiceNowTemplateResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create ServiceNow template + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/handles/{template_id}: + delete: + description: |- + Delete a ServiceNow template by ID. + operationId: DeleteServiceNowTemplate + parameters: + - description: The ID of the ServiceNow template to delete + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete ServiceNow template + tags: + - ServiceNow Integration + get: + description: |- + Get a ServiceNow template by ID. + operationId: GetServiceNowTemplate + parameters: + - description: The ID of the ServiceNow template to retrieve + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + handle_name: incident-template + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: "#/components/schemas/ServiceNowTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get ServiceNow template + tags: + - ServiceNow Integration + put: + description: |- + Update a ServiceNow template by ID. + operationId: UpdateServiceNowTemplate + parameters: + - description: The ID of the ServiceNow template to update + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: template_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group_id: 65b3341b-0680-47f9-a6d4-134db45c603e + business_service_id: 65b3341b-0680-47f9-a6d4-134db45c603e + fields_mapping: + category: hardware + priority: "2" + handle_name: incident-template-updated + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + servicenow_tablename: incident + user_id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: servicenow_templates + schema: + $ref: "#/components/schemas/ServiceNowTemplateUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + handle_name: incident-template-updated + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: "#/components/schemas/ServiceNowTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update ServiceNow template + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/instances: + get: + description: |- + Get all ServiceNow instances for the organization. + operationId: ListServiceNowInstances + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + instance_name: my-servicenow-instance + id: 00000000-0000-0000-0000-000000000001 + type: instance + schema: + $ref: "#/components/schemas/ServiceNowInstancesResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ServiceNow instances + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/users/{instance_id}: + get: + description: |- + Get all users for a ServiceNow instance. + operationId: ListServiceNowUsers + parameters: + - description: The ID of the ServiceNow instance + example: "65b3341b-0680-47f9-a6d4-134db45c603e" + in: path + name: instance_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + full_name: Example Name + instance_id: 00000000-0000-0000-0000-000000000001 + user_name: example-handle + user_sys_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: users + schema: + $ref: "#/components/schemas/ServiceNowUsersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List ServiceNow users + tags: + - ServiceNow Integration + /api/v2/integration/slack/user-bindings: + get: + description: List all Slack user bindings for a given Datadog user from the Datadog Slack integration. + operationId: ListSlackUserBindings + parameters: + - $ref: "#/components/parameters/SlackUserUuidQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: T01234567 + type: team_id + - id: T09876543 + type: team_id + schema: + $ref: "#/components/schemas/SlackUserBindingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Slack user bindings + tags: + - Slack Integration + /api/v2/integration/statuspage/account: + delete: + description: Delete the Statuspage account configured for your organization. + operationId: DeleteStatuspageAccount + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete the Statuspage account + tags: + - Statuspage Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get the Statuspage account configured for your organization. + operationId: GetStatuspageAccount + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: "*****" + type: statuspage-account + schema: + $ref: "#/components/schemas/StatuspageAccountResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the Statuspage account + tags: + - Statuspage Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update the Statuspage account configured for your organization. + operationId: UpdateStatuspageAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + type: statuspage-account + schema: + $ref: "#/components/schemas/StatuspageAccountUpdateRequest" + description: Statuspage account payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: "*****" + type: statuspage-account + schema: + $ref: "#/components/schemas/StatuspageAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update the Statuspage account + tags: + - Statuspage Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + post: + description: |- + Create a Statuspage account for your organization. Only one Statuspage + account can be configured per organization. + operationId: CreateStatuspageAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + type: statuspage-account + schema: + $ref: "#/components/schemas/StatuspageAccountCreateRequest" + description: Statuspage account payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: "*****" + type: statuspage-account + schema: + $ref: "#/components/schemas/StatuspageAccountResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create the Statuspage account + tags: + - Statuspage Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/statuspage/url_settings: + get: + description: Get all Statuspage URL settings configured for your organization. + operationId: ListStatuspageUrlSettings + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + custom_tags: "team:collaboration-integrations" + url: "https://example.statuspage.io" + id: 00000000-0000-0000-0000-000000000001 + type: statuspage-url-setting + schema: + $ref: "#/components/schemas/StatuspageUrlSettingsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Statuspage URL settings + tags: + - Statuspage Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a Statuspage URL setting for your organization. + operationId: CreateStatuspageUrlSetting + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: "team:collaboration-integrations" + url: "https://example.statuspage.io" + type: statuspage-url-setting + schema: + $ref: "#/components/schemas/StatuspageUrlSettingCreateRequest" + description: Statuspage URL setting payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: "team:collaboration-integrations" + url: "https://example.statuspage.io" + id: 00000000-0000-0000-0000-000000000002 + type: statuspage-url-setting + schema: + $ref: "#/components/schemas/StatuspageUrlSettingResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Statuspage URL setting + tags: + - Statuspage Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/statuspage/url_settings/{statuspage_url_setting_id}: + delete: + description: Delete a single Statuspage URL setting from your organization. + operationId: DeleteStatuspageUrlSetting + parameters: + - $ref: "#/components/parameters/StatuspageUrlSettingIDPathParameter" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Statuspage URL setting + tags: + - Statuspage Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + patch: + description: Update a single Statuspage URL setting in your organization. + operationId: UpdateStatuspageUrlSetting + parameters: + - $ref: "#/components/parameters/StatuspageUrlSettingIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: "team:collaboration-integrations" + url: "https://example.statuspage.io" + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: statuspage-url-setting + schema: + $ref: "#/components/schemas/StatuspageUrlSettingUpdateRequest" + description: Statuspage URL setting payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: "team:collaboration-integrations" + url: "https://example.statuspage.io" + id: 00000000-0000-0000-0000-000000000003 + type: statuspage-url-setting + schema: + $ref: "#/components/schemas/StatuspageUrlSettingResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Statuspage URL setting + tags: + - Statuspage Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/webhooks/configuration/auth-method: + get: + description: |- + Get a list of all auth methods configured for the Webhooks integration in + your organization. + operationId: GetAllAuthMethods + parameters: + - $ref: "#/components/parameters/WebhooksAuthMethodInclude" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + protocol: oauth2-client-credentials + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2-client-credentials: + data: + id: 00000000-0000-0000-0000-000000000001 + type: webhooks-auth-method-oauth2-client-credentials + type: webhooks-auth-method + schema: + $ref: "#/components/schemas/WebhooksAuthMethodsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all auth methods + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - integrations_read + /api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials: + post: + description: |- + Create a new OAuth2 client credentials auth method for the Webhooks + integration. The `client_secret` is stored securely and never returned. + operationId: CreateOAuth2ClientCredentials + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + client_secret: my-client-secret + name: my-oauth2-auth + scope: read:webhooks write:webhooks + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsCreateRequest" + description: OAuth2 client credentials payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + name: my-oauth2-auth + protocol: oauth2-client-credentials + scope: read:webhooks write:webhooks + id: 00000000-0000-0000-0000-000000000002 + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an OAuth2 client credentials auth method + tags: + - Webhooks Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id}: + delete: + description: Delete an OAuth2 client credentials auth method by ID. + operationId: DeleteOAuth2ClientCredentials + parameters: + - $ref: "#/components/parameters/WebhooksAuthMethodIDPathParameter" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an OAuth2 client credentials auth method + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a single OAuth2 client credentials auth method by ID. + operationId: GetOAuth2ClientCredentials + parameters: + - $ref: "#/components/parameters/WebhooksAuthMethodIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + name: my-oauth2-auth + protocol: oauth2-client-credentials + scope: read:webhooks write:webhooks + id: 00000000-0000-0000-0000-000000000003 + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an OAuth2 client credentials auth method + tags: + - Webhooks Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update an existing OAuth2 client credentials auth method. + operationId: UpdateOAuth2ClientCredentials + parameters: + - $ref: "#/components/parameters/WebhooksAuthMethodIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-oauth2-auth-renamed + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsUpdateRequest" + description: OAuth2 client credentials payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + name: my-oauth2-auth-renamed + protocol: oauth2-client-credentials + scope: read:webhooks write:webhooks + id: 00000000-0000-0000-0000-000000000004 + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: "#/components/schemas/WebhooksOAuth2ClientCredentialsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an OAuth2 client credentials auth method + tags: + - Webhooks Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations: + get: + operationId: ListIntegrations + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + categories: + - Category::Kubernetes + description: Calico is a networking and network security solution for containers. + installed: true + title: calico + id: calico + type: integration + schema: + $ref: "#/components/schemas/ListIntegrationsResponse" + description: Successful Response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Integrations + tags: + - Integrations + /api/v2/integrations/cloudflare/accounts: + get: + description: List Cloudflare accounts. + operationId: ListCloudflareAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + id: abc-123 + type: cloudflare-accounts + schema: + $ref: "#/components/schemas/CloudflareAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Cloudflare accounts + tags: + - Cloudflare Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a Cloudflare account. + operationId: CreateCloudflareAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: EXAMPLE_API_KEY_abc123 + email: test-email@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + type: cloudflare-accounts + schema: + $ref: "#/components/schemas/CloudflareAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + name: test-name + id: abc-123 + type: cloudflare-accounts + schema: + $ref: "#/components/schemas/CloudflareAccountResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add Cloudflare account + tags: + - Cloudflare Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/cloudflare/accounts/{account_id}: + delete: + description: Delete a Cloudflare account. + operationId: DeleteCloudflareAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Cloudflare account + tags: + - Cloudflare Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a Cloudflare account. + operationId: GetCloudflareAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + id: abc-123 + type: cloudflare-accounts + schema: + $ref: "#/components/schemas/CloudflareAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Cloudflare account + tags: + - Cloudflare Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update a Cloudflare account. + operationId: UpdateCloudflareAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: EXAMPLE_API_KEY_abc123 + email: test-email@example.com + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + type: cloudflare-accounts + schema: + $ref: "#/components/schemas/CloudflareAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + id: abc-123 + type: cloudflare-accounts + schema: + $ref: "#/components/schemas/CloudflareAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Cloudflare account + tags: + - Cloudflare Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts: + get: + description: List Confluent accounts. + operationId: ListConfluentAccount + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: "#/components/schemas/ConfluentAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Confluent accounts + tags: + - Confluent Cloud + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a Confluent account. + operationId: CreateConfluentAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: TESTAPIKEY123 + api_secret: test-api-secret-123 + resources: + - enable_custom_metrics: false + id: resource-id-123 + resource_type: kafka + tags: + - myTag + - myTag2:myValue + tags: + - myTag + - myTag2:myValue + type: confluent-cloud-accounts + schema: + $ref: "#/components/schemas/ConfluentAccountCreateRequest" + description: Confluent payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: "#/components/schemas/ConfluentAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts/{account_id}: + delete: + description: Delete a Confluent account with the provided account ID. + operationId: DeleteConfluentAccount + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Confluent account + tags: + - Confluent Cloud + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get the Confluent account with the provided account ID. + operationId: GetConfluentAccount + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: "#/components/schemas/ConfluentAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Confluent account + tags: + - Confluent Cloud + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update the Confluent account with the provided account ID. + operationId: UpdateConfluentAccount + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: TESTAPIKEY123 + api_secret: test-api-secret-123 + tags: + - myTag + - myTag2:myValue + type: confluent-cloud-accounts + schema: + $ref: "#/components/schemas/ConfluentAccountUpdateRequest" + description: Confluent payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: "#/components/schemas/ConfluentAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources: + get: + description: Get a Confluent resource for the account associated with the provided ID. + operationId: ListConfluentResource + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: "#/components/schemas/ConfluentResourcesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Confluent Account resources + tags: + - Confluent Cloud + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a Confluent resource for the account associated with the provided ID. + operationId: CreateConfluentResource + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + - myTag2:myValue + id: resource-id-123 + type: confluent-cloud-resources + schema: + $ref: "#/components/schemas/ConfluentResourceRequest" + description: Confluent payload + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: "#/components/schemas/ConfluentResourceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add resource to Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id}: + delete: + description: Delete a Confluent resource with the provided resource id for the account associated with the provided account ID. + operationId: DeleteConfluentResource + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + - $ref: "#/components/parameters/ConfluentResourceID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete resource from Confluent account + tags: + - Confluent Cloud + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a Confluent resource with the provided resource id for the account associated with the provided account ID. + operationId: GetConfluentResource + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + - $ref: "#/components/parameters/ConfluentResourceID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: "#/components/schemas/ConfluentResourceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get resource from Confluent account + tags: + - Confluent Cloud + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update a Confluent resource with the provided resource id for the account associated with the provided account ID. + operationId: UpdateConfluentResource + parameters: + - $ref: "#/components/parameters/ConfluentAccountID" + - $ref: "#/components/parameters/ConfluentResourceID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + - myTag2:myValue + id: resource-id-123 + type: confluent-cloud-resources + schema: + $ref: "#/components/schemas/ConfluentResourceRequest" + description: Confluent payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: "#/components/schemas/ConfluentResourceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update resource in Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts: + get: + description: List Fastly accounts. + operationId: ListFastlyAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: "#/components/schemas/FastlyAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Fastly accounts + tags: + - Fastly Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a Fastly account. + operationId: CreateFastlyAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: ABCDEFG123 + name: test-name + services: + - id: 6abc7de6893AbcDe9fghIj + tags: + - myTag + - myTag2:myValue + type: fastly-accounts + schema: + $ref: "#/components/schemas/FastlyAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: "#/components/schemas/FastlyAccountResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add Fastly account + tags: + - Fastly Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts/{account_id}: + delete: + description: Delete a Fastly account. + operationId: DeleteFastlyAccount + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Fastly account + tags: + - Fastly Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a Fastly account. + operationId: GetFastlyAccount + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: "#/components/schemas/FastlyAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Fastly account + tags: + - Fastly Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update a Fastly account. + operationId: UpdateFastlyAccount + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: ABCDEFG123 + type: fastly-accounts + schema: + $ref: "#/components/schemas/FastlyAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: "#/components/schemas/FastlyAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Fastly account + tags: + - Fastly Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts/{account_id}/services: + get: + description: List Fastly services for an account. + operationId: ListFastlyServices + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: "#/components/schemas/FastlyServicesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Fastly services + tags: + - Fastly Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create a Fastly service for an account. + operationId: CreateFastlyService + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + - myTag2:myValue + id: abc123 + type: fastly-services + schema: + $ref: "#/components/schemas/FastlyServiceRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: "#/components/schemas/FastlyServiceResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add Fastly service + tags: + - Fastly Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts/{account_id}/services/{service_id}: + delete: + description: Delete a Fastly service for an account. + operationId: DeleteFastlyService + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + - $ref: "#/components/parameters/FastlyServiceID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Fastly service + tags: + - Fastly Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get a Fastly service for an account. + operationId: GetFastlyService + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + - $ref: "#/components/parameters/FastlyServiceID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: "#/components/schemas/FastlyServiceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Fastly service + tags: + - Fastly Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update a Fastly service for an account. + operationId: UpdateFastlyService + parameters: + - $ref: "#/components/parameters/FastlyAccountID" + - $ref: "#/components/parameters/FastlyServiceID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + - myTag2:myValue + id: abc123 + type: fastly-services + schema: + $ref: "#/components/schemas/FastlyServiceRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: "#/components/schemas/FastlyServiceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Fastly service + tags: + - Fastly Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/okta/accounts: + get: + description: List Okta accounts. + operationId: ListOktaAccounts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + auth_method: oauth + domain: "https://example.okta.com/" + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000001 + type: okta-accounts + schema: + $ref: "#/components/schemas/OktaAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Okta accounts + tags: + - Okta Integration + "x-permission": + operator: OR + permissions: + - integrations_read + post: + description: Create an Okta account. + operationId: CreateOktaAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + client_id: client_id + client_secret: client_secret + domain: https://example.okta.com/ + name: Okta-Prod + id: f749daaf-682e-4208-a38d-c9b43162c609 + type: okta-accounts + schema: + $ref: "#/components/schemas/OktaAccountRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: "https://example.okta.com/" + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000002 + type: okta-accounts + schema: + $ref: "#/components/schemas/OktaAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add Okta account + tags: + - Okta Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/okta/accounts/{account_id}: + delete: + description: Delete an Okta account. + operationId: DeleteOktaAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Okta account + tags: + - Okta Integration + "x-permission": + operator: OR + permissions: + - manage_integrations + get: + description: Get an Okta account. + operationId: GetOktaAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: "https://example.okta.com/" + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000003 + type: okta-accounts + schema: + $ref: "#/components/schemas/OktaAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Okta account + tags: + - Okta Integration + "x-permission": + operator: OR + permissions: + - integrations_read + patch: + description: Update an Okta account. + operationId: UpdateOktaAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: https://example.okta.com/ + type: okta-accounts + schema: + $ref: "#/components/schemas/OktaAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: "https://example.okta.com/" + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000004 + type: okta-accounts + schema: + $ref: "#/components/schemas/OktaAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Okta account + tags: + - Okta Integration + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + /api/v2/ip_allowlist: + get: + description: Returns the IP allowlist and its enabled or disabled state. + operationId: GetIPAllowlist + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + entries: + - data: + attributes: + cidr_block: "127.0.0.1/32" + note: "Example entry" + id: 00000000-0000-0000-0000-000000000003 + type: ip_allowlist_entry + id: 00000000-0000-0000-0000-000000000001 + type: ip_allowlist + schema: + $ref: "#/components/schemas/IPAllowlistResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Get IP Allowlist + tags: + - IP Allowlist + "x-permission": + operator: OR + permissions: + - org_management + patch: + description: Edit the entries in the IP allowlist, and enable or disable it. + operationId: UpdateIPAllowlist + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + entries: + - data: + attributes: + cidr_block: 127.0.0.1/32 + type: ip_allowlist_entry + type: ip_allowlist + schema: + $ref: "#/components/schemas/IPAllowlistUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + entries: + - data: + attributes: + cidr_block: "127.0.0.1/32" + note: "Example entry" + id: 00000000-0000-0000-0000-000000000004 + type: ip_allowlist_entry + id: 00000000-0000-0000-0000-000000000002 + type: ip_allowlist + schema: + $ref: "#/components/schemas/IPAllowlistResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update IP Allowlist + tags: + - IP Allowlist + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/llm-obs/v1/annotated-interactions: + get: + description: |- + Returns annotated interactions across all annotation queues for the given content IDs. + Results include queue metadata (ID and name) for each interaction. + operationId: GetLLMObsAnnotatedInteractionsByTraceIDs + parameters: + - description: One or more content IDs to retrieve annotated interactions for. At least one is required. + in: query + name: contentIds + required: true + schema: + items: + type: string + type: array + - description: Pagination offset. Must be >= 0. Defaults to 0. + in: query + name: offset + schema: + default: 0 + format: int32 + maximum: 2147483647 + minimum: 0 + type: integer + - description: Maximum number of results to return. Must be > 0. Defaults to 100. + in: query + name: limit + schema: + default: 100 + format: int32 + maximum: 2147483647 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotated_interactions: + - annotations: + - created_at: "0001-01-01T00:00:00Z" + created_by: "00000000-0000-0000-0000-000000000002" + id: annotation-789 + interaction_id: interaction-456 + label_values: + - label_schema_id: abc-123 + value: good + modified_at: "0001-01-01T00:00:00Z" + modified_by: "00000000-0000-0000-0000-000000000002" + content_id: trace-abc-123 + created_at: "2025-06-01T12:00:00Z" + id: interaction-456 + modified_at: "2025-06-01T12:00:00Z" + queue_id: queue-uuid-001 + queue_name: My Annotation Queue + type: trace + total_count: 1 + id: trace-query + type: annotated_interactions_by_trace + schema: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsByTraceResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotated interactions by content IDs + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues: + get: + description: |- + List annotation queues. Optionally filter by project ID or queue IDs. These parameters are mutually exclusive. + If neither is provided, all queues in the organization are returned. + operationId: ListLLMObsAnnotationQueues + parameters: + - description: Filter annotation queues by project ID. Cannot be used together with `queueIds`. + in: query + name: projectId + schema: + type: string + - description: >- + Filter annotation queues by queue IDs (comma-separated). Cannot be used together with `projectId`. + in: query + name: queueIds + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-15T10:30:00Z" + created_by: 00000000-0000-0000-0000-000000000002 + description: Queue for annotating customer support traces + modified_at: "2024-01-15T10:30:00Z" + modified_by: 00000000-0000-0000-0000-000000000002 + name: My annotation queue + owned_by: 00000000-0000-0000-0000-000000000002 + project_id: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueuesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability annotation queues + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create an annotation queue. The `name` and `project_id` fields are required. + An optional `annotation_schema` can be provided to define the labels for the queue. + Fields such as `created_by`, `owned_by`, `created_at`, `modified_by`, + and `modified_at` are inferred by the backend. + operationId: CreateLLMObsAnnotationQueue + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Queue for annotating customer support traces + name: My annotation queue + project_id: 00000000-0000-0000-0000-000000000002 + type: queues + with_schema: + summary: Create queue with annotation schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: true + max: 5.0 + min: 0.0 + name: quality + type: score + - name: sentiment + type: categorical + values: + - positive + - negative + - neutral + description: Queue for annotating customer support traces + name: My annotation queue + project_id: 00000000-0000-0000-0000-000000000002 + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueRequest" + description: Create annotation queue payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + created_by: 00000000-0000-0000-0000-000000000002 + description: Queue for annotating customer support traces + modified_at: "2024-01-15T10:30:00Z" + modified_by: 00000000-0000-0000-0000-000000000002 + name: My annotation queue + owned_by: 00000000-0000-0000-0000-000000000002 + project_id: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability annotation queue + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}: + delete: + description: Delete an annotation queue by its ID. + operationId: DeleteLLMObsAnnotationQueue + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + responses: + "204": + description: No Content + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an Agent Observability annotation queue + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Partially update an annotation queue. The `name`, `description`, and `annotation_schema` fields can be updated. + operationId: UpdateLLMObsAnnotationQueue + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Updated description + name: Updated queue name + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueUpdateRequest" + description: Update annotation queue payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + created_by: 00000000-0000-0000-0000-000000000002 + description: Queue for annotating customer support traces + modified_at: "2024-01-15T10:30:00Z" + modified_by: 00000000-0000-0000-0000-000000000002 + name: My annotation queue + owned_by: 00000000-0000-0000-0000-000000000002 + project_id: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability annotation queue + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotated-interactions: + get: + description: Retrieve all interactions (traces and sessions) and their annotations for a given annotation queue. + operationId: GetLLMObsAnnotatedInteractions + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotated_interactions: + - annotations: [] + content_id: trace-abc-123 + id: interaction-456 + type: trace + id: 00000000-0000-0000-0000-000000000001 + type: annotated_interactions + schema: + $ref: "#/components/schemas/LLMObsAnnotatedInteractionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotated queue interactions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations: + post: + description: |- + Create or update annotations on interactions in a queue. Each annotation is matched + by `interaction_id` and the requesting user's identity. + Results and errors in the response are linked to request items by `interaction_id`. + Errors for individual items are returned in the `errors` field without blocking the rest of the batch. + operationId: UpsertLLMObsAnnotations + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + annotations: + - interaction_id: 00000000-0000-0000-0000-000000000001 + label_values: + - label_schema_id: abc-123 + value: good + - label_schema_id: ef56gh78 + value: positive + type: annotations + schema: + $ref: "#/components/schemas/LLMObsAnnotationsRequest" + description: Payload for creating or updating annotations. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotations: + - created_at: "2024-01-15T10:30:00Z" + created_by: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000000 + interaction_id: 00000000-0000-0000-0000-000000000001 + label_values: + - label_schema_id: abc-123 + value: good + modified_at: "2024-01-15T10:30:00Z" + modified_by: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: annotations + schema: + $ref: "#/components/schemas/LLMObsAnnotationsResponse" + description: OK — annotations created or updated. Per-item errors are listed in `errors`. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found — the queue does not exist. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update annotations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations/delete: + post: + description: Delete one or more annotations from an annotation queue. + operationId: DeleteLLMObsAnnotations + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_ids: + - 00000000-0000-0000-0000-000000000000 + type: annotations + schema: + $ref: "#/components/schemas/LLMObsDeleteAnnotationsRequest" + description: Delete annotations payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_ids: + - 00000000-0000-0000-0000-000000000000 + errors: [] + id: 00000000-0000-0000-0000-000000000001 + type: annotations + partial_failure: + summary: Some annotation IDs were not found + value: + data: + attributes: + annotation_ids: + - 00000000-0000-0000-0000-000000000000 + errors: + - annotation_id: 00000000-0000-0000-0000-000000000001 + error: annotation not found + id: 00000000-0000-0000-0000-000000000001 + type: annotations + schema: + $ref: "#/components/schemas/LLMObsDeleteAnnotationsResponse" + description: >- + OK — annotations deleted. Errors for annotations that could not be deleted are listed in `errors`. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found — the queue does not exist. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete annotations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions: + post: + description: |- + Add one or more interactions to an annotation queue. At least one + interaction must be provided. Each interaction has a `type`: + + - `trace`, `experiment_trace`, `session`: `content_id` references the + upstream entity; the server fetches the actual content. + - `display_block`: omit `content_id` and provide the rendered content + in `display_block`. The server generates `content_id` as a + deterministic hash of the block list. + + Items of different types can be mixed in a single request. + operationId: CreateLLMObsAnnotationQueueInteractions + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + interactions: + - content_id: trace-abc-123 + type: trace + type: interactions + display_block: + summary: Add a display_block interaction + value: + data: + attributes: + interactions: + - display_block: + - content: "## Triage Instructions" + type: markdown + - content: "Inputs" + level: md + type: header + - content: + experiment_id: abc-123 + label: "Experiments" + type: json + type: display_block + type: interactions + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsRequest" + description: Add interactions payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + interactions: + - already_existed: false + content_id: trace-abc-123 + id: 00000000-0000-0000-0000-000000000000 + type: trace + id: 00000000-0000-0000-0000-000000000001 + type: interactions + display_block: + summary: display_block response + value: + data: + attributes: + interactions: + - already_existed: false + content_id: 9a87f3e2b1d4c5a6f8b3e2d1c4a7b5f6e3d2a1c4b7e5f8a3d6c2e1b4a7d5f8c2 + display_block: + - content: "## Triage Instructions" + type: markdown + id: 00000000-0000-0000-0000-000000000000 + type: display_block + id: 00000000-0000-0000-0000-000000000001 + type: interactions + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueInteractionsResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Add annotation queue interactions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions/delete: + post: + description: Delete one or more interactions from an annotation queue. + operationId: DeleteLLMObsAnnotationQueueInteractions + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + interaction_ids: + - 00000000-0000-0000-0000-000000000000 + - 00000000-0000-0000-0000-000000000001 + type: interactions + schema: + $ref: "#/components/schemas/LLMObsDeleteAnnotationQueueInteractionsRequest" + description: Delete interactions payload. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete annotation queue interactions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/label-schema: + get: + description: Retrieve the label schema for a given annotation queue. + operationId: GetLLMObsAnnotationQueueLabelSchema + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_schema: + label_schemas: + - id: "abc-123" + is_required: true + max: 5.0 + min: 0.0 + name: quality + type: score + - id: "ef56gh78" + name: sentiment + type: categorical + values: + - positive + - negative + - neutral + id: "00000000-0000-0000-0000-000000000001" + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotation queue label schema + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Create or replace the label schema for a given annotation queue. + The label schema defines the labels annotators can apply to interactions in the queue. + Label names must be unique within the queue and match the pattern `^[a-zA-Z0-9_-]+$`. + Each label must have a valid type: score, categorical, boolean, or text. + operationId: UpdateLLMObsAnnotationQueueLabelSchema + parameters: + - $ref: "#/components/parameters/LLMObsAnnotationQueueIDPathParameter" + requestBody: + content: + application/json: + examples: + boolean_label: + summary: Boolean label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - has_assessment: true + is_assessment: true + is_required: true + name: is_correct + type: boolean + type: queues + categorical_label: + summary: Categorical label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: true + name: sentiment + type: categorical + values: + - positive + - negative + - neutral + type: queues + default: + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: true + max: 5.0 + min: 0.0 + name: quality + type: score + type: queues + score_label: + summary: Score label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - has_reasoning: true + is_required: true + max: 5.0 + min: 0.0 + name: quality + type: score + type: queues + text_label: + summary: Text label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: false + name: feedback + type: text + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaUpdateRequest" + description: Update label schema payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_schema: + label_schemas: + - id: abc-123 + is_required: true + max: 5.0 + min: 0.0 + name: quality + type: score + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: "#/components/schemas/LLMObsAnnotationQueueLabelSchemaResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update annotation queue label schema + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experimentation/analytics: + post: + description: |- + Execute an analytics aggregation over Agent Observability experimentation data. + Use this endpoint to compute metrics (for example average eval scores) grouped by fields such as `span_id` or `experiment_id`. + + At least one `compute` definition and one `index` must be provided. + operationId: AggregateLLMObsExperimentation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + aggregate: + compute: + - metric: score_value + name: avg_faithfulness + group_by: + - field: span_id + indexes: + - experiment-evals + search: + query: "@experiment_id:3fd6b5e0-8910-4b1c-a7d0-5b84de329012 @label:faithfulness" + type: experimentation + schema: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsRequest" + description: Analytics payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + hit_count: 42 + result: + values: + - by: + span_id: span-7a1b2c3d + metrics: + avg_faithfulness: 0.87 + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + schema: + $ref: "#/components/schemas/LLMObsExperimentationAnalyticsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Aggregate Agent Observability experimentation + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experimentation/search: + post: + description: |- + Search across Agent Observability experimentation entities — projects, datasets, dataset records, experiments, and experiment runs — using cursor-based pagination. + + The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided. + + Returns `200 OK` when all results fit in a single page. Returns `206 Partial Content` with a cursor in `meta.after` when additional pages are available. + operationId: SearchLLMObsExperimentation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: "@project_id:a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + scope: + - experiments + page: + limit: 50 + type: experimentation + schema: + $ref: "#/components/schemas/LLMObsExperimentationSearchRequest" + description: Experimentation search payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + experiments: + - created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + description: "" + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + meta: + after: + schema: + $ref: "#/components/schemas/LLMObsExperimentationSearchResponse" + description: OK — all results returned in a single page. + "206": + content: + application/json: + examples: + default: + value: + data: + attributes: + experiments: + - created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + description: "" + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + meta: + after: eyJpZCI6ImFiYzEyMyJ9 + schema: + $ref: "#/components/schemas/LLMObsExperimentationSearchResponse" + description: Partial Content — more results are available. Use `meta.after` as the next `page.cursor`. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Search Agent Observability experimentation + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experimentation/simple-search: + post: + description: |- + Search across Agent Observability experimentation entities using offset-based (page-number) pagination. + Use this endpoint when you need total page count or want to navigate to a specific page number. + + The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided. + operationId: SimpleSearchLLMObsExperimentation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: "@project_id:a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + scope: + - experiments + page: + limit: 50 + number: 1 + sort: + - direction: desc + field: created_at + type: experimentation + schema: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchRequest" + description: Simple search payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + experiments: + - created_at: "2024-01-01T00:00:00+00:00" + description: "" + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + meta: + page: + current: 1 + limit: 50 + total_count: 63 + total_pages: 2 + schema: + $ref: "#/components/schemas/LLMObsExperimentationSimpleSearchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Simple search experimentation entities + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments: + get: + description: List all Agent Observability experiments sorted by creation date, newest first. + operationId: ListLLMObsExperiments + parameters: + - description: Filter experiments by project ID. Required if `filter[dataset_id]` is not provided. + in: query + name: filter[project_id] + schema: + type: string + - description: Filter experiments by dataset ID. + in: query + name: filter[dataset_id] + schema: + type: string + - description: Filter experiments by experiment ID. Can be specified multiple times. + in: query + name: filter[id] + schema: + type: string + - description: Filter experiments by their exact run name. + in: query + name: filter[name] + schema: + type: string + - description: >- + Filter by logical experiment name. This is the `name` field set when creating an experiment through `POST /experiments`. Returns all experiment runs that share the same name, enabling cross-commit and cross-branch comparisons. + in: query + name: filter[experiment] + schema: + type: string + - description: |- + Filter by JSONB metadata containment. Provide a JSON object string where + experiments whose metadata contains all specified key-value pairs are returned. + For example: `{"commit":"abc123","branch":"main"}`. + in: query + name: filter[metadata] + schema: + type: string + - description: >- + Filter experiments by the ID of their parent (baseline) experiment. Returns all experiments that were run against the given baseline. Can be specified multiple times. + in: query + name: filter[parent_experiment_id] + schema: + type: string + - description: When `true`, return only soft-deleted experiments. Defaults to `false`. + in: query + name: filter[is_deleted] + schema: + type: boolean + - description: When `true`, enrich each experiment with its author's user data in the `author` field. + in: query + name: include[user_data] + schema: + type: boolean + - description: When `true`, enrich each experiment with its dataset name in the `dataset_name` field. + in: query + name: include[dataset_names] + schema: + type: boolean + - description: Use the pagination cursor returned in `meta.after` to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: |- + Maximum number of results to return per page. Values above 5000 are clamped + to 5000. Defaults to 5000. + in: query + name: page[limit] + schema: + format: int64 + maximum: 5000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + config: + created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000011 + description: "" + metadata: + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000010 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000009 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability experiments + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Agent Observability experiment. + operationId: CreateLLMObsExperiment + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentRequest" + description: Create experiment payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000014 + description: "" + metadata: + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000013 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000012 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentResponse" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000017 + description: "" + metadata: + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000016 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000015 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments/delete: + post: + description: Delete one or more Agent Observability experiments. + operationId: DeleteLLMObsExperiments + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + experiment_ids: + - 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsDeleteExperimentsRequest" + description: Delete experiments payload. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability experiments + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments/{experiment_id}: + patch: + description: Partially update an existing Agent Observability experiment. + operationId: UpdateLLMObsExperiment + parameters: + - $ref: "#/components/parameters/LLMObsExperimentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentUpdateRequest" + description: Update experiment payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000020 + description: "" + metadata: + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000019 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000018 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments/{experiment_id}/events: + get: + deprecated: true + description: >- + Retrieve spans with their evaluation metrics for a given experiment. Returns spans only, with no summary metrics and no pagination. Deprecated in favor of `ListLLMObsExperimentEventsV3`. + operationId: ListLLMObsExperimentEventsV1 + parameters: + - $ref: "#/components/parameters/LLMObsExperimentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + duration: 1500000000.0 + eval_metrics: [] + name: llm_call + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + tags: [] + trace_id: abc123def456 + id: 00000000-0000-0000-0000-000000000001 + type: experiments + schema: + $ref: "#/components/schemas/LLMObsExperimentSpansResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability experiment spans (v1) + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Push spans and metrics for an Agent Observability experiment. + operationId: CreateLLMObsExperimentEvents + parameters: + - $ref: "#/components/parameters/LLMObsExperimentIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: + - assessment: pass + label: faithfulness + metric_type: score + span_id: span-7a1b2c3d + timestamp_ms: 1705314600000 + spans: + - dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + duration: 1500000000 + name: llm_call + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + trace_id: abc123def456 + type: events + schema: + $ref: "#/components/schemas/LLMObsExperimentEventsRequest" + description: Experiment events payload. + required: true + responses: + "202": + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Push events for an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/integrations/{integration}/accounts: + get: + description: Retrieve the list of configured accounts for the specified LLM provider integration. + operationId: ListLLMObsIntegrationAccounts + parameters: + - $ref: "#/components/parameters/LLMObsIntegrationPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + - account_id: "org-XYZ123" + account_name: "Production OpenAI" + account_region: "" + id: "account-abc123" + integration: "openai" + schema: + items: + $ref: "#/components/schemas/LLMObsIntegrationAccount" + type: array + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List LLM integration accounts + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/integrations/{integration}/{account_id}/inference: + post: + description: Run an LLM inference request through the specified integration and account, returning the model response and token usage. + operationId: CreateLLMObsIntegrationInference + parameters: + - $ref: "#/components/parameters/LLMObsIntegrationPathParameter" + - $ref: "#/components/parameters/LLMObsAccountIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + max_tokens: 256 + messages: + - content: "What is the capital of France?" + role: "user" + model_id: "gpt-4o" + temperature: 0.7 + schema: + $ref: "#/components/schemas/LLMObsIntegrationInferenceRequest" + description: Inference request parameters. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + max_tokens: 256 + messages: + - content: "What is the capital of France?" + role: "user" + model_id: "gpt-4o" + response: + assessment: "pass" + content: "The capital of France is Paris." + finish_reason: "stop" + inference_codes: [] + input_tokens: 15 + latency: 843 + output_tokens: 9 + tools: [] + total_tokens: 24 + temperature: 0.7 + schema: + $ref: "#/components/schemas/LLMObsIntegrationInferenceResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Run an LLM inference + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/integrations/{integration}/{account_id}/models: + get: + description: Retrieve the list of models available for the specified LLM provider integration and account. + operationId: ListLLMObsIntegrationModels + parameters: + - $ref: "#/components/parameters/LLMObsIntegrationPathParameter" + - $ref: "#/components/parameters/LLMObsAccountIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + - has_access: true + id: "gpt-4o" + integration: "openai" + integration_display_name: "OpenAI" + json_schema: true + model_display_name: "GPT-4o" + model_id: "gpt-4o" + provider: "openai" + provider_display_name: "OpenAI" + schema: + items: + $ref: "#/components/schemas/LLMObsIntegrationModel" + type: array + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List LLM integration models + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/projects: + get: + description: List all Agent Observability projects sorted by creation date, newest first. + operationId: ListLLMObsProjects + parameters: + - description: Filter projects by project ID. + in: query + name: filter[id] + schema: + type: string + - description: Filter projects by name. + in: query + name: filter[name] + schema: + type: string + - description: Use the Pagination cursor to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: Maximum number of results to return per page. + in: query + name: page[limit] + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: "" + name: My LLM Project + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + type: projects + schema: + $ref: "#/components/schemas/LLMObsProjectsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability projects + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Agent Observability project. Returns the existing project if a name conflict occurs. + operationId: CreateLLMObsProject + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My LLM Project + type: projects + schema: + $ref: "#/components/schemas/LLMObsProjectRequest" + description: Create project payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: "" + name: My LLM Project + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000002 + type: projects + schema: + $ref: "#/components/schemas/LLMObsProjectResponse" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: "" + name: My LLM Project + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000003 + type: projects + schema: + $ref: "#/components/schemas/LLMObsProjectResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability project + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/projects/delete: + post: + description: Delete one or more Agent Observability projects. + operationId: DeleteLLMObsProjects + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + project_ids: + - a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: projects + schema: + $ref: "#/components/schemas/LLMObsDeleteProjectsRequest" + description: Delete projects payload. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability projects + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/projects/{project_id}: + patch: + description: Partially update an existing Agent Observability project. + operationId: UpdateLLMObsProject + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: projects + schema: + $ref: "#/components/schemas/LLMObsProjectUpdateRequest" + description: Update project payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: "" + name: My LLM Project + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000004 + type: projects + schema: + $ref: "#/components/schemas/LLMObsProjectResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability project + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts: + get: + description: List all Agent Observability prompts in the prompt registry for the organization. + operationId: ListLLMObsPrompts + parameters: + - description: Optional filter for prompts by prompt ID. + example: "customer-support-assistant" + in: query + name: filter[prompt_id] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + created_from: "sdk-registry" + description: "Answers customer questions using the company knowledge base." + in_registry: true + last_version_created_at: "2025-02-01T14:30:00Z" + num_versions: 2 + prompt_id: "customer-support-assistant" + source: registry + title: "Customer Support Assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsPromptsResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability prompts + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new prompt (and its first version) in the Agent Observability prompt registry. + operationId: CreateLLMObsPrompt + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "Answers customer questions using the company knowledge base." + prompt_id: "customer-support-assistant" + template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + title: "Customer Support Assistant" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsCreatePromptRequest" + description: Create prompt payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + created_from: "sdk-registry" + description: "Answers customer questions using the company knowledge base." + in_registry: true + last_version_created_at: "2025-01-15T10:00:00Z" + num_versions: 1 + prompt_id: "customer-support-assistant" + source: registry + title: "Customer Support Assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsPromptResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts/{prompt_id}: + delete: + description: >- + Soft-delete an Agent Observability prompt. The prompt's version rows are retained, but they are no longer accessible through the public prompt registry endpoints. + operationId: DeleteLLMObsPrompt + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + deleted_at: "2025-02-10T09:15:00Z" + prompt_id: "customer-support-assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsDeletedPromptResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the latest version of an Agent Observability prompt by prompt ID. + operationId: GetLLMObsPrompt + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + - $ref: "#/components/parameters/LLMObsPromptLabelQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + chat_template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + prompt_id: "customer-support-assistant" + prompt_version_uuid: "d83ab666-61cc-5545-a83b-2424bb85467b" + version: "2" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsPromptSDKResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the title, the description, or both, for an Agent Observability prompt. + operationId: UpdateLLMObsPrompt + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "Answers customer questions using the company knowledge base." + title: "Customer Support Assistant" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsUpdatePromptRequest" + description: Update prompt payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + created_from: "sdk-registry" + description: "Answers customer questions using the company knowledge base." + in_registry: true + last_version_created_at: "2025-01-15T10:00:00Z" + num_versions: 1 + prompt_id: "customer-support-assistant" + source: registry + title: "Customer Support Assistant" + id: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + type: prompt-templates + schema: + $ref: "#/components/schemas/LLMObsPromptResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts/{prompt_id}/versions: + get: + description: >- + List all versions of an Agent Observability prompt, ordered newest to oldest. If the prompt does not exist, is not registered, or is archived, the response contains an empty list. + operationId: ListLLMObsPromptVersions + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-02-01T14:30:00Z" + description: "Give concise answers and cite relevant help-center articles." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + version: 2 + version_created_at: "2025-02-01T14:30:00Z" + id: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: prompt-template-versions + - attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-01-15T10:00:00Z" + description: "Initial customer support prompt." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + version: 1 + version_created_at: "2025-01-15T10:00:00Z" + id: "20e5280b-c75d-5699-8a70-a2773a751428" + type: prompt-template-versions + schema: + $ref: "#/components/schemas/LLMObsPromptVersionsResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List versions of an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new version of an existing Agent Observability prompt. + operationId: CreateLLMObsPromptVersion + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "Give concise answers and cite relevant help-center articles." + template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + type: prompt-template-versions + schema: + $ref: "#/components/schemas/LLMObsCreatePromptVersionRequest" + description: Create prompt version payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-02-01T14:30:00Z" + description: "Give concise answers and cite relevant help-center articles." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + version: 2 + version_created_at: "2025-02-01T14:30:00Z" + id: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: prompt-template-versions + schema: + $ref: "#/components/schemas/LLMObsPromptVersionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a new Agent Observability prompt version + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts/{prompt_id}/versions/{version}: + get: + description: Get the full template of a single, specific version of an Agent Observability prompt. + operationId: GetLLMObsPromptVersion + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + - $ref: "#/components/parameters/LLMObsPromptVersionPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-02-01T14:30:00Z" + description: "Give concise answers and cite relevant help-center articles." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + version: 2 + version_created_at: "2025-02-01T14:30:00Z" + id: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: prompt-template-versions + schema: + $ref: "#/components/schemas/LLMObsPromptVersionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a specific Agent Observability prompt version + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: >- + Update the description, the feature-flag environments, or both, for a specific version of an Agent Observability prompt. + operationId: UpdateLLMObsPromptVersion + parameters: + - $ref: "#/components/parameters/LLMObsPromptIDPathParameter" + - $ref: "#/components/parameters/LLMObsPromptVersionPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "Give concise answers and cite relevant help-center articles." + type: prompt-template-versions + schema: + $ref: "#/components/schemas/LLMObsUpdatePromptVersionRequest" + description: Update prompt version payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + author: "3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e" + created_at: "2025-02-01T14:30:00Z" + description: "Give concise answers and cite relevant help-center articles." + prompt_id: "customer-support-assistant" + prompt_uuid: "4a1a28ff-8a25-5f0f-946f-f48264d772eb" + template: + - content: "You are a helpful customer support assistant for {{company_name}}." + role: "system" + - content: "Help {{customer_name}} with this question: {{question}}" + role: "user" + version: 2 + version_created_at: "2025-02-01T14:30:00Z" + id: "d83ab666-61cc-5545-a83b-2424bb85467b" + type: prompt-template-versions + schema: + $ref: "#/components/schemas/LLMObsPromptVersionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability prompt version + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/spans/events: + get: + description: List Agent Observability spans matching the specified filters. + operationId: ListLLMObsSpans + parameters: + - description: Start of the time range. Accepts ISO 8601 or relative format (e.g., `now-15m`). Defaults to `now-15m`. + in: query + name: filter[from] + schema: + example: "now-900s" + type: string + - description: End of the time range. Accepts ISO 8601 or relative format. Defaults to `now`. + in: query + name: filter[to] + schema: + example: "now" + type: string + - description: >- + Search query using Agent Observability query syntax. Supports attribute filters using the field:value syntax (e.g. session_id, trace_id, ml_app, meta.span.kind). When provided, structured field filters (`filter[span_id]`, `filter[trace_id]`, etc.) are ignored. + in: query + name: filter[query] + schema: + example: "@session_id:abc123def456" + type: string + - description: Filter by exact span ID. + in: query + name: filter[span_id] + schema: + type: string + - description: Filter by exact trace ID. + in: query + name: filter[trace_id] + schema: + type: string + - description: Filter by span kind (e.g., llm, agent, tool, task, workflow). + in: query + name: filter[span_kind] + schema: + type: string + - description: Filter by span name. + in: query + name: filter[span_name] + schema: + type: string + - description: Filter by ML application name. + in: query + name: filter[ml_app] + schema: + type: string + - description: Maximum number of spans to return. Defaults to `10`. + in: query + name: page[limit] + schema: + format: int64 + type: integer + - description: Cursor from the previous response to retrieve the next page. + in: query + name: page[cursor] + schema: + type: string + - description: Sort order for the results. + in: query + name: sort + schema: + type: string + - description: Whether to include attachment data in the response. Defaults to `true`. + in: query + name: include_attachments + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + summary: List spans for an ML app + value: + data: + - attributes: + duration: 1500000000.0 + ml_app: my-llm-app + model_name: gpt-4o + model_provider: openai + name: llm_call + span_id: "abc123def456" + span_kind: llm + start_ns: 1705314600000000000 + status: ok + trace_id: "trace-9a8b7c6d5e4f" + id: "abc123def456" + type: span + meta: + elapsed: 132 + page: {} + request_id: req-abc123 + status: done + session_id: + summary: List spans filtered by session ID + value: + data: + - attributes: + duration: 1500000000.0 + ml_app: my-llm-app + name: llm_call + span_id: "abc123def456" + span_kind: llm + start_ns: 1705314600000000000 + status: ok + tags: + - "session_id:abc123def456" + trace_id: "trace-9a8b7c6d5e4f" + id: "abc123def456" + type: span + meta: + elapsed: 87 + page: {} + request_id: req-def456 + status: done + schema: + $ref: "#/components/schemas/LLMObsSpansResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability spans + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/spans/events/search: + post: + description: Search Agent Observability spans using structured filters in the request body. + operationId: SearchLLMObsSpans + requestBody: + content: + application/json: + examples: + default: + summary: Search spans for an ML app + value: + data: + attributes: + filter: + from: "now-900s" + ml_app: "my-llm-app" + span_kind: "llm" + to: "now" + options: + include_attachments: true + page: + limit: 10 + type: spans + session_id: + summary: Search all spans in a session + value: + data: + attributes: + filter: + from: "now-900s" + query: "@session_id:abc123def456" + to: "now" + options: + include_attachments: true + page: + limit: 50 + type: spans + schema: + $ref: "#/components/schemas/LLMObsSearchSpansRequest" + description: Search spans payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + duration: 1500000000.0 + ml_app: my-llm-app + model_name: gpt-4o + model_provider: openai + name: llm_call + span_id: "abc123def456" + span_kind: llm + start_ns: 1705314600000000000 + status: ok + trace_id: "trace-9a8b7c6d5e4f" + id: "abc123def456" + type: span + meta: + elapsed: 132 + page: {} + request_id: req-abc123 + status: done + schema: + $ref: "#/components/schemas/LLMObsSpansResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Search Agent Observability spans + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-clustered-points: + get: + description: |- + List the data points grouped into a topic. For a parent topic, points from all + of its leaf topics are returned. + operationId: ListLLMObsPatternsClusteredPoints + parameters: + - $ref: "#/components/parameters/LLMObsPatternsTopicIDQueryParameter" + - $ref: "#/components/parameters/LLMObsPatternsPageSizeQueryParameter" + - $ref: "#/components/parameters/LLMObsPatternsPageTokenQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + next_page_token: "eyJvZmZzZXQiOjUwfQ==" + points: + - event_id: AAAAAYabc123 + id: 9b0c1d2e-3f40-5a61-b728-c9d0e1f2a3b4 + input: "How do I get a refund?" + is_included: false + is_suggested: true + session_id: session-7c3f5a1b + span_id: "1234567890123456789" + topic_id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + topic_id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: clustered_points_response + schema: + $ref: "#/components/schemas/LLMObsPatternsClusteredPointsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns clustered points + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-configs: + get: + description: List all patterns configurations for the organization. + operationId: ListLLMObsPatternsConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + configs: + - created_at: "2024-01-15T10:30:00Z" + evp_query: "@ml_app:support-bot" + hierarchy_depth: 2 + id: a7c8d9e0-1234-5678-9abc-def012345678 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + scope: "" + updated_at: "2024-01-15T10:30:00Z" + id: "1000000001" + type: list_topic_discovery_configs_response + schema: + $ref: "#/components/schemas/LLMObsPatternsConfigsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns configurations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create a new patterns configuration, or update an existing one when a configuration ID is provided. + operationId: UpsertLLMObsPatternsConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + evp_query: "@ml_app:support-bot" + hierarchy_depth: 2 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + type: topic_discovery_configs + schema: + $ref: "#/components/schemas/LLMObsPatternsConfigUpsertRequest" + description: Patterns configuration payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + evp_query: "@ml_app:support-bot" + hierarchy_depth: 2 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + scope: "" + updated_at: "2024-01-15T10:30:00Z" + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery_configs + schema: + $ref: "#/components/schemas/LLMObsPatternsConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update a patterns configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-configs/latest: + get: + description: Retrieve the patterns configuration for the organization. + operationId: GetLLMObsPatternsConfig + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + evp_query: "@ml_app:support-bot" + hierarchy_depth: 2 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + scope: "" + updated_at: "2024-01-15T10:30:00Z" + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery_configs + schema: + $ref: "#/components/schemas/LLMObsPatternsConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a patterns configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-configs/{config_id}: + delete: + description: Delete a patterns configuration by its ID. + operationId: DeleteLLMObsPatternsConfig + parameters: + - $ref: "#/components/parameters/LLMObsPatternsConfigIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a patterns configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-runs: + get: + description: List the completed patterns runs for a configuration. + operationId: ListLLMObsPatternsRuns + parameters: + - $ref: "#/components/parameters/LLMObsPatternsConfigIDQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + runs: + - completed_at: "2024-01-15T10:45:00Z" + created_at: "2024-01-15T10:30:00Z" + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + status: completed + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: list_topic_discovery_runs_response + schema: + $ref: "#/components/schemas/LLMObsPatternsRunsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns runs + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Start a patterns run for a given configuration. The run executes asynchronously. + operationId: TriggerLLMObsPatterns + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery + schema: + $ref: "#/components/schemas/LLMObsPatternsTriggerRequest" + description: Trigger patterns payload. + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + status: started + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery_run + schema: + $ref: "#/components/schemas/LLMObsPatternsTriggerResponse" + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Trigger a patterns run + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-runs/status: + get: + description: |- + Retrieve the status and step-by-step progress of the current or most recent + patterns run for a configuration. + operationId: GetLLMObsPatternsRunStatus + parameters: + - $ref: "#/components/parameters/LLMObsPatternsConfigIDQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + progress: + - name: query_evp + started_at: "2024-01-15T10:30:05Z" + status: completed + - name: generate_topics + started_at: "2024-01-15T10:32:00Z" + status: running + status: running + step: generate_topics + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: topic_discovery_run_status + schema: + $ref: "#/components/schemas/LLMObsPatternsRunStatusResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get patterns run status + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-topics: + get: + description: |- + List the topics discovered by a patterns run. When no run is specified, + the most recent completed run is used. + operationId: ListLLMObsPatternsTopics + parameters: + - $ref: "#/components/parameters/LLMObsPatternsConfigIDQueryParameter" + - $ref: "#/components/parameters/LLMObsPatternsRunIDQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_at: "2024-01-15T10:45:00Z" + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + created_at: "2024-01-15T10:30:00Z" + previous_run_id: "" + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + topics: + - created_at: "2024-01-15T10:44:00Z" + description: "Questions about invoices, charges, and refunds." + first_seen_at: "2024-01-15T10:44:00Z" + hierarchy_level: 0 + id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + is_validated: true + name: Billing questions + parent_topic_id: "" + point_count: 125 + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: get_topics_response + schema: + $ref: "#/components/schemas/LLMObsPatternsTopicsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns topics + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-topics/with-cluster-points: + get: + description: |- + List the topics discovered by a patterns run, with the clustered points attached + inline to each leaf topic. When no run is specified, the most recent completed + run is used. + operationId: ListLLMObsPatternsTopicsWithClusteredPoints + parameters: + - $ref: "#/components/parameters/LLMObsPatternsConfigIDQueryParameter" + - $ref: "#/components/parameters/LLMObsPatternsRunIDQueryParameter" + - $ref: "#/components/parameters/LLMObsPatternsIncludeMetricsQueryParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_at: "2024-01-15T10:45:00Z" + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + created_at: "2024-01-15T10:30:00Z" + previous_run_id: "" + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + topics: + - cluster_points: + - duration: 1500000 + estimated_total_cost: 0.0021 + evaluation: + sentiment: positive + input_tokens: 128 + output_tokens: 64 + span_id: "1234567890123456789" + status: ok + total_tokens: 192 + created_at: "2024-01-15T10:44:00Z" + description: "Questions about invoices, charges, and refunds." + first_seen_at: "2024-01-15T10:44:00Z" + hierarchy_level: 0 + id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + is_validated: true + name: Billing questions + parent_topic_id: "" + point_count: 125 + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: get_topics_with_cluster_points_response + schema: + $ref: "#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns topics with clustered points + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets: + get: + description: List all Agent Observability datasets for a project, sorted by creation date, newest first. + operationId: ListLLMObsDatasets + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + - description: Filter datasets by name. + in: query + name: filter[name] + schema: + type: string + - description: Filter datasets by dataset ID. + in: query + name: filter[id] + schema: + type: string + - description: Use the Pagination cursor to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: Maximum number of results to return per page. + in: query + name: page[limit] + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + current_version: 1 + description: "" + metadata: + name: My LLM Dataset + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000005 + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability datasets + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Agent Observability dataset within the specified project. + operationId: CreateLLMObsDataset + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My LLM Dataset + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetRequest" + description: Create dataset payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + current_version: 1 + description: "" + metadata: + name: My LLM Dataset + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000006 + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetResponse" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + current_version: 1 + description: "" + metadata: + name: My LLM Dataset + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000007 + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/delete: + post: + description: Delete one or more Agent Observability datasets within the specified project. + operationId: DeleteLLMObsDatasets + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dataset_ids: + - 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDeleteDatasetsRequest" + description: Delete datasets payload. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability datasets + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}: + patch: + description: Partially update an existing Agent Observability dataset within the specified project. + operationId: UpdateLLMObsDataset + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + - $ref: "#/components/parameters/LLMObsDatasetIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetUpdateRequest" + description: Update dataset payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + current_version: 1 + description: "" + metadata: + name: My LLM Dataset + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000008 + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/batch_update: + post: + description: Insert, update, and delete records in a single dataset operation. By default, a new dataset version is created when the batch is applied. + operationId: BatchUpdateLLMObsDataset + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + create_new_version: true + delete_records: + - rec-old-record-1 + insert_records: + - expected_output: + answer: "Paris" + input: + question: "What is the capital of France?" + tags: + - "topic:geography" + update_records: + - expected_output: + answer: "Paris, France" + id: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetBatchUpdateRequest" + description: Batch update payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: "2024-01-15T10:30:00Z" + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + expected_output: + answer: "Paris, France" + id: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + input: + question: "What is the capital of France?" + metadata: + updated_at: "2024-01-15T10:30:00Z" + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsMutationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Payload Too Large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Batch update Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/clone: + post: + description: Clone a dataset, copying its current records into a new dataset within the same project. + operationId: CloneLLMObsDataset + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the source Agent Observability dataset to clone. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "Clone of the original dataset for experimentation." + name: "My cloned dataset" + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetCloneRequest" + description: Clone dataset payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + current_version: 0 + description: "Clone of the original dataset for experimentation." + metadata: + name: "My cloned dataset" + updated_at: "2024-01-15T10:30:00Z" + id: 7c8d4e9a-1234-5678-9abc-def012345678 + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Clone an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state: + get: + description: Retrieve the draft state of a dataset, including whether it is currently locked for editing and which user holds the lock. + operationId: GetLLMObsDatasetDraftState + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + drafting_since: "2024-01-15T10:30:00Z" + user: + email: jane.doe@example.com + handle: jane.doe@example.com + id: 00000000-0000-0000-0000-000000000010 + name: Jane Doe + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: draft_state_data + schema: + $ref: "#/components/schemas/LLMObsDatasetDraftStateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get Agent Observability dataset draft state + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/lock: + patch: + description: Acquire the draft lock on a dataset for the calling user. The lock prevents other users from concurrently editing the dataset draft. + operationId: LockLLMObsDatasetDraftState + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + drafting_since: "2024-01-15T10:30:00Z" + user: + email: jane.doe@example.com + handle: jane.doe@example.com + id: 00000000-0000-0000-0000-000000000010 + name: Jane Doe + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: draft_state_data + schema: + $ref: "#/components/schemas/LLMObsDatasetDraftStateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Lock Agent Observability dataset draft state + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/unlock: + patch: + description: Release the draft lock on a dataset held by the calling user, allowing other users to edit the dataset draft. + operationId: UnlockLLMObsDatasetDraftState + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Unlock Agent Observability dataset draft state + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/export: + get: + description: Download the contents of a dataset as a CSV file. The download is streamed and includes one row per dataset record. + operationId: ExportLLMObsDataset + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + - description: Export format for the dataset contents. Only `csv` is currently supported. + in: query + name: format + schema: + $ref: "#/components/schemas/LLMObsDatasetExportFormat" + - description: Version of the dataset to export. If omitted, the current version is used. Must be between 0 and the current version of the dataset, inclusive. + in: query + name: version + schema: + format: int64 + maximum: 2147483647 + type: integer + responses: + "200": + content: + text/csv: + examples: + default: + value: "id,input,expected_output,metadata,tags\nrec-1,\"What is 2+2?\",\"4\",{},\"\"" + schema: + type: string + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Export an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records: + get: + description: List all records in an Agent Observability dataset, sorted by creation date, newest first. + operationId: ListLLMObsDatasetRecords + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + - $ref: "#/components/parameters/LLMObsDatasetIDPathParameter" + - description: Retrieve records from a specific dataset version. Defaults to the current version. + in: query + name: filter[version] + schema: + format: int64 + type: integer + - description: Use the Pagination cursor to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: Maximum number of results to return per page. + in: query + name: page[limit] + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000022 + expected_output: + answer: "Paris" + id: 00000000-0000-0000-0000-000000000021 + input: + question: "What is the capital of France?" + metadata: + updated_at: "2024-01-01T00:00:00+00:00" + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update one or more existing records in an Agent Observability dataset. + operationId: UpdateLLMObsDatasetRecords + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + - $ref: "#/components/parameters/LLMObsDatasetIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + records: + - id: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: records + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsUpdateRequest" + description: Update records payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000028 + expected_output: + answer: "Paris" + id: 00000000-0000-0000-0000-000000000027 + input: + question: "What is the capital of France?" + metadata: + updated_at: "2024-01-01T00:00:00+00:00" + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsMutationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Append one or more records to an Agent Observability dataset. + operationId: CreateLLMObsDatasetRecords + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + - $ref: "#/components/parameters/LLMObsDatasetIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: records + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsRequest" + description: Append records payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000024 + expected_output: + answer: "Paris" + id: 00000000-0000-0000-0000-000000000023 + input: + question: "What is the capital of France?" + metadata: + updated_at: "2024-01-01T00:00:00+00:00" + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsMutationResponse" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: "2024-01-01T00:00:00+00:00" + dataset_id: 00000000-0000-0000-0000-000000000026 + expected_output: + answer: "Paris" + id: 00000000-0000-0000-0000-000000000025 + input: + question: "What is the capital of France?" + metadata: + updated_at: "2024-01-01T00:00:00+00:00" + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsMutationResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Append records to an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records/delete: + post: + description: Delete one or more records from an Agent Observability dataset. + operationId: DeleteLLMObsDatasetRecords + parameters: + - $ref: "#/components/parameters/LLMObsProjectIDPathParameter" + - $ref: "#/components/parameters/LLMObsDatasetIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + record_ids: + - rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: records + schema: + $ref: "#/components/schemas/LLMObsDeleteDatasetRecordsRequest" + description: Delete records payload. + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/restore: + post: + description: Restore a dataset to a previous version. The dataset's current version is bumped, and its records are replaced with the records from the specified prior version. + operationId: RestoreLLMObsDatasetVersion + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dataset_version: 1 + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: "#/components/schemas/LLMObsDatasetRestoreVersionRequest" + description: Restore dataset version payload. + required: true + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Restore an Agent Observability dataset version + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/versions: + get: + description: List the active versions of a dataset. A version is created each time a dataset is referenced by an experiment run. + operationId: ListLLMObsDatasetVersions + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + last_used: "2024-01-15T10:30:00Z" + version_number: 1 + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: dataset_version + - attributes: + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + last_used: "2024-02-20T14:45:00Z" + version_number: 2 + id: 4ee7c6f1-9a01-5c2d-b8e1-6c95ef43a123 + type: dataset_version + schema: + $ref: "#/components/schemas/LLMObsDatasetVersionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability dataset versions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v2/experiments/{experiment_id}/events: + get: + deprecated: true + description: >- + Retrieve spans and experiment-level summary metrics for a given experiment. Returns the full events payload without pagination. Deprecated: use `ListLLMObsExperimentEventsV3` instead. + operationId: ListLLMObsExperimentEventsV2 + parameters: + - $ref: "#/components/parameters/LLMObsExperimentIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + spans: + - duration: 1500000000.0 + eval_metrics: [] + id: 00000000-0000-0000-0000-000000000002 + name: llm_call + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + tags: [] + trace_id: abc123def456 + summary_metrics: [] + id: 00000000-0000-0000-0000-000000000001 + type: experiment_events + schema: + $ref: "#/components/schemas/LLMObsExperimentEventsV2Response" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability experiment events (v2) + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v2/{project_id}/datasets/{dataset_id}/records/upload: + post: + description: |- + Upload records to a dataset from a file. The request is a `multipart/form-data` upload containing a single `file` part. + Currently only CSV is supported. The CSV must include an `input` column. Optional columns are `id`, `expected_output`, `metadata`, and `tags`. + + The response is a Server-Sent Events stream (`text/event-stream`) emitting progress updates while records are processed. The stream emits the following named events: + - `progress`: incremental record counts written so far. + - `completed`: terminal event with a JSON body containing `records_created`. + - `error`: terminal event with a JSON body containing an error `message`. + operationId: UploadLLMObsDatasetRecordsFile + parameters: + - description: The ID of the Agent Observability project. + example: "a33671aa-24fd-4dcd-9b33-a8ec7dde7751" + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: "9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d" + in: path + name: dataset_id + required: true + schema: + type: string + - description: Whether to skip records whose `input` already exists in the dataset. Defaults to `false`. + in: query + name: deduplicate + schema: + default: false + type: boolean + - description: Whether to overwrite existing records that share the same user-provided `id`. Defaults to `true`. + in: query + name: overwrite + schema: + default: true + type: boolean + - description: Tags to apply to every uploaded record, in addition to any tags defined on individual rows. Can be repeated, e.g. `tags=env:prod&tags=team:ai`. + in: query + name: tags + schema: + items: + type: string + type: array + - description: Whether to enrich the response with user metadata. + in: query + name: "include[user_data]" + schema: + type: boolean + requestBody: + content: + multipart/form-data: + examples: + default: + value: + file: records.csv + schema: + $ref: "#/components/schemas/LLMObsDatasetRecordsUploadFile" + description: Multipart upload payload containing the records file. + required: true + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Upload records to an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v3/experiments/{experiment_id}/events: + get: + description: Retrieve spans and experiment-level summary metrics for a given experiment with cursor-based pagination. + operationId: ListLLMObsExperimentEvents + parameters: + - $ref: "#/components/parameters/LLMObsExperimentIDPathParameter" + - description: Maximum number of spans to return per page. Defaults to 5000. + in: query + name: page[limit] + schema: + default: 5000 + format: int64 + type: integer + - description: Opaque cursor from a previous response to fetch the next page of results. + in: query + name: page[cursor] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + spans: + - duration: 1500000000.0 + eval_metrics: [] + id: 00000000-0000-0000-0000-000000000002 + name: llm_call + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + tags: [] + trace_id: abc123def456 + summary_metrics: [] + id: 00000000-0000-0000-0000-000000000001 + type: experiment_events + meta: + after: + schema: + $ref: "#/components/schemas/LLMObsExperimentEventsV2Response" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List events for an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/login/org_configs/max_session_duration: + put: + description: |- + Update the maximum session duration for the current organization. + The duration is specified in seconds. + operationId: UpdateLoginOrgConfigsMaxSessionDuration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + max_session_duration: 604800 + type: max_session_duration + schema: + $ref: "#/components/schemas/MaxSessionDurationUpdateRequest" + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update the maximum session duration + tags: [Organizations] + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/logs: + post: + description: |- + Send your logs to your Datadog platform over HTTP. Limits per HTTP request are: + + - Maximum content size per payload (uncompressed): 5MB + - Maximum size for a single log: 1MB + - Maximum array size if sending multiple logs in an array: 1000 entries + + Any log exceeding 1MB is accepted and truncated by Datadog: + - For a single log request, the API truncates the log at 1MB and returns a 2xx. + - For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx. + + Datadog recommends sending your logs compressed. + Add the `Content-Encoding: gzip` header to the request when sending compressed logs. + Log events can be submitted with a timestamp that is up to 18 hours in the past. + + The status codes answered by the HTTP API are: + - 202: Accepted: the request has been accepted for processing + - 400: Bad request (likely an issue in the payload formatting) + - 401: Unauthorized (likely a missing API Key) + - 403: Permission issue (likely using an invalid API Key) + - 408: Request Timeout, request should be retried after some time + - 413: Payload too large (batch is above 5MB uncompressed) + - 429: Too Many Requests, request should be retried after some time + - 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time + - 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time + operationId: SubmitLog + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: "#/components/schemas/ContentEncoding" + - description: Log tags can be passed as query parameters with `text/plain` content type. + example: "env:prod,user:my-user" + in: query + name: ddtags + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + ddsource: nginx + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment + multi-json-messages: + description: Pass multiple log objects at once. + summary: Multi JSON Messages + value: + - ddsource: "nginx" + ddtags: "env:staging,version:5.1" + hostname: "i-012345678" + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello + service: "payment" + - ddsource: "nginx" + ddtags: "env:staging,version:5.1" + hostname: "i-012345679" + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] World + service: "payment" + simple-json-message: + description: Log attributes can be passed as `key:value` pairs in valid JSON messages. + summary: Simple JSON Message + value: + ddsource: "nginx" + ddtags: "env:staging,version:5.1" + hostname: "i-012345678" + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: "payment" + schema: + $ref: "#/components/schemas/HTTPLog" + application/logplex-1: + examples: + default: + value: + multi-raw-message: + description: Submit log messages. + summary: Multi Logplex Messages + value: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello\n2019-11-19T14:37:58,995 INFO [process.name][20081] World" + multi-raw-message: + description: Submit log messages. + summary: Multi Logplex Messages + value: |- + 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello + 2019-11-19T14:37:58,995 INFO [process.name][20081] World + simple-logplex-message: + description: Submit log string. + summary: Simple Logplex Message + value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + schema: + type: string + text/plain: + examples: + default: + value: + multi-raw-message: + description: Submit log string. + summary: Multi Raw Messages + value: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello\n2019-11-19T14:37:58,995 INFO [process.name][20081] World" + multi-raw-message: + description: Submit log string. + summary: Multi Raw Messages + value: |- + 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello + 2019-11-19T14:37:58,995 INFO [process.name][20081] World + simple-raw-message: + description: >- + Submit log string. Log attributes can be passed as query parameters in the URL. This enables the addition of tags or the source by using the `ddtags` and `ddsource` parameters: `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`. + summary: Simple Raw Message + value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + schema: + type: string + description: Log to send (JSON format). + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: Request accepted for processing (always 202 empty JSON). + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Forbidden + "408": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Request Timeout + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Payload Too Large + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Too Many Requests + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Internal Server Error + "503": + content: + application/json: + schema: + $ref: "#/components/schemas/HTTPLogErrors" + description: Service Unavailable + security: + - apiKeyAuth: [] + servers: + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The regional site for customers. + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - uk1.datadoghq.com + - datadoghq.eu + - ddog-gov.com + - us2.ddog-gov.com + x-enum-varnames: + - US1 + - US3 + - US5 + - AP1 + - AP2 + - UK1 + - EU1 + - GOV + - US2_GOV + subdomain: + default: http-intake.logs + description: The subdomain where the API is deployed. + - url: "{protocol}://{name}" + variables: + name: + default: http-intake.logs.datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: Any Datadog deployment. + subdomain: + default: http-intake.logs + description: The subdomain where the API is deployed. + summary: Send logs + tags: + - Logs + x-codegen-request-body-name: body + /api/v2/logs/analytics/aggregate: + post: + description: |- + The API endpoint to aggregate events into buckets and compute metrics and timeseries. + operationId: AggregateLogs + requestBody: + content: + "application/json": + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: "@duration" + type: timeseries + filter: + from: now-15m + indexes: + - main + - web + query: service:web* AND @http.status_code:[200 TO 299] + storage_tier: indexes + to: now + group_by: + - facet: host + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: "#/components/schemas/LogsAggregateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + buckets: + - by: + host: my-hostname + computes: + c0: 19 + meta: + elapsed: 132 + status: done + schema: + $ref: "#/components/schemas/LogsAggregateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - logs_read_data + summary: Aggregate events + tags: ["Logs"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_read_data + /api/v2/logs/config/archive-order: + get: + description: |- + Get the current order of your archives. + This endpoint takes no JSON arguments. + operationId: GetLogsArchiveOrder + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_ids: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + type: archive_order + schema: + $ref: "#/components/schemas/LogsArchiveOrder" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get archive order + tags: + - Logs Archives + "x-permission": + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update the order of your archives. Since logs are processed sequentially, reordering an archive may change + the structure and content of the data processed by other archives. + + **Note**: Using the `PUT` method updates your archive's order by replacing the current order + with the new one. + operationId: UpdateLogsArchiveOrder + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_ids: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + type: archive_order + schema: + $ref: "#/components/schemas/LogsArchiveOrder" + description: An object containing the new ordered list of archive IDs. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_ids: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + type: archive_order + schema: + $ref: "#/components/schemas/LogsArchiveOrder" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update archive order + tags: + - Logs Archives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_archives + /api/v2/logs/config/archives: + get: + description: |- + Get the list of configured logs archives with their definitions. + operationId: ListLogsArchives + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + destination: + bucket: my-bucket + integration: + account_id: "123456789012" + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000001 + type: archives + schema: + $ref: "#/components/schemas/LogsArchives" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all archives + tags: + - Logs Archives + "x-permission": + operator: OR + permissions: + - logs_read_archives + post: + description: Create an archive in your organization. + operationId: CreateLogsArchive + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compression_method: GZIP + destination: + container: container-name + storage_account: account-name + type: azure + include_tags: false + name: Nginx Archive + query: source:nginx + rehydration_max_scan_size_in_gb: 100 + rehydration_tags: + - team:intake + - team:app + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + name: Nginx Archive + query: source:nginx + type: archives + schema: + $ref: "#/components/schemas/LogsArchiveCreateRequest" + description: The definition of the new archive. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + account_id: "123456789012" + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000002 + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000002 + type: archives + schema: + $ref: "#/components/schemas/LogsArchive" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_archives + /api/v2/logs/config/archives/{archive_id}: + delete: + description: |- + Delete a given archive from your organization. + operationId: DeleteLogsArchive + parameters: + - $ref: "#/components/parameters/ArchiveID" + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an archive + tags: + - Logs Archives + "x-permission": + operator: OR + permissions: + - logs_write_archives + get: + description: |- + Get a specific archive from your organization. + operationId: GetLogsArchive + parameters: + - $ref: "#/components/parameters/ArchiveID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + account_id: "123456789012" + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000003 + type: archives + schema: + $ref: "#/components/schemas/LogsArchive" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an archive + tags: + - Logs Archives + "x-permission": + operator: OR + permissions: + - logs_read_archives + put: + description: |- + Update a given archive configuration. + + **Note**: Using this method updates your archive configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. + operationId: UpdateLogsArchive + parameters: + - $ref: "#/components/parameters/ArchiveID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compression_method: GZIP + destination: + container: container-name + storage_account: account-name + type: azure + include_tags: false + name: Nginx Archive + query: source:nginx + rehydration_max_scan_size_in_gb: 100 + rehydration_tags: + - team:intake + - team:app + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + name: Nginx Archive + query: source:nginx + type: archives + schema: + $ref: "#/components/schemas/LogsArchiveCreateRequest" + description: New definition of the archive. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + account_id: "123456789012" + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000004 + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000004 + type: archives + schema: + $ref: "#/components/schemas/LogsArchive" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_archives + /api/v2/logs/config/archives/{archive_id}/readers: + delete: + description: Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + operationId: RemoveRoleFromArchive + parameters: + - $ref: "#/components/parameters/ArchiveID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/RelationshipToRole" + required: true + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Revoke role from an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_archives + get: + description: Returns all read roles a given archive is restricted to. + operationId: ListArchiveReadRoles + parameters: + - $ref: "#/components/parameters/ArchiveID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Example Role + id: 00000000-0000-0000-0000-000000000005 + type: roles + schema: + $ref: "#/components/schemas/RolesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List read roles for an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_read_config + post: + description: Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + operationId: AddReadRoleToArchive + parameters: + - $ref: "#/components/parameters/ArchiveID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/RelationshipToRole" + required: true + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Grant role to an archive + tags: + - Logs Archives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_archives + /api/v2/logs/config/custom-destinations: + get: + description: Get the list of configured custom destinations in your organization with their definitions. + operationId: ListLogsCustomDestinations + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000001 + type: custom_destination + schema: + $ref: "#/components/schemas/CustomDestinationsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all custom destinations + tags: + - Logs Custom Destinations + "x-permission": + operator: OR + permissions: + - logs_read_config + - logs_read_data + post: + description: Create a custom destination in your organization. + operationId: CreateLogsCustomDestination + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + type: custom_destination + schema: + $ref: "#/components/schemas/CustomDestinationCreateRequest" + description: The definition of the new custom destination. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000002 + type: custom_destination + schema: + $ref: "#/components/schemas/CustomDestinationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a custom destination + tags: + - Logs Custom Destinations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_forwarding_rules + /api/v2/logs/config/custom-destinations/{custom_destination_id}: + delete: + description: Delete a specific custom destination in your organization. + operationId: DeleteLogsCustomDestination + parameters: + - $ref: "#/components/parameters/CustomDestinationId" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a custom destination + tags: + - Logs Custom Destinations + "x-permission": + operator: OR + permissions: + - logs_write_forwarding_rules + get: + description: Get a specific custom destination in your organization. + operationId: GetLogsCustomDestination + parameters: + - $ref: "#/components/parameters/CustomDestinationId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000003 + type: custom_destination + schema: + $ref: "#/components/schemas/CustomDestinationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a custom destination + tags: + - Logs Custom Destinations + "x-permission": + operator: OR + permissions: + - logs_read_config + - logs_read_data + patch: + description: Update the given fields of a specific custom destination in your organization. + operationId: UpdateLogsCustomDestination + parameters: + - $ref: "#/components/parameters/CustomDestinationId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 + type: custom_destination + schema: + $ref: "#/components/schemas/CustomDestinationUpdateRequest" + description: New definition of the custom destination's fields. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000004 + type: custom_destination + schema: + $ref: "#/components/schemas/CustomDestinationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a custom destination + tags: + - Logs Custom Destinations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_write_forwarding_rules + /api/v2/logs/config/metrics: + get: + description: Get the list of configured log-based metrics with their definitions. + operationId: ListLogsMetrics + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + filter: + query: "service:web* AND @http.status_code:[200 TO 299]" + group_by: + - path: "@http.status_code" + tag_name: status_code + id: logs.page.load.count + type: logs_metrics + schema: + $ref: "#/components/schemas/LogsMetricsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all log-based metrics + tags: + - Logs Metrics + "x-permission": + operator: OR + permissions: + - logs_read_config + post: + description: |- + Create a metric based on your ingested logs in your organization. + Returns the log-based metric object from the request body when the request is successful. + operationId: CreateLogsMetric + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: "@http.status_code" + tag_name: status_code + id: logs.page.load.count + type: logs_metrics + schema: + $ref: "#/components/schemas/LogsMetricCreateRequest" + description: The definition of the new log-based metric. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + filter: + query: "service:web* AND @http.status_code:[200 TO 299]" + group_by: + - path: "@http.status_code" + tag_name: status_code + id: logs.page.load.count + type: logs_metrics + schema: + $ref: "#/components/schemas/LogsMetricResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a log-based metric + tags: + - Logs Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_generate_metrics + /api/v2/logs/config/metrics/{metric_id}: + delete: + description: Delete a specific log-based metric from your organization. + operationId: DeleteLogsMetric + parameters: + - $ref: "#/components/parameters/MetricID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a log-based metric + tags: + - Logs Metrics + "x-permission": + operator: OR + permissions: + - logs_generate_metrics + get: + description: Get a specific log-based metric from your organization. + operationId: GetLogsMetric + parameters: + - $ref: "#/components/parameters/MetricID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + filter: + query: "service:web* AND @http.status_code:[200 TO 299]" + group_by: + - path: "@http.status_code" + tag_name: status_code + id: logs.page.load.count + type: logs_metrics + schema: + $ref: "#/components/schemas/LogsMetricResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a log-based metric + tags: + - Logs Metrics + "x-permission": + operator: OR + permissions: + - logs_read_config + patch: + description: |- + Update a specific log-based metric from your organization. + Returns the log-based metric object from the request body when the request is successful. + operationId: UpdateLogsMetric + parameters: + - $ref: "#/components/parameters/MetricID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + include_percentiles: true + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: "@http.status_code" + tag_name: status_code + type: logs_metrics + schema: + $ref: "#/components/schemas/LogsMetricUpdateRequest" + description: New definition of the log-based metric. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + filter: + query: "service:web* AND @http.status_code:[200 TO 299]" + group_by: + - path: "@http.status_code" + tag_name: status_code + id: logs.page.load.count + type: logs_metrics + schema: + $ref: "#/components/schemas/LogsMetricResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a log-based metric + tags: + - Logs Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_generate_metrics + /api/v2/logs/config/restriction_queries: + get: + description: Returns all restriction queries, including their names and IDs. + operationId: ListRestrictionQueries + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + modified_at: "2024-01-01T00:00:00+00:00" + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000001 + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List restriction queries + tags: + - Logs Restriction Queries + "x-permission": + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new restriction query for your organization. + operationId: CreateRestrictionQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryCreatePayload" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000002 + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryWithoutRelationshipsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/role/{role_id}: + get: + description: Get restriction query for a given role. + operationId: GetRoleRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryRoleID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + modified_at: "2024-01-01T00:00:00+00:00" + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000007 + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get restriction query for a given role + tags: + - Logs Restriction Queries + "x-permission": + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/user/{user_id}: + get: + description: Get all restriction queries for a given user. + operationId: ListUserRestrictionQueries + parameters: + - $ref: "#/components/parameters/RestrictionQueryUserID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + modified_at: "2024-01-01T00:00:00+00:00" + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000006 + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all restriction queries for a given user + tags: + - Logs Restriction Queries + "x-permission": + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/{restriction_query_id}: + delete: + description: Deletes a restriction query. + operationId: DeleteRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a restriction query in the organization specified by the restriction query's `restriction_query_id`. + operationId: GetRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000003 + relationships: {} + type: logs_restriction_queries + included: [] + schema: + $ref: "#/components/schemas/RestrictionQueryWithRelationshipsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Edit a restriction query. + operationId: UpdateRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryUpdatePayload" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000004 + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryWithoutRelationshipsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Replace a restriction query. + operationId: ReplaceRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryUpdatePayload" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: "env:sandbox" + id: 00000000-0000-0000-0000-000000000005 + type: logs_restriction_queries + schema: + $ref: "#/components/schemas/RestrictionQueryWithoutRelationshipsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Replace a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/{restriction_query_id}/roles: + delete: + description: Removes a role from a restriction query. + operationId: RemoveRoleFromRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/RelationshipToRole" + required: true + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Revoke role from a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Returns all roles that have a given restriction query. + operationId: ListRestrictionQueryRoles + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Datadog Admin Role + id: 00000000-0000-0000-0000-000000000008 + type: roles + schema: + $ref: "#/components/schemas/RestrictionQueryRolesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List roles for a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Adds a role to a restriction query. + + **Note**: This operation automatically grants the `logs_read_data` permission to the role if it doesn't already have it. + operationId: AddRoleToRestrictionQuery + parameters: + - $ref: "#/components/parameters/RestrictionQueryID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/RelationshipToRole" + required: true + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Grant role to a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/events: + get: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + Use this endpoint to search and filter your logs. + + **If you are considering archiving logs for your organization, + consider use of the Datadog archive capabilities instead of the log list API. + See [Datadog Logs Archive documentation][2].** + + [1]: /logs/guide/collect-multiple-logs-with-pagination + [2]: https://docs.datadoghq.com/logs/archives + operationId: ListLogsGet + parameters: + - description: Search query following logs syntax. + example: "@datacenter:us @role:db" + in: query + name: filter[query] + required: false + schema: + type: string + - description: |- + For customers with multiple indexes, the indexes to search. + Defaults to '*' which means all indexes + example: ["main", "web"] + explode: false + in: query + name: filter[indexes] + required: false + schema: + items: + description: The name of a log index. + type: string + type: array + - description: Minimum timestamp for requested logs. + example: "2019-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested logs. + example: "2019-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Specifies the storage type to be used + example: "indexes" + in: query + name: filter[storage_tier] + required: false + schema: + $ref: "#/components/schemas/LogsStorageTier" + - description: Order of logs in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/LogsSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of logs in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: "Hello World" + service: web-app + tags: + - "env:prod" + timestamp: "2024-01-01T00:00:00+00:00" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: log + meta: + elapsed: 132 + status: done + schema: + $ref: "#/components/schemas/LogsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Search logs (GET) + tags: ["Logs"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - logs_read_data + /api/v2/logs/events/search: + post: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + Use this endpoint to search and filter your logs. + + **If you are considering archiving logs for your organization, + consider use of the Datadog archive capabilities instead of the log list API. + See [Datadog Logs Archive documentation][2].** + + [1]: /logs/guide/collect-multiple-logs-with-pagination + [2]: https://docs.datadoghq.com/logs/archives + operationId: ListLogs + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: now-15m + indexes: + - main + - web + query: service:web* AND @http.status_code:[200 TO 299] + storage_tier: indexes + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/LogsListRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: Host connected to remote + service: test-service + status: INFO + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: log + meta: + elapsed: 132 + status: done + schema: + $ref: "#/components/schemas/LogsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - logs_read_data + summary: Search logs (POST) + tags: ["Logs"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - logs_read_data + /api/v2/maintenance_windows: + get: + description: Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query. + operationId: ListMaintenanceWindows + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + end_at: "2026-06-01T06:00:00Z" + name: Weekly maintenance + query: "project:SEC" + start_at: "2026-06-01T00:00:00Z" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: maintenance_window + schema: + $ref: "#/components/schemas/MaintenanceWindowsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_read + summary: List maintenance windows + tags: + - Case Management + post: + description: Creates a maintenance window for event management cases with a name, case filter query, and time range (start and end). + operationId: CreateMaintenanceWindow + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: "2026-06-01T06:00:00Z" + name: Weekly maintenance + query: "project:SEC" + start_at: "2026-06-01T00:00:00Z" + type: maintenance_window + schema: + $ref: "#/components/schemas/MaintenanceWindowCreateRequest" + description: Maintenance window payload. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: "2026-06-01T06:00:00Z" + name: Weekly maintenance + query: "project:SEC" + start_at: "2026-06-01T00:00:00Z" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: maintenance_window + schema: + $ref: "#/components/schemas/MaintenanceWindowResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_write + summary: Create a maintenance window + tags: + - Case Management + /api/v2/maintenance_windows/{maintenance_window_id}: + delete: + description: Permanently deletes a maintenance window. + operationId: DeleteMaintenanceWindow + parameters: + - $ref: "#/components/parameters/MaintenanceWindowIDPathParameter" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_write + summary: Delete a maintenance window + tags: + - Case Management + put: + description: Updates the name, query, start time, or end time of an existing maintenance window. + operationId: UpdateMaintenanceWindow + parameters: + - $ref: "#/components/parameters/MaintenanceWindowIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: "2026-06-01T06:00:00Z" + name: Weekly maintenance + query: "project:SEC" + start_at: "2026-06-01T00:00:00Z" + type: maintenance_window + schema: + $ref: "#/components/schemas/MaintenanceWindowUpdateRequest" + description: Maintenance window payload. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: "2026-06-01T06:00:00Z" + name: Weekly maintenance + query: "project:SEC" + start_at: "2026-06-01T00:00:00Z" + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: maintenance_window + schema: + $ref: "#/components/schemas/MaintenanceWindowResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_write + summary: Update a maintenance window + tags: + - Case Management + /api/v2/metrics: + get: + description: |- + Get a list of actively reporting metrics for your organization. Pagination is optional using the `page[cursor]` and `page[size]` query parameters. + + Query parameters use bracket notation (for example, `filter[tags]`, `filter[queried][window][seconds]`). Pass them as standard URL query strings, URL-encoding the brackets if your client does not handle them. For example: `GET /api/v2/metrics?filter[tags]=env:prod&window[seconds]=86400&page[size]=500`. + operationId: ListTagConfigurations + parameters: + - description: Only return custom metrics that have been configured (`true`) or not configured (`false`) with Metrics Without Limits. + example: true + in: query + name: filter[configured] + required: false + schema: + type: boolean + - description: Only return metrics that are eligible (`true`) or ineligible (`false`) for configuration with Metrics Without Limits. + example: true + in: query + name: filter[is_configurable] + required: false + schema: + type: boolean + - description: Only return metrics that have the given tag key(s) in their Metrics Without Limits configuration (included or excluded). + example: "app,env" + in: query + name: filter[tags_configured] + required: false + schema: + description: Tag keys to filter by. + type: string + - description: Only return metrics of the given metric type. + in: query + name: filter[metric_type] + required: false + schema: + $ref: "#/components/schemas/MetricTagConfigurationMetricTypeCategory" + - description: Only return distribution metrics that have percentile aggregations enabled (true) or disabled (false). + example: true + in: query + name: filter[include_percentiles] + required: false + schema: + type: boolean + - description: |- + Only return metrics that have been queried (true) or not queried (false) in the look back window. Set the window with `filter[queried][window][seconds]`; if omitted, a default window is used. + example: true + in: query + name: filter[queried] + required: false + schema: + type: boolean + - description: |- + This parameter has no effect unless `filter[queried]` is also set. Only return metrics that have been queried or not queried in the specified window. The default value is 2,592,000 seconds (30 days), the maximum value is 15,552,000 seconds (180 days), and the minimum value is 1 second. For example: `filter[queried]=true&filter[queried][window][seconds]=604800`. + example: 15552000 + in: query + name: filter[queried][window][seconds] + required: false + schema: + default: 2592000 + format: int64 + maximum: 15552000 + minimum: 1 + type: integer + - description: |- + Only return metrics that were submitted with tags matching this expression. You can use AND, OR, IN, and wildcards. For example: `filter[tags]=env IN (staging,test) AND service:web*`. + example: "env IN (staging,test) AND service:web*" + in: query + name: filter[tags] + required: false + schema: + type: string + - description: |- + Only return metrics that are used in at least one dashboard, monitor, notebook, or SLO. + example: true + in: query + name: filter[related_assets] + required: false + schema: + type: boolean + - description: Include related resources in the response. Set to `metric_volumes` to include indexed and ingested volume counts for each metric. + example: metric_volumes + in: query + name: include + required: false + schema: + type: string + - description: "Sort results by metric volume. Prefix a key with `-` for descending order. Supported keys: `metric_volumes.indexed_volume`, `metric_volumes.ingested_volume`, `metric_volumes.indexed_volume_delta`, `metric_volumes.ingested_volume_delta`. Requires a paginated request (`page[size]` or `page[cursor]`)." + example: "-metric_volumes.indexed_volume" + in: query + name: sort + required: false + schema: + type: string + - description: |- + Only return metrics that have been actively reporting in the specified window. The default value is 3600 seconds (1 hour), the maximum value is 2,592,000 seconds (30 days), and the minimum value is 1 second. + example: 3600 + in: query + name: window[seconds] + required: false + schema: + default: 3600 + format: int64 + maximum: 2592000 + minimum: 1 + type: integer + - description: |- + Maximum number of results per page. Send `page[size]` on the first request to opt in to pagination. On each subsequent request, send `page[cursor]` set to the value of `meta.pagination.next_cursor` from the previous response. The default value is 10000, the maximum value is 10000, and the minimum value is 1. + in: query + name: page[size] + required: false + schema: + default: 10000 + format: int32 + maximum: 10000 + minimum: 1 + type: integer + - description: |- + Cursor for pagination. Use `page[size]` to opt-in to pagination and get the first page; for subsequent pages, use the value from `meta.pagination.next_cursor` in the response. Pagination is complete when `next_cursor` is null. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: system.cpu.user + type: metrics + - attributes: + created_at: "2020-03-25T09:48:37.463835Z" + metric_type: gauge + modified_at: "2020-04-25T09:48:37.463835Z" + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + meta: + pagination: + next_cursor: eyJhZnRlciI6Imh0dHAuZW5kcG9pbnQucmVxdWVzdCJ9 + with_metric_volumes: + value: + data: + - id: user.custom.cpu.usage + relationships: + metric_volumes: + data: + id: user.custom.cpu.usage + type: metric_volumes + type: metrics + - id: user.custom.mem.usage + relationships: + metric_volumes: + data: + id: user.custom.mem.usage + type: metric_volumes + type: metrics + included: + - attributes: + indexed_volume: 1000 + ingested_volume: 456 + id: user.custom.cpu.usage + type: metric_volumes + - attributes: + indexed_volume: 250 + ingested_volume: 1011 + id: user.custom.mem.usage + type: metric_volumes + schema: + $ref: "#/components/schemas/MetricsAndMetricTagConfigurationsResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get a list of metrics + tags: + - Metrics + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.pagination.next_cursor + limitParam: page[size] + resultsPath: data + "x-permission": + operator: OR + permissions: + - metrics_read + /api/v2/metrics/config/bulk-tags: + delete: + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Use [Tag Indexing Rules](/api/latest/metrics/#create-a-tag-indexing-rule) (`POST /api/v2/metrics/tag-indexing-rules`) instead. + + Delete all custom lists of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics. + Metrics are selected by passing a metric name prefix. + Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app. + Can only be used with application keys of users with the `Manage Tags for Metrics` permission. + operationId: DeleteBulkTagsMetricsConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + emails: + - sue@example.com + - bob@example.com + id: kafka.lag + type: metric_bulk_configure_tags + schema: + $ref: "#/components/schemas/MetricBulkTagConfigDeleteRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + emails: + - test@example.com + status: Accepted + id: kafka.lag + type: metric_bulk_configure_tags + schema: + $ref: "#/components/schemas/MetricBulkTagConfigResponse" + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: Delete tags for multiple metrics + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-sunset: "2027-01-01" + post: + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Use [Tag Indexing Rules](/api/latest/metrics/#create-a-tag-indexing-rule) (`POST /api/v2/metrics/tag-indexing-rules`) instead. + + Create and define a list of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics. + Metrics are selected by passing a metric name prefix. Use the Delete method of this API path to remove tag configurations. + Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app. + If multiple calls include the same metric, the last configuration applied (not by submit order) is used, do not + expect deterministic ordering of concurrent calls. The `exclude_tags_mode` value will set all metrics that match the prefix to + the same exclusion state, metric tag configurations do not support mixed inclusion and exclusion for tags on the same metric. + Can only be used with application keys of users with the `Manage Tags for Metrics` permission. + operationId: CreateBulkTagsMetricsConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + emails: + - sue@example.com + - bob@example.com + tags: + - host + - pod_name + - is_shadow + id: kafka.lag + type: metric_bulk_configure_tags + schema: + $ref: "#/components/schemas/MetricBulkTagConfigCreateRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + emails: + - test@example.com + tags: + - host + id: kafka.lag + type: metric_bulk_configure_tags + schema: + $ref: "#/components/schemas/MetricBulkTagConfigResponse" + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: Configure tags for multiple metrics + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-sunset: "2027-01-01" + /api/v2/metrics/historical-metrics-configurations: + post: + description: |- + Enable historical metrics ingestion (late data ingestion) for a metric. Idempotent: + enabling an already-enabled metric returns 200 instead of 201. Not supported for + distribution metrics, metrics with an existing tag configuration, or most standard + (non-custom) metrics. + operationId: CreateHistoricalMetricsConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: dd.test.metric + type: historical_metrics_configurations + schema: + $ref: "#/components/schemas/HistoricalMetricsConfigurationCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + id: dd.test.metric + type: historical_metrics_configurations + schema: + $ref: "#/components/schemas/HistoricalMetricsConfigurationResponse" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + id: dd.test.metric + type: historical_metrics_configurations + schema: + $ref: "#/components/schemas/HistoricalMetricsConfigurationResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - late_metrics_config_write + summary: Enable historical metrics ingestion + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - late_metrics_config_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/historical-metrics-configurations/{metric_name}: + delete: + description: |- + Disable historical metrics ingestion for a metric. Idempotent: always returns 204, + whether or not the configuration existed or the metric itself still exists, so that + Terraform destroy succeeds for a metric removed out-of-band. + operationId: DeleteHistoricalMetricsConfiguration + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - late_metrics_config_write + summary: Delete a historical metrics configuration + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - late_metrics_config_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Get the historical metrics ingestion configuration for a metric. Existence of the + resource means historical metrics ingestion is enabled; returns 404 when it is not + enabled for the metric. + operationId: GetHistoricalMetricsConfiguration + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + id: dd.test.metric + type: historical_metrics_configurations + schema: + $ref: "#/components/schemas/HistoricalMetricsConfigurationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get a historical metrics configuration + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/tag-indexing-rules: + get: + description: List tag indexing rules for an org, sorted by `rule_order`, with offset/limit pagination. + operationId: ListTagIndexingRules + parameters: + - description: Page size (1–1000, default 100). + in: query + name: page[limit] + schema: + format: int64 + type: integer + - description: Page offset from the start of the list (default 0). + in: query + name: page[offset] + schema: + format: int64 + type: integer + - description: Substring filter on rule name. + in: query + name: search + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + exclude_tags_mode: false + metric_name_matches: + - "dd.test.*" + name: my-indexing-rule + rule_order: 1 + tags: + - env + - service + id: "00000000-0000-0000-0000-000000000001" + type: tag_indexing_rules + meta: + total: 1 + schema: + $ref: "#/components/schemas/TagIndexingRulesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tag indexing rules + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a tag indexing rule for the org. `rule_order` is assigned server-side as max+1 + among existing rules; use the reorder endpoint to change the evaluation order. + Requires the `Manage Tags for Metrics` permission. + operationId: CreateTagIndexingRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_name_matches: + - "dd.test.*" + name: my-indexing-rule + tags: + - env + - service + type: tag_indexing_rules + schema: + $ref: "#/components/schemas/TagIndexingRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + exclude_tags_mode: false + metric_name_matches: + - "dd.test.*" + name: my-indexing-rule + rule_order: 1 + tags: + - env + - service + id: "00000000-0000-0000-0000-000000000001" + type: tag_indexing_rules + schema: + $ref: "#/components/schemas/TagIndexingRuleResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Create a tag indexing rule + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/tag-indexing-rules/order: + post: + description: |- + Atomically re-sequence the tag indexing rules for an org to match the supplied list of rule UUIDs. + The server assigns `rule_order` 1, 2, … matching each rule UUID by position in the list. + The UUIDs of all active rules must be provided; omitting any active rule UUID returns a 400 error. + Requires the `Manage Tags for Metrics` permission. + operationId: ReorderTagIndexingRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rule_ids: + - "00000000-0000-0000-0000-000000000001" + - "00000000-0000-0000-0000-000000000002" + type: tag_indexing_rules + schema: + $ref: "#/components/schemas/TagIndexingRuleOrderRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Reorder tag indexing rules + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/tag-indexing-rules/{id}: + delete: + description: |- + Soft-delete a tag indexing rule. Idempotent: returns 204 whether the rule existed or was already deleted. + Remaining rules in the org are automatically re-sequenced to keep `rule_order` dense and 1-based. + Requires the `Manage Tags for Metrics` permission. + operationId: DeleteTagIndexingRule + parameters: + - $ref: "#/components/parameters/TagIndexingRuleId" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Delete a tag indexing rule + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single tag indexing rule by its UUID. + operationId: GetTagIndexingRule + parameters: + - $ref: "#/components/parameters/TagIndexingRuleId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + exclude_tags_mode: false + metric_name_matches: + - "dd.test.*" + name: my-indexing-rule + rule_order: 1 + tags: + - env + - service + id: "00000000-0000-0000-0000-000000000001" + type: tag_indexing_rules + schema: + $ref: "#/components/schemas/TagIndexingRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get a tag indexing rule + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Partially update a tag indexing rule. Fields omitted from the request body are left unchanged. + Setting `rule_order` to a value already used by another rule returns 409; use the + reorder endpoint for atomic re-sequencing. Requires the `Manage Tags for Metrics` permission. + operationId: UpdateTagIndexingRule + parameters: + - $ref: "#/components/parameters/TagIndexingRuleId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-updated-rule + tags: + - env + - service + - version + type: tag_indexing_rules + schema: + $ref: "#/components/schemas/TagIndexingRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + exclude_tags_mode: false + metric_name_matches: + - "dd.test.*" + name: my-updated-rule + rule_order: 1 + tags: + - env + - service + - version + id: "00000000-0000-0000-0000-000000000001" + type: tag_indexing_rules + schema: + $ref: "#/components/schemas/TagIndexingRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Update a tag indexing rule + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/{metric_name}/active-configurations: + get: + description: |- + List tags and aggregations that are actively queried on dashboards, notebooks, monitors, the Metrics Explorer, and using the API for a given metric name. + operationId: ListActiveMetricConfigurations + parameters: + - $ref: "#/components/parameters/MetricName" + - description: |- + The number of seconds of look back (from now). + Default value is 604,800 (1 week), minimum value is 7200 (2 hours), maximum value is 2,630,000 (1 month). + example: 7200 + in: query + name: window[seconds] + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + active_aggregations: + - space: avg + time: avg + active_tags: + - app + id: http.endpoint.request + type: actively_queried_configurations + schema: + $ref: "#/components/schemas/MetricSuggestedTagsAndAggregationsResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: List active tags and aggregations + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + /api/v2/metrics/{metric_name}/all-tags: + get: + description: |- + View indexed and ingested tags for a given metric name. + Results are filtered by the `window[seconds]` parameter, which defaults to 14400 (4 hours). + operationId: ListTagsByMetricName + parameters: + - $ref: "#/components/parameters/MetricName" + - description: |- + The number of seconds of look back (from now) to query for tag data. + Default value is 14400 (4 hours), minimum value is 14400 (4 hours). + example: 14400 + in: query + name: window[seconds] + required: false + schema: + format: int64 + type: integer + - description: |- + Filter results to tags from data points that have the specified tags. + For example, `filter[tags]=env:staging,host:123` returns tags only from data points with both `env:staging` and `host:123`. + example: "env:staging,host:123" + in: query + name: filter[tags] + required: false + schema: + type: string + - description: |- + Filter returned tags to those matching a substring. + For example, `filter[match]=env` returns tags like `env:prod`, `environment:staging`, etc. + example: "env" + in: query + name: filter[match] + required: false + schema: + type: string + - description: |- + Whether to include tag values in the response. + Defaults to true. + example: true + in: query + name: filter[include_tag_values] + required: false + schema: + type: boolean + - description: |- + Whether to allow partial results. + Defaults to false. + example: false + in: query + name: filter[allow_partial] + required: false + schema: + type: boolean + - description: Maximum number of results to return. + example: 1000 + in: query + name: page[limit] + required: false + schema: + default: 1000000 + format: int32 + maximum: 1000000 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - "env:prod" + - "host:myhost" + id: system.cpu.user + type: metrics + schema: + $ref: "#/components/schemas/MetricAllTagsResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tags by metric name + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + /api/v2/metrics/{metric_name}/assets: + get: + description: Returns dashboards, monitors, notebooks, and SLOs that a metric is stored in, if any. Updated every 24 hours. + operationId: ListMetricAssets + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: http.endpoint.request + relationships: + dashboards: + data: + - id: abc-def-xyz + type: dashboards + monitors: + data: + - id: "1775073" + type: monitors + notebooks: + data: [] + slos: + data: [] + type: metrics + included: + - attributes: + popularity: 3.0 + title: My Dashboard + url: /dashboard/abc-def-xyz + id: abc-def-xyz + type: dashboards + - attributes: + title: CPU utilization is high + url: /monitors/1775073 + id: "1775073" + type: monitors + schema: + $ref: "#/components/schemas/MetricAssetsResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Related Assets to a Metric + tags: + - Metrics + /api/v2/metrics/{metric_name}/estimate: + get: + description: Returns the estimated cardinality for a metric with a given tag, percentile and number of aggregations configuration using Metrics without Limits™. + operationId: EstimateMetricsOutputSeries + parameters: + - $ref: "#/components/parameters/MetricName" + - description: |- + Comma-separated list of tag keys that the metric is configured to query with. For example: `filter[groups]=app,host`. + example: "app,host" + in: query + name: filter[groups] + required: false + schema: + type: string + - description: |- + When `true`, `filter[groups]` is treated as an exclude list instead of an include list. Defaults to `false`. + example: false + in: query + name: filter[exclude_tags_mode] + required: false + schema: + type: boolean + - description: The number of hours of look back (from now) to estimate cardinality with. If unspecified, it defaults to 0 hours. + example: 49 + in: query + name: filter[hours_ago] + required: false + schema: + format: int32 + maximum: 2147483647 + minimum: 49 + type: integer + - description: Deprecated. Number of aggregations has no impact on volume. + example: 1 + in: query + name: filter[num_aggregations] + required: false + schema: + format: int32 + maximum: 9 + type: integer + - description: Deprecated. This query parameter has no effect on the estimate. + example: true + in: query + name: filter[pct] + required: false + schema: + type: boolean + - description: A window, in hours, from the look back to estimate cardinality with. The minimum and default is 1 hour. + example: 6 + in: query + name: filter[timespan_h] + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + estimate_type: count_or_gauge + estimated_at: "2024-01-01T00:00:00+00:00" + estimated_output_series: 50 + id: system.cpu.user + type: metric_cardinality_estimate + schema: + $ref: "#/components/schemas/MetricEstimateResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: Tag Configuration Cardinality Estimator + tags: + - Metrics + "x-permission": + operator: OPEN + permissions: [] + /api/v2/metrics/{metric_name}/tag-cardinalities: + get: + description: Returns the cardinality details of tags for a specific metric. + operationId: GetMetricTagCardinalityDetails + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cardinality_delta: 25 + id: host + type: tag_cardinality + - attributes: + cardinality_delta: 5 + id: env + type: tag_cardinality + meta: + metric_name: system.cpu.user + schema: + $ref: "#/components/schemas/MetricTagCardinalitiesResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + summary: Get tag key cardinality details + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + /api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions: + delete: + description: |- + Remove a metric's exemption from tag indexing rules. Idempotent: returns 204 whether or not + an exemption existed. Any associated legacy tag configuration record is also removed. + Requires the `Manage Tags for Metrics` permission. + operationId: DeleteTagIndexingRuleExemption + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Delete a tag indexing rule exemption + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Returns why a metric is excluded from tag indexing rules. + Returns 200 with `kind=exemption` when an explicit exemption exists, 200 with + `kind=legacy_tag_configuration` when the metric has a legacy tag configuration acting as an + implicit exclusion, or 404 when neither applies. + operationId: GetTagIndexingRuleExemption + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + created_by_handle: user@datadoghq.com + kind: exemption + reason: This metric has a pre-existing tag configuration. + id: dd.test.metric + type: tag_indexing_rule_exemptions + schema: + $ref: "#/components/schemas/TagIndexingRuleExemptionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get a tag indexing rule exemption + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Exempt a metric from all tag indexing rules. The response includes the created + exemption resource. Requires the `Manage Tags for Metrics` permission. + operationId: CreateTagIndexingRuleExemption + parameters: + - $ref: "#/components/parameters/MetricName" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + reason: This metric has a pre-existing tag configuration. + type: tag_indexing_rule_exemptions + schema: + $ref: "#/components/schemas/TagIndexingRuleExemptionCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T12:00:00.000Z" + created_by_handle: user@datadoghq.com + kind: exemption + reason: This metric has a pre-existing tag configuration. + id: dd.test.metric + type: tag_indexing_rule_exemptions + schema: + $ref: "#/components/schemas/TagIndexingRuleExemptionResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Create a tag indexing rule exemption + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/{metric_name}/tag-indexing-rules: + get: + description: |- + List the tag indexing rules that apply to a given metric, sorted by `rule_order`. + Matching is performed server-side using each rule's `metric_name_matches` glob patterns. + operationId: ListTagIndexingRulesForMetric + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + meta: + total: 0 + schema: + $ref: "#/components/schemas/TagIndexingRulesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tag indexing rules for a metric + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/{metric_name}/tags: + delete: + description: |- + Deletes a metric's tag configuration. Can only be used with application + keys from users with the `Manage Tags for Metrics` permission. + Note: This operation is irreversible. + operationId: DeleteTagConfiguration + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: Delete a tag configuration + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metric_tags_write + get: + description: |- + Returns the tag configuration for the given metric name. + + A metric may exist and submit data without having a tag configuration. If no tag configuration exists + for the metric, this endpoint returns `404 Not Found`. This response does not indicate that the metric + itself is missing. + operationId: ListTagConfigurationByName + parameters: + - $ref: "#/components/parameters/MetricName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: "#/components/schemas/MetricTagConfigurationResponse" + description: Success + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: No tag configuration exists for the metric + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tag configuration by name + tags: + - Metrics + "x-permission": + operator: OR + permissions: + - metrics_read + patch: + description: |- + Update the tag configuration of a metric or percentile aggregations of a distribution metric or custom aggregations + of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true the behavior is changed + from an allow-list to a deny-list, and tags in the defined list will not be queryable. + Can only be used with application keys from users with the `Manage Tags for Metrics` permission. This endpoint requires + a tag configuration to be created first. + operationId: UpdateTagConfiguration + parameters: + - $ref: "#/components/parameters/MetricName" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + group_by: + - app + - datacenter + include_percentiles: false + id: http.endpoint.request + type: manage_tags + schema: + $ref: "#/components/schemas/MetricTagConfigurationUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: "#/components/schemas/MetricTagConfigurationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: Update a tag configuration + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + post: + description: |- + Create and define a list of queryable tag keys for an existing count/gauge/rate/distribution metric. + Optionally, include percentile aggregations on any distribution metric. By setting `exclude_tags_mode` + to true, the behavior is changed from an allow-list to a deny-list, and tags in the defined list are + not queryable. Can only be used with application keys of users with the `Manage Tags for Metrics` + permission. + operationId: CreateTagConfiguration + parameters: + - $ref: "#/components/parameters/MetricName" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + include_percentiles: false + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: "#/components/schemas/MetricTagConfigurationCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: "#/components/schemas/MetricTagConfigurationResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: Create a tag configuration + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - metric_tags_write + /api/v2/metrics/{metric_name}/volumes: + get: + description: |- + View hourly average cardinality for the given metric name over the look back period. + For Metric Name Pricing customers, view total point volume for the given metric name + over the look back period. + operationId: ListVolumesByMetricName + parameters: + - $ref: "#/components/parameters/MetricName" + - description: |- + The number of seconds of look back (from now). + Default value is 3,600 (1 hour), maximum value is 2,592,000 (1 month). + example: 7200 + in: query + name: window[seconds] + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + indexed_volume: 100 + ingested_volume: 200 + id: http.endpoint.request + type: metric_volumes + schema: + $ref: "#/components/schemas/MetricVolumesResponse" + description: Success + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too Many Requests + summary: List distinct metric volumes by metric name + tags: + - Metrics + "x-permission": + operator: OPEN + permissions: [] + /api/v2/model-lab-api/artifacts/content: + get: + description: Download the raw content of a Model Lab artifact file. + operationId: GetModelLabArtifactContent + parameters: + - description: ID of the project. + in: query + name: project_id + required: true + schema: + example: "1" + type: string + - description: Path to the artifact relative to the project directory. + in: query + name: artifact_path + required: true + schema: + example: runs/42/model/weights.pt + type: string + responses: + "200": + content: + application/octet-stream: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get Model Lab artifact content + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/facet-keys: + get: + description: List all available facet keys for filtering Model Lab runs. + operationId: ListModelLabRunFacetKeys + parameters: + - description: Filter by project ID. + in: query + name: filter[project_id] + required: true + schema: + example: 101 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: + - accuracy + - loss + parameters: + - learning_rate + - algorithm + tags: + - model + - stage + id: "1" + type: facet_keys + schema: + $ref: "#/components/schemas/ModelLabFacetKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab run facet keys + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/facet-values: + get: + description: List available facet values for a specific run facet key. + operationId: ListModelLabRunFacetValues + parameters: + - description: Filter by project ID. + in: query + name: filter[project_id] + required: true + schema: + example: 101 + format: int64 + type: integer + - description: "Facet type. Valid values: parameter, attribute, tag, metric." + in: query + name: facet_type + required: true + schema: + $ref: "#/components/schemas/ModelLabFacetType" + - description: Facet name. + in: query + name: facet_name + required: true + schema: + example: algorithm + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_name: algorithm + facet_type: parameter + values: + - gpt4 + - dbscan + id: "1" + type: facet_values + schema: + $ref: "#/components/schemas/ModelLabFacetValuesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab run facet values + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/project-facet-keys: + get: + description: List all available facet keys for filtering Model Lab projects. + operationId: ListModelLabProjectFacetKeys + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: [] + parameters: [] + tags: + - model + - stage + id: "1" + type: facet_keys + schema: + $ref: "#/components/schemas/ModelLabFacetKeysResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab project facet keys + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/project-facet-values: + get: + description: List available facet values for a specific project facet key. + operationId: ListModelLabProjectFacetValues + parameters: + - description: "Facet type. Valid values: tag." + in: query + name: facet_type + required: true + schema: + $ref: "#/components/schemas/ModelLabProjectFacetType" + - description: Facet name. + in: query + name: facet_name + required: true + schema: + example: model + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_name: model + facet_type: tag + values: + - opus + - gpt4 + id: "1" + type: facet_values + schema: + $ref: "#/components/schemas/ModelLabFacetValuesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab project facet values + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects: + get: + description: List all Model Lab projects for the current organization. + operationId: ListModelLabProjects + parameters: + - description: Text search filter for project name or description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by owner UUID. + in: query + name: filter[owner_id] + required: false + schema: + format: uuid + type: string + - description: "Filter by tags. Format: key:value,key2:value2." + in: query + name: filter[tags] + required: false + schema: + type: string + - description: "Sort field. Valid values: name, created_at, updated_at. Prefix with '-' for descending order (e.g., -updated_at)." + in: query + name: sort + required: false + schema: + default: "-updated_at" + type: string + - description: Number of items per page. Maximum is 100. + in: query + name: page[size] + required: false + schema: + default: 25 + format: int64 + maximum: 100 + type: integer + - description: Page number (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + artifact_storage_location: s3://bucket/active-project + created_at: "2024-01-20T10:00:00Z" + description: A machine learning training project. + is_starred: false + name: active-project + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: projects + meta: + page: + number: 1 + size: 25 + total: 1 + schema: + $ref: "#/components/schemas/ModelLabProjectsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab projects + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}: + get: + description: Get a single Model Lab project by its ID. + operationId: GetModelLabProject + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + artifact_storage_location: s3://bucket/active-project + created_at: "2024-01-20T10:00:00Z" + description: A machine learning training project. + is_starred: false + name: active-project + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: projects + schema: + $ref: "#/components/schemas/ModelLabProjectResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}/artifacts: + get: + description: List all artifact files for a specific Model Lab project. + operationId: ListModelLabProjectArtifacts + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + files: + - artifact_path: projects/1/artifacts/model.pkl + created_at: "2024-01-20T10:00:00Z" + file_size: 204800 + filename: model.pkl + id: "1" + type: project_files + schema: + $ref: "#/components/schemas/ModelLabProjectArtifactsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab project artifacts + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}/star: + delete: + description: Remove the star from a Model Lab project for the current user. + operationId: UnstarModelLabProject + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Remove star from a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Star a Model Lab project for the current user. + operationId: StarModelLabProject + parameters: + - $ref: "#/components/parameters/ModelLabProjectIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Star a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs: + get: + description: List all Model Lab runs for the current organization. + operationId: ListModelLabRuns + parameters: + - description: Filter by run ID(s). Comma-separated list for multiple IDs. + in: query + name: filter[id] + required: false + schema: + type: string + - description: Text search filter for run name or description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by owner UUID. + in: query + name: filter[owner_id] + required: false + schema: + type: string + - description: "Filter by run status. Valid values: pending, running, completed, failed, killed, unresponsive, paused." + in: query + name: filter[status] + required: false + schema: + $ref: "#/components/schemas/ModelLabRunStatus" + - description: Filter by project ID. + in: query + name: filter[project_id] + required: false + schema: + format: int64 + type: integer + - description: "Filter by tags. Format: key:value,key2:value2." + in: query + name: filter[tags] + required: false + schema: + type: string + - description: "Filter by params. Format: key:value,key2:>0.5,key3:true." + in: query + name: filter[params] + required: false + schema: + type: string + - description: Filter by parent run ID. Use 'null' to return only root runs (runs with no parent). + in: query + name: filter[parent_run_id] + required: false + schema: + type: string + - description: Sort pinned runs before non-pinned runs. Pinned runs are ordered by pin time descending. + in: query + name: pinned_first + required: false + schema: + type: boolean + - description: Include all runs pinned by the current user, regardless of other filters. + in: query + name: include_pinned + required: false + schema: + type: boolean + - description: When true, also return runs whose descendants match the active filters. The descendant_match field in each result indicates whether the run was included via a descendant match. + in: query + name: include_descendant_matches + required: false + schema: + type: boolean + - description: "Sort field. Valid values: name, created_at, updated_at, duration. Prefix with '-' for descending order (e.g., -updated_at)." + in: query + name: sort + required: false + schema: + default: "-updated_at" + type: string + - description: Number of items per page. Maximum is 100. + in: query + name: page[size] + required: false + schema: + default: 25 + format: int64 + maximum: 100 + type: integer + - description: Page number (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-20T10:00:00Z" + descendant_match: false + description: Fine-tuning run with custom hyperparameters. + has_children: false + is_pinned: false + metric_summaries: [] + mlflow_artifact_location: s3://bucket/active-run + name: active-run + params: + - key: algorithm + value: gpt4 + project_id: 101 + started_at: "2024-01-20T10:00:00Z" + status: running + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: runs + meta: + page: + number: 1 + size: 25 + total: 1 + schema: + $ref: "#/components/schemas/ModelLabRunsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab runs + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}: + delete: + description: Delete a Model Lab run by its ID. + operationId: DeleteModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Delete a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single Model Lab run by its ID. + operationId: GetModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-20T10:00:00Z" + descendant_match: false + description: Fine-tuning run with custom hyperparameters. + has_children: false + is_pinned: false + metric_summaries: [] + mlflow_artifact_location: s3://bucket/active-run + name: active-run + params: + - key: algorithm + value: gpt4 + project_id: 101 + started_at: "2024-01-20T10:00:00Z" + status: running + tags: + - key: model + value: opus + updated_at: "2024-01-20T11:00:00Z" + id: "2" + type: runs + schema: + $ref: "#/components/schemas/ModelLabRunResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}/artifacts: + get: + description: List artifact files for a specific Model Lab run. + operationId: ListModelLabRunArtifacts + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + - description: Optional subdirectory path within the run's artifacts. + in: query + name: path + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + files: + - file_size: 204800 + is_dir: false + path: model/weights.pt + - is_dir: true + path: model + path_in_project: runs/42 + id: "42" + type: artifacts + schema: + $ref: "#/components/schemas/ModelLabRunArtifactsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List Model Lab run artifacts + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}/pin: + delete: + description: Remove the pin from a Model Lab run for the current user. + operationId: UnpinModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Unpin a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Pin a Model Lab run for the current user. + operationId: PinModelLabRun + parameters: + - $ref: "#/components/parameters/ModelLabRunIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Pin a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/monitor/notification_rule: + get: + description: Returns a list of all monitor notification rules. + operationId: GetMonitorNotificationRules + parameters: + - description: The page to start paginating from. If `page` is not specified, the argument defaults to the first page. + in: query + name: page + required: false + schema: + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of rules to return per page. If `per_page` is not specified, the argument defaults to 100. + in: query + name: per_page + required: false + schema: + format: int32 + maximum: 1000 + minimum: 1 + type: integer + - description: |- + String for sort order, composed of field and sort order separated by a colon, for example `name:asc`. Supported sort directions: `asc`, `desc`. Supported fields: `name`, `created_at`. + in: query + name: sort + required: false + schema: + type: string + - description: |- + JSON-encoded filter object. Supported keys: + * `text`: Free-text query matched against rule name, tags, and recipients. + * `tags`: Array of strings. Return rules that have any of these tags. + * `recipients`: Array of strings. Return rules that have any of these recipients. + example: '{"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]}' + in: query + name: filters + required: false + schema: + type: string + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource + path is `created_by`. + in: query + name: include + required: false + schema: + example: "created_by" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + filter: + scope: "team:product" + name: A notification rule name + recipients: + - slack-test-channel + id: "00000000-0000-1234-0000-000000000000" + type: monitor-notification-rule + schema: + $ref: "#/components/schemas/MonitorNotificationRuleListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all monitor notification rules + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_read + post: + description: Creates a monitor notification rule. + operationId: CreateMonitorNotificationRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + tags: + - team:product + - host:abc + name: A notification rule name + recipients: + - slack-test-channel + - jira-test + type: monitor-notification-rule + schema: + $ref: "#/components/schemas/MonitorNotificationRuleCreateRequest" + description: Request body to create a monitor notification rule. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + scope: "team:product" + name: A notification rule name + recipients: + - slack-test-channel + id: "00000000-0000-1234-0000-000000000000" + type: monitor-notification-rule + schema: + $ref: "#/components/schemas/MonitorNotificationRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a monitor notification rule + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitor_config_policy_write + /api/v2/monitor/notification_rule/{rule_id}: + delete: + description: Deletes a monitor notification rule by `rule_id`. + operationId: DeleteMonitorNotificationRule + parameters: + - description: ID of the monitor notification rule to delete. + in: path + name: rule_id + required: true + schema: + type: string + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a monitor notification rule + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitor_config_policy_write + get: + description: Returns a monitor notification rule by `rule_id`. + operationId: GetMonitorNotificationRule + parameters: + - description: ID of the monitor notification rule to fetch. + in: path + name: rule_id + required: true + schema: + type: string + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource + path is `created_by`. + in: query + name: include + required: false + schema: + example: "created_by" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + scope: "team:product" + name: A notification rule name + recipients: + - slack-test-channel + id: "00000000-0000-1234-0000-000000000000" + type: monitor-notification-rule + schema: + $ref: "#/components/schemas/MonitorNotificationRuleResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a monitor notification rule + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_read + patch: + description: Updates a monitor notification rule by `rule_id`. + operationId: UpdateMonitorNotificationRule + parameters: + - description: ID of the monitor notification rule to update. + in: path + name: rule_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + tags: + - team:product + - host:abc + name: A notification rule name + recipients: + - slack-test-channel + - jira-test + id: 00000000-0000-1234-0000-000000000000 + type: monitor-notification-rule + schema: + $ref: "#/components/schemas/MonitorNotificationRuleUpdateRequest" + description: Request body to update the monitor notification rule. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + filter: + scope: "team:product AND host:abc" + modified: "2024-01-01T00:00:00+00:00" + name: A notification rule name + recipients: + - slack-test-channel + - jira-test + id: "00000000-0000-1234-0000-000000000000" + type: monitor-notification-rule + schema: + $ref: "#/components/schemas/MonitorNotificationRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a monitor notification rule + tags: + - Monitors + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitor_config_policy_write + /api/v2/monitor/policy: + get: + description: Get all monitor configuration policies. + operationId: ListMonitorConfigPolicies + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: "00000000-0000-1234-0000-000000000000" + type: monitor-config-policy + schema: + $ref: "#/components/schemas/MonitorConfigPolicyListResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all monitor configuration policies + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + post: + description: Create a monitor configuration policy. + operationId: CreateMonitorConfigPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + type: monitor-config-policy + schema: + $ref: "#/components/schemas/MonitorConfigPolicyCreateRequest" + description: Create a monitor configuration policy request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: "00000000-0000-1234-0000-000000000000" + type: monitor-config-policy + schema: + $ref: "#/components/schemas/MonitorConfigPolicyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a monitor configuration policy + tags: + - Monitors + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + /api/v2/monitor/policy/{policy_id}: + delete: + description: Delete a monitor configuration policy. + operationId: DeleteMonitorConfigPolicy + parameters: + - description: ID of the monitor configuration policy. + in: path + name: policy_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a monitor configuration policy + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + get: + description: Get a monitor configuration policy by `policy_id`. + operationId: GetMonitorConfigPolicy + parameters: + - description: ID of the monitor configuration policy. + in: path + name: policy_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: "00000000-0000-1234-0000-000000000000" + type: monitor-config-policy + schema: + $ref: "#/components/schemas/MonitorConfigPolicyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a monitor configuration policy + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + patch: + description: Edit a monitor configuration policy. + operationId: UpdateMonitorConfigPolicy + parameters: + - description: ID of the monitor configuration policy. + in: path + name: policy_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: 00000000-0000-1234-0000-000000000000 + type: monitor-config-policy + schema: + $ref: "#/components/schemas/MonitorConfigPolicyEditRequest" + description: Description of the update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: "00000000-0000-1234-0000-000000000000" + type: monitor-config-policy + schema: + $ref: "#/components/schemas/MonitorConfigPolicyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit a monitor configuration policy + tags: + - Monitors + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + /api/v2/monitor/template: + get: + description: Retrieve all monitor user templates. + operationId: ListMonitorUserTemplates + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: "2024-01-01T00:00:00+00:00" + description: This is a template for monitoring user activity. + modified: "2024-01-01T00:00:00+00:00" + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 1 + id: "00000000-0000-1234-0000-000000000000" + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateListResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all monitor user templates + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new monitor user template. + operationId: CreateMonitorUserTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + description: This is a template for monitoring user activity. + modified: "2024-01-01T00:00:00+00:00" + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 1 + id: "00000000-0000-1234-0000-000000000000" + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a monitor user template + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/monitor/template/validate: + post: + description: Validate the structure and content of a monitor user template. + operationId: ValidateMonitorUserTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateCreateRequest" + required: true + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Validate a monitor user template + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/monitor/template/{template_id}: + delete: + description: Delete an existing monitor user template by its ID. + operationId: DeleteMonitorUserTemplate + parameters: + - description: ID of the monitor user template. + in: path + name: template_id + required: true + schema: + type: string + responses: + "204": + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a monitor user template + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a monitor user template by its ID. + operationId: GetMonitorUserTemplate + parameters: + - description: ID of the monitor user template. + in: path + name: template_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + - description: Whether to include all versions of the template in the response in the versions field. + example: false + in: query + name: with_all_versions + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + description: This is a template for monitoring user activity. + modified: "2024-01-01T00:00:00+00:00" + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 1 + id: "00000000-0000-1234-0000-000000000000" + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a monitor user template + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitors_read + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Creates a new version of an existing monitor user template. + operationId: UpdateMonitorUserTemplate + parameters: + - description: ID of the monitor user template. + in: path + name: template_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: "2024-01-01T00:00:00+00:00" + description: This is a template for monitoring user activity. + modified: "2024-01-01T00:00:00+00:00" + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 2 + id: "00000000-0000-1234-0000-000000000000" + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a monitor user template to a new version + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/monitor/template/{template_id}/validate: + post: + description: Validate the structure and content of an existing monitor user template being updated to a new version. + operationId: ValidateExistingMonitorUserTemplate + parameters: + - description: ID of the monitor user template. + in: path + name: template_id + required: true + schema: + example: "00000000-0000-1234-0000-000000000000" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template + schema: + $ref: "#/components/schemas/MonitorUserTemplateUpdateRequest" + required: true + responses: + "204": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Validate an existing monitor user template + tags: + - Monitors + "x-permission": + operator: OR + permissions: + - monitor_config_policy_write + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/monitor/{monitor_id}/downtime_matches: + get: + description: Get all active downtimes for the specified monitor. + operationId: ListMonitorDowntimes + parameters: + - description: The id of the monitor. + in: path + name: monitor_id + required: true + schema: + format: int64 + type: integer + - $ref: "#/components/parameters/PageOffset" + - description: Maximum number of downtimes in the response. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 30 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + end: "2024-01-01T01:00:00+00:00" + groups: + - service:postgres + scope: env:(staging OR prod) AND datacenter:us-east-1 + start: "2024-01-01T00:00:00+00:00" + id: "00000000-0000-1234-0000-000000000000" + type: downtime_match + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/MonitorDowntimeMatchResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Monitor Not Found error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Get active downtimes for a monitor + tags: + - Downtimes + x-codegen-request-body-name: body + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + "x-permission": + operator: OR + permissions: + - monitors_downtime + /api/v2/ndm/devices: + get: + description: Get the list of devices. + operationId: ListDevices + parameters: + - $ref: "#/components/parameters/NDMPageSize" + - $ref: "#/components/parameters/NDMPageNumber" + - description: The field to sort the devices by. Defaults to `name`. + example: status + in: query + name: sort + required: false + schema: + default: name + type: string + - description: Filter devices by tag. + example: status:ok + in: query + name: filter[tag] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + device_type: other + integration: snmp + ip_address: 1.2.3.4 + name: example device + status: ok + id: foiwf7rgw38fh + type: device + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/ListDevicesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the list of devices + tags: + - Network Device Monitoring + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + /api/v2/ndm/devices/{device_id}: + get: + description: Get the device details. + operationId: GetDevice + parameters: + - description: The id of the device to fetch. + example: example:1.2.3.4 + in: path + name: device_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + device_type: other + integration: snmp + ip_address: 1.2.3.4 + model: xx-123 + name: example device + status: ok + vendor: example vendor + id: foiwf7rgw38fh + type: device + schema: + $ref: "#/components/schemas/GetDeviceResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the device details + tags: + - Network Device Monitoring + /api/v2/ndm/interfaces: + get: + description: Get the list of interfaces of the device. + operationId: GetInterfaces + parameters: + - description: The ID of the device to get interfaces from. + example: example:1.2.3.4 + in: query + name: device_id + required: true + schema: + type: string + - description: Whether to get the IP addresses of the interfaces. + example: true + in: query + name: get_ip_addresses + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: a network interface + index: 99 + mac_address: 00:00:00:00:00:00 + name: if0 + status: up + id: foiwf7rgw38fh:99 + type: interface + schema: + $ref: "#/components/schemas/GetInterfacesResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the list of interfaces of the device + tags: + - Network Device Monitoring + /api/v2/ndm/tags/devices/{device_id}: + get: + description: Get the list of tags for a device. + operationId: ListDeviceUserTags + parameters: + - description: The id of the device to fetch tags for. + example: example:1.2.3.4 + in: path + name: device_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - "tag:test" + - "tag:testbis" + id: foiwf7rgw38fh + type: tags + schema: + $ref: "#/components/schemas/ListTagsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the list of tags for a device + tags: + - Network Device Monitoring + patch: + description: Update the tags for a device. + operationId: UpdateDeviceUserTags + parameters: + - description: The id of the device to update tags for. + example: example:1.2.3.4 + in: path + name: device_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: example:1.2.3.4 + type: tags + schema: + $ref: "#/components/schemas/ListTagsResponse" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - "tag:test" + - "tag:testbis" + id: foiwf7rgw38fh + type: tags + schema: + $ref: "#/components/schemas/ListTagsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update the tags for a device + tags: + - Network Device Monitoring + /api/v2/ndm/tags/interfaces/{interface_id}: + get: + description: Returns the tags associated with the specified interface. + operationId: ListInterfaceUserTags + parameters: + - description: The ID of the interface for which to retrieve tags. + example: example:1.2.3.4:1 + in: path + name: interface_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - "tag:test" + - "tag:testbis" + id: foiwf7rgw38fh:1 + type: tags + schema: + $ref: "#/components/schemas/ListInterfaceTagsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List tags for an interface + tags: + - Network Device Monitoring + patch: + description: Updates the tags associated with the specified interface. + operationId: UpdateInterfaceUserTags + parameters: + - description: The ID of the interface for which to update tags. + example: example:1.2.3.4:1 + in: path + name: interface_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: example:1.2.3.4:1 + type: tags + schema: + $ref: "#/components/schemas/ListInterfaceTagsResponse" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - "tag:test" + - "tag:testbis" + id: foiwf7rgw38fh:1 + type: tags + schema: + $ref: "#/components/schemas/ListInterfaceTagsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update the tags for an interface + tags: + - Network Device Monitoring + /api/v2/network-health-insights: + get: + description: |- + Return network health insights for the organization within the given time window. + Insights are produced by analyzing DNS failures pre-classified by `network-dns-logger`, + TLS certificate metrics, and denied security group connections. Each insight + identifies the client and server services involved, the type of issue, and the + magnitude of the failure observed during the query window. + operationId: ListNetworkHealthInsights + parameters: + - description: |- + Unix timestamp (number of seconds since epoch) of the start of the query window. + If not provided, the start of the query window will be 15 minutes before the `to` timestamp. + If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + example: "1716800000" + in: query + name: from + required: false + schema: + type: string + - description: |- + Unix timestamp (number of seconds since epoch) of the end of the query window. + If not provided, the end of the query window will be the current time. + If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + example: "1716800900" + in: query + name: to + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + client_service: "network-logger" + dns_query: "kafka-broker.internal.domain.com" + dns_server: "cluster-dns" + failure_magnitude: 150 + failure_rate: 91 + failure_type: "nxdomain" + server_service: "kafka" + total_requests: 1200 + traffic_volume: + bytes_read: 1800000 + bytes_written: 2500000 + total_traffic: 4300000 + type: "dns" + id: "example-insight-id" + type: "network-health-insights" + - attributes: + account_id: "123456789012" + certificate_id: "arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f" + certificate_lifetime_percent: 96.7 + client_region: "us-west-2" + client_service: "N/A" + days_until_expiration: 3 + domain_name: "api.example.com" + failure_type: "expiring_soon" + loadbalancer_id: "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188" + server_region: "us-east-1" + server_service: "web-frontend" + type: "tls-cert" + id: "example-cert-insight-id" + type: "network-health-insights" + - attributes: + client_service: "web-frontend" + failure_magnitude: 85 + failure_rate: 68.5 + failure_type: "denied" + server_service: "database" + total_requests: 124 + type: "security-group" + id: "example-security-group-insight-id" + type: "network-health-insights" + schema: + $ref: "#/components/schemas/NetworkHealthInsightsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List network health insights + tags: + - Network Health Insights + x-permission: + operator: OR + permissions: + - network_health_insights_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/network/connections/aggregate: + get: + description: Get all aggregated connections. + operationId: GetAggregatedConnections + parameters: + - description: Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: from + schema: + format: int64 + type: integer + - description: Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: to + schema: + format: int64 + type: integer + - description: Comma-separated list of fields to group connections by. The maximum number of group_by(s) is 10. + in: query + name: group_by + schema: + type: string + - description: Comma-separated list of tags to filter connections by. + in: query + name: tags + schema: + type: string + - description: Free-form search query using AND/OR/NOT operators, wildcards, and parentheses. When provided, takes precedence over the `tags` parameter. + example: "(client_team:networks OR client_team:platform) AND server_service:hucklebuck" + in: query + name: query + schema: + type: string + - description: The number of connections to be returned. The maximum value is 7500. The default is 100. + in: query + name: limit + schema: + default: 100 + format: int32 + maximum: 7500 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + bytes_sent_by_client: 100 + bytes_sent_by_server: 200 + packets_sent_by_client: 10 + packets_sent_by_server: 20 + id: abc-123 + type: aggregated_connection + schema: + $ref: "#/components/schemas/SingleAggregatedConnectionResponseArray" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - network_connections_read + summary: Get all aggregated connections + tags: + - Cloud Network Monitoring + "x-permission": + operator: OR + permissions: + - network_connections_read + /api/v2/network/dns/aggregate: + get: + description: Get all aggregated DNS traffic. + operationId: GetAggregatedDns + parameters: + - description: Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: from + schema: + format: int64 + type: integer + - description: Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: to + schema: + format: int64 + type: integer + - description: Comma-separated list of fields to group DNS traffic by. The server side defaults to `network.dns_query` if unspecified. `server_ungrouped` may be used if groups are not desired. The maximum number of group_by(s) is 10. + in: query + name: group_by + schema: + type: string + - description: Comma-separated list of tags to filter DNS traffic by. + in: query + name: tags + schema: + type: string + - description: Free-form search query using AND/OR/NOT operators, wildcards, and parentheses. When provided, takes precedence over the `tags` parameter. + example: "(client_team:networks OR client_team:platform) AND server_service:hucklebuck" + in: query + name: query + schema: + type: string + - description: The number of aggregated DNS entries to be returned. The maximum value is 7500. The default is 100. + in: query + name: limit + schema: + default: 100 + format: int32 + maximum: 7500 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + group_bys: + - key: client_service + value: test-service + - key: network.dns_query + value: example.com + metrics: + - key: dns_total_requests + value: 100 + id: abc-123 + type: aggregated_dns + schema: + $ref: "#/components/schemas/SingleAggregatedDnsResponseArray" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - network_connections_read + summary: Get all aggregated DNS traffic + tags: + - Cloud Network Monitoring + "x-permission": + operator: OR + permissions: + - network_connections_read + /api/v2/oauth2/.well-known/sites: + get: + description: Retrieve the list of public OAuth2 sites available for the current environment. This endpoint is used for OAuth2 discovery and returns sites where users can authenticate. + operationId: GetOAuth2WellKnownSites + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + sites: + - datadoghq.com + - datadoghq.eu + - us5.datadoghq.com + - us3.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + id: prod + type: env + schema: + $ref: "#/components/schemas/OAuth2WellKnownSitesResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: [] + summary: Get OAuth2 well-known sites + tags: + - OAuth2 Client Public + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/oauth2/clients/{client_uuid}/scopes_restriction: + delete: + description: Delete the scopes restriction configured for the OAuth2 client. + operationId: DeleteScopesRestriction + parameters: + - $ref: "#/components/parameters/OAuthClientUUIDPathParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an OAuth2 client scopes restriction + tags: + - OAuth2 Client Public + x-permission: + operator: OR + permissions: + - org_authorized_apps_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the scopes restriction configured for the OAuth2 client. + operationId: GetScopesRestriction + parameters: + - $ref: "#/components/parameters/OAuthClientUUIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + required_permission_scopes: + scopes_restriction: + oidc_scopes: + - openid + - email + permission_scopes: + - dashboards_read + - metrics_read + id: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + type: scopes_restriction + schema: + $ref: "#/components/schemas/OAuthScopesRestrictionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an OAuth2 client scopes restriction + tags: + - OAuth2 Client Public + x-permission: + operator: OR + permissions: + - org_authorized_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create or update the scopes restriction configured for the OAuth2 client. + operationId: UpsertScopesRestriction + parameters: + - $ref: "#/components/parameters/OAuthClientUUIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + oidc_scopes: + - openid + - email + permission_scopes: + - dashboards_read + - metrics_read + type: upsert_scopes_restriction + schema: + $ref: "#/components/schemas/UpsertOAuthScopesRestrictionRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + required_permission_scopes: + scopes_restriction: + oidc_scopes: + - openid + - email + permission_scopes: + - dashboards_read + - metrics_read + id: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + type: scopes_restriction + schema: + $ref: "#/components/schemas/OAuthScopesRestrictionResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Upsert an OAuth2 client scopes restriction + tags: + - OAuth2 Client Public + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - org_authorized_apps_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/oauth2/register: + post: + description: Register an OAuth2 client using the Dynamic Client Registration protocol defined in RFC 7591. + operationId: RegisterOAuthClient + requestBody: + content: + application/json: + examples: + default: + value: + client_name: Example MCP Client + grant_types: + - authorization_code + - refresh_token + redirect_uris: + - https://example.com/oauth/callback + response_types: + - code + token_endpoint_auth_method: none + schema: + $ref: "#/components/schemas/OAuthClientRegistrationRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + client_id: 72b68208-36a6-11f0-b21b-da7ad0900002 + client_name: Example MCP Client + grant_types: + - authorization_code + - refresh_token + redirect_uris: + - https://example.com/oauth/callback + response_types: + - code + token_endpoint_auth_method: none + schema: + $ref: "#/components/schemas/OAuthClientRegistrationResponse" + description: Created + "400": + content: + application/json: + examples: + default: + value: + error: invalid_client_metadata + error_description: redirect URI is not well-formed + schema: + $ref: "#/components/schemas/OAuthClientRegistrationError" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: [] + summary: Register an OAuth2 client + tags: + - OAuth2 Client Public + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/obs-pipelines/pipelines: + get: + description: Retrieve a list of pipelines. + operationId: ListPipelines + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 00000000-0000-0000-0000-000000000001 + type: pipelines + schema: + $ref: "#/components/schemas/ListPipelinesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List pipelines + tags: + - Observability Pipelines + "x-permission": + operator: OR + permissions: + - observability_pipelines_read + post: + description: Create a new pipeline. + operationId: CreatePipeline + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + pipeline_type: logs + processor_groups: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: "*" + type: parse_json + processors: [] + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + type: pipelines + schema: + $ref: "#/components/schemas/ObservabilityPipelineSpec" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 00000000-0000-0000-0000-000000000002 + type: pipelines + schema: + $ref: "#/components/schemas/ObservabilityPipeline" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a new pipeline + tags: + - Observability Pipelines + "x-permission": + operator: OR + permissions: + - observability_pipelines_deploy + /api/v2/obs-pipelines/pipelines/validate: + post: + description: |- + Validates a pipeline configuration without creating or updating any resources. + Returns a list of validation errors, if any. + operationId: ValidatePipeline + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + pipeline_type: logs + processor_groups: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: "*" + type: parse_json + processors: [] + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + type: pipelines + schema: + $ref: "#/components/schemas/ObservabilityPipelineSpec" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + errors: [] + schema: + $ref: "#/components/schemas/ValidationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Validate an observability pipeline + tags: + - Observability Pipelines + "x-permission": + operator: OR + permissions: + - observability_pipelines_read + /api/v2/obs-pipelines/pipelines/{pipeline_id}: + delete: + description: Delete a pipeline. + operationId: DeletePipeline + parameters: + - description: The ID of the pipeline to delete. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a pipeline + tags: + - Observability Pipelines + "x-permission": + operator: OR + permissions: + - observability_pipelines_delete + get: + description: Get a specific pipeline by its ID. + operationId: GetPipeline + parameters: + - description: The ID of the pipeline to retrieve. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 00000000-0000-0000-0000-000000000003 + type: pipelines + schema: + $ref: "#/components/schemas/ObservabilityPipeline" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a specific pipeline + tags: + - Observability Pipelines + "x-permission": + operator: OR + permissions: + - observability_pipelines_read + put: + description: Update a pipeline. + operationId: UpdatePipeline + parameters: + - description: The ID of the pipeline to update. + in: path + name: pipeline_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + pipeline_type: logs + processor_groups: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: "*" + type: parse_json + processors: [] + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: pipelines + schema: + $ref: "#/components/schemas/ObservabilityPipeline" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: My Updated Pipeline + id: 00000000-0000-0000-0000-000000000004 + type: pipelines + schema: + $ref: "#/components/schemas/ObservabilityPipeline" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a pipeline + tags: + - Observability Pipelines + "x-permission": + operator: OR + permissions: + - observability_pipelines_deploy + /api/v2/on-call/escalation-policies: + post: + description: Create a new On-Call escalation policy + operationId: CreateOnCallEscalationPolicy + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - config: + schedule: + position: previous + id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + - assignment: round-robin + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-abb1-0000-0000-000000000000 + type: users + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: "#/components/schemas/EscalationPolicyCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: "#/components/schemas/EscalationPolicy" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create On-Call escalation policy + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + /api/v2/on-call/escalation-policies/{policy_id}: + delete: + description: Delete an On-Call escalation policy + operationId: DeleteOnCallEscalationPolicy + parameters: + - description: The ID of the escalation policy + in: path + name: policy_id + required: true + schema: + example: a3000000-0000-0000-0000-000000000000 + type: string + responses: + "204": + description: No Content + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete On-Call escalation policy + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + get: + description: Get an On-Call escalation policy + operationId: GetOnCallEscalationPolicy + parameters: + - description: The ID of the escalation policy + in: path + name: policy_id + required: true + schema: + example: a3000000-0000-0000-0000-000000000000 + type: string + - description: "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: "#/components/schemas/EscalationPolicy" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get On-Call escalation policy + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + put: + description: Update an On-Call escalation policy + operationId: UpdateOnCallEscalationPolicy + parameters: + - description: The ID of the escalation policy + in: path + name: policy_id + required: true + schema: + example: a3000000-0000-0000-0000-000000000000 + type: string + - description: "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: false + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + id: 00000000-aba1-0000-0000-000000000000 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + id: a3000000-0000-0000-0000-000000000000 + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: "#/components/schemas/EscalationPolicyUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: "#/components/schemas/EscalationPolicy" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update On-Call escalation policy + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + /api/v2/on-call/pages: + post: + description: |- + Trigger a new On-Call Page. + operationId: CreateOnCallPage + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Page details. + tags: + - service:test + target: + identifier: my-team + type: team_handle + title: Page title + urgency: low + type: pages + schema: + $ref: "#/components/schemas/CreatePageRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: pages + schema: + $ref: "#/components/schemas/CreatePageResponse" + description: OK. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + servers: + - url: https://{site} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + - url: "{protocol}://{name}" + variables: + name: + default: navy.oncall.datadoghq.com + description: The full DNS name of the On-Call paging endpoint. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The Datadog site where the On-Call paging endpoint is deployed. + enum: + - datadoghq.com + - datadoghq.eu + x-enum-varnames: + - DATADOGHQ_COM + - DATADOGHQ_EU + subdomain: + default: navy.oncall + description: The On-Call paging subdomain. + enum: + - lava.oncall + - saffron.oncall + - navy.oncall + - coral.oncall + - teal.oncall + - beige.oncall + - scarlet.oncall + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + summary: Create On-Call Page + tags: + - On-Call Paging + /api/v2/on-call/pages/{page_id}/acknowledge: + post: + description: |- + Acknowledges an On-Call Page. + operationId: AcknowledgeOnCallPage + parameters: + - description: The page ID. + in: path + name: page_id + required: true + schema: + example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + format: uuid + type: string + responses: + "202": + description: Accepted. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + servers: + - url: https://{site} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + - url: "{protocol}://{name}" + variables: + name: + default: navy.oncall.datadoghq.com + description: The full DNS name of the On-Call paging endpoint. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The Datadog site where the On-Call paging endpoint is deployed. + enum: + - datadoghq.com + - datadoghq.eu + x-enum-varnames: + - DATADOGHQ_COM + - DATADOGHQ_EU + subdomain: + default: navy.oncall + description: The On-Call paging subdomain. + enum: + - lava.oncall + - saffron.oncall + - navy.oncall + - coral.oncall + - teal.oncall + - beige.oncall + - scarlet.oncall + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + summary: Acknowledge On-Call Page + tags: + - On-Call Paging + /api/v2/on-call/pages/{page_id}/escalate: + post: + description: |- + Escalates an On-Call Page. + operationId: EscalateOnCallPage + parameters: + - description: The page ID. + in: path + name: page_id + required: true + schema: + example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + format: uuid + type: string + responses: + "202": + description: Accepted. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + servers: + - url: https://{site} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + - url: "{protocol}://{name}" + variables: + name: + default: navy.oncall.datadoghq.com + description: The full DNS name of the On-Call paging endpoint. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The Datadog site where the On-Call paging endpoint is deployed. + enum: + - datadoghq.com + - datadoghq.eu + x-enum-varnames: + - DATADOGHQ_COM + - DATADOGHQ_EU + subdomain: + default: navy.oncall + description: The On-Call paging subdomain. + enum: + - lava.oncall + - saffron.oncall + - navy.oncall + - coral.oncall + - teal.oncall + - beige.oncall + - scarlet.oncall + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + summary: Escalate On-Call Page + tags: + - On-Call Paging + /api/v2/on-call/pages/{page_id}/resolve: + post: + description: |- + Resolves an On-Call Page. + operationId: ResolveOnCallPage + parameters: + - description: The page ID. + in: path + name: page_id + required: true + schema: + example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + format: uuid + type: string + responses: + "202": + description: Accepted. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + servers: + - url: https://{site} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + - url: "{protocol}://{name}" + variables: + name: + default: navy.oncall.datadoghq.com + description: The full DNS name of the On-Call paging endpoint. + enum: + - lava.oncall.datadoghq.com + - saffron.oncall.datadoghq.com + - navy.oncall.datadoghq.com + - coral.oncall.datadoghq.com + - teal.oncall.datadoghq.com + - beige.oncall.datadoghq.eu + - scarlet.oncall.datadoghq.com + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The Datadog site where the On-Call paging endpoint is deployed. + enum: + - datadoghq.com + - datadoghq.eu + x-enum-varnames: + - DATADOGHQ_COM + - DATADOGHQ_EU + subdomain: + default: navy.oncall + description: The On-Call paging subdomain. + enum: + - lava.oncall + - saffron.oncall + - navy.oncall + - coral.oncall + - teal.oncall + - beige.oncall + - scarlet.oncall + x-enum-varnames: + - LAVA + - SAFFRON + - NAVY + - CORAL + - TEAL + - BEIGE + - SCARLET + summary: Resolve On-Call Page + tags: + - On-Call Paging + /api/v2/on-call/schedules: + post: + description: Create a new On-Call schedule + operationId: CreateOnCallSchedule + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`." + in: query + name: include + schema: + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + layers: + - effective_date: "2025-02-03T05:00:00Z" + end_date: "2025-12-31T00:00:00Z" + interval: + days: 1 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: "17:00:00" + start_day: monday + start_time: 09:00:00 + rotation_start: "2025-02-01T00:00:00Z" + name: On-Call Schedule + time_zone: America/New_York + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: "#/components/schemas/ScheduleCreateRequest" + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: layers + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: "#/components/schemas/Schedule" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create On-Call schedule + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + /api/v2/on-call/schedules/{schedule_id}: + delete: + description: Delete an On-Call schedule + operationId: DeleteOnCallSchedule + parameters: + - description: The ID of the schedule + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + responses: + "204": + description: No Content + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete On-Call schedule + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + get: + description: Get an On-Call schedule + operationId: GetOnCallSchedule + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`." + in: query + name: include + schema: + type: string + - description: The ID of the schedule + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: layers + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: "#/components/schemas/Schedule" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get On-Call schedule + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + put: + description: Update a new On-Call schedule + operationId: UpdateOnCallSchedule + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`." + in: query + name: include + schema: + type: string + - description: The ID of the schedule + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + layers: + - effective_date: "2025-02-03T05:00:00Z" + end_date: "2025-12-31T00:00:00Z" + interval: + seconds: 3600 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: "17:00:00" + start_day: monday + start_time: 09:00:00 + rotation_start: "2025-02-01T00:00:00Z" + name: On-Call Schedule Updated + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: "#/components/schemas/ScheduleUpdateRequest" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 00000000-0000-0000-0000-000000000001 + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000002 + type: layers + teams: + data: + - id: 00000000-0000-0000-0000-000000000003 + type: teams + type: schedules + schema: + $ref: "#/components/schemas/Schedule" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update On-Call schedule + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + /api/v2/on-call/schedules/{schedule_id}/on-call: + get: + deprecated: true + description: "Retrieves the user who is on-call for the specified schedule at a given time. This endpoint does not support schedules with multiple concurrent on-call responders at a position. Deprecated. Use `Get on-call responders for a schedule` instead." + operationId: GetScheduleOnCallUser + parameters: + - description: "Specifies related resources to include in the response as a comma-separated list. Allowed value: `user`." + in: query + name: include + schema: + type: string + - description: The ID of the schedule. + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + - description: Retrieves the on-call user at the given timestamp in RFC3339 format (for example, `2025-05-07T02:53:01Z` or `2025-05-07T02:53:01+00:00`). When using timezone offsets with `+` or `-`, ensure proper URL encoding (`+` should be encoded as `%2B`). Defaults to the current time if omitted. + in: query + name: filter[at_ts] + schema: + example: "2025-05-07T02:53:01Z" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + end: "2024-01-01T03:53:01.000000000Z" + start: "2024-01-01T02:53:01.000000000Z" + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + schema: + $ref: "#/components/schemas/Shift" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get scheduled on-call user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + x-sunset: "2027-02-01" + /api/v2/on-call/schedules/{schedule_id}/responders: + get: + description: "Retrieves the on-call responders for the specified schedule, grouped by position (previous, current, next), at a given time. Supports schedules with multiple concurrent on-call responders at a position, by returning a list of shifts per position." + operationId: GetScheduleOnCallResponders + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `schedule`, `responders`, `responders.shifts`, `responders.shifts.user`." + in: query + name: include + schema: + type: string + - description: The ID of the schedule. + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + - description: "Comma-separated list of positions to retrieve. Allowed values: `previous`, `current`, `next`. Defaults to `current` if omitted." + in: query + name: filter[position] + schema: + example: previous,current,next + type: string + - description: "Retrieves the on-call responders at the given timestamp in RFC3339 format (for example, `2025-05-07T02:53:01Z` or `2025-05-07T02:53:01+00:00`). When using timezone offsets with `+` or `-`, ensure proper URL encoding (`+` should be encoded as `%2B`). Defaults to the current time if omitted." + in: query + name: filter[at_ts] + schema: + example: "2025-05-07T02:53:01Z" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + scheduled_at: "2024-05-07T02:53:01.000000000Z" + id: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400" + relationships: + responders: + data: + - id: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current" + type: schedule_oncall_responder + schedule: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: schedules + type: schedule_oncall_responders + included: + - attributes: + position: current + id: "3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current" + relationships: + shifts: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: shifts + type: schedule_oncall_responder + - attributes: + end: "2024-05-08T02:53:01.000000000Z" + start: "2024-05-07T02:53:01.000000000Z" + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + schema: + $ref: "#/components/schemas/ScheduleOnCallResponders" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get on-call responders for a schedule + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + /api/v2/on-call/teams/{team_id}/on-call: + get: + description: Get a team's on-call users at a given time + operationId: GetTeamOnCallUsers + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `responders`, `escalations`, `escalations.responders`." + in: query + name: include + schema: + type: string + - description: The team ID + in: path + name: team_id + required: true + schema: + example: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + relationships: + escalations: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: escalation_policy_steps + responders: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + type: team_oncall_responders + schema: + $ref: "#/components/schemas/TeamOnCallResponders" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get team on-call users + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + /api/v2/on-call/teams/{team_id}/routing-rules: + get: + description: Get a team's On-Call routing rules + operationId: GetOnCallTeamRoutingRules + parameters: + - description: The team ID + in: path + name: team_id + required: true + schema: + example: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: string + - description: "Comma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: team_routing_rules + schema: + $ref: "#/components/schemas/TeamRoutingRules" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get On-Call team routing rules + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + put: + description: Set a team's On-Call routing rules + operationId: SetOnCallTeamRoutingRules + parameters: + - description: The team ID + in: path + name: team_id + required: true + schema: + example: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: string + - description: "Comma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rules: + - actions: + policy_id: "" + query: tags.service:test + time_restriction: + restrictions: + - end_day: monday + end_time: "17:00:00" + start_day: monday + start_time: 09:00:00 + - end_day: tuesday + end_time: "17:00:00" + start_day: tuesday + start_time: 09:00:00 + time_zone: "" + urgency: high + - actions: + - channel: channel + type: send_slack_message + workspace: workspace + policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 + query: "" + time_restriction: + urgency: low + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: team_routing_rules + schema: + $ref: "#/components/schemas/TeamRoutingRulesRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: team_routing_rules + schema: + $ref: "#/components/schemas/TeamRoutingRules" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Set On-Call team routing rules + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_write + /api/v2/on-call/users/{user_id}/notification-channels: + get: + description: List the notification channels for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: ListUserNotificationChannels + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + config: + address: test@example.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + schema: + $ref: "#/components/schemas/ListNotificationChannelsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List On-Call notification channels for a user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + post: + description: Create a new notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: CreateUserNotificationChannel + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + config: + address: foo@bar.com + formats: + - html + type: email + type: notification_channels + schema: + $ref: "#/components/schemas/CreateUserNotificationChannelRequest" + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + config: + address: test@example.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + schema: + $ref: "#/components/schemas/NotificationChannel" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create an On-Call notification channel for a user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_respond + /api/v2/on-call/users/{user_id}/notification-channels/{channel_id}: + delete: + description: Delete a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: DeleteUserNotificationChannel + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The channel ID + in: path + name: channel_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete an On-Call notification channel for a user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_respond + get: + description: Get a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: GetUserNotificationChannel + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The channel ID + in: path + name: channel_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + config: + address: test@example.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + schema: + $ref: "#/components/schemas/NotificationChannel" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get an On-Call notification channel for a user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + /api/v2/on-call/users/{user_id}/notification-rules: + get: + description: List the notification rules for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: ListUserNotificationRules + parameters: + - description: "Comma-separated list of included relationships to be returned. Allowed values: `channel`." + in: query + name: include + schema: + type: string + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_rules + schema: + $ref: "#/components/schemas/ListOnCallNotificationRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List On-Call notification rules for a user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_read + post: + description: Create a new notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: CreateUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: "#/components/schemas/CreateOnCallNotificationRuleRequest" + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 00000000-0000-0000-0000-000000000001 + relationships: + channel: + data: + id: 00000000-0000-0000-0000-000000000002 + type: notification_channels + type: notification_rules + schema: + $ref: "#/components/schemas/OnCallNotificationRule" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create an On-Call notification rule for a user + tags: + - On-Call + "x-permission": + operator: AND + permissions: + - on_call_respond + /api/v2/on-call/users/{user_id}/notification-rules/{rule_id}: + delete: + description: Delete a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: DeleteUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The rule ID + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete an On-Call notification rule for a user + tags: + - On-Call + "x-permission": + operator: OR + permissions: + - on_call_respond + get: + description: Get a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: GetUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The rule ID + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: "Comma-separated list of included relationships to be returned. Allowed values: `channel`." + in: query + name: include + schema: + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: "#/components/schemas/OnCallNotificationRule" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get an On-Call notification rule for a user + tags: + - On-Call + "x-permission": + operator: OR + permissions: + - on_call_read + put: + description: Update a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: UpdateUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The rule ID + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: "Comma-separated list of included relationships to be returned. Allowed values: `channel`." + in: query + name: include + schema: + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 2462ace1-49e2-aab1-xc4f-29cc4ae1105n7 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: "#/components/schemas/UpdateOnCallNotificationRuleRequest" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: "#/components/schemas/OnCallNotificationRule" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update an On-Call notification rule for a user + tags: + - On-Call + "x-permission": + operator: OR + permissions: + - on_call_read + /api/v2/org: + get: + description: Returns the current organization and its managed organizations in JSON:API format. + operationId: ListOrgs + parameters: + - description: Filter managed organizations by name. + example: "My Child Org" + in: query + name: "filter[name]" + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + relationships: + current_org: + data: + id: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + type: "orgs" + managed_orgs: + data: + - id: "a1b2c3d4-00cc-11ea-a77b-570c9d03c6c5" + type: "orgs" + type: "managed_orgs" + included: + - attributes: + created_at: "2019-09-26T17:28:28Z" + description: "Production organization." + disabled: false + modified_at: "2024-01-15T10:30:00Z" + name: "My Organization" + public_id: "abcdef12345" + sharing: "none" + url: "https://app.datadoghq.com/account/my-org" + id: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + type: "orgs" + - attributes: + created_at: "2020-05-10T12:00:00Z" + description: "Child organization." + disabled: false + modified_at: "2024-06-20T08:15:00Z" + name: "My Child Org" + public_id: "ghijkl67890" + sharing: "none" + url: "https://app.datadoghq.com/account/my-child-org" + id: "a1b2c3d4-00cc-11ea-a77b-570c9d03c6c5" + type: "orgs" + schema: + $ref: "#/components/schemas/ManagedOrgsResponse" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + - org_connections_write + summary: List your managed organizations + tags: + - Organizations + "x-permission": + operator: OR + permissions: + - org_management + - org_connections_write + /api/v2/org/disable: + post: + description: |- + Disable the Datadog organization associated with the authenticated user or API key. + The request body uses JSON:API format. If `org_uuid` is supplied, it must match + the authenticated org or the request is rejected. Successful calls disable the org + and return the resulting state from the downstream service. Requires the + `org_management` permission. + operationId: DisableCustomerOrg + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + org_uuid: "abcdef01-2345-6789-abcd-ef0123456789" + id: "1" + type: "customer_org_disable" + schema: + $ref: "#/components/schemas/CustomerOrgDisableRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + status: "disabled" + id: "abcdef01-2345-6789-abcd-ef0123456789" + type: "org_disable" + schema: + $ref: "#/components/schemas/CustomerOrgDisableResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Disable the authenticated customer organization + tags: + - Customer Org + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org/saml_configurations: + patch: + description: |- + Update the SAML preferences for the current organization. + + Use this endpoint to set the just-in-time (JIT) provisioning domains and the default role + assigned to just-in-time provisioned users. + operationId: UpdateOrgSamlConfigurations + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + default_role_uuids: + - 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + jit_domains: + - example.com + type: saml_preferences + schema: + $ref: "#/components/schemas/OrgSAMLPreferencesUpdateRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update organization SAML preferences + tags: + - Organizations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_authorized_clients: + get: + description: Get a list of all OAuth2 clients authorized for the current organization. + operationId: ListOrgAuthorizedClients + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: Field to sort results by. Options include `oauth2_client.name`. + in: query + name: sort + required: false + schema: + default: oauth2_client.name + example: oauth2_client.name + type: string + - description: Filter results by client name, app title, or app description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter results by the OAuth2 client name. + in: query + name: filter[oauth2_client][name] + required: false + schema: + type: string + - description: Filter results by the org-level disabled status. + in: query + name: filter[disabled] + required: false + schema: + type: string + - description: |- + Comma-separated list of related resources to include. + Options: `oauth2_client`, `oauth2_client.app`, `user_authorized_clients.user`. + in: query + name: include + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + disabled: false + last_exercised: "2024-01-15T10:30:00+00:00" + user_count: 2 + id: "00000000-0000-0000-0000-000000000001" + relationships: + oauth2_client: + data: + id: "00000000-0000-0000-0000-000000000010" + type: oauth2_clients + user_authorized_clients: + data: + - id: "00000000-0000-0000-0000-000000000020" + type: user_authorized_clients + links: + related: "/api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients" + type: org_authorized_clients + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/OrgAuthorizedClientsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_read + summary: List org authorized clients + tags: + - Org Authorized Clients + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - org_authorized_apps_read + - manage_integrations + /api/v2/org_authorized_clients/{org_authorized_client_id}: + delete: + description: Disable an OAuth2 client authorization for the current organization, revoking access for all users. + operationId: DeleteOrgAuthorizedClient + parameters: + - $ref: "#/components/parameters/OrgAuthorizedClientId" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_write + summary: Delete an org authorized client + tags: + - Org Authorized Clients + x-permission: + operator: OR + permissions: + - org_authorized_apps_write + get: + description: Get a single OAuth2 client authorized for the current organization. + operationId: GetOrgAuthorizedClient + parameters: + - $ref: "#/components/parameters/OrgAuthorizedClientId" + - description: |- + Comma-separated list of related resources to include. + Options: `oauth2_client`, `oauth2_client.app`, `oauth2_client.scopes`, `user_authorized_clients.user`. + in: query + name: include + required: false + schema: + type: string + - description: Filter included user authorized clients by disabled status. + in: query + name: filter[user_authorized_clients][disabled] + required: false + schema: + type: string + - description: Filter included user authorized clients by user disabled status. + in: query + name: filter[user_authorized_clients][user][disabled] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + last_exercised: "2024-01-15T10:30:00+00:00" + user_count: 2 + id: "00000000-0000-0000-0000-000000000001" + relationships: + oauth2_client: + data: + id: "00000000-0000-0000-0000-000000000010" + type: oauth2_clients + user_authorized_clients: + data: + - id: "00000000-0000-0000-0000-000000000020" + type: user_authorized_clients + links: + related: "/api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients" + type: org_authorized_clients + schema: + $ref: "#/components/schemas/OrgAuthorizedClientResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_read + summary: Get an org authorized client + tags: + - Org Authorized Clients + x-permission: + operator: OR + permissions: + - org_authorized_apps_read + patch: + description: Enable or disable an OAuth2 client authorization for the current organization. + operationId: UpdateOrgAuthorizedClient + parameters: + - $ref: "#/components/parameters/OrgAuthorizedClientId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: true + id: "00000000-0000-0000-0000-000000000001" + type: org_authorized_clients + schema: + $ref: "#/components/schemas/OrgAuthorizedClientUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: true + last_exercised: "2024-01-15T10:30:00+00:00" + user_count: 2 + id: "00000000-0000-0000-0000-000000000001" + relationships: + oauth2_client: + data: + id: "00000000-0000-0000-0000-000000000010" + type: oauth2_clients + user_authorized_clients: + data: [] + links: + related: "/api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients" + type: org_authorized_clients + schema: + $ref: "#/components/schemas/OrgAuthorizedClientResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_write + summary: Update an org authorized client + tags: + - Org Authorized Clients + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - org_authorized_apps_write + /api/v2/org_authorized_clients/{org_authorized_client_id}/user/{user_id}: + delete: + description: Disable all authorizations for a specific user for the specified OAuth2 client in the current organization. + operationId: DeleteOrgAuthorizedClientAllUserAuthorizations + parameters: + - $ref: "#/components/parameters/OrgAuthorizedClientId" + - $ref: "#/components/parameters/UserIdForOrgClient" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_write + summary: Delete a user's authorizations for a client + tags: + - Org Authorized Clients + x-permission: + operator: OR + permissions: + - org_authorized_apps_write + /api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients: + get: + description: Get a list of user authorizations for the specified OAuth2 client in the current organization. + operationId: ListOrgAuthorizedClientUserAuthorizations + parameters: + - $ref: "#/components/parameters/OrgAuthorizedClientId" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: "Field to sort results by. Options: `user.name`, `user.email`, `oauth2_client.name`." + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/OrgAuthorizedClientUserAuthorizationsSort" + - description: Filter results by the user authorization disabled status. + in: query + name: filter[disabled] + required: false + schema: + type: string + - description: Filter results by user name. + in: query + name: filter[user][name] + required: false + schema: + type: string + - description: Filter results by user email. + in: query + name: filter[user][email] + required: false + schema: + type: string + - description: Filter results by whether the user is disabled. + in: query + name: filter[user][disabled] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-10T08:00:00+00:00" + disabled: false + last_exercised: "2024-01-15T10:30:00+00:00" + modified_at: "2024-01-10T08:00:00+00:00" + org_disabled: false + id: "00000000-0000-0000-0000-000000000020" + relationships: + oauth2_client: + data: + id: "00000000-0000-0000-0000-000000000010" + type: oauth2_clients + scopes: + data: + - id: "example_scope" + type: scopes + user: + data: + id: "00000000-0000-9999-0000-000000000001" + type: users + type: user_authorized_clients + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/UserAuthorizedClientsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_read + summary: List user authorizations for a client + tags: + - Org Authorized Clients + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - org_authorized_apps_read + /api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients/{user_authorized_client_id}: + delete: + description: Disable a specific user authorization for the specified OAuth2 client in the current organization. + operationId: DeleteOrgAuthorizedClientUserAuthorization + parameters: + - $ref: "#/components/parameters/OrgAuthorizedClientId" + - $ref: "#/components/parameters/UserAuthorizedClientIdForOrg" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_authorized_apps_write + summary: Delete a user authorization for a client + tags: + - Org Authorized Clients + x-permission: + operator: OR + permissions: + - org_authorized_apps_write + /api/v2/org_configs: + get: + description: Returns all Org Configs (name, description, and value). + operationId: ListOrgConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Example org config description + name: monitor_timezone + value: UTC + value_type: bool + id: abcd1234 + type: org_configs + schema: + $ref: "#/components/schemas/OrgConfigListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Org Configs + tags: [Organizations] + "x-permission": + operator: OPEN + permissions: [] + /api/v2/org_configs/{org_config_name}: + get: + description: Return the name, description, and value of a specific Org Config. + operationId: GetOrgConfig + parameters: + - $ref: "#/components/parameters/OrgConfigName" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Example org config description + name: monitor_timezone + value: UTC + value_type: bool + id: abcd1234 + type: org_configs + schema: + $ref: "#/components/schemas/OrgConfigGetResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a specific Org Config value + tags: [Organizations] + "x-permission": + operator: OPEN + permissions: [] + patch: + description: Update the value of a specific Org Config. + operationId: UpdateOrgConfig + parameters: + - $ref: "#/components/parameters/OrgConfigName" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + value: UTC + type: org_configs + schema: + $ref: "#/components/schemas/OrgConfigWriteRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Example org config description + name: monitor_timezone + value: UTC + value_type: bool + id: abcd1234 + type: org_configs + schema: + $ref: "#/components/schemas/OrgConfigGetResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a specific Org Config + tags: [Organizations] + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/org_connections: + get: + description: Returns a list of org connections. + operationId: ListOrgConnections + parameters: + - description: The Org ID of the sink org. + example: "0879ce27-29a1-481f-a12e-bc2a48ec9ae1" + in: query + name: sink_org_id + required: false + schema: + type: string + - description: The Org ID of the source org. + example: "0879ce27-29a1-481f-a12e-bc2a48ec9ae1" + in: query + name: source_org_id + required: false + schema: + type: string + - description: The limit of number of entries you want to return. Default is 1000. + example: 1000 + in: query + name: limit + required: false + schema: + format: int64 + type: integer + - description: The pagination offset which you want to query from. Default is 0. + example: 0 + in: query + name: offset + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + connection_types: + - logs + created_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000001 + relationships: {} + type: org_connection + schema: + $ref: "#/components/schemas/OrgConnectionListResponse" + description: OK + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_connections_read + summary: List Org Connections + tags: ["Org Connections"] + "x-permission": + operator: OR + permissions: + - org_connections_read + post: + description: Create a new org connection between the current org and a target org. + operationId: CreateOrgConnections + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + relationships: + sink_org: + data: + id: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + name: Example Org + type: orgs + type: org_connection + schema: + $ref: "#/components/schemas/OrgConnectionCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + created_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000002 + relationships: {} + type: org_connection + schema: + $ref: "#/components/schemas/OrgConnectionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_connections_write + summary: Create Org Connection + tags: ["Org Connections"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_connections_write + /api/v2/org_connections/{connection_id}: + delete: + description: Delete an existing org connection. + operationId: DeleteOrgConnections + parameters: + - $ref: "#/components/parameters/OrgConnectionId" + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_connections_write + summary: Delete Org Connection + tags: ["Org Connections"] + "x-permission": + operator: OR + permissions: + - org_connections_write + patch: + description: Update an existing org connection. + operationId: UpdateOrgConnections + parameters: + - $ref: "#/components/parameters/OrgConnectionId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + - metrics + id: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + type: org_connection + schema: + $ref: "#/components/schemas/OrgConnectionUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + - metrics + created_at: "2024-01-01T00:00:00+00:00" + id: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + type: org_connection + schema: + $ref: "#/components/schemas/OrgConnectionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_connections_write + summary: Update Org Connection + tags: ["Org Connections"] + "x-permission": + operator: OR + permissions: + - org_connections_write + /api/v2/org_group_memberships: + get: + description: >- + List organization group memberships. Filter by org group ID or org UUID. At least one of `filter[org_group_id]` or `filter[org_uuid]` must be provided. When filtering by org UUID, returns a single-item list with the membership for that org. + operationId: ListOrgGroupMemberships + parameters: + - $ref: "#/components/parameters/OrgGroupMembershipFilterOrgGroupId" + - $ref: "#/components/parameters/OrgGroupMembershipFilterOrgUuid" + - $ref: "#/components/parameters/OrgGroupPageNumber" + - $ref: "#/components/parameters/OrgGroupPageSize" + - $ref: "#/components/parameters/MembershipSort" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + org_name: "Acme Corp" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_memberships + links: + first: "https://api.datadoghq.com/api/v2/org_group_memberships?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + last: "https://api.datadoghq.com/api/v2/org_group_memberships?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + next: + prev: + self: "https://api.datadoghq.com/api/v2/org_group_memberships?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + meta: + page: + first_number: 0 + last_number: 0 + next_number: + number: 0 + prev_number: + size: 50 + total: 1 + type: number_size + schema: + $ref: "#/components/schemas/OrgGroupMembershipListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List org group memberships + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_memberships/bulk: + patch: + description: >- + Move a batch of organizations from one org group to another. This is an atomic operation. Maximum 100 orgs per request. + operationId: BulkUpdateOrgGroupMemberships + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + orgs: + - org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + relationships: + source_org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + target_org_group: + data: + id: "d4e5f6a7-b890-1234-cdef-567890abcdef" + type: org_groups + type: org_group_membership_bulk_updates + schema: + $ref: "#/components/schemas/OrgGroupMembershipBulkUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-16T14:00:00Z" + org_name: "Acme Corp" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + relationships: + org_group: + data: + id: "d4e5f6a7-b890-1234-cdef-567890abcdef" + type: org_groups + type: org_group_memberships + schema: + $ref: "#/components/schemas/OrgGroupMembershipListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Bulk update org group memberships + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_memberships/{org_group_membership_id}: + get: + description: Get a specific organization group membership by its ID. + operationId: GetOrgGroupMembership + parameters: + - $ref: "#/components/parameters/OrgGroupMembershipId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + org_name: "Acme Corp" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_memberships + schema: + $ref: "#/components/schemas/OrgGroupMembershipResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an org group membership + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Move an organization to a different org group by updating its membership. + operationId: UpdateOrgGroupMembership + parameters: + - $ref: "#/components/parameters/OrgGroupMembershipId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_memberships + schema: + $ref: "#/components/schemas/OrgGroupMembershipUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-16T14:00:00Z" + org_name: "Acme Corp" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "f1e2d3c4-b5a6-7890-1234-567890abcdef" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_memberships + schema: + $ref: "#/components/schemas/OrgGroupMembershipResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an org group membership + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policies: + get: + description: List policies for an organization group. Requires a filter on org group ID. + operationId: ListOrgGroupPolicies + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyFilterOrgGroupId" + - $ref: "#/components/parameters/OrgGroupPolicyFilterPolicyName" + - $ref: "#/components/parameters/OrgGroupPageNumber" + - $ref: "#/components/parameters/OrgGroupPageSize" + - $ref: "#/components/parameters/PolicySort" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + content: + value: "UTC" + enforcement_tier: "OVERRIDE_ALLOWED" + modified_at: "2024-01-15T10:30:00Z" + policy_name: "monitor_timezone" + policy_type: "org_config" + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_policies + links: + first: "https://api.datadoghq.com/api/v2/org_group_policies?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + last: "https://api.datadoghq.com/api/v2/org_group_policies?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + next: + prev: + self: "https://api.datadoghq.com/api/v2/org_group_policies?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + meta: + page: + first_number: 0 + last_number: 0 + next_number: + number: 0 + prev_number: + size: 50 + total: 1 + type: number_size + schema: + $ref: "#/components/schemas/OrgGroupPolicyListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List org group policies + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new policy for an organization group. + operationId: CreateOrgGroupPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: "UTC" + enforcement_tier: "OVERRIDE_ALLOWED" + policy_name: "monitor_timezone" + policy_type: "org_config" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_policies + schema: + $ref: "#/components/schemas/OrgGroupPolicyCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: "UTC" + enforcement_tier: "OVERRIDE_ALLOWED" + modified_at: "2024-01-15T10:30:00Z" + policy_name: "monitor_timezone" + policy_type: "org_config" + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_policies + schema: + $ref: "#/components/schemas/OrgGroupPolicyResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an org group policy + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policies/{org_group_policy_id}: + delete: + description: Delete an organization group policy by its ID. + operationId: DeleteOrgGroupPolicy + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyId" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an org group policy + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a specific organization group policy by its ID. + operationId: GetOrgGroupPolicy + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: "UTC" + enforcement_tier: "OVERRIDE_ALLOWED" + modified_at: "2024-01-15T10:30:00Z" + policy_name: "monitor_timezone" + policy_type: "org_config" + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_policies + schema: + $ref: "#/components/schemas/OrgGroupPolicyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an org group policy + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing organization group policy. + operationId: UpdateOrgGroupPolicy + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: "US/Eastern" + enforcement_tier: "GROUP_MANAGED" + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: org_group_policies + schema: + $ref: "#/components/schemas/OrgGroupPolicyUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: "US/Eastern" + enforcement_tier: "GROUP_MANAGED" + modified_at: "2024-01-16T14:00:00Z" + policy_name: "monitor_timezone" + policy_type: "org_config" + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_policies + schema: + $ref: "#/components/schemas/OrgGroupPolicyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an org group policy + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_configs: + get: + description: List all org configs that are eligible to be used as organization group policies. + operationId: ListOrgGroupPolicyConfigs + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + allowed_values: ["UTC", "US/Eastern", "US/Pacific"] + default_value: "UTC" + description: "The default timezone for monitors." + name: "monitor_timezone" + value_type: "string" + id: "monitor_timezone" + type: org_group_policy_configs + schema: + $ref: "#/components/schemas/OrgGroupPolicyConfigListResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List org group policy configs + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_overrides: + get: + description: >- + List policy overrides for an organization group. Requires a filter on org group ID. Optionally filter by policy ID. + operationId: ListOrgGroupPolicyOverrides + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyOverrideFilterOrgGroupId" + - $ref: "#/components/parameters/OrgGroupPolicyOverrideFilterPolicyId" + - $ref: "#/components/parameters/OrgGroupPageNumber" + - $ref: "#/components/parameters/OrgGroupPageSize" + - $ref: "#/components/parameters/OverrideSort" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + org_group_policy: + data: + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: org_group_policies + type: org_group_policy_overrides + links: + first: "https://api.datadoghq.com/api/v2/org_group_policy_overrides?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + last: "https://api.datadoghq.com/api/v2/org_group_policy_overrides?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + next: + prev: + self: "https://api.datadoghq.com/api/v2/org_group_policy_overrides?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50" + meta: + page: + first_number: 0 + last_number: 0 + next_number: + number: 0 + prev_number: + size: 50 + total: 1 + type: number_size + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List org group policy overrides + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new policy override for an organization within an org group. + operationId: CreateOrgGroupPolicyOverride + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + org_group_policy: + data: + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: org_group_policies + type: org_group_policy_overrides + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + org_group_policy: + data: + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: org_group_policies + type: org_group_policy_overrides + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an org group policy override + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_overrides/{org_group_policy_override_id}: + delete: + description: Delete an organization group policy override by its ID. + operationId: DeleteOrgGroupPolicyOverride + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyOverrideId" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an org group policy override + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a specific organization group policy override by its ID. + operationId: GetOrgGroupPolicyOverride + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyOverrideId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + org_group_policy: + data: + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: org_group_policies + type: org_group_policy_overrides + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an org group policy override + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing organization group policy override. + operationId: UpdateOrgGroupPolicyOverride + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyOverrideId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + type: org_group_policy_overrides + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-16T14:00:00Z" + org_site: "us1" + org_uuid: "c3d4e5f6-a7b8-9012-cdef-012345678901" + id: "9f8e7d6c-5b4a-3210-fedc-ba0987654321" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + org_group_policy: + data: + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + type: org_group_policies + type: org_group_policy_overrides + schema: + $ref: "#/components/schemas/OrgGroupPolicyOverrideResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an org group policy override + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_suggestions: + get: + description: List suggested organization group policies. Requires a filter on org group ID. + operationId: ListOrgGroupPolicySuggestions + parameters: + - $ref: "#/components/parameters/OrgGroupPolicyFilterOrgGroupId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + consensus_ratio: 0.75 + policy_name: "monitor_timezone" + recommended_value: "UTC" + status: "pending" + id: "1a2b3c4d-5e6f-7890-abcd-ef0123456789" + relationships: + org_group: + data: + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + type: org_group_policy_suggestions + schema: + $ref: "#/components/schemas/OrgGroupPolicySuggestionListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List org group policy suggestions + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_groups: + get: + description: List all organization groups that the requesting organization has access to. + operationId: ListOrgGroups + parameters: + - $ref: "#/components/parameters/OrgGroupPageNumber" + - $ref: "#/components/parameters/OrgGroupPageSize" + - $ref: "#/components/parameters/OrgGroupSort" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + name: "My Org Group" + owner_org_site: "us1" + owner_org_uuid: "b2c3d4e5-f6a7-8901-bcde-f01234567890" + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + links: + first: "https://api.datadoghq.com/api/v2/org_groups?page%5Bnumber%5D=0&page%5Bsize%5D=50" + last: "https://api.datadoghq.com/api/v2/org_groups?page%5Bnumber%5D=0&page%5Bsize%5D=50" + next: + prev: + self: "https://api.datadoghq.com/api/v2/org_groups?page%5Bnumber%5D=0&page%5Bsize%5D=50" + meta: + page: + first_number: 0 + last_number: 0 + next_number: + number: 0 + prev_number: + size: 50 + total: 1 + type: number_size + schema: + $ref: "#/components/schemas/OrgGroupListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List org groups + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new organization group. + operationId: CreateOrgGroup + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: "My Org Group" + type: org_groups + schema: + $ref: "#/components/schemas/OrgGroupCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + name: "My Org Group" + owner_org_site: "us1" + owner_org_uuid: "b2c3d4e5-f6a7-8901-bcde-f01234567890" + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + schema: + $ref: "#/components/schemas/OrgGroupResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an org group + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_groups/{org_group_id}: + delete: + description: Delete an organization group by its ID. + operationId: DeleteOrgGroup + parameters: + - $ref: "#/components/parameters/OrgGroupId" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an org group + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a specific organization group by its ID. + operationId: GetOrgGroup + parameters: + - $ref: "#/components/parameters/OrgGroupId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-15T10:30:00Z" + name: "My Org Group" + owner_org_site: "us1" + owner_org_uuid: "b2c3d4e5-f6a7-8901-bcde-f01234567890" + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + schema: + $ref: "#/components/schemas/OrgGroupResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an org group + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the name of an existing organization group. + operationId: UpdateOrgGroup + parameters: + - $ref: "#/components/parameters/OrgGroupId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: "Updated Org Group Name" + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + schema: + $ref: "#/components/schemas/OrgGroupUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + modified_at: "2024-01-16T14:00:00Z" + name: "Updated Org Group Name" + owner_org_site: "us1" + owner_org_uuid: "b2c3d4e5-f6a7-8901-bcde-f01234567890" + id: "a1b2c3d4-e5f6-7890-abcd-ef0123456789" + type: org_groups + schema: + $ref: "#/components/schemas/OrgGroupResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an org group + tags: [Org Groups] + "x-permission": + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/permissions: + get: + description: |- + Returns a list of all permissions, including name, description, and ID. + operationId: ListPermissions + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Full access to all resources. + display_name: Admin + group_name: General + name: admin + restricted: false + id: 00000000-0000-0000-0000-000000000001 + type: permissions + schema: + $ref: "#/components/schemas/PermissionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List permissions + tags: + - Roles + "x-permission": + operator: OR + permissions: + - user_access_read + /api/v2/personal_access_tokens: + get: + description: List all access tokens for the organization. + operationId: ListPersonalAccessTokens + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/PersonalAccessTokensSortParameter" + - $ref: "#/components/parameters/PersonalAccessTokensFilterParameter" + - $ref: "#/components/parameters/PersonalAccessTokensFilterOwnerIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000002 + type: personal_access_tokens + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/ListPersonalAccessTokensResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all access tokens + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - user_app_keys + - org_app_keys_read + post: + description: Create a personal access token for the current user. + operationId: CreatePersonalAccessToken + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + expires_at: "2025-12-31T23:59:59+00:00" + name: My Personal Access Token + scopes: + - dashboards_read + - dashboards_write + type: personal_access_tokens + schema: + $ref: "#/components/schemas/PersonalAccessTokenCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + key: "" + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000001 + type: personal_access_tokens + schema: + $ref: "#/components/schemas/PersonalAccessTokenCreateResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a personal access token + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_app_keys + /api/v2/personal_access_tokens/{token_id}: + delete: + description: Revoke a specific personal access token. + operationId: RevokePersonalAccessToken + parameters: + - $ref: "#/components/parameters/AccessTokenID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Revoke a personal access token + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - user_app_keys + - org_app_keys_write + get: + description: Get a specific personal access token by its ID. + operationId: GetPersonalAccessToken + parameters: + - $ref: "#/components/parameters/AccessTokenID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000003 + type: personal_access_tokens + schema: + $ref: "#/components/schemas/PersonalAccessTokenResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a personal access token + tags: + - Key Management + "x-permission": + operator: OR + permissions: + - user_app_keys + - org_app_keys_read + patch: + description: Update a specific personal access token. + operationId: UpdatePersonalAccessToken + parameters: + - $ref: "#/components/parameters/AccessTokenID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated Personal Access Token + scopes: + - dashboards_read + - dashboards_write + id: 00112233-4455-6677-8899-aabbccddeeff + type: personal_access_tokens + schema: + $ref: "#/components/schemas/PersonalAccessTokenUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000004 + type: personal_access_tokens + schema: + $ref: "#/components/schemas/PersonalAccessTokenResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a personal access token + tags: + - Key Management + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_app_keys + - org_app_keys_write + /api/v2/posture_management/findings: + get: + description: |- + Get a list of findings. These include both misconfigurations and identity risks. + + **Note**: To filter and return only identity risks, add the following query parameter: `?filter[tags]=dd_rule_type:ciem` + + ### Filtering + + Filters can be applied by appending query parameters to the URL. + + - Using a single filter: `?filter[attribute_key]=attribute_value` + - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...` + - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2` + + Here, `attribute_key` can be any of the filter keys described further below. + + Query parameters of type `integer` support comparison operators (`>`, `>=`, `<`, `<=`). This is particularly useful when filtering by `evaluation_changed_at` or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`. + + You can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` to filter for any non-AWS resources. + + The operator must come after the equal sign. For example, to filter with the `>=` operator, add the operator after the equal sign: `filter[evaluation_changed_at]=>=1678809373257`. + + Query parameters must be only among the documented ones and with values of correct types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) are not allowed. + + ### Additional extension fields + + Additional extension fields are available for some findings. + + The data is available when you include the query parameter `?detailed_findings=true` in the request. + + The following fields are available for findings: + - `external_id`: The resource external ID related to the finding. + - `description`: The description and remediation steps for the finding. + - `datadog_link`: The Datadog relative link for the finding. + - `ip_addresses`: The list of private IP addresses for the resource related to the finding. + + ### Response + + The response includes an array of finding objects, pagination metadata, and a count of items that match the query. + + Each finding object contains the following: + + - The finding ID that can be used in a `GetFinding` request to retrieve the full finding details. + - Core attributes, including status, evaluation, high-level resource details, muted state, and rule details. + - `evaluation_changed_at` and `resource_discovery_date` time stamps. + - An array of associated tags. + operationId: ListFindings + parameters: + - description: Limit the number of findings returned. Must be <= 1000. + example: 50 + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Return findings for a given snapshot of time (Unix ms). + example: 1678721573794 + in: query + name: snapshot_timestamp + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: Return the next page of findings pointed to by the cursor. + example: "eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Return findings that have these associated tags (repeatable). + example: filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999 + in: query + name: filter[tags] + required: false + schema: + type: string + - description: "Return findings that have changed from pass to fail or vice versa on a specified date (Unix ms) or date range (using comparison operators)." + example: ">=1678721573794" + in: query + name: filter[evaluation_changed_at] + required: false + schema: + type: string + - description: Set to `true` to return findings that are muted. Set to `false` to return unmuted findings. + in: query + name: filter[muted] + required: false + schema: + type: boolean + - description: Return findings for the specified rule ID. + in: query + name: filter[rule_id] + required: false + schema: + type: string + - description: Return findings for the specified rule. + in: query + name: filter[rule_name] + required: false + schema: + type: string + - description: Return only findings for the specified resource type. + in: query + name: filter[resource_type] + required: false + schema: + type: string + - description: Return only findings for the specified resource id. + in: query + name: filter[@resource_id] + required: false + schema: + type: string + - description: "Return findings that were found on a specified date (Unix ms) or date range (using comparison operators)." + example: ">=1678721573794" + in: query + name: filter[discovery_timestamp] + required: false + schema: + type: string + - description: Return only `pass` or `fail` findings. + example: pass + in: query + name: filter[evaluation] + required: false + schema: + $ref: "#/components/schemas/FindingEvaluation" + - description: Return only findings with the specified status. + example: critical + in: query + name: filter[status] + required: false + schema: + $ref: "#/components/schemas/FindingStatus" + - description: Return findings that match the selected vulnerability types (repeatable). + example: + - misconfiguration + explode: true + in: query + name: filter[vulnerability_type] + required: false + schema: + items: + $ref: "#/components/schemas/FindingVulnerabilityType" + type: array + - description: Return additional fields for some findings. + example: + - true + in: query + name: detailed_findings + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + evaluation: fail + resource: "arn:aws:s3:::my-bucket" + resource_type: aws_s3_bucket + status: high + id: abc-123-xyz + type: finding + meta: + page: + cursor: "eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0=" + total_filtered_count: 1 + snapshot_timestamp: 1678721573794 + schema: + $ref: "#/components/schemas/ListFindingsResponse" + description: OK + "400": + $ref: "#/components/responses/FindingsBadRequestResponse" + "403": + $ref: "#/components/responses/FindingsForbiddenResponse" + "404": + $ref: "#/components/responses/FindingsNotFoundResponse" + "429": + $ref: "#/components/responses/FindingsTooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List findings + tags: + - "Security Monitoring" + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.cursor + limitParam: page[limit] + resultsPath: data + x-unstable: |- + **Note**: This endpoint uses the legacy security findings data model and is planned for deprecation. + Use the [search security findings endpoint](https://docs.datadoghq.com/api/latest/security-monitoring/#search-security-findings), + which is based on the [new security findings schema](https://docs.datadoghq.com/security/guide/findings-schema/), to search security findings. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/posture_management/findings/{finding_id}: + get: + description: Returns a single finding with message and resource configuration. + operationId: GetFinding + parameters: + - description: The ID of the finding. + in: path + name: finding_id + required: true + schema: + type: string + - description: Return the finding for a given snapshot of time (Unix ms). + example: 1678721573794 + in: query + name: snapshot_timestamp + required: false + schema: + format: int64 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + evaluation: fail + message: "## Remediation\n\n1. Go to Storage Account." + resource: my_resource_name + resource_type: azure_storage_account + status: critical + id: abc-123 + type: detailed_finding + schema: + $ref: "#/components/schemas/GetFindingResponse" + description: OK + "400": + $ref: "#/components/responses/FindingsBadRequestResponse" + "403": + $ref: "#/components/responses/FindingsForbiddenResponse" + "404": + $ref: "#/components/responses/FindingsNotFoundResponse" + "429": + $ref: "#/components/responses/FindingsTooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get a finding + tags: + - "Security Monitoring" + x-unstable: |- + **Note**: This endpoint uses the legacy security findings data model and is planned for deprecation. + Use the [search security findings endpoint](https://docs.datadoghq.com/api/latest/security-monitoring/#search-security-findings), + which is based on the [new security findings schema](https://docs.datadoghq.com/security/guide/findings-schema/), to search security findings. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/powerpacks: + get: + description: Get a list of all powerpacks. + operationId: ListPowerpacks + parameters: + - description: Maximum number of powerpacks in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 25 + format: int64 + maximum: 1000 + type: integer + - $ref: "#/components/parameters/PageOffset" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + y: 0 + name: Sample Powerpack + tags: + - "tag:foo1" + id: 00000000-0000-0000-0000-000000000001 + type: powerpack + schema: + $ref: "#/components/schemas/ListPowerpacksResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get all powerpacks + tags: + - Powerpack + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + "x-permission": + operator: OR + permissions: + - dashboards_read + post: + description: Create a powerpack. + operationId: CreatePowerpack + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + show_title: true + title: Sample Powerpack + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + y: 0 + layout: + height: 0 + width: 0 + x: 0 + y: 0 + live_span: 5m + name: Sample Powerpack + tags: + - tag:foo1 + template_variables: + - defaults: + - "*" + name: test + relationships: + author: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + type: powerpack + schema: + $ref: "#/components/schemas/Powerpack" + description: Create a powerpack request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000002 + type: powerpack + schema: + $ref: "#/components/schemas/PowerpackResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Create a new powerpack + tags: + - Powerpack + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + /api/v2/powerpacks/{powerpack_id}: + delete: + description: Delete a powerpack. + operationId: DeletePowerpack + parameters: + - description: Powerpack id + in: path + name: powerpack_id + required: true + schema: + type: string + responses: + "204": + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Powerpack Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete a powerpack + tags: + - Powerpack + "x-permission": + operator: OR + permissions: + - dashboards_write + get: + description: Get a powerpack. + operationId: GetPowerpack + parameters: + - description: ID of the powerpack. + in: path + name: powerpack_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + y: 0 + name: Sample Powerpack + tags: + - "tag:foo1" + id: 00000000-0000-0000-0000-000000000003 + type: powerpack + schema: + $ref: "#/components/schemas/PowerpackResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Powerpack Not Found. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a Powerpack + tags: + - Powerpack + "x-permission": + operator: OR + permissions: + - dashboards_read + patch: + description: Update a powerpack. + operationId: UpdatePowerpack + parameters: + - description: ID of the powerpack. + in: path + name: powerpack_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + show_title: true + title: Sample Powerpack + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + y: 0 + layout: + height: 0 + width: 0 + x: 0 + y: 0 + live_span: 5m + name: Sample Powerpack + tags: + - tag:foo1 + template_variables: + - defaults: + - "*" + name: test + relationships: + author: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + type: powerpack + schema: + $ref: "#/components/schemas/Powerpack" + description: Update a powerpack request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + y: 0 + name: Sample Powerpack + tags: + - "tag:foo1" + id: 00000000-0000-0000-0000-000000000004 + type: powerpack + schema: + $ref: "#/components/schemas/PowerpackResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Powerpack Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Update a powerpack + tags: + - Powerpack + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - dashboards_write + /api/v2/processes: + get: + description: Get all processes for your organization. + operationId: ListProcesses + parameters: + - description: String to search processes by. + in: query + name: search + required: false + schema: + type: string + - description: Comma-separated list of tags to filter processes by. + example: account:prod,user:admin + in: query + name: tags + required: false + schema: + type: string + - description: |- + Unix timestamp (number of seconds since epoch) of the start of the query window. + If not provided, the start of the query window will be 15 minutes before the `to` timestamp. If neither + `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + in: query + name: from + required: false + schema: + format: int64 + type: integer + - description: |- + Unix timestamp (number of seconds since epoch) of the end of the query window. + If not provided, the end of the query window will be 15 minutes after the `from` timestamp. If neither + `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + in: query + name: to + required: false + schema: + format: int64 + type: integer + - description: Maximum number of results returned. + in: query + name: page[limit] + required: false + schema: + default: 1000 + format: int32 + maximum: 10000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.page.after`. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cmdline: /usr/bin/python3 + host: my-host + pid: 123 + id: abc-123 + type: process + schema: + $ref: "#/components/schemas/ProcessSummariesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get all processes + tags: + - Processes + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OPEN + permissions: [] + /api/v2/prodlytics: + post: + description: |- + Send server-side events to Product Analytics. Server-side events are retained for 15 months. + + Server-Side events in Product Analytics are helpful for tracking events that occur on the server, + as opposed to client-side events, which are captured by Real User Monitoring (RUM) SDKs. + This allows for a more comprehensive view of the user journey by including actions that happen on the server. + Typical examples could be `checkout.completed` or `payment.processed`. + + Ingested server-side events are integrated into Product Analytics to allow users to select and filter + these events in the event picker, similar to how views or actions are handled. + + **Requirements:** + - At least one of `usr`, `account`, or `session` must be provided with a valid ID. + - The `application.id` must reference a Product Analytics-enabled application. + + **Custom Attributes:** + Any additional fields in the payload are flattened and searchable as facets. + For example, a payload with `{"customer": {"tier": "premium"}}` is searchable with + the syntax `@customer.tier:premium` in Datadog. + + The status codes answered by the HTTP API are: + - 202: Accepted: The request has been accepted for processing + - 400: Bad request (likely an issue in the payload formatting) + - 401: Unauthorized (likely a missing API Key) + - 403: Permission issue (likely using an invalid API Key) + - 408: Request Timeout, request should be retried after some time + - 413: Payload too large (batch is above 5MB uncompressed) + - 429: Too Many Requests, request should be retried after some time + - 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time + - 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time + operationId: SubmitProductAnalyticsEvent + requestBody: + content: + application/json: + examples: + default: + value: + application: + id: 123abcde-123a-123b-1234-123456789abc + event: + name: payment.processed + type: server + usr: + id: "123" + event-with-account: + description: Send a server-side event linked to an account. + summary: Event with account ID + value: + account: + id: "account-456" + application: + id: "123abcde-123a-123b-1234-123456789abc" + event: + name: "checkout.completed" + type: "server" + event-with-custom-attributes: + description: Send a server-side event with additional custom attributes. + summary: Event with custom attributes + value: + application: + id: "123abcde-123a-123b-1234-123456789abc" + customer: + tier: "premium" + event: + name: "payment.processed" + type: "server" + usr: + id: "123" + event-with-session: + description: Send a server-side event linked to a session. + summary: Event with session ID + value: + application: + id: "123abcde-123a-123b-1234-123456789abc" + event: + name: "form.submitted" + session: + id: "session-789" + type: "server" + simple-event-with-user: + description: Send a server-side event linked to a user. + summary: Simple event with user ID + value: + application: + id: "123abcde-123a-123b-1234-123456789abc" + event: + name: "payment.processed" + type: "server" + usr: + id: "123" + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventItem" + description: Server-side event to send (JSON format). + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: {} + schema: + type: object + description: Request accepted for processing (always 202 empty JSON). + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Forbidden + "408": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Request Timeout + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Payload Too Large + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Too Many Requests + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Internal Server Error + "503": + content: + application/json: + schema: + $ref: "#/components/schemas/ProductAnalyticsServerSideEventErrors" + description: Service Unavailable + security: + - apiKeyAuth: [] + servers: + - url: https://{site} + variables: + site: + default: browser-intake-datadoghq.com + description: The intake domain for the regional site. + enum: + - browser-intake-datadoghq.com + - browser-intake-us3-datadoghq.com + - browser-intake-us5-datadoghq.com + - browser-intake-ap1-datadoghq.com + - browser-intake-ap2-datadoghq.com + - browser-intake-datadoghq.eu + x-enum-varnames: + - US1 + - US3 + - US5 + - AP1 + - AP2 + - EU1 + - url: "{protocol}://{name}" + variables: + name: + default: browser-intake-datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: Any Datadog deployment. + subdomain: + default: api + description: The subdomain where the API is deployed. + summary: Send server-side events + tags: + - Product Analytics + x-codegen-request-body-name: body + /api/v2/product-analytics/accounts/facet_info: + post: + description: Get facet information for account attributes including possible values and counts + operationId: GetAccountFacetInfo + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + schema: + $ref: "#/components/schemas/FacetInfoRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + id: facet_info_response + type: users_facet_info + schema: + $ref: "#/components/schemas/FacetInfoResponse" + description: Successful response with facet information + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get account facet info + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/accounts/query: + post: + description: Query accounts with flexible filtering by account properties + operationId: QueryAccounts + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + limit: 20 + query: plan_type:enterprise AND user_count:>100 AND subscription_status:active + select_columns: + - account_id + - account_name + - user_count + - plan_type + - subscription_status + - created_at + - mrr + - industry + sort: + field: user_count + order: DESC + wildcard_search_term: tech + id: query_account_request + type: query_account_request + schema: + $ref: "#/components/schemas/QueryAccountRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + hits: + - account_id: "123" + account_name: Example Account + plan_type: enterprise + user_count: 150 + total: 1 + id: query_response + type: query_response + schema: + $ref: "#/components/schemas/QueryResponse" + description: Successful response with account data + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query accounts + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/analytics/list: + post: + description: |- + List the individual event records matching an analytics query. + Use `columns` to choose the attributes returned on each row, `sort` to order the rows, + and `limit` to cap how many are returned. + operationId: QueryProductAnalyticsList + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1771232048460 + query: + columns: + - "@view.name" + limit: 100 + query: + data_source: product_analytics + search: + query: "@type:view" + to: 1771836848262 + type: formula_analytics_extended_list_request + schema: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + records: [] + total_count: 0 + id: abc-123 + type: list_response + schema: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List analytics events + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/analytics/scalar: + post: + description: |- + Compute scalar analytics results for Product Analytics data. + Returns aggregated values (counts, averages, percentiles) optionally grouped by facets. + operationId: QueryProductAnalyticsScalar + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1771232048460 + query: + compute: + aggregation: count + query: + data_source: product_analytics + search: + query: "@type:view" + to: 1771836848262 + type: formula_analytics_extended_request + schema: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + columns: [] + id: abc-123 + type: scalar_response + schema: + $ref: "#/components/schemas/ProductAnalyticsScalarResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute scalar analytics + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + /api/v2/product-analytics/analytics/timeseries: + post: + description: |- + Compute timeseries analytics results for Product Analytics data. + Returns time-bucketed values for charts and trend analysis. + The `compute.interval` field (milliseconds) is required for time bucketing. + operationId: QueryProductAnalyticsTimeseries + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1771232048460 + query: + compute: + aggregation: count + query: + data_source: product_analytics + search: + query: "@type:view" + to: 1771836848262 + type: formula_analytics_extended_request + schema: + $ref: "#/components/schemas/ProductAnalyticsAnalyticsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + id: abc-123 + type: timeseries_response + schema: + $ref: "#/components/schemas/ProductAnalyticsTimeseriesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute timeseries analytics + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + /api/v2/product-analytics/journey/funnel: + post: + description: |- + Compute a funnel over an ordered sequence of Product Analytics events. + Returns the per-step conversion counts, conversion rates, and elapsed times, + optionally segmented by group-by facets. + operationId: QueryProductAnalyticsJourneyFunnel + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: "@type:view @view.name:Login" + B: + data_source: product_analytics + search: + query: "@type:action @action.target.name:Submit" + to: 1756857600000 + type: journey_request + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + end_to_end_conversion_rate: 0.42 + end_to_end_elapsed_time: + avg: 9400 + max: 86400 + min: 1200 + funnel_steps: + - elapsed_time_to_next_step: + avg: 5100 + max: 42000 + min: 900 + groups: [] + label: A + unit: millisecond + value: 1200 + initial_count: 1200 + id: 00000000-0000-0000-0000-000000000000 + type: funnel_response + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyFunnelResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute journey funnel analysis + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/journey/list: + post: + description: |- + Return the individual sessions that reached, or dropped off at, a given step of the journey. + Each row contains the identity join key, the event timestamp, and the columns requested + in `entity_columns`. + operationId: QueryProductAnalyticsJourneyList + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + entity_columns: + - "@usr.name" + limit: 50 + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: "@type:view @view.name:Login" + B: + data_source: product_analytics + search: + query: "@type:action @action.target.name:Submit" + to: 1756857600000 + type: journey_list_request + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyListRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + entity: session + records: + - "@session.id": 00000000-0000-0000-0000-000000000001 + "@usr.name": Jane Doe + timestamp: 1756425600000 + total_count: 231 + id: 00000000-0000-0000-0000-000000000000 + type: journey_list_response + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List journey entities + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/journey/scalar: + post: + description: |- + Compute scalar results for a journey query, such as the conversion count, + the conversion rate, or the time to convert, optionally segmented by group-by facets. + operationId: QueryProductAnalyticsJourneyScalar + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: __dd.conversion_rate + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: "@type:view @view.name:Login" + B: + data_source: product_analytics + search: + query: "@type:action @action.target.name:Submit" + to: 1756857600000 + type: formula_journey_request + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + columns: [] + id: 00000000-0000-0000-0000-000000000000 + type: journey_scalar_response + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyScalarResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute journey scalar analytics + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/journey/timeseries: + post: + description: |- + Compute timeseries results for a journey query. + Returns one series per group-by combination, bucketed by the requested interval. + operationId: QueryProductAnalyticsJourneyTimeseries + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + interval: 3600000 + query: + compute: + aggregation: count + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: "@type:view @view.name:Login" + B: + data_source: product_analytics + search: + query: "@type:action @action.target.name:Submit" + to: 1756857600000 + type: formula_journey_request + schema: + $ref: "#/components/schemas/ProductAnalyticsFormulaJourneyRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + id: 00000000-0000-0000-0000-000000000000 + type: journey_timeseries_response + schema: + $ref: "#/components/schemas/ProductAnalyticsJourneyTimeseriesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute journey timeseries analytics + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/grid: + post: + description: |- + Compute a retention grid, showing how much of each cohort came back over each subsequent period. + Rows are cohorts, columns are return periods, and each cell holds the count and rate of entities that returned. + operationId: QueryProductAnalyticsRetentionGrid + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: "__dd.retention_rate" + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:Signup" + time_interval: + type: calendar + value: + alignment: monday + quantity: 1 + timezone: UTC + type: week + retention_entity: "@usr.id" + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view" + to: 1756857600000 + type: retention_grid_request + schema: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridRequest" + description: The retention grid query. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cohorts: [] + retention_entity: "@usr.id" + retention_periods: [] + id: 00000000-0000-0000-0000-000000000000 + type: retention_grid_response + schema: + $ref: "#/components/schemas/ProductAnalyticsRetentionGridResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute a retention grid + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/list: + post: + description: |- + List the individual users or accounts counted in one cell of the retention grid. + Set `computation_scope` to the cohort and return period you want to examine. + operationId: QueryProductAnalyticsRetentionList + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + columns: + - field: + path: "@usr.email" + computation_scope: + cohort_target: + type: index + value: 0 + return_period_target: + type: index + value: 1 + type: cell + limit: 100 + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:Signup" + time_interval: + type: calendar + value: + quantity: 1 + type: week + retention_entity: "@usr.id" + return_condition: conversion_on_or_after + to: 1756857600000 + type: retention_list_request + schema: + $ref: "#/components/schemas/ProductAnalyticsRetentionListRequest" + description: The retention list query. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + records: [] + retention_entity: "@usr.id" + id: 00000000-0000-0000-0000-000000000000 + type: retention_list_response + schema: + $ref: "#/components/schemas/ProductAnalyticsRetentionListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List the entities behind a retention cell + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/scalar: + post: + description: Compute retention as a single value per group, suitable for a query value or top list widget. + operationId: QueryProductAnalyticsRetentionScalar + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: "__dd.retention_rate" + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:Signup" + time_interval: + type: calendar + value: + alignment: monday + quantity: 1 + timezone: UTC + type: week + retention_entity: "@usr.id" + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view" + to: 1756857600000 + type: formula_retention_request + schema: + $ref: "#/components/schemas/ProductAnalyticsFormulaRetentionRequest" + description: The retention scalar query. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + columns: [] + type: scalar_response + schema: + $ref: "#/components/schemas/ProductAnalyticsScalarResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute retention scalar values + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/timeseries: + post: + description: |- + Compute retention as a series of values over time, using the same query definition as the + retention grid. + operationId: QueryProductAnalyticsRetentionTimeseries + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: "__dd.retention_rate" + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view @view.name:Signup" + time_interval: + type: calendar + value: + alignment: monday + quantity: 1 + timezone: UTC + type: week + retention_entity: "@usr.id" + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: "@type:view" + to: 1756857600000 + type: formula_retention_request + schema: + $ref: "#/components/schemas/ProductAnalyticsFormulaRetentionRequest" + description: The retention timeseries query. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + type: timeseries_response + schema: + $ref: "#/components/schemas/ProductAnalyticsTimeseriesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute retention timeseries + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/sankey: + post: + description: |- + Compute a Sankey diagram of how sessions flow between the values of two facets, + showing where users continue and where they drop off at each step. + operationId: QueryProductAnalyticsSankey + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + definition: + entries_per_step: 10 + number_of_steps: 3 + source: "@view.name" + target: "@view.name" + search: + query: "@type:view" + time: + from: 1756425600000 + to: 1756857600000 + type: sankey_request + schema: + $ref: "#/components/schemas/ProductAnalyticsSankeyRequest" + description: The Sankey diagram query. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + links: [] + nodes: [] + id: 00000000-0000-0000-0000-000000000000 + type: sankey_response + schema: + $ref: "#/components/schemas/ProductAnalyticsSankeyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Compute a Sankey diagram + tags: + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/users/event_filtered_query: + post: + description: Query users filtered by both user properties and event platform data + operationId: QueryEventFilteredUsers + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + event_query: + query: "@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform" + time_frame: + end: 1761309676 + start: 1760100076 + include_row_count: true + limit: 25 + query: user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - first_country_code + - first_browser_name + - events_count + - session_count + - error_count + - avg_loading_time + id: query_event_filtered_users_request + type: query_event_filtered_users_request + schema: + $ref: "#/components/schemas/QueryEventFilteredUsersRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + hits: + - first_browser_name: Chrome + first_country_code: US + user_email: test@example.com + user_id: "123" + total: 1 + id: query_response + type: query_response + schema: + $ref: "#/components/schemas/QueryResponse" + description: Successful response with filtered user data + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query event filtered users + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/users/facet_info: + post: + description: Get facet information for user attributes including possible values and counts + operationId: GetUserFacetInfo + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + schema: + $ref: "#/components/schemas/FacetInfoRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + id: facet_info_response + type: users_facet_info + schema: + $ref: "#/components/schemas/FacetInfoResponse" + description: Successful response with facet information + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get user facet info + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/users/query: + post: + description: Query users with flexible filtering by user properties, with optional wildcard search + operationId: QueryUsers + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + limit: 25 + query: user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - user_name + - user_org_id + - first_country_code + - first_browser_name + - first_device_type + - last_seen + sort: + field: first_seen + order: DESC + wildcard_search_term: john + id: query_users_request + type: query_users_request + schema: + $ref: "#/components/schemas/QueryUsersRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + hits: + - user_email: test@example.com + user_id: "123" + total: 1 + id: query_response + type: query_response + schema: + $ref: "#/components/schemas/QueryResponse" + description: Successful response with user data + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query users + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/{entity}/mapping: + get: + description: Get entity mapping configuration including all available attributes and their properties + operationId: GetMapping + parameters: + - description: The entity for which to get the mapping + in: path + name: entity + required: true + schema: + example: users + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: [] + id: get_mappings_response + type: get_mappings_response + schema: + $ref: "#/components/schemas/GetMappingResponse" + description: Successful response with entity mapping configuration + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get mapping + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/{entity}/mapping/connection: + post: + description: Create a new data connection and its fields for an entity + operationId: CreateConnection + parameters: + - description: The entity for which to create the connection + in: path + name: entity + required: true + schema: + example: users + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + - description: Customer subscription tier from `CRM` + display_name: Customer Tier + id: customer_tier + source_name: subscription_tier + type: string + - description: Customer lifetime value in `USD` + display_name: Lifetime Value + id: lifetime_value + source_name: ltv + type: number + join_attribute: user_email + join_type: email + type: ref_table + id: crm-integration + type: connection_id + schema: + $ref: "#/components/schemas/CreateConnectionRequest" + required: true + responses: + "201": + description: Connection created successfully + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create connection + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + put: + description: Update an existing data connection by adding, updating, or deleting fields + operationId: UpdateConnection + parameters: + - description: The entity for which to update the connection + in: path + name: entity + required: true + schema: + example: users + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields_to_add: + - description: Net Promoter Score from customer surveys + display_name: NPS Score + groups: + - Satisfaction + - Metrics + id: nps_score + source_name: net_promoter_score + type: number + fields_to_delete: + - old_revenue_field + fields_to_update: + - field_id: lifetime_value + updated_display_name: Customer Lifetime Value (`USD`) + updated_groups: + - Financial + - Metrics + id: crm-integration + type: connection_id + schema: + $ref: "#/components/schemas/UpdateConnectionRequest" + required: true + responses: + "200": + description: Connection updated successfully + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update connection + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/{entity}/mapping/connection/{id}: + delete: + description: Delete an existing data connection for an entity + operationId: DeleteConnection + parameters: + - description: The connection ID to delete + in: path + name: id + required: true + schema: + example: connection-id-123 + type: string + - description: The entity for which to delete the connection + in: path + name: entity + required: true + schema: + example: users + type: string + responses: + "204": + description: Connection deleted successfully + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete connection + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/product-analytics/{entity}/mapping/connections: + get: + description: List all data connections for an entity + operationId: ListConnections + parameters: + - description: The entity for which to list connections + in: path + name: entity + required: true + schema: + example: users + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + connections: [] + id: list_connections_response + type: list_connections_response + schema: + $ref: "#/components/schemas/ListConnectionsResponse" + description: Successful response with list of connections + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List connections + tags: + - Rum Audience Management + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/pruned_trace/{trace_id}: + get: + description: |- + Retrieve a pruned, hierarchical view of an APM trace by its trace ID. + The trace is summarized as a tree of spans rooted at the trace root and reduced in size + to keep rendering large traces in the UI practical. + This endpoint is rate limited to `60` requests per minute per organization. + operationId: GetPrunedTraceByID + parameters: + - $ref: "#/components/parameters/TraceIDPathParameter" + - description: |- + Span ID to expand and preserve in the pruned tree even when its branch would + normally be summarized. + example: 9876543210987654321 + in: query + name: expand_span_id + required: false + schema: + format: int64 + type: integer + - description: |- + Optional Unix time hint, in seconds, used to optimize the lookup of the trace + in long-term storage. + example: 1716800000 + in: query + name: time_hint + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + - description: |- + Force the trace to be loaded from a specific source. When unset, the API picks + the source automatically. + example: driveline + in: query + name: force_source + required: false + schema: + type: string + - description: |- + Restrict the pruned tree to spans matching the given `key:value` pairs. + Values may be passed as repeated query parameters. + example: + - service:web-store + in: query + name: include_path + required: false + schema: + items: + type: string + type: array + - description: |- + Regex patterns of tag keys whose values must be included in the pruned spans. + Values may be passed as repeated query parameters. + example: + - "^http\\." + in: query + name: tag_include + required: false + schema: + items: + type: string + type: array + - description: |- + Regex patterns of tag keys whose values must be excluded from the pruned spans. + Values may be passed as repeated query parameters. + example: + - "^_dd\\." + in: query + name: tag_exclude + required: false + schema: + items: + type: string + type: array + - description: When set to `true`, only service entry spans are included in the pruned tree. + example: false + in: query + name: only_service_entry_spans + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + is_truncated: false + size_bytes: 12345 + summarized_trace: + root: + children: [] + durationSeconds: 0.5 + endTime: "2026-05-27T12:00:00.5Z" + error: 0 + hidden_child_spans_count: 0 + meta: + env: production + metrics: + http.status_code: 200 + name: web.request + parentID: 0 + resource: GET /products + service: web-store + spanID: 9876543210987654321 + span_kind: SERVER + startTime: "2026-05-27T12:00:00Z" + traceId: "0000000000000000abc1230000000000" + id: "0000000000000000abc1230000000000" + type: pruned_trace + schema: + $ref: "#/components/schemas/PrunedTraceResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "504": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Gateway Timeout + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get a pruned trace by ID + tags: + - APM Trace + x-permission: + operator: OR + permissions: + - apm_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/query/scalar: + post: + description: |- + Query scalar values (as seen on Query Value, Table, and Toplist widgets). + Multiple data sources are supported with the ability to + process the data using formulas and functions. + operationId: QueryScalarData + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + formulas: + - formula: a+b + limit: + count: 10 + from: 1568899800000 + queries: + - aggregator: avg + data_source: metrics + query: avg:system.cpu.user{*} by {env} + to: 1568923200000 + type: scalar_request + schema: + $ref: "#/components/schemas/ScalarFormulaQueryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + columns: [] + type: scalar_response + schema: + $ref: "#/components/schemas/ScalarFormulaQueryResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - timeseries_query + summary: Query scalar data across multiple products + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - timeseries_query + /api/v2/query/timeseries: + post: + description: |- + Query timeseries data across various data sources and + process the data by applying formulas and functions. Datadog recommends + using this endpoint over the v1 `/api/v1/query` endpoint for querying + timeseries data. + operationId: QueryTimeseriesData + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + formulas: + - formula: a+b + limit: + count: 10 + from: 1568899800000 + interval: 5000 + queries: + - data_source: metrics + query: avg:system.cpu.user{*} by {env} + to: 1568923200000 + type: timeseries_request + schema: + $ref: "#/components/schemas/TimeseriesFormulaQueryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + values: [] + type: timeseries_response + schema: + $ref: "#/components/schemas/TimeseriesFormulaQueryResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - timeseries_query + summary: Query timeseries data across multiple products + tags: + - Metrics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - timeseries_query + /api/v2/reference-tables/queries/batch-rows: + post: + description: Batch query reference table rows by their primary key values. Returns only found rows in the included array. + operationId: BatchRowsQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + row_ids: + - row_id_1 + - row_id_2 + table_id: 00000000-0000-0000-0000-000000000000 + type: reference-tables-batch-rows-query + happy_path: + summary: Batch query reference table rows by their primary key values. + value: + data: + attributes: + row_ids: + - "row_id_1" + - "row_id_2" + table_id: 00000000-0000-0000-0000-000000000000 + type: reference-tables-batch-rows-query + schema: + $ref: "#/components/schemas/BatchRowsQueryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000000 + relationships: + rows: + data: + - id: row_id_1 + type: row + - id: row_id_2 + type: row + type: reference-tables-batch-rows-query + schema: + $ref: "#/components/schemas/BatchRowsQueryResponse" + description: Successfully retrieved rows. Some or all requested rows were found. Response includes found rows in the included section. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Batch rows query + tags: + - Reference Tables + /api/v2/reference-tables/tables: + get: + description: List all reference tables in this organization. + operationId: ListTables + parameters: + - description: Number of tables to return. + example: 15 + in: query + name: page[limit] + required: false + schema: + default: 15 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Number of tables to skip for pagination. + example: 0 + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Sort field and direction for the list of reference tables. Use field name for ascending, prefix with "-" for descending. + example: "-updated_at" + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/ReferenceTableSortType" + - description: Filter by table status. + example: DONE + in: query + name: filter[status] + required: false + schema: + type: string + - description: Filter by exact table name match. + example: "my_reference_table" + in: query + name: filter[table_name][exact] + required: false + schema: + type: string + - description: Filter by table name containing substring. + example: "user" + in: query + name: filter[table_name][contains] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + status: DONE + table_name: my_reference_table + id: abc-123 + type: reference_table + schema: + $ref: "#/components/schemas/TableResultV2Array" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List tables + tags: + - Reference Tables + post: + description: |- + Creates a reference table. You can provide data in two ways: + 1. Call POST /api/v2/reference-tables/upload to get an upload ID. Then, PUT the CSV data + (not the file itself) in chunks to each URL in the request body. Finally, call this + POST endpoint with `upload_id` in `file_metadata`. + 2. Provide `access_details` in `file_metadata` pointing to a CSV file in cloud storage. + operationId: CreateReferenceTable + requestBody: + content: + application/json: + examples: + cloud_storage: + summary: Create table from cloud storage (S3) + value: + data: + attributes: + description: Customer reference data synced from S3 + file_metadata: + access_details: + aws_detail: + aws_account_id: "924305315327" + aws_bucket_name: my-data-bucket + file_path: customers.csv + sync_enabled: true + schema: + fields: + - name: customer_id + type: STRING + - name: customer_name + type: STRING + - name: email + type: STRING + primary_keys: + - customer_id + source: S3 + table_name: customer_reference_data + tags: + - team:data-platform + type: reference_table + default: + value: + data: + attributes: + description: Customer reference data synced from S3 + file_metadata: + access_details: + aws_detail: + aws_account_id: "924305315327" + aws_bucket_name: my-data-bucket + file_path: customers.csv + sync_enabled: true + schema: + fields: + - name: customer_id + type: STRING + - name: customer_name + type: STRING + - name: email + type: STRING + primary_keys: + - customer_id + source: S3 + table_name: customer_reference_data + tags: + - team:data-platform + type: reference_table + local_file: + summary: Create table from local file upload + value: + data: + attributes: + description: Product catalog uploaded via local file + file_metadata: + upload_id: "00000000-0000-0000-0000-000000000000" + schema: + fields: + - name: product_id + type: STRING + - name: product_name + type: STRING + - name: price + type: DOUBLE + primary_keys: + - product_id + source: LOCAL_FILE + table_name: product_catalog + tags: + - team:ecommerce + type: reference_table + schema: + $ref: "#/components/schemas/CreateTableRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + status: DONE + table_name: my_reference_table + id: abc-123 + type: reference_table + schema: + $ref: "#/components/schemas/TableResultV2" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create reference table + tags: + - Reference Tables + /api/v2/reference-tables/tables/{id}: + delete: + description: Delete a reference table by ID + operationId: DeleteTable + parameters: + - description: Unique identifier of the reference table to delete + in: path + name: id + required: true + schema: + type: string + responses: + "200": + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete table + tags: + - Reference Tables + get: + description: Get a reference table by ID + operationId: GetTable + parameters: + - description: Unique identifier of the reference table to retrieve + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: {} + sync_enabled: false + last_updated_by: 00000000-0000-0000-0000-000000000000 + row_count: 5 + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + source: S3 + status: DONE + table_name: test_reference_table + tags: + - tag1 + updated_at: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + schema: + $ref: "#/components/schemas/TableResultV2" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get table + tags: + - Reference Tables + patch: + description: >- + Update a reference table by ID. You can update the table's data, description, and tags. Note: The source type cannot be changed after table creation. For data updates: For existing tables of type `source:LOCAL_FILE`, call POST api/v2/reference-tables/uploads first to get an upload ID, then PUT chunks of CSV data to each provided URL, and finally call this PATCH endpoint with the upload_id in file_metadata. For existing tables with `source:` types of `S3`, `GCS`, or `AZURE`, provide updated access_details in file_metadata pointing to a CSV file in the same type of cloud storage. + operationId: UpdateReferenceTable + parameters: + - description: Unique identifier of the reference table to update + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: this is a cloud table generated via a cloud bucket sync + file_metadata: + access_details: + aws_detail: + aws_account_id: test-account-id + aws_bucket_name: test-bucket + file_path: test_rt.csv + sync_enabled: true + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + tags: + - test_tag + type: reference_table + schema: + $ref: "#/components/schemas/PatchTableRequest" + required: true + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update reference table + tags: + - Reference Tables + /api/v2/reference-tables/tables/{id}/rows: + delete: + description: Delete multiple rows from a Reference Table by their primary key values. + operationId: DeleteRows + parameters: + - description: Unique identifier of the reference table to delete rows from + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: primary_key_value + type: row + schema: + $ref: "#/components/schemas/BatchDeleteRowsRequestArray" + required: true + responses: + "200": + description: Rows deleted successfully + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Precondition Failed + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete rows + tags: + - Reference Tables + get: + description: Get reference table rows by their primary key values. + operationId: GetRowsByID + parameters: + - description: Unique identifier of the reference table to get rows from + example: "table-123" + in: path + name: id + required: true + schema: + type: string + - description: List of row IDs (primary key values) to retrieve from the reference table. + example: ["row1", "row2"] + explode: true + in: query + name: row_id + required: true + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + values: + id: 1 + name: Example Row + id: row_id_1 + type: row + schema: + $ref: "#/components/schemas/TableRowResourceArray" + description: Some or all requested rows were found. + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get rows by id + tags: + - Reference Tables + post: + description: >- + Create or update rows in a Reference Table by their primary key values. If a row with the specified primary key exists, it is updated; otherwise, a new row is created. + operationId: UpsertRows + parameters: + - description: Unique identifier of the reference table to upsert rows into + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + values: + age: 25 + example_key_value: primary_key_value + name: row_name + id: primary_key_value + type: row + happy_path: + summary: Upsert a row with mixed string and int values + value: + data: + - attributes: + values: + age: 25 + example_key_value: "primary_key_value" + name: "row_name" + id: "primary_key_value" + type: row + schema: + $ref: "#/components/schemas/BatchUpsertRowsRequestArray" + required: true + responses: + "200": + description: Rows created or updated successfully + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Precondition Failed + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Upsert rows + tags: + - Reference Tables + /api/v2/reference-tables/tables/{id}/rows/list: + get: + description: List all rows in a reference table using cursor-based pagination. Pass the `page[continuation_token]` from the previous response to fetch the next page on the same consistent snapshot. Returns 400 for tables with more than 10,000,000 rows. + operationId: ListReferenceTableRows + parameters: + - description: Unique identifier of the reference table to list rows from. + example: "00000000-0000-0000-0000-000000000000" + in: path + name: id + required: true + schema: + type: string + - description: Number of rows to return per page. Defaults to 100, maximum is 1000. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Opaque cursor from the previous response's next link. Pass this to retrieve the next page on the same consistent snapshot. + example: "eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ==" + in: query + name: page[continuation_token] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + values: + category: tor + intention: suspicious + ip_address: 102.130.113.9 + id: 102.130.113.9 + type: row + links: + first: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Blimit%5D=100" + next: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjY5NzA0ODkwNDE4ODA3MTAzOTgsInBrIjoiMTAyLjEzMC4xMjcuMTE3In0%3D&page%5Blimit%5D=100" + self: "/api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100" + schema: + $ref: "#/components/schemas/ListRowsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List rows + tags: + - Reference Tables + /api/v2/reference-tables/uploads: + post: + description: Create a reference table upload for bulk data ingestion + operationId: CreateReferenceTableUpload + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + headers: + - product_id + - product_name + - price + part_count: 3 + part_size: 10000000 + table_name: my_products_table + type: upload + schema: + $ref: "#/components/schemas/CreateUploadRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + part_urls: + - https://example.com/upload-part-1 + id: 00000000-0000-0000-0000-000000000000 + type: upload + schema: + $ref: "#/components/schemas/CreateUploadResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create reference table upload + tags: + - Reference Tables + /api/v2/remote_config/products/asm/waf/custom_rules: + get: + description: Retrieve a list of WAF custom rule. + operationId: ListApplicationSecurityWAFCustomRules + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000003 + type: custom_rule + schema: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all WAF custom rules + tags: + - "Application Security" + post: + description: Create a new WAF custom rule with the given parameters. + operationId: CreateApplicationSecurityWafCustomRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + action: block_request + parameters: + location: /blocking + status_code: 403 + blocking: false + conditions: + - operator: match_regex + parameters: + data: blocked_users + regex: path.* + value: custom_tag + enabled: false + name: Block request from a bad useragent + path_glob: /api/search/* + scope: + - env: prod + service: billing-service + tags: + category: business_logic + type: users.login.success + type: custom_rule + schema: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleCreateRequest" + description: The definition of the new WAF Custom Rule. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from a bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000004 + type: custom_rule + schema: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a WAF custom rule + tags: + - "Application Security" + x-codegen-request-body-name: body + /api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}: + delete: + description: Delete a specific WAF custom rule. + operationId: DeleteApplicationSecurityWafCustomRule + parameters: + - $ref: "#/components/parameters/ApplicationSecurityWafCustomRuleIDParam" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a WAF Custom Rule + tags: + - "Application Security" + x-terraform-resource: appsec_waf_custom_rule + get: + description: Retrieve a WAF custom rule by ID. + operationId: GetApplicationSecurityWafCustomRule + parameters: + - $ref: "#/components/parameters/ApplicationSecurityWafCustomRuleIDParam" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000001 + type: custom_rule + schema: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a WAF custom rule + tags: + - "Application Security" + x-terraform-resource: appsec_waf_custom_rule + put: + description: |- + Update a specific WAF custom Rule. + Returns the Custom Rule object when the request is successful. + operationId: UpdateApplicationSecurityWafCustomRule + parameters: + - $ref: "#/components/parameters/ApplicationSecurityWafCustomRuleIDParam" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + action: block_request + parameters: + location: /blocking + status_code: 403 + blocking: false + conditions: + - operator: match_regex + parameters: + data: blocked_users + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + value: custom_tag + enabled: false + name: Block request from bad useragent + path_glob: /api/search/* + scope: + - env: prod + service: billing-service + tags: + category: business_logic + type: users.login.success + type: custom_rule + schema: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleUpdateRequest" + description: New definition of the WAF Custom Rule. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000002 + type: custom_rule + schema: + $ref: "#/components/schemas/ApplicationSecurityWafCustomRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a WAF Custom Rule + tags: + - "Application Security" + x-codegen-request-body-name: body + x-terraform-resource: appsec_waf_custom_rule + /api/v2/remote_config/products/asm/waf/exclusion_filters: + get: + description: Retrieve a list of WAF exclusion filters. + operationId: ListApplicationSecurityWafExclusionFilters + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000003 + type: exclusion_filter + schema: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFiltersResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all WAF exclusion filters + tags: + - "Application Security" + "x-permission": + operator: AND + permissions: + - appsec_protect_read + x-terraform-resource: appsec_waf_exclusion_filter + post: + description: |- + Create a new WAF exclusion filter with the given parameters. + + A request matched by an exclusion filter will be ignored by the Application Security WAF product. + Go to https://app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries). + operationId: CreateApplicationSecurityWafExclusionFilter + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + on_match: monitor + parameters: + - list.search.query + path_glob: /accounts/* + rules_target: + - rule_id: dog-913-009 + tags: + category: attack_attempt + type: lfi + scope: + - env: www + service: prod + type: exclusion_filter + schema: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterCreateRequest" + description: The definition of the new WAF exclusion filter. + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000004 + type: exclusion_filter + schema: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a WAF exclusion filter + tags: + - "Application Security" + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - appsec_protect_write + x-terraform-resource: appsec_waf_exclusion_filter + /api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id}: + delete: + description: Delete a specific WAF exclusion filter using its identifier. + operationId: DeleteApplicationSecurityWafExclusionFilter + parameters: + - $ref: "#/components/parameters/ApplicationSecurityWafExclusionFilterID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a WAF exclusion filter + tags: + - "Application Security" + "x-permission": + operator: AND + permissions: + - appsec_protect_write + x-terraform-resource: appsec_waf_exclusion_filter + get: + description: Retrieve a specific WAF exclusion filter using its identifier. + operationId: GetApplicationSecurityWafExclusionFilter + parameters: + - $ref: "#/components/parameters/ApplicationSecurityWafExclusionFilterID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000001 + type: exclusion_filter + schema: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a WAF exclusion filter + tags: + - "Application Security" + "x-permission": + operator: AND + permissions: + - appsec_protect_read + x-terraform-resource: appsec_waf_exclusion_filter + put: + description: |- + Update a specific WAF exclusion filter using its identifier. + Returns the exclusion filter object when the request is successful. + operationId: UpdateApplicationSecurityWafExclusionFilter + parameters: + - $ref: "#/components/parameters/ApplicationSecurityWafExclusionFilterID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + on_match: monitor + parameters: + - list.search.query + path_glob: /accounts/* + rules_target: + - rule_id: dog-913-009 + tags: + category: attack_attempt + type: lfi + scope: + - env: www + service: prod + type: exclusion_filter + schema: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateRequest" + description: The exclusion filter to update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000002 + type: exclusion_filter + schema: + $ref: "#/components/schemas/ApplicationSecurityWafExclusionFilterResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a WAF exclusion filter + tags: + - "Application Security" + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - appsec_protect_write + x-terraform-resource: appsec_waf_exclusion_filter + /api/v2/remote_config/products/asm/waf/policies: + get: + description: Retrieve a list of WAF policies. + operationId: ListApplicationSecurityWAFPolicies + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Monitor security scanners and application attacks such as Server-Side-Request-Forgery (SSRF), SQL Injection, Log4Shell, and Cross-Site-Scripting (XSS). + isDefault: true + name: Managed - Monitoring-only + rules: [] + rulesets: [] + scope: [] + version: 0 + id: recommended + meta: {} + type: policy + - attributes: + description: Block known attack tools without impacting legitimate security scans. + isDefault: false + name: Managed - Block attack tools + protectionPresets: + - attack-tools + rules: [] + rulesets: [] + scope: [] + version: 0 + id: recommended-attack-tools + meta: {} + type: policy + schema: + $ref: "#/components/schemas/ApplicationSecurityPolicyListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all WAF policies + tags: + - "Application Security" + post: + description: Create a new WAF policy. + operationId: CreateApplicationSecurityWafPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + basedOn: recommended + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + scope: + - env: prod + service: billing-service + version: 0 + type: policy + schema: + $ref: "#/components/schemas/ApplicationSecurityPolicyCreateRequest" + description: The new WAF policy. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + rulesets: [] + scope: + - env: prod + service: billing-service + version: 0 + id: 841d53b4-4d73-4585-99cc-39dd10883f7c + meta: + added_at: "2026-04-16T10:25:18Z" + added_by: 9919ec9b-ebc7-49ee-8dc8-03626e717cca + added_by_name: CI Account + type: policy + schema: + $ref: "#/components/schemas/ApplicationSecurityPolicyResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a WAF Policy + tags: + - "Application Security" + x-codegen-request-body-name: body + /api/v2/remote_config/products/asm/waf/policies/{policy_id}: + delete: + description: Delete a specific WAF policy. + operationId: DeleteApplicationSecurityWafPolicy + parameters: + - $ref: "#/components/parameters/ApplicationSecurityPolicyIDParam" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a WAF Policy + tags: + - "Application Security" + x-terraform-resource: appsec_waf_policy + get: + description: Retrieve a WAF policy by ID. + operationId: GetApplicationSecurityWafPolicy + parameters: + - $ref: "#/components/parameters/ApplicationSecurityPolicyIDParam" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: This is a test policy. + isDefault: false + name: Test policy + rules: [] + rulesets: [] + scope: [] + version: -1 + id: cc3e574d-9b5a-4310-b7f4-5560483f84b1 + meta: + added_at: "2026-04-16T10:25:20Z" + added_by: 9919ec9b-ebc7-49ee-8dc8-03626e717cca + added_by_name: CI Account + type: policy + schema: + $ref: "#/components/schemas/ApplicationSecurityPolicyResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a WAF Policy + tags: + - "Application Security" + x-terraform-resource: appsec_waf_policy + put: + description: |- + Update a specific WAF policy. + Returns the policy object when the request is successful. + operationId: UpdateApplicationSecurityWafPolicy + parameters: + - $ref: "#/components/parameters/ApplicationSecurityPolicyIDParam" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + scope: + - env: prod + service: billing-service + version: 0 + type: policy + schema: + $ref: "#/components/schemas/ApplicationSecurityPolicyUpdateRequest" + description: New WAF policy. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + rulesets: [] + scope: + - env: prod + service: billing-service + version: 0 + id: 841d53b4-4d73-4585-99cc-39dd10883f7c + meta: + added_at: "2026-04-16T10:25:18Z" + added_by: 9919ec9b-ebc7-49ee-8dc8-03626e717cca + added_by_name: CI Account + type: policy + schema: + $ref: "#/components/schemas/ApplicationSecurityPolicyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a WAF Policy + tags: + - "Application Security" + x-codegen-request-body-name: body + x-terraform-resource: appsec_waf_policy + /api/v2/remote_config/products/cws/agent_rules: + get: + description: |- + Get the list of Workload Protection agent rules. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: ListCSMThreatsAgentRules + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRulesListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Workload Protection agent rules + tags: ["CSM Threats"] + post: + description: |- + Create a new Workload Protection agent rule with the given parameters. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: CreateCSMThreatsAgentRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + policy_id: a8c8e364-6556-434d-b798-a4c23de29c0b + silent: false + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest" + description: "The definition of the new agent rule" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Workload Protection agent rule + tags: ["CSM Threats"] + x-codegen-request-body-name: body + /api/v2/remote_config/products/cws/agent_rules/{agent_rule_id}: + delete: + description: |- + Delete a specific Workload Protection agent rule. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: DeleteCSMThreatsAgentRule + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityAgentRuleID" + - $ref: "#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Workload Protection agent rule + tags: ["CSM Threats"] + get: + description: |- + Get the details of a specific Workload Protection agent rule. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: GetCSMThreatsAgentRule + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityAgentRuleID" + - $ref: "#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Workload Protection agent rule + tags: ["CSM Threats"] + patch: + description: |- + Update a specific Workload Protection Agent rule. + Returns the agent rule object when the request is successful. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: UpdateCSMThreatsAgentRule + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityAgentRuleID" + - $ref: "#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + policy_id: a8c8e364-6556-434d-b798-a4c23de29c0b + silent: false + id: 3dd-0uc-h1s + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest" + description: "New definition of the agent rule" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Workload Protection agent rule + tags: ["CSM Threats"] + x-codegen-request-body-name: body + /api/v2/remote_config/products/cws/policy: + get: + description: |- + Get the list of Workload Protection policies. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: ListCSMThreatsAgentPolicies + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPoliciesListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Workload Protection policies + tags: ["CSM Threats"] + post: + description: |- + Create a new Workload Protection policy with the given parameters. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: CreateCSMThreatsAgentPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + hostTagsLists: + - - env:test + name: my_agent_policy + type: policy + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateRequest" + description: "The definition of the new Agent policy" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Workload Protection policy + tags: ["CSM Threats"] + x-codegen-request-body-name: body + /api/v2/remote_config/products/cws/policy/download: + get: + description: |- + The download endpoint generates a Workload Protection policy file from your currently active + Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to + your agents to update the policy running in your environment. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: DownloadCSMThreatsPolicy + responses: + "200": + content: + application/zip: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: "Download the Workload Protection policy" + tags: ["CSM Threats"] + /api/v2/remote_config/products/cws/policy/{policy_id}: + delete: + description: |- + Delete a specific Workload Protection policy. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: DeleteCSMThreatsAgentPolicy + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID" + responses: + "202": + description: OK + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Workload Protection policy + tags: ["CSM Threats"] + get: + description: |- + Get the details of a specific Workload Protection policy. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: GetCSMThreatsAgentPolicy + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Workload Protection policy + tags: ["CSM Threats"] + patch: + description: |- + Update a specific Workload Protection policy. + Returns the policy object when the request is successful. + + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + operationId: UpdateCSMThreatsAgentPolicy + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: 6517fcc1-cec7-4394-a655-8d6e9d085255 + type: policy + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateRequest" + description: "New definition of the Agent policy" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Workload Protection policy + tags: ["CSM Threats"] + x-codegen-request-body-name: body + /api/v2/remote_config/products/rum/configs/{config_id}: + get: + description: Retrieve a RUM SDK configuration by its identifier. + operationId: GetRumSdkConfig + parameters: + - description: The ID of the RUM SDK configuration. + example: "abc12345-1234-5678-abcd-ef1234567890" + in: path + name: config_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + rum: + application_id: "f80e917c-3cd0-4048-ade7-1c4c207baa99" + default_privacy_level: "mask-user-input" + enable_privacy_for_action_name: false + env: "production" + service: "my-service" + session_replay_sample_rate: 10 + session_sample_rate: 50 + trace_sample_rate: 100 + track_session_across_subdomains: false + id: "abc12345-1234-5678-abcd-ef1234567890" + meta: + updated_at: "2024-01-15T09:30:00.000Z" + updated_by: "user@datadoghq.com" + type: rum_sdk_config + schema: + $ref: "#/components/schemas/RumSdkConfigResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM SDK configuration + tags: + - RUM Remote Config + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Update an existing RUM SDK configuration by its identifier. + Returns the updated configuration when successful. + operationId: UpdateRumSdkConfig + parameters: + - description: The ID of the RUM SDK configuration. + example: "abc12345-1234-5678-abcd-ef1234567890" + in: path + name: config_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rum: + default_privacy_level: "mask" + enable_privacy_for_action_name: true + session_replay_sample_rate: 20 + session_sample_rate: 75 + id: "abc12345-1234-5678-abcd-ef1234567890" + type: rum_sdk_config + schema: + $ref: "#/components/schemas/RumSdkConfigUpdateRequest" + description: The RUM SDK configuration update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + rum: + application_id: "f80e917c-3cd0-4048-ade7-1c4c207baa99" + default_privacy_level: "mask" + enable_privacy_for_action_name: true + session_replay_sample_rate: 20 + session_sample_rate: 75 + id: "abc12345-1234-5678-abcd-ef1234567890" + type: rum_sdk_config + schema: + $ref: "#/components/schemas/RumSdkConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM SDK configuration + tags: + - RUM Remote Config + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/replay/heatmap/snapshots: + get: + description: List heatmap snapshots. + operationId: ListReplayHeatmapSnapshots + parameters: + - description: Device type to filter snapshots. + in: query + name: filter[device_type] + schema: + example: desktop + type: string + - description: View name to filter snapshots. + in: query + name: filter[view_name] + required: true + schema: + example: /home + type: string + - description: Maximum number of snapshots to return. + in: query + name: page[limit] + schema: + example: 10 + format: int64 + type: integer + - description: Filter by application ID. + in: query + name: filter[application_id] + schema: + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + snapshot_name: My Snapshot + view_name: /home + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: "#/components/schemas/SnapshotArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List replay heatmap snapshots + tags: + - Rum Replay Heatmaps + post: + description: Create a heatmap snapshot. + operationId: CreateReplayHeatmapSnapshot + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + is_device_type_selected_by_user: false + snapshot_name: My Snapshot + start: 0 + view_name: /home + type: snapshots + schema: + $ref: "#/components/schemas/SnapshotCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + snapshot_name: My Snapshot + view_name: /home + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: "#/components/schemas/Snapshot" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create replay heatmap snapshot + tags: + - Rum Replay Heatmaps + /api/v2/replay/heatmap/snapshots/{snapshot_id}: + delete: + description: Delete a heatmap snapshot. + operationId: DeleteReplayHeatmapSnapshot + parameters: + - description: Unique identifier of the heatmap snapshot. + in: path + name: snapshot_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete replay heatmap snapshot + tags: + - Rum Replay Heatmaps + patch: + description: Update a heatmap snapshot. + operationId: UpdateReplayHeatmapSnapshot + parameters: + - description: Unique identifier of the heatmap snapshot. + in: path + name: snapshot_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + event_id: 11111111-2222-3333-4444-555555555555 + is_device_type_selected_by_user: false + start: 0 + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: "#/components/schemas/SnapshotUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + snapshot_name: My Snapshot + view_name: /home + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: "#/components/schemas/Snapshot" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update replay heatmap snapshot + tags: + - Rum Replay Heatmaps + /api/v2/reporting/dataset/{dataset_id}/schedules: + get: + description: |- + Retrieve all report schedules for a given published dataset. + Returns report schedules belonging to the authenticated user's organization that target the specified dataset. + Requires the `generate_log_reports` or `manage_log_reports` permission. + operationId: ListDatasetReportSchedules + parameters: + - description: The identifier of the published dataset to retrieve report schedules for. + example: "MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm" + in: path + name: dataset_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cell_id: "sevhjcis" + dataset_id: "MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm" + description: "This is a scheduled notebook dataset report." + file_row_limit: 5000 + inline_row_limit: 10 + next_recurrence: 1725859200000 + notebook_id: 1 + recipients: + - "test@datadoghq.com" + resource_id: "aaaabbbb-1111-2222-3333-444455556666" + resource_type: widget_dataset_list + rrule: "DTSTART;TZID=America/New_York:20240912T090000\nRRULE:FREQ=DAILY;BYHOUR=9;BYMINUTE=0" + status: active + timeframe: "calendar_day" + timezone: "America/New_York" + title: "My Cool Dataset Report" + id: "e1234567-1234-1234-1234-123456789012" + relationships: + author: + data: + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/DatasetReportScheduleListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List dataset report schedules + tags: + - Report Schedules + /api/v2/reporting/print: + post: + description: |- + Initiate a one-off, print-only report for a dashboard or integration dashboard. + The report is rendered as a PDF and made available for download through the URL returned in the response. + Requires a reporting permission appropriate to the targeted resource type. + operationId: PrintReport + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource_id: "abc-def-ghi" + resource_type: dashboard + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + type: report + schema: + $ref: "#/components/schemas/PrintReportRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + download_url: "https://app.datadoghq.com/..." + from_ts: 1780318800000 + resource_id: "abc-def-ghi" + resource_type: dashboard + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + to_ts: 1780923600000 + id: "11111111-2222-3333-4444-555555555555" + type: report + schema: + $ref: "#/components/schemas/PrintReportResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Print a report + tags: + - Report Schedules + x-codegen-request-body-name: body + /api/v2/reporting/schedule: + post: + description: |- + Create a new scheduled report. A schedule renders a dashboard or integration dashboard + on a recurring cadence and delivers it to the configured recipients over email, Slack, + or Microsoft Teams. + Requires the `generate_dashboard_reports` permission. + operationId: CreateReportSchedule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + recipients: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + type: schedule + schema: + $ref: "#/components/schemas/ReportScheduleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: active + tab_id: "66666666-7777-8888-9999-000000000000" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + relationships: + author: + data: + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/ReportScheduleResponse" + description: CREATED + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a report schedule + tags: + - Report Schedules + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/reporting/schedule/list: + get: + description: |- + List dashboard and integration dashboard report schedules for the organization. + The response is paginated and can be filtered by title, author UUID, or recipients. + Requires the `generate_dashboard_reports` permission. + operationId: ListReportSchedules + parameters: + - description: The maximum number of schedules to return. The maximum value is 50. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 25 + format: int64 + maximum: 50 + minimum: 1 + type: integer + - description: The offset from which to start returning schedules. + example: 0 + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Filter schedules by report title. + example: "Weekly" + in: query + name: filter[title] + required: false + schema: + type: string + - description: Filter schedules by author UUID. + example: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + in: query + name: filter[author_uuid] + required: false + schema: + format: uuid + type: string + - description: Filter schedules by a comma-separated list of recipients. + example: "user@example.com,team@example.com" + in: query + name: filter[recipients] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: active + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + relationships: + author: + data: + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + resource: + data: + id: "abc-def-ghi" + type: resource + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + - attributes: + resource_type: dashboard + template_variables: + - available_values: + - "prod" + - "staging" + defaults: + - "prod" + name: "env" + prefix: "env" + title: "Infrastructure Overview" + id: "abc-def-ghi" + type: resource + links: + first: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25" + last: + next: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=25&page[limit]=25" + prev: + self: "https://api.datadoghq.com/api/v2/reporting/schedule/list?page[limit]=25" + meta: + pagination: + first_offset: 0 + last_offset: 0 + limit: 25 + next_offset: 25 + offset: 0 + prev_offset: 0 + total: 1 + type: offset_limit + schema: + $ref: "#/components/schemas/ReportScheduleListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List report schedules + tags: + - Report Schedules + /api/v2/reporting/schedule/{resource_type}/{resource_id}: + get: + description: |- + Get all report schedules that target a dashboard or integration dashboard resource. + Requires a reporting read permission appropriate to the targeted resource type. + operationId: GetReportSchedulesForResource + parameters: + - description: The type of resource to fetch report schedules for. + example: dashboard + in: path + name: resource_type + required: true + schema: + $ref: "#/components/schemas/ReportScheduleResourceType" + - description: The identifier of the resource to fetch report schedules for. + example: "abc-def-ghi" + in: path + name: resource_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: active + tab_id: "66666666-7777-8888-9999-000000000000" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/ReportScheduleListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get report schedules for a resource + tags: + - Report Schedules + /api/v2/reporting/schedule/{schedule_uuid}: + delete: + description: |- + Delete a report schedule by its unique identifier. The response returns the deleted schedule. + Requires a reporting write permission appropriate to the targeted resource type and schedule ownership. + operationId: DeleteReportSchedule + parameters: + - description: The unique identifier of the report schedule to delete. + example: "11111111-2222-3333-4444-555555555555" + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: inactive + tab_id: "66666666-7777-8888-9999-000000000000" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/ReportScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a report schedule + tags: + - Report Schedules + get: + description: |- + Get a report schedule by its unique identifier. + Requires a reporting read permission appropriate to the targeted resource type. + operationId: GetReportSchedule + parameters: + - description: The unique identifier of the report schedule to fetch. + example: "11111111-2222-3333-4444-555555555555" + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: active + tab_id: "66666666-7777-8888-9999-000000000000" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/ReportScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a report schedule + tags: + - Report Schedules + patch: + description: |- + Update an existing scheduled report by its identifier. The editable attributes + are replaced with the supplied values; the targeted resource (`resource_id` and + `resource_type`) cannot be changed after creation. + Requires the `generate_dashboard_reports` permission and schedule ownership. + operationId: PatchReportSchedule + parameters: + - description: The unique identifier of the report schedule to update. + example: "11111111-2222-3333-4444-555555555555" + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Updated weekly summary of infrastructure health." + recipients: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + type: schedule + schema: + $ref: "#/components/schemas/ReportSchedulePatchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Updated weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + - "slack:T01234567.C01234567.alerts" + - "teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: active + tab_id: "66666666-7777-8888-9999-000000000000" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + relationships: + author: + data: + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/ReportScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a report schedule + tags: + - Report Schedules + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/reporting/schedule/{schedule_uuid}/toggle: + patch: + description: |- + Activate or pause a report schedule by setting its status to `active` or `inactive`. + Requires a reporting write permission appropriate to the targeted resource type and schedule ownership. + operationId: ToggleReportSchedule + parameters: + - description: The unique identifier of the report schedule to toggle. + example: "11111111-2222-3333-4444-555555555555" + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + status: inactive + type: schedule + schema: + $ref: "#/components/schemas/ReportScheduleToggleRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: "Weekly summary of infrastructure health." + next_recurrence: 1780923600000 + recipients: + - "user@example.com" + resource_id: "abc-def-ghi" + resource_type: dashboard + rrule: "DTSTART;TZID=America/New_York:20260601T090000\nRRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0" + status: inactive + tab_id: "66666666-7777-8888-9999-000000000000" + template_variables: + - name: "env" + values: + - "prod" + timeframe: "1w" + timezone: "America/New_York" + title: "Weekly Infrastructure Report" + id: "11111111-2222-3333-4444-555555555555" + type: schedule + included: + - attributes: + email: "user@example.com" + name: "Example User" + id: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + type: users + schema: + $ref: "#/components/schemas/ReportScheduleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Toggle a report schedule + tags: + - Report Schedules + x-codegen-request-body-name: body + /api/v2/restriction_policy/{resource_id}: + delete: + description: Deletes the restriction policy associated with a specified resource. + operationId: DeleteRestrictionPolicy + parameters: + - $ref: "#/components/parameters/ResourceID" + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete a restriction policy + tags: + - Restriction Policies + "x-permission": + operator: OPEN + permissions: [] + get: + description: Retrieves the restriction policy associated with a specified resource. + operationId: GetRestrictionPolicy + parameters: + - $ref: "#/components/parameters/ResourceID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + bindings: + - principals: + - "role:00000000-0000-1111-0000-000000000000" + relation: editor + id: dashboard:abc-def-ghi + type: restriction_policy + schema: + $ref: "#/components/schemas/RestrictionPolicyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a restriction policy + tags: + - Restriction Policies + "x-permission": + operator: OPEN + permissions: [] + post: + description: |- + Updates the restriction policy associated with a resource. + + #### Supported resources + Restriction policies can be applied to the following resources: + - Dashboards: `dashboard` + - Integration Services: `integration-service` + - Integration Webhooks: `integration-webhook` + - Notebooks: `notebook` + - Powerpacks: `powerpack` + - Reference Tables: `reference-table` + - Security Rules: `security-rule` + - Service Level Objectives: `slo` + - Synthetic Global Variables: `synthetics-global-variable` + - Synthetic Tests: `synthetics-test` + - Synthetic Private Locations: `synthetics-private-location` + - Monitors: `monitor` + - Workflows: `workflow` + - App Builder Apps: `app-builder-app` + - Connections: `connection` + - Connection Groups: `connection-group` + - RUM Applications: `rum-application` + - Cross Org Connections: `cross-org-connection` + - Spreadsheets: `spreadsheet` + - On-Call Schedules: `on-call-schedule` + - On-Call Escalation Policies: `on-call-escalation-policy` + - On-Call Team Routing Rules: `on-call-team-routing-rules` + - Logs Pipelines: `logs-pipeline` + - Case Management Projects: `case-management-project` + - Monitor Notification Rules: `monitor-notification-rule` + - Status Pages: `status-page` + - Feature Flags: `feature-flag` + + #### Supported relations for resources + Resource Type | Supported Relations + ----------------------------|-------------------------- + Dashboards | `viewer`, `editor` + Integration Services | `viewer`, `editor` + Integration Webhooks | `viewer`, `editor` + Notebooks | `viewer`, `editor` + Powerpacks | `viewer`, `editor` + Security Rules | `viewer`, `editor` + Service Level Objectives | `viewer`, `editor` + Synthetic Global Variables | `viewer`, `editor` + Synthetic Tests | `viewer`, `editor` + Synthetic Private Locations | `viewer`, `editor` + Monitors | `viewer`, `editor` + Reference Tables | `viewer`, `editor` + Workflows | `viewer`, `runner`, `editor` + App Builder Apps | `viewer`, `editor` + Connections | `viewer`, `resolver`, `editor` + Connection Groups | `viewer`, `editor` + RUM Application | `viewer`, `editor` + Cross Org Connections | `viewer`, `editor` + Spreadsheets | `viewer`, `editor` + On-Call Schedules | `viewer`, `overrider`, `editor` + On-Call Escalation Policies | `viewer`, `editor` + On-Call Team Routing Rules | `viewer`, `editor` + Logs Pipelines | `viewer`, `processors_editor`, `editor` + Case Management Projects | `viewer`, `contributor`, `manager` + Monitor Notification Rules | `viewer`, `editor` + Status Pages | `viewer`, `responder`, `manager` + Feature Flags | `viewer`, `contributor`, `editor` + operationId: UpdateRestrictionPolicy + parameters: + - $ref: "#/components/parameters/ResourceID" + - description: Allows admins (users with the `user_access_manage` permission) to remove their own access from the resource if set to `true`. By default, this is set to `false`, preventing admins from locking themselves out. + in: query + name: allow_self_lockout + required: false + schema: + type: boolean + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + bindings: + - principals: + - user:4dee724d-00cc-11ea-a77b-570c9d03c6c5 + relation: editor + id: dashboard:abc-def-ghi + type: restriction_policy + schema: + $ref: "#/components/schemas/RestrictionPolicyUpdateRequest" + description: Restriction policy payload + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + bindings: + - principals: + - "role:00000000-0000-1111-0000-000000000000" + relation: editor + id: dashboard:abc-def-ghi + type: restriction_policy + schema: + $ref: "#/components/schemas/RestrictionPolicyResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update a restriction policy + tags: + - Restriction Policies + x-codegen-request-body-name: body + "x-permission": + operator: OPEN + permissions: [] + /api/v2/roles: + get: + description: Returns all roles, including their names and their unique identifiers. + operationId: ListRoles + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: |- + Sort roles depending on the given field. Sort order is **ascending** by default. + Sort order is **descending** if the field is prefixed by a negative sign, for example: + `sort=-name`. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/RolesSort" + - description: Filter all roles by the given string. + in: query + name: filter + required: false + schema: + type: string + - description: Filter all roles by the given list of role IDs. + in: query + name: filter[id] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: developers + id: 00000000-0000-0000-0000-000000000001 + type: roles + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/RolesResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List roles + tags: + - Roles + "x-permission": + operator: OR + permissions: + - user_access_read + post: + description: |- + Create a new role for your organization. + + The following read permissions are automatically added to every new role, even if they are not included in the request: + + - Dashboards Read + - Notebooks Read + - Monitors Read + - APM Read + - Vulnerability Management Read + - RUM Apps Read + - Incidents Read + - SLOs Read + - CI Visibility Read + - CD Visibility Read + operationId: CreateRole + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + type: roles + schema: + $ref: "#/components/schemas/RoleCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000002 + type: roles + schema: + $ref: "#/components/schemas/RoleCreateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Create role + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/roles/templates: + get: + description: List all role templates + operationId: ListRoleTemplates + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Datadog Standard Role + id: 00000000-0000-0000-0000-000000000012 + type: roles + schema: + $ref: "#/components/schemas/RoleTemplateArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List role templates + tags: + - Roles + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/roles/{role_id}: + delete: + description: Disables a role. + operationId: DeleteRole + parameters: + - $ref: "#/components/parameters/RoleID" + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Delete role + tags: + - Roles + x-codegen-request-body-name: body + get: + description: Get a role in the organization specified by the role’s `role_id`. + operationId: GetRole + parameters: + - $ref: "#/components/parameters/RoleID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000003 + type: roles + schema: + $ref: "#/components/schemas/RoleResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get a role + tags: + - Roles + x-codegen-request-body-name: body + patch: + description: |- + Edit a role. Can only be used with application keys belonging to administrators. + operationId: UpdateRole + parameters: + - $ref: "#/components/parameters/RoleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: updated-role-name + id: 00000000-0000-1111-0000-000000000000 + type: roles + schema: + $ref: "#/components/schemas/RoleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000004 + type: roles + schema: + $ref: "#/components/schemas/RoleUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Update a role + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/roles/{role_id}/clone: + post: + description: Clone an existing role + operationId: CloneRole + parameters: + - $ref: "#/components/parameters/RoleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: cloned-role + type: roles + schema: + $ref: "#/components/schemas/RoleCloneRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000011 + type: roles + schema: + $ref: "#/components/schemas/RoleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Create a new role by cloning an existing role + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/roles/{role_id}/permissions: + delete: + description: Removes a permission from a role. + operationId: RemovePermissionFromRole + parameters: + - $ref: "#/components/parameters/RoleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 6f66600e-dd12-11e8-9e55-7f30fbb45e73 + type: permissions + schema: + $ref: "#/components/schemas/RelationshipToPermission" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: logs_read_data + id: 00000000-0000-0000-0000-000000000007 + type: permissions + schema: + $ref: "#/components/schemas/PermissionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Revoke permission + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + get: + description: Returns a list of all permissions for a single role. + operationId: ListRolePermissions + parameters: + - $ref: "#/components/parameters/RoleID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: logs_read_data + id: 00000000-0000-0000-0000-000000000005 + type: permissions + schema: + $ref: "#/components/schemas/PermissionsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List permissions for a role + tags: + - Roles + x-codegen-request-body-name: body + post: + description: Adds a permission to a role. + operationId: AddPermissionToRole + parameters: + - $ref: "#/components/parameters/RoleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 6f66600e-dd12-11e8-9e55-7f30fbb45e73 + type: permissions + schema: + $ref: "#/components/schemas/RelationshipToPermission" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: logs_read_data + id: 00000000-0000-0000-0000-000000000006 + type: permissions + schema: + $ref: "#/components/schemas/PermissionsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Grant permission to a role + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/roles/{role_id}/users: + delete: + description: Removes a user from a role. + operationId: RemoveUserFromRole + parameters: + - $ref: "#/components/parameters/RoleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + schema: + $ref: "#/components/schemas/RelationshipToUser" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000010 + type: users + schema: + $ref: "#/components/schemas/UsersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Remove a user from a role + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + get: + description: Gets all users of a role. + operationId: ListRoleUsers + parameters: + - $ref: "#/components/parameters/RoleID" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: |- + User attribute to order results by. Sort order is **ascending** by default. + Sort order is **descending** if the field is prefixed by a negative sign, + for example `sort=-name`. Options: `name`, `email`, `status`. + in: query + name: sort + required: false + schema: + default: name + type: string + - description: Filter all users by the given string. Defaults to no filtering. + in: query + name: filter + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000008 + type: users + schema: + $ref: "#/components/schemas/UsersResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get all users of a role + tags: + - Roles + post: + description: Adds a user to a role. + operationId: AddUserToRole + parameters: + - $ref: "#/components/parameters/RoleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + schema: + $ref: "#/components/schemas/RelationshipToUser" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000009 + type: users + schema: + $ref: "#/components/schemas/UsersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Add a user to a role + tags: + - Roles + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/rum/analytics/aggregate: + post: + description: |- + The API endpoint to aggregate RUM events into buckets of computed metrics and timeseries. + operationId: AggregateRUMEvents + requestBody: + content: + "application/json": + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: "@duration" + type: timeseries + filter: + from: now-15m + query: "@type:session AND @session.type:user" + to: now + group_by: + - facet: "@view.time_spent" + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + schema: + $ref: "#/components/schemas/RUMAggregateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + buckets: + - by: + "@session.type": user + "@type": view + computes: + c0: 19 + meta: + elapsed: 132 + request_id: abc-123 + status: done + schema: + $ref: "#/components/schemas/RUMAnalyticsAggregateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Aggregate RUM events + tags: ["RUM"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - rum_apps_read + /api/v2/rum/applications: + get: + description: List all the RUM applications in your organization. + operationId: GetRUMApplications + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: abc-123 + created_at: 1659479836169 + created_by_handle: example-handle + name: my_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: "#/components/schemas/RUMApplicationsResponse" + description: OK + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List all the RUM applications + tags: ["RUM"] + "x-permission": + operator: OR + permissions: + - rum_apps_read + post: + description: Create a new RUM application in your organization. + operationId: CreateRUMApplication + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my_new_rum_application + product_analytics_retention_state: MAX + rum_event_processing_state: ALL + type: browser + type: rum_application_create + schema: + $ref: "#/components/schemas/RUMApplicationCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc-123 + client_token: abc-123-token + created_at: 1659479836169 + created_by_handle: example-handle + name: my_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: "#/components/schemas/RUMApplicationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a new RUM application + tags: ["RUM"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - rum_apps_write + /api/v2/rum/applications/{app_id}/relationships/retention_filters: + patch: + description: |- + Order RUM retention filters for a RUM application. + Returns RUM retention filter objects without attributes from the request body when the request is successful. + operationId: OrderRetentionFilters + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFiltersOrderRequest" + description: New definition of the RUM retention filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFiltersOrderResponse" + description: Ordered + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Order RUM retention filters + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{app_id}/retention_filters: + get: + description: Get the list of RUM retention filters for a RUM application. + operationId: ListRetentionFilters + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25.0 + enabled: true + event_type: session + name: Retention filter for session + query: "@session.has_replay:true" + sample_rate: 50.5 + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFiltersResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all RUM retention filters + tags: + - Rum Retention Filters + post: + description: |- + Create a RUM retention filter for a RUM application. + Returns RUM retention filter objects from the request body when the request is successful. + operationId: CreateRetentionFilter + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25.0 + enabled: true + event_type: session + name: Retention filter for session + query: "@session.has_replay:true" + sample_rate: 50.5 + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFilterCreateRequest" + description: The definition of the new RUM retention filter. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: session + name: Retention filter for session + query: "@session.has_replay:true" + sample_rate: 50.5 + id: 00000000-0000-0000-0000-000000000001 + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFilterResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a RUM retention filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{app_id}/retention_filters/exclusion: + get: + description: |- + Get the list of exclusion filters for a RUM application. + The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) is always returned first. + operationId: ListExclusionFilters + parameters: + - $ref: "#/components/parameters/RumExclusionFilterApplicationIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + name: Ignored / Excluded errors from Error Tracking + id: error_tracking_exclusion_filter + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + - attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: "@error.message:*extension*" + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: "#/components/schemas/RumExclusionFiltersResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all RUM exclusion filters + tags: + - Rum Retention Filters + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create an exclusion filter for a RUM application. + Returns the created exclusion filter when the request is successful. + operationId: CreateExclusionFilter + parameters: + - $ref: "#/components/parameters/RumExclusionFilterApplicationIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: "@error.message:*extension*" + type: exclusion_filters + schema: + $ref: "#/components/schemas/RumExclusionFilterCreateRequest" + description: The definition of the new RUM exclusion filter. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: "@error.message:*extension*" + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: "#/components/schemas/RumExclusionFilterResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a RUM exclusion filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id}: + delete: + description: |- + Delete an exclusion filter for a RUM application. + The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) cannot be deleted; + attempting to do so returns a `405 Method Not Allowed` response. + operationId: DeleteExclusionFilter + parameters: + - $ref: "#/components/parameters/RumExclusionFilterApplicationIDParameter" + - $ref: "#/components/parameters/RumExclusionFilterIDParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "405": + $ref: "#/components/responses/RumExclusionFilterMethodNotAllowedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM exclusion filter + tags: + - Rum Retention Filters + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single exclusion filter for a RUM application. + operationId: GetExclusionFilter + parameters: + - $ref: "#/components/parameters/RumExclusionFilterApplicationIDParameter" + - $ref: "#/components/parameters/RumExclusionFilterIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: "@error.message:*extension*" + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: "#/components/schemas/RumExclusionFilterResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM exclusion filter + tags: + - Rum Retention Filters + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update an exclusion filter for a RUM application. + For the built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`), only `enabled` can be + updated; `name`, `event_type`, and `query` must be omitted. + Returns the updated exclusion filter when the request is successful. + operationId: UpdateExclusionFilter + parameters: + - $ref: "#/components/parameters/RumExclusionFilterApplicationIDParameter" + - $ref: "#/components/parameters/RumExclusionFilterIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + event_type: error + name: Exclude noisy browser extension errors + query: "@error.message:*extension*" + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: exclusion_filters + schema: + $ref: "#/components/schemas/RumExclusionFilterUpdateRequest" + description: New definition of the RUM exclusion filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + event_type: error + name: Exclude noisy browser extension errors + query: "@error.message:*extension*" + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: "#/components/schemas/RumExclusionFilterResponse" + description: Updated + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM exclusion filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/applications/{app_id}/retention_filters/permanent: + get: + description: |- + Get the list of permanent RUM retention filters for a RUM application. + Permanent retention filters are predefined filters that cannot be created or deleted. + For each filter, the `editability` block indicates which cross-product fields can be updated. + operationId: ListPermanentRetentionFilters + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 100.0 + description: RUM retains all Synthetics sessions. + editability: + trace_editable: true + name: Synthetics Sessions + id: synthetics_sessions + type: permanent_retention_filters + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 100.0 + description: RUM retains all sessions with forced replays. + editability: + trace_editable: true + name: Forced Replay Sessions + id: forced_replay_sessions + type: permanent_retention_filters + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 100.0 + description: Configures APM trace sampling for RUM sessions using flat sampling. + editability: + trace_editable: false + name: RUM APM Flat Sampling + id: rum_apm_flat_sampling + type: permanent_retention_filters + schema: + $ref: "#/components/schemas/RumPermanentRetentionFiltersResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all permanent RUM retention filters + tags: + - Rum Retention Filters + /api/v2/rum/applications/{app_id}/retention_filters/permanent/{permanent_rf_id}: + get: + description: Get a permanent RUM retention filter for a RUM application by its identifier. + operationId: GetPermanentRetentionFilter + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + - $ref: "#/components/parameters/RumPermanentRetentionFilterIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 75.0 + description: RUM retains all Synthetics sessions. + editability: + trace_editable: true + name: Synthetics Sessions + id: synthetics_sessions + type: permanent_retention_filters + schema: + $ref: "#/components/schemas/RumPermanentRetentionFilterResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a permanent RUM retention filter + tags: + - Rum Retention Filters + patch: + description: |- + Update the cross-product sampling configuration of a permanent RUM retention filter for a RUM application. + Only fields marked as editable in the `editability` block of the filter can be updated. + Updating a non-editable field returns a `400` response. + operationId: UpdatePermanentRetentionFilter + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + - $ref: "#/components/parameters/RumPermanentRetentionFilterIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 50.0 + id: synthetics_sessions + type: permanent_retention_filters + schema: + $ref: "#/components/schemas/RumPermanentRetentionFilterUpdateRequest" + description: New configuration of the permanent RUM retention filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 50.0 + description: RUM retains all Synthetics sessions. + editability: + trace_editable: true + name: Synthetics Sessions + id: synthetics_sessions + type: permanent_retention_filters + schema: + $ref: "#/components/schemas/RumPermanentRetentionFilterResponse" + description: Updated + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a permanent RUM retention filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{app_id}/retention_filters/{rf_id}: + delete: + description: Delete a RUM retention filter for a RUM application. + operationId: DeleteRetentionFilter + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + - $ref: "#/components/parameters/RumRetentionFilterIDParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM retention filter + tags: + - Rum Retention Filters + get: + description: Get a RUM retention filter for a RUM application. + operationId: GetRetentionFilter + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + - $ref: "#/components/parameters/RumRetentionFilterIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25.0 + enabled: true + event_type: session + name: Retention filter for session + query: "@session.has_replay:true" + sample_rate: 50.5 + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFilterResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM retention filter + tags: + - Rum Retention Filters + patch: + description: |- + Update a RUM retention filter for a RUM application. + Returns RUM retention filter objects from the request body when the request is successful. + operationId: UpdateRetentionFilter + parameters: + - $ref: "#/components/parameters/RumApplicationIDParameter" + - $ref: "#/components/parameters/RumRetentionFilterIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25.0 + enabled: true + event_type: session + name: Retention filter for session + query: "@session.has_replay:true" + sample_rate: 50.5 + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFilterUpdateRequest" + description: New definition of the RUM retention filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25.0 + enabled: true + event_type: session + name: Retention filter for session + query: "@session.has_replay:true" + sample_rate: 50.5 + id: "051601eb-54a0-abc0-03f9-cc02efa18892" + type: retention_filters + schema: + $ref: "#/components/schemas/RumRetentionFilterResponse" + description: Updated + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM retention filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{id}: + delete: + description: Delete an existing RUM application in your organization. + operationId: DeleteRUMApplication + parameters: + - description: RUM application ID. + in: path + name: id + required: true + schema: + type: string + responses: + "204": + description: No Content + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM application + tags: ["RUM"] + "x-permission": + operator: OR + permissions: + - rum_apps_write + get: + description: Get the RUM application with given ID in your organization. + operationId: GetRUMApplication + parameters: + - description: RUM application ID. + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc-123 + client_token: abc-123-token + created_at: 1659479836169 + created_by_handle: example-handle + name: my_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: "#/components/schemas/RUMApplicationResponse" + description: OK + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM application + tags: ["RUM"] + "x-permission": + operator: OR + permissions: + - rum_apps_read + patch: + description: Update the RUM application with given ID in your organization. + operationId: UpdateRUMApplication + parameters: + - description: RUM application ID. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: updated_name_for_my_existing_rum_application + product_analytics_retention_state: MAX + rum_event_processing_state: ALL + type: browser + id: abcd1234-0000-0000-abcd-1234abcd5678 + type: rum_application_update + schema: + $ref: "#/components/schemas/RUMApplicationUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc-123 + client_token: abc-123-token + created_at: 1659479836169 + created_by_handle: example-handle + name: updated_name_for_my_existing_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: "#/components/schemas/RUMApplicationResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM application + tags: ["RUM"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - rum_apps_write + /api/v2/rum/config: + get: + description: Get the RUM configuration for your organization. + operationId: GetRumConfig + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + enforced_application_tags: true + enforced_application_tags_updated_at: "2024-01-15T09:30:00.000Z" + enforced_application_tags_updated_by: "user@example.com" + ootb_metrics_version: 5 + ootb_metrics_version_installed_at: "2024-01-15T09:30:00.000Z" + retention_filters_enabled: true + retention_filters_enabled_updated_at: "2024-01-15T09:30:00.000Z" + retention_filters_enabled_updated_by: "contract-update-job" + id: "1234" + type: rum_config + schema: + $ref: "#/components/schemas/RumConfigResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the RUM configuration + tags: + - RUM Config + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the RUM configuration for your organization. + Returns the RUM configuration object from the request body when the request is successful. + operationId: UpdateRumConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enforced_application_tags: false + type: rum_config + schema: + $ref: "#/components/schemas/RumConfigUpdateRequest" + description: New definition of the RUM configuration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + enforced_application_tags: false + enforced_application_tags_updated_at: "2024-01-15T09:30:00.000Z" + enforced_application_tags_updated_by: "user@example.com" + ootb_metrics_version: 5 + ootb_metrics_version_installed_at: "2024-01-15T09:30:00.000Z" + retention_filters_enabled: true + retention_filters_enabled_updated_at: "2024-01-15T09:30:00.000Z" + retention_filters_enabled_updated_by: "contract-update-job" + id: "1234" + type: rum_config + schema: + $ref: "#/components/schemas/RumConfigResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update the RUM configuration + tags: + - RUM Config + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create the RUM configuration for your organization. + Returns the RUM configuration object from the request body when the request is successful. + operationId: CreateRumConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enforced_application_tags: true + type: rum_config + schema: + $ref: "#/components/schemas/RumConfigCreateRequest" + description: The definition of the RUM configuration to create. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + enforced_application_tags: true + enforced_application_tags_updated_at: "2024-01-15T09:30:00.000Z" + enforced_application_tags_updated_by: "user@example.com" + ootb_metrics_version: 5 + ootb_metrics_version_installed_at: "2024-01-15T09:30:00.000Z" + retention_filters_enabled: true + retention_filters_enabled_updated_at: "2024-01-15T09:30:00.000Z" + retention_filters_enabled_updated_by: "contract-update-job" + id: "1234" + type: rum_config + schema: + $ref: "#/components/schemas/RumConfigResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create the RUM configuration + tags: + - RUM Config + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/metrics: + get: + description: Get the list of configured RUM-based metrics with their definitions. + operationId: ListRumMetrics + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + event_type: session + filter: + query: "@service:web-api" + group_by: + - path: "@browser.name" + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: "#/components/schemas/RumMetricsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all RUM-based metrics + tags: + - Rum Metrics + post: + description: |- + Create a metric based on your organization's RUM data. + Returns the RUM-based metric object from the request body when the request is successful. + operationId: CreateRumMetric + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + event_type: session + filter: + query: "@service:web-api" + group_by: + - path: "@browser.name" + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: "#/components/schemas/RumMetricCreateRequest" + description: The definition of the new RUM-based metric. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + event_type: session + filter: + query: "@service:web-api" + group_by: + - path: "@browser.name" + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: "#/components/schemas/RumMetricResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a RUM-based metric + tags: + - Rum Metrics + x-codegen-request-body-name: body + /api/v2/rum/config/metrics/{metric_id}: + delete: + description: Delete a specific RUM-based metric from your organization. + operationId: DeleteRumMetric + parameters: + - $ref: "#/components/parameters/RumMetricIDParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM-based metric + tags: + - Rum Metrics + get: + description: Get a specific RUM-based metric from your organization. + operationId: GetRumMetric + parameters: + - $ref: "#/components/parameters/RumMetricIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + event_type: session + filter: + query: "@service:web-api" + group_by: + - path: "@browser.name" + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: "#/components/schemas/RumMetricResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM-based metric + tags: + - Rum Metrics + patch: + description: |- + Update a specific RUM-based metric from your organization. + Returns the RUM-based metric object from the request body when the request is successful. + operationId: UpdateRumMetric + parameters: + - $ref: "#/components/parameters/RumMetricIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + include_percentiles: true + filter: + query: "@service:web-api" + group_by: + - path: "@browser.name" + tag_name: browser_name + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: "#/components/schemas/RumMetricUpdateRequest" + description: New definition of the RUM-based metric. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: "@duration" + event_type: session + filter: + query: "@service:web-api" + group_by: + - path: "@browser.name" + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: "#/components/schemas/RumMetricResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM-based metric + tags: + - Rum Metrics + x-codegen-request-body-name: body + /api/v2/rum/config/retention-quota/{scope_type}/{scope_id}: + delete: + description: Delete the RUM retention quota configuration for a given scope. + operationId: DeleteRumQuotaConfig + parameters: + - $ref: "#/components/parameters/RumRetentionQuotaScopeTypeParameter" + - $ref: "#/components/parameters/RumRetentionQuotaScopeIDParameter" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM retention quota configuration + tags: + - RUM Retention Quotas + x-permission: + operator: OR + permissions: + - rum_retention_filters_write + get: + description: Get the RUM retention quota configuration for a given scope. + operationId: GetRumQuotaConfig + parameters: + - $ref: "#/components/parameters/RumRetentionQuotaScopeTypeParameter" + - $ref: "#/components/parameters/RumRetentionQuotaScopeIDParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom: + daily_reset_time: "08:00" + daily_reset_timezone: "+09:00" + quota_reached_action: stop + session_limit: 1000000 + window_type: daily + mode: custom + org_id: 2 + updated_at: "2026-03-04T15:37:54.951447Z" + updated_by: test@example.com + id: cd73a516-a481-4af5-8352-9b577465c77b + type: rum_quota_config + schema: + $ref: "#/components/schemas/RumRetentionQuotaConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM retention quota configuration + tags: + - RUM Retention Quotas + x-permission: + operator: OR + permissions: + - rum_retention_filters_read + put: + description: |- + Create or update the RUM retention quota configuration for a given scope. + Returns the retention quota configuration object when the request is successful. + operationId: UpsertRumQuotaConfig + parameters: + - $ref: "#/components/parameters/RumRetentionQuotaScopeTypeParameter" + - $ref: "#/components/parameters/RumRetentionQuotaScopeIDParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom: + daily_reset_time: "08:00" + daily_reset_timezone: "+09:00" + quota_reached_action: stop + session_limit: 1000000 + window_type: daily + mode: custom + id: cd73a516-a481-4af5-8352-9b577465c77b + type: rum_quota_config + schema: + $ref: "#/components/schemas/RumRetentionQuotaConfigUpdateRequest" + description: The definition of the RUM retention quota configuration to create or update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + custom: + daily_reset_time: "08:00" + daily_reset_timezone: "+09:00" + quota_reached_action: stop + session_limit: 1000000 + window_type: daily + mode: custom + org_id: 2 + updated_at: "2026-03-04T21:52:53.526022Z" + updated_by: test@example.com + id: cd73a516-a481-4af5-8352-9b577465c77b + type: rum_quota_config + schema: + $ref: "#/components/schemas/RumRetentionQuotaConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create or update a RUM retention quota config + tags: + - RUM Retention Quotas + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_retention_filters_write + /api/v2/rum/config/teams-ownership/mappings: + get: + description: Get the list of teams ownership mappings for your organization, optionally filtered. + operationId: ListTeamsOwnershipMappings + parameters: + - $ref: "#/components/parameters/TeamsOwnershipFilterViewNameParameter" + - $ref: "#/components/parameters/TeamsOwnershipFilterTeamHandleParameter" + - $ref: "#/components/parameters/TeamsOwnershipFilterApplicationIdParameter" + - $ref: "#/components/parameters/TeamsOwnershipFilterServiceParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: "11111111-2222-3333-4444-555555555555" + created_at: "2026-01-15T09:30:00.000Z" + created_by: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + match_type: "exact" + org_id: 123456 + service: "web-checkout" + team_handle: "team-rum" + view_name: "/checkout" + id: "123" + type: teams_ownership_mappings + schema: + $ref: "#/components/schemas/TeamsOwnershipMappingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List teams ownership mappings + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a teams ownership mapping for your organization. + Returns the teams ownership mapping object from the request body when the request is successful. + operationId: CreateTeamsOwnershipMapping + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "11111111-2222-3333-4444-555555555555" + match_type: "exact" + service: "web-checkout" + team_handle: "team-rum" + view_name: "/checkout" + type: teams_ownership_mappings + schema: + $ref: "#/components/schemas/TeamsOwnershipMappingCreateRequest" + description: The definition of the teams ownership mapping to create. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "11111111-2222-3333-4444-555555555555" + created_at: "2026-01-15T09:30:00.000Z" + created_by: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + match_type: "exact" + org_id: 123456 + service: "web-checkout" + team_handle: "team-rum" + view_name: "/checkout" + id: "123" + type: teams_ownership_mappings + schema: + $ref: "#/components/schemas/TeamsOwnershipMappingResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a teams ownership mapping + tags: + - Rum Teams Ownership + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/teams-ownership/mappings/operations: + post: + description: |- + Add and remove teams ownership mappings for your organization in a single atomic request, following + the JSON:API [atomic operations extension](https://jsonapi.org/ext/atomic/). + Operations are applied together: if any operation is invalid, none of the operations are applied. + Add operations are processed before remove operations, so results may not appear in the same + order as the request. + operationId: CreateTeamsOwnershipMappingsBatch + requestBody: + content: + application/json: + examples: + default: + value: + atomic:operations: + - data: + attributes: + application_id: "11111111-2222-3333-4444-555555555555" + match_type: "exact" + service: "web-checkout" + team_handle: "team-rum" + view_name: "/checkout" + type: teams_ownership_mappings + op: add + - op: remove + ref: + id: "456" + type: teams_ownership_mappings + schema: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchRequest" + description: The list of add and remove operations to apply atomically. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + atomic:results: + - data: + attributes: + application_id: "11111111-2222-3333-4444-555555555555" + created_at: "2026-01-15T09:30:00.000Z" + created_by: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + match_type: "exact" + org_id: 123456 + service: "web-checkout" + team_handle: "team-rum" + view_name: "/checkout" + id: "123" + type: teams_ownership_mappings + - {} + schema: + $ref: "#/components/schemas/TeamsOwnershipMappingBatchResponse" + description: OK + "400": + content: + application/json: + examples: + default: + value: + errors: + - detail: "prefix match_type is not enabled for this org" + status: "400" + title: "Bad Request" + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: |- + Bad Request. One or more operations failed validation, so none of the operations were applied. + Errors are returned in the JSON:API atomic operations error format rather than the standard error response. + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found. One or more mappings requested for removal do not exist. + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict. One or more mappings requested for creation already exist. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Bulk create and remove teams ownership mappings + tags: + - Rum Teams Ownership + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/teams-ownership/mappings/{id}: + delete: + description: Delete a specific teams ownership mapping from your organization. + operationId: DeleteTeamsOwnershipMapping + parameters: + - $ref: "#/components/parameters/TeamsOwnershipMappingIdParameter" + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a teams ownership mapping + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a specific teams ownership mapping from your organization. + operationId: GetTeamsOwnershipMapping + parameters: + - $ref: "#/components/parameters/TeamsOwnershipMappingIdParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "11111111-2222-3333-4444-555555555555" + created_at: "2026-01-15T09:30:00.000Z" + created_by: "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee" + match_type: "exact" + org_id: 123456 + service: "web-checkout" + team_handle: "team-rum" + view_name: "/checkout" + id: "123" + type: teams_ownership_mappings + schema: + $ref: "#/components/schemas/TeamsOwnershipMappingResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a teams ownership mapping + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/teams-ownership/rules: + get: + description: |- + Get the list of teams ownership rules for your organization, optionally filtered. + Rules group the underlying mappings by `view_name`, `application_id`, `service`, and `match_type`, + collapsing every team that owns the same view into a single entry. + operationId: ListTeamsOwnershipRules + parameters: + - $ref: "#/components/parameters/TeamsOwnershipFilterViewNameParameter" + - $ref: "#/components/parameters/TeamsOwnershipFilterTeamHandleParameter" + - $ref: "#/components/parameters/TeamsOwnershipFilterApplicationIdParameter" + - $ref: "#/components/parameters/TeamsOwnershipFilterServiceParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: "11111111-2222-3333-4444-555555555555" + match_type: "exact" + service: "web-checkout" + teams: + - mapping_id: "123" + team_handle: "team-rum" + view_name: "/checkout" + id: "3b1e2f7a9c4d6e8f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f" + type: teams_ownership_grouped_mappings + schema: + $ref: "#/components/schemas/TeamsOwnershipRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List teams ownership rules + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/events: + get: + description: |- + List endpoint returns events that match a RUM search query. + [Results are paginated][1]. + + Use this endpoint to see your latest RUM events. + + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + operationId: ListRUMEvents + parameters: + - description: Search query following RUM syntax. + example: "@type:session @application_id:xxxx" + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events. + example: "2019-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested events. + example: "2019-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/RUMSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + service: test-service + timestamp: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: rum + schema: + $ref: "#/components/schemas/RUMEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a list of RUM events + tags: ["RUM"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - rum_apps_read + /api/v2/rum/events/search: + post: + description: |- + List endpoint returns RUM events that match a RUM search query. + [Results are paginated][1]. + + Use this endpoint to build complex RUM events filtering and search. + + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + operationId: SearchRUMEvents + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: now-15m + query: "@type:session AND @session.type:user" + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/RUMSearchEventsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + service: test-service + timestamp: "2024-01-01T00:00:00+00:00" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: rum + meta: + elapsed: 132 + request_id: abc-123 + status: done + schema: + $ref: "#/components/schemas/RUMEventsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Search RUM events + tags: ["RUM"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - rum_apps_read + /api/v2/rum/operations: + post: + description: Create a new RUM operation, defining the journey used to detect it from RUM events. + operationId: CreateRUMOperation + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/RUMOperationCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "abc12345-1234-5678-abcd-ef1234567890" + category: conversion + created_at: "2024-01-15T10:30:00Z" + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: "abc12345-1234-5678-abcd-ef1234567890" + description: "Tracks users completing the checkout flow." + display_name: Checkout completed + feature_ids: + - "feature-123" + journey_rum: + rum_steps: + - nodes: + - id: "node-1" + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: "node-2" + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - "team:checkout" + updated_at: + updated_by: + id: "abc12345-1234-5678-abcd-ef1234567890" + type: operations + schema: + $ref: "#/components/schemas/RUMOperationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict. An operation with this name already exists. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/by-name/{name}: + get: + description: Retrieve a specific RUM operation by its unique name. + operationId: GetRUMOperationByName + parameters: + - description: The unique name of the RUM operation. + in: path + name: name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "abc12345-1234-5678-abcd-ef1234567890" + category: conversion + created_at: "2024-01-15T10:30:00Z" + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: "abc12345-1234-5678-abcd-ef1234567890" + description: "Tracks users completing the checkout flow." + display_name: Checkout completed + feature_ids: + - "feature-123" + journey_rum: + rum_steps: + - nodes: + - id: "node-1" + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: "node-2" + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - "team:checkout" + updated_at: + updated_by: + id: "abc12345-1234-5678-abcd-ef1234567890" + type: operations + schema: + $ref: "#/components/schemas/RUMOperationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM operation by name + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/search: + get: + description: Search RUM operations for your organization. Supports filtering by query, creator, team, feature, and application. + operationId: ListRUMOperations + parameters: + - description: A search query to filter operations by name. + in: query + name: query + required: false + schema: + example: "checkout" + type: string + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of items per page. Maximum of 100. + in: query + name: page[limit] + required: false + schema: + default: 50 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Filter operations by the email of their creator. + in: query + name: creator + required: false + schema: + example: user@example.com + type: string + - description: Filter operations by team. Accepts a comma-separated list of teams. + in: query + name: team + required: false + schema: + example: "frontend,checkout" + type: string + - description: Filter operations by feature ID. Accepts a comma-separated list of feature IDs. + in: query + name: feature_id + required: false + schema: + type: string + - description: Filter operations by RUM application ID. + in: query + name: application_id + required: false + schema: + example: "abc12345-1234-5678-abcd-ef1234567890" + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: "abc12345-1234-5678-abcd-ef1234567890" + category: conversion + created_at: "2024-01-15T10:30:00Z" + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: "abc12345-1234-5678-abcd-ef1234567890" + description: "Tracks users completing the checkout flow." + display_name: Checkout completed + feature_ids: + - "feature-123" + journey_rum: + rum_steps: + - nodes: + - id: "node-1" + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: "node-2" + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - "team:checkout" + updated_at: + updated_by: + id: "abc12345-1234-5678-abcd-ef1234567890" + type: operations + meta: + page: + first_offset: 0 + last_offset: 0 + limit: 50 + next_offset: + offset: 0 + prev_offset: + total: 1 + type: offset + schema: + $ref: "#/components/schemas/RUMOperationsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Search RUM operations + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/strong_links: + get: + description: |- + List strong links between RUM operations and features. A strong link confirms that a feature + belongs to an operation. Provide `operation_id`, `feature_id`, or both to filter results; + at least one is required. + operationId: ListRUMOperationStrongLinks + parameters: + - description: Filter strong links by RUM operation ID. + in: query + name: operation_id + required: false + schema: + type: string + - description: Filter strong links by feature ID. + in: query + name: feature_id + required: false + schema: + type: string + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of items per page. Maximum of 200. + in: query + name: page[limit] + required: false + schema: + default: 50 + format: int64 + maximum: 200 + minimum: 1 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-15T10:30:00Z" + description: "Confirmed link between checkout_completed and feature-123." + feature_id: "feature-123" + operation_id: "abc12345-1234-5678-abcd-ef1234567890" + status: CONFIRMED + tags: + - "team:checkout" + updated_at: + id: "abc12345-1234-5678-abcd-ef1234567890:feature-123" + type: strong_links + meta: + limit: 50 + offset: 0 + total: 1 + schema: + $ref: "#/components/schemas/RUMOperationStrongLinksListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List RUM operation strong links + tags: + - RUM Operations + post: + description: |- + Create a strong link between a RUM operation and a feature, confirming that the feature + belongs to the operation. The operation can be identified by `operation_id` or `operation_name`; + if `operation_name` does not match an existing operation, a stub operation is created. + operationId: CreateRUMOperationStrongLink + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/RUMOperationStrongLinkCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + description: "Confirmed link between checkout_completed and feature-123." + feature_id: "feature-123" + operation_id: "abc12345-1234-5678-abcd-ef1234567890" + status: CONFIRMED + tags: + - "team:checkout" + updated_at: + id: "abc12345-1234-5678-abcd-ef1234567890:feature-123" + type: strong_links + schema: + $ref: "#/components/schemas/RUMOperationStrongLinkResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found. The referenced `operation_id` does not exist. + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict. A strong link between this operation and feature already exists. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a RUM operation strong link + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/strong_links/{rum_operation_id}/{feature_id}: + delete: + description: Delete the strong link between a RUM operation and a feature. + operationId: DeleteRUMOperationStrongLink + parameters: + - description: The unique identifier of the RUM operation. + in: path + name: rum_operation_id + required: true + schema: + type: string + - description: The unique identifier of the feature. + in: path + name: feature_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM operation strong link + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update the status of a strong link between a RUM operation and a feature. + operationId: UpdateRUMOperationStrongLink + parameters: + - description: The unique identifier of the RUM operation. + in: path + name: rum_operation_id + required: true + schema: + type: string + - description: The unique identifier of the feature. + in: path + name: feature_id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/RUMOperationStrongLinkUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-15T10:30:00Z" + description: "Confirmed link between checkout_completed and feature-123." + feature_id: "feature-123" + operation_id: "abc12345-1234-5678-abcd-ef1234567890" + status: CONFIRMED + tags: + - "team:checkout" + updated_at: "2024-01-16T09:00:00Z" + id: "abc12345-1234-5678-abcd-ef1234567890:feature-123" + type: strong_links + schema: + $ref: "#/components/schemas/RUMOperationStrongLinkResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM operation strong link + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/{rum_operation_id}: + delete: + description: Delete a RUM operation. + operationId: DeleteRUMOperation + parameters: + - description: The unique identifier of the RUM operation to delete. + in: path + name: rum_operation_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a specific RUM operation by its unique identifier. + operationId: GetRUMOperation + parameters: + - description: The unique identifier of the RUM operation. + in: path + name: rum_operation_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "abc12345-1234-5678-abcd-ef1234567890" + category: conversion + created_at: "2024-01-15T10:30:00Z" + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: "abc12345-1234-5678-abcd-ef1234567890" + description: "Tracks users completing the checkout flow." + display_name: Checkout completed + feature_ids: + - "feature-123" + journey_rum: + rum_steps: + - nodes: + - id: "node-1" + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: "node-2" + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - "team:checkout" + updated_at: + updated_by: + id: "abc12345-1234-5678-abcd-ef1234567890" + type: operations + schema: + $ref: "#/components/schemas/RUMOperationResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Update an existing RUM operation. Fields omitted from the request body keep their existing value, + with the exception of `journey_rum`, which is required and fully replaced on every update. + operationId: UpdateRUMOperation + parameters: + - description: The unique identifier of the RUM operation to update. + in: path + name: rum_operation_id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/RUMOperationUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: "abc12345-1234-5678-abcd-ef1234567890" + category: conversion + created_at: "2024-01-15T10:30:00Z" + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: "abc12345-1234-5678-abcd-ef1234567890" + description: "Tracks users completing the checkout flow." + display_name: Checkout completed + feature_ids: + - "feature-123" + journey_rum: + rum_steps: + - nodes: + - id: "node-1" + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: "node-2" + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - "team:checkout" + updated_at: "2024-01-16T09:00:00Z" + updated_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: "abc12345-1234-5678-abcd-ef1234567890" + id: "abc12345-1234-5678-abcd-ef1234567890" + type: operations + schema: + $ref: "#/components/schemas/RUMOperationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict. An operation with this name already exists. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/query/insight/aggregated_long_tasks: + post: + description: |- + Get aggregated long task data for a RUM view, grouped by invoker type and sampled across multiple view instances. + operationId: QueryAggregatedLongTasks + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1762437564 + sample_size: 20 + to: 1762523964 + view_name: /account/login(/:type) + type: aggregated_long_tasks + schema: + $ref: "#/components/schemas/AggregatedLongTasksRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1762437564 + long_tasks_by_invoker_type: + - impact_score: 0.4 + invoker_type: resolve-promise + stats_per_view: + total_blocking_time_ms: + average: 3504.1 + max: 3517.8 + min: 3500.1 + total_count: + average: 1.0 + max: 1.0 + min: 1.0 + top_invokers: + - file: src/pages/Gallery.tsx + impact_score: 0.67 + invoker: Response.json.then + stats_per_view: + total_count: + average: 1.0 + max: 1.0 + min: 1.0 + view_occurrences: 68 + view_occurrences: 68 + sampled_view_ids: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + to: 1762523964 + view_count: 20 + view_name: /account/login(/:type) + id: 2f0b3455 + type: aggregated_long_tasks + schema: + $ref: "#/components/schemas/AggregatedLongTasksResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Query aggregated long tasks + tags: ["RUM Insights"] + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/query/insight/aggregated_signals_problems: + post: + description: |- + Get aggregated performance signals and problem detections for a RUM view, sampled across multiple view instances. + operationId: QueryAggregatedSignalsProblems + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1762437564 + sample_size: 30 + to: 1762523964 + view_name: /account/login(/:type) + type: aggregated_signals_problems + schema: + $ref: "#/components/schemas/AggregatedSignalsProblemsRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1710000000 + problem_detections: + high_script_evaluations: + - avg_duration: 300000000 + avg_forced_style_layout: 0 + fingerprint: v1$7766a8c2180aa153f5526ba8868999f8 + impact_score: 30.0 + instance_count: 3 + invoker_type: user-callback + source_category: + source_function_name: handleClick + source_url: https://cdn.example.com/app.js + view_occurrences: 3 + sample_metadata: + failed: 2 + requested: 30 + sampled_view_ids: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + succeeded: 28 + success_rate: 0.93 + to: 1710003600 + view_name: /checkout + id: 2f0b3455 + type: aggregated_signals_problems + schema: + $ref: "#/components/schemas/AggregatedSignalsProblemsResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Query aggregated signals and problems + tags: ["RUM Insights"] + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/query/insight/aggregated_waterfall: + post: + description: |- + Get aggregated network resource waterfall data for a RUM view, sampled across multiple view instances. + operationId: QueryAggregatedWaterfall + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + criteria: + metric: largest_contentful_paint + min: 0.3 + from: 1762437564 + sample_size: 20 + to: 1762523964 + view_name: /account/login(/:type) + type: aggregated_waterfall + schema: + $ref: "#/components/schemas/AggregatedWaterfallRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + criteria: + metric: largest_contentful_paint + min: 0.3 + from: 1762437564 + resources: + - avg_duration_ms: 839.1 + avg_start_time_ms: 1486.3 + cache_hit_rate_pct: 100.0 + cached_count: 27 + downloaded_count: 0 + http_method: GET + load_frequency_pct: 54.0 + max_duration_ms: 945.6 + median_duration_ms: 836.2 + min_duration_ms: 812.7 + p75_duration_ms: 844.1 + p95_duration_ms: 861.8 + resource_type: fetch + resource_url_path_group: /api/gallery + timing_breakdown: + avg_connect_ms: 0.0 + avg_dns_ms: 0.0 + avg_download_ms: 0.6 + avg_first_byte_ms: 59.9 + avg_redirect_ms: 0.0 + avg_ssl_ms: 0.0 + total_requests: 27 + views_with_resource: 27 + sampled_view_ids: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + to: 1762523964 + total_cache_hit_rate_pct: 0.5 + view_count: 20 + view_name: /account/login(/:type) + id: 2f0b3455 + type: aggregated_waterfall + schema: + $ref: "#/components/schemas/AggregatedWaterfallResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Query aggregated waterfall + tags: ["RUM Insights"] + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/replay/playlists: + get: + description: List playlists. + operationId: ListRumReplayPlaylists + parameters: + - description: Filter playlists by the UUID of the user who created them. + in: query + name: filter[created_by_uuid] + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: Search query to filter playlists by name. + in: query + name: filter[query] + schema: + example: my playlist + type: string + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: My Playlist + id: "123" + type: rum_replay_playlist + schema: + $ref: "#/components/schemas/PlaylistArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay playlists + tags: + - Rum Replay Playlists + post: + description: Create a playlist. + operationId: CreateRumReplayPlaylist + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_by: + handle: john.doe@example.com + id: 00000000-0000-0000-0000-000000000001 + uuid: 00000000-0000-0000-0000-000000000001 + name: My Playlist + type: rum_replay_playlist + schema: + $ref: "#/components/schemas/Playlist" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Playlist + id: "123" + type: rum_replay_playlist + schema: + $ref: "#/components/schemas/Playlist" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create RUM replay playlist + tags: + - Rum Replay Playlists + /api/v2/rum/replay/playlists/{playlist_id}: + delete: + description: Delete a playlist. + operationId: DeleteRumReplayPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete RUM replay playlist + tags: + - Rum Replay Playlists + get: + description: Get a playlist. + operationId: GetRumReplayPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Playlist + id: "123" + type: rum_replay_playlist + schema: + $ref: "#/components/schemas/Playlist" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get RUM replay playlist + tags: + - Rum Replay Playlists + put: + description: Update a playlist. + operationId: UpdateRumReplayPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_by: + handle: john.doe@example.com + id: 00000000-0000-0000-0000-000000000001 + uuid: 00000000-0000-0000-0000-000000000001 + name: My Playlist + type: rum_replay_playlist + schema: + $ref: "#/components/schemas/Playlist" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Playlist + id: "123" + type: rum_replay_playlist + schema: + $ref: "#/components/schemas/Playlist" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update RUM replay playlist + tags: + - Rum Replay Playlists + /api/v2/rum/replay/playlists/{playlist_id}/sessions: + delete: + description: Remove sessions from a playlist. + operationId: BulkRemoveRumReplayPlaylistSessions + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: "#/components/schemas/SessionIdArray" + required: true + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Bulk remove RUM replay playlist sessions + tags: + - Rum Replay Playlists + get: + description: List sessions in a playlist. + operationId: ListRumReplayPlaylistSessions + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + track: main + id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: "#/components/schemas/PlaylistsSessionArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay playlist sessions + tags: + - Rum Replay Playlists + /api/v2/rum/replay/playlists/{playlist_id}/sessions/{session_id}: + delete: + description: Remove a session from a playlist. + operationId: RemoveRumReplaySessionFromPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Remove RUM replay session from playlist + tags: + - Rum Replay Playlists + put: + description: Add a session to a playlist. + operationId: AddRumReplaySessionToPlaylist + parameters: + - description: "Data source type. Valid values: 'rum' or 'product_analytics'. Defaults to 'rum'." + in: query + name: data_source + schema: + example: rum + type: string + - description: Server-side timestamp in milliseconds. + in: query + name: ts + required: true + schema: + example: 1704067200000 + format: int64 + type: integer + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + track: main + id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: "#/components/schemas/PlaylistsSession" + description: OK + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + track: main + id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: "#/components/schemas/PlaylistsSession" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Add RUM replay session to playlist + tags: + - Rum Replay Playlists + /api/v2/rum/replay/sessions/{session_id}/views/{view_id}/segments: + get: + description: Get segments for a view. + operationId: GetSegments + parameters: + - description: Unique identifier of the view. + in: path + name: view_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000002 + type: string + - description: "Storage source: 'event_platform' or 'blob'." + in: query + name: source + schema: + example: event_platform + type: string + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: Server-side timestamp in milliseconds. + in: query + name: ts + schema: + example: 1704067200000 + format: int64 + type: integer + - description: Maximum size in bytes for the segment list. + in: query + name: max_list_size + schema: + example: 1048576 + format: int64 + type: integer + - description: Paging token for pagination. + in: query + name: paging + schema: + example: eyJuZXh0IjoiYWJjMTIzIn0 + type: string + responses: + "200": + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get segments + tags: + - Rum Replay Sessions + /api/v2/rum/replay/sessions/{session_id}/watchers: + get: + description: List session watchers. + operationId: ListRumReplaySessionWatchers + parameters: + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle: test@example.com + last_watched_at: "2024-01-01T00:00:00+00:00" + watch_count: 1 + id: abc-123 + type: rum_replay_watcher + schema: + $ref: "#/components/schemas/WatcherArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay session watchers + tags: + - Rum Replay Viewership + /api/v2/rum/replay/sessions/{session_id}/watches: + delete: + description: Delete session watch history. + operationId: DeleteRumReplaySessionWatch + parameters: + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete RUM replay session watch + tags: + - Rum Replay Viewership + post: + description: Record a session watch. + operationId: CreateRumReplaySessionWatch + parameters: + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + event_id: 11111111-2222-3333-4444-555555555555 + timestamp: "2026-01-13T17:15:53.208340Z" + type: rum_replay_watch + schema: + $ref: "#/components/schemas/Watch" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + event_id: 11111111-2222-3333-4444-555555555555 + timestamp: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: rum_replay_watch + schema: + $ref: "#/components/schemas/Watch" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create RUM replay session watch + tags: + - Rum Replay Viewership + /api/v2/rum/replay/viewership-history/sessions: + get: + description: List watched sessions. + operationId: ListRumReplayViewershipHistorySessions + parameters: + - description: Start timestamp in milliseconds for watched_at filter. + in: query + name: filter[watched_at][start] + schema: + example: 1704067200000 + format: int64 + type: integer + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Filter by user UUID. Defaults to current user if not specified. + in: query + name: filter[created_by] + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: End timestamp in milliseconds for watched_at filter. + in: query + name: filter[watched_at][end] + schema: + example: 1704153600000 + format: int64 + type: integer + - description: Comma-separated list of session IDs to filter by. + in: query + name: filter[session_ids] + schema: + example: 11111111-2222-3333-4444-555555555555,22222222-3333-4444-5555-666666666666 + type: string + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + - description: Filter by application ID. + in: query + name: filter[application_id] + schema: + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + last_watched_at: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: rum_replay_session + schema: + $ref: "#/components/schemas/ViewershipHistorySessionArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay viewership history sessions + tags: + - Rum Replay Viewership + /api/v2/saml_configurations: + get: + description: Get the list of SAML configurations for the current organization. An organization has at most one SAML configuration. + operationId: ListSAMLConfigurations + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + assertion_consumer_service: + - https://app.datadoghq.com/account/saml/assertion + entity_id: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + expires_at: "2010-10-26T13:31:15+00:00" + idp_initiated: true + jit_domains: + - example.com + sso_url: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + included: + - attributes: + name: Datadog Standard Role + id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/SAMLConfigurationsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List SAML configurations + tags: + - Organizations + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/saml_configurations/idp_metadata: + post: + description: |- + Endpoint for uploading IdP metadata for SAML setup. + + Use this endpoint to upload or replace IdP metadata for SAML login configuration. + operationId: UploadIdPMetadata + requestBody: + content: + multipart/form-data: + examples: + default: + value: {} + schema: + $ref: "#/components/schemas/IdPMetadataFormData" + required: true + responses: + "200": + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Upload IdP metadata + tags: + - Organizations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/saml_configurations/{saml_config_uuid}: + get: + description: Get a single SAML configuration for the current organization by its UUID. + operationId: GetSAMLConfiguration + parameters: + - $ref: "#/components/parameters/SAMLConfigurationUUIDPathParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assertion_consumer_service: + - https://app.datadoghq.com/account/saml/assertion + entity_id: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + expires_at: "2010-10-26T13:31:15+00:00" + idp_initiated: true + jit_domains: + - example.com + sso_url: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + included: + - attributes: + name: Datadog Standard Role + id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/SAMLConfigurationResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a SAML configuration + tags: + - Organizations + "x-permission": + operator: OR + permissions: + - org_management + patch: + description: |- + Update a single SAML configuration for the current organization. + + Use this endpoint to enable or disable identity-provider-initiated login, set the + just-in-time provisioning domains, and set the default role assigned to + just-in-time provisioned users. A default role is required to enable just-in-time provisioning. + operationId: UpdateSAMLConfiguration + parameters: + - $ref: "#/components/parameters/SAMLConfigurationUUIDPathParameter" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + idp_initiated: true + jit_domains: + - example.com + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + schema: + $ref: "#/components/schemas/SAMLConfigurationUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assertion_consumer_service: + - https://app.datadoghq.com/account/saml/assertion + entity_id: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + expires_at: "2010-10-26T13:31:15+00:00" + idp_initiated: true + jit_domains: + - example.com + sso_url: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + included: + - attributes: + name: Datadog Standard Role + id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: "#/components/schemas/SAMLConfigurationResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a SAML configuration + tags: + - Organizations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - org_management + /api/v2/scorecard/campaigns: + get: + description: Fetches all scorecard campaigns. + operationId: ListScorecardCampaigns + parameters: + - description: Maximum number of campaigns to return. + in: query + name: page[limit] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + - description: Filter campaigns by name (full-text search). + in: query + name: filter[campaign][name] + required: false + schema: + example: security + type: string + - description: Filter campaigns by status. + in: query + name: filter[campaign][status] + required: false + schema: + example: in_progress + type: string + - description: Filter campaigns by owner UUID. + in: query + name: filter[campaign][owner] + required: false + schema: + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2026-01-01T00:00:00Z" + entity_scope: kind:service + key: test-campaign-1 + modified_at: "2026-01-01T00:00:00Z" + name: Test Campaign 1 + owner: "" + start_date: "2026-01-01T00:00:00Z" + status: in_progress + id: campaign-1 + meta: + entity_count: 25 + rule_count: 2 + relationships: + rules: + data: + - id: rule-1 + type: rule + - id: rule-2 + type: rule + type: campaign + meta: + count: 1 + limit: 10 + offset: 0 + total: 1 + schema: + $ref: "#/components/schemas/ListCampaignsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + - cases_read + summary: List all campaigns + tags: + - Scorecards + post: + description: Creates a new scorecard campaign. + operationId: CreateScorecardCampaign + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Campaign to improve security posture for Q1 2024. + due_date: "2024-03-31T23:59:59Z" + entity_scope: "kind:service AND team:platform" + guidance: Please ensure all services pass the security requirements. + key: q1-security-2024 + name: Q1 Security Campaign + owner_id: 550e8400-e29b-41d4-a716-446655440000 + rule_ids: + - q8MQxk8TCqrHnWkx + - r9NRyl9UDrsIoXly + start_date: "2024-01-01T00:00:00Z" + status: in_progress + type: campaign + schema: + $ref: "#/components/schemas/CreateCampaignRequest" + description: Campaign data. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-01-01T00:00:00Z" + key: minimal-campaign + modified_at: "2026-01-01T00:00:00Z" + name: Minimal Campaign + owner: 21f98ae1-4ae2-11eb-958f-07e105a6e810 + start_date: "2026-01-01T00:00:00Z" + status: in_progress + id: campaign-2 + relationships: + rules: + data: + - id: rule-1 + type: rule + type: campaign + schema: + $ref: "#/components/schemas/CampaignResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + - cases_write + summary: Create a new campaign + tags: + - Scorecards + /api/v2/scorecard/campaigns/{campaign_id}: + delete: + description: Deletes a single campaign by ID or key. + operationId: DeleteScorecardCampaign + parameters: + - description: Campaign ID or key. + in: path + name: campaign_id + required: true + schema: + example: c10ODp0VCrrIpXmz + type: string + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + - cases_write + summary: Delete a campaign + tags: + - Scorecards + get: + description: Fetches a single campaign by ID or key. + operationId: GetScorecardCampaign + parameters: + - description: Campaign ID or key. + in: path + name: campaign_id + required: true + schema: + example: c10ODp0VCrrIpXmz + type: string + - description: Include related data (for example, scores). + in: query + name: include + required: false + schema: + example: scores + type: string + - description: Include metadata (entity and rule counts). + in: query + name: include_meta + required: false + schema: + example: true + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-01-01T00:00:00Z" + key: test-campaign + modified_at: "2026-01-01T00:00:00Z" + name: Test Campaign + owner: "" + start_date: "2026-01-01T00:00:00Z" + status: in_progress + id: c2b79b87-327c-40fa-b726-228f1a60bbb4 + relationships: + campaign_score: + data: + id: c2b79b87-327c-40fa-b726-228f1a60bbb4 + type: score + rule_scores: + data: + - id: rule-1 + type: score + rules: + data: + - id: rule-1 + type: rule + type: campaign + included: + - attributes: + aggregation: campaign + denominator: 13 + numerator: 10 + score: 76.92 + total_fail: 2 + total_no_data: 0 + total_pass: 10 + total_skip: 1 + id: c2b79b87-327c-40fa-b726-228f1a60bbb4 + type: score + schema: + $ref: "#/components/schemas/CampaignResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + - cases_read + summary: Get a campaign + tags: + - Scorecards + put: + description: Updates an existing campaign. + operationId: UpdateScorecardCampaign + parameters: + - description: Campaign ID or key. + in: path + name: campaign_id + required: true + schema: + example: c10ODp0VCrrIpXmz + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Campaign to improve security posture for Q1 2024. + due_date: "2024-03-31T23:59:59Z" + entity_scope: "kind:service AND team:platform" + guidance: Please ensure all services pass the security requirements. + key: q1-security-2024 + name: Q1 Security Campaign + owner_id: 550e8400-e29b-41d4-a716-446655440000 + rule_ids: + - q8MQxk8TCqrHnWkx + - r9NRyl9UDrsIoXly + start_date: "2024-01-01T00:00:00Z" + status: in_progress + type: campaign + schema: + $ref: "#/components/schemas/UpdateCampaignRequest" + description: Campaign data. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-01-01T00:00:00Z" + description: Updated Description + key: updated-campaign + modified_at: "2026-01-02T00:00:00Z" + name: Updated Campaign + owner: 21f98ae1-4ae2-11eb-958f-07e105a6e810 + start_date: "2026-01-01T00:00:00Z" + status: completed + id: 9c15b9ca-5abd-4875-84c2-02e166a45959 + relationships: + rules: + data: + - id: rule-1 + type: rule + - id: rule-2 + type: rule + type: campaign + schema: + $ref: "#/components/schemas/CampaignResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + - cases_write + summary: Update a campaign + tags: + - Scorecards + /api/v2/scorecard/outcomes: + get: + description: Fetches all rule outcomes. + operationId: ListScorecardOutcomes + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageOffset" + - description: Include related rule details in the response. + in: query + name: include + required: false + schema: + example: rule + type: string + - description: Return only specified values in the outcome attributes. + in: query + name: fields[outcome] + required: false + schema: + example: state, service_name + type: string + - description: Return only specified values in the included rule details. + in: query + name: fields[rule] + required: false + schema: + example: name + type: string + - description: Filter outcomes on a specific service name. + in: query + name: filter[outcome][service_name] + required: false + schema: + example: web-store + type: string + - description: Filter outcomes by a specific state. + in: query + name: filter[outcome][state] + required: false + schema: + example: fail + type: string + - description: Filter outcomes based on whether a rule is enabled or disabled. + in: query + name: filter[rule][enabled] + required: false + schema: + example: true + type: boolean + - description: Filter outcomes based on rule ID. + in: query + name: filter[rule][id] + required: false + schema: + example: f4485c79-0762-449c-96cf-c31e54a659f6 + type: string + - description: Filter outcomes based on rule name. + in: query + name: filter[rule][name] + required: false + schema: + example: SLOs Defined + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2026-01-06T12:51:32.000546001Z" + modified_at: "2026-01-06T12:51:32.000546001Z" + remarks: test + service_name: my-service + state: pass + id: a75tJIv_kNQ + relationships: + rule: + data: + id: rule-1 + type: rule + type: outcome + links: + next: /api/v2/scorecard/outcomes?page%5Blimit%5D=100&page%5Boffset%5D=100 + schema: + $ref: "#/components/schemas/OutcomesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: List all rule outcomes + tags: + - Scorecards + x-pagination: + limitParam: page[size] + pageOffsetParam: page[offset] + resultsPath: data + post: + description: Updates multiple scorecard rule outcomes in a single batched request. + operationId: UpdateScorecardOutcomes + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + results: + - entity_reference: service:my-service + remarks: 'See: Services' + rule_id: q8MQxk8TCqrHnWkx + state: pass + type: batched-outcome + schema: + $ref: "#/components/schemas/UpdateOutcomesAsyncRequest" + description: Set of scorecard outcomes. + required: true + responses: + "202": + description: Accepted + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Update Scorecard outcomes + tags: + - Scorecards + x-codegen-request-body-name: body + /api/v2/scorecard/outcomes/batch: + post: + deprecated: true + description: Sets multiple service-rule outcomes in a single batched request. + operationId: CreateScorecardOutcomesBatch + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + results: + - remarks: 'See: Services' + rule_id: q8MQxk8TCqrHnWkx + service_name: my-service + state: pass + type: batched-outcome + schema: + $ref: "#/components/schemas/OutcomesBatchRequest" + description: Set of scorecard outcomes. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + modified_at: "2026-03-11T07:37:20.758067Z" + remarks: test remarks + service_name: my-service + state: pass + id: nFs2_9E97Zo + relationships: + rule: + data: + id: rule-1 + type: rule + type: outcome + meta: + total_received: 1 + total_staged: 1 + schema: + $ref: "#/components/schemas/OutcomesBatchResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Create outcomes batch + tags: + - Scorecards + x-codegen-request-body-name: body + x-sunset: "2026-04-01" + x-unstable: |- + **Note**: This endpoint is deprecated. To update outcomes, use the + [Update Scorecard outcomes](https://docs.datadoghq.com/api/latest/scorecards/update-scorecard-outcomes/) endpoint. + /api/v2/scorecard/rules: + get: + description: Fetch all rules. + operationId: ListScorecardRules + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageOffset" + - description: Include related scorecard details in the response. + in: query + name: include + required: false + schema: + example: scorecard + type: string + - description: Filter the rules on a rule ID. + in: query + name: filter[rule][id] + required: false + schema: + example: 37d2f990-c885-4972-949b-8b798213a166 + type: string + - description: Filter for enabled rules only. + in: query + name: filter[rule][enabled] + required: false + schema: + example: true + type: boolean + - description: Filter for custom rules only. + in: query + name: filter[rule][custom] + required: false + schema: + example: true + type: boolean + - description: Filter rules on the rule name. + in: query + name: filter[rule][name] + required: false + schema: + example: Code Repos Defined + type: string + - description: Filter rules on the rule description. + in: query + name: filter[rule][description] + required: false + schema: + example: Identifying + type: string + - description: Return only specific fields in the response for rule attributes. + in: query + name: fields[rule] + required: false + schema: + example: name, description + type: string + - description: Return only specific fields in the included response for scorecard attributes. + in: query + name: fields[scorecard] + required: false + schema: + example: name + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: Test Scorecard + created_at: "2026-01-06T12:51:32Z" + custom: true + enabled: true + level: 3 + modified_at: "2026-01-06T12:51:32Z" + name: Test Rule 1 + scorecard_name: Test Scorecard + id: rule-1 + relationships: + scorecard: + data: + id: scorecard-1 + type: scorecard + type: rule + included: + - attributes: + description: Scorecard Description + name: Test Scorecard + id: scorecard-1 + type: scorecard + links: + next: /api/v2/scorecard/rules?include=scorecard&page%5Blimit%5D=100&page%5Boffset%5D=100 + schema: + $ref: "#/components/schemas/ListRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: List all rules + tags: + - Scorecards + x-pagination: + limitParam: page[size] + pageOffsetParam: page[offset] + resultsPath: data + post: + description: Creates a new rule. + operationId: CreateScorecardRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: My Rule + owner: Datadog + scorecard_name: My Scorecard + type: rule + schema: + $ref: "#/components/schemas/CreateRuleRequest" + description: Rule attributes. + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Test Scorecard + created_at: "2026-01-06T12:51:32Z" + custom: true + enabled: true + level: 3 + modified_at: "2026-01-06T12:51:32Z" + name: Test Rule + scorecard_name: Test Scorecard + id: rule-1 + relationships: + scorecard: + data: + id: scorecard-1 + type: scorecard + type: rule + schema: + $ref: "#/components/schemas/CreateRuleResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Create a new rule + tags: + - Scorecards + x-codegen-request-body-name: body + /api/v2/scorecard/rules/{rule_id}: + delete: + description: Deletes a single rule. + operationId: DeleteScorecardRule + parameters: + - $ref: "#/components/parameters/RuleId" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Delete a rule + tags: + - Scorecards + put: + description: Updates an existing rule. + operationId: UpdateScorecardRule + parameters: + - $ref: "#/components/parameters/RuleId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Updated Description + enabled: false + name: Updated Rule + owner: team:updated-team + scope_query: kind:service + scorecard_name: Updated Scorecard + type: rule + schema: + $ref: "#/components/schemas/UpdateRuleRequest" + description: Rule attributes. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Updated Scorecard + created_at: "2026-01-06T12:51:32Z" + custom: true + description: Updated Description + enabled: false + level: 1 + modified_at: "2026-01-06T13:00:00Z" + name: Updated Rule + owner: team:updated-team + scope_query: kind:service + scorecard_name: Updated Scorecard + id: rule-1 + relationships: + scope: + data: + id: ae07a16e-1319-5e61-bdba-b3026bc2bdcd + type: entity-scope + scorecard: + data: + id: scorecard-2 + type: scorecard + type: rule + schema: + $ref: "#/components/schemas/UpdateRuleResponse" + description: Rule updated successfully + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Update an existing scorecard rule + tags: + - Scorecards + x-codegen-request-body-name: body + /api/v2/scorecard/scorecards: + get: + description: Fetches all scorecards. + operationId: ListScorecards + parameters: + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + - description: Maximum number of scorecards to return. + in: query + name: page[size] + required: false + schema: + default: 100 + example: 10 + format: int64 + type: integer + - description: Filter by scorecard ID. + in: query + name: filter[scorecard][id] + required: false + schema: + example: q8MQxk8TCqrHnWkx + type: string + - description: Filter by scorecard name (partial match). + in: query + name: filter[scorecard][name] + required: false + schema: + example: Observability + type: string + - description: Filter by scorecard description (partial match). + in: query + name: filter[scorecard][description] + required: false + schema: + example: Best Practices + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2026-01-01T00:00:00Z" + description: Best practices for observability. + modified_at: "2026-01-05T14:20:00Z" + name: Observability Best Practices + id: q8MQxk8TCqrHnWkx + type: scorecard + schema: + $ref: "#/components/schemas/ListScorecardsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: List all scorecards + tags: + - Scorecards + /api/v2/scorecard/scores/{aggregation}: + get: + description: Returns a list of scorecard scores for each aggregation type, with score breakdowns. + operationId: ListScorecardScores + parameters: + - description: The type of scores being requested. + in: path + name: aggregation + required: true + schema: + $ref: "#/components/schemas/ScorecardScoresAggregation" + - description: Filter scores by rule ID(s), comma-separated. + in: query + name: filter[rule][id] + required: false + schema: + type: string + - description: Filter scores by rule name. + in: query + name: filter[rule][name] + required: false + schema: + type: string + - description: Filter scores by rule level(s), comma-separated. + in: query + name: filter[rule][level] + required: false + schema: + type: string + - description: Filter scores by scorecard ID(s), comma-separated. + in: query + name: filter[rule][scorecard_id] + required: false + schema: + type: string + - description: Filter scores to show only custom rules. + in: query + name: filter[rule][is_custom] + required: false + schema: + type: boolean + - description: Filter scores to show only enabled rules. + in: query + name: filter[rule][is_enabled] + required: false + schema: + type: boolean + - description: "Sort scores by field. Use a hyphen prefix for descending order. Options: score, numerator, denominator, total_pass, total_fail, total_skip, total_no_data." + in: query + name: sort + required: false + schema: + type: string + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Number of scores to return. Max is 1000. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + aggregation: by-entity + denominator: 4 + numerator: 3 + score: 0.75 + total_fail: 1 + total_no_data: 0 + total_pass: 3 + total_skip: 0 + id: service:my-service + relationships: + entity: + data: + id: service:my-service + type: entity + type: score + links: + next: /api/v2/scorecard/scores/by-entity?page[offset]=100&page[limit]=100 + meta: + count: 1 + limit: 100 + offset: 0 + total: 42 + schema: + $ref: "#/components/schemas/ListScorecardScoresResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: List all scores + tags: + - Scorecards + /api/v2/seats/users: + delete: + description: |- + Unassign seats from users for a product code. + operationId: UnassignSeatsUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + product_code: "" + user_uuids: + - 626a4e8e-64bd-409d-b80e-428f08ac0b62 + type: seat-assignments + schema: + $ref: "#/components/schemas/UnassignSeatsUserRequest" + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Unassign seats from users + tags: + - Seats + "x-permission": + operator: OR + permissions: + - billing_edit + - incident_write + - on_call_write + get: + description: |- + Get the list of users assigned seats for a product code. + operationId: GetSeatsUsers + parameters: + - description: The product code for which to retrieve seat users. + in: query + name: product_code + required: true + schema: + type: string + - description: Maximum number of results to return. + in: query + name: page[limit] + required: false + schema: + format: int64 + type: integer + - description: Cursor for pagination. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + assigned_at: "2024-01-01T00:00:00+00:00" + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000001 + type: seat-users + schema: + $ref: "#/components/schemas/SeatUserDataArray" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get users with seats + tags: + - Seats + "x-permission": + operator: OR + permissions: + - billing_read + - incident_read + - on_call_read + post: + description: |- + Assign seats to users for a product code. + operationId: AssignSeatsUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + product_code: "" + user_uuids: + - "" + type: seat-assignments + schema: + $ref: "#/components/schemas/AssignSeatsUserRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + assigned_ids: + - abc-123 + product_code: example-product + id: 00000000-0000-0000-0000-000000000002 + type: seat-assignments + schema: + $ref: "#/components/schemas/AssignSeatsUserResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Assign seats to users + tags: + - Seats + "x-permission": + operator: OR + permissions: + - billing_edit + - incident_write + - on_call_write + /api/v2/security-entities/risk-scores: + get: + description: |- + Get a list of entity risk scores for your organization. Entity risk scores provide security risk assessment for entities like cloud resources, identities, or services based on detected signals, misconfigurations, and identity risks. + operationId: ListEntityRiskScores + parameters: + - description: Start time for the query in Unix timestamp (milliseconds). Defaults to 2 weeks ago. + in: query + name: from + required: false + schema: + example: 1704067200000 + format: int64 + type: integer + - description: End time for the query in Unix timestamp (milliseconds). Defaults to now. + in: query + name: to + required: false + schema: + example: 1705276800000 + format: int64 + type: integer + - description: Size of the page to return. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + - description: Page number to return (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: Query ID for pagination consistency. + in: query + name: page[queryId] + required: false + schema: + example: "abc123def456" + type: string + - description: |- + Sort order for results. Format: `field:direction` where direction is `asc` or `desc`. + Supported fields: `riskScore`, `lastDetected`, `firstDetected`, `entityName`, `signalsDetected`. + in: query + name: filter[sort] + required: false + schema: + example: "riskScore:desc" + type: string + - description: |- + Supports filtering by entity attributes, risk scores, severity, and more. + Example: `severity:critical AND entityType:aws_iam_user` + in: query + name: filter[query] + required: false + schema: + example: "severity:critical" + type: string + - description: Filter by entity type(s). Can specify multiple values. + explode: true + in: query + name: entityType + required: false + schema: + example: ["aws_iam_user", "aws_ec2_instance"] + items: + example: "aws_iam_user" + type: string + type: array + style: form + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + accountIds: + - "123456789012" + configRisks: + hasIdentityRisk: false + hasMisconfiguration: true + hasPrivilegedRole: false + isPrivileged: false + isProduction: true + isPubliclyAccessible: true + entityMetadata: + environments: + - production + mitreTactics: + - ta0006-credential-access + mitreTechniques: + - t1078-valid-accounts + services: + - api-gateway + sources: + - cloudtrail + entityName: test-user + entityProviders: + - AWS + entityRoles: [] + entitySubTypes: + - "IAM User" + entityTypes: + - "IAMUser" + firstDetected: 1704067200000 + lastActivityTitle: "Suspicious API call detected" + lastDetected: 1705276800000 + riskScore: 85 + riskScoreEvolution: 12 + severity: critical + signalsDetected: 15 + id: "arn:aws:iam::123456789012:user/test-user" + type: SecurityEntityRiskScore + meta: + pageNumber: 1 + pageSize: 10 + queryId: "abc123def456" + totalRowCount: 1 + schema: + $ref: "#/components/schemas/SecurityEntityRiskScoresResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Entity Risk Scores + tags: + - Entity Risk Scores + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security-entities/risk-scores/{entity_id}: + get: + description: |- + Get the risk score for a specific entity by its ID. Returns security risk assessment including risk score, severity, detected signals, misconfigurations, and identity risks. + operationId: GetEntityRiskScore + parameters: + - description: The URL-encoded unique identifier for the entity. + in: path + name: entity_id + required: true + schema: + example: "arn:aws:iam::123456789012:user/john.doe" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + accountIds: + - "123456789012" + configRisks: + hasIdentityRisk: false + hasMisconfiguration: true + hasPrivilegedRole: false + isPrivileged: false + isProduction: true + isPubliclyAccessible: true + entityMetadata: + environments: + - production + mitreTactics: + - ta0006-credential-access + mitreTechniques: + - t1078-valid-accounts + services: + - api-gateway + sources: + - cloudtrail + entityName: "test-user" + entityProviders: + - AWS + entityRoles: [] + entitySubTypes: + - "IAM User" + entityTypes: + - "IAMUser" + firstDetected: 1704067200000 + lastActivityTitle: "Suspicious API call detected" + lastDetected: 1705276800000 + riskScore: 85 + riskScoreEvolution: 12 + severity: critical + signalsDetected: 15 + id: "arn:aws:iam::123456789012:user/test-user" + type: SecurityEntityRiskScore + schema: + $ref: "#/components/schemas/SecurityEntityRiskScoreResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Entity Risk Score + tags: + - Entity Risk Scores + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/asm/services/{service_filter}: + get: + description: |- + Retrieve Application Security details for services matching the given name. + Returns Application Security activation, compatibility, and product enablement + information for each matching `(service, environment)` pair, along with a count + of services that have Application Security Management (Threats) enabled. + operationId: GetAsmServiceByName + parameters: + - $ref: "#/components/parameters/ApplicationSecurityServiceNameParam" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + agent_versions: + - 7.50.0 + app_type: web + asm_threat_compatible: true + backend_waf_event_count: 10 + business_logic: [] + color: "" + env: prod + event_count: 42 + event_trend: [] + has_appsec_enabled: true + hits: 0 + iast_product_activation: false + iast_product_compatibility: compatible + iast_product_compatibility_reasons: [] + languages: + - go + last_ingested_spans: 1610000000 + rc_capabilities: + - ASM_DD_RULES + recommended_business_logic: [] + risk_product_activation: false + risk_product_compatibility: compatible + risk_product_compatibility_reasons: [] + rules_version: + - 1.13.0 + service: web-store + signal_count: 0 + signal_trend: [] + source: + - services-activity + teams: + - security-team + tracer_versions: + - 1.60.0 + vm-activation: enabled + vuln_critical_count: 0 + vuln_high_count: 0 + without_filter_services: 0 + id: web-store_prod + type: service_env + meta: + num_services_with_appsec: 1 + schema: + $ref: "#/components/schemas/ApplicationSecurityServicesResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get Application Security details for a service + tags: + - "Application Security" + "x-permission": + operator: OR + permissions: + - apm_service_catalog_read + - appsec_protect_read + - apm_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/cloud_workload/policy/download: + get: + description: |- + The download endpoint generates a Workload Protection policy file from your currently active + Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to + your agents to update the policy running in your environment. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: DownloadCloudWorkloadPolicyFile + responses: + "200": + content: + application/yaml: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: "Download the Workload Protection policy (US1-FED)" + tags: ["CSM Threats"] + "x-permission": + operator: OR + permissions: + - security_monitoring_cws_agent_rules_read + /api/v2/security/findings: + get: + description: |- + Get a list of security findings that match a search query. [See the schema for security findings](https://docs.datadoghq.com/security/guide/findings-schema/). + + ### Query Syntax + + This endpoint uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix. + + Example: `@severity:(critical OR high) @status:open team:platform` + operationId: ListSecurityFindings + parameters: + - description: The search query following log search syntax. + example: "@severity:(critical OR high) @status:open team:platform" + in: query + name: filter[query] + required: false + schema: + default: "*" + type: string + - description: Get the next page of results with a cursor provided in the previous query. + example: "eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: The maximum number of findings in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int64 + maximum: 150 + minimum: 1 + type: integer + - description: Sorts by @detection_changed_at. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/SecurityFindingsSort" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + attributes: + severity: high + status: open + tags: + - "team:platform" + timestamp: 1765901760 + id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: finding + meta: + elapsed: 548 + status: done + schema: + $ref: "#/components/schemas/ListSecurityFindingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List security findings + tags: + - "Security Monitoring" + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_read + - appsec_vm_read + /api/v2/security/findings/assignee: + patch: + description: >- + Assign or unassign security findings. + + You can assign up to 100 security findings per request. Set `assignee_id` to the unique identifier of the Datadog user you want to assign the findings to. Omit `assignee_id` (or set it to `null`) to unassign the findings. Per-finding warnings and failures are returned in the response `meta` object. + operationId: UpdateFindingsAssignee + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee_id: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + id: "00000000-0000-0000-0000-000000000001" + relationships: + findings: + data: + - id: "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==" + type: "findings" + type: "assignee" + schema: + $ref: "#/components/schemas/AssigneeRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee_id: "f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0" + id: "00000000-0000-0000-0000-000000000001" + type: "assignee" + schema: + $ref: "#/components/schemas/AssigneeResponse" + description: Accepted + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Assign or unassign security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/due_date_rules: + get: + description: Get all due date rules for the current organization. + operationId: ListSecurityFindingsAutomationDueDateRules + parameters: + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Critical findings due in 7 days" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: due_date_rules + links: + first: "/api/v2/security/findings/automation/due_date_rules?page[size]=1000&page[number]=0" + last: "/api/v2/security/findings/automation/due_date_rules?page[size]=1000&page[number]=0" + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/DueDateRulesResponse" + description: Successfully retrieved the list of due date rules + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get all due date rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new due date rule for the current organization. + operationId: CreateSecurityFindingsAutomationDueDateRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + enabled: true + name: "Critical findings due in 7 days" + rule: + finding_types: + - misconfiguration + query: "env:prod" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Critical findings due in 7 days" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleResponse" + description: Successfully created the due date rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a due date rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/due_date_rules/reorder: + post: + description: Reorder the list of due date rules for the current organization. + operationId: ReorderSecurityFindingsAutomationDueDateRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: due_date_rules + - id: "11111111-1111-1111-1111-111111111111" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleReorderRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: due_date_rules + - id: "11111111-1111-1111-1111-111111111111" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleReorderRequest" + description: Successfully reordered the due date rules + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Reorder due date rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/due_date_rules/{rule_id}: + delete: + description: Delete an existing due date rule by ID. + operationId: DeleteSecurityFindingsAutomationDueDateRule + parameters: + - description: The ID of the due date rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "204": + description: "Rule successfully deleted." + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a due date rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of a due date rule by ID. + operationId: GetSecurityFindingsAutomationDueDateRule + parameters: + - description: The ID of the due date rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Critical findings due in 7 days" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleResponse" + description: Successfully retrieved the due date rule + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a due date rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing due date rule by ID. + operationId: UpdateSecurityFindingsAutomationDueDateRule + parameters: + - description: The ID of the due date rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + - due_in_days: 90 + severity: medium + due_from: fix_available + enabled: true + name: "Critical findings due in 7 days" + rule: + finding_types: + - misconfiguration + query: "env:prod" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + - due_in_days: 90 + severity: medium + due_from: fix_available + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510999 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Critical findings due in 7 days" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: due_date_rules + schema: + $ref: "#/components/schemas/DueDateRuleResponse" + description: Successfully updated the due date rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a due date rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/mute_rules: + get: + description: Get all mute rules for the current organization. + operationId: ListSecurityFindingsAutomationMuteRules + parameters: + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: "Accepted for dev environments only" + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Mute accepted risks in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev team:platform @severity:low" + id: "00000000-0000-0000-0000-000000000000" + type: mute_rules + links: + first: "/api/v2/security/findings/automation/mute_rules?page[size]=1000&page[number]=0" + last: "/api/v2/security/findings/automation/mute_rules?page[size]=1000&page[number]=0" + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/MuteRulesResponse" + description: Successfully retrieved the list of mute rules + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get all mute rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new mute rule for the current organization. + operationId: CreateSecurityFindingsAutomationMuteRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: "Accepted for dev environments only" + enabled: true + name: "Mute accepted risks in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev team:platform @severity:low" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: "Accepted for dev environments only" + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Mute accepted risks in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev team:platform @severity:low" + id: "00000000-0000-0000-0000-000000000000" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleResponse" + description: Successfully created the mute rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a mute rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/mute_rules/reorder: + post: + description: Reorder the list of mute rules for the current organization. + operationId: ReorderSecurityFindingsAutomationMuteRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: mute_rules + - id: "11111111-1111-1111-1111-111111111111" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleReorderRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: mute_rules + - id: "11111111-1111-1111-1111-111111111111" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleReorderRequest" + description: Successfully reordered the mute rules + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Reorder mute rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/mute_rules/{rule_id}: + delete: + description: Delete an existing mute rule by ID. + operationId: DeleteSecurityFindingsAutomationMuteRule + parameters: + - description: The ID of the mute rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "204": + description: "Rule successfully deleted." + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a mute rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of a mute rule by ID. + operationId: GetSecurityFindingsAutomationMuteRule + parameters: + - description: The ID of the mute rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: "Accepted for dev environments only" + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Mute accepted risks in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev team:platform @severity:low" + id: "00000000-0000-0000-0000-000000000000" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleResponse" + description: Successfully retrieved the mute rule + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a mute rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing mute rule by ID. + operationId: UpdateSecurityFindingsAutomationMuteRule + parameters: + - description: The ID of the mute rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + reason: risk_accepted + enabled: false + name: "Mute accepted risks in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + reason: risk_accepted + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: false + modified_at: 1722439510999 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Mute accepted risks in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + id: "00000000-0000-0000-0000-000000000000" + type: mute_rules + schema: + $ref: "#/components/schemas/MuteRuleResponse" + description: Successfully updated the mute rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a mute rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/severity_modifier_rules: + get: + description: Get all severity modifier rules for the current organization. + operationId: ListSecurityFindingsAutomationSeverityModifierRules + parameters: + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: + description: "Lower severity for dev environment noise" + severity: low + type: set + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Downgrade misconfigurations in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + id: "00000000-0000-0000-0000-000000000000" + type: severity_modifier_rules + links: + first: "/api/v2/security/findings/automation/severity_modifier_rules?page[size]=1000&page[number]=0" + last: "/api/v2/security/findings/automation/severity_modifier_rules?page[size]=1000&page[number]=0" + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/SeverityModifierRulesResponse" + description: Successfully retrieved the list of severity modifier rules + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get all severity modifier rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new severity modifier rule for the current organization. + operationId: CreateSecurityFindingsAutomationSeverityModifierRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + description: "Lower severity for dev environment noise" + severity: low + type: set + enabled: true + name: "Downgrade misconfigurations in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + description: "Lower severity for dev environment noise" + severity: low + type: set + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Downgrade misconfigurations in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + id: "00000000-0000-0000-0000-000000000000" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleResponse" + description: Successfully created the severity modifier rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a severity modifier rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/severity_modifier_rules/reorder: + post: + description: Reorder the list of severity modifier rules for the current organization. + operationId: ReorderSecurityFindingsAutomationSeverityModifierRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: severity_modifier_rules + - id: "11111111-1111-1111-1111-111111111111" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleReorderRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: severity_modifier_rules + - id: "11111111-1111-1111-1111-111111111111" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleReorderResponse" + description: Successfully reordered the severity modifier rules + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Reorder severity modifier rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/severity_modifier_rules/{rule_id}: + delete: + description: Delete an existing severity modifier rule by ID. + operationId: DeleteSecurityFindingsAutomationSeverityModifierRule + parameters: + - description: The ID of the severity modifier rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "204": + description: "Rule successfully deleted" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a severity modifier rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of a severity modifier rule by ID. + operationId: GetSecurityFindingsAutomationSeverityModifierRule + parameters: + - description: The ID of the severity modifier rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + description: "Lower severity for dev environment noise" + severity: low + type: set + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Downgrade misconfigurations in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + id: "00000000-0000-0000-0000-000000000000" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleResponse" + description: Successfully retrieved the severity modifier rule + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a severity modifier rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing severity modifier rule by ID. + operationId: UpdateSecurityFindingsAutomationSeverityModifierRule + parameters: + - description: The ID of the severity modifier rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + severity_delta: down_one + type: shift + enabled: false + name: "Downgrade misconfigurations in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + severity_delta: down_one + type: shift + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: false + modified_at: 1722439510999 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Downgrade misconfigurations in dev" + rule: + finding_types: + - misconfiguration + query: "env:dev" + id: "00000000-0000-0000-0000-000000000000" + type: severity_modifier_rules + schema: + $ref: "#/components/schemas/SeverityModifierRuleResponse" + description: Successfully updated the severity modifier rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a severity modifier rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/ticket_creation_rules: + get: + description: Get all ticket creation rules for the current organization. + operationId: ListSecurityFindingsAutomationTicketCreationRules + parameters: + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: + max_tickets_per_day: 100 + project_id: "11111111-1111-1111-1111-111111111111" + target: jira + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Auto-create Jira tickets for critical findings" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: ticket_creation_rules + links: + first: "/api/v2/security/findings/automation/ticket_creation_rules?page[size]=1000&page[number]=0" + last: "/api/v2/security/findings/automation/ticket_creation_rules?page[size]=1000&page[number]=0" + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/TicketCreationRulesResponse" + description: Successfully retrieved the list of ticket creation rules + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get all ticket creation rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new ticket creation rule for the current organization. + operationId: CreateSecurityFindingsAutomationTicketCreationRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 100 + project_id: "11111111-1111-1111-1111-111111111111" + target: jira + enabled: true + name: "Auto-create Jira tickets for critical findings" + rule: + finding_types: + - misconfiguration + query: "env:prod" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 100 + project_id: "11111111-1111-1111-1111-111111111111" + target: jira + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Auto-create Jira tickets for critical findings" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleResponse" + description: Successfully created the ticket creation rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a ticket creation rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/ticket_creation_rules/reorder: + post: + description: Reorder the list of ticket creation rules for the current organization. + operationId: ReorderSecurityFindingsAutomationTicketCreationRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: ticket_creation_rules + - id: "11111111-1111-1111-1111-111111111111" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleReorderRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000000" + type: ticket_creation_rules + - id: "11111111-1111-1111-1111-111111111111" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleReorderRequest" + description: Successfully reordered the ticket creation rules + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Reorder ticket creation rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/ticket_creation_rules/{rule_id}: + delete: + description: Delete an existing ticket creation rule by ID. + operationId: DeleteSecurityFindingsAutomationTicketCreationRule + parameters: + - description: The ID of the ticket creation rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "204": + description: "Rule successfully deleted." + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a ticket creation rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of a ticket creation rule by ID. + operationId: GetSecurityFindingsAutomationTicketCreationRule + parameters: + - description: The ID of the ticket creation rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 100 + project_id: "11111111-1111-1111-1111-111111111111" + target: jira + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Auto-create Jira tickets for critical findings" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleResponse" + description: Successfully retrieved the ticket creation rule + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a ticket creation rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing ticket creation rule by ID. + operationId: UpdateSecurityFindingsAutomationTicketCreationRule + parameters: + - description: The ID of the ticket creation rule. + in: path + name: rule_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000000" + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 50 + project_id: "11111111-1111-1111-1111-111111111111" + target: jira + enabled: true + name: "Auto-create Jira tickets for critical findings" + rule: + finding_types: + - misconfiguration + query: "env:prod" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 50 + project_id: "11111111-1111-1111-1111-111111111111" + target: jira + created_at: 1722439510282 + created_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + enabled: true + modified_at: 1722439510999 + modified_by: + id: "00000000-0000-0000-0000-000000000000" + name: "Jane Doe" + type: user + name: "Auto-create Jira tickets for critical findings" + rule: + finding_types: + - misconfiguration + query: "env:prod" + id: "00000000-0000-0000-0000-000000000000" + type: ticket_creation_rules + schema: + $ref: "#/components/schemas/TicketCreationRuleResponse" + description: Successfully updated the ticket creation rule + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a ticket creation rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/cases: + delete: + description: >- + Detach security findings from their case. + + This operation dissociates security findings from their associated cases without deleting the cases themselves. You can detach security findings from multiple different cases in a single request, with a limit of 50 security findings per request. Security findings that are not currently attached to any case will be ignored. + operationId: DetachCase + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + type: cases + schema: + $ref: "#/components/schemas/DetachCaseRequest" + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Detach security findings from their case + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + post: + description: >- + Create cases for security findings. + + You can create up to 50 cases per request and associate up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the newly created case. + operationId: CreateCases + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the case. + priority: NOT_DEFINED + title: A title for the case. + relationships: + findings: + data: + - id: YjdhNDM3N2QyNTFjYmUwYTY3NDdhMTg0YTk2Yjg5MDl-ZjNmMzAwOTFkZDNhNGQzYzI0MzgxNTk4MjRjZmE2NzE= + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: cases + schema: + $ref: "#/components/schemas/CreateCaseRequestArray" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the case. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the case. + id: 00000000-0000-0000-0000-000000000001 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponseArray" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create cases for security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/cases/{case_id}: + patch: + description: >- + Attach security findings to a case. + + You can attach up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the specified case. + operationId: AttachCase + parameters: + - description: Unique identifier of the case to attach security findings to + in: path + name: case_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: c1234567-89ab-cdef-0123-456789abcdef + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: cases + schema: + $ref: "#/components/schemas/AttachCaseRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the case. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the case. + id: 00000000-0000-0000-0000-000000000002 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a case + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/jira_issues: + patch: + description: >- + Attach security findings to a Jira issue by providing the Jira issue URL. + + You can attach up to 50 security findings per Jira issue. If the Jira issue is not linked to any case, this operation will create a case for the security findings and link the Jira issue to the newly created case. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the specified Jira issue. + operationId: AttachJiraIssue + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + jira_issue_url: https://datadoghq-sandbox-538.atlassian.net/browse/CSMSEC-105476 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: jira_issues + schema: + $ref: "#/components/schemas/AttachJiraIssueRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the Jira issue. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the Jira issue. + id: 00000000-0000-0000-0000-000000000004 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a Jira issue + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + post: + description: >- + Create Jira issues for security findings. + + This operation creates a case in Datadog and a Jira issue linked to that case for bidirectional sync between Datadog and Jira. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). You can create up to 50 Jira issues per request and associate up to 50 security findings per Jira issue. Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the newly created Jira issue. + operationId: CreateJiraIssues + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the Jira issue. + fields: + key1: value + key2: + - value + key3: + key4: value + priority: NOT_DEFINED + title: A title for the Jira issue. + relationships: + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: jira_issues + schema: + $ref: "#/components/schemas/CreateJiraIssueRequestArray" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the Jira issue. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the Jira issue. + id: 00000000-0000-0000-0000-000000000003 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponseArray" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create Jira issues for security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/linear_issues: + patch: + description: >- + Attach security findings to a Linear issue by providing the Linear issue URL. + + You can attach up to 50 security findings per Linear issue. If the Linear issue is not linked to any case, this operation will create a case for the security findings and link the Linear issue to the newly created case. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the specified Linear issue. + operationId: AttachLinearIssue + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + linear_issue_url: https://linear.app/your-workspace/issue/ENG-123 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: linear_issues + schema: + $ref: "#/components/schemas/AttachLinearIssueRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the Linear issue. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the Linear issue. + id: 00000000-0000-0000-0000-000000000008 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a Linear issue + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + post: + description: >- + Create Linear issues for security findings. + + This operation creates a case in Datadog and a Linear issue linked to that case for bidirectional sync between Datadog and Linear. You can create up to 50 Linear issues per request and associate up to 50 security findings per Linear issue. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the newly created Linear issue. + operationId: CreateLinearIssues + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the Linear issue. + label_ids: + - a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + linear_project_id: d4c3b2a1-6f5e-8b7a-0d9c-2f1e4a3b6c5d + priority: NOT_DEFINED + title: A title for the Linear issue. + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: linear_issues + schema: + $ref: "#/components/schemas/CreateLinearIssueRequestArray" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the Linear issue. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the Linear issue. + id: 00000000-0000-0000-0000-000000000007 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponseArray" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create Linear issues for security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/mute: + patch: + description: >- + Mute or unmute security findings. + + You can mute or unmute up to 100 security findings per request. The request body must include `is_muted` and `reason` attributes. The allowed reasons depend on whether the finding is being muted or unmuted: + - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `OTHER`, `NO_FIX`, `DUPLICATE`, `RISK_ACCEPTED`. + - To unmute a finding: `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, `OTHER`. + operationId: MuteSecurityFindings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + mute: + description: "To be resolved later." + expire_at: 1778721573794 + is_muted: true + reason: "RISK_ACCEPTED" + relationships: + findings: + data: + - id: "ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==" + type: "findings" + type: "mute" + schema: + $ref: "#/components/schemas/MuteFindingsRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: mute + schema: + $ref: "#/components/schemas/MuteFindingsResponse" + description: Accepted + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/UnauthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Unprocessable Entity" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Mute or unmute security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/search: + post: + description: |- + Get a list of security findings that match a search query. [See the schema for security findings](https://docs.datadoghq.com/security/guide/findings-schema/). + + ### Query Syntax + + The API uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix. + + Example: `@severity:(critical OR high) @status:open team:platform` + operationId: SearchSecurityFindings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: "@severity:(critical OR high) @status:open team:platform" + page: + cursor: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ== + limit: 25 + sort: "@detection_changed_at" + schema: + $ref: "#/components/schemas/SecurityFindingsSearchRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + attributes: + severity: high + status: open + tags: + - "team:platform" + timestamp: 1765901760 + id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: finding + meta: + elapsed: 548 + status: done + schema: + $ref: "#/components/schemas/ListSecurityFindingsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Search security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.data.attributes.page.cursor + cursorPath: meta.page.after + limitParam: body.data.attributes.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_read + - appsec_vm_read + /api/v2/security/findings/servicenow_tickets: + patch: + description: >- + Attach security findings to a ServiceNow ticket by providing the ServiceNow ticket URL. + + You can attach up to 50 security findings per ServiceNow ticket. If the ServiceNow ticket is not linked to any case, this operation will create a case for the security findings and link the ServiceNow ticket to the newly created case. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the specified ServiceNow ticket. + operationId: AttachServiceNowTicket + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + servicenow_ticket_url: https://example.service-now.com/now/nav/ui/classic/params/target/incident.do?sys_id=abcdef0123456789abcdef0123456789 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: servicenow_tickets + schema: + $ref: "#/components/schemas/AttachServiceNowTicketRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the ServiceNow ticket. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the ServiceNow ticket. + id: 00000000-0000-0000-0000-000000000006 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a ServiceNow ticket + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + post: + description: >- + Create ServiceNow tickets for security findings. + + This operation creates a case in Datadog and a ServiceNow ticket linked to that case for bidirectional sync between Datadog and ServiceNow. You can create up to 50 ServiceNow tickets per request and associate up to 50 security findings per ServiceNow ticket. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the newly created ServiceNow ticket. + operationId: CreateServiceNowTickets + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the ServiceNow ticket. + priority: NOT_DEFINED + title: A title for the ServiceNow ticket. + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: servicenow_tickets + schema: + $ref: "#/components/schemas/CreateServiceNowTicketRequestArray" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + description: A description of the ServiceNow ticket. + modified_at: "2024-01-01T00:00:00+00:00" + priority: P4 + status: OPEN + title: A title for the ServiceNow ticket. + id: 00000000-0000-0000-0000-000000000005 + type: cases + schema: + $ref: "#/components/schemas/FindingCaseResponseArray" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create ServiceNow tickets for security findings + tags: + - "Security Monitoring" + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/sboms: + get: + description: |- + Get a list of assets SBOMs for an organization. + + The `filter[asset_type]` parameter is required for initial requests (when no `page[token]` is provided). + Subsequent pages encode the asset type in the pagination token, so `filter[asset_type]` is not required + for paginated requests. Mixing infrastructure asset types (`Host`, `HostImage`, `Image`, `ServerlessFunction`) + with code asset types (`Repository`, `Service`) in the same request is not supported and returns a 400 error. + + ### Pagination + + Please review the [Pagination section](#pagination) for the "List Vulnerabilities" endpoint. + + ### Filtering + + Please review the [Filtering section](#filtering) for the "List Vulnerabilities" endpoint. + + ### Metadata + + Please review the [Metadata section](#metadata) for the "List Vulnerabilities" endpoint. + operationId: ListAssetsSBOMs + parameters: + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: "b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal to or greater than 1. + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: >- + The type of the assets for the SBOM request. Required for initial requests (when no `page[token]` is provided). Infrastructure types (`Host`, `HostImage`, `Image`, `ServerlessFunction`) and code types (`Repository`, `Service`) cannot be mixed in the same request. + example: Repository + in: query + name: filter[asset_type] + required: false + schema: + $ref: "#/components/schemas/AssetType" + - description: The name of the asset for the SBOM request. + example: "github.com/datadog/datadog-agent" + in: query + name: filter[asset_name] + required: false + schema: + type: string + - description: The name of the component that is a dependency of an asset. + example: "opentelemetry-api" + in: query + name: filter[package_name] + required: false + schema: + type: string + - description: The version of the component that is a dependency of an asset. + example: "1.33.1" + in: query + name: filter[package_version] + required: false + schema: + type: string + - description: The software license name of the component that is a dependency of an asset. + example: "Apache-2.0" + in: query + name: filter[license_name] + required: false + schema: + type: string + - description: The software license type of the component that is a dependency of an asset. + example: "network_strong_copyleft" + in: query + name: filter[license_type] + required: false + schema: + $ref: "#/components/schemas/SBOMComponentLicenseType" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ListAssetsSBOMsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad request: The server cannot process the request due to invalid syntax in the request." + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Not found: asset not found" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List assets SBOMs + tags: + - "Security Monitoring" + x-permission: + operator: OR + permissions: + - appsec_vm_read + /api/v2/security/sboms/{asset_type}: + get: + description: |- + Get a single SBOM related to an asset by its type and name. + operationId: GetSBOM + parameters: + - description: The type of the asset for the SBOM request. + example: Repository + in: path + name: asset_type + required: true + schema: + $ref: "#/components/schemas/AssetType" + - description: The name of the asset for the SBOM request. + example: "github.com/datadog/datadog-agent" + in: query + name: filter[asset_name] + required: true + schema: + type: string + - description: The container image `repo_digest` for the SBOM request. When the requested asset type is 'Image', this filter is mandatory. + example: "sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7" + in: query + name: filter[repo_digest] + required: false + schema: + type: string + - description: The standard of the SBOM. + example: CycloneDX + in: query + name: ext:format + required: false + schema: + $ref: "#/components/schemas/SBOMFormat" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + bomFormat: CycloneDX + components: + - name: google.golang.org/grpc + type: library + version: 1.68.1 + dependencies: [] + metadata: {} + serialNumber: urn:uuid:abc-123 + specVersion: "1.6" + version: 1 + id: "github.com/datadog/datadog-agent" + type: sboms + schema: + $ref: "#/components/schemas/GetSBOMResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad request: The server cannot process the request due to invalid syntax in the request." + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Not found: asset not found" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get SBOM + tags: + - "Security Monitoring" + x-permission: + operator: OR + permissions: + - appsec_vm_read + /api/v2/security/scanned-assets-metadata: + get: + description: |- + Get a list of security scanned assets metadata for an organization. + + ### Pagination + + For the "List Vulnerabilities" endpoint, see the [Pagination section](#pagination). + + ### Filtering + + For the "List Vulnerabilities" endpoint, see the [Filtering section](#filtering). + + ### Metadata + + For the "List Vulnerabilities" endpoint, see the [Metadata section](#metadata). + + ### Related endpoints + + This endpoint returns additional metadata for cloud resources that is not available from the standard resource endpoints. To access a richer dataset, call this endpoint together with the relevant resource endpoint(s) and merge (join) their results using the resource identifier. + + **Hosts** + + To enrich host data, join the response from the [Hosts](https://docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields: + + | ENDPOINT | JOIN KEY | TYPE | + | --- | --- | --- | + | [/api/v1/hosts](https://docs.datadoghq.com/api/latest/hosts/) | host_list.host_name | string | + | /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + + **Host Images** + + To enrich host image data, join the response from the [Hosts](https://docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields: + + | ENDPOINT | JOIN KEY | TYPE | + | --- | --- | --- | + | [/api/v1/hosts](https://docs.datadoghq.com/api/latest/hosts/) | host_list.tags_by_source["Amazon Web Services"]["image"] | string | + | /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + + **Container Images** + + To enrich container image data, join the response from the [Container Images](https://docs.datadoghq.com/api/latest/container-images/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields: + + | ENDPOINT | JOIN KEY | TYPE | + | --- | --- | --- | + | [/api/v2/container_images](https://docs.datadoghq.com/api/latest/container-images/) | `data.attributes.name`@`data.attributes.repo_digest` | string | + | /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + operationId: ListScannedAssetsMetadata + parameters: + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: "b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal to or greater than 1. + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: The type of the scanned asset. + example: Host + in: query + name: filter[asset.type] + required: false + schema: + $ref: "#/components/schemas/CloudAssetType" + - description: The name of the scanned asset. + example: "i-0fc7edef1ab26d7ef" + in: query + name: filter[asset.name] + required: false + schema: + type: string + - description: The origin of last success scan. + example: "agent" + in: query + name: filter[last_success.origin] + required: false + schema: + type: string + - description: The environment of last success scan. + example: "prod" + in: query + name: filter[last_success.env] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + asset: + name: i-0fc7edef1ab26d7ef + type: Host + first_success_timestamp: "2024-01-01T00:00:00Z" + last_success: + env: prod + id: "Host|i-0fc7edef1ab26d7ef" + type: scanned-assets-metadata + schema: + $ref: "#/components/schemas/ScannedAssetsMetadata" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad request: The server cannot process the request due to invalid syntax in the request." + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Not found: asset not found" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List scanned assets metadata + tags: + - "Security Monitoring" + x-permission: + operator: OR + permissions: + - appsec_vm_read + x-unstable: |- + **Note**: This endpoint is a private preview. + If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9). + /api/v2/security/siem/ioc-explorer: + get: + description: |- + Get a list of indicators of compromise (IoCs) matching the specified filters. + operationId: ListIndicatorsOfCompromise + parameters: + - description: Number of results per page. + in: query + name: limit + required: false + schema: + default: 50 + format: int32 + maximum: 2147483647 + type: integer + - description: Pagination offset. + in: query + name: offset + required: false + schema: + default: 0 + format: int32 + maximum: 2147483647 + type: integer + - description: Search/filter query (supports field:value syntax). + in: query + name: query + required: false + schema: + type: string + - description: "Sort column: score, first_seen_ts_epoch, last_seen_ts_epoch, indicator, indicator_type, signal_count, log_count, category, as_type." + in: query + name: sort[column] + required: false + schema: + default: score + type: string + - description: "Sort order: asc or desc." + in: query + name: sort[order] + required: false + schema: + default: desc + type: string + - description: When true, return only OCSF field-based matches. When false, return regex/message-based matches. + in: query + name: ocsf + required: false + schema: + default: true + type: boolean + - description: Filter indicators whose triage state was updated by a specific user identified by their handle. + in: query + name: worked_by + required: false + schema: + type: string + - description: Filter by triage state. + in: query + name: triage_state + required: false + schema: + $ref: "#/components/schemas/IoCTriageState" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + data: + - id: abc-123 + indicator: "192.0.2.1" + indicator_type: ip + score: 85.0 + metadata: + count: 1 + paging: + offset: 0 + id: abc-123 + type: ioc_explorer_list_response + schema: + $ref: "#/components/schemas/IoCExplorerListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: List indicators of compromise + tags: ["Security Monitoring"] + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/security/siem/ioc-explorer/indicator: + get: + description: |- + Get detailed information about a specific indicator of compromise (IoC). + operationId: GetIndicatorOfCompromise + parameters: + - description: The indicator value to look up (for example, an IP address or domain). + in: query + name: indicator + required: true + schema: + type: string + - description: When true, return only OCSF field-based matches. When false, return regex/message-based matches. + in: query + name: ocsf + required: false + schema: + default: true + type: boolean + - description: Include full triage history for the indicator. + in: query + name: include_triage_history + required: false + schema: + default: false + type: boolean + - description: Maximum number of triage history events returned. Only applied when `include_triage_history` is true. + in: query + name: triage_history_limit + required: false + schema: + default: 50 + format: int32 + maximum: 1000 + minimum: 1 + type: integer + - description: Pagination offset into the triage history. Only applied when `include_triage_history` is true. + in: query + name: triage_history_offset + required: false + schema: + default: 0 + format: int32 + maximum: 2147483647 + type: integer + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + data: + id: abc-123 + indicator: "192.0.2.1" + indicator_type: ip + score: 85.0 + id: abc-123 + type: ioc_indicator_response + schema: + $ref: "#/components/schemas/GetIoCIndicatorResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get an indicator of compromise + tags: ["Security Monitoring"] + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/security/siem/ioc-explorer/triage: + post: + description: |- + Set the triage state of an indicator of compromise (IoC). This creates or + updates the triage state for the indicator in your organization. + operationId: CreateIoCTriageState + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + indicator: "192.0.2.1" + triage_state: reviewed + type: ioc_triage_state + schema: + $ref: "#/components/schemas/IoCTriageWriteRequest" + description: The triage state to set for the indicator. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: "2026-06-04T12:00:00Z" + indicator: "192.0.2.1" + triage_state: reviewed + triaged_at: "2026-06-04T12:00:00Z" + triaged_by: 11111111-2222-3333-4444-555555555555 + id: abc-123 + type: ioc_triage_state + schema: + $ref: "#/components/schemas/IoCTriageWriteResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_write + summary: Create or update an indicator triage state + tags: ["Security Monitoring"] + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/security/signals/notification_rules: + get: + description: Returns the list of notification rules for security signals. + operationId: GetSignalNotificationRules + responses: + "200": + $ref: "#/components/responses/NotificationRulesList" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get the list of signal-based notification rules + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_read + post: + description: Create a new notification rule for security signals and return the created rule. + operationId: CreateSignalNotificationRule + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - "@john.doe@email.com" + time_aggregation: 86400 + type: notification_rules + schema: + $ref: "#/components/schemas/CreateNotificationRuleParameters" + description: |- + The body of the create notification rule request is composed of the rule type and the rule attributes: + the rule name, the selectors, the notification targets, and the rule enabled status. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - "@test@example.com" + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/NotificationRuleResponse" + description: Successfully created the notification rule. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a new signal-based notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security/signals/notification_rules/{id}: + delete: + description: Delete a notification rule for security signals. + operationId: DeleteSignalNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + responses: + "204": + description: "Rule successfully deleted." + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a signal-based notification rule + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + get: + description: Get the details of a notification rule for security signals. + operationId: GetSignalNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - "@test@example.com" + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/NotificationRuleResponse" + description: Notification rule details. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get details of a signal-based notification rule + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_read + patch: + description: "Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated." + operationId: PatchSignalNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - "@john.doe@email.com" + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/PatchNotificationRuleParameters" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - "@test@example.com" + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/NotificationRuleResponse" + description: Notification rule successfully patched. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a signal-based notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security/vulnerabilities: + get: + deprecated: true + description: |- + Get a list of vulnerabilities. + + ### Pagination + + Pagination is enabled by default in both `vulnerabilities` and `assets`. The size of the page varies depending on the endpoint and cannot be modified. To automate the request of the next page, you can use the links section in the response. + + This endpoint will return paginated responses. The pages are stored in the links section of the response: + + ```JSON + { + "data": [...], + "meta": {...}, + "links": { + "self": "https://.../api/v2/security/vulnerabilities", + "first": "https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc", + "last": "https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc", + "next": "https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc" + } + } + ``` + + + - `links.previous` is empty if the first page is requested. + - `links.next` is empty if the last page is requested. + + #### Token + + Vulnerabilities can be created, updated or deleted at any point in time. + + Upon the first request, a token is created to ensure consistency across subsequent paginated requests. + + A token is valid only for 24 hours. + + #### First request + + We consider a request to be the first request when there is no `page[token]` parameter. + + The response of this first request contains the newly created token in the `links` section. + + This token can then be used in the subsequent paginated requests. + + *Note: The first request may take longer to complete than subsequent requests.* + + #### Subsequent requests + + Any request containing valid `page[token]` and `page[number]` parameters will be considered a subsequent request. + + If the `token` is invalid, a `404` response will be returned. + + If the page `number` is invalid, a `400` response will be returned. + + The returned `token` is valid for all requests in the pagination sequence. To send paginated requests in parallel, reuse the same `token` and change only the `page[number]` parameter. + + ### Filtering + + The request can include some filter parameters to filter the data to be retrieved. The format of the filter parameters follows the [JSON:API format](https://jsonapi.org/format/#fetching-filtering): `filter[$prop_name]`, where `prop_name` is the property name in the entity being filtered by. + + All filters can include multiple values, where data will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter all vulnerabilities where title is equal to `Title1` OR `Title2`. + + String filters are case sensitive. + + Boolean filters accept `true` or `false` as values. + + Number filters must include an operator as a second filter input: `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: `filter[cvss.base.score][lte]=8`. + + Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and `gte` (>=). + + ### Metadata + + Following [JSON:API format](https://jsonapi.org/format/#document-meta), object including non-standard meta-information. + + This endpoint includes the meta member in the response. For more details on each of the properties included in this section, check the endpoints response tables. + + ```JSON + { + "data": [...], + "meta": { + "total": 1500, + "count": 18732, + "token": "some_token" + }, + "links": {...} + } + ``` + ### Extensions + + Requests may include extensions to modify the behavior of the requested endpoint. The filter parameters follow the [JSON:API format](https://jsonapi.org/extensions/#extensions) format: `ext:$extension_name`, where `extension_name` is the name of the modifier that is being applied. + + Extensions can only include one value: `ext:modifier=value`. + operationId: ListVulnerabilities + parameters: + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: "b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal or greater than `1` + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: Filter by vulnerability type. + example: WeakCipher + in: query + name: filter[type] + required: false + schema: + $ref: "#/components/schemas/VulnerabilityType" + - description: Filter by vulnerability base (i.e. from the original advisory) severity score. + example: 5.5 + in: query + name: filter[cvss.base.score][`$op`] + required: false + schema: + format: double + maximum: 10 + minimum: 0 + type: number + - description: Filter by vulnerability base severity. + example: Medium + in: query + name: filter[cvss.base.severity] + required: false + schema: + $ref: "#/components/schemas/VulnerabilitySeverity" + - description: Filter by vulnerability base CVSS vector. + example: "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H" + in: query + name: filter[cvss.base.vector] + required: false + schema: + type: string + - description: Filter by vulnerability Datadog severity score. + example: 4.3 + in: query + name: filter[cvss.datadog.score][`$op`] + required: false + schema: + format: double + maximum: 10 + minimum: 0 + type: number + - description: Filter by vulnerability Datadog severity. + example: Medium + in: query + name: filter[cvss.datadog.severity] + required: false + schema: + $ref: "#/components/schemas/VulnerabilitySeverity" + - description: Filter by vulnerability Datadog CVSS vector. + example: "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:X/RC:X/CR:X/IR:X/AR:X/MAV:L/MAC:H/MPR:L/MUI:N/MS:U/MC:N/MI:N/MA:H" + in: query + name: filter[cvss.datadog.vector] + required: false + schema: + type: string + - description: Filter by the status of the vulnerability. + example: Open + in: query + name: filter[status] + required: false + schema: + $ref: "#/components/schemas/VulnerabilityStatus" + - description: Filter by the tool of the vulnerability. + example: SCA + in: query + name: filter[tool] + required: false + schema: + $ref: "#/components/schemas/VulnerabilityTool" + - description: Filter by library name. + example: linux-aws-5.15 + in: query + name: filter[library.name] + required: false + schema: + type: string + - description: Filter by library version. + example: 5.15.0 + in: query + name: filter[library.version] + required: false + schema: + type: string + - description: Filter by advisory ID. + example: CVE-2023-0615 + in: query + name: filter[advisory.id] + required: false + schema: + type: string + - description: Filter by exploitation probability. + example: false + in: query + name: filter[risks.exploitation_probability] + required: false + schema: + type: boolean + - description: Filter by POC exploit availability. + example: false + in: query + name: filter[risks.poc_exploit_available] + required: false + schema: + type: boolean + - description: Filter by public exploit availability. + example: false + in: query + name: filter[risks.exploit_available] + required: false + schema: + type: boolean + - description: Filter by vulnerability [EPSS](https://www.first.org/epss/) severity score. + example: 0.00042 + in: query + name: filter[risks.epss.score][`$op`] + required: false + schema: + format: double + maximum: 1 + minimum: 0 + type: number + - description: Filter by vulnerability [EPSS](https://www.first.org/epss/) severity. + example: Low + in: query + name: filter[risks.epss.severity] + required: false + schema: + $ref: "#/components/schemas/VulnerabilitySeverity" + - description: Filter by language. + example: ubuntu + in: query + name: filter[language] + required: false + schema: + type: string + - description: Filter by ecosystem. + example: Deb + in: query + name: filter[ecosystem] + required: false + schema: + $ref: "#/components/schemas/VulnerabilityEcosystem" + - description: Filter by vulnerability location. + example: "com.example.Class:100" + in: query + name: filter[code_location.location] + required: false + schema: + type: string + - description: Filter by vulnerability file path. + example: "src/Class.java:100" + in: query + name: filter[code_location.file_path] + required: false + schema: + type: string + - description: Filter by method. + example: FooBar + in: query + name: filter[code_location.method] + required: false + schema: + type: string + - description: Filter by fix availability. + example: false + in: query + name: filter[fix_available] + required: false + schema: + type: boolean + - description: Filter by vulnerability `repo_digest` (when the vulnerability is related to `Image` asset). + example: "sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7" + in: query + name: filter[repo_digests] + required: false + schema: + type: string + - description: Filter by origin. + example: agentless-scanner + in: query + name: filter[origin] + required: false + schema: + type: string + - description: Filter for whether the vulnerability affects a running kernel (for vulnerabilities related to a `Host` asset). + example: true + in: query + name: filter[running_kernel] + required: false + schema: + type: boolean + - description: Filter by asset name. This field supports the usage of wildcards (*). + example: datadog-agent + in: query + name: filter[asset.name] + required: false + schema: + type: string + - description: Filter by asset type. + example: Host + in: query + name: filter[asset.type] + required: false + schema: + $ref: "#/components/schemas/AssetType" + - description: Filter by the first version of the asset this vulnerability has been detected on. + example: v1.15.1 + in: query + name: filter[asset.version.first] + required: false + schema: + type: string + - description: Filter by the last version of the asset this vulnerability has been detected on. + example: v1.15.1 + in: query + name: filter[asset.version.last] + required: false + schema: + type: string + - description: Filter by the repository url associated to the asset. + example: github.com/DataDog/datadog-agent.git + in: query + name: filter[asset.repository_url] + required: false + schema: + type: string + - description: Filter whether the asset is in production or not. + example: false + in: query + name: filter[asset.risks.in_production] + required: false + schema: + type: boolean + - description: Filter whether the asset is under attack or not. + example: false + in: query + name: filter[asset.risks.under_attack] + required: false + schema: + type: boolean + - description: Filter whether the asset is publicly accessible or not. + example: false + in: query + name: filter[asset.risks.is_publicly_accessible] + required: false + schema: + type: boolean + - description: Filter whether the asset is publicly accessible or not. + example: false + in: query + name: filter[asset.risks.has_privileged_access] + required: false + schema: + type: boolean + - description: Filter whether the asset has access to sensitive data or not. + example: false + in: query + name: filter[asset.risks.has_access_to_sensitive_data] + required: false + schema: + type: boolean + - description: Filter by asset environments. + example: staging + in: query + name: filter[asset.environments] + required: false + schema: + type: string + - description: Filter by asset teams. + example: compute + in: query + name: filter[asset.teams] + required: false + schema: + type: string + - description: Filter by asset architecture. + example: arm64 + in: query + name: filter[asset.arch] + required: false + schema: + type: string + - description: Filter by asset operating system name. + example: ubuntu + in: query + name: filter[asset.operating_system.name] + required: false + schema: + type: string + - description: Filter by asset operating system version. + example: "24.04" + in: query + name: filter[asset.operating_system.version] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ListVulnerabilitiesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad request: The server cannot process the request due to invalid syntax in the request." + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Not found: There is no request associated with the provided token." + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List vulnerabilities + tags: + - "Security Monitoring" + x-permission: + operator: OR + permissions: + - appsec_vm_read + x-sunset: "2027-01-01" + x-unstable: |- + **Note**: This endpoint is deprecated. See the [List Security Findings endpoint](https://docs.datadoghq.com/api/latest/security-monitoring/#list-security-findings). + post: + description: |- + Import security vulnerabilities from an external scanner in CycloneDX 1.5 format. + + The payload is validated against the CycloneDX 1.5 JSON schema and the following + additional constraints: + + - `metadata`, `metadata.component`, and `metadata.component.name` are required. + - `metadata.tools.components` must contain exactly one element with a `name` field. + - `components` cannot be empty. Each component requires `bom-ref`, `type`, `name`, and `version`. + - When `type` is `library`, `purl` is required and must be a valid PURL. + - When `type` is `operating-system`, `name` must be one of the supported OS values: + `alma`, `alpine`, `amazon`, `azurelinux`, `bottlerocket`, `cbl-mariner`, `chainguard`, + `centos`, `debian`, `fedora`, `opensuse`, `opensuse-leap`, `opensuse-tumbleweed`, + `oracle`, `photon`, `redhat`, `rocky`, `slem`, `sles`, `ubuntu`, `wolfi`, `windows`, `macos`. + - `vulnerabilities` cannot be empty. Each vulnerability requires `id`, exactly one `ratings` entry, + and at least one `affects` entry. + - Each `affects[].ref` must match a `bom-ref` value in `components`. + operationId: ImportSecurityVulnerabilities + requestBody: + content: + application/json: + examples: + default: + value: + bomFormat: CycloneDX + components: + - bom-ref: a3390fca-c315-41ae-ae05-af5e7859cdee + name: lodash + purl: "pkg:npm/lodash@4.17.21" + type: library + version: 4.17.21 + metadata: + component: + name: i-12345 + type: operating-system + tools: + components: + - name: my-scanner + type: application + specVersion: "1.5" + version: 1 + vulnerabilities: + - affects: + - ref: a3390fca-c315-41ae-ae05-af5e7859cdee + description: "Sample vulnerability detected in the application." + id: CVE-2021-1234 + ratings: + - score: 9.0 + severity: high + vector: "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N" + schema: + $ref: "#/components/schemas/CycloneDXBom" + required: true + responses: + "200": + description: Vulnerabilities accepted successfully. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_write + summary: Import security vulnerabilities + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_findings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/vulnerabilities/notification_rules: + get: + description: Returns the list of notification rules for security vulnerabilities. + operationId: GetVulnerabilityNotificationRules + responses: + "200": + $ref: "#/components/responses/NotificationRulesList" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get the list of vulnerability notification rules + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_read + post: + description: Create a new notification rule for security vulnerabilities and return the created rule. + operationId: CreateVulnerabilityNotificationRule + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - "@john.doe@email.com" + time_aggregation: 86400 + type: notification_rules + schema: + $ref: "#/components/schemas/CreateNotificationRuleParameters" + description: |- + The body of the create notification rule request is composed of the rule type and the rule attributes: + the rule name, the selectors, the notification targets, and the rule enabled status. + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - misconfiguration + severities: + - critical + trigger_source: security_findings + targets: + - "@test@example.com" + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/NotificationRuleResponse" + description: Successfully created the notification rule. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a new vulnerability-based notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security/vulnerabilities/notification_rules/{id}: + delete: + description: Delete a notification rule for security vulnerabilities. + operationId: DeleteVulnerabilityNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + responses: + "204": + description: "Rule successfully deleted." + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a vulnerability-based notification rule + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + get: + description: Get the details of a notification rule for security vulnerabilities. + operationId: GetVulnerabilityNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - misconfiguration + severities: + - critical + trigger_source: security_findings + targets: + - "@test@example.com" + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/NotificationRuleResponse" + description: Notification rule details. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get details of a vulnerability notification rule + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_read + patch: + description: "Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated." + operationId: PatchVulnerabilityNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - "@john.doe@email.com" + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/PatchNotificationRuleParameters" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - misconfiguration + severities: + - critical + trigger_source: security_findings + targets: + - "@test@example.com" + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: "#/components/schemas/NotificationRuleResponse" + description: Notification rule successfully patched. + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a vulnerability-based notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security/vulnerable-assets: + get: + description: |- + Get a list of vulnerable assets. + + ### Pagination + + Please review the [Pagination section for the "List Vulnerabilities"](#pagination) endpoint. + + ### Filtering + + Please review the [Filtering section for the "List Vulnerabilities"](#filtering) endpoint. + + ### Metadata + + Please review the [Metadata section for the "List Vulnerabilities"](#metadata) endpoint. + operationId: ListVulnerableAssets + parameters: + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: "b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4" + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal or greater than `1` + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: Filter by name. This field supports the usage of wildcards (*). + example: datadog-agent + in: query + name: filter[name] + required: false + schema: + type: string + - description: Filter by type. + example: Host + in: query + name: filter[type] + required: false + schema: + $ref: "#/components/schemas/AssetType" + - description: Filter by the first version of the asset since it has been vulnerable. + example: v1.15.1 + in: query + name: filter[version.first] + required: false + schema: + type: string + - description: Filter by the last detected version of the asset. + example: v1.15.1 + in: query + name: filter[version.last] + required: false + schema: + type: string + - description: Filter by the repository url associated to the asset. + example: github.com/DataDog/datadog-agent.git + in: query + name: filter[repository_url] + required: false + schema: + type: string + - description: Filter whether the asset is in production or not. + example: false + in: query + name: filter[risks.in_production] + required: false + schema: + type: boolean + - description: Filter whether the asset (Service) is under attack or not. + example: false + in: query + name: filter[risks.under_attack] + required: false + schema: + type: boolean + - description: Filter whether the asset (Host) is publicly accessible or not. + example: false + in: query + name: filter[risks.is_publicly_accessible] + required: false + schema: + type: boolean + - description: Filter whether the asset (Host) has privileged access or not. + example: false + in: query + name: filter[risks.has_privileged_access] + required: false + schema: + type: boolean + - description: Filter whether the asset (Host) has access to sensitive data or not. + example: false + in: query + name: filter[risks.has_access_to_sensitive_data] + required: false + schema: + type: boolean + - description: Filter by environment. + example: staging + in: query + name: filter[environments] + required: false + schema: + type: string + - description: Filter by teams. + example: compute + in: query + name: filter[teams] + required: false + schema: + type: string + - description: Filter by architecture. + example: arm64 + in: query + name: filter[arch] + required: false + schema: + type: string + - description: Filter by operating system name. + example: ubuntu + in: query + name: filter[operating_system.name] + required: false + schema: + type: string + - description: Filter by operating system version. + example: "24.04" + in: query + name: filter[operating_system.version] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ListVulnerableAssetsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Bad request: The server cannot process the request due to invalid syntax in the request." + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Forbidden: Access denied" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: "Not found: There is no request associated with the provided token." + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List vulnerable assets + tags: + - "Security Monitoring" + x-permission: + operator: OR + permissions: + - appsec_vm_read + x-unstable: |- + **Note**: This endpoint is a private preview. + If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9). + /api/v2/security_monitoring/cloud_workload_security/agent_rules: + get: + description: |- + Get the list of agent rules. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: ListCloudWorkloadSecurityAgentRules + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRulesListResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get all Workload Protection agent rules (US1-FED) + tags: ["CSM Threats"] + "x-permission": + operator: OR + permissions: + - security_monitoring_cws_agent_rules_read + post: + description: |- + Create a new agent rule with the given parameters. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: CreateCloudWorkloadSecurityAgentRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest" + description: "The definition of the new agent rule" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Workload Protection agent rule (US1-FED) + tags: ["CSM Threats"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_cws_agent_rules_write + /api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id}: + delete: + description: |- + Delete a specific agent rule. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: DeleteCloudWorkloadSecurityAgentRule + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityAgentRuleID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Workload Protection agent rule (US1-FED) + tags: ["CSM Threats"] + "x-permission": + operator: OR + permissions: + - security_monitoring_cws_agent_rules_write + get: + description: |- + Get the details of a specific agent rule. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: GetCloudWorkloadSecurityAgentRule + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityAgentRuleID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Workload Protection agent rule (US1-FED) + tags: ["CSM Threats"] + "x-permission": + operator: OR + permissions: + - security_monitoring_cws_agent_rules_read + patch: + description: |- + Update a specific agent rule. + Returns the agent rule object when the request is successful. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: UpdateCloudWorkloadSecurityAgentRule + parameters: + - $ref: "#/components/parameters/CloudWorkloadSecurityAgentRuleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + id: 3dd-0uc-h1s + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest" + description: "New definition of the agent rule" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: "#/components/schemas/CloudWorkloadSecurityAgentRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Workload Protection agent rule (US1-FED) + tags: ["CSM Threats"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_cws_agent_rules_write + /api/v2/security_monitoring/configuration/critical_assets: + get: + description: Get the list of all critical assets. + operationId: ListSecurityMonitoringCriticalAssets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_read + summary: Get all critical assets + tags: + - Security Monitoring + post: + description: Create a new critical asset. + operationId: CreateSecurityMonitoringCriticalAsset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:(log_detection OR signal_correlation OR workload_security OR application_security) source:cloudtrail + severity: increase + tags: + - team:database + - source:cloudtrail + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetCreateRequest" + description: The definition of the new critical asset. + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_write + summary: Create a critical asset + tags: + - Security Monitoring + x-codegen-request-body-name: body + /api/v2/security_monitoring/configuration/critical_assets/rules/{rule_id}: + get: + description: Get the list of critical assets that affect a specific existing rule by the rule's ID. + operationId: GetCriticalAssetsAffectingRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_read + summary: Get critical assets affecting a specific rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id}: + delete: + description: Delete a specific critical asset. + operationId: DeleteSecurityMonitoringCriticalAsset + parameters: + - $ref: "#/components/parameters/SecurityMonitoringCriticalAssetID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_write + summary: Delete a critical asset + tags: + - Security Monitoring + get: + description: Get the details of a specific critical asset. + operationId: GetSecurityMonitoringCriticalAsset + parameters: + - $ref: "#/components/parameters/SecurityMonitoringCriticalAssetID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_read + summary: Get a critical asset + tags: + - Security Monitoring + patch: + description: Update a specific critical asset. + operationId: UpdateSecurityMonitoringCriticalAsset + parameters: + - $ref: "#/components/parameters/SecurityMonitoringCriticalAssetID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + tags: + - technique:T1110-brute-force + - source:cloudtrail + version: 1 + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetUpdateRequest" + description: New definition of the critical asset. Supports partial updates. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: "#/components/schemas/SecurityMonitoringCriticalAssetResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_write + summary: Update a critical asset + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/integration_config: + get: + description: |- + List the entity context sync configurations for Cloud SIEM. Each configuration connects Cloud SIEM + to an external source that provides entities (for example, users from an identity provider) for use + in signals and the entity explorer. + operationId: ListSecurityMonitoringIntegrationConfigs + parameters: + - description: Filter the entity context sync configurations by source type. + in: query + name: filter[integration_type] + required: false + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationType" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2026-05-01T12:00:00Z" + domain: siem-test.com + enabled: true + integration_type: GOOGLE_WORKSPACE + modified_at: "2026-05-01T12:00:00Z" + name: My GWS Integration + settings: + setting1: value1 + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: List entity context sync configurations + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new entity context sync configuration so Cloud SIEM can ingest entities from an external + source. The credentials provided in `secrets` are validated against the source before the configuration + is stored and never returned in subsequent responses. + operationId: CreateSecurityMonitoringIntegrationConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain: siem-test.com + integration_type: GOOGLE_WORKSPACE + name: My GWS Integration + secrets: + admin_email: test@example.com + settings: + setting1: value1 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigCreateRequest" + description: The definition of the new integration configuration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-01T12:00:00Z" + domain: siem-test.com + enabled: true + integration_type: GOOGLE_WORKSPACE + modified_at: "2026-05-01T12:00:00Z" + name: My GWS Integration + settings: + setting1: value1 + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Create an entity context sync configuration + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations: + get: + description: |- + Get the Azure App Registrations discovered for the organization and whether at least one of them has + resource collection enabled, which is a prerequisite for activating the Entra ID entity context sync integration. + operationId: GetEntraIdAzureAppRegistrations + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + azure_app_registrations: + - client_id: 66666666-7777-8888-9999-000000000000 + error_count: 0 + resource_collection_enabled: true + subscription_count: 3 + tenant_id: 11111111-2222-3333-4444-555555555555 + has_valid_prerequisite: true + integration_id: 11111111-2222-3333-4444-555555555555 + is_enabled: true + subscribed_at: "2026-05-01T12:00:00Z" + id: "123456" + type: entra_id_azure_app_registrations + schema: + $ref: "#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Get Entra ID Azure App Registration prerequisites + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/validate: + post: + description: |- + Validate a set of credentials against the external entity source before creating a sync configuration. + Returns a 200 status code if the credentials are valid. + operationId: ValidateSecurityMonitoringIntegrationCredentials + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain: siem-test.com + integration_type: GOOGLE_WORKSPACE + secrets: + admin_email: test@example.com + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationCredentialsValidateRequest" + description: The credentials to validate. + required: true + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Validate entity context sync credentials + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_config_id}: + delete: + description: |- + Delete an entity context sync configuration. Cloud SIEM stops ingesting entities from this source, + and the credentials stored for the configuration are removed from the secrets store. + operationId: DeleteSecurityMonitoringIntegrationConfig + parameters: + - $ref: "#/components/parameters/SecurityMonitoringIntegrationConfigID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Delete an entity context sync configuration + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of a specific entity context sync configuration. + operationId: GetSecurityMonitoringIntegrationConfig + parameters: + - $ref: "#/components/parameters/SecurityMonitoringIntegrationConfigID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-01T12:00:00Z" + domain: siem-test.com + enabled: true + integration_type: GOOGLE_WORKSPACE + modified_at: "2026-05-01T12:00:00Z" + name: My GWS Integration + settings: + setting1: value1 + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Get an entity context sync configuration + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing entity context sync configuration. Supports partial updates; only the fields provided in the request body are modified. + operationId: UpdateSecurityMonitoringIntegrationConfig + parameters: + - $ref: "#/components/parameters/SecurityMonitoringIntegrationConfigID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + name: My GWS Integration (renamed) + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigUpdateRequest" + description: The fields to update on the integration configuration. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-01T12:00:00Z" + domain: siem-test.com + enabled: false + integration_type: GOOGLE_WORKSPACE + modified_at: "2026-05-08T12:00:00Z" + name: My GWS Integration (renamed) + settings: + setting1: value1 + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Update an entity context sync configuration + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_config_id}/validate: + post: + description: |- + Validate the credentials currently stored on an existing entity context sync configuration. + Returns a 200 status code if the credentials are still valid against the external entity source. + operationId: ValidateSecurityMonitoringIntegrationConfig + parameters: + - $ref: "#/components/parameters/SecurityMonitoringIntegrationConfigID" + responses: + "200": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Validate an entity context sync configuration + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_type}/activate: + post: + description: |- + Activate an entity context sync integration for a source type that does not require manually + supplied credentials (for example, Entra ID). If an integration of this type already exists, + it is returned (re-enabling it first if it was disabled) instead of creating a duplicate. + operationId: ActivateIntegration + parameters: + - description: The integration type to activate (for example, `entra_id`). + in: path + name: integration_type + required: true + schema: + example: entra_id + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Entra ID Integration + type: activate_entra_id_request + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationActivateRequest" + description: Optional configuration overrides for the integration to activate. + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-01T12:00:00Z" + domain: default + enabled: true + integration_type: ENTRA_ID + modified_at: "2026-05-01T12:00:00Z" + name: My Entra ID Integration + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Activate an entity context sync integration + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_type}/deactivate: + post: + description: Deactivate all active entity context sync integrations of the given source type (for example, Entra ID). + operationId: DeactivateIntegration + parameters: + - description: The integration type to deactivate (for example, `entra_id`). + in: path + name: integration_type + required: true + schema: + example: entra_id + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2026-05-01T12:00:00Z" + domain: default + enabled: false + integration_type: ENTRA_ID + modified_at: "2026-05-08T12:00:00Z" + name: My Entra ID Integration + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: "#/components/schemas/SecurityMonitoringIntegrationConfigResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Deactivate an entity context sync integration + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/notification_rules/send_notification_preview: + post: + description: Send a notification preview to test that a notification rule's targets are properly configured. + operationId: SendSecurityMonitoringNotificationPreview + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - "@john.doe@email.com" + type: notification_rules + schema: + $ref: "#/components/schemas/CreateNotificationRuleParameters" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + preview_results: + - notification_status: DEFAULT + rule_type: log_detection + id: rka-loa-zwu + type: notification_preview_response + schema: + $ref: "#/components/schemas/NotificationRulePreviewResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_notification_profiles_write + summary: Test a notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security_monitoring/configuration/security_filters: + get: + description: Get the list of configured security filters with their definitions. + operationId: ListSecurityFilters + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: "#/components/schemas/SecurityFiltersResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get all security filters + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_read + post: + description: |- + Create a security filter. + + See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) + for more examples. + operationId: CreateSecurityFilter + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_enabled: true + name: Custom security filter + query: service:api + type: security_filters + schema: + $ref: "#/components/schemas/SecurityFilterCreateRequest" + description: The definition of the new security filter. + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: "#/components/schemas/SecurityFilterResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Create a security filter + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_write + /api/v2/security_monitoring/configuration/security_filters/versions: + get: + description: |- + Get the configured security filters at each historical version of the configuration. + Each entry in the response represents the set of all security filters at a given version, + ordered from the most recent version to the oldest. + operationId: ListSecurityFilterVersions + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + date: 1758177253469 + filters: + - exclusion_filters: [] + filtered_data_type: logs + id: "123" + is_builtin: false + is_enabled: true + name: Test Security Filter + query: source:test + version: 1 + version: 1 + id: "1" + type: security_filters_configuration + schema: + $ref: "#/components/schemas/SecurityFilterVersionsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get the version history of security filters + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + /api/v2/security_monitoring/configuration/security_filters/{security_filter_id}: + delete: + description: Delete a specific security filter. + operationId: DeleteSecurityFilter + parameters: + - $ref: "#/components/parameters/SecurityFilterID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Delete a security filter + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_write + get: + description: |- + Get the details of a specific security filter. + + See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) + for more examples. + operationId: GetSecurityFilter + parameters: + - $ref: "#/components/parameters/SecurityFilterID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: "#/components/schemas/SecurityFilterResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get a security filter + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_read + patch: + description: |- + Update a specific security filter. + Returns the security filter object when the request is successful. + operationId: UpdateSecurityFilter + parameters: + - $ref: "#/components/parameters/SecurityFilterID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: [] + filtered_data_type: logs + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + type: security_filters + schema: + $ref: "#/components/schemas/SecurityFilterUpdateRequest" + description: New definition of the security filter. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: "#/components/schemas/SecurityFilterResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Update a security filter + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_write + /api/v2/security_monitoring/configuration/suppressions: + get: + description: Get the list of all suppression rules. + operationId: ListSecurityMonitoringSuppressions + parameters: + - description: Query string. + in: query + name: query + required: false + schema: + type: string + - description: Attribute used to sort the list of suppression rules. Prefix with `-` to sort in descending order. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionSort" + - description: Size for a given page. Use `-1` to return all items. + in: query + name: page[size] + required: false + schema: + default: -1 + example: 10 + format: int64 + type: integer + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + meta: + page: + pageNumber: 0 + pageSize: 10 + totalCount: 1 + schema: + $ref: "#/components/schemas/SecurityMonitoringPaginatedSuppressionsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get all suppression rules + tags: + - Security Monitoring + post: + description: Create a new suppression rule. + operationId: CreateSecurityMonitoringSuppression + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_exclusion_query: source:cloudtrail account_id:12345 + description: This rule suppresses low-severity signals in staging environments. + enabled: true + expiration_date: 1703187336000 + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + start_date: 1703187336000 + suppression_query: env:staging status:low + tags: + - technique:T1110-brute-force + - source:cloudtrail + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionCreateRequest" + description: The definition of the new suppression rule. + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + id: abc-123 + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Create a suppression rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + /api/v2/security_monitoring/configuration/suppressions/rules: + post: + description: Get the list of suppressions that would affect a rule. + operationId: GetSuppressionsAffectingFutureRule + requestBody: + content: + "application/json": + examples: + default: + value: + calculatedFields: + - expression: "@request_end_timestamp - @request_start_timestamp" + name: response_time + cases: [] + filters: + - action: require + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: "" + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + regoRule: + policy: "package datadog\n\nimport data.datadog.output as dd_output\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n # Logic that evaluates to true if the resource should be skipped\n true\n} else = \"pass\" {\n # Logic that evaluates to true if the resource is compliant\n true\n} else = \"fail\" {\n # Logic that evaluates to true if the resource is not compliant\n true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n some resource in input.resources[input.main_resource_type]\n result := dd_output.format(resource, eval(resource))\n}" + resourceTypes: + - gcp_iam_service_account + - gcp_iam_policy + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + rootQueries: + - query: source:cloudtrail + queries: [] + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: "2025-07-14T12:00:00" + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: api_security + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleCreatePayload" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + id: abc-123 + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get suppressions affecting future rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/suppressions/rules/{rule_id}: + get: + description: Get the list of suppressions that affect a specific existing rule by its ID. + operationId: GetSuppressionsAffectingRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get suppressions affecting a specific rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/suppressions/validation: + post: + description: Validate a suppression rule. + operationId: ValidateSecurityMonitoringSuppression + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + data_exclusion_query: source:cloudtrail account_id:12345 + description: This rule suppresses low-severity signals in staging environments. + enabled: true + expiration_date: 1703187336000 + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + start_date: 1703187336000 + suppression_query: env:staging status:low + tags: + - technique:T1110-brute-force + - source:cloudtrail + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionCreateRequest" + required: true + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Validate a suppression rule + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_suppressions_write + /api/v2/security_monitoring/configuration/suppressions/{suppression_id}: + delete: + description: Delete a specific suppression rule. + operationId: DeleteSecurityMonitoringSuppression + parameters: + - $ref: "#/components/parameters/SecurityMonitoringSuppressionID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Delete a suppression rule + tags: + - Security Monitoring + get: + description: Get the details of a specific suppression rule. + operationId: GetSecurityMonitoringSuppression + parameters: + - $ref: "#/components/parameters/SecurityMonitoringSuppressionID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get a suppression rule + tags: + - Security Monitoring + patch: + description: Update a specific suppression rule. + operationId: UpdateSecurityMonitoringSuppression + parameters: + - $ref: "#/components/parameters/SecurityMonitoringSuppressionID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_exclusion_query: source:cloudtrail account_id:12345 + description: This rule suppresses low-severity signals in staging environments. + enabled: true + expiration_date: 1703187336000 + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + start_date: 1703187336000 + suppression_query: env:staging status:low + tags: + - technique:T1110-brute-force + - source:cloudtrail + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionUpdateRequest" + description: New definition of the suppression rule. Supports partial updates. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + schema: + $ref: "#/components/schemas/SecurityMonitoringSuppressionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConcurrentModificationResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Update a suppression rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/suppressions/{suppression_id}/version_history: + get: + description: Get a suppression's version history. + operationId: GetSuppressionVersionHistory + parameters: + - $ref: "#/components/parameters/SecurityMonitoringSuppressionID" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + data: + "1": + changes: [] + suppression: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + version: 1 + id: 3dd-0uc-h1s + type: suppression_version_history + schema: + $ref: "#/components/schemas/GetSuppressionVersionHistoryResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get a suppression's version history + tags: + - Security Monitoring + /api/v2/security_monitoring/content_packs/states: + get: + description: |- + Get the activation state, integration status, and log collection status + for all Cloud SIEM content packs. + operationId: GetContentPacksStates + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + details: + cp_activation: activated + data_last_seen: within_24_hours + filters_configured: true + integration_installed_status: installed + logs_seen_from_any_index: true + siem_index_incorrect: false + type: logs + status: active + id: aws-cloudtrail + type: content_pack_state + meta: + cloud_siem_index_incorrect: false + sku: add_on_2024 + schema: + $ref: "#/components/schemas/SecurityMonitoringContentPackStatesResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get content pack states + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_read + - logs_read_index_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/content_packs/{content_pack_id}/activate: + put: + description: |- + Activate a Cloud SIEM content pack. This operation configures the necessary + log filters or security filters depending on the pricing model and updates the content + pack activation state. + operationId: ActivateContentPack + parameters: + - description: The ID of the content pack to activate (for example, `aws-cloudtrail`). + in: path + name: content_pack_id + required: true + schema: + example: aws-cloudtrail + type: string + responses: + "202": + description: Accepted + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Activate content pack + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/content_packs/{content_pack_id}/deactivate: + put: + description: |- + Deactivate a Cloud SIEM content pack. This operation removes the content pack's + configuration from log filters or security filters and updates the content pack activation state. + operationId: DeactivateContentPack + parameters: + - description: The ID of the content pack to deactivate (for example, `aws-cloudtrail`). + in: path + name: content_pack_id + required: true + schema: + example: aws-cloudtrail + type: string + responses: + "202": + description: Accepted + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Deactivate content pack + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets: + get: + description: |- + List all Cloud SIEM datasets available to the organization, including both + customer-defined datasets and Datadog out-of-the-box datasets. + operationId: ListSecurityMonitoringDatasets + parameters: + - description: Size for a given page. The maximum allowed value is 100. + in: query + name: page[size] + required: false + schema: + default: 50 + example: 50 + format: int64 + type: integer + - description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: Attribute used to sort datasets. Prefix with `-` to sort in descending order. + in: query + name: sort + required: false + schema: + example: name + type: string + - description: A search query to filter datasets by name or description. + in: query + name: filter[query] + required: false + schema: + example: sample_dataset + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: "2025-03-20T10:00:00Z" + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: "*" + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: "2025-03-20T10:00:00Z" + name: sample_dataset + updatedByHandle: + updatedByName: + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + meta: + totalCount: 1 + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetsListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: List datasets + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new Cloud SIEM dataset. A dataset bundles a data source, a set of + indexes, and a search query that can be referenced from detection rules. + operationId: CreateSecurityMonitoringDataset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: "*" + description: A sample dataset used for detection rules. + type: datasetCreate + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetCreateResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Create a dataset + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + - security_monitoring_dataset_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/dependencies: + post: + description: |- + Return, for each of the requested datasets, the list of detection rules that depend + on it. Useful for understanding the impact of updating or deleting a dataset. + operationId: BatchGetSecurityMonitoringDatasetDependencies + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + datasetIds: + - 123e4567-e89b-12d3-a456-426614174000 + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependenciesRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + count: 0 + datasetId: 123e4567-e89b-12d3-a456-426614174000 + ids: [] + resource_type: security_detection_rule + id: 123e4567-e89b-12d3-a456-426614174000 + type: datasetDependents + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetDependenciesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get dataset dependencies + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/{dataset_id}: + delete: + description: |- + Delete a Cloud SIEM dataset. Out-of-the-box datasets cannot be deleted and + deleting a dataset that is referenced by a detection rule is rejected. + operationId: DeleteSecurityMonitoringDataset + parameters: + - $ref: "#/components/parameters/SecurityMonitoringDatasetID" + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Delete a dataset + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + - security_monitoring_dataset_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the current version of a Cloud SIEM dataset by ID. + operationId: GetSecurityMonitoringDataset + parameters: + - $ref: "#/components/parameters/SecurityMonitoringDatasetID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2025-03-20T10:00:00Z" + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: "*" + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: "2025-03-20T10:00:00Z" + name: sample_dataset + updatedByHandle: + updatedByName: + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a dataset + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update an existing Cloud SIEM dataset. The current version of the dataset can be + provided to detect concurrent modifications. + operationId: UpdateSecurityMonitoringDataset + parameters: + - $ref: "#/components/parameters/SecurityMonitoringDatasetID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: "*" + description: An updated description for the dataset. + version: 1 + type: datasetUpdate + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetUpdateRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Update a dataset + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + - security_monitoring_dataset_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/{dataset_id}/version/{version}: + get: + description: Retrieve a specific historical version of a Cloud SIEM dataset. + operationId: GetSecurityMonitoringDatasetByVersion + parameters: + - $ref: "#/components/parameters/SecurityMonitoringDatasetID" + - description: The version number of the dataset to retrieve. + in: path + name: version + required: true + schema: + example: 1 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2025-03-20T10:00:00Z" + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: "*" + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: "2025-03-20T10:00:00Z" + name: sample_dataset + updatedByHandle: + updatedByName: + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a dataset at a specific version + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/{dataset_id}/version_history: + get: + description: Retrieve the version history of a Cloud SIEM dataset, including the changes made at each version. + operationId: GetSecurityMonitoringDatasetVersionHistory + parameters: + - $ref: "#/components/parameters/SecurityMonitoringDatasetID" + - description: Size for a given page. The maximum allowed value is 100. + in: query + name: page[size] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + - description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + data: + "1": + changes: [] + dataset: + createdAt: "2025-03-20T10:00:00Z" + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: "*" + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: "2025-03-20T10:00:00Z" + name: sample_dataset + updatedByHandle: + updatedByName: + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset_version_history + schema: + $ref: "#/components/schemas/SecurityMonitoringDatasetVersionHistoryResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get the version history of a dataset + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/entity_context: + get: + description: |- + Search the Cloud SIEM entity context store for entities that match a query, and return the historical + revisions of each entity in the requested time range. The endpoint can either return revisions across an + interval (`from` / `to`) or the snapshot of each entity at a single point in time (`as_of`); the two modes + are mutually exclusive. + operationId: GetEntityContext + parameters: + - description: A free-text query (for example, an email address or principal ID) used to filter the entities returned. + example: user@example.com + in: query + name: query + required: false + schema: + type: string + - description: |- + The start of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now-7d`). + Defaults to `now-7d`. Ignored when `as_of` is set. + in: query + name: from + required: false + schema: + default: now-7d + example: now-7d + type: string + - description: |- + The end of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now`). + Defaults to `now`. Ignored when `as_of` is set. + in: query + name: to + required: false + schema: + default: now + example: now + type: string + - description: |- + A point in time at which to query the entity revisions, as an RFC3339 timestamp, a Unix timestamp + (in seconds), or a relative time (for example, `now-1d`). When set, `from` and `to` are ignored. + Cannot be combined with custom `from` / `to` values. + example: now-1d + in: query + name: as_of + required: false + schema: + type: string + - description: The maximum number of entities to return. + in: query + name: limit + required: false + schema: + default: 250 + example: 100 + format: int64 + type: integer + - description: An opaque token used to fetch the next page of results, as returned in `meta.page.next_token` of a previous response. + in: query + name: page_token + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + revisions: + - attributes: + accounts: + - linked-account-123 + display_name: Test User + email: user@example.com + principal_id: user@example.com + first_seen_at: "2026-04-01T00:00:00Z" + last_seen_at: "2026-05-01T00:00:00Z" + id: user@example.com + type: siem_entity_identity + meta: + page: + next_token: "" + total_count: 1 + schema: + $ref: "#/components/schemas/EntityContextResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - siem_entities_read + summary: Get entity context + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - siem_entities_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/entity_context/{id}: + get: + description: |- + Get a single entity from the Cloud SIEM entity context store by its identifier, returning the historical + revisions of the entity in the requested time range. The endpoint can either return revisions across an + interval (`from` / `to`) or the snapshot of the entity at a single point in time (`as_of`); the two modes + are mutually exclusive. + operationId: GetSingleEntityContext + parameters: + - description: The unique identifier of the entity to retrieve. + in: path + name: id + required: true + schema: + example: user@example.com + type: string + - description: |- + The start of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now-7d`). + Defaults to `now-7d`. Ignored when `as_of` is set. + in: query + name: from + required: false + schema: + default: now-7d + example: now-7d + type: string + - description: |- + The end of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now`). + Defaults to `now`. Ignored when `as_of` is set. + in: query + name: to + required: false + schema: + default: now + example: now + type: string + - description: |- + A point in time at which to query the entity revisions, as an RFC3339 timestamp, a Unix timestamp + (in seconds), or a relative time (for example, `now-1d`). When set, `from` and `to` are ignored. + Cannot be combined with custom `from` / `to` values. + example: now-1d + in: query + name: as_of + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + revisions: + - attributes: + accounts: + - linked-account-123 + display_name: Test User + email: user@example.com + principal_id: user@example.com + first_seen_at: "2026-04-01T00:00:00Z" + last_seen_at: "2026-05-01T00:00:00Z" + id: user@example.com + type: siem_entity_identity + schema: + $ref: "#/components/schemas/SingleEntityContextResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - siem_entities_read + summary: Get a single entity context + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - siem_entities_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/rules: + get: + description: List rules. + operationId: ListSecurityMonitoringRules + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: A search query to filter security rules. You can filter by attributes such as `type`, `source`, `tags`. + example: "type:signal_correlation source:cloudtrail" + in: query + name: query + required: false + schema: + type: string + - description: Attribute used to sort rules. Prefix with `-` to sort in descending order. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleSort" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - id: abc-123 + isEnabled: true + name: My security monitoring rule. + type: log_detection + meta: {} + schema: + $ref: "#/components/schemas/SecurityMonitoringListRulesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: List rules + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + post: + description: Create a detection rule. + operationId: CreateSecurityMonitoringRule + requestBody: + content: + "application/json": + examples: + default: + value: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + filters: [] + hasExtendedTitle: true + isEnabled: true + message: Test rule + name: My security monitoring rule. + options: + evaluationWindow: 900 + keepAlive: 3600 + maxSignalDuration: 86400 + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + metric: "" + query: "@test:true" + referenceTables: + - checkPresence: true + columnName: value + logFieldPath: testtag + ruleQueryName: a + tableName: synthetics_test_reference_table_dont_delete + tags: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleCreatePayload" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Create a detection rule + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/bulk_delete: + delete: + description: |- + Delete multiple security monitoring rules in a single request. Default rules cannot be deleted. + operationId: BulkDeleteSecurityMonitoringRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ruleIds: + - abc-000-u7q + - abc-000-7dd + id: bulk_delete + type: bulk_delete_rules + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeletePayload" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + deletedRules: + - abc-000-u7q + - abc-000-7dd + failedRules: [] + id: bulk_delete_response + type: bulk_delete_response + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkDeleteResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Bulk delete security monitoring rules + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/bulk_export: + post: + description: |- + Export a list of security monitoring rules as a ZIP file containing JSON rule definitions. + The endpoint accepts a list of rule IDs and returns a ZIP archive where each rule is + saved as a separate JSON file named after the rule. + operationId: BulkExportSecurityMonitoringRules + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + ruleIds: + - def-000-u7q + - def-000-7dd + id: bulk_export + type: security_monitoring_rules_bulk_export + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleBulkExportPayload" + required: true + responses: + "200": + content: + application/zip: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Bulk export security monitoring rules + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + /api/v2/security_monitoring/rules/convert: + post: + description: |- + Convert a rule that doesn't (yet) exist from JSON to Terraform for Datadog provider + resource `datadog_security_monitoring_rule`. You can do so for the following rule types: + - App and API Protection + - Cloud SIEM (log detection and signal correlation) + - Workload Protection + + You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). + operationId: ConvertSecurityMonitoringRuleFromJSONToTerraform + requestBody: + content: + "application/json": + examples: + default: + value: + calculatedFields: + - expression: "@request_end_timestamp - @request_start_timestamp" + name: response_time + cases: + - condition: a > 0 + name: "" + notifications: [] + status: info + filters: [] + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule. + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + regoRule: + policy: "package datadog\n\nimport data.datadog.output as dd_output\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n # Logic that evaluates to true if the resource should be skipped\n true\n} else = \"pass\" {\n # Logic that evaluates to true if the resource is compliant\n true\n} else = \"fail\" {\n # Logic that evaluates to true if the resource is not compliant\n true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n some resource in input.resources[input.main_resource_type]\n result := dd_output.format(resource, eval(resource))\n}" + resourceTypes: + - gcp_iam_service_account + - gcp_iam_policy + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 900 + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + keepAlive: 3600 + maxSignalDuration: 86400 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + rootQueries: + - query: source:cloudtrail + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + query: source:cloudtrail + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: "2025-07-14T12:00:00" + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertPayload" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + ruleId: abc-123 + terraformContent: 'resource "datadog_security_monitoring_rule" "example" {}' + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Convert a rule from JSON to Terraform + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/convert/bulk: + post: + description: |- + Convert a list of existing security monitoring rules to Terraform for the Datadog provider + resource `datadog_security_monitoring_rule`. Returns a ZIP archive containing one Terraform + file per rule. You can convert rules for the following types: + - App and API Protection + - Cloud SIEM (log detection and signal correlation) + - Workload Protection + operationId: BulkConvertExistingSecurityMonitoringRules + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + ruleIds: + - def-000-u7q + - def-000-7dd + id: convert_bulk + type: security_monitoring_rules_convert_bulk + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertBulkPayload" + required: true + responses: + "200": + content: + application/zip: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Bulk convert rules to Terraform + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + /api/v2/security_monitoring/rules/test: + post: + description: |- + Test a rule. + operationId: TestSecurityMonitoringRule + requestBody: + content: + "application/json": + examples: + default: + value: + rule: + calculatedFields: + - expression: "@request_end_timestamp - @request_start_timestamp" + name: response_time + cases: + - condition: a > 0 + name: "" + notifications: [] + status: info + filters: + - action: require + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule message. + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 0 + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + keepAlive: 0 + maxSignalDuration: 0 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + queries: + - aggregation: count + distinctFields: [] + groupByFields: + - "@userIdentity.assumed_role" + name: "" + query: source:cloudtrail + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: "2025-07-14T12:00:00" + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: log_detection + ruleQueryPayloads: + - expectedResult: true + index: 0 + payload: + ddsource: nginx + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleTestRequest" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + results: + - true + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleTestResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Test a rule + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/validation: + post: + description: Validate a detection rule. + operationId: ValidateSecurityMonitoringRule + requestBody: + content: + "application/json": + examples: + default: + value: + calculatedFields: + - expression: "@request_end_timestamp - @request_start_timestamp" + name: response_time + cases: + - condition: a > 0 + name: "" + notifications: [] + status: info + filters: + - action: require + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + regoRule: + policy: "package datadog\n\nimport data.datadog.output as dd_output\nimport future.keywords.contains\nimport future.keywords.if\nimport future.keywords.in\n\neval(resource) = \"skip\" if {\n # Logic that evaluates to true if the resource should be skipped\n true\n} else = \"pass\" {\n # Logic that evaluates to true if the resource is compliant\n true\n} else = \"fail\" {\n # Logic that evaluates to true if the resource is not compliant\n true\n}\n\n# This part remains unchanged for all rules\nresults contains result if {\n some resource in input.resources[input.main_resource_type]\n result := dd_output.format(resource, eval(resource))\n}" + resourceTypes: + - gcp_iam_service_account + - gcp_iam_policy + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 1800 + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + keepAlive: 1800 + maxSignalDuration: 1800 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + rootQueries: + - query: source:cloudtrail + queries: + - aggregation: count + distinctFields: [] + groupByFields: + - "@userIdentity.assumed_role" + name: "" + query: source:cloudtrail + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: "2025-07-14T12:00:00" + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleValidatePayload" + required: true + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Validate a detection rule + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/{rule_id}: + delete: + description: |- + Delete an existing rule. Default rules cannot be deleted. + operationId: DeleteSecurityMonitoringRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + responses: + "204": + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Delete an existing rule + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + get: + description: Get a rule's details. + operationId: GetSecurityMonitoringRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + responses: + "200": + content: + "application/json": + examples: + default: + value: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleResponse" + description: OK + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a rule's details + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + put: + description: |- + Update an existing rule. When updating `cases`, `queries` or `options`, the whole field + must be included. For example, when modifying a query all queries must be included. + Default rules can only be updated to be enabled, to change notifications, or to update + the tags (default tags cannot be removed). + operationId: UpdateSecurityMonitoringRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + requestBody: + content: + "application/json": + examples: + default: + value: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + filters: [] + isEnabled: true + message: Test rule + name: My security monitoring rule. + options: + evaluationWindow: 900 + keepAlive: 3600 + maxSignalDuration: 86400 + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + metrics: [] + query: "@test:true" + tags: [] + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleUpdatePayload" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Update an existing rule + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/{rule_id}/convert: + get: + description: |- + Convert an existing rule from JSON to Terraform for Datadog provider + resource `datadog_security_monitoring_rule`. You can do so for the following rule types: + - App and API Protection + - Cloud SIEM (log detection and signal correlation) + - Workload Protection + + You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). + operationId: ConvertExistingSecurityMonitoringRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + responses: + "200": + content: + "application/json": + examples: + default: + value: + ruleId: abc-123 + terraformContent: 'resource "datadog_security_monitoring_rule" "example" {}' + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleConvertResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Convert an existing rule from JSON to Terraform + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + /api/v2/security_monitoring/rules/{rule_id}/restore/{version}: + post: + description: |- + Restores a custom detection rule to a previously saved historical version. + Only custom rules can be restored. Default and partner rules return 400. + The restore creates a new version entry; it does not overwrite history. + operationId: RestoreSecurityMonitoringRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + - $ref: "#/components/parameters/SecurityMonitoringRuleVersion" + responses: + "200": + content: + "application/json": + examples: + default: + value: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Restore a rule to a historical version + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + /api/v2/security_monitoring/rules/{rule_id}/test: + post: + description: |- + Test an existing rule. + operationId: TestExistingSecurityMonitoringRule + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + requestBody: + content: + "application/json": + examples: + default: + value: + rule: + cases: + - condition: "a > 0" + name: "" + notifications: [] + status: info + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule message. + name: My security monitoring rule. + options: + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 0 + keepAlive: 0 + maxSignalDuration: 0 + queries: + - aggregation: count + distinctFields: [] + groupByFields: + - "@userIdentity.assumed_role" + name: "" + query: "source:source_here" + tags: + - "env:prod" + - "team:security" + type: log_detection + ruleQueryPayloads: + - expectedResult: true + index: 0 + payload: + ddsource: source_here + ddtags: "env:staging,version:5.1" + hostname: i-012345678 + message: "2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World" + service: payment + userIdentity: + assumed_role: fake assumed_role + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleTestRequest" + required: true + responses: + "200": + content: + "application/json": + examples: + default: + value: + results: + - true + schema: + $ref: "#/components/schemas/SecurityMonitoringRuleTestResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Test an existing rule + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/{rule_id}/version_history: + get: + description: Get a rule's version history. + operationId: GetRuleVersionHistory + parameters: + - $ref: "#/components/parameters/SecurityMonitoringRuleID" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + count: 1 + data: {} + id: abc-123 + type: GetRuleVersionHistoryResponse + schema: + $ref: "#/components/schemas/GetRuleVersionHistoryResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a rule's version history + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + /api/v2/security_monitoring/sample_log_generation/subscriptions: + get: + description: |- + Get the sample log generation subscriptions for the organization. + Sample log generation injects representative example logs for a given Cloud SIEM content pack into the Logs platform, + which can be used to test detection rules without onboarding the underlying integration first. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an eligible + pricing model. Other organizations receive a `403 Forbidden` (non-trial orgs) or a `400 Bad Request` + (feature disabled), and legacy pricing tiers receive a response with `status: not_available`. + operationId: ListSampleLogGenerationSubscriptions + parameters: + - description: |- + Filter the subscriptions by status. Use `active` to return only currently active + subscriptions, or `all` to return every subscription including expired ones. + Ignored when `start_timestamp` is provided. Defaults to `active`. + in: query + name: status + required: false + schema: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionsStatusFilter" + - description: |- + The start of the time range, as an RFC3339 timestamp. When provided, the response includes + every subscription that was active at any point in `[start_timestamp, end_timestamp]`, + and the `status` filter is ignored. + example: "2026-05-01T00:00:00Z" + in: query + name: start_timestamp + required: false + schema: + format: date-time + type: string + - description: |- + The end of the time range, as an RFC3339 timestamp. Ignored unless `start_timestamp` is set. + Defaults to the current time when `start_timestamp` is provided. + example: "2026-05-08T00:00:00Z" + in: query + name: end_timestamp + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + content_pack_id: aws-cloudtrail + created_at: "2026-05-08T20:02:13.77481Z" + expires_at: "2026-05-11T20:02:13.77481Z" + is_active: true + status: subscribed + id: "999" + type: subscriptions + meta: + total_subscriptions: 1 + schema: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + - logs_read_index_data + summary: Get sample log generation subscriptions + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + - logs_read_index_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Subscribe to sample log generation for a Cloud SIEM content pack. Sample logs for the + requested content pack are injected into the Logs platform for the duration of the subscription, + so detection rules can be exercised without onboarding the underlying integration first. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an + eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject + requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`. + operationId: CreateSampleLogGenerationSubscription + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_id: aws-cloudtrail + duration: 3d + type: subscription_requests + schema: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionCreateRequest" + description: The content pack to subscribe to and the desired duration of the subscription. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_id: aws-cloudtrail + created_at: "2026-05-08T20:02:13.77481Z" + expires_at: "2026-05-11T20:02:13.77481Z" + is_active: true + status: subscribed + id: "789" + type: subscriptions + schema: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + - logs_modify_indexes + summary: Subscribe to sample log generation + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/sample_log_generation/subscriptions/bulk: + post: + description: |- + Subscribe to sample log generation for multiple Cloud SIEM content packs in a single call. + Each requested content pack is processed independently; the response includes a per-item + status so partial successes can be inspected. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an + eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject + requests with `400 Bad Request`, and legacy pricing tiers receive per-item responses with `status: not_available`. + operationId: BulkCreateSampleLogGenerationSubscriptions + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_ids: + - aws-cloudtrail + duration: 3d + type: bulk_subscription_requests + schema: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionRequest" + description: The content packs to subscribe to and the desired duration of the subscriptions. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + content_pack_id: aws-cloudtrail + created_at: "2026-05-08T20:02:13.655716Z" + expires_at: "2026-05-11T20:02:13.655716Z" + is_active: true + status: subscribed + id: "123" + meta: + status: 200 + type: subscriptions + schema: + $ref: "#/components/schemas/SampleLogGenerationBulkSubscriptionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + - logs_modify_indexes + summary: Bulk subscribe to sample log generation + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/sample_log_generation/subscriptions/{content_pack_id}: + delete: + description: |- + Unsubscribe from sample log generation for a Cloud SIEM content pack. + After unsubscribing, no more sample logs are generated for the requested content pack. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an + eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject + requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`. + operationId: DeleteSampleLogGenerationSubscription + parameters: + - $ref: "#/components/parameters/SampleLogGenerationContentPackID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_id: aws-cloudtrail + created_at: "2026-05-08T20:02:13.77481Z" + expires_at: "2026-05-08T20:30:00Z" + is_active: false + status: unsubscribed + id: "789" + type: subscriptions + schema: + $ref: "#/components/schemas/SampleLogGenerationSubscriptionResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + - logs_modify_indexes + summary: Unsubscribe from sample log generation + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/signals: + get: + description: |- + The list endpoint returns security signals that match a search query. + Both this endpoint and the POST endpoint can be used interchangeably when listing + security signals. + operationId: ListSecurityMonitoringSignals + parameters: + - $ref: "#/components/parameters/QueryFilterSearch" + - $ref: "#/components/parameters/QueryFilterFrom" + - $ref: "#/components/parameters/QueryFilterTo" + - $ref: "#/components/parameters/QuerySort" + - $ref: "#/components/parameters/QueryPageCursor" + - $ref: "#/components/parameters/QueryPageLimit" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + tags: + - "source:cloudtrail" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + links: + next: "" + meta: + page: + after: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a quick list of security signals + tags: ["Security Monitoring"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/bulk/assignee: + patch: + description: |- + Change the triage assignees of multiple security signals at once. + The maximum number of signals that can be updated in a single request is 199. + operationId: BulkEditSecurityMonitoringSignalsAssignee + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkAssigneeUpdateRequest" + description: Attributes describing the signal assignee updates. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + result: + count: 1 + events: + - event: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + type: status + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Bulk update triage assignee of security signals + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/bulk/state: + patch: + description: |- + Change the triage states of multiple security signals at once. + The maximum number of signals that can be updated in a single request is 199. + operationId: BulkEditSecurityMonitoringSignalsState + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + archive_reason: none + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkStateUpdateRequest" + description: Attributes describing the signal state updates. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + result: + count: 1 + events: + - event: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + type: status + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Bulk update triage state of security signals + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/bulk/update: + patch: + description: |- + Update the triage state or assignee of multiple security signals at once. + The maximum number of signals that can be updated in a single request is 199. + operationId: BulkEditSecurityMonitoringSignals + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + archive_reason: none + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkUpdateRequest" + description: Attributes describing the signal updates. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + result: + count: 1 + events: + - event: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + type: status + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Bulk update security signals + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/search: + post: + description: |- + Returns security signals that match a search query. + Both this endpoint and the GET endpoint can be used interchangeably for listing + security signals. + operationId: SearchSecurityMonitoringSignals + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: "2019-01-02T09:42:36.320Z" + query: security:attack status:high + to: "2019-01-03T09:42:36.320Z" + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalListRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + tags: + - "source:cloudtrail" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + links: + next: "" + meta: + page: + after: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a list of security signals + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}: + get: + description: Get a signal's details. + operationId: GetSecurityMonitoringSignal + parameters: + - $ref: "#/components/parameters/SignalID" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + tags: + - "source:cloudtrail" + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a signal's details + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}/assignee: + patch: + description: |- + Modify the triage assignee of a security signal. + operationId: EditSecurityMonitoringSignalAssignee + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalAssigneeUpdateRequest" + description: Attributes describing the signal update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Modify the triage assignee of a security signal + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/{signal_id}/entities: + get: + description: Get the list of entities related to a security signal, captured at the signal's timestamp. + operationId: GetSignalEntities + parameters: + - $ref: "#/components/parameters/SignalID" + - description: The maximum number of entities to return. + in: query + name: limit + required: false + schema: + default: 10 + example: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + identities: + - display_name: Test User + principal_id: user@example.com + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: entities + schema: + $ref: "#/components/schemas/SignalEntitiesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get entities related to a signal + tags: ["Security Monitoring"] + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/signals/{signal_id}/incidents: + patch: + description: |- + Change the related incidents for a security signal. + operationId: EditSecurityMonitoringSignalIncidents + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_ids: + - 2066 + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalIncidentsUpdateRequest" + description: Attributes describing the signal update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Change the related incidents of a security signal + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/{signal_id}/investigation_queries: + get: + description: Get the list of investigation log queries available for a given security signal. + operationId: GetInvestigationLogQueriesMatchingSignal + parameters: + - $ref: "#/components/parameters/SignalID" + responses: + "200": + content: + application/json: + example: + data: + - attributes: + name: Cloudtrail events for user ARN + query_filter: 'source:cloudtrail @userIdentity.arn:"foo"' + template_variables: + "@userIdentity.arn": + - foo + url: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + id: w00-t10-992 + type: investigation_log_queries + - attributes: + title: Monitor Okta logs to track system access and unusual activity + url: https://www.datadoghq.com/blog/monitor-activity-with-okta/ + id: bxy-o8v-i1a + type: recommended_blog_posts + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalSuggestedActionsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_signals_read + summary: Get investigation queries for a signal + tags: ["Security Monitoring"] + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}/state: + patch: + description: |- + Change the triage state of a security signal. + operationId: EditSecurityMonitoringSignalState + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_reason: none + state: archived + type: signal_metadata + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalStateUpdateRequest" + description: Attributes describing the signal update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Change the triage state of a security signal + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/{signal_id}/suggested_actions: + get: + description: Get the list of suggested actions for a given security signal. + operationId: GetSuggestedActionsMatchingSignal + parameters: + - $ref: "#/components/parameters/SignalID" + responses: + "200": + content: + application/json: + example: + data: + - attributes: + name: Cloudtrail events for user ARN + query_filter: 'source:cloudtrail @userIdentity.arn:"foo"' + template_variables: + "@userIdentity.arn": + - foo + url: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + id: w00-t10-992 + type: investigation_log_queries + - attributes: + title: Monitor Okta logs to track system access and unusual activity + url: https://www.datadoghq.com/blog/monitor-activity-with-okta/ + id: bxy-o8v-i1a + type: recommended_blog_posts + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalSuggestedActionsResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_signals_read + summary: Get suggested actions for a signal + tags: ["Security Monitoring"] + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}/update: + patch: + description: |- + Update the triage state or assignee of a security signal. + operationId: EditSecurityMonitoringSignal + parameters: + - $ref: "#/components/parameters/SignalID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_reason: none + state: archived + type: signal_metadata + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalUpdateRequest" + description: Attributes describing the signal triage state or assignee update. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update security signal triage state or assignee + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/terraform/{resource_type}/bulk: + post: + description: |- + Export multiple security monitoring resources to Terraform, packaged as a zip archive. + The `resource_type` path parameter specifies the type of resources to export + and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + A maximum of 1000 resources can be exported in a single request. + For `rules`, partner rules cannot be exported and return a 400 error. + operationId: BulkExportSecurityMonitoringTerraformResources + parameters: + - $ref: "#/components/parameters/SecurityMonitoringTerraformResourceType" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource_ids: + - abc-123-def + type: bulk_export_resources + schema: + $ref: "#/components/schemas/SecurityMonitoringTerraformBulkExportRequest" + description: The resource IDs to export. + required: true + responses: + "200": + content: + application/zip: + examples: + default: + value: "" + schema: + format: binary + type: string + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + - AuthZ: + - security_monitoring_rules_read + - AuthZ: + - security_monitoring_filters_read + summary: Export security monitoring resources to Terraform + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_suppressions_read + - security_monitoring_rules_read + - security_monitoring_filters_read + x-unstable: "**Note**: This endpoint is in Preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/security_monitoring/terraform/{resource_type}/convert: + post: + description: |- + Convert a security monitoring resource that doesn't (yet) exist from JSON to Terraform. + The `resource_type` path parameter specifies the type of resource to convert + and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + operationId: ConvertSecurityMonitoringTerraformResource + parameters: + - $ref: "#/components/parameters/SecurityMonitoringTerraformResourceType" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource_json: + enabled: true + name: Example-Security-Monitoring + rule_query: "source:cloudtrail" + suppression_query: "env:test" + id: abc-123 + type: convert_resource + schema: + $ref: "#/components/schemas/SecurityMonitoringTerraformConvertRequest" + description: The resource JSON to convert. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + output: 'resource "datadog_security_monitoring_suppression" "abc-123" {}' + resource_id: abc-123 + type_name: datadog_security_monitoring_suppression + id: datadog_security_monitoring_suppression|abc-123 + type: format_resource + schema: + $ref: "#/components/schemas/SecurityMonitoringTerraformExportResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + - AuthZ: + - security_monitoring_rules_read + - AuthZ: + - security_monitoring_filters_read + summary: Convert security monitoring resource to Terraform + tags: + - Security Monitoring + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_suppressions_read + - security_monitoring_rules_read + - security_monitoring_filters_read + x-unstable: "**Note**: This endpoint is in Preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/security_monitoring/terraform/{resource_type}/{resource_id}: + get: + description: |- + Export a security monitoring resource to a Terraform configuration. + The `resource_type` path parameter specifies the type of resource to export + and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + For `rules`, partner rules cannot be exported and return a 400 error. + operationId: ExportSecurityMonitoringTerraformResource + parameters: + - $ref: "#/components/parameters/SecurityMonitoringTerraformResourceType" + - $ref: "#/components/parameters/SecurityMonitoringTerraformResourceId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + output: 'resource "datadog_security_monitoring_suppression" "abc-123" {}' + resource_id: abc-123 + type_name: datadog_security_monitoring_suppression + id: datadog_security_monitoring_suppression|abc-123 + type: format_resource + schema: + $ref: "#/components/schemas/SecurityMonitoringTerraformExportResponse" + description: OK + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + - AuthZ: + - security_monitoring_rules_read + - AuthZ: + - security_monitoring_filters_read + summary: Export security monitoring resource to Terraform + tags: + - Security Monitoring + "x-permission": + operator: OR + permissions: + - security_monitoring_suppressions_read + - security_monitoring_rules_read + - security_monitoring_filters_read + x-unstable: "**Note**: This endpoint is in Preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/sensitive-data-scanner/config: + get: + description: List all the Scanning groups in your organization. + operationId: ListScanningGroups + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: {} + id: abc-123 + relationships: + groups: + data: + - id: group-abc-123 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_configuration + included: + - attributes: + description: "" + filter: + query: "*" + is_enabled: true + name: My scanning group + product_list: + - logs + samplings: + - product: logs + rate: 100.0 + id: group-abc-123 + relationships: + configuration: + data: + id: abc-123 + type: sensitive_data_scanner_configuration + rules: + data: + - id: rule-abc-123 + type: sensitive_data_scanner_rule + type: sensitive_data_scanner_group + - attributes: + description: Detects credit card numbers in various formats + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 35 + keywords: + - credit card + is_enabled: true + name: Credit Card Rule + namespaces: + - admin + priority: 1 + tags: + - sensitive_data:true + text_replacement: + type: none + id: rule-abc-123 + relationships: + group: + data: + id: group-abc-123 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_rule + meta: + count_limit: 500 + group_count_limit: 20 + is_pci_compliant: false + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerGetConfigResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Scanning Groups + tags: + - Sensitive Data Scanner + "x-permission": + operator: OR + permissions: + - data_scanner_read + patch: + description: Reorder the list of groups. + operationId: ReorderScanningGroups + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + groups: + data: + - id: a796feff-a0cc-4a9f-8c61-16c4d5e44964 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_configuration + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerConfigRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerReorderGroupsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Reorder Groups + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/groups: + post: + description: |- + Create a scanning group. + The request MAY include a configuration relationship. + A rules relationship can be omitted entirely, but if it is included it MUST be + null or an empty array (rules cannot be created at the same time). + The new group will be ordered last within the configuration. + operationId: CreateScanningGroup + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: "*" + is_enabled: false + product_list: + - logs + samplings: + - product: logs + rate: 100.0 + relationships: + configuration: + data: + type: sensitive_data_scanner_configuration + type: sensitive_data_scanner_group + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerGroupCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: "" + filter: + query: "*" + is_enabled: false + name: My scanning group + product_list: + - logs + samplings: + - product: logs + rate: 100.0 + id: group-abc-123 + relationships: + configuration: + data: + id: abc-123 + type: sensitive_data_scanner_configuration + rules: + data: [] + type: sensitive_data_scanner_group + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerCreateGroupResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Scanning Group + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/groups/{group_id}: + delete: + description: Delete a given group. + operationId: DeleteScanningGroup + parameters: + - $ref: "#/components/parameters/SensitiveDataScannerGroupID" + requestBody: + content: + application/json: + examples: + default: + value: + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerGroupDeleteRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerGroupDeleteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Scanning Group + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + patch: + description: |- + Update a group, including the order of the rules. + Rules within the group are reordered by including a rules relationship. If the rules + relationship is present, its data section MUST contain linkages for all of the rules + currently in the group, and MUST NOT contain any others. + operationId: UpdateScanningGroup + parameters: + - $ref: "#/components/parameters/SensitiveDataScannerGroupID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: "*" + is_enabled: false + product_list: + - logs + samplings: + - product: logs + rate: 100.0 + relationships: + configuration: + data: + type: sensitive_data_scanner_configuration + type: sensitive_data_scanner_group + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerGroupUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerGroupUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Scanning Group + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/rules: + post: + description: |- + Create a scanning rule in a sensitive data scanner group, ordered last. + The posted rule MUST include a group relationship. + It MUST include either a standard_pattern relationship or a regex attribute, but not both. + If included_attributes is empty or missing, we will scan all attributes except + excluded_attributes. If both are missing, we will scan the whole event. + operationId: CreateScanningRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 30 + keywords: + - email + - address + - login + is_enabled: true + namespaces: + - admin + suppressions: + ends_with: + - "@example.com" + - another.example.com + exact_match: + - admin@example.com + - user@example.com + starts_with: + - admin + - user + tags: + - sensitive_data:true + text_replacement: + type: none + relationships: + group: + data: + type: sensitive_data_scanner_group + standard_pattern: + data: + type: sensitive_data_scanner_standard_pattern + type: sensitive_data_scanner_rule + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerRuleCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Detects credit card numbers in various formats + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 35 + keywords: + - credit card + is_enabled: true + name: Credit Card Rule + namespaces: + - admin + priority: 1 + tags: + - sensitive_data:true + text_replacement: + type: none + id: rule-abc-123 + relationships: + group: + data: + id: group-abc-123 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_rule + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerCreateRuleResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Scanning Rule + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/rules/{rule_id}: + delete: + description: Delete a given rule. + operationId: DeleteScanningRule + parameters: + - $ref: "#/components/parameters/SensitiveDataScannerRuleID" + requestBody: + content: + application/json: + examples: + default: + value: + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerRuleDeleteRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerRuleDeleteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Scanning Rule + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + patch: + description: |- + Update a scanning rule. + The request body MUST NOT include a standard_pattern relationship, as that relationship + is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern + relationship will also result in an error. + operationId: UpdateScanningRule + parameters: + - $ref: "#/components/parameters/SensitiveDataScannerRuleID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 30 + keywords: + - email + - address + - login + is_enabled: true + namespaces: + - admin + suppressions: + ends_with: + - "@example.com" + - another.example.com + exact_match: + - admin@example.com + - user@example.com + starts_with: + - admin + - user + tags: + - sensitive_data:true + text_replacement: + type: none + relationships: + group: + data: + type: sensitive_data_scanner_group + standard_pattern: + data: + type: sensitive_data_scanner_standard_pattern + type: sensitive_data_scanner_rule + meta: + version: 0 + schema: + $ref: "#/components/schemas/SensitiveDataScannerRuleUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: "#/components/schemas/SensitiveDataScannerRuleUpdateResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Scanning Rule + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/standard-patterns: + get: + description: Returns all standard patterns. + operationId: ListStandardPatterns + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Detects credit card numbers in various formats + included_keywords: + - credit card + - card number + name: Credit Card Number + priority: 1 + tags: + - card_number + id: abc-123 + type: sensitive_data_scanner_standard_pattern + schema: + $ref: "#/components/schemas/SensitiveDataScannerStandardPatternsResponseData" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication Error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List standard patterns + tags: + - Sensitive Data Scanner + "x-permission": + operator: OR + permissions: + - data_scanner_read + /api/v2/series: + post: + description: |- + The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards. + The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes). + + If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect: + + - 64 bits for the timestamp + - 64 bits for the value + - 20 bytes for the metric names + - 50 bytes for the timeseries + - The full payload is approximately 100 bytes. + + Host name is one of the resources in the Resources field. + operationId: SubmitMetrics + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: "#/components/schemas/MetricContentEncoding" + requestBody: + content: + application/json: + examples: + default: + value: + series: + - metric: system.load.1 + points: + - timestamp: 1636629071 + value: 1.1 + resources: + - name: dummyhost + type: host + type: 0 + dynamic-points: + description: Post time-series data that can be graphed on Datadog’s dashboards. + externalValue: examples/metrics/dynamic-points.json.sh + summary: Dynamic Points + x-variables: + NOW: $(date +%s) + schema: + $ref: "#/components/schemas/MetricPayload" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + errors: [] + schema: + $ref: "#/components/schemas/IntakePayloadAccepted" + description: Payload accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "408": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Request timeout + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Payload too large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Submit metrics + tags: + - Metrics + x-codegen-request-body-name: body + /api/v2/service_accounts: + post: + description: Create a service account for your organization. + operationId: CreateServiceAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: jane.doe@example.com + service_account: true + relationships: + roles: + data: + - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: users + schema: + $ref: "#/components/schemas/ServiceAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + service_account: true + id: 00000000-0000-0000-0000-000000000001 + type: users + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a service account + tags: + - Service Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/access_tokens: + get: + description: List all access tokens for a specific service account. + operationId: ListServiceAccountAccessTokens + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/PersonalAccessTokensSortParameter" + - $ref: "#/components/parameters/PersonalAccessTokensFilterParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000005 + type: service_access_tokens + meta: + page: + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/ListServiceAccessTokensResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List access tokens for a service account + tags: + - Service Accounts + "x-permission": + operator: OR + permissions: + - service_account_write + post: + description: Create an access token for a service account. + operationId: CreateServiceAccountAccessToken + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Service Account Access Token + scopes: + - dashboards_read + - dashboards_write + type: service_access_tokens + schema: + $ref: "#/components/schemas/ServiceAccountAccessTokenCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + key: "" + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000006 + type: service_access_tokens + schema: + $ref: "#/components/schemas/ServiceAccessTokenCreateResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an access token for a service account + tags: + - Service Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/access_tokens/{token_id}: + delete: + description: Revoke a specific access token for a service account. + operationId: RevokeServiceAccountAccessToken + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/AccessTokenID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Revoke an access token for a service account + tags: + - Service Accounts + "x-permission": + operator: OR + permissions: + - service_account_write + get: + description: Get a specific access token for a service account by its ID. + operationId: GetServiceAccountAccessToken + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/AccessTokenID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000007 + type: service_access_tokens + schema: + $ref: "#/components/schemas/ServiceAccessTokenResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get an access token for a service account + tags: + - Service Accounts + "x-permission": + operator: OR + permissions: + - service_account_write + patch: + description: Update a specific access token for a service account. + operationId: UpdateServiceAccountAccessToken + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/AccessTokenID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated Service Access Token + scopes: + - dashboards_read + - dashboards_write + id: 00112233-4455-6677-8899-aabbccddeeff + type: service_access_tokens + schema: + $ref: "#/components/schemas/ServiceAccountAccessTokenUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2025-12-31T23:59:59+00:00" + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000008 + type: service_access_tokens + schema: + $ref: "#/components/schemas/ServiceAccessTokenResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update an access token for a service account + tags: + - Service Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/application_keys: + get: + description: List all application keys available for this service account. + operationId: ListServiceAccountApplicationKeys + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/ApplicationKeysSortParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter" + - $ref: "#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000002 + type: application_keys + schema: + $ref: "#/components/schemas/ListApplicationKeysResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List application keys for this service account + tags: + - Service Accounts + "x-permission": + operator: OR + permissions: + - service_account_write + post: + description: Create an application key for this service account. + operationId: CreateServiceAccountApplicationKey + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000003 + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create an application key for this service account + tags: + - Service Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id}: + delete: + description: Delete an application key owned by this service account. + operationId: DeleteServiceAccountApplicationKey + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/ApplicationKeyID" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete an application key for this service account + tags: + - Service Accounts + "x-permission": + operator: OR + permissions: + - service_account_write + get: + description: Get an application key owned by this service account. + operationId: GetServiceAccountApplicationKey + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/ApplicationKeyID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000004 + type: application_keys + schema: + $ref: "#/components/schemas/PartialApplicationKeyResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get one application key for this service account + tags: + - Service Accounts + "x-permission": + operator: OR + permissions: + - service_account_write + patch: + description: Edit an application key owned by this service account. + operationId: UpdateServiceAccountApplicationKey + parameters: + - $ref: "#/components/parameters/ServiceAccountID" + - $ref: "#/components/parameters/ApplicationKeyID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + id: 00112233-4455-6677-8899-aabbccddeeff + type: application_keys + schema: + $ref: "#/components/schemas/ApplicationKeyUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000005 + type: application_keys + schema: + $ref: "#/components/schemas/PartialApplicationKeyResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Edit an application key for this service account + tags: + - Service Accounts + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - service_account_write + /api/v2/services/definitions: + get: + description: Get a list of all service definitions from the Datadog Service Catalog. + operationId: ListServiceDefinitions + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/SchemaVersion" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + schema: + dd-service: test-service + schema-version: v2.2 + team: my-team + id: test-service + type: service_definitions + schema: + $ref: "#/components/schemas/ServiceDefinitionsListResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get all service definitions + tags: + - Service Definition + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - apm_service_catalog_read + post: + description: Create or update service definition in the Datadog Service Catalog. + operationId: CreateOrUpdateServiceDefinitions + requestBody: + content: + application/json: + examples: + default: + value: + application: my-app + ci-pipeline-fingerprints: + - j88xdEy0J5lc + - eZ7LMljCk8vo + contacts: + - contact: https://teams.microsoft.com/myteam + name: My team channel + type: slack + dd-service: my-service + description: My service description + extensions: + myorg/extension: extensionValue + integrations: + opsgenie: + region: US + service-url: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 + pagerduty: + service-url: https://my-org.pagerduty.com/service-directory/PMyService + languages: + - dotnet + - go + - java + - js + - php + - python + - ruby + - c++ + lifecycle: sandbox + links: + - name: Runbook + provider: Github + type: runbook + url: https://my-runbook + schema-version: v2.2 + tags: + - my:tag + - service:tag + team: my-team + tier: High + type: web + schema: + $ref: "#/components/schemas/ServiceDefinitionsCreateRequest" + description: Service Definition YAML/JSON. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + schema: + dd-service: my-service + schema-version: v2.2 + id: abc-123 + type: service_definitions + schema: + $ref: "#/components/schemas/ServiceDefinitionCreateResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Create or update service definition + tags: + - Service Definition + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_service_catalog_write + /api/v2/services/definitions/{service_name}: + delete: + description: Delete a single service definition in the Datadog Service Catalog. + operationId: DeleteServiceDefinition + parameters: + - $ref: "#/components/parameters/ServiceName" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Delete a single service definition + tags: + - Service Definition + "x-permission": + operator: OR + permissions: + - apm_service_catalog_write + get: + description: Get a single service definition from the Datadog Service Catalog. + operationId: GetServiceDefinition + parameters: + - $ref: "#/components/parameters/ServiceName" + - $ref: "#/components/parameters/SchemaVersion" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + schema: + dd-service: test-service + schema-version: v2.2 + team: my-team + id: test-service + type: service_definitions + schema: + $ref: "#/components/schemas/ServiceDefinitionGetResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get a single service definition + tags: + - Service Definition + "x-permission": + operator: OR + permissions: + - apm_service_catalog_read + /api/v2/siem-historical-detections/histsignals: + get: + description: List hist signals. + operationId: ListSecurityMonitoringHistsignals + parameters: + - $ref: "#/components/parameters/QueryFilterSearch" + - $ref: "#/components/parameters/QueryFilterFrom" + - $ref: "#/components/parameters/QueryFilterTo" + - $ref: "#/components/parameters/QuerySort" + - $ref: "#/components/parameters/QueryPageCursor" + - $ref: "#/components/parameters/QueryPageLimit" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: List hist signals + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/histsignals/search: + post: + description: Search hist signals. + operationId: SearchSecurityMonitoringHistsignals + requestBody: + content: + "application/json": + examples: + default: + value: + filter: + from: "2019-01-02T09:42:36.320Z" + query: "security:attack status:high" + to: "2019-01-03T09:42:36.320Z" + page: + limit: 25 + sort: timestamp + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalListRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Search hist signals + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/histsignals/{histsignal_id}: + get: + description: Get a hist signal's details. + operationId: GetSecurityMonitoringHistsignal + parameters: + - $ref: "#/components/parameters/HistoricalSignalID" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a hist signal's details + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs: + get: + description: List historical jobs. + operationId: ListHistoricalJobs + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: The order of the jobs in results. + example: "status" + in: query + name: sort + required: false + schema: + type: string + - description: Query used to filter items from the fetched list. + example: "security:attack status:high" + in: query + name: filter[query] + required: false + schema: + type: string + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + - attributes: + createdAt: "2024-01-01T00:00:00+00:00" + createdByHandle: example-handle + createdByName: Example Name + jobName: Example Job + jobStatus: COMPLETED + id: abc-123 + type: historicalDetectionsJob + meta: + totalCount: 1 + schema: + $ref: "#/components/schemas/ListHistoricalJobsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List historical jobs + tags: ["Security Monitoring"] + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + post: + description: |- + Run a historical job. + operationId: RunHistoricalJob + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + jobDefinition: + cases: + - condition: "a > 1" + name: Condition 1 + notifications: [] + status: info + from: 1730387522611 + index: main + message: "A large number of failed login attempts." + name: "Excessive number of failed attempts." + options: + evaluationWindow: 900 + keepAlive: 3600 + maxSignalDuration: 86400 + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + query: "source:non_existing_src_weekend" + tags: [] + to: 1730391122611 + type: log_detection + type: historicalDetectionsJobCreate + schema: + $ref: "#/components/schemas/RunHistoricalJobRequest" + required: true + responses: + "201": + content: + "application/json": + examples: + default: + value: + data: + id: abc-123 + type: historicalDetectionsJob + schema: + $ref: "#/components/schemas/JobCreateResponse" + description: Status created + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Run a historical job + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/signal_convert: + post: + description: |- + Convert a job result to a signal. + operationId: ConvertJobResultToSignal + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + jobResultIds: + - "" + notifications: + - "" + signalMessage: A large number of failed login attempts. + signalSeverity: critical + type: historicalDetectionsJobResultSignalConversion + schema: + $ref: "#/components/schemas/ConvertJobResultsToSignalsRequest" + required: true + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Convert a job result to a signal + tags: ["Security Monitoring"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/{job_id}: + delete: + description: |- + Delete an existing job. + operationId: DeleteHistoricalJob + parameters: + - $ref: "#/components/parameters/HistoricalJobID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete an existing job + tags: ["Security Monitoring"] + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + get: + description: Get a job's details. + operationId: GetHistoricalJob + parameters: + - $ref: "#/components/parameters/HistoricalJobID" + responses: + "200": + content: + "application/json": + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-01T00:00:00+00:00" + createdByHandle: example-handle + createdByName: Example Name + jobName: Example Job + jobStatus: COMPLETED + modifiedAt: "2024-01-01T00:00:00+00:00" + signalOutput: false + id: abc-123 + type: historicalDetectionsJob + schema: + $ref: "#/components/schemas/HistoricalJobResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a job's details + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/{job_id}/cancel: + patch: + description: Cancel a historical job. + operationId: CancelHistoricalJob + parameters: + - $ref: "#/components/parameters/HistoricalJobID" + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "401": + $ref: "#/components/responses/ConcurrentModificationResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Cancel a historical job + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_rules_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/{job_id}/histsignals: + get: + description: Get a job's hist signals. + operationId: GetSecurityMonitoringHistsignalsByJobId + parameters: + - $ref: "#/components/parameters/HistoricalJobID" + - $ref: "#/components/parameters/QueryFilterSearch" + - $ref: "#/components/parameters/QueryFilterFrom" + - $ref: "#/components/parameters/QueryFilterTo" + - $ref: "#/components/parameters/QuerySort" + - $ref: "#/components/parameters/QueryPageCursor" + - $ref: "#/components/parameters/QueryPageLimit" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: "2024-01-01T00:00:00+00:00" + id: abc-123 + type: signal + schema: + $ref: "#/components/schemas/SecurityMonitoringSignalsListResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a job's hist signals + tags: ["Security Monitoring"] + "x-permission": + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/slo/report: + post: + deprecated: true + description: |- + Create a job to generate an SLO report. The report job is processed asynchronously and eventually results in a CSV report being available for download. + + Check the status of the job and download the CSV report using the returned `report_id`. + operationId: CreateSLOReportJob + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from_ts: 1690901870 + interval: weekly + query: slo_type:metric + timezone: America/New_York + to_ts: 1706803070 + schema: + $ref: "#/components/schemas/SloReportCreateRequest" + description: Create SLO report job request body. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: report_id + schema: + $ref: "#/components/schemas/SLOReportPostResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Create a new SLO report + tags: + - Service Level Objectives + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - slos_read + x-sunset: "2027-01-25" + x-unstable: |- + **Note**: This feature is in private beta and is no longer accepting requests for access. + /api/v2/slo/report/{report_id}/download: + get: + deprecated: true + description: |- + Download an SLO report. This can only be performed after the report job has completed. + + Reports are not guaranteed to exist indefinitely. Datadog recommends that you download the report as soon as it is available. + operationId: GetSLOReport + parameters: + - $ref: "#/components/parameters/ReportID" + responses: + "200": + content: + text/csv: + examples: + default: + value: "slo_name,slo_id,sli,error_budget_remaining\nMy SLO,abc-123,99.95,99.5" + schema: + type: string + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get SLO report + tags: + - Service Level Objectives + x-sunset: "2027-01-25" + x-unstable: |- + **Note**: This feature is in private beta and is no longer accepting requests for access. + /api/v2/slo/report/{report_id}/status: + get: + deprecated: true + description: Get the status of the SLO report job. + operationId: GetSLOReportJobStatus + parameters: + - $ref: "#/components/parameters/ReportID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + status: completed + id: 00000000-0000-0000-0000-000000000002 + type: report_id + schema: + $ref: "#/components/schemas/SLOReportStatusGetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get SLO report status + tags: + - Service Level Objectives + x-sunset: "2027-01-25" + x-unstable: |- + **Note**: This feature is in private beta and is no longer accepting requests for access. + /api/v2/slo/{slo_id}/status: + get: + description: |- + Get the status of a Service Level Objective (SLO) for a given time period. + + This endpoint returns the current SLI value, error budget remaining, and other status information for the specified SLO. + operationId: GetSloStatus + parameters: + - $ref: "#/components/parameters/SloID" + - $ref: "#/components/parameters/FromTimestamp" + - $ref: "#/components/parameters/ToTimestamp" + - $ref: "#/components/parameters/DisableCorrections" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + error_budget_remaining: 99.5 + raw_error_budget_remaining: + unit: seconds + value: 86400.5 + sli: 99.95 + span_precision: 2 + state: ok + id: "00000000-0000-0000-0000-000000000000" + type: slo_status + schema: + $ref: "#/components/schemas/SloStatusResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get SLO status + tags: + - Service Level Objectives + "x-permission": + operator: OR + permissions: + - slos_read + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/snapshot: + post: + description: Create a snapshot of a graph widget. The snapshot is rendered asynchronously; the returned URL can be polled until the image is ready. + operationId: CreateSnapshot + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/CreateSnapshotRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + url: https://app.datadoghq.com/api/v2/snapshot/view/public/60d/00000000-0000-0000-0000-000000000000/1692464400000-12345678-1234-5678-9abc-def123456789.png + id: 12345678-1234-5678-9abc-def123456789 + type: create_snapshot + schema: + $ref: "#/components/schemas/CreateSnapshotResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a graph snapshot + tags: + - Reporting And Sharing + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps: + delete: + description: |- + Deletes source maps matching the specified filter criteria. Supports + dry-run mode to preview which source maps would be deleted without + performing the actual deletion. + operationId: DeleteSourcemaps + parameters: + - description: |- + The type of source map. Valid values are `js`, `jvm`, `ios`, + `react`, `flutter`, `elf`, `ndk`, `il2cpp`. + in: query + name: mapkind + required: true + schema: + $ref: "#/components/schemas/SourcemapMapKind" + - description: |- + When set to `true`, returns the source maps that would be deleted + without performing the actual deletion. When set to `false`, + performs the deletion. + in: query + name: dry_run + required: true + schema: + example: true + type: boolean + - description: |- + Filter by service names (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[service] + schema: + example: + - my-web-service + items: + type: string + type: array + style: form + - description: |- + Filter by version values (multiple values allowed, maximum 10). + Required for `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[version] + schema: + example: + - 1.0.0 + items: + type: string + type: array + style: form + - description: Filter by variant values (multiple values allowed). Supported for `jvm`. + explode: true + in: query + name: filter[variant] + schema: + items: + type: string + type: array + style: form + - description: Filter by source map ID values (multiple values allowed). Supported for all map kinds. + explode: true + in: query + name: filter[id] + schema: + items: + type: string + type: array + style: form + - description: Filter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`. + explode: true + in: query + name: filter[build_id] + schema: + items: + type: string + type: array + style: form + - description: Filter by UUID values (multiple values allowed). Supported for `ios`. + explode: true + in: query + name: filter[uuid] + schema: + items: + type: string + type: array + style: form + - description: Filter by platform values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[platform] + schema: + items: + type: string + type: array + style: form + - description: Filter by build number values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[build_number] + schema: + items: + type: string + type: array + style: form + - description: Filter by bundle name values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[bundle_name] + schema: + items: + type: string + type: array + style: form + - description: |- + Filter by architecture values (multiple values allowed). Supported + for `flutter`, `elf`, and `ndk`. + explode: true + in: query + name: filter[arch] + schema: + items: + type: string + type: array + style: form + - description: Filter by symbol source values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[symbol_source] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin version values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin_version] + schema: + items: + type: string + type: array + style: form + - description: Filter by filename (single value). Supported for `js`, `elf`, and `ndk`. + in: query + name: filter[filename] + schema: + type: string + - description: Filter by debug ID (single value). Supported for `react`. + in: query + name: filter[debug_id] + schema: + type: string + - description: Filter by GNU build ID (single value). Supported for `elf`. + in: query + name: filter[gnu_build_id] + schema: + type: string + - description: Filter by Go build ID (single value). Supported for `elf`. + in: query + name: filter[go_build_id] + schema: + type: string + - description: Filter by file hash (single value). Supported for `elf`. + in: query + name: filter[file_hash] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + absolute_path: /js/bundle.min.js + created_at: "2024-01-01T00:00:00Z" + mapkind: js + service: my-web-service + size: 1024 + version: 1.0.0 + id: "5" + type: sourcemaps + schema: + $ref: "#/components/schemas/SourcemapsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Delete source maps + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_delete_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Retrieves the content of a specific JavaScript source map file by its + filename, service name, and version. + operationId: GetSourcemaps + parameters: + - description: The path to the source map file. + in: query + name: filename + required: true + schema: + example: js/bundle.min.js.map + type: string + - description: The service name associated with the source map. + in: query + name: service + required: true + schema: + example: my-web-service + type: string + - description: The version of the service associated with the source map. + in: query + name: version + required: true + schema: + example: 1.0.0 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + file: bundle.js + mappings: AAAA,OAAO,CAAC,GAAG + minifiedLineLengths: + - 50 + - 30 + names: + - console + - log + sourceRoot: / + sources: + - src/index.js + - src/utils.js + sourcesContent: + - "console.log('index');" + - "export function util() {}" + version: 3 + id: path/to/sourcemap.js.map + type: sourcemap_files + schema: + $ref: "#/components/schemas/SourcemapFileResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get a JavaScript source map + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps/list: + get: + description: Retrieves a paginated list of source maps matching the specified filter criteria. + operationId: ListSourcemaps + parameters: + - description: The type of source map. Defaults to `js`. + in: query + name: mapkind + schema: + $ref: "#/components/schemas/SourcemapMapKind" + - description: The number of results to return per page. Must be at least 1. + in: query + name: page[size] + schema: + default: 20 + example: 20 + format: int64 + type: integer + - description: The page number to retrieve, starting from 1. + in: query + name: page[number] + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: |- + Filter by service names (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[service] + schema: + example: + - my-web-service + items: + type: string + type: array + style: form + - description: |- + Filter by version values (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[version] + schema: + example: + - 1.0.0 + items: + type: string + type: array + style: form + - description: Filter by variant values (multiple values allowed). Supported for `jvm`. + explode: true + in: query + name: filter[variant] + schema: + items: + type: string + type: array + style: form + - description: Filter by source map ID values (multiple values allowed). Supported for all map kinds. + explode: true + in: query + name: filter[id] + schema: + items: + type: string + type: array + style: form + - description: Filter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`. + explode: true + in: query + name: filter[build_id] + schema: + items: + type: string + type: array + style: form + - description: Filter by UUID values (multiple values allowed). Supported for `ios`. + explode: true + in: query + name: filter[uuid] + schema: + items: + type: string + type: array + style: form + - description: Filter by platform values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[platform] + schema: + items: + type: string + type: array + style: form + - description: Filter by build number values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[build_number] + schema: + items: + type: string + type: array + style: form + - description: Filter by bundle name values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[bundle_name] + schema: + items: + type: string + type: array + style: form + - description: |- + Filter by architecture values (multiple values allowed). Supported + for `flutter`, `elf`, and `ndk`. + explode: true + in: query + name: filter[arch] + schema: + items: + type: string + type: array + style: form + - description: Filter by symbol source values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[symbol_source] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin version values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin_version] + schema: + items: + type: string + type: array + style: form + - description: Filter by filename (single value). Supported for `js`, `elf`, and `ndk`. + in: query + name: filter[filename] + schema: + type: string + - description: Filter by debug ID (single value). Supported for `react`. + in: query + name: filter[debug_id] + schema: + type: string + - description: Filter by GNU build ID (single value). Supported for `elf`. + in: query + name: filter[gnu_build_id] + schema: + type: string + - description: Filter by Go build ID (single value). Supported for `elf`. + in: query + name: filter[go_build_id] + schema: + type: string + - description: Filter by file hash (single value). Supported for `elf`. + in: query + name: filter[file_hash] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + absolute_path: /js/bundle.min.js + created_at: "2024-01-01T00:00:00Z" + mapkind: js + service: my-web-service + size: 1024 + version: 1.0.0 + id: "5" + type: sourcemaps + meta: + page: + has_more_results: false + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/ListSourcemapsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Request Entity Too Large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List source maps + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps/restore: + patch: + description: |- + Restores previously deleted source maps matching the specified filter + criteria. Supports dry-run mode to preview which source maps would be + restored without performing the actual restoration. + operationId: RestoreSourcemaps + parameters: + - description: |- + The type of source map. Valid values are `js`, `jvm`, `ios`, + `react`, `flutter`, `elf`, `ndk`, `il2cpp`. + in: query + name: mapkind + required: true + schema: + $ref: "#/components/schemas/SourcemapMapKind" + - description: |- + When set to `true`, returns the source maps that would be restored + without performing the actual restoration. When set to `false`, + performs the restoration. + in: query + name: dry_run + required: true + schema: + example: true + type: boolean + - description: |- + Filter by service names (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[service] + schema: + example: + - my-web-service + items: + type: string + type: array + style: form + - description: |- + Filter by version values (multiple values allowed, maximum 10). + Required for `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[version] + schema: + example: + - 1.0.0 + items: + type: string + type: array + style: form + - description: Filter by variant values (multiple values allowed). Supported for `jvm`. + explode: true + in: query + name: filter[variant] + schema: + items: + type: string + type: array + style: form + - description: Filter by source map ID values (multiple values allowed). Supported for all map kinds. + explode: true + in: query + name: filter[id] + schema: + items: + type: string + type: array + style: form + - description: Filter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`. + explode: true + in: query + name: filter[build_id] + schema: + items: + type: string + type: array + style: form + - description: Filter by UUID values (multiple values allowed). Supported for `ios`. + explode: true + in: query + name: filter[uuid] + schema: + items: + type: string + type: array + style: form + - description: Filter by platform values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[platform] + schema: + items: + type: string + type: array + style: form + - description: Filter by build number values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[build_number] + schema: + items: + type: string + type: array + style: form + - description: Filter by bundle name values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[bundle_name] + schema: + items: + type: string + type: array + style: form + - description: |- + Filter by architecture values (multiple values allowed). Supported + for `flutter`, `elf`, and `ndk`. + explode: true + in: query + name: filter[arch] + schema: + items: + type: string + type: array + style: form + - description: Filter by symbol source values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[symbol_source] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin version values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin_version] + schema: + items: + type: string + type: array + style: form + - description: Filter by filename (single value). Supported for `js`, `elf`, and `ndk`. + in: query + name: filter[filename] + schema: + type: string + - description: Filter by debug ID (single value). Supported for `react`. + in: query + name: filter[debug_id] + schema: + type: string + - description: Filter by GNU build ID (single value). Supported for `elf`. + in: query + name: filter[gnu_build_id] + schema: + type: string + - description: Filter by Go build ID (single value). Supported for `elf`. + in: query + name: filter[go_build_id] + schema: + type: string + - description: Filter by file hash (single value). Supported for `elf`. + in: query + name: filter[file_hash] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + absolute_path: /js/bundle.min.js + created_at: "2024-01-01T00:00:00Z" + mapkind: js + service: my-web-service + size: 1024 + version: 1.0.0 + id: "5" + type: sourcemaps + schema: + $ref: "#/components/schemas/SourcemapsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Restore source maps + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_delete_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps/service_repository_info: + post: + description: Returns the repository URL and commit SHA associated with a given service and version. + operationId: GetServiceRepositoryInfo + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + service: my-web-service + version: 1.0.0 + type: service_repository_info + schema: + $ref: "#/components/schemas/ServiceRepositoryInfoRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + commit_sha: abc123def456789 + repository_url: https://github.com/my-org/my-repo + status: success + id: my-web-service:1.0.0 + type: service_repository_info + schema: + $ref: "#/components/schemas/ServiceRepositoryInfoResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get service repository information + tags: + - RUM + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/spa/recommendations/{service}: + get: + description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results. + operationId: GetSPARecommendations + parameters: + - description: The recommendation service should not use its metrics cache. + in: query + name: bypass_cache + schema: + type: string + - description: The service name for a spark job. + in: path + name: service + required: true + schema: + type: string + responses: + "200": + content: + application/json: + example: + data: + attributes: + driver: + estimation: + cpu: {max: 1500, p75: 1000, p95: 1200} + ephemeral_storage: 896 + heap: 6144 + memory: 7168 + overhead: 1024 + executor: + estimation: + cpu: {max: 2000, p75: 1200, p95: 1500} + ephemeral_storage: 512 + heap: 3072 + memory: 4096 + overhead: 1024 + id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2" + type: recommendation + schema: + $ref: "#/components/schemas/RecommendationDocument" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - AuthZ: [] + summary: Get SPA Recommendations + tags: + - Spa + x-unstable: |- + **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use. + /api/v2/spa/recommendations/{service}/{shard}: + get: + description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. + operationId: GetSPARecommendationsWithShard + parameters: + - description: The shard tag for a spark job, which differentiates jobs within the same service that have different resource needs + in: path + name: shard + required: true + schema: + type: string + - description: The service name for a spark job + in: path + name: service + required: true + schema: + type: string + - description: The recommendation service should not use its metrics cache. + in: query + name: bypass_cache + schema: + type: string + responses: + "200": + content: + application/json: + example: + data: + attributes: + driver: + estimation: + cpu: {max: 1500, p75: 1000, p95: 1200} + ephemeral_storage: 896 + heap: 6144 + memory: 7168 + overhead: 1024 + executor: + estimation: + cpu: {max: 2000, p75: 1200, p95: 1500} + ephemeral_storage: 512 + heap: 3072 + memory: 4096 + overhead: 1024 + id: "dedupeactivecontexts:adp_dedupeactivecontexts_org2" + type: recommendation + schema: + $ref: "#/components/schemas/RecommendationDocument" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - AuthZ: [] + summary: Get SPA Recommendations with a shard parameter + tags: + - Spa + x-unstable: |- + **Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use. + /api/v2/spans/analytics/aggregate: + post: + description: |- + The API endpoint to aggregate spans into buckets and compute metrics and timeseries. + This endpoint is rate limited to `300` requests per hour. + operationId: AggregateSpans + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + compute: + - aggregation: pc90 + interval: 5m + metric: "@duration" + type: timeseries + filter: + from: now-15m + query: service:web* AND @http.status_code:[200 TO 299] + to: now + group_by: + - facet: host + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + type: aggregate_request + schema: + $ref: "#/components/schemas/SpansAggregateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + by: + host: my-hostname + computes: + c0: 19 + id: abc-123 + type: bucket + meta: + elapsed: 132 + status: done + schema: + $ref: "#/components/schemas/SpansAggregateResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Aggregate spans + tags: ["Spans"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - apm_read + /api/v2/spans/events: + get: + description: |- + List endpoint returns spans that match a span search query. + [Results are paginated][1]. + + Use this endpoint to see your latest spans. + This endpoint is rate limited to `300` requests per hour. + + [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api + operationId: ListSpansGet + parameters: + - description: Search query following spans syntax. + example: "@datacenter:us @role:db" + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested spans. Supports date-time ISO8601, date math, and regular timestamps (milliseconds). + example: "2023-01-02T09:42:36.320Z" + in: query + name: filter[from] + required: false + schema: + type: string + - description: Maximum timestamp for requested spans. Supports date-time ISO8601, date math, and regular timestamps (milliseconds). + example: "2023-01-03T09:42:36.320Z" + in: query + name: filter[to] + required: false + schema: + type: string + - description: Order of spans in results. + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/SpansSort" + - description: |- + List following results with a cursor provided in the previous query. + example: "eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ==" + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of spans in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + service: web-store + id: abc-123 + type: spans + schema: + $ref: "#/components/schemas/SpansListResponse" + description: OK + "400": + $ref: "#/components/responses/SpansBadRequestResponse" + "403": + $ref: "#/components/responses/SpansForbiddenResponse" + "422": + $ref: "#/components/responses/SpansUnprocessableEntityResponse" + "429": + $ref: "#/components/responses/SpansTooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get a list of spans + tags: ["Spans"] + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + /api/v2/spans/events/search: + post: + description: |- + List endpoint returns spans that match a span search query. + [Results are paginated][1]. + + Use this endpoint to build complex spans filtering and search. + This endpoint is rate limited to `300` requests per hour. + + [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api + operationId: ListSpans + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + filter: + from: now-15m + query: service:web* AND @http.status_code:[200 TO 299] + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + type: search_request + schema: + $ref: "#/components/schemas/SpansListRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + env: prod + service: test-service + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: spans + meta: + elapsed: 132 + status: done + schema: + $ref: "#/components/schemas/SpansListResponse" + description: OK + "400": + $ref: "#/components/responses/SpansBadRequestResponse" + "403": + $ref: "#/components/responses/SpansForbiddenResponse" + "422": + $ref: "#/components/responses/SpansUnprocessableEntityResponse" + "429": + $ref: "#/components/responses/SpansTooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Search spans + tags: ["Spans"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.data.attributes.page.cursor + cursorPath: meta.page.after + limitParam: body.data.attributes.page.limit + resultsPath: data + /api/v2/static-analysis-sca/dependencies: + post: + operationId: CreateSCAResult + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: scarequests + schema: + $ref: "#/components/schemas/ScaRequest" + required: true + responses: + "200": + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Post dependencies for analysis + tags: + - Static Analysis + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/static-analysis-sca/dependencies/scan: + post: + operationId: CreateSCAScan + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + commit_hash: 0e9fc8de83eaabecd722e1cd0ed44fb489fe15fc + libraries: + - exclusions: [] + is_dev: false + is_direct: true + package_manager: nuget + purl: pkg:nuget/Newtonsoft.Json@13.0.1 + target_frameworks: + - net8.0 + resource_name: my-org/my-repo + type: mcpscanrequest + schema: + $ref: "#/components/schemas/McpScanRequest" + required: true + responses: + "202": + content: + application/json: + examples: + default: + value: + data: + attributes: + job_id: 0190a3d4-1234-7000-8000-000000000000 + id: 0190a3d4-1234-7000-8000-000000000000 + type: mcpscanrequestresponse + schema: + $ref: "#/components/schemas/McpScanRequestResponse" + description: Accepted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Submit libraries for vulnerability scanning + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis-sca/dependencies/scan/{job_id}: + get: + operationId: GetSCAScan + parameters: + - description: The job identifier returned when the scan was submitted. + in: path + name: job_id + required: true + schema: + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + vulnerabilities: [] + schema: + $ref: "#/components/schemas/ScanResultResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Retrieve a dependency scan result + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis-sca/licenses/list: + get: + operationId: ListSCALicenses + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + licenses: + - display_name: MIT License + identifier: MIT + short_name: MIT + id: 0190a3d4-1234-7000-8000-000000000000 + type: licenserequest + schema: + $ref: "#/components/schemas/LicensesListResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get the list of SPDX licenses + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis-sca/vulnerabilities/resolve-vulnerable-symbols: + post: + operationId: CreateSCAResolveVulnerableSymbols + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: resolve-vulnerable-symbols-request + schema: + $ref: "#/components/schemas/ResolveVulnerableSymbolsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + results: + - purl: "pkg:npm/lodash@4.17.20" + vulnerable_symbols: [] + id: abc-123 + type: resolve-vulnerable-symbols-response + schema: + $ref: "#/components/schemas/ResolveVulnerableSymbolsResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: POST request to resolve vulnerable symbols + tags: + - Static Analysis + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/static-analysis/ai/memory: + get: + description: Get all AI memory violation results for the authenticated organization. + operationId: ListAiMemoryViolationResults + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + line: 10 + message: This is a false positive. + name: src/main.py + repository_id: my-repo + rule: my-ai-ruleset/my-ai-rule + sha: abc123def456789012345678901234567890abcd + type: FP + id: "42" + type: ai_memory_violation_result + schema: + $ref: "#/components/schemas/AiMemoryViolationResultsResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List AI memory violation results + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Add a new AI memory violation result for the authenticated organization. + operationId: CreateAiMemoryViolationResult + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + line: 10 + message: This is a false positive. + name: src/main.py + repository_id: my-repo + rule: my-ai-ruleset/my-ai-rule + sha: abc123def456789012345678901234567890abcd + type: FP + id: violation-abc + type: ai_memory_violation_result + schema: + $ref: "#/components/schemas/AiMemoryViolationResultRequest" + required: true + responses: + "200": + description: Successfully created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Create an AI memory violation result + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/memory/{id}: + delete: + description: Delete an AI memory violation result by its numeric identifier. + operationId: DeleteAiMemoryViolationResult + parameters: + - description: The numeric identifier of the memory violation result. + in: path + name: id + required: true + schema: + example: "42" + type: string + responses: + "200": + description: Successfully deleted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Memory violation result not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Delete an AI memory violation result + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/prompts: + get: + description: Get all AI prompts, including default prompts and custom AI rule prompts for the authenticated organization. + operationId: ListAiPrompts + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: SECURITY + checksum: abc123 + content: Ruleset content + cwe: "79" + description: Ruleset description + directories: [] + execution_mode: auto + file_search_keywords: [] + globs: + - "**/*.py" + is_default: false + is_testing: false + language: PYTHON + result_keywords_exclude: [] + rule_version: "1" + severity: ERROR + short_description: Ruleset short description + id: my-ai-ruleset/my-ai-rule + type: ai_prompt + schema: + $ref: "#/components/schemas/AiPromptsResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List AI prompts + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets: + get: + description: Get all AI custom rulesets for the authenticated organization. + operationId: ListAiCustomRulesets + parameters: + - description: The offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of rulesets to return. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + description: Ruleset description + name: my-ai-ruleset + rules: [] + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: "#/components/schemas/AiCustomRulesetsResponse" + description: Successful response + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List AI custom rulesets + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new AI custom ruleset for the authenticated organization. + operationId: CreateAiCustomRuleset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Ruleset description + name: my-ai-ruleset + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: "#/components/schemas/AiCustomRulesetRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + description: Ruleset description + name: my-ai-ruleset + rules: [] + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: "#/components/schemas/AiCustomRulesetResponse" + description: Successfully created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict - ruleset already exists + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Precondition Failed - validation error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Create an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}: + delete: + description: Delete an AI custom ruleset by name. + operationId: DeleteAiCustomRuleset + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + responses: + "200": + description: Successfully deleted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Delete an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get an AI custom ruleset by name. + operationId: GetAiCustomRuleset + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + description: Ruleset description + name: my-ai-ruleset + rules: [] + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: "#/components/schemas/AiCustomRulesetResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the description of an existing AI custom ruleset. + operationId: UpdateAiCustomRuleset + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Ruleset description + name: my-ai-ruleset + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: "#/components/schemas/AiCustomRulesetUpdateRequest" + required: true + responses: + "200": + description: Successfully updated + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Precondition Failed - validation error or ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Update an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules: + post: + description: Create a new AI custom rule within a ruleset. + operationId: CreateAiCustomRule + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-ai-rule + type: ai_rule + schema: + $ref: "#/components/schemas/AiCustomRuleRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + last_revision: + name: my-ai-rule + id: my-ai-rule + type: ai_rule + schema: + $ref: "#/components/schemas/AiCustomRuleResponse" + description: Successfully created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict - rule already exists + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Precondition Failed - validation error or ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Create an AI custom rule + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}: + delete: + description: Delete an AI custom rule by name within a ruleset. + operationId: DeleteAiCustomRule + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + responses: + "200": + description: Successfully deleted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Delete an AI custom rule + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get an AI custom rule by name within a ruleset. + operationId: GetAiCustomRule + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + last_revision: + name: my-ai-rule + id: my-ai-rule + type: ai_rule + schema: + $ref: "#/components/schemas/AiCustomRuleResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get an AI custom rule + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions: + get: + description: Get all revisions for an AI custom rule. + operationId: ListAiCustomRuleRevisions + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + - description: The offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of revisions to return. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: SECURITY + checksum: abc123 + content: Content + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + cwe: + description: Ruleset description + directories: [] + execution_mode: auto + globs: + - "**/*.py" + is_default: false + is_published: false + is_testing: false + severity: ERROR + short_description: Ruleset short description + version_id: 1 + id: revision-abc-123 + type: ai_rule_revision + schema: + $ref: "#/components/schemas/AiCustomRuleRevisionsResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: List AI custom rule revisions + tags: + - Static Analysis + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new revision for an AI custom rule. + operationId: CreateAiCustomRuleRevision + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: SECURITY + content: Content + description: Ruleset description + directories: [] + execution_mode: auto + globs: + - "**/*.py" + is_published: false + is_testing: false + severity: ERROR + short_description: Ruleset short description + version_id: 1 + id: revision-abc-123 + type: ai_rule_revision + schema: + $ref: "#/components/schemas/AiCustomRuleRevisionRequest" + required: true + responses: + "200": + description: Successfully created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Create an AI custom rule revision + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id}: + get: + description: Get a specific revision of an AI custom rule. + operationId: GetAiCustomRuleRevision + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + - description: The revision identifier. + in: path + name: id + required: true + schema: + example: revision-abc-123 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + category: SECURITY + checksum: abc123 + content: Content + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + cwe: + description: Ruleset description + directories: [] + execution_mode: auto + globs: + - "**/*.py" + is_default: false + is_published: false + is_testing: false + severity: ERROR + short_description: Ruleset short description + version_id: 1 + id: revision-abc-123 + type: ai_rule_revision + schema: + $ref: "#/components/schemas/AiCustomRuleRevisionResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Revision not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + summary: Get an AI custom rule revision + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/codegen/rulesets: + get: + description: Get the rulesets relevant for code generation for the authenticated user. + operationId: ListStaticAnalysisCodegenRulesets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/SastRulesetsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: List codegen rulesets + tags: + - "Security Monitoring" + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets: + get: + description: Get all custom rulesets for the authenticated organization. + operationId: ListCustomRulesets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/CustomRulesetListResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: List Custom Rulesets + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create a new custom ruleset for the authenticated organization. + operationId: CreateCustomRuleset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My custom ruleset. + name: my-custom-ruleset + type: custom_ruleset + schema: + $ref: "#/components/schemas/CustomRulesetRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-custom-ruleset + id: my-custom-ruleset + type: custom_ruleset + schema: + $ref: "#/components/schemas/CustomRulesetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Precondition Failed + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Create Custom Ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}: + delete: + description: Delete a custom ruleset + operationId: DeleteCustomRuleset + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + responses: + "200": + description: Successfully deleted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Custom Ruleset + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + get: + description: Get a custom ruleset by name + operationId: GetCustomRuleset + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + description: Example ruleset description + name: my-ruleset + rules: [] + short_description: Short description + id: my-ruleset + type: custom_ruleset + schema: + $ref: "#/components/schemas/CustomRulesetResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Show Custom Ruleset + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + patch: + description: Update an existing custom ruleset + operationId: UpdateCustomRuleset + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rules: + - created_at: "2026-01-09T13:00:57.473141Z" + created_by: foobarbaz + last_revision: + id: revision-123 + name: my-rule + type: custom_ruleset + schema: + $ref: "#/components/schemas/CustomRulesetRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + description: Example ruleset description + name: my-ruleset + rules: [] + short_description: Short description + id: my-ruleset + type: custom_ruleset + schema: + $ref: "#/components/schemas/CustomRulesetResponse" + description: Successfully updated + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Precondition failed - validation error or ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update Custom Ruleset + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules: + put: + description: Create a new custom rule within a ruleset + operationId: CreateCustomRule + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: custom_rule + schema: + $ref: "#/components/schemas/CustomRuleRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + last_revision: + attributes: {} + id: revision-abc-123 + type: custom_rule_revision + name: my-rule + id: my-rule + type: custom_rule + schema: + $ref: "#/components/schemas/CustomRuleResponse" + description: Successfully created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Conflict - rule already exists + "412": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Precondition failed - validation error or ruleset not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Custom Rule + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}: + delete: + description: Delete a custom rule + operationId: DeleteCustomRule + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + responses: + "200": + description: Successfully deleted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete Custom Rule + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + get: + description: Get a custom rule by name + operationId: GetCustomRule + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + last_revision: + attributes: {} + id: revision-abc-123 + type: custom_rule_revision + name: my-rule + id: my-rule + type: custom_rule + schema: + $ref: "#/components/schemas/CustomRuleResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Show Custom Rule + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions: + get: + description: Get all revisions for a custom rule + operationId: ListCustomRuleRevisions + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + - description: Pagination offset + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Pagination limit + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + arguments: [] + category: SECURITY + checksum: 8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99 + code: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + creation_message: Initial revision + cve: + cwe: + description: Example ruleset description + documentation_url: + is_published: false + is_testing: false + language: PYTHON + severity: ERROR + short_description: Short description + should_use_ai_fix: false + tags: [] + tests: [] + tree_sitter_query: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + id: revision-123 + type: custom_rule_revision + schema: + $ref: "#/components/schemas/CustomRuleRevisionsResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: List Custom Rule Revisions + tags: + - Static Analysis + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + put: + description: Create a new revision for a custom rule + operationId: CreateCustomRuleRevision + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + arguments: + - description: Maximum call depth to analyze + name: max_depth + category: SECURITY + code: "def rule(node): return node.type == 'call'" + creation_message: Initial revision + cve: CVE-2024-1234 + cwe: CWE-79 + description: Detects insecure coding patterns that may lead to vulnerabilities + documentation_url: https://docs.example.com/rules/my-rule + is_published: false + is_testing: false + language: PYTHON + severity: ERROR + short_description: Rule to detect insecure patterns + should_use_ai_fix: false + tags: + - security + - custom + tests: + - annotation_count: 1 + code: "result = insecure_function()" + filename: test.yaml + tree_sitter_query: "(call_expression) @call" + type: custom_rule_revision + schema: + $ref: "#/components/schemas/CustomRuleRevisionRequest" + required: true + responses: + "200": + description: Successfully created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Rule not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create Custom Rule Revision + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/revert: + post: + description: Revert a custom rule to a previous revision + operationId: RevertCustomRuleRevision + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: revert_custom_rule_revision_request + schema: + $ref: "#/components/schemas/RevertCustomRuleRevisionRequest" + required: true + responses: + "200": + description: Successfully reverted + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Revert Custom Rule Revision + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id}: + get: + description: Get a specific revision of a custom rule + operationId: GetCustomRuleRevision + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + - description: The revision ID + in: path + name: id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + arguments: [] + category: SECURITY + checksum: 8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99 + code: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + created_at: "2024-01-01T00:00:00+00:00" + created_by: example-handle + creation_message: Initial revision + cve: + cwe: + description: Example ruleset description + documentation_url: + is_published: false + is_testing: false + language: PYTHON + severity: ERROR + short_description: Short description + should_use_ai_fix: false + tags: [] + tests: [] + tree_sitter_query: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + id: revision-123 + type: custom_rule_revision + schema: + $ref: "#/components/schemas/CustomRuleRevisionResponse" + description: Successful response + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized - custom rules not enabled + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Revision not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Show Custom Rule Revision + tags: + - Static Analysis + x-unstable: "This endpoint is in Preview and may introduce breaking changes.\nIf you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/)." + /api/v2/static-analysis/default-rulesets/{language}: + get: + description: Get the default SAST ruleset names for a given programming language. + operationId: GetStaticAnalysisDefaultRulesets + parameters: + - description: The programming language for which to retrieve the default rulesets. + in: path + name: language + required: true + schema: + example: python + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + rulesets: + - python-best-practices + id: python + type: defaultRulesetsPerLanguage + schema: + $ref: "#/components/schemas/DefaultRulesetsPerLanguageResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get default rulesets for a language + tags: + - "Security Monitoring" + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/rulesets: + post: + description: Get rules for multiple rulesets in batch. + operationId: ListMultipleRulesets + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: get_multiple_rulesets_request + schema: + $ref: "#/components/schemas/GetMultipleRulesetsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + rulesets: [] + id: abc-123 + type: get_multiple_rulesets_response + schema: + $ref: "#/components/schemas/GetMultipleRulesetsResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Ruleset get multiple + tags: + - "Security Monitoring" + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/static-analysis/rulesets/{ruleset_name}: + get: + description: Get a SAST ruleset by name, including all its rules. + operationId: GetStaticAnalysisRuleset + parameters: + - description: The name of the ruleset to retrieve. + in: path + name: ruleset_name + required: true + schema: + example: python-best-practices + type: string + - description: When true, test cases for each rule are included in the response. + in: query + name: include_tests + required: false + schema: + type: boolean + - description: When true, rules that are in testing mode are included in the response. + in: query + name: include_testing_rules + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A collection of Python best practice rules. + name: python-best-practices + rules: [] + short_description: Python best practices. + id: python-best-practices + type: rulesets + schema: + $ref: "#/components/schemas/SastRulesetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get a SAST ruleset + tags: + - "Security Monitoring" + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/secrets/rules: + get: + description: |- + Returns a list of Secrets rules with ID, Pattern, Description, Priority, and SDS ID. + operationId: GetSecretsRules + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: "Detects example secrets" + name: "Example Secret Rule" + pattern: "[A-Za-z0-9]{32}" + priority: "1" + id: abc-123 + type: secret_rule + schema: + $ref: "#/components/schemas/SecretRuleArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Returns a list of Secrets rules + tags: + - "Security Monitoring" + x-unstable: "**Note**: This endpoint may be subject to changes." + /api/v2/static-analysis/static-analysis-server/analyze: + post: + description: Run static analysis rules against a source code file and return violations found. + operationId: CreateStaticAnalysisServerAnalysis + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + code: aW1wb3J0IHN5cw== + file_encoding: utf-8 + filename: test.py + language: python + rules: [] + type: analysis_request + schema: + $ref: "#/components/schemas/AnalysisRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + errors: [] + rule_responses: [] + id: abc-123 + type: server_request + schema: + $ref: "#/components/schemas/AnalysisResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Analyze code + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/static-analysis-server/get-ast: + post: + description: Parse source code into an abstract syntax tree (AST) for the specified language. + operationId: CreateStaticAnalysisAst + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + code: aW1wb3J0IHN5cw== + file_encoding: utf-8 + language: python + type: get_ast_request + schema: + $ref: "#/components/schemas/GetAstRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + ast: {} + type: get_ast_response + schema: + $ref: "#/components/schemas/GetAstResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get AST for source code + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/static-analysis-server/node-types/{language}: + get: + description: Retrieve tree-sitter node type definitions for a given programming language. + operationId: GetStaticAnalysisNodeTypes + parameters: + - description: The programming language for which to retrieve node type definitions. + in: path + name: language + required: true + schema: + example: python + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + node_types: [] + id: python + type: get_node_types_response + schema: + $ref: "#/components/schemas/NodeTypesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get node types for a language + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/static-analysis-server/tree-sitter-wasm/{file}: + get: + description: Download the WebAssembly binary for a tree-sitter grammar by file name. + operationId: GetStaticAnalysisTreeSitterWasm + parameters: + - description: The name of the WASM file to download. + in: path + name: file + required: true + schema: + example: tree-sitter-python.wasm + type: string + responses: + "200": + content: + application/octet-stream: + examples: + default: + value: "" + schema: + format: binary + type: string + description: BLOB with the content of the WASM file + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unauthorized + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get tree-sitter WASM file + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/statuspages: + get: + description: Lists all status pages for the organization. + operationId: ListStatusPages + parameters: + - description: Offset to use as the start of the page. + in: query + name: page[offset] + schema: + default: 0 + format: int64 + type: integer + - description: The number of status pages to return per page. + in: query + name: page[limit] + schema: + default: 50 + format: int64 + type: integer + - description: Filter status pages by exact domain prefix match. Returns at most one result. + in: query + name: filter[domain_prefix] + schema: + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + components: [] + domain_prefix: status-page-us1 + enabled: true + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + id: 00000000-0000-0000-0000-000000000001 + type: status_pages + schema: + $ref: "#/components/schemas/StatusPageArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List status pages + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + post: + description: "Creates a new status page in an unpublished state. Use the dedicated [publish](#publish-status-page) status page endpoint to publish the page after creation." + operationId: CreateStatusPage + parameters: + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + components: + - name: API + position: 0 + type: component + - components: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + name: Web App + position: 1 + type: group + - name: Webhooks + position: 2 + type: component + domain_prefix: status-page-us1 + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + type: status_pages + schema: + $ref: "#/components/schemas/CreateStatusPageRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + domain_prefix: status-page-us1 + enabled: false + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + id: 00000000-0000-0000-0000-000000000002 + type: status_pages + schema: + $ref: "#/components/schemas/StatusPage" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/degradations: + get: + description: Lists all degradations for the organization. Optionally filter by status and page. + operationId: ListDegradations + parameters: + - description: Optional page id filter. + in: query + name: filter[page_id] + schema: + type: string + - description: Offset to use as the start of the page. + in: query + name: page[offset] + schema: + default: 0 + format: int64 + type: integer + - description: The number of degradations to return per page. + in: query + name: page[limit] + schema: + default: 50 + format: int64 + type: integer + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + - description: "Optional degradation status filter. Supported values: investigating, identified, monitoring, resolved." + in: query + name: filter[status] + schema: + type: string + - description: "Sort order. Prefix with '-' for descending. Supported values: created_at, -created_at, modified_at, -modified_at." + in: query + name: sort + schema: + type: string + - description: Optional source ID filter. Returns only degradations whose source matches this ID (for example, an incident ID). + in: query + name: filter[source_id] + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + components_affected: [] + created_at: "2024-01-01T00:00:00+00:00" + description: Our API is experiencing elevated latency. + modified_at: "2024-01-01T00:00:00+00:00" + status: investigating + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000005 + type: degradations + schema: + $ref: "#/components/schemas/DegradationArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List degradations + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + /api/v2/statuspages/maintenances: + get: + description: Lists all maintenances for the organization. Optionally filter by status and page. + operationId: ListMaintenances + parameters: + - description: Optional page id filter. + in: query + name: filter[page_id] + schema: + type: string + - description: Offset to use as the start of the page. + in: query + name: page[offset] + schema: + default: 0 + format: int64 + type: integer + - description: The number of maintenances to return per page. + in: query + name: page[limit] + schema: + default: 50 + format: int64 + type: integer + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + - description: "Optional maintenance status filter. Supported values: scheduled, in_progress, completed." + in: query + name: filter[status] + schema: + type: string + - description: "Sort order. Prefix with '-' for descending. Supported values: created_at, -created_at, start_date, -start_date." + in: query + name: sort + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + completed_date: "2024-01-01T01:00:00+00:00" + completed_description: We have completed maintenance on the API. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API. + scheduled_description: We will be performing maintenance on the API. + start_date: "2024-01-01T00:00:00+00:00" + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000016 + type: maintenances + schema: + $ref: "#/components/schemas/MaintenanceArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List maintenances + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + /api/v2/statuspages/{page_id}: + delete: + description: Deletes a status page by its ID. + operationId: DeleteStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + get: + description: Retrieves a specific status page by its ID. + operationId: GetStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + domain_prefix: status-page-us1 + enabled: true + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + id: 00000000-0000-0000-0000-000000000007 + type: status_pages + schema: + $ref: "#/components/schemas/StatusPage" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: "Updates an existing status page's attributes. To publish and unpublish status pages, use the dedicated [publish](#publish-status-page) and [unpublish](#unpublish-status-page) status page endpoints." + operationId: UpdateStatusPage + parameters: + - description: Whether to delete existing subscribers when updating a status page's type. + in: query + name: delete_subscribers + schema: + default: false + type: boolean + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + domain_prefix: status-page-us1-east + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 East + subscriptions_enabled: false + type: internal + visualization_type: bars_only + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: status_pages + schema: + $ref: "#/components/schemas/PatchStatusPageRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + domain_prefix: status-page-us1-east + enabled: false + name: Status Page US1 East + subscriptions_enabled: false + type: internal + visualization_type: bars_only + id: 00000000-0000-0000-0000-000000000006 + type: status_pages + schema: + $ref: "#/components/schemas/StatusPage" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/{page_id}/components: + get: + description: Lists all components for a status page. + operationId: ListComponents + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Metrics Intake + position: 0 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000008 + type: components + schema: + $ref: "#/components/schemas/StatusPagesComponentArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List components + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + post: + description: Creates a new component. + operationId: CreateComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake + position: 0 + type: component + relationships: + group: + data: + type: components + schema: + $ref: "#/components/schemas/CreateComponentRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake + position: 0 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000009 + type: components + schema: + $ref: "#/components/schemas/StatusPagesComponent" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/{page_id}/components/{component_id}: + delete: + description: Deletes a component by its ID. + operationId: DeleteComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the component. + in: path + name: component_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + get: + description: Retrieves a specific component by its ID. + operationId: GetComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the component. + in: path + name: component_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake + position: 0 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000012 + type: components + schema: + $ref: "#/components/schemas/StatusPagesComponent" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing component's attributes. + operationId: UpdateComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the component. + in: path + name: component_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake Service + position: 4 + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: components + schema: + $ref: "#/components/schemas/PatchComponentRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake Service + position: 4 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000011 + type: components + schema: + $ref: "#/components/schemas/StatusPagesComponent" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/{page_id}/degradation_templates: + get: + description: Lists all degradation templates for a status page. + operationId: ListDegradationTemplates + parameters: + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: "#/components/schemas/DegradationTemplateArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List degradation templates + tags: + - Status Pages + post: + description: Creates a new degradation template. + operationId: CreateDegradationTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + type: degradation_templates + schema: + $ref: "#/components/schemas/CreateDegradationTemplateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: "#/components/schemas/DegradationTemplate" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create degradation template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/degradation_templates/{template_id}: + delete: + description: Deletes a degradation template by its ID (soft delete). + operationId: DeleteDegradationTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete degradation template + tags: + - Status Pages + get: + description: Retrieves a specific degradation template by its ID. + operationId: GetDegradationTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: "#/components/schemas/DegradationTemplate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get degradation template + tags: + - Status Pages + patch: + description: Updates an existing degradation template's attributes. + operationId: UpdateDegradationTemplate + parameters: + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + degradation_title: Elevated API Latency for 40 minutes + name: Elevated API Latency + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: "#/components/schemas/PatchDegradationTemplateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency for 40 minutes + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: "#/components/schemas/DegradationTemplate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update degradation template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/degradations: + post: + description: Creates a new degradation. + operationId: CreateDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: Whether to notify page subscribers of the degradation. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: Our API is experiencing elevated latency. We are investigating the issue. + status: investigating + title: Elevated API Latency + type: degradations + schema: + $ref: "#/components/schemas/CreateDegradationRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 00000000-0000-0000-0000-000000000019 + status: degraded + created_at: "2024-01-01T00:00:00+00:00" + description: Our API is experiencing elevated latency. We are investigating the issue. + modified_at: "2024-01-01T00:00:00+00:00" + status: investigating + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000010 + type: degradations + schema: + $ref: "#/components/schemas/Degradation" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Create degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/degradations/backfill: + post: + description: Creates a backfilled degradation with predefined updates. + operationId: CreateBackfilledDegradation + parameters: + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + title: Past API Outage + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: We detected elevated error rates in the API. + started_at: "2026-04-27T13:37:31Z" + status: investigating + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: The issue has been resolved. + started_at: "2026-04-27T14:37:31Z" + status: resolved + type: degradations + schema: + $ref: "#/components/schemas/CreateBackfilledDegradationRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + created_at: "2026-04-27T13:37:31+00:00" + description: The issue has been resolved. + modified_at: "2026-04-27T14:37:31+00:00" + status: resolved + title: Past API Outage + updates: [] + id: 00000000-0000-0000-0000-000000000010 + type: degradations + schema: + $ref: "#/components/schemas/Degradation" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Create backfilled degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/degradations/{degradation_id}: + delete: + description: Deletes a degradation by its ID. + operationId: DeleteDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Delete degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + get: + description: Retrieves a specific degradation by its ID. + operationId: GetDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 00000000-0000-0000-0000-000000000018 + status: degraded + created_at: "2024-01-01T00:00:00+00:00" + description: Our API is experiencing elevated latency. We are investigating the issue. + modified_at: "2024-01-01T00:00:00+00:00" + status: investigating + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000004 + type: degradations + schema: + $ref: "#/components/schemas/Degradation" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing degradation's attributes. + operationId: UpdateDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: Whether to notify page subscribers of the degradation. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: We've deployed a fix and latency has returned to normal. This issue has been resolved. + status: resolved + title: Elevated API Latency in US1 + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: degradations + schema: + $ref: "#/components/schemas/PatchDegradationRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 00000000-0000-0000-0000-000000000017 + status: operational + created_at: "2024-01-01T00:00:00+00:00" + description: We've deployed a fix and latency has returned to normal. + modified_at: "2024-01-01T00:00:00+00:00" + status: resolved + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000003 + type: degradations + schema: + $ref: "#/components/schemas/Degradation" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Update degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/degradations/{degradation_id}/updates/{update_id}: + delete: + description: Soft-deletes a degradation update. + operationId: SoftDeleteDegradationUpdate + parameters: + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + format: uuid + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Soft delete degradation update + tags: + - Status Pages + patch: + description: Edits a specific degradation update. + operationId: EditDegradationUpdate + parameters: + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, degradation, status_page." + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We've identified the source of the latency increase and are deploying a fix. + status: identified + id: 00000000-0000-0000-0000-000000000000 + type: degradation_updates + schema: + $ref: "#/components/schemas/PatchDegradationUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We've identified the source of the latency increase and are deploying a fix. + status: identified + id: 00000000-0000-0000-0000-000000000000 + type: degradation_updates + schema: + $ref: "#/components/schemas/DegradationUpdate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Edit degradation update + tags: + - Status Pages + /api/v2/statuspages/{page_id}/maintenance_templates: + get: + description: Lists all maintenance templates for a status page. + operationId: ListMaintenanceTemplates + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: "#/components/schemas/MaintenanceTemplateArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List maintenance templates + tags: + - Status Pages + post: + description: Creates a new maintenance template. + operationId: CreateMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + type: maintenance_templates + schema: + $ref: "#/components/schemas/CreateMaintenanceTemplateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: "#/components/schemas/MaintenanceTemplate" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create maintenance template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/maintenance_templates/{template_id}: + delete: + description: Deletes a maintenance template by its ID (soft delete). + operationId: DeleteMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete maintenance template + tags: + - Status Pages + get: + description: Retrieves a specific maintenance template by its ID. + operationId: GetMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: "#/components/schemas/MaintenanceTemplate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get maintenance template + tags: + - Status Pages + patch: + description: Updates an existing maintenance template's attributes. + operationId: UpdateMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + maintenance_title: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: "#/components/schemas/PatchMaintenanceTemplateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: "#/components/schemas/MaintenanceTemplate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update maintenance template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/maintenances: + post: + description: Schedules a new maintenance. + operationId: CreateMaintenance + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: Whether to notify page subscribers of the maintenance. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: "2026-02-18T19:51:13.332360075Z" + completed_description: We have completed maintenance on the API to improve performance. + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + in_progress_description: We are currently performing maintenance on the API to improve performance. + scheduled_description: We will be performing maintenance on the API to improve performance. + start_date: "2026-02-18T19:21:13.332360075Z" + title: API Maintenance + type: maintenances + schema: + $ref: "#/components/schemas/CreateMaintenanceRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: "2024-01-01T01:00:00+00:00" + completed_description: We have completed maintenance on the API to improve performance. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API to improve performance. + scheduled_description: We will be performing maintenance on the API to improve performance. + start_date: "2024-01-01T00:00:00+00:00" + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000015 + type: maintenances + schema: + $ref: "#/components/schemas/Maintenance" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Schedule maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/backfill: + post: + description: Creates a backfilled maintenance with predefined updates. + operationId: CreateBackfilledMaintenance + parameters: + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + title: Past Database Maintenance + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: maintenance + description: Database maintenance is in progress. + started_at: "2026-04-27T13:37:31Z" + status: in_progress + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: Database maintenance has been completed. + started_at: "2026-04-27T14:37:31Z" + status: completed + type: maintenances + schema: + $ref: "#/components/schemas/CreateBackfilledMaintenanceRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: "2026-04-27T14:37:31+00:00" + completed_description: "" + components_affected: [] + in_progress_description: "" + scheduled_description: "" + start_date: "2026-04-27T13:37:31+00:00" + status: completed + title: Past Database Maintenance + id: 00000000-0000-0000-0000-000000000015 + type: maintenances + schema: + $ref: "#/components/schemas/Maintenance" + description: Created + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Create backfilled maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/{maintenance_id}: + get: + description: Retrieves a specific maintenance by its ID. + operationId: GetMaintenance + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: "2024-01-01T01:00:00+00:00" + completed_description: We have completed maintenance on the API. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API. + scheduled_description: We will be performing maintenance on the API. + start_date: "2024-01-01T00:00:00+00:00" + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000013 + type: maintenances + schema: + $ref: "#/components/schemas/Maintenance" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing maintenance's attributes. + operationId: UpdateMaintenance + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: Whether to notify page subscribers of the maintenance. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: "Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page." + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: "2026-02-18T20:01:13.332360075Z" + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + start_date: "2026-02-18T19:21:13.332360075Z" + title: API Maintenance + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: maintenances + schema: + $ref: "#/components/schemas/PatchMaintenanceRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: "2024-01-01T01:00:00+00:00" + completed_description: We have completed maintenance on the API. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + start_date: "2024-01-01T00:00:00+00:00" + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000014 + type: maintenances + schema: + $ref: "#/components/schemas/Maintenance" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Update maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id}: + patch: + description: Edits the message of a specific maintenance update. Editing is allowed regardless of the parent maintenance's status, including completed and canceled maintenances. + operationId: PatchMaintenanceUpdate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We have completed maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + schema: + $ref: "#/components/schemas/PatchMaintenanceUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: [] + created_at: "2026-04-27T13:37:31+00:00" + description: We have completed maintenance on the API to improve performance. + manual_transition: true + modified_at: "2026-04-27T14:37:31+00:00" + started_at: "2026-04-27T13:37:31+00:00" + status: completed + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + schema: + $ref: "#/components/schemas/MaintenanceUpdate" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Edit maintenance update + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/publish: + post: + description: Publishes a status page. For pages of type `public`, makes the status page available on the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, makes the status page available under the `status-pages/$domain_prefix/view` route within the Datadog organization and requires the `status_pages_internal_page_publish` permission. + operationId: PublishStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_internal_page_publish + - status_pages_public_page_publish + summary: Publish status page + tags: + - Status Pages + x-permission: + operator: OR + permissions: + - status_pages_public_page_publish + - status_pages_internal_page_publish + /api/v2/statuspages/{page_id}/unpublish: + post: + description: Unpublishes a status page. For pages of type `public`, removes the status page from the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, removes the `status-pages/$domain_prefix/view` route from the Datadog organization and requires the `status_pages_internal_page_publish` permission. + operationId: UnpublishStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_internal_page_publish + - status_pages_public_page_publish + summary: Unpublish status page + tags: + - Status Pages + x-permission: + operator: OR + permissions: + - status_pages_public_page_publish + - status_pages_internal_page_publish + /api/v2/stegadography/get-widgets: + post: + description: |- + Extracts watermarks from a PNG image and returns the cached widget data + associated with each watermark found. The image must be uploaded as a + `multipart/form-data` request with the file in the `image` field. + Only widgets belonging to the authenticated organization are returned. + operationId: GetStegadographyWidgets + requestBody: + content: + multipart/form-data: + examples: + default: + value: + image: "screenshot.png" + schema: + $ref: "#/components/schemas/StegadographyGetWidgetsRequest" + description: PNG image to extract watermarks from. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + locationx: 100 + locationy: 200 + rawData: '{"widgetType":"timeseries","requests":[]}' + watermark: "0123456789abcdef" + id: "abc123:0123456789abcdef" + type: widget + schema: + $ref: "#/components/schemas/StegadographyGetWidgetsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "415": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Unsupported Media Type + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get widgets from an image + tags: + - Stegadography + /api/v2/synthetics/api-multistep/subtests/{public_id}: + get: + description: |- + Get the list of API tests that can be added as subtests to a given API multistep test. + The current test is excluded from the list since a test cannot be a subtest of itself. + operationId: GetApiMultistepSubtests + parameters: + - description: The public ID of the API multistep test. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/SyntheticsApiMultistepSubtestsResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get available subtests for a multistep test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/api-multistep/subtests/{public_id}/parents: + get: + description: |- + Get the list of API multistep tests that include a given subtest, + along with their monitor status. + operationId: GetApiMultistepSubtestParents + parameters: + - description: The public ID of the subtest. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/SyntheticsApiMultistepParentTestsResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get parent tests for a subtest + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/downtimes: + get: + description: Get a list of all Synthetics downtimes for your organization. + operationId: ListSyntheticsDowntimes + parameters: + - description: Comma-separated list of Synthetics test public IDs to filter downtimes by. + in: query + name: filter[test_ids] + required: false + schema: + example: abc-def-123,xyz-uvw-456 + type: string + - description: If set to `true`, return only downtimes that are currently active. + in: query + name: filter[active] + required: false + schema: + example: "true" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List Synthetics downtimes + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_read + post: + description: Create a new Synthetics downtime. + operationId: CreateSyntheticsDowntime + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + isEnabled: true + name: Weekly maintenance + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeResponse" + description: Created + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + - synthetics_default_settings_write + /api/v2/synthetics/downtimes/{downtime_id}: + delete: + description: Delete a Synthetics downtime by its ID. + operationId: DeleteSyntheticsDowntime + parameters: + - description: The ID of the downtime to delete. + in: path + name: downtime_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + - synthetics_default_settings_write + get: + description: Get a Synthetics downtime by its ID. + operationId: GetSyntheticsDowntime + parameters: + - description: The ID of the downtime to retrieve. + in: path + name: downtime_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_read + put: + description: Update a Synthetics downtime by its ID. + operationId: UpdateSyntheticsDowntime + parameters: + - description: The ID of the downtime to update. + in: path + name: downtime_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + isEnabled: true + name: Weekly maintenance + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + - synthetics_default_settings_write + /api/v2/synthetics/downtimes/{downtime_id}/tests/{test_id}: + delete: + description: Disassociate a Synthetics test from a downtime. + operationId: RemoveTestFromSyntheticsDowntime + parameters: + - description: The ID of the downtime. + in: path + name: downtime_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + - description: The public ID of the Synthetics test to disassociate from the downtime. + in: path + name: test_id + required: true + schema: + example: abc-def-123 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Remove a test from a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + put: + description: Associate a Synthetics test with a downtime. + operationId: AddTestToSyntheticsDowntime + parameters: + - description: The ID of the downtime. + in: path + name: downtime_id + required: true + schema: + example: "00000000-0000-0000-0000-000000000001" + type: string + - description: The public ID of the Synthetics test to associate with the downtime. + in: path + name: test_id + required: true + schema: + example: abc-def-123 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-15T10:30:00Z" + createdBy: "00000000-0000-0000-0000-000000000003" + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: "00000000-0000-0000-0000-000000000002" + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: "2024-01-15T10:30:00Z" + updatedBy: "00000000-0000-0000-0000-000000000003" + updatedByName: Jane Doe + id: "00000000-0000-0000-0000-000000000001" + type: downtime + schema: + $ref: "#/components/schemas/SyntheticsDowntimeResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Add a test to a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + /api/v2/synthetics/settings/on_demand_concurrency_cap: + get: + description: Get the on-demand concurrency cap. + operationId: GetOnDemandConcurrencyCap + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + on_demand_concurrency_cap: 20 + type: on_demand_concurrency_cap + schema: + $ref: "#/components/schemas/OnDemandConcurrencyCapResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get the on-demand concurrency cap + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - billing_read + post: + description: Save new value for on-demand concurrency cap. + operationId: SetOnDemandConcurrencyCap + requestBody: + content: + application/json: + examples: + default: + value: + on_demand_concurrency_cap: 20 + schema: + $ref: "#/components/schemas/OnDemandConcurrencyCapAttributes" + description: . + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + on_demand_concurrency_cap: 20 + type: on_demand_concurrency_cap + schema: + $ref: "#/components/schemas/OnDemandConcurrencyCapResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Save new value for on-demand concurrency cap + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - billing_edit + /api/v2/synthetics/suites: + post: + operationId: CreateSyntheticsSuite + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: "" + type: suite + type: suites + schema: + $ref: "#/components/schemas/SuiteCreateEditRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: "" + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: "#/components/schemas/SyntheticsSuiteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a test suite + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/suites/bulk-delete: + post: + operationId: DeleteSyntheticsSuites + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + public_ids: + - "" + type: delete_suites_request + schema: + $ref: "#/components/schemas/DeletedSuitesRequestDeleteRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + deleted_at: "2024-01-01T00:00:00+00:00" + public_id: 123-abc-456 + id: 123-abc-456 + type: suites + schema: + $ref: "#/components/schemas/DeletedSuitesResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Bulk delete suites + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v2/synthetics/suites/search: + get: + description: Search for test suites. + operationId: SearchSuites + parameters: + - description: The search query. + in: query + name: query + required: false + schema: + type: string + - description: The sort order for the results (e.g., `name,asc` or `name,desc`). + in: query + name: sort + required: false + schema: + default: name,asc + type: string + - description: If true, return only facets instead of full test details. + in: query + name: facets_only + required: false + schema: + default: false + type: boolean + - description: The offset from which to start returning results. + in: query + name: start + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of results to return. + in: query + name: count + required: false + schema: + default: 50 + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + suites: + - monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: [] + type: suite + total: 1 + id: abc-123 + type: suites_search + schema: + $ref: "#/components/schemas/SyntheticsSuiteSearchResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Search test suites + tags: + - Synthetics + "x-permission": + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/suites/{public_id}: + get: + operationId: GetSyntheticsSuite + parameters: + - description: The public ID of the suite to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: "" + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: "#/components/schemas/SyntheticsSuiteResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a suite + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + operationId: EditSyntheticsSuite + parameters: + - description: The public ID of the suite to edit. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: "" + type: suite + type: suites + schema: + $ref: "#/components/schemas/SuiteCreateEditRequest" + description: New suite details to be saved. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: "" + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: "#/components/schemas/SyntheticsSuiteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a test suite + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v2/synthetics/suites/{public_id}/jsonpatch: + patch: + description: |- + Patch a Synthetic test suite using JSON Patch (RFC 6902). + Use partial updates to modify only specific fields of a test suite. + + Common operations include: + - Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}` + - Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}` + - Remove fields: `{"op": "remove", "path": "/message"}` + operationId: PatchTestSuite + parameters: + - description: The public ID of the Synthetic test suite to patch. + in: path + name: public_id + required: true + schema: + example: 123-abc-456 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + json_patch: + - op: add + path: /name + type: suites_json_patch + schema: + $ref: "#/components/schemas/SuiteJsonPatchRequest" + description: JSON Patch document with operations to apply. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: "" + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: "#/components/schemas/SyntheticsSuiteResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Patch a test suite + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/browser/{public_id}/results: + get: + description: Get the latest result summaries for a given Synthetic browser test. + operationId: ListSyntheticsBrowserTestLatestResults + parameters: + - description: The public ID of the Synthetic browser test for which to search results. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Filter results by status. + in: query + name: status + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + - description: Filter results by run type. + in: query + name: runType + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + - description: Device IDs for which to query results. + in: query + name: device_id + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + device: + id: chrome.laptop_large + name: "Chrome - Laptop Large" + type: browser + finished_at: 1679328005200 + location: + id: aws:eu-west-1 + name: "Ireland (AWS)" + run_type: scheduled + started_at: 1679328000000 + status: passed + test_type: browser + test_version: 2 + id: "7291038456723891045" + relationships: + test: + data: + id: xyz-abc-789 + type: test + type: result_summary + schema: + $ref: "#/components/schemas/SyntheticsTestLatestResultsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test's latest results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/browser/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic browser test. + operationId: GetSyntheticsBrowserTestResult + parameters: + - description: The public ID of the Synthetic browser test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + - description: The event ID used to look up the result in the event store. + in: query + name: event_id + required: false + schema: + type: string + - description: Timestamp in seconds to look up the result. + in: query + name: timestamp + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + device: + id: chrome.laptop_large + name: "Chrome - Laptop Large" + type: browser + location: + id: aws:eu-west-1 + name: "Ireland (AWS)" + result: + duration: 5200.0 + finished_at: 1679328005200 + id: "7291038456723891045" + started_at: 1679328000000 + status: passed + test_type: browser + test_version: 2 + id: "7291038456723891045" + relationships: + test: + data: + id: xyz-abc-789 + type: test + type: result + schema: + $ref: "#/components/schemas/SyntheticsTestResultResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/bulk-delete: + post: + operationId: DeleteSyntheticsTests + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + public_ids: + - abc-def-123 + - xyz-uvw-456 + type: delete_tests_request + schema: + $ref: "#/components/schemas/DeletedTestsRequestDeleteRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: abc-def-123 + type: delete_tests + schema: + $ref: "#/components/schemas/DeletedTestsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Bulk delete tests + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v2/synthetics/tests/fast/{id}: + get: + operationId: GetSyntheticsFastTestResult + parameters: + - description: The UUID of the fast test to retrieve the result for. + in: path + name: id + required: true + schema: + example: abc12345-1234-1234-1234-abc123456789 + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + result: + duration: 150.5 + finished_at: 1679328001000 + id: abc12345-1234-1234-1234-abc123456789 + resolved_ip: "1.2.3.4" + run_type: fast + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 1 + id: abc12345-1234-1234-1234-abc123456789 + type: result + schema: + $ref: "#/components/schemas/SyntheticsFastTestResult" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a fast test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/network: + post: + operationId: CreateSyntheticsNetworkTest + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + assertions: + - operator: lessThan + property: avg + target: 500 + type: latency + request: + e2e_queries: 50 + host: "" + max_ttl: 30 + port: 443 + tcp_method: prefer_sack + traceroute_queries: 3 + locations: + - aws:us-east-1 + - agent:my-agent-name + message: Network Path test notification + monitor_id: 12345678 + name: Example Network Path test + options: + monitor_options: + notification_preset_name: show_all + scheduling: + timeframes: + - day: 1 + from: 07:00 + to: "16:00" + - day: 3 + from: 07:00 + to: "16:00" + timezone: America/New_York + public_id: abc-def-123 + status: live + subtype: tcp + tags: + - env:production + type: network + type: network + schema: + $ref: "#/components/schemas/SyntheticsNetworkTestEditRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: {} + locations: + - aws:us-east-1 + message: Network Path test notification + name: Example Network Path test + options: {} + status: live + type: network + id: abc-def-123 + type: network_test + schema: + $ref: "#/components/schemas/SyntheticsNetworkTestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a Network Path test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/network/{public_id}: + get: + operationId: GetSyntheticsNetworkTest + parameters: + - description: The public ID of the Network Path test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: {} + locations: + - aws:us-east-1 + message: Network Path test notification + name: Example Network Path test + options: {} + status: live + type: network + id: abc-def-123 + type: network_test + schema: + $ref: "#/components/schemas/SyntheticsNetworkTestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a Network Path test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + operationId: UpdateSyntheticsNetworkTest + parameters: + - description: The public ID of the Network Path test to edit. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + assertions: + - operator: lessThan + property: avg + target: 500 + type: latency + request: + e2e_queries: 50 + host: "" + max_ttl: 30 + port: 443 + tcp_method: prefer_sack + traceroute_queries: 3 + locations: + - aws:us-east-1 + - agent:my-agent-name + message: Network Path test notification + monitor_id: 12345678 + name: Example Network Path test + options: + monitor_options: + notification_preset_name: show_all + scheduling: + timeframes: + - day: 1 + from: 07:00 + to: "16:00" + - day: 3 + from: 07:00 + to: "16:00" + timezone: America/New_York + public_id: abc-def-123 + status: live + subtype: tcp + tags: + - env:production + type: network + type: network + schema: + $ref: "#/components/schemas/SyntheticsNetworkTestEditRequest" + description: New Network Path test details to be saved. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + config: {} + locations: + - aws:us-east-1 + message: Network Path test notification + name: Example Network Path test + options: {} + status: live + type: network + id: abc-def-123 + type: network_test + schema: + $ref: "#/components/schemas/SyntheticsNetworkTestResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a Network Path test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/poll_results: + get: + description: |- + Poll for test results given a list of result IDs. This is typically used after + triggering tests with CI/CD to retrieve results once they are available. + operationId: PollSyntheticsTestResults + parameters: + - description: A JSON-encoded array of result IDs to poll for. + example: '["id1","id2","id3"]' + in: query + name: result_ids + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + result: + duration: 150.5 + finished_at: 1679328001000 + id: "5158904793181869365" + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: "5158904793181869365" + relationships: + test: + data: + id: abc-def-123 + type: test + type: result + schema: + $ref: "#/components/schemas/SyntheticsPollTestResultsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Poll for test results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/files/download: + post: + description: |- + Get a presigned URL to download a file attached to a Synthetic test. + The returned URL is temporary and expires after a short period. + operationId: GetTestFileDownloadUrl + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + bucketKey: api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + schema: + $ref: "#/components/schemas/SyntheticsTestFileDownloadRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + presignedUrl: https://example.com/download + schema: + $ref: "#/components/schemas/SyntheticsTestFileDownloadResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a presigned URL for downloading a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/files/multipart-presigned-urls: + post: + description: |- + Get presigned URLs for uploading a file to a Synthetic test using multipart upload. + Returns the presigned URLs for each part along with the bucket key that references the file. + operationId: GetTestFileMultipartPresignedUrls + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + bucketKeyPrefix: api-upload-file + parts: + - md5: 1B2M2Y8AsgTpgAmY7PhCfg== + partNumber: 1 + schema: + $ref: "#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + bucketKey: api-upload-file/abc-def-123/file.json + presignedUrls: [] + schema: + $ref: "#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Get presigned URLs for uploading a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/{public_id}/files/multipart-upload-abort: + post: + description: |- + Abort an in-progress multipart file upload for a Synthetic test. This cancels the upload + and releases any storage used by already-uploaded parts. + operationId: AbortTestFileMultipartUpload + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + key: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + uploadId: upload-id-abc123 + schema: + $ref: "#/components/schemas/SyntheticsTestFileAbortMultipartUploadRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Abort a multipart upload of a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/{public_id}/files/multipart-upload-complete: + post: + description: |- + Complete a multipart file upload for a Synthetic test. Call this endpoint after all parts + have been uploaded using the presigned URLs obtained from the multipart presigned URLs endpoint. + operationId: CompleteTestFileMultipartUpload + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + key: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + parts: + - ETag: '"d41d8cd98f00b204e9800998ecf8427e"' + PartNumber: 1 + uploadId: upload-id-abc123 + schema: + $ref: "#/components/schemas/SyntheticsTestFileCompleteMultipartUploadRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Complete a multipart upload of a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/{public_id}/parent-suites: + get: + description: Get the list of parent suites and their status for a given Synthetic test. + operationId: GetTestParentSuites + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/SyntheticsTestParentSuitesResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get parent suites for a test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/results: + get: + description: Get the latest result summaries for a given Synthetic test. + operationId: ListSyntheticsTestLatestResults + parameters: + - description: The public ID of the Synthetic test for which to search results. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Filter results by status. + in: query + name: status + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultStatus" + - description: Filter results by run type. + in: query + name: runType + required: false + schema: + $ref: "#/components/schemas/SyntheticsTestResultRunType" + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + - description: Device IDs for which to query results. + in: query + name: device_id + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + finished_at: 1679328001000 + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + run_type: scheduled + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: "5158904793181869365" + relationships: + test: + data: + id: abc-def-123 + type: test + type: result_summary + schema: + $ref: "#/components/schemas/SyntheticsTestLatestResultsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test's latest results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic test. + operationId: GetSyntheticsTestResult + parameters: + - description: The public ID of the Synthetic test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + - description: The event ID used to look up the result in the event store. + in: query + name: event_id + required: false + schema: + type: string + - description: Timestamp in seconds to look up the result. + in: query + name: timestamp + required: false + schema: + format: int64 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + location: + id: aws:us-east-1 + name: "N. Virginia (AWS)" + result: + duration: 150.5 + finished_at: 1679328001000 + id: "5158904793181869365" + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: "5158904793181869365" + relationships: + test: + data: + id: abc-def-123 + type: test + type: result + schema: + $ref: "#/components/schemas/SyntheticsTestResultResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/version_history: + get: + description: Get the paginated version history for a Synthetic test. + operationId: ListSyntheticsTestVersions + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + type: string + - description: The version number of the last item from the previous page. Omit to get the first page. + in: query + name: last_version_number + required: false + schema: + format: int64 + type: integer + - description: Maximum number of version records to return per page. + in: query + name: limit + required: false + schema: + format: int64 + maximum: 50 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/SyntheticsTestVersionHistoryResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get version history of a test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/version_history/{version_number}: + get: + description: Get a specific version of a Synthetic test by its version number. + operationId: GetSyntheticsTestVersion + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + type: string + - description: The version number to retrieve. + in: path + name: version_number + required: true + schema: + format: int64 + type: integer + - description: If `true`, include change metadata in the response. + in: query + name: include_change_metadata + required: false + schema: + type: boolean + - description: |- + If `true`, only check whether the version exists without returning its full payload. + Returns an empty object if the version exists, or 404 if not. + in: query + name: only_check_existence + required: false + schema: + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + public_id: abc-def-123 + version_number: 1 + schema: + $ref: "#/components/schemas/SyntheticsTestVersionResponse" + description: OK + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a specific version of a test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/variables/{variable_id}/jsonpatch: + patch: + description: |- + Patch a global variable using JSON Patch (RFC 6902). + This endpoint allows partial updates to a global variable by specifying only the fields to modify. + + Common operations include: + - Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}` + - Update nested values: `{"op": "replace", "path": "/value/value", "value": "new_value"}` + - Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}` + - Remove fields: `{"op": "remove", "path": "/description"}` + operationId: PatchGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + json_patch: + - op: add + path: /name + type: global_variables_json_patch + schema: + $ref: "#/components/schemas/GlobalVariableJsonPatchRequest" + description: JSON Patch document with operations to apply. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Example description + name: MY_VARIABLE + tags: + - "team:front" + value: + secure: false + value: example-value + id: abc-123 + type: global_variables + schema: + $ref: "#/components/schemas/GlobalVariableResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Patch a global variable + tags: + - Synthetics + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - synthetics_global_variable_write + /api/v2/tags/enrichment: + get: + description: List all tag pipeline rulesets - Retrieve a list of all tag pipeline rulesets for the organization + operationId: ListTagPipelinesRulesets + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: + enabled: true + last_modified_user_uuid: "" + modified: + name: Production Cost Allocation Rules + position: 0 + rules: + - enabled: true + mapping: + metadata: + name: AWS Production Account Tagging + query: + addition: + key: environment + value: production + case_insensitivity: false + if_tag_exists: do_not_apply + query: billingcurrency:"USD" AND account_name:"prod-account" + reference_table: + version: 2 + id: 00000000-0000-0000-0000-000000000001 + type: ruleset + schema: + $ref: "#/components/schemas/RulesetRespArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List tag pipeline rulesets + tags: + - Cloud Cost Management + post: + description: Create a new tag pipeline ruleset with the specified rules and configuration + operationId: CreateTagPipelinesRuleset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + rules: + - enabled: true + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + id: New Ruleset + type: create_ruleset + schema: + $ref: "#/components/schemas/CreateRulesetRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: + enabled: true + last_modified_user_uuid: "" + modified: + name: Example Ruleset + position: 0 + rules: + - enabled: true + mapping: + metadata: + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: + version: 1 + id: 00000000-0000-0000-0000-000000000002 + type: ruleset + schema: + $ref: "#/components/schemas/RulesetResp" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create tag pipeline ruleset + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/reorder: + post: + description: Reorder tag pipeline rulesets - Change the execution order of tag pipeline rulesets + operationId: ReorderTagPipelinesRulesets + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset + - id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset + - id: f1e2d3c4-b5a6-9780-1234-567890abcdef + type: ruleset + schema: + $ref: "#/components/schemas/ReorderRulesetResourceArray" + required: true + responses: + "204": + description: Successfully reordered rulesets + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Reorder tag pipeline rulesets + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/status: + get: + description: List the processing status of all tag pipeline rulesets. Returns only the ID and processing status for each ruleset. + operationId: ListTagPipelinesRulesetsStatus + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + processing_status: processing + id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset_status + - attributes: + processing_status: done + id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset_status + schema: + $ref: "#/components/schemas/RulesetStatusRespArray" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List tag pipeline ruleset statuses + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/validate-query: + post: + description: Validate a tag pipeline query - Validate the syntax and structure of a tag pipeline query + operationId: ValidateQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + Query: example:query AND test:true + type: validate_query + schema: + $ref: "#/components/schemas/RulesValidateQueryRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + Canonical: canonical query representation + type: validate_response + schema: + $ref: "#/components/schemas/RulesValidateQueryResponse" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Validate query + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/{ruleset_id}: + delete: + description: Delete a tag pipeline ruleset - Delete an existing tag pipeline ruleset by its ID + operationId: DeleteTagPipelinesRuleset + parameters: + - description: The unique identifier of the ruleset + in: path + name: ruleset_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete tag pipeline ruleset + tags: + - Cloud Cost Management + get: + description: Get a specific tag pipeline ruleset - Retrieve a specific tag pipeline ruleset by its ID + operationId: GetTagPipelinesRuleset + parameters: + - description: The unique identifier of the ruleset + in: path + name: ruleset_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created: + enabled: true + last_modified_user_uuid: "" + modified: + name: Example Ruleset + position: 0 + rules: + - enabled: true + mapping: + metadata: + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: + version: 1 + id: 00000000-0000-0000-0000-000000000004 + type: ruleset + schema: + $ref: "#/components/schemas/RulesetResp" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get a tag pipeline ruleset + tags: + - Cloud Cost Management + patch: + description: Update a tag pipeline ruleset - Update an existing tag pipeline ruleset with new rules and configuration + operationId: UpdateTagPipelinesRuleset + parameters: + - description: The unique identifier of the ruleset + in: path + name: ruleset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + last_version: 1 + name: Updated Ruleset + rules: + - enabled: true + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + - enabled: true + mapping: + destination_key: team_owner + if_tag_exists: do_not_apply + source_keys: + - account_name + - account_id + name: Account Name Mapping + query: + - enabled: true + name: New table rule with new UI + query: + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + type: update_ruleset + schema: + $ref: "#/components/schemas/UpdateRulesetRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Example Ruleset + position: 0 + rules: + - enabled: true + name: Example Rule + query: + addition: + key: env + value: prod + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" + version: 1 + id: 00000000-0000-0000-0000-000000000003 + type: ruleset + schema: + $ref: "#/components/schemas/RulesetResp" + description: OK + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update tag pipeline ruleset + tags: + - Cloud Cost Management + /api/v2/team: + get: + description: |- + Get all teams. + Can be used to search for teams using the `filter[keyword]` and `filter[me]` query parameters. + operationId: ListTeams + parameters: + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/PageSize" + - description: Specifies the order of the returned teams + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/ListTeamsSort" + - description: |- + Included related resources optionally requested. Allowed enum values: `team_links, user_team_permissions` + in: query + name: include + required: false + schema: + items: + $ref: "#/components/schemas/ListTeamsInclude" + type: array + - description: Search query. Can be team name, team handle, or email of team member + in: query + name: filter[keyword] + required: false + schema: + type: string + - description: When true, only returns teams the current user belongs to + in: query + name: filter[me] + required: false + schema: + type: boolean + - description: List of fields that need to be fetched. + explode: false + in: query + name: fields[team] + required: false + schema: + items: + $ref: "#/components/schemas/TeamsField" + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000001 + type: team + meta: + pagination: + offset: 0 + total: 1 + schema: + $ref: "#/components/schemas/TeamsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get all teams + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - teams_read + post: + description: |- + Create a new team. + User IDs passed through the `users` relationship field are added to the team. + operationId: CreateTeam + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + avatar: 🥑 + handle: example-team + name: Example Team + relationships: + users: + data: [] + type: team + schema: + $ref: "#/components/schemas/TeamCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000002 + type: team + schema: + $ref: "#/components/schemas/TeamResponse" + description: CREATED + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Create a team + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: AND + permissions: + - teams_read + - teams_manage + /api/v2/team-hierarchy-links: + get: + description: List all team hierarchy links that match the provided filters. + operationId: ListTeamHierarchyLinks + parameters: + - $ref: "#/components/parameters/PageNumber" + - $ref: "#/components/parameters/PageSize" + - description: Filter by parent team ID + in: query + name: filter[parent_team] + required: false + schema: + type: string + - description: Filter by sub team ID + in: query + name: filter[sub_team] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + provisioned_by: system + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: team_hierarchy_links + schema: + $ref: "#/components/schemas/TeamHierarchyLinksResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team hierarchy links + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - teams_read + post: + description: Create a new team hierarchy link between a parent team and a sub team. + operationId: AddTeamHierarchyLink + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + parent_team: + data: + id: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: team + sub_team: + data: + id: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: team + type: team_hierarchy_links + schema: + $ref: "#/components/schemas/TeamHierarchyLinkCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + provisioned_by: system + id: 00000000-0000-0000-0000-000000000001 + type: team_hierarchy_links + schema: + $ref: "#/components/schemas/TeamHierarchyLinkResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Conflict + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Create a team hierarchy link + tags: + - Teams + "x-permission": + operator: AND + permissions: + - teams_read + - teams_manage + /api/v2/team-hierarchy-links/{link_id}: + delete: + description: Remove a team hierarchy link by the given link_id. + operationId: RemoveTeamHierarchyLink + parameters: + - description: The team hierarchy link's identifier + in: path + name: link_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Remove a team hierarchy link + tags: + - Teams + "x-permission": + operator: AND + permissions: + - teams_read + - teams_manage + get: + description: Get a single team hierarchy link for the given link_id. + operationId: GetTeamHierarchyLink + parameters: + - description: The team hierarchy link's identifier + in: path + name: link_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + provisioned_by: system + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: team_hierarchy_links + schema: + $ref: "#/components/schemas/TeamHierarchyLinkResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get a team hierarchy link + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/connections: + delete: + description: Delete multiple team connections. + operationId: DeleteTeamConnections + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 12345678-1234-5678-9abc-123456789012 + type: team_connection + schema: + $ref: "#/components/schemas/TeamConnectionDeleteRequest" + required: true + responses: + "204": + description: No Content + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Delete team connections + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + get: + description: Returns all team connections. + operationId: ListTeamConnections + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: Filter team connections by external source systems. + explode: false + in: query + name: filter[sources] + required: false + schema: + items: + example: "github" + type: string + type: array + style: form + - description: Filter team connections by Datadog team IDs. + explode: false + in: query + name: filter[team_ids] + required: false + schema: + items: + example: "12345678-1234-5678-9abc-123456789012" + type: string + type: array + style: form + - description: Filter team connections by connected team IDs from external systems. + explode: false + in: query + name: filter[connected_team_ids] + required: false + schema: + items: + example: "@MyGitHubAccount/my-team-name" + type: string + type: array + style: form + - description: Filter team connections by connection IDs. + explode: false + in: query + name: filter[connection_ids] + required: false + schema: + items: + example: "12345678-1234-5678-9abc-123456789012" + type: string + type: array + style: form + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + managed_by: github_sync + source: github + id: 00000000-0000-0000-0000-000000000001 + type: team_connection + schema: + $ref: "#/components/schemas/TeamConnectionsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: List team connections + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - teams_read + post: + description: Create multiple team connections. + operationId: CreateTeamConnections + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + managed_by: github_sync + source: github + relationships: + connected_team: + data: + id: "@GitHubOrg/team-handle" + team: + data: + id: 87654321-4321-8765-dcba-210987654321 + type: team_connection + schema: + $ref: "#/components/schemas/TeamConnectionCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + managed_by: github_sync + source: github + id: 00000000-0000-0000-0000-000000000002 + type: team_connection + schema: + $ref: "#/components/schemas/TeamConnectionsResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + $ref: "#/components/responses/ConflictResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Create team connections + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/sync: + get: + description: |- + Get all team synchronization configurations. + Returns a list of configurations used for linking or provisioning teams with external sources like GitHub. + operationId: GetTeamSync + parameters: + - description: Filter by the external source platform for team synchronization + in: query + name: filter[source] + required: true + schema: + $ref: "#/components/schemas/TeamSyncAttributesSource" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + frequency: once + source: github + sync_membership: false + type: link + type: team_sync_bulk + schema: + $ref: "#/components/schemas/TeamSyncResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team sync configurations + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + post: + description: |- + This endpoint configures synchronization between your existing Datadog teams and GitHub teams by matching their names. + It evaluates all current Datadog teams and compares them against teams in the GitHub organization + connected to your Datadog account, based on Datadog Team handle and GitHub Team slug + (lowercased and kebab-cased). + + This operation is read-only on the GitHub side, no teams will be modified or created. + + Optionally, provide `selection_state` to limit synchronization + to specific teams or organizations and their subtrees, instead + of syncing all teams. + + [A GitHub organization must be connected to your Datadog account](https://docs.datadoghq.com/integrations/github/), + and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug + using a normalized exact match; case is ignored and spaces are removed. No modifications are made + to teams in GitHub. This only creates new teams in Datadog when type is set to `provision`. + operationId: SyncTeams + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + source: github + type: link + type: team_sync_bulk + schema: + $ref: "#/components/schemas/TeamSyncRequest" + required: true + responses: + "200": + description: OK + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + "500": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Internal Server Error - Unexpected error during linking. + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_manage + summary: Link Teams with GitHub Teams + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - teams_manage + /api/v2/team/{super_team_id}/member_teams: + get: + deprecated: true + description: |- + Get all member teams. + + **Note**: This API is deprecated. For team hierarchy relationships (parent-child + teams), use the team hierarchy links API: `GET /api/v2/team-hierarchy-links`. + operationId: ListMemberTeams + parameters: + - description: None + in: path + name: super_team_id + required: true + schema: + type: string + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: List of fields that need to be fetched. + explode: false + in: query + name: fields[team] + required: false + schema: + items: + $ref: "#/components/schemas/TeamsField" + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000005 + type: team + meta: + pagination: + offset: 0 + total: 1 + schema: + $ref: "#/components/schemas/TeamsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get all member teams + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - teams_read + x-sunset: "2026-06-01" + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + post: + deprecated: true + description: |- + Add a member team. + Adds the team given by the `id` in the body as a member team of the super team. + + **Note**: This API is deprecated. For creating team hierarchy links, use the team hierarchy links API: `POST /api/v2/team-hierarchy-links`. + operationId: AddMemberTeam + parameters: + - description: None + in: path + name: super_team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: member_teams + schema: + $ref: "#/components/schemas/AddMemberTeamRequest" + required: true + responses: + "204": + description: Added + "403": + $ref: "#/components/responses/ForbiddenResponse" + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Add a member team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + x-sunset: "2026-06-01" + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/team/{super_team_id}/member_teams/{member_team_id}: + delete: + deprecated: true + description: |- + Remove a super team's member team identified by `member_team_id`. + + **Note**: This API is deprecated. For deleting team hierarchy links, use the team hierarchy links API: `DELETE /api/v2/team-hierarchy-links/{link_id}`. + operationId: RemoveMemberTeam + parameters: + - description: None + in: path + name: super_team_id + required: true + schema: + type: string + - description: None + in: path + name: member_team_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Remove a member team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + x-sunset: "2026-06-01" + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/team/{team_id}: + delete: + description: Remove a team using the team's `id`. + operationId: DeleteTeam + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Remove a team + tags: + - Teams + "x-permission": + operator: AND + permissions: + - teams_read + - teams_manage + get: + description: Get a single team using the team's `id`. + operationId: GetTeam + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000003 + type: team + schema: + $ref: "#/components/schemas/TeamResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get a team + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + patch: + description: |- + Update a team using the team's `id`. + If the `team_links` relationship is present, the associated links are updated to be in the order they appear in the array, and any existing team links not present are removed. + operationId: UpdateTeam + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + avatar: 🥑 + handle: example-team + name: Example Team + relationships: + team_links: + data: + - id: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + links: + related: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links + type: team + schema: + $ref: "#/components/schemas/TeamUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000004 + type: team + schema: + $ref: "#/components/schemas/TeamResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update a team + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/links: + get: + description: Get all links for a given team. + operationId: GetTeamLinks + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + label: Link label + position: 0 + url: "https://example.com" + id: 00000000-0000-0000-0000-000000000001 + type: team_links + schema: + $ref: "#/components/schemas/TeamLinksResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get links for a team + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + post: + description: Add a new link to a team. + operationId: CreateTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + position: 0 + url: https://example.com + type: team_links + schema: + $ref: "#/components/schemas/TeamLinkCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + url: https://example.com + id: 00000000-0000-0000-0000-000000000002 + type: team_links + schema: + $ref: "#/components/schemas/TeamLinkResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Create a team link + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/links/{link_id}: + delete: + description: Remove a link from a team. + operationId: DeleteTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: link_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Remove a team link + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + get: + description: Get a single link for a team. + operationId: GetTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: link_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + position: 0 + url: "https://example.com" + id: 00000000-0000-0000-0000-000000000003 + type: team_links + schema: + $ref: "#/components/schemas/TeamLinkResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get a team link + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + patch: + description: Update a team link. + operationId: UpdateTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: link_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + url: https://example.com + type: team_links + schema: + $ref: "#/components/schemas/TeamLinkCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + position: 0 + url: "https://example.com" + id: 00000000-0000-0000-0000-000000000004 + type: team_links + schema: + $ref: "#/components/schemas/TeamLinkResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update a team link + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/memberships: + get: + description: Get a paginated list of members for a team + operationId: GetTeamMemberships + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: Specifies the order of returned team memberships + in: query + name: sort + required: false + schema: + $ref: "#/components/schemas/GetTeamMembershipsSort" + - description: Search query, can be user email or name + in: query + name: filter[keyword] + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + role: admin + id: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + type: team_memberships + schema: + $ref: "#/components/schemas/UserTeamsResponse" + description: Represents a user's association to a team + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team memberships + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - teams_read + post: + description: |- + Add a user to a team. + + **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership). + operationId: CreateTeamMembership + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + relationships: + team: + data: + id: d7e15d9d-d346-43da-81d8-3d9e71d9a5e9 + type: team + user: + data: + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: users + type: team_memberships + schema: + $ref: "#/components/schemas/UserTeamRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + id: 00000000-0000-0000-0000-000000000001 + type: team_memberships + schema: + $ref: "#/components/schemas/UserTeamResponse" + description: Represents a user's association to a team + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Add a user to a team + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/memberships/{user_id}: + delete: + description: |- + Remove a user from a team. + + **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership). + operationId: DeleteTeamMembership + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: user_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Remove a user from a team + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + patch: + description: |- + Update a user's membership attributes on a team. + + **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership). + operationId: UpdateTeamMembership + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: user_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + type: team_memberships + schema: + $ref: "#/components/schemas/UserTeamUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + id: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + type: team_memberships + schema: + $ref: "#/components/schemas/UserTeamResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update a user's membership attributes on a team + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/notification-rules: + get: + operationId: GetTeamNotificationRules + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000001 + type: team_notification_rules + schema: + $ref: "#/components/schemas/TeamNotificationRulesResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team notification rules + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + post: + operationId: CreateTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-ops + workspace: Datadog + type: team_notification_rules + schema: + $ref: "#/components/schemas/TeamNotificationRuleRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000002 + type: team_notification_rules + schema: + $ref: "#/components/schemas/TeamNotificationRuleResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "409": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Create team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/notification-rules/{rule_id}: + delete: + operationId: DeleteTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: rule_id + required: true + schema: + type: string + responses: + "204": + description: No Content + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Delete team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + get: + operationId: GetTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: rule_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000003 + type: team_notification_rules + schema: + $ref: "#/components/schemas/TeamNotificationRuleResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + put: + operationId: UpdateTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: rule_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + pagerduty: + service_name: Datadog-prod + slack: + channel: test-ops + workspace: Datadog + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: team_notification_rules + schema: + $ref: "#/components/schemas/TeamNotificationRuleRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000004 + type: team_notification_rules + schema: + $ref: "#/components/schemas/TeamNotificationRuleResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/permission-settings: + get: + description: Get all permission settings for a given team. + operationId: GetTeamPermissionSettings + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: edit + editable: true + value: admins + id: TeamPermission-abc-123-edit + type: team_permission_settings + schema: + $ref: "#/components/schemas/TeamPermissionSettingsResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get permission settings for a team + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/permission-settings/{action}: + put: + description: Update a team permission setting for a given team. + operationId: UpdateTeamPermissionSetting + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: action + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + value: admins + type: team_permission_settings + schema: + $ref: "#/components/schemas/TeamPermissionSettingUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + action: edit + editable: true + value: admins + id: TeamPermission-abc-123-edit + type: team_permission_settings + schema: + $ref: "#/components/schemas/TeamPermissionSettingResponse" + description: OK + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update permission setting for team + tags: + - Teams + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/test/flaky-test-management/tests: + patch: + description: |- + Update the state of multiple flaky tests in Flaky Test Management. + operationId: UpdateFlakyTests + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + tests: + - id: 4eb1887a8adb1847 + new_state: active + type: update_flaky_test_state_request + schema: + $ref: "#/components/schemas/UpdateFlakyTestsRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + has_errors: false + results: + - id: 4eb1887a8adb1847 + success: true + id: abc-123 + type: update_flaky_test_state_response + schema: + $ref: "#/components/schemas/UpdateFlakyTestsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_write + summary: Update flaky test states + tags: ["Test Optimization"] + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - test_optimization_write + post: + description: |- + List endpoint returning flaky tests from Flaky Test Management. Results are paginated. + + The response includes comprehensive test information including: + - Test identification and metadata (module, suite, name) + - Flaky state and categorization + - First and last flake occurrences (timestamp, branch, commit SHA) + - Test execution statistics from the last 7 days (failure rate) + - Pipeline impact metrics (failed pipelines count, total lost time) + - Complete status change history (optional, ordered from most recent to oldest) + + Set `include_history` to `true` in the request to receive the status change history for each test. + History is disabled by default for better performance. + + Results support filtering by various facets including service, environment, repository, branch, and test state. + operationId: SearchFlakyTests + requestBody: + content: + "application/json": + examples: + default: + value: + data: + attributes: + filter: + query: flaky_test_state:active @git.repository.id_v2:"github.com/datadog/test-service" + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: failure_rate + type: search_flaky_tests_request + schema: + $ref: "#/components/schemas/FlakyTestsSearchRequest" + required: false + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + envs: + - prod + flaky_state: active + module: TestModule + name: TestName + services: + - test-service + suite: TestSuite + id: 4eb1887a8adb1847 + type: flaky_test + meta: + pagination: + next_page: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: "#/components/schemas/FlakyTestsSearchResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/NotAuthorizedResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_read + summary: Search flaky tests + tags: ["Test Optimization"] + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.data.attributes.page.cursor + cursorPath: meta.pagination.next_page + limitParam: body.data.attributes.page.limit + resultsPath: data + "x-permission": + operator: OR + permissions: + - test_optimization_read + /api/v2/trace/{trace_id}: + get: + description: |- + Retrieve a full APM trace by its trace ID, including every span in the trace. + Traces are returned from live storage when available and fall back to longer-term storage. + This endpoint is rate limited to `60` requests per minute per organization. + operationId: GetTraceByID + parameters: + - $ref: "#/components/parameters/TraceIDPathParameter" + - description: |- + List of span fields to include in the response. When omitted, every available field is returned. + Values may be passed as repeated query parameters or as a single comma-separated value. + example: + - service + - resource_name + in: query + name: include_fields + required: false + schema: + items: + type: string + type: array + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + is_truncated: false + spans: + - duration: 500000000 + endTime: 1716800000500000000 + error: 0 + meta: + env: production + http.method: GET + metrics: + http.status_code: 200 + name: web.request + parentID: 0 + resource: GET /products + service: web-store + spanID: 9876543210987654321 + startTime: 1716800000000000000 + traceID: 12345678901234567890 + traceIDFull: 0000000000000000abc1230000000000 + type: web + id: "0000000000000000abc1230000000000" + type: trace + schema: + $ref: "#/components/schemas/TraceResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "413": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Payload Too Large + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get a trace by ID + tags: + - APM Trace + x-permission: + operator: OR + permissions: + - apm_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/usage/application_security: + get: + deprecated: true + description: |- + Get hourly usage for application security . + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) + operationId: GetUsageApplicationSecurityMonitoring + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/UsageApplicationSecurityMonitoringResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for application security + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/usage/billing_dimension_mapping: + get: + description: |- + Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints. + Mapping data is updated on a monthly cadence. + + This endpoint is only accessible to [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetBillingDimensionMapping + parameters: + - description: "Datetime in ISO-8601 format, UTC, and for mappings beginning this month. Defaults to the current month." + in: query + name: filter[month] + required: false + schema: + format: date-time + type: string + - description: "String to specify whether to retrieve active billing dimension mappings for the contract or for all available mappings. Allowed views have the string `active` or `all`. Defaults to `active`." + in: query + name: filter[view] + required: false + schema: + default: active + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/BillingDimensionsMappingResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get billing dimension mapping for usage endpoints + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/usage/cost_by_org: + get: + deprecated: true + description: |- + Get cost across multi-org account. + Cost by org data for a given month becomes available no later than the 16th of the following month. + **Note:** This endpoint has been deprecated. Please use the new endpoint + [`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account) + instead. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetCostByOrg + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month." + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month." + in: query + name: end_month + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/CostByOrgResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get cost across multi-org account + tags: + - Usage Metering + "x-permission": + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/estimated_cost: + get: + description: |- + Get estimated cost across multi-org and single root-org accounts. + Estimated cost data is only available for the current month and previous month + and is delayed by up to 72 hours from when it was incurred. + To access historical costs prior to this, use the `/historical_cost` endpoint. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetEstimatedCostByOrg + parameters: + - description: "String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults to `summary`." + in: query + name: view + required: false + schema: + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month. **Either start_month or start_date should be specified, but not both.** (start_month cannot go beyond two months in the past). Provide an `end_month` to view month-over-month cost." + in: query + name: start_month + required: false + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month." + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost beginning this day. **Either start_month or start_date should be specified, but not both.** (start_date cannot go beyond two months in the past). Provide an `end_date` to view day-over-day cumulative cost." + in: query + name: start_date + required: false + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost ending this day." + in: query + name: end_date + required: false + schema: + format: date-time + type: string + - description: "Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals." + in: query + name: cost_aggregation + required: false + schema: + $ref: "#/components/schemas/CostAggregationType" + - description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`." + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/CostByOrgResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get estimated cost across your account + tags: + - Usage Metering + "x-permission": + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/historical_cost: + get: + description: |- + Get historical cost across multi-org and single root-org accounts. + Cost data for a given month becomes available no later than the 16th of the following month. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetHistoricalCostByOrg + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month." + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: "String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults to `summary`." + in: query + name: view + required: false + schema: + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month." + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`." + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/CostByOrgResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get historical cost across your account + tags: + - Usage Metering + "x-permission": + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/hourly_usage: + get: + description: Get hourly usage by product family. + operationId: GetHourlyUsage + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour." + in: query + name: filter[timestamp][start] + required: true + schema: + format: date-time + type: string + - description: "Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour." + in: query + name: filter[timestamp][end] + required: false + schema: + format: date-time + type: string + - description: |- + Comma separated list of product families to retrieve. Available families are `all`, `ai`, `analyzed_logs`, + `application_performance_monitoring`, `application_security`, `audit_trail`, `bits_ai`, `serverless`, `ci_app`, + `cloud_cost_management`, `cloud_siem`, `csm_container_enterprise`, `csm_host_enterprise`, `csm_host_pro`, `cspm`, + `custom_events`, `cws`, `data_observability`, `dbm`, `digital_experience_management`, `error_tracking`, + `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `infrastructure_monitoring`, + `ingested_spans`, `iot`, `lambda_traced_invocations`, `llm_observability`, `log_management`, `logs`, + `network_flows`, `network_hosts`, `network_monitoring`, `observability_pipelines`, `online_archive`, + `platform_capabilities`, `product_analytics`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, + `sds`, `security`, `snmp`, `software_delivery`, `synthetics_api`, `synthetics_browser`, + `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, `vuln_management` and `workflow_executions`. + The following product family has been **deprecated**: `audit_logs`. + in: query + name: filter[product_families] + required: true + schema: + type: string + - description: "Include child org usage in the response. Defaults to false." + in: query + name: filter[include_descendants] + required: false + schema: + default: false + type: boolean + - description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to false." + in: query + name: filter[include_connected_accounts] + required: false + schema: + default: false + type: boolean + - description: "Include breakdown of usage by subcategories where applicable (for product family logs only). Defaults to false." + in: query + name: filter[include_breakdown] + required: false + schema: + default: false + type: boolean + - description: |- + Comma separated list of product family versions to use in the format `product_family:version`. For example, + `infra_hosts:1.0.0`. If this parameter is not used, the API will use the latest version of each requested + product family. Currently all families have one version `1.0.0`. + in: query + name: filter[versions] + required: false + schema: + type: string + - description: "Maximum number of results to return (between 1 and 500) - defaults to 500 if limit not specified." + in: query + name: page[limit] + required: false + schema: + default: 500 + format: int32 + maximum: 500 + minimum: 1 + type: integer + - description: "List following results with a next_record_id provided in the previous query." + in: query + name: page[next_record_id] + required: false + schema: + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + - id: abc-123 + type: usage_timeseries + schema: + $ref: "#/components/schemas/HourlyUsageResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage by product family + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/usage/lambda_traced_invocations: + get: + deprecated: true + description: |- + Get hourly usage for Lambda traced invocations. + **Note:** This endpoint has been deprecated.. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) + operationId: GetUsageLambdaTracedInvocations + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/UsageLambdaTracedInvocationsResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for Lambda traced invocations + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/usage/observability_pipelines: + get: + deprecated: true + description: |- + Get hourly usage for observability pipelines. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) + operationId: GetUsageObservabilityPipelines + parameters: + - description: "Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour." + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/UsageObservabilityPipelinesResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for observability pipelines + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/usage/projected_cost: + get: + description: |- + Get projected cost across multi-org and single root-org accounts. + Projected cost data is only available for the current month and becomes available around the 12th of the month. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetProjectedCost + parameters: + - description: "String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults to `summary`." + in: query + name: view + required: false + schema: + type: string + - description: "Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`." + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/ProjectedCostResponse" + description: OK + "400": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get projected cost across your account + tags: + - Usage Metering + "x-permission": + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/summary/available_fields: + get: + description: |- + List the field names returned by `GET /api/v1/usage/summary` at each of its + three response levels. Each list contains every key the data endpoint + emits—both typed fields declared in the OpenAPI spec and untyped keys + exposed through `additionalProperties` (the latter used for billing + dimensions and usage types added after the v1 schema freeze). + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + Go example: + + ```go + fields, _, err := api.GetUsageSummaryAvailableFields(ctx) + attr := fields.Data.GetAttributes() + + // resp is the *UsageSummaryResponse returned by api.GetUsageSummary(ctx, ...) + // Layer 1: UsageSummaryResponse + for _, key := range attr.GetResponseFields() { + if val, ok := resp.AdditionalProperties[key]; ok { + fmt.Println(key, val.(json.Number)) + } + } + // Layer 2: UsageSummaryDate (per month) + for _, date := range resp.GetUsage() { + for _, key := range attr.GetDateFields() { + if val, ok := date.AdditionalProperties[key]; ok { + fmt.Println(key, val.(json.Number)) + } + } + // Layer 3: UsageSummaryDateOrg (per org per month) + for _, org := range date.GetOrgs() { + for _, key := range attr.GetDateOrgFields() { + if val, ok := org.AdditionalProperties[key]; ok { + fmt.Println(key, val.(json.Number)) + } + } + } + } + ``` + operationId: GetUsageSummaryAvailableFields + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + attributes: + date_fields: + - agent_host_top99p + - aws_host_top99p + - ccm_anthropic_spend_last + date_org_fields: + - agent_host_top99p + - aws_host_top99p + - ccm_anthropic_spend_last + response_fields: + - agent_host_top99p_sum + - aws_host_top99p_sum + - ccm_anthropic_spend_last_sum + id: all + type: usage_summary_available_fields + schema: + $ref: "#/components/schemas/UsageSummaryAvailableFieldsResponse" + description: OK. + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized. + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests. + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get available fields for usage summary + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/usage/usage-attribution-types: + get: + description: |- + Get usage attribution types. + operationId: GetUsageAttributionTypes + responses: + "200": + content: + application/json;datetime-format=rfc3339: + examples: + default: + value: + data: + id: abc-123 + type: usage_attribution_types + schema: + $ref: "#/components/schemas/UsageAttributionTypesResponse" + description: OK + "403": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden - User is not authorized + "429": + content: + application/json;datetime-format=rfc3339: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get usage attribution types + tags: + - Usage Metering + "x-permission": + operator: OR + permissions: + - usage_read + /api/v2/user_authorized_clients: + get: + description: Get a list of all OAuth2 clients authorized by the current user. + operationId: ListUserAuthorizedClients + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: Filter results by client name, app title, or app description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter results by the user-level disabled status. + in: query + name: filter[disabled] + required: false + schema: + type: string + - description: "Comma-separated list of related resources to include. Options: `oauth2_client`, `oauth2_client.app`." + in: query + name: include + required: false + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-10T08:00:00+00:00" + disabled: false + last_exercised: "2024-01-15T10:30:00+00:00" + modified_at: "2024-01-10T08:00:00+00:00" + org_disabled: false + id: "00000000-0000-0000-0000-000000000001" + relationships: + oauth2_client: + data: + id: "00000000-0000-0000-0000-000000000010" + type: oauth2_clients + scopes: + data: + - id: "example_scope" + type: scopes + user: + data: + id: "00000000-0000-9999-0000-000000000001" + type: users + type: user_authorized_clients + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: "#/components/schemas/UserAuthorizedClientsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - built_in_features + summary: List user authorized clients + tags: + - User Authorized Clients + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + /api/v2/user_authorized_clients/client/{client_id}: + delete: + description: Disable all authorizations the current user has granted to the specified OAuth2 client. + operationId: DeleteUserAuthorizedClientsByClient + parameters: + - $ref: "#/components/parameters/OAuth2ClientId" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete all user authorized clients for a client + tags: + - User Authorized Clients + /api/v2/user_authorized_clients/{user_authorized_client_id}: + delete: + description: Disable the current user's authorization for the specified OAuth2 client. + operationId: DeleteUserAuthorizedClient + parameters: + - $ref: "#/components/parameters/UserAuthorizedClientId" + responses: + "204": + description: No Content + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - built_in_features + summary: Delete a user authorized client + tags: + - User Authorized Clients + get: + description: Get a single OAuth2 client authorization for the current user. + operationId: GetUserAuthorizedClient + parameters: + - $ref: "#/components/parameters/UserAuthorizedClientId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-10T08:00:00+00:00" + disabled: false + last_exercised: "2024-01-15T10:30:00+00:00" + modified_at: "2024-01-10T08:00:00+00:00" + org_disabled: false + id: "00000000-0000-0000-0000-000000000001" + relationships: + oauth2_client: + data: + id: "00000000-0000-0000-0000-000000000010" + type: oauth2_clients + scopes: + data: + - id: "example_scope" + type: scopes + user: + data: + id: "00000000-0000-9999-0000-000000000001" + type: users + type: user_authorized_clients + schema: + $ref: "#/components/schemas/UserAuthorizedClientResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - built_in_features + summary: Get a user authorized client + tags: + - User Authorized Clients + /api/v2/user_invitations: + post: + description: Sends emails to one or more users inviting them to join the organization. + operationId: SendInvitations + requestBody: + content: + application/json: + examples: + default: + value: + data: + - relationships: + user: + data: + id: 6cf192b6-d1d9-11ec-ad3d-da7ad0900002 + type: users + type: user_invitations + schema: + $ref: "#/components/schemas/UserInvitationsRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: "2024-01-01T00:00:00+00:00" + expires_at: "2024-01-08T00:00:00+00:00" + invite_type: email + uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000007 + type: user_invitations + schema: + $ref: "#/components/schemas/UserInvitationsResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Send invitation emails + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_invite + /api/v2/user_invitations/{user_invitation_uuid}: + get: + description: Returns a single user invitation by its UUID. + operationId: GetInvitation + parameters: + - description: The UUID of the user invitation. + in: path + name: user_invitation_uuid + required: true + schema: + example: "00000000-0000-0000-3456-000000000000" + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + invite_type: email + uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000008 + type: user_invitations + schema: + $ref: "#/components/schemas/UserInvitationResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Get a user invitation + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_invite + /api/v2/users: + get: + description: |- + Get the list of all users in the organization. This list includes + all users even if they are deactivated or unverified. + operationId: ListUsers + parameters: + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + - description: |- + User attribute to order results by. Sort order is ascending by default. + Sort order is descending if the field + is prefixed by a negative sign, for example `sort=-name`. Options: `name`, + `modified_at`, `user_count`. + in: query + name: sort + required: false + schema: + default: name + example: name + type: string + - description: "Direction of sort. Options: `asc`, `desc`." + in: query + name: sort_dir + required: false + schema: + $ref: "#/components/schemas/QuerySortOrder" + - description: Filter all users by the given string. Defaults to no filtering. + in: query + name: filter + required: false + schema: + type: string + - description: |- + Filter on status attribute. + Comma separated list, with possible values `Active`, `Pending`, and `Disabled`. + Defaults to no filtering. + in: query + name: filter[status] + required: false + schema: + example: Active + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000001 + type: users + included: [] + meta: {} + schema: + $ref: "#/components/schemas/UsersResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List all users + tags: + - Users + x-codegen-request-body-name: body + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + "x-permission": + operator: OR + permissions: + - user_access_read + post: + description: Create a user for your organization. + operationId: CreateUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: jane.doe@example.com + relationships: + roles: + data: + - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: users + schema: + $ref: "#/components/schemas/UserCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000002 + type: users + included: [] + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Create a user + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_invite + /api/v2/users/{user_id}: + delete: + description: |- + Disable a user. Can only be used with an application key belonging + to an administrator user. + operationId: DisableUser + parameters: + - $ref: "#/components/parameters/UserID" + responses: + "204": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Disable a user + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + - service_account_write + get: + description: Get a user in the organization specified by the user’s `user_id`. + operationId: GetUser + parameters: + - $ref: "#/components/parameters/UserID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000003 + type: users + included: [] + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get user details + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_read + patch: + description: |- + Edit a user. Can only be used with an application key belonging + to an administrator user. + operationId: UpdateUser + parameters: + - $ref: "#/components/parameters/UserID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-feed-0000-000000000000 + type: users + schema: + $ref: "#/components/schemas/UserUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000004 + type: users + included: [] + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "422": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unprocessable Entity + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Update a user + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + - service_account_write + /api/v2/users/{user_id}/identity_providers: + get: + description: |- + Get the identity provider overrides for a specific user in the organization. + When a user has no overrides set, they use the organization's default identity providers. + operationId: GetUserIdentityProviders + parameters: + - $ref: "#/components/parameters/UserID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + authentication_method: "SAML" + id: "00000000-0000-0000-0000-000000000001" + type: identity_providers + schema: + $ref: "#/components/schemas/UserOverrideIdentityProvidersResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Get identity provider overrides for a user + tags: + - Users + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/users/{user_id}/invitations: + delete: + description: |- + Cancel all pending invitations for a specified user. + Requires the `user_access_invite` permission. + operationId: DeleteUserInvitations + parameters: + - description: The UUID of the user whose pending invitations should be canceled. + in: path + name: user_id + required: true + schema: + example: "4dee724d-00cc-11ea-a77b-570c9d03c6c5" + format: uuid + type: string + responses: + "200": + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Delete a pending user's invitations + tags: + - Users + "x-permission": + operator: OR + permissions: + - user_access_invite + /api/v2/users/{user_id}/orgs: + get: + description: |- + Get a user organization. Returns the user information and all organizations + joined by this user. + operationId: ListUserOrganizations + parameters: + - $ref: "#/components/parameters/UserID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000005 + type: users + included: [] + schema: + $ref: "#/components/schemas/UserResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a user organization + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OPEN + permissions: [] + /api/v2/users/{user_id}/permissions: + get: + description: |- + Get a user permission set. Returns a list of the user’s permissions + granted by the associated user's roles. + operationId: ListUserPermissions + parameters: + - $ref: "#/components/parameters/UserID" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + display_name: Logs Read Data + display_type: read + name: logs_read_data + restricted: false + id: 00000000-0000-0000-0000-000000000006 + type: permissions + schema: + $ref: "#/components/schemas/PermissionsResponse" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get a user permissions + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_read + /api/v2/users/{user_id}/relationships/identity_providers: + patch: + description: |- + Set the identity provider overrides for a specific user in the organization. + Pass an empty list to remove all overrides, reverting the user to the organization's + default identity providers. + operationId: UpdateUserIdentityProviders + parameters: + - $ref: "#/components/parameters/UserID" + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: "00000000-0000-0000-0000-000000000001" + type: identity_providers + schema: + $ref: "#/components/schemas/UpdateUserIdentityProvidersRequest" + required: true + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Authentication error + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Update identity provider overrides for a user + tags: + - Users + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - user_access_manage + /api/v2/users/{user_uuid}/memberships: + get: + description: Get a list of memberships for a user + operationId: GetUserMemberships + parameters: + - description: None + in: path + name: user_uuid + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + role: admin + id: 00000000-0000-0000-0000-000000000001 + type: team_memberships + schema: + $ref: "#/components/schemas/UserTeamsResponse" + description: Represents a user's association to a team + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: API error response. + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get user memberships + tags: + - Teams + "x-permission": + operator: OR + permissions: + - teams_read + /api/v2/validate: + get: + description: Check if the API key is valid. Returns the organization UUID, API key ID, and associated scopes. + operationId: Validate + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key_id: "a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6" + api_key_scopes: + - "remote_config_read" + valid: true + id: "550e8400-e29b-41d4-a716-446655440000" + type: "validate_v2" + schema: + $ref: "#/components/schemas/ValidateV2Response" + description: OK + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + summary: Validate API key + tags: + - Key Management + "x-permission": + operator: OPEN + permissions: [] + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/validate_keys: + get: + description: |- + Check that the API key and application key used for the request are both valid. + Returns `{"status": "ok"}` on success, `401` or `403` otherwise. Useful as a + lightweight authentication probe before issuing other API calls that require + full credentials. + operationId: ValidateAPIKey + responses: + "200": + content: + application/json: + examples: + default: + value: + status: ok + schema: + $ref: "#/components/schemas/ValidateAPIKeyResponse" + description: OK + "401": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Unauthorized + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Validate API and application keys + tags: + - Key Management + "x-permission": + operator: OPEN + permissions: [] + /api/v2/web-integrations/{integration_name}/accounts: + get: + description: List accounts for a given web integration. + operationId: ListWebIntegrationAccounts + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: my-databricks-account + settings: + workspace_url: https://example.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: "#/components/schemas/WebIntegrationAccountsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List web integration accounts + tags: + - Web Integrations + "x-permission": + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice. + post: + description: Create a new account for a given web integration. + operationId: CreateWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + secrets: + client_secret: my-client-secret + settings: + workspace_url: https://example.azuredatabricks.net + type: Account + schema: + $ref: "#/components/schemas/WebIntegrationAccountCreateRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + settings: + workspace_url: https://example.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: "#/components/schemas/WebIntegrationAccountResponse" + description: CREATED + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Create a web integration account + tags: + - Web Integrations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice. + /api/v2/web-integrations/{integration_name}/accounts/{account_id}: + delete: + description: Delete an account for a given web integration. + operationId: DeleteWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + - description: The unique identifier of the web integration account. + in: path + name: account_id + required: true + schema: + type: string + responses: + "204": + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Delete a web integration account + tags: + - Web Integrations + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice. + get: + description: Get a single account for a given web integration. + operationId: GetWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + - description: The unique identifier of the web integration account. + in: path + name: account_id + required: true + schema: + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + settings: + workspace_url: https://example.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: "#/components/schemas/WebIntegrationAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Get a web integration account + tags: + - Web Integrations + "x-permission": + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice. + patch: + description: Update an existing account for a given web integration. + operationId: UpdateWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + - description: The unique identifier of the web integration account. + in: path + name: account_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + secrets: + client_secret: my-new-client-secret + settings: + workspace_url: https://updated.azuredatabricks.net + type: Account + schema: + $ref: "#/components/schemas/WebIntegrationAccountUpdateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + settings: + workspace_url: https://updated.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: "#/components/schemas/WebIntegrationAccountResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "422": + $ref: "#/components/responses/UnprocessableEntityResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Update a web integration account + tags: + - Web Integrations + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice. + /api/v2/widgets/{experience_type}: + get: + description: |- + Search and list widgets for a given experience type, with filtering, sorting, and pagination. + + **Response meta** carries totals scoped to the current filter: + - `filtered_total` — widgets matching the filter. + - `created_by_you_total` — among the matches, how many the current user created. + - `favorited_by_you_total` — among the matches, how many the current user has favorited. + - `created_by_anyone_total` — total widgets in the experience type, ignoring filters. + + Each returned widget includes `is_favorited` reflecting the current user's favorite status. + Favoriting itself is performed through the shared favorites API, not this endpoint. + operationId: SearchWidgets + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: "#/components/schemas/WidgetExperienceType" + - description: Filter widgets by widget type. + in: query + name: filter[widgetType] + schema: + $ref: "#/components/schemas/WidgetType" + - description: Filter widgets by the email handle of the creator. + in: query + name: filter[creatorHandle] + schema: + example: "john.doe@example.com" + type: string + - description: Filter to only widgets favorited by the current user. + in: query + name: filter[isFavorited] + schema: + type: boolean + - description: Filter widgets by title (substring match). + in: query + name: filter[title] + schema: + type: string + - description: Filter widgets by tags. Format as bracket-delimited CSV, e.g. `[tag1,tag2]`. + in: query + name: filter[tags] + schema: + type: string + - description: |- + Sort field for the results. + + **`title`, `created_at`, `modified_at`** — both ascending and descending are + supported. Use the bare field name for ascending (e.g. `sort=title`) or prefix + with `-` for descending (e.g. `sort=-modified_at`). + + **`is_favorited`** — returns favorites-first ordering (favorited widgets first, + then the rest). Direction is fixed; the `-` prefix is ignored for this field. + in: query + name: sort + schema: + default: "-modified_at" + example: "-modified_at" + type: string + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of widgets per page. + in: query + name: page[size] + schema: + default: 50 + format: int64 + maximum: 100 + type: integer + responses: + "200": + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: "#/components/schemas/WidgetListResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Search widgets + tags: + - Widgets + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_read + post: + description: Create a new widget for a given experience type. + operationId: CreateWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: "#/components/schemas/WidgetExperienceType" + requestBody: + content: + application/json: + examples: + default: + summary: CCM cost summary widget + value: + data: + attributes: + definition: + graph_options: + - type: query_value + view: total + - type: query_value + view: change + - display_type: bars + type: timeseries + - type: cloud_cost_table + view: summary + requests: + - formulas: + - formula: query1 + queries: + - data_source: cloud_cost + name: query1 + query: sum:aws.cost.amortized{*} by {aws_product}.rollup(sum, daily) + response_format: timeseries + time: + type: live + unit: day + value: 30 + title: AWS spend by service (last 30 days) + type: cloud_cost_summary + tags: ["finops", "aws"] + type: widgets + schema: + $ref: "#/components/schemas/CreateOrUpdateWidgetRequest" + description: |- + Widget request body. The `definition` object's required fields vary + by `widget.definition.type`: every type requires `requests`, and + some types require additional fields (e.g. `cloud_cost_summary` + requires `graph_options`, `geomap` requires `style` and `view`). + The example below shows a complete `cloud_cost_summary` payload + for the `ccm_reports` experience type. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + definition: + title: My Widget + type: bar_chart + is_favorited: false + modified_at: "2024-01-01T00:00:00+00:00" + tags: + - "team:my-team" + id: abc-123 + type: widgets + schema: + $ref: "#/components/schemas/WidgetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a widget + tags: + - Widgets + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_write + /api/v2/widgets/{experience_type}/{uuid}: + delete: + description: Soft-delete a widget by its UUID for a given experience type. + operationId: DeleteWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: "#/components/schemas/WidgetExperienceType" + - description: The UUID of the widget. + in: path + name: uuid + required: true + schema: + format: uuid + type: string + responses: + "204": + description: No Content + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a widget + tags: + - Widgets + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_write + get: + description: Retrieve a widget by its UUID for a given experience type. + operationId: GetWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: "#/components/schemas/WidgetExperienceType" + - description: The UUID of the widget. + in: path + name: uuid + required: true + schema: + format: uuid + type: string + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + definition: + title: My Widget + type: bar_chart + is_favorited: false + modified_at: "2024-01-01T00:00:00+00:00" + tags: + - "team:my-team" + id: abc-123 + type: widgets + schema: + $ref: "#/components/schemas/WidgetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a widget + tags: + - Widgets + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_read + put: + description: Update a widget by its UUID for a given experience type. This performs a full replacement of the widget definition. + operationId: UpdateWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: "#/components/schemas/WidgetExperienceType" + - description: The UUID of the widget. + in: path + name: uuid + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + summary: CCM cost summary widget + value: + data: + attributes: + definition: + graph_options: + - type: query_value + view: total + - type: query_value + view: change + - display_type: bars + type: timeseries + - type: cloud_cost_table + view: summary + requests: + - formulas: + - formula: query1 + queries: + - data_source: cloud_cost + name: query1 + query: sum:aws.cost.amortized{*} by {aws_product}.rollup(sum, daily) + response_format: timeseries + time: + type: live + unit: day + value: 30 + title: AWS spend by service (last 30 days) + type: cloud_cost_summary + tags: ["finops", "aws"] + type: widgets + schema: + $ref: "#/components/schemas/CreateOrUpdateWidgetRequest" + description: |- + Widget request body. The `definition` object's required fields vary + by `widget.definition.type`; see `CreateWidget` above for a complete + worked payload. Update is a full replacement of the widget definition. + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: "2024-01-01T00:00:00+00:00" + definition: + title: My Widget + type: bar_chart + is_favorited: false + modified_at: "2024-01-01T00:00:00+00:00" + tags: + - "team:my-team" + id: abc-123 + type: widgets + schema: + $ref: "#/components/schemas/WidgetResponse" + description: OK + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Bad Request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/APIErrorResponse" + description: Not Found + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a widget + tags: + - Widgets + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_write + /api/v2/workflows: + get: + description: List all workflows in your organization. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: ListWorkflows + parameters: + - description: The maximum number of workflows to return per page. + example: 50 + in: query + name: limit + required: false + schema: + default: 50 + format: int64 + type: integer + - description: The page number to return, starting from 0. + example: 0 + in: query + name: page + required: false + schema: + default: 0 + format: int64 + type: integer + - description: "The sort order for the returned workflows. Provide a comma-separated list of fields, each optionally prefixed with `-` for descending order. Supported fields are `name`, `createdAt`, `updatedAt`, `creatorName`, `ownerName`, and `lastExecutedAt`." + example: "-updatedAt" + in: query + name: sort + required: false + schema: + type: string + - description: "A search query used to filter the returned workflows. The query performs a case-insensitive substring match against each workflow's name, creator name, and handle. If the query contains a colon (for example, `team:infra`), the query is treated as a `key:value` tag filter." + example: deploy + in: query + name: filter[query] + required: false + schema: + type: string + - description: Filters the returned workflows by one or more trigger types, such as `monitor`, `schedule`, or `githubWebhook`. To specify the multiple types, repeat this parameter. + example: + - monitor + explode: true + in: query + name: filter[triggerIds] + required: false + schema: + items: + type: string + type: array + - description: Whether to include unpublished workflows in the response. + in: query + name: filter[includeUnpublished] + required: false + schema: + default: false + type: boolean + - description: Whether to include the full spec of each workflow in the response. When `false` (the default), each workflow's `spec` is returned as `null`. + in: query + name: filter[includeSpecs] + required: false + schema: + default: false + type: boolean + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: "2024-01-01T00:00:00+00:00" + description: A sample workflow. + name: Example Workflow + published: true + spec: {} + tags: + - team:infra + updatedAt: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000002 + relationships: + creator: + data: + id: 00000000-0000-0000-0000-000000000009 + type: users + owner: + data: + id: 00000000-0000-0000-0000-000000000009 + type: users + type: workflows + meta: + page: + totalCount: 1 + totalFilteredCount: 1 + schema: + $ref: "#/components/schemas/ListWorkflowsResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: List workflows + tags: + - Workflow Automation + x-pagination: + limitParam: limit + pageParam: page + pageStart: 0 + resultsPath: data + "x-permission": + operator: OR + permissions: + - workflows_read + post: + description: Create a new workflow, returning the workflow ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CreateWorkflow + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A sample workflow. + name: Example Workflow + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + y: -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: Example annotation. + connectionEnvs: + - connections: + - connectionId: e1e64943-c7c5-4487-aece-25aaec7d3aad + label: INTEGRATION_DATADOG + env: default + handle: my-handle + inputSchema: + parameters: + - defaultValue: default + name: input + type: STRING + outputSchema: + parameters: + - name: output + type: ARRAY_OBJECT + value: "{{ Steps.Step1 }}" + steps: + - actionId: com.datadoghq.dd.monitor.listMonitors + connectionLabel: INTEGRATION_DATADOG + name: Step1 + outboundEdges: + - branchName: main + nextStepName: Step2 + parameters: + - name: tags + value: service:monitoring + - actionId: com.datadoghq.core.noop + name: Step2 + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: 3600s + startStepNames: + - Step1 + - githubWebhookTrigger: {} + startStepNames: + - Step1 + tags: + - team:infra + - service:monitoring + type: workflows + schema: + $ref: "#/components/schemas/CreateWorkflowRequest" + required: true + responses: + "201": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Example Workflow + spec: {} + id: 00000000-0000-0000-0000-000000000001 + type: workflows + schema: + $ref: "#/components/schemas/CreateWorkflowResponse" + description: Successfully created a workflow. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Create a Workflow + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_write + /api/v2/workflows/{workflow_id}: + delete: + description: Delete a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: DeleteWorkflow + parameters: + - $ref: "#/components/parameters/WorkflowId" + responses: + "204": + description: Successfully deleted a workflow. + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Delete an existing Workflow + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_write + get: + description: Get a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: GetWorkflow + parameters: + - $ref: "#/components/parameters/WorkflowId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: "2024-01-01T00:00:00+00:00" + description: A sample workflow. + name: Example Workflow + published: true + spec: {} + tags: + - team:infra + updatedAt: "2024-01-01T00:00:00+00:00" + id: 00000000-0000-0000-0000-000000000002 + type: workflows + schema: + $ref: "#/components/schemas/GetWorkflowResponse" + description: Successfully got a workflow. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Get an existing Workflow + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_read + patch: + description: Update a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: UpdateWorkflow + parameters: + - $ref: "#/components/parameters/WorkflowId" + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A sample workflow. + name: Example Workflow + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + y: -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: Example annotation. + connectionEnvs: + - connections: + - connectionId: e1e64943-c7c5-4487-aece-25aaec7d3aad + label: INTEGRATION_DATADOG + env: default + handle: my-handle + inputSchema: + parameters: + - defaultValue: default + name: input + type: STRING + outputSchema: + parameters: + - name: output + type: ARRAY_OBJECT + value: "{{ Steps.Step1 }}" + steps: + - actionId: com.datadoghq.dd.monitor.listMonitors + connectionLabel: INTEGRATION_DATADOG + name: Step1 + outboundEdges: + - branchName: main + nextStepName: Step2 + parameters: + - name: tags + value: service:monitoring + - actionId: com.datadoghq.core.noop + name: Step2 + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: 3600s + startStepNames: + - Step1 + - githubWebhookTrigger: {} + startStepNames: + - Step1 + tags: + - team:infra + - service:monitoring + id: 22222222-2222-2222-2222-222222222222 + type: workflows + schema: + $ref: "#/components/schemas/UpdateWorkflowRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Example Workflow + id: 00000000-0000-0000-0000-000000000003 + type: workflows + schema: + $ref: "#/components/schemas/UpdateWorkflowResponse" + description: Successfully updated a workflow. + "400": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Bad request + "403": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Forbidden + "404": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Not found + "429": + content: + application/json: + schema: + $ref: "#/components/schemas/JSONAPIErrorResponse" + description: Too many requests + summary: Update an existing Workflow + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_write + /api/v2/workflows/{workflow_id}/instances: + get: + description: List all instances of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: ListWorkflowInstances + parameters: + - $ref: "#/components/parameters/WorkflowId" + - $ref: "#/components/parameters/PageSize" + - $ref: "#/components/parameters/PageNumber" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000004 + meta: + page: + totalCount: 1 + schema: + $ref: "#/components/schemas/WorkflowListInstancesResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - workflows_read + summary: List workflow instances + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_read + post: + description: Execute the given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CreateWorkflowInstance + parameters: + - $ref: "#/components/parameters/WorkflowId" + requestBody: + content: + application/json: + examples: + default: + value: + meta: + payload: + input: value + schema: + $ref: "#/components/schemas/WorkflowInstanceCreateRequest" + required: true + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000005 + schema: + $ref: "#/components/schemas/WorkflowInstanceCreateResponse" + description: Created + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - workflows_run + summary: Execute a workflow + tags: + - Workflow Automation + x-codegen-request-body-name: body + "x-permission": + operator: OR + permissions: + - workflows_run + /api/v2/workflows/{workflow_id}/instances/{instance_id}: + get: + description: Get a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: GetWorkflowInstance + parameters: + - $ref: "#/components/parameters/WorkflowId" + - $ref: "#/components/parameters/InstanceId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + attributes: + id: 00000000-0000-0000-0000-000000000006 + schema: + $ref: "#/components/schemas/WorklflowGetInstanceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - workflows_read + summary: Get a workflow instance + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_read + /api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel: + put: + description: Cancels a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CancelWorkflowInstance + parameters: + - $ref: "#/components/parameters/WorkflowId" + - $ref: "#/components/parameters/InstanceId" + responses: + "200": + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000007 + schema: + $ref: "#/components/schemas/WorklflowCancelInstanceResponse" + description: OK + "400": + $ref: "#/components/responses/BadRequestResponse" + "403": + $ref: "#/components/responses/ForbiddenResponse" + "404": + $ref: "#/components/responses/NotFoundResponse" + "429": + $ref: "#/components/responses/TooManyRequestsResponse" + summary: Cancel a workflow instance + tags: + - Workflow Automation + "x-permission": + operator: OR + permissions: + - workflows_run +security: + - apiKeyAuth: [] + appKeyAuth: [] +servers: + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: The regional site for Datadog customers. + enum: + - datadoghq.com + - us3.datadoghq.com + - us5.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + - uk1.datadoghq.com + - datadoghq.eu + - ddog-gov.com + - us2.ddog-gov.com + - uk1.datadoghq.com + subdomain: + default: api + description: The subdomain where the API is deployed. + - url: "{protocol}://{name}" + variables: + name: + default: api.datadoghq.com + description: Full site DNS name. + protocol: + default: https + description: The protocol for accessing the API. + - url: https://{subdomain}.{site} + variables: + site: + default: datadoghq.com + description: Any Datadog deployment. + subdomain: + default: api + description: The subdomain where the API is deployed. +tags: + - description: |- + Configure your API endpoints through the Datadog API. + name: API Management + - description: Observe, troubleshoot, and improve cloud-scale applications with all telemetry in context + name: APM + - description: |- + Manage configuration of [APM retention filters](https://app.datadoghq.com/apm/traces/retention-filters) for your organization. You need an API and application key with Admin rights to interact with this endpoint. See [retention filters](https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/#retention-filters) on the Trace Retention page for more information. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/tracing/trace_pipeline/trace_retention/ + name: APM Retention Filters + - description: Retrieve full or pruned APM traces by trace ID. + name: APM Trace + - description: |- + Configure your Datadog-AWS integration directly through the Datadog API. + For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services). + name: AWS Integration + - description: |- + Configure your Datadog-AWS-Logs integration directly through Datadog API. + For more information, see the [AWS integration page](https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection). + externalDocs: + url: https://docs.datadoghq.com/integrations/amazon_web_services/#log-collection + name: AWS Logs Integration + - description: |- + Action connections extend your installed integrations and allow you to take action in your third-party systems + (e.g. AWS, GitLab, and Statuspage) with Datadog’s Workflow Automation and App Builder products. + + Datadog’s Integrations automatically provide authentication for Slack, Microsoft Teams, PagerDuty, Opsgenie, + JIRA, GitHub, and Statuspage. You do not need additional connections in order to access these tools within + Workflow Automation and App Builder. + + We offer granular access control for editing and resolving connections. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/service_management/workflows/connections/ + name: Action Connection + - description: |- + Leverage the Actions Datastore API to create, modify, and delete + items in datastores owned by your organization. + externalDocs: + url: https://docs.datadoghq.com/actions/datastore + name: Actions Datastores + - description: >- + Manage Agent Observability spans, data, projects, datasets, dataset records, experiments, prompts, and annotations. + name: Agent Observability + - description: |- + Datadog Agentless Scanning provides visibility into risks and vulnerabilities + within your hosts, running containers, and serverless functions—all without + requiring teams to install Agents on every host or where Agents cannot be installed. + Agentless offers also Sensitive Data Scanning capabilities on your storage. + Go to https://www.datadoghq.com/blog/agentless-scanning/ to learn more. + name: "Agentless Scanning" + - description: Add annotations to dashboards and notebooks to mark events such as deployments, incidents, or other notable moments in time. + name: Annotations + - description: |- + Datadog App Builder provides a low-code solution to rapidly develop and integrate secure, customized applications into your monitoring stack that are built to accelerate remediation at scale. These API endpoints allow you to create, read, update, delete, and publish apps. + name: App Builder + - description: |- + [Datadog Application Security](https://docs.datadoghq.com/security/application_security/) provides protection against + application-level attacks that aim to exploit code-level vulnerabilities, + such as Server-Side-Request-Forgery (SSRF), SQL injection, Log4Shell, and + Reflected Cross-Site-Scripting (XSS). You can monitor and protect apps + hosted directly on a server, Docker, Kubernetes, Amazon ECS, and (for + supported languages) AWS Fargate. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/security/application_security/ + name: "Application Security" + - description: |- + Search your Audit Logs events over HTTP. + name: Audit + - description: |- + [The AuthN Mappings API](https://docs.datadoghq.com/account_management/authn_mapping/?tab=example) + is used to automatically map groups of users to roles in Datadog using attributes + sent from Identity Providers. Use these endpoints to manage your AuthN Mappings. + name: AuthN Mappings + - description: |- + Use the Bits AI endpoints to retrieve AI-powered investigations. + name: Bits AI + - description: |- + Manage CI Visibility opt-in status for your GitHub accounts and repositories. See the + [CI Visibility GitHub Actions setup page](https://docs.datadoghq.com/continuous_integration/pipelines/github/) + for more information. + name: CI Visibility GitHub Accounts + - description: |- + Search or aggregate your CI Visibility pipeline events and send them to your Datadog site over HTTP. See the [CI Pipeline Visibility in Datadog page](https://docs.datadoghq.com/continuous_integration/pipelines/) for more information. + name: CI Visibility Pipelines + - description: |- + Search or aggregate your CI Visibility test events over HTTP. See the [Test Visibility in Datadog page](https://docs.datadoghq.com/tests/) for more information. + name: CI Visibility Tests + - description: |- + Datadog Cloud Security Management (CSM) delivers real-time threat detection + and continuous configuration audits across your entire cloud infrastructure, + all in a unified view for seamless collaboration and faster remediation. + Go to https://docs.datadoghq.com/security/cloud_security_management to learn more + name: "CSM Agents" + - description: |- + Datadog Cloud Security Management (CSM) delivers real-time threat detection + and continuous configuration audits across your entire cloud infrastructure, + all in a unified view for seamless collaboration and faster remediation. + Go to https://docs.datadoghq.com/security/cloud_security_management to learn more. + name: "CSM Coverage Analysis" + - description: |- + Datadog Cloud Security Management (CSM) Ownership infers the most likely owner + for a cloud resource by combining ownership signals from across the platform, + and lets you review the inference, inspect its evidence, and submit feedback to + persist, override, or correct the inferred owner. + For more information, see [Cloud Security Management](https://docs.datadoghq.com/security/cloud_security_management). + name: "CSM Ownership" + - description: |- + Datadog Cloud Security Management (CSM) Settings APIs allow you to list and filter + your cloud hosts monitored by CSM, covering both agentless and agent-based discovery. + For more information, see [Cloud Security Management](https://docs.datadoghq.com/security/cloud_security_management). + name: "CSM Settings" + - description: |- + Workload Protection monitors file, network, and process activity across your environment to detect real-time threats to your infrastructure. See [Workload Protection](https://docs.datadoghq.com/security/workload_protection/) for more information on setting up Workload Protection. + + **Note**: These endpoints are split based on whether you are using the US1-FED site or not. Please reference the specific resource for the site you are using. + name: "CSM Threats" + - description: >- + **Note**: Work Management is the UI name for Case Management. These API endpoints and permissions use `case` terminology. + + + View and manage work items and projects within Work Management. For more information, see [Work Management](https://docs.datadoghq.com/incident_response/work_management/). + name: Case Management + - description: >- + View and configure custom attributes within Case Management. See the [Case Management page](https://docs.datadoghq.com/service_management/case_management/) for more information. + name: Case Management Attribute + - description: >- + View and configure case types within Case Management. See the [Case Management page](https://docs.datadoghq.com/service_management/case_management/) for more information. + name: Case Management Type + - description: >- + View and manage change requests within Change Management. See the [Case Management page](https://docs.datadoghq.com/service_management/case_management/) for more information. + name: Change Management + - description: |- + Configure AWS cloud authentication mappings for persona and intake authentication through the Datadog API. + name: Cloud Authentication + - description: |- + The Cloud Cost Management API allows you to set up, edit, and delete Cloud Cost Management accounts for AWS, Azure, and Google Cloud. You can query your cost data by using the [Metrics endpoint](https://docs.datadoghq.com/api/latest/metrics/#query-timeseries-data-across-multiple-products) and the `cloud_cost` data source. For more information, see the [Cloud Cost Management documentation](https://docs.datadoghq.com/cloud_cost_management/). + name: Cloud Cost Management + - description: |- + The Cloud Network Monitoring API allows you to fetch aggregated connections and DNS traffic with their attributes. See the [Cloud Network Monitoring page](https://docs.datadoghq.com/network_monitoring/cloud_network_monitoring/) and [DNS Monitoring page](https://docs.datadoghq.com/network_monitoring/dns/) for more information. + name: Cloud Network Monitoring + - description: |- + Manage your Datadog Cloudflare integration directly through the Datadog API. See the [Cloudflare integration page](https://docs.datadoghq.com/integrations/cloudflare/) for more information. + name: Cloudflare Integration + - description: |- + Retrieve and analyze code coverage data from Code Coverage. See the [Code Coverage page](https://docs.datadoghq.com/code_coverage/) for more information. + name: Code Coverage + - description: |- + Datadog Cloud Security Misconfigurations provides aggregated views of + compliance rules and findings across your cloud resources, helping you assess + posture against industry frameworks (such as HIPAA, SOC 2, ISO 27001) and custom + frameworks. Learn more at https://docs.datadoghq.com/security/cloud_security_management/misconfigurations/#maintain-compliance-with-industry-frameworks-and-benchmarks. + name: "Compliance" + - description: |- + Manage your Datadog Confluent Cloud integration accounts and account resources directly through the Datadog API. See the [Confluent Cloud page](https://docs.datadoghq.com/integrations/confluent_cloud/) for more information. + name: Confluent Cloud + - description: |- + The Container Images API allows you to query Container Image data for your organization. See the [Container Images View page](https://docs.datadoghq.com/infrastructure/containers/container_images/) for more information. + name: Container Images + - description: |- + The Containers API allows you to query container data for your organization. See the [Container Monitoring page](https://docs.datadoghq.com/containers/) for more information. + name: Containers + - description: |- + Programmatic management of a customer's Datadog organization. Use this API to perform + self-service organization lifecycle actions such as disabling the authenticated org. + name: Customer Org + - description: |- + Execute DDSQL queries against the Datadog data catalog and poll for their results. + Queries are dispatched asynchronously: the initial request may return a `running` state with + a `query_id`, and clients poll the fetch endpoint until the response transitions to + `completed` with a column-major result set. + name: DDSQL + - description: |- + Search, send, or delete events for DORA Metrics to measure and improve your software delivery performance. See the [DORA Metrics page](https://docs.datadoghq.com/dora_metrics/) for more information. + + **Note**: DORA Metrics are not available in the US1-FED site. + name: DORA Metrics + - description: |- + Interact with your dashboard lists through the API to + organize, find, and share all of your dashboards with your team and + organization. + name: Dashboard Lists + - description: |- + Manage securely embedded Datadog dashboards. Secure embeds use HMAC-SHA256 signed sessions + for authentication, enabling customers to embed dashboards in their own applications with + server-side auth control. Unlike public dashboards (open URL) or invite dashboards + (email-based access), secure embeds provide programmatic access control. + + **Requirements:** + - **Embed** sharing must be enabled under **Organization Settings** > **Public Sharing** > **Shared Dashboards**. + - You need [an API key and an application key](https://docs.datadoghq.com/account_management/api-app-keys/) to interact with these endpoints. + name: Dashboard Secure Embed + - description: Manage dashboard sharing configurations. + name: Dashboard Sharing + - description: |- + Get usage statistics for the dashboards in your organization, including view + counts, last-edit times, widget counts, and quality scores. See the + [Dashboards documentation](https://docs.datadoghq.com/dashboards/) for more + information. + name: Dashboards + - description: |- + The Data Deletion API allows the user to target and delete data from the allowed products. It's enabled for Logs and depends on the `logs_delete_data` permission. + name: Data Deletion + - description: Manage and run data observability monitors. + name: Data Observability + - description: |- + Data Access Controls in Datadog is a feature that allows administrators and access managers to regulate + access to sensitive data. By defining Restricted Datasets, you can ensure that only specific teams or roles can + view certain types of telemetry (for example, logs, traces, metrics, and RUM data). + name: Datasets + - description: |- + Manage Deployment Gates using this API to reduce the likelihood and impact of incidents caused by deployments. See the [Deployment Gates documentation](https://docs.datadoghq.com/deployment_gates/) for more information. + name: Deployment Gates + - description: |- + Configure your Datadog Email Domain Allowlist directly through the Datadog API. + The Email Domain Allowlist controls the domains that certain datadog emails can be sent to. + For more information, see the [Domain Allowlist docs page](https://docs.datadoghq.com/account_management/org_settings/domain_allowlist) + name: Domain Allowlist + - description: |- + **Note**: Downtime V2 is currently in private beta. To request access, contact [Datadog support](https://docs.datadoghq.com/help/). + + [Downtiming](https://docs.datadoghq.com/monitors/notify/downtimes) gives + you greater control over monitor notifications by allowing you to globally exclude + scopes from alerting. Downtime settings, which can be scheduled with start and + end times, prevent all alerting related to specified Datadog tags. + name: Downtimes + - description: |- + Manage your Datadog Elastic Cloud integration accounts directly through the Datadog API. + Create, update, and delete accounts, configure authentication and settings, and + enable or disable dataflows such as cluster metrics, index stats, shard stats, + pending tasks, and snapshot lifecycle management stats. See the + [Elastic Cloud integration page](https://docs.datadoghq.com/integrations/elastic-cloud/) for + more information. + externalDocs: + description: Elastic Cloud integration. + url: https://docs.datadoghq.com/integrations/elastic-cloud/ + name: Elastic Cloud Integration Accounts + - description: Manage per-integration configurations for the Internal Developer Portal (IDP). These configurations control which external resources (for example, GitHub repositories, Jira projects, or PagerDuty services) are synced as entities into the Software Catalog. + name: Entity Integration Configs + - description: Retrieves security risk scores for entities in your organization. + name: Entity Risk Scores + - description: View and manage issues within Error Tracking. See the [Error Tracking page](https://docs.datadoghq.com/error_tracking/) for more information. + name: Error Tracking + - description: |- + The Event Management API allows you to programmatically post events to the Events Explorer and fetch events from the Events Explorer. See the [Event Management page](https://docs.datadoghq.com/service_management/events/) for more information. + + **Update to Datadog monitor events `aggregation_key` starting March 1, 2025:** The Datadog monitor events `aggregation_key` is unique to each Monitor ID. Starting March 1st, this key will also include Monitor Group, making it unique per *Monitor ID and Monitor Group*. If you're using monitor events `aggregation_key` in dashboard queries or the Event API, you must migrate to use `@monitor.id`. Reach out to [support](https://www.datadoghq.com/support/) if you have any question. + name: Events + - description: |- + Execution policies control which actions Datadog Action Platform is allowed to run + against your infrastructure, and where. Each policy pairs an effect (allow or deny) + with a pattern of actions, and can scope that decision to specific Kubernetes + namespaces, scripts, or remote shell paths. + name: Execution Policy + - description: |- + Manage your Datadog Fastly integration accounts and services directly through the Datadog API. See the [Fastly integration page](https://docs.datadoghq.com/integrations/fastly/) for more information. + name: Fastly Integration + - description: Manage feature flags and environments. + name: Feature Flags + - description: |- + Manage automated deployments across your fleet of hosts. + + Fleet Automation provides two types of deployments: + + Configuration Deployments (`/configure`): + - Apply configuration file changes to target hosts + - Support merge-patch operations to update specific configuration fields + - Support delete operations to remove configuration files + - Useful for updating Datadog Agent settings, integration configs, and more + + Package Upgrade Deployments (`/upgrade`): + - Upgrade the Datadog Agent to specific versions + name: Fleet Automation + - description: |- + The Datadog Forms API lets you create and manage forms within the App Builder platform. + You can configure form settings, manage versions, and publish forms. + name: Forms + - description: |- + Configure your Datadog-Google Cloud Platform (GCP) integration directly + through the Datadog API. Read more about the [Datadog-Google Cloud Platform integration](https://docs.datadoghq.com/integrations/google_cloud_platform). + externalDocs: + url: https://docs.datadoghq.com/integrations/google_cloud_platform + name: GCP Integration + - description: |- + Configure your [Datadog Google Chat integration](https://docs.datadoghq.com/integrations/google-hangouts-chat/) + directly through the Datadog API. + externalDocs: + description: For more information about the Datadog Google Chat integration, see the integration page. + url: https://docs.datadoghq.com/integrations/google-hangouts-chat/ + name: Google Chat Integration + - description: |- + The Governance Console finds issues that build up across a Datadog organization over time, + such as API keys nobody uses, users who no longer need access, or custom metrics that are + never queried, and tracks them through to a fix. + + These endpoints allow you to: + + - Read insights: measures of how your organization uses Datadog, each with the query behind it. + - Configure controls: the rules deciding how one kind of issue is found and what is done about it. + - Act on detections: the issues a control found. Assign, defer, accept as an exception, or fix. + - Manage settings: organization-wide configuration and notification destinations. + + See the [Governance Console page](https://docs.datadoghq.com/account_management/governance_console/) + for more information. + name: Governance Console + - description: |- + Configure High Availability Multi-Region (HAMR) connections between Datadog organizations. + HAMR provides disaster recovery capabilities by maintaining synchronized data between primary + and secondary organizations across different datacenters. + name: High Availability MultiRegion + - description: |- + The IP allowlist API is used to manage the IP addresses that + can access the Datadog API and web UI. It does not block + access to intake APIs or public dashboards. + + This is an enterprise-only feature. Request access by + contacting Datadog support, or see the [IP Allowlist page](https://docs.datadoghq.com/account_management/org_settings/ip_allowlist/) for more information. + name: IP Allowlist + - description: Manage identity providers and user authentication method overrides. + name: Identity Providers + - description: Manage incident response, as well as associated attachments, metadata, and todos. See the [Incident Management page](https://docs.datadoghq.com/service_management/incident_management/) for more information. + name: Incidents + - description: |- + The Integrations API is used to list available integrations + and retrieve information about their installation status. + name: Integrations + - description: Manage your Jira Integration. Atlassian Jira is a project management and issue tracking tool for teams to coordinate work and handle tasks efficiently. + name: Jira Integration + - description: |- + Manage your Datadog API and application keys. You need an API key and an + application key for a user with the required permissions to interact with these endpoints. + + Consult the following pages to view and manage your keys: + + - [API Keys](https://app.datadoghq.com/organization-settings/api-keys) + - [Application Keys](https://app.datadoghq.com/personal-settings/application-keys) + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/account_management/api-app-keys/" + name: Key Management + - description: |- + Search your logs and send them to your Datadog platform over HTTP. See the [Log Management page](https://docs.datadoghq.com/logs/) for more information. + name: Logs + - description: |- + Archives forward all the logs ingested to a cloud storage system. + + See the [Archives Page](https://app.datadoghq.com/logs/pipelines/archives) + for a list of the archives currently configured in Datadog. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/logs/archives/ + name: Logs Archives + - description: |- + Custom Destinations forward all the logs ingested to an external destination. + + **Note**: Log forwarding is not available for the Government (US1-FED) site. Contact your account representative for more information. + + See the [Custom Destinations Page](https://app.datadoghq.com/logs/pipelines/log-forwarding/custom-destinations) + for a list of the custom destinations currently configured in web UI. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/logs/log_configuration/forwarding_custom_destinations/ + name: Logs Custom Destinations + - description: |- + Manage configuration of [log-based metrics](https://app.datadoghq.com/logs/pipelines/generate-metrics) for your organization. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/logs/logs_to_metrics/ + name: Logs Metrics + - description: |- + **Note: This endpoint is in public beta. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).** + + A Restriction Query is a logs query that restricts which logs the `logs_read_data` permission grants read access to. + For users whose roles have Restriction Queries, any log query they make only returns those log events that also match + one of their Restriction Queries. This is true whether the user queries log events from any log-related feature, including + the log explorer, Live Tail, re-hydration, or a dashboard widget. + + Restriction Queries currently only support use of the following components of log events: + + - Reserved attributes + - The log message + - Tags + + To restrict read access on log data, add a team tag to log events to indicate which teams own them, and then scope Restriction Queries to the relevant values of the team tag. Tags can be applied to log events in many ways, and a log event can have multiple tags with the same key (like team) and different values. This means the same log event can be visible to roles whose restriction queries are scoped to different team values. + + See [How to Set Up RBAC for Logs](https://docs.datadoghq.com/logs/guide/logs-rbac/?tab=api#restrict-access-to-logs) for details on how to add restriction queries. + name: Logs Restriction Queries + - description: |- + The metrics endpoint allows you to: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + + See the [Metrics page](https://docs.datadoghq.com/metrics/) for more information. + name: Metrics + - description: |- + Configure your [Datadog Microsoft Teams integration](https://docs.datadoghq.com/integrations/microsoft_teams/) + directly through the Datadog API. Note: These endpoints do not support legacy connector handles. + externalDocs: + description: For more information about the Datadog Microsoft Teams integration, see the integration page. + url: https://docs.datadoghq.com/integrations/microsoft_teams/ + name: Microsoft Teams Integration + - description: Manage Model Lab projects, runs, artifacts, and facets for ML experiment tracking. + name: Model Lab API + - description: |- + [Monitors](https://docs.datadoghq.com/monitors) allow you to watch a metric or check that you care about and + notifies your team when a defined threshold has exceeded. + + For more information, see [Creating Monitors](https://docs.datadoghq.com/monitors/create/types/) and + [Tag Policies](https://docs.datadoghq.com/monitors/settings/). + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/monitors/create/types/ + name: Monitors + - description: |- + The Network Device Monitoring API allows you to fetch devices and interfaces and their attributes. See the [Network Device Monitoring page](https://docs.datadoghq.com/network_monitoring/) for more information. + name: Network Device Monitoring + - description: |- + Analyze network health by surfacing actionable insights for services experiencing connectivity issues. + Insights are derived from DNS failure data (timeouts, NXDOMAIN, SERVFAIL, general failures), + TLS certificate health (expired, expiring soon), and security group denials. + name: Network Health Insights + - description: |- + Configure OAuth2 clients for Datadog. + Supports RFC 7591 Dynamic Client Registration and management of OAuth2 client scopes restrictions. + name: OAuth2 Client Public + - description: Auto-generated tag OCI Integration + name: OCI Integration + - description: |- + Observability Pipelines allows you to collect and process logs within your own infrastructure, and then route them to downstream integrations. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/observability_pipelines/ + name: Observability Pipelines + - description: |- + Configure your [Datadog Okta integration](https://docs.datadoghq.com/integrations/okta/) directly through the Datadog API. + name: Okta Integration + - description: |- + Configure your [Datadog On-Call](https://docs.datadoghq.com/service_management/on-call/) + directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/service_management/on-call/ + name: On-Call + - description: |- + Trigger and manage [Datadog On-Call](https://docs.datadoghq.com/service_management/on-call/) + pages directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/service_management/on-call/ + name: On-Call Paging + - description: |- + Configure your [Datadog Opsgenie integration](https://docs.datadoghq.com/integrations/opsgenie/) + directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/api/latest/opsgenie-integration + name: Opsgenie Integration + - description: Manage OAuth2 client authorizations at the organization level. + name: Org Authorized Clients + - description: |- + Manage connections between organizations. Org connections allow for controlled sharing of data between different Datadog organizations. See the [Cross-Organization Visibiltiy](https://docs.datadoghq.com/account_management/org_settings/cross_org_visibility/) page for more information. + name: Org Connections + - description: >- + Manage organization groups, memberships, policies, policy overrides, and policy configurations. + name: Org Groups + - description: Create, edit, and manage your organizations. Read more about [multi-org accounts](https://docs.datadoghq.com/account_management/multi_organization). + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/account_management/multi_organization" + name: Organizations + - description: |- + The Powerpack endpoints allow you to: + + - Get a Powerpack + - Create a Powerpack + - Delete a Powerpack + - Get a list of all Powerpacks + + The Patch and Delete API methods can only be performed on a Powerpack by + a user who has the powerpack create permission for that specific Powerpack. + + Read [Scale Graphing Expertise with Powerpacks](https://docs.datadoghq.com/dashboards/guide/powerpacks-best-practices/) for more information. + name: Powerpack + - description: |- + The processes API allows you to query processes data for your organization. See the [Live Processes page](https://docs.datadoghq.com/infrastructure/process/) for more information. + name: Processes + - description: |- + Send server-side events to Product Analytics. Server-Side Events Ingestion allows you to collect custom events + from any server-side source, and retains events for 15 months. Server-side events are helpful for understanding + causes of a funnel drop-off which are external to the client-side (for example, payment processing error). + + **Note**: Sending server-side events impacts billing. Review the [pricing page](https://www.datadoghq.com/pricing/?product=product-analytics#products) + and contact your Customer Success Manager for more information. + name: Product Analytics + - description: |- + Manage your Real User Monitoring (RUM) applications, and search or aggregate your RUM events over HTTP. See the [RUM & Session Replay page](https://docs.datadoghq.com/real_user_monitoring/) for more information + name: RUM + - description: |- + Manage the [Real User Monitoring (RUM)](https://docs.datadoghq.com/real_user_monitoring/) + configuration for your organization. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/real_user_monitoring/ + name: RUM Config + - description: |- + Get insights into the performance of your Real User Monitoring (RUM) applications over HTTP. See the [RUM & Session Replay page](https://docs.datadoghq.com/real_user_monitoring/) for more information + name: RUM Insights + - description: |- + Manage [RUM Operations](https://docs.datadoghq.com/real_user_monitoring/), business + transactions detected from RUM events through a configurable journey, and their strong links + to features. See the [RUM & Session Replay page](https://docs.datadoghq.com/real_user_monitoring/) + for more information. + name: RUM Operations + - description: |- + Manage [RUM SDK configurations](https://docs.datadoghq.com/real_user_monitoring/) delivered to RUM applications via Remote Configuration. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/real_user_monitoring/ + name: RUM Remote Config + - description: |- + Manage RUM retention quota configurations for your organization's RUM applications. + name: RUM Retention Quotas + - description: View and manage Reference Tables in your organization. + name: Reference Tables + - description: |- + Create and manage scheduled reports. A scheduled report renders a dashboard or integration + dashboard on a recurring cadence and delivers it to a set of recipients over email, Slack, + or Microsoft Teams. + name: Report Schedules + - description: |- + The Reporting and Sharing endpoints allow you to create snapshots of graph widgets and other shareable resources. + name: Reporting And Sharing + - description: |- + A restriction policy defines the access control rules for a resource, mapping a set of relations + (such as editor and viewer) to a set of allowed principals (such as roles, teams, or users). + The restriction policy determines who is authorized to perform what actions on the resource. + name: Restriction Policies + - description: |- + The Roles API is used to create and manage Datadog roles, what + [global permissions](https://docs.datadoghq.com/account_management/rbac/) + they grant, and which users belong to them. + + Permissions related to specific account assets can be granted to roles + in the Datadog application without using this API. For example, granting + read access on a specific log index to a role can be done in Datadog from the + [Pipelines page](https://app.datadoghq.com/logs/pipelines). + + Roles can also be managed in bulk through the Datadog UI, which provides + the capability to assign a single permission to multiple roles simultaneously. + name: Roles + - description: Auto-generated tag Rum Audience Management + name: Rum Audience Management + - description: |- + Manage configuration of [RUM-based metrics](https://app.datadoghq.com/rum/generate-metrics) for your organization. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/real_user_monitoring/platform/generate_metrics/ + name: Rum Metrics + - description: Manage heatmap snapshots for RUM replay sessions. Create, update, delete, and retrieve snapshots to visualize user interactions on specific views. + name: Rum Replay Heatmaps + - description: Create and manage playlists of RUM replay sessions. Organize, categorize, and share collections of replay sessions for analysis and collaboration. + name: Rum Replay Playlists + - description: Retrieve segments for RUM replay sessions. Access session replay data stored in event platform or blob storage. + name: Rum Replay Sessions + - description: Track and manage RUM replay session viewership. Monitor who watches replay sessions and maintain watch history for audit and analytics purposes. + name: Rum Replay Viewership + - description: |- + Manage retention filters through [Manage Applications](https://app.datadoghq.com/rum/list) of RUM for your organization. + name: Rum Retention Filters + - description: |- + Manage teams ownership mappings between RUM views and the teams that own them. + See . + name: Rum Teams Ownership + - description: |- + Configure your [Datadog Salesforce integration](https://docs.datadoghq.com/integrations/salesforce/) + directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/api/latest/salesforce-integration + name: Salesforce Integration + - description: |- + API to create and update scorecard rules and outcomes. See [Scorecards](https://docs.datadoghq.com/service_catalog/scorecards) for more information. + name: Scorecards + - description: |- + The seats API allows you to view, assign, and unassign seats for your organization. + name: Seats + - description: |- + Create and manage your security rules, signals, filters, and more. See the [Datadog Security page](https://docs.datadoghq.com/security/) for more information. + name: "Security Monitoring" + - description: Create, update, delete, and retrieve sensitive data scanner groups and rules. See the [Sensitive Data Scanner page](https://docs.datadoghq.com/sensitive_data_scanner/) for more information. + name: Sensitive Data Scanner + - description: Create, edit, and disable service accounts. See the [Service Accounts page](https://docs.datadoghq.com/account_management/org_settings/service_accounts/) for more information. + name: Service Accounts + - description: |- + API to create, update, retrieve and delete service definitions. + Note: Service Catalog [v3.0 schema](https://docs.datadoghq.com/service_catalog/service_definitions/v3-0/) has new API endpoints documented under [Software Catalog](https://docs.datadoghq.com/api/latest/software-catalog/). Use the following Service Definition endpoints for v2.2 and earlier. + externalDocs: + url: https://docs.datadoghq.com/tracing/service_catalog/ + name: Service Definition + - description: |- + [Service Level Objectives](https://docs.datadoghq.com/monitors/service_level_objectives/#configuration) + (SLOs) are a key part of the site reliability engineering toolkit. + SLOs provide a framework for defining clear targets around application performance, + which ultimately help teams provide a consistent customer experience, + balance feature development with platform stability, + and improve communication with internal and external users. + name: Service Level Objectives + - description: Manage your ServiceNow Integration. ServiceNow is a cloud-based platform that helps organizations manage digital workflows for enterprise operations. + name: ServiceNow Integration + - description: |- + Configure your [Datadog Slack integration](https://docs.datadoghq.com/integrations/slack/) + directly through the Datadog API. + externalDocs: + description: For more information about the Datadog Slack integration, see the integration page. + url: https://docs.datadoghq.com/integrations/slack/ + name: Slack Integration + - description: |- + API to create, update, retrieve, and delete Software Catalog entities. + externalDocs: + url: https://docs.datadoghq.com/service_catalog/service_definitions#metadata-schema-v30-beta + name: Software Catalog + - description: SPA (Spark Pod Autosizing) API. Provides resource recommendations and cost insights to help optimize Spark job configurations. + name: Spa + - description: |- + Search and aggregate your spans from your Datadog platform over HTTP. + name: Spans + - description: |- + Manage configuration of [span-based metrics](https://app.datadoghq.com/apm/traces/generate-metrics) for your organization. See [Generate Metrics from Spans](https://docs.datadoghq.com/tracing/trace_pipeline/generate_metrics/) for more information. + externalDocs: + description: Find out more at + url: https://docs.datadoghq.com/tracing/metrics/metrics_namespace/ + name: Spans Metrics + - description: API for static analysis + name: Static Analysis + - description: Manage your status pages and communicate service disruptions to stakeholders via Datadog's API. See the [Status Pages documentation](https://docs.datadoghq.com/incident_response/status_pages/) for more information. + name: Status Pages + - description: |- + Configure your [Datadog Statuspage integration](https://docs.datadoghq.com/integrations/statuspage/) + directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/api/latest/statuspage-integration + name: Statuspage Integration + - description: Extract watermarks embedded in dashboard screenshots to retrieve cached widget state. + name: Stegadography + - description: |- + Enable Storage Management for S3 buckets, GCS buckets, and Azure containers. Each configuration registers the destination that holds inventory reports for the storage being monitored. + name: Storage Management + - description: |- + Synthetic tests use simulated requests and actions so you can monitor the availability and performance of systems and applications. Datadog supports the following types of synthetic tests: + - [API tests](https://docs.datadoghq.com/synthetics/api_tests/) + - [Browser tests](https://docs.datadoghq.com/synthetics/browser_tests) + - [Network Path tests](https://docs.datadoghq.com/synthetics/network_path_tests/) + - [Mobile Application tests](https://docs.datadoghq.com/synthetics/mobile_app_testing) + You can use the Datadog API to create, manage, and organize tests and test suites programmatically. + For more information, see the [Synthetic Monitoring documentation](https://docs.datadoghq.com/synthetics/). + name: Synthetics + - description: |- + Tag Rules define rules that govern which tag values are accepted for a given tag key, + scoped to a particular telemetry source (such as logs, spans, or metrics). Rules can be + `blocking` (data not matching the rule is rejected) or `surfacing` (matching data is + highlighted but not blocked). Each rule reports a compliance `score` derived from how + much recent telemetry adheres to the rule. + name: Tag Rules + - description: View and manage teams within Datadog. See the [Teams page](https://docs.datadoghq.com/account_management/teams/) for more information. + name: Teams + - description: |- + Search and manage flaky tests through Test Optimization. See the [Test Optimization page](https://docs.datadoghq.com/tests/) for more information. + name: Test Optimization + - description: |- + Manage your Datadog Twilio integration accounts directly through the Datadog API. + Create, update, and delete accounts, configure authentication and settings, and + enable or disable dataflows such as message logs, event logs, alerts, call + summaries, and Cloud Cost Management metrics. See the + [Twilio integration page](https://docs.datadoghq.com/integrations/twilio/) for + more information. + externalDocs: + description: Twilio integration. + url: https://docs.datadoghq.com/integrations/twilio/ + name: Twilio Integration Accounts + - description: |- + The usage metering API allows you to get hourly, daily, and + monthly usage across multiple facets of Datadog. + This API is available to all Pro and Enterprise customers. + + **Note**: Usage data is delayed by up to 72 hours from when it was incurred. + It is retained for 15 months. + + You can retrieve up to 24 hours of hourly usage data for multiple organizations, + and up to two months of hourly usage data for a single organization in one request. + Learn more on the [usage details documentation](https://docs.datadoghq.com/account_management/billing/usage_details/). + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/account_management/billing/usage_details/" + name: Usage Metering + - description: Manage OAuth2 client authorizations at the user level. + name: User Authorized Clients + - description: Create, edit, and disable users. + externalDocs: + url: https://docs.datadoghq.com/account_management/users + name: Users + - description: |- + Manage web integration accounts programmatically through the Datadog API. + See the [Web Integrations page](https://app.datadoghq.com/integrations) for more information. + name: Web Integrations + - description: |- + Configure your [Datadog Webhooks integration](https://docs.datadoghq.com/integrations/webhooks/) + directly through the Datadog API. + externalDocs: + url: https://docs.datadoghq.com/api/latest/webhooks-integration + name: Webhooks Integration + - description: |- + Create, read, update, and delete saved widgets. Widgets are reusable + visualization components stored independently from any dashboard or notebook, + partitioned by experience type and identified by a UUID. + name: Widgets + - description: |- + Datadog Workflow Automation allows you to automate your end-to-end processes by connecting Datadog with the rest of your tech stack. Build workflows to auto-remediate your alerts, streamline your incident and security processes, and reduce manual toil. Workflow Automation supports over 1,000+ OOTB actions, including AWS, JIRA, ServiceNow, GitHub, and OpenAI. Learn more in our Workflow Automation docs [here](https://docs.datadoghq.com/service_management/workflows/). + externalDocs: + description: Find out more at + url: "https://docs.datadoghq.com/service_management/workflows/" + name: Workflow Automation +x-group-parameters: true diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml index c5b28cc..7a597c0 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/provider.yaml @@ -19,7 +19,9 @@ providerServices: $ref: datadog/v00.00.00000/services/apm.yaml title: apm API version: v00.00.00000 - description: datadog apm API + description: >- + Observe, troubleshoot, and improve cloud-scale applications with all + telemetry in context catalog: id: catalog:v00.00.00000 name: catalog @@ -46,7 +48,16 @@ providerServices: $ref: datadog/v00.00.00000/services/dashboards.yaml title: dashboards API version: v00.00.00000 - description: datadog dashboards API + description: >- + Get usage statistics for the dashboards in your organization, including + view + + counts, last-edit times, widget counts, and quality scores. See the + + [Dashboards documentation](https://docs.datadoghq.com/dashboards/) for + more + + information. digital_experience: id: digital_experience:v00.00.00000 name: digital_experience @@ -56,6 +67,15 @@ providerServices: title: digital_experience API version: v00.00.00000 description: datadog digital_experience API + fleet: + id: fleet:v00.00.00000 + name: fleet + preferred: true + service: + $ref: datadog/v00.00.00000/services/fleet.yaml + title: fleet API + version: v00.00.00000 + description: datadog fleet API infrastructure: id: infrastructure:v00.00.00000 name: infrastructure @@ -73,7 +93,18 @@ providerServices: $ref: datadog/v00.00.00000/services/integrations.yaml title: integrations API version: v00.00.00000 - description: datadog integrations API + description: |- + The Integrations API is used to list available integrations + and retrieve information about their installation status. + llm_observability: + id: llm_observability:v00.00.00000 + name: llm_observability + preferred: true + service: + $ref: datadog/v00.00.00000/services/llm_observability.yaml + title: llm_observability API + version: v00.00.00000 + description: datadog llm_observability API logs: id: logs:v00.00.00000 name: logs @@ -82,7 +113,10 @@ providerServices: $ref: datadog/v00.00.00000/services/logs.yaml title: logs API version: v00.00.00000 - description: datadog logs API + description: >- + Search your logs and send them to your Datadog platform over HTTP. See the + [Log Management page](https://docs.datadoghq.com/logs/) for more + information. metrics: id: metrics:v00.00.00000 name: metrics @@ -91,7 +125,34 @@ providerServices: $ref: datadog/v00.00.00000/services/metrics.yaml title: metrics API version: v00.00.00000 - description: datadog metrics API + description: >- + The metrics endpoint allows you to: + + + - Post metrics data so it can be graphed on Datadog’s dashboards + + - Query metrics from any time period (timeseries and scalar) + + - Modify tag configurations for metrics + + - View tags and volumes for metrics + + + **Note**: A graph can only contain a set number of points + + and as the timeframe over which a metric is viewed increases, + + aggregation between points occurs to stay below that set number. + + + The Post, Patch, and Delete `manage_tags` API methods can only be + performed by + + a user who has the `Manage Tags for Metrics` permission. + + + See the [Metrics page](https://docs.datadoghq.com/metrics/) for more + information. monitoring: id: monitoring:v00.00.00000 name: monitoring @@ -157,3 +218,4 @@ config: location: header name: DD-APPLICATION-KEY credentialsenvvar: DD_APP_KEY + snake_case_aliases: true diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/actions.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/actions.yaml index 4bb642d..85dfcf8 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/actions.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/actions.yaml @@ -12,6 +12,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A sample datastore + modified_at: '2024-01-01T00:00:00+00:00' + name: Example Datastore + org_id: 123 + primary_column_name: id + primary_key_generation_strategy: none + id: 00000000-0000-0000-0000-000000000001 + type: datastores schema: $ref: '#/components/schemas/DatastoreArray' description: OK @@ -30,6 +44,16 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: datastore-name + org_access: contributor + primary_column_name: primaryKey + primary_key_generation_strategy: none + type: datastores schema: $ref: '#/components/schemas/CreateAppsDatastoreRequest' required: true @@ -37,6 +61,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000002 + type: datastores schema: $ref: '#/components/schemas/CreateAppsDatastoreResponse' description: OK @@ -98,6 +128,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A sample datastore + modified_at: '2024-01-01T00:00:00+00:00' + name: Example Datastore + org_id: 123 + primary_column_name: id + primary_key_generation_strategy: none + id: 00000000-0000-0000-0000-000000000003 + type: datastores schema: $ref: '#/components/schemas/Datastore' description: OK @@ -135,6 +179,11 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + type: datastores schema: $ref: '#/components/schemas/UpdateAppsDatastoreRequest' required: true @@ -142,6 +191,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: An updated datastore + modified_at: '2024-01-01T00:00:00+00:00' + name: Updated Datastore + org_id: 123 + primary_column_name: id + primary_key_generation_strategy: none + id: 00000000-0000-0000-0000-000000000004 + type: datastores schema: $ref: '#/components/schemas/Datastore' description: OK @@ -180,6 +243,14 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + id: a7656bcc-51d4-4884-adf7-4d0d9a3e0633 + item_key: primaryKey + type: items schema: $ref: '#/components/schemas/DeleteAppsDatastoreItemRequest' required: true @@ -187,6 +258,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000007 + type: items schema: $ref: '#/components/schemas/DeleteAppsDatastoreItemResponse' description: OK @@ -212,10 +289,7 @@ paths: permissions: - apps_datastore_write get: - description: >- - Lists items from a datastore. You can filter the results by specifying - either an item key or a filter query parameter, but not both at the same - time. Supports server-side pagination for large datasets. + description: Lists items from a datastore. You can filter the results by specifying either an item key or a filter query parameter, but not both at the same time. Supports server-side pagination for large datasets. operationId: ListDatastoreItems parameters: - description: The unique identifier of the datastore to retrieve. @@ -224,24 +298,18 @@ paths: required: true schema: type: string - - description: >- - Optional query filter to search items using the [logs search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). + - description: Optional query filter to search items using the [logs search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). in: query name: filter schema: type: string - - description: >- - Optional primary key value to retrieve a specific item. Cannot be - used together with the filter parameter. + - description: Optional primary key value to retrieve a specific item. Cannot be used together with the filter parameter. in: query name: item_key schema: maxLength: 256 type: string - - description: >- - Optional field to limit the number of items to return per page for - pagination. Up to 100 items can be returned per page. + - description: Optional field to limit the number of items to return per page for pagination. Up to 100 items can be returned per page. in: query name: page[limit] schema: @@ -249,17 +317,13 @@ paths: maximum: 100 minimum: 1 type: integer - - description: >- - Optional field to offset the number of items to skip from the - beginning of the result set for pagination. + - description: Optional field to offset the number of items to skip from the beginning of the result set for pagination. in: query name: page[offset] schema: format: int64 type: integer - - description: >- - Optional field to sort results by. Prefix with '-' for descending - order (e.g., '-created_at'). + - description: Optional field to sort results by. Prefix with '-' for descending order (e.g., '-created_at'). in: query name: sort schema: @@ -268,6 +332,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + modified_at: '2024-01-01T00:00:00+00:00' + org_id: 123 + primary_column_name: id + store_id: 00000000-0000-0000-0000-000000000006 + value: + key: example-value + id: 00000000-0000-0000-0000-000000000005 + type: items schema: $ref: '#/components/schemas/ItemApiPayloadArray' description: OK @@ -305,6 +383,17 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + item_changes: + ops_set: + count: 42 + status: active + item_key: my-item-key + type: items schema: $ref: '#/components/schemas/UpdateAppsDatastoreItemRequest' required: true @@ -312,6 +401,21 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + modified_at: '2024-01-01T00:00:00+00:00' + org_id: 123 + primary_column_name: id + store_id: 00000000-0000-0000-0000-000000000009 + value: + count: 42 + status: active + id: 00000000-0000-0000-0000-000000000008 + type: items schema: $ref: '#/components/schemas/ItemApiPayload' description: OK @@ -337,10 +441,69 @@ paths: permissions: - apps_datastore_write /api/v2/actions-datastores/{datastore_id}/items/bulk: + delete: + description: Deletes multiple items from a datastore by their keys in a single operation. + operationId: BulkDeleteDatastoreItems + parameters: + - description: The ID of the datastore. + in: path + name: datastore_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: items + schema: + $ref: '#/components/schemas/BulkDeleteAppsDatastoreItemsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000010 + type: items + schema: + $ref: '#/components/schemas/DeleteAppsDatastoreItemResponseArray' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Bulk delete datastore items + tags: + - Actions Datastores + x-permission: + operator: OR + permissions: + - apps_datastore_write post: - description: >- - Creates or replaces multiple items in a datastore by their keys in a - single operation. + description: Creates or replaces multiple items in a datastore by their keys in a single operation. operationId: BulkWriteDatastoreItems parameters: - description: The unique identifier of the datastore to retrieve. @@ -352,6 +515,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + conflict_mode: overwrite_on_conflict + values: + - data: example data + key: value + - data: example data2 + key: value2 + type: items schema: $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequest' required: true @@ -359,6 +534,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000011 + type: items schema: $ref: '#/components/schemas/PutAppsDatastoreItemResponseArray' description: OK @@ -406,6 +587,15 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: app_key_registration + meta: + total: 1 + total_filtered: 1 schema: $ref: '#/components/schemas/ListAppKeyRegistrationsResponse' description: OK @@ -485,6 +675,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: app_key_registration schema: $ref: '#/components/schemas/GetAppKeyRegistrationResponse' description: OK @@ -528,6 +724,12 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: app_key_registration schema: $ref: '#/components/schemas/RegisterAppKeyResponse' description: Created @@ -560,14 +762,27 @@ paths: - service_account_write /api/v2/actions/connections: post: - description: >- - Create a new Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + description: Create a new Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). operationId: CreateActionConnection requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + integration: + credentials: + account_id: '123456789123' + role: MyRoleUpdated + type: AWSAssumeRole + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + type: action_connection schema: $ref: '#/components/schemas/CreateActionConnectionRequest' required: true @@ -575,6 +790,19 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + id: 00000000-0000-0000-0000-000000000001 + type: action_connection schema: $ref: '#/components/schemas/CreateActionConnectionResponse' description: Successfully created Action Connection @@ -601,12 +829,7 @@ paths: - Action Connection /api/v2/actions/connections/{connection_id}: delete: - description: >- - Delete an existing Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Delete an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: DeleteActionConnection parameters: - $ref: '#/components/parameters/ConnectionId' @@ -639,10 +862,7 @@ paths: permissions: - connection_write get: - description: >- - Get an existing Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + description: Get an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). operationId: GetActionConnection parameters: - $ref: '#/components/parameters/ConnectionId' @@ -650,6 +870,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + id: 00000000-0000-0000-0000-000000000002 + type: action_connection schema: $ref: '#/components/schemas/GetActionConnectionResponse' description: Successfully get Action Connection @@ -681,16 +914,25 @@ paths: tags: - Action Connection patch: - description: >- - Update an existing Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + description: Update an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). operationId: UpdateActionConnection parameters: - $ref: '#/components/parameters/ConnectionId' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + type: action_connection schema: $ref: '#/components/schemas/UpdateActionConnectionRequest' description: Update an existing Action Connection request body @@ -699,6 +941,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + integration: + type: AWS + name: My AWS Connection + tags: + - env:prod + - team:action-platform + id: 00000000-0000-0000-0000-000000000003 + type: action_connection schema: $ref: '#/components/schemas/UpdateActionConnectionResponse' description: Successfully updated Action Connection @@ -729,15 +984,407 @@ paths: summary: Update an existing Action Connection tags: - Action Connection + /api/v2/actions/execution-policies: + get: + description: Retrieve a list of execution policies for the current organization. + operationId: ListExecutionPolicies + parameters: + - description: The number of execution policies to return per page. + example: 100 + in: query + name: page[size] + required: false + schema: + default: 100 + format: int32 + maximum: 100 + type: integer + - description: The page number to return. + example: 0 + in: query + name: page[number] + required: false + schema: + default: 0 + format: int32 + maximum: 1000 + minimum: 0 + type: integer + - description: Filter execution policies by name. + example: Block prod restarts + in: query + name: filter[name] + required: false + schema: + type: string + - description: Filter execution policies by a list of IDs. + example: + - 3fa85f64-5717-4562-b3fc-2c963f66afa6 + explode: true + in: query + name: filter[ids] + required: false + schema: + items: + type: string + type: array + style: form + - description: Filter execution policies by a list of integrations. + example: + - INTEGRATION_SCRIPT + explode: true + in: query + name: filter[integration] + required: false + schema: + items: + $ref: '#/components/schemas/ExecutionPolicyIntegration' + type: array + style: form + - description: Filter execution policies by a list of effects. + example: + - allow + explode: true + in: query + name: filter[effects] + required: false + schema: + items: + $ref: '#/components/schemas/ExecutionPolicyEffect' + type: array + style: form + - description: Filter execution policies by a list of creator IDs. + example: + - 3fa85f64-5717-4562-b3fc-2c963f66afa6 + explode: true + in: query + name: filter[creator_ids] + required: false + schema: + items: + type: string + type: array + style: form + - description: |- + The sort order for the results. Prefix a field with `-` to sort in + descending order. Valid fields are `name`, `effect`, `integration`, + `created_at`, and `updated_at`. + example: + - '-created_at' + explode: true + in: query + name: sort + required: false + schema: + items: + type: string + type: array + style: form + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + action_pattern: + action_fqns: + - com.datadoghq.script.* + integration: INTEGRATION_SCRIPT + created_at: '2026-01-15T10:00:00.000Z' + created_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + effect: allow + name: Block prod restarts + targets: [] + updated_at: '2026-01-15T10:00:00.000Z' + updated_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + version: 1 + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: execution_policy + meta: + page: + total: 1 + schema: + $ref: '#/components/schemas/ExecutionPolicyListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List execution policies + tags: + - Execution Policy + x-permission: + operator: OR + permissions: + - execution_groups_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new execution policy. + operationId: CreateExecutionPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - com.datadoghq.script.* + integration: INTEGRATION_SCRIPT + effect: allow + name: Block prod restarts + type: execution_policy + schema: + $ref: '#/components/schemas/ExecutionPolicyCreateRequest' + description: The execution policy to create. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - com.datadoghq.script.* + integration: INTEGRATION_SCRIPT + created_at: '2026-01-15T10:00:00.000Z' + created_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + effect: allow + name: Block prod restarts + targets: [] + updated_at: '2026-01-15T10:00:00.000Z' + updated_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + version: 1 + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: execution_policy + schema: + $ref: '#/components/schemas/ExecutionPolicyResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an execution policy + tags: + - Execution Policy + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - execution_groups_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/actions/execution-policies/{policy_id}: + delete: + description: Delete a specific execution policy. + operationId: DeleteExecutionPolicy + parameters: + - $ref: '#/components/parameters/ExecutionPolicyId' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an execution policy + tags: + - Execution Policy + x-permission: + operator: OR + permissions: + - execution_groups_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve an existing execution policy by ID. + operationId: GetExecutionPolicy + parameters: + - $ref: '#/components/parameters/ExecutionPolicyId' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - com.datadoghq.script.* + integration: INTEGRATION_SCRIPT + created_at: '2026-01-15T10:00:00.000Z' + created_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + effect: allow + name: Block prod restarts + targets: [] + updated_at: '2026-01-15T10:00:00.000Z' + updated_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + version: 1 + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: execution_policy + schema: + $ref: '#/components/schemas/ExecutionPolicyResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an execution policy + tags: + - Execution Policy + x-permission: + operator: OR + permissions: + - execution_groups_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Update an existing execution policy. + Returns the execution policy object when the request is successful. + operationId: UpdateExecutionPolicy + parameters: + - $ref: '#/components/parameters/ExecutionPolicyId' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - com.datadoghq.script.* + integration: INTEGRATION_SCRIPT + effect: allow + name: Block prod restarts + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: execution_policy + schema: + $ref: '#/components/schemas/ExecutionPolicyUpdateRequest' + description: The new execution policy. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + action_pattern: + action_fqns: + - com.datadoghq.script.* + integration: INTEGRATION_SCRIPT + created_at: '2026-01-15T10:00:00.000Z' + created_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + effect: allow + name: Block prod restarts + targets: [] + updated_at: '2026-01-15T10:00:00.000Z' + updated_by: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + version: 2 + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: execution_policy + schema: + $ref: '#/components/schemas/ExecutionPolicyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an execution policy + tags: + - Execution Policy + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - execution_groups_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). components: schemas: DatastoreArray: description: A collection of datastores returned by list operations. properties: data: - description: >- - An array of datastore objects containing their configurations and - metadata. + description: An array of datastore objects containing their configurations and metadata. items: $ref: '#/components/schemas/DatastoreData' type: array @@ -745,17 +1392,13 @@ components: - data type: object CreateAppsDatastoreRequest: - description: >- - Request to create a new datastore with specified configuration and - metadata. + description: Request to create a new datastore with specified configuration and metadata. properties: data: $ref: '#/components/schemas/CreateAppsDatastoreRequestData' type: object CreateAppsDatastoreResponse: - description: >- - Response after successfully creating a new datastore, containing the - datastore's assigned ID. + description: Response after successfully creating a new datastore, containing the datastore's assigned ID. properties: data: $ref: '#/components/schemas/CreateAppsDatastoreResponseData' @@ -778,9 +1421,7 @@ components: $ref: '#/components/schemas/DatastoreData' type: object UpdateAppsDatastoreRequest: - description: >- - Request to update a datastore's configuration such as its name or - description. + description: Request to update a datastore's configuration such as its name or description. properties: data: $ref: '#/components/schemas/UpdateAppsDatastoreRequestData' @@ -808,9 +1449,7 @@ components: type: array meta: $ref: '#/components/schemas/ItemApiPayloadMeta' - description: >- - Metadata about the included items, including pagination info and - datastore schema. + description: Metadata about the included items, including pagination info and datastore schema. required: - data type: object @@ -826,6 +1465,23 @@ components: data: $ref: '#/components/schemas/ItemApiPayloadData' type: object + BulkDeleteAppsDatastoreItemsRequest: + description: Request to delete items from a datastore. + properties: + data: + $ref: '#/components/schemas/BulkDeleteAppsDatastoreItemsRequestData' + type: object + DeleteAppsDatastoreItemResponseArray: + description: The definition of `DeleteAppsDatastoreItemResponseArray` object. + properties: + data: + description: The `DeleteAppsDatastoreItemResponseArray` `data`. + items: + $ref: '#/components/schemas/DeleteAppsDatastoreItemResponseData' + type: array + required: + - data + type: object BulkPutAppsDatastoreItemsRequest: description: Request to insert multiple items into a datastore in a single operation. properties: @@ -833,14 +1489,10 @@ components: $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequestData' type: object PutAppsDatastoreItemResponseArray: - description: >- - Response after successfully inserting multiple items into a datastore, - containing the identifiers of the created items. + description: Response after successfully inserting multiple items into a datastore, containing the identifiers of the created items. properties: data: - description: >- - An array of data objects containing the identifiers of the - successfully inserted items. + description: An array of data objects containing the identifiers of the successfully inserted items. items: $ref: '#/components/schemas/PutAppsDatastoreItemResponseData' maxItems: 100 @@ -905,27 +1557,85 @@ components: data: $ref: '#/components/schemas/ActionConnectionData' type: object - DatastoreData: - description: >- - Core information about a datastore, including its unique identifier and - attributes. + ExecutionPolicyIntegration: + description: The integration the action pattern applies to. + enum: + - INTEGRATION_KUBERNETES + - INTEGRATION_SCRIPT + - INTEGRATION_REMOTE_ACTION + example: INTEGRATION_SCRIPT + type: string + x-enum-varnames: + - INTEGRATION_KUBERNETES + - INTEGRATION_SCRIPT + - INTEGRATION_REMOTE_ACTION + ExecutionPolicyEffect: + description: Whether the policy allows or denies matching actions. + enum: + - allow + - deny + example: allow + type: string + x-enum-varnames: + - ALLOW + - DENY + ExecutionPolicyListResponse: + description: Response object that includes a list of execution policies. properties: - attributes: - $ref: '#/components/schemas/DatastoreDataAttributes' - id: - description: The unique identifier of the datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' + data: + description: The execution policies. + items: + $ref: '#/components/schemas/ExecutionPolicyResponseData' + type: array + meta: + $ref: '#/components/schemas/ExecutionPolicyListResponseMeta' required: - - type + - data + - meta type: object - APIErrorResponse: - description: API error response. + ExecutionPolicyCreateRequest: + description: Request object that includes the execution policy to create. properties: - errors: - description: A list of errors. - example: + data: + $ref: '#/components/schemas/ExecutionPolicyCreateRequestData' + required: + - data + type: object + ExecutionPolicyResponse: + description: Response object that includes a single execution policy. + properties: + data: + $ref: '#/components/schemas/ExecutionPolicyResponseData' + required: + - data + type: object + ExecutionPolicyUpdateRequest: + description: Request object that includes the execution policy to update. + properties: + data: + $ref: '#/components/schemas/ExecutionPolicyUpdateRequestData' + required: + - data + type: object + DatastoreData: + description: Core information about a datastore, including its unique identifier and attributes. + properties: + attributes: + $ref: '#/components/schemas/DatastoreDataAttributes' + id: + description: The unique identifier of the datastore. + type: string + type: + $ref: '#/components/schemas/DatastoreDataType' + required: + - type + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: - Bad Request items: description: A list of items. @@ -936,16 +1646,12 @@ components: - errors type: object CreateAppsDatastoreRequestData: - description: >- - Data wrapper containing the configuration needed to create a new - datastore. + description: Data wrapper containing the configuration needed to create a new datastore. properties: attributes: $ref: '#/components/schemas/CreateAppsDatastoreRequestDataAttributes' id: - description: >- - Optional ID for the new datastore. If not provided, one will be - generated automatically. + description: Optional ID for the new datastore. If not provided, one will be generated automatically. type: string type: $ref: '#/components/schemas/DatastoreDataType' @@ -967,9 +1673,7 @@ components: description: API error response body properties: detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. + description: A human-readable explanation specific to this occurrence of the error. example: Missing required attribute in body type: string meta: @@ -988,9 +1692,7 @@ components: type: string type: object UpdateAppsDatastoreRequestData: - description: >- - Data wrapper containing the datastore identifier and the attributes to - update. + description: Data wrapper containing the datastore identifier and the attributes to update. properties: attributes: $ref: '#/components/schemas/UpdateAppsDatastoreRequestDataAttributes' @@ -1003,9 +1705,7 @@ components: - type type: object DeleteAppsDatastoreItemRequestData: - description: >- - Data wrapper containing the information needed to identify and delete a - specific datastore item. + description: Data wrapper containing the information needed to identify and delete a specific datastore item. properties: attributes: $ref: '#/components/schemas/DeleteAppsDatastoreItemRequestDataAttributes' @@ -1015,9 +1715,7 @@ components: - type type: object DeleteAppsDatastoreItemResponseData: - description: >- - Data containing the identifier of the datastore item that was - successfully deleted. + description: Data containing the identifier of the datastore item that was successfully deleted. properties: id: description: The unique identifier of the item that was deleted. @@ -1041,9 +1739,7 @@ components: - type type: object ItemApiPayloadMeta: - description: >- - Additional metadata about a collection of datastore items, including - pagination and schema information. + description: Additional metadata about a collection of datastore items, including pagination and schema information. properties: page: $ref: '#/components/schemas/ItemApiPayloadMetaPage' @@ -1051,9 +1747,7 @@ components: $ref: '#/components/schemas/ItemApiPayloadMetaSchema' type: object UpdateAppsDatastoreItemRequestData: - description: >- - Data wrapper containing the item identifier and the changes to apply - during the update operation. + description: Data wrapper containing the item identifier and the changes to apply during the update operation. properties: attributes: $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributes' @@ -1065,10 +1759,21 @@ components: required: - type type: object + BulkDeleteAppsDatastoreItemsRequestData: + description: Data wrapper containing the data needed to delete items from a datastore. + properties: + attributes: + $ref: '#/components/schemas/BulkDeleteAppsDatastoreItemsRequestDataAttributes' + id: + description: ID for the datastore of the items to delete. + type: string + type: + $ref: '#/components/schemas/BulkDeleteAppsDatastoreItemsRequestDataType' + required: + - type + type: object BulkPutAppsDatastoreItemsRequestData: - description: >- - Data wrapper containing the items to insert and their configuration for - the bulk insert operation. + description: Data wrapper containing the items to insert and their configuration for the bulk insert operation. properties: attributes: $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequestDataAttributes' @@ -1078,9 +1783,7 @@ components: - type type: object PutAppsDatastoreItemResponseData: - description: >- - Data containing the identifier of a single item that was successfully - inserted into the datastore. + description: Data containing the identifier of a single item that was successfully inserted into the datastore. properties: id: description: The unique identifier assigned to the inserted item. @@ -1112,9 +1815,7 @@ components: format: int64 type: integer total_filtered: - description: >- - The total number of app key registrations that match the specified - filters. + description: The total number of app key registrations that match the specified filters. example: 1 format: int64 type: integer @@ -1145,6 +1846,58 @@ components: - type - attributes type: object + ExecutionPolicyResponseData: + description: Object for a single execution policy. + properties: + attributes: + $ref: '#/components/schemas/ExecutionPolicyAttributes' + id: + description: The ID of the execution policy. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + readOnly: true + type: string + type: + $ref: '#/components/schemas/ExecutionPolicyType' + required: + - id + - type + - attributes + type: object + ExecutionPolicyListResponseMeta: + description: Pagination metadata for the list of execution policies. + properties: + page: + $ref: '#/components/schemas/ExecutionPolicyListResponsePage' + required: + - page + type: object + ExecutionPolicyCreateRequestData: + description: Object for a single execution policy. + properties: + attributes: + $ref: '#/components/schemas/ExecutionPolicyWriteAttributes' + type: + $ref: '#/components/schemas/ExecutionPolicyType' + required: + - type + - attributes + type: object + ExecutionPolicyUpdateRequestData: + description: Object for a single execution policy. + properties: + attributes: + $ref: '#/components/schemas/ExecutionPolicyWriteAttributes' + id: + description: The ID of the execution policy. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + type: + $ref: '#/components/schemas/ExecutionPolicyType' + required: + - id + - type + - attributes + type: object DatastoreDataAttributes: description: Detailed information about a datastore. properties: @@ -1198,8 +1951,7 @@ components: example: datastore-name type: string org_access: - $ref: >- - #/components/schemas/CreateAppsDatastoreRequestDataAttributesOrgAccess + $ref: '#/components/schemas/CreateAppsDatastoreRequestDataAttributesOrgAccess' primary_column_name: $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' primary_key_generation_strategy: @@ -1212,9 +1964,7 @@ components: description: References to the source of the error. properties: header: - description: >- - A string indicating the name of a single request header which caused - the error. + description: A string indicating the name of a single request header which caused the error. example: Authorization type: string parameter: @@ -1222,9 +1972,7 @@ components: example: limit type: string pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. + description: A JSON pointer to the value in the request document that caused the error. example: /data/attributes/title type: string type: object @@ -1246,9 +1994,7 @@ components: example: a7656bcc-51d4-4884-adf7-4d0d9a3e0633 type: string item_key: - description: >- - The primary key value that identifies the item to delete. Cannot - exceed 256 characters. + description: The primary key value that identifies the item to delete. Cannot exceed 256 characters. example: primaryKey maxLength: 256 type: string @@ -1306,9 +2052,7 @@ components: type: integer type: object ItemApiPayloadMetaSchema: - description: >- - Schema information about the datastore, including its primary key and - field definitions. + description: Schema information about the datastore, including its primary key and field definitions. properties: fields: description: An array describing the columns available in this datastore. @@ -1320,20 +2064,15 @@ components: type: string type: object UpdateAppsDatastoreItemRequestDataAttributes: - description: >- - Attributes for updating a datastore item, including the item key and - changes to apply. + description: Attributes for updating a datastore item, including the item key and changes to apply. properties: id: description: The unique identifier of the item being updated. type: string item_changes: - $ref: >- - #/components/schemas/UpdateAppsDatastoreItemRequestDataAttributesItemChanges + $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributesItemChanges' item_key: - description: >- - The primary key that identifies the item to update. Cannot exceed - 256 characters. + description: The primary key that identifies the item to update. Cannot exceed 256 characters. example: '' maxLength: 256 type: string @@ -1350,6 +2089,26 @@ components: type: string x-enum-varnames: - ITEMS + BulkDeleteAppsDatastoreItemsRequestDataAttributes: + description: Attributes of request data to delete items from a datastore. + properties: + item_keys: + description: List of primary keys identifying items to delete from datastore. Up to 100 items can be deleted in a single request. + items: + description: A primary key identifying a datastore item to delete. + type: string + maxItems: 100 + type: array + type: object + BulkDeleteAppsDatastoreItemsRequestDataType: + default: items + description: Items resource type. + enum: + - items + example: items + type: string + x-enum-varnames: + - ITEMS BulkPutAppsDatastoreItemsRequestDataAttributes: description: Configuration for bulk inserting multiple items into a datastore. properties: @@ -1377,6 +2136,18 @@ components: description: Name of the connection example: My AWS Connection type: string + tags: + description: |- + Tags associated with the connection. Each tag must follow the `key:value` format. + The `default` tag key is reserved. + example: + - env:prod + - team:action-platform + items: + description: A non-reserved tag in `key:value` format. + pattern: ^[A-Za-z0-9._/-]+:[A-Za-z0-9._/-]+$ + type: string + type: array required: - name - integration @@ -1398,21 +2169,126 @@ components: description: Name of the connection example: My AWS Connection type: string + tags: + description: |- + Tags associated with the connection. Each tag must follow the `key:value` format. + The `default` tag key is reserved. + example: + - env:prod + - team:action-platform + items: + description: A non-reserved tag in `key:value` format. + pattern: ^[A-Za-z0-9._/-]+:[A-Za-z0-9._/-]+$ + type: string + type: array + type: object + ExecutionPolicyAttributes: + description: An execution policy. + properties: + action_pattern: + $ref: '#/components/schemas/ExecutionPolicyActionPattern' + created_at: + description: The date and time the execution policy was created. + example: '2026-01-15T10:00:00.000Z' + format: date-time + type: string + created_by: + description: The ID of the user who created the execution policy. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + effect: + $ref: '#/components/schemas/ExecutionPolicyEffect' + name: + description: The name of the execution policy. + example: Block prod restarts + type: string + scope: + $ref: '#/components/schemas/ExecutionPolicyScope' + targets: + description: The targets this policy applies to. + items: + $ref: '#/components/schemas/ExecutionPolicyTarget' + type: array + updated_at: + description: The date and time the execution policy was last updated. + example: '2026-01-15T10:00:00.000Z' + format: date-time + type: string + updated_by: + description: The ID of the user who last updated the execution policy. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + version: + description: The version of the execution policy. Incremented on every update. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - name + - effect + - action_pattern + - targets + - version + - created_at + - updated_at + - created_by + - updated_by + type: object + ExecutionPolicyType: + default: execution_policy + description: The type of the resource. The value should always be `execution_policy`. + enum: + - execution_policy + example: execution_policy + type: string + x-enum-varnames: + - EXECUTION_POLICY + ExecutionPolicyListResponsePage: + description: Pagination details. + properties: + total: + description: The total number of execution policies matching the query. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - total + type: object + ExecutionPolicyWriteAttributes: + description: Attributes used to create or update an execution policy. + properties: + action_pattern: + $ref: '#/components/schemas/ExecutionPolicyActionPattern' + effect: + $ref: '#/components/schemas/ExecutionPolicyEffect' + name: + description: The name of the execution policy. + example: Block prod restarts + type: string + scope: + $ref: '#/components/schemas/ExecutionPolicyScope' + targets: + description: The targets this policy applies to. + items: + $ref: '#/components/schemas/ExecutionPolicyTarget' + type: array + required: + - name + - effect + - action_pattern type: object DatastoreAttributesPrimaryColumnName: - description: >- - The name of the primary key column for this datastore. Primary column - names: + description: |- + The name of the primary key column for this datastore. Primary column names: - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm) - Cannot exceed 63 characters example: '' maxLength: 63 type: string DatastorePrimaryKeyGenerationStrategy: - description: >- - Can be set to `uuid` to automatically generate primary keys when new - items are added. Default value is `none`, which requires you to supply a - primary key for each new item. + description: Can be set to `uuid` to automatically generate primary keys when new items are added. Default value is `none`, which requires you to supply a primary key for each new item. enum: - none - uuid @@ -1421,9 +2297,7 @@ components: - NONE - UUID CreateAppsDatastoreRequestDataAttributesOrgAccess: - description: >- - The organization access level for the datastore. For example, - 'contributor'. + description: The organization access level for the datastore. For example, 'contributor'. enum: - contributor - viewer @@ -1445,9 +2319,7 @@ components: example: '' type: string type: - description: >- - The data type of this column. For example, 'string', 'number', or - 'boolean'. + description: The data type of this column. For example, 'string', 'number', or 'boolean'. example: '' type: string required: @@ -1459,15 +2331,11 @@ components: properties: ops_set: additionalProperties: {} - description: >- - Set operation that contains key-value pairs to set on the datastore - item. + description: Set operation that contains key-value pairs to set on the datastore item. type: object type: object DatastoreItemConflictMode: - description: >- - How to handle conflicts when inserting items that already exist in the - datastore. + description: How to handle conflicts when inserting items that already exist in the datastore. enum: - fail_on_conflict - overwrite_on_conflict @@ -1477,10 +2345,7 @@ components: - FAIL_ON_CONFLICT - OVERWRITE_ON_CONFLICT DatastoreItemValues: - description: >- - An array of items to add to the datastore, where each item is a set of - key-value pairs representing the item's data. Up to 100 items can be - updated in a single request. + description: An array of items to add to the datastore, where each item is a set of key-value pairs representing the item's data. Up to 100 items can be updated in a single request. example: - data: example data key: value @@ -1488,66 +2353,90 @@ components: key: value2 items: additionalProperties: {} - description: >- - A single item's data as key-value pairs. Key names cannot exceed 63 - characters. + description: A single item's data as key-value pairs. Key names cannot exceed 63 characters. type: object maxItems: 100 type: array ActionConnectionIntegration: description: The definition of `ActionConnectionIntegration` object. - oneOf: - - $ref: '#/components/schemas/AWSIntegration' - - $ref: '#/components/schemas/AnthropicIntegration' - - $ref: '#/components/schemas/AsanaIntegration' - - $ref: '#/components/schemas/AzureIntegration' - - $ref: '#/components/schemas/CircleCIIntegration' - - $ref: '#/components/schemas/ClickupIntegration' - - $ref: '#/components/schemas/CloudflareIntegration' - - $ref: '#/components/schemas/ConfigCatIntegration' - - $ref: '#/components/schemas/DatadogIntegration' - - $ref: '#/components/schemas/FastlyIntegration' - - $ref: '#/components/schemas/FreshserviceIntegration' - - $ref: '#/components/schemas/GCPIntegration' - - $ref: '#/components/schemas/GeminiIntegration' - - $ref: '#/components/schemas/GitlabIntegration' - - $ref: '#/components/schemas/GreyNoiseIntegration' - - $ref: '#/components/schemas/HTTPIntegration' - - $ref: '#/components/schemas/LaunchDarklyIntegration' - - $ref: '#/components/schemas/NotionIntegration' - - $ref: '#/components/schemas/OktaIntegration' - - $ref: '#/components/schemas/OpenAIIntegration' - - $ref: '#/components/schemas/ServiceNowIntegration' - - $ref: '#/components/schemas/SplitIntegration' - - $ref: '#/components/schemas/StatsigIntegration' - - $ref: '#/components/schemas/VirusTotalIntegration' + properties: + credentials: + $ref: '#/components/schemas/AWSCredentials' + type: + $ref: '#/components/schemas/AWSIntegrationType' + base_url: + description: Base HTTP url for the integration + example: http://datadoghq.com + type: string + required: + - type + - credentials + - base_url + type: object ActionConnectionIntegrationUpdate: description: The definition of `ActionConnectionIntegrationUpdate` object. - oneOf: - - $ref: '#/components/schemas/AWSIntegrationUpdate' - - $ref: '#/components/schemas/AnthropicIntegrationUpdate' - - $ref: '#/components/schemas/AsanaIntegrationUpdate' - - $ref: '#/components/schemas/AzureIntegrationUpdate' - - $ref: '#/components/schemas/CircleCIIntegrationUpdate' - - $ref: '#/components/schemas/ClickupIntegrationUpdate' - - $ref: '#/components/schemas/CloudflareIntegrationUpdate' - - $ref: '#/components/schemas/ConfigCatIntegrationUpdate' - - $ref: '#/components/schemas/DatadogIntegrationUpdate' - - $ref: '#/components/schemas/FastlyIntegrationUpdate' - - $ref: '#/components/schemas/FreshserviceIntegrationUpdate' - - $ref: '#/components/schemas/GCPIntegrationUpdate' - - $ref: '#/components/schemas/GeminiIntegrationUpdate' - - $ref: '#/components/schemas/GitlabIntegrationUpdate' - - $ref: '#/components/schemas/GreyNoiseIntegrationUpdate' - - $ref: '#/components/schemas/HTTPIntegrationUpdate' - - $ref: '#/components/schemas/LaunchDarklyIntegrationUpdate' - - $ref: '#/components/schemas/NotionIntegrationUpdate' - - $ref: '#/components/schemas/OktaIntegrationUpdate' - - $ref: '#/components/schemas/OpenAIIntegrationUpdate' - - $ref: '#/components/schemas/ServiceNowIntegrationUpdate' - - $ref: '#/components/schemas/SplitIntegrationUpdate' - - $ref: '#/components/schemas/StatsigIntegrationUpdate' - - $ref: '#/components/schemas/VirusTotalIntegrationUpdate' + properties: + credentials: + $ref: '#/components/schemas/AWSCredentialsUpdate' + type: + $ref: '#/components/schemas/AWSIntegrationType' + base_url: + description: Base HTTP url for the integration + example: http://datadoghq.com + type: string + required: + - type + type: object + ExecutionPolicyActionPattern: + description: The set of actions this policy applies to. + properties: + action_fqns: + description: |- + The fully qualified action names this policy matches. Use `*` to match all actions + of the integration, or a fully qualified name prefixed with the integration's action + namespace (for example `com.datadoghq.script.*` for the Script integration). + example: + - com.datadoghq.script.* + items: + type: string + type: array + integration: + $ref: '#/components/schemas/ExecutionPolicyIntegration' + required: + - integration + - action_fqns + type: object + ExecutionPolicyScope: + description: |- + Restricts where the policy applies. At most one of `kubernetes`, `scripts`, + or `remote_action_rshell` can be set. An empty object means the policy has + no scope restriction. + properties: + kubernetes: + $ref: '#/components/schemas/ExecutionPolicyKubernetesScope' + remote_action_rshell: + $ref: '#/components/schemas/ExecutionPolicyRemoteActionRshellScope' + scripts: + $ref: '#/components/schemas/ExecutionPolicyScriptScope' + type: object + ExecutionPolicyTarget: + description: A target this policy is scoped to, expressed as a set of Agent tags. + properties: + agent_tags: + description: The Agent tags identifying the target. + example: + - env:prod + items: + type: string + type: array + name: + description: A human-readable name for the target. + example: Production hosts + nullable: true + type: string + required: + - agent_tags + type: object AWSIntegration: description: The definition of `AWSIntegration` object. properties: @@ -2061,10 +2950,68 @@ components: required: - type type: object + ExecutionPolicyKubernetesScope: + description: Restricts the policy to specific Kubernetes namespaces. + properties: + rules: + description: The Kubernetes scope rules. + items: + $ref: '#/components/schemas/ExecutionPolicyKubernetesScopeRule' + type: array + required: + - rules + type: object + ExecutionPolicyRemoteActionRshellScope: + description: Restricts the policy to specific remote shell paths. + properties: + rules: + description: The remote shell scope rules. + items: + $ref: '#/components/schemas/ExecutionPolicyRemoteActionRshellScopeRule' + type: array + required: + - rules + type: object + ExecutionPolicyScriptScope: + description: Restricts the policy to specific scripts. + properties: + rules: + description: The script scope rules. + items: + $ref: '#/components/schemas/ExecutionPolicyScriptScopeRule' + type: array + required: + - rules + type: object AWSCredentials: description: The definition of `AWSCredentials` object. - oneOf: - - $ref: '#/components/schemas/AWSAssumeRole' + properties: + account_id: + description: AWS account the connection is created for + example: '111222333444' + pattern: ^\d{12}$ + type: string + external_id: + description: External ID used to scope which connection can be used to assume the role + example: 33a1011635c44b38a064cf14e82e1d8f + readOnly: true + type: string + principal_id: + description: AWS account that will assume the role + example: '123456789012' + readOnly: true + type: string + role: + description: Role to assume + example: my-role + type: string + type: + $ref: '#/components/schemas/AWSAssumeRoleType' + required: + - type + - account_id + - role + type: object AWSIntegrationType: description: The definition of `AWSIntegrationType` object. enum: @@ -2075,8 +3022,17 @@ components: - AWS AnthropicCredentials: description: The definition of the `AnthropicCredentials` object. - oneOf: - - $ref: '#/components/schemas/AnthropicAPIKey' + properties: + api_token: + description: The `AnthropicAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/AnthropicAPIKeyType' + required: + - type + - api_token + type: object AnthropicIntegrationType: description: The definition of the `AnthropicIntegrationType` object. enum: @@ -2087,8 +3043,17 @@ components: - ANTHROPIC AsanaCredentials: description: The definition of the `AsanaCredentials` object. - oneOf: - - $ref: '#/components/schemas/AsanaAccessToken' + properties: + access_token: + description: The `AsanaAccessToken` `access_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/AsanaAccessTokenType' + required: + - type + - access_token + type: object AsanaIntegrationType: description: The definition of the `AsanaIntegrationType` object. enum: @@ -2099,8 +3064,30 @@ components: - ASANA AzureCredentials: description: The definition of the `AzureCredentials` object. - oneOf: - - $ref: '#/components/schemas/AzureTenant' + properties: + app_client_id: + description: The Client ID, also known as the Application ID in Azure, is a unique identifier for an application. It's used to identify the application during the authentication process. Your Application (client) ID is listed in the application's overview page. You can navigate to your application via the Azure Directory. + example: '' + type: string + client_secret: + description: The Client Secret is a confidential piece of information known only to the application and Azure AD. It's used to prove the application's identity. Your Client Secret is available from the application’s secrets page. You can navigate to your application via the Azure Directory. + example: '' + type: string + custom_scopes: + description: If provided, the custom scope to be requested from Microsoft when acquiring an OAuth 2 access token. This custom scope is used only in conjunction with the HTTP action. A resource's scope is constructed by using the identifier URI for the resource and .default, separated by a forward slash (/) as follows:{identifierURI}/.default. + type: string + tenant_id: + description: The Tenant ID, also known as the Directory ID in Azure, is a unique identifier that represents an Azure AD instance. Your Tenant ID (Directory ID) is listed in your Active Directory overview page under the 'Tenant information' section. + example: '' + type: string + type: + $ref: '#/components/schemas/AzureTenantType' + required: + - type + - tenant_id + - app_client_id + - client_secret + type: object AzureIntegrationType: description: The definition of the `AzureIntegrationType` object. enum: @@ -2111,20 +3098,38 @@ components: - AZURE CircleCICredentials: description: The definition of the `CircleCICredentials` object. - oneOf: - - $ref: '#/components/schemas/CircleCIAPIKey' - CircleCIIntegrationType: - description: The definition of the `CircleCIIntegrationType` object. - enum: - - CircleCI - example: CircleCI - type: string - x-enum-varnames: + properties: + api_token: + description: The `CircleCIAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/CircleCIAPIKeyType' + required: + - type + - api_token + type: object + CircleCIIntegrationType: + description: The definition of the `CircleCIIntegrationType` object. + enum: + - CircleCI + example: CircleCI + type: string + x-enum-varnames: - CIRCLECI ClickupCredentials: description: The definition of the `ClickupCredentials` object. - oneOf: - - $ref: '#/components/schemas/ClickupAPIKey' + properties: + api_token: + description: The `ClickupAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/ClickupAPIKeyType' + required: + - type + - api_token + type: object ClickupIntegrationType: description: The definition of the `ClickupIntegrationType` object. enum: @@ -2135,9 +3140,27 @@ components: - CLICKUP CloudflareCredentials: description: The definition of the `CloudflareCredentials` object. - oneOf: - - $ref: '#/components/schemas/CloudflareAPIToken' - - $ref: '#/components/schemas/CloudflareGlobalAPIToken' + properties: + api_token: + description: The `CloudflareAPIToken` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/CloudflareAPITokenType' + auth_email: + description: The `CloudflareGlobalAPIToken` `auth_email`. + example: '' + type: string + global_api_key: + description: The `CloudflareGlobalAPIToken` `global_api_key`. + example: '' + type: string + required: + - type + - api_token + - auth_email + - global_api_key + type: object CloudflareIntegrationType: description: The definition of the `CloudflareIntegrationType` object. enum: @@ -2148,8 +3171,27 @@ components: - CLOUDFLARE ConfigCatCredentials: description: The definition of the `ConfigCatCredentials` object. - oneOf: - - $ref: '#/components/schemas/ConfigCatSDKKey' + properties: + api_password: + description: The `ConfigCatSDKKey` `api_password`. + example: '' + type: string + api_username: + description: The `ConfigCatSDKKey` `api_username`. + example: '' + type: string + sdk_key: + description: The `ConfigCatSDKKey` `sdk_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/ConfigCatSDKKeyType' + required: + - type + - sdk_key + - api_username + - api_password + type: object ConfigCatIntegrationType: description: The definition of the `ConfigCatIntegrationType` object. enum: @@ -2160,8 +3202,30 @@ components: - CONFIGCAT DatadogCredentials: description: The definition of the `DatadogCredentials` object. - oneOf: - - $ref: '#/components/schemas/DatadogAPIKey' + properties: + api_key: + description: The `DatadogAPIKey` `api_key`. + example: '' + type: string + app_key: + description: The `DatadogAPIKey` `app_key`. + example: '' + type: string + datacenter: + description: The `DatadogAPIKey` `datacenter`. + example: '' + type: string + subdomain: + description: Custom subdomain used for Datadog URLs generated with this Connection. For example, if this org uses `https://acme.datadoghq.com` to access Datadog, set this field to `acme`. If this field is omitted, generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). + type: string + type: + $ref: '#/components/schemas/DatadogAPIKeyType' + required: + - type + - datacenter + - api_key + - app_key + type: object DatadogIntegrationType: description: The definition of the `DatadogIntegrationType` object. enum: @@ -2172,8 +3236,17 @@ components: - DATADOG FastlyCredentials: description: The definition of the `FastlyCredentials` object. - oneOf: - - $ref: '#/components/schemas/FastlyAPIKey' + properties: + api_key: + description: The `FastlyAPIKey` `api_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/FastlyAPIKeyType' + required: + - type + - api_key + type: object FastlyIntegrationType: description: The definition of the `FastlyIntegrationType` object. enum: @@ -2184,8 +3257,22 @@ components: - FASTLY FreshserviceCredentials: description: The definition of the `FreshserviceCredentials` object. - oneOf: - - $ref: '#/components/schemas/FreshserviceAPIKey' + properties: + api_key: + description: The `FreshserviceAPIKey` `api_key`. + example: '' + type: string + domain: + description: The `FreshserviceAPIKey` `domain`. + example: '' + type: string + type: + $ref: '#/components/schemas/FreshserviceAPIKeyType' + required: + - type + - domain + - api_key + type: object FreshserviceIntegrationType: description: The definition of the `FreshserviceIntegrationType` object. enum: @@ -2196,8 +3283,22 @@ components: - FRESHSERVICE GCPCredentials: description: The definition of the `GCPCredentials` object. - oneOf: - - $ref: '#/components/schemas/GCPServiceAccount' + properties: + private_key: + description: The `GCPServiceAccount` `private_key`. + example: '' + type: string + service_account_email: + description: The `GCPServiceAccount` `service_account_email`. + example: '' + type: string + type: + $ref: '#/components/schemas/GCPServiceAccountCredentialType' + required: + - type + - service_account_email + - private_key + type: object GCPIntegrationType: description: The definition of the `GCPIntegrationType` object. enum: @@ -2208,8 +3309,17 @@ components: - GCP GeminiCredentials: description: The definition of the `GeminiCredentials` object. - oneOf: - - $ref: '#/components/schemas/GeminiAPIKey' + properties: + api_key: + description: The `GeminiAPIKey` `api_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/GeminiAPIKeyType' + required: + - type + - api_key + type: object GeminiIntegrationType: description: The definition of the `GeminiIntegrationType` object. enum: @@ -2220,8 +3330,17 @@ components: - GEMINI GitlabCredentials: description: The definition of the `GitlabCredentials` object. - oneOf: - - $ref: '#/components/schemas/GitlabAPIKey' + properties: + api_token: + description: The `GitlabAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/GitlabAPIKeyType' + required: + - type + - api_token + type: object GitlabIntegrationType: description: The definition of the `GitlabIntegrationType` object. enum: @@ -2232,8 +3351,17 @@ components: - GITLAB GreyNoiseCredentials: description: The definition of the `GreyNoiseCredentials` object. - oneOf: - - $ref: '#/components/schemas/GreyNoiseAPIKey' + properties: + api_key: + description: The `GreyNoiseAPIKey` `api_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/GreyNoiseAPIKeyType' + required: + - type + - api_key + type: object GreyNoiseIntegrationType: description: The definition of the `GreyNoiseIntegrationType` object. enum: @@ -2244,8 +3372,29 @@ components: - GREYNOISE HTTPCredentials: description: The definition of `HTTPCredentials` object. - oneOf: - - $ref: '#/components/schemas/HTTPTokenAuth' + properties: + body: + $ref: '#/components/schemas/HTTPBody' + headers: + description: The `HTTPTokenAuth` `headers`. + items: + $ref: '#/components/schemas/HTTPHeader' + type: array + tokens: + description: The `HTTPTokenAuth` `tokens`. + items: + $ref: '#/components/schemas/HTTPToken' + type: array + type: + $ref: '#/components/schemas/HTTPTokenAuthType' + url_parameters: + description: The `HTTPTokenAuth` `url_parameters`. + items: + $ref: '#/components/schemas/UrlParam' + type: array + required: + - type + type: object HTTPIntegrationType: description: The definition of `HTTPIntegrationType` object. enum: @@ -2256,8 +3405,17 @@ components: - HTTP LaunchDarklyCredentials: description: The definition of the `LaunchDarklyCredentials` object. - oneOf: - - $ref: '#/components/schemas/LaunchDarklyAPIKey' + properties: + api_token: + description: The `LaunchDarklyAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/LaunchDarklyAPIKeyType' + required: + - type + - api_token + type: object LaunchDarklyIntegrationType: description: The definition of the `LaunchDarklyIntegrationType` object. enum: @@ -2268,8 +3426,17 @@ components: - LAUNCHDARKLY NotionCredentials: description: The definition of the `NotionCredentials` object. - oneOf: - - $ref: '#/components/schemas/NotionAPIKey' + properties: + api_token: + description: The `NotionAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/NotionAPIKeyType' + required: + - type + - api_token + type: object NotionIntegrationType: description: The definition of the `NotionIntegrationType` object. enum: @@ -2280,8 +3447,22 @@ components: - NOTION OktaCredentials: description: The definition of the `OktaCredentials` object. - oneOf: - - $ref: '#/components/schemas/OktaAPIToken' + properties: + api_token: + description: The `OktaAPIToken` `api_token`. + example: '' + type: string + domain: + description: The `OktaAPIToken` `domain`. + example: '' + type: string + type: + $ref: '#/components/schemas/OktaAPITokenType' + required: + - type + - domain + - api_token + type: object OktaIntegrationType: description: The definition of the `OktaIntegrationType` object. enum: @@ -2292,8 +3473,17 @@ components: - OKTA OpenAICredentials: description: The definition of the `OpenAICredentials` object. - oneOf: - - $ref: '#/components/schemas/OpenAIAPIKey' + properties: + api_token: + description: The `OpenAIAPIKey` `api_token`. + example: '' + type: string + type: + $ref: '#/components/schemas/OpenAIAPIKeyType' + required: + - type + - api_token + type: object OpenAIIntegrationType: description: The definition of the `OpenAIIntegrationType` object. enum: @@ -2304,8 +3494,27 @@ components: - OPENAI ServiceNowCredentials: description: The definition of the `ServiceNowCredentials` object. - oneOf: - - $ref: '#/components/schemas/ServiceNowBasicAuth' + properties: + instance: + description: The `ServiceNowBasicAuth` `instance`. + example: '' + type: string + password: + description: The `ServiceNowBasicAuth` `password`. + example: '' + type: string + type: + $ref: '#/components/schemas/ServiceNowBasicAuthType' + username: + description: The `ServiceNowBasicAuth` `username`. + example: '' + type: string + required: + - type + - instance + - username + - password + type: object ServiceNowIntegrationType: description: The definition of the `ServiceNowIntegrationType` object. enum: @@ -2316,8 +3525,17 @@ components: - SERVICENOW SplitCredentials: description: The definition of the `SplitCredentials` object. - oneOf: - - $ref: '#/components/schemas/SplitAPIKey' + properties: + api_key: + description: The `SplitAPIKey` `api_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/SplitAPIKeyType' + required: + - type + - api_key + type: object SplitIntegrationType: description: The definition of the `SplitIntegrationType` object. enum: @@ -2328,8 +3546,17 @@ components: - SPLIT StatsigCredentials: description: The definition of the `StatsigCredentials` object. - oneOf: - - $ref: '#/components/schemas/StatsigAPIKey' + properties: + api_key: + description: The `StatsigAPIKey` `api_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/StatsigAPIKeyType' + required: + - type + - api_key + type: object StatsigIntegrationType: description: The definition of the `StatsigIntegrationType` object. enum: @@ -2340,8 +3567,17 @@ components: - STATSIG VirusTotalCredentials: description: The definition of the `VirusTotalCredentials` object. - oneOf: - - $ref: '#/components/schemas/VirusTotalAPIKey' + properties: + api_key: + description: The `VirusTotalAPIKey` `api_key`. + example: '' + type: string + type: + $ref: '#/components/schemas/VirusTotalAPIKeyType' + required: + - type + - api_key + type: object VirusTotalIntegrationType: description: The definition of the `VirusTotalIntegrationType` object. enum: @@ -2352,101 +3588,378 @@ components: - VIRUSTOTAL AWSCredentialsUpdate: description: The definition of `AWSCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AWSAssumeRoleUpdate' + properties: + account_id: + description: AWS account the connection is created for + example: '111222333444' + pattern: ^\d{12}$ + type: string + generate_new_external_id: + description: The `AWSAssumeRoleUpdate` `generate_new_external_id`. + type: boolean + role: + description: Role to assume + example: my-role + type: string + type: + $ref: '#/components/schemas/AWSAssumeRoleType' + required: + - type + type: object AnthropicCredentialsUpdate: description: The definition of the `AnthropicCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AnthropicAPIKeyUpdate' + properties: + api_token: + description: The `AnthropicAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/AnthropicAPIKeyType' + required: + - type + type: object AsanaCredentialsUpdate: description: The definition of the `AsanaCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AsanaAccessTokenUpdate' + properties: + access_token: + description: The `AsanaAccessTokenUpdate` `access_token`. + type: string + type: + $ref: '#/components/schemas/AsanaAccessTokenType' + required: + - type + type: object AzureCredentialsUpdate: description: The definition of the `AzureCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AzureTenantUpdate' + properties: + app_client_id: + description: The Client ID, also known as the Application ID in Azure, is a unique identifier for an application. It's used to identify the application during the authentication process. Your Application (client) ID is listed in the application's overview page. You can navigate to your application via the Azure Directory. + type: string + client_secret: + description: The Client Secret is a confidential piece of information known only to the application and Azure AD. It's used to prove the application's identity. Your Client Secret is available from the application’s secrets page. You can navigate to your application via the Azure Directory. + type: string + custom_scopes: + description: If provided, the custom scope to be requested from Microsoft when acquiring an OAuth 2 access token. This custom scope is used only in conjunction with the HTTP action. A resource's scope is constructed by using the identifier URI for the resource and .default, separated by a forward slash (/) as follows:{identifierURI}/.default. + type: string + tenant_id: + description: The Tenant ID, also known as the Directory ID in Azure, is a unique identifier that represents an Azure AD instance. Your Tenant ID (Directory ID) is listed in your Active Directory overview page under the 'Tenant information' section. + type: string + type: + $ref: '#/components/schemas/AzureTenantType' + required: + - type + type: object CircleCICredentialsUpdate: description: The definition of the `CircleCICredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/CircleCIAPIKeyUpdate' + properties: + api_token: + description: The `CircleCIAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/CircleCIAPIKeyType' + required: + - type + type: object ClickupCredentialsUpdate: description: The definition of the `ClickupCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ClickupAPIKeyUpdate' + properties: + api_token: + description: The `ClickupAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/ClickupAPIKeyType' + required: + - type + type: object CloudflareCredentialsUpdate: description: The definition of the `CloudflareCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/CloudflareAPITokenUpdate' - - $ref: '#/components/schemas/CloudflareGlobalAPITokenUpdate' + properties: + api_token: + description: The `CloudflareAPITokenUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/CloudflareAPITokenType' + auth_email: + description: The `CloudflareGlobalAPITokenUpdate` `auth_email`. + type: string + global_api_key: + description: The `CloudflareGlobalAPITokenUpdate` `global_api_key`. + type: string + required: + - type + type: object ConfigCatCredentialsUpdate: description: The definition of the `ConfigCatCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ConfigCatSDKKeyUpdate' + properties: + api_password: + description: The `ConfigCatSDKKeyUpdate` `api_password`. + type: string + api_username: + description: The `ConfigCatSDKKeyUpdate` `api_username`. + type: string + sdk_key: + description: The `ConfigCatSDKKeyUpdate` `sdk_key`. + type: string + type: + $ref: '#/components/schemas/ConfigCatSDKKeyType' + required: + - type + type: object DatadogCredentialsUpdate: description: The definition of the `DatadogCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/DatadogAPIKeyUpdate' + properties: + api_key: + description: The `DatadogAPIKeyUpdate` `api_key`. + type: string + app_key: + description: The `DatadogAPIKeyUpdate` `app_key`. + type: string + datacenter: + description: The `DatadogAPIKeyUpdate` `datacenter`. + type: string + subdomain: + description: Custom subdomain used for Datadog URLs generated with this Connection. For example, if this org uses `https://acme.datadoghq.com` to access Datadog, set this field to `acme`. If this field is omitted, generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). + type: string + type: + $ref: '#/components/schemas/DatadogAPIKeyType' + required: + - type + type: object FastlyCredentialsUpdate: description: The definition of the `FastlyCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/FastlyAPIKeyUpdate' + properties: + api_key: + description: The `FastlyAPIKeyUpdate` `api_key`. + type: string + type: + $ref: '#/components/schemas/FastlyAPIKeyType' + required: + - type + type: object FreshserviceCredentialsUpdate: description: The definition of the `FreshserviceCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/FreshserviceAPIKeyUpdate' + properties: + api_key: + description: The `FreshserviceAPIKeyUpdate` `api_key`. + type: string + domain: + description: The `FreshserviceAPIKeyUpdate` `domain`. + type: string + type: + $ref: '#/components/schemas/FreshserviceAPIKeyType' + required: + - type + type: object GCPCredentialsUpdate: description: The definition of the `GCPCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GCPServiceAccountUpdate' + properties: + private_key: + description: The `GCPServiceAccountUpdate` `private_key`. + type: string + service_account_email: + description: The `GCPServiceAccountUpdate` `service_account_email`. + type: string + type: + $ref: '#/components/schemas/GCPServiceAccountCredentialType' + required: + - type + type: object GeminiCredentialsUpdate: description: The definition of the `GeminiCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GeminiAPIKeyUpdate' + properties: + api_key: + description: The `GeminiAPIKeyUpdate` `api_key`. + type: string + type: + $ref: '#/components/schemas/GeminiAPIKeyType' + required: + - type + type: object GitlabCredentialsUpdate: description: The definition of the `GitlabCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GitlabAPIKeyUpdate' + properties: + api_token: + description: The `GitlabAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/GitlabAPIKeyType' + required: + - type + type: object GreyNoiseCredentialsUpdate: description: The definition of the `GreyNoiseCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GreyNoiseAPIKeyUpdate' + properties: + api_key: + description: The `GreyNoiseAPIKeyUpdate` `api_key`. + type: string + type: + $ref: '#/components/schemas/GreyNoiseAPIKeyType' + required: + - type + type: object HTTPCredentialsUpdate: description: The definition of `HTTPCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/HTTPTokenAuthUpdate' + properties: + body: + $ref: '#/components/schemas/HTTPBody' + headers: + description: The `HTTPTokenAuthUpdate` `headers`. + items: + $ref: '#/components/schemas/HTTPHeaderUpdate' + type: array + tokens: + description: The `HTTPTokenAuthUpdate` `tokens`. + items: + $ref: '#/components/schemas/HTTPTokenUpdate' + type: array + type: + $ref: '#/components/schemas/HTTPTokenAuthType' + url_parameters: + description: The `HTTPTokenAuthUpdate` `url_parameters`. + items: + $ref: '#/components/schemas/UrlParamUpdate' + type: array + required: + - type + type: object LaunchDarklyCredentialsUpdate: description: The definition of the `LaunchDarklyCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/LaunchDarklyAPIKeyUpdate' + properties: + api_token: + description: The `LaunchDarklyAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/LaunchDarklyAPIKeyType' + required: + - type + type: object NotionCredentialsUpdate: description: The definition of the `NotionCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/NotionAPIKeyUpdate' + properties: + api_token: + description: The `NotionAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/NotionAPIKeyType' + required: + - type + type: object OktaCredentialsUpdate: description: The definition of the `OktaCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/OktaAPITokenUpdate' + properties: + api_token: + description: The `OktaAPITokenUpdate` `api_token`. + type: string + domain: + description: The `OktaAPITokenUpdate` `domain`. + type: string + type: + $ref: '#/components/schemas/OktaAPITokenType' + required: + - type + type: object OpenAICredentialsUpdate: description: The definition of the `OpenAICredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/OpenAIAPIKeyUpdate' + properties: + api_token: + description: The `OpenAIAPIKeyUpdate` `api_token`. + type: string + type: + $ref: '#/components/schemas/OpenAIAPIKeyType' + required: + - type + type: object ServiceNowCredentialsUpdate: description: The definition of the `ServiceNowCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ServiceNowBasicAuthUpdate' + properties: + instance: + description: The `ServiceNowBasicAuthUpdate` `instance`. + type: string + password: + description: The `ServiceNowBasicAuthUpdate` `password`. + type: string + type: + $ref: '#/components/schemas/ServiceNowBasicAuthType' + username: + description: The `ServiceNowBasicAuthUpdate` `username`. + type: string + required: + - type + type: object SplitCredentialsUpdate: description: The definition of the `SplitCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/SplitAPIKeyUpdate' + properties: + api_key: + description: The `SplitAPIKeyUpdate` `api_key`. + type: string + type: + $ref: '#/components/schemas/SplitAPIKeyType' + required: + - type + type: object StatsigCredentialsUpdate: description: The definition of the `StatsigCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/StatsigAPIKeyUpdate' + properties: + api_key: + description: The `StatsigAPIKeyUpdate` `api_key`. + type: string + type: + $ref: '#/components/schemas/StatsigAPIKeyType' + required: + - type + type: object VirusTotalCredentialsUpdate: description: The definition of the `VirusTotalCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/VirusTotalAPIKeyUpdate' + properties: + api_key: + description: The `VirusTotalAPIKeyUpdate` `api_key`. + type: string + type: + $ref: '#/components/schemas/VirusTotalAPIKeyType' + required: + - type + type: object + ExecutionPolicyKubernetesScopeRule: + description: A rule restricting a Kubernetes scope to specific namespaces. + properties: + target_namespaces: + description: The Kubernetes namespaces this rule applies to. + example: + - default + items: + type: string + type: array + required: + - target_namespaces + type: object + ExecutionPolicyRemoteActionRshellScopeRule: + description: A rule restricting remote shell access to specific paths. + properties: + access: + $ref: '#/components/schemas/ExecutionPolicyRemoteActionRshellAccess' + target_paths: + description: The file system paths this rule applies to. + example: + - /var/log + items: + type: string + type: array + required: + - target_paths + - access + type: object + ExecutionPolicyScriptScopeRule: + description: A rule restricting a script scope to specific script names. + properties: + target_script_names: + description: The script names this rule applies to. + example: + - restart_service.sh + items: + type: string + type: array + required: + - target_script_names + type: object AWSAssumeRole: description: The definition of `AWSAssumeRole` object. properties: @@ -2456,9 +3969,7 @@ components: pattern: ^\d{12}$ type: string external_id: - description: >- - External ID used to scope which connection can be used to assume the - role + description: External ID used to scope which connection can be used to assume the role example: 33a1011635c44b38a064cf14e82e1d8f readOnly: true type: string @@ -2508,37 +4019,18 @@ components: description: The definition of the `AzureTenant` object. properties: app_client_id: - description: >- - The Client ID, also known as the Application ID in Azure, is a - unique identifier for an application. It's used to identify the - application during the authentication process. Your Application - (client) ID is listed in the application's overview page. You can - navigate to your application via the Azure Directory. + description: The Client ID, also known as the Application ID in Azure, is a unique identifier for an application. It's used to identify the application during the authentication process. Your Application (client) ID is listed in the application's overview page. You can navigate to your application via the Azure Directory. example: '' type: string client_secret: - description: >- - The Client Secret is a confidential piece of information known only - to the application and Azure AD. It's used to prove the - application's identity. Your Client Secret is available from the - application’s secrets page. You can navigate to your application via - the Azure Directory. + description: The Client Secret is a confidential piece of information known only to the application and Azure AD. It's used to prove the application's identity. Your Client Secret is available from the application’s secrets page. You can navigate to your application via the Azure Directory. example: '' type: string custom_scopes: - description: >- - If provided, the custom scope to be requested from Microsoft when - acquiring an OAuth 2 access token. This custom scope is used only in - conjunction with the HTTP action. A resource's scope is constructed - by using the identifier URI for the resource and .default, separated - by a forward slash (/) as follows:{identifierURI}/.default. + description: If provided, the custom scope to be requested from Microsoft when acquiring an OAuth 2 access token. This custom scope is used only in conjunction with the HTTP action. A resource's scope is constructed by using the identifier URI for the resource and .default, separated by a forward slash (/) as follows:{identifierURI}/.default. type: string tenant_id: - description: >- - The Tenant ID, also known as the Directory ID in Azure, is a unique - identifier that represents an Azure AD instance. Your Tenant ID - (Directory ID) is listed in your Active Directory overview page - under the 'Tenant information' section. + description: The Tenant ID, also known as the Directory ID in Azure, is a unique identifier that represents an Azure AD instance. Your Tenant ID (Directory ID) is listed in your Active Directory overview page under the 'Tenant information' section. example: '' type: string type: @@ -2645,13 +4137,7 @@ components: example: '' type: string subdomain: - description: >- - Custom subdomain used for Datadog URLs generated with this - Connection. For example, if this org uses - `https://acme.datadoghq.com` to access Datadog, set this field to - `acme`. If this field is omitted, generated URLs will use the - default site URL for its datacenter (see - [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). + description: Custom subdomain used for Datadog URLs generated with this Connection. For example, if this org uses `https://acme.datadoghq.com` to access Datadog, set this field to `acme`. If this field is omitted, generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). type: string type: $ref: '#/components/schemas/DatadogAPIKeyType' @@ -2939,35 +4425,16 @@ components: description: The definition of the `AzureTenant` object. properties: app_client_id: - description: >- - The Client ID, also known as the Application ID in Azure, is a - unique identifier for an application. It's used to identify the - application during the authentication process. Your Application - (client) ID is listed in the application's overview page. You can - navigate to your application via the Azure Directory. + description: The Client ID, also known as the Application ID in Azure, is a unique identifier for an application. It's used to identify the application during the authentication process. Your Application (client) ID is listed in the application's overview page. You can navigate to your application via the Azure Directory. type: string client_secret: - description: >- - The Client Secret is a confidential piece of information known only - to the application and Azure AD. It's used to prove the - application's identity. Your Client Secret is available from the - application’s secrets page. You can navigate to your application via - the Azure Directory. + description: The Client Secret is a confidential piece of information known only to the application and Azure AD. It's used to prove the application's identity. Your Client Secret is available from the application’s secrets page. You can navigate to your application via the Azure Directory. type: string custom_scopes: - description: >- - If provided, the custom scope to be requested from Microsoft when - acquiring an OAuth 2 access token. This custom scope is used only in - conjunction with the HTTP action. A resource's scope is constructed - by using the identifier URI for the resource and .default, separated - by a forward slash (/) as follows:{identifierURI}/.default. + description: If provided, the custom scope to be requested from Microsoft when acquiring an OAuth 2 access token. This custom scope is used only in conjunction with the HTTP action. A resource's scope is constructed by using the identifier URI for the resource and .default, separated by a forward slash (/) as follows:{identifierURI}/.default. type: string tenant_id: - description: >- - The Tenant ID, also known as the Directory ID in Azure, is a unique - identifier that represents an Azure AD instance. Your Tenant ID - (Directory ID) is listed in your Active Directory overview page - under the 'Tenant information' section. + description: The Tenant ID, also known as the Directory ID in Azure, is a unique identifier that represents an Azure AD instance. Your Tenant ID (Directory ID) is listed in your Active Directory overview page under the 'Tenant information' section. type: string type: $ref: '#/components/schemas/AzureTenantType' @@ -3051,13 +4518,7 @@ components: description: The `DatadogAPIKeyUpdate` `datacenter`. type: string subdomain: - description: >- - Custom subdomain used for Datadog URLs generated with this - Connection. For example, if this org uses - `https://acme.datadoghq.com` to access Datadog, set this field to - `acme`. If this field is omitted, generated URLs will use the - default site URL for its datacenter (see - [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). + description: Custom subdomain used for Datadog URLs generated with this Connection. For example, if this org uses `https://acme.datadoghq.com` to access Datadog, set this field to `acme`. If this field is omitted, generated URLs will use the default site URL for its datacenter (see [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). type: string type: $ref: '#/components/schemas/DatadogAPIKeyType' @@ -3258,6 +4719,16 @@ components: required: - type type: object + ExecutionPolicyRemoteActionRshellAccess: + description: The level of remote shell access granted for the target paths. + enum: + - read_only + - read_write + example: read_only + type: string + x-enum-varnames: + - READ_ONLY + - READ_WRITE AWSAssumeRoleType: description: The definition of `AWSAssumeRoleType` object. enum: @@ -3610,6 +5081,14 @@ components: required: true schema: type: string + ExecutionPolicyId: + description: The ID of the execution policy. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + in: path + name: policy_id + required: true + schema: + type: string x-stackQL-resources: datastores: id: datadog.actions.datastores @@ -3623,18 +5102,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_datastore: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1actions-datastores/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_datastore: operation: $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}/delete' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel get_datastore: operation: $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}/get' @@ -3642,26 +5130,29 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_datastore: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/datastores/methods/get_datastore' - - $ref: >- - #/components/x-stackQL-resources/datastores/methods/list_datastores + - $ref: '#/components/x-stackQL-resources/datastores/methods/list_datastores' insert: - - $ref: >- - #/components/x-stackQL-resources/datastores/methods/create_datastore + - $ref: '#/components/x-stackQL-resources/datastores/methods/create_datastore' update: - - $ref: >- - #/components/x-stackQL-resources/datastores/methods/update_datastore + - $ref: '#/components/x-stackQL-resources/datastores/methods/update_datastore' delete: - - $ref: >- - #/components/x-stackQL-resources/datastores/methods/delete_datastore + - $ref: '#/components/x-stackQL-resources/datastores/methods/delete_datastore' replace: [] datastore_items: id: datadog.actions.datastore_items @@ -3670,11 +5161,12 @@ components: methods: delete_datastore_item: operation: - $ref: >- - #/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/delete + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/delete' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel list_datastore_items: operation: $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/get' @@ -3682,32 +5174,66 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 100 + skip: + paramName: page[offset] update_datastore_item: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel bulk_write_datastore_items: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items~1bulk/post + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items~1bulk/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/datastore_items/methods/list_datastore_items + - $ref: '#/components/x-stackQL-resources/datastore_items/methods/list_datastore_items' insert: - - $ref: >- - #/components/x-stackQL-resources/datastore_items/methods/bulk_write_datastore_items + - $ref: '#/components/x-stackQL-resources/datastore_items/methods/bulk_write_datastore_items' update: - - $ref: >- - #/components/x-stackQL-resources/datastore_items/methods/update_datastore_item + - $ref: '#/components/x-stackQL-resources/datastore_items/methods/update_datastore_item' + delete: + - $ref: '#/components/x-stackQL-resources/datastore_items/methods/delete_datastore_item' + replace: [] + actions_datastore_items: + id: datadog.actions.actions_datastore_items + name: actions_datastore_items + title: Actions Datastore Items + methods: + bulk_delete_datastore_items: + operation: + $ref: '#/paths/~1api~1v2~1actions-datastores~1{datastore_id}~1items~1bulk/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/datastore_items/methods/delete_datastore_item + - $ref: '#/components/x-stackQL-resources/actions_datastore_items/methods/bulk_delete_datastore_items' replace: [] app_key_registrations: id: datadog.actions.app_key_registrations @@ -3721,34 +5247,41 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] unregister_app_key: operation: - $ref: >- - #/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/delete + $ref: '#/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_app_key_registration: operation: - $ref: >- - #/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/get + $ref: '#/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel register_app_key: operation: - $ref: >- - #/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/put + $ref: '#/paths/~1api~1v2~1actions~1app_key_registrations~1{app_key_id}/put' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/app_key_registrations/methods/get_app_key_registration - - $ref: >- - #/components/x-stackQL-resources/app_key_registrations/methods/list_app_key_registrations + - $ref: '#/components/x-stackQL-resources/app_key_registrations/methods/get_app_key_registration' + - $ref: '#/components/x-stackQL-resources/app_key_registrations/methods/list_app_key_registrations' insert: [] update: [] delete: [] @@ -3759,17 +5292,24 @@ components: title: Connections methods: create_action_connection: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1actions~1connections/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_action_connection: operation: $ref: '#/paths/~1api~1v2~1actions~1connections~1{connection_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_action_connection: operation: $ref: '#/paths/~1api~1v2~1actions~1connections~1{connection_id}/get' @@ -3777,29 +5317,102 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_action_connection: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1actions~1connections~1{connection_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/get_action_connection + - $ref: '#/components/x-stackQL-resources/connections/methods/get_action_connection' insert: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/create_action_connection + - $ref: '#/components/x-stackQL-resources/connections/methods/create_action_connection' update: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/update_action_connection + - $ref: '#/components/x-stackQL-resources/connections/methods/update_action_connection' delete: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/delete_action_connection + - $ref: '#/components/x-stackQL-resources/connections/methods/delete_action_connection' replace: [] + execution_policies: + id: datadog.actions.execution_policies + name: execution_policies + title: Execution Policies + methods: + list_execution_policies: + operation: + $ref: '#/paths/~1api~1v2~1actions~1execution-policies/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 100 + create_execution_policy: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1actions~1execution-policies/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_execution_policy: + operation: + $ref: '#/paths/~1api~1v2~1actions~1execution-policies~1{policy_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_execution_policy: + operation: + $ref: '#/paths/~1api~1v2~1actions~1execution-policies~1{policy_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_execution_policy: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1actions~1execution-policies~1{policy_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/execution_policies/methods/get_execution_policy' + - $ref: '#/components/x-stackQL-resources/execution_policies/methods/list_execution_policies' + insert: + - $ref: '#/components/x-stackQL-resources/execution_policies/methods/create_execution_policy' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/execution_policies/methods/delete_execution_policy' + replace: + - $ref: '#/components/x-stackQL-resources/execution_policies/methods/update_execution_policy' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/apm.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/apm.yaml index 7961978..e385ece 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/apm.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/apm.yaml @@ -1,7 +1,7 @@ openapi: 3.0.0 info: title: apm API - description: datadog apm API + description: Observe, troubleshoot, and improve cloud-scale applications with all telemetry in context version: '1.0' paths: /api/v2/apm/config/metrics: @@ -12,6 +12,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: '@duration' + filter: + query: '@http.status_code:200 service:my-service' + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics schema: $ref: '#/components/schemas/SpansMetricsResponse' description: OK @@ -27,15 +43,29 @@ paths: permissions: - apm_read post: - description: >- + description: |- Create a metric based on your ingested spans in your organization. - - Returns the span-based metric object from the request body when the - request is successful. + Returns the span-based metric object from the request body when the request is successful. operationId: CreateSpansMetric requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: '@duration' + filter: + query: '@http.status_code:200 service:my-service' + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics schema: $ref: '#/components/schemas/SpansMetricCreateRequest' description: The definition of the new span-based metric. @@ -44,6 +74,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: '@duration' + filter: + query: '@http.status_code:200 service:my-service' + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics schema: $ref: '#/components/schemas/SpansMetricResponse' description: OK @@ -94,6 +140,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: '@duration' + filter: + query: '@http.status_code:200 service:my-service' + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics schema: $ref: '#/components/schemas/SpansMetricResponse' description: OK @@ -111,17 +173,28 @@ paths: permissions: - apm_read patch: - description: >- + description: |- Update a specific span-based metric from your organization. - - Returns the span-based metric object from the request body when the - request is successful. + Returns the span-based metric object from the request body when the request is successful. operationId: UpdateSpansMetric parameters: - $ref: '#/components/parameters/SpansMetricIDParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compute: + include_percentiles: false + filter: + query: '@http.status_code:200 service:my-service' + group_by: + - path: resource_name + tag_name: resource_name + type: spans_metrics schema: $ref: '#/components/schemas/SpansMetricUpdateRequest' description: New definition of the span-based metric. @@ -130,6 +203,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: false + path: '@duration' + filter: + query: '@http.status_code:200 service:my-service' + group_by: + - path: resource_name + tag_name: resource_name + id: my.metric + type: spans_metrics schema: $ref: '#/components/schemas/SpansMetricResponse' description: OK @@ -157,6 +246,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + filter: + query: '@http.status_code:200 service:my-service' + filter_type: spans-sampling-processor + name: my retention filter + rate: 1 + id: abc-123 + type: apm_retention_filter schema: $ref: '#/components/schemas/RetentionFiltersResponse' description: OK @@ -171,20 +273,29 @@ paths: operator: OR permissions: - apm_retention_filter_read - - apm_pipelines_read post: - description: >- + description: |- Create a retention filter to index spans in your organization. - Returns the retention filter definition when the request is successful. - - Default filters with types spans-errors-sampling-processor and - spans-appsec-sampling-processor cannot be created. + Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. operationId: CreateApmRetentionFilter requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: '@http.status_code:200 service:my-service' + filter_type: spans-sampling-processor + name: my retention filter + rate: 1 + trace_rate: 1 + type: apm_retention_filter schema: $ref: '#/components/schemas/RetentionFilterCreateRequest' description: The definition of the new retention filter. @@ -193,6 +304,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: '@http.status_code:200 service:my-service' + filter_type: spans-sampling-processor + name: my retention filter + rate: 1 + id: abc-123 + type: apm_retention_filter schema: $ref: '#/components/schemas/RetentionFilterCreateResponse' description: OK @@ -212,7 +336,6 @@ paths: operator: OR permissions: - apm_retention_filter_write - - apm_pipelines_write /api/v2/apm/config/retention-filters-execution-order: put: description: Re-order the execution order of retention filters. @@ -220,6 +343,12 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + - id: 7RBOb7dLSYWI01yc3pIH8w + type: apm_retention_filter schema: $ref: '#/components/schemas/ReorderRetentionFiltersRequest' description: The list of retention filters in the new order. @@ -241,15 +370,12 @@ paths: operator: OR permissions: - apm_retention_filter_write - - apm_pipelines_write /api/v2/apm/config/retention-filters/{filter_id}: delete: - description: >- + description: |- Delete a specific retention filter from your organization. - - Default filters with types spans-errors-sampling-processor and - spans-appsec-sampling-processor cannot be deleted. + Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted. operationId: DeleteApmRetentionFilter parameters: - $ref: '#/components/parameters/RetentionFilterIdParam' @@ -269,7 +395,6 @@ paths: operator: OR permissions: - apm_retention_filter_write - - apm_pipelines_write get: description: Get an APM retention filter. operationId: GetApmRetentionFilter @@ -279,6 +404,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: '@http.status_code:200 service:my-service' + filter_type: spans-sampling-processor + name: my retention filter + rate: 1 + id: abc-123 + type: apm_retention_filter schema: $ref: '#/components/schemas/RetentionFilterResponse' description: OK @@ -295,20 +433,31 @@ paths: operator: OR permissions: - apm_retention_filter_read - - apm_pipelines_read put: - description: >- + description: |- Update a retention filter from your organization. - - Default filters (filters with types spans-errors-sampling-processor and - spans-appsec-sampling-processor) cannot be renamed or removed. + Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) cannot be renamed or removed. operationId: UpdateApmRetentionFilter parameters: - $ref: '#/components/parameters/RetentionFilterIdParam' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: '@http.status_code:200 service:my-service' + filter_type: spans-sampling-processor + name: my retention filter + rate: 1 + trace_rate: 1 + id: retention-filter-id + type: apm_retention_filter schema: $ref: '#/components/schemas/RetentionFilterUpdateRequest' description: The updated definition of the retention filter. @@ -317,6 +466,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + filter: + query: '@http.status_code:200 service:my-service' + filter_type: spans-sampling-processor + name: my retention filter + rate: 1 + id: abc-123 + type: apm_retention_filter schema: $ref: '#/components/schemas/RetentionFilterResponse' description: OK @@ -336,7 +498,617 @@ paths: operator: OR permissions: - apm_retention_filter_write - - apm_pipelines_write + /api/v2/apm/services: + get: + operationId: GetServiceList + parameters: + - description: Filter services by environment. Can be set to `*` to return all services across all environments. + in: query + name: filter[env] + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + metadata: + - isTraced: true + isUsm: false + services: + - test-service + id: abc-123 + type: services_list + schema: + $ref: '#/components/schemas/ServiceList' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get service list + tags: + - APM + /api/v2/pruned_trace/{trace_id}: + get: + description: |- + Retrieve a pruned, hierarchical view of an APM trace by its trace ID. + The trace is summarized as a tree of spans rooted at the trace root and reduced in size + to keep rendering large traces in the UI practical. + This endpoint is rate limited to `60` requests per minute per organization. + operationId: GetPrunedTraceByID + parameters: + - $ref: '#/components/parameters/TraceIDPathParameter' + - description: |- + Span ID to expand and preserve in the pruned tree even when its branch would + normally be summarized. + example: 9876543210987655000 + in: query + name: expand_span_id + required: false + schema: + format: int64 + type: integer + - description: |- + Optional Unix time hint, in seconds, used to optimize the lookup of the trace + in long-term storage. + example: 1716800000 + in: query + name: time_hint + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + - description: |- + Force the trace to be loaded from a specific source. When unset, the API picks + the source automatically. + example: driveline + in: query + name: force_source + required: false + schema: + type: string + - description: |- + Restrict the pruned tree to spans matching the given `key:value` pairs. + Values may be passed as repeated query parameters. + example: + - service:web-store + in: query + name: include_path + required: false + schema: + items: + type: string + type: array + - description: |- + Regex patterns of tag keys whose values must be included in the pruned spans. + Values may be passed as repeated query parameters. + example: + - ^http\. + in: query + name: tag_include + required: false + schema: + items: + type: string + type: array + - description: |- + Regex patterns of tag keys whose values must be excluded from the pruned spans. + Values may be passed as repeated query parameters. + example: + - ^_dd\. + in: query + name: tag_exclude + required: false + schema: + items: + type: string + type: array + - description: When set to `true`, only service entry spans are included in the pruned tree. + example: false + in: query + name: only_service_entry_spans + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + is_truncated: false + size_bytes: 12345 + summarized_trace: + root: + children: [] + durationSeconds: 0.5 + endTime: '2026-05-27T12:00:00.5Z' + error: 0 + hidden_child_spans_count: 0 + meta: + env: production + metrics: + http.status_code: 200 + name: web.request + parentID: 0 + resource: GET /products + service: web-store + spanID: 9876543210987655000 + span_kind: SERVER + startTime: '2026-05-27T12:00:00Z' + traceId: 0000000000000000abc1230000000000 + id: 0000000000000000abc1230000000000 + type: pruned_trace + schema: + $ref: '#/components/schemas/PrunedTraceResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '504': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Gateway Timeout + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get a pruned trace by ID + tags: + - APM Trace + x-permission: + operator: OR + permissions: + - apm_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/scorecard/campaigns: + get: + description: Fetches all scorecard campaigns. + operationId: ListScorecardCampaigns + parameters: + - description: Maximum number of campaigns to return. + in: query + name: page[limit] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + - description: Filter campaigns by name (full-text search). + in: query + name: filter[campaign][name] + required: false + schema: + example: security + type: string + - description: Filter campaigns by status. + in: query + name: filter[campaign][status] + required: false + schema: + example: in_progress + type: string + - description: Filter campaigns by owner UUID. + in: query + name: filter[campaign][owner] + required: false + schema: + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2026-01-01T00:00:00Z' + entity_scope: kind:service + key: test-campaign-1 + modified_at: '2026-01-01T00:00:00Z' + name: Test Campaign 1 + owner: '' + start_date: '2026-01-01T00:00:00Z' + status: in_progress + id: campaign-1 + meta: + entity_count: 25 + rule_count: 2 + relationships: + rules: + data: + - id: rule-1 + type: rule + - id: rule-2 + type: rule + type: campaign + meta: + count: 1 + limit: 10 + offset: 0 + total: 1 + schema: + $ref: '#/components/schemas/ListCampaignsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + - cases_read + summary: List all campaigns + tags: + - Scorecards + post: + description: Creates a new scorecard campaign. + operationId: CreateScorecardCampaign + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Campaign to improve security posture for Q1 2024. + due_date: '2024-03-31T23:59:59Z' + entity_scope: kind:service AND team:platform + guidance: Please ensure all services pass the security requirements. + key: q1-security-2024 + name: Q1 Security Campaign + owner_id: 550e8400-e29b-41d4-a716-446655440000 + rule_ids: + - q8MQxk8TCqrHnWkx + - r9NRyl9UDrsIoXly + start_date: '2024-01-01T00:00:00Z' + status: in_progress + type: campaign + schema: + $ref: '#/components/schemas/CreateCampaignRequest' + description: Campaign data. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-01-01T00:00:00Z' + key: minimal-campaign + modified_at: '2026-01-01T00:00:00Z' + name: Minimal Campaign + owner: 21f98ae1-4ae2-11eb-958f-07e105a6e810 + start_date: '2026-01-01T00:00:00Z' + status: in_progress + id: campaign-2 + relationships: + rules: + data: + - id: rule-1 + type: rule + type: campaign + schema: + $ref: '#/components/schemas/CampaignResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + - cases_write + summary: Create a new campaign + tags: + - Scorecards + /api/v2/scorecard/campaigns/{campaign_id}: + delete: + description: Deletes a single campaign by ID or key. + operationId: DeleteScorecardCampaign + parameters: + - description: Campaign ID or key. + in: path + name: campaign_id + required: true + schema: + example: c10ODp0VCrrIpXmz + type: string + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + - cases_write + summary: Delete a campaign + tags: + - Scorecards + get: + description: Fetches a single campaign by ID or key. + operationId: GetScorecardCampaign + parameters: + - description: Campaign ID or key. + in: path + name: campaign_id + required: true + schema: + example: c10ODp0VCrrIpXmz + type: string + - description: Include related data (for example, scores). + in: query + name: include + required: false + schema: + example: scores + type: string + - description: Include metadata (entity and rule counts). + in: query + name: include_meta + required: false + schema: + example: true + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-01-01T00:00:00Z' + key: test-campaign + modified_at: '2026-01-01T00:00:00Z' + name: Test Campaign + owner: '' + start_date: '2026-01-01T00:00:00Z' + status: in_progress + id: c2b79b87-327c-40fa-b726-228f1a60bbb4 + relationships: + campaign_score: + data: + id: c2b79b87-327c-40fa-b726-228f1a60bbb4 + type: score + rule_scores: + data: + - id: rule-1 + type: score + rules: + data: + - id: rule-1 + type: rule + type: campaign + included: + - attributes: + aggregation: campaign + denominator: 13 + numerator: 10 + score: 76.92 + total_fail: 2 + total_no_data: 0 + total_pass: 10 + total_skip: 1 + id: c2b79b87-327c-40fa-b726-228f1a60bbb4 + type: score + schema: + $ref: '#/components/schemas/CampaignResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + - cases_read + summary: Get a campaign + tags: + - Scorecards + put: + description: Updates an existing campaign. + operationId: UpdateScorecardCampaign + parameters: + - description: Campaign ID or key. + in: path + name: campaign_id + required: true + schema: + example: c10ODp0VCrrIpXmz + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Campaign to improve security posture for Q1 2024. + due_date: '2024-03-31T23:59:59Z' + entity_scope: kind:service AND team:platform + guidance: Please ensure all services pass the security requirements. + key: q1-security-2024 + name: Q1 Security Campaign + owner_id: 550e8400-e29b-41d4-a716-446655440000 + rule_ids: + - q8MQxk8TCqrHnWkx + - r9NRyl9UDrsIoXly + start_date: '2024-01-01T00:00:00Z' + status: in_progress + type: campaign + schema: + $ref: '#/components/schemas/UpdateCampaignRequest' + description: Campaign data. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-01-01T00:00:00Z' + description: Updated Description + key: updated-campaign + modified_at: '2026-01-02T00:00:00Z' + name: Updated Campaign + owner: 21f98ae1-4ae2-11eb-958f-07e105a6e810 + start_date: '2026-01-01T00:00:00Z' + status: completed + id: 9c15b9ca-5abd-4875-84c2-02e166a45959 + relationships: + rules: + data: + - id: rule-1 + type: rule + - id: rule-2 + type: rule + type: campaign + schema: + $ref: '#/components/schemas/CampaignResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + - cases_write + summary: Update a campaign + tags: + - Scorecards /api/v2/scorecard/outcomes: get: description: Fetches all rule outcomes. @@ -365,21 +1137,21 @@ paths: schema: example: name type: string - - description: Filter the outcomes on a specific service name. + - description: Filter outcomes on a specific service name. in: query name: filter[outcome][service_name] required: false schema: example: web-store type: string - - description: Filter the outcomes by a specific state. + - description: Filter outcomes by a specific state. in: query name: filter[outcome][state] required: false schema: example: fail type: string - - description: Filter outcomes on whether a rule is enabled/disabled. + - description: Filter outcomes based on whether a rule is enabled or disabled. in: query name: filter[rule][enabled] required: false @@ -404,6 +1176,25 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2026-01-06T12:51:32.000546001Z' + modified_at: '2026-01-06T12:51:32.000546001Z' + remarks: test + service_name: my-service + state: pass + id: a75tJIv_kNQ + relationships: + rule: + data: + id: rule-1 + type: rule + type: outcome + links: + next: /api/v2/scorecard/outcomes?page%5Blimit%5D=100&page%5Boffset%5D=100 schema: $ref: '#/components/schemas/OutcomesResponse' description: OK @@ -420,22 +1211,28 @@ paths: - apm_service_catalog_read summary: List all rule outcomes tags: - - Service Scorecards + - Scorecards x-pagination: limitParam: page[size] pageOffsetParam: page[offset] resultsPath: data - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). post: description: Updates multiple scorecard rule outcomes in a single batched request. - operationId: UpdateScorecardOutcomesAsync + operationId: UpdateScorecardOutcomes requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + results: + - entity_reference: service:my-service + remarks: 'See: Services' + rule_id: q8MQxk8TCqrHnWkx + state: pass + type: batched-outcome schema: $ref: '#/components/schemas/UpdateOutcomesAsyncRequest' description: Set of scorecard outcomes. @@ -456,22 +1253,29 @@ paths: appKeyAuth: [] - AuthZ: - apm_service_catalog_write - summary: Update Scorecard outcomes asynchronously + summary: Update Scorecard outcomes tags: - - Service Scorecards + - Scorecards x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). /api/v2/scorecard/outcomes/batch: post: + deprecated: true description: Sets multiple service-rule outcomes in a single batched request. operationId: CreateScorecardOutcomesBatch requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + results: + - remarks: 'See: Services' + rule_id: q8MQxk8TCqrHnWkx + service_name: my-service + state: pass + type: batched-outcome schema: $ref: '#/components/schemas/OutcomesBatchRequest' description: Set of scorecard outcomes. @@ -480,6 +1284,25 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + modified_at: '2026-03-11T07:37:20.758067Z' + remarks: test remarks + service_name: my-service + state: pass + id: nFs2_9E97Zo + relationships: + rule: + data: + id: rule-1 + type: rule + type: outcome + meta: + total_received: 1 + total_staged: 1 schema: $ref: '#/components/schemas/OutcomesBatchResponse' description: OK @@ -496,13 +1319,12 @@ paths: - apm_service_catalog_write summary: Create outcomes batch tags: - - Service Scorecards + - Scorecards x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + x-sunset: '2026-04-01' + x-unstable: |- + **Note**: This endpoint is deprecated. To update outcomes, use the + [Update Scorecard outcomes](https://docs.datadoghq.com/api/latest/scorecards/update-scorecard-outcomes/) endpoint. /api/v2/scorecard/rules: get: description: Fetch all rules. @@ -559,9 +1381,7 @@ paths: schema: example: name, description type: string - - description: >- - Return only specific fields in the included response for scorecard - attributes. + - description: Return only specific fields in the included response for scorecard attributes. in: query name: fields[scorecard] required: false @@ -572,6 +1392,34 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + category: Test Scorecard + created_at: '2026-01-06T12:51:32Z' + custom: true + enabled: true + level: 3 + modified_at: '2026-01-06T12:51:32Z' + name: Test Rule 1 + scorecard_name: Test Scorecard + id: rule-1 + relationships: + scorecard: + data: + id: scorecard-1 + type: scorecard + type: rule + included: + - attributes: + description: Scorecard Description + name: Test Scorecard + id: scorecard-1 + type: scorecard + links: + next: /api/v2/scorecard/rules?include=scorecard&page%5Blimit%5D=100&page%5Boffset%5D=100 schema: $ref: '#/components/schemas/ListRulesResponse' description: OK @@ -588,22 +1436,27 @@ paths: - apm_service_catalog_read summary: List all rules tags: - - Service Scorecards + - Scorecards x-pagination: limitParam: page[size] pageOffsetParam: page[offset] resultsPath: data - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). post: description: Creates a new rule. operationId: CreateScorecardRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: My Rule + owner: Datadog + scorecard_name: My Scorecard + type: rule schema: $ref: '#/components/schemas/CreateRuleRequest' description: Rule attributes. @@ -612,6 +1465,26 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + category: Test Scorecard + created_at: '2026-01-06T12:51:32Z' + custom: true + enabled: true + level: 3 + modified_at: '2026-01-06T12:51:32Z' + name: Test Rule + scorecard_name: Test Scorecard + id: rule-1 + relationships: + scorecard: + data: + id: scorecard-1 + type: scorecard + type: rule schema: $ref: '#/components/schemas/CreateRuleResponse' description: Created @@ -628,13 +1501,8 @@ paths: - apm_service_catalog_write summary: Create a new rule tags: - - Service Scorecards + - Scorecards x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). /api/v2/scorecard/rules/{rule_id}: delete: description: Deletes a single rule. @@ -659,12 +1527,7 @@ paths: - apm_service_catalog_write summary: Delete a rule tags: - - Service Scorecards - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Scorecards put: description: Updates an existing rule. operationId: UpdateScorecardRule @@ -673,6 +1536,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: Updated Description + enabled: false + name: Updated Rule + owner: team:updated-team + scope_query: kind:service + scorecard_name: Updated Scorecard + type: rule schema: $ref: '#/components/schemas/UpdateRuleRequest' description: Rule attributes. @@ -681,6 +1556,33 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + category: Updated Scorecard + created_at: '2026-01-06T12:51:32Z' + custom: true + description: Updated Description + enabled: false + level: 1 + modified_at: '2026-01-06T13:00:00Z' + name: Updated Rule + owner: team:updated-team + scope_query: kind:service + scorecard_name: Updated Scorecard + id: rule-1 + relationships: + scope: + data: + id: ae07a16e-1319-5e61-bdba-b3026bc2bdcd + type: entity-scope + scorecard: + data: + id: scorecard-2 + type: scorecard + type: rule schema: $ref: '#/components/schemas/UpdateRuleResponse' description: Rule updated successfully @@ -695,15 +1597,295 @@ paths: appKeyAuth: [] - AuthZ: - apm_service_catalog_write - summary: Update an existing rule + summary: Update an existing scorecard rule tags: - - Service Scorecards + - Scorecards x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + /api/v2/scorecard/scorecards: + get: + description: Fetches all scorecards. + operationId: ListScorecards + parameters: + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + - description: Maximum number of scorecards to return. + in: query + name: page[size] + required: false + schema: + default: 100 + example: 10 + format: int64 + type: integer + - description: Filter by scorecard ID. + in: query + name: filter[scorecard][id] + required: false + schema: + example: q8MQxk8TCqrHnWkx + type: string + - description: Filter by scorecard name (partial match). + in: query + name: filter[scorecard][name] + required: false + schema: + example: Observability + type: string + - description: Filter by scorecard description (partial match). + in: query + name: filter[scorecard][description] + required: false + schema: + example: Best Practices + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2026-01-01T00:00:00Z' + description: Best practices for observability. + modified_at: '2026-01-05T14:20:00Z' + name: Observability Best Practices + id: q8MQxk8TCqrHnWkx + type: scorecard + schema: + $ref: '#/components/schemas/ListScorecardsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: List all scorecards + tags: + - Scorecards + /api/v2/scorecard/scores/{aggregation}: + get: + description: Returns a list of scorecard scores for each aggregation type, with score breakdowns. + operationId: ListScorecardScores + parameters: + - description: The type of scores being requested. + in: path + name: aggregation + required: true + schema: + $ref: '#/components/schemas/ScorecardScoresAggregation' + - description: Filter scores by rule ID(s), comma-separated. + in: query + name: filter[rule][id] + required: false + schema: + type: string + - description: Filter scores by rule name. + in: query + name: filter[rule][name] + required: false + schema: + type: string + - description: Filter scores by rule level(s), comma-separated. + in: query + name: filter[rule][level] + required: false + schema: + type: string + - description: Filter scores by scorecard ID(s), comma-separated. + in: query + name: filter[rule][scorecard_id] + required: false + schema: + type: string + - description: Filter scores to show only custom rules. + in: query + name: filter[rule][is_custom] + required: false + schema: + type: boolean + - description: Filter scores to show only enabled rules. + in: query + name: filter[rule][is_enabled] + required: false + schema: + type: boolean + - description: 'Sort scores by field. Use a hyphen prefix for descending order. Options: score, numerator, denominator, total_pass, total_fail, total_skip, total_no_data.' + in: query + name: sort + required: false + schema: + type: string + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Number of scores to return. Max is 1000. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + aggregation: by-entity + denominator: 4 + numerator: 3 + score: 0.75 + total_fail: 1 + total_no_data: 0 + total_pass: 3 + total_skip: 0 + id: service:my-service + relationships: + entity: + data: + id: service:my-service + type: entity + type: score + links: + next: /api/v2/scorecard/scores/by-entity?page[offset]=100&page[limit]=100 + meta: + count: 1 + limit: 100 + offset: 0 + total: 42 + schema: + $ref: '#/components/schemas/ListScorecardScoresResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: List all scores + tags: + - Scorecards + /api/v2/trace/{trace_id}: + get: + description: |- + Retrieve a full APM trace by its trace ID, including every span in the trace. + Traces are returned from live storage when available and fall back to longer-term storage. + This endpoint is rate limited to `60` requests per minute per organization. + operationId: GetTraceByID + parameters: + - $ref: '#/components/parameters/TraceIDPathParameter' + - description: |- + List of span fields to include in the response. When omitted, every available field is returned. + Values may be passed as repeated query parameters or as a single comma-separated value. + example: + - service + - resource_name + in: query + name: include_fields + required: false + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + is_truncated: false + spans: + - duration: 500000000 + endTime: 1716800000500000000 + error: 0 + meta: + env: production + http.method: GET + metrics: + http.status_code: 200 + name: web.request + parentID: 0 + resource: GET /products + service: web-store + spanID: 9876543210987655000 + startTime: 1716800000000000000 + traceID: 12345678901234567000 + traceIDFull: 0000000000000000abc1230000000000 + type: web + id: 0000000000000000abc1230000000000 + type: trace + schema: + $ref: '#/components/schemas/TraceResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '413': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Payload Too Large + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get a trace by ID + tags: + - APM Trace + x-permission: + operator: OR + permissions: + - apm_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). components: schemas: SpansMetricsResponse: @@ -787,6 +1969,66 @@ components: required: - data type: object + ServiceList: + description: The response body for the service list endpoint. + properties: + data: + $ref: '#/components/schemas/ServiceListData' + type: object + PrunedTraceResponse: + description: Response containing a single pruned trace. + properties: + data: + $ref: '#/components/schemas/PrunedTraceData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + ListCampaignsResponse: + description: Response containing a list of campaigns. + properties: + data: + $ref: '#/components/schemas/ListCampaignsResponseData' + meta: + $ref: '#/components/schemas/PaginatedResponseMeta' + required: + - data + - meta + type: object + CreateCampaignRequest: + description: Request to create a new campaign. + properties: + data: + $ref: '#/components/schemas/CreateCampaignRequestData' + required: + - data + type: object + CampaignResponse: + description: Response containing campaign data. + properties: + data: + $ref: '#/components/schemas/CampaignResponseData' + required: + - data + type: object + UpdateCampaignRequest: + description: Request to update a campaign. + properties: + data: + $ref: '#/components/schemas/UpdateCampaignRequestData' + required: + - data + type: object OutcomesResponse: description: Scorecard outcomes - the result of a rule for a service. properties: @@ -814,6 +2056,12 @@ components: properties: data: $ref: '#/components/schemas/OutcomesBatchResponseData' + example: + - attributes: + service_name: my-service + state: pass + id: outcome-abc123 + type: rule-outcome meta: $ref: '#/components/schemas/OutcomesBatchResponseMeta' required: @@ -852,6 +2100,51 @@ components: data: $ref: '#/components/schemas/UpdateRuleResponseData' type: object + ListScorecardsResponse: + description: Response containing a list of scorecards. + properties: + data: + $ref: '#/components/schemas/ListScorecardsResponseData' + required: + - data + type: object + ScorecardScoresAggregation: + description: Dimension to group scores by. + enum: + - by-entity + - by-rule + - by-scorecard + - by-team + - by-kind + example: by-entity + type: string + x-enum-varnames: + - BY_ENTITY + - BY_RULE + - BY_SCORECARD + - BY_TEAM + - BY_KIND + ListScorecardScoresResponse: + description: A list of scorecard scores for a given aggregation type. + properties: + data: + description: Array of score objects. + items: + $ref: '#/components/schemas/ScorecardScoreData' + type: array + links: + $ref: '#/components/schemas/ListRulesResponseLinks' + meta: + $ref: '#/components/schemas/ListScorecardScoresMeta' + type: object + TraceResponse: + description: Response containing a single trace. + properties: + data: + $ref: '#/components/schemas/TraceData' + required: + - data + type: object SpansMetricResponseData: description: The span-based metric properties. properties: @@ -974,6 +2267,129 @@ components: - attributes - type type: object + ServiceListData: + description: A single data item in the service list response. + properties: + attributes: + $ref: '#/components/schemas/ServiceListDataAttributes' + id: + description: The unique identifier of the service. + type: string + type: + $ref: '#/components/schemas/ServiceListDataType' + required: + - type + type: object + PrunedTraceData: + description: A pruned trace resource document. + properties: + attributes: + $ref: '#/components/schemas/PrunedTraceAttributes' + id: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: 0000000000000000abc1230000000000 + type: string + type: + $ref: '#/components/schemas/PrunedTraceType' + required: + - id + - type + - attributes + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + ListCampaignsResponseData: + description: Array of campaigns. + items: + $ref: '#/components/schemas/CampaignResponseData' + type: array + PaginatedResponseMeta: + description: Metadata for scores response. + properties: + count: + description: Number of entities in this response. + example: 10 + format: int64 + type: integer + limit: + description: Pagination limit. + example: 10 + format: int64 + type: integer + offset: + description: Pagination offset. + example: 0 + format: int64 + type: integer + total: + description: Total number of entities available. + example: 150 + format: int64 + type: integer + required: + - count + - total + - limit + - offset + type: object + CreateCampaignRequestData: + description: Data for creating a new campaign. + properties: + attributes: + $ref: '#/components/schemas/CreateCampaignRequestAttributes' + type: + $ref: '#/components/schemas/CampaignType' + required: + - type + - attributes + type: object + CampaignResponseData: + description: Campaign data. + properties: + attributes: + $ref: '#/components/schemas/CampaignResponseAttributes' + id: + description: The unique ID of the campaign. + example: c10ODp0VCrrIpXmz + type: string + type: + $ref: '#/components/schemas/CampaignType' + required: + - id + - type + - attributes + type: object + UpdateCampaignRequestData: + description: Data for updating a campaign. + properties: + attributes: + $ref: '#/components/schemas/UpdateCampaignRequestAttributes' + type: + $ref: '#/components/schemas/CampaignType' + required: + - type + - attributes + type: object OutcomesResponseData: description: List of rule outcomes. items: @@ -989,8 +2405,7 @@ components: properties: next: description: Link for the next set of results. - example: >- - /api/v2/scorecard/outcomes?include=rule&page%5Blimit%5D=100&page%5Boffset%5D=100 + example: /api/v2/scorecard/outcomes?include=rule&page%5Blimit%5D=100&page%5Boffset%5D=100 type: string type: object UpdateOutcomesAsyncRequestData: @@ -1018,15 +2433,11 @@ components: description: Metadata pertaining to the bulk operation. properties: total_received: - description: >- - Total number of scorecard results received during the bulk - operation. + description: Total number of scorecard results received during the bulk operation. format: int64 type: integer total_updated: - description: >- - Total number of scorecard results modified during the bulk - operation. + description: Total number of scorecard results modified during the bulk operation. format: int64 type: integer type: object @@ -1040,15 +2451,14 @@ components: properties: next: description: Link for the next set of rules. - example: >- - /api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2 + example: /api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2 type: string type: object CreateRuleRequestData: description: Scorecard create rule request data. properties: attributes: - $ref: '#/components/schemas/RuleAttributes' + $ref: '#/components/schemas/RuleAttributesRequest' type: $ref: '#/components/schemas/RuleType' type: object @@ -1068,7 +2478,7 @@ components: description: Data for the request to update a scorecard rule. properties: attributes: - $ref: '#/components/schemas/RuleAttributes' + $ref: '#/components/schemas/RuleAttributesRequest' type: $ref: '#/components/schemas/RuleType' type: object @@ -1084,6 +2494,64 @@ components: type: $ref: '#/components/schemas/RuleType' type: object + ListScorecardsResponseData: + description: Array of scorecards. + items: + $ref: '#/components/schemas/ScorecardListResponseData' + type: array + ScorecardScoreData: + description: A scorecard score object for a single entity, rule, scorecard, service, or team. + properties: + attributes: + $ref: '#/components/schemas/ScorecardScoreAttributes' + id: + description: The ID of the entity or resource being scored. + example: '' + type: string + relationships: + $ref: '#/components/schemas/ScorecardScoreRelationships' + type: + $ref: '#/components/schemas/ScorecardScoreDataType' + required: + - id + - type + type: object + ListScorecardScoresMeta: + description: Pagination metadata for scores. + properties: + count: + description: The number of results returned in this page. + format: int64 + type: integer + limit: + description: The page limit. + format: int64 + type: integer + offset: + description: The page offset. + format: int64 + type: integer + total: + description: The total number of results. + format: int64 + type: integer + type: object + TraceData: + description: A trace resource document. + properties: + attributes: + $ref: '#/components/schemas/TraceAttributes' + id: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: 0000000000000000abc1230000000000 + type: string + type: + $ref: '#/components/schemas/TraceType' + required: + - id + - type + - attributes + type: object SpansMetricResponseAttributes: description: The object describing a Datadog span-based metric. properties: @@ -1183,10 +2651,8 @@ components: format: double type: number trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - + description: |- + Sample rate to apply to traces containing spans going through this retention filter. A value of 1.0 keeps all traces with spans matching the query. example: 1 format: double @@ -1202,9 +2668,7 @@ components: x-enum-varnames: - apm_retention_filter RetentionFilterCreateAttributes: - description: >- - The object describing the configuration of the retention filter to - create/update. + description: The object describing the configuration of the retention filter to create/update. properties: enabled: description: Enable/Disable the retention filter. @@ -1226,10 +2690,8 @@ components: format: double type: number trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - + description: |- + Sample rate to apply to traces containing spans going through this retention filter. A value of 1.0 keeps all traces with spans matching the query. example: 1 format: double @@ -1286,19 +2748,15 @@ components: format: double type: number trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - + description: |- + Sample rate to apply to traces containing spans going through this retention filter. A value of 1.0 keeps all traces with spans matching the query. example: 1 format: double type: number type: object RetentionFilterUpdateAttributes: - description: >- - The object describing the configuration of the retention filter to - create/update. + description: The object describing the configuration of the retention filter to create/update. properties: enabled: description: Enable/Disable the retention filter. @@ -1320,10 +2778,8 @@ components: format: double type: number trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - + description: |- + Sample rate to apply to traces containing spans going through this retention filter. A value of 1.0 keeps all traces with spans matching the query. example: 1 format: double @@ -1335,6 +2791,256 @@ components: - filter_type - rate type: object + ServiceListDataAttributes: + description: Attributes of a service list entry, containing metadata and a list of service names. + properties: + metadata: + description: A list of metadata items associated with the service. + items: + $ref: '#/components/schemas/ServiceListDataAttributesMetadataItems' + type: array + services: + description: A list of service names. + items: + description: A single service name. + type: string + type: array + type: object + ServiceListDataType: + default: services_list + description: Services list resource type. + enum: + - services_list + example: services_list + type: string + x-enum-varnames: + - SERVICES_LIST + PrunedTraceAttributes: + description: The attributes of a pruned trace returned by the Get pruned trace by ID endpoint. + properties: + is_truncated: + description: |- + Indicates whether the underlying trace was truncated because its size + exceeded the maximum that can be retrieved from storage. + example: false + type: boolean + size_bytes: + description: The size, in bytes, of the original (non-pruned) trace before summarization. + example: 12345 + format: int32 + maximum: 2147483647 + type: integer + summarized_trace: + $ref: '#/components/schemas/SummarizedTrace' + required: + - summarized_trace + - is_truncated + - size_bytes + type: object + PrunedTraceType: + description: The type of the pruned trace resource. The value is always `pruned_trace`. + enum: + - pruned_trace + example: pruned_trace + type: string + x-enum-varnames: + - PRUNED_TRACE + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + CreateCampaignRequestAttributes: + description: Attributes for creating a new campaign. + properties: + description: + description: The description of the campaign. + example: Campaign to improve security posture for Q1 2024. + type: string + due_date: + description: The due date of the campaign. + example: '2024-03-31T23:59:59Z' + format: date-time + type: string + entity_scope: + description: Entity scope query to filter entities for this campaign. + example: kind:service AND team:platform + type: string + guidance: + description: Guidance for the campaign. + example: Please ensure all services pass the security requirements. + type: string + key: + description: The unique key for the campaign. + example: q1-security-2024 + type: string + name: + description: The name of the campaign. + example: Q1 Security Campaign + type: string + owner_id: + description: The UUID of the campaign owner. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + rule_ids: + description: Array of rule IDs associated with this campaign. + example: + - q8MQxk8TCqrHnWkx + - r9NRyl9UDrsIoXly + items: + description: The unique ID of a scorecard rule. + type: string + type: array + start_date: + description: The start date of the campaign. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + status: + $ref: '#/components/schemas/CampaignStatus' + required: + - name + - key + - owner_id + - start_date + - rule_ids + type: object + CampaignType: + description: The JSON:API type for campaigns. + enum: + - campaign + example: campaign + type: string + x-enum-varnames: + - CAMPAIGN + CampaignResponseAttributes: + description: Campaign attributes. + properties: + created_at: + description: Creation time of the campaign. + example: '2023-12-15T10:30:00Z' + format: date-time + type: string + description: + description: The description of the campaign. + example: Campaign to improve security posture for Q1 2024. + type: string + due_date: + description: The due date of the campaign. + example: '2024-03-31T23:59:59Z' + format: date-time + type: string + entity_scope: + description: Entity scope query to filter entities for this campaign. + example: kind:service AND team:platform + type: string + guidance: + description: Guidance for the campaign. + example: Please ensure all services pass the security requirements. + type: string + key: + description: The unique key for the campaign. + example: q1-security-2024 + type: string + modified_at: + description: Time of last campaign modification. + example: '2024-01-05T14:20:00Z' + format: date-time + type: string + name: + description: The name of the campaign. + example: Q1 Security Campaign + type: string + owner: + description: The UUID of the campaign owner. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + start_date: + description: The start date of the campaign. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + status: + description: The status of the campaign. + example: in_progress + type: string + required: + - key + - name + - owner + - status + - start_date + - created_at + - modified_at + type: object + UpdateCampaignRequestAttributes: + description: Attributes for updating a campaign. + properties: + description: + description: The description of the campaign. + example: Campaign to improve security posture for Q1 2024. + type: string + due_date: + description: The due date of the campaign. + example: '2024-03-31T23:59:59Z' + format: date-time + type: string + entity_scope: + description: Entity scope query to filter entities for this campaign. + example: kind:service AND team:platform + type: string + guidance: + description: Guidance for the campaign. + example: Please ensure all services pass the security requirements. + type: string + key: + description: The unique key for the campaign. + example: q1-security-2024 + type: string + name: + description: The name of the campaign. + example: Q1 Security Campaign + type: string + owner_id: + description: The UUID of the campaign owner. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + rule_ids: + description: Array of rule IDs associated with this campaign. + example: + - q8MQxk8TCqrHnWkx + - r9NRyl9UDrsIoXly + items: + description: The unique ID of a scorecard rule. + type: string + type: array + start_date: + description: The start date of the campaign. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + status: + description: The status of the campaign. + example: in_progress + type: string + required: + - name + - owner_id + - status + - start_date + - rule_ids + type: object OutcomesResponseDataItem: description: A single rule outcome. properties: @@ -1406,6 +3112,43 @@ components: type: $ref: '#/components/schemas/RuleType' type: object + RuleAttributesRequest: + description: Attributes for creating or updating a rule. Server-managed fields (created_at, modified_at, custom) are excluded. + properties: + description: + description: Explanation of the rule. + type: string + enabled: + description: If enabled, the rule is calculated as part of the score. + example: true + type: boolean + level: + $ref: '#/components/schemas/RuleLevel' + name: + description: Name of the rule. + example: Team Defined + type: string + owner: + description: Owner of the rule. + type: string + scope_query: + description: A query to filter which entities this rule applies to. + example: kind:service + type: string + scorecard_name: + description: The scorecard name to which this rule must belong. + example: Deployments automated via Deployment Trains + type: string + type: object + RuleType: + default: rule + description: The JSON:API type for scorecard rules. + enum: + - rule + example: rule + type: string + x-enum-varnames: + - RULE RuleAttributes: description: Details of a rule. properties: @@ -1440,20 +3183,15 @@ components: owner: description: Owner of the rule. type: string - scorecard_name: - description: The scorecard name to which this rule must belong. - example: Deployments automated via Deployment Trains + scope_query: + description: A query to filter which entities this rule applies to. + example: kind:service type: string - type: object - RuleType: - default: rule - description: The JSON:API type for scorecard rules. - enum: - - rule - example: rule - type: string - x-enum-varnames: - - RULE + scorecard_name: + description: The scorecard name to which this rule must belong. + example: Deployments automated via Deployment Trains + type: string + type: object RuleId: description: The unique ID for a scorecard rule. example: q8MQxk8TCqrHnWkx @@ -1464,6 +3202,108 @@ components: scorecard: $ref: '#/components/schemas/RelationshipToRuleData' type: object + ScorecardListResponseData: + description: Scorecard data. + properties: + attributes: + $ref: '#/components/schemas/ScorecardListResponseAttributes' + id: + description: The unique ID of the scorecard. + example: q8MQxk8TCqrHnWkx + type: string + type: + $ref: '#/components/schemas/ScorecardListType' + required: + - id + - type + - attributes + type: object + ScorecardScoreAttributes: + description: Attributes of a scorecard score. + properties: + aggregation: + $ref: '#/components/schemas/ScorecardScoresAggregation' + denominator: + description: The denominator used to compute the score ratio. + format: int64 + type: integer + level: + description: The maturity level of the associated rule. + format: int64 + type: integer + numerator: + description: The numerator used to compute the score ratio. + format: int64 + type: integer + score: + description: The computed score ratio (numerator/denominator), from 0 to 1. + format: double + type: number + total_entities: + description: The total number of entities evaluated. + format: int64 + type: integer + total_fail: + description: The number of rules that failed. + format: int64 + type: integer + total_no_data: + description: The number of rules with no data. + format: int64 + type: integer + total_pass: + description: The number of rules that passed. + format: int64 + type: integer + total_skip: + description: The number of rules that were skipped. + format: int64 + type: integer + type: object + ScorecardScoreRelationships: + description: Relationships for a scorecard score, depending on the aggregation type. + properties: + entity: + $ref: '#/components/schemas/ScorecardScoreRelationshipItem' + rule: + $ref: '#/components/schemas/ScorecardScoreRelationshipItem' + scorecard: + $ref: '#/components/schemas/ScorecardScoreRelationshipItem' + service: + $ref: '#/components/schemas/ScorecardScoreRelationshipItem' + team: + $ref: '#/components/schemas/ScorecardScoreRelationshipItem' + type: object + ScorecardScoreDataType: + default: score + description: The JSON:API resource type. + enum: + - score + example: score + type: string + x-enum-varnames: + - SCORE + TraceAttributes: + description: The attributes of a trace returned by the Get trace by ID endpoint. + properties: + is_truncated: + description: Indicates whether the trace was truncated because its size exceeded the maximum response payload. + example: false + type: boolean + spans: + $ref: '#/components/schemas/APMTraceSpans' + required: + - is_truncated + - spans + type: object + TraceType: + description: The type of the trace resource. The value is always `trace`. + enum: + - trace + example: trace + type: string + x-enum-varnames: + - TRACE SpansMetricResponseCompute: description: The compute rule to compute the span-based metric. properties: @@ -1472,16 +3312,12 @@ components: include_percentiles: $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' path: - description: >- - The path to the value the span-based metric will aggregate on (only - used if the aggregation type is a "distribution"). + description: The path to the value the span-based metric will aggregate on (only used if the aggregation type is a "distribution"). example: '@duration' type: string type: object SpansMetricResponseFilter: - description: >- - The span-based metric filter. Spans matching this filter will be - aggregated in this metric. + description: The span-based metric filter. Spans matching this filter will be aggregated in this metric. properties: query: description: The search query - following the span search syntax. @@ -1496,9 +3332,7 @@ components: example: resource_name type: string tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. example: resource_name type: string type: object @@ -1510,18 +3344,14 @@ components: include_percentiles: $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' path: - description: >- - The path to the value the span-based metric will aggregate on (only - used if the aggregation type is a "distribution"). + description: The path to the value the span-based metric will aggregate on (only used if the aggregation type is a "distribution"). example: '@duration' type: string required: - aggregation_type type: object SpansMetricFilter: - description: >- - The span-based metric filter. Spans matching this filter will be - aggregated in this metric. + description: The span-based metric filter. Spans matching this filter will be aggregated in this metric. properties: query: default: '*' @@ -1537,9 +3367,7 @@ components: example: resource_name type: string tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. example: resource_name type: string required: @@ -1555,9 +3383,7 @@ components: description: The spans filter used to index spans. properties: query: - description: >- - The search query - following the [span search - syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). + description: The search query - following the [span search syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). example: '@http.status_code:200 service:my-service' type: string type: object @@ -1578,9 +3404,7 @@ components: description: The spans filter. Spans matching this filter will be indexed and stored. properties: query: - description: >- - The search query - following the [span search - syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). + description: The search query - following the [span search syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). example: '@http.status_code:200 service:my-service' type: string required: @@ -1588,15 +3412,48 @@ components: type: object RetentionFilterType: default: spans-sampling-processor - description: >- - The type of retention filter. The value should always be - spans-sampling-processor. + description: The type of retention filter. The value should always be spans-sampling-processor. enum: - spans-sampling-processor example: spans-sampling-processor type: string x-enum-varnames: - SPANS_SAMPLING_PROCESSOR + ServiceListDataAttributesMetadataItems: + description: An object containing metadata flags for a service, indicating whether it is traced by APM or monitored through Universal Service Monitoring. + properties: + isTraced: + description: Indicates whether the service is traced by APM. + type: boolean + isUsm: + description: Indicates whether the service uses Universal Service Monitoring. + type: boolean + type: object + SummarizedTrace: + description: A summarized, hierarchical view of a trace. + properties: + root: + $ref: '#/components/schemas/SummarizedSpan' + traceId: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: 0000000000000000abc1230000000000 + type: string + required: + - traceId + - root + type: object + CampaignStatus: + description: The status of the campaign. + enum: + - in_progress + - not_started + - completed + example: in_progress + type: string + x-enum-varnames: + - IN_PROGRESS + - NOT_STARTED + - COMPLETED OutcomesBatchResponseAttributes: description: The JSON:API attributes for an outcome. properties: @@ -1609,9 +3466,7 @@ components: format: date-time type: string remarks: - description: >- - Any remarks regarding the scorecard rule's evaluation, and supports - HTML hyperlinks. + description: Any remarks regarding the scorecard rule's evaluation, and supports HTML hyperlinks. example: 'See: Services' type: string service_name: @@ -1654,9 +3509,7 @@ components: entity_reference: $ref: '#/components/schemas/EntityReference' remarks: - description: >- - Any remarks regarding the scorecard rule's evaluation. Supports HTML - hyperlinks. + description: Any remarks regarding the scorecard rule's evaluation. Supports HTML hyperlinks. example: 'See: Services' type: string rule_id: @@ -1669,14 +3522,10 @@ components: - state type: object OutcomesBatchRequestItem: - description: >- - Scorecard outcome for a specific rule, for a given service within a - batched update. + description: Scorecard outcome for a specific rule, for a given service within a batched update. properties: remarks: - description: >- - Any remarks regarding the scorecard rule's evaluation, and supports - HTML hyperlinks. + description: Any remarks regarding the scorecard rule's evaluation, and supports HTML hyperlinks. example: 'See: Services' type: string rule_id: @@ -1705,6 +3554,51 @@ components: data: $ref: '#/components/schemas/RelationshipToRuleDataObject' type: object + ScorecardListResponseAttributes: + description: Scorecard attributes. + properties: + created_at: + description: Creation time of the scorecard. + example: '2023-01-15T10:30:00Z' + format: date-time + type: string + description: + description: The description of the scorecard. + example: Best practices for observability. + type: string + modified_at: + description: Time of last scorecard modification. + example: '2024-01-05T14:20:00Z' + format: date-time + type: string + name: + description: The name of the scorecard. + example: Observability Best Practices + type: string + required: + - name + - created_at + - modified_at + type: object + ScorecardListType: + description: The JSON:API type for scorecard list. + enum: + - scorecard + example: scorecard + type: string + x-enum-varnames: + - SCORECARD + ScorecardScoreRelationshipItem: + description: A relationship item for a score. + properties: + data: + $ref: '#/components/schemas/ScorecardScoreRelationshipData' + type: object + APMTraceSpans: + description: The list of spans that compose the trace. + items: + $ref: '#/components/schemas/APMTraceSpan' + type: array SpansMetricComputeAggregationType: description: The type of aggregation to use. enum: @@ -1716,13 +3610,102 @@ components: - COUNT - DISTRIBUTION SpansMetricComputeIncludePercentiles: - description: >- - Toggle to include or exclude percentile aggregations for distribution - metrics. - + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. Only present when the `aggregation_type` is `distribution`. example: false type: boolean + SummarizedSpan: + description: A node in the pruned trace tree. + properties: + children: + description: The child spans of this node in the pruned tree. + example: [] + items: + $ref: '#/components/schemas/SummarizedSpan' + type: array + durationSeconds: + description: The duration of the span, in seconds. + example: 0.5 + format: double + type: number + endTime: + description: The end time of the span, in RFC3339 format. + example: '2026-05-27T12:00:00.5Z' + format: date-time + type: string + error: + $ref: '#/components/schemas/APMSpanErrorFlag' + hidden_child_spans_count: + description: The number of child spans that were pruned from this node when summarizing the trace. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + meta: + additionalProperties: + type: string + description: String-valued tags attached to the span. + example: + env: production + type: object + metrics: + additionalProperties: + format: double + type: number + description: Numeric metrics attached to the span. + example: + http.status_code: 200 + type: object + name: + description: The operation name of the span. + example: web.request + type: string + parentID: + description: The ID of the parent span, or `0` when the span is the trace root. + example: 0 + format: int64 + type: integer + resource: + description: The resource that the span describes. + example: GET /products + type: string + service: + description: The name of the service that emitted the span. + example: web-store + type: string + spanID: + description: The span ID, as an unsigned 64-bit integer. + example: 9876543210987655000 + format: int64 + type: integer + span_kind: + description: |- + The OpenTelemetry span kind, for example `INTERNAL`, `SERVER`, `CLIENT`, + `PRODUCER`, or `CONSUMER`. + example: SERVER + type: string + startTime: + description: The start time of the span, in RFC3339 format. + example: '2026-05-27T12:00:00Z' + format: date-time + type: string + required: + - service + - name + - resource + - parentID + - spanID + - startTime + - endTime + - durationSeconds + - error + - meta + - metrics + - span_kind + - hidden_child_spans_count + - children + type: object State: description: The state of the rule evaluation. enum: @@ -1755,10 +3738,138 @@ components: type: $ref: '#/components/schemas/ScorecardType' type: object + ScorecardScoreRelationshipData: + description: A relationship data object for a score. + properties: + id: + description: The ID of the related resource. + example: '' + type: string + type: + description: The type of the related resource. + example: '' + type: string + required: + - id + - type + type: object + APMTraceSpan: + description: A single APM span returned as part of a trace. + properties: + duration: + description: The duration of the span, in nanoseconds. + example: 500000000 + format: int64 + type: integer + endTime: + description: The end time of the span, in Unix nanoseconds. + example: 1716800000500000000 + format: int64 + type: integer + error: + $ref: '#/components/schemas/APMSpanErrorFlag' + meta: + additionalProperties: + type: string + description: |- + String-valued tags attached to the span. Tag keys starting with `_` are + filtered out of the response. + example: + env: production + http.method: GET + type: object + metrics: + additionalProperties: + format: double + type: number + description: |- + Numeric metrics attached to the span. Metric keys starting with `_` are + filtered out of the response. + example: + http.status_code: 200 + type: object + name: + description: The operation name of the span. + example: web.request + type: string + parentID: + description: The ID of the parent span, or `0` when the span is a trace root. + example: 0 + format: int64 + type: integer + resource: + description: The resource that the span describes. + example: GET /products + type: string + resourceHash: + description: A hash of the resource field. + example: 6a4e9b7f + type: string + restricted: + description: Whether access to the span is restricted by the organization's data access policies. + example: false + type: boolean + self_time: + description: The time spent in the span itself, excluding time spent in child spans, in nanoseconds. + example: 250000000 + format: double + type: number + service: + description: The name of the service that emitted the span. + example: web-store + type: string + spanID: + description: The span ID, as an unsigned 64-bit integer. + example: 9876543210987655000 + format: int64 + type: integer + startTime: + description: The start time of the span, in Unix nanoseconds. + example: 1716800000000000000 + format: int64 + type: integer + traceID: + description: The lower 64 bits of the trace ID, as an unsigned 64-bit integer. + example: 12345678901234567000 + format: int64 + type: integer + traceIDFull: + description: The full 128-bit trace ID, encoded as a 32-character hexadecimal string. + example: 0000000000000000abc1230000000000 + type: string + type: + description: The type of the span (for example, `web`, `db`, or `rpc`). + example: web + type: string + required: + - service + - name + - resource + - traceID + - spanID + - parentID + - startTime + - endTime + - duration + - error + - type + - meta + - metrics + - traceIDFull + type: object + APMSpanErrorFlag: + description: Error flag for a span. `1` when the span is in error, `0` otherwise. + enum: + - 0 + - 1 + example: 0 + format: int32 + type: integer + x-enum-varnames: + - NO_ERROR + - ERROR RelationshipToOutcomeData: - description: >- - The JSON:API relationship to an outcome, which returns the related rule - id. + description: The JSON:API relationship to an outcome, which returns the related rule id. properties: id: $ref: '#/components/schemas/RuleId' @@ -1826,8 +3937,18 @@ components: required: true schema: type: string + TraceIDPathParameter: + description: |- + The trace ID. Accepts either a 32-character hexadecimal string (128-bit trace ID) + or a decimal string of up to 39 digits. + example: 0000000000000000abc1230000000000 + in: path + name: trace_id + required: true + schema: + type: string PageSize: - description: Size for a given page. The maximum allowed value is 100. + description: Number of items to return per page. The maximum allowed value is 100. in: query name: page[size] required: false @@ -1866,18 +3987,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_spans_metric: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1apm~1config~1metrics/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_spans_metric: operation: $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_spans_metric: operation: $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/get' @@ -1885,27 +4015,29 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_spans_metric: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1apm~1config~1metrics~1{metric_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/spans_metrics/methods/get_spans_metric - - $ref: >- - #/components/x-stackQL-resources/spans_metrics/methods/list_spans_metrics + - $ref: '#/components/x-stackQL-resources/spans_metrics/methods/get_spans_metric' + - $ref: '#/components/x-stackQL-resources/spans_metrics/methods/list_spans_metrics' insert: - - $ref: >- - #/components/x-stackQL-resources/spans_metrics/methods/create_spans_metric + - $ref: '#/components/x-stackQL-resources/spans_metrics/methods/create_spans_metric' update: - - $ref: >- - #/components/x-stackQL-resources/spans_metrics/methods/update_spans_metric + - $ref: '#/components/x-stackQL-resources/spans_metrics/methods/update_spans_metric' delete: - - $ref: >- - #/components/x-stackQL-resources/spans_metrics/methods/delete_spans_metric + - $ref: '#/components/x-stackQL-resources/spans_metrics/methods/delete_spans_metric' replace: [] retention_filters: id: datadog.apm.retention_filters @@ -1919,26 +4051,38 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_apm_retention_filter: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel reorder_apm_retention_filters: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1apm~1config~1retention-filters-execution-order/put + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters-execution-order/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_apm_retention_filter: operation: - $ref: >- - #/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/delete + $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/delete' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel get_apm_retention_filter: operation: $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/get' @@ -1946,28 +4090,142 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_apm_retention_filter: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1apm~1config~1retention-filters~1{filter_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/retention_filters/methods/get_apm_retention_filter' + - $ref: '#/components/x-stackQL-resources/retention_filters/methods/list_apm_retention_filters' + insert: + - $ref: '#/components/x-stackQL-resources/retention_filters/methods/create_apm_retention_filter' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/retention_filters/methods/delete_apm_retention_filter' + replace: + - $ref: '#/components/x-stackQL-resources/retention_filters/methods/update_apm_retention_filter' + services: + id: datadog.apm.services + name: services + title: Services + methods: + get_service_list: + operation: + $ref: '#/paths/~1api~1v2~1apm~1services/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/services/methods/get_service_list' + insert: [] + update: [] + delete: [] + replace: [] + pruned_traces: + id: datadog.apm.pruned_traces + name: pruned_traces + title: Pruned Traces + methods: + get_pruned_trace_by_id: + operation: + $ref: '#/paths/~1api~1v2~1pruned_trace~1{trace_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/pruned_traces/methods/get_pruned_trace_by_id' + insert: [] + update: [] + delete: [] + replace: [] + scorecard_campaigns: + id: datadog.apm.scorecard_campaigns + name: scorecard_campaigns + title: Scorecard Campaigns + methods: + list_scorecard_campaigns: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1campaigns/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_scorecard_campaign: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1campaigns/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_scorecard_campaign: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1campaigns~1{campaign_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_scorecard_campaign: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1campaigns~1{campaign_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_scorecard_campaign: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1campaigns~1{campaign_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/retention_filters/methods/get_apm_retention_filter - - $ref: >- - #/components/x-stackQL-resources/retention_filters/methods/list_apm_retention_filters + - $ref: '#/components/x-stackQL-resources/scorecard_campaigns/methods/get_scorecard_campaign' + - $ref: '#/components/x-stackQL-resources/scorecard_campaigns/methods/list_scorecard_campaigns' insert: - - $ref: >- - #/components/x-stackQL-resources/retention_filters/methods/create_apm_retention_filter + - $ref: '#/components/x-stackQL-resources/scorecard_campaigns/methods/create_scorecard_campaign' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/retention_filters/methods/delete_apm_retention_filter + - $ref: '#/components/x-stackQL-resources/scorecard_campaigns/methods/delete_scorecard_campaign' replace: - - $ref: >- - #/components/x-stackQL-resources/retention_filters/methods/update_apm_retention_filter + - $ref: '#/components/x-stackQL-resources/scorecard_campaigns/methods/update_scorecard_campaign' scorecard_outcomes: id: datadog.apm.scorecard_outcomes name: scorecard_outcomes @@ -1980,25 +4238,30 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_scorecard_outcomes_async: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + skip: + paramName: page[offset] + update_scorecard_outcomes: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1scorecard~1outcomes/post' response: mediaType: application/json openAPIDocKey: '202' - create_scorecard_outcomes_batch: - operation: - $ref: '#/paths/~1api~1v2~1scorecard~1outcomes~1batch/post' - response: - mediaType: application/json - openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/scorecard_outcomes/methods/list_scorecard_outcomes + - $ref: '#/components/x-stackQL-resources/scorecard_outcomes/methods/list_scorecard_outcomes' insert: - - $ref: >- - #/components/x-stackQL-resources/scorecard_outcomes/methods/create_scorecard_outcomes_batch + - $ref: '#/components/x-stackQL-resources/scorecard_outcomes/methods/update_scorecard_outcomes' update: [] delete: [] replace: [] @@ -2014,41 +4277,133 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + skip: + paramName: page[offset] create_scorecard_rule: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1scorecard~1rules/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_scorecard_rule: operation: $ref: '#/paths/~1api~1v2~1scorecard~1rules~1{rule_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel update_scorecard_rule: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1scorecard~1rules~1{rule_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/scorecard_rules/methods/list_scorecard_rules + - $ref: '#/components/x-stackQL-resources/scorecard_rules/methods/list_scorecard_rules' insert: - - $ref: >- - #/components/x-stackQL-resources/scorecard_rules/methods/create_scorecard_rule + - $ref: '#/components/x-stackQL-resources/scorecard_rules/methods/create_scorecard_rule' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/scorecard_rules/methods/delete_scorecard_rule + - $ref: '#/components/x-stackQL-resources/scorecard_rules/methods/delete_scorecard_rule' replace: - - $ref: >- - #/components/x-stackQL-resources/scorecard_rules/methods/update_scorecard_rule + - $ref: '#/components/x-stackQL-resources/scorecard_rules/methods/update_scorecard_rule' + scorecards: + id: datadog.apm.scorecards + name: scorecards + title: Scorecards + methods: + list_scorecards: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1scorecards/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + skip: + paramName: page[offset] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/scorecards/methods/list_scorecards' + insert: [] + update: [] + delete: [] + replace: [] + scorecard_scores: + id: datadog.apm.scorecard_scores + name: scorecard_scores + title: Scorecard Scores + methods: + list_scorecard_scores: + operation: + $ref: '#/paths/~1api~1v2~1scorecard~1scores~1{aggregation}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/scorecard_scores/methods/list_scorecard_scores' + insert: [] + update: [] + delete: [] + replace: [] + traces: + id: datadog.apm.traces + name: traces + title: Traces + methods: + get_trace_by_id: + operation: + $ref: '#/paths/~1api~1v2~1trace~1{trace_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/traces/methods/get_trace_by_id' + insert: [] + update: [] + delete: [] + replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/catalog.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/catalog.yaml index 0dbeec7..c8a777b 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/catalog.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/catalog.yaml @@ -39,6 +39,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + name: Payments API + id: abc-123 + meta: + pagination: + limit: 20 + offset: 0 + total_count: 1 schema: $ref: '#/components/schemas/ListAPIsResponse' description: OK @@ -120,9 +132,7 @@ paths: /api/v2/apicatalog/api/{id}/openapi: get: deprecated: true - description: >- - Retrieve information about a specific API in - [OpenAPI](https://spec.openapis.org/oas/latest.html) format file. + description: Retrieve information about a specific API in [OpenAPI](https://spec.openapis.org/oas/latest.html) format file. operationId: GetOpenAPI parameters: - description: ID of the API to retrieve @@ -135,6 +145,9 @@ paths: '200': content: multipart/form-data: + examples: + default: + value: openapi-spec.yaml schema: format: binary type: string @@ -174,12 +187,9 @@ paths: x-unstable: '**Note**: This endpoint is deprecated.' put: deprecated: true - description: > - Update information about a specific API. The given content will replace - all API content of the given ID. - - The ID is returned by the create API, or can be found in the URL in the - API catalog UI. + description: |- + Update information about a specific API. The given content will replace all API content of the given ID. + The ID is returned by the create API, or can be found in the URL in the API catalog UI. operationId: UpdateOpenAPI parameters: - description: ID of the API to modify @@ -191,6 +201,10 @@ paths: requestBody: content: multipart/form-data: + examples: + default: + value: + openapi_spec_file: openapi-spec.yaml schema: $ref: '#/components/schemas/OpenAPIFile' required: true @@ -198,6 +212,13 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + failed_endpoints: [] + id: abc-123 schema: $ref: '#/components/schemas/UpdateOpenAPIResponse' description: API updated successfully @@ -237,22 +258,19 @@ paths: /api/v2/apicatalog/openapi: post: deprecated: true - description: > - Create a new API from the - [OpenAPI](https://spec.openapis.org/oas/latest.html) specification - given. - - See the [API Catalog - documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) for - additional - + description: |- + Create a new API from the [OpenAPI](https://spec.openapis.org/oas/latest.html) specification given. + See the [API Catalog documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) for additional information about the possible metadata. - It returns the created API ID. operationId: CreateOpenAPI requestBody: content: multipart/form-data: + examples: + default: + value: + openapi_spec_file: openapi-spec.yaml schema: $ref: '#/components/schemas/OpenAPIFile' required: true @@ -260,6 +278,13 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + failed_endpoints: [] + id: abc-123 schema: $ref: '#/components/schemas/CreateOpenAPIResponse' description: API created successfully @@ -313,10 +338,31 @@ paths: - $ref: '#/components/parameters/FilterByRelationType' - $ref: '#/components/parameters/FilterByExcludeSnapshot' - $ref: '#/components/parameters/Include' + - description: If true, includes discovered services from APM and USM that do not have entity definitions. + in: query + name: includeDiscovered + required: false + schema: + default: false + type: boolean responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + apiVersion: v3 + kind: service + name: myService + namespace: default + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: entity + meta: + count: 1 + includeCount: 0 schema: $ref: '#/components/schemas/ListEntityCatalogResponse' description: OK @@ -342,6 +388,33 @@ paths: requestBody: content: application/json: + examples: + default: + value: + apiVersion: v3 + integrations: + opsgenie: + serviceURL: https://www.opsgenie.com/service/shopping-cart + pagerduty: + serviceURL: https://www.pagerduty.com/service-directory/Pshopping-cart + kind: service + metadata: + additionalOwners: + - name: '' + contacts: + - contact: https://slack/ + type: slack + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + inheritFrom: application:default/myapp + links: + - name: mylink + type: link + url: https://mylink + name: myService + namespace: default + tags: + - this:tag + - that:tag schema: $ref: '#/components/schemas/UpsertCatalogEntityRequest' description: Entity YAML or JSON. @@ -350,6 +423,20 @@ paths: '202': content: application/json: + examples: + default: + value: + data: + - attributes: + apiVersion: v3 + kind: service + name: myService + namespace: default + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: entity + meta: + count: 1 + includeCount: 0 schema: $ref: '#/components/schemas/UpsertCatalogEntityResponse' description: ACCEPTED @@ -368,6 +455,32 @@ paths: tags: - Software Catalog x-codegen-request-body-name: body + /api/v2/catalog/entity/preview: + post: + operationId: PreviewCatalogEntities + responses: + '202': + content: + application/json: + examples: + default: + value: + data: + - id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: entity + schema: + $ref: '#/components/schemas/EntityResponseArray' + description: Accepted + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Preview catalog entities + tags: + - Software Catalog /api/v2/catalog/entity/{entity_id}: delete: description: Delete a single entity in Software Catalog. @@ -414,6 +527,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: A job entity in the catalog. + displayName: My Job + name: my-job + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: kind + meta: + count: 1 schema: $ref: '#/components/schemas/ListKindCatalogResponse' description: OK @@ -441,6 +566,10 @@ paths: requestBody: content: application/json: + examples: + default: + value: + kind: my-job schema: $ref: '#/components/schemas/UpsertCatalogKindRequest' description: Kind YAML or JSON. @@ -449,6 +578,18 @@ paths: '202': content: application/json: + examples: + default: + value: + data: + - attributes: + description: A job entity in the catalog. + displayName: My Job + name: my-job + id: 4b163705-23c0-4573-b2fb-f6cea2163fcb + type: kind + meta: + count: 1 schema: $ref: '#/components/schemas/UpsertCatalogKindResponse' description: ACCEPTED @@ -511,10 +652,33 @@ paths: - $ref: '#/components/parameters/FilterRelationByFromRef' - $ref: '#/components/parameters/FilterRelationByToRef' - $ref: '#/components/parameters/RelationInclude' + - description: If true, includes relationships discovered by APM and USM. + in: query + name: includeDiscovered + required: false + schema: + default: false + type: boolean responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + from: + kind: service + name: test-service + to: + kind: service + name: other-service + type: RelationTypeOwns + id: abc-123 + type: relation + meta: + count: 1 schema: $ref: '#/components/schemas/ListRelationCatalogResponse' description: OK @@ -597,9 +761,34 @@ components: type: object UpsertCatalogEntityRequest: description: Create or update entity request. - oneOf: - - $ref: '#/components/schemas/EntityV3' - - $ref: '#/components/schemas/EntityRaw' + additionalProperties: false + properties: + apiVersion: + $ref: '#/components/schemas/EntityV3APIVersion' + datadog: + $ref: '#/components/schemas/EntityV3ServiceDatadog' + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: '#/components/schemas/EntityV3Integrations' + kind: + $ref: '#/components/schemas/EntityV3ServiceKind' + metadata: + $ref: '#/components/schemas/EntityV3Metadata' + spec: + $ref: '#/components/schemas/EntityV3ServiceSpec' + required: + - apiVersion + - kind + - metadata + type: object + example: |- + apiVersion: v3 + kind: service + metadata: + name: myservice UpsertCatalogEntityResponse: description: Upsert entity response. properties: @@ -610,6 +799,17 @@ components: meta: $ref: '#/components/schemas/EntityResponseMeta' type: object + EntityResponseArray: + description: Response object containing an array of entity data items. + properties: + data: + description: Array of entity response data items. + items: + $ref: '#/components/schemas/PreviewEntityResponseData' + type: array + required: + - data + type: object ListKindCatalogResponse: description: List kind response. properties: @@ -620,9 +820,24 @@ components: type: object UpsertCatalogKindRequest: description: Create or update kind request. - oneOf: - - $ref: '#/components/schemas/KindObj' - - $ref: '#/components/schemas/KindRaw' + properties: + description: + description: Short description of the kind. + type: string + displayName: + description: The display name of the kind. Automatically generated if not provided. + type: string + kind: + description: The name of the kind to create or update. This must be in kebab-case format. + example: my-job + type: string + required: + - kind + type: object + example: |- + kind: service + displayName: Service + description: A service entity in the catalog. UpsertCatalogKindResponse: description: Upsert kind response. properties: @@ -661,9 +876,7 @@ components: description: API error response body properties: detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. + description: A human-readable explanation specific to this occurrence of the error. example: Missing required attribute in body type: string meta: @@ -789,15 +1002,32 @@ components: type: object EntityV3: description: Entity schema v3. - oneOf: - - $ref: '#/components/schemas/EntityV3Service' - - $ref: '#/components/schemas/EntityV3Datastore' - - $ref: '#/components/schemas/EntityV3Queue' - - $ref: '#/components/schemas/EntityV3System' - - $ref: '#/components/schemas/EntityV3API' + additionalProperties: false + properties: + apiVersion: + $ref: '#/components/schemas/EntityV3APIVersion' + datadog: + $ref: '#/components/schemas/EntityV3ServiceDatadog' + extensions: + additionalProperties: {} + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + type: object + integrations: + $ref: '#/components/schemas/EntityV3Integrations' + kind: + $ref: '#/components/schemas/EntityV3ServiceKind' + metadata: + $ref: '#/components/schemas/EntityV3Metadata' + spec: + $ref: '#/components/schemas/EntityV3ServiceSpec' + required: + - apiVersion + - kind + - metadata + type: object EntityRaw: description: Entity definition in raw JSON or YAML representation. - example: | + example: |- apiVersion: v3 kind: service metadata: @@ -808,6 +1038,21 @@ components: items: $ref: '#/components/schemas/UpsertCatalogEntityResponseIncludedItem' type: array + PreviewEntityResponseData: + description: Entity data returned in a preview response, including attributes, relationships, and type. + properties: + attributes: + $ref: '#/components/schemas/EntityResponseDataAttributes' + id: + description: Entity unique identifier. + type: string + relationships: + $ref: '#/components/schemas/EntityResponseDataRelationships' + type: + $ref: '#/components/schemas/EntityResponseDataType' + required: + - type + type: object KindResponseData: description: List of kind responses. items: @@ -828,14 +1073,10 @@ components: description: Short description of the kind. type: string displayName: - description: >- - The display name of the kind. Automatically generated if not - provided. + description: The display name of the kind. Automatically generated if not provided. type: string kind: - description: >- - The name of the kind to create or update. This must be in kebab-case - format. + description: The name of the kind to create or update. This must be in kebab-case format. example: my-job type: string required: @@ -843,7 +1084,7 @@ components: type: object KindRaw: description: Kind definition in raw JSON or YAML representation. - example: | + example: |- kind: service displayName: Service description: A service entity in the catalog. @@ -872,16 +1113,14 @@ components: properties: next: description: Next link. - example: >- - /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=2 + example: /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=2 type: string previous: description: Previous link. type: string self: description: Current link. - example: >- - /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=0 + example: /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=0 type: string type: object RelationResponseMeta: @@ -927,9 +1166,7 @@ components: description: References to the source of the error. properties: header: - description: >- - A string indicating the name of a single request header which caused - the error. + description: A string indicating the name of a single request header which caused the error. example: Authorization type: string parameter: @@ -937,9 +1174,7 @@ components: example: limit type: string pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. + description: A JSON pointer to the value in the request document that caused the error. example: /data/attributes/title type: string type: object @@ -979,12 +1214,17 @@ components: type: object ListEntityCatalogResponseIncludedItem: description: List entity response included item. - oneOf: - - $ref: '#/components/schemas/EntityResponseIncludedSchema' - - $ref: '#/components/schemas/EntityResponseIncludedRawSchema' - - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntity' - - $ref: '#/components/schemas/EntityResponseIncludedOncall' - - $ref: '#/components/schemas/EntityResponseIncludedIncident' + properties: + attributes: + $ref: '#/components/schemas/EntityResponseIncludedSchemaAttributes' + id: + description: Entity ID. + type: string + type: + $ref: '#/components/schemas/EntityResponseIncludedSchemaType' + meta: + $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityMeta' + type: object EntityV3Service: additionalProperties: false description: Schema for service entities. @@ -995,9 +1235,7 @@ components: $ref: '#/components/schemas/EntityV3ServiceDatadog' extensions: additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. type: object integrations: $ref: '#/components/schemas/EntityV3Integrations' @@ -1022,9 +1260,7 @@ components: $ref: '#/components/schemas/EntityV3DatastoreDatadog' extensions: additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client side - metadata. No Datadog features are affected by this field. + description: Custom extensions. This is the free-formed field to send client side metadata. No Datadog features are affected by this field. type: object integrations: $ref: '#/components/schemas/EntityV3Integrations' @@ -1049,9 +1285,7 @@ components: $ref: '#/components/schemas/EntityV3QueueDatadog' extensions: additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. type: object integrations: $ref: '#/components/schemas/EntityV3Integrations' @@ -1076,9 +1310,7 @@ components: $ref: '#/components/schemas/EntityV3SystemDatadog' extensions: additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. type: object integrations: $ref: '#/components/schemas/EntityV3Integrations' @@ -1103,9 +1335,7 @@ components: $ref: '#/components/schemas/EntityV3APIDatadog' extensions: additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. + description: Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. type: object integrations: $ref: '#/components/schemas/EntityV3Integrations' @@ -1122,19 +1352,80 @@ components: type: object UpsertCatalogEntityResponseIncludedItem: description: Upsert entity response included item. - oneOf: - - $ref: '#/components/schemas/EntityResponseIncludedSchema' + properties: + attributes: + $ref: '#/components/schemas/EntityResponseIncludedSchemaAttributes' + id: + description: Entity ID. + type: string + type: + $ref: '#/components/schemas/EntityResponseIncludedSchemaType' + type: object + EntityResponseDataAttributes: + description: Entity response attributes containing core entity metadata fields. + properties: + apiVersion: + description: The API version of the entity schema. + type: string + description: + description: A short description of the entity. + type: string + displayName: + description: The user-friendly display name of the entity. + type: string + kind: + description: The kind of the entity (e.g. service, datastore, queue). + type: string + name: + description: The unique name of the entity within its kind and namespace. + type: string + namespace: + description: The namespace the entity belongs to. + type: string + owner: + description: The owner of the entity, usually a team. + type: string + properties: + additionalProperties: {} + description: Additional custom properties for the entity. + type: object + tags: + description: A set of custom tags assigned to the entity. + items: + description: A tag string in the format key:value. + type: string + type: array + type: object + EntityResponseDataRelationships: + description: Entity relationships including incidents, oncalls, schemas, and related entities. + properties: + incidents: + $ref: '#/components/schemas/EntityResponseDataRelationshipsIncidents' + oncalls: + $ref: '#/components/schemas/EntityResponseDataRelationshipsOncalls' + rawSchema: + $ref: '#/components/schemas/EntityResponseDataRelationshipsRawSchema' + relatedEntities: + $ref: '#/components/schemas/EntityResponseDataRelationshipsRelatedEntities' + schema: + $ref: '#/components/schemas/EntityResponseDataRelationshipsSchema' + type: object + EntityResponseDataType: + default: entity + description: Entity resource type. + enum: + - entity + example: entity + type: string + x-enum-varnames: + - ENTITY KindData: - description: >- - Schema that defines the structure of a Kind object in the Software - Catalog. + description: Schema that defines the structure of a Kind object in the Software Catalog. properties: attributes: $ref: '#/components/schemas/KindAttributes' id: - description: >- - A read-only globally unique identifier for the entity generated by - Datadog. User supplied values are ignored. + description: A read-only globally unique identifier for the entity generated by Datadog. User supplied values are ignored. example: 4b163705-23c0-4573-b2fb-f6cea2163fcb minLength: 1 type: string @@ -1199,6 +1490,7 @@ components: tags: description: The tags. items: + description: A tag string in the format key:value. type: string type: array type: object @@ -1290,11 +1582,7 @@ components: $ref: '#/components/schemas/EntityResponseIncludedIncidentType' type: object EntityV3APIVersion: - description: >- - The version of the schema data that was used to populate this entity's - data. This could be via the API, Terraform, or YAML file in a - repository. The field is known as schema-version in the previous - version. + description: The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version. enum: - v3 - v2.2 @@ -1356,19 +1644,13 @@ components: $ref: '#/components/schemas/EntityV3MetadataContactsItems' type: array description: - description: >- - Short description of the entity. The UI can leverage the description - for display. + description: Short description of the entity. The UI can leverage the description for display. type: string displayName: - description: >- - User friendly name of the entity. The UI can leverage the display - name for display. + description: User friendly name of the entity. The UI can leverage the display name for display. type: string id: - description: >- - A read-only globally unique identifier for the entity generated by - Datadog. User supplied values are ignored. + description: A read-only globally unique identifier for the entity generated by Datadog. User supplied values are ignored. example: 4b163705-23c0-4573-b2fb-f6cea2163fcb minLength: 1 type: string @@ -1384,9 +1666,7 @@ components: type: array managed: additionalProperties: {} - description: >- - A read-only set of Datadog managed attributes generated by Datadog. - User supplied values are ignored. + description: A read-only set of Datadog managed attributes generated by Datadog. User supplied values are ignored. type: object name: description: Unique name given to an entity under the kind/namespace. @@ -1394,9 +1674,7 @@ components: minLength: 1 type: string namespace: - description: >- - Namespace is a part of unique identifier. It has a default value of - 'default'. + description: Namespace is a part of unique identifier. It has a default value of 'default'. example: default minLength: 1 type: string @@ -1409,6 +1687,7 @@ components: - this:tag - that:tag items: + description: A tag string in the format key:value. type: string type: array required: @@ -1421,16 +1700,19 @@ components: componentOf: description: A list of components the service is a part of items: + description: A component entity reference string. type: string type: array dependsOn: description: A list of components the service depends on. items: + description: A component entity reference string. type: string type: array languages: description: The service's programming language. items: + description: A programming language name. type: string type: array lifecycle: @@ -1471,6 +1753,7 @@ components: componentOf: description: A list of components the datastore is a part of items: + description: A component entity reference string. type: string type: array lifecycle: @@ -1511,6 +1794,7 @@ components: componentOf: description: A list of components the queue is a part of items: + description: A component entity reference string. type: string type: array lifecycle: @@ -1553,6 +1837,7 @@ components: components: description: A list of components belongs to the system. items: + description: A component entity reference string. type: string type: array lifecycle: @@ -1594,6 +1879,7 @@ components: implementedBy: description: Services which implemented the API. items: + description: A service entity reference string. type: string type: array interface: @@ -1610,6 +1896,49 @@ components: description: The type of API. type: string type: object + EntityResponseDataRelationshipsIncidents: + description: Incidents relationship containing a list of incident resources associated with this entity. + properties: + data: + description: List of incident relationship data items. + items: + $ref: '#/components/schemas/EntityResponseDataRelationshipsIncidentsDataItems' + type: array + type: object + EntityResponseDataRelationshipsOncalls: + description: Oncalls relationship containing a list of oncall resources associated with this entity. + properties: + data: + description: List of oncall relationship data items. + items: + $ref: '#/components/schemas/EntityResponseDataRelationshipsOncallsDataItems' + type: array + type: object + EntityResponseDataRelationshipsRawSchema: + description: Raw schema relationship linking an entity to its raw schema resource. + properties: + data: + $ref: '#/components/schemas/EntityResponseDataRelationshipsRawSchemaData' + required: + - data + type: object + EntityResponseDataRelationshipsRelatedEntities: + description: Related entities relationship containing a list of entity references related to this entity. + properties: + data: + description: List of related entity relationship data items. + items: + $ref: '#/components/schemas/EntityResponseDataRelationshipsRelatedEntitiesDataItems' + type: array + type: object + EntityResponseDataRelationshipsSchema: + description: Schema relationship linking an entity to its associated schema resource. + properties: + data: + $ref: '#/components/schemas/EntityResponseDataRelationshipsSchemaData' + required: + - data + type: object KindAttributes: description: Kind attributes. properties: @@ -1842,10 +2171,9 @@ components: description: Performance stats association. properties: tags: - description: >- - A list of APM entity tags that associates the APM Stats data with - the entity. + description: A list of APM entity tags that associates the APM Stats data with the entity. items: + description: An APM tag string in the format key:value. type: string type: array type: object @@ -1854,10 +2182,9 @@ components: description: CI Pipelines association. properties: fingerprints: - description: >- - A list of CI Fingerprints that associate CI Pipelines with the - entity. + description: A list of CI Fingerprints that associate CI Pipelines with the entity. items: + description: A CI pipeline fingerprint string. type: string type: array type: object @@ -1950,9 +2277,79 @@ components: EntityV3APISpecInterface: additionalProperties: false description: The API definition. - oneOf: - - $ref: '#/components/schemas/EntityV3APISpecInterfaceFileRef' - - $ref: '#/components/schemas/EntityV3APISpecInterfaceDefinition' + properties: + fileRef: + description: The reference to the API definition file. + type: string + definition: + description: The API definition. (opaque JSON object) + type: string + type: object + EntityResponseDataRelationshipsIncidentsDataItems: + description: Incident relationship data item containing the incident resource identifier and type. + properties: + id: + description: Incident resource unique identifier. + example: '' + type: string + type: + $ref: '#/components/schemas/EntityResponseDataRelationshipsIncidentsDataItemsType' + required: + - type + - id + type: object + EntityResponseDataRelationshipsOncallsDataItems: + description: Oncall relationship data item containing the oncall resource identifier and type. + properties: + id: + description: Oncall resource unique identifier. + example: '' + type: string + type: + $ref: '#/components/schemas/EntityResponseDataRelationshipsOncallsDataItemsType' + required: + - type + - id + type: object + EntityResponseDataRelationshipsRawSchemaData: + description: Raw schema relationship data containing the raw schema resource identifier and type. + properties: + id: + description: Raw schema unique identifier. + example: '' + type: string + type: + $ref: '#/components/schemas/EntityResponseDataRelationshipsRawSchemaDataType' + required: + - type + - id + type: object + EntityResponseDataRelationshipsRelatedEntitiesDataItems: + description: Related entity relationship data item containing the related entity resource identifier and type. + properties: + id: + description: Related entity unique identifier. + example: '' + type: string + type: + $ref: '#/components/schemas/EntityResponseDataRelationshipsRelatedEntitiesDataItemsType' + required: + - type + - id + type: object + EntityResponseDataRelationshipsSchemaData: + description: Schema relationship data containing the schema resource identifier and type. + properties: + id: + description: Entity schema unique identifier. + example: '' + type: string + type: + $ref: '#/components/schemas/EntityResponseDataRelationshipsSchemaDataType' + required: + - type + - id + type: object RelationEntity: description: Relation entity reference. properties: @@ -2001,6 +2398,7 @@ components: paths: description: The paths (glob) to the source code of the service. items: + description: A glob pattern path to source code files. type: string type: array repositoryURL: @@ -2042,9 +2440,54 @@ components: description: The definition of `EntityV3APISpecInterfaceDefinition` object. properties: definition: - description: The API definition. - type: object + description: The API definition. (opaque JSON object) + type: string type: object + EntityResponseDataRelationshipsIncidentsDataItemsType: + default: incident + description: Incident resource type. + enum: + - incident + example: incident + type: string + x-enum-varnames: + - INCIDENT + EntityResponseDataRelationshipsOncallsDataItemsType: + default: oncall + description: Oncall resource type. + enum: + - oncall + example: oncall + type: string + x-enum-varnames: + - ONCALL + EntityResponseDataRelationshipsRawSchemaDataType: + default: rawSchema + description: Raw schema resource type. + enum: + - rawSchema + example: rawSchema + type: string + x-enum-varnames: + - RAWSCHEMA + EntityResponseDataRelationshipsRelatedEntitiesDataItemsType: + default: relatedEntity + description: Related entity resource type. + enum: + - relatedEntity + example: relatedEntity + type: string + x-enum-varnames: + - RELATEDENTITY + EntityResponseDataRelationshipsSchemaDataType: + default: schema + description: Schema resource type. + enum: + - schema + example: schema + type: string + x-enum-varnames: + - SCHEMA EntityResponseIncludedRelatedOncallEscalationItem: description: Oncall escalation. properties: @@ -2210,52 +2653,6 @@ components: schema: $ref: '#/components/schemas/RelationIncludeType' x-stackQL-resources: - apis: - id: datadog.catalog.apis - name: apis - title: Apis - methods: - list_apis: - operation: - $ref: '#/paths/~1api~1v2~1apicatalog~1api/get' - response: - mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - delete_open_api: - operation: - $ref: '#/paths/~1api~1v2~1apicatalog~1api~1{id}/delete' - response: - mediaType: application/json - openAPIDocKey: '204' - get_open_api: - operation: - $ref: '#/paths/~1api~1v2~1apicatalog~1api~1{id}~1openapi/get' - response: - mediaType: multipart/form-data - openAPIDocKey: '200' - update_open_api: - operation: - $ref: '#/paths/~1api~1v2~1apicatalog~1api~1{id}~1openapi/put' - response: - mediaType: application/json - openAPIDocKey: '200' - create_open_api: - operation: - $ref: '#/paths/~1api~1v2~1apicatalog~1openapi/post' - response: - mediaType: application/json - openAPIDocKey: '201' - sqlVerbs: - select: - - $ref: '#/components/x-stackQL-resources/apis/methods/list_apis' - insert: - - $ref: '#/components/x-stackQL-resources/apis/methods/create_open_api' - update: [] - delete: - - $ref: '#/components/x-stackQL-resources/apis/methods/delete_open_api' - replace: - - $ref: '#/components/x-stackQL-resources/apis/methods/update_open_api' catalog_entities: id: datadog.catalog.catalog_entities name: catalog_entities @@ -2268,29 +2665,49 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] upsert_catalog_entity: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1catalog~1entity/post' response: mediaType: application/json openAPIDocKey: '202' + request: + nativeCasing: camel + preview_catalog_entities: + operation: + $ref: '#/paths/~1api~1v2~1catalog~1entity~1preview/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel delete_catalog_entity: operation: $ref: '#/paths/~1api~1v2~1catalog~1entity~1{entity_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/catalog_entities/methods/list_catalog_entity + - $ref: '#/components/x-stackQL-resources/catalog_entities/methods/list_catalog_entity' insert: - - $ref: >- - #/components/x-stackQL-resources/catalog_entities/methods/upsert_catalog_entity + - $ref: '#/components/x-stackQL-resources/catalog_entities/methods/upsert_catalog_entity' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/catalog_entities/methods/delete_catalog_entity + - $ref: '#/components/x-stackQL-resources/catalog_entities/methods/delete_catalog_entity' replace: [] catalog_kinds: id: datadog.catalog.catalog_kinds @@ -2304,29 +2721,41 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] upsert_catalog_kind: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1catalog~1kind/post' response: mediaType: application/json openAPIDocKey: '202' + request: + nativeCasing: camel delete_catalog_kind: operation: $ref: '#/paths/~1api~1v2~1catalog~1kind~1{kind_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/catalog_kinds/methods/list_catalog_kind + - $ref: '#/components/x-stackQL-resources/catalog_kinds/methods/list_catalog_kind' insert: - - $ref: >- - #/components/x-stackQL-resources/catalog_kinds/methods/upsert_catalog_kind + - $ref: '#/components/x-stackQL-resources/catalog_kinds/methods/upsert_catalog_kind' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/catalog_kinds/methods/delete_catalog_kind + - $ref: '#/components/x-stackQL-resources/catalog_kinds/methods/delete_catalog_kind' replace: [] catalog_relations: id: datadog.catalog.catalog_relations @@ -2340,17 +2769,25 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/catalog_relations/methods/list_catalog_relation + - $ref: '#/components/x-stackQL-resources/catalog_relations/methods/list_catalog_relation' insert: [] update: [] delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/cloud_costs.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/cloud_costs.yaml index 62ed7aa..7893b32 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/cloud_costs.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/cloud_costs.yaml @@ -4,23 +4,66 @@ info: description: datadog cloud_costs API version: '1.0' paths: - /api/v2/cost/aws_cur_config: + /api/v2/cost/account_filters/{cloud_account_id}: get: - description: List the AWS CUR configs. - operationId: ListCostAWSCURConfigs + description: Get the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds). + operationId: GetCostAccountFilters + parameters: + - $ref: '#/components/parameters/CloudAccountID' responses: '200': content: application/json: + examples: + default: + summary: Include new accounts and exclude specific accounts + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789123' + - '123456789143' + include_new_accounts: true + account_id: '123456789123' + cloud: aws_cur2 + id: '123' + type: account_filters + include_accounts: + summary: Exclude new accounts and include specific accounts + value: + data: + attributes: + account_filters: + include_new_accounts: false + included_accounts: + - '123456789123' + - '123456789143' + account_id: '123456789123' + cloud: aws_cur2 + id: '123' + type: account_filters schema: - $ref: '#/components/schemas/AwsCURConfigsResponse' + $ref: '#/components/schemas/AccountFiltersResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -28,28 +71,82 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_read - summary: List Cloud Cost Management AWS CUR configs + summary: Get account filters tags: - Cloud Cost Management x-permission: operator: OR permissions: - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an AWS CUR config. - operationId: CreateCostAWSCURConfig + patch: + description: Update the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds). + operationId: UpdateCostAccountFilters + parameters: + - $ref: '#/components/parameters/CloudAccountID' requestBody: content: application/json: + examples: + default: + summary: Exclude new accounts and include specific accounts + value: + data: + attributes: + account_filters: + include_new_accounts: false + included_accounts: + - '123456789123' + - '123456789143' + type: account_filters_patch_request + exclude_accounts: + summary: Include new accounts and exclude specific accounts + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789123' + - '123456789143' + include_new_accounts: true + type: account_filters_patch_request schema: - $ref: '#/components/schemas/AwsCURConfigPostRequest' + $ref: '#/components/schemas/AccountFiltersPatchRequest' required: true responses: '200': content: application/json: + examples: + default: + summary: Exclude new accounts and include specific accounts + value: + data: + attributes: + account_filters: + include_new_accounts: false + included_accounts: + - '123456789123' + - '123456789143' + account_id: '123456789123' + cloud: aws_cur2 + id: '123' + type: account_filters + exclude_accounts: + summary: Include new accounts and exclude specific accounts + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789123' + - '123456789143' + include_new_accounts: true + account_id: '123456789123' + cloud: aws_cur2 + id: '123' + type: account_filters schema: - $ref: '#/components/schemas/AwsCURConfigResponse' + $ref: '#/components/schemas/AccountFiltersResponse' description: OK '400': content: @@ -63,6 +160,12 @@ paths: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -70,68 +173,192 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_write - summary: Create Cloud Cost Management AWS CUR config + summary: Update account filters tags: - Cloud Cost Management x-permission: operator: OR permissions: - cloud_cost_management_write - /api/v2/cost/aws_cur_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management Account. - operationId: DeleteCostAWSCURConfig + /api/v2/cost/anomalies: + get: + description: List detected Cloud Cost Management anomalies for the organization. + operationId: ListCostAnomalies parameters: - - $ref: '#/components/parameters/CloudAccountID' + - description: Start time as Unix milliseconds. Defaults to the start of the latest stable seven-day window. + in: query + name: start + required: false + schema: + example: 1730259950000 + format: int64 + type: integer + - description: End time as Unix milliseconds. Defaults to the end of the latest stable seven-day window. + in: query + name: end + required: false + schema: + example: 1730429150000 + format: int64 + type: integer + - description: Optional JSON object mapping cost tag keys to allowed values, for example `{"team":["payments"],"env":["prod"]}`. Filters match anomaly dimensions or correlated tags. + in: query + name: filter + required: false + schema: + example: '{"team":["payments"]}' + type: string + - description: Minimum absolute anomalous cost change to include. Numeric value; defaults to `1`. + in: query + name: min_anomalous_threshold + required: false + schema: + example: '1.0' + type: string + - description: Minimum absolute actual cost to include. Numeric value; defaults to `0`. + in: query + name: min_cost_threshold + required: false + schema: + example: '0.0' + type: string + - description: Filter by resolution state. Use `none` for unresolved anomalies, `all` or `*` for resolved anomalies, or a comma-separated list of causes. + in: query + name: dismissal_cause + required: false + schema: + example: none + type: string + - description: Sort field. One of `start_date`, `end_date`, `duration`, `max_cost`, `anomalous_cost`, or `dismissal_date`. Defaults to `anomalous_cost`. + in: query + name: order_by + required: false + schema: + example: anomalous_cost + type: string + - description: Sort direction. One of `asc` or `desc`. Defaults to `desc`. + in: query + name: order + required: false + schema: + example: desc + type: string + - description: Maximum number of anomalies to return. Defaults to `200`. + in: query + name: limit + required: false + schema: + example: 200 + format: int64 + type: integer + - description: Pagination offset. Defaults to `0`. + in: query + name: offset + required: false + schema: + example: 0 + format: int64 + type: integer + - description: Optional repeated cloud or SaaS provider filters, such as `aws`, `gcp`, `azure`, `Oracle`, `datadog`, `OpenAI`, or `Anthropic`. + explode: true + in: query + name: provider_ids + required: false + schema: + items: + example: aws + type: string + type: array responses: - '204': - description: No Content - '400': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + anomalies: + - actual_cost: 3001.24 + anomalous_cost_change: 1250.75 + anomaly_end: 1730429150000 + anomaly_start: 1730259950000 + correlated_tags: + region: + - us-east-1 + - us-west-2 + dimensions: + service: ec2 + max_cost: 5000.5 + provider: aws + query: sum:aws.cost.net.amortized{aws_cost_type IN (Usage,DiscountedUsage,SavingsPlanCoveredUsage) AND aws_product NOT IN (supportenterprise) AND service:"ec2"}.rollup(sum, daily) + uuid: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + avg_daily_anomalous_cost: 625.375 + total_actual_cost: 3001.24 + total_anomalous_cost: 1250.75 + total_count: 1 + id: anomalies + type: anomalies schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': + $ref: '#/components/schemas/CostAnomaliesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management AWS CUR config + - cloud_cost_management_read + summary: List cost anomalies tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: >- - Update the status (active/archived) and/or account filtering - configuration of an AWS CUR config. - operationId: UpdateCostAWSCURConfig + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/anomalies/{anomaly_id}: + get: + description: Get a detected Cloud Cost Management anomaly by UUID. + operationId: GetCostAnomaly parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigPatchRequest' - required: true + - $ref: '#/components/parameters/AnomalyID' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + actual_cost: 3001.24 + anomalous_cost_change: 1250.75 + anomaly_end: 1730429150000 + anomaly_start: 1730259950000 + correlated_tags: + region: + - us-east-1 + - us-west-2 + dimensions: + service: ec2 + max_cost: 5000.5 + provider: aws + query: sum:aws.cost.net.amortized{aws_cost_type IN (Usage,DiscountedUsage,SavingsPlanCoveredUsage) AND aws_product NOT IN (supportenterprise) AND service:"ec2"}.rollup(sum, daily) + uuid: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + id: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + type: anomalies schema: - $ref: '#/components/schemas/AwsCURConfigsResponse' + $ref: '#/components/schemas/CostAnomalyResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': content: application/json: @@ -139,42 +366,59 @@ paths: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management AWS CUR config + - cloud_cost_management_read + summary: Get cost anomaly tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/azure_uc_config: + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/arbitrary_rule: get: - description: List the Azure configs. - operationId: ListCostAzureUCConfigs + description: List all custom allocation rules - Retrieve a list of all custom allocation rules for the organization + operationId: ListCustomAllocationRules responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + values: null + created: '2024-01-01T00:00:00+00:00' + enabled: true + last_modified_user_uuid: user-example-uuid + order_id: 1 + processing_status: done + provider: + - aws + rule_name: example-custom-allocation-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: '2024-01-01T00:00:00+00:00' + version: 1 + id: '123' + type: arbitrary_rule schema: - $ref: '#/components/schemas/AzureUCConfigsResponse' + $ref: '#/components/schemas/ArbitraryRuleResponseArray' description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -182,161 +426,496 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_read - summary: List Cloud Cost Management Azure configs + summary: List custom allocation rules tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read post: - description: Create a Cloud Cost Management account for an Azure config. - operationId: CreateCostAzureUCConfigs + description: |- + Create a new custom allocation rule with the specified filters and allocation strategy. + + **Strategy Methods:** + - **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters. + - **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys. + - **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations). + + **Filter Conditions:** + - Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like" + - Use **values** for multi-value conditions: "in", "not in" + - Cannot use both value and values simultaneously. + + **Supported operators**: is, is not, contains, in, not in, =, !=, like, not like + operationId: CreateCustomAllocationRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + - condition: in + tag: environment + value: '' + values: + - production + - staging + enabled: true + order_id: 1 + provider: + - aws + - gcp + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + - condition: not in + tag: team + value: '' + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + type: upsert_arbitrary_rule schema: - $ref: '#/components/schemas/AzureUCConfigPostRequest' + $ref: '#/components/schemas/ArbitraryCostUpsertRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + created: '2024-01-01T00:00:00+00:00' + enabled: true + order_id: 1 + provider: + - aws + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: '2024-01-01T00:00:00+00:00' + version: 1 + id: '123' + type: arbitrary_rule schema: - $ref: '#/components/schemas/AzureUCConfigPairsResponse' + $ref: '#/components/schemas/ArbitraryRuleResponse' description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create custom allocation rule + tags: + - Cloud Cost Management + /api/v2/cost/arbitrary_rule/reorder: + post: + description: |- + Reorder custom allocation rules - Change the execution order of custom allocation rules. + + **Important**: You must provide the **complete list** of all rule IDs in the desired execution order. The API will reorder ALL rules according to the provided sequence. + + Rules are executed in the order specified, with lower indices (earlier in the array) having higher priority. + + **Example**: If you have rules with IDs [123, 456, 789] and want to change order from 123→456→789 to 456→123→789, send: [{"id": "456"}, {"id": "123"}, {"id": "789"}] + operationId: ReorderCustomAllocationRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: '456' + type: arbitrary_rule + - id: '123' + type: arbitrary_rule + - id: '789' + type: arbitrary_rule + schema: + $ref: '#/components/schemas/ReorderRuleResourceArray' + required: true + responses: + '204': + description: Successfully reordered rules + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Reorder custom allocation rules + tags: + - Cloud Cost Management + /api/v2/cost/arbitrary_rule/status: + get: + description: List the processing status of all custom allocation rules. Returns only the ID and processing status for each rule. + operationId: ListCustomAllocationRulesStatus + responses: + '200': content: application/json: + examples: + default: + value: + data: + - attributes: + processing_status: processing + id: '123' + type: arbitrary_rule_status + - attributes: + processing_status: done + id: '456' + type: arbitrary_rule_status schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/ArbitraryRuleStatusResponseArray' + description: OK '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management Azure configs + - cloud_cost_management_read + summary: List custom allocation rule statuses tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/azure_uc_config/{cloud_account_id}: + /api/v2/cost/arbitrary_rule/{rule_id}: delete: - description: Archive a Cloud Cost Management Account. - operationId: DeleteCostAzureUCConfig + description: Delete a custom allocation rule - Delete an existing custom allocation rule by its ID + operationId: DeleteCustomAllocationRule parameters: - - $ref: '#/components/parameters/CloudAccountID' + - description: The unique identifier of the custom allocation rule + in: path + name: rule_id + required: true + schema: + format: int64 + type: integer responses: '204': description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete custom allocation rule + tags: + - Cloud Cost Management + get: + description: Get a specific custom allocation rule - Retrieve a specific custom allocation rule by its ID + operationId: GetCustomAllocationRule + parameters: + - description: The unique identifier of the custom allocation rule + in: path + name: rule_id + required: true + schema: + format: int64 + type: integer + responses: + '200': content: application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + values: null + created: '2024-01-01T00:00:00+00:00' + enabled: true + last_modified_user_uuid: user-example-uuid + order_id: 1 + provider: + - aws + rule_name: example-custom-allocation-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: '2024-01-01T00:00:00+00:00' + version: 1 + id: '123' + type: arbitrary_rule schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/schemas/ArbitraryRuleResponse' + description: OK '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management Azure config + - cloud_cost_management_read + summary: Get custom allocation rule tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write patch: - description: Update the status of an Azure config (active/archived). - operationId: UpdateCostAzureUCConfigs + description: |- + Update an existing custom allocation rule with new filters and allocation strategy. + + **Strategy Methods:** + - **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters. + - **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys. + - **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations). + - **USAGE_METRIC**: Allocates based on usage metrics (implementation varies). + + **Filter Conditions:** + - Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like" + - Use **values** for multi-value conditions: "in", "not in" + - Cannot use both value and values simultaneously. + + **Supported operators**: is, is not, contains, in, not in, =, !=, like, not like + operationId: UpdateCustomAllocationRule parameters: - - $ref: '#/components/parameters/CloudAccountID' + - description: The unique identifier of the custom allocation rule + in: path + name: rule_id + required: true + schema: + format: int64 + type: integer requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + - condition: in + tag: environment + value: '' + values: + - production + - staging + enabled: true + order_id: 1 + provider: + - aws + - gcp + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + - condition: not in + tag: team + value: '' + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + type: upsert_arbitrary_rule schema: - $ref: '#/components/schemas/AzureUCConfigPatchRequest' + $ref: '#/components/schemas/ArbitraryCostUpsertRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + created: '2024-01-01T00:00:00+00:00' + enabled: true + order_id: 1 + provider: + - aws + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + granularity: daily + method: proportional + type: shared + updated: '2024-01-01T00:00:00+00:00' + version: 1 + id: '123' + type: arbitrary_rule schema: - $ref: '#/components/schemas/AzureUCConfigPairsResponse' + $ref: '#/components/schemas/ArbitraryRuleResponse' description: OK - '400': + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update custom allocation rule + tags: + - Cloud Cost Management + /api/v2/cost/aws_cur_config: + get: + description: List the AWS CUR configs. + operationId: ListCostAWSCURConfigs + responses: + '200': content: application/json: + examples: + default: + value: + data: + - attributes: + account_id: '123456789123' + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: '2023-01-01T12:00:00.000000' + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123' + type: aws_cur_config schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/AwsCURConfigsResponse' + description: OK '403': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management Azure config + - cloud_cost_management_read + summary: List Cloud Cost Management AWS CUR configs tags: - Cloud Cost Management x-permission: operator: OR permissions: - - cloud_cost_management_write - /api/v2/cost/budget: - put: - description: Create a new budget or update an existing one. - operationId: UpsertBudget + - cloud_cost_management_read + post: + description: Create a Cloud Cost Management account for an AWS CUR config. + operationId: CreateCostAWSCURConfig requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789123' + - '123456789143' + include_new_accounts: true + included_accounts: + - '123456789123' + - '123456789143' + account_id: '123456789123' + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + report_name: dd-report-name + report_prefix: dd-report-prefix + type: aws_cur_config_post_request schema: - $ref: '#/components/schemas/BudgetWithEntries' + $ref: '#/components/schemas/AwsCURConfigPostRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789124' + - '123456789125' + include_new_accounts: true + account_id: '123456789123' + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: '2023-01-01T12:00:00.000000' + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: aws_cur_config schema: - $ref: '#/components/schemas/BudgetWithEntries' + $ref: '#/components/schemas/AwsCurConfigResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -344,20 +923,34 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_write - summary: Create or update a budget + summary: Create Cloud Cost Management AWS CUR config tags: - Cloud Cost Management - /api/v2/cost/budget/{budget_id}: + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/aws_cur_config/{cloud_account_id}: delete: - description: Delete a budget. - operationId: DeleteBudget + description: Archive a Cloud Cost Management Account. + operationId: DeleteCostAWSCURConfig parameters: - - $ref: '#/components/parameters/BudgetID' + - $ref: '#/components/parameters/CloudAccountID' responses: '204': description: No Content '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -365,25 +958,54 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_write - summary: Delete a budget + summary: Delete Cloud Cost Management AWS CUR config tags: - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write get: - description: Get a budget. - operationId: GetBudget + description: Get a specific AWS CUR config. + operationId: GetCostAWSCURConfig parameters: - - $ref: '#/components/parameters/BudgetID' + - description: The unique identifier of the cloud account + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789124' + - '123456789125' + include_new_accounts: true + account_id: '123456789123' + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: '2023-01-01T12:00:00.000000' + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: aws_cur_config schema: - $ref: '#/components/schemas/BudgetWithEntries' + $ref: '#/components/schemas/AwsCurConfigResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -391,72 +1013,120 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_read - summary: Get a budget + summary: Get cost AWS CUR config tags: - Cloud Cost Management - /api/v2/cost/budgets: - get: - description: List budgets. - operationId: ListBudgets + patch: + description: Update the status (active/archived) and/or account filtering configuration of an AWS CUR config. + operationId: UpdateCostAWSCURConfig + parameters: + - $ref: '#/components/parameters/CloudAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789123' + - '123456789143' + include_new_accounts: true + included_accounts: + - '123456789123' + - '123456789143' + is_enabled: true + type: aws_cur_config_patch_request + schema: + $ref: '#/components/schemas/AwsCURConfigPatchRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + account_id: '123456789123' + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: '2023-01-01T12:00:00.000000' + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123' + type: aws_cur_config schema: - $ref: '#/components/schemas/BudgetArray' + $ref: '#/components/schemas/AwsCURConfigsResponse' description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_read - summary: List budgets + - cloud_cost_management_write + summary: Update Cloud Cost Management AWS CUR config tags: - Cloud Cost Management - /api/v2/cost/custom_costs: + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/azure_uc_config: get: - description: List the Custom Costs files. - operationId: ListCustomCostsFiles - parameters: - - description: Page number for pagination - in: query - name: page[number] - schema: - format: int64 - type: integer - - description: Page size for pagination - in: query - name: page[size] - schema: - default: 100 - format: int64 - type: integer - - description: Filter by file status - in: query - name: filter[status] - schema: - type: string - - description: Sort key with optional descending prefix - in: query - name: sort - schema: - default: created_at - type: string + description: List the Azure configs. + operationId: ListCostAzureUCConfigs responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: '2023-01-01T12:00:00.000000' + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: '123456789123' + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: azure_uc_configs schema: - $ref: '#/components/schemas/CustomCostsFileListResponse' + $ref: '#/components/schemas/AzureUCConfigsResponse' description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request '403': content: application/json: @@ -470,25 +1140,71 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_read - summary: List Custom Costs files + summary: List Cloud Cost Management Azure configs tags: - Cloud Cost Management - put: - description: Upload a Custom Costs file. - operationId: UploadCustomCostsFile + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + post: + description: Create a Cloud Cost Management account for an Azure config. + operationId: CreateCostAzureUCConfigs requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + actual_bill_config: + export_name: dd-actual-export + export_path: dd-export-path + storage_account: dd-storage-account + storage_container: dd-storage-container + amortized_bill_config: + export_name: dd-actual-export + export_path: dd-export-path + storage_account: dd-storage-account + storage_container: dd-storage-container + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + type: azure_uc_config_post_request schema: - $ref: '#/components/schemas/CustomCostsFileUploadRequest' + $ref: '#/components/schemas/AzureUCConfigPostRequest' required: true responses: - '202': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: '2023-01-01T12:00:00.000000' + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: '123456789123' + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: azure_uc_configs schema: - $ref: '#/components/schemas/CustomCostsFileUploadResponse' - description: Accepted + $ref: '#/components/schemas/AzureUCConfigPairsResponse' + description: OK '400': content: application/json: @@ -508,24 +1224,28 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_write - summary: Upload Custom Costs file + summary: Create Cloud Cost Management Azure configs tags: - Cloud Cost Management - /api/v2/cost/custom_costs/{file_id}: + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/azure_uc_config/{cloud_account_id}: delete: - description: Delete the specified Custom Costs file. - operationId: DeleteCustomCostsFile + description: Archive a Cloud Cost Management Account. + operationId: DeleteCostAzureUCConfig parameters: - - $ref: '#/components/parameters/FileID' + - $ref: '#/components/parameters/CloudAccountID' responses: '204': description: No Content - '403': + '400': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + description: Bad Request '404': content: application/json: @@ -539,33 +1259,54 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_write - summary: Delete Custom Costs file + summary: Delete Cloud Cost Management Azure config tags: - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write get: - description: Fetch the specified Custom Costs file. - operationId: GetCustomCostsFile + description: Get a specific Azure config. + operationId: GetCostAzureUCConfig parameters: - - $ref: '#/components/parameters/FileID' + - description: The unique identifier of the cloud account + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: '2023-01-01T12:00:00.000000' + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: '123456789123' + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: azure_uc_configs schema: - $ref: '#/components/schemas/CustomCostsFileGetResponse' + $ref: '#/components/schemas/UCConfigPair' description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -573,1633 +1314,8985 @@ paths: appKeyAuth: [] - AuthZ: - cloud_cost_management_read - summary: Get Custom Costs file + summary: Get cost Azure UC config tags: - Cloud Cost Management - /api/v2/cost/gcp_uc_config: - get: - description: List the GCP Usage Cost configs. - operationId: ListCostGCPUsageCostConfigs + patch: + description: Update the status of an Azure config (active/archived). + operationId: UpdateCostAzureUCConfigs + parameters: + - $ref: '#/components/parameters/CloudAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + is_enabled: true + type: azure_uc_config_patch_request + schema: + $ref: '#/components/schemas/AzureUCConfigPatchRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: '2023-01-01T12:00:00.000000' + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: '123456789123' + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: azure_uc_configs schema: - $ref: '#/components/schemas/GCPUsageCostConfigsResponse' + $ref: '#/components/schemas/AzureUCConfigPairsResponse' description: OK - '403': + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management GCP Usage Cost configs + - cloud_cost_management_write + summary: Update Cloud Cost Management Azure config tags: - Cloud Cost Management x-permission: operator: OR permissions: - - cloud_cost_management_read + - cloud_cost_management_write + /api/v2/cost/budget: + put: + description: Create a new budget or update an existing one. + operationId: UpsertBudget + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: '' + schema: + $ref: '#/components/schemas/BudgetWithEntries' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget + schema: + $ref: '#/components/schemas/BudgetWithEntries' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update a budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/csv/validate: post: - description: Create a Cloud Cost Management account for an GCP Usage Cost config. - operationId: CreateCostGCPUsageCostConfig + operationId: ValidateCsvBudget + responses: + '200': + content: + application/json: + examples: + default: + value: + errors: [] + schema: + $ref: '#/components/schemas/ValidationResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Validate CSV budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/custom-forecast: + put: + description: |- + Create or replace the custom forecast for an existing budget. + Pass an empty `entries` list to delete the custom forecast for the budget. + operationId: UpsertCustomForecast requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + budget_uid: 00000000-0000-0000-0000-000000000001 + entries: + - amount: 400 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 450 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + id: '' + type: custom_forecast schema: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequest' + $ref: '#/components/schemas/CustomForecastUpsertRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + budget_uid: 00000000-0000-0000-0000-000000000001 + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + entries: + - amount: 400 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 450 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 11111111-1111-1111-1111-111111111111 + type: custom_forecast schema: - $ref: '#/components/schemas/GCPUsageCostConfigResponse' + $ref: '#/components/schemas/CustomForecastResponse' description: OK '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or replace a budget's custom forecast + tags: + - Cloud Cost Management + /api/v2/cost/budget/validate: + post: + description: Validate a budget configuration without creating or modifying it + operationId: ValidateBudget + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 500 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: '1' + type: budget + schema: + $ref: '#/components/schemas/BudgetValidationRequest' + required: true + responses: + '200': content: application/json: + examples: + default: + value: + data: + attributes: + errors: [] + valid: true + id: budget_validation + type: budget_validation schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': + $ref: '#/components/schemas/BudgetValidationResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Validate budget + tags: + - Cloud Cost Management + /api/v2/cost/budget/{budget_id}: + delete: + description: Delete a budget + operationId: DeleteBudget + parameters: + - $ref: '#/components/parameters/BudgetID' + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete budget + tags: + - Cloud Cost Management + get: + description: Get a budget by ID. Pass `actual=true` or `forecast=true` to include cost data in the response. Use `start` and `end` (millisecond epochs, both required) to set the cost window. When `forecast=true`, each entry also includes `ootb_forecast` (the ML forecast before overrides) and `custom_forecast` (`null` if no override is set, a number if one is). + operationId: GetBudget + parameters: + - $ref: '#/components/parameters/BudgetID' + - description: When `true`, includes actual cost data in the response. + in: query + name: actual + required: false + schema: + type: boolean + - description: When `true`, includes forecast cost data in the response, including `ootb_forecast` and `custom_forecast` per entry. + in: query + name: forecast + required: false + schema: + type: boolean + - description: Start of the cost window in milliseconds since epoch. Must be used together with `end`. + in: query + name: start + required: false + schema: + format: int64 + type: integer + - description: End of the cost window in milliseconds since epoch. Must be used together with `start`. + in: query + name: end + required: false + schema: + format: int64 + type: integer + responses: + '200': content: application/json: + examples: + default: + value: + data: + attributes: + costs: + actual: 850.25 + amount: 1000 + forecast: 1100.5 + ootb_forecast: 1100.5 + costs_period_end: 1740873600000 + costs_period_start: 1738281600000 + costs_unit: + family: currency + id: '1' + name: dollar + plural: dollars + scale_factor: 1 + short_name: $ + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + costs: + actual: 425.5 + amount: 500 + custom_forecast: null + forecast: 550.25 + ootb_forecast: 550.25 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/BudgetWithEntries' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management GCP Usage Cost config + summary: Get budget tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/gcp_uc_config/{cloud_account_id}: + /api/v2/cost/budget/{budget_id}/custom-forecast: delete: - description: Archive a Cloud Cost Management account. - operationId: DeleteCostGCPUsageCostConfig + description: Delete the custom forecast for a budget. + operationId: DeleteCustomForecast parameters: - - $ref: '#/components/parameters/CloudAccountID' + - $ref: '#/components/parameters/BudgetID' responses: '204': description: No Content '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a budget's custom forecast + tags: + - Cloud Cost Management + get: + description: Get the custom forecast for a budget. + operationId: GetCustomForecast + parameters: + - $ref: '#/components/parameters/BudgetID' + responses: + '200': content: application/json: + examples: + default: + value: + data: + attributes: + budget_uid: 00000000-0000-0000-0000-000000000001 + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + entries: + - amount: 400 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 450 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: 11111111-1111-1111-1111-111111111111 + type: custom_forecast schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/CustomForecastResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a budget's custom forecast + tags: + - Cloud Cost Management + /api/v2/cost/budgets: + get: + description: List budgets. + operationId: ListBudgets + responses: + '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: 1741011342772 + created_by: user1 + end_month: 202502 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1741011342772 + updated_by: user2 + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/schemas/BudgetArray' + description: OK '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management GCP Usage Cost config + summary: List budgets tags: - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: Update the status of an GCP Usage Cost config (active/archived). - operationId: UpdateCostGCPUsageCostConfig + /api/v2/cost/commitments/commitment-list: + get: + description: Get a list of individual cloud commitments (Reserved Instances or Savings Plans) with their utilization details. The response schema varies based on the provider, product, and commitment type. + operationId: GetCommitmentsCommitmentList parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequest' - required: true + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + - $ref: '#/components/parameters/CommitmentsCommitmentType' responses: '200': content: application/json: + examples: + default: + value: + commitments: + - commitment_id: ri-0123456789abcdef0 + expiration_date: '2025-12-31T00:00:00Z' + instance_type: m5.xlarge + offering_class: standard + operating_system: Linux + purchase_option: All Upfront + region: us-east-1 + start_date: '2023-01-01T00:00:00Z' + term_length: 1 + utilization: 0.85 schema: - $ref: '#/components/schemas/GCPUsageCostConfigResponse' + $ref: '#/components/schemas/CommitmentsListResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments list + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/coverage/scalar: + get: + description: Get scalar coverage metrics for cloud commitment programs, including hours and cost coverage percentages. + operationId: GetCommitmentsCoverageScalar + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + responses: + '200': content: application/json: + examples: + default: + value: + columns: + - name: service + type: group + values: + - - ec2 + - meta: + unit: + family: percentage + id: 17 + name: percent + plural: percent + scale_factor: 1 + short_name: '%' + name: hours_coverage + type: number + values: + - 0.78 schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': + $ref: '#/components/schemas/CommitmentsCoverageScalarResponse' + description: OK + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management GCP Usage Cost config + - cloud_cost_management_read + summary: Get commitments coverage (scalar) tags: - Cloud Cost Management x-permission: operator: OR permissions: - - cloud_cost_management_write - /api/v2/cost_by_tag/active_billing_dimensions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/coverage/timeseries: get: - description: >- - Get active billing dimensions for cost attribution. Cost data for a - given month becomes available no later than the 19th of the following - month. - operationId: GetActiveBillingDimensions + description: Get timeseries coverage metrics for cloud commitment programs, broken down by coverage type (Reserved Instances, Savings Plans, On-Demand, and Spot) for both hours and cost. + operationId: GetCommitmentsCoverageTimeseries + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + cost: + series: + on_demand_only: + - 1000 + - 900 + ri: + - 3600 + - 3700 + sp: + - 400 + - 400 + spot_only: + - 50 + - 50 + times: + - 1693526400 + - 1693612800 + hours: + series: + on_demand_only: + - 500 + - 450 + ri: + - 1800 + - 1850 + sp: + - 200 + - 200 + spot_only: + - 100 + - 100 + times: + - 1693526400 + - 1693612800 schema: - $ref: '#/components/schemas/ActiveBillingDimensionsResponse' + $ref: '#/components/schemas/CommitmentsCoverageTimeseriesResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - usage_read - summary: Get active billing dimensions for cost attribution + - cloud_cost_management_read + summary: Get commitments coverage (timeseries) tags: - - Usage Metering + - Cloud Cost Management x-permission: operator: OR permissions: - - usage_read - /api/v2/cost_by_tag/monthly_cost_attribution: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/on-demand-hot-spots/scalar: get: - description: >- - Get monthly cost attribution by tag across multi-org and single root-org - accounts. - - Cost Attribution data for a given month becomes available no later than - the 19th of the following month. - - This API endpoint is paginated. To make sure you receive all records, - check if the value of `next_record_id` is - - set in the response. If it is, make another request and pass - `next_record_id` as a parameter. - - Pseudo code example: - - ``` - - response := GetMonthlyCostAttribution(start_month, end_month) - - cursor := response.metadata.pagination.next_record_id - - WHILE cursor != null BEGIN - sleep(5 seconds) # Avoid running into rate limit - response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor) - cursor := response.metadata.pagination.next_record_id - END - - ``` - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - This endpoint is not available in the Government (US1-FED) site. - operationId: GetMonthlyCostAttribution + description: Get scalar on-demand hot-spots data for cloud commitment programs, showing per-dimension breakdowns of on-demand spending with coverage metrics and potential savings. + operationId: GetCommitmentsOnDemandHotspotsScalar + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + responses: + '200': + content: + application/json: + examples: + default: + value: + columns: + - name: service + type: group + values: + - - ec2 + - meta: + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: $ + name: on_demand_cost + type: number + values: + - 1500 + total: + - meta: + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: $ + name: on_demand_cost + type: number + values: + - 1500 + schema: + $ref: '#/components/schemas/CommitmentsOnDemandHotspotsScalarResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments on-demand hot spots (scalar) + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/savings/scalar: + get: + description: Get scalar savings metrics for cloud commitment programs, including realized savings and effective savings rate. + operationId: GetCommitmentsSavingsScalar + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + responses: + '200': + content: + application/json: + examples: + default: + value: + columns: + - meta: + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: $ + name: realized_savings + type: number + values: + - 2500 + - meta: + unit: + family: percentage + id: 17 + name: percent + plural: percent + scale_factor: 1 + short_name: '%' + name: effective_savings_rate + type: number + values: + - 0.33 + schema: + $ref: '#/components/schemas/CommitmentsSavingsScalarResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments savings (scalar) + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/savings/timeseries: + get: + description: Get timeseries savings metrics for cloud commitment programs, including actual cost, on-demand equivalent cost, realized savings, and effective savings rate over time. + operationId: GetCommitmentsSavingsTimeseries + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + responses: + '200': + content: + application/json: + examples: + default: + value: + actual_cost: + series: + total: + - 5000 + - 5200 + times: + - 1693526400 + - 1693612800 + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: $ + effective_savings_rate: + series: + total: + - 0.33 + - 0.33 + times: + - 1693526400 + - 1693612800 + on_demand_equivalent_cost: + series: + total: + - 7500 + - 7800 + times: + - 1693526400 + - 1693612800 + realized_savings: + series: + total: + - 2500 + - 2600 + times: + - 1693526400 + - 1693612800 + schema: + $ref: '#/components/schemas/CommitmentsSavingsTimeseriesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments savings (timeseries) + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/utilization/scalar: + get: + description: Get scalar utilization metrics for cloud commitment programs, including utilization percentage and unused cost. + operationId: GetCommitmentsUtilizationScalar + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + - $ref: '#/components/parameters/CommitmentsCommitmentType' + responses: + '200': + content: + application/json: + examples: + default: + value: + columns: + - name: service + type: group + values: + - - ec2 + - - rds + - meta: + unit: + family: percentage + id: 17 + name: percent + plural: percent + scale_factor: 1 + short_name: '%' + name: utilization + type: number + values: + - 0.85 + - 0.72 + schema: + $ref: '#/components/schemas/CommitmentsUtilizationScalarResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments utilization (scalar) + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/commitments/utilization/timeseries: + get: + description: Get timeseries utilization metrics for cloud commitment programs, including used and unused cost series over time. + operationId: GetCommitmentsUtilizationTimeseries + parameters: + - $ref: '#/components/parameters/CommitmentsProvider' + - $ref: '#/components/parameters/CommitmentsProduct' + - $ref: '#/components/parameters/CommitmentsStart' + - $ref: '#/components/parameters/CommitmentsEnd' + - $ref: '#/components/parameters/CommitmentsFilterBy' + - $ref: '#/components/parameters/CommitmentsCommitmentType' + responses: + '200': + content: + application/json: + examples: + default: + value: + series: + unused: + - 750 + - 600 + used: + - 4250 + - 4400 + times: + - 1693526400 + - 1693612800 + unit: + family: money + id: 1 + name: dollar + plural: dollars + scale_factor: 1 + short_name: $ + schema: + $ref: '#/components/schemas/CommitmentsUtilizationTimeseriesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get commitments utilization (timeseries) + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/custom_costs: + get: + description: List the Custom Costs files. + operationId: ListCustomCostsFiles parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning in this month. + - description: Page number for pagination in: query - name: start_month - required: true + name: page[number] schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. + format: int64 + type: integer + - description: Page size for pagination in: query - name: end_month - required: false + name: page[size] schema: - format: date-time - type: string - - description: >- - Comma-separated list specifying cost types (e.g., - `_on_demand_cost`, - `_committed_cost`, - `_total_cost`) and the - - proportions (`_percentage_in_org`, - `_percentage_in_account`). Use `*` to retrieve - all fields. - - Example: - `infra_host_on_demand_cost,infra_host_percentage_in_account` - - To obtain the complete list of active billing dimensions that can be - used to replace - - `` in the field names, make a request to the [Get - active billing dimensions - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution). + default: 100 + format: int64 + type: integer + - description: Filter by file status in: query - name: fields - required: true + name: filter[status] schema: type: string - - description: 'The direction to sort by: `[desc, asc]`.' + - description: Filter files by name with case-insensitive substring matching. in: query - name: sort_direction - required: false - schema: - $ref: '#/components/schemas/SortDirection' - - description: >- - The billing dimension to sort by. Always sorted by total cost. - Example: `infra_host`. - in: query - name: sort_name - required: false + name: filter[name] schema: type: string - - description: >- - Comma separated list of tag keys used to group cost. If no value is - provided the cost will not be broken down by tags. - - To see which tags are available, look for the value of - `tag_config_source` in the API response. + - description: Filter by provider. in: query - name: tag_breakdown_keys - required: false + name: filter[provider] schema: - type: string - - description: >- - List following results with a next_record_id provided in the - previous query. + items: + type: string + type: array + - description: Sort key with optional descending prefix in: query - name: next_record_id - required: false + name: sort schema: + default: created_at type: string - - description: Include child org cost in the response. Defaults to `true`. - in: query - name: include_descendants - required: false - schema: - default: true - type: boolean responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + - attributes: + billed_cost: 100.5 + billing_currency: USD + charge_period: + end: 1706745600000 + start: 1704067200000 + name: my_file.json + provider_names: + - my_provider + status: active + uploaded_at: 1704067200000 + id: 00000000-0000-0000-0000-000000000005 + type: custom_costs + meta: + total_filtered_count: 1 + version: '1' schema: - $ref: '#/components/schemas/MonthlyCostAttributionResponse' + $ref: '#/components/schemas/CustomCostsFileListResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Bad Request '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized + description: Forbidden '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - usage_read - - billing_read - summary: Get Monthly Cost Attribution + - cloud_cost_management_read + summary: List Custom Costs files tags: - - Usage Metering + - Cloud Cost Management x-permission: - operator: AND + operator: OR permissions: - - usage_read - - billing_read -components: - schemas: - AwsCURConfigsResponse: - description: List of AWS CUR configs. - properties: - data: - description: An AWS CUR config. - items: - $ref: '#/components/schemas/AwsCURConfig' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object + - cloud_cost_management_read + put: + description: Upload a Custom Costs file. + operationId: UploadCustomCostsFile + requestBody: + content: + application/json: + examples: + default: + value: + - BilledCost: 100.5 + BillingCurrency: USD + ChargeDescription: Monthly usage charge for my service + ChargePeriodEnd: '2023-02-28' + ChargePeriodStart: '2023-02-01' + schema: + $ref: '#/components/schemas/CustomCostsFileUploadRequest' + required: true + responses: + '202': + content: + application/json: + examples: + default: + value: + data: + attributes: + billed_cost: 100.5 + billing_currency: USD + charge_period: + end: 1706745600000 + start: 1704067200000 + name: my_file.json + provider_names: + - my_provider + status: pending + uploaded_at: 1704067200000 + id: 00000000-0000-0000-0000-000000000006 + type: custom_costs + meta: + version: '1' + schema: + $ref: '#/components/schemas/CustomCostsFileUploadResponse' + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Upload Custom Costs file + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/custom_costs/{file_id}: + delete: + description: Delete the specified Custom Costs file. + operationId: DeleteCustomCostsFile + parameters: + - $ref: '#/components/parameters/FileID' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete Custom Costs file + tags: + - Cloud Cost Management + get: + description: Fetch the specified Custom Costs file. + operationId: GetCustomCostsFile + parameters: + - $ref: '#/components/parameters/FileID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + billed_cost: 100.5 + billing_currency: USD + charge_period: + end: 1706745600000 + start: 1704067200000 + content: + - BilledCost: 100.5 + BillingCurrency: USD + ChargeDescription: Monthly usage charge for my service + ChargePeriodEnd: '2023-02-28' + ChargePeriodStart: '2023-02-01' + name: my_file.json + provider_names: + - my_provider + status: active + uploaded_at: 1704067200000 + id: 00000000-0000-0000-0000-000000000007 + type: custom_costs + meta: + version: '1' + schema: + $ref: '#/components/schemas/CustomCostsFileGetResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get Custom Costs file + tags: + - Cloud Cost Management + /api/v2/cost/gcp_uc_config: + get: + description: List the Google Cloud Usage Cost configs. + operationId: ListCostGCPUsageCostConfigs + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: '2023-01-01T12:00:00.000000' + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: gcp_uc_config + schema: + $ref: '#/components/schemas/GCPUsageCostConfigsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Google Cloud Usage Cost configs + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + post: + description: Create a Cloud Cost Management account for an Google Cloud Usage Cost config. + operationId: CreateCostGCPUsageCostConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + billing_account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + export_dataset_name: billing + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + type: gcp_uc_config_post_request + schema: + $ref: '#/components/schemas/GCPUsageCostConfigPostRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: '2023-01-01T12:00:00.000000' + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: gcp_uc_config + schema: + $ref: '#/components/schemas/GCPUsageCostConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create Google Cloud Usage Cost config + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/gcp_uc_config/{cloud_account_id}: + delete: + description: Archive a Cloud Cost Management account. + operationId: DeleteCostGCPUsageCostConfig + parameters: + - $ref: '#/components/parameters/CloudAccountID' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete Google Cloud Usage Cost config + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + get: + description: Get a specific Google Cloud Usage Cost config. + operationId: GetCostGCPUsageCostConfig + parameters: + - description: The unique identifier of the cloud account + in: path + name: cloud_account_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: '2023-01-01T12:00:00.000000' + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: gcp_uc_config + schema: + $ref: '#/components/schemas/GcpUcConfigResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get Google Cloud Usage Cost config + tags: + - Cloud Cost Management + patch: + description: Update the status of an Google Cloud Usage Cost config (active/archived). + operationId: UpdateCostGCPUsageCostConfig + parameters: + - $ref: '#/components/parameters/CloudAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + is_enabled: true + type: gcp_uc_config_patch_request + schema: + $ref: '#/components/schemas/GCPUsageCostConfigPatchRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: '2023-01-01T12:00:00.000000' + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: gcp_uc_config + schema: + $ref: '#/components/schemas/GCPUsageCostConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update Google Cloud Usage Cost config + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/oci_config: + get: + description: List the OCI configs. + operationId: ListCostOCIConfigs + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: ocid1.tenancy.oc1..example + created_at: '2026-01-01T12:00:00Z' + status: active + status_updated_at: '2026-01-01T12:00:00Z' + updated_at: '2026-01-01T12:00:00Z' + id: '1' + type: oci_config + schema: + $ref: '#/components/schemas/OCIConfigsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management OCI configs + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/recommendations: + post: + description: List cost recommendations matching a filter, with pagination and sorting. + operationId: SearchCostRecommendations + parameters: + - description: Number of results per page (1–10000). + in: query + name: page[size] + schema: + type: string + - description: Pagination token from a previous response. + in: query + name: page[token] + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + filter: '@resource_table:aws_ec2_instance' + sort: + - expression: potential_daily_savings.amount + order: DESC + schema: + $ref: '#/components/schemas/RecommendationsFilterRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + dd_resource_key: arn:aws:ec2:us-east-1:123456789012:instance/i-1234567890abcdef0 + potential_daily_savings: + amount: 1.23 + currency: USD + recommendation_type: terminate + resource_id: i-1234567890abcdef0 + resource_type: aws_ec2_instance + tags: + - env:prod + - team:ccm + id: encoded-event-id-1 + type: recommendation + meta: + page: + filter: '@resource_table:aws_ec2_instance' + next_page_token: '' + page_size: 100 + schema: + $ref: '#/components/schemas/CostRecommendationArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Search cost recommendations + tags: + - Cloud Cost Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_descriptions: + get: + description: List Cloud Cost Management tag key descriptions for the organization. Use `filter[cloud]` to scope the result to a single cloud provider; when omitted, both cross-cloud defaults and cloud-specific descriptions are returned. + operationId: ListCostTagDescriptions + parameters: + - description: Filter descriptions to a specific cloud provider (for example, `aws`). Omit to return descriptions across all clouds. + in: query + name: filter[cloud] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cloud: aws + created_at: '2026-01-01T12:00:00Z' + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: '2026-01-01T12:00:00Z' + id: account_id + type: cost_tag_description + schema: + $ref: '#/components/schemas/CostTagDescriptionsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag descriptions + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_descriptions/{tag_key}: + delete: + description: Delete a Cloud Cost Management tag key description. When `cloud` is omitted, deletes every description for the tag key, falling back to Datadog's global default when available. When `cloud` is provided, deletes only the description scoped to that cloud provider. + operationId: DeleteCostTagDescriptionByKey + parameters: + - description: The tag key whose description is being deleted. + in: path + name: tag_key + required: true + schema: + type: string + - description: Cloud provider to scope the deletion to (for example, `aws`). Omit to delete every description for the tag key. + in: query + name: cloud + required: false + schema: + type: string + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete a Cloud Cost Management tag description + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + get: + description: Get the Cloud Cost Management description for a single tag key. Use `filter[cloud]` to scope the lookup to a specific cloud provider; when omitted, the response resolves the description in fallback order (cloud-specific organization override, then cloudless organization default, then Datadog's global default). + operationId: GetCostTagDescriptionByKey + parameters: + - description: The tag key whose description is being fetched. + in: path + name: tag_key + required: true + schema: + type: string + - description: Cloud provider to scope the lookup to (for example, `aws`). Omit to use the resolved fallback. + in: query + name: filter[cloud] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cloud: aws + created_at: '2026-01-01T12:00:00Z' + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: '2026-01-01T12:00:00Z' + id: account_id + type: cost_tag_description + schema: + $ref: '#/components/schemas/CostTagDescriptionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get a Cloud Cost Management tag description + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + put: + description: Create or update a Cloud Cost Management tag key description. The new description and optional cloud scoping are supplied in the request body. Omit `cloud` to set a cross-cloud default for the tag key. + operationId: UpsertCostTagDescriptionByKey + parameters: + - description: The tag key whose description is being upserted. + in: path + name: tag_key + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cloud: aws + description: AWS account that owns this cost. + id: account_id + type: cost_tag_description + schema: + $ref: '#/components/schemas/CostTagDescriptionUpsertRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Upsert a Cloud Cost Management tag description + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + /api/v2/cost/tag_descriptions/{tag_key}/generate: + get: + description: Use AI to draft a Cloud Cost Management tag key description based on associated cost data. The generated description is returned in the response and is not persisted by this endpoint; follow up with `UpsertCostTagDescriptionByKey` to save it. + operationId: GenerateCostTagDescriptionByKey + parameters: + - description: The tag key to generate an AI description for. + in: path + name: tag_key + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: AWS account that owns this cost. + id: account_id + type: cost_generated_tag_description + schema: + $ref: '#/components/schemas/GenerateCostTagDescriptionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Generate a Cloud Cost Management tag description + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_keys: + get: + description: List Cloud Cost Management tag keys. + operationId: ListCostTagKeys + parameters: + - description: The Cloud Cost Management metric to scope the tag keys to. When omitted, returns tag keys across all metrics. + in: query + name: filter[metric] + schema: + type: string + - description: Filter to return only tag keys that appear with the given `key:value` tag values. For example, `filter[tags]=providername:aws` returns tag keys found on the same cost data, such as `is_aws_ec2_compute` and `aws_instance_type`. + in: query + name: filter[tags] + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + sources: + - focus + value: providername + id: providername + type: cost_tag_key + - attributes: + sources: [] + value: service + id: service + type: cost_tag_key + schema: + $ref: '#/components/schemas/CostTagKeysResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag keys + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_keys/{tag_key}: + get: + description: Get details for a specific Cloud Cost Management tag key, including example tag values and description. + operationId: GetCostTagKey + parameters: + - $ref: '#/components/parameters/TagKey' + - description: The Cloud Cost Management metric to scope the tag key details to. When omitted, returns details across all metrics. + in: query + name: filter[metric] + schema: + type: string + - description: Controls the size of the internal tag value search scope. This does **not** restrict the number of example tag values returned in the response. Defaults to 50, maximum 10000. + in: query + name: page[size] + schema: + default: 50 + format: int32 + maximum: 10000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + details: + description: The cloud provider name reported for the cost line item. + tag_values: + - aws + - gcp + - azure + sources: + - focus + value: providername + id: providername + type: cost_tag_key + schema: + $ref: '#/components/schemas/CostTagKeyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get a Cloud Cost Management tag key + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost/tag_metadata: + get: + description: List Cloud Cost Management tag key metadata, including row counts, cost covered, cardinality, and a sample of top tag values per cloud account. Use `filter[daily]=true` to return daily rows instead of the default monthly roll-up. + operationId: ListCostTagMetadata + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: 2026-02 + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + - description: Filter results to a specific Cloud Cost Management metric (for example, `aws.cost.net.amortized`). When omitted, every available metric for the requested period is returned. + in: query + name: filter[metric] + schema: + type: string + - description: Restrict results to a single tag key. + in: query + name: filter[tag_key] + schema: + type: string + - description: When `true`, return one row per day with the day in the `date` attribute. Defaults to the monthly roll-up when omitted. + in: query + name: filter[daily] + schema: + $ref: '#/components/schemas/CostTagMetadataDailyFilter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cardinality_by_account: + '123456789012': 42 + cost_covered: 1234.56 + metric: aws.cost.net.amortized + row_count: 100 + tag_sources: + - aws-user-defined + top_values_by_account: + '123456789012': + - prod + - staging + id: env:aws.cost.net.amortized + type: cost_tag_key_metadata + schema: + $ref: '#/components/schemas/CostTagKeyMetadataResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag key metadata + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/currency: + get: + description: Get the dominant billing currency observed in Cloud Cost Management data for the requested period. The response wraps the currency in a JSON:API `data` array containing at most one entry; the array is empty when no currency data is available. + operationId: GetCostTagMetadataCurrency + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: 2026-02 + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: USD + type: cost_currency + schema: + $ref: '#/components/schemas/CostCurrencyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get the Cloud Cost Management billing currency + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/metrics: + get: + description: List Cloud Cost Management metrics that have data for the requested period. + operationId: ListCostTagMetadataMetrics + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: 2026-02 + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: aws.cost.net.amortized + type: cost_metric + - id: gcp.cost.amortized + type: cost_metric + schema: + $ref: '#/components/schemas/CostMetricsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List available Cloud Cost Management metrics + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/months: + get: + description: |- + List months that have Cloud Cost Management tag metadata for a given provider, + ordered most-recent first. The response is capped at 36 months. + operationId: ListCostTagMetadataMonths + parameters: + - description: |- + Provider to scope the query to. Use the value of the `providername` tag in CCM + (for example, `aws`, `azure`, `gcp`, `Oracle`, `Confluent Cloud`, `Snowflake`). + For costs uploaded through the Custom Costs API, use `custom`. + Values are case-sensitive. + example: aws + in: query + name: filter[provider] + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: 2026-04 + type: cost_tag_metadata_month + - id: 2026-03 + type: cost_tag_metadata_month + schema: + $ref: '#/components/schemas/CostTagMetadataMonthsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag metadata months + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/orchestrators: + get: + description: List container orchestrators (for example, `kubernetes`, `ecs`) detected in Cloud Cost Management data for the requested period. + operationId: ListCostTagMetadataOrchestrators + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: 2026-02 + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: ecs + type: cost_orchestrator + - id: kubernetes + type: cost_orchestrator + schema: + $ref: '#/components/schemas/CostOrchestratorsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management orchestrators + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tag_metadata/tag_sources: + get: + description: List Cloud Cost Management tag keys observed for the requested period, along with the origin sources that produced them (for example, `aws-user-defined`, `custom`). + operationId: ListCostTagKeySources + parameters: + - description: The month to scope the query to, in `YYYY-MM` format. + example: 2026-02 + in: query + name: filter[month] + required: true + schema: + type: string + - description: Filter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive. + in: query + name: filter[provider] + schema: + type: string + - description: Filter results to tag keys that have data for a specific Cloud Cost Management metric (for example, `aws.cost.net.amortized`). When omitted, all tag keys for the requested period are returned. + in: query + name: filter[metric] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + tag_key: env + tag_sources: + - aws-user-defined + - custom + id: env + type: cost_tag_key_source + - attributes: + tag_key: service + tag_sources: + - aws + id: service + type: cost_tag_key_source + schema: + $ref: '#/components/schemas/CostTagKeySourcesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tag sources + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cost/tags: + get: + description: List Cloud Cost Management tags for a given metric. + operationId: ListCostTags + parameters: + - description: The Cloud Cost Management metric to scope the tags to. When omitted, returns tags across all metrics. + in: query + name: filter[metric] + schema: + type: string + - description: A substring used to filter the returned tags by name. + in: query + name: filter[match] + schema: + type: string + - description: Filter to return only tags that appear with the given `key:value` tag values. For example, `filter[tags]=providername:aws` returns tags found on the same cost data, such as `aws_instance_type:t3.micro` and `aws_instance_type:m5.large`. + in: query + name: filter[tags] + schema: + items: + type: string + type: array + - description: Restrict the returned tags to those whose key matches one of the given tag keys. + in: query + name: filter[tag_keys] + schema: + items: + type: string + type: array + - description: Controls the size of the internal tag search scope. This does **not** restrict the number of tags returned in the response. Defaults to 50, maximum 10000. + in: query + name: page[size] + schema: + default: 50 + format: int32 + maximum: 10000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + sources: + - focus + value: providername:aws + id: providername:aws + type: cost_tag + - attributes: + sources: + - focus + value: providername:gcp + id: providername:gcp + type: cost_tag + schema: + $ref: '#/components/schemas/CostTagsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List Cloud Cost Management tags + tags: + - Cloud Cost Management + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + /api/v2/cost_by_tag/active_billing_dimensions: + get: + description: Get active billing dimensions for cost attribution. Cost data for a given month becomes available no later than the 19th of the following month. + operationId: GetActiveBillingDimensions + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: abc-123 + type: billing_dimensions + schema: + $ref: '#/components/schemas/ActiveBillingDimensionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get active billing dimensions for cost attribution + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/cost_by_tag/monthly_cost_attribution: + get: + description: |- + Get monthly cost attribution by tag across multi-org and single root-org accounts. + Cost Attribution data for a given month becomes available no later than the 19th of the following month. + This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is + set in the response. If it is, make another request and pass `next_record_id` as a parameter. + Pseudo code example: + ``` + response := GetMonthlyCostAttribution(start_month, end_month) + cursor := response.metadata.pagination.next_record_id + WHILE cursor != null BEGIN + sleep(5 seconds) # Avoid running into rate limit + response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor) + cursor := response.metadata.pagination.next_record_id + END + ``` + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). This endpoint is not available in the Government (US1-FED) site. + operationId: GetMonthlyCostAttribution + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning in this month.' + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.' + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: |- + Comma-separated list specifying cost types (e.g., `_on_demand_cost`, `_committed_cost`, `_total_cost`) and the + proportions (`_percentage_in_org`, `_percentage_in_account`). Use `*` to retrieve all fields. + Example: `infra_host_on_demand_cost,infra_host_percentage_in_account` + To obtain the complete list of active billing dimensions that can be used to replace + `` in the field names, make a request to the [Get active billing dimensions API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution). + in: query + name: fields + required: true + schema: + type: string + - description: 'The direction to sort by: `[desc, asc]`.' + in: query + name: sort_direction + required: false + schema: + $ref: '#/components/schemas/SortDirection' + - description: 'The billing dimension to sort by. Always sorted by total cost. Example: `infra_host`.' + in: query + name: sort_name + required: false + schema: + type: string + - description: |- + Comma separated list of tag keys used to group cost. If no value is provided the cost will not be broken down by tags. + To see which tags are available, look for the value of `tag_config_source` in the API response. + in: query + name: tag_breakdown_keys + required: false + schema: + type: string + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + - description: Include child org cost in the response. Defaults to `true`. + in: query + name: include_descendants + required: false + schema: + default: true + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: abc-123 + type: cost_by_tag + schema: + $ref: '#/components/schemas/MonthlyCostAttributionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get Monthly Cost Attribution + tags: + - Usage Metering + x-permission: + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/tags/enrichment: + get: + description: List all tag pipeline rulesets - Retrieve a list of all tag pipeline rulesets for the organization + operationId: ListTagPipelinesRulesets + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: null + enabled: true + last_modified_user_uuid: '' + modified: null + name: Production Cost Allocation Rules + position: 0 + rules: + - enabled: true + mapping: null + metadata: null + name: AWS Production Account Tagging + query: + addition: + key: environment + value: production + case_insensitivity: false + if_tag_exists: do_not_apply + query: billingcurrency:"USD" AND account_name:"prod-account" + reference_table: null + version: 2 + id: 00000000-0000-0000-0000-000000000001 + type: ruleset + schema: + $ref: '#/components/schemas/RulesetRespArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List tag pipeline rulesets + tags: + - Cloud Cost Management + post: + description: Create a new tag pipeline ruleset with the specified rules and configuration + operationId: CreateTagPipelinesRuleset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + rules: + - enabled: true + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + id: New Ruleset + type: create_ruleset + schema: + $ref: '#/components/schemas/CreateRulesetRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: null + enabled: true + last_modified_user_uuid: '' + modified: null + name: Example Ruleset + position: 0 + rules: + - enabled: true + mapping: null + metadata: null + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: null + version: 1 + id: 00000000-0000-0000-0000-000000000002 + type: ruleset + schema: + $ref: '#/components/schemas/RulesetResp' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Create tag pipeline ruleset + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/reorder: + post: + description: Reorder tag pipeline rulesets - Change the execution order of tag pipeline rulesets + operationId: ReorderTagPipelinesRulesets + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset + - id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset + - id: f1e2d3c4-b5a6-9780-1234-567890abcdef + type: ruleset + schema: + $ref: '#/components/schemas/ReorderRulesetResourceArray' + required: true + responses: + '204': + description: Successfully reordered rulesets + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Reorder tag pipeline rulesets + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/status: + get: + description: List the processing status of all tag pipeline rulesets. Returns only the ID and processing status for each ruleset. + operationId: ListTagPipelinesRulesetsStatus + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + processing_status: processing + id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset_status + - attributes: + processing_status: done + id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset_status + schema: + $ref: '#/components/schemas/RulesetStatusRespArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: List tag pipeline ruleset statuses + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/validate-query: + post: + description: Validate a tag pipeline query - Validate the syntax and structure of a tag pipeline query + operationId: ValidateQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + Query: example:query AND test:true + type: validate_query + schema: + $ref: '#/components/schemas/RulesValidateQueryRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + Canonical: canonical query representation + type: validate_response + schema: + $ref: '#/components/schemas/RulesValidateQueryResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Validate query + tags: + - Cloud Cost Management + /api/v2/tags/enrichment/{ruleset_id}: + delete: + description: Delete a tag pipeline ruleset - Delete an existing tag pipeline ruleset by its ID + operationId: DeleteTagPipelinesRuleset + parameters: + - description: The unique identifier of the ruleset + in: path + name: ruleset_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Delete tag pipeline ruleset + tags: + - Cloud Cost Management + get: + description: Get a specific tag pipeline ruleset - Retrieve a specific tag pipeline ruleset by its ID + operationId: GetTagPipelinesRuleset + parameters: + - description: The unique identifier of the ruleset + in: path + name: ruleset_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: null + enabled: true + last_modified_user_uuid: '' + modified: null + name: Example Ruleset + position: 0 + rules: + - enabled: true + mapping: null + metadata: null + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: null + version: 1 + id: 00000000-0000-0000-0000-000000000004 + type: ruleset + schema: + $ref: '#/components/schemas/RulesetResp' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_read + summary: Get a tag pipeline ruleset + tags: + - Cloud Cost Management + patch: + description: Update a tag pipeline ruleset - Update an existing tag pipeline ruleset with new rules and configuration + operationId: UpdateTagPipelinesRuleset + parameters: + - description: The unique identifier of the ruleset + in: path + name: ruleset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + last_version: 1 + name: Updated Ruleset + rules: + - enabled: true + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + - enabled: true + mapping: + destination_key: team_owner + if_tag_exists: do_not_apply + source_keys: + - account_name + - account_id + name: Account Name Mapping + query: null + - enabled: true + name: New table rule with new UI + query: null + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + type: update_ruleset + schema: + $ref: '#/components/schemas/UpdateRulesetRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Example Ruleset + position: 0 + rules: + - enabled: true + name: Example Rule + query: + addition: + key: env + value: prod + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" + version: 1 + id: 00000000-0000-0000-0000-000000000003 + type: ruleset + schema: + $ref: '#/components/schemas/RulesetResp' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cloud_cost_management_write + summary: Update tag pipeline ruleset + tags: + - Cloud Cost Management +components: + schemas: + AccountFiltersResponse: + description: Response containing the account filters for a cloud account. + properties: + data: + $ref: '#/components/schemas/AccountFilters' + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + AccountFiltersPatchRequest: + description: Account filters patch request. + properties: + data: + $ref: '#/components/schemas/AccountFiltersPatchData' + required: + - data + type: object + CostAnomaliesResponse: + description: Response object containing a list of detected Cloud Cost Management anomalies and aggregated totals. + properties: + data: + $ref: '#/components/schemas/CostAnomaliesResponseData' + type: object + CostAnomalyResponse: + description: Response object containing a single Cloud Cost Management anomaly. + properties: + data: + $ref: '#/components/schemas/CostAnomalyResponseData' + type: object + ArbitraryRuleResponseArray: + description: The definition of `ArbitraryRuleResponseArray` object. + example: + data: + - attributes: + costs_to_allocate: + - condition: like + tag: service + value: orgstore-csm* + values: null + created: '2024-11-20T03:44:37Z' + enabled: true + last_modified_user_uuid: user-example-uuid + order_id: 1 + processing_status: done + provider: + - gcp + rule_name: gcp-orgstore-csm-team-allocation + strategy: + allocated_by: + - allocated_tags: + - key: team + value: csm-activation + percentage: 0.34 + - allocated_tags: + - key: team + value: csm-agentless + percentage: 0.66 + method: percent + type: shared + updated: '2025-09-02T21:28:32Z' + version: 1 + id: '19' + type: arbitrary_rule + - attributes: + costs_to_allocate: + - condition: is + tag: env + value: staging + values: null + created: '2025-05-27T18:48:05Z' + enabled: true + last_modified_user_uuid: user-example-uuid-2 + order_id: 2 + processing_status: done + provider: + - aws + rule_name: test-even-2 + strategy: + allocated_by_tag_keys: + - team + based_on_costs: + - condition: is + tag: aws_product + value: s3 + values: null + granularity: daily + method: even + type: shared + updated: '2025-09-03T21:00:49Z' + version: 1 + id: '311' + type: arbitrary_rule + - attributes: + costs_to_allocate: + - condition: is + tag: servicename + value: s3 + values: null + created: '2025-03-21T20:42:40Z' + enabled: false + last_modified_user_uuid: user-example-uuid-3 + order_id: 3 + processing_status: done + provider: + - aws + rule_name: test-s3-timeseries + strategy: + granularity: daily + method: proportional_timeseries + type: shared + updated: '2025-09-02T21:16:50Z' + version: 1 + id: '289' + type: arbitrary_rule + - attributes: + costs_to_allocate: + - condition: '=' + tag: aws_product + value: msk + values: null + - condition: is + tag: product + value: 'null' + values: null + created: '2025-08-27T14:39:31Z' + enabled: true + last_modified_user_uuid: user-example-uuid-4 + order_id: 4 + processing_status: done + provider: + - aws + rule_name: azure-unallocated-by-product-2 + strategy: + allocated_by_tag_keys: + - aws_product + based_on_costs: + - condition: '=' + tag: aws_product + value: msk + values: null + - condition: is not + tag: product + value: 'null' + values: null + granularity: daily + method: proportional + type: shared + updated: '2025-09-02T21:28:32Z' + version: 1 + id: '523' + type: arbitrary_rule + properties: + data: + description: The `ArbitraryRuleResponseArray` `data`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseData' + type: array + meta: + $ref: '#/components/schemas/ArbitraryRuleResponseArrayMeta' + required: + - data + type: object + ArbitraryCostUpsertRequest: + description: The definition of `ArbitraryCostUpsertRequest` object. + example: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + values: null + - condition: in + tag: environment + value: '' + values: + - production + - staging + enabled: true + order_id: 1 + provider: + - aws + - gcp + rule_name: example-arbitrary-cost-rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + values: null + - condition: not in + tag: team + value: '' + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + type: upsert_arbitrary_rule + properties: + data: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestData' + type: object + ArbitraryRuleResponse: + description: The definition of `ArbitraryRuleResponse` object. + example: + data: + attributes: + costs_to_allocate: + - condition: is + tag: account_id + value: '123456789' + values: null + - condition: in + tag: environment + value: '' + values: + - production + - staging + created: '2023-01-01T12:00:00Z' + enabled: true + last_modified_user_uuid: user-123-uuid + order_id: 1 + provider: + - aws + - gcp + rule_name: Example custom allocation rule + strategy: + allocated_by_tag_keys: + - team + - environment + based_on_costs: + - condition: is + tag: service + value: web-api + values: null + - condition: not in + tag: team + value: '' + values: + - legacy + - deprecated + granularity: daily + method: proportional + type: shared + updated: '2023-01-01T12:00:00Z' + version: 1 + id: '123' + type: arbitrary_rule + properties: + data: + $ref: '#/components/schemas/ArbitraryRuleResponseData' + type: object + ReorderRuleResourceArray: + description: The definition of `ReorderRuleResourceArray` object. + example: + data: + - id: '456' + type: arbitrary_rule + - id: '123' + type: arbitrary_rule + - id: '789' + type: arbitrary_rule + properties: + data: + description: The `ReorderRuleResourceArray` `data`. + items: + $ref: '#/components/schemas/ReorderRuleResourceData' + type: array + required: + - data + type: object + ArbitraryRuleStatusResponseArray: + description: Processing statuses for all custom allocation rules in the specified organization. + example: + data: + - attributes: + processing_status: processing + id: '123' + type: arbitrary_rule_status + - attributes: + processing_status: done + id: '456' + type: arbitrary_rule_status + properties: + data: + description: Processing status for a custom allocation rule. + items: + $ref: '#/components/schemas/ArbitraryRuleStatusResponseData' + type: array + required: + - data + type: object + AwsCURConfigsResponse: + description: List of AWS CUR configs. + properties: + data: + description: An AWS CUR config. + items: + $ref: '#/components/schemas/AwsCURConfig' + type: array + required: + - data + type: object AwsCURConfigPostRequest: description: AWS CUR config Post Request. properties: - data: - $ref: '#/components/schemas/AwsCURConfigPostData' + data: + $ref: '#/components/schemas/AwsCURConfigPostData' + required: + - data + type: object + AwsCurConfigResponse: + description: The definition of `AwsCurConfigResponse` object. + example: + data: + attributes: + account_filters: + excluded_accounts: + - '123456789124' + - '123456789125' + include_new_accounts: true + account_id: '123456789123' + bucket_name: dd-cost-bucket + bucket_region: us-east-1 + created_at: '2023-01-01T12:00:00.000000' + error_messages: [] + months: 36 + report_name: dd-report-name + report_prefix: dd-report-prefix + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: aws_cur_config + properties: + data: + $ref: '#/components/schemas/AwsCurConfigResponseData' + type: object + AwsCURConfigPatchRequest: + description: AWS CUR config Patch Request. + properties: + data: + $ref: '#/components/schemas/AwsCURConfigPatchData' + required: + - data + type: object + AzureUCConfigsResponse: + description: List of Azure accounts with configs. + properties: + data: + description: An Azure config pair. + items: + $ref: '#/components/schemas/AzureUCConfigPair' + type: array + required: + - data + type: object + AzureUCConfigPostRequest: + description: Azure config Post Request. + properties: + data: + $ref: '#/components/schemas/AzureUCConfigPostData' + required: + - data + type: object + AzureUCConfigPairsResponse: + description: Response of Azure config pair. + properties: + data: + $ref: '#/components/schemas/AzureUCConfigPair' + type: object + UCConfigPair: + description: The definition of `UCConfigPair` object. + example: + data: + attributes: + configs: + - account_id: 1234abcd-1234-abcd-1234-1234abcd1234 + client_id: 1234abcd-1234-abcd-1234-1234abcd1234 + created_at: '2023-01-01T12:00:00.000000' + dataset_type: actual + error_messages: [] + export_name: dd-actual-export + export_path: dd-export-path + id: '123456789123' + months: 36 + scope: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + storage_account: dd-storage-account + storage_container: dd-storage-container + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: azure_uc_configs + properties: + data: + $ref: '#/components/schemas/UCConfigPairData' + type: object + AzureUCConfigPatchRequest: + description: Azure config Patch Request. + properties: + data: + $ref: '#/components/schemas/AzureUCConfigPatchData' + required: + - data + type: object + BudgetWithEntries: + description: The definition of the `BudgetWithEntries` object. + properties: + data: + $ref: '#/components/schemas/BudgetWithEntriesData' + type: object + ValidationResponse: + description: Response containing validation errors. + example: + errors: + - meta: + field: region + id: datadog-agent-source + message: Field 'region' is required + title: Field 'region' is required + properties: + errors: + description: The `ValidationResponse` `errors`. + items: + $ref: '#/components/schemas/ValidationError' + type: array + type: object + CustomForecastUpsertRequest: + description: Request body to upsert (create or replace) the custom forecast for a budget. + properties: + data: + $ref: '#/components/schemas/CustomForecastUpsertRequestData' + required: + - data + type: object + CustomForecastResponse: + description: Response object containing the custom forecast for a budget. + properties: + data: + $ref: '#/components/schemas/CustomForecastResponseData' + required: + - data + type: object + BudgetValidationRequest: + description: The request object for validating a budget configuration before creating or updating it. + example: + data: + attributes: + created_at: 1738258683590 + created_by: 00000000-0a0a-0a0a-aaa0-00000000000a + end_month: 202502 + entries: + - amount: 500 + month: 202501 + tag_filters: + - tag_key: service + tag_value: ec2 + - amount: 500 + month: 202502 + tag_filters: + - tag_key: service + tag_value: ec2 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1738258683590 + updated_by: 00000000-0a0a-0a0a-aaa0-00000000000a + id: '1' + type: budget + properties: + data: + $ref: '#/components/schemas/BudgetValidationRequestData' + type: object + BudgetValidationResponse: + description: The response object for a budget validation request, containing the validation result data. + example: + data: + attributes: + errors: [] + valid: true + id: budget_validation + type: budget_validation + properties: + data: + $ref: '#/components/schemas/BudgetValidationResponseData' + type: object + BudgetArray: + description: An array of budgets. + example: + data: + - attributes: + created_at: 1741011342772 + created_by: user1 + end_month: 202502 + metrics_query: aws.cost.amortized{service:ec2} by {service} + name: my budget + org_id: 123 + start_month: 202501 + total_amount: 1000 + updated_at: 1741011342772 + updated_by: user2 + id: 00000000-0a0a-0a0a-aaa0-00000000000a + type: budget + properties: + data: + description: The `BudgetArray` `data`. + items: + $ref: '#/components/schemas/Budget' + type: array + required: + - data + type: object + CommitmentsListResponse: + description: Response containing a list of cloud commitment details. + properties: + commitments: + $ref: '#/components/schemas/CommitmentsListItems' + meta: + $ref: '#/components/schemas/CommitmentsListMeta' + required: + - commitments + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + CommitmentsCoverageScalarResponse: + description: Response containing scalar coverage metrics for cloud commitment programs. + properties: + columns: + $ref: '#/components/schemas/CommitmentsScalarColumns' + required: + - columns + type: object + CommitmentsCoverageTimeseriesResponse: + description: Response containing timeseries coverage metrics for cloud commitment programs. + properties: + cost: + $ref: '#/components/schemas/CommitmentsTimeseriesMetric' + hours: + $ref: '#/components/schemas/CommitmentsTimeseriesMetric' + required: + - cost + - hours + type: object + CommitmentsOnDemandHotspotsScalarResponse: + description: Response containing scalar on-demand hot-spots data for cloud commitment programs. + properties: + columns: + $ref: '#/components/schemas/CommitmentsScalarColumns' + meta: + $ref: '#/components/schemas/CommitmentsOnDemandHotspotsScalarMeta' + total: + $ref: '#/components/schemas/CommitmentsScalarColumns' + required: + - columns + - total + type: object + CommitmentsSavingsScalarResponse: + description: Response containing scalar savings metrics for cloud commitment programs. + properties: + columns: + $ref: '#/components/schemas/CommitmentsScalarColumns' + required: + - columns + type: object + CommitmentsSavingsTimeseriesResponse: + description: Response containing timeseries savings metrics for cloud commitment programs. + properties: + actual_cost: + $ref: '#/components/schemas/CommitmentsTimeseriesMetric' + effective_savings_rate: + $ref: '#/components/schemas/CommitmentsTimeseriesMetric' + on_demand_equivalent_cost: + $ref: '#/components/schemas/CommitmentsTimeseriesMetric' + realized_savings: + $ref: '#/components/schemas/CommitmentsTimeseriesMetric' + required: + - actual_cost + - effective_savings_rate + - on_demand_equivalent_cost + - realized_savings + type: object + CommitmentsUtilizationScalarResponse: + description: Response containing scalar utilization metrics for cloud commitment programs. + properties: + columns: + $ref: '#/components/schemas/CommitmentsScalarColumns' + product_breakdown: + $ref: '#/components/schemas/CommitmentsUtilizationScalarProductBreakdown' + required: + - columns + type: object + CommitmentsUtilizationTimeseriesResponse: + description: Response containing timeseries utilization metrics for cloud commitment programs. + properties: + series: + $ref: '#/components/schemas/CommitmentsTimeseriesSeries' + times: + $ref: '#/components/schemas/CommitmentsTimestamps' + unit: + $ref: '#/components/schemas/CommitmentsUnit' + required: + - series + - times + type: object + CustomCostsFileListResponse: + description: Response for List Custom Costs files. + properties: + data: + description: List of Custom Costs files. + items: + $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' + type: array + meta: + $ref: '#/components/schemas/CustomCostListResponseMeta' + type: object + CustomCostsFileUploadRequest: + description: Request for uploading a Custom Costs file. + items: + $ref: '#/components/schemas/CustomCostsFileLineItem' + type: array + CustomCostsFileUploadResponse: + description: Response for Uploaded Custom Costs files. + properties: + data: + $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' + meta: + $ref: '#/components/schemas/CustomCostUploadResponseMeta' + type: object + CustomCostsFileGetResponse: + description: Response for Get Custom Costs files. + properties: + data: + $ref: '#/components/schemas/CustomCostsFileMetadataWithContentHighLevel' + meta: + $ref: '#/components/schemas/CustomCostGetResponseMeta' + type: object + GCPUsageCostConfigsResponse: + description: List of Google Cloud Usage Cost configs. + properties: + data: + description: A Google Cloud Usage Cost config. + items: + $ref: '#/components/schemas/GCPUsageCostConfig' + type: array + required: + - data + type: object + GCPUsageCostConfigPostRequest: + description: Google Cloud Usage Cost config post request. + properties: + data: + $ref: '#/components/schemas/GCPUsageCostConfigPostData' + required: + - data + type: object + GCPUsageCostConfigResponse: + description: Response of Google Cloud Usage Cost config. + properties: + data: + $ref: '#/components/schemas/GCPUsageCostConfig' + type: object + GcpUcConfigResponse: + description: The definition of `GcpUcConfigResponse` object. + example: + data: + attributes: + account_id: 123456_A123BC_12AB34 + bucket_name: dd-cost-bucket + created_at: '2023-01-01T12:00:00.000000' + dataset: billing + error_messages: [] + export_prefix: datadog_cloud_cost_usage_export + export_project_name: dd-cloud-cost-report + months: 36 + project_id: my-project-123 + service_account: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + status: active + status_updated_at: '2023-01-01T12:00:00.000000' + updated_at: '2023-01-01T12:00:00.000000' + id: '123456789123' + type: gcp_uc_config + properties: + data: + $ref: '#/components/schemas/GcpUcConfigResponseData' + type: object + GCPUsageCostConfigPatchRequest: + description: Google Cloud Usage Cost config patch request. + properties: + data: + $ref: '#/components/schemas/GCPUsageCostConfigPatchData' + required: + - data + type: object + OCIConfigsResponse: + description: List of OCI configs. + example: + data: + - attributes: + account_id: ocid1.tenancy.oc1..example + created_at: '2026-01-01T12:00:00Z' + error_messages: [] + status: active + status_updated_at: '2026-01-01T12:00:00Z' + updated_at: '2026-01-01T12:00:00Z' + id: '1' + type: oci_config + properties: + data: + description: An OCI config. + items: + $ref: '#/components/schemas/OCIConfig' + type: array + required: + - data + type: object + RecommendationsFilterRequest: + description: Request body for filtering cost recommendations. + example: + filter: '@resource_table:aws_ec2_instance' + sort: + - expression: potential_daily_savings.amount + order: DESC + properties: + filter: + description: Filter expression applied to the recommendations. + type: string + sort: + description: Ordered list of sort clauses applied to the result set. + items: + $ref: '#/components/schemas/RecommendationsFilterRequestSortItems' + type: array + view: + description: Active view name (for example, `active`, `dismissed`, `open`, `in-progress`, or `completed`). + type: string + type: object + CostRecommendationArray: + description: A page of cost recommendations with pagination metadata. + properties: + data: + description: The list of cost recommendations on this page. + items: + $ref: '#/components/schemas/CostRecommendationData' + type: array + meta: + $ref: '#/components/schemas/RecommendationsPageMeta' + required: + - data + type: object + CostTagDescriptionsResponse: + description: List of Cloud Cost Management tag key descriptions for the organization, optionally filtered to a single cloud provider. + example: + data: + - attributes: + cloud: aws + created_at: '2026-01-01T12:00:00Z' + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: '2026-01-01T12:00:00Z' + id: account_id + type: cost_tag_description + properties: + data: + description: List of tag key descriptions. + items: + $ref: '#/components/schemas/CostTagDescription' + type: array + required: + - data + type: object + CostTagDescriptionResponse: + description: Single Cloud Cost Management tag key description returned by the get-by-key endpoint. + example: + data: + attributes: + cloud: aws + created_at: '2026-01-01T12:00:00Z' + description: AWS account that owns this cost. + source: human + tag_key: account_id + updated_at: '2026-01-01T12:00:00Z' + id: account_id + type: cost_tag_description + properties: + data: + $ref: '#/components/schemas/CostTagDescription' + required: + - data + type: object + CostTagDescriptionUpsertRequest: + description: Request body for creating or updating a Cloud Cost Management tag key description. + example: + data: + attributes: + cloud: aws + description: AWS account that owns this cost. + id: account_id + type: cost_tag_description + properties: + data: + $ref: '#/components/schemas/CostTagDescriptionUpsertRequestData' + required: + - data + type: object + GenerateCostTagDescriptionResponse: + description: Response wrapping an AI-generated Cloud Cost Management tag key description. + example: + data: + attributes: + description: AWS account that owns this cost. + id: account_id + type: cost_generated_tag_description + properties: + data: + $ref: '#/components/schemas/GeneratedCostTagDescription' + required: + - data + type: object + CostTagKeysResponse: + description: A list of Cloud Cost Management tag keys. + example: + data: + - attributes: + sources: + - focus + value: providername + id: providername + type: cost_tag_key + - attributes: + sources: [] + value: service + id: service + type: cost_tag_key + properties: + data: + description: The list of Cloud Cost Management tag keys. + items: + $ref: '#/components/schemas/CostTagKey' + type: array + required: + - data + type: object + CostTagKeyResponse: + description: A single Cloud Cost Management tag key. + example: + data: + attributes: + details: + description: The cloud provider name reported for the cost line item. + tag_values: + - aws + - gcp + - azure + sources: + - focus + value: providername + id: providername + type: cost_tag_key + properties: + data: + $ref: '#/components/schemas/CostTagKey' + required: + - data + type: object + CostTagMetadataDailyFilter: + description: Granularity for tag metadata results. `true` returns one row per day, `false` (or omitted) returns the monthly roll-up. + enum: + - 'true' + - 'false' + example: 'true' + type: string + x-enum-varnames: + - 'TRUE' + - 'FALSE' + CostTagKeyMetadataResponse: + description: List of Cloud Cost Management tag key metadata entries for the requested period. + example: + data: + - attributes: + cardinality_by_account: + '123456789012': 42 + cost_covered: 1234.56 + metric: aws.cost.net.amortized + row_count: 100 + tag_sources: + - aws-user-defined + top_values_by_account: + '123456789012': + - prod + - staging + id: env:aws.cost.net.amortized + type: cost_tag_key_metadata + properties: + data: + description: List of tag key metadata entries. + items: + $ref: '#/components/schemas/CostTagKeyMetadata' + type: array + required: + - data + type: object + CostCurrencyResponse: + description: The dominant Cloud Cost Management billing currency for the requested period. The `data` array contains at most one entry, and is empty when no currency data is available. + example: + data: + - id: USD + type: cost_currency + properties: + data: + description: The dominant billing currency. Empty when no data is available, or a single entry otherwise. + items: + $ref: '#/components/schemas/CostCurrency' + type: array + required: + - data + type: object + CostMetricsResponse: + description: List of available Cloud Cost Management metrics for the requested period. + example: + data: + - id: aws.cost.net.amortized + type: cost_metric + - id: gcp.cost.amortized + type: cost_metric + properties: + data: + description: List of available metrics. + items: + $ref: '#/components/schemas/CostMetric' + type: array + required: + - data + type: object + CostTagMetadataMonthsResponse: + description: List of months that have Cloud Cost Management tag metadata for the requested provider, ordered most-recent first and capped at 36 months. + example: + data: + - id: 2026-04 + type: cost_tag_metadata_month + - id: 2026-03 + type: cost_tag_metadata_month + properties: + data: + description: List of months that have tag metadata available. + items: + $ref: '#/components/schemas/CostTagMetadataMonth' + type: array + required: + - data + type: object + CostOrchestratorsResponse: + description: List of container orchestrators detected in Cloud Cost Management data for the requested period. + example: + data: + - id: ecs + type: cost_orchestrator + - id: kubernetes + type: cost_orchestrator + properties: + data: + description: List of detected container orchestrators. + items: + $ref: '#/components/schemas/CostOrchestrator' + type: array + required: + - data + type: object + CostTagKeySourcesResponse: + description: List of Cloud Cost Management tag keys with their origin sources for the requested period. + example: + data: + - attributes: + tag_key: env + tag_sources: + - aws-user-defined + - custom + id: env + type: cost_tag_key_source + - attributes: + tag_key: service + tag_sources: + - aws + id: service + type: cost_tag_key_source + properties: + data: + description: List of tag keys with their origin sources. + items: + $ref: '#/components/schemas/CostTagKeySource' + type: array + required: + - data + type: object + CostTagsResponse: + description: A list of Cloud Cost Management tags. + example: + data: + - attributes: + sources: + - focus + value: providername:aws + id: providername:aws + type: cost_tag + - attributes: + sources: + - focus + value: providername:gcp + id: providername:gcp + type: cost_tag + properties: + data: + description: The list of Cloud Cost Management tags. + items: + $ref: '#/components/schemas/CostTag' + type: array + required: + - data + type: object + ActiveBillingDimensionsResponse: + description: Active billing dimensions response. + properties: + data: + $ref: '#/components/schemas/ActiveBillingDimensionsBody' + type: object + SortDirection: + default: desc + description: The direction to sort by. + enum: + - desc + - asc + type: string + x-enum-varnames: + - DESC + - ASC + MonthlyCostAttributionResponse: + description: Response containing the monthly cost attribution by tag(s). + properties: + data: + description: Response containing cost attribution. + items: + $ref: '#/components/schemas/MonthlyCostAttributionBody' + type: array + meta: + $ref: '#/components/schemas/MonthlyCostAttributionMeta' + type: object + RulesetRespArray: + description: The definition of `RulesetRespArray` object. + example: + data: + - attributes: + created: null + enabled: true + last_modified_user_uuid: '' + modified: null + name: Production Cost Allocation Rules + position: 0 + rules: + - enabled: true + mapping: null + metadata: null + name: AWS Production Account Tagging + query: + addition: + key: environment + value: production + case_insensitivity: false + if_tag_exists: do_not_apply + query: billingcurrency:"USD" AND account_name:"prod-account" + reference_table: null + - enabled: true + mapping: + destination_key: team_owner + if_tag_exists: do_not_apply + source_keys: + - account_name + - service + metadata: null + name: Team Mapping Rule + query: null + reference_table: null + - enabled: true + mapping: null + metadata: null + name: New table rule with new UI + query: null + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + version: 2 + id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset + - attributes: + created: null + enabled: true + last_modified_user_uuid: '' + modified: null + name: Development Environment Rules + position: 0 + rules: + - enabled: true + mapping: null + metadata: null + name: Dev Account Cost Center + query: + addition: + key: cost_center + value: engineering + case_insensitivity: true + if_tag_exists: do_not_apply + query: account_name:"dev-*" + reference_table: null + version: 1 + id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset + properties: + data: + description: The `RulesetRespArray` `data`. + items: + $ref: '#/components/schemas/RulesetRespData' + type: array + required: + - data + type: object + CreateRulesetRequest: + description: The definition of `CreateRulesetRequest` object. + example: + data: + attributes: + enabled: true + rules: + - enabled: true + mapping: null + metadata: null + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: null + id: New Ruleset + type: create_ruleset + properties: + data: + $ref: '#/components/schemas/CreateRulesetRequestData' + type: object + RulesetResp: + description: The definition of `RulesetResp` object. + example: + data: + attributes: + created: null + enabled: true + last_modified_user_uuid: '' + modified: null + name: Example Ruleset + position: 0 + rules: + - enabled: false + mapping: null + metadata: null + name: RC test rule edited1 + query: + addition: + key: abc + value: ww + case_insensitivity: false + if_tag_exists: do_not_apply + query: billingcurrency:"USD" AND account_name:"SZA96462" AND billingcurrency:"USD" + reference_table: null + - enabled: true + mapping: + destination_key: h + if_tag_exists: do_not_apply + source_keys: + - accountname + - accountownerid + metadata: null + name: rule with empty source key + query: null + reference_table: null + - enabled: true + mapping: null + metadata: null + name: New table rule with new UI + query: null + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + version: 1 + id: '12345' + type: ruleset + properties: + data: + $ref: '#/components/schemas/RulesetRespData' + type: object + ReorderRulesetResourceArray: + description: The definition of `ReorderRulesetResourceArray` object. + example: + data: + - id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset + - id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset + - id: f1e2d3c4-b5a6-9780-1234-567890abcdef + type: ruleset + properties: + data: + description: The `ReorderRulesetResourceArray` `data`. + items: + $ref: '#/components/schemas/ReorderRulesetResourceData' + type: array + required: + - data + type: object + RulesetStatusRespArray: + description: Processing statuses for all tag pipeline rulesets in the specified organization. + example: + data: + - attributes: + processing_status: processing + id: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: ruleset_status + - attributes: + processing_status: done + id: a7b8c9d0-1234-5678-9abc-def012345678 + type: ruleset_status + properties: + data: + description: Processing status for a tag pipeline ruleset. + items: + $ref: '#/components/schemas/RulesetStatusRespData' + type: array + required: + - data + type: object + RulesValidateQueryRequest: + description: The definition of `RulesValidateQueryRequest` object. + example: + data: + attributes: + Query: example:query AND test:true + type: validate_query + properties: + data: + $ref: '#/components/schemas/RulesValidateQueryRequestData' + type: object + RulesValidateQueryResponse: + description: The definition of `RulesValidateQueryResponse` object. + example: + data: + attributes: + Canonical: canonical query representation + type: validate_response + properties: + data: + $ref: '#/components/schemas/RulesValidateQueryResponseData' + type: object + UpdateRulesetRequest: + description: The definition of `UpdateRulesetRequest` object. + example: + data: + attributes: + enabled: true + last_version: 1 + name: Updated Ruleset + rules: + - enabled: true + mapping: null + metadata: null + name: Add Cost Center Tag + query: + addition: + key: cost_center + value: engineering + case_insensitivity: false + if_tag_exists: do_not_apply + query: account_id:"123456789" AND service:"web-api" + reference_table: null + - enabled: true + mapping: + destination_key: team_owner + if_tag_exists: do_not_apply + source_keys: + - account_name + - account_id + metadata: null + name: Account Name Mapping + query: null + reference_table: null + - enabled: true + mapping: null + metadata: null + name: New table rule with new UI + query: null + reference_table: + case_insensitivity: true + field_pairs: + - input_column: status_type + output_key: status + - input_column: status_description + output_key: dess + if_tag_exists: append + source_keys: + - http_status + - status_description + table_name: http_status_codes + type: update_ruleset + properties: + data: + $ref: '#/components/schemas/UpdateRulesetRequestData' + type: object + AccountFilters: + description: The account filters for a cloud account. + properties: + attributes: + $ref: '#/components/schemas/AccountFiltersAttributes' + id: + description: The ID of the cloud account. + example: '123456789123' + type: string + type: + $ref: '#/components/schemas/AccountFiltersType' + required: + - attributes + - type + type: object + AccountFiltersPatchData: + description: Account filters patch data. + properties: + attributes: + $ref: '#/components/schemas/AccountFiltersPatchRequestAttributes' + type: + $ref: '#/components/schemas/AccountFiltersPatchRequestType' + required: + - attributes + - type + type: object + CostAnomaliesResponseData: + description: Resource wrapper for the list of cost anomalies and aggregated totals. + properties: + attributes: + $ref: '#/components/schemas/CostAnomaliesResponseDataAttributes' + id: + description: Static identifier of the cost anomalies collection resource. + example: anomalies + type: string + type: + $ref: '#/components/schemas/CostAnomaliesResponseDataType' + required: + - id + - type + - attributes + type: object + CostAnomalyResponseData: + description: Resource wrapper for a single cost anomaly. + properties: + attributes: + $ref: '#/components/schemas/CostAnomaly' + id: + description: The unique identifier of the anomaly. + example: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + type: string + type: + $ref: '#/components/schemas/CostAnomaliesResponseDataType' + required: + - id + - type + - attributes + type: object + ArbitraryRuleResponseData: + description: The definition of `ArbitraryRuleResponseData` object. + properties: + attributes: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributes' + id: + description: The `ArbitraryRuleResponseData` `id`. + type: string + type: + $ref: '#/components/schemas/ArbitraryRuleResponseDataType' + required: + - type + type: object + ArbitraryRuleResponseArrayMeta: + description: The `ArbitraryRuleResponseArray` `meta`. + properties: + total_count: + description: The `meta` `total_count`. + format: int64 + type: integer + type: object + ArbitraryCostUpsertRequestData: + description: The definition of `ArbitraryCostUpsertRequestData` object. + properties: + attributes: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributes' + id: + description: The `ArbitraryCostUpsertRequestData` `id`. + type: string + type: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataType' + required: + - type + type: object + ReorderRuleResourceData: + description: The definition of `ReorderRuleResourceData` object. + properties: + id: + description: The `ReorderRuleResourceData` `id`. + type: string + type: + $ref: '#/components/schemas/ReorderRuleResourceDataType' + required: + - type + type: object + ArbitraryRuleStatusResponseData: + description: Processing status for a custom allocation rule. + properties: + attributes: + $ref: '#/components/schemas/ArbitraryRuleStatusResponseDataAttributes' + id: + description: The unique identifier of the custom allocation rule. + example: '123' + type: string + type: + $ref: '#/components/schemas/ArbitraryRuleStatusResponseDataType' + required: + - id + - type + - attributes + type: object + AwsCURConfig: + description: AWS CUR config. + properties: + attributes: + $ref: '#/components/schemas/AwsCURConfigAttributes' + id: + description: The ID of the AWS CUR config. + type: string + type: + $ref: '#/components/schemas/AwsCURConfigType' + required: + - attributes + - type + type: object + AwsCURConfigPostData: + description: AWS CUR config Post data. + properties: + attributes: + $ref: '#/components/schemas/AwsCURConfigPostRequestAttributes' + type: + $ref: '#/components/schemas/AwsCURConfigPostRequestType' + required: + - type + type: object + AwsCurConfigResponseData: + description: The definition of `AwsCurConfigResponseData` object. + properties: + attributes: + $ref: '#/components/schemas/AwsCurConfigResponseDataAttributes' + id: + description: The `AwsCurConfigResponseData` `id`. + type: string + type: + $ref: '#/components/schemas/AwsCurConfigResponseDataType' + required: + - type + type: object + AwsCURConfigPatchData: + description: AWS CUR config Patch data. + properties: + attributes: + $ref: '#/components/schemas/AwsCURConfigPatchRequestAttributes' + type: + $ref: '#/components/schemas/AwsCURConfigPatchRequestType' + required: + - attributes + - type + type: object + AzureUCConfigPair: + description: Azure config pair. + properties: + attributes: + $ref: '#/components/schemas/AzureUCConfigPairAttributes' + id: + description: The ID of Cloud Cost Management account. + type: string + type: + $ref: '#/components/schemas/AzureUCConfigPairType' + required: + - attributes + - type + type: object + AzureUCConfigPostData: + description: Azure config Post data. + properties: + attributes: + $ref: '#/components/schemas/AzureUCConfigPostRequestAttributes' + type: + $ref: '#/components/schemas/AzureUCConfigPostRequestType' + required: + - type + type: object + UCConfigPairData: + description: The definition of `UCConfigPairData` object. + properties: + attributes: + $ref: '#/components/schemas/UCConfigPairDataAttributes' + id: + description: The `UCConfigPairData` `id`. + type: string + type: + $ref: '#/components/schemas/UCConfigPairDataType' + required: + - type + type: object + AzureUCConfigPatchData: + description: Azure config Patch data. + properties: + attributes: + $ref: '#/components/schemas/AzureUCConfigPatchRequestAttributes' + type: + $ref: '#/components/schemas/AzureUCConfigPatchRequestType' + required: + - type + type: object + BudgetWithEntriesData: + description: A budget and all its entries. + properties: + attributes: + $ref: '#/components/schemas/BudgetAttributes' + id: + description: The `BudgetWithEntriesData` `id`. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + type: + description: The type of the object, must be `budget`. + example: '' + type: string + type: object + ValidationError: + description: Represents a single validation error, including a human-readable title and metadata. + properties: + meta: + $ref: '#/components/schemas/ValidationErrorMeta' + title: + description: A short, human-readable summary of the error. + example: Field 'region' is required + type: string + required: + - title + - meta + type: object + CustomForecastUpsertRequestData: + description: Custom forecast resource wrapper in an upsert request. + properties: + attributes: + $ref: '#/components/schemas/CustomForecastUpsertRequestDataAttributes' + id: + description: Unused on upsert; the resource is keyed by `budget_uid`. Send an empty string. + example: '' + type: string + type: + $ref: '#/components/schemas/CustomForecastType' + required: + - type + - attributes + type: object + CustomForecastResponseData: + description: Custom forecast resource wrapper in a response. + properties: + attributes: + $ref: '#/components/schemas/CustomForecastResponseDataAttributes' + id: + description: The unique identifier of the custom forecast. + example: 11111111-1111-1111-1111-111111111111 + type: string + type: + $ref: '#/components/schemas/CustomForecastType' + required: + - id + - type + - attributes + type: object + BudgetValidationRequestData: + description: The data object for a budget validation request, containing the resource type, ID, and budget attributes to validate. + properties: + attributes: + $ref: '#/components/schemas/BudgetWithEntriesDataAttributes' + id: + description: The unique identifier of the budget to validate. + type: string + type: + $ref: '#/components/schemas/BudgetWithEntriesDataType' + required: + - type + type: object + BudgetValidationResponseData: + description: The data object for a budget validation response, containing the resource type, ID, and validation attributes. + properties: + attributes: + $ref: '#/components/schemas/BudgetValidationResponseDataAttributes' + id: + description: The unique identifier of the budget being validated. + type: string + type: + $ref: '#/components/schemas/BudgetValidationResponseDataType' + required: + - type + type: object + Budget: + description: A budget. + properties: + attributes: + $ref: '#/components/schemas/BudgetAttributes' + id: + description: The id of the budget. + type: string + type: + description: The type of the object, must be `budget`. + example: '' + type: string + required: + - type + type: object + CommitmentsProvider: + description: Cloud provider for commitment programs. + enum: + - aws + - azure + example: aws + type: string + x-enum-varnames: + - AWS + - AZURE + CommitmentsCommitmentType: + description: Type of commitment. ri for Reserved Instances, sp for Savings Plans. + enum: + - ri + - sp + example: ri + type: string + x-enum-varnames: + - RESERVED_INSTANCES + - SAVINGS_PLANS + CommitmentsListItems: + description: Array of commitment items. + example: + - commitment_id: ri-0123456789abcdef0 + instance_type: m5.xlarge + offering_class: standard + operating_system: Linux + purchase_option: All Upfront + region: us-east-1 + items: + $ref: '#/components/schemas/CommitmentsListItem' + type: array + CommitmentsListMeta: + description: Metadata for a commitments list response. + properties: + committed_spend_unit: + $ref: '#/components/schemas/CommitmentsUnit' + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + CommitmentsScalarColumns: + description: Array of scalar columns in the response. + items: + $ref: '#/components/schemas/CommitmentsScalarColumn' + type: array + CommitmentsTimeseriesMetric: + description: A timeseries metric containing timestamps, series values, and optional unit metadata. + properties: + series: + $ref: '#/components/schemas/CommitmentsTimeseriesSeries' + times: + $ref: '#/components/schemas/CommitmentsTimestamps' + unit: + $ref: '#/components/schemas/CommitmentsUnit' + required: + - series + - times + type: object + CommitmentsOnDemandHotspotsScalarMeta: + description: Metadata for the on-demand hot-spots scalar response. + properties: + on_demand_filters: + description: Active on-demand filters applied to the response. + example: region:us-east-1 + type: string + required: + - on_demand_filters + type: object + CommitmentsUtilizationScalarProductBreakdown: + description: Array of per-product utilization breakdown entries. + items: + $ref: '#/components/schemas/CommitmentsUtilizationScalarProductBreakdownEntry' + type: array + CommitmentsTimeseriesSeries: + additionalProperties: + $ref: '#/components/schemas/CommitmentsTimeseriesValues' + description: Timeseries data as a map of series names to their corresponding value arrays. + type: object + CommitmentsTimestamps: + description: Unix timestamps in seconds for the timeseries data points. + example: + - 1693526400 + - 1693612800 + items: + description: A Unix timestamp in seconds. + format: int64 + type: integer + type: array + CommitmentsUnit: + description: Unit metadata for a numeric metric. + properties: + family: + description: The unit family (for example, percentage or money). + example: percentage + type: string + id: + description: The unit identifier. + example: 17 + format: int64 + type: integer + name: + description: The unit name (for example, percent or dollar). + example: percent + type: string + plural: + description: The plural form of the unit name. + example: percent + type: string + scale_factor: + description: The scale factor for the unit. + example: 1 + format: double + type: number + short_name: + description: The abbreviated unit name (for example, % or $). + example: '%' + type: string + required: + - family + - id + - name + - plural + - scale_factor + - short_name + type: object + CustomCostsFileMetadataHighLevel: + description: JSON API format for a Custom Costs file. + properties: + attributes: + $ref: '#/components/schemas/CustomCostsFileMetadata' + id: + description: ID of the Custom Costs metadata. + type: string + type: + description: Type of the Custom Costs file metadata. + type: string + type: object + CustomCostListResponseMeta: + description: Meta for the response from the List Custom Costs endpoints. + properties: + count_by_status: + additionalProperties: + format: int64 + type: integer + description: Number of Custom Costs files per status. + type: object + providers: + description: List of available providers. + items: + description: A provider name. + type: string + type: array + total_filtered_count: + description: Number of Custom Costs files returned by the List Custom Costs endpoint + format: int64 + type: integer + version: + description: Version of Custom Costs file + type: string + type: object + CustomCostsFileLineItem: + description: Line item details from a Custom Costs file. + properties: + BilledCost: + description: Total cost in the cost file. + example: 100.5 + format: double + type: number + BillingCurrency: + description: Currency used in the Custom Costs file. + example: USD + type: string + ChargeDescription: + description: Description for the line item cost. + example: Monthly usage charge for my service + type: string + ChargePeriodEnd: + description: End date of the usage charge. + example: '2023-02-28' + pattern: ^\d{4}-\d{2}-\d{2}$ + type: string + ChargePeriodStart: + description: Start date of the usage charge. + example: '2023-02-01' + pattern: ^\d{4}-\d{2}-\d{2}$ + type: string + ProviderName: + description: Name of the provider for the line item. + type: string + Tags: + additionalProperties: + type: string + description: Additional tags for the line item. + type: object + type: object + CustomCostUploadResponseMeta: + description: Meta for the response from the Upload Custom Costs endpoints. + properties: + version: + description: Version of Custom Costs file + type: string + type: object + CustomCostsFileMetadataWithContentHighLevel: + description: JSON API format of for a Custom Costs file with content. + properties: + attributes: + $ref: '#/components/schemas/CustomCostsFileMetadataWithContent' + id: + description: ID of the Custom Costs metadata. + type: string + type: + description: Type of the Custom Costs file metadata. + type: string + type: object + CustomCostGetResponseMeta: + description: Meta for the response from the Get Custom Costs endpoints. + properties: + version: + description: Version of Custom Costs file + type: string + type: object + GCPUsageCostConfig: + description: Google Cloud Usage Cost config. + properties: + attributes: + $ref: '#/components/schemas/GCPUsageCostConfigAttributes' + id: + description: The ID of the Google Cloud Usage Cost config. + type: string + type: + $ref: '#/components/schemas/GCPUsageCostConfigType' + required: + - attributes + - type + type: object + GCPUsageCostConfigPostData: + description: Google Cloud Usage Cost config post data. + properties: + attributes: + $ref: '#/components/schemas/GCPUsageCostConfigPostRequestAttributes' + type: + $ref: '#/components/schemas/GCPUsageCostConfigPostRequestType' + required: + - type + type: object + GcpUcConfigResponseData: + description: The definition of `GcpUcConfigResponseData` object. + properties: + attributes: + $ref: '#/components/schemas/GcpUcConfigResponseDataAttributes' + id: + description: The `GcpUcConfigResponseData` `id`. + type: string + type: + $ref: '#/components/schemas/GcpUcConfigResponseDataType' + required: + - type + type: object + GCPUsageCostConfigPatchData: + description: Google Cloud Usage Cost config patch data. + properties: + attributes: + $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestAttributes' + type: + $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestType' + required: + - attributes + - type + type: object + OCIConfig: + description: OCI config. + properties: + attributes: + $ref: '#/components/schemas/OCIConfigAttributes' + id: + description: The ID of the OCI config. + example: '1' + type: string + type: + $ref: '#/components/schemas/OCIConfigType' + required: + - attributes + - id + - type + type: object + RecommendationsFilterRequestSortItems: + description: A single sort clause applied to the cost recommendations result set. + properties: + expression: + description: Field to sort by (for example, `potential_daily_savings.amount`). + type: string + order: + description: Sort direction, either `ASC` or `DESC`. + type: string + type: object + CostRecommendationData: + description: A single cost recommendation entry in JSON:API form. + properties: + attributes: + $ref: '#/components/schemas/CostRecommendationDataAttributes' + id: + description: Unique identifier for the recommendation. + type: string + type: + $ref: '#/components/schemas/CostRecommendationDataType' + required: + - type + type: object + RecommendationsPageMeta: + description: Top-level JSON:API meta object for paginated cost recommendation responses. + properties: + page: + $ref: '#/components/schemas/RecommendationsPageMetaPage' + type: object + CostTagDescription: + description: A Cloud Cost Management tag key description, either cross-cloud or scoped to a single cloud provider. + properties: + attributes: + $ref: '#/components/schemas/CostTagDescriptionAttributes' + id: + description: Stable identifier of the tag description. Equals the tag key when the description is the cross-cloud default; encodes both the cloud and the tag key when the description is cloud-specific. + example: account_id + type: string + type: + $ref: '#/components/schemas/CostTagDescriptionType' + required: + - attributes + - id + - type + type: object + CostTagDescriptionUpsertRequestData: + description: Resource envelope carrying the tag key description being upserted. The `id` is informational; the authoritative tag key is taken from the URL path. + properties: + attributes: + $ref: '#/components/schemas/CostTagDescriptionUpsertRequestDataAttributes' + id: + description: Identifier of the tag key the description applies to. Matches the `tag_key` path parameter. + example: account_id + type: string + type: + $ref: '#/components/schemas/CostTagDescriptionType' + required: + - attributes + - type + type: object + GeneratedCostTagDescription: + description: AI-generated Cloud Cost Management tag key description returned by the generate endpoint. The result is returned to the client but is not persisted by this endpoint. + properties: + attributes: + $ref: '#/components/schemas/GeneratedCostTagDescriptionAttributes' + id: + description: The tag key the AI description was generated for. + example: account_id + type: string + type: + $ref: '#/components/schemas/GeneratedCostTagDescriptionType' + required: + - attributes + - id + - type + type: object + CostTagKey: + description: A Cloud Cost Management tag key. + properties: + attributes: + $ref: '#/components/schemas/CostTagKeyAttributes' + id: + description: The tag key identifier. + example: providername + type: string + type: + $ref: '#/components/schemas/CostTagKeyType' + required: + - attributes + - id + - type + type: object + CostTagKeyMetadata: + description: A Cloud Cost Management tag key metadata entry, aggregating coverage and example values for a single tag key, metric, and period. + properties: + attributes: + $ref: '#/components/schemas/CostTagKeyMetadataAttributes' + id: + description: A composite identifier of the form `tag_key:metric` for monthly roll-ups, or `tag_key:metric:YYYY-MM-DD` when `filter[daily]=true`. + example: env:aws.cost.net.amortized + type: string + type: + $ref: '#/components/schemas/CostTagKeyMetadataType' + required: + - attributes + - id + - type + type: object + CostCurrency: + description: A Cloud Cost Management billing currency entry. + properties: + id: + description: The currency code (for example, `USD`). + example: USD + type: string + type: + $ref: '#/components/schemas/CostCurrencyType' + required: + - id + - type + type: object + CostMetric: + description: A Cloud Cost Management metric that has data for the requested period. + properties: + id: + description: The metric name, for example `aws.cost.net.amortized`. + example: aws.cost.net.amortized + type: string + type: + $ref: '#/components/schemas/CostMetricType' + required: + - id + - type + type: object + CostTagMetadataMonth: + description: A month that has Cloud Cost Management tag metadata available for a given provider. + properties: + id: + description: The month, in `YYYY-MM` format. + example: 2026-04 + type: string + type: + $ref: '#/components/schemas/CostTagMetadataMonthType' + required: + - id + - type + type: object + CostOrchestrator: + description: A container orchestrator detected in Cloud Cost Management data. + properties: + id: + description: The orchestrator name, for example `kubernetes` or `ecs`. + example: kubernetes + type: string + type: + $ref: '#/components/schemas/CostOrchestratorType' + required: + - id + - type + type: object + CostTagKeySource: + description: A Cloud Cost Management tag key paired with the sources that produced it. + properties: + attributes: + $ref: '#/components/schemas/CostTagKeySourceAttributes' + id: + description: The tag key identifier. Equal to the empty-tag sentinel `__empty_tag_key__` when the tag key is empty. + example: env + type: string + type: + $ref: '#/components/schemas/CostTagKeySourceType' + required: + - attributes + - id + - type + type: object + CostTag: + description: A Cloud Cost Management tag. + properties: + attributes: + $ref: '#/components/schemas/CostTagAttributes' + id: + description: The tag identifier, equal to its `key:value` representation. + example: providername:aws + type: string + type: + $ref: '#/components/schemas/CostTagType' + required: + - attributes + - id + - type + type: object + ActiveBillingDimensionsBody: + description: Active billing dimensions data. + properties: + attributes: + $ref: '#/components/schemas/ActiveBillingDimensionsAttributes' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/ActiveBillingDimensionsType' + type: object + MonthlyCostAttributionBody: + description: Cost data. + properties: + attributes: + $ref: '#/components/schemas/MonthlyCostAttributionAttributes' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/CostAttributionType' + type: object + MonthlyCostAttributionMeta: + description: The object containing document metadata. + properties: + aggregates: + $ref: '#/components/schemas/CostAttributionAggregates' + pagination: + $ref: '#/components/schemas/MonthlyCostAttributionPagination' + type: object + RulesetRespData: + description: The definition of `RulesetRespData` object. + properties: + attributes: + $ref: '#/components/schemas/RulesetRespDataAttributes' + id: + description: The `RulesetRespData` `id`. + type: string + type: + $ref: '#/components/schemas/RulesetRespDataType' + required: + - type + type: object + CreateRulesetRequestData: + description: The definition of `CreateRulesetRequestData` object. + properties: + attributes: + $ref: '#/components/schemas/CreateRulesetRequestDataAttributes' + id: + description: The `CreateRulesetRequestData` `id`. + type: string + type: + $ref: '#/components/schemas/CreateRulesetRequestDataType' + required: + - type + type: object + ReorderRulesetResourceData: + description: The definition of `ReorderRulesetResourceData` object. + properties: + id: + description: The `ReorderRulesetResourceData` `id`. + type: string + type: + $ref: '#/components/schemas/ReorderRulesetResourceDataType' + required: + - type + type: object + RulesetStatusRespData: + description: Processing status for a tag pipeline ruleset. + properties: + attributes: + $ref: '#/components/schemas/RulesetStatusRespDataAttributes' + id: + description: The unique identifier of the ruleset. + example: 55ef2385-9ae1-4410-90c4-5ac1b60fec10 + type: string + type: + $ref: '#/components/schemas/RulesetStatusRespDataType' + required: + - id + - type + - attributes + type: object + RulesValidateQueryRequestData: + description: The definition of `RulesValidateQueryRequestData` object. + properties: + attributes: + $ref: '#/components/schemas/RulesValidateQueryRequestDataAttributes' + id: + description: The `RulesValidateQueryRequestData` `id`. + type: string + type: + $ref: '#/components/schemas/RulesValidateQueryRequestDataType' + required: + - type + type: object + RulesValidateQueryResponseData: + description: The definition of `RulesValidateQueryResponseData` object. + properties: + attributes: + $ref: '#/components/schemas/RulesValidateQueryResponseDataAttributes' + id: + description: The `RulesValidateQueryResponseData` `id`. + type: string + type: + $ref: '#/components/schemas/RulesValidateQueryResponseDataType' + required: + - type + type: object + UpdateRulesetRequestData: + description: The definition of `UpdateRulesetRequestData` object. + properties: + attributes: + $ref: '#/components/schemas/UpdateRulesetRequestDataAttributes' + id: + description: The `UpdateRulesetRequestData` `id`. + type: string + type: + $ref: '#/components/schemas/UpdateRulesetRequestDataType' + required: + - type + type: object + AccountFiltersAttributes: + description: Attributes for the account filters of a cloud account. + properties: + account_filters: + $ref: '#/components/schemas/AccountFilteringConfig' + account_id: + description: The cloud account ID. + example: '123456789123' + type: string + cloud: + description: The cloud provider of the account, for example `aws`, `aws_cur2`, or `oci`. + example: aws_cur2 + type: string + type: object + AccountFiltersType: + default: account_filters + description: Type of account filters. + enum: + - account_filters + example: account_filters + type: string + x-enum-varnames: + - ACCOUNT_FILTERS + AccountFiltersPatchRequestAttributes: + description: Attributes for an account filters patch request. + properties: + account_filters: + $ref: '#/components/schemas/AccountFilteringConfig' + required: + - account_filters + type: object + AccountFiltersPatchRequestType: + default: account_filters_patch_request + description: Type of account filters patch request. + enum: + - account_filters_patch_request + example: account_filters_patch_request + type: string + x-enum-varnames: + - ACCOUNT_FILTERS_PATCH_REQUEST + CostAnomaliesResponseDataAttributes: + description: Cost anomaly results and aggregated totals for the queried window. + properties: + anomalies: + description: The list of cost anomalies that match the request. + items: + $ref: '#/components/schemas/CostAnomaly' + type: array + avg_daily_anomalous_cost: + description: Average daily anomalous cost change across the queried window. + example: 625.375 + format: double + type: number + total_actual_cost: + description: Total actual cost spent across the queried window for the matching providers. + example: 3001.24 + format: double + type: number + total_anomalous_cost: + description: Sum of the anomalous cost change across all returned anomalies. + example: 1250.75 + format: double + type: number + total_count: + description: Total number of anomalies that match the request. + example: 1 + format: int64 + type: integer + required: + - anomalies + - total_count + - total_anomalous_cost + - total_actual_cost + - avg_daily_anomalous_cost + type: object + CostAnomaliesResponseDataType: + default: anomalies + description: Type of the cost anomalies collection resource. Must be `anomalies`. + enum: + - anomalies + example: anomalies + type: string + x-enum-varnames: + - ANOMALIES + CostAnomaly: + description: A single detected Cloud Cost Management anomaly. + properties: + actual_cost: + description: Actual cost incurred during the anomaly window. + example: 3001.24 + format: double + type: number + anomalous_cost_change: + description: Anomalous cost change relative to the expected baseline. + example: 1250.75 + format: double + type: number + anomaly_end: + description: Anomaly end timestamp in Unix milliseconds. + example: 1730429150000 + format: int64 + type: integer + anomaly_start: + description: Anomaly start timestamp in Unix milliseconds. + example: 1730259950000 + format: int64 + type: integer + correlated_tags: + $ref: '#/components/schemas/CostAnomalyCorrelatedTags' + dimensions: + $ref: '#/components/schemas/CostAnomalyDimensions' + dismissal: + $ref: '#/components/schemas/CostAnomalyDismissal' + max_cost: + description: Maximum cost observed during the anomaly window. + example: 5000.5 + format: double + type: number + provider: + description: Cloud or SaaS provider associated with the anomaly (for example `aws`, `gcp`, `azure`). + example: aws + type: string + query: + description: The metrics query that detected the anomaly. + example: sum:aws.cost.net.amortized{aws_cost_type IN (Usage,DiscountedUsage,SavingsPlanCoveredUsage) AND aws_product NOT IN (supportenterprise) AND service:"ec2"}.rollup(sum, daily) + type: string + uuid: + description: The unique identifier of the anomaly. + example: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09 + type: string + required: + - uuid + - anomaly_start + - anomaly_end + - query + - dimensions + - correlated_tags + - anomalous_cost_change + - actual_cost + - max_cost + - provider + type: object + ArbitraryRuleResponseDataAttributes: + description: The definition of `ArbitraryRuleResponseDataAttributes` object. + properties: + costs_to_allocate: + description: The `attributes` `costs_to_allocate`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesCostsToAllocateItems' + type: array + created: + description: The `attributes` `created`. + example: '' + format: date-time + type: string + enabled: + description: The `attributes` `enabled`. + example: false + type: boolean + last_modified_user_uuid: + description: The `attributes` `last_modified_user_uuid`. + example: '' + type: string + order_id: + description: The `attributes` `order_id`. + example: 0 + format: int64 + type: integer + processing_status: + description: The `attributes` `processing_status`. + example: '' + type: string + provider: + description: The `attributes` `provider`. + example: + - '' + items: + description: A cloud provider name. + type: string + type: array + rejected: + description: The `attributes` `rejected`. + type: boolean + rule_name: + description: The `attributes` `rule_name`. + example: '' + type: string + strategy: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesStrategy' + type: + description: The `attributes` `type`. + example: '' + type: string + updated: + description: The `attributes` `updated`. + example: '' + format: date-time + type: string + version: + description: The `attributes` `version`. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + required: + - costs_to_allocate + - created + - enabled + - last_modified_user_uuid + - order_id + - provider + - rule_name + - strategy + - type + - updated + - version + type: object + ArbitraryRuleResponseDataType: + default: arbitrary_rule + description: Arbitrary rule resource type. + enum: + - arbitrary_rule + example: arbitrary_rule + type: string + x-enum-varnames: + - ARBITRARY_RULE + ArbitraryCostUpsertRequestDataAttributes: + description: The definition of `ArbitraryCostUpsertRequestDataAttributes` object. + properties: + costs_to_allocate: + description: The `attributes` `costs_to_allocate`. + items: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesCostsToAllocateItems' + type: array + enabled: + description: The `attributes` `enabled`. + type: boolean + order_id: + description: The `attributes` `order_id`. + format: int64 + type: integer + provider: + description: The `attributes` `provider`. + example: + - '' + items: + description: A cloud provider name. + type: string + type: array + rejected: + description: The `attributes` `rejected`. + type: boolean + rule_name: + description: The `attributes` `rule_name`. + example: '' + type: string + strategy: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategy' + type: + description: The `attributes` `type`. + example: '' + type: string + required: + - costs_to_allocate + - provider + - rule_name + - strategy + - type + type: object + ArbitraryCostUpsertRequestDataType: + default: upsert_arbitrary_rule + description: Upsert arbitrary rule resource type. + enum: + - upsert_arbitrary_rule + example: upsert_arbitrary_rule + type: string + x-enum-varnames: + - UPSERT_ARBITRARY_RULE + ReorderRuleResourceDataType: + default: arbitrary_rule + description: Arbitrary rule resource type. + enum: + - arbitrary_rule + example: arbitrary_rule + type: string + x-enum-varnames: + - ARBITRARY_RULE + ArbitraryRuleStatusResponseDataAttributes: + description: Processing status for a custom allocation rule. + properties: + processing_status: + description: The processing status of the custom allocation rule. + example: processing + type: string + required: + - processing_status + type: object + ArbitraryRuleStatusResponseDataType: + default: arbitrary_rule_status + description: Custom allocation rule status resource type. + enum: + - arbitrary_rule_status + example: arbitrary_rule_status + type: string + x-enum-varnames: + - ARBITRARY_RULE_STATUS + AwsCURConfigAttributes: + description: Attributes for An AWS CUR config. + properties: + account_filters: + $ref: '#/components/schemas/AccountFilteringConfig' + account_id: + description: The AWS account ID. + example: '123456789123' + type: string + bucket_name: + description: The AWS bucket name used to store the Cost and Usage Report. + example: dd-cost-bucket + type: string + bucket_region: + description: The region the bucket is located in. + example: us-east-1 + type: string + created_at: + description: The timestamp when the AWS CUR config was created. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + error_messages: + description: The error messages for the AWS CUR config. + items: + description: An error message string. + type: string + nullable: true + type: array + months: + deprecated: true + description: The number of months the report has been backfilled. + format: int32 + maximum: 36 + type: integer + report_name: + description: The name of the Cost and Usage Report. + example: dd-report-name + type: string + report_prefix: + description: The report prefix used for the Cost and Usage Report. + example: dd-report-prefix + type: string + status: + description: The status of the AWS CUR. + example: active + type: string + status_updated_at: + description: The timestamp when the AWS CUR config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + updated_at: + description: The timestamp when the AWS CUR config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + required: + - account_id + - bucket_name + - bucket_region + - report_name + - report_prefix + - status + type: object + AwsCURConfigType: + default: aws_cur_config + description: Type of AWS CUR config. + enum: + - aws_cur_config + example: aws_cur_config + type: string + x-enum-varnames: + - AWS_CUR_CONFIG + AwsCURConfigPostRequestAttributes: + description: Attributes for AWS CUR config Post Request. + properties: + account_filters: + $ref: '#/components/schemas/AccountFilteringConfig' + account_id: + description: The AWS account ID. + example: '123456789123' + type: string + bucket_name: + description: The AWS bucket name used to store the Cost and Usage Report. + example: dd-cost-bucket + type: string + bucket_region: + description: The region the bucket is located in. + example: us-east-1 + type: string + months: + description: The month of the report. + format: int32 + maximum: 36 + type: integer + report_name: + description: The name of the Cost and Usage Report. + example: dd-report-name + type: string + report_prefix: + description: The report prefix used for the Cost and Usage Report. + example: dd-report-prefix + type: string + required: + - account_id + - bucket_name + - report_name + - report_prefix + type: object + AwsCURConfigPostRequestType: + default: aws_cur_config_post_request + description: Type of AWS CUR config Post Request. + enum: + - aws_cur_config_post_request + example: aws_cur_config_post_request + type: string + x-enum-varnames: + - AWS_CUR_CONFIG_POST_REQUEST + AwsCurConfigResponseDataAttributes: + description: The definition of `AwsCurConfigResponseDataAttributes` object. + properties: + account_filters: + $ref: '#/components/schemas/AwsCurConfigResponseDataAttributesAccountFilters' + account_id: + description: The `attributes` `account_id`. + type: string + bucket_name: + description: The `attributes` `bucket_name`. + type: string + bucket_region: + description: The `attributes` `bucket_region`. + type: string + created_at: + description: The `attributes` `created_at`. + type: string + error_messages: + description: The `attributes` `error_messages`. + items: + description: An error message string. + type: string + nullable: true + type: array + months: + description: The `attributes` `months`. + format: int64 + type: integer + report_name: + description: The `attributes` `report_name`. + type: string + report_prefix: + description: The `attributes` `report_prefix`. + type: string + status: + description: The `attributes` `status`. + type: string + status_updated_at: + description: The `attributes` `status_updated_at`. + type: string + updated_at: + description: The `attributes` `updated_at`. + type: string + type: object + AwsCurConfigResponseDataType: + default: aws_cur_config + description: AWS CUR config resource type. + enum: + - aws_cur_config + example: aws_cur_config + type: string + x-enum-varnames: + - AWS_CUR_CONFIG + AwsCURConfigPatchRequestAttributes: + description: Attributes for AWS CUR config Patch Request. + properties: + account_filters: + $ref: '#/components/schemas/AccountFilteringConfig' + is_enabled: + description: Whether or not the Cloud Cost Management account is enabled. + example: true + type: boolean + type: object + AwsCURConfigPatchRequestType: + default: aws_cur_config_patch_request + description: Type of AWS CUR config Patch Request. + enum: + - aws_cur_config_patch_request + example: aws_cur_config_patch_request + type: string + x-enum-varnames: + - AWS_CUR_CONFIG_PATCH_REQUEST + AzureUCConfigPairAttributes: + description: Attributes for Azure config pair. + properties: + configs: + description: An Azure config. + items: + $ref: '#/components/schemas/AzureUCConfig' + type: array + id: + description: The ID of the Azure config pair. + type: string + required: + - configs + type: object + AzureUCConfigPairType: + default: azure_uc_configs + description: Type of Azure config pair. + enum: + - azure_uc_configs + example: azure_uc_configs + type: string + x-enum-varnames: + - AZURE_UC_CONFIGS + AzureUCConfigPostRequestAttributes: + description: Attributes for Azure config Post Request. + properties: + account_id: + description: The tenant ID of the Azure account. + example: 1234abcd-1234-abcd-1234-1234abcd1234 + type: string + actual_bill_config: + $ref: '#/components/schemas/BillConfig' + amortized_bill_config: + $ref: '#/components/schemas/BillConfig' + client_id: + description: The client ID of the Azure account. + example: 1234abcd-1234-abcd-1234-1234abcd1234 + type: string + scope: + description: The scope of your observed subscription. + example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + type: string + required: + - account_id + - actual_bill_config + - amortized_bill_config + - client_id + - scope + type: object + AzureUCConfigPostRequestType: + default: azure_uc_config_post_request + description: Type of Azure config Post Request. + enum: + - azure_uc_config_post_request + example: azure_uc_config_post_request + type: string + x-enum-varnames: + - AZURE_UC_CONFIG_POST_REQUEST + UCConfigPairDataAttributes: + description: The definition of `UCConfigPairDataAttributes` object. + properties: + configs: + description: The `attributes` `configs`. + items: + $ref: '#/components/schemas/UCConfigPairDataAttributesConfigsItems' + type: array + type: object + UCConfigPairDataType: + default: azure_uc_configs + description: Azure UC configs resource type. + enum: + - azure_uc_configs + example: azure_uc_configs + type: string + x-enum-varnames: + - AZURE_UC_CONFIGS + AzureUCConfigPatchRequestAttributes: + description: Attributes for Azure config Patch Request. + properties: + is_enabled: + description: Whether or not the Cloud Cost Management account is enabled. + example: true + type: boolean + required: + - is_enabled + type: object + AzureUCConfigPatchRequestType: + default: azure_uc_config_patch_request + description: Type of Azure config Patch Request. + enum: + - azure_uc_config_patch_request + example: azure_uc_config_patch_request + type: string + x-enum-varnames: + - AZURE_UC_CONFIG_PATCH_REQUEST + BudgetAttributes: + description: The attributes of a budget. + properties: + costs: + $ref: '#/components/schemas/BudgetAttributesCosts' + description: Aggregated cost data for the budget. Present only when `actual=true` or `forecast=true` is requested. + costs_period_end: + description: The end of the period used to compute cost data, in milliseconds since epoch. + format: int64 + type: integer + costs_period_start: + description: The start of the period used to compute cost data, in milliseconds since epoch. + format: int64 + type: integer + costs_unit: + $ref: '#/components/schemas/BudgetAttributesCostsUnit' + description: The unit used for all cost values in the response. + created_at: + description: The timestamp when the budget was created. + example: 1738258683590 + format: int64 + type: integer + created_by: + description: The id of the user that created the budget. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + end_month: + description: The month when the budget ends. + example: 202502 + format: int64 + type: integer + entries: + description: The list of monthly budget entries. + items: + $ref: '#/components/schemas/BudgetWithEntriesDataAttributesEntriesItems' + type: array + metrics_query: + description: The cost query used to track against the budget. + example: aws.cost.amortized{service:ec2} by {service} + type: string + name: + description: The name of the budget. + example: my budget + type: string + org_id: + description: The id of the org the budget belongs to. + example: 123 + format: int64 + type: integer + start_month: + description: The month when the budget starts. + example: 202501 + format: int64 + type: integer + total_amount: + description: The sum of all budget entries' amounts. + example: 1000 + format: double + type: number + updated_at: + description: The timestamp when the budget was last updated. + example: 1738258683590 + format: int64 + type: integer + updated_by: + description: The id of the user that created the budget. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + type: object + ValidationErrorMeta: + description: Describes additional metadata for validation errors, including field names and error messages. + properties: + field: + description: The field name that caused the error. + example: region + type: string + id: + description: The ID of the component in which the error occurred. + example: datadog-agent-source + type: string + message: + description: The detailed error message. + example: Field 'region' is required + type: string + required: + - message + type: object + CustomForecastUpsertRequestDataAttributes: + description: Attributes of a custom forecast upsert request. + properties: + budget_uid: + description: The UUID of the budget that this custom forecast belongs to. + example: 00000000-0000-0000-0000-000000000001 + type: string + entries: + description: |- + Monthly custom forecast entries. An empty list deletes any existing + custom forecast for the budget. + items: + $ref: '#/components/schemas/CustomForecastEntry' + type: array + required: + - budget_uid + - entries + type: object + CustomForecastType: + default: custom_forecast + description: The type of the custom forecast resource. Must be `custom_forecast`. + enum: + - custom_forecast + example: custom_forecast + type: string + x-enum-varnames: + - CUSTOM_FORECAST + CustomForecastResponseDataAttributes: + description: Attributes of a custom forecast. + properties: + budget_uid: + description: The UUID of the budget that this custom forecast belongs to. + example: 00000000-0000-0000-0000-000000000001 + type: string + created_at: + description: Timestamp the custom forecast was created, in Unix milliseconds. + example: 1738258683590 + format: int64 + type: integer + created_by: + description: The id of the user that created the custom forecast. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + entries: + description: Monthly custom forecast entries. + items: + $ref: '#/components/schemas/CustomForecastEntry' + type: array + updated_at: + description: Timestamp the custom forecast was last updated, in Unix milliseconds. + example: 1738258683590 + format: int64 + type: integer + updated_by: + description: The id of the user that last updated the custom forecast. + example: 00000000-0a0a-0a0a-aaa0-00000000000a + type: string + required: + - budget_uid + - created_at + - updated_at + - created_by + - updated_by + - entries + type: object + BudgetWithEntriesDataAttributes: + description: The attributes of a budget including all its monthly entries. + properties: + created_at: + description: The timestamp when the budget was created. + format: int64 + type: integer + created_by: + description: The ID of the user that created the budget. + type: string + end_month: + description: The month when the budget ends, in YYYYMM format. + format: int64 + type: integer + entries: + description: The list of monthly budget entries. + items: + $ref: '#/components/schemas/BudgetWithEntriesDataAttributesEntriesItems' + type: array + metrics_query: + description: The cost query used to track spending against the budget. + type: string + name: + description: The name of the budget. + type: string + org_id: + description: The ID of the organization the budget belongs to. + format: int64 + type: integer + start_month: + description: The month when the budget starts, in YYYYMM format. + format: int64 + type: integer + total_amount: + description: The total budget amount across all entries. + format: double + type: number + updated_at: + description: The timestamp when the budget was last updated. + format: int64 + type: integer + updated_by: + description: The ID of the user that last updated the budget. + type: string + type: object + BudgetWithEntriesDataType: + default: budget + description: Budget resource type. + enum: + - budget + example: budget + type: string + x-enum-varnames: + - BUDGET + BudgetValidationResponseDataAttributes: + description: The attributes of a budget validation response, including any validation errors and the validity status. + properties: + errors: + description: A list of validation error messages for the budget. + items: + description: A validation error message. + type: string + type: array + valid: + description: Whether the budget configuration is valid. + type: boolean + type: object + BudgetValidationResponseDataType: + default: budget_validation + description: Budget validation resource type. + enum: + - budget_validation + example: budget_validation + type: string + x-enum-varnames: + - BUDGET_VALIDATION + CommitmentsListItem: + description: A commitment item, which varies based on the provider, product, and commitment type. + properties: + availability_zone: + description: The availability zone of the reservation. + example: us-east-1a + type: string + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 + type: string + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' + type: string + instance_type: + description: The EC2 instance type. + example: m5.xlarge + type: string + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 + format: double + type: number + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + offering_class: + description: The offering class of the Reserved Instance. + example: standard + type: string + operating_system: + description: The operating system of the Reserved Instance. + example: Linux + type: string + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront + type: string + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 + type: string + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + database_engine: + description: The database engine of the Reserved Instance. + example: MySQL + type: string + is_multi_az: + description: Whether the Reserved Instance is Multi-AZ. + example: false + type: boolean + cache_engine: + description: The cache engine type of the Reserved Instance. + example: Redis + type: string + committed_spend_per_hour: + description: The hourly committed spend for the Savings Plan. + example: 1.5 + format: double + type: number + savings_plan_type: + description: The Savings Plan type. + example: ComputeSavingsPlans + type: string + benefit_name: + description: The display name of the Azure reservation. + example: my-vm-reservation + type: string + meter_sub_category: + description: The Azure meter sub-category for the reservation. + example: D4s v3 + type: string + status: + $ref: '#/components/schemas/CommitmentsAzureVMRIStatus' required: - - data + - commitment_id + - instance_type + - offering_class + - operating_system + - purchase_option + - region + - database_engine + - cache_engine + - savings_plan_type + - benefit_name + - meter_sub_category + - status + type: object + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + CommitmentsScalarColumn: + description: A column in a scalar response. When type is "group", values contains arrays of strings. When type is "number", values contains numeric values. + properties: + meta: + $ref: '#/components/schemas/CommitmentsScalarColumnMeta' + name: + description: The column name. + example: utilization + type: string + type: + $ref: '#/components/schemas/CommitmentsScalarColumnType' + values: + $ref: '#/components/schemas/CommitmentsScalarColumnValueItems' + required: + - name + - type + - values + type: object + CommitmentsUtilizationScalarProductBreakdownEntry: + description: Per-product utilization data in a scalar utilization response. + properties: + product: + description: The cloud product name. + example: ec2 + type: string + utilization: + description: The utilization percentage for the product. + example: 0.85 + format: double + type: number + required: + - product + - utilization + type: object + CommitmentsTimeseriesValues: + description: A series of numeric values for a timeseries metric. + items: + description: A single numeric value in the timeseries. + format: double + type: number + type: array + CustomCostsFileMetadata: + description: Schema of a Custom Costs metadata. + properties: + billed_cost: + description: Total cost in the cost file. + example: 100.5 + format: double + type: number + billing_currency: + description: Currency used in the Custom Costs file. + example: USD + type: string + charge_period: + $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' + name: + description: Name of the Custom Costs file. + example: my_file.json + type: string + provider_names: + description: Providers contained in the Custom Costs file. + items: + description: Name of the provider. + example: my_provider + type: string + type: array + status: + description: Status of the Custom Costs file. + example: active + type: string + uploaded_at: + description: Timestamp, in millisecond, of the upload time of the Custom Costs file. + example: 1704067200000 + format: double + type: number + uploaded_by: + $ref: '#/components/schemas/CustomCostsUser' + type: object + CustomCostsFileMetadataWithContent: + description: Schema of a cost file's metadata. + properties: + billed_cost: + description: Total cost in the cost file. + example: 100.5 + format: double + type: number + billing_currency: + description: Currency used in the Custom Costs file. + example: USD + type: string + charge_period: + $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' + content: + description: Detail of the line items from the Custom Costs file. + items: + $ref: '#/components/schemas/CustomCostsFileLineItem' + type: array + name: + description: Name of the Custom Costs file. + example: my_file.json + type: string + provider_names: + description: Providers contained in the Custom Costs file. + items: + description: Name of a provider. + example: my_provider + type: string + type: array + status: + description: Status of the Custom Costs file. + example: active + type: string + uploaded_at: + description: Timestamp in millisecond of the upload time of the Custom Costs file. + example: 1704067200000 + format: double + type: number + uploaded_by: + $ref: '#/components/schemas/CustomCostsUser' + type: object + GCPUsageCostConfigAttributes: + description: Attributes for a Google Cloud Usage Cost config. + properties: + account_id: + description: The Google Cloud account ID. + example: 123456_A123BC_12AB34 + type: string + bucket_name: + description: The Google Cloud bucket name used to store the Usage Cost export. + example: dd-cost-bucket + type: string + created_at: + description: The timestamp when the Google Cloud Usage Cost config was created. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + dataset: + description: The export dataset name used for the Google Cloud Usage Cost Report. + example: billing + type: string + error_messages: + description: The error messages for the Google Cloud Usage Cost config. + items: + description: An error message string. + type: string + nullable: true + type: array + export_prefix: + description: The export prefix used for the Google Cloud Usage Cost Report. + example: datadog_cloud_cost_usage_export + type: string + export_project_name: + description: The name of the Google Cloud Usage Cost Report. + example: dd-cloud-cost-report + type: string + months: + deprecated: true + description: The number of months the report has been backfilled. + format: int32 + maximum: 36 + type: integer + project_id: + description: The `project_id` of the Google Cloud Usage Cost report. + example: my-project-123 + type: string + service_account: + description: The unique Google Cloud service account email. + example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + type: string + status: + description: The status of the Google Cloud Usage Cost config. + example: active + type: string + status_updated_at: + description: The timestamp when the Google Cloud Usage Cost config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + updated_at: + description: The timestamp when the Google Cloud Usage Cost config status was updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + required: + - account_id + - bucket_name + - dataset + - export_prefix + - export_project_name + - service_account + - status + type: object + GCPUsageCostConfigType: + default: gcp_uc_config + description: Type of Google Cloud Usage Cost config. + enum: + - gcp_uc_config + example: gcp_uc_config + type: string + x-enum-varnames: + - GCP_UC_CONFIG + GCPUsageCostConfigPostRequestAttributes: + description: Attributes for Google Cloud Usage Cost config post request. + properties: + billing_account_id: + description: The Google Cloud account ID. + example: 123456_A123BC_12AB34 + type: string + bucket_name: + description: The Google Cloud bucket name used to store the Usage Cost export. + example: dd-cost-bucket + type: string + export_dataset_name: + description: The export dataset name used for the Google Cloud Usage Cost report. + example: billing + type: string + export_prefix: + description: The export prefix used for the Google Cloud Usage Cost report. + example: datadog_cloud_cost_usage_export + type: string + export_project_name: + description: The name of the Google Cloud Usage Cost report. + example: dd-cloud-cost-report + type: string + service_account: + description: The unique Google Cloud service account email. + example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + type: string + required: + - billing_account_id + - bucket_name + - export_project_name + - export_dataset_name + - service_account + type: object + GCPUsageCostConfigPostRequestType: + default: gcp_uc_config_post_request + description: Type of Google Cloud Usage Cost config post request. + enum: + - gcp_uc_config_post_request + example: gcp_uc_config_post_request + type: string + x-enum-varnames: + - GCP_USAGE_COST_CONFIG_POST_REQUEST + GcpUcConfigResponseDataAttributes: + description: The definition of `GcpUcConfigResponseDataAttributes` object. + properties: + account_id: + description: The `attributes` `account_id`. + type: string + bucket_name: + description: The `attributes` `bucket_name`. + type: string + created_at: + description: The `attributes` `created_at`. + type: string + dataset: + description: The `attributes` `dataset`. + type: string + error_messages: + description: The `attributes` `error_messages`. + items: + description: An error message string. + type: string + nullable: true + type: array + export_prefix: + description: The `attributes` `export_prefix`. + type: string + export_project_name: + description: The `attributes` `export_project_name`. + type: string + months: + description: The `attributes` `months`. + format: int64 + type: integer + project_id: + description: The `attributes` `project_id`. + type: string + service_account: + description: The `attributes` `service_account`. + type: string + status: + description: The `attributes` `status`. + type: string + status_updated_at: + description: The `attributes` `status_updated_at`. + type: string + updated_at: + description: The `attributes` `updated_at`. + type: string type: object - AwsCURConfigResponse: - description: Response of AWS CUR config. + GcpUcConfigResponseDataType: + default: gcp_uc_config + description: Google Cloud Usage Cost config resource type. + enum: + - gcp_uc_config + example: gcp_uc_config + type: string + x-enum-varnames: + - GCP_UC_CONFIG + GCPUsageCostConfigPatchRequestAttributes: + description: Attributes for Google Cloud Usage Cost config patch request. properties: - data: - $ref: '#/components/schemas/AwsCURConfig' + is_enabled: + description: Whether or not the Cloud Cost Management account is enabled. + example: true + type: boolean + required: + - is_enabled type: object - AwsCURConfigPatchRequest: - description: AWS CUR config Patch Request. + GCPUsageCostConfigPatchRequestType: + default: gcp_uc_config_patch_request + description: Type of Google Cloud Usage Cost config patch request. + enum: + - gcp_uc_config_patch_request + example: gcp_uc_config_patch_request + type: string + x-enum-varnames: + - GCP_USAGE_COST_CONFIG_PATCH_REQUEST + OCIConfigAttributes: + description: Attributes for an OCI config. properties: - data: - $ref: '#/components/schemas/AwsCURConfigPatchData' + account_id: + description: The OCID of the OCI tenancy. + example: ocid1.tenancy.oc1..example + type: string + created_at: + description: The timestamp when the OCI config was created. + example: '2026-01-01T12:00:00Z' + type: string + error_messages: + description: The error messages for the OCI config. + items: + description: An error message string. + type: string + nullable: true + type: array + status: + description: The status of the OCI config. + example: active + type: string + status_updated_at: + description: The timestamp when the OCI config status was last updated. + example: '2026-01-01T12:00:00Z' + type: string + updated_at: + description: The timestamp when the OCI config was last updated. + example: '2026-01-01T12:00:00Z' + type: string required: - - data + - account_id + - created_at + - status + - status_updated_at + - updated_at type: object - AzureUCConfigsResponse: - description: List of Azure accounts with configs. + OCIConfigType: + default: oci_config + description: Type of OCI config. + enum: + - oci_config + example: oci_config + type: string + x-enum-varnames: + - OCI_CONFIG + CostRecommendationDataAttributes: + description: Attributes describing a single cost recommendation. properties: - data: - description: An Azure config pair. + dd_resource_key: + description: Datadog resource key identifying the recommended resource. + type: string + potential_daily_savings: + $ref: '#/components/schemas/CostRecommendationDataAttributesPotentialDailySavings' + recommendation_type: + description: The kind of recommendation (for example, `terminate` or `rightsize`). + type: string + resource_id: + description: Cloud provider identifier of the resource. + type: string + resource_type: + description: Resource type (for example, `aws_ec2_instance`). + type: string + tags: + description: Tags attached to the recommended resource. items: - $ref: '#/components/schemas/AzureUCConfigPair' + description: A single resource tag. + type: string type: array type: object - AzureUCConfigPostRequest: - description: Azure config Post Request. + CostRecommendationDataType: + default: recommendation + description: Recommendation resource type. + enum: + - recommendation + example: recommendation + type: string + x-enum-varnames: + - RECOMMENDATION + RecommendationsPageMetaPage: + description: Pagination metadata for a page of cost recommendations. properties: - data: - $ref: '#/components/schemas/AzureUCConfigPostData' - required: - - data + filter: + description: The filter expression that was applied to produce this page. + type: string + next_page_token: + description: Opaque token used to fetch the next page; absent on the last page. + type: string + page_size: + description: Number of items returned in this page (1–10000). + format: int32 + maximum: 10000 + minimum: 1 + type: integer + page_token: + description: Pagination token echoed back from the request. + type: string type: object - AzureUCConfigPairsResponse: - description: Response of Azure config pair. + CostTagDescriptionAttributes: + description: Human-readable description and metadata attached to a Cloud Cost Management tag key, optionally scoped to a single cloud provider. properties: - data: - $ref: '#/components/schemas/AzureUCConfigPair' + cloud: + description: Cloud provider this description applies to (for example, `aws`). Empty when the description is the cross-cloud default for the tag key. + example: aws + type: string + created_at: + description: Timestamp when the description was created, in RFC 3339 format. + example: '2026-01-01T12:00:00Z' + type: string + description: + description: The human-readable description for the tag key. + example: AWS account that owns this cost. + type: string + source: + $ref: '#/components/schemas/CostTagDescriptionSource' + tag_key: + description: The tag key this description applies to. + example: account_id + type: string + updated_at: + description: Timestamp when the description was last updated, in RFC 3339 format. + example: '2026-01-01T12:00:00Z' + type: string + required: + - cloud + - created_at + - description + - source + - tag_key + - updated_at type: object - AzureUCConfigPatchRequest: - description: Azure config Patch Request. + CostTagDescriptionType: + default: cost_tag_description + description: Type of the Cloud Cost Management tag description resource. + enum: + - cost_tag_description + example: cost_tag_description + type: string + x-enum-varnames: + - COST_TAG_DESCRIPTION + CostTagDescriptionUpsertRequestDataAttributes: + description: Mutable attributes set when creating or updating a Cloud Cost Management tag key description. properties: - data: - $ref: '#/components/schemas/AzureUCConfigPatchData' + cloud: + description: Cloud provider this description applies to (for example, `aws`). Omit to set the cross-cloud default for the tag key. + example: aws + type: string + description: + description: The human-readable description for the tag key. + example: AWS account that owns this cost. + type: string required: - - data + - description type: object - BudgetWithEntries: - description: The definition of the `BudgetWithEntries` object. + GeneratedCostTagDescriptionAttributes: + description: Attributes of an AI-generated Cloud Cost Management tag key description. properties: - data: - $ref: '#/components/schemas/BudgetWithEntriesData' + description: + description: The AI-generated description for the tag key. + example: AWS account that owns this cost. + type: string + required: + - description type: object - BudgetArray: - description: An array of budgets. - example: - data: - - attributes: - created_at: 1741011342772 - created_by: user1 - end_month: 202502 - metrics_query: aws.cost.amortized{service:ec2} by {service} - name: my budget - org_id: 123 - start_month: 202501 - total_amount: 1000 - updated_at: 1741011342772 - updated_by: user2 - id: 00000000-0a0a-0a0a-aaa0-00000000000a - type: budget + GeneratedCostTagDescriptionType: + default: cost_generated_tag_description + description: Type of the AI-generated Cloud Cost Management tag description resource. + enum: + - cost_generated_tag_description + example: cost_generated_tag_description + type: string + x-enum-varnames: + - COST_GENERATED_TAG_DESCRIPTION + CostTagKeyAttributes: + description: Attributes of a Cloud Cost Management tag key. properties: - data: - description: The `BudgetArray` `data`. + details: + $ref: '#/components/schemas/CostTagKeyDetails' + sources: + description: List of sources that define this tag key. + example: + - focus items: - $ref: '#/components/schemas/Budget' + description: A tag key source. + type: string type: array + value: + description: The tag key name. + example: providername + type: string + required: + - sources + - value type: object - CustomCostsFileListResponse: - description: Response for List Custom Costs files. + CostTagKeyType: + default: cost_tag_key + description: Type of the Cloud Cost Management tag key resource. + enum: + - cost_tag_key + example: cost_tag_key + type: string + x-enum-varnames: + - COST_TAG_KEY + CostTagKeyMetadataAttributes: + description: Attributes of a Cloud Cost Management tag key metadata entry. properties: - data: - description: List of Custom Costs files. + cardinality_by_account: + $ref: '#/components/schemas/CostTagKeyMetadataCardinalityByAccount' + cost_covered: + description: Total cost (in the report currency) of cost line items that carry this tag key for the requested period. + example: 1234.56 + format: double + type: number + date: + description: The day this row corresponds to, in `YYYY-MM-DD` format. Present only when `filter[daily]=true`; omitted for the monthly roll-up returned by default. + example: '2026-02-15' + type: string + metric: + description: The Cloud Cost Management metric this row aggregates, for example `aws.cost.net.amortized`. + example: aws.cost.net.amortized + type: string + row_count: + description: Number of cost rows that carry this tag key over the requested period. + example: 100 + format: int64 + type: integer + tag_sources: + description: Origins where this tag key was observed (for example, `aws-user-defined`). + example: + - aws-user-defined items: - $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' + description: A tag source. + type: string type: array - meta: - $ref: '#/components/schemas/CustomCostListResponseMeta' - type: object - CustomCostsFileUploadRequest: - description: Request for uploading a Custom Costs file. - items: - $ref: '#/components/schemas/CustomCostsFileLineItem' - type: array - CustomCostsFileUploadResponse: - description: Response for Uploaded Custom Costs files. - properties: - data: - $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' - meta: - $ref: '#/components/schemas/CustomCostUploadResponseMeta' - type: object - CustomCostsFileGetResponse: - description: Response for Get Custom Costs files. - properties: - data: - $ref: '#/components/schemas/CustomCostsFileMetadataWithContentHighLevel' - meta: - $ref: '#/components/schemas/CustomCostGetResponseMeta' + top_values_by_account: + $ref: '#/components/schemas/CostTagKeyMetadataTopValuesByAccount' + required: + - cardinality_by_account + - cost_covered + - metric + - row_count + - tag_sources + - top_values_by_account type: object - GCPUsageCostConfigsResponse: - description: List of GCP Usage Cost configs. + CostTagKeyMetadataType: + default: cost_tag_key_metadata + description: Type of the Cloud Cost Management tag key metadata resource. + enum: + - cost_tag_key_metadata + example: cost_tag_key_metadata + type: string + x-enum-varnames: + - COST_TAG_KEY_METADATA + CostCurrencyType: + default: cost_currency + description: Type of the Cloud Cost Management billing currency resource. + enum: + - cost_currency + example: cost_currency + type: string + x-enum-varnames: + - COST_CURRENCY + CostMetricType: + default: cost_metric + description: Type of the Cloud Cost Management available metric resource. + enum: + - cost_metric + example: cost_metric + type: string + x-enum-varnames: + - COST_METRIC + CostTagMetadataMonthType: + default: cost_tag_metadata_month + description: Type of the Cloud Cost Management tag metadata month resource. + enum: + - cost_tag_metadata_month + example: cost_tag_metadata_month + type: string + x-enum-varnames: + - COST_TAG_METADATA_MONTH + CostOrchestratorType: + default: cost_orchestrator + description: Type of the Cloud Cost Management orchestrator resource. + enum: + - cost_orchestrator + example: cost_orchestrator + type: string + x-enum-varnames: + - COST_ORCHESTRATOR + CostTagKeySourceAttributes: + description: Attributes of a Cloud Cost Management tag source. properties: - data: - description: A GCP Usage Cost config. + tag_key: + description: The tag key name. + example: env + type: string + tag_sources: + description: Origins where this tag key was observed (for example, `aws-user-defined`). + example: + - aws-user-defined + - custom items: - $ref: '#/components/schemas/GCPUsageCostConfig' + description: A tag source. + type: string type: array - type: object - GCPUsageCostConfigPostRequest: - description: GCP Usage Cost config post request. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfigPostData' - required: - - data - type: object - GCPUsageCostConfigResponse: - description: Response of GCP Usage Cost config. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfig' - type: object - GCPUsageCostConfigPatchRequest: - description: GCP Usage Cost config patch request. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfigPatchData' required: - - data - type: object - ActiveBillingDimensionsResponse: - description: Active billing dimensions response. - properties: - data: - $ref: '#/components/schemas/ActiveBillingDimensionsBody' + - tag_key + - tag_sources type: object - SortDirection: - default: desc - description: The direction to sort by. + CostTagKeySourceType: + default: cost_tag_key_source + description: Type of the Cloud Cost Management tag source resource. enum: - - desc - - asc + - cost_tag_key_source + example: cost_tag_key_source type: string x-enum-varnames: - - DESC - - ASC - MonthlyCostAttributionResponse: - description: Response containing the monthly cost attribution by tag(s). + - COST_TAG_KEY_SOURCE + CostTagAttributes: + description: Attributes of a Cloud Cost Management tag. properties: - data: - description: Response containing cost attribution. + sources: + description: List of sources that define this tag. + example: + - focus items: - $ref: '#/components/schemas/MonthlyCostAttributionBody' + description: A tag source. + type: string type: array - meta: - $ref: '#/components/schemas/MonthlyCostAttributionMeta' - type: object - AwsCURConfig: - description: AWS CUR config. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigAttributes' - id: - description: The ID of the AWS CUR config. + value: + description: The tag value in `key:value` format. + example: providername:aws type: string - type: - $ref: '#/components/schemas/AwsCURConfigType' required: - - attributes - - type + - sources + - value type: object - AwsCURConfigPostData: - description: AWS CUR config Post data. + CostTagType: + default: cost_tag + description: Type of the Cloud Cost Management tag resource. + enum: + - cost_tag + example: cost_tag + type: string + x-enum-varnames: + - COST_TAG + ActiveBillingDimensionsAttributes: + description: List of active billing dimensions. properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/AwsCURConfigPostRequestType' - required: - - attributes - - type + month: + description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`.' + format: date-time + type: string + values: + description: 'List of active billing dimensions. Example: `[infra_host, apm_host, serverless_infra]`.' + items: + description: A given billing dimension in a list. + example: infra_host + type: string + type: array type: object - AwsCURConfigPatchData: - description: AWS CUR config Patch data. + ActiveBillingDimensionsType: + default: billing_dimensions + description: Type of active billing dimensions data. + enum: + - billing_dimensions + type: string + x-enum-varnames: + - BILLING_DIMENSIONS + MonthlyCostAttributionAttributes: + description: Cost Attribution by Tag for a given organization. properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/AwsCURConfigPatchRequestType' - required: - - attributes - - type + month: + description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`.' + format: date-time + type: string + org_name: + description: The name of the organization. + type: string + public_id: + description: The organization public ID. + type: string + tag_config_source: + description: The source of the cost attribution tag configuration and the selected tags in the format `::://////`. + type: string + tags: + $ref: '#/components/schemas/CostAttributionTagNames' + updated_at: + description: Shows the most recent hour in the current months for all organizations for which all costs were calculated. + type: string + values: + description: 'Fields in Cost Attribution by tag(s). Example: `infra_host_on_demand_cost`, `infra_host_committed_cost`, `infra_host_total_cost`, `infra_host_percentage_in_org`, `infra_host_percentage_in_account`. (opaque JSON object)' + type: string type: object - AzureUCConfigPair: - description: Azure config pair. + CostAttributionType: + default: cost_by_tag + description: Type of cost attribution data. + enum: + - cost_by_tag + example: cost_by_tag + type: string + x-enum-varnames: + - COST_BY_TAG + CostAttributionAggregates: + description: An array of available aggregates. + items: + $ref: '#/components/schemas/CostAttributionAggregatesBody' + type: array + MonthlyCostAttributionPagination: + description: The metadata for the current pagination. properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPairAttributes' - id: - description: The ID of Cloud Cost Management account. + next_record_id: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of the `next_record_id`. + nullable: true type: string - type: - $ref: '#/components/schemas/AzureUCConfigPairType' - required: - - attributes - - type type: object - AzureUCConfigPostData: - description: Azure config Post data. + RulesetRespDataAttributes: + description: The definition of `RulesetRespDataAttributes` object. properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/AzureUCConfigPostRequestType' + created: + $ref: '#/components/schemas/RulesetRespDataAttributesCreated' + enabled: + description: The `attributes` `enabled`. + example: false + type: boolean + last_modified_user_uuid: + description: The `attributes` `last_modified_user_uuid`. + example: '' + type: string + modified: + $ref: '#/components/schemas/RulesetRespDataAttributesModified' + name: + description: The `attributes` `name`. + example: '' + type: string + position: + description: The `attributes` `position`. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + processing_status: + description: The `attributes` `processing_status`. + example: '' + type: string + rules: + description: The `attributes` `rules`. + items: + $ref: '#/components/schemas/RulesetRespDataAttributesRulesItems' + type: array + version: + description: The `attributes` `version`. + example: 0 + format: int64 + type: integer required: - - attributes - - type + - created + - enabled + - last_modified_user_uuid + - modified + - name + - position + - rules + - version type: object - AzureUCConfigPatchData: - description: Azure config Patch data. + RulesetRespDataType: + default: ruleset + description: Ruleset resource type. + enum: + - ruleset + example: ruleset + type: string + x-enum-varnames: + - RULESET + CreateRulesetRequestDataAttributes: + description: The definition of `CreateRulesetRequestDataAttributes` object. properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/AzureUCConfigPatchRequestType' + enabled: + description: The `attributes` `enabled`. + type: boolean + rules: + description: The `attributes` `rules`. + items: + $ref: '#/components/schemas/CreateRulesetRequestDataAttributesRulesItems' + type: array required: - - attributes - - type + - rules type: object - BudgetWithEntriesData: - description: A budget and all its entries. + CreateRulesetRequestDataType: + default: create_ruleset + description: Create ruleset resource type. + enum: + - create_ruleset + example: create_ruleset + type: string + x-enum-varnames: + - CREATE_RULESET + ReorderRulesetResourceDataType: + default: ruleset + description: Ruleset resource type. + enum: + - ruleset + example: ruleset + type: string + x-enum-varnames: + - RULESET + RulesetStatusRespDataAttributes: + description: Processing status for a tag pipeline ruleset. properties: - attributes: - $ref: '#/components/schemas/BudgetAttributes' - id: - description: The `BudgetWithEntriesData` `id`. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - type: - description: The type of the object, must be `budget`. + processing_status: + description: The processing status of the ruleset. + example: processing type: string + required: + - processing_status type: object - Budget: - description: A budget. + RulesetStatusRespDataType: + default: ruleset_status + description: Ruleset status resource type. + enum: + - ruleset_status + example: ruleset_status + type: string + x-enum-varnames: + - RULESET_STATUS + RulesValidateQueryRequestDataAttributes: + description: The definition of `RulesValidateQueryRequestDataAttributes` object. properties: - attributes: - $ref: '#/components/schemas/BudgetAttributes' - id: - description: The id of the budget. - type: string - type: - description: The type of the object, must be `budget`. + Query: + description: The `attributes` `Query`. + example: '' type: string + required: + - Query type: object - CustomCostsFileMetadataHighLevel: - description: JSON API format for a Custom Costs file. + RulesValidateQueryRequestDataType: + default: validate_query + description: Validate query resource type. + enum: + - validate_query + example: validate_query + type: string + x-enum-varnames: + - VALIDATE_QUERY + RulesValidateQueryResponseDataAttributes: + description: The definition of `RulesValidateQueryResponseDataAttributes` object. properties: - attributes: - $ref: '#/components/schemas/CustomCostsFileMetadata' - id: - description: ID of the Custom Costs metadata. - type: string - type: - description: Type of the Custom Costs file metadata. + Canonical: + description: The `attributes` `Canonical`. + example: '' type: string + required: + - Canonical type: object - CustomCostListResponseMeta: - description: Meta for the response from the List Custom Costs endpoints. + RulesValidateQueryResponseDataType: + default: validate_response + description: Validate response resource type. + enum: + - validate_response + example: validate_response + type: string + x-enum-varnames: + - VALIDATE_RESPONSE + UpdateRulesetRequestDataAttributes: + description: The definition of `UpdateRulesetRequestDataAttributes` object. properties: - total_filtered_count: - description: >- - Number of Custom Costs files returned by the List Custom Costs - endpoint + enabled: + description: The `attributes` `enabled`. + example: false + type: boolean + last_version: + description: The `attributes` `last_version`. format: int64 type: integer - version: - description: Version of Custom Costs file - type: string + rules: + description: The `attributes` `rules`. + items: + $ref: '#/components/schemas/UpdateRulesetRequestDataAttributesRulesItems' + type: array + required: + - enabled + - rules type: object - CustomCostsFileLineItem: - description: Line item details from a Custom Costs file. + UpdateRulesetRequestDataType: + default: update_ruleset + description: Update ruleset resource type. + enum: + - update_ruleset + example: update_ruleset + type: string + x-enum-varnames: + - UPDATE_RULESET + AccountFilteringConfig: + description: The account filtering configuration. properties: - BilledCost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - BillingCurrency: - description: Currency used in the Custom Costs file. - example: USD - type: string - ChargeDescription: - description: Description for the line item cost. - example: Monthly usage charge for my service - type: string - ChargePeriodEnd: - description: End date of the usage charge. - example: '2023-02-28' - pattern: ^\d{4}-\d{2}-\d{2}$ - type: string - ChargePeriodStart: - description: Start date of the usage charge. - example: '2023-02-01' - pattern: ^\d{4}-\d{2}-\d{2}$ - type: string - ProviderName: - description: Name of the provider for the line item. - type: string - Tags: - additionalProperties: + excluded_accounts: + description: The AWS account IDs to be excluded from your billing dataset. This field is used when `include_new_accounts` is `true`. + example: + - '123456789123' + - '123456789143' + items: + description: An AWS account ID to exclude from the billing dataset. type: string - description: Additional tags for the line item. - type: object + type: array + include_new_accounts: + description: Whether or not to automatically include new member accounts by default in your billing dataset. + example: true + nullable: true + type: boolean + included_accounts: + description: The AWS account IDs to be included in your billing dataset. This field is used when `include_new_accounts` is `false`. + example: + - '123456789123' + - '123456789143' + items: + description: An AWS account ID to include in the billing dataset. + type: string + type: array type: object - CustomCostUploadResponseMeta: - description: Meta for the response from the Upload Custom Costs endpoints. - properties: - version: - description: Version of Custom Costs file + CostAnomalyCorrelatedTags: + additionalProperties: + description: The list of correlated values for the tag key. + items: + description: A correlated tag value. type: string + type: array + description: Map of correlated tag keys to the list of correlated tag values. + example: + region: + - us-east-1 + - us-west-2 + nullable: true type: object - CustomCostsFileMetadataWithContentHighLevel: - description: JSON API format of for a Custom Costs file with content. + CostAnomalyDimensions: + additionalProperties: + description: The dimension value. + type: string + description: Map of cost dimension keys to their values for the anomaly grouping. + example: + service: ec2 + type: object + CostAnomalyDismissal: + description: Resolution metadata for an anomaly that has been dismissed. properties: - attributes: - $ref: '#/components/schemas/CustomCostsFileMetadataWithContent' - id: - description: ID of the Custom Costs metadata. + cause: + description: Reason the anomaly was dismissed. + example: false_positive type: string - type: - description: Type of the Custom Costs file metadata. + dismissal_id: + description: Unique identifier of the dismissal record. + example: 12345678-1234-1234-1234-123456789abc + type: string + message: + description: Optional message explaining the dismissal. + example: This was expected due to planned infrastructure changes. type: string + updated_at: + description: Timestamp of the last dismissal update in Unix milliseconds. + example: 1730344150000 + format: int64 + type: integer + updated_by: + description: Identifier of the user that last updated the dismissal. + example: user@example.com + type: string + required: + - dismissal_id + - cause + - message + - updated_at + - updated_by type: object - CustomCostGetResponseMeta: - description: Meta for the response from the Get Custom Costs endpoints. + ArbitraryRuleResponseDataAttributesCostsToAllocateItems: + description: The definition of `ArbitraryRuleResponseDataAttributesCostsToAllocateItems` object. properties: - version: - description: Version of Custom Costs file + condition: + description: The `items` `condition`. + example: '' + type: string + tag: + description: The `items` `tag`. + example: '' + type: string + value: + description: The `items` `value`. type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag type: object - GCPUsageCostConfig: - description: GCP Usage Cost config. + ArbitraryRuleResponseDataAttributesStrategy: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategy` object. properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigAttributes' - id: - description: The ID of the GCP Usage Cost config. + allocated_by: + description: The `strategy` `allocated_by`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyAllocatedByItems' + type: array + allocated_by_filters: + description: The `strategy` `allocated_by_filters`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyAllocatedByFiltersItems' + type: array + allocated_by_tag_keys: + description: The `strategy` `allocated_by_tag_keys`. + items: + description: A tag key used to group cost allocations. + type: string + type: array + based_on_costs: + description: The `strategy` `based_on_costs`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyBasedOnCostsItems' + type: array + based_on_timeseries: + additionalProperties: {} + description: The rule `strategy` `based_on_timeseries`. + type: object + evaluate_grouped_by_filters: + description: The `strategy` `evaluate_grouped_by_filters`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyEvaluateGroupedByFiltersItems' + type: array + evaluate_grouped_by_tag_keys: + description: The `strategy` `evaluate_grouped_by_tag_keys`. + items: + description: A tag key used to group cost evaluation. + type: string + type: array + granularity: + description: The `strategy` `granularity`. + type: string + method: + description: The `strategy` `method`. + example: '' type: string - type: - $ref: '#/components/schemas/GCPUsageCostConfigType' required: - - attributes - - type + - method type: object - GCPUsageCostConfigPostData: - description: GCP Usage Cost config post data. + ArbitraryCostUpsertRequestDataAttributesCostsToAllocateItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesCostsToAllocateItems` object. properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequestType' + condition: + description: The `items` `condition`. + example: '' + type: string + tag: + description: The `items` `tag`. + example: '' + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array required: - - attributes - - type + - condition + - tag type: object - GCPUsageCostConfigPatchData: - description: GCP Usage Cost config patch data. + ArbitraryCostUpsertRequestDataAttributesStrategy: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategy` object. properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestType' + allocated_by: + description: The `strategy` `allocated_by`. + items: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItems' + type: array + allocated_by_filters: + description: The `strategy` `allocated_by_filters`. + items: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByFiltersItems' + type: array + allocated_by_tag_keys: + description: The `strategy` `allocated_by_tag_keys`. + items: + description: A tag key used to group cost allocations. + type: string + type: array + based_on_costs: + description: The `strategy` `based_on_costs`. + items: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyBasedOnCostsItems' + type: array + based_on_timeseries: + additionalProperties: {} + description: The `strategy` `based_on_timeseries`. + type: object + evaluate_grouped_by_filters: + description: The `strategy` `evaluate_grouped_by_filters`. + items: + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyEvaluateGroupedByFiltersItems' + type: array + evaluate_grouped_by_tag_keys: + description: The `strategy` `evaluate_grouped_by_tag_keys`. + items: + description: A tag key used to group cost evaluation. + type: string + type: array + granularity: + description: The `strategy` `granularity`. + type: string + method: + description: The `strategy` `method`. + example: '' + type: string required: - - attributes - - type + - method type: object - ActiveBillingDimensionsBody: - description: Active billing dimensions data. + AwsCurConfigResponseDataAttributesAccountFilters: + description: The definition of `AwsCurConfigResponseDataAttributesAccountFilters` object. properties: - attributes: - $ref: '#/components/schemas/ActiveBillingDimensionsAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/ActiveBillingDimensionsType' + excluded_accounts: + description: The `account_filters` `excluded_accounts`. + items: + description: An AWS account ID to exclude. + type: string + type: array + include_new_accounts: + description: The `account_filters` `include_new_accounts`. + nullable: true + type: boolean + included_accounts: + description: The `account_filters` `included_accounts`. + items: + description: An AWS account ID to include. + type: string + type: array type: object - MonthlyCostAttributionBody: - description: Cost data. + AzureUCConfig: + description: Azure config. properties: - attributes: - $ref: '#/components/schemas/MonthlyCostAttributionAttributes' + account_id: + description: The tenant ID of the Azure account. + example: 1234abcd-1234-abcd-1234-1234abcd1234 + type: string + client_id: + description: The client ID of the Azure account. + example: 1234abcd-1234-abcd-1234-1234abcd1234 + type: string + created_at: + description: The timestamp when the Azure config was created. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + dataset_type: + description: The dataset type of the Azure config. + example: actual + type: string + error_messages: + description: The error messages for the Azure config. + items: + description: An error message string. + type: string + nullable: true + type: array + export_name: + description: The name of the configured Azure Export. + example: dd-actual-export + type: string + export_path: + description: The path where the Azure Export is saved. + example: dd-export-path + type: string id: - description: Unique ID of the response. + description: The ID of the Azure config. type: string - type: - $ref: '#/components/schemas/CostAttributionType' + months: + deprecated: true + description: The number of months the report has been backfilled. + format: int32 + maximum: 36 + type: integer + scope: + description: The scope of your observed subscription. + example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + type: string + status: + description: The status of the Azure config. + example: active + type: string + status_updated_at: + description: The timestamp when the Azure config status was last updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + storage_account: + description: The name of the storage account where the Azure Export is saved. + example: dd-storage-account + type: string + storage_container: + description: The name of the storage container where the Azure Export is saved. + example: dd-storage-container + type: string + updated_at: + description: The timestamp when the Azure config was last updated. + pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: string + required: + - account_id + - client_id + - dataset_type + - export_name + - export_path + - scope + - status + - storage_account + - storage_container type: object - MonthlyCostAttributionMeta: - description: The object containing document metadata. + BillConfig: + description: Bill config. properties: - aggregates: - $ref: '#/components/schemas/CostAttributionAggregates' - pagination: - $ref: '#/components/schemas/MonthlyCostAttributionPagination' + export_name: + description: The name of the configured Azure Export. + example: dd-actual-export + type: string + export_path: + description: The path where the Azure Export is saved. + example: dd-export-path + type: string + storage_account: + description: The name of the storage account where the Azure Export is saved. + example: dd-storage-account + type: string + storage_container: + description: The name of the storage container where the Azure Export is saved. + example: dd-storage-container + type: string + required: + - export_name + - export_path + - storage_account + - storage_container type: object - AwsCURConfigAttributes: - description: Attributes for An AWS CUR config. + UCConfigPairDataAttributesConfigsItems: + description: The definition of `UCConfigPairDataAttributesConfigsItems` object. properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' account_id: - description: The AWS account ID. - example: '123456789123' - type: string - bucket_name: - description: The AWS bucket name used to store the Cost and Usage Report. - example: dd-cost-bucket + description: The `items` `account_id`. type: string - bucket_region: - description: The region the bucket is located in. - example: us-east-1 + client_id: + description: The `items` `client_id`. type: string created_at: - description: The timestamp when the AWS CUR config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + description: The `items` `created_at`. + type: string + dataset_type: + description: The `items` `dataset_type`. + type: string + error_messages: + description: The `items` `error_messages`. + items: + description: An error message string. + type: string + nullable: true + type: array + export_name: + description: The `items` `export_name`. + type: string + export_path: + description: The `items` `export_path`. + type: string + id: + description: The `items` `id`. type: string - error_messages: - description: The error messages for the AWS CUR config. - items: - type: string - type: array months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 + description: The `items` `months`. + format: int64 type: integer - report_name: - description: The name of the Cost and Usage Report. - example: dd-report-name - type: string - report_prefix: - description: The report prefix used for the Cost and Usage Report. - example: dd-report-prefix + scope: + description: The `items` `scope`. type: string status: - description: The status of the AWS CUR. - example: active + description: The `items` `status`. type: string status_updated_at: - description: The timestamp when the AWS CUR config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + description: The `items` `status_updated_at`. + type: string + storage_account: + description: The `items` `storage_account`. + type: string + storage_container: + description: The `items` `storage_container`. type: string updated_at: - description: The timestamp when the AWS CUR config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + description: The `items` `updated_at`. type: string - required: - - account_id - - bucket_name - - bucket_region - - report_name - - report_prefix - - status type: object - AwsCURConfigType: - default: aws_cur_config - description: Type of AWS CUR config. - enum: - - aws_cur_config - example: aws_cur_config - type: string - x-enum-varnames: - - AWS_CUR_CONFIG - AwsCURConfigPostRequestAttributes: - description: Attributes for AWS CUR config Post Request. + BudgetAttributesCosts: + description: Aggregated cost data for the budget over the requested period. properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - account_id: - description: The AWS account ID. - example: '123456789123' + actual: + description: The total actual cost. Present only when `actual=true` is requested. + format: double + nullable: true + type: number + amount: + description: The total budgeted amount over the requested period. + format: double + nullable: true + type: number + forecast: + description: The total forecast cost, with any custom forecast overrides applied. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + ootb_forecast: + description: The out-of-the-box ML forecast before custom overrides. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + type: object + BudgetAttributesCostsUnit: + description: The unit used for all cost values in the response. + properties: + family: + description: The unit family (for example, `currency`). type: string - bucket_name: - description: The AWS bucket name used to store the Cost and Usage Report. - example: dd-cost-bucket + id: + description: The unique identifier for the unit. type: string - bucket_region: - description: The region the bucket is located in. - example: us-east-1 + name: + description: The full name of the unit. type: string - months: - description: The month of the report. - format: int32 - maximum: 36 - type: integer - report_name: - description: The name of the Cost and Usage Report. - example: dd-report-name + plural: + description: The plural form of the unit name. type: string - report_prefix: - description: The report prefix used for the Cost and Usage Report. - example: dd-report-prefix + scale_factor: + description: The scale factor applied to raw cost values. + format: double + type: number + short_name: + description: The abbreviated unit name. type: string - required: - - account_id - - bucket_name - - report_name - - report_prefix type: object - AwsCURConfigPostRequestType: - default: aws_cur_config_post_request - description: Type of AWS CUR config Post Request. - enum: - - aws_cur_config_post_request - example: aws_cur_config_post_request - type: string - x-enum-varnames: - - AWS_CUR_CONFIG_POST_REQUEST - AwsCURConfigPatchRequestAttributes: - description: Attributes for AWS CUR config Patch Request. + BudgetWithEntriesDataAttributesEntriesItems: + description: A single monthly budget entry defining the allocated amount and optional tag filters for a specific month. properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean + amount: + description: The budgeted amount for this entry. + format: double + type: number + costs: + $ref: '#/components/schemas/BudgetWithEntriesDataAttributesEntriesItemsCosts' + description: Cost data for this entry. Present only when `actual=true` or `forecast=true` is requested. + month: + description: The month this budget entry applies to, in YYYYMM format. + format: int64 + type: integer + tag_filters: + description: The list of tag filters that scope this budget entry to specific resources. + items: + $ref: '#/components/schemas/BudgetWithEntriesDataAttributesEntriesItemsTagFiltersItems' + type: array type: object - AwsCURConfigPatchRequestType: - default: aws_cur_config_patch_request - description: Type of AWS CUR config Patch Request. - enum: - - aws_cur_config_patch_request - example: aws_cur_config_patch_request - type: string - x-enum-varnames: - - AWS_CUR_CONFIG_PATCH_REQUEST - AzureUCConfigPairAttributes: - description: Attributes for Azure config pair. + CustomForecastEntry: + description: A monthly entry of a custom budget forecast. properties: - configs: - description: An Azure config. + amount: + description: Forecast amount for the month. + example: 400 + format: double + type: number + month: + description: Month the custom forecast entry applies to, in `YYYYMM` format. + example: 202501 + format: int64 + type: integer + tag_filters: + description: Tag filters that scope this custom forecast entry to specific resources. items: - $ref: '#/components/schemas/AzureUCConfig' + $ref: '#/components/schemas/CustomForecastEntryTagFilter' type: array - id: - description: The ID of the Azure config pair. - type: string required: - - configs + - month + - amount + - tag_filters type: object - AzureUCConfigPairType: - default: azure_uc_configs - description: Type of Azure config pair. - enum: - - azure_uc_configs - example: azure_uc_configs - type: string - x-enum-varnames: - - AZURE_UC_CONFIGS - AzureUCConfigPostRequestAttributes: - description: Attributes for Azure config Post Request. + CommitmentsAwsEC2RICommitment: + description: AWS EC2 Reserved Instance commitment details. properties: - account_id: - description: The tenant ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 + availability_zone: + description: The availability zone of the reservation. + example: us-east-1a type: string - actual_bill_config: - $ref: '#/components/schemas/BillConfig' - amortized_bill_config: - $ref: '#/components/schemas/BillConfig' - client_id: - description: The client ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 type: string - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - type: boolean - scope: - description: The scope of your observed subscription. - example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' type: string + instance_type: + description: The EC2 instance type. + example: m5.xlarge + type: string + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 + format: double + type: number + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + offering_class: + description: The offering class of the Reserved Instance. + example: standard + type: string + operating_system: + description: The operating system of the Reserved Instance. + example: Linux + type: string + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront + type: string + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 + type: string + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number required: - - account_id - - actual_bill_config - - amortized_bill_config - - client_id - - scope - type: object - AzureUCConfigPostRequestType: - default: azure_uc_config_post_request - description: Type of Azure config Post Request. - enum: - - azure_uc_config_post_request - example: azure_uc_config_post_request - type: string - x-enum-varnames: - - AZURE_UC_CONFIG_POST_REQUEST - AzureUCConfigPatchRequestAttributes: - description: Attributes for Azure config Patch Request. - properties: - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - required: - - is_enabled + - commitment_id + - instance_type + - offering_class + - operating_system + - purchase_option + - region type: object - AzureUCConfigPatchRequestType: - default: azure_uc_config_patch_request - description: Type of Azure config Patch Request. - enum: - - azure_uc_config_patch_request - example: azure_uc_config_patch_request - type: string - x-enum-varnames: - - AZURE_UC_CONFIG_PATCH_REQUEST - BudgetAttributes: - description: The attributes of a budget. + CommitmentsAwsRDSRICommitment: + description: AWS RDS Reserved Instance commitment details. properties: - created_at: - description: The timestamp when the budget was created. - example: 1738258683590 - format: int64 - type: integer - created_by: - description: The id of the user that created the budget. - example: 00000000-0a0a-0a0a-aaa0-00000000000a + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 type: string - end_month: - description: The month when the budget ends. - example: 202502 - format: int64 - type: integer - entries: - description: The entries of the budget. - items: - $ref: '#/components/schemas/BudgetEntry' - type: array - metrics_query: - description: The cost query used to track against the budget. - example: aws.cost.amortized{service:ec2} by {service} + database_engine: + description: The database engine of the Reserved Instance. + example: MySQL type: string - name: - description: The name of the budget. - example: my budget + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' type: string - org_id: - description: The id of the org the budget belongs to. - example: 123 - format: int64 - type: integer - start_month: - description: The month when the budget starts. - example: 202501 - format: int64 - type: integer - total_amount: - description: The sum of all budget entries' amounts. - example: 1000 + instance_type: + description: The RDS instance type. + example: db.m5.xlarge + type: string + is_multi_az: + description: Whether the Reserved Instance is Multi-AZ. + example: false + type: boolean + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 format: double type: number - updated_at: - description: The timestamp when the budget was last updated. - example: 1738258683590 - format: int64 - type: integer - updated_by: - description: The id of the user that created the budget. - example: 00000000-0a0a-0a0a-aaa0-00000000000a + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront + type: string + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 type: string + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - commitment_id + - database_engine + - instance_type + - purchase_option + - region type: object - CustomCostsFileMetadata: - description: Schema of a Custom Costs metadata. + CommitmentsAwsElasticacheRICommitment: + description: AWS ElastiCache Reserved Instance commitment details. properties: - billed_cost: - description: Total cost in the cost file. - example: 100.5 + cache_engine: + description: The cache engine type of the Reserved Instance. + example: Redis + type: string + commitment_id: + description: The unique identifier of the Reserved Instance. + example: ri-0123456789abcdef0 + type: string + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' + type: string + instance_type: + description: The ElastiCache instance type. + example: cache.m5.xlarge + type: string + number_of_nfus: + description: The number of Normalized Capacity Units. + example: 8 format: double type: number - billing_currency: - description: Currency used in the Custom Costs file. - example: USD + number_of_reservations: + description: The number of reserved instances. + example: 2 + format: double + type: number + purchase_option: + description: The payment option for the Reserved Instance. + example: All Upfront type: string - charge_period: - $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' - name: - description: Name of the Custom Costs file. - example: my_file.json + region: + description: The AWS region of the Reserved Instance. + example: us-east-1 type: string - provider_names: - description: Providers contained in the Custom Costs file. - items: - description: Name of the provider. - example: my_provider - type: string - type: array - status: - description: Status of the Custom Costs file. - example: active + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' type: string - uploaded_at: - description: >- - Timestamp, in millisecond, of the upload time of the Custom Costs - file. - example: 1704067200000 + term_length: + description: The term length in years. + example: 1 format: double type: number - uploaded_by: - $ref: '#/components/schemas/CustomCostsUser' + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - cache_engine + - commitment_id + - instance_type + - purchase_option + - region type: object - CustomCostsFileMetadataWithContent: - description: Schema of a cost file's metadata. + CommitmentsAwsSPCommitment: + description: AWS Savings Plan commitment details. properties: - billed_cost: - description: Total cost in the cost file. - example: 100.5 + commitment_id: + description: The unique identifier of the Savings Plan. + example: arn:aws:savingsplans::123456789:savingsplan/abc123 + type: string + committed_spend_per_hour: + description: The hourly committed spend for the Savings Plan. + example: 1.5 format: double type: number - billing_currency: - description: Currency used in the Custom Costs file. - example: USD + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' type: string - charge_period: - $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' - content: - description: Detail of the line items from the Custom Costs file. - items: - $ref: '#/components/schemas/CustomCostsFileLineItem' - type: array - name: - description: Name of the Custom Costs file. - example: my_file.json + purchase_option: + description: The payment option for the Savings Plan. + example: All Upfront type: string - provider_names: - description: Providers contained in the Custom Costs file. - items: - description: Name of a provider. - example: my_provider - type: string - type: array - status: - description: Status of the Custom Costs file. - example: active + savings_plan_type: + description: The Savings Plan type. + example: ComputeSavingsPlans type: string - uploaded_at: - description: >- - Timestamp in millisecond of the upload time of the Custom Costs - file. - example: 1704067200000 + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' + type: string + term_length: + description: The term length in years. + example: 1 format: double type: number - uploaded_by: - $ref: '#/components/schemas/CustomCostsUser' + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - commitment_id + - purchase_option + - savings_plan_type type: object - GCPUsageCostConfigAttributes: - description: Attributes for a GCP Usage Cost config. + CommitmentsAzureVMRICommitment: + description: Azure Virtual Machine Reserved Instance commitment details. properties: - account_id: - description: The GCP account ID. - example: 123456_A123BC_12AB34 - type: string - bucket_name: - description: The GCP bucket name used to store the Usage Cost export. - example: dd-cost-bucket + benefit_name: + description: The display name of the Azure reservation. + example: my-vm-reservation type: string - created_at: - description: The timestamp when the GCP Usage Cost config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + commitment_id: + description: The unique identifier of the Reserved Instance. + example: /subscriptions/abc123/providers/Microsoft.Capacity/reservationOrders/xyz789 type: string - dataset: - description: The export dataset name used for the GCP Usage Cost Report. - example: billing + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' type: string - error_messages: - description: The error messages for the GCP Usage Cost config. - items: - type: string - nullable: true - type: array - export_prefix: - description: The export prefix used for the GCP Usage Cost Report. - example: datadog_cloud_cost_usage_export + instance_type: + description: The Azure VM instance type. + example: Standard_D4s_v3 type: string - export_project_name: - description: The name of the GCP Usage Cost Report. - example: dd-cloud-cost-report + meter_sub_category: + description: The Azure meter sub-category for the reservation. + example: D4s v3 type: string - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - project_id: - description: The `project_id` of the GCP Usage Cost report. - example: my-project-123 + region: + description: The Azure region of the Reserved Instance. + example: eastus type: string - service_account: - description: The unique GCP service account email. - example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' type: string status: - description: The status of the GCP Usage Cost config. - example: active + $ref: '#/components/schemas/CommitmentsAzureVMRIStatus' + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number + required: + - benefit_name + - commitment_id + - instance_type + - meter_sub_category + - region + - status + type: object + CommitmentsAzureComputeSPCommitment: + description: Azure Compute Savings Plan commitment details. + properties: + benefit_name: + description: The display name of the Azure Savings Plan. + example: my-compute-savings-plan type: string - status_updated_at: - description: The timestamp when the GCP Usage Cost config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + commitment_id: + description: The unique identifier of the Savings Plan. + example: /subscriptions/abc123/providers/Microsoft.BillingBenefits/savingsPlanOrders/xyz789 type: string - updated_at: - description: The timestamp when the GCP Usage Cost config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + committed_spend_per_hour: + description: The hourly committed spend for the Savings Plan. + example: 2.5 + format: double + type: number + expiration_date: + description: The expiration date of the commitment. + example: '2025-12-31T00:00:00Z' type: string + start_date: + description: The start date of the commitment. + example: '2023-01-01T00:00:00Z' + type: string + term_length: + description: The term length in years. + example: 1 + format: double + type: number + utilization: + description: The utilization percentage of the commitment. + example: 0.85 + format: double + type: number required: - - account_id - - bucket_name - - dataset - - export_prefix - - export_project_name - - service_account - - status + - benefit_name + - commitment_id type: object - GCPUsageCostConfigType: - default: gcp_uc_config - description: Type of GCP Usage Cost config. + CommitmentsScalarColumnMeta: + description: Metadata for a scalar column, including unit information. + properties: + unit: + $ref: '#/components/schemas/CommitmentsUnit' + required: + - unit + type: object + CommitmentsScalarColumnType: + description: The column type. "group" for dimension columns, "number" for metric columns. enum: - - gcp_uc_config - example: gcp_uc_config + - group + - number + example: group type: string x-enum-varnames: - - GCP_UC_CONFIG - GCPUsageCostConfigPostRequestAttributes: - description: Attributes for GCP Usage Cost config post request. + - GROUP + - NUMBER + CommitmentsScalarColumnValueItems: + description: Values for a scalar column. Arrays of strings for group columns, numbers for value columns. + example: + - 0.85 + - 0.72 + items: + description: A scalar column value, either a group key (string) or a numeric metric. + type: array + CustomCostsFileUsageChargePeriod: + description: Usage charge period of a Custom Costs file. properties: - billing_account_id: - description: The GCP account ID. - example: 123456_A123BC_12AB34 + end: + description: End of the usage of the Custom Costs file. + example: 1706745600000 + format: double + type: number + start: + description: Start of the usage of the Custom Costs file. + example: 1704067200000 + format: double + type: number + type: object + CustomCostsUser: + description: Metadata of the user that has uploaded the Custom Costs file. + properties: + email: + description: The name of the Custom Costs file. + example: email.test@datadohq.com type: string - bucket_name: - description: The GCP bucket name used to store the Usage Cost export. - example: dd-cost-bucket + icon: + description: The name of the Custom Costs file. + example: icon.png type: string - export_dataset_name: - description: The export dataset name used for the GCP Usage Cost report. - example: billing + name: + description: Name of the user. + example: Test User type: string - export_prefix: - description: The export prefix used for the GCP Usage Cost report. - example: datadog_cloud_cost_usage_export + type: object + CostRecommendationDataAttributesPotentialDailySavings: + description: Estimated daily savings if the recommendation is applied. + properties: + amount: + description: Numeric amount of the potential daily savings. + format: double + type: number + currency: + description: ISO 4217 currency code for the savings amount. type: string - export_project_name: - description: The name of the GCP Usage Cost report. - example: dd-cloud-cost-report + type: object + CostTagDescriptionSource: + description: Origin of the description. `human` indicates the description was written by a user, `ai_generated` was produced by AI, and `datadog` is a default supplied by Datadog. + enum: + - human + - ai_generated + - datadog + example: human + type: string + x-enum-varnames: + - HUMAN + - AI_GENERATED + - DATADOG + CostTagKeyDetails: + description: Additional details for a Cloud Cost Management tag key, including its description and example tag values. + properties: + description: + description: Description of the tag key. + example: The cloud provider name reported for the cost line item. + type: string + tag_values: + description: Example tag values observed for this tag key. + example: + - aws + - gcp + - azure + items: + description: A tag value observed for this tag key. + type: string + type: array + required: + - description + - tag_values + type: object + CostTagKeyMetadataCardinalityByAccount: + additionalProperties: + description: Number of unique tag values observed in the account. + format: int64 + type: integer + description: Number of unique tag values observed for this tag key, keyed by cloud account ID. + example: + '123456789012': 42 + type: object + CostTagKeyMetadataTopValuesByAccount: + additionalProperties: + description: A sample of the most frequent tag values observed in the account. + items: + description: A tag value observed for this tag key. + type: string + type: array + description: A sample of the most frequent tag values observed for this tag key, keyed by cloud account ID. + example: + '123456789012': + - prod + - staging + type: object + CostAttributionTagNames: + additionalProperties: + description: |- + A list of values that are associated with each tag key. + - An empty list means the resource use wasn't tagged with the respective tag. + - Multiple values means the respective tag was applied multiple times on the resource. + - An `` value means the resource was tagged with the respective tag but did not have a value. + items: + description: A given tag in a list. + example: datadog-integrations-lab + type: string + type: array + description: |- + Tag keys and values. + A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags + configured for usage attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). + In this scenario the API returns the total cost, not broken down by tags. + nullable: true + type: object + CostAttributionAggregatesBody: + description: The object containing the aggregates. + properties: + agg_type: + description: The aggregate type. + example: sum + type: string + field: + description: The field. + example: infra_host_committed_cost + type: string + value: + description: The value for a given field. + format: double + type: number + type: object + RulesetRespDataAttributesCreated: + description: The definition of `RulesetRespDataAttributesCreated` object. + properties: + nanos: + description: The `created` `nanos`. + format: int32 + maximum: 2147483647 + type: integer + seconds: + description: The `created` `seconds`. + format: int64 + type: integer + type: object + RulesetRespDataAttributesModified: + description: The definition of `RulesetRespDataAttributesModified` object. + properties: + nanos: + description: The `modified` `nanos`. + format: int32 + maximum: 2147483647 + type: integer + seconds: + description: The `modified` `seconds`. + format: int64 + type: integer + type: object + RulesetRespDataAttributesRulesItems: + description: The definition of `RulesetRespDataAttributesRulesItems` object. + properties: + enabled: + description: The `items` `enabled`. + example: false + type: boolean + mapping: + $ref: '#/components/schemas/DataAttributesRulesItemsMapping' + metadata: + $ref: '#/components/schemas/RulesetItemMetadata' + name: + description: The `items` `name`. + example: '' type: string - service_account: - description: The unique GCP service account email. - example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com + query: + $ref: '#/components/schemas/RulesetRespDataAttributesRulesItemsQuery' + reference_table: + $ref: '#/components/schemas/RulesetRespDataAttributesRulesItemsReferenceTable' + required: + - enabled + - name + type: object + CreateRulesetRequestDataAttributesRulesItems: + description: The definition of `CreateRulesetRequestDataAttributesRulesItems` object. + properties: + enabled: + description: The `items` `enabled`. + example: false + type: boolean + mapping: + $ref: '#/components/schemas/DataAttributesRulesItemsMapping' + metadata: + $ref: '#/components/schemas/RulesetItemMetadata' + name: + description: The `items` `name`. + example: '' type: string + query: + $ref: '#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsQuery' + reference_table: + $ref: '#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsReferenceTable' required: - - billing_account_id - - bucket_name - - export_project_name - - export_dataset_name - - service_account + - enabled + - name type: object - GCPUsageCostConfigPostRequestType: - default: gcp_uc_config_post_request - description: Type of GCP Usage Cost config post request. - enum: - - gcp_uc_config_post_request - example: gcp_usage_cost_config_post_request - type: string - x-enum-varnames: - - GCP_USAGE_COST_CONFIG_POST_REQUEST - GCPUsageCostConfigPatchRequestAttributes: - description: Attributes for GCP Usage Cost config patch request. + UpdateRulesetRequestDataAttributesRulesItems: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItems` object. properties: - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true + enabled: + description: The `items` `enabled`. + example: false type: boolean + mapping: + $ref: '#/components/schemas/DataAttributesRulesItemsMapping' + metadata: + $ref: '#/components/schemas/RulesetItemMetadata' + name: + description: The `items` `name`. + example: '' + type: string + query: + $ref: '#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsQuery' + reference_table: + $ref: '#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsReferenceTable' required: - - is_enabled + - enabled + - name type: object - GCPUsageCostConfigPatchRequestType: - default: gcp_uc_config_patch_request - description: Type of GCP Usage Cost config patch request. - enum: - - gcp_uc_config_patch_request - example: gcp_uc_config_patch_request - type: string - x-enum-varnames: - - GCP_USAGE_COST_CONFIG_PATCH_REQUEST - ActiveBillingDimensionsAttributes: - description: List of active billing dimensions. + ArbitraryRuleResponseDataAttributesStrategyAllocatedByItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyAllocatedByItems` object. properties: - month: - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: - `[YYYY-MM-DDThh]`. - format: date-time + allocated_tags: + description: The `items` `allocated_tags`. + items: + $ref: '#/components/schemas/ArbitraryRuleResponseDataAttributesStrategyAllocatedByItemsAllocatedTagsItems' + type: array + percentage: + description: The `items` `percentage`. The numeric value format should be a 32bit float value. + example: 0 + format: double + type: number + required: + - allocated_tags + - percentage + type: object + ArbitraryRuleResponseDataAttributesStrategyAllocatedByFiltersItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyAllocatedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: '' + type: string + tag: + description: The `items` `tag`. + example: '' + type: string + value: + description: The `items` `value`. type: string values: - description: >- - List of active billing dimensions. Example: `[infra_host, apm_host, - serverless_infra]`. + description: The `items` `values`. items: - description: A given billing dimension in a list. - example: infra_host + description: A filter value string. type: string + nullable: true type: array + required: + - condition + - tag type: object - ActiveBillingDimensionsType: - default: billing_dimensions - description: Type of active billing dimensions data. - enum: - - billing_dimensions - type: string - x-enum-varnames: - - BILLING_DIMENSIONS - MonthlyCostAttributionAttributes: - description: Cost Attribution by Tag for a given organization. + ArbitraryRuleResponseDataAttributesStrategyBasedOnCostsItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyBasedOnCostsItems` object. properties: - month: - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: - `[YYYY-MM-DDThh]`. - format: date-time - type: string - org_name: - description: The name of the organization. + condition: + description: The `items` `condition`. + example: '' type: string - public_id: - description: The organization public ID. - type: string - tag_config_source: - description: >- - The source of the cost attribution tag configuration and the - selected tags in the format `::://////`. + tag: + description: The `items` `tag`. + example: '' type: string - tags: - $ref: '#/components/schemas/CostAttributionTagNames' - updated_at: - description: >- - Shows the most recent hour in the current months for all - organizations for which all costs were calculated. + value: + description: The `items` `value`. type: string values: - description: >- - Fields in Cost Attribution by tag(s). Example: - `infra_host_on_demand_cost`, `infra_host_committed_cost`, - `infra_host_total_cost`, `infra_host_percentage_in_org`, - `infra_host_percentage_in_account`. - type: object + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag type: object - CostAttributionType: - default: cost_by_tag - description: Type of cost attribution data. - enum: - - cost_by_tag - example: cost_by_tag - type: string - x-enum-varnames: - - COST_BY_TAG - CostAttributionAggregates: - description: An array of available aggregates. - items: - $ref: '#/components/schemas/CostAttributionAggregatesBody' - type: array - MonthlyCostAttributionPagination: - description: The metadata for the current pagination. + ArbitraryRuleResponseDataAttributesStrategyEvaluateGroupedByFiltersItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyEvaluateGroupedByFiltersItems` object. properties: - next_record_id: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of the - `next_record_id`. - nullable: true + condition: + description: The `items` `condition`. + example: '' type: string + tag: + description: The `items` `tag`. + example: '' + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag type: object - AccountFilteringConfig: - description: The account filtering configuration. + ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItems` object. properties: - excluded_accounts: - description: >- - The AWS account IDs to be excluded from your billing dataset. This - field is used when `include_new_accounts` is `true`. - example: - - '123456789123' - - '123456789143' + allocated_tags: + description: The `items` `allocated_tags`. items: - type: string + $ref: '#/components/schemas/ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItemsAllocatedTagsItems' type: array - include_new_accounts: - description: >- - Whether or not to automatically include new member accounts by - default in your billing dataset. - example: true - type: boolean - included_accounts: - description: >- - The AWS account IDs to be included in your billing dataset. This - field is used when `include_new_accounts` is `false`. - example: - - '123456789123' - - '123456789143' + percentage: + description: The `items` `percentage`. The numeric value format should be a 32bit float value. + example: 0 + format: double + type: number + required: + - allocated_tags + - percentage + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByFiltersItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: '' + type: string + tag: + description: The `items` `tag`. + example: '' + type: string + value: + description: The `items` `value`. + type: string + values: + description: The `items` `values`. items: + description: A filter value string. type: string + nullable: true type: array + required: + - condition + - tag type: object - AzureUCConfig: - description: Azure config. + ArbitraryCostUpsertRequestDataAttributesStrategyBasedOnCostsItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyBasedOnCostsItems` object. properties: - account_id: - description: The tenant ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - client_id: - description: The client ID of the Azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 + condition: + description: The `items` `condition`. + example: '' type: string - created_at: - description: The timestamp when the Azure config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + tag: + description: The `items` `tag`. + example: '' type: string - dataset_type: - description: The dataset type of the Azure config. - example: actual + value: + description: The `items` `value`. type: string - error_messages: - description: The error messages for the Azure config. + values: + description: The `items` `values`. items: + description: A filter value string. type: string + nullable: true type: array - export_name: - description: The name of the configured Azure Export. - example: dd-actual-export + required: + - condition + - tag + type: object + ArbitraryCostUpsertRequestDataAttributesStrategyEvaluateGroupedByFiltersItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyEvaluateGroupedByFiltersItems` object. + properties: + condition: + description: The `items` `condition`. + example: '' type: string - export_path: - description: The path where the Azure Export is saved. - example: dd-export-path + tag: + description: The `items` `tag`. + example: '' type: string - id: - description: The ID of the Azure config. + value: + description: The `items` `value`. type: string - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - scope: - description: The scope of your observed subscription. - example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 + values: + description: The `items` `values`. + items: + description: A filter value string. + type: string + nullable: true + type: array + required: + - condition + - tag + type: object + BudgetWithEntriesDataAttributesEntriesItemsCosts: + description: Cost data for a single budget entry. + properties: + actual: + description: The actual cost for this entry. Present only when `actual=true` is requested. + format: double + nullable: true + type: number + amount: + description: The budgeted amount for this entry. + format: double + nullable: true + type: number + custom_forecast: + description: The custom forecast override for this entry. `null` when `forecast=true` is requested but no custom forecast has been set for this entry's month. A numeric value, including `0`, indicates an explicit custom forecast override. Omitted when `forecast=false` or the feature is not available for the organization. + format: double + nullable: true + type: number + forecast: + description: The final forecast for this entry, with any custom forecast override applied. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + ootb_forecast: + description: The out-of-the-box ML forecast for this entry, before custom overrides. Present only when `forecast=true` is requested. + format: double + nullable: true + type: number + type: object + BudgetWithEntriesDataAttributesEntriesItemsTagFiltersItems: + description: A tag filter used to scope a budget entry to specific resource tags. + properties: + tag_key: + description: The tag key to filter on. type: string - status: - description: The status of the Azure config. - example: active + tag_value: + description: The tag value to filter on. type: string - status_updated_at: - description: The timestamp when the Azure config status was last updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + type: object + CustomForecastEntryTagFilter: + description: A tag filter that scopes a custom forecast entry to specific resource tags. + properties: + tag_key: + description: The tag key to filter on. + example: service type: string - storage_account: - description: The name of the storage account where the Azure Export is saved. - example: dd-storage-account + tag_value: + description: The tag value to filter on. + example: ec2 type: string - storage_container: - description: The name of the storage container where the Azure Export is saved. - example: dd-storage-container + required: + - tag_key + - tag_value + type: object + CommitmentsAzureVMRIStatus: + description: Status of an Azure VM Reserved Instance. + enum: + - running + - expired + - cancelled + example: running + type: string + x-enum-varnames: + - RUNNING + - EXPIRED + - CANCELLED + DataAttributesRulesItemsMapping: + description: The definition of `DataAttributesRulesItemsMapping` object. + nullable: true + properties: + destination_key: + description: The `mapping` `destination_key`. + example: '' type: string - updated_at: - description: The timestamp when the Azure config was last updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `mapping` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + source_keys: + description: The `mapping` `source_keys`. + example: + - '' + items: + description: A source key for the mapping rule. + type: string + type: array + required: + - destination_key + - source_keys + type: object + RulesetItemMetadata: + additionalProperties: + type: string + description: The `items` `metadata`. + nullable: true + type: object + RulesetRespDataAttributesRulesItemsQuery: + description: The definition of `RulesetRespDataAttributesRulesItemsQuery` object. + nullable: true + properties: + addition: + $ref: '#/components/schemas/RulesetRespDataAttributesRulesItemsQueryAddition' + case_insensitivity: + description: The `query` `case_insensitivity`. + type: boolean + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `query` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + query: + description: The `query` `query`. + example: '' type: string required: - - account_id - - client_id - - dataset_type - - export_name - - export_path - - scope - - status - - storage_account - - storage_container + - addition + - query type: object - BillConfig: - description: Bill config. + RulesetRespDataAttributesRulesItemsReferenceTable: + description: The definition of `RulesetRespDataAttributesRulesItemsReferenceTable` object. + nullable: true properties: - export_name: - description: The name of the configured Azure Export. - example: dd-actual-export + case_insensitivity: + description: The `reference_table` `case_insensitivity`. + type: boolean + field_pairs: + description: The `reference_table` `field_pairs`. + items: + $ref: '#/components/schemas/RulesetRespDataAttributesRulesItemsReferenceTableFieldPairsItems' + type: array + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `reference_table` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + source_keys: + description: The `reference_table` `source_keys`. + example: + - '' + items: + description: A source key for the reference table lookup. + type: string + type: array + table_name: + description: The `reference_table` `table_name`. + example: '' type: string - export_path: - description: The path where the Azure Export is saved. - example: dd-export-path + required: + - field_pairs + - source_keys + - table_name + type: object + CreateRulesetRequestDataAttributesRulesItemsQuery: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsQuery` object. + nullable: true + properties: + addition: + $ref: '#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsQueryAddition' + case_insensitivity: + description: The `query` `case_insensitivity`. + type: boolean + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `query` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + query: + description: The `query` `query`. + example: '' type: string - storage_account: - description: The name of the storage account where the Azure Export is saved. - example: dd-storage-account + required: + - addition + - query + type: object + CreateRulesetRequestDataAttributesRulesItemsReferenceTable: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsReferenceTable` object. + nullable: true + properties: + case_insensitivity: + description: The `reference_table` `case_insensitivity`. + type: boolean + field_pairs: + description: The `reference_table` `field_pairs`. + items: + $ref: '#/components/schemas/CreateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems' + type: array + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `reference_table` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + source_keys: + description: The `reference_table` `source_keys`. + example: + - '' + items: + description: A source key for the reference table lookup. + type: string + type: array + table_name: + description: The `reference_table` `table_name`. + example: '' type: string - storage_container: - description: The name of the storage container where the Azure Export is saved. - example: dd-storage-container + required: + - field_pairs + - source_keys + - table_name + type: object + UpdateRulesetRequestDataAttributesRulesItemsQuery: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsQuery` object. + nullable: true + properties: + addition: + $ref: '#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsQueryAddition' + case_insensitivity: + description: The `query` `case_insensitivity`. + type: boolean + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `query` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + query: + description: The `query` `query`. + example: '' type: string required: - - export_name - - export_path - - storage_account - - storage_container + - addition + - query type: object - BudgetEntry: - description: The entry of a budget. + UpdateRulesetRequestDataAttributesRulesItemsReferenceTable: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsReferenceTable` object. + nullable: true properties: - amount: - description: The `amount` of the budget entry. - example: 500 - format: double - type: number - month: - description: The `month` of the budget entry. - example: 202501 - format: int64 - type: integer - tag_filters: - description: The `tag_filters` of the budget entry. + case_insensitivity: + description: The `reference_table` `case_insensitivity`. + type: boolean + field_pairs: + description: The `reference_table` `field_pairs`. + items: + $ref: '#/components/schemas/UpdateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems' + type: array + if_not_exists: + deprecated: true + description: Deprecated. Use `if_tag_exists` instead. The `reference_table` `if_not_exists`. + type: boolean + if_tag_exists: + $ref: '#/components/schemas/DataAttributesRulesItemsIfTagExists' + source_keys: + description: The `reference_table` `source_keys`. + example: + - '' items: - $ref: '#/components/schemas/TagFilter' + description: A source key for the reference table lookup. + type: string type: array + table_name: + description: The `reference_table` `table_name`. + example: '' + type: string + required: + - field_pairs + - source_keys + - table_name type: object - CustomCostsFileUsageChargePeriod: - description: Usage charge period of a Custom Costs file. + ArbitraryRuleResponseDataAttributesStrategyAllocatedByItemsAllocatedTagsItems: + description: The definition of `ArbitraryRuleResponseDataAttributesStrategyAllocatedByItemsAllocatedTagsItems` object. properties: - end: - description: End of the usage of the Custom Costs file. - example: 1706745600000 - format: double - type: number - start: - description: Start of the usage of the Custom Costs file. - example: 1704067200000 - format: double - type: number + key: + description: The `items` `key`. + example: '' + type: string + value: + description: The `items` `value`. + example: '' + type: string + required: + - key + - value type: object - CustomCostsUser: - description: Metadata of the user that has uploaded the Custom Costs file. + ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItemsAllocatedTagsItems: + description: The definition of `ArbitraryCostUpsertRequestDataAttributesStrategyAllocatedByItemsAllocatedTagsItems` object. properties: - email: - description: The name of the Custom Costs file. - example: email.test@datadohq.com + key: + description: The `items` `key`. + example: '' type: string - icon: - description: The name of the Custom Costs file. - example: icon.png + value: + description: The `items` `value`. + example: '' type: string - name: - description: Name of the user. - example: Test User + required: + - key + - value + type: object + DataAttributesRulesItemsIfTagExists: + description: The behavior when the tag already exists. + enum: + - append + - do_not_apply + - replace + type: string + x-enum-varnames: + - APPEND + - DO_NOT_APPLY + - REPLACE + RulesetRespDataAttributesRulesItemsQueryAddition: + description: The definition of `RulesetRespDataAttributesRulesItemsQueryAddition` object. + nullable: true + properties: + key: + description: The `addition` `key`. + example: '' + type: string + value: + description: The `addition` `value`. + example: '' type: string + required: + - key + - value type: object - CostAttributionTagNames: - additionalProperties: - description: >- - A list of values that are associated with each tag key. - - - An empty list means the resource use wasn't tagged with the - respective tag. - - - Multiple values means the respective tag was applied multiple times - on the resource. - - - An `` value means the resource was tagged with the respective - tag but did not have a value. - items: - description: A given tag in a list. - example: datadog-integrations-lab + RulesetRespDataAttributesRulesItemsReferenceTableFieldPairsItems: + description: The definition of `RulesetRespDataAttributesRulesItemsReferenceTableFieldPairsItems` object. + properties: + input_column: + description: The `items` `input_column`. + example: '' type: string - type: array - description: >- - Tag keys and values. - - A `null` value here means that the requested tag breakdown cannot be - applied because it does not match the [tags - - configured for usage - attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). - - In this scenario the API returns the total cost, not broken down by - tags. + output_key: + description: The `items` `output_key`. + example: '' + type: string + required: + - input_column + - output_key + type: object + CreateRulesetRequestDataAttributesRulesItemsQueryAddition: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsQueryAddition` object. nullable: true + properties: + key: + description: The `addition` `key`. + example: '' + type: string + value: + description: The `addition` `value`. + example: '' + type: string + required: + - key + - value type: object - CostAttributionAggregatesBody: - description: The object containing the aggregates. + CreateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems: + description: The definition of `CreateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems` object. properties: - agg_type: - description: The aggregate type. - example: sum + input_column: + description: The `items` `input_column`. + example: '' type: string - field: - description: The field. - example: infra_host_committed_cost + output_key: + description: The `items` `output_key`. + example: '' + type: string + required: + - input_column + - output_key + type: object + UpdateRulesetRequestDataAttributesRulesItemsQueryAddition: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsQueryAddition` object. + nullable: true + properties: + key: + description: The `addition` `key`. + example: '' type: string value: - description: The value for a given field. - format: double - type: number + description: The `addition` `value`. + example: '' + type: string + required: + - key + - value type: object - TagFilter: - description: Tag filter for the budget's entries. + UpdateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems: + description: The definition of `UpdateRulesetRequestDataAttributesRulesItemsReferenceTableFieldPairsItems` object. properties: - tag_key: - description: The key of the tag. - example: service + input_column: + description: The `items` `input_column`. + example: '' type: string - tag_value: - description: The value of the tag. - example: ec2 + output_key: + description: The `items` `output_key`. + example: '' type: string + required: + - input_column + - output_key type: object responses: TooManyRequestsResponse: @@ -2229,6 +10322,13 @@ components: schema: format: int64 type: integer + AnomalyID: + description: The UUID of the cost anomaly. + in: path + name: anomaly_id + required: true + schema: + type: string BudgetID: description: Budget id. in: path @@ -2236,6 +10336,54 @@ components: required: true schema: type: string + CommitmentsProvider: + description: Cloud provider for commitment programs (aws or azure). + example: aws + in: query + name: provider + required: true + schema: + $ref: '#/components/schemas/CommitmentsProvider' + CommitmentsProduct: + description: Cloud product identifier (for example, ec2, rds, virtualmachines). + example: ec2 + in: query + name: product + required: true + schema: + type: string + CommitmentsStart: + description: Start of the query time range in Unix milliseconds. + example: 1693526400000 + in: query + name: start + required: true + schema: + format: int64 + type: integer + CommitmentsEnd: + description: End of the query time range in Unix milliseconds. + example: 1696118400000 + in: query + name: end + required: true + schema: + format: int64 + type: integer + CommitmentsFilterBy: + description: Optional filter expression to narrow down results. + in: query + name: filterBy + required: false + schema: + type: string + CommitmentsCommitmentType: + description: Type of commitment to query. ri for Reserved Instances, sp for Savings Plans. Defaults to ri. + in: query + name: commitmentType + required: false + schema: + $ref: '#/components/schemas/CommitmentsCommitmentType' FileID: description: File ID. in: path @@ -2243,223 +10391,1039 @@ components: required: true schema: type: string + TagKey: + description: The Cloud Cost Management tag key. Tag keys can contain forward slashes (for example, `kubernetes/instance`). + in: path + name: tag_key + required: true + schema: + type: string x-stackQL-resources: + account_filters: + id: datadog.cloud_costs.account_filters + name: account_filters + title: Account Filters + methods: + get_cost_account_filters: + operation: + $ref: '#/paths/~1api~1v2~1cost~1account_filters~1{cloud_account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_cost_account_filters: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1account_filters~1{cloud_account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/account_filters/methods/get_cost_account_filters' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/account_filters/methods/update_cost_account_filters' + delete: [] + replace: [] + anomalies: + id: datadog.cloud_costs.anomalies + name: anomalies + title: Anomalies + methods: + list_cost_anomalies: + operation: + $ref: '#/paths/~1api~1v2~1cost~1anomalies/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + skip: + paramName: offset + get_cost_anomaly: + operation: + $ref: '#/paths/~1api~1v2~1cost~1anomalies~1{anomaly_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/anomalies/methods/get_cost_anomaly' + - $ref: '#/components/x-stackQL-resources/anomalies/methods/list_cost_anomalies' + insert: [] + update: [] + delete: [] + replace: [] + arbitrary_rules: + id: datadog.cloud_costs.arbitrary_rules + name: arbitrary_rules + title: Arbitrary Rules + methods: + list_custom_allocation_rules: + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_custom_allocation_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + reorder_custom_allocation_rules: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule~1reorder/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + delete_custom_allocation_rule: + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_custom_allocation_rule: + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_custom_allocation_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule~1{rule_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/arbitrary_rules/methods/get_custom_allocation_rule' + - $ref: '#/components/x-stackQL-resources/arbitrary_rules/methods/list_custom_allocation_rules' + insert: + - $ref: '#/components/x-stackQL-resources/arbitrary_rules/methods/create_custom_allocation_rule' + update: + - $ref: '#/components/x-stackQL-resources/arbitrary_rules/methods/update_custom_allocation_rule' + delete: + - $ref: '#/components/x-stackQL-resources/arbitrary_rules/methods/delete_custom_allocation_rule' + replace: [] + arbitrary_rule_statuses: + id: datadog.cloud_costs.arbitrary_rule_statuses + name: arbitrary_rule_statuses + title: Arbitrary Rule Statuses + methods: + list_custom_allocation_rules_status: + operation: + $ref: '#/paths/~1api~1v2~1cost~1arbitrary_rule~1status/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/arbitrary_rule_statuses/methods/list_custom_allocation_rules_status' + insert: [] + update: [] + delete: [] + replace: [] aws_configs: id: datadog.cloud_costs.aws_configs name: aws_configs title: Aws Configs methods: - list_cost_awscurconfigs: + list_cost_awscurconfigs: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_cost_awscurconfig: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_cost_awscurconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_cost_awscurconfig: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_configs/methods/list_cost_awscurconfigs' + insert: + - $ref: '#/components/x-stackQL-resources/aws_configs/methods/create_cost_awscurconfig' + update: + - $ref: '#/components/x-stackQL-resources/aws_configs/methods/update_cost_awscurconfig' + delete: + - $ref: '#/components/x-stackQL-resources/aws_configs/methods/delete_cost_awscurconfig' + replace: [] + aws_cur_configs: + id: datadog.cloud_costs.aws_cur_configs + name: aws_cur_configs + title: Aws Cur Configs + methods: + get_cost_awscurconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_cur_configs/methods/get_cost_awscurconfig' + insert: [] + update: [] + delete: [] + replace: [] + azure_configs: + id: datadog.cloud_costs.azure_configs + name: azure_configs + title: Azure Configs + methods: + list_cost_azure_ucconfigs: + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_cost_azure_ucconfigs: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_cost_azure_ucconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_cost_azure_ucconfigs: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/azure_configs/methods/list_cost_azure_ucconfigs' + insert: + - $ref: '#/components/x-stackQL-resources/azure_configs/methods/create_cost_azure_ucconfigs' + update: + - $ref: '#/components/x-stackQL-resources/azure_configs/methods/update_cost_azure_ucconfigs' + delete: + - $ref: '#/components/x-stackQL-resources/azure_configs/methods/delete_cost_azure_ucconfig' + replace: [] + azure_uc_configs: + id: datadog.cloud_costs.azure_uc_configs + name: azure_uc_configs + title: Azure Uc Configs + methods: + get_cost_azure_ucconfig: + operation: + $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/azure_uc_configs/methods/get_cost_azure_ucconfig' + insert: [] + update: [] + delete: [] + replace: [] + budgets: + id: datadog.cloud_costs.budgets + name: budgets + title: Budgets + methods: + upsert_budget: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_budget: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_budget: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_budget: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + list_budgets: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budgets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/budgets/methods/get_budget' + - $ref: '#/components/x-stackQL-resources/budgets/methods/list_budgets' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/budgets/methods/delete_budget' + replace: + - $ref: '#/components/x-stackQL-resources/budgets/methods/upsert_budget' + budget_csvs: + id: datadog.cloud_costs.budget_csvs + name: budget_csvs + title: Budget Csvs + methods: + validate_csv_budget: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1csv~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + budget_custom_forecasts: + id: datadog.cloud_costs.budget_custom_forecasts + name: budget_custom_forecasts + title: Budget Custom Forecasts + methods: + upsert_custom_forecast: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1custom-forecast/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_custom_forecast: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}~1custom-forecast/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_custom_forecast: + operation: + $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}~1custom-forecast/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/budget_custom_forecasts/methods/get_custom_forecast' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/budget_custom_forecasts/methods/delete_custom_forecast' + replace: + - $ref: '#/components/x-stackQL-resources/budget_custom_forecasts/methods/upsert_custom_forecast' + commitments: + id: datadog.cloud_costs.commitments + name: commitments + title: Commitments + methods: + get_commitments_commitment_list: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1commitment-list/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.commitments + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitments/methods/get_commitments_commitment_list' + insert: [] + update: [] + delete: [] + replace: [] + commitment_coverage_scalar: + id: datadog.cloud_costs.commitment_coverage_scalar + name: commitment_coverage_scalar + title: Commitment Coverage Scalar + methods: + get_commitments_coverage_scalar: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1coverage~1scalar/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.columns + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_coverage_scalar/methods/get_commitments_coverage_scalar' + insert: [] + update: [] + delete: [] + replace: [] + commitment_coverage_timeseries: + id: datadog.cloud_costs.commitment_coverage_timeseries + name: commitment_coverage_timeseries + title: Commitment Coverage Timeseries + methods: + get_commitments_coverage_timeseries: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1coverage~1timeseries/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_coverage_timeseries/methods/get_commitments_coverage_timeseries' + insert: [] + update: [] + delete: [] + replace: [] + commitment_on_demand_hot_spot_scalar: + id: datadog.cloud_costs.commitment_on_demand_hot_spot_scalar + name: commitment_on_demand_hot_spot_scalar + title: Commitment On Demand Hot Spot Scalar + methods: + get_commitments_on_demand_hotspots_scalar: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1on-demand-hot-spots~1scalar/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_on_demand_hot_spot_scalar/methods/get_commitments_on_demand_hotspots_scalar' + insert: [] + update: [] + delete: [] + replace: [] + commitment_saving_scalar: + id: datadog.cloud_costs.commitment_saving_scalar + name: commitment_saving_scalar + title: Commitment Saving Scalar + methods: + get_commitments_savings_scalar: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1savings~1scalar/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.columns + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_saving_scalar/methods/get_commitments_savings_scalar' + insert: [] + update: [] + delete: [] + replace: [] + commitment_saving_timeseries: + id: datadog.cloud_costs.commitment_saving_timeseries + name: commitment_saving_timeseries + title: Commitment Saving Timeseries + methods: + get_commitments_savings_timeseries: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1savings~1timeseries/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_saving_timeseries/methods/get_commitments_savings_timeseries' + insert: [] + update: [] + delete: [] + replace: [] + commitment_utilization_scalar: + id: datadog.cloud_costs.commitment_utilization_scalar + name: commitment_utilization_scalar + title: Commitment Utilization Scalar + methods: + get_commitments_utilization_scalar: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1utilization~1scalar/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_utilization_scalar/methods/get_commitments_utilization_scalar' + insert: [] + update: [] + delete: [] + replace: [] + commitment_utilization_timeseries: + id: datadog.cloud_costs.commitment_utilization_timeseries + name: commitment_utilization_timeseries + title: Commitment Utilization Timeseries + methods: + get_commitments_utilization_timeseries: + operation: + $ref: '#/paths/~1api~1v2~1cost~1commitments~1utilization~1timeseries/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/commitment_utilization_timeseries/methods/get_commitments_utilization_timeseries' + insert: [] + update: [] + delete: [] + replace: [] + costs_files: + id: datadog.cloud_costs.costs_files + name: costs_files + title: Costs Files + methods: + list_custom_costs_files: operation: - $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config/get' + $ref: '#/paths/~1api~1v2~1cost~1custom_costs/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_cost_awscurconfig: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + upload_custom_costs_file: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config/post' + $ref: '#/paths/~1api~1v2~1cost~1custom_costs/put' response: mediaType: application/json - openAPIDocKey: '200' - delete_cost_awscurconfig: + openAPIDocKey: '202' + request: + nativeCasing: camel + delete_custom_costs_file: operation: - $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/delete' + $ref: '#/paths/~1api~1v2~1cost~1custom_costs~1{file_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - update_cost_awscurconfig: + request: + nativeCasing: camel + get_custom_costs_file: operation: - $ref: '#/paths/~1api~1v2~1cost~1aws_cur_config~1{cloud_account_id}/patch' + $ref: '#/paths/~1api~1v2~1cost~1custom_costs~1{file_id}/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_configs/methods/list_cost_awscurconfigs - insert: - - $ref: >- - #/components/x-stackQL-resources/aws_configs/methods/create_cost_awscurconfig - update: - - $ref: >- - #/components/x-stackQL-resources/aws_configs/methods/update_cost_awscurconfig + - $ref: '#/components/x-stackQL-resources/costs_files/methods/get_custom_costs_file' + - $ref: '#/components/x-stackQL-resources/costs_files/methods/list_custom_costs_files' + insert: [] + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/aws_configs/methods/delete_cost_awscurconfig + - $ref: '#/components/x-stackQL-resources/costs_files/methods/delete_custom_costs_file' replace: [] - azure_configs: - id: datadog.cloud_costs.azure_configs - name: azure_configs - title: Azure Configs + gcp_configs: + id: datadog.cloud_costs.gcp_configs + name: gcp_configs + title: Gcp Configs methods: - list_cost_azure_ucconfigs: + list_cost_gcpusage_cost_configs: operation: - $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config/get' + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_cost_azure_ucconfigs: + request: + nativeCasing: camel + create_cost_gcpusage_cost_config: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config/post' + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config/post' response: mediaType: application/json openAPIDocKey: '200' - delete_cost_azure_ucconfig: + request: + nativeCasing: camel + delete_cost_gcpusage_cost_config: operation: - $ref: >- - #/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/delete + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - update_cost_azure_ucconfigs: + request: + nativeCasing: camel + update_cost_gcpusage_cost_config: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cost~1azure_uc_config~1{cloud_account_id}/patch' + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/azure_configs/methods/list_cost_azure_ucconfigs + - $ref: '#/components/x-stackQL-resources/gcp_configs/methods/list_cost_gcpusage_cost_configs' insert: - - $ref: >- - #/components/x-stackQL-resources/azure_configs/methods/create_cost_azure_ucconfigs + - $ref: '#/components/x-stackQL-resources/gcp_configs/methods/create_cost_gcpusage_cost_config' update: - - $ref: >- - #/components/x-stackQL-resources/azure_configs/methods/update_cost_azure_ucconfigs + - $ref: '#/components/x-stackQL-resources/gcp_configs/methods/update_cost_gcpusage_cost_config' delete: - - $ref: >- - #/components/x-stackQL-resources/azure_configs/methods/delete_cost_azure_ucconfig + - $ref: '#/components/x-stackQL-resources/gcp_configs/methods/delete_cost_gcpusage_cost_config' replace: [] - budgets: - id: datadog.cloud_costs.budgets - name: budgets - title: Budgets + gcp_uc_configs: + id: datadog.cloud_costs.gcp_uc_configs + name: gcp_uc_configs + title: Gcp Uc Configs methods: - upsert_budget: + get_cost_gcpusage_cost_config: operation: - $ref: '#/paths/~1api~1v2~1cost~1budget/put' + $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/get' response: mediaType: application/json openAPIDocKey: '200' - delete_budget: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/gcp_uc_configs/methods/get_cost_gcpusage_cost_config' + insert: [] + update: [] + delete: [] + replace: [] + oci_configs: + id: datadog.cloud_costs.oci_configs + name: oci_configs + title: Oci Configs + methods: + list_cost_ociconfigs: operation: - $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}/delete' + $ref: '#/paths/~1api~1v2~1cost~1oci_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/oci_configs/methods/list_cost_ociconfigs' + insert: [] + update: [] + delete: [] + replace: [] + recommendations: + id: datadog.cloud_costs.recommendations + name: recommendations + title: Recommendations + methods: + search_cost_recommendations: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cost~1recommendations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/recommendations/methods/search_cost_recommendations' + update: [] + delete: [] + replace: [] + tag_descriptions: + id: datadog.cloud_costs.tag_descriptions + name: tag_descriptions + title: Tag Descriptions + methods: + list_cost_tag_descriptions: + operation: + $ref: '#/paths/~1api~1v2~1cost~1tag_descriptions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + delete_cost_tag_description_by_key: + operation: + $ref: '#/paths/~1api~1v2~1cost~1tag_descriptions~1{tag_key}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_budget: + request: + nativeCasing: camel + get_cost_tag_description_by_key: operation: - $ref: '#/paths/~1api~1v2~1cost~1budget~1{budget_id}/get' + $ref: '#/paths/~1api~1v2~1cost~1tag_descriptions~1{tag_key}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - list_budgets: + request: + nativeCasing: camel + upsert_cost_tag_description_by_key: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cost~1budgets/get' + $ref: '#/paths/~1api~1v2~1cost~1tag_descriptions~1{tag_key}/put' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + generate_cost_tag_description_by_key: + operation: + $ref: '#/paths/~1api~1v2~1cost~1tag_descriptions~1{tag_key}~1generate/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/budgets/methods/get_budget' - - $ref: '#/components/x-stackQL-resources/budgets/methods/list_budgets' + - $ref: '#/components/x-stackQL-resources/tag_descriptions/methods/get_cost_tag_description_by_key' + - $ref: '#/components/x-stackQL-resources/tag_descriptions/methods/list_cost_tag_descriptions' insert: [] update: [] delete: - - $ref: '#/components/x-stackQL-resources/budgets/methods/delete_budget' + - $ref: '#/components/x-stackQL-resources/tag_descriptions/methods/delete_cost_tag_description_by_key' replace: - - $ref: '#/components/x-stackQL-resources/budgets/methods/upsert_budget' - costs_files: - id: datadog.cloud_costs.costs_files - name: costs_files - title: Costs Files + - $ref: '#/components/x-stackQL-resources/tag_descriptions/methods/upsert_cost_tag_description_by_key' + tag_keys: + id: datadog.cloud_costs.tag_keys + name: tag_keys + title: Tag Keys methods: - list_custom_costs_files: + list_cost_tag_keys: operation: - $ref: '#/paths/~1api~1v2~1cost~1custom_costs/get' + $ref: '#/paths/~1api~1v2~1cost~1tag_keys/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - upload_custom_costs_file: + request: + nativeCasing: camel + get_cost_tag_key: operation: - $ref: '#/paths/~1api~1v2~1cost~1custom_costs/put' + $ref: '#/paths/~1api~1v2~1cost~1tag_keys~1{tag_key}/get' response: mediaType: application/json - openAPIDocKey: '202' - delete_custom_costs_file: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 10000 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_keys/methods/get_cost_tag_key' + - $ref: '#/components/x-stackQL-resources/tag_keys/methods/list_cost_tag_keys' + insert: [] + update: [] + delete: [] + replace: [] + tag_metadata: + id: datadog.cloud_costs.tag_metadata + name: tag_metadata + title: Tag Metadata + methods: + list_cost_tag_metadata: operation: - $ref: '#/paths/~1api~1v2~1cost~1custom_costs~1{file_id}/delete' + $ref: '#/paths/~1api~1v2~1cost~1tag_metadata/get' response: mediaType: application/json - openAPIDocKey: '204' - get_custom_costs_file: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_metadata/methods/list_cost_tag_metadata' + insert: [] + update: [] + delete: [] + replace: [] + tag_metadatum_currencies: + id: datadog.cloud_costs.tag_metadatum_currencies + name: tag_metadatum_currencies + title: Tag Metadatum Currencies + methods: + get_cost_tag_metadata_currency: operation: - $ref: '#/paths/~1api~1v2~1cost~1custom_costs~1{file_id}/get' + $ref: '#/paths/~1api~1v2~1cost~1tag_metadata~1currency/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/costs_files/methods/get_custom_costs_file - - $ref: >- - #/components/x-stackQL-resources/costs_files/methods/list_custom_costs_files + - $ref: '#/components/x-stackQL-resources/tag_metadatum_currencies/methods/get_cost_tag_metadata_currency' insert: [] update: [] - delete: - - $ref: >- - #/components/x-stackQL-resources/costs_files/methods/delete_custom_costs_file + delete: [] replace: [] - gcp_configs: - id: datadog.cloud_costs.gcp_configs - name: gcp_configs - title: Gcp Configs + tag_metadatum_metrics: + id: datadog.cloud_costs.tag_metadatum_metrics + name: tag_metadatum_metrics + title: Tag Metadatum Metrics methods: - list_cost_gcpusage_cost_configs: + list_cost_tag_metadata_metrics: operation: - $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config/get' + $ref: '#/paths/~1api~1v2~1cost~1tag_metadata~1metrics/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_cost_gcpusage_cost_config: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_metadatum_metrics/methods/list_cost_tag_metadata_metrics' + insert: [] + update: [] + delete: [] + replace: [] + tag_metadatum_months: + id: datadog.cloud_costs.tag_metadatum_months + name: tag_metadatum_months + title: Tag Metadatum Months + methods: + list_cost_tag_metadata_months: operation: - $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config/post' + $ref: '#/paths/~1api~1v2~1cost~1tag_metadata~1months/get' response: mediaType: application/json openAPIDocKey: '200' - delete_cost_gcpusage_cost_config: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_metadatum_months/methods/list_cost_tag_metadata_months' + insert: [] + update: [] + delete: [] + replace: [] + tag_metadatum_orchestrators: + id: datadog.cloud_costs.tag_metadatum_orchestrators + name: tag_metadatum_orchestrators + title: Tag Metadatum Orchestrators + methods: + list_cost_tag_metadata_orchestrators: operation: - $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/delete' + $ref: '#/paths/~1api~1v2~1cost~1tag_metadata~1orchestrators/get' response: mediaType: application/json - openAPIDocKey: '204' - update_cost_gcpusage_cost_config: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_metadatum_orchestrators/methods/list_cost_tag_metadata_orchestrators' + insert: [] + update: [] + delete: [] + replace: [] + tag_metadatum_tag_sources: + id: datadog.cloud_costs.tag_metadatum_tag_sources + name: tag_metadatum_tag_sources + title: Tag Metadatum Tag Sources + methods: + list_cost_tag_key_sources: operation: - $ref: '#/paths/~1api~1v2~1cost~1gcp_uc_config~1{cloud_account_id}/patch' + $ref: '#/paths/~1api~1v2~1cost~1tag_metadata~1tag_sources/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/gcp_configs/methods/list_cost_gcpusage_cost_configs - insert: - - $ref: >- - #/components/x-stackQL-resources/gcp_configs/methods/create_cost_gcpusage_cost_config - update: - - $ref: >- - #/components/x-stackQL-resources/gcp_configs/methods/update_cost_gcpusage_cost_config - delete: - - $ref: >- - #/components/x-stackQL-resources/gcp_configs/methods/delete_cost_gcpusage_cost_config + - $ref: '#/components/x-stackQL-resources/tag_metadatum_tag_sources/methods/list_cost_tag_key_sources' + insert: [] + update: [] + delete: [] + replace: [] + tags: + id: datadog.cloud_costs.tags + name: tags + title: Tags + methods: + list_cost_tags: + operation: + $ref: '#/paths/~1api~1v2~1cost~1tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 10000 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tags/methods/list_cost_tags' + insert: [] + update: [] + delete: [] replace: [] active_billing_dimensions: id: datadog.cloud_costs.active_billing_dimensions @@ -2470,13 +11434,14 @@ components: operation: $ref: '#/paths/~1api~1v2~1cost_by_tag~1active_billing_dimensions/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/active_billing_dimensions/methods/get_active_billing_dimensions + - $ref: '#/components/x-stackQL-resources/active_billing_dimensions/methods/get_active_billing_dimensions' insert: [] update: [] delete: [] @@ -2490,20 +11455,129 @@ components: operation: $ref: '#/paths/~1api~1v2~1cost_by_tag~1monthly_cost_attribution/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monthly_cost_attribution/methods/get_monthly_cost_attribution' + insert: [] + update: [] + delete: [] + replace: [] + tag_pipeline_rulesets: + id: datadog.cloud_costs.tag_pipeline_rulesets + name: tag_pipeline_rulesets + title: Tag Pipeline Rulesets + methods: + list_tag_pipelines_rulesets: + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_tag_pipelines_ruleset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + reorder_tag_pipelines_rulesets: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment~1reorder/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + validate_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment~1validate-query/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_tag_pipelines_ruleset: + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment~1{ruleset_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_tag_pipelines_ruleset: + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment~1{ruleset_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_tag_pipelines_ruleset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment~1{ruleset_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_pipeline_rulesets/methods/get_tag_pipelines_ruleset' + - $ref: '#/components/x-stackQL-resources/tag_pipeline_rulesets/methods/list_tag_pipelines_rulesets' + insert: + - $ref: '#/components/x-stackQL-resources/tag_pipeline_rulesets/methods/create_tag_pipelines_ruleset' + update: + - $ref: '#/components/x-stackQL-resources/tag_pipeline_rulesets/methods/update_tag_pipelines_ruleset' + delete: + - $ref: '#/components/x-stackQL-resources/tag_pipeline_rulesets/methods/delete_tag_pipelines_ruleset' + replace: [] + tag_pipeline_ruleset_statuses: + id: datadog.cloud_costs.tag_pipeline_ruleset_statuses + name: tag_pipeline_ruleset_statuses + title: Tag Pipeline Ruleset Statuses + methods: + list_tag_pipelines_rulesets_status: + operation: + $ref: '#/paths/~1api~1v2~1tags~1enrichment~1status/get' + response: + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/monthly_cost_attribution/methods/get_monthly_cost_attribution + - $ref: '#/components/x-stackQL-resources/tag_pipeline_ruleset_statuses/methods/list_tag_pipelines_rulesets_status' insert: [] update: [] delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/dashboards.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/dashboards.yaml index 681b9ca..41bd24f 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/dashboards.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/dashboards.yaml @@ -1,9 +1,370 @@ openapi: 3.0.0 info: title: dashboards API - description: datadog dashboards API + description: |- + Get usage statistics for the dashboards in your organization, including view + counts, last-edit times, widget counts, and quality scores. See the + [Dashboards documentation](https://docs.datadoghq.com/dashboards/) for more + information. version: '1.0' paths: + /api/v2/annotation: + get: + description: Returns a flat list of annotations matching the given page, time window, and optional widget filter. + operationId: ListAnnotations + parameters: + - description: |- + ID of the page to list annotations for, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: dashboard:abc-def-xyz + in: query + name: page_id + required: true + schema: + type: string + - $ref: '#/components/parameters/AnnotationStartTimeQueryParameter' + - $ref: '#/components/parameters/AnnotationEndTimeQueryParameter' + - description: Optional widget ID to restrict results to annotations on a specific widget. + in: query + name: widget_id + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + author_id: 00000000-0000-0000-0000-000000000001 + color: blue + created_at: 1704067200000 + description: Deployed v2.3.1 to production. + end_time: null + modified_at: 1704067200000 + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + id: 00000000-0000-0000-0000-000000000000 + type: annotation + schema: + $ref: '#/components/schemas/AnnotationsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List annotations + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Creates a new annotation on a dashboard or notebook page. + Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`. + Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`). + operationId: CreateAnnotation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + color: blue + description: Deployed v2.3.1 to production. + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + type: annotation + schema: + $ref: '#/components/schemas/AnnotationCreateRequest' + description: Annotation to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author_id: 00000000-0000-0000-0000-000000000001 + color: blue + created_at: 1704067200000 + description: Deployed v2.3.1 to production. + end_time: null + modified_at: 1704067200000 + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + id: 00000000-0000-0000-0000-000000000000 + type: annotation + schema: + $ref: '#/components/schemas/AnnotationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an annotation + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/annotation/page/{page_id}: + get: + description: |- + Returns all annotations on a specific page for a given time window, grouped by widget. + Unlike `ListAnnotations`, this endpoint returns a single structured object with annotations + indexed by their ID and a widget-to-annotation mapping for easy UI rendering. + operationId: GetPageAnnotations + parameters: + - $ref: '#/components/parameters/AnnotationPageIDPathParameter' + - $ref: '#/components/parameters/AnnotationStartTimeQueryParameter' + - $ref: '#/components/parameters/AnnotationEndTimeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotations: + 00000000-0000-0000-0000-000000000000: + author_id: 00000000-0000-0000-0000-000000000001 + color: blue + created_at: 1704067200000 + description: Deployed v2.3.1 to production. + end_time: null + id: 00000000-0000-0000-0000-000000000000 + modified_at: 1704067200000 + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + global_annotations: + - 00000000-0000-0000-0000-000000000002 + widget_mapping: + '1234567890': + - 00000000-0000-0000-0000-000000000000 + id: dashboard:abc-def-xyz + type: page_annotations + schema: + $ref: '#/components/schemas/PageAnnotationsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotations for a page + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/annotation/{annotation_id}: + delete: + description: |- + Deletes an existing annotation by ID. + Returns `204 No Content` if the annotation does not exist (idempotent). + operationId: DeleteAnnotation + parameters: + - $ref: '#/components/parameters/AnnotationIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an annotation + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Updates an existing annotation. + Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`. + Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`). + operationId: UpdateAnnotation + parameters: + - $ref: '#/components/parameters/AnnotationIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + color: green + description: Deployed v2.3.1 to production (updated). + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + type: annotation + schema: + $ref: '#/components/schemas/AnnotationUpdateRequest' + description: Updated annotation payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author_id: 00000000-0000-0000-0000-000000000001 + color: green + created_at: 1704067200000 + description: Deployed v2.3.1 to production (updated). + end_time: null + modified_at: 1704070800000 + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + id: 00000000-0000-0000-0000-000000000000 + type: annotation + schema: + $ref: '#/components/schemas/AnnotationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an annotation + tags: + - Annotations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards: delete: description: Delete dashboards from an existing dashboard list. @@ -19,6 +380,12 @@ paths: requestBody: content: application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard schema: $ref: '#/components/schemas/DashboardListDeleteItemsRequest' description: Dashboards to delete from the dashboard list. @@ -27,6 +394,12 @@ paths: '200': content: application/json: + examples: + default: + value: + deleted_dashboards_from_list: + - id: q5j-nti-fv6 + type: host_timeboard schema: $ref: '#/components/schemas/DashboardListDeleteItemsResponse' description: OK @@ -69,6 +442,13 @@ paths: '200': content: application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard + total: 1 schema: $ref: '#/components/schemas/DashboardListItems' description: OK @@ -112,6 +492,12 @@ paths: requestBody: content: application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard schema: $ref: '#/components/schemas/DashboardListAddItemsRequest' description: Dashboards to add to the dashboard list. @@ -120,6 +506,12 @@ paths: '200': content: application/json: + examples: + default: + value: + added_dashboards_to_list: + - id: q5j-nti-fv6 + type: host_timeboard schema: $ref: '#/components/schemas/DashboardListAddItemsResponse' description: OK @@ -161,6 +553,12 @@ paths: requestBody: content: application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard schema: $ref: '#/components/schemas/DashboardListUpdateItemsRequest' description: New dashboards of the dashboard list. @@ -169,6 +567,12 @@ paths: '200': content: application/json: + examples: + default: + value: + dashboards: + - id: q5j-nti-fv6 + type: host_timeboard schema: $ref: '#/components/schemas/DashboardListUpdateItemsResponse' description: OK @@ -196,29 +600,78 @@ paths: tags: - Dashboard Lists x-codegen-request-body-name: body - /api/v2/powerpacks: + /api/v2/dashboard/{dashboard_id}/shared: get: - description: Get a list of all powerpacks. - operationId: ListPowerpacks + description: Retrieve shared dashboards associated with the specified dashboard. + operationId: ListSharedDashboardsByDashboardId parameters: - - description: Maximum number of powerpacks in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 25 - format: int64 - maximum: 1000 - type: integer - - $ref: '#/components/parameters/PageOffset' + - $ref: '#/components/parameters/SharedDashboardDashboardIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2026-01-01T00:00:00.000Z' + embeddable_domains: [] + expiration: null + global_time: + live_span: 1h + global_time_selectable: false + invitees: + - access_expiration: null + created_at: '2026-01-01T00:00:00.000Z' + email: jane.doe@example.com + last_accessed: null + selectable_template_vars: [] + share_type: invite + sharer_disabled: false + status: active + title: Q1 Metrics Dashboard + token: abc-123-token + url: https://p.datadoghq.com/sb/abc-123-token + viewing_preferences: + high_density: false + theme: system + id: '12345' + relationships: + dashboard: + data: + id: abc-def-ghi + type: dashboard + sharer: + data: + id: 00000000-0000-0000-0000-000000000000 + type: user + type: shared_dashboard + included: + - attributes: + title: Q1 Metrics Dashboard + id: abc-def-ghi + type: dashboard + - attributes: + handle: jane.doe@example.com + name: Jane Doe + id: 00000000-0000-0000-0000-000000000000 + type: user schema: - $ref: '#/components/schemas/ListPowerpacksResponse' + $ref: '#/components/schemas/ListSharedDashboardsResponse' description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Dashboard Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -226,112 +679,185 @@ paths: appKeyAuth: [] - AuthZ: - dashboards_read - summary: Get all powerpacks + summary: List shared dashboards for a dashboard tags: - - Powerpack - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data + - Dashboard Sharing x-permission: operator: OR permissions: - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboard/{dashboard_id}/shared/secure-embed: post: - description: Create a powerpack. - operationId: CreatePowerpack + description: Create a secure embed share for a dashboard. The response includes a one-time `credential` used for HMAC-SHA256 signing. Store it securely — it cannot be retrieved again. + operationId: CreateDashboardSecureEmbed + parameters: + - $ref: '#/components/parameters/DashboardIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + global_time: + live_span: 1h + global_time_selectable: true + selectable_template_vars: + - default_values: + - '1' + name: org_id + prefix: org_id + visible_tags: + - '1' + status: active + title: Q1 Metrics Dashboard + viewing_preferences: + high_density: false + theme: system + type: secure_embed_request schema: - $ref: '#/components/schemas/Powerpack' - description: Create a powerpack request body. + $ref: '#/components/schemas/SecureEmbedCreateRequest' + description: Secure embed creation request body. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + credential: example-credential-value + dashboard_id: abc-def-ghi + global_time_selectable: true + id: '12345' + share_type: secure_embed + status: active + title: Q1 Metrics Dashboard + token: abc-123-token + url: https://p.datadoghq.com/sb/secure-embed/abc-123-token + id: '12345' + type: secure_embed_create_response schema: - $ref: '#/components/schemas/PowerpackResponse' + $ref: '#/components/schemas/SecureEmbedCreateResponse' description: OK - '400': + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Dashboard Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict — max 1000 share URLs per dashboard exceeded '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - dashboards_write - summary: Create a new powerpack + - dashboards_embed_share + summary: Create a secure embed for a dashboard tags: - - Powerpack + - Dashboard Secure Embed x-codegen-request-body-name: body x-permission: operator: OR permissions: - - dashboards_write - /api/v2/powerpacks/{powerpack_id}: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboard/{dashboard_id}/shared/secure-embed/{token}: delete: - description: Delete a powerpack. - operationId: DeletePowerpack + description: Delete a secure embed share for a dashboard. + operationId: DeleteDashboardSecureEmbed parameters: - - description: Powerpack id - in: path - name: powerpack_id - required: true - schema: - type: string + - $ref: '#/components/parameters/DashboardIDPathParameter' + - $ref: '#/components/parameters/SecureEmbedTokenPathParameter' responses: '204': - description: OK + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - dashboards_write - summary: Delete a powerpack + - dashboards_embed_share + summary: Delete a secure embed for a dashboard tags: - - Powerpack + - Dashboard Secure Embed x-permission: operator: OR permissions: - - dashboards_write + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Get a powerpack. - operationId: GetPowerpack + description: Retrieve an existing secure embed configuration for a dashboard. + operationId: GetDashboardSecureEmbed parameters: - - description: ID of the powerpack. - in: path - name: powerpack_id - required: true - schema: - type: string + - $ref: '#/components/parameters/DashboardIDPathParameter' + - $ref: '#/components/parameters/SecureEmbedTokenPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + credential_suffix: ab3f + dashboard_id: abc-def-ghi + global_time_selectable: true + id: '12345' + share_type: secure_embed + status: active + title: Q1 Metrics Dashboard + token: abc-123-token + url: https://p.datadoghq.com/sb/secure-embed/abc-123-token + id: '12345' + type: secure_embed_get_response schema: - $ref: '#/components/schemas/PowerpackResponse' + $ref: '#/components/schemas/SecureEmbedGetResponse' description: OK '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -339,43 +865,445 @@ paths: appKeyAuth: [] - AuthZ: - dashboards_read - summary: Get a Powerpack + summary: Get a secure embed for a dashboard tags: - - Powerpack + - Dashboard Secure Embed x-permission: operator: OR permissions: - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). patch: - description: Update a powerpack. - operationId: UpdatePowerpack + description: Partially update a secure embed configuration. All fields are optional (PATCH semantics). + operationId: UpdateDashboardSecureEmbed parameters: - - description: ID of the powerpack. - in: path - name: powerpack_id - required: true - schema: - type: string + - $ref: '#/components/parameters/DashboardIDPathParameter' + - $ref: '#/components/parameters/SecureEmbedTokenPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + status: active + title: Q1 Metrics Dashboard (Updated) + type: secure_embed_update_request schema: - $ref: '#/components/schemas/Powerpack' - description: Update a powerpack request body. + $ref: '#/components/schemas/SecureEmbedUpdateRequest' + description: Secure embed update request body. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + credential_suffix: ab3f + dashboard_id: abc-def-ghi + global_time_selectable: true + id: '12345' + share_type: secure_embed + status: active + title: Q1 Metrics Dashboard (Updated) + token: abc-123-token + url: https://p.datadoghq.com/sb/secure-embed/abc-123-token + id: '12345' + type: secure_embed_update_response schema: - $ref: '#/components/schemas/PowerpackResponse' + $ref: '#/components/schemas/SecureEmbedUpdateResponse' description: OK - '400': + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_embed_share + summary: Update a secure embed for a dashboard + tags: + - Dashboard Secure Embed + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_embed_share + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboards/usage: + get: + description: Get paginated usage statistics for every dashboard in the caller's organization. Use `page[limit]` and `page[offset]` to walk the result set. Use `filter[edited_before]` or `filter[viewed_before]` to narrow results by edit or view date. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included. + operationId: ListDashboardsUsage + parameters: + - description: Maximum number of dashboards to return per page. Server-side maximum is 500; values above 500 return a 400 Bad Request. + in: query + name: page[limit] + required: false + schema: + default: 250 + format: int64 + type: integer + - description: Zero-based offset into the result set. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Return only dashboards whose last edit (`edited_at`) is strictly before this ISO 8601 timestamp (`edited_at < value`; boundary matches are excluded). Must include a timezone offset (for example, `Z` or `+00:00`); naive timestamps return HTTP 400. + in: query + name: filter[edited_before] + required: false + schema: + example: '2025-04-26T00:00:00Z' + type: string + - description: Return only dashboards whose most recent view (`viewed_at`) is strictly before this ISO 8601 timestamp, including dashboards that have never been viewed. Must include a timezone offset; naive timestamps return HTTP 400. Orgs without Real User Monitoring (RUM) will see all dashboards returned by this filter. + in: query + name: filter[viewed_before] + required: false + schema: + example: '2025-04-26T00:00:00Z' + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: + handle: jane.doe@example.com + id: 00000000-0000-0000-0000-000000000000 + is_disabled: false + name: Jane Doe + created_at: '2026-01-15T09:30:00.000Z' + dashboard_quality_score: 0.85 + edited_at: '2026-04-20T11:05:00.000Z' + org_id: 100 + teams: + - sre + title: My production overview + total_views: 42 + total_views_by_type: + embed: 12 + in_app: 30 + viewed_at: '2026-05-01T14:22:10.000Z' + viewer: + handle: john.smith@example.com + id: 00000000-0000-0000-0000-000000000001 + is_disabled: false + name: John Smith + widget_count: 12 + widget_count_by_type: + query_value: 4 + timeseries: 8 + id: q5j-nti-fv6 + type: dashboards-usages + links: + first: https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=0&page[limit]=250 + last: https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=1000&page[limit]=250 + next: https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=250&page[limit]=250 + self: https://api.datadoghq.com/api/v2/dashboards/usage + meta: + page: + first_offset: 0 + last_offset: 1000 + limit: 250 + next_offset: 250 + offset: 0 + prev_offset: null + total: 1234 + type: offset_limit + schema: + $ref: '#/components/schemas/ListDashboardsUsageResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get usage stats for all dashboards + tags: + - Dashboards + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-permission: + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dashboards/{dashboard_id}/usage: + get: + description: Get usage statistics for a single dashboard. The response includes view counts, the most recent view and edit times, widget counts, and the dashboard quality score. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included. + operationId: GetDashboardUsage + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + example: q5j-nti-fv6 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: + handle: jane.doe + id: 00000000-0000-0000-0000-000000000000 + is_disabled: false + name: Jane Doe + created_at: '2026-01-15T09:30:00.000Z' + dashboard_quality_score: 0.85 + edited_at: '2026-04-20T11:05:00.000Z' + org_id: 100 + teams: + - sre + title: My production overview + total_views: 42 + total_views_by_type: + embed: 12 + in_app: 30 + viewed_at: '2026-05-01T14:22:10.000Z' + viewer: + handle: john.smith + id: 00000000-0000-0000-0000-000000000001 + is_disabled: false + name: John Smith + widget_count: 12 + widget_count_by_type: + query_value: 4 + timeseries: 8 + id: q5j-nti-fv6 + type: dashboards-usages + schema: + $ref: '#/components/schemas/DashboardUsageResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get usage stats for a dashboard + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/powerpacks: + get: + description: Get a list of all powerpacks. + operationId: ListPowerpacks + parameters: + - description: Maximum number of powerpacks in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 25 + format: int64 + maximum: 1000 + type: integer + - $ref: '#/components/parameters/PageOffset' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + 'y': 0 + name: Sample Powerpack + tags: + - tag:foo1 + id: 00000000-0000-0000-0000-000000000001 + type: powerpack + schema: + $ref: '#/components/schemas/ListPowerpacksResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get all powerpacks + tags: + - Powerpack + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-permission: + operator: OR + permissions: + - dashboards_read + post: + description: Create a powerpack. + operationId: CreatePowerpack + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + show_title: true + title: Sample Powerpack + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + 'y': 0 + layout: + height: 0 + width: 0 + x: 0 + 'y': 0 + live_span: 5m + name: Sample Powerpack + tags: + - tag:foo1 + template_variables: + - defaults: + - '*' + name: test + relationships: + author: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + type: powerpack + schema: + $ref: '#/components/schemas/Powerpack' + description: Create a powerpack request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000002 + type: powerpack + schema: + $ref: '#/components/schemas/PowerpackResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Create a new powerpack + tags: + - Powerpack + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + /api/v2/powerpacks/{powerpack_id}: + delete: + description: Delete a powerpack. + operationId: DeletePowerpack + parameters: + - description: Powerpack id + in: path + name: powerpack_id + required: true + schema: + type: string + responses: + '204': + description: OK '404': content: application/json: @@ -389,790 +1317,18413 @@ paths: appKeyAuth: [] - AuthZ: - dashboards_write - summary: Update a powerpack + summary: Delete a powerpack tags: - Powerpack - x-codegen-request-body-name: body x-permission: operator: OR permissions: - dashboards_write -components: - schemas: - DashboardListDeleteItemsRequest: - description: Request containing a list of dashboards to delete. - properties: - dashboards: - description: List of dashboards to delete from the dashboard list. + get: + description: Get a powerpack. + operationId: GetPowerpack + parameters: + - description: ID of the powerpack. + in: path + name: powerpack_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + 'y': 0 + name: Sample Powerpack + tags: + - tag:foo1 + id: 00000000-0000-0000-0000-000000000003 + type: powerpack + schema: + $ref: '#/components/schemas/PowerpackResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Powerpack Not Found. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a Powerpack + tags: + - Powerpack + x-permission: + operator: OR + permissions: + - dashboards_read + patch: + description: Update a powerpack. + operationId: UpdatePowerpack + parameters: + - description: ID of the powerpack. + in: path + name: powerpack_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + show_title: true + title: Sample Powerpack + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + 'y': 0 + layout: + height: 0 + width: 0 + x: 0 + 'y': 0 + live_span: 5m + name: Sample Powerpack + tags: + - tag:foo1 + template_variables: + - defaults: + - '*' + name: test + relationships: + author: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + type: powerpack + schema: + $ref: '#/components/schemas/Powerpack' + description: Update a powerpack request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Powerpack for ABC + group_widget: + definition: + layout_type: ordered + type: group + widgets: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + 'y': 0 + name: Sample Powerpack + tags: + - tag:foo1 + id: 00000000-0000-0000-0000-000000000004 + type: powerpack + schema: + $ref: '#/components/schemas/PowerpackResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Powerpack Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Update a powerpack + tags: + - Powerpack + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + /api/v2/reporting/dataset/{dataset_id}/schedules: + get: + description: |- + Retrieve all report schedules for a given published dataset. + Returns report schedules belonging to the authenticated user's organization that target the specified dataset. + Requires the `generate_log_reports` or `manage_log_reports` permission. + operationId: ListDatasetReportSchedules + parameters: + - description: The identifier of the published dataset to retrieve report schedules for. + example: MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm + in: path + name: dataset_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cell_id: sevhjcis + dataset_id: MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm + description: This is a scheduled notebook dataset report. + file_row_limit: 5000 + inline_row_limit: 10 + next_recurrence: 1725859200000 + notebook_id: 1 + recipients: + - test@datadoghq.com + resource_id: aaaabbbb-1111-2222-3333-444455556666 + resource_type: widget_dataset_list + rrule: |- + DTSTART;TZID=America/New_York:20240912T090000 + RRULE:FREQ=DAILY;BYHOUR=9;BYMINUTE=0 + status: active + timeframe: calendar_day + timezone: America/New_York + title: My Cool Dataset Report + id: e1234567-1234-1234-1234-123456789012 + relationships: + author: + data: + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/DatasetReportScheduleListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List dataset report schedules + tags: + - Report Schedules + /api/v2/reporting/print: + post: + description: |- + Initiate a one-off, print-only report for a dashboard or integration dashboard. + The report is rendered as a PDF and made available for download through the URL returned in the response. + Requires a reporting permission appropriate to the targeted resource type. + operationId: PrintReport + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource_id: abc-def-ghi + resource_type: dashboard + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + type: report + schema: + $ref: '#/components/schemas/PrintReportRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + download_url: https://app.datadoghq.com/... + from_ts: 1780318800000 + resource_id: abc-def-ghi + resource_type: dashboard + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + to_ts: 1780923600000 + id: 11111111-2222-3333-4444-555555555555 + type: report + schema: + $ref: '#/components/schemas/PrintReportResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Print a report + tags: + - Report Schedules + x-codegen-request-body-name: body + /api/v2/reporting/schedule: + post: + description: |- + Create a new scheduled report. A schedule renders a dashboard or integration dashboard + on a recurring cadence and delivers it to the configured recipients over email, Slack, + or Microsoft Teams. + Requires the `generate_dashboard_reports` permission. + operationId: CreateReportSchedule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + recipients: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + type: schedule + schema: + $ref: '#/components/schemas/ReportScheduleCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: active + tab_id: 66666666-7777-8888-9999-000000000000 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + relationships: + author: + data: + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/ReportScheduleResponse' + description: CREATED + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a report schedule + tags: + - Report Schedules + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/reporting/schedule/list: + get: + description: |- + List dashboard and integration dashboard report schedules for the organization. + The response is paginated and can be filtered by title, author UUID, or recipients. + Requires the `generate_dashboard_reports` permission. + operationId: ListReportSchedules + parameters: + - description: The maximum number of schedules to return. The maximum value is 50. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 25 + format: int64 + maximum: 50 + minimum: 1 + type: integer + - description: The offset from which to start returning schedules. + example: 0 + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Filter schedules by report title. + example: Weekly + in: query + name: filter[title] + required: false + schema: + type: string + - description: Filter schedules by author UUID. + example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + in: query + name: filter[author_uuid] + required: false + schema: + format: uuid + type: string + - description: Filter schedules by a comma-separated list of recipients. + example: user@example.com,team@example.com + in: query + name: filter[recipients] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: active + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + relationships: + author: + data: + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + resource: + data: + id: abc-def-ghi + type: resource + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + - attributes: + resource_type: dashboard + template_variables: + - available_values: + - prod + - staging + defaults: + - prod + name: env + prefix: env + title: Infrastructure Overview + id: abc-def-ghi + type: resource + links: + first: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25 + last: null + next: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=25&page[limit]=25 + prev: null + self: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[limit]=25 + meta: + pagination: + first_offset: 0 + last_offset: 0 + limit: 25 + next_offset: 25 + offset: 0 + prev_offset: 0 + total: 1 + type: offset_limit + schema: + $ref: '#/components/schemas/ReportScheduleListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List report schedules + tags: + - Report Schedules + /api/v2/reporting/schedule/{resource_type}/{resource_id}: + get: + description: |- + Get all report schedules that target a dashboard or integration dashboard resource. + Requires a reporting read permission appropriate to the targeted resource type. + operationId: GetReportSchedulesForResource + parameters: + - description: The type of resource to fetch report schedules for. + example: dashboard + in: path + name: resource_type + required: true + schema: + $ref: '#/components/schemas/ReportScheduleResourceType' + - description: The identifier of the resource to fetch report schedules for. + example: abc-def-ghi + in: path + name: resource_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: active + tab_id: 66666666-7777-8888-9999-000000000000 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/ReportScheduleListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get report schedules for a resource + tags: + - Report Schedules + /api/v2/reporting/schedule/{schedule_uuid}: + delete: + description: |- + Delete a report schedule by its unique identifier. The response returns the deleted schedule. + Requires a reporting write permission appropriate to the targeted resource type and schedule ownership. + operationId: DeleteReportSchedule + parameters: + - description: The unique identifier of the report schedule to delete. + example: 11111111-2222-3333-4444-555555555555 + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: inactive + tab_id: 66666666-7777-8888-9999-000000000000 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/ReportScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a report schedule + tags: + - Report Schedules + get: + description: |- + Get a report schedule by its unique identifier. + Requires a reporting read permission appropriate to the targeted resource type. + operationId: GetReportSchedule + parameters: + - description: The unique identifier of the report schedule to fetch. + example: 11111111-2222-3333-4444-555555555555 + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: active + tab_id: 66666666-7777-8888-9999-000000000000 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/ReportScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a report schedule + tags: + - Report Schedules + patch: + description: |- + Update an existing scheduled report by its identifier. The editable attributes + are replaced with the supplied values; the targeted resource (`resource_id` and + `resource_type`) cannot be changed after creation. + Requires the `generate_dashboard_reports` permission and schedule ownership. + operationId: PatchReportSchedule + parameters: + - description: The unique identifier of the report schedule to update. + example: 11111111-2222-3333-4444-555555555555 + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Updated weekly summary of infrastructure health. + recipients: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + type: schedule + schema: + $ref: '#/components/schemas/ReportSchedulePatchRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Updated weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: active + tab_id: 66666666-7777-8888-9999-000000000000 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + relationships: + author: + data: + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/ReportScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a report schedule + tags: + - Report Schedules + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/reporting/schedule/{schedule_uuid}/toggle: + patch: + description: |- + Activate or pause a report schedule by setting its status to `active` or `inactive`. + Requires a reporting write permission appropriate to the targeted resource type and schedule ownership. + operationId: ToggleReportSchedule + parameters: + - description: The unique identifier of the report schedule to toggle. + example: 11111111-2222-3333-4444-555555555555 + in: path + name: schedule_uuid + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + status: inactive + type: schedule + schema: + $ref: '#/components/schemas/ReportScheduleToggleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + delivery_format: pdf + description: Weekly summary of infrastructure health. + next_recurrence: 1780923600000 + recipients: + - user@example.com + resource_id: abc-def-ghi + resource_type: dashboard + rrule: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + status: inactive + tab_id: 66666666-7777-8888-9999-000000000000 + template_variables: + - name: env + values: + - prod + timeframe: 1w + timezone: America/New_York + title: Weekly Infrastructure Report + id: 11111111-2222-3333-4444-555555555555 + type: schedule + included: + - attributes: + email: user@example.com + name: Example User + id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: users + schema: + $ref: '#/components/schemas/ReportScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Toggle a report schedule + tags: + - Report Schedules + x-codegen-request-body-name: body + /api/v2/snapshot: + post: + description: Create a snapshot of a graph widget. The snapshot is rendered asynchronously; the returned URL can be polled until the image is ready. + operationId: CreateSnapshot + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/CreateSnapshotRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + url: https://app.datadoghq.com/api/v2/snapshot/view/public/60d/00000000-0000-0000-0000-000000000000/1692464400000-12345678-1234-5678-9abc-def123456789.png + id: 12345678-1234-5678-9abc-def123456789 + type: create_snapshot + schema: + $ref: '#/components/schemas/CreateSnapshotResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a graph snapshot + tags: + - Reporting And Sharing + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/stegadography/get-widgets: + post: + description: |- + Extracts watermarks from a PNG image and returns the cached widget data + associated with each watermark found. The image must be uploaded as a + `multipart/form-data` request with the file in the `image` field. + Only widgets belonging to the authenticated organization are returned. + operationId: GetStegadographyWidgets + requestBody: + content: + multipart/form-data: + examples: + default: + value: + image: screenshot.png + schema: + $ref: '#/components/schemas/StegadographyGetWidgetsRequest' + description: PNG image to extract watermarks from. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + locationx: 100 + locationy: 200 + rawData: '{"widgetType":"timeseries","requests":[]}' + watermark: 0123456789abcdef + id: abc123:0123456789abcdef + type: widget + schema: + $ref: '#/components/schemas/StegadographyGetWidgetsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '415': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unsupported Media Type + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get widgets from an image + tags: + - Stegadography + /api/v2/widgets/{experience_type}: + get: + description: |- + Search and list widgets for a given experience type, with filtering, sorting, and pagination. + + **Response meta** carries totals scoped to the current filter: + - `filtered_total` — widgets matching the filter. + - `created_by_you_total` — among the matches, how many the current user created. + - `favorited_by_you_total` — among the matches, how many the current user has favorited. + - `created_by_anyone_total` — total widgets in the experience type, ignoring filters. + + Each returned widget includes `is_favorited` reflecting the current user's favorite status. + Favoriting itself is performed through the shared favorites API, not this endpoint. + operationId: SearchWidgets + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: '#/components/schemas/WidgetExperienceType' + - description: Filter widgets by widget type. + in: query + name: filter[widgetType] + schema: + $ref: '#/components/schemas/WidgetType' + - description: Filter widgets by the email handle of the creator. + in: query + name: filter[creatorHandle] + schema: + example: john.doe@example.com + type: string + - description: Filter to only widgets favorited by the current user. + in: query + name: filter[isFavorited] + schema: + type: boolean + - description: Filter widgets by title (substring match). + in: query + name: filter[title] + schema: + type: string + - description: Filter widgets by tags. Format as bracket-delimited CSV, e.g. `[tag1,tag2]`. + in: query + name: filter[tags] + schema: + type: string + - description: |- + Sort field for the results. + + **`title`, `created_at`, `modified_at`** — both ascending and descending are + supported. Use the bare field name for ascending (e.g. `sort=title`) or prefix + with `-` for descending (e.g. `sort=-modified_at`). + + **`is_favorited`** — returns favorites-first ordering (favorited widgets first, + then the rest). Direction is fixed; the `-` prefix is ignored for this field. + in: query + name: sort + schema: + default: '-modified_at' + example: '-modified_at' + type: string + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of widgets per page. + in: query + name: page[size] + schema: + default: 50 + format: int64 + maximum: 100 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/WidgetListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Search widgets + tags: + - Widgets + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_read + post: + description: Create a new widget for a given experience type. + operationId: CreateWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: '#/components/schemas/WidgetExperienceType' + requestBody: + content: + application/json: + examples: + default: + summary: CCM cost summary widget + value: + data: + attributes: + definition: + graph_options: + - type: query_value + view: total + - type: query_value + view: change + - display_type: bars + type: timeseries + - type: cloud_cost_table + view: summary + requests: + - formulas: + - formula: query1 + queries: + - data_source: cloud_cost + name: query1 + query: sum:aws.cost.amortized{*} by {aws_product}.rollup(sum, daily) + response_format: timeseries + time: + type: live + unit: day + value: 30 + title: AWS spend by service (last 30 days) + type: cloud_cost_summary + tags: + - finops + - aws + type: widgets + schema: + $ref: '#/components/schemas/CreateOrUpdateWidgetRequest' + description: |- + Widget request body. The `definition` object's required fields vary + by `widget.definition.type`: every type requires `requests`, and + some types require additional fields (e.g. `cloud_cost_summary` + requires `graph_options`, `geomap` requires `style` and `view`). + The example below shows a complete `cloud_cost_summary` payload + for the `ccm_reports` experience type. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + definition: + title: My Widget + type: bar_chart + is_favorited: false + modified_at: '2024-01-01T00:00:00+00:00' + tags: + - team:my-team + id: abc-123 + type: widgets + schema: + $ref: '#/components/schemas/WidgetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a widget + tags: + - Widgets + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_write + /api/v2/widgets/{experience_type}/{uuid}: + delete: + description: Soft-delete a widget by its UUID for a given experience type. + operationId: DeleteWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: '#/components/schemas/WidgetExperienceType' + - description: The UUID of the widget. + in: path + name: uuid + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a widget + tags: + - Widgets + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_write + get: + description: Retrieve a widget by its UUID for a given experience type. + operationId: GetWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: '#/components/schemas/WidgetExperienceType' + - description: The UUID of the widget. + in: path + name: uuid + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + definition: + title: My Widget + type: bar_chart + is_favorited: false + modified_at: '2024-01-01T00:00:00+00:00' + tags: + - team:my-team + id: abc-123 + type: widgets + schema: + $ref: '#/components/schemas/WidgetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a widget + tags: + - Widgets + x-permission: + operator: OR + permissions: + - cloud_cost_management_read + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_read + put: + description: Update a widget by its UUID for a given experience type. This performs a full replacement of the widget definition. + operationId: UpdateWidget + parameters: + - description: The experience type for the widget. + in: path + name: experience_type + required: true + schema: + $ref: '#/components/schemas/WidgetExperienceType' + - description: The UUID of the widget. + in: path + name: uuid + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + summary: CCM cost summary widget + value: + data: + attributes: + definition: + graph_options: + - type: query_value + view: total + - type: query_value + view: change + - display_type: bars + type: timeseries + - type: cloud_cost_table + view: summary + requests: + - formulas: + - formula: query1 + queries: + - data_source: cloud_cost + name: query1 + query: sum:aws.cost.amortized{*} by {aws_product}.rollup(sum, daily) + response_format: timeseries + time: + type: live + unit: day + value: 30 + title: AWS spend by service (last 30 days) + type: cloud_cost_summary + tags: + - finops + - aws + type: widgets + schema: + $ref: '#/components/schemas/CreateOrUpdateWidgetRequest' + description: |- + Widget request body. The `definition` object's required fields vary + by `widget.definition.type`; see `CreateWidget` above for a complete + worked payload. Update is a full replacement of the widget definition. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + definition: + title: My Widget + type: bar_chart + is_favorited: false + modified_at: '2024-01-01T00:00:00+00:00' + tags: + - team:my-team + id: abc-123 + type: widgets + schema: + $ref: '#/components/schemas/WidgetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a widget + tags: + - Widgets + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - cloud_cost_management_write + - generate_log_reports + - manage_log_reports + - product_analytics_saved_widgets_write + /api/v1/dashboard: + delete: + description: Delete dashboards using the specified IDs. If there are any failures, no dashboards will be deleted (partial success is not allowed). + operationId: DeleteDashboards + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 123-abc-456 + type: dashboard + - id: 789-def-101 + type: dashboard + json-request-body: + value: + data: + - id: 123-abc-456 + type: dashboard + - id: 789-def-101 + type: dashboard + schema: + $ref: '#/components/schemas/DashboardBulkDeleteRequest' + description: Delete dashboards request body. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Dashboards Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete dashboards + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + get: + description: |- + Get all dashboards. + + **Note**: This query will only return custom created or cloned dashboards. + This query will not return preset dashboards. + operationId: ListDashboards + parameters: + - description: |- + When `true`, this query only returns shared custom created + or cloned dashboards. + in: query + name: filter[shared] + required: false + schema: + type: boolean + - description: |- + When `true`, this query returns only deleted custom-created + or cloned dashboards. This parameter is incompatible with `filter[shared]`. + in: query + name: filter[deleted] + required: false + schema: + type: boolean + - description: The maximum number of dashboards returned in the list. + in: query + name: count + required: false + schema: + default: 100 + format: int64 + type: integer + - description: The specific offset to use as the beginning of the returned response. + in: query + name: start + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + dashboards: + - author_handle: test@example.com + created_at: '2024-01-01T00:00:00+00:00' + id: abc-123-def + layout_type: ordered + modified_at: '2024-01-01T00:00:00+00:00' + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + schema: + $ref: '#/components/schemas/DashboardSummary' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get all dashboards + tags: + - Dashboards + x-pagination: + limitParam: count + pageOffsetParam: start + resultsPath: dashboards + x-permission: + operator: OR + permissions: + - dashboards_read + patch: + description: Restore dashboards using the specified IDs. If there are any failures, no dashboards will be restored (partial success is not allowed). + operationId: RestoreDashboards + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 123-abc-456 + type: dashboard + - id: 789-def-101 + type: dashboard + json-request-body: + value: + data: + - id: 123-abc-456 + type: dashboard + - id: 789-def-101 + type: dashboard + schema: + $ref: '#/components/schemas/DashboardRestoreRequest' + description: Restore dashboards request body. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Dashboards Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Restore deleted dashboards + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + post: + description: |- + Create a dashboard using the specified options. When defining queries in your widgets, take note of which queries should have the `as_count()` or `as_rate()` modifiers appended. + Refer to the following [documentation](https://docs.datadoghq.com/developers/metrics/type_modifiers/?tab=count#in-application-modifiers) for more information on these modifiers. + operationId: CreateDashboard + requestBody: + content: + application/json: + examples: + default: + value: + description: An example dashboard for monitoring infrastructure. + layout_type: ordered + title: Example Dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + schema: + $ref: '#/components/schemas/Dashboard' + description: Create a dashboard request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + author_handle: test@example.com + author_name: Example Name + created_at: '2024-01-01T00:00:00+00:00' + id: abc-123-def + layout_type: ordered + modified_at: '2024-01-01T00:00:00+00:00' + notify_list: null + restricted_roles: [] + template_variables: null + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + id: 123 + schema: + $ref: '#/components/schemas/Dashboard' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Create a new dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + /api/v1/dashboard/lists/manual: + get: + description: Fetch all of your existing dashboard list definitions. + operationId: ListDashboardLists + responses: + '200': + content: + application/json: + examples: + default: + value: + dashboard_lists: + - author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_count: 0 + id: 123 + is_favorite: false + modified: '2024-01-01T00:00:00+00:00' + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: '#/components/schemas/DashboardListListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get all dashboard lists + tags: + - Dashboard Lists + x-permission: + operator: OR + permissions: + - dashboards_read + post: + description: Create an empty dashboard list. + operationId: CreateDashboardList + requestBody: + content: + application/json: + examples: + default: + value: + name: My Dashboard List + schema: + $ref: '#/components/schemas/DashboardList' + description: Create a dashboard list request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_count: 0 + id: 123 + is_favorite: false + modified: '2024-01-01T00:00:00+00:00' + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: '#/components/schemas/DashboardList' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Create a dashboard list + tags: + - Dashboard Lists + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + /api/v1/dashboard/lists/manual/{list_id}: + delete: + description: Delete a dashboard list. + operationId: DeleteDashboardList + parameters: + - description: ID of the dashboard list to delete. + in: path + name: list_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + deleted_dashboard_list_id: 123 + schema: + $ref: '#/components/schemas/DashboardListDeleteResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete a dashboard list + tags: + - Dashboard Lists + x-permission: + operator: OR + permissions: + - dashboards_write + get: + description: Fetch an existing dashboard list's definition. + operationId: GetDashboardList + parameters: + - description: ID of the dashboard list to fetch. + in: path + name: list_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_count: 0 + id: 123 + is_favorite: false + modified: '2024-01-01T00:00:00+00:00' + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: '#/components/schemas/DashboardList' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a dashboard list + tags: + - Dashboard Lists + x-permission: + operator: OR + permissions: + - dashboards_read + put: + description: Update the name of a dashboard list. + operationId: UpdateDashboardList + parameters: + - description: ID of the dashboard list to update. + in: path + name: list_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + name: My Dashboard List + schema: + $ref: '#/components/schemas/DashboardList' + description: Update a dashboard list request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_count: 0 + id: 123 + is_favorite: false + modified: '2024-01-01T00:00:00+00:00' + name: My Dashboard List + type: manual_dashboard_list + schema: + $ref: '#/components/schemas/DashboardList' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Update a dashboard list + tags: + - Dashboard Lists + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + /api/v1/dashboard/public: + post: + description: Share a specified private dashboard, generating a URL at which it can be publicly viewed. + operationId: CreatePublicDashboard + requestBody: + content: + application/json: + examples: + default: + value: + dashboard_id: 123-abc-456 + dashboard_type: custom_timeboard + global_time: + live_span: 1h + share_type: open + json-request-body: + value: + dashboard_id: 123-abc-456 + dashboard_type: custom_timeboard + share_type: open + schema: + $ref: '#/components/schemas/SharedDashboard' + description: Create a shared dashboard request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_id: abc-123-def + dashboard_type: custom_timeboard + global_time: + live_span: 1h + public_url: https://p.datadoghq.com/sb/abc-123 + share_type: open + status: active + token: abc-123 + schema: + $ref: '#/components/schemas/SharedDashboard' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Dashboard Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_public_share + - AuthZ: + - dashboards_embed_share + - AuthZ: + - dashboards_invite_share + summary: Create a shared dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_public_share + - dashboards_embed_share + - dashboards_invite_share + /api/v1/dashboard/public/{token}: + delete: + description: Revoke the public URL for a dashboard (rendering it private) associated with the specified token. + operationId: DeletePublicDashboard + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + deleted_public_dashboard_token: abc-123 + schema: + $ref: '#/components/schemas/DeleteSharedDashboardResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Shared Dashboard Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_public_share + - AuthZ: + - dashboards_embed_share + - AuthZ: + - dashboards_invite_share + summary: Revoke a shared dashboard URL + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_public_share + - dashboards_embed_share + - dashboards_invite_share + get: + description: Fetch an existing shared dashboard's sharing metadata associated with the specified token. + operationId: GetPublicDashboard + parameters: + - description: The token of the shared dashboard. Generated when a dashboard is shared. + in: path + name: token + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_id: abc-123-def + dashboard_type: custom_timeboard + global_time: + live_span: 1h + public_url: https://p.datadoghq.com/sb/abc-123 + share_type: open + status: active + token: abc-123 + schema: + $ref: '#/components/schemas/SharedDashboard' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Shared Dashboard Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a shared dashboard + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_read + put: + description: Update a shared dashboard associated with the specified token. + operationId: UpdatePublicDashboard + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + global_time: + live_span: 1h + selectable_template_vars: + - default_value: '*' + name: exampleVar + prefix: test + visible_tags: + - selectableValue1 + - selectableValue2 + share_list: + - test@datadoghq.com + - test2@datadoghq.com + share_type: invite + json-request-body: + value: + global_time: + live_span: 1h + selectable_template_vars: + - default_value: '*' + name: exampleVar + prefix: test + visible_tags: + - selectableValue1 + - selectableValue2 + share_list: + - test@datadoghq.com + - test2@datadoghq.com + share_type: invite + schema: + $ref: '#/components/schemas/SharedDashboardUpdateRequest' + description: Update Dashboard request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + author: + handle: test@example.com + name: Example Name + created: '2024-01-01T00:00:00+00:00' + dashboard_id: abc-123-def + dashboard_type: custom_timeboard + global_time: + live_span: 1h + public_url: https://p.datadoghq.com/sb/abc-123 + share_type: open + status: active + token: abc-123 + schema: + $ref: '#/components/schemas/SharedDashboard' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_public_share + - AuthZ: + - dashboards_embed_share + - AuthZ: + - dashboards_invite_share + summary: Update a shared dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_public_share + - dashboards_embed_share + - dashboards_invite_share + /api/v1/dashboard/public/{token}/invitation: + delete: + description: Revoke previously sent invitation emails and active sessions used to access a given shared dashboard for specific email addresses. + operationId: DeletePublicDashboardInvitation + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + json-request-body: + value: + data: + attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + schema: + $ref: '#/components/schemas/SharedDashboardInvites' + description: Shared Dashboard Invitation deletion request body. + required: true + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_invite_share + summary: Revoke shared dashboard invitations + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_invite_share + get: + description: Describe the invitations that exist for the given shared dashboard (paginated). + operationId: GetPublicDashboardInvitations + parameters: + - description: Token of the shared dashboard for which to fetch invitations. + in: path + name: token + required: true + schema: + type: string + - description: The number of records to return in a single request. + in: query + name: page_size + required: false + schema: + format: int64 + type: integer + - description: The page to access (base 0). + in: query + name: page_number + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + email: test@example.com + has_session: false + session_expiry: null + share_token: abc-123 + type: public_dashboard_invitation + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/SharedDashboardInvites' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_invite_share + summary: Get all invitations for a shared dashboard + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_invite_share + post: + description: Send emails to specified email addresses containing links to access a given authenticated shared dashboard. Email addresses must already belong to the authenticated shared dashboard's share_list. + operationId: SendPublicDashboardInvitation + parameters: + - description: The token of the shared dashboard. + in: path + name: token + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + json-request-body: + value: + data: + - attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + schema: + $ref: '#/components/schemas/SharedDashboardInvites' + description: Shared Dashboard Invitation request body. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + email: test@example.com + has_session: false + session_expiry: null + share_token: abc-123 + type: public_dashboard_invitation + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/SharedDashboardInvites' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_invite_share + summary: Send shared dashboard invitation email + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_invite_share + /api/v1/dashboard/{dashboard_id}: + delete: + description: Delete a dashboard using the specified ID. + operationId: DeleteDashboard + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + deleted_dashboard_id: abc-123 + schema: + $ref: '#/components/schemas/DashboardDeleteResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Dashboards Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Delete a dashboard + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_write + get: + description: Get a dashboard using the specified ID. + operationId: GetDashboard + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + author_handle: test@example.com + author_name: Example Name + created_at: '2024-01-01T00:00:00+00:00' + id: abc-123-def + layout_type: ordered + modified_at: '2024-01-01T00:00:00+00:00' + notify_list: null + restricted_roles: [] + template_variables: null + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + id: 123 + schema: + $ref: '#/components/schemas/Dashboard' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_read + summary: Get a dashboard + tags: + - Dashboards + x-permission: + operator: OR + permissions: + - dashboards_read + put: + description: Update a dashboard using the specified ID. + operationId: UpdateDashboard + parameters: + - description: The ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: An example dashboard for monitoring infrastructure. + layout_type: ordered + title: Example Dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + schema: + $ref: '#/components/schemas/Dashboard' + description: Update Dashboard request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + author_handle: test@example.com + author_name: Example Name + created_at: '2024-01-01T00:00:00+00:00' + id: abc-123-def + layout_type: ordered + modified_at: '2024-01-01T00:00:00+00:00' + notify_list: null + restricted_roles: [] + template_variables: null + title: Example Dashboard + url: /dashboard/abc-123-def/example-dashboard + widgets: + - definition: + requests: + - q: avg:system.cpu.user{*} + title: CPU Usage + type: timeseries + id: 123 + schema: + $ref: '#/components/schemas/Dashboard' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - dashboards_write + summary: Update a dashboard + tags: + - Dashboards + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dashboards_write + /api/v1/graph/snapshot: + get: + description: |- + Take graph snapshots. Snapshots are PNG images generated by rendering a specified widget in a web page and capturing it once the data is available. The image is then uploaded to cloud storage. + + **Note**: When a snapshot is created, there is some delay before it is available. + operationId: GetGraphSnapshot + parameters: + - description: The metric query. + in: query + name: metric_query + schema: + type: string + x-docs-curl-required: true + - description: The POSIX timestamp of the start of the query in seconds. + in: query + name: start + required: true + schema: + format: int64 + type: integer + - description: The POSIX timestamp of the end of the query in seconds. + in: query + name: end + required: true + schema: + format: int64 + type: integer + - description: A query that adds event bands to the graph. + in: query + name: event_query + required: false + schema: + type: string + - description: |- + A JSON document defining the graph. `graph_def` can be used instead of `metric_query`. + The JSON document uses the [grammar defined here](https://docs.datadoghq.com/graphing/graphing_json/#grammar) + and should be formatted to a single line then URL encoded. + in: query + name: graph_def + required: false + schema: + type: string + - description: A title for the graph. If no title is specified, the graph does not have a title. + in: query + name: title + required: false + schema: + type: string + - description: The height of the graph. If no height is specified, the graph's original height is used. + in: query + name: height + required: false + schema: + format: int64 + type: integer + - description: The width of the graph. If no width is specified, the graph's original width is used. + in: query + name: width + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + metric_query: avg:system.load.1{*} + snapshot_url: https://app.datadoghq.com/s/f12345678/aaa-bbb-ccc + schema: + $ref: '#/components/schemas/GraphSnapshot' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Take graph snapshots + tags: + - Snapshots + x-permission: + operator: OPEN + permissions: [] + /api/v1/notebooks: + get: + description: |- + Get all notebooks. This can also be used to search for notebooks with a particular `query` in the notebook + `name` or author `handle`. + operationId: ListNotebooks + parameters: + - description: Return notebooks created by the given `author_handle`. + in: query + name: author_handle + required: false + schema: + example: test@datadoghq.com + type: string + style: form + - description: Return notebooks not created by the given `author_handle`. + in: query + name: exclude_author_handle + required: false + schema: + example: test@datadoghq.com + type: string + style: form + - description: The index of the first notebook you want returned. + in: query + name: start + required: false + schema: + example: 0 + format: int64 + type: integer + style: form + - description: The number of notebooks to be returned. + in: query + name: count + required: false + schema: + default: 100 + example: 5 + format: int64 + type: integer + style: form + - description: Sort by field `modified`, `name`, or `created`. + in: query + name: sort_field + required: false + schema: + default: modified + example: modified + type: string + style: form + - description: Sort by direction `asc` or `desc`. + in: query + name: sort_dir + required: false + schema: + default: desc + example: desc + type: string + style: form + - description: Return only notebooks with `query` string in notebook name or author handle. + in: query + name: query + required: false + schema: + example: postmortem + type: string + style: form + - description: Value of `false` excludes the `cells` and global `time` for each notebook. + in: query + name: include_cells + required: false + schema: + default: true + example: false + type: boolean + style: form + - description: True value returns only template notebooks. Default is false (returns only non-template notebooks). + in: query + name: is_template + required: false + schema: + default: false + example: false + type: boolean + style: form + - description: If type is provided, returns only notebooks with that metadata type. Default does not have type filtering. + in: query + name: type + required: false + schema: + example: investigation + type: string + style: form + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: '2021-02-24T23:14:15.173964+00:00' + modified: '2021-02-24T23:15:23.274966+00:00' + name: Example Notebook + status: published + id: 123456 + type: notebooks + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/NotebooksResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all notebooks + tags: + - Notebooks + x-pagination: + limitParam: count + pageOffsetParam: start + resultsPath: data + x-permission: + operator: OR + permissions: + - notebooks_read + post: + description: Create a notebook using the specified options. + operationId: CreateNotebook + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: |- + ## Some test markdown + + With some example content. + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + type: notebook_cells + name: Example Notebook + time: + live_span: 1h + type: notebooks + json-request-body: + value: + data: + attributes: + cells: + - attributes: + definition: + text: |- + ## Some test markdown + + With some example content. + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + type: notebook_cells + name: Example Notebook + time: + live_span: 1h + type: notebooks + schema: + $ref: '#/components/schemas/NotebookCreateRequestV1' + description: The JSON description of the notebook you want to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: |- + ## Some test markdown + + With some example content. + type: markdown + id: bzbycoya + type: notebook_cells + created: '2021-02-24T23:14:15.173964+00:00' + modified: '2021-02-24T23:15:23.274966+00:00' + name: Example Notebook + time: + live_span: 1h + id: 123456 + type: notebooks + schema: + $ref: '#/components/schemas/NotebookResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a notebook + tags: + - Notebooks + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - notebooks_write + /api/v1/notebooks/{notebook_id}: + delete: + description: Delete a notebook using the specified ID. + operationId: DeleteNotebook + parameters: + - description: Unique ID, assigned when you create the notebook. + in: path + name: notebook_id + required: true + schema: + format: int64 + type: integer + responses: + '204': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a notebook + tags: + - Notebooks + x-permission: + operator: OR + permissions: + - notebooks_write + get: + description: Get a notebook using the specified notebook ID. + operationId: GetNotebook + parameters: + - description: Unique ID, assigned when you create the notebook. + in: path + name: notebook_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: '## Example markdown' + type: markdown + id: abc-123 + type: notebook_cells + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + name: Example Notebook + status: published + time: + live_span: 1h + id: 123 + type: notebooks + schema: + $ref: '#/components/schemas/NotebookResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a notebook + tags: + - Notebooks + x-permission: + operator: OR + permissions: + - notebooks_read + put: + description: Update a notebook using the specified ID. + operationId: UpdateNotebook + parameters: + - description: Unique ID, assigned when you create the notebook. + in: path + name: notebook_id + required: true + schema: + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: |- + ## Some updated test markdown + + With some example content. + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: bars + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: warm + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + id: abcd1234 + type: notebook_cells + name: Example Notebook + time: + live_span: 1h + type: notebooks + json-request-body: + value: + data: + attributes: + cells: + - attributes: + definition: + text: |- + ## Some updated test markdown + + With some example content. + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: bars + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: warm + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + id: abcd1234 + type: notebook_cells + name: Example Notebook + time: + live_span: 1h + type: notebooks + schema: + $ref: '#/components/schemas/NotebookUpdateRequest' + description: Update notebook request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - attributes: + definition: + text: |- + ## Some updated test markdown + + With some example content. + type: markdown + id: abcd1234 + type: notebook_cells + created: '2021-02-24T23:14:15.173964+00:00' + modified: '2021-02-24T23:15:23.274966+00:00' + name: Example Notebook + time: + live_span: 1h + id: 123456 + type: notebooks + schema: + $ref: '#/components/schemas/NotebookResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a notebook + tags: + - Notebooks + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - notebooks_write +components: + schemas: + AnnotationsResponse: + description: Response containing a list of annotations. + properties: + data: + $ref: '#/components/schemas/AnnotationsData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + AnnotationCreateRequest: + description: Request body for creating an annotation. + properties: + data: + $ref: '#/components/schemas/AnnotationRequestData' + required: + - data + type: object + AnnotationResponse: + description: Response containing a single annotation. + properties: + data: + $ref: '#/components/schemas/AnnotationData' + required: + - data + type: object + PageAnnotationsResponse: + description: Response containing all annotations on a page, grouped by widget. + properties: + data: + $ref: '#/components/schemas/PageAnnotationsData' + required: + - data + type: object + AnnotationUpdateRequest: + description: Request body for updating an annotation. + properties: + data: + $ref: '#/components/schemas/AnnotationRequestData' + required: + - data + type: object + DashboardListDeleteItemsRequest: + description: Request containing a list of dashboards to delete. + properties: + dashboards: + description: List of dashboards to delete from the dashboard list. + items: + $ref: '#/components/schemas/DashboardListItemRequest' + type: array + type: object + DashboardListDeleteItemsResponse: + description: Response containing a list of deleted dashboards. + properties: + deleted_dashboards_from_list: + description: List of dashboards deleted from the dashboard list. + items: + $ref: '#/components/schemas/DashboardListItemResponse' + type: array + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + DashboardListItems: + description: Dashboards within a list. + properties: + dashboards: + description: List of dashboards in the dashboard list. + example: [] + items: + $ref: '#/components/schemas/DashboardListItem' + type: array + total: + description: Number of dashboards in the dashboard list. + format: int64 + readOnly: true + type: integer + required: + - dashboards + type: object + DashboardListAddItemsRequest: + description: Request containing a list of dashboards to add. + properties: + dashboards: + description: List of dashboards to add the dashboard list. + items: + $ref: '#/components/schemas/DashboardListItemRequest' + type: array + type: object + DashboardListAddItemsResponse: + description: Response containing a list of added dashboards. + properties: + added_dashboards_to_list: + description: List of dashboards added to the dashboard list. + items: + $ref: '#/components/schemas/DashboardListItemResponse' + type: array + type: object + DashboardListUpdateItemsRequest: + description: Request containing the list of dashboards to update to. + properties: + dashboards: + description: List of dashboards to update the dashboard list to. + items: + $ref: '#/components/schemas/DashboardListItemRequest' + type: array + type: object + DashboardListUpdateItemsResponse: + description: Response containing a list of updated dashboards. + properties: + dashboards: + description: List of dashboards in the dashboard list. + items: + $ref: '#/components/schemas/DashboardListItemResponse' + type: array + type: object + ListSharedDashboardsResponse: + description: Response containing shared dashboards for a dashboard. + properties: + data: + description: Shared dashboards for the dashboard. + items: + $ref: '#/components/schemas/SharedDashboardResponse' + type: array + included: + description: Users and dashboards related to the shared dashboards. + items: + $ref: '#/components/schemas/SharedDashboardIncluded' + type: array + required: + - data + - included + type: object + SecureEmbedCreateRequest: + description: Request to create a secure embed shared dashboard. + properties: + data: + $ref: '#/components/schemas/SecureEmbedCreateRequestData' + required: + - data + type: object + SecureEmbedCreateResponse: + description: Response for creating a secure embed shared dashboard. + properties: + data: + $ref: '#/components/schemas/SecureEmbedCreateResponseData' + required: + - data + type: object + SecureEmbedGetResponse: + description: Response for getting a secure embed shared dashboard. + properties: + data: + $ref: '#/components/schemas/SecureEmbedGetResponseData' + required: + - data + type: object + SecureEmbedUpdateRequest: + description: Request to update a secure embed shared dashboard. + properties: + data: + $ref: '#/components/schemas/SecureEmbedUpdateRequestData' + required: + - data + type: object + SecureEmbedUpdateResponse: + description: Response for updating a secure embed shared dashboard. + properties: + data: + $ref: '#/components/schemas/SecureEmbedUpdateResponseData' + required: + - data + type: object + ListDashboardsUsageResponse: + description: Paginated list of dashboard usage records. + properties: + data: + description: Dashboard usage records, one per dashboard in the caller's organization. + items: + $ref: '#/components/schemas/DashboardUsage' + type: array + links: + $ref: '#/components/schemas/ListDashboardsUsageResponseLinks' + meta: + $ref: '#/components/schemas/ListDashboardsUsageResponseMeta' + required: + - data + - meta + type: object + DashboardUsageResponse: + description: Response containing usage statistics for a single dashboard. + properties: + data: + $ref: '#/components/schemas/DashboardUsage' + required: + - data + type: object + ListPowerpacksResponse: + description: Response object which includes all powerpack configurations. + properties: + data: + description: List of powerpack definitions. + items: + $ref: '#/components/schemas/PowerpackData' + type: array + included: + description: Array of objects related to the users. + items: + $ref: '#/components/schemas/User' + type: array + links: + $ref: '#/components/schemas/PowerpackResponseLinks' + meta: + $ref: '#/components/schemas/PowerpacksResponseMeta' + type: object + Powerpack: + description: Powerpacks are templated groups of dashboard widgets you can save from an existing dashboard and turn into reusable packs in the widget tray. + properties: + data: + $ref: '#/components/schemas/PowerpackData' + type: object + PowerpackResponse: + description: Response object which includes a single powerpack configuration. + properties: + data: + $ref: '#/components/schemas/PowerpackData' + included: + description: Array of objects related to the users. + items: + $ref: '#/components/schemas/User' + type: array + readOnly: true + type: object + DatasetReportScheduleListResponse: + description: Response containing a list of report schedules for a published dataset. + properties: + data: + description: A list of report schedules for the dataset. + items: + $ref: '#/components/schemas/DatasetReportScheduleResponseData' + type: array + included: + description: Related resources included with the report schedules, such as authors. + items: + $ref: '#/components/schemas/ReportScheduleIncludedResource' + type: array + required: + - data + type: object + PrintReportRequest: + description: Request body for initiating a print-only report. + properties: + data: + $ref: '#/components/schemas/PrintReportRequestData' + required: + - data + type: object + PrintReportResponse: + description: Response containing the initiated print-only report. + properties: + data: + $ref: '#/components/schemas/PrintReportResponseData' + required: + - data + type: object + ReportScheduleCreateRequest: + description: Request body for creating a report schedule. + properties: + data: + $ref: '#/components/schemas/ReportScheduleCreateRequestData' + required: + - data + type: object + ReportScheduleResponse: + description: Response containing a single report schedule. + properties: + data: + $ref: '#/components/schemas/ReportScheduleResponseData' + included: + description: Related resources included with the report schedule, such as the author. + items: + $ref: '#/components/schemas/ReportScheduleIncludedResource' + type: array + required: + - data + type: object + ReportScheduleListResponse: + description: Response containing a list of report schedules. + properties: + data: + description: The list of report schedules. + items: + $ref: '#/components/schemas/ReportScheduleListResponseData' + type: array + included: + description: Related resources included with the report schedules, such as authors and rendered resources. + items: + $ref: '#/components/schemas/ReportScheduleIncludedResource' + type: array + links: + $ref: '#/components/schemas/ReportScheduleListResponseLinks' + meta: + $ref: '#/components/schemas/ReportScheduleListResponseMeta' + required: + - data + type: object + ReportScheduleResourceType: + description: The type of dashboard resource the report schedule targets. + enum: + - dashboard + - integration_dashboard + example: dashboard + type: string + x-enum-varnames: + - DASHBOARD + - INTEGRATION_DASHBOARD + ReportSchedulePatchRequest: + description: Request body for updating a report schedule. + properties: + data: + $ref: '#/components/schemas/ReportSchedulePatchRequestData' + required: + - data + type: object + ReportScheduleToggleRequest: + description: Request body for toggling a report schedule. + properties: + data: + $ref: '#/components/schemas/ReportScheduleToggleRequestData' + required: + - data + type: object + CreateSnapshotRequest: + description: Request body for creating a graph snapshot. + properties: + data: + $ref: '#/components/schemas/CreateSnapshotDataRequest' + required: + - data + type: object + CreateSnapshotResponse: + description: Response body for a snapshot creation request. + properties: + data: + $ref: '#/components/schemas/CreateSnapshotDataResponse' + required: + - data + type: object + StegadographyGetWidgetsRequest: + description: Multipart form data containing the PNG image to scan for watermarks. + properties: + image: + description: PNG image file to scan for embedded watermarks. + example: screenshot.png + format: binary + type: string + required: + - image + type: object + StegadographyGetWidgetsResponse: + description: Response containing watermarked widgets recovered from an image. + properties: + data: + $ref: '#/components/schemas/StegadographyWidgetItems' + required: + - data + type: object + WidgetExperienceType: + description: Widget experience types that differentiate between the products using the specific widget. + enum: + - ccm_reports + - logs_reports + - csv_reports + - product_analytics + example: ccm_reports + type: string + x-enum-varnames: + - CCM_REPORTS + - LOGS_REPORTS + - CSV_REPORTS + - PRODUCT_ANALYTICS + WidgetType: + description: |- + Widget types that are allowed to be stored as individual records. + This is not a complete list of dashboard and notebook widget types. + enum: + - bar_chart + - change + - cloud_cost_summary + - cohort + - funnel + - geomap + - list_stream + - query_table + - query_value + - retention_curve + - sankey + - sunburst + - timeseries + - toplist + - treemap + example: bar_chart + type: string + x-enum-varnames: + - BAR_CHART + - CHANGE + - CLOUD_COST_SUMMARY + - COHORT + - FUNNEL + - GEOMAP + - LIST_STREAM + - QUERY_TABLE + - QUERY_VALUE + - RETENTION_CURVE + - SANKEY + - SUNBURST + - TIMESERIES + - TOPLIST + - TREEMAP + WidgetListResponse: + description: Response containing a list of widgets. + properties: + data: + description: List of widget resources. + items: + $ref: '#/components/schemas/WidgetData' + type: array + included: + description: Array of user resources related to the widgets. + items: + $ref: '#/components/schemas/WidgetIncludedUser' + type: array + meta: + $ref: '#/components/schemas/WidgetSearchMeta' + required: + - data + type: object + CreateOrUpdateWidgetRequest: + description: Request body for creating or updating a widget. + properties: + data: + $ref: '#/components/schemas/CreateOrUpdateWidgetRequestData' + required: + - data + type: object + WidgetResponse: + description: Response containing a single widget. + properties: + data: + $ref: '#/components/schemas/WidgetData' + included: + description: Array of user resources related to the widget. + items: + $ref: '#/components/schemas/WidgetIncludedUser' + type: array + required: + - data + type: object + DashboardBulkDeleteRequest: + description: Dashboard bulk delete request body. + example: + data: + - id: 123-abc-456 + type: dashboard + properties: + data: + $ref: '#/components/schemas/DashboardBulkActionDataList' + required: + - data + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + DashboardSummary: + description: Dashboard summary response. + properties: + dashboards: + description: List of dashboard definitions. + items: + $ref: '#/components/schemas/DashboardSummaryDefinition' + type: array + type: object + DashboardRestoreRequest: + description: Dashboard restore request body. + example: + data: + - id: 123-abc-456 + type: dashboard + properties: + data: + $ref: '#/components/schemas/DashboardBulkActionDataList' + required: + - data + type: object + Dashboard: + description: |- + A dashboard is Datadog’s tool for visually tracking, analyzing, and displaying + key performance metrics, which enable you to monitor the health of your infrastructure. + properties: + author_handle: + description: Identifier of the dashboard author. + example: test@datadoghq.com + readOnly: true + type: string + author_name: + description: Name of the dashboard author. + example: John Doe + nullable: true + readOnly: true + type: string + created_at: + description: Creation date of the dashboard. + format: date-time + readOnly: true + type: string + default_timeframe: + $ref: '#/components/schemas/DashboardDefaultTimeframeSetting' + description: The default timeframe applied when opening the dashboard. Set to `null` to clear. + nullable: true + description: + description: Description of the dashboard. + nullable: true + type: string + id: + description: ID of the dashboard. + example: 123-abc-456 + readOnly: true + type: string + is_read_only: + deprecated: true + description: |- + Whether this dashboard is read-only. If True, only the author and admins can make changes to it. + + This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards. + example: false + type: boolean + layout_type: + $ref: '#/components/schemas/DashboardLayoutType' + modified_at: + description: Modification date of the dashboard. + format: date-time + readOnly: true + type: string + notify_list: + description: List of handles of users to notify when changes are made to this dashboard. + items: + description: User handles. + type: string + nullable: true + type: array + reflow_type: + $ref: '#/components/schemas/DashboardReflowType' + restricted_roles: + description: A list of role identifiers. Only the author and users associated with at least one of these roles can edit this dashboard. + items: + description: A role UUID. + type: string + type: array + tabs: + description: List of tabs for organizing dashboard widgets into groups. + items: + $ref: '#/components/schemas/DashboardTab' + maxItems: 100 + nullable: true + type: array + tags: + description: List of team names representing ownership of a dashboard. + items: + description: The name of a Datadog team of the form `team:` + type: string + maxItems: 5 + nullable: true + type: array + template_variable_presets: + description: Array of template variables saved views. + items: + $ref: '#/components/schemas/DashboardTemplateVariablePreset' + nullable: true + type: array + template_variables: + description: List of template variables for this dashboard. + items: + $ref: '#/components/schemas/DashboardTemplateVariable' + nullable: true + type: array + title: + description: Title of the dashboard. + example: '' + type: string + url: + description: The URL of the dashboard. + example: /dashboard/123-abc-456/example-dashboard-title + readOnly: true + type: string + widgets: + description: List of widgets to display on the dashboard. + example: + - definition: + requests: + fill: + q: avg:system.cpu.user{*} + type: hostmap + items: + $ref: '#/components/schemas/Widget' + type: array + required: + - title + - layout_type + - widgets + type: object + DashboardListListResponse: + description: Information on your dashboard lists. + properties: + dashboard_lists: + description: List of all your dashboard lists. + items: + $ref: '#/components/schemas/DashboardList' + type: array + type: object + DashboardList: + description: Your Datadog Dashboards. + properties: + author: + $ref: '#/components/schemas/CreatorV1' + created: + description: Date of creation of the dashboard list. + format: date-time + readOnly: true + type: string + dashboard_count: + description: The number of dashboards in the list. + format: int64 + readOnly: true + type: integer + id: + description: The ID of the dashboard list. + format: int64 + readOnly: true + type: integer + is_favorite: + description: Whether or not the list is in the favorites. + readOnly: true + type: boolean + modified: + description: Date of last edition of the dashboard list. + format: date-time + readOnly: true + type: string + name: + description: The name of the dashboard list. + example: My Dashboard + type: string + type: + description: The type of dashboard list. + example: manual_dashboard_list + readOnly: true + type: string + required: + - name + type: object + DashboardListDeleteResponse: + description: Deleted dashboard details. + properties: + deleted_dashboard_list_id: + description: ID of the deleted dashboard list. + format: int64 + type: integer + type: object + SharedDashboard: + description: The metadata object associated with how a dashboard has been/will be shared. + properties: + author: + $ref: '#/components/schemas/SharedDashboardAuthor' + created: + description: Date the dashboard was shared. + format: date-time + readOnly: true + type: string + dashboard_id: + description: ID of the dashboard to share. + example: 123-abc-456 + type: string + dashboard_type: + $ref: '#/components/schemas/DashboardTypeV1' + embeddable_domains: + description: The `SharedDashboard` `embeddable_domains`. + example: + - https://domain.atlassian.net/ + - http://myserver.com/ + items: + description: The allowlisted referrers for an EMBED shared dashboard. + type: string + type: array + expiration: + description: The time when an OPEN shared dashboard becomes publicly unavailable. + format: date-time + nullable: true + type: string + global_time: + $ref: '#/components/schemas/DashboardGlobalTime' + global_time_selectable_enabled: + description: Whether to allow viewers to select a different global time setting for the shared dashboard. + nullable: true + type: boolean + invitees: + description: The `SharedDashboard` `invitees`. + example: + - access_expiration: '2030-01-01T12:00:00.00Z' + email: test@datadoghq.com + - access_expiration: null + email: test2@datadoghq.com + items: + $ref: '#/components/schemas/SharedDashboardInviteesItems' + type: array + last_accessed: + description: The last time the shared dashboard was accessed. Null if never accessed. + format: date-time + nullable: true + readOnly: true + type: string + public_url: + description: URL of the shared dashboard. + readOnly: true + type: string + selectable_template_vars: + description: List of objects representing template variables on the shared dashboard which can have selectable values. + example: + - default_value: '*' + name: exampleVar + prefix: test + visible_tags: + - selectableValue1 + - selectableValue2 + items: + $ref: '#/components/schemas/SelectableTemplateVariableItems' + nullable: true + type: array + share_list: + deprecated: true + description: List of email addresses that can receive an invitation to access to the shared dashboard. + example: + - test@datadoghq.com + - test2@email.com + items: + description: Email address that can receive an invitation to access the shared dashboard. + type: string + nullable: true + type: array + share_type: + $ref: '#/components/schemas/DashboardShareType' + status: + $ref: '#/components/schemas/SharedDashboardStatusV1' + title: + description: Title of the shared dashboard. + type: string + token: + description: A unique token assigned to the shared dashboard. + readOnly: true + type: string + viewing_preferences: + $ref: '#/components/schemas/ViewingPreferences' + required: + - dashboard_id + - dashboard_type + type: object + DeleteSharedDashboardResponse: + description: Response containing token of deleted shared dashboard. + properties: + deleted_public_dashboard_token: + description: Token associated with the shared dashboard that was revoked. + type: string + type: object + SharedDashboardUpdateRequest: + description: Update a shared dashboard's settings. + example: + global_time: + live_span: 1h + share_list: + - test@datadoghq.com + - test2@datadoghq.com + share_type: invite + properties: + embeddable_domains: + description: The `SharedDashboard` `embeddable_domains`. + example: + - https://domain.atlassian.net/ + - http://myserver.com/ + items: + description: The allowlisted referrers for an EMBED shared dashboard. + type: string + type: array + expiration: + description: The time when an OPEN shared dashboard becomes publicly unavailable. + format: date-time + nullable: true + type: string + global_time: + $ref: '#/components/schemas/SharedDashboardUpdateRequestGlobalTime' + global_time_selectable_enabled: + description: Whether to allow viewers to select a different global time setting for the shared dashboard. + nullable: true + type: boolean + invitees: + description: The `SharedDashboard` `invitees`. + example: + - access_expiration: '2030-01-01T12:00:00.00Z' + email: test@datadoghq.com + - access_expiration: null + email: test2@datadoghq.com + items: + $ref: '#/components/schemas/SharedDashboardInviteesItems' + type: array + selectable_template_vars: + description: List of objects representing template variables on the shared dashboard which can have selectable values. + example: + - default_value: '*' + name: exampleVar + prefix: test + visible_tags: + - selectableValue1 + - selectableValue2 + items: + $ref: '#/components/schemas/SelectableTemplateVariableItems' + nullable: true + type: array + share_list: + deprecated: true + description: List of email addresses that can be given access to the shared dashboard. + example: + - test@datadoghq.com + - test2@email.com + items: + description: Email address that can receive an invitation to access the shared dashboard. + type: string + nullable: true + type: array + share_type: + $ref: '#/components/schemas/DashboardShareType' + status: + $ref: '#/components/schemas/SharedDashboardStatusV1' + title: + description: Title of the shared dashboard. + type: string + viewing_preferences: + $ref: '#/components/schemas/ViewingPreferences' + type: object + SharedDashboardInvites: + description: Invitations data and metadata that exists for a shared dashboard returned by the API. + example: + data: + - attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + properties: + data: + $ref: '#/components/schemas/SharedDashboardInvitesData' + meta: + $ref: '#/components/schemas/SharedDashboardInvitesMeta' + required: + - data + type: object + DashboardDeleteResponse: + description: Response from the delete dashboard call. + properties: + deleted_dashboard_id: + description: ID of the deleted dashboard. + type: string + type: object + GraphSnapshot: + description: Object representing a graph snapshot. + properties: + graph_def: + description: |- + A JSON document defining the graph. `graph_def` can be used instead of `metric_query`. + The JSON document uses the [grammar defined here](https://docs.datadoghq.com/graphing/graphing_json/#grammar) + and should be formatted to a single line then URL encoded. + type: string + metric_query: + description: The metric query. One of `metric_query` or `graph_def` is required. + type: string + snapshot_url: + description: URL of your [graph snapshot](https://docs.datadoghq.com/metrics/explorer/#snapshot). + example: https://app.datadoghq.com/s/f12345678/aaa-bbb-ccc + type: string + type: object + NotebooksResponse: + description: Notebooks get all response. + properties: + data: + description: List of notebook definitions. + items: + $ref: '#/components/schemas/NotebooksResponseData' + type: array + meta: + $ref: '#/components/schemas/NotebooksResponseMeta' + type: object + NotebookCreateRequestV1: + description: The description of a notebook create request. + properties: + data: + $ref: '#/components/schemas/NotebookCreateDataV1' + required: + - data + type: object + NotebookResponse: + description: The description of a notebook response. + properties: + data: + $ref: '#/components/schemas/NotebookResponseData' + type: object + NotebookUpdateRequest: + description: The description of a notebook update request. + properties: + data: + $ref: '#/components/schemas/NotebookUpdateData' + required: + - data + type: object + AnnotationsData: + description: List of annotation resources. + items: + $ref: '#/components/schemas/AnnotationData' + type: array + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + AnnotationRequestData: + description: Data for creating an annotation. + properties: + attributes: + $ref: '#/components/schemas/AnnotationCreateAttributes' + type: + $ref: '#/components/schemas/AnnotationType' + required: + - type + - attributes + type: object + AnnotationData: + description: A single annotation resource. + properties: + attributes: + $ref: '#/components/schemas/AnnotationAttributes' + id: + description: Unique identifier of the annotation. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/AnnotationType' + required: + - id + - type + - attributes + type: object + PageAnnotationsData: + description: Annotations grouped by widget for a single page. + properties: + attributes: + $ref: '#/components/schemas/PageAnnotationsAttributes' + id: + description: |- + ID of the page, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: dashboard:abc-def-xyz + type: string + type: + $ref: '#/components/schemas/PageAnnotationsType' + required: + - id + - type + - attributes + type: object + DashboardListItemRequest: + description: A dashboard within a list. + properties: + id: + description: ID of the dashboard. + example: q5j-nti-fv6 + type: string + type: + $ref: '#/components/schemas/DashboardType' + required: + - type + - id + type: object + DashboardListItemResponse: + description: A dashboard within a list. + properties: + id: + description: ID of the dashboard. + example: q5j-nti-fv6 + readOnly: true + type: string + type: + $ref: '#/components/schemas/DashboardType' + required: + - type + - id + type: object + DashboardListItem: + description: A dashboard within a list. + properties: + author: + $ref: '#/components/schemas/Creator' + created: + description: Date of creation of the dashboard. + format: date-time + readOnly: true + type: string + icon: + description: URL to the icon of the dashboard. + nullable: true + readOnly: true + type: string + id: + description: ID of the dashboard. + example: q5j-nti-fv6 + type: string + integration_id: + description: The short name of the integration. + nullable: true + readOnly: true + type: string + is_favorite: + description: Whether or not the dashboard is in the favorites. + readOnly: true + type: boolean + is_read_only: + description: Whether or not the dashboard is read only. + readOnly: true + type: boolean + is_shared: + description: Whether the dashboard is publicly shared or not. + readOnly: true + type: boolean + modified: + description: Date of last edition of the dashboard. + format: date-time + readOnly: true + type: string + popularity: + description: Popularity of the dashboard. + format: int32 + maximum: 5 + readOnly: true + type: integer + tags: + description: List of team names representing ownership of a dashboard. + items: + description: The name of a Datadog team, formatted as `team:` + type: string + maxItems: 5 + nullable: true + readOnly: true + type: array + title: + description: Title of the dashboard. + readOnly: true + type: string + type: + $ref: '#/components/schemas/DashboardType' + url: + description: URL path to the dashboard. + readOnly: true + type: string + required: + - type + - id + type: object + SharedDashboardResponse: + description: A shared dashboard response resource. + properties: + attributes: + $ref: '#/components/schemas/SharedDashboardResponseAttributes' + id: + description: ID of the shared dashboard. + example: '12345' + type: string + relationships: + $ref: '#/components/schemas/SharedDashboardRelationships' + type: + $ref: '#/components/schemas/SharedDashboardType' + required: + - id + - type + - attributes + - relationships + type: object + SharedDashboardIncluded: + description: Resource included with a shared dashboard. + properties: + attributes: + $ref: '#/components/schemas/SharedDashboardIncludedDashboardAttributes' + id: + description: ID of the dashboard. + example: abc-def-ghi + type: string + type: + $ref: '#/components/schemas/SharedDashboardIncludedDashboardType' + required: + - id + - type + - attributes + type: object + SecureEmbedCreateRequestData: + description: Data object for creating a secure embed. + properties: + attributes: + $ref: '#/components/schemas/SecureEmbedCreateRequestAttributes' + type: + $ref: '#/components/schemas/SecureEmbedRequestType' + required: + - type + - attributes + type: object + SecureEmbedCreateResponseData: + description: Data object for a secure embed create response. + properties: + attributes: + $ref: '#/components/schemas/SecureEmbedCreateResponseAttributes' + id: + description: Internal share ID. + example: '12345' + type: string + type: + $ref: '#/components/schemas/SecureEmbedCreateResponseType' + required: + - type + - id + - attributes + type: object + SecureEmbedGetResponseData: + description: Data object for a secure embed get response. + properties: + attributes: + $ref: '#/components/schemas/SecureEmbedGetResponseAttributes' + id: + description: Internal share ID. + example: '12345' + type: string + type: + $ref: '#/components/schemas/SecureEmbedGetResponseType' + required: + - type + - id + - attributes + type: object + SecureEmbedUpdateRequestData: + description: Data object for updating a secure embed. + properties: + attributes: + $ref: '#/components/schemas/SecureEmbedUpdateRequestAttributes' + type: + $ref: '#/components/schemas/SecureEmbedUpdateRequestType' + required: + - type + - attributes + type: object + SecureEmbedUpdateResponseData: + description: Data object for a secure embed update response. + properties: + attributes: + $ref: '#/components/schemas/SecureEmbedUpdateResponseAttributes' + id: + description: Internal share ID. + example: '12345' + type: string + type: + $ref: '#/components/schemas/SecureEmbedUpdateResponseType' + required: + - type + - id + - attributes + type: object + DashboardUsage: + description: A single dashboard usage record. + properties: + attributes: + $ref: '#/components/schemas/DashboardUsageAttributes' + id: + description: The dashboard ID. + example: q5j-nti-fv6 + type: string + type: + $ref: '#/components/schemas/DashboardUsageType' + required: + - id + - type + - attributes + type: object + ListDashboardsUsageResponseLinks: + description: Pagination links for a list of dashboard usage records. + properties: + first: + description: Link to the first page. + example: https://api.datadoghq.com/api/v2/dashboards/usage?page[offset]=0&page[limit]=250 + type: string + last: + description: Link to the last page, or `null` if the total is unknown. + nullable: true + type: string + next: + description: Link to the next page. Absent when there is no next page. + nullable: true + type: string + prev: + description: Link to the previous page. Absent when there is no previous page. + nullable: true + type: string + self: + description: Link to the current page. + example: https://api.datadoghq.com/api/v2/dashboards/usage + type: string + type: object + ListDashboardsUsageResponseMeta: + description: Pagination metadata for a list of dashboard usage records. + properties: + page: + $ref: '#/components/schemas/PaginationMetaPage' + type: object + PowerpackData: + description: Powerpack data object. + properties: + attributes: + $ref: '#/components/schemas/PowerpackAttributes' + id: + description: ID of the powerpack. + type: string + relationships: + $ref: '#/components/schemas/PowerpackRelationships' + type: + description: Type of widget, must be powerpack. + example: powerpack + type: string + type: object + User: + description: User object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + PowerpackResponseLinks: + description: Links attributes. + properties: + first: + description: Link to last page. + type: string + last: + description: Link to first page. + example: https://app.datadoghq.com/api/v2/powerpacks?page[offset]=0&page[limit]=25 + nullable: true + type: string + next: + description: Link for the next set of results. + example: https://app.datadoghq.com/api/v2/powerpacks?page[offset]=25&page[limit]=25 + type: string + prev: + description: Link for the previous set of results. + nullable: true + type: string + self: + description: Link to current page. + example: https://app.datadoghq.com/api/v2/powerpacks + type: string + type: object + PowerpacksResponseMeta: + description: Powerpack response metadata. + properties: + pagination: + $ref: '#/components/schemas/PowerpacksResponseMetaPagination' + type: object + DatasetReportScheduleResponseData: + description: The JSON:API data object representing a dataset report schedule. + properties: + attributes: + $ref: '#/components/schemas/DatasetReportScheduleResponseAttributes' + id: + description: The unique identifier of the dataset report schedule. + example: e1234567-1234-1234-1234-123456789012 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/ReportScheduleResponseRelationships' + type: + $ref: '#/components/schemas/ReportScheduleType' + required: + - id + - type + - attributes + - relationships + type: object + ReportScheduleIncludedResource: + description: A related resource included with a report schedule. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleAuthorAttributes' + id: + description: The user UUID. + example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: string + type: + $ref: '#/components/schemas/ReportScheduleAuthorType' + required: + - type + - id + - attributes + type: object + PrintReportRequestData: + description: The JSON:API data object for a print report request. + properties: + attributes: + $ref: '#/components/schemas/PrintReportRequestAttributes' + type: + $ref: '#/components/schemas/PrintReportType' + required: + - type + - attributes + type: object + PrintReportResponseData: + description: The JSON:API data object for a print-only report. + properties: + attributes: + $ref: '#/components/schemas/PrintReportResponseAttributes' + id: + description: The unique identifier of the report. + example: 11111111-2222-3333-4444-555555555555 + format: uuid + type: string + type: + $ref: '#/components/schemas/PrintReportType' + required: + - id + - type + - attributes + type: object + ReportScheduleCreateRequestData: + description: The JSON:API data object for a report schedule creation request. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleCreateRequestAttributes' + type: + $ref: '#/components/schemas/ReportScheduleType' + required: + - type + - attributes + type: object + ReportScheduleResponseData: + description: The JSON:API data object representing a report schedule. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleResponseAttributes' + id: + description: The unique identifier of the report schedule. + example: 11111111-2222-3333-4444-555555555555 + type: string + relationships: + $ref: '#/components/schemas/ReportScheduleResponseRelationships' + type: + $ref: '#/components/schemas/ReportScheduleType' + required: + - id + - type + - attributes + - relationships + type: object + ReportScheduleListResponseData: + description: The JSON:API data object representing a report schedule in a list response. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleListResponseAttributes' + id: + description: The unique identifier of the report schedule. + example: 11111111-2222-3333-4444-555555555555 + type: string + relationships: + $ref: '#/components/schemas/ReportScheduleListResponseRelationships' + type: + $ref: '#/components/schemas/ReportScheduleType' + required: + - id + - type + - attributes + - relationships + type: object + ReportScheduleListResponseLinks: + description: Pagination links for navigating a report schedule list response. + properties: + first: + description: Link to the first page. + example: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25 + nullable: true + type: string + last: + description: Link to the last page, or `null` if it is unavailable. + example: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25 + nullable: true + type: string + next: + description: Link to the next page, or `null` if it is unavailable. + example: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=25&page[limit]=25 + nullable: true + type: string + prev: + description: Link to the previous page, or `null` if it is unavailable. + example: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[offset]=0&page[limit]=25 + nullable: true + type: string + self: + description: Link to the current page. + example: https://api.datadoghq.com/api/v2/reporting/schedule/list?page[limit]=25 + nullable: true + type: string + type: object + ReportScheduleListResponseMeta: + description: Metadata for a paginated report schedule list response. + properties: + pagination: + $ref: '#/components/schemas/ReportScheduleListResponsePagination' + type: object + ReportSchedulePatchRequestData: + description: The JSON:API data object for a report schedule update request. + properties: + attributes: + $ref: '#/components/schemas/ReportSchedulePatchRequestAttributes' + type: + $ref: '#/components/schemas/ReportScheduleType' + required: + - type + - attributes + type: object + ReportScheduleToggleRequestData: + description: The JSON:API data object for a report schedule toggle request. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleToggleRequestAttributes' + type: + $ref: '#/components/schemas/ReportScheduleType' + required: + - type + - attributes + type: object + CreateSnapshotDataRequest: + description: Data envelope for snapshot creation. + properties: + attributes: + $ref: '#/components/schemas/CreateSnapshotDataAttributesRequest' + type: + $ref: '#/components/schemas/CreateSnapshotType' + required: + - type + - attributes + type: object + CreateSnapshotDataResponse: + description: Data envelope for the snapshot creation response. + properties: + attributes: + $ref: '#/components/schemas/CreateSnapshotDataAttributesResponse' + id: + description: The unique identifier of the created snapshot. + example: 12345678-1234-5678-9abc-def123456789 + type: string + type: + $ref: '#/components/schemas/CreateSnapshotType' + required: + - id + - type + - attributes + type: object + StegadographyWidgetItems: + description: List of watermarked widget resources recovered from an image. + example: + - attributes: + locationx: 100 + locationy: 200 + rawData: '{"widgetType":"timeseries","requests":[]}' + watermark: 0123456789abcdef + id: abc123:0123456789abcdef + type: widget + items: + $ref: '#/components/schemas/StegadographyWidget' + type: array + WidgetData: + description: A widget resource object. + properties: + attributes: + $ref: '#/components/schemas/WidgetAttributes' + id: + description: The unique identifier of the widget. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: string + relationships: + $ref: '#/components/schemas/WidgetRelationships' + type: + description: Widgets resource type. + example: widgets + type: string + required: + - id + - type + - attributes + type: object + WidgetIncludedUser: + description: A user resource included in the response. + properties: + attributes: + $ref: '#/components/schemas/WidgetIncludedUserAttributes' + id: + description: The unique identifier of the user. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: string + type: + description: Users resource type. + example: users + type: string + required: + - id + - type + type: object + WidgetSearchMeta: + description: Metadata about the search results. + properties: + created_by_anyone_total: + description: Total number of widgets created by anyone. + format: int64 + type: integer + created_by_you_total: + description: Total number of widgets created by the current user. + format: int64 + type: integer + favorited_by_you_total: + description: Total number of widgets favorited by the current user. + format: int64 + type: integer + filtered_total: + description: Total number of widgets matching the current filter criteria. + format: int64 + type: integer + type: object + CreateOrUpdateWidgetRequestData: + description: Data for creating or updating a widget. + properties: + attributes: + $ref: '#/components/schemas/CreateOrUpdateWidgetRequestAttributes' + type: + description: Widgets resource type. + example: widgets + type: string + required: + - type + - attributes + type: object + DashboardBulkActionDataList: + description: List of dashboard bulk action request data objects. + example: + - id: 123-abc-456 + type: dashboard + items: + $ref: '#/components/schemas/DashboardBulkActionData' + type: array + DashboardSummaryDefinition: + description: Dashboard definition. + properties: + author_handle: + description: Identifier of the dashboard author. + type: string + created_at: + description: Creation date of the dashboard. + format: date-time + type: string + description: + description: Description of the dashboard. + nullable: true + type: string + id: + description: Dashboard identifier. + type: string + is_read_only: + deprecated: true + description: |- + Whether this dashboard is read-only. If True, only the author and admins can make changes to it. + + This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards. + type: boolean + layout_type: + $ref: '#/components/schemas/DashboardLayoutType' + modified_at: + description: Modification date of the dashboard. + format: date-time + type: string + title: + description: Title of the dashboard. + type: string + url: + description: URL of the dashboard. + type: string + type: object + DashboardDefaultTimeframeSetting: + description: The default timeframe applied when opening the dashboard. Set to `null` to clear the dashboard's default timeframe. + properties: + type: + $ref: '#/components/schemas/DashboardLiveTimeframeType' + unit: + $ref: '#/components/schemas/WidgetLiveSpanUnit' + value: + description: Value of the live timeframe span. + example: 4 + format: int64 + minimum: 1 + type: integer + from: + description: Start time in milliseconds since epoch. + example: 1712080128000 + format: int64 + minimum: 0 + type: integer + to: + description: End time in milliseconds since epoch. + example: 1712083128000 + format: int64 + minimum: 0 + type: integer + required: + - type + - value + - unit + - from + - to + type: object + DashboardLayoutType: + description: Layout type of the dashboard. + enum: + - ordered + - free + example: ordered + type: string + x-enum-varnames: + - ORDERED + - FREE + DashboardReflowType: + description: |- + Reflow type for a **new dashboard layout** dashboard. Set this only when layout type is 'ordered'. + If set to 'fixed', the dashboard expects all widgets to have a layout, and if it's set to 'auto', + widgets should not have layouts. + enum: + - auto + - fixed + type: string + x-enum-varnames: + - AUTO + - FIXED + DashboardTab: + description: Dashboard tab for organizing widgets. + properties: + id: + description: UUID of the tab. + example: '' + format: uuid + type: string + name: + description: Name of the tab. + example: L + maxLength: 100 + minLength: 1 + type: string + widget_ids: + description: List of widget IDs belonging to this tab. The backend also accepts positional references in @N format (1-indexed) as a convenience for Terraform and other declarative tools. + example: + - 0 + items: + description: Widget ID. + format: int64 + type: integer + type: array + required: + - id + - name + - widget_ids + type: object + DashboardTemplateVariablePreset: + description: Template variables saved views. + properties: + name: + description: The name of the variable. + type: string + template_variables: + description: List of variables. + items: + $ref: '#/components/schemas/DashboardTemplateVariablePresetValue' + type: array + type: object + DashboardTemplateVariable: + description: Template variable. + properties: + available_values: + description: The list of values that the template variable drop-down is limited to. + example: + - my-host + - host1 + - host2 + items: + description: Template variable value. + type: string + nullable: true + type: array + default: + deprecated: true + description: (deprecated) The default value for the template variable on dashboard load. Cannot be used in conjunction with `defaults`. + example: my-host + nullable: true + type: string + defaults: + description: One or many default values for template variables on load. If more than one default is specified, they will be unioned together with `OR`. Cannot be used in conjunction with `default`. + example: + - my-host-1 + - my-host-2 + items: + description: One of many default values for the template variable on dashboard load. + minLength: 1 + type: string + type: array + name: + description: The name of the variable. + example: host1 + type: string + prefix: + description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down. + example: host + nullable: true + type: string + type: + description: The type of variable. This is to differentiate between filter variables (interpolated in query) and group by variables (interpolated into group by). + example: group + nullable: true + type: string + required: + - name + type: object + Widget: + description: |- + Information about widget. + + **Note**: The `layout` property is required for widgets in dashboards with `free` `layout_type`. + For the **new dashboard layout**, the `layout` property depends on the `reflow_type` of the dashboard. + - If `reflow_type` is `fixed`, `layout` is required. + - If `reflow_type` is `auto`, `layout` should not be set. + properties: + definition: + $ref: '#/components/schemas/WidgetDefinitionV1' + id: + description: ID of the widget. + format: int64 + type: integer + layout: + $ref: '#/components/schemas/WidgetLayout' + required: + - definition + type: object + CreatorV1: + description: Object describing the creator of the shared element. + properties: + email: + description: Email of the creator. + type: string + handle: + description: Handle of the creator. + type: string + name: + description: Name of the creator. + nullable: true + type: string + readOnly: true + type: object + SharedDashboardAuthor: + description: User who shared the dashboard. + properties: + handle: + description: Identifier of the user who shared the dashboard. + example: test@datadoghq.com + readOnly: true + type: string + name: + description: Name of the user who shared the dashboard. + nullable: true + readOnly: true + type: string + readOnly: true + type: object + DashboardTypeV1: + description: The type of the associated private dashboard. + enum: + - custom_timeboard + - custom_screenboard + example: custom_timeboard + type: string + x-enum-varnames: + - CUSTOM_TIMEBOARD + - CUSTOM_SCREENBOARD + DashboardGlobalTime: + description: Object containing the live span selection for the dashboard. + properties: + live_span: + $ref: '#/components/schemas/DashboardGlobalTimeLiveSpan' + type: object + SharedDashboardInviteesItems: + description: The allowlisted invitees for an INVITE-only shared dashboard. + properties: + access_expiration: + description: Time of the invitee expiration. Null means the invite will not expire. + format: date-time + nullable: true + type: string + created_at: + description: Time that the invitee was created. + format: date-time + readOnly: true + type: string + email: + description: Email of the invitee. + example: test@datadoghq.com + type: string + required: + - email + type: object + SelectableTemplateVariableItems: + description: Object containing the template variable's name, associated tag/attribute, default value and selectable values. + properties: + default_value: + description: The default value of the template variable. + type: string + name: + description: Name of the template variable. + type: string + prefix: + description: The tag/attribute key associated with the template variable. + type: string + type: + description: The type of variable. This is to differentiate between filter variables (interpolated in query) and group by variables (interpolated into group by). + nullable: true + type: string + visible_tags: + description: List of visible tag values on the shared dashboard. + items: + description: Other values for this tag that can be selected on the shared dashboard. + type: string + nullable: true + type: array + type: object + DashboardShareType: + description: Type of sharing access (either open to anyone who has the public URL or invite-only). + enum: + - open + - invite + - embed + nullable: true + type: string + x-enum-varnames: + - OPEN + - INVITE + - EMBED + SharedDashboardStatusV1: + description: Active means the dashboard is publicly available. Paused means the dashboard is not publicly available. + enum: + - active + - paused + example: active + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + ViewingPreferences: + description: The viewing preferences for a shared dashboard. + properties: + high_density: + description: Whether the widgets on the shared dashboard should be displayed with high density. + type: boolean + theme: + $ref: '#/components/schemas/ViewingPreferencesTheme' + type: object + SharedDashboardUpdateRequestGlobalTime: + description: Timeframe setting for the shared dashboard. + example: + live_span: 1h + nullable: true + properties: + live_span: + $ref: '#/components/schemas/DashboardGlobalTimeLiveSpan' + type: object + SharedDashboardInvitesData: + description: An object or list of objects containing the information for an invitation to a shared dashboard. + example: + - attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + properties: + attributes: + $ref: '#/components/schemas/SharedDashboardInvitesDataObjectAttributes' + type: + $ref: '#/components/schemas/DashboardInviteType' + required: + - type + - attributes + type: object + items: + $ref: '#/components/schemas/SharedDashboardInvitesDataObject' + SharedDashboardInvitesMeta: + description: Pagination metadata returned by the API. + properties: + page: + $ref: '#/components/schemas/SharedDashboardInvitesMetaPage' + readOnly: true + type: object + NotebooksResponseData: + description: The data for a notebook in get all response. + properties: + attributes: + $ref: '#/components/schemas/NotebooksResponseDataAttributes' + id: + description: Unique notebook ID, assigned when you create the notebook. + example: 123456 + format: int64 + readOnly: true + type: integer + type: + $ref: '#/components/schemas/NotebookResourceTypeV1' + required: + - id + - type + - attributes + type: object + NotebooksResponseMeta: + description: Searches metadata returned by the API. + properties: + page: + $ref: '#/components/schemas/NotebooksResponsePage' + type: object + NotebookCreateDataV1: + description: The data for a notebook create request. + properties: + attributes: + $ref: '#/components/schemas/NotebookCreateDataAttributes' + type: + $ref: '#/components/schemas/NotebookResourceTypeV1' + required: + - type + - attributes + type: object + NotebookResponseData: + description: The data for a notebook. + properties: + attributes: + $ref: '#/components/schemas/NotebookResponseDataAttributes' + id: + description: Unique notebook ID, assigned when you create the notebook. + example: 123456 + format: int64 + readOnly: true + type: integer + type: + $ref: '#/components/schemas/NotebookResourceTypeV1' + required: + - id + - type + - attributes + type: object + NotebookUpdateData: + description: The data for a notebook update request. + properties: + attributes: + $ref: '#/components/schemas/NotebookUpdateDataAttributes' + type: + $ref: '#/components/schemas/NotebookResourceTypeV1' + required: + - type + - attributes + type: object + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + AnnotationCreateAttributes: + description: Attributes for creating or updating an annotation. + properties: + color: + $ref: '#/components/schemas/AnnotationColor' + description: + description: User-defined text attached to the annotation. + example: Deployed v2.3.1 to production. + type: string + end_time: + description: End time of the annotation in milliseconds since the Unix epoch. Required for `timeRegion` annotations; omit or set to null for `pointInTime` annotations. + example: 1704070800000 + format: int64 + nullable: true + type: integer + page_id: + description: |- + ID of the page the annotation belongs to, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: dashboard:abc-def-xyz + type: string + start_time: + description: Start time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + type: + $ref: '#/components/schemas/AnnotationKind' + widget_ids: + description: IDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page. + example: + - '1234567890' + items: + description: Widget ID. + type: string + type: array + required: + - page_id + - description + - type + - color + - start_time + type: object + AnnotationType: + description: Annotation resource type. + enum: + - annotation + example: annotation + type: string + x-enum-varnames: + - ANNOTATION + AnnotationAttributes: + description: Attributes of an annotation returned in a response. + properties: + author_id: + description: Identifier of the user who created the annotation. + example: 00000000-0000-0000-0000-000000000000 + type: string + color: + $ref: '#/components/schemas/AnnotationColor' + created_at: + description: Creation time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + description: + description: User-defined text attached to the annotation. + example: Deployed v2.3.1 to production. + type: string + end_time: + description: End time of the annotation in milliseconds since the Unix epoch. Null for `pointInTime` annotations. + example: 1704070800000 + format: int64 + nullable: true + type: integer + modified_at: + description: Last modification time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + page_id: + description: |- + ID of the page the annotation belongs to, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: dashboard:abc-def-xyz + type: string + start_time: + description: Start time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + type: + $ref: '#/components/schemas/AnnotationKind' + widget_ids: + description: IDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page. + example: + - '1234567890' + items: + description: Widget ID. + type: string + type: array + required: + - page_id + - description + - author_id + - type + - color + - start_time + - end_time + - created_at + - modified_at + type: object + PageAnnotationsAttributes: + description: Attributes of the annotations on a page. + properties: + annotations: + $ref: '#/components/schemas/AnnotationsInPageMap' + global_annotations: + $ref: '#/components/schemas/GlobalAnnotationIds' + widget_mapping: + $ref: '#/components/schemas/WidgetAnnotationsMap' + required: + - annotations + - widget_mapping + - global_annotations + type: object + PageAnnotationsType: + description: Page annotations resource type. + enum: + - page_annotations + example: page_annotations + type: string + x-enum-varnames: + - PAGE_ANNOTATIONS + DashboardType: + description: The type of the dashboard. + enum: + - custom_timeboard + - custom_screenboard + - integration_screenboard + - integration_timeboard + - host_timeboard + example: host_timeboard + type: string + x-enum-varnames: + - CUSTOM_TIMEBOARD + - CUSTOM_SCREENBOARD + - INTEGRATION_SCREENBOARD + - INTEGRATION_TIMEBOARD + - HOST_TIMEBOARD + Creator: + description: Creator of the object. + properties: + email: + description: Email of the creator. + type: string + handle: + description: Handle of the creator. + type: string + name: + description: Name of the creator. + nullable: true + type: string + type: object + SharedDashboardResponseAttributes: + description: Attributes of a shared dashboard response. + properties: + created_at: + description: Time when the shared dashboard was created. + example: '2026-01-01T00:00:00.000Z' + format: date-time + type: string + embeddable_domains: + description: Domains where embed-type shared dashboards can be embedded. + example: + - https://example.com + items: + description: An embeddable domain. + type: string + type: array + expiration: + description: Time when the shared dashboard expires. + example: '2026-02-01T00:00:00.000Z' + format: date-time + nullable: true + type: string + global_time: + $ref: '#/components/schemas/SharedDashboardGlobalTime' + global_time_selectable: + description: Whether viewers can select a different global time setting. + example: false + type: boolean + invitees: + description: Invitees for invite-only shared dashboards. + items: + $ref: '#/components/schemas/SharedDashboardInvitee' + type: array + last_accessed: + description: Time when the shared dashboard was last accessed. + example: '2026-01-15T09:30:00.000Z' + format: date-time + nullable: true + type: string + selectable_template_vars: + description: Template variables that viewers can modify. + items: + $ref: '#/components/schemas/SharedDashboardSelectableTemplateVariable' + type: array + share_type: + $ref: '#/components/schemas/SharedDashboardShareType' + sharer_disabled: + description: Whether the user who shared the dashboard is disabled. + example: false + type: boolean + status: + $ref: '#/components/schemas/SharedDashboardStatus' + title: + description: Display title for the shared dashboard. + example: Q1 Metrics Dashboard + type: string + token: + description: Token assigned to the shared dashboard. + example: abc-123-token + type: string + url: + description: URL for the shared dashboard. + example: https://p.datadoghq.com/sb/abc-123-token + type: string + viewing_preferences: + $ref: '#/components/schemas/SharedDashboardViewingPreferences' + required: + - token + - title + - url + - viewing_preferences + - global_time_selectable + - global_time + - selectable_template_vars + - created_at + - last_accessed + - status + - share_type + - invitees + - embeddable_domains + - expiration + - sharer_disabled + type: object + SharedDashboardRelationships: + description: Relationships of a shared dashboard. + properties: + dashboard: + $ref: '#/components/schemas/SharedDashboardRelationshipDashboard' + sharer: + $ref: '#/components/schemas/SharedDashboardRelationshipSharer' + required: + - dashboard + - sharer + type: object + SharedDashboardType: + default: shared_dashboard + description: Shared dashboard resource type. + enum: + - shared_dashboard + example: shared_dashboard + type: string + x-enum-varnames: + - SHARED_DASHBOARD + SharedDashboardIncludedDashboard: + description: Included dashboard resource. + properties: + attributes: + $ref: '#/components/schemas/SharedDashboardIncludedDashboardAttributes' + id: + description: ID of the dashboard. + example: abc-def-ghi + type: string + type: + $ref: '#/components/schemas/SharedDashboardIncludedDashboardType' + required: + - id + - type + - attributes + type: object + SharedDashboardIncludedUser: + description: Included user resource. + properties: + attributes: + $ref: '#/components/schemas/SharedDashboardIncludedUserAttributes' + id: + description: ID of the user. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/UserResourceType' + required: + - id + - type + - attributes + type: object + SecureEmbedCreateRequestAttributes: + description: Attributes for creating a secure embed shared dashboard. + properties: + global_time: + $ref: '#/components/schemas/SecureEmbedGlobalTime' + global_time_selectable: + description: Whether viewers can change the time range. + example: true + type: boolean + selectable_template_vars: + description: Template variables viewers can modify. + items: + $ref: '#/components/schemas/SecureEmbedSelectableTemplateVariable' + type: array + status: + $ref: '#/components/schemas/SecureEmbedStatus' + title: + description: Display title for the shared dashboard. + example: Q1 Metrics Dashboard + type: string + viewing_preferences: + $ref: '#/components/schemas/SecureEmbedViewingPreferences' + required: + - status + - title + - global_time_selectable + - selectable_template_vars + - viewing_preferences + - global_time + type: object + SecureEmbedRequestType: + description: Resource type for secure embed create requests. + enum: + - secure_embed_request + example: secure_embed_request + type: string + x-enum-varnames: + - SECURE_EMBED_REQUEST + SecureEmbedCreateResponseAttributes: + description: Attributes of a newly created secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: '2026-03-11T18:30:00.000000' + readOnly: true + type: string + credential: + description: The secret credential used for HMAC signing. Returned only on creation. Store securely — it cannot be retrieved again. + example: A1b2C3d4E5f6G7h8I9j0K1l2M3n4O5p6Q7r8S9t0U1v2 + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: abc-def-ghi + readOnly: true + type: string + global_time: + $ref: '#/components/schemas/SecureEmbedGlobalTime' + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: '12345' + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: '#/components/schemas/SecureEmbedSelectableTemplateVariable' + type: array + share_type: + $ref: '#/components/schemas/SecureEmbedShareType' + status: + $ref: '#/components/schemas/SecureEmbedStatus' + title: + description: Display title. + example: Q1 Metrics Dashboard + type: string + token: + description: Public share token. + example: s3cur3t0k3n-abcdef123456 + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456 + readOnly: true + type: string + viewing_preferences: + $ref: '#/components/schemas/SecureEmbedViewingPreferences' + type: object + SecureEmbedCreateResponseType: + description: Resource type for secure embed create responses. + enum: + - secure_embed_create_response + example: secure_embed_create_response + type: string + x-enum-varnames: + - SECURE_EMBED_CREATE_RESPONSE + SecureEmbedGetResponseAttributes: + description: Attributes of an existing secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: '2026-03-11T18:30:00.000000' + readOnly: true + type: string + credential_suffix: + description: Last 4 characters of the credential. Defaults to `0000` if unavailable. + example: ab3f + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: abc-def-ghi + readOnly: true + type: string + global_time: + $ref: '#/components/schemas/SecureEmbedGlobalTime' + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: '12345' + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: '#/components/schemas/SecureEmbedSelectableTemplateVariable' + type: array + share_type: + $ref: '#/components/schemas/SecureEmbedShareType' + status: + $ref: '#/components/schemas/SecureEmbedStatus' + title: + description: Display title. + example: Q1 Metrics Dashboard + type: string + token: + description: Public share token. + example: s3cur3t0k3n-abcdef123456 + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456 + readOnly: true + type: string + viewing_preferences: + $ref: '#/components/schemas/SecureEmbedViewingPreferences' + type: object + SecureEmbedGetResponseType: + description: Resource type for secure embed get responses. + enum: + - secure_embed_get_response + example: secure_embed_get_response + type: string + x-enum-varnames: + - SECURE_EMBED_GET_RESPONSE + SecureEmbedUpdateRequestAttributes: + description: Attributes for updating a secure embed shared dashboard. All fields are optional. + properties: + global_time: + $ref: '#/components/schemas/SecureEmbedGlobalTime' + global_time_selectable: + description: Updated time selectability. + example: true + type: boolean + selectable_template_vars: + description: Updated template variables. + items: + $ref: '#/components/schemas/SecureEmbedSelectableTemplateVariable' + type: array + status: + $ref: '#/components/schemas/SecureEmbedStatus' + title: + description: Updated title. + example: Q1 Metrics Dashboard (Updated) + type: string + viewing_preferences: + $ref: '#/components/schemas/SecureEmbedViewingPreferences' + type: object + SecureEmbedUpdateRequestType: + description: Resource type for secure embed update requests. + enum: + - secure_embed_update_request + example: secure_embed_update_request + type: string + x-enum-varnames: + - SECURE_EMBED_UPDATE_REQUEST + SecureEmbedUpdateResponseAttributes: + description: Attributes of an updated secure embed shared dashboard. + properties: + created_at: + description: Creation timestamp. + example: '2026-03-11T18:30:00.000000' + readOnly: true + type: string + credential_suffix: + description: Last 4 characters of the credential. Defaults to `0000` if unavailable. + example: ab3f + readOnly: true + type: string + dashboard_id: + description: The source dashboard ID. + example: abc-def-ghi + readOnly: true + type: string + global_time: + $ref: '#/components/schemas/SecureEmbedGlobalTime' + global_time_selectable: + description: Whether time range is viewer-selectable. + example: true + type: boolean + id: + description: Internal share ID. + example: '12345' + readOnly: true + type: string + selectable_template_vars: + description: Template variables with their configuration. + items: + $ref: '#/components/schemas/SecureEmbedSelectableTemplateVariable' + type: array + share_type: + $ref: '#/components/schemas/SecureEmbedShareType' + status: + $ref: '#/components/schemas/SecureEmbedStatus' + title: + description: Display title. + example: Q1 Metrics Dashboard (Updated) + type: string + token: + description: Public share token. + example: s3cur3t0k3n-abcdef123456 + readOnly: true + type: string + url: + description: CDN URL for the shared dashboard. + example: https://p.datadoghq.com/sb/secure-embed/s3cur3t0k3n-abcdef123456 + readOnly: true + type: string + viewing_preferences: + $ref: '#/components/schemas/SecureEmbedViewingPreferences' + type: object + SecureEmbedUpdateResponseType: + description: Resource type for secure embed update responses. + enum: + - secure_embed_update_response + example: secure_embed_update_response + type: string + x-enum-varnames: + - SECURE_EMBED_UPDATE_RESPONSE + DashboardUsageAttributes: + description: Usage statistics for a dashboard. The `viewer` field and all view-count fields (`total_views`, `viewed_at`, `total_views_by_type`) are populated only when Real User Monitoring (RUM) is active for the org. + properties: + author: + $ref: '#/components/schemas/DashboardUsageUser' + created_at: + description: When the dashboard was created. + example: '2026-01-15T09:30:00.000Z' + format: date-time + nullable: true + type: string + dashboard_quality_score: + description: The dashboard quality score, or `null` when no score is available. + example: 0.85 + format: double + nullable: true + type: number + edited_at: + description: When the dashboard was most recently edited. + example: '2026-04-20T11:05:00.000Z' + format: date-time + nullable: true + type: string + org_id: + description: The Datadog organization that owns the dashboard. + example: 100 + format: int64 + type: integer + teams: + description: Teams the dashboard is tagged with. + items: + description: A team handle. + type: string + nullable: true + type: array + title: + description: The dashboard title. + example: My production overview + type: string + total_views: + description: Total view count for the dashboard. Counts only views captured by Real User Monitoring (RUM); `0` in orgs without RUM. + example: 42 + format: int64 + type: integer + total_views_by_type: + additionalProperties: + description: View count for that view type. + format: int64 + type: integer + description: View counts keyed by view type (`in_app`, `embed`, `public`, `shared`, `api`, `unknown`). Counts only views captured by Real User Monitoring (RUM); empty in orgs without RUM. + nullable: true + type: object + viewed_at: + description: When the dashboard was most recently viewed. Populated only when Real User Monitoring (RUM) is active for the org; `null` in orgs without RUM. + example: '2026-05-01T14:22:10.000Z' + format: date-time + nullable: true + type: string + viewer: + $ref: '#/components/schemas/DashboardUsageUser' + widget_count: + description: The total number of widgets on the dashboard. + example: 12 + format: int64 + nullable: true + type: integer + widget_count_by_type: + additionalProperties: + description: Widget count for that widget type. + format: int64 + type: integer + description: Widget counts keyed by widget type. The map includes group widgets and widgets without requests. + nullable: true + type: object + required: + - org_id + type: object + DashboardUsageType: + default: dashboards-usages + description: The type of the resource. Always `dashboards-usages`. + enum: + - dashboards-usages + example: dashboards-usages + type: string + x-enum-varnames: + - DASHBOARDS_USAGES + PaginationMetaPage: + description: Offset-based pagination schema. + example: + first_offset: 0 + last_offset: 900 + limit: 100 + next_offset: 100 + offset: 0 + prev_offset: 100 + total: 1000 + type: offset_limit + properties: + first_offset: + description: Integer representing the offset to fetch the first page of results. + example: 0 + format: int64 + type: integer + last_offset: + description: Integer representing the offset to fetch the last page of results. + example: 900 + format: int64 + nullable: true + type: integer + limit: + description: Integer representing the number of elements to be returned in the results. + example: 100 + format: int64 + type: integer + next_offset: + description: Integer representing the index of the first element in the next page of results. Equal to page size added to the current offset. + example: 100 + format: int64 + nullable: true + type: integer + offset: + description: Integer representing the index of the first element in the results. + example: 0 + format: int64 + type: integer + prev_offset: + description: Integer representing the index of the first element in the previous page of results. + example: 100 + format: int64 + nullable: true + type: integer + total: + description: Integer representing the total number of elements available. + example: 1000 + format: int64 + nullable: true + type: integer + type: + $ref: '#/components/schemas/PaginationMetaPageType' + type: object + PowerpackAttributes: + description: Powerpack attribute object. + properties: + description: + description: Description of this powerpack. + example: Powerpack for ABC + type: string + group_widget: + $ref: '#/components/schemas/PowerpackGroupWidget' + name: + description: Name of the powerpack. + example: Sample Powerpack + type: string + tags: + description: List of tags to identify this powerpack. + example: + - tag:foo1 + items: + description: A tag to identify this powerpack. + maxLength: 80 + type: string + maxItems: 8 + type: array + template_variables: + description: List of template variables for this powerpack. + example: + - defaults: + - '*' + name: test + items: + $ref: '#/components/schemas/PowerpackTemplateVariable' + type: array + required: + - group_widget + - name + type: object + PowerpackRelationships: + description: Powerpack relationship object. + properties: + author: + $ref: '#/components/schemas/RelationshipToUser' + type: object + UserAttributes: + description: Attributes of user object returned by the API. + properties: + created_at: + description: The ISO 8601 timestamp of when the user account was created. + format: date-time + type: string + disabled: + description: Whether the user account is deactivated. Disabled users cannot log in. + type: boolean + email: + description: The email address of the user, used for login and notifications. + type: string + handle: + description: The unique handle (username) of the user, typically matching their email prefix. + type: string + icon: + description: URL of the user's profile icon, typically a Gravatar URL derived from the email address. + type: string + last_login_time: + description: The ISO 8601 timestamp of the user's most recent login, or null if the user has never logged in. + format: date-time + nullable: true + readOnly: true + type: string + mfa_enabled: + description: Whether multi-factor authentication (MFA) is enabled for the user's account. + readOnly: true + type: boolean + modified_at: + description: The ISO 8601 timestamp of when the user account was last modified. + format: date-time + type: string + name: + description: The full display name of the user as shown in the Datadog UI. + nullable: true + type: string + service_account: + description: |- + Whether this is a service account rather than a human user. + Service accounts are used for programmatic API access. + type: boolean + status: + description: The current status of the user account (for example, `Active`, `Pending`, or `Disabled`). + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true + type: string + uuid: + description: The globally unique identifier (UUID) of the user. + readOnly: true + type: string + verified: + description: Whether the user's email address has been verified. + type: boolean + type: object + UserResponseRelationships: + description: Relationships of the user object returned by the API. + properties: + org: + $ref: '#/components/schemas/RelationshipToOrganization' + other_orgs: + $ref: '#/components/schemas/RelationshipToOrganizations' + other_users: + $ref: '#/components/schemas/RelationshipToUsers' + roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + PowerpacksResponseMetaPagination: + description: Powerpack response pagination metadata. + properties: + first_offset: + description: The first offset. + format: int64 + type: integer + last_offset: + description: The last offset. + format: int64 + nullable: true + type: integer + limit: + description: Pagination limit. + format: int64 + type: integer + next_offset: + description: The next offset. + format: int64 + type: integer + offset: + description: The offset. + format: int64 + type: integer + prev_offset: + description: The previous offset. + format: int64 + type: integer + total: + description: Total results. + format: int64 + type: integer + type: + description: Offset type. + type: string + type: object + DatasetReportScheduleResponseAttributes: + description: The configuration and derived state of a report schedule for a published dataset. + properties: + cell_id: + description: The identifier of the notebook cell that published the dataset, or `null` if not set. + example: sevhjcis + nullable: true + type: string + dataset_id: + description: The identifier of the dataset, or `null` if not set. + example: MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm + nullable: true + type: string + description: + description: The description of the report. + example: This is a scheduled notebook dataset report. + type: string + file_row_limit: + description: The maximum number of rows included in the attached CSV file, or `null` if not set. + example: 5000 + format: int64 + nullable: true + type: integer + inline_row_limit: + description: The maximum number of rows included inline in the email body, or `null` if not set. + example: 10 + format: int64 + nullable: true + type: integer + next_recurrence: + description: |- + The Unix timestamp, in milliseconds, of the next scheduled delivery, or + `null` if none is scheduled. + example: 1725859200000 + format: int64 + nullable: true + type: integer + notebook_id: + description: The identifier of the notebook containing the dataset cell, or `null` if not set. + example: 1 + format: int64 + nullable: true + type: integer + recipients: + description: |- + The recipients of the report (email addresses, Slack channel references, or + Microsoft Teams channel references). + example: + - test@datadoghq.com + items: + description: |- + A single recipient (email address, Slack channel reference, or Microsoft + Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the widget containing the dataset. + example: aaaabbbb-1111-2222-3333-444455556666 + type: string + resource_type: + $ref: '#/components/schemas/DatasetReportScheduleResourceType' + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: |- + DTSTART;TZID=America/New_York:20240912T090000 + RRULE:FREQ=DAILY;BYHOUR=9;BYMINUTE=0 + type: string + status: + $ref: '#/components/schemas/ReportScheduleStatus' + timeframe: + description: The relative timeframe of data included in the report. + example: calendar_day + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: America/New_York + type: string + title: + description: The title of the report. + example: My Cool Dataset Report + type: string + required: + - status + - resource_id + - resource_type + - recipients + - rrule + - timezone + - title + - description + - timeframe + - file_row_limit + - inline_row_limit + - next_recurrence + - notebook_id + - cell_id + - dataset_id + type: object + ReportScheduleResponseRelationships: + description: Relationships for the report schedule. + properties: + author: + $ref: '#/components/schemas/ReportScheduleAuthorRelationship' + required: + - author + type: object + ReportScheduleType: + description: JSON:API resource type for report schedules. + enum: + - schedule + example: schedule + type: string + x-enum-varnames: + - SCHEDULE + ReportScheduleAuthor: + description: A user included as a related JSON:API resource. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleAuthorAttributes' + id: + description: The user UUID. + example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: string + type: + $ref: '#/components/schemas/ReportScheduleAuthorType' + required: + - type + - id + - attributes + type: object + ReportScheduleResource: + description: A report target resource included as a related JSON:API resource. + properties: + attributes: + $ref: '#/components/schemas/ReportScheduleResourceAttributes' + id: + description: The resource identifier. + example: abc-def-ghi + type: string + type: + $ref: '#/components/schemas/ReportScheduleIncludedResourceType' + required: + - type + - id + - attributes + type: object + PrintReportRequestAttributes: + description: |- + The configuration for a print-only report. Specify exactly one of `timeframe` (for a + relative time window) or both `from_ts` and `to_ts` (for an absolute time range). + properties: + from_ts: + description: |- + The start of an absolute time range, as a Unix timestamp in milliseconds. + Required when `timeframe` is omitted. + example: 1780318800000 + format: int64 + type: integer + resource_id: + description: The identifier of the dashboard or integration dashboard to render. + example: abc-def-ghi + type: string + resource_type: + $ref: '#/components/schemas/ReportScheduleResourceType' + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: '#/components/schemas/ReportScheduleTemplateVariable' + type: array + timeframe: + description: |- + A relative time window (for example `1w` or `calendar_month`). Mutually + exclusive with `from_ts` and `to_ts`. + example: 1w + type: string + timezone: + description: The IANA time zone identifier used to evaluate the time window. + example: America/New_York + type: string + to_ts: + description: |- + The end of an absolute time range, as a Unix timestamp in milliseconds. + Required when `timeframe` is omitted. + example: 1780923600000 + format: int64 + type: integer + required: + - resource_id + - resource_type + - timezone + - template_variables + type: object + PrintReportType: + description: JSON:API resource type for a print-only report. + enum: + - report + example: report + type: string + x-enum-varnames: + - REPORT + PrintReportResponseAttributes: + description: The configuration and download URL for the initiated print-only report. + properties: + download_url: + description: The URL from which the rendered PDF report can be downloaded. + example: https://app.datadoghq.com/... + type: string + from_ts: + description: The start of the rendered time range, as a Unix timestamp in milliseconds. + example: 1780318800000 + format: int64 + type: integer + resource_id: + description: The identifier of the dashboard or integration dashboard. + example: abc-def-ghi + type: string + resource_type: + $ref: '#/components/schemas/ReportScheduleResourceType' + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: '#/components/schemas/ReportScheduleTemplateVariable' + type: array + timeframe: + description: The relative time window used, if one was specified in the request. + example: 1w + type: string + timezone: + description: The IANA time zone identifier used when rendering the report. + example: America/New_York + type: string + to_ts: + description: The end of the rendered time range, as a Unix timestamp in milliseconds. + example: 1780923600000 + format: int64 + type: integer + required: + - resource_id + - resource_type + - timezone + - template_variables + - from_ts + - to_ts + - download_url + type: object + ReportScheduleCreateRequestAttributes: + description: The configuration of the report schedule to create. + properties: + delivery_format: + $ref: '#/components/schemas/ReportScheduleDeliveryFormat' + description: + description: A description of the report, up to 4096 characters. + example: Weekly summary of infrastructure health. + maxLength: 4096 + type: string + recipients: + description: |- + The recipients of the report. Each entry is an email address, a Slack channel + reference in the form `slack:{team_id}.{channel_id}.{channel_name}`, or a Microsoft + Teams channel reference in the form `teams:{tenant_id}|{team_id}|{channel_id}`. + example: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the dashboard or integration dashboard to render in the report. + example: abc-def-ghi + type: string + resource_type: + $ref: '#/components/schemas/ReportScheduleResourceType' + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + type: string + tab_id: + description: The identifier of the dashboard tab to render, when the dashboard has tabs. + example: 66666666-7777-8888-9999-000000000000 + format: uuid + type: string + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: '#/components/schemas/ReportScheduleTemplateVariable' + type: array + timeframe: + description: The relative timeframe of data to include in the report. + example: 1w + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: America/New_York + type: string + title: + description: The title of the report, between 1 and 78 characters. + example: Weekly Infrastructure Report + maxLength: 78 + minLength: 1 + type: string + required: + - resource_id + - resource_type + - recipients + - rrule + - timezone + - template_variables + - timeframe + - title + - description + type: object + ReportScheduleResponseAttributes: + description: The configuration and derived state of a report schedule. + properties: + delivery_format: + $ref: '#/components/schemas/ReportScheduleResponseAttributesDeliveryFormat' + description: + description: The description of the report. + example: Weekly summary of infrastructure health. + type: string + next_recurrence: + description: The Unix timestamp, in milliseconds, of the next scheduled delivery, or `null` if none is scheduled. + example: 1780923600000 + format: int64 + nullable: true + type: integer + recipients: + description: The recipients of the report (email addresses, Slack channel references, or Microsoft Teams channel references). + example: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the resource rendered in the report. + example: abc-def-ghi + type: string + resource_type: + $ref: '#/components/schemas/ReportScheduleResourceType' + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + type: string + status: + $ref: '#/components/schemas/ReportScheduleStatus' + tab_id: + description: The identifier of the dashboard tab rendered in the report, or `null` if not set. + example: 66666666-7777-8888-9999-000000000000 + nullable: true + type: string + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: '#/components/schemas/ReportScheduleTemplateVariable' + type: array + timeframe: + description: The relative timeframe of data included in the report, or `null` if not set. + example: 1w + nullable: true + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: America/New_York + type: string + title: + description: The title of the report. + example: Weekly Infrastructure Report + type: string + required: + - status + - resource_id + - resource_type + - recipients + - rrule + - timezone + - template_variables + - title + - description + - timeframe + - next_recurrence + - tab_id + type: object + ReportScheduleListResponseAttributes: + description: The configuration and derived state of a report schedule in a list response. + properties: + delivery_format: + $ref: '#/components/schemas/ReportScheduleResponseAttributesDeliveryFormat' + description: + description: The description of the report. + example: Weekly summary of infrastructure health. + type: string + next_recurrence: + description: The Unix timestamp, in milliseconds, of the next scheduled delivery, or `null` if none is scheduled. + example: 1780923600000 + format: int64 + nullable: true + type: integer + recipients: + description: The recipients of the report (email addresses, Slack channel references, or Microsoft Teams channel references). + example: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + resource_id: + description: The identifier of the resource rendered in the report. + example: abc-def-ghi + type: string + resource_type: + $ref: '#/components/schemas/ReportScheduleResourceType' + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + type: string + status: + $ref: '#/components/schemas/ReportScheduleStatus' + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: '#/components/schemas/ReportScheduleTemplateVariable' + type: array + timeframe: + description: The relative timeframe of data included in the report, or `null` if not set. + example: 1w + nullable: true + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: America/New_York + type: string + title: + description: The title of the report. + example: Weekly Infrastructure Report + type: string + required: + - status + - resource_id + - resource_type + - recipients + - rrule + - timezone + - template_variables + - title + - description + - timeframe + - next_recurrence + type: object + ReportScheduleListResponseRelationships: + description: Relationships for a report schedule in a list response. + properties: + author: + $ref: '#/components/schemas/ReportScheduleAuthorRelationship' + resource: + $ref: '#/components/schemas/ReportScheduleListResourceRelationship' + required: + - author + type: object + ReportScheduleListResponsePagination: + description: Offset and limit pagination metadata for a report schedule list response. + properties: + first_offset: + description: The first offset. + example: 0 + format: int64 + type: integer + last_offset: + description: The last offset when the total count is known, or `null` if it is unavailable. + example: 0 + format: int64 + nullable: true + type: integer + limit: + description: The maximum number of schedules returned. + example: 25 + format: int64 + type: integer + next_offset: + description: The next offset. + example: 25 + format: int64 + type: integer + offset: + description: The current offset. + example: 0 + format: int64 + type: integer + prev_offset: + description: The previous offset. + example: 0 + format: int64 + type: integer + total: + description: The total number of matching schedules. + example: 1 + format: int64 + type: integer + type: + $ref: '#/components/schemas/ReportScheduleListResponsePaginationType' + type: object + ReportSchedulePatchRequestAttributes: + description: |- + The updated configuration of the report schedule. These values replace the existing + ones; the targeted resource (`resource_id` and `resource_type`) cannot be changed. + properties: + delivery_format: + $ref: '#/components/schemas/ReportScheduleDeliveryFormat' + description: + description: A description of the report, up to 4096 characters. + example: Updated weekly summary of infrastructure health. + maxLength: 4096 + type: string + recipients: + description: |- + The recipients of the report. Each entry is an email address, a Slack channel + reference in the form `slack:{team_id}.{channel_id}.{channel_name}`, or a Microsoft + Teams channel reference in the form `teams:{tenant_id}|{team_id}|{channel_id}`. + example: + - user@example.com + - slack:T01234567.C01234567.alerts + - teams:11111111-1111-1111-1111-111111111111|22222222-2222-2222-2222-222222222222|19:exampleChannelId@thread.tacv2 + items: + description: A single recipient (email address, Slack channel reference, or Microsoft Teams channel reference). + type: string + type: array + rrule: + description: The recurrence rule for the schedule, expressed as an iCalendar `RRULE` string. + example: |- + DTSTART;TZID=America/New_York:20260601T090000 + RRULE:FREQ=WEEKLY;BYDAY=MO;BYHOUR=9;BYMINUTE=0 + type: string + tab_id: + description: The identifier of the dashboard tab to render, when the dashboard has tabs. + example: 66666666-7777-8888-9999-000000000000 + format: uuid + type: string + template_variables: + description: The dashboard template variables applied when rendering the report. + items: + $ref: '#/components/schemas/ReportScheduleTemplateVariable' + type: array + timeframe: + description: The relative timeframe of data to include in the report. + example: 1w + type: string + timezone: + description: The IANA time zone identifier the recurrence rule is evaluated in. + example: America/New_York + type: string + title: + description: The title of the report, between 1 and 78 characters. + example: Weekly Infrastructure Report + maxLength: 78 + minLength: 1 + type: string + required: + - recipients + - rrule + - timezone + - template_variables + - timeframe + - title + - description + type: object + ReportScheduleToggleRequestAttributes: + description: The status to set on the report schedule. + properties: + status: + $ref: '#/components/schemas/ReportScheduleStatus' + required: + - status + type: object + CreateSnapshotDataAttributesRequest: + description: Attributes for snapshot creation. + properties: + additional_config: + $ref: '#/components/schemas/CreateSnapshotAdditionalConfig' + end: + description: End of the time window for the snapshot, in milliseconds since Unix epoch. + example: 1692464800000 + format: int64 + type: integer + height: + description: The height of the rendered snapshot in pixels. + example: 185 + format: int64 + type: integer + is_authenticated: + description: Whether the snapshot requires authentication to view. Authenticated snapshots are scoped to the creating organization. + example: false + type: boolean + start: + description: Start of the time window for the snapshot, in milliseconds since Unix epoch. + example: 1692464000000 + format: int64 + type: integer + ttl: + $ref: '#/components/schemas/CreateSnapshotTTL' + widget_definition: + additionalProperties: {} + description: The widget definition to render as a snapshot. Must include a valid `type` field and non-empty `requests` array. + example: + requests: + - q: avg:system.cpu.user{*} + type: timeseries + type: object + width: + description: The width of the rendered snapshot in pixels. + example: 300 + format: int64 + type: integer + required: + - widget_definition + - start + - end + type: object + CreateSnapshotType: + description: The type identifier for snapshot creation resources. + enum: + - create_snapshot + example: create_snapshot + type: string + x-enum-varnames: + - CREATE_SNAPSHOT + CreateSnapshotDataAttributesResponse: + description: Attributes of the created snapshot. + properties: + url: + description: The URL to access the rendered snapshot image. + example: https://app.datadoghq.com/api/v2/snapshot/view/public/60d/00000000-0000-0000-0000-000000000000/1692464400000-12345678-1234-5678-9abc-def123456789.png + type: string + required: + - url + type: object + StegadographyWidget: + description: A single watermarked widget resource recovered from an image. + properties: + attributes: + $ref: '#/components/schemas/StegadographyWidgetAttributes' + id: + description: Composite identifier formed from the organization ID and watermark, separated by a colon. + example: abc123:0123456789abcdef + type: string + type: + $ref: '#/components/schemas/StegadographyWidgetType' + required: + - id + - type + - attributes + type: object + WidgetAttributes: + description: Attributes of a widget resource. + properties: + created_at: + description: ISO 8601 timestamp of when the widget was created. + example: '2024-01-15T00:00:00.000Z' + type: string + definition: + $ref: '#/components/schemas/WidgetDefinition' + is_favorited: + description: |- + Whether the current user has favorited this widget. Populated on get, + batch_get, update, and search responses; create responses always return + `false` because a widget can only be favorited after it exists. + Favoriting itself is performed through the shared favorites API, not + this service. + example: false + type: boolean + modified_at: + description: ISO 8601 timestamp of when the widget was last modified. + example: '2024-01-15T00:00:00.000Z' + type: string + tags: + description: User-defined tags for organizing widgets. + example: + - team:my-team + items: + description: A single user-defined tag. + type: string + nullable: true + type: array + required: + - definition + - tags + - is_favorited + - created_at + - modified_at + type: object + WidgetRelationships: + description: Relationships of the widget resource. + properties: + created_by: + $ref: '#/components/schemas/WidgetRelationshipItem' + description: The user who created the widget. + modified_by: + $ref: '#/components/schemas/WidgetRelationshipItem' + description: The user who last modified the widget. + type: object + WidgetIncludedUserAttributes: + description: Attributes of an included user resource. + properties: + handle: + description: The email handle of the user. + example: john.doe@example.com + type: string + name: + description: The display name of the user. + example: John Doe + nullable: true + type: string + type: object + CreateOrUpdateWidgetRequestAttributes: + description: Attributes for creating or updating a widget. + properties: + definition: + $ref: '#/components/schemas/WidgetDefinition' + tags: + description: User-defined tags for organizing the widget. + items: + description: A single user-defined tag. + type: string + nullable: true + type: array + required: + - definition + type: object + DashboardBulkActionData: + description: Dashboard bulk action request data. + example: + id: 123-abc-456 + type: dashboard + properties: + id: + $ref: '#/components/schemas/DashboardID' + type: + $ref: '#/components/schemas/DashboardResourceType' + required: + - type + - id + type: object + DashboardLiveTimeframe: + description: A live dashboard timeframe. + properties: + type: + $ref: '#/components/schemas/DashboardLiveTimeframeType' + unit: + $ref: '#/components/schemas/WidgetLiveSpanUnit' + value: + description: Value of the live timeframe span. + example: 4 + format: int64 + minimum: 1 + type: integer + required: + - type + - value + - unit + type: object + DashboardFixedTimeframe: + description: A fixed dashboard timeframe. + properties: + from: + description: Start time in milliseconds since epoch. + example: 1712080128000 + format: int64 + minimum: 0 + type: integer + to: + description: End time in milliseconds since epoch. + example: 1712083128000 + format: int64 + minimum: 0 + type: integer + type: + $ref: '#/components/schemas/DashboardFixedTimeframeType' + required: + - type + - from + - to + type: object + DashboardTemplateVariablePresetValue: + description: Template variables saved views. + properties: + name: + description: The name of the variable. + type: string + value: + deprecated: true + description: (deprecated) The value of the template variable within the saved view. Cannot be used in conjunction with `values`. + type: string + values: + description: One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified. Cannot be used in conjunction with `value`. + items: + description: One or many values of the template variable within the saved view. + minLength: 1 + type: string + minItems: 1 + type: array + type: object + WidgetDefinitionV1: + description: '[Definition of the widget](https://docs.datadoghq.com/dashboards/widgets/).' + properties: + alert_id: + description: ID of the alert to use in the widget. + example: '' + type: string + description: + description: The description of the widget. + type: string + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: The title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/AlertGraphWidgetDefinitionType' + viz_type: + $ref: '#/components/schemas/WidgetVizType' + precision: + description: Number of decimal to show. If not defined, will use the raw value. + format: int64 + type: integer + text_align: + $ref: '#/components/schemas/WidgetTextAlign' + unit: + description: Unit to display with the value. + type: string + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + requests: + description: List of bar chart widget requests. + example: + - q: system.load.1 + items: + $ref: '#/components/schemas/BarChartWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + style: + $ref: '#/components/schemas/BarChartWidgetStyle' + check: + description: Name of the check to use in the widget. + example: '' + type: string + group: + description: Group reporting a single check. + type: string + group_by: + description: List of tag prefixes to group by in the case of a cluster check. + items: + description: Tag prefix. + type: string + type: array + grouping: + $ref: '#/components/schemas/WidgetGrouping' + tags: + description: List of tags used to filter the groups reporting a cluster check. + items: + description: Tag name. + type: string + type: array + legend_size: + deprecated: true + description: (Deprecated) The widget legend was replaced by a tooltip and sidebar. + type: string + markers: + description: List of markers. + example: + - display_type: percentile + value: '90' + items: + $ref: '#/components/schemas/WidgetMarker' + type: array + show_legend: + deprecated: true + description: (Deprecated) The widget legend was replaced by a tooltip and sidebar. + type: boolean + xaxis: + $ref: '#/components/schemas/DistributionWidgetXAxis' + yaxis: + $ref: '#/components/schemas/DistributionWidgetYAxis' + event_size: + $ref: '#/components/schemas/WidgetEventSize' + query: + description: Query to filter the event stream with. + example: '' + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + type: string + background_color: + $ref: '#/components/schemas/WidgetBackgroundColor' + color: + description: Color of the text. + type: string + font_size: + description: Size of the text. + type: string + text: + description: Text to display. + example: '' + type: string + grouped_display: + $ref: '#/components/schemas/FunnelGroupedDisplay' + view: + $ref: '#/components/schemas/GeomapWidgetDefinitionView' + banner_img: + description: URL of image to display as a banner for the group. + type: string + layout_type: + $ref: '#/components/schemas/WidgetLayoutType' + show_title: + default: true + description: Whether to show the title or not. + type: boolean + widgets: + description: List of widget groups. + example: + - definition: + requests: + fill: + q: avg:system.cpu.user{*} + type: hostmap + items: + $ref: '#/components/schemas/Widget' + type: array + events: + deprecated: true + description: List of widget events. Deprecated - Use `overlay` request type instead. + items: + $ref: '#/components/schemas/WidgetEvent' + type: array + no_group_hosts: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `no_group_hosts` inside `requests` instead. + type: boolean + no_metric_hosts: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `no_metric_hosts` inside `requests` instead. + type: boolean + node_type: + $ref: '#/components/schemas/WidgetNodeType' + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `node_type` inside `requests` instead. + notes: + description: Notes on the title. + type: string + scope: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `filter` inside `requests` instead. + items: + description: Tags. + type: string + type: array + url: + description: URL of the iframe. + example: '' + type: string + has_background: + default: true + description: Whether to display a background or not. + example: true + type: boolean + has_border: + default: true + description: Whether to display a border or not. + example: true + type: boolean + horizontal_align: + $ref: '#/components/schemas/WidgetHorizontalAlign' + margin: + $ref: '#/components/schemas/WidgetMargin' + sizing: + $ref: '#/components/schemas/WidgetImageSizing' + url_dark_theme: + description: URL of the image in dark mode. + example: https://example.com/image-dark-mode.png + type: string + vertical_align: + $ref: '#/components/schemas/WidgetVerticalAlign' + columns: + description: Which columns to display on the widget. + items: + description: Column name. + type: string + type: array + indexes: + description: An array of index names to query in the stream. Use [] to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: One of the log indexes set up for your organization. [Multiple Indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) + type: string + type: array + logset: + deprecated: true + description: ID of the log set to use. + type: string + message_display: + $ref: '#/components/schemas/WidgetMessageDisplay' + show_date_column: + description: Whether to show the date column or not + type: boolean + show_message_column: + description: Whether to show the message column or not + type: boolean + sort: + $ref: '#/components/schemas/WidgetFieldSort' + color_preference: + $ref: '#/components/schemas/WidgetColorPreference' + count: + deprecated: true + description: The number of monitors to display. + format: int64 + type: integer + display_format: + $ref: '#/components/schemas/WidgetMonitorSummaryDisplayFormat' + hide_zero_counts: + description: Whether to show counts of 0 or not. + type: boolean + show_last_triggered: + description: Whether to show the time that has elapsed since the monitor/group triggered. + type: boolean + show_priority: + default: false + description: Whether to show the priorities column. + type: boolean + start: + deprecated: true + description: The start of the list. Typically 0. + format: int64 + type: integer + summary_type: + $ref: '#/components/schemas/WidgetSummaryType' + content: + description: Content of the note. + example: '' + type: string + has_padding: + default: true + description: Whether to add padding or not. + type: boolean + show_tick: + description: Whether to show a tick or not. + type: boolean + tick_edge: + $ref: '#/components/schemas/WidgetTickEdge' + tick_pos: + description: Where to position the tick on an edge. + type: string + powerpack_id: + description: UUID of the associated powerpack. + example: df43cf2a-6475-490d-b686-6fbc6cb9a49c + type: string + template_variables: + $ref: '#/components/schemas/PowerpackTemplateVariables' + legend: + $ref: '#/components/schemas/PointPlotWidgetLegend' + autoscale: + description: Whether to use auto-scaling or not. + type: boolean + custom_unit: + description: Display a unit of your choice on the widget. + type: string + timeseries_background: + $ref: '#/components/schemas/TimeseriesBackground' + inputs: + description: Array of workflow inputs to map to dashboard template variables. + items: + $ref: '#/components/schemas/RunWorkflowWidgetInput' + type: array + workflow_id: + description: Workflow id. + example: + type: string + additional_query_filters: + description: Additional filters applied to the SLO query. + type: string + global_time_target: + description: Defined global time target. + type: string + show_error_budget: + description: Defined error budget. + type: boolean + slo_id: + description: ID of the SLO displayed. + type: string + time_windows: + description: Times being monitored. + items: + $ref: '#/components/schemas/WidgetTimeWindows' + type: array + view_mode: + $ref: '#/components/schemas/WidgetViewMode' + view_type: + default: detail + description: Type of view displayed by the widget. + example: detail + type: string + color_by_groups: + description: List of groups used for colors. + items: + description: Group name. + type: string + type: array + show_other_links: + description: Whether to show links for "other" category. + type: boolean + sort_nodes: + description: Whether to sort nodes in the Sankey diagram. + type: boolean + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: + - '*' + items: + description: Filter name. + type: string + minItems: 1 + type: array + service: + description: The ID of the service you want to map. + example: '' + type: string + env: + description: APM environment. + example: '' + type: string + show_breakdown: + description: Whether to show the latency breakdown or not. + type: boolean + show_distribution: + description: Whether to show the latency distribution or not. + type: boolean + show_errors: + description: Whether to show the error metrics or not. + type: boolean + show_hits: + description: Whether to show the hits metrics or not. + type: boolean + show_latency: + description: Whether to show the latency metrics or not. + type: boolean + show_resource_list: + description: Whether to show the resource list or not. + type: boolean + size_format: + $ref: '#/components/schemas/WidgetSizeFormat' + span_name: + description: APM span name. + example: '' + type: string + has_uniform_y_axes: + description: Normalize y axes across graphs + type: boolean + size: + $ref: '#/components/schemas/SplitGraphVizSize' + source_widget_definition: + $ref: '#/components/schemas/SplitGraphSourceWidgetDefinition' + split_config: + $ref: '#/components/schemas/SplitConfig' + hide_total: + description: Show the total value in this widget. + type: boolean + has_search_bar: + $ref: '#/components/schemas/TableWidgetHasSearchBar' + legend_columns: + description: Columns displayed in the legend. + items: + $ref: '#/components/schemas/TimeseriesWidgetLegendColumn' + type: array + legend_layout: + $ref: '#/components/schemas/TimeseriesWidgetLegendLayout' + right_yaxis: + $ref: '#/components/schemas/WidgetAxis' + color_by: + $ref: '#/components/schemas/TreeMapColorBy' + size_by: + $ref: '#/components/schemas/TreeMapSizeBy' + specification: + $ref: '#/components/schemas/WildcardWidgetSpecification' + required: + - type + - alert_id + - viz_type + - requests + - check + - grouping + - query + - text + - style + - view + - layout_type + - widgets + - url + - content + - powerpack_id + - workflow_id + - view_type + - filters + - service + - env + - span_name + - size + - source_widget_definition + - split_config + - specification + type: object + additionalProperties: false + WidgetLayout: + description: The layout for a widget on a `free` or **new dashboard layout** dashboard. + properties: + height: + description: The height of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + is_column_break: + description: |- + Whether the widget should be the first one on the second column in high density or not. + **Note**: Only for the **new dashboard layout** and only one widget in the dashboard should have this property set to `true`. + type: boolean + width: + description: The width of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + x: + description: The position of the widget on the x (horizontal) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + 'y': + description: The position of the widget on the y (vertical) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - x + - 'y' + - width + - height + type: object + DashboardGlobalTimeLiveSpan: + description: Dashboard global time live_span selection + enum: + - 15m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + example: 1h + type: string + x-enum-varnames: + - PAST_FIFTEEN_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + ViewingPreferencesTheme: + description: The theme of the shared dashboard view. "system" follows your system's default viewing theme. + enum: + - system + - light + - dark + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK + SharedDashboardInvitesDataObject: + description: Object containing the information for an invitation to a shared dashboard. + example: + attributes: + created_at: '2020-12-07T20:16:27.846985+00:00' + email: test@datadoghq.com + has_session: false + invitation_expiry: '2020-12-07T21:16:27.840542+00:00' + session_expiry: null + share_token: XXXXXX-123456abcedfg7890hijklmnopqrstuv + type: public_dashboard_invitation + properties: + attributes: + $ref: '#/components/schemas/SharedDashboardInvitesDataObjectAttributes' + type: + $ref: '#/components/schemas/DashboardInviteType' + required: + - type + - attributes + type: object + SharedDashboardInvitesDataList: + description: A list of objects containing the information for an invitation(s) to a shared dashboard. + example: + - attributes: + email: test@datadoghq.com + type: public_dashboard_invitation + items: + $ref: '#/components/schemas/SharedDashboardInvitesDataObject' + type: array + SharedDashboardInvitesMetaPage: + description: Object containing the total count of invitations across all pages + properties: + total_count: + description: The total number of invitations on this shared board, across all pages. + format: int64 + type: integer + type: object + NotebooksResponseDataAttributes: + description: The attributes of a notebook in get all response. + properties: + author: + $ref: '#/components/schemas/NotebookAuthor' + cells: + description: List of cells to display in the notebook. + items: + $ref: '#/components/schemas/NotebookCellResponse' + type: array + created: + description: UTC time stamp for when the notebook was created. + example: '2021-02-24T23:14:15.173964+00:00' + format: date-time + readOnly: true + type: string + metadata: + $ref: '#/components/schemas/NotebookMetadata' + modified: + description: UTC time stamp for when the notebook was last modified. + example: '2021-02-24T23:15:23.274966+00:00' + format: date-time + readOnly: true + type: string + name: + description: The name of the notebook. + example: Example Notebook + maxLength: 80 + minLength: 0 + type: string + status: + $ref: '#/components/schemas/NotebookStatus' + template_variables: + description: List of template variables for this notebook. + items: + $ref: '#/components/schemas/NotebookTemplateVariable' + nullable: true + type: array + time: + $ref: '#/components/schemas/NotebookGlobalTime' + required: + - name + type: object + NotebookResourceTypeV1: + default: notebooks + description: Type of the Notebook resource. + enum: + - notebooks + example: notebooks + type: string + x-enum-varnames: + - NOTEBOOKS + NotebooksResponsePage: + description: Pagination metadata returned by the API. + properties: + total_count: + description: The total number of notebooks that would be returned if the request was not filtered by `start` and `count` parameters. + format: int64 + type: integer + total_filtered_count: + description: The total number of notebooks returned. + format: int64 + type: integer + type: object + NotebookCreateDataAttributes: + description: The data attributes of a notebook. + properties: + cells: + description: List of cells to display in the notebook. + example: + - attributes: + definition: + text: |- + ## Some test markdown + + ``` + var x, y; + x = 5; + y = 6; + ``` + type: markdown + type: notebook_cells + - attributes: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + type: notebook_cells + items: + $ref: '#/components/schemas/NotebookCellCreateRequest' + type: array + metadata: + $ref: '#/components/schemas/NotebookMetadata' + name: + description: The name of the notebook. + example: Example Notebook + maxLength: 80 + minLength: 0 + type: string + status: + $ref: '#/components/schemas/NotebookStatus' + template_variables: + description: List of template variables for this notebook. + items: + $ref: '#/components/schemas/NotebookTemplateVariable' + nullable: true + type: array + time: + $ref: '#/components/schemas/NotebookGlobalTime' + required: + - name + - cells + - time + type: object + NotebookResponseDataAttributes: + description: The attributes of a notebook. + properties: + author: + $ref: '#/components/schemas/NotebookAuthor' + cells: + description: List of cells to display in the notebook. + example: + - attributes: + definition: + text: |- + ## Some test markdown + + ``` + var x, y; + x = 5; + y = 6; + ``` + type: markdown + id: bzbycoya + type: notebook_cells + - attributes: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + id: 9k6bc6xc + type: notebook_cells + items: + $ref: '#/components/schemas/NotebookCellResponse' + type: array + created: + description: UTC time stamp for when the notebook was created. + example: '2021-02-24T23:14:15.173964+00:00' + format: date-time + readOnly: true + type: string + metadata: + $ref: '#/components/schemas/NotebookMetadata' + modified: + description: UTC time stamp for when the notebook was last modified. + example: '2021-02-24T23:15:23.274966+00:00' + format: date-time + readOnly: true + type: string + name: + description: The name of the notebook. + example: Example Notebook + maxLength: 80 + minLength: 0 + type: string + status: + $ref: '#/components/schemas/NotebookStatus' + template_variables: + description: List of template variables for this notebook. + items: + $ref: '#/components/schemas/NotebookTemplateVariable' + nullable: true + type: array + time: + $ref: '#/components/schemas/NotebookGlobalTime' + required: + - cells + - time + - name + type: object + NotebookUpdateDataAttributes: + description: The data attributes of a notebook. + properties: + cells: + description: List of cells to display in the notebook. + example: + - attributes: + definition: + text: |- + ## Some test markdown + + ``` + var x, y; + x = 5; + y = 6; + ``` + type: markdown + id: bzbycoya + type: notebook_cells + - attributes: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + id: 9k6bc6xc + type: notebook_cells + items: + $ref: '#/components/schemas/NotebookUpdateCell' + type: array + metadata: + $ref: '#/components/schemas/NotebookMetadata' + name: + description: The name of the notebook. + example: Example Notebook + maxLength: 80 + minLength: 0 + type: string + status: + $ref: '#/components/schemas/NotebookStatus' + template_variables: + description: List of template variables for this notebook. + items: + $ref: '#/components/schemas/NotebookTemplateVariable' + nullable: true + type: array + time: + $ref: '#/components/schemas/NotebookGlobalTime' + required: + - name + - cells + - time + type: object + AnnotationColor: + description: Color used to render the annotation in the UI. + enum: + - gray + - blue + - purple + - green + - yellow + - red + example: blue + type: string + x-enum-varnames: + - GRAY + - BLUE + - PURPLE + - GREEN + - YELLOW + - RED + AnnotationKind: + description: |- + Kind of annotation. `pointInTime` annotations mark a single moment in time, + while `timeRegion` annotations span a window of time and require an `end_time`. + enum: + - pointInTime + - timeRegion + example: pointInTime + type: string + x-enum-varnames: + - POINT_IN_TIME + - TIME_REGION + AnnotationsInPageMap: + additionalProperties: + $ref: '#/components/schemas/AnnotationInPage' + description: Map of annotation UUID to annotation object, keyed by annotation ID. + example: + 00000000-0000-0000-0000-000000000000: + author_id: 00000000-0000-0000-0000-000000000001 + color: blue + created_at: 1704067200000 + description: Deployed v2.3.1 to production. + end_time: null + id: 00000000-0000-0000-0000-000000000000 + modified_at: 1704067200000 + page_id: dashboard:abc-def-xyz + start_time: 1704067200000 + type: pointInTime + widget_ids: + - '1234567890' + type: object + GlobalAnnotationIds: + description: List of annotation IDs that apply to the entire page rather than a specific widget. + example: + - 00000000-0000-0000-0000-000000000001 + items: + description: Annotation ID. + format: uuid + type: string + type: array + WidgetAnnotationsMap: + additionalProperties: + $ref: '#/components/schemas/WidgetAnnotationIds' + description: Map from widget ID to the list of annotation IDs displayed on that widget. + example: + '1234567890': + - 00000000-0000-0000-0000-000000000000 + type: object + SharedDashboardGlobalTime: + additionalProperties: {} + description: Default time range configuration for the shared dashboard. + example: + live_span: 1h + nullable: true + type: object + SharedDashboardInvitee: + description: Invitee that can access an invite-only shared dashboard. + properties: + access_expiration: + description: Time when the invitee's access expires. + example: '2026-01-15T09:30:00.000Z' + format: date-time + nullable: true + type: string + created_at: + description: Time when the invitee was added. + example: '2026-01-01T00:00:00.000Z' + format: date-time + type: string + email: + description: Email address of the invitee. + example: jane.doe@example.com + type: string + required: + - email + - access_expiration + - created_at + type: object + SharedDashboardSelectableTemplateVariable: + description: A template variable that viewers can modify on the shared dashboard. + properties: + allow_any_value: + description: Whether viewers can see all tag values for the template variable and specify any value. + example: false + type: boolean + default_values: + description: Default selected values for the variable. + example: + - prod + items: + description: A default value for the template variable. + type: string + type: array + name: + description: Name of the template variable. + example: environment + type: string + prefix: + description: Tag prefix for the variable. + example: env + type: string + type: + description: Type of the template variable. + example: group + type: string + visible_tags: + description: Restricts which tag values are visible to the viewer. + example: + - prod + items: + description: A visible tag value for the template variable. + type: string + type: array + required: + - name + - prefix + - type + - allow_any_value + - default_values + - visible_tags + type: object + SharedDashboardShareType: + description: Type of dashboard sharing. + enum: + - open + - invite + - embed + - secure-embed + example: invite + type: string + x-enum-varnames: + - OPEN + - INVITE + - EMBED + - SECURE_EMBED + SharedDashboardStatus: + description: Status of the shared dashboard. + enum: + - active + - paused + example: active + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + SharedDashboardViewingPreferences: + description: Display settings for the shared dashboard. + properties: + high_density: + description: Whether widgets are displayed in high-density mode. + example: false + type: boolean + theme: + $ref: '#/components/schemas/SharedDashboardViewingPreferencesTheme' + required: + - high_density + - theme + type: object + SharedDashboardRelationshipDashboard: + description: Dashboard associated with the shared dashboard. + properties: + data: + $ref: '#/components/schemas/SharedDashboardRelationshipDashboardData' + required: + - data + type: object + SharedDashboardRelationshipSharer: + description: User who shared the dashboard. + properties: + data: + $ref: '#/components/schemas/UserRelationshipData' + required: + - data + type: object + SharedDashboardIncludedDashboardAttributes: + description: Attributes of the included dashboard. + properties: + title: + description: Dashboard title. + example: Q1 Metrics Dashboard + type: string + required: + - title + type: object + SharedDashboardIncludedDashboardType: + default: dashboard + description: Included dashboard resource type. + enum: + - dashboard + example: dashboard + type: string + x-enum-varnames: + - DASHBOARD + SharedDashboardIncludedUserAttributes: + description: Attributes of the included user. + properties: + handle: + description: User handle. + example: jane.doe@example.com + type: string + name: + description: User display name. + example: Jane Doe + type: string + required: + - handle + - name + type: object + UserResourceType: + default: user + description: User resource type. + enum: + - user + example: user + type: string + x-enum-varnames: + - USER + SecureEmbedGlobalTime: + description: Default time range configuration for the secure embed. + properties: + live_span: + $ref: '#/components/schemas/SecureEmbedGlobalTimeLiveSpan' + type: object + SecureEmbedSelectableTemplateVariable: + description: A template variable that viewers can modify on the secure embed shared dashboard. + properties: + default_values: + description: Default selected values for the variable. + example: + - '1' + items: + description: A default value for the template variable. + type: string + type: array + name: + description: Name of the template variable. Usually matches the prefix unless you want a different display name. + example: org_id + type: string + prefix: + description: Tag prefix for the variable (e.g., `environment`, `service`). + example: org_id + type: string + visible_tags: + description: Restrict which tag values are visible to the viewer. + example: + - '1' + items: + description: A visible tag value for the template variable. + type: string + type: array + type: object + SecureEmbedStatus: + description: The status of the secure embed share. Active means the shared dashboard is available. Paused means it is not. + enum: + - active + - paused + example: active + type: string + x-enum-varnames: + - ACTIVE + - PAUSED + SecureEmbedViewingPreferences: + description: Display settings for the secure embed shared dashboard. + properties: + high_density: + description: Whether widgets are displayed in high density mode. + example: false + type: boolean + theme: + $ref: '#/components/schemas/SecureEmbedViewingPreferencesTheme' + type: object + SecureEmbedShareType: + description: The type of share. Always `secure_embed`. + enum: + - secure_embed + example: secure_embed + type: string + x-enum-varnames: + - SECURE_EMBED + DashboardUsageUser: + description: A user referenced from a dashboard usage record (author or viewer). + nullable: true + properties: + handle: + description: Datadog handle (login) of the user. + example: jane.doe@example.com + type: string + id: + description: The user ID. + example: 00000000-0000-0000-0000-000000000000 + type: string + is_disabled: + description: Whether the user account is disabled. + type: boolean + name: + description: Display name of the user. + example: Jane Doe + type: string + type: object + PaginationMetaPageType: + default: offset_limit + description: The pagination type used for offset-based pagination. + enum: + - offset_limit + example: offset_limit + type: string + x-enum-varnames: + - OFFSET_LIMIT + PowerpackGroupWidget: + description: Powerpack group widget definition object. + properties: + definition: + $ref: '#/components/schemas/PowerpackGroupWidgetDefinition' + layout: + $ref: '#/components/schemas/PowerpackGroupWidgetLayout' + live_span: + $ref: '#/components/schemas/WidgetLiveSpan' + required: + - definition + type: object + PowerpackTemplateVariable: + description: Powerpack template variables. + properties: + available_values: + description: The list of values that the template variable drop-down is limited to. + example: + - my-host + - host1 + - host2 + items: + description: Template variable value. + type: string + nullable: true + type: array + defaults: + description: One or many template variable default values within the saved view, which are unioned together using `OR` if more than one is specified. + items: + description: One or many default values of the template variable. + minLength: 1 + type: string + type: array + name: + description: The name of the variable. + example: datacenter + type: string + prefix: + description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down. + example: host + nullable: true + type: string + required: + - name + type: object + RelationshipToUser: + description: Relationship to user. + properties: + data: + $ref: '#/components/schemas/RelationshipToUserData' + required: + - data + type: object + RelationshipToOrganization: + description: Relationship to an organization. + properties: + data: + $ref: '#/components/schemas/RelationshipToOrganizationData' + required: + - data + type: object + RelationshipToOrganizations: + description: Relationship to organizations. + properties: + data: + description: Relationships to organization objects. + example: [] + items: + $ref: '#/components/schemas/RelationshipToOrganizationData' + type: array + required: + - data + type: object + RelationshipToUsers: + description: Relationship to users. + properties: + data: + description: Relationships to user objects. + example: [] + items: + $ref: '#/components/schemas/RelationshipToUserData' + type: array + required: + - data + type: object + RelationshipToRoles: + description: Relationship to roles. + properties: + data: + description: An array containing type and the unique identifier of a role. + items: + $ref: '#/components/schemas/RelationshipToRoleData' + type: array + type: object + DatasetReportScheduleResourceType: + description: The type of resource targeted by a dataset report schedule. + enum: + - widget_dataset_list + example: widget_dataset_list + type: string + x-enum-varnames: + - WIDGET_DATASET_LIST + ReportScheduleStatus: + description: Whether the schedule is currently delivering reports (`active`) or paused (`inactive`). + enum: + - active + - inactive + example: active + type: string + x-enum-varnames: + - ACTIVE + - INACTIVE + ReportScheduleAuthorRelationship: + description: Relationship to the author of the report schedule. + properties: + data: + $ref: '#/components/schemas/ReportScheduleAuthorRelationshipData' + required: + - data + type: object + ReportScheduleAuthorAttributes: + description: Attributes of the report author. + properties: + email: + description: The email address of the report author, or `null` if unavailable. + example: user@example.com + nullable: true + type: string + name: + description: The display name of the report author, or `null` if unavailable. + example: Example User + nullable: true + type: string + required: + - name + - email + type: object + ReportScheduleAuthorType: + description: JSON:API resource type for the included report author. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ReportScheduleResourceAttributes: + description: Attributes of an included report target resource. + properties: + resource_type: + $ref: '#/components/schemas/ReportScheduleResourceType' + template_variables: + description: Template variable metadata from the dashboard resource, when available. + items: + $ref: '#/components/schemas/ReportScheduleIndexTemplateVariable' + nullable: true + type: array + title: + description: The title of the dashboard or integration dashboard resource, when available. + example: Infrastructure Overview + nullable: true + type: string + required: + - resource_type + type: object + ReportScheduleIncludedResourceType: + description: JSON:API resource type for an included report resource. + enum: + - resource + example: resource + type: string + x-enum-varnames: + - RESOURCE + ReportScheduleTemplateVariable: + description: A dashboard template variable applied when rendering the report. + properties: + name: + description: The name of the template variable. + example: env + type: string + values: + description: The selected values for the template variable. + example: + - prod + items: + description: A single selected template variable value. + type: string + type: array + required: + - name + - values + type: object + ReportScheduleDeliveryFormat: + description: |- + How a PDF-export report is delivered. `pdf` attaches a PDF file, `png` embeds + an inline PNG image, and `pdf_and_png` delivers both. + enum: + - pdf + - png + - pdf_and_png + example: pdf + type: string + x-enum-varnames: + - PDF + - PNG + - PDF_AND_PNG + ReportScheduleResponseAttributesDeliveryFormat: + description: The delivery format for dashboard report schedules, or `null` if not set. + enum: + - pdf + - png + - pdf_and_png + example: pdf + nullable: true + type: string + x-enum-varnames: + - PDF + - PNG + - PDF_AND_PNG + ReportScheduleListResourceRelationship: + description: Relationship to the report target resource. + properties: + data: + $ref: '#/components/schemas/ReportScheduleListResourceRelationshipData' + required: + - data + type: object + ReportScheduleListResponsePaginationType: + description: The pagination type. + enum: + - offset_limit + example: offset_limit + type: string + x-enum-varnames: + - OFFSET_LIMIT + CreateSnapshotAdditionalConfig: + description: Additional configuration options for snapshot creation. + properties: + template_variables: + $ref: '#/components/schemas/CreateSnapshotTemplateVariables' + timeseries_legend_type: + $ref: '#/components/schemas/CreateSnapshotTimeseriesLegendType' + timezone_offset_minutes: + description: Timezone offset in minutes from UTC. Positive values are west of UTC (for example, `300` for UTC-5). Use `0` for UTC. + example: 300 + format: int64 + type: integer + type: object + CreateSnapshotTTL: + description: The time-to-live for the snapshot. This value corresponds to storage lifecycle policies that automatically delete the snapshot after the specified period. + enum: + - 30d + - 60d + - 90d + - 1y + - 2y + - inf + example: 60d + type: string + x-enum-varnames: + - THIRTY_DAYS + - SIXTY_DAYS + - NINETY_DAYS + - ONE_YEAR + - TWO_YEARS + - INFINITE + StegadographyWidgetAttributes: + description: Attributes of a watermarked widget recovered from an image. + properties: + locationx: + description: Horizontal pixel coordinate where the watermark was found in the image. + example: 100 + format: int64 + type: integer + locationy: + description: Vertical pixel coordinate where the watermark was found in the image. + example: 200 + format: int64 + type: integer + rawData: + description: JSON-encoded string representing the widget state. + example: '{"widgetType":"timeseries","requests":[]}' + type: string + watermark: + description: Hex-encoded watermark string identifying the widget. + example: 0123456789abcdef + type: string + required: + - rawData + - watermark + - locationx + - locationy + type: object + StegadographyWidgetType: + description: Stegadography widget resource type. + enum: + - widget + example: widget + type: string + x-enum-varnames: + - WIDGET + WidgetDefinition: + additionalProperties: {} + description: The definition of a widget, including its type and configuration. + properties: + title: + description: The display title of the widget. + example: My Widget + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/WidgetType' + required: + - type + - title + type: object + WidgetRelationshipItem: + description: A JSON:API relationship to a user. + properties: + data: + $ref: '#/components/schemas/WidgetRelationshipData' + type: object + DashboardID: + description: Dashboard resource ID. + example: 123-abc-456 + type: string + DashboardResourceType: + default: dashboard + description: Dashboard resource type. + enum: + - dashboard + example: dashboard + type: string + x-enum-varnames: + - DASHBOARD + DashboardLiveTimeframeType: + description: Type of live timeframe. + enum: + - live + example: live + type: string + x-enum-varnames: + - LIVE + WidgetLiveSpanUnit: + description: Unit of the time span. + enum: + - minute + - hour + - day + - week + - month + - year + example: minute + type: string + x-enum-varnames: + - MINUTE + - HOUR + - DAY + - WEEK + - MONTH + - YEAR + DashboardFixedTimeframeType: + description: Type of fixed timeframe. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + AlertGraphWidgetDefinition: + description: Alert graphs are timeseries graphs showing the current status of any monitor defined on your system. + properties: + alert_id: + description: ID of the alert to use in the widget. + example: '' + type: string + description: + description: The description of the widget. + type: string + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: The title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/AlertGraphWidgetDefinitionType' + viz_type: + $ref: '#/components/schemas/WidgetVizType' + required: + - type + - alert_id + - viz_type + type: object + AlertValueWidgetDefinition: + description: Alert values are query values showing the current value of the metric in any monitor defined on your system. + properties: + alert_id: + description: ID of the alert to use in the widget. + example: '' + type: string + description: + description: The description of the widget. + type: string + precision: + description: Number of decimal to show. If not defined, will use the raw value. + format: int64 + type: integer + text_align: + $ref: '#/components/schemas/WidgetTextAlign' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of value in the widget. + type: string + type: + $ref: '#/components/schemas/AlertValueWidgetDefinitionType' + unit: + description: Unit to display with the value. + type: string + required: + - type + - alert_id + type: object + BarChartWidgetDefinition: + description: The bar chart visualization displays categorical data using vertical bars, allowing you to compare values across different groups. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: List of bar chart widget requests. + example: + - q: system.load.1 + items: + $ref: '#/components/schemas/BarChartWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + style: + $ref: '#/components/schemas/BarChartWidgetStyle' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/BarChartWidgetDefinitionType' + required: + - type + - requests + type: object + ChangeWidgetDefinition: + description: The Change graph shows you the change in a value over the time period chosen. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: |- + Array of one request object to display in the widget. + + See the dedicated [Request JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/request_json) + to learn how to build the `REQUEST_SCHEMA`. + example: + - q: {} + items: + $ref: '#/components/schemas/ChangeWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/ChangeWidgetDefinitionType' + required: + - type + - requests + type: object + CheckStatusWidgetDefinition: + description: Check status shows the current status or number of results for any check performed. + properties: + check: + description: Name of the check to use in the widget. + example: '' + type: string + description: + description: The description of the widget. + type: string + group: + description: Group reporting a single check. + type: string + group_by: + description: List of tag prefixes to group by in the case of a cluster check. + items: + description: Tag prefix. + type: string + type: array + grouping: + $ref: '#/components/schemas/WidgetGrouping' + tags: + description: List of tags used to filter the groups reporting a cluster check. + items: + description: Tag name. + type: string + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/CheckStatusWidgetDefinitionType' + required: + - type + - check + - grouping + type: object + CohortWidgetDefinition: + additionalProperties: false + description: The cohort widget visualizes user retention over time. + properties: + description: + description: The description of the widget. + type: string + requests: + description: List of Cohort widget requests. + example: + - query: + compute: + aggregation: count + metric: __dd.retention_rate + data_source: product_analytics_retention + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:/home' + time_interval: + type: calendar + value: + type: week + retention_entity: '@usr.id' + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:/checkout' + request_type: retention_grid + items: + $ref: '#/components/schemas/RetentionGridRequest' + description: A cohort widget request. + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/CohortWidgetDefinitionType' + required: + - type + - requests + type: object + DistributionWidgetDefinition: + description: |- + The Distribution visualization is another way of showing metrics + aggregated across one or several tags, such as hosts. + Unlike the heat map, a distribution graph’s x-axis is quantity rather than time. + properties: + custom_links: + description: A list of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + legend_size: + deprecated: true + description: (Deprecated) The widget legend was replaced by a tooltip and sidebar. + type: string + markers: + description: List of markers. + example: + - display_type: percentile + value: '90' + items: + $ref: '#/components/schemas/WidgetMarker' + type: array + requests: + description: |- + Array of one request object to display in the widget. + + See the dedicated [Request JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/request_json) + to learn how to build the `REQUEST_SCHEMA`. + items: + $ref: '#/components/schemas/DistributionWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + show_legend: + deprecated: true + description: (Deprecated) The widget legend was replaced by a tooltip and sidebar. + type: boolean + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/DistributionWidgetDefinitionType' + xaxis: + $ref: '#/components/schemas/DistributionWidgetXAxis' + yaxis: + $ref: '#/components/schemas/DistributionWidgetYAxis' + required: + - type + - requests + type: object + EventStreamWidgetDefinition: + description: |- + The event stream is a widget version of the stream of events + on the Event Stream view. Only available on FREE layout dashboards. + properties: + description: + description: The description of the widget. + type: string + event_size: + $ref: '#/components/schemas/WidgetEventSize' + query: + description: Query to filter the event stream with. + example: '' + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + type: string + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/EventStreamWidgetDefinitionType' + required: + - type + - query + type: object + EventTimelineWidgetDefinition: + description: The event timeline is a widget version of the timeline that appears at the top of the Event Stream view. Only available on FREE layout dashboards. + properties: + description: + description: The description of the widget. + type: string + query: + description: Query to filter the event timeline with. + example: '' + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + type: string + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/EventTimelineWidgetDefinitionType' + required: + - type + - query + type: object + FreeTextWidgetDefinition: + description: Free text is a widget that allows you to add headings to your dashboard. Commonly used to state the overall purpose of the dashboard. + properties: + background_color: + $ref: '#/components/schemas/WidgetBackgroundColor' + color: + description: Color of the text. + type: string + font_size: + description: Size of the text. + type: string + text: + description: Text to display. + example: '' + type: string + text_align: + $ref: '#/components/schemas/WidgetTextAlign' + type: + $ref: '#/components/schemas/FreeTextWidgetDefinitionType' + required: + - type + - text + type: object + FunnelWidgetDefinition: + description: The funnel visualization displays a funnel of user sessions that maps a sequence of view navigation and user interaction in your application. + properties: + description: + description: The description of the widget. + type: string + grouped_display: + $ref: '#/components/schemas/FunnelGroupedDisplay' + requests: + description: Request payload used to query items. + example: + - query: + data_source: rum + query_string: '@browser.name:Chrome' + steps: + - facet: '@view.name' + value: /logs + - facet: '@view.name' + value: /apm/home + request_type: funnel + items: + $ref: '#/components/schemas/FunnelWidgetRequest' + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: The title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: The size of the title. + type: string + type: + $ref: '#/components/schemas/FunnelWidgetDefinitionType' + required: + - type + - requests + type: object + ProductAnalyticsFunnelWidgetDefinition: + additionalProperties: false + description: The user journey funnel visualization displays conversion funnels based on user journey data from Product Analytics. + properties: + description: + description: The description of the widget. + type: string + grouped_display: + $ref: '#/components/schemas/FunnelGroupedDisplay' + requests: + description: Request payload used to query items. + example: + - query: + compute: + aggregation: cardinality + metric: __dd.conversion + data_source: product_analytics_journey + search: + expression: step1 -> step2 + filters: + string_filter: '@application.id:xxx @geo.country:France' + node_objects: + step1: + data_source: product_analytics + search: + query: '@type:view @view.name:/home' + step2: + data_source: product_analytics + search: + query: '@type:action @action.name:"add to cart"' + request_type: user_journey_funnel + items: + $ref: '#/components/schemas/ProductAnalyticsFunnelRequest' + description: A user journey funnel widget request. + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: The title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: The size of the title. + type: string + type: + $ref: '#/components/schemas/FunnelWidgetDefinitionType' + required: + - type + - requests + type: object + GeomapWidgetDefinition: + description: This visualization displays a series of values by country on a world map. + properties: + custom_links: + description: A list of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: |- + Array of request objects to display in the widget. May include an optional request for the region layer and/or an optional request for the points layer. Region layer requests must contain a `group-by` tag whose value is a country ISO code. + See the [Request JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/request_json) + for information about building the `REQUEST_SCHEMA`. + example: + - rum_query: + search: + query: {} + items: + $ref: '#/components/schemas/GeomapWidgetRequest' + maxItems: 2 + minItems: 1 + type: array + style: + $ref: '#/components/schemas/GeomapWidgetDefinitionStyle' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: The title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: The size of the title. + type: string + type: + $ref: '#/components/schemas/GeomapWidgetDefinitionType' + view: + $ref: '#/components/schemas/GeomapWidgetDefinitionView' + required: + - type + - requests + - style + - view + type: object + GroupWidgetDefinition: + description: The group widget allows you to keep similar graphs together on your dashboard. Each group has a custom header, can hold one to many graphs, and is collapsible. + properties: + background_color: + $ref: '#/components/schemas/WidgetBackgroundColor' + banner_img: + description: URL of image to display as a banner for the group. + type: string + layout_type: + $ref: '#/components/schemas/WidgetLayoutType' + show_title: + default: true + description: Whether to show the title or not. + type: boolean + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + type: + $ref: '#/components/schemas/GroupWidgetDefinitionType' + widgets: + description: List of widget groups. + example: + - definition: + requests: + fill: + q: avg:system.cpu.user{*} + type: hostmap + items: + $ref: '#/components/schemas/Widget' + type: array + required: + - type + - layout_type + - widgets + type: object + HeatMapWidgetDefinition: + description: The heat map visualization shows metrics aggregated across many tags, such as hosts. The more hosts that have a particular value, the darker that square is. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + events: + deprecated: true + description: List of widget events. Deprecated - Use `overlay` request type instead. + items: + $ref: '#/components/schemas/WidgetEvent' + type: array + legend_size: + $ref: '#/components/schemas/WidgetLegendSize' + markers: + description: List of markers. + example: + - display_type: percentile + value: '90' + items: + $ref: '#/components/schemas/WidgetMarker' + type: array + requests: + description: List of widget types. + example: + - q: jvm.heap.memory + items: + $ref: '#/components/schemas/HeatMapWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + show_legend: + description: Whether or not to display the legend on this widget. + type: boolean + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/HeatMapWidgetDefinitionType' + xaxis: + $ref: '#/components/schemas/HeatMapWidgetXAxis' + yaxis: + $ref: '#/components/schemas/WidgetAxis' + required: + - type + - requests + type: object + HostMapWidgetDefinition: + description: The host map widget graphs any metric across your hosts using the same visualization available from the main Host Map page. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + group: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `group_by` (infrastructure) or a `group` dimension (DDSQL) inside `requests` instead. + items: + description: Tag prefixes. + type: string + type: array + no_group_hosts: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `no_group_hosts` inside `requests` instead. + type: boolean + no_metric_hosts: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `no_metric_hosts` inside `requests` instead. + type: boolean + node_type: + $ref: '#/components/schemas/WidgetNodeType' + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `node_type` inside `requests` instead. + notes: + description: Notes on the title. + type: string + requests: + $ref: '#/components/schemas/HostMapWidgetDefinitionRequests' + scope: + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `filter` inside `requests` instead. + items: + description: Tags. + type: string + type: array + style: + $ref: '#/components/schemas/HostMapWidgetDefinitionStyle' + deprecated: true + description: Deprecated - Only used by the legacy metric-based format. Use `style` inside `requests` instead. + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/HostMapWidgetDefinitionType' + required: + - type + - requests + type: object + IFrameWidgetDefinition: + description: The iframe widget allows you to embed a portion of any other web page on your dashboard. + properties: + type: + $ref: '#/components/schemas/IFrameWidgetDefinitionType' + url: + description: URL of the iframe. + example: '' + type: string + required: + - type + - url + type: object + ImageWidgetDefinition: + description: The image widget allows you to embed an image on your dashboard. An image can be a PNG, JPG, or animated GIF. + properties: + has_background: + default: true + description: Whether to display a background or not. + example: true + type: boolean + has_border: + default: true + description: Whether to display a border or not. + example: true + type: boolean + horizontal_align: + $ref: '#/components/schemas/WidgetHorizontalAlign' + margin: + $ref: '#/components/schemas/WidgetMargin' + sizing: + $ref: '#/components/schemas/WidgetImageSizing' + type: + $ref: '#/components/schemas/ImageWidgetDefinitionType' + url: + description: URL of the image. + example: https://example.com/image.png + type: string + url_dark_theme: + description: URL of the image in dark mode. + example: https://example.com/image-dark-mode.png + type: string + vertical_align: + $ref: '#/components/schemas/WidgetVerticalAlign' + required: + - type + - url + type: object + ListStreamWidgetDefinition: + description: |- + The list stream visualization displays a table of recent events in your application that + match a search criteria using user-defined columns. + properties: + description: + description: The description of the widget. + type: string + legend_size: + $ref: '#/components/schemas/WidgetLegendSize' + requests: + description: Request payload used to query items. + example: + - columns: + - field: timestamp + width: auto + query: + data_source: apm_issue_stream + query_string: '@data_source:APM' + response_format: event_list + items: + $ref: '#/components/schemas/ListStreamWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + show_legend: + description: Whether or not to display the legend on this widget. + type: boolean + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/ListStreamWidgetDefinitionType' + required: + - type + - requests + type: object + LogStreamWidgetDefinition: + description: The Log Stream displays a log flow matching the defined query. + properties: + columns: + description: Which columns to display on the widget. + items: + description: Column name. + type: string + type: array + description: + description: The description of the widget. + type: string + indexes: + description: An array of index names to query in the stream. Use [] to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: One of the log indexes set up for your organization. [Multiple Indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) + type: string + type: array + logset: + deprecated: true + description: ID of the log set to use. + type: string + message_display: + $ref: '#/components/schemas/WidgetMessageDisplay' + query: + description: Query to filter the log stream with. + type: string + show_date_column: + description: Whether to show the date column or not + type: boolean + show_message_column: + description: Whether to show the message column or not + type: boolean + sort: + $ref: '#/components/schemas/WidgetFieldSort' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/LogStreamWidgetDefinitionType' + required: + - type + type: object + MonitorSummaryWidgetDefinition: + description: The monitor summary widget displays a summary view of all your Datadog monitors, or a subset based on a query. + properties: + color_preference: + $ref: '#/components/schemas/WidgetColorPreference' + count: + deprecated: true + description: The number of monitors to display. + format: int64 + type: integer + description: + description: The description of the widget. + type: string + display_format: + $ref: '#/components/schemas/WidgetMonitorSummaryDisplayFormat' + hide_zero_counts: + description: Whether to show counts of 0 or not. + type: boolean + query: + description: Query to filter the monitors with. + example: '' + type: string + show_last_triggered: + description: Whether to show the time that has elapsed since the monitor/group triggered. + type: boolean + show_priority: + default: false + description: Whether to show the priorities column. + type: boolean + sort: + $ref: '#/components/schemas/WidgetMonitorSummarySort' + start: + deprecated: true + description: The start of the list. Typically 0. + format: int64 + type: integer + summary_type: + $ref: '#/components/schemas/WidgetSummaryType' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/MonitorSummaryWidgetDefinitionType' + required: + - type + - query + type: object + NoteWidgetDefinition: + description: The notes and links widget is similar to free text widget, but allows for more formatting options. + properties: + background_color: + description: Background color of the note. + type: string + content: + description: Content of the note. + example: '' + type: string + font_size: + description: Size of the text. + type: string + has_padding: + default: true + description: Whether to add padding or not. + type: boolean + show_tick: + description: Whether to show a tick or not. + type: boolean + text_align: + $ref: '#/components/schemas/WidgetTextAlign' + tick_edge: + $ref: '#/components/schemas/WidgetTickEdge' + tick_pos: + description: Where to position the tick on an edge. + type: string + type: + $ref: '#/components/schemas/NoteWidgetDefinitionType' + vertical_align: + $ref: '#/components/schemas/WidgetVerticalAlign' + required: + - type + - content + type: object + PowerpackWidgetDefinition: + description: The powerpack widget allows you to keep similar graphs together on your timeboard. Each group has a custom header, can hold one to many graphs, and is collapsible. + properties: + background_color: + description: Background color of the powerpack title. + type: string + banner_img: + description: URL of image to display as a banner for the powerpack. + type: string + powerpack_id: + description: UUID of the associated powerpack. + example: df43cf2a-6475-490d-b686-6fbc6cb9a49c + type: string + show_title: + default: true + description: Whether to show the title or not. + type: boolean + template_variables: + $ref: '#/components/schemas/PowerpackTemplateVariables' + title: + description: Title of the widget. + type: string + type: + $ref: '#/components/schemas/PowerpackWidgetDefinitionType' + required: + - type + - powerpack_id + type: object + PointPlotWidgetDefinition: + description: The point plot displays individual data points over time. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + legend: + $ref: '#/components/schemas/PointPlotWidgetLegend' + markers: + description: List of markers for the widget. + items: + $ref: '#/components/schemas/WidgetMarker' + type: array + requests: + description: List of request configurations for the widget. + items: + $ref: '#/components/schemas/PointPlotWidgetRequest' + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/PointPlotWidgetDefinitionType' + yaxis: + $ref: '#/components/schemas/WidgetAxis' + required: + - type + - requests + type: object + QueryValueWidgetDefinition: + description: Query values display the current value of a given metric, APM, or log query. + properties: + autoscale: + description: Whether to use auto-scaling or not. + type: boolean + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + custom_unit: + description: Display a unit of your choice on the widget. + type: string + description: + description: The description of the widget. + type: string + precision: + description: Number of decimals to show. If not defined, the widget uses the raw value. + format: int64 + type: integer + requests: + description: Widget definition. + example: + - q/apm_query/log_query: {} + items: + $ref: '#/components/schemas/QueryValueWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + text_align: + $ref: '#/components/schemas/WidgetTextAlign' + time: + $ref: '#/components/schemas/WidgetTime' + timeseries_background: + $ref: '#/components/schemas/TimeseriesBackground' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/QueryValueWidgetDefinitionType' + required: + - type + - requests + type: object + RetentionCurveWidgetDefinition: + additionalProperties: false + description: The retention curve widget visualizes user retention rates over time. + properties: + description: + description: The description of the widget. + type: string + requests: + description: List of Retention Curve widget requests. + example: + - query: + compute: + aggregation: count + metric: __dd.retention_rate + data_source: product_analytics_retention + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:/home' + time_interval: + type: calendar + value: + type: week + retention_entity: '@usr.id' + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:/checkout' + request_type: retention_curve + items: + $ref: '#/components/schemas/RetentionCurveWidgetRequest' + description: A retention curve widget request. + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/RetentionCurveWidgetDefinitionType' + required: + - type + - requests + type: object + RunWorkflowWidgetDefinition: + description: Run workflow is widget that allows you to run a workflow from a dashboard. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + inputs: + description: Array of workflow inputs to map to dashboard template variables. + items: + $ref: '#/components/schemas/RunWorkflowWidgetInput' + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/RunWorkflowWidgetDefinitionType' + workflow_id: + description: Workflow id. + example: + type: string + required: + - type + - workflow_id + type: object + SLOListWidgetDefinition: + description: Use the SLO List widget to track your SLOs (Service Level Objectives) on dashboards. + properties: + description: + description: The description of the widget. + type: string + requests: + description: Array of one request object to display in the widget. + items: + $ref: '#/components/schemas/SLOListWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/SLOListWidgetDefinitionType' + required: + - type + - requests + type: object + SLOWidgetDefinition: + description: Use the SLO and uptime widget to track your SLOs (Service Level Objectives) and uptime on dashboards. + properties: + additional_query_filters: + description: Additional filters applied to the SLO query. + type: string + description: + description: The description of the widget. + type: string + global_time_target: + description: Defined global time target. + type: string + show_error_budget: + description: Defined error budget. + type: boolean + slo_id: + description: ID of the SLO displayed. + type: string + time_windows: + description: Times being monitored. + items: + $ref: '#/components/schemas/WidgetTimeWindows' + type: array + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/SLOWidgetDefinitionType' + view_mode: + $ref: '#/components/schemas/WidgetViewMode' + view_type: + default: detail + description: Type of view displayed by the widget. + example: detail + type: string + required: + - type + - view_type + type: object + ScatterPlotWidgetDefinition: + description: The scatter plot visualization allows you to graph a chosen scope over two different metrics with their respective aggregation. + properties: + color_by_groups: + description: List of groups used for colors. + items: + description: Group name. + type: string + type: array + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + $ref: '#/components/schemas/ScatterPlotWidgetDefinitionRequests' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/ScatterPlotWidgetDefinitionType' + xaxis: + $ref: '#/components/schemas/WidgetAxis' + yaxis: + $ref: '#/components/schemas/WidgetAxis' + required: + - type + - requests + type: object + SankeyWidgetDefinition: + additionalProperties: false + description: The Sankey diagram visualizes the flow of data between categories, stages or sets of values. + properties: + requests: + description: List of Sankey widget requests. + example: + - query: + data_source: rum + mode: source + query_string: '@type:view' + request_type: sankey + items: + $ref: '#/components/schemas/SankeyWidgetRequest' + minItems: 1 + type: array + show_other_links: + description: Whether to show links for "other" category. + type: boolean + sort_nodes: + description: Whether to sort nodes in the Sankey diagram. + type: boolean + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/SankeyWidgetDefinitionType' + required: + - type + - requests + type: object + ServiceMapWidgetDefinition: + description: This widget displays a map of a service to all of the services that call it, and all of the services that it calls. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: + - '*' + items: + description: Filter name. + type: string + minItems: 1 + type: array + service: + description: The ID of the service you want to map. + example: '' + type: string + title: + description: The title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/ServiceMapWidgetDefinitionType' + required: + - type + - filters + - service + type: object + ServiceSummaryWidgetDefinition: + description: The service summary displays the graphs of a chosen service in your dashboard. + properties: + description: + description: The description of the widget. + type: string + display_format: + $ref: '#/components/schemas/WidgetServiceSummaryDisplayFormat' + env: + description: APM environment. + example: '' + type: string + service: + description: APM service. + example: '' + type: string + show_breakdown: + description: Whether to show the latency breakdown or not. + type: boolean + show_distribution: + description: Whether to show the latency distribution or not. + type: boolean + show_errors: + description: Whether to show the error metrics or not. + type: boolean + show_hits: + description: Whether to show the hits metrics or not. + type: boolean + show_latency: + description: Whether to show the latency metrics or not. + type: boolean + show_resource_list: + description: Whether to show the resource list or not. + type: boolean + size_format: + $ref: '#/components/schemas/WidgetSizeFormat' + span_name: + description: APM span name. + example: '' + type: string + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/ServiceSummaryWidgetDefinitionType' + required: + - type + - env + - service + - span_name + type: object + SplitGraphWidgetDefinition: + description: 'The split graph widget allows you to create repeating units of a graph - one for each value in a group (for example: one per service)' + properties: + has_uniform_y_axes: + description: Normalize y axes across graphs + type: boolean + size: + $ref: '#/components/schemas/SplitGraphVizSize' + source_widget_definition: + $ref: '#/components/schemas/SplitGraphSourceWidgetDefinition' + split_config: + $ref: '#/components/schemas/SplitConfig' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + type: + $ref: '#/components/schemas/SplitGraphWidgetDefinitionType' + required: + - size + - type + - source_widget_definition + - split_config + type: object + SunburstWidgetDefinition: + description: Sunbursts are spot on to highlight how groups contribute to the total of a query. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + hide_total: + description: Show the total value in this widget. + type: boolean + legend: + $ref: '#/components/schemas/SunburstWidgetLegend' + requests: + description: List of sunburst widget requests. + example: + - q/apm_query/log_query: {} + items: + $ref: '#/components/schemas/SunburstWidgetRequest' + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/SunburstWidgetDefinitionType' + required: + - type + - requests + type: object + TableWidgetDefinition: + description: The table visualization is available on dashboards. It displays columns of metrics grouped by tag key. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + has_search_bar: + $ref: '#/components/schemas/TableWidgetHasSearchBar' + requests: + description: Widget definition. + example: + - q/apm_query/log_query: {} + items: + $ref: '#/components/schemas/TableWidgetRequest' + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/TableWidgetDefinitionType' + required: + - type + - requests + type: object + TimeseriesWidgetDefinition: + description: The timeseries visualization allows you to display the evolution of one or more metrics, log events, or Indexed Spans over time. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + events: + deprecated: true + description: List of widget events. Deprecated - Use `overlay` request type instead. + items: + $ref: '#/components/schemas/WidgetEvent' + type: array + legend_columns: + description: Columns displayed in the legend. + items: + $ref: '#/components/schemas/TimeseriesWidgetLegendColumn' + type: array + legend_layout: + $ref: '#/components/schemas/TimeseriesWidgetLegendLayout' + legend_size: + $ref: '#/components/schemas/WidgetLegendSize' + markers: + description: List of markers. + items: + $ref: '#/components/schemas/WidgetMarker' + type: array + requests: + description: List of timeseries widget requests. + example: + - q/apm_query/log_query: {} + items: + $ref: '#/components/schemas/TimeseriesWidgetRequest' + minItems: 1 + type: array + right_yaxis: + $ref: '#/components/schemas/WidgetAxis' + show_legend: + description: (screenboard only) Show the legend for this widget. + type: boolean + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/TimeseriesWidgetDefinitionType' + yaxis: + $ref: '#/components/schemas/WidgetAxis' + required: + - type + - requests + type: object + ToplistWidgetDefinition: + description: The top list visualization enables you to display a list of Tag value like hostname or service with the most or least of any metric value, such as highest consumers of CPU, hosts with the least disk space, etc. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: List of top list widget requests. + example: + - q: system.load.1 + items: + $ref: '#/components/schemas/ToplistWidgetRequest' + type: array + style: + $ref: '#/components/schemas/ToplistWidgetStyle' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/ToplistWidgetDefinitionType' + required: + - type + - requests + type: object + TopologyMapWidgetDefinition: + description: This widget displays a topology of nodes and edges for different data sources. It replaces the service map widget. + additionalProperties: false + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: One Topology request. + items: + $ref: '#/components/schemas/TopologyRequestDataStreams' + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/TopologyMapWidgetDefinitionType' + required: + - type + - requests + type: object + TreeMapWidgetDefinition: + description: The treemap visualization enables you to display hierarchical and nested data. It is well suited for queries that describe part-whole relationships, such as resource usage by availability zone, data center, or team. + properties: + color_by: + $ref: '#/components/schemas/TreeMapColorBy' + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + group_by: + $ref: '#/components/schemas/TreeMapGroupBy' + requests: + description: List of treemap widget requests. + example: + - aggregator: sum + data_source: metrics + name: query1 + query: sum:system.mem.total{*} by {service} + items: + $ref: '#/components/schemas/TreeMapWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + size_by: + $ref: '#/components/schemas/TreeMapSizeBy' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + type: + $ref: '#/components/schemas/TreeMapWidgetDefinitionType' + required: + - type + - requests + type: object + WildcardWidgetDefinition: + description: Custom visualization widget using Vega or Vega-Lite specifications. Combines standard Datadog data requests with a Vega or Vega-Lite JSON specification for flexible, custom visualizations. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + requests: + description: List of data requests for the wildcard widget. + example: + - formulas: + - formula: query1 + queries: + - aggregator: avg + data_source: metrics + name: query1 + query: avg:system.cpu.user{*} by {env} + response_format: scalar + items: + $ref: '#/components/schemas/WildcardWidgetRequest' + type: array + specification: + $ref: '#/components/schemas/WildcardWidgetSpecification' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of the widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/WildcardWidgetDefinitionType' + required: + - type + - requests + - specification + type: object + SharedDashboardInvitesDataObjectAttributes: + description: Attributes of the shared dashboard invitation + example: + created_at: '2020-12-07T20:16:27.846985+00:00' + email: test@datadoghq.com + has_session: false + invitation_expiry: '2020-12-07T21:16:27.840542+00:00' + session_expiry: null + share_token: XXXXXX-123456abcedfg7890hijklmnopqrstuv + properties: + created_at: + description: When the invitation was sent. + format: date-time + readOnly: true + type: string + email: + description: An email address that an invitation has been (or if used in invitation request, will be) sent to. + nullable: false + type: string + has_session: + description: Indicates whether an active session exists for the invitation (produced when a user clicks the link in the email). + readOnly: true + type: boolean + invitation_expiry: + description: When the invitation expires. + format: date-time + readOnly: true + type: string + session_expiry: + description: When the invited user's session expires. null if the invitation has no associated session. + format: date-time + nullable: true + readOnly: true + type: string + share_token: + description: The unique token of the shared dashboard that was (or is to be) shared. + readOnly: true + type: string + type: object + DashboardInviteType: + description: Type for shared dashboard invitation request body. + enum: + - public_dashboard_invitation + example: public_dashboard_invitation + type: string + x-enum-varnames: + - PUBLIC_DASHBOARD_INVITATION + NotebookAuthor: + description: Attributes of user object returned by the API. + properties: + created_at: + description: Creation time of the user. + format: date-time + type: string + disabled: + description: Whether the user is disabled. + type: boolean + email: + description: Email of the user. + type: string + handle: + description: Handle of the user. + type: string + icon: + description: URL of the user's icon. + type: string + name: + description: Name of the user. + nullable: true + type: string + status: + description: Status of the user. + type: string + title: + description: Title of the user. + nullable: true + type: string + verified: + description: Whether the user is verified. + type: boolean + type: object + NotebookCellResponse: + description: The description of a notebook cell response. + properties: + attributes: + $ref: '#/components/schemas/NotebookCellResponseAttributes' + id: + description: Notebook cell ID. + example: abcd1234 + type: string + type: + $ref: '#/components/schemas/NotebookCellResourceType' + required: + - id + - type + - attributes + type: object + NotebookMetadata: + description: Metadata associated with the notebook. + properties: + is_template: + default: false + description: Whether or not the notebook is a template. + example: false + type: boolean + take_snapshots: + default: false + description: Whether or not the notebook takes snapshot image backups of the notebook's fixed-time graphs. + example: false + type: boolean + type: + $ref: '#/components/schemas/NotebookMetadataType' + type: object + NotebookStatus: + default: published + description: Publication status of the notebook. For now, always "published". + enum: + - published + example: published + type: string + x-enum-varnames: + - PUBLISHED + NotebookTemplateVariable: + additionalProperties: false + description: Notebook template variable. + properties: + available_values: + description: The list of values that the template variable drop-down is limited to. + example: + - my-host + - host1 + - host2 + items: + description: Template variable value. + minLength: 1 + type: string + nullable: true + type: array + uniqueItems: true + available_values_query: + $ref: '#/components/schemas/NotebookTemplateVariableAvailableValuesQuery' + data_source_mappings: + additionalProperties: + description: The value for the given data source. + type: string + description: Mapping of data source names to template variable values. + type: object + default: + deprecated: true + description: |- + (deprecated) The default value for the template variable on notebook load. + Cannot be used in conjunction with `defaults`. + example: my-host + nullable: true + type: string + defaults: + description: One or many default values for the template variable. Cannot be used in conjunction with `default`. + example: + - my-host-1 + - my-host-2 + items: + description: A default value for the template variable. + minLength: 1 + type: string + type: array + uniqueItems: true + name: + description: The name of the variable. + example: host1 + type: string + placement: + description: The placement of the template variable in the notebook. + example: global + type: string + prefix: + description: The tag prefix associated with the variable. Only tags with this prefix appear in the variable drop-down. + example: host + nullable: true + type: string + type: + description: The type of the template variable. + example: tag + type: string + required: + - name + type: object + NotebookGlobalTime: + description: Notebook global timeframe. + example: + live_span: 1h + end: '2021-02-24T20:18:28+00:00' + start: '2021-02-24T19:18:28+00:00' + nullable: true + properties: + live_span: + $ref: '#/components/schemas/WidgetLiveSpanV1' + end: + description: The end time. + example: '2021-02-24T20:18:28+00:00' + format: date-time + type: string + live: + description: Indicates whether the timeframe should be shifted to end at the current time. + type: boolean + start: + description: The start time. + example: '2021-02-24T19:18:28+00:00' + format: date-time + type: string + required: + - live_span + - start + - end + type: object + NotebookCellCreateRequest: + additionalProperties: false + description: The description of a notebook cell create request. + properties: + attributes: + $ref: '#/components/schemas/NotebookCellCreateRequestAttributes' + type: + $ref: '#/components/schemas/NotebookCellResourceType' + required: + - attributes + - type + type: object + NotebookUpdateCell: + description: |- + Updating a notebook can either insert new cell(s) or update existing cell(s) by including the cell `id`. + To delete existing cell(s), simply omit it from the list of cells. + additionalProperties: false + properties: + attributes: + $ref: '#/components/schemas/NotebookCellCreateRequestAttributes' + type: + $ref: '#/components/schemas/NotebookCellResourceType' + id: + description: Notebook cell ID. + example: abcd1234 + type: string + required: + - attributes + - type + - id + type: object + AnnotationInPage: + description: A flat annotation object as it appears within a page annotations response. + properties: + author_id: + description: Identifier of the user who created the annotation. + example: 00000000-0000-0000-0000-000000000000 + type: string + color: + $ref: '#/components/schemas/AnnotationColor' + created_at: + description: Creation time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + description: + description: User-defined text attached to the annotation. + example: Deployed v2.3.1 to production. + type: string + end_time: + description: End time of the annotation in milliseconds since the Unix epoch. Null for `pointInTime` annotations. + example: 1704070800000 + format: int64 + nullable: true + type: integer + id: + description: Unique identifier of the annotation. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + modified_at: + description: Last modification time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + page_id: + description: |- + ID of the page the annotation belongs to, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: dashboard:abc-def-xyz + type: string + start_time: + description: Start time of the annotation in milliseconds since the Unix epoch. + example: 1704067200000 + format: int64 + type: integer + type: + $ref: '#/components/schemas/AnnotationKind' + widget_ids: + description: IDs of widgets the annotation is associated with. When empty or omitted, the annotation applies to the whole page. + example: + - '1234567890' + items: + description: Widget ID. + type: string + type: array + required: + - id + - page_id + - description + - author_id + - type + - color + - start_time + - end_time + - created_at + - modified_at + type: object + WidgetAnnotationIds: + description: List of annotation IDs displayed on a widget. + example: + - 00000000-0000-0000-0000-000000000000 + items: + description: Annotation ID. + format: uuid + type: string + type: array + SharedDashboardViewingPreferencesTheme: + description: The theme of the shared dashboard view. `system` follows the viewer's system default. + enum: + - system + - light + - dark + example: system + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK + SharedDashboardRelationshipDashboardData: + description: Dashboard relationship data. + properties: + id: + description: ID of the dashboard. + example: abc-def-ghi + type: string + type: + $ref: '#/components/schemas/SharedDashboardIncludedDashboardType' + required: + - id + - type + type: object + UserRelationshipData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/UserResourceType' + required: + - id + - type + type: object + SecureEmbedGlobalTimeLiveSpan: + description: Dashboard global time live_span selection. + enum: + - 15m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + example: 1h + type: string + x-enum-varnames: + - PAST_FIFTEEN_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + SecureEmbedViewingPreferencesTheme: + description: The theme of the shared dashboard view. `system` follows the viewer's system default. + enum: + - system + - light + - dark + example: system + type: string + x-enum-varnames: + - SYSTEM + - LIGHT + - DARK + PowerpackGroupWidgetDefinition: + description: Powerpack group widget object. + properties: + layout_type: + description: Layout type of widgets. + example: ordered + type: string + show_title: + description: Boolean indicating whether powerpack group title should be visible or not. + example: true + type: boolean + title: + description: Name for the group widget. + example: Sample Powerpack + type: string + type: + description: Type of widget, must be group. + example: group + type: string + widgets: + description: Widgets inside the powerpack. + example: + - definition: + content: example + type: note + layout: + height: 5 + width: 10 + x: 0 + 'y': 0 + items: + $ref: '#/components/schemas/PowerpackInnerWidgets' + type: array + required: + - widgets + - layout_type + - type + type: object + PowerpackGroupWidgetLayout: + description: Powerpack group widget layout. + properties: + height: + description: The height of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + width: + description: The width of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + x: + description: The position of the widget on the x (horizontal) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + 'y': + description: The position of the widget on the y (vertical) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - x + - 'y' + - width + - height + type: object + WidgetLiveSpan: + description: The available timeframes depend on the widget you are using. + enum: + - 1m + - 5m + - 10m + - 15m + - 30m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + - 6mo + - 1y + - alert + example: 5m + type: string + x-enum-varnames: + - PAST_ONE_MINUTE + - PAST_FIVE_MINUTES + - PAST_TEN_MINUTES + - PAST_FIFTEEN_MINUTES + - PAST_THIRTY_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + - PAST_SIX_MONTHS + - PAST_ONE_YEAR + - ALERT + RelationshipToUserData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-2345-000000000000 + type: string + type: + $ref: '#/components/schemas/UsersType' + required: + - id + - type + type: object + RelationshipToOrganizationData: + description: Relationship to organization object. + properties: + id: + description: ID of the organization. + example: 00000000-0000-beef-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/OrganizationsType' + required: + - id + - type + type: object + RelationshipToRoleData: + description: Relationship to role object. + properties: + id: + description: The unique identifier of the role. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + type: + $ref: '#/components/schemas/RolesType' + type: object + ReportScheduleAuthorRelationshipData: + description: Relationship data for the author of the report schedule. + properties: + id: + description: The user UUID of the report schedule author. + example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: string + type: + $ref: '#/components/schemas/ReportScheduleAuthorType' + required: + - id + - type + type: object + ReportScheduleIndexTemplateVariable: + description: Template variable metadata from a dashboard index. + properties: + available_values: + description: Available values for the template variable. + example: + - prod + - staging + items: + type: string + nullable: true + type: array + defaults: + description: Default values for the template variable. + example: + - prod + items: + type: string + nullable: true + type: array + name: + description: The template variable name. + example: env + nullable: true + type: string + prefix: + description: The tag prefix for the template variable, when available. + example: env + nullable: true + type: string + type: object + ReportScheduleListResourceRelationshipData: + description: Relationship data for the report target resource. + properties: + id: + description: The resource identifier. + example: abc-def-ghi + type: string + type: + $ref: '#/components/schemas/ReportScheduleIncludedResourceType' + required: + - id + - type + type: object + CreateSnapshotTemplateVariables: + description: List of template variable definitions for snapshot rendering. + items: + $ref: '#/components/schemas/CreateSnapshotTemplateVariable' + type: array + CreateSnapshotTimeseriesLegendType: + description: The legend display type for timeseries widgets. A value of `none` hides the legend entirely; omitting the field lets the frontend choose automatically. + enum: + - compact + - expanded + - none + example: expanded + type: string + x-enum-varnames: + - COMPACT + - EXPANDED + - NONE + WidgetRelationshipData: + description: Relationship data referencing a user resource. + properties: + id: + description: The unique identifier of the user. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: string + type: + description: Users resource type. + example: users + type: string + required: + - id + - type + type: object + WidgetTime: + description: Time setting for the widget. + additionalProperties: false + properties: + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + live_span: + $ref: '#/components/schemas/WidgetLiveSpanV1' + type: + $ref: '#/components/schemas/WidgetNewLiveSpanType' + unit: + $ref: '#/components/schemas/WidgetLiveSpanUnit' + value: + description: Value of the time span. + example: 4 + format: int64 + minimum: 1 + type: integer + from: + description: Start time in milliseconds since epoch. + example: 1712080128000 + format: int64 + minimum: 0 + type: integer + to: + description: End time in milliseconds since epoch. + example: 1712083128000 + format: int64 + minimum: 0 + type: integer + type: object + required: + - type + - value + - unit + - from + - to + WidgetTextAlign: + description: How to align the text on the widget. + enum: + - center + - left + - right + type: string + x-enum-varnames: + - CENTER + - LEFT + - RIGHT + AlertGraphWidgetDefinitionType: + default: alert_graph + description: Type of the alert graph widget. + enum: + - alert_graph + example: alert_graph + type: string + x-enum-varnames: + - ALERT_GRAPH + WidgetVizType: + description: Whether to display the Alert Graph as a timeseries or a top list. + enum: + - timeseries + - toplist + example: timeseries + type: string + x-enum-varnames: + - TIMESERIES + - TOPLIST + AlertValueWidgetDefinitionType: + default: alert_value + description: Type of the alert value widget. + enum: + - alert_value + example: alert_value + type: string + x-enum-varnames: + - ALERT_VALUE + WidgetCustomLink: + description: Custom links help you connect a data value to a URL, like a Datadog page or your AWS console. + properties: + is_hidden: + description: The flag for toggling context menu link visibility. + type: boolean + label: + description: The label for the custom link URL. Keep the label short and descriptive. Use metrics and tags as variables. + example: Search logs for {{host}} + type: string + link: + description: The URL of the custom link. URL must include `http` or `https`. A relative URL must start with `/`. + example: https://app.datadoghq.com/logs?query={{host}} + type: string + override_label: + description: The label ID that refers to a context menu link. Can be `logs`, `hosts`, `traces`, `profiles`, `processes`, `containers`, or `rum`. + example: logs + type: string + type: object + BarChartWidgetRequest: + description: Updated bar chart widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + conditional_formats: + description: List of conditional formats. + example: + - comparator: '>=' + palette: blue + value: 1 + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: '#/components/schemas/WidgetSortBy' + style: + $ref: '#/components/schemas/WidgetRequestStyle' + type: object + BarChartWidgetStyle: + description: Style customization for a bar chart widget. + properties: + display: + $ref: '#/components/schemas/BarChartWidgetDisplay' + palette: + description: Color palette to apply to the widget. + type: string + scaling: + $ref: '#/components/schemas/BarChartWidgetScaling' + type: object + BarChartWidgetDefinitionType: + default: bar_chart + description: Type of the bar chart widget. + enum: + - bar_chart + example: bar_chart + type: string + x-enum-varnames: + - BAR_CHART + ChangeWidgetRequest: + description: Updated change widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + change_type: + $ref: '#/components/schemas/WidgetChangeType' + compare_to: + $ref: '#/components/schemas/WidgetCompareTo' + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + increase_good: + description: Whether to show increase as good. + type: boolean + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + order_by: + $ref: '#/components/schemas/WidgetOrderBy' + order_dir: + $ref: '#/components/schemas/WidgetSort' + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Query definition. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + show_present: + description: Whether to show the present value. + type: boolean + type: object + ChangeWidgetDefinitionType: + default: change + description: Type of the change widget. + enum: + - change + example: change + type: string + x-enum-varnames: + - CHANGE + WidgetGrouping: + description: The kind of grouping to use. + enum: + - check + - cluster + example: check + type: string + x-enum-varnames: + - CHECK + - CLUSTER + CheckStatusWidgetDefinitionType: + default: check_status + description: Type of the check status widget. + enum: + - check_status + example: check_status + type: string + x-enum-varnames: + - CHECK_STATUS + RetentionGridRequest: + additionalProperties: false + description: Retention grid widget request. + properties: + query: + $ref: '#/components/schemas/RetentionQuery' + request_type: + $ref: '#/components/schemas/RetentionGridRequestType' + required: + - request_type + - query + type: object + CohortWidgetDefinitionType: + default: cohort + description: Type of the Cohort widget. + enum: + - cohort + example: cohort + type: string + x-enum-varnames: + - COHORT + WidgetMarker: + description: Markers allow you to add visual conditional formatting for your graphs. + properties: + display_type: + description: |- + Combination of: + - A severity error, warning, ok, or info + - A line type: dashed, solid, or bold + In this case of a Distribution widget, this can be set to be `percentile`. + example: error dashed + type: string + label: + description: Label to display over the marker. + example: Error threshold + type: string + time: + description: Timestamp for the widget. + type: string + value: + description: |- + Value to apply. Can be a single value y = 15 or a range of values 0 < y < 10. + For Distribution widgets with `display_type` set to `percentile`, this should be + a numeric percentile value (for example, "90" for P90). + example: y = 15 + type: string + required: + - value + type: object + DistributionWidgetRequest: + description: Updated distribution widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + apm_stats_query: + $ref: '#/components/schemas/ApmStatsQueryDefinition' + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + query: + $ref: '#/components/schemas/DistributionWidgetHistogramRequestQuery' + request_type: + $ref: '#/components/schemas/WidgetHistogramRequestType' + description: Distribution of point values for distribution metrics. Renders a histogram of raw metric data points. + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + description: Distribution of aggregated grouped queries. Use `request_type` instead for distribution of point values from distribution metrics. + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + style: + $ref: '#/components/schemas/WidgetStyle' + type: object + DistributionWidgetDefinitionType: + default: distribution + description: Type of the distribution widget. + enum: + - distribution + example: distribution + type: string + x-enum-varnames: + - DISTRIBUTION + DistributionWidgetXAxis: + description: X Axis controls for the distribution widget. + properties: + include_zero: + description: True includes zero. + type: boolean + max: + default: auto + description: Specifies maximum value to show on the x-axis. It takes a number, percentile (p90 === 90th percentile), or auto for default behavior. + type: string + min: + default: auto + description: Specifies minimum value to show on the x-axis. It takes a number, percentile (p90 === 90th percentile), or auto for default behavior. + type: string + num_buckets: + description: Number of value buckets to target, also known as the resolution of the value bins. + format: int64 + minimum: 1 + type: integer + scale: + default: linear + description: Specifies the scale type. Possible values are `linear`. + type: string + type: object + DistributionWidgetYAxis: + description: Y Axis controls for the distribution widget. + properties: + include_zero: + description: True includes zero. + type: boolean + label: + description: The label of the axis to display on the graph. + type: string + max: + default: auto + description: Specifies the maximum value to show on the y-axis. It takes a number, or auto for default behavior. + type: string + min: + default: auto + description: Specifies minimum value to show on the y-axis. It takes a number, or auto for default behavior. + type: string + scale: + default: linear + description: Specifies the scale type. Possible values are `linear` or `log`. + type: string + type: object + WidgetEventSize: + description: Size to use to display an event. + enum: + - s + - l + type: string + x-enum-varnames: + - SMALL + - LARGE + EventStreamWidgetDefinitionType: + default: event_stream + description: Type of the event stream widget. + enum: + - event_stream + example: event_stream + type: string + x-enum-varnames: + - EVENT_STREAM + EventTimelineWidgetDefinitionType: + default: event_timeline + description: Type of the event timeline widget. + enum: + - event_timeline + example: event_timeline + type: string + x-enum-varnames: + - EVENT_TIMELINE + WidgetBackgroundColor: + description: Background color of the widget. Supported values are `white`, `blue`, `purple`, `pink`, `orange`, `yellow`, `green`, `gray`, `vivid_blue`, `vivid_purple`, `vivid_pink`, `vivid_orange`, `vivid_yellow`, `vivid_green`, and `transparent`. + type: string + FreeTextWidgetDefinitionType: + default: free_text + description: Type of the free text widget. + enum: + - free_text + example: free_text + type: string + x-enum-varnames: + - FREE_TEXT + FunnelGroupedDisplay: + description: Display mode for grouped funnel results. + enum: + - stacked + - side_by_side + example: stacked + type: string + x-enum-varnames: + - STACKED + - SIDE_BY_SIDE + FunnelWidgetRequest: + description: Updated funnel widget. + properties: + query: + $ref: '#/components/schemas/FunnelQuery' + request_type: + $ref: '#/components/schemas/FunnelRequestType' + required: + - query + - request_type + type: object + FunnelWidgetDefinitionType: + default: funnel + description: Type of funnel widget. + enum: + - funnel + example: funnel + type: string + x-enum-varnames: + - FUNNEL + ProductAnalyticsFunnelRequest: + additionalProperties: false + description: User journey funnel widget request. + properties: + comparison_segments: + description: Comparison segments. + items: + description: Segment identifier. + minLength: 1 + type: string + minItems: 1 + type: array + comparison_time: + $ref: '#/components/schemas/FunnelComparisonDuration' + query: + $ref: '#/components/schemas/ProductAnalyticsFunnelQuery' + request_type: + $ref: '#/components/schemas/ProductAnalyticsFunnelRequestType' + required: + - query + - request_type + type: object + GeomapWidgetRequest: + description: An updated geomap widget. + properties: + columns: + description: Widget columns. + example: + - field: timestamp + width: auto + - field: content + width: full + items: + $ref: '#/components/schemas/ListStreamColumn' + type: array + conditional_formats: + description: Threshold (numeric) conditional formatting rules may be used by a regions layer. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: The widget metrics query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + query: + $ref: '#/components/schemas/ListStreamQuery' + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: '#/components/schemas/WidgetSortBy' + style: + $ref: '#/components/schemas/GeomapWidgetRequestStyle' + text_formats: + description: Text formatting rules may be used by a points layer. + items: + $ref: '#/components/schemas/TableWidgetTextFormatRule' + type: array + type: object + GeomapWidgetDefinitionStyle: + description: The style to apply to the widget. + example: + palette: hostmap_blues + palette_flip: false + properties: + palette: + description: The color palette to apply to the widget. + example: hostmap_blues + type: string + palette_flip: + description: Whether to flip the palette tones. + example: false + type: boolean + required: + - palette + - palette_flip + type: object + GeomapWidgetDefinitionType: + default: geomap + description: Type of the geomap widget. + enum: + - geomap + example: geomap + type: string + x-enum-varnames: + - GEOMAP + GeomapWidgetDefinitionView: + description: The view of the world that the map should render. + example: + focus: WORLD + properties: + focus: + description: The 2-letter ISO code of a country to focus the map on, or `WORLD` for global view, or a region (`EMEA`, `APAC`, `LATAM`), or a continent (`NORTH_AMERICA`, `SOUTH_AMERICA`, `EUROPE`, `AFRICA`, `ASIA`, `OCEANIA`). + example: WORLD + type: string + required: + - focus + type: object + WidgetLayoutType: + description: Layout type of the group. + enum: + - ordered + example: ordered + type: string + x-enum-varnames: + - ORDERED + GroupWidgetDefinitionType: + default: group + description: Type of the group widget. + enum: + - group + example: group + type: string + x-enum-varnames: + - GROUP + WidgetEvent: + deprecated: true + description: |- + Event overlay control options. + + See the dedicated [Events JSON schema documentation](https://docs.datadoghq.com/dashboards/graphing_json/widget_json/#events-schema) + to learn how to build the ``. + properties: + q: + description: Query definition. + example: '' + type: string + tags_execution: + description: The execution method for multi-value filters. + type: string + required: + - q + type: object + WidgetLegendSize: + description: Available legend sizes for a widget. Should be one of "0", "2", "4", "8", "16", or "auto". + type: string + HeatMapWidgetRequest: + description: Updated heat map widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: '#/components/schemas/EventQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + query: + $ref: '#/components/schemas/FormulaAndFunctionMetricQueryDefinition' + request_type: + $ref: '#/components/schemas/WidgetHistogramRequestType' + description: Applicable only for distribution of point values for distribution metrics. + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + description: Applicable only for distribution of aggregated grouped queries. + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + style: + $ref: '#/components/schemas/WidgetStyle' + type: object + HeatMapWidgetDefinitionType: + default: heatmap + description: Type of the heat map widget. + enum: + - heatmap + example: heatmap + type: string + x-enum-varnames: + - HEATMAP + HeatMapWidgetXAxis: + description: X Axis controls for the heat map widget. + properties: + num_buckets: + description: |- + Number of time buckets to target, also known as the resolution + of the time bins. This is only applicable for distribution of + points (group distributions use the roll-up modifier). + format: int64 + type: integer + type: object + WidgetAxis: + description: Axis controls for the widget. + properties: + include_zero: + description: Set to `true` to include zero. + type: boolean + label: + description: The label of the axis to display on the graph. Only usable on Scatterplot Widgets. + type: string + max: + default: auto + description: Specifies maximum numeric value to show on the axis. Defaults to `auto`. + type: string + min: + default: auto + description: Specifies minimum numeric value to show on the axis. Defaults to `auto`. + type: string + scale: + default: linear + description: Specifies the scale type. Possible values are `linear`, `log`, `sqrt`, and `pow##` (for example `pow2` or `pow0.5`). + type: string + type: object + WidgetNodeType: + description: Which type of node to use in the map. + enum: + - host + - container + type: string + x-enum-varnames: + - HOST + - CONTAINER + HostMapWidgetDefinitionRequests: + description: 'Query definition for the host map widget. Supports three mutually exclusive formats distinguished by `request_type`: the deprecated legacy metric-based format (`fill`/`size`, no `request_type`), the infrastructure-backed format (`request_type: infrastructure_hostmap`), and the DDSQL published-dataset format (`request_type: data_projection`).' + example: {} + properties: + child: + $ref: '#/components/schemas/HostMapWidgetInfrastructureRequest' + description: Optional child entities for hierarchical visualization (for example, host → container). Only used by the infrastructure-backed format. + conditional_formats: + description: List of conditional formatting rules applied to fill values. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + enrichments: + description: Metric or event queries joined to the entity set. Each formula specifies a visual dimension. Only used by the infrastructure-backed format. + example: + - formulas: + - dimension: fill + formula: query1 + queries: + - data_source: metrics + name: query1 + query: avg:system.cpu.user{*} by {host} + response_format: scalar + items: + $ref: '#/components/schemas/HostMapWidgetScalarRequest' + type: array + fill: + $ref: '#/components/schemas/HostMapRequest' + deprecated: true + description: 'Deprecated - Legacy metric-based format. Use the infrastructure-backed (`request_type: infrastructure_hostmap`) or DDSQL (`request_type: data_projection`) format instead.' + filter: + description: Filter string for the entity set in tag format (for example, `env:prod`). Only used by the infrastructure-backed format. + example: env:prod + type: string + group_by: + description: |- + Defines how entities are grouped into tiles. The ordering of entries implies + the grouping hierarchy. Only used by the infrastructure-backed format. + items: + $ref: '#/components/schemas/HostMapWidgetGroupBy' + type: array + limit: + description: Maximum number of rows to return from the dataset query. Only used by the DDSQL format. + format: int64 + type: integer + no_group_hosts: + description: Whether to hide entities that have no group assignment. + type: boolean + no_metric_hosts: + description: Whether to hide entities that have no enrichment data. + type: boolean + node_type: + $ref: '#/components/schemas/HostMapWidgetNodeType' + description: Entity type to visualize. Only used by the infrastructure-backed format. + projection: + $ref: '#/components/schemas/HostMapWidgetProjection' + description: Maps dataset columns to map dimensions (entity, optional parent for grouping, fill, size). Only used by the DDSQL format. + query: + $ref: '#/components/schemas/DatasetListQuery' + description: Published-dataset query. Only used by the DDSQL format. + request_type: + $ref: '#/components/schemas/HostMapWidgetDefinitionRequestType' + size: + $ref: '#/components/schemas/HostMapRequest' + deprecated: true + description: 'Deprecated - Legacy metric-based format. Use the infrastructure-backed (`request_type: infrastructure_hostmap`) or DDSQL (`request_type: data_projection`) format instead.' + style: + $ref: '#/components/schemas/HostMapWidgetInfrastructureStyle' + type: object + HostMapWidgetDefinitionStyle: + deprecated: true + description: Deprecated - The style to apply to the legacy metric-based host map widget. Use `HostMapWidgetInfrastructureStyle` instead. + properties: + fill_max: + description: Max value to use to color the map. + type: string + fill_min: + description: Min value to use to color the map. + type: string + palette: + description: Color palette to apply to the widget. + type: string + palette_flip: + description: Whether to flip the palette tones. + type: boolean + type: object + HostMapWidgetDefinitionType: + default: hostmap + description: Type of the host map widget. + enum: + - hostmap + example: hostmap + type: string + x-enum-varnames: + - HOSTMAP + IFrameWidgetDefinitionType: + default: iframe + description: Type of the iframe widget. + enum: + - iframe + example: iframe + type: string + x-enum-varnames: + - IFRAME + WidgetHorizontalAlign: + description: Horizontal alignment. + enum: + - center + - left + - right + type: string + x-enum-varnames: + - CENTER + - LEFT + - RIGHT + WidgetMargin: + description: |- + Size of the margins around the image. + **Note**: `small` and `large` values are deprecated. + enum: + - sm + - md + - lg + - small + - large + type: string + x-enum-varnames: + - SM + - MD + - LG + - SMALL + - LARGE + WidgetImageSizing: + description: |- + How to size the image on the widget. The values are based on the image `object-fit` CSS properties. + **Note**: `zoom`, `fit` and `center` values are deprecated. + enum: + - fill + - contain + - cover + - none + - scale-down + - zoom + - fit + - center + type: string + x-enum-varnames: + - FILL + - CONTAIN + - COVER + - NONE + - SCALEDOWN + - ZOOM + - FIT + - CENTER + ImageWidgetDefinitionType: + default: image + description: Type of the image widget. + enum: + - image + example: image + type: string + x-enum-varnames: + - IMAGE + WidgetVerticalAlign: + description: Vertical alignment. + enum: + - center + - top + - bottom + type: string + x-enum-varnames: + - CENTER + - TOP + - BOTTOM + ListStreamWidgetRequest: + description: Updated list stream widget. + properties: + columns: + description: Widget columns. + example: + - field: timestamp + width: auto + - field: content + width: full + items: + $ref: '#/components/schemas/ListStreamColumn' + type: array + query: + $ref: '#/components/schemas/ListStreamQuery' + response_format: + $ref: '#/components/schemas/ListStreamResponseFormat' + required: + - columns + - query + - response_format + type: object + ListStreamWidgetDefinitionType: + default: list_stream + description: Type of the list stream widget. + enum: + - list_stream + example: list_stream + type: string + x-enum-varnames: + - LIST_STREAM + WidgetMessageDisplay: + description: Amount of log lines to display + enum: + - inline + - expanded-md + - expanded-lg + type: string + x-enum-varnames: + - INLINE + - EXPANDED_MEDIUM + - EXPANDED_LARGE + WidgetFieldSort: + description: Which column and order to sort by + properties: + column: + description: Facet path for the column + example: '' + type: string + order: + $ref: '#/components/schemas/WidgetSort' + required: + - column + - order + type: object + LogStreamWidgetDefinitionType: + default: log_stream + description: Type of the log stream widget. + enum: + - log_stream + example: log_stream + type: string + x-enum-varnames: + - LOG_STREAM + WidgetColorPreference: + description: Which color to use on the widget. + enum: + - background + - text + type: string + x-enum-varnames: + - BACKGROUND + - TEXT + WidgetMonitorSummaryDisplayFormat: + description: What to display on the widget. + enum: + - counts + - countsAndList + - list + type: string + x-enum-varnames: + - COUNTS + - COUNTS_AND_LIST + - LIST + WidgetMonitorSummarySort: + description: Widget sorting methods. + enum: + - name + - group + - status + - tags + - triggered + - group,asc + - group,desc + - name,asc + - name,desc + - status,asc + - status,desc + - tags,asc + - tags,desc + - triggered,asc + - triggered,desc + - priority,asc + - priority,desc + example: name,asc + type: string + x-enum-varnames: + - NAME + - GROUP + - STATUS + - TAGS + - TRIGGERED + - GROUP_ASCENDING + - GROUP_DESCENDING + - NAME_ASCENDING + - NAME_DESCENDING + - STATUS_ASCENDING + - STATUS_DESCENDING + - TAGS_ASCENDING + - TAGS_DESCENDING + - TRIGGERED_ASCENDING + - TRIGGERED_DESCENDING + - PRIORITY_ASCENDING + - PRIORITY_DESCENDING + WidgetSummaryType: + description: Which summary type should be used. + enum: + - monitors + - groups + - combined + type: string + x-enum-varnames: + - MONITORS + - GROUPS + - COMBINED + MonitorSummaryWidgetDefinitionType: + default: manage_status + description: Type of the monitor summary widget. + enum: + - manage_status + example: manage_status + type: string + x-enum-varnames: + - MANAGE_STATUS + WidgetTickEdge: + description: Define how you want to align the text on the widget. + enum: + - bottom + - left + - right + - top + type: string + x-enum-varnames: + - BOTTOM + - LEFT + - RIGHT + - TOP + NoteWidgetDefinitionType: + default: note + description: Type of the note widget. + enum: + - note + example: note + type: string + x-enum-varnames: + - NOTE + PowerpackTemplateVariables: + description: Powerpack template variables. + properties: + controlled_by_powerpack: + description: Template variables controlled at the powerpack level. + items: + $ref: '#/components/schemas/PowerpackTemplateVariableContents' + type: array + controlled_externally: + description: Template variables controlled by the external resource, such as the dashboard this powerpack is on. + items: + $ref: '#/components/schemas/PowerpackTemplateVariableContents' + type: array + type: object + PowerpackWidgetDefinitionType: + default: powerpack + description: Type of the powerpack widget. + enum: + - powerpack + example: powerpack + type: string + x-enum-varnames: + - POWERPACK + PointPlotWidgetLegend: + description: Legend configuration for the point plot widget. + properties: + type: + $ref: '#/components/schemas/PointPlotWidgetLegendType' + required: + - type + type: object + PointPlotWidgetRequest: + description: Request configuration for the point plot widget. + properties: + limit: + description: Maximum number of data points to return. + format: int64 + type: integer + projection: + $ref: '#/components/schemas/PointPlotProjection' + query: + $ref: '#/components/schemas/DataProjectionQuery' + request_type: + $ref: '#/components/schemas/DataProjectionRequestType' + required: + - request_type + - query + - projection + type: object + PointPlotWidgetDefinitionType: + default: point_plot + description: Type of the point plot widget. + enum: + - point_plot + example: point_plot + type: string + x-enum-varnames: + - POINT_PLOT + QueryValueWidgetRequest: + description: Updated query value widget. + properties: + aggregator: + $ref: '#/components/schemas/WidgetAggregator' + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + comparison: + $ref: '#/components/schemas/QueryValueWidgetComparison' + description: Displays a change indicator showing a delta against a historical baseline. + conditional_formats: + description: List of conditional formats. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + type: object + TimeseriesBackground: + description: Set a timeseries on the widget background. + properties: + type: + $ref: '#/components/schemas/TimeseriesBackgroundType' + yaxis: + $ref: '#/components/schemas/WidgetAxis' + required: + - type + type: object + QueryValueWidgetDefinitionType: + default: query_value + description: Type of the query value widget. + enum: + - query_value + example: query_value + type: string + x-enum-varnames: + - QUERY_VALUE + RetentionCurveWidgetRequest: + additionalProperties: false + description: Retention curve widget request. + properties: + query: + $ref: '#/components/schemas/RetentionQuery' + request_type: + $ref: '#/components/schemas/RetentionCurveRequestType' + style: + $ref: '#/components/schemas/RetentionCurveStyle' + required: + - request_type + - query + type: object + RetentionCurveWidgetDefinitionType: + default: retention_curve + description: Type of the Retention Curve widget. + enum: + - retention_curve + example: retention_curve + type: string + x-enum-varnames: + - RETENTION_CURVE + RunWorkflowWidgetInput: + description: Object to map a dashboard template variable to a workflow input. + properties: + name: + description: Name of the workflow input. + example: Environment + type: string + value: + description: Dashboard template variable. Can be suffixed with '.value' or '.key'. + example: $env.value + type: string + required: + - name + - value + type: object + RunWorkflowWidgetDefinitionType: + default: run_workflow + description: Type of the run workflow widget. + enum: + - run_workflow + example: run_workflow + type: string + x-enum-varnames: + - RUN_WORKFLOW + SLOListWidgetRequest: + description: Updated SLO List widget. + properties: + query: + $ref: '#/components/schemas/SLOListWidgetQuery' + request_type: + $ref: '#/components/schemas/SLOListWidgetRequestType' + required: + - query + - request_type + type: object + SLOListWidgetDefinitionType: + default: slo_list + description: Type of the SLO List widget. + enum: + - slo_list + example: slo_list + type: string + x-enum-varnames: + - SLO_LIST + WidgetTimeWindows: + description: Define a time window. + enum: + - 7d + - 30d + - 90d + - week_to_date + - previous_week + - month_to_date + - previous_month + - global_time + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + - WEEK_TO_DATE + - PREVIOUS_WEEK + - MONTH_TO_DATE + - PREVIOUS_MONTH + - GLOBAL_TIME + SLOWidgetDefinitionType: + default: slo + description: Type of the SLO widget. + enum: + - slo + example: slo + type: string + x-enum-varnames: + - SLO + WidgetViewMode: + description: Define how you want the SLO to be displayed. + enum: + - overall + - component + - both + type: string + x-enum-varnames: + - OVERALL + - COMPONENT + - BOTH + ScatterPlotWidgetDefinitionRequests: + description: Widget definition. + example: + x: + q: system.cpu.user + 'y': + q: system.mem.used + properties: + table: + $ref: '#/components/schemas/ScatterplotTableRequest' + x: + $ref: '#/components/schemas/ScatterPlotRequest' + 'y': + $ref: '#/components/schemas/ScatterPlotRequest' + type: object + ScatterPlotWidgetDefinitionType: + default: scatterplot + description: Type of the scatter plot widget. + enum: + - scatterplot + example: scatterplot + type: string + x-enum-varnames: + - SCATTERPLOT + SankeyWidgetRequest: + description: Request definition for Sankey widget. + additionalProperties: false + properties: + query: + $ref: '#/components/schemas/SankeyRumQuery' + request_type: + $ref: '#/components/schemas/SankeyWidgetDefinitionType' + required: + - query + - request_type + type: object + SankeyWidgetDefinitionType: + default: sankey + description: Type of the Sankey widget. + enum: + - sankey + example: sankey + type: string + x-enum-varnames: + - SANKEY + ServiceMapWidgetDefinitionType: + default: servicemap + description: Type of the service map widget. + enum: + - servicemap + example: servicemap + type: string + x-enum-varnames: + - SERVICEMAP + WidgetServiceSummaryDisplayFormat: + description: Number of columns to display. + enum: + - one_column + - two_column + - three_column + type: string + x-enum-varnames: + - ONE_COLUMN + - TWO_COLUMN + - THREE_COLUMN + WidgetSizeFormat: + description: Size of the widget. + enum: + - small + - medium + - large + type: string + x-enum-varnames: + - SMALL + - MEDIUM + - LARGE + ServiceSummaryWidgetDefinitionType: + default: trace_service + description: Type of the service summary widget. + enum: + - trace_service + example: trace_service + type: string + x-enum-varnames: + - TRACE_SERVICE + SplitGraphVizSize: + description: Size of the individual graphs in the split. + enum: + - xs + - sm + - md + - lg + example: sm + type: string + x-enum-varnames: + - XS + - SM + - MD + - LG + SplitGraphSourceWidgetDefinition: + description: The original widget we are splitting on. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: List of bar chart widget requests. + example: + - q: system.load.1 + items: + $ref: '#/components/schemas/BarChartWidgetRequest' + maxItems: 1 + minItems: 1 + type: array + style: + $ref: '#/components/schemas/BarChartWidgetStyle' + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/BarChartWidgetDefinitionType' + view: + $ref: '#/components/schemas/GeomapWidgetDefinitionView' + autoscale: + description: Whether to use auto-scaling or not. + type: boolean + custom_unit: + description: Display a unit of your choice on the widget. + type: string + precision: + description: Number of decimals to show. If not defined, the widget uses the raw value. + format: int64 + type: integer + text_align: + $ref: '#/components/schemas/WidgetTextAlign' + timeseries_background: + $ref: '#/components/schemas/TimeseriesBackground' + color_by_groups: + description: List of groups used for colors. + items: + description: Group name. + type: string + type: array + xaxis: + $ref: '#/components/schemas/WidgetAxis' + yaxis: + $ref: '#/components/schemas/WidgetAxis' + hide_total: + description: Show the total value in this widget. + type: boolean + legend: + $ref: '#/components/schemas/SunburstWidgetLegend' + has_search_bar: + $ref: '#/components/schemas/TableWidgetHasSearchBar' + events: + deprecated: true + description: List of widget events. Deprecated - Use `overlay` request type instead. + items: + $ref: '#/components/schemas/WidgetEvent' + type: array + legend_columns: + description: Columns displayed in the legend. + items: + $ref: '#/components/schemas/TimeseriesWidgetLegendColumn' + type: array + legend_layout: + $ref: '#/components/schemas/TimeseriesWidgetLegendLayout' + legend_size: + $ref: '#/components/schemas/WidgetLegendSize' + markers: + description: List of markers. + items: + $ref: '#/components/schemas/WidgetMarker' + type: array + right_yaxis: + $ref: '#/components/schemas/WidgetAxis' + show_legend: + description: (screenboard only) Show the legend for this widget. + type: boolean + color_by: + $ref: '#/components/schemas/TreeMapColorBy' + group_by: + $ref: '#/components/schemas/TreeMapGroupBy' + size_by: + $ref: '#/components/schemas/TreeMapSizeBy' + required: + - type + - requests + - style + - view + type: object + SplitConfig: + description: Encapsulates all user choices about how to split a graph. + properties: + limit: + description: Maximum number of graphs to display in the widget. + example: 24 + format: int64 + maximum: 500 + minimum: 1 + type: integer + sort: + $ref: '#/components/schemas/SplitSort' + split_dimensions: + description: The dimension(s) on which to split the graph + example: + - one_graph_per: service + items: + $ref: '#/components/schemas/SplitDimension' + maxItems: 1 + minItems: 1 + type: array + static_splits: + description: Manual selection of tags making split graph widget static + items: + $ref: '#/components/schemas/SplitVectorEntry' + maxItems: 500 + type: array + required: + - split_dimensions + - limit + - sort + type: object + SplitGraphWidgetDefinitionType: + default: split_group + description: Type of the split graph widget + enum: + - split_group + example: split_group + type: string + x-enum-varnames: + - SPLIT_GROUP + SunburstWidgetLegend: + description: Configuration of the legend. + properties: + type: + $ref: '#/components/schemas/SunburstWidgetLegendTableType' + hide_percent: + description: Whether to hide the percentages of the groups. + type: boolean + hide_value: + description: Whether to hide the values of the groups. + type: boolean + required: + - type + type: object + SunburstWidgetRequest: + description: Request definition of sunburst widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: '#/components/schemas/WidgetSortBy' + style: + $ref: '#/components/schemas/WidgetStyle' + type: object + SunburstWidgetDefinitionType: + default: sunburst + description: Type of the Sunburst widget. + enum: + - sunburst + example: sunburst + type: string + x-enum-varnames: + - SUNBURST + TableWidgetHasSearchBar: + description: Controls the display of the search bar. + enum: + - always + - never + - auto + example: auto + type: string + x-enum-varnames: + - ALWAYS + - NEVER + - AUTO + TableWidgetRequest: + description: Updated table widget. + properties: + aggregator: + $ref: '#/components/schemas/WidgetAggregator' + alias: + description: The column name (defaults to the metric name). + type: string + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + apm_stats_query: + $ref: '#/components/schemas/ApmStatsQueryDefinition' + cell_display_mode: + description: A list of display modes for each table cell. + items: + $ref: '#/components/schemas/TableWidgetCellDisplayMode' + type: array + conditional_formats: + description: List of conditional formats. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + limit: + description: For metric queries, the number of lines to show in the table. Only one request should have this property. + format: int64 + type: integer + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + order: + $ref: '#/components/schemas/WidgetSort' + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Query definition. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: '#/components/schemas/WidgetSortBy' + text_formats: + description: List of text formats for columns produced by tags. + items: + $ref: '#/components/schemas/TableWidgetTextFormat' + type: array + type: object + TableWidgetDefinitionType: + default: query_table + description: Type of the table widget. + enum: + - query_table + example: query_table + type: string + x-enum-varnames: + - QUERY_TABLE + TimeseriesWidgetLegendColumn: + description: Legend column. + enum: + - value + - avg + - sum + - min + - max + type: string + x-enum-varnames: + - VALUE + - AVG + - SUM + - MIN + - MAX + TimeseriesWidgetLegendLayout: + description: Layout of the legend. + enum: + - auto + - horizontal + - vertical + type: string + x-enum-varnames: + - AUTO + - HORIZONTAL + - VERTICAL + TimeseriesWidgetRequest: + description: Updated timeseries widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + display_type: + $ref: '#/components/schemas/WidgetDisplayType' + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + metadata: + description: Used to define expression aliases. + items: + $ref: '#/components/schemas/TimeseriesWidgetExpressionAlias' + type: array + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + on_right_yaxis: + description: Whether or not to display a second y-axis on the right. + type: boolean + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + style: + $ref: '#/components/schemas/TimeseriesRequestStyle' + type: object + TimeseriesWidgetDefinitionType: + default: timeseries + description: Type of the timeseries widget. + enum: + - timeseries + example: timeseries + type: string + x-enum-varnames: + - TIMESERIES + ToplistWidgetRequest: + description: Updated top list widget. + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + conditional_formats: + description: List of conditional formats. + example: + - comparator: '>=' + palette: blue + value: 1 + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + minItems: 1 + type: array + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + deprecated: true + description: Widget query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + sort: + $ref: '#/components/schemas/WidgetSortBy' + style: + $ref: '#/components/schemas/WidgetRequestStyle' + type: object + ToplistWidgetStyle: + description: Style customization for a top list widget. + properties: + display: + $ref: '#/components/schemas/ToplistWidgetDisplay' + palette: + description: Color palette to apply to the widget. + type: string + scaling: + $ref: '#/components/schemas/ToplistWidgetScaling' + type: object + ToplistWidgetDefinitionType: + default: toplist + description: Type of the top list widget. + enum: + - toplist + example: toplist + type: string + x-enum-varnames: + - TOPLIST + TopologyMapWidgetDefinitionDataStreams: + additionalProperties: false + description: Topology map widget backed by the data streams data source. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: One Topology request. + items: + $ref: '#/components/schemas/TopologyRequestDataStreams' + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/TopologyMapWidgetDefinitionType' + required: + - type + - requests + type: object + TopologyMapWidgetDefinitionServiceMap: + additionalProperties: false + description: Topology map widget backed by the service map data source. + properties: + custom_links: + description: List of custom links. + items: + $ref: '#/components/schemas/WidgetCustomLink' + type: array + description: + description: The description of the widget. + type: string + requests: + description: One Topology request. + items: + $ref: '#/components/schemas/TopologyRequestServiceMap' + minItems: 1 + type: array + time: + $ref: '#/components/schemas/WidgetTime' + title: + description: Title of your widget. + type: string + title_align: + $ref: '#/components/schemas/WidgetTextAlign' + title_size: + description: Size of the title. + type: string + type: + $ref: '#/components/schemas/TopologyMapWidgetDefinitionType' + required: + - type + - requests + type: object + TreeMapColorBy: + default: user + deprecated: true + description: (deprecated) The attribute formerly used to determine color in the widget. + enum: + - user + example: user + type: string + x-enum-varnames: + - USER + TreeMapGroupBy: + deprecated: true + description: (deprecated) The attribute formerly used to group elements in the widget. + enum: + - user + - family + - process + example: user + type: string + x-enum-varnames: + - USER + - FAMILY + - PROCESS + TreeMapWidgetRequest: + description: An updated treemap widget. + properties: + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + q: + deprecated: true + description: The widget metrics query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + sort: + $ref: '#/components/schemas/WidgetSortBy' + style: + $ref: '#/components/schemas/WidgetRequestStyle' + type: object + TreeMapSizeBy: + deprecated: true + description: (deprecated) The attribute formerly used to determine size in the widget. + enum: + - pct_cpu + - pct_mem + example: pct_cpu + type: string + x-enum-varnames: + - PCT_CPU + - PCT_MEM + TreeMapWidgetDefinitionType: + default: treemap + description: Type of the treemap widget. + enum: + - treemap + example: treemap + type: string + x-enum-varnames: + - TREEMAP + WildcardWidgetRequest: + description: 'Request object for the wildcard widget. Each variant represents a distinct data-fetching pattern: scalar formulas, timeseries formulas, list streams, and histograms.' + properties: + formulas: + description: List of formulas that operate on queries. + items: + $ref: '#/components/schemas/WidgetFormula' + type: array + q: + deprecated: true + description: The widget metrics query. Deprecated - Use `queries` and `formulas` instead. + type: string + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + sort: + $ref: '#/components/schemas/WidgetSortBy' + style: + $ref: '#/components/schemas/WidgetRequestStyle' + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + audit_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + display_type: + $ref: '#/components/schemas/WidgetDisplayType' + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + metadata: + description: Used to define expression aliases. + items: + $ref: '#/components/schemas/TimeseriesWidgetExpressionAlias' + type: array + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + on_right_yaxis: + description: Whether or not to display a second y-axis on the right. + type: boolean + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + columns: + description: Widget columns. + example: + - field: timestamp + width: auto + - field: content + width: full + items: + $ref: '#/components/schemas/ListStreamColumn' + type: array + query: + $ref: '#/components/schemas/ListStreamQuery' + apm_stats_query: + $ref: '#/components/schemas/ApmStatsQueryDefinition' + request_type: + $ref: '#/components/schemas/WidgetHistogramRequestType' + description: Distribution of point values for distribution metrics. Renders a histogram of raw metric data points. + type: object + required: + - columns + - query + - response_format + WildcardWidgetSpecification: + description: Vega or Vega-Lite specification for custom visualization rendering. See https://vega.github.io/vega-lite/ for the full grammar reference. + properties: + contents: + description: The Vega or Vega-Lite JSON specification object. (opaque JSON object) + example: + $schema: https://vega.github.io/schema/vega-lite/v5.json + data: + name: table1 + description: A simple bar chart + encoding: + x: + field: env + sort: '-y' + type: nominal + 'y': + field: query1 + type: quantitative + mark: bar + type: string + type: + $ref: '#/components/schemas/WildcardWidgetSpecificationType' + required: + - type + - contents + type: object + WildcardWidgetDefinitionType: + default: wildcard + description: Type of the wildcard widget. + enum: + - wildcard + example: wildcard + type: string + x-enum-varnames: + - WILDCARD + NotebookCellResponseAttributes: + description: |- + The attributes of a notebook cell response. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, + `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) + example: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + properties: + definition: + $ref: '#/components/schemas/NotebookMarkdownCellDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookCellResourceType: + default: notebook_cells + description: Type of the Notebook Cell resource. + enum: + - notebook_cells + example: notebook_cells + type: string + x-enum-varnames: + - NOTEBOOK_CELLS + NotebookMetadataType: + description: Metadata type of the notebook. + enum: + - postmortem + - runbook + - investigation + - documentation + - report + example: investigation + nullable: true + type: string + x-enum-varnames: + - POSTMORTEM + - RUNBOOK + - INVESTIGATION + - DOCUMENTATION + - REPORT + NotebookTemplateVariableAvailableValuesQuery: + description: Query used to dynamically populate the list of available values for the template variable. + additionalProperties: false + properties: + data_source: + description: The data source for the query. Must be one of `logs`, `rum`, or `spans`. + example: logs + type: string + group_by: + description: Group-by fields for the query. + items: + $ref: '#/components/schemas/NotebookTemplateVariableAvailableValuesQueryGroupBy' + type: array + search: + $ref: '#/components/schemas/NotebookTemplateVariableAvailableValuesQuerySearch' + query: + description: The metrics query string. + example: avg:system.cpu.user{*} by {host} + type: string + required: + - data_source + - search + - group_by + - query + type: object + NotebookRelativeTime: + description: Relative timeframe. + example: + live_span: 1h + nullable: true + properties: + live_span: + $ref: '#/components/schemas/WidgetLiveSpanV1' + required: + - live_span + type: object + NotebookAbsoluteTime: + description: Absolute timeframe. + example: + end: '2021-02-24T20:18:28+00:00' + start: '2021-02-24T19:18:28+00:00' + properties: + end: + description: The end time. + example: '2021-02-24T20:18:28+00:00' + format: date-time + type: string + live: + description: Indicates whether the timeframe should be shifted to end at the current time. + type: boolean + start: + description: The start time. + example: '2021-02-24T19:18:28+00:00' + format: date-time + type: string + required: + - start + - end + type: object + NotebookCellCreateRequestAttributes: + description: |- + The attributes of a notebook cell in create cell request. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, + `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) + example: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + properties: + definition: + $ref: '#/components/schemas/NotebookMarkdownCellDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookCellUpdateRequest: + description: The description of a notebook cell update request. + properties: + attributes: + $ref: '#/components/schemas/NotebookCellUpdateRequestAttributes' + id: + description: Notebook cell ID. + example: abcd1234 + type: string + type: + $ref: '#/components/schemas/NotebookCellResourceType' + required: + - id + - type + - attributes + type: object + PowerpackInnerWidgets: + description: Powerpack group widget definition of individual widgets. + properties: + definition: + additionalProperties: {} + description: Information about widget. + example: + definition: + content: example + type: note + type: object + layout: + $ref: '#/components/schemas/PowerpackInnerWidgetLayout' + required: + - definition + type: object + OrganizationsType: + default: orgs + description: Organizations resource type. + enum: + - orgs + example: orgs + type: string + x-enum-varnames: + - ORGS + RolesType: + default: roles + description: Roles type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + CreateSnapshotTemplateVariable: + description: A template variable definition for snapshot rendering. + properties: + name: + description: The template variable name. + example: host + type: string + prefix: + description: The tag prefix associated with the template variable. For example, a prefix of `host` with a value of `web-server-1` scopes the snapshot to `host:web-server-1`. + example: host + type: string + values: + description: The list of scoped values for this template variable. + example: + - web-server-1 + - web-server-2 + items: + description: A single scoped value for the template variable. + type: string + type: array + required: + - name + - prefix + - values + type: object + WidgetLegacyLiveSpan: + additionalProperties: false + description: Wrapper for live span + properties: + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + live_span: + $ref: '#/components/schemas/WidgetLiveSpanV1' + type: object + WidgetNewLiveSpan: + description: Used for arbitrary live span times, such as 17 minutes or 6 hours. + properties: + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + type: + $ref: '#/components/schemas/WidgetNewLiveSpanType' + unit: + $ref: '#/components/schemas/WidgetLiveSpanUnit' + value: + description: Value of the time span. + example: 4 + format: int64 + minimum: 1 + type: integer + required: + - type + - value + - unit + type: object + WidgetNewFixedSpan: + description: Used for fixed span times, such as 'March 1 to March 7'. + properties: + from: + description: Start time in milliseconds since epoch. + example: 1712080128000 + format: int64 + minimum: 0 + type: integer + hide_incomplete_cost_data: + description: Whether to hide incomplete cost data in the widget. + type: boolean + to: + description: End time in milliseconds since epoch. + example: 1712083128000 + format: int64 + minimum: 0 + type: integer + type: + $ref: '#/components/schemas/WidgetNewFixedSpanType' + required: + - type + - from + - to + type: object + LogQueryDefinition: + description: The log query. + properties: + compute: + $ref: '#/components/schemas/LogsQueryCompute' + group_by: + description: List of tag prefixes to group by in the case of a cluster check. + items: + $ref: '#/components/schemas/LogQueryDefinitionGroupBy' + type: array + index: + description: A coma separated-list of index names. Use "*" query all indexes at once. [Multiple Indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) + example: days-3,days-7 + type: string + multi_compute: + description: This field is mutually exclusive with `compute`. + items: + $ref: '#/components/schemas/LogsQueryCompute' + type: array + search: + $ref: '#/components/schemas/LogQueryDefinitionSearch' + type: object + WidgetConditionalFormat: + description: Define a conditional format for the widget. + properties: + comparator: + $ref: '#/components/schemas/WidgetComparator' + custom_bg_color: + description: Color palette to apply to the background, same values available as palette. + type: string + custom_fg_color: + description: Color palette to apply to the foreground, same values available as palette. + type: string + hide_value: + description: True hides values. + type: boolean + image_url: + description: Displays an image as the background. + type: string + metric: + description: Metric from the request to correlate this conditional format with. + type: string + palette: + $ref: '#/components/schemas/WidgetPalette' + timeframe: + description: Defines the displayed timeframe. + type: string + value: + description: Value for the comparator. + example: 0 + format: double + type: number + required: + - comparator + - value + - palette + type: object + WidgetFormula: + description: Formula to be used in a widget query. + properties: + alias: + description: Expression alias. + type: string + cell_display_mode: + $ref: '#/components/schemas/TableWidgetCellDisplayMode' + cell_display_mode_options: + $ref: '#/components/schemas/WidgetFormulaCellDisplayModeOptions' + conditional_formats: + description: List of conditional formats. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + formula: + description: String expression built from queries, formulas, and functions. + example: func(a) + b + type: string + limit: + $ref: '#/components/schemas/WidgetFormulaLimit' + number_format: + $ref: '#/components/schemas/WidgetNumberFormat' + style: + $ref: '#/components/schemas/WidgetFormulaStyle' + required: + - formula + type: object + ProcessQueryDefinition: + description: The process query to use in the widget. + properties: + filter_by: + description: List of processes. + items: + description: Process name. + type: string + type: array + limit: + description: Max number of items in the filter list. + format: int64 + minimum: 0 + type: integer + metric: + description: Your chosen metric. + example: system.load.1 + type: string + search_by: + description: Your chosen search term. + type: string + required: + - metric + type: object + FormulaAndFunctionQueryDefinition: + description: A formula and function query. + example: + data_source: metrics + name: my_query + query: avg:system.cpu.user{*} + additional_query_filters: '*' + group_mode: overall + measure: good_events + slo_id: '12345678910' + slo_query_type: metric + properties: + aggregator: + $ref: '#/components/schemas/FormulaAndFunctionMetricAggregation' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionMetricDataSource' + name: + description: Name of the query for use in formulas. + example: my_query + type: string + query: + description: Metrics query definition. + example: avg:system.cpu.user{*} + type: string + semantic_mode: + $ref: '#/components/schemas/FormulaAndFunctionMetricSemanticMode' + compute: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryDefinitionCompute' + group_by: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupByConfig' + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + search: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryDefinitionSearch' + storage: + description: Option for storage location. Feature in Private Beta. + example: indexes + type: string + is_normalized_cpu: + description: Whether to normalize the CPU percentages. + type: boolean + limit: + description: Number of hits to return. + format: int64 + type: integer + metric: + description: Process metric name. + example: avg:system.cpu.user{*} + type: string + sort: + $ref: '#/components/schemas/QuerySortOrderV1' + tag_filters: + description: An array of tags to filter by. + items: + description: One of the tags to filter by. + type: string + type: array + text_filter: + description: Text to use as filter. + type: string + env: + description: APM environment. + example: staging + type: string + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: false + type: boolean + operation_name: + description: Name of operation on service. + example: cassandra.query + type: string + primary_tag_name: + description: The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + example: datacenter + type: string + primary_tag_value: + description: Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + example: staging + type: string + resource_name: + description: APM resource. + example: DELETE FROM foo WHERE baz = ? + type: string + service: + description: APM service. + example: cassandra + type: string + stat: + $ref: '#/components/schemas/FormulaAndFunctionApmDependencyStatName' + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: primary + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: 'A tag identifying a specific downstream entity (for example: peer.service, peer.db_instance).' + example: peer.service:my-service + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (e.g., env, primary_tag). + example: env:prod + type: string + resource_hash: + description: The hash of a specific resource to filter by. + example: abc123 + type: string + span_kind: + $ref: '#/components/schemas/FormulaAndFunctionApmMetricsSpanKind' + additional_query_filters: + description: Additional filters applied to the SLO query. + example: host:host_a,env:prod + type: string + group_mode: + $ref: '#/components/schemas/FormulaAndFunctionSLOGroupMode' + measure: + $ref: '#/components/schemas/FormulaAndFunctionSLOMeasure' + slo_id: + description: ID of an SLO to query measures. + example: '12345678910' + type: string + slo_query_type: + $ref: '#/components/schemas/FormulaAndFunctionSLOQueryType' + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFiltersV1' + required: + - data_source + - query + - name + - compute + - metric + - env + - stat + - operation_name + - resource_name + - service + - slo_id + - measure + - search + type: object + deprecated: true + FormulaAndFunctionResponseFormat: + description: Timeseries, scalar, or event list response. Event list response formats are supported by Geomap widgets. + enum: + - timeseries + - scalar + - event_list + example: timeseries + type: string + x-enum-varnames: + - TIMESERIES + - SCALAR + - EVENT_LIST + WidgetSortBy: + description: The controls for sorting the widget. + properties: + count: + description: The number of items to limit the widget to. + format: int64 + minimum: 0 + type: integer + order_by: + description: The array of items to sort the widget by in order. + items: + $ref: '#/components/schemas/WidgetSortOrderBy' + type: array + type: object + WidgetRequestStyle: + description: Define request widget style. + properties: + line_type: + $ref: '#/components/schemas/WidgetLineType' + line_width: + $ref: '#/components/schemas/WidgetLineWidth' + order_by: + $ref: '#/components/schemas/WidgetStyleOrderBy' + palette: + description: Color palette to apply to the widget. + type: string + type: object + BarChartWidgetDisplay: + description: Bar chart widget display options. + properties: + legend: + $ref: '#/components/schemas/BarChartWidgetLegend' + type: + $ref: '#/components/schemas/BarChartWidgetStackedType' + required: + - type + type: object + BarChartWidgetScaling: + description: Bar chart widget scaling definition. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + WidgetChangeType: + description: Show the absolute or the relative change. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + WidgetCompareTo: + description: Timeframe used for the change comparison. + enum: + - hour_before + - day_before + - week_before + - month_before + type: string + x-enum-varnames: + - HOUR_BEFORE + - DAY_BEFORE + - WEEK_BEFORE + - MONTH_BEFORE + WidgetOrderBy: + description: What to order by. + enum: + - change + - name + - present + - past + type: string + x-enum-varnames: + - CHANGE + - NAME + - PRESENT + - PAST + WidgetSort: + description: Widget sorting methods. + enum: + - asc + - desc + example: desc + type: string + x-enum-varnames: + - ASCENDING + - DESCENDING + RetentionQuery: + additionalProperties: false + description: Retention query definition. + properties: + compute: + $ref: '#/components/schemas/RetentionCompute' + data_source: + $ref: '#/components/schemas/RetentionDataSource' + filters: + $ref: '#/components/schemas/RetentionFilters' + group_by: + description: Group by configuration. + items: + $ref: '#/components/schemas/RetentionGroupBy' + description: A retention group by configuration. + type: array + name: + description: Name of the query. + example: retention_query + type: string + search: + $ref: '#/components/schemas/RetentionSearch' + required: + - data_source + - search + - compute + type: object + RetentionGridRequestType: + description: Request type for retention grid widget. + enum: + - retention_grid + example: retention_grid + type: string + x-enum-varnames: + - RETENTION_GRID + ApmStatsQueryDefinition: + description: The APM stats query for table and distributions widgets. + properties: + columns: + description: Column properties used by the front end for display. + items: + $ref: '#/components/schemas/ApmStatsQueryColumnType' + type: array + env: + description: Environment name. + example: prod + type: string + name: + description: Operation name associated with service. + example: rack.request + type: string + primary_tag: + description: The organization's host group name and value. + example: datacenter:* + type: string + resource: + description: Resource name. + example: CartsController + type: string + row_type: + $ref: '#/components/schemas/ApmStatsQueryRowType' + service: + description: Service name. + example: web-store + type: string + required: + - service + - env + - name + - primary_tag + - row_type + type: object + DistributionWidgetHistogramRequestQuery: + description: Query definition for Distribution Widget Histogram Request + example: + data_source: metrics + name: query1 + query: histogram:trace.Load{*} + properties: + aggregator: + $ref: '#/components/schemas/FormulaAndFunctionMetricAggregation' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionMetricDataSource' + name: + description: Name of the query for use in formulas. + example: my_query + type: string + query: + description: Metrics query definition. + example: avg:system.cpu.user{*} + type: string + semantic_mode: + $ref: '#/components/schemas/FormulaAndFunctionMetricSemanticMode' + compute: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryDefinitionCompute' + group_by: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupByConfig' + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + search: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryDefinitionSearch' + storage: + description: Option for storage location. Feature in Private Beta. + example: indexes + type: string + env: + description: APM environment. + example: staging + type: string + operation_name: + description: Name of operation on service. + example: cassandra.query + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: datacenter + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: us-east-az + type: string + resource_name: + description: APM resource name. + example: Admin::ProductsController#create + type: string + service: + description: APM service name. + example: web-store + type: string + stat: + $ref: '#/components/schemas/FormulaAndFunctionApmResourceStatName' + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: primary + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: 'A tag identifying a specific downstream entity (for example: peer.service, peer.db_instance).' + example: peer.service:my-service + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (e.g., env, primary_tag). + example: env:prod + type: string + resource_hash: + description: The hash of a specific resource to filter by. + example: abc123 + type: string + span_kind: + $ref: '#/components/schemas/FormulaAndFunctionApmMetricsSpanKind' + required: + - data_source + - query + - name + - compute + - env + - service + - stat + type: object + deprecated: true + WidgetHistogramRequestType: + description: Request type for distribution of point values for distribution metrics. Query space aggregator must be `histogram:` for points distributions. + enum: + - histogram + example: histogram + type: string + x-enum-varnames: + - HISTOGRAM + WidgetStyle: + description: Widget style definition. + properties: + palette: + description: Color palette to apply to the widget. + type: string + type: object + FunnelQuery: + description: Updated funnel widget. + properties: + data_source: + $ref: '#/components/schemas/FunnelSource' + query_string: + description: The widget query. + example: '@browser.name:Chrome' + type: string + steps: + description: List of funnel steps. + items: + $ref: '#/components/schemas/FunnelStep' + type: array + required: + - query_string + - data_source + - steps + type: object + FunnelRequestType: + description: Widget request type. + enum: + - funnel + example: funnel + type: string + x-enum-varnames: + - FUNNEL + FunnelComparisonDuration: + additionalProperties: false + description: Comparison time configuration for funnel widgets. + properties: + custom_timeframe: + $ref: '#/components/schemas/FunnelComparisonCustomTimeframe' + type: + $ref: '#/components/schemas/FunnelComparisonDurationType' + required: + - type + type: object + ProductAnalyticsFunnelQuery: + additionalProperties: false + description: User journey funnel query definition. + properties: + compute: + $ref: '#/components/schemas/ProductAnalyticsFunnelCompute' + data_source: + $ref: '#/components/schemas/ProductAnalyticsFunnelDataSource' + group_by: + description: Group by configuration. + items: + $ref: '#/components/schemas/ProductAnalyticsFunnelGroupBy' + description: A user journey funnel group by configuration. + type: array + search: + $ref: '#/components/schemas/UserJourneySearch' + subquery_id: + description: Subquery ID. + type: string + required: + - data_source + - search + type: object + ProductAnalyticsFunnelRequestType: + description: Request type for user journey funnel widget. + enum: + - user_journey_funnel + example: user_journey_funnel + type: string + x-enum-varnames: + - USER_JOURNEY_FUNNEL + ListStreamColumn: + description: Widget column. + example: + field: timestamp + width: auto + properties: + field: + description: Widget column field. + example: content + type: string + width: + $ref: '#/components/schemas/ListStreamColumnWidth' + required: + - width + - field + type: object + ListStreamQuery: + description: Updated list stream widget. + properties: + assignee_uuids: + description: Filter by assignee UUIDs. Usable only with `issue_stream`. + items: + description: Assignee UUID. + type: string + type: array + clustering_pattern_field_path: + description: Specifies the field for logs pattern clustering. Usable only with logs_pattern_stream. + example: message + type: string + compute: + description: Compute configuration for the List Stream Widget. Compute can be used only with the logs_transaction_stream (from 1 to 5 items) list stream source. + items: + $ref: '#/components/schemas/ListStreamComputeItems' + maxItems: 5 + minItems: 1 + type: array + data_source: + $ref: '#/components/schemas/ListStreamSource' + event_size: + $ref: '#/components/schemas/WidgetEventSize' + group_by: + description: Group by configuration for the List Stream Widget. Group by can be used only with logs_pattern_stream (up to 4 items) or logs_transaction_stream (one group by item is required) list stream source. + items: + $ref: '#/components/schemas/ListStreamGroupByItems' + maxItems: 4 + type: array + indexes: + description: List of indexes. + items: + description: Index. + type: string + type: array + persona: + $ref: '#/components/schemas/ListStreamIssuePersona' + query_string: + description: Widget query. + example: '@service:app' + type: string + sort: + $ref: '#/components/schemas/WidgetFieldSort' + states: + description: Filter by issue states. Usable only with `issue_stream`. + items: + $ref: '#/components/schemas/ListStreamIssueState' + type: array + storage: + description: Option for storage location. Feature in Private Beta. + example: indexes + type: string + suspected_causes: + description: Filter by suspected causes. Usable only with `issue_stream`. + items: + description: Suspected cause. + type: string + type: array + team_handles: + description: Filter by team handles. Usable only with `issue_stream`. + items: + description: Team handle. + type: string + type: array + version: + $ref: '#/components/schemas/ListStreamQueryVersion' + required: + - query_string + - data_source + type: object + GeomapWidgetRequestStyle: + description: The style to apply to the request for points layer. + example: + color_by: status + properties: + color_by: + description: The category to color the points by. + example: status + type: string + type: object + TableWidgetTextFormatRule: + description: Text format rules. + example: + match: + type: is + value: apple + replace: + type: all + with: vegetable + properties: + custom_bg_color: + description: Hex representation of the custom background color. Used with custom background palette option. + example: '#632ca6' + type: string + custom_fg_color: + description: Hex representation of the custom text color. Used with custom text palette option. + example: '#632ca6' + type: string + match: + $ref: '#/components/schemas/TableWidgetTextFormatMatch' + palette: + $ref: '#/components/schemas/TableWidgetTextFormatPalette' + replace: + $ref: '#/components/schemas/TableWidgetTextFormatReplace' + required: + - match + type: object + EventQueryDefinition: + description: The event query. + properties: + search: + description: The query being made on the event. + example: '' + type: string + tags_execution: + description: The execution method for multi-value filters. Can be either and or or. + example: '' + type: string + required: + - search + - tags_execution + type: object + FormulaAndFunctionMetricQueryDefinition: + description: A formula and functions metrics query. + example: + data_source: metrics + name: my_query + query: avg:system.cpu.user{*} + properties: + aggregator: + $ref: '#/components/schemas/FormulaAndFunctionMetricAggregation' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionMetricDataSource' + name: + description: Name of the query for use in formulas. + example: my_query + type: string + query: + description: Metrics query definition. + example: avg:system.cpu.user{*} + type: string + semantic_mode: + $ref: '#/components/schemas/FormulaAndFunctionMetricSemanticMode' + required: + - data_source + - query + - name + type: object + HostMapWidgetInfrastructureRequest: + description: |- + Infrastructure-backed request for the host map widget. Supports entity-based + visualization with metric query enrichments, tag-based filtering, flexible grouping, + and hierarchical views. + properties: + child: + $ref: '#/components/schemas/HostMapWidgetInfrastructureRequestLeaf' + description: |- + Optional child request for hierarchical visualization (for example, hosts containing + containers). Maximum one level of nesting. + conditional_formats: + description: List of conditional formatting rules applied to fill values. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + enrichments: + description: Metric or event queries joined to the entity set. Each formula specifies a visual dimension. + example: + - formulas: + - dimension: fill + formula: query1 + queries: + - data_source: metrics + name: query1 + query: avg:system.cpu.user{*} by {host} + response_format: scalar + items: + $ref: '#/components/schemas/HostMapWidgetScalarRequest' + type: array + filter: + description: Filter string for the entity set in tag format (for example, `env:prod`). + example: env:prod + type: string + group_by: + description: |- + Defines how entities are grouped into tiles. The ordering of entries implies + the grouping hierarchy. + items: + $ref: '#/components/schemas/HostMapWidgetGroupBy' + type: array + no_group_hosts: + description: Whether to hide entities that have no group assignment. + type: boolean + no_metric_hosts: + description: Whether to hide entities that have no enrichment data. + type: boolean + node_type: + $ref: '#/components/schemas/HostMapWidgetNodeType' + request_type: + $ref: '#/components/schemas/HostMapWidgetInfrastructureRequestRequestType' + style: + $ref: '#/components/schemas/HostMapWidgetInfrastructureStyle' + required: + - request_type + - node_type + - enrichments + type: object + HostMapWidgetScalarRequest: + description: |- + Scalar formula request for the infrastructure host map widget. Each formula specifies + which visual dimension it drives. + properties: + formulas: + description: List of formulas that operate on queries, each assigned to a visual dimension. + example: + - dimension: fill + formula: query1 + items: + $ref: '#/components/schemas/HostMapWidgetFormula' + type: array + queries: + description: List of queries that can be returned directly or used in formulas. + example: + - data_source: metrics + name: my_query + query: avg:system.cpu.user{*} + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/HostMapWidgetScalarRequestResponseFormat' + required: + - response_format + - queries + - formulas + type: object + HostMapRequest: + deprecated: true + description: 'Deprecated - Legacy metric-based host map request. Use the infrastructure-backed (`request_type: infrastructure_hostmap`) or DDSQL (`request_type: data_projection`) format instead.' + properties: + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + description: Query definition. + type: string + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + type: object + HostMapWidgetGroupBy: + description: Defines a grouping dimension for the infrastructure host map. + properties: + column: + description: Column name from the entity table (for example, `cloud_provider`, `tags`, `labels`). + example: tags + type: string + key: + description: Key within the column for nested attribute types (for example, `service` within `tags`). + example: service + type: string + required: + - column + type: object + HostMapWidgetNodeType: + description: Which type of infrastructure entity to visualize in the host map. + enum: + - host + - container + - pod + - cluster + example: host + type: string + x-enum-varnames: + - HOST + - CONTAINER + - POD + - CLUSTER + HostMapWidgetProjection: + description: 'Projection for the DDSQL host map request. Maps dataset columns to map dimensions: `node` identifies the entity, repeated `group` entries define the grouping hierarchy (outermost first), and `fill`/`size` drive the tile color and size.' + properties: + dimensions: + description: List of column-to-dimension mappings for the projection. + example: + - column: entity_id + dimension: node + - column: parent_id + dimension: group + - column: cpu_usage + dimension: fill + items: + $ref: '#/components/schemas/HostMapWidgetProjectionDimensionMapping' + type: array + type: + $ref: '#/components/schemas/HostMapWidgetProjectionType' + required: + - type + - dimensions + type: object + DatasetListQuery: + description: Query that lists the rows of a published dataset (a DDSQL query) without aggregation. + properties: + data_source: + $ref: '#/components/schemas/DatasetListQueryDataSourceType' + dataset_id: + description: ID of the published dataset to query. + example: abc-123-def + type: string + dataset_provider: + $ref: '#/components/schemas/PublishedDatasetProvider' + filter: + description: Filter applied to the dataset's rows, using events-style search syntax. + example: service:web-store + type: string + limit: + description: Maximum number of rows to return from the dataset query. + format: int64 + type: integer + sort: + $ref: '#/components/schemas/DatasetListQuerySort' + required: + - data_source + - dataset_provider + - dataset_id + type: object + HostMapWidgetDefinitionRequestType: + description: 'Identifies which host map request format the sibling fields on `HostMapWidgetDefinitionRequests` describe: an infrastructure-backed request or a DDSQL published-dataset request.' + enum: + - infrastructure_hostmap + - data_projection + example: infrastructure_hostmap + type: string + x-enum-varnames: + - INFRASTRUCTURE_HOSTMAP + - DATA_PROJECTION + HostMapWidgetInfrastructureStyle: + description: Style configuration for the infrastructure host map. + properties: + fill_max: + description: Maximum value for the fill color scale. Omit to use automatic scaling. + format: double + type: number + fill_min: + description: Minimum value for the fill color scale. Omit to use automatic scaling. + format: double + type: number + palette: + description: Color palette name or alias. + example: hostmap_blues + type: string + palette_flip: + description: Whether to invert the color palette. + type: boolean + type: object + ListStreamResponseFormat: + description: Widget response format. + enum: + - event_list + example: event_list + type: string + x-enum-varnames: + - EVENT_LIST + PowerpackTemplateVariableContents: + description: Powerpack template variable contents. + properties: + name: + description: The name of the variable. + example: host1 + type: string + prefix: + description: The tag prefix associated with the variable. + type: string + values: + description: One or many template variable values within the saved view, which will be unioned together using `OR` if more than one is specified. + example: + - my-host + - host1 + - host2 + items: + description: One or more possible values of the template variable. + minLength: 1 + type: string + type: array + required: + - name + - values + type: object + PointPlotWidgetLegendType: + description: Type of legend to show for the point plot widget. + enum: + - automatic + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - NONE + PointPlotProjection: + description: Projection configuration for the point plot widget. + properties: + dimensions: + description: List of dimension mappings for the projection. + items: + $ref: '#/components/schemas/PointPlotProjectionDimension' + type: array + extra_columns: + description: Additional columns to include in the projection. + items: + description: Column name. + type: string + type: array + type: + $ref: '#/components/schemas/PointPlotProjectionType' + required: + - type + - dimensions + type: object + DataProjectionQuery: + description: Query configuration for a data projection request. + properties: + data_source: + description: Data source for the query. + example: logs + type: string + indexes: + description: List of indexes to query. + items: + description: Index name. + type: string + type: array + query_string: + description: The query string to filter events. + example: service:web-store + type: string + storage: + description: Storage location for the query. + type: string + required: + - query_string + - data_source + type: object + DataProjectionRequestType: + description: Type of a data projection request. + enum: + - data_projection + example: data_projection + type: string + x-enum-varnames: + - DATA_PROJECTION + WidgetAggregator: + description: Aggregator used for the request. + enum: + - avg + - last + - max + - min + - sum + - percentile + type: string + x-enum-varnames: + - AVERAGE + - LAST + - MAXIMUM + - MINIMUM + - SUM + - PERCENTILE + QueryValueWidgetComparison: + description: A change indicator that compares the current value to a historical period. + properties: + directionality: + $ref: '#/components/schemas/QueryValueWidgetComparisonDirectionality' + description: Which direction of change is considered an improvement, determining the indicator color. + duration: + $ref: '#/components/schemas/ComparisonDuration' + type: + $ref: '#/components/schemas/QueryValueWidgetComparisonType' + required: + - duration + type: object + TimeseriesBackgroundType: + default: area + description: Timeseries is made using an area or bars. + enum: + - bars + - area + example: bars + type: string + x-enum-varnames: + - BARS + - AREA + RetentionCurveRequestType: + description: Request type for retention curve widget. + enum: + - retention_curve + example: retention_curve + type: string + x-enum-varnames: + - RETENTION_CURVE + RetentionCurveStyle: + additionalProperties: false + description: Style configuration for retention curve. + properties: + palette: + description: Color palette for the retention curve. + example: dog_classic + type: string + type: object + SLOListWidgetQuery: + description: Updated SLO List widget. + properties: + limit: + default: 100 + description: Maximum number of results to display in the table. + format: int64 + maximum: 100 + minimum: 1 + type: integer + query_string: + description: Widget query. + example: env:prod AND service:my-app + type: string + sort: + description: Options for sorting results. + items: + $ref: '#/components/schemas/WidgetFieldSort' + type: array + required: + - query_string + type: object + SLOListWidgetRequestType: + description: Widget request type. + enum: + - slo_list + example: slo_list + type: string + x-enum-varnames: + - SLO_LIST + ScatterplotTableRequest: + description: Scatterplot request containing formulas and functions. + properties: + formulas: + description: List of Scatterplot formulas that operate on queries. + items: + $ref: '#/components/schemas/ScatterplotWidgetFormula' + type: array + queries: + description: List of queries that can be returned directly or used in formulas. + items: + $ref: '#/components/schemas/FormulaAndFunctionQueryDefinition' + type: array + response_format: + $ref: '#/components/schemas/FormulaAndFunctionResponseFormat' + type: object + ScatterPlotRequest: + description: Updated scatter plot. + properties: + aggregator: + $ref: '#/components/schemas/ScatterplotWidgetAggregator' + apm_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + event_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + log_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + network_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + process_query: + $ref: '#/components/schemas/ProcessQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + profile_metrics_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + q: + description: Query definition. + type: string + rum_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + security_query: + $ref: '#/components/schemas/LogQueryDefinition' + deprecated: true + description: Deprecated - Use `queries` and `formulas` instead. + type: object + SankeyRumRequest: + additionalProperties: false + description: Sankey widget request for Product Analytics or RUM data source. + properties: + query: + $ref: '#/components/schemas/SankeyRumQuery' + request_type: + $ref: '#/components/schemas/SankeyWidgetDefinitionType' + required: + - query + - request_type + type: object + SankeyNetworkRequest: + additionalProperties: false + description: Sankey widget request for network data source. + properties: + query: + $ref: '#/components/schemas/SankeyNetworkQuery' + request_type: + $ref: '#/components/schemas/SankeyNetworkRequestType' + required: + - query + - request_type + type: object + SplitSort: + description: Controls the order in which graphs appear in the split. + properties: + compute: + $ref: '#/components/schemas/SplitConfigSortCompute' + order: + $ref: '#/components/schemas/WidgetSort' + required: + - order + type: object + SplitDimension: + description: The property by which the graph splits + example: + one_graph_per: service + properties: + one_graph_per: + description: The system interprets this attribute differently depending on the data source of the query being split. For metrics, it's a tag. For the events platform, it's an attribute or tag. + example: service + type: string + required: + - one_graph_per + type: object + SplitVectorEntry: + description: The widget displays one graph for each entry in this parameter. + example: + - tag_key: demo + tag_values: + - env + items: + $ref: '#/components/schemas/SplitVectorEntryItem' + minItems: 1 + type: array + SunburstWidgetLegendTable: + description: Configuration of table-based legend. + properties: + type: + $ref: '#/components/schemas/SunburstWidgetLegendTableType' + required: + - type + type: object + SunburstWidgetLegendInlineAutomatic: + description: Configuration of inline or automatic legends. + properties: + hide_percent: + description: Whether to hide the percentages of the groups. + type: boolean + hide_value: + description: Whether to hide the values of the groups. + type: boolean + type: + $ref: '#/components/schemas/SunburstWidgetLegendInlineAutomaticType' + required: + - type + type: object + TableWidgetCellDisplayMode: + description: Define a display mode for the table cell. + enum: + - number + - bar + - trend + example: number + type: string + x-enum-varnames: + - NUMBER + - BAR + - TREND + TableWidgetTextFormat: + description: Text format rules for a tag-based column within a table widget. + example: + - match: + type: is + value: fruit + replace: + type: all + with: vegetable + - match: + type: is + value: cake + palette: white_on_green + items: + $ref: '#/components/schemas/TableWidgetTextFormatRule' + minItems: 1 + type: array + WidgetDisplayType: + description: Type of display to use for the request. + enum: + - area + - bars + - line + - overlay + type: string + x-enum-varnames: + - AREA + - BARS + - LINE + - OVERLAY + TimeseriesWidgetExpressionAlias: + description: Define an expression alias. + properties: + alias_name: + description: Expression alias. + type: string + expression: + description: Expression name. + example: '' + type: string + required: + - expression + type: object + TimeseriesRequestStyle: + description: Define request widget style for timeseries widgets. + properties: + has_value_labels: + description: If true, the value is displayed as a label relative to the data point. + type: boolean + line_type: + $ref: '#/components/schemas/WidgetLineType' + line_width: + $ref: '#/components/schemas/WidgetLineWidth' + order_by: + $ref: '#/components/schemas/WidgetStyleOrderBy' + palette: + description: Color palette to apply to the widget. + type: string + type: object + ToplistWidgetDisplay: + description: Top list widget display options. + properties: + legend: + $ref: '#/components/schemas/ToplistWidgetLegend' + type: + $ref: '#/components/schemas/ToplistWidgetStackedType' + required: + - type + type: object + ToplistWidgetScaling: + description: Top list widget scaling definition. + enum: + - absolute + - relative + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + TopologyRequestDataStreams: + description: Request that returns nodes and edges from the data streams data source. + properties: + query: + $ref: '#/components/schemas/TopologyQueryDataStreams' + request_type: + $ref: '#/components/schemas/TopologyRequestType' + type: object + TopologyMapWidgetDefinitionType: + default: topology_map + description: Type of the topology map widget. + enum: + - topology_map + example: topology_map + type: string + x-enum-varnames: + - TOPOLOGY_MAP + TopologyRequestServiceMap: + description: Request that returns nodes and edges from the service map data source. + properties: + query: + $ref: '#/components/schemas/TopologyQueryServiceMap' + request_type: + $ref: '#/components/schemas/TopologyRequestType' + type: object + WildcardWidgetSpecificationType: + description: Type of specification used by the wildcard widget. + enum: + - vega + - vega-lite + example: vega-lite + type: string + x-enum-varnames: + - VEGA + - VEGA_LITE + NotebookMarkdownCellAttributes: + description: The attributes of a notebook `markdown` cell. + properties: + definition: + $ref: '#/components/schemas/NotebookMarkdownCellDefinition' + required: + - definition + type: object + NotebookTimeseriesCellAttributes: + description: The attributes of a notebook `timeseries` cell. + properties: + definition: + $ref: '#/components/schemas/TimeseriesWidgetDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookToplistCellAttributes: + description: The attributes of a notebook `toplist` cell. + properties: + definition: + $ref: '#/components/schemas/ToplistWidgetDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookHeatMapCellAttributes: + description: The attributes of a notebook `heatmap` cell. + properties: + definition: + $ref: '#/components/schemas/HeatMapWidgetDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookDistributionCellAttributes: + description: The attributes of a notebook `distribution` cell. + properties: + definition: + $ref: '#/components/schemas/DistributionWidgetDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookLogStreamCellAttributes: + description: The attributes of a notebook `log_stream` cell. + properties: + definition: + $ref: '#/components/schemas/LogStreamWidgetDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + NotebookTemplateVariableAvailableValuesQueryLogRumSpans: + additionalProperties: false + description: Available values query for logs, RUM, or spans data sources. + properties: + data_source: + description: The data source for the query. Must be one of `logs`, `rum`, or `spans`. + example: logs + type: string + group_by: + description: Group-by fields for the query. + items: + $ref: '#/components/schemas/NotebookTemplateVariableAvailableValuesQueryGroupBy' + type: array + search: + $ref: '#/components/schemas/NotebookTemplateVariableAvailableValuesQuerySearch' + required: + - data_source + - search + - group_by + type: object + NotebookTemplateVariableAvailableValuesQueryMetrics: + additionalProperties: false + description: Available values query for the metrics data source. + properties: + data_source: + description: The data source for the query. Must be `metrics`. + example: metrics + type: string + query: + description: The metrics query string. + example: avg:system.cpu.user{*} by {host} + type: string + required: + - data_source + - query + type: object + WidgetLiveSpanV1: + description: The available timeframes depend on the widget you are using. + enum: + - 1m + - 5m + - 10m + - 15m + - 30m + - 1h + - 4h + - 1d + - 2d + - 1w + - 1mo + - 3mo + - 6mo + - week_to_date + - month_to_date + - 1y + - alert + example: 5m + type: string + x-enum-varnames: + - PAST_ONE_MINUTE + - PAST_FIVE_MINUTES + - PAST_TEN_MINUTES + - PAST_FIFTEEN_MINUTES + - PAST_THIRTY_MINUTES + - PAST_ONE_HOUR + - PAST_FOUR_HOURS + - PAST_ONE_DAY + - PAST_TWO_DAYS + - PAST_ONE_WEEK + - PAST_ONE_MONTH + - PAST_THREE_MONTHS + - PAST_SIX_MONTHS + - WEEK_TO_DATE + - MONTH_TO_DATE + - PAST_ONE_YEAR + - ALERT + NotebookCellUpdateRequestAttributes: + description: |- + The attributes of a notebook cell in update cell request. Valid cell types are `markdown`, `timeseries`, `toplist`, `heatmap`, `distribution`, + `log_stream`. [More information on each graph visualization type.](https://docs.datadoghq.com/dashboards/widgets/) + example: + definition: + requests: + - display_type: line + q: avg:system.load.1{*} + style: + line_type: solid + line_width: normal + palette: dog_classic + show_legend: true + type: timeseries + yaxis: + scale: linear + graph_size: m + split_by: + keys: [] + tags: [] + time: null + properties: + definition: + $ref: '#/components/schemas/NotebookMarkdownCellDefinition' + graph_size: + $ref: '#/components/schemas/NotebookGraphSize' + split_by: + $ref: '#/components/schemas/NotebookSplitBy' + time: + $ref: '#/components/schemas/NotebookCellTime' + required: + - definition + type: object + PowerpackInnerWidgetLayout: + description: Powerpack inner widget layout. + properties: + height: + description: The height of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + width: + description: The width of the widget. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + x: + description: The position of the widget on the x (horizontal) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + 'y': + description: The position of the widget on the y (vertical) axis. Should be a non-negative integer. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - x + - 'y' + - width + - height + type: object + WidgetNewLiveSpanType: + description: Type "live" denotes a live span in the new format. + enum: + - live + example: live + type: string + x-enum-varnames: + - LIVE + WidgetNewFixedSpanType: + description: Type "fixed" denotes a fixed span. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + LogsQueryCompute: + description: Define computation for a log query. + properties: + aggregation: + description: The aggregation method. + example: avg + type: string + facet: + description: Facet name. + example: '@duration' + type: string + interval: + description: Define a time interval in seconds. + example: 5000 + format: int64 + type: integer + required: + - aggregation + type: object + LogQueryDefinitionGroupBy: + description: Defined items in the group. + properties: + facet: + description: Facet name. + example: resource_name + type: string + limit: + description: Maximum number of items in the group. + example: 50 + format: int64 + type: integer + sort: + $ref: '#/components/schemas/LogQueryDefinitionGroupBySort' + required: + - facet + type: object + LogQueryDefinitionSearch: + description: The query being made on the logs. + properties: + query: + description: Search value to apply. + example: '' + type: string + required: + - query + type: object + WidgetComparator: + description: Comparator to apply. + enum: + - '=' + - '>' + - '>=' + - < + - <= + example: '>' + type: string + x-enum-varnames: + - EQUAL_TO + - GREATER_THAN + - GREATER_THAN_OR_EQUAL_TO + - LESS_THAN + - LESS_THAN_OR_EQUAL_TO + WidgetPalette: + description: Color palette to apply. + enum: + - blue + - custom_bg + - custom_image + - custom_text + - gray_on_white + - grey + - green + - orange + - red + - red_on_white + - white_on_gray + - white_on_green + - green_on_white + - white_on_red + - white_on_yellow + - yellow_on_white + - black_on_light_yellow + - black_on_light_green + - black_on_light_red + example: blue + type: string + x-enum-varnames: + - BLUE + - CUSTOM_BACKGROUND + - CUSTOM_IMAGE + - CUSTOM_TEXT + - GRAY_ON_WHITE + - GREY + - GREEN + - ORANGE + - RED + - RED_ON_WHITE + - WHITE_ON_GRAY + - WHITE_ON_GREEN + - GREEN_ON_WHITE + - WHITE_ON_RED + - WHITE_ON_YELLOW + - YELLOW_ON_WHITE + - BLACK_ON_LIGHT_YELLOW + - BLACK_ON_LIGHT_GREEN + - BLACK_ON_LIGHT_RED + WidgetFormulaCellDisplayModeOptions: + description: Cell display mode options for the widget formula. (only if `cell_display_mode` is set to `trend`). + properties: + trend_type: + $ref: '#/components/schemas/WidgetFormulaCellDisplayModeOptionsTrendType' + y_scale: + $ref: '#/components/schemas/WidgetFormulaCellDisplayModeOptionsYScale' + type: object + WidgetFormulaLimit: + description: Options for limiting results returned. + properties: + count: + description: Number of results to return. + format: int64 + type: integer + order: + $ref: '#/components/schemas/QuerySortOrderV1' + type: object + WidgetNumberFormat: + description: Number format options for the widget. + properties: + unit: + $ref: '#/components/schemas/NumberFormatUnit' + unit_scale: + $ref: '#/components/schemas/NumberFormatUnitScale' + type: object + WidgetFormulaStyle: + description: Styling options for widget formulas. + properties: + palette: + description: The color palette used to display the formula. A guide to the available color palettes can be found at https://docs.datadoghq.com/dashboards/guide/widget_colors + example: classic + type: string + palette_index: + description: Index specifying which color to use within the palette. + example: 1 + format: int64 + type: integer + type: object + FormulaAndFunctionEventQueryDefinition: + description: A formula and functions events query. + properties: + compute: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryDefinitionCompute' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionEventsDataSource' + group_by: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupByConfig' + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: query_errors + type: string + search: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryDefinitionSearch' + storage: + description: Option for storage location. Feature in Private Beta. + example: indexes + type: string + required: + - data_source + - compute + - name + type: object + FormulaAndFunctionProcessQueryDefinition: + description: Process query using formulas and functions. + properties: + aggregator: + $ref: '#/components/schemas/FormulaAndFunctionMetricAggregation' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionProcessQueryDataSource' + is_normalized_cpu: + description: Whether to normalize the CPU percentages. + type: boolean + limit: + description: Number of hits to return. + format: int64 + type: integer + metric: + description: Process metric name. + example: avg:system.cpu.user{*} + type: string + name: + description: Name of query for use in formulas. + example: query_errors + type: string + sort: + $ref: '#/components/schemas/QuerySortOrderV1' + tag_filters: + description: An array of tags to filter by. + items: + description: One of the tags to filter by. + type: string + type: array + text_filter: + description: Text to use as filter. + type: string + required: + - data_source + - metric + - name + type: object + FormulaAndFunctionApmDependencyStatsQueryDefinition: + description: A formula and functions APM dependency stats query. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionApmDependencyStatsDataSource' + env: + description: APM environment. + example: staging + type: string + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: false + type: boolean + name: + description: Name of query to use in formulas. + example: query_errors + type: string + operation_name: + description: Name of operation on service. + example: cassandra.query + type: string + primary_tag_name: + description: The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + example: datacenter + type: string + primary_tag_value: + description: Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + example: staging + type: string + resource_name: + description: APM resource. + example: DELETE FROM foo WHERE baz = ? + type: string + service: + description: APM service. + example: cassandra + type: string + stat: + $ref: '#/components/schemas/FormulaAndFunctionApmDependencyStatName' + required: + - data_source + - env + - stat + - operation_name + - resource_name + - service + - name + type: object + FormulaAndFunctionApmResourceStatsQueryDefinition: + deprecated: true + description: APM resource stats query using formulas and functions. Deprecated - Use `apm_metrics` query type instead. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionApmResourceStatsDataSource' + env: + description: APM environment. + example: staging + type: string + group_by: + description: Array of fields to group results by. + items: + description: Field to group results by. + example: resource_name + type: string + type: array + name: + description: Name of this query to use in formulas. + example: query_errors + type: string + operation_name: + description: Name of operation on service. + example: cassandra.query + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: datacenter + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: us-east-az + type: string + resource_name: + description: APM resource name. + example: Admin::ProductsController#create + type: string + service: + description: APM service name. + example: web-store + type: string + stat: + $ref: '#/components/schemas/FormulaAndFunctionApmResourceStatName' + required: + - data_source + - env + - name + - service + - stat + type: object + FormulaAndFunctionApmMetricsQueryDefinition: + description: A formula and functions APM metrics query. + properties: + data_source: + $ref: '#/components/schemas/FormulaAndFunctionApmMetricsDataSource' + group_by: + description: Optional fields to group the query results by. items: - $ref: '#/components/schemas/DashboardListItemRequest' + description: A field to group results by. + example: resource_name + type: string + type: array + name: + description: Name of this query to use in formulas. + example: query_errors + type: string + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: primary + type: string + operation_name: + description: Name of operation on service. If not provided, the primary operation name is used. + example: web.request + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: 'A tag identifying a specific downstream entity (for example: peer.service, peer.db_instance).' + example: peer.service:my-service + type: string type: array + query_filter: + description: Additional filters for the query using metrics query syntax (e.g., env, primary_tag). + example: env:prod + type: string + resource_hash: + description: The hash of a specific resource to filter by. + example: abc123 + type: string + resource_name: + description: The full name of a specific resource to filter by. + example: GET /api/v1/users + type: string + service: + description: APM service name. + example: web-store + type: string + span_kind: + $ref: '#/components/schemas/FormulaAndFunctionApmMetricsSpanKind' + stat: + $ref: '#/components/schemas/FormulaAndFunctionApmMetricStatName' + required: + - data_source + - name + - stat type: object - DashboardListDeleteItemsResponse: - description: Response containing a list of deleted dashboards. + FormulaAndFunctionSLOQueryDefinition: + description: A formula and functions metrics query. + example: + additional_query_filters: '*' + data_source: slo + group_mode: overall + measure: good_events + name: my_slo + slo_id: '12345678910' + slo_query_type: metric properties: - deleted_dashboards_from_list: - description: List of dashboards deleted from the dashboard list. + additional_query_filters: + description: Additional filters applied to the SLO query. + example: host:host_a,env:prod + type: string + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionSLODataSource' + group_mode: + $ref: '#/components/schemas/FormulaAndFunctionSLOGroupMode' + measure: + $ref: '#/components/schemas/FormulaAndFunctionSLOMeasure' + name: + description: Name of the query for use in formulas. + example: my_slo + type: string + slo_id: + description: ID of an SLO to query measures. + example: '12345678910' + type: string + slo_query_type: + $ref: '#/components/schemas/FormulaAndFunctionSLOQueryType' + required: + - data_source + - slo_id + - measure + type: object + FormulaAndFunctionCloudCostQueryDefinition: + description: A formula and functions Cloud Cost query. + example: + data_source: cloud_cost + name: query1 + query: sum:aws.cost.amortized{*} + properties: + aggregator: + $ref: '#/components/schemas/WidgetAggregator' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionCloudCostDataSource' + name: + description: Name of the query for use in formulas. + example: my_query + type: string + query: + description: Query for Cloud Cost data. + example: '' + type: string + required: + - data_source + - query + - name + type: object + FormulaAndFunctionProductAnalyticsExtendedQueryDefinition: + description: A formula and functions Product Analytics Extended query for advanced analytics features. + properties: + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFiltersV1' + compute: + $ref: '#/components/schemas/ProductAnalyticsExtendedCompute' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionProductAnalyticsExtendedDataSource' + group_by: + description: Group by configuration. items: - $ref: '#/components/schemas/DashboardListItemResponse' + $ref: '#/components/schemas/ProductAnalyticsExtendedGroupBy' + description: A Product Analytics Extended group by configuration. + type: array + indexes: + description: Event indexes to query. + example: + - '*' + items: + $ref: '#/components/schemas/FormulaAndFunctionProductAnalyticsExtendedQueryDefinitionIndexesItems' type: array + name: + description: Name of the query for use in formulas. + example: query1 + type: string + query: + $ref: '#/components/schemas/ProductAnalyticsBaseQueryV1' + required: + - data_source + - name + - query + - compute type: object - APIErrorResponse: - description: API error response. + FormulaAndFunctionUserJourneyQueryDefinition: + description: A formula and functions User Journey query for defining funnel, timeseries, and scalar visualizations over journey data. properties: - errors: - description: A list of errors. - example: - - Bad Request + compute: + $ref: '#/components/schemas/UserJourneyFormulaCompute' + data_source: + $ref: '#/components/schemas/ProductAnalyticsFunnelDataSource' + group_by: + description: Group by configuration. items: - description: A list of items. - example: Bad Request - type: string + $ref: '#/components/schemas/UserJourneyFormulaGroupBy' + description: A User Journey group by configuration. type: array + name: + description: Name of the query for use in formulas. + example: query1 + type: string + search: + $ref: '#/components/schemas/UserJourneySearch' required: - - errors + - data_source + - name + - search + - compute type: object - DashboardListItems: - description: Dashboards within a list. + FormulaAndFunctionRetentionQueryDefinition: + description: A formula and functions Retention query for defining timeseries and scalar visualizations. properties: - dashboards: - description: List of dashboards in the dashboard list. - example: [] + compute: + $ref: '#/components/schemas/RetentionCompute' + data_source: + $ref: '#/components/schemas/RetentionDataSource' + group_by: + description: Group by configuration. items: - $ref: '#/components/schemas/DashboardListItem' + $ref: '#/components/schemas/RetentionGroupBy' + description: A Retention group by configuration. type: array - total: - description: Number of dashboards in the dashboard list. + name: + description: Name of the query for use in formulas. + example: query1 + type: string + search: + $ref: '#/components/schemas/RetentionSearch' + required: + - data_source + - name + - search + - compute + type: object + WidgetSortOrderBy: + description: The item to sort the widget by. + properties: + index: + description: The index of the formula to sort by. + example: 0 format: int64 - readOnly: true + minimum: 0 type: integer + order: + $ref: '#/components/schemas/WidgetSort' + type: + $ref: '#/components/schemas/FormulaType' + name: + description: The name of the group. + example: group_name + type: string required: - - dashboards + - type + - index + - order + - name type: object - DashboardListAddItemsRequest: - description: Request containing a list of dashboards to add. + WidgetLineType: + description: Type of lines displayed. + enum: + - dashed + - dotted + - solid + type: string + x-enum-varnames: + - DASHED + - DOTTED + - SOLID + WidgetLineWidth: + description: Width of line displayed. + enum: + - normal + - thick + - thin + type: string + x-enum-varnames: + - NORMAL + - THICK + - THIN + WidgetStyleOrderBy: + description: |- + How to order series in timeseries visualizations. + - `tags`: Order series alphabetically by tag name (default behavior) + - `values`: Order series by their current metric values (typically descending) + enum: + - tags + - values + type: string + x-enum-varnames: + - TAGS + - VALUES + BarChartWidgetStacked: + description: Bar chart widget stacked display options. properties: - dashboards: - description: List of dashboards to add the dashboard list. + legend: + $ref: '#/components/schemas/BarChartWidgetLegend' + type: + $ref: '#/components/schemas/BarChartWidgetStackedType' + required: + - type + type: object + BarChartWidgetFlat: + description: Bar chart widget flat display. + properties: + type: + $ref: '#/components/schemas/BarChartWidgetFlatType' + required: + - type + type: object + RetentionCompute: + additionalProperties: false + description: Compute configuration for retention queries. + properties: + aggregation: + $ref: '#/components/schemas/EventsAggregationV1' + metric: + $ref: '#/components/schemas/RetentionComputeMetric' + required: + - aggregation + - metric + type: object + RetentionDataSource: + description: Data source for retention queries. + enum: + - product_analytics_retention + example: product_analytics_retention + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_RETENTION + RetentionFilters: + additionalProperties: false + description: Filters for retention queries. + properties: + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFiltersV1' + string_filter: + description: String filter. + example: '@session.type:user' + type: string + type: object + RetentionGroupBy: + additionalProperties: false + description: Group by configuration for retention queries. + properties: + facet: + description: Facet to group by. + example: '@geo.country' + type: string + limit: + description: Maximum number of groups. + example: 10 + format: int64 + type: integer + should_exclude_missing: + description: Whether to exclude missing values. + example: false + type: boolean + sort: + $ref: '#/components/schemas/RetentionGroupBySort' + source: + description: Source field. + example: '@geo.country' + type: string + target: + $ref: '#/components/schemas/RetentionGroupByTarget' + required: + - target + - facet + type: object + RetentionSearch: + additionalProperties: false + description: Search configuration for retention queries. + properties: + cohort_criteria: + $ref: '#/components/schemas/RetentionCohortCriteria' + filters: + $ref: '#/components/schemas/RetentionFilters' + retention_entity: + $ref: '#/components/schemas/RetentionEntity' + return_condition: + $ref: '#/components/schemas/RetentionReturnCondition' + return_criteria: + $ref: '#/components/schemas/RetentionReturnCriteria' + required: + - cohort_criteria + - retention_entity + - return_condition + type: object + ApmStatsQueryColumnType: + description: Column properties. + properties: + alias: + description: A user-assigned alias for the column. + example: Requests + type: string + cell_display_mode: + $ref: '#/components/schemas/TableWidgetCellDisplayMode' + name: + description: Column name. + example: Reqs + type: string + order: + $ref: '#/components/schemas/WidgetSort' + required: + - name + type: object + ApmStatsQueryRowType: + description: The level of detail for the request. + enum: + - service + - resource + - span + example: service + type: string + x-enum-varnames: + - SERVICE + - RESOURCE + - SPAN + FunnelSource: + default: rum + description: Source from which to query items to display in the funnel. + enum: + - rum + example: rum + type: string + x-enum-varnames: + - RUM + FunnelStep: + description: The funnel step. + properties: + facet: + description: The facet of the step. + example: '@view.name' + type: string + value: + description: The value of the step. + example: /apm/home + type: string + required: + - facet + - value + type: object + FunnelComparisonCustomTimeframe: + additionalProperties: false + description: Custom timeframe for funnel comparison. + properties: + from: + description: Start of the custom timeframe. + example: 0 + format: double + type: number + to: + description: End of the custom timeframe. + example: 0 + format: double + type: number + required: + - from + - to + type: object + FunnelComparisonDurationType: + description: Type of comparison duration. + enum: + - previous_timeframe + - custom_timeframe + - previous_day + - previous_week + - previous_month + example: previous_timeframe + type: string + x-enum-varnames: + - PREVIOUS_TIMEFRAME + - CUSTOM_TIMEFRAME + - PREVIOUS_DAY + - PREVIOUS_WEEK + - PREVIOUS_MONTH + ProductAnalyticsFunnelCompute: + additionalProperties: false + description: Compute configuration for user journey funnel. + properties: + aggregation: + $ref: '#/components/schemas/ProductAnalyticsFunnelComputeAggregation' + metric: + $ref: '#/components/schemas/ProductAnalyticsFunnelComputeMetric' + required: + - aggregation + - metric + type: object + ProductAnalyticsFunnelDataSource: + description: Data source for user journey funnel queries. + enum: + - product_analytics_journey + example: product_analytics_journey + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_JOURNEY + ProductAnalyticsFunnelGroupBy: + description: Group by configuration for user journey funnel. + properties: + facet: + description: Facet to group by. + example: '@usr.email' + type: string + limit: + description: Maximum number of groups. + format: int64 + type: integer + should_exclude_missing: + description: Whether to exclude missing values. + type: boolean + sort: + $ref: '#/components/schemas/ProductAnalyticsFunnelGroupBySort' + target: + $ref: '#/components/schemas/UserJourneySearchTarget' + required: + - facet + type: object + UserJourneySearch: + additionalProperties: false + description: User journey search configuration. + properties: + expression: + description: Expression string. + example: node_0 -> node_1 + type: string + filters: + $ref: '#/components/schemas/UserJourneySearchFilters' + join_keys: + $ref: '#/components/schemas/UserJourneyJoinKeys' + node_objects: + additionalProperties: + $ref: '#/components/schemas/ProductAnalyticsBaseQueryV1' + description: Node objects mapping. + type: object + step_aliases: + additionalProperties: + type: string + description: Step aliases mapping. + type: object + required: + - node_objects + - expression + type: object + ListStreamColumnWidth: + description: Widget column width. + enum: + - auto + - compact + - full + example: compact + type: string + x-enum-varnames: + - AUTO + - COMPACT + - FULL + ListStreamComputeItems: + description: List of facets and aggregations which to compute. + properties: + aggregation: + $ref: '#/components/schemas/ListStreamComputeAggregation' + facet: + description: Facet name. + example: resource_name + type: string + required: + - aggregation + type: object + ListStreamSource: + default: logs_stream + description: Source from which to query items to display in the stream. apm_issue_stream, rum_issue_stream, and logs_issue_stream are deprecated. Use issue_stream instead. + enum: + - logs_stream + - audit_stream + - ci_pipeline_stream + - ci_test_stream + - rum_issue_stream + - apm_issue_stream + - trace_stream + - logs_issue_stream + - logs_pattern_stream + - logs_transaction_stream + - event_stream + - rum_stream + - llm_observability_stream + - issue_stream + - security_runtime_stream + - security_signals_stream + - incidents_stream + example: logs_stream + type: string + x-enum-varnames: + - LOGS_STREAM + - AUDIT_STREAM + - CI_PIPELINE_STREAM + - CI_TEST_STREAM + - RUM_ISSUE_STREAM + - APM_ISSUE_STREAM + - TRACE_STREAM + - LOGS_ISSUE_STREAM + - LOGS_PATTERN_STREAM + - LOGS_TRANSACTION_STREAM + - EVENT_STREAM + - RUM_STREAM + - LLM_OBSERVABILITY_STREAM + - ISSUE_STREAM + - SECURITY_RUNTIME_STREAM + - SECURITY_SIGNALS_STREAM + - INCIDENTS_STREAM + ListStreamGroupByItems: + description: List of facets on which to group. + properties: + facet: + description: Facet name. + example: resource_name + type: string + required: + - facet + type: object + ListStreamIssuePersona: + description: Persona filter for the `issue_stream` data source. + enum: + - all + - browser + - mobile + - backend + type: string + x-enum-varnames: + - ALL + - BROWSER + - MOBILE + - BACKEND + ListStreamIssueState: + description: Issue state filter for the `issue_stream` data source. + enum: + - OPEN + - IGNORED + - ACKNOWLEDGED + - RESOLVED + type: string + x-enum-varnames: + - OPEN + - IGNORED + - ACKNOWLEDGED + - RESOLVED + ListStreamQueryVersion: + description: |- + Version of the query for the logs transaction stream widget. When omitted, v1 query behavior is + preserved. Set to `sequential_query` to use v2 behavior. **This feature is in Preview.** + enum: + - sequential_query + type: string + x-enum-varnames: + - SEQUENTIAL_QUERY + TableWidgetTextFormatMatch: + description: Match rule for the table widget text format. + example: + type: is + value: fruit + properties: + type: + $ref: '#/components/schemas/TableWidgetTextFormatMatchType' + value: + description: Table Widget Match String. + example: Match Value + type: string + required: + - type + - value + type: object + TableWidgetTextFormatPalette: + default: white_on_green + description: Color-on-color palette to highlight replaced text. + enum: + - white_on_red + - white_on_yellow + - white_on_green + - black_on_light_red + - black_on_light_yellow + - black_on_light_green + - red_on_white + - yellow_on_white + - green_on_white + - custom_bg + - custom_text + type: string + x-enum-varnames: + - WHITE_ON_RED + - WHITE_ON_YELLOW + - WHITE_ON_GREEN + - BLACK_ON_LIGHT_RED + - BLACK_ON_LIGHT_YELLOW + - BLACK_ON_LIGHT_GREEN + - RED_ON_WHITE + - YELLOW_ON_WHITE + - GREEN_ON_WHITE + - CUSTOM_BG + - CUSTOM_TEXT + TableWidgetTextFormatReplace: + description: Replace rule for the table widget text format. + example: + type: all + with: vegetable + substring: fruit + properties: + type: + $ref: '#/components/schemas/TableWidgetTextFormatReplaceAllType' + with: + description: Replace All type. + example: all + type: string + substring: + description: Text that will be replaced. + example: string to replace + type: string + required: + - type + - with + - substring + type: object + FormulaAndFunctionMetricAggregation: + description: The aggregation methods available for metrics queries. + enum: + - avg + - min + - max + - sum + - last + - area + - l2norm + - percentile + example: avg + type: string + x-enum-varnames: + - AVG + - MIN + - MAX + - SUM + - LAST + - AREA + - L2NORM + - PERCENTILE + CrossOrgUuidsV1: + description: The source organization UUID for cross organization queries. Feature in Private Beta. + example: + - 6434abde-xxxx-yyyy-zzzz-da7ad0900001 + items: + description: The source organization UUID. + example: 6434abde-xxxx-yyyy-zzzz-da7ad0900001 + type: string + maxItems: 1 + type: array + FormulaAndFunctionMetricDataSource: + description: Data source for metrics queries. + enum: + - metrics + example: metrics + type: string + x-enum-varnames: + - METRICS + FormulaAndFunctionMetricSemanticMode: + description: Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. + enum: + - combined + - native + example: combined + type: string + x-enum-varnames: + - COMBINED + - NATIVE + HostMapWidgetInfrastructureRequestLeaf: + description: Infrastructure-backed host map child request (leaf node, no further nesting supported). + properties: + conditional_formats: + description: List of conditional formatting rules applied to fill values. + items: + $ref: '#/components/schemas/WidgetConditionalFormat' + type: array + enrichments: + description: Metric or event queries joined to the entity set. Each formula specifies a visual dimension. + example: + - formulas: + - dimension: fill + formula: query1 + queries: + - data_source: metrics + name: query1 + query: avg:system.cpu.user{*} by {host} + response_format: scalar + items: + $ref: '#/components/schemas/HostMapWidgetScalarRequest' + type: array + filter: + description: Filter string for the entity set in tag format (for example, `env:prod`). + example: env:prod + type: string + group_by: + description: |- + Defines how entities are grouped into tiles. The ordering of entries implies + the grouping hierarchy. + items: + $ref: '#/components/schemas/HostMapWidgetGroupBy' + type: array + no_group_hosts: + description: Whether to hide entities that have no group assignment. + type: boolean + no_metric_hosts: + description: Whether to hide entities that have no enrichment data. + type: boolean + node_type: + $ref: '#/components/schemas/HostMapWidgetNodeType' + request_type: + $ref: '#/components/schemas/HostMapWidgetInfrastructureRequestRequestType' + style: + $ref: '#/components/schemas/HostMapWidgetInfrastructureStyle' + required: + - request_type + - node_type + - enrichments + type: object + HostMapWidgetInfrastructureRequestRequestType: + description: Identifies this as an infrastructure-backed host map request. + enum: + - infrastructure_hostmap + example: infrastructure_hostmap + type: string + x-enum-varnames: + - INFRASTRUCTURE_HOSTMAP + HostMapWidgetFormula: + description: |- + Formula for the infrastructure host map widget that specifies both the expression + and the visual dimension it populates. + properties: + alias: + description: Expression alias. + example: my-metric + type: string + dimension: + $ref: '#/components/schemas/HostMapWidgetDimension' + formula: + description: String expression built from queries, formulas, and functions. + example: query1 + type: string + number_format: + $ref: '#/components/schemas/WidgetNumberFormat' + required: + - formula + - dimension + type: object + HostMapWidgetScalarRequestResponseFormat: + description: Response format for the scalar formula request. Only `scalar` is supported. + enum: + - scalar + example: scalar + type: string + x-enum-varnames: + - SCALAR + HostMapWidgetProjectionDimensionMapping: + description: Maps a dataset column to a host map visual dimension. + properties: + alias: + description: Alias used to label the column instead of its name. + type: string + column: + description: Source column name from the dataset. + example: entity_id + type: string + dimension: + $ref: '#/components/schemas/HostMapWidgetDimension' + number_format: + $ref: '#/components/schemas/WidgetNumberFormat' + required: + - column + - dimension + type: object + HostMapWidgetProjectionType: + description: Type of the host map projection. + enum: + - hostmap + example: hostmap + type: string + x-enum-varnames: + - HOSTMAP + DatasetListQueryDataSourceType: + description: Identifies this as a published-dataset list query. + enum: + - dataset + example: dataset + type: string + x-enum-varnames: + - DATASET + PublishedDatasetProvider: + description: Product page that published the dataset queried by a `DatasetListQuery`. `ddsql_query` is the only provider currently supported for host map widgets. + enum: + - ddsql_query + example: ddsql_query + type: string + x-enum-varnames: + - DDSQL_QUERY + DatasetListQuerySort: + description: Sort configuration for a `DatasetListQuery`. + properties: + fields: + description: List of fields to sort the rows by, applied in order. + example: + - name: cpu_usage + order: desc items: - $ref: '#/components/schemas/DashboardListItemRequest' + $ref: '#/components/schemas/DatasetListQuerySortField' type: array + required: + - fields type: object - DashboardListAddItemsResponse: - description: Response containing a list of added dashboards. + PointPlotProjectionDimension: + description: Dimension mapping for the point plot projection. properties: - added_dashboards_to_list: - description: List of dashboards added to the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array + alias: + description: Alias for the column. + type: string + column: + description: Source column name from the dataset. + example: duration + type: string + dimension: + $ref: '#/components/schemas/PointPlotDimension' + required: + - column + - dimension type: object - DashboardListUpdateItemsRequest: - description: Request containing the list of dashboards to update to. + PointPlotProjectionType: + description: Type of the projection. + enum: + - point_plot + example: point_plot + type: string + x-enum-varnames: + - POINT_PLOT + QueryValueWidgetComparisonDirectionality: + default: neutral + description: 'Color-coding direction: `increase_better` (green on rise), `decrease_better` (green on drop), or `neutral` (no color).' + enum: + - increase_better + - decrease_better + - neutral + type: string + x-enum-varnames: + - INCREASE_BETTER + - DECREASE_BETTER + - NEUTRAL + ComparisonDuration: + description: The comparison period. Use a preset `type` value or set `type` to `custom_timeframe` and provide `custom_timeframe` with explicit millisecond epoch bounds. properties: - dashboards: - description: List of dashboards to update the dashboard list to. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array + custom_timeframe: + $ref: '#/components/schemas/ComparisonCustomTimeframe' + description: Required when `type` is `custom_timeframe`. Fixed time range to compare against. + type: + $ref: '#/components/schemas/ComparisonDurationType' + required: + - type type: object - DashboardListUpdateItemsResponse: - description: Response containing a list of updated dashboards. + QueryValueWidgetComparisonType: + default: absolute + description: 'How the delta is expressed: `absolute` (raw difference), `relative` (percentage), or `both`.' + enum: + - absolute + - relative + - both + type: string + x-enum-varnames: + - ABSOLUTE + - RELATIVE + - BOTH + ScatterplotWidgetFormula: + description: Formula to be used in a Scatterplot widget query. properties: - dashboards: - description: List of dashboards in the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array + alias: + description: Expression alias. + example: my-query + type: string + dimension: + $ref: '#/components/schemas/ScatterplotDimension' + formula: + description: String expression built from queries, formulas, and functions. + example: func(a) + b + type: string + required: + - formula + - dimension type: object - ListPowerpacksResponse: - description: Response object which includes all powerpack configurations. + ScatterplotWidgetAggregator: + description: Aggregator used for the request. + enum: + - avg + - last + - max + - min + - sum + type: string + x-enum-varnames: + - AVERAGE + - LAST + - MAXIMUM + - MINIMUM + - SUM + SankeyRumQuery: + additionalProperties: false + description: Query configuration for Product Analytics or RUM Sankey widget. properties: - data: - description: List of powerpack definitions. - items: - $ref: '#/components/schemas/PowerpackData' - type: array - included: - description: Array of objects related to the users. + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFiltersV1' + data_source: + $ref: '#/components/schemas/SankeyRumDataSource' + entries_per_step: + description: Entries per step. + format: int64 + type: integer + join_keys: + $ref: '#/components/schemas/SankeyJoinKeys' + mode: + $ref: '#/components/schemas/SankeyRumQueryMode' + number_of_steps: + description: Number of steps. + format: int64 + type: integer + occurrences: + $ref: '#/components/schemas/ProductAnalyticsAudienceOccurrenceFilter' + query_string: + description: RUM event search query used to filter views or actions. + example: '@type:view' + type: string + source: + description: Source. + type: string + subquery_id: + description: Subquery ID. + type: string + target: + description: Target. + type: string + required: + - data_source + - query_string + - mode + type: object + SankeyNetworkQuery: + additionalProperties: false + description: Query configuration for Sankey network widget. + properties: + compute: + $ref: '#/components/schemas/SankeyNetworkQueryCompute' + data_source: + $ref: '#/components/schemas/SankeyNetworkDataSource' + group_by: + description: Fields to group by. + example: + - source + - destination items: - $ref: '#/components/schemas/User' + description: A field name to group by. + type: string type: array - links: - $ref: '#/components/schemas/PowerpackResponseLinks' - meta: - $ref: '#/components/schemas/PowerpacksResponseMeta' + limit: + description: Maximum number of results. + example: 100 + format: int64 + type: integer + mode: + $ref: '#/components/schemas/SankeyNetworkQueryMode' + query_string: + description: Query string for filtering network data. + example: '*' + type: string + should_exclude_missing: + description: Whether to exclude missing values. + type: boolean + sort: + $ref: '#/components/schemas/SankeyNetworkQuerySort' + required: + - data_source + - query_string + - group_by + - limit type: object - Powerpack: - description: >- - Powerpacks are templated groups of dashboard widgets you can save from - an existing dashboard and turn into reusable packs in the widget tray. + SankeyNetworkRequestType: + default: netflow_sankey + description: Type of request for network Sankey widget. + enum: + - netflow_sankey + example: netflow_sankey + type: string + x-enum-varnames: + - NETFLOW_SANKEY + SplitConfigSortCompute: + description: Defines the metric and aggregation used as the sort value. properties: - data: - $ref: '#/components/schemas/PowerpackData' + aggregation: + description: How to aggregate the sort metric for the purposes of ordering. + example: sum + type: string + metric: + description: The metric to use for sorting graphs. + example: system.cpu.user + type: string + required: + - aggregation + - metric type: object - PowerpackResponse: - description: Response object which includes a single powerpack configuration. + SplitVectorEntryItem: + description: The split graph list contains a graph for each value of the split dimension. + minLength: 1 properties: - data: - $ref: '#/components/schemas/PowerpackData' - included: - description: Array of objects related to the users. + tag_key: + description: The tag key. + example: demo + minLength: 1 + type: string + tag_values: + description: The tag values. + example: + - env items: - $ref: '#/components/schemas/User' + description: A tag value string. + minLength: 1 + type: string type: array - readOnly: true + required: + - tag_key + - tag_values type: object - DashboardListItemRequest: - description: A dashboard within a list. + SunburstWidgetLegendTableType: + description: Whether or not to show a table legend. + enum: + - table + - none + example: table + type: string + x-enum-varnames: + - TABLE + - NONE + SunburstWidgetLegendInlineAutomaticType: + description: Whether to show the legend inline or let it be automatically generated. + enum: + - inline + - automatic + example: automatic + type: string + x-enum-varnames: + - INLINE + - AUTOMATIC + ToplistWidgetStacked: + description: Top list widget stacked display options. properties: - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - type: string + legend: + $ref: '#/components/schemas/ToplistWidgetLegend' type: - $ref: '#/components/schemas/DashboardType' + $ref: '#/components/schemas/ToplistWidgetStackedType' required: - type - - id type: object - DashboardListItemResponse: - description: A dashboard within a list. + ToplistWidgetFlat: + description: Top list widget flat display. properties: - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - readOnly: true - type: string type: - $ref: '#/components/schemas/DashboardType' + $ref: '#/components/schemas/ToplistWidgetFlatType' required: - type - - id type: object - DashboardListItem: - description: A dashboard within a list. + TopologyQueryDataStreams: + additionalProperties: false + description: Query to the data streams topology data source. properties: - author: - $ref: '#/components/schemas/Creator' - created: - description: Date of creation of the dashboard. - format: date-time - readOnly: true - type: string - icon: - description: URL to the icon of the dashboard. - nullable: true - readOnly: true - type: string - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - type: string - integration_id: - description: The short name of the integration. - nullable: true - readOnly: true - type: string - is_favorite: - description: Whether or not the dashboard is in the favorites. - readOnly: true - type: boolean - is_read_only: - description: Whether or not the dashboard is read only. - readOnly: true - type: boolean - is_shared: - description: Whether the dashboard is publicly shared or not. - readOnly: true - type: boolean - modified: - description: Date of last edition of the dashboard. - format: date-time - readOnly: true - type: string - popularity: - description: Popularity of the dashboard. - format: int32 - maximum: 5 - readOnly: true - type: integer - tags: - description: List of team names representing ownership of a dashboard. + data_source: + $ref: '#/components/schemas/TopologyQueryDataStreamsDataSource' + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: + - env:prod + - az:us-east items: - description: The name of a Datadog team, formatted as `team:` + description: Environment or primary tag, generally in a key:value format. type: string - maxItems: 5 - nullable: true - readOnly: true + minItems: 1 type: array - title: - description: Title of the dashboard. - readOnly: true + query_string: + description: A search string for filtering services. When set, this replaces the `service` field. + example: service:myservice type: string - type: - $ref: '#/components/schemas/DashboardType' - url: - description: URL path to the dashboard. - readOnly: true + service: + description: (deprecated) Name of the service. Leave this empty and use query_string instead. + example: myservice type: string required: - - type - - id + - data_source + - filters + - service type: object - PowerpackData: - description: Powerpack data object. + TopologyRequestType: + description: Widget request type. + enum: + - topology + type: string + x-enum-varnames: + - TOPOLOGY + TopologyQueryServiceMap: + additionalProperties: false + description: Query to the service map topology data source. properties: - attributes: - $ref: '#/components/schemas/PowerpackAttributes' - id: - description: ID of the powerpack. + data_source: + $ref: '#/components/schemas/TopologyQueryServiceMapDataSource' + filters: + description: Your environment and primary tag (or * if enabled for your account). + example: + - env:prod + - az:us-east + items: + description: Environment or primary tag, generally in a key:value format + type: string + minItems: 1 + type: array + query_string: + description: A search string for filtering services. When set, this replaces the `service` field. + example: service:myservice type: string - relationships: - $ref: '#/components/schemas/PowerpackRelationships' - type: - description: Type of widget, must be powerpack. - example: powerpack + service: + description: (deprecated) Name of the service. Leave this empty and use query_string instead. + example: myservice type: string + required: + - data_source + - filters + - service type: object - User: - description: User object returned by the API. + NotebookMarkdownCellDefinition: + description: Text in a notebook is formatted with [Markdown](https://daringfireball.net/projects/markdown/), which enables the use of headings, subheadings, links, images, lists, and code blocks. properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. + text: + description: The markdown content. + example: |- + # Example Header + example content type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' type: - $ref: '#/components/schemas/UsersType' + $ref: '#/components/schemas/NotebookMarkdownCellDefinitionType' + required: + - type + - text type: object - PowerpackResponseLinks: - description: Links attributes. + NotebookGraphSize: + description: The size of the graph. + enum: + - xs + - s + - m + - l + - xl + example: m + type: string + x-enum-varnames: + - EXTRA_SMALL + - SMALL + - MEDIUM + - LARGE + - EXTRA_LARGE + NotebookSplitBy: + description: Object describing how to split the graph to display multiple visualizations per request. + example: + keys: [] + tags: [] properties: - first: - description: Link to last page. - type: string - last: - description: Link to first page. - example: >- - https://app.datadoghq.com/api/v2/powerpacks?page[offset]=0&page[limit]=25 - nullable: true + keys: + description: Keys to split on. + example: + - environment + items: + description: A key to split on. + example: environment + type: string + type: array + tags: + description: Tags to split on. + example: + - environment:staging + items: + description: A tag to split on. + example: environment:staging + type: string + type: array + required: + - keys + - tags + type: object + NotebookCellTime: + description: Timeframe for the notebook cell. When 'null', the notebook global time is used. + nullable: true + type: object + example: + live_span: 1h + end: '2021-02-24T20:18:28+00:00' + start: '2021-02-24T19:18:28+00:00' + properties: + live_span: + $ref: '#/components/schemas/WidgetLiveSpanV1' + end: + description: The end time. + example: '2021-02-24T20:18:28+00:00' + format: date-time type: string - next: - description: Link for the next set of results. - example: >- - https://app.datadoghq.com/api/v2/powerpacks?page[offset]=25&page[limit]=25 + live: + description: Indicates whether the timeframe should be shifted to end at the current time. + type: boolean + start: + description: The start time. + example: '2021-02-24T19:18:28+00:00' + format: date-time type: string - prev: - description: Link for the previous set of results. - nullable: true + required: + - live_span + - start + - end + NotebookTemplateVariableAvailableValuesQueryGroupBy: + additionalProperties: false + description: A group-by facet for an available values query. + properties: + facet: + description: The facet name to group by. + example: host type: string - self: - description: Link to current page. - example: https://app.datadoghq.com/api/v2/powerpacks + required: + - facet + type: object + NotebookTemplateVariableAvailableValuesQuerySearch: + additionalProperties: false + description: Search parameters for an available values query. + properties: + query: + description: The search query string. + example: service:web type: string + required: + - query type: object - PowerpacksResponseMeta: - description: Powerpack response metadata. + LogQueryDefinitionGroupBySort: + description: Define a sorting method. properties: - pagination: - $ref: '#/components/schemas/PowerpacksResponseMetaPagination' + aggregation: + description: The aggregation method. + example: avg + type: string + facet: + description: Facet name. + example: '@string_query.interval' + type: string + order: + $ref: '#/components/schemas/WidgetSort' + required: + - aggregation + - order type: object - DashboardType: - description: The type of the dashboard. + WidgetFormulaCellDisplayModeOptionsTrendType: + description: Trend type for the cell display mode options. enum: - - custom_timeboard - - custom_screenboard - - integration_screenboard - - integration_timeboard - - host_timeboard - example: host_timeboard + - area + - line + - bars + example: area type: string x-enum-varnames: - - CUSTOM_TIMEBOARD - - CUSTOM_SCREENBOARD - - INTEGRATION_SCREENBOARD - - INTEGRATION_TIMEBOARD - - HOST_TIMEBOARD - Creator: - description: Creator of the object. + - AREA + - LINE + - BARS + WidgetFormulaCellDisplayModeOptionsYScale: + description: Y scale for the cell display mode options. + enum: + - shared + - independent + example: shared + type: string + x-enum-varnames: + - SHARED + - INDEPENDENT + QuerySortOrderV1: + default: desc + description: Direction of sort. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASC + - DESC + NumberFormatUnit: + description: Number format unit. properties: - email: - description: Email of the creator. + per_unit_name: + description: The name of the unit per item. + example: bytes type: string - handle: - description: Handle of the creator. + type: + $ref: '#/components/schemas/NumberFormatUnitScaleType' + unit_name: + description: The name of the unit. + example: bytes type: string - name: - description: Name of the creator. - nullable: true + label: + description: The label for the custom unit. + maxLength: 12 + minLength: 1 type: string type: object - PowerpackAttributes: - description: Powerpack attribute object. + NumberFormatUnitScale: + description: The definition of `NumberFormatUnitScale` object. + nullable: true properties: - description: - description: Description of this powerpack. - example: Powerpack for ABC + type: + $ref: '#/components/schemas/NumberFormatUnitScaleType' + unit_name: + description: The name of the unit. + example: bytes type: string - group_widget: - $ref: '#/components/schemas/PowerpackGroupWidget' - name: - description: Name of the powerpack. - example: Sample Powerpack + type: object + FormulaAndFunctionEventQueryDefinitionCompute: + description: Compute options. + properties: + aggregation: + $ref: '#/components/schemas/FormulaAndFunctionEventAggregation' + interval: + description: A time interval in milliseconds. + example: 60000 + format: int64 + type: integer + metric: + description: Measurable attribute to compute. + example: '@duration' type: string - tags: - description: List of tags to identify this powerpack. + required: + - aggregation + type: object + FormulaAndFunctionEventsDataSource: + description: Data source for event platform-based queries. + enum: + - logs + - spans + - network + - rum + - security_signals + - profiles + - audit + - events + - ci_tests + - ci_pipelines + - incident_analytics + - product_analytics + - on_call_events + - errors + - llm_observability + example: logs + type: string + x-enum-varnames: + - LOGS + - SPANS + - NETWORK + - RUM + - SECURITY_SIGNALS + - PROFILES + - AUDIT + - EVENTS + - CI_TESTS + - CI_PIPELINES + - INCIDENT_ANALYTICS + - PRODUCT_ANALYTICS + - ON_CALL_EVENTS + - ERRORS + - LLM_OBSERVABILITY + FormulaAndFunctionEventQueryGroupByConfig: + description: Group by configuration for a formula and functions events query. Accepts either a list of facet objects or a flat object that specifies a list of facet fields. + items: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBy' + type: array + properties: + fields: + description: List of event facets to group by. example: - - tag:foo1 + - hostname + - service items: - maxLength: 80 + description: Event facet. type: string - maxItems: 8 - type: array - template_variables: - description: List of template variables for this powerpack. - example: - - defaults: - - '*' - name: test - items: - $ref: '#/components/schemas/PowerpackTemplateVariable' type: array + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBySort' required: - - group_widget - - name - type: object - PowerpackRelationships: - description: Powerpack relationship object. + - fields + FormulaAndFunctionEventQueryDefinitionSearch: + description: Search options. properties: - author: - $ref: '#/components/schemas/RelationshipToUser' + query: + description: Events search string. + example: service:query + type: string + required: + - query type: object - UserAttributes: - description: Attributes of user object returned by the API. + FormulaAndFunctionProcessQueryDataSource: + description: Data sources that rely on the process backend. + enum: + - process + - container + example: process + type: string + x-enum-varnames: + - PROCESS + - CONTAINER + FormulaAndFunctionApmDependencyStatsDataSource: + description: Data source for APM dependency stats queries. + enum: + - apm_dependency_stats + example: apm_dependency_stats + type: string + x-enum-varnames: + - APM_DEPENDENCY_STATS + FormulaAndFunctionApmDependencyStatName: + description: APM statistic. + enum: + - avg_duration + - avg_root_duration + - avg_spans_per_trace + - error_rate + - pct_exec_time + - pct_of_traces + - total_traces_count + example: avg_duration + type: string + x-enum-varnames: + - AVG_DURATION + - AVG_ROOT_DURATION + - AVG_SPANS_PER_TRACE + - ERROR_RATE + - PCT_EXEC_TIME + - PCT_OF_TRACES + - TOTAL_TRACES_COUNT + FormulaAndFunctionApmResourceStatsDataSource: + description: Data source for APM resource stats queries. + enum: + - apm_resource_stats + example: apm_resource_stats + type: string + x-enum-varnames: + - APM_RESOURCE_STATS + FormulaAndFunctionApmResourceStatName: + description: APM resource stat name. + enum: + - errors + - error_rate + - hits + - latency_avg + - latency_distribution + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + example: hits + type: string + x-enum-varnames: + - ERRORS + - ERROR_RATE + - HITS + - LATENCY_AVG + - LATENCY_DISTRIBUTION + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + FormulaAndFunctionApmMetricsDataSource: + description: Data source for APM metrics queries. + enum: + - apm_metrics + example: apm_metrics + type: string + x-enum-varnames: + - APM_METRICS + FormulaAndFunctionApmMetricsSpanKind: + description: Describes the relationship between the span, its parents, and its children in a trace. + enum: + - consumer + - server + - client + - producer + - internal + example: server + type: string + x-enum-varnames: + - CONSUMER + - SERVER + - CLIENT + - PRODUCER + - INTERNAL + FormulaAndFunctionApmMetricStatName: + description: APM metric stat name. + enum: + - errors + - error_rate + - errors_per_second + - latency_avg + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + - latency_p999 + - latency_distribution + - hits + - hits_per_second + - total_time + - apdex + example: hits + type: string + x-enum-varnames: + - ERRORS + - ERROR_RATE + - ERRORS_PER_SECOND + - LATENCY_AVG + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + - LATENCY_P999 + - LATENCY_DISTRIBUTION + - HITS + - HITS_PER_SECOND + - TOTAL_TIME + - APDEX + FormulaAndFunctionSLODataSource: + description: Data source for SLO measures queries. + enum: + - slo + example: slo + type: string + x-enum-varnames: + - SLO + FormulaAndFunctionSLOGroupMode: + description: Group mode to query measures. + enum: + - overall + - components + example: overall + type: string + x-enum-varnames: + - OVERALL + - COMPONENTS + FormulaAndFunctionSLOMeasure: + description: SLO measures queries. + enum: + - good_events + - bad_events + - good_minutes + - bad_minutes + - slo_status + - error_budget_remaining + - burn_rate + - error_budget_burndown + example: slo_status + type: string + x-enum-varnames: + - GOOD_EVENTS + - BAD_EVENTS + - GOOD_MINUTES + - BAD_MINUTES + - SLO_STATUS + - ERROR_BUDGET_REMAINING + - BURN_RATE + - ERROR_BUDGET_BURNDOWN + FormulaAndFunctionSLOQueryType: + description: Name of the query for use in formulas. + enum: + - metric + - monitor + - time_slice + example: metric + type: string + x-enum-varnames: + - METRIC + - MONITOR + - TIME_SLICE + FormulaAndFunctionCloudCostDataSource: + description: Data source for Cloud Cost queries. + enum: + - cloud_cost + example: cloud_cost + type: string + x-enum-varnames: + - CLOUD_COST + ProductAnalyticsAudienceFiltersV1: + description: Product Analytics/RUM audience filters. properties: - created_at: - description: Creation time of the user. - format: date-time + accounts: + items: + $ref: '#/components/schemas/ProductAnalyticsAudienceAccountSubqueryV1' + type: array + filter_condition: + description: An optional filter condition applied to the audience subquery. type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. + segments: + items: + $ref: '#/components/schemas/ProductAnalyticsAudienceSegmentSubqueryV1' + type: array + users: + items: + $ref: '#/components/schemas/ProductAnalyticsAudienceUserSubqueryV1' + type: array + type: object + ProductAnalyticsExtendedCompute: + additionalProperties: false + description: Compute configuration for Product Analytics Extended queries. + properties: + aggregation: + $ref: '#/components/schemas/FormulaAndFunctionEventAggregation' + interval: + description: Fixed-width time bucket interval in milliseconds for time series queries. Mutually exclusive with `rollup`. + example: 60000 + format: double + type: number + metric: + description: Measurable attribute to compute. + example: '@usr.id' type: string - handle: - description: Handle of the user. + name: + description: Name of the compute for use in formulas. + example: query1 type: string - icon: - description: URL of the user's icon. + rollup: + $ref: '#/components/schemas/CalendarInterval' + description: Calendar-aligned time bucket for time series queries (for example, day, week, or month boundaries). Mutually exclusive with `interval`. + required: + - aggregation + type: object + FormulaAndFunctionProductAnalyticsExtendedDataSource: + description: Data source for Product Analytics Extended queries. + enum: + - product_analytics_extended + example: product_analytics_extended + type: string + x-enum-varnames: + - PRODUCT_ANALYTICS_EXTENDED + ProductAnalyticsExtendedGroupBy: + description: Group by configuration for Product Analytics Extended queries. + properties: + facet: + description: Facet name to group by. + example: '@geo.country' type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true + limit: + description: Maximum number of groups to return. + example: 10 + format: int32 + maximum: 10000 + type: integer + should_exclude_missing: + description: Whether to exclude events missing the group-by facet. type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time - type: string - name: - description: Name of the user. - nullable: true + sort: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBySort' + required: + - facet + type: object + FormulaAndFunctionProductAnalyticsExtendedQueryDefinitionIndexesItems: + description: Use `"*"` to query all indexes. + enum: + - '*' + type: string + x-enum-varnames: + - ALL + ProductAnalyticsBaseQueryV1: + $ref: '#/components/schemas/ProductAnalyticsEventQueryV1' + description: Base query for Product Analytics. + UserJourneyFormulaCompute: + additionalProperties: false + description: Compute configuration for User Journey formula queries. + properties: + aggregation: + $ref: '#/components/schemas/FormulaAndFunctionEventAggregation' + interval: + description: Time bucket interval in milliseconds for time series queries. + example: 60000 + format: double + type: number + metric: + $ref: '#/components/schemas/UserJourneyFormulaComputeMetric' + target: + $ref: '#/components/schemas/UserJourneySearchTarget' + required: + - aggregation + type: object + UserJourneyFormulaGroupBy: + description: Group by configuration for User Journey formula queries. + properties: + facet: + description: Facet name to group by. + example: '@usr.email' type: string - service_account: - description: Whether the user is a service account. + limit: + description: Maximum number of groups to return. + example: 10 + format: int32 + maximum: 10000 + type: integer + should_exclude_missing: + description: Whether to exclude events missing the group-by facet. type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true + sort: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBySort' + target: + $ref: '#/components/schemas/UserJourneySearchTarget' + required: + - facet + type: object + WidgetFormulaSort: + description: The formula to sort the widget by. + properties: + index: + description: The index of the formula to sort by. + example: 0 + format: int64 + minimum: 0 + type: integer + order: + $ref: '#/components/schemas/WidgetSort' + type: + $ref: '#/components/schemas/FormulaType' + required: + - type + - index + - order + type: object + WidgetGroupSort: + description: The group to sort the widget by. + properties: + name: + description: The name of the group. + example: group_name type: string - verified: - description: Whether the user is verified. - type: boolean + order: + $ref: '#/components/schemas/WidgetSort' + type: + $ref: '#/components/schemas/GroupType' + required: + - type + - name + - order type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. + BarChartWidgetLegend: + description: Bar chart widget stacked legend behavior. + enum: + - automatic + - inline + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - INLINE + - NONE + BarChartWidgetStackedType: + default: stacked + description: Bar chart widget stacked display type. + enum: + - stacked + example: stacked + type: string + x-enum-varnames: + - STACKED + BarChartWidgetFlatType: + default: flat + description: Bar chart widget flat display type. + enum: + - flat + example: flat + type: string + x-enum-varnames: + - FLAT + EventsAggregationV1: + description: The type of aggregation that can be performed on events-based queries. + example: avg + enum: + - avg + - cardinality + - count + - delta + - earliest + - latest + - max + - median + - min + - most_frequent + - sum + type: string + x-enum-varnames: + - AVG + - CARDINALITY + - COUNT + - DELTA + - EARLIEST + - LATEST + - MAX + - MEDIAN + - MIN + - MOST_FREQUENT + - SUM + pattern: ^pc[0-9]+(\.[0-9]+)?$ + RetentionComputeMetric: + description: Metric for retention compute. + enum: + - __dd.retention + - __dd.retention_rate + example: __dd.retention_rate + type: string + x-enum-varnames: + - RETENTION + - RETENTION_RATE + RetentionGroupBySort: + additionalProperties: false + description: Sort configuration for retention group by. properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' + order: + $ref: '#/components/schemas/WidgetSort' type: object - UsersType: - default: users - description: Users resource type. + RetentionGroupByTarget: + description: Target for retention group by. enum: - - users - example: users + - cohort + - return_period + example: cohort type: string x-enum-varnames: - - USERS - PowerpacksResponseMetaPagination: - description: Powerpack response pagination metadata. + - COHORT + - RETURN_PERIOD + RetentionCohortCriteria: + additionalProperties: false + description: Cohort criteria for retention queries. + properties: + base_query: + $ref: '#/components/schemas/ProductAnalyticsBaseQueryV1' + time_interval: + $ref: '#/components/schemas/RetentionCohortCriteriaTimeInterval' + required: + - base_query + - time_interval + type: object + RetentionEntity: + description: Entity to track for retention. + enum: + - '@usr.id' + - '@account.id' + example: '@usr.id' + type: string + x-enum-varnames: + - USER_ID + - ACCOUNT_ID + RetentionReturnCondition: + description: Condition for counting user return. + enum: + - conversion_on + - conversion_on_or_after + example: conversion_on_or_after + type: string + x-enum-varnames: + - CONVERSION_ON + - CONVERSION_ON_OR_AFTER + RetentionReturnCriteria: + additionalProperties: false + description: Return criteria for retention queries. + properties: + base_query: + $ref: '#/components/schemas/ProductAnalyticsBaseQueryV1' + time_interval: + $ref: '#/components/schemas/RetentionReturnCriteriaTimeInterval' + required: + - base_query + type: object + ProductAnalyticsFunnelComputeAggregation: + description: Aggregation type for user journey funnel compute. + enum: + - cardinality + - count + example: count + type: string + x-enum-varnames: + - CARDINALITY + - COUNT + ProductAnalyticsFunnelComputeMetric: + description: Metric for user journey funnel compute. `__dd.conversion` and `__dd.conversion_rate` accept `count` (unique users/sessions) and `cardinality` (total users/sessions) as aggregations. + enum: + - __dd.conversion + - __dd.conversion_rate + example: __dd.conversion_rate + type: string + x-enum-varnames: + - CONVERSION + - CONVERSION_RATE + ProductAnalyticsFunnelGroupBySort: + additionalProperties: false + description: Sort configuration for user journey funnel group by. properties: - first_offset: - description: The first offset. - format: int64 - type: integer - last_offset: - description: The last offset. - format: int64 - nullable: true - type: integer - limit: - description: Pagination limit. - format: int64 - type: integer - next_offset: - description: The next offset. - format: int64 - type: integer - offset: - description: The offset. - format: int64 - type: integer - prev_offset: - description: The previous offset. - format: int64 - type: integer - total: - description: Total results. - format: int64 - type: integer - type: - description: Offset type. + aggregation: + description: Aggregation type. + example: count type: string + metric: + description: Metric to sort by. + example: '@session.id' + type: string + order: + $ref: '#/components/schemas/WidgetSort' + required: + - aggregation type: object - PowerpackGroupWidget: - description: Powerpack group widget definition object. + UserJourneySearchTarget: + description: Target for user journey search. properties: - definition: - $ref: '#/components/schemas/PowerpackGroupWidgetDefinition' - layout: - $ref: '#/components/schemas/PowerpackGroupWidgetLayout' - live_span: - $ref: '#/components/schemas/WidgetLiveSpan' + end: + description: End value. + example: node_1 + type: string + start: + description: Start value. + example: node_0 + type: string + type: + description: Target type. + example: step + type: string + value: + description: Target value. + example: node_0 + type: string required: - - definition + - type type: object - PowerpackTemplateVariable: - description: Powerpack template variables. + UserJourneySearchFilters: + description: Filters for user journey search. properties: - available_values: - description: >- - The list of values that the template variable drop-down is limited - to. - example: - - my-host - - host1 - - host2 + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFiltersV1' + graph_filters: + description: Graph filters. items: - description: Template variable value. - type: string - nullable: true + $ref: '#/components/schemas/UserJourneySearchGraphFilter' + description: A graph filter for user journey search. type: array - defaults: - description: >- - One or many template variable default values within the saved view, - which are unioned together using `OR` if more than one is specified. + string_filter: + description: String filter. + example: '@session.type:user' + type: string + type: object + UserJourneyJoinKeys: + description: Join keys for user journey queries. + properties: + primary: + description: Primary join key. + example: '@session.id' + type: string + secondary: + description: Secondary join keys. items: - description: One or many default values of the template variable. - minLength: 1 + description: A secondary join key. type: string type: array - name: - description: The name of the variable. - example: datacenter - type: string - prefix: - description: >- - The tag prefix associated with the variable. Only tags with this - prefix appear in the variable drop-down. - example: host - nullable: true + required: + - primary + type: object + ListStreamComputeAggregation: + description: Aggregation value. + enum: + - count + - cardinality + - median + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + - earliest + - latest + - most_frequent + example: count + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - MEDIAN + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + - EARLIEST + - LATEST + - MOST_FREQUENT + TableWidgetTextFormatMatchType: + description: Match or compare option. + enum: + - is + - is_not + - contains + - does_not_contain + - starts_with + - ends_with + example: is + type: string + x-enum-varnames: + - IS + - IS_NOT + - CONTAINS + - DOES_NOT_CONTAIN + - STARTS_WITH + - ENDS_WITH + TableWidgetTextFormatReplaceAll: + description: Match All definition. + example: + type: all + with: vegetable + properties: + type: + $ref: '#/components/schemas/TableWidgetTextFormatReplaceAllType' + with: + description: Replace All type. + example: all type: string required: - - name + - type + - with type: object - RelationshipToUser: - description: Relationship to user. + TableWidgetTextFormatReplaceSubstring: + description: Match Sub-string definition. + example: + substring: fruit + type: substring + with: vegetable properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' + substring: + description: Text that will be replaced. + example: string to replace + type: string + type: + $ref: '#/components/schemas/TableWidgetTextFormatReplaceSubstringType' + with: + description: Text that will replace original sub-string. + example: replacement + type: string required: - - data + - type + - with + - substring type: object - RelationshipToOrganization: - description: Relationship to an organization. + HostMapWidgetDimension: + description: Visual dimension for the host map widget. Used both by infrastructure-backed formulas and by DDSQL projection columns; `group` is only meaningful for DDSQL projection columns, where repeated entries define the grouping hierarchy. + enum: + - node + - fill + - size + - group + example: node + type: string + x-enum-varnames: + - NODE + - FILL + - SIZE + - GROUP + DatasetListQuerySortField: + description: A single sort directive for a `DatasetListQuery`. properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' + name: + description: Name of the field to sort on. + example: duration + type: string + order: + $ref: '#/components/schemas/QuerySortOrderV1' required: - - data + - name + - order type: object - RelationshipToOrganizations: - description: Relationship to organizations. + PointPlotDimension: + description: Dimension of the point plot. + enum: + - group + - time + - 'y' + - radius + example: 'y' + type: string + x-enum-varnames: + - GROUP + - TIME + - 'Y' + - RADIUS + ComparisonCustomTimeframe: + description: Fixed time range for a `custom_timeframe` comparison. properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array + from: + description: Start time in milliseconds since epoch. + example: 1779290190000 + format: int64 + type: integer + to: + description: End time in milliseconds since epoch. + example: 1779894990000 + format: int64 + type: integer required: - - data + - from + - to type: object - RelationshipToUsers: - description: Relationship to users. + ComparisonDurationType: + description: The comparison window type. + enum: + - previous_timeframe + - custom_timeframe + - previous_day + - previous_week + - previous_month + example: previous_timeframe + type: string + x-enum-varnames: + - PREVIOUS_TIMEFRAME + - CUSTOM_TIMEFRAME + - PREVIOUS_DAY + - PREVIOUS_WEEK + - PREVIOUS_MONTH + ScatterplotDimension: + description: Dimension of the Scatterplot. + enum: + - x + - 'y' + - radius + - color + example: radius + type: string + x-enum-varnames: + - X + - 'Y' + - RADIUS + - COLOR + SankeyRumDataSource: + default: product_analytics + description: Product Analytics or RUM data source type. + enum: + - rum + - product_analytics + example: product_analytics + type: string + x-enum-varnames: + - RUM + - PRODUCT_ANALYTICS + SankeyJoinKeys: + additionalProperties: false + description: Join keys. properties: - data: - description: Relationships to user objects. - example: [] + primary: + description: Primary join key. + example: session.id + type: string + secondary: + description: Secondary join keys. items: - $ref: '#/components/schemas/RelationshipToUserData' + description: Secondary join key. + type: string type: array required: - - data + - primary type: object - RelationshipToRoles: - description: Relationship to roles. + SankeyRumQueryMode: + default: source + description: Sankey mode for Product Analytics or RUM queries. + enum: + - source + - target + example: source + type: string + x-enum-varnames: + - SOURCE + - TARGET + ProductAnalyticsAudienceOccurrenceFilter: + description: Filter applied to occurrence counts when building a Product Analytics audience. properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array + operator: + description: 'The comparison operator used for the occurrence filter (for example: `gt`, `lt`, `eq`).' + type: string + value: + description: The threshold value to compare occurrence counts against. + type: string type: object - PowerpackGroupWidgetDefinition: - description: Powerpack group widget object. + SankeyNetworkQueryCompute: + additionalProperties: false + description: Compute aggregation for network queries. properties: - layout_type: - description: Layout type of widgets. - example: ordered + aggregation: + $ref: '#/components/schemas/EventsAggregationV1' + metric: + description: Metric to aggregate. + example: '' type: string - show_title: - description: >- - Boolean indicating whether powerpack group title should be visible - or not. - example: true - type: boolean - title: - description: Name for the group widget. - example: Sample Powerpack + required: + - aggregation + - metric + type: object + SankeyNetworkDataSource: + default: network + description: Network data source type. + enum: + - network_device_flows + - network + example: network + type: string + x-enum-varnames: + - NETWORK_DEVICE_FLOWS + - NETWORK + SankeyNetworkQueryMode: + default: target + description: Sankey mode for network queries. + enum: + - target + example: target + type: string + x-enum-varnames: + - TARGET + SankeyNetworkQuerySort: + description: Sort configuration for network queries. + properties: + field: + description: Field to sort by. + type: string + order: + $ref: '#/components/schemas/WidgetSort' + type: object + ToplistWidgetLegend: + description: Top list widget stacked legend behavior. + enum: + - automatic + - inline + - none + example: automatic + type: string + x-enum-varnames: + - AUTOMATIC + - INLINE + - NONE + ToplistWidgetStackedType: + default: stacked + description: Top list widget stacked display type. + enum: + - stacked + example: stacked + type: string + x-enum-varnames: + - STACKED + ToplistWidgetFlatType: + default: flat + description: Top list widget flat display type. + enum: + - flat + example: flat + type: string + x-enum-varnames: + - FLAT + TopologyQueryDataStreamsDataSource: + description: Name of the data source. + enum: + - data_streams + example: data_streams + type: string + x-enum-varnames: + - DATA_STREAMS + TopologyQueryServiceMapDataSource: + description: Name of the data source. + enum: + - service_map + example: service_map + type: string + x-enum-varnames: + - SERVICE_MAP + NotebookMarkdownCellDefinitionType: + default: markdown + description: Type of the markdown cell. + enum: + - markdown + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + NumberFormatUnitCanonical: + description: Canonical unit. + properties: + per_unit_name: + description: The name of the unit per item. + example: bytes type: string type: - description: Type of widget, must be group. - example: group + $ref: '#/components/schemas/NumberFormatUnitScaleType' + unit_name: + description: The name of the unit. + example: bytes type: string - widgets: - description: Widgets inside the powerpack. + type: object + NumberFormatUnitCustom: + description: Custom unit. + properties: + label: + description: The label for the custom unit. + maxLength: 12 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/NumberFormatUnitCustomType' + type: object + NumberFormatUnitScaleType: + description: The type of unit scale. + enum: + - canonical_unit + example: canonical_unit + type: string + x-enum-varnames: + - CANONICAL_UNIT + FormulaAndFunctionEventAggregation: + description: Aggregation methods for event platform queries. + enum: + - count + - cardinality + - median + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + example: avg + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - MEDIAN + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + FormulaAndFunctionEventQueryGroupByList: + description: List of objects used to group by. + items: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBy' + type: array + FormulaAndFunctionEventQueryGroupByFields: + description: Flat group by configuration using multiple event facet fields. + properties: + fields: + description: List of event facets to group by. example: - - definition: - content: example - type: note - layout: - height: 5 - width: 10 - x: 0 - 'y': 0 + - hostname + - service items: - $ref: '#/components/schemas/PowerpackInnerWidgets' + description: Event facet. + type: string type: array + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBySort' required: - - widgets - - layout_type - - type + - fields type: object - PowerpackGroupWidgetLayout: - description: Powerpack group widget layout. + ProductAnalyticsAudienceAccountSubqueryV1: + description: Product Analytics audience account subquery. properties: - height: - description: The height of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - width: - description: The width of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - x: - description: >- - The position of the widget on the x (horizontal) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - 'y': - description: >- - The position of the widget on the y (vertical) axis. Should be a - non-negative integer. - example: 0 + name: + description: The name of the account subquery. + type: string + query: + description: The query string for the account subquery. + type: string + type: object + ProductAnalyticsAudienceSegmentSubqueryV1: + description: Product Analytics audience segment subquery. + properties: + name: + description: The name of the segment subquery. + type: string + segment_id: + description: The unique identifier of the segment. + type: string + type: object + ProductAnalyticsAudienceUserSubqueryV1: + description: Product Analytics audience user subquery. + properties: + name: + description: The name of the user subquery. + type: string + query: + description: The query string for the user subquery. + type: string + type: object + CalendarInterval: + additionalProperties: false + description: Calendar interval definition. + properties: + alignment: + description: Alignment of the interval. Valid values depend on the interval type. For `day`, use hours (for example, `1am`, `2pm`, or `14`). For `week`, use day names (for example, `monday`). For `month`, use day-of-month ordinals (for example, `1st`, `15th`). For `year` or `quarter`, use month names (for example, `january`). + example: monday + type: string + quantity: + description: Quantity of the interval. + example: 1 format: int64 - minimum: 0 type: integer + timezone: + description: Timezone for the interval. + example: UTC + type: string + type: + $ref: '#/components/schemas/CalendarIntervalType' required: - - x - - 'y' - - width - - height + - type type: object - WidgetLiveSpan: - description: The available timeframes depend on the widget you are using. + FormulaAndFunctionEventQueryGroupBySort: + description: Options for sorting group by results. + properties: + aggregation: + $ref: '#/components/schemas/FormulaAndFunctionEventAggregation' + metric: + description: Metric used for sorting group by results. + type: string + order: + $ref: '#/components/schemas/QuerySortOrderV1' + required: + - aggregation + type: object + ProductAnalyticsEventQueryV1: + additionalProperties: false + description: Product Analytics event query. + properties: + data_source: + $ref: '#/components/schemas/ProductAnalyticsEventDataSource' + search: + $ref: '#/components/schemas/ProductAnalyticsEventQuerySearch' + required: + - data_source + - search + type: object + UserJourneyFormulaComputeMetric: + description: Metric for User Journey formula compute. `__dd.conversion` and `__dd.conversion_rate` accept `count` and `cardinality` as aggregations. `__dd.time_to_convert` accepts `avg`, `median`, `pc75`, `pc95`, `pc98`, `pc99`, `min`, and `max`. enum: - - 1m - - 5m - - 10m - - 15m - - 30m - - 1h - - 4h - - 1d - - 2d - - 1w - - 1mo - - 3mo - - 6mo - - 1y - - alert - example: 5m + - __dd.conversion + - __dd.conversion_rate + - __dd.time_to_convert + example: __dd.conversion_rate type: string x-enum-varnames: - - PAST_ONE_MINUTE - - PAST_FIVE_MINUTES - - PAST_TEN_MINUTES - - PAST_FIFTEEN_MINUTES - - PAST_THIRTY_MINUTES - - PAST_ONE_HOUR - - PAST_FOUR_HOURS - - PAST_ONE_DAY - - PAST_TWO_DAYS - - PAST_ONE_WEEK - - PAST_ONE_MONTH - - PAST_THREE_MONTHS - - PAST_SIX_MONTHS - - PAST_ONE_YEAR - - ALERT - RelationshipToUserData: - description: Relationship to user object. + - CONVERSION + - CONVERSION_RATE + - TIME_TO_CONVERT + FormulaType: + description: Set the sort type to formula. + enum: + - formula + example: formula + type: string + x-enum-varnames: + - FORMULA + GroupType: + description: Set the sort type to group. + enum: + - group + example: group + type: string + x-enum-varnames: + - GROUP + EventsAggregationValue: + description: Standard aggregation types for events-based queries. + enum: + - avg + - cardinality + - count + - delta + - earliest + - latest + - max + - median + - min + - most_frequent + - sum + type: string + x-enum-varnames: + - AVG + - CARDINALITY + - COUNT + - DELTA + - EARLIEST + - LATEST + - MAX + - MEDIAN + - MIN + - MOST_FREQUENT + - SUM + EventsAggregationPercentile: + description: Percentile aggregation. + pattern: ^pc[0-9]+(\.[0-9]+)?$ + type: string + RetentionCohortCriteriaTimeInterval: + additionalProperties: false + description: Time interval for cohort criteria. properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string type: - $ref: '#/components/schemas/UsersType' + $ref: '#/components/schemas/RetentionCohortCriteriaTimeIntervalType' + value: + $ref: '#/components/schemas/CalendarInterval' required: - - id - type + - value type: object - RelationshipToOrganizationData: - description: Relationship to organization object. + RetentionReturnCriteriaTimeInterval: + additionalProperties: false + description: Time interval for return criteria. properties: - id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 - type: string type: - $ref: '#/components/schemas/OrganizationsType' + $ref: '#/components/schemas/RetentionReturnCriteriaTimeIntervalType' + unit: + $ref: '#/components/schemas/RetentionReturnCriteriaTimeIntervalUnit' + value: + description: Value of the time interval. + example: 0 + format: double + type: number required: - - id - type + - value + - unit type: object - RelationshipToRoleData: - description: Relationship to role object. + UserJourneySearchGraphFilter: + description: Graph filter for user journey search. properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + name: + description: Filter name. + example: count type: string - type: - $ref: '#/components/schemas/RolesType' + operator: + description: Filter operator. + example: gt + type: string + target: + $ref: '#/components/schemas/UserJourneySearchTarget' + value: + description: Filter value. + example: 1 + format: int64 + type: integer type: object - PowerpackInnerWidgets: - description: Powerpack group widget definition of individual widgets. + TableWidgetTextFormatReplaceAllType: + description: Table widget text format replace all type. + enum: + - all + example: all + type: string + x-enum-varnames: + - ALL + TableWidgetTextFormatReplaceSubstringType: + description: Table widget text format replace sub-string type. + enum: + - substring + example: substring + type: string + x-enum-varnames: + - SUBSTRING + NumberFormatUnitCustomType: + description: The type of custom unit. + enum: + - custom_unit_label + type: string + x-enum-varnames: + - CUSTOM_UNIT_LABEL + FormulaAndFunctionEventQueryGroupBy: + description: List of objects used to group by. properties: - definition: - additionalProperties: {} - description: Information about widget. - example: - definition: - content: example - type: note - type: object - layout: - $ref: '#/components/schemas/PowerpackInnerWidgetLayout' + facet: + description: Event facet. + example: status. + type: string + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: '#/components/schemas/FormulaAndFunctionEventQueryGroupBySort' required: - - definition + - facet type: object - OrganizationsType: - default: orgs - description: Organizations resource type. + CalendarIntervalType: + description: Type of calendar interval. enum: - - orgs - example: orgs + - day + - week + - month + - year + - quarter + - minute + - hour + example: week type: string x-enum-varnames: - - ORGS - RolesType: - default: roles - description: Roles type. + - DAY + - WEEK + - MONTH + - YEAR + - QUARTER + - MINUTE + - HOUR + ProductAnalyticsEventDataSource: + description: Data source for Product Analytics event queries. enum: - - roles - example: roles + - product_analytics + example: product_analytics type: string x-enum-varnames: - - ROLES - PowerpackInnerWidgetLayout: - description: Powerpack inner widget layout. + - PRODUCT_ANALYTICS + ProductAnalyticsEventQuerySearch: + additionalProperties: false + description: Search configuration for Product Analytics event query. properties: - height: - description: The height of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - width: - description: The width of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - x: - description: >- - The position of the widget on the x (horizontal) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - 'y': - description: >- - The position of the widget on the y (vertical) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer + query: + description: RUM event search query used to filter views or actions. + example: '@type:view @view.name:/home' + type: string required: - - x - - 'y' - - width - - height + - query type: object + RetentionCohortCriteriaTimeIntervalType: + description: Type of time interval for cohort criteria. + enum: + - calendar + example: calendar + type: string + x-enum-varnames: + - CALENDAR + RetentionReturnCriteriaTimeIntervalType: + description: Type of time interval for return criteria. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + RetentionReturnCriteriaTimeIntervalUnit: + description: Unit of time for retention return criteria interval. + enum: + - day + - week + - month + example: day + type: string + x-enum-varnames: + - DAY + - WEEK + - MONTH responses: TooManyRequestsResponse: content: @@ -1180,7 +19731,86 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Too many requests + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + ForbiddenResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + NotFoundResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found parameters: + AnnotationStartTimeQueryParameter: + description: Start of the time window in milliseconds since the Unix epoch. + example: 1704067200000 + in: query + name: start_time + required: true + schema: + format: int64 + type: integer + AnnotationEndTimeQueryParameter: + description: End of the time window in milliseconds since the Unix epoch. + example: 1704153600000 + in: query + name: end_time + required: true + schema: + format: int64 + type: integer + AnnotationPageIDPathParameter: + description: |- + The ID of the page, prefixed with the page type and joined by a colon + (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). + example: dashboard:abc-def-xyz + in: path + name: page_id + required: true + schema: + type: string + AnnotationIDPathParameter: + description: The ID of the annotation. + example: 00000000-0000-0000-0000-000000000000 + in: path + name: annotation_id + required: true + schema: + format: uuid + type: string + SharedDashboardDashboardIDPathParameter: + description: ID of the dashboard. + in: path + name: dashboard_id + required: true + schema: + example: abc-def-ghi + type: string + DashboardIDPathParameter: + description: The ID of the dashboard. + example: abc-def-ghi + in: path + name: dashboard_id + required: true + schema: + type: string + SecureEmbedTokenPathParameter: + description: The share token identifying the secure embed. + example: s3cur3t0k3n-abcdef123456 + in: path + name: token + required: true + schema: + type: string PageOffset: description: Specific offset to use as the beginning of the returned page. in: query @@ -1192,6 +19822,81 @@ components: format: int64 type: integer x-stackQL-resources: + annotations: + id: datadog.dashboards.annotations + name: annotations + title: Annotations + methods: + list_annotations: + operation: + $ref: '#/paths/~1api~1v2~1annotation/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_annotation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1annotation/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_annotation: + operation: + $ref: '#/paths/~1api~1v2~1annotation~1{annotation_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_annotation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1annotation~1{annotation_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/annotations/methods/list_annotations' + insert: + - $ref: '#/components/x-stackQL-resources/annotations/methods/create_annotation' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/annotations/methods/delete_annotation' + replace: + - $ref: '#/components/x-stackQL-resources/annotations/methods/update_annotation' + annotation_pages: + id: datadog.dashboards.annotation_pages + name: annotation_pages + title: Annotation Pages + methods: + get_page_annotations: + operation: + $ref: '#/paths/~1api~1v2~1annotation~1page~1{page_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/annotation_pages/methods/get_page_annotations' + insert: [] + update: [] + delete: [] + replace: [] dashboard_list_items: id: datadog.dashboards.dashboard_list_items name: dashboard_list_items @@ -1199,47 +19904,207 @@ components: methods: delete_dashboard_list_items: operation: - $ref: >- - #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/delete + $ref: '#/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_dashboard_list_items: + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.dashboards + request: + nativeCasing: camel + create_dashboard_list_items: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_dashboard_list_items: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dashboard_list_items/methods/get_dashboard_list_items' + insert: + - $ref: '#/components/x-stackQL-resources/dashboard_list_items/methods/create_dashboard_list_items' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/dashboard_list_items/methods/delete_dashboard_list_items' + replace: + - $ref: '#/components/x-stackQL-resources/dashboard_list_items/methods/update_dashboard_list_items' + shared_dashboards: + id: datadog.dashboards.shared_dashboards + name: shared_dashboards + title: Shared Dashboards + methods: + list_shared_dashboards_by_dashboard_id: + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1{dashboard_id}~1shared/get' response: mediaType: application/json openAPIDocKey: '200' - get_dashboard_list_items: + objectKey: $.data + request: + nativeCasing: camel + create_public_dashboard: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/get + $ref: '#/paths/~1api~1v1~1dashboard~1public/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.dashboards - create_dashboard_list_items: + request: + nativeCasing: camel + delete_public_dashboard: operation: - $ref: >- - #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/post + $ref: '#/paths/~1api~1v1~1dashboard~1public~1{token}/delete' response: mediaType: application/json openAPIDocKey: '200' - update_dashboard_list_items: + request: + nativeCasing: camel + get_public_dashboard: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1public~1{token}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_public_dashboard: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1dashboard~1lists~1manual~1{dashboard_list_id}~1dashboards/put + $ref: '#/paths/~1api~1v1~1dashboard~1public~1{token}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/dashboard_list_items/methods/get_dashboard_list_items + - $ref: '#/components/x-stackQL-resources/shared_dashboards/methods/list_shared_dashboards_by_dashboard_id' + - $ref: '#/components/x-stackQL-resources/shared_dashboards/methods/get_public_dashboard' insert: - - $ref: >- - #/components/x-stackQL-resources/dashboard_list_items/methods/create_dashboard_list_items + - $ref: '#/components/x-stackQL-resources/shared_dashboards/methods/create_public_dashboard' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/dashboard_list_items/methods/delete_dashboard_list_items + - $ref: '#/components/x-stackQL-resources/shared_dashboards/methods/delete_public_dashboard' replace: - - $ref: >- - #/components/x-stackQL-resources/dashboard_list_items/methods/update_dashboard_list_items + - $ref: '#/components/x-stackQL-resources/shared_dashboards/methods/update_public_dashboard' + shared_secure_embeds: + id: datadog.dashboards.shared_secure_embeds + name: shared_secure_embeds + title: Shared Secure Embeds + methods: + create_dashboard_secure_embed: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1{dashboard_id}~1shared~1secure-embed/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_dashboard_secure_embed: + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1{dashboard_id}~1shared~1secure-embed~1{token}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_dashboard_secure_embed: + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1{dashboard_id}~1shared~1secure-embed~1{token}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_dashboard_secure_embed: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1dashboard~1{dashboard_id}~1shared~1secure-embed~1{token}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/shared_secure_embeds/methods/get_dashboard_secure_embed' + insert: + - $ref: '#/components/x-stackQL-resources/shared_secure_embeds/methods/create_dashboard_secure_embed' + update: + - $ref: '#/components/x-stackQL-resources/shared_secure_embeds/methods/update_dashboard_secure_embed' + delete: + - $ref: '#/components/x-stackQL-resources/shared_secure_embeds/methods/delete_dashboard_secure_embed' + replace: [] + dashboard_usage: + id: datadog.dashboards.dashboard_usage + name: dashboard_usage + title: Dashboard Usage + methods: + list_dashboards_usage: + operation: + $ref: '#/paths/~1api~1v2~1dashboards~1usage/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + get_dashboard_usage: + operation: + $ref: '#/paths/~1api~1v2~1dashboards~1{dashboard_id}~1usage/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dashboard_usage/methods/get_dashboard_usage' + - $ref: '#/components/x-stackQL-resources/dashboard_usage/methods/list_dashboards_usage' + insert: [] + update: [] + delete: [] + replace: [] powerpacks: id: datadog.dashboards.powerpacks name: powerpacks @@ -1252,18 +20117,34 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + skip: + paramName: page[offset] create_powerpack: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1powerpacks/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_powerpack: operation: $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_powerpack: operation: $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/get' @@ -1271,30 +20152,538 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_powerpack: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1powerpacks~1{powerpack_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/powerpacks/methods/get_powerpack' - - $ref: >- - #/components/x-stackQL-resources/powerpacks/methods/list_powerpacks + - $ref: '#/components/x-stackQL-resources/powerpacks/methods/list_powerpacks' + insert: + - $ref: '#/components/x-stackQL-resources/powerpacks/methods/create_powerpack' + update: + - $ref: '#/components/x-stackQL-resources/powerpacks/methods/update_powerpack' + delete: + - $ref: '#/components/x-stackQL-resources/powerpacks/methods/delete_powerpack' + replace: [] + report_dataset_schedules: + id: datadog.dashboards.report_dataset_schedules + name: report_dataset_schedules + title: Report Dataset Schedules + methods: + list_dataset_report_schedules: + operation: + $ref: '#/paths/~1api~1v2~1reporting~1dataset~1{dataset_id}~1schedules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/report_dataset_schedules/methods/list_dataset_report_schedules' + insert: [] + update: [] + delete: [] + replace: [] + reports: + id: datadog.dashboards.reports + name: reports + title: Reports + methods: + print_report: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reporting~1print/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + report_schedules: + id: datadog.dashboards.report_schedules + name: report_schedules + title: Report Schedules + methods: + create_report_schedule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + list_report_schedules: + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule~1list/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 50 + skip: + paramName: page[offset] + get_report_schedules_for_resource: + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule~1{resource_type}~1{resource_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + delete_report_schedule: + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule~1{schedule_uuid}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_report_schedule: + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule~1{schedule_uuid}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + patch_report_schedule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule~1{schedule_uuid}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + toggle_report_schedule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reporting~1schedule~1{schedule_uuid}~1toggle/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/report_schedules/methods/get_report_schedules_for_resource' + - $ref: '#/components/x-stackQL-resources/report_schedules/methods/get_report_schedule' + - $ref: '#/components/x-stackQL-resources/report_schedules/methods/list_report_schedules' + insert: + - $ref: '#/components/x-stackQL-resources/report_schedules/methods/create_report_schedule' + update: + - $ref: '#/components/x-stackQL-resources/report_schedules/methods/patch_report_schedule' + delete: + - $ref: '#/components/x-stackQL-resources/report_schedules/methods/delete_report_schedule' + replace: [] + graph_snapshots: + id: datadog.dashboards.graph_snapshots + name: graph_snapshots + title: Graph Snapshots + methods: + create_snapshot: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1snapshot/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_graph_snapshot: + operation: + $ref: '#/paths/~1api~1v1~1graph~1snapshot/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/graph_snapshots/methods/get_graph_snapshot' + insert: [] + update: [] + delete: [] + replace: [] + widgets: + id: datadog.dashboards.widgets + name: widgets + title: Widgets + methods: + search_widgets: + operation: + $ref: '#/paths/~1api~1v2~1widgets~1{experience_type}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 100 + create_widget: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1widgets~1{experience_type}/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_widget: + operation: + $ref: '#/paths/~1api~1v2~1widgets~1{experience_type}~1{uuid}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_widget: + operation: + $ref: '#/paths/~1api~1v2~1widgets~1{experience_type}~1{uuid}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_widget: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1widgets~1{experience_type}~1{uuid}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/widgets/methods/get_widget' + - $ref: '#/components/x-stackQL-resources/widgets/methods/search_widgets' + insert: + - $ref: '#/components/x-stackQL-resources/widgets/methods/create_widget' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/widgets/methods/delete_widget' + replace: + - $ref: '#/components/x-stackQL-resources/widgets/methods/update_widget' + dashboards: + id: datadog.dashboards.dashboards + name: dashboards + title: Dashboards + methods: + delete_dashboards: + operation: + $ref: '#/paths/~1api~1v1~1dashboard/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + list_dashboards: + operation: + $ref: '#/paths/~1api~1v1~1dashboard/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.dashboards + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: count + skip: + paramName: start + restore_dashboards: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1dashboard/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + create_dashboard: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1dashboard/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_dashboard: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1{dashboard_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_dashboard: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1{dashboard_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_dashboard: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1{dashboard_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dashboards/methods/get_dashboard' + - $ref: '#/components/x-stackQL-resources/dashboards/methods/list_dashboards' insert: - - $ref: >- - #/components/x-stackQL-resources/powerpacks/methods/create_powerpack + - $ref: '#/components/x-stackQL-resources/dashboards/methods/create_dashboard' update: - - $ref: >- - #/components/x-stackQL-resources/powerpacks/methods/update_powerpack + - $ref: '#/components/x-stackQL-resources/dashboards/methods/restore_dashboards' + delete: + - $ref: '#/components/x-stackQL-resources/dashboards/methods/delete_dashboard' + - $ref: '#/components/x-stackQL-resources/dashboards/methods/delete_dashboards' + replace: + - $ref: '#/components/x-stackQL-resources/dashboards/methods/update_dashboard' + dashboard_lists: + id: datadog.dashboards.dashboard_lists + name: dashboard_lists + title: Dashboard Lists + methods: + list_dashboard_lists: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1lists~1manual/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.dashboard_lists + request: + nativeCasing: camel + create_dashboard_list: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1lists~1manual/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_dashboard_list: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1lists~1manual~1{list_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_dashboard_list: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1lists~1manual~1{list_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_dashboard_list: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1lists~1manual~1{list_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dashboard_lists/methods/get_dashboard_list' + - $ref: '#/components/x-stackQL-resources/dashboard_lists/methods/list_dashboard_lists' + insert: + - $ref: '#/components/x-stackQL-resources/dashboard_lists/methods/create_dashboard_list' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/dashboard_lists/methods/delete_dashboard_list' + replace: + - $ref: '#/components/x-stackQL-resources/dashboard_lists/methods/update_dashboard_list' + shared_dashboard_invitations: + id: datadog.dashboards.shared_dashboard_invitations + name: shared_dashboard_invitations + title: Shared Dashboard Invitations + methods: + delete_public_dashboard_invitation: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1public~1{token}~1invitation/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_public_dashboard_invitations: + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1public~1{token}~1invitation/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + send_public_dashboard_invitation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1dashboard~1public~1{token}~1invitation/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/shared_dashboard_invitations/methods/get_public_dashboard_invitations' + insert: + - $ref: '#/components/x-stackQL-resources/shared_dashboard_invitations/methods/send_public_dashboard_invitation' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/powerpacks/methods/delete_powerpack + - $ref: '#/components/x-stackQL-resources/shared_dashboard_invitations/methods/delete_public_dashboard_invitation' replace: [] + notebooks: + id: datadog.dashboards.notebooks + name: notebooks + title: Notebooks + methods: + list_notebooks: + operation: + $ref: '#/paths/~1api~1v1~1notebooks/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: count + skip: + paramName: start + create_notebook: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1notebooks/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_notebook: + operation: + $ref: '#/paths/~1api~1v1~1notebooks~1{notebook_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_notebook: + operation: + $ref: '#/paths/~1api~1v1~1notebooks~1{notebook_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_notebook: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1notebooks~1{notebook_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/notebooks/methods/get_notebook' + - $ref: '#/components/x-stackQL-resources/notebooks/methods/list_notebooks' + insert: + - $ref: '#/components/x-stackQL-resources/notebooks/methods/create_notebook' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/notebooks/methods/delete_notebook' + replace: + - $ref: '#/components/x-stackQL-resources/notebooks/methods/update_notebook' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/digital_experience.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/digital_experience.yaml index 6db6ec5..0682619 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/digital_experience.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/digital_experience.yaml @@ -4,24 +4,330 @@ info: description: datadog digital_experience API version: '1.0' paths: - /api/v2/rum/analytics/aggregate: + /api/v2/prodlytics: post: - description: >- - The API endpoint to aggregate RUM events into buckets of computed - metrics and timeseries. - operationId: AggregateRUMEvents + description: |- + Send server-side events to Product Analytics. Server-side events are retained for 15 months. + + Server-Side events in Product Analytics are helpful for tracking events that occur on the server, + as opposed to client-side events, which are captured by Real User Monitoring (RUM) SDKs. + This allows for a more comprehensive view of the user journey by including actions that happen on the server. + Typical examples could be `checkout.completed` or `payment.processed`. + + Ingested server-side events are integrated into Product Analytics to allow users to select and filter + these events in the event picker, similar to how views or actions are handled. + + **Requirements:** + - At least one of `usr`, `account`, or `session` must be provided with a valid ID. + - The `application.id` must reference a Product Analytics-enabled application. + + **Custom Attributes:** + Any additional fields in the payload are flattened and searchable as facets. + For example, a payload with `{"customer": {"tier": "premium"}}` is searchable with + the syntax `@customer.tier:premium` in Datadog. + + The status codes answered by the HTTP API are: + - 202: Accepted: The request has been accepted for processing + - 400: Bad request (likely an issue in the payload formatting) + - 401: Unauthorized (likely a missing API Key) + - 403: Permission issue (likely using an invalid API Key) + - 408: Request Timeout, request should be retried after some time + - 413: Payload too large (batch is above 5MB uncompressed) + - 429: Too Many Requests, request should be retried after some time + - 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time + - 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time + operationId: SubmitProductAnalyticsEvent requestBody: content: application/json: + examples: + default: + value: + application: + id: 123abcde-123a-123b-1234-123456789abc + event: + name: payment.processed + type: server + usr: + id: '123' + event-with-account: + description: Send a server-side event linked to an account. + summary: Event with account ID + value: + account: + id: account-456 + application: + id: 123abcde-123a-123b-1234-123456789abc + event: + name: checkout.completed + type: server + event-with-custom-attributes: + description: Send a server-side event with additional custom attributes. + summary: Event with custom attributes + value: + application: + id: 123abcde-123a-123b-1234-123456789abc + customer: + tier: premium + event: + name: payment.processed + type: server + usr: + id: '123' + event-with-session: + description: Send a server-side event linked to a session. + summary: Event with session ID + value: + application: + id: 123abcde-123a-123b-1234-123456789abc + event: + name: form.submitted + session: + id: session-789 + type: server + simple-event-with-user: + description: Send a server-side event linked to a user. + summary: Simple event with user ID + value: + application: + id: 123abcde-123a-123b-1234-123456789abc + event: + name: payment.processed + type: server + usr: + id: '123' schema: - $ref: '#/components/schemas/RUMAggregateRequest' + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItem' + description: Server-side event to send (JSON format). + required: true + responses: + '202': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: Request accepted for processing (always 202 empty JSON). + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Forbidden + '408': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Request Timeout + '413': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Payload Too Large + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Too Many Requests + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Internal Server Error + '503': + content: + application/json: + schema: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventErrors' + description: Service Unavailable + security: + - apiKeyAuth: [] + summary: Send server-side events + tags: + - Product Analytics + x-codegen-request-body-name: body + servers: + - url: https://{site:.+} + variables: + site: + default: browser-intake-datadoghq.com + description: The intake domain for the regional site. + /api/v2/product-analytics/accounts/facet_info: + post: + description: Get facet information for account attributes including possible values and counts + operationId: GetAccountFacetInfo + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + schema: + $ref: '#/components/schemas/FacetInfoRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + id: facet_info_response + type: users_facet_info schema: - $ref: '#/components/schemas/RUMAnalyticsAggregateResponse' + $ref: '#/components/schemas/FacetInfoResponse' + description: Successful response with facet information + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get account facet info + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/accounts/query: + post: + description: Query accounts with flexible filtering by account properties + operationId: QueryAccounts + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + limit: 20 + query: plan_type:enterprise AND user_count:>100 AND subscription_status:active + select_columns: + - account_id + - account_name + - user_count + - plan_type + - subscription_status + - created_at + - mrr + - industry + sort: + field: user_count + order: DESC + wildcard_search_term: tech + id: query_account_request + type: query_account_request + schema: + $ref: '#/components/schemas/QueryAccountRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + hits: + - account_id: '123' + account_name: Example Account + plan_type: enterprise + user_count: 150 + total: 1 + id: query_response + type: query_response + schema: + $ref: '#/components/schemas/QueryResponse' + description: Successful response with account data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query accounts + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/analytics/list: + post: + description: |- + List the individual event records matching an analytics query. + Use `columns` to choose the attributes returned on each row, `sort` to order the rows, + and `limit` to cap how many are returned. + operationId: QueryProductAnalyticsList + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1771232048460 + query: + columns: + - '@view.name' + limit: 100 + query: + data_source: product_analytics + search: + query: '@type:view' + to: 1771836848262 + type: formula_analytics_extended_list_request + schema: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + records: [] + total_count: 0 + id: abc-123 + type: list_response + schema: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -29,1961 +335,14997 @@ paths: $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Aggregate RUM events + summary: List analytics events tags: - - RUM + - Product Analytics x-codegen-request-body-name: body x-permission: operator: OR permissions: - rum_apps_read - /api/v2/rum/applications: - get: - description: List all the RUM applications in your organization. - operationId: GetRUMApplications + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/analytics/scalar: + post: + description: |- + Compute scalar analytics results for Product Analytics data. + Returns aggregated values (counts, averages, percentiles) optionally grouped by facets. + operationId: QueryProductAnalyticsScalar + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1771232048460 + query: + compute: + aggregation: count + query: + data_source: product_analytics + search: + query: '@type:view' + to: 1771836848262 + type: formula_analytics_extended_request + schema: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + columns: [] + id: abc-123 + type: scalar_response schema: - $ref: '#/components/schemas/RUMApplicationsResponse' + $ref: '#/components/schemas/ProductAnalyticsScalarResponse' description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all the RUM applications + summary: Compute scalar analytics tags: - - RUM + - Product Analytics + x-codegen-request-body-name: body x-permission: operator: OR permissions: - rum_apps_read + /api/v2/product-analytics/analytics/timeseries: post: - description: Create a new RUM application in your organization. - operationId: CreateRUMApplication + description: |- + Compute timeseries analytics results for Product Analytics data. + Returns time-bucketed values for charts and trend analysis. + The `compute.interval` field (milliseconds) is required for time bucketing. + operationId: QueryProductAnalyticsTimeseries requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + from: 1771232048460 + query: + compute: + aggregation: count + query: + data_source: product_analytics + search: + query: '@type:view' + to: 1771836848262 + type: formula_analytics_extended_request schema: - $ref: '#/components/schemas/RUMApplicationCreateRequest' + $ref: '#/components/schemas/ProductAnalyticsAnalyticsRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + id: abc-123 + type: timeseries_response schema: - $ref: '#/components/schemas/RUMApplicationResponse' + $ref: '#/components/schemas/ProductAnalyticsTimeseriesResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new RUM application + summary: Compute timeseries analytics tags: - - RUM + - Product Analytics x-codegen-request-body-name: body x-permission: operator: OR permissions: - - rum_apps_write - /api/v2/rum/applications/{app_id}/relationships/retention_filters: - patch: - description: >- - Order RUM retention filters for a RUM application. - - Returns RUM retention filter objects without attributes from the request - body when the request is successful. - operationId: OrderRetentionFilters - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' + - rum_apps_read + /api/v2/product-analytics/journey/funnel: + post: + description: |- + Compute a funnel over an ordered sequence of Product Analytics events. + Returns the per-step conversion counts, conversion rates, and elapsed times, + optionally segmented by group-by facets. + operationId: QueryProductAnalyticsJourneyFunnel requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: '@type:view @view.name:Login' + B: + data_source: product_analytics + search: + query: '@type:action @action.target.name:Submit' + to: 1756857600000 + type: journey_request schema: - $ref: '#/components/schemas/RumRetentionFiltersOrderRequest' - description: New definition of the RUM retention filter. + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + end_to_end_conversion_rate: 0.42 + end_to_end_elapsed_time: + avg: 9400 + max: 86400 + min: 1200 + funnel_steps: + - elapsed_time_to_next_step: + avg: 5100 + max: 42000 + min: 900 + groups: [] + label: A + unit: millisecond + value: 1200 + initial_count: 1200 + id: 00000000-0000-0000-0000-000000000000 + type: funnel_response schema: - $ref: '#/components/schemas/RumRetentionFiltersOrderResponse' - description: Ordered + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Order RUM retention filters + summary: Compute journey funnel analysis tags: - - Rum Retention Filters + - Product Analytics x-codegen-request-body-name: body - /api/v2/rum/applications/{app_id}/retention_filters: - get: - description: Get the list of RUM retention filters for a RUM application. - operationId: ListRetentionFilters - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/journey/list: + post: + description: |- + Return the individual sessions that reached, or dropped off at, a given step of the journey. + Each row contains the identity join key, the event timestamp, and the columns requested + in `entity_columns`. + operationId: QueryProductAnalyticsJourneyList + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + entity_columns: + - '@usr.name' + limit: 50 + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: '@type:view @view.name:Login' + B: + data_source: product_analytics + search: + query: '@type:action @action.target.name:Submit' + to: 1756857600000 + type: journey_list_request + schema: + $ref: '#/components/schemas/ProductAnalyticsJourneyListRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + entity: session + records: + - '@session.id': 00000000-0000-0000-0000-000000000001 + '@usr.name': Jane Doe + timestamp: 1756425600000 + total_count: 231 + id: 00000000-0000-0000-0000-000000000000 + type: journey_list_response schema: - $ref: '#/components/schemas/RumRetentionFiltersResponse' + $ref: '#/components/schemas/ProductAnalyticsJourneyListResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all RUM retention filters + summary: List journey entities tags: - - Rum Retention Filters + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/journey/scalar: post: - description: >- - Create a RUM retention filter for a RUM application. - - Returns RUM retention filter objects from the request body when the - request is successful. - operationId: CreateRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' + description: |- + Compute scalar results for a journey query, such as the conversion count, + the conversion rate, or the time to convert, optionally segmented by group-by facets. + operationId: QueryProductAnalyticsJourneyScalar requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: __dd.conversion_rate + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: '@type:view @view.name:Login' + B: + data_source: product_analytics + search: + query: '@type:action @action.target.name:Submit' + to: 1756857600000 + type: formula_journey_request schema: - $ref: '#/components/schemas/RumRetentionFilterCreateRequest' - description: The definition of the new RUM retention filter. + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + columns: [] + id: 00000000-0000-0000-0000-000000000000 + type: journey_scalar_response schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: Created + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a RUM retention filter + summary: Compute journey scalar analytics tags: - - Rum Retention Filters + - Product Analytics x-codegen-request-body-name: body - /api/v2/rum/applications/{app_id}/retention_filters/{rf_id}: - delete: - description: Delete a RUM retention filter for a RUM application. - operationId: DeleteRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/journey/timeseries: + post: + description: |- + Compute timeseries results for a journey query. + Returns one series per group-by combination, bucketed by the requested interval. + operationId: QueryProductAnalyticsJourneyTimeseries + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + interval: 3600000 + query: + compute: + aggregation: count + search: + expression: A -> B + node_objects: + A: + data_source: product_analytics + search: + query: '@type:view @view.name:Login' + B: + data_source: product_analytics + search: + query: '@type:action @action.target.name:Submit' + to: 1756857600000 + type: formula_journey_request + schema: + $ref: '#/components/schemas/ProductAnalyticsFormulaJourneyRequest' + required: true responses: - '204': - description: No Content + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + id: 00000000-0000-0000-0000-000000000000 + type: journey_timeseries_response + schema: + $ref: '#/components/schemas/ProductAnalyticsJourneyTimeseriesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a RUM retention filter + summary: Compute journey timeseries analytics tags: - - Rum Retention Filters - get: - description: Get a RUM retention filter for a RUM application. - operationId: GetRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/grid: + post: + description: |- + Compute a retention grid, showing how much of each cohort came back over each subsequent period. + Rows are cohorts, columns are return periods, and each cell holds the count and rate of entities that returned. + operationId: QueryProductAnalyticsRetentionGrid + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: __dd.retention_rate + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:Signup' + time_interval: + type: calendar + value: + alignment: monday + quantity: 1 + timezone: UTC + type: week + retention_entity: '@usr.id' + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view' + to: 1756857600000 + type: retention_grid_request + schema: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridRequest' + description: The retention grid query. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + cohorts: [] + retention_entity: '@usr.id' + retention_periods: [] + id: 00000000-0000-0000-0000-000000000000 + type: retention_grid_response schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' + $ref: '#/components/schemas/ProductAnalyticsRetentionGridResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a RUM retention filter + summary: Compute a retention grid tags: - - Rum Retention Filters - patch: - description: >- - Update a RUM retention filter for a RUM application. - - Returns RUM retention filter objects from the request body when the - request is successful. - operationId: UpdateRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/list: + post: + description: |- + List the individual users or accounts counted in one cell of the retention grid. + Set `computation_scope` to the cohort and return period you want to examine. + operationId: QueryProductAnalyticsRetentionList requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + columns: + - field: + path: '@usr.email' + computation_scope: + cohort_target: + type: index + value: 0 + return_period_target: + type: index + value: 1 + type: cell + limit: 100 + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:Signup' + time_interval: + type: calendar + value: + quantity: 1 + type: week + retention_entity: '@usr.id' + return_condition: conversion_on_or_after + to: 1756857600000 + type: retention_list_request schema: - $ref: '#/components/schemas/RumRetentionFilterUpdateRequest' - description: New definition of the RUM retention filter. + $ref: '#/components/schemas/ProductAnalyticsRetentionListRequest' + description: The retention list query. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + records: [] + retention_entity: '@usr.id' + id: 00000000-0000-0000-0000-000000000000 + type: retention_list_response schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: Updated + $ref: '#/components/schemas/ProductAnalyticsRetentionListResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a RUM retention filter + summary: List the entities behind a retention cell tags: - - Rum Retention Filters + - Product Analytics x-codegen-request-body-name: body - /api/v2/rum/applications/{id}: - delete: - description: Delete an existing RUM application in your organization. - operationId: DeleteRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: No Content - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a RUM application - tags: - - RUM x-permission: operator: OR permissions: - - rum_apps_write - get: - description: Get the RUM application with given ID in your organization. - operationId: GetRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/scalar: + post: + description: Compute retention as a single value per group, suitable for a query value or top list widget. + operationId: QueryProductAnalyticsRetentionScalar + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: __dd.retention_rate + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:Signup' + time_interval: + type: calendar + value: + alignment: monday + quantity: 1 + timezone: UTC + type: week + retention_entity: '@usr.id' + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view' + to: 1756857600000 + type: formula_retention_request + schema: + $ref: '#/components/schemas/ProductAnalyticsFormulaRetentionRequest' + description: The retention scalar query. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + columns: [] + type: scalar_response schema: - $ref: '#/components/schemas/RUMApplicationResponse' + $ref: '#/components/schemas/ProductAnalyticsScalarResponse' description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a RUM application + summary: Compute retention scalar values tags: - - RUM + - Product Analytics + x-codegen-request-body-name: body x-permission: operator: OR permissions: - rum_apps_read - patch: - description: Update the RUM application with given ID in your organization. - operationId: UpdateRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/retention/timeseries: + post: + description: |- + Compute retention as a series of values over time, using the same query definition as the + retention grid. + operationId: QueryProductAnalyticsRetentionTimeseries requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + from: 1756425600000 + query: + compute: + aggregation: count + metric: __dd.retention_rate + search: + cohort_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view @view.name:Signup' + time_interval: + type: calendar + value: + alignment: monday + quantity: 1 + timezone: UTC + type: week + retention_entity: '@usr.id' + return_condition: conversion_on_or_after + return_criteria: + base_query: + data_source: product_analytics + search: + query: '@type:view' + to: 1756857600000 + type: formula_retention_request schema: - $ref: '#/components/schemas/RUMApplicationUpdateRequest' + $ref: '#/components/schemas/ProductAnalyticsFormulaRetentionRequest' + description: The retention timeseries query. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + type: timeseries_response schema: - $ref: '#/components/schemas/RUMApplicationResponse' + $ref: '#/components/schemas/ProductAnalyticsTimeseriesResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity. + '403': + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a RUM application + summary: Compute retention timeseries tags: - - RUM + - Product Analytics x-codegen-request-body-name: body x-permission: operator: OR permissions: - - rum_apps_write - /api/v2/rum/config/metrics: - get: - description: Get the list of configured rum-based metrics with their definitions. - operationId: ListRumMetrics + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/sankey: + post: + description: |- + Compute a Sankey diagram of how sessions flow between the values of two facets, + showing where users continue and where they drop off at each step. + operationId: QueryProductAnalyticsSankey + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + definition: + entries_per_step: 10 + number_of_steps: 3 + source: '@view.name' + target: '@view.name' + search: + query: '@type:view' + time: + from: 1756425600000 + to: 1756857600000 + type: sankey_request + schema: + $ref: '#/components/schemas/ProductAnalyticsSankeyRequest' + description: The Sankey diagram query. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + links: [] + nodes: [] + id: 00000000-0000-0000-0000-000000000000 + type: sankey_response schema: - $ref: '#/components/schemas/RumMetricsResponse' + $ref: '#/components/schemas/ProductAnalyticsSankeyResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all rum-based metrics + summary: Compute a Sankey diagram tags: - - Rum Metrics + - Product Analytics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/product-analytics/users/event_filtered_query: post: - description: >- - Create a metric based on your organization's RUM data. - - Returns the rum-based metric object from the request body when the - request is successful. - operationId: CreateRumMetric + description: Query users filtered by both user properties and event platform data + operationId: QueryEventFilteredUsers requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + event_query: + query: '@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform' + time_frame: + end: 1761309676 + start: 1760100076 + include_row_count: true + limit: 25 + query: user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - first_country_code + - first_browser_name + - events_count + - session_count + - error_count + - avg_loading_time + id: query_event_filtered_users_request + type: query_event_filtered_users_request schema: - $ref: '#/components/schemas/RumMetricCreateRequest' - description: The definition of the new rum-based metric. + $ref: '#/components/schemas/QueryEventFilteredUsersRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + hits: + - first_browser_name: Chrome + first_country_code: US + user_email: test@example.com + user_id: '123' + total: 1 + id: query_response + type: query_response schema: - $ref: '#/components/schemas/RumMetricResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + $ref: '#/components/schemas/QueryResponse' + description: Successful response with filtered user data '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a rum-based metric + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query event filtered users tags: - - Rum Metrics - x-codegen-request-body-name: body - /api/v2/rum/config/metrics/{metric_id}: - delete: - description: Delete a specific rum-based metric from your organization. - operationId: DeleteRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/users/facet_info: + post: + description: Get facet information for user attributes including possible values and counts + operationId: GetUserFacetInfo + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + schema: + $ref: '#/components/schemas/FacetInfoRequest' + required: true responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + id: facet_info_response + type: users_facet_info + schema: + $ref: '#/components/schemas/FacetInfoResponse' + description: Successful response with facet information '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a rum-based metric + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get user facet info tags: - - Rum Metrics + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/users/query: + post: + description: Query users with flexible filtering by user properties, with optional wildcard search + operationId: QueryUsers + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + limit: 25 + query: user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - user_name + - user_org_id + - first_country_code + - first_browser_name + - first_device_type + - last_seen + sort: + field: first_seen + order: DESC + wildcard_search_term: john + id: query_users_request + type: query_users_request + schema: + $ref: '#/components/schemas/QueryUsersRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + hits: + - user_email: test@example.com + user_id: '123' + total: 1 + id: query_response + type: query_response + schema: + $ref: '#/components/schemas/QueryResponse' + description: Successful response with user data + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Query users + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping: get: - description: Get a specific rum-based metric from your organization. - operationId: GetRumMetric + description: Get entity mapping configuration including all available attributes and their properties + operationId: GetMapping parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' + - description: The entity for which to get the mapping + in: path + name: entity + required: true + schema: + example: users + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: [] + id: get_mappings_response + type: get_mappings_response schema: - $ref: '#/components/schemas/RumMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/schemas/GetMappingResponse' + description: Successful response with entity mapping configuration '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a rum-based metric + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get mapping tags: - - Rum Metrics - patch: - description: >- - Update a specific rum-based metric from your organization. - - Returns the rum-based metric object from the request body when the - request is successful. - operationId: UpdateRumMetric + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping/connection: + post: + description: Create a new data connection and its fields for an entity + operationId: CreateConnection parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' + - description: The entity for which to create the connection + in: path + name: entity + required: true + schema: + example: users + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + fields: + - description: Customer subscription tier from `CRM` + display_name: Customer Tier + id: customer_tier + source_name: subscription_tier + type: string + - description: Customer lifetime value in `USD` + display_name: Lifetime Value + id: lifetime_value + source_name: ltv + type: number + join_attribute: user_email + join_type: email + type: ref_table + id: crm-integration + type: connection_id schema: - $ref: '#/components/schemas/RumMetricUpdateRequest' - description: New definition of the rum-based metric. + $ref: '#/components/schemas/CreateConnectionRequest' + required: true + responses: + '201': + description: Connection created successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create connection + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + put: + description: Update an existing data connection by adding, updating, or deleting fields + operationId: UpdateConnection + parameters: + - description: The entity for which to update the connection + in: path + name: entity + required: true + schema: + example: users + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields_to_add: + - description: Net Promoter Score from customer surveys + display_name: NPS Score + groups: + - Satisfaction + - Metrics + id: nps_score + source_name: net_promoter_score + type: number + fields_to_delete: + - old_revenue_field + fields_to_update: + - field_id: lifetime_value + updated_display_name: Customer Lifetime Value (`USD`) + updated_groups: + - Financial + - Metrics + id: crm-integration + type: connection_id + schema: + $ref: '#/components/schemas/UpdateConnectionRequest' required: true responses: '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + description: Connection updated successfully '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a rum-based metric + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update connection tags: - - Rum Metrics - x-codegen-request-body-name: body - /api/v2/rum/events: - get: - description: >- - List endpoint returns events that match a RUM search query. - - [Results are paginated][1]. - - - Use this endpoint to see your latest RUM events. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - operationId: ListRUMEvents + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping/connection/{id}: + delete: + description: Delete an existing data connection for an entity + operationId: DeleteConnection parameters: - - description: Search query following RUM syntax. - example: '@type:session @application_id:xxxx' - in: query - name: filter[query] - required: false + - description: The connection ID to delete + in: path + name: id + required: true schema: + example: connection-id-123 type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false + - description: The entity for which to delete the connection + in: path + name: entity + required: true schema: - format: date-time + example: users type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false + responses: + '204': + description: Connection deleted successfully + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete connection + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/product-analytics/{entity}/mapping/connections: + get: + description: List all data connections for an entity + operationId: ListConnections + parameters: + - description: The entity for which to list connections + in: path + name: entity + required: true schema: - format: date-time + example: users type: string - - description: Order of events in results. + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + connections: [] + id: list_connections_response + type: list_connections_response + schema: + $ref: '#/components/schemas/ListConnectionsResponse' + description: Successful response with list of connections + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List connections + tags: + - Rum Audience Management + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/replay/heatmap/snapshots: + get: + description: List heatmap snapshots. + operationId: ListReplayHeatmapSnapshots + parameters: + - description: Device type to filter snapshots. in: query - name: sort - required: false + name: filter[device_type] schema: - $ref: '#/components/schemas/RUMSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: desktop + type: string + - description: View name to filter snapshots. in: query - name: page[cursor] - required: false + name: filter[view_name] + required: true schema: + example: /home type: string - - description: Maximum number of events in the response. - example: 25 + - description: Maximum number of snapshots to return. in: query name: page[limit] - required: false schema: - default: 10 - format: int32 - maximum: 1000 + example: 10 + format: int64 type: integer + - description: Filter by application ID. + in: query + name: filter[application_id] + schema: + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + snapshot_name: My Snapshot + view_name: /home + id: 00000000-0000-0000-0000-000000000001 + type: snapshots schema: - $ref: '#/components/schemas/RUMEventsResponse' + $ref: '#/components/schemas/SnapshotArray' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List replay heatmap snapshots + tags: + - Rum Replay Heatmaps + post: + description: Create a heatmap snapshot. + operationId: CreateReplayHeatmapSnapshot + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + is_device_type_selected_by_user: false + snapshot_name: My Snapshot + start: 0 + view_name: /home + type: snapshots + schema: + $ref: '#/components/schemas/SnapshotCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + snapshot_name: My Snapshot + view_name: /home + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: '#/components/schemas/Snapshot' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create replay heatmap snapshot + tags: + - Rum Replay Heatmaps + /api/v2/replay/heatmap/snapshots/{snapshot_id}: + delete: + description: Delete a heatmap snapshot. + operationId: DeleteReplayHeatmapSnapshot + parameters: + - description: Unique identifier of the heatmap snapshot. + in: path + name: snapshot_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete replay heatmap snapshot + tags: + - Rum Replay Heatmaps + patch: + description: Update a heatmap snapshot. + operationId: UpdateReplayHeatmapSnapshot + parameters: + - description: Unique identifier of the heatmap snapshot. + in: path + name: snapshot_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + event_id: 11111111-2222-3333-4444-555555555555 + is_device_type_selected_by_user: false + start: 0 + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: '#/components/schemas/SnapshotUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + device_type: desktop + event_id: 11111111-2222-3333-4444-555555555555 + snapshot_name: My Snapshot + view_name: /home + id: 00000000-0000-0000-0000-000000000001 + type: snapshots + schema: + $ref: '#/components/schemas/Snapshot' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update replay heatmap snapshot + tags: + - Rum Replay Heatmaps + /api/v2/rum/analytics/aggregate: + post: + description: The API endpoint to aggregate RUM events into buckets of computed metrics and timeseries. + operationId: AggregateRUMEvents + requestBody: + content: + application/json: + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: '@duration' + type: timeseries + filter: + from: now-15m + query: '@type:session AND @session.type:user' + to: now + group_by: + - facet: '@view.time_spent' + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + schema: + $ref: '#/components/schemas/RUMAggregateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + buckets: + - by: + '@session.type': user + '@type': view + computes: + c0: 19 + meta: + elapsed: 132 + request_id: abc-123 + status: done + schema: + $ref: '#/components/schemas/RUMAnalyticsAggregateResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of RUM events + summary: Aggregate RUM events + tags: + - RUM + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + /api/v2/rum/applications: + get: + description: List all the RUM applications in your organization. + operationId: GetRUMApplications + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: abc-123 + created_at: 1659479836169 + created_by_handle: example-handle + name: my_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: '#/components/schemas/RUMApplicationsResponse' + description: OK + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List all the RUM applications tags: - RUM - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data x-permission: operator: OR permissions: - rum_apps_read - /api/v2/rum/events/search: post: - description: >- - List endpoint returns RUM events that match a RUM search query. - - [Results are paginated][1]. - - - Use this endpoint to build complex RUM events filtering and search. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - operationId: SearchRUMEvents + description: Create a new RUM application in your organization. + operationId: CreateRUMApplication requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: my_new_rum_application + product_analytics_retention_state: MAX + rum_event_processing_state: ALL + type: browser + type: rum_application_create schema: - $ref: '#/components/schemas/RUMSearchEventsRequest' + $ref: '#/components/schemas/RUMApplicationCreateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + application_id: abc-123 + client_token: abc-123-token + created_at: 1659479836169 + created_by_handle: example-handle + name: my_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application schema: - $ref: '#/components/schemas/RUMEventsResponse' + $ref: '#/components/schemas/RUMApplicationResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search RUM events + summary: Create a new RUM application tags: - RUM x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data x-permission: operator: OR permissions: - - rum_apps_read -components: - schemas: - RUMAggregateRequest: - description: >- - The object sent with the request to retrieve aggregation buckets of RUM - events from your organization. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/RUMCompute' - type: array - filter: - $ref: '#/components/schemas/RUMQueryFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RUMGroupBy' - type: array - options: - $ref: '#/components/schemas/RUMQueryOptions' - page: - $ref: '#/components/schemas/RUMQueryPageOptions' - type: object - RUMAnalyticsAggregateResponse: - description: The response object for the RUM events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/RUMAggregationBucketsResponse' - links: - $ref: '#/components/schemas/RUMResponseLinks' - meta: - $ref: '#/components/schemas/RUMResponseMetadata' - type: object - RUMApplicationsResponse: - description: RUM applications response. - properties: - data: - description: RUM applications array response. - items: - $ref: '#/components/schemas/RUMApplicationList' - type: array - type: object - RUMApplicationCreateRequest: - description: RUM application creation request attributes. - properties: - data: - $ref: '#/components/schemas/RUMApplicationCreate' - required: - - data - type: object - RUMApplicationResponse: - description: RUM application response. - properties: - data: - $ref: '#/components/schemas/RUMApplication' - type: object - RumRetentionFiltersOrderRequest: - description: >- - The list of RUM retention filter IDs along with their corresponding type - to reorder. - - All retention filter IDs should be included in the list created for a - RUM application. - properties: - data: - description: A list of RUM retention filter IDs along with type. - items: - $ref: '#/components/schemas/RumRetentionFiltersOrderData' - type: array - type: object - RumRetentionFiltersOrderResponse: - description: The list of RUM retention filter IDs along with type. - properties: - data: - description: A list of RUM retention filter IDs along with type. - items: - $ref: '#/components/schemas/RumRetentionFiltersOrderData' - type: array - type: object - RumRetentionFiltersResponse: - description: All RUM retention filters for a RUM application. - properties: - data: - description: A list of RUM retention filters. - items: - $ref: '#/components/schemas/RumRetentionFilterData' - type: array - type: object - RumRetentionFilterCreateRequest: - description: The RUM retention filter body to create. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterCreateData' - required: - - data - type: object - RumRetentionFilterResponse: - description: The RUM retention filter object. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterData' - type: object - RumRetentionFilterUpdateRequest: - description: The RUM retention filter body to update. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterUpdateData' - required: - - data - type: object - RUMApplicationUpdateRequest: - description: RUM application update request. - properties: - data: - $ref: '#/components/schemas/RUMApplicationUpdate' - required: - - data - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - RumMetricsResponse: - description: All the available rum-based metric objects. - properties: - data: - description: A list of rum-based metric objects. - items: - $ref: '#/components/schemas/RumMetricResponseData' - type: array - type: object + - rum_apps_write + /api/v2/rum/applications/{app_id}/relationships/retention_filters: + patch: + description: |- + Order RUM retention filters for a RUM application. + Returns RUM retention filter objects without attributes from the request body when the request is successful. + operationId: OrderRetentionFilters + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFiltersOrderRequest' + description: New definition of the RUM retention filter. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFiltersOrderResponse' + description: Ordered + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Order RUM retention filters + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{app_id}/retention_filters: + get: + description: Get the list of RUM retention filters for a RUM application. + operationId: ListRetentionFilters + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25 + enabled: true + event_type: session + name: Retention filter for session + query: '@session.has_replay:true' + sample_rate: 50.5 + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFiltersResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all RUM retention filters + tags: + - Rum Retention Filters + post: + description: |- + Create a RUM retention filter for a RUM application. + Returns RUM retention filter objects from the request body when the request is successful. + operationId: CreateRetentionFilter + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25 + enabled: true + event_type: session + name: Retention filter for session + query: '@session.has_replay:true' + sample_rate: 50.5 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFilterCreateRequest' + description: The definition of the new RUM retention filter. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: session + name: Retention filter for session + query: '@session.has_replay:true' + sample_rate: 50.5 + id: 00000000-0000-0000-0000-000000000001 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFilterResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a RUM retention filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{app_id}/retention_filters/exclusion: + get: + description: |- + Get the list of exclusion filters for a RUM application. + The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) is always returned first. + operationId: ListExclusionFilters + parameters: + - $ref: '#/components/parameters/RumExclusionFilterApplicationIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + name: Ignored / Excluded errors from Error Tracking + id: error_tracking_exclusion_filter + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + - attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: '@error.message:*extension*' + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: '#/components/schemas/RumExclusionFiltersResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all RUM exclusion filters + tags: + - Rum Retention Filters + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create an exclusion filter for a RUM application. + Returns the created exclusion filter when the request is successful. + operationId: CreateExclusionFilter + parameters: + - $ref: '#/components/parameters/RumExclusionFilterApplicationIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: '@error.message:*extension*' + type: exclusion_filters + schema: + $ref: '#/components/schemas/RumExclusionFilterCreateRequest' + description: The definition of the new RUM exclusion filter. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: '@error.message:*extension*' + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: '#/components/schemas/RumExclusionFilterResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a RUM exclusion filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/applications/{app_id}/retention_filters/exclusion/{ef_id}: + delete: + description: |- + Delete an exclusion filter for a RUM application. + The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) cannot be deleted; + attempting to do so returns a `405 Method Not Allowed` response. + operationId: DeleteExclusionFilter + parameters: + - $ref: '#/components/parameters/RumExclusionFilterApplicationIDParameter' + - $ref: '#/components/parameters/RumExclusionFilterIDParameter' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '405': + $ref: '#/components/responses/RumExclusionFilterMethodNotAllowedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM exclusion filter + tags: + - Rum Retention Filters + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single exclusion filter for a RUM application. + operationId: GetExclusionFilter + parameters: + - $ref: '#/components/parameters/RumExclusionFilterApplicationIDParameter' + - $ref: '#/components/parameters/RumExclusionFilterIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + event_type: error + name: Exclude noisy browser extension errors + query: '@error.message:*extension*' + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: '#/components/schemas/RumExclusionFilterResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM exclusion filter + tags: + - Rum Retention Filters + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update an exclusion filter for a RUM application. + For the built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`), only `enabled` can be + updated; `name`, `event_type`, and `query` must be omitted. + Returns the updated exclusion filter when the request is successful. + operationId: UpdateExclusionFilter + parameters: + - $ref: '#/components/parameters/RumExclusionFilterApplicationIDParameter' + - $ref: '#/components/parameters/RumExclusionFilterIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + event_type: error + name: Exclude noisy browser extension errors + query: '@error.message:*extension*' + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: exclusion_filters + schema: + $ref: '#/components/schemas/RumExclusionFilterUpdateRequest' + description: New definition of the RUM exclusion filter. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + event_type: error + name: Exclude noisy browser extension errors + query: '@error.message:*extension*' + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + meta: + enabled_at: 1735689600000 + updated_at: 1735689600000 + updated_by_handle: jane.doe@example.com + type: exclusion_filters + schema: + $ref: '#/components/schemas/RumExclusionFilterResponse' + description: Updated + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a RUM exclusion filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/applications/{app_id}/retention_filters/permanent: + get: + description: |- + Get the list of permanent RUM retention filters for a RUM application. + Permanent retention filters are predefined filters that cannot be created or deleted. + For each filter, the `editability` block indicates which cross-product fields can be updated. + operationId: ListPermanentRetentionFilters + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 100 + description: RUM retains all Synthetics sessions. + editability: + trace_editable: true + name: Synthetics Sessions + id: synthetics_sessions + type: permanent_retention_filters + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 100 + description: RUM retains all sessions with forced replays. + editability: + trace_editable: true + name: Forced Replay Sessions + id: forced_replay_sessions + type: permanent_retention_filters + - attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 100 + description: Configures APM trace sampling for RUM sessions using flat sampling. + editability: + trace_editable: false + name: RUM APM Flat Sampling + id: rum_apm_flat_sampling + type: permanent_retention_filters + schema: + $ref: '#/components/schemas/RumPermanentRetentionFiltersResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all permanent RUM retention filters + tags: + - Rum Retention Filters + /api/v2/rum/applications/{app_id}/retention_filters/permanent/{permanent_rf_id}: + get: + description: Get a permanent RUM retention filter for a RUM application by its identifier. + operationId: GetPermanentRetentionFilter + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + - $ref: '#/components/parameters/RumPermanentRetentionFilterIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 75 + description: RUM retains all Synthetics sessions. + editability: + trace_editable: true + name: Synthetics Sessions + id: synthetics_sessions + type: permanent_retention_filters + schema: + $ref: '#/components/schemas/RumPermanentRetentionFilterResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a permanent RUM retention filter + tags: + - Rum Retention Filters + patch: + description: |- + Update the cross-product sampling configuration of a permanent RUM retention filter for a RUM application. + Only fields marked as editable in the `editability` block of the filter can be updated. + Updating a non-editable field returns a `400` response. + operationId: UpdatePermanentRetentionFilter + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + - $ref: '#/components/parameters/RumPermanentRetentionFilterIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 50 + id: synthetics_sessions + type: permanent_retention_filters + schema: + $ref: '#/components/schemas/RumPermanentRetentionFilterUpdateRequest' + description: New configuration of the permanent RUM retention filter. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 50 + description: RUM retains all Synthetics sessions. + editability: + trace_editable: true + name: Synthetics Sessions + id: synthetics_sessions + type: permanent_retention_filters + schema: + $ref: '#/components/schemas/RumPermanentRetentionFilterResponse' + description: Updated + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a permanent RUM retention filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{app_id}/retention_filters/{rf_id}: + delete: + description: Delete a RUM retention filter for a RUM application. + operationId: DeleteRetentionFilter + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + - $ref: '#/components/parameters/RumRetentionFilterIDParameter' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM retention filter + tags: + - Rum Retention Filters + get: + description: Get a RUM retention filter for a RUM application. + operationId: GetRetentionFilter + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + - $ref: '#/components/parameters/RumRetentionFilterIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25 + enabled: true + event_type: session + name: Retention filter for session + query: '@session.has_replay:true' + sample_rate: 50.5 + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFilterResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM retention filter + tags: + - Rum Retention Filters + patch: + description: |- + Update a RUM retention filter for a RUM application. + Returns RUM retention filter objects from the request body when the request is successful. + operationId: UpdateRetentionFilter + parameters: + - $ref: '#/components/parameters/RumApplicationIDParameter' + - $ref: '#/components/parameters/RumRetentionFilterIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25 + enabled: true + event_type: session + name: Retention filter for session + query: '@session.has_replay:true' + sample_rate: 50.5 + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFilterUpdateRequest' + description: New definition of the RUM retention filter. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cross_product_sampling: + trace_enabled: true + trace_sample_rate: 25 + enabled: true + event_type: session + name: Retention filter for session + query: '@session.has_replay:true' + sample_rate: 50.5 + id: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: retention_filters + schema: + $ref: '#/components/schemas/RumRetentionFilterResponse' + description: Updated + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a RUM retention filter + tags: + - Rum Retention Filters + x-codegen-request-body-name: body + /api/v2/rum/applications/{id}: + delete: + description: Delete an existing RUM application in your organization. + operationId: DeleteRUMApplication + parameters: + - description: RUM application ID. + in: path + name: id + required: true + schema: + type: string + responses: + '204': + description: No Content + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM application + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_apps_write + get: + description: Get the RUM application with given ID in your organization. + operationId: GetRUMApplication + parameters: + - description: RUM application ID. + in: path + name: id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc-123 + client_token: abc-123-token + created_at: 1659479836169 + created_by_handle: example-handle + name: my_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: '#/components/schemas/RUMApplicationResponse' + description: OK + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM application + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_apps_read + patch: + description: Update the RUM application with given ID in your organization. + operationId: UpdateRUMApplication + parameters: + - description: RUM application ID. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: updated_name_for_my_existing_rum_application + product_analytics_retention_state: MAX + rum_event_processing_state: ALL + type: browser + id: abcd1234-0000-0000-abcd-1234abcd5678 + type: rum_application_update + schema: + $ref: '#/components/schemas/RUMApplicationUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc-123 + client_token: abc-123-token + created_at: 1659479836169 + created_by_handle: example-handle + name: updated_name_for_my_existing_rum_application + org_id: 123 + type: browser + updated_at: 1659479836169 + updated_by_handle: example-handle + id: abc-123 + type: rum_application + schema: + $ref: '#/components/schemas/RUMApplicationResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a RUM application + tags: + - RUM + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_write + /api/v2/rum/config: + get: + description: Get the RUM configuration for your organization. + operationId: GetRumConfig + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + enforced_application_tags: true + enforced_application_tags_updated_at: '2024-01-15T09:30:00.000Z' + enforced_application_tags_updated_by: user@example.com + ootb_metrics_version: 5 + ootb_metrics_version_installed_at: '2024-01-15T09:30:00.000Z' + retention_filters_enabled: true + retention_filters_enabled_updated_at: '2024-01-15T09:30:00.000Z' + retention_filters_enabled_updated_by: contract-update-job + id: '1234' + type: rum_config + schema: + $ref: '#/components/schemas/RumConfigResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the RUM configuration + tags: + - RUM Config + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the RUM configuration for your organization. + Returns the RUM configuration object from the request body when the request is successful. + operationId: UpdateRumConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enforced_application_tags: false + type: rum_config + schema: + $ref: '#/components/schemas/RumConfigUpdateRequest' + description: New definition of the RUM configuration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + enforced_application_tags: false + enforced_application_tags_updated_at: '2024-01-15T09:30:00.000Z' + enforced_application_tags_updated_by: user@example.com + ootb_metrics_version: 5 + ootb_metrics_version_installed_at: '2024-01-15T09:30:00.000Z' + retention_filters_enabled: true + retention_filters_enabled_updated_at: '2024-01-15T09:30:00.000Z' + retention_filters_enabled_updated_by: contract-update-job + id: '1234' + type: rum_config + schema: + $ref: '#/components/schemas/RumConfigResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update the RUM configuration + tags: + - RUM Config + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create the RUM configuration for your organization. + Returns the RUM configuration object from the request body when the request is successful. + operationId: CreateRumConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enforced_application_tags: true + type: rum_config + schema: + $ref: '#/components/schemas/RumConfigCreateRequest' + description: The definition of the RUM configuration to create. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + enforced_application_tags: true + enforced_application_tags_updated_at: '2024-01-15T09:30:00.000Z' + enforced_application_tags_updated_by: user@example.com + ootb_metrics_version: 5 + ootb_metrics_version_installed_at: '2024-01-15T09:30:00.000Z' + retention_filters_enabled: true + retention_filters_enabled_updated_at: '2024-01-15T09:30:00.000Z' + retention_filters_enabled_updated_by: contract-update-job + id: '1234' + type: rum_config + schema: + $ref: '#/components/schemas/RumConfigResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create the RUM configuration + tags: + - RUM Config + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/metrics: + get: + description: Get the list of configured RUM-based metrics with their definitions. + operationId: ListRumMetrics + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + event_type: session + filter: + query: '@service:web-api' + group_by: + - path: '@browser.name' + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: '#/components/schemas/RumMetricsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all RUM-based metrics + tags: + - Rum Metrics + post: + description: |- + Create a metric based on your organization's RUM data. + Returns the RUM-based metric object from the request body when the request is successful. + operationId: CreateRumMetric + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + event_type: session + filter: + query: '@service:web-api' + group_by: + - path: '@browser.name' + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: '#/components/schemas/RumMetricCreateRequest' + description: The definition of the new RUM-based metric. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + event_type: session + filter: + query: '@service:web-api' + group_by: + - path: '@browser.name' + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: '#/components/schemas/RumMetricResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a RUM-based metric + tags: + - Rum Metrics + x-codegen-request-body-name: body + /api/v2/rum/config/metrics/{metric_id}: + delete: + description: Delete a specific RUM-based metric from your organization. + operationId: DeleteRumMetric + parameters: + - $ref: '#/components/parameters/RumMetricIDParameter' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM-based metric + tags: + - Rum Metrics + get: + description: Get a specific RUM-based metric from your organization. + operationId: GetRumMetric + parameters: + - $ref: '#/components/parameters/RumMetricIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + event_type: session + filter: + query: '@service:web-api' + group_by: + - path: '@browser.name' + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: '#/components/schemas/RumMetricResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM-based metric + tags: + - Rum Metrics + patch: + description: |- + Update a specific RUM-based metric from your organization. + Returns the RUM-based metric object from the request body when the request is successful. + operationId: UpdateRumMetric + parameters: + - $ref: '#/components/parameters/RumMetricIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + include_percentiles: true + filter: + query: '@service:web-api' + group_by: + - path: '@browser.name' + tag_name: browser_name + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: '#/components/schemas/RumMetricUpdateRequest' + description: New definition of the RUM-based metric. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + event_type: session + filter: + query: '@service:web-api' + group_by: + - path: '@browser.name' + tag_name: browser_name + uniqueness: + when: match + id: rum.sessions.web.count + type: rum_metrics + schema: + $ref: '#/components/schemas/RumMetricResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a RUM-based metric + tags: + - Rum Metrics + x-codegen-request-body-name: body + /api/v2/rum/config/retention-quota/{scope_type}/{scope_id}: + delete: + description: Delete the RUM retention quota configuration for a given scope. + operationId: DeleteRumQuotaConfig + parameters: + - $ref: '#/components/parameters/RumRetentionQuotaScopeTypeParameter' + - $ref: '#/components/parameters/RumRetentionQuotaScopeIDParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM retention quota configuration + tags: + - RUM Retention Quotas + x-permission: + operator: OR + permissions: + - rum_retention_filters_write + get: + description: Get the RUM retention quota configuration for a given scope. + operationId: GetRumQuotaConfig + parameters: + - $ref: '#/components/parameters/RumRetentionQuotaScopeTypeParameter' + - $ref: '#/components/parameters/RumRetentionQuotaScopeIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom: + daily_reset_time: '08:00' + daily_reset_timezone: '+09:00' + quota_reached_action: stop + session_limit: 1000000 + window_type: daily + mode: custom + org_id: 2 + updated_at: '2026-03-04T15:37:54.951447Z' + updated_by: test@example.com + id: cd73a516-a481-4af5-8352-9b577465c77b + type: rum_quota_config + schema: + $ref: '#/components/schemas/RumRetentionQuotaConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM retention quota configuration + tags: + - RUM Retention Quotas + x-permission: + operator: OR + permissions: + - rum_retention_filters_read + put: + description: |- + Create or update the RUM retention quota configuration for a given scope. + Returns the retention quota configuration object when the request is successful. + operationId: UpsertRumQuotaConfig + parameters: + - $ref: '#/components/parameters/RumRetentionQuotaScopeTypeParameter' + - $ref: '#/components/parameters/RumRetentionQuotaScopeIDParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom: + daily_reset_time: '08:00' + daily_reset_timezone: '+09:00' + quota_reached_action: stop + session_limit: 1000000 + window_type: daily + mode: custom + id: cd73a516-a481-4af5-8352-9b577465c77b + type: rum_quota_config + schema: + $ref: '#/components/schemas/RumRetentionQuotaConfigUpdateRequest' + description: The definition of the RUM retention quota configuration to create or update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom: + daily_reset_time: '08:00' + daily_reset_timezone: '+09:00' + quota_reached_action: stop + session_limit: 1000000 + window_type: daily + mode: custom + org_id: 2 + updated_at: '2026-03-04T21:52:53.526022Z' + updated_by: test@example.com + id: cd73a516-a481-4af5-8352-9b577465c77b + type: rum_quota_config + schema: + $ref: '#/components/schemas/RumRetentionQuotaConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create or update a RUM retention quota config + tags: + - RUM Retention Quotas + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_retention_filters_write + /api/v2/rum/config/teams-ownership/mappings: + get: + description: Get the list of teams ownership mappings for your organization, optionally filtered. + operationId: ListTeamsOwnershipMappings + parameters: + - $ref: '#/components/parameters/TeamsOwnershipFilterViewNameParameter' + - $ref: '#/components/parameters/TeamsOwnershipFilterTeamHandleParameter' + - $ref: '#/components/parameters/TeamsOwnershipFilterApplicationIdParameter' + - $ref: '#/components/parameters/TeamsOwnershipFilterServiceParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: 11111111-2222-3333-4444-555555555555 + created_at: '2026-01-15T09:30:00.000Z' + created_by: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + match_type: exact + org_id: 123456 + service: web-checkout + team_handle: team-rum + view_name: /checkout + id: '123' + type: teams_ownership_mappings + schema: + $ref: '#/components/schemas/TeamsOwnershipMappingsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List teams ownership mappings + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a teams ownership mapping for your organization. + Returns the teams ownership mapping object from the request body when the request is successful. + operationId: CreateTeamsOwnershipMapping + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: 11111111-2222-3333-4444-555555555555 + match_type: exact + service: web-checkout + team_handle: team-rum + view_name: /checkout + type: teams_ownership_mappings + schema: + $ref: '#/components/schemas/TeamsOwnershipMappingCreateRequest' + description: The definition of the teams ownership mapping to create. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: 11111111-2222-3333-4444-555555555555 + created_at: '2026-01-15T09:30:00.000Z' + created_by: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + match_type: exact + org_id: 123456 + service: web-checkout + team_handle: team-rum + view_name: /checkout + id: '123' + type: teams_ownership_mappings + schema: + $ref: '#/components/schemas/TeamsOwnershipMappingResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a teams ownership mapping + tags: + - Rum Teams Ownership + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/teams-ownership/mappings/operations: + post: + description: |- + Add and remove teams ownership mappings for your organization in a single atomic request, following + the JSON:API [atomic operations extension](https://jsonapi.org/ext/atomic/). + Operations are applied together: if any operation is invalid, none of the operations are applied. + Add operations are processed before remove operations, so results may not appear in the same + order as the request. + operationId: CreateTeamsOwnershipMappingsBatch + requestBody: + content: + application/json: + examples: + default: + value: + atomic:operations: + - data: + attributes: + application_id: 11111111-2222-3333-4444-555555555555 + match_type: exact + service: web-checkout + team_handle: team-rum + view_name: /checkout + type: teams_ownership_mappings + op: add + - op: remove + ref: + id: '456' + type: teams_ownership_mappings + schema: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchRequest' + description: The list of add and remove operations to apply atomically. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + atomic:results: + - data: + attributes: + application_id: 11111111-2222-3333-4444-555555555555 + created_at: '2026-01-15T09:30:00.000Z' + created_by: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + match_type: exact + org_id: 123456 + service: web-checkout + team_handle: team-rum + view_name: /checkout + id: '123' + type: teams_ownership_mappings + - {} + schema: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchResponse' + description: OK + '400': + content: + application/json: + examples: + default: + value: + errors: + - detail: prefix match_type is not enabled for this org + status: '400' + title: Bad Request + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: |- + Bad Request. One or more operations failed validation, so none of the operations were applied. + Errors are returned in the JSON:API atomic operations error format rather than the standard error response. + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found. One or more mappings requested for removal do not exist. + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict. One or more mappings requested for creation already exist. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Bulk create and remove teams ownership mappings + tags: + - Rum Teams Ownership + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/teams-ownership/mappings/{id}: + delete: + description: Delete a specific teams ownership mapping from your organization. + operationId: DeleteTeamsOwnershipMapping + parameters: + - $ref: '#/components/parameters/TeamsOwnershipMappingIdParameter' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a teams ownership mapping + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a specific teams ownership mapping from your organization. + operationId: GetTeamsOwnershipMapping + parameters: + - $ref: '#/components/parameters/TeamsOwnershipMappingIdParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: 11111111-2222-3333-4444-555555555555 + created_at: '2026-01-15T09:30:00.000Z' + created_by: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + match_type: exact + org_id: 123456 + service: web-checkout + team_handle: team-rum + view_name: /checkout + id: '123' + type: teams_ownership_mappings + schema: + $ref: '#/components/schemas/TeamsOwnershipMappingResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a teams ownership mapping + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/config/teams-ownership/rules: + get: + description: |- + Get the list of teams ownership rules for your organization, optionally filtered. + Rules group the underlying mappings by `view_name`, `application_id`, `service`, and `match_type`, + collapsing every team that owns the same view into a single entry. + operationId: ListTeamsOwnershipRules + parameters: + - $ref: '#/components/parameters/TeamsOwnershipFilterViewNameParameter' + - $ref: '#/components/parameters/TeamsOwnershipFilterTeamHandleParameter' + - $ref: '#/components/parameters/TeamsOwnershipFilterApplicationIdParameter' + - $ref: '#/components/parameters/TeamsOwnershipFilterServiceParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: 11111111-2222-3333-4444-555555555555 + match_type: exact + service: web-checkout + teams: + - mapping_id: '123' + team_handle: team-rum + view_name: /checkout + id: 3b1e2f7a9c4d6e8f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f + type: teams_ownership_grouped_mappings + schema: + $ref: '#/components/schemas/TeamsOwnershipRulesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List teams ownership rules + tags: + - Rum Teams Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/events: + get: + description: |- + List endpoint returns events that match a RUM search query. + [Results are paginated][1]. + + Use this endpoint to see your latest RUM events. + + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + operationId: ListRUMEvents + parameters: + - description: Search query following RUM syntax. + example: '@type:session @application_id:xxxx' + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events. + example: '2019-01-02T09:42:36.320Z' + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested events. + example: '2019-01-03T09:42:36.320Z' + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/RUMSort' + - description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + service: test-service + timestamp: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: rum + schema: + $ref: '#/components/schemas/RUMEventsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a list of RUM events + tags: + - RUM + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + x-permission: + operator: OR + permissions: + - rum_apps_read + /api/v2/rum/events/search: + post: + description: |- + List endpoint returns RUM events that match a RUM search query. + [Results are paginated][1]. + + Use this endpoint to build complex RUM events filtering and search. + + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + operationId: SearchRUMEvents + requestBody: + content: + application/json: + examples: + default: + value: + filter: + from: now-15m + query: '@type:session AND @session.type:user' + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: '#/components/schemas/RUMSearchEventsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + service: test-service + timestamp: '2024-01-01T00:00:00+00:00' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: rum + meta: + elapsed: 132 + request_id: abc-123 + status: done + schema: + $ref: '#/components/schemas/RUMEventsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Search RUM events + tags: + - RUM + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + x-permission: + operator: OR + permissions: + - rum_apps_read + /api/v2/rum/operations: + post: + description: Create a new RUM operation, defining the journey used to detect it from RUM events. + operationId: CreateRUMOperation + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RUMOperationCreateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc12345-1234-5678-abcd-ef1234567890 + category: conversion + created_at: '2024-01-15T10:30:00Z' + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: abc12345-1234-5678-abcd-ef1234567890 + description: Tracks users completing the checkout flow. + display_name: Checkout completed + feature_ids: + - feature-123 + journey_rum: + rum_steps: + - nodes: + - id: node-1 + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: node-2 + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - team:checkout + updated_at: null + updated_by: null + id: abc12345-1234-5678-abcd-ef1234567890 + type: operations + schema: + $ref: '#/components/schemas/RUMOperationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict. An operation with this name already exists. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/by-name/{name}: + get: + description: Retrieve a specific RUM operation by its unique name. + operationId: GetRUMOperationByName + parameters: + - description: The unique name of the RUM operation. + in: path + name: name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc12345-1234-5678-abcd-ef1234567890 + category: conversion + created_at: '2024-01-15T10:30:00Z' + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: abc12345-1234-5678-abcd-ef1234567890 + description: Tracks users completing the checkout flow. + display_name: Checkout completed + feature_ids: + - feature-123 + journey_rum: + rum_steps: + - nodes: + - id: node-1 + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: node-2 + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - team:checkout + updated_at: null + updated_by: null + id: abc12345-1234-5678-abcd-ef1234567890 + type: operations + schema: + $ref: '#/components/schemas/RUMOperationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM operation by name + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/search: + get: + description: Search RUM operations for your organization. Supports filtering by query, creator, team, feature, and application. + operationId: ListRUMOperations + parameters: + - description: A search query to filter operations by name. + in: query + name: query + required: false + schema: + example: checkout + type: string + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of items per page. Maximum of 100. + in: query + name: page[limit] + required: false + schema: + default: 50 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Filter operations by the email of their creator. + in: query + name: creator + required: false + schema: + example: user@example.com + type: string + - description: Filter operations by team. Accepts a comma-separated list of teams. + in: query + name: team + required: false + schema: + example: frontend,checkout + type: string + - description: Filter operations by feature ID. Accepts a comma-separated list of feature IDs. + in: query + name: feature_id + required: false + schema: + type: string + - description: Filter operations by RUM application ID. + in: query + name: application_id + required: false + schema: + example: abc12345-1234-5678-abcd-ef1234567890 + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + application_id: abc12345-1234-5678-abcd-ef1234567890 + category: conversion + created_at: '2024-01-15T10:30:00Z' + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: abc12345-1234-5678-abcd-ef1234567890 + description: Tracks users completing the checkout flow. + display_name: Checkout completed + feature_ids: + - feature-123 + journey_rum: + rum_steps: + - nodes: + - id: node-1 + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: node-2 + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - team:checkout + updated_at: null + updated_by: null + id: abc12345-1234-5678-abcd-ef1234567890 + type: operations + meta: + page: + first_offset: 0 + last_offset: 0 + limit: 50 + next_offset: null + offset: 0 + prev_offset: null + total: 1 + type: offset + schema: + $ref: '#/components/schemas/RUMOperationsListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Search RUM operations + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/strong_links: + get: + description: |- + List strong links between RUM operations and features. A strong link confirms that a feature + belongs to an operation. Provide `operation_id`, `feature_id`, or both to filter results; + at least one is required. + operationId: ListRUMOperationStrongLinks + parameters: + - description: Filter strong links by RUM operation ID. + in: query + name: operation_id + required: false + schema: + type: string + - description: Filter strong links by feature ID. + in: query + name: feature_id + required: false + schema: + type: string + - description: Offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of items per page. Maximum of 200. + in: query + name: page[limit] + required: false + schema: + default: 50 + format: int64 + maximum: 200 + minimum: 1 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-15T10:30:00Z' + description: Confirmed link between checkout_completed and feature-123. + feature_id: feature-123 + operation_id: abc12345-1234-5678-abcd-ef1234567890 + status: CONFIRMED + tags: + - team:checkout + updated_at: null + id: abc12345-1234-5678-abcd-ef1234567890:feature-123 + type: strong_links + meta: + limit: 50 + offset: 0 + total: 1 + schema: + $ref: '#/components/schemas/RUMOperationStrongLinksListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List RUM operation strong links + tags: + - RUM Operations + post: + description: |- + Create a strong link between a RUM operation and a feature, confirming that the feature + belongs to the operation. The operation can be identified by `operation_id` or `operation_name`; + if `operation_name` does not match an existing operation, a stub operation is created. + operationId: CreateRUMOperationStrongLink + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RUMOperationStrongLinkCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + description: Confirmed link between checkout_completed and feature-123. + feature_id: feature-123 + operation_id: abc12345-1234-5678-abcd-ef1234567890 + status: CONFIRMED + tags: + - team:checkout + updated_at: null + id: abc12345-1234-5678-abcd-ef1234567890:feature-123 + type: strong_links + schema: + $ref: '#/components/schemas/RUMOperationStrongLinkResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found. The referenced `operation_id` does not exist. + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict. A strong link between this operation and feature already exists. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a RUM operation strong link + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/strong_links/{rum_operation_id}/{feature_id}: + delete: + description: Delete the strong link between a RUM operation and a feature. + operationId: DeleteRUMOperationStrongLink + parameters: + - description: The unique identifier of the RUM operation. + in: path + name: rum_operation_id + required: true + schema: + type: string + - description: The unique identifier of the feature. + in: path + name: feature_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM operation strong link + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update the status of a strong link between a RUM operation and a feature. + operationId: UpdateRUMOperationStrongLink + parameters: + - description: The unique identifier of the RUM operation. + in: path + name: rum_operation_id + required: true + schema: + type: string + - description: The unique identifier of the feature. + in: path + name: feature_id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RUMOperationStrongLinkUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + description: Confirmed link between checkout_completed and feature-123. + feature_id: feature-123 + operation_id: abc12345-1234-5678-abcd-ef1234567890 + status: CONFIRMED + tags: + - team:checkout + updated_at: '2024-01-16T09:00:00Z' + id: abc12345-1234-5678-abcd-ef1234567890:feature-123 + type: strong_links + schema: + $ref: '#/components/schemas/RUMOperationStrongLinkResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a RUM operation strong link + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/operations/{rum_operation_id}: + delete: + description: Delete a RUM operation. + operationId: DeleteRUMOperation + parameters: + - description: The unique identifier of the RUM operation to delete. + in: path + name: rum_operation_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a specific RUM operation by its unique identifier. + operationId: GetRUMOperation + parameters: + - description: The unique identifier of the RUM operation. + in: path + name: rum_operation_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc12345-1234-5678-abcd-ef1234567890 + category: conversion + created_at: '2024-01-15T10:30:00Z' + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: abc12345-1234-5678-abcd-ef1234567890 + description: Tracks users completing the checkout flow. + display_name: Checkout completed + feature_ids: + - feature-123 + journey_rum: + rum_steps: + - nodes: + - id: node-1 + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: node-2 + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - team:checkout + updated_at: null + updated_by: null + id: abc12345-1234-5678-abcd-ef1234567890 + type: operations + schema: + $ref: '#/components/schemas/RUMOperationResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Update an existing RUM operation. Fields omitted from the request body keep their existing value, + with the exception of `journey_rum`, which is required and fully replaced on every update. + operationId: UpdateRUMOperation + parameters: + - description: The unique identifier of the RUM operation to update. + in: path + name: rum_operation_id + required: true + schema: + type: string + requestBody: + content: + application/json: + schema: + $ref: '#/components/schemas/RUMOperationUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: abc12345-1234-5678-abcd-ef1234567890 + category: conversion + created_at: '2024-01-15T10:30:00Z' + created_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: abc12345-1234-5678-abcd-ef1234567890 + description: Tracks users completing the checkout flow. + display_name: Checkout completed + feature_ids: + - feature-123 + journey_rum: + rum_steps: + - nodes: + - id: node-1 + query: '@type:action @action.type:click @action.target.name:"Checkout"' + type: start + - nodes: + - id: node-2 + query: '@type:action @action.type:click @action.target.name:"Confirm order"' + type: stop + name: checkout_completed + org_id: 123456 + tags: + - team:checkout + updated_at: '2024-01-16T09:00:00Z' + updated_by: + email: jane.doe@example.com + handle: jane.doe + name: Jane Doe + uuid: abc12345-1234-5678-abcd-ef1234567890 + id: abc12345-1234-5678-abcd-ef1234567890 + type: operations + schema: + $ref: '#/components/schemas/RUMOperationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict. An operation with this name already exists. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a RUM operation + tags: + - RUM Operations + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/query/insight/aggregated_long_tasks: + post: + description: Get aggregated long task data for a RUM view, grouped by invoker type and sampled across multiple view instances. + operationId: QueryAggregatedLongTasks + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1762437564 + sample_size: 20 + to: 1762523964 + view_name: /account/login(/:type) + type: aggregated_long_tasks + schema: + $ref: '#/components/schemas/AggregatedLongTasksRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1762437564 + long_tasks_by_invoker_type: + - impact_score: 0.4 + invoker_type: resolve-promise + stats_per_view: + total_blocking_time_ms: + average: 3504.1 + max: 3517.8 + min: 3500.1 + total_count: + average: 1 + max: 1 + min: 1 + top_invokers: + - file: src/pages/Gallery.tsx + impact_score: 0.67 + invoker: Response.json.then + stats_per_view: + total_count: + average: 1 + max: 1 + min: 1 + view_occurrences: 68 + view_occurrences: 68 + sampled_view_ids: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + to: 1762523964 + view_count: 20 + view_name: /account/login(/:type) + id: 2f0b3455 + type: aggregated_long_tasks + schema: + $ref: '#/components/schemas/AggregatedLongTasksResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Query aggregated long tasks + tags: + - RUM Insights + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/query/insight/aggregated_signals_problems: + post: + description: Get aggregated performance signals and problem detections for a RUM view, sampled across multiple view instances. + operationId: QueryAggregatedSignalsProblems + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1762437564 + sample_size: 30 + to: 1762523964 + view_name: /account/login(/:type) + type: aggregated_signals_problems + schema: + $ref: '#/components/schemas/AggregatedSignalsProblemsRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + from: 1710000000 + problem_detections: + high_script_evaluations: + - avg_duration: 300000000 + avg_forced_style_layout: 0 + fingerprint: v1$7766a8c2180aa153f5526ba8868999f8 + impact_score: 30 + instance_count: 3 + invoker_type: user-callback + source_category: null + source_function_name: handleClick + source_url: https://cdn.example.com/app.js + view_occurrences: 3 + sample_metadata: + failed: 2 + requested: 30 + sampled_view_ids: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + succeeded: 28 + success_rate: 0.93 + to: 1710003600 + view_name: /checkout + id: 2f0b3455 + type: aggregated_signals_problems + schema: + $ref: '#/components/schemas/AggregatedSignalsProblemsResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Query aggregated signals and problems + tags: + - RUM Insights + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/query/insight/aggregated_waterfall: + post: + description: Get aggregated network resource waterfall data for a RUM view, sampled across multiple view instances. + operationId: QueryAggregatedWaterfall + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + criteria: + metric: largest_contentful_paint + min: 0.3 + from: 1762437564 + sample_size: 20 + to: 1762523964 + view_name: /account/login(/:type) + type: aggregated_waterfall + schema: + $ref: '#/components/schemas/AggregatedWaterfallRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + criteria: + metric: largest_contentful_paint + min: 0.3 + from: 1762437564 + resources: + - avg_duration_ms: 839.1 + avg_start_time_ms: 1486.3 + cache_hit_rate_pct: 100 + cached_count: 27 + downloaded_count: 0 + http_method: GET + load_frequency_pct: 54 + max_duration_ms: 945.6 + median_duration_ms: 836.2 + min_duration_ms: 812.7 + p75_duration_ms: 844.1 + p95_duration_ms: 861.8 + resource_type: fetch + resource_url_path_group: /api/gallery + timing_breakdown: + avg_connect_ms: 0 + avg_dns_ms: 0 + avg_download_ms: 0.6 + avg_first_byte_ms: 59.9 + avg_redirect_ms: 0 + avg_ssl_ms: 0 + total_requests: 27 + views_with_resource: 27 + sampled_view_ids: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + to: 1762523964 + total_cache_hit_rate_pct: 0.5 + view_count: 20 + view_name: /account/login(/:type) + id: 2f0b3455 + type: aggregated_waterfall + schema: + $ref: '#/components/schemas/AggregatedWaterfallResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Query aggregated waterfall + tags: + - RUM Insights + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/rum/replay/playlists: + get: + description: List playlists. + operationId: ListRumReplayPlaylists + parameters: + - description: Filter playlists by the UUID of the user who created them. + in: query + name: filter[created_by_uuid] + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: Search query to filter playlists by name. + in: query + name: filter[query] + schema: + example: my playlist + type: string + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: My Playlist + id: '123' + type: rum_replay_playlist + schema: + $ref: '#/components/schemas/PlaylistArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay playlists + tags: + - Rum Replay Playlists + post: + description: Create a playlist. + operationId: CreateRumReplayPlaylist + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_by: + handle: john.doe@example.com + id: 00000000-0000-0000-0000-000000000001 + uuid: 00000000-0000-0000-0000-000000000001 + name: My Playlist + type: rum_replay_playlist + schema: + $ref: '#/components/schemas/Playlist' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Playlist + id: '123' + type: rum_replay_playlist + schema: + $ref: '#/components/schemas/Playlist' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create RUM replay playlist + tags: + - Rum Replay Playlists + /api/v2/rum/replay/playlists/{playlist_id}: + delete: + description: Delete a playlist. + operationId: DeleteRumReplayPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete RUM replay playlist + tags: + - Rum Replay Playlists + get: + description: Get a playlist. + operationId: GetRumReplayPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Playlist + id: '123' + type: rum_replay_playlist + schema: + $ref: '#/components/schemas/Playlist' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get RUM replay playlist + tags: + - Rum Replay Playlists + put: + description: Update a playlist. + operationId: UpdateRumReplayPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + created_by: + handle: john.doe@example.com + id: 00000000-0000-0000-0000-000000000001 + uuid: 00000000-0000-0000-0000-000000000001 + name: My Playlist + type: rum_replay_playlist + schema: + $ref: '#/components/schemas/Playlist' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Playlist + id: '123' + type: rum_replay_playlist + schema: + $ref: '#/components/schemas/Playlist' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update RUM replay playlist + tags: + - Rum Replay Playlists + /api/v2/rum/replay/playlists/{playlist_id}/sessions: + delete: + description: Remove sessions from a playlist. + operationId: BulkRemoveRumReplayPlaylistSessions + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: '#/components/schemas/SessionIdArray' + required: true + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Bulk remove RUM replay playlist sessions + tags: + - Rum Replay Playlists + get: + description: List sessions in a playlist. + operationId: ListRumReplayPlaylistSessions + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + track: main + id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: '#/components/schemas/PlaylistsSessionArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay playlist sessions + tags: + - Rum Replay Playlists + /api/v2/rum/replay/playlists/{playlist_id}/sessions/{session_id}: + delete: + description: Remove a session from a playlist. + operationId: RemoveRumReplaySessionFromPlaylist + parameters: + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Remove RUM replay session from playlist + tags: + - Rum Replay Playlists + put: + description: Add a session to a playlist. + operationId: AddRumReplaySessionToPlaylist + parameters: + - description: 'Data source type. Valid values: ''rum'' or ''product_analytics''. Defaults to ''rum''.' + in: query + name: data_source + schema: + example: rum + type: string + - description: Server-side timestamp in milliseconds. + in: query + name: ts + required: true + schema: + example: 1704067200000 + format: int64 + type: integer + - description: Unique identifier of the playlist. + in: path + name: playlist_id + required: true + schema: + example: 1234567 + format: int64 + type: integer + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + track: main + id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: '#/components/schemas/PlaylistsSession' + description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + track: main + id: 00000000-0000-0000-0000-000000000001 + type: rum_replay_session + schema: + $ref: '#/components/schemas/PlaylistsSession' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Add RUM replay session to playlist + tags: + - Rum Replay Playlists + /api/v2/rum/replay/sessions/{session_id}/views/{view_id}/segments: + get: + description: Get segments for a view. + operationId: GetSegments + parameters: + - description: Unique identifier of the view. + in: path + name: view_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000002 + type: string + - description: 'Storage source: ''event_platform'' or ''blob''.' + in: query + name: source + schema: + example: event_platform + type: string + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: Server-side timestamp in milliseconds. + in: query + name: ts + schema: + example: 1704067200000 + format: int64 + type: integer + - description: Maximum size in bytes for the segment list. + in: query + name: max_list_size + schema: + example: 1048576 + format: int64 + type: integer + - description: Paging token for pagination. + in: query + name: paging + schema: + example: eyJuZXh0IjoiYWJjMTIzIn0 + type: string + responses: + '200': + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get segments + tags: + - Rum Replay Sessions + /api/v2/rum/replay/sessions/{session_id}/watchers: + get: + description: List session watchers. + operationId: ListRumReplaySessionWatchers + parameters: + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle: test@example.com + last_watched_at: '2024-01-01T00:00:00+00:00' + watch_count: 1 + id: abc-123 + type: rum_replay_watcher + schema: + $ref: '#/components/schemas/WatcherArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay session watchers + tags: + - Rum Replay Viewership + /api/v2/rum/replay/sessions/{session_id}/watches: + delete: + description: Delete session watch history. + operationId: DeleteRumReplaySessionWatch + parameters: + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete RUM replay session watch + tags: + - Rum Replay Viewership + post: + description: Record a session watch. + operationId: CreateRumReplaySessionWatch + parameters: + - description: Unique identifier of the session. + in: path + name: session_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + event_id: 11111111-2222-3333-4444-555555555555 + timestamp: '2026-01-13T17:15:53.208340Z' + type: rum_replay_watch + schema: + $ref: '#/components/schemas/Watch' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + application_id: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + event_id: 11111111-2222-3333-4444-555555555555 + timestamp: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: rum_replay_watch + schema: + $ref: '#/components/schemas/Watch' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create RUM replay session watch + tags: + - Rum Replay Viewership + /api/v2/rum/replay/viewership-history/sessions: + get: + description: List watched sessions. + operationId: ListRumReplayViewershipHistorySessions + parameters: + - description: Start timestamp in milliseconds for watched_at filter. + in: query + name: filter[watched_at][start] + schema: + example: 1704067200000 + format: int64 + type: integer + - description: Page number for pagination (0-indexed). + in: query + name: page[number] + schema: + example: 0 + format: int64 + type: integer + - description: Filter by user UUID. Defaults to current user if not specified. + in: query + name: filter[created_by] + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: End timestamp in milliseconds for watched_at filter. + in: query + name: filter[watched_at][end] + schema: + example: 1704153600000 + format: int64 + type: integer + - description: Comma-separated list of session IDs to filter by. + in: query + name: filter[session_ids] + schema: + example: 11111111-2222-3333-4444-555555555555,22222222-3333-4444-5555-666666666666 + type: string + - description: Number of items per page. + in: query + name: page[size] + schema: + example: 25 + format: int64 + type: integer + - description: Filter by application ID. + in: query + name: filter[application_id] + schema: + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + last_watched_at: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: rum_replay_session + schema: + $ref: '#/components/schemas/ViewershipHistorySessionArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List RUM replay viewership history sessions + tags: + - Rum Replay Viewership + /api/v2/sourcemaps: + delete: + description: |- + Deletes source maps matching the specified filter criteria. Supports + dry-run mode to preview which source maps would be deleted without + performing the actual deletion. + operationId: DeleteSourcemaps + parameters: + - description: |- + The type of source map. Valid values are `js`, `jvm`, `ios`, + `react`, `flutter`, `elf`, `ndk`, `il2cpp`. + in: query + name: mapkind + required: true + schema: + $ref: '#/components/schemas/SourcemapMapKind' + - description: |- + When set to `true`, returns the source maps that would be deleted + without performing the actual deletion. When set to `false`, + performs the deletion. + in: query + name: dry_run + required: true + schema: + example: true + type: boolean + - description: |- + Filter by service names (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[service] + schema: + example: + - my-web-service + items: + type: string + type: array + style: form + - description: |- + Filter by version values (multiple values allowed, maximum 10). + Required for `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[version] + schema: + example: + - 1.0.0 + items: + type: string + type: array + style: form + - description: Filter by variant values (multiple values allowed). Supported for `jvm`. + explode: true + in: query + name: filter[variant] + schema: + items: + type: string + type: array + style: form + - description: Filter by source map ID values (multiple values allowed). Supported for all map kinds. + explode: true + in: query + name: filter[id] + schema: + items: + type: string + type: array + style: form + - description: Filter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`. + explode: true + in: query + name: filter[build_id] + schema: + items: + type: string + type: array + style: form + - description: Filter by UUID values (multiple values allowed). Supported for `ios`. + explode: true + in: query + name: filter[uuid] + schema: + items: + type: string + type: array + style: form + - description: Filter by platform values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[platform] + schema: + items: + type: string + type: array + style: form + - description: Filter by build number values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[build_number] + schema: + items: + type: string + type: array + style: form + - description: Filter by bundle name values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[bundle_name] + schema: + items: + type: string + type: array + style: form + - description: |- + Filter by architecture values (multiple values allowed). Supported + for `flutter`, `elf`, and `ndk`. + explode: true + in: query + name: filter[arch] + schema: + items: + type: string + type: array + style: form + - description: Filter by symbol source values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[symbol_source] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin version values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin_version] + schema: + items: + type: string + type: array + style: form + - description: Filter by filename (single value). Supported for `js`, `elf`, and `ndk`. + in: query + name: filter[filename] + schema: + type: string + - description: Filter by debug ID (single value). Supported for `react`. + in: query + name: filter[debug_id] + schema: + type: string + - description: Filter by GNU build ID (single value). Supported for `elf`. + in: query + name: filter[gnu_build_id] + schema: + type: string + - description: Filter by Go build ID (single value). Supported for `elf`. + in: query + name: filter[go_build_id] + schema: + type: string + - description: Filter by file hash (single value). Supported for `elf`. + in: query + name: filter[file_hash] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + absolute_path: /js/bundle.min.js + created_at: '2024-01-01T00:00:00Z' + mapkind: js + service: my-web-service + size: 1024 + version: 1.0.0 + id: '5' + type: sourcemaps + schema: + $ref: '#/components/schemas/SourcemapsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Delete source maps + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_delete_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Retrieves the content of a specific JavaScript source map file by its + filename, service name, and version. + operationId: GetSourcemaps + parameters: + - description: The path to the source map file. + in: query + name: filename + required: true + schema: + example: js/bundle.min.js.map + type: string + - description: The service name associated with the source map. + in: query + name: service + required: true + schema: + example: my-web-service + type: string + - description: The version of the service associated with the source map. + in: query + name: version + required: true + schema: + example: 1.0.0 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + file: bundle.js + mappings: AAAA,OAAO,CAAC,GAAG + minifiedLineLengths: + - 50 + - 30 + names: + - console + - log + sourceRoot: / + sources: + - src/index.js + - src/utils.js + sourcesContent: + - console.log('index'); + - export function util() {} + version: 3 + id: path/to/sourcemap.js.map + type: sourcemap_files + schema: + $ref: '#/components/schemas/SourcemapFileResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get a JavaScript source map + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps/list: + get: + description: Retrieves a paginated list of source maps matching the specified filter criteria. + operationId: ListSourcemaps + parameters: + - description: The type of source map. Defaults to `js`. + in: query + name: mapkind + schema: + $ref: '#/components/schemas/SourcemapMapKind' + - description: The number of results to return per page. Must be at least 1. + in: query + name: page[size] + schema: + default: 20 + example: 20 + format: int64 + type: integer + - description: The page number to retrieve, starting from 1. + in: query + name: page[number] + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: |- + Filter by service names (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[service] + schema: + example: + - my-web-service + items: + type: string + type: array + style: form + - description: |- + Filter by version values (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[version] + schema: + example: + - 1.0.0 + items: + type: string + type: array + style: form + - description: Filter by variant values (multiple values allowed). Supported for `jvm`. + explode: true + in: query + name: filter[variant] + schema: + items: + type: string + type: array + style: form + - description: Filter by source map ID values (multiple values allowed). Supported for all map kinds. + explode: true + in: query + name: filter[id] + schema: + items: + type: string + type: array + style: form + - description: Filter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`. + explode: true + in: query + name: filter[build_id] + schema: + items: + type: string + type: array + style: form + - description: Filter by UUID values (multiple values allowed). Supported for `ios`. + explode: true + in: query + name: filter[uuid] + schema: + items: + type: string + type: array + style: form + - description: Filter by platform values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[platform] + schema: + items: + type: string + type: array + style: form + - description: Filter by build number values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[build_number] + schema: + items: + type: string + type: array + style: form + - description: Filter by bundle name values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[bundle_name] + schema: + items: + type: string + type: array + style: form + - description: |- + Filter by architecture values (multiple values allowed). Supported + for `flutter`, `elf`, and `ndk`. + explode: true + in: query + name: filter[arch] + schema: + items: + type: string + type: array + style: form + - description: Filter by symbol source values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[symbol_source] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin version values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin_version] + schema: + items: + type: string + type: array + style: form + - description: Filter by filename (single value). Supported for `js`, `elf`, and `ndk`. + in: query + name: filter[filename] + schema: + type: string + - description: Filter by debug ID (single value). Supported for `react`. + in: query + name: filter[debug_id] + schema: + type: string + - description: Filter by GNU build ID (single value). Supported for `elf`. + in: query + name: filter[gnu_build_id] + schema: + type: string + - description: Filter by Go build ID (single value). Supported for `elf`. + in: query + name: filter[go_build_id] + schema: + type: string + - description: Filter by file hash (single value). Supported for `elf`. + in: query + name: filter[file_hash] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + absolute_path: /js/bundle.min.js + created_at: '2024-01-01T00:00:00Z' + mapkind: js + service: my-web-service + size: 1024 + version: 1.0.0 + id: '5' + type: sourcemaps + meta: + page: + has_more_results: false + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/ListSourcemapsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '413': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Request Entity Too Large + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List source maps + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps/restore: + patch: + description: |- + Restores previously deleted source maps matching the specified filter + criteria. Supports dry-run mode to preview which source maps would be + restored without performing the actual restoration. + operationId: RestoreSourcemaps + parameters: + - description: |- + The type of source map. Valid values are `js`, `jvm`, `ios`, + `react`, `flutter`, `elf`, `ndk`, `il2cpp`. + in: query + name: mapkind + required: true + schema: + $ref: '#/components/schemas/SourcemapMapKind' + - description: |- + When set to `true`, returns the source maps that would be restored + without performing the actual restoration. When set to `false`, + performs the restoration. + in: query + name: dry_run + required: true + schema: + example: true + type: boolean + - description: |- + Filter by service names (multiple values allowed). Required for + `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[service] + schema: + example: + - my-web-service + items: + type: string + type: array + style: form + - description: |- + Filter by version values (multiple values allowed, maximum 10). + Required for `js`, `jvm`, `react`, and `flutter` map kinds. + explode: true + in: query + name: filter[version] + schema: + example: + - 1.0.0 + items: + type: string + type: array + style: form + - description: Filter by variant values (multiple values allowed). Supported for `jvm`. + explode: true + in: query + name: filter[variant] + schema: + items: + type: string + type: array + style: form + - description: Filter by source map ID values (multiple values allowed). Supported for all map kinds. + explode: true + in: query + name: filter[id] + schema: + items: + type: string + type: array + style: form + - description: Filter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`. + explode: true + in: query + name: filter[build_id] + schema: + items: + type: string + type: array + style: form + - description: Filter by UUID values (multiple values allowed). Supported for `ios`. + explode: true + in: query + name: filter[uuid] + schema: + items: + type: string + type: array + style: form + - description: Filter by platform values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[platform] + schema: + items: + type: string + type: array + style: form + - description: Filter by build number values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[build_number] + schema: + items: + type: string + type: array + style: form + - description: Filter by bundle name values (multiple values allowed). Supported for `react`. + explode: true + in: query + name: filter[bundle_name] + schema: + items: + type: string + type: array + style: form + - description: |- + Filter by architecture values (multiple values allowed). Supported + for `flutter`, `elf`, and `ndk`. + explode: true + in: query + name: filter[arch] + schema: + items: + type: string + type: array + style: form + - description: Filter by symbol source values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[symbol_source] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin] + schema: + items: + type: string + type: array + style: form + - description: Filter by origin version values (multiple values allowed). Supported for `elf`. + explode: true + in: query + name: filter[origin_version] + schema: + items: + type: string + type: array + style: form + - description: Filter by filename (single value). Supported for `js`, `elf`, and `ndk`. + in: query + name: filter[filename] + schema: + type: string + - description: Filter by debug ID (single value). Supported for `react`. + in: query + name: filter[debug_id] + schema: + type: string + - description: Filter by GNU build ID (single value). Supported for `elf`. + in: query + name: filter[gnu_build_id] + schema: + type: string + - description: Filter by Go build ID (single value). Supported for `elf`. + in: query + name: filter[go_build_id] + schema: + type: string + - description: Filter by file hash (single value). Supported for `elf`. + in: query + name: filter[file_hash] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + absolute_path: /js/bundle.min.js + created_at: '2024-01-01T00:00:00Z' + mapkind: js + service: my-web-service + size: 1024 + version: 1.0.0 + id: '5' + type: sourcemaps + schema: + $ref: '#/components/schemas/SourcemapsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Restore source maps + tags: + - RUM + x-permission: + operator: OR + permissions: + - rum_delete_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/sourcemaps/service_repository_info: + post: + description: Returns the repository URL and commit SHA associated with a given service and version. + operationId: GetServiceRepositoryInfo + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + service: my-web-service + version: 1.0.0 + type: service_repository_info + schema: + $ref: '#/components/schemas/ServiceRepositoryInfoRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + commit_sha: abc123def456789 + repository_url: https://github.com/my-org/my-repo + status: success + id: my-web-service:1.0.0 + type: service_repository_info + schema: + $ref: '#/components/schemas/ServiceRepositoryInfoResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get service repository information + tags: + - RUM + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - rum_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). +components: + schemas: + ProductAnalyticsServerSideEventItem: + description: A Product Analytics server-side event. + properties: + account: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItemAccount' + application: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItemApplication' + event: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItemEvent' + session: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItemSession' + type: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItemType' + usr: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventItemUsr' + required: + - application + - event + - type + type: object + ProductAnalyticsServerSideEventErrors: + description: Error response. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/ProductAnalyticsServerSideEventError' + type: array + type: object + FacetInfoRequest: + description: Request body for retrieving facet value information for a specified attribute with optional filtering. + example: + data: + attributes: + facet_id: first_browser_name + limit: 10 + search: + query: user_org_id:5001 AND first_country_code:US + term_search: + value: Chrome + id: facet_info_request + type: users_facet_info_request + properties: + data: + $ref: '#/components/schemas/FacetInfoRequestData' + type: object + FacetInfoResponse: + description: Response containing facet information for an attribute, including its distinct values and occurrence counts. + example: + data: + attributes: + result: + values: + - count: 4892 + value: Chrome + - count: 2341 + value: Safari + - count: 1567 + value: Firefox + - count: 892 + value: Edge + - count: 234 + value: Opera + id: facet_info_response + type: users_facet_info + properties: + data: + $ref: '#/components/schemas/FacetInfoResponseData' + type: object + QueryAccountRequest: + description: Request body for querying accounts with optional filtering, column selection, and sorting. + example: + data: + attributes: + limit: 20 + query: plan_type:enterprise AND user_count:>100 AND subscription_status:active + select_columns: + - account_id + - account_name + - user_count + - plan_type + - subscription_status + - created_at + - mrr + - industry + sort: + field: user_count + order: DESC + wildcard_search_term: tech + id: query_account_request + type: query_account_request + properties: + data: + $ref: '#/components/schemas/QueryAccountRequestData' + type: object + QueryResponse: + description: Response containing the query results with matched records and total count. + example: + data: + attributes: + hits: + - first_browser_name: Chrome + first_city: San Francisco + first_country_code: US + first_device_type: Desktop + last_seen: '2025-08-14T06:45:12.142Z' + session_count: 47 + user_created: '2024-12-15T08:42:33.287Z' + user_email: john.smith@techcorp.com + user_id: '150847' + user_name: John Smith + user_org_id: '5001' + - first_browser_name: Chrome + first_city: Austin + first_country_code: US + first_device_type: Desktop + last_seen: '2025-08-14T05:22:08.951Z' + session_count: 89 + user_created: '2024-11-28T14:17:45.634Z' + user_email: john.williams@techcorp.com + user_id: '150848' + user_name: John Williams + user_org_id: '5001' + - first_browser_name: Chrome + first_city: Seattle + first_country_code: US + first_device_type: Desktop + last_seen: '2025-08-14T04:18:34.726Z' + session_count: 23 + user_created: '2025-01-03T16:33:21.445Z' + user_email: john.jones@techcorp.com + user_id: '150849' + user_name: John Jones + user_org_id: '5001' + total: 147 + id: query_response + type: query_response + properties: + data: + $ref: '#/components/schemas/QueryResponseData' + type: object + ProductAnalyticsAnalyticsListRequest: + description: Request for listing the individual event records matching an analytics query. + example: + data: + attributes: + from: 1771232048460 + query: + columns: + - '@view.name' + limit: 100 + query: + data_source: product_analytics + search: + query: '@type:view' + to: 1771836848262 + type: formula_analytics_extended_list_request + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListRequestData' + required: + - data + type: object + ProductAnalyticsAnalyticsListResponse: + description: Response for an analytics list query, containing individual event records. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListResponseData' + meta: + $ref: '#/components/schemas/ProductAnalyticsResponseMeta' + required: + - data + type: object + ProductAnalyticsAnalyticsRequest: + description: Request for computing analytics results (scalar or timeseries). + example: + data: + attributes: + from: 1771232048460 + query: + compute: + aggregation: count + query: + data_source: product_analytics + search: + query: '@type:view' + to: 1771836848262 + type: formula_analytics_extended_request + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsRequestData' + required: + - data + type: object + ProductAnalyticsScalarResponse: + description: Response for a scalar analytics query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsScalarResponseData' + meta: + $ref: '#/components/schemas/ProductAnalyticsResponseMeta' + type: object + ProductAnalyticsTimeseriesResponse: + description: Response for a timeseries analytics query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsTimeseriesResponseData' + meta: + $ref: '#/components/schemas/ProductAnalyticsResponseMeta' + type: object + ProductAnalyticsJourneyFunnelRequest: + description: Request body for a journey funnel analysis. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelRequestData' + required: + - data + type: object + ProductAnalyticsJourneyFunnelResponse: + description: Response for a journey funnel analysis. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelResponseData' + required: + - data + type: object + ProductAnalyticsJourneyListRequest: + description: Request body for a journey list query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyListRequestData' + required: + - data + type: object + ProductAnalyticsJourneyListResponse: + description: Response for a journey list query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyListResponseData' + required: + - data + type: object + ProductAnalyticsJourneyScalarRequest: + description: Request body for a journey scalar query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarRequestData' + required: + - data + type: object + ProductAnalyticsJourneyScalarResponse: + description: Response for a journey scalar query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarResponseData' + required: + - data + type: object + ProductAnalyticsFormulaJourneyRequest: + description: Request body for a journey timeseries query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsFormulaJourneyRequestData' + required: + - data + type: object + ProductAnalyticsJourneyTimeseriesResponse: + description: Response for a journey timeseries query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsJourneyTimeseriesResponseData' + required: + - data + type: object + ProductAnalyticsRetentionGridRequest: + description: Request body for a retention grid query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridRequestData' + required: + - data + type: object + ProductAnalyticsRetentionGridResponse: + description: Response for a retention grid query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridResponseData' + required: + - data + type: object + ProductAnalyticsRetentionListRequest: + description: Request body listing the individual entities behind one cell of the retention grid. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsRetentionListRequestData' + required: + - data + type: object + ProductAnalyticsRetentionListResponse: + description: Response for a retention list query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsRetentionListResponseData' + required: + - data + type: object + ProductAnalyticsFormulaRetentionRequest: + description: Request body for a retention scalar or retention timeseries query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsFormulaRetentionRequestData' + required: + - data + type: object + ProductAnalyticsSankeyRequest: + description: Request body for a Sankey diagram query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsSankeyRequestData' + required: + - data + type: object + ProductAnalyticsSankeyResponse: + description: Response for a Sankey diagram query. + properties: + data: + $ref: '#/components/schemas/ProductAnalyticsSankeyResponseData' + required: + - data + type: object + QueryEventFilteredUsersRequest: + description: Request body for querying users filtered by user properties combined with event platform activity. + example: + data: + attributes: + event_query: + query: '@type:view AND @view.loading_time:>3000 AND @application.name:ecommerce-platform' + time_frame: + end: 1761309676 + start: 1760100076 + include_row_count: true + limit: 25 + query: user_org_id:5001 AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - first_country_code + - first_browser_name + - events_count + - session_count + - error_count + - avg_loading_time + id: query_event_filtered_users_request + type: query_event_filtered_users_request + properties: + data: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestData' + type: object + QueryUsersRequest: + description: Request body for querying users with optional filtering, column selection, and sorting. + example: + data: + attributes: + limit: 25 + query: user_email:*@techcorp.com AND first_country_code:US AND first_browser_name:Chrome + select_columns: + - user_id + - user_email + - user_name + - user_org_id + - first_country_code + - first_browser_name + - first_device_type + - last_seen + sort: + field: first_seen + order: DESC + wildcard_search_term: john + id: query_users_request + type: query_users_request + properties: + data: + $ref: '#/components/schemas/QueryUsersRequestData' + type: object + GetMappingResponse: + description: Response containing the entity attribute mapping configuration including all available attributes and their properties. + example: + data: + attributes: + attributes: + - attribute: user_id + description: Unique user identifier + display_name: User ID + groups: + - Identity + is_custom: false + type: string + - attribute: user_email + description: User email address + display_name: Email Address + groups: + - Identity + - Contact + is_custom: false + type: string + - attribute: first_country_code + description: The ISO code of the country for the user's first session + display_name: First Country Code + groups: + - Geography + is_custom: false + type: string + - attribute: '@customer_tier' + description: Customer subscription tier + display_name: Customer Tier + groups: + - Business + is_custom: true + type: string + id: get_mappings_response + type: get_mappings_response + properties: + data: + $ref: '#/components/schemas/GetMappingResponseData' + type: object + CreateConnectionRequest: + description: Request body for creating a new data source connection for an entity. + example: + data: + attributes: + fields: + - description: Customer subscription tier from `CRM` + display_name: Customer Tier + id: customer_tier + source_name: subscription_tier + type: string + - description: Customer lifetime value in `USD` + display_name: Lifetime Value + id: lifetime_value + source_name: ltv + type: number + join_attribute: user_email + join_type: email + type: ref_table + id: crm-integration + type: connection_id + properties: + data: + $ref: '#/components/schemas/CreateConnectionRequestData' + type: object + UpdateConnectionRequest: + description: Request body for updating an existing data source connection by adding, modifying, or removing fields. + example: + data: + attributes: + fields_to_add: + - description: Net Promoter Score from customer surveys + display_name: NPS Score + groups: + - Satisfaction + - Metrics + id: nps_score + source_name: net_promoter_score + type: number + fields_to_delete: + - old_revenue_field + fields_to_update: + - field_id: lifetime_value + updated_display_name: Customer Lifetime Value (`USD`) + updated_groups: + - Financial + - Metrics + id: crm-integration + type: connection_id + properties: + data: + $ref: '#/components/schemas/UpdateConnectionRequestData' + type: object + ListConnectionsResponse: + description: Response containing the list of all data source connections configured for an entity. + example: + data: + attributes: + connections: + - created_at: '0001-01-01T00:00:00Z' + created_by: 00000000-0000-0000-0000-000000000000 + fields: + - description: Customer subscription tier + display_name: Customer Tier + groups: + - Business + - Subscription + id: customer_tier + source_name: subscription_tier + type: string + - description: Channel through which user signed up + display_name: Signup Source + groups: + - Marketing + - Attribution + id: signup_source + source_name: acquisition_channel + type: string + id: user-profiles-connection + join: + attribute: user_email + type: email + type: ref_table + updated_at: '0001-01-01T00:00:00Z' + updated_by: 00000000-0000-0000-0000-000000000000 + id: list_connections_response + type: list_connections_response + properties: + data: + $ref: '#/components/schemas/ListConnectionsResponseData' + type: object + SnapshotArray: + description: A list of heatmap snapshots returned by a list operation. + properties: + data: + description: Array of heatmap snapshot data objects. + items: + $ref: '#/components/schemas/SnapshotData' + type: array + required: + - data + type: object + SnapshotCreateRequest: + description: Request body for creating a heatmap snapshot. + properties: + data: + $ref: '#/components/schemas/SnapshotCreateRequestData' + required: + - data + type: object + Snapshot: + description: A single heatmap snapshot resource returned by create or update operations. + properties: + data: + $ref: '#/components/schemas/SnapshotData' + type: object + SnapshotUpdateRequest: + description: Request body for updating a heatmap snapshot. + properties: + data: + $ref: '#/components/schemas/SnapshotUpdateRequestData' + required: + - data + type: object + RUMAggregateRequest: + description: The object sent with the request to retrieve aggregation buckets of RUM events from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: '#/components/schemas/RUMCompute' + type: array + filter: + $ref: '#/components/schemas/RUMQueryFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/RUMGroupBy' + type: array + options: + $ref: '#/components/schemas/RUMQueryOptions' + page: + $ref: '#/components/schemas/RUMQueryPageOptions' + type: object + RUMAnalyticsAggregateResponse: + description: The response object for the RUM events aggregate API endpoint. + properties: + data: + $ref: '#/components/schemas/RUMAggregationBucketsResponse' + links: + $ref: '#/components/schemas/RUMResponseLinks' + meta: + $ref: '#/components/schemas/RUMResponseMetadata' + type: object + RUMApplicationsResponse: + description: RUM applications response. + properties: + data: + description: RUM applications array response. + items: + $ref: '#/components/schemas/RUMApplicationList' + type: array + type: object + RUMApplicationCreateRequest: + description: RUM application creation request attributes. + properties: + data: + $ref: '#/components/schemas/RUMApplicationCreate' + required: + - data + type: object + RUMApplicationResponse: + description: RUM application response. + properties: + data: + $ref: '#/components/schemas/RUMApplication' + type: object + RumRetentionFiltersOrderRequest: + description: |- + The list of RUM retention filter IDs along with their corresponding type to reorder. + All retention filter IDs should be included in the list created for a RUM application. + properties: + data: + description: A list of RUM retention filter IDs along with type. + items: + $ref: '#/components/schemas/RumRetentionFiltersOrderData' + type: array + type: object + RumRetentionFiltersOrderResponse: + description: The list of RUM retention filter IDs along with type. + properties: + data: + description: A list of RUM retention filter IDs along with type. + items: + $ref: '#/components/schemas/RumRetentionFiltersOrderData' + type: array + type: object + RumRetentionFiltersResponse: + description: All RUM retention filters for a RUM application. + properties: + data: + description: A list of RUM retention filters. + items: + $ref: '#/components/schemas/RumRetentionFilterData' + type: array + type: object + RumRetentionFilterCreateRequest: + description: The RUM retention filter body to create. + properties: + data: + $ref: '#/components/schemas/RumRetentionFilterCreateData' + required: + - data + type: object + RumRetentionFilterResponse: + description: The RUM retention filter object. + properties: + data: + $ref: '#/components/schemas/RumRetentionFilterData' + type: object + RumExclusionFiltersResponse: + description: All exclusion filters for a RUM application. + properties: + data: + description: A list of exclusion filters. + items: + $ref: '#/components/schemas/RumExclusionFilterData' + type: array + type: object + RumExclusionFilterCreateRequest: + description: The exclusion filter body to create. + properties: + data: + $ref: '#/components/schemas/RumExclusionFilterCreateData' + required: + - data + type: object + RumExclusionFilterResponse: + description: An exclusion filter response body. + properties: + data: + $ref: '#/components/schemas/RumExclusionFilterData' + type: object + RumExclusionFilterUpdateRequest: + description: The exclusion filter body to update. + properties: + data: + $ref: '#/components/schemas/RumExclusionFilterUpdateData' + required: + - data + type: object + RumPermanentRetentionFiltersResponse: + description: All permanent RUM retention filters for a RUM application. + properties: + data: + description: A list of permanent RUM retention filters. + items: + $ref: '#/components/schemas/RumPermanentRetentionFilterData' + type: array + type: object + RumPermanentRetentionFilterResponse: + description: A permanent RUM retention filter object. + properties: + data: + $ref: '#/components/schemas/RumPermanentRetentionFilterData' + type: object + RumPermanentRetentionFilterUpdateRequest: + description: The permanent RUM retention filter body to update. + properties: + data: + $ref: '#/components/schemas/RumPermanentRetentionFilterUpdateData' + required: + - data + type: object + RumRetentionFilterUpdateRequest: + description: The RUM retention filter body to update. + properties: + data: + $ref: '#/components/schemas/RumRetentionFilterUpdateData' + required: + - data + type: object + RUMApplicationUpdateRequest: + description: RUM application update request. + properties: + data: + $ref: '#/components/schemas/RUMApplicationUpdate' + required: + - data + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + RumConfigResponse: + description: The RUM configuration object. + properties: + data: + $ref: '#/components/schemas/RumConfigData' + required: + - data + type: object + RumConfigUpdateRequest: + description: Request body for updating the RUM configuration. + properties: + data: + $ref: '#/components/schemas/RumConfigUpdateData' + required: + - data + type: object + RumConfigCreateRequest: + description: Request body for creating the RUM configuration. + properties: + data: + $ref: '#/components/schemas/RumConfigCreateData' + required: + - data + type: object + RumMetricsResponse: + description: All the available RUM-based metric objects. + properties: + data: + description: A list of RUM-based metric objects. + items: + $ref: '#/components/schemas/RumMetricResponseData' + type: array + type: object RumMetricCreateRequest: - description: The new rum-based metric body. + description: The new RUM-based metric body. + properties: + data: + $ref: '#/components/schemas/RumMetricCreateData' + required: + - data + type: object + RumMetricResponse: + description: The RUM-based metric object. + properties: + data: + $ref: '#/components/schemas/RumMetricResponseData' + type: object + RumMetricUpdateRequest: + description: The new RUM-based metric body. + properties: + data: + $ref: '#/components/schemas/RumMetricUpdateData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + RumRetentionQuotaConfigResponse: + description: The RUM retention quota configuration response. + properties: + data: + $ref: '#/components/schemas/RumRetentionQuotaConfigData' + required: + - data + type: object + RumRetentionQuotaConfigUpdateRequest: + description: The body of a request to create or update a RUM retention quota configuration. + properties: + data: + $ref: '#/components/schemas/RumRetentionQuotaConfigUpdateData' + required: + - data + type: object + TeamsOwnershipMappingsResponse: + description: The response body for a list of teams ownership mappings. + properties: + data: + description: A list of teams ownership mappings. + items: + $ref: '#/components/schemas/TeamsOwnershipMappingResponseData' + type: array + required: + - data + type: object + TeamsOwnershipMappingCreateRequest: + description: The request body for creating a teams ownership mapping. + properties: + data: + $ref: '#/components/schemas/TeamsOwnershipMappingCreateData' + required: + - data + type: object + TeamsOwnershipMappingResponse: + description: The response body for a single teams ownership mapping. + properties: + data: + $ref: '#/components/schemas/TeamsOwnershipMappingResponseData' + required: + - data + type: object + TeamsOwnershipMappingBatchRequest: + description: The request body for bulk-creating and bulk-removing teams ownership mappings. + properties: + atomic:operations: + description: The list of add and remove operations to apply atomically. + items: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchOperation' + type: array + required: + - atomic:operations + type: object + TeamsOwnershipMappingBatchResponse: + description: |- + The response body for the bulk create and remove operation. On success, `atomic:results` + contains one entry per operation. Add results appear before remove results and may not match + request order. Correlate add results by their `type` and `id` rather than by array position. + On failure, no operations were applied and `errors` describes what went wrong. + properties: + atomic:results: + description: |- + The result of each operation. + Add operations are processed first, then remove operations, so results may not appear + in the same order as the request. Present only on success. + items: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchResult' + type: array + errors: + description: The validation or processing errors encountered. Present only when the request could not be completed. + items: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchError' + type: array + type: object + TeamsOwnershipRulesResponse: + description: The response body for a list of teams ownership rules. + properties: + data: + description: A list of teams ownership rules. + items: + $ref: '#/components/schemas/TeamsOwnershipRuleResponseData' + type: array + required: + - data + type: object + RUMSort: + description: Sort parameters when querying events. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + RUMEventsResponse: + description: Response object with all events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: '#/components/schemas/RUMEvent' + type: array + links: + $ref: '#/components/schemas/RUMResponseLinks' + meta: + $ref: '#/components/schemas/RUMResponseMetadata' + type: object + RUMSearchEventsRequest: + description: The request for a RUM events list. + properties: + filter: + $ref: '#/components/schemas/RUMQueryFilter' + options: + $ref: '#/components/schemas/RUMQueryOptions' + page: + $ref: '#/components/schemas/RUMQueryPageOptions' + sort: + $ref: '#/components/schemas/RUMSort' + type: object + RUMOperationCreateRequest: + description: The request body for creating a RUM operation. + properties: + data: + $ref: '#/components/schemas/RUMOperationCreateRequestData' + required: + - data + type: object + RUMOperationResponse: + description: The response for a single RUM operation. + properties: + data: + $ref: '#/components/schemas/RUMOperationResponseData' + required: + - data + type: object + RUMOperationsListResponse: + description: The response for a list of RUM operations. + properties: + data: + items: + $ref: '#/components/schemas/RUMOperationResponseData' + type: array + meta: + $ref: '#/components/schemas/RUMOperationsListResponseMeta' + required: + - data + type: object + RUMOperationStrongLinksListResponse: + description: The response for a list of RUM operation strong links. + properties: + data: + items: + $ref: '#/components/schemas/RUMOperationStrongLinkResponseData' + type: array + meta: + $ref: '#/components/schemas/RUMOperationStrongLinksListResponseMeta' + required: + - data + type: object + RUMOperationStrongLinkCreateRequest: + description: The request body for creating a RUM operation strong link. + properties: + data: + $ref: '#/components/schemas/RUMOperationStrongLinkCreateRequestData' + required: + - data + type: object + RUMOperationStrongLinkResponse: + description: The response for a single RUM operation strong link. + properties: + data: + $ref: '#/components/schemas/RUMOperationStrongLinkResponseData' + required: + - data + type: object + RUMOperationStrongLinkUpdateRequest: + description: The request body for updating a RUM operation strong link. + properties: + data: + $ref: '#/components/schemas/RUMOperationStrongLinkUpdateRequestData' + required: + - data + type: object + RUMOperationUpdateRequest: + description: The request body for updating a RUM operation. + properties: + data: + $ref: '#/components/schemas/RUMOperationUpdateRequestData' + required: + - data + type: object + AggregatedLongTasksRequest: + description: Request body for the aggregated long tasks endpoint. + properties: + data: + $ref: '#/components/schemas/AggregatedLongTasksRequestData' + required: + - data + type: object + AggregatedLongTasksResponse: + description: Response body for the aggregated long tasks endpoint. + properties: + data: + $ref: '#/components/schemas/AggregatedLongTasksResponseData' + required: + - data + type: object + AggregatedSignalsProblemsRequest: + description: Request body for the aggregated signals and problems endpoint. + properties: + data: + $ref: '#/components/schemas/AggregatedSignalsProblemsRequestData' + required: + - data + type: object + AggregatedSignalsProblemsResponse: + description: Response body for the aggregated signals and problems endpoint. + properties: + data: + $ref: '#/components/schemas/AggregatedSignalsProblemsResponseData' + required: + - data + type: object + AggregatedWaterfallRequest: + description: Request body for the aggregated waterfall endpoint. + properties: + data: + $ref: '#/components/schemas/AggregatedWaterfallRequestData' + required: + - data + type: object + AggregatedWaterfallResponse: + description: Response body for the aggregated waterfall endpoint. + properties: + data: + $ref: '#/components/schemas/AggregatedWaterfallResponseData' + required: + - data + type: object + PlaylistArray: + description: A list of RUM replay playlists returned by a list operation. + properties: + data: + description: Array of playlist data objects. + items: + $ref: '#/components/schemas/PlaylistData' + type: array + required: + - data + type: object + Playlist: + description: A single RUM replay playlist resource returned by create, update, or get operations. + properties: + data: + $ref: '#/components/schemas/PlaylistData' + required: + - data + type: object + SessionIdArray: + description: A collection of session identifiers used for bulk add or remove operations on a playlist. + properties: + data: + description: Array of session identifier data objects. + items: + $ref: '#/components/schemas/SessionIdData' + type: array + required: + - data + type: object + PlaylistsSessionArray: + description: A list of RUM replay sessions belonging to a playlist. + properties: + data: + description: Array of playlist session data objects. + items: + $ref: '#/components/schemas/PlaylistsSessionData' + type: array + required: + - data + type: object + PlaylistsSession: + description: A single RUM replay session resource as it appears within a playlist context. + properties: + data: + $ref: '#/components/schemas/PlaylistsSessionData' + required: + - data + type: object + WatcherArray: + description: A list of users who have watched a RUM replay session. + properties: + data: + description: Array of watcher data objects. + items: + $ref: '#/components/schemas/WatcherData' + type: array + required: + - data + type: object + Watch: + description: A single RUM replay session watch resource returned by create operations. + properties: + data: + $ref: '#/components/schemas/WatchData' + required: + - data + type: object + ViewershipHistorySessionArray: + description: A list of RUM replay sessions from a user's viewership history. + properties: + data: + description: Array of viewership history session data objects. + items: + $ref: '#/components/schemas/ViewershipHistorySessionData' + type: array + required: + - data + type: object + SourcemapMapKind: + description: The type of source map. + enum: + - js + - jvm + - ios + - react + - flutter + - elf + - ndk + - il2cpp + example: js + type: string + x-enum-varnames: + - JS + - JVM + - IOS + - REACT + - FLUTTER + - ELF + - NDK + - IL2CPP + SourcemapsResponse: + description: Response containing a list of affected source maps. + properties: + data: + $ref: '#/components/schemas/SourcemapsData' + required: + - data + type: object + SourcemapFileResponse: + description: Response containing a JavaScript source map file. + properties: + data: + $ref: '#/components/schemas/SourcemapFileData' + required: + - data + type: object + ListSourcemapsResponse: + description: Response containing a paginated list of source maps. + properties: + data: + $ref: '#/components/schemas/SourcemapsData' + meta: + $ref: '#/components/schemas/SourcemapsListMeta' + required: + - data + type: object + ServiceRepositoryInfoRequest: + description: Request body for retrieving service repository information. + properties: + data: + $ref: '#/components/schemas/ServiceRepositoryInfoRequestData' + required: + - data + type: object + ServiceRepositoryInfoResponse: + description: Response containing service repository information. + properties: + data: + $ref: '#/components/schemas/ServiceRepositoryInfoResponseData' + required: + - data + type: object + ProductAnalyticsServerSideEventItemAccount: + description: The account linked to your event. + properties: + id: + description: The account ID used in Datadog. + example: account-67890 + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventItemApplication: + description: The application in which you want to send your events. + properties: + id: + description: |- + The application ID of your application. It can be found in your + [application management page](https://app.datadoghq.com/rum/list). + example: 123abcde-123a-123b-1234-123456789abc + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventItemEvent: + description: Fields used for the event. + properties: + name: + description: The name of your event, which is used for search in the same way as view or action names. + example: payment.processed + type: string + required: + - name + type: object + ProductAnalyticsServerSideEventItemSession: + description: The session linked to your event. + properties: + id: + description: The session ID captured by the SDK. + example: session-abcdef + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventItemType: + description: The type of Product Analytics event. Must be `server` for server-side events. + enum: + - server + example: server + type: string + x-enum-varnames: + - SERVER + ProductAnalyticsServerSideEventItemUsr: + description: The user linked to your event. + properties: + id: + description: The user ID used in Datadog. + example: user-12345 + type: string + required: + - id + type: object + ProductAnalyticsServerSideEventError: + description: Error details. + properties: + detail: + description: Error message. + example: Malformed payload + type: string + status: + description: Error code. + example: '400' + type: string + title: + description: Error title. + example: Bad Request + type: string + type: object + FacetInfoRequestData: + description: The data object containing the resource type and attributes for the facet info request. + properties: + attributes: + $ref: '#/components/schemas/FacetInfoRequestDataAttributes' + id: + description: Unique identifier for the facet info request resource. + type: string + type: + $ref: '#/components/schemas/FacetInfoRequestDataType' + required: + - type + type: object + FacetInfoResponseData: + description: The data object containing the resource type and attributes for the facet info response. + properties: + attributes: + $ref: '#/components/schemas/FacetInfoResponseDataAttributes' + id: + description: Unique identifier for the facet info response resource. + type: string + type: + $ref: '#/components/schemas/FacetInfoResponseDataType' + required: + - type + type: object + QueryAccountRequestData: + description: The data object containing the resource type and attributes for querying accounts. + properties: + attributes: + $ref: '#/components/schemas/QueryAccountRequestDataAttributes' + id: + description: Unique identifier for the query account request resource. + type: string + type: + $ref: '#/components/schemas/QueryAccountRequestDataType' + required: + - type + type: object + QueryResponseData: + description: The data object containing the resource type and attributes of the query response. + properties: + attributes: + $ref: '#/components/schemas/QueryResponseDataAttributes' + id: + description: Unique identifier for the query response resource. + type: string + type: + $ref: '#/components/schemas/QueryResponseDataType' + required: + - type + type: object + ProductAnalyticsAnalyticsListRequestData: + description: Data object for an analytics list request. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsAnalyticsListResponseData: + description: Data object for an analytics list response. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListResponseAttributes' + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsResponseMeta: + description: Metadata for a Product Analytics query response. + properties: + request_id: + description: Unique identifier of the query. + type: string + status: + $ref: '#/components/schemas/ProductAnalyticsResponseMetaStatus' + type: object + ProductAnalyticsAnalyticsRequestData: + description: Data object for an analytics request. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsScalarResponseData: + description: Data object for a scalar response. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsScalarResponseAttributes' + id: + description: Unique identifier for this response data object. + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsScalarResponseType' + type: object + ProductAnalyticsTimeseriesResponseData: + description: Data object for a timeseries analytics response. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsTimeseriesResponseAttributes' + id: + description: Unique identifier for this response data object. + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsTimeseriesResponseType' + type: object + ProductAnalyticsJourneyFunnelRequestData: + description: |- + The single JSON:API resource carrying a funnel query. Its attributes hold the time window to + query and the journey whose step-to-step conversion should be measured. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsJourneyFunnelResponseData: + description: |- + The single JSON:API resource holding a computed funnel. Its attributes contain the number of + entities that entered, the end-to-end conversion, and one entry per funnel step. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelResponseAttributes' + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsJourneyListRequestData: + description: |- + The single JSON:API resource carrying a journey list query. Its attributes hold the time window + and the journey whose matching entities should be listed, one row each. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsJourneyListRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyListRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsJourneyListResponseData: + description: |- + The single JSON:API resource holding the entities matching a journey. Its attributes contain + the returned rows and the total number of rows that matched, ignoring `limit`. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsJourneyListResponseAttributes' + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyListResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsJourneyScalarRequestData: + description: |- + The single JSON:API resource carrying a journey scalar query. Its attributes hold the time + window and the journey metric to reduce to one value over that window. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsFormulaJourneyRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsJourneyScalarResponseData: + description: |- + The single JSON:API resource holding journey scalar results. Its attributes contain one value + per group, suitable for a query value or top list widget. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsScalarResponseAttributes' + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsFormulaJourneyRequestData: + description: |- + The single JSON:API resource carrying a journey timeseries query. Its attributes hold the time + window, the bucket interval that splits it, and the journey metric to compute per bucket. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsFormulaJourneyRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsFormulaJourneyRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsJourneyTimeseriesResponseData: + description: |- + The single JSON:API resource holding journey timeseries results. Its attributes contain one + series per group along with the timestamps the points fall on. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsTimeseriesResponseAttributes' + id: + description: Identifier of this result. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyTimeseriesResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsRetentionGridRequestData: + description: |- + The single JSON:API resource carrying a retention grid query. Its attributes hold the time + window to query and the cohort and return criteria that define the grid. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsRetentionGridResponseData: + description: |- + The single JSON:API resource holding a computed retention grid. Its attributes contain the + return periods forming the columns and the cohorts forming the rows. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridResponseAttributes' + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsRetentionListRequestData: + description: |- + The single JSON:API resource carrying a retention list query. Its attributes hold the time + window, the cell to list, and the columns to return for each entity. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsRetentionListRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionListRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsRetentionListResponseData: + description: |- + The single JSON:API resource holding the entities behind one retention cell. Its attributes + contain the entity whose retention was measured and one row per matching entity. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsRetentionListResponseAttributes' + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionListResponseType' + required: + - id + - type + - attributes + type: object + ProductAnalyticsFormulaRetentionRequestData: + description: |- + The single JSON:API resource carrying a retention scalar or timeseries query. Its attributes + hold the time window to query and the retention query definition to evaluate. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsFormulaRetentionRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsFormulaRetentionRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsSankeyRequestData: + description: |- + The single JSON:API resource carrying a Sankey query. Its attributes hold the time window to + query, the search that selects the sessions, and the definition of the diagram to build. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsSankeyRequestAttributes' + type: + $ref: '#/components/schemas/ProductAnalyticsSankeyRequestType' + required: + - type + - attributes + type: object + ProductAnalyticsSankeyResponseData: + description: |- + The single JSON:API resource holding a computed Sankey diagram. Its attributes contain the + nodes of every column and the links that carry sessions between them. + properties: + attributes: + $ref: '#/components/schemas/ProductAnalyticsSankeyResponseAttributes' + id: + description: Unique identifier for this response data object. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsSankeyResponseType' + required: + - id + - type + - attributes + type: object + QueryEventFilteredUsersRequestData: + description: The data object containing the resource type and attributes for querying event-filtered users. + properties: + attributes: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataAttributes' + id: + description: Unique identifier for the query event filtered users request resource. + type: string + type: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataType' + required: + - type + type: object + QueryUsersRequestData: + description: The data object containing the resource type and attributes for querying users. + properties: + attributes: + $ref: '#/components/schemas/QueryUsersRequestDataAttributes' + id: + description: Unique identifier for the query users request resource. + type: string + type: + $ref: '#/components/schemas/QueryUsersRequestDataType' + required: + - type + type: object + GetMappingResponseData: + description: The data object containing the resource type and attributes for the get mapping response. + properties: + attributes: + $ref: '#/components/schemas/GetMappingResponseDataAttributes' + id: + description: Unique identifier for the get mapping response resource. + type: string + type: + $ref: '#/components/schemas/GetMappingResponseDataType' + required: + - type + type: object + CreateConnectionRequestData: + description: The data object containing the resource type and attributes for creating a new connection. + properties: + attributes: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributes' + id: + description: Unique identifier for the new connection resource. + type: string + type: + $ref: '#/components/schemas/UpdateConnectionRequestDataType' + required: + - type + type: object + UpdateConnectionRequestData: + description: The data object containing the resource identifier and attributes for updating an existing connection. + properties: + attributes: + $ref: '#/components/schemas/UpdateConnectionRequestDataAttributes' + id: + description: The unique identifier of the connection to update. + example: '' + type: string + type: + $ref: '#/components/schemas/UpdateConnectionRequestDataType' + required: + - type + - id + type: object + ListConnectionsResponseData: + description: The data object containing the resource type and attributes for the list connections response. + properties: + attributes: + $ref: '#/components/schemas/ListConnectionsResponseDataAttributes' + id: + description: Unique identifier for the list connections response resource. + type: string + type: + $ref: '#/components/schemas/ListConnectionsResponseDataType' + required: + - type + type: object + SnapshotData: + description: Data object representing a heatmap snapshot, including its identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/SnapshotDataAttributes' + id: + description: Unique identifier of the heatmap snapshot. + readOnly: true + type: string + type: + $ref: '#/components/schemas/SnapshotUpdateRequestDataType' + required: + - type + type: object + SnapshotCreateRequestData: + description: Data object for a heatmap snapshot creation request, containing the resource type and attributes. + properties: + attributes: + $ref: '#/components/schemas/SnapshotCreateRequestDataAttributes' + type: + $ref: '#/components/schemas/SnapshotUpdateRequestDataType' + required: + - type + type: object + SnapshotUpdateRequestData: + description: Data object for a heatmap snapshot update request, containing the resource identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/SnapshotUpdateRequestDataAttributes' + id: + description: Unique identifier of the heatmap snapshot to update. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/SnapshotUpdateRequestDataType' + required: + - type + type: object + RUMCompute: + description: A compute rule to compute metrics or timeseries. + properties: + aggregation: + $ref: '#/components/schemas/RUMAggregationFunction' + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points. + example: 5m + type: string + metric: + description: The metric to use. + example: '@duration' + type: string + type: + $ref: '#/components/schemas/RUMComputeType' + required: + - aggregation + type: object + RUMQueryFilter: + description: The search and filter query settings. + properties: + from: + default: now-15m + description: The minimum time for the requested events; supports date (in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, hours, minutes, and the `Z` UTC indicator - seconds and fractional seconds are optional), math, and regular timestamps (in milliseconds). + example: now-15m + type: string + query: + default: '*' + description: The search query following the RUM search syntax. + example: '@type:session AND @session.type:user' + type: string + to: + default: now + description: The maximum time for the requested events; supports date (in [ISO 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, hours, minutes, and the `Z` UTC indicator - seconds and fractional seconds are optional), math, and regular timestamps (in milliseconds). + example: now + type: string + type: object + RUMGroupBy: + description: A group-by rule. + properties: + facet: + description: The name of the facet to use (required). + example: '@view.time_spent' + type: string + histogram: + $ref: '#/components/schemas/RUMGroupByHistogram' + limit: + default: 10 + description: The maximum buckets to return for this group-by. + format: int64 + type: integer + missing: + $ref: '#/components/schemas/RUMGroupByMissing' + sort: + $ref: '#/components/schemas/RUMAggregateSort' + total: + $ref: '#/components/schemas/RUMGroupByTotal' + required: + - facet + type: object + RUMQueryOptions: + description: |- + Global query options that are used during the query. + Note: Only supply timezone or time offset, not both. Otherwise, the query fails. + properties: + time_offset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: UTC + description: The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: GMT + type: string + type: object + RUMQueryPageOptions: + description: Paging attributes for listing events. + properties: + cursor: + description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + RUMAggregationBucketsResponse: + description: The query results. + properties: + buckets: + description: The list of matching buckets, one item per bucket. + items: + $ref: '#/components/schemas/RUMBucketResponse' + type: array + type: object + RUMResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/rum/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + RUMResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/RUMResponsePage' + request_id: + description: The identifier of the request. + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + $ref: '#/components/schemas/RUMResponseStatus' + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: '#/components/schemas/RUMWarning' + type: array + type: object + RUMApplicationList: + description: RUM application list. + properties: + attributes: + $ref: '#/components/schemas/RUMApplicationListAttributes' + id: + description: RUM application ID. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + type: + $ref: '#/components/schemas/RUMApplicationListType' + required: + - attributes + - type + type: object + RUMApplicationCreate: + description: RUM application creation. + properties: + attributes: + $ref: '#/components/schemas/RUMApplicationCreateAttributes' + type: + $ref: '#/components/schemas/RUMApplicationCreateType' + required: + - attributes + - type + type: object + RUMApplication: + description: RUM application. + properties: + attributes: + $ref: '#/components/schemas/RUMApplicationAttributes' + id: + description: RUM application ID. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + type: + $ref: '#/components/schemas/RUMApplicationType' + required: + - attributes + - id + - type + type: object + RumRetentionFiltersOrderData: + description: The RUM retention filter data for ordering. + properties: + id: + $ref: '#/components/schemas/RumRetentionFilterID' + type: + $ref: '#/components/schemas/RumRetentionFilterType' + required: + - id + - type + type: object + RumRetentionFilterData: + description: The RUM retention filter. + properties: + attributes: + $ref: '#/components/schemas/RumRetentionFilterAttributes' + id: + $ref: '#/components/schemas/RumRetentionFilterID' + type: + $ref: '#/components/schemas/RumRetentionFilterType' + type: object + RumRetentionFilterCreateData: + description: The new RUM retention filter properties to create. + properties: + attributes: + $ref: '#/components/schemas/RumRetentionFilterCreateAttributes' + type: + $ref: '#/components/schemas/RumRetentionFilterType' + required: + - type + - attributes + type: object + RumExclusionFilterData: + description: An exclusion filter. + properties: + attributes: + $ref: '#/components/schemas/RumExclusionFilterAttributes' + id: + description: The ID of the exclusion filter. + example: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: string + meta: + $ref: '#/components/schemas/RumExclusionFilterMeta' + type: + $ref: '#/components/schemas/RumExclusionFilterType' + required: + - id + - type + type: object + RumExclusionFilterCreateData: + description: The new exclusion filter properties to create. + properties: + attributes: + $ref: '#/components/schemas/RumExclusionFilterCreateAttributes' + type: + $ref: '#/components/schemas/RumExclusionFilterType' + required: + - type + - attributes + type: object + RumExclusionFilterUpdateData: + description: The exclusion filter properties to update. + properties: + attributes: + $ref: '#/components/schemas/RumExclusionFilterUpdateAttributes' + id: + description: The ID of the exclusion filter. Must match the `ef_id` path parameter. + example: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: string + type: + $ref: '#/components/schemas/RumExclusionFilterType' + required: + - id + - type + - attributes + type: object + RumPermanentRetentionFilterData: + description: A permanent RUM retention filter. + properties: + attributes: + $ref: '#/components/schemas/RumPermanentRetentionFilterAttributes' + id: + $ref: '#/components/schemas/RumPermanentRetentionFilterID' + type: + $ref: '#/components/schemas/RumPermanentRetentionFilterType' + type: object + RumPermanentRetentionFilterID: + description: The identifier of a permanent RUM retention filter. + enum: + - rum_apm_flat_sampling + - synthetics_sessions + - forced_replay_sessions + example: synthetics_sessions + type: string + x-enum-varnames: + - RUM_APM_FLAT_SAMPLING + - SYNTHETICS_SESSIONS + - FORCED_REPLAY_SESSIONS + RumPermanentRetentionFilterUpdateData: + description: The new permanent RUM retention filter configuration to update. + properties: + attributes: + $ref: '#/components/schemas/RumPermanentRetentionFilterUpdateAttributes' + id: + $ref: '#/components/schemas/RumPermanentRetentionFilterID' + type: + $ref: '#/components/schemas/RumPermanentRetentionFilterType' + required: + - id + - type + - attributes + type: object + RumRetentionFilterUpdateData: + description: The new RUM retention filter properties to update. + properties: + attributes: + $ref: '#/components/schemas/RumRetentionFilterUpdateAttributes' + id: + $ref: '#/components/schemas/RumRetentionFilterID' + type: + $ref: '#/components/schemas/RumRetentionFilterType' + required: + - id + - type + - attributes + type: object + RUMApplicationUpdate: + description: RUM application update. + properties: + attributes: + $ref: '#/components/schemas/RUMApplicationUpdateAttributes' + id: + description: RUM application ID. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + type: + $ref: '#/components/schemas/RUMApplicationUpdateType' + required: + - id + - type + type: object + RumConfigData: + description: The RUM configuration data. + properties: + attributes: + $ref: '#/components/schemas/RumConfigAttributes' + id: + description: The organization ID associated with the RUM configuration. + example: '1234' + type: string + type: + $ref: '#/components/schemas/RumConfigType' + required: + - id + - type + - attributes + type: object + RumConfigUpdateData: + description: Object describing the RUM configuration to update. + properties: + attributes: + $ref: '#/components/schemas/RumConfigUpdateAttributes' + type: + $ref: '#/components/schemas/RumConfigType' + required: + - type + - attributes + type: object + RumConfigCreateData: + description: Object describing the RUM configuration to create. + properties: + attributes: + $ref: '#/components/schemas/RumConfigCreateAttributes' + type: + $ref: '#/components/schemas/RumConfigType' + required: + - type + - attributes + type: object + RumMetricResponseData: + description: The RUM-based metric properties. + properties: + attributes: + $ref: '#/components/schemas/RumMetricResponseAttributes' + id: + $ref: '#/components/schemas/RumMetricID' + type: + $ref: '#/components/schemas/RumMetricType' + type: object + RumMetricCreateData: + description: The new RUM-based metric properties. + properties: + attributes: + $ref: '#/components/schemas/RumMetricCreateAttributes' + id: + $ref: '#/components/schemas/RumMetricID' + type: + $ref: '#/components/schemas/RumMetricType' + required: + - id + - type + - attributes + type: object + RumMetricUpdateData: + description: The new RUM-based metric properties. + properties: + attributes: + $ref: '#/components/schemas/RumMetricUpdateAttributes' + id: + $ref: '#/components/schemas/RumMetricID' + type: + $ref: '#/components/schemas/RumMetricType' + required: + - type + - attributes + type: object + RumRetentionQuotaScopeType: + default: application + description: |- + The type of scope the retention quota configuration applies to. + `application` is the only supported scope type. + enum: + - application + example: application + type: string + x-enum-varnames: + - APPLICATION + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + RumRetentionQuotaConfigData: + description: The RUM retention quota configuration object. + properties: + attributes: + $ref: '#/components/schemas/RumRetentionQuotaConfigAttributes' + id: + description: The identifier of the scope the retention quota configuration applies to. + example: cd73a516-a481-4af5-8352-9b577465c77b + type: string + type: + $ref: '#/components/schemas/RumRetentionQuotaConfigType' + required: + - id + - type + - attributes + type: object + RumRetentionQuotaConfigUpdateData: + description: The RUM retention quota configuration to create or update. + properties: + attributes: + $ref: '#/components/schemas/RumRetentionQuotaConfigUpdateAttributes' + id: + description: |- + The identifier of the scope the retention quota configuration applies to. + Must match `scope_id` in the path. + example: cd73a516-a481-4af5-8352-9b577465c77b + type: string + type: + $ref: '#/components/schemas/RumRetentionQuotaConfigType' + required: + - id + - type + - attributes + type: object + TeamsOwnershipMappingResponseData: + description: The JSON:API data envelope for a teams ownership mapping. + properties: + attributes: + $ref: '#/components/schemas/TeamsOwnershipMappingResponseAttributes' + id: + description: The unique identifier of the teams ownership mapping. + example: '123' + type: string + type: + $ref: '#/components/schemas/TeamsOwnershipMappingType' + required: + - id + - type + - attributes + type: object + TeamsOwnershipMappingCreateData: + description: The JSON:API data envelope for a teams ownership mapping create request. + properties: + attributes: + $ref: '#/components/schemas/TeamsOwnershipMappingCreateDataAttributes' + type: + $ref: '#/components/schemas/TeamsOwnershipMappingType' + required: + - type + - attributes + type: object + TeamsOwnershipMappingBatchOperation: + description: A single add or remove operation, applied atomically with every other operation in the request. + properties: + data: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchOperationData' + op: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchOperationOp' + ref: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchOperationRef' + required: + - op + type: object + TeamsOwnershipMappingBatchResult: + description: |- + The result of a single operation. + Add operations are processed first, then remove operations, so results may not appear + in the same order as the request. Empty for `remove` operations. + properties: + data: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchResultData' + type: object + TeamsOwnershipMappingBatchError: + description: An error encountered while validating or applying an operation. + properties: + detail: + description: A human-readable explanation specific to this error. + example: prefix match_type is not enabled for this org + type: string + status: + description: The HTTP status code applicable to this error. + example: '400' + type: string + title: + description: A short, human-readable summary of the error. + example: Bad Request + type: string + required: + - status + - title + type: object + TeamsOwnershipRuleResponseData: + description: The JSON:API data envelope for a teams ownership rule. + properties: + attributes: + $ref: '#/components/schemas/TeamsOwnershipRuleResponseAttributes' + id: + description: |- + A deterministic identifier derived from the rule's grouping key. + This ID cannot be used to delete the rule directly; delete individual mappings + using the `mapping_id` under `teams` instead. + example: 3b1e2f7a9c4d6e8f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f + type: string + type: + $ref: '#/components/schemas/TeamsOwnershipRuleType' + required: + - id + - type + - attributes + type: object + RUMEvent: + description: Object description of a RUM event after being processed and stored by Datadog. + properties: + attributes: + $ref: '#/components/schemas/RUMEventAttributes' + id: + description: Unique ID of the event. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/RUMEventType' + type: object + RUMOperationCreateRequestData: + description: The data object for creating a RUM operation. + properties: + attributes: + $ref: '#/components/schemas/RUMOperationRequestAttributes' + type: + $ref: '#/components/schemas/RUMOperationType' + required: + - type + - attributes + type: object + RUMOperationResponseData: + description: The data object in a RUM operation response. + properties: + attributes: + $ref: '#/components/schemas/RUMOperationResponseAttributes' + id: + description: The unique identifier of the RUM operation. + example: abc12345-1234-5678-abcd-ef1234567890 + readOnly: true + type: string + type: + $ref: '#/components/schemas/RUMOperationType' + required: + - id + - type + - attributes + type: object + RUMOperationsListResponseMeta: + description: Metadata for a list of RUM operations. + properties: + page: + $ref: '#/components/schemas/RUMOperationsListResponseMetaPage' + type: object + RUMOperationStrongLinkResponseData: + description: The data object in a RUM operation strong link response. + properties: + attributes: + $ref: '#/components/schemas/RUMOperationStrongLinkResponseAttributes' + id: + description: The unique identifier of the strong link, formatted as `:`. + example: abc12345-1234-5678-abcd-ef1234567890:feature-123 + readOnly: true + type: string + type: + $ref: '#/components/schemas/RUMOperationStrongLinkType' + required: + - id + - type + - attributes + type: object + RUMOperationStrongLinksListResponseMeta: + description: Metadata for a list of RUM operation strong links. + properties: + limit: + description: The pagination limit. + format: int64 + type: integer + offset: + description: The current offset. + format: int64 + type: integer + total: + description: The total number of strong links matching the request. + format: int64 + type: integer + type: object + RUMOperationStrongLinkCreateRequestData: + description: The data object for creating a RUM operation strong link. + properties: + attributes: + $ref: '#/components/schemas/RUMOperationStrongLinkCreateRequestAttributes' + type: + $ref: '#/components/schemas/RUMOperationStrongLinkType' + required: + - type + - attributes + type: object + RUMOperationStrongLinkUpdateRequestData: + description: The data object for updating a RUM operation strong link. + properties: + attributes: + $ref: '#/components/schemas/RUMOperationStrongLinkUpdateRequestAttributes' + type: + $ref: '#/components/schemas/RUMOperationStrongLinkType' + required: + - type + - attributes + type: object + RUMOperationUpdateRequestData: + description: The data object for updating a RUM operation. + properties: + attributes: + $ref: '#/components/schemas/RUMOperationRequestAttributes' + id: + description: The unique identifier of the RUM operation. Must match the ID in the URL path. + example: abc12345-1234-5678-abcd-ef1234567890 + type: string + type: + $ref: '#/components/schemas/RUMOperationType' + required: + - id + - type + - attributes + type: object + AggregatedLongTasksRequestData: + description: Data envelope for an aggregated long tasks request. + properties: + attributes: + $ref: '#/components/schemas/AggregatedLongTasksRequestAttributes' + type: + $ref: '#/components/schemas/AggregatedLongTasksRequestType' + required: + - type + - attributes + type: object + AggregatedLongTasksResponseData: + description: Data envelope for an aggregated long tasks response. + properties: + attributes: + $ref: '#/components/schemas/AggregatedLongTasksResponseAttributes' + id: + description: Hash-based unique identifier for this aggregation. + example: 2f0b3455 + type: string + type: + $ref: '#/components/schemas/AggregatedLongTasksRequestType' + required: + - id + - type + - attributes + type: object + AggregatedSignalsProblemsRequestData: + description: Data envelope for an aggregated signals and problems request. + properties: + attributes: + $ref: '#/components/schemas/AggregatedSignalsProblemsRequestAttributes' + type: + $ref: '#/components/schemas/AggregatedSignalsProblemsRequestType' + required: + - type + - attributes + type: object + AggregatedSignalsProblemsResponseData: + description: Data envelope for an aggregated signals and problems response. + properties: + attributes: + $ref: '#/components/schemas/AggregatedSignalsProblemsResponseAttributes' + id: + description: Hash-based unique identifier for this aggregation. + example: 2f0b3455 + type: string + type: + $ref: '#/components/schemas/AggregatedSignalsProblemsRequestType' + required: + - id + - type + - attributes + type: object + AggregatedWaterfallRequestData: + description: Data envelope for an aggregated waterfall request. + properties: + attributes: + $ref: '#/components/schemas/AggregatedWaterfallRequestAttributes' + type: + $ref: '#/components/schemas/AggregatedWaterfallRequestType' + required: + - type + - attributes + type: object + AggregatedWaterfallResponseData: + description: Data envelope for an aggregated waterfall response. + properties: + attributes: + $ref: '#/components/schemas/AggregatedWaterfallResponseAttributes' + id: + description: Hash-based unique identifier for this aggregation. + example: 2f0b3455 + type: string + type: + $ref: '#/components/schemas/AggregatedWaterfallRequestType' + required: + - id + - type + - attributes + type: object + PlaylistData: + description: Data object representing a RUM replay playlist, including its identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/PlaylistDataAttributes' + id: + description: Unique identifier of the playlist. + type: string + type: + $ref: '#/components/schemas/PlaylistDataType' + required: + - type + type: object + SessionIdData: + description: A session identifier data object used for bulk playlist operations. + properties: + id: + description: Unique identifier of the RUM replay session. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/ViewershipHistorySessionDataType' + required: + - type + type: object + PlaylistsSessionData: + description: Data object representing a session within a playlist, including its identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/PlaylistsSessionDataAttributes' + id: + description: Unique identifier of the RUM replay session. + type: string + type: + $ref: '#/components/schemas/ViewershipHistorySessionDataType' + required: + - type + type: object + WatcherData: + description: Data object representing a session watcher, including their identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/WatcherDataAttributes' + id: + description: Unique identifier of the watcher user. + type: string + type: + $ref: '#/components/schemas/WatcherDataType' + required: + - type + type: object + WatchData: + description: Data object representing a session watch record, including its identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/WatchDataAttributes' + id: + description: Unique identifier of the watch record. + type: string + type: + $ref: '#/components/schemas/WatchDataType' + required: + - type + type: object + ViewershipHistorySessionData: + description: Data object representing a session in the viewership history, including its identifier, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/ViewershipHistorySessionDataAttributes' + id: + description: Unique identifier of the RUM replay session. + type: string + type: + $ref: '#/components/schemas/ViewershipHistorySessionDataType' + required: + - type + type: object + SourcemapsData: + description: List of source map data objects. + items: + $ref: '#/components/schemas/SourcemapItem' + type: array + SourcemapFileData: + description: JavaScript source map file data object. + properties: + attributes: + $ref: '#/components/schemas/SourcemapFileAttributes' + id: + description: The unique identifier of the source map file, typically the path to the file. + example: path/to/sourcemap.js.map + type: string + type: + $ref: '#/components/schemas/SourcemapFileDataType' + required: + - id + - type + - attributes + type: object + SourcemapsListMeta: + description: Pagination metadata for the source maps list response. + properties: + page: + $ref: '#/components/schemas/SourcemapsListMetaPage' + required: + - page + type: object + ServiceRepositoryInfoRequestData: + description: Data object for the service repository info request. + properties: + attributes: + $ref: '#/components/schemas/ServiceRepositoryInfoRequestAttributes' + type: + $ref: '#/components/schemas/ServiceRepositoryInfoDataType' + required: + - type + - attributes + type: object + ServiceRepositoryInfoResponseData: + description: Data object for the service repository info response. + properties: + attributes: + $ref: '#/components/schemas/ServiceRepositoryInfoResponseAttributes' + id: + description: The identifier composed of the service name and version. + example: my-web-service:1.0.0 + type: string + type: + $ref: '#/components/schemas/ServiceRepositoryInfoDataType' + required: + - id + - type + - attributes + type: object + FacetInfoRequestDataAttributes: + description: Attributes for the facet info request, specifying which facet to query and optional filters to apply. + properties: + facet_id: + description: The identifier of the facet attribute to retrieve value information for. + example: '' + type: string + limit: + description: Maximum number of facet values to return in the response. + example: 0 + format: int64 + type: integer + search: + $ref: '#/components/schemas/FacetInfoRequestDataAttributesSearch' + term_search: + $ref: '#/components/schemas/FacetInfoRequestDataAttributesTermSearch' + required: + - facet_id + - limit + type: object + FacetInfoRequestDataType: + default: users_facet_info_request + description: Users facet info request resource type. + enum: + - users_facet_info_request + example: users_facet_info_request + type: string + x-enum-varnames: + - USERS_FACET_INFO_REQUEST + FacetInfoResponseDataAttributes: + description: Attributes of the facet info response, containing the facet result data. + properties: + result: + $ref: '#/components/schemas/FacetInfoResponseDataAttributesResult' + type: object + FacetInfoResponseDataType: + default: users_facet_info + description: Users facet info resource type. + enum: + - users_facet_info + example: users_facet_info + type: string + x-enum-varnames: + - USERS_FACET_INFO + QueryAccountRequestDataAttributes: + description: Attributes for filtering and shaping the account query results. + properties: + limit: + description: Maximum number of account records to return in the response. + format: int64 + type: integer + query: + description: Filter expression using account attribute conditions to narrow results. + type: string + select_columns: + description: List of account attribute column names to include in the response. + items: + description: Name of an account attribute column to include in the response. + type: string + type: array + sort: + $ref: '#/components/schemas/QueryAccountRequestDataAttributesSort' + wildcard_search_term: + description: Free-text term used for wildcard search across account attribute values. + type: string + type: object + QueryAccountRequestDataType: + default: query_account_request + description: Query account request resource type. + enum: + - query_account_request + example: query_account_request + type: string + x-enum-varnames: + - QUERY_ACCOUNT_REQUEST + QueryResponseDataAttributes: + description: Attributes of the query response, containing the matched records and total count. + properties: + hits: + description: The list of matching records returned by the query, each as a map of attribute names to values. + items: + additionalProperties: {} + description: A single matched record represented as a map of attribute names to their values. + type: array + total: + description: Total number of records matching the query, regardless of the limit applied. + format: int64 + type: integer + type: object + QueryResponseDataType: + default: query_response + description: Query response resource type. + enum: + - query_response + example: query_response + type: string + x-enum-varnames: + - QUERY_RESPONSE + ProductAnalyticsAnalyticsListRequestAttributes: + description: Attributes for an analytics list request. + properties: + from: + description: Start time in epoch milliseconds. Must be less than `to`. + example: 1771232048460 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListQuery' + to: + description: End time in epoch milliseconds. + example: 1771836848262 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsAnalyticsListRequestType: + description: The resource type for analytics list requests. + enum: + - formula_analytics_extended_list_request + example: formula_analytics_extended_list_request + type: string + x-enum-varnames: + - FORMULA_ANALYTICS_EXTENDED_LIST_REQUEST + ProductAnalyticsAnalyticsListResponseAttributes: + description: Attributes of an analytics list response, containing the matching event rows. + properties: + records: + description: The event rows, each holding the values of the requested columns. + items: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListRecord' + type: array + total_count: + description: Total number of records matching the query, before the row limit is applied. + format: int64 + type: integer + type: object + ProductAnalyticsAnalyticsListResponseType: + description: The resource type identifier for an analytics list response. + enum: + - list_response + example: list_response + type: string + x-enum-varnames: + - LIST_RESPONSE + ProductAnalyticsResponseMetaStatus: + description: The execution status of a Product Analytics query. + enum: + - done + - running + - timeout + type: string + x-enum-varnames: + - DONE + - RUNNING + - TIMEOUT + ProductAnalyticsAnalyticsRequestAttributes: + description: Attributes for an analytics request. + properties: + enforced_execution_type: + $ref: '#/components/schemas/ProductAnalyticsExecutionType' + deprecated: true + description: |- + Deprecated. Selects the internal query execution infrastructure and will be removed. + Do not set this field. + from: + description: Start time in epoch milliseconds. Must be less than `to`. + example: 1771232048460 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsQuery' + request_id: + description: Unique identifier of the query. + type: string + to: + description: End time in epoch milliseconds. + example: 1771836848262 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsAnalyticsRequestType: + description: The resource type for analytics requests. + enum: + - formula_analytics_extended_request + example: formula_analytics_extended_request + type: string + x-enum-varnames: + - FORMULA_ANALYTICS_EXTENDED_REQUEST + ProductAnalyticsScalarResponseAttributes: + description: Attributes of a scalar analytics response, containing the result columns. + properties: + columns: + description: The list of result columns, each containing values and metadata. + items: + $ref: '#/components/schemas/ProductAnalyticsScalarColumn' + type: array + type: object + ProductAnalyticsScalarResponseType: + description: The resource type identifier for a scalar analytics response. + enum: + - scalar_response + type: string + x-enum-varnames: + - SCALAR_RESPONSE + ProductAnalyticsTimeseriesResponseAttributes: + description: |- + Attributes of a timeseries analytics response, containing series data, timestamps, and + interval definitions. + properties: + intervals: + description: Interval definitions describing the time buckets used in the response. + items: + $ref: '#/components/schemas/ProductAnalyticsInterval' + type: array + series: + description: The list of series, each corresponding to a query or group-by combination. + items: + $ref: '#/components/schemas/ProductAnalyticsSerie' + type: array + times: + description: Timestamps for each data point (epoch milliseconds). + items: + description: Epoch timestamp in milliseconds. + format: int64 + type: integer + type: array + values: + description: Values for each series at each time point. + items: + description: Array of numeric values for a single series across all time points. + items: + description: Numeric value at a time point, or null if no data is available. + format: double + nullable: true + type: number + type: array + type: array + type: object + ProductAnalyticsTimeseriesResponseType: + description: The resource type identifier for a timeseries analytics response. + enum: + - timeseries_response + type: string + x-enum-varnames: + - TIMESERIES_RESPONSE + ProductAnalyticsJourneyFunnelRequestAttributes: + description: Attributes of a journey funnel request. + properties: + exclude_anonymous_traffic: + default: false + description: Whether to exclude sessions that are not tied to an identified user. + type: boolean + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsJourneyRequestType: + description: The resource type identifier for a journey funnel request. + enum: + - journey_request + example: journey_request + type: string + x-enum-varnames: + - JOURNEY_REQUEST + ProductAnalyticsJourneyFunnelResponseAttributes: + description: Attributes of a journey funnel response. + properties: + end_to_end_conversion_rate: + description: Conversion rate from the first step to the last step. + example: 0.42 + format: double + type: number + end_to_end_elapsed_time: + $ref: '#/components/schemas/ProductAnalyticsElapsedTime' + funnel_steps: + description: The funnel steps, in the order given by the search expression. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelStep' + type: array + initial_count: + description: Number of entities that entered the funnel. + example: 1200 + format: int64 + type: integer + required: + - initial_count + - end_to_end_conversion_rate + - end_to_end_elapsed_time + - funnel_steps + type: object + ProductAnalyticsJourneyFunnelResponseType: + description: The resource type identifier for a journey funnel response. + enum: + - funnel_response + example: funnel_response + type: string + x-enum-varnames: + - FUNNEL_RESPONSE + ProductAnalyticsJourneyListRequestAttributes: + description: Attributes of a journey list request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsJourneyListQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsJourneyListRequestType: + description: The resource type identifier for a journey list request. + enum: + - journey_list_request + example: journey_list_request + type: string + x-enum-varnames: + - JOURNEY_LIST_REQUEST + ProductAnalyticsJourneyListResponseAttributes: + description: Attributes of a journey list response. + properties: + entity: + $ref: '#/components/schemas/ProductAnalyticsJourneyEntity' + records: + description: The returned rows. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyListRecord' + type: array + total_count: + description: Total number of rows matching the query, ignoring `limit`. + example: 231 + format: int64 + type: integer + required: + - entity + - total_count + - records + type: object + ProductAnalyticsJourneyListResponseType: + description: The resource type identifier for a journey list response. + enum: + - journey_list_response + example: journey_list_response + type: string + x-enum-varnames: + - JOURNEY_LIST_RESPONSE + ProductAnalyticsJourneyScalarRequestAttributes: + description: Attributes of a journey scalar request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsFormulaJourneyRequestType: + description: The resource type identifier for a journey timeseries or scalar request. + enum: + - formula_journey_request + example: formula_journey_request + type: string + x-enum-varnames: + - FORMULA_JOURNEY_REQUEST + ProductAnalyticsJourneyScalarResponseType: + description: The resource type identifier for a journey scalar response. + enum: + - journey_scalar_response + example: journey_scalar_response + type: string + x-enum-varnames: + - JOURNEY_SCALAR_RESPONSE + ProductAnalyticsFormulaJourneyRequestAttributes: + description: Attributes of a journey timeseries request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + interval: + description: Time bucket interval in milliseconds. + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsFormulaJourneyQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsJourneyTimeseriesResponseType: + description: The resource type identifier for a journey timeseries response. + enum: + - journey_timeseries_response + example: journey_timeseries_response + type: string + x-enum-varnames: + - JOURNEY_TIMESERIES_RESPONSE + ProductAnalyticsRetentionGridRequestAttributes: + description: Attributes of a retention grid request. + properties: + exclude_anonymous_traffic: + default: false + description: Whether to exclude sessions that are not tied to an identified user. + type: boolean + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsRetentionGridRequestType: + description: The resource type identifier for a retention grid request. + enum: + - retention_grid_request + example: retention_grid_request + type: string + x-enum-varnames: + - RETENTION_GRID_REQUEST + ProductAnalyticsRetentionGridResponseAttributes: + description: Attributes of a retention grid response, containing the cohort rows and the period columns. + properties: + cohorts: + description: The cohorts forming the rows of the grid. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridCohort' + type: array + retention_entity: + description: The entity whose retention was measured. + type: string + retention_periods: + description: The return periods forming the columns of the grid. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionPeriod' + type: array + unit: + description: Unit definitions for the grid values. + items: + $ref: '#/components/schemas/ProductAnalyticsUnit' + type: array + type: object + ProductAnalyticsRetentionGridResponseType: + description: The resource type identifier for a retention grid response. + enum: + - retention_grid_response + example: retention_grid_response + type: string + x-enum-varnames: + - RETENTION_GRID_RESPONSE + ProductAnalyticsRetentionListRequestAttributes: + description: Attributes of a retention list request. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsRetentionListQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsRetentionListRequestType: + description: The resource type identifier for a retention list request. + enum: + - retention_list_request + example: retention_list_request + type: string + x-enum-varnames: + - RETENTION_LIST_REQUEST + ProductAnalyticsRetentionListResponseAttributes: + description: Attributes of a retention list response, containing the matching entity rows. + properties: + records: + description: The matching entity rows. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionListRecord' + type: array + retention_entity: + description: The entity whose retention was measured. + type: string + type: object + ProductAnalyticsRetentionListResponseType: + description: The resource type identifier for a retention list response. + enum: + - retention_list_response + example: retention_list_response + type: string + x-enum-varnames: + - RETENTION_LIST_RESPONSE + ProductAnalyticsFormulaRetentionRequestAttributes: + description: Attributes of a retention scalar or retention timeseries request. + properties: + exclude_anonymous_traffic: + default: false + description: Whether to exclude sessions that are not tied to an identified user. + type: boolean + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsFormulaRetentionQuery' + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + - query + type: object + ProductAnalyticsFormulaRetentionRequestType: + description: The resource type identifier for a retention scalar or retention timeseries request. + enum: + - formula_retention_request + example: formula_retention_request + type: string + x-enum-varnames: + - FORMULA_RETENTION_REQUEST + ProductAnalyticsSankeyRequestAttributes: + description: Attributes of a Sankey request. + properties: + definition: + $ref: '#/components/schemas/ProductAnalyticsSankeyDefinition' + search: + $ref: '#/components/schemas/ProductAnalyticsSankeySearch' + time: + $ref: '#/components/schemas/ProductAnalyticsSankeyTime' + required: + - time + - search + - definition + type: object + ProductAnalyticsSankeyRequestType: + description: The resource type identifier for a Sankey request. + enum: + - sankey_request + example: sankey_request + type: string + x-enum-varnames: + - SANKEY_REQUEST + ProductAnalyticsSankeyResponseAttributes: + description: Attributes of a Sankey response, containing the nodes and the links between them. + properties: + links: + description: The links of the diagram, one per pair of connected nodes. + items: + $ref: '#/components/schemas/ProductAnalyticsSankeyLink' + type: array + nodes: + description: The nodes of the diagram, one per facet value and column. + items: + $ref: '#/components/schemas/ProductAnalyticsSankeyNode' + type: array + type: object + ProductAnalyticsSankeyResponseType: + description: The resource type identifier for a Sankey response. + enum: + - sankey_response + example: sankey_response + type: string + x-enum-varnames: + - SANKEY_RESPONSE + QueryEventFilteredUsersRequestDataAttributes: + description: Attributes for filtering users by both user properties and event platform activity. + properties: + event_query: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataAttributesEventQuery' + include_row_count: + description: Whether to include the total count of matching users in the response. + type: boolean + limit: + description: Maximum number of user records to return in the response. + format: int64 + type: integer + query: + description: Filter expression using user attribute conditions to narrow results. + type: string + select_columns: + description: List of user attribute column names to include in the response. + items: + description: Name of a user attribute column to include in the response. + type: string + type: array + type: object + QueryEventFilteredUsersRequestDataType: + default: query_event_filtered_users_request + description: Query event filtered users request resource type. + enum: + - query_event_filtered_users_request + example: query_event_filtered_users_request + type: string + x-enum-varnames: + - QUERY_EVENT_FILTERED_USERS_REQUEST + QueryUsersRequestDataAttributes: + description: Attributes for filtering and shaping the user query results. + properties: + limit: + description: Maximum number of user records to return in the response. + format: int64 + type: integer + query: + description: Filter expression using user attribute conditions to narrow results. + type: string + select_columns: + description: List of user attribute column names to include in the response. + items: + description: Name of a user attribute column to include in the response. + type: string + type: array + sort: + $ref: '#/components/schemas/QueryUsersRequestDataAttributesSort' + wildcard_search_term: + description: Free-text term used for wildcard search across user attribute values. + type: string + type: object + QueryUsersRequestDataType: + default: query_users_request + description: Query users request resource type. + enum: + - query_users_request + example: query_users_request + type: string + x-enum-varnames: + - QUERY_USERS_REQUEST + GetMappingResponseDataAttributes: + description: Attributes of the get mapping response, containing the list of configured entity attributes. + properties: + attributes: + description: The list of entity attributes and their mapping configurations. + items: + $ref: '#/components/schemas/GetMappingResponseDataAttributesAttributesItems' + type: array + type: object + GetMappingResponseDataType: + default: get_mappings_response + description: Get mappings response resource type. + enum: + - get_mappings_response + example: get_mappings_response + type: string + x-enum-varnames: + - GET_MAPPINGS_RESPONSE + CreateConnectionRequestDataAttributes: + description: Attributes defining the data source connection, including join configuration and custom fields. + properties: + fields: + description: List of custom attribute fields to import from the data source. + items: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems' + type: array + join_attribute: + description: The attribute in the data source used to join records with the entity. + example: '' + type: string + join_type: + description: The type of join key used to link the data source to the entity (for example, email or user_id). + example: '' + type: string + metadata: + additionalProperties: + type: string + description: Additional key-value metadata associated with the connection. + type: object + type: + description: The type of data source connection (for example, ref_table). + example: '' + type: string + required: + - join_attribute + - join_type + - type + type: object + UpdateConnectionRequestDataType: + default: connection_id + description: Connection id resource type. + enum: + - connection_id + example: connection_id + type: string + x-enum-varnames: + - CONNECTION_ID + UpdateConnectionRequestDataAttributes: + description: Attributes specifying the field modifications to apply to an existing connection. + properties: + fields_to_add: + description: New fields to add to the connection from the data source. + items: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems' + type: array + fields_to_delete: + description: Identifiers of existing fields to remove from the connection. + items: + description: The identifier of a field to delete from the connection. + type: string + type: array + fields_to_update: + description: Existing fields with updated metadata to apply to the connection. + items: + $ref: '#/components/schemas/UpdateConnectionRequestDataAttributesFieldsToUpdateItems' + type: array + type: object + ListConnectionsResponseDataAttributes: + description: Attributes of the list connections response, containing the collection of data source connections. + properties: + connections: + description: The list of data source connections configured for the entity. + items: + $ref: '#/components/schemas/ListConnectionsResponseDataAttributesConnectionsItems' + type: array + type: object + ListConnectionsResponseDataType: + default: list_connections_response + description: List connections response resource type. + enum: + - list_connections_response + example: list_connections_response + type: string + x-enum-varnames: + - LIST_CONNECTIONS_RESPONSE + SnapshotDataAttributes: + description: Attributes of a heatmap snapshot, including view context, device information, and audit metadata. + properties: + application_id: + description: Unique identifier of the RUM application. + type: string + created_at: + description: Timestamp when the snapshot was created. + format: date-time + readOnly: true + type: string + created_by: + description: Display name of the user who created the snapshot. + readOnly: true + type: string + created_by_handle: + description: Email handle of the user who created the snapshot. + readOnly: true + type: string + created_by_user_id: + description: Numeric identifier of the user who created the snapshot. + format: int64 + readOnly: true + type: integer + device_type: + description: Device type used when capturing the snapshot (e.g., desktop, mobile, tablet). + type: string + event_id: + description: Unique identifier of the RUM event associated with the snapshot. + type: string + is_device_type_selected_by_user: + description: Indicates whether the device type was explicitly selected by the user rather than auto-detected. + type: boolean + modified_at: + description: Timestamp when the snapshot was last modified. + format: date-time + readOnly: true + type: string + org_id: + description: Numeric identifier of the organization that owns the snapshot. + format: int64 + readOnly: true + type: integer + session_id: + description: Unique identifier of the RUM session associated with the snapshot. + type: string + snapshot_name: + description: Human-readable name for the snapshot. + type: string + start: + description: Offset in milliseconds from the start of the session at which the snapshot was captured. + format: int64 + type: integer + view_id: + description: Unique identifier of the RUM view associated with the snapshot. + type: string + view_name: + description: URL path or name of the view where the snapshot was captured. + type: string + type: object + SnapshotUpdateRequestDataType: + default: snapshots + description: Snapshots resource type. + enum: + - snapshots + example: snapshots + type: string + x-enum-varnames: + - SNAPSHOTS + SnapshotCreateRequestDataAttributes: + description: Attributes for creating a heatmap snapshot, including the view, session, event, and device context. + properties: + application_id: + description: Unique identifier of the RUM application. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + device_type: + description: Device type used when capturing the snapshot (e.g., desktop, mobile, tablet). + example: desktop + type: string + event_id: + description: Unique identifier of the RUM event associated with the snapshot. + example: 11111111-2222-3333-4444-555555555555 + type: string + is_device_type_selected_by_user: + description: Indicates whether the device type was explicitly selected by the user rather than auto-detected. + example: false + type: boolean + session_id: + description: Unique identifier of the RUM session associated with the snapshot. + type: string + snapshot_name: + description: Human-readable name for the snapshot. + example: My Snapshot + type: string + start: + description: Offset in milliseconds from the start of the session at which the snapshot was captured. + example: 0 + format: int64 + type: integer + view_id: + description: Unique identifier of the RUM view associated with the snapshot. + type: string + view_name: + description: URL path or name of the view where the snapshot was captured. + example: /home + type: string + required: + - view_name + - device_type + - application_id + - snapshot_name + - event_id + - start + - is_device_type_selected_by_user + type: object + SnapshotUpdateRequestDataAttributes: + description: Attributes for updating a heatmap snapshot, including event, session, and view context. + properties: + event_id: + description: Unique identifier of the RUM event associated with the snapshot. + example: 11111111-2222-3333-4444-555555555555 + type: string + is_device_type_selected_by_user: + description: Indicates whether the device type was explicitly selected by the user rather than auto-detected. + example: false + type: boolean + session_id: + description: Unique identifier of the RUM session associated with the snapshot. + type: string + start: + description: Offset in milliseconds from the start of the session at which the snapshot was captured. + example: 0 + format: int64 + type: integer + view_id: + description: Unique identifier of the RUM view associated with the snapshot. + type: string + required: + - event_id + - start + - is_device_type_selected_by_user + type: object + RUMAggregationFunction: + description: An aggregation function. + enum: + - count + - cardinality + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + - median + example: pc90 + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - PERCENTILE_75 + - PERCENTILE_90 + - PERCENTILE_95 + - PERCENTILE_98 + - PERCENTILE_99 + - SUM + - MIN + - MAX + - AVG + - MEDIAN + RUMComputeType: + default: total + description: The type of compute. + enum: + - timeseries + - total + type: string + x-enum-varnames: + - TIMESERIES + - TOTAL + RUMGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval. + properties: + interval: + description: The bin size of the histogram buckets. + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out). + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out). + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + RUMGroupByMissing: + description: The value to use for logs that don't have the facet used to group by. + type: string + format: double + RUMAggregateSort: + description: A sort rule. + example: + aggregation: count + order: asc + properties: + aggregation: + $ref: '#/components/schemas/RUMAggregationFunction' + metric: + description: The metric to sort by (only used for `type=measure`). + example: '@duration' + type: string + order: + $ref: '#/components/schemas/RUMSortOrder' + type: + $ref: '#/components/schemas/RUMAggregateSortType' + type: object + RUMGroupByTotal: + default: false + description: A resulting object to put the given computes in over all the matching records. + type: boolean + format: double + RUMBucketResponse: + description: Bucket values. + properties: + by: + additionalProperties: + description: The values for each group-by. + type: string + description: The key-value pairs for each group-by. + example: + '@session.type': user + '@type': view + type: object + computes: + additionalProperties: + $ref: '#/components/schemas/RUMAggregateBucketValue' + description: A map of the metric name to value for regular compute, or a list of values for a timeseries. + type: object + type: object + RUMResponsePage: + description: Paging attributes. + properties: + after: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of `page[cursor]`. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + RUMResponseStatus: + description: The status of the response. + enum: + - done + - timeout + example: done + type: string + x-enum-varnames: + - DONE + - TIMEOUT + RUMWarning: + description: A warning message indicating something that went wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: unknown_index + type: string + detail: + description: A detailed explanation of this specific warning. + example: 'indexes: foo, bar' + type: string + title: + description: A short human-readable summary of the warning. + example: One or several indexes are missing or invalid, results hold data from the other indexes + type: string + type: object + RUMApplicationListAttributes: + description: RUM application list attributes. + properties: + application_id: + description: ID of the RUM application. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + created_at: + description: Timestamp in ms of the creation date. + example: 1659479836169 + format: int64 + type: integer + created_by_handle: + description: Handle of the creator user. + example: john.doe + type: string + hash: + description: Hash of the RUM application. Optional. + type: string + is_active: + description: Indicates if the RUM application is active. + example: true + type: boolean + name: + description: Name of the RUM application. + example: my_rum_application + type: string + org_id: + description: Org ID of the RUM application. + example: 999 + format: int32 + maximum: 2147483647 + type: integer + product_scales: + $ref: '#/components/schemas/RUMProductScales' + type: + description: Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. + example: browser + type: string + updated_at: + description: Timestamp in ms of the last update date. + example: 1659479836169 + format: int64 + type: integer + updated_by_handle: + description: Handle of the updater user. + example: jane.doe + type: string + required: + - application_id + - created_at + - created_by_handle + - name + - org_id + - type + - updated_at + - updated_by_handle + type: object + RUMApplicationListType: + default: rum_application + description: RUM application list type. + enum: + - rum_application + example: rum_application + type: string + x-enum-varnames: + - RUM_APPLICATION + RUMApplicationCreateAttributes: + description: RUM application creation attributes. + properties: + name: + description: Name of the RUM application. + example: my_new_rum_application + type: string + product_analytics_retention_state: + $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' + rum_event_processing_state: + $ref: '#/components/schemas/RUMEventProcessingState' + type: + description: Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. + example: browser + type: string + required: + - name + type: object + RUMApplicationCreateType: + default: rum_application_create + description: RUM application creation type. + enum: + - rum_application_create + example: rum_application_create + type: string + x-enum-varnames: + - RUM_APPLICATION_CREATE + RUMApplicationAttributes: + description: RUM application attributes. + properties: + api_key_id: + description: ID of the API key associated with the application. + example: 123456789 + format: int32 + maximum: 2147483647 + type: integer + application_id: + description: ID of the RUM application. + example: abcd1234-0000-0000-abcd-1234abcd5678 + type: string + client_token: + description: Client token of the RUM application. + example: abcd1234efgh5678ijkl90abcd1234efgh0 + type: string + created_at: + description: Timestamp in ms of the creation date. + example: 1659479836169 + format: int64 + type: integer + created_by_handle: + description: Handle of the creator user. + example: john.doe + type: string + hash: + description: Hash of the RUM application. Optional. + type: string + is_active: + description: Indicates if the RUM application is active. + example: true + type: boolean + name: + description: Name of the RUM application. + example: my_rum_application + type: string + org_id: + description: Org ID of the RUM application. + example: 999 + format: int32 + maximum: 2147483647 + type: integer + product_scales: + $ref: '#/components/schemas/RUMProductScales' + remote_config_id: + description: ID of the RUM SDK remote configuration for the application, if one exists. + example: abc12345-1234-5678-abcd-ef1234567890 + type: string + type: + description: Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. + example: browser + type: string + updated_at: + description: Timestamp in ms of the last update date. + example: 1659479836169 + format: int64 + type: integer + updated_by_handle: + description: Handle of the updater user. + example: jane.doe + type: string + required: + - application_id + - client_token + - created_at + - created_by_handle + - name + - org_id + - type + - updated_at + - updated_by_handle + type: object + RUMApplicationType: + default: rum_application + description: RUM application response type. + enum: + - rum_application + example: rum_application + type: string + x-enum-varnames: + - RUM_APPLICATION + RumRetentionFilterID: + description: ID of retention filter in UUID. + example: 051601eb-54a0-abc0-03f9-cc02efa18892 + type: string + RumRetentionFilterType: + default: retention_filters + description: The type of the resource. The value should always be retention_filters. + enum: + - retention_filters + example: retention_filters + type: string + x-enum-varnames: + - RETENTION_FILTERS + RumRetentionFilterAttributes: + description: The object describing attributes of a RUM retention filter. + properties: + cross_product_sampling: + $ref: '#/components/schemas/RumCrossProductSampling' + enabled: + $ref: '#/components/schemas/RumRetentionFilterEnabled' + event_type: + $ref: '#/components/schemas/RumRetentionFilterEventType' + name: + $ref: '#/components/schemas/RunRetentionFilterName' + query: + $ref: '#/components/schemas/RumRetentionFilterQuery' + sample_rate: + $ref: '#/components/schemas/RumRetentionFilterSampleRate' + type: object + RumRetentionFilterCreateAttributes: + description: The object describing attributes of a RUM retention filter to create. + properties: + cross_product_sampling: + $ref: '#/components/schemas/RumCrossProductSamplingCreate' + enabled: + $ref: '#/components/schemas/RumRetentionFilterEnabled' + event_type: + $ref: '#/components/schemas/RumRetentionFilterEventType' + name: + $ref: '#/components/schemas/RunRetentionFilterName' + query: + $ref: '#/components/schemas/RumRetentionFilterQuery' + sample_rate: + $ref: '#/components/schemas/RumRetentionFilterSampleRate' + required: + - event_type + - name + - sample_rate + type: object + RumExclusionFilterAttributes: + description: The attributes of an exclusion filter. + properties: + enabled: + $ref: '#/components/schemas/RumExclusionFilterEnabled' + event_type: + $ref: '#/components/schemas/RumExclusionFilterEventType' + name: + $ref: '#/components/schemas/RumExclusionFilterName' + query: + $ref: '#/components/schemas/RumExclusionFilterQuery' + type: object + RumExclusionFilterMeta: + description: Metadata about the exclusion filter. + properties: + enabled_at: + description: Unix epoch (in milliseconds) when the exclusion filter was last enabled. + example: 1735689600000 + format: int64 + type: integer + updated_at: + description: Unix epoch (in milliseconds) of the last update. + example: 1735689600000 + format: int64 + type: integer + updated_by_handle: + description: Handle of the user who last updated the exclusion filter. + example: jane.doe@example.com + type: string + type: object + RumExclusionFilterType: + default: exclusion_filters + description: The resource type. The value must be `exclusion_filters`. + enum: + - exclusion_filters + example: exclusion_filters + type: string + x-enum-varnames: + - EXCLUSION_FILTERS + RumExclusionFilterCreateAttributes: + description: The attributes of an exclusion filter to create. + properties: + enabled: + description: Whether the exclusion filter is active. Defaults to `true`. + example: true + type: boolean + event_type: + $ref: '#/components/schemas/RumExclusionFilterEventType' + name: + $ref: '#/components/schemas/RumExclusionFilterName' + query: + $ref: '#/components/schemas/RumExclusionFilterQuery' + required: + - name + type: object + RumExclusionFilterUpdateAttributes: + description: |- + The attributes of an exclusion filter that can be updated. + For the built-in Error Tracking exclusion filter, only `enabled` can be set; + `name`, `event_type`, and `query` must be omitted. + properties: + enabled: + $ref: '#/components/schemas/RumExclusionFilterEnabled' + event_type: + $ref: '#/components/schemas/RumExclusionFilterEventType' + name: + $ref: '#/components/schemas/RumExclusionFilterName' + query: + $ref: '#/components/schemas/RumExclusionFilterQuery' + type: object + RumPermanentRetentionFilterAttributes: + description: The attributes of a permanent RUM retention filter. + properties: + cross_product_sampling: + $ref: '#/components/schemas/RumCrossProductSampling' + description: + description: A description of what the filter retains. + example: All sessions generated by Synthetics are retained at 100%. + type: string + editability: + $ref: '#/components/schemas/RumPermanentRetentionFilterEditability' + name: + description: The display name of the permanent retention filter. + example: Synthetics Sessions + type: string + type: object + RumPermanentRetentionFilterType: + default: permanent_retention_filters + description: The type of the resource. The value should always be `permanent_retention_filters`. + enum: + - permanent_retention_filters + example: permanent_retention_filters + type: string + x-enum-varnames: + - PERMANENT_RETENTION_FILTERS + RumPermanentRetentionFilterUpdateAttributes: + description: The configuration to update on a permanent RUM retention filter. + properties: + cross_product_sampling: + $ref: '#/components/schemas/RumCrossProductSamplingUpdate' + type: object + RumRetentionFilterUpdateAttributes: + description: The object describing attributes of a RUM retention filter to update. + properties: + cross_product_sampling: + $ref: '#/components/schemas/RumCrossProductSamplingUpdate' + enabled: + $ref: '#/components/schemas/RumRetentionFilterEnabled' + event_type: + $ref: '#/components/schemas/RumRetentionFilterEventType' + name: + $ref: '#/components/schemas/RunRetentionFilterName' + query: + $ref: '#/components/schemas/RumRetentionFilterQuery' + sample_rate: + $ref: '#/components/schemas/RumRetentionFilterSampleRate' + type: object + RUMApplicationUpdateAttributes: + description: RUM application update attributes. + properties: + name: + description: Name of the RUM application. + example: updated_name_for_my_existing_rum_application + type: string + product_analytics_retention_state: + $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' + rum_event_processing_state: + $ref: '#/components/schemas/RUMEventProcessingState' + type: + description: Type of the RUM application. Supported values are `browser`, `ios`, `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, `kotlin-multiplatform`. + example: browser + type: string + type: object + RUMApplicationUpdateType: + default: rum_application_update + description: RUM application update type. + enum: + - rum_application_update + example: rum_application_update + type: string + x-enum-varnames: + - RUM_APPLICATION_UPDATE + RumConfigAttributes: + description: Attributes of the RUM configuration. + properties: + disabled: + description: Whether the RUM configuration is disabled for the organization. + example: false + type: boolean + enforced_application_tags: + description: Whether application tags are enforced for the RUM applications in the organization. + example: true + type: boolean + enforced_application_tags_updated_at: + description: Timestamp of when the enforced application tags setting was last updated. + example: '2024-01-15T09:30:00.000Z' + format: date-time + type: string + enforced_application_tags_updated_by: + description: Handle of the user who last updated the enforced application tags setting. + example: user@example.com + type: string + ootb_metrics_version: + description: Version of the out-of-the-box metrics installed for the organization. + example: 5 + format: int64 + type: integer + ootb_metrics_version_installed_at: + description: Timestamp of when the out-of-the-box metrics version was installed. + example: '2024-01-15T09:30:00.000Z' + format: date-time + type: string + retention_filters_enabled: + description: Whether retention filters are enabled for the organization. + example: true + type: boolean + retention_filters_enabled_updated_at: + description: Timestamp of when the retention filters setting was last updated. + example: '2024-01-15T09:30:00.000Z' + format: date-time + type: string + retention_filters_enabled_updated_by: + description: Handle of the user or job who last updated the retention filters setting. + example: contract-update-job + type: string + required: + - enforced_application_tags + - retention_filters_enabled + type: object + RumConfigType: + default: rum_config + description: The type of the resource. The value should always be `rum_config`. + enum: + - rum_config + example: rum_config + type: string + x-enum-varnames: + - RUM_CONFIG + RumConfigUpdateAttributes: + description: Attributes of the RUM configuration to update. + properties: + enforced_application_tags: + description: Whether application tags are enforced for the RUM applications in the organization. + example: true + type: boolean + required: + - enforced_application_tags + type: object + RumConfigCreateAttributes: + description: Attributes of the RUM configuration to create. + properties: + enforced_application_tags: + description: Whether application tags are enforced for the RUM applications in the organization. + example: true + type: boolean + required: + - enforced_application_tags + type: object + RumMetricResponseAttributes: + description: The object describing a Datadog RUM-based metric. + properties: + compute: + $ref: '#/components/schemas/RumMetricResponseCompute' + event_type: + $ref: '#/components/schemas/RumMetricEventType' + filter: + $ref: '#/components/schemas/RumMetricResponseFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/RumMetricResponseGroupBy' + type: array + uniqueness: + $ref: '#/components/schemas/RumMetricResponseUniqueness' + type: object + RumMetricID: + description: The name of the RUM-based metric. + example: rum.sessions.webui.count + type: string + RumMetricType: + default: rum_metrics + description: The type of the resource. The value should always be rum_metrics. + enum: + - rum_metrics + example: rum_metrics + type: string + x-enum-varnames: + - RUM_METRICS + RumMetricCreateAttributes: + description: The object describing the Datadog RUM-based metric to create. + properties: + compute: + $ref: '#/components/schemas/RumMetricCompute' + event_type: + $ref: '#/components/schemas/RumMetricEventType' + filter: + $ref: '#/components/schemas/RumMetricFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/RumMetricGroupBy' + type: array + uniqueness: + $ref: '#/components/schemas/RumMetricUniqueness' + required: + - event_type + - compute + type: object + RumMetricUpdateAttributes: + description: The RUM-based metric properties that will be updated. + properties: + compute: + $ref: '#/components/schemas/RumMetricUpdateCompute' + filter: + $ref: '#/components/schemas/RumMetricFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/RumMetricGroupBy' + type: array + type: object + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + RumRetentionQuotaConfigAttributes: + description: The RUM retention quota configuration properties. + properties: + custom: + $ref: '#/components/schemas/RumRetentionQuotaCustomConfig' + mode: + $ref: '#/components/schemas/RumRetentionQuotaMode' + org_id: + description: The ID of the organization the retention quota configuration belongs to. + example: 2 + format: int64 + type: integer + updated_at: + description: The date the retention quota configuration was last updated. + example: '2026-03-04T15:37:54.951447Z' + format: date-time + type: string + updated_by: + description: The handle of the user who last updated the retention quota configuration. + example: test@example.com + type: string + required: + - mode + - org_id + type: object + RumRetentionQuotaConfigType: + default: rum_quota_config + description: The type of the resource, always `rum_quota_config`. + enum: + - rum_quota_config + example: rum_quota_config + type: string + x-enum-varnames: + - RUM_QUOTA_CONFIG + RumRetentionQuotaConfigUpdateAttributes: + description: The RUM retention quota configuration properties to create or update. + properties: + custom: + $ref: '#/components/schemas/RumRetentionQuotaCustomConfig' + mode: + $ref: '#/components/schemas/RumRetentionQuotaMode' + required: + - mode + type: object + TeamsOwnershipMappingResponseAttributes: + description: The attributes of a teams ownership mapping. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, this is the real application UUID. + For mobile applications, this is the nil UUID `00000000-0000-0000-0000-000000000000` (wildcard), meaning the ownership applies across all applications. + example: 11111111-2222-3333-4444-555555555555 + type: string + created_at: + description: Timestamp when the mapping was created. + example: '2026-01-15T09:30:00.000Z' + format: date-time + type: string + created_by: + description: The UUID of the user who created the mapping. + example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: string + match_type: + $ref: '#/components/schemas/TeamsOwnershipMatchType' + org_id: + description: The ID of the organization that owns this mapping. + example: 123456 + format: int64 + type: integer + service: + description: The RUM application's service name. For browser applications, may be empty. For mobile applications, this is the service that scopes the ownership. + example: web-checkout + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: team-rum + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: /checkout + type: string + required: + - team_handle + - view_name + - service + - application_id + - org_id + - created_at + - created_by + - match_type + type: object + TeamsOwnershipMappingType: + default: teams_ownership_mappings + description: The type of the resource. The value should always be teams_ownership_mappings. + enum: + - teams_ownership_mappings + example: teams_ownership_mappings + type: string + x-enum-varnames: + - TEAMS_OWNERSHIP_MAPPINGS + TeamsOwnershipMappingCreateDataAttributes: + description: The attributes of the teams ownership mapping to create. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, provide the real application UUID — the team is applied to the view regardless of service. + For mobile applications, omit this field (or set it to the nil UUID `00000000-0000-0000-0000-000000000000`) — the team is applied to the view and service combination across all applications. + example: 11111111-2222-3333-4444-555555555555 + format: uuid + type: string + match_type: + $ref: '#/components/schemas/TeamsOwnershipMatchType' + service: + description: The RUM application's service name. For browser applications, this is optional. For mobile applications, this is required and scopes the ownership to a specific service. + example: web-checkout + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: team-rum + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: /checkout + type: string + required: + - team_handle + - view_name + type: object + TeamsOwnershipMappingBatchOperationData: + description: The mapping to add. Required when `op` is `add`. + properties: + attributes: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchOperationDataAttributes' + type: + $ref: '#/components/schemas/TeamsOwnershipMappingType' + required: + - type + - attributes + type: object + TeamsOwnershipMappingBatchOperationOp: + description: Whether this operation adds a new mapping or removes an existing one. + enum: + - add + - remove + example: add + type: string + x-enum-varnames: + - ADD + - REMOVE + TeamsOwnershipMappingBatchOperationRef: + description: Identifies an existing mapping to remove. Required when `op` is `remove`. + properties: + id: + description: The ID of the mapping to remove. + example: '456' + type: string + type: + $ref: '#/components/schemas/TeamsOwnershipMappingType' + required: + - type + - id + type: object + TeamsOwnershipMappingBatchResultData: + description: The mapping created by an `add` operation. + properties: + attributes: + $ref: '#/components/schemas/TeamsOwnershipMappingBatchResultDataAttributes' + id: + description: The unique identifier of the teams ownership mapping. + example: '123' + type: string + type: + $ref: '#/components/schemas/TeamsOwnershipMappingType' + required: + - type + - id + - attributes + type: object + TeamsOwnershipRuleResponseAttributes: + description: The attributes of a teams ownership rule. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, this is the real application UUID. + For mobile applications, this is the nil UUID `00000000-0000-0000-0000-000000000000` (wildcard), meaning the ownership applies across all applications. + example: 11111111-2222-3333-4444-555555555555 + type: string + match_type: + $ref: '#/components/schemas/TeamsOwnershipMatchType' + service: + description: The RUM application's service name. For browser applications, may be empty. For mobile applications, this is the service that scopes the ownership. + example: web-checkout + type: string + teams: + description: The teams that own the matched views, each paired with the ID of its underlying mapping. + items: + $ref: '#/components/schemas/TeamsOwnershipRuleTeamMapping' + type: array + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: /checkout + type: string + required: + - teams + - view_name + - service + - application_id + - match_type + type: object + TeamsOwnershipRuleType: + default: teams_ownership_grouped_mappings + description: The type of the resource. The value should always be teams_ownership_grouped_mappings. + enum: + - teams_ownership_grouped_mappings + example: teams_ownership_grouped_mappings + type: string + x-enum-varnames: + - TEAMS_OWNERSHIP_GROUPED_MAPPINGS + RUMEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from RUM events. + example: + customAttribute: 123 + duration: 2345 + type: object + service: + description: |- + The name of the application or service generating RUM events. + It is used to switch from RUM to APM, so make sure you define the same + value when you use both products. + example: web-app + type: string + tags: + description: Array of tags associated with your event. + example: + - team:A + items: + description: Tag associated with your event. + type: string + type: array + timestamp: + description: Timestamp of your event. + example: '2019-01-02T09:42:36.320Z' + format: date-time + type: string + type: object + RUMEventType: + default: rum + description: Type of the event. + enum: + - rum + example: rum + type: string + x-enum-varnames: + - RUM + RUMOperationRequestAttributes: + description: Attributes for creating or updating a RUM operation. + properties: + application_id: + description: The RUM application ID the operation belongs to. + example: abc12345-1234-5678-abcd-ef1234567890 + format: uuid + type: string + category: + description: The category of the RUM operation. + nullable: true + type: string + description: + description: A description of the RUM operation. + nullable: true + type: string + display_name: + description: A human-readable display name for the RUM operation. + example: Checkout completed + type: string + feature_ids: + description: The list of feature IDs associated with the RUM operation. + items: + type: string + type: array + journey_rum: + $ref: '#/components/schemas/RUMOperationJourneyRum' + name: + description: The unique name of the RUM operation. Must not contain spaces. + example: checkout_completed + type: string + tags: + description: A list of tags associated with the RUM operation. + example: + - team:checkout + items: + type: string + type: array + required: + - name + - tags + - journey_rum + type: object + RUMOperationType: + description: The JSON:API type for RUM operation resources. + enum: + - operations + example: operations + type: string + x-enum-varnames: + - OPERATIONS + RUMOperationResponseAttributes: + description: Attributes of a RUM operation response. + properties: + application_id: + description: The RUM application ID the operation belongs to. + format: uuid + nullable: true + type: string + category: + description: The category of the RUM operation. + nullable: true + type: string + created_at: + description: The timestamp when the RUM operation was created. + format: date-time + readOnly: true + type: string + created_by: + $ref: '#/components/schemas/RUMOperationUser' + description: + description: A description of the RUM operation. + nullable: true + type: string + display_name: + description: A human-readable display name for the RUM operation. + example: Checkout completed + type: string + feature_ids: + description: The list of feature IDs associated with the RUM operation. + items: + type: string + type: array + journey_rum: + $ref: '#/components/schemas/RUMOperationJourneyRum' + name: + description: The unique name of the RUM operation. Must not contain spaces. + example: checkout_completed + type: string + org_id: + description: The ID of the organization the RUM operation belongs to. + format: int64 + readOnly: true + type: integer + tags: + description: A list of tags associated with the RUM operation. + example: + - team:checkout + items: + type: string + type: array + updated_at: + description: The timestamp when the RUM operation was last updated. + format: date-time + nullable: true + readOnly: true + type: string + updated_by: + $ref: '#/components/schemas/RUMOperationUser' + required: + - name + - tags + - journey_rum + type: object + RUMOperationsListResponseMetaPage: + description: Pagination metadata for a list of RUM operations. + properties: + first_offset: + description: The offset of the first page. + format: int64 + type: integer + last_offset: + description: The offset of the last page. + format: int64 + type: integer + limit: + description: The pagination limit. + format: int64 + type: integer + next_offset: + description: The offset of the next page, if any. + format: int64 + nullable: true + type: integer + offset: + description: The current offset. + format: int64 + type: integer + prev_offset: + description: The offset of the previous page, if any. + format: int64 + nullable: true + type: integer + total: + description: The total number of RUM operations matching the search. + format: int64 + type: integer + type: + description: The type of pagination used. + example: offset + type: string + type: object + RUMOperationStrongLinkResponseAttributes: + description: Attributes of a RUM operation strong link response. + properties: + created_at: + description: The timestamp when the strong link was created. + format: date-time + readOnly: true + type: string + description: + description: A description of the strong link. + nullable: true + type: string + feature_id: + description: The unique identifier of the linked feature. + example: feature-123 + readOnly: true + type: string + operation_id: + description: The unique identifier of the linked RUM operation. + example: abc12345-1234-5678-abcd-ef1234567890 + readOnly: true + type: string + status: + $ref: '#/components/schemas/RUMOperationStrongLinkStatus' + tags: + description: A list of tags associated with the strong link. + items: + type: string + type: array + updated_at: + description: The timestamp when the strong link was last updated. + format: date-time + nullable: true + readOnly: true + type: string + required: + - operation_id + - feature_id + - status + type: object + RUMOperationStrongLinkType: + description: The JSON:API type for RUM operation strong link resources. + enum: + - strong_links + example: strong_links + type: string + x-enum-varnames: + - STRONG_LINKS + RUMOperationStrongLinkCreateRequestAttributes: + description: Attributes for creating a RUM operation strong link. + properties: + application_id: + description: The RUM application ID used when creating a stub operation from `operation_name`. + format: uuid + type: string + description: + description: A description of the strong link. + nullable: true + type: string + feature_id: + description: The unique identifier of the feature to link. + example: feature-123 + type: string + operation_id: + description: |- + The unique identifier of the RUM operation to link. Either `operation_id` or + `operation_name` is required. + example: abc12345-1234-5678-abcd-ef1234567890 + type: string + operation_name: + description: |- + The name of the RUM operation to link. Either `operation_id` or `operation_name` is + required. If no operation with this name exists, a stub operation is created. + type: string + status: + $ref: '#/components/schemas/RUMOperationStrongLinkStatus' + tags: + description: A list of tags associated with the strong link. + items: + type: string + type: array + required: + - feature_id + type: object + RUMOperationStrongLinkUpdateRequestAttributes: + description: Attributes for updating a RUM operation strong link. + properties: + status: + $ref: '#/components/schemas/RUMOperationStrongLinkUpdateStatus' + required: + - status + type: object + AggregatedLongTasksRequestAttributes: + description: Attributes for an aggregated long tasks query. + properties: + application_id: + description: The RUM application ID to analyze. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteria' + filter: + description: RUM query string to filter events (for example, @session.type:user @geo.country:US). + example: '@session.type:user' + type: string + from: + description: Start of the time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + sample_size: + description: Number of view instances to sample, between 1 and 500. + example: 20 + format: int32 + maximum: 500 + minimum: 1 + type: integer + to: + description: End of the time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_name: + description: The RUM view name to analyze (for example, /account/login). + example: /account/login(/:type) + type: string + required: + - application_id + - view_name + - from + - to + - sample_size + type: object + AggregatedLongTasksRequestType: + description: The JSON:API type for aggregated long tasks requests. + enum: + - aggregated_long_tasks + example: aggregated_long_tasks + type: string + x-enum-varnames: + - AGGREGATED_LONG_TASKS + AggregatedLongTasksResponseAttributes: + description: Attributes of an aggregated long tasks response. + properties: + application_id: + description: The RUM application ID that was analyzed. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteria' + from: + description: Start of the analyzed time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + long_tasks_by_invoker_type: + description: Long task statistics grouped by invoker type, sorted by impact score descending. + items: + $ref: '#/components/schemas/AggregatedLongTasksByInvokerType' + type: array + sampled_view_ids: + description: List of RUM view IDs sampled for this aggregation, capped at 50. + example: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + items: + type: string + type: array + to: + description: End of the analyzed time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_count: + description: Number of view instances included in the analysis. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + view_name: + description: The RUM view name that was analyzed. + example: /account/login(/:type) + type: string + required: + - view_name + - application_id + - view_count + - from + - to + - sampled_view_ids + - long_tasks_by_invoker_type + type: object + AggregatedSignalsProblemsRequestAttributes: + description: Attributes for an aggregated signals and problems query. + properties: + application_id: + description: The RUM application ID to analyze. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteria' + detection_types: + description: List of detection types to include in the response. When omitted, all types are returned. + example: + - high_script_evaluations + - uncompressed_resources + items: + type: string + type: array + filter: + description: RUM query string to filter events (for example, @session.type:user @geo.country:US). + example: '@session.type:user' + type: string + from: + description: Start of the time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + sample_size: + description: Number of view instances to sample, between 1 and 50. + example: 30 + format: int32 + maximum: 50 + minimum: 1 + type: integer + to: + description: End of the time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_name: + description: The RUM view name to analyze (for example, /account/login). + example: /account/login(/:type) + type: string + required: + - application_id + - view_name + - from + - to + - sample_size + type: object + AggregatedSignalsProblemsRequestType: + description: The JSON:API type for aggregated signals and problems requests. + enum: + - aggregated_signals_problems + example: aggregated_signals_problems + type: string + x-enum-varnames: + - AGGREGATED_SIGNALS_PROBLEMS + AggregatedSignalsProblemsResponseAttributes: + description: Attributes of an aggregated signals and problems response. + properties: + application_id: + description: The RUM application ID that was analyzed. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteria' + from: + description: Start of the analyzed time range as a Unix timestamp in seconds. + example: 1710000000 + format: int64 + type: integer + problem_detections: + $ref: '#/components/schemas/SignalsProblemsDetections' + sample_metadata: + $ref: '#/components/schemas/SignalsProblemsSampleMetadata' + to: + description: End of the analyzed time range as a Unix timestamp in seconds. + example: 1710003600 + format: int64 + type: integer + view_name: + description: The RUM view name that was analyzed. + example: /checkout + type: string + required: + - view_name + - application_id + - from + - to + - sample_metadata + - problem_detections + type: object + AggregatedWaterfallRequestAttributes: + description: Attributes for an aggregated waterfall query. + properties: + application_id: + description: The RUM application ID to analyze. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteria' + filter: + description: RUM query string to filter events (for example, @session.type:user @geo.country:US). + example: '@session.type:user' + type: string + from: + description: Start of the time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + include_global_appearance: + description: When true, enriches each resource with cross-view appearance statistics. + example: false + type: boolean + sample_size: + description: Number of view instances to sample, between 1 and 500. + example: 20 + format: int32 + maximum: 500 + minimum: 1 + type: integer + to: + description: End of the time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + view_name: + description: The RUM view name to analyze (for example, /account/login). + example: /account/login(/:type) + type: string + required: + - application_id + - view_name + - from + - to + - sample_size + type: object + AggregatedWaterfallRequestType: + description: The JSON:API type for aggregated waterfall requests. + enum: + - aggregated_waterfall + example: aggregated_waterfall + type: string + x-enum-varnames: + - AGGREGATED_WATERFALL + AggregatedWaterfallResponseAttributes: + description: Attributes of an aggregated waterfall response. + properties: + application_id: + description: The RUM application ID that was analyzed. + example: ccbc53b1-74f2-496b-bdd7-9a8fa7b7376b + type: string + criteria: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteria' + from: + description: Start of the analyzed time range as a Unix timestamp in seconds. + example: 1762437564 + format: int64 + type: integer + resources: + description: Network resources in chronological waterfall order. + items: + $ref: '#/components/schemas/AggregatedResource' + type: array + sampled_view_ids: + description: List of RUM view IDs sampled for this aggregation, capped at 50. + example: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + - dfe318df-4ae5-44b8-9fe2-4107885e1a46 + items: + type: string + type: array + to: + description: End of the analyzed time range as a Unix timestamp in seconds. + example: 1762523964 + format: int64 + type: integer + total_cache_hit_rate_pct: + description: Overall cache hit rate across all sampled views. + example: 0.677 + format: double + type: number + view_count: + description: Number of view instances included in the analysis. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + view_name: + description: The RUM view name that was analyzed. + example: /account/login(/:type) + type: string + required: + - view_name + - application_id + - view_count + - from + - to + - sampled_view_ids + - total_cache_hit_rate_pct + - resources + type: object + PlaylistDataAttributes: + description: Attributes of a RUM replay playlist, including its name, description, session count, and audit timestamps. + properties: + created_at: + description: Timestamp when the playlist was created. + format: date-time + type: string + created_by: + $ref: '#/components/schemas/PlaylistDataAttributesCreatedBy' + description: + description: Optional human-readable description of the playlist's purpose or contents. + type: string + name: + description: Human-readable name of the playlist. + example: My Playlist + type: string + session_count: + description: Number of replay sessions in the playlist. + format: int64 + type: integer + updated_at: + description: Timestamp when the playlist was last updated. + format: date-time + type: string + required: + - name + type: object + PlaylistDataType: + default: rum_replay_playlist + description: Rum replay playlist resource type. + enum: + - rum_replay_playlist + example: rum_replay_playlist + type: string + x-enum-varnames: + - RUM_REPLAY_PLAYLIST + ViewershipHistorySessionDataType: + default: rum_replay_session + description: Rum replay session resource type. + enum: + - rum_replay_session + example: rum_replay_session + type: string + x-enum-varnames: + - RUM_REPLAY_SESSION + PlaylistsSessionDataAttributes: + description: Attributes of a session within a playlist, including the session event data and its replay track. + properties: + session_event: + additionalProperties: {} + description: Raw event data associated with the replay session. + type: object + track: + description: Replay track identifier indicating which recording track the session belongs to. + type: string + type: object + WatcherDataAttributes: + description: Attributes of a user who has watched a RUM replay session, including contact information and watch statistics. + properties: + handle: + description: Email handle of the user who watched the session. + example: john.doe@example.com + type: string + icon: + description: URL or identifier of the watcher's avatar icon. + type: string + last_watched_at: + description: Timestamp when the watcher last viewed the session. + example: '2026-01-13T17:15:53.208340Z' + format: date-time + type: string + name: + description: Display name of the user who watched the session. + type: string + watch_count: + description: Total number of times the user has watched the session. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + required: + - handle + - last_watched_at + - watch_count + type: object + WatcherDataType: + default: rum_replay_watcher + description: Rum replay watcher resource type. + enum: + - rum_replay_watcher + example: rum_replay_watcher + type: string + x-enum-varnames: + - RUM_REPLAY_WATCHER + WatchDataAttributes: + description: Attributes for recording a session watch event, including the application, event reference, and timestamp. + properties: + application_id: + description: Unique identifier of the RUM application containing the session. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + data_source: + description: Data source type indicating the origin of the session data (e.g., rum or product_analytics). + type: string + event_id: + description: Unique identifier of the RUM event that was watched. + example: 11111111-2222-3333-4444-555555555555 + type: string + timestamp: + description: Timestamp when the session was watched. + example: '2026-01-13T17:15:53.208340Z' + format: date-time + type: string + required: + - application_id + - event_id + - timestamp + type: object + WatchDataType: + default: rum_replay_watch + description: Rum replay watch resource type. + enum: + - rum_replay_watch + example: rum_replay_watch + type: string + x-enum-varnames: + - RUM_REPLAY_WATCH + ViewershipHistorySessionDataAttributes: + description: Attributes of a viewership history session entry, capturing when it was last watched and the associated event data. + properties: + event_id: + description: Unique identifier of the RUM event associated with the watched session. + type: string + last_watched_at: + description: Timestamp when the session was last watched by the user. + example: '2026-01-13T17:15:53.208340Z' + format: date-time + type: string + session_event: + additionalProperties: {} + description: Raw event data associated with the replay session. + type: object + track: + description: Replay track identifier indicating which recording track the session belongs to. + type: string + required: + - last_watched_at + type: object + SourcemapItem: + description: A source map data object representing one of the supported map kinds. + properties: + attributes: + $ref: '#/components/schemas/JSSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '5' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + SourcemapFileAttributes: + description: Attributes of a JavaScript source map file. + properties: + file: + description: The name of the minified JavaScript file. + example: bundle.js + type: string + mappings: + description: |- + The Base64 VLQ encoded string that maps positions in the minified + file to positions in the original source files. + example: AAAA,OAAO,CAAC,GAAG + type: string + minifiedLineLengths: + description: List of character counts for each line in the minified file. + example: + - 50 + - 30 + items: + format: int64 + type: integer + type: array + names: + description: List of symbol names referenced in the mappings. + example: + - console + - log + items: {} + type: array + sourceRoot: + description: The root path prepended to source file paths. + example: / + type: string + sources: + description: List of original source file paths. + example: + - src/index.js + - src/utils.js + items: + type: string + type: array + sourcesContent: + description: List of original source file contents corresponding to the paths in `sources`. + example: + - console.log('index'); + - export function util() {} + items: + type: string + type: array + version: + description: The version of the source map format (typically 3). + example: 3 + format: int64 + type: integer + required: + - file + - version + - sourceRoot + - sources + - sourcesContent + - names + - mappings + - minifiedLineLengths + type: object + SourcemapFileDataType: + description: The resource type for source map file objects. + enum: + - sourcemap_files + example: sourcemap_files + type: string + x-enum-varnames: + - SOURCEMAP_FILES + SourcemapsListMetaPage: + description: Page information for the source maps list response. + properties: + has_more_results: + description: Whether there are more results available beyond the current page. + example: false + type: boolean + total_filtered_count: + description: Total number of source maps matching the filter criteria. + example: 100 + format: int64 + type: integer + required: + - total_filtered_count + - has_more_results + type: object + ServiceRepositoryInfoRequestAttributes: + description: Attributes for the service repository info request. + properties: + service: + description: The name of the service. + example: my-web-service + type: string + version: + description: The version of the service. + example: 1.0.0 + type: string + required: + - service + - version + type: object + ServiceRepositoryInfoDataType: + description: The resource type for service repository info objects. + enum: + - service_repository_info + example: service_repository_info + type: string + x-enum-varnames: + - SERVICE_REPOSITORY_INFO + ServiceRepositoryInfoResponseAttributes: + description: Attributes of the service repository information. + properties: + commit_sha: + description: The SHA of the commit associated with the service version. + example: abc123def456789 + type: string + repository_url: + description: The URL of the source code repository. + example: https://github.com/my-org/my-repo + type: string + status: + $ref: '#/components/schemas/ServiceRepositoryInfoStatus' + required: + - status + type: object + FacetInfoRequestDataAttributesSearch: + description: Query-based search configuration for filtering the audience context when retrieving facet values. + properties: + query: + description: The filter expression used to scope the audience from which facet values are retrieved. + type: string + type: object + FacetInfoRequestDataAttributesTermSearch: + description: Term-level search configuration for filtering facet values by an exact or partial term match. + properties: + value: + description: The term string to match against facet values. + type: string + type: object + FacetInfoResponseDataAttributesResult: + description: The facet query result containing discrete value counts or a numeric range for the requested facet. + properties: + range: + $ref: '#/components/schemas/FacetInfoResponseDataAttributesResultRange' + values: + description: List of discrete facet values with their occurrence counts. + items: + $ref: '#/components/schemas/FacetInfoResponseDataAttributesResultValuesItems' + type: array + type: object + QueryAccountRequestDataAttributesSort: + description: Sorting configuration specifying the field and direction for ordering query results. + properties: + field: + description: The attribute field name to sort results by. + type: string + order: + description: The sort direction, either ascending or descending. + type: string + type: object + ProductAnalyticsAnalyticsListQuery: + description: |- + The analytics list query definition. It selects the events to return with `query`, then + chooses the columns on each event row, the sort applied to those rows, and a row limit. + Unlike the scalar and timeseries queries, a list query returns raw event rows rather than + aggregates, so it takes no compute or group-by rule. + properties: + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFilters' + columns: + description: Attribute columns to include in each event row. + items: + description: The name of an attribute to return as a column. + type: string + type: array + limit: + description: Maximum number of event rows to return. + example: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + query: + $ref: '#/components/schemas/ProductAnalyticsBaseQuery' + sort: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListSort' + required: + - query + type: object + ProductAnalyticsAnalyticsListRecord: + additionalProperties: + description: The value of one column of the event row. + description: A single event row, keyed by column name. + type: object + ProductAnalyticsExecutionType: + description: Override the query execution strategy. + enum: + - simple + - background + - trino-multistep + - materialized-view + type: string + x-enum-varnames: + - SIMPLE + - BACKGROUND + - TRINO_MULTISTEP + - MATERIALIZED_VIEW + ProductAnalyticsAnalyticsQuery: + description: The analytics query definition containing a base query, compute rule, and optional grouping. + properties: + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFilters' + compute: + $ref: '#/components/schemas/ProductAnalyticsCompute' + group_by: + description: Group-by rules for segmenting results. + items: + $ref: '#/components/schemas/ProductAnalyticsGroupBy' + type: array + indexes: + deprecated: true + description: |- + Deprecated. Index selection is a rollout detail and will be removed. + Do not set this field. + items: + description: Index name to restrict the query to. + type: string + maxItems: 1 + type: array + query: + $ref: '#/components/schemas/ProductAnalyticsBaseQuery' + required: + - query + - compute + type: object + ProductAnalyticsScalarColumn: + description: A column in a scalar response. + properties: + meta: + $ref: '#/components/schemas/ProductAnalyticsScalarColumnMeta' + name: + description: Column name (facet name for group-by, or "query"). + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsScalarColumnType' + values: + description: Column values. + items: + description: A single cell value within the column (string for group-by columns, number for metric columns). + type: array + type: object + ProductAnalyticsInterval: + description: An interval definition in a timeseries response. + properties: + milliseconds: + description: The duration of each time bucket in milliseconds. + format: int64 + type: integer + start_time: + description: The start of this interval as an epoch timestamp in milliseconds. + format: int64 + type: integer + times: + description: Epoch timestamps (in milliseconds) for each bucket in this interval. + items: + description: Epoch timestamp in milliseconds for a time bucket boundary. + format: int64 + type: integer + type: array + type: + description: The interval type (e.g., fixed or auto-computed bucket size). + type: string + type: object + ProductAnalyticsSerie: + description: A series in a timeseries response. + properties: + group_tags: + description: The group-by tag values that identify this series. + items: + description: A tag value for a group-by facet. + type: string + type: array + query_index: + description: The index of the query that produced this series. + format: int64 + type: integer + unit: + description: Unit definitions for the series values. + items: + $ref: '#/components/schemas/ProductAnalyticsUnit' + type: array + type: object + ProductAnalyticsJourneyFunnelQuery: + description: Query definition for a journey funnel request. + properties: + compute: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelCompute' + group_by: + description: Segments the funnel by the values of one or more facets. + items: + $ref: '#/components/schemas/ProductAnalyticsGraphQueryGroupBy' + type: array + search: + $ref: '#/components/schemas/ProductAnalyticsJourneySearch' + required: + - search + type: object + ProductAnalyticsElapsedTime: + description: Elapsed time statistics (min/max/avg in milliseconds). + properties: + avg: + description: Average elapsed time to reach the next step, in milliseconds. + example: 5100 + format: int64 + type: integer + max: + description: Maximum elapsed time to reach the next step, in milliseconds. + example: 42000 + format: int64 + type: integer + min: + description: Minimum elapsed time to reach the next step, in milliseconds. + example: 900 + format: int64 + type: integer + required: + - min + - max + - avg + type: object + ProductAnalyticsJourneyFunnelStep: + description: A single step of the funnel with its conversion counts and timings. + properties: + elapsed_time_to_next_step: + $ref: '#/components/schemas/ProductAnalyticsElapsedTime' + groups: + description: Breakdown of this step by the requested group-by facets. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyFunnelStepGroup' + type: array + label: + description: Label of the step, derived from the node alias. + example: A + type: string + unit: + description: Unit of the elapsed time values. + example: millisecond + type: string + value: + description: Value of the computed metric at this step. + example: 1200 + format: double + type: number + required: + - value + - label + - unit + - elapsed_time_to_next_step + - groups + type: object + ProductAnalyticsJourneyListQuery: + description: Query definition for a journey list request. + properties: + computed_columns: + description: Computed columns to add to each row. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyComputedColumn' + type: array + conversion_type: + $ref: '#/components/schemas/ProductAnalyticsJourneyConversionType' + entity_columns: + description: Attribute columns to return for each row, in addition to the identity join key and `timestamp`. + items: + description: An attribute column to return. + type: string + type: array + entity_filters: + description: Additional search query applied to the returned rows. + type: string + group_by: + description: Segments the results by the values of one or more facets. + items: + $ref: '#/components/schemas/ProductAnalyticsGraphQueryGroupBy' + type: array + limit: + description: Maximum number of rows to return. Omit it to let the service choose. + format: int64 + minimum: 1 + type: integer + search: + $ref: '#/components/schemas/ProductAnalyticsJourneySearch' + sort: + $ref: '#/components/schemas/ProductAnalyticsJourneyListSort' + target: + $ref: '#/components/schemas/ProductAnalyticsJourneyTarget' + required: + - search + type: object + ProductAnalyticsJourneyEntity: + description: The kind of entity returned by a journey list query. + enum: + - session + - user + - account + example: session + type: string + x-enum-varnames: + - SESSION + - USER + - ACCOUNT + ProductAnalyticsJourneyListRecord: + additionalProperties: {} + description: |- + A single row. Keys are the returned column names: the identity join key, `timestamp`, + each entry of `entity_columns`, and any computed columns. A value is null when the + column has no value for that row. + type: object + ProductAnalyticsJourneyScalarQuery: + description: Query definition for a journey scalar request. + properties: + compute: + $ref: '#/components/schemas/ProductAnalyticsJourneyScalarCompute' + group_by: + description: Segments the results by the values of one or more facets. + items: + $ref: '#/components/schemas/ProductAnalyticsGraphQueryGroupBy' + type: array + query_id: + description: Caller-defined identifier echoed back in the results. + type: string + search: + $ref: '#/components/schemas/ProductAnalyticsJourneySearch' + required: + - search + - compute + type: object + ProductAnalyticsFormulaJourneyQuery: + description: Query definition for a journey timeseries request. + properties: + compute: + $ref: '#/components/schemas/ProductAnalyticsGraphQueryCompute' + group_by: + description: Segments the results by the values of one or more facets. + items: + $ref: '#/components/schemas/ProductAnalyticsGraphQueryGroupBy' + type: array + query_id: + description: Caller-defined identifier echoed back in the results. + type: string + search: + $ref: '#/components/schemas/ProductAnalyticsJourneySearch' + required: + - search + - compute + type: object + ProductAnalyticsRetentionGridQuery: + description: Query definition for a retention grid or retention metadata request. + properties: + computation_scope: + $ref: '#/components/schemas/ProductAnalyticsRetentionScope' + compute: + $ref: '#/components/schemas/ProductAnalyticsRetentionCompute' + group_by: + description: Splits the results by the values of one or more facets. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionGroupBy' + type: array + search: + $ref: '#/components/schemas/ProductAnalyticsRetentionSearch' + required: + - search + - compute + type: object + ProductAnalyticsRetentionGridCohort: + description: One row of the retention grid, holding the results for a single cohort. + properties: + cells: + description: The cells of the row, one per return period. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridCohortCell' + type: array + cohort_end_time: + description: End of the cohort window, in epoch milliseconds. + format: int64 + type: integer + cohort_index: + description: Zero-based index of the cohort in the grid. + format: int64 + type: integer + cohort_size: + description: Number of entities in the cohort. + format: int64 + type: integer + cohort_start_time: + description: Start of the cohort window, in epoch milliseconds. + format: int64 + type: integer + group_tags: + description: The group-by facet values that identify this row. + items: + description: A tag value for a group-by facet. + type: string + type: array + name: + description: Label identifying the cohort, such as the week it started. + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridCohortType' + unit: + description: Unit definitions for the cell values. + items: + $ref: '#/components/schemas/ProductAnalyticsUnit' + type: array + type: object + ProductAnalyticsRetentionPeriod: + description: A return period definition, such as "1 week". + properties: + unit: + description: Time unit of the period, such as `day`, `week`, `month`, or `year`. + example: week + type: string + value: + description: Length of the period, expressed in `unit`. + example: 1 + format: int64 + type: integer + type: object + ProductAnalyticsUnit: + description: A unit definition for metric values. + properties: + family: + description: The unit family (e.g., time, bytes). + example: time + type: string + id: + description: Numeric identifier for the unit. + format: int64 + type: integer + name: + description: The full name of the unit (e.g., nanosecond). + example: nanosecond + type: string + plural: + description: Plural form of the unit name (e.g., nanoseconds). + type: string + scale_factor: + description: Conversion factor relative to the base unit of the family. + format: double + type: number + short_name: + description: Abbreviated unit name (e.g., ns). + type: string + type: object + ProductAnalyticsRetentionListQuery: + description: Query definition for a retention list request. + properties: + columns: + description: The attribute columns to include in each returned row. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionListColumn' + type: array + computation_scope: + $ref: '#/components/schemas/ProductAnalyticsRetentionCellScope' + limit: + description: Maximum number of rows to return. Use `0` for no limit. + example: 100 + format: int64 + minimum: 0 + type: integer + search: + $ref: '#/components/schemas/ProductAnalyticsRetentionSearch' + required: + - search + - computation_scope + type: object + ProductAnalyticsRetentionListRecord: + additionalProperties: {} + description: A single entity row, keyed by the requested column paths. + type: object + ProductAnalyticsFormulaRetentionQuery: + description: Query definition for a retention scalar or retention timeseries request. + properties: + computation_scope: + $ref: '#/components/schemas/ProductAnalyticsRetentionScope' + compute: + $ref: '#/components/schemas/ProductAnalyticsRetentionCompute' + group_by: + description: Splits the results by the values of one or more facets. + items: + $ref: '#/components/schemas/ProductAnalyticsRetentionGroupBy' + type: array + search: + $ref: '#/components/schemas/ProductAnalyticsRetentionSearch' + required: + - search + - compute + type: object + ProductAnalyticsSankeyDefinition: + description: The shape of the Sankey diagram, expressed as the facets to flow between and how many steps to show. + properties: + entries_per_step: + description: |- + Maximum number of nodes to keep in each column. Remaining values are rolled up into an + aggregated node. Omit it, or send `0`, to use the default of `5`. + example: 10 + format: int64 + maximum: 10 + minimum: 0 + type: integer + number_of_steps: + description: |- + Number of intermediate columns between the source and the target. + Omit it, or send `0`, to use the default of `5`. + example: 3 + format: int64 + maximum: 10 + minimum: 0 + type: integer + source: + description: Facet forming the first column of the diagram. + example: '@view.name' + type: string + target: + description: Facet forming the last column of the diagram. + example: '@view.name' + type: string + required: + - source + - target + type: object + ProductAnalyticsSankeySearch: + description: Selects the sessions a Sankey diagram is built from. + properties: + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFilters' + join_keys: + $ref: '#/components/schemas/ProductAnalyticsJoinKeys' + query: + description: Datadog search query restricting the events considered. + example: '@type:view' + type: string + type: object + ProductAnalyticsSankeyTime: + description: The time window a Sankey query covers. + properties: + from: + description: Start of the query window, in epoch milliseconds. + example: 1756425600000 + format: int64 + type: integer + to: + description: End of the query window, in epoch milliseconds. + example: 1756857600000 + format: int64 + type: integer + required: + - from + - to + type: object + ProductAnalyticsSankeyLink: + description: A link of the Sankey diagram, representing the sessions flowing between two nodes. + properties: + column: + description: Zero-based index of the column the link starts from. + format: int64 + type: integer + id: + description: Unique identifier for the link. + type: string + source: + description: Identifier of the node the link starts at. + type: string + target: + description: Identifier of the node the link ends at. + type: string + value: + description: Number of sessions flowing along the link. + format: int64 + type: integer + type: object + ProductAnalyticsSankeyNode: + description: A node of the Sankey diagram, representing one facet value in one column. + properties: + aggregated_nodes: + description: The nodes rolled up into this one, when the node is an aggregate. + items: + $ref: '#/components/schemas/ProductAnalyticsSankeyAggregatedNode' + type: array + column: + description: Zero-based index of the column the node sits in. + format: int64 + type: integer + dropoff_value: + description: Number of sessions that ended at the node. + format: int64 + type: integer + id: + description: Unique identifier for the node. + type: string + incoming_value: + description: Number of sessions entering the node. + format: int64 + type: integer + name: + description: The facet value the node represents. + type: string + outgoing_value: + description: Number of sessions leaving the node. + format: int64 + type: integer + type: + $ref: '#/components/schemas/ProductAnalyticsSankeyNodeType' + value: + description: Number of sessions passing through the node. + format: int64 + type: integer + type: object + QueryEventFilteredUsersRequestDataAttributesEventQuery: + description: Event platform query used to filter users based on their event activity within a specified time window. + properties: + query: + description: The event platform query expression for filtering users by their event activity. + type: string + time_frame: + $ref: '#/components/schemas/QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame' + type: object + QueryUsersRequestDataAttributesSort: + description: Sorting configuration specifying the field and direction for ordering user query results. + properties: + field: + description: The user attribute field name to sort results by. + type: string + order: + description: The sort direction, either ascending or descending. + type: string + type: object + GetMappingResponseDataAttributesAttributesItems: + description: Details of a single entity attribute including its mapping configuration and metadata. + properties: + attribute: + description: The attribute identifier as used in the entity data model. + type: string + description: + description: Human-readable explanation of what the attribute represents. + type: string + display_name: + description: The human-readable label for the attribute shown in the UI. + type: string + groups: + description: List of group labels used to categorize the attribute. + items: + description: A group label name for categorizing the attribute. + type: string + type: array + is_custom: + description: Whether this attribute is a custom user-defined attribute rather than a built-in one. + type: boolean + type: + description: The data type of the attribute (for example, string or number). + type: string + type: object + CreateConnectionRequestDataAttributesFieldsItems: + description: Definition of a custom attribute field to import from a data source connection. + properties: + description: + description: Human-readable explanation of what the field represents. + type: string + display_name: + description: The human-readable label for the field shown in the UI. + type: string + groups: + description: List of group labels used to categorize the field. + items: + description: A group label name for categorizing the field. + type: string + type: array + id: + description: The unique identifier for the field within the connection. + example: '' + type: string + source_name: + description: The name of the column or attribute in the source data system that maps to this field. + example: '' + type: string + type: + description: The data type of the field (for example, string or number). + example: '' + type: string + required: + - id + - source_name + - type + type: object + UpdateConnectionRequestDataAttributesFieldsToUpdateItems: + description: Specification for updating an existing field in a connection, including which field to modify and the new values. + properties: + field_id: + description: The identifier of the existing field to update. + example: '' + type: string + updated_description: + description: The new description to set for the field. + type: string + updated_display_name: + description: The new human-readable display name to set for the field. + type: string + updated_field_id: + description: The new identifier to assign to the field, if renaming it. + type: string + updated_groups: + description: The updated list of group labels to associate with the field. + items: + description: A group label name for categorizing the field. + type: string + type: array + required: + - field_id + type: object + ListConnectionsResponseDataAttributesConnectionsItems: + description: Details of a single data source connection, including its fields, join configuration, and audit metadata. + properties: + created_at: + description: Timestamp indicating when the connection was created. + format: date-time + type: string + created_by: + description: Identifier of the user who created the connection. + type: string + fields: + description: List of custom attribute fields imported from the data source. + items: + $ref: '#/components/schemas/CreateConnectionRequestDataAttributesFieldsItems' + type: array + id: + description: Unique identifier of the connection. + type: string + join: + $ref: '#/components/schemas/ListConnectionsResponseDataAttributesConnectionsItemsJoin' + metadata: + additionalProperties: + type: string + description: Additional key-value metadata associated with the connection. + type: object + type: + description: The type of data source connection (for example, ref_table). + type: string + updated_at: + description: Timestamp indicating when the connection was last updated. + format: date-time + type: string + updated_by: + description: Identifier of the user who last updated the connection. + type: string + type: object + RUMGroupByMissingString: + description: The missing value to use if there is string valued facet. + type: string + RUMGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + RUMSortOrder: + description: The order to use, ascending or descending. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASCENDING + - DESCENDING + RUMAggregateSortType: + default: alphabetical + description: The type of sorting algorithm. + enum: + - alphabetical + - measure + type: string + x-enum-varnames: + - ALPHABETICAL + - MEASURE + RUMGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total". + type: boolean + RUMGroupByTotalString: + description: A string to use as the key value for the total bucket. + type: string + RUMGroupByTotalNumber: + description: A number to use as the key value for the total bucket. + format: double + type: number + RUMAggregateBucketValue: + description: A bucket value, can be either a timeseries or a single value. + type: string + format: double + items: + $ref: '#/components/schemas/RUMAggregateBucketValueTimeseriesPoint' + x-generate-alias-as-model: true + RUMProductScales: + description: Product Scales configuration for the RUM application. + properties: + product_analytics_retention_scale: + $ref: '#/components/schemas/RUMProductAnalyticsRetentionScale' + rum_event_processing_scale: + $ref: '#/components/schemas/RUMEventProcessingScale' + type: object + RUMProductAnalyticsRetentionState: + description: Controls the retention policy for Product Analytics data derived from RUM events. + enum: + - MAX + - NONE + example: MAX + type: string + x-enum-descriptions: + - Store Product Analytics data for the maximum available retention period + - Do not store Product Analytics data + x-enum-varnames: + - MAX + - NONE + RUMEventProcessingState: + description: Configures which RUM events are processed and stored for the application. + enum: + - ALL + - ERROR_FOCUSED_MODE + - NONE + example: ALL + type: string + x-enum-descriptions: + - Process and store all RUM events (sessions, views, actions, resources, errors) + - Process and store only error events and related critical events + - Disable RUM event processing—no events are stored + x-enum-varnames: + - ALL + - ERROR_FOCUSED_MODE + - NONE + RumCrossProductSampling: + description: The configuration for cross-product retention filters. + properties: + trace_enabled: + description: Whether the cross-product retention filter for APM traces is enabled. + example: true + type: boolean + trace_sample_rate: + description: The sample rate for the APM cross-product retention filter, between 0 and 100. + example: 25 + format: double + maximum: 100 + minimum: 0 + type: number + type: object + RumRetentionFilterEnabled: + description: Whether the retention filter is enabled. + example: true + type: boolean + RumRetentionFilterEventType: + description: The type of RUM events to filter on. + enum: + - session + - view + - action + - error + - resource + - long_task + - vital + example: session + type: string + x-enum-varnames: + - SESSION + - VIEW + - ACTION + - ERROR + - RESOURCE + - LONG_TASK + - VITAL + RunRetentionFilterName: + description: The name of a RUM retention filter. + example: Retention filter for session + type: string + RumRetentionFilterQuery: + description: The query string for a RUM retention filter. + example: '@session.has_replay:true' + type: string + RumRetentionFilterSampleRate: + description: The sample rate for a RUM retention filter, between 0.1 and 100. + example: 50.5 + format: double + maximum: 100 + minimum: 0.1 + type: number + RumCrossProductSamplingCreate: + description: The configuration for cross-product retention filters. + properties: + trace_enabled: + description: Whether the cross-product retention filter for APM traces is enabled. + example: true + type: boolean + trace_sample_rate: + description: The sample rate for the APM cross-product retention filter, between 0 and 100. + example: 25 + format: double + maximum: 100 + minimum: 0 + type: number + required: + - trace_sample_rate + type: object + RumExclusionFilterEnabled: + description: Whether the exclusion filter is active. + example: true + type: boolean + RumExclusionFilterEventType: + description: The type of RUM events to filter on. + enum: + - session + - view + - action + - error + - resource + - long_task + - vital + example: error + type: string + x-enum-varnames: + - SESSION + - VIEW + - ACTION + - ERROR + - RESOURCE + - LONG_TASK + - VITAL + RumExclusionFilterName: + description: The name of the exclusion filter. + example: Exclude noisy browser extension errors + type: string + RumExclusionFilterQuery: + description: |- + Additional query used to further restrict which RUM events are excluded. + Combined with `event_type` when both are provided. + example: '@error.message:*extension*' + type: string + RumPermanentRetentionFilterEditability: + description: Indicates which cross-product fields of a permanent RUM retention filter can be updated. + properties: + trace_editable: + description: Whether the APM trace cross-product configuration of the filter can be updated. + example: true + type: boolean + type: object + RumCrossProductSamplingUpdate: + description: The configuration for cross-product retention filters. All fields are optional for partial updates. + properties: + trace_enabled: + description: Whether the cross-product retention filter for APM traces is enabled. + example: true + type: boolean + trace_sample_rate: + description: The sample rate for the APM cross-product retention filter, between 0 and 100. + example: 25 + format: double + maximum: 100 + minimum: 0 + type: number + type: object + RumMetricResponseCompute: + description: The compute rule to compute the RUM-based metric. + properties: + aggregation_type: + $ref: '#/components/schemas/RumMetricComputeAggregationType' + include_percentiles: + $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' + path: + description: |- + The path to the value the RUM-based metric will aggregate on. + Only present when `aggregation_type` is `distribution`. + example: '@duration' + type: string + type: object + RumMetricEventType: + description: The type of RUM events to filter on. + enum: + - session + - view + - action + - error + - resource + - long_task + - vital + example: session + type: string + x-enum-varnames: + - SESSION + - VIEW + - ACTION + - ERROR + - RESOURCE + - LONG_TASK + - VITAL + RumMetricResponseFilter: + description: The RUM-based metric filter. RUM events matching this filter will be aggregated in this metric. + properties: + query: + description: The search query - following the RUM search syntax. + example: service:web* AND @http.status_code:[200 TO 299] + type: string + type: object + RumMetricResponseGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the RUM-based metric will be aggregated over. + example: '@http.status_code' + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, `path` is used as the tag name. + example: status_code + type: string + type: object + RumMetricResponseUniqueness: + description: The rule to count updatable events. Is only set if `event_type` is `session` or `view`. + properties: + when: + $ref: '#/components/schemas/RumMetricUniquenessWhen' + type: object + RumMetricCompute: + description: The compute rule to compute the RUM-based metric. + properties: + aggregation_type: + $ref: '#/components/schemas/RumMetricComputeAggregationType' + include_percentiles: + $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' + path: + description: |- + The path to the value the RUM-based metric will aggregate on. + Only present when `aggregation_type` is `distribution`. + example: '@duration' + type: string + required: + - aggregation_type + type: object + RumMetricFilter: + description: The RUM-based metric filter. Events matching this filter will be aggregated in this metric. + properties: + query: + default: '*' + description: The search query - following the RUM search syntax. + example: '@service:web-ui:' + type: string + required: + - query + type: object + RumMetricGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the RUM-based metric will be aggregated over. + example: '@browser.name' + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, `path` is used as the tag name. + example: browser_name + type: string + required: + - path + type: object + RumMetricUniqueness: + description: The rule to count updatable events. Is only set if `event_type` is `sessions` or `views`. + properties: + when: + $ref: '#/components/schemas/RumMetricUniquenessWhen' + required: + - when + type: object + RumMetricUpdateCompute: + description: The compute rule to compute the RUM-based metric. + properties: + include_percentiles: + $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' + type: object + RumRetentionQuotaCustomConfig: + description: The configuration used when `mode` is `custom`. + properties: + daily_reset_time: + description: The time of day when the daily quota resets, in `HH:MM` 24-hour format. + example: '08:00' + pattern: ^([01]\d|2[0-3]):[0-5]\d$ + type: string + daily_reset_timezone: + description: The timezone offset used for the daily reset time, in `±HH:MM` format. + example: '+09:00' + pattern: ^[+-](0\d|1[0-4]):[0-5]\d$ + type: string + quota_reached_action: + $ref: '#/components/schemas/RumRetentionQuotaReachedAction' + session_limit: + description: The maximum number of sessions allowed within the window. Must be at least `1000`. + example: 1000000 + format: int64 + minimum: 1000 + type: integer + window_type: + $ref: '#/components/schemas/RumRetentionQuotaWindowType' + required: + - window_type + - session_limit + - daily_reset_time + - daily_reset_timezone + - quota_reached_action + type: object + RumRetentionQuotaMode: + description: |- + The retention quota mode. `custom` enforces a fixed session limit. + `custom` is the only supported mode. + enum: + - custom + example: custom + type: string + x-enum-varnames: + - CUSTOM + TeamsOwnershipMatchType: + default: exact + description: How the `view_name` is matched against RUM view names. + enum: + - exact + - prefix + example: exact + type: string + x-enum-varnames: + - EXACT + - PREFIX + TeamsOwnershipMappingBatchOperationDataAttributes: + description: |- + The attributes of the mapping to add. `team_handle` and `view_name` are required + when `op` is `add`. At least one of `service` or `application_id` must be provided. + properties: + application_id: + description: |- + The ID of the RUM application this mapping applies to. + For browser applications, provide the real application UUID — the team is applied to the view regardless of service. + For mobile applications, omit this field (or set it to the nil UUID `00000000-0000-0000-0000-000000000000`) — the team is applied to the view and service combination across all applications. + example: 11111111-2222-3333-4444-555555555555 + format: uuid + type: string + match_type: + $ref: '#/components/schemas/TeamsOwnershipMatchType' + service: + description: The RUM application's service name. For browser applications, this is optional. For mobile applications, this is required and scopes the ownership to a specific service. + example: web-checkout + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: team-rum + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: /checkout + type: string + type: object + TeamsOwnershipMappingBatchResultDataAttributes: + description: The attributes of a mapping created by an `add` operation. + properties: + application_id: + description: The ID of the RUM application, when one was provided. + example: 11111111-2222-3333-4444-555555555555 + format: uuid + type: string + created_at: + description: Timestamp when the mapping was created. + example: '2026-01-15T09:30:00.000Z' + format: date-time + type: string + created_by: + description: The UUID of the user who created the mapping. + example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + type: string + match_type: + $ref: '#/components/schemas/TeamsOwnershipMatchType' + org_id: + description: The ID of the organization that owns this mapping. + example: 123456 + format: int64 + type: integer + service: + description: The RUM application's service name, when one was provided. + example: web-checkout + type: string + team_handle: + description: The handle of the team that owns the matched RUM views. + example: team-rum + type: string + view_name: + description: The RUM view name to match, or its prefix when `match_type` is `prefix`. + example: /checkout + type: string + required: + - team_handle + - view_name + - org_id + - created_at + - created_by + - match_type + type: object + TeamsOwnershipRuleTeamMapping: + description: An individual team's ownership entry within a teams ownership rule. + properties: + mapping_id: + description: The ID of the underlying mapping, used to delete this team's ownership individually. + example: '123' + type: string + team_handle: + description: The handle of the owning team. + example: team-rum + type: string + required: + - team_handle + - mapping_id + type: object + RUMOperationJourneyRum: + description: The definition of a RUM operation's journey, used to detect it from RUM events. + properties: + rum_steps: + description: The ordered list of steps composing the RUM journey. + items: + $ref: '#/components/schemas/RUMOperationJourneyStep' + type: array + required: + - rum_steps + type: object + RUMOperationUser: + description: A Datadog user referenced by a RUM operation. + properties: + email: + description: The email of the user. + readOnly: true + type: string + handle: + description: The handle of the user. + readOnly: true + type: string + name: + description: The name of the user. + readOnly: true + type: string + uuid: + description: The UUID of the user. + readOnly: true + type: string + type: object + RUMOperationStrongLinkStatus: + description: The status of a RUM operation strong link. + enum: + - DRAFT + - CONFIRMED + - REJECTED + example: CONFIRMED + type: string + x-enum-varnames: + - DRAFT + - CONFIRMED + - REJECTED + RUMOperationStrongLinkUpdateStatus: + description: The status of a RUM operation strong link. Can only be set to `CONFIRMED` or `REJECTED`. + enum: + - CONFIRMED + - REJECTED + example: CONFIRMED + type: string + x-enum-varnames: + - CONFIRMED + - REJECTED + AggregatedWaterfallPerformanceCriteria: + description: Performance criteria to filter view instances by a metric threshold. + properties: + max: + description: Maximum threshold in seconds (inclusive). + example: 5 + format: double + type: number + metric: + $ref: '#/components/schemas/AggregatedWaterfallPerformanceCriteriaMetric' + min: + description: Minimum threshold in seconds (inclusive). + example: 2.5 + format: double + type: number + required: + - metric + type: object + AggregatedLongTasksByInvokerType: + description: Aggregated long task statistics for a single invoker type. + properties: + criteria_view_occurrences: + description: Number of sampled views where this invoker type had long tasks contributing to the criteria metric. + example: 40 + format: int32 + maximum: 2147483647 + type: integer + impact_score: + description: Rank-product impact score combining view frequency and blocking time severity. + example: 0.4 + format: double + type: number + invoker_type: + description: Category of the long task invoker (for example, resolve-promise, user-callback). + example: resolve-promise + type: string + stats_per_view: + $ref: '#/components/schemas/LongTaskStatsPerView' + top_invokers: + description: Top invokers within this invoker type, sorted by impact score descending. + items: + $ref: '#/components/schemas/TopLongTaskInvoker' + type: array + view_occurrences: + description: Number of sampled views where this invoker type had any long tasks. + example: 68 + format: int32 + maximum: 2147483647 + type: integer + required: + - invoker_type + - view_occurrences + - stats_per_view + - top_invokers + type: object + SignalsProblemsDetections: + description: Grouped detection results by detection type. + properties: + high_frozen_frame_rates: + description: Detected high frozen frame rate issues. + items: + $ref: '#/components/schemas/AggregatedHighFrozenFrameRate' + type: array + high_script_evaluations: + description: Detected high script evaluation issues. + items: + $ref: '#/components/schemas/AggregatedHighScriptEval' + type: array + low_cache_hit_rates: + description: Detected low cache hit rate issues. + items: + $ref: '#/components/schemas/AggregatedLowCacheHitRate' + type: array + mobile_scroll_frictions: + description: Detected mobile scroll friction issues. + items: + $ref: '#/components/schemas/AggregatedMobileScrollFriction' + type: array + slow_fcp_high_bytes: + description: Detected slow first contentful paint with high byte count issues. + items: + $ref: '#/components/schemas/AggregatedSlowFCPHighBytes' + type: array + slow_interaction_long_tasks: + description: Detected slow interaction with long task issues. + items: + $ref: '#/components/schemas/AggregatedSlowInteractionLongTask' + type: array + uncompressed_resources: + description: Detected uncompressed resource issues. + items: + $ref: '#/components/schemas/AggregatedUncompressedResource' + type: array + type: object + SignalsProblemsSampleMetadata: + description: Metadata about the sampling quality for a signals and problems query. + properties: + failed: + description: Number of view instances that failed to process. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + requested: + description: Number of view instances requested for sampling. + example: 30 + format: int32 + maximum: 2147483647 + type: integer + sampled_view_ids: + description: List of RUM view IDs that were sampled. + example: + - 6fbf69b6-9455-436a-b894-a6bf64126d40 + items: + type: string + type: array + succeeded: + description: Number of view instances successfully processed. + example: 28 + format: int32 + maximum: 2147483647 + type: integer + success_rate: + description: Ratio of successfully processed views to requested views. + example: 0.93 + format: double + type: number + required: + - requested + - succeeded + - failed + - success_rate + - sampled_view_ids + type: object + AggregatedResource: + description: Aggregated performance statistics for a single network resource across sampled view instances. + properties: + avg_duration_ms: + description: Average total duration in milliseconds. + example: 839.1 + format: double + type: number + avg_start_time_ms: + description: Average start time relative to view start in milliseconds. + example: 1486.3 + format: double + type: number + cache_hit_rate_pct: + description: Cache hit rate as a percentage. + example: 100 + format: double + type: number + cached_count: + description: Number of requests served from cache. + example: 27 + format: int32 + maximum: 2147483647 + type: integer + downloaded_count: + description: Number of requests downloaded from the network. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + global_p75_duration_ms: + description: 75th percentile duration across all view names in the application, present when include_global_appearance is true. + example: 500 + format: double + type: number + global_view_name_count: + description: Number of distinct view names in the application that load this resource, present when include_global_appearance is true. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + global_view_name_pct: + description: Percentage of distinct view names in the application that load this resource, present when include_global_appearance is true. + example: 30 + format: double + type: number + http_method: + description: HTTP method for the resource request. + example: GET + nullable: true + type: string + load_frequency_pct: + description: Percentage of sampled view instances that loaded this resource. + example: 54 + format: double + type: number + max_duration_ms: + description: Maximum duration in milliseconds. + example: 945.6 + format: double + type: number + median_duration_ms: + description: Median duration in milliseconds. + example: 836.2 + format: double + type: number + min_duration_ms: + description: Minimum duration in milliseconds. + example: 812.7 + format: double + type: number + p75_duration_ms: + description: 75th percentile duration in milliseconds. + example: 844.1 + format: double + type: number + p95_duration_ms: + description: 95th percentile duration in milliseconds. + example: 861.8 + format: double + type: number + resource_type: + description: Resource type (JS, CSS, image, fetch, XHR, document, and so on). + example: fetch + nullable: true + type: string + resource_url_path_group: + description: URL path group used to aggregate similar resources. + example: /api/gallery + type: string + timing_breakdown: + $ref: '#/components/schemas/AggregatedResourceTimingBreakdown' + total_requests: + description: Total number of requests for this resource across all sampled views. + example: 27 + format: int32 + maximum: 2147483647 + type: integer + views_with_resource: + description: Number of sampled view instances that loaded this resource. + example: 27 + format: int32 + maximum: 2147483647 + type: integer + required: + - resource_url_path_group + - resource_type + - http_method + - avg_start_time_ms + - avg_duration_ms + - p95_duration_ms + - p75_duration_ms + - median_duration_ms + - min_duration_ms + - max_duration_ms + - timing_breakdown + - total_requests + - views_with_resource + - load_frequency_pct + - cached_count + - downloaded_count + - cache_hit_rate_pct + type: object + PlaylistDataAttributesCreatedBy: + description: Information about the user who created the playlist. properties: - data: - $ref: '#/components/schemas/RumMetricCreateData' + handle: + description: Email handle of the user who created the playlist. + example: john.doe@example.com + type: string + icon: + description: URL or identifier of the user's avatar icon. + type: string + id: + description: Unique identifier of the user who created the playlist. + example: 00000000-0000-0000-0000-000000000001 + type: string + name: + description: Display name of the user who created the playlist. + type: string + uuid: + description: UUID of the user who created the playlist. + example: 00000000-0000-0000-0000-000000000001 + type: string required: - - data + - handle + - id + - uuid type: object - RumMetricResponse: - description: The rum-based metric object. + JSSourcemapData: + description: JavaScript source map data object. properties: - data: - $ref: '#/components/schemas/RumMetricResponseData' + attributes: + $ref: '#/components/schemas/JSSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '5' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes type: object - RumMetricUpdateRequest: - description: The new rum-based metric body. + ReactNativeSourcemapData: + description: React Native source map data object. properties: - data: - $ref: '#/components/schemas/RumMetricUpdateData' + attributes: + $ref: '#/components/schemas/ReactNativeSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '10' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' required: - - data + - id + - type + - attributes type: object - RUMSort: - description: Sort parameters when querying events. + IOSSourcemapData: + description: iOS dSYM source map data object. + properties: + attributes: + $ref: '#/components/schemas/IOSSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '11' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + JVMSourcemapData: + description: JVM (ProGuard/R8) mapping file data object. + properties: + attributes: + $ref: '#/components/schemas/JVMSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '9' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + FlutterSourcemapData: + description: Flutter symbol file data object. + properties: + attributes: + $ref: '#/components/schemas/FlutterSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '12' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + ELFSourcemapData: + description: ELF symbol file data object. + properties: + attributes: + $ref: '#/components/schemas/ELFSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '6' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + NDKSourcemapData: + description: Android NDK symbol file data object. + properties: + attributes: + $ref: '#/components/schemas/NDKSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '7' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + IL2CPPSourcemapData: + description: IL2CPP mapping file data object. + properties: + attributes: + $ref: '#/components/schemas/IL2CPPSourcemapAttributes' + id: + description: The unique identifier of the source map. + example: '8' + type: string + type: + $ref: '#/components/schemas/SourcemapDataType' + required: + - id + - type + - attributes + type: object + ServiceRepositoryInfoStatus: + description: The status of the service repository info lookup. enum: - - timestamp - - '-timestamp' + - success + - not_found + - no_repository + - internal_error + - unknown + example: success type: string x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - RUMEventsResponse: - description: >- - Response object with all events matching the request and pagination - information. + - SUCCESS + - NOT_FOUND + - NO_REPOSITORY + - INTERNAL_ERROR + - UNKNOWN + FacetInfoResponseDataAttributesResultRange: + description: The numeric range of a facet attribute, representing the minimum and maximum observed values. properties: - data: - description: Array of events matching the request. + max: + description: The maximum observed value for the numeric facet attribute. (opaque JSON object) + type: string + min: + description: The minimum observed value for the numeric facet attribute. (opaque JSON object) + type: string + type: object + FacetInfoResponseDataAttributesResultValuesItems: + description: A single facet value with its occurrence count in the dataset. + properties: + count: + description: The number of records that have this facet value. + format: int64 + type: integer + value: + description: The facet value (for example, a browser name or country code). + type: string + type: object + ProductAnalyticsAudienceFilters: + description: Audience filter definitions for targeting specific user segments. + properties: + accounts: + description: Account audience queries. items: - $ref: '#/components/schemas/RUMEvent' + $ref: '#/components/schemas/ProductAnalyticsAudienceAccountSubquery' + type: array + formula: + description: Boolean formula combining audience queries by name. + example: u + type: string + segments: + description: Segment audience queries. + items: + $ref: '#/components/schemas/ProductAnalyticsAudienceSegmentSubquery' + type: array + users: + description: User audience queries. + items: + $ref: '#/components/schemas/ProductAnalyticsAudienceUserSubquery' type: array - links: - $ref: '#/components/schemas/RUMResponseLinks' - meta: - $ref: '#/components/schemas/RUMResponseMetadata' type: object - RUMSearchEventsRequest: - description: The request for a RUM events list. + ProductAnalyticsBaseQuery: + description: |- + A query definition discriminated by the `data_source` field. + Use `product_analytics` for standard event queries, or + `product_analytics_occurrence` for occurrence-filtered queries. properties: - filter: - $ref: '#/components/schemas/RUMQueryFilter' - options: - $ref: '#/components/schemas/RUMQueryOptions' - page: - $ref: '#/components/schemas/RUMQueryPageOptions' + data_source: + $ref: '#/components/schemas/ProductAnalyticsEventQueryDataSource' + search: + $ref: '#/components/schemas/ProductAnalyticsEventSearch' + required: + - data_source + - search + type: object + ProductAnalyticsAnalyticsListSort: + description: The sort applied to the returned event rows. + properties: + facet: + description: Name of the facet to sort the rows by. + type: string + order: + $ref: '#/components/schemas/ProductAnalyticsAnalyticsListSortOrder' + type: object + ProductAnalyticsCompute: + description: A compute rule for aggregating data. + properties: + aggregation: + description: The aggregation function (count, cardinality, avg, sum, min, max, etc.). + example: count + type: string + interval: + description: |- + Time bucket size in milliseconds. Required for timeseries queries; ignored by the + scalar endpoint, which returns a single value. + example: 3600000 + format: int64 + type: integer + metric: + description: The metric to aggregate on. Required for non-count aggregations. + example: '@session.time_spent' + type: string + required: + - aggregation + type: object + ProductAnalyticsGroupBy: + description: A group-by rule for segmenting results by facet values. + properties: + facet: + description: The facet to group by. + example: '@view.name' + type: string + limit: + description: Maximum number of groups to return. + example: 10 + format: int64 + type: integer + should_exclude_missing: + default: false + description: Exclude results with missing facet values. + type: boolean sort: - $ref: '#/components/schemas/RUMSort' + $ref: '#/components/schemas/ProductAnalyticsGroupBySort' + source: + description: The source for audience-filter-based group-by. + type: string + required: + - facet + type: object + ProductAnalyticsScalarColumnMeta: + description: Metadata associated with a scalar response column, including optional unit information. + properties: + unit: + description: Unit definitions for the column values, if applicable. + items: + $ref: '#/components/schemas/ProductAnalyticsUnit' + nullable: true + type: array + type: object + ProductAnalyticsScalarColumnType: + description: Column type. + enum: + - number + - group + type: string + x-enum-varnames: + - NUMBER + - GROUP + ProductAnalyticsJourneyFunnelCompute: + description: Defines the metric computed at each funnel step. + properties: + aggregation: + description: |- + Aggregation function: `count`, `cardinality`, `avg`, `median`, `min`, `max`, `sum`, + or a percentile of the form `pc` such as `pc95`. Defaults to `cardinality`. + pattern: ^(count|cardinality|avg|median|min|max|sum|pc[0-9]{1,2})$ + type: string + metric: + description: Metric to aggregate on. Defaults to the identity join key. + type: string + type: object + ProductAnalyticsGraphQueryGroupBy: + description: Segments journey results by the values of a facet. + properties: + facet: + description: Attribute path to group by. + example: '@geo.country' + type: string + limit: + description: Maximum number of groups to return. Omit it to let the service choose. + format: int64 + minimum: 1 + type: integer + should_exclude_missing: + default: false + description: Whether to exclude entities that have no value for this facet. + type: boolean + sort: + $ref: '#/components/schemas/ProductAnalyticsGroupBySort' + source: + $ref: '#/components/schemas/ProductAnalyticsGraphQueryGroupBySource' + target: + $ref: '#/components/schemas/ProductAnalyticsJourneyTarget' + value_filters: + description: Restricts the results to these facet values. + items: + description: A facet value to keep. + type: string + type: array + required: + - facet + type: object + ProductAnalyticsJourneySearch: + description: Defines the steps of the journey and the filters applied to it. + properties: + expression: + description: Expression combining the node aliases in order, for example `A -> B -> C`. + example: A -> B + type: string + filters: + $ref: '#/components/schemas/ProductAnalyticsJourneySearchFilters' + join_keys: + $ref: '#/components/schemas/ProductAnalyticsJoinKeys' + node_objects: + additionalProperties: + $ref: '#/components/schemas/ProductAnalyticsBaseQuery' + description: |- + Map of node alias to the query matching that step of the journey. + Every alias used in `expression` must have an entry here. + example: + A: + data_source: product_analytics + search: + query: '@type:view @view.name:Login' + B: + data_source: product_analytics + search: + query: '@type:action @action.target.name:Submit' + type: object + required: + - expression + - node_objects + type: object + ProductAnalyticsJourneyFunnelStepGroup: + description: Breakdown of a funnel step for one combination of group-by values. + properties: + conversion_count: + description: Number of entities in this group that reached the next step. + example: 210 + format: int64 + type: integer + elapsed_time_to_next_step: + $ref: '#/components/schemas/ProductAnalyticsElapsedTime' + group_tags: + description: Group-by values identifying this cohort. + example: + - United States + items: + description: A group-by value. + type: string + type: array + value: + description: Value of the computed metric for this group at this step. + example: 480 + format: double + type: number + required: + - group_tags + - value + - conversion_count + - elapsed_time_to_next_step + type: object + ProductAnalyticsJourneyComputedColumn: + description: |- + A computed column added to each row. Requesting `first_conversion_timestamps` adds one + `_timestamp` key per step. + properties: + name: + $ref: '#/components/schemas/ProductAnalyticsJourneyComputedColumnName' + required: + - name + type: object + ProductAnalyticsJourneyConversionType: + description: Whether to return the entities that converted at the target step, or those that dropped off. + enum: + - conversion + - drop-off + example: conversion + type: string + x-enum-varnames: + - CONVERSION + - DROP_OFF + ProductAnalyticsJourneyListSort: + description: |- + Sort configuration for the returned rows. The sort is applied only when `facet` + is one of the returned columns; otherwise it is ignored. + properties: + facet: + description: Column to sort on. + type: string + order: + $ref: '#/components/schemas/QuerySortOrder' + type: object + ProductAnalyticsJourneyTarget: + description: |- + A reference to a step, or a range of steps, in the journey. + Use a `node` target to name a single step, or a `path` target to name the range + between two steps. + properties: + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyNodeTargetType' + value: + description: Alias of the targeted node. + example: A + type: string + end: + description: Alias of the node the path ends at. + example: B + type: string + start: + description: Alias of the node the path starts at. + example: A + type: string + required: + - type + - value + - start + - end type: object - RUMCompute: - description: A compute rule to compute metrics or timeseries. + ProductAnalyticsJourneyScalarCompute: + description: Defines the metric computed over the journey for a scalar query. properties: aggregation: - $ref: '#/components/schemas/RUMAggregationFunction' - interval: description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points. - example: 5m + Aggregation function: `count`, `cardinality`, `avg`, `median`, `min`, `max`, `sum`, + or a percentile of the form `pc` such as `pc95`. Defaults to `cardinality`. + example: count + pattern: ^(count|cardinality|avg|median|min|max|sum|pc[0-9]{1,2})$ type: string metric: - description: The metric to use. - example: '@duration' + description: |- + Metric to aggregate on. Use a facet path such as `@view.time_spent`, or one of the + journey metrics `__dd.conversion`, `__dd.conversion_rate`, `__dd.time_to_convert`, + or `__dd.dropoff_rate`. Defaults to `__dd.conversion`. type: string - type: - $ref: '#/components/schemas/RUMComputeType' + target: + $ref: '#/components/schemas/ProductAnalyticsJourneyTarget' required: - aggregation type: object - RUMQueryFilter: - description: The search and filter query settings. + ProductAnalyticsGraphQueryCompute: + description: Defines the metric computed over the journey. properties: - from: - default: now-15m - description: >- - The minimum time for the requested events; supports date (in [ISO - 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, - hours, minutes, and the `Z` UTC indicator - seconds and fractional - seconds are optional), math, and regular timestamps (in - milliseconds). - example: now-15m + aggregation: + description: |- + Aggregation function: `count`, `cardinality`, `avg`, `median`, `min`, `max`, `sum`, + or a percentile of the form `pc` such as `pc95`. Defaults to `cardinality`. + example: count + pattern: ^(count|cardinality|avg|median|min|max|sum|pc[0-9]{1,2})$ type: string - query: - default: '*' - description: The search query following the RUM search syntax. - example: '@type:session AND @session.type:user' + interval: + description: Time bucket interval in milliseconds, used by timeseries queries. + format: int64 + type: integer + metric: + description: |- + Metric to aggregate on. Use a facet path such as `@view.time_spent`, or one of the + journey metrics `__dd.conversion`, `__dd.conversion_rate`, `__dd.time_to_convert`, + or `__dd.dropoff_rate`. Defaults to `__dd.conversion`. type: string - to: - default: now - description: >- - The maximum time for the requested events; supports date (in [ISO - 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, - hours, minutes, and the `Z` UTC indicator - seconds and fractional - seconds are optional), math, and regular timestamps (in - milliseconds). - example: now + target: + $ref: '#/components/schemas/ProductAnalyticsJourneyTarget' + required: + - aggregation + type: object + ProductAnalyticsRetentionScope: + description: |- + Restricts a retention query to part of the grid, so that results can be examined in detail. + Omit it to compute the whole grid. + properties: + target: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortTarget' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortScopeType' + cohort_target: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortTarget' + return_period_target: + $ref: '#/components/schemas/ProductAnalyticsRetentionIndexTarget' + required: + - type + - target + - cohort_target + - return_period_target + type: object + ProductAnalyticsRetentionCompute: + description: The metric and aggregation applied to a retention query. + properties: + aggregation: + description: The aggregation function applied to the metric, such as `count` or `avg`. + example: count type: string + metric: + $ref: '#/components/schemas/ProductAnalyticsRetentionComputeMetric' + required: + - metric + - aggregation type: object - RUMGroupBy: - description: A group-by rule. + ProductAnalyticsRetentionGroupBy: + description: Splits retention results by the values of a facet. properties: facet: - description: The name of the facet to use (required). - example: '@view.time_spent' + description: The attribute path to group by. + example: '@geo.country' type: string - histogram: - $ref: '#/components/schemas/RUMGroupByHistogram' limit: - default: 10 - description: The maximum buckets to return for this group-by. + description: Maximum number of groups to return. Omit it to let the service choose. + example: 10 format: int64 + minimum: 1 type: integer - missing: - $ref: '#/components/schemas/RUMGroupByMissing' + should_exclude_missing: + default: false + description: Whether to drop entities that have no value for the facet. + type: boolean sort: - $ref: '#/components/schemas/RUMAggregateSort' - total: - $ref: '#/components/schemas/RUMGroupByTotal' + $ref: '#/components/schemas/ProductAnalyticsGroupBySort' + source: + description: Audience source backing the group-by, when grouping by an audience rather than a facet. + type: string + target: + $ref: '#/components/schemas/ProductAnalyticsRetentionGroupByTarget' required: + - target - facet type: object - RUMQueryOptions: - description: >- - Global query options that are used during the query. - - Note: Only supply timezone or time offset, not both. Otherwise, the - query fails. + ProductAnalyticsRetentionSearch: + description: Defines the cohort and return criteria that make up a retention query. properties: - time_offset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string + cohort_criteria: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortCriteria' + filters: + $ref: '#/components/schemas/ProductAnalyticsRetentionFilters' + retention_entity: + $ref: '#/components/schemas/ProductAnalyticsRetentionEntity' + return_condition: + $ref: '#/components/schemas/ProductAnalyticsRetentionReturnCondition' + return_criteria: + $ref: '#/components/schemas/ProductAnalyticsRetentionReturnCriteria' + required: + - cohort_criteria + - retention_entity + - return_condition type: object - RUMQueryPageOptions: - description: Paging attributes for listing events. + ProductAnalyticsRetentionGridCohortCell: + description: |- + One cell of the retention grid, holding the result for a single cohort over a single return period. + Aggregated rows omit the time and count fields. properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 + cell_count: + description: Number of entities that returned during the period. + format: int64 + type: integer + cell_rate: + description: Fraction of the cohort that returned, between `0` and `1`. + format: double + type: number + cell_relative_value_change: + description: Change in the metric relative to the cohort baseline. + format: double + nullable: true + type: number + cell_value: + description: Value of the computed metric, when a metric other than the retention rate is requested. + format: double + nullable: true + type: number + is_partial_data: + description: Whether the return period is still open, so the numbers are not yet final. + type: boolean + return_period_end_time: + description: End of the return period, in epoch milliseconds. + format: int64 + type: integer + return_period_index: + description: Zero-based index of the return period this cell belongs to. + format: int64 type: integer + return_period_start_time: + description: Start of the return period, in epoch milliseconds. + format: int64 + type: integer + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionGridCohortType' type: object - RUMAggregationBucketsResponse: - description: The query results. + ProductAnalyticsRetentionGridCohortType: + description: Whether the row holds one cohort's own numbers, or the weighted roll-up across every cohort. + enum: + - raw + - aggregated + example: raw + type: string + x-enum-varnames: + - RAW + - AGGREGATED + ProductAnalyticsRetentionListColumn: + description: A column to include in each returned entity row. properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/RUMBucketResponse' - type: array + field: + $ref: '#/components/schemas/ProductAnalyticsRetentionListColumnField' type: object - RUMResponseLinks: - description: Links attributes. + ProductAnalyticsRetentionCellScope: + description: Narrows a retention query to a single cell, at the intersection of one cohort and one return period. properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/rum/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string + cohort_target: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortTarget' + return_period_target: + $ref: '#/components/schemas/ProductAnalyticsRetentionIndexTarget' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionCellScopeType' + required: + - type + - cohort_target + - return_period_target type: object - RUMResponseMetadata: - description: The metadata associated with a request. + ProductAnalyticsJoinKeys: + description: Identity join keys used to stitch events belonging to the same user or session. properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/RUMResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + primary: + description: Primary identity join key. Defaults to `@session.id`. + example: '@session.id' type: string - status: - $ref: '#/components/schemas/RUMResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. + secondary: + description: Additional identity join keys. items: - $ref: '#/components/schemas/RUMWarning' + description: An identity join key facet. + type: string type: array type: object - RUMApplicationList: - description: RUM application list. + ProductAnalyticsSankeyAggregatedNode: + description: One of the nodes rolled up into an aggregated node, retained so the roll-up can be broken down. properties: - attributes: - $ref: '#/components/schemas/RUMApplicationListAttributes' id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 + description: Unique identifier for the node. + type: string + incoming_value: + description: Number of sessions entering the node. + format: int64 + type: integer + name: + description: The facet value the node represents. type: string + outgoing_value: + description: Number of sessions leaving the node. + format: int64 + type: integer type: - $ref: '#/components/schemas/RUMApplicationListType' - required: - - attributes - - type + $ref: '#/components/schemas/ProductAnalyticsSankeyAggregatedNodeType' + value: + description: Number of sessions passing through the node. + format: int64 + type: integer type: object - RUMApplicationCreate: - description: RUM application creation. + ProductAnalyticsSankeyNodeType: + description: |- + The kind of node. `regular` is a single facet value, `other` rolls up the values that did not + fit within `entries_per_step`, and `dropoff` collects the sessions that ended at this column. + enum: + - regular + - other + - dropoff + type: string + x-enum-varnames: + - REGULAR + - OTHER + - DROPOFF + QueryEventFilteredUsersRequestDataAttributesEventQueryTimeFrame: + description: The time window defining the start and end of the event query period as Unix timestamps. properties: - attributes: - $ref: '#/components/schemas/RUMApplicationCreateAttributes' - type: - $ref: '#/components/schemas/RUMApplicationCreateType' - required: - - attributes - - type + end: + description: End of the time frame as a Unix timestamp in seconds. + format: int64 + type: integer + start: + description: Start of the time frame as a Unix timestamp in seconds. + format: int64 + type: integer type: object - RUMApplication: - description: RUM application. + ListConnectionsResponseDataAttributesConnectionsItemsJoin: + description: The join configuration describing how the data source is linked to the entity. properties: - attributes: - $ref: '#/components/schemas/RUMApplicationAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 + attribute: + description: The entity attribute used as the join key to link records from the data source. type: string type: - $ref: '#/components/schemas/RUMApplicationType' - required: - - attributes - - id - - type + description: The type of join key used (for example, email or user_id). + type: string type: object - RumRetentionFiltersOrderData: - description: The RUM retention filter data for ordering. + RUMAggregateBucketValueSingleString: + description: A single string value. + type: string + RUMAggregateBucketValueSingleNumber: + description: A single number value. + format: double + type: number + RUMAggregateBucketValueTimeseries: + description: A timeseries array. + items: + $ref: '#/components/schemas/RUMAggregateBucketValueTimeseriesPoint' + type: array + x-generate-alias-as-model: true + RUMProductAnalyticsRetentionScale: + description: Product Analytics retention scale configuration. properties: - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - id - - type + last_modified_at: + description: Timestamp in milliseconds when this scale was last modified. + example: 1747922145974 + format: int64 + type: integer + state: + $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' type: object - RumRetentionFilterData: - description: The RUM retention filter. + RUMEventProcessingScale: + description: RUM event processing scale configuration. properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterAttributes' - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' + last_modified_at: + description: Timestamp in milliseconds when this scale was last modified. + example: 1721897494108 + format: int64 + type: integer + state: + $ref: '#/components/schemas/RUMEventProcessingState' type: object - RumRetentionFilterCreateData: - description: The new RUM retention filter properties to create. + RumMetricComputeAggregationType: + description: The type of aggregation to use. + enum: + - count + - distribution + example: distribution + type: string + x-enum-varnames: + - COUNT + - DISTRIBUTION + RumMetricComputeIncludePercentiles: + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. + Only present when `aggregation_type` is `distribution`. + example: true + type: boolean + RumMetricUniquenessWhen: + description: When to count updatable events. `match` when the event is first seen, or `end` when the event is complete. + enum: + - match + - end + example: match + type: string + x-enum-varnames: + - WHEN_MATCH + - WHEN_END + RumRetentionQuotaReachedAction: + description: The action to take when the session quota is reached. + enum: + - stop + - slowdown + example: stop + type: string + x-enum-varnames: + - STOP + - SLOWDOWN + RumRetentionQuotaWindowType: + description: The window type over which the session limit is enforced. + enum: + - daily + example: daily + type: string + x-enum-varnames: + - DAILY + RUMOperationJourneyStep: + description: |- + A single step of a RUM operation's journey. Matches RUM events either through a list of `nodes` + or through a `composite` rule; the two are mutually exclusive. properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterCreateAttributes' + composite: + $ref: '#/components/schemas/RUMOperationJourneyCompositeRule' + nodes: + description: The list of nodes that can match this step. Mutually exclusive with `composite`. + items: + $ref: '#/components/schemas/RUMOperationJourneyNode' + type: array type: - $ref: '#/components/schemas/RumRetentionFilterType' + $ref: '#/components/schemas/RUMOperationJourneyStepType' required: - type - - attributes type: object - RumRetentionFilterUpdateData: - description: The new RUM retention filter properties to update. + AggregatedWaterfallPerformanceCriteriaMetric: + description: Performance metric used to filter view instances by threshold. + enum: + - loading_time + - largest_contentful_paint + - first_contentful_paint + - interaction_to_next_paint + example: largest_contentful_paint + type: string + x-enum-varnames: + - LOADING_TIME + - LARGEST_CONTENTFUL_PAINT + - FIRST_CONTENTFUL_PAINT + - INTERACTION_TO_NEXT_PAINT + LongTaskStatsPerView: + description: Statistical distributions of long task metrics computed per view across sampled views. properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterUpdateAttributes' - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - id - - type - - attributes + fcp_blocking_time_ms: + $ref: '#/components/schemas/LongTaskMetricStats' + fcp_count: + $ref: '#/components/schemas/LongTaskMetricStats' + inp_overlap_blocking_time_ms: + $ref: '#/components/schemas/LongTaskMetricStats' + inp_overlap_count: + $ref: '#/components/schemas/LongTaskMetricStats' + lcp_blocking_time_ms: + $ref: '#/components/schemas/LongTaskMetricStats' + lcp_count: + $ref: '#/components/schemas/LongTaskMetricStats' + loading_time_blocking_time_ms: + $ref: '#/components/schemas/LongTaskMetricStats' + loading_time_count: + $ref: '#/components/schemas/LongTaskMetricStats' + total_blocking_time_ms: + $ref: '#/components/schemas/LongTaskMetricStats' + total_count: + $ref: '#/components/schemas/LongTaskMetricStats' type: object - RUMApplicationUpdate: - description: RUM application update. + TopLongTaskInvoker: + description: A top long task invoker within an invoker type. properties: - attributes: - $ref: '#/components/schemas/RUMApplicationUpdateAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 + criteria_view_occurrences: + description: Number of sampled views where this invoker had long tasks contributing to the criteria metric. + example: 40 + format: int32 + maximum: 2147483647 + type: integer + file: + description: Cleaned source file path for the invoker script. + example: src/pages/Gallery.tsx + nullable: true type: string - type: - $ref: '#/components/schemas/RUMApplicationUpdateType' + impact_score: + description: Rank-product impact score combining view frequency and blocking time severity. + example: 0.67 + format: double + type: number + invoker: + description: Name of the invoker function or script. + example: Response.json.then + type: string + stats_per_view: + $ref: '#/components/schemas/LongTaskStatsPerView' + view_occurrences: + description: Number of sampled views where this invoker had any long tasks. + example: 68 + format: int32 + maximum: 2147483647 + type: integer required: - - id - - type - type: object - RumMetricResponseData: - description: The rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricResponseAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' + - invoker + - file + - view_occurrences + - stats_per_view type: object - RumMetricCreateData: - description: The new rum-based metric properties. + AggregatedHighFrozenFrameRate: + description: Aggregated high frozen frame rate detection at view level. properties: - attributes: - $ref: '#/components/schemas/RumMetricCreateAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' + avg_frozen_frame_rate: + description: Average frozen frame rate as a fraction of total frames. + example: 0.15 + format: double + type: number + avg_segment_duration: + description: Average segment duration in nanoseconds. + example: 3000000000 + format: int64 + type: integer + avg_total_frozen_duration: + description: Average total frozen duration in nanoseconds. + example: 500000000 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$mno345 + type: string + impact_score: + description: Impact score for this detection. + example: 14 + format: double + type: number + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 5 + format: int32 + maximum: 2147483647 + type: integer required: - - id - - type - - attributes + - fingerprint + - view_occurrences + - avg_frozen_frame_rate + - avg_total_frozen_duration + - avg_segment_duration + - impact_score type: object - RumMetricUpdateData: - description: The new rum-based metric properties. + AggregatedHighScriptEval: + description: Aggregated high script evaluation detection grouped by source. properties: - attributes: - $ref: '#/components/schemas/RumMetricUpdateAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' + avg_duration: + description: Average script evaluation duration in nanoseconds. + example: 300000000 + format: int64 + type: integer + avg_forced_style_layout: + description: Average forced style/layout duration in nanoseconds. + example: 0 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$7766a8c2180aa153f5526ba8868999f8 + type: string + impact_score: + description: Impact score combining view frequency and duration severity. + example: 30 + format: double + type: number + instance_count: + description: Total number of detection instances across sampled views. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + invoker_type: + description: Type of invoker that triggered the script evaluation. + example: user-callback + type: string + source_category: + description: Category of the script source. + example: third-party + nullable: true + type: string + source_function_name: + description: Name of the function that triggered the high script evaluation. + example: handleClick + type: string + source_url: + description: URL of the script that triggered the high script evaluation. + example: https://cdn.example.com/app.js + nullable: true + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 3 + format: int32 + maximum: 2147483647 + type: integer required: - - type - - attributes + - fingerprint + - source_url + - source_function_name + - source_category + - invoker_type + - view_occurrences + - instance_count + - avg_duration + - avg_forced_style_layout + - impact_score type: object - RUMEvent: - description: >- - Object description of a RUM event after being processed and stored by - Datadog. + AggregatedLowCacheHitRate: + description: Aggregated low cache hit rate detection at view level. properties: - attributes: - $ref: '#/components/schemas/RUMEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + avg_cache_hit_rate: + description: Average cache hit rate across affected views. + example: 0.15 + format: double + type: number + avg_resource_download_size_bytes: + description: Average total download size of uncached resources in bytes. + example: 1048576 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$abc123 type: string - type: - $ref: '#/components/schemas/RUMEventType' + impact_score: + description: Impact score for this detection. + example: 20 + format: double + type: number + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 5 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_cache_hit_rate + - avg_resource_download_size_bytes + - impact_score type: object - RUMAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - RUMComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - RUMGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - Note: At most 100 buckets are allowed, the number of buckets is (max - - min)/interval. + AggregatedMobileScrollFriction: + description: Aggregated mobile scroll friction detection at view level. properties: - interval: - description: The bin size of the histogram buckets. - example: 10 + avg_scroll_frozen_frame_count: + description: Average number of frozen frames during scroll interactions. + example: 3 + format: int32 + maximum: 2147483647 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$ghi789 + type: string + impact_score: + description: Impact score for this detection. + example: 12 format: double type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out). - example: 100 + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 6 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_scroll_frozen_frame_count + - impact_score + type: object + AggregatedSlowFCPHighBytes: + description: Aggregated slow first contentful paint with high byte count detection. + properties: + avg_bytes_before_fcp_bytes: + description: Average total bytes loaded before first contentful paint. + example: 2097152 + format: int64 + type: integer + avg_first_contentful_paint_ms: + description: Average first contentful paint time in milliseconds. + example: 3500 + format: int64 + type: integer + avg_resource_count_before_fcp: + description: Average number of resources loaded before first contentful paint. + example: 25 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$def456 + type: string + impact_score: + description: Impact score for this detection. + example: 18 format: double type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out). - example: 50 + platform: + description: Platform identifier for the affected views. + example: browser + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 4 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - view_occurrences + - avg_first_contentful_paint_ms + - avg_bytes_before_fcp_bytes + - avg_resource_count_before_fcp + - platform + - impact_score + type: object + AggregatedSlowInteractionLongTask: + description: Aggregated slow interaction with long task detection grouped by action and selector. + properties: + action_type: + description: Type of user interaction that triggered the slow response. + example: click + type: string + avg_blocking_duration: + description: Average long task blocking duration in nanoseconds. + example: 250000000 + format: int64 + type: integer + avg_duration: + description: Average total interaction duration in nanoseconds. + example: 320000000 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$jkl012 + type: string + impact_score: + description: Impact score combining view frequency and blocking severity. + example: 22 format: double type: number + instance_count: + description: Total number of detection instances across sampled views. + example: 9 + format: int32 + maximum: 2147483647 + type: integer + selector: + description: CSS selector of the element that was interacted with. + example: '#submit-button' + nullable: true + type: string + selector_normalized: + description: Normalized CSS selector with dynamic parts replaced. + example: button[data-action] + nullable: true + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 7 + format: int32 + maximum: 2147483647 + type: integer required: - - interval - - min - - max + - fingerprint + - action_type + - selector + - selector_normalized + - view_occurrences + - instance_count + - avg_blocking_duration + - avg_duration + - impact_score type: object - RUMGroupByMissing: - description: The value to use for logs that don't have the facet used to group by. - oneOf: - - $ref: '#/components/schemas/RUMGroupByMissingString' - - $ref: '#/components/schemas/RUMGroupByMissingNumber' - RUMAggregateSort: - description: A sort rule. - example: - aggregation: count - order: asc + AggregatedUncompressedResource: + description: Aggregated uncompressed resource detection grouped by URL path. properties: - aggregation: - $ref: '#/components/schemas/RUMAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' + avg_body_size: + description: Average uncompressed body size in bytes. + example: 524288 + format: int64 + type: integer + avg_duration: + description: Average resource loading duration in nanoseconds. + example: 0 + format: int64 + type: integer + fingerprint: + description: Unique fingerprint identifying this detection group. + example: v1$65e268e25cab3a1f6230405ccf011a68 type: string - order: - $ref: '#/components/schemas/RUMSortOrder' - type: - $ref: '#/components/schemas/RUMAggregateSortType' + impact_score: + description: Impact score combining view frequency and resource size. + example: 16.67 + format: double + type: number + instance_count: + description: Total number of detection instances across sampled views. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + provider_type: + description: CDN or hosting provider type for the resource. + example: cloudfront + nullable: true + type: string + render_blocking: + description: Whether the resource is render-blocking. + example: blocking + nullable: true + type: string + resource_type: + description: Type of the resource (JS, CSS, image, fetch, and so on). + example: image + type: string + url_path_group: + description: Normalized URL path pattern for the uncompressed resource. + example: /cdn/hero.jpg + type: string + view_occurrences: + description: Number of sampled views where this detection occurred. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - fingerprint + - url_path_group + - resource_type + - render_blocking + - provider_type + - view_occurrences + - instance_count + - avg_body_size + - avg_duration + - impact_score type: object - RUMGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/RUMGroupByTotalBoolean' - - $ref: '#/components/schemas/RUMGroupByTotalString' - - $ref: '#/components/schemas/RUMGroupByTotalNumber' - RUMBucketResponse: - description: Bucket values. + AggregatedResourceTimingBreakdown: + description: Average timing breakdown per network phase for a resource. properties: - by: - additionalProperties: - description: The values for each group-by. - type: string - description: The key-value pairs for each group-by. - example: - '@session.type': user - '@type': view - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/RUMAggregateBucketValue' - description: >- - A map of the metric name to value for regular compute, or a list of - values for a timeseries. - type: object + avg_connect_ms: + description: Average TCP connect duration in milliseconds. + example: 20 + format: double + type: number + avg_dns_ms: + description: Average DNS resolution duration in milliseconds. + example: 10 + format: double + type: number + avg_download_ms: + description: Average download phase duration in milliseconds. + example: 135 + format: double + type: number + avg_first_byte_ms: + description: Average time to first byte in milliseconds. + example: 30 + format: double + type: number + avg_redirect_ms: + description: Average redirect phase duration in milliseconds. + example: 0 + format: double + type: number + avg_ssl_ms: + description: Average SSL handshake duration in milliseconds. + example: 5 + format: double + type: number + required: + - avg_redirect_ms + - avg_dns_ms + - avg_connect_ms + - avg_ssl_ms + - avg_first_byte_ms + - avg_download_ms type: object - RUMResponsePage: - description: Paging attributes. + JSSourcemapAttributes: + description: Attributes of a JavaScript source map. properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of - `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + absolute_path: + description: The absolute path to the minified JavaScript file. + example: /js/bundle.min.js + type: string + blob_storage_sourcemap_path: + description: The path to the source map in blob storage. + example: org123/1.0.0/bundle.min.js.map + type: string + build_id: + description: The build identifier. + example: abc123 + type: string + created_at: + description: The timestamp when the source map was created. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + domain: + description: The domain associated with the source map. + example: example.com + type: string + file_name: + description: The file name of the minified JavaScript file. + example: bundle.min.js + type: string + mapkind: + description: The type of source map. + example: js + type: string + service: + description: The service name associated with the source map. + example: my-web-service type: string + size: + description: The size of the source map file in bytes. + example: 1024 + format: int64 + type: integer + variant: + description: The source map variant. + example: release + type: string + version: + description: The version of the service associated with the source map. + example: 1.0.0 + type: string + version_code: + description: The version code. + example: '100' + type: string + required: + - mapkind + - size + - created_at type: object - RUMResponseStatus: - description: The status of the response. + SourcemapDataType: + description: The resource type for source map objects. enum: - - done - - timeout - example: done + - sourcemaps + example: sourcemaps type: string x-enum-varnames: - - DONE - - TIMEOUT - RUMWarning: - description: A warning message indicating something that went wrong with the query. + - SOURCEMAPS + ReactNativeSourcemapAttributes: + description: Attributes of a React Native source map. properties: - code: - description: A unique code for this type of warning. - example: unknown_index + build_number: + description: The build number. + example: '100' type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' + bundle_name: + description: The bundle name. + example: com.example.app type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes + bundle_version: + description: The bundle version. + example: '1.0' + type: string + created_at: + description: The timestamp when the source map was created. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + debug_id: + description: The debug identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + mapkind: + description: The type of source map. + example: react + type: string + platform: + description: The platform the source map was built for (e.g., `ios`, `android`). + example: ios + type: string + service: + description: The service name associated with the source map. + example: my-react-native-app type: string + size: + description: The size of the source map file in bytes. + example: 2048 + format: int64 + type: integer + version: + description: The version of the service associated with the source map. + example: 1.0.0 + type: string + required: + - mapkind + - size + - created_at type: object - RUMApplicationListAttributes: - description: RUM application list attributes. + IOSSourcemapAttributes: + description: Attributes of an iOS dSYM source map. properties: - application_id: - description: ID of the RUM application. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string created_at: - description: Timestamp in ms of the creation date. - example: 1659479836169 + description: The timestamp when the source map was created. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + mapkind: + description: The type of source map. + example: ios + type: string + size: + description: The size of the dSYM file in bytes. + example: 4096 format: int64 type: integer - created_by_handle: - description: Handle of the creator user. - example: john.doe + uuids: + description: The UUID(s) associated with the dSYM file. + example: 550e8400-e29b-41d4-a716-446655440000 type: string - hash: - description: Hash of the RUM application. Optional. + required: + - mapkind + - size + - created_at + type: object + JVMSourcemapAttributes: + description: Attributes of a JVM mapping file. + properties: + build_id: + description: The build identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 type: string - is_active: - description: Indicates if the RUM application is active. - example: true - type: boolean - name: - description: Name of the RUM application. - example: my_rum_application + created_at: + description: The timestamp when the mapping file was created. + example: '2024-01-01T00:00:00Z' + format: date-time type: string - org_id: - description: Org ID of the RUM application. - example: 999 - format: int32 - maximum: 2147483647 - type: integer - product_scales: - $ref: '#/components/schemas/RUMProductScales' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser + mapkind: + description: The type of source map. + example: jvm type: string - updated_at: - description: Timestamp in ms of the last update date. - example: 1659479836169 + service: + description: The service name associated with the mapping file. + example: my-android-app + type: string + size: + description: The size of the mapping file in bytes. + example: 512 format: int64 type: integer - updated_by_handle: - description: Handle of the updater user. - example: jane.doe + variant: + description: The build variant (e.g., `release`, `debug`). + example: release + type: string + version: + description: The version of the service associated with the mapping file. + example: 1.0.0 + type: string + version_code: + description: The version code. + example: '100' type: string required: - - application_id + - mapkind + - size - created_at - - created_by_handle - - name - - org_id - - type - - updated_at - - updated_by_handle type: object - RUMApplicationListType: - default: rum_application - description: RUM application list type. - enum: - - rum_application - example: rum_application - type: string - x-enum-varnames: - - RUM_APPLICATION - RUMApplicationCreateAttributes: - description: RUM application creation attributes. + FlutterSourcemapAttributes: + description: Attributes of a Flutter symbol file. properties: - name: - description: Name of the RUM application. - example: my_new_rum_application + arch: + description: The target CPU architecture. + example: arm64 type: string - product_analytics_retention_state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - rum_event_processing_state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser + created_at: + description: The timestamp when the symbol file was created. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + mapkind: + description: The type of source map. + example: flutter + type: string + service: + description: The service name associated with the symbol file. + example: my-flutter-app + type: string + size: + description: The size of the symbol file in bytes. + example: 8192 + format: int64 + type: integer + variant: + description: The build variant. + example: release + type: string + version: + description: The version of the service associated with the symbol file. + example: 1.0.0 type: string required: - - name + - mapkind + - size + - created_at type: object - RUMApplicationCreateType: - default: rum_application_create - description: RUM application creation type. - enum: - - rum_application_create - example: rum_application_create - type: string - x-enum-varnames: - - RUM_APPLICATION_CREATE - RUMApplicationAttributes: - description: RUM application attributes. + ELFSourcemapAttributes: + description: Attributes of an ELF symbol file. properties: - application_id: - description: ID of the RUM application. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - client_token: - description: Client token of the RUM application. - example: abcd1234efgh5678ijkl90abcd1234efgh0 + arch: + description: The target CPU architecture. + example: arm64 type: string created_at: - description: Timestamp in ms of the creation date. - example: 1659479836169 + description: The timestamp when the symbol file was created. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + file_hash: + description: The SHA256 hash of the ELF file. + example: abc123def456 + type: string + file_name: + description: The ELF file name. + example: libmyapp.so + type: string + gnu_build_id: + description: The GNU build ID (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + go_build_id: + description: The Go build ID (UUID format). + example: 550e8400-e29b-41d4-a716-446655440001 + type: string + mapkind: + description: The type of source map. + example: elf + type: string + origin: + description: The origin of the ELF file. + example: debian + type: string + origin_version: + description: The version of the origin package. + example: 1.0.0 + type: string + size: + description: The size of the ELF file in bytes. + example: 16384 format: int64 type: integer - created_by_handle: - description: Handle of the creator user. - example: john.doe + symbol_source: + description: The source of the debug symbols. + example: debuginfo type: string - hash: - description: Hash of the RUM application. Optional. + required: + - mapkind + - size + - created_at + type: object + NDKSourcemapAttributes: + description: Attributes of an Android NDK symbol file. + properties: + arch: + description: The target CPU architecture. + example: arm64-v8a type: string - is_active: - description: Indicates if the RUM application is active. - example: true - type: boolean - name: - description: Name of the RUM application. - example: my_rum_application + build_id: + description: The build identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 type: string - org_id: - description: Org ID of the RUM application. - example: 999 - format: int32 - maximum: 2147483647 - type: integer - product_scales: - $ref: '#/components/schemas/RUMProductScales' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser + created_at: + description: The timestamp when the symbol file was created. + example: '2024-01-01T00:00:00Z' + format: date-time type: string - updated_at: - description: Timestamp in ms of the last update date. - example: 1659479836169 + file_name: + description: The NDK library file name. + example: libmyapp.so + type: string + mapkind: + description: The type of source map. + example: ndk + type: string + size: + description: The size of the symbol file in bytes. + example: 32768 format: int64 type: integer - updated_by_handle: - description: Handle of the updater user. - example: jane.doe - type: string required: - - application_id - - client_token + - mapkind + - size + - created_at + type: object + IL2CPPSourcemapAttributes: + description: Attributes of an IL2CPP mapping file. + properties: + build_id: + description: The build identifier (UUID format). + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + created_at: + description: The timestamp when the mapping file was created. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string + mapkind: + description: The type of source map. + example: il2cpp + type: string + size: + description: The size of the mapping file in bytes. + example: 4096 + format: int64 + type: integer + required: + - mapkind + - size - created_at - - created_by_handle - - name - - org_id - - type - - updated_at - - updated_by_handle type: object - RUMApplicationType: - default: rum_application - description: RUM application response type. - enum: - - rum_application - example: rum_application - type: string - x-enum-varnames: - - RUM_APPLICATION - RumRetentionFilterID: - description: ID of retention filter in UUID. - example: 051601eb-54a0-abc0-03f9-cc02efa18892 - type: string - RumRetentionFilterType: - default: retention_filters - description: The type of the resource. The value should always be retention_filters. - enum: - - retention_filters - example: retention_filters - type: string - x-enum-varnames: - - RETENTION_FILTERS - RumRetentionFilterAttributes: - description: The object describing attributes of a RUM retention filter. + ProductAnalyticsAudienceAccountSubquery: + description: An account-based audience query. properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' name: - $ref: '#/components/schemas/RunRetentionFilterName' + description: Name of this query, referenced in the formula. + example: '' + type: string query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' + description: Search query for filtering accounts. + type: string + required: + - name type: object - RumRetentionFilterCreateAttributes: - description: The object describing attributes of a RUM retention filter to create. + ProductAnalyticsAudienceSegmentSubquery: + description: A segment-based audience query. properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' + description: Name of this query, referenced in the formula. + example: '' + type: string + segment_id: + description: UUID of the segment to filter by. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string required: - - event_type - name - - sample_rate + - segment_id type: object - RumRetentionFilterUpdateAttributes: - description: The object describing attributes of a RUM retention filter to update. + ProductAnalyticsAudienceUserSubquery: + description: A user-based audience query. properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' name: - $ref: '#/components/schemas/RunRetentionFilterName' + description: Name of this query, referenced in the formula. + example: u + type: string query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' + description: Search query for filtering users. + example: '*' + type: string + required: + - name type: object - RUMApplicationUpdateAttributes: - description: RUM application update attributes. + ProductAnalyticsEventQuery: + description: A standard Product Analytics event query. properties: - name: - description: Name of the RUM application. - example: updated_name_for_my_existing_rum_application + data_source: + $ref: '#/components/schemas/ProductAnalyticsEventQueryDataSource' + search: + $ref: '#/components/schemas/ProductAnalyticsEventSearch' + required: + - data_source + - search + type: object + ProductAnalyticsOccurrenceQuery: + description: A Product Analytics occurrence-filtered query. + properties: + data_source: + $ref: '#/components/schemas/ProductAnalyticsOccurrenceQueryDataSource' + search: + $ref: '#/components/schemas/ProductAnalyticsOccurrenceSearch' + required: + - data_source + - search + type: object + ProductAnalyticsAnalyticsListSortOrder: + description: The direction rows are sorted in. + enum: + - asc + - desc + type: string + x-enum-varnames: + - ASC + - DESC + ProductAnalyticsGroupBySort: + description: Sort configuration for group-by results. + properties: + aggregation: + description: The aggregation function to sort by. + example: count type: string - product_analytics_retention_state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - rum_event_processing_state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser + metric: + description: The metric to sort by. type: string + order: + $ref: '#/components/schemas/QuerySortOrder' type: object - RUMApplicationUpdateType: - default: rum_application_update - description: RUM application update type. + ProductAnalyticsGraphQueryGroupBySource: + description: Audience dimension to group by, instead of an event facet. enum: - - rum_application_update - example: rum_application_update + - product_analytics_audience_filters.users + - product_analytics_audience_filters.accounts + example: product_analytics_audience_filters.users type: string x-enum-varnames: - - RUM_APPLICATION_UPDATE - RumMetricResponseAttributes: - description: The object describing a Datadog rum-based metric. + - USERS + - ACCOUNTS + ProductAnalyticsJourneySearchFilters: + description: Filters applied on top of the journey step expression. properties: - compute: - $ref: '#/components/schemas/RumMetricResponseCompute' - event_type: - $ref: '#/components/schemas/RumMetricEventType' - filter: - $ref: '#/components/schemas/RumMetricResponseFilter' - group_by: - description: The rules for the group by. + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsJourneyAudienceFilters' + graph_filters: + description: Filters on journey-level metrics such as time to convert. items: - $ref: '#/components/schemas/RumMetricResponseGroupBy' + $ref: '#/components/schemas/ProductAnalyticsJourneySearchGraphFilter' type: array - uniqueness: - $ref: '#/components/schemas/RumMetricResponseUniqueness' + string_filter: + description: Free-text search query applied to the whole journey. + type: string type: object - RumMetricID: - description: The name of the rum-based metric. - example: rum.sessions.webui.count + ProductAnalyticsJourneyComputedColumnName: + description: Name of a computed column to add to each row. + enum: + - first_conversion_timestamps + example: first_conversion_timestamps type: string - RumMetricType: - default: rum_metrics - description: The type of the resource. The value should always be rum_metrics. + x-enum-varnames: + - FIRST_CONVERSION_TIMESTAMPS + QuerySortOrder: + default: desc + description: Direction of sort. enum: - - rum_metrics - example: rum_metrics + - asc + - desc type: string x-enum-varnames: - - RUM_METRICS - RumMetricCreateAttributes: - description: The object describing the Datadog rum-based metric to create. + - ASC + - DESC + ProductAnalyticsJourneyNodeTarget: + description: A reference to a single step of the journey. properties: - compute: - $ref: '#/components/schemas/RumMetricCompute' - event_type: - $ref: '#/components/schemas/RumMetricEventType' - filter: - $ref: '#/components/schemas/RumMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricGroupBy' - type: array - uniqueness: - $ref: '#/components/schemas/RumMetricUniqueness' + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyNodeTargetType' + value: + description: Alias of the targeted node. + example: A + type: string required: - - event_type - - compute - type: object - RumMetricUpdateAttributes: - description: The rum-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/RumMetricUpdateCompute' - filter: - $ref: '#/components/schemas/RumMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricGroupBy' - type: array + - type + - value type: object - RUMEventAttributes: - description: JSON object containing all event attributes and their associated values. + ProductAnalyticsJourneyPathTarget: + description: A reference to the range of steps between two nodes of the journey. properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from RUM events. - example: - customAttribute: 123 - duration: 2345 - type: object - service: - description: >- - The name of the application or service generating RUM events. - - It is used to switch from RUM to APM, so make sure you define the - same - - value when you use both products. - example: web-app + end: + description: Alias of the node the path ends at. + example: B type: string - tags: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - timestamp: - description: Timestamp of your event. - example: '2019-01-02T09:42:36.320Z' - format: date-time + start: + description: Alias of the node the path starts at. + example: A type: string + type: + $ref: '#/components/schemas/ProductAnalyticsJourneyPathTargetType' + required: + - type + - start + - end type: object - RUMEventType: - default: rum - description: Type of the event. + ProductAnalyticsRetentionCohortScope: + description: Narrows a retention query to a single cohort row. + properties: + target: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortTarget' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionCohortScopeType' + required: + - type + - target + type: object + ProductAnalyticsRetentionReturnPeriodScope: + description: Narrows a retention query to a single return-period column. + properties: + target: + $ref: '#/components/schemas/ProductAnalyticsRetentionIndexTarget' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionReturnPeriodScopeType' + required: + - type + - target + type: object + ProductAnalyticsRetentionComputeMetric: + description: The retention metric to compute, either an absolute count or a rate. enum: - - rum - example: rum + - __dd.retention + - __dd.retention_rate + example: __dd.retention_rate type: string x-enum-varnames: - - RUM - RUMGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - RUMGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - RUMSortOrder: - description: The order to use, ascending or descending. + - RETENTION + - RETENTION_RATE + ProductAnalyticsRetentionGroupByTarget: + description: Which axis of the retention grid a group-by applies to. enum: - - asc - - desc - example: asc + - cohort + - return_period + example: cohort type: string x-enum-varnames: - - ASCENDING - - DESCENDING - RUMAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. + - COHORT + - RETURN_PERIOD + ProductAnalyticsRetentionCohortCriteria: + description: Defines the event that places an entity into a cohort, and how cohorts are bucketed over time. + properties: + base_query: + $ref: '#/components/schemas/ProductAnalyticsBaseQuery' + time_interval: + $ref: '#/components/schemas/ProductAnalyticsRetentionTimeInterval' + required: + - base_query + - time_interval + type: object + ProductAnalyticsRetentionFilters: + description: Filters narrowing the events considered by a retention query. + properties: + audience_filters: + $ref: '#/components/schemas/ProductAnalyticsAudienceFilters' + string_filter: + description: Free-text search query applied to the events. + type: string + type: object + ProductAnalyticsRetentionEntity: + description: The entity whose retention is measured. enum: - - alphabetical - - measure + - '@usr.id' + - '@account.id' + example: '@usr.id' type: string x-enum-varnames: - - ALPHABETICAL - - MEASURE - RUMGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - RUMGroupByTotalString: - description: A string to use as the key value for the total bucket. + - USER_ID + - ACCOUNT_ID + ProductAnalyticsRetentionReturnCondition: + description: |- + When an entity counts as having returned. Use `conversion_on` to count only entities that + returned during the period itself, or `conversion_on_or_after` to also count later returns. + enum: + - conversion_on + - conversion_on_or_after + example: conversion_on_or_after type: string - RUMGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - RUMAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/RUMAggregateBucketValueSingleString' - - $ref: '#/components/schemas/RUMAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/RUMAggregateBucketValueTimeseries' - RUMProductScales: - description: Product Scales configuration for the RUM application. + x-enum-varnames: + - CONVERSION_ON + - CONVERSION_ON_OR_AFTER + ProductAnalyticsRetentionReturnCriteria: + description: Defines the event that counts as a return, and the window in which it must occur. + properties: + base_query: + $ref: '#/components/schemas/ProductAnalyticsBaseQuery' + time_interval: + $ref: '#/components/schemas/ProductAnalyticsRetentionTimeInterval' + required: + - base_query + type: object + ProductAnalyticsRetentionListColumnField: + description: The attribute selected for a column. + properties: + path: + description: Attribute path of the column. + example: '@usr.email' + type: string + type: object + ProductAnalyticsRetentionCohortTarget: + description: Selects a cohort, either by index or by the aggregation that rolls all cohorts together. + properties: + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionIndexTargetType' + value: + description: Zero-based index of the targeted cohort or return period. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - type + - value + type: object + ProductAnalyticsRetentionIndexTarget: + description: Selects a cohort or return period by its zero-based position in the grid. properties: - product_analytics_retention_scale: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionScale' - rum_event_processing_scale: - $ref: '#/components/schemas/RUMEventProcessingScale' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionIndexTargetType' + value: + description: Zero-based index of the targeted cohort or return period. + example: 0 + format: int64 + minimum: 0 + type: integer + required: + - type + - value type: object - RUMProductAnalyticsRetentionState: - description: >- - Controls the retention policy for Product Analytics data derived from - RUM events. + ProductAnalyticsRetentionCellScopeType: + description: The discriminator identifying a scope narrowed to one grid cell. enum: - - MAX - - NONE - example: MAX + - cell + example: cell type: string - x-enum-descriptions: - - >- - Store Product Analytics data for the maximum available retention - period - - Do not store Product Analytics data x-enum-varnames: - - MAX - - NONE - RUMEventProcessingState: - description: >- - Configures which RUM events are processed and stored for the - application. + - CELL + ProductAnalyticsSankeyAggregatedNodeType: + description: The resource type identifier for a node rolled up into an aggregated node. enum: - - ALL - - ERROR_FOCUSED_MODE - - NONE - example: ALL + - aggregated type: string - x-enum-descriptions: - - >- - Process and store all RUM events (sessions, views, actions, resources, - errors) - - Process and store only error events and related critical events - - Disable RUM event processing—no events are stored x-enum-varnames: - - ALL - - ERROR_FOCUSED_MODE - - NONE - RumRetentionFilterEnabled: - description: Whether the retention filter is enabled. - example: true - type: boolean - RumRetentionFilterEventType: - description: The type of RUM events to filter on. + - AGGREGATED + RUMAggregateBucketValueTimeseriesPoint: + description: A timeseries point. + properties: + time: + description: The time value for this point. + example: '2020-06-08T11:55:00.123Z' + format: date-time + type: string + value: + description: The value for this point. + example: 19 + format: double + type: number + type: object + RUMOperationJourneyCompositeRule: + description: |- + A composite rule combining several predicates. Used as an alternative to `nodes` on a journey + step when several conditions must be matched together, in any order or in a specific order. + properties: + composite_rule_id: + description: The unique identifier of the composite rule. Generated by the server if omitted. + readOnly: true + type: string + config_version: + description: A hash of the composite rule's configuration, computed by the server. + readOnly: true + type: string + kind: + $ref: '#/components/schemas/RUMOperationJourneyCompositeRuleKind' + max_window_ms: + description: The maximum time window, in milliseconds, in which all predicates must match. + example: 30000 + format: int64 + type: integer + predicates: + description: The list of predicates that must be matched by RUM events. + items: + $ref: '#/components/schemas/RUMOperationJourneyPredicate' + type: array + required: + - kind + - predicates + type: object + RUMOperationJourneyNode: + description: A single node within a RUM operation journey step, matching RUM events with a query. + properties: + id: + description: The unique identifier of the node. Generated by the server if omitted. + readOnly: true + type: string + query: + description: The RUM search query used to match events for this node. + example: '@type:action @action.type:click' + type: string + required: + - query + type: object + RUMOperationJourneyStepType: + description: The type of a step within a RUM operation's journey. enum: - - session - - view - - action + - start + - update + - stop - error - - resource - - long_task - - vital - example: session + - abandoned + example: start type: string x-enum-varnames: - - SESSION - - VIEW - - ACTION + - START + - UPDATE + - STOP - ERROR - - RESOURCE - - LONG_TASK - - VITAL - RunRetentionFilterName: - description: The name of a RUM retention filter. - example: Retention filter for session - type: string - RumRetentionFilterQuery: - description: The query string for a RUM retention filter. - example: '@session.has_replay:true' + - ABANDONED + LongTaskMetricStats: + description: Statistical distribution (average, min, max) of a long task metric across sampled views. + properties: + average: + description: Average value across sampled views. + example: 3504.1 + format: double + type: number + max: + description: Maximum value across sampled views. + example: 3517.8 + format: double + type: number + min: + description: Minimum value across sampled views. + example: 3500.1 + format: double + type: number + required: + - average + - min + - max + type: object + ProductAnalyticsEventQueryDataSource: + description: The data source identifier. + enum: + - product_analytics + example: product_analytics type: string - RumRetentionFilterSampleRate: - description: The sample rate for a RUM retention filter, between 0 and 100. - example: 25 - format: int64 - maximum: 100 - minimum: 0 - type: integer - RumMetricResponseCompute: - description: The compute rule to compute the rum-based metric. + x-enum-varnames: + - PRODUCT_ANALYTICS + ProductAnalyticsEventSearch: + description: Search parameters for an event query. properties: - aggregation_type: - $ref: '#/components/schemas/RumMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - path: - description: |- - The path to the value the rum-based metric will aggregate on. - Only present when `aggregation_type` is `distribution`. - example: '@duration' + query: + description: The search query using Datadog search syntax. + example: '@type:view' type: string type: object - RumMetricEventType: - description: The type of RUM events to filter on. + ProductAnalyticsOccurrenceQueryDataSource: + description: The data source identifier for occurrence queries. enum: - - session - - view - - action - - error - - resource - - long_task - - vital - example: session + - product_analytics_occurrence + example: product_analytics_occurrence type: string x-enum-varnames: - - SESSION - - VIEW - - ACTION - - ERROR - - RESOURCE - - LONG_TASK - - VITAL - RumMetricResponseFilter: - description: >- - The rum-based metric filter. RUM events matching this filter will be - aggregated in this metric. + - PRODUCT_ANALYTICS_OCCURRENCE + ProductAnalyticsOccurrenceSearch: + description: Search parameters for an occurrence query. properties: + occurrences: + $ref: '#/components/schemas/ProductAnalyticsOccurrenceFilter' query: - description: The search query - following the RUM search syntax. - example: service:web* AND @http.status_code:[200 TO 299] + description: The search query using Datadog search syntax. + example: '@type:action' type: string type: object - RumMetricResponseGroupBy: - description: A group by rule. + ProductAnalyticsJourneyAudienceFilters: + description: |- + Restricts the journey to an audience built from named sub-queries. + Sub-query names must be unique across `users`, `segments`, and `accounts`. properties: - path: - description: The path to the value the rum-based metric will be aggregated over. - example: '@http.status_code' - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, `path` is - used as the tag name. - example: status_code + accounts: + description: Named account sub-queries. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyAudienceAccountQuery' + type: array + formula: + description: |- + Boolean expression combining the sub-query names with `AND`, `OR`, and `NOT`. + When empty, all sub-queries are combined with `AND`. + example: power_users AND NOT trial_segment type: string + segments: + description: Named segment sub-queries. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyAudienceSegmentQuery' + type: array + users: + description: Named user sub-queries. + items: + $ref: '#/components/schemas/ProductAnalyticsJourneyAudienceUserQuery' + type: array type: object - RumMetricResponseUniqueness: - description: >- - The rule to count updatable events. Is only set if `event_type` is - `session` or `view`. + ProductAnalyticsJourneySearchGraphFilter: + description: A filter applied to a step, or a range of steps, of the journey graph. properties: - when: - $ref: '#/components/schemas/RumMetricUniquenessWhen' + name: + $ref: '#/components/schemas/ProductAnalyticsJourneySearchGraphFilterName' + operator: + $ref: '#/components/schemas/ProductAnalyticsJourneySearchGraphFilterOperator' + target: + $ref: '#/components/schemas/ProductAnalyticsJourneyTarget' + value: + description: Value compared against the metric. Durations are expressed in milliseconds. + example: 60000 + format: int64 + type: integer + required: + - name + - operator + - value type: object - RumMetricCompute: - description: The compute rule to compute the rum-based metric. + ProductAnalyticsJourneyNodeTargetType: + description: The discriminator identifying a target that references a single step. + enum: + - node + example: node + type: string + x-enum-varnames: + - NODE + ProductAnalyticsJourneyPathTargetType: + description: The discriminator identifying a target that references a range of steps. + enum: + - path + example: path + type: string + x-enum-varnames: + - PATH + ProductAnalyticsRetentionCohortScopeType: + description: The discriminator identifying a scope narrowed to one cohort. + enum: + - cohort + example: cohort + type: string + x-enum-varnames: + - COHORT + ProductAnalyticsRetentionReturnPeriodScopeType: + description: The discriminator identifying a scope narrowed to one return period. + enum: + - return_period + example: return_period + type: string + x-enum-varnames: + - RETURN_PERIOD + ProductAnalyticsRetentionTimeInterval: + description: |- + A retention interval, either aligned to calendar boundaries or of a fixed length. + Cohort criteria use calendar intervals; return criteria use fixed intervals. properties: - aggregation_type: - $ref: '#/components/schemas/RumMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - path: - description: |- - The path to the value the rum-based metric will aggregate on. - Only present when `aggregation_type` is `distribution`. - example: '@duration' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionCalendarTimeIntervalType' + value: + $ref: '#/components/schemas/ProductAnalyticsCalendarInterval' + unit: + $ref: '#/components/schemas/ProductAnalyticsRetentionFixedTimeIntervalUnit' + required: + - type + - value + - unit + type: object + ProductAnalyticsRetentionAggregationTarget: + description: Selects the rolled-up row that aggregates every cohort, rather than a single cohort. + properties: + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionAggregationTargetType' + value: + description: The aggregation that produced the rolled-up row. + example: weighted_avg type: string required: - - aggregation_type + - type + - value type: object - RumMetricFilter: - description: >- - The rum-based metric filter. Events matching this filter will be - aggregated in this metric. + ProductAnalyticsRetentionIndexTargetType: + description: The discriminator identifying a target selected by index. + enum: + - index + example: index + type: string + x-enum-varnames: + - INDEX + RUMOperationJourneyCompositeRuleKind: + description: |- + The rule used to combine the composite rule's predicates. `all_of` requires every predicate + to match, in any order. `in_order` requires every predicate to match in the given order. + enum: + - all_of + - in_order + example: all_of + type: string + x-enum-varnames: + - ALL_OF + - IN_ORDER + RUMOperationJourneyPredicate: + description: A single predicate within a composite rule, matching RUM events with a query. properties: query: - default: '*' - description: The search query - following the RUM search syntax. - example: '@service:web-ui: ' + description: The RUM search query used to match events for this predicate. + example: '@type:action @action.type:click' type: string required: - query type: object - RumMetricGroupBy: - description: A group by rule. + ProductAnalyticsOccurrenceFilter: + description: Filter for occurrence-based queries. properties: - path: - description: The path to the value the rum-based metric will be aggregated over. - example: '@browser.name' + meta: + additionalProperties: + type: string + description: Additional metadata. + type: object + operator: + description: Comparison operator (=, >=, <=, >, <). + example: '>=' type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, `path` is - used as the tag name. - example: browser_name + value: + description: The occurrence count threshold as a string. + example: '1' type: string required: - - path + - operator + - value type: object - RumMetricUniqueness: - description: >- - The rule to count updatable events. Is only set if `event_type` is - `sessions` or `views`. + ProductAnalyticsJourneyAudienceAccountQuery: + description: A named sub-query selecting a set of accounts. properties: - when: - $ref: '#/components/schemas/RumMetricUniquenessWhen' + name: + description: Unique name for this sub-query, referenced from `formula`. + example: enterprise_accounts + type: string + query: + description: Search query selecting the accounts. + type: string required: - - when + - name type: object - RumMetricUpdateCompute: - description: The compute rule to compute the rum-based metric. + ProductAnalyticsJourneyAudienceSegmentQuery: + description: A named sub-query selecting a saved segment. properties: - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' + name: + description: Unique name for this sub-query, referenced from `formula`. + example: trial_segment + type: string + segment_id: + description: Identifier of the saved segment. + example: 00000000-0000-0000-0000-000000000000 + type: string + required: + - name + - segment_id type: object - RUMAggregateBucketValueSingleString: - description: A single string value. + ProductAnalyticsJourneyAudienceUserQuery: + description: A named sub-query selecting a set of users. + properties: + name: + description: Unique name for this sub-query, referenced from `formula`. + example: power_users + type: string + query: + description: Search query selecting the users. + type: string + required: + - name + type: object + ProductAnalyticsJourneySearchGraphFilterName: + description: The journey-level metric the graph filter applies to. + enum: + - __dd.time_to_convert + - __dd.session + - __dd.dropoff_rate + example: __dd.time_to_convert type: string - RUMAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - RUMAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/RUMAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - RUMProductAnalyticsRetentionScale: - description: Product Analytics retention scale configuration. + x-enum-varnames: + - TIME_TO_CONVERT + - SESSION + - DROPOFF_RATE + ProductAnalyticsJourneySearchGraphFilterOperator: + description: Comparison operator applied to the graph filter value. + enum: + - '=' + - < + - '>' + - <= + - '>=' + example: <= + type: string + x-enum-varnames: + - EQUAL + - LESS_THAN + - GREATER_THAN + - LESS_THAN_OR_EQUAL + - GREATER_THAN_OR_EQUAL + ProductAnalyticsRetentionCalendarTimeInterval: + description: A retention interval aligned to calendar boundaries. properties: - last_modified_at: - description: Timestamp in milliseconds when this scale was last modified. - example: 1747922145974 - format: int64 - type: integer - state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionCalendarTimeIntervalType' + value: + $ref: '#/components/schemas/ProductAnalyticsCalendarInterval' + required: + - type + - value type: object - RUMEventProcessingScale: - description: RUM event processing scale configuration. + ProductAnalyticsRetentionFixedTimeInterval: + description: A retention interval of fixed length, such as "7 days". properties: - last_modified_at: - description: Timestamp in milliseconds when this scale was last modified. - example: 1721897494108 - format: int64 - type: integer - state: - $ref: '#/components/schemas/RUMEventProcessingState' + type: + $ref: '#/components/schemas/ProductAnalyticsRetentionFixedTimeIntervalType' + unit: + $ref: '#/components/schemas/ProductAnalyticsRetentionFixedTimeIntervalUnit' + value: + description: Length of the interval, expressed in `unit`. + example: 7 + exclusiveMinimum: true + format: double + minimum: 0 + type: number + required: + - type + - value + - unit type: object - RumMetricComputeAggregationType: - description: The type of aggregation to use. + ProductAnalyticsRetentionAggregationTargetType: + description: The discriminator identifying a target selected by aggregation. enum: - - count - - distribution - example: distribution + - aggregation + example: aggregation type: string x-enum-varnames: - - COUNT - - DISTRIBUTION - RumMetricComputeIncludePercentiles: - description: >- - Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when `aggregation_type` is `distribution`. - example: true - type: boolean - RumMetricUniquenessWhen: - description: >- - When to count updatable events. `match` when the event is first seen, or - `end` when the event is complete. + - AGGREGATION + ProductAnalyticsRetentionCalendarTimeIntervalType: + description: The discriminator identifying a calendar-aligned retention interval. enum: - - match - - end - example: match + - calendar + example: calendar type: string x-enum-varnames: - - WHEN_MATCH - - WHEN_END - RUMAggregateBucketValueTimeseriesPoint: - description: A timeseries point. + - CALENDAR + ProductAnalyticsCalendarInterval: + description: A calendar-aligned bucket definition, such as "every 1 week starting on Monday". properties: - time: - description: The time value for this point. - example: '2020-06-08T11:55:00.123Z' - format: date-time + alignment: + description: |- + Where each bucket starts within the calendar unit. Use an hour for `day` (for example `1am` or `14`), + a day name for `week` (for example `monday`), or an ordinal for `month` (for example `1st`). + example: monday type: string - value: - description: The value for this point. - example: 19 - format: double - type: number + quantity: + description: Number of calendar units per bucket. + example: 1 + format: int64 + minimum: 1 + type: integer + timezone: + description: Timezone used to align the buckets. + example: UTC + type: string + type: + $ref: '#/components/schemas/ProductAnalyticsCalendarIntervalType' + required: + - type type: object + ProductAnalyticsRetentionFixedTimeIntervalType: + description: The discriminator identifying a fixed-length retention interval. + enum: + - fixed + example: fixed + type: string + x-enum-varnames: + - FIXED + ProductAnalyticsRetentionFixedTimeIntervalUnit: + description: Time unit for a fixed-length retention interval. + enum: + - day + - week + - month + example: day + type: string + x-enum-varnames: + - DAY + - WEEK + - MONTH + ProductAnalyticsCalendarIntervalType: + description: Calendar unit used to bucket cohorts. + enum: + - minute + - hour + - day + - week + - month + - quarter + - year + example: week + type: string + x-enum-varnames: + - MINUTE + - HOUR + - DAY + - WEEK + - MONTH + - QUARTER + - YEAR responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests BadRequestResponse: content: application/json: @@ -1996,18 +15338,18 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Not Authorized - TooManyRequestsResponse: + NotFoundResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - NotFoundResponse: + description: Not Found + RumExclusionFilterMethodNotAllowedResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + description: Method Not Allowed ConflictResponse: content: application/json: @@ -2022,6 +15364,27 @@ components: required: true schema: type: string + RumExclusionFilterApplicationIDParameter: + description: RUM application ID. + in: path + name: app_id + required: true + schema: + type: string + RumExclusionFilterIDParameter: + description: Exclusion filter ID. + in: path + name: ef_id + required: true + schema: + type: string + RumPermanentRetentionFilterIDParameter: + description: The identifier of the permanent RUM retention filter. + in: path + name: permanent_rf_id + required: true + schema: + $ref: '#/components/schemas/RumPermanentRetentionFilterID' RumRetentionFilterIDParameter: description: Retention filter ID. in: path @@ -2030,218 +15393,1587 @@ components: schema: type: string RumMetricIDParameter: - description: The name of the rum-based metric. + description: The name of the RUM-based metric. in: path name: metric_id required: true schema: type: string + RumRetentionQuotaScopeTypeParameter: + description: |- + The type of scope the retention quota configuration applies to. + `application` is the only supported scope type. + in: path + name: scope_type + required: true + schema: + $ref: '#/components/schemas/RumRetentionQuotaScopeType' + RumRetentionQuotaScopeIDParameter: + description: |- + The identifier of the scope the retention quota configuration applies to. + For the `application` scope, this is the RUM application ID. + in: path + name: scope_id + required: true + schema: + example: cd73a516-a481-4af5-8352-9b577465c77b + type: string + TeamsOwnershipFilterViewNameParameter: + description: Filter mappings by RUM view name. + in: query + name: filter[view_name] + schema: + items: + type: string + type: array + TeamsOwnershipFilterTeamHandleParameter: + description: Filter mappings by owning team handle. + in: query + name: filter[team_handle] + schema: + items: + type: string + type: array + TeamsOwnershipFilterApplicationIdParameter: + description: Filter mappings by RUM application ID. Each value must be a valid UUID. + in: query + name: filter[application_id] + schema: + items: + format: uuid + type: string + type: array + TeamsOwnershipFilterServiceParameter: + description: Filter mappings by RUM application service name. + in: query + name: filter[service] + schema: + items: + type: string + type: array + TeamsOwnershipMappingIdParameter: + description: The ID of the teams ownership mapping. + in: path + name: id + required: true + schema: + type: string x-stackQL-resources: + product_analytics_events: + id: datadog.digital_experience.product_analytics_events + name: product_analytics_events + title: Product Analytics Events + methods: + submit_product_analytics_event: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1prodlytics/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + product_analytics_accounts: + id: datadog.digital_experience.product_analytics_accounts + name: product_analytics_accounts + title: Product Analytics Accounts + methods: + get_account_facet_info: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1accounts~1facet_info/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_accounts: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1accounts~1query/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + product_analytics: + id: datadog.digital_experience.product_analytics + name: product_analytics + title: Product Analytics + methods: + query_product_analytics_list: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1analytics~1list/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_product_analytics_scalar: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1analytics~1scalar/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_product_analytics_timeseries: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1analytics~1timeseries/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + product_analytics_journey_funnels: + id: datadog.digital_experience.product_analytics_journey_funnels + name: product_analytics_journey_funnels + title: Product Analytics Journey Funnels + methods: + query_product_analytics_journey_funnel: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1journey~1funnel/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/product_analytics_journey_funnels/methods/query_product_analytics_journey_funnel' + update: [] + delete: [] + replace: [] + product_analytics_journeys: + id: datadog.digital_experience.product_analytics_journeys + name: product_analytics_journeys + title: Product Analytics Journeys + methods: + query_product_analytics_journey_list: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1journey~1list/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_product_analytics_journey_scalar: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1journey~1scalar/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_product_analytics_journey_timeseries: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1journey~1timeseries/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + product_analytics_retention_grids: + id: datadog.digital_experience.product_analytics_retention_grids + name: product_analytics_retention_grids + title: Product Analytics Retention Grids + methods: + query_product_analytics_retention_grid: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1retention~1grid/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/product_analytics_retention_grids/methods/query_product_analytics_retention_grid' + update: [] + delete: [] + replace: [] + product_analytics_retentions: + id: datadog.digital_experience.product_analytics_retentions + name: product_analytics_retentions + title: Product Analytics Retentions + methods: + query_product_analytics_retention_list: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1retention~1list/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_product_analytics_retention_scalar: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1retention~1scalar/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_product_analytics_retention_timeseries: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1retention~1timeseries/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + product_analytics_sankeys: + id: datadog.digital_experience.product_analytics_sankeys + name: product_analytics_sankeys + title: Product Analytics Sankeys + methods: + query_product_analytics_sankey: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1sankey/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/product_analytics_sankeys/methods/query_product_analytics_sankey' + update: [] + delete: [] + replace: [] + product_analytics_user_event_filtered_queries: + id: datadog.digital_experience.product_analytics_user_event_filtered_queries + name: product_analytics_user_event_filtered_queries + title: Product Analytics User Event Filtered Queries + methods: + query_event_filtered_users: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1users~1event_filtered_query/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/product_analytics_user_event_filtered_queries/methods/query_event_filtered_users' + update: [] + delete: [] + replace: [] + product_analytics_users: + id: datadog.digital_experience.product_analytics_users + name: product_analytics_users + title: Product Analytics Users + methods: + get_user_facet_info: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1users~1facet_info/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + query_users: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1users~1query/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + product_analytics_mappings: + id: datadog.digital_experience.product_analytics_mappings + name: product_analytics_mappings + title: Product Analytics Mappings + methods: + get_mapping: + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1{entity}~1mapping/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/product_analytics_mappings/methods/get_mapping' + insert: [] + update: [] + delete: [] + replace: [] + product_analytics_mapping_connections: + id: datadog.digital_experience.product_analytics_mapping_connections + name: product_analytics_mapping_connections + title: Product Analytics Mapping Connections + methods: + create_connection: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1{entity}~1mapping~1connection/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + update_connection: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1{entity}~1mapping~1connection/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_connection: + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1{entity}~1mapping~1connection~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + list_connections: + operation: + $ref: '#/paths/~1api~1v2~1product-analytics~1{entity}~1mapping~1connections/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/product_analytics_mapping_connections/methods/list_connections' + insert: + - $ref: '#/components/x-stackQL-resources/product_analytics_mapping_connections/methods/create_connection' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/product_analytics_mapping_connections/methods/delete_connection' + replace: + - $ref: '#/components/x-stackQL-resources/product_analytics_mapping_connections/methods/update_connection' + replay_heatmap_snapshots: + id: datadog.digital_experience.replay_heatmap_snapshots + name: replay_heatmap_snapshots + title: Replay Heatmap Snapshots + methods: + list_replay_heatmap_snapshots: + operation: + $ref: '#/paths/~1api~1v2~1replay~1heatmap~1snapshots/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + create_replay_heatmap_snapshot: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1replay~1heatmap~1snapshots/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_replay_heatmap_snapshot: + operation: + $ref: '#/paths/~1api~1v2~1replay~1heatmap~1snapshots~1{snapshot_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_replay_heatmap_snapshot: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1replay~1heatmap~1snapshots~1{snapshot_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/replay_heatmap_snapshots/methods/list_replay_heatmap_snapshots' + insert: + - $ref: '#/components/x-stackQL-resources/replay_heatmap_snapshots/methods/create_replay_heatmap_snapshot' + update: + - $ref: '#/components/x-stackQL-resources/replay_heatmap_snapshots/methods/update_replay_heatmap_snapshot' + delete: + - $ref: '#/components/x-stackQL-resources/replay_heatmap_snapshots/methods/delete_replay_heatmap_snapshot' + replace: [] rum_events: id: datadog.digital_experience.rum_events name: rum_events title: Rum Events methods: aggregate_rumevents: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_rumevents: + operation: + $ref: '#/paths/~1api~1v2~1rum~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + search_rumevents: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_events/methods/list_rumevents' + insert: [] + update: [] + delete: [] + replace: [] + rum_applications: + id: datadog.digital_experience.rum_applications + name: rum_applications + title: Rum Applications + methods: + get_rumapplications: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_rumapplication: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_rumapplication: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_rumapplication: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_rumapplication: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_applications/methods/get_rumapplication' + - $ref: '#/components/x-stackQL-resources/rum_applications/methods/get_rumapplications' + insert: + - $ref: '#/components/x-stackQL-resources/rum_applications/methods/create_rumapplication' + update: + - $ref: '#/components/x-stackQL-resources/rum_applications/methods/update_rumapplication' + delete: + - $ref: '#/components/x-stackQL-resources/rum_applications/methods/delete_rumapplication' + replace: [] + rum_retention_filters: + id: datadog.digital_experience.rum_retention_filters + name: rum_retention_filters + title: Rum Retention Filters + methods: + order_retention_filters: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1relationships~1retention_filters/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_retention_filters: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_retention_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_retention_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_retention_filters/methods/get_retention_filter' + - $ref: '#/components/x-stackQL-resources/rum_retention_filters/methods/list_retention_filters' + insert: + - $ref: '#/components/x-stackQL-resources/rum_retention_filters/methods/create_retention_filter' + update: + - $ref: '#/components/x-stackQL-resources/rum_retention_filters/methods/update_retention_filter' + delete: + - $ref: '#/components/x-stackQL-resources/rum_retention_filters/methods/delete_retention_filter' + replace: [] + rum_application_retention_filter_exclusions: + id: datadog.digital_experience.rum_application_retention_filter_exclusions + name: rum_application_retention_filter_exclusions + title: Rum Application Retention Filter Exclusions + methods: + list_exclusion_filters: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1exclusion/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_exclusion_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1exclusion/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_exclusion_filter: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1exclusion~1{ef_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_exclusion_filter: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1exclusion~1{ef_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_exclusion_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1exclusion~1{ef_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_exclusions/methods/get_exclusion_filter' + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_exclusions/methods/list_exclusion_filters' + insert: + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_exclusions/methods/create_exclusion_filter' + update: + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_exclusions/methods/update_exclusion_filter' + delete: + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_exclusions/methods/delete_exclusion_filter' + replace: [] + rum_application_retention_filter_permanents: + id: datadog.digital_experience.rum_application_retention_filter_permanents + name: rum_application_retention_filter_permanents + title: Rum Application Retention Filter Permanents + methods: + list_permanent_retention_filters: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1permanent/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_permanent_retention_filter: + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1permanent~1{permanent_rf_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_permanent_retention_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1permanent~1{permanent_rf_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_permanents/methods/get_permanent_retention_filter' + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_permanents/methods/list_permanent_retention_filters' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/rum_application_retention_filter_permanents/methods/update_permanent_retention_filter' + delete: [] + replace: [] + rum_configs: + id: datadog.digital_experience.rum_configs + name: rum_configs + title: Rum Configs + methods: + get_rum_config: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_rum_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1config/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_rum_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1config/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_configs/methods/get_rum_config' + insert: + - $ref: '#/components/x-stackQL-resources/rum_configs/methods/create_rum_config' + update: + - $ref: '#/components/x-stackQL-resources/rum_configs/methods/update_rum_config' + delete: [] + replace: [] + rum_metrics: + id: datadog.digital_experience.rum_metrics + name: rum_metrics + title: Rum Metrics + methods: + list_rum_metrics: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_rum_metric: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_rum_metric: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_rum_metric: operation: - $ref: '#/paths/~1api~1v2~1rum~1analytics~1aggregate/post' + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/get' response: mediaType: application/json openAPIDocKey: '200' - list_rumevents: + objectKey: $.data + request: + nativeCasing: camel + update_rum_metric: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1rum~1events/get' + $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_metrics/methods/get_rum_metric' + - $ref: '#/components/x-stackQL-resources/rum_metrics/methods/list_rum_metrics' + insert: + - $ref: '#/components/x-stackQL-resources/rum_metrics/methods/create_rum_metric' + update: + - $ref: '#/components/x-stackQL-resources/rum_metrics/methods/update_rum_metric' + delete: + - $ref: '#/components/x-stackQL-resources/rum_metrics/methods/delete_rum_metric' + replace: [] + rum_retention_quotas: + id: datadog.digital_experience.rum_retention_quotas + name: rum_retention_quotas + title: Rum Retention Quotas + methods: + delete_rum_quota_config: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1retention-quota~1{scope_type}~1{scope_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_rum_quota_config: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1retention-quota~1{scope_type}~1{scope_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - search_rumevents: + request: + nativeCasing: camel + upsert_rum_quota_config: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1rum~1events~1search/post' + $ref: '#/paths/~1api~1v2~1rum~1config~1retention-quota~1{scope_type}~1{scope_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/rum_events/methods/list_rumevents' + - $ref: '#/components/x-stackQL-resources/rum_retention_quotas/methods/get_rum_quota_config' insert: [] update: [] + delete: + - $ref: '#/components/x-stackQL-resources/rum_retention_quotas/methods/delete_rum_quota_config' + replace: + - $ref: '#/components/x-stackQL-resources/rum_retention_quotas/methods/upsert_rum_quota_config' + rum_teams_ownership_mappings: + id: datadog.digital_experience.rum_teams_ownership_mappings + name: rum_teams_ownership_mappings + title: Rum Teams Ownership Mappings + methods: + list_teams_ownership_mappings: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1teams-ownership~1mappings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_teams_ownership_mapping: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1teams-ownership~1mappings/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_teams_ownership_mapping: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1teams-ownership~1mappings~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_teams_ownership_mapping: + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1teams-ownership~1mappings~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_teams_ownership_mappings/methods/get_teams_ownership_mapping' + - $ref: '#/components/x-stackQL-resources/rum_teams_ownership_mappings/methods/list_teams_ownership_mappings' + insert: + - $ref: '#/components/x-stackQL-resources/rum_teams_ownership_mappings/methods/create_teams_ownership_mapping' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/rum_teams_ownership_mappings/methods/delete_teams_ownership_mapping' + replace: [] + rum_teams_ownership_mapping_operations: + id: datadog.digital_experience.rum_teams_ownership_mapping_operations + name: rum_teams_ownership_mapping_operations + title: Rum Teams Ownership Mapping Operations + methods: + create_teams_ownership_mappings_batch: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1config~1teams-ownership~1mappings~1operations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/rum_teams_ownership_mapping_operations/methods/create_teams_ownership_mappings_batch' + update: [] delete: [] replace: [] - rum_applications: - id: datadog.digital_experience.rum_applications - name: rum_applications - title: Rum Applications + rum_teams_ownership_rules: + id: datadog.digital_experience.rum_teams_ownership_rules + name: rum_teams_ownership_rules + title: Rum Teams Ownership Rules methods: - get_rumapplications: + list_teams_ownership_rules: operation: - $ref: '#/paths/~1api~1v2~1rum~1applications/get' + $ref: '#/paths/~1api~1v2~1rum~1config~1teams-ownership~1rules/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_rumapplication: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_teams_ownership_rules/methods/list_teams_ownership_rules' + insert: [] + update: [] + delete: [] + replace: [] + rum_operations: + id: datadog.digital_experience.rum_operations + name: rum_operations + title: Rum Operations + methods: + create_rumoperation: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1rum~1applications/post' + $ref: '#/paths/~1api~1v2~1rum~1operations/post' response: mediaType: application/json openAPIDocKey: '200' - delete_rumapplication: + request: + nativeCasing: camel + list_rumoperations: operation: - $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/delete' + $ref: '#/paths/~1api~1v2~1rum~1operations~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 100 + skip: + paramName: page[offset] + delete_rumoperation: + operation: + $ref: '#/paths/~1api~1v2~1rum~1operations~1{rum_operation_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_rumapplication: + request: + nativeCasing: camel + get_rumoperation: operation: - $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/get' + $ref: '#/paths/~1api~1v2~1rum~1operations~1{rum_operation_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_rumapplication: + request: + nativeCasing: camel + update_rumoperation: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1rum~1applications~1{id}/patch' + $ref: '#/paths/~1api~1v2~1rum~1operations~1{rum_operation_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/rum_applications/methods/get_rumapplication - - $ref: >- - #/components/x-stackQL-resources/rum_applications/methods/get_rumapplications + - $ref: '#/components/x-stackQL-resources/rum_operations/methods/get_rumoperation' + - $ref: '#/components/x-stackQL-resources/rum_operations/methods/list_rumoperations' insert: - - $ref: >- - #/components/x-stackQL-resources/rum_applications/methods/create_rumapplication - update: - - $ref: >- - #/components/x-stackQL-resources/rum_applications/methods/update_rumapplication + - $ref: '#/components/x-stackQL-resources/rum_operations/methods/create_rumoperation' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/rum_applications/methods/delete_rumapplication + - $ref: '#/components/x-stackQL-resources/rum_operations/methods/delete_rumoperation' + replace: + - $ref: '#/components/x-stackQL-resources/rum_operations/methods/update_rumoperation' + rum_operation_by_names: + id: datadog.digital_experience.rum_operation_by_names + name: rum_operation_by_names + title: Rum Operation By Names + methods: + get_rumoperation_by_name: + operation: + $ref: '#/paths/~1api~1v2~1rum~1operations~1by-name~1{name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_operation_by_names/methods/get_rumoperation_by_name' + insert: [] + update: [] + delete: [] replace: [] - rum_retention_filters: - id: datadog.digital_experience.rum_retention_filters - name: rum_retention_filters - title: Rum Retention Filters + rum_operation_strong_links: + id: datadog.digital_experience.rum_operation_strong_links + name: rum_operation_strong_links + title: Rum Operation Strong Links methods: - order_retention_filters: + list_rumoperation_strong_links: operation: - $ref: >- - #/paths/~1api~1v2~1rum~1applications~1{app_id}~1relationships~1retention_filters/patch + $ref: '#/paths/~1api~1v2~1rum~1operations~1strong_links/get' response: mediaType: application/json openAPIDocKey: '200' - list_retention_filters: + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 200 + skip: + paramName: page[offset] + create_rumoperation_strong_link: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1operations~1strong_links/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_rumoperation_strong_link: + operation: + $ref: '#/paths/~1api~1v2~1rum~1operations~1strong_links~1{rum_operation_id}~1{feature_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_rumoperation_strong_link: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1operations~1strong_links~1{rum_operation_id}~1{feature_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_operation_strong_links/methods/list_rumoperation_strong_links' + insert: + - $ref: '#/components/x-stackQL-resources/rum_operation_strong_links/methods/create_rumoperation_strong_link' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/rum_operation_strong_links/methods/delete_rumoperation_strong_link' + replace: + - $ref: '#/components/x-stackQL-resources/rum_operation_strong_links/methods/update_rumoperation_strong_link' + rum_query_insight_aggregated_long_tasks: + id: datadog.digital_experience.rum_query_insight_aggregated_long_tasks + name: rum_query_insight_aggregated_long_tasks + title: Rum Query Insight Aggregated Long Tasks + methods: + query_aggregated_long_tasks: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1query~1insight~1aggregated_long_tasks/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/rum_query_insight_aggregated_long_tasks/methods/query_aggregated_long_tasks' + update: [] + delete: [] + replace: [] + rum_query_insight_aggregated_signals_problems: + id: datadog.digital_experience.rum_query_insight_aggregated_signals_problems + name: rum_query_insight_aggregated_signals_problems + title: Rum Query Insight Aggregated Signals Problems + methods: + query_aggregated_signals_problems: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1query~1insight~1aggregated_signals_problems/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/rum_query_insight_aggregated_signals_problems/methods/query_aggregated_signals_problems' + update: [] + delete: [] + replace: [] + rum_query_insight_aggregated_waterfalls: + id: datadog.digital_experience.rum_query_insight_aggregated_waterfalls + name: rum_query_insight_aggregated_waterfalls + title: Rum Query Insight Aggregated Waterfalls + methods: + query_aggregated_waterfall: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters/get + $ref: '#/paths/~1api~1v2~1rum~1query~1insight~1aggregated_waterfall/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/rum_query_insight_aggregated_waterfalls/methods/query_aggregated_waterfall' + update: [] + delete: [] + replace: [] + rum_replay_playlists: + id: datadog.digital_experience.rum_replay_playlists + name: rum_replay_playlists + title: Rum Replay Playlists + methods: + list_rum_replay_playlists: + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_retention_filter: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_rum_replay_playlist: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters/post + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists/post' response: mediaType: application/json openAPIDocKey: '201' - delete_retention_filter: + request: + nativeCasing: camel + delete_rum_replay_playlist: operation: - $ref: >- - #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/delete + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_retention_filter: + request: + nativeCasing: camel + get_rum_replay_playlist: operation: - $ref: >- - #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/get + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_retention_filter: + request: + nativeCasing: camel + update_rum_replay_playlist: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1rum~1applications~1{app_id}~1retention_filters~1{rf_id}/patch + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/rum_retention_filters/methods/get_retention_filter - - $ref: >- - #/components/x-stackQL-resources/rum_retention_filters/methods/list_retention_filters + - $ref: '#/components/x-stackQL-resources/rum_replay_playlists/methods/get_rum_replay_playlist' + - $ref: '#/components/x-stackQL-resources/rum_replay_playlists/methods/list_rum_replay_playlists' insert: - - $ref: >- - #/components/x-stackQL-resources/rum_retention_filters/methods/create_retention_filter - update: - - $ref: >- - #/components/x-stackQL-resources/rum_retention_filters/methods/update_retention_filter + - $ref: '#/components/x-stackQL-resources/rum_replay_playlists/methods/create_rum_replay_playlist' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/rum_retention_filters/methods/delete_retention_filter + - $ref: '#/components/x-stackQL-resources/rum_replay_playlists/methods/delete_rum_replay_playlist' + replace: + - $ref: '#/components/x-stackQL-resources/rum_replay_playlists/methods/update_rum_replay_playlist' + rum_replay_playlist_sessions: + id: datadog.digital_experience.rum_replay_playlist_sessions + name: rum_replay_playlist_sessions + title: Rum Replay Playlist Sessions + methods: + bulk_remove_rum_replay_playlist_sessions: + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}~1sessions/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + list_rum_replay_playlist_sessions: + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}~1sessions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + remove_rum_replay_session_from_playlist: + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}~1sessions~1{session_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + add_rum_replay_session_to_playlist: + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1playlists~1{playlist_id}~1sessions~1{session_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_replay_playlist_sessions/methods/list_rum_replay_playlist_sessions' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/rum_replay_playlist_sessions/methods/remove_rum_replay_session_from_playlist' + - $ref: '#/components/x-stackQL-resources/rum_replay_playlist_sessions/methods/bulk_remove_rum_replay_playlist_sessions' + replace: + - $ref: '#/components/x-stackQL-resources/rum_replay_playlist_sessions/methods/add_rum_replay_session_to_playlist' + rum_replay_session_view_segments: + id: datadog.digital_experience.rum_replay_session_view_segments + name: rum_replay_session_view_segments + title: Rum Replay Session View Segments + methods: + get_segments: + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1sessions~1{session_id}~1views~1{view_id}~1segments/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] replace: [] - rum_metrics: - id: datadog.digital_experience.rum_metrics - name: rum_metrics - title: Rum Metrics + rum_replay_session_watchers: + id: datadog.digital_experience.rum_replay_session_watchers + name: rum_replay_session_watchers + title: Rum Replay Session Watchers methods: - list_rum_metrics: + list_rum_replay_session_watchers: operation: - $ref: '#/paths/~1api~1v2~1rum~1config~1metrics/get' + $ref: '#/paths/~1api~1v2~1rum~1replay~1sessions~1{session_id}~1watchers/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_rum_metric: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_replay_session_watchers/methods/list_rum_replay_session_watchers' + insert: [] + update: [] + delete: [] + replace: [] + rum_replay_session_watches: + id: datadog.digital_experience.rum_replay_session_watches + name: rum_replay_session_watches + title: Rum Replay Session Watches + methods: + delete_rum_replay_session_watch: operation: - $ref: '#/paths/~1api~1v2~1rum~1config~1metrics/post' + $ref: '#/paths/~1api~1v2~1rum~1replay~1sessions~1{session_id}~1watches/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + create_rum_replay_session_watch: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1rum~1replay~1sessions~1{session_id}~1watches/post' response: mediaType: application/json openAPIDocKey: '201' - delete_rum_metric: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/rum_replay_session_watches/methods/create_rum_replay_session_watch' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/rum_replay_session_watches/methods/delete_rum_replay_session_watch' + replace: [] + rum_replay_viewership_history_sessions: + id: datadog.digital_experience.rum_replay_viewership_history_sessions + name: rum_replay_viewership_history_sessions + title: Rum Replay Viewership History Sessions + methods: + list_rum_replay_viewership_history_sessions: operation: - $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/delete' + $ref: '#/paths/~1api~1v2~1rum~1replay~1viewership-history~1sessions/get' response: mediaType: application/json - openAPIDocKey: '204' - get_rum_metric: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/rum_replay_viewership_history_sessions/methods/list_rum_replay_viewership_history_sessions' + insert: [] + update: [] + delete: [] + replace: [] + sourcemaps: + id: datadog.digital_experience.sourcemaps + name: sourcemaps + title: Sourcemaps + methods: + delete_sourcemaps: operation: - $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/get' + $ref: '#/paths/~1api~1v2~1sourcemaps/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_sourcemaps: + operation: + $ref: '#/paths/~1api~1v2~1sourcemaps/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_rum_metric: + request: + nativeCasing: camel + list_sourcemaps: operation: - $ref: '#/paths/~1api~1v2~1rum~1config~1metrics~1{metric_id}/patch' + $ref: '#/paths/~1api~1v2~1sourcemaps~1list/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + restore_sourcemaps: + operation: + $ref: '#/paths/~1api~1v2~1sourcemaps~1restore/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/rum_metrics/methods/get_rum_metric - - $ref: >- - #/components/x-stackQL-resources/rum_metrics/methods/list_rum_metrics - insert: - - $ref: >- - #/components/x-stackQL-resources/rum_metrics/methods/create_rum_metric - update: - - $ref: >- - #/components/x-stackQL-resources/rum_metrics/methods/update_rum_metric + - $ref: '#/components/x-stackQL-resources/sourcemaps/methods/get_sourcemaps' + - $ref: '#/components/x-stackQL-resources/sourcemaps/methods/list_sourcemaps' + insert: [] + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/rum_metrics/methods/delete_rum_metric + - $ref: '#/components/x-stackQL-resources/sourcemaps/methods/delete_sourcemaps' + replace: [] + sourcemap_service_repository_infos: + id: datadog.digital_experience.sourcemap_service_repository_infos + name: sourcemap_service_repository_infos + title: Sourcemap Service Repository Infos + methods: + get_service_repository_info: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1sourcemaps~1service_repository_info/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/sourcemap_service_repository_infos/methods/get_service_repository_info' + update: [] + delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/fleet.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/fleet.yaml new file mode 100644 index 0000000..8311d29 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/fleet.yaml @@ -0,0 +1,3477 @@ +openapi: 3.0.0 +info: + title: fleet API + description: datadog fleet API + version: '1.0' +paths: + /api/unstable/fleet/agents/{agent_key}/tracers: + get: + description: |- + Retrieve a paginated list of tracers for a specific agent. + + This endpoint returns tracers associated with a given agent key, identified by the + agent's hostname. Use this to discover telemetry-derived service names for a particular host. + operationId: ListFleetAgentTracers + parameters: + - description: The unique identifier (agent key) for the Datadog Agent. + in: path + name: agent_key + required: true + schema: + type: string + - description: Page number for pagination (starts at 0). + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of results per page (must be greater than 0 and less than or equal to 100). + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Attribute to sort by. + in: query + name: sort_attribute + required: false + schema: + type: string + - description: Sort order (true for descending, false for ascending). + in: query + name: sort_descending + required: false + schema: + default: true + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tracers: + - env: production + hostname: my-hostname + language: java + service: test-service + tracer_version: 1.32.0 + id: done + type: status + meta: + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/FleetTracersResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List tracers for a specific agent + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/schedules: + post: + description: |- + Create a new schedule for automated package upgrades. + + Schedules define when and how often to automatically deploy package upgrades to a fleet + of hosts. Each schedule includes: + - A filter query to select target hosts + - A recurrence rule defining maintenance windows + - A version strategy (e.g., always latest, or N versions behind latest) + + When the schedule triggers during a maintenance window, it automatically creates a + deployment that upgrades the Datadog Agent to the specified version on all matching hosts. + operationId: CreateFleetSchedule + requestBody: + content: + application/json: + examples: + conservative_staging: + summary: Conservative staging updates (N-1 version) + value: + data: + attributes: + name: Staging Environment - Conservative Updates + query: env:staging + rule: + days_of_week: + - Fri + maintenance_window_duration: 240 + start_maintenance_window: '22:00' + timezone: UTC + status: active + version_to_latest: 1 + type: schedule + default: + value: + data: + attributes: + name: Weekly Production Agent Updates + query: env:prod + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 180 + start_maintenance_window: '02:00' + timezone: America/New_York + status: active + version_to_latest: 0 + type: schedule + weekly_production_update: + summary: Weekly production agent updates + value: + data: + attributes: + name: Weekly Production Agent Updates + query: env:prod + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 180 + start_maintenance_window: '02:00' + timezone: America/New_York + status: active + version_to_latest: 0 + type: schedule + schema: + $ref: '#/components/schemas/FleetScheduleCreateRequest' + description: Request payload containing the schedule details. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Weekly Production Agent Updates + query: env:prod + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 180 + start_maintenance_window: '02:00' + timezone: America/New_York + status: active + version_to_latest: 0 + id: abc-123 + type: schedule + schema: + $ref: '#/components/schemas/FleetScheduleResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a schedule + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/schedules/{id}: + delete: + description: |- + Delete a schedule permanently. + + When you delete a schedule: + - The schedule is permanently removed and will no longer create deployments + - Any deployments already created by this schedule are not affected + - This action cannot be undone + + If you want to temporarily stop a schedule from creating deployments, consider + updating its status to "inactive" instead of deleting it. + operationId: DeleteFleetSchedule + parameters: + - description: The unique identifier of the schedule to delete. + example: abc-def-ghi-123 + in: path + name: id + required: true + schema: + type: string + responses: + '204': + description: Schedule successfully deleted. + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a schedule + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Partially update a schedule by providing only the fields you want to change. + + This endpoint allows you to modify specific attributes of a schedule without + affecting other fields. Common use cases include: + - Changing the schedule status between active and inactive + - Updating the maintenance window times + - Modifying the filter query to target different hosts + - Adjusting the version strategy + + Only include the fields you want to update in the request body. All fields + are optional in a PATCH request. + operationId: UpdateFleetSchedule + parameters: + - description: The unique identifier of the schedule to update. + example: abc-def-ghi-123 + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + change_maintenance_window: + summary: Change maintenance window time + value: + data: + attributes: + rule: + days_of_week: + - Mon + - Wed + - Fri + maintenance_window_duration: 240 + start_maintenance_window: '03:00' + timezone: America/New_York + type: schedule + default: + value: + data: + attributes: + status: inactive + type: schedule + pause_schedule: + summary: Pause a schedule + value: + data: + attributes: + status: inactive + type: schedule + update_query: + summary: Update target hosts query + value: + data: + attributes: + query: env:prod AND service:api + type: schedule + schema: + $ref: '#/components/schemas/FleetSchedulePatchRequest' + description: Request payload containing the fields to update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at_unix: 1699999999 + created_by: test@example.com + name: Weekly Production Agent Updates + query: env:prod AND service:web + rule: + days_of_week: + - Mon + - Wed + maintenance_window_duration: 120 + start_maintenance_window: '02:00' + timezone: America/New_York + status: inactive + updated_at_unix: 1699999999 + updated_by: test@example.com + version_to_latest: 0 + id: abc-def-ghi-123 + type: schedule + schema: + $ref: '#/components/schemas/FleetScheduleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a schedule + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/schedules/{id}/trigger: + post: + description: |- + Manually trigger a schedule to immediately create and start a deployment. + + This endpoint allows you to manually initiate a deployment using the schedule's + configuration, without waiting for the next scheduled maintenance window. This is + useful for: + - Testing a schedule before it runs automatically + - Performing an emergency update outside the regular maintenance window + - Creating an ad-hoc deployment with the same settings as a schedule + + The deployment is created immediately with: + - The same filter query as the schedule + - The package version determined by the schedule's version strategy + - All matching hosts as targets + + The manually triggered deployment is independent of the schedule and does not + affect the schedule's normal recurrence pattern. + operationId: TriggerFleetSchedule + parameters: + - description: The unique identifier of the schedule to trigger. + example: abc-def-ghi-123 + in: path + name: id + required: true + schema: + type: string + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + filter_query: env:prod AND service:web + high_level_status: pending + packages: + - name: datadog-agent + version: 7.52.0 + total_hosts: 10 + id: abc-123 + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentResponse' + description: CREATED - Deployment successfully created and started. + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Trigger a schedule deployment + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/fleet/tracers: + get: + description: |- + Retrieve a paginated list of all fleet tracers. + + This endpoint returns telemetry-derived service names from the SDK telemetry pipeline. + These names may differ from span-derived names in APM and are useful for querying + service library configurations. + Use the `page_number` and `page_size` query parameters to paginate through results. + operationId: ListFleetTracers + parameters: + - description: Page number for pagination (starts at 0). + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of results per page (must be greater than 0 and less than or equal to 100). + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Attribute to sort by. + in: query + name: sort_attribute + required: false + schema: + type: string + - description: Sort order (true for descending, false for ascending). + in: query + name: sort_descending + required: false + schema: + default: true + type: boolean + - description: Filter string for narrowing down tracer results. + example: hostname:my-host OR env:prod + in: query + name: filter + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tracers: + - env: production + hostname: my-hostname + language: java + service: test-service + tracer_version: 1.32.0 + id: done + type: status + meta: + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/FleetTracersResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all fleet tracers + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/fleet/agent_versions: + get: + description: |- + Retrieve the list of Datadog Agent versions available for deployment. + + Returns `200` with an empty `data` array if the Agent package exists in the catalog + but has no available versions, and `404` only if the Agent package itself is absent + from the catalog. + operationId: ListFleetAgentVersionsV2 + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + version: 7.80.4 + id: 7.80.4 + type: agent_version + - attributes: + version: 7.81.1 + id: 7.81.1 + type: agent_version + meta: + page: + total_count: 2 + schema: + $ref: '#/components/schemas/FleetAgentVersionsV2Response' + description: OK + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List available Datadog Agent versions + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + /api/v2/fleet/agents: + get: + description: |- + Retrieve a paginated list of Datadog Agents. + + Returns agents with support for pagination, sorting, and filtering. + Use `page_number` and `page_size` to navigate pages, `filter` to narrow by field values, + and `tags` to filter by agent tags. + operationId: ListFleetAgentsV2 + parameters: + - description: Page number for pagination, starting at 0. + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Number of agents to return per page. Maximum value is 100. Defaults to 10. + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Filter string to narrow down agent results. + example: hostname:my-hostname OR env:dev + in: query + name: filter + required: false + schema: + type: string + - description: Comma-separated list of tag keys to select which tags are included in each agent's `tags` attribute. Does not filter which agents are returned. + in: query + name: tags + required: false + schema: + type: string + - description: Agent attribute to sort results by. Must be a supported attribute name; unsupported values return a 400 error. + in: query + name: sort_attribute + required: false + schema: + type: string + - description: Set to `true` to sort results in descending order. Defaults to ascending. + in: query + name: sort_descending + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + agent_version: 7.50.0 + api_key_name: Production API Key + api_key_uuid: a1b2c3d4-e5f6-4321-a123-123456789abc + cloud_provider: aws + datadog_data_center: us1 + enabled_products: + - apm + - logs + env: + - prod + first_seen_at: 1699900000 + fleet_policies: [] + hostname: my-hostname + integrations: + - mysql + ip_addresses: + - 10.0.0.1 + is_single_step_instrumentation_enabled: false + last_restart_at: 1699999999 + os: linux + otel_collector_versions: [] + remote_agent_management: enabled + remote_config_status: connected + services: + - web + tags: + - key: team + value: platform + id: my-agent-hostname + type: agent + meta: + page: + total_count: 500 + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/FleetAgentsV2Response' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all Datadog Agents + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + /api/v2/fleet/agents/{agent_key}: + get: + description: |- + Retrieve detailed information about a specific Datadog Agent. + + By default, only `agent_infos` is returned. Use the `include` query parameter to + request additional data: `integrations` and/or `configuration_files`. + operationId: GetFleetAgentDetailV2 + parameters: + - description: The unique identifier (Agent key) for the Datadog Agent. Must be a 32-character lowercase hexadecimal string. + example: a1b2c3d4e5f67890a1b2c3d4e5f67890 + in: path + name: agent_key + required: true + schema: + pattern: ^[0-9a-f]{32}$ + type: string + - description: Comma-separated list of additional fields to include in the response. Valid values are `integrations` and `configuration_files`. Omitting this parameter returns only `agent_infos`. Unrecognized values are silently ignored rather than causing an error. + example: integrations,configuration_files + in: query + name: include + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + agent_infos: + agent_version: 7.50.0 + datadog_agent_key: a1b2c3d4e5f67890a1b2c3d4e5f67890 + hostname: my-hostname + os: linux + id: a1b2c3d4e5f67890a1b2c3d4e5f67890 + type: agent + schema: + $ref: '#/components/schemas/FleetAgentDetailV2Response' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get detailed information about an agent + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + /api/v2/fleet/deployments: + get: + description: Retrieve a paginated list of all deployments for fleet automation. + operationId: ListFleetDeploymentsV2 + parameters: + - description: Number of deployments to return per page. Maximum value is 100. + in: query + name: page_size + required: false + schema: + default: 10 + format: int64 + maximum: 100 + type: integer + - description: Page number for pagination, starting at 0. + in: query + name: page_number + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: |- + Field to sort results by (for example, `start_date`). Must be a supported field + name; unsupported values return a 400 error. + in: query + name: sort + required: false + schema: + type: string + - description: |- + Set to `true` to sort in ascending order. This setting has no effect unless `sort` is also set. + Defaults to descending order. + in: query + name: ascending + required: false + schema: + type: boolean + - description: |- + Query used to filter deployments. Uses the Datadog query syntax. Filtering on an + unsupported field returns a 400 error. For example: + - `status:failed` or `status:done_with_errors`: deployments that need investigation. + - `status:running`: deployments currently in flight. + - `update_type:update_package` or `update_type:update_config_operations`: deployments of a given type. + example: status:failed + in: query + name: filter + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: alice@datadoghq.com + config_operations: + - file_op: merge-patch + file_path: /datadog.yaml + patch: + logs_enabled: true + duration_seconds: 0 + error_summary: '' + estimated_finished_at: 1699999999 + finished_at: 0 + is_scheduled: true + query: env:prod AND service:web + schedule_id: sched-123 + started_at: 1699990000 + status: running + target_versions: + - 7.52.0 + total_hosts: 10 + update_type: update_config_operations + id: k7Q-3mX-p9Z + type: deployment + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/FleetDeploymentsV2Response' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all deployments + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + /api/v2/fleet/deployments/configure: + post: + description: |- + Create a new deployment to apply configuration changes + to a fleet of hosts matching the specified filter query. + + This endpoint supports two types of configuration operations: + - `merge-patch`: Merges the provided patch data with the existing configuration file, + creating the file if it doesn't exist. + - `delete`: Removes the specified configuration file from the target hosts. + + You can optionally use `target_packages` to apply the configuration change only to specific package versions. + + The deployment is created and started automatically. You can specify multiple configuration + operations to execute in order on each target host. Use the filter query to target + specific hosts using the Datadog query syntax. + + Set `dry_run` to `true` to validate the configuration and resolve target hosts and packages without deploying anything. A dry run returns a 200 with the validation result instead of creating and starting a deployment. + + Returns a 400 if `filter_query` or `config_operations` is missing, a target package is missing a name or version or cannot be resolved, the configuration fails validation, or the filter query does not match any host eligible for the deployment. + operationId: CreateFleetDeploymentConfigureV2 + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config_operations: + - file_op: merge-patch + file_path: /datadog.yaml + patch: + apm_config: + enabled: true + log_level: info + logs_enabled: true + filter_query: env:prod AND datacenter:us-east-1 + type: deployment + dry_run: + summary: Dry run + value: + data: + attributes: + config_operations: + - file_op: merge-patch + file_path: /datadog.yaml + patch: + log_level: info + dry_run: true + filter_query: env:prod AND datacenter:us-east-1 + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentConfigureV2CreateRequest' + description: Request payload containing the deployment details. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: + config_validated: true + non_upgradable_hosts: 0 + query: env:prod AND datacenter:us-east-1 + total_hosts: 42 + id: dry-run + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentConfigureV2DryRunResponse' + description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: alice@datadoghq.com + duration_seconds: 0 + error_summary: '' + estimated_finished_at: 0 + finished_at: 0 + is_scheduled: false + query: env:prod AND datacenter:us-east-1 + started_at: 1699990000 + status: pending + target_versions: [] + update_type: update_config_operations + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentV2CreateResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a configuration deployment + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + - fleet_policies_write + /api/v2/fleet/deployments/upgrade: + post: + description: |- + Create and immediately start a new package upgrade + on hosts matching the specified filter query. + + This endpoint allows you to upgrade the Datadog Agent to a specific version + on hosts matching the specified filter query. + + The deployment is created and started automatically. The system: + 1. Identifies all hosts matching the filter query. + 2. Validates that the specified version is available. + 3. Begins rolling out the package upgrade to the target hosts. + + Returns a 400 if `filter_query` or `target_packages` is missing, a target package is missing a name or version, or the filter query does not match any host eligible for the upgrade. Returns a 409 if a conflicting upgrade is already running on one or more target hosts. + operationId: CreateFleetDeploymentUpgradeV2 + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter_query: env:prod AND service:web + target_packages: + - name: datadog-agent + version: 7.52.0 + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentPackageUpgradeV2CreateRequest' + description: Request payload containing the package upgrade details. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: alice@datadoghq.com + duration_seconds: 0 + error_summary: '' + estimated_finished_at: 0 + finished_at: 0 + is_scheduled: false + query: env:prod AND service:web + started_at: 1699990000 + status: pending + target_versions: + - 7.52.0 + update_type: update_package + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentV2CreateResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Upgrade hosts + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + - fleet_policies_write + /api/v2/fleet/deployments/{deployment_id}: + get: + description: |- + Retrieve detailed information about a specific deployment, including its current status, + configuration operations, and per-host execution status. + + Returns a 404 if no deployment matches the given ID or if you do not have access to it. + operationId: GetFleetDeploymentV2 + parameters: + - description: The unique identifier of the deployment to retrieve. + example: k7Q-3mX-p9Z + in: path + name: deployment_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: carol@datadoghq.com + canceled_hosts: 1 + config_operations: + - file_op: merge-patch + file_path: /datadog.yaml + patch: + logs_enabled: true + duration_seconds: 0 + error_summary: '' + estimated_finished_at: 1699999999 + failed_hosts: 1 + high_level_status: running + hosts: + - hostname: web-01.example.com + running_step: applying_config + status: running + status_details: step 2/3 + versions: + - current_version: 7.50.0 + package_name: datadog-agent + target_version: 7.52.0 + - hostname: web-02.example.com + status: succeeded + versions: + - current_version: 7.52.0 + package_name: datadog-agent + target_version: 7.52.0 + is_scheduled: true + query: env:prod AND service:web + running_hosts: 1 + schedule_id: sched-789 + skipped_hosts: 1 + succeeded_hosts: 1 + target_versions: + - 7.52.0 + total_hosts: 5 + update_type: update_config_operations + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentV2DetailResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a deployment by ID + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - hosts_read + /api/v2/fleet/deployments/{deployment_id}/cancel: + post: + description: |- + Cancel an active deployment and stop all pending operations. + When you cancel a deployment: + - All pending operations on hosts that haven't started yet are stopped. + - Operations currently in progress on hosts may complete or be interrupted, depending on their current status. + - Configuration changes or package upgrades already applied to hosts are not rolled back. + + After cancellation, you can view the final state of the deployment using the GET endpoint to see which hosts + were successfully updated before the cancellation. + + Only deployments with a `pending` or `running` status can be canceled. Returns a 400 if the deployment is not in a cancelable status. Returns a 404 if no deployment matches the specified ID or if you do not have access to it. + operationId: CancelFleetDeploymentV2 + parameters: + - description: The unique identifier of the deployment to cancel. + example: k7Q-3mX-p9Z + in: path + name: deployment_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Cancellation has been requested; the deployment is stopping. + status: stopping + id: k7Q-3mX-p9Z + type: deployment + schema: + $ref: '#/components/schemas/FleetDeploymentV2CancelResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Cancel a deployment + tags: + - Fleet Automation + x-permission: + operator: AND + permissions: + - agent_upgrade_write + - fleet_policies_write + /api/v2/fleet/schedules: + get: + description: |- + Retrieve all upgrade schedules for the organization. + + Schedules automate package upgrades by defining maintenance windows and recurrence rules. + Each schedule automatically creates deployments based on its configuration. + operationId: ListFleetSchedulesV2 + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2023-11-14T22:13:19Z' + created_by: user@example.com + is_default: false + name: Weekly Production Agent Updates + next_run: '2025-01-06T02:00:00Z' + query: env:prod AND service:web + rule: + days_of_week: + - Mon + - Wed + interval: 1 + maintenance_window_duration: 120 + start_maintenance_window: '0200' + timezone: America/New_York + status: active + updated_at: '2023-11-14T22:13:19Z' + updated_by: user@example.com + version_to_latest: 0 + id: abc-def-ghi-123 + type: schedule + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/FleetSchedulesV2Response' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List all schedules + tags: + - Fleet Automation + x-permission: + operator: OR + permissions: + - hosts_read + /api/v2/fleet/schedules/{id}: + get: + description: Retrieve detailed information about a specific schedule by its unique identifier. + operationId: GetFleetScheduleV2 + parameters: + - description: The unique identifier of the schedule to retrieve. + example: abc-def-ghi-123 + in: path + name: id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2023-11-14T22:13:19Z' + created_by: user@example.com + is_default: false + name: Weekly Production Agent Updates + next_run: '2025-01-06T02:00:00Z' + query: env:prod AND service:web + rule: + days_of_week: + - Mon + - Wed + interval: 1 + maintenance_window_duration: 120 + start_maintenance_window: '0200' + timezone: America/New_York + status: active + updated_at: '2023-11-14T22:13:19Z' + updated_by: user@example.com + version_to_latest: 0 + id: abc-def-ghi-123 + type: schedule + schema: + $ref: '#/components/schemas/FleetScheduleV2Response' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a schedule by ID + tags: + - Fleet Automation + x-permission: + operator: OR + permissions: + - hosts_read +components: + schemas: + FleetTracersResponse: + description: Response containing a paginated list of fleet tracers. + properties: + data: + $ref: '#/components/schemas/FleetTracersResponseData' + meta: + $ref: '#/components/schemas/FleetTracersResponseMeta' + required: + - data + type: object + FleetScheduleCreateRequest: + description: Request payload for creating a new schedule. + properties: + data: + $ref: '#/components/schemas/FleetScheduleCreate' + required: + - data + type: object + FleetScheduleResponse: + description: Response containing a single schedule. + properties: + data: + $ref: '#/components/schemas/FleetSchedule' + type: object + FleetSchedulePatchRequest: + description: Request payload for partially updating a schedule. + properties: + data: + $ref: '#/components/schemas/FleetSchedulePatch' + required: + - data + type: object + FleetDeploymentResponse: + description: Response containing a single deployment. + properties: + data: + $ref: '#/components/schemas/FleetDeployment' + meta: + $ref: '#/components/schemas/FleetDeploymentResponseMeta' + type: object + FleetAgentVersionsV2Response: + description: Response containing a list of available Datadog Agent versions. + properties: + data: + description: Array of available agent versions. + items: + $ref: '#/components/schemas/FleetAgentVersionV2' + type: array + meta: + $ref: '#/components/schemas/FleetAgentVersionsV2ResponseMeta' + required: + - data + type: object + FleetAgentsV2Response: + description: Response containing a paginated list of Datadog Agents. + properties: + data: + description: Array of agents matching the query criteria. + items: + $ref: '#/components/schemas/FleetAgentV2' + type: array + meta: + $ref: '#/components/schemas/FleetAgentsV2ResponseMeta' + required: + - data + type: object + FleetAgentDetailV2Response: + description: Response containing detailed information about a specific Datadog Agent. + properties: + data: + $ref: '#/components/schemas/FleetAgentDetailV2' + required: + - data + type: object + FleetDeploymentsV2Response: + description: Response containing a paginated list of deployments. + properties: + data: + description: Array of deployments matching the query criteria. + items: + $ref: '#/components/schemas/FleetDeploymentV2' + type: array + meta: + $ref: '#/components/schemas/FleetDeploymentsV2ResponseMeta' + required: + - data + type: object + FleetDeploymentConfigureV2CreateRequest: + description: Request payload for creating a new v2 configuration deployment. + properties: + data: + $ref: '#/components/schemas/FleetDeploymentConfigureV2Create' + required: + - data + type: object + FleetDeploymentConfigureV2DryRunResponse: + description: Response containing the result of a configuration deployment dry run. + properties: + data: + $ref: '#/components/schemas/FleetDeploymentConfigureV2DryRun' + required: + - data + type: object + FleetDeploymentV2CreateResponse: + description: Response containing the newly created deployment. + properties: + data: + $ref: '#/components/schemas/FleetDeploymentV2' + required: + - data + type: object + FleetDeploymentPackageUpgradeV2CreateRequest: + description: Request payload for creating a new v2 package upgrade deployment. + properties: + data: + $ref: '#/components/schemas/FleetDeploymentPackageUpgradeV2Create' + required: + - data + type: object + FleetDeploymentV2DetailResponse: + description: Response containing detailed information about a single deployment. + properties: + data: + $ref: '#/components/schemas/FleetDeploymentV2Detail' + required: + - data + type: object + FleetDeploymentV2CancelResponse: + description: Response containing the result of a deployment cancellation request. + properties: + data: + $ref: '#/components/schemas/FleetDeploymentV2Cancel' + required: + - data + type: object + FleetSchedulesV2Response: + description: Response containing a list of fleet schedules. + properties: + data: + description: Array of schedules for the organization. + items: + $ref: '#/components/schemas/FleetScheduleV2' + type: array + meta: + $ref: '#/components/schemas/FleetSchedulesV2ResponseMeta' + required: + - data + type: object + FleetScheduleV2Response: + description: Response containing a single fleet schedule. + properties: + data: + $ref: '#/components/schemas/FleetScheduleV2' + required: + - data + type: object + FleetTracersResponseData: + description: The response data containing status and tracers array. + properties: + attributes: + $ref: '#/components/schemas/FleetTracersResponseDataAttributes' + id: + description: Status identifier. + example: done + type: string + type: + description: Resource type. + example: status + type: string + required: + - id + - type + - attributes + type: object + FleetTracersResponseMeta: + description: Metadata for the list of tracers response. + properties: + total_filtered_count: + description: Total number of tracers matching the filter criteria across all pages. + example: 42 + format: int64 + type: integer + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + FleetScheduleCreate: + description: Data for creating a new schedule. + properties: + attributes: + $ref: '#/components/schemas/FleetScheduleCreateAttributes' + type: + $ref: '#/components/schemas/FleetScheduleResourceType' + required: + - type + - attributes + type: object + FleetSchedule: + description: A schedule that automatically creates deployments based on a recurrence rule. + properties: + attributes: + $ref: '#/components/schemas/FleetScheduleAttributes' + id: + description: Unique identifier for the schedule. + example: abc-def-ghi-123 + type: string + type: + $ref: '#/components/schemas/FleetScheduleResourceType' + required: + - id + - type + - attributes + type: object + FleetSchedulePatch: + description: Data for partially updating a schedule. + properties: + attributes: + $ref: '#/components/schemas/FleetSchedulePatchAttributes' + type: + $ref: '#/components/schemas/FleetScheduleResourceType' + required: + - type + type: object + FleetDeployment: + description: A deployment that defines automated configuration changes for a fleet of hosts. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentAttributes' + id: + description: Unique identifier for the deployment. + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - id + - type + - attributes + type: object + FleetDeploymentResponseMeta: + description: Metadata for a single deployment response, including pagination information for hosts. + properties: + hosts: + $ref: '#/components/schemas/FleetDeploymentHostsPage' + type: object + FleetAgentVersionV2: + description: An available Datadog Agent version resource. + properties: + attributes: + $ref: '#/components/schemas/FleetAgentVersionV2Attributes' + id: + description: The agent version string used as the unique identifier. + example: 7.81.1 + type: string + type: + $ref: '#/components/schemas/FleetAgentVersionV2ResourceType' + required: + - id + - type + - attributes + type: object + FleetAgentVersionsV2ResponseMeta: + description: Metadata for the v2 list of agent versions. + properties: + page: + $ref: '#/components/schemas/FleetAgentVersionsV2Page' + type: object + FleetAgentV2: + description: A Datadog Agent resource in the v2 list response. + properties: + attributes: + $ref: '#/components/schemas/FleetAgentV2Attributes' + id: + description: The unique agent key identifier. + example: my-agent-hostname + type: string + type: + $ref: '#/components/schemas/FleetAgentV2ResourceType' + required: + - id + - type + - attributes + type: object + FleetAgentsV2ResponseMeta: + description: Metadata for the v2 list of agents, including pagination information. + properties: + page: + $ref: '#/components/schemas/FleetAgentsV2Page' + type: object + FleetAgentDetailV2: + description: Detailed information about a specific Datadog Agent. + properties: + attributes: + $ref: '#/components/schemas/FleetAgentDetailV2Attributes' + id: + description: The unique agent key identifier. + example: a1b2c3d4e5f67890a1b2c3d4e5f67890 + type: string + type: + $ref: '#/components/schemas/FleetAgentV2ResourceType' + required: + - id + - type + - attributes + type: object + FleetDeploymentV2: + description: A deployment in the v2 API response. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentV2Attributes' + id: + description: Unique identifier for the deployment. + example: k7Q-3mX-p9Z + type: string + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - id + - type + - attributes + type: object + FleetDeploymentsV2ResponseMeta: + description: Metadata for the v2 list of deployments, including pagination information. + properties: + page: + $ref: '#/components/schemas/FleetDeploymentsV2Page' + type: object + FleetDeploymentConfigureV2Create: + description: Data for creating a new v2 configuration deployment. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentConfigureV2Attributes' + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - type + - attributes + type: object + FleetDeploymentConfigureV2DryRun: + description: The result of a configuration deployment dry run. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentConfigureV2DryRunAttributes' + id: + description: |- + Always `"dry-run"` for a dry-run response. Does not identify a real deployment + and cannot be used to fetch a deployment by ID. + example: dry-run + type: string + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - id + - type + - attributes + type: object + FleetDeploymentPackageUpgradeV2Create: + description: Data for creating a new v2 package upgrade deployment. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentPackageUpgradeV2Attributes' + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - type + - attributes + type: object + FleetDeploymentV2Detail: + description: Detailed information about a deployment. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentV2DetailAttributes' + id: + description: Unique identifier for the deployment. + example: k7Q-3mX-p9Z + type: string + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - id + - type + - attributes + type: object + FleetDeploymentV2Cancel: + description: A deployment cancellation response. + properties: + attributes: + $ref: '#/components/schemas/FleetDeploymentV2CancelAttributes' + id: + description: Unique identifier for the deployment. + example: k7Q-3mX-p9Z + type: string + type: + $ref: '#/components/schemas/FleetDeploymentResourceType' + required: + - id + - type + - attributes + type: object + FleetScheduleV2: + description: A fleet upgrade schedule resource in the v2 API response. + properties: + attributes: + $ref: '#/components/schemas/FleetScheduleV2Attributes' + id: + description: Unique identifier for the schedule. + example: abc-def-ghi-123 + type: string + type: + $ref: '#/components/schemas/FleetScheduleResourceType' + required: + - id + - type + - attributes + type: object + FleetSchedulesV2ResponseMeta: + description: Metadata for the v2 list of schedules response. + properties: + page: + $ref: '#/components/schemas/FleetSchedulesV2Page' + type: object + FleetTracersResponseDataAttributes: + description: Attributes of the fleet tracers response containing the list of tracers. + properties: + tracers: + description: Array of tracers matching the query criteria. + items: + $ref: '#/components/schemas/FleetTracerAttributes' + type: array + type: object + FleetScheduleCreateAttributes: + description: Attributes for creating a new schedule. + properties: + name: + description: Human-readable name for the schedule. + example: Weekly Production Agent Updates + type: string + query: + description: Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax. + example: env:prod AND service:web + type: string + rule: + $ref: '#/components/schemas/FleetScheduleRecurrenceRule' + status: + $ref: '#/components/schemas/FleetScheduleStatus' + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version (default) + - 1: Upgrade to latest minus 1 major version + - 2: Upgrade to latest minus 2 major versions + Maximum value is 2. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + required: + - name + - query + - rule + type: object + FleetScheduleResourceType: + default: schedule + description: The type of schedule resource. + enum: + - schedule + example: schedule + type: string + x-enum-varnames: + - SCHEDULE + FleetScheduleAttributes: + description: Attributes of a schedule in the response. + properties: + created_at_unix: + description: Unix timestamp (seconds since epoch) when the schedule was created. + example: 1699999999 + format: int64 + type: integer + created_by: + description: User handle of the person who created the schedule. + example: user@example.com + type: string + name: + description: Human-readable name for the schedule. + example: Weekly Production Agent Updates + type: string + query: + description: Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax. + example: env:prod AND service:web + type: string + rule: + $ref: '#/components/schemas/FleetScheduleRecurrenceRule' + status: + $ref: '#/components/schemas/FleetScheduleStatus' + updated_at_unix: + description: Unix timestamp (seconds since epoch) when the schedule was last updated. + example: 1699999999 + format: int64 + type: integer + updated_by: + description: User handle of the person who last updated the schedule. + example: user@example.com + type: string + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version + - 1: Upgrade to latest minus 1 major version + - 2: Upgrade to latest minus 2 major versions + Maximum value is 2. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + type: object + FleetSchedulePatchAttributes: + description: Attributes for partially updating a schedule. All fields are optional. + properties: + name: + description: Human-readable name for the schedule. + example: Weekly Production Agent Updates + type: string + query: + description: Query used to filter and select target hosts for scheduled deployments. Uses the Datadog query syntax. + example: env:prod AND service:web + type: string + rule: + $ref: '#/components/schemas/FleetScheduleRecurrenceRule' + status: + $ref: '#/components/schemas/FleetScheduleStatus' + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version + - 1: Upgrade to latest minus 1 major version + - 2: Upgrade to latest minus 2 major versions + Maximum value is 2. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + type: object + FleetDeploymentAttributes: + description: Attributes of a deployment in the response. + properties: + config_operations: + description: Ordered list of configuration file operations to perform on the target hosts. + items: + $ref: '#/components/schemas/FleetDeploymentOperation' + type: array + estimated_end_time_unix: + description: Estimated completion time of the deployment as a Unix timestamp (seconds since epoch). + example: 1699999999 + format: int64 + type: integer + filter_query: + description: Query used to filter and select target hosts for the deployment. Uses the Datadog query syntax. + example: env:prod AND service:web + type: string + high_level_status: + description: |- + Current high-level status of the deployment (for example, "pending", "running", + "completed", "failed"). + example: pending + type: string + hosts: + description: |- + Paginated list of hosts in this deployment with their individual statuses. Only included + when fetching a single deployment by ID. Use the `limit` and `page` query parameters to + navigate through pages. Pagination metadata is included in the response `meta.hosts` field. + items: + $ref: '#/components/schemas/FleetDeploymentHost' + type: array + packages: + description: List of packages to deploy to target hosts. Present only for package upgrade deployments. + items: + $ref: '#/components/schemas/FleetDeploymentPackage' + type: array + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + type: object + FleetDeploymentResourceType: + default: deployment + description: The type of deployment resource. + enum: + - deployment + example: deployment + type: string + x-enum-varnames: + - DEPLOYMENT + FleetDeploymentHostsPage: + description: Pagination details for the list of hosts in a deployment. + properties: + current_page: + description: Current page index (zero-based). + example: 0 + format: int64 + type: integer + page_size: + description: Number of hosts returned per page. + example: 50 + format: int64 + type: integer + total_hosts: + description: Total number of hosts in this deployment. + example: 150 + format: int64 + type: integer + total_pages: + description: Total number of pages available. + example: 3 + format: int64 + type: integer + type: object + FleetAgentVersionV2Attributes: + description: Attributes of an available Datadog Agent version. + properties: + version: + description: The agent version string. + example: 7.81.1 + type: string + type: object + FleetAgentVersionV2ResourceType: + default: agent_version + description: The type of the agent version resource. + enum: + - agent_version + example: agent_version + type: string + x-enum-varnames: + - AGENT_VERSION + FleetAgentVersionsV2Page: + description: Pagination details for the v2 list of agent versions. + properties: + total_count: + description: Total number of available agent versions. + example: 10 + format: int64 + type: integer + type: object + FleetAgentV2Attributes: + description: Attributes of a Datadog Agent in the v2 list response. + properties: + agent_version: + description: The Datadog Agent version. + example: 7.50.0 + type: string + api_key_name: + description: The name of the API key used by the agent, if available and not redacted. + example: Production API Key + type: string + api_key_uuid: + description: The UUID of the API key used by the agent. + example: a1b2c3d4-e5f6-4321-a123-123456789abc + type: string + cloud_provider: + description: The cloud provider where the agent is running. + example: aws + type: string + cluster_name: + description: The Kubernetes cluster name, if the agent runs in a cluster. + example: production-us-east-1 + type: string + datadog_data_center: + description: The Datadog data center the agent reports to. + example: us1 + type: string + ecs_fargate_cluster_name: + description: The ECS Fargate cluster name, if the agent runs in an ECS Fargate environment. + example: my-ecs-cluster + type: string + ecs_fargate_task_arn: + description: The ECS Fargate task ARN, if the agent runs in an ECS Fargate environment. + example: arn:aws:ecs:us-east-1:123456789012:task/my-cluster/abc123 + type: string + enabled_products: + description: Datadog products enabled on the agent. + items: + description: A Datadog product enabled on the agent. + type: string + type: array + env: + description: Environments the agent is reporting from. + items: + description: An environment name the agent is reporting from. + type: string + type: array + first_seen_at: + description: Unix timestamp when the agent was first seen. + example: 1699900000 + format: int64 + type: integer + fleet_policies: + description: Identifiers of fleet policies applied to the agent. + items: + description: A fleet policy identifier applied to the agent. + type: string + type: array + hostname: + description: The hostname of the agent. + example: my-hostname + type: string + instrumentation_error_counts: + description: Number of instrumentation errors on the agent. Absent from the response when the count is zero. + example: 3 + format: int64 + type: integer + instrumentation_status: + $ref: '#/components/schemas/FleetAgentV2AttributesInstrumentationStatus' + integrations: + description: Names of integrations configured on the agent. + items: + description: An integration name configured on the agent. + type: string + type: array + ip_addresses: + description: IP addresses of the agent host. + items: + description: An IP address of the agent host. + type: string + type: array + is_single_step_instrumentation_enabled: + description: Whether single-step instrumentation is enabled on the agent. + example: true + type: boolean + last_restart_at: + description: Unix timestamp of the last agent restart. + example: 1699999999 + format: int64 + type: integer + os: + description: The operating system of the host. + example: linux + type: string + otel_collector_deployment_types: + description: OpenTelemetry collector deployment types associated with the agent. + items: + description: An OpenTelemetry collector deployment type. + type: string + type: array + otel_collector_distributions: + description: OpenTelemetry collector distributions associated with the agent. + items: + description: An OpenTelemetry collector distribution. + type: string + type: array + otel_collector_versions: + description: All OpenTelemetry collector versions associated with the agent. + items: + description: An OpenTelemetry collector version string. + type: string + type: array + otel_resource_attributes: + description: OpenTelemetry resource attributes reported by the agent. + items: + description: An OpenTelemetry resource attribute. + type: string + type: array + pod_name: + description: The Kubernetes pod name, if the agent runs as a pod. + example: datadog-agent-abc123 + type: string + remote_agent_management: + description: The remote agent management status. + example: enabled + type: string + remote_config_status: + description: The remote configuration connection status of the agent. + example: connected + type: string + services: + description: Services running on the agent. + items: + description: A service name running on the agent. + type: string + type: array + tags: + description: Tags associated with the agent. Returned as an empty array when the agent has no tags. + items: + $ref: '#/components/schemas/FleetAgentAttributesTagsItems' + type: array + team: + description: The team associated with the agent. + example: platform + type: string + type: object + FleetAgentV2ResourceType: + default: agent + description: The type of the agent resource. + enum: + - agent + example: agent + type: string + x-enum-varnames: + - AGENT + FleetAgentsV2Page: + description: Pagination details for the v2 list of agents. + properties: + total_count: + description: Total number of agents in the fleet, regardless of any filter. + example: 500 + format: int64 + type: integer + total_filtered_count: + description: Total number of agents matching the current filter criteria. + example: 42 + format: int64 + type: integer + type: object + FleetAgentDetailV2Attributes: + description: Attributes for the v2 agent detail response. + properties: + agent_infos: + $ref: '#/components/schemas/FleetAgentInfoDetailsV2' + configuration_files: + $ref: '#/components/schemas/FleetAgentConfigurationFilesV2' + description: Configuration file details, present only when `configuration_files` is included in the `include` query parameter. + integrations: + $ref: '#/components/schemas/FleetIntegrationsByStatusV2' + description: Integration details, present only when `integrations` is included in the `include` query parameter. + required: + - agent_infos + type: object + FleetDeploymentV2Attributes: + description: Attributes of a deployment in the v2 API response. + properties: + author: + description: Handle of the user who triggered the deployment. + example: alice@datadoghq.com + type: string + config_operations: + description: |- + Ordered list of configuration file operations applied by this deployment. + Absent for package deployments, which have no configuration file operations. + items: + $ref: '#/components/schemas/FleetDeploymentOperation' + type: array + duration_seconds: + description: |- + Duration of the deployment in seconds, computed as `finished_at - started_at`. + Zero if the deployment has not finished. + example: 1000 + format: int64 + type: integer + error_summary: + description: Top-level error message for the deployment. Populated only when the deployment has failed. + example: A host failed to update + type: string + estimated_finished_at: + description: Estimated completion time of the deployment as a Unix timestamp. Zero if not available. + example: 1699999999 + format: int64 + type: integer + finished_at: + description: Time the deployment finished as a Unix timestamp. Zero if not yet finished. + example: 0 + format: int64 + type: integer + is_scheduled: + description: Whether this deployment was triggered by a schedule (`schedule_id` is non-empty). + example: true + type: boolean + query: + description: Query used to filter and select target hosts for the deployment. + example: env:prod AND service:web + type: string + schedule_id: + description: Identifier of the schedule that triggered this deployment. Empty if triggered manually. + example: sched-123 + type: string + started_at: + description: Time the deployment started as a Unix timestamp. Zero if not yet started. + example: 1699990000 + format: int64 + type: integer + status: + description: |- + Current high-level status of the deployment (for example, "pending", "running", + "completed", "failed"). + example: pending + type: string + target_versions: + description: Package versions targeted by this deployment. + example: + - 7.52.0 + items: + type: string + type: array + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + update_type: + description: |- + Type of update operation performed by this deployment + (for example, "update_config_operations", "update_package"). + example: update_config_operations + type: string + type: object + FleetDeploymentsV2Page: + description: Pagination details for the v2 list of deployments. + properties: + total_count: + description: Total number of deployments available across all pages. + example: 25 + format: int64 + type: integer + total_filtered_count: + description: Total number of deployments matching the current filter query. + example: 10 + format: int64 + type: integer + type: object + FleetDeploymentConfigureV2Attributes: + description: Attributes for creating a new v2 configuration deployment. + properties: + config_operations: + description: Ordered list of configuration file operations to perform on the target hosts. + items: + $ref: '#/components/schemas/FleetDeploymentOperation' + type: array + dry_run: + description: |- + Set to `true` to validate the configuration and resolve target hosts and packages + without deploying anything. Returns a 200 with the validation result instead of + creating and starting a real deployment. + example: false + type: boolean + filter_query: + description: Query used to filter and select target hosts for the deployment. Uses the Datadog query syntax. + example: env:prod AND service:web + type: string + target_packages: + description: |- + List of packages and their target versions to additionally deploy alongside + the configuration change. + items: + $ref: '#/components/schemas/FleetDeploymentConfigureV2Package' + type: array + required: + - filter_query + - config_operations + type: object + FleetDeploymentConfigureV2DryRunAttributes: + description: Attributes of a configuration deployment dry-run response. + properties: + dry_run: + $ref: '#/components/schemas/FleetDeploymentConfigureV2DryRunResult' + query: + description: Query used to filter and select target hosts for the deployment. + example: env:prod AND service:web + type: string + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + type: object + FleetDeploymentPackageUpgradeV2Attributes: + description: Attributes for creating a new v2 package upgrade deployment. + properties: + filter_query: + description: Query used to filter and select target hosts for the deployment. Uses the Datadog query syntax. + example: env:prod AND service:web + type: string + target_packages: + description: List of packages and their target versions to deploy to the selected hosts. + items: + $ref: '#/components/schemas/FleetDeploymentPackage' + type: array + required: + - filter_query + - target_packages + type: object + FleetDeploymentV2DetailAttributes: + description: Attributes of a deployment detail response. + properties: + author: + description: Handle of the user who triggered the deployment. + example: carol@datadoghq.com + type: string + canceled_hosts: + description: Number of hosts on which the deployment was canceled. + example: 1 + format: int64 + minimum: 0 + type: integer + config_operations: + description: |- + Ordered list of configuration file operations applied by this deployment. + Absent for package deployments, which have no configuration file operations. + items: + $ref: '#/components/schemas/FleetDeploymentOperation' + type: array + duration_seconds: + description: |- + Duration of the deployment in seconds, computed as `finished_at - started_at`. + Zero if the deployment has not finished. + example: 3600 + format: int64 + type: integer + error_summary: + description: Top-level error message for the deployment. Populated only when the deployment has failed. + example: A host failed to update + type: string + estimated_finished_at: + description: Estimated completion time of the deployment as a Unix timestamp. Zero if not available. + example: 1699999999 + format: int64 + type: integer + failed_hosts: + description: Number of hosts on which the deployment failed. + example: 1 + format: int64 + minimum: 0 + type: integer + high_level_status: + description: |- + Current high-level status of the deployment (for example, "pending", "running", + "completed", "failed"). + example: running + type: string + hosts: + description: Per-host status list for this deployment. + items: + $ref: '#/components/schemas/FleetDeploymentV2DetailAgent' + type: array + is_scheduled: + description: Whether this deployment was triggered by a schedule (`schedule_id` is non-empty). + example: true + type: boolean + query: + description: Query used to filter and select target hosts for the deployment. + example: env:prod AND service:web + type: string + running_hosts: + description: Number of hosts on which the deployment is currently running. + example: 1 + format: int64 + minimum: 0 + type: integer + schedule_id: + description: Identifier of the schedule that triggered this deployment. Empty if triggered manually. + example: sched-789 + type: string + skipped_hosts: + description: Number of hosts that were skipped during the deployment. + example: 1 + format: int64 + minimum: 0 + type: integer + succeeded_hosts: + description: Number of hosts on which the deployment succeeded. + example: 1 + format: int64 + minimum: 0 + type: integer + target_versions: + description: Distinct package versions targeted by this deployment, in first-seen order. + example: + - 7.52.0 + items: + type: string + type: array + total_hosts: + description: Total number of hosts targeted by this deployment. + example: 42 + format: int64 + type: integer + update_type: + description: |- + Type of update operation performed by this deployment + (for example, "update_config_operations", "update_package"). + example: update_config_operations + type: string + type: object + FleetDeploymentV2CancelAttributes: + description: Attributes of a deployment cancellation response. + properties: + message: + description: Human-readable message describing the outcome of the cancellation request. + example: Cancellation has been requested; the deployment is stopping. + type: string + status: + description: Status of the deployment after the cancellation request. + example: stopping + type: string + type: object + FleetScheduleV2Attributes: + description: Attributes of a fleet schedule in the v2 API response. + properties: + created_at: + description: RFC3339 timestamp when the schedule was created. + example: '2023-11-14T22:13:19Z' + type: string + created_by: + description: User handle of the person who created the schedule. + example: user@example.com + type: string + is_default: + description: Whether this is the default schedule for the organization. + example: false + type: boolean + name: + description: Human-readable name for the schedule. + example: Weekly Production Agent Updates + type: string + next_run: + description: |- + RFC3339 timestamp of the next scheduled maintenance window start time. + Absent when the next run time cannot be computed. + example: '2025-01-06T02:00:00Z' + type: string + notification_rule: + $ref: '#/components/schemas/FleetScheduleV2NotificationRule' + query: + description: Query used to filter and select target hosts for scheduled deployments. + example: env:prod AND service:web + type: string + rule: + $ref: '#/components/schemas/FleetScheduleV2RecurrenceRule' + status: + $ref: '#/components/schemas/FleetScheduleStatus' + updated_at: + description: RFC3339 timestamp when the schedule was last updated. + example: '2023-11-14T22:13:19Z' + type: string + updated_by: + description: User handle of the person who last updated the schedule. + example: user@example.com + type: string + version_to_latest: + description: |- + Number of major versions behind the latest to target for upgrades. + - 0: Always upgrade to the latest version. + - 1: Upgrade to latest minus 1 major version. + - 2: Upgrade to latest minus 2 major versions. + example: 0 + format: int64 + maximum: 2 + minimum: 0 + type: integer + type: object + FleetSchedulesV2Page: + description: Pagination details for the v2 list of schedules. + properties: + total_count: + description: Total number of schedules returned. + example: 5 + format: int64 + type: integer + type: object + FleetTracerAttributes: + description: Attributes of a fleet tracer representing a service instance reporting telemetry. + properties: + env: + description: The environment the tracer is reporting from. + example: production + type: string + hostname: + description: The hostname where the tracer is running. + example: my-hostname + type: string + language: + description: The programming language of the traced application. + example: java + type: string + language_version: + description: The version of the programming language runtime. + example: 17.0.1 + type: string + remote_config_status: + description: The remote configuration status of the tracer. + example: connected + type: string + runtime_ids: + description: Runtime identifiers for the tracer instances. + items: + description: A runtime identifier for a tracer instance. + type: string + type: array + service: + description: The telemetry-derived service name reported by the tracer. + example: inventory-service + type: string + service_hostname: + description: The service hostname reported by the tracer. + example: my-service-host + type: string + service_version: + description: The version of the traced service. + example: 2.1.0 + type: string + tracer_version: + description: The version of the Datadog tracer library. + example: 1.32.0 + type: string + type: object + FleetScheduleRecurrenceRule: + description: |- + Defines the recurrence pattern for the schedule. Specifies when deployments should be + automatically triggered based on maintenance windows. + properties: + days_of_week: + description: |- + List of days of the week when the schedule should trigger. Valid values are: + "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun". + example: + - Mon + - Wed + - Fri + items: + description: A day of the week (for example, "Mon", "Tue"). + type: string + type: array + maintenance_window_duration: + description: Duration of the maintenance window in minutes. + example: 1200 + format: int64 + type: integer + start_maintenance_window: + description: |- + Start time of the maintenance window in 24-hour clock format (HH:MM). + Deployments will be triggered at this time on the specified days. + example: '02:00' + type: string + timezone: + description: Timezone for the schedule in IANA Time Zone Database format (e.g., "America/New_York", "UTC"). + example: America/New_York + type: string + required: + - days_of_week + - start_maintenance_window + - maintenance_window_duration + - timezone + type: object + FleetScheduleStatus: + description: |- + The status of the schedule. + - `active`: The schedule is active and will create deployments according to its recurrence rule. + - `inactive`: The schedule is inactive and will not create any deployments. + enum: + - active + - inactive + example: active + type: string + x-enum-varnames: + - ACTIVE + - INACTIVE + FleetDeploymentOperation: + description: A single configuration file operation to perform on the target hosts. + properties: + file_op: + $ref: '#/components/schemas/FleetDeploymentFileOp' + file_path: + description: Absolute path to the target configuration file on the host. + example: /datadog.yaml + type: string + patch: + additionalProperties: {} + description: |- + Patch data in JSON format to apply to the configuration file. + When using `merge-patch`, this object is merged with the existing configuration, + allowing you to add, update, or override specific fields without replacing the entire file. + The structure must match the target configuration file format (for example, YAML structure + for Datadog Agent config). Not applicable when using the `delete` operation. + example: + apm_config: + enabled: true + log_level: debug + logs_enabled: true + type: object + required: + - file_op + - file_path + type: object + FleetDeploymentHost: + description: A host that is part of a deployment with its current status. + properties: + error: + description: Error message if the deployment failed on this host. + example: '' + type: string + hostname: + description: The hostname of the agent. + example: web-server-01.example.com + type: string + status: + description: Current deployment status for this specific host. + example: succeeded + type: string + versions: + description: List of packages and their versions currently installed on this host. + items: + $ref: '#/components/schemas/FleetDeploymentHostPackage' + type: array + type: object + FleetDeploymentPackage: + description: A package and its target version for deployment. + properties: + name: + description: The name of the package to deploy. + example: datadog-agent + type: string + version: + description: The target version of the package to deploy. + example: 7.52.0 + type: string + required: + - name + - version + type: object + FleetAgentV2AttributesInstrumentationStatus: + description: The single-step instrumentation status of the Agent. + enum: + - success + - failure + example: success + type: string + x-enum-varnames: + - SUCCESS + - FAILURE + FleetAgentAttributesTagsItems: + description: A key-value pair representing a tag associated with a Datadog Agent. + properties: + key: + description: The tag key. + type: string + value: + description: The tag value. + type: string + type: object + FleetAgentInfoDetailsV2: + description: Detailed information about a Datadog Agent. + properties: + active_ha_agent: + description: The currently active agent in the high-availability group. + type: string + agent_version: + description: The Datadog Agent version. + example: 7.50.0 + type: string + api_key_name: + description: The API key name (if available and not redacted). + example: Production API Key + type: string + api_key_uuid: + description: The API key UUID. + example: a1b2c3d4-e5f6-4321-a123-123456789abc + type: string + cloud_provider: + description: The cloud provider where the agent is running. + example: aws + type: string + cluster_name: + description: Kubernetes cluster name (if applicable). + type: string + config_id: + description: The configuration identifier applied to the agent. + type: string + datadog_agent_key: + description: The unique agent key identifier. + example: a1b2c3d4e5f67890a1b2c3d4e5f67890 + type: string + datadog_data_center: + description: The Datadog data center the agent reports to. + example: us1 + type: string + ecs_fargate_cluster_name: + description: The ECS Fargate cluster name, if the agent runs in an ECS Fargate environment. + example: my-ecs-cluster + type: string + ecs_fargate_task_arn: + description: The ECS Fargate task ARN, if the agent runs in an ECS Fargate environment. + example: arn:aws:ecs:us-east-1:123456789012:task/my-cluster/abc123 + type: string + enabled_products: + description: Datadog products enabled on the agent. + items: + description: A Datadog product enabled on the agent. + type: string + type: array + env: + description: Environments the agent is reporting from. + items: + description: An environment name the agent is reporting from. + type: string + type: array + first_seen_at: + description: Timestamp when the agent was first seen. + format: int64 + type: integer + ha_agent_hosts: + description: Hosts participating in the agent's high-availability group. + items: + description: A hostname participating in the high-availability group. + type: string + type: array + ha_agent_state: + description: The high-availability state of the agent. + type: string + hostname: + description: The hostname of the agent. + example: my-hostname + type: string + hostname_aliases: + description: Alternative hostname list for the agent. + items: + description: An alternative hostname alias for the agent. + type: string + type: array + install_method_installer_version: + description: The version of the installer used. + example: 1.2.3 + type: string + install_method_tool: + description: The tool used to install the agent. + example: chef + type: string + ip_addresses: + description: IP addresses of the agent. + items: + description: An IP address of the agent. + type: string + type: array + is_single_step_instrumentation_enabled: + description: Whether single-step instrumentation is enabled. + type: boolean + last_restart_at: + description: Timestamp of the last agent restart. + format: int64 + type: integer + os: + description: The operating system. + example: linux + type: string + os_version: + description: The operating system version. + example: Ubuntu 20.04 + type: string + otel_collectors: + description: OpenTelemetry collectors associated with the agent (if applicable). + items: + $ref: '#/components/schemas/FleetOtelCollector' + type: array + pod_name: + description: Kubernetes pod name (if applicable). + type: string + preferred_ha_active_agent: + description: The preferred active agent in the high-availability group. + type: string + python_version: + description: The Python version used by the agent. + example: 3.9.5 + type: string + region: + description: Regions where the agent is running. + items: + description: A region where the agent is running. + type: string + type: array + remote_agent_management: + description: Remote agent management status. + example: enabled + type: string + remote_config_status: + description: Remote configuration status. + example: connected + type: string + services: + description: Services running on the agent. + items: + description: A service name running on the agent. + type: string + type: array + support_agent_upgrade: + description: Whether the agent supports remote agent upgrade. + type: boolean + tags: + description: Tags associated with the agent. + items: + description: A tag string assigned to the agent. + type: string + type: array + team: + description: Team associated with the agent. + type: string + type: object + FleetAgentConfigurationFilesV2: + description: Configuration details for an agent, organized by configuration layer. + properties: + agent_configuration: + $ref: '#/components/schemas/FleetConfigurationLayer' + application_monitoring_configuration: + $ref: '#/components/schemas/FleetConfigurationLayer' + otel_collectors_configuration: + description: Configuration for OpenTelemetry collectors associated with the agent. Present only when the agent has associated OpenTelemetry collectors. + items: + $ref: '#/components/schemas/FleetOtelCollectorConfigurationV2' + type: array + security_agent_configuration: + $ref: '#/components/schemas/FleetConfigurationLayer' + system_probe_configuration: + $ref: '#/components/schemas/FleetConfigurationLayer' + type: object + FleetIntegrationsByStatusV2: + description: Integrations organized by their status. + properties: + configuration_files: + description: Configuration files for integrations. + items: + $ref: '#/components/schemas/FleetConfigurationFileV2' + type: array + error_integrations: + description: Integrations with errors. + items: + $ref: '#/components/schemas/FleetIntegrationDetailsV2' + type: array + missing_integrations: + description: Detected but not configured integrations. + items: + $ref: '#/components/schemas/FleetDetectedIntegration' + type: array + warning_integrations: + description: Integrations with warnings. + items: + $ref: '#/components/schemas/FleetIntegrationDetailsV2' + type: array + working_integrations: + description: Integrations that are working correctly. + items: + $ref: '#/components/schemas/FleetIntegrationDetailsV2' + type: array + type: object + FleetDeploymentConfigureV2Package: + description: A package and its target version to additionally deploy alongside a configuration change. + properties: + apm_instrumentation: + description: APM auto-instrumentation mode to enable for this package, if applicable. + example: host + type: string + name: + description: The name of the package to deploy. + example: datadog-agent + type: string + version: + description: The target version of the package to deploy. + example: 7.52.0 + type: string + required: + - name + - version + type: object + FleetDeploymentConfigureV2DryRunResult: + description: Validation result of a configuration deployment dry run. + properties: + config_validated: + description: Whether the configuration passed schema validation. + example: true + type: boolean + non_upgradable_by_reason: + additionalProperties: + format: int64 + type: integer + description: |- + Breakdown of ineligible host counts by reason. Only includes reasons with a + non-zero count. Absent from the response when no targeted host is ineligible. + example: {} + type: object + non_upgradable_hosts: + description: Number of targeted hosts that are not eligible to receive this configuration. + example: 0 + format: int64 + type: integer + type: object + FleetDeploymentV2DetailAgent: + description: Per-host status entry for a deployment. + properties: + error: + description: Error message if the deployment failed on this host. + example: '' + type: string + hostname: + description: Hostname of the agent. + example: web-01.example.com + type: string + running_step: + description: Name of the step currently executing on this host. + example: applying_config + type: string + status: + description: Deployment status for this host (for example, "pending", "running", "succeeded", "failed"). + example: running + type: string + status_details: + description: Additional details about the current deployment status on this host. + example: step 2/3 + type: string + versions: + description: Package version details for this host. + items: + $ref: '#/components/schemas/FleetDeploymentHostPackage' + type: array + type: object + FleetScheduleV2NotificationRule: + description: |- + Notification configuration attached to a schedule. + + Included when available. If the notification rule cannot be retrieved, this field is + omitted and the schedule is still returned. If the notification rule is retrieved but its + handles cannot be resolved, it is still included with an empty `handles` array. + properties: + handles: + description: Notification handles (for example, Slack channels or PagerDuty integrations). + items: + description: A notification handle. + type: string + type: array + tags: + description: Tags associated with the notification rule. + items: + description: A tag string. + type: string + type: array + type: object + FleetScheduleV2RecurrenceRule: + description: Defines the recurrence pattern for the schedule. + properties: + days_of_week: + description: |- + Days of the week when the schedule triggers. Valid values are + "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun". + example: + - Mon + - Wed + - Fri + items: + description: A day of the week (for example, "Mon"). + type: string + type: array + interval: + description: |- + Interval between schedule runs in weeks. 1 means the schedule runs every week + on the specified days. Higher values repeat every N weeks. + example: 1 + format: int64 + type: integer + maintenance_window_duration: + description: Duration of the maintenance window in minutes. + example: 120 + format: int64 + type: integer + start_maintenance_window: + description: |- + Start time of the maintenance window in 24-hour clock format (HHMM). + Deployments are triggered at this time on the specified days. + example: '0200' + type: string + timezone: + description: Timezone in IANA Time Zone Database format. + example: America/New_York + type: string + type: object + FleetDeploymentFileOp: + description: |- + Type of file operation to perform on the target configuration file. + - `merge-patch`: Merges the provided patch data with the existing configuration file. + Creates the file if it doesn't exist. + - `delete`: Removes the specified configuration file from the target hosts. + enum: + - merge-patch + - delete + example: merge-patch + type: string + x-enum-varnames: + - MERGE_PATCH + - DELETE + FleetDeploymentHostPackage: + description: |- + Package version information for a host, showing the initial version before deployment, + the target version to deploy, and the current version on the host. + properties: + current_version: + description: The current version of the package on the host. + example: 7.51.0 + type: string + initial_version: + description: The initial version of the package on the host before the deployment started. + example: 7.51.0 + type: string + package_name: + description: The name of the package. + example: datadog-agent + type: string + target_version: + description: The target version that the deployment is attempting to install. + example: 7.52.0 + type: string + type: object + FleetOtelCollector: + additionalProperties: {} + description: OpenTelemetry collector information. + type: object + FleetConfigurationLayer: + description: Configuration information organized by layers. + properties: + compiled_configuration: + description: The final compiled configuration. + type: string + env_configuration: + description: Configuration from environment variables. + type: string + file_configuration: + description: Configuration from files. + type: string + remote_configuration: + description: Remote configuration settings. + type: string + runtime_configuration: + description: Runtime configuration. + type: string + type: object + FleetOtelCollectorConfigurationV2: + description: Configuration for a single OpenTelemetry collector associated with the agent. + properties: + collector_id: + description: The unique identifier of the OpenTelemetry collector. + type: string + compiled_configuration: + description: The final compiled configuration of the OpenTelemetry collector. + type: string + distribution: + description: The distribution of the OpenTelemetry collector. + type: string + type: object + FleetConfigurationFileV2: + description: A configuration file for an integration. + properties: + agent_hash: + description: Hash of the configuration file as seen by the agent. + type: string + file_content: + description: The raw content of the configuration file. + type: string + file_path: + description: Path to the configuration file. + example: /conf.d/postgres.d/postgres.yaml + type: string + filename: + description: Name of the configuration file. + example: postgres.yaml + type: string + type: object + FleetIntegrationDetailsV2: + description: Detailed information about a single integration. + properties: + data_type: + description: Type of data collected, such as metrics or logs. + example: metrics + type: string + error_messages: + description: Error messages if the integration has issues. + items: + description: An error message describing an issue with the integration. + type: string + type: array + init_config: + description: Initialization configuration (YAML format). + type: string + instance_config: + description: Instance-specific configuration (YAML format). + type: string + is_custom_check: + description: Whether this is a custom integration. + type: boolean + is_default: + description: Whether this is a default integration instance. + type: boolean + is_init: + description: Whether this integration configuration is an init config. + type: boolean + log_config: + description: Log collection configuration (YAML format). + type: string + name: + description: Name of the integration instance. + type: string + pod_count: + description: Number of pods running this integration. Absent from the response when the count is zero. + format: int64 + type: integer + source_index: + description: Index in the configuration file. + format: int64 + type: integer + source_path: + description: Path to the configuration file. + type: string + type: + description: Integration type. + example: postgres + type: string + type: object + FleetDetectedIntegration: + description: An integration detected on the agent but not necessarily configured. + properties: + escaped_name: + description: Escaped integration name. + example: postgresql + type: string + prefix: + description: Integration prefix identifier. + example: postgres + type: string + type: object + responses: + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + UnauthorizedResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unauthorized + ForbiddenResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + NotFoundResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + ConflictResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + x-stackQL-resources: + agent_tracers: + id: datadog.fleet.agent_tracers + name: agent_tracers + title: Agent Tracers + methods: + list_fleet_agent_tracers: + operation: + $ref: '#/paths/~1api~1unstable~1fleet~1agents~1{agent_key}~1tracers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + maxValue: 100 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/agent_tracers/methods/list_fleet_agent_tracers' + insert: [] + update: [] + delete: [] + replace: [] + schedules: + id: datadog.fleet.schedules + name: schedules + title: Schedules + methods: + create_fleet_schedule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1unstable~1fleet~1schedules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_fleet_schedule: + operation: + $ref: '#/paths/~1api~1unstable~1fleet~1schedules~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_fleet_schedule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1unstable~1fleet~1schedules~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + trigger_fleet_schedule: + operation: + $ref: '#/paths/~1api~1unstable~1fleet~1schedules~1{id}~1trigger/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + list_fleet_schedules_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1schedules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_fleet_schedule_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1schedules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/schedules/methods/get_fleet_schedule_v2' + - $ref: '#/components/x-stackQL-resources/schedules/methods/list_fleet_schedules_v2' + insert: + - $ref: '#/components/x-stackQL-resources/schedules/methods/create_fleet_schedule' + update: + - $ref: '#/components/x-stackQL-resources/schedules/methods/update_fleet_schedule' + delete: + - $ref: '#/components/x-stackQL-resources/schedules/methods/delete_fleet_schedule' + replace: [] + tracers: + id: datadog.fleet.tracers + name: tracers + title: Tracers + methods: + list_fleet_tracers: + operation: + $ref: '#/paths/~1api~1unstable~1fleet~1tracers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + maxValue: 100 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tracers/methods/list_fleet_tracers' + insert: [] + update: [] + delete: [] + replace: [] + agent_versions: + id: datadog.fleet.agent_versions + name: agent_versions + title: Agent Versions + methods: + list_fleet_agent_versions_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1agent_versions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/agent_versions/methods/list_fleet_agent_versions_v2' + insert: [] + update: [] + delete: [] + replace: [] + agents: + id: datadog.fleet.agents + name: agents + title: Agents + methods: + list_fleet_agents_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1agents/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + maxValue: 100 + get_fleet_agent_detail_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1agents~1{agent_key}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/agents/methods/get_fleet_agent_detail_v2' + - $ref: '#/components/x-stackQL-resources/agents/methods/list_fleet_agents_v2' + insert: [] + update: [] + delete: [] + replace: [] + deployments: + id: datadog.fleet.deployments + name: deployments + title: Deployments + methods: + list_fleet_deployments_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1deployments/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + maxValue: 100 + create_fleet_deployment_configure_v2: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1fleet~1deployments~1configure/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_fleet_deployment_upgrade_v2: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1fleet~1deployments~1upgrade/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + get_fleet_deployment_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1deployments~1{deployment_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + cancel_fleet_deployment_v2: + operation: + $ref: '#/paths/~1api~1v2~1fleet~1deployments~1{deployment_id}~1cancel/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/deployments/methods/get_fleet_deployment_v2' + - $ref: '#/components/x-stackQL-resources/deployments/methods/list_fleet_deployments_v2' + insert: [] + update: [] + delete: [] + replace: [] +servers: + - url: https://api.{site:.+} + variables: + site: + default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/infrastructure.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/infrastructure.yaml index 15cd6bd..9a90bec 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/infrastructure.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/infrastructure.yaml @@ -6,16 +6,21 @@ info: paths: /api/v2/app-builder/apps: delete: - description: >- - Delete multiple apps in a single request from a list of app IDs. This - API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Delete multiple apps in a single request from a list of app IDs. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: DeleteApps requestBody: content: application/json: + examples: + default: + value: + data: + - id: aea2ed17-b45f-40d0-ba59-c86b7972c901 + type: appDefinitions + - id: f69bb8be-6168-4fe7-a30d-370256b6504a + type: appDefinitions + - id: ab1ed73e-13ad-4426-b0df-a0ff8876a088 + type: appDefinitions schema: $ref: '#/components/schemas/DeleteAppsRequest' required: true @@ -23,6 +28,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions schema: $ref: '#/components/schemas/DeleteAppsResponse' description: OK @@ -54,14 +65,7 @@ paths: permissions: - apps_write get: - description: >- - List all apps, with optional filters and sorting. This endpoint is - paginated. Only basic app information such as the app ID, name, and - description is returned by this endpoint. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: List all apps, with optional filters and sorting. This endpoint is paginated. Only basic app information such as the app ID, name, and description is returned by this endpoint. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: ListApps parameters: - description: The number of apps to return per page. @@ -142,6 +146,23 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: A sample app + favorite: false + name: My App + selfService: false + tags: + - team:webshop + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions + meta: + page: + totalCount: 1 + totalFilteredCount: 1 schema: $ref: '#/components/schemas/ListAppsResponse' description: OK @@ -167,16 +188,22 @@ paths: permissions: - apps_run post: - description: >- - Create a new app, returning the app ID. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Create a new app, returning the app ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: CreateApp requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + name: Example App + queries: [] + rootInstanceName: grid0 + type: appDefinitions schema: $ref: '#/components/schemas/CreateAppRequest' required: true @@ -184,6 +211,12 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions schema: $ref: '#/components/schemas/CreateAppResponse' description: Created @@ -212,11 +245,7 @@ paths: - workflows_run /api/v2/app-builder/apps/{app_id}: delete: - description: >- - Delete a single app. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Delete a single app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: DeleteApp parameters: - description: The ID of the app to delete. @@ -231,6 +260,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000002 + type: appDefinitions schema: $ref: '#/components/schemas/DeleteAppResponse' description: OK @@ -268,12 +303,7 @@ paths: permissions: - apps_write get: - description: >- - Get the full definition of an app. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Get the full definition of an app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: GetApp parameters: - description: The ID of the app to retrieve. @@ -284,12 +314,7 @@ paths: schema: format: uuid type: string - - description: >- - The version number of the app to retrieve. If not specified, the - latest version is returned. Version numbers start at 1 and increment - with each update. The special values `latest` and `deployed` can be - used to retrieve the latest version or the published version, - respectively. + - description: The version number of the app to retrieve. If not specified, the latest version is returned. Version numbers start at 1 and increment with each update. The special values `latest` and `deployed` can be used to retrieve the latest version or the published version, respectively. in: query name: version required: false @@ -299,6 +324,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: A sample app + name: Example App + queries: [] + rootInstanceName: grid0 + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions schema: $ref: '#/components/schemas/GetAppResponse' description: OK @@ -337,12 +374,7 @@ paths: - apps_run - connections_read patch: - description: >- - Update an existing app. This creates a new version of the app. This API - requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Update an existing app. This creates a new version of the app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: UpdateApp parameters: - description: The ID of the app to update. @@ -356,6 +388,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + name: Example App + queries: [] + rootInstanceName: grid0 + id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + type: appDefinitions schema: $ref: '#/components/schemas/UpdateAppRequest' required: true @@ -363,6 +407,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + name: Example App + queries: [] + rootInstanceName: grid0 + id: 00000000-0000-0000-0000-000000000001 + type: appDefinitions schema: $ref: '#/components/schemas/UpdateAppResponse' description: OK @@ -391,15 +447,7 @@ paths: - workflows_run /api/v2/app-builder/apps/{app_id}/deployment: delete: - description: >- - Unpublish an app, removing the live version of the app. Unpublishing - creates a new instance of a `deployment` object on the app, with a nil - `app_version_id` (`00000000-0000-0000-0000-000000000000`). The app can - still be updated and published again in the future. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Unpublish an app, removing the live version of the app. Unpublishing creates a new instance of a `deployment` object on the app, with a nil `app_version_id` (`00000000-0000-0000-0000-000000000000`). The app can still be updated and published again in the future. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: UnpublishApp parameters: - description: The ID of the app to unpublish. @@ -414,6 +462,14 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + app_version_id: 00000000-0000-0000-0000-000000000000 + id: 00000000-0000-0000-0000-000000000001 + type: deployment schema: $ref: '#/components/schemas/UnpublishAppResponse' description: OK @@ -445,15 +501,7 @@ paths: permissions: - apps_write post: - description: >- - Publish an app for use by other users. To ensure the app is accessible - to the correct users, you also need to set a [Restriction - Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on - the app if a policy does not yet exist. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + description: Publish an app for use by other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). operationId: PublishApp parameters: - description: The ID of the app to publish. @@ -468,6 +516,14 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + app_version_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: deployment schema: $ref: '#/components/schemas/PublishAppResponse' description: Created @@ -498,117 +554,1701 @@ paths: operator: OR permissions: - apps_write + /api/v2/app-builder/apps/{app_id}/favorite: + patch: + description: Add or remove an app from the current user's favorites. Favorited apps can be filtered for using the `filter[favorite]` query parameter on the [List Apps](https://docs.datadoghq.com/api/latest/app-builder/#list-apps) endpoint. + operationId: UpdateAppFavorite + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + favorite: true + type: favorites + schema: + $ref: '#/components/schemas/UpdateAppFavoriteRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update App Favorite Status + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_run + /api/v2/app-builder/apps/{app_id}/protection-level: + patch: + description: Update the publication protection level of an app. When set to `approval_required`, future publishes must go through an approval workflow before going live. + operationId: UpdateProtectionLevel + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + protectionLevel: approval_required + type: protectionLevel + schema: + $ref: '#/components/schemas/UpdateAppProtectionLevelRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + favorite: false + name: Example App + queries: [] + rootInstanceName: grid0 + tags: [] + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: appDefinitions + schema: + $ref: '#/components/schemas/UpdateAppResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update App Protection Level + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/publish-request: + post: + description: Create a publish request to ask for approval to publish an app whose protection level is `approval_required`. Publishing happens automatically once the request is approved by a user with the appropriate permissions. + operationId: CreatePublishRequest + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Adds new dashboard widgets and a few bug fixes. + title: Release v1.2 to production + type: publishRequest + schema: + $ref: '#/components/schemas/CreatePublishRequestRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + app_version_id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + meta: + created_at: '2026-04-01T12:00:00Z' + user_name: jane.doe@example.com + user_uuid: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: deployment + schema: + $ref: '#/components/schemas/PublishAppResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Publish Request + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/revert: + post: + description: Revert an app to a previous version. The version to revert to is selected through the `version` query parameter. The reverted version becomes the new latest version of the app. + operationId: RevertApp + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The version number of the app to revert to. Cannot be `latest`. The special value `deployed` can be used to revert to the currently published version. + example: '2' + in: query + name: version + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + description: This is a simple example app + favorite: false + name: Example App + queries: [] + rootInstanceName: grid0 + tags: [] + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: appDefinitions + schema: + $ref: '#/components/schemas/UpdateAppResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Revert App + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/self-service: + patch: + description: Enable or disable self-service for an app. Self-service apps can be discovered and run by users in your organization without explicit access being granted. + operationId: UpdateAppSelfService + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + selfService: true + type: selfService + schema: + $ref: '#/components/schemas/UpdateAppSelfServiceRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update App Self-Service Status + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/tags: + patch: + description: Replace the tags on an app. The provided list overwrites the existing tags entirely; tags not present in the request body are removed. + operationId: UpdateAppTags + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - team:platform + - service:ops + type: tags + schema: + $ref: '#/components/schemas/UpdateAppTagsRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update App Tags + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/version-name: + patch: + description: Assign a human-readable name to a specific version of an app. The version is selected through the `version` query parameter. + operationId: UpdateAppVersionName + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The version number of the app to name. The special values `latest` and `deployed` can also be used to target the latest or currently published version. + example: '3' + in: query + name: version + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: v1.2.0 - bug fix release + type: versionNames + schema: + $ref: '#/components/schemas/UpdateAppVersionNameRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Name App Version + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_write + /api/v2/app-builder/apps/{app_id}/versions: + get: + description: List the versions of an app. This endpoint is paginated. + operationId: ListAppVersions + parameters: + - description: The ID of the app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: app_id + required: true + schema: + format: uuid + type: string + - description: The number of versions to return per page. + in: query + name: limit + required: false + schema: + format: int64 + type: integer + - description: The page number to return. + in: query + name: page + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + app_id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + created_at: '2026-04-01T12:00:00Z' + has_ever_been_published: true + name: v1.2.0 - bug fix release + updated_at: '2026-04-01T12:00:00Z' + user_name: jane.doe@example.com + user_uuid: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + version: 3 + id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + type: appVersions + meta: + page: + totalCount: 1 + schema: + $ref: '#/components/schemas/ListAppVersionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List App Versions + tags: + - App Builder + x-permission: + operator: AND + permissions: + - apps_run + - connections_read + /api/v2/app-builder/blueprint/{blueprint_id}: + get: + description: Retrieve an app blueprint by its ID. + operationId: GetBlueprint + parameters: + - description: The ID of the blueprint to retrieve. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + in: path + name: blueprint_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00Z' + definition: {} + description: Manage your AWS services from Datadog. + name: AWS Service Manager + slug: aws-service-manager + updated_at: '2024-01-01T00:00:00Z' + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: '#/components/schemas/GetBlueprintResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Blueprint + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/blueprints: + get: + description: List available app blueprints. + operationId: ListBlueprints + parameters: + - description: The number of blueprints to return per page. Defaults to 10. Maximum is 100. + in: query + name: limit + required: false + schema: + format: int64 + type: integer + - description: The page of results to return. Starts at 0. + in: query + name: page + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00Z' + description: Manage your AWS services from Datadog. + name: AWS Service Manager + slug: aws-service-manager + updated_at: '2024-01-01T00:00:00Z' + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: '#/components/schemas/ListBlueprintsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Blueprints + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/blueprints/integration-id/{integration_id}: + get: + description: List app blueprints associated with a specific integration ID. + operationId: GetBlueprintsByIntegrationId + parameters: + - description: The integration ID to filter blueprints by. + example: aws + in: path + name: integration_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00Z' + definition: {} + description: Manage your AWS services from Datadog. + integration_id: aws + name: AWS Service Manager + slug: aws-service-manager + updated_at: '2024-01-01T00:00:00Z' + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: '#/components/schemas/GetBlueprintsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Blueprints by Integration ID + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/blueprints/slugs/{slugs}: + get: + description: Retrieve app blueprints by their slugs. + operationId: GetBlueprintsBySlugs + parameters: + - description: A comma-separated list of blueprint slugs. + example: aws-service-manager + in: path + name: slugs + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00Z' + definition: {} + description: Manage your AWS services from Datadog. + name: AWS Service Manager + slug: aws-service-manager + updated_at: '2024-01-01T00:00:00Z' + id: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + type: blueprint + schema: + $ref: '#/components/schemas/GetBlueprintsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Blueprints by Slugs + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_run + - apps_write + - connections_read + - connections_write + /api/v2/app-builder/tags: + get: + description: List all tags associated with the authenticated user's apps. + operationId: ListTags + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: production + type: tag + schema: + $ref: '#/components/schemas/AppBuilderListTagsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Tags + tags: + - App Builder + x-permission: + operator: OR + permissions: + - apps_run + /api/v2/cloudinventoryservice/syncconfigs: + put: + description: Enable Storage Management for an S3 bucket, GCS bucket, or Azure container by registering the destination that holds its inventory reports. Set `data.id` to the cloud provider (`aws`, `gcp`, or `azure`) and provide the matching settings under data.attributes. Calling this endpoint with the same provider replaces the existing configuration. + operationId: UpsertSyncConfig + requestBody: + content: + application/json: + examples: + default: + summary: AWS inventory bucket + value: + data: + attributes: + aws: + aws_account_id: '123456789012' + destination_bucket_name: my-inventory-bucket + destination_bucket_region: us-east-1 + destination_prefix: logs/ + id: aws + type: cloud_provider + schema: + $ref: '#/components/schemas/UpsertCloudInventorySyncConfigRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + aws_account_id: '123456789012' + aws_bucket_name: my-inventory-bucket + aws_region: us-east-1 + id: aws + type: sync_configs + schema: + $ref: '#/components/schemas/CloudInventorySyncConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Enable Storage Management for a bucket + tags: + - Storage Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configurations_manage + /api/v2/cloudinventoryservice/syncconfigs/{id}: + delete: + description: Delete a Storage Management configuration by its unique identifier. Deleting a configuration stops inventory file synchronization for the associated cloud account. + operationId: DeleteSyncConfig + parameters: + - $ref: '#/components/parameters/CloudInventorySyncConfigID' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a Storage Management configuration + tags: + - Storage Management + x-permission: + operator: OR + permissions: + - aws_configurations_manage /api/v2/container_images: get: - description: Get all Container Images for your organization. - operationId: ListContainerImages + description: |- + Get all Container Images for your organization. + **Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https://docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. + operationId: ListContainerImages + parameters: + - description: Comma-separated list of tags to filter Container Images by. + example: short_image:redis,status:running + in: query + name: filter[tags] + required: false + schema: + type: string + - description: Comma-separated list of tags to group Container Images by. + example: registry,image_tags + in: query + name: group_by + required: false + schema: + type: string + - description: Attribute to sort Container Images by. + example: container_count + in: query + name: sort + required: false + schema: + type: string + - description: Maximum number of results returned. + in: query + name: page[size] + required: false + schema: + default: 1000 + format: int32 + maximum: 10000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.pagination.next_cursor`. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + container_count: 1 + image_tags: + - latest + name: nginx + registry: docker.io + repository: library/nginx + short_image: nginx + id: abc-123 + type: container_image + meta: + pagination: + limit: 1000 + total: 1 + type: cursor_limit + schema: + $ref: '#/components/schemas/ContainerImagesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get all Container Images + tags: + - Container Images + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.pagination.next_cursor + limitParam: page[size] + resultsPath: data + x-permission: + operator: OPEN + permissions: [] + /api/v2/containers: + get: + description: Get all containers for your organization. + operationId: ListContainers + parameters: + - description: Comma-separated list of tags to filter containers by. + example: env:prod,short_image:cassandra + in: query + name: filter[tags] + required: false + schema: + type: string + - description: Comma-separated list of tags to group containers by. + example: datacenter,cluster + in: query + name: group_by + required: false + schema: + type: string + - description: Attribute to sort containers by. + example: started_at + in: query + name: sort + required: false + schema: + type: string + - description: Maximum number of results returned. + in: query + name: page[size] + required: false + schema: + default: 1000 + format: int32 + maximum: 10000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.pagination.next_cursor`. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + container_id: abc-123 + host: example-host + image_name: nginx + name: example-container + state: running + id: abc-123 + type: container + meta: + pagination: + limit: 1000 + total: 1 + type: cursor_limit + schema: + $ref: '#/components/schemas/ContainersResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get All Containers + tags: + - Containers + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.pagination.next_cursor + limitParam: page[size] + resultsPath: data + x-permission: + operator: OPEN + permissions: [] + /api/v2/ndm/devices: + get: + description: Get the list of devices. + operationId: ListDevices + parameters: + - $ref: '#/components/parameters/NDMPageSize' + - $ref: '#/components/parameters/NDMPageNumber' + - description: The field to sort the devices by. Defaults to `name`. + example: status + in: query + name: sort + required: false + schema: + default: name + type: string + - description: Filter devices by tag. + example: status:ok + in: query + name: filter[tag] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + device_type: other + integration: snmp + ip_address: 1.2.3.4 + name: example device + status: ok + id: foiwf7rgw38fh + type: device + meta: + page: + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/ListDevicesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the list of devices + tags: + - Network Device Monitoring + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + /api/v2/ndm/devices/{device_id}: + get: + description: Get the device details. + operationId: GetDevice + parameters: + - description: The id of the device to fetch. + example: example:1.2.3.4 + in: path + name: device_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + device_type: other + integration: snmp + ip_address: 1.2.3.4 + model: xx-123 + name: example device + status: ok + vendor: example vendor + id: foiwf7rgw38fh + type: device + schema: + $ref: '#/components/schemas/GetDeviceResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the device details + tags: + - Network Device Monitoring + /api/v2/ndm/interfaces: + get: + description: Get the list of interfaces of the device. + operationId: GetInterfaces + parameters: + - description: The ID of the device to get interfaces from. + example: example:1.2.3.4 + in: query + name: device_id + required: true + schema: + type: string + - description: Whether to get the IP addresses of the interfaces. + example: true + in: query + name: get_ip_addresses + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: a network interface + index: 99 + mac_address: '00:00:00:00:00:00' + name: if0 + status: up + id: foiwf7rgw38fh:99 + type: interface + schema: + $ref: '#/components/schemas/GetInterfacesResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the list of interfaces of the device + tags: + - Network Device Monitoring + /api/v2/ndm/tags/devices/{device_id}: + get: + description: Get the list of tags for a device. + operationId: ListDeviceUserTags parameters: - - description: Comma-separated list of tags to filter Container Images by. - example: short_image:redis,status:running + - description: The id of the device to fetch tags for. + example: example:1.2.3.4 + in: path + name: device_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: foiwf7rgw38fh + type: tags + schema: + $ref: '#/components/schemas/ListTagsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the list of tags for a device + tags: + - Network Device Monitoring + patch: + description: Update the tags for a device. + operationId: UpdateDeviceUserTags + parameters: + - description: The id of the device to update tags for. + example: example:1.2.3.4 + in: path + name: device_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: example:1.2.3.4 + type: tags + schema: + $ref: '#/components/schemas/ListTagsResponse' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: foiwf7rgw38fh + type: tags + schema: + $ref: '#/components/schemas/ListTagsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update the tags for a device + tags: + - Network Device Monitoring + /api/v2/ndm/tags/interfaces/{interface_id}: + get: + description: Returns the tags associated with the specified interface. + operationId: ListInterfaceUserTags + parameters: + - description: The ID of the interface for which to retrieve tags. + example: example:1.2.3.4:1 + in: path + name: interface_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: foiwf7rgw38fh:1 + type: tags + schema: + $ref: '#/components/schemas/ListInterfaceTagsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List tags for an interface + tags: + - Network Device Monitoring + patch: + description: Updates the tags associated with the specified interface. + operationId: UpdateInterfaceUserTags + parameters: + - description: The ID of the interface for which to update tags. + example: example:1.2.3.4:1 + in: path + name: interface_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: example:1.2.3.4:1 + type: tags + schema: + $ref: '#/components/schemas/ListInterfaceTagsResponse' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - tag:test + - tag:testbis + id: foiwf7rgw38fh:1 + type: tags + schema: + $ref: '#/components/schemas/ListInterfaceTagsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update the tags for an interface + tags: + - Network Device Monitoring + /api/v2/network-health-insights: + get: + description: |- + Return network health insights for the organization within the given time window. + Insights are produced by analyzing DNS failures pre-classified by `network-dns-logger`, + TLS certificate metrics, and denied security group connections. Each insight + identifies the client and server services involved, the type of issue, and the + magnitude of the failure observed during the query window. + operationId: ListNetworkHealthInsights + parameters: + - description: |- + Unix timestamp (number of seconds since epoch) of the start of the query window. + If not provided, the start of the query window will be 15 minutes before the `to` timestamp. + If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + example: '1716800000' in: query - name: filter[tags] + name: from required: false schema: type: string - - description: Comma-separated list of tags to group Container Images by. - example: registry,image_tags + - description: |- + Unix timestamp (number of seconds since epoch) of the end of the query window. + If not provided, the end of the query window will be the current time. + If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + example: '1716800900' in: query - name: group_by + name: to required: false schema: type: string - - description: Attribute to sort Container Images by. - example: container_count + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + client_service: network-logger + dns_query: kafka-broker.internal.domain.com + dns_server: cluster-dns + failure_magnitude: 150 + failure_rate: 91 + failure_type: nxdomain + server_service: kafka + total_requests: 1200 + traffic_volume: + bytes_read: 1800000 + bytes_written: 2500000 + total_traffic: 4300000 + type: dns + id: example-insight-id + type: network-health-insights + - attributes: + account_id: '123456789012' + certificate_id: arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f + certificate_lifetime_percent: 96.7 + client_region: us-west-2 + client_service: N/A + days_until_expiration: 3 + domain_name: api.example.com + failure_type: expiring_soon + loadbalancer_id: arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188 + server_region: us-east-1 + server_service: web-frontend + type: tls-cert + id: example-cert-insight-id + type: network-health-insights + - attributes: + client_service: web-frontend + failure_magnitude: 85 + failure_rate: 68.5 + failure_type: denied + server_service: database + total_requests: 124 + type: security-group + id: example-security-group-insight-id + type: network-health-insights + schema: + $ref: '#/components/schemas/NetworkHealthInsightsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List network health insights + tags: + - Network Health Insights + x-permission: + operator: OR + permissions: + - network_health_insights_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/network/connections/aggregate: + get: + description: Get all aggregated connections. + operationId: GetAggregatedConnections + parameters: + - description: Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. in: query - name: sort - required: false + name: from + schema: + format: int64 + type: integer + - description: Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: to + schema: + format: int64 + type: integer + - description: Comma-separated list of fields to group connections by. The maximum number of group_by(s) is 10. + in: query + name: group_by schema: type: string - - description: Maximum number of results returned. + - description: Comma-separated list of tags to filter connections by. in: query - name: page[size] - required: false + name: tags schema: - default: 1000 + type: string + - description: Free-form search query using AND/OR/NOT operators, wildcards, and parentheses. When provided, takes precedence over the `tags` parameter. + example: (client_team:networks OR client_team:platform) AND server_service:hucklebuck + in: query + name: query + schema: + type: string + - description: The number of connections to be returned. The maximum value is 7500. The default is 100. + in: query + name: limit + schema: + default: 100 + format: int32 + maximum: 7500 + minimum: 1 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + bytes_sent_by_client: 100 + bytes_sent_by_server: 200 + packets_sent_by_client: 10 + packets_sent_by_server: 20 + id: abc-123 + type: aggregated_connection + schema: + $ref: '#/components/schemas/SingleAggregatedConnectionResponseArray' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - network_connections_read + summary: Get all aggregated connections + tags: + - Cloud Network Monitoring + x-permission: + operator: OR + permissions: + - network_connections_read + /api/v2/network/dns/aggregate: + get: + description: Get all aggregated DNS traffic. + operationId: GetAggregatedDns + parameters: + - description: Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: from + schema: + format: int64 + type: integer + - description: Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + in: query + name: to + schema: + format: int64 + type: integer + - description: Comma-separated list of fields to group DNS traffic by. The server side defaults to `network.dns_query` if unspecified. `server_ungrouped` may be used if groups are not desired. The maximum number of group_by(s) is 10. + in: query + name: group_by + schema: + type: string + - description: Comma-separated list of tags to filter DNS traffic by. + in: query + name: tags + schema: + type: string + - description: Free-form search query using AND/OR/NOT operators, wildcards, and parentheses. When provided, takes precedence over the `tags` parameter. + example: (client_team:networks OR client_team:platform) AND server_service:hucklebuck + in: query + name: query + schema: + type: string + - description: The number of aggregated DNS entries to be returned. The maximum value is 7500. The default is 100. + in: query + name: limit + schema: + default: 100 format: int32 - maximum: 10000 + maximum: 7500 minimum: 1 type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.pagination.next_cursor`. - in: query - name: page[cursor] - required: false - schema: - type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + group_bys: + - key: client_service + value: test-service + - key: network.dns_query + value: example.com + metrics: + - key: dns_total_requests + value: 100 + id: abc-123 + type: aggregated_dns schema: - $ref: '#/components/schemas/ContainerImagesResponse' + $ref: '#/components/schemas/SingleAggregatedDnsResponseArray' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Get all Container Images + - AuthZ: + - network_connections_read + summary: Get all aggregated DNS traffic tags: - - Container Images - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data + - Cloud Network Monitoring x-permission: - operator: OPEN - permissions: [] - /api/v2/containers: + operator: OR + permissions: + - network_connections_read + /api/v2/processes: get: - description: Get all containers for your organization. - operationId: ListContainers + description: Get all processes for your organization. + operationId: ListProcesses parameters: - - description: Comma-separated list of tags to filter containers by. - example: env:prod,short_image:cassandra + - description: String to search processes by. in: query - name: filter[tags] + name: search required: false schema: type: string - - description: Comma-separated list of tags to group containers by. - example: datacenter,cluster + - description: Comma-separated list of tags to filter processes by. + example: account:prod,user:admin in: query - name: group_by + name: tags required: false schema: type: string - - description: Attribute to sort containers by. - example: started_at + - description: |- + Unix timestamp (number of seconds since epoch) of the start of the query window. + If not provided, the start of the query window will be 15 minutes before the `to` timestamp. If neither + `from` nor `to` are provided, the query window will be `[now - 15m, now]`. in: query - name: sort + name: from required: false schema: - type: string + format: int64 + type: integer + - description: |- + Unix timestamp (number of seconds since epoch) of the end of the query window. + If not provided, the end of the query window will be 15 minutes after the `from` timestamp. If neither + `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + in: query + name: to + required: false + schema: + format: int64 + type: integer - description: Maximum number of results returned. in: query - name: page[size] + name: page[limit] required: false schema: default: 1000 @@ -616,11 +2256,9 @@ paths: maximum: 10000 minimum: 1 type: integer - - description: >- + - description: |- String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.pagination.next_cursor`. + This key is provided with each valid response from the API in `meta.page.after`. in: query name: page[cursor] required: false @@ -630,8 +2268,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + cmdline: /usr/bin/python3 + host: my-host + pid: 123 + id: abc-123 + type: process schema: - $ref: '#/components/schemas/ContainersResponse' + $ref: '#/components/schemas/ProcessSummariesResponse' description: OK '400': content: @@ -651,371 +2299,502 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: [] - summary: Get All Containers + summary: Get all processes tags: - - Containers + - Processes x-pagination: cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] + cursorPath: meta.page.after + limitParam: page[limit] resultsPath: data x-permission: operator: OPEN permissions: [] - /api/v2/ndm/devices: + /api/v2/spa/recommendations/{service}: get: - description: Get the list of devices. - operationId: ListDevices + description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results. + operationId: GetSPARecommendations parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: The field to sort the devices by. - example: status + - description: The recommendation service should not use its metrics cache. in: query - name: sort - required: false + name: bypass_cache schema: type: string - - description: Filter devices by tag. - example: status:ok - in: query - name: filter[tag] - required: false + - description: The service name for a spark job. + in: path + name: service + required: true schema: type: string responses: '200': content: application/json: + example: + data: + attributes: + driver: + estimation: + cpu: + max: 1500 + p75: 1000 + p95: 1200 + ephemeral_storage: 896 + heap: 6144 + memory: 7168 + overhead: 1024 + executor: + estimation: + cpu: + max: 2000 + p75: 1200 + p95: 1500 + ephemeral_storage: 512 + heap: 3072 + memory: 4096 + overhead: 1024 + id: dedupeactivecontexts:adp_dedupeactivecontexts_org2 + type: recommendation schema: - $ref: '#/components/schemas/ListDevicesResponse' + $ref: '#/components/schemas/RecommendationDocument' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of devices + security: + - AuthZ: [] + summary: Get SPA Recommendations tags: - - Network Device Monitoring - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - /api/v2/ndm/devices/{device_id}: + - Spa + x-unstable: '**Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use.' + /api/v2/spa/recommendations/{service}/{shard}: get: - description: Get the device details. - operationId: GetDevice + description: This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. + operationId: GetSPARecommendationsWithShard parameters: - - description: The id of the device to fetch. - example: example:1.2.3.4 + - description: The shard tag for a spark job, which differentiates jobs within the same service that have different resource needs in: path - name: device_id + name: shard required: true schema: type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetDeviceResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the device details - tags: - - Network Device Monitoring - /api/v2/ndm/interfaces: - get: - description: Get the list of interfaces of the device. - operationId: GetInterfaces - parameters: - - description: The ID of the device to get interfaces from. - example: example:1.2.3.4 - in: query - name: device_id + - description: The service name for a spark job + in: path + name: service required: true schema: type: string - - description: Whether to get the IP addresses of the interfaces. - example: true + - description: The recommendation service should not use its metrics cache. in: query - name: get_ip_addresses - required: false + name: bypass_cache schema: - type: boolean + type: string responses: '200': content: application/json: + example: + data: + attributes: + driver: + estimation: + cpu: + max: 1500 + p75: 1000 + p95: 1200 + ephemeral_storage: 896 + heap: 6144 + memory: 7168 + overhead: 1024 + executor: + estimation: + cpu: + max: 2000 + p75: 1200 + p95: 1500 + ephemeral_storage: 512 + heap: 3072 + memory: 4096 + overhead: 1024 + id: dedupeactivecontexts:adp_dedupeactivecontexts_org2 + type: recommendation schema: - $ref: '#/components/schemas/GetInterfacesResponse' + $ref: '#/components/schemas/RecommendationDocument' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of interfaces of the device + security: + - AuthZ: [] + summary: Get SPA Recommendations with a shard parameter tags: - - Network Device Monitoring - /api/v2/ndm/tags/devices/{device_id}: - get: - description: Get the list of tags for a device. - operationId: ListDeviceUserTags + - Spa + x-unstable: '**Note**: This endpoint is in preview and may change in the future. It is not yet recommended for production use.' + /api/v1/host/{host_name}/mute: + post: + description: Mute a host. **Note:** This creates a [Downtime V2](https://docs.datadoghq.com/api/latest/downtimes/#schedule-a-downtime) for the host. + operationId: MuteHost parameters: - - description: The id of the device to fetch tags for. - example: example:1.2.3.4 + - description: Name of the host to mute. in: path - name: device_id + name: host_name required: true schema: type: string + requestBody: + content: + application/json: + examples: + default: + value: + end: 1579098130 + message: Muting this host for a test! + override: false + schema: + $ref: '#/components/schemas/HostMuteSettings' + description: Mute a host request body. + required: true responses: '200': content: application/json: + examples: + default: + value: + action: Muted + end: 1579098130 + hostname: test.host + message: Muting this host for a test! schema: - $ref: '#/components/schemas/ListTagsResponse' + $ref: '#/components/schemas/HostMuteResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid Parameter Error '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of tags for a device + summary: Mute a host tags: - - Network Device Monitoring - patch: - description: Update the tags for a device. - operationId: UpdateDeviceUserTags + - Hosts + x-codegen-request-body-name: body + /api/v1/host/{host_name}/unmute: + post: + description: Unmutes a host. This endpoint takes no JSON arguments. + operationId: UnmuteHost parameters: - - description: The id of the device to update tags for. - example: example:1.2.3.4 + - description: Name of the host to unmute. in: path - name: device_id + name: host_name required: true schema: type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - required: true responses: '200': + content: + application/json: + examples: + default: + value: + action: Unmuted + hostname: test.host + schema: + $ref: '#/components/schemas/HostMuteResponse' + description: OK + '400': content: application/json: schema: - $ref: '#/components/schemas/ListTagsResponse' - description: OK + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid Parameter Error '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update the tags for a device + summary: Unmute a host tags: - - Network Device Monitoring - /api/v2/network/connections/aggregate: + - Hosts + x-codegen-request-body-name: body + /api/v1/hosts: get: - description: Get all aggregated connections. - operationId: GetAggregatedConnections + description: |- + This endpoint allows searching for hosts by name, alias, or tag. + Hosts live within the past 3 hours are included by default. + Retention is 7 days. + Results are paginated with a max of 1000 results at a time. + **Note:** If the host is an Amazon EC2 instance, `id` is replaced with `aws_id` in the response. + **Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https://docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. + operationId: ListHosts parameters: - - description: >- - Unix timestamp (number of seconds since epoch) of the start of the - query window. If not provided, the start of the query window is 15 - minutes before the `to` timestamp. If neither `from` nor `to` are - provided, the query window is `[now - 15m, now]`. + - description: String to filter search results. in: query - name: from + name: filter + required: false + schema: + type: string + - description: Sort hosts by this field. + in: query + name: sort_field + required: false + schema: + type: string + - description: Direction of sort. Options include `asc` and `desc`. + in: query + name: sort_dir + required: false + schema: + type: string + - description: Specify the starting point for the host search results. For example, if you set `count` to 100 and the first 100 results have already been returned, you can set `start` to `101` to get the next 100 results. + in: query + name: start + required: false schema: format: int64 type: integer - - description: >- - Unix timestamp (number of seconds since epoch) of the end of the - query window. If not provided, the end of the query window is the - current time. If neither `from` nor `to` are provided, the query - window is `[now - 15m, now]`. + - description: Number of hosts to return. Max 1000. in: query - name: to + name: count + required: false schema: format: int64 type: integer - - description: >- - Comma-separated list of fields to group connections by. The maximum - number of group_by(s) is 10. + - description: Number of seconds since UNIX epoch from which you want to search your hosts. in: query - name: group_by + name: from + required: false schema: - type: string - - description: Comma-separated list of tags to filter connections by. + format: int64 + type: integer + - description: Include information on the muted status of hosts and when the mute expires. in: query - name: tags + name: include_muted_hosts_data + required: false schema: - type: string - - description: >- - The number of connections to be returned. The maximum value is 7500. - The default is 100. + type: boolean + - description: Include additional metadata about the hosts (agent_version, machine, platform, processor, etc.). in: query - name: limit + name: include_hosts_metadata + required: false schema: - default: 100 - format: int32 - maximum: 7500 - minimum: 1 - type: integer + type: boolean responses: '200': content: application/json: + examples: + default: + value: + host_list: + - apps: + - agent + host_name: i-deadbeef + is_muted: false + last_reported_time: 1565000000 + name: i-hostname + sources: + - aws + up: true + total_matching: 1 + total_returned: 1 schema: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseArray' + $ref: '#/components/schemas/HostListResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid Parameter Error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all aggregated connections + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - hosts_read + summary: Get all hosts for your organization tags: - - Cloud Network Monitoring - /api/v2/network/dns/aggregate: + - Hosts + x-permission: + operator: OR + permissions: + - hosts_read + /api/v1/hosts/totals: get: - description: Get all aggregated DNS traffic. - operationId: GetAggregatedDns + description: |- + This endpoint returns the total number of active and up hosts in your Datadog account. + Active means the host has reported in the past hour, and up means it has reported in the past two hours. + operationId: GetHostTotals parameters: - - description: >- - Unix timestamp (number of seconds since epoch) of the start of the - query window. If not provided, the start of the query window is 15 - minutes before the `to` timestamp. If neither `from` nor `to` are - provided, the query window is `[now - 15m, now]`. + - description: Number of seconds from which you want to get total number of active hosts. in: query name: from + required: false schema: format: int64 type: integer - - description: >- - Unix timestamp (number of seconds since epoch) of the end of the - query window. If not provided, the end of the query window is the - current time. If neither `from` nor `to` are provided, the query - window is `[now - 15m, now]`. - in: query - name: to - schema: - format: int64 - type: integer - - description: >- - Comma-separated list of fields to group DNS traffic by. The server - side defaults to `network.dns_query` if unspecified. - `server_ungrouped` may be used if groups are not desired. The - maximum number of group_by(s) is 10. - in: query - name: group_by - schema: - type: string - - description: Comma-separated list of tags to filter DNS traffic by. - in: query - name: tags - schema: - type: string - - description: >- - The number of aggregated DNS entries to be returned. The maximum - value is 7500. The default is 100. - in: query - name: limit - schema: - default: 100 - format: int32 - maximum: 7500 - minimum: 1 - type: integer responses: '200': content: application/json: + examples: + default: + value: + total_active: 65 + total_up: 42 schema: - $ref: '#/components/schemas/SingleAggregatedDnsResponseArray' + $ref: '#/components/schemas/HostTotals' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid Parameter Error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all aggregated DNS traffic + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - hosts_read + summary: Get the total number of active hosts tags: - - Cloud Network Monitoring - /api/v2/processes: + - Hosts + x-permission: + operator: OR + permissions: + - hosts_read + /api/v1/tags/hosts: get: - description: Get all processes for your organization. - operationId: ListProcesses + description: Returns a mapping of tags to hosts. For each tag, the response returns a list of host names that contain this tag. There is a restriction of 10k total host names from the org that can be attached to tags and returned. + operationId: ListHostTags parameters: - - description: String to search processes by. + - description: Source to filter. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. in: query - name: search + name: source required: false schema: type: string - - description: Comma-separated list of tags to filter processes by. - example: account:prod,user:admin - in: query - name: tags - required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + tags: + environment:production: + - test.metric.host + schema: + $ref: '#/components/schemas/TagToHosts' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get All Host Tags + tags: + - Tags + x-permission: + operator: OPEN + permissions: [] + /api/v1/tags/hosts/{host_name}: + delete: + description: |- + This endpoint allows you to remove all tags + for a single host. If no source is specified, only deletes from the source "User". + operationId: DeleteHostTags + parameters: + - description: Specified host name to delete tags + in: path + name: host_name + required: true schema: type: string - - description: >- - Unix timestamp (number of seconds since epoch) of the start of the - query window. - - If not provided, the start of the query window will be 15 minutes - before the `to` timestamp. If neither - - `from` nor `to` are provided, the query window will be `[now - 15m, - now]`. - in: query - name: from - required: false - schema: - format: int64 - type: integer - - description: >- - Unix timestamp (number of seconds since epoch) of the end of the - query window. - - If not provided, the end of the query window will be 15 minutes - after the `from` timestamp. If neither - - `from` nor `to` are provided, the query window will be `[now - 15m, - now]`. + - description: Source of the tags to be deleted. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. in: query - name: to + name: source required: false schema: - format: int64 - type: integer - - description: Maximum number of results returned. - in: query - name: page[limit] - required: false + type: string + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Remove host tags + tags: + - Tags + get: + description: Return the list of tags that apply to a given host. + operationId: GetHostTags + parameters: + - description: Name of the host to retrieve tags for + in: path + name: host_name + required: true schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.page.after`. + type: string + - description: Source to filter. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. in: query - name: page[cursor] + name: source required: false schema: type: string @@ -1023,104 +2802,157 @@ paths: '200': content: application/json: + examples: + default: + value: + host: test.host + tags: + - environment:production schema: - $ref: '#/components/schemas/ProcessSummariesResponse' + $ref: '#/components/schemas/HostTags' description: OK - '400': + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get all processes + summary: Get Host Tags tags: - - Processes - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/spa/recommendations/{service}/{shard}: - get: - description: >- - Retrieve resource recommendations for a Spark job. The caller (Spark - Gateway or DJM UI) provides a service name and shard identifier, and SPA - returns structured recommendations for driver and executor resources. - operationId: GetSPARecommendations + - Tags + post: + description: |- + This endpoint allows you to add new tags to a host, + optionally specifying what source these tags come from. If tags already exist, appends new tags to the tag list. If no source is specified, defaults to "user". + operationId: CreateHostTags parameters: - - description: >- - The shard tag for a spark job, which differentiates jobs within the - same service that have different resource needs + - description: Specified host name to add new tags in: path - name: shard + name: host_name required: true schema: type: string - - description: The service name for a spark job + - description: Source to add tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. If no source is specified, defaults to "user". + example: chef + in: query + name: source + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - environment:production + schema: + $ref: '#/components/schemas/HostTags' + description: Update host tags request body. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - environment:production + schema: + $ref: '#/components/schemas/HostTags' + description: Created + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add tags to a host + tags: + - Tags + x-codegen-request-body-name: body + put: + description: |- + This endpoint allows you to update/replace all tags in + an integration source with those supplied in the request. + operationId: UpdateHostTags + parameters: + - description: Specified host name to change tags in: path - name: service + name: host_name required: true schema: type: string + - description: Source to update tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. If no source specified, defaults to "user". + in: query + name: source + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + host: test.host + tags: + - environment:production + schema: + $ref: '#/components/schemas/HostTags' + description: Add tags to host + required: true responses: - '200': + '201': content: application/json: - example: - data: - attributes: - driver: - estimation: - cpu: - max: 1500 - p75: 1000 - p95: 1200 - ephemeral_storage: 896 - heap: 6144 - memory: 7168 - overhead: 1024 - executor: - estimation: - cpu: - max: 2000 - p75: 1200 - p95: 1500 - ephemeral_storage: 512 - heap: 3072 - memory: 4096 - overhead: 1024 - id: dedupeactivecontexts:adp_dedupeactivecontexts_org2 - type: recommendation + examples: + default: + value: + host: test.host + tags: + - environment:production schema: - $ref: '#/components/schemas/RecommendationDocument' + $ref: '#/components/schemas/HostTags' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get SPA Recommendations + summary: Update host tags tags: - - Spa - x-unstable: >- - **Note**: This endpoint is in public beta and may change in the future. - It is not yet recommended for production use. + - Tags + x-codegen-request-body-name: body components: schemas: DeleteAppsRequest: @@ -1243,9 +3075,7 @@ components: $ref: '#/components/schemas/CreateAppRequestData' type: object CreateAppResponse: - description: >- - The response object after a new app is successfully created, with the - app ID. + description: The response object after a new app is successfully created, with the app ID. properties: data: $ref: '#/components/schemas/CreateAppResponseData' @@ -1343,6 +3173,135 @@ components: data: $ref: '#/components/schemas/Deployment' type: object + UpdateAppFavoriteRequest: + description: A request to add or remove an app from the current user's favorites. + example: + data: + attributes: + favorite: true + type: favorites + properties: + data: + $ref: '#/components/schemas/UpdateAppFavoriteRequestData' + type: object + UpdateAppProtectionLevelRequest: + description: A request to update an app's publication protection level. + example: + data: + attributes: + protectionLevel: approval_required + type: protectionLevel + properties: + data: + $ref: '#/components/schemas/UpdateAppProtectionLevelRequestData' + type: object + CreatePublishRequestRequest: + description: A request to ask for approval to publish an app whose protection level is `approval_required`. + example: + data: + attributes: + description: Adds new dashboard widgets and a few bug fixes. + title: Release v1.2 to production + type: publishRequest + properties: + data: + $ref: '#/components/schemas/CreatePublishRequestRequestData' + type: object + UpdateAppSelfServiceRequest: + description: A request to enable or disable self-service for an app. + example: + data: + attributes: + selfService: true + type: selfService + properties: + data: + $ref: '#/components/schemas/UpdateAppSelfServiceRequestData' + type: object + UpdateAppTagsRequest: + description: A request to replace the tags on an app. + example: + data: + attributes: + tags: + - team:platform + - service:ops + type: tags + properties: + data: + $ref: '#/components/schemas/UpdateAppTagsRequestData' + type: object + UpdateAppVersionNameRequest: + description: A request to assign a human-readable name to a specific app version. + example: + data: + attributes: + name: v1.2.0 - bug fix release + type: versionNames + properties: + data: + $ref: '#/components/schemas/UpdateAppVersionNameRequestData' + type: object + ListAppVersionsResponse: + description: A paginated list of versions for an app. + properties: + data: + description: The list of app versions. + items: + $ref: '#/components/schemas/AppVersion' + type: array + meta: + $ref: '#/components/schemas/ListAppsResponseMeta' + type: object + GetBlueprintResponse: + description: The response for retrieving a single blueprint. + properties: + data: + $ref: '#/components/schemas/BlueprintData' + type: object + ListBlueprintsResponse: + description: The response for listing available blueprints. + properties: + data: + description: An array of blueprint metadata. + items: + $ref: '#/components/schemas/BlueprintMetadataData' + type: array + type: object + GetBlueprintsResponse: + description: The response for retrieving multiple blueprints. + properties: + data: + description: An array of blueprints. + items: + $ref: '#/components/schemas/BlueprintData' + type: array + type: object + AppBuilderListTagsResponse: + description: The response for listing tags associated with apps. + properties: + data: + description: An array of tags. + items: + $ref: '#/components/schemas/TagData' + type: array + type: object + UpsertCloudInventorySyncConfigRequest: + description: Request body for creating or updating a cloud inventory sync configuration. + properties: + data: + $ref: '#/components/schemas/UpsertCloudInventorySyncConfigRequestData' + required: + - data + type: object + CloudInventorySyncConfigResponse: + description: Storage Management configuration returned after a create or update. Additional read-only fields appear on list and get responses. + properties: + data: + $ref: '#/components/schemas/CloudInventorySyncConfigResponseData' + required: + - data + type: object ContainerImagesResponse: description: List of Container Images. properties: @@ -1416,6 +3375,23 @@ components: data: $ref: '#/components/schemas/ListTagsResponseData' type: object + ListInterfaceTagsResponse: + description: Response for listing interface tags. + properties: + data: + $ref: '#/components/schemas/ListInterfaceTagsResponseData' + type: object + NetworkHealthInsightsResponse: + description: Response containing a list of network health insights for the organization. + properties: + data: + description: Array of network health insights returned for the query window. + items: + $ref: '#/components/schemas/NetworkHealthInsight' + type: array + required: + - data + type: object SingleAggregatedConnectionResponseArray: description: List of aggregated connections. example: @@ -1432,10 +3408,16 @@ components: packets_sent_by_server: 20 rtt_micro_seconds: 800 tcp_closed_connections: 30 + tcp_delivered_ce: 12 tcp_established_connections: 40 + tcp_probe0_count: 2 + tcp_rcv_ooo_pack: 15 + tcp_recovery_count: 8 tcp_refusals: 7 + tcp_reord_seen: 4 tcp_resets: 5 tcp_retransmits: 30 + tcp_rto_count: 3 tcp_timeouts: 6 id: client_team:networks, server_service:hucklebuck type: aggregated_connection @@ -1498,15 +3480,126 @@ components: $ref: '#/components/schemas/ProcessSummariesMeta' type: object RecommendationDocument: - description: >- - JSON:API document containing a single Recommendation resource. Returned - by SPA when the Spark Gateway requests recommendations. + description: JSON:API document containing a single Recommendation resource. Returned by SPA when the Spark Gateway requests recommendations. properties: data: $ref: '#/components/schemas/RecommendationData' required: - data type: object + HostMuteSettings: + description: Combination of settings to mute a host. + properties: + end: + description: POSIX timestamp in seconds when the host is unmuted. If omitted, the host remains muted until explicitly unmuted. + example: 1579098130 + format: int64 + type: integer + message: + description: Message to associate with the muting of this host. + example: Muting this host for a test! + type: string + override: + description: If true and the host is already muted, replaces existing host mute settings. + example: false + type: boolean + type: object + HostMuteResponse: + description: Response with the list of muted host for your organization. + properties: + action: + description: Action applied to the hosts. + example: Muted + type: string + end: + description: POSIX timestamp in seconds when the host is unmuted. + example: 1579098130 + format: int64 + type: integer + hostname: + description: The host name. + example: test.host + type: string + message: + description: Message associated with the mute. + example: Muting this host for a test! + type: string + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + HostListResponse: + description: Response with Host information from Datadog. + properties: + host_list: + description: Array of hosts. + items: + $ref: '#/components/schemas/Host' + type: array + total_matching: + description: Number of host matching the query. + example: 1 + format: int64 + type: integer + total_returned: + description: Number of host returned. + example: 1 + format: int64 + type: integer + type: object + HostTotals: + description: Total number of host currently monitored by Datadog. + properties: + total_active: + description: Total number of active host (UP and ???) reporting to Datadog. + format: int64 + type: integer + total_up: + description: Number of host that are UP and reporting to Datadog. + format: int64 + type: integer + type: object + TagToHosts: + description: In this object, the key is the tag, and the value is a list of host names that are reporting that tag. + properties: + tags: + additionalProperties: + description: A list of host names which contain this tag + items: + description: A given tag in a list. + example: test.metric.host + type: string + type: array + description: A mapping of tags to host names + type: object + type: object + HostTags: + description: Host name and an array of its tags + properties: + host: + description: Your host name. + example: test.host + type: string + tags: + description: A list of tags associated with a host. + items: + description: A given tag in a list. + example: environment:production + type: string + type: array + type: object DeleteAppsRequestDataItems: description: An object containing the ID of an app to delete. properties: @@ -1539,9 +3632,7 @@ components: description: API error response body properties: detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. + description: A human-readable explanation specific to this occurrence of the error. example: Missing required attribute in body type: string meta: @@ -1560,9 +3651,7 @@ components: type: string type: object ListAppsResponseDataItems: - description: >- - An app definition object. This contains only basic information about the - app such as ID, name, and tags. + description: An app definition object. This contains only basic information about the app such as ID, name, and tags. properties: attributes: $ref: '#/components/schemas/ListAppsResponseDataItemsAttributes' @@ -1678,10 +3767,7 @@ components: format: date-time type: string updated_since_deployment: - description: >- - Whether the app was updated since it was last published. Published - apps are pinned to a specific version and do not automatically - update when the app is updated. + description: Whether the app was updated since it was last published. Published apps are pinned to a specific version and do not automatically update when the app is updated. type: boolean user_id: description: The ID of the user who created the app. @@ -1696,9 +3782,7 @@ components: format: uuid type: string version: - description: >- - The version number of the app. This starts at 1 and increments with - each update. + description: The version number of the app. This starts at 1 and increments with each update. format: int64 type: integer type: object @@ -1714,36 +3798,170 @@ components: $ref: '#/components/schemas/DeploymentRelationship' type: object UpdateAppRequestData: - description: >- - The data object containing the new app definition. Any fields not - included in the request remain unchanged. + description: The data object containing the new app definition. Any fields not included in the request remain unchanged. properties: attributes: $ref: '#/components/schemas/UpdateAppRequestDataAttributes' id: - description: >- - The ID of the app to update. The app ID must match the ID in the URL - path. + description: The ID of the app to update. The app ID must match the ID in the URL path. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: '#/components/schemas/AppDefinitionType' + required: + - type + type: object + UpdateAppResponseData: + description: The data object containing the updated app definition. + properties: + attributes: + $ref: '#/components/schemas/UpdateAppResponseDataAttributes' + id: + description: The ID of the updated app. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: '#/components/schemas/AppDefinitionType' + required: + - id + - type + - attributes + type: object + UpdateAppFavoriteRequestData: + description: Data for updating an app's favorite status. + properties: + attributes: + $ref: '#/components/schemas/UpdateAppFavoriteRequestDataAttributes' + type: + $ref: '#/components/schemas/AppFavoriteType' + type: object + UpdateAppProtectionLevelRequestData: + description: Data for updating an app's publication protection level. + properties: + attributes: + $ref: '#/components/schemas/UpdateAppProtectionLevelRequestDataAttributes' + type: + $ref: '#/components/schemas/AppProtectionLevelType' + type: object + CreatePublishRequestRequestData: + description: Data for creating a publish request. + properties: + attributes: + $ref: '#/components/schemas/CreatePublishRequestRequestDataAttributes' + type: + $ref: '#/components/schemas/PublishRequestType' + type: object + UpdateAppSelfServiceRequestData: + description: Data for updating an app's self-service status. + properties: + attributes: + $ref: '#/components/schemas/UpdateAppSelfServiceRequestDataAttributes' + type: + $ref: '#/components/schemas/AppSelfServiceType' + type: object + UpdateAppTagsRequestData: + description: Data for replacing an app's tags. + properties: + attributes: + $ref: '#/components/schemas/UpdateAppTagsRequestDataAttributes' + type: + $ref: '#/components/schemas/AppTagsType' + type: object + UpdateAppVersionNameRequestData: + description: Data for naming a specific app version. + properties: + attributes: + $ref: '#/components/schemas/UpdateAppVersionNameRequestDataAttributes' + type: + $ref: '#/components/schemas/AppVersionNameType' + type: object + AppVersion: + description: A version of an app. + properties: + attributes: + $ref: '#/components/schemas/AppVersionAttributes' + id: + description: The ID of the app version. + example: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 + format: uuid + type: string + type: + $ref: '#/components/schemas/AppVersionType' + type: object + BlueprintData: + description: A blueprint resource. + properties: + attributes: + $ref: '#/components/schemas/BlueprintAttributes' + id: + description: The ID of the blueprint. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + type: + $ref: '#/components/schemas/BlueprintDataType' + required: + - id + - type + - attributes + type: object + BlueprintMetadataData: + description: A blueprint metadata resource. + properties: + attributes: + $ref: '#/components/schemas/BlueprintMetadataAttributes' + id: + description: The ID of the blueprint. example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 format: uuid type: string type: - $ref: '#/components/schemas/AppDefinitionType' + $ref: '#/components/schemas/BlueprintDataType' required: + - id - type + - attributes type: object - UpdateAppResponseData: - description: The data object containing the updated app definition. + TagData: + description: A tag resource associated with an app. + properties: + id: + description: The name of the tag. + example: production + type: string + type: + $ref: '#/components/schemas/TagDataType' + required: + - id + - type + type: object + UpsertCloudInventorySyncConfigRequestData: + description: Storage Management configuration data for the create or update request. properties: attributes: - $ref: '#/components/schemas/UpdateAppResponseDataAttributes' + $ref: '#/components/schemas/UpsertCloudInventorySyncConfigRequestAttributes' id: - description: The ID of the updated app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid + $ref: '#/components/schemas/CloudInventoryCloudProviderId' + type: + $ref: '#/components/schemas/CloudInventoryCloudProviderRequestType' + required: + - type + - id + - attributes + type: object + CloudInventorySyncConfigResponseData: + description: Storage Management configuration data. + properties: + attributes: + $ref: '#/components/schemas/CloudInventorySyncConfigAttributes' + id: + description: Unique identifier for this Storage Management configuration. + example: abc123 type: string type: - $ref: '#/components/schemas/AppDefinitionType' + $ref: '#/components/schemas/CloudInventorySyncConfigResourceType' required: - id - type @@ -1751,9 +3969,17 @@ components: type: object ContainerImageItem: description: Possible Container Image models. - oneOf: - - $ref: '#/components/schemas/ContainerImage' - - $ref: '#/components/schemas/ContainerImageGroup' + properties: + attributes: + $ref: '#/components/schemas/ContainerImageAttributes' + id: + description: Container Image ID. + type: string + type: + $ref: '#/components/schemas/ContainerImageType' + relationships: + $ref: '#/components/schemas/ContainerImageGroupRelationships' + type: object ContainerImagesResponseLinks: description: Pagination links. properties: @@ -1784,9 +4010,17 @@ components: type: object ContainerItem: description: Possible Container models. - oneOf: - - $ref: '#/components/schemas/Container' - - $ref: '#/components/schemas/ContainerGroup' + properties: + attributes: + $ref: '#/components/schemas/ContainerAttributes' + id: + description: Container ID. + type: string + type: + $ref: '#/components/schemas/ContainerType' + relationships: + $ref: '#/components/schemas/ContainerGroupRelationships' + type: object ContainersResponseLinks: description: Pagination links. properties: @@ -1873,16 +4107,42 @@ components: description: The type of the resource. The value should always be tags. type: string type: object + ListInterfaceTagsResponseData: + description: Response data for listing interface tags. + properties: + attributes: + $ref: '#/components/schemas/ListTagsResponseDataAttributes' + id: + description: The interface ID + example: example:1.2.3.4:1 + type: string + type: + description: The type of the resource. The value should always be tags. + type: string + type: object + NetworkHealthInsight: + description: A single network health insight describing a service-to-service connectivity issue. + properties: + attributes: + $ref: '#/components/schemas/NetworkHealthInsightAttributes' + id: + description: Unique identifier for this network health insight. + example: example-insight-id + type: string + type: + $ref: '#/components/schemas/NetworkHealthInsightsType' + required: + - type + - id + - attributes + type: object SingleAggregatedConnectionResponseData: description: Object describing an aggregated connection. properties: attributes: - $ref: >- - #/components/schemas/SingleAggregatedConnectionResponseDataAttributes + $ref: '#/components/schemas/SingleAggregatedConnectionResponseDataAttributes' id: - description: >- - A unique identifier for the aggregated connection based on the group - by values. + description: A unique identifier for the aggregated connection based on the group by values. type: string type: $ref: '#/components/schemas/SingleAggregatedConnectionResponseDataType' @@ -1893,9 +4153,7 @@ components: attributes: $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributes' id: - description: >- - A unique identifier for the aggregated DNS traffic based on the - group by values. + description: A unique identifier for the aggregated DNS traffic based on the group by values. type: string type: $ref: '#/components/schemas/SingleAggregatedDnsResponseDataType' @@ -1918,9 +4176,7 @@ components: $ref: '#/components/schemas/ProcessSummariesMetaPage' type: object RecommendationData: - description: >- - JSON:API resource object for SPA Recommendation. Includes type, optional - ID, and resource attributes with structured recommendations. + description: JSON:API resource object for SPA Recommendation. Includes type, optional ID, and resource attributes with structured recommendations. properties: attributes: $ref: '#/components/schemas/RecommendationAttributes' @@ -1933,6 +4189,80 @@ components: - type - attributes type: object + Host: + description: Object representing a host. + properties: + aliases: + description: Host aliases collected by Datadog. + items: + description: A host alias. + example: mycoolhost-1 + type: string + type: array + apps: + description: The Datadog integrations reporting metrics for the host. + items: + description: Name of an app. + example: agent + type: string + type: array + aws_name: + description: AWS name of your host. + example: mycoolhost-1 + type: string + host_name: + description: The host name. + example: i-deadbeef + type: string + id: + description: The host ID. + example: 123456 + format: int64 + type: integer + is_muted: + description: If a host is muted or unmuted. + example: false + type: boolean + last_reported_time: + description: Last time the host reported a metric data point. + example: 1565000000 + format: int64 + type: integer + meta: + $ref: '#/components/schemas/HostMeta' + metrics: + $ref: '#/components/schemas/HostMetrics' + mute_timeout: + description: Timeout of the mute applied to your host. + format: int64 + nullable: true + type: integer + name: + description: The host name. + example: i-hostname + type: string + sources: + description: Source or cloud provider associated with your host. + items: + description: A source or cloud provider name. + example: aws + type: string + type: array + tags_by_source: + additionalProperties: + description: Array of tags for a single source. + items: + description: A tag. + example: test.example.com.host + type: string + type: array + description: List of tags for each source (AWS, Datadog Agent, Chef..). + type: object + up: + description: Displays UP when the expected metrics are received and displays `???` if no metrics are received. + example: true + type: boolean + type: object AppDefinitionType: default: appDefinitions description: The app definition type. @@ -1946,9 +4276,7 @@ components: description: References to the source of the error. properties: header: - description: >- - A string indicating the name of a single request header which caused - the error. + description: A string indicating the name of a single request header which caused the error. example: Authorization type: string parameter: @@ -1956,9 +4284,7 @@ components: example: limit type: string pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. + description: A JSON pointer to the value in the request document that caused the error. example: /data/attributes/title type: string type: object @@ -1997,10 +4323,7 @@ components: description: The attributes object containing the version ID of the published app. properties: app_version_id: - description: >- - The version ID of the app that was published. For an unpublished - app, this is always the nil UUID - (`00000000-0000-0000-0000-000000000000`). + description: The version ID of the app that was published. For an unpublished app, this is always the nil UUID (`00000000-0000-0000-0000-000000000000`). example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 format: uuid type: string @@ -2038,9 +4361,7 @@ components: description: Information on the total number of apps, to be used for pagination. properties: totalCount: - description: >- - The total number of apps under the Datadog organization, - disregarding any filters applied. + description: The total number of apps under the Datadog organization, disregarding any filters applied. format: int64 type: integer totalFilteredCount: @@ -2063,16 +4384,12 @@ components: description: The name of the app. type: string queries: - description: >- - An array of queries, such as external actions and state variables, - that the app uses. + description: An array of queries, such as external actions and state variables, that the app uses. items: $ref: '#/components/schemas/Query' type: array rootInstanceName: - description: >- - The name of the root component of the app. This must be a `grid` - component that contains all other components. + description: The name of the root component of the app. This must be a `grid` component that contains all other components. type: string tags: description: A list of tags for the app, which can be used to filter apps. @@ -2085,9 +4402,7 @@ components: type: array type: object GetAppResponseDataAttributes: - description: >- - The app definition attributes, such as name, description, and - components. + description: The app definition attributes, such as name, description, and components. properties: components: description: The UI components that make up the app. @@ -2104,16 +4419,12 @@ components: description: The name of the app. type: string queries: - description: >- - An array of queries, such as external actions and state variables, - that the app uses. + description: An array of queries, such as external actions and state variables, that the app uses. items: $ref: '#/components/schemas/Query' type: array rootInstanceName: - description: >- - The name of the root component of the app. This must be a `grid` - component that contains all other components. + description: The name of the root component of the app. This must be a `grid` component that contains all other components. type: string tags: description: A list of tags for the app, which can be used to filter apps. @@ -2147,15 +4458,10 @@ components: $ref: '#/components/schemas/DeploymentMetadata' type: object UpdateAppRequestDataAttributes: - description: >- - App definition attributes to be updated, such as name, description, and - components. + description: App definition attributes to be updated, such as name, description, and components. properties: components: - description: >- - The new UI components that make up the app. If this field is set, - all existing components are replaced with the new components under - this field. + description: The new UI components that make up the app. If this field is set, all existing components are replaced with the new components under this field. items: $ref: '#/components/schemas/ComponentGrid' type: array @@ -2166,23 +4472,50 @@ components: description: The new name of the app. type: string queries: - description: >- - The new array of queries, such as external actions and state - variables, that the app uses. If this field is set, all existing - queries are replaced with the new queries under this field. + description: The new array of queries, such as external actions and state variables, that the app uses. If this field is set, all existing queries are replaced with the new queries under this field. + items: + $ref: '#/components/schemas/Query' + type: array + rootInstanceName: + description: The new name of the root component of the app. This must be a `grid` component that contains all other components. + type: string + tags: + description: The new list of tags for the app, which can be used to filter apps. If this field is set, any existing tags not included in the request are removed. + example: + - service:webshop-backend + - team:webshop + items: + description: An individual tag for the app. + type: string + type: array + type: object + UpdateAppResponseDataAttributes: + description: The updated app definition attributes, such as name, description, and components. + properties: + components: + description: The UI components that make up the app. + items: + $ref: '#/components/schemas/ComponentGrid' + type: array + description: + description: The human-readable description for the app. + type: string + favorite: + description: Whether the app is marked as a favorite by the current user. + type: boolean + name: + description: The name of the app. + type: string + queries: + description: An array of queries, such as external actions and state variables, that the app uses. items: $ref: '#/components/schemas/Query' type: array rootInstanceName: - description: >- - The new name of the root component of the app. This must be a `grid` - component that contains all other components. + description: The name of the root component of the app. This must be a `grid` component that contains all other components. type: string tags: - description: >- - The new list of tags for the app, which can be used to filter apps. - If this field is set, any existing tags not included in the request - are removed. + description: A list of tags for the app, which can be used to filter apps. example: - service:webshop-backend - team:webshop @@ -2191,47 +4524,418 @@ components: type: string type: array type: object - UpdateAppResponseDataAttributes: - description: >- - The updated app definition attributes, such as name, description, and - components. + UpdateAppFavoriteRequestDataAttributes: + description: Attributes for updating an app's favorite status. + properties: + favorite: + description: Whether the app should be marked as a favorite for the current user. + example: true + type: boolean + required: + - favorite + type: object + AppFavoriteType: + default: favorites + description: The favorite resource type. + enum: + - favorites + example: favorites + type: string + x-enum-varnames: + - FAVORITES + UpdateAppProtectionLevelRequestDataAttributes: + description: Attributes for updating an app's publication protection level. + properties: + protectionLevel: + $ref: '#/components/schemas/AppProtectionLevel' + required: + - protectionLevel + type: object + AppProtectionLevelType: + default: protectionLevel + description: The protection-level resource type. + enum: + - protectionLevel + example: protectionLevel + type: string + x-enum-varnames: + - PROTECTIONLEVEL + CreatePublishRequestRequestDataAttributes: + description: Attributes for creating a publish request. + properties: + description: + description: An optional description of the changes in this publish request. + example: Adds new dashboard widgets and a few bug fixes. + type: string + title: + description: A short title for the publish request. + example: Release v1.2 to production + type: string + required: + - title + type: object + PublishRequestType: + default: publishRequest + description: The publish-request resource type. + enum: + - publishRequest + example: publishRequest + type: string + x-enum-varnames: + - PUBLISHREQUEST + UpdateAppSelfServiceRequestDataAttributes: + description: Attributes for updating an app's self-service status. + properties: + selfService: + description: Whether the app is enabled for self-service. + example: true + type: boolean + required: + - selfService + type: object + AppSelfServiceType: + default: selfService + description: The self-service resource type. + enum: + - selfService + example: selfService + type: string + x-enum-varnames: + - SELFSERVICE + UpdateAppTagsRequestDataAttributes: + description: Attributes for replacing an app's tags. + properties: + tags: + description: The full list of tags that should be set on the app. Existing tags not present in this list are removed. + example: + - team:platform + - service:ops + items: + type: string + type: array + required: + - tags + type: object + AppTagsType: + default: tags + description: The tags resource type. + enum: + - tags + example: tags + type: string + x-enum-varnames: + - TAGS + UpdateAppVersionNameRequestDataAttributes: + description: Attributes for naming a specific app version. + properties: + name: + description: The name to assign to the app version. + example: v1.2.0 - bug fix release + type: string + required: + - name + type: object + AppVersionNameType: + default: versionNames + description: The version-name resource type. + enum: + - versionNames + example: versionNames + type: string + x-enum-varnames: + - VERSIONNAMES + AppVersionAttributes: + description: Attributes describing an app version. + properties: + app_id: + description: The ID of the app this version belongs to. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + created_at: + description: Timestamp of when the version was created. + format: date-time + type: string + has_ever_been_published: + description: Whether this version has ever been published. + example: true + type: boolean + name: + description: The optional human-readable name of the version. + example: v1.2.0 - bug fix release + type: string + updated_at: + description: Timestamp of when the version was last updated. + format: date-time + type: string + user_id: + description: The ID of the user who created the version. + format: int64 + type: integer + user_name: + description: The name (or email) of the user who created the version. + example: jane.doe@example.com + type: string + user_uuid: + description: The UUID of the user who created the version. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + version: + description: The version number of the app, starting at 1. + example: 3 + format: int64 + type: integer + type: object + AppVersionType: + default: appVersions + description: The app-version resource type. + enum: + - appVersions + example: appVersions + type: string + x-enum-varnames: + - APPVERSIONS + BlueprintAttributes: + description: The attributes of a blueprint resource. + properties: + created_at: + description: The timestamp when the blueprint was created. + example: '' + format: date-time + type: string + definition: + $ref: '#/components/schemas/AppDefinitionType' + description: + description: A description of what the blueprint does. + example: '' + type: string + embedded_datastore_blueprints: + additionalProperties: {} + description: Embedded datastore blueprints. + type: object + embedded_native_actions: + description: Embedded native actions. + items: + $ref: '#/components/schemas/BlueprintNativeAction' + type: array + embedded_workflow_blueprints: + additionalProperties: {} + description: Embedded workflow blueprints. + type: object + integration_id: + description: The integration ID associated with the blueprint. + type: string + mocked_outputs: + additionalProperties: {} + description: Mocked outputs for testing the blueprint. + type: object + name: + description: The human-readable name of the blueprint. + example: AWS Service Manager + type: string + slug: + description: The unique slug identifier of the blueprint. + example: aws-service-manager + type: string + tags: + description: Tags associated with the blueprint. + items: + type: string + type: array + tile_background: + description: The background style of the blueprint tile. + type: string + tile_icon_action_fqn: + description: The fully qualified name of the action used as the tile icon. + type: string + updated_at: + description: The timestamp when the blueprint was last updated. + example: '' + format: date-time + type: string + required: + - slug + - name + - description + - definition + - created_at + - updated_at + type: object + BlueprintDataType: + description: The resource type for a blueprint. + enum: + - blueprint + example: blueprint + type: string + x-enum-varnames: + - BLUEPRINT + BlueprintMetadataAttributes: + description: The attributes of a blueprint metadata resource. properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array + created_at: + description: The timestamp when the blueprint was created. + example: '' + format: date-time + type: string description: - description: The human-readable description for the app. + description: A description of what the blueprint does. + example: '' type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean name: - description: The name of the app. + description: The human-readable name of the blueprint. + example: AWS Service Manager type: string - queries: - description: >- - An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: >- - The name of the root component of the app. This must be a `grid` - component that contains all other components. + slug: + description: The unique slug identifier of the blueprint. + example: aws-service-manager type: string tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop + description: Tags associated with the blueprint. items: - description: An individual tag for the app. type: string type: array + tile_background: + description: The background style of the blueprint tile. + type: string + tile_icon_action_fqn: + description: The fully qualified name of the action used as the tile icon. + type: string + updated_at: + description: The timestamp when the blueprint was last updated. + example: '' + format: date-time + type: string + required: + - slug + - name + - description + - created_at + - updated_at + type: object + TagDataType: + description: The resource type for a tag. + enum: + - tag + example: tag + minLength: 3 + type: string + x-enum-varnames: + - TAG + UpsertCloudInventorySyncConfigRequestAttributes: + description: Settings for the cloud provider specified in `data.id`. Include only the matching provider object (`aws`, `gcp`, or `azure`). + properties: + aws: + $ref: '#/components/schemas/CloudInventorySyncConfigAWSRequestAttributes' + azure: + $ref: '#/components/schemas/CloudInventorySyncConfigAzureRequestAttributes' + gcp: + $ref: '#/components/schemas/CloudInventorySyncConfigGCPRequestAttributes' + type: object + CloudInventoryCloudProviderId: + description: Cloud provider for this sync configuration (`aws`, `gcp`, or `azure`). For requests, must match the provider block supplied under `attributes`. + enum: + - aws + - gcp + - azure + example: aws + type: string + x-enum-varnames: + - AWS + - GCP + - AZURE + CloudInventoryCloudProviderRequestType: + description: Always `cloud_provider`. + enum: + - cloud_provider + example: cloud_provider + type: string + x-enum-varnames: + - CLOUD_PROVIDER + CloudInventorySyncConfigAttributes: + description: Attributes for a Storage Management configuration. Fields other than `id` may be empty in the response immediately after a create or update; subsequent reads return the full configuration. + properties: + aws_account_id: + description: AWS account ID for the inventory bucket. + example: '123456789012' + type: string + aws_bucket_name: + description: AWS S3 bucket name for inventory files. + example: my-inventory-bucket + type: string + aws_region: + description: AWS Region for the inventory bucket. + example: us-east-1 + type: string + azure_client_id: + description: Azure AD application (client) ID. + example: 11111111-1111-1111-1111-111111111111 + type: string + azure_container_name: + description: Azure blob container name. + example: inventory-container + type: string + azure_storage_account_name: + description: Azure storage account name. + example: mystorageaccount + type: string + azure_tenant_id: + description: Azure AD tenant ID. + example: 22222222-2222-2222-2222-222222222222 + type: string + cloud_provider: + $ref: '#/components/schemas/CloudInventoryCloudProviderId' + error: + description: Human-readable error detail when sync is unhealthy. + example: '' + readOnly: true + type: string + error_code: + description: Machine-readable error code when sync is unhealthy. + example: '' + readOnly: true + type: string + gcp_bucket_name: + description: GCS bucket name for inventory files Datadog reads. + example: my-inventory-reports + type: string + gcp_project_id: + description: GCP project ID. + example: my-gcp-project + type: string + gcp_service_account_email: + description: Service account email for bucket access. + example: reader@my-gcp-project.iam.gserviceaccount.com + type: string + prefix: + description: Object key prefix where inventory reports are written. Returns `/` when reports are written at the bucket root. + example: logs/ + readOnly: true + type: string + required: + - aws_bucket_name + - aws_account_id + - aws_region + - azure_storage_account_name + - azure_container_name + - azure_client_id + - azure_tenant_id + - gcp_bucket_name + - gcp_project_id + - gcp_service_account_email + - cloud_provider + - prefix + - error + - error_code type: object + CloudInventorySyncConfigResourceType: + description: Always `sync_configs`. + enum: + - sync_configs + example: sync_configs + type: string + x-enum-varnames: + - SYNC_CONFIGS ContainerImage: description: Container Image object. properties: @@ -2406,6 +5110,7 @@ components: - device_ip:1.2.3.4 - device_id:example:1.2.3.4 items: + description: A tag string in `key:value` format. type: string type: array vendor: @@ -2499,6 +5204,7 @@ components: - device_ip:1.2.3.4 - device_id:example:1.2.3.4 items: + description: A tag string in `key:value` format. type: string type: array vendor: @@ -2532,6 +5238,7 @@ components: - 1.1.1.1 - 1.1.1.2 items: + description: An IP address assigned to the interface. type: string type: array mac_address: @@ -2554,9 +5261,110 @@ components: - tag:test - tag:testbis items: + description: A tag string in `key:value` format. type: string type: array type: object + NetworkHealthInsightAttributes: + description: Detailed attributes of a network health insight. + properties: + account_id: + description: AWS account identifier where the certificate is located. Only set for `tls-cert` insights. + example: '123456789012' + type: string + certificate_id: + description: ARN or identifier of the certificate. Only set for `tls-cert` insights. + example: arn:aws:acm:us-east-1:123456789012:certificate/abcd1234-a123-456b-a123-12345678901f + type: string + certificate_lifetime_percent: + description: |- + Percentage of the certificate's validity period that has elapsed, ranging from 0 to 100. + Only set for `tls-cert` insights. + example: 96.7 + format: double + type: number + client_region: + description: AWS region where the client is located. Only set for `tls-cert` insights. + example: us-west-2 + type: string + client_service: + description: |- + Name of the service making the request (DNS query or TLS-secured connection). + Set to `N/A` when the client service cannot be determined. + example: network-logger + type: string + days_until_expiration: + description: |- + Number of days remaining until the certificate expires. Negative values indicate the + certificate has already expired. Only set for `tls-cert` insights. + example: 3 + format: int64 + type: integer + dns_query: + description: Domain name that was being resolved when the DNS failure occurred. Only set for `dns` insights. + example: kafka-broker.internal.domain.com + type: string + dns_server: + description: DNS server that received the failing query. Only set for `dns` insights. + example: cluster-dns + type: string + domain_name: + description: Domain name covered by the certificate. Only set for `tls-cert` insights. + example: api.example.com + type: string + failure_magnitude: + description: |- + Count of failed events observed during the query window. Only set for `dns`, `tcp`, + and `security-group` insights. + example: 150 + format: int64 + minimum: 0 + type: integer + failure_rate: + description: |- + Percentage of requests that failed during the query window, ranging from 0 to 100. + Only set for `dns`, `tcp`, and `security-group` insights. + example: 91 + format: double + maximum: 100 + minimum: 0 + type: number + failure_type: + $ref: '#/components/schemas/NetworkHealthInsightFailureType' + loadbalancer_id: + description: ARN of the load balancer using the certificate. Only set for `tls-cert` insights. + example: arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-lb/50dc6c495c0c9188 + type: string + server_region: + description: AWS region where the server or load balancer is located. Only set for `tls-cert` insights. + example: us-east-1 + type: string + server_service: + description: Name of the target service the client was trying to reach. + example: kafka + type: string + total_requests: + description: |- + Total number of requests observed during the query window. Provides context for + `failure_magnitude` and `failure_rate`. Only set for `dns`, `tcp`, and `security-group` insights. + example: 1200 + format: int64 + minimum: 0 + type: integer + traffic_volume: + $ref: '#/components/schemas/NetworkHealthInsightTrafficVolume' + type: + $ref: '#/components/schemas/NetworkHealthInsightCategory' + type: object + NetworkHealthInsightsType: + default: network-health-insights + description: The resource type for network health insights. Always `network-health-insights`. + enum: + - network-health-insights + example: network-health-insights + type: string + x-enum-varnames: + - NETWORK_HEALTH_INSIGHTS SingleAggregatedConnectionResponseDataAttributes: description: Attributes for an aggregated connection. properties: @@ -2572,45 +5380,53 @@ components: additionalProperties: description: The values for each group by. items: + description: A group-by value. type: string type: array description: The key, value pairs for each group by. type: object packets_sent_by_client: - description: >- - The total number of packets sent by the client over the given - period. + description: The total number of packets sent by the client over the given period. format: int64 type: integer packets_sent_by_server: - description: >- - The total number of packets sent by the server over the given - period. + description: The total number of packets sent by the server over the given period. format: int64 type: integer rtt_micro_seconds: - description: >- - Measured as TCP smoothed round trip time in microseconds (the time - between a TCP frame being sent and acknowledged). + description: Measured as TCP smoothed round trip time in microseconds (the time between a TCP frame being sent and acknowledged). format: int64 type: integer tcp_closed_connections: - description: >- - The number of TCP connections in a closed state. Measured in - connections per second from the client. + description: The number of TCP connections in a closed state. Measured in connections per second from the client. + format: int64 + type: integer + tcp_delivered_ce: + description: The number of TCP segments acknowledged with the ECN Congestion Experienced (CE) mark, indicating that an upstream router marked packets as experiencing congestion. format: int64 type: integer tcp_established_connections: - description: >- - The number of TCP connections in an established state. Measured in - connections per second from the client. + description: The number of TCP connections in an established state. Measured in connections per second from the client. + format: int64 + type: integer + tcp_probe0_count: + description: The number of TCP zero-window probes sent. These probes are sent when the receiver advertises a zero receive window, indicating it cannot accept more data. + format: int64 + type: integer + tcp_rcv_ooo_pack: + description: The number of TCP packets received out of order. This indicates network-level packet reordering, which can degrade TCP performance by triggering spurious retransmissions and reducing throughput. + format: int64 + type: integer + tcp_recovery_count: + description: The number of TCP fast recovery events. Fast recovery retransmits lost segments detected through duplicate ACKs or selective acknowledgment (SACK) without waiting for a retransmission timeout. format: int64 type: integer tcp_refusals: - description: >- - The number of TCP connections that were refused by the server. - Typically this indicates an attempt to connect to an IP/port that is - not receiving connections, or a firewall/security misconfiguration. + description: The number of TCP connections that were refused by the server. Typically this indicates an attempt to connect to an IP/port that is not receiving connections, or a firewall/security misconfiguration. + format: int64 + type: integer + tcp_reord_seen: + description: The number of times reordering of sent packets was detected. Reordering detection adjusts the duplicate ACK threshold, preventing spurious retransmissions caused by out-of-order delivery. format: int64 type: integer tcp_resets: @@ -2618,17 +5434,15 @@ components: format: int64 type: integer tcp_retransmits: - description: >- - TCP Retransmits represent detected failures that are retransmitted - to ensure delivery. Measured in count of retransmits from the - client. + description: TCP Retransmits represent detected failures that are retransmitted to ensure delivery. Measured in count of retransmits from the client. + format: int64 + type: integer + tcp_rto_count: + description: The number of TCP retransmission timeouts (RTOs). An RTO occurs when an ACK is not received within the estimated round-trip time, forcing the sender to retransmit and halve its congestion window. format: int64 type: integer tcp_timeouts: - description: >- - The number of TCP connections that timed out from the perspective of - the operating system. This can indicate general connectivity and - latency issues. + description: The number of TCP connections that timed out from the perspective of the operating system. This can indicate general connectivity and latency issues. format: int64 type: integer type: object @@ -2646,14 +5460,12 @@ components: group_bys: description: The key, value pairs for each group by. items: - $ref: >- - #/components/schemas/SingleAggregatedDnsResponseDataAttributesGroupByItems + $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributesGroupByItems' type: array metrics: description: Metrics associated with an aggregated DNS flow. items: - $ref: >- - #/components/schemas/SingleAggregatedDnsResponseDataAttributesMetricsItems + $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributesMetricsItems' type: array type: object SingleAggregatedDnsResponseDataType: @@ -2710,10 +5522,8 @@ components: description: Paging attributes. properties: after: - description: >- - The cursor used to get the next results, if any. To make the next - request, use the same - + description: |- + The cursor used to get the next results, if any. To make the next request, use the same parameters with the addition of the `page[cursor]`. example: 911abf1204838d9cdfcb9a96d0b6a1bd03e1b514074f1ce1737c4cbd type: string @@ -2725,10 +5535,12 @@ components: type: integer type: object RecommendationAttributes: - description: >- - Attributes of the SPA Recommendation resource. Contains recommendations - for both driver and executor components. + description: Attributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components. properties: + confidence_level: + description: The confidence level of the recommendation, expressed as a value between 0.0 (low confidence) and 1.0 (high confidence). + format: double + type: number driver: $ref: '#/components/schemas/ComponentRecommendation' executor: @@ -2739,19 +5551,106 @@ components: type: object RecommendationType: default: recommendation - description: >- - JSON:API resource type for Spark Pod Autosizing recommendations. - Identifies the Recommendation resource returned by SPA. + description: JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. enum: - recommendation example: recommendation type: string x-enum-varnames: - RECOMMENDATION + HostMeta: + description: Metadata associated with your host. + properties: + agent_checks: + description: A list of Agent checks running on the host. + items: + $ref: '#/components/schemas/AgentCheck' + type: array + agent_version: + description: The Datadog Agent version. + example: 7.32.3 + type: string + cpuCores: + description: The number of cores. + example: 1 + format: int64 + type: integer + fbsdV: + description: An array of Mac versions. + items: + description: The version name. + example: FreeBSD + type: array + gohai: + description: JSON string containing system information. + example: '{"cpu":{"cache_size":"8192 KB","cpu_cores":"1","cpu_logical_processors":"1","family":"6","mhz":"2712.000","model":"142","model_name":"Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz","stepping":"10","vendor_id":"GenuineIntel"},"filesystem":[{"kb_size":"3966896","mounted_on":"/dev","name":"udev"},{"kb_size":"797396","mounted_on":"/run","name":"tmpfs"},{"kb_size":"64800356","mounted_on":"/","name":"/dev/mapper/vagrant--vg-root"},{"kb_size":"3986972","mounted_on":"/dev/shm","name":"tmpfs"},{"kb_size":"5120","mounted_on":"/run/lock","name":"tmpfs"},{"kb_size":"3986972","mounted_on":"/sys/fs/cgroup","name":"tmpfs"},{"kb_size":"488245288","mounted_on":"/vagrant","name":"vagrant"},{"kb_size":"797392","mounted_on":"/run/user/1000","name":"tmpfs"}],"memory":{"swap_total":"1003516kB","total":"7973944kB"},"network":{"interfaces":[{"ipv4":"10.0.2.15","ipv4-network":"10.0.2.0/24","ipv6":"fe80::a00:27ff:fec2:be11","ipv6-network":"fe80::/64","macaddress":"08:00:27:c2:be:11","name":"eth0"},{"ipv4":"192.168.122.1","ipv4-network":"192.168.122.0/24","macaddress":"52:54:00:6f:1c:bf","name":"virbr0"}],"ipaddress":"10.0.2.15","ipaddressv6":"fe80::a00:27ff:fec2:be11","macaddress":"08:00:27:c2:be:11"},"platform":{"GOOARCH":"amd64","GOOS":"linux","goV":"1.16.7","hardware_platform":"x86_64","hostname":"vagrant","kernel_name":"Linux","kernel_release":"4.15.0-29-generic","kernel_version":"#31-Ubuntu SMP Tue Jul 17 15:39:52 UTC 2018","machine":"x86_64","os":"GNU/Linux","processor":"x86_64","pythonV":"2.7.15rc1"}}' + type: string + install_method: + $ref: '#/components/schemas/HostMetaInstallMethod' + macV: + description: An array of Mac versions. + items: + description: Version name. + example: Mac + type: array + machine: + description: The machine architecture. + example: amd64 + type: string + nixV: + description: Array of Unix versions. + items: + description: Version name. + example: Ubuntu + type: array + platform: + description: The OS platform. + example: linux + type: string + processor: + description: The processor. + example: Intel(R) Core(TM) i7-8559U CPU @ 2.70GHz + type: string + pythonV: + description: The Python version. + example: 3.8.11 + type: string + socket-fqdn: + description: The socket fqdn. + example: vagrant.vm. + type: string + socket-hostname: + description: The socket hostname. + example: vagrant + type: string + winV: + description: An array of Windows versions. + items: + description: Version name. + example: Windows + type: array + type: object + HostMetrics: + description: Host Metrics collected. + properties: + cpu: + description: The percent of CPU used (everything but idle). + example: 99 + format: double + type: number + iowait: + description: The percent of CPU spent waiting on the IO (not reported for all platforms). + example: 3.2 + format: double + type: number + load: + description: The system load over the last 15 minutes. + example: 0.5 + format: double + type: number + type: object ComponentGrid: - description: >- - A grid component. The grid component is the root canvas for an app and - contains all other components. + description: A grid component. The grid component is the root canvas for an app and contains all other components. properties: events: description: Events to listen for on the grid component. @@ -2759,14 +5658,10 @@ components: $ref: '#/components/schemas/AppBuilderEvent' type: array id: - description: >- - The ID of the grid component. This property is deprecated; use - `name` to identify individual components instead. + description: The ID of the grid component. This property is deprecated; use `name` to identify individual components instead. type: string name: - description: >- - A unique identifier for this grid component. This name is also - visible in the app editor. + description: A unique identifier for this grid component. This name is also visible in the app editor. example: '' type: string properties: @@ -2779,13 +5674,32 @@ components: - properties type: object Query: - description: >- - A data query used by an app. This can take the form of an external - action, a data transformation, or a state variable. - oneOf: - - $ref: '#/components/schemas/ActionQuery' - - $ref: '#/components/schemas/DataTransform' - - $ref: '#/components/schemas/StateVariable' + description: A data query used by an app. This can take the form of an external action, a data transformation, or a state variable. + properties: + events: + description: Events to listen for downstream of the action query. + items: + $ref: '#/components/schemas/AppBuilderEvent' + type: array + id: + description: The ID of the action query. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 + format: uuid + type: string + name: + description: A unique identifier for this action query. This name is also used to access the query's result throughout the app. + example: fetchPendingOrders + type: string + properties: + $ref: '#/components/schemas/ActionQueryProperties' + type: + $ref: '#/components/schemas/ActionQueryType' + required: + - id + - name + - type + - properties + type: object CustomConnectionAttributes: description: The custom connection attributes. properties: @@ -2815,6 +5729,104 @@ components: type: $ref: '#/components/schemas/AppDeploymentType' type: object + AppProtectionLevel: + description: The publication protection level of the app. `approval_required` means changes must go through an approval workflow before being published. + enum: + - direct_publish + - approval_required + example: direct_publish + type: string + x-enum-varnames: + - DIRECT_PUBLISH + - APPROVAL_REQUIRED + BlueprintNativeAction: + additionalProperties: {} + description: An embedded native action in a blueprint. + type: object + CloudInventorySyncConfigAWSRequestAttributes: + description: AWS settings for the S3 bucket Storage Management reads inventory reports from. + properties: + aws_account_id: + description: AWS account ID that owns the inventory bucket. + example: '123456789012' + type: string + destination_bucket_name: + description: Name of the S3 bucket containing inventory files. + example: my-inventory-bucket + type: string + destination_bucket_region: + description: AWS Region of the inventory bucket. + example: us-east-1 + type: string + destination_prefix: + description: Object key prefix where inventory reports are written. Omit or set to `/` when reports are written at the bucket root. + example: logs/ + type: string + required: + - aws_account_id + - destination_bucket_name + - destination_bucket_region + type: object + CloudInventorySyncConfigAzureRequestAttributes: + description: Azure settings for the storage account and container with inventory data. + properties: + client_id: + description: Azure AD application (client) ID used for access. + example: 11111111-1111-1111-1111-111111111111 + type: string + container: + description: Blob container name. + example: inventory-container + type: string + resource_group: + description: Resource group containing the storage account. + example: my-resource-group + type: string + storage_account: + description: Storage account name. + example: mystorageaccount + type: string + subscription_id: + description: Azure subscription ID. + example: 33333333-3333-3333-3333-333333333333 + type: string + tenant_id: + description: Azure AD tenant ID. + example: 22222222-2222-2222-2222-222222222222 + type: string + required: + - client_id + - tenant_id + - subscription_id + - resource_group + - storage_account + - container + type: object + CloudInventorySyncConfigGCPRequestAttributes: + description: GCP settings for buckets involved in inventory reporting. + properties: + destination_bucket_name: + description: GCS bucket name where Datadog reads inventory reports. + example: my-inventory-reports + type: string + project_id: + description: GCP project ID for the inventory destination bucket. + example: my-gcp-project + type: string + service_account_email: + description: Service account email used to read the destination bucket. + example: reader@my-gcp-project.iam.gserviceaccount.com + type: string + source_bucket_name: + description: GCS bucket name that inventory reports are generated for. + example: my-monitored-bucket + type: string + required: + - project_id + - destination_bucket_name + - source_bucket_name + - service_account_email + type: object ContainerImageAttributes: description: Attributes for a Container Image. properties: @@ -2847,9 +5859,7 @@ components: description: Name of the Container Image. type: string os_architectures: - description: >- - List of Operating System architectures supported by the Container - Image. + description: List of Operating System architectures supported by the Container Image. items: description: Operating System architecture supported by the Container Image. example: amd64 @@ -2884,10 +5894,8 @@ components: description: Short version of the Container Image name. type: string sizes: - description: >- - List of size for each platform-specific image associated with the - image record. - + description: |- + List of size for each platform-specific image associated with the image record. The list contains more than 1 entry for multi-architecture images. items: description: Size of the platform-specific Container Image. @@ -2929,8 +5937,8 @@ components: description: Name of the Container Image group. type: string tags: - description: Tags from the group name parsed in key/value format. - type: object + description: Tags from the group name parsed in key/value format. (opaque JSON object) + type: string type: object ContainerImageGroupRelationships: description: Relationships inside a Container Image Group. @@ -2978,6 +5986,7 @@ components: image_tags: description: List of image tags associated with the container image. items: + description: An image tag associated with the container. type: string nullable: true type: array @@ -2993,6 +6002,7 @@ components: tags: description: List of tags associated with the container. items: + description: A tag associated with the container. type: string type: array type: object @@ -3013,8 +6023,8 @@ components: format: int64 type: integer tags: - description: Tags from the group name parsed in key/value format. - type: object + description: Tags from the group name parsed in key/value format. (opaque JSON object) + type: string type: object ContainerGroupRelationships: description: Relationships to containers inside a container group. @@ -3079,6 +6089,64 @@ components: - DOWN - WARNING - 'OFF' + NetworkHealthInsightFailureType: + description: |- + Specific failure type within the insight category. For DNS insights: `timeout`, `nxdomain`, + `servfail`, or `general_failure`. For TLS certificate insights: `expired` or `expiring_soon`. + For security group insights: `denied`. + enum: + - timeout + - nxdomain + - servfail + - general_failure + - expired + - expiring_soon + - denied + example: nxdomain + type: string + x-enum-varnames: + - TIMEOUT + - NXDOMAIN + - SERVFAIL + - GENERAL_FAILURE + - EXPIRED + - EXPIRING_SOON + - DENIED + NetworkHealthInsightTrafficVolume: + description: Network traffic volume metrics between the client and server services during the query window. + properties: + bytes_read: + description: Total bytes read from the server to the client during the query window. + example: 1800000 + format: int64 + type: integer + bytes_written: + description: Total bytes written from the client to the server during the query window. + example: 2500000 + format: int64 + type: integer + total_traffic: + description: Sum of bytes written and bytes read across the query window. + example: 4300000 + format: int64 + type: integer + type: object + NetworkHealthInsightCategory: + description: |- + Category of network health insight. Indicates whether the insight relates to a DNS issue (`dns`), + a TCP issue (`tcp`), a TLS certificate issue (`tls-cert`), or a security group denial (`security-group`). + enum: + - dns + - tcp + - tls-cert + - security-group + example: dns + type: string + x-enum-varnames: + - DNS + - TCP + - TLS_CERT + - SECURITY_GROUP SingleAggregatedDnsResponseDataAttributesGroupByItems: description: Attributes associated with a group by properties: @@ -3100,15 +6168,41 @@ components: type: integer type: object ComponentRecommendation: - description: >- - Resource recommendation for a single Spark component (driver or - executor). Contains estimation data used to patch Spark job specs. + description: Resource recommendation for a single Spark component (driver or executor). Contains estimation data used to patch Spark job specs. properties: estimation: $ref: '#/components/schemas/Estimation' required: - estimation type: object + AgentCheck: + description: Array of strings. + example: + - ntp + - ntp + - ntp:d884b5186b651429 + - OK + - '' + - '' + items: + description: Agent check running on the host. + type: array + HostMetaInstallMethod: + description: Agent install method. + properties: + installer_version: + description: The installer version. + example: install_script-1.7.1 + type: string + tool: + description: Tool used to install the agent. + example: install_script + type: string + tool_version: + description: The tool version. + example: install_script + type: string + type: object AppBuilderEvent: additionalProperties: {} description: An event on a UI component that triggers a response or action in an app. @@ -3143,9 +6237,7 @@ components: x-enum-varnames: - GRID ActionQuery: - description: >- - An action query. This query type is used to trigger an action, such as - sending a HTTP request. + description: An action query. This query type is used to trigger an action, such as sending a HTTP request. properties: events: description: Events to listen for downstream of the action query. @@ -3158,9 +6250,7 @@ components: format: uuid type: string name: - description: >- - A unique identifier for this action query. This name is also used to - access the query's result throughout the app. + description: A unique identifier for this action query. This name is also used to access the query's result throughout the app. example: fetchPendingOrders type: string properties: @@ -3174,9 +6264,7 @@ components: - properties type: object DataTransform: - description: >- - A data transformer, which is custom JavaScript code that executes and - transforms data when its inputs change. + description: A data transformer, which is custom JavaScript code that executes and transforms data when its inputs change. properties: id: description: The ID of the data transformer. @@ -3184,9 +6272,7 @@ components: format: uuid type: string name: - description: >- - A unique identifier for this data transformer. This name is also - used to access the transformer's result throughout the app. + description: A unique identifier for this data transformer. This name is also used to access the transformer's result throughout the app. example: combineTwoOrders type: string properties: @@ -3208,9 +6294,7 @@ components: format: uuid type: string name: - description: >- - A unique identifier for this state variable. This name is also used - to access the variable's value throughout the app. + description: A unique identifier for this state variable. This name is also used to access the variable's value throughout the app. example: ordersToSubmit type: string properties: @@ -3224,10 +6308,7 @@ components: - properties type: object CustomConnectionAttributesOnPremRunner: - description: >- - Information about the Private Action Runner used by the custom - connection, if the custom connection is associated with a Private Action - Runner. + description: Information about the Private Action Runner used by the custom connection, if the custom connection is associated with a Private Action Runner. properties: id: description: The Private Action Runner ID. @@ -3340,17 +6421,12 @@ components: - DNS_SUCCESS_LATENCY_PERCENTILE - DNS_FAILURE_LATENCY_PERCENTILE Estimation: - description: >- - Recommended resource values for a Spark driver or executor, derived from - recent real usage metrics. Used by SPA to propose more efficient pod - sizing. + description: Recommended resource values for a Spark driver or executor, derived from recent real usage metrics. Used by SPA to propose more efficient pod sizing. properties: cpu: $ref: '#/components/schemas/Cpu' ephemeral_storage: - description: >- - Recommended ephemeral storage allocation (in MiB). Derived from job - temporary storage patterns. + description: Recommended ephemeral storage allocation (in MiB). Derived from job temporary storage patterns. format: int64 type: integer heap: @@ -3358,9 +6434,7 @@ components: format: int64 type: integer memory: - description: >- - Recommended total memory allocation (in MiB). Includes both heap and - overhead. + description: Recommended total memory allocation (in MiB). Includes both heap and overhead. format: int64 type: integer overhead: @@ -3417,9 +6491,7 @@ components: - DOWNLOADFILE - SETSTATEVARIABLEVALUE Component: - description: >- - [Definition of a UI component in the - app](https://docs.datadoghq.com/service_management/app_builder/components/) + description: '[Definition of a UI component in the app](https://docs.datadoghq.com/service_management/app_builder/components/)' properties: events: description: Events to listen for on the UI component. @@ -3427,15 +6499,11 @@ components: $ref: '#/components/schemas/AppBuilderEvent' type: array id: - description: >- - The ID of the UI component. This property is deprecated; use `name` - to identify individual components instead. + description: The ID of the UI component. This property is deprecated; use `name` to identify individual components instead. nullable: true type: string name: - description: >- - A unique identifier for this UI component. This name is also visible - in the app editor. + description: A unique identifier for this UI component. This name is also visible in the app editor. example: '' type: string properties: @@ -3448,13 +6516,9 @@ components: - properties type: object ComponentGridPropertiesIsVisible: - description: >- - Whether the grid component and its children are visible. If a string, it - must be a valid JavaScript expression that evaluates to a boolean. - oneOf: - - type: string - - default: true - type: boolean + description: Whether the grid component and its children are visible. If a string, it must be a valid JavaScript expression that evaluates to a boolean. + type: string + default: true ActionQueryProperties: description: The properties of the action query. properties: @@ -3467,10 +6531,7 @@ components: onlyTriggerManually: $ref: '#/components/schemas/ActionQueryOnlyTriggerManually' outputs: - description: >- - The post-query transformation function, which is a JavaScript - function that changes the query's `.outputs` property after the - query's execution. + description: The post-query transformation function, which is a JavaScript function that changes the query's `.outputs` property after the query's execution. example: ${((outputs) => {return outputs.body.data})(self.rawOutputs)} type: string pollingIntervalInMs: @@ -3556,38 +6617,25 @@ components: type: string type: object Cpu: - description: >- - CPU usage statistics derived from historical Spark job metrics. Provides - multiple estimates so users can choose between conservative and - cost-saving risk profiles. + description: CPU usage statistics derived from historical Spark job metrics. Provides multiple estimates so users can choose between conservative and cost-saving risk profiles. properties: max: - description: >- - Maximum CPU usage observed for the job, expressed in millicores. - This represents the upper bound of usage. + description: Maximum CPU usage observed for the job, expressed in millicores. This represents the upper bound of usage. format: int64 type: integer p75: - description: >- - 75th percentile of CPU usage (millicores). Represents a cost-saving - configuration while covering most workloads. + description: 75th percentile of CPU usage (millicores). Represents a cost-saving configuration while covering most workloads. format: int64 type: integer p95: - description: >- - 95th percentile of CPU usage (millicores). Balances performance and - cost, providing a safer margin than p75. + description: 95th percentile of CPU usage (millicores). Balances performance and cost, providing a safer margin than p75. format: int64 type: integer type: object x-model-simple-name: SpaCpu ComponentProperties: additionalProperties: {} - description: >- - Properties of a UI component. Different component types can have their - own additional unique properties. See the [components - documentation](https://docs.datadoghq.com/service_management/app_builder/components/) - for more detail on each component type and its properties. + description: Properties of a UI component. Different component types can have their own additional unique properties. See the [components documentation](https://docs.datadoghq.com/service_management/app_builder/components/) for more detail on each component type and its properties. properties: children: description: The child components of the UI component. @@ -3644,97 +6692,67 @@ components: - CONTAINER - CALLOUTVALUE ActionQueryCondition: - description: >- - Whether to run this query. If specified, the query will only run if this - condition evaluates to `true` in JavaScript and all other conditions are - also met. - oneOf: - - type: boolean - - example: ${true} - type: string + description: Whether to run this query. If specified, the query will only run if this condition evaluates to `true` in JavaScript and all other conditions are also met. + type: boolean + example: ${true} ActionQueryDebounceInMs: - description: >- - The minimum time in milliseconds that must pass before the query can be - triggered again. This is useful for preventing accidental double-clicks - from triggering the query multiple times. - oneOf: - - example: 310.5 - format: double - type: number - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a number. - example: ${1000} - type: string + description: The minimum time in milliseconds that must pass before the query can be triggered again. This is useful for preventing accidental double-clicks from triggering the query multiple times. + example: 310.5 + format: double + type: number ActionQueryMockedOutputs: - description: >- - The mocked outputs of the action query. This is useful for testing the - app without actually running the action. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQueryMockedOutputsObject' - ActionQueryOnlyTriggerManually: - description: >- - Determines when this query is executed. If set to `false`, the query - will run when the app loads and whenever any query arguments change. If - set to `true`, the query will only run when manually triggered from - elsewhere in the app. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} + description: The mocked outputs of the action query. This is useful for testing the app without actually running the action. + type: string + properties: + enabled: + $ref: '#/components/schemas/ActionQueryMockedOutputsEnabled' + outputs: + description: The mocked outputs of the action query, serialized as JSON. + example: '{"status": "success"}' type: string + required: + - enabled + ActionQueryOnlyTriggerManually: + description: Determines when this query is executed. If set to `false`, the query will run when the app loads and whenever any query arguments change. If set to `true`, the query will only run when manually triggered from elsewhere in the app. + type: boolean + example: ${true} ActionQueryPollingIntervalInMs: - description: >- - If specified, the app will poll the query at the specified interval in - milliseconds. The minimum polling interval is 15 seconds. The query will - only poll when the app's browser tab is active. - oneOf: - - example: 30000 - format: double - minimum: 15000 - type: number - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a number. - example: ${15000} - type: string + description: If specified, the app will poll the query at the specified interval in milliseconds. The minimum polling interval is 15 seconds. The query will only poll when the app's browser tab is active. + example: 30000 + format: double + minimum: 15000 + type: number ActionQueryRequiresConfirmation: description: Whether to prompt the user to confirm this query before it runs. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} + type: boolean + example: ${true} + ActionQueryShowToastOnError: + description: Whether to display a toast to the user when the query returns an error. + type: boolean + example: ${true} + ActionQuerySpec: + description: The definition of the action query. + example: '' + type: string + properties: + connectionGroup: + $ref: '#/components/schemas/ActionQuerySpecConnectionGroup' + connectionId: + description: The ID of the custom connection to use for this action query. + example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 type: string - ActionQueryShowToastOnError: - description: Whether to display a toast to the user when the query returns an error. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} + fqn: + description: The fully qualified name of the action type. + example: com.datadoghq.http.request type: string - ActionQuerySpec: - description: The definition of the action query. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQuerySpecObject' + inputs: + $ref: '#/components/schemas/ActionQuerySpecInputs' + required: + - fqn ComponentPropertiesIsVisible: - description: >- - Whether the UI component is visible. If this is a string, it must be a - valid JavaScript expression that evaluates to a boolean. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string + description: Whether the UI component is visible. If this is a string, it must be a valid JavaScript expression that evaluates to a boolean. + type: boolean + example: ${true} ActionQueryMockedOutputsObject: description: The mocked outputs of the action query. properties: @@ -3767,13 +6785,8 @@ components: type: object ActionQueryMockedOutputsEnabled: description: Whether to enable the mocked outputs for testing. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string + example: false + type: boolean ActionQuerySpecConnectionGroup: description: The connection group to use for an action query. properties: @@ -3785,22 +6798,17 @@ components: tags: description: The tags of the connection group. items: + description: A tag for the connection group. type: string type: array type: object ActionQuerySpecInputs: - description: >- - The inputs to the action query. These are the values that are passed to - the action when it is triggered. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQuerySpecInput' + description: The inputs to the action query. These are the values that are passed to the action when it is triggered. + type: string + additionalProperties: {} ActionQuerySpecInput: additionalProperties: {} - description: >- - The inputs to the action query. See the [Actions - Catalog](https://docs.datadoghq.com/actions/actions_catalog/) for more - detail on each action and its inputs. + description: The inputs to the action query. See the [Actions Catalog](https://docs.datadoghq.com/actions/actions_catalog/) for more detail on each action and its inputs. type: object responses: TooManyRequestsResponse: @@ -3809,18 +6817,18 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Too many requests - BadRequestResponse: + ForbiddenResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ForbiddenResponse: + description: Forbidden + BadRequestResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + description: Bad Request NotFoundResponse: content: application/json: @@ -3834,18 +6842,26 @@ components: $ref: '#/components/schemas/APIErrorResponse' description: Not Authorized parameters: - PageSize: - description: Size for a given page. The maximum allowed value is 100. + CloudInventorySyncConfigID: + description: Unique identifier of the Storage Management configuration. + example: abc123 + in: path + name: id + required: true + schema: + type: string + NDMPageSize: + description: Size for a given page. The maximum allowed value is 500. Defaults to 50. in: query name: page[size] required: false schema: - default: 10 - example: 10 + default: 50 + example: 50 format: int64 type: integer - PageNumber: - description: Specific page number to return. + NDMPageNumber: + description: Specific page number to return. Defaults to 0. in: query name: page[number] required: false @@ -3866,6 +6882,8 @@ components: response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel list_apps: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps/get' @@ -3873,18 +6891,31 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit create_app: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_app: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/delete' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel get_app: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/get' @@ -3892,24 +6923,35 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_app: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel unpublish_app: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1deployment/delete' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel publish_app: operation: $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1deployment/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/apps/methods/get_app' @@ -3922,6 +6964,318 @@ components: - $ref: '#/components/x-stackQL-resources/apps/methods/delete_app' - $ref: '#/components/x-stackQL-resources/apps/methods/delete_apps' replace: [] + app_builder_app_favorites: + id: datadog.infrastructure.app_builder_app_favorites + name: app_builder_app_favorites + title: App Builder App Favorites + methods: + update_app_favorite: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1favorite/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/app_builder_app_favorites/methods/update_app_favorite' + delete: [] + replace: [] + app_builder_app_protection_levels: + id: datadog.infrastructure.app_builder_app_protection_levels + name: app_builder_app_protection_levels + title: App Builder App Protection Levels + methods: + update_protection_level: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1protection-level/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/app_builder_app_protection_levels/methods/update_protection_level' + delete: [] + replace: [] + app_builder_app_publish_requests: + id: datadog.infrastructure.app_builder_app_publish_requests + name: app_builder_app_publish_requests + title: App Builder App Publish Requests + methods: + create_publish_request: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1publish-request/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/app_builder_app_publish_requests/methods/create_publish_request' + update: [] + delete: [] + replace: [] + app_builder_apps: + id: datadog.infrastructure.app_builder_apps + name: app_builder_apps + title: App Builder Apps + methods: + revert_app: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1revert/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + app_builder_app_self_services: + id: datadog.infrastructure.app_builder_app_self_services + name: app_builder_app_self_services + title: App Builder App Self Services + methods: + update_app_self_service: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1self-service/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/app_builder_app_self_services/methods/update_app_self_service' + delete: [] + replace: [] + app_builder_app_tags: + id: datadog.infrastructure.app_builder_app_tags + name: app_builder_app_tags + title: App Builder App Tags + methods: + update_app_tags: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1tags/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/app_builder_app_tags/methods/update_app_tags' + delete: [] + replace: [] + app_builder_app_version_names: + id: datadog.infrastructure.app_builder_app_version_names + name: app_builder_app_version_names + title: App Builder App Version Names + methods: + update_app_version_name: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1version-name/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/app_builder_app_version_names/methods/update_app_version_name' + delete: [] + replace: [] + app_builder_app_versions: + id: datadog.infrastructure.app_builder_app_versions + name: app_builder_app_versions + title: App Builder App Versions + methods: + list_app_versions: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1apps~1{app_id}~1versions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/app_builder_app_versions/methods/list_app_versions' + insert: [] + update: [] + delete: [] + replace: [] + app_builder_blueprints: + id: datadog.infrastructure.app_builder_blueprints + name: app_builder_blueprints + title: App Builder Blueprints + methods: + get_blueprint: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1blueprint~1{blueprint_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + list_blueprints: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1blueprints/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/app_builder_blueprints/methods/get_blueprint' + - $ref: '#/components/x-stackQL-resources/app_builder_blueprints/methods/list_blueprints' + insert: [] + update: [] + delete: [] + replace: [] + app_builder_blueprint_integration_ids: + id: datadog.infrastructure.app_builder_blueprint_integration_ids + name: app_builder_blueprint_integration_ids + title: App Builder Blueprint Integration Ids + methods: + get_blueprints_by_integration_id: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1blueprints~1integration-id~1{integration_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/app_builder_blueprint_integration_ids/methods/get_blueprints_by_integration_id' + insert: [] + update: [] + delete: [] + replace: [] + app_builder_blueprint_slugs: + id: datadog.infrastructure.app_builder_blueprint_slugs + name: app_builder_blueprint_slugs + title: App Builder Blueprint Slugs + methods: + get_blueprints_by_slugs: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1blueprints~1slugs~1{slugs}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/app_builder_blueprint_slugs/methods/get_blueprints_by_slugs' + insert: [] + update: [] + delete: [] + replace: [] + app_builder_tags: + id: datadog.infrastructure.app_builder_tags + name: app_builder_tags + title: App Builder Tags + methods: + list_tags: + operation: + $ref: '#/paths/~1api~1v2~1app-builder~1tags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/app_builder_tags/methods/list_tags' + insert: [] + update: [] + delete: [] + replace: [] + storage_management_configs: + id: datadog.infrastructure.storage_management_configs + name: storage_management_configs + title: Storage Management Configs + methods: + upsert_sync_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cloudinventoryservice~1syncconfigs/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_sync_config: + operation: + $ref: '#/paths/~1api~1v2~1cloudinventoryservice~1syncconfigs~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/storage_management_configs/methods/delete_sync_config' + replace: + - $ref: '#/components/x-stackQL-resources/storage_management_configs/methods/upsert_sync_config' container_images: id: datadog.infrastructure.container_images name: container_images @@ -3934,10 +7288,23 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.pagination.next_cursor + location: body + queryParamPushdown: + top: + paramName: page[size] + maxValue: 10000 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/container_images/methods/list_container_images + - $ref: '#/components/x-stackQL-resources/container_images/methods/list_container_images' insert: [] update: [] delete: [] @@ -3954,10 +7321,23 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.pagination.next_cursor + location: body + queryParamPushdown: + top: + paramName: page[size] + maxValue: 10000 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/containers/methods/list_containers + - $ref: '#/components/x-stackQL-resources/containers/methods/list_containers' insert: [] update: [] delete: [] @@ -3974,6 +7354,12 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] get_device: operation: $ref: '#/paths/~1api~1v2~1ndm~1devices~1{device_id}/get' @@ -3981,6 +7367,8 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/devices/methods/get_device' @@ -4001,10 +7389,11 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/device_interfaces/methods/get_interfaces + - $ref: '#/components/x-stackQL-resources/device_interfaces/methods/get_interfaces' insert: [] update: [] delete: [] @@ -4021,20 +7410,79 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_device_user_tags: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1ndm~1tags~1devices~1{device_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/device_user_tags/methods/list_device_user_tags' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/device_user_tags/methods/update_device_user_tags' + delete: [] + replace: [] + ndm_tag_interfaces: + id: datadog.infrastructure.ndm_tag_interfaces + name: ndm_tag_interfaces + title: Ndm Tag Interfaces + methods: + list_interface_user_tags: + operation: + $ref: '#/paths/~1api~1v2~1ndm~1tags~1interfaces~1{interface_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_interface_user_tags: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ndm~1tags~1interfaces~1{interface_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/device_user_tags/methods/list_device_user_tags + - $ref: '#/components/x-stackQL-resources/ndm_tag_interfaces/methods/list_interface_user_tags' insert: [] update: - - $ref: >- - #/components/x-stackQL-resources/device_user_tags/methods/update_device_user_tags + - $ref: '#/components/x-stackQL-resources/ndm_tag_interfaces/methods/update_interface_user_tags' + delete: [] + replace: [] + network_health_insights: + id: datadog.infrastructure.network_health_insights + name: network_health_insights + title: Network Health Insights + methods: + list_network_health_insights: + operation: + $ref: '#/paths/~1api~1v2~1network-health-insights/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/network_health_insights/methods/list_network_health_insights' + insert: [] + update: [] delete: [] replace: [] aggregated_connections: @@ -4049,10 +7497,16 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 7500 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aggregated_connections/methods/get_aggregated_connections + - $ref: '#/components/x-stackQL-resources/aggregated_connections/methods/get_aggregated_connections' insert: [] update: [] delete: [] @@ -4069,10 +7523,16 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 7500 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aggregated_dns/methods/get_aggregated_dns + - $ref: '#/components/x-stackQL-resources/aggregated_dns/methods/get_aggregated_dns' insert: [] update: [] delete: [] @@ -4089,6 +7549,20 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 10000 sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/processes/methods/list_processes' @@ -4102,23 +7576,163 @@ components: title: Spa Recommendations methods: get_sparecommendations: + operation: + $ref: '#/paths/~1api~1v2~1spa~1recommendations~1{service}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_sparecommendations_with_shard: operation: $ref: '#/paths/~1api~1v2~1spa~1recommendations~1{service}~1{shard}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/spa_recommendations/methods/get_sparecommendations_with_shard' + - $ref: '#/components/x-stackQL-resources/spa_recommendations/methods/get_sparecommendations' + insert: [] + update: [] + delete: [] + replace: [] + hosts: + id: datadog.infrastructure.hosts + name: hosts + title: Hosts + methods: + mute_host: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1host~1{host_name}~1mute/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + unmute_host: + operation: + $ref: '#/paths/~1api~1v1~1host~1{host_name}~1unmute/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_hosts: + operation: + $ref: '#/paths/~1api~1v1~1hosts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.host_list + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: count + skip: + paramName: start + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/hosts/methods/list_hosts' + insert: [] + update: [] + delete: [] + replace: [] + host_totals: + id: datadog.infrastructure.host_totals + name: host_totals + title: Host Totals + methods: + get_host_totals: + operation: + $ref: '#/paths/~1api~1v1~1hosts~1totals/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/spa_recommendations/methods/get_sparecommendations + - $ref: '#/components/x-stackQL-resources/host_totals/methods/get_host_totals' insert: [] update: [] delete: [] replace: [] + host_tags: + id: datadog.infrastructure.host_tags + name: host_tags + title: Host Tags + methods: + list_host_tags: + operation: + $ref: '#/paths/~1api~1v1~1tags~1hosts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_host_tags: + operation: + $ref: '#/paths/~1api~1v1~1tags~1hosts~1{host_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_host_tags: + operation: + $ref: '#/paths/~1api~1v1~1tags~1hosts~1{host_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_host_tags: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1tags~1hosts~1{host_name}/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + update_host_tags: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1tags~1hosts~1{host_name}/put' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/host_tags/methods/get_host_tags' + - $ref: '#/components/x-stackQL-resources/host_tags/methods/list_host_tags' + insert: + - $ref: '#/components/x-stackQL-resources/host_tags/methods/create_host_tags' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/host_tags/methods/delete_host_tags' + replace: + - $ref: '#/components/x-stackQL-resources/host_tags/methods/update_host_tags' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/integrations.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/integrations.yaml index 0559a17..5ab022e 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/integrations.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/integrations.yaml @@ -1,431 +1,586 @@ openapi: 3.0.0 info: title: integrations API - description: datadog integrations API + description: |- + The Integrations API is used to list available integrations + and retrieve information about their installation status. version: '1.0' paths: - /api/v2/integration/aws/accounts: + /api/v2/cloud_auth/aws/persona_mapping: get: - description: Get a list of AWS Account Integration Configs. - operationId: ListAWSAccounts - parameters: - - description: >- - Optional query parameter to filter accounts by AWS Account ID. If - not provided, all accounts are returned. - example: '123456789012' - in: query - name: aws_account_id - required: false - schema: - type: string + description: List all AWS cloud authentication persona mappings. This endpoint retrieves all configured persona mappings that associate AWS IAM principals with Datadog users. + operationId: ListAWSCloudAuthPersonaMappings responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + account_identifier: test@example.com + account_uuid: 00000000-0000-0000-0000-000000000001 + arn_pattern: arn:aws:iam::123456789012:user/testuser + id: abc-123 + type: aws_cloud_auth_config schema: - $ref: '#/components/schemas/AWSAccountsResponse' - description: AWS Accounts List object + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all AWS integrations + summary: List AWS cloud authentication persona mappings tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read + - Cloud Authentication + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Create a new AWS Account Integration Config. - operationId: CreateAWSAccount + description: Create an AWS cloud authentication persona mapping. This endpoint associates an AWS IAM principal with a Datadog user. + operationId: CreateAWSCloudAuthPersonaMapping requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_identifier: test@test.com + arn_pattern: arn:aws:iam::123456789012:user/testuser + type: aws_cloud_auth_config schema: - $ref: '#/components/schemas/AWSAccountCreateRequest' + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingCreateRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + account_identifier: test@example.com + account_uuid: 00000000-0000-0000-0000-000000000001 + arn_pattern: arn:aws:iam::123456789012:user/testuser + id: abc-123 + type: aws_cloud_auth_config schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingResponse' + description: Created '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '409': - $ref: '#/components/responses/ConflictResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an AWS integration + summary: Create an AWS cloud authentication persona mapping tags: - - AWS Integration + - Cloud Authentication x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - aws_configurations_manage - /api/v2/integration/aws/accounts/{aws_account_config_id}: + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/cloud_auth/aws/persona_mapping/{persona_mapping_id}: delete: - description: Delete an AWS Account Integration Config by config ID. - operationId: DeleteAWSAccount + description: Delete an AWS cloud authentication persona mapping by ID. This removes the association between an AWS IAM principal and a Datadog user. + operationId: DeleteAWSCloudAuthPersonaMapping parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' + - $ref: '#/components/parameters/PersonaMappingID' responses: '204': description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an AWS integration + summary: Delete an AWS cloud authentication persona mapping tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configurations_manage + - Cloud Authentication + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Get an AWS Account Integration Config by config ID. - operationId: GetAWSAccount + description: Get a specific AWS cloud authentication persona mapping by ID. This endpoint retrieves a single configured persona mapping that associates an AWS IAM principal with a Datadog user. + operationId: GetAWSCloudAuthPersonaMapping parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' + - $ref: '#/components/parameters/PersonaMappingID' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + account_identifier: test@example.com + account_uuid: 00000000-0000-0000-0000-000000000001 + arn_pattern: arn:aws:iam::123456789012:user/testuser + id: abc-123 + type: aws_cloud_auth_config schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingResponse' + description: OK '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an AWS integration by config ID + summary: Get an AWS cloud authentication persona mapping tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - patch: - description: Update an AWS Account Integration Config by config ID. - operationId: UpdateAWSAccount + - Cloud Authentication + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/idp/entity_integrations/{integration_id}: + delete: + description: Delete the configuration stored for a given integration in the caller's organization. + operationId: DeleteEntityIntegrationConfig parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountUpdateRequest' - required: true + - $ref: '#/components/parameters/EntityIntegrationConfigID' responses: - '200': + '204': + description: No Content + '400': content: application/json: schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update an AWS integration + summary: Delete an entity integration configuration tags: - - AWS Integration - x-codegen-request-body-name: body + - Entity Integration Configs x-permission: operator: OR permissions: - - aws_configuration_edit - /api/v2/integration/aws/available_namespaces: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: >- - Get a list of available AWS CloudWatch namespaces that can send metrics - to Datadog. - operationId: ListAWSNamespaces + description: Retrieve the configuration currently stored for a given integration in the caller's organization. + operationId: GetEntityIntegrationConfig + parameters: + - $ref: '#/components/parameters/EntityIntegrationConfigID' responses: '200': content: application/json: + example: + data: + attributes: + config: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + integration_id: github + org_id: 1234 + id: 01HJABCD12345678ABCDEFGHIJ + type: entity_integration_configs schema: - $ref: '#/components/schemas/AWSNamespacesResponse' - description: AWS Namespaces List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List available namespaces - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - /api/v2/integration/aws/generate_new_external_id: - post: - description: Generate a new external ID for AWS role-based authentication. - operationId: CreateNewAWSExternalID - responses: - '200': + $ref: '#/components/schemas/EntityIntegrationConfigResponse' + description: OK + '400': content: application/json: schema: - $ref: '#/components/schemas/AWSNewExternalIDResponse' - description: AWS External ID object + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Generate a new external ID + summary: Get an entity integration configuration tags: - - AWS Integration + - Entity Integration Configs x-permission: operator: OR permissions: - - aws_configuration_edit - /api/v2/integration/aws/iam_permissions: - get: - description: Get all AWS IAM permissions required for the AWS integration. - operationId: GetAWSIntegrationIAMPermissions + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Create or replace the configuration for a given integration in the caller's organization. The shape of `data.attributes.config` depends on the integration: + + - For `github`: `config` must contain an `enabled_repos` array of objects with `hostname`, `github_org_name`, and `repo_name`. + - For `jira`: `config` must contain an `enabled_projects` array of objects with `hostname`, `account_id`, and `project_key`. + - For `pagerduty`: `config` must contain an `accounts` array of objects with a required `enabled` boolean and an optional `subdomain` string. + operationId: UpdateEntityIntegrationConfig + parameters: + - $ref: '#/components/parameters/EntityIntegrationConfigID' + requestBody: + content: + application/json: + examples: + default: + summary: GitHub integration configuration + value: + data: + attributes: + config: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + type: entity_integration_config_requests + jira: + summary: Jira integration configuration + value: + data: + attributes: + config: + enabled_projects: + - account_id: '123456789' + hostname: mycompany.atlassian.net + project_key: AAA + type: entity_integration_config_requests + pagerduty: + summary: PagerDuty integration configuration + value: + data: + attributes: + config: + accounts: + - enabled: true + subdomain: mycompany + type: entity_integration_config_requests + schema: + $ref: '#/components/schemas/EntityIntegrationConfigRequest' + required: true responses: '200': content: application/json: + example: + data: + attributes: + config: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + integration_id: github + org_id: 1234 + id: 01HJABCD12345678ABCDEFGHIJ + type: entity_integration_configs schema: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse' - description: AWS IAM Permissions object - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS integration IAM permissions - tags: - - AWS Integration - /api/v2/integration/aws/logs/services: - get: - description: Get a list of AWS services that can send logs to Datadog. - operationId: ListAWSLogsServices - responses: - '200': + $ref: '#/components/schemas/EntityIntegrationConfigResponse' + description: OK + '400': content: application/json: schema: - $ref: '#/components/schemas/AWSLogsServicesResponse' - description: AWS Logs Services List object + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get list of AWS log ready services + summary: Create or update entity integration configuration tags: - - AWS Logs Integration + - Entity Integration Configs + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - aws_configuration_read - /api/v2/integration/gcp/accounts: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/elastic-cloud/accounts: get: - description: >- - List all GCP STS-enabled service accounts configured in your Datadog - account. - operationId: ListGCPSTSAccounts + description: List Elastic Cloud integration accounts. + operationId: ListElasticCloudIntegrationAccounts responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: env:prod,team:saasint + url: https://example.es.us-central1.gcp.cloud.es.io:9243 + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/GCPSTSServiceAccountsResponse' + $ref: '#/components/schemas/ElasticCloudIntegrationAccountsResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all GCP STS-enabled service accounts + summary: List Elastic Cloud integration accounts tags: - - GCP Integration + - Elastic Cloud Integration Accounts x-permission: operator: OR permissions: - - gcp_configuration_read + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Create a new entry within Datadog for your STS enabled service account. - operationId: CreateGCPSTSAccount + description: Create an Elastic Cloud integration account. + operationId: CreateElasticCloudIntegrationAccount requestBody: content: application/json: schema: - $ref: '#/components/schemas/GCPSTSServiceAccountCreateRequest' + $ref: '#/components/schemas/ElasticCloudIntegrationAccountCreateRequest' required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: env:prod,team:saasint + url: https://example.es.us-central1.gcp.cloud.es.io:9243 + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/GCPSTSServiceAccountResponse' - description: OK + $ref: '#/components/schemas/ElasticCloudIntegrationAccountResponse' + description: Created '400': $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new entry for your service account + summary: Create an Elastic Cloud integration account tags: - - GCP Integration + - Elastic Cloud Integration Accounts x-codegen-request-body-name: body x-permission: operator: OR permissions: - - gcp_configurations_manage - /api/v2/integration/gcp/accounts/{account_id}: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/elastic-cloud/accounts/{account_id}: delete: - description: Delete an STS enabled GCP account from within Datadog. - operationId: DeleteGCPSTSAccount + description: Delete an Elastic Cloud integration account. + operationId: DeleteElasticCloudIntegrationAccount parameters: - - $ref: '#/components/parameters/GCPSTSServiceAccountID' + - $ref: '#/components/parameters/IntegrationAccountIdParameter' responses: - '204': - description: No Content + '200': + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an STS enabled GCP Account + summary: Delete an Elastic Cloud integration account tags: - - GCP Integration + - Elastic Cloud Integration Accounts x-permission: operator: OR permissions: - - gcp_configurations_manage - patch: - description: Update an STS enabled service account. - operationId: UpdateGCPSTSAccount + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get an Elastic Cloud integration account. + operationId: GetElasticCloudIntegrationAccount parameters: - - $ref: '#/components/parameters/GCPSTSServiceAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequest' - required: true + - $ref: '#/components/parameters/IntegrationAccountIdParameter' responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: env:prod,team:saasint + url: https://example.es.us-central1.gcp.cloud.es.io:9243 + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/GCPSTSServiceAccountResponse' + $ref: '#/components/schemas/ElasticCloudIntegrationAccountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update STS Service Account + summary: Get an Elastic Cloud integration account tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_edit - /api/v2/integration/gcp/sts_delegate: - get: - description: >- - List your Datadog-GCP STS delegate account configured in your Datadog - account. - operationId: GetGCPSTSDelegate - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List delegate account - tags: - - GCP Integration - x-codegen-request-body-name: body + - Elastic Cloud Integration Accounts x-permission: operator: OR permissions: - - gcp_configuration_read - post: - description: Create a Datadog GCP principal. - operationId: MakeGCPSTSDelegate + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an Elastic Cloud integration account. Only the fields provided are changed. + operationId: UpdateElasticCloudIntegrationAccount + parameters: + - $ref: '#/components/parameters/IntegrationAccountIdParameter' requestBody: content: application/json: schema: - example: {} - type: object - description: Create a delegate service account within Datadog. - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Datadog GCP principal - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_edit - /api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name}: - get: - description: >- - Get the tenant, team, and channel ID of a channel in the Datadog - Microsoft Teams integration. - operationId: GetChannelByName - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantNamePathParameter' - - $ref: '#/components/parameters/MicrosoftTeamsTeamNamePathParameter' - - $ref: '#/components/parameters/MicrosoftTeamsChannelNamePathParameter' + $ref: '#/components/schemas/ElasticCloudIntegrationAccountUpdateRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: datadog + dataflows: + elastic-cloud-metrics: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + elastic-cloud-primary-shard-stats: + enabled: false + name: elastic-cloud-prod + settings: + tags: env:prod,team:saasint + url: https://example.es.us-central1.gcp.cloud.es.io:9243 + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/MicrosoftTeamsGetChannelByNameResponse' + $ref: '#/components/schemas/ElasticCloudIntegrationAccountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -433,26 +588,51 @@ paths: $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get channel information by name + summary: Update an Elastic Cloud integration account tags: - - Microsoft Teams Integration - /api/v2/integration/ms-teams/configuration/tenant-based-handles: + - Elastic Cloud Integration Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/twilio/accounts: get: - description: >- - Get a list of all tenant-based handles from the Datadog Microsoft Teams - integration. - operationId: ListTenantBasedHandles - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantIDQueryParameter' - - $ref: '#/components/parameters/MicrosoftTeamsHandleNameQueryParameter' + description: List Twilio integration accounts. + operationId: ListTwilioIntegrationAccounts responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandlesResponse' + $ref: '#/components/schemas/TwilioIntegrationAccountsResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -460,84 +640,133 @@ paths: $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all tenant-based handles + summary: List Twilio integration accounts tags: - - Microsoft Teams Integration + - Twilio Integration Accounts + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Create a tenant-based handle in the Datadog Microsoft Teams integration. - operationId: CreateTenantBasedHandle + description: Create a Twilio integration account. + operationId: CreateTwilioIntegrationAccount requestBody: content: application/json: schema: - $ref: >- - #/components/schemas/MicrosoftTeamsCreateTenantBasedHandleRequest - description: Tenant-based handle payload. + $ref: '#/components/schemas/TwilioIntegrationAccountCreateRequest' required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: CREATED + $ref: '#/components/schemas/TwilioIntegrationAccountResponse' + description: Created '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create tenant-based handle + summary: Create a Twilio integration account tags: - - Microsoft Teams Integration + - Twilio Integration Accounts x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id}: + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration-interfaces/twilio/accounts/{account_id}: delete: - description: >- - Delete a tenant-based handle from the Datadog Microsoft Teams - integration. - operationId: DeleteTenantBasedHandle + description: Delete a Twilio integration account. + operationId: DeleteTwilioIntegrationAccount parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter + - $ref: '#/components/parameters/IntegrationAccountIdParameter' responses: - '204': + '200': description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete tenant-based handle + summary: Delete a Twilio integration account tags: - - Microsoft Teams Integration + - Twilio Integration Accounts + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: >- - Get the tenant, team, and channel information of a tenant-based handle - from the Datadog Microsoft Teams integration. - operationId: GetTenantBasedHandle + description: Get a Twilio integration account. + operationId: GetTwilioIntegrationAccount parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter + - $ref: '#/components/parameters/IntegrationAccountIdParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' + $ref: '#/components/schemas/TwilioIntegrationAccountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -545,35 +774,55 @@ paths: $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get tenant-based handle information + summary: Get a Twilio integration account tags: - - Microsoft Teams Integration + - Twilio Integration Accounts + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). patch: - description: >- - Update a tenant-based handle from the Datadog Microsoft Teams - integration. - operationId: UpdateTenantBasedHandle + description: Update a Twilio integration account. Only the fields provided are changed. + operationId: UpdateTwilioIntegrationAccount parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter + - $ref: '#/components/parameters/IntegrationAccountIdParameter' requestBody: content: application/json: schema: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequest - description: Tenant-based handle payload. + $ref: '#/components/schemas/TwilioIntegrationAccountUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + authentication: + auth_type: basic + username: SKxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + dataflows: + twilio-messages-logs: + enabled: true + status: + health: DATAFLOW_HEALTH_OK + updated_at: '2026-06-25T08:30:50Z' + name: twilio-prod + settings: + account_sid: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + censor_logs: true + id: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: integration-account schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' + $ref: '#/components/schemas/TwilioIntegrationAccountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -581,304 +830,459 @@ paths: $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update tenant-based handle + summary: Update a Twilio integration account tags: - - Microsoft Teams Integration + - Twilio Integration Accounts x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/workflows-webhook-handles: + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/aws/accounts: get: - description: >- - Get a list of all Workflows webhook handles from the Datadog Microsoft - Teams integration. - operationId: ListWorkflowsWebhookHandles + description: Get a list of AWS Account Integration Configs. + operationId: ListAWSAccounts parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter + - description: |- + Optional query parameter to filter accounts by AWS Account ID. + If not provided, all accounts are returned. + example: '123456789012' + in: query + name: aws_account_id + required: false + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: [] schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandlesResponse - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSAccountsResponse' + description: AWS Accounts List object '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workflows webhook handles + summary: List all AWS integrations tags: - - Microsoft Teams Integration + - AWS Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read post: - description: >- - Create a Workflows webhook handle in the Datadog Microsoft Teams - integration. - operationId: CreateWorkflowsWebhookHandle + description: Create a new AWS Account Integration Config. + operationId: CreateAWSAccount requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_tags: + - env:prod + auth_config: + access_key_id: ACCESS_KEY_ID + secret_access_key: SECRET_ACCESS_KEY + aws_account_id: '123456789012' + aws_partition: aws + aws_regions: + include_all: true + logs_config: + lambda_forwarder: + lambdas: + - arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder + sources: + - s3 + metrics_config: + automute_enabled: true + collect_cloudwatch_alarms: false + collect_custom_metrics: false + enabled: true + metric_name_filters: + - include_only: + - aws.ec2.network_in + namespace: AWS/EC2 + tag_filters: + - namespace: AWS/EC2 + resources_config: + cloud_security_posture_management_collection: false + extended_collection: true + type: account schema: - $ref: >- - #/components/schemas/MicrosoftTeamsCreateWorkflowsWebhookHandleRequest - description: Workflows Webhook handle payload. + $ref: '#/components/schemas/AWSAccountCreateRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + auth_config: + access_key_id: ACCESS_KEY_ID + aws_account_id: '123456789012' + aws_partition: aws + id: 00000000-0000-0000-0000-000000000001 + type: account schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse - description: CREATED + $ref: '#/components/schemas/AWSAccountResponse' + description: AWS Account object '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '409': $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Workflows webhook handle + summary: Create an AWS integration tags: - - Microsoft Teams Integration + - AWS Integration x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id}: + x-permission: + operator: OR + permissions: + - aws_configurations_manage + /api/v2/integration/aws/accounts/{aws_account_config_id}: delete: - description: >- - Delete a Workflows webhook handle from the Datadog Microsoft Teams - integration. - operationId: DeleteWorkflowsWebhookHandle + description: Delete an AWS Account Integration Config by config ID. + operationId: DeleteAWSAccount parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' responses: '204': - description: OK + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Workflows webhook handle + summary: Delete an AWS integration tags: - - Microsoft Teams Integration + - AWS Integration + x-permission: + operator: OR + permissions: + - aws_configurations_manage get: - description: >- - Get the name of a Workflows webhook handle from the Datadog Microsoft - Teams integration. - operationId: GetWorkflowsWebhookHandle + description: Get an AWS Account Integration Config by config ID. + operationId: GetAWSAccount parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + auth_config: + access_key_id: ACCESS_KEY_ID + aws_account_id: '123456789012' + aws_partition: aws + id: 00000000-0000-0000-0000-000000000002 + type: account schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse - description: OK + $ref: '#/components/schemas/AWSAccountResponse' + description: AWS Account object '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Workflows webhook handle information + summary: Get an AWS integration by config ID tags: - - Microsoft Teams Integration + - AWS Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read patch: - description: >- - Update a Workflows webhook handle from the Datadog Microsoft Teams - integration. - operationId: UpdateWorkflowsWebhookHandle + description: Update an AWS Account Integration Config by config ID. + operationId: UpdateAWSAccount parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_tags: + - env:prod + auth_config: + access_key_id: ACCESS_KEY_ID + secret_access_key: SECRET_ACCESS_KEY + aws_account_id: '123456789012' + aws_partition: aws + aws_regions: + include_all: true + logs_config: + lambda_forwarder: + lambdas: + - arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder + sources: + - s3 + metrics_config: + automute_enabled: true + collect_cloudwatch_alarms: false + collect_custom_metrics: false + enabled: true + metric_name_filters: + - include_only: + - aws.ec2.network_in + namespace: AWS/EC2 + tag_filters: + - namespace: AWS/EC2 + resources_config: + cloud_security_posture_management_collection: false + extended_collection: true + id: 00000000-abcd-0001-0000-000000000000 + type: account schema: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest - description: Workflows Webhook handle payload. + $ref: '#/components/schemas/AWSAccountUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + auth_config: + access_key_id: ACCESS_KEY_ID + aws_account_id: '123456789012' + aws_partition: aws + id: 00000000-0000-0000-0000-000000000003 + type: account schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse - description: OK + $ref: '#/components/schemas/AWSAccountResponse' + description: AWS Account object '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Workflows webhook handle + summary: Update an AWS integration tags: - - Microsoft Teams Integration + - AWS Integration x-codegen-request-body-name: body - /api/v2/integration/opsgenie/services: - get: - description: Get a list of all services from the Datadog Opsgenie integration. - operationId: ListOpsgenieServices + x-permission: + operator: OR + permissions: + - aws_configuration_edit + /api/v2/integration/aws/accounts/{aws_account_config_id}/ccm_config: + delete: + description: |- + Delete the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: DeleteAWSAccountCCMConfig + parameters: + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServicesResponse' - description: OK + '204': + description: No Content '403': $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all service objects + summary: Delete AWS CCM config tags: - - Opsgenie Integration + - AWS Integration x-permission: operator: OR permissions: - - integrations_read - post: - description: Create a new service object in the Opsgenie integration. - operationId: CreateOpsgenieService - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceCreateRequest' - description: Opsgenie service payload - required: true + - aws_configuration_edit + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Get the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: GetAWSAccountCCMConfig + parameters: + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + id: 00000000-0000-0000-0000-000000000004 + type: ccm_config schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new service object - tags: - - Opsgenie Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integration/opsgenie/services/{integration_service_id}: - delete: - description: Delete a single service object in the Datadog Opsgenie integration. - operationId: DeleteOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSCcmConfigResponse' + description: AWS CCM Config object '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a single service object + summary: Get AWS CCM config tags: - - Opsgenie Integration + - AWS Integration x-permission: operator: OR permissions: - - manage_integrations - get: - description: Get a single service from the Datadog Opsgenie integration. - operationId: GetOpsgenieService + - aws_configuration_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: UpdateAWSAccountCCMConfig parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ccm_config: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + type: ccm_config + schema: + $ref: '#/components/schemas/AWSCcmConfigRequest' + description: Update a Cloud Cost Management config for an AWS Account Integration Config. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + id: 00000000-0000-0000-0000-000000000006 + type: ccm_config schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSCcmConfigResponse' + description: AWS CCM Config object '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a single service object + summary: Update AWS CCM config tags: - - Opsgenie Integration + - AWS Integration + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - integrations_read - patch: - description: Update a single service object in the Datadog Opsgenie integration. - operationId: UpdateOpsgenieService + - aws_configuration_edit + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report + (CUR) 2.0 by config ID. + operationId: CreateAWSAccountCCMConfig parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + ccm_config: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + type: ccm_config schema: - $ref: '#/components/schemas/OpsgenieServiceUpdateRequest' - description: Opsgenie service payload. + $ref: '#/components/schemas/AWSCcmConfigRequest' + description: Create a Cloud Cost Management config for an AWS Account Integration Config. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + data_export_configs: + - bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + report_type: CUR2.0 + id: 00000000-0000-0000-0000-000000000005 + type: ccm_config schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSCcmConfigResponse' + description: AWS CCM Config object '403': $ref: '#/components/responses/ForbiddenResponse' '404': @@ -887,521 +1291,849 @@ paths: $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a single service object + summary: Create AWS CCM config tags: - - Opsgenie Integration + - AWS Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - - manage_integrations - /api/v2/integrations/cloudflare/accounts: + - aws_configuration_edit + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/aws/accounts/{aws_account_config_id}/metric_name_filter_preview: get: - description: List Cloudflare accounts. - operationId: ListCloudflareAccounts + description: Preview which collected CloudWatch metrics would be filtered by the account's saved metric name filters. + operationId: GetAWSMetricNameFilterPreview + parameters: + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + namespaces: + - filters: + - match_count: 1 + pattern: aws.ec2.network_in + metrics: + - cw_name: NetworkIn + dd_names: + - filtered: true + name: aws.ec2.network_in + namespace: AWS/EC2 + id: 00000000-0000-0000-0000-000000000001 + type: metric_name_filter_preview schema: - $ref: '#/components/schemas/CloudflareAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSMetricNameFilterPreviewResponse' + description: AWS metric name filter preview result '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Cloudflare accounts + summary: Get AWS metric name filter preview tags: - - Cloudflare Integration + - AWS Integration x-permission: operator: OR permissions: - - integrations_read + - aws_configuration_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Create a Cloudflare account. - operationId: CreateCloudflareAccount + description: |- + Preview which collected CloudWatch metrics would be filtered by the supplied metric name filters. + The filters are not persisted. + operationId: PreviewAWSMetricNameFilter + parameters: + - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + metric_name_filters: + - exclude_only: + - aws.ec2.network_in + namespace: AWS/EC2 + type: metric_name_filter_preview schema: - $ref: '#/components/schemas/CloudflareAccountCreateRequest' + $ref: '#/components/schemas/AWSMetricNameFilterPreviewRequest' + description: The metric name filters to preview. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + namespaces: + - filters: + - match_count: 1 + pattern: aws.ec2.network_in + metrics: + - cw_name: NetworkIn + dd_names: + - filtered: true + name: aws.ec2.network_in + namespace: AWS/EC2 + id: 00000000-0000-0000-0000-000000000001 + type: metric_name_filter_preview schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: CREATED + $ref: '#/components/schemas/AWSMetricNameFilterPreviewResponse' + description: AWS metric name filter preview result '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Cloudflare account + summary: Preview AWS metric name filter tags: - - Cloudflare Integration + - AWS Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - - manage_integrations - /api/v2/integrations/cloudflare/accounts/{account_id}: - delete: - description: Delete a Cloudflare account. - operationId: DeleteCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Cloudflare account - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - manage_integrations + - aws_configuration_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/aws/available_namespaces: get: - description: Get a Cloudflare account. - operationId: GetCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string + description: Get a list of available AWS CloudWatch namespaces that can send metrics to Datadog. + operationId: ListAWSNamespaces responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + namespaces: + - AWS/EC2 + id: namespaces + type: namespaces schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSNamespacesResponse' + description: AWS Namespaces List object '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Cloudflare account + summary: List available namespaces tags: - - Cloudflare Integration + - AWS Integration x-permission: operator: OR permissions: - - integrations_read - patch: - description: Update a Cloudflare account. - operationId: UpdateCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string + - aws_configuration_read + /api/v2/integration/aws/event_bridge: + delete: + description: Delete an Amazon EventBridge source. + operationId: DeleteAWSEventBridgeSource requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_id: '123456789012' + event_generator_name: app-alerts-zyxw3210 + region: us-east-1 + type: event_bridge schema: - $ref: '#/components/schemas/CloudflareAccountUpdateRequest' + $ref: '#/components/schemas/AWSEventBridgeDeleteRequest' + description: Delete the Amazon EventBridge source with the given name, region, and associated AWS account. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + status: empty + id: delete_event_bridge + type: event_bridge schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: OK + $ref: '#/components/schemas/AWSEventBridgeDeleteResponse' + description: Amazon EventBridge source deleted. '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Cloudflare account + summary: Delete an Amazon EventBridge source tags: - - Cloudflare Integration + - AWS Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - manage_integrations - /api/v2/integrations/confluent-cloud/accounts: get: - description: List Confluent accounts. - operationId: ListConfluentAccount + description: Get all Amazon EventBridge sources. + operationId: ListAWSEventBridgeSources responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + accounts: [] + is_installed: true + id: get_event_bridge + type: event_bridge schema: - $ref: '#/components/schemas/ConfluentAccountsResponse' - description: OK + $ref: '#/components/schemas/AWSEventBridgeListResponse' + description: Amazon EventBridge sources list. '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Confluent accounts + summary: Get all Amazon EventBridge sources tags: - - Confluent Cloud + - AWS Integration x-permission: operator: OR permissions: - integrations_read post: - description: Create a Confluent account. - operationId: CreateConfluentAccount + description: Create an Amazon EventBridge source. + operationId: CreateAWSEventBridgeSource requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_id: '123456789012' + create_event_bus: true + event_generator_name: app-alerts + region: us-east-1 + type: event_bridge schema: - $ref: '#/components/schemas/ConfluentAccountCreateRequest' - description: Confluent payload + $ref: '#/components/schemas/AWSEventBridgeCreateRequest' + description: Create an Amazon EventBridge source for an AWS account with a given name and region. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + event_source_name: app-alerts-zyxw3210 + has_bus: true + region: us-east-1 + status: created + id: create_event_bridge + type: event_bridge schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK + $ref: '#/components/schemas/AWSEventBridgeCreateResponse' + description: Amazon EventBridge source created. '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Confluent account + summary: Create an Amazon EventBridge source tags: - - Confluent Cloud + - AWS Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}: - delete: - description: Delete a Confluent account with the provided account ID. - operationId: DeleteConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' + /api/v2/integration/aws/generate_new_external_id: + post: + description: Generate a new external ID for AWS role-based authentication. + operationId: CreateNewAWSExternalID responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + external_id: abc-123 + id: external_id + type: external_id + schema: + $ref: '#/components/schemas/AWSNewExternalIDResponse' + description: AWS External ID object '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Confluent account + summary: Generate a new external ID tags: - - Confluent Cloud + - AWS Integration x-permission: operator: OR permissions: - - manage_integrations + - aws_configuration_edit + /api/v2/integration/aws/iam_permissions: get: - description: Get the Confluent account with the provided account ID. - operationId: GetConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' + description: Get all AWS IAM permissions required for the AWS integration. + operationId: GetAWSIntegrationIAMPermissions responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + permissions: + - account:GetContactInformation + id: permissions + type: permissions schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse' + description: AWS IAM Permissions object + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get AWS integration IAM permissions + tags: + - AWS Integration + /api/v2/integration/aws/iam_permissions/resource_collection: + get: + description: Get all resource collection AWS IAM permissions required for the AWS integration. + operationId: GetAWSIntegrationIAMPermissionsResourceCollection + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + permissions: + - account:GetContactInformation + id: permissions + type: permissions + schema: + $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse' + description: AWS integration resource collection IAM permissions. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get resource collection IAM permissions + tags: + - AWS Integration + /api/v2/integration/aws/iam_permissions/standard: + get: + description: Get all standard AWS IAM permissions required for the AWS integration. + operationId: GetAWSIntegrationIAMPermissionsStandard + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + permissions: + - account:GetContactInformation + id: permissions + type: permissions + schema: + $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse' + description: AWS integration standard IAM permissions. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get AWS integration standard IAM permissions + tags: + - AWS Integration + /api/v2/integration/aws/logs/services: + get: + description: Get a list of AWS services that can send logs to Datadog. + operationId: ListAWSLogsServices + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + logs_services: + - s3 + id: logs_services + type: logs_services + schema: + $ref: '#/components/schemas/AWSLogsServicesResponse' + description: AWS Logs Services List object '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Confluent account + summary: Get list of AWS log ready services tags: - - Confluent Cloud + - AWS Logs Integration x-permission: operator: OR permissions: - - integrations_read - patch: - description: Update the Confluent account with the provided account ID. - operationId: UpdateConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' + - aws_configuration_read + /api/v2/integration/aws/validate_ccm_config: + post: + description: |- + Validate a Cloud Cost Management config for an AWS account using Cost and Usage Report + (CUR) 2.0 against Datadog's ingest requirements without persisting it. + operationId: ValidateAWSCCMConfig requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + account_id: '123456789012' + bucket_name: billing + bucket_region: us-east-1 + report_name: cost-and-usage-report + report_prefix: reports + type: ccm_config_validation schema: - $ref: '#/components/schemas/ConfluentAccountUpdateRequest' - description: Confluent payload + $ref: '#/components/schemas/AWSCcmConfigValidationRequest' + description: Validate a Cloud Cost Management config for an AWS account integration config. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + account_id: '123456789012' + issues: + - code: EXPORT_NOT_FOUND + description: no CUR 2.0 export named "cost-and-usage-report" found + id: ccm_config_validation + type: ccm_config_validation schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK + $ref: '#/components/schemas/AWSCcmConfigValidationResponse' + description: AWS CCM Config validation result '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Confluent account + '503': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Service Unavailable + summary: Validate AWS CCM config tags: - - Confluent Cloud + - AWS Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources: + - cloud_cost_management_read + - cloud_cost_management_write + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/gcp/accounts: get: - description: >- - Get a Confluent resource for the account associated with the provided - ID. - operationId: ListConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' + description: List all GCP STS-enabled service accounts configured in your Datadog account. + operationId: ListGCPSTSAccounts responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + automute: true + client_email: service-account@test-project.iam.gserviceaccount.com + is_cspm_enabled: true + resource_collection_enabled: true + id: abc-123 + type: gcp_service_account schema: - $ref: '#/components/schemas/ConfluentResourcesResponse' + $ref: '#/components/schemas/GCPSTSServiceAccountsResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Confluent Account resources + summary: List all GCP STS-enabled service accounts tags: - - Confluent Cloud + - GCP Integration x-permission: operator: OR permissions: - - integrations_read + - gcp_configuration_read post: - description: >- - Create a Confluent resource for the account associated with the provided - ID. - operationId: CreateConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' + description: Create a new entry within Datadog for your STS enabled service account. + operationId: CreateGCPSTSAccount requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + client_email: datadog-service-account@test-project.iam.gserviceaccount.com + cloud_run_revision_filters: + - $KEY:$VALUE + host_filters: + - $KEY:$VALUE + is_global_location_enabled: true + is_per_project_quota_enabled: true + is_resource_change_collection_enabled: true + is_security_command_center_enabled: true + metric_namespace_configs: + - disabled: true + id: aiplatform + - filters: + - snapshot.* + - '!*_by_region' + id: pubsub + monitored_resource_configs: + - filters: + - $KEY:$VALUE + type: gce_instance + region_filter_configs: + - nam4 + - europe-north1 + type: gcp_service_account schema: - $ref: '#/components/schemas/ConfluentResourceRequest' - description: Confluent payload + $ref: '#/components/schemas/GCPSTSServiceAccountCreateRequest' required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + automute: true + client_email: service-account@test-project.iam.gserviceaccount.com + is_cspm_enabled: true + resource_collection_enabled: true + id: abc-123 + type: gcp_service_account schema: - $ref: '#/components/schemas/ConfluentResourceResponse' + $ref: '#/components/schemas/GCPSTSServiceAccountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add resource to Confluent account + summary: Create a new entry for your service account tags: - - Confluent Cloud + - GCP Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id}: + - gcp_configurations_manage + /api/v2/integration/gcp/accounts/{account_id}: delete: - description: >- - Delete a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: DeleteConfluentResource + description: Delete an STS enabled GCP account from within Datadog. + operationId: DeleteGCPSTSAccount parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' + - $ref: '#/components/parameters/GCPSTSServiceAccountID' responses: '204': - description: OK + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete resource from Confluent account + summary: Delete an STS enabled GCP Account tags: - - Confluent Cloud + - GCP Integration x-permission: operator: OR permissions: - - manage_integrations - get: - description: >- - Get a Confluent resource with the provided resource id for the account - associated with the provided account ID. - operationId: GetConfluentResource + - gcp_configurations_manage + patch: + description: Update an STS enabled service account. + operationId: UpdateGCPSTSAccount parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' + - $ref: '#/components/parameters/GCPSTSServiceAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + client_email: datadog-service-account@test-project.iam.gserviceaccount.com + cloud_run_revision_filters: + - $KEY:$VALUE + host_filters: + - $KEY:$VALUE + is_global_location_enabled: true + is_per_project_quota_enabled: true + is_resource_change_collection_enabled: true + is_security_command_center_enabled: true + metric_namespace_configs: + - disabled: true + id: aiplatform + - filters: + - snapshot.* + - '!*_by_region' + id: pubsub + monitored_resource_configs: + - filters: + - $KEY:$VALUE + type: gce_instance + region_filter_configs: + - nam4 + - europe-north1 + id: d291291f-12c2-22g4-j290-123456678897 + type: gcp_service_account + schema: + $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequest' + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + automute: true + client_email: service-account@test-project.iam.gserviceaccount.com + is_cspm_enabled: true + resource_collection_enabled: true + id: abc-123 + type: gcp_service_account schema: - $ref: '#/components/schemas/ConfluentResourceResponse' + $ref: '#/components/schemas/GCPSTSServiceAccountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get resource from Confluent account + summary: Update STS Service Account tags: - - Confluent Cloud + - GCP Integration + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - integrations_read - patch: - description: >- - Update a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: UpdateConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' + - gcp_configuration_edit + /api/v2/integration/gcp/sts_delegate: + get: + description: List your Datadog-GCP STS delegate account configured in your Datadog account. + operationId: GetGCPSTSDelegate + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + delegate_account_email: test@example.com + id: abc-123 + type: gcp_sts_delegate + schema: + $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List delegate account + tags: + - GCP Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - gcp_configuration_read + post: + description: Create a Datadog GCP principal. + operationId: MakeGCPSTSDelegate requestBody: content: application/json: + examples: + default: + value: {} schema: - $ref: '#/components/schemas/ConfluentResourceRequest' - description: Confluent payload - required: true + example: {} + type: string + description: (opaque JSON object) + description: Create a delegate service account within Datadog. + required: false responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + delegate_account_email: test@example.com + id: abc-123 + type: gcp_sts_delegate schema: - $ref: '#/components/schemas/ConfluentResourceResponse' + $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update resource in Confluent account + summary: Create a Datadog GCP principal tags: - - Confluent Cloud + - GCP Integration x-codegen-request-body-name: body x-permission: operator: OR permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts: + - gcp_configuration_edit + /api/v2/integration/google-chat/organizations: get: - description: List Fastly accounts. - operationId: ListFastlyAccounts + description: Get a list of all Google Chat organization bindings in the Datadog Google Chat integration. + operationId: ListGoogleChatOrganizations responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + domain_id: fake-domain-id + domain_name: example.com + id: 00000000-0000-0000-0000-000000000001 + relationships: + delegated_user: + data: + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-delegated-user + type: google-chat-organization + - attributes: + domain_id: fake-domain-id-2 + domain_name: example2.com + id: 00000000-0000-0000-0000-000000000003 + type: google-chat-organization schema: - $ref: '#/components/schemas/FastlyAccountsResponse' + $ref: '#/components/schemas/GoogleChatOrganizationsResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Fastly accounts + summary: Get all Google Chat organization bindings tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Fastly account. - operationId: CreateFastlyAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountCreateRequest' - required: true + - Google Chat Integration + /api/v2/integration/google-chat/organizations/app/named-spaces/{domain_name}/{space_display_name}: + get: + description: Get the resource name and organization binding ID of a space in the Datadog Google Chat integration. + operationId: GetSpaceByDisplayName + parameters: + - $ref: '#/components/parameters/GoogleChatOrganizationDomainNamePathParameter' + - $ref: '#/components/parameters/GoogleChatOrganizationSpaceDisplayNamePathParameter' responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + display_name: General + organization_binding_id: 00000000-0000-0000-0000-000000000006 + resource_name: spaces/AAAAAAAAA + space_uri: https://chat.google.com/room/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000005 + type: google-chat-app-named-space schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: CREATED + $ref: '#/components/schemas/GoogleChatAppNamedSpaceResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': @@ -1410,20 +2142,15 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Fastly account + summary: Get space information by display name tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}: + - Google Chat Integration + /api/v2/integration/google-chat/organizations/{organization_binding_id}: delete: - description: Delete a Fastly account. - operationId: DeleteFastlyAccount + description: Delete a Google Chat organization binding from the Datadog Google Chat integration. + operationId: DeleteGoogleChatOrganization parameters: - - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' responses: '204': description: OK @@ -1431,90 +2158,119 @@ paths: $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Fastly account + summary: Delete a Google Chat organization binding tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - manage_integrations + - Google Chat Integration get: - description: Get a Fastly account. - operationId: GetFastlyAccount + description: Get a Google Chat organization binding from the Datadog Google Chat integration. + operationId: GetGoogleChatOrganization parameters: - - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + domain_id: fake-domain-id + domain_name: example.com + id: 00000000-0000-0000-0000-000000000001 + relationships: + delegated_user: + data: + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-delegated-user + type: google-chat-organization schema: - $ref: '#/components/schemas/FastlyAccountResponse' + $ref: '#/components/schemas/GoogleChatOrganizationResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Fastly account + summary: Get a Google Chat organization binding tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Fastly account. - operationId: UpdateFastlyAccount + - Google Chat Integration + /api/v2/integration/google-chat/organizations/{organization_binding_id}/delegated-user: + delete: + description: Delete the delegated user for a Google Chat organization binding from the Datadog Google Chat integration. + operationId: DeleteGoogleChatDelegatedUser parameters: - - $ref: '#/components/parameters/FastlyAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountUpdateRequest' - required: true + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete the delegated user + tags: + - Google Chat Integration + get: + description: Get the delegated user for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: GetGoogleChatDelegatedUser + parameters: + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + display_name: fake-display-name + email: user@example.com + features: + - incident-automatic-space-creation + - workflow-space-creation + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-delegated-user schema: - $ref: '#/components/schemas/FastlyAccountResponse' + $ref: '#/components/schemas/GoogleChatDelegatedUserResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Fastly account + summary: Get the delegated user tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}/services: + - Google Chat Integration + /api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles: get: - description: List Fastly services for an account. - operationId: ListFastlyServices + description: Get a list of all organization handles from the Datadog Google Chat integration. + operationId: ListOrganizationHandles parameters: - - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000001 + type: google-chat-organization-handle schema: - $ref: '#/components/schemas/FastlyServicesResponse' + $ref: '#/components/schemas/GoogleChatOrganizationHandlesResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1524,30 +2280,45 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Fastly services + summary: Get all organization handles tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read + - Google Chat Integration post: - description: Create a Fastly service for an account. - operationId: CreateFastlyService + description: Create an organization handle in the Datadog Google Chat integration. + operationId: CreateOrganizationHandle parameters: - - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + space_resource_name: spaces/AAAAAAAAA + type: google-chat-organization-handle schema: - $ref: '#/components/schemas/FastlyServiceRequest' + $ref: '#/components/schemas/GoogleChatCreateOrganizationHandleRequest' + description: Organization handle payload. required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000002 + type: google-chat-organization-handle schema: - $ref: '#/components/schemas/FastlyServiceResponse' + $ref: '#/components/schemas/GoogleChatOrganizationHandleResponse' description: CREATED '400': $ref: '#/components/responses/BadRequestResponse' @@ -1555,23 +2326,31 @@ paths: $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Fastly service + summary: Create organization handle tags: - - Fastly Integration + - Google Chat Integration x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}/services/{service_id}: + /api/v2/integration/google-chat/organizations/{organization_binding_id}/organization-handles/{handle_id}: delete: - description: Delete a Fastly service for an account. - operationId: DeleteFastlyService + description: Delete an organization handle from the Datadog Google Chat integration. + operationId: DeleteOrganizationHandle parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' + - description: Your organization binding ID. + in: path + name: organization_binding_id + required: true + schema: + type: string + - description: Your organization handle ID. + in: path + name: handle_id + required: true + schema: + type: string responses: '204': description: OK @@ -1579,29 +2358,33 @@ paths: $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Fastly service + summary: Delete organization handle tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - manage_integrations + - Google Chat Integration get: - description: Get a Fastly service for an account. - operationId: GetFastlyService + description: Get an organization handle from the Datadog Google Chat integration. + operationId: GetOrganizationHandle parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' + - $ref: '#/components/parameters/GoogleChatHandleIdPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000003 + type: google-chat-organization-handle schema: - $ref: '#/components/schemas/FastlyServiceResponse' + $ref: '#/components/schemas/GoogleChatOrganizationHandleResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1611,31 +2394,46 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Fastly service + summary: Get organization handle tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read + - Google Chat Integration patch: - description: Update a Fastly service for an account. - operationId: UpdateFastlyService + description: Update an organization handle from the Datadog Google Chat integration. + operationId: UpdateOrganizationHandle parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' + - $ref: '#/components/parameters/GoogleChatHandleIdPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + space_resource_name: spaces/AAAAAAAAA + type: google-chat-organization-handle schema: - $ref: '#/components/schemas/FastlyServiceRequest' + $ref: '#/components/schemas/GoogleChatUpdateOrganizationHandleRequest' + description: Organization handle payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + name: example-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-organization-handle schema: - $ref: '#/components/schemas/FastlyServiceResponse' + $ref: '#/components/schemas/GoogleChatOrganizationHandleResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1643,157 +2441,186 @@ paths: $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Fastly service + summary: Update organization handle tags: - - Fastly Integration + - Google Chat Integration x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/okta/accounts: + /api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences: get: - description: List Okta accounts. - operationId: ListOktaAccounts + description: Get a list of all target audiences for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: ListGoogleChatTargetAudiences + parameters: + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience + - attributes: + audience_id: fake-audience-id-2 + audience_name: fake-audience-name-2 + id: 00000000-0000-0000-0000-000000000005 + type: google-chat-target-audience schema: - $ref: '#/components/schemas/OktaAccountsResponse' + $ref: '#/components/schemas/GoogleChatTargetAudiencesResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Okta accounts + summary: Get all target audiences tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - integrations_read + - Google Chat Integration post: - description: Create an Okta account. - operationId: CreateOktaAccount + description: Create a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: CreateGoogleChatTargetAudience + parameters: + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + type: google-chat-target-audience schema: - $ref: '#/components/schemas/OktaAccountRequest' + $ref: '#/components/schemas/GoogleChatTargetAudienceCreateRequest' + description: Target audience payload. required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK + $ref: '#/components/schemas/GoogleChatTargetAudienceResponse' + description: CREATED '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Okta account + summary: Create a target audience tags: - - Okta Integration + - Google Chat Integration x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/okta/accounts/{account_id}: + /api/v2/integration/google-chat/organizations/{organization_binding_id}/target-audiences/{target_audience_id}: delete: - description: Delete an Okta account. - operationId: DeleteOktaAccount + description: Delete a target audience from a Google Chat organization binding in the Datadog Google Chat integration. + operationId: DeleteGoogleChatTargetAudience parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' + - $ref: '#/components/parameters/GoogleChatTargetAudienceIdPathParameter' responses: '204': description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Okta account + summary: Delete a target audience tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - manage_integrations + - Google Chat Integration get: - description: Get an Okta account. - operationId: GetOktaAccount + description: Get a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: GetGoogleChatTargetAudience parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' + - $ref: '#/components/parameters/GoogleChatTargetAudienceIdPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + audience_id: fake-audience-id-1 + audience_name: fake audience name 1 + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience schema: - $ref: '#/components/schemas/OktaAccountResponse' + $ref: '#/components/schemas/GoogleChatTargetAudienceResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Okta account + summary: Get a target audience tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - integrations_read + - Google Chat Integration patch: - description: Update an Okta account. - operationId: UpdateOktaAccount + description: Update a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + operationId: UpdateGoogleChatTargetAudience parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string + - $ref: '#/components/parameters/GoogleChatOrganizationBindingIdPathParameter' + - $ref: '#/components/parameters/GoogleChatTargetAudienceIdPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + audience_id: updated-audience-id + audience_name: updated-audience-name + type: google-chat-target-audience schema: - $ref: '#/components/schemas/OktaAccountUpdateRequest' + $ref: '#/components/schemas/GoogleChatTargetAudienceUpdateRequest' + description: Target audience payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + audience_id: updated-audience-id + audience_name: updated-audience-name + id: 00000000-0000-0000-0000-000000000004 + type: google-chat-target-audience schema: - $ref: '#/components/schemas/OktaAccountResponse' + $ref: '#/components/schemas/GoogleChatTargetAudienceResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1803,2169 +2630,15782 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Okta account + summary: Update a target audience tags: - - Okta Integration + - Google Chat Integration x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations -components: - schemas: - AWSAccountsResponse: - description: AWS Accounts response body. - properties: - data: - description: List of AWS Account Integration Configs. - items: - $ref: '#/components/schemas/AWSAccountResponseData' - type: array - required: - - data - type: object - AWSAccountCreateRequest: - description: AWS Account Create Request body. - properties: - data: - $ref: '#/components/schemas/AWSAccountCreateRequestData' - required: - - data - type: object - AWSAccountResponse: - description: AWS Account response body. - properties: - data: - $ref: '#/components/schemas/AWSAccountResponseData' - required: - - data - type: object - AWSAccountUpdateRequest: - description: AWS Account Update Request body. - properties: - data: - $ref: '#/components/schemas/AWSAccountUpdateRequestData' - required: - - data - type: object - AWSNamespacesResponse: - description: AWS Namespaces response body. - properties: - data: - $ref: '#/components/schemas/AWSNamespacesResponseData' - required: - - data - type: object + /api/v2/integration/jira/accounts: + get: + description: Get all Jira accounts for the organization. + operationId: ListJiraAccounts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + consumer_key: consumer-key-1 + instance_url: https://example.atlassian.net + id: account-1 + type: jira-account + meta: + public_key: c29tZSBkYXRhIHdpdGggACBhbmQg77u/ + schema: + $ref: '#/components/schemas/JiraAccountsResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Jira accounts + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/jira/accounts/{account_id}: + delete: + description: Delete a Jira account by ID. + operationId: DeleteJiraAccount + parameters: + - description: The ID of the Jira account to delete + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: account_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Jira account + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/jira/issue-templates: + get: + description: Get all Jira issue templates for the organization. + operationId: ListJiraIssueTemplates + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + fields: + description: + payload: Test Description + type: json + issue_type_id: '456' + name: Bug Report Template + project_id: '123' + id: abc-123 + type: jira-issue-template + schema: + $ref: '#/components/schemas/JiraIssueTemplatesResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Jira issue templates + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Jira issue template. + operationId: CreateJiraIssueTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Test + type: json + issue_type_id: '12730' + jira-account: + id: 80f16d40-1fba-486e-b1fc-983e6ca19bec + name: test-template + project_id: '10772' + type: jira-issue-template + schema: + $ref: '#/components/schemas/JiraIssueTemplateCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Test + type: json + issue_type_id: '456' + name: test-template + project_id: '123' + id: abc-123 + type: jira-issue-template + schema: + $ref: '#/components/schemas/JiraIssueTemplateResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/jira/issue-templates/{issue_template_id}: + delete: + description: Delete a Jira issue template by ID. + operationId: DeleteJiraIssueTemplate + parameters: + - description: The ID of the Jira issue template to delete + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: issue_template_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a Jira issue template by ID. + operationId: GetJiraIssueTemplate + parameters: + - description: The ID of the Jira issue template to retrieve + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: issue_template_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Test Description + type: json + issue_type_id: '456' + name: test-template + project_id: '123' + id: abc-123 + type: jira-issue-template + schema: + $ref: '#/components/schemas/JiraIssueTemplateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a Jira issue template by ID. + operationId: UpdateJiraIssueTemplate + parameters: + - description: The ID of the Jira issue template to update + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: issue_template_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Updated Description + type: json + name: test_template_updated + type: jira-issue-template + schema: + $ref: '#/components/schemas/JiraIssueTemplateUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + description: + payload: Updated Description + type: json + issue_type_id: '456' + name: test_template_updated + project_id: '123' + id: abc-123 + type: jira-issue-template + schema: + $ref: '#/components/schemas/JiraIssueTemplateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Jira issue template + tags: + - Jira Integration + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name}: + get: + description: Get the tenant, team, and channel ID of a channel in the Datadog Microsoft Teams integration. + operationId: GetChannelByName + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsTenantNamePathParameter' + - $ref: '#/components/parameters/MicrosoftTeamsTeamNamePathParameter' + - $ref: '#/components/parameters/MicrosoftTeamsChannelNamePathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + is_primary: true + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 + type: ms-teams-channel-info + schema: + $ref: '#/components/schemas/MicrosoftTeamsGetChannelByNameResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get channel information by name + tags: + - Microsoft Teams Integration + /api/v2/integration/ms-teams/configuration/tenant-based-handles: + get: + description: Get a list of all tenant-based handles from the Datadog Microsoft Teams integration. + operationId: ListTenantBasedHandles + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsTenantIDQueryParameter' + - $ref: '#/components/parameters/MicrosoftTeamsHandleNameQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: ms-teams-tenant-based-handle-info + schema: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandlesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all tenant-based handles + tags: + - Microsoft Teams Integration + post: + description: Create a tenant-based handle in the Datadog Microsoft Teams integration. + operationId: CreateTenantBasedHandle + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + type: tenant-based-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsCreateTenantBasedHandleRequest' + description: Tenant-based handle payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000002 + type: tenant-based-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create tenant-based handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id}: + delete: + description: Delete a tenant-based handle from the Datadog Microsoft Teams integration. + operationId: DeleteTenantBasedHandle + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete tenant-based handle + tags: + - Microsoft Teams Integration + get: + description: Get the tenant, team, and channel information of a tenant-based handle from the Datadog Microsoft Teams integration. + operationId: GetTenantBasedHandle + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000003 + type: tenant-based-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get tenant-based handle information + tags: + - Microsoft Teams Integration + patch: + description: Update a tenant-based handle from the Datadog Microsoft Teams integration. + operationId: UpdateTenantBasedHandle + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + type: tenant-based-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequest' + description: Tenant-based handle payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + channel_id: fake-channel-id + name: fake-handle-name-updated + team_id: 00000000-0000-0000-0000-000000000000 + tenant_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000004 + type: tenant-based-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update tenant-based handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/ms-teams/configuration/user-binding/{tenant_id}: + delete: + description: Delete the user binding for a given tenant from the Datadog Microsoft Teams integration. + operationId: DeleteMSTeamsUserBinding + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsTenantIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete user binding + tags: + - Microsoft Teams Integration + /api/v2/integration/ms-teams/configuration/workflows-webhook-handles: + get: + description: Get a list of all Workflows webhook handles from the Datadog Microsoft Teams integration. + operationId: ListWorkflowsWebhookHandles + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: fake-handle-name + id: 00000000-0000-0000-0000-000000000005 + type: workflows-webhook-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandlesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all Workflows webhook handles + tags: + - Microsoft Teams Integration + post: + description: Create a Workflows webhook handle in the Datadog Microsoft Teams integration. + operationId: CreateWorkflowsWebhookHandle + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + url: https://fake.url.com + type: workflows-webhook-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsCreateWorkflowsWebhookHandleRequest' + description: Workflows Webhook handle payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + id: 00000000-0000-0000-0000-000000000006 + type: workflows-webhook-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Workflows webhook handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id}: + delete: + description: Delete a Workflows webhook handle from the Datadog Microsoft Teams integration. + operationId: DeleteWorkflowsWebhookHandle + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Workflows webhook handle + tags: + - Microsoft Teams Integration + get: + description: Get the name of a Workflows webhook handle from the Datadog Microsoft Teams integration. + operationId: GetWorkflowsWebhookHandle + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + id: 00000000-0000-0000-0000-000000000007 + type: workflows-webhook-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Workflows webhook handle information + tags: + - Microsoft Teams Integration + patch: + description: Update a Workflows webhook handle from the Datadog Microsoft Teams integration. + operationId: UpdateWorkflowsWebhookHandle + parameters: + - $ref: '#/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name + url: https://fake.url.com + type: workflows-webhook-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest' + description: Workflows Webhook handle payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: fake-handle-name-updated + id: 00000000-0000-0000-0000-000000000008 + type: workflows-webhook-handle + schema: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '412': + $ref: '#/components/responses/PreconditionFailedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Workflows webhook handle + tags: + - Microsoft Teams Integration + x-codegen-request-body-name: body + /api/v2/integration/oci/products: + get: + description: Lists the products for a given tenancy. Returns the enabled/disabled status of Datadog products (such as Cloud Security Posture Management) for specific OCI tenancies. + operationId: ListTenancyProducts + parameters: + - description: Comma-separated list of product keys to filter by. + in: query + name: productKeys + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + products: + - enabled: true + product_key: CLOUD_SECURITY_POSTURE_MANAGEMENT + id: ocid.tenancy.test + type: oci_tenancy_product + schema: + $ref: '#/components/schemas/TenancyProductsList' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List tenancy products + tags: + - OCI Integration + /api/v2/integration/oci/tenancies: + get: + description: Get a list of all configured OCI tenancy integrations. Returns basic information about each tenancy including authentication credentials, region settings, and collection preferences for metrics, logs, and resources. + operationId: GetTenancyConfigs + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: '#/components/schemas/TenancyConfigList' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get tenancy configs + tags: + - OCI Integration + x-unstable: '**Note**: This endpoint may be subject to changes.' + post: + description: 'Create a new tenancy config to establish monitoring and data collection from your OCI environment. Requires OCI authentication credentials and tenancy details. Warning: Datadog recommends interacting with this endpoint only through the Datadog web UI to ensure all necessary OCI resources have been created and configured properly.' + operationId: CreateTenancyConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_credentials: + fingerprint: '' + private_key: + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: '#/components/schemas/CreateTenancyConfigRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: '#/components/schemas/TenancyConfig' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create tenancy config + tags: + - OCI Integration + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/integration/oci/tenancies/{tenancy_ocid}: + delete: + description: Delete an existing tenancy config. This will stop all data collection from the specified OCI tenancy and remove the stored configuration. This operation cannot be undone. + operationId: DeleteTenancyConfig + parameters: + - description: The OCID of the tenancy config to delete. + in: path + name: tenancy_ocid + required: true + schema: + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete tenancy config + tags: + - OCI Integration + get: + description: Get a single tenancy config object by its OCID. Returns detailed configuration including authentication credentials, enabled services, region settings, and collection preferences. + operationId: GetTenancyConfig + parameters: + - description: The OCID of the tenancy config to retrieve. + in: path + name: tenancy_ocid + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: '#/components/schemas/TenancyConfig' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get tenancy config + tags: + - OCI Integration + patch: + description: 'Update an existing tenancy config. You can modify authentication credentials, enable/disable collection types, update service filters, and change region settings. Warning: We recommend using the Datadog web UI to avoid unintended update effects.' + operationId: UpdateTenancyConfig + parameters: + - description: The OCID of the tenancy config to update. + in: path + name: tenancy_ocid + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_credentials: + fingerprint: '' + private_key: + cost_collection_enabled: true + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: '#/components/schemas/UpdateTenancyConfigRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + cost_collection_enabled: true + home_region: us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + schema: + $ref: '#/components/schemas/TenancyConfig' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update tenancy config + tags: + - OCI Integration + /api/v2/integration/opsgenie/accounts: + get: + description: Get a list of all Opsgenie accounts from the Datadog Opsgenie integration. + operationId: ListOpsgenieAccounts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + region: us + id: 00000000-0000-0000-0000-000000000001 + type: opsgenie-account + schema: + $ref: '#/components/schemas/OpsgenieAccountsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all Opsgenie accounts + tags: + - Opsgenie Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a new Opsgenie account in the Datadog Opsgenie integration. + operationId: CreateOpsgenieAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + region: us + type: opsgenie-account + schema: + $ref: '#/components/schemas/OpsgenieAccountCreateRequest' + description: Opsgenie account payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + region: us + id: 00000000-0000-0000-0000-000000000002 + type: opsgenie-account + schema: + $ref: '#/components/schemas/OpsgenieAccountResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a new Opsgenie account + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/opsgenie/accounts/{account_id}: + delete: + description: Delete a single Opsgenie account from the Datadog Opsgenie integration. + operationId: DeleteOpsgenieAccount + parameters: + - $ref: '#/components/parameters/OpsgenieAccountIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an Opsgenie account + tags: + - Opsgenie Integration + x-permission: + operator: OR + permissions: + - manage_integrations + patch: + description: Update a single Opsgenie account in the Datadog Opsgenie integration. + operationId: UpdateOpsgenieAccount + parameters: + - $ref: '#/components/parameters/OpsgenieAccountIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + region: us + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: opsgenie-account + schema: + $ref: '#/components/schemas/OpsgenieAccountUpdateRequest' + description: Opsgenie account payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + region: us + id: 00000000-0000-0000-0000-000000000003 + type: opsgenie-account + schema: + $ref: '#/components/schemas/OpsgenieAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an Opsgenie account + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/opsgenie/services: + get: + description: Get a list of all services from the Datadog Opsgenie integration. + operationId: ListOpsgenieServices + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + custom_url: null + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000001 + type: opsgenie-service + schema: + $ref: '#/components/schemas/OpsgenieServicesResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all service objects + tags: + - Opsgenie Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a new service object in the Opsgenie integration. + operationId: CreateOpsgenieService + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + opsgenie_api_key: 00000000-0000-0000-0000-000000000000 + region: us + type: opsgenie-service + schema: + $ref: '#/components/schemas/OpsgenieServiceCreateRequest' + description: Opsgenie service payload + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000002 + type: opsgenie-service + schema: + $ref: '#/components/schemas/OpsgenieServiceResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a new service object + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/opsgenie/services/{integration_service_id}: + delete: + description: Delete a single service object in the Datadog Opsgenie integration. + operationId: DeleteOpsgenieService + parameters: + - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a single service object + tags: + - Opsgenie Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a single service from the Datadog Opsgenie integration. + operationId: GetOpsgenieService + parameters: + - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: null + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000003 + type: opsgenie-service + schema: + $ref: '#/components/schemas/OpsgenieServiceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a single service object + tags: + - Opsgenie Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update a single service object in the Datadog Opsgenie integration. + operationId: UpdateOpsgenieService + parameters: + - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + opsgenie_api_key: 00000000-0000-0000-0000-000000000000 + region: us + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: opsgenie-service + schema: + $ref: '#/components/schemas/OpsgenieServiceUpdateRequest' + description: Opsgenie service payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_url: https://example.com + name: fake-opsgenie-service-name + region: us + id: 00000000-0000-0000-0000-000000000004 + type: opsgenie-service + schema: + $ref: '#/components/schemas/OpsgenieServiceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a single service object + tags: + - Opsgenie Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/salesforce-incidents/incident-templates: + get: + description: Get all Salesforce incident templates configured for your organization. + operationId: GetIncidentTemplates + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: An incident was detected by Datadog monitors. + name: production-outage + owner_id: '005000000000000' + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: 'Datadog Incident: Production Outage' + id: 00000000-0000-0000-0000-000000000001 + type: salesforce-incidents-incident-template + schema: + $ref: '#/components/schemas/SalesforceIncidentsTemplatesResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all Salesforce incident templates + tags: + - Salesforce Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: |- + Create a new Salesforce incident template for your organization. Template + names must be unique within an organization. + operationId: CreateIncidentTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: An incident was detected by Datadog monitors. + name: production-outage + owner_id: '005000000000000' + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: 'Datadog Incident: Production Outage' + type: salesforce-incidents-incident-template + schema: + $ref: '#/components/schemas/SalesforceIncidentsTemplateCreateRequest' + description: Salesforce incident template payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: An incident was detected by Datadog monitors. + name: production-outage + owner_id: '005000000000000' + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: 'Datadog Incident: Production Outage' + id: 00000000-0000-0000-0000-000000000002 + type: salesforce-incidents-incident-template + schema: + $ref: '#/components/schemas/SalesforceIncidentsTemplateResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a Salesforce incident template + tags: + - Salesforce Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/salesforce-incidents/incident-templates/{incident_template_id}: + delete: + description: Delete a single Salesforce incident template from your organization. + operationId: DeleteIncidentTemplate + parameters: + - $ref: '#/components/parameters/SalesforceIncidentsTemplateIDPathParameter' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a Salesforce incident template + tags: + - Salesforce Integration + x-permission: + operator: OR + permissions: + - manage_integrations + patch: + description: Update a single Salesforce incident template in your organization. + operationId: UpdateIncidentTemplate + parameters: + - $ref: '#/components/parameters/SalesforceIncidentsTemplateIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: production-outage-renamed + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: salesforce-incidents-incident-template + schema: + $ref: '#/components/schemas/SalesforceIncidentsTemplateUpdateRequest' + description: Salesforce incident template payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: An incident was detected by Datadog monitors. + name: production-outage-renamed + owner_id: '005000000000000' + priority: High + salesforce_org_id: 596da4af-0563-4097-90ff-07230c3f9db3 + subject: 'Datadog Incident: Production Outage' + id: 00000000-0000-0000-0000-000000000003 + type: salesforce-incidents-incident-template + schema: + $ref: '#/components/schemas/SalesforceIncidentsTemplateResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a Salesforce incident template + tags: + - Salesforce Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/salesforce-incidents/organizations: + get: + description: |- + Get all Salesforce organizations connected to your Datadog organization + through the Salesforce integration. Salesforce organizations are connected + through the OAuth setup flow in the Datadog Salesforce integration page. + operationId: GetSalesforceOrganizations + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + instance_url: https://acme.my.salesforce.com + name: Acme Production Org + sfdc_org_id: 00D000000000000 + sfdc_org_type: Production + id: 00000000-0000-0000-0000-000000000001 + type: salesforce-incidents-org + schema: + $ref: '#/components/schemas/SalesforceIncidentsOrganizationsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all connected Salesforce organizations + tags: + - Salesforce Integration + x-permission: + operator: OR + permissions: + - integrations_read + /api/v2/integration/salesforce-incidents/organizations/{salesforce_org_id}: + delete: + description: |- + Disconnect a Salesforce organization from your Datadog organization. + This also deletes any incident templates referencing the organization. + operationId: DeleteSalesforceOrganization + parameters: + - $ref: '#/components/parameters/SalesforceIncidentsOrganizationIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a connected Salesforce organization + tags: + - Salesforce Integration + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/servicenow/assignment_groups/{instance_id}: + get: + description: Get all assignment groups for a ServiceNow instance. + operationId: ListServiceNowAssignmentGroups + parameters: + - description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: instance_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignment_group_name: Network Team + assignment_group_sys_id: abc-123 + instance_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: assignment_groups + schema: + $ref: '#/components/schemas/ServiceNowAssignmentGroupsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List ServiceNow assignment groups + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/business_services/{instance_id}: + get: + description: Get all business services for a ServiceNow instance. + operationId: ListServiceNowBusinessServices + parameters: + - description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: instance_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + instance_id: 00000000-0000-0000-0000-000000000001 + service_name: IT Support + service_sys_id: abc-123 + id: 00000000-0000-0000-0000-000000000001 + type: business_services + schema: + $ref: '#/components/schemas/ServiceNowBusinessServicesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List ServiceNow business services + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/handles: + get: + description: Get all ServiceNow templates for the organization. + operationId: ListServiceNowTemplates + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle_name: incident-template + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: '#/components/schemas/ServiceNowTemplatesResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List ServiceNow templates + tags: + - ServiceNow Integration + post: + description: Create a new ServiceNow template. + operationId: CreateServiceNowTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group_id: 65b3341b-0680-47f9-a6d4-134db45c603e + business_service_id: 65b3341b-0680-47f9-a6d4-134db45c603e + fields_mapping: + category: software + priority: '1' + handle_name: incident-template + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + servicenow_tablename: incident + user_id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: servicenow_templates + schema: + $ref: '#/components/schemas/ServiceNowTemplateCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + handle_name: incident-template + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: '#/components/schemas/ServiceNowTemplateResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create ServiceNow template + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/handles/{template_id}: + delete: + description: Delete a ServiceNow template by ID. + operationId: DeleteServiceNowTemplate + parameters: + - description: The ID of the ServiceNow template to delete + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete ServiceNow template + tags: + - ServiceNow Integration + get: + description: Get a ServiceNow template by ID. + operationId: GetServiceNowTemplate + parameters: + - description: The ID of the ServiceNow template to retrieve + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + handle_name: incident-template + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: '#/components/schemas/ServiceNowTemplateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get ServiceNow template + tags: + - ServiceNow Integration + put: + description: Update a ServiceNow template by ID. + operationId: UpdateServiceNowTemplate + parameters: + - description: The ID of the ServiceNow template to update + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: template_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group_id: 65b3341b-0680-47f9-a6d4-134db45c603e + business_service_id: 65b3341b-0680-47f9-a6d4-134db45c603e + fields_mapping: + category: hardware + priority: '2' + handle_name: incident-template-updated + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + servicenow_tablename: incident + user_id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: servicenow_templates + schema: + $ref: '#/components/schemas/ServiceNowTemplateUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + handle_name: incident-template-updated + instance_id: 00000000-0000-0000-0000-000000000001 + servicenow_tablename: incident + id: 00000000-0000-0000-0000-000000000001 + type: servicenow_templates + schema: + $ref: '#/components/schemas/ServiceNowTemplateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update ServiceNow template + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/instances: + get: + description: Get all ServiceNow instances for the organization. + operationId: ListServiceNowInstances + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + instance_name: my-servicenow-instance + id: 00000000-0000-0000-0000-000000000001 + type: instance + schema: + $ref: '#/components/schemas/ServiceNowInstancesResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List ServiceNow instances + tags: + - ServiceNow Integration + /api/v2/integration/servicenow/users/{instance_id}: + get: + description: Get all users for a ServiceNow instance. + operationId: ListServiceNowUsers + parameters: + - description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + in: path + name: instance_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + full_name: Example Name + instance_id: 00000000-0000-0000-0000-000000000001 + user_name: example-handle + user_sys_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: users + schema: + $ref: '#/components/schemas/ServiceNowUsersResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List ServiceNow users + tags: + - ServiceNow Integration + /api/v2/integration/slack/user-bindings: + get: + description: List all Slack user bindings for a given Datadog user from the Datadog Slack integration. + operationId: ListSlackUserBindings + parameters: + - $ref: '#/components/parameters/SlackUserUuidQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: T01234567 + type: team_id + - id: T09876543 + type: team_id + schema: + $ref: '#/components/schemas/SlackUserBindingsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Slack user bindings + tags: + - Slack Integration + /api/v2/integration/statuspage/account: + delete: + description: Delete the Statuspage account configured for your organization. + operationId: DeleteStatuspageAccount + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete the Statuspage account + tags: + - Statuspage Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get the Statuspage account configured for your organization. + operationId: GetStatuspageAccount + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: '*****' + type: statuspage-account + schema: + $ref: '#/components/schemas/StatuspageAccountResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the Statuspage account + tags: + - Statuspage Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update the Statuspage account configured for your organization. + operationId: UpdateStatuspageAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + type: statuspage-account + schema: + $ref: '#/components/schemas/StatuspageAccountUpdateRequest' + description: Statuspage account payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: '*****' + type: statuspage-account + schema: + $ref: '#/components/schemas/StatuspageAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update the Statuspage account + tags: + - Statuspage Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + post: + description: |- + Create a Statuspage account for your organization. Only one Statuspage + account can be configured per organization. + operationId: CreateStatuspageAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: 00000000-0000-0000-0000-000000000000 + type: statuspage-account + schema: + $ref: '#/components/schemas/StatuspageAccountCreateRequest' + description: Statuspage account payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: '*****' + type: statuspage-account + schema: + $ref: '#/components/schemas/StatuspageAccountResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create the Statuspage account + tags: + - Statuspage Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/statuspage/url_settings: + get: + description: Get all Statuspage URL settings configured for your organization. + operationId: ListStatuspageUrlSettings + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + custom_tags: team:collaboration-integrations + url: https://example.statuspage.io + id: 00000000-0000-0000-0000-000000000001 + type: statuspage-url-setting + schema: + $ref: '#/components/schemas/StatuspageUrlSettingsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all Statuspage URL settings + tags: + - Statuspage Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a Statuspage URL setting for your organization. + operationId: CreateStatuspageUrlSetting + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: team:collaboration-integrations + url: https://example.statuspage.io + type: statuspage-url-setting + schema: + $ref: '#/components/schemas/StatuspageUrlSettingCreateRequest' + description: Statuspage URL setting payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: team:collaboration-integrations + url: https://example.statuspage.io + id: 00000000-0000-0000-0000-000000000002 + type: statuspage-url-setting + schema: + $ref: '#/components/schemas/StatuspageUrlSettingResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a Statuspage URL setting + tags: + - Statuspage Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/statuspage/url_settings/{statuspage_url_setting_id}: + delete: + description: Delete a single Statuspage URL setting from your organization. + operationId: DeleteStatuspageUrlSetting + parameters: + - $ref: '#/components/parameters/StatuspageUrlSettingIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a Statuspage URL setting + tags: + - Statuspage Integration + x-permission: + operator: OR + permissions: + - manage_integrations + patch: + description: Update a single Statuspage URL setting in your organization. + operationId: UpdateStatuspageUrlSetting + parameters: + - $ref: '#/components/parameters/StatuspageUrlSettingIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: team:collaboration-integrations + url: https://example.statuspage.io + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: statuspage-url-setting + schema: + $ref: '#/components/schemas/StatuspageUrlSettingUpdateRequest' + description: Statuspage URL setting payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: team:collaboration-integrations + url: https://example.statuspage.io + id: 00000000-0000-0000-0000-000000000003 + type: statuspage-url-setting + schema: + $ref: '#/components/schemas/StatuspageUrlSettingResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a Statuspage URL setting + tags: + - Statuspage Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/webhooks/configuration/auth-method: + get: + description: |- + Get a list of all auth methods configured for the Webhooks integration in + your organization. + operationId: GetAllAuthMethods + parameters: + - $ref: '#/components/parameters/WebhooksAuthMethodInclude' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + protocol: oauth2-client-credentials + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2-client-credentials: + data: + id: 00000000-0000-0000-0000-000000000001 + type: webhooks-auth-method-oauth2-client-credentials + type: webhooks-auth-method + schema: + $ref: '#/components/schemas/WebhooksAuthMethodsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all auth methods + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - integrations_read + /api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials: + post: + description: |- + Create a new OAuth2 client credentials auth method for the Webhooks + integration. The `client_secret` is stored securely and never returned. + operationId: CreateOAuth2ClientCredentials + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + client_secret: my-client-secret + name: my-oauth2-auth + scope: read:webhooks write:webhooks + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsCreateRequest' + description: OAuth2 client credentials payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + name: my-oauth2-auth + protocol: oauth2-client-credentials + scope: read:webhooks write:webhooks + id: 00000000-0000-0000-0000-000000000002 + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an OAuth2 client credentials auth method + tags: + - Webhooks Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integration/webhooks/configuration/auth-method/oauth2-client-credentials/{auth_method_id}: + delete: + description: Delete an OAuth2 client credentials auth method by ID. + operationId: DeleteOAuth2ClientCredentials + parameters: + - $ref: '#/components/parameters/WebhooksAuthMethodIDPathParameter' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an OAuth2 client credentials auth method + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a single OAuth2 client credentials auth method by ID. + operationId: GetOAuth2ClientCredentials + parameters: + - $ref: '#/components/parameters/WebhooksAuthMethodIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + name: my-oauth2-auth + protocol: oauth2-client-credentials + scope: read:webhooks write:webhooks + id: 00000000-0000-0000-0000-000000000003 + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an OAuth2 client credentials auth method + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update an existing OAuth2 client credentials auth method. + operationId: UpdateOAuth2ClientCredentials + parameters: + - $ref: '#/components/parameters/WebhooksAuthMethodIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-oauth2-auth-renamed + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsUpdateRequest' + description: OAuth2 client credentials payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + access_token_url: https://example.com/oauth/token + audience: https://api.example.com + client_id: my-client-id + name: my-oauth2-auth-renamed + protocol: oauth2-client-credentials + scope: read:webhooks write:webhooks + id: 00000000-0000-0000-0000-000000000004 + type: webhooks-auth-method-oauth2-client-credentials + schema: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an OAuth2 client credentials auth method + tags: + - Webhooks Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations: + get: + operationId: ListIntegrations + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + categories: + - Category::Kubernetes + description: Calico is a networking and network security solution for containers. + installed: true + title: calico + id: calico + type: integration + schema: + $ref: '#/components/schemas/ListIntegrationsResponse' + description: Successful Response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Integrations + tags: + - Integrations + /api/v2/integrations/cloudflare/accounts: + get: + description: List Cloudflare accounts. + operationId: ListCloudflareAccounts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + id: abc-123 + type: cloudflare-accounts + schema: + $ref: '#/components/schemas/CloudflareAccountsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Cloudflare accounts + tags: + - Cloudflare Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a Cloudflare account. + operationId: CreateCloudflareAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: EXAMPLE_API_KEY_abc123 + email: test-email@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + type: cloudflare-accounts + schema: + $ref: '#/components/schemas/CloudflareAccountCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + name: test-name + id: abc-123 + type: cloudflare-accounts + schema: + $ref: '#/components/schemas/CloudflareAccountResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add Cloudflare account + tags: + - Cloudflare Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/cloudflare/accounts/{account_id}: + delete: + description: Delete a Cloudflare account. + operationId: DeleteCloudflareAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Cloudflare account + tags: + - Cloudflare Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a Cloudflare account. + operationId: GetCloudflareAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + id: abc-123 + type: cloudflare-accounts + schema: + $ref: '#/components/schemas/CloudflareAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Cloudflare account + tags: + - Cloudflare Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update a Cloudflare account. + operationId: UpdateCloudflareAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: EXAMPLE_API_KEY_abc123 + email: test-email@example.com + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + type: cloudflare-accounts + schema: + $ref: '#/components/schemas/CloudflareAccountUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + name: test-name + resources: + - web + - dns + - lb + - worker + zones: + - zone_id_1 + - zone_id_2 + id: abc-123 + type: cloudflare-accounts + schema: + $ref: '#/components/schemas/CloudflareAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Cloudflare account + tags: + - Cloudflare Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts: + get: + description: List Confluent accounts. + operationId: ListConfluentAccount + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: '#/components/schemas/ConfluentAccountsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Confluent accounts + tags: + - Confluent Cloud + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a Confluent account. + operationId: CreateConfluentAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: TESTAPIKEY123 + api_secret: test-api-secret-123 + resources: + - enable_custom_metrics: false + id: resource-id-123 + resource_type: kafka + tags: + - myTag + - myTag2:myValue + tags: + - myTag + - myTag2:myValue + type: confluent-cloud-accounts + schema: + $ref: '#/components/schemas/ConfluentAccountCreateRequest' + description: Confluent payload + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: '#/components/schemas/ConfluentAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts/{account_id}: + delete: + description: Delete a Confluent account with the provided account ID. + operationId: DeleteConfluentAccount + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Confluent account + tags: + - Confluent Cloud + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get the Confluent account with the provided account ID. + operationId: GetConfluentAccount + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: '#/components/schemas/ConfluentAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Confluent account + tags: + - Confluent Cloud + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update the Confluent account with the provided account ID. + operationId: UpdateConfluentAccount + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: TESTAPIKEY123 + api_secret: test-api-secret-123 + tags: + - myTag + - myTag2:myValue + type: confluent-cloud-accounts + schema: + $ref: '#/components/schemas/ConfluentAccountUpdateRequest' + description: Confluent payload + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: abc-123-key + tags: + - myTag + id: abc-123 + type: confluent-cloud-accounts + schema: + $ref: '#/components/schemas/ConfluentAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources: + get: + description: Get a Confluent resource for the account associated with the provided ID. + operationId: ListConfluentResource + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: '#/components/schemas/ConfluentResourcesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Confluent Account resources + tags: + - Confluent Cloud + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a Confluent resource for the account associated with the provided ID. + operationId: CreateConfluentResource + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + - myTag2:myValue + id: resource-id-123 + type: confluent-cloud-resources + schema: + $ref: '#/components/schemas/ConfluentResourceRequest' + description: Confluent payload + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: '#/components/schemas/ConfluentResourceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add resource to Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id}: + delete: + description: Delete a Confluent resource with the provided resource id for the account associated with the provided account ID. + operationId: DeleteConfluentResource + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + - $ref: '#/components/parameters/ConfluentResourceID' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete resource from Confluent account + tags: + - Confluent Cloud + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a Confluent resource with the provided resource id for the account associated with the provided account ID. + operationId: GetConfluentResource + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + - $ref: '#/components/parameters/ConfluentResourceID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: '#/components/schemas/ConfluentResourceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get resource from Confluent account + tags: + - Confluent Cloud + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update a Confluent resource with the provided resource id for the account associated with the provided account ID. + operationId: UpdateConfluentResource + parameters: + - $ref: '#/components/parameters/ConfluentAccountID' + - $ref: '#/components/parameters/ConfluentResourceID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + - myTag2:myValue + id: resource-id-123 + type: confluent-cloud-resources + schema: + $ref: '#/components/schemas/ConfluentResourceRequest' + description: Confluent payload + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enable_custom_metrics: false + resource_type: kafka + tags: + - myTag + id: abc-123 + type: confluent-cloud-resources + schema: + $ref: '#/components/schemas/ConfluentResourceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update resource in Confluent account + tags: + - Confluent Cloud + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts: + get: + description: List Fastly accounts. + operationId: ListFastlyAccounts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: '#/components/schemas/FastlyAccountsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Fastly accounts + tags: + - Fastly Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a Fastly account. + operationId: CreateFastlyAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: ABCDEFG123 + name: test-name + services: + - id: 6abc7de6893AbcDe9fghIj + tags: + - myTag + - myTag2:myValue + type: fastly-accounts + schema: + $ref: '#/components/schemas/FastlyAccountCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: '#/components/schemas/FastlyAccountResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add Fastly account + tags: + - Fastly Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts/{account_id}: + delete: + description: Delete a Fastly account. + operationId: DeleteFastlyAccount + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Fastly account + tags: + - Fastly Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a Fastly account. + operationId: GetFastlyAccount + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: '#/components/schemas/FastlyAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Fastly account + tags: + - Fastly Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update a Fastly account. + operationId: UpdateFastlyAccount + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key: ABCDEFG123 + type: fastly-accounts + schema: + $ref: '#/components/schemas/FastlyAccountUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: test-name + services: [] + id: abc-123 + type: fastly-accounts + schema: + $ref: '#/components/schemas/FastlyAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Fastly account + tags: + - Fastly Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts/{account_id}/services: + get: + description: List Fastly services for an account. + operationId: ListFastlyServices + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: '#/components/schemas/FastlyServicesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Fastly services + tags: + - Fastly Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create a Fastly service for an account. + operationId: CreateFastlyService + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + - myTag2:myValue + id: abc123 + type: fastly-services + schema: + $ref: '#/components/schemas/FastlyServiceRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: '#/components/schemas/FastlyServiceResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add Fastly service + tags: + - Fastly Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/fastly/accounts/{account_id}/services/{service_id}: + delete: + description: Delete a Fastly service for an account. + operationId: DeleteFastlyService + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/FastlyServiceID' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Fastly service + tags: + - Fastly Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a Fastly service for an account. + operationId: GetFastlyService + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/FastlyServiceID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: '#/components/schemas/FastlyServiceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Fastly service + tags: + - Fastly Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update a Fastly service for an account. + operationId: UpdateFastlyService + parameters: + - $ref: '#/components/parameters/FastlyAccountID' + - $ref: '#/components/parameters/FastlyServiceID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + - myTag2:myValue + id: abc123 + type: fastly-services + schema: + $ref: '#/components/schemas/FastlyServiceRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - myTag + id: abc-123 + type: fastly-services + schema: + $ref: '#/components/schemas/FastlyServiceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Fastly service + tags: + - Fastly Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/okta/accounts: + get: + description: List Okta accounts. + operationId: ListOktaAccounts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + auth_method: oauth + domain: https://example.okta.com/ + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000001 + type: okta-accounts + schema: + $ref: '#/components/schemas/OktaAccountsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Okta accounts + tags: + - Okta Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Create an Okta account. + operationId: CreateOktaAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + client_id: client_id + client_secret: client_secret + domain: https://example.okta.com/ + name: Okta-Prod + id: f749daaf-682e-4208-a38d-c9b43162c609 + type: okta-accounts + schema: + $ref: '#/components/schemas/OktaAccountRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: https://example.okta.com/ + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000002 + type: okta-accounts + schema: + $ref: '#/components/schemas/OktaAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add Okta account + tags: + - Okta Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/integrations/okta/accounts/{account_id}: + delete: + description: Delete an Okta account. + operationId: DeleteOktaAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Okta account + tags: + - Okta Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get an Okta account. + operationId: GetOktaAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: https://example.okta.com/ + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000003 + type: okta-accounts + schema: + $ref: '#/components/schemas/OktaAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get Okta account + tags: + - Okta Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update an Okta account. + operationId: UpdateOktaAccount + parameters: + - description: None + in: path + name: account_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: https://example.okta.com/ + type: okta-accounts + schema: + $ref: '#/components/schemas/OktaAccountUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + auth_method: oauth + domain: https://example.okta.com/ + name: Okta-Prod + id: 00000000-0000-0000-0000-000000000004 + type: okta-accounts + schema: + $ref: '#/components/schemas/OktaAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Okta account + tags: + - Okta Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v2/reference-tables/queries/batch-rows: + post: + description: Batch query reference table rows by their primary key values. Returns only found rows in the included array. + operationId: BatchRowsQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + row_ids: + - row_id_1 + - row_id_2 + table_id: 00000000-0000-0000-0000-000000000000 + type: reference-tables-batch-rows-query + happy_path: + summary: Batch query reference table rows by their primary key values. + value: + data: + attributes: + row_ids: + - row_id_1 + - row_id_2 + table_id: 00000000-0000-0000-0000-000000000000 + type: reference-tables-batch-rows-query + schema: + $ref: '#/components/schemas/BatchRowsQueryRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000000 + relationships: + rows: + data: + - id: row_id_1 + type: row + - id: row_id_2 + type: row + type: reference-tables-batch-rows-query + schema: + $ref: '#/components/schemas/BatchRowsQueryResponse' + description: Successfully retrieved rows. Some or all requested rows were found. Response includes found rows in the included section. + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Batch rows query + tags: + - Reference Tables + /api/v2/reference-tables/tables: + get: + description: List all reference tables in this organization. + operationId: ListTables + parameters: + - description: Number of tables to return. + example: 15 + in: query + name: page[limit] + required: false + schema: + default: 15 + format: int64 + maximum: 100 + minimum: 1 + type: integer + - description: Number of tables to skip for pagination. + example: 0 + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: Sort field and direction for the list of reference tables. Use field name for ascending, prefix with "-" for descending. + example: '-updated_at' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/ReferenceTableSortType' + - description: Filter by table status. + example: DONE + in: query + name: filter[status] + required: false + schema: + type: string + - description: Filter by exact table name match. + example: my_reference_table + in: query + name: filter[table_name][exact] + required: false + schema: + type: string + - description: Filter by table name containing substring. + example: user + in: query + name: filter[table_name][contains] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + status: DONE + table_name: my_reference_table + id: abc-123 + type: reference_table + schema: + $ref: '#/components/schemas/TableResultV2Array' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List tables + tags: + - Reference Tables + post: + description: |- + Creates a reference table. You can provide data in two ways: + 1. Call POST /api/v2/reference-tables/upload to get an upload ID. Then, PUT the CSV data + (not the file itself) in chunks to each URL in the request body. Finally, call this + POST endpoint with `upload_id` in `file_metadata`. + 2. Provide `access_details` in `file_metadata` pointing to a CSV file in cloud storage. + operationId: CreateReferenceTable + requestBody: + content: + application/json: + examples: + cloud_storage: + summary: Create table from cloud storage (S3) + value: + data: + attributes: + description: Customer reference data synced from S3 + file_metadata: + access_details: + aws_detail: + aws_account_id: '924305315327' + aws_bucket_name: my-data-bucket + file_path: customers.csv + sync_enabled: true + schema: + fields: + - name: customer_id + type: STRING + - name: customer_name + type: STRING + - name: email + type: STRING + primary_keys: + - customer_id + source: S3 + table_name: customer_reference_data + tags: + - team:data-platform + type: reference_table + default: + value: + data: + attributes: + description: Customer reference data synced from S3 + file_metadata: + access_details: + aws_detail: + aws_account_id: '924305315327' + aws_bucket_name: my-data-bucket + file_path: customers.csv + sync_enabled: true + schema: + fields: + - name: customer_id + type: STRING + - name: customer_name + type: STRING + - name: email + type: STRING + primary_keys: + - customer_id + source: S3 + table_name: customer_reference_data + tags: + - team:data-platform + type: reference_table + local_file: + summary: Create table from local file upload + value: + data: + attributes: + description: Product catalog uploaded via local file + file_metadata: + upload_id: 00000000-0000-0000-0000-000000000000 + schema: + fields: + - name: product_id + type: STRING + - name: product_name + type: STRING + - name: price + type: DOUBLE + primary_keys: + - product_id + source: LOCAL_FILE + table_name: product_catalog + tags: + - team:ecommerce + type: reference_table + schema: + $ref: '#/components/schemas/CreateTableRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + status: DONE + table_name: my_reference_table + id: abc-123 + type: reference_table + schema: + $ref: '#/components/schemas/TableResultV2' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create reference table + tags: + - Reference Tables + /api/v2/reference-tables/tables/{id}: + delete: + description: Delete a reference table by ID + operationId: DeleteTable + parameters: + - description: Unique identifier of the reference table to delete + in: path + name: id + required: true + schema: + type: string + responses: + '200': + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete table + tags: + - Reference Tables + get: + description: Get a reference table by ID + operationId: GetTable + parameters: + - description: Unique identifier of the reference table to retrieve + in: path + name: id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: {} + sync_enabled: false + last_updated_by: 00000000-0000-0000-0000-000000000000 + row_count: 5 + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + source: S3 + status: DONE + table_name: test_reference_table + tags: + - tag1 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + schema: + $ref: '#/components/schemas/TableResultV2' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get table + tags: + - Reference Tables + patch: + description: 'Update a reference table by ID. You can update the table''s data, description, and tags. Note: The source type cannot be changed after table creation. For data updates: For existing tables of type `source:LOCAL_FILE`, call POST api/v2/reference-tables/uploads first to get an upload ID, then PUT chunks of CSV data to each provided URL, and finally call this PATCH endpoint with the upload_id in file_metadata. For existing tables with `source:` types of `S3`, `GCS`, or `AZURE`, provide updated access_details in file_metadata pointing to a CSV file in the same type of cloud storage.' + operationId: UpdateReferenceTable + parameters: + - description: Unique identifier of the reference table to update + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: this is a cloud table generated via a cloud bucket sync + file_metadata: + access_details: + aws_detail: + aws_account_id: test-account-id + aws_bucket_name: test-bucket + file_path: test_rt.csv + sync_enabled: true + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + tags: + - test_tag + type: reference_table + schema: + $ref: '#/components/schemas/PatchTableRequest' + required: true + responses: + '200': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update reference table + tags: + - Reference Tables + /api/v2/reference-tables/tables/{id}/rows: + delete: + description: Delete multiple rows from a Reference Table by their primary key values. + operationId: DeleteRows + parameters: + - description: Unique identifier of the reference table to delete rows from + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: primary_key_value + type: row + schema: + $ref: '#/components/schemas/BatchDeleteRowsRequestArray' + required: true + responses: + '200': + description: Rows deleted successfully + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Precondition Failed + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete rows + tags: + - Reference Tables + get: + description: Get reference table rows by their primary key values. + operationId: GetRowsByID + parameters: + - description: Unique identifier of the reference table to get rows from + example: table-123 + in: path + name: id + required: true + schema: + type: string + - description: List of row IDs (primary key values) to retrieve from the reference table. + example: + - row1 + - row2 + explode: true + in: query + name: row_id + required: true + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + values: + id: 1 + name: Example Row + id: row_id_1 + type: row + schema: + $ref: '#/components/schemas/TableRowResourceArray' + description: Some or all requested rows were found. + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get rows by id + tags: + - Reference Tables + post: + description: Create or update rows in a Reference Table by their primary key values. If a row with the specified primary key exists, it is updated; otherwise, a new row is created. + operationId: UpsertRows + parameters: + - description: Unique identifier of the reference table to upsert rows into + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + values: + age: 25 + example_key_value: primary_key_value + name: row_name + id: primary_key_value + type: row + happy_path: + summary: Upsert a row with mixed string and int values + value: + data: + - attributes: + values: + age: 25 + example_key_value: primary_key_value + name: row_name + id: primary_key_value + type: row + schema: + $ref: '#/components/schemas/BatchUpsertRowsRequestArray' + required: true + responses: + '200': + description: Rows created or updated successfully + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Precondition Failed + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Upsert rows + tags: + - Reference Tables + /api/v2/reference-tables/tables/{id}/rows/list: + get: + description: List all rows in a reference table using cursor-based pagination. Pass the `page[continuation_token]` from the previous response to fetch the next page on the same consistent snapshot. Returns 400 for tables with more than 10,000,000 rows. + operationId: ListReferenceTableRows + parameters: + - description: Unique identifier of the reference table to list rows from. + example: 00000000-0000-0000-0000-000000000000 + in: path + name: id + required: true + schema: + type: string + - description: Number of rows to return per page. Defaults to 100, maximum is 1000. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Opaque cursor from the previous response's next link. Pass this to retrieve the next page on the same consistent snapshot. + example: eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ== + in: query + name: page[continuation_token] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + values: + category: tor + intention: suspicious + ip_address: 102.130.113.9 + id: 102.130.113.9 + type: row + links: + first: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Blimit%5D=100 + next: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjY5NzA0ODkwNDE4ODA3MTAzOTgsInBrIjoiMTAyLjEzMC4xMjcuMTE3In0%3D&page%5Blimit%5D=100 + self: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100 + schema: + $ref: '#/components/schemas/ListRowsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List rows + tags: + - Reference Tables + /api/v2/reference-tables/uploads: + post: + description: Create a reference table upload for bulk data ingestion + operationId: CreateReferenceTableUpload + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + headers: + - product_id + - product_name + - price + part_count: 3 + part_size: 10000000 + table_name: my_products_table + type: upload + schema: + $ref: '#/components/schemas/CreateUploadRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + part_urls: + - https://example.com/upload-part-1 + id: 00000000-0000-0000-0000-000000000000 + type: upload + schema: + $ref: '#/components/schemas/CreateUploadResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create reference table upload + tags: + - Reference Tables + /api/v2/web-integrations/{integration_name}/accounts: + get: + description: List accounts for a given web integration. + operationId: ListWebIntegrationAccounts + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: my-databricks-account + settings: + workspace_url: https://example.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: '#/components/schemas/WebIntegrationAccountsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List web integration accounts + tags: + - Web Integrations + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: '**Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice.' + post: + description: Create a new account for a given web integration. + operationId: CreateWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + secrets: + client_secret: my-client-secret + settings: + workspace_url: https://example.azuredatabricks.net + type: Account + schema: + $ref: '#/components/schemas/WebIntegrationAccountCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + settings: + workspace_url: https://example.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: '#/components/schemas/WebIntegrationAccountResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a web integration account + tags: + - Web Integrations + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: '**Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice.' + /api/v2/web-integrations/{integration_name}/accounts/{account_id}: + delete: + description: Delete an account for a given web integration. + operationId: DeleteWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + - description: The unique identifier of the web integration account. + in: path + name: account_id + required: true + schema: + type: string + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a web integration account + tags: + - Web Integrations + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: '**Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice.' + get: + description: Get a single account for a given web integration. + operationId: GetWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + - description: The unique identifier of the web integration account. + in: path + name: account_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + settings: + workspace_url: https://example.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: '#/components/schemas/WebIntegrationAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a web integration account + tags: + - Web Integrations + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: '**Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice.' + patch: + description: Update an existing account for a given web integration. + operationId: UpdateWebIntegrationAccount + parameters: + - description: The name of the integration (for example, `databricks`). + in: path + name: integration_name + required: true + schema: + type: string + - description: The unique identifier of the web integration account. + in: path + name: account_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + secrets: + client_secret: my-new-client-secret + settings: + workspace_url: https://updated.azuredatabricks.net + type: Account + schema: + $ref: '#/components/schemas/WebIntegrationAccountUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-databricks-account + settings: + workspace_url: https://updated.azuredatabricks.net + id: abc123def456 + type: Account + schema: + $ref: '#/components/schemas/WebIntegrationAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a web integration account + tags: + - Web Integrations + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: '**Note**: This endpoint is for internal Datadog use only and is not part of the public API. It may change without notice.' + /api/v1/integration/aws: + delete: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** Delete a Datadog-AWS integration matching the specified `account_id` and `role_name parameters`.' + operationId: DeleteAWSAccountV1 + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + role_name: DatadogAWSIntegrationRole + schema: + $ref: '#/components/schemas/AWSAccountDeleteRequest' + description: AWS request object + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configurations_manage + get: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** List all Datadog-AWS integrations available in your Datadog organization.' + operationId: ListAWSAccountsV1 + parameters: + - description: Only return AWS accounts that matches this `account_id`. + in: query + name: account_id + required: false + schema: + type: string + - description: Only return AWS accounts that matches this role_name. + in: query + name: role_name + required: false + schema: + type: string + - description: Only return AWS accounts that matches this `access_key_id`. + in: query + name: access_key_id + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + accounts: + - account_id: '123456789012' + account_specific_namespace_rules: + auto_scaling: false + cspm_resource_collection_enabled: true + excluded_regions: + - us-east-1 + extended_resource_collection_enabled: true + filter_tags: + - $KEY:$VALUE + host_tags: + - $KEY:$VALUE + metrics_collection_enabled: false + role_name: DatadogAWSIntegrationRole + schema: + $ref: '#/components/schemas/AWSAccountListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List all AWS integrations + tags: + - AWS Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: |- + **This endpoint is deprecated - use the V2 endpoints instead.** Create a Datadog-Amazon Web Services integration. + Using the `POST` method updates your integration configuration + by adding your new configuration to the existing one in your Datadog organization. + A unique AWS Account ID for role based authentication. + operationId: CreateAWSAccountV1 + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + account_specific_namespace_rules: + auto_scaling: false + opswork: false + cspm_resource_collection_enabled: true + excluded_regions: + - us-east-1 + - us-west-2 + extended_resource_collection_enabled: true + filter_tags: + - $KEY:$VALUE + host_tags: + - $KEY:$VALUE + metrics_collection_enabled: false + role_name: DatadogAWSIntegrationRole + schema: + $ref: '#/components/schemas/AWSAccount' + description: AWS Request Object + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + external_id: abc-123 + schema: + $ref: '#/components/schemas/AWSAccountCreateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configurations_manage + put: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** Update a Datadog-Amazon Web Services integration.' + operationId: UpdateAWSAccountV1 + parameters: + - description: Only return AWS accounts that matches this `account_id`. + in: query + name: account_id + required: false + schema: + type: string + - description: |- + Only return AWS accounts that match this `role_name`. + Required if `account_id` is specified. + in: query + name: role_name + required: false + schema: + type: string + - description: |- + Only return AWS accounts that matches this `access_key_id`. + Required if none of the other two options are specified. + in: query + name: access_key_id + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + account_specific_namespace_rules: + auto_scaling: false + opswork: false + cspm_resource_collection_enabled: true + excluded_regions: + - us-east-1 + - us-west-2 + extended_resource_collection_enabled: true + filter_tags: + - $KEY:$VALUE + host_tags: + - $KEY:$VALUE + metrics_collection_enabled: false + role_name: DatadogAWSIntegrationRole + schema: + $ref: '#/components/schemas/AWSAccount' + description: AWS request object + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an AWS integration + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/available_namespace_rules: + get: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** List all namespace rules for a given Datadog-AWS integration. This endpoint takes no arguments.' + operationId: ListAvailableAWSNamespaces + responses: + '200': + content: + application/json: + examples: + default: + value: + - namespace1 + - namespace2 + - namespace3 + schema: + type: array + items: + type: object + properties: + available_awsnamespace: + type: string + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List namespace rules + tags: + - AWS Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read + /api/v1/integration/aws/event_bridge: + delete: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** Delete an Amazon EventBridge source.' + operationId: DeleteAWSEventBridgeSourceV1 + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + event_generator_name: app-alerts-zyxw3210 + region: us-east-1 + schema: + $ref: '#/components/schemas/AWSEventBridgeDeleteRequestV1' + description: Delete the Amazon EventBridge source with the given name, region, and associated AWS account. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + status: empty + schema: + $ref: '#/components/schemas/AWSEventBridgeDeleteResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an Amazon EventBridge source + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + get: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** Get all Amazon EventBridge sources.' + operationId: ListAWSEventBridgeSourcesV1 + parameters: [] + responses: + '200': + content: + application/json: + examples: + default: + value: + accounts: + - accountId: '123456789012' + eventHubs: + - name: app-alerts-zyxw3210 + region: us-east-1 + tags: + - $KEY:$VALUE + isInstalled: true + schema: + $ref: '#/components/schemas/AWSEventBridgeListResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all Amazon EventBridge sources + tags: + - AWS Integration + x-permission: + operator: OPEN + permissions: [] + post: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** Create an Amazon EventBridge source.' + operationId: CreateAWSEventBridgeSourceV1 + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + create_event_bus: true + event_generator_name: app-alerts + region: us-east-1 + schema: + $ref: '#/components/schemas/AWSEventBridgeCreateRequestV1' + description: Create an Amazon EventBridge source for an AWS account with a given name and region. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + event_source_name: app-alerts-zyxw3210 + has_bus: true + region: us-east-1 + status: created + schema: + $ref: '#/components/schemas/AWSEventBridgeCreateResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an Amazon EventBridge source + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/aws/filtering: + delete: + deprecated: true + description: Delete a tag filtering entry. + operationId: DeleteAWSTagFilter + requestBody: + content: + application/json: + examples: + default: + value: + account_id: FAKEAC0FAKEAC2FAKEAC + namespace: elb + schema: + $ref: '#/components/schemas/AWSTagFilterDeleteRequest' + description: Delete a tag filtering entry for a given AWS account and `dd-aws` namespace. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a tag filtering entry + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + get: + deprecated: true + description: Get all AWS tag filters. + operationId: ListAWSTagFilters + parameters: + - description: Only return AWS filters that matches this `account_id`. + in: query + name: account_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + filters: + - namespace: elb + tag_filter_str: prod* + schema: + $ref: '#/components/schemas/AWSTagFilterListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all AWS tag filters + tags: + - AWS Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: Set an AWS tag filter. + operationId: CreateAWSTagFilter + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + namespace: elb + tag_filter_str: prod* + schema: + $ref: '#/components/schemas/AWSTagFilterCreateRequest' + description: |- + Set an AWS tag filter using an `aws_account_identifier`, `namespace`, and filtering string. + Namespace options are `application_elb`, `elb`, `lambda`, `network_elb`, `rds`, `sqs`, and `custom`. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Set an AWS tag filter + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/generate_new_external_id: + put: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoints instead.** Generate a new AWS external ID for a given AWS account ID and role name pair.' + operationId: CreateNewAWSExternalIDV1 + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '123456789012' + role_name: DatadogAWSIntegrationRole + schema: + $ref: '#/components/schemas/AWSAccount' + description: |- + Your Datadog role delegation name. + For more information about your AWS account Role name, + see the [Datadog AWS integration configuration info](https://docs.datadoghq.com/integrations/amazon_web_services/#setup). + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + external_id: abc-123 + schema: + $ref: '#/components/schemas/AWSAccountCreateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Generate a new external ID + tags: + - AWS Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/logs: + delete: + deprecated: true + description: '**This endpoint is deprecated.** Delete a Datadog-AWS logs configuration by removing the specific Lambda ARN associated with a given AWS account.' + operationId: DeleteAWSLambdaARN + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '1234567' + lambda_arn: arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest + schema: + $ref: '#/components/schemas/AWSAccountAndLambdaRequest' + description: Delete AWS Lambda ARN request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an AWS Logs integration + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + x-sunset: '2027-02-20' + get: + deprecated: true + description: List all Datadog-AWS Logs integrations configured in your Datadog account. + operationId: ListAWSLogsIntegrations + responses: + '200': + content: + application/json: + examples: + default: + value: + - account_id: '123456789101' + lambdas: [] + services: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + schema: + type: array + items: + $ref: '#/components/schemas/AWSLogsListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List all AWS Logs integrations + tags: + - AWS Logs Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: '**This endpoint is deprecated.** Attach the Lambda ARN of the Lambda created for the Datadog-AWS log collection to your AWS account ID to enable log collection.' + operationId: CreateAWSLambdaARN + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '1234567' + lambda_arn: arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest + schema: + $ref: '#/components/schemas/AWSAccountAndLambdaRequest' + description: AWS Log Lambda Async request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add AWS Log Lambda ARN + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + x-sunset: '2027-02-20' + /api/v1/integration/aws/logs/check_async: + post: + deprecated: true + description: |- + **This endpoint is deprecated.** Test if permissions are present to add a log-forwarding triggers for the given services and AWS account. The input + is the same as for Enable an AWS service log collection. Subsequent requests will always repeat the above, so this + endpoint can be polled intermittently instead of blocking. + + - Returns a status of 'created' when it's checking if the Lambda exists in the account. + - Returns a status of 'waiting' while checking. + - Returns a status of 'checked and ok' if the Lambda exists. + - Returns a status of 'error' if the Lambda does not exist. + operationId: CheckAWSLogsLambdaAsync + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '1234567' + lambda_arn: arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest + schema: + $ref: '#/components/schemas/AWSAccountAndLambdaRequest' + description: Check AWS Log Lambda Async request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + errors: [] + status: created + schema: + $ref: '#/components/schemas/AWSLogsAsyncResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Check that an AWS Lambda Function exists + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_read + x-sunset: '2027-02-20' + /api/v1/integration/aws/logs/services: + get: + deprecated: true + description: '**This endpoint is deprecated - use the V2 endpoint instead.** Get the list of current AWS services that Datadog offers automatic log collection. Use returned service IDs with the services parameter for the Enable an AWS service log collection API endpoint.' + operationId: ListAWSLogsServicesV1 + responses: + '200': + content: + application/json: + examples: + default: + value: + - id: s3 + label: S3 Access Logs + - id: elb + label: Classic ELB Access Logs + schema: + type: array + items: + $ref: '#/components/schemas/AWSLogsListServicesResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get list of AWS log ready services + tags: + - AWS Logs Integration + x-permission: + operator: OR + permissions: + - aws_configuration_read + post: + deprecated: true + description: Enable automatic log collection for a list of services. This should be run after running `CreateAWSLambdaARN` to save the configuration. + operationId: EnableAWSLogServices + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '1234567' + services: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + schema: + $ref: '#/components/schemas/AWSLogsServicesRequest' + description: Enable AWS Log Services request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Enable an AWS Logs integration + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_edit + /api/v1/integration/aws/logs/services_async: + post: + deprecated: true + description: |- + **This endpoint is deprecated.** Test if permissions are present to add log-forwarding triggers for the + given services and AWS account. Input is the same as for `EnableAWSLogServices`. + Done async, so can be repeatedly polled in a non-blocking fashion until + the async request completes. + + - Returns a status of `created` when it's checking if the permissions exists + in the AWS account. + - Returns a status of `waiting` while checking. + - Returns a status of `checked and ok` if the Lambda exists. + - Returns a status of `error` if the Lambda does not exist. + operationId: CheckAWSLogsServicesAsync + requestBody: + content: + application/json: + examples: + default: + value: + account_id: '1234567' + services: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + schema: + $ref: '#/components/schemas/AWSLogsServicesRequest' + description: Check AWS Logs Async Services request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + errors: [] + status: created + schema: + $ref: '#/components/schemas/AWSLogsAsyncResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Check permissions for log services + tags: + - AWS Logs Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - aws_configuration_read + x-sunset: '2027-02-20' + /api/v1/integration/azure: + delete: + description: Delete a given Datadog-Azure integration from your Datadog account. + operationId: DeleteAzureIntegration + requestBody: + content: + application/json: + examples: + default: + value: + client_id: testc7f6-1234-5678-9101-3fcbf464test + tenant_name: testc44-1234-5678-9101-cc00736ftest + schema: + $ref: '#/components/schemas/AzureAccount' + description: Delete a given Datadog-Azure integration request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an Azure integration + tags: + - Azure Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - azure_configurations_manage + get: + description: List all Datadog-Azure integrations configured in your Datadog account. + operationId: ListAzureIntegration + responses: + '200': + content: + application/json: + examples: + default: + value: + - client_id: testc7f6-1234-5678-9101-3fcbf464test + errors: [] + host_filters: key:value,filter:example + tenant_name: testc44-1234-5678-9101-cc00736ftest + schema: + type: array + items: + $ref: '#/components/schemas/AzureAccount' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List all Azure integrations + tags: + - Azure Integration + x-permission: + operator: OR + permissions: + - azure_configuration_read + post: + description: |- + Create a Datadog-Azure integration. + + Using the `POST` method updates your integration configuration by adding your new + configuration to the existing one in your Datadog organization. + + Using the `PUT` method updates your integration configuration by replacing your + current configuration with the new one sent to your Datadog organization. + operationId: CreateAzureIntegration + requestBody: + content: + application/json: + examples: + default: + value: + app_service_plan_filters: key:value,filter:example + automute: true + client_id: testc7f6-1234-5678-9101-3fcbf464test + client_secret: TestingRh2nx664kUy5dIApvM54T4AtO + container_app_filters: key:value,filter:example + cspm_enabled: true + custom_metrics_enabled: true + host_filters: key:value,filter:example + metrics_enabled: true + resource_collection_enabled: true + tenant_name: testc44-1234-5678-9101-cc00736ftest + schema: + $ref: '#/components/schemas/AzureAccount' + description: Create a Datadog-Azure integration for your Datadog account request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an Azure integration + tags: + - Azure Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - azure_configurations_manage + put: + description: |- + Update a Datadog-Azure integration. Requires an existing `tenant_name` and `client_id`. + Any other fields supplied will overwrite existing values. To overwrite `tenant_name` or `client_id`, + use `new_tenant_name` and `new_client_id`. To leave a field unchanged, do not supply that field in the payload. + operationId: UpdateAzureIntegration + requestBody: + content: + application/json: + examples: + default: + value: + automute: true + client_id: testc7f6-1234-5678-9101-3fcbf464test + client_secret: TestingRh2nx664kUy5dIApvM54T4AtO + cspm_enabled: true + host_filters: key:value,filter:example + metrics_enabled: true + new_client_id: new1c7f6-1234-5678-9101-3fcbf464test + new_tenant_name: new1c44-1234-5678-9101-cc00736ftest + resource_collection_enabled: true + tenant_name: testc44-1234-5678-9101-cc00736ftest + schema: + $ref: '#/components/schemas/AzureAccount' + description: Update a Datadog-Azure integration request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an Azure integration + tags: + - Azure Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - azure_configuration_edit + /api/v1/integration/azure/host_filters: + post: + description: Update the defined list of host filters for a given Datadog-Azure integration. + operationId: UpdateAzureHostFilters + requestBody: + content: + application/json: + examples: + default: + value: + client_id: testc7f6-1234-5678-9101-3fcbf464test + host_filters: key:value,filter:example + tenant_name: testc44-1234-5678-9101-cc00736ftest + schema: + $ref: '#/components/schemas/AzureAccount' + description: Update a Datadog-Azure integration's host filters request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Azure integration host filters + tags: + - Azure Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - azure_configuration_edit + /api/v1/integration/gcp: + delete: + deprecated: true + description: This endpoint is deprecated – use the V2 endpoints instead. Delete a given Datadog-GCP integration. + operationId: DeleteGCPIntegration + requestBody: + content: + application/json: + examples: + default: + value: + client_email: test@sandbox.iam.gserviceaccount.com + client_id: '123456712345671234567' + project_id: datadog-apitest + schema: + $ref: '#/components/schemas/GCPAccount' + description: Delete a given Datadog-GCP integration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a GCP integration + tags: + - GCP Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - gcp_configurations_manage + get: + deprecated: true + description: This endpoint is deprecated – use the V2 endpoints instead. List all Datadog-GCP integrations configured in your Datadog account. + operationId: ListGCPIntegration + responses: + '200': + content: + application/json: + examples: + default: + value: + - client_email: test@example.com + client_id: '123456712345671234567' + errors: [] + project_id: datadog-apitest + type: service_account + schema: + type: array + items: + $ref: '#/components/schemas/GCPAccount' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List all GCP integrations + tags: + - GCP Integration + x-permission: + operator: OR + permissions: + - gcp_configuration_read + post: + deprecated: true + description: This endpoint is deprecated – use the V2 endpoints instead. Create a Datadog-GCP integration. + operationId: CreateGCPIntegration + requestBody: + content: + application/json: + examples: + default: + value: + auth_provider_x509_cert_url: https://www.googleapis.com/oauth2/v1/certs + auth_uri: https://accounts.google.com/o/oauth2/auth + client_email: test@sandbox.iam.gserviceaccount.com + client_id: '123456712345671234567' + client_x509_cert_url: https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL + host_filters: $KEY1:$VALUE1,$KEY2:$VALUE2 + is_cspm_enabled: true + private_key: private_key + private_key_id: 123456789abcdefghi123456789abcdefghijklm + project_id: datadog-apitest + resource_collection_enabled: true + token_uri: https://accounts.google.com/o/oauth2/token + type: service_account + schema: + $ref: '#/components/schemas/GCPAccount' + description: Create a Datadog-GCP integration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a GCP integration + tags: + - GCP Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - gcp_configurations_manage + put: + deprecated: true + description: |- + This endpoint is deprecated – use the V2 endpoints instead. Update a Datadog-GCP integrations host_filters and/or auto-mute. + Requires a `project_id` and `client_email`, however these fields cannot be updated. + If you need to update these fields, delete and use the create (`POST`) endpoint. + The unspecified fields will keep their original values. + operationId: UpdateGCPIntegration + requestBody: + content: + application/json: + examples: + default: + value: + client_email: test@sandbox.iam.gserviceaccount.com + client_id: '123456712345671234567' + host_filters: $KEY1:$VALUE1,$KEY2:$VALUE2 + is_cspm_enabled: true + project_id: datadog-apitest + resource_collection_enabled: true + schema: + $ref: '#/components/schemas/GCPAccount' + description: Update a Datadog-GCP integration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a GCP integration + tags: + - GCP Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - gcp_configuration_edit + /api/v1/integration/pagerduty/configuration/services: + post: + description: Create a new service object in the PagerDuty integration. + operationId: CreatePagerDutyIntegrationService + requestBody: + content: + application/json: + examples: + default: + value: + service_key: your-pagerduty-service-key + service_name: my-pagerduty-service + schema: + $ref: '#/components/schemas/PagerDutyService' + description: Create a new service object request body. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + service_name: test-service + schema: + $ref: '#/components/schemas/PagerDutyServiceName' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a new service object + tags: + - PagerDuty Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/pagerduty/configuration/services/{service_name}: + delete: + description: Delete a single service object in the Datadog-PagerDuty integration. + operationId: DeletePagerDutyIntegrationService + parameters: + - description: The service name + in: path + name: service_name + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a single service object + tags: + - PagerDuty Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get service name in the Datadog-PagerDuty integration. + operationId: GetPagerDutyIntegrationService + parameters: + - description: The service name. + in: path + name: service_name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + service_name: test-service + schema: + $ref: '#/components/schemas/PagerDutyServiceName' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a single service object + tags: + - PagerDuty Integration + x-permission: + operator: OR + permissions: + - integrations_read + put: + description: Update a single service object in the Datadog-PagerDuty integration. + operationId: UpdatePagerDutyIntegrationService + parameters: + - description: The service name + in: path + name: service_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + service_key: updated-pagerduty-service-key + schema: + $ref: '#/components/schemas/PagerDutyServiceKey' + description: Update an existing service object request body. + required: true + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a single service object + tags: + - PagerDuty Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/slack/configuration/accounts/{account_name}/channels: + get: + description: Get a list of all channels configured for your Datadog-Slack integration. + operationId: GetSlackIntegrationChannels + parameters: + - $ref: '#/components/parameters/SlackAccountNamePathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + - display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: '#test-channel' + schema: + type: array + items: + $ref: '#/components/schemas/SlackIntegrationChannel' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all channels in a Slack integration + tags: + - Slack Integration + x-permission: + operator: OR + permissions: + - integrations_read + post: + description: Add a channel to your Datadog-Slack integration. + operationId: CreateSlackIntegrationChannel + parameters: + - $ref: '#/components/parameters/SlackAccountNamePathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: '#general' + schema: + $ref: '#/components/schemas/SlackIntegrationChannel' + description: Payload describing Slack channel to be created + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: '#test-channel' + schema: + $ref: '#/components/schemas/SlackIntegrationChannel' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a Slack integration channel + tags: + - Slack Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/slack/configuration/accounts/{account_name}/channels/{channel_name}: + delete: + description: Remove a channel from your Datadog-Slack integration. + operationId: RemoveSlackIntegrationChannel + parameters: + - $ref: '#/components/parameters/SlackAccountNamePathParameter' + - $ref: '#/components/parameters/SlackChannelNamePathParameter' + responses: + '204': + description: The channel was removed successfully. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Remove a Slack integration channel + tags: + - Slack Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Get a channel configured for your Datadog-Slack integration. + operationId: GetSlackIntegrationChannel + parameters: + - $ref: '#/components/parameters/SlackAccountNamePathParameter' + - $ref: '#/components/parameters/SlackChannelNamePathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: '#test-channel' + schema: + $ref: '#/components/schemas/SlackIntegrationChannel' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a Slack integration channel + tags: + - Slack Integration + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: Update a channel used in your Datadog-Slack integration. + operationId: UpdateSlackIntegrationChannel + parameters: + - $ref: '#/components/parameters/SlackAccountNamePathParameter' + - $ref: '#/components/parameters/SlackChannelNamePathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: '#general' + schema: + $ref: '#/components/schemas/SlackIntegrationChannel' + description: Payload describing fields and values to be updated. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + display: + message: true + mute_buttons: false + notified: true + snapshot: true + tags: true + name: '#test-channel' + schema: + $ref: '#/components/schemas/SlackIntegrationChannel' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a Slack integration channel + tags: + - Slack Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/webhooks/configuration/custom-variables: + post: + description: Creates an endpoint with the name ``. + operationId: CreateWebhooksIntegrationCustomVariable + requestBody: + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + value: CUSTOM_VARIABLE_VALUE + schema: + $ref: '#/components/schemas/WebhooksIntegrationCustomVariable' + description: Define a custom variable request body. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + schema: + $ref: '#/components/schemas/WebhooksIntegrationCustomVariableResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a custom variable + tags: + - Webhooks Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/webhooks/configuration/custom-variables/{custom_variable_name}: + delete: + description: Deletes the endpoint with the name ``. + operationId: DeleteWebhooksIntegrationCustomVariable + parameters: + - description: The name of the custom variable. + in: path + name: custom_variable_name + required: true + schema: + type: string + responses: + '200': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a custom variable + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: |- + Shows the content of the custom variable with the name ``. + + If the custom variable is secret, the value does not return in the + response payload. + operationId: GetWebhooksIntegrationCustomVariable + parameters: + - description: The name of the custom variable. + in: path + name: custom_variable_name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + schema: + $ref: '#/components/schemas/WebhooksIntegrationCustomVariableResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a custom variable + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - integrations_read + put: + description: Updates the endpoint with the name ``. + operationId: UpdateWebhooksIntegrationCustomVariable + parameters: + - description: The name of the custom variable. + in: path + name: custom_variable_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + value: CUSTOM_VARIABLE_VALUE + schema: + $ref: '#/components/schemas/WebhooksIntegrationCustomVariableUpdateRequest' + description: Update an existing custom variable request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + is_secret: true + name: CUSTOM_VARIABLE_NAME + schema: + $ref: '#/components/schemas/WebhooksIntegrationCustomVariableResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a custom variable + tags: + - Webhooks Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + /api/v1/integration/webhooks/configuration/webhooks: + post: + description: Creates an endpoint with the name ``. + operationId: CreateWebhooksIntegration + requestBody: + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: '#/components/schemas/WebhooksIntegration' + description: Create a webhooks integration request body. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: '#/components/schemas/WebhooksIntegration' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - create_webhooks + summary: Create a webhooks integration + tags: + - Webhooks Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - create_webhooks + /api/v1/integration/webhooks/configuration/webhooks/{webhook_name}: + delete: + description: Deletes the endpoint with the name ``. This action cannot be undone. + operationId: DeleteWebhooksIntegration + parameters: + - description: The name of the webhook. + in: path + name: webhook_name + required: true + schema: + type: string + responses: + '200': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a webhook + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - manage_integrations + get: + description: Gets the content of the webhook with the name ``. + operationId: GetWebhooksIntegration + parameters: + - description: The name of the webhook. + in: path + name: webhook_name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: '#/components/schemas/WebhooksIntegration' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a webhook integration + tags: + - Webhooks Integration + x-permission: + operator: OR + permissions: + - integrations_read + put: + description: Updates the endpoint with the name ``. + operationId: UpdateWebhooksIntegration + parameters: + - description: The name of the webhook. + in: path + name: webhook_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: '#/components/schemas/WebhooksIntegrationUpdateRequest' + description: Update an existing Datadog-Webhooks integration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + encode_as: json + name: WEBHOOK_NAME + url: https://example.com/webhook + schema: + $ref: '#/components/schemas/WebhooksIntegration' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a webhook + tags: + - Webhooks Integration + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations +components: + schemas: + AWSCloudAuthPersonaMappingsResponse: + description: Response containing a list of AWS cloud authentication persona mappings + properties: + data: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingsData' + example: + - attributes: + account_identifier: test@test.com + account_uuid: 12bbdc5c-5966-47e0-8733-285f9e44bcf4 + arn_pattern: arn:aws:iam::123456789012:user/testuser + id: c5c758c6-18c2-4484-ae3f-46b84128404a + type: aws_cloud_auth_config + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + AWSCloudAuthPersonaMappingCreateRequest: + description: Request used to create an AWS cloud authentication persona mapping + properties: + data: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingCreateData' + required: + - data + type: object + AWSCloudAuthPersonaMappingResponse: + description: Response containing a single AWS cloud authentication persona mapping + properties: + data: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingDataResponse' + required: + - data + type: object + EntityIntegrationConfigResponse: + description: JSON:API document containing a single entity integration configuration resource. + properties: + data: + $ref: '#/components/schemas/EntityIntegrationConfigData' + required: + - data + type: object + EntityIntegrationConfigRequest: + description: Request body used to create or replace the configuration for a given integration. + properties: + data: + $ref: '#/components/schemas/EntityIntegrationConfigRequestData' + required: + - data + type: object + ElasticCloudIntegrationAccountsResponse: + description: Response payload for a list of Elastic Cloud integration accounts. + properties: + data: + description: List of Elastic Cloud integration accounts. + items: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountResponseData' + type: array + required: + - data + type: object + ElasticCloudIntegrationAccountCreateRequest: + description: Request payload to create an Elastic Cloud integration account. + properties: + data: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountCreateData' + required: + - data + type: object + ElasticCloudIntegrationAccountResponse: + description: Response payload for a single Elastic Cloud integration account. + properties: + data: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountResponseData' + required: + - data + type: object + ElasticCloudIntegrationAccountUpdateRequest: + description: Request payload to update an Elastic Cloud integration account. + properties: + data: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountUpdateData' + required: + - data + type: object + TwilioIntegrationAccountsResponse: + description: Response payload for a list of Twilio integration accounts. + properties: + data: + description: List of Twilio integration accounts. + items: + $ref: '#/components/schemas/TwilioIntegrationAccountResponseData' + type: array + required: + - data + type: object + TwilioIntegrationAccountCreateRequest: + description: Request payload to create a Twilio integration account. + properties: + data: + $ref: '#/components/schemas/TwilioIntegrationAccountCreateData' + required: + - data + type: object + TwilioIntegrationAccountResponse: + description: Response payload for a single Twilio integration account. + properties: + data: + $ref: '#/components/schemas/TwilioIntegrationAccountResponseData' + required: + - data + type: object + TwilioIntegrationAccountUpdateRequest: + description: Request payload to update a Twilio integration account. + properties: + data: + $ref: '#/components/schemas/TwilioIntegrationAccountUpdateData' + required: + - data + type: object + AWSAccountsResponse: + description: AWS Accounts response body. + properties: + data: + description: List of AWS Account Integration Configs. + items: + $ref: '#/components/schemas/AWSAccountResponseData' + type: array + required: + - data + type: object + AWSAccountCreateRequest: + description: AWS Account Create Request body. + properties: + data: + $ref: '#/components/schemas/AWSAccountCreateRequestData' + required: + - data + type: object + AWSAccountResponse: + description: AWS Account response body. + properties: + data: + $ref: '#/components/schemas/AWSAccountResponseData' + required: + - data + type: object + AWSAccountUpdateRequest: + description: AWS Account Update Request body. + properties: + data: + $ref: '#/components/schemas/AWSAccountUpdateRequestData' + required: + - data + type: object + AWSCcmConfigResponse: + description: AWS CCM Config response body. + properties: + data: + $ref: '#/components/schemas/AWSCcmConfigResponseData' + required: + - data + type: object + AWSCcmConfigRequest: + description: AWS CCM Config Create/Update Request body. + properties: + data: + $ref: '#/components/schemas/AWSCcmConfigRequestData' + required: + - data + type: object + AWSMetricNameFilterPreviewResponse: + description: AWS metric name filter preview response body. + properties: + data: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewResponseData' + required: + - data + type: object + AWSMetricNameFilterPreviewRequest: + description: AWS metric name filter preview request body. + properties: + data: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewRequestData' + required: + - data + type: object + AWSNamespacesResponse: + description: AWS Namespaces response body. + properties: + data: + $ref: '#/components/schemas/AWSNamespacesResponseData' + required: + - data + type: object + AWSEventBridgeDeleteRequest: + description: Amazon EventBridge delete request body. + properties: + data: + $ref: '#/components/schemas/AWSEventBridgeDeleteRequestData' + required: + - data + type: object + AWSEventBridgeDeleteResponse: + description: Amazon EventBridge delete response body. + properties: + data: + $ref: '#/components/schemas/AWSEventBridgeDeleteResponseData' + required: + - data + type: object + AWSEventBridgeListResponse: + description: Amazon EventBridge list response body. + properties: + data: + $ref: '#/components/schemas/AWSEventBridgeListResponseData' + required: + - data + type: object + AWSEventBridgeCreateRequest: + description: Amazon EventBridge create request body. + properties: + data: + $ref: '#/components/schemas/AWSEventBridgeCreateRequestData' + required: + - data + type: object + AWSEventBridgeCreateResponse: + description: Amazon EventBridge create response body. + properties: + data: + $ref: '#/components/schemas/AWSEventBridgeCreateResponseData' + required: + - data + type: object AWSNewExternalIDResponse: description: AWS External ID response body. properties: - data: - $ref: '#/components/schemas/AWSNewExternalIDResponseData' + data: + $ref: '#/components/schemas/AWSNewExternalIDResponseData' + required: + - data + type: object + AWSIntegrationIamPermissionsResponse: + description: AWS Integration IAM Permissions response body. + properties: + data: + $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseData' + required: + - data + type: object + AWSLogsServicesResponse: + description: AWS Logs Services response body + properties: + data: + $ref: '#/components/schemas/AWSLogsServicesResponseData' + required: + - data + type: object + AWSCcmConfigValidationRequest: + description: AWS CCM config validation request body. + properties: + data: + $ref: '#/components/schemas/AWSCcmConfigValidationRequestData' + required: + - data + type: object + AWSCcmConfigValidationResponse: + description: AWS CCM config validation response body. + properties: + data: + $ref: '#/components/schemas/AWSCcmConfigValidationResponseData' + required: + - data + type: object + GCPSTSServiceAccountsResponse: + description: Object containing all your STS enabled accounts. + properties: + data: + description: Array of GCP STS enabled service accounts. + items: + $ref: '#/components/schemas/GCPSTSServiceAccount' + type: array + type: object + GCPSTSServiceAccountCreateRequest: + description: Data on your newly generated service account. + properties: + data: + $ref: '#/components/schemas/GCPSTSServiceAccountData' + type: object + GCPSTSServiceAccountResponse: + description: The account creation response. + properties: + data: + $ref: '#/components/schemas/GCPSTSServiceAccount' + type: object + GCPSTSServiceAccountUpdateRequest: + description: Service account info. + properties: + data: + $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequestData' + type: object + GCPSTSDelegateAccountResponse: + description: Your delegate service account response data. + properties: + data: + $ref: '#/components/schemas/GCPSTSDelegateAccount' + type: object + GoogleChatOrganizationsResponse: + description: Response containing a list of Google Chat organization bindings. + properties: + data: + description: An array of Google Chat organization bindings. + items: + $ref: '#/components/schemas/GoogleChatOrganizationData' + type: array + required: + - data + type: object + GoogleChatAppNamedSpaceResponse: + description: Response with Google Chat space information. + properties: + data: + $ref: '#/components/schemas/GoogleChatAppNamedSpaceResponseData' + required: + - data + type: object + GoogleChatOrganizationResponse: + description: Response containing a Google Chat organization binding. + properties: + data: + $ref: '#/components/schemas/GoogleChatOrganizationData' + required: + - data + type: object + GoogleChatDelegatedUserResponse: + description: Response containing a Google Chat delegated user. + properties: + data: + $ref: '#/components/schemas/GoogleChatDelegatedUserData' + required: + - data + type: object + GoogleChatOrganizationHandlesResponse: + description: List of organization handles for monitor notifications to Google Chat spaces within a Google organization. + properties: + data: + description: An array of organization handles. + example: + - attributes: + name: general-handle + space_display_name: General + space_resource_name: spaces/AAAAAAAAA + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: google-chat-organization-handle + - attributes: + name: general-handle-2 + space_display_name: General2 + space_resource_name: spaces/BBBBBBBBB + id: 596da4af-0563-4097-90ff-07230c3f9db4 + type: google-chat-organization-handle + items: + $ref: '#/components/schemas/GoogleChatOrganizationHandleResponseData' + type: array + required: + - data + type: object + GoogleChatCreateOrganizationHandleRequest: + description: Create organization handle request. + properties: + data: + $ref: '#/components/schemas/GoogleChatCreateOrganizationHandleRequestData' + type: + $ref: '#/components/schemas/GoogleChatOrganizationHandleType' + required: + - type + - data + type: object + GoogleChatOrganizationHandleResponse: + description: Organization handle for monitor notifications to a Google Chat space within a Google organization. + properties: + data: + $ref: '#/components/schemas/GoogleChatOrganizationHandleResponseData' + required: + - data + type: object + GoogleChatUpdateOrganizationHandleRequest: + description: Update organization handle request. + properties: + data: + $ref: '#/components/schemas/GoogleChatUpdateOrganizationHandleRequestData' + type: + $ref: '#/components/schemas/GoogleChatOrganizationHandleType' + required: + - type + - data + type: object + GoogleChatTargetAudiencesResponse: + description: Response containing a list of Google Chat target audiences. + properties: + data: + description: An array of Google Chat target audiences. + items: + $ref: '#/components/schemas/GoogleChatTargetAudienceData' + type: array + required: + - data + type: object + GoogleChatTargetAudienceCreateRequest: + description: Create target audience request. + properties: + data: + $ref: '#/components/schemas/GoogleChatTargetAudienceCreateRequestData' + required: + - data + type: object + GoogleChatTargetAudienceResponse: + description: Response containing a Google Chat target audience. + properties: + data: + $ref: '#/components/schemas/GoogleChatTargetAudienceData' + required: + - data + type: object + GoogleChatTargetAudienceUpdateRequest: + description: Update target audience request. + properties: + data: + $ref: '#/components/schemas/GoogleChatTargetAudienceUpdateRequestData' + required: + - data + type: object + JiraAccountsResponse: + description: Response containing Jira accounts + properties: + data: + $ref: '#/components/schemas/JiraAccountsData' + example: + - attributes: + consumer_key: consumer-key-1 + instance_url: https://example.atlassian.net + id: account-1 + type: jira-account + meta: + $ref: '#/components/schemas/JiraAccountsMeta' + required: + - data + type: object + JiraIssueTemplatesResponse: + description: Response containing Jira issue templates + properties: + data: + $ref: '#/components/schemas/JiraIssueTemplatesData' + example: + - attributes: + fields: + description: + payload: Test Description + type: json + issue_type_id: '10001' + name: Bug Report Template + project_id: PROJECT-1 + id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: jira-issue-template + included: + $ref: '#/components/schemas/JiraAccountsData' + required: + - data + type: object + JiraIssueTemplateCreateRequest: + description: Request to create a Jira issue template + properties: + data: + $ref: '#/components/schemas/JiraIssueTemplateCreateRequestData' + type: object + JiraIssueTemplateResponse: + description: Response containing a single Jira issue template + properties: + data: + $ref: '#/components/schemas/JiraIssueTemplateData' + included: + $ref: '#/components/schemas/JiraAccountsData' + required: + - data + type: object + JiraIssueTemplateUpdateRequest: + description: Request to update a Jira issue template + properties: + data: + $ref: '#/components/schemas/JiraIssueTemplateUpdateRequestData' + required: + - data + type: object + MicrosoftTeamsGetChannelByNameResponse: + description: Response with channel, team, and tenant ID information. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseData' + type: object + MicrosoftTeamsTenantBasedHandlesResponse: + description: Response with a list of tenant-based handles. + properties: + data: + description: An array of tenant-based handles. + example: + - attributes: + channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 + channelName: General + name: general-handle + teamId: 00000000-0000-0000-0000-000000000000 + teamName: Example Team + tenantId: 00000000-0000-0000-0000-000000000001 + tenantName: Company, Inc. + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: ms-teams-tenant-based-handle-info + - attributes: + channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgk1@thread.tacv2 + channelName: General2 + name: general-handle-2 + teamId: 00000000-0000-0000-0000-000000000002 + teamName: Example Team 2 + tenantId: 00000000-0000-0000-0000-000000000003 + tenantName: Company, Inc. + id: 596da4af-0563-4097-90ff-07230c3f9db4 + type: ms-teams-tenant-based-handle-info + items: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseData' + type: array + required: + - data + type: object + MicrosoftTeamsCreateTenantBasedHandleRequest: + description: Create tenant-based handle request. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestData' + required: + - data + type: object + MicrosoftTeamsTenantBasedHandleResponse: + description: Response of a tenant-based handle. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponseData' + required: + - data + type: object + MicrosoftTeamsUpdateTenantBasedHandleRequest: + description: Update tenant-based handle request. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequestData' + required: + - data + type: object + MicrosoftTeamsWorkflowsWebhookHandlesResponse: + description: Response with a list of Workflows webhook handles. + properties: + data: + description: An array of Workflows webhook handles. + example: + - attributes: + name: general-handle + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: workflows-webhook-handle + - attributes: + name: general-handle-2 + id: 596da4af-0563-4097-90ff-07230c3f9db4 + type: workflows-webhook-handle + items: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData' + type: array + required: + - data + type: object + MicrosoftTeamsCreateWorkflowsWebhookHandleRequest: + description: Create Workflows webhook handle request. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestData' + required: + - data + type: object + MicrosoftTeamsWorkflowsWebhookHandleResponse: + description: Response of a Workflows webhook handle. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData' + required: + - data + type: object + MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest: + description: Update Workflows webhook handle request. + properties: + data: + $ref: '#/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData' + required: + - data + type: object + TenancyProductsList: + description: Response containing a list of OCI tenancy product resources with their product enablement status. + example: + data: + - attributes: + products: + - enabled: true + product_key: CLOUD_SECURITY_POSTURE_MANAGEMENT + id: ocid.tenancy.test + type: oci_tenancy_product + properties: + data: + description: List of OCI tenancy product resource objects. + items: + $ref: '#/components/schemas/TenancyProductsData' + type: array + required: + - data + type: object + TenancyConfigList: + description: Response containing a list of OCI tenancy integration configurations. + example: + data: + - attributes: + config_version: 2 + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - compartment.test + enabled: true + enabled_services: + - compute + metrics_config: + compartment_tag_filters: + - compartment.test + enabled: true + excluded_services: + - compute + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + description: List of OCI tenancy integration configuration objects. + items: + $ref: '#/components/schemas/TenancyConfigData' + type: array + required: + - data + type: object + CreateTenancyConfigRequest: + description: Request body for creating a new OCI tenancy integration configuration. + example: + data: + attributes: + auth_credentials: + fingerprint: '' + private_key: |- + ----BEGIN PRIVATE KEY----- + MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M + QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR + C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl + YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn + QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc + mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU + nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc + quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3 + LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R + W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx + l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+ + rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY + PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59 + 86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP + XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS + DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM + mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs + -----END PRIVATE KEY----- + config_version: null + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + $ref: '#/components/schemas/CreateTenancyConfigData' + required: + - data + type: object + TenancyConfig: + description: Response containing a single OCI tenancy integration configuration. + example: + data: + attributes: + config_version: 2 + cost_collection_enabled: true + dd_compartment_id: ocid.compartment.test + dd_stack_id: ocid.stack.test + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - compartment.test + enabled: true + enabled_services: + - compute + metrics_config: + compartment_tag_filters: + - compartment.test + enabled: true + excluded_services: + - compute + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + $ref: '#/components/schemas/TenancyConfigData' + type: object + UpdateTenancyConfigRequest: + description: Request body for updating an existing OCI tenancy integration configuration. + example: + data: + attributes: + auth_credentials: + fingerprint: '' + private_key: |- + ----BEGIN PRIVATE KEY----- + MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCdvSMmlfLyeD4M + QsA3WlrWBqKdWa5eVV3/uODyqT3wWMEMIJHcG3/quNs8nh9xrK1/JkQT2qoKEHqR + C5k59jN6Vp8em8ARJthMgam9K37ELt+IQ/G8ySTSuqZG8T4cHp/cs3fAclNqttOl + YnGr4RbVAgMBAAECggEAGZNLGbyCUbIRTW6Kh4d8ZVC+eZtJMqGmGJ3KfVaW8Pjn + QGWfSuJCEe2o2Y8G3phlidFauICnZ44enXA17Rhi+I/whnr7FIyQk2bR7rv+1Uhc + mOJygWX5eFFMsledgVAdIAl9Luk2nykx7Un3g6rtbl/Vs+5k4m7ITLFMpCHzsJLU + nm8kBzDOqY2JUkMd08nL88KL6QywWtal05UESzQpNFXd0e5kxYfexeMCsLsWP0mc + quMLRbn7NuBjCbe9VU2kmIvcfDDaWjurT7d5m1OXx1cc8p6P4PFZTVyCjdhiWOr3 + LQXZ4/vdZNR3zgEHypRoM6D9Yq99LWUOUEMrdiSLQQKBgQDQkh7C1OtAXnpy7F6R + W+/I3zBHici2p7A57UT7VECQ1IVGg37/uus83DkuOtdZ33JmHLAVrwLFJvUlbyjx + l6dc/1ms40L5HFdLgaVtd4k0rSPFeOSDr6evz0lX4yBuzlP0fEh+o3XHW7mwe2G+ + rWCULF/Uqza66fjbCSKMNgLIXQKBgQDBm9nZg/s4S0THWCFNWcB1tXBG0p/sH5eY + PC1H/VmTEINIixStrS4ufczf31X8rcoSjSbO7+vZDTTATdk7OLn1I2uGFVYl8M59 + 86BYT2Hi7cwp7YVzOc/cJigVeBAqSRW/iYYyWBEUTiW1gbkV0sRWwhPp67m+c0sP + XpY/iEZA2QKBgB1w8tynt4l/jKNaUEMOijt9ndALWATIiOy0XG9pxi9rgGCiwTOS + DBCsOXoYHjv2eayGUijNaoOv6xzcoxfvQ1WySdNIxTRq1ru20kYwgHKqGgmO9hrM + mcwMY5r/WZ2qjFlPjeAqbL62aPDLidGjoaVo2iIoBPK/gjxQ/5f0MS4N/YQ0zWoYBueSQ0DGs + -----END PRIVATE KEY----- + cost_collection_enabled: true + home_region: us-ashburn-1 + logs_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + enabled_services: + - service_1 + - service_2 + metrics_config: + compartment_tag_filters: + - datadog:true + - env:prod + enabled: true + excluded_services: + - service_1 + - service_2 + regions_config: + available: + - us-ashburn-1 + - us-phoenix-1 + disabled: + - us-phoenix-1 + enabled: + - us-ashburn-1 + resource_collection_enabled: true + user_ocid: ocid.user.test + id: ocid.tenancy.test + type: oci_tenancy + properties: + data: + $ref: '#/components/schemas/UpdateTenancyConfigData' + required: + - data + type: object + OpsgenieAccountsResponse: + description: Response with a list of Opsgenie accounts. + properties: + data: + description: An array of Opsgenie accounts. + example: + - attributes: + region: us + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: opsgenie-account + - attributes: + region: eu + id: 0d2937f1-b561-44fa-914a-99910f848014 + type: opsgenie-account + items: + $ref: '#/components/schemas/OpsgenieAccountResponseData' + type: array + required: + - data + type: object + OpsgenieAccountCreateRequest: + description: Create request for an Opsgenie account. + properties: + data: + $ref: '#/components/schemas/OpsgenieAccountCreateData' + required: + - data + type: object + OpsgenieAccountResponse: + description: Response containing an Opsgenie account. + properties: + data: + $ref: '#/components/schemas/OpsgenieAccountResponseData' + required: + - data + type: object + OpsgenieAccountUpdateRequest: + description: Update request for an Opsgenie account. + properties: + data: + $ref: '#/components/schemas/OpsgenieAccountUpdateData' + required: + - data + type: object + OpsgenieServicesResponse: + description: Response with a list of Opsgenie services. + properties: + data: + description: An array of Opsgenie services. + example: + - attributes: + custom_url: null + name: fake-opsgenie-service-name + region: us + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: opsgenie-service + - attributes: + custom_url: null + name: fake-opsgenie-service-name-2 + region: eu + id: 0d2937f1-b561-44fa-914a-99910f848014 + type: opsgenie-service + items: + $ref: '#/components/schemas/OpsgenieServiceResponseData' + type: array + required: + - data + type: object + OpsgenieServiceCreateRequest: + description: Create request for an Opsgenie service. + properties: + data: + $ref: '#/components/schemas/OpsgenieServiceCreateData' + required: + - data + type: object + OpsgenieServiceResponse: + description: Response of an Opsgenie service. + properties: + data: + $ref: '#/components/schemas/OpsgenieServiceResponseData' + required: + - data + type: object + OpsgenieServiceUpdateRequest: + description: Update request for an Opsgenie service. + properties: + data: + $ref: '#/components/schemas/OpsgenieServiceUpdateData' + required: + - data + type: object + SalesforceIncidentsTemplatesResponse: + description: Response containing a list of Salesforce incident templates. + properties: + data: + description: An array of Salesforce incident templates. + items: + $ref: '#/components/schemas/SalesforceIncidentsTemplateResponseData' + type: array + required: + - data + type: object + SalesforceIncidentsTemplateCreateRequest: + description: Create request for a Salesforce incident template. + properties: + data: + $ref: '#/components/schemas/SalesforceIncidentsTemplateCreateData' + required: + - data + type: object + SalesforceIncidentsTemplateResponse: + description: Response containing a Salesforce incident template. + properties: + data: + $ref: '#/components/schemas/SalesforceIncidentsTemplateResponseData' + required: + - data + type: object + SalesforceIncidentsTemplateUpdateRequest: + description: Update request for a Salesforce incident template. + properties: + data: + $ref: '#/components/schemas/SalesforceIncidentsTemplateUpdateData' + required: + - data + type: object + SalesforceIncidentsOrganizationsResponse: + description: |- + Response containing a list of Salesforce organizations connected to the + Datadog Salesforce integration. + properties: + data: + description: An array of Salesforce organizations. + items: + $ref: '#/components/schemas/SalesforceIncidentsOrganizationResponseData' + type: array + required: + - data + type: object + ServiceNowAssignmentGroupsResponse: + description: Response containing ServiceNow assignment groups + properties: + data: + $ref: '#/components/schemas/ServiceNowAssignmentGroupsData' + example: + - attributes: + group_name: IT Operations + group_sys_id: abc123def456 + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: assignment_groups + required: + - data + type: object + ServiceNowBusinessServicesResponse: + description: Response containing ServiceNow business services + properties: + data: + $ref: '#/components/schemas/ServiceNowBusinessServicesData' + example: + - attributes: + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + service_name: IT Support + service_sys_id: abc123def456 + id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: business_services + required: + - data + type: object + ServiceNowTemplatesResponse: + description: Response containing ServiceNow templates + properties: + data: + $ref: '#/components/schemas/ServiceNowTemplatesData' + example: + - attributes: + handle_name: incident-template + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + servicenow_tablename: incident + id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: servicenow_templates + required: + - data + type: object + ServiceNowTemplateCreateRequest: + description: Request to create a ServiceNow template + properties: + data: + $ref: '#/components/schemas/ServiceNowTemplateCreateRequestData' + required: + - data + type: object + ServiceNowTemplateResponse: + description: Response containing a single ServiceNow template + properties: + data: + $ref: '#/components/schemas/ServiceNowTemplateData' + required: + - data + type: object + ServiceNowTemplateUpdateRequest: + description: Request to update a ServiceNow template + properties: + data: + $ref: '#/components/schemas/ServiceNowTemplateUpdateRequestData' + required: + - data + type: object + ServiceNowInstancesResponse: + description: Response containing ServiceNow instances + properties: + data: + $ref: '#/components/schemas/ServiceNowInstancesData' + example: + - attributes: + instance_name: my-servicenow-instance + id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: instance + required: + - data + type: object + ServiceNowUsersResponse: + description: Response containing ServiceNow users + properties: + data: + $ref: '#/components/schemas/ServiceNowUsersData' + example: + - attributes: + email: john.doe@example.com + instance_id: 65b3341b-0680-47f9-a6d4-134db45c603e + user_name: john.doe + user_sys_id: abc123def456 + id: 65b3341b-0680-47f9-a6d4-134db45c603e + type: users + required: + - data + type: object + SlackUserBindingsResponse: + description: Response with a list of Slack user bindings. + properties: + data: + description: An array of Slack user bindings. + example: + - id: T01234567 + type: team_id + - id: T09876543 + type: team_id + items: + $ref: '#/components/schemas/SlackUserBindingData' + type: array + required: + - data + type: object + StatuspageAccountResponse: + description: Response containing a Statuspage account. + properties: + data: + $ref: '#/components/schemas/StatuspageAccountResponseData' + required: + - data + type: object + StatuspageAccountUpdateRequest: + description: Update request for a Statuspage account. + properties: + data: + $ref: '#/components/schemas/StatuspageAccountUpdateData' + required: + - data + type: object + StatuspageAccountCreateRequest: + description: Create request for a Statuspage account. + properties: + data: + $ref: '#/components/schemas/StatuspageAccountCreateData' + required: + - data + type: object + StatuspageUrlSettingsResponse: + description: Response with a list of Statuspage URL settings. + properties: + data: + description: An array of Statuspage URL settings. + example: + - attributes: + custom_tags: team:collaboration-integrations + url: https://example.statuspage.io + id: 596da4af-0563-4097-90ff-07230c3f9db3 + type: statuspage-url-setting + items: + $ref: '#/components/schemas/StatuspageUrlSettingResponseData' + type: array + required: + - data + type: object + StatuspageUrlSettingCreateRequest: + description: Create request for a Statuspage URL setting. + properties: + data: + $ref: '#/components/schemas/StatuspageUrlSettingCreateData' + required: + - data + type: object + StatuspageUrlSettingResponse: + description: Response containing a Statuspage URL setting. + properties: + data: + $ref: '#/components/schemas/StatuspageUrlSettingResponseData' + required: + - data + type: object + StatuspageUrlSettingUpdateRequest: + description: Update request for a Statuspage URL setting. + properties: + data: + $ref: '#/components/schemas/StatuspageUrlSettingUpdateData' + required: + - data + type: object + WebhooksAuthMethodsResponse: + description: Response containing a list of webhooks auth methods. + properties: + data: + description: An array of webhooks auth methods. + items: + $ref: '#/components/schemas/WebhooksAuthMethodResponseData' + type: array + included: + description: Resources related to the auth methods, included when requested via the `include` query parameter. + items: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsResponseData' + type: array + required: + - data + type: object + WebhooksOAuth2ClientCredentialsCreateRequest: + description: Create request for an OAuth2 client credentials auth method. + properties: + data: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsCreateData' + required: + - data + type: object + WebhooksOAuth2ClientCredentialsResponse: + description: Response containing an OAuth2 client credentials auth method. + properties: + data: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsResponseData' + required: + - data + type: object + WebhooksOAuth2ClientCredentialsUpdateRequest: + description: Update request for an OAuth2 client credentials auth method. + properties: + data: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsUpdateData' + required: + - data + type: object + ListIntegrationsResponse: + description: Response containing information about multiple integrations. + properties: + data: + description: Array of integration objects. + items: + $ref: '#/components/schemas/Integration' + type: array + required: + - data + type: object + CloudflareAccountsResponse: + description: The expected response schema when getting Cloudflare accounts. + properties: + data: + description: The JSON:API data schema. + items: + $ref: '#/components/schemas/CloudflareAccountResponseData' + type: array + type: object + CloudflareAccountCreateRequest: + description: Payload schema when adding a Cloudflare account. + properties: + data: + $ref: '#/components/schemas/CloudflareAccountCreateRequestData' + required: + - data + type: object + CloudflareAccountResponse: + description: The expected response schema when getting a Cloudflare account. + properties: + data: + $ref: '#/components/schemas/CloudflareAccountResponseData' + type: object + CloudflareAccountUpdateRequest: + description: Payload schema when updating a Cloudflare account. + properties: + data: + $ref: '#/components/schemas/CloudflareAccountUpdateRequestData' + required: + - data + type: object + ConfluentAccountsResponse: + description: Confluent account returned by the API. + properties: + data: + description: The Confluent account. + items: + $ref: '#/components/schemas/ConfluentAccountResponseData' + type: array + type: object + ConfluentAccountCreateRequest: + description: Payload schema when adding a Confluent account. + properties: + data: + $ref: '#/components/schemas/ConfluentAccountCreateRequestData' + required: + - data + type: object + ConfluentAccountResponse: + description: The expected response schema when getting a Confluent account. + properties: + data: + $ref: '#/components/schemas/ConfluentAccountResponseData' + type: object + ConfluentAccountUpdateRequest: + description: The JSON:API request for updating a Confluent account. + properties: + data: + $ref: '#/components/schemas/ConfluentAccountUpdateRequestData' + required: + - data + type: object + ConfluentResourcesResponse: + description: Response schema when interacting with a list of Confluent resources. + properties: + data: + description: The JSON:API data attribute. + items: + $ref: '#/components/schemas/ConfluentResourceResponseData' + type: array + type: object + ConfluentResourceRequest: + description: The JSON:API request for updating a Confluent resource. + properties: + data: + $ref: '#/components/schemas/ConfluentResourceRequestData' + required: + - data + type: object + ConfluentResourceResponse: + description: Response schema when interacting with a Confluent resource. + properties: + data: + $ref: '#/components/schemas/ConfluentResourceResponseData' + type: object + FastlyAccountsResponse: + description: The expected response schema when getting Fastly accounts. + properties: + data: + description: The JSON:API data schema. + items: + $ref: '#/components/schemas/FastlyAccountResponseData' + type: array + type: object + FastlyAccountCreateRequest: + description: Payload schema when adding a Fastly account. + properties: + data: + $ref: '#/components/schemas/FastlyAccountCreateRequestData' + required: + - data + type: object + FastlyAccountResponse: + description: The expected response schema when getting a Fastly account. + properties: + data: + $ref: '#/components/schemas/FastlyAccountResponseData' + type: object + FastlyAccountUpdateRequest: + description: Payload schema when updating a Fastly account. + properties: + data: + $ref: '#/components/schemas/FastlyAccountUpdateRequestData' + required: + - data + type: object + FastlyServicesResponse: + description: The expected response schema when getting Fastly services. + properties: + data: + description: The JSON:API data schema. + items: + $ref: '#/components/schemas/FastlyServiceData' + type: array + type: object + FastlyServiceRequest: + description: Payload schema for Fastly service requests. + properties: + data: + $ref: '#/components/schemas/FastlyServiceData' + required: + - data + type: object + FastlyServiceResponse: + description: The expected response schema when getting a Fastly service. + properties: + data: + $ref: '#/components/schemas/FastlyServiceData' + type: object + OktaAccountsResponse: + description: The expected response schema when getting Okta accounts. + properties: + data: + description: List of Okta accounts. + items: + $ref: '#/components/schemas/OktaAccountResponseData' + type: array + type: object + OktaAccountRequest: + description: Request object for an Okta account. + properties: + data: + $ref: '#/components/schemas/OktaAccount' + required: + - data + type: object + OktaAccountResponse: + description: Response object for an Okta account. + properties: + data: + $ref: '#/components/schemas/OktaAccount' + type: object + OktaAccountUpdateRequest: + description: Payload schema when updating an Okta account. + properties: + data: + $ref: '#/components/schemas/OktaAccountUpdateRequestData' + required: + - data + type: object + BatchRowsQueryRequest: + description: Request object for querying multiple rows from a reference table by their identifiers. + properties: + data: + $ref: '#/components/schemas/BatchRowsQueryRequestData' + type: object + BatchRowsQueryResponse: + description: Response object for a batch rows query against a reference table. + example: + data: + id: 00000000-0000-0000-0000-000000000000 + relationships: + rows: + data: + - id: row_id_1 + type: row + - id: row_id_2 + type: row + type: reference-tables-batch-rows-query + included: + - attributes: + values: + ip_address: 102.130.113.9 + id: row_id_1 + type: row + - attributes: + values: + ip_address: 102.130.113.10 + id: row_id_2 + type: row + properties: + data: + $ref: '#/components/schemas/BatchRowsQueryResponseData' + included: + description: Full row resources matching the query, included alongside the relationship references in `data`. + items: + $ref: '#/components/schemas/TableRowResourceData' + type: array + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + ReferenceTableSortType: + default: '-updated_at' + description: Sort field and direction for reference tables. Use field name for ascending, prefix with "-" for descending. + enum: + - updated_at + - table_name + - status + - '-updated_at' + - '-table_name' + - '-status' + type: string + x-enum-varnames: + - UPDATED_AT + - TABLE_NAME + - STATUS + - MINUS_UPDATED_AT + - MINUS_TABLE_NAME + - MINUS_STATUS + TableResultV2Array: + description: List of reference tables. + example: + data: + - attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: {} + error_message: '' + error_row_count: 0 + upload_id: 00000000-0000-0000-0000-000000000000 + last_updated_by: '' + row_count: 5 + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + source: LOCAL_FILE + status: DONE + table_name: test_reference_table + tags: + - tag1 + - tag2 + updated_at: '2000-01-01T01:00:00+00:00' + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + - attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: + aws_detail: + aws_account_id: test-account-id + aws_bucket_name: test-bucket + file_path: test_rt.csv + error_message: '' + error_row_count: 0 + sync_enabled: true + last_updated_by: 00000000-0000-0000-0000-000000000000 + row_count: 5 + schema: + fields: + - name: location + type: STRING + - name: file_name + type: STRING + primary_keys: + - location + source: S3 + status: DONE + table_name: test_reference_table_2 + tags: + - test_tag1 + - tag2 + - '3' + updated_at: '2000-01-01T01:00:00+00:00' + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + properties: + data: + description: The reference tables. + items: + $ref: '#/components/schemas/TableResultV2Data' + type: array + required: + - data + type: object + CreateTableRequest: + description: Request body for creating a new reference table from a local file or cloud storage. + properties: + data: + $ref: '#/components/schemas/CreateTableRequestData' + type: object + TableResultV2: + description: A reference table resource containing its full configuration and state. + example: + data: + attributes: + created_by: 00000000-0000-0000-0000-000000000000 + description: example description + file_metadata: + access_details: + aws_detail: + aws_account_id: '123456789000' + aws_bucket_name: my-bucket + file_path: path/to/file.csv + sync_enabled: true + last_updated_by: 00000000-0000-0000-0000-000000000000 + row_count: 5 + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + source: S3 + status: DONE + table_name: test_reference_table + tags: + - tag1 + - tag2 + updated_at: '2000-01-01T01:00:00+00:00' + id: 00000000-0000-0000-0000-000000000000 + type: reference_table + properties: + data: + $ref: '#/components/schemas/TableResultV2Data' + type: object + PatchTableRequest: + description: Request body for updating an existing reference table. + example: + data: + attributes: + description: this is a cloud table generated via a cloud bucket sync + file_metadata: + access_details: + aws_detail: + aws_account_id: test-account-id + aws_bucket_name: test-bucket + file_path: test_rt.csv + sync_enabled: true + schema: + fields: + - name: id + type: INT32 + - name: name + type: STRING + primary_keys: + - id + tags: + - test_tag + type: reference_table + properties: + data: + $ref: '#/components/schemas/PatchTableRequestData' + type: object + BatchDeleteRowsRequestArray: + description: The request body for deleting multiple rows from a reference table. + properties: + data: + description: List of row resources to delete from the reference table. + items: + $ref: '#/components/schemas/TableRowResourceIdentifier' + maxItems: 200 + type: array + required: + - data + type: object + TableRowResourceArray: + description: List of rows from a reference table query. + properties: + data: + description: The rows. + items: + $ref: '#/components/schemas/TableRowResourceData' + type: array + required: + - data + type: object + BatchUpsertRowsRequestArray: + description: The request body for creating or updating multiple rows into a reference table. + properties: + data: + description: List of row resources to create or update in the reference table. + items: + $ref: '#/components/schemas/BatchUpsertRowsRequestData' + maxItems: 200 + type: array + required: + - data + type: object + ListRowsResponse: + description: Paginated list of reference table rows. + example: + data: + - attributes: + values: + category: tor + intention: suspicious + ip_address: 102.130.113.9 + id: 102.130.113.9 + type: row + links: + first: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Blimit%5D=100 + self: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100 + meta: + page: + next_continuation_token: eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ== + properties: + data: + description: The rows. + items: + $ref: '#/components/schemas/TableRowResourceData' + type: array + links: + $ref: '#/components/schemas/ListRowsResponseLinks' + meta: + $ref: '#/components/schemas/ListRowsResponseMeta' + required: + - data + - links + type: object + CreateUploadRequest: + description: Request to create an upload for a file to be ingested into a reference table. + example: + data: + attributes: + headers: + - product_id + - product_name + - price + part_count: 3 + part_size: 10000000 + table_name: my_products_table + type: upload + properties: + data: + $ref: '#/components/schemas/CreateUploadRequestData' + type: object + CreateUploadResponse: + description: Information about the upload created containing the upload ID and pre-signed URLs to PUT chunks of the CSV file to. + properties: + data: + $ref: '#/components/schemas/CreateUploadResponseData' + type: object + WebIntegrationAccountsResponse: + description: The expected response schema when listing web integration accounts. + properties: + data: + description: The JSON:API data array. + items: + $ref: '#/components/schemas/WebIntegrationAccountResponseData' + type: array + type: object + WebIntegrationAccountCreateRequest: + description: Payload schema when adding a web integration account. + properties: + data: + $ref: '#/components/schemas/WebIntegrationAccountCreateRequestData' + required: + - data + type: object + WebIntegrationAccountResponse: + description: The expected response schema when getting a single web integration account. + properties: + data: + $ref: '#/components/schemas/WebIntegrationAccountResponseData' + type: object + WebIntegrationAccountUpdateRequest: + description: Payload schema when updating a web integration account. + properties: + data: + $ref: '#/components/schemas/WebIntegrationAccountUpdateRequestData' + required: + - data + type: object + AWSAccountDeleteRequest: + description: List of AWS accounts to delete. + properties: + access_key_id: + description: Your AWS access key ID. Only required if your AWS account is a GovCloud or China account. + type: string + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + role_name: + description: Your Datadog role delegation name. + example: DatadogAWSIntegrationRole + type: string + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + AWSAccountListResponse: + description: List of enabled AWS accounts. + properties: + accounts: + description: List of enabled AWS accounts. + items: + $ref: '#/components/schemas/AWSAccount' + type: array + type: object + AWSAccount: + description: Returns the AWS account associated with this integration. + properties: + access_key_id: + description: Your AWS access key ID. Only required if your AWS account is a GovCloud or China account. + type: string + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + account_specific_namespace_rules: + additionalProperties: + description: A list of additional properties. + type: boolean + description: |- + An object (in the form `{"namespace1":true/false, "namespace2":true/false}`) containing user-supplied overrides + for AWS namespace metric collection. **Important**: This field only contains namespaces explicitly configured through API calls, + not the comprehensive enabled or disabled status of all namespaces. If a namespace is absent from this field, it uses Datadog's + internal defaults (all namespaces enabled by default, except `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage`). + For a complete view of all namespace statuses, use the V2 AWS Integration API instead. + example: + auto_scaling: false + opswork: false + type: object + cspm_resource_collection_enabled: + default: false + description: Whether Datadog collects cloud security posture management resources from your AWS account. This includes additional resources not covered under the general `resource_collection`. + example: true + type: boolean + excluded_regions: + description: |- + An array of [AWS regions](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints) + to exclude from metrics collection. + example: + - us-east-1 + - us-west-2 + items: + description: Regions to exclude. + type: string + type: array + extended_resource_collection_enabled: + default: false + description: Whether Datadog collects additional attributes and configuration information about the resources in your AWS account. Required for `cspm_resource_collection`. + example: true + type: boolean + filter_tags: + description: |- + The array of EC2 tags (in the form `key:value`) defines a filter that Datadog uses when collecting metrics from EC2. + Wildcards, such as `?` (for single characters) and `*` (for multiple characters) can also be used. + Only hosts that match one of the defined tags + will be imported into Datadog. The rest will be ignored. + Host matching a given tag can also be excluded by adding `!` before the tag. + For example, `env:production,instance-type:c1.*,!region:us-east-1` + example: + - $KEY:$VALUE + items: + description: The list of the filter_tags. + type: string + type: array + host_tags: + description: |- + Array of tags (in the form `key:value`) to add to all hosts + and metrics reporting through this integration. + example: + - $KEY:$VALUE + items: + description: The list of the host_tags. + type: string + type: array + metrics_collection_enabled: + default: true + description: Whether Datadog collects metrics for this AWS account. + example: false + type: boolean + resource_collection_enabled: + default: false + deprecated: true + description: Deprecated in favor of 'extended_resource_collection_enabled'. Whether Datadog collects a standard set of resources from your AWS account. + example: true + type: boolean + role_name: + description: Your Datadog role delegation name. + example: DatadogAWSIntegrationRole + type: string + secret_access_key: + description: Your AWS secret access key. Only required if your AWS account is a GovCloud or China account. + type: string + type: object + AWSAccountCreateResponse: + description: The Response returned by the AWS Create Account call. + properties: + external_id: + description: AWS external_id. + type: string + type: object + AWSEventBridgeDeleteRequestV1: + description: An object used to delete an EventBridge source. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + event_generator_name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + type: object + AWSEventBridgeDeleteResponseV1: + description: An indicator of the successful deletion of an EventBridge source. + properties: + status: + $ref: '#/components/schemas/AWSEventBridgeDeleteStatus' + type: object + AWSEventBridgeListResponseV1: + description: An object describing the EventBridge configuration for multiple accounts. + properties: + accounts: + description: List of accounts with their event sources. + items: + $ref: '#/components/schemas/AWSEventBridgeAccountConfigurationV1' + type: array + isInstalled: + description: True if the EventBridge sub-integration is enabled for your organization. + type: boolean + type: object + AWSEventBridgeCreateRequestV1: + description: An object used to create an EventBridge source. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + create_event_bus: + description: |- + True if Datadog should create the event bus in addition to the event + source. Requires the `events:CreateEventBus` permission. + example: true + type: boolean + event_generator_name: + description: |- + The given part of the event source name, which is then combined with an + assigned suffix to form the full name. + example: app-alerts + type: string + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + type: object + AWSEventBridgeCreateResponseV1: + description: A created EventBridge source. + properties: + event_source_name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + has_bus: + description: True if the event bus was created in addition to the source. + example: true + type: boolean + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + status: + $ref: '#/components/schemas/AWSEventBridgeCreateStatus' + type: object + AWSTagFilterDeleteRequest: + description: The objects used to delete an AWS tag filter entry. + properties: + account_id: + description: The unique identifier of your AWS account. + example: FAKEAC0FAKEAC2FAKEAC + type: string + namespace: + $ref: '#/components/schemas/AWSNamespace' + type: object + AWSTagFilterListResponse: + description: An array of tag filter rules by `namespace` and tag filter string. + properties: + filters: + description: An array of tag filters. + items: + $ref: '#/components/schemas/AWSTagFilter' + type: array + type: object + AWSTagFilterCreateRequest: + description: The objects used to set an AWS tag filter. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + namespace: + $ref: '#/components/schemas/AWSNamespace' + tag_filter_str: + description: The tag filter string. + example: prod* + type: string + type: object + AWSAccountAndLambdaRequest: + description: AWS account ID and Lambda ARN. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '1234567' + type: string + lambda_arn: + description: ARN of the Datadog Lambda created during the Datadog-Amazon Web services Log collection setup. + example: arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest + type: string + required: + - account_id + - lambda_arn + type: object + AWSLogsListResponse: + description: A list of all Datadog-AWS logs integrations available in your Datadog organization. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '1234567' + type: string + lambdas: + description: List of ARNs configured in your Datadog account. + example: + - arn: arn:aws:lambda:us-east-1:1234567:function:LogsCollectionAPITest + items: + $ref: '#/components/schemas/AWSLogsLambda' + type: array + services: + description: Array of services IDs. + example: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + items: + description: Description of the services. + type: string + type: array + type: object + AWSLogsAsyncResponse: + description: A list of all Datadog-AWS logs integrations available in your Datadog organization. + properties: + errors: + description: List of errors. + items: + $ref: '#/components/schemas/AWSLogsAsyncError' + type: array + status: + description: Status of the properties. + example: created + type: string + type: object + AWSLogsListServicesResponse: + description: The list of current AWS services for which Datadog offers automatic log collection. + properties: + id: + description: Key value in returned object. + example: s3 + type: string + label: + description: Name of service available for configuration with Datadog logs. + example: S3 Access Logs + type: string + type: object + AWSLogsServicesRequest: + description: A list of current AWS services for which Datadog offers automatic log collection. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '1234567' + type: string + services: + description: Array of services IDs set to enable automatic log collection. Discover the list of available services with the get list of AWS log ready services API endpoint. + example: + - s3 + - elb + - elbv2 + - cloudfront + - redshift + - lambda + items: + description: Description of services. + type: string + type: array + required: + - account_id + - services + type: object + AzureAccount: + description: Datadog-Azure integrations configured for your organization. + properties: + app_service_plan_filters: + description: |- + Limit the Azure app service plans that are pulled into Datadog using tags. + Only app service plans that match one of the defined tags are imported into Datadog. + example: key:value,filter:example + type: string + automute: + description: Silence monitors for expected Azure VM shutdowns. + example: true + type: boolean + client_id: + description: Your Azure web application ID. + example: testc7f6-1234-5678-9101-3fcbf464test + type: string + client_secret: + description: Your Azure web application secret key. + example: TestingRh2nx664kUy5dIApvM54T4AtO + type: string + container_app_filters: + description: |- + Limit the Azure container apps that are pulled into Datadog using tags. + Only container apps that match one of the defined tags are imported into Datadog. + example: key:value,filter:example + type: string + cspm_enabled: + description: |- + When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration. + Note: This requires resource_collection_enabled to be set to true. + example: true + type: boolean + custom_metrics_enabled: + description: Enable custom metrics for your organization. + example: true + type: boolean + errors: + description: Errors in your configuration. + example: + - '*' + items: + description: List of errors. + readOnly: true + type: string + type: array + host_filters: + description: |- + Limit the Azure instances that are pulled into Datadog by using tags. + Only hosts that match one of the defined tags are imported into Datadog. + example: key:value,filter:example + type: string + metrics_enabled: + description: Enable Azure metrics for your organization. + example: true + type: boolean + metrics_enabled_default: + description: Enable Azure metrics for your organization for resource providers where no resource provider config is specified. + example: true + type: boolean + new_client_id: + description: Your New Azure web application ID. + example: new1c7f6-1234-5678-9101-3fcbf464test + type: string + new_tenant_name: + description: Your New Azure Active Directory ID. + example: new1c44-1234-5678-9101-cc00736ftest + type: string + resource_collection_enabled: + description: When enabled, Datadog collects metadata and configuration info from cloud resources (compute instances, databases, load balancers, etc.) monitored by this app registration. + example: true + type: boolean + resource_provider_configs: + description: Configuration settings applied to resources from the specified Azure resource providers. + items: + $ref: '#/components/schemas/ResourceProviderConfig' + type: array + secretless_auth_enabled: + description: (Preview) When enabled, Datadog authenticates with this app registration using federated workload identity credentials instead of a client secret. + example: true + type: boolean + tenant_name: + description: Your Azure Active Directory ID. + example: testc44-1234-5678-9101-cc00736ftest + type: string + usage_metrics_enabled: + description: Enable azure.usage metrics for your organization. + example: true + type: boolean + type: object + AzureAccountListResponse: + description: Accounts configured for your organization. + items: + $ref: '#/components/schemas/AzureAccount' + type: array + GCPAccount: + description: Your Google Cloud Platform Account. + properties: + auth_provider_x509_cert_url: + description: Should be `https://www.googleapis.com/oauth2/v1/certs`. + example: https://www.googleapis.com/oauth2/v1/certs + type: string + auth_uri: + description: Should be `https://accounts.google.com/o/oauth2/auth`. + example: https://accounts.google.com/o/oauth2/auth + type: string + automute: + description: Silence monitors for expected GCE instance shutdowns. + type: boolean + client_email: + description: Your email found in your JSON service account key. + example: api-dev@datadog-sandbox.iam.gserviceaccount.com + type: string + client_id: + description: Your ID found in your JSON service account key. + example: '123456712345671234567' + type: string + client_x509_cert_url: + description: |- + Should be `https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL` + where `$CLIENT_EMAIL` is the email found in your JSON service account key. + example: https://www.googleapis.com/robot/v1/metadata/x509/$CLIENT_EMAIL + type: string + cloud_run_revision_filters: + deprecated: true + description: |- + List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. + Only Cloud Run revision resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=cloud_run_revision` + example: + - $KEY:$VALUE + items: + description: Cloud Run revision filters + type: string + type: array + errors: + description: An array of errors. + example: + - '*' + items: + description: String representation of one error. + readOnly: true + type: string + type: array + host_filters: + deprecated: true + description: |- + A comma-separated list of filters to limit the VM instances that are pulled into Datadog by using tags. + Only VM instance resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=gce_instance` + example: $KEY1:$VALUE1,$KEY2:$VALUE2 + type: string + is_cspm_enabled: + description: 'When enabled, Datadog will activate the Cloud Security Monitoring product for this service account. Note: This requires resource_collection_enabled to be set to true.' + example: true + type: boolean + is_resource_change_collection_enabled: + default: false + description: When enabled, Datadog scans for all resource change data in your Google Cloud environment. + example: true + type: boolean + is_security_command_center_enabled: + default: false + description: 'When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account.' + example: true + type: boolean + monitored_resource_configs: + description: Configurations for GCP monitored resources. + example: + - filters: + - $KEY:$VALUE + type: gce_instance + items: + $ref: '#/components/schemas/GCPMonitoredResourceConfig' + type: array + private_key: + description: Your private key name found in your JSON service account key. + example: private_key + type: string + private_key_id: + description: Your private key ID found in your JSON service account key. + example: 123456789abcdefghi123456789abcdefghijklm + type: string + project_id: + description: Your Google Cloud project ID found in your JSON service account key. + example: datadog-apitest + type: string + resource_collection_enabled: + description: When enabled, Datadog scans for all resources in your GCP environment. + example: true + type: boolean + token_uri: + description: Should be `https://accounts.google.com/o/oauth2/token`. + example: https://accounts.google.com/o/oauth2/token + type: string + type: + description: The value for service_account found in your JSON service account key. + example: service_account + type: string + type: object + GCPAccountListResponse: + description: Array of GCP account responses. + items: + $ref: '#/components/schemas/GCPAccount' + type: array + PagerDutyService: + description: The PagerDuty service that is available for integration with Datadog. + properties: + service_key: + description: Your service key in PagerDuty. + example: '' + type: string + service_name: + description: Your service name associated with a service key in PagerDuty. + example: '' + type: string + required: + - service_name + - service_key + type: object + PagerDutyServiceName: + description: PagerDuty service object name. + properties: + service_name: + description: Your service name associated service key in PagerDuty. + example: '' + type: string + required: + - service_name + type: object + PagerDutyServiceKey: + description: PagerDuty service object key. + properties: + service_key: + description: Your service key in PagerDuty. + example: '' + type: string + required: + - service_key + type: object + SlackIntegrationChannels: + description: A list of configured Slack channels. + example: + - display: + message: true + mute_buttons: true + notified: true + snapshot: true + tags: true + name: '#channel_name_main_account' + - display: + message: true + mute_buttons: true + notified: true + snapshot: false + tags: true + name: '#channel_name_doghouse' + items: + $ref: '#/components/schemas/SlackIntegrationChannel' + type: array + SlackIntegrationChannel: + description: The Slack channel configuration. + properties: + display: + $ref: '#/components/schemas/SlackIntegrationChannelDisplay' + name: + description: Your channel name. + example: '#general' + type: string + type: object + WebhooksIntegrationCustomVariable: + description: Custom variable for Webhook integration. + properties: + is_secret: + description: |- + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + example: true + type: boolean + name: + description: The name of the variable. It corresponds with ``. + example: CUSTOM_VARIABLE_NAME + type: string + value: + description: Value of the custom variable. + example: CUSTOM_VARIABLE_VALUE + type: string + required: + - name + - value + - is_secret + type: object + WebhooksIntegrationCustomVariableResponse: + description: Custom variable for Webhook integration. + properties: + is_secret: + description: |- + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + example: true + type: boolean + name: + description: The name of the variable. It corresponds with ``. It must only contains upper-case characters, integers or underscores. + example: CUSTOM_VARIABLE_NAME + type: string + value: + description: Value of the custom variable. It won't be returned if the variable is secret. + example: CUSTOM_VARIABLE_VALUE + type: string + required: + - name + - is_secret + type: object + WebhooksIntegrationCustomVariableUpdateRequest: + description: |- + Update request of a custom variable object. + + *All properties are optional.* + properties: + is_secret: + description: |- + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + type: boolean + name: + description: The name of the variable. It corresponds with ``. It must only contains upper-case characters, integers or underscores. + example: CUSTOM_VARIABLE_NAME + type: string + value: + description: Value of the custom variable. + example: CUSTOM_VARIABLE_VALUE + type: string + type: object + WebhooksIntegration: + description: Datadog-Webhooks integration. + properties: + custom_headers: + description: |- + If `null`, uses no header. + If given a JSON payload, these will be headers attached to your webhook. + nullable: true + type: string + encode_as: + $ref: '#/components/schemas/WebhooksIntegrationEncoding' + name: + description: |- + The name of the webhook. It corresponds with ``. + Learn more on how to use it in + [monitor notifications](https://docs.datadoghq.com/monitors/notify). + example: WEBHOOK_NAME + type: string + payload: + description: |- + If `null`, uses the default payload. + If given a JSON payload, the webhook returns the payload + specified by the given payload. + [Webhooks variable usage](https://docs.datadoghq.com/integrations/webhooks/#usage). + nullable: true + type: string + url: + description: URL of the webhook. + example: https://example.com/webhook + type: string + required: + - name + - url + type: object + WebhooksIntegrationUpdateRequest: + description: |- + Update request of a Webhooks integration object. + + *All properties are optional.* + properties: + custom_headers: + description: |- + If `null`, uses no header. + If given a JSON payload, these will be headers attached to your webhook. + type: string + encode_as: + $ref: '#/components/schemas/WebhooksIntegrationEncoding' + name: + description: |- + The name of the webhook. It corresponds with ``. + Learn more on how to use it in + [monitor notifications](https://docs.datadoghq.com/monitors/notify). + example: WEBHOOK_NAME + type: string + payload: + description: |- + If `null`, uses the default payload. + If given a JSON payload, the webhook returns the payload + specified by the given payload. + [Webhooks variable usage](https://docs.datadoghq.com/integrations/webhooks/#usage). + nullable: true + type: string + url: + description: URL of the webhook. + example: https://example.com/webhook + type: string + type: object + AWSCloudAuthPersonaMappingsData: + description: List of AWS cloud authentication persona mappings + items: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingDataResponse' + type: array + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + AWSCloudAuthPersonaMappingCreateData: + description: Data for creating an AWS cloud authentication persona mapping + properties: + attributes: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingCreateAttributes' + type: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingType' + required: + - type + - attributes + type: object + AWSCloudAuthPersonaMappingDataResponse: + description: Data for AWS cloud authentication persona mapping response + properties: + attributes: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingAttributesResponse' + id: + description: Unique identifier for the persona mapping + example: c5c758c6-18c2-4484-ae3f-46b84128404a + type: string + type: + $ref: '#/components/schemas/AWSCloudAuthPersonaMappingType' + required: + - id + - type + - attributes + type: object + EntityIntegrationConfigData: + description: JSON:API resource object for an entity integration configuration. + properties: + attributes: + $ref: '#/components/schemas/EntityIntegrationConfigAttributes' + id: + description: Unique identifier of the entity integration configuration. + example: 01HJABCD12345678ABCDEFGHIJ + type: string + type: + $ref: '#/components/schemas/EntityIntegrationConfigType' + required: + - id + - type + - attributes + type: object + EntityIntegrationConfigRequestData: + description: JSON:API resource object used in a request to create or update an entity integration configuration. + properties: + attributes: + $ref: '#/components/schemas/EntityIntegrationConfigRequestAttributes' + type: + $ref: '#/components/schemas/EntityIntegrationConfigRequestType' + required: + - type + - attributes + type: object + ElasticCloudIntegrationAccountResponseData: + description: Data envelope of an Elastic Cloud integration account, including server-assigned identity. + properties: + attributes: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountResponseAttributes' + id: + description: Server-generated unique identifier of the Elastic Cloud integration account. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + readOnly: true + type: string + type: + $ref: '#/components/schemas/IntegrationAccountType' + required: + - id + - attributes + - type + type: object + ElasticCloudIntegrationAccountCreateData: + description: Data envelope for creating an Elastic Cloud integration account. + properties: + attributes: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountCreateAttributes' + type: + $ref: '#/components/schemas/IntegrationAccountType' + required: + - type + - attributes + type: object + ElasticCloudIntegrationAccountUpdateData: + description: Data envelope for updating an Elastic Cloud integration account. + properties: + attributes: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountUpdateAttributes' + id: + description: Unique identifier of the Elastic Cloud integration account to update. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: string + type: + $ref: '#/components/schemas/IntegrationAccountType' + required: + - id + - type + - attributes + type: object + TwilioIntegrationAccountResponseData: + description: Data envelope of a Twilio integration account, including server-assigned identity. + properties: + attributes: + $ref: '#/components/schemas/TwilioIntegrationAccountResponseAttributes' + id: + description: Server-generated unique identifier of the Twilio integration account. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + readOnly: true + type: string + type: + $ref: '#/components/schemas/IntegrationAccountType' + required: + - id + - attributes + - type + type: object + TwilioIntegrationAccountCreateData: + description: Data envelope for creating a Twilio integration account. + properties: + attributes: + $ref: '#/components/schemas/TwilioIntegrationAccountCreateAttributes' + type: + $ref: '#/components/schemas/IntegrationAccountType' + required: + - type + - attributes + type: object + TwilioIntegrationAccountUpdateData: + description: Data envelope for updating a Twilio integration account. + properties: + attributes: + $ref: '#/components/schemas/TwilioIntegrationAccountUpdateAttributes' + id: + description: Unique identifier of the Twilio integration account to update. + example: 953a0060-81ec-4221-aed4-d4733b59cd96 + type: string + type: + $ref: '#/components/schemas/IntegrationAccountType' + required: + - id + - type + - attributes + type: object + AWSAccountResponseData: + description: AWS Account response data. + properties: + attributes: + $ref: '#/components/schemas/AWSAccountResponseAttributes' + id: + $ref: '#/components/schemas/AWSAccountConfigID' + type: + $ref: '#/components/schemas/AWSAccountType' + required: + - id + - type + type: object + AWSAccountCreateRequestData: + description: AWS Account Create Request data. + properties: + attributes: + $ref: '#/components/schemas/AWSAccountCreateRequestAttributes' + type: + $ref: '#/components/schemas/AWSAccountType' + required: + - attributes + - type + type: object + AWSAccountUpdateRequestData: + description: AWS Account Update Request data. + properties: + attributes: + $ref: '#/components/schemas/AWSAccountUpdateRequestAttributes' + id: + $ref: '#/components/schemas/AWSAccountConfigID' + type: + $ref: '#/components/schemas/AWSAccountType' + required: + - attributes + - type + type: object + AWSCcmConfigResponseData: + description: AWS CCM Config response data. + properties: + attributes: + $ref: '#/components/schemas/AWSCcmConfigResponseAttributes' + id: + $ref: '#/components/schemas/AWSAccountConfigID' + type: + $ref: '#/components/schemas/AWSCcmConfigType' + required: + - type + type: object + AWSCcmConfigRequestData: + description: AWS CCM Config Create/Update Request data. + properties: + attributes: + $ref: '#/components/schemas/AWSCcmConfigRequestAttributes' + type: + $ref: '#/components/schemas/AWSCcmConfigType' + required: + - attributes + - type + type: object + AWSMetricNameFilterPreviewResponseData: + description: AWS metric name filter preview response data. + properties: + attributes: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewResponseAttributes' + id: + $ref: '#/components/schemas/AWSAccountConfigID' + type: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewType' + required: + - id + - type + - attributes + type: object + AWSMetricNameFilterPreviewRequestData: + description: AWS metric name filter preview request data. + properties: + attributes: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewRequestAttributes' + type: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewType' + required: + - type + - attributes + type: object + AWSNamespacesResponseData: + description: AWS Namespaces response data. + properties: + attributes: + $ref: '#/components/schemas/AWSNamespacesResponseAttributes' + id: + default: namespaces + description: The `AWSNamespacesResponseData` `id`. + example: namespaces + type: string + type: + $ref: '#/components/schemas/AWSNamespacesResponseDataType' + required: + - id + - type + type: object + AWSEventBridgeDeleteRequestData: + description: Amazon EventBridge delete request data. + properties: + attributes: + $ref: '#/components/schemas/AWSEventBridgeDeleteRequestAttributes' + type: + $ref: '#/components/schemas/AWSEventBridgeType' + required: + - attributes + - type + type: object + AWSEventBridgeDeleteResponseData: + description: Amazon EventBridge delete response data. + properties: + attributes: + $ref: '#/components/schemas/AWSEventBridgeDeleteResponseAttributes' + id: + default: delete_event_bridge + description: The ID of the Amazon EventBridge list response data. + example: delete_event_bridge + type: string + type: + $ref: '#/components/schemas/AWSEventBridgeType' + required: + - attributes + - type + type: object + AWSEventBridgeListResponseData: + description: Amazon EventBridge list response data. + properties: + attributes: + $ref: '#/components/schemas/AWSEventBridgeListResponseAttributes' + id: + default: get_event_bridge + description: The ID of the Amazon EventBridge list response data. + example: get_event_bridge + type: string + type: + $ref: '#/components/schemas/AWSEventBridgeType' + required: + - attributes + - id + - type + type: object + AWSEventBridgeCreateRequestData: + description: Amazon EventBridge create request data. + properties: + attributes: + $ref: '#/components/schemas/AWSEventBridgeCreateRequestAttributes' + type: + $ref: '#/components/schemas/AWSEventBridgeType' + required: + - attributes + - type + type: object + AWSEventBridgeCreateResponseData: + description: Amazon EventBridge create response data. + properties: + attributes: + $ref: '#/components/schemas/AWSEventBridgeCreateResponseAttributes' + id: + default: create_event_bridge + description: The ID of the Amazon EventBridge create response data. + example: create_event_bridge + type: string + type: + $ref: '#/components/schemas/AWSEventBridgeType' + required: + - attributes + - type + type: object + AWSNewExternalIDResponseData: + description: AWS External ID response body. + properties: + attributes: + $ref: '#/components/schemas/AWSNewExternalIDResponseAttributes' + id: + default: external_id + description: The `AWSNewExternalIDResponseData` `id`. + example: external_id + type: string + type: + $ref: '#/components/schemas/AWSNewExternalIDResponseDataType' + required: + - id + - type + type: object + AWSIntegrationIamPermissionsResponseData: + description: AWS Integration IAM Permissions response data. + properties: + attributes: + $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseAttributes' + id: + default: permissions + description: The `AWSIntegrationIamPermissionsResponseData` `id`. + example: permissions + type: string + type: + $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseDataType' + type: object + AWSLogsServicesResponseData: + description: AWS Logs Services response body + properties: + attributes: + $ref: '#/components/schemas/AWSLogsServicesResponseAttributes' + id: + default: logs_services + description: The `AWSLogsServicesResponseData` `id`. + example: logs_services + type: string + type: + $ref: '#/components/schemas/AWSLogsServicesResponseDataType' + required: + - id + - type + type: object + AWSCcmConfigValidationRequestData: + description: AWS CCM config validation request data. + properties: + attributes: + $ref: '#/components/schemas/AWSCcmConfigValidationRequestAttributes' + type: + $ref: '#/components/schemas/AWSCcmConfigValidationType' + required: + - attributes + - type + type: object + AWSCcmConfigValidationResponseData: + description: AWS CCM config validation response data. + properties: + attributes: + $ref: '#/components/schemas/AWSCcmConfigValidationResponseAttributes' + id: + description: AWS CCM config validation resource identifier. + example: ccm_config_validation + type: string + type: + $ref: '#/components/schemas/AWSCcmConfigValidationType' + required: + - attributes + - id + - type + type: object + GCPSTSServiceAccount: + description: Info on your service account. + properties: + attributes: + $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' + id: + description: Your service account's unique ID. + example: d291291f-12c2-22g4-j290-123456678897 + type: string + meta: + $ref: '#/components/schemas/GCPServiceAccountMeta' + type: + $ref: '#/components/schemas/GCPServiceAccountType' + type: object + GCPSTSServiceAccountData: + description: Additional metadata on your generated service account. + properties: + attributes: + $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' + type: + $ref: '#/components/schemas/GCPServiceAccountType' + type: object + GCPSTSServiceAccountUpdateRequestData: + description: Data on your service account. + properties: + attributes: + $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' + id: + description: Your service account's unique ID. + example: d291291f-12c2-22g4-j290-123456678897 + type: string + type: + $ref: '#/components/schemas/GCPServiceAccountType' + type: object + GCPSTSDelegateAccount: + description: Datadog principal service account info. + properties: + attributes: + $ref: '#/components/schemas/GCPSTSDelegateAccountAttributes' + id: + description: The ID of the delegate service account. + example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com + type: string + type: + $ref: '#/components/schemas/GCPSTSDelegateAccountType' + type: object + GoogleChatOrganizationData: + description: Google Chat organization data from a response. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatOrganizationAttributes' + id: + description: The ID of the Google Chat organization binding. + example: 5ce87709-a12f-4086-fcc8-147045b73a19 + maxLength: 100 + minLength: 1 + type: string + relationships: + $ref: '#/components/schemas/GoogleChatOrganizationRelationships' + type: + $ref: '#/components/schemas/GoogleChatOrganizationType' + type: object + GoogleChatAppNamedSpaceResponseData: + description: Google Chat space data from a response. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatAppNamedSpaceResponseAttributes' + id: + description: The ID of the Google Chat space. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/GoogleChatAppNamedSpaceType' + type: object + GoogleChatDelegatedUserData: + description: Google Chat delegated user data from a response. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatDelegatedUserAttributes' + id: + description: The ID of the delegated user. + example: 2b3c4d5e-6f78-9012-bcde-f23456789012 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/GoogleChatDelegatedUserType' + type: object + GoogleChatOrganizationHandleResponseData: + description: Organization handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatOrganizationHandleResponseAttributes' + id: + description: The ID of the organization handle. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/GoogleChatOrganizationHandleType' + type: object + GoogleChatCreateOrganizationHandleRequestData: + description: Organization handle data for a create request. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatCreateOrganizationHandleRequestAttributes' + required: + - attributes + type: object + GoogleChatOrganizationHandleType: + default: google-chat-organization-handle + description: Organization handle resource type. + enum: + - google-chat-organization-handle + example: google-chat-organization-handle + type: string + x-enum-varnames: + - GOOGLE_CHAT_ORGANIZATION_HANDLE_TYPE + GoogleChatUpdateOrganizationHandleRequestData: + description: Organization handle data for an update request. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatUpdateOrganizationHandleRequestAttributes' + required: + - attributes + type: object + GoogleChatTargetAudienceData: + description: Google Chat target audience data from a response. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatTargetAudienceAttributes' + id: + description: The ID of the target audience. + example: 1f3e5ce6-944a-4075-97ae-105b5920b5cb + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/GoogleChatTargetAudienceType' + type: object + GoogleChatTargetAudienceCreateRequestData: + description: Data for a create target audience request. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatTargetAudienceCreateRequestAttributes' + type: + $ref: '#/components/schemas/GoogleChatTargetAudienceType' + required: + - type + - attributes + type: object + GoogleChatTargetAudienceUpdateRequestData: + description: Data for an update target audience request. + properties: + attributes: + $ref: '#/components/schemas/GoogleChatTargetAudienceUpdateRequestAttributes' + type: + $ref: '#/components/schemas/GoogleChatTargetAudienceType' + required: + - type + - attributes + type: object + JiraAccountsData: + description: Array of Jira account data objects + items: + $ref: '#/components/schemas/JiraAccountData' + type: array + JiraAccountsMeta: + description: Metadata for Jira accounts response + properties: + public_key: + description: Public key for the Jira integration + example: c29tZSBkYXRhIHdpdGggACBhbmQg77u/ + type: string + type: object + JiraIssueTemplatesData: + description: Array of Jira issue template data objects + items: + $ref: '#/components/schemas/JiraIssueTemplateData' + type: array + JiraIssueTemplateCreateRequestData: + description: Data object for creating a Jira issue template + properties: + attributes: + $ref: '#/components/schemas/JiraIssueTemplateCreateRequestAttributes' + type: + $ref: '#/components/schemas/JiraIssueTemplateType' + type: object + JiraIssueTemplateData: + description: Data object for a Jira issue template + properties: + attributes: + $ref: '#/components/schemas/JiraIssueTemplateDataAttributes' + id: + description: Unique identifier for the Jira issue template + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + relationships: + $ref: '#/components/schemas/JiraIssueTemplateDataRelationships' + type: + $ref: '#/components/schemas/JiraIssueTemplateType' + required: + - id + - type + - attributes + type: object + JiraIssueTemplateUpdateRequestData: + description: Data object for updating a Jira issue template + properties: + attributes: + $ref: '#/components/schemas/JiraIssueTemplateUpdateRequestAttributes' + type: + $ref: '#/components/schemas/JiraIssueTemplateType' + required: + - type + - attributes + type: object + MicrosoftTeamsChannelInfoResponseData: + description: Channel data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseAttributes' + id: + description: The ID of the channel. + example: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 + maxLength: 255 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/MicrosoftTeamsChannelInfoType' + type: object + MicrosoftTeamsTenantBasedHandleInfoResponseData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseAttributes' + id: + description: The ID of the tenant-based handle. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoType' + type: object + MicrosoftTeamsTenantBasedHandleRequestData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestAttributes' + type: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' + required: + - type + - attributes + type: object + MicrosoftTeamsTenantBasedHandleResponseData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' + id: + description: The ID of the tenant-based handle. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' + type: object + MicrosoftTeamsUpdateTenantBasedHandleRequestData: + description: Tenant-based handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' + type: + $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' + required: + - type + - attributes + type: object + MicrosoftTeamsWorkflowsWebhookHandleResponseData: + description: Workflows Webhook handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookResponseAttributes' + id: + description: The ID of the Workflows webhook handle. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' + type: object + MicrosoftTeamsWorkflowsWebhookHandleRequestData: + description: Workflows Webhook handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes' + type: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' + required: + - type + - attributes + type: object + MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData: + description: Workflows Webhook handle data from a response. + properties: + attributes: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleAttributes' + type: + $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' + required: + - type + - attributes + type: object + TenancyProductsData: + description: A single OCI tenancy product resource object containing the tenancy ID, type, and product attributes. + properties: + attributes: + $ref: '#/components/schemas/TenancyProductsDataAttributes' + id: + description: The OCID of the OCI tenancy. + type: string + type: + $ref: '#/components/schemas/TenancyProductsDataType' + required: + - type + type: object + TenancyConfigData: + description: A single OCI tenancy integration configuration resource object containing the tenancy ID, type, and configuration attributes. + properties: + attributes: + $ref: '#/components/schemas/TenancyConfigDataAttributes' + id: + description: The OCID of the OCI tenancy. + type: string + type: + $ref: '#/components/schemas/UpdateTenancyConfigDataType' + required: + - type + type: object + CreateTenancyConfigData: + description: The data object for creating a new OCI tenancy integration configuration, including the tenancy ID, type, and configuration attributes. + properties: + attributes: + $ref: '#/components/schemas/CreateTenancyConfigDataAttributes' + id: + description: The OCID of the OCI tenancy to configure. + example: '' + type: string + type: + $ref: '#/components/schemas/UpdateTenancyConfigDataType' + required: + - type + - id + type: object + UpdateTenancyConfigData: + description: The data object for updating an existing OCI tenancy integration configuration, including the tenancy ID, type, and updated attributes. + properties: + attributes: + $ref: '#/components/schemas/UpdateTenancyConfigDataAttributes' + id: + description: The OCID of the OCI tenancy to update. + example: '' + type: string + type: + $ref: '#/components/schemas/UpdateTenancyConfigDataType' + required: + - type + - id + type: object + OpsgenieAccountResponseData: + description: Opsgenie account data from a response. + properties: + attributes: + $ref: '#/components/schemas/OpsgenieAccountResponseAttributes' + id: + description: The ID of the Opsgenie account. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/OpsgenieAccountType' + required: + - id + - type + - attributes + type: object + OpsgenieAccountCreateData: + description: Opsgenie account data for a create request. + properties: + attributes: + $ref: '#/components/schemas/OpsgenieAccountCreateAttributes' + type: + $ref: '#/components/schemas/OpsgenieAccountType' + required: + - type + - attributes + type: object + OpsgenieAccountUpdateData: + description: Opsgenie account data for an update request. + properties: + attributes: + $ref: '#/components/schemas/OpsgenieAccountUpdateAttributes' + id: + description: The ID of the Opsgenie account. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/OpsgenieAccountType' + required: + - id + - type + - attributes + type: object + OpsgenieServiceResponseData: + description: Opsgenie service data from a response. + properties: + attributes: + $ref: '#/components/schemas/OpsgenieServiceResponseAttributes' + id: + description: The ID of the Opsgenie service. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/OpsgenieServiceType' + required: + - id + - type + - attributes + type: object + OpsgenieServiceCreateData: + description: Opsgenie service data for a create request. + properties: + attributes: + $ref: '#/components/schemas/OpsgenieServiceCreateAttributes' + type: + $ref: '#/components/schemas/OpsgenieServiceType' + required: + - type + - attributes + type: object + OpsgenieServiceUpdateData: + description: Opsgenie service for an update request. + properties: + attributes: + $ref: '#/components/schemas/OpsgenieServiceUpdateAttributes' + id: + description: The ID of the Opsgenie service. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/OpsgenieServiceType' + required: + - id + - type + - attributes + type: object + SalesforceIncidentsTemplateResponseData: + description: Salesforce incident template data from a response. + properties: + attributes: + $ref: '#/components/schemas/SalesforceIncidentsTemplateResponseAttributes' + id: + description: The ID of the Salesforce incident template. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/SalesforceIncidentsTemplateType' + required: + - id + - type + - attributes + type: object + SalesforceIncidentsTemplateCreateData: + description: Salesforce incident template data for a create request. + properties: + attributes: + $ref: '#/components/schemas/SalesforceIncidentsTemplateCreateAttributes' + type: + $ref: '#/components/schemas/SalesforceIncidentsTemplateType' + required: + - type + - attributes + type: object + SalesforceIncidentsTemplateUpdateData: + description: Salesforce incident template data for an update request. + properties: + attributes: + $ref: '#/components/schemas/SalesforceIncidentsTemplateUpdateAttributes' + id: + description: The ID of the Salesforce incident template being updated. Must match the path parameter. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/SalesforceIncidentsTemplateType' + required: + - id + - type + - attributes + type: object + SalesforceIncidentsOrganizationResponseData: + description: Salesforce organization data from a response. + properties: + attributes: + $ref: '#/components/schemas/SalesforceIncidentsOrganizationResponseAttributes' + id: + description: The Datadog-assigned ID of the connected Salesforce organization. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/SalesforceIncidentsOrganizationType' + required: + - id + - type + - attributes + type: object + ServiceNowAssignmentGroupsData: + description: Array of ServiceNow assignment group data objects + items: + $ref: '#/components/schemas/ServiceNowAssignmentGroupData' + type: array + ServiceNowBusinessServicesData: + description: Array of ServiceNow business service data objects + items: + $ref: '#/components/schemas/ServiceNowBusinessServiceData' + type: array + ServiceNowTemplatesData: + description: Array of ServiceNow template data objects + items: + $ref: '#/components/schemas/ServiceNowTemplateData' + type: array + ServiceNowTemplateCreateRequestData: + description: Data object for creating a ServiceNow template + properties: + attributes: + $ref: '#/components/schemas/ServiceNowTemplateCreateRequestAttributes' + type: + $ref: '#/components/schemas/ServiceNowTemplateType' + required: + - type + - attributes + type: object + ServiceNowTemplateData: + description: Data object for a ServiceNow template + properties: + attributes: + $ref: '#/components/schemas/ServiceNowTemplateAttributes' + id: + description: Unique identifier for the ServiceNow template + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + type: + $ref: '#/components/schemas/ServiceNowTemplateType' + required: + - id + - type + - attributes + type: object + ServiceNowTemplateUpdateRequestData: + description: Data object for updating a ServiceNow template + properties: + attributes: + $ref: '#/components/schemas/ServiceNowTemplateUpdateRequestAttributes' + type: + $ref: '#/components/schemas/ServiceNowTemplateType' + required: + - type + - attributes + type: object + ServiceNowInstancesData: + description: Array of ServiceNow instance data objects + items: + $ref: '#/components/schemas/ServiceNowInstanceData' + type: array + ServiceNowUsersData: + description: Array of ServiceNow user data objects + items: + $ref: '#/components/schemas/ServiceNowUserData' + type: array + SlackUserBindingData: + description: Slack team ID data from a response. + properties: + id: + description: The Slack team ID. + example: T01234567 + type: string + type: + $ref: '#/components/schemas/SlackUserBindingType' + type: object + StatuspageAccountResponseData: + description: Statuspage account data from a response. + properties: + attributes: + $ref: '#/components/schemas/StatuspageAccountResponseAttributes' + type: + $ref: '#/components/schemas/StatuspageAccountType' + required: + - type + - attributes + type: object + StatuspageAccountUpdateData: + description: Statuspage account data for an update request. + properties: + attributes: + $ref: '#/components/schemas/StatuspageAccountUpdateAttributes' + type: + $ref: '#/components/schemas/StatuspageAccountType' + required: + - type + - attributes + type: object + StatuspageAccountCreateData: + description: Statuspage account data for a create request. + properties: + attributes: + $ref: '#/components/schemas/StatuspageAccountCreateAttributes' + type: + $ref: '#/components/schemas/StatuspageAccountType' + required: + - type + - attributes + type: object + StatuspageUrlSettingResponseData: + description: Statuspage URL setting data from a response. + properties: + attributes: + $ref: '#/components/schemas/StatuspageUrlSettingResponseAttributes' + id: + description: The ID of the Statuspage URL setting. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/StatuspageUrlSettingType' + required: + - id + - type + - attributes + type: object + StatuspageUrlSettingCreateData: + description: Statuspage URL setting data for a create request. + properties: + attributes: + $ref: '#/components/schemas/StatuspageUrlSettingCreateAttributes' + type: + $ref: '#/components/schemas/StatuspageUrlSettingType' + required: + - type + - attributes + type: object + StatuspageUrlSettingUpdateData: + description: Statuspage URL setting data for an update request. + properties: + attributes: + $ref: '#/components/schemas/StatuspageUrlSettingUpdateAttributes' + id: + description: The ID of the Statuspage URL setting. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + maxLength: 100 + minLength: 1 + type: string + type: + $ref: '#/components/schemas/StatuspageUrlSettingType' + required: + - id + - type + - attributes + type: object + WebhooksAuthMethodProtocol: + description: Authentication protocol used by the auth method. + enum: + - oauth2-client-credentials + example: oauth2-client-credentials + type: string + x-enum-varnames: + - OAUTH2_CLIENT_CREDENTIALS + WebhooksAuthMethodResponseData: + description: Webhooks auth method data from a response. + properties: + attributes: + $ref: '#/components/schemas/WebhooksAuthMethodAttributes' + id: + description: The ID of the auth method. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + type: string + relationships: + $ref: '#/components/schemas/WebhooksAuthMethodRelationships' + type: + $ref: '#/components/schemas/WebhooksAuthMethodType' + required: + - id + - type + - attributes + type: object + WebhooksOAuth2ClientCredentialsResponseData: + description: OAuth2 client credentials data from a response. + properties: + attributes: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsResponseAttributes' + id: + description: The ID of the OAuth2 client credentials auth method. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + type: string + type: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsType' + required: + - id + - type + - attributes + type: object + WebhooksOAuth2ClientCredentialsCreateData: + description: OAuth2 client credentials data for a create request. + properties: + attributes: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsCreateAttributes' + type: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsType' + required: + - type + - attributes + type: object + WebhooksOAuth2ClientCredentialsUpdateData: + description: OAuth2 client credentials data for an update request. + properties: + attributes: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsUpdateAttributes' + type: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsType' + required: + - type + - attributes + type: object + Integration: + description: Integration resource object. + properties: + attributes: + $ref: '#/components/schemas/IntegrationAttributes' + id: + description: The unique identifier of the integration. + example: calico + type: string + links: + $ref: '#/components/schemas/IntegrationLinks' + type: + $ref: '#/components/schemas/IntegrationType' + required: + - type + - id + - attributes + type: object + CloudflareAccountResponseData: + description: Data object of a Cloudflare account. + properties: + attributes: + $ref: '#/components/schemas/CloudflareAccountResponseAttributes' + id: + description: The ID of the Cloudflare account, a hash of the account name. + example: c1a8e059bfd1e911cf10b626340c9a54 + type: string + type: + $ref: '#/components/schemas/CloudflareAccountType' + required: + - attributes + - id + - type + type: object + CloudflareAccountCreateRequestData: + description: Data object for creating a Cloudflare account. + properties: + attributes: + $ref: '#/components/schemas/CloudflareAccountCreateRequestAttributes' + type: + $ref: '#/components/schemas/CloudflareAccountType' + required: + - attributes + - type + type: object + CloudflareAccountUpdateRequestData: + description: Data object for updating a Cloudflare account. + properties: + attributes: + $ref: '#/components/schemas/CloudflareAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/CloudflareAccountType' + type: object + ConfluentAccountResponseData: + description: An API key and API secret pair that represents a Confluent account. + properties: + attributes: + $ref: '#/components/schemas/ConfluentAccountResponseAttributes' + id: + description: A randomly generated ID associated with a Confluent account. + example: account_id_abc123 + type: string + type: + $ref: '#/components/schemas/ConfluentAccountType' + required: + - attributes + - id + - type + type: object + ConfluentAccountCreateRequestData: + description: The data body for adding a Confluent account. + properties: + attributes: + $ref: '#/components/schemas/ConfluentAccountCreateRequestAttributes' + type: + $ref: '#/components/schemas/ConfluentAccountType' + required: + - attributes + - type + type: object + ConfluentAccountUpdateRequestData: + description: Data object for updating a Confluent account. + properties: + attributes: + $ref: '#/components/schemas/ConfluentAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/ConfluentAccountType' + required: + - attributes + - type + type: object + ConfluentResourceResponseData: + description: Confluent Cloud resource data. + properties: + attributes: + $ref: '#/components/schemas/ConfluentResourceResponseAttributes' + id: + description: The ID associated with the Confluent resource. + example: resource_id_abc123 + type: string + type: + $ref: '#/components/schemas/ConfluentResourceType' + required: + - attributes + - type + - id + type: object + ConfluentResourceRequestData: + description: JSON:API request for updating a Confluent resource. + properties: + attributes: + $ref: '#/components/schemas/ConfluentResourceRequestAttributes' + id: + description: The ID associated with a Confluent resource. + example: resource-id-123 + type: string + type: + $ref: '#/components/schemas/ConfluentResourceType' + required: + - attributes + - type + - id + type: object + FastlyAccountResponseData: + description: Data object of a Fastly account. + properties: + attributes: + $ref: '#/components/schemas/FastlyAccounResponseAttributes' + id: + description: The ID of the Fastly account, a hash of the account name. + example: abc123 + type: string + type: + $ref: '#/components/schemas/FastlyAccountType' + required: + - attributes + - id + - type + type: object + FastlyAccountCreateRequestData: + description: Data object for creating a Fastly account. + properties: + attributes: + $ref: '#/components/schemas/FastlyAccountCreateRequestAttributes' + type: + $ref: '#/components/schemas/FastlyAccountType' + required: + - attributes + - type + type: object + FastlyAccountUpdateRequestData: + description: Data object for updating a Fastly account. + properties: + attributes: + $ref: '#/components/schemas/FastlyAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/FastlyAccountType' + type: object + FastlyServiceData: + description: Data object for Fastly service requests. + properties: + attributes: + $ref: '#/components/schemas/FastlyServiceAttributes' + id: + description: The ID of the Fastly service. + example: abc123 + type: string + type: + $ref: '#/components/schemas/FastlyServiceType' + required: + - id + - type + type: object + OktaAccountResponseData: + description: Data object of an Okta account + properties: + attributes: + $ref: '#/components/schemas/OktaAccountAttributes' + id: + description: The ID of the Okta account, a UUID hash of the account name. + example: f749daaf-682e-4208-a38d-c9b43162c609 + type: string + type: + $ref: '#/components/schemas/OktaAccountType' + required: + - attributes + - id + - type + type: object + OktaAccount: + description: Schema for an Okta account. + properties: + attributes: + $ref: '#/components/schemas/OktaAccountAttributes' + id: + description: The ID of the Okta account, a UUID hash of the account name. + example: f749daaf-682e-4208-a38d-c9b43162c609 + type: string + type: + $ref: '#/components/schemas/OktaAccountType' + required: + - attributes + - type + type: object + OktaAccountUpdateRequestData: + description: Data object for updating an Okta account. + properties: + attributes: + $ref: '#/components/schemas/OktaAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/OktaAccountType' + type: object + BatchRowsQueryRequestData: + description: Data object for a batch rows query request. + properties: + attributes: + $ref: '#/components/schemas/BatchRowsQueryRequestDataAttributes' + type: + $ref: '#/components/schemas/BatchRowsQueryDataType' + required: + - type + type: object + BatchRowsQueryResponseData: + description: Data object for a batch rows query response. + properties: + id: + description: Unique identifier of the batch query. + type: string + relationships: + $ref: '#/components/schemas/BatchRowsQueryResponseDataRelationships' + type: + $ref: '#/components/schemas/BatchRowsQueryDataType' + required: + - type + type: object + TableRowResourceData: + additionalProperties: false + description: The data object containing the row column names and values. + properties: + attributes: + $ref: '#/components/schemas/TableRowResourceDataAttributes' + id: + description: Row identifier, corresponding to the primary key value. + type: string + type: + $ref: '#/components/schemas/TableRowResourceDataType' + required: + - type + type: object + TableResultV2Data: + additionalProperties: false + description: The data object containing the reference table configuration and state. + properties: + attributes: + $ref: '#/components/schemas/TableResultV2DataAttributes' + id: + description: Unique identifier for the reference table. + type: string + type: + $ref: '#/components/schemas/TableResultV2DataType' + required: + - type + type: object + CreateTableRequestData: + additionalProperties: false + description: The data object containing the table definition. + properties: + attributes: + $ref: '#/components/schemas/CreateTableRequestDataAttributes' + type: + $ref: '#/components/schemas/CreateTableRequestDataType' + required: + - type + type: object + PatchTableRequestData: + additionalProperties: false + description: The data object containing the partial table definition updates. + properties: + attributes: + $ref: '#/components/schemas/PatchTableRequestDataAttributes' + type: + $ref: '#/components/schemas/PatchTableRequestDataType' + required: + - type + type: object + TableRowResourceIdentifier: + description: Row resource containing a single row identifier. + properties: + id: + description: The primary key value that uniquely identifies the row to delete. + example: primary_key_value + type: string + type: + $ref: '#/components/schemas/TableRowResourceDataType' + required: + - type + - id + type: object + BatchUpsertRowsRequestData: + description: Row resource containing a single row identifier and its column values. + properties: + attributes: + $ref: '#/components/schemas/BatchUpsertRowsRequestDataAttributes' + id: + description: The primary key value that uniquely identifies the row to create or update. + example: primary_key_value + type: string + type: + $ref: '#/components/schemas/TableRowResourceDataType' + required: + - type + - id + type: object + ListRowsResponseLinks: + description: Pagination links for the list rows response. + properties: + first: + description: Link to the first page of results. + example: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Blimit%5D=100 + type: string + next: + description: Link to the next page of results. Only present when more rows are available. + example: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100 + type: string + self: + description: Link to the current page of results. + example: /api/v2/reference-tables/tables/00000000-0000-0000-0000-000000000000/rows/list?page%5Bcontinuation_token%5D=eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ%3D%3D&page%5Blimit%5D=100 + type: string + required: + - self + - first + type: object + ListRowsResponseMeta: + description: Contains pagination details, including the continuation token for fetching additional rows. + properties: + page: + $ref: '#/components/schemas/ListRowsResponseMetaPage' + type: object + CreateUploadRequestData: + additionalProperties: false + description: Request data for creating an upload for a file to be ingested into a reference table. + properties: + attributes: + $ref: '#/components/schemas/CreateUploadRequestDataAttributes' + type: + $ref: '#/components/schemas/CreateUploadRequestDataType' + required: + - type + type: object + CreateUploadResponseData: + additionalProperties: false + description: Upload ID and attributes of the created upload. + properties: + attributes: + $ref: '#/components/schemas/CreateUploadResponseDataAttributes' + id: + description: Unique identifier for this upload. Use this ID when creating the reference table. + type: string + type: + $ref: '#/components/schemas/CreateUploadResponseDataType' + required: + - type + type: object + WebIntegrationAccountResponseData: + description: Data object of a web integration account. + properties: + attributes: + $ref: '#/components/schemas/WebIntegrationAccountResponseAttributes' + id: + description: The unique identifier of the web integration account. + example: abc123def456 + type: string + type: + $ref: '#/components/schemas/WebIntegrationAccountType' + required: + - attributes + - id + - type + type: object + WebIntegrationAccountCreateRequestData: + description: Data object for creating a web integration account. + properties: + attributes: + $ref: '#/components/schemas/WebIntegrationAccountCreateRequestAttributes' + type: + $ref: '#/components/schemas/WebIntegrationAccountType' + required: + - attributes + - type + type: object + WebIntegrationAccountUpdateRequestData: + description: Data object for updating a web integration account. + properties: + attributes: + $ref: '#/components/schemas/WebIntegrationAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/WebIntegrationAccountType' + required: + - attributes + - type + type: object + AWSEventBridgeDeleteStatus: + description: The event source status "empty". + enum: + - empty + example: empty + type: string + x-enum-varnames: + - EMPTY + AWSEventBridgeAccountConfigurationV1: + description: The EventBridge configuration for one AWS account. + properties: + accountId: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + eventHubs: + description: Array of AWS event sources associated with this account. + items: + $ref: '#/components/schemas/AWSEventBridgeSourceV1' + type: array + tags: + description: |- + Array of tags (in the form `key:value`) which are added to all hosts + and metrics reporting through the main AWS integration. + example: + - $KEY:$VALUE + items: + description: The list of the host_tags. + type: string + type: array + type: object + AWSEventBridgeCreateStatus: + description: The event source status "created". + enum: + - created + example: created + type: string + x-enum-varnames: + - CREATED + AWSNamespace: + description: The namespace associated with the tag filter entry. + enum: + - elb + - application_elb + - sqs + - rds + - custom + - network_elb + - lambda + - step_functions + type: string + x-enum-varnames: + - ELB + - APPLICATION_ELB + - SQS + - RDS + - CUSTOM + - NETWORK_ELB + - LAMBDA + - STEP_FUNCTIONS + AWSTagFilter: + description: A tag filter. + properties: + namespace: + $ref: '#/components/schemas/AWSNamespace' + tag_filter_str: + description: The tag filter string. + example: prod* + type: string + type: object + AWSLogsLambda: + description: Description of the Lambdas. + properties: + arn: + description: Available ARN IDs. + type: string + type: object + AWSLogsAsyncError: + description: Description of errors. + properties: + code: + description: Code properties + example: no_such_config + type: string + message: + description: Message content. + example: AWS account 12345 has no Lambda config to update + type: string + type: object + ResourceProviderConfig: + description: Configuration settings applied to resources from the specified Azure resource provider. + properties: + metrics_enabled: + description: Collect metrics for resources from this provider. + example: true + type: boolean + namespace: + description: The provider namespace to apply this configuration to. + example: Microsoft.Compute + type: string + type: object + GCPMonitoredResourceConfig: + description: Configuration for a GCP monitored resource. + properties: + filters: + description: |- + List of filters to limit the monitored resources that are pulled into Datadog by using tags. + Only monitored resources that apply to specified filters are imported into Datadog. + example: + - $KEY:$VALUE + items: + description: A monitored resource filter + type: string + type: array + type: + $ref: '#/components/schemas/GCPMonitoredResourceConfigType' + type: object + SlackIntegrationChannelDisplay: + description: Configuration options for what is shown in an alert event message. + properties: + message: + default: true + description: Show the main body of the alert event. + type: boolean + mute_buttons: + default: false + description: Show interactive buttons to mute the alerting monitor. + type: boolean + notified: + default: true + description: Show the list of @-handles in the alert event. + type: boolean + snapshot: + default: true + description: Show the alert event's snapshot image. + type: boolean + tags: + default: true + description: Show the scopes on which the monitor alerted. + type: boolean + type: object + WebhooksIntegrationEncoding: + default: json + description: Encoding type. Can be given either `json` or `form`. + enum: + - json + - form + type: string + x-enum-varnames: + - JSON + - FORM + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + AWSCloudAuthPersonaMappingCreateAttributes: + description: Attributes for creating an AWS cloud authentication persona mapping + properties: + account_identifier: + description: Datadog account identifier (email or handle) mapped to the AWS principal + example: test@test.com + type: string + arn_pattern: + description: AWS IAM ARN pattern to match for authentication + example: arn:aws:iam::123456789012:user/testuser + type: string + required: + - arn_pattern + - account_identifier + type: object + AWSCloudAuthPersonaMappingType: + description: Type identifier for AWS cloud authentication persona mapping + enum: + - aws_cloud_auth_config + example: aws_cloud_auth_config + type: string + x-enum-varnames: + - AWS_CLOUD_AUTH_CONFIG + AWSCloudAuthPersonaMappingAttributesResponse: + description: Attributes for AWS cloud authentication persona mapping response + properties: + account_identifier: + description: Datadog account identifier (email or handle) mapped to the AWS principal + example: test@test.com + type: string + account_uuid: + description: Datadog account UUID + example: 12bbdc5c-5966-47e0-8733-285f9e44bcf4 + type: string + arn_pattern: + description: AWS IAM ARN pattern to match for authentication + example: arn:aws:iam::123456789012:user/testuser + type: string + required: + - arn_pattern + - account_identifier + - account_uuid + type: object + EntityIntegrationConfigAttributes: + description: The organization ID, integration identifier, and integration-specific configuration payload for an entity integration configuration. + properties: + config: + $ref: '#/components/schemas/EntityIntegrationConfigPayload' + integration_id: + description: The identifier of the integration this configuration applies to (for example, `github`, `jira`, or `pagerduty`). + example: github + type: string + org_id: + description: The Datadog organization identifier that owns this configuration. + example: 1234 + format: int64 + type: integer + required: + - org_id + - integration_id + - config + type: object + EntityIntegrationConfigType: + default: entity_integration_configs + description: JSON:API resource type for an entity integration configuration. Always `entity_integration_configs`. + enum: + - entity_integration_configs + example: entity_integration_configs + type: string + x-enum-varnames: + - ENTITY_INTEGRATION_CONFIGS + EntityIntegrationConfigRequestAttributes: + description: Attributes used to create or update an entity integration configuration. + properties: + config: + $ref: '#/components/schemas/EntityIntegrationConfigPayload' + required: + - config + type: object + EntityIntegrationConfigRequestType: + default: entity_integration_config_requests + description: JSON:API resource type for the entity integration configuration create or update request. Always `entity_integration_config_requests`. + enum: + - entity_integration_config_requests + example: entity_integration_config_requests + type: string + x-enum-varnames: + - ENTITY_INTEGRATION_CONFIG_REQUESTS + ElasticCloudIntegrationAccountResponseAttributes: + description: Attributes of an Elastic Cloud integration account returned in responses. + properties: + authentication: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountAuthenticationResponse' + dataflows: + $ref: '#/components/schemas/ElasticCloudIntegrationDataflowsResponse' + name: + description: Human-readable name of the Elastic Cloud integration account. + example: elastic-cloud-prod + type: string + settings: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountSettingsResponse' + required: + - name + - settings + type: object + IntegrationAccountType: + default: integration-account + description: The type of the integration account resource. Always `integration-account`. + enum: + - integration-account + example: integration-account + type: string + x-enum-varnames: + - INTEGRATION_ACCOUNT + ElasticCloudIntegrationAccountCreateAttributes: + description: Writable attributes used to create an Elastic Cloud integration account. + properties: + authentication: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountAuthenticationRequest' + dataflows: + $ref: '#/components/schemas/ElasticCloudIntegrationDataflowsRequest' + name: + description: Human-readable name of the Elastic Cloud integration account. + example: elastic-cloud-prod + type: string + settings: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountSettingsRequest' + required: + - name + - authentication + - settings + type: object + ElasticCloudIntegrationAccountUpdateAttributes: + description: Writable attributes used to update an Elastic Cloud integration account. Every field is optional; only the fields provided are changed. When `dataflows` is provided, only the dataflow ids included in the request are modified; dataflows omitted from the map keep their current configuration. + properties: + authentication: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountAuthenticationUpdate' + dataflows: + $ref: '#/components/schemas/ElasticCloudIntegrationDataflowsRequest' + name: + description: Human-readable name of the Elastic Cloud integration account. + example: elastic-cloud-prod + type: string + settings: + $ref: '#/components/schemas/ElasticCloudIntegrationAccountSettingsUpdate' + type: object + TwilioIntegrationAccountResponseAttributes: + description: Attributes of a Twilio integration account returned in responses. + properties: + authentication: + $ref: '#/components/schemas/TwilioIntegrationAccountAuthenticationResponse' + dataflows: + $ref: '#/components/schemas/TwilioIntegrationDataflowsResponse' + name: + description: Human-readable name of the Twilio integration account. + example: twilio-prod + type: string + settings: + $ref: '#/components/schemas/TwilioIntegrationAccountSettingsResponse' + required: + - name + - settings + type: object + TwilioIntegrationAccountCreateAttributes: + description: Writable attributes used to create a Twilio integration account. + properties: + authentication: + $ref: '#/components/schemas/TwilioIntegrationAccountAuthenticationRequest' + dataflows: + $ref: '#/components/schemas/TwilioIntegrationDataflowsRequest' + name: + description: Human-readable name of the Twilio integration account. + example: twilio-prod + type: string + settings: + $ref: '#/components/schemas/TwilioIntegrationAccountSettingsRequest' + required: + - name + - authentication + - settings + type: object + TwilioIntegrationAccountUpdateAttributes: + description: Writable attributes used to update a Twilio integration account. Every field is optional; only the fields provided are changed. When `dataflows` is provided, only the dataflow ids included in the request are modified; dataflows omitted from the map keep their current configuration. + properties: + authentication: + $ref: '#/components/schemas/TwilioIntegrationAccountAuthenticationUpdate' + dataflows: + $ref: '#/components/schemas/TwilioIntegrationDataflowsRequest' + name: + description: Human-readable name of the Twilio integration account. + example: twilio-prod + type: string + settings: + $ref: '#/components/schemas/TwilioIntegrationAccountSettingsUpdate' + type: object + AWSAccountResponseAttributes: + description: AWS Account response attributes. + properties: + account_tags: + $ref: '#/components/schemas/AWSAccountTags' + auth_config: + $ref: '#/components/schemas/AWSAuthConfig' + aws_account_id: + $ref: '#/components/schemas/AWSAccountID' + aws_partition: + $ref: '#/components/schemas/AWSAccountPartition' + aws_regions: + $ref: '#/components/schemas/AWSRegions' + created_at: + description: Timestamp of when the account integration was created. + format: date-time + readOnly: true + type: string + logs_config: + $ref: '#/components/schemas/AWSLogsConfig' + metrics_config: + $ref: '#/components/schemas/AWSMetricsConfig' + modified_at: + description: Timestamp of when the account integration was updated. + format: date-time + readOnly: true + type: string + resources_config: + $ref: '#/components/schemas/AWSResourcesConfig' + traces_config: + $ref: '#/components/schemas/AWSTracesConfig' + required: + - aws_account_id + type: object + AWSAccountConfigID: + description: |- + Unique Datadog ID of the AWS Account Integration Config. + To get the config ID for an account, use the + [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) + endpoint and query by AWS Account ID. + example: 00000000-abcd-0001-0000-000000000000 + type: string + AWSAccountType: + default: account + description: AWS Account resource type. + enum: + - account + example: account + type: string + x-enum-varnames: + - ACCOUNT + AWSAccountCreateRequestAttributes: + description: The AWS Account Integration Config to be created. + properties: + account_tags: + $ref: '#/components/schemas/AWSAccountTags' + auth_config: + $ref: '#/components/schemas/AWSAuthConfig' + aws_account_id: + $ref: '#/components/schemas/AWSAccountID' + aws_partition: + $ref: '#/components/schemas/AWSAccountPartition' + aws_regions: + $ref: '#/components/schemas/AWSRegions' + logs_config: + $ref: '#/components/schemas/AWSLogsConfig' + metrics_config: + $ref: '#/components/schemas/AWSMetricsConfig' + resources_config: + $ref: '#/components/schemas/AWSResourcesConfig' + traces_config: + $ref: '#/components/schemas/AWSTracesConfig' + required: + - aws_account_id + - aws_partition + - auth_config + type: object + AWSAccountUpdateRequestAttributes: + description: The AWS Account Integration Config to be updated. + properties: + account_tags: + $ref: '#/components/schemas/AWSAccountTags' + auth_config: + $ref: '#/components/schemas/AWSAuthConfig' + aws_account_id: + $ref: '#/components/schemas/AWSAccountID' + aws_partition: + $ref: '#/components/schemas/AWSAccountPartition' + aws_regions: + $ref: '#/components/schemas/AWSRegions' + logs_config: + $ref: '#/components/schemas/AWSLogsConfig' + metrics_config: + $ref: '#/components/schemas/AWSMetricsConfig' + resources_config: + $ref: '#/components/schemas/AWSResourcesConfig' + traces_config: + $ref: '#/components/schemas/AWSTracesConfig' + required: + - aws_account_id + type: object + AWSCcmConfigResponseAttributes: + description: AWS CCM Config response attributes. + properties: + data_export_configs: + description: List of data export configurations for Cost and Usage Reports. + items: + $ref: '#/components/schemas/DataExportConfig' + type: array + type: object + AWSCcmConfigType: + default: ccm_config + description: AWS CCM Config resource type. + enum: + - ccm_config + example: ccm_config + type: string + x-enum-varnames: + - CCM_CONFIG + AWSCcmConfigRequestAttributes: + description: AWS CCM Config attributes for Create/Update requests. + properties: + ccm_config: + $ref: '#/components/schemas/AWSCcmConfig' + required: + - ccm_config + type: object + AWSMetricNameFilterPreviewResponseAttributes: + description: AWS metric name filter preview response attributes. + properties: + namespaces: + description: The list of namespaces affected by the previewed metric name filters. + items: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewNamespace' + type: array + required: + - namespaces + type: object + AWSMetricNameFilterPreviewType: + default: metric_name_filter_preview + description: The `AWSMetricNameFilterPreviewResponseData` `type`. + enum: + - metric_name_filter_preview + example: metric_name_filter_preview + type: string + x-enum-varnames: + - METRIC_NAME_FILTER_PREVIEW + AWSMetricNameFilterPreviewRequestAttributes: + description: AWS metric name filter preview request attributes. + properties: + metric_name_filters: + description: The metric name filters to preview. + items: + $ref: '#/components/schemas/AWSMetricNameFilters' + type: array + required: + - metric_name_filters + type: object + AWSNamespacesResponseAttributes: + description: AWS Namespaces response attributes. + properties: + namespaces: + description: AWS CloudWatch namespace. + example: + - AWS/ApiGateway + items: + description: An AWS CloudWatch namespace name. + example: AWS/ApiGateway + type: string + type: array + required: + - namespaces + type: object + AWSNamespacesResponseDataType: + default: namespaces + description: The `AWSNamespacesResponseData` `type`. + enum: + - namespaces + example: namespaces + type: string + x-enum-varnames: + - NAMESPACES + AWSEventBridgeDeleteRequestAttributes: + description: The EventBridge source to be deleted. + properties: + account_id: + $ref: '#/components/schemas/AWSAccountID' + event_generator_name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + required: + - account_id + - event_generator_name + - region + type: object + AWSEventBridgeType: + default: event_bridge + description: Amazon EventBridge resource type. + enum: + - event_bridge + example: event_bridge + type: string + x-enum-varnames: + - EVENT_BRIDGE + AWSEventBridgeDeleteResponseAttributes: + description: The EventBridge source delete response attributes. + properties: + status: + $ref: '#/components/schemas/AWSEventBridgeDeleteStatus' + type: object + AWSEventBridgeListResponseAttributes: + description: An object describing the EventBridge configuration for multiple accounts. + properties: + accounts: + description: List of accounts with their event sources. + items: + $ref: '#/components/schemas/AWSEventBridgeAccountConfiguration' + type: array + is_installed: + description: True if the EventBridge integration is enabled for your organization. + type: boolean + type: object + AWSEventBridgeCreateRequestAttributes: + description: The EventBridge source to be created. + properties: + account_id: + $ref: '#/components/schemas/AWSAccountID' + create_event_bus: + description: |- + Set to true if Datadog should create the event bus in addition to the event + source. Requires the `events:CreateEventBus` permission. + example: true + type: boolean + event_generator_name: + description: |- + The given part of the event source name, which is then combined with an + assigned suffix to form the full name. + example: app-alerts + type: string + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + required: + - account_id + - event_generator_name + - region + type: object + AWSEventBridgeCreateResponseAttributes: + description: A created EventBridge source. + properties: + event_source_name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + has_bus: + description: True if the event bus was created in addition to the source. + example: true + type: boolean + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + status: + $ref: '#/components/schemas/AWSEventBridgeCreateStatus' + type: object + AWSNewExternalIDResponseAttributes: + description: AWS External ID response body. + properties: + external_id: + description: AWS IAM External ID for associated role. + example: acb8f6b8a844443dbb726d07dcb1a870 + type: string + required: + - external_id + type: object + AWSNewExternalIDResponseDataType: + default: external_id + description: The `AWSNewExternalIDResponseData` `type`. + enum: + - external_id + example: external_id + type: string + x-enum-varnames: + - EXTERNAL_ID + AWSIntegrationIamPermissionsResponseAttributes: + description: AWS Integration IAM Permissions response attributes. + properties: + permissions: + description: List of AWS IAM permissions required for the integration. + example: + - account:GetContactInformation + - amplify:ListApps + - amplify:ListArtifacts + - amplify:ListBackendEnvironments + - amplify:ListBranches + items: + description: An AWS IAM permission required for the Datadog integration. + example: account:GetContactInformation + type: string + type: array + required: + - permissions + type: object + AWSIntegrationIamPermissionsResponseDataType: + default: permissions + description: The `AWSIntegrationIamPermissionsResponseData` `type`. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + AWSLogsServicesResponseAttributes: + description: AWS Logs Services response body + properties: + logs_services: + description: List of AWS services that can send logs to Datadog + example: + - s3 + items: + description: The name of an AWS service that can send logs to Datadog. + example: s3 + type: string + type: array + required: + - logs_services + type: object + AWSLogsServicesResponseDataType: + default: logs_services + description: The `AWSLogsServicesResponseData` `type`. + enum: + - logs_services + example: logs_services + type: string + x-enum-varnames: + - LOGS_SERVICES + AWSCcmConfigValidationRequestAttributes: + description: Attributes for an AWS CCM config validation request. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + bucket_name: + description: Name of the S3 bucket where the Cost and Usage Report is stored. + example: billing + type: string + bucket_region: + description: AWS region of the S3 bucket. + example: us-east-1 + type: string + report_name: + description: Name of the Cost and Usage Report. + example: cost-and-usage-report + type: string + report_prefix: + description: S3 prefix where the Cost and Usage Report is stored. + example: reports + type: string + required: + - account_id + - bucket_name + - bucket_region + - report_name + type: object + AWSCcmConfigValidationType: + default: ccm_config_validation + description: AWS CCM config validation resource type. + enum: + - ccm_config_validation + example: ccm_config_validation + type: string + x-enum-varnames: + - CCM_CONFIG_VALIDATION + AWSCcmConfigValidationResponseAttributes: + description: Attributes for an AWS CCM config validation response. + properties: + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' + type: string + issues: + $ref: '#/components/schemas/AWSCcmConfigValidationIssues' + required: + - account_id + - issues + type: object + GCPSTSServiceAccountAttributes: + description: Attributes associated with your service account. + properties: + account_tags: + description: Tags to be associated with GCP metrics and service checks from your account. + items: + description: Account Level Tag + type: string + type: array + automute: + description: Silence monitors for expected GCE instance shutdowns. + type: boolean + client_email: + description: Your service account email address. + example: datadog-service-account@test-project.iam.gserviceaccount.com + type: string + cloud_run_revision_filters: + deprecated: true + description: |- + List of filters to limit the Cloud Run revisions that are pulled into Datadog by using tags. + Only Cloud Run revision resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=cloud_run_revision` + example: + - $KEY:$VALUE + items: + description: Cloud Run revision filters + type: string + type: array + host_filters: + deprecated: true + description: |- + List of filters to limit the VM instances that are pulled into Datadog by using tags. + Only VM instance resources that apply to specified filters are imported into Datadog. + **Note:** This field is deprecated. Instead, use `monitored_resource_configs` with `type=gce_instance` + example: + - $KEY:$VALUE + items: + description: VM instance filters + type: string + type: array + is_cspm_enabled: + description: 'When enabled, Datadog will activate the Cloud Security Monitoring product for this service account. Note: This requires resource_collection_enabled to be set to true.' + type: boolean + is_global_location_enabled: + default: true + description: When enabled, Datadog collects metrics where location is explicitly stated as "global" or where location information cannot be deduced from GCP labels. + example: true + type: boolean + is_per_project_quota_enabled: + default: false + description: When enabled, Datadog applies the `X-Goog-User-Project` header, attributing Google Cloud billing and quota usage to the project being monitored rather than the default service account project. + example: true + type: boolean + is_resource_change_collection_enabled: + default: false + description: When enabled, Datadog scans for all resource change data in your Google Cloud environment. + example: true + type: boolean + is_security_command_center_enabled: + default: false + description: 'When enabled, Datadog will attempt to collect Security Command Center Findings. Note: This requires additional permissions on the service account.' + example: true + type: boolean + metric_namespace_configs: + description: Configurations for GCP metric namespaces. + example: + - disabled: true + id: aiplatform + - filters: + - snapshot.* + - '!*_by_region' + id: pubsub + items: + $ref: '#/components/schemas/GCPMetricNamespaceConfig' + type: array + monitored_resource_configs: + description: Configurations for GCP monitored resources. + example: + - filters: + - $KEY:$VALUE + type: gce_instance + items: + $ref: '#/components/schemas/GCPMonitoredResourceConfig' + type: array + region_filter_configs: + description: Configurations for GCP location filtering, such as region, multi-region, or zone. Only monitored resources that match the specified regions are imported into Datadog. By default, Datadog collects from all locations. + example: + - nam4 + - europe-north1 + items: + description: Region Filter Configs + type: string + type: array + resource_collection_enabled: + description: When enabled, Datadog scans for all resources in your GCP environment. + type: boolean + type: object + GCPServiceAccountMeta: + description: Additional information related to your service account. + properties: + accessible_projects: + description: The current list of projects accessible from your service account. + items: + description: List of GCP projects. + type: string + type: array + type: object + GCPServiceAccountType: + default: gcp_service_account + description: The type of account. + enum: + - gcp_service_account + example: gcp_service_account + type: string + x-enum-varnames: + - GCP_SERVICE_ACCOUNT + GCPSTSDelegateAccountAttributes: + description: Your delegate account attributes. + properties: + delegate_account_email: + description: Your organization's Datadog principal email address. + example: ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com + type: string + type: object + GCPSTSDelegateAccountType: + default: gcp_sts_delegate + description: The type of account. + enum: + - gcp_sts_delegate + example: gcp_sts_delegate + type: string + x-enum-varnames: + - GCP_STS_DELEGATE + GoogleChatOrganizationAttributes: + description: Google Chat organization attributes. + properties: + domain_id: + description: The Google Chat organization domain ID. + example: fake-domain-id + maxLength: 255 + type: string + domain_name: + description: The Google Chat organization domain name. + example: example.com + maxLength: 255 + type: string + type: object + GoogleChatOrganizationRelationships: + description: Google Chat organization relationships. + properties: + delegated_user: + $ref: '#/components/schemas/GoogleChatOrganizationRelationshipsDelegatedUser' + type: object + GoogleChatOrganizationType: + default: google-chat-organization + description: Google Chat organization resource type. + enum: + - google-chat-organization + example: google-chat-organization + type: string + x-enum-varnames: + - GOOGLE_CHAT_ORGANIZATION_TYPE + GoogleChatAppNamedSpaceResponseAttributes: + description: Google Chat space attributes. + properties: + display_name: + description: Google space display name. + example: Fake Space Name + maxLength: 255 + type: string + organization_binding_id: + description: Organization binding ID. + example: 2f18a894-adb5-4c53-8248-39fd3f5386a5 + maxLength: 255 + type: string + resource_name: + description: Google space resource name. + example: spaces/AAAAAAAAA + maxLength: 255 + type: string + space_uri: + description: Google space URI. + example: https://chat.google.com/room/AAAAAAAAA + maxLength: 255 + type: string + type: object + GoogleChatAppNamedSpaceType: + default: google-chat-app-named-space + description: Google Chat space resource type. + enum: + - google-chat-app-named-space + example: google-chat-app-named-space + type: string + x-enum-varnames: + - GOOGLE_CHAT_APP_NAMED_SPACE_TYPE + GoogleChatDelegatedUserAttributes: + description: Google Chat delegated user attributes. + properties: + display_name: + description: The delegated user's display name. + example: fake-display-name + type: string + email: + description: The delegated user's email address. + example: user@example.com + type: string + features: + description: The list of features enabled for the delegated user. + items: + type: string + type: array + type: object + GoogleChatDelegatedUserType: + default: google-chat-delegated-user + description: Google Chat delegated user resource type. + enum: + - google-chat-delegated-user + example: google-chat-delegated-user + type: string + x-enum-varnames: + - GOOGLE_CHAT_DELEGATED_USER_TYPE + GoogleChatOrganizationHandleResponseAttributes: + description: Organization handle attributes. + properties: + name: + description: Organization handle name. + example: fake-handle-name + maxLength: 255 + type: string + space_display_name: + description: Google space display name. + example: Fake Space Name + maxLength: 255 + type: string + space_resource_name: + description: Google space resource name. + example: spaces/AAAAAAAAA + maxLength: 255 + type: string + type: object + GoogleChatCreateOrganizationHandleRequestAttributes: + description: Organization handle attributes for a create request. + properties: + name: + description: Organization handle name. + example: fake-handle-name + maxLength: 255 + type: string + space_resource_name: + description: Google space resource name. + example: spaces/AAAAAAAAA + maxLength: 255 + type: string + required: + - name + - space_resource_name + type: object + GoogleChatUpdateOrganizationHandleRequestAttributes: + description: Organization handle attributes for an update request. + properties: + name: + description: Organization handle name. + example: fake-handle-name + maxLength: 255 + type: string + space_resource_name: + description: Google space resource name. + example: spaces/AAAAAAAAA + maxLength: 255 + type: string + type: object + GoogleChatTargetAudienceAttributes: + description: Google Chat target audience attributes. + properties: + audience_id: + description: The audience ID. + example: fake-audience-id-1 + maxLength: 255 + type: string + audience_name: + description: The audience name. + example: fake audience name 1 + maxLength: 255 + type: string + required: + - audience_name + - audience_id + type: object + GoogleChatTargetAudienceType: + default: google-chat-target-audience + description: Google Chat target audience resource type. + enum: + - google-chat-target-audience + example: google-chat-target-audience + type: string + x-enum-varnames: + - GOOGLE_CHAT_TARGET_AUDIENCE_TYPE + GoogleChatTargetAudienceCreateRequestAttributes: + description: Attributes for creating a Google Chat target audience. + properties: + audience_id: + description: The audience ID. + example: fake-audience-id-1 + maxLength: 255 + type: string + audience_name: + description: The audience name. + example: fake audience name 1 + maxLength: 255 + type: string + required: + - audience_name + - audience_id + type: object + GoogleChatTargetAudienceUpdateRequestAttributes: + description: Attributes for updating a Google Chat target audience. + properties: + audience_id: + description: The audience ID. + example: fake-audience-id-1 + maxLength: 255 + type: string + audience_name: + description: The audience name. + example: fake audience name 1 + maxLength: 255 + type: string + type: object + JiraAccountData: + description: Data object for a Jira account + properties: + attributes: + $ref: '#/components/schemas/JiraAccountAttributes' + id: + description: Unique identifier for the Jira account + example: account-1 + type: string + type: + $ref: '#/components/schemas/JiraAccountType' required: - - data + - id + - type + - attributes type: object - AWSIntegrationIamPermissionsResponse: - description: AWS Integration IAM Permissions response body. + JiraIssueTemplateCreateRequestAttributes: + description: Attributes for creating a Jira issue template properties: - data: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseData' + fields: + additionalProperties: {} + description: Custom fields for the Jira issue template + example: + description: + payload: Test + type: json + type: object + issue_type_id: + description: The ID of the Jira issue type + example: '12730' + type: string + jira-account: + $ref: '#/components/schemas/JiraIssueTemplateCreateRequestAttributesJiraAccount' + name: + description: The name of the issue template + example: test-template + type: string + project_id: + description: The ID of the Jira project + example: '10772' + type: string + type: object + JiraIssueTemplateType: + description: Type identifier for Jira issue template resources + enum: + - jira-issue-template + example: jira-issue-template + type: string + x-enum-varnames: + - JIRA_ISSUE_TEMPLATE + JiraIssueTemplateDataAttributes: + description: Attributes of a Jira issue template + properties: + fields: + additionalProperties: {} + description: Custom fields for the Jira issue template + example: + description: + payload: Test Description + type: json + type: object + issue_type_id: + description: The ID of the Jira issue type + example: '456' + type: string + name: + description: The name of the issue template + example: Test Template + type: string + project_id: + description: The ID of the Jira project + example: '123' + type: string required: - - data + - name + - project_id + - issue_type_id + - fields type: object - AWSLogsServicesResponse: - description: AWS Logs Services response body + JiraIssueTemplateDataRelationships: + description: Relationships of a Jira issue template properties: - data: - $ref: '#/components/schemas/AWSLogsServicesResponseData' + jira-account: + $ref: '#/components/schemas/JiraAccountRelationship' required: - - data + - jira-account type: object - GCPSTSServiceAccountsResponse: - description: Object containing all your STS enabled accounts. + JiraIssueTemplateUpdateRequestAttributes: + description: Attributes for updating a Jira issue template properties: - data: - description: Array of GCP STS enabled service accounts. - items: - $ref: '#/components/schemas/GCPSTSServiceAccount' - type: array + fields: + additionalProperties: {} + description: Custom fields for the Jira issue template + example: + description: + payload: Updated Description + type: json + type: object + name: + description: The name of the issue template + example: test_template_updated + type: string type: object - GCPSTSServiceAccountCreateRequest: - description: Data on your newly generated service account. + MicrosoftTeamsChannelInfoResponseAttributes: + description: Channel attributes. properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccountData' + is_primary: + description: Indicates if this is the primary channel. + example: true + maxLength: 255 + type: boolean + team_id: + description: Team id. + example: 00000000-0000-0000-0000-000000000000 + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: 00000000-0000-0000-0000-000000000001 + maxLength: 255 + type: string type: object - GCPSTSServiceAccountResponse: - description: The account creation response. + MicrosoftTeamsChannelInfoType: + default: ms-teams-channel-info + description: Channel info resource type. + enum: + - ms-teams-channel-info + example: ms-teams-channel-info + type: string + x-enum-varnames: + - MS_TEAMS_CHANNEL_INFO + MicrosoftTeamsTenantBasedHandleInfoResponseAttributes: + description: Tenant-based handle attributes. properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccount' + channel_id: + description: Channel id. + example: fake-channel-id + maxLength: 255 + type: string + channel_name: + description: Channel name. + example: fake-channel-name + maxLength: 255 + type: string + name: + description: Tenant-based handle name. + example: fake-handle-name + maxLength: 255 + type: string + team_id: + description: Team id. + example: 00000000-0000-0000-0000-000000000000 + maxLength: 255 + type: string + team_name: + description: Team name. + example: fake-team-name + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: 00000000-0000-0000-0000-000000000001 + maxLength: 255 + type: string + tenant_name: + description: Tenant name. + example: fake-tenant-name + maxLength: 255 + type: string type: object - GCPSTSServiceAccountUpdateRequest: - description: Service account info. + MicrosoftTeamsTenantBasedHandleInfoType: + default: ms-teams-tenant-based-handle-info + description: Tenant-based handle resource type. + enum: + - ms-teams-tenant-based-handle-info + example: ms-teams-tenant-based-handle-info + type: string + x-enum-varnames: + - MS_TEAMS_TENANT_BASED_HANDLE_INFO + MicrosoftTeamsTenantBasedHandleRequestAttributes: + description: Tenant-based handle attributes. properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequestData' + channel_id: + description: Channel id. + example: fake-channel-id + maxLength: 255 + type: string + name: + description: Tenant-based handle name. + example: fake-handle-name + maxLength: 255 + type: string + team_id: + description: Team id. + example: 00000000-0000-0000-0000-000000000000 + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: 00000000-0000-0000-0000-000000000001 + maxLength: 255 + type: string + required: + - name + - channel_id + - team_id + - tenant_id type: object - GCPSTSDelegateAccountResponse: - description: Your delegate service account response data. + MicrosoftTeamsTenantBasedHandleType: + default: tenant-based-handle + description: Specifies the tenant-based handle resource type. + enum: + - tenant-based-handle + example: tenant-based-handle + type: string + x-enum-varnames: + - TENANT_BASED_HANDLE + MicrosoftTeamsTenantBasedHandleAttributes: + description: Tenant-based handle attributes. properties: - data: - $ref: '#/components/schemas/GCPSTSDelegateAccount' + channel_id: + description: Channel id. + example: fake-channel-id + maxLength: 255 + type: string + name: + description: Tenant-based handle name. + example: fake-handle-name + maxLength: 255 + type: string + team_id: + description: Team id. + example: 00000000-0000-0000-0000-000000000000 + maxLength: 255 + type: string + tenant_id: + description: Tenant id. + example: 00000000-0000-0000-0000-000000000001 + maxLength: 255 + type: string type: object - MicrosoftTeamsGetChannelByNameResponse: - description: Response with channel, team, and tenant ID information. + MicrosoftTeamsWorkflowsWebhookResponseAttributes: + description: Workflows Webhook handle attributes. properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseData' + name: + description: Workflows Webhook handle name. + example: fake-handle-name + maxLength: 255 + type: string type: object - MicrosoftTeamsTenantBasedHandlesResponse: - description: Response with a list of tenant-based handles. + MicrosoftTeamsWorkflowsWebhookHandleType: + default: workflows-webhook-handle + description: Specifies the Workflows webhook handle resource type. + enum: + - workflows-webhook-handle + example: workflows-webhook-handle + type: string + x-enum-varnames: + - WORKFLOWS_WEBHOOK_HANDLE + MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes: + description: Workflows Webhook handle attributes. properties: - data: - description: An array of tenant-based handles. - example: - - attributes: - channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 - channelName: General - name: general-handle - teamId: 00000000-0000-0000-0000-000000000000 - teamName: Example Team - tenantId: 00000000-0000-0000-0000-000000000001 - tenantName: Company, Inc. - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: ms-teams-tenant-based-handle-info - - attributes: - channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgk1@thread.tacv2 - channelName: General2 - name: general-handle-2 - teamId: 00000000-0000-0000-0000-000000000002 - teamName: Example Team 2 - tenantId: 00000000-0000-0000-0000-000000000003 - tenantName: Company, Inc. - id: 596da4af-0563-4097-90ff-07230c3f9db4 - type: ms-teams-tenant-based-handle-info + name: + description: Workflows Webhook handle name. + example: fake-handle-name + maxLength: 255 + type: string + url: + description: Workflows Webhook URL. + example: https://fake.url.com + maxLength: 255 + type: string + required: + - name + - url + type: object + MicrosoftTeamsWorkflowsWebhookHandleAttributes: + description: Workflows Webhook handle attributes. + properties: + name: + description: Workflows Webhook handle name. + example: fake-handle-name + maxLength: 255 + type: string + url: + description: Workflows Webhook URL. + example: https://fake.url.com + maxLength: 255 + type: string + type: object + TenancyProductsDataAttributes: + description: Attributes of an OCI tenancy product resource, containing the list of available products and their enablement status. + properties: + products: + description: List of Datadog products and their enablement status for the tenancy. items: - $ref: >- - #/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseData + $ref: '#/components/schemas/TenancyProductsDataAttributesProductsItems' type: array - required: - - data type: object - MicrosoftTeamsCreateTenantBasedHandleRequest: - description: Create tenant-based handle request. + TenancyProductsDataType: + default: oci_tenancy_product + description: OCI tenancy product resource type. + enum: + - oci_tenancy_product + example: oci_tenancy_product + type: string + x-enum-varnames: + - OCI_TENANCY_PRODUCT + TenancyConfigDataAttributes: + description: Attributes of an OCI tenancy integration configuration, including authentication details, region settings, and collection options. properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestData' - required: - - data + billing_plan_id: + description: The identifier of the billing plan associated with the OCI tenancy. + format: int32 + maximum: 2147483647 + type: integer + config_version: + description: Version number of the integration the tenancy is integrated with + format: int64 + type: integer + cost_collection_enabled: + description: Whether cost data collection from OCI is enabled for the tenancy. + type: boolean + dd_compartment_id: + description: The OCID of the OCI compartment used by the Datadog integration stack. + type: string + dd_stack_id: + description: The OCID of the OCI Resource Manager stack used by the Datadog integration. + type: string + home_region: + description: The home region of the OCI tenancy (for example, us-ashburn-1). + type: string + logs_config: + $ref: '#/components/schemas/TenancyConfigDataAttributesLogsConfig' + metrics_config: + $ref: '#/components/schemas/TenancyConfigDataAttributesMetricsConfig' + parent_tenancy_name: + description: The name of the parent OCI tenancy, if applicable. + type: string + regions_config: + $ref: '#/components/schemas/TenancyConfigDataAttributesRegionsConfig' + resource_collection_enabled: + description: Whether resource collection from OCI is enabled for the tenancy. + type: boolean + tenancy_name: + description: The human-readable name of the OCI tenancy. + type: string + user_ocid: + description: The OCID of the OCI user used by the Datadog integration for authentication. + type: string type: object - MicrosoftTeamsTenantBasedHandleResponse: - description: Response of a tenant-based handle. + UpdateTenancyConfigDataType: + default: oci_tenancy + description: OCI tenancy resource type. + enum: + - oci_tenancy + example: oci_tenancy + type: string + x-enum-varnames: + - OCI_TENANCY + CreateTenancyConfigDataAttributes: + description: Attributes for creating a new OCI tenancy integration configuration, including credentials, region settings, and collection options. properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponseData' + auth_credentials: + $ref: '#/components/schemas/CreateTenancyConfigDataAttributesAuthCredentials' + config_version: + description: Version number of the integration the tenancy is integrated with + format: int64 + nullable: true + type: integer + cost_collection_enabled: + description: Whether cost data collection from OCI is enabled for the tenancy. + type: boolean + dd_compartment_id: + description: The OCID of the OCI compartment used by the Datadog integration stack. + type: string + dd_stack_id: + description: The OCID of the OCI Resource Manager stack used by the Datadog integration. + type: string + home_region: + description: The home region of the OCI tenancy (for example, us-ashburn-1). + example: '' + type: string + logs_config: + $ref: '#/components/schemas/CreateTenancyConfigDataAttributesLogsConfig' + metrics_config: + $ref: '#/components/schemas/CreateTenancyConfigDataAttributesMetricsConfig' + regions_config: + $ref: '#/components/schemas/CreateTenancyConfigDataAttributesRegionsConfig' + resource_collection_enabled: + description: Whether resource collection from OCI is enabled for the tenancy. + type: boolean + user_ocid: + description: The OCID of the OCI user used by the Datadog integration for authentication. + example: '' + type: string required: - - data + - auth_credentials + - home_region + - user_ocid type: object - MicrosoftTeamsUpdateTenantBasedHandleRequest: - description: Update tenant-based handle request. + UpdateTenancyConfigDataAttributes: + description: Attributes for updating an existing OCI tenancy integration configuration, including optional credentials, region settings, and collection options. properties: - data: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequestData - required: - - data + auth_credentials: + $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesAuthCredentials' + cost_collection_enabled: + description: Whether cost data collection from OCI is enabled for the tenancy. + type: boolean + home_region: + description: The home region of the OCI tenancy (for example, us-ashburn-1). + type: string + logs_config: + $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesLogsConfig' + metrics_config: + $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesMetricsConfig' + regions_config: + $ref: '#/components/schemas/UpdateTenancyConfigDataAttributesRegionsConfig' + resource_collection_enabled: + description: Whether resource collection from OCI is enabled for the tenancy. + type: boolean + user_ocid: + description: The OCID of the OCI user used by the Datadog integration for authentication. + type: string type: object - MicrosoftTeamsWorkflowsWebhookHandlesResponse: - description: Response with a list of Workflows webhook handles. + OpsgenieAccountResponseAttributes: + description: The attributes from an Opsgenie account response. properties: - data: - description: An array of Workflows webhook handles. - example: - - attributes: - name: general-handle - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: workflows-webhook-handle - - attributes: - name: general-handle-2 - id: 596da4af-0563-4097-90ff-07230c3f9db4 - type: workflows-webhook-handle - items: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData - type: array - required: - - data + region: + $ref: '#/components/schemas/OpsgenieServiceRegionType' type: object - MicrosoftTeamsCreateWorkflowsWebhookHandleRequest: - description: Create Workflows webhook handle request. + OpsgenieAccountType: + default: opsgenie-account + description: Opsgenie account resource type. + enum: + - opsgenie-account + example: opsgenie-account + type: string + x-enum-varnames: + - OPSGENIE_ACCOUNT + OpsgenieAccountCreateAttributes: + description: The Opsgenie account attributes for a create request. properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestData' + api_key: + description: The Opsgenie API key for your Opsgenie account. + example: 00000000-0000-0000-0000-000000000000 + minLength: 1 + type: string + region: + $ref: '#/components/schemas/OpsgenieServiceRegionType' required: - - data + - api_key + - region type: object - MicrosoftTeamsWorkflowsWebhookHandleResponse: - description: Response of a Workflows webhook handle. + OpsgenieAccountUpdateAttributes: + description: The Opsgenie account attributes for an update request. properties: - data: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData - required: - - data + api_key: + description: The Opsgenie API key for your Opsgenie account. + example: 00000000-0000-0000-0000-000000000000 + minLength: 1 + type: string + region: + $ref: '#/components/schemas/OpsgenieServiceRegionType' type: object - MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest: - description: Update Workflows webhook handle request. + OpsgenieServiceResponseAttributes: + description: The attributes from an Opsgenie service response. properties: - data: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData - required: - - data + custom_url: + description: The custom URL for a custom region. + example: null + nullable: true + type: string + name: + description: The name for the Opsgenie service. + example: fake-opsgenie-service-name + maxLength: 100 + type: string + region: + $ref: '#/components/schemas/OpsgenieServiceRegionType' type: object - OpsgenieServicesResponse: - description: Response with a list of Opsgenie services. + OpsgenieServiceType: + default: opsgenie-service + description: Opsgenie service resource type. + enum: + - opsgenie-service + example: opsgenie-service + type: string + x-enum-varnames: + - OPSGENIE_SERVICE + OpsgenieServiceCreateAttributes: + description: The Opsgenie service attributes for a create request. properties: - data: - description: An array of Opsgenie services. - example: - - attributes: - custom_url: null - name: fake-opsgenie-service-name - region: us - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: opsgenie-service - - attributes: - custom_url: null - name: fake-opsgenie-service-name-2 - region: eu - id: 0d2937f1-b561-44fa-914a-99910f848014 - type: opsgenie-service - items: - $ref: '#/components/schemas/OpsgenieServiceResponseData' - type: array + custom_url: + description: The custom URL for a custom region. + example: https://example.com + type: string + name: + description: The name for the Opsgenie service. + example: fake-opsgenie-service-name + maxLength: 100 + type: string + opsgenie_api_key: + description: The Opsgenie API key for your Opsgenie service. + example: 00000000-0000-0000-0000-000000000000 + type: string + region: + $ref: '#/components/schemas/OpsgenieServiceRegionType' required: - - data + - name + - opsgenie_api_key + - region type: object - OpsgenieServiceCreateRequest: - description: Create request for an Opsgenie service. + OpsgenieServiceUpdateAttributes: + description: The Opsgenie service attributes for an update request. properties: - data: - $ref: '#/components/schemas/OpsgenieServiceCreateData' - required: - - data + custom_url: + description: The custom URL for a custom region. + example: https://example.com + nullable: true + type: string + name: + description: The name for the Opsgenie service. + example: fake-opsgenie-service-name + maxLength: 100 + type: string + opsgenie_api_key: + description: The Opsgenie API key for your Opsgenie service. + example: 00000000-0000-0000-0000-000000000000 + type: string + region: + $ref: '#/components/schemas/OpsgenieServiceRegionType' type: object - OpsgenieServiceResponse: - description: Response of an Opsgenie service. + SalesforceIncidentsTemplateResponseAttributes: + description: Salesforce incident template attributes returned by the API. properties: - data: - $ref: '#/components/schemas/OpsgenieServiceResponseData' + description: + description: Long-form description body for Salesforce incidents created from this template. + example: An incident was detected by Datadog monitors. + type: string + name: + description: Human-readable name for this incident template. + example: production-outage + type: string + owner_id: + description: The Salesforce user ID that owns incidents created from this template. + example: '005000000000000' + type: string + priority: + $ref: '#/components/schemas/SalesforceIncidentsTemplatePriority' + salesforce_org_id: + description: The Datadog-assigned ID of the Salesforce organization this template belongs to. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + format: uuid + type: string + subject: + description: Subject line for Salesforce incidents created from this template. + example: 'Datadog Incident: Production Outage' + type: string + type: object + SalesforceIncidentsTemplateType: + default: salesforce-incidents-incident-template + description: Salesforce incident template resource type. + enum: + - salesforce-incidents-incident-template + example: salesforce-incidents-incident-template + type: string + x-enum-varnames: + - SALESFORCE_INCIDENTS_INCIDENT_TEMPLATE + SalesforceIncidentsTemplateCreateAttributes: + description: Salesforce incident template attributes for a create request. + properties: + description: + description: Long-form description body for Salesforce incidents created from this template. + example: An incident was detected by Datadog monitors. + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this incident template. Must be unique within your organization. + example: production-outage + maxLength: 100 + minLength: 1 + type: string + owner_id: + description: The Salesforce user ID that owns incidents created from this template. + example: '005000000000000' + maxLength: 255 + minLength: 1 + type: string + priority: + $ref: '#/components/schemas/SalesforceIncidentsTemplatePriority' + salesforce_org_id: + description: The Datadog-assigned ID of the Salesforce organization this template belongs to. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + format: uuid + type: string + subject: + description: Subject line for Salesforce incidents created from this template. + example: 'Datadog Incident: Production Outage' + maxLength: 255 + minLength: 1 + type: string required: - - data + - salesforce_org_id + - name + - subject + - description + - owner_id + - priority + type: object + SalesforceIncidentsTemplateUpdateAttributes: + description: Salesforce incident template attributes for an update request. + properties: + description: + description: Long-form description body for Salesforce incidents created from this template. + example: An incident was detected by Datadog monitors. + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this incident template. + example: production-outage + maxLength: 100 + minLength: 1 + type: string + owner_id: + description: The Salesforce user ID that owns incidents created from this template. + example: '005000000000000' + maxLength: 255 + minLength: 1 + type: string + priority: + $ref: '#/components/schemas/SalesforceIncidentsTemplatePriority' + salesforce_org_id: + description: The Datadog-assigned ID of the Salesforce organization this template belongs to. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + format: uuid + type: string + subject: + description: Subject line for Salesforce incidents created from this template. + example: 'Datadog Incident: Production Outage' + maxLength: 255 + minLength: 1 + type: string type: object - OpsgenieServiceUpdateRequest: - description: Update request for an Opsgenie service. + SalesforceIncidentsOrganizationResponseAttributes: + description: Attributes of a Salesforce organization connected to the Datadog Salesforce integration. properties: - data: - $ref: '#/components/schemas/OpsgenieServiceUpdateData' - required: - - data + instance_url: + description: The Salesforce instance URL used to call this organization's APIs. + example: https://acme.my.salesforce.com + type: string + name: + description: Human-readable name of the Salesforce organization. + example: Acme Production Org + type: string + sfdc_org_id: + description: The Salesforce organization identifier (15- or 18-character Salesforce org ID). + example: 00D000000000000 + type: string + sfdc_org_type: + description: The Salesforce organization type (for example, `Production` or `Sandbox`). + example: Production + type: string type: object - CloudflareAccountsResponse: - description: The expected response schema when getting Cloudflare accounts. + SalesforceIncidentsOrganizationType: + default: salesforce-incidents-org + description: Salesforce organization resource type. + enum: + - salesforce-incidents-org + example: salesforce-incidents-org + type: string + x-enum-varnames: + - SALESFORCE_INCIDENTS_ORG + ServiceNowAssignmentGroupData: + description: Data object for a ServiceNow assignment group properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/CloudflareAccountResponseData' - type: array + attributes: + $ref: '#/components/schemas/ServiceNowAssignmentGroupAttributes' + id: + description: Unique identifier for the ServiceNow assignment group + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + type: + $ref: '#/components/schemas/ServiceNowAssignmentGroupType' + required: + - id + - type + - attributes type: object - CloudflareAccountCreateRequest: - description: Payload schema when adding a Cloudflare account. + ServiceNowBusinessServiceData: + description: Data object for a ServiceNow business service properties: - data: - $ref: '#/components/schemas/CloudflareAccountCreateRequestData' + attributes: + $ref: '#/components/schemas/ServiceNowBusinessServiceAttributes' + id: + description: Unique identifier for the ServiceNow business service + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + type: + $ref: '#/components/schemas/ServiceNowBusinessServiceType' required: - - data + - id + - type + - attributes type: object - CloudflareAccountResponse: - description: The expected response schema when getting a Cloudflare account. + ServiceNowTemplateCreateRequestAttributes: + description: Attributes for creating a ServiceNow template properties: - data: - $ref: '#/components/schemas/CloudflareAccountResponseData' + assignment_group_id: + description: The ID of the assignment group + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + business_service_id: + description: The ID of the business service + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + fields_mapping: + additionalProperties: + type: string + description: Custom field mappings for the template + example: + category: software + priority: '1' + type: object + handle_name: + description: The handle name of the template + example: incident-template + type: string + instance_id: + description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + servicenow_tablename: + description: The name of the destination ServiceNow table + example: incident + type: string + user_id: + description: The ID of the user + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + required: + - instance_id + - handle_name + - servicenow_tablename type: object - CloudflareAccountUpdateRequest: - description: Payload schema when updating a Cloudflare account. + ServiceNowTemplateType: + description: Type identifier for ServiceNow template resources + enum: + - servicenow_templates + example: servicenow_templates + type: string + x-enum-varnames: + - SERVICENOW_TEMPLATES + ServiceNowTemplateAttributes: + description: Attributes of a ServiceNow template properties: - data: - $ref: '#/components/schemas/CloudflareAccountUpdateRequestData' + assignment_group_id: + description: The ID of the assignment group + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + business_service_id: + description: The ID of the business service + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + fields_mapping: + additionalProperties: + type: string + description: Custom field mappings for the template + example: + category: software + priority: '1' + type: object + handle_name: + description: The handle name of the template + example: incident-template + type: string + instance_id: + description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + servicenow_tablename: + description: The name of the destination ServiceNow table + example: incident + type: string + user_id: + description: The ID of the user + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string required: - - data + - instance_id + - handle_name + - servicenow_tablename type: object - ConfluentAccountsResponse: - description: Confluent account returned by the API. + ServiceNowTemplateUpdateRequestAttributes: + description: Attributes for updating a ServiceNow template properties: - data: - description: The Confluent account. - items: - $ref: '#/components/schemas/ConfluentAccountResponseData' - type: array + assignment_group_id: + description: The ID of the assignment group + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + business_service_id: + description: The ID of the business service + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + fields_mapping: + additionalProperties: + type: string + description: Custom field mappings for the template + example: + category: hardware + priority: '2' + type: object + handle_name: + description: The handle name of the template + example: incident-template-updated + type: string + instance_id: + description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + servicenow_tablename: + description: The name of the destination ServiceNow table + example: incident + type: string + user_id: + description: The ID of the user + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + required: + - instance_id + - handle_name + - servicenow_tablename type: object - ConfluentAccountCreateRequest: - description: Payload schema when adding a Confluent account. + ServiceNowInstanceData: + description: Data object for a ServiceNow instance properties: - data: - $ref: '#/components/schemas/ConfluentAccountCreateRequestData' + attributes: + $ref: '#/components/schemas/ServiceNowInstanceAttributes' + id: + description: Unique identifier for the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + type: + $ref: '#/components/schemas/ServiceNowInstanceType' required: - - data + - id + - type + - attributes type: object - ConfluentAccountResponse: - description: The expected response schema when getting a Confluent account. + ServiceNowUserData: + description: Data object for a ServiceNow user properties: - data: - $ref: '#/components/schemas/ConfluentAccountResponseData' + attributes: + $ref: '#/components/schemas/ServiceNowUserAttributes' + id: + description: Unique identifier for the ServiceNow user + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + type: + $ref: '#/components/schemas/ServiceNowUserType' + required: + - id + - type + - attributes type: object - ConfluentAccountUpdateRequest: - description: The JSON:API request for updating a Confluent account. + SlackUserBindingType: + default: team_id + description: Slack user binding resource type. + enum: + - team_id + example: team_id + type: string + x-enum-varnames: + - TEAM_ID + StatuspageAccountResponseAttributes: + description: The attributes from a Statuspage account response. properties: - data: - $ref: '#/components/schemas/ConfluentAccountUpdateRequestData' - required: - - data + api_key: + description: The Statuspage API key for your Statuspage account. The value is always returned masked. + example: '*****' + type: string type: object - ConfluentResourcesResponse: - description: Response schema when interacting with a list of Confluent resources. + StatuspageAccountType: + default: statuspage-account + description: Statuspage account resource type. + enum: + - statuspage-account + example: statuspage-account + type: string + x-enum-varnames: + - STATUSPAGE_ACCOUNT + StatuspageAccountUpdateAttributes: + description: The Statuspage account attributes for an update request. properties: - data: - description: The JSON:API data attribute. - items: - $ref: '#/components/schemas/ConfluentResourceResponseData' - type: array + api_key: + description: The Statuspage API key for your Statuspage account. + example: 00000000-0000-0000-0000-000000000000 + minLength: 1 + type: string type: object - ConfluentResourceRequest: - description: The JSON:API request for updating a Confluent resource. + StatuspageAccountCreateAttributes: + description: The Statuspage account attributes for a create request. properties: - data: - $ref: '#/components/schemas/ConfluentResourceRequestData' + api_key: + description: The Statuspage API key for your Statuspage account. + example: 00000000-0000-0000-0000-000000000000 + minLength: 1 + type: string required: - - data + - api_key type: object - ConfluentResourceResponse: - description: Response schema when interacting with a Confluent resource. + StatuspageUrlSettingResponseAttributes: + description: The attributes from a Statuspage URL setting response. properties: - data: - $ref: '#/components/schemas/ConfluentResourceResponseData' + custom_tags: + description: Comma-separated list of custom tags applied to events generated from this Statuspage URL. + example: team:collaboration-integrations,env:prod + type: string + url: + description: The Statuspage URL being monitored. + example: https://example.statuspage.io + type: string type: object - FastlyAccountsResponse: - description: The expected response schema when getting Fastly accounts. + StatuspageUrlSettingType: + default: statuspage-url-setting + description: Statuspage URL setting resource type. + enum: + - statuspage-url-setting + example: statuspage-url-setting + type: string + x-enum-varnames: + - STATUSPAGE_URL_SETTING + StatuspageUrlSettingCreateAttributes: + description: The Statuspage URL setting attributes for a create request. properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/FastlyAccountResponseData' - type: array + custom_tags: + description: Comma-separated list of custom tags to apply to events generated from this Statuspage URL. + example: team:collaboration-integrations,env:prod + minLength: 1 + type: string + url: + description: The Statuspage URL to monitor. Must be a `status.io` or `statuspage.com` URL. + example: https://example.statuspage.io + minLength: 1 + type: string + required: + - url + - custom_tags type: object - FastlyAccountCreateRequest: - description: Payload schema when adding a Fastly account. + StatuspageUrlSettingUpdateAttributes: + description: The Statuspage URL setting attributes for an update request. properties: - data: - $ref: '#/components/schemas/FastlyAccountCreateRequestData' - required: - - data + custom_tags: + description: Comma-separated list of custom tags to apply to events generated from this Statuspage URL. + example: team:collaboration-integrations,env:prod + minLength: 1 + type: string + url: + description: The Statuspage URL to monitor. + example: https://example.statuspage.io + minLength: 1 + type: string type: object - FastlyAccountResponse: - description: The expected response schema when getting a Fastly account. + WebhooksAuthMethodAttributes: + description: Attributes of a webhooks auth method. properties: - data: - $ref: '#/components/schemas/FastlyAccountResponseData' + protocol: + $ref: '#/components/schemas/WebhooksAuthMethodProtocol' type: object - FastlyAccountUpdateRequest: - description: Payload schema when updating a Fastly account. + WebhooksAuthMethodRelationships: + description: Relationships of a webhooks auth method to its protocol-specific resource. properties: - data: - $ref: '#/components/schemas/FastlyAccountUpdateRequestData' - required: - - data + oauth2-client-credentials: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsRelationship' type: object - FastlyServicesResponse: - description: The expected response schema when getting Fastly services. + WebhooksAuthMethodType: + default: webhooks-auth-method + description: Webhooks auth method resource type. + enum: + - webhooks-auth-method + example: webhooks-auth-method + type: string + x-enum-varnames: + - WEBHOOKS_AUTH_METHOD + WebhooksOAuth2ClientCredentialsResponseAttributes: + description: OAuth2 client credentials attributes returned by the API. The `client_secret` is never echoed. properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/FastlyServiceData' - type: array + access_token_url: + description: URL of the OAuth2 access token endpoint. + example: https://example.com/oauth/token + type: string + audience: + description: The intended audience for the OAuth2 access token. + example: https://api.example.com + nullable: true + type: string + client_id: + description: The OAuth2 client ID issued by the authorization server. + example: my-client-id + type: string + name: + description: Human-readable name for this auth method. + example: my-oauth2-auth + type: string + protocol: + $ref: '#/components/schemas/WebhooksAuthMethodProtocol' + scope: + description: Space-separated list of OAuth2 scopes to request. + example: read:webhooks write:webhooks + nullable: true + type: string type: object - FastlyServiceRequest: - description: Payload schema for Fastly service requests. + WebhooksOAuth2ClientCredentialsType: + default: webhooks-auth-method-oauth2-client-credentials + description: OAuth2 client credentials resource type. + enum: + - webhooks-auth-method-oauth2-client-credentials + example: webhooks-auth-method-oauth2-client-credentials + type: string + x-enum-varnames: + - WEBHOOKS_AUTH_METHOD_OAUTH2_CLIENT_CREDENTIALS + WebhooksOAuth2ClientCredentialsCreateAttributes: + description: OAuth2 client credentials attributes for a create request. properties: - data: - $ref: '#/components/schemas/FastlyServiceData' + access_token_url: + description: URL of the OAuth2 access token endpoint. + example: https://example.com/oauth/token + maxLength: 2048 + minLength: 1 + type: string + audience: + description: The intended audience for the OAuth2 access token. + example: https://api.example.com + maxLength: 2048 + minLength: 1 + nullable: true + type: string + client_id: + description: The OAuth2 client ID issued by the authorization server. + example: my-client-id + maxLength: 2048 + minLength: 1 + type: string + client_secret: + description: |- + The OAuth2 client secret issued by the authorization server. + Write-only; never returned by the API. + example: my-client-secret + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this auth method. Must be unique within your organization. + example: my-oauth2-auth + maxLength: 100 + minLength: 1 + type: string + scope: + description: Space-separated list of OAuth2 scopes to request. + example: read:webhooks write:webhooks + maxLength: 2048 + minLength: 1 + nullable: true + type: string required: - - data + - name + - access_token_url + - client_id + - client_secret type: object - FastlyServiceResponse: - description: The expected response schema when getting a Fastly service. + WebhooksOAuth2ClientCredentialsUpdateAttributes: + description: OAuth2 client credentials attributes for an update request. properties: - data: - $ref: '#/components/schemas/FastlyServiceData' + access_token_url: + description: URL of the OAuth2 access token endpoint. + example: https://example.com/oauth/token + maxLength: 2048 + minLength: 1 + type: string + audience: + description: The intended audience for the OAuth2 access token. + example: https://api.example.com + maxLength: 2048 + minLength: 1 + nullable: true + type: string + client_id: + description: The OAuth2 client ID issued by the authorization server. + example: my-client-id + maxLength: 2048 + minLength: 1 + type: string + client_secret: + description: |- + The OAuth2 client secret issued by the authorization server. + Write-only; never returned by the API. + example: my-client-secret + maxLength: 2048 + minLength: 1 + type: string + name: + description: Human-readable name for this auth method. + example: my-oauth2-auth + maxLength: 100 + minLength: 1 + type: string + scope: + description: Space-separated list of OAuth2 scopes to request. + example: read:webhooks write:webhooks + maxLength: 2048 + minLength: 1 + nullable: true + type: string type: object - OktaAccountsResponse: - description: The expected response schema when getting Okta accounts. + IntegrationAttributes: + description: Attributes for an integration. properties: - data: - description: List of Okta accounts. + categories: + description: List of categories associated with the integration. + example: + - Category::Kubernetes + - Category::Log Collection items: - $ref: '#/components/schemas/OktaAccountResponseData' + description: A category associated with the integration. + type: string type: array + description: + description: A description of the integration. + example: Calico is a networking and network security solution for containers. + type: string + installed: + description: Whether the integration is installed. + example: true + type: boolean + title: + description: The name of the integration. + example: calico + type: string + required: + - title + - description + - categories + - installed type: object - OktaAccountRequest: - description: Request object for an Okta account. + IntegrationLinks: + description: Links for the integration resource. properties: - data: - $ref: '#/components/schemas/OktaAccount' - required: - - data + self: + description: Link to the integration resource. + example: /integrations?integrationId=calico + type: string type: object - OktaAccountResponse: - description: Response object for an Okta account. + IntegrationType: + default: integration + description: Integration resource type. + enum: + - integration + example: integration + type: string + x-enum-varnames: + - INTEGRATION + CloudflareAccountResponseAttributes: + description: Attributes object of a Cloudflare account. properties: - data: - $ref: '#/components/schemas/OktaAccount' + email: + description: The email associated with the Cloudflare account. + example: test-email@example.com + type: string + name: + description: The name of the Cloudflare account. + example: test-name + type: string + resources: + description: An allowlist of resources, such as `web`, `dns`, `lb` (load balancer), `worker`, that restricts pulling metrics from those resources. + example: + - web + - dns + - lb + - worker + items: + description: A Cloudflare resource type (for example, `web`, `dns`, `lb`, `worker`). + type: string + type: array + zones: + description: An allowlist of zones to restrict pulling metrics for. + example: + - zone_id_1 + - zone_id_2 + items: + description: A Cloudflare zone ID to restrict pulling metrics for. + type: string + type: array + required: + - name type: object - OktaAccountUpdateRequest: - description: Payload schema when updating an Okta account. + CloudflareAccountType: + default: cloudflare-accounts + description: The JSON:API type for this API. Should always be `cloudflare-accounts`. + enum: + - cloudflare-accounts + example: cloudflare-accounts + type: string + x-enum-varnames: + - CLOUDFLARE_ACCOUNTS + CloudflareAccountCreateRequestAttributes: + description: Attributes object for creating a Cloudflare account. properties: - data: - $ref: '#/components/schemas/OktaAccountUpdateRequestData' + api_key: + description: The API key (or token) for the Cloudflare account. + example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 + type: string + email: + description: The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required. + example: test-email@example.com + type: string + name: + description: The name of the Cloudflare account. + example: test-name + type: string + resources: + description: An allowlist of resources to restrict pulling metrics for including `'web', 'dns', 'lb' (load balancer), 'worker'`. + example: + - web + - dns + - lb + - worker + items: + description: A Cloudflare resource type (for example, `web`, `dns`, `lb`, `worker`). + type: string + type: array + zones: + description: An allowlist of zones to restrict pulling metrics for. + example: + - zone_id_1 + - zone_id_2 + items: + description: A Cloudflare zone ID to restrict pulling metrics for. + type: string + type: array required: - - data + - api_key + - name type: object - AWSAccountResponseData: - description: AWS Account response data. + CloudflareAccountUpdateRequestAttributes: + description: Attributes object for updating a Cloudflare account. properties: - attributes: - $ref: '#/components/schemas/AWSAccountResponseAttributes' - id: - $ref: '#/components/schemas/AWSAccountConfigID' - type: - $ref: '#/components/schemas/AWSAccountType' + api_key: + description: The API key of the Cloudflare account. + example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 + type: string + email: + description: The email associated with the Cloudflare account. If an API key is provided (and not a token), this field is also required. + example: test-email@example.com + type: string + name: + description: The name of the Cloudflare account. + type: string + resources: + description: An allowlist of resources to restrict pulling metrics for including `'web', 'dns', 'lb' (load balancer), 'worker'`. + example: + - web + - dns + - lb + - worker + items: + description: A Cloudflare resource type (for example, `web`, `dns`, `lb`, `worker`). + type: string + type: array + zones: + description: An allowlist of zones to restrict pulling metrics for. + example: + - zone_id_1 + - zone_id_2 + items: + description: A Cloudflare zone ID to restrict pulling metrics for. + type: string + type: array required: - - id - - type + - api_key type: object - APIErrorResponse: - description: API error response. + ConfluentAccountResponseAttributes: + description: The attributes of a Confluent account. properties: - errors: - description: A list of errors. + api_key: + description: The API key associated with your Confluent account. + example: TESTAPIKEY123 + type: string + resources: + description: A list of Confluent resources associated with the Confluent account. + items: + $ref: '#/components/schemas/ConfluentResourceResponseAttributes' + type: array + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. example: - - Bad Request + - myTag + - myTag2:myValue items: - description: A list of items. - example: Bad Request + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. type: string type: array required: - - errors + - api_key type: object - AWSAccountCreateRequestData: - description: AWS Account Create Request data. + ConfluentAccountType: + default: confluent-cloud-accounts + description: The JSON:API type for this API. Should always be `confluent-cloud-accounts`. + enum: + - confluent-cloud-accounts + example: confluent-cloud-accounts + type: string + x-enum-varnames: + - CONFLUENT_CLOUD_ACCOUNTS + ConfluentAccountCreateRequestAttributes: + description: Attributes associated with the account creation request. properties: - attributes: - $ref: '#/components/schemas/AWSAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/AWSAccountType' + api_key: + description: The API key associated with your Confluent account. + example: TESTAPIKEY123 + type: string + api_secret: + description: The API secret associated with your Confluent account. + example: test-api-secret-123 + type: string + resources: + description: A list of Confluent resources associated with the Confluent account. + items: + $ref: '#/components/schemas/ConfluentAccountResourceAttributes' + type: array + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array required: - - attributes - - type + - api_key + - api_secret type: object - AWSAccountUpdateRequestData: - description: AWS Account Update Request data. + ConfluentAccountUpdateRequestAttributes: + description: Attributes object for updating a Confluent account. properties: - attributes: - $ref: '#/components/schemas/AWSAccountUpdateRequestAttributes' - id: - $ref: '#/components/schemas/AWSAccountConfigID' - type: - $ref: '#/components/schemas/AWSAccountType' + api_key: + description: The API key associated with your Confluent account. + example: TESTAPIKEY123 + type: string + api_secret: + description: The API secret associated with your Confluent account. + example: test-api-secret-123 + type: string + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array required: - - attributes - - type + - api_key + - api_secret type: object - AWSNamespacesResponseData: - description: AWS Namespaces response data. + ConfluentResourceResponseAttributes: + description: Model representation of a Confluent Cloud resource. properties: - attributes: - $ref: '#/components/schemas/AWSNamespacesResponseAttributes' + enable_custom_metrics: + default: false + description: Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. + example: false + type: boolean id: - default: namespaces - description: The `AWSNamespacesResponseData` `id`. - example: namespaces + description: The ID associated with the Confluent resource. + example: resource_id_abc123 + type: string + resource_type: + description: The resource type of the Resource. Can be `kafka`, `connector`, `ksql`, or `schema_registry`. + example: kafka type: string - type: - $ref: '#/components/schemas/AWSNamespacesResponseDataType' + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array required: - - id - - type + - resource_type type: object - AWSNewExternalIDResponseData: - description: AWS External ID response body. + ConfluentResourceType: + default: confluent-cloud-resources + description: The JSON:API type for this request. + enum: + - confluent-cloud-resources + example: confluent-cloud-resources + type: string + x-enum-varnames: + - CONFLUENT_CLOUD_RESOURCES + ConfluentResourceRequestAttributes: + description: Attributes object for updating a Confluent resource. properties: - attributes: - $ref: '#/components/schemas/AWSNewExternalIDResponseAttributes' - id: - default: external_id - description: The `AWSNewExternalIDResponseData` `id`. - example: external_id + enable_custom_metrics: + default: false + description: Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. + example: false + type: boolean + resource_type: + description: The resource type of the Resource. Can be `kafka`, `connector`, `ksql`, or `schema_registry`. + example: kafka type: string - type: - $ref: '#/components/schemas/AWSNewExternalIDResponseDataType' + tags: + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. + type: string + type: array required: - - id - - type + - resource_type type: object - AWSIntegrationIamPermissionsResponseData: - description: AWS Integration IAM Permissions response data. + FastlyAccounResponseAttributes: + description: Attributes object of a Fastly account. properties: - attributes: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseAttributes' - id: - default: permissions - description: The `AWSIntegrationIamPermissionsResponseData` `id`. - example: permissions + name: + description: The name of the Fastly account. + example: test-name type: string - type: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseDataType' + services: + description: A list of services belonging to the parent account. + items: + $ref: '#/components/schemas/FastlyService' + type: array + required: + - name type: object - AWSLogsServicesResponseData: - description: AWS Logs Services response body + FastlyAccountType: + default: fastly-accounts + description: The JSON:API type for this API. Should always be `fastly-accounts`. + enum: + - fastly-accounts + example: fastly-accounts + type: string + x-enum-varnames: + - FASTLY_ACCOUNTS + FastlyAccountCreateRequestAttributes: + description: Attributes object for creating a Fastly account. properties: - attributes: - $ref: '#/components/schemas/AWSLogsServicesResponseAttributes' - id: - default: logs_services - description: The `AWSLogsServicesResponseData` `id`. - example: logs_services + api_key: + description: The API key for the Fastly account. + example: ABCDEFG123 type: string - type: - $ref: '#/components/schemas/AWSLogsServicesResponseDataType' + name: + description: The name of the Fastly account. + example: test-name + type: string + services: + description: A list of services belonging to the parent account. + items: + $ref: '#/components/schemas/FastlyService' + type: array required: - - id - - type + - api_key + - name type: object - GCPSTSServiceAccount: - description: Info on your service account. + FastlyAccountUpdateRequestAttributes: + description: Attributes object for updating a Fastly account. properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - id: - description: Your service account's unique ID. - example: d291291f-12c2-22g4-j290-123456678897 + api_key: + description: The API key of the Fastly account. + example: ABCDEFG123 + type: string + name: + description: The name of the Fastly account. type: string - meta: - $ref: '#/components/schemas/GCPServiceAccountMeta' - type: - $ref: '#/components/schemas/GCPServiceAccountType' type: object - GCPSTSServiceAccountData: - description: Additional metadata on your generated service account. + FastlyServiceAttributes: + description: Attributes object for Fastly service requests. properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - type: - $ref: '#/components/schemas/GCPServiceAccountType' + tags: + description: A list of tags for the Fastly service. + example: + - myTag + - myTag2:myValue + items: + description: A tag for the Fastly service. + type: string + type: array type: object - GCPSTSServiceAccountUpdateRequestData: - description: Data on your service account. + FastlyServiceType: + default: fastly-services + description: The JSON:API type for this API. Should always be `fastly-services`. + enum: + - fastly-services + example: fastly-services + type: string + x-enum-varnames: + - FASTLY_SERVICES + OktaAccountAttributes: + description: Attributes object for an Okta account. properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - id: - description: Your service account's unique ID. - example: d291291f-12c2-22g4-j290-123456678897 + api_key: + description: The API key of the Okta account. type: string - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSDelegateAccount: - description: Datadog principal service account info. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSDelegateAccountAttributes' - id: - description: The ID of the delegate service account. - example: >- - ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com + writeOnly: true + auth_method: + description: The authorization method for an Okta account. + example: oauth type: string - type: - $ref: '#/components/schemas/GCPSTSDelegateAccountType' - type: object - MicrosoftTeamsChannelInfoResponseData: - description: Channel data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseAttributes' - id: - description: The ID of the channel. - example: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 - maxLength: 255 - minLength: 1 + client_id: + description: The Client ID of an Okta app integration. type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoType' - type: object - MicrosoftTeamsTenantBasedHandleInfoResponseData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseAttributes - id: - description: The ID of the tenant-based handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 + client_secret: + description: The client secret of an Okta app integration. type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoType' + writeOnly: true + domain: + description: The domain of the Okta account. + example: https://example.okta.com/ + type: string + name: + description: The name of the Okta account. + example: Okta-Prod + type: string + required: + - auth_method + - domain + - name type: object - MicrosoftTeamsTenantBasedHandleRequestData: - description: Tenant-based handle data from a response. + OktaAccountType: + default: okta-accounts + description: Account type for an Okta account. + enum: + - okta-accounts + example: okta-accounts + type: string + x-enum-varnames: + - OKTA_ACCOUNTS + OktaAccountUpdateRequestAttributes: + description: Attributes object for updating an Okta account. properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsTenantBasedHandleRequestAttributes - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' + api_key: + description: The API key of the Okta account. + type: string + writeOnly: true + auth_method: + description: The authorization method for an Okta account. + example: oauth + type: string + client_id: + description: The Client ID of an Okta app integration. + type: string + client_secret: + description: The client secret of an Okta app integration. + type: string + writeOnly: true + domain: + description: The domain associated with an Okta account. + example: https://dev-test.okta.com/ + type: string required: - - type - - attributes + - auth_method + - domain type: object - MicrosoftTeamsTenantBasedHandleResponseData: - description: Tenant-based handle data from a response. + BatchRowsQueryRequestDataAttributes: + description: Attributes for a batch rows query request. properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' - id: - description: The ID of the tenant-based handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 + row_ids: + description: List of row identifiers to query from the reference table. + example: + - row_id_1 + - row_id_2 + items: + description: A single row identifier. + type: string + type: array + table_id: + description: Unique identifier of the reference table to query. + example: 00000000-0000-0000-0000-000000000000 type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' + required: + - row_ids + - table_id type: object - MicrosoftTeamsUpdateTenantBasedHandleRequestData: - description: Tenant-based handle data from a response. + BatchRowsQueryDataType: + default: reference-tables-batch-rows-query + description: Resource type identifier for batch queries of reference table rows. + enum: + - reference-tables-batch-rows-query + example: reference-tables-batch-rows-query + type: string + x-enum-varnames: + - REFERENCE_TABLES_BATCH_ROWS_QUERY + BatchRowsQueryResponseDataRelationships: + description: Relationships of the batch rows query response data. properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - required: - - type - - attributes + rows: + $ref: '#/components/schemas/BatchRowsQueryResponseDataRelationshipsRows' type: object - MicrosoftTeamsWorkflowsWebhookHandleResponseData: - description: Workflows Webhook handle data from a response. + TableRowResourceDataAttributes: + additionalProperties: false + description: Column values for this row in the reference table. properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookResponseAttributes - id: - description: The ID of the Workflows webhook handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 + values: + description: Key-value pairs representing the row data, where keys are field names from the schema. (opaque JSON object) type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' type: object - MicrosoftTeamsWorkflowsWebhookHandleRequestData: - description: Workflows Webhook handle data from a response. + TableRowResourceDataType: + default: row + description: Row resource type. + enum: + - row + example: row + type: string + x-enum-varnames: + - ROW + TableResultV2DataAttributes: + description: Attributes that define the reference table's configuration and properties. properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - required: - - type - - attributes + created_by: + description: UUID of the user who created the reference table. + example: 00000000-0000-0000-0000-000000000000 + type: string + description: + description: Optional text describing the purpose or contents of this reference table. + example: example description + type: string + file_metadata: + $ref: '#/components/schemas/TableResultV2DataAttributesFileMetadata' + last_updated_by: + description: UUID of the user who last updated the reference table. + example: 00000000-0000-0000-0000-000000000000 + type: string + row_count: + description: The number of successfully processed rows in the reference table. + example: 5 + format: int64 + type: integer + schema: + $ref: '#/components/schemas/TableResultV2DataAttributesSchema' + source: + $ref: '#/components/schemas/ReferenceTableSourceType' + status: + description: The processing status of the table. + example: DONE + type: string + table_name: + description: Unique name to identify this reference table. Used in enrichment processors and API calls. + example: table_1 + type: string + tags: + description: Tags for organizing and filtering reference tables. + example: + - tag_1 + - tag_2 + items: + description: A tag associated with the reference table. + type: string + type: array + updated_at: + description: When the reference table was last updated, in ISO 8601 format. + example: '2000-01-01T01:00:00+00:00' + type: string type: object - MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData: - description: Workflows Webhook handle data from a response. + TableResultV2DataType: + default: reference_table + description: Reference table resource type. + enum: + - reference_table + example: reference_table + type: string + x-enum-varnames: + - REFERENCE_TABLE + CreateTableRequestDataAttributes: + description: Attributes that define the reference table's configuration and properties. properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' + description: + description: Optional text describing the purpose or contents of this reference table. + type: string + file_metadata: + $ref: '#/components/schemas/CreateTableRequestDataAttributesFileMetadata' + schema: + $ref: '#/components/schemas/CreateTableRequestDataAttributesSchema' + source: + $ref: '#/components/schemas/ReferenceTableCreateSourceType' + table_name: + description: Name to identify this reference table. + example: table_1 + type: string + tags: + description: Tags for organizing and filtering reference tables. + example: + - tag_1 + - tag_2 + items: + description: A tag associated with the reference table. + type: string + type: array required: - - type - - attributes + - table_name + - schema + - source type: object - OpsgenieServiceResponseData: - description: Opsgenie service data from a response. + CreateTableRequestDataType: + default: reference_table + description: Reference table resource type. + enum: + - reference_table + example: reference_table + type: string + x-enum-varnames: + - REFERENCE_TABLE + PatchTableRequestDataAttributes: + description: Attributes that define the updates to the reference table's configuration and properties. properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceResponseAttributes' - id: - description: The ID of the Opsgenie service. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 + description: + description: Optional text describing the purpose or contents of this reference table. + example: example description type: string - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - id - - type - - attributes + file_metadata: + $ref: '#/components/schemas/PatchTableRequestDataAttributesFileMetadata' + schema: + $ref: '#/components/schemas/PatchTableRequestDataAttributesSchema' + tags: + description: Tags for organizing and filtering reference tables. + example: + - tag_1 + - tag_2 + items: + description: A tag associated with the reference table. + type: string + type: array type: object - OpsgenieServiceCreateData: - description: Opsgenie service data for a create request. + PatchTableRequestDataType: + default: reference_table + description: Reference table resource type. + enum: + - reference_table + example: reference_table + type: string + x-enum-varnames: + - REFERENCE_TABLE + BatchUpsertRowsRequestDataAttributes: + description: Attributes containing row data values for row creation or update operations. + example: + values: {} properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceCreateAttributes' - type: - $ref: '#/components/schemas/OpsgenieServiceType' + values: + additionalProperties: + $ref: '#/components/schemas/BatchUpsertRowsRequestDataAttributesValue' + description: Key-value pairs representing row data, where keys are schema field names and values match the corresponding column types. + type: object required: - - type - - attributes + - values type: object - OpsgenieServiceUpdateData: - description: Opsgenie service for an update request. + ListRowsResponseMetaPage: + description: Contains the continuation token for navigating to the next page of rows. properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceUpdateAttributes' - id: - description: The ID of the Opsgenie service. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 + next_continuation_token: + description: Opaque token to pass as the `page[continuation_token]` query parameter to fetch the next page of results. Only present when more rows are available. + example: eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ== type: string - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - id - - type - - attributes type: object - CloudflareAccountResponseData: - description: Data object of a Cloudflare account. + CreateUploadRequestDataAttributes: + description: Upload configuration specifying how data is uploaded by the user, and properties of the table to associate the upload with. properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountResponseAttributes' - id: - description: The ID of the Cloudflare account, a hash of the account name. - example: c1a8e059bfd1e911cf10b626340c9a54 + headers: + description: The CSV file headers that define the schema fields, provided in the same order as the columns in the uploaded file. Maximum of 200 columns. + example: + - field_1 + - field_2 + items: + description: A column header name from the CSV file. + type: string + maxItems: 200 + type: array + part_count: + description: Number of parts to split the file into for multipart upload. + example: 3 + format: int32 + maximum: 20 + type: integer + part_size: + description: The size of each part in the upload in bytes. All parts except the last one must be at least 5,000,000 bytes. + example: 10000000 + format: int64 + type: integer + table_name: + description: Name of the table to associate with this upload. + example: '' type: string - type: - $ref: '#/components/schemas/CloudflareAccountType' - required: - - attributes - - id - - type - type: object - CloudflareAccountCreateRequestData: - description: Data object for creating a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/CloudflareAccountType' required: - - attributes - - type + - headers + - table_name + - part_count + - part_size type: object - CloudflareAccountUpdateRequestData: - description: Data object for updating a Cloudflare account. + CreateUploadRequestDataType: + default: upload + description: Upload resource type. + enum: + - upload + example: upload + type: string + x-enum-varnames: + - UPLOAD + CreateUploadResponseDataAttributes: + description: Pre-signed URLs for uploading parts of the file. properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/CloudflareAccountType' + part_urls: + description: The pre-signed URLs for uploading parts. These URLs expire after 5 minutes. + items: + description: A pre-signed URL for uploading a single file part. + type: string + type: array type: object - ConfluentAccountResponseData: - description: An API key and API secret pair that represents a Confluent account. + CreateUploadResponseDataType: + default: upload + description: Upload resource type. + enum: + - upload + example: upload + type: string + x-enum-varnames: + - UPLOAD + WebIntegrationAccountResponseAttributes: + description: Attributes object of a web integration account. Secrets are never returned. properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountResponseAttributes' - id: - description: A randomly generated ID associated with a Confluent account. - example: account_id_abc123 + name: + description: A human-readable name for the account. + example: my-databricks-account type: string - type: - $ref: '#/components/schemas/ConfluentAccountType' + settings: + $ref: '#/components/schemas/WebIntegrationAccountSettings' required: - - attributes - - id - - type + - name type: object - ConfluentAccountCreateRequestData: - description: The data body for adding a Confluent account. + WebIntegrationAccountType: + default: Account + description: Account resource type. + enum: + - Account + example: Account + type: string + x-enum-varnames: + - ACCOUNT + WebIntegrationAccountCreateRequestAttributes: + description: Attributes object for creating a web integration account. properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/ConfluentAccountType' + name: + description: A human-readable name for the account. Must be unique among accounts of the same integration. + example: my-databricks-account + type: string + secrets: + $ref: '#/components/schemas/WebIntegrationAccountSecrets' + settings: + $ref: '#/components/schemas/WebIntegrationAccountSettings' required: - - attributes - - type + - name + - settings + - secrets type: object - ConfluentAccountUpdateRequestData: - description: Data object for updating a Confluent account. + WebIntegrationAccountUpdateRequestAttributes: + description: Attributes object for updating a web integration account. properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - type + name: + description: A human-readable name for the account. + example: my-databricks-account + type: string + secrets: + $ref: '#/components/schemas/WebIntegrationAccountSecrets' + settings: + $ref: '#/components/schemas/WebIntegrationAccountSettings' type: object - ConfluentResourceResponseData: - description: Confluent Cloud resource data. + AWSEventBridgeSourceV1: + description: An EventBridge source. properties: - attributes: - $ref: '#/components/schemas/ConfluentResourceResponseAttributes' - id: - description: The ID associated with the Confluent resource. - example: resource_id_abc123 + name: + description: The event source name. + type: string + region: + description: The event source's [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). type: string - type: - $ref: '#/components/schemas/ConfluentResourceType' - required: - - attributes - - type - - id type: object - ConfluentResourceRequestData: - description: JSON:API request for updating a Confluent resource. + GCPMonitoredResourceConfigType: + description: The GCP monitored resource type. Only a subset of resource types are supported. + enum: + - cloud_function + - cloud_run_revision + - gce_instance + example: gce_instance + type: string + x-enum-varnames: + - CLOUD_FUNCTION + - CLOUD_RUN_REVISION + - GCE_INSTANCE + EntityIntegrationConfigPayload: + additionalProperties: {} + description: Integration-specific configuration payload. The shape of this object depends on the integration identified by the path parameter. For `github`, the object must contain an `enabled_repos` array. For `jira`, it must contain an `enabled_projects` array. For `pagerduty`, it must contain an `accounts` array. + example: + enabled_repos: + - github_org_name: myorg + hostname: github.com + repo_name: myrepo + type: object + ElasticCloudIntegrationAccountAuthenticationResponse: + description: Authentication configured on the Elastic Cloud integration account. properties: - attributes: - $ref: '#/components/schemas/ConfluentResourceRequestAttributes' - id: - description: The ID associated with a Confluent resource. - example: resource-id-123 + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog type: string - type: - $ref: '#/components/schemas/ConfluentResourceType' required: - - attributes - - type - - id + - auth_type + - username type: object - FastlyAccountResponseData: - description: Data object of a Fastly account. + ElasticCloudIntegrationDataflowsResponse: + description: Dataflows configured on the Elastic Cloud integration account, keyed by dataflow id. properties: - attributes: - $ref: '#/components/schemas/FastlyAccounResponseAttributes' - id: - description: The ID of the Fastly account, a hash of the account name. - example: abc123 + elastic-cloud-detailed-index-stats: + $ref: '#/components/schemas/ElasticCloudDetailedIndexStatsIntegrationDataflowResponse' + elastic-cloud-index-stats: + $ref: '#/components/schemas/ElasticCloudIndexStatsIntegrationDataflowResponse' + elastic-cloud-metrics: + $ref: '#/components/schemas/ElasticCloudMetricsIntegrationDataflowResponse' + elastic-cloud-pending-task-stats: + $ref: '#/components/schemas/ElasticCloudPendingTaskStatsIntegrationDataflowResponse' + elastic-cloud-primary-shard-graceful-timeout: + $ref: '#/components/schemas/ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowResponse' + elastic-cloud-primary-shard-stats: + $ref: '#/components/schemas/ElasticCloudPrimaryShardStatsIntegrationDataflowResponse' + elastic-cloud-shard-allocation-stats: + $ref: '#/components/schemas/ElasticCloudShardAllocationStatsIntegrationDataflowResponse' + elastic-cloud-slm-stats: + $ref: '#/components/schemas/ElasticCloudSlmStatsIntegrationDataflowResponse' + type: object + ElasticCloudIntegrationAccountSettingsResponse: + description: Settings configured on the Elastic Cloud integration account. + properties: + tags: + description: Comma-separated list of custom tags for this Elastic Cloud deployment. + example: env:prod,team:saasint + type: string + url: + description: Elastic Cloud deployment URL. + example: https://example.es.us-central1.gcp.cloud.es.io:9243 type: string - type: - $ref: '#/components/schemas/FastlyAccountType' required: - - attributes - - id - - type + - url type: object - FastlyAccountCreateRequestData: - description: Data object for creating a Fastly account. + ElasticCloudIntegrationAccountAuthenticationRequest: + description: Authentication for creating the Elastic Cloud integration account. Exactly one method is set. properties: - attributes: - $ref: '#/components/schemas/FastlyAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/FastlyAccountType' + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog + type: string required: - - attributes - - type + - auth_type + - username + - password type: object - FastlyAccountUpdateRequestData: - description: Data object for updating a Fastly account. + ElasticCloudIntegrationDataflowsRequest: + additionalProperties: false + description: Dataflows to configure on the Elastic Cloud integration account, keyed by dataflow id. properties: - attributes: - $ref: '#/components/schemas/FastlyAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/FastlyAccountType' + elastic-cloud-detailed-index-stats: + $ref: '#/components/schemas/ElasticCloudDetailedIndexStatsIntegrationDataflowRequest' + elastic-cloud-index-stats: + $ref: '#/components/schemas/ElasticCloudIndexStatsIntegrationDataflowRequest' + elastic-cloud-pending-task-stats: + $ref: '#/components/schemas/ElasticCloudPendingTaskStatsIntegrationDataflowRequest' + elastic-cloud-primary-shard-graceful-timeout: + $ref: '#/components/schemas/ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowRequest' + elastic-cloud-primary-shard-stats: + $ref: '#/components/schemas/ElasticCloudPrimaryShardStatsIntegrationDataflowRequest' + elastic-cloud-shard-allocation-stats: + $ref: '#/components/schemas/ElasticCloudShardAllocationStatsIntegrationDataflowRequest' + elastic-cloud-slm-stats: + $ref: '#/components/schemas/ElasticCloudSlmStatsIntegrationDataflowRequest' type: object - FastlyServiceData: - description: Data object for Fastly service requests. + ElasticCloudIntegrationAccountSettingsRequest: + description: Settings for creating the Elastic Cloud integration account. properties: - attributes: - $ref: '#/components/schemas/FastlyServiceAttributes' - id: - description: The ID of the Fastly service. - example: abc123 + tags: + description: Comma-separated list of custom tags for this Elastic Cloud deployment. + example: env:prod,team:saasint + type: string + url: + description: Elastic Cloud deployment URL. + example: https://example.es.us-central1.gcp.cloud.es.io:9243 type: string - type: - $ref: '#/components/schemas/FastlyServiceType' required: - - id - - type + - url type: object - OktaAccountResponseData: - description: Data object of an Okta account + ElasticCloudIntegrationAccountAuthenticationUpdate: + description: Authentication for updating the Elastic Cloud integration account. Exactly one method is set. properties: - attributes: - $ref: '#/components/schemas/OktaAccountAttributes' - id: - description: The ID of the Okta account, a UUID hash of the account name. - example: f749daaf-682e-4208-a38d-c9b43162c609 + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog type: string - type: - $ref: '#/components/schemas/OktaAccountType' required: - - attributes - - id - - type + - auth_type type: object - OktaAccount: - description: Schema for an Okta account. + ElasticCloudIntegrationAccountSettingsUpdate: + description: Settings for updating the Elastic Cloud integration account. Only the fields provided are changed. properties: - attributes: - $ref: '#/components/schemas/OktaAccountAttributes' - id: - description: The ID of the Okta account, a UUID hash of the account name. - example: f749daaf-682e-4208-a38d-c9b43162c609 + tags: + description: Comma-separated list of custom tags for this Elastic Cloud deployment. + example: env:prod,team:saasint + type: string + url: + description: Elastic Cloud deployment URL. + example: https://example.es.us-central1.gcp.cloud.es.io:9243 + type: string + type: object + TwilioIntegrationAccountAuthenticationResponse: + description: Authentication configured on the Twilio integration account. + properties: + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog type: string - type: - $ref: '#/components/schemas/OktaAccountType' required: - - attributes - - type + - auth_type + - username type: object - OktaAccountUpdateRequestData: - description: Data object for updating an Okta account. + TwilioIntegrationDataflowsResponse: + description: Dataflows configured on the Twilio integration account, keyed by dataflow id. properties: - attributes: - $ref: '#/components/schemas/OktaAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/OktaAccountType' + twilio-alerts-logs: + $ref: '#/components/schemas/TwilioAlertsLogsIntegrationDataflowResponse' + twilio-call-summaries-logs: + $ref: '#/components/schemas/TwilioCallSummariesLogsIntegrationDataflowResponse' + twilio-cloud-cost-metrics: + $ref: '#/components/schemas/TwilioCloudCostMetricsIntegrationDataflowResponse' + twilio-events-logs: + $ref: '#/components/schemas/TwilioEventsLogsIntegrationDataflowResponse' + twilio-messages-logs: + $ref: '#/components/schemas/TwilioMessagesLogsIntegrationDataflowResponse' type: object - AWSAccountResponseAttributes: - description: AWS Account response attributes. + TwilioIntegrationAccountSettingsResponse: + description: Settings configured on the Twilio integration account. properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - created_at: - description: Timestamp of when the account integration was created. - format: date-time - readOnly: true - type: string - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - modified_at: - description: Timestamp of when the account integration was updated. - format: date-time - readOnly: true + account_sid: + description: Twilio Account SID that uniquely identifies your Twilio account. + example: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx type: string - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' + censor_logs: + description: When enabled, Twilio phone numbers in the `to` field and SMS message bodies are censored for privacy. + example: true + type: boolean required: - - aws_account_id + - account_sid type: object - AWSAccountConfigID: - description: >- - Unique Datadog ID of the AWS Account Integration Config. - - To get the config ID for an account, use the [List all AWS - integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) - - endpoint and query by AWS Account ID. - example: 00000000-abcd-0001-0000-000000000000 - type: string - AWSAccountType: - default: account - description: AWS Account resource type. - enum: - - account - example: account - type: string - x-enum-varnames: - - ACCOUNT - AWSAccountCreateRequestAttributes: - description: The AWS Account Integration Config to be created. + TwilioIntegrationAccountAuthenticationRequest: + description: Authentication for creating the Twilio integration account. Exactly one method is set. properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog + type: string required: - - aws_account_id - - aws_partition - - auth_config + - auth_type + - username + - password type: object - AWSAccountUpdateRequestAttributes: - description: The AWS Account Integration Config to be updated. + TwilioIntegrationDataflowsRequest: + additionalProperties: false + description: Dataflows to configure on the Twilio integration account, keyed by dataflow id. properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id + twilio-alerts-logs: + $ref: '#/components/schemas/TwilioAlertsLogsIntegrationDataflowRequest' + twilio-call-summaries-logs: + $ref: '#/components/schemas/TwilioCallSummariesLogsIntegrationDataflowRequest' + twilio-cloud-cost-metrics: + $ref: '#/components/schemas/TwilioCloudCostMetricsIntegrationDataflowRequest' + twilio-events-logs: + $ref: '#/components/schemas/TwilioEventsLogsIntegrationDataflowRequest' + twilio-messages-logs: + $ref: '#/components/schemas/TwilioMessagesLogsIntegrationDataflowRequest' type: object - AWSNamespacesResponseAttributes: - description: AWS Namespaces response attributes. + TwilioIntegrationAccountSettingsRequest: + description: Settings for creating the Twilio integration account. properties: - namespaces: - description: AWS CloudWatch namespace. - example: - - AWS/ApiGateway - items: - example: AWS/ApiGateway - type: string - type: array + account_sid: + description: Twilio Account SID that uniquely identifies your Twilio account. + example: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + type: string + censor_logs: + description: When enabled, Twilio phone numbers in the `to` field and SMS message bodies are censored for privacy. + example: true + type: boolean required: - - namespaces + - account_sid type: object - AWSNamespacesResponseDataType: - default: namespaces - description: The `AWSNamespacesResponseData` `type`. - enum: - - namespaces - example: namespaces - type: string - x-enum-varnames: - - NAMESPACES - AWSNewExternalIDResponseAttributes: - description: AWS External ID response body. + TwilioIntegrationAccountAuthenticationUpdate: + description: Authentication for updating the Twilio integration account. Exactly one method is set. properties: - external_id: - description: AWS IAM External ID for associated role. - example: acb8f6b8a844443dbb726d07dcb1a870 + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog type: string required: - - external_id + - auth_type type: object - AWSNewExternalIDResponseDataType: - default: external_id - description: The `AWSNewExternalIDResponseData` `type`. - enum: - - external_id - example: external_id - type: string - x-enum-varnames: - - EXTERNAL_ID - AWSIntegrationIamPermissionsResponseAttributes: - description: AWS Integration IAM Permissions response attributes. + TwilioIntegrationAccountSettingsUpdate: + description: Settings for updating the Twilio integration account. Only the fields provided are changed. properties: - permissions: - description: List of AWS IAM permissions required for the integration. - example: - - account:GetContactInformation - - amplify:ListApps - - amplify:ListArtifacts - - amplify:ListBackendEnvironments - - amplify:ListBranches - items: - example: account:GetContactInformation - type: string - type: array + account_sid: + description: Twilio Account SID that uniquely identifies your Twilio account. + example: ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + type: string + censor_logs: + description: When enabled, Twilio phone numbers in the `to` field and SMS message bodies are censored for privacy. + example: true + type: boolean + type: object + AWSAccountTags: + description: Tags to apply to all hosts and metrics reporting for this account. Defaults to `[]`. + items: + description: Tag in the form `key:value`. + example: env:prod + type: string + nullable: true + type: array + AWSAuthConfig: + description: AWS Authentication config. + properties: + access_key_id: + description: AWS Access Key ID. + example: AKIAIOSFODNN7EXAMPLE + type: string + secret_access_key: + description: AWS Secret Access Key. + example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY + minLength: 1 + type: string + writeOnly: true + external_id: + description: AWS IAM External ID for associated role. + type: string + role_name: + description: AWS IAM Role name. + example: DatadogIntegrationRole + maxLength: 576 + minLength: 1 + type: string required: - - permissions + - access_key_id + - role_name type: object - AWSIntegrationIamPermissionsResponseDataType: - default: permissions - description: The `AWSIntegrationIamPermissionsResponseData` `type`. + AWSAccountID: + description: AWS Account ID. + example: '123456789012' + type: string + AWSAccountPartition: + description: |- + AWS partition your AWS account is scoped to. Defaults to `aws`. + See [Partitions](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/partitions.html) + in the AWS documentation for more information. enum: - - permissions - example: permissions + - aws + - aws-cn + - aws-us-gov + example: aws type: string x-enum-varnames: - - PERMISSIONS - AWSLogsServicesResponseAttributes: - description: AWS Logs Services response body + - AWS + - AWS_CN + - AWS_US_GOV + AWSRegions: + description: AWS Regions to collect data from. Defaults to `include_all`. properties: - logs_services: - description: List of AWS services that can send logs to Datadog + include_all: + description: Include all regions. + example: true + type: boolean + include_only: + description: Include only these regions. example: - - s3 + - us-east-1 items: - example: s3 + description: An AWS region to include in metrics collection. + example: us-east-1 type: string type: array required: - - logs_services + - include_all + - include_only type: object - AWSLogsServicesResponseDataType: - default: logs_services - description: The `AWSLogsServicesResponseData` `type`. - enum: - - logs_services - example: logs_services - type: string - x-enum-varnames: - - LOGS_SERVICES - GCPSTSServiceAccountAttributes: - description: Attributes associated with your service account. + AWSLogsConfig: + description: AWS Logs Collection config. properties: - account_tags: - description: >- - Tags to be associated with GCP metrics and service checks from your - account. - items: - description: Account Level Tag - type: string - type: array - automute: - description: Silence monitors for expected GCE instance shutdowns. - type: boolean - client_email: - description: Your service account email address. - example: datadog-service-account@test-project.iam.gserviceaccount.com - type: string - cloud_run_revision_filters: - deprecated: true - description: >- - List of filters to limit the Cloud Run revisions that are pulled - into Datadog by using tags. - - Only Cloud Run revision resources that apply to specified filters - are imported into Datadog. - - **Note:** This field is deprecated. Instead, use - `monitored_resource_configs` with `type=cloud_run_revision` - example: - - $KEY:$VALUE - items: - description: Cloud Run revision filters - type: string - type: array - host_filters: - deprecated: true - description: >- - List of filters to limit the VM instances that are pulled into - Datadog by using tags. - - Only VM instance resources that apply to specified filters are - imported into Datadog. - - **Note:** This field is deprecated. Instead, use - `monitored_resource_configs` with `type=gce_instance` - example: - - $KEY:$VALUE - items: - description: VM instance filters - type: string - type: array - is_cspm_enabled: - description: >- - When enabled, Datadog will activate the Cloud Security Monitoring - product for this service account. Note: This requires - resource_collection_enabled to be set to true. - type: boolean - is_per_project_quota_enabled: - default: false - description: >- - When enabled, Datadog applies the `X-Goog-User-Project` header, - attributing Google Cloud billing and quota usage to the project - being monitored rather than the default service account project. + lambda_forwarder: + $ref: '#/components/schemas/AWSLambdaForwarderConfig' + type: object + AWSMetricsConfig: + description: AWS Metrics Collection config. + properties: + automute_enabled: + description: Enable EC2 automute for AWS metrics. Defaults to `true`. example: true type: boolean - is_resource_change_collection_enabled: - default: false - description: >- - When enabled, Datadog scans for all resource change data in your - Google Cloud environment. - example: true + collect_cloudwatch_alarms: + description: Enable CloudWatch alarms collection. Defaults to `false`. + example: false type: boolean - is_security_command_center_enabled: - default: false - description: >- - When enabled, Datadog will attempt to collect Security Command - Center Findings. Note: This requires additional permissions on the - service account. + collect_custom_metrics: + description: Enable custom metrics collection. Defaults to `false`. + example: false + type: boolean + enabled: + description: Enable AWS metrics collection. Defaults to `true`. example: true type: boolean - metric_namespace_configs: - description: Configurations for GCP metric namespaces. - example: - - disabled: true - id: aiplatform - items: - $ref: '#/components/schemas/GCPMetricNamespaceConfig' - type: array - monitored_resource_configs: - description: Configurations for GCP monitored resources. - example: - - filters: - - $KEY:$VALUE - type: gce_instance + metric_name_filters: + description: |- + AWS CloudWatch metric name filters. Each filter applies to a single namespace. + Exactly one of `include_only` or `exclude_only` must be set on each filter. items: - $ref: '#/components/schemas/GCPMonitoredResourceConfig' + $ref: '#/components/schemas/AWSMetricNameFilters' type: array - resource_collection_enabled: - description: >- - When enabled, Datadog scans for all resources in your GCP - environment. - type: boolean - type: object - GCPServiceAccountMeta: - description: Additional information related to your service account. - properties: - accessible_projects: - description: The current list of projects accessible from your service account. + namespace_filters: + $ref: '#/components/schemas/AWSNamespaceFilters' + tag_filters: + description: AWS Metrics collection tag filters list. Defaults to `[]`. items: - description: List of GCP projects. - type: string + $ref: '#/components/schemas/AWSNamespaceTagFilter' type: array type: object - GCPServiceAccountType: - default: gcp_service_account - description: The type of account. - enum: - - gcp_service_account - example: gcp_service_account - type: string - x-enum-varnames: - - GCP_SERVICE_ACCOUNT - GCPSTSDelegateAccountAttributes: - description: Your delegate account attributes. - properties: - delegate_account_email: - description: Your organization's Datadog principal email address. - example: >- - ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com - type: string - type: object - GCPSTSDelegateAccountType: - default: gcp_sts_delegate - description: The type of account. - enum: - - gcp_sts_delegate - example: gcp_sts_delegate - type: string - x-enum-varnames: - - GCP_STS_DELEGATE - MicrosoftTeamsChannelInfoResponseAttributes: - description: Channel attributes. + AWSResourcesConfig: + description: AWS Resources Collection config. properties: - is_primary: - description: Indicates if this is the primary channel. + cloud_security_posture_management_collection: + description: |- + Enable Cloud Security Management to scan AWS resources for vulnerabilities, misconfigurations, + identity risks, and compliance violations. Defaults to `false`. + Requires `extended_collection` to be set to `true`. + example: false + type: boolean + extended_collection: + description: |- + Whether Datadog collects additional attributes and configuration information about the resources + in your AWS account. Defaults to `true`. Required for `cloud_security_posture_management_collection`. example: true - maxLength: 255 type: boolean - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string type: object - MicrosoftTeamsChannelInfoType: - default: ms-teams-channel-info - description: Channel info resource type. - enum: - - ms-teams-channel-info - example: ms-teams-channel-info - type: string - x-enum-varnames: - - MS_TEAMS_CHANNEL_INFO - MicrosoftTeamsTenantBasedHandleInfoResponseAttributes: - description: Tenant-based handle attributes. + AWSTracesConfig: + description: AWS Traces Collection config. properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - channel_name: - description: Channel name. - example: fake-channel-name - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - team_name: - description: Team name. - example: fake-team-name - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - tenant_name: - description: Tenant name. - example: fake-tenant-name - maxLength: 255 - type: string + xray_services: + $ref: '#/components/schemas/XRayServicesList' type: object - MicrosoftTeamsTenantBasedHandleInfoType: - default: ms-teams-tenant-based-handle-info - description: Tenant-based handle resource type. - enum: - - ms-teams-tenant-based-handle-info - example: ms-teams-tenant-based-handle-info - type: string - x-enum-varnames: - - MS_TEAMS_TENANT_BASED_HANDLE_INFO - MicrosoftTeamsTenantBasedHandleRequestAttributes: - description: Tenant-based handle attributes. + DataExportConfig: + description: AWS Cost and Usage Report data export configuration. properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 + bucket_name: + description: Name of the S3 bucket where the Cost and Usage Report is stored. + example: billing type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 + bucket_region: + description: AWS region of the S3 bucket. + example: us-east-1 type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 + report_name: + description: Name of the Cost and Usage Report. + example: cost-and-usage-report type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 + report_prefix: + description: S3 prefix where the Cost and Usage Report is stored. + example: reports + type: string + report_type: + description: Type of the Cost and Usage Report. Currently only `CUR2.0` is supported. + example: CUR2.0 type: string required: - - name - - channel_id - - team_id - - tenant_id + - report_name + - report_prefix + - report_type + - bucket_name + - bucket_region type: object - MicrosoftTeamsTenantBasedHandleType: - default: tenant-based-handle - description: Specifies the tenant-based handle resource type. - enum: - - tenant-based-handle - example: tenant-based-handle - type: string - x-enum-varnames: - - TENANT_BASED_HANDLE - MicrosoftTeamsTenantBasedHandleAttributes: - description: Tenant-based handle attributes. + AWSCcmConfig: + description: AWS Cloud Cost Management config. properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string + data_export_configs: + description: List of data export configurations for Cost and Usage Reports. + items: + $ref: '#/components/schemas/DataExportConfig' + type: array + required: + - data_export_configs type: object - MicrosoftTeamsWorkflowsWebhookResponseAttributes: - description: Workflows Webhook handle attributes. + AWSMetricNameFilterPreviewNamespace: + description: The metric name filter preview for a single namespace. properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 + filters: + description: The metric name filter patterns evaluated for this namespace and how many metrics they matched. + items: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewFilterMatch' + type: array + metrics: + description: |- + The CloudWatch metrics collected for this namespace and whether each resulting + Datadog metric is filtered. + items: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewMetric' + type: array + namespace: + description: The AWS CloudWatch namespace. + example: AWS/EC2 type: string + required: + - namespace + - filters + - metrics type: object - MicrosoftTeamsWorkflowsWebhookHandleType: - default: workflows-webhook-handle - description: Specifies the Workflows webhook handle resource type. - enum: - - workflows-webhook-handle - example: workflows-webhook-handle - type: string - x-enum-varnames: - - WORKFLOWS_WEBHOOK_HANDLE - MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes: - description: Workflows Webhook handle attributes. + AWSMetricNameFilters: + description: |- + AWS CloudWatch metric name filter for a single namespace. + Exactly one of `include_only` or `exclude_only` must be set. properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - url: - description: Workflows Webhook URL. - example: https://fake.url.com - maxLength: 255 + include_only: + description: Include only metric names matching one of these patterns. + example: + - aws.ec2.network_in + items: + description: A metric name pattern to include. + example: aws.ec2.network_in + type: string + type: array + namespace: + description: The AWS CloudWatch namespace to which this metric name filter applies. + example: AWS/EC2 type: string + exclude_only: + description: Exclude metric names matching one of these patterns. + example: + - aws.ec2.network_in + items: + description: A metric name pattern to exclude. + example: aws.ec2.network_in + type: string + type: array required: - - name - - url + - namespace + - include_only + - exclude_only type: object - MicrosoftTeamsWorkflowsWebhookHandleAttributes: - description: Workflows Webhook handle attributes. + AWSEventBridgeAccountConfiguration: + description: The EventBridge configuration for one AWS account. properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 + account_id: + description: Your AWS Account ID without dashes. + example: '123456789012' type: string - url: - description: Workflows Webhook URL. - example: https://fake.url.com - maxLength: 255 + event_hubs: + description: Array of AWS event sources associated with this account. + items: + $ref: '#/components/schemas/AWSEventBridgeSource' + type: array + tags: + description: |- + Array of tags (in the form `key:value`) which are added to all hosts + and metrics reporting through the main AWS integration. + example: + - $KEY:$VALUE + items: + description: The list of the host_tags. + type: string + type: array + type: object + AWSCcmConfigValidationIssues: + description: List of validation issues found for the Cost and Usage Report (CUR) 2.0 configuration. Empty when the configuration is valid. + items: + $ref: '#/components/schemas/AWSCcmConfigValidationIssue' + type: array + GCPMetricNamespaceConfig: + description: Configuration for a GCP metric namespace. + properties: + disabled: + default: false + description: When disabled, Datadog does not collect metrics that are related to this GCP metric namespace. + example: true + type: boolean + filters: + description: When enabled, Datadog applies these additional filters to limit metric collection. A metric is collected only if it does not match all exclusion filters and matches at least one allow filter. + example: + - snapshot.* + - '!*_by_region' + items: + description: A metric namespace filter + type: string + type: array + id: + description: The id of the GCP metric namespace. + example: pubsub type: string type: object - OpsgenieServiceResponseAttributes: - description: The attributes from an Opsgenie service response. + GoogleChatOrganizationRelationshipsDelegatedUser: + description: The delegated user relationship. properties: - custom_url: - description: The custom URL for a custom region. - example: null - nullable: true + data: + $ref: '#/components/schemas/GoogleChatOrganizationRelationshipsDelegatedUserData' + type: object + JiraAccountAttributes: + description: Attributes of a Jira account + properties: + consumer_key: + description: The consumer key for the Jira account + example: consumer-key-1 type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 + instance_url: + description: The URL of the Jira instance + example: https://example.atlassian.net type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' + last_webhook_timestamp: + description: Timestamp of the last webhook received + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - consumer_key + - instance_url type: object - OpsgenieServiceType: - default: opsgenie-service - description: Opsgenie service resource type. + JiraAccountType: + description: Type identifier for Jira account resources enum: - - opsgenie-service - example: opsgenie-service + - jira-account + example: jira-account type: string x-enum-varnames: - - OPSGENIE_SERVICE - OpsgenieServiceCreateAttributes: - description: The Opsgenie service attributes for a create request. + - JIRA_ACCOUNT + JiraIssueTemplateCreateRequestAttributesJiraAccount: + description: Reference to the Jira account properties: - custom_url: - description: The custom URL for a custom region. - example: https://example.com - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - opsgenie_api_key: - description: The Opsgenie API key for your Opsgenie service. - example: 00000000-0000-0000-0000-000000000000 + id: + description: The ID of the Jira account + example: 80f16d40-1fba-486e-b1fc-983e6ca19bec + format: uuid type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' required: - - name - - opsgenie_api_key - - region + - id type: object - OpsgenieServiceUpdateAttributes: - description: The Opsgenie service attributes for an update request. + JiraAccountRelationship: + description: Relationship to a Jira account properties: - custom_url: - description: The custom URL for a custom region. - example: https://example.com - nullable: true - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - opsgenie_api_key: - description: The Opsgenie API key for your Opsgenie service. - example: 00000000-0000-0000-0000-000000000000 + data: + $ref: '#/components/schemas/JiraAccountData' + required: + - data + type: object + TenancyProductsDataAttributesProductsItems: + description: An individual Datadog product with its enablement status for a tenancy. + properties: + enabled: + description: Indicates whether the product is enabled for the tenancy. + type: boolean + product_key: + description: The unique key identifying the Datadog product (for example, CLOUD_SECURITY_POSTURE_MANAGEMENT). type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' type: object - CloudflareAccountResponseAttributes: - description: Attributes object of a Cloudflare account. + TenancyConfigDataAttributesLogsConfig: + description: Log collection configuration for an OCI tenancy, indicating which compartments and services have log collection enabled. + properties: + compartment_tag_filters: + description: List of compartment tag filters scoping log collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether log collection is enabled for the tenancy. + type: boolean + enabled_services: + description: List of OCI service names for which log collection is enabled. + items: + description: An OCI service name for which log collection is enabled (for example, compute). + type: string + type: array + type: object + TenancyConfigDataAttributesMetricsConfig: + description: Metrics collection configuration for an OCI tenancy, indicating which compartments and services are included or excluded. + properties: + compartment_tag_filters: + description: List of compartment tag filters scoping metrics collection to specific compartments. + items: + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string + type: array + enabled: + description: Whether metrics collection is enabled for the tenancy. + type: boolean + excluded_services: + description: List of OCI service names excluded from metrics collection. + items: + description: An OCI service name excluded from metrics collection (for example, compute). + type: string + type: array + type: object + TenancyConfigDataAttributesRegionsConfig: + description: Region configuration for an OCI tenancy, indicating which regions are available, enabled, or disabled for data collection. + properties: + available: + description: List of OCI regions available for data collection in the tenancy. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + disabled: + description: List of OCI regions explicitly disabled for data collection. + items: + description: An OCI region identifier (for example, us-phoenix-1). + type: string + type: array + enabled: + description: List of OCI regions enabled for data collection. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + type: object + CreateTenancyConfigDataAttributesAuthCredentials: + description: OCI API signing key credentials used to authenticate the Datadog integration with the OCI tenancy. properties: - email: - description: The email associated with the Cloudflare account. - example: test-email@example.com + fingerprint: + description: The fingerprint of the OCI API signing key used for authentication. type: string - name: - description: The name of the Cloudflare account. - example: test-name + private_key: + description: The PEM-encoded private key corresponding to the OCI API signing key fingerprint. + example: '' type: string - resources: - description: >- - An allowlist of resources, such as `web`, `dns`, `lb` (load - balancer), `worker`, that restricts pulling metrics from those - resources. - example: - - web - - dns - - lb - - worker + required: + - private_key + type: object + CreateTenancyConfigDataAttributesLogsConfig: + description: Log collection configuration for an OCI tenancy, controlling which compartments and services have log collection enabled. + properties: + compartment_tag_filters: + description: List of compartment tag filters to scope log collection to specific compartments. items: + description: A compartment tag filter in key:value format (for example, datadog:true). type: string type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 + enabled: + description: Whether log collection is enabled for the tenancy. + type: boolean + enabled_services: + description: List of OCI service names for which log collection is enabled. items: + description: An OCI service name for which log collection is enabled (for example, compute). type: string type: array - required: - - name type: object - CloudflareAccountType: - default: cloudflare-accounts - description: The JSON:API type for this API. Should always be `cloudflare-accounts`. - enum: - - cloudflare-accounts - example: cloudflare-accounts - type: string - x-enum-varnames: - - CLOUDFLARE_ACCOUNTS - CloudflareAccountCreateRequestAttributes: - description: Attributes object for creating a Cloudflare account. + CreateTenancyConfigDataAttributesMetricsConfig: + description: Metrics collection configuration for an OCI tenancy, controlling which compartments and services are included or excluded. properties: - api_key: - description: The API key (or token) for the Cloudflare account. - example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - type: string - email: - description: >- - The email associated with the Cloudflare account. If an API key is - provided (and not a token), this field is also required. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - example: test-name - type: string - resources: - description: >- - An allowlist of resources to restrict pulling metrics for including - `'web', 'dns', 'lb' (load balancer), 'worker'`. - example: - - web - - dns - - lb - - worker + compartment_tag_filters: + description: List of compartment tag filters to scope metrics collection to specific compartments. items: + description: A compartment tag filter in key:value format (for example, datadog:true). type: string type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 + enabled: + description: Whether metrics collection is enabled for the tenancy. + type: boolean + excluded_services: + description: List of OCI service names to exclude from metrics collection. items: + description: An OCI service name to exclude from metrics collection (for example, compute). type: string type: array - required: - - api_key - - name type: object - CloudflareAccountUpdateRequestAttributes: - description: Attributes object for updating a Cloudflare account. + CreateTenancyConfigDataAttributesRegionsConfig: + description: Region configuration for an OCI tenancy, specifying which regions are available, enabled, or disabled for data collection. properties: - api_key: - description: The API key of the Cloudflare account. - example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - type: string - email: - description: >- - The email associated with the Cloudflare account. If an API key is - provided (and not a token), this field is also required. - example: test-email@example.com + available: + description: List of OCI regions available for data collection in the tenancy. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + disabled: + description: List of OCI regions explicitly disabled for data collection. + items: + description: An OCI region identifier (for example, us-phoenix-1). + type: string + type: array + enabled: + description: List of OCI regions enabled for data collection. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + type: object + UpdateTenancyConfigDataAttributesAuthCredentials: + description: OCI API signing key credentials used to update the Datadog integration's authentication with the OCI tenancy. + properties: + fingerprint: + description: The fingerprint of the OCI API signing key used for authentication. type: string - name: - description: The name of the Cloudflare account. + private_key: + description: The PEM-encoded private key corresponding to the OCI API signing key fingerprint. + example: '' type: string - resources: - description: >- - An allowlist of resources to restrict pulling metrics for including - `'web', 'dns', 'lb' (load balancer), 'worker'`. - example: - - web - - dns - - lb - - worker + required: + - private_key + type: object + UpdateTenancyConfigDataAttributesLogsConfig: + description: Log collection configuration for updating an OCI tenancy, controlling which compartments and services have log collection enabled. + properties: + compartment_tag_filters: + description: List of compartment tag filters to scope log collection to specific compartments. items: + description: A compartment tag filter in key:value format (for example, datadog:true). type: string type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 + enabled: + description: Whether log collection is enabled for the tenancy. + type: boolean + enabled_services: + description: List of OCI service names for which log collection is enabled. items: + description: An OCI service name for which log collection is enabled (for example, compute). type: string type: array - required: - - api_key type: object - ConfluentAccountResponseAttributes: - description: The attributes of a Confluent account. + UpdateTenancyConfigDataAttributesMetricsConfig: + description: Metrics collection configuration for updating an OCI tenancy, controlling which compartments and services are included or excluded. properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - resources: - description: A list of Confluent resources associated with the Confluent account. + compartment_tag_filters: + description: List of compartment tag filters to scope metrics collection to specific compartments. items: - $ref: '#/components/schemas/ConfluentResourceResponseAttributes' + description: A compartment tag filter in key:value format (for example, datadog:true). + type: string type: array - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue + enabled: + description: Whether metrics collection is enabled for the tenancy. + type: boolean + excluded_services: + description: List of OCI service names to exclude from metrics collection. + items: + description: An OCI service name to exclude from metrics collection (for example, compute). + type: string + type: array + type: object + UpdateTenancyConfigDataAttributesRegionsConfig: + description: Region configuration for updating an OCI tenancy, specifying which regions are available, enabled, or disabled for data collection. + properties: + available: + description: List of OCI regions available for data collection in the tenancy. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + disabled: + description: List of OCI regions explicitly disabled for data collection. items: + description: An OCI region identifier (for example, us-phoenix-1). type: string type: array + enabled: + description: List of OCI regions enabled for data collection. + items: + description: An OCI region identifier (for example, us-ashburn-1). + type: string + type: array + type: object + OpsgenieServiceRegionType: + description: The region for the Opsgenie service. + enum: + - us + - eu + - custom + example: us + type: string + x-enum-varnames: + - US + - EU + - CUSTOM + SalesforceIncidentsTemplatePriority: + description: Priority of the Salesforce incident created from this template. + enum: + - Critical + - High + - Moderate + - Low + example: High + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MODERATE + - LOW + ServiceNowAssignmentGroupAttributes: + description: Attributes of a ServiceNow assignment group + properties: + assignment_group_name: + description: The name of the assignment group + example: Network Team + type: string + assignment_group_sys_id: + description: The system ID of the assignment group in ServiceNow + example: abc123def456 + type: string + instance_id: + description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string required: - - api_key + - instance_id + - assignment_group_name + - assignment_group_sys_id type: object - ConfluentAccountType: - default: confluent-cloud-accounts - description: >- - The JSON:API type for this API. Should always be - `confluent-cloud-accounts`. + ServiceNowAssignmentGroupType: + description: Type identifier for ServiceNow assignment group resources enum: - - confluent-cloud-accounts - example: confluent-cloud-accounts + - assignment_groups + example: assignment_groups type: string x-enum-varnames: - - CONFLUENT_CLOUD_ACCOUNTS - ConfluentAccountCreateRequestAttributes: - description: Attributes associated with the account creation request. + - ASSIGNMENT_GROUPS + ServiceNowBusinessServiceAttributes: + description: Attributes of a ServiceNow business service properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 + instance_id: + description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid type: string - api_secret: - description: The API secret associated with your Confluent account. - example: test-api-secret-123 + service_name: + description: The name of the business service + example: IT Support + type: string + service_sys_id: + description: The system ID of the business service in ServiceNow + example: abc123def456 type: string - resources: - description: A list of Confluent resources associated with the Confluent account. - items: - $ref: '#/components/schemas/ConfluentAccountResourceAttributes' - type: array - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array required: - - api_key - - api_secret + - instance_id + - service_name + - service_sys_id type: object - ConfluentAccountUpdateRequestAttributes: - description: Attributes object for updating a Confluent account. + ServiceNowBusinessServiceType: + description: Type identifier for ServiceNow business service resources + enum: + - business_services + example: business_services + type: string + x-enum-varnames: + - BUSINESS_SERVICES + ServiceNowInstanceAttributes: + description: Attributes of a ServiceNow instance properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 + instance_name: + description: The name of the ServiceNow instance + example: my-servicenow-instance type: string - api_secret: - description: The API secret associated with your Confluent account. - example: test-api-secret-123 + required: + - instance_name + type: object + ServiceNowInstanceType: + description: Type identifier for ServiceNow instance resources + enum: + - instance + example: instance + type: string + x-enum-varnames: + - INSTANCE + ServiceNowUserAttributes: + description: Attributes of a ServiceNow user + properties: + email: + description: The email address of the user + example: john.doe@example.com + type: string + full_name: + description: The full name of the user + example: John Doe + type: string + instance_id: + description: The ID of the ServiceNow instance + example: 65b3341b-0680-47f9-a6d4-134db45c603e + format: uuid + type: string + user_name: + description: The username of the ServiceNow user + example: john.doe + type: string + user_sys_id: + description: The system ID of the user in ServiceNow + example: abc123def456 type: string - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array required: - - api_key - - api_secret + - instance_id + - user_name + - user_sys_id + - email type: object - ConfluentResourceResponseAttributes: - description: Model representation of a Confluent Cloud resource. + ServiceNowUserType: + description: Type identifier for ServiceNow user resources + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + WebhooksOAuth2ClientCredentialsRelationship: + description: Relationship pointing to the OAuth2 client credentials resource for this auth method. + properties: + data: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsRelationshipData' + type: object + ConfluentAccountResourceAttributes: + description: Attributes object for updating a Confluent resource. properties: enable_custom_metrics: default: false - description: >- - Enable the `custom.consumer_lag_offset` metric, which contains extra - metric tags. + description: Enable the `custom.consumer_lag_offset` metric, which contains extra metric tags. example: false type: boolean id: - description: The ID associated with the Confluent resource. - example: resource_id_abc123 + description: The ID associated with a Confluent resource. + example: resource-id-123 type: string resource_type: - description: >- - The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. + description: The resource type of the Resource. Can be `kafka`, `connector`, `ksql`, or `schema_registry`. example: kafka type: string tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. + description: A list of strings representing tags. Can be a single key, or key-value pairs separated by a colon. example: - myTag - myTag2:myValue items: + description: A tag for the Confluent resource. Can be a single key or a key-value pair separated by a colon. type: string type: array required: - resource_type type: object - ConfluentResourceType: - default: confluent-cloud-resources - description: The JSON:API type for this request. - enum: - - confluent-cloud-resources - example: confluent-cloud-resources - type: string - x-enum-varnames: - - CONFLUENT_CLOUD_RESOURCES - ConfluentResourceRequestAttributes: - description: Attributes object for updating a Confluent resource. + FastlyService: + description: The schema representation of a Fastly service. properties: - enable_custom_metrics: - default: false - description: >- - Enable the `custom.consumer_lag_offset` metric, which contains extra - metric tags. - example: false - type: boolean - resource_type: - description: >- - The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka + id: + description: The ID of the Fastly service + example: 6abc7de6893AbcDe9fghIj type: string tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. + description: A list of tags for the Fastly service. example: - myTag - myTag2:myValue items: + description: A tag for the Fastly service. type: string type: array required: - - resource_type + - id + type: object + BatchRowsQueryResponseDataRelationshipsRows: + description: Relationship data containing the list of matching rows. + properties: + data: + items: + $ref: '#/components/schemas/TableRowResourceIdentifier' + type: array type: object - FastlyAccounResponseAttributes: - description: Attributes object of a Fastly account. + TableResultV2DataAttributesFileMetadata: + additionalProperties: false + description: |- + Metadata specifying where and how to access the reference table's data file. + + For cloud storage tables (S3/GCS/Azure): + - sync_enabled and access_details will always be present + - error fields (error_message, error_row_count, error_type) are present only when errors occur + + For local file tables: + - error fields (error_message, error_row_count) are present only when errors occur + - sync_enabled, access_details are never present properties: - name: - description: The name of the Fastly account. - example: test-name + access_details: + $ref: '#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetails' + description: Cloud storage access configuration. Only present for cloud storage sources (S3, GCS, Azure). + error_message: + description: The error message returned from the last operation (sync for cloud storage, upload for local file). type: string - services: - description: A list of services belonging to the parent account. + error_row_count: + description: The number of rows that failed to process. + format: int64 + type: integer + error_type: + $ref: '#/components/schemas/TableResultV2DataAttributesFileMetadataCloudStorageErrorType' + description: The type of error that occurred during file processing. Only applicable for cloud storage sources. + sync_enabled: + description: Whether this table is synced automatically from cloud storage. Only applicable for cloud storage sources. + type: boolean + title: FileMetadataV2 + type: object + TableResultV2DataAttributesSchema: + description: Schema defining the structure and columns of the reference table. + properties: + fields: + description: The schema fields. Maximum of 200 columns. items: - $ref: '#/components/schemas/FastlyService' + $ref: '#/components/schemas/TableResultV2DataAttributesSchemaFieldsItems' + maxItems: 200 + minItems: 1 + type: array + primary_keys: + description: List of field names that serve as primary keys for the table. Only one primary key is supported, and it is used as an ID to retrieve rows. + example: + - field_1 + items: + description: A field name used as a primary key. + type: string type: array required: - - name + - fields + - primary_keys type: object - FastlyAccountType: - default: fastly-accounts - description: The JSON:API type for this API. Should always be `fastly-accounts`. + ReferenceTableSourceType: + description: The source type for reference table data. Includes all possible source types that can appear in responses. enum: - - fastly-accounts - example: fastly-accounts + - LOCAL_FILE + - S3 + - GCS + - AZURE + - SERVICENOW + - SALESFORCE + - DATABRICKS + - SNOWFLAKE + example: LOCAL_FILE type: string x-enum-varnames: - - FASTLY_ACCOUNTS - FastlyAccountCreateRequestAttributes: - description: Attributes object for creating a Fastly account. + - LOCAL_FILE + - S3 + - GCS + - AZURE + - SERVICENOW + - SALESFORCE + - DATABRICKS + - SNOWFLAKE + CreateTableRequestDataAttributesFileMetadata: + description: Metadata specifying where and how to access the reference table's data file. + additionalProperties: false properties: - api_key: - description: The API key for the Fastly account. - example: ABCDEFG123 - type: string - name: - description: The name of the Fastly account. - example: test-name + access_details: + $ref: '#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetails' + sync_enabled: + description: Whether this table is synced automatically. + example: false + type: boolean + upload_id: + description: The upload ID. + example: 00000000-0000-0000-0000-000000000000 type: string - services: - description: A list of services belonging to the parent account. + required: + - access_details + - sync_enabled + - upload_id + title: CloudFileMetadataV2 + type: object + CreateTableRequestDataAttributesSchema: + description: Schema defining the structure and columns of the reference table. + properties: + fields: + description: The schema fields. Maximum of 200 columns. items: - $ref: '#/components/schemas/FastlyService' + $ref: '#/components/schemas/CreateTableRequestDataAttributesSchemaFieldsItems' + maxItems: 200 + minItems: 1 + type: array + primary_keys: + description: List of field names that serve as primary keys for the table. Only one primary key is supported, and it is used as an ID to retrieve rows. + example: + - field_1 + items: + description: A field name used as a primary key. + type: string type: array required: - - api_key - - name + - fields + - primary_keys type: object - FastlyAccountUpdateRequestAttributes: - description: Attributes object for updating a Fastly account. + ReferenceTableCreateSourceType: + description: The source type for creating reference table data. Only these source types can be created through this API. + enum: + - LOCAL_FILE + - S3 + - GCS + - AZURE + example: LOCAL_FILE + type: string + x-enum-varnames: + - LOCAL_FILE + - S3 + - GCS + - AZURE + PatchTableRequestDataAttributesFileMetadata: + description: Metadata specifying where and how to access the reference table's data file. + additionalProperties: false properties: - api_key: - description: The API key of the Fastly account. - example: ABCDEFG123 - type: string - name: - description: The name of the Fastly account. + access_details: + $ref: '#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetails' + sync_enabled: + description: Whether this table is synced automatically. + example: false + type: boolean + upload_id: + description: The upload ID. + example: 00000000-0000-0000-0000-000000000000 type: string + title: CloudFileMetadataV2 type: object - FastlyServiceAttributes: - description: Attributes object for Fastly service requests. + required: + - upload_id + PatchTableRequestDataAttributesSchema: + description: Schema defining the updates to the structure and columns of the reference table. Schema fields cannot be deleted or renamed. properties: - tags: - description: A list of tags for the Fastly service. + fields: + description: The schema fields. Maximum of 200 columns. + items: + $ref: '#/components/schemas/PatchTableRequestDataAttributesSchemaFieldsItems' + maxItems: 200 + minItems: 1 + type: array + primary_keys: + description: List of field names that serve as primary keys for the table. Only one primary key is supported, and it is used as an ID to retrieve rows. Primary keys cannot be changed after table creation. example: - - myTag - - myTag2:myValue + - field_1 items: + description: A field name used as a primary key. type: string type: array + required: + - fields + - primary_keys type: object - FastlyServiceType: - default: fastly-services - description: The JSON:API type for this API. Should always be `fastly-services`. - enum: - - fastly-services - example: fastly-services + BatchUpsertRowsRequestDataAttributesValue: + description: Types allowed for Reference Table row values. + example: row_name type: string - x-enum-varnames: - - FASTLY_SERVICES - OktaAccountAttributes: - description: Attributes object for an Okta account. + format: int32 + maximum: 2147483647 + WebIntegrationAccountSettings: + additionalProperties: {} + description: Integration-specific settings. The shape of this object varies by integration. + example: + workspace_url: https://example.azuredatabricks.net + type: object + WebIntegrationAccountSecrets: + additionalProperties: {} + description: |- + Integration-specific secrets. The shape of this object varies by integration. Secrets + are write-only and never returned by the API. + example: + client_secret: my-client-secret + type: object + IntegrationAccountBasicAuthResponse: + description: The basic authentication method and username configured on the account. properties: - api_key: - description: The API key of the Okta account. - type: string - writeOnly: true - auth_method: - description: The authorization method for an Okta account. - example: oauth - type: string - client_id: - description: The Client ID of an Okta app integration. - type: string - client_secret: - description: The client secret of an Okta app integration. - type: string - writeOnly: true - domain: - description: The domain of the Okta account. - example: https://example.okta.com/ - type: string - name: - description: The name of the Okta account. - example: Okta-Prod + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog type: string required: - - auth_method - - domain - - name + - auth_type + - username type: object - OktaAccountType: - default: okta-accounts - description: Account type for an Okta account. - enum: - - okta-accounts - example: okta-accounts - type: string - x-enum-varnames: - - OKTA_ACCOUNTS - OktaAccountUpdateRequestAttributes: - description: Attributes object for updating an Okta account. + ElasticCloudDetailedIndexStatsIntegrationDataflowResponse: + description: The Elastic Cloud detailed index stats dataflow. properties: - api_key: - description: The API key of the Okta account. - type: string - writeOnly: true - auth_method: - description: The authorization method for an Okta account. - example: oauth - type: string - client_id: - description: The Client ID of an Okta app integration. - type: string - client_secret: - description: The client secret of an Okta app integration. + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudIndexStatsIntegrationDataflowResponse: + description: The Elastic Cloud index stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudMetricsIntegrationDataflowResponse: + description: The Elastic Cloud metrics dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + readOnly: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudPendingTaskStatsIntegrationDataflowResponse: + description: The Elastic Cloud pending task stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowResponse: + description: The Elastic Cloud primary shard graceful timeout dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudPrimaryShardStatsIntegrationDataflowResponse: + description: The Elastic Cloud primary shard stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudShardAllocationStatsIntegrationDataflowResponse: + description: The Elastic Cloud shard allocation stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + ElasticCloudSlmStatsIntegrationDataflowResponse: + description: The Elastic Cloud snapshot lifecycle management stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + IntegrationAccountBasicAuthRequest: + description: Username and password authentication. + properties: + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + password: + description: Secret password or private key. + example: your-password type: string writeOnly: true - domain: - description: The domain associated with an Okta account. - example: https://dev-test.okta.com/ + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog type: string required: - - auth_method - - domain + - auth_type + - username + - password type: object - AWSAccountTags: - description: >- - Tags to apply to all hosts and metrics reporting for this account. - Defaults to `[]`. - items: - description: Tag in the form `key:value`. - example: env:prod - type: string - nullable: true - type: array - AWSAuthConfig: - description: AWS Authentication config. - oneOf: - - $ref: '#/components/schemas/AWSAuthConfigKeys' - - $ref: '#/components/schemas/AWSAuthConfigRole' - AWSAccountID: - description: AWS Account ID. - example: '123456789012' - type: string - AWSAccountPartition: - description: >- - AWS partition your AWS account is scoped to. Defaults to `aws`. - - See - [Partitions](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/partitions.html) - in the AWS documentation for more information. - enum: - - aws - - aws-cn - - aws-us-gov - example: aws - type: string - x-enum-varnames: - - AWS - - AWS_CN - - AWS_US_GOV - AWSRegions: - description: AWS Regions to collect data from. Defaults to `include_all`. - oneOf: - - $ref: '#/components/schemas/AWSRegionsIncludeAll' - - $ref: '#/components/schemas/AWSRegionsIncludeOnly' - AWSLogsConfig: - description: AWS Logs Collection config. + ElasticCloudDetailedIndexStatsIntegrationDataflowRequest: + description: The Elastic Cloud detailed index stats dataflow. properties: - lambda_forwarder: - $ref: '#/components/schemas/AWSLambdaForwarderConfig' + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean type: object - AWSMetricsConfig: - description: AWS Metrics Collection config. + ElasticCloudIndexStatsIntegrationDataflowRequest: + description: The Elastic Cloud index stats dataflow. properties: - automute_enabled: - description: Enable EC2 automute for AWS metrics. Defaults to `true`. + enabled: + description: Whether the Elastic Cloud dataflow is enabled. example: true type: boolean - collect_cloudwatch_alarms: - description: Enable CloudWatch alarms collection. Defaults to `false`. - example: false + type: object + ElasticCloudPendingTaskStatsIntegrationDataflowRequest: + description: The Elastic Cloud pending task stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudPrimaryShardGracefulTimeoutIntegrationDataflowRequest: + description: The Elastic Cloud primary shard graceful timeout dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudPrimaryShardStatsIntegrationDataflowRequest: + description: The Elastic Cloud primary shard stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudShardAllocationStatsIntegrationDataflowRequest: + description: The Elastic Cloud shard allocation stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + ElasticCloudSlmStatsIntegrationDataflowRequest: + description: The Elastic Cloud snapshot lifecycle management stats dataflow. + properties: + enabled: + description: Whether the Elastic Cloud dataflow is enabled. + example: true + type: boolean + type: object + IntegrationAccountBasicAuthUpdate: + description: Username and password authentication. Only the fields provided are changed; omit `password` to keep the stored one. + properties: + auth_type: + $ref: '#/components/schemas/IntegrationAccountBasicAuthType' + password: + description: Secret password or private key. + example: your-password + type: string + writeOnly: true + username: + description: Non-secret username or public identifier for the credential pair. + example: datadog + type: string + required: + - auth_type + type: object + TwilioAlertsLogsIntegrationDataflowResponse: + description: The Twilio alerts logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true type: boolean - collect_custom_metrics: - description: Enable custom metrics collection. Defaults to `false`. - example: false + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + TwilioCallSummariesLogsIntegrationDataflowResponse: + description: The Twilio call summaries logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. + example: true type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + TwilioCloudCostMetricsIntegrationDataflowResponse: + description: The Twilio cloud cost metrics dataflow. + properties: enabled: - description: Enable AWS metrics collection. Defaults to `true`. + description: Whether the Twilio dataflow is enabled. example: true type: boolean - namespace_filters: - $ref: '#/components/schemas/AWSNamespaceFilters' - tag_filters: - description: AWS Metrics collection tag filters list. Defaults to `[]`. - items: - $ref: '#/components/schemas/AWSNamespaceTagFilter' - type: array + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' type: object - AWSResourcesConfig: - description: AWS Resources Collection config. + TwilioEventsLogsIntegrationDataflowResponse: + description: The Twilio events logs dataflow. properties: - cloud_security_posture_management_collection: - description: >- - Enable Cloud Security Management to scan AWS resources for - vulnerabilities, misconfigurations, identity risks, and compliance - violations. Defaults to `false`. Requires `extended_collection` to - be set to `true`. - example: false + enabled: + description: Whether the Twilio dataflow is enabled. + example: true type: boolean - extended_collection: - description: >- - Whether Datadog collects additional attributes and configuration - information about the resources in your AWS account. Defaults to - `true`. Required for `cloud_security_posture_management_collection`. + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' + type: object + TwilioMessagesLogsIntegrationDataflowResponse: + description: The Twilio messages logs dataflow. + properties: + enabled: + description: Whether the Twilio dataflow is enabled. example: true type: boolean + status: + $ref: '#/components/schemas/IntegrationAccountDataflowStatus' type: object - AWSTracesConfig: - description: AWS Traces Collection config. + TwilioAlertsLogsIntegrationDataflowRequest: + description: The Twilio alerts logs dataflow. properties: - xray_services: - $ref: '#/components/schemas/XRayServicesList' + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean type: object - GCPMetricNamespaceConfig: - description: Configuration for a GCP metric namespace. + TwilioCallSummariesLogsIntegrationDataflowRequest: + description: The Twilio call summaries logs dataflow. properties: - disabled: - default: false - description: >- - When disabled, Datadog does not collect metrics that are related to - this GCP metric namespace. + enabled: + description: Whether the Twilio dataflow is enabled. example: true type: boolean - id: - description: The id of the GCP metric namespace. - example: aiplatform - type: string type: object - GCPMonitoredResourceConfig: - description: Configuration for a GCP monitored resource. + TwilioCloudCostMetricsIntegrationDataflowRequest: + description: The Twilio cloud cost metrics dataflow. properties: - filters: - description: >- - List of filters to limit the monitored resources that are pulled - into Datadog by using tags. - - Only monitored resources that apply to specified filters are - imported into Datadog. - example: - - $KEY:$VALUE - items: - description: A monitored resource filter - type: string - type: array - type: - $ref: '#/components/schemas/GCPMonitoredResourceConfigType' + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean type: object - OpsgenieServiceRegionType: - description: The region for the Opsgenie service. - enum: - - us - - eu - - custom - example: us - type: string - x-enum-varnames: - - US - - EU - - CUSTOM - ConfluentAccountResourceAttributes: - description: Attributes object for updating a Confluent resource. + TwilioEventsLogsIntegrationDataflowRequest: + description: The Twilio events logs dataflow. properties: - enable_custom_metrics: - default: false - description: >- - Enable the `custom.consumer_lag_offset` metric, which contains extra - metric tags. - example: false + enabled: + description: Whether the Twilio dataflow is enabled. + example: true type: boolean - id: - description: The ID associated with a Confluent resource. - example: resource-id-123 - type: string - resource_type: - description: >- - The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type type: object - FastlyService: - description: The schema representation of a Fastly service. + TwilioMessagesLogsIntegrationDataflowRequest: + description: The Twilio messages logs dataflow. properties: - id: - description: The ID of the Fastly service - example: 6abc7de6893AbcDe9fghIj - type: string - tags: - description: A list of tags for the Fastly service. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - id + enabled: + description: Whether the Twilio dataflow is enabled. + example: true + type: boolean type: object AWSAuthConfigKeys: - description: >- - AWS Authentication config to integrate your account using an access key - pair. + description: AWS Authentication config to integrate your account using an access key pair. properties: access_key_id: description: AWS Access Key ID. @@ -4013,6 +18453,7 @@ components: example: - us-east-1 items: + description: An AWS region to include in metrics collection. example: us-east-1 type: string type: array @@ -4020,95 +18461,375 @@ components: - include_only type: object AWSLambdaForwarderConfig: - description: >- - Log Autosubscription configuration for Datadog Forwarder Lambda - functions. Automatically set up triggers for existing - - and new logs for some services, ensuring no logs from new resources are - missed and saving time spent on manual configuration. + description: |- + Log Autosubscription configuration for Datadog Forwarder Lambda functions. + Automatically set up triggers for existing and new logs for some services, + ensuring no logs from new resources are missed and saving time spent on manual configuration. properties: lambdas: - description: >- - List of Datadog Lambda Log Forwarder ARNs in your AWS account. - Defaults to `[]`. + description: List of Datadog Lambda Log Forwarder ARNs in your AWS account. Defaults to `[]`. items: - example: >- - arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder + description: The ARN of a Datadog Lambda Log Forwarder function. + example: arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder type: string type: array log_source_config: $ref: '#/components/schemas/AWSLambdaForwarderConfigLogSourceConfig' sources: - description: >- - List of service IDs set to enable automatic log collection. Discover - the list of available services with the - + description: |- + List of service IDs set to enable automatic log collection. + Discover the list of available services with the [Get list of AWS log ready services](https://docs.datadoghq.com/api/latest/aws-logs-integration/#get-list-of-aws-log-ready-services) endpoint. items: + description: An AWS service ID for which automatic log collection is enabled. example: s3 type: string type: array type: object - AWSNamespaceFilters: - description: AWS Metrics namespace filters. Defaults to `exclude_only`. - oneOf: - - $ref: '#/components/schemas/AWSNamespaceFiltersExcludeOnly' - - $ref: '#/components/schemas/AWSNamespaceFiltersIncludeOnly' - AWSNamespaceTagFilter: - description: >- - AWS Metrics Collection tag filters list. Defaults to `[]`. - - The array of custom AWS resource tags (in the form `key:value`) defines - a filter that Datadog uses when collecting metrics from a specified - service. - - Wildcards, such as `?` (match a single character) and `*` (match - multiple characters), and exclusion using `!` before the tag are - supported. - - For EC2, only hosts that match one of the defined tags will be imported - into Datadog. The rest will be ignored. - - For example, `env:production,instance-type:c?.*,!region:us-east-1`. + AWSNamespaceFilters: + description: AWS Metrics namespace filters. Defaults to `exclude_only`. + properties: + exclude_only: + description: |- + Exclude only these namespaces from metrics collection. + Defaults to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. + `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default + to reduce your AWS CloudWatch costs from `GetMetricData` API calls. + example: + - AWS/SQS + - AWS/ElasticMapReduce + - AWS/Usage + items: + description: An AWS CloudWatch namespace to exclude from metrics collection. + example: AWS/SQS + type: string + type: array + include_only: + description: Include only these namespaces. + example: + - AWS/EC2 + items: + description: An AWS CloudWatch namespace to include in metrics collection. + example: AWS/EC2 + type: string + type: array + required: + - exclude_only + - include_only + type: object + AWSNamespaceTagFilter: + description: |- + AWS Metrics Collection tag filters list. Defaults to `[]`. + The array of custom AWS resource tags (in the form `key:value`) defines a filter that Datadog uses + when collecting metrics from a specified service. + Wildcards, such as `?` (match a single character) and `*` (match multiple characters), + and exclusion using `!` before the tag are supported. + For EC2, only hosts that match one of the defined tags are imported into Datadog. + The rest are ignored. For example, `env:production,instance-type:c?.*,!region:us-east-1`. + properties: + namespace: + description: The AWS service for which the tag filters defined in `tags` will be applied. + example: AWS/EC2 + type: string + tags: + description: The AWS resource tags to filter on for the service specified by `namespace`. + items: + description: Tag in the form `key:value`. + example: datadog:true + type: string + nullable: true + type: array + type: object + XRayServicesList: + description: AWS X-Ray services to collect traces from. Defaults to `include_only`. + properties: + include_all: + description: Include all services. + example: false + type: boolean + include_only: + description: Include only these services. + example: + - AWS/AppSync + items: + description: An AWS X-Ray service name to include in traces collection. + example: AWS/AppSync + type: string + type: array + required: + - include_all + - include_only + type: object + nullable: true + AWSMetricNameFilterPreviewFilterMatch: + description: A metric name filter pattern and how many metrics it matched. + properties: + match_count: + description: The number of Datadog metric names matched by this pattern. + example: 1 + format: int64 + type: integer + pattern: + description: The metric name filter pattern. + example: aws.ec2.network_in + type: string + required: + - pattern + - match_count + type: object + AWSMetricNameFilterPreviewMetric: + description: A CloudWatch metric and the Datadog metric names it produces. + properties: + cw_name: + description: The CloudWatch metric name. + example: NetworkIn + type: string + dd_names: + description: The Datadog metric names produced from this CloudWatch metric. + items: + $ref: '#/components/schemas/AWSMetricNameFilterPreviewDDName' + type: array + required: + - cw_name + - dd_names + type: object + AWSMetricNameFiltersIncludeOnly: + description: Include only metric names matching one of these patterns for a single namespace. + properties: + include_only: + description: Include only metric names matching one of these patterns. + example: + - aws.ec2.network_in + items: + description: A metric name pattern to include. + example: aws.ec2.network_in + type: string + type: array + namespace: + description: The AWS CloudWatch namespace to which this metric name filter applies. + example: AWS/EC2 + type: string + required: + - namespace + - include_only + type: object + AWSMetricNameFiltersExcludeOnly: + description: Exclude metric names matching one of these patterns for a single namespace. + properties: + exclude_only: + description: Exclude metric names matching one of these patterns. + example: + - aws.ec2.network_in + items: + description: A metric name pattern to exclude. + example: aws.ec2.network_in + type: string + type: array + namespace: + description: The AWS CloudWatch namespace to which this metric name filter applies. + example: AWS/EC2 + type: string + required: + - namespace + - exclude_only + type: object + AWSEventBridgeSource: + description: An EventBridge source. + properties: + name: + description: The event source name. + example: app-alerts-zyxw3210 + type: string + region: + description: |- + The event source's + [AWS region](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). + example: us-east-1 + type: string + type: object + AWSCcmConfigValidationIssue: + description: A single validation issue found while validating an AWS Cost and Usage Report (CUR) 2.0 configuration. + properties: + code: + $ref: '#/components/schemas/AWSCcmConfigValidationIssueCode' + description: + description: Human-readable description of the validation issue. + example: no CUR 2.0 export named "cost-and-usage-report" found + type: string + required: + - code + - description + type: object + GoogleChatOrganizationRelationshipsDelegatedUserData: + description: Delegated user relationship data. + properties: + id: + description: The ID of the delegated user. + example: 2b3c4d5e-6f78-9012-bcde-f23456789012 + type: string + type: + $ref: '#/components/schemas/GoogleChatDelegatedUserType' + type: object + WebhooksOAuth2ClientCredentialsRelationshipData: + description: Relationship data referencing an OAuth2 client credentials resource. + properties: + id: + description: The ID of the OAuth2 client credentials resource. + example: 596da4af-0563-4097-90ff-07230c3f9db3 + type: string + type: + $ref: '#/components/schemas/WebhooksOAuth2ClientCredentialsType' + type: object + TableResultV2DataAttributesFileMetadataOneOfAccessDetails: + description: Cloud storage access configuration for the reference table data file. + properties: + aws_detail: + $ref: '#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAwsDetail' + azure_detail: + $ref: '#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAzureDetail' + gcp_detail: + $ref: '#/components/schemas/TableResultV2DataAttributesFileMetadataOneOfAccessDetailsGcpDetail' + type: object + TableResultV2DataAttributesFileMetadataCloudStorageErrorType: + description: The type of error that occurred during file processing. This field provides high-level error categories for easier troubleshooting and is only present when there are errors. + enum: + - TABLE_SCHEMA_ERROR + - FILE_FORMAT_ERROR + - CONFIGURATION_ERROR + - QUOTA_EXCEEDED + - CONFLICT_ERROR + - VALIDATION_ERROR + - STATE_ERROR + - OPERATION_ERROR + - SYSTEM_ERROR + type: string + x-enum-varnames: + - TABLE_SCHEMA_ERROR + - FILE_FORMAT_ERROR + - CONFIGURATION_ERROR + - QUOTA_EXCEEDED + - CONFLICT_ERROR + - VALIDATION_ERROR + - STATE_ERROR + - OPERATION_ERROR + - SYSTEM_ERROR + TableResultV2DataAttributesSchemaFieldsItems: + description: A single field (column) in the reference table schema to be returned. + properties: + name: + description: The field name. + example: field_1 + type: string + type: + $ref: '#/components/schemas/ReferenceTableSchemaFieldType' + required: + - name + - type + type: object + CreateTableRequestDataAttributesFileMetadataCloudStorage: + additionalProperties: false + description: Cloud storage file metadata for create requests. Both access_details and sync_enabled are required. + properties: + access_details: + $ref: '#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetails' + sync_enabled: + description: Whether this table is synced automatically. + example: false + type: boolean + required: + - access_details + - sync_enabled + title: CloudFileMetadataV2 + type: object + CreateTableRequestDataAttributesFileMetadataLocalFile: + additionalProperties: false + description: Local file metadata for create requests using the upload ID. + properties: + upload_id: + description: The upload ID. + example: 00000000-0000-0000-0000-000000000000 + type: string + required: + - upload_id + title: LocalFileMetadataV2 + type: object + CreateTableRequestDataAttributesSchemaFieldsItems: + description: A single field (column) in the reference table schema to be created. + properties: + name: + description: The field name. + example: field_1 + type: string + type: + $ref: '#/components/schemas/ReferenceTableSchemaFieldType' + required: + - name + - type + type: object + PatchTableRequestDataAttributesFileMetadataCloudStorage: + additionalProperties: false + description: Cloud storage file metadata for patch requests. Allows partial updates of access_details and sync_enabled. properties: - namespace: - description: >- - The AWS service for which the tag filters defined in `tags` will be - applied. - example: AWS/EC2 + access_details: + $ref: '#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetails' + sync_enabled: + description: Whether this table is synced automatically. + example: false + type: boolean + title: CloudFileMetadataV2 + type: object + PatchTableRequestDataAttributesFileMetadataLocalFile: + additionalProperties: false + description: Local file metadata for patch requests using upload ID. + properties: + upload_id: + description: The upload ID. + example: 00000000-0000-0000-0000-000000000000 type: string - tags: - description: >- - The AWS resource tags to filter on for the service specified by - `namespace`. - items: - description: Tag in the form `key:value`. - example: datadog:true - type: string - nullable: true - type: array + required: + - upload_id + title: LocalFileMetadataV2 type: object - XRayServicesList: - description: AWS X-Ray services to collect traces from. Defaults to `include_only`. - oneOf: - - $ref: '#/components/schemas/XRayServicesIncludeAll' - - $ref: '#/components/schemas/XRayServicesIncludeOnly' - GCPMonitoredResourceConfigType: - description: >- - The GCP monitored resource type. Only a subset of resource types are - supported. + PatchTableRequestDataAttributesSchemaFieldsItems: + description: A single field (column) in the reference table schema to be updated. Schema fields cannot be deleted or renamed. + properties: + name: + description: The field name. + example: field_1 + type: string + type: + $ref: '#/components/schemas/ReferenceTableSchemaFieldType' + required: + - name + - type + type: object + IntegrationAccountBasicAuthType: + default: basic + description: The authentication method type. enum: - - cloud_function - - cloud_run_revision - - gce_instance - example: gce_instance + - basic + example: basic type: string x-enum-varnames: - - CLOUD_FUNCTION - - CLOUD_RUN_REVISION - - GCE_INSTANCE + - BASIC + IntegrationAccountDataflowStatus: + description: Read-only collection status of a dataflow. + properties: + health: + $ref: '#/components/schemas/IntegrationAccountDataflowHealth' + message: + description: Human-readable detail, populated when the dataflow is not healthy. + example: '' + type: string + updated_at: + description: Time the status was last computed. + example: '2026-06-25T08:30:50Z' + format: date-time + type: string + readOnly: true + type: object AWSLambdaForwarderConfigLogSourceConfig: description: Log source configuration. properties: @@ -4119,27 +18840,24 @@ components: type: array type: object AWSNamespaceFiltersExcludeOnly: - description: >- - Exclude only these namespaces from metrics collection. Defaults to - `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. - - `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by - default to reduce your AWS CloudWatch costs from `GetMetricData` API - calls. + description: |- + Exclude only these namespaces from metrics collection. + Defaults to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. + `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default + to reduce your AWS CloudWatch costs from `GetMetricData` API calls. properties: exclude_only: - description: >- - Exclude only these namespaces from metrics collection. Defaults to - `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. - - `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by - default to reduce your AWS CloudWatch costs from `GetMetricData` API - calls. + description: |- + Exclude only these namespaces from metrics collection. + Defaults to `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. + `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by default + to reduce your AWS CloudWatch costs from `GetMetricData` API calls. example: - AWS/SQS - AWS/ElasticMapReduce - AWS/Usage items: + description: An AWS CloudWatch namespace to exclude from metrics collection. example: AWS/SQS type: string type: array @@ -4154,6 +18872,7 @@ components: example: - AWS/EC2 items: + description: An AWS CloudWatch namespace to include in metrics collection. example: AWS/EC2 type: string type: array @@ -4179,38 +18898,193 @@ components: example: - AWS/AppSync items: + description: An AWS X-Ray service name to include in traces collection. example: AWS/AppSync type: string type: array required: - include_only type: object + AWSMetricNameFilterPreviewDDName: + description: A Datadog metric name and whether it is filtered. + properties: + filtered: + description: Whether this Datadog metric name is filtered out. + example: true + type: boolean + name: + description: The Datadog metric name. + example: aws.ec2.network_in + type: string + required: + - name + - filtered + type: object + AWSCcmConfigValidationIssueCode: + description: Identifies the specific reason a Cost and Usage Report (CUR) 2.0 configuration failed validation. + enum: + - ISSUE_CODE_UNSPECIFIED + - CREDENTIAL_ERROR + - BUCKET_NAME_INVALID_GOVCLOUD + - S3_LIST_PERMISSION_MISSING + - S3_GET_PERMISSION_MISSING + - S3_BUCKET_REGION_MISMATCH + - S3_BUCKET_NOT_ACCESSIBLE + - EXPORT_LIST_PERMISSION_MISSING + - EXPORT_GET_PERMISSION_MISSING + - EXPORT_NOT_FOUND + - EXPORT_STATUS_UNHEALTHY + - TIME_GRANULARITY_INVALID + - FILE_FORMAT_INVALID + - INCLUDE_RESOURCES_DISABLED + - REFRESH_CADENCE_INVALID + - OVERWRITE_MODE_INVALID + - QUERY_STATEMENT_INVALID + example: EXPORT_NOT_FOUND + type: string + x-enum-varnames: + - ISSUE_CODE_UNSPECIFIED + - CREDENTIAL_ERROR + - BUCKET_NAME_INVALID_GOVCLOUD + - S3_LIST_PERMISSION_MISSING + - S3_GET_PERMISSION_MISSING + - S3_BUCKET_REGION_MISMATCH + - S3_BUCKET_NOT_ACCESSIBLE + - EXPORT_LIST_PERMISSION_MISSING + - EXPORT_GET_PERMISSION_MISSING + - EXPORT_NOT_FOUND + - EXPORT_STATUS_UNHEALTHY + - TIME_GRANULARITY_INVALID + - FILE_FORMAT_INVALID + - INCLUDE_RESOURCES_DISABLED + - REFRESH_CADENCE_INVALID + - OVERWRITE_MODE_INVALID + - QUERY_STATEMENT_INVALID + TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAwsDetail: + description: Amazon Web Services S3 storage access configuration. + properties: + aws_account_id: + description: AWS account ID where the S3 bucket is located. + example: '123456789000' + type: string + aws_bucket_name: + description: S3 bucket containing the CSV file. + example: example-data-bucket + type: string + file_path: + description: The relative file path from the S3 bucket root to the CSV file. + example: reference-tables/users.csv + type: string + type: object + x-oneOf-parent: + - AwsDetail + TableResultV2DataAttributesFileMetadataOneOfAccessDetailsAzureDetail: + description: Azure Blob Storage access configuration. + properties: + azure_client_id: + description: Azure service principal (application) client ID with permissions to read from the container. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + azure_container_name: + description: Azure Blob Storage container containing the CSV file. + example: reference-data + type: string + azure_storage_account_name: + description: Azure storage account where the container is located. + example: examplestorageaccount + type: string + azure_tenant_id: + description: Azure Active Directory tenant ID. + example: cccccccc-4444-5555-6666-dddddddddddd + type: string + file_path: + description: The relative file path from the Azure container root to the CSV file. + example: tables/users.csv + type: string + type: object + x-oneOf-parent: + - AzureDetail + TableResultV2DataAttributesFileMetadataOneOfAccessDetailsGcpDetail: + description: Google Cloud Platform storage access configuration. + properties: + file_path: + description: The relative file path from the GCS bucket root to the CSV file. + example: data/reference_tables/users.csv + type: string + gcp_bucket_name: + description: GCP bucket containing the CSV file. + example: example-data-bucket + type: string + gcp_project_id: + description: GCP project ID where the bucket is located. + example: example-gcp-project-12345 + type: string + gcp_service_account_email: + description: Service account email with read permissions for the GCS bucket. + example: example-service@example-gcp-project-12345.iam.gserviceaccount.com + type: string + type: object + x-oneOf-parent: + - GcpDetail + ReferenceTableSchemaFieldType: + description: The field type for reference table schema fields. + enum: + - STRING + - INT32 + example: STRING + type: string + x-enum-varnames: + - STRING + - INT32 + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetails: + description: Cloud storage access configuration for the reference table data file. + properties: + aws_detail: + $ref: '#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail' + azure_detail: + $ref: '#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail' + gcp_detail: + $ref: '#/components/schemas/CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail' + type: object + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetails: + description: Cloud storage access configuration for the reference table data file. + properties: + aws_detail: + $ref: '#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail' + azure_detail: + $ref: '#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail' + gcp_detail: + $ref: '#/components/schemas/PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail' + type: object + IntegrationAccountDataflowHealth: + description: Collection health of a single dataflow. + enum: + - DATAFLOW_HEALTH_OK + - DATAFLOW_HEALTH_BROKEN + - DATAFLOW_HEALTH_UNKNOWN + example: DATAFLOW_HEALTH_OK + type: string + x-enum-varnames: + - OK + - BROKEN + - UNKNOWN AWSLogSourceTagFilter: - description: >- + description: |- AWS log source tag filter list. Defaults to `[]`. - - Array of log source to AWS resource tag mappings. Each mapping contains - a log source and its associated AWS resource tags (in `key:value` - format) used to filter logs submitted to Datadog. - - Tag filters are applied for tags on the AWS resource emitting logs; tags - associated with the log storage entity (such as a CloudWatch Log Group - or S3 Bucket) are not considered. - - For more information on resource tag filter syntax, [see AWS resource - exclusion](https://docs.datadoghq.com/account_management/billing/aws/#aws-resource-exclusion) + Array of log source to AWS resource tag mappings. Each mapping contains a log source and its + associated AWS resource tags (in `key:value` format) used to filter logs submitted to Datadog. + Tag filters are applied for tags on the AWS resource emitting logs; tags associated with the + log storage entity (such as a CloudWatch Log Group or S3 Bucket) are not considered. + For more information on resource tag filter syntax, + [see AWS resource exclusion](https://docs.datadoghq.com/account_management/billing/aws/#aws-resource-exclusion) in the AWS integration billing page. properties: source: - description: >- - The AWS log source to which the tag filters defined in `tags` are - applied. + description: The AWS log source to which the tag filters defined in `tags` are applied. example: s3 type: string tags: - description: >- - The AWS resource tags to filter on for the log source specified by - `source`. + description: The AWS resource tags to filter on for the log source specified by `source`. items: description: Tag in the form `key:value`. example: env:prod @@ -4218,43 +19092,196 @@ components: nullable: true type: array type: object + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail: + description: Amazon Web Services S3 storage access configuration. + properties: + aws_account_id: + description: AWS account ID where the S3 bucket is located. + example: '123456789000' + type: string + aws_bucket_name: + description: S3 bucket containing the CSV file. + example: example-data-bucket + type: string + file_path: + description: The relative file path from the S3 bucket root to the CSV file. + example: reference-tables/users.csv + type: string + required: + - aws_account_id + - aws_bucket_name + - file_path + type: object + x-oneOf-parent: + - AwsDetail + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail: + description: Azure Blob Storage access configuration. + properties: + azure_client_id: + description: Azure service principal (application) client ID with permissions to read from the container. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + azure_container_name: + description: Azure Blob Storage container containing the CSV file. + example: reference-data + type: string + azure_storage_account_name: + description: Azure storage account where the container is located. + example: examplestorageaccount + type: string + azure_tenant_id: + description: Azure Active Directory tenant ID. + example: cccccccc-4444-5555-6666-dddddddddddd + type: string + file_path: + description: The relative file path from the Azure container root to the CSV file. + example: tables/users.csv + type: string + required: + - azure_client_id + - azure_container_name + - azure_storage_account_name + - azure_tenant_id + - file_path + type: object + x-oneOf-parent: + - AzureDetail + CreateTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail: + description: Google Cloud Platform storage access configuration. + properties: + file_path: + description: The relative file path from the GCS bucket root to the CSV file. + example: data/reference_tables/users.csv + type: string + gcp_bucket_name: + description: GCP bucket containing the CSV file. + example: example-data-bucket + type: string + gcp_project_id: + description: GCP project ID where the bucket is located. + example: example-gcp-project-12345 + type: string + gcp_service_account_email: + description: Service account email with read permissions for the GCS bucket. + example: example-service@example-gcp-project-12345.iam.gserviceaccount.com + type: string + required: + - file_path + - gcp_bucket_name + - gcp_project_id + - gcp_service_account_email + type: object + x-oneOf-parent: + - GcpDetail + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAwsDetail: + description: Amazon Web Services S3 storage access configuration. + properties: + aws_account_id: + description: AWS account ID where the S3 bucket is located. + example: '123456789000' + type: string + aws_bucket_name: + description: S3 bucket containing the CSV file. + example: example-data-bucket + type: string + file_path: + description: The relative file path from the S3 bucket root to the CSV file. + example: reference-tables/users.csv + type: string + type: object + x-oneOf-parent: + - AwsDetail + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsAzureDetail: + description: Azure Blob Storage access configuration. + properties: + azure_client_id: + description: Azure service principal (application) client ID with permissions to read from the container. + example: aaaaaaaa-1111-2222-3333-bbbbbbbbbbbb + type: string + azure_container_name: + description: Azure Blob Storage container containing the CSV file. + example: reference-data + type: string + azure_storage_account_name: + description: Azure storage account where the container is located. + example: examplestorageaccount + type: string + azure_tenant_id: + description: Azure Active Directory tenant ID. + example: cccccccc-4444-5555-6666-dddddddddddd + type: string + file_path: + description: The relative file path from the Azure container root to the CSV file. + example: tables/users.csv + type: string + type: object + x-oneOf-parent: + - AzureDetail + PatchTableRequestDataAttributesFileMetadataOneOfAccessDetailsGcpDetail: + description: Google Cloud Platform storage access configuration. + properties: + file_path: + description: The relative file path from the GCS bucket root to the CSV file. + example: data/reference_tables/users.csv + type: string + gcp_bucket_name: + description: GCP bucket containing the CSV file. + example: example-data-bucket + type: string + gcp_project_id: + description: GCP project ID where the bucket is located. + example: example-gcp-project-12345 + type: string + gcp_service_account_email: + description: Service account email with read permissions for the GCS bucket. + example: example-service@example-gcp-project-12345.iam.gserviceaccount.com + type: string + type: object + x-oneOf-parent: + - GcpDetail responses: - ForbiddenResponse: + TooManyRequestsResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - TooManyRequestsResponse: + description: Too many requests + NotAuthorizedResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests + description: Not Authorized BadRequestResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Bad Request - ConflictResponse: + ForbiddenResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Conflict + description: Forbidden NotFoundResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Not Found - NotAuthorizedResponse: + UnprocessableEntityResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: The server cannot process the request because it contains invalid data. + ConflictResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized + description: Conflict UnauthorizedResponse: content: application/json: @@ -4268,13 +19295,33 @@ components: $ref: '#/components/schemas/APIErrorResponse' description: Failed Precondition parameters: + PersonaMappingID: + description: The ID of the persona mapping + example: c5c758c6-18c2-4484-ae3f-46b84128404a + in: path + name: persona_mapping_id + required: true + schema: + type: string + EntityIntegrationConfigID: + description: The identifier of the integration whose configuration is being managed. Supported values are `github`, `jira`, and `pagerduty`. + in: path + name: integration_id + required: true + schema: + example: github + type: string + IntegrationAccountIdParameter: + description: Unique identifier of the integration account. + in: path + name: account_id + required: true + schema: + type: string AWSAccountConfigIDPathParameter: - description: >- - Unique Datadog ID of the AWS Account Integration Config. To get the - config ID for an account, use the - - [List all AWS - integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) + description: |- + Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the + [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. in: path name: aws_account_config_id @@ -4288,6 +19335,41 @@ components: required: true schema: type: string + GoogleChatOrganizationDomainNamePathParameter: + description: The Google Chat domain name. + in: path + name: domain_name + required: true + schema: + type: string + GoogleChatOrganizationSpaceDisplayNamePathParameter: + description: The Google Chat space display name. + in: path + name: space_display_name + required: true + schema: + type: string + GoogleChatOrganizationBindingIdPathParameter: + description: Your organization binding ID. + in: path + name: organization_binding_id + required: true + schema: + type: string + GoogleChatHandleIdPathParameter: + description: Your organization handle ID. + in: path + name: handle_id + required: true + schema: + type: string + GoogleChatTargetAudienceIdPathParameter: + description: Your target audience ID. + in: path + name: target_audience_id + required: true + schema: + type: string MicrosoftTeamsTenantNamePathParameter: description: Your tenant name. in: path @@ -4330,6 +19412,13 @@ components: required: true schema: type: string + MicrosoftTeamsTenantIDPathParameter: + description: Your tenant id. + in: path + name: tenant_id + required: true + schema: + type: string MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter: description: Your Workflows webhook handle name. in: query @@ -4344,6 +19433,13 @@ components: required: true schema: type: string + OpsgenieAccountIDPathParameter: + description: The UUID of the Opsgenie account. + in: path + name: account_id + required: true + schema: + type: string OpsgenieServiceIDPathParameter: description: The UUID of the service. in: path @@ -4351,6 +19447,50 @@ components: required: true schema: type: string + SalesforceIncidentsTemplateIDPathParameter: + description: The ID of the Salesforce incident template. + in: path + name: incident_template_id + required: true + schema: + type: string + SalesforceIncidentsOrganizationIDPathParameter: + description: The Datadog-assigned ID of the connected Salesforce organization. + in: path + name: salesforce_org_id + required: true + schema: + type: string + SlackUserUuidQueryParameter: + description: The UUID of the Datadog user to list Slack bindings for. + in: query + name: user_uuid + required: true + schema: + format: uuid + type: string + StatuspageUrlSettingIDPathParameter: + description: The UUID of the Statuspage URL setting. + in: path + name: statuspage_url_setting_id + required: true + schema: + type: string + WebhooksAuthMethodInclude: + description: Comma-separated list of relationships to include in the response. + explode: true + in: query + name: include + required: false + schema: + $ref: '#/components/schemas/WebhooksAuthMethodProtocol' + WebhooksAuthMethodIDPathParameter: + description: The UUID of the auth method. + in: path + name: auth_method_id + required: true + schema: + type: string ConfluentAccountID: description: Confluent Account ID. in: path @@ -4379,391 +19519,1786 @@ components: required: true schema: type: string + SlackAccountNamePathParameter: + description: Your Slack account name. + in: path + name: account_name + required: true + schema: + type: string + SlackChannelNamePathParameter: + description: The name of the Slack channel being operated on. + in: path + name: channel_name + required: true + schema: + type: string x-stackQL-resources: + aws_persona_mappings: + id: datadog.integrations.aws_persona_mappings + name: aws_persona_mappings + title: Aws Persona Mappings + methods: + list_awscloud_auth_persona_mappings: + operation: + $ref: '#/paths/~1api~1v2~1cloud_auth~1aws~1persona_mapping/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_awscloud_auth_persona_mapping: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cloud_auth~1aws~1persona_mapping/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_awscloud_auth_persona_mapping: + operation: + $ref: '#/paths/~1api~1v2~1cloud_auth~1aws~1persona_mapping~1{persona_mapping_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_awscloud_auth_persona_mapping: + operation: + $ref: '#/paths/~1api~1v2~1cloud_auth~1aws~1persona_mapping~1{persona_mapping_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_persona_mappings/methods/get_awscloud_auth_persona_mapping' + - $ref: '#/components/x-stackQL-resources/aws_persona_mappings/methods/list_awscloud_auth_persona_mappings' + insert: + - $ref: '#/components/x-stackQL-resources/aws_persona_mappings/methods/create_awscloud_auth_persona_mapping' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/aws_persona_mappings/methods/delete_awscloud_auth_persona_mapping' + replace: [] + entity_integration_configs: + id: datadog.integrations.entity_integration_configs + name: entity_integration_configs + title: Entity Integration Configs + methods: + delete_entity_integration_config: + operation: + $ref: '#/paths/~1api~1v2~1idp~1entity_integrations~1{integration_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_entity_integration_config: + operation: + $ref: '#/paths/~1api~1v2~1idp~1entity_integrations~1{integration_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_entity_integration_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1idp~1entity_integrations~1{integration_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/entity_integration_configs/methods/get_entity_integration_config' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/entity_integration_configs/methods/delete_entity_integration_config' + replace: + - $ref: '#/components/x-stackQL-resources/entity_integration_configs/methods/update_entity_integration_config' + elastic_cloud_accounts: + id: datadog.integrations.elastic_cloud_accounts + name: elastic_cloud_accounts + title: Elastic Cloud Accounts + methods: + list_elastic_cloud_integration_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1elastic-cloud~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_elastic_cloud_integration_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1elastic-cloud~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_elastic_cloud_integration_account: + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1elastic-cloud~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_elastic_cloud_integration_account: + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1elastic-cloud~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_elastic_cloud_integration_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1elastic-cloud~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/elastic_cloud_accounts/methods/get_elastic_cloud_integration_account' + - $ref: '#/components/x-stackQL-resources/elastic_cloud_accounts/methods/list_elastic_cloud_integration_accounts' + insert: + - $ref: '#/components/x-stackQL-resources/elastic_cloud_accounts/methods/create_elastic_cloud_integration_account' + update: + - $ref: '#/components/x-stackQL-resources/elastic_cloud_accounts/methods/update_elastic_cloud_integration_account' + delete: + - $ref: '#/components/x-stackQL-resources/elastic_cloud_accounts/methods/delete_elastic_cloud_integration_account' + replace: [] + twilio_accounts: + id: datadog.integrations.twilio_accounts + name: twilio_accounts + title: Twilio Accounts + methods: + list_twilio_integration_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1twilio~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_twilio_integration_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1twilio~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_twilio_integration_account: + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1twilio~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_twilio_integration_account: + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1twilio~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_twilio_integration_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration-interfaces~1twilio~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/twilio_accounts/methods/get_twilio_integration_account' + - $ref: '#/components/x-stackQL-resources/twilio_accounts/methods/list_twilio_integration_accounts' + insert: + - $ref: '#/components/x-stackQL-resources/twilio_accounts/methods/create_twilio_integration_account' + update: + - $ref: '#/components/x-stackQL-resources/twilio_accounts/methods/update_twilio_integration_account' + delete: + - $ref: '#/components/x-stackQL-resources/twilio_accounts/methods/delete_twilio_integration_account' + replace: [] aws_accounts: id: datadog.integrations.aws_accounts name: aws_accounts title: Aws Accounts methods: - list_awsaccounts: + list_awsaccounts: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_awsaccount: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_awsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_awsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_awsaccount: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + preview_awsmetric_name_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}~1metric_name_filter_preview/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_new_awsexternal_id: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1generate_new_external_id/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_awsccmconfig: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1validate_ccm_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_accounts/methods/get_awsaccount' + - $ref: '#/components/x-stackQL-resources/aws_accounts/methods/list_awsaccounts' + insert: + - $ref: '#/components/x-stackQL-resources/aws_accounts/methods/create_awsaccount' + update: + - $ref: '#/components/x-stackQL-resources/aws_accounts/methods/update_awsaccount' + delete: + - $ref: '#/components/x-stackQL-resources/aws_accounts/methods/delete_awsaccount' + replace: [] + aws_account_ccm_configs: + id: datadog.integrations.aws_account_ccm_configs + name: aws_account_ccm_configs + title: Aws Account Ccm Configs + methods: + delete_awsaccount_ccmconfig: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}~1ccm_config/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_awsaccount_ccmconfig: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}~1ccm_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_awsaccount_ccmconfig: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}~1ccm_config/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_awsaccount_ccmconfig: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}~1ccm_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_account_ccm_configs/methods/get_awsaccount_ccmconfig' + insert: + - $ref: '#/components/x-stackQL-resources/aws_account_ccm_configs/methods/create_awsaccount_ccmconfig' + update: + - $ref: '#/components/x-stackQL-resources/aws_account_ccm_configs/methods/update_awsaccount_ccmconfig' + delete: + - $ref: '#/components/x-stackQL-resources/aws_account_ccm_configs/methods/delete_awsaccount_ccmconfig' + replace: [] + aws_account_metric_name_filter_previews: + id: datadog.integrations.aws_account_metric_name_filter_previews + name: aws_account_metric_name_filter_previews + title: Aws Account Metric Name Filter Previews + methods: + get_awsmetric_name_filter_preview: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}~1metric_name_filter_preview/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_account_metric_name_filter_previews/methods/get_awsmetric_name_filter_preview' + insert: [] + update: [] + delete: [] + replace: [] + aws_namespaces: + id: datadog.integrations.aws_namespaces + name: aws_namespaces + title: Aws Namespaces + methods: + list_awsnamespaces: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1available_namespaces/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_namespaces/methods/list_awsnamespaces' + insert: [] + update: [] + delete: [] + replace: [] + aws_event_bridges: + id: datadog.integrations.aws_event_bridges + name: aws_event_bridges + title: Aws Event Bridges + methods: + delete_awsevent_bridge_source: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1event_bridge/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_awsevent_bridge_sources: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1event_bridge/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_awsevent_bridge_source: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1event_bridge/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_event_bridges/methods/list_awsevent_bridge_sources' + insert: + - $ref: '#/components/x-stackQL-resources/aws_event_bridges/methods/create_awsevent_bridge_source' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/aws_event_bridges/methods/delete_awsevent_bridge_source' + replace: [] + aws_iam_permissions: + id: datadog.integrations.aws_iam_permissions + name: aws_iam_permissions + title: Aws Iam Permissions + methods: + get_awsintegration_iampermissions: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1iam_permissions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_iam_permissions/methods/get_awsintegration_iampermissions' + insert: [] + update: [] + delete: [] + replace: [] + aws_iam_permission_resource_collections: + id: datadog.integrations.aws_iam_permission_resource_collections + name: aws_iam_permission_resource_collections + title: Aws Iam Permission Resource Collections + methods: + get_awsintegration_iampermissions_resource_collection: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1iam_permissions~1resource_collection/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_iam_permission_resource_collections/methods/get_awsintegration_iampermissions_resource_collection' + insert: [] + update: [] + delete: [] + replace: [] + aws_iam_permission_standards: + id: datadog.integrations.aws_iam_permission_standards + name: aws_iam_permission_standards + title: Aws Iam Permission Standards + methods: + get_awsintegration_iampermissions_standard: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1iam_permissions~1standard/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_iam_permission_standards/methods/get_awsintegration_iampermissions_standard' + insert: [] + update: [] + delete: [] + replace: [] + aws_logs_services: + id: datadog.integrations.aws_logs_services + name: aws_logs_services + title: Aws Logs Services + methods: + list_awslogs_services: + operation: + $ref: '#/paths/~1api~1v2~1integration~1aws~1logs~1services/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_logs_services/methods/list_awslogs_services' + insert: [] + update: [] + delete: [] + replace: [] + gcp_accounts: + id: datadog.integrations.gcp_accounts + name: gcp_accounts + title: Gcp Accounts + methods: + list_gcpstsaccounts: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_gcpstsaccount: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_gcpstsaccount: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_gcpstsaccount: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/gcp_accounts/methods/list_gcpstsaccounts' + insert: + - $ref: '#/components/x-stackQL-resources/gcp_accounts/methods/create_gcpstsaccount' + update: + - $ref: '#/components/x-stackQL-resources/gcp_accounts/methods/update_gcpstsaccount' + delete: + - $ref: '#/components/x-stackQL-resources/gcp_accounts/methods/delete_gcpstsaccount' + replace: [] + gcp_sts_delegate: + id: datadog.integrations.gcp_sts_delegate + name: gcp_sts_delegate + title: Gcp Sts Delegate + methods: + get_gcpstsdelegate: + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + make_gcpstsdelegate: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/gcp_sts_delegate/methods/get_gcpstsdelegate' + insert: [] + update: [] + delete: [] + replace: [] + google_chat_organizations: + id: datadog.integrations.google_chat_organizations + name: google_chat_organizations + title: Google Chat Organizations + methods: + list_google_chat_organizations: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + delete_google_chat_organization: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_google_chat_organization: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/google_chat_organizations/methods/get_google_chat_organization' + - $ref: '#/components/x-stackQL-resources/google_chat_organizations/methods/list_google_chat_organizations' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/google_chat_organizations/methods/delete_google_chat_organization' + replace: [] + google_chat_organization_app_named_spaces: + id: datadog.integrations.google_chat_organization_app_named_spaces + name: google_chat_organization_app_named_spaces + title: Google Chat Organization App Named Spaces + methods: + get_space_by_display_name: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1app~1named-spaces~1{domain_name}~1{space_display_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_app_named_spaces/methods/get_space_by_display_name' + insert: [] + update: [] + delete: [] + replace: [] + google_chat_organization_delegated_users: + id: datadog.integrations.google_chat_organization_delegated_users + name: google_chat_organization_delegated_users + title: Google Chat Organization Delegated Users + methods: + delete_google_chat_delegated_user: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1delegated-user/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_google_chat_delegated_user: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1delegated-user/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_delegated_users/methods/get_google_chat_delegated_user' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_delegated_users/methods/delete_google_chat_delegated_user' + replace: [] + google_chat_organization_organization_handles: + id: datadog.integrations.google_chat_organization_organization_handles + name: google_chat_organization_organization_handles + title: Google Chat Organization Organization Handles + methods: + list_organization_handles: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1organization-handles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_organization_handle: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1organization-handles/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_organization_handle: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1organization-handles~1{handle_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_organization_handle: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1organization-handles~1{handle_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_organization_handle: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1organization-handles~1{handle_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_organization_handles/methods/get_organization_handle' + - $ref: '#/components/x-stackQL-resources/google_chat_organization_organization_handles/methods/list_organization_handles' + insert: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_organization_handles/methods/create_organization_handle' + update: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_organization_handles/methods/update_organization_handle' + delete: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_organization_handles/methods/delete_organization_handle' + replace: [] + google_chat_organization_target_audiences: + id: datadog.integrations.google_chat_organization_target_audiences + name: google_chat_organization_target_audiences + title: Google Chat Organization Target Audiences + methods: + list_google_chat_target_audiences: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1target-audiences/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_google_chat_target_audience: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1target-audiences/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_google_chat_target_audience: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1target-audiences~1{target_audience_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_google_chat_target_audience: + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1target-audiences~1{target_audience_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_google_chat_target_audience: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1google-chat~1organizations~1{organization_binding_id}~1target-audiences~1{target_audience_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_target_audiences/methods/get_google_chat_target_audience' + - $ref: '#/components/x-stackQL-resources/google_chat_organization_target_audiences/methods/list_google_chat_target_audiences' + insert: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_target_audiences/methods/create_google_chat_target_audience' + update: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_target_audiences/methods/update_google_chat_target_audience' + delete: + - $ref: '#/components/x-stackQL-resources/google_chat_organization_target_audiences/methods/delete_google_chat_target_audience' + replace: [] + jira_accounts: + id: datadog.integrations.jira_accounts + name: jira_accounts + title: Jira Accounts + methods: + list_jira_accounts: + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + delete_jira_account: + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/jira_accounts/methods/list_jira_accounts' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/jira_accounts/methods/delete_jira_account' + replace: [] + jira_issue_templates: + id: datadog.integrations.jira_issue_templates + name: jira_issue_templates + title: Jira Issue Templates + methods: + list_jira_issue_templates: + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1issue-templates/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_jira_issue_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1issue-templates/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_jira_issue_template: + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1issue-templates~1{issue_template_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_jira_issue_template: + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1issue-templates~1{issue_template_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_jira_issue_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1jira~1issue-templates~1{issue_template_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/jira_issue_templates/methods/get_jira_issue_template' + - $ref: '#/components/x-stackQL-resources/jira_issue_templates/methods/list_jira_issue_templates' + insert: + - $ref: '#/components/x-stackQL-resources/jira_issue_templates/methods/create_jira_issue_template' + update: + - $ref: '#/components/x-stackQL-resources/jira_issue_templates/methods/update_jira_issue_template' + delete: + - $ref: '#/components/x-stackQL-resources/jira_issue_templates/methods/delete_jira_issue_template' + replace: [] + ms_teams_channels: + id: datadog.integrations.ms_teams_channels + name: ms_teams_channels + title: Ms Teams Channels + methods: + get_channel_by_name: + operation: + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1channel~1{tenant_name}~1{team_name}~1{channel_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ms_teams_channels/methods/get_channel_by_name' + insert: [] + update: [] + delete: [] + replace: [] + ms_teams_tenant_based_handles: + id: datadog.integrations.ms_teams_tenant_based_handles + name: ms_teams_tenant_based_handles + title: Ms Teams Tenant Based Handles + methods: + list_tenant_based_handles: + operation: + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_tenant_based_handle: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_tenant_based_handle: + operation: + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_tenant_based_handle: operation: - $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts/get' + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_awsaccount: + request: + nativeCasing: camel + update_tenant_based_handle: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1integration~1aws~1accounts/post' + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/patch' response: mediaType: application/json openAPIDocKey: '200' - delete_awsaccount: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/get_tenant_based_handle' + - $ref: '#/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/list_tenant_based_handles' + insert: + - $ref: '#/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/create_tenant_based_handle' + update: + - $ref: '#/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/update_tenant_based_handle' + delete: + - $ref: '#/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/delete_tenant_based_handle' + replace: [] + ms_team_user_bindings: + id: datadog.integrations.ms_team_user_bindings + name: ms_team_user_bindings + title: Ms Team User Bindings + methods: + delete_msteams_user_binding: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/delete + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1user-binding~1{tenant_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_awsaccount: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/ms_team_user_bindings/methods/delete_msteams_user_binding' + replace: [] + ms_teams_workflows_webhook_handles: + id: datadog.integrations.ms_teams_workflows_webhook_handles + name: ms_teams_workflows_webhook_handles + title: Ms Teams Workflows Webhook Handles + methods: + list_workflows_webhook_handles: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/get + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_awsaccount: + request: + nativeCasing: camel + create_workflows_webhook_handle: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_workflows_webhook_handle: + operation: + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_workflows_webhook_handle: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1aws~1accounts~1{aws_account_config_id}/patch + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/get' response: mediaType: application/json openAPIDocKey: '200' - create_new_awsexternal_id: + objectKey: $.data + request: + nativeCasing: camel + update_workflows_webhook_handle: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1integration~1aws~1generate_new_external_id/post' + $ref: '#/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_accounts/methods/get_awsaccount - - $ref: >- - #/components/x-stackQL-resources/aws_accounts/methods/list_awsaccounts + - $ref: '#/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/get_workflows_webhook_handle' + - $ref: '#/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/list_workflows_webhook_handles' insert: - - $ref: >- - #/components/x-stackQL-resources/aws_accounts/methods/create_awsaccount + - $ref: '#/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/create_workflows_webhook_handle' update: - - $ref: >- - #/components/x-stackQL-resources/aws_accounts/methods/update_awsaccount + - $ref: '#/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/update_workflows_webhook_handle' delete: - - $ref: >- - #/components/x-stackQL-resources/aws_accounts/methods/delete_awsaccount + - $ref: '#/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/delete_workflows_webhook_handle' replace: [] - aws_namespaces: - id: datadog.integrations.aws_namespaces - name: aws_namespaces - title: Aws Namespaces + oci_products: + id: datadog.integrations.oci_products + name: oci_products + title: Oci Products methods: - list_awsnamespaces: + list_tenancy_products: operation: - $ref: '#/paths/~1api~1v2~1integration~1aws~1available_namespaces/get' + $ref: '#/paths/~1api~1v2~1integration~1oci~1products/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_namespaces/methods/list_awsnamespaces + - $ref: '#/components/x-stackQL-resources/oci_products/methods/list_tenancy_products' insert: [] update: [] delete: [] replace: [] - aws_iam_permissions: - id: datadog.integrations.aws_iam_permissions - name: aws_iam_permissions - title: Aws Iam Permissions + oci_tenancies: + id: datadog.integrations.oci_tenancies + name: oci_tenancies + title: Oci Tenancies methods: - get_awsintegration_iampermissions: + get_tenancy_configs: operation: - $ref: '#/paths/~1api~1v2~1integration~1aws~1iam_permissions/get' + $ref: '#/paths/~1api~1v2~1integration~1oci~1tenancies/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_tenancy_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1oci~1tenancies/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_tenancy_config: + operation: + $ref: '#/paths/~1api~1v2~1integration~1oci~1tenancies~1{tenancy_ocid}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_tenancy_config: + operation: + $ref: '#/paths/~1api~1v2~1integration~1oci~1tenancies~1{tenancy_ocid}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + update_tenancy_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1oci~1tenancies~1{tenancy_ocid}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_iam_permissions/methods/get_awsintegration_iampermissions - insert: [] - update: [] - delete: [] + - $ref: '#/components/x-stackQL-resources/oci_tenancies/methods/get_tenancy_config' + - $ref: '#/components/x-stackQL-resources/oci_tenancies/methods/get_tenancy_configs' + insert: + - $ref: '#/components/x-stackQL-resources/oci_tenancies/methods/create_tenancy_config' + update: + - $ref: '#/components/x-stackQL-resources/oci_tenancies/methods/update_tenancy_config' + delete: + - $ref: '#/components/x-stackQL-resources/oci_tenancies/methods/delete_tenancy_config' replace: [] - aws_logs_services: - id: datadog.integrations.aws_logs_services - name: aws_logs_services - title: Aws Logs Services + opsgenie_accounts: + id: datadog.integrations.opsgenie_accounts + name: opsgenie_accounts + title: Opsgenie Accounts methods: - list_awslogs_services: + list_opsgenie_accounts: operation: - $ref: '#/paths/~1api~1v2~1integration~1aws~1logs~1services/get' + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1accounts/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + create_opsgenie_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_opsgenie_account: + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_opsgenie_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_logs_services/methods/list_awslogs_services - insert: [] - update: [] - delete: [] + - $ref: '#/components/x-stackQL-resources/opsgenie_accounts/methods/list_opsgenie_accounts' + insert: + - $ref: '#/components/x-stackQL-resources/opsgenie_accounts/methods/create_opsgenie_account' + update: + - $ref: '#/components/x-stackQL-resources/opsgenie_accounts/methods/update_opsgenie_account' + delete: + - $ref: '#/components/x-stackQL-resources/opsgenie_accounts/methods/delete_opsgenie_account' replace: [] - gcp_accounts: - id: datadog.integrations.gcp_accounts - name: gcp_accounts - title: Gcp Accounts + opsgenie_services: + id: datadog.integrations.opsgenie_services + name: opsgenie_services + title: Opsgenie Services methods: - list_gcpstsaccounts: + list_opsgenie_services: operation: - $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/get' + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_gcpstsaccount: + request: + nativeCasing: camel + create_opsgenie_service: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts/post' + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/post' response: mediaType: application/json openAPIDocKey: '201' - delete_gcpstsaccount: + request: + nativeCasing: camel + delete_opsgenie_service: operation: - $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/delete' + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - update_gcpstsaccount: + request: + nativeCasing: camel + get_opsgenie_service: operation: - $ref: '#/paths/~1api~1v2~1integration~1gcp~1accounts~1{account_id}/patch' + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_opsgenie_service: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/opsgenie_services/methods/get_opsgenie_service' + - $ref: '#/components/x-stackQL-resources/opsgenie_services/methods/list_opsgenie_services' + insert: + - $ref: '#/components/x-stackQL-resources/opsgenie_services/methods/create_opsgenie_service' + update: + - $ref: '#/components/x-stackQL-resources/opsgenie_services/methods/update_opsgenie_service' + delete: + - $ref: '#/components/x-stackQL-resources/opsgenie_services/methods/delete_opsgenie_service' + replace: [] + salesforce_incident_incident_templates: + id: datadog.integrations.salesforce_incident_incident_templates + name: salesforce_incident_incident_templates + title: Salesforce Incident Incident Templates + methods: + get_incident_templates: + operation: + $ref: '#/paths/~1api~1v2~1integration~1salesforce-incidents~1incident-templates/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1salesforce-incidents~1incident-templates/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_template: + operation: + $ref: '#/paths/~1api~1v2~1integration~1salesforce-incidents~1incident-templates~1{incident_template_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_incident_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1salesforce-incidents~1incident-templates~1{incident_template_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/gcp_accounts/methods/list_gcpstsaccounts + - $ref: '#/components/x-stackQL-resources/salesforce_incident_incident_templates/methods/get_incident_templates' insert: - - $ref: >- - #/components/x-stackQL-resources/gcp_accounts/methods/create_gcpstsaccount + - $ref: '#/components/x-stackQL-resources/salesforce_incident_incident_templates/methods/create_incident_template' update: - - $ref: >- - #/components/x-stackQL-resources/gcp_accounts/methods/update_gcpstsaccount + - $ref: '#/components/x-stackQL-resources/salesforce_incident_incident_templates/methods/update_incident_template' delete: - - $ref: >- - #/components/x-stackQL-resources/gcp_accounts/methods/delete_gcpstsaccount + - $ref: '#/components/x-stackQL-resources/salesforce_incident_incident_templates/methods/delete_incident_template' replace: [] - gcp_sts_delegate: - id: datadog.integrations.gcp_sts_delegate - name: gcp_sts_delegate - title: Gcp Sts Delegate + salesforce_incident_organizations: + id: datadog.integrations.salesforce_incident_organizations + name: salesforce_incident_organizations + title: Salesforce Incident Organizations methods: - get_gcpstsdelegate: + get_salesforce_organizations: operation: - $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/get' + $ref: '#/paths/~1api~1v2~1integration~1salesforce-incidents~1organizations/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - make_gcpstsdelegate: + request: + nativeCasing: camel + delete_salesforce_organization: operation: - $ref: '#/paths/~1api~1v2~1integration~1gcp~1sts_delegate/post' + $ref: '#/paths/~1api~1v2~1integration~1salesforce-incidents~1organizations~1{salesforce_org_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/salesforce_incident_organizations/methods/get_salesforce_organizations' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/salesforce_incident_organizations/methods/delete_salesforce_organization' + replace: [] + servicenow_assignment_groups: + id: datadog.integrations.servicenow_assignment_groups + name: servicenow_assignment_groups + title: Servicenow Assignment Groups + methods: + list_service_now_assignment_groups: + operation: + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1assignment_groups~1{instance_id}/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/gcp_sts_delegate/methods/get_gcpstsdelegate + - $ref: '#/components/x-stackQL-resources/servicenow_assignment_groups/methods/list_service_now_assignment_groups' insert: [] update: [] delete: [] replace: [] - ms_teams_channels: - id: datadog.integrations.ms_teams_channels - name: ms_teams_channels - title: Ms Teams Channels + servicenow_business_services: + id: datadog.integrations.servicenow_business_services + name: servicenow_business_services + title: Servicenow Business Services methods: - get_channel_by_name: + list_service_now_business_services: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1channel~1{tenant_name}~1{team_name}~1{channel_name}/get + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1business_services~1{instance_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_channels/methods/get_channel_by_name + - $ref: '#/components/x-stackQL-resources/servicenow_business_services/methods/list_service_now_business_services' insert: [] update: [] delete: [] replace: [] - ms_teams_tenant_based_handles: - id: datadog.integrations.ms_teams_tenant_based_handles - name: ms_teams_tenant_based_handles - title: Ms Teams Tenant Based Handles + servicenow_handles: + id: datadog.integrations.servicenow_handles + name: servicenow_handles + title: Servicenow Handles methods: - list_tenant_based_handles: + list_service_now_templates: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles/get + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1handles/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_tenant_based_handle: + request: + nativeCasing: camel + create_service_now_template: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles/post + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1handles/post' response: mediaType: application/json openAPIDocKey: '201' - delete_tenant_based_handle: + request: + nativeCasing: camel + delete_service_now_template: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/delete + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1handles~1{template_id}/delete' response: mediaType: application/json - openAPIDocKey: '204' - get_tenant_based_handle: + openAPIDocKey: '200' + request: + nativeCasing: camel + get_service_now_template: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/get + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1handles~1{template_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_tenant_based_handle: + request: + nativeCasing: camel + update_service_now_template: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1tenant-based-handles~1{handle_id}/patch + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1handles~1{template_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/get_tenant_based_handle - - $ref: >- - #/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/list_tenant_based_handles + - $ref: '#/components/x-stackQL-resources/servicenow_handles/methods/get_service_now_template' + - $ref: '#/components/x-stackQL-resources/servicenow_handles/methods/list_service_now_templates' insert: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/create_tenant_based_handle - update: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/update_tenant_based_handle + - $ref: '#/components/x-stackQL-resources/servicenow_handles/methods/create_service_now_template' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_tenant_based_handles/methods/delete_tenant_based_handle + - $ref: '#/components/x-stackQL-resources/servicenow_handles/methods/delete_service_now_template' + replace: + - $ref: '#/components/x-stackQL-resources/servicenow_handles/methods/update_service_now_template' + servicenow_instances: + id: datadog.integrations.servicenow_instances + name: servicenow_instances + title: Servicenow Instances + methods: + list_service_now_instances: + operation: + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1instances/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/servicenow_instances/methods/list_service_now_instances' + insert: [] + update: [] + delete: [] replace: [] - ms_teams_workflows_webhook_handles: - id: datadog.integrations.ms_teams_workflows_webhook_handles - name: ms_teams_workflows_webhook_handles - title: Ms Teams Workflows Webhook Handles + servicenow_users: + id: datadog.integrations.servicenow_users + name: servicenow_users + title: Servicenow Users methods: - list_workflows_webhook_handles: + list_service_now_users: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles/get + $ref: '#/paths/~1api~1v2~1integration~1servicenow~1users~1{instance_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_workflows_webhook_handle: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/servicenow_users/methods/list_service_now_users' + insert: [] + update: [] + delete: [] + replace: [] + slack_user_bindings: + id: datadog.integrations.slack_user_bindings + name: slack_user_bindings + title: Slack User Bindings + methods: + list_slack_user_bindings: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles/post + $ref: '#/paths/~1api~1v2~1integration~1slack~1user-bindings/get' response: mediaType: application/json - openAPIDocKey: '201' - delete_workflows_webhook_handle: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/slack_user_bindings/methods/list_slack_user_bindings' + insert: [] + update: [] + delete: [] + replace: [] + statuspage_accounts: + id: datadog.integrations.statuspage_accounts + name: statuspage_accounts + title: Statuspage Accounts + methods: + delete_statuspage_account: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/delete + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1account/delete' response: mediaType: application/json openAPIDocKey: '204' - get_workflows_webhook_handle: + request: + nativeCasing: camel + get_statuspage_account: + operation: + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1account/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_statuspage_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1account/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_statuspage_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1account/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/statuspage_accounts/methods/get_statuspage_account' + insert: + - $ref: '#/components/x-stackQL-resources/statuspage_accounts/methods/create_statuspage_account' + update: + - $ref: '#/components/x-stackQL-resources/statuspage_accounts/methods/update_statuspage_account' + delete: + - $ref: '#/components/x-stackQL-resources/statuspage_accounts/methods/delete_statuspage_account' + replace: [] + statuspage_url_settings: + id: datadog.integrations.statuspage_url_settings + name: statuspage_url_settings + title: Statuspage Url Settings + methods: + list_statuspage_url_settings: + operation: + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1url_settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_statuspage_url_setting: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1url_settings/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_statuspage_url_setting: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/get + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1url_settings~1{statuspage_url_setting_id}/delete' response: mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - update_workflows_webhook_handle: + openAPIDocKey: '204' + request: + nativeCasing: camel + update_statuspage_url_setting: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integration~1ms-teams~1configuration~1workflows-webhook-handles~1{handle_id}/patch + $ref: '#/paths/~1api~1v2~1integration~1statuspage~1url_settings~1{statuspage_url_setting_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/get_workflows_webhook_handle - - $ref: >- - #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/list_workflows_webhook_handles + - $ref: '#/components/x-stackQL-resources/statuspage_url_settings/methods/list_statuspage_url_settings' insert: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/create_workflows_webhook_handle + - $ref: '#/components/x-stackQL-resources/statuspage_url_settings/methods/create_statuspage_url_setting' update: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/update_workflows_webhook_handle + - $ref: '#/components/x-stackQL-resources/statuspage_url_settings/methods/update_statuspage_url_setting' delete: - - $ref: >- - #/components/x-stackQL-resources/ms_teams_workflows_webhook_handles/methods/delete_workflows_webhook_handle + - $ref: '#/components/x-stackQL-resources/statuspage_url_settings/methods/delete_statuspage_url_setting' replace: [] - opsgenie_services: - id: datadog.integrations.opsgenie_services - name: opsgenie_services - title: Opsgenie Services + webhook_auth_methods: + id: datadog.integrations.webhook_auth_methods + name: webhook_auth_methods + title: Webhook Auth Methods methods: - list_opsgenie_services: + get_all_auth_methods: operation: - $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/get' + $ref: '#/paths/~1api~1v2~1integration~1webhooks~1configuration~1auth-method/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_opsgenie_service: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/webhook_auth_methods/methods/get_all_auth_methods' + insert: [] + update: [] + delete: [] + replace: [] + webhook_oauth2_client_credentials: + id: datadog.integrations.webhook_oauth2_client_credentials + name: webhook_oauth2_client_credentials + title: Webhook Oauth2 Client Credentials + methods: + create_oauth2_client_credentials: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1integration~1opsgenie~1services/post' + $ref: '#/paths/~1api~1v2~1integration~1webhooks~1configuration~1auth-method~1oauth2-client-credentials/post' response: mediaType: application/json openAPIDocKey: '201' - delete_opsgenie_service: + request: + nativeCasing: camel + delete_oauth2_client_credentials: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/delete + $ref: '#/paths/~1api~1v2~1integration~1webhooks~1configuration~1auth-method~1oauth2-client-credentials~1{auth_method_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_opsgenie_service: + request: + nativeCasing: camel + get_oauth2_client_credentials: operation: - $ref: >- - #/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/get + $ref: '#/paths/~1api~1v2~1integration~1webhooks~1configuration~1auth-method~1oauth2-client-credentials~1{auth_method_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_opsgenie_service: + request: + nativeCasing: camel + update_oauth2_client_credentials: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integration~1opsgenie~1services~1{integration_service_id}/patch + $ref: '#/paths/~1api~1v2~1integration~1webhooks~1configuration~1auth-method~1oauth2-client-credentials~1{auth_method_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/opsgenie_services/methods/get_opsgenie_service - - $ref: >- - #/components/x-stackQL-resources/opsgenie_services/methods/list_opsgenie_services + - $ref: '#/components/x-stackQL-resources/webhook_oauth2_client_credentials/methods/get_oauth2_client_credentials' insert: - - $ref: >- - #/components/x-stackQL-resources/opsgenie_services/methods/create_opsgenie_service + - $ref: '#/components/x-stackQL-resources/webhook_oauth2_client_credentials/methods/create_oauth2_client_credentials' update: - - $ref: >- - #/components/x-stackQL-resources/opsgenie_services/methods/update_opsgenie_service + - $ref: '#/components/x-stackQL-resources/webhook_oauth2_client_credentials/methods/update_oauth2_client_credentials' delete: - - $ref: >- - #/components/x-stackQL-resources/opsgenie_services/methods/delete_opsgenie_service + - $ref: '#/components/x-stackQL-resources/webhook_oauth2_client_credentials/methods/delete_oauth2_client_credentials' + replace: [] + integrations: + id: datadog.integrations.integrations + name: integrations + title: Integrations + methods: + list_integrations: + operation: + $ref: '#/paths/~1api~1v2~1integrations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/integrations/methods/list_integrations' + insert: [] + update: [] + delete: [] replace: [] cloudflare_accounts: id: datadog.integrations.cloudflare_accounts @@ -4777,49 +21312,57 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_cloudflare_account: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_cloudflare_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/delete + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_cloudflare_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/get + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_cloudflare_account: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/patch + $ref: '#/paths/~1api~1v2~1integrations~1cloudflare~1accounts~1{account_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/cloudflare_accounts/methods/get_cloudflare_account - - $ref: >- - #/components/x-stackQL-resources/cloudflare_accounts/methods/list_cloudflare_accounts + - $ref: '#/components/x-stackQL-resources/cloudflare_accounts/methods/get_cloudflare_account' + - $ref: '#/components/x-stackQL-resources/cloudflare_accounts/methods/list_cloudflare_accounts' insert: - - $ref: >- - #/components/x-stackQL-resources/cloudflare_accounts/methods/create_cloudflare_account + - $ref: '#/components/x-stackQL-resources/cloudflare_accounts/methods/create_cloudflare_account' update: - - $ref: >- - #/components/x-stackQL-resources/cloudflare_accounts/methods/update_cloudflare_account + - $ref: '#/components/x-stackQL-resources/cloudflare_accounts/methods/update_cloudflare_account' delete: - - $ref: >- - #/components/x-stackQL-resources/cloudflare_accounts/methods/delete_cloudflare_account + - $ref: '#/components/x-stackQL-resources/cloudflare_accounts/methods/delete_cloudflare_account' replace: [] confluent_accounts: id: datadog.integrations.confluent_accounts @@ -4833,49 +21376,57 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_confluent_account: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_confluent_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/delete + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_confluent_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/get + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_confluent_account: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/patch + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/confluent_accounts/methods/get_confluent_account - - $ref: >- - #/components/x-stackQL-resources/confluent_accounts/methods/list_confluent_account + - $ref: '#/components/x-stackQL-resources/confluent_accounts/methods/get_confluent_account' + - $ref: '#/components/x-stackQL-resources/confluent_accounts/methods/list_confluent_account' insert: - - $ref: >- - #/components/x-stackQL-resources/confluent_accounts/methods/create_confluent_account + - $ref: '#/components/x-stackQL-resources/confluent_accounts/methods/create_confluent_account' update: - - $ref: >- - #/components/x-stackQL-resources/confluent_accounts/methods/update_confluent_account + - $ref: '#/components/x-stackQL-resources/confluent_accounts/methods/update_confluent_account' delete: - - $ref: >- - #/components/x-stackQL-resources/confluent_accounts/methods/delete_confluent_account + - $ref: '#/components/x-stackQL-resources/confluent_accounts/methods/delete_confluent_account' replace: [] confluent_resources: id: datadog.integrations.confluent_resources @@ -4884,56 +21435,62 @@ components: methods: list_confluent_resource: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/get + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_confluent_resource: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/post + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_confluent_resource: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/delete + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_confluent_resource: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/get + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_confluent_resource: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/patch + $ref: '#/paths/~1api~1v2~1integrations~1confluent-cloud~1accounts~1{account_id}~1resources~1{resource_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/confluent_resources/methods/get_confluent_resource - - $ref: >- - #/components/x-stackQL-resources/confluent_resources/methods/list_confluent_resource + - $ref: '#/components/x-stackQL-resources/confluent_resources/methods/get_confluent_resource' + - $ref: '#/components/x-stackQL-resources/confluent_resources/methods/list_confluent_resource' insert: - - $ref: >- - #/components/x-stackQL-resources/confluent_resources/methods/create_confluent_resource + - $ref: '#/components/x-stackQL-resources/confluent_resources/methods/create_confluent_resource' update: - - $ref: >- - #/components/x-stackQL-resources/confluent_resources/methods/update_confluent_resource + - $ref: '#/components/x-stackQL-resources/confluent_resources/methods/update_confluent_resource' delete: - - $ref: >- - #/components/x-stackQL-resources/confluent_resources/methods/delete_confluent_resource + - $ref: '#/components/x-stackQL-resources/confluent_resources/methods/delete_confluent_resource' replace: [] fastly_accounts: id: datadog.integrations.fastly_accounts @@ -4947,49 +21504,57 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_fastly_account: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_fastly_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/delete + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_fastly_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/get + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_fastly_account: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/patch + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/fastly_accounts/methods/get_fastly_account - - $ref: >- - #/components/x-stackQL-resources/fastly_accounts/methods/list_fastly_accounts + - $ref: '#/components/x-stackQL-resources/fastly_accounts/methods/get_fastly_account' + - $ref: '#/components/x-stackQL-resources/fastly_accounts/methods/list_fastly_accounts' insert: - - $ref: >- - #/components/x-stackQL-resources/fastly_accounts/methods/create_fastly_account + - $ref: '#/components/x-stackQL-resources/fastly_accounts/methods/create_fastly_account' update: - - $ref: >- - #/components/x-stackQL-resources/fastly_accounts/methods/update_fastly_account + - $ref: '#/components/x-stackQL-resources/fastly_accounts/methods/update_fastly_account' delete: - - $ref: >- - #/components/x-stackQL-resources/fastly_accounts/methods/delete_fastly_account + - $ref: '#/components/x-stackQL-resources/fastly_accounts/methods/delete_fastly_account' replace: [] fastly_services: id: datadog.integrations.fastly_services @@ -4998,56 +21563,62 @@ components: methods: list_fastly_services: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/get + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_fastly_service: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/post + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_fastly_service: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/delete + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_fastly_service: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/get + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_fastly_service: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/patch + $ref: '#/paths/~1api~1v2~1integrations~1fastly~1accounts~1{account_id}~1services~1{service_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/fastly_services/methods/get_fastly_service - - $ref: >- - #/components/x-stackQL-resources/fastly_services/methods/list_fastly_services + - $ref: '#/components/x-stackQL-resources/fastly_services/methods/get_fastly_service' + - $ref: '#/components/x-stackQL-resources/fastly_services/methods/list_fastly_services' insert: - - $ref: >- - #/components/x-stackQL-resources/fastly_services/methods/create_fastly_service + - $ref: '#/components/x-stackQL-resources/fastly_services/methods/create_fastly_service' update: - - $ref: >- - #/components/x-stackQL-resources/fastly_services/methods/update_fastly_service + - $ref: '#/components/x-stackQL-resources/fastly_services/methods/update_fastly_service' delete: - - $ref: >- - #/components/x-stackQL-resources/fastly_services/methods/delete_fastly_service + - $ref: '#/components/x-stackQL-resources/fastly_services/methods/delete_fastly_service' replace: [] okta_accounts: id: datadog.integrations.okta_accounts @@ -5061,19 +21632,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_okta_account: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_okta_account: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/delete + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_okta_account: operation: $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/get' @@ -5081,32 +21660,556 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_okta_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/okta_accounts/methods/get_okta_account' + - $ref: '#/components/x-stackQL-resources/okta_accounts/methods/list_okta_accounts' + insert: + - $ref: '#/components/x-stackQL-resources/okta_accounts/methods/create_okta_account' + update: + - $ref: '#/components/x-stackQL-resources/okta_accounts/methods/update_okta_account' + delete: + - $ref: '#/components/x-stackQL-resources/okta_accounts/methods/delete_okta_account' + replace: [] + reference_table_rows: + id: datadog.integrations.reference_table_rows + name: reference_table_rows + title: Reference Table Rows + methods: + batch_rows_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1queries~1batch-rows/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_rows: + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}~1rows/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_rows_by_id: + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}~1rows/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + upsert_rows: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}~1rows/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_reference_table_rows: + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}~1rows~1list/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/reference_table_rows/methods/get_rows_by_id' + - $ref: '#/components/x-stackQL-resources/reference_table_rows/methods/list_reference_table_rows' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/reference_table_rows/methods/delete_rows' + replace: [] + reference_tables: + id: datadog.integrations.reference_tables + name: reference_tables + title: Reference Tables + methods: + list_tables: + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 100 + skip: + paramName: page[offset] + create_reference_table: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_table: + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_table: + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_reference_table: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1tables~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/reference_tables/methods/get_table' + - $ref: '#/components/x-stackQL-resources/reference_tables/methods/list_tables' + insert: + - $ref: '#/components/x-stackQL-resources/reference_tables/methods/create_reference_table' + update: + - $ref: '#/components/x-stackQL-resources/reference_tables/methods/update_reference_table' + delete: + - $ref: '#/components/x-stackQL-resources/reference_tables/methods/delete_table' + replace: [] + reference_table_uploads: + id: datadog.integrations.reference_table_uploads + name: reference_table_uploads + title: Reference Table Uploads + methods: + create_reference_table_upload: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1reference-tables~1uploads/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/reference_table_uploads/methods/create_reference_table_upload' + update: [] + delete: [] + replace: [] + web_integration_accounts: + id: datadog.integrations.web_integration_accounts + name: web_integration_accounts + title: Web Integration Accounts + methods: + list_web_integration_accounts: + operation: + $ref: '#/paths/~1api~1v2~1web-integrations~1{integration_name}~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_web_integration_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1web-integrations~1{integration_name}~1accounts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_web_integration_account: + operation: + $ref: '#/paths/~1api~1v2~1web-integrations~1{integration_name}~1accounts~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_web_integration_account: + operation: + $ref: '#/paths/~1api~1v2~1web-integrations~1{integration_name}~1accounts~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_web_integration_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1web-integrations~1{integration_name}~1accounts~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/web_integration_accounts/methods/get_web_integration_account' + - $ref: '#/components/x-stackQL-resources/web_integration_accounts/methods/list_web_integration_accounts' + insert: + - $ref: '#/components/x-stackQL-resources/web_integration_accounts/methods/create_web_integration_account' + update: + - $ref: '#/components/x-stackQL-resources/web_integration_accounts/methods/update_web_integration_account' + delete: + - $ref: '#/components/x-stackQL-resources/web_integration_accounts/methods/delete_web_integration_account' + replace: [] + azure_accounts: + id: datadog.integrations.azure_accounts + name: azure_accounts + title: Azure Accounts + methods: + delete_azure_integration: + operation: + $ref: '#/paths/~1api~1v1~1integration~1azure/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_azure_integration: + operation: + $ref: '#/paths/~1api~1v1~1integration~1azure/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_azure_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1azure/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_azure_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1azure/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/azure_accounts/methods/list_azure_integration' + insert: + - $ref: '#/components/x-stackQL-resources/azure_accounts/methods/create_azure_integration' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/azure_accounts/methods/delete_azure_integration' + replace: + - $ref: '#/components/x-stackQL-resources/azure_accounts/methods/update_azure_integration' + azure_host_filters: + id: datadog.integrations.azure_host_filters + name: azure_host_filters + title: Azure Host Filters + methods: + update_azure_host_filters: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1azure~1host_filters/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/azure_host_filters/methods/update_azure_host_filters' + update: [] + delete: [] + replace: [] + pagerduty_services: + id: datadog.integrations.pagerduty_services + name: pagerduty_services + title: Pagerduty Services + methods: + create_pager_duty_integration_service: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1pagerduty~1configuration~1services/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_pager_duty_integration_service: + operation: + $ref: '#/paths/~1api~1v1~1integration~1pagerduty~1configuration~1services~1{service_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_pager_duty_integration_service: + operation: + $ref: '#/paths/~1api~1v1~1integration~1pagerduty~1configuration~1services~1{service_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_pager_duty_integration_service: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1pagerduty~1configuration~1services~1{service_name}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/pagerduty_services/methods/get_pager_duty_integration_service' + insert: + - $ref: '#/components/x-stackQL-resources/pagerduty_services/methods/create_pager_duty_integration_service' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/pagerduty_services/methods/delete_pager_duty_integration_service' + replace: + - $ref: '#/components/x-stackQL-resources/pagerduty_services/methods/update_pager_duty_integration_service' + slack_channels: + id: datadog.integrations.slack_channels + name: slack_channels + title: Slack Channels + methods: + get_slack_integration_channels: + operation: + $ref: '#/paths/~1api~1v1~1integration~1slack~1configuration~1accounts~1{account_name}~1channels/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_slack_integration_channel: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1slack~1configuration~1accounts~1{account_name}~1channels/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + remove_slack_integration_channel: + operation: + $ref: '#/paths/~1api~1v1~1integration~1slack~1configuration~1accounts~1{account_name}~1channels~1{channel_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_slack_integration_channel: operation: - $ref: >- - #/paths/~1api~1v2~1integrations~1okta~1accounts~1{account_id}/patch + $ref: '#/paths/~1api~1v1~1integration~1slack~1configuration~1accounts~1{account_name}~1channels~1{channel_name}/get' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + update_slack_integration_channel: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1slack~1configuration~1accounts~1{account_name}~1channels~1{channel_name}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/okta_accounts/methods/get_okta_account - - $ref: >- - #/components/x-stackQL-resources/okta_accounts/methods/list_okta_accounts + - $ref: '#/components/x-stackQL-resources/slack_channels/methods/get_slack_integration_channel' + - $ref: '#/components/x-stackQL-resources/slack_channels/methods/get_slack_integration_channels' insert: - - $ref: >- - #/components/x-stackQL-resources/okta_accounts/methods/create_okta_account + - $ref: '#/components/x-stackQL-resources/slack_channels/methods/create_slack_integration_channel' update: - - $ref: >- - #/components/x-stackQL-resources/okta_accounts/methods/update_okta_account + - $ref: '#/components/x-stackQL-resources/slack_channels/methods/update_slack_integration_channel' delete: - - $ref: >- - #/components/x-stackQL-resources/okta_accounts/methods/delete_okta_account + - $ref: '#/components/x-stackQL-resources/slack_channels/methods/remove_slack_integration_channel' replace: [] + webhook_custom_variables: + id: datadog.integrations.webhook_custom_variables + name: webhook_custom_variables + title: Webhook Custom Variables + methods: + create_webhooks_integration_custom_variable: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1custom-variables/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_webhooks_integration_custom_variable: + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1custom-variables~1{custom_variable_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_webhooks_integration_custom_variable: + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1custom-variables~1{custom_variable_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_webhooks_integration_custom_variable: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1custom-variables~1{custom_variable_name}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/webhook_custom_variables/methods/get_webhooks_integration_custom_variable' + insert: + - $ref: '#/components/x-stackQL-resources/webhook_custom_variables/methods/create_webhooks_integration_custom_variable' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/webhook_custom_variables/methods/delete_webhooks_integration_custom_variable' + replace: + - $ref: '#/components/x-stackQL-resources/webhook_custom_variables/methods/update_webhooks_integration_custom_variable' + webhooks: + id: datadog.integrations.webhooks + name: webhooks + title: Webhooks + methods: + create_webhooks_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1webhooks/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_webhooks_integration: + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1webhooks~1{webhook_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_webhooks_integration: + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1webhooks~1{webhook_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_webhooks_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1integration~1webhooks~1configuration~1webhooks~1{webhook_name}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/webhooks/methods/get_webhooks_integration' + insert: + - $ref: '#/components/x-stackQL-resources/webhooks/methods/create_webhooks_integration' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/webhooks/methods/delete_webhooks_integration' + replace: + - $ref: '#/components/x-stackQL-resources/webhooks/methods/update_webhooks_integration' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/llm_observability.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/llm_observability.yaml new file mode 100644 index 0000000..bba8c89 --- /dev/null +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/llm_observability.yaml @@ -0,0 +1,15844 @@ +openapi: 3.0.0 +info: + title: llm_observability API + description: datadog llm_observability API + version: '1.0' +paths: + /api/unstable/llm-obs/config/evaluators/custom: + get: + description: List all custom Agent Observability evaluator configurations for the organization. + operationId: ListLLMObsCustomEvalConfigs + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: Custom + created_at: '2024-01-15T10:30:00Z' + created_by: + email: user@example.com + eval_name: my-custom-evaluator + last_updated_by: + email: user@example.com + llm_judge_config: + inference_params: + max_tokens: 1024 + temperature: 0.7 + parsing_type: structured_output + llm_provider: + integration_provider: openai + model_name: gpt-4o + target: + application_name: my-llm-app + enabled: true + sampling_percentage: 50 + updated_at: '2024-01-15T10:30:00Z' + id: my-custom-evaluator + type: evaluator_config + schema: + $ref: '#/components/schemas/LLMObsCustomEvalConfigListResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List custom evaluator configurations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/unstable/llm-obs/config/evaluators/custom/{eval_name}: + delete: + description: Delete a custom Agent Observability evaluator configuration by its name. + operationId: DeleteLLMObsCustomEvalConfig + parameters: + - $ref: '#/components/parameters/LLMObsEvalNamePathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a custom evaluator configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a custom Agent Observability evaluator configuration by its name. + operationId: GetLLMObsCustomEvalConfig + parameters: + - $ref: '#/components/parameters/LLMObsEvalNamePathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Custom + created_at: '2024-01-15T10:30:00Z' + created_by: + email: user@example.com + eval_name: my-custom-evaluator + last_updated_by: + email: user@example.com + llm_judge_config: + inference_params: + max_tokens: 1024 + temperature: 0.7 + parsing_type: structured_output + llm_provider: + integration_provider: openai + model_name: gpt-4o + target: + application_name: my-llm-app + enabled: true + sampling_percentage: 50 + updated_at: '2024-01-15T10:30:00Z' + id: my-custom-evaluator + type: evaluator_config + schema: + $ref: '#/components/schemas/LLMObsCustomEvalConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a custom evaluator configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create or update a custom Agent Observability evaluator configuration by its name. + operationId: UpdateLLMObsCustomEvalConfig + parameters: + - $ref: '#/components/parameters/LLMObsEvalNamePathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + llm_judge_config: + inference_params: + max_tokens: 1024 + temperature: 0.7 + parsing_type: structured_output + llm_provider: + integration_provider: openai + model_name: gpt-4o + target: + application_name: my-llm-app + enabled: true + sampling_percentage: 50 + id: my-custom-evaluator + type: evaluator_config + full: + summary: Full example with prompt template, output schema, and assessment criteria + value: + data: + attributes: + category: Custom + eval_name: my-custom-evaluator + llm_judge_config: + assessment_criteria: + pass_when: false + inference_params: + frequency_penalty: 0 + max_tokens: 4096 + presence_penalty: 0 + temperature: 1 + top_p: 1 + output_schema: + name: boolean_eval + strict: true + parsing_type: structured_output + prompt_template: + - content: You are a judge LLM. + role: system + - content: '{{span_output}}' + role: user + llm_provider: + integration_account_id: your-account-uuid + integration_provider: openai + model_name: gpt-4o + target: + application_name: my-llm-app + enabled: true + eval_scope: span + filter: '@meta.span.kind:llm' + root_spans_only: false + sampling_percentage: 100 + id: my-custom-evaluator + type: evaluator_config + schema: + $ref: '#/components/schemas/LLMObsCustomEvalConfigUpdateRequest' + description: Custom evaluator configuration payload. + required: true + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update a custom evaluator configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotated-interactions: + get: + description: |- + Returns annotated interactions across all annotation queues for the given content IDs. + Results include queue metadata (ID and name) for each interaction. + operationId: GetLLMObsAnnotatedInteractionsByTraceIDs + parameters: + - description: One or more content IDs to retrieve annotated interactions for. At least one is required. + in: query + name: contentIds + required: true + schema: + items: + type: string + type: array + - description: Pagination offset. Must be >= 0. Defaults to 0. + in: query + name: offset + schema: + default: 0 + format: int32 + maximum: 2147483647 + minimum: 0 + type: integer + - description: Maximum number of results to return. Must be > 0. Defaults to 100. + in: query + name: limit + schema: + default: 100 + format: int32 + maximum: 2147483647 + minimum: 1 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotated_interactions: + - annotations: + - created_at: '0001-01-01T00:00:00Z' + created_by: 00000000-0000-0000-0000-000000000002 + id: annotation-789 + interaction_id: interaction-456 + label_values: + - label_schema_id: abc-123 + value: good + modified_at: '0001-01-01T00:00:00Z' + modified_by: 00000000-0000-0000-0000-000000000002 + content_id: trace-abc-123 + created_at: '2025-06-01T12:00:00Z' + id: interaction-456 + modified_at: '2025-06-01T12:00:00Z' + queue_id: queue-uuid-001 + queue_name: My Annotation Queue + type: trace + total_count: 1 + id: trace-query + type: annotated_interactions_by_trace + schema: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsByTraceResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotated interactions by content IDs + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues: + get: + description: |- + List annotation queues. Optionally filter by project ID or queue IDs. These parameters are mutually exclusive. + If neither is provided, all queues in the organization are returned. + operationId: ListLLMObsAnnotationQueues + parameters: + - description: Filter annotation queues by project ID. Cannot be used together with `queueIds`. + in: query + name: projectId + schema: + type: string + - description: Filter annotation queues by queue IDs (comma-separated). Cannot be used together with `projectId`. + in: query + name: queueIds + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-15T10:30:00Z' + created_by: 00000000-0000-0000-0000-000000000002 + description: Queue for annotating customer support traces + modified_at: '2024-01-15T10:30:00Z' + modified_by: 00000000-0000-0000-0000-000000000002 + name: My annotation queue + owned_by: 00000000-0000-0000-0000-000000000002 + project_id: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueuesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability annotation queues + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create an annotation queue. The `name` and `project_id` fields are required. + An optional `annotation_schema` can be provided to define the labels for the queue. + Fields such as `created_by`, `owned_by`, `created_at`, `modified_by`, + and `modified_at` are inferred by the backend. + operationId: CreateLLMObsAnnotationQueue + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Queue for annotating customer support traces + name: My annotation queue + project_id: 00000000-0000-0000-0000-000000000002 + type: queues + with_schema: + summary: Create queue with annotation schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: true + max: 5 + min: 0 + name: quality + type: score + - name: sentiment + type: categorical + values: + - positive + - negative + - neutral + description: Queue for annotating customer support traces + name: My annotation queue + project_id: 00000000-0000-0000-0000-000000000002 + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueRequest' + description: Create annotation queue payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + created_by: 00000000-0000-0000-0000-000000000002 + description: Queue for annotating customer support traces + modified_at: '2024-01-15T10:30:00Z' + modified_by: 00000000-0000-0000-0000-000000000002 + name: My annotation queue + owned_by: 00000000-0000-0000-0000-000000000002 + project_id: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability annotation queue + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}: + delete: + description: Delete an annotation queue by its ID. + operationId: DeleteLLMObsAnnotationQueue + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + responses: + '204': + description: No Content + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an Agent Observability annotation queue + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Partially update an annotation queue. The `name`, `description`, and `annotation_schema` fields can be updated. + operationId: UpdateLLMObsAnnotationQueue + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Updated description + name: Updated queue name + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueUpdateRequest' + description: Update annotation queue payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + created_by: 00000000-0000-0000-0000-000000000002 + description: Queue for annotating customer support traces + modified_at: '2024-01-15T10:30:00Z' + modified_by: 00000000-0000-0000-0000-000000000002 + name: My annotation queue + owned_by: 00000000-0000-0000-0000-000000000002 + project_id: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability annotation queue + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotated-interactions: + get: + description: Retrieve all interactions (traces and sessions) and their annotations for a given annotation queue. + operationId: GetLLMObsAnnotatedInteractions + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotated_interactions: + - annotations: [] + content_id: trace-abc-123 + id: interaction-456 + type: trace + id: 00000000-0000-0000-0000-000000000001 + type: annotated_interactions + schema: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotated queue interactions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations: + post: + description: |- + Create or update annotations on interactions in a queue. Each annotation is matched + by `interaction_id` and the requesting user's identity. + Results and errors in the response are linked to request items by `interaction_id`. + Errors for individual items are returned in the `errors` field without blocking the rest of the batch. + operationId: UpsertLLMObsAnnotations + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + annotations: + - interaction_id: 00000000-0000-0000-0000-000000000001 + label_values: + - label_schema_id: abc-123 + value: good + - label_schema_id: ef56gh78 + value: positive + type: annotations + schema: + $ref: '#/components/schemas/LLMObsAnnotationsRequest' + description: Payload for creating or updating annotations. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotations: + - created_at: '2024-01-15T10:30:00Z' + created_by: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000000 + interaction_id: 00000000-0000-0000-0000-000000000001 + label_values: + - label_schema_id: abc-123 + value: good + modified_at: '2024-01-15T10:30:00Z' + modified_by: 00000000-0000-0000-0000-000000000002 + id: 00000000-0000-0000-0000-000000000001 + type: annotations + schema: + $ref: '#/components/schemas/LLMObsAnnotationsResponse' + description: OK — annotations created or updated. Per-item errors are listed in `errors`. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found — the queue does not exist. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update annotations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/annotations/delete: + post: + description: Delete one or more annotations from an annotation queue. + operationId: DeleteLLMObsAnnotations + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_ids: + - 00000000-0000-0000-0000-000000000000 + type: annotations + schema: + $ref: '#/components/schemas/LLMObsDeleteAnnotationsRequest' + description: Delete annotations payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_ids: + - 00000000-0000-0000-0000-000000000000 + errors: [] + id: 00000000-0000-0000-0000-000000000001 + type: annotations + partial_failure: + summary: Some annotation IDs were not found + value: + data: + attributes: + annotation_ids: + - 00000000-0000-0000-0000-000000000000 + errors: + - annotation_id: 00000000-0000-0000-0000-000000000001 + error: annotation not found + id: 00000000-0000-0000-0000-000000000001 + type: annotations + schema: + $ref: '#/components/schemas/LLMObsDeleteAnnotationsResponse' + description: OK — annotations deleted. Errors for annotations that could not be deleted are listed in `errors`. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found — the queue does not exist. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete annotations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions: + post: + description: |- + Add one or more interactions to an annotation queue. At least one + interaction must be provided. Each interaction has a `type`: + + - `trace`, `experiment_trace`, `session`: `content_id` references the + upstream entity; the server fetches the actual content. + - `display_block`: omit `content_id` and provide the rendered content + in `display_block`. The server generates `content_id` as a + deterministic hash of the block list. + + Items of different types can be mixed in a single request. + operationId: CreateLLMObsAnnotationQueueInteractions + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + interactions: + - content_id: trace-abc-123 + type: trace + type: interactions + display_block: + summary: Add a display_block interaction + value: + data: + attributes: + interactions: + - display_block: + - content: '## Triage Instructions' + type: markdown + - content: Inputs + level: md + type: header + - content: + experiment_id: abc-123 + label: Experiments + type: json + type: display_block + type: interactions + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsRequest' + description: Add interactions payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + interactions: + - already_existed: false + content_id: trace-abc-123 + id: 00000000-0000-0000-0000-000000000000 + type: trace + id: 00000000-0000-0000-0000-000000000001 + type: interactions + display_block: + summary: display_block response + value: + data: + attributes: + interactions: + - already_existed: false + content_id: 9a87f3e2b1d4c5a6f8b3e2d1c4a7b5f6e3d2a1c4b7e5f8a3d6c2e1b4a7d5f8c2 + display_block: + - content: '## Triage Instructions' + type: markdown + id: 00000000-0000-0000-0000-000000000000 + type: display_block + id: 00000000-0000-0000-0000-000000000001 + type: interactions + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Add annotation queue interactions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions/delete: + post: + description: Delete one or more interactions from an annotation queue. + operationId: DeleteLLMObsAnnotationQueueInteractions + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + interaction_ids: + - 00000000-0000-0000-0000-000000000000 + - 00000000-0000-0000-0000-000000000001 + type: interactions + schema: + $ref: '#/components/schemas/LLMObsDeleteAnnotationQueueInteractionsRequest' + description: Delete interactions payload. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete annotation queue interactions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/annotation-queues/{queue_id}/label-schema: + get: + description: Retrieve the label schema for a given annotation queue. + operationId: GetLLMObsAnnotationQueueLabelSchema + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_schema: + label_schemas: + - id: abc-123 + is_required: true + max: 5 + min: 0 + name: quality + type: score + - id: ef56gh78 + name: sentiment + type: categorical + values: + - positive + - negative + - neutral + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get annotation queue label schema + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Create or replace the label schema for a given annotation queue. + The label schema defines the labels annotators can apply to interactions in the queue. + Label names must be unique within the queue and match the pattern `^[a-zA-Z0-9_-]+$`. + Each label must have a valid type: score, categorical, boolean, or text. + operationId: UpdateLLMObsAnnotationQueueLabelSchema + parameters: + - $ref: '#/components/parameters/LLMObsAnnotationQueueIDPathParameter' + requestBody: + content: + application/json: + examples: + boolean_label: + summary: Boolean label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - has_assessment: true + is_assessment: true + is_required: true + name: is_correct + type: boolean + type: queues + categorical_label: + summary: Categorical label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: true + name: sentiment + type: categorical + values: + - positive + - negative + - neutral + type: queues + default: + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: true + max: 5 + min: 0 + name: quality + type: score + type: queues + score_label: + summary: Score label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - has_reasoning: true + is_required: true + max: 5 + min: 0 + name: quality + type: score + type: queues + text_label: + summary: Text label schema + value: + data: + attributes: + annotation_schema: + label_schemas: + - is_required: false + name: feedback + type: text + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaUpdateRequest' + description: Update label schema payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + annotation_schema: + label_schemas: + - id: abc-123 + is_required: true + max: 5 + min: 0 + name: quality + type: score + id: 00000000-0000-0000-0000-000000000001 + type: queues + schema: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update annotation queue label schema + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experimentation/analytics: + post: + description: |- + Execute an analytics aggregation over Agent Observability experimentation data. + Use this endpoint to compute metrics (for example average eval scores) grouped by fields such as `span_id` or `experiment_id`. + + At least one `compute` definition and one `index` must be provided. + operationId: AggregateLLMObsExperimentation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + aggregate: + compute: + - metric: score_value + name: avg_faithfulness + group_by: + - field: span_id + indexes: + - experiment-evals + search: + query: '@experiment_id:3fd6b5e0-8910-4b1c-a7d0-5b84de329012 @label:faithfulness' + type: experimentation + schema: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsRequest' + description: Analytics payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + hit_count: 42 + result: + values: + - by: + span_id: span-7a1b2c3d + metrics: + avg_faithfulness: 0.87 + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + schema: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Aggregate Agent Observability experimentation + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experimentation/search: + post: + description: |- + Search across Agent Observability experimentation entities — projects, datasets, dataset records, experiments, and experiment runs — using cursor-based pagination. + + The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided. + + Returns `200 OK` when all results fit in a single page. Returns `206 Partial Content` with a cursor in `meta.after` when additional pages are available. + operationId: SearchLLMObsExperimentation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: '@project_id:a33671aa-24fd-4dcd-9b33-a8ec7dde7751' + scope: + - experiments + page: + limit: 50 + type: experimentation + schema: + $ref: '#/components/schemas/LLMObsExperimentationSearchRequest' + description: Experimentation search payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + experiments: + - created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + description: '' + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + meta: + after: null + schema: + $ref: '#/components/schemas/LLMObsExperimentationSearchResponse' + description: OK — all results returned in a single page. + '206': + content: + application/json: + examples: + default: + value: + data: + attributes: + experiments: + - created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + description: '' + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + meta: + after: eyJpZCI6ImFiYzEyMyJ9 + schema: + $ref: '#/components/schemas/LLMObsExperimentationSearchResponse' + description: Partial Content — more results are available. Use `meta.after` as the next `page.cursor`. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Search Agent Observability experimentation + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experimentation/simple-search: + post: + description: |- + Search across Agent Observability experimentation entities using offset-based (page-number) pagination. + Use this endpoint when you need total page count or want to navigate to a specific page number. + + The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided. + operationId: SimpleSearchLLMObsExperimentation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: '@project_id:a33671aa-24fd-4dcd-9b33-a8ec7dde7751' + scope: + - experiments + page: + limit: 50 + number: 1 + sort: + - direction: desc + field: created_at + type: experimentation + schema: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchRequest' + description: Simple search payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + experiments: + - created_at: '2024-01-01T00:00:00+00:00' + description: '' + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + type: experimentation + meta: + page: + current: 1 + limit: 50 + total_count: 63 + total_pages: 2 + schema: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Simple search experimentation entities + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments: + get: + description: List all Agent Observability experiments sorted by creation date, newest first. + operationId: ListLLMObsExperiments + parameters: + - description: Filter experiments by project ID. Required if `filter[dataset_id]` is not provided. + in: query + name: filter[project_id] + schema: + type: string + - description: Filter experiments by dataset ID. + in: query + name: filter[dataset_id] + schema: + type: string + - description: Filter experiments by experiment ID. Can be specified multiple times. + in: query + name: filter[id] + schema: + type: string + - description: Filter experiments by their exact run name. + in: query + name: filter[name] + schema: + type: string + - description: Filter by logical experiment name. This is the `name` field set when creating an experiment through `POST /experiments`. Returns all experiment runs that share the same name, enabling cross-commit and cross-branch comparisons. + in: query + name: filter[experiment] + schema: + type: string + - description: |- + Filter by JSONB metadata containment. Provide a JSON object string where + experiments whose metadata contains all specified key-value pairs are returned. + For example: `{"commit":"abc123","branch":"main"}`. + in: query + name: filter[metadata] + schema: + type: string + - description: Filter experiments by the ID of their parent (baseline) experiment. Returns all experiments that were run against the given baseline. Can be specified multiple times. + in: query + name: filter[parent_experiment_id] + schema: + type: string + - description: When `true`, return only soft-deleted experiments. Defaults to `false`. + in: query + name: filter[is_deleted] + schema: + type: boolean + - description: When `true`, enrich each experiment with its author's user data in the `author` field. + in: query + name: include[user_data] + schema: + type: boolean + - description: When `true`, enrich each experiment with its dataset name in the `dataset_name` field. + in: query + name: include[dataset_names] + schema: + type: boolean + - description: Use the pagination cursor returned in `meta.after` to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: |- + Maximum number of results to return per page. Values above 5000 are clamped + to 5000. Defaults to 5000. + in: query + name: page[limit] + schema: + format: int64 + maximum: 5000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + config: null + created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000011 + description: '' + metadata: null + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000010 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000009 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability experiments + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Agent Observability experiment. + operationId: CreateLLMObsExperiment + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + name: My Experiment v1 + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentRequest' + description: Create experiment payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: null + created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000014 + description: '' + metadata: null + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000013 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000012 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentResponse' + description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: null + created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000017 + description: '' + metadata: null + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000016 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000015 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments/delete: + post: + description: Delete one or more Agent Observability experiments. + operationId: DeleteLLMObsExperiments + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + experiment_ids: + - 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsDeleteExperimentsRequest' + description: Delete experiments payload. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability experiments + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments/{experiment_id}: + patch: + description: Partially update an existing Agent Observability experiment. + operationId: UpdateLLMObsExperiment + parameters: + - $ref: '#/components/parameters/LLMObsExperimentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentUpdateRequest' + description: Update experiment payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: null + created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000020 + description: '' + metadata: null + name: My Experiment v1 + project_id: 00000000-0000-0000-0000-000000000019 + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000018 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/experiments/{experiment_id}/events: + get: + deprecated: true + description: Retrieve spans with their evaluation metrics for a given experiment. Returns spans only, with no summary metrics and no pagination. Deprecated in favor of `ListLLMObsExperimentEventsV3`. + operationId: ListLLMObsExperimentEventsV1 + parameters: + - $ref: '#/components/parameters/LLMObsExperimentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + duration: 1500000000 + eval_metrics: [] + name: llm_call + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + tags: [] + trace_id: abc123def456 + id: 00000000-0000-0000-0000-000000000001 + type: experiments + schema: + $ref: '#/components/schemas/LLMObsExperimentSpansResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability experiment spans (v1) + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Push spans and metrics for an Agent Observability experiment. + operationId: CreateLLMObsExperimentEvents + parameters: + - $ref: '#/components/parameters/LLMObsExperimentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: + - assessment: pass + label: faithfulness + metric_type: score + span_id: span-7a1b2c3d + timestamp_ms: 1705314600000 + spans: + - dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + duration: 1500000000 + name: llm_call + project_id: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + trace_id: abc123def456 + type: events + schema: + $ref: '#/components/schemas/LLMObsExperimentEventsRequest' + description: Experiment events payload. + required: true + responses: + '202': + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Push events for an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/integrations/{integration}/accounts: + get: + description: Retrieve the list of configured accounts for the specified LLM provider integration. + operationId: ListLLMObsIntegrationAccounts + parameters: + - $ref: '#/components/parameters/LLMObsIntegrationPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + - account_id: org-XYZ123 + account_name: Production OpenAI + account_region: '' + id: account-abc123 + integration: openai + schema: + type: array + items: + $ref: '#/components/schemas/LLMObsIntegrationAccount' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List LLM integration accounts + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/integrations/{integration}/{account_id}/inference: + post: + description: Run an LLM inference request through the specified integration and account, returning the model response and token usage. + operationId: CreateLLMObsIntegrationInference + parameters: + - $ref: '#/components/parameters/LLMObsIntegrationPathParameter' + - $ref: '#/components/parameters/LLMObsAccountIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + max_tokens: 256 + messages: + - content: What is the capital of France? + role: user + model_id: gpt-4o + temperature: 0.7 + schema: + $ref: '#/components/schemas/LLMObsIntegrationInferenceRequest' + description: Inference request parameters. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + max_tokens: 256 + messages: + - content: What is the capital of France? + role: user + model_id: gpt-4o + response: + assessment: pass + content: The capital of France is Paris. + finish_reason: stop + inference_codes: [] + input_tokens: 15 + latency: 843 + output_tokens: 9 + tools: [] + total_tokens: 24 + temperature: 0.7 + schema: + $ref: '#/components/schemas/LLMObsIntegrationInferenceResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Run an LLM inference + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/integrations/{integration}/{account_id}/models: + get: + description: Retrieve the list of models available for the specified LLM provider integration and account. + operationId: ListLLMObsIntegrationModels + parameters: + - $ref: '#/components/parameters/LLMObsIntegrationPathParameter' + - $ref: '#/components/parameters/LLMObsAccountIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + - has_access: true + id: gpt-4o + integration: openai + integration_display_name: OpenAI + json_schema: true + model_display_name: GPT-4o + model_id: gpt-4o + provider: openai + provider_display_name: OpenAI + schema: + type: array + items: + $ref: '#/components/schemas/LLMObsIntegrationModel' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List LLM integration models + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/projects: + get: + description: List all Agent Observability projects sorted by creation date, newest first. + operationId: ListLLMObsProjects + parameters: + - description: Filter projects by project ID. + in: query + name: filter[id] + schema: + type: string + - description: Filter projects by name. + in: query + name: filter[name] + schema: + type: string + - description: Use the Pagination cursor to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: Maximum number of results to return per page. + in: query + name: page[limit] + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: '' + name: My LLM Project + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + type: projects + schema: + $ref: '#/components/schemas/LLMObsProjectsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability projects + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Agent Observability project. Returns the existing project if a name conflict occurs. + operationId: CreateLLMObsProject + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My LLM Project + type: projects + schema: + $ref: '#/components/schemas/LLMObsProjectRequest' + description: Create project payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: '' + name: My LLM Project + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000002 + type: projects + schema: + $ref: '#/components/schemas/LLMObsProjectResponse' + description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: '' + name: My LLM Project + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000003 + type: projects + schema: + $ref: '#/components/schemas/LLMObsProjectResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability project + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/projects/delete: + post: + description: Delete one or more Agent Observability projects. + operationId: DeleteLLMObsProjects + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + project_ids: + - a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: projects + schema: + $ref: '#/components/schemas/LLMObsDeleteProjectsRequest' + description: Delete projects payload. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability projects + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/projects/{project_id}: + patch: + description: Partially update an existing Agent Observability project. + operationId: UpdateLLMObsProject + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: projects + schema: + $ref: '#/components/schemas/LLMObsProjectUpdateRequest' + description: Update project payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: '' + name: My LLM Project + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000004 + type: projects + schema: + $ref: '#/components/schemas/LLMObsProjectResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability project + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts: + get: + description: List all Agent Observability prompts in the prompt registry for the organization. + operationId: ListLLMObsPrompts + parameters: + - description: Optional filter for prompts by prompt ID. + example: customer-support-assistant + in: query + name: filter[prompt_id] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + created_from: sdk-registry + description: Answers customer questions using the company knowledge base. + in_registry: true + last_version_created_at: '2025-02-01T14:30:00Z' + num_versions: 2 + prompt_id: customer-support-assistant + source: registry + title: Customer Support Assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsPromptsResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability prompts + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new prompt (and its first version) in the Agent Observability prompt registry. + operationId: CreateLLMObsPrompt + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Answers customer questions using the company knowledge base. + prompt_id: customer-support-assistant + template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + title: Customer Support Assistant + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsCreatePromptRequest' + description: Create prompt payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + created_from: sdk-registry + description: Answers customer questions using the company knowledge base. + in_registry: true + last_version_created_at: '2025-01-15T10:00:00Z' + num_versions: 1 + prompt_id: customer-support-assistant + source: registry + title: Customer Support Assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsPromptResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts/{prompt_id}: + delete: + description: Soft-delete an Agent Observability prompt. The prompt's version rows are retained, but they are no longer accessible through the public prompt registry endpoints. + operationId: DeleteLLMObsPrompt + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + deleted_at: '2025-02-10T09:15:00Z' + prompt_id: customer-support-assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsDeletedPromptResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the latest version of an Agent Observability prompt by prompt ID. + operationId: GetLLMObsPrompt + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + - $ref: '#/components/parameters/LLMObsPromptLabelQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + chat_template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + prompt_id: customer-support-assistant + prompt_version_uuid: d83ab666-61cc-5545-a83b-2424bb85467b + version: '2' + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsPromptSDKResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the title, the description, or both, for an Agent Observability prompt. + operationId: UpdateLLMObsPrompt + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Answers customer questions using the company knowledge base. + title: Customer Support Assistant + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsUpdatePromptRequest' + description: Update prompt payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + created_from: sdk-registry + description: Answers customer questions using the company knowledge base. + in_registry: true + last_version_created_at: '2025-01-15T10:00:00Z' + num_versions: 1 + prompt_id: customer-support-assistant + source: registry + title: Customer Support Assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + schema: + $ref: '#/components/schemas/LLMObsPromptResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts/{prompt_id}/versions: + get: + description: List all versions of an Agent Observability prompt, ordered newest to oldest. If the prompt does not exist, is not registered, or is archived, the response contains an empty list. + operationId: ListLLMObsPromptVersions + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-02-01T14:30:00Z' + description: Give concise answers and cite relevant help-center articles. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + version: 2 + version_created_at: '2025-02-01T14:30:00Z' + id: d83ab666-61cc-5545-a83b-2424bb85467b + type: prompt-template-versions + - attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + description: Initial customer support prompt. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + version: 1 + version_created_at: '2025-01-15T10:00:00Z' + id: 20e5280b-c75d-5699-8a70-a2773a751428 + type: prompt-template-versions + schema: + $ref: '#/components/schemas/LLMObsPromptVersionsResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List versions of an Agent Observability prompt + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new version of an existing Agent Observability prompt. + operationId: CreateLLMObsPromptVersion + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Give concise answers and cite relevant help-center articles. + template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + type: prompt-template-versions + schema: + $ref: '#/components/schemas/LLMObsCreatePromptVersionRequest' + description: Create prompt version payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-02-01T14:30:00Z' + description: Give concise answers and cite relevant help-center articles. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + version: 2 + version_created_at: '2025-02-01T14:30:00Z' + id: d83ab666-61cc-5545-a83b-2424bb85467b + type: prompt-template-versions + schema: + $ref: '#/components/schemas/LLMObsPromptVersionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a new Agent Observability prompt version + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/prompts/{prompt_id}/versions/{version}: + get: + description: Get the full template of a single, specific version of an Agent Observability prompt. + operationId: GetLLMObsPromptVersion + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + - $ref: '#/components/parameters/LLMObsPromptVersionPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-02-01T14:30:00Z' + description: Give concise answers and cite relevant help-center articles. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + version: 2 + version_created_at: '2025-02-01T14:30:00Z' + id: d83ab666-61cc-5545-a83b-2424bb85467b + type: prompt-template-versions + schema: + $ref: '#/components/schemas/LLMObsPromptVersionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a specific Agent Observability prompt version + tags: + - Agent Observability + x-permission: + operator: OR + permissions: + - llm_observability_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the description, the feature-flag environments, or both, for a specific version of an Agent Observability prompt. + operationId: UpdateLLMObsPromptVersion + parameters: + - $ref: '#/components/parameters/LLMObsPromptIDPathParameter' + - $ref: '#/components/parameters/LLMObsPromptVersionPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Give concise answers and cite relevant help-center articles. + type: prompt-template-versions + schema: + $ref: '#/components/schemas/LLMObsUpdatePromptVersionRequest' + description: Update prompt version payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-02-01T14:30:00Z' + description: Give concise answers and cite relevant help-center articles. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + version: 2 + version_created_at: '2025-02-01T14:30:00Z' + id: d83ab666-61cc-5545-a83b-2424bb85467b + type: prompt-template-versions + schema: + $ref: '#/components/schemas/LLMObsPromptVersionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability prompt version + tags: + - Agent Observability + x-permission: + operator: AND + permissions: + - llm_observability_read + - llm_observability_write + - feature_flag_config_read + - feature_flag_config_write + - feature_flag_environment_config_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/spans/events: + get: + description: List Agent Observability spans matching the specified filters. + operationId: ListLLMObsSpans + parameters: + - description: Start of the time range. Accepts ISO 8601 or relative format (e.g., `now-15m`). Defaults to `now-15m`. + in: query + name: filter[from] + schema: + example: now-900s + type: string + - description: End of the time range. Accepts ISO 8601 or relative format. Defaults to `now`. + in: query + name: filter[to] + schema: + example: now + type: string + - description: Search query using Agent Observability query syntax. Supports attribute filters using the field:value syntax (e.g. session_id, trace_id, ml_app, meta.span.kind). When provided, structured field filters (`filter[span_id]`, `filter[trace_id]`, etc.) are ignored. + in: query + name: filter[query] + schema: + example: '@session_id:abc123def456' + type: string + - description: Filter by exact span ID. + in: query + name: filter[span_id] + schema: + type: string + - description: Filter by exact trace ID. + in: query + name: filter[trace_id] + schema: + type: string + - description: Filter by span kind (e.g., llm, agent, tool, task, workflow). + in: query + name: filter[span_kind] + schema: + type: string + - description: Filter by span name. + in: query + name: filter[span_name] + schema: + type: string + - description: Filter by ML application name. + in: query + name: filter[ml_app] + schema: + type: string + - description: Maximum number of spans to return. Defaults to `10`. + in: query + name: page[limit] + schema: + format: int64 + type: integer + - description: Cursor from the previous response to retrieve the next page. + in: query + name: page[cursor] + schema: + type: string + - description: Sort order for the results. + in: query + name: sort + schema: + type: string + - description: Whether to include attachment data in the response. Defaults to `true`. + in: query + name: include_attachments + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + summary: List spans for an ML app + value: + data: + - attributes: + duration: 1500000000 + ml_app: my-llm-app + model_name: gpt-4o + model_provider: openai + name: llm_call + span_id: abc123def456 + span_kind: llm + start_ns: 1705314600000000000 + status: ok + trace_id: trace-9a8b7c6d5e4f + id: abc123def456 + type: span + meta: + elapsed: 132 + page: {} + request_id: req-abc123 + status: done + session_id: + summary: List spans filtered by session ID + value: + data: + - attributes: + duration: 1500000000 + ml_app: my-llm-app + name: llm_call + span_id: abc123def456 + span_kind: llm + start_ns: 1705314600000000000 + status: ok + tags: + - session_id:abc123def456 + trace_id: trace-9a8b7c6d5e4f + id: abc123def456 + type: span + meta: + elapsed: 87 + page: {} + request_id: req-def456 + status: done + schema: + $ref: '#/components/schemas/LLMObsSpansResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability spans + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/spans/events/search: + post: + description: Search Agent Observability spans using structured filters in the request body. + operationId: SearchLLMObsSpans + requestBody: + content: + application/json: + examples: + default: + summary: Search spans for an ML app + value: + data: + attributes: + filter: + from: now-900s + ml_app: my-llm-app + span_kind: llm + to: now + options: + include_attachments: true + page: + limit: 10 + type: spans + session_id: + summary: Search all spans in a session + value: + data: + attributes: + filter: + from: now-900s + query: '@session_id:abc123def456' + to: now + options: + include_attachments: true + page: + limit: 50 + type: spans + schema: + $ref: '#/components/schemas/LLMObsSearchSpansRequest' + description: Search spans payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + duration: 1500000000 + ml_app: my-llm-app + model_name: gpt-4o + model_provider: openai + name: llm_call + span_id: abc123def456 + span_kind: llm + start_ns: 1705314600000000000 + status: ok + trace_id: trace-9a8b7c6d5e4f + id: abc123def456 + type: span + meta: + elapsed: 132 + page: {} + request_id: req-abc123 + status: done + schema: + $ref: '#/components/schemas/LLMObsSpansResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Search Agent Observability spans + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-clustered-points: + get: + description: |- + List the data points grouped into a topic. For a parent topic, points from all + of its leaf topics are returned. + operationId: ListLLMObsPatternsClusteredPoints + parameters: + - $ref: '#/components/parameters/LLMObsPatternsTopicIDQueryParameter' + - $ref: '#/components/parameters/LLMObsPatternsPageSizeQueryParameter' + - $ref: '#/components/parameters/LLMObsPatternsPageTokenQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + next_page_token: eyJvZmZzZXQiOjUwfQ== + points: + - event_id: AAAAAYabc123 + id: 9b0c1d2e-3f40-5a61-b728-c9d0e1f2a3b4 + input: How do I get a refund? + is_included: false + is_suggested: true + session_id: session-7c3f5a1b + span_id: '1234567890123456789' + topic_id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + topic_id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: clustered_points_response + schema: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns clustered points + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-configs: + get: + description: List all patterns configurations for the organization. + operationId: ListLLMObsPatternsConfigs + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + configs: + - created_at: '2024-01-15T10:30:00Z' + evp_query: '@ml_app:support-bot' + hierarchy_depth: 2 + id: a7c8d9e0-1234-5678-9abc-def012345678 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + scope: '' + updated_at: '2024-01-15T10:30:00Z' + id: '1000000001' + type: list_topic_discovery_configs_response + schema: + $ref: '#/components/schemas/LLMObsPatternsConfigsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns configurations + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create a new patterns configuration, or update an existing one when a configuration ID is provided. + operationId: UpsertLLMObsPatternsConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + evp_query: '@ml_app:support-bot' + hierarchy_depth: 2 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + type: topic_discovery_configs + schema: + $ref: '#/components/schemas/LLMObsPatternsConfigUpsertRequest' + description: Patterns configuration payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + evp_query: '@ml_app:support-bot' + hierarchy_depth: 2 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + scope: '' + updated_at: '2024-01-15T10:30:00Z' + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery_configs + schema: + $ref: '#/components/schemas/LLMObsPatternsConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create or update a patterns configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-configs/latest: + get: + description: Retrieve the patterns configuration for the organization. + operationId: GetLLMObsPatternsConfig + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + evp_query: '@ml_app:support-bot' + hierarchy_depth: 2 + name: Support chatbot topics + num_records: 1000 + sampling_ratio: 0.1 + scope: '' + updated_at: '2024-01-15T10:30:00Z' + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery_configs + schema: + $ref: '#/components/schemas/LLMObsPatternsConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a patterns configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-configs/{config_id}: + delete: + description: Delete a patterns configuration by its ID. + operationId: DeleteLLMObsPatternsConfig + parameters: + - $ref: '#/components/parameters/LLMObsPatternsConfigIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a patterns configuration + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-runs: + get: + description: List the completed patterns runs for a configuration. + operationId: ListLLMObsPatternsRuns + parameters: + - $ref: '#/components/parameters/LLMObsPatternsConfigIDQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + runs: + - completed_at: '2024-01-15T10:45:00Z' + created_at: '2024-01-15T10:30:00Z' + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + status: completed + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: list_topic_discovery_runs_response + schema: + $ref: '#/components/schemas/LLMObsPatternsRunsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns runs + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Start a patterns run for a given configuration. The run executes asynchronously. + operationId: TriggerLLMObsPatterns + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery + schema: + $ref: '#/components/schemas/LLMObsPatternsTriggerRequest' + description: Trigger patterns payload. + required: true + responses: + '202': + content: + application/json: + examples: + default: + value: + data: + attributes: + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + status: started + id: a7c8d9e0-1234-5678-9abc-def012345678 + type: topic_discovery_run + schema: + $ref: '#/components/schemas/LLMObsPatternsTriggerResponse' + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Trigger a patterns run + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-runs/status: + get: + description: |- + Retrieve the status and step-by-step progress of the current or most recent + patterns run for a configuration. + operationId: GetLLMObsPatternsRunStatus + parameters: + - $ref: '#/components/parameters/LLMObsPatternsConfigIDQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + progress: + - name: query_evp + started_at: '2024-01-15T10:30:05Z' + status: completed + - name: generate_topics + started_at: '2024-01-15T10:32:00Z' + status: running + status: running + step: generate_topics + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: topic_discovery_run_status + schema: + $ref: '#/components/schemas/LLMObsPatternsRunStatusResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get patterns run status + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-topics: + get: + description: |- + List the topics discovered by a patterns run. When no run is specified, + the most recent completed run is used. + operationId: ListLLMObsPatternsTopics + parameters: + - $ref: '#/components/parameters/LLMObsPatternsConfigIDQueryParameter' + - $ref: '#/components/parameters/LLMObsPatternsRunIDQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_at: '2024-01-15T10:45:00Z' + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + created_at: '2024-01-15T10:30:00Z' + previous_run_id: '' + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + topics: + - created_at: '2024-01-15T10:44:00Z' + description: Questions about invoices, charges, and refunds. + first_seen_at: '2024-01-15T10:44:00Z' + hierarchy_level: 0 + id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + is_validated: true + name: Billing questions + parent_topic_id: '' + point_count: 125 + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: get_topics_response + schema: + $ref: '#/components/schemas/LLMObsPatternsTopicsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns topics + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/topic-discovery-topics/with-cluster-points: + get: + description: |- + List the topics discovered by a patterns run, with the clustered points attached + inline to each leaf topic. When no run is specified, the most recent completed + run is used. + operationId: ListLLMObsPatternsTopicsWithClusteredPoints + parameters: + - $ref: '#/components/parameters/LLMObsPatternsConfigIDQueryParameter' + - $ref: '#/components/parameters/LLMObsPatternsRunIDQueryParameter' + - $ref: '#/components/parameters/LLMObsPatternsIncludeMetricsQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_at: '2024-01-15T10:45:00Z' + config_id: a7c8d9e0-1234-5678-9abc-def012345678 + created_at: '2024-01-15T10:30:00Z' + previous_run_id: '' + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + topics: + - cluster_points: + - duration: 1500000 + estimated_total_cost: 0.0021 + evaluation: + sentiment: positive + input_tokens: 128 + output_tokens: 64 + span_id: '1234567890123456789' + status: ok + total_tokens: 192 + created_at: '2024-01-15T10:44:00Z' + description: Questions about invoices, charges, and refunds. + first_seen_at: '2024-01-15T10:44:00Z' + hierarchy_level: 0 + id: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + is_validated: true + name: Billing questions + parent_topic_id: '' + point_count: 125 + run_id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: get_topics_with_cluster_points_response + schema: + $ref: '#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List patterns topics with clustered points + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets: + get: + description: List all Agent Observability datasets for a project, sorted by creation date, newest first. + operationId: ListLLMObsDatasets + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + - description: Filter datasets by name. + in: query + name: filter[name] + schema: + type: string + - description: Filter datasets by dataset ID. + in: query + name: filter[id] + schema: + type: string + - description: Use the Pagination cursor to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: Maximum number of results to return per page. + in: query + name: page[limit] + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + current_version: 1 + description: '' + metadata: null + name: My LLM Dataset + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000005 + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability datasets + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new Agent Observability dataset within the specified project. + operationId: CreateLLMObsDataset + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My LLM Dataset + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetRequest' + description: Create dataset payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + current_version: 1 + description: '' + metadata: null + name: My LLM Dataset + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000006 + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetResponse' + description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + current_version: 1 + description: '' + metadata: null + name: My LLM Dataset + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000007 + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/delete: + post: + description: Delete one or more Agent Observability datasets within the specified project. + operationId: DeleteLLMObsDatasets + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dataset_ids: + - 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDeleteDatasetsRequest' + description: Delete datasets payload. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability datasets + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}: + patch: + description: Partially update an existing Agent Observability dataset within the specified project. + operationId: UpdateLLMObsDataset + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + - $ref: '#/components/parameters/LLMObsDatasetIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetUpdateRequest' + description: Update dataset payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + current_version: 1 + description: '' + metadata: null + name: My LLM Dataset + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000008 + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/batch_update: + post: + description: Insert, update, and delete records in a single dataset operation. By default, a new dataset version is created when the batch is applied. + operationId: BatchUpdateLLMObsDataset + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + create_new_version: true + delete_records: + - rec-old-record-1 + insert_records: + - expected_output: + answer: Paris + input: + question: What is the capital of France? + tags: + - topic:geography + update_records: + - expected_output: + answer: Paris, France + id: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateRequest' + description: Batch update payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: '2024-01-15T10:30:00Z' + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + expected_output: + answer: Paris, France + id: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + input: + question: What is the capital of France? + metadata: null + updated_at: '2024-01-15T10:30:00Z' + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsMutationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '413': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Payload Too Large + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Batch update Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/clone: + post: + description: Clone a dataset, copying its current records into a new dataset within the same project. + operationId: CloneLLMObsDataset + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the source Agent Observability dataset to clone. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Clone of the original dataset for experimentation. + name: My cloned dataset + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetCloneRequest' + description: Clone dataset payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + current_version: 0 + description: Clone of the original dataset for experimentation. + metadata: null + name: My cloned dataset + updated_at: '2024-01-15T10:30:00Z' + id: 7c8d4e9a-1234-5678-9abc-def012345678 + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Clone an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state: + get: + description: Retrieve the draft state of a dataset, including whether it is currently locked for editing and which user holds the lock. + operationId: GetLLMObsDatasetDraftState + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + drafting_since: '2024-01-15T10:30:00Z' + user: + email: jane.doe@example.com + handle: jane.doe@example.com + id: 00000000-0000-0000-0000-000000000010 + name: Jane Doe + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: draft_state_data + schema: + $ref: '#/components/schemas/LLMObsDatasetDraftStateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get Agent Observability dataset draft state + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/lock: + patch: + description: Acquire the draft lock on a dataset for the calling user. The lock prevents other users from concurrently editing the dataset draft. + operationId: LockLLMObsDatasetDraftState + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + drafting_since: '2024-01-15T10:30:00Z' + user: + email: jane.doe@example.com + handle: jane.doe@example.com + id: 00000000-0000-0000-0000-000000000010 + name: Jane Doe + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: draft_state_data + schema: + $ref: '#/components/schemas/LLMObsDatasetDraftStateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Lock Agent Observability dataset draft state + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/draft_state/unlock: + patch: + description: Release the draft lock on a dataset held by the calling user, allowing other users to edit the dataset draft. + operationId: UnlockLLMObsDatasetDraftState + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Unlock Agent Observability dataset draft state + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/export: + get: + description: Download the contents of a dataset as a CSV file. The download is streamed and includes one row per dataset record. + operationId: ExportLLMObsDataset + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + - description: Export format for the dataset contents. Only `csv` is currently supported. + in: query + name: format + schema: + $ref: '#/components/schemas/LLMObsDatasetExportFormat' + - description: Version of the dataset to export. If omitted, the current version is used. Must be between 0 and the current version of the dataset, inclusive. + in: query + name: version + schema: + format: int64 + maximum: 2147483647 + type: integer + responses: + '200': + content: + text/csv: + examples: + default: + value: |- + id,input,expected_output,metadata,tags + rec-1,"What is 2+2?","4",{},"" + schema: + type: string + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Export an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records: + get: + description: List all records in an Agent Observability dataset, sorted by creation date, newest first. + operationId: ListLLMObsDatasetRecords + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + - $ref: '#/components/parameters/LLMObsDatasetIDPathParameter' + - description: Retrieve records from a specific dataset version. Defaults to the current version. + in: query + name: filter[version] + schema: + format: int64 + type: integer + - description: Use the Pagination cursor to retrieve the next page of results. + in: query + name: page[cursor] + schema: + type: string + - description: Maximum number of results to return per page. + in: query + name: page[limit] + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000022 + expected_output: + answer: Paris + id: 00000000-0000-0000-0000-000000000021 + input: + question: What is the capital of France? + metadata: null + updated_at: '2024-01-01T00:00:00+00:00' + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update one or more existing records in an Agent Observability dataset. + operationId: UpdateLLMObsDatasetRecords + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + - $ref: '#/components/parameters/LLMObsDatasetIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + records: + - id: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: records + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsUpdateRequest' + description: Update records payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000028 + expected_output: + answer: Paris + id: 00000000-0000-0000-0000-000000000027 + input: + question: What is the capital of France? + metadata: null + updated_at: '2024-01-01T00:00:00+00:00' + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsMutationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Append one or more records to an Agent Observability dataset. + operationId: CreateLLMObsDatasetRecords + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + - $ref: '#/components/parameters/LLMObsDatasetIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: records + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsRequest' + description: Append records payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000024 + expected_output: + answer: Paris + id: 00000000-0000-0000-0000-000000000023 + input: + question: What is the capital of France? + metadata: null + updated_at: '2024-01-01T00:00:00+00:00' + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsMutationResponse' + description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + - records: + - created_at: '2024-01-01T00:00:00+00:00' + dataset_id: 00000000-0000-0000-0000-000000000026 + expected_output: + answer: Paris + id: 00000000-0000-0000-0000-000000000025 + input: + question: What is the capital of France? + metadata: null + updated_at: '2024-01-01T00:00:00+00:00' + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsMutationResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Append records to an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/records/delete: + post: + description: Delete one or more records from an Agent Observability dataset. + operationId: DeleteLLMObsDatasetRecords + parameters: + - $ref: '#/components/parameters/LLMObsProjectIDPathParameter' + - $ref: '#/components/parameters/LLMObsDatasetIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + record_ids: + - rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: records + schema: + $ref: '#/components/schemas/LLMObsDeleteDatasetRecordsRequest' + description: Delete records payload. + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete Agent Observability dataset records + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/restore: + post: + description: Restore a dataset to a previous version. The dataset's current version is bumped, and its records are replaced with the records from the specified prior version. + operationId: RestoreLLMObsDatasetVersion + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dataset_version: 1 + id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: datasets + schema: + $ref: '#/components/schemas/LLMObsDatasetRestoreVersionRequest' + description: Restore dataset version payload. + required: true + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Restore an Agent Observability dataset version + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v1/{project_id}/datasets/{dataset_id}/versions: + get: + description: List the active versions of a dataset. A version is created each time a dataset is referenced by an experiment run. + operationId: ListLLMObsDatasetVersions + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + last_used: '2024-01-15T10:30:00Z' + version_number: 1 + id: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: dataset_version + - attributes: + dataset_id: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + last_used: '2024-02-20T14:45:00Z' + version_number: 2 + id: 4ee7c6f1-9a01-5c2d-b8e1-6c95ef43a123 + type: dataset_version + schema: + $ref: '#/components/schemas/LLMObsDatasetVersionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability dataset versions + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v2/experiments/{experiment_id}/events: + get: + deprecated: true + description: 'Retrieve spans and experiment-level summary metrics for a given experiment. Returns the full events payload without pagination. Deprecated: use `ListLLMObsExperimentEventsV3` instead.' + operationId: ListLLMObsExperimentEventsV2 + parameters: + - $ref: '#/components/parameters/LLMObsExperimentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + spans: + - duration: 1500000000 + eval_metrics: [] + id: 00000000-0000-0000-0000-000000000002 + name: llm_call + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + tags: [] + trace_id: abc123def456 + summary_metrics: [] + id: 00000000-0000-0000-0000-000000000001 + type: experiment_events + schema: + $ref: '#/components/schemas/LLMObsExperimentEventsV2Response' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List Agent Observability experiment events (v2) + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v2/{project_id}/datasets/{dataset_id}/records/upload: + post: + description: |- + Upload records to a dataset from a file. The request is a `multipart/form-data` upload containing a single `file` part. + Currently only CSV is supported. The CSV must include an `input` column. Optional columns are `id`, `expected_output`, `metadata`, and `tags`. + + The response is a Server-Sent Events stream (`text/event-stream`) emitting progress updates while records are processed. The stream emits the following named events: + - `progress`: incremental record counts written so far. + - `completed`: terminal event with a JSON body containing `records_created`. + - `error`: terminal event with a JSON body containing an error `message`. + operationId: UploadLLMObsDatasetRecordsFile + parameters: + - description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + - description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + - description: Whether to skip records whose `input` already exists in the dataset. Defaults to `false`. + in: query + name: deduplicate + schema: + default: false + type: boolean + - description: Whether to overwrite existing records that share the same user-provided `id`. Defaults to `true`. + in: query + name: overwrite + schema: + default: true + type: boolean + - description: Tags to apply to every uploaded record, in addition to any tags defined on individual rows. Can be repeated, e.g. `tags=env:prod&tags=team:ai`. + in: query + name: tags + schema: + items: + type: string + type: array + - description: Whether to enrich the response with user metadata. + in: query + name: include[user_data] + schema: + type: boolean + requestBody: + content: + multipart/form-data: + examples: + default: + value: + file: records.csv + schema: + $ref: '#/components/schemas/LLMObsDatasetRecordsUploadFile' + description: Multipart upload payload containing the records file. + required: true + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Upload records to an Agent Observability dataset + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/llm-obs/v3/experiments/{experiment_id}/events: + get: + description: Retrieve spans and experiment-level summary metrics for a given experiment with cursor-based pagination. + operationId: ListLLMObsExperimentEvents + parameters: + - $ref: '#/components/parameters/LLMObsExperimentIDPathParameter' + - description: Maximum number of spans to return per page. Defaults to 5000. + in: query + name: page[limit] + schema: + default: 5000 + format: int64 + type: integer + - description: Opaque cursor from a previous response to fetch the next page of results. + in: query + name: page[cursor] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + spans: + - duration: 1500000000 + eval_metrics: [] + id: 00000000-0000-0000-0000-000000000002 + name: llm_call + span_id: span-7a1b2c3d + start_ns: 1705314600000000000 + status: ok + tags: [] + trace_id: abc123def456 + summary_metrics: [] + id: 00000000-0000-0000-0000-000000000001 + type: experiment_events + meta: + after: null + schema: + $ref: '#/components/schemas/LLMObsExperimentEventsV2Response' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List events for an Agent Observability experiment + tags: + - Agent Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/artifacts/content: + get: + description: Download the raw content of a Model Lab artifact file. + operationId: GetModelLabArtifactContent + parameters: + - description: ID of the project. + in: query + name: project_id + required: true + schema: + example: '1' + type: string + - description: Path to the artifact relative to the project directory. + in: query + name: artifact_path + required: true + schema: + example: runs/42/model/weights.pt + type: string + responses: + '200': + content: + application/octet-stream: + examples: + default: + value: + schema: + format: binary + type: string + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get Model Lab artifact content + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/facet-keys: + get: + description: List all available facet keys for filtering Model Lab runs. + operationId: ListModelLabRunFacetKeys + parameters: + - description: Filter by project ID. + in: query + name: filter[project_id] + required: true + schema: + example: 101 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: + - accuracy + - loss + parameters: + - learning_rate + - algorithm + tags: + - model + - stage + id: '1' + type: facet_keys + schema: + $ref: '#/components/schemas/ModelLabFacetKeysResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab run facet keys + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/facet-values: + get: + description: List available facet values for a specific run facet key. + operationId: ListModelLabRunFacetValues + parameters: + - description: Filter by project ID. + in: query + name: filter[project_id] + required: true + schema: + example: 101 + format: int64 + type: integer + - description: 'Facet type. Valid values: parameter, attribute, tag, metric.' + in: query + name: facet_type + required: true + schema: + $ref: '#/components/schemas/ModelLabFacetType' + - description: Facet name. + in: query + name: facet_name + required: true + schema: + example: algorithm + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_name: algorithm + facet_type: parameter + values: + - gpt4 + - dbscan + id: '1' + type: facet_values + schema: + $ref: '#/components/schemas/ModelLabFacetValuesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab run facet values + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/project-facet-keys: + get: + description: List all available facet keys for filtering Model Lab projects. + operationId: ListModelLabProjectFacetKeys + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + metrics: [] + parameters: [] + tags: + - model + - stage + id: '1' + type: facet_keys + schema: + $ref: '#/components/schemas/ModelLabFacetKeysResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab project facet keys + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/project-facet-values: + get: + description: List available facet values for a specific project facet key. + operationId: ListModelLabProjectFacetValues + parameters: + - description: 'Facet type. Valid values: tag.' + in: query + name: facet_type + required: true + schema: + $ref: '#/components/schemas/ModelLabProjectFacetType' + - description: Facet name. + in: query + name: facet_name + required: true + schema: + example: model + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + facet_name: model + facet_type: tag + values: + - opus + - gpt4 + id: '1' + type: facet_values + schema: + $ref: '#/components/schemas/ModelLabFacetValuesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab project facet values + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects: + get: + description: List all Model Lab projects for the current organization. + operationId: ListModelLabProjects + parameters: + - description: Text search filter for project name or description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by owner UUID. + in: query + name: filter[owner_id] + required: false + schema: + format: uuid + type: string + - description: 'Filter by tags. Format: key:value,key2:value2.' + in: query + name: filter[tags] + required: false + schema: + type: string + - description: 'Sort field. Valid values: name, created_at, updated_at. Prefix with ''-'' for descending order (e.g., -updated_at).' + in: query + name: sort + required: false + schema: + default: '-updated_at' + type: string + - description: Number of items per page. Maximum is 100. + in: query + name: page[size] + required: false + schema: + default: 25 + format: int64 + maximum: 100 + type: integer + - description: Page number (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + artifact_storage_location: s3://bucket/active-project + created_at: '2024-01-20T10:00:00Z' + description: A machine learning training project. + is_starred: false + name: active-project + tags: + - key: model + value: opus + updated_at: '2024-01-20T11:00:00Z' + id: '2' + type: projects + meta: + page: + number: 1 + size: 25 + total: 1 + schema: + $ref: '#/components/schemas/ModelLabProjectsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab projects + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}: + get: + description: Get a single Model Lab project by its ID. + operationId: GetModelLabProject + parameters: + - $ref: '#/components/parameters/ModelLabProjectIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + artifact_storage_location: s3://bucket/active-project + created_at: '2024-01-20T10:00:00Z' + description: A machine learning training project. + is_starred: false + name: active-project + tags: + - key: model + value: opus + updated_at: '2024-01-20T11:00:00Z' + id: '2' + type: projects + schema: + $ref: '#/components/schemas/ModelLabProjectResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}/artifacts: + get: + description: List all artifact files for a specific Model Lab project. + operationId: ListModelLabProjectArtifacts + parameters: + - $ref: '#/components/parameters/ModelLabProjectIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + files: + - artifact_path: projects/1/artifacts/model.pkl + created_at: '2024-01-20T10:00:00Z' + file_size: 204800 + filename: model.pkl + id: '1' + type: project_files + schema: + $ref: '#/components/schemas/ModelLabProjectArtifactsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab project artifacts + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/projects/{project_id}/star: + delete: + description: Remove the star from a Model Lab project for the current user. + operationId: UnstarModelLabProject + parameters: + - $ref: '#/components/parameters/ModelLabProjectIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Remove star from a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Star a Model Lab project for the current user. + operationId: StarModelLabProject + parameters: + - $ref: '#/components/parameters/ModelLabProjectIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Star a Model Lab project + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs: + get: + description: List all Model Lab runs for the current organization. + operationId: ListModelLabRuns + parameters: + - description: Filter by run ID(s). Comma-separated list for multiple IDs. + in: query + name: filter[id] + required: false + schema: + type: string + - description: Text search filter for run name or description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter by owner UUID. + in: query + name: filter[owner_id] + required: false + schema: + type: string + - description: 'Filter by run status. Valid values: pending, running, completed, failed, killed, unresponsive, paused.' + in: query + name: filter[status] + required: false + schema: + $ref: '#/components/schemas/ModelLabRunStatus' + - description: Filter by project ID. + in: query + name: filter[project_id] + required: false + schema: + format: int64 + type: integer + - description: 'Filter by tags. Format: key:value,key2:value2.' + in: query + name: filter[tags] + required: false + schema: + type: string + - description: 'Filter by params. Format: key:value,key2:>0.5,key3:true.' + in: query + name: filter[params] + required: false + schema: + type: string + - description: Filter by parent run ID. Use 'null' to return only root runs (runs with no parent). + in: query + name: filter[parent_run_id] + required: false + schema: + type: string + - description: Sort pinned runs before non-pinned runs. Pinned runs are ordered by pin time descending. + in: query + name: pinned_first + required: false + schema: + type: boolean + - description: Include all runs pinned by the current user, regardless of other filters. + in: query + name: include_pinned + required: false + schema: + type: boolean + - description: When true, also return runs whose descendants match the active filters. The descendant_match field in each result indicates whether the run was included via a descendant match. + in: query + name: include_descendant_matches + required: false + schema: + type: boolean + - description: 'Sort field. Valid values: name, created_at, updated_at, duration. Prefix with ''-'' for descending order (e.g., -updated_at).' + in: query + name: sort + required: false + schema: + default: '-updated_at' + type: string + - description: Number of items per page. Maximum is 100. + in: query + name: page[size] + required: false + schema: + default: 25 + format: int64 + maximum: 100 + type: integer + - description: Page number (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-20T10:00:00Z' + descendant_match: false + description: Fine-tuning run with custom hyperparameters. + has_children: false + is_pinned: false + metric_summaries: [] + mlflow_artifact_location: s3://bucket/active-run + name: active-run + params: + - key: algorithm + value: gpt4 + project_id: 101 + started_at: '2024-01-20T10:00:00Z' + status: running + tags: + - key: model + value: opus + updated_at: '2024-01-20T11:00:00Z' + id: '2' + type: runs + meta: + page: + number: 1 + size: 25 + total: 1 + schema: + $ref: '#/components/schemas/ModelLabRunsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab runs + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}: + delete: + description: Delete a Model Lab run by its ID. + operationId: DeleteModelLabRun + parameters: + - $ref: '#/components/parameters/ModelLabRunIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Delete a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single Model Lab run by its ID. + operationId: GetModelLabRun + parameters: + - $ref: '#/components/parameters/ModelLabRunIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-20T10:00:00Z' + descendant_match: false + description: Fine-tuning run with custom hyperparameters. + has_children: false + is_pinned: false + metric_summaries: [] + mlflow_artifact_location: s3://bucket/active-run + name: active-run + params: + - key: algorithm + value: gpt4 + project_id: 101 + started_at: '2024-01-20T10:00:00Z' + status: running + tags: + - key: model + value: opus + updated_at: '2024-01-20T11:00:00Z' + id: '2' + type: runs + schema: + $ref: '#/components/schemas/ModelLabRunResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}/artifacts: + get: + description: List artifact files for a specific Model Lab run. + operationId: ListModelLabRunArtifacts + parameters: + - $ref: '#/components/parameters/ModelLabRunIDPathParameter' + - description: Optional subdirectory path within the run's artifacts. + in: query + name: path + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + files: + - file_size: 204800 + is_dir: false + path: model/weights.pt + - is_dir: true + path: model + path_in_project: runs/42 + id: '42' + type: artifacts + schema: + $ref: '#/components/schemas/ModelLabRunArtifactsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List Model Lab run artifacts + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/model-lab-api/runs/{run_id}/pin: + delete: + description: Remove the pin from a Model Lab run for the current user. + operationId: UnpinModelLabRun + parameters: + - $ref: '#/components/parameters/ModelLabRunIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Unpin a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Pin a Model Lab run for the current user. + operationId: PinModelLabRun + parameters: + - $ref: '#/components/parameters/ModelLabRunIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Pin a Model Lab run + tags: + - Model Lab API + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). +components: + schemas: + LLMObsCustomEvalConfigListResponse: + description: Response containing a list of custom Agent Observability evaluator configurations. + properties: + data: + description: List of custom evaluator configuration data objects. + items: + $ref: '#/components/schemas/LLMObsCustomEvalConfigData' + type: array + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + LLMObsCustomEvalConfigResponse: + description: Response containing a custom Agent Observability evaluator configuration. + properties: + data: + $ref: '#/components/schemas/LLMObsCustomEvalConfigData' + required: + - data + type: object + LLMObsCustomEvalConfigUpdateRequest: + description: Request to create or update a custom Agent Observability evaluator configuration. + properties: + data: + $ref: '#/components/schemas/LLMObsCustomEvalConfigUpdateData' + required: + - data + type: object + LLMObsAnnotatedInteractionsByTraceResponse: + description: Response containing annotated interactions across all queues for the requested content IDs. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsByTraceDataResponse' + required: + - data + type: object + LLMObsAnnotationQueuesResponse: + description: Response containing a list of Agent Observability annotation queues. + properties: + data: + description: List of annotation queues. + items: + $ref: '#/components/schemas/LLMObsAnnotationQueueDataResponse' + type: array + required: + - data + type: object + LLMObsAnnotationQueueRequest: + description: Request to create an Agent Observability annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueDataRequest' + required: + - data + type: object + LLMObsAnnotationQueueResponse: + description: Response containing a single Agent Observability annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueDataResponse' + required: + - data + type: object + LLMObsAnnotationQueueUpdateRequest: + description: Request to update an Agent Observability annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueUpdateDataRequest' + required: + - data + type: object + LLMObsAnnotatedInteractionsResponse: + description: Response containing the annotated interactions for an annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsDataResponse' + required: + - data + type: object + LLMObsAnnotationsRequest: + description: Request to create or update annotations on interactions in an annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationsDataRequest' + required: + - data + type: object + LLMObsAnnotationsResponse: + description: Response containing the created or updated annotations. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationsDataResponse' + required: + - data + type: object + LLMObsDeleteAnnotationsRequest: + description: Request to delete annotations from an annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteAnnotationsDataRequest' + required: + - data + type: object + LLMObsDeleteAnnotationsResponse: + description: |- + Response for a batch annotation deletion. Partial errors are listed in the + response if any annotations could not be deleted. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteAnnotationsDataResponse' + required: + - data + type: object + LLMObsAnnotationQueueInteractionsRequest: + description: Request to add interactions to an Agent Observability annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsDataRequest' + required: + - data + type: object + LLMObsAnnotationQueueInteractionsResponse: + description: Response containing the result of adding interactions to an annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsDataResponse' + required: + - data + type: object + LLMObsDeleteAnnotationQueueInteractionsRequest: + description: Request to delete interactions from an Agent Observability annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteAnnotationQueueInteractionsDataRequest' + required: + - data + type: object + LLMObsAnnotationQueueLabelSchemaResponse: + description: Response containing the label schema of an annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaData' + required: + - data + type: object + LLMObsAnnotationQueueLabelSchemaUpdateRequest: + description: Request to update the label schema of an annotation queue. + properties: + data: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaUpdateData' + required: + - data + type: object + LLMObsExperimentationAnalyticsRequest: + description: Request to run an analytics aggregation over Agent Observability experimentation data. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsDataRequest' + required: + - data + type: object + LLMObsExperimentationAnalyticsResponse: + description: Response to an analytics query. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsDataResponse' + required: + - data + type: object + LLMObsExperimentationSearchRequest: + description: Request to search across Agent Observability experimentation entities using cursor-based pagination. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentationSearchDataRequest' + required: + - data + type: object + LLMObsExperimentationSearchResponse: + description: Response to a cursor-based experimentation search. Returns `200 OK` when all results fit in one page; `206 Partial Content` when a next-page cursor is available. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentationSearchDataResponse' + meta: + $ref: '#/components/schemas/LLMObsCursorMeta' + required: + - data + type: object + LLMObsExperimentationSimpleSearchRequest: + description: Request to search across Agent Observability experimentation entities using offset-based pagination. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchDataRequest' + required: + - data + type: object + LLMObsExperimentationSimpleSearchResponse: + description: Response to an offset-based experimentation simple search. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchDataResponse' + meta: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchMeta' + required: + - data + type: object + LLMObsExperimentsResponse: + description: Response containing a list of Agent Observability experiments. + properties: + data: + description: List of experiments. + items: + $ref: '#/components/schemas/LLMObsExperimentDataResponse' + type: array + meta: + $ref: '#/components/schemas/LLMObsCursorMeta' + required: + - data + type: object + LLMObsExperimentRequest: + description: Request to create an Agent Observability experiment. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentDataRequest' + required: + - data + type: object + LLMObsExperimentResponse: + description: Response containing a single Agent Observability experiment. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentDataResponse' + required: + - data + type: object + LLMObsDeleteExperimentsRequest: + description: Request to delete one or more Agent Observability experiments. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteExperimentsDataRequest' + required: + - data + type: object + LLMObsExperimentUpdateRequest: + description: Request to partially update an Agent Observability experiment. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentUpdateDataRequest' + required: + - data + type: object + LLMObsExperimentSpansResponse: + description: Response for listing experiment spans (v1). Returns only spans with their evaluation metrics. No summary metrics or pagination are included. Deprecated in favor of `ListLLMObsExperimentEventsV3`. + properties: + data: + description: List of experiment spans with their evaluation metrics. + items: + $ref: '#/components/schemas/LLMObsExperimentSpanDataResponse' + type: array + required: + - data + type: object + LLMObsExperimentEventsRequest: + description: Request to push spans and metrics for an Agent Observability experiment. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentEventsDataRequest' + required: + - data + type: object + LLMObsIntegrationAccount: + description: A configured account for an LLM provider integration. + properties: + account_id: + description: Provider-specific account identifier. + example: org-XYZ123 + type: string + account_name: + description: Human-readable name for the integration account. + example: Production OpenAI + type: string + account_region: + description: Provider region associated with the account, if applicable. + example: us-east-1 + type: string + azure_openai_metadata: + $ref: '#/components/schemas/LLMObsAzureOpenAIMetadata' + id: + description: Unique identifier for the integration account. + example: account-abc123 + type: string + integration: + description: The name of the LLM provider integration. + example: openai + type: string + vertex_ai_metadata: + $ref: '#/components/schemas/LLMObsVertexAIMetadata' + required: + - id + - account_id + - account_name + - integration + type: object + LLMObsIntegrationInferenceRequest: + description: Parameters for an LLM inference request. + properties: + anthropic_metadata: + $ref: '#/components/schemas/LLMObsAnthropicMetadata' + nullable: true + azure_openai_metadata: + $ref: '#/components/schemas/LLMObsAzureOpenAIMetadata' + nullable: true + bedrock_metadata: + $ref: '#/components/schemas/LLMObsBedrockMetadata' + nullable: true + frequency_penalty: + description: Penalty for token frequency to reduce repetition. + example: 0 + format: double + nullable: true + type: number + json_schema: + description: JSON schema for structured output, if supported by the model. + example: '{"type":"object","properties":{"answer":{"type":"string"}}}' + nullable: true + type: string + max_completion_tokens: + description: Maximum number of completion tokens to generate (alternative to max_tokens for some providers). + example: 1024 + format: int64 + nullable: true + type: integer + max_tokens: + description: Maximum number of tokens to generate. + example: 1024 + format: int64 + nullable: true + type: integer + messages: + $ref: '#/components/schemas/LLMObsInferenceMessagesList' + model_id: + description: The model identifier to use for inference. + example: gpt-4o + type: string + openai_metadata: + $ref: '#/components/schemas/LLMObsOpenAIMetadata' + nullable: true + presence_penalty: + description: Penalty for token presence to encourage topic diversity. + example: 0 + format: double + nullable: true + type: number + temperature: + description: Sampling temperature between 0 and 2. Higher values produce more random output. + example: 0.7 + format: double + nullable: true + type: number + tools: + $ref: '#/components/schemas/LLMObsInferenceToolsList' + top_k: + description: Top-K sampling parameter. + example: 50 + format: int64 + nullable: true + type: integer + top_p: + description: Nucleus sampling probability mass. + example: 1 + format: double + nullable: true + type: number + vertex_ai_metadata: + $ref: '#/components/schemas/LLMObsVertexAIMetadata' + nullable: true + required: + - model_id + - messages + type: object + LLMObsIntegrationInferenceResponse: + description: The result of an LLM inference request, including input parameters and the model response. + properties: + anthropic_metadata: + $ref: '#/components/schemas/LLMObsAnthropicMetadata' + nullable: true + azure_openai_metadata: + $ref: '#/components/schemas/LLMObsAzureOpenAIMetadata' + nullable: true + bedrock_metadata: + $ref: '#/components/schemas/LLMObsBedrockMetadata' + nullable: true + error_response: + $ref: '#/components/schemas/LLMObsInferenceErrorResponse' + frequency_penalty: + description: Frequency penalty that was applied. + example: 0 + format: double + nullable: true + type: number + json_schema: + description: JSON schema that was applied for structured output. + example: '{"type":"object","properties":{"answer":{"type":"string"}}}' + nullable: true + type: string + max_completion_tokens: + description: Maximum number of completion tokens that were configured. + example: 1024 + format: int64 + nullable: true + type: integer + max_tokens: + description: Maximum number of tokens that were configured. + example: 1024 + format: int64 + nullable: true + type: integer + messages: + $ref: '#/components/schemas/LLMObsInferenceMessagesList' + model_id: + description: The model identifier used for inference. + example: gpt-4o + type: string + openai_metadata: + $ref: '#/components/schemas/LLMObsOpenAIMetadata' + nullable: true + presence_penalty: + description: Presence penalty that was applied. + example: 0 + format: double + nullable: true + type: number + response: + $ref: '#/components/schemas/LLMObsInferenceRunResult' + temperature: + description: Sampling temperature that was used. + example: 0.7 + format: double + nullable: true + type: number + tools: + $ref: '#/components/schemas/LLMObsInferenceToolsList' + top_k: + description: Top-K sampling parameter that was used. + example: 50 + format: int64 + nullable: true + type: integer + top_p: + description: Nucleus sampling parameter that was used. + example: 1 + format: double + nullable: true + type: number + vertex_ai_metadata: + $ref: '#/components/schemas/LLMObsVertexAIMetadata' + nullable: true + required: + - model_id + - messages + - response + type: object + LLMObsIntegrationModel: + description: A model available for a given LLM provider integration and account. + properties: + has_access: + description: Whether the account has access to this model. + example: true + type: boolean + id: + description: Unique identifier for the model entry. + example: gpt-4o + type: string + integration: + description: The name of the LLM provider integration. + example: openai + type: string + integration_display_name: + description: Human-readable name of the LLM provider integration. + example: OpenAI + type: string + json_schema: + description: Whether the model supports structured output via JSON schema. + example: true + type: boolean + model_display_name: + description: Human-readable model name. + example: GPT-4o + type: string + model_id: + description: Provider-specific model identifier used in inference calls. + example: gpt-4o + type: string + provider: + description: The underlying model provider. + example: openai + type: string + provider_display_name: + description: Human-readable name of the underlying model provider. + example: OpenAI + type: string + region_prefix_overrides: + $ref: '#/components/schemas/LLMObsIntegrationModelRegionPrefixOverrides' + required: + - id + - model_id + - model_display_name + - integration + - integration_display_name + - provider + - provider_display_name + - json_schema + - has_access + type: object + LLMObsProjectsResponse: + description: Response containing a list of Agent Observability projects. + properties: + data: + description: List of projects. + items: + $ref: '#/components/schemas/LLMObsProjectDataResponse' + type: array + meta: + $ref: '#/components/schemas/LLMObsCursorMeta' + required: + - data + type: object + LLMObsProjectRequest: + description: Request to create an Agent Observability project. + properties: + data: + $ref: '#/components/schemas/LLMObsProjectDataRequest' + required: + - data + type: object + LLMObsProjectResponse: + description: Response containing a single Agent Observability project. + properties: + data: + $ref: '#/components/schemas/LLMObsProjectDataResponse' + required: + - data + type: object + LLMObsDeleteProjectsRequest: + description: Request to delete one or more Agent Observability projects. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteProjectsDataRequest' + required: + - data + type: object + LLMObsProjectUpdateRequest: + description: Request to partially update an Agent Observability project. + properties: + data: + $ref: '#/components/schemas/LLMObsProjectUpdateDataRequest' + required: + - data + type: object + LLMObsPromptsResponse: + description: Response containing a list of Agent Observability prompts. + example: + data: + - attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + created_from: sdk-registry + description: Answers customer questions using the company knowledge base. + in_registry: true + last_version_created_at: '2025-02-01T14:30:00Z' + num_versions: 2 + prompt_id: customer-support-assistant + source: registry + title: Customer Support Assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + properties: + data: + description: List of Agent Observability prompts. + items: + $ref: '#/components/schemas/LLMObsPromptData' + type: array + required: + - data + type: object + LLMObsCreatePromptRequest: + description: Request to create an Agent Observability prompt. + properties: + data: + $ref: '#/components/schemas/LLMObsCreatePromptData' + required: + - data + type: object + LLMObsPromptResponse: + description: Response containing a single Agent Observability prompt. + example: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + created_from: sdk-registry + description: Answers customer questions using the company knowledge base. + in_registry: true + last_version_created_at: '2025-01-15T10:00:00Z' + num_versions: 1 + prompt_id: customer-support-assistant + source: registry + title: Customer Support Assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + properties: + data: + $ref: '#/components/schemas/LLMObsPromptData' + required: + - data + type: object + LLMObsDeletedPromptResponse: + description: Response confirming that an Agent Observability prompt was deleted. + example: + data: + attributes: + deleted_at: '2025-02-10T09:15:00Z' + prompt_id: customer-support-assistant + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + properties: + data: + $ref: '#/components/schemas/LLMObsDeletedPromptData' + required: + - data + type: object + LLMObsPromptSDKResponse: + description: Response containing a flattened Agent Observability prompt version for SDK consumption. + example: + data: + attributes: + chat_template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + prompt_id: customer-support-assistant + prompt_version_uuid: d83ab666-61cc-5545-a83b-2424bb85467b + version: '2' + id: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: prompt-templates + properties: + data: + $ref: '#/components/schemas/LLMObsPromptSDKData' + required: + - data + type: object + LLMObsUpdatePromptRequest: + description: Request to update an Agent Observability prompt's metadata. + properties: + data: + $ref: '#/components/schemas/LLMObsUpdatePromptData' + required: + - data + type: object + LLMObsPromptVersionsResponse: + description: Response containing the versions of an Agent Observability prompt. + example: + data: + - attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-02-01T14:30:00Z' + description: Give concise answers and cite relevant help-center articles. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + version: 2 + version_created_at: '2025-02-01T14:30:00Z' + id: d83ab666-61cc-5545-a83b-2424bb85467b + type: prompt-template-versions + - attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-01-15T10:00:00Z' + description: Initial customer support prompt. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + version: 1 + version_created_at: '2025-01-15T10:00:00Z' + id: 20e5280b-c75d-5699-8a70-a2773a751428 + type: prompt-template-versions + properties: + data: + description: Prompt versions ordered from newest to oldest. + items: + $ref: '#/components/schemas/LLMObsPromptVersionListData' + type: array + required: + - data + type: object + LLMObsCreatePromptVersionRequest: + description: Request to create a new version of an Agent Observability prompt. + properties: + data: + $ref: '#/components/schemas/LLMObsCreatePromptVersionData' + required: + - data + type: object + LLMObsPromptVersionResponse: + description: Response containing a specific version of an Agent Observability prompt. + example: + data: + attributes: + author: 3b12f1df-14fd-4e12-bd6f-4a2f5c8b3d1e + created_at: '2025-02-01T14:30:00Z' + description: Give concise answers and cite relevant help-center articles. + prompt_id: customer-support-assistant + prompt_uuid: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + template: + - content: You are a helpful customer support assistant for {{company_name}}. + role: system + - content: 'Help {{customer_name}} with this question: {{question}}' + role: user + version: 2 + version_created_at: '2025-02-01T14:30:00Z' + id: d83ab666-61cc-5545-a83b-2424bb85467b + type: prompt-template-versions + properties: + data: + $ref: '#/components/schemas/LLMObsPromptVersionData' + required: + - data + type: object + LLMObsUpdatePromptVersionRequest: + description: Request to update an Agent Observability prompt version's metadata or feature-flag environments. + properties: + data: + $ref: '#/components/schemas/LLMObsUpdatePromptVersionData' + required: + - data + type: object + LLMObsSpansResponse: + description: Response containing a list of Agent Observability spans. + properties: + data: + description: List of spans matching the query. + items: + $ref: '#/components/schemas/LLMObsSpanData' + type: array + links: + $ref: '#/components/schemas/LLMObsSpansResponseLinks' + meta: + $ref: '#/components/schemas/LLMObsSpansResponseMeta' + required: + - data + - meta + type: object + LLMObsSearchSpansRequest: + description: Request body for searching Agent Observability spans. + properties: + data: + $ref: '#/components/schemas/LLMObsSearchSpansRequestData' + required: + - data + type: object + LLMObsPatternsClusteredPointsResponse: + description: Response containing the clustered points of an Agent Observability topic. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointsResponseData' + required: + - data + type: object + LLMObsPatternsConfigsResponse: + description: Response containing a list of Agent Observability patterns configurations. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsConfigsResponseData' + required: + - data + type: object + LLMObsPatternsConfigUpsertRequest: + description: Request to create or update an Agent Observability patterns configuration. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsConfigUpsertRequestData' + required: + - data + type: object + LLMObsPatternsConfigResponse: + description: Response containing a single Agent Observability patterns configuration. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsConfigResponseData' + required: + - data + type: object + LLMObsPatternsRunsResponse: + description: Response containing the completed runs of an Agent Observability patterns configuration. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsRunsResponseData' + required: + - data + type: object + LLMObsPatternsTriggerRequest: + description: Request to trigger an Agent Observability patterns run. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsTriggerRequestData' + required: + - data + type: object + LLMObsPatternsTriggerResponse: + description: Response after triggering an Agent Observability patterns run. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsTriggerResponseData' + required: + - data + type: object + LLMObsPatternsRunStatusResponse: + description: Response containing the status of an Agent Observability patterns run. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsRunStatusResponseData' + required: + - data + type: object + LLMObsPatternsTopicsResponse: + description: Response containing the topics discovered by an Agent Observability patterns run. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsTopicsResponseData' + required: + - data + type: object + LLMObsPatternsTopicsWithClusteredPointsResponse: + description: |- + Response containing the topics, and the clustered points of their leaf topics, + discovered by an Agent Observability patterns run. + properties: + data: + $ref: '#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsResponseData' + required: + - data + type: object + LLMObsDatasetsResponse: + description: Response containing a list of Agent Observability datasets. + properties: + data: + description: List of datasets. + items: + $ref: '#/components/schemas/LLMObsDatasetDataResponse' + type: array + meta: + $ref: '#/components/schemas/LLMObsCursorMeta' + required: + - data + type: object + LLMObsDatasetRequest: + description: Request to create an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetDataRequest' + required: + - data + type: object + LLMObsDatasetResponse: + description: Response containing a single Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetDataResponse' + required: + - data + type: object + LLMObsDeleteDatasetsRequest: + description: Request to delete one or more Agent Observability datasets. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteDatasetsDataRequest' + required: + - data + type: object + LLMObsDatasetUpdateRequest: + description: Request to partially update an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetUpdateDataRequest' + required: + - data + type: object + LLMObsDatasetBatchUpdateRequest: + description: Request to batch-insert, update, and delete records in an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateDataRequest' + required: + - data + type: object + LLMObsDatasetRecordsMutationResponse: + description: Response containing records after a create or update operation. + properties: + data: + description: List of affected dataset records. + items: + $ref: '#/components/schemas/LLMObsDatasetRecordsMutationData' + type: array + required: + - data + type: object + LLMObsDatasetCloneRequest: + description: Request to clone an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetCloneDataRequest' + required: + - data + type: object + LLMObsDatasetDraftStateResponse: + description: Response containing the draft state of an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetDraftStateData' + required: + - data + type: object + LLMObsDatasetExportFormat: + default: csv + description: Supported export format for an Agent Observability dataset. + enum: + - csv + example: csv + type: string + x-enum-varnames: + - CSV + LLMObsDatasetRecordsListResponse: + description: Response containing a paginated list of Agent Observability dataset records. + properties: + data: + description: List of dataset records. + items: + $ref: '#/components/schemas/LLMObsDatasetRecordDataResponse' + type: array + meta: + $ref: '#/components/schemas/LLMObsCursorMeta' + required: + - data + type: object + LLMObsDatasetRecordsUpdateRequest: + description: Request to update records in an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetRecordsUpdateDataRequest' + required: + - data + type: object + LLMObsDatasetRecordsRequest: + description: Request to append records to an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetRecordsDataRequest' + required: + - data + type: object + LLMObsDeleteDatasetRecordsRequest: + description: Request to delete records from an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDeleteDatasetRecordsDataRequest' + required: + - data + type: object + LLMObsDatasetRestoreVersionRequest: + description: Request to restore an Agent Observability dataset to a previous version. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetRestoreVersionDataRequest' + required: + - data + type: object + LLMObsDatasetVersionsResponse: + description: Response containing the active versions of an Agent Observability dataset. + properties: + data: + $ref: '#/components/schemas/LLMObsDatasetVersionsResponseData' + required: + - data + type: object + LLMObsExperimentEventsV2Response: + description: Response for listing experiment events (v2/v3). Returns spans and summary metrics in a single resource. + properties: + data: + $ref: '#/components/schemas/LLMObsExperimentEventsV2DataResponse' + meta: + $ref: '#/components/schemas/LLMObsCursorMeta' + required: + - data + type: object + LLMObsDatasetRecordsUploadFile: + description: Multipart payload for uploading dataset records from a file. + properties: + file: + description: The records file to upload. Currently only CSV is supported. The file must include an `input` column. Optional columns include `id`, `expected_output`, `metadata`, and `tags`. + format: binary + type: string + type: object + ModelLabFacetKeysResponse: + description: Response containing available facet keys. + properties: + data: + $ref: '#/components/schemas/ModelLabFacetKeysData' + required: + - data + type: object + ModelLabFacetType: + description: The type of facet for filtering Model Lab runs. + enum: + - parameter + - attribute + - tag + - metric + example: tag + type: string + x-enum-varnames: + - PARAMETER + - ATTRIBUTE + - TAG + - METRIC + ModelLabFacetValuesResponse: + description: Response containing available values for a facet key. + properties: + data: + $ref: '#/components/schemas/ModelLabFacetValuesData' + required: + - data + type: object + ModelLabProjectFacetType: + description: The type of facet for filtering Model Lab projects. + enum: + - tag + example: tag + type: string + x-enum-varnames: + - TAG + ModelLabProjectsResponse: + description: Response containing a list of Model Lab projects with pagination metadata. + properties: + data: + description: The list of projects. + items: + $ref: '#/components/schemas/ModelLabProjectData' + type: array + links: + $ref: '#/components/schemas/ModelLabPaginationLinks' + meta: + $ref: '#/components/schemas/ModelLabPageMeta' + required: + - data + - meta + type: object + ModelLabProjectResponse: + description: Response containing a single Model Lab project. + properties: + data: + $ref: '#/components/schemas/ModelLabProjectData' + required: + - data + type: object + ModelLabProjectArtifactsResponse: + description: Response containing the artifact listing for a Model Lab project. + properties: + data: + $ref: '#/components/schemas/ModelLabProjectArtifactsData' + required: + - data + type: object + ModelLabRunStatus: + description: The status of a Model Lab run. + enum: + - pending + - running + - completed + - failed + - killed + - unresponsive + - paused + example: running + type: string + x-enum-varnames: + - PENDING + - RUNNING + - COMPLETED + - FAILED + - KILLED + - UNRESPONSIVE + - PAUSED + ModelLabRunsResponse: + description: Response containing a list of Model Lab runs with pagination metadata. + properties: + data: + description: The list of runs. + items: + $ref: '#/components/schemas/ModelLabRunData' + type: array + links: + $ref: '#/components/schemas/ModelLabPaginationLinks' + meta: + $ref: '#/components/schemas/ModelLabPageMeta' + required: + - data + - meta + type: object + ModelLabRunResponse: + description: Response containing a single Model Lab run. + properties: + data: + $ref: '#/components/schemas/ModelLabRunData' + required: + - data + type: object + ModelLabRunArtifactsResponse: + description: Response containing the artifact listing for a Model Lab run. + properties: + data: + $ref: '#/components/schemas/ModelLabRunArtifactsData' + required: + - data + type: object + LLMObsCustomEvalConfigData: + description: Data object for a custom Agent Observability evaluator configuration. + properties: + attributes: + $ref: '#/components/schemas/LLMObsCustomEvalConfigAttributes' + id: + description: Unique name identifier of the evaluator configuration. + example: my-custom-evaluator + type: string + type: + $ref: '#/components/schemas/LLMObsCustomEvalConfigType' + required: + - id + - type + - attributes + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + LLMObsCustomEvalConfigUpdateData: + description: Data object for creating or updating a custom Agent Observability evaluator configuration. + properties: + attributes: + $ref: '#/components/schemas/LLMObsCustomEvalConfigUpdateAttributes' + id: + description: Name of the evaluator. If provided, must match the eval_name path parameter. + example: my-custom-evaluator + type: string + type: + $ref: '#/components/schemas/LLMObsCustomEvalConfigType' + required: + - type + - attributes + type: object + LLMObsAnnotatedInteractionsByTraceDataResponse: + description: Data object for the cross-queue annotated interactions response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsByTraceDataAttributesResponse' + id: + description: Opaque identifier for the response object. + example: trace-query + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsByTraceType' + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueDataResponse: + description: Data object for an Agent Observability annotation queue. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueDataAttributesResponse' + id: + description: Unique identifier of the annotation queue. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueType' + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueDataRequest: + description: Data object for creating an Agent Observability annotation queue. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueType' + required: + - type + - attributes + type: object + LLMObsAnnotationQueueUpdateDataRequest: + description: Data object for updating an Agent Observability annotation queue. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueUpdateDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueType' + required: + - type + - attributes + type: object + LLMObsAnnotatedInteractionsDataResponse: + description: Data object for annotated interactions. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsDataAttributesResponse' + id: + description: The annotation queue ID. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionsType' + required: + - id + - type + - attributes + type: object + LLMObsAnnotationsDataRequest: + description: Data object for creating or updating annotations. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsAnnotationsType' + required: + - type + - attributes + type: object + LLMObsAnnotationsDataResponse: + description: Data object for the annotations response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationsDataAttributesResponse' + id: + description: The annotation queue ID. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotationsType' + required: + - id + - type + - attributes + type: object + LLMObsDeleteAnnotationsDataRequest: + description: Data object for deleting annotations. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteAnnotationsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsAnnotationsType' + required: + - type + - attributes + type: object + LLMObsDeleteAnnotationsDataResponse: + description: Data object for the annotation deletion response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteAnnotationsDataAttributesResponse' + id: + description: The annotation queue ID. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotationsType' + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueInteractionsDataRequest: + description: Data object for adding interactions to an annotation queue. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsType' + required: + - type + - attributes + type: object + LLMObsAnnotationQueueInteractionsDataResponse: + description: Data object for the interaction addition response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsDataAttributesResponse' + id: + description: The queue ID the interactions were added to. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsType' + required: + - id + - type + - attributes + type: object + LLMObsDeleteAnnotationQueueInteractionsDataRequest: + description: Data object for deleting interactions from an annotation queue. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteAnnotationQueueInteractionsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionsType' + required: + - type + - attributes + type: object + LLMObsAnnotationQueueLabelSchemaData: + description: Data object for an annotation queue label schema. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaAttributes' + id: + description: Unique identifier of the annotation queue. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueType' + required: + - id + - type + - attributes + type: object + LLMObsAnnotationQueueLabelSchemaUpdateData: + description: Data object for updating an annotation queue label schema. + properties: + attributes: + $ref: '#/components/schemas/LLMObsAnnotationQueueLabelSchemaUpdateAttributes' + type: + $ref: '#/components/schemas/LLMObsAnnotationQueueType' + required: + - type + - attributes + type: object + LLMObsExperimentationAnalyticsDataRequest: + description: Data object for an analytics request. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsExperimentationType' + required: + - type + - attributes + type: object + LLMObsExperimentationAnalyticsDataResponse: + description: JSON:API data object for an analytics response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsDataAttributesResponse' + id: + description: Server-generated identifier for this analytics result. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsExperimentationType' + required: + - id + - type + - attributes + type: object + LLMObsExperimentationSearchDataRequest: + description: Data object for an experimentation search request. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentationSearchDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsExperimentationType' + required: + - type + - attributes + type: object + LLMObsExperimentationSearchDataResponse: + description: JSON:API data object for an experimentation search response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentationSearchResults' + id: + description: Server-generated identifier for this search result. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsExperimentationType' + required: + - id + - type + - attributes + type: object + LLMObsCursorMeta: + description: Pagination cursor metadata. + properties: + after: + description: Cursor for the next page of results. + nullable: true + type: string + type: object + LLMObsExperimentationSimpleSearchDataRequest: + description: Data object for an experimentation simple search request. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsExperimentationType' + required: + - type + - attributes + type: object + LLMObsExperimentationSimpleSearchDataResponse: + description: JSON:API data object for a simple search response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentationSearchResults' + id: + description: Server-generated identifier for this search result. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsExperimentationType' + required: + - id + - type + - attributes + type: object + LLMObsExperimentationSimpleSearchMeta: + description: Pagination metadata for a simple search response. + properties: + page: + $ref: '#/components/schemas/LLMObsExperimentationSimpleSearchMetaPage' + type: object + LLMObsExperimentDataResponse: + description: Data object for an Agent Observability experiment. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentDataAttributesResponse' + id: + description: Unique identifier of the experiment. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + type: + $ref: '#/components/schemas/LLMObsExperimentType' + required: + - id + - type + - attributes + type: object + LLMObsExperimentDataRequest: + description: Data object for creating an Agent Observability experiment. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsExperimentType' + required: + - type + - attributes + type: object + LLMObsDeleteExperimentsDataRequest: + description: Data object for deleting Agent Observability experiments. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteExperimentsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsExperimentType' + required: + - type + - attributes + type: object + LLMObsExperimentUpdateDataRequest: + description: Data object for updating an Agent Observability experiment. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentUpdateDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsExperimentType' + required: + - type + - attributes + type: object + LLMObsExperimentSpanDataResponse: + description: JSON:API data item wrapping a single experiment span with evaluations. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentSpanWithEvals' + id: + description: Unique identifier of the span. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/LLMObsExperimentSpanType' + required: + - id + - type + - attributes + type: object + LLMObsExperimentEventsDataRequest: + description: Data object for pushing experiment events. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentEventsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsEventType' + required: + - type + - attributes + type: object + LLMObsIntegrationName: + description: The name of a supported LLM provider integration. + enum: + - openai + - amazon_bedrock + - anthropic + - azure_openai + - vertex_ai + - llmproxy + example: openai + type: string + x-enum-varnames: + - OPENAI + - AMAZON_BEDROCK + - ANTHROPIC + - AZURE_OPENAI + - VERTEX_AI + - LLMPROXY + LLMObsAzureOpenAIMetadata: + description: Azure OpenAI-specific metadata for an integration account or inference request. + properties: + deployment_id: + description: The Azure OpenAI deployment ID. + example: my-gpt4-deployment + type: string + model_version: + description: The model version deployed in Azure. + example: '0613' + type: string + resource_name: + description: The Azure OpenAI resource name. + example: my-azure-resource + type: string + type: object + LLMObsVertexAIMetadata: + description: Vertex AI-specific metadata for an integration account or inference request. + properties: + location: + description: The Vertex AI region. + example: us-central1 + type: string + project: + description: The Google Cloud project ID. + example: my-gcp-project + type: string + project_ids: + description: List of Google Cloud project IDs available to the service account. + example: + - my-gcp-project + items: + type: string + type: array + type: object + LLMObsAnthropicMetadata: + description: Anthropic-specific metadata for an inference request. + properties: + effort: + $ref: '#/components/schemas/LLMObsAnthropicEffort' + thinking: + $ref: '#/components/schemas/LLMObsAnthropicThinkingConfig' + nullable: true + type: object + LLMObsBedrockMetadata: + description: Amazon Bedrock-specific metadata for an inference request. + properties: + region: + description: The AWS region for the Bedrock request. + example: us-east-1 + type: string + type: object + LLMObsInferenceMessagesList: + description: List of messages in an inference conversation. + items: + $ref: '#/components/schemas/LLMObsInferenceMessage' + type: array + LLMObsOpenAIMetadata: + description: OpenAI-specific metadata for an inference request. + properties: + reasoning_effort: + $ref: '#/components/schemas/LLMObsOpenAIReasoningEffort' + reasoning_summary: + $ref: '#/components/schemas/LLMObsOpenAIReasoningSummary' + type: object + LLMObsInferenceToolsList: + description: List of tools available to the model. + items: + $ref: '#/components/schemas/LLMObsInferenceTool' + type: array + LLMObsInferenceErrorResponse: + description: Error details returned when an inference provider returns an error. + properties: + message: + description: A human-readable description of the error. + example: The model does not exist. + type: string + type: + description: The provider-specific error type. + example: invalid_request_error + type: string + required: + - type + - message + type: object + LLMObsInferenceRunResult: + description: The output of a completed LLM inference call. + properties: + assessment: + description: An optional assessment of the inference output quality. + example: pass + nullable: true + type: string + content: + description: The text content of the model response. + example: The capital of France is Paris. + type: string + finish_reason: + description: The reason the model stopped generating tokens. + example: stop + type: string + inference_codes: + $ref: '#/components/schemas/LLMObsIntegrationInferenceCodesResponse' + input_tokens: + description: Number of input tokens consumed. + example: 15 + format: int64 + type: integer + internal_reasoning: + $ref: '#/components/schemas/LLMObsInternalReasoning' + nullable: true + latency: + description: Request latency in milliseconds. + example: 843 + format: int64 + type: integer + output_tokens: + description: Number of output tokens generated. + example: 10 + format: int64 + type: integer + tools: + $ref: '#/components/schemas/LLMObsInferenceToolsList' + total_tokens: + description: Total tokens used (input plus output). + example: 25 + format: int64 + type: integer + required: + - content + - input_tokens + - output_tokens + - total_tokens + - latency + - finish_reason + - inference_codes + - tools + - assessment + type: object + LLMObsIntegrationModelRegionPrefixOverrides: + additionalProperties: + type: string + description: Map of region-specific model ID prefix overrides. + example: + us-east-1: us. + type: object + LLMObsProjectDataResponse: + description: Data object for an Agent Observability project. + properties: + attributes: + $ref: '#/components/schemas/LLMObsProjectDataAttributesResponse' + id: + description: Unique identifier of the project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: string + type: + $ref: '#/components/schemas/LLMObsProjectType' + required: + - id + - type + - attributes + type: object + LLMObsProjectDataRequest: + description: Data object for creating an Agent Observability project. + properties: + attributes: + $ref: '#/components/schemas/LLMObsProjectDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsProjectType' + required: + - type + - attributes + type: object + LLMObsDeleteProjectsDataRequest: + description: Data object for deleting Agent Observability projects. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteProjectsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsProjectType' + required: + - type + - attributes + type: object + LLMObsProjectUpdateDataRequest: + description: Data object for updating an Agent Observability project. + properties: + attributes: + $ref: '#/components/schemas/LLMObsProjectUpdateDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsProjectType' + required: + - type + - attributes + type: object + LLMObsPromptData: + description: Data object for an Agent Observability prompt. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPromptDataAttributes' + id: + description: Unique identifier of the prompt. + example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: string + type: + $ref: '#/components/schemas/LLMObsPromptType' + required: + - id + - type + - attributes + type: object + LLMObsCreatePromptData: + description: Data object for creating an Agent Observability prompt. + properties: + attributes: + $ref: '#/components/schemas/LLMObsCreatePromptDataAttributes' + type: + $ref: '#/components/schemas/LLMObsPromptType' + required: + - type + - attributes + type: object + LLMObsDeletedPromptData: + description: Data object confirming that an Agent Observability prompt was deleted. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeletedPromptDataAttributes' + id: + description: Unique identifier of the deleted prompt. + example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: string + type: + $ref: '#/components/schemas/LLMObsPromptType' + required: + - id + - type + - attributes + type: object + LLMObsPromptSDKData: + description: Data object for a flattened Agent Observability prompt version returned for SDK consumption. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPromptSDKDataAttributes' + id: + description: Unique identifier of the prompt. + example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: string + type: + $ref: '#/components/schemas/LLMObsPromptType' + required: + - id + - type + - attributes + type: object + LLMObsUpdatePromptData: + description: Data object for updating an Agent Observability prompt. + properties: + attributes: + $ref: '#/components/schemas/LLMObsUpdatePromptDataAttributes' + type: + $ref: '#/components/schemas/LLMObsPromptType' + required: + - type + - attributes + type: object + LLMObsPromptVersionListData: + description: Data object for a prompt version returned in a list. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPromptVersionListDataAttributes' + id: + description: Unique identifier of the prompt version. + example: d83ab666-61cc-5545-a83b-2424bb85467b + type: string + type: + $ref: '#/components/schemas/LLMObsPromptVersionType' + required: + - id + - type + - attributes + type: object + LLMObsCreatePromptVersionData: + description: Data object for creating an Agent Observability prompt version. + properties: + attributes: + $ref: '#/components/schemas/LLMObsCreatePromptVersionDataAttributes' + type: + $ref: '#/components/schemas/LLMObsPromptVersionType' + required: + - type + - attributes + type: object + LLMObsPromptVersionData: + description: Data object for a specific version of an Agent Observability prompt. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPromptVersionDataAttributes' + id: + description: Unique identifier of the prompt version. + example: d83ab666-61cc-5545-a83b-2424bb85467b + type: string + type: + $ref: '#/components/schemas/LLMObsPromptVersionType' + required: + - id + - type + - attributes + type: object + LLMObsUpdatePromptVersionData: + description: Data object for updating an Agent Observability prompt version. + properties: + attributes: + $ref: '#/components/schemas/LLMObsUpdatePromptVersionDataAttributes' + type: + $ref: '#/components/schemas/LLMObsPromptVersionType' + required: + - type + - attributes + type: object + LLMObsSpanData: + description: A single Agent Observability span. + properties: + attributes: + $ref: '#/components/schemas/LLMObsSpanAttributes' + id: + description: Unique identifier of the span. + example: abc123def456 + type: string + type: + $ref: '#/components/schemas/LLMObsSpanType' + required: + - id + - type + - attributes + type: object + LLMObsSpansResponseLinks: + description: Pagination links accompanying the spans response. + properties: + next: + description: URL to retrieve the next page of results. + example: https://api.datadoghq.com/api/v2/llm-obs/v1/spans/events?page[cursor]=eyJzdGFydCI6MTAwfQ== + type: string + type: object + LLMObsSpansResponseMeta: + description: Metadata accompanying the spans response. + properties: + elapsed: + description: Time elapsed for the query in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/LLMObsSpansResponsePage' + request_id: + description: Unique identifier for the request. + example: req-abc123 + type: string + status: + description: Status of the query execution. + example: done + type: string + required: + - elapsed + - request_id + - status + - page + type: object + LLMObsSearchSpansRequestData: + description: Data object for an Agent Observability spans search request. + properties: + attributes: + $ref: '#/components/schemas/LLMObsSearchSpansRequestAttributes' + type: + $ref: '#/components/schemas/LLMObsSearchSpansRequestType' + required: + - type + - attributes + type: object + LLMObsPatternsClusteredPointsResponseData: + description: Data object of an Agent Observability patterns clustered points response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointsResponseAttributes' + id: + description: Identifier of the topic the points belong to. + example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointsType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsConfigsResponseData: + description: Data object of a list of Agent Observability patterns configurations. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsConfigsResponseAttributes' + id: + description: Identifier of the list response. + example: '1000000001' + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsConfigsListType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsConfigUpsertRequestData: + description: Data object for creating or updating an Agent Observability patterns configuration. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsConfigUpsertRequestAttributes' + type: + $ref: '#/components/schemas/LLMObsPatternsConfigType' + required: + - type + - attributes + type: object + LLMObsPatternsConfigResponseData: + description: Data object of an Agent Observability patterns configuration. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsConfigAttributes' + id: + description: Unique identifier of the configuration. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsConfigType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsRunsResponseData: + description: Data object of an Agent Observability patterns runs response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsRunsResponseAttributes' + id: + description: Identifier of the configuration the runs belong to. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsRunsListType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsTriggerRequestData: + description: Data object for triggering an Agent Observability patterns run. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsTriggerRequestAttributes' + type: + $ref: '#/components/schemas/LLMObsPatternsRequestType' + required: + - type + - attributes + type: object + LLMObsPatternsTriggerResponseData: + description: Data object of an Agent Observability patterns trigger response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsTriggerResponseAttributes' + id: + description: The ID of the patterns configuration that was run. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsTriggerResponseType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsRunStatusResponseData: + description: Data object of an Agent Observability patterns run status response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsRunStatusResponseAttributes' + id: + description: The ID of the patterns run. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsRunStatusType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsTopicsResponseData: + description: Data object of an Agent Observability patterns topics response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsTopicsResponseAttributes' + id: + description: Identifier of the run the topics belong to. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsTopicsType' + required: + - id + - type + - attributes + type: object + LLMObsPatternsTopicsWithClusteredPointsResponseData: + description: Data object of an Agent Observability patterns topics-with-clustered-points response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsResponseAttributes' + id: + description: Identifier of the run the topics belong to. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + type: + $ref: '#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsType' + required: + - id + - type + - attributes + type: object + LLMObsDatasetDataResponse: + description: Data object for an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetDataAttributesResponse' + id: + description: Unique identifier of the dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - id + - type + - attributes + type: object + LLMObsDatasetDataRequest: + description: Data object for creating an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - type + - attributes + type: object + LLMObsDeleteDatasetsDataRequest: + description: Data object for deleting Agent Observability datasets. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteDatasetsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - type + - attributes + type: object + LLMObsDatasetUpdateDataRequest: + description: Data object for updating an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetUpdateDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - type + - attributes + type: object + LLMObsDatasetBatchUpdateDataRequest: + description: Data object for batch-updating records in an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateDataAttributesRequest' + id: + description: Unique identifier of the dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - id + - type + - attributes + type: object + LLMObsDatasetRecordsMutationData: + description: Response containing records after a create or update operation. + properties: + records: + description: List of affected dataset records. + items: + $ref: '#/components/schemas/LLMObsDatasetRecordDataResponse' + type: array + required: + - records + type: object + LLMObsDatasetCloneDataRequest: + description: Data object for cloning an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetCloneDataAttributesRequest' + id: + description: Identifier of the source dataset to clone. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - id + - type + - attributes + type: object + LLMObsDatasetDraftStateData: + description: Data object for an Agent Observability dataset draft state. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetDraftStateDataAttributes' + id: + description: Unique identifier of the dataset draft state. Matches the dataset ID. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + type: + $ref: '#/components/schemas/LLMObsDatasetDraftStateType' + required: + - id + - type + - attributes + type: object + LLMObsDatasetRecordDataResponse: + description: A single Agent Observability dataset record. + properties: + created_at: + description: Timestamp when the record was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + dataset_id: + description: Identifier of the dataset this record belongs to. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + expected_output: + $ref: '#/components/schemas/AnyValue' + id: + description: Unique identifier of the record. + example: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: string + input: + $ref: '#/components/schemas/AnyValue' + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the record. + nullable: true + type: object + updated_at: + description: Timestamp when the record was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - id + - dataset_id + - input + - expected_output + - metadata + - created_at + - updated_at + type: object + LLMObsDatasetRecordsUpdateDataRequest: + description: Data object for updating records in an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetRecordsUpdateDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsRecordType' + required: + - type + - attributes + type: object + LLMObsDatasetRecordsDataRequest: + description: Data object for appending records to an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetRecordsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsRecordType' + required: + - type + - attributes + type: object + LLMObsDeleteDatasetRecordsDataRequest: + description: Data object for deleting records from an Agent Observability dataset. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDeleteDatasetRecordsDataAttributesRequest' + type: + $ref: '#/components/schemas/LLMObsRecordType' + required: + - type + - attributes + type: object + LLMObsDatasetRestoreVersionDataRequest: + description: Data object for restoring an Agent Observability dataset to a previous version. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetRestoreVersionDataAttributesRequest' + id: + description: Unique identifier of the dataset to restore. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + type: + $ref: '#/components/schemas/LLMObsDatasetType' + required: + - id + - type + - attributes + type: object + LLMObsDatasetVersionsResponseData: + description: List of dataset versions. + items: + $ref: '#/components/schemas/LLMObsDatasetVersionData' + type: array + LLMObsExperimentEventsV2DataResponse: + description: JSON:API data object for an experiment events response. + properties: + attributes: + $ref: '#/components/schemas/LLMObsExperimentEventsV2DataAttributesResponse' + id: + description: Identifier for this events resource. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + type: + $ref: '#/components/schemas/LLMObsExperimentEventsType' + required: + - id + - type + - attributes + type: object + ModelLabFacetKeysData: + description: A facet keys JSON:API resource object. + properties: + attributes: + $ref: '#/components/schemas/ModelLabFacetKeysAttributes' + id: + description: The unique identifier of the facet keys resource. + example: '1' + type: string + type: + $ref: '#/components/schemas/ModelLabFacetKeysType' + required: + - id + - type + - attributes + type: object + ModelLabFacetValuesData: + description: A facet values JSON:API resource object. + properties: + attributes: + $ref: '#/components/schemas/ModelLabFacetValuesAttributes' + id: + description: The unique identifier of the facet values resource. + example: '1' + type: string + type: + $ref: '#/components/schemas/ModelLabFacetValuesType' + required: + - id + - type + - attributes + type: object + ModelLabProjectData: + description: A Model Lab project JSON:API resource object. + properties: + attributes: + $ref: '#/components/schemas/ModelLabProjectAttributes' + id: + description: The unique identifier of the project. + example: '2' + type: string + type: + $ref: '#/components/schemas/ModelLabProjectType' + required: + - id + - type + - attributes + type: object + ModelLabPaginationLinks: + description: Pagination links for navigating list responses. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + type: string + type: object + ModelLabPageMeta: + description: Pagination metadata for a list response. + properties: + page: + $ref: '#/components/schemas/ModelLabPageMetaPage' + required: + - page + type: object + ModelLabProjectArtifactsData: + description: A project artifacts JSON:API resource object. + properties: + attributes: + $ref: '#/components/schemas/ModelLabProjectArtifactsAttributes' + id: + description: The unique identifier of the project artifacts resource. + example: '1' + type: string + type: + $ref: '#/components/schemas/ModelLabProjectArtifactsType' + required: + - id + - type + - attributes + type: object + ModelLabRunData: + description: A Model Lab run JSON:API resource object. + properties: + attributes: + $ref: '#/components/schemas/ModelLabRunAttributes' + id: + description: The unique identifier of the run. + example: '42' + type: string + type: + $ref: '#/components/schemas/ModelLabRunType' + required: + - id + - type + - attributes + type: object + ModelLabRunArtifactsData: + description: A run artifacts JSON:API resource object. + properties: + attributes: + $ref: '#/components/schemas/ModelLabRunArtifactsAttributes' + id: + description: The unique identifier of the artifacts resource. + example: '42' + type: string + type: + $ref: '#/components/schemas/ModelLabRunArtifactsType' + required: + - id + - type + - attributes + type: object + LLMObsCustomEvalConfigAttributes: + description: Attributes of a custom Agent Observability evaluator configuration. + properties: + category: + description: Category of the evaluator. + example: Custom + type: string + created_at: + description: Timestamp when the evaluator configuration was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + created_by: + $ref: '#/components/schemas/LLMObsCustomEvalConfigUser' + eval_name: + description: Name of the custom evaluator. + example: my-custom-evaluator + type: string + last_updated_by: + $ref: '#/components/schemas/LLMObsCustomEvalConfigUser' + llm_judge_config: + $ref: '#/components/schemas/LLMObsCustomEvalConfigLLMJudgeConfig' + llm_provider: + $ref: '#/components/schemas/LLMObsCustomEvalConfigLLMProvider' + target: + $ref: '#/components/schemas/LLMObsCustomEvalConfigTarget' + updated_at: + description: Timestamp when the evaluator configuration was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - eval_name + - created_at + - updated_at + type: object + LLMObsCustomEvalConfigType: + description: Type of the custom Agent Observability evaluator configuration resource. + enum: + - evaluator_config + example: evaluator_config + type: string + x-enum-varnames: + - EVALUATOR_CONFIG + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + LLMObsCustomEvalConfigUpdateAttributes: + description: Attributes for creating or updating a custom Agent Observability evaluator configuration. + properties: + category: + description: Category of the evaluator. + example: Custom + type: string + eval_name: + description: Name of the custom evaluator. If provided, must match the eval_name path parameter. + example: my-custom-evaluator + type: string + llm_judge_config: + $ref: '#/components/schemas/LLMObsCustomEvalConfigLLMJudgeConfig' + llm_provider: + $ref: '#/components/schemas/LLMObsCustomEvalConfigLLMProvider' + target: + $ref: '#/components/schemas/LLMObsCustomEvalConfigTarget' + required: + - target + type: object + LLMObsAnnotatedInteractionsByTraceDataAttributesResponse: + description: Attributes of the cross-queue annotated interactions response. + properties: + annotated_interactions: + description: List of annotated interactions across all queues for the requested content IDs. + items: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionByTraceItem' + type: array + total_count: + description: Total number of annotated interactions matching the query. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - annotated_interactions + - total_count + type: object + LLMObsAnnotatedInteractionsByTraceType: + description: Resource type for cross-queue annotated interactions lookup. + enum: + - annotated_interactions_by_trace + example: annotated_interactions_by_trace + type: string + x-enum-varnames: + - ANNOTATED_INTERACTIONS_BY_TRACE + LLMObsAnnotationQueueDataAttributesResponse: + description: Attributes of an Agent Observability annotation queue. + properties: + annotation_schema: + $ref: '#/components/schemas/LLMObsAnnotationSchema' + created_at: + description: Timestamp when the queue was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + created_by: + description: Identifier of the user who created the queue. + example: 00000000-0000-0000-0000-000000000002 + type: string + description: + description: Description of the annotation queue. + example: Queue for annotating customer support traces + type: string + modified_at: + description: Timestamp when the queue was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + modified_by: + description: Identifier of the user who last modified the queue. + example: 00000000-0000-0000-0000-000000000002 + type: string + name: + description: Name of the annotation queue. + example: My annotation queue + type: string + owned_by: + description: Identifier of the user who owns the queue. + example: 00000000-0000-0000-0000-000000000002 + type: string + project_id: + description: Identifier of the project this queue belongs to. + example: 00000000-0000-0000-0000-000000000002 + type: string + required: + - name + - project_id + - description + - created_by + - created_at + - modified_by + - modified_at + - owned_by + type: object + LLMObsAnnotationQueueType: + description: Resource type of an Agent Observability annotation queue. + enum: + - queues + example: queues + type: string + x-enum-varnames: + - QUEUES + LLMObsAnnotationQueueDataAttributesRequest: + description: Attributes for creating an Agent Observability annotation queue. + properties: + annotation_schema: + $ref: '#/components/schemas/LLMObsAnnotationSchema' + description: + description: Description of the annotation queue. + example: Queue for annotating customer support traces + type: string + name: + description: Name of the annotation queue. + example: My annotation queue + type: string + project_id: + description: Identifier of the project this queue belongs to. + example: 00000000-0000-0000-0000-000000000002 + type: string + required: + - name + - project_id + type: object + LLMObsAnnotationQueueUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability annotation queue. All fields are optional. + properties: + annotation_schema: + $ref: '#/components/schemas/LLMObsAnnotationSchema' + description: + description: Updated description of the annotation queue. + example: Updated description + type: string + name: + description: Updated name of the annotation queue. + example: Updated queue name + type: string + type: object + LLMObsAnnotatedInteractionsDataAttributesResponse: + description: Attributes containing the list of annotated interactions. + properties: + annotated_interactions: + description: List of interactions with their annotations. + example: + - annotations: [] + content_id: trace-abc-123 + id: interaction-456 + type: trace + items: + $ref: '#/components/schemas/LLMObsAnnotatedInteractionItem' + type: array + required: + - annotated_interactions + type: object + LLMObsAnnotatedInteractionsType: + description: Resource type for annotated interactions. + enum: + - annotated_interactions + example: annotated_interactions + type: string + x-enum-varnames: + - ANNOTATED_INTERACTIONS + LLMObsAnnotationsDataAttributesRequest: + description: Attributes for creating or updating annotations. + properties: + annotations: + description: List of annotations to create or update. Must contain at least one item. + items: + $ref: '#/components/schemas/LLMObsUpsertAnnotationItem' + minItems: 1 + type: array + required: + - annotations + type: object + LLMObsAnnotationsType: + description: Resource type for Agent Observability annotations. + enum: + - annotations + example: annotations + type: string + x-enum-varnames: + - ANNOTATIONS + LLMObsAnnotationsDataAttributesResponse: + description: Attributes of the annotations response. + properties: + annotations: + description: Successfully created or updated annotations. + items: + $ref: '#/components/schemas/LLMObsAnnotationItemResponse' + type: array + errors: + description: Partial errors for annotations that could not be processed. + items: + $ref: '#/components/schemas/LLMObsAnnotationError' + type: array + required: + - annotations + type: object + LLMObsDeleteAnnotationsDataAttributesRequest: + description: Attributes for deleting annotations. + properties: + annotation_ids: + description: IDs of the annotations to delete. Must contain at least one item. + example: + - 00000000-0000-0000-0000-000000000000 + - 00000000-0000-0000-0000-000000000001 + items: + type: string + minItems: 1 + type: array + required: + - annotation_ids + type: object + LLMObsDeleteAnnotationsDataAttributesResponse: + description: Attributes of the annotation deletion response. + properties: + annotation_ids: + description: IDs of the successfully deleted annotations. + example: + - 00000000-0000-0000-0000-000000000000 + items: + type: string + type: array + errors: + description: Errors for annotations that could not be deleted. + items: + $ref: '#/components/schemas/LLMObsDeleteAnnotationError' + type: array + required: + - annotation_ids + - errors + type: object + LLMObsAnnotationQueueInteractionsDataAttributesRequest: + description: Attributes for adding interactions to an annotation queue. + properties: + interactions: + description: List of interactions to add to the queue. Must contain at least one item. + example: + - content_id: trace-abc-123 + type: trace + items: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionItem' + minItems: 1 + type: array + required: + - interactions + type: object + LLMObsAnnotationQueueInteractionsType: + description: Resource type for annotation queue interactions. + enum: + - interactions + example: interactions + type: string + x-enum-varnames: + - INTERACTIONS + LLMObsAnnotationQueueInteractionsDataAttributesResponse: + description: Attributes of the interaction addition response. + properties: + interactions: + description: List of interactions that were processed. + example: + - already_existed: false + content_id: trace-abc-123 + id: 00000000-0000-0000-0000-000000000000 + type: trace + items: + $ref: '#/components/schemas/LLMObsAnnotationQueueInteractionResponseItem' + type: array + required: + - interactions + type: object + LLMObsDeleteAnnotationQueueInteractionsDataAttributesRequest: + description: Attributes for deleting interactions from an annotation queue. + properties: + interaction_ids: + description: List of interaction IDs to delete. Must contain at least one item. + example: + - 00000000-0000-0000-0000-000000000000 + - 00000000-0000-0000-0000-000000000001 + items: + description: An interaction ID to delete. + type: string + minItems: 1 + type: array + required: + - interaction_ids + type: object + LLMObsAnnotationQueueLabelSchemaAttributes: + description: Attributes of an annotation queue label schema. + properties: + annotation_schema: + $ref: '#/components/schemas/LLMObsAnnotationSchema' + required: + - annotation_schema + type: object + LLMObsAnnotationQueueLabelSchemaUpdateAttributes: + description: Attributes for updating an annotation queue label schema. + properties: + annotation_schema: + $ref: '#/components/schemas/LLMObsAnnotationSchema' + required: + - annotation_schema + type: object + LLMObsExperimentationAnalyticsDataAttributesRequest: + description: Attributes for an analytics request. + properties: + aggregate: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsAggregate' + required: + - aggregate + type: object + LLMObsExperimentationType: + description: Resource type for experimentation search and analytics operations. + enum: + - experimentation + example: experimentation + type: string + x-enum-varnames: + - EXPERIMENTATION + LLMObsExperimentationAnalyticsDataAttributesResponse: + description: Attributes of an analytics response. + properties: + hit_count: + description: Total number of events matched by the query before grouping. + example: 1500 + format: int64 + type: integer + result: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsResult' + required: + - hit_count + - result + type: object + LLMObsExperimentationSearchDataAttributesRequest: + description: Attributes for an experimentation search request. + properties: + content_preview: + $ref: '#/components/schemas/LLMObsExperimentationContentPreview' + filter: + $ref: '#/components/schemas/LLMObsExperimentationFilter' + include: + $ref: '#/components/schemas/LLMObsExperimentationInclude' + page: + $ref: '#/components/schemas/LLMObsExperimentationCursorPage' + required: + - filter + type: object + LLMObsExperimentationSearchResults: + description: The matching experimentation entities grouped by type. + properties: + dataset_records: + description: Matching dataset records. Present when `dataset_records` is included in `filter.scope`. + items: + $ref: '#/components/schemas/LLMObsDatasetRecordDataResponse' + nullable: true + type: array + datasets: + description: Matching datasets. Present when `datasets` is included in `filter.scope`. + items: + $ref: '#/components/schemas/LLMObsDatasetDataResponse' + nullable: true + type: array + experiment_runs: + description: Matching experiment runs. Present when `experiment_runs` is included in `filter.scope`. + items: + $ref: '#/components/schemas/LLMObsExperimentRunDataResponse' + nullable: true + type: array + experiments: + description: Matching experiments. Present when `experiments` is included in `filter.scope`. + items: + $ref: '#/components/schemas/LLMObsExperimentDataAttributesResponse' + nullable: true + type: array + projects: + description: Matching projects. Present when `projects` is included in `filter.scope`. + items: + $ref: '#/components/schemas/LLMObsProjectDataResponse' + nullable: true + type: array + type: object + LLMObsExperimentationSimpleSearchDataAttributesRequest: + description: Attributes for an experimentation simple search request. + properties: + content_preview: + $ref: '#/components/schemas/LLMObsExperimentationContentPreview' + filter: + $ref: '#/components/schemas/LLMObsExperimentationFilter' + include: + $ref: '#/components/schemas/LLMObsExperimentationInclude' + page: + $ref: '#/components/schemas/LLMObsExperimentationNumberPage' + sort: + description: Sort order for results. + items: + $ref: '#/components/schemas/LLMObsExperimentationSortField' + type: array + required: + - filter + type: object + LLMObsExperimentationSimpleSearchMetaPage: + description: Page metadata. + properties: + current: + description: Current page number. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + limit: + description: Page size used for this response. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + total_count: + description: Total number of matching results (capped at the maximum search limit). + example: 193 + format: int32 + maximum: 2147483647 + type: integer + total_pages: + description: Total number of pages available. + example: 4 + format: int32 + maximum: 2147483647 + type: integer + type: object + LLMObsExperimentDataAttributesResponse: + description: Attributes of an Agent Observability experiment. + properties: + aggregate_data: + additionalProperties: {} + description: Pre-computed aggregate metrics for this experiment run, including eval score distributions, token costs, and error rates. + nullable: true + type: object + author: + $ref: '#/components/schemas/LLMObsExperimentUser' + config: + additionalProperties: {} + description: Configuration parameters for the experiment. + nullable: true + type: object + created_at: + description: Timestamp when the experiment was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + dataset_id: + description: Identifier of the dataset used in this experiment. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + dataset_name: + description: |- + Name of the dataset used in this experiment. + Only present when `include[dataset_names]` is `true`. + nullable: true + type: string + dataset_version: + description: Version of the dataset used in this experiment. + format: int64 + type: integer + deleted_at: + description: Timestamp when the experiment was soft-deleted, if applicable. + format: date-time + nullable: true + type: string + description: + description: Description of the experiment. + example: '' + nullable: true + type: string + error: + description: Error message describing why the experiment failed, if applicable. + nullable: true + type: string + experiment: + description: Logical name of the experiment, shared across all runs of the same pipeline. + example: my-pipeline + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the experiment. + nullable: true + type: object + name: + description: Name of the experiment. + example: My Experiment v1 + type: string + parent_experiment_id: + description: Identifier of the parent (baseline) experiment this experiment was run against, if any. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + nullable: true + type: string + project_id: + description: Identifier of the project this experiment belongs to. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: string + run_count: + description: Expected number of runs for this experiment. + format: int32 + maximum: 2147483647 + type: integer + status: + $ref: '#/components/schemas/LLMObsExperimentStatus' + updated_at: + description: Timestamp when the experiment was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - project_id + - dataset_id + - name + - description + - metadata + - config + - created_at + - updated_at + type: object + LLMObsExperimentType: + description: Resource type of an Agent Observability experiment. + enum: + - experiments + example: experiments + type: string + x-enum-varnames: + - EXPERIMENTS + LLMObsExperimentDataAttributesRequest: + description: Attributes for creating an Agent Observability experiment. + properties: + config: + additionalProperties: {} + description: Configuration parameters for the experiment. + type: object + dataset_id: + description: Identifier of the dataset used in this experiment. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + dataset_version: + description: Version of the dataset to use. Defaults to the current version if not specified. + format: int64 + type: integer + description: + description: Description of the experiment. + type: string + ensure_unique: + description: Whether to ensure the experiment name is unique. Defaults to `true`. + type: boolean + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the experiment. + type: object + name: + description: Name of the experiment. + example: My Experiment v1 + type: string + parent_experiment_id: + description: Identifier of the parent (baseline) experiment this experiment is run against. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + project_id: + description: Identifier of the project this experiment belongs to. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: string + run_count: + description: Number of runs configured for this experiment. + format: int32 + maximum: 2147483647 + type: integer + required: + - project_id + - name + type: object + LLMObsDeleteExperimentsDataAttributesRequest: + description: Attributes for deleting Agent Observability experiments. + properties: + experiment_ids: + description: List of experiment IDs to delete. + example: + - 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + items: + description: An experiment ID to delete. + type: string + type: array + required: + - experiment_ids + type: object + LLMObsExperimentUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability experiment. + properties: + dataset_id: + description: Updated identifier of the dataset used in this experiment. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + description: + description: Updated description of the experiment. + type: string + error: + description: Error message describing why the experiment failed, if applicable. + type: string + metadata: + additionalProperties: {} + description: Updated arbitrary metadata associated with the experiment. + type: object + name: + description: Updated name of the experiment. + type: string + status: + $ref: '#/components/schemas/LLMObsExperimentStatus' + type: object + LLMObsExperimentSpanWithEvals: + description: An experiment span enriched with its associated evaluation metrics. + properties: + dataset_record_id: + description: ID of the dataset record this span evaluated. + nullable: true + type: string + duration: + description: Duration of the span in nanoseconds. + example: 1500000000 + format: double + type: number + eval_metrics: + description: Evaluation metrics associated with this span. + items: + $ref: '#/components/schemas/LLMObsExperimentEvalMetricEvent' + type: array + id: + description: Unique identifier of the span. + example: 00000000-0000-0000-0000-000000000001 + type: string + meta: + $ref: '#/components/schemas/LLMObsExperimentSpanMeta' + metrics: + additionalProperties: + format: double + type: number + description: Numeric metrics attached to the span. + type: object + name: + description: Name of the span. + example: llm_call + type: string + parent_id: + description: Parent span ID, if any. + type: string + span_id: + description: Span ID. + example: span-7a1b2c3d + type: string + start_ns: + description: Start time in nanoseconds since Unix epoch. + example: 1705314600000000000 + format: int64 + type: integer + status: + $ref: '#/components/schemas/LLMObsExperimentSpanStatus' + tags: + description: Tags associated with the span. + items: + type: string + type: array + trace_id: + description: Trace ID. + example: abc123def456 + type: string + type: object + LLMObsExperimentSpanType: + description: Resource type for a span item in an experiment spans response. + enum: + - experiments + example: experiments + type: string + x-enum-varnames: + - EXPERIMENTS_SPAN + LLMObsExperimentEventsDataAttributesRequest: + description: Attributes for pushing experiment events including spans and metrics. + properties: + metrics: + description: List of metrics to push for the experiment. + items: + $ref: '#/components/schemas/LLMObsExperimentMetric' + type: array + spans: + description: List of spans to push for the experiment. + items: + $ref: '#/components/schemas/LLMObsExperimentSpan' + type: array + type: object + LLMObsEventType: + description: Resource type for Agent Observability experiment events. + enum: + - events + example: events + type: string + x-enum-varnames: + - EVENTS + LLMObsAnthropicEffort: + description: The effort level for Anthropic inference. + enum: + - low + - medium + - high + - max + example: medium + nullable: true + type: string + x-enum-varnames: + - LOW + - MEDIUM + - HIGH + - MAX + LLMObsAnthropicThinkingConfig: + description: Configuration for Anthropic extended thinking feature. + properties: + budget_tokens: + description: Maximum token budget for extended thinking. Required when type is `enabled`. + example: 1024 + format: int64 + nullable: true + type: integer + type: + $ref: '#/components/schemas/LLMObsAnthropicThinkingType' + required: + - type + type: object + LLMObsInferenceMessage: + description: A single message in an LLM inference conversation. + properties: + content: + description: Plain text content of the message. + example: What is the capital of France? + type: string + contents: + $ref: '#/components/schemas/LLMObsInferenceContentList' + id: + description: Unique identifier for the message. + example: msg_001 + type: string + role: + description: The role of the message author. + example: user + type: string + tool_calls: + $ref: '#/components/schemas/LLMObsInferenceToolCallsList' + tool_results: + $ref: '#/components/schemas/LLMObsInferenceToolResultsList' + type: object + LLMObsOpenAIReasoningEffort: + description: The reasoning effort level for OpenAI models that support it. + enum: + - none + - low + - medium + - high + - xhigh + example: medium + nullable: true + type: string + x-enum-varnames: + - NONE + - LOW + - MEDIUM + - HIGH + - XHIGH + LLMObsOpenAIReasoningSummary: + description: The verbosity of the reasoning summary. + enum: + - auto + - concise + - detailed + example: auto + nullable: true + type: string + x-enum-varnames: + - AUTO + - CONCISE + - DETAILED + LLMObsInferenceTool: + description: A tool definition available to the model during inference. + properties: + function: + $ref: '#/components/schemas/LLMObsInferenceFunction' + type: + description: The type of tool. + example: function + type: string + required: + - type + - function + type: object + LLMObsIntegrationInferenceCodesResponse: + description: List of generated code snippets for the inference configuration. + items: + $ref: '#/components/schemas/LLMObsInferenceCode' + type: array + LLMObsInternalReasoning: + description: The model's internal reasoning or thinking output, if available. + properties: + reasoning_tokens: + description: Number of tokens used for internal reasoning. + example: 256 + format: int64 + nullable: true + type: integer + text: + description: The reasoning text produced by the model. + example: Let me think about this step by step... + type: string + required: + - text + type: object + LLMObsProjectDataAttributesResponse: + description: Attributes of an Agent Observability project. + properties: + created_at: + description: Timestamp when the project was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + description: + description: Description of the project. + example: '' + nullable: true + type: string + name: + description: Name of the project. + example: My LLM Project + type: string + updated_at: + description: Timestamp when the project was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - name + - description + - created_at + - updated_at + type: object + LLMObsProjectType: + description: Resource type of an Agent Observability project. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + LLMObsProjectDataAttributesRequest: + description: Attributes for creating an Agent Observability project. + properties: + description: + description: Description of the project. + type: string + name: + description: Name of the project. + example: My LLM Project + type: string + required: + - name + type: object + LLMObsDeleteProjectsDataAttributesRequest: + description: Attributes for deleting Agent Observability projects. + properties: + project_ids: + description: List of project IDs to delete. + example: + - a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + items: + description: A project ID to delete. + type: string + type: array + required: + - project_ids + type: object + LLMObsProjectUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability project. + properties: + description: + description: Updated description of the project. + type: string + name: + description: Updated name of the project. + type: string + type: object + LLMObsPromptDataAttributes: + description: Attributes of an Agent Observability prompt registry entry. + properties: + author: + description: UUID of the user who authored the prompt. + type: string + created_at: + description: Timestamp when the prompt was created. + format: date-time + type: string + created_from: + description: Source that created the prompt, such as `ui-registry`, `sdk-registry`, or `sdk-instrumentation`. + example: sdk-registry + type: string + datasets: + description: Datasets observed in runs associated with this prompt. + items: + $ref: '#/components/schemas/LLMObsPromptDataset' + type: array + description: + description: Description of the prompt. + type: string + extracted_from: + description: Source prompt from which this prompt was extracted, when applicable. + type: string + in_registry: + description: Whether the prompt is a registry entry (as opposed to a code-discovered prompt). + example: true + type: boolean + last_seen_at: + description: Timestamp of the most recent observed run of this prompt. + format: date-time + type: string + last_version_created_at: + description: Timestamp when the most recent version of the prompt was created. + format: date-time + type: string + ml_app: + description: The ML application this prompt is associated with. + type: string + ml_apps: + description: ML applications observed running this prompt. + items: + type: string + type: array + num_versions: + description: Number of versions of the prompt. + example: 2 + format: int64 + type: integer + prompt_id: + description: Customer-provided identifier of the prompt. + example: customer-support-assistant + type: string + source: + $ref: '#/components/schemas/LLMObsPromptResponseSource' + tags: + description: Tags observed on runs of this prompt. + items: + type: string + type: array + title: + description: Title of the prompt. + type: string + required: + - prompt_id + - source + - num_versions + - in_registry + - created_from + type: object + LLMObsPromptType: + description: Resource type of an Agent Observability prompt. + enum: + - prompt-templates + example: prompt-templates + type: string + x-enum-varnames: + - PROMPT_TEMPLATES + LLMObsCreatePromptDataAttributes: + description: Attributes for creating an Agent Observability prompt and its first version. `prompt_id` and `template` are required; all other attributes are optional. + properties: + description: + description: Optional description of the prompt. + type: string + env_ids: + description: Optional feature-flag environment UUIDs the service attempts to enable and configure to use the first version as their default after creation. + items: + type: string + type: array + labels: + deprecated: true + description: Optional labels to attach to the first version. Do not use this attribute for new integrations. + items: + $ref: '#/components/schemas/LLMObsPromptVersionLabel' + type: array + prompt_id: + description: Customer-provided identifier for the new prompt. + example: customer-support-assistant + minLength: 1 + type: string + template: + $ref: '#/components/schemas/LLMObsPromptTemplate' + title: + description: Optional title of the prompt. + type: string + user_version: + description: Optional user-supplied version identifier for the first version. + type: string + required: + - prompt_id + - template + type: object + LLMObsDeletedPromptDataAttributes: + description: Attributes confirming that an Agent Observability prompt was deleted. + properties: + deleted_at: + description: Timestamp when the prompt was deleted. + example: '2025-02-10T09:15:00Z' + format: date-time + type: string + prompt_id: + description: Customer-provided identifier of the deleted prompt. + example: customer-support-assistant + type: string + required: + - prompt_id + - deleted_at + type: object + LLMObsPromptSDKDataAttributes: + description: Attributes of a flattened prompt version returned for SDK consumption. Exactly one of `template` and `chat_template` is returned. + properties: + chat_template: + description: Chat template for this prompt version, as a list of role and content messages. Omitted for text templates. + items: + $ref: '#/components/schemas/LLMObsPromptChatMessage' + type: array + labels: + deprecated: true + description: Labels attached to the selected version. + items: + type: string + type: array + prompt_id: + description: Customer-provided identifier of the prompt. + example: customer-support-assistant + type: string + prompt_version_uuid: + description: Unique identifier of this prompt version. + example: d83ab666-61cc-5545-a83b-2424bb85467b + type: string + template: + description: Text template for this prompt version. Omitted for chat templates. + type: string + version: + description: Version identifier for this prompt version. This is the sequential version number unless a user-supplied version identifier was set, in which case that identifier is used instead. + example: '2' + type: string + type: object + LLMObsUpdatePromptDataAttributes: + additionalProperties: false + description: Attributes for updating an Agent Observability prompt. At least one of `title` or `description` must be provided; both attributes are optional individually. + minProperties: 1 + properties: + description: + description: Optional new description for the prompt. + type: string + title: + description: Optional new title for the prompt. + type: string + type: object + LLMObsPromptVersionListDataAttributes: + description: Attributes of a prompt version returned in a list, excluding its template. + properties: + author: + description: UUID of the user who authored this version. + type: string + created_at: + description: Timestamp stored on this prompt version. + format: date-time + type: string + datasets: + description: Datasets observed in runs associated with this prompt version. + items: + $ref: '#/components/schemas/LLMObsPromptDataset' + type: array + description: + description: Description of this version. + type: string + labels: + deprecated: true + description: Labels attached to this version (for example `development`, `staging`, `production`). + items: + type: string + type: array + last_seen_at: + description: Timestamp of the most recent observed run of this prompt version. + format: date-time + type: string + ml_app: + description: The ML application this prompt is associated with. + type: string + ml_apps: + description: ML applications observed running this prompt version. + items: + type: string + type: array + prompt_id: + description: Customer-provided identifier of the parent prompt. + example: customer-support-assistant + type: string + prompt_uuid: + description: Unique identifier of the parent prompt. + example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: string + tags: + description: Tags observed on runs of this prompt version. + items: + type: string + type: array + user_version: + description: User-supplied identifier for this version. + type: string + version: + description: Sequential version number. + example: 1 + format: int64 + minimum: 1 + type: integer + version_created_at: + description: Timestamp when this version was created. + format: date-time + type: string + required: + - prompt_uuid + - prompt_id + - version + type: object + LLMObsPromptVersionType: + description: Resource type of an Agent Observability prompt version. + enum: + - prompt-template-versions + example: prompt-template-versions + type: string + x-enum-varnames: + - PROMPT_TEMPLATE_VERSIONS + LLMObsCreatePromptVersionDataAttributes: + description: Attributes for creating a new version of an Agent Observability prompt. `template` is required; all other attributes are optional. + properties: + description: + description: Optional description of this version. + type: string + env_ids: + description: Optional feature-flag environment UUIDs the service attempts to enable and configure to use this version as their default after creation. + items: + type: string + type: array + labels: + deprecated: true + description: Optional labels to attach to this version. Do not use this attribute for new integrations. + items: + $ref: '#/components/schemas/LLMObsPromptVersionLabel' + type: array + template: + $ref: '#/components/schemas/LLMObsPromptTemplate' + user_version: + description: Optional user-supplied version identifier for this version. + type: string + required: + - template + type: object + LLMObsPromptVersionDataAttributes: + description: Attributes of a specific version of an Agent Observability prompt. + properties: + author: + description: UUID of the user who authored this version. + type: string + created_at: + description: Timestamp stored on this prompt version. + format: date-time + type: string + datasets: + description: Datasets observed in runs associated with this prompt version. + items: + $ref: '#/components/schemas/LLMObsPromptDataset' + type: array + description: + description: Description of this version. + type: string + labels: + deprecated: true + description: Labels attached to this version (for example `development`, `staging`, `production`). + items: + type: string + type: array + last_seen_at: + description: Timestamp of the most recent observed run of this prompt version. + format: date-time + type: string + ml_app: + description: The ML application this prompt is associated with. + type: string + ml_apps: + description: ML applications observed running this prompt version. + items: + type: string + type: array + prompt_id: + description: Customer-provided identifier of the parent prompt. + example: customer-support-assistant + type: string + prompt_uuid: + description: Unique identifier of the parent prompt. + example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb + type: string + tags: + description: Tags observed on runs of this prompt version. + items: + type: string + type: array + template: + $ref: '#/components/schemas/LLMObsPromptTemplate' + user_version: + description: User-supplied identifier for this version. + type: string + version: + description: Sequential version number. + example: 1 + format: int64 + minimum: 1 + type: integer + version_created_at: + description: Timestamp when this version was created. + format: date-time + type: string + required: + - prompt_uuid + - prompt_id + - template + - version + type: object + LLMObsUpdatePromptVersionDataAttributes: + additionalProperties: false + description: Attributes for updating an Agent Observability prompt version. At least one of `description`, `labels`, or `env_ids` must be provided; all three attributes are optional individually. + minProperties: 1 + properties: + description: + description: Optional new description for this version. + type: string + env_ids: + description: Optional feature-flag environment UUIDs the service attempts to enable and configure to use this version as their default. + items: + type: string + type: array + labels: + deprecated: true + description: Optional new labels for this version. Do not use this attribute for new integrations. + items: + $ref: '#/components/schemas/LLMObsPromptVersionLabel' + type: array + type: object + LLMObsSpanAttributes: + description: Attributes of an Agent Observability span. + properties: + duration: + description: Duration of the span in nanoseconds. + example: 1500000000 + format: double + type: number + evaluation: + additionalProperties: + $ref: '#/components/schemas/LLMObsSpanEvaluationMetric' + description: Evaluation metrics keyed by evaluator name. + type: object + input: + $ref: '#/components/schemas/LLMObsSpanIO' + intent: + description: Detected intent of the span. + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the span. + type: object + metrics: + additionalProperties: + format: double + type: number + description: Numeric metrics associated with the span (e.g., token counts). + type: object + ml_app: + description: Name of the ML application this span belongs to. + example: my-llm-app + type: string + model_name: + description: Name of the model used in this span. + example: gpt-4o + type: string + model_provider: + description: Provider of the model used in this span. + example: openai + type: string + name: + description: Name of the span. + example: llm_call + type: string + output: + $ref: '#/components/schemas/LLMObsSpanIO' + parent_id: + description: Identifier of the parent span, if any. + type: string + span_id: + description: Unique identifier of the span. + example: abc123def456 + type: string + span_kind: + description: Kind of span (e.g., llm, agent, tool, task, workflow). + example: llm + type: string + start_ns: + description: Start time of the span in nanoseconds since Unix epoch. + example: 1705314600000000000 + format: int64 + type: integer + status: + description: Status of the span (e.g., ok, error). + example: ok + type: string + tags: + description: Tags associated with the span. + items: + type: string + type: array + tool_definitions: + description: Tool definitions available to the span. + items: + $ref: '#/components/schemas/LLMObsSpanToolDefinition' + type: array + trace_id: + description: Trace identifier this span belongs to. + example: trace-9a8b7c6d5e4f + type: string + required: + - span_id + - trace_id + - name + - status + - start_ns + - duration + - ml_app + - span_kind + type: object + LLMObsSpanType: + description: Resource type for an Agent Observability span. + enum: + - span + example: span + type: string + x-enum-varnames: + - SPAN + LLMObsSpansResponsePage: + description: Pagination cursor for the spans response. + properties: + after: + description: Cursor to retrieve the next page of results. Absent when there are no more results. + example: eyJzdGFydCI6MTAwfQ== + type: string + type: object + LLMObsSearchSpansRequestAttributes: + description: Attributes of an Agent Observability spans search request. + properties: + filter: + $ref: '#/components/schemas/LLMObsSpanFilter' + options: + $ref: '#/components/schemas/LLMObsSpanSearchOptions' + page: + $ref: '#/components/schemas/LLMObsSpanPageQuery' + sort: + description: Sort order for the results. Use `-` prefix for descending order. + example: '-start_ns' + type: string + type: object + LLMObsSearchSpansRequestType: + description: Resource type for an Agent Observability spans search request. + enum: + - spans + example: spans + type: string + x-enum-varnames: + - SPANS + LLMObsPatternsClusteredPointsResponseAttributes: + description: Attributes of an Agent Observability patterns clustered points response. + properties: + next_page_token: + description: Pagination token for the next page of points. Null if there are no more pages. + example: eyJvZmZzZXQiOjUwfQ== + nullable: true + type: string + points: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointsList' + topic_id: + description: Identifier of the topic the points belong to. + example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: string + required: + - topic_id + - next_page_token + - points + type: object + LLMObsPatternsClusteredPointsType: + description: Resource type of an Agent Observability patterns clustered points response. + enum: + - clustered_points_response + example: clustered_points_response + type: string + x-enum-varnames: + - CLUSTERED_POINTS_RESPONSE + LLMObsPatternsConfigsResponseAttributes: + description: Attributes of a list of Agent Observability patterns configurations. + properties: + configs: + $ref: '#/components/schemas/LLMObsPatternsConfigItemsList' + required: + - configs + type: object + LLMObsPatternsConfigsListType: + description: Resource type of a list of Agent Observability patterns configurations. + enum: + - list_topic_discovery_configs_response + example: list_topic_discovery_configs_response + type: string + x-enum-varnames: + - LIST_TOPIC_DISCOVERY_CONFIGS_RESPONSE + LLMObsPatternsConfigUpsertRequestAttributes: + description: Attributes for creating or updating an Agent Observability patterns configuration. + properties: + account_id: + description: Integration account ID for a bring-your-own-model configuration. + example: '1000000001' + type: string + config_id: + description: The ID of an existing configuration to update. If omitted, a new configuration is created. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + evp_query: + description: Query that selects the spans the patterns run analyzes. + example: '@ml_app:support-bot' + type: string + hierarchy_depth: + description: Depth of the topic hierarchy to generate. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + integration_provider: + description: Integration provider for a bring-your-own-model configuration. + example: openai + type: string + model_name: + description: Model name for a bring-your-own-model configuration. + example: gpt-4o + type: string + name: + description: Name of the configuration. + example: Support chatbot topics + type: string + num_records: + description: Maximum number of records to process for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans to sample for the run. + example: 0.1 + format: double + type: number + scope: + description: Scope of the configuration. + example: '' + type: string + template: + description: Template used to guide topic generation. + example: '' + type: string + required: + - name + - evp_query + - sampling_ratio + - num_records + - hierarchy_depth + type: object + LLMObsPatternsConfigType: + description: Resource type of an Agent Observability patterns configuration. + enum: + - topic_discovery_configs + example: topic_discovery_configs + type: string + x-enum-varnames: + - TOPIC_DISCOVERY_CONFIGS + LLMObsPatternsConfigAttributes: + description: Attributes of an Agent Observability patterns configuration. + properties: + account_id: + description: Integration account ID for a bring-your-own-model configuration. + example: '1000000001' + nullable: true + type: string + created_at: + description: Timestamp when the configuration was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + evp_query: + description: Query that selects the spans the patterns run analyzes. + example: '@ml_app:support-bot' + type: string + hierarchy_depth: + description: Depth of the topic hierarchy to generate. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + integration_provider: + description: Integration provider for a bring-your-own-model configuration. + example: openai + nullable: true + type: string + model_name: + description: Model name for a bring-your-own-model configuration. + example: gpt-4o + nullable: true + type: string + name: + description: Name of the configuration. + example: Support chatbot topics + type: string + num_records: + description: Maximum number of records to process for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans to sample for the run. + example: 0.1 + format: double + type: number + scope: + description: Scope of the configuration. + example: '' + type: string + template: + description: Template used to guide topic generation. + example: '' + nullable: true + type: string + updated_at: + description: Timestamp when the configuration was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - name + - evp_query + - sampling_ratio + - num_records + - hierarchy_depth + - scope + - created_at + - updated_at + type: object + LLMObsPatternsRunsResponseAttributes: + description: Attributes of an Agent Observability patterns runs response. + properties: + runs: + $ref: '#/components/schemas/LLMObsPatternsRunsList' + required: + - runs + type: object + LLMObsPatternsRunsListType: + description: Resource type of a list of Agent Observability patterns runs. + enum: + - list_topic_discovery_runs_response + example: list_topic_discovery_runs_response + type: string + x-enum-varnames: + - LIST_TOPIC_DISCOVERY_RUNS_RESPONSE + LLMObsPatternsTriggerRequestAttributes: + description: Attributes for triggering an Agent Observability patterns run. + properties: + config_id: + description: The ID of the patterns configuration to run. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + required: + - config_id + type: object + LLMObsPatternsRequestType: + description: Resource type for triggering an Agent Observability patterns run. + enum: + - topic_discovery + example: topic_discovery + type: string + x-enum-varnames: + - TOPIC_DISCOVERY + LLMObsPatternsTriggerResponseAttributes: + description: Attributes of an Agent Observability patterns trigger response. + properties: + config_id: + description: The ID of the patterns configuration that was run. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + run_id: + description: The ID of the patterns run that was started. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + status: + description: Status of the patterns run. + example: started + type: string + required: + - run_id + - config_id + - status + type: object + LLMObsPatternsTriggerResponseType: + description: Resource type of an Agent Observability patterns trigger response. + enum: + - topic_discovery_run + example: topic_discovery_run + type: string + x-enum-varnames: + - TOPIC_DISCOVERY_RUN + LLMObsPatternsRunStatusResponseAttributes: + description: Attributes of an Agent Observability patterns run status. + properties: + created_at: + description: Timestamp when the run was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + progress: + $ref: '#/components/schemas/LLMObsPatternsProgressList' + status: + description: Overall status of the run. + example: running + type: string + step: + description: The current step of the run. + example: generate_topics + type: string + required: + - created_at + - status + - step + - progress + type: object + LLMObsPatternsRunStatusType: + description: Resource type of an Agent Observability patterns run status. + enum: + - topic_discovery_run_status + example: topic_discovery_run_status + type: string + x-enum-varnames: + - TOPIC_DISCOVERY_RUN_STATUS + LLMObsPatternsTopicsResponseAttributes: + description: Attributes of an Agent Observability patterns topics response. + properties: + completed_at: + description: Timestamp when the run completed. Null if the run has not completed. + example: '2024-01-15T10:45:00Z' + format: date-time + nullable: true + type: string + config_id: + description: Identifier of the configuration that produced the run. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + config_snapshot: + $ref: '#/components/schemas/LLMObsPatternsConfigSnapshot' + created_at: + description: Timestamp when the run was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + previous_run_id: + description: Identifier of the run that completed immediately before this one. Empty if none. + example: '' + type: string + run_id: + description: Identifier of the run that produced the topics. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + topics: + $ref: '#/components/schemas/LLMObsPatternsTopicsList' + required: + - run_id + - config_id + - previous_run_id + - created_at + - topics + type: object + LLMObsPatternsTopicsType: + description: Resource type of an Agent Observability patterns topics response. + enum: + - get_topics_response + example: get_topics_response + type: string + x-enum-varnames: + - GET_TOPICS_RESPONSE + LLMObsPatternsTopicsWithClusteredPointsResponseAttributes: + description: Attributes of an Agent Observability patterns topics-with-clustered-points response. + properties: + completed_at: + description: Timestamp when the run completed. Null if the run has not completed. + example: '2024-01-15T10:45:00Z' + format: date-time + nullable: true + type: string + config_id: + description: Identifier of the configuration that produced the run. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + config_snapshot: + $ref: '#/components/schemas/LLMObsPatternsConfigSnapshot' + created_at: + description: Timestamp when the run was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + previous_run_id: + description: Identifier of the run that completed immediately before this one. Empty if none. + example: '' + type: string + run_id: + description: Identifier of the run that produced the topics. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + topics: + $ref: '#/components/schemas/LLMObsPatternsTopicsWithClusteredPointsList' + required: + - run_id + - config_id + - previous_run_id + - created_at + - topics + type: object + LLMObsPatternsTopicsWithClusteredPointsType: + description: Resource type of an Agent Observability patterns topics-with-clustered-points response. + enum: + - get_topics_with_cluster_points_response + example: get_topics_with_cluster_points_response + type: string + x-enum-varnames: + - GET_TOPICS_WITH_CLUSTER_POINTS_RESPONSE + LLMObsDatasetDataAttributesResponse: + description: Attributes of an Agent Observability dataset. + properties: + created_at: + description: Timestamp when the dataset was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + current_version: + description: Current version number of the dataset. + example: 1 + format: int64 + type: integer + description: + description: Description of the dataset. + example: '' + nullable: true + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the dataset. + nullable: true + type: object + name: + description: Name of the dataset. + example: My LLM Dataset + type: string + updated_at: + description: Timestamp when the dataset was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - name + - description + - metadata + - current_version + - created_at + - updated_at + type: object + LLMObsDatasetType: + description: Resource type of an Agent Observability dataset. + enum: + - datasets + example: datasets + type: string + x-enum-varnames: + - DATASETS + LLMObsDatasetDataAttributesRequest: + description: Attributes for creating an Agent Observability dataset. + properties: + description: + description: Description of the dataset. + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the dataset. + type: object + name: + description: Name of the dataset. + example: My LLM Dataset + type: string + required: + - name + type: object + LLMObsDeleteDatasetsDataAttributesRequest: + description: Attributes for deleting Agent Observability datasets. + properties: + dataset_ids: + description: List of dataset IDs to delete. + example: + - 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + items: + description: A dataset ID to delete. + type: string + type: array + required: + - dataset_ids + type: object + LLMObsDatasetUpdateDataAttributesRequest: + description: Attributes for updating an Agent Observability dataset. + properties: + description: + description: Updated description of the dataset. + type: string + metadata: + additionalProperties: {} + description: Updated metadata associated with the dataset. + type: object + name: + description: Updated name of the dataset. + type: string + type: object + LLMObsDatasetBatchUpdateDataAttributesRequest: + description: Attributes for batch-updating records in an Agent Observability dataset. + properties: + create_new_version: + description: Whether to create a new dataset version when applying the batch update. Defaults to `true`. + example: true + type: boolean + delete_records: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateDeleteRecords' + insert_records: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateInsertRecords' + tags: + $ref: '#/components/schemas/LLMObsDatasetRecordTagsList' + update_records: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateUpdateRecords' + type: object + LLMObsDatasetCloneDataAttributesRequest: + description: Attributes for cloning an Agent Observability dataset. + properties: + description: + description: Description of the cloned dataset. + example: Clone of the original dataset for experimentation. + type: string + name: + description: Name of the cloned dataset. + example: My cloned dataset + type: string + required: + - name + type: object + LLMObsDatasetDraftStateDataAttributes: + description: Attributes of an Agent Observability dataset draft state. + properties: + drafting_since: + description: Timestamp when the dataset draft session started. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + user: + $ref: '#/components/schemas/LLMObsDatasetDraftStateUser' + required: + - user + - drafting_since + type: object + LLMObsDatasetDraftStateType: + description: Resource type of an Agent Observability dataset draft state. + enum: + - draft_state_data + example: draft_state_data + type: string + x-enum-varnames: + - DRAFT_STATE_DATA + AnyValue: + description: Represents any valid JSON value. + nullable: true + type: object + format: double + additionalProperties: {} + items: + $ref: '#/components/schemas/AnyValueItem' + LLMObsDatasetRecordsUpdateDataAttributesRequest: + description: Attributes for updating records in an Agent Observability dataset. + properties: + records: + description: List of records to update. + items: + $ref: '#/components/schemas/LLMObsDatasetRecordUpdateItem' + type: array + required: + - records + type: object + LLMObsRecordType: + description: Resource type of Agent Observability dataset records. + enum: + - records + example: records + type: string + x-enum-varnames: + - RECORDS + LLMObsDatasetRecordsDataAttributesRequest: + description: Attributes for appending records to an Agent Observability dataset. + properties: + deduplicate: + description: Whether to deduplicate records before appending. Defaults to `true`. + type: boolean + records: + description: List of records to append to the dataset. + items: + $ref: '#/components/schemas/LLMObsDatasetRecordItem' + type: array + required: + - records + type: object + LLMObsDeleteDatasetRecordsDataAttributesRequest: + description: Attributes for deleting records from an Agent Observability dataset. + properties: + record_ids: + description: List of record IDs to delete. + example: + - rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + items: + description: A record ID to delete. + type: string + type: array + required: + - record_ids + type: object + LLMObsDatasetRestoreVersionDataAttributesRequest: + description: Attributes for restoring an Agent Observability dataset to a previous version. + properties: + dataset_version: + description: Version number of the dataset to restore. Must be between 0 and the current version of the dataset, inclusive. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - dataset_version + type: object + LLMObsDatasetVersionData: + description: Data object for an Agent Observability dataset version. + properties: + attributes: + $ref: '#/components/schemas/LLMObsDatasetVersionDataAttributes' + id: + description: Unique identifier of the dataset version. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + type: + $ref: '#/components/schemas/LLMObsDatasetVersionType' + required: + - id + - type + - attributes + type: object + LLMObsExperimentEventsV2DataAttributesResponse: + description: Attributes of an experiment events response. + properties: + spans: + description: Experiment spans, each enriched with their associated evaluation metrics. + items: + $ref: '#/components/schemas/LLMObsExperimentSpanWithEvals' + type: array + summary_metrics: + description: Experiment-level summary evaluation metrics (not tied to individual spans). + items: + $ref: '#/components/schemas/LLMObsExperimentEvalMetricEvent' + type: array + required: + - spans + - summary_metrics + type: object + LLMObsExperimentEventsType: + description: Resource type for an experiment events collection. + enum: + - experiment_events + example: experiment_events + type: string + x-enum-varnames: + - EXPERIMENT_EVENTS + ModelLabFacetKeysAttributes: + description: Available facet key names for filtering resources. + properties: + metrics: + description: The list of available metric facet keys. + example: + - accuracy + items: + type: string + nullable: true + type: array + parameters: + description: The list of available parameter facet keys. + example: + - learning_rate + items: + type: string + type: array + tags: + description: The list of available tag facet keys. + example: + - model + items: + type: string + type: array + required: + - parameters + - tags + - metrics + type: object + ModelLabFacetKeysType: + description: The JSON:API type for a facet keys resource. + enum: + - facet_keys + example: facet_keys + type: string + x-enum-varnames: + - FACET_KEYS + ModelLabFacetValuesAttributes: + description: Available values for a specific facet key. + properties: + facet_name: + description: The name of the facet. + example: model + type: string + facet_type: + description: The type of the facet. + example: tag + type: string + metric_stat_ranges: + description: The ranges for each metric statistic. + items: + $ref: '#/components/schemas/ModelLabMetricStatRange' + type: array + numeric_range: + $ref: '#/components/schemas/ModelLabNumericRange' + values: + description: The list of available string values for this facet. + example: + - gpt4 + items: + type: string + type: array + required: + - facet_type + - facet_name + - values + type: object + ModelLabFacetValuesType: + description: The JSON:API type for a facet values resource. + enum: + - facet_values + example: facet_values + type: string + x-enum-varnames: + - FACET_VALUES + ModelLabProjectAttributes: + description: Attributes of a Model Lab project. + properties: + artifact_storage_location: + description: The storage location for project artifacts. + example: s3://bucket/active-project + type: string + created_at: + description: The date and time the project was created. + example: '2024-01-20T10:00:00Z' + format: date-time + type: string + deleted_at: + description: The date and time the project was soft-deleted. + format: date-time + nullable: true + type: string + description: + description: A description of the project. + example: A machine learning training project. + type: string + external_url: + description: An optional external URL associated with the project. + nullable: true + type: string + is_starred: + description: Whether the project is starred by the current user. + example: false + type: boolean + name: + description: The name of the project. + example: active-project + type: string + owner_id: + description: The UUID of the project owner. + nullable: true + type: string + tags: + description: The list of tags associated with the project. + items: + $ref: '#/components/schemas/ModelLabTag' + type: array + updated_at: + description: The date and time the project was last updated. + example: '2024-01-20T11:00:00Z' + format: date-time + type: string + required: + - name + - description + - artifact_storage_location + - created_at + - updated_at + - tags + - is_starred + type: object + ModelLabProjectType: + description: The JSON:API type for a Model Lab project resource. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + ModelLabPageMetaPage: + description: Pagination details for a list response. + properties: + first_number: + description: The first page number. + format: int64 + type: integer + last_number: + description: The last page number. + format: int64 + type: integer + next_number: + description: The next page number. + format: int64 + nullable: true + type: integer + number: + description: The current page number. + example: 1 + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + nullable: true + type: integer + size: + description: The number of items per page. + example: 25 + format: int64 + type: integer + total: + description: The total number of items. + example: 100 + format: int64 + type: integer + type: + description: The pagination type. + type: string + required: + - number + - size + - total + type: object + ModelLabProjectArtifactsAttributes: + description: Artifact listing for a Model Lab project. + properties: + files: + description: The list of artifact files associated with the project. + items: + $ref: '#/components/schemas/ModelLabArtifactInfo' + type: array + required: + - files + type: object + ModelLabProjectArtifactsType: + description: The JSON:API type for a project artifacts resource. + enum: + - project_files + example: project_files + type: string + x-enum-varnames: + - PROJECT_FILES + ModelLabRunAttributes: + description: Attributes of a Model Lab run. + properties: + completed_at: + description: The date and time the run completed. + format: date-time + nullable: true + type: string + created_at: + description: The date and time the run was created. + example: '2024-01-20T10:00:00Z' + format: date-time + type: string + deleted_at: + description: The date and time the run was soft-deleted. + format: date-time + nullable: true + type: string + descendant_match: + description: Whether a descendant run matched the applied filters. + example: false + type: boolean + description: + description: A description of the run. + example: Fine-tuning run with custom hyperparameters. + type: string + duration: + description: The duration of the run in seconds. + format: double + nullable: true + type: number + external_url: + description: An optional external URL associated with the run. + nullable: true + type: string + has_children: + description: Whether the run has child runs. + example: false + type: boolean + is_pinned: + description: Whether the run is pinned by the current user. + example: false + type: boolean + metric_summaries: + description: Summary statistics for metrics recorded during the run. + items: + $ref: '#/components/schemas/ModelLabMetricSummary' + type: array + mlflow_artifact_location: + description: The MLflow artifact storage location for this run. + example: s3://bucket/active-run + type: string + name: + description: The name of the run. + example: training-run-1 + type: string + owner_id: + description: The UUID of the run owner. + nullable: true + type: string + params: + description: The list of parameters used for the run. + items: + $ref: '#/components/schemas/ModelLabRunParam' + nullable: true + type: array + project_id: + description: The ID of the project this run belongs to. + example: 101 + format: int64 + type: integer + started_at: + description: The date and time the run started. + example: '2024-01-20T10:00:00Z' + format: date-time + type: string + status: + $ref: '#/components/schemas/ModelLabRunStatus' + tags: + description: The list of tags associated with the run. + items: + $ref: '#/components/schemas/ModelLabTag' + type: array + updated_at: + description: The date and time the run was last updated. + example: '2024-01-20T11:00:00Z' + format: date-time + type: string + required: + - project_id + - name + - description + - status + - mlflow_artifact_location + - started_at + - created_at + - updated_at + - tags + - params + - metric_summaries + - is_pinned + - has_children + - descendant_match + type: object + ModelLabRunType: + description: The JSON:API type for a Model Lab run resource. + enum: + - runs + example: runs + type: string + x-enum-varnames: + - RUNS + ModelLabRunArtifactsAttributes: + description: Artifact listing for a Model Lab run. + properties: + files: + description: The list of artifact files and directories. + items: + $ref: '#/components/schemas/ModelLabArtifactObjectInfo' + type: array + path_in_project: + description: The path of the run's artifacts relative to the project's artifact root. + example: runs/42 + type: string + required: + - path_in_project + - files + type: object + ModelLabRunArtifactsType: + description: The JSON:API type for a run artifacts resource. + enum: + - artifacts + example: artifacts + type: string + x-enum-varnames: + - ARTIFACTS + LLMObsCustomEvalConfigUser: + description: A Datadog user associated with a custom evaluator configuration. + properties: + email: + description: Email address of the user. + example: user@example.com + type: string + type: object + LLMObsCustomEvalConfigLLMJudgeConfig: + description: LLM judge configuration for a custom evaluator. + properties: + assessment_criteria: + $ref: '#/components/schemas/LLMObsCustomEvalConfigAssessmentCriteria' + context_query: + description: Query used to extract additional context for the evaluation. + example: '@input.context' + nullable: true + type: string + inference_params: + $ref: '#/components/schemas/LLMObsCustomEvalConfigInferenceParams' + last_used_library_prompt_template_name: + description: Name of the last library prompt template used. + example: sentiment-analysis-v1 + nullable: true + type: string + modified_library_prompt_template: + description: Whether the library prompt template was modified. + example: false + nullable: true + type: boolean + output_schema: + additionalProperties: {} + description: JSON schema describing the expected output format of the LLM judge. + nullable: true + type: object + parsing_type: + $ref: '#/components/schemas/LLMObsCustomEvalConfigParsingType' + prompt_template: + description: List of messages forming the LLM judge prompt template. + items: + $ref: '#/components/schemas/LLMObsCustomEvalConfigPromptMessage' + type: array + target_query: + description: Query used to extract the target value to evaluate. + example: '@output.value' + nullable: true + type: string + user_specified_json_post_processing_function: + description: User-provided function applied to post-process the JSON output of the LLM judge. + nullable: true + type: string + required: + - inference_params + type: object + LLMObsCustomEvalConfigLLMProvider: + description: LLM provider configuration for a custom evaluator. + properties: + bedrock: + $ref: '#/components/schemas/LLMObsCustomEvalConfigBedrockOptions' + integration_account_id: + description: Integration account identifier. + example: my-account-id + type: string + integration_provider: + $ref: '#/components/schemas/LLMObsCustomEvalConfigIntegrationProvider' + model_name: + description: Name of the LLM model. + example: gpt-4o + type: string + vertex_ai: + $ref: '#/components/schemas/LLMObsCustomEvalConfigVertexAIOptions' + type: object + LLMObsCustomEvalConfigTarget: + description: Target application configuration for a custom evaluator. + properties: + application_name: + description: Name of the ML application this evaluator targets. + example: my-llm-app + type: string + enabled: + description: Whether the evaluator is active for the target application. + example: true + type: boolean + eval_scope: + $ref: '#/components/schemas/LLMObsCustomEvalConfigEvalScope' + nullable: true + experiment_project_ids: + description: Experiment project IDs this evaluator is scoped to. + items: + description: An experiment project ID. + format: uuid + type: string + type: array + filter: + description: Filter expression to select which spans to evaluate. + example: '@service:my-service' + nullable: true + type: string + root_spans_only: + description: When true, only root spans are evaluated. + example: true + nullable: true + type: boolean + sampling_percentage: + description: Percentage of traces to evaluate. Must be greater than 0 and at most 100. + example: 50 + format: double + nullable: true + type: number + required: + - application_name + - enabled + type: object + LLMObsAnnotatedInteractionByTraceItem: + description: An annotated interaction returned by the cross-queue lookup, including the source queue metadata. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: '#/components/schemas/LLMObsAnnotationItem' + type: array + content_id: + description: Upstream entity identifier (trace ID, session ID, or deterministic display_block ID). + example: trace-abc-123 + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: '2025-06-01T12:00:00Z' + format: date-time + type: string + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + id: + description: Unique identifier of the interaction. + example: interaction-456 + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: '2025-06-01T12:00:00Z' + format: date-time + type: string + queue_id: + description: Identifier of the annotation queue this interaction belongs to. + example: queue-uuid-001 + type: string + queue_name: + description: Name of the annotation queue this interaction belongs to. + example: My Annotation Queue + type: string + type: + $ref: '#/components/schemas/LLMObsAnyInteractionType' + required: + - id + - type + - content_id + - created_at + - modified_at + - queue_id + - queue_name + - annotations + type: object + LLMObsAnnotationSchema: + description: Schema defining the labels for an annotation queue. + properties: + label_schemas: + description: List of label schema definitions. + items: + $ref: '#/components/schemas/LLMObsLabelSchema' + type: array + required: + - label_schemas + type: object + LLMObsAnnotatedInteractionItem: + description: An interaction with its associated annotations. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: '#/components/schemas/LLMObsAnnotationItem' + type: array + content_id: + description: Upstream entity identifier supplied by the caller. + example: trace-abc-123 + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + id: + description: Unique identifier of the interaction. + example: interaction-456 + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + type: + $ref: '#/components/schemas/LLMObsTraceInteractionType' + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + required: + - id + - type + - content_id + - created_at + - modified_at + - annotations + - display_block + type: object + LLMObsUpsertAnnotationItem: + description: |- + A single annotation to create or update. The annotation is matched by + `interaction_id` and the requesting user's identity. + properties: + interaction_id: + description: ID of the interaction to annotate. + example: 00000000-0000-0000-0000-000000000001 + type: string + label_values: + description: |- + Label values for this annotation. Each entry references a label schema by ID + and provides the corresponding value validated against the schema type constraints. + example: + - label_schema_id: abc-123 + value: good + - label_schema_id: ef56gh78 + value: positive + items: + $ref: '#/components/schemas/LLMObsAnnotationLabelValue' + minItems: 1 + type: array + required: + - interaction_id + - label_values + type: object + LLMObsAnnotationItemResponse: + description: A single annotation on an interaction, as returned by the API. + properties: + created_at: + description: Timestamp when the annotation was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + created_by: + description: Identifier of the user who created the annotation. + example: 00000000-0000-0000-0000-000000000002 + type: string + id: + description: Unique identifier of the annotation. + example: annotation-789 + type: string + interaction_id: + description: Identifier of the interaction this annotation belongs to. + example: interaction-456 + type: string + label_values: + description: |- + Label values for this annotation. Each entry references a label schema by ID + and provides the corresponding value. + example: + - label_schema_id: abc-123 + value: good + items: + $ref: '#/components/schemas/LLMObsAnnotationLabelValueResponse' + type: array + modified_at: + description: Timestamp when the annotation was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + modified_by: + description: Identifier of the user who last modified the annotation. + example: 00000000-0000-0000-0000-000000000002 + type: string + required: + - id + - interaction_id + - label_values + - created_by + - created_at + - modified_by + - modified_at + type: object + LLMObsAnnotationError: + description: A partial error for a single annotation that could not be processed. + properties: + annotation_id: + description: ID of the annotation that failed, if applicable. + example: 00000000-0000-0000-0000-000000000000 + type: string + error: + description: Error message. + example: interaction not found + type: string + interaction_id: + description: ID of the interaction that failed. + example: 00000000-0000-0000-0000-000000000001 + type: string + required: + - interaction_id + - error + type: object + LLMObsDeleteAnnotationError: + description: A partial error for a single annotation that could not be deleted. + properties: + annotation_id: + description: ID of the annotation that could not be deleted. + example: 00000000-0000-0000-0000-000000000000 + type: string + error: + description: Error message. + example: annotation not found + type: string + required: + - annotation_id + - error + type: object + LLMObsAnnotationQueueInteractionItem: + description: A single interaction to add to an annotation queue. + properties: + content_id: + description: Upstream entity identifier (trace, experiment trace, or session ID). + example: trace-abc-123 + type: string + type: + $ref: '#/components/schemas/LLMObsTraceInteractionType' + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + required: + - type + - content_id + - display_block + type: object + LLMObsAnnotationQueueInteractionResponseItem: + description: A single interaction result. + properties: + already_existed: + description: Whether this interaction already existed in the queue. + example: false + type: boolean + content_id: + description: Upstream entity identifier supplied by the caller. + example: trace-abc-123 + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + id: + description: Unique identifier of the interaction. + example: 00000000-0000-0000-0000-000000000000 + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + type: + $ref: '#/components/schemas/LLMObsTraceInteractionType' + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + required: + - id + - type + - content_id + - already_existed + - created_at + - modified_at + - display_block + type: object + LLMObsExperimentationAnalyticsAggregate: + description: Analytics aggregation parameters. + properties: + compute: + description: List of metric computations to perform. + items: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsCompute' + minItems: 1 + type: array + dataset_version: + description: Filter to a specific dataset version. + format: int64 + nullable: true + type: integer + group_by: + description: Fields to group results by. + items: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsGroupBy' + type: array + indexes: + description: Data indexes to query. At least one is required. + example: + - experiment-evals + items: + type: string + minItems: 1 + type: array + limit: + description: Maximum number of results to return. + example: 1000 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + search: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsSearch' + time: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsTimeRange' + required: + - compute + - indexes + - search + type: object + LLMObsExperimentationAnalyticsResult: + description: Analytics query result containing all buckets. + properties: + values: + description: List of result buckets. + items: + $ref: '#/components/schemas/LLMObsExperimentationAnalyticsValue' + type: array + required: + - values + type: object + LLMObsExperimentationContentPreview: + description: Options to control content preview truncation. + properties: + limit: + description: Maximum number of characters to include in content previews. + example: 500 + format: int64 + type: integer + type: object + LLMObsExperimentationFilter: + description: Filter criteria for an experimentation search request. + properties: + include_deleted: + default: false + description: When `true`, include soft-deleted entities alongside active ones. + type: boolean + is_deleted: + default: false + description: When `true`, return only soft-deleted entities. + type: boolean + query: + description: Free-text search query. + example: my experiment + type: string + scope: + description: Entity types to search. Valid values are `projects`, `datasets`, `dataset_records`, `experiments`, and `experiment_runs`. + example: + - experiments + items: + example: experiments + type: string + type: array + version: + description: Filter dataset records by a specific dataset version. + format: int64 + nullable: true + type: integer + required: + - scope + type: object + LLMObsExperimentationInclude: + description: Additional data to include in the response. + properties: + user_data: + default: false + description: When `true`, enrich results with author user data (name and email). + type: boolean + type: object + LLMObsExperimentationCursorPage: + description: Cursor-based pagination parameters. + properties: + cursor: + description: Opaque cursor returned from a previous response to fetch the next page. + type: string + limit: + description: Maximum number of results per page. + example: 100 + format: int64 + type: integer + type: object + LLMObsExperimentRunDataResponse: + description: Data object for an Agent Observability experiment run. + properties: + aggregate_data: + additionalProperties: {} + description: Aggregated metric data for this run. + nullable: true + type: object + created_at: + description: Timestamp when the run was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + experiment_id: + description: Identifier of the experiment this run belongs to. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + id: + description: Unique identifier of the experiment run. + example: 7a1b2c3d-4e5f-6789-abcd-ef0123456789 + type: string + run_number: + description: Sequential number of this run within the experiment. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + LLMObsExperimentationNumberPage: + description: Offset-based pagination parameters for simple search. + properties: + limit: + description: Maximum number of results per page. + example: 50 + format: int32 + maximum: 2147483647 + type: integer + number: + description: Page number to retrieve (1-indexed). + example: 1 + format: int32 + maximum: 2147483647 + minimum: 1 + type: integer + type: object + LLMObsExperimentationSortField: + description: A field and direction to sort results by. + properties: + direction: + $ref: '#/components/schemas/LLMObsExperimentationSortFieldDirection' + field: + description: The field name to sort on. + example: created_at + type: string + required: + - field + type: object + LLMObsExperimentUser: + description: User data for the author of an experiment. Only present when `include[user_data]` is `true`. + properties: + email: + description: Email address of the user. + example: jane.doe@example.com + type: string + handle: + description: Username or handle associated with the user's Datadog account. + example: jane.doe@example.com + type: string + icon: + description: URL of the user's icon. + example: https://example.com/icon.png + type: string + id: + description: Unique identifier of the user. + example: 00000000-0000-0000-0000-000000000010 + type: string + name: + description: Display name of the user. + example: Jane Doe + type: string + type: object + LLMObsExperimentStatus: + description: Execution status of an Agent Observability experiment. + enum: + - running + - completed + - failed + - interrupted + example: completed + type: string + x-enum-varnames: + - RUNNING + - COMPLETED + - FAILED + - INTERRUPTED + LLMObsExperimentEvalMetricEvent: + description: An evaluation metric event associated with an experiment span. + properties: + assessment: + $ref: '#/components/schemas/LLMObsMetricAssessment' + boolean_value: + description: Boolean value. Present when `metric_type` is `boolean`. + nullable: true + type: boolean + categorical_value: + description: Categorical value. Present when `metric_type` is `categorical`. + nullable: true + type: string + eval_source_type: + description: Source type of the evaluation. + example: managed + type: string + id: + description: Unique identifier of the evaluation metric event. + example: 00000000-0000-0000-0000-000000000001 + type: string + json_value: + additionalProperties: {} + description: JSON value. Present when `metric_type` is `json`. + nullable: true + type: object + label: + description: Label or name for the metric. + example: faithfulness + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the metric. + nullable: true + type: object + metric_source: + description: Source of the metric. Either `custom` (user-submitted) or `summary` (experiment-level aggregate). + example: custom + type: string + metric_type: + $ref: '#/components/schemas/LLMObsMetricScoreType' + reasoning: + description: Human-readable reasoning for the metric value. + nullable: true + type: string + score_value: + description: Numeric score. Present when `metric_type` is `score`. + format: double + nullable: true + type: number + span_id: + description: Span ID this metric is associated with. + example: span-7a1b2c3d + type: string + tags: + description: Tags associated with the metric. + items: + type: string + type: array + timestamp_ms: + description: Timestamp when the metric was recorded, in milliseconds since Unix epoch. + example: 1705314600000 + format: int64 + type: integer + trace_id: + description: Trace ID linking this metric to a span. + example: abc123def456 + type: string + type: object + LLMObsExperimentSpanMeta: + description: Metadata associated with an experiment span. + properties: + error: + $ref: '#/components/schemas/LLMObsExperimentSpanError' + expected_output: + additionalProperties: {} + description: Expected output for the span, used for evaluation. + type: object + input: + $ref: '#/components/schemas/AnyValue' + output: + $ref: '#/components/schemas/AnyValue' + type: object + LLMObsExperimentSpanStatus: + description: Status of the span. + enum: + - ok + - error + example: ok + type: string + x-enum-varnames: + - OK + - ERROR + LLMObsExperimentMetric: + description: A metric associated with an Agent Observability experiment span. + properties: + assessment: + $ref: '#/components/schemas/LLMObsMetricAssessment' + boolean_value: + description: Boolean value. Used when `metric_type` is `boolean`. + type: boolean + categorical_value: + description: Categorical value. Used when `metric_type` is `categorical`. + type: string + error: + $ref: '#/components/schemas/LLMObsExperimentMetricError' + json_value: + additionalProperties: {} + description: JSON value. Used when `metric_type` is `json`. + type: object + label: + description: Label or name for the metric. + example: faithfulness + type: string + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the metric. + type: object + metric_type: + $ref: '#/components/schemas/LLMObsMetricScoreType' + reasoning: + description: Human-readable reasoning for the metric value. + type: string + score_value: + description: Numeric score value. Used when `metric_type` is `score`. + format: double + type: number + span_id: + description: The ID of the span this metric measures. + example: span-7a1b2c3d + type: string + tags: + description: List of tags associated with the metric. + items: + description: A tag string in `key:value` format. + type: string + type: array + timestamp_ms: + description: Timestamp when the metric was recorded, in milliseconds since Unix epoch. + example: 1705314600000 + format: int64 + type: integer + required: + - span_id + - metric_type + - timestamp_ms + - label + type: object + LLMObsExperimentSpan: + description: A span associated with an Agent Observability experiment. + properties: + dataset_id: + description: Dataset ID associated with this span. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + duration: + description: Duration of the span in nanoseconds. + example: 1500000000 + format: int64 + type: integer + meta: + $ref: '#/components/schemas/LLMObsExperimentSpanMeta' + name: + description: Name of the span. + example: llm_call + type: string + project_id: + description: Project ID associated with this span. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + type: string + span_id: + description: Unique identifier of the span. + example: span-7a1b2c3d + type: string + start_ns: + description: Start time of the span in nanoseconds since Unix epoch. + example: 1705314600000000000 + format: int64 + type: integer + status: + $ref: '#/components/schemas/LLMObsExperimentSpanStatus' + tags: + description: List of tags associated with the span. + items: + description: A tag string in `key:value` format. + type: string + type: array + trace_id: + description: Trace ID for the span. + example: abc123def456 + type: string + required: + - trace_id + - span_id + - project_id + - dataset_id + - name + - start_ns + - duration + - status + type: object + LLMObsAnthropicThinkingType: + description: The thinking mode for Anthropic extended thinking. + enum: + - enabled + - disabled + - adaptive + example: enabled + type: string + x-enum-varnames: + - ENABLED + - DISABLED + - ADAPTIVE + LLMObsInferenceContentList: + description: List of structured content blocks in a message. + items: + $ref: '#/components/schemas/LLMObsInferenceContent' + type: array + LLMObsInferenceToolCallsList: + description: List of tool calls in a message. + items: + $ref: '#/components/schemas/LLMObsInferenceToolCall' + type: array + LLMObsInferenceToolResultsList: + description: List of tool results in a message. + items: + $ref: '#/components/schemas/LLMObsInferenceToolResult' + type: array + LLMObsInferenceFunction: + description: A function definition for a tool available to the model. + properties: + description: + description: A description of what the function does. + example: Get the current weather for a location. + type: string + name: + description: The name of the function. + example: get_weather + type: string + parameters: + additionalProperties: {} + description: JSON schema describing the function parameters. + example: + properties: + location: + type: string + type: object + type: object + required: + - name + - parameters + type: object + LLMObsInferenceCode: + description: A generated code snippet for running an inference request programmatically. + properties: + code: + description: The generated code content. + example: |- + import openai + client = openai.OpenAI() + ... + type: string + id: + description: Unique identifier for the code snippet. + example: code-python-001 + type: string + type: + description: The programming language or SDK type of the code snippet. + example: python + type: string + required: + - id + - type + - code + type: object + LLMObsPromptDataset: + description: A dataset observed in runs associated with a prompt or prompt version. + properties: + id: + description: Unique identifier of the dataset. + example: '' + type: string + name: + description: Name of the dataset. + type: string + required: + - id + type: object + LLMObsPromptResponseSource: + description: Whether the prompt was created from the registry or discovered from observed LLM calls. + enum: + - registry + - code + example: registry + type: string + x-enum-varnames: + - REGISTRY + - CODE + LLMObsPromptVersionLabel: + description: A label attached to an Agent Observability prompt version. + enum: + - production + - development + type: string + x-enum-varnames: + - PRODUCTION + - DEVELOPMENT + LLMObsPromptTemplate: + description: A text template or a list of chat messages. + example: You are a helpful assistant for {{audience}}. + minLength: 1 + pattern: .*\S.* + type: string + items: + $ref: '#/components/schemas/LLMObsPromptChatMessage' + minItems: 1 + x-generate-alias-as-model: true + LLMObsPromptChatMessage: + description: A single chat message in a prompt template. + properties: + content: + description: Content of the message. + example: You are a helpful customer support assistant for {{company_name}}. + type: string + role: + description: Role of the message (for example `system`, `user`, or `assistant`). + example: system + type: string + required: + - role + - content + type: object + LLMObsSpanEvaluationMetric: + description: An evaluation metric associated with an Agent Observability span. + properties: + assessment: + description: Assessment result (e.g., pass or fail). + example: pass + type: string + eval_metric_type: + description: Type of the evaluation metric (e.g., score, categorical, boolean). + example: score + type: string + reasoning: + description: Human-readable reasoning for the evaluation result. + type: string + status: + description: Status of the evaluation execution. + type: string + tags: + description: Tags associated with the evaluation metric. + items: + type: string + type: array + value: + description: Value of the evaluation result. + type: object + LLMObsSpanIO: + description: Input or output content of an Agent Observability span. + properties: + messages: + description: List of messages in the input or output. + items: + $ref: '#/components/schemas/LLMObsSpanMessage' + type: array + value: + description: Plain-text value of the input or output. + type: string + type: object + LLMObsSpanToolDefinition: + description: A tool definition available to an LLM span. + properties: + description: + description: Description of what the tool does. + type: string + name: + description: Name of the tool. + type: string + schema: + additionalProperties: {} + description: JSON schema describing the tool's input parameters. + type: object + version: + description: Version of the tool definition. + type: string + type: object + LLMObsSpanFilter: + description: Filter criteria for an Agent Observability span search. + properties: + from: + description: Start of the time range. Accepts ISO 8601 or relative format (e.g., `now-15m`). Defaults to `now-15m`. + example: now-900s + type: string + ml_app: + description: Filter by ML application name. + example: my-llm-app + type: string + query: + description: Search query using Agent Observability query syntax. Supports attribute filters using the field:value syntax (e.g. session_id, trace_id, ml_app, meta.span.kind). When provided, structured field filters (`span_id`, `trace_id`, etc.) are ignored. + example: '@session_id:abc123def456' + type: string + span_id: + description: Filter by exact span ID. + example: abc123def456 + type: string + span_kind: + description: Filter by span kind (e.g., llm, agent, tool, task, workflow). + example: llm + type: string + span_name: + description: Filter by span name. + example: llm_call + type: string + tags: + additionalProperties: + type: string + description: Filter by tag key-value pairs. + type: object + to: + description: End of the time range. Accepts ISO 8601 or relative format (e.g., `now`). Defaults to `now`. + example: now + type: string + trace_id: + description: Filter by exact trace ID. + example: trace-9a8b7c6d5e4f + type: string + type: object + LLMObsSpanSearchOptions: + description: Additional options for a span search request. + properties: + include_attachments: + description: Whether to include attachment data in the response. Defaults to `true`. + example: true + type: boolean + time_offset: + description: Offset in seconds applied to both `from` and `to` timestamps. + example: 0 + format: int64 + type: integer + type: object + LLMObsSpanPageQuery: + description: Pagination settings for a span search request. + properties: + cursor: + description: Cursor from the previous response to retrieve the next page. + example: eyJzdGFydCI6MTAwfQ== + type: string + limit: + description: Maximum number of spans to return. Defaults to `10`. + example: 10 + format: int64 + type: integer + type: object + LLMObsPatternsClusteredPointsList: + description: List of clustered points. + items: + $ref: '#/components/schemas/LLMObsPatternsClusteredPoint' + type: array + LLMObsPatternsConfigItemsList: + description: List of patterns configurations. + items: + $ref: '#/components/schemas/LLMObsPatternsConfigItem' + type: array + LLMObsPatternsRunsList: + description: List of patterns runs. + items: + $ref: '#/components/schemas/LLMObsPatternsRunSummary' + type: array + LLMObsPatternsProgressList: + description: List of step-by-step progress entries for a patterns run. + items: + $ref: '#/components/schemas/LLMObsPatternsActivityProgress' + type: array + LLMObsPatternsConfigSnapshot: + description: Snapshot of the configuration used for a patterns run. + properties: + account_id: + description: Integration account ID used for a bring-your-own-model run. + example: '1000000001' + type: string + evp_query: + description: Query that selected the spans for the run. + example: '@ml_app:support-bot' + type: string + hierarchy_depth: + description: Depth of the topic hierarchy generated. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + integration_provider: + description: Integration provider used for a bring-your-own-model run. + example: openai + type: string + model_name: + description: Model name used for a bring-your-own-model run. + example: gpt-4o + type: string + num_records: + description: Maximum number of records processed for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans sampled for the run. + example: 0.1 + format: double + type: number + type: object + LLMObsPatternsTopicsList: + description: List of discovered topics. + items: + $ref: '#/components/schemas/LLMObsPatternsTopic' + type: array + LLMObsPatternsTopicsWithClusteredPointsList: + description: List of discovered topics with their clustered points. + items: + $ref: '#/components/schemas/LLMObsPatternsTopicWithClusteredPoints' + type: array + LLMObsDatasetBatchUpdateDeleteRecords: + description: Record IDs to delete. + items: + description: A record ID to delete. + type: string + type: array + LLMObsDatasetBatchUpdateInsertRecords: + description: Records to insert. + items: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateInsertRecord' + type: array + LLMObsDatasetRecordTagsList: + description: List of tag strings. + items: + description: A tag. + type: string + type: array + LLMObsDatasetBatchUpdateUpdateRecords: + description: Records to update by ID. + items: + $ref: '#/components/schemas/LLMObsDatasetBatchUpdateUpdateRecord' + type: array + LLMObsDatasetDraftStateUser: + description: User information associated with a dataset draft state. + properties: + email: + description: Email address of the user. + example: jane.doe@example.com + type: string + handle: + description: Handle of the user. + example: jane.doe@example.com + type: string + icon: + description: Icon for the user. + example: '' + type: string + id: + description: Unique identifier of the user holding the draft lock. + example: 00000000-0000-0000-0000-000000000010 + type: string + name: + description: Display name of the user. + example: Jane Doe + type: string + required: + - id + type: object + AnyValueString: + description: A scalar value represented as a string. + type: string + AnyValueNumber: + description: A scalar numeric value. + format: double + type: number + AnyValueObject: + additionalProperties: {} + description: An arbitrary object value with additional properties. + type: object + AnyValueArray: + description: An array of arbitrary values. + items: + $ref: '#/components/schemas/AnyValueItem' + type: array + AnyValueBoolean: + description: A scalar boolean value. + type: boolean + LLMObsDatasetRecordUpdateItem: + description: A record update payload for an Agent Observability dataset. + properties: + expected_output: + $ref: '#/components/schemas/AnyValue' + id: + description: Unique identifier of the record to update. + example: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: string + input: + $ref: '#/components/schemas/AnyValue' + metadata: + additionalProperties: {} + description: Updated metadata associated with the record. + type: object + required: + - id + type: object + LLMObsDatasetRecordItem: + description: A single record to append to an Agent Observability dataset. + properties: + expected_output: + $ref: '#/components/schemas/AnyValue' + input: + $ref: '#/components/schemas/AnyValue' + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the record. + type: object + required: + - input + type: object + LLMObsDatasetVersionDataAttributes: + description: Attributes of an Agent Observability dataset version. + properties: + dataset_id: + description: Unique identifier of the dataset this version belongs to. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + type: string + last_used: + description: Timestamp when this dataset version was last referenced. Null if the version has never been used. + example: '2024-01-15T10:30:00Z' + format: date-time + nullable: true + type: string + version_number: + description: Sequential version number for this dataset version. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - dataset_id + - version_number + - last_used + type: object + LLMObsDatasetVersionType: + description: Resource type of an Agent Observability dataset version. + enum: + - dataset_version + example: dataset_version + type: string + x-enum-varnames: + - DATASET_VERSION + ModelLabMetricStatRange: + description: The range of values for a specific metric statistic. + properties: + max: + description: The maximum value of the statistic. + example: 1 + format: double + type: number + min: + description: The minimum value of the statistic. + example: 0 + format: double + type: number + stat: + description: The metric statistic name. + example: mean + type: string + required: + - stat + - min + - max + type: object + ModelLabNumericRange: + description: The numeric range of values for a facet. + properties: + max: + description: The maximum value. + example: 1 + format: double + type: number + min: + description: The minimum value. + example: 0 + format: double + type: number + required: + - min + - max + type: object + ModelLabTag: + description: A key-value tag attached to a resource. + properties: + key: + description: The tag key. + example: model + type: string + value: + description: The tag value. + example: opus + type: string + required: + - key + - value + type: object + ModelLabArtifactInfo: + description: Information about a project-level artifact file. + properties: + artifact_path: + description: The full artifact path relative to the project's artifact root. + example: projects/1/artifacts/model.pkl + type: string + created_at: + description: The date and time the artifact was created. + example: '2024-01-20T10:00:00Z' + format: date-time + type: string + file_size: + description: The size of the file in bytes. + format: int64 + nullable: true + type: integer + filename: + description: The filename of the artifact. + example: model.pkl + type: string + required: + - filename + - artifact_path + - created_at + type: object + ModelLabMetricSummary: + description: Summary statistics for a metric recorded during a Model Lab run. + properties: + count: + description: The total number of recorded values. + example: 100 + format: int64 + type: integer + first_step: + description: The first step at which the metric was recorded. + format: int64 + nullable: true + type: integer + key: + description: The metric name. + example: accuracy + type: string + last_step: + description: The last step at which the metric was recorded. + format: int64 + nullable: true + type: integer + latest: + description: The most recently recorded value. + format: double + nullable: true + type: number + max: + description: The maximum recorded value. + format: double + nullable: true + type: number + mean: + description: The mean of recorded values. + format: double + nullable: true + type: number + min: + description: The minimum recorded value. + format: double + nullable: true + type: number + stddev: + description: The standard deviation of recorded values. + format: double + nullable: true + type: number + required: + - key + - count + type: object + ModelLabRunParam: + description: A key-value parameter for a Model Lab run. + properties: + key: + description: The parameter key. + example: algorithm + type: string + value: + description: The parameter value. + example: gpt4 + type: string + required: + - key + - value + type: object + ModelLabArtifactObjectInfo: + description: Information about an artifact file or directory within a run. + properties: + file_size: + description: The size of the file in bytes. + format: int64 + nullable: true + type: integer + is_dir: + description: Whether this artifact entry is a directory. + example: false + type: boolean + path: + description: The path of the artifact relative to the run's artifact root. + example: model/weights.pt + type: string + required: + - path + - is_dir + type: object + LLMObsCustomEvalConfigAssessmentCriteria: + description: Criteria used to assess the pass/fail result of a custom evaluator. + properties: + max_threshold: + description: Maximum numeric threshold for a passing result. + example: 1 + format: double + nullable: true + type: number + min_threshold: + description: Minimum numeric threshold for a passing result. + example: 0.7 + format: double + nullable: true + type: number + pass_values: + description: Specific output values considered as a passing result. + example: + - pass + - 'yes' + items: + description: A value considered as a passing result. + type: string + nullable: true + type: array + pass_when: + description: When true, a boolean output of true is treated as passing. + example: true + nullable: true + type: boolean + type: object + LLMObsCustomEvalConfigInferenceParams: + description: LLM inference parameters for a custom evaluator. + properties: + frequency_penalty: + description: Frequency penalty to reduce repetition. + example: 0 + format: double + type: number + max_tokens: + description: Maximum number of tokens to generate. + example: 1024 + format: int64 + type: integer + presence_penalty: + description: Presence penalty to reduce repetition. + example: 0 + format: double + type: number + temperature: + description: Sampling temperature for the LLM. + example: 0.7 + format: double + type: number + top_k: + description: Top-k sampling parameter. + example: 50 + format: int64 + type: integer + top_p: + description: Top-p (nucleus) sampling parameter. + example: 1 + format: double + type: number + type: object + LLMObsCustomEvalConfigParsingType: + description: Output parsing type for a custom LLM judge evaluator. + enum: + - structured_output + - json + - keyword_search + example: structured_output + type: string + x-enum-varnames: + - STRUCTURED_OUTPUT + - JSON + - KEYWORD_SEARCH + LLMObsCustomEvalConfigPromptMessage: + description: A message in the prompt template for a custom LLM judge evaluator. + properties: + content: + description: Text content of the message. + example: 'Rate the quality of the following response:' + type: string + contents: + description: Multi-part content blocks for the message. + items: + $ref: '#/components/schemas/LLMObsCustomEvalConfigPromptContent' + type: array + role: + description: Role of the message author. + example: user + type: string + required: + - role + type: object + LLMObsCustomEvalConfigBedrockOptions: + description: AWS Bedrock-specific options for LLM provider configuration. + properties: + inference_profile: + description: Bedrock inference profile identifier, such as an application inference profile ARN. + example: arn:aws:bedrock:us-east-1:123456789012:application-inference-profile/abc123 + type: string + region: + description: AWS region for Bedrock. + example: us-east-1 + type: string + type: object + LLMObsCustomEvalConfigIntegrationProvider: + description: Name of the LLM integration provider. + enum: + - openai + - amazon-bedrock + - anthropic + - azure-openai + - vertex-ai + - llm-proxy + example: openai + type: string + x-enum-varnames: + - OPENAI + - AMAZON_BEDROCK + - ANTHROPIC + - AZURE_OPENAI + - VERTEX_AI + - LLM_PROXY + LLMObsCustomEvalConfigVertexAIOptions: + description: Google Vertex AI-specific options for LLM provider configuration. + properties: + location: + description: Google Cloud region. + example: us-central1 + type: string + project: + description: Google Cloud project ID. + example: my-gcp-project + type: string + type: object + LLMObsCustomEvalConfigEvalScope: + description: Scope at which to evaluate spans. + enum: + - span + - trace + - session + example: span + type: string + x-enum-varnames: + - SPAN + - TRACE + - SESSION + LLMObsAnnotationItem: + description: A single annotation on an interaction. + properties: + created_at: + description: Timestamp when the annotation was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + created_by: + description: Identifier of the user who created the annotation. + example: 00000000-0000-0000-0000-000000000002 + type: string + id: + description: Unique identifier of the annotation. + example: annotation-789 + type: string + interaction_id: + description: Identifier of the interaction this annotation belongs to. + example: interaction-456 + type: string + label_values: + additionalProperties: {} + description: Label values for this annotation. + example: + - label_schema_id: abc-123 + value: good + type: object + modified_at: + description: Timestamp when the annotation was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + modified_by: + description: Identifier of the user who last modified the annotation. + example: 00000000-0000-0000-0000-000000000002 + type: string + required: + - id + - interaction_id + - label_values + - created_by + - created_at + - modified_by + - modified_at + type: object + LLMObsContentBlocks: + description: |- + List of content blocks that make up a `display_block` interaction. + Must contain at least one block. + items: + $ref: '#/components/schemas/LLMObsContentBlock' + minItems: 1 + type: array + LLMObsAnyInteractionType: + description: Type of an annotated interaction. + enum: + - trace + - experiment_trace + - session + - display_block + example: trace + type: string + x-enum-varnames: + - TRACE + - EXPERIMENT_TRACE + - SESSION + - DISPLAY_BLOCK + LLMObsLabelSchema: + description: Schema definition for a single label in an annotation queue. + properties: + description: + description: Description of the label. + example: Rating of the response quality. + type: string + has_assessment: + description: Whether this label includes an assessment field. + example: false + type: boolean + has_reasoning: + description: Whether this label includes a reasoning field. + example: false + type: boolean + id: + description: Unique identifier of the label schema. Assigned by the server if not provided. + example: abc-123 + type: string + is_assessment: + description: Whether the boolean label represents an assessment. Requires `has_assessment` to be true. + example: false + type: boolean + is_integer: + description: Whether score values must be integers. Applicable to score-type labels. + example: false + type: boolean + is_required: + description: Whether this label is required for an annotation. + example: true + type: boolean + max: + description: Maximum value for score-type labels. + example: 5 + format: double + type: number + min: + description: Minimum value for score-type labels. + example: 0 + format: double + type: number + name: + description: Name of the label. Must match the pattern `^[a-zA-Z0-9_-]+$` and be unique within the queue. + example: quality + type: string + type: + $ref: '#/components/schemas/LLMObsLabelSchemaType' + values: + description: Allowed values for categorical-type labels. Must contain at least one non-empty, unique value. + example: + - good + - bad + - neutral + items: + description: An allowed value for a categorical label. + type: string + type: array + required: + - name + - type + type: object + LLMObsTraceAnnotatedInteractionItem: + description: A trace, experiment trace, or session interaction with its associated annotations. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: '#/components/schemas/LLMObsAnnotationItem' + type: array + content_id: + description: Upstream entity identifier supplied by the caller. + example: trace-abc-123 + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + id: + description: Unique identifier of the interaction. + example: interaction-456 + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + type: + $ref: '#/components/schemas/LLMObsTraceInteractionType' + required: + - id + - type + - content_id + - created_at + - modified_at + - annotations + type: object + LLMObsDisplayBlockAnnotatedInteractionItem: + description: A display_block interaction with its associated annotations. + properties: + annotations: + description: List of annotations for this interaction. + items: + $ref: '#/components/schemas/LLMObsAnnotationItem' + type: array + content_id: + description: Server-generated deterministic identifier derived from the block list. + example: 9a87f3e2b1d4c5a6f8b3e2d1c4a7b5f6e3d2a1c4b7e5f8a3d6c2e1b4a7d5f8c2 + type: string + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + id: + description: Unique identifier of the interaction. + example: interaction-456 + type: string + type: + $ref: '#/components/schemas/LLMObsDisplayBlockInteractionType' + required: + - id + - type + - content_id + - annotations + - display_block + type: object + LLMObsAnnotationLabelValue: + description: |- + A single label value entry in an annotation. + The `value` type must match the label schema type: + - `score`: a number within the schema `min`/`max` range (integer if `is_integer` is `true`). + - `categorical`: a string that is one of the schema `values`. + - `boolean`: `true` or `false`. + - `text`: any non-empty string. + properties: + assessment: + $ref: '#/components/schemas/LLMObsAnnotationAssessment' + label_schema_id: + description: ID of the label schema this value corresponds to. + example: abc-123 + type: string + reasoning: + description: Free text reasoning for this label value. + example: The response was accurate and well-structured. + type: string + value: + $ref: '#/components/schemas/LLMObsAnnotationLabelValueValue' + required: + - label_schema_id + - value + type: object + LLMObsAnnotationLabelValueResponse: + description: |- + A single label value entry in an annotation response. + In addition to the submitted fields, the server populates `type` and + `name_when_saved` to mirror the schema state at the time the annotation + was created — these help clients display values correctly when the schema + has since changed. + properties: + assessment: + $ref: '#/components/schemas/LLMObsAnnotationAssessment' + label_schema_id: + description: ID of the label schema this value corresponds to. + example: abc-123 + type: string + name_when_saved: + description: Name of the label schema at the time the annotation was created. + example: quality + type: string + reasoning: + description: Free text reasoning for this label value. + example: The response was accurate and well-structured. + type: string + type: + $ref: '#/components/schemas/LLMObsLabelSchemaType' + value: + $ref: '#/components/schemas/LLMObsAnnotationLabelValueValue' + required: + - label_schema_id + - value + type: object + LLMObsTraceInteractionItem: + description: An interaction that references an upstream trace, experiment trace, or session. + properties: + content_id: + description: Upstream entity identifier (trace, experiment trace, or session ID). + example: trace-abc-123 + type: string + type: + $ref: '#/components/schemas/LLMObsTraceInteractionType' + required: + - type + - content_id + type: object + LLMObsDisplayBlockInteractionItem: + description: |- + An interaction whose rendered content is supplied directly as a list + of display blocks. The server generates `content_id` deterministically + from the block list. + properties: + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + type: + $ref: '#/components/schemas/LLMObsDisplayBlockInteractionType' + required: + - type + - display_block + type: object + LLMObsTraceInteractionResponseItem: + description: A trace, experiment trace, or session interaction result. + properties: + already_existed: + description: Whether this interaction already existed in the queue. + example: false + type: boolean + content_id: + description: Upstream entity identifier supplied by the caller. + example: trace-abc-123 + type: string + created_at: + description: Timestamp when the interaction was added to the queue. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + id: + description: Unique identifier of the interaction. + example: 00000000-0000-0000-0000-000000000000 + type: string + modified_at: + description: Timestamp when the interaction was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + type: + $ref: '#/components/schemas/LLMObsTraceInteractionType' + required: + - id + - type + - content_id + - already_existed + - created_at + - modified_at + type: object + LLMObsDisplayBlockInteractionResponseItem: + description: A display_block interaction result. + properties: + already_existed: + description: Whether this interaction already existed in the queue. + example: false + type: boolean + content_id: + description: Server-generated deterministic identifier derived from the block list. + example: 9a87f3e2b1d4c5a6f8b3e2d1c4a7b5f6e3d2a1c4b7e5f8a3d6c2e1b4a7d5f8c2 + type: string + display_block: + $ref: '#/components/schemas/LLMObsContentBlocks' + id: + description: Unique identifier of the interaction. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/LLMObsDisplayBlockInteractionType' + required: + - id + - type + - content_id + - already_existed + - display_block + type: object + LLMObsExperimentationAnalyticsCompute: + description: A single metric computation definition. + properties: + metric: + description: Name of the metric to compute. + example: score_value + type: string + name: + description: Optional alias for this computation in the response. + example: avg_faithfulness + type: string + required: + - metric + type: object + LLMObsExperimentationAnalyticsGroupBy: + description: A field to group analytics results by. + properties: + field: + description: Field name to group by. + example: span_id + type: string + required: + - field + type: object + LLMObsExperimentationAnalyticsSearch: + description: Search query for filtering analytics data. + properties: + query: + description: Filter expression. + example: '@experiment_id:3fd6b5e0-8910-4b1c-a7d0-5b84de329012' + type: string + required: + - query + type: object + LLMObsExperimentationAnalyticsTimeRange: + description: Unix-millisecond time range for filtering analytics data. + properties: + from: + description: Start of the time range in milliseconds since Unix epoch. + example: 1705312200000 + format: int64 + type: integer + to: + description: End of the time range in milliseconds since Unix epoch. + example: 1705315800000 + format: int64 + type: integer + required: + - from + - to + type: object + LLMObsExperimentationAnalyticsValue: + description: A single analytics result bucket. + properties: + by: + additionalProperties: {} + description: The group-by field values for this bucket. + example: + span_id: span-7a1b2c3d + type: object + metrics: + additionalProperties: {} + description: Computed metric values for this bucket. + example: + score_value: 0.85 + type: object + required: + - metrics + type: object + LLMObsExperimentationSortFieldDirection: + description: Sort direction. + enum: + - asc + - desc + example: desc + type: string + x-enum-varnames: + - ASC + - DESC + LLMObsMetricAssessment: + description: Assessment result for an Agent Observability experiment metric. + enum: + - pass + - fail + example: pass + type: string + x-enum-varnames: + - PASS + - FAIL + LLMObsMetricScoreType: + description: Type of metric recorded for an Agent Observability experiment. + enum: + - score + - categorical + - boolean + - json + example: score + type: string + x-enum-varnames: + - SCORE + - CATEGORICAL + - BOOLEAN + - JSON + LLMObsExperimentSpanError: + description: Error details for an experiment span. + properties: + message: + description: Error message. + example: Model response timed out + type: string + stack: + description: Stack trace of the error. + example: |- + Traceback (most recent call last): + File "main.py", line 10, in + response = model.generate(input) + File "model.py", line 45, in generate + raise TimeoutError("Model response timed out") + TimeoutError: Model response timed out + type: string + type: + description: The error type or exception class name. + example: TimeoutError + type: string + type: object + LLMObsExperimentMetricError: + description: Error details for an experiment metric evaluation. + properties: + message: + description: Error message associated with the metric evaluation. + type: string + type: object + LLMObsInferenceContent: + description: A structured content block within a message. + properties: + type: + description: The content block type. + example: text + type: string + value: + $ref: '#/components/schemas/LLMObsInferenceContentValue' + required: + - type + - value + type: object + LLMObsInferenceToolCall: + description: A tool call made during LLM inference. + properties: + arguments: + additionalProperties: {} + description: The arguments passed to the tool. + example: + location: San Francisco + type: object + name: + description: The name of the tool being called. + example: get_weather + type: string + tool_id: + description: Unique identifier for the tool call. + example: call_abc123 + type: string + type: + description: The type of tool call. + example: function + type: string + type: object + LLMObsInferenceToolResult: + description: The result returned by a tool call during LLM inference. + properties: + name: + description: The name of the tool that produced this result. + example: get_weather + type: string + result: + description: The result content returned by the tool. + example: The weather in San Francisco is 68°F and sunny. + type: string + tool_id: + description: Identifier matching the corresponding tool call. + example: call_abc123 + type: string + type: + description: The type of tool result. + example: function + type: string + type: object + LLMObsPromptTextTemplate: + description: A text prompt template. + minLength: 1 + pattern: .*\S.* + type: string + LLMObsPromptChatTemplate: + description: A chat prompt template. + items: + $ref: '#/components/schemas/LLMObsPromptChatMessage' + minItems: 1 + type: array + x-generate-alias-as-model: true + LLMObsSpanMessage: + description: A single message in a span input or output. + properties: + content: + description: Text content of the message. + type: string + id: + description: Unique identifier of the message. + type: string + role: + description: Role of the message sender (e.g., user, assistant, system). + type: string + tool_calls: + description: Tool calls made in this message. + items: + $ref: '#/components/schemas/LLMObsSpanToolCall' + type: array + tool_results: + description: Tool results returned in this message. + items: + $ref: '#/components/schemas/LLMObsSpanToolResult' + type: array + type: object + LLMObsPatternsClusteredPoint: + description: A single data point grouped into a topic. + properties: + event_id: + description: Identifier of the source event. + example: AAAAAYabc123 + type: string + id: + description: Unique identifier of the clustered point. + example: 9b0c1d2e-3f40-5a61-b728-c9d0e1f2a3b4 + type: string + input: + description: Input text of the source span. + example: How do I get a refund? + type: string + is_included: + description: Whether the point is included in the patterns dataset. + example: false + type: boolean + is_suggested: + description: Whether the point is suggested for inclusion in the patterns dataset. + example: true + type: boolean + session_id: + description: Identifier of the source session. + example: session-7c3f5a1b + type: string + span_id: + description: Identifier of the source span. + example: '1234567890123456789' + type: string + topic_id: + description: Identifier of the topic the point belongs to. + example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: string + required: + - id + - event_id + - topic_id + - span_id + - session_id + - input + - is_suggested + - is_included + type: object + LLMObsPatternsConfigItem: + description: A single Agent Observability patterns configuration in a list response. + properties: + account_id: + description: Integration account ID for a bring-your-own-model configuration. + example: '1000000001' + nullable: true + type: string + created_at: + description: Timestamp when the configuration was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + evp_query: + description: Query that selects the spans the patterns run analyzes. + example: '@ml_app:support-bot' + type: string + hierarchy_depth: + description: Depth of the topic hierarchy to generate. + example: 2 + format: int32 + maximum: 2147483647 + type: integer + id: + description: Unique identifier of the configuration. + example: a7c8d9e0-1234-5678-9abc-def012345678 + type: string + integration_provider: + description: Integration provider for a bring-your-own-model configuration. + example: openai + nullable: true + type: string + model_name: + description: Model name for a bring-your-own-model configuration. + example: gpt-4o + nullable: true + type: string + name: + description: Name of the configuration. + example: Support chatbot topics + type: string + num_records: + description: Maximum number of records to process for the run. + example: 1000 + format: int32 + maximum: 2147483647 + type: integer + sampling_ratio: + description: Fraction of matching spans to sample for the run. + example: 0.1 + format: double + type: number + scope: + description: Scope of the configuration. + example: '' + type: string + template: + description: Template used to guide topic generation. + example: '' + nullable: true + type: string + updated_at: + description: Timestamp when the configuration was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + required: + - id + - name + - evp_query + - sampling_ratio + - num_records + - hierarchy_depth + - scope + - created_at + - updated_at + type: object + LLMObsPatternsRunSummary: + description: Summary of an Agent Observability patterns run. + properties: + completed_at: + description: Timestamp when the run completed. Null if the run has not completed. + example: '2024-01-15T10:45:00Z' + format: date-time + nullable: true + type: string + config_snapshot: + $ref: '#/components/schemas/LLMObsPatternsConfigSnapshot' + created_at: + description: Timestamp when the run was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + id: + description: Unique identifier of the run. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + status: + description: Status of the run. + example: completed + type: string + required: + - id + - status + - created_at + type: object + LLMObsPatternsActivityProgress: + description: Progress information for a single step of a patterns run. + properties: + name: + description: Name of the step. + example: generate_topics + type: string + started_at: + description: Timestamp when the step started. Null if the step has not started. + example: '2024-01-15T10:30:00Z' + format: date-time + nullable: true + type: string + status: + description: Status of the step. + example: completed + type: string + required: + - name + - status + type: object + LLMObsPatternsTopic: + description: A topic discovered by an Agent Observability patterns run. + properties: + created_at: + description: Timestamp when the topic was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + description: + description: Description of the topic. + example: Questions about invoices, charges, and refunds. + type: string + first_seen_at: + description: Timestamp when the topic was first seen. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + hierarchy_level: + description: Level of the topic in the hierarchy. Level 0 is a leaf topic. + example: 0 + format: int64 + type: integer + id: + description: Unique identifier of the topic. + example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: string + is_validated: + description: Whether the topic has been validated. + example: true + type: boolean + name: + description: Name of the topic. + example: Billing questions + type: string + parent_topic_id: + description: Identifier of the parent topic. Empty for top-level topics. + example: '' + type: string + point_count: + description: Number of data points assigned to the topic. + example: 125 + format: int64 + type: integer + run_id: + description: Identifier of the run that produced the topic. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + required: + - id + - run_id + - parent_topic_id + - hierarchy_level + - name + - description + - is_validated + - created_at + - point_count + - first_seen_at + type: object + LLMObsPatternsTopicWithClusteredPoints: + description: |- + A topic discovered by an Agent Observability patterns run, including the + clustered points attached to leaf topics. + properties: + cluster_points: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointRefsList' + created_at: + description: Timestamp when the topic was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + description: + description: Description of the topic. + example: Questions about invoices, charges, and refunds. + type: string + first_seen_at: + description: Timestamp when the topic was first seen. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + hierarchy_level: + description: Level of the topic in the hierarchy. Level 0 is a leaf topic. + example: 0 + format: int64 + type: integer + id: + description: Unique identifier of the topic. + example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + type: string + is_validated: + description: Whether the topic has been validated. + example: true + type: boolean + name: + description: Name of the topic. + example: Billing questions + type: string + parent_topic_id: + description: Identifier of the parent topic. Empty for top-level topics. + example: '' + type: string + point_count: + description: Number of data points assigned to the topic. + example: 125 + format: int64 + type: integer + run_id: + description: Identifier of the run that produced the topic. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + type: string + required: + - id + - run_id + - parent_topic_id + - hierarchy_level + - name + - description + - is_validated + - created_at + - point_count + - first_seen_at + type: object + LLMObsDatasetBatchUpdateInsertRecord: + description: A record to insert as part of a batch update on an Agent Observability dataset. + properties: + expected_output: + $ref: '#/components/schemas/AnyValue' + id: + description: Optional user-provided identifier for the record. If omitted, the server generates an identifier. + example: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: string + input: + $ref: '#/components/schemas/AnyValue' + metadata: + additionalProperties: {} + description: Arbitrary metadata associated with the record. + type: object + tag_operations: + $ref: '#/components/schemas/LLMObsDatasetRecordTagOperations' + tags: + $ref: '#/components/schemas/LLMObsDatasetRecordTagsList' + required: + - input + type: object + LLMObsDatasetBatchUpdateUpdateRecord: + description: A record update payload as part of a batch update on an Agent Observability dataset. + properties: + expected_output: + $ref: '#/components/schemas/AnyValue' + id: + description: Unique identifier of the record to update. + example: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c + type: string + input: + $ref: '#/components/schemas/AnyValue' + metadata: + additionalProperties: {} + description: Updated metadata associated with the record. + type: object + tag_operations: + $ref: '#/components/schemas/LLMObsDatasetRecordTagOperations' + required: + - id + type: object + AnyValueItem: + description: A single item in an array of arbitrary values, which can be a string, number, object, or boolean. + type: string + format: double + additionalProperties: {} + LLMObsCustomEvalConfigPromptContent: + description: A content block within a prompt message. + properties: + type: + description: Content block type. + example: text + type: string + value: + $ref: '#/components/schemas/LLMObsCustomEvalConfigPromptContentValue' + required: + - type + - value + type: object + LLMObsContentBlock: + description: |- + A single content block rendered inside a `display_block` interaction. + `type` discriminates which other fields are meaningful: + + - `markdown` / `text`: `content` must be a string. + - `header`: `content` must be a string; `level`, when set, must be one of `sm`, `md`, `lg`, `xl`. + - `json`: `content` must be a well-formed JSON value (object, array, or scalar). + - `image`: `url` is required. + - `widget`: `tileDef` is required (any well-formed JSON; the frontend owns the renderable schema). + - `llmobs_trace`: `traceId` is required; `interactionType`, when set, must be `trace` or `experiment_trace`. + + `height`, when set, must be positive. + properties: + alt: + description: Alternative text for an `image` block. + example: Example image + type: string + content: + description: |- + Block payload. A string for `markdown`, `header`, and `text`; an + arbitrary JSON value (object, array, or scalar) for `json`. Omitted + for `image`, `widget`, and `llmobs_trace`. + example: '## Triage Instructions' + height: + description: Optional rendered height. Must be positive when set. + example: 240 + format: int64 + type: integer + interactionType: + $ref: '#/components/schemas/LLMObsContentBlockLLMObsTraceInteractionType' + label: + description: Optional label rendered alongside the block. + example: Triage Instructions + type: string + level: + $ref: '#/components/schemas/LLMObsContentBlockHeaderLevel' + tileDef: + description: |- + Tile definition for a `widget` block. Required for `widget`. The + schema is owned by the frontend renderer. + example: + requests: + - queries: + - data_source: metrics + name: q + query: avg:system.cpu.user{*} + response_format: timeseries + type: line + viz: timeseries + timeFrame: + $ref: '#/components/schemas/LLMObsContentBlockTimeFrame' + traceId: + description: Trace identifier. Required for `llmobs_trace` blocks. + example: 69fcc2bb0000000003113989d83069ba + type: string + type: + $ref: '#/components/schemas/LLMObsContentBlockType' + url: + description: URL of the image. Required for `image` blocks. + example: https://example.com/image.png + type: string + required: + - type + type: object + LLMObsLabelSchemaType: + description: Type of a label in an annotation queue label schema. + enum: + - score + - categorical + - boolean + - text + example: score + type: string + x-enum-varnames: + - SCORE + - CATEGORICAL + - BOOLEAN + - TEXT + LLMObsTraceInteractionType: + description: Type of an upstream-entity interaction. + enum: + - trace + - experiment_trace + - session + example: trace + type: string + x-enum-varnames: + - TRACE + - EXPERIMENT_TRACE + - SESSION + LLMObsDisplayBlockInteractionType: + description: Type discriminator for a `display_block` interaction. + enum: + - display_block + example: display_block + type: string + x-enum-varnames: + - DISPLAY_BLOCK + LLMObsAnnotationAssessment: + description: Assessment result for a label value. + enum: + - pass + - fail + example: pass + type: string + x-enum-varnames: + - PASS + - FAIL + LLMObsAnnotationLabelValueValue: + description: The value for this label. Must comply with the label schema type constraints. + example: 0 + format: double + type: number + items: + type: string + LLMObsInferenceContentValue: + description: The typed value of a message content block. + properties: + text: + description: Plain text content. + example: Hello, how can I help you? + type: string + tool_call: + $ref: '#/components/schemas/LLMObsInferenceToolCall' + tool_call_result: + $ref: '#/components/schemas/LLMObsInferenceToolResult' + type: object + LLMObsSpanToolCall: + description: A tool call made during a span. + properties: + arguments: + additionalProperties: {} + description: Arguments passed to the tool. + type: object + name: + description: Name of the tool called. + type: string + tool_id: + description: Identifier of the tool call. + type: string + type: + description: Type of the tool call. + type: string + type: object + LLMObsSpanToolResult: + description: A result returned from a tool call during a span. + properties: + name: + description: Name of the tool that produced this result. + type: string + result: + description: Result value returned by the tool. + type: string + tool_id: + description: Identifier of the corresponding tool call. + type: string + type: + description: Type of the tool result. + type: string + type: object + LLMObsPatternsClusteredPointRefsList: + description: List of clustered points attached to a topic. + items: + $ref: '#/components/schemas/LLMObsPatternsClusteredPointRef' + type: array + LLMObsDatasetRecordTagOperations: + description: Explicit tag operations for updating records. Operations are applied in order, Remove then Add then Set. `set` is the final override; if specified, the result of `remove` and `add` is discarded. + properties: + add: + $ref: '#/components/schemas/LLMObsDatasetRecordTagsList' + remove: + $ref: '#/components/schemas/LLMObsDatasetRecordTagsList' + set: + $ref: '#/components/schemas/LLMObsDatasetRecordTagsList' + type: object + LLMObsCustomEvalConfigPromptContentValue: + description: Value of a prompt message content block. + properties: + text: + description: Text content of the message block. + example: What is the sentiment of this review? + type: string + tool_call: + $ref: '#/components/schemas/LLMObsCustomEvalConfigPromptToolCall' + tool_call_result: + $ref: '#/components/schemas/LLMObsCustomEvalConfigPromptToolResult' + type: object + LLMObsContentBlockLLMObsTraceInteractionType: + description: |- + Upstream interaction type referenced by an `llmobs_trace` block. + Restricted to `trace` or `experiment_trace`. + enum: + - trace + - experiment_trace + example: trace + type: string + x-enum-varnames: + - TRACE + - EXPERIMENT_TRACE + LLMObsContentBlockHeaderLevel: + description: Visual size for a `header` block. + enum: + - sm + - md + - lg + - xl + example: md + type: string + x-enum-varnames: + - SM + - MD + - LG + - XL + LLMObsContentBlockTimeFrame: + description: Unix-millis time range used by chart blocks. + properties: + end: + description: End of the range, in Unix milliseconds. + example: 1705315800000 + format: int64 + type: integer + start: + description: Start of the range, in Unix milliseconds. + example: 1705312200000 + format: int64 + type: integer + required: + - start + - end + type: object + LLMObsContentBlockType: + description: |- + Discriminator for a single `display_block` content block. Adding a + variant requires coordinated changes in the frontend renderer. + enum: + - markdown + - header + - text + - json + - image + - widget + - llmobs_trace + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + - HEADER + - TEXT + - JSON + - IMAGE + - WIDGET + - LLMOBS_TRACE + LLMObsAnnotationLabelValueStringArray: + description: For categorical-type labels allowing multiple selections. + items: + type: string + type: array + LLMObsPatternsClusteredPointRef: + description: |- + A clustered point attached inline to a topic. The metric fields are populated + only when the request includes `include_metrics=true`. + properties: + duration: + description: Duration of the source span in nanoseconds. Included only when metrics are requested. + example: 1500000 + format: double + type: number + estimated_total_cost: + description: Estimated total cost of the source span. Included only when metrics are requested. + example: 0.0021 + format: double + type: number + evaluation: + additionalProperties: {} + description: |- + Evaluation results for the source span keyed by evaluation name. Included + only when metrics are requested. + type: object + input_tokens: + description: Number of input tokens of the source span. Included only when metrics are requested. + example: 128 + format: double + type: number + output_tokens: + description: Number of output tokens of the source span. Included only when metrics are requested. + example: 64 + format: double + type: number + span_id: + description: Identifier of the source span. + example: '1234567890123456789' + type: string + status: + description: Status of the source span. Included only when metrics are requested. + example: ok + type: string + total_tokens: + description: Total number of tokens of the source span. Included only when metrics are requested. + example: 192 + format: double + type: number + required: + - span_id + type: object + LLMObsCustomEvalConfigPromptToolCall: + description: A tool call within a prompt message. + properties: + arguments: + description: JSON-encoded arguments for the tool call. + example: '{"location": "San Francisco"}' + type: string + id: + description: Unique identifier of the tool call. + example: call_abc123 + type: string + name: + description: Name of the tool being called. + example: get_weather + type: string + type: + description: Type of the tool call. + example: function + type: string + type: object + LLMObsCustomEvalConfigPromptToolResult: + description: A tool call result within a prompt message. + properties: + name: + description: Name of the tool that produced this result. + example: get_weather + type: string + result: + description: The result returned by the tool. + example: sunny, 72F + type: string + tool_id: + description: Identifier of the tool call this result corresponds to. + example: call_abc123 + type: string + type: + description: Type of the tool result. + example: function + type: string + type: object + responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + parameters: + LLMObsEvalNamePathParameter: + description: The name of the custom Agent Observability evaluator configuration. + example: my-custom-evaluator + in: path + name: eval_name + required: true + schema: + type: string + LLMObsAnnotationQueueIDPathParameter: + description: The ID of the Agent Observability annotation queue. + example: 00000000-0000-0000-0000-000000000001 + in: path + name: queue_id + required: true + schema: + type: string + LLMObsExperimentIDPathParameter: + description: The ID of the Agent Observability experiment. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + in: path + name: experiment_id + required: true + schema: + type: string + LLMObsIntegrationPathParameter: + description: The name of the LLM integration. + example: openai + in: path + name: integration + required: true + schema: + $ref: '#/components/schemas/LLMObsIntegrationName' + LLMObsAccountIDPathParameter: + description: The ID of the integration account. + example: account-abc123 + in: path + name: account_id + required: true + schema: + type: string + LLMObsProjectIDPathParameter: + description: The ID of the Agent Observability project. + example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751 + in: path + name: project_id + required: true + schema: + type: string + LLMObsPromptIDPathParameter: + description: The customer-provided identifier of the Agent Observability prompt. + example: customer-support-assistant + in: path + name: prompt_id + required: true + schema: + type: string + LLMObsPromptLabelQueryParameter: + description: '**Deprecated.** Optional label of the prompt version to return. Do not use this parameter for new integrations. If omitted, the latest version is returned. If the prompt has no labels, the latest version is returned even when a label is requested. If the prompt has labels but none match the requested label, a 404 response is returned.' + in: query + name: label + required: false + schema: + type: string + LLMObsPromptVersionPathParameter: + description: The version number of the Agent Observability prompt. + example: 1 + in: path + name: version + required: true + schema: + format: int64 + minimum: 1 + type: integer + LLMObsPatternsTopicIDQueryParameter: + description: The ID of the topic to retrieve clustered points for. + example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21 + in: query + name: topic_id + required: true + schema: + type: string + LLMObsPatternsPageSizeQueryParameter: + description: Maximum number of clustered points to return per page. + in: query + name: page_size + schema: + format: int64 + type: integer + LLMObsPatternsPageTokenQueryParameter: + description: Pagination token to retrieve the next page of clustered points. + in: query + name: page_token + schema: + type: string + LLMObsPatternsConfigIDPathParameter: + description: The ID of the patterns configuration. + example: a7c8d9e0-1234-5678-9abc-def012345678 + in: path + name: config_id + required: true + schema: + type: string + LLMObsPatternsConfigIDQueryParameter: + description: The ID of the patterns configuration. + example: a7c8d9e0-1234-5678-9abc-def012345678 + in: query + name: config_id + required: true + schema: + type: string + LLMObsPatternsRunIDQueryParameter: + description: The ID of a specific patterns run. Defaults to the most recent completed run. + example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012 + in: query + name: run_id + schema: + type: string + LLMObsPatternsIncludeMetricsQueryParameter: + description: |- + When true, enrich each clustered point with span metrics such as status, + duration, token counts, estimated cost, and evaluations. + in: query + name: include_metrics + schema: + type: boolean + LLMObsDatasetIDPathParameter: + description: The ID of the Agent Observability dataset. + example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d + in: path + name: dataset_id + required: true + schema: + type: string + ModelLabProjectIDPathParameter: + description: The ID of the Model Lab project. + in: path + name: project_id + required: true + schema: + example: 1 + format: int64 + type: integer + ModelLabRunIDPathParameter: + description: The ID of the Model Lab run. + in: path + name: run_id + required: true + schema: + example: 42 + format: int64 + type: integer + x-stackQL-resources: + evaluator_customs: + id: datadog.llm_observability.evaluator_customs + name: evaluator_customs + title: Evaluator Customs + methods: + list_llmobs_custom_eval_configs: + operation: + $ref: '#/paths/~1api~1unstable~1llm-obs~1config~1evaluators~1custom/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + delete_llmobs_custom_eval_config: + operation: + $ref: '#/paths/~1api~1unstable~1llm-obs~1config~1evaluators~1custom~1{eval_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_llmobs_custom_eval_config: + operation: + $ref: '#/paths/~1api~1unstable~1llm-obs~1config~1evaluators~1custom~1{eval_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_llmobs_custom_eval_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1unstable~1llm-obs~1config~1evaluators~1custom~1{eval_name}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/evaluator_customs/methods/get_llmobs_custom_eval_config' + - $ref: '#/components/x-stackQL-resources/evaluator_customs/methods/list_llmobs_custom_eval_configs' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/evaluator_customs/methods/delete_llmobs_custom_eval_config' + replace: + - $ref: '#/components/x-stackQL-resources/evaluator_customs/methods/update_llmobs_custom_eval_config' + annotated_interactions: + id: datadog.llm_observability.annotated_interactions + name: annotated_interactions + title: Annotated Interactions + methods: + get_llmobs_annotated_interactions_by_trace_ids: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotated-interactions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 2147483647 + skip: + paramName: offset + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/annotated_interactions/methods/get_llmobs_annotated_interactions_by_trace_ids' + insert: [] + update: [] + delete: [] + replace: [] + annotation_queues: + id: datadog.llm_observability.annotation_queues + name: annotation_queues + title: Annotation Queues + methods: + list_llmobs_annotation_queues: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_llmobs_annotation_queue: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_llmobs_annotation_queue: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_llmobs_annotation_queue: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/annotation_queues/methods/list_llmobs_annotation_queues' + insert: + - $ref: '#/components/x-stackQL-resources/annotation_queues/methods/create_llmobs_annotation_queue' + update: + - $ref: '#/components/x-stackQL-resources/annotation_queues/methods/update_llmobs_annotation_queue' + delete: + - $ref: '#/components/x-stackQL-resources/annotation_queues/methods/delete_llmobs_annotation_queue' + replace: [] + annotation_queue_annotated_interactions: + id: datadog.llm_observability.annotation_queue_annotated_interactions + name: annotation_queue_annotated_interactions + title: Annotation Queue Annotated Interactions + methods: + get_llmobs_annotated_interactions: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1annotated-interactions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/annotation_queue_annotated_interactions/methods/get_llmobs_annotated_interactions' + insert: [] + update: [] + delete: [] + replace: [] + annotation_queue_annotations: + id: datadog.llm_observability.annotation_queue_annotations + name: annotation_queue_annotations + title: Annotation Queue Annotations + methods: + upsert_llmobs_annotations: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1annotations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_annotations: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1annotations~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/annotation_queue_annotations/methods/upsert_llmobs_annotations' + update: [] + delete: [] + replace: [] + annotation_queue_interactions: + id: datadog.llm_observability.annotation_queue_interactions + name: annotation_queue_interactions + title: Annotation Queue Interactions + methods: + create_llmobs_annotation_queue_interactions: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1interactions/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_llmobs_annotation_queue_interactions: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1interactions~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/annotation_queue_interactions/methods/create_llmobs_annotation_queue_interactions' + update: [] + delete: [] + replace: [] + annotation_queue_label_schemas: + id: datadog.llm_observability.annotation_queue_label_schemas + name: annotation_queue_label_schemas + title: Annotation Queue Label Schemas + methods: + get_llmobs_annotation_queue_label_schema: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1label-schema/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_llmobs_annotation_queue_label_schema: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1annotation-queues~1{queue_id}~1label-schema/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/annotation_queue_label_schemas/methods/get_llmobs_annotation_queue_label_schema' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/annotation_queue_label_schemas/methods/update_llmobs_annotation_queue_label_schema' + experiments: + id: datadog.llm_observability.experiments + name: experiments + title: Experiments + methods: + aggregate_llmobs_experimentation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experimentation~1analytics/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + search_llmobs_experimentation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experimentation~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + simple_search_llmobs_experimentation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experimentation~1simple-search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_llmobs_experiments: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experiments/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 5000 + create_llmobs_experiment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experiments/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_experiments: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experiments~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_llmobs_experiment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experiments~1{experiment_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/experiments/methods/list_llmobs_experiments' + insert: + - $ref: '#/components/x-stackQL-resources/experiments/methods/create_llmobs_experiment' + update: + - $ref: '#/components/x-stackQL-resources/experiments/methods/update_llmobs_experiment' + delete: [] + replace: [] + experiment_events: + id: datadog.llm_observability.experiment_events + name: experiment_events + title: Experiment Events + methods: + create_llmobs_experiment_events: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1experiments~1{experiment_id}~1events/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/experiment_events/methods/create_llmobs_experiment_events' + update: [] + delete: [] + replace: [] + integration_accounts: + id: datadog.llm_observability.integration_accounts + name: integration_accounts + title: Integration Accounts + methods: + list_llmobs_integration_accounts: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1integrations~1{integration}~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/integration_accounts/methods/list_llmobs_integration_accounts' + insert: [] + update: [] + delete: [] + replace: [] + integration_inferences: + id: datadog.llm_observability.integration_inferences + name: integration_inferences + title: Integration Inferences + methods: + create_llmobs_integration_inference: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1integrations~1{integration}~1{account_id}~1inference/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/integration_inferences/methods/create_llmobs_integration_inference' + update: [] + delete: [] + replace: [] + integration_models: + id: datadog.llm_observability.integration_models + name: integration_models + title: Integration Models + methods: + list_llmobs_integration_models: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1integrations~1{integration}~1{account_id}~1models/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/integration_models/methods/list_llmobs_integration_models' + insert: [] + update: [] + delete: [] + replace: [] + projects: + id: datadog.llm_observability.projects + name: projects + title: Projects + methods: + list_llmobs_projects: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1projects/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + create_llmobs_project: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1projects/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_projects: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1projects~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_llmobs_project: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1projects~1{project_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/projects/methods/list_llmobs_projects' + insert: + - $ref: '#/components/x-stackQL-resources/projects/methods/create_llmobs_project' + update: + - $ref: '#/components/x-stackQL-resources/projects/methods/update_llmobs_project' + delete: [] + replace: [] + prompts: + id: datadog.llm_observability.prompts + name: prompts + title: Prompts + methods: + list_llmobs_prompts: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_llmobs_prompt: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_prompt: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_llmobs_prompt: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_llmobs_prompt: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/prompts/methods/get_llmobs_prompt' + - $ref: '#/components/x-stackQL-resources/prompts/methods/list_llmobs_prompts' + insert: + - $ref: '#/components/x-stackQL-resources/prompts/methods/create_llmobs_prompt' + update: + - $ref: '#/components/x-stackQL-resources/prompts/methods/update_llmobs_prompt' + delete: + - $ref: '#/components/x-stackQL-resources/prompts/methods/delete_llmobs_prompt' + replace: [] + prompt_versions: + id: datadog.llm_observability.prompt_versions + name: prompt_versions + title: Prompt Versions + methods: + list_llmobs_prompt_versions: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}~1versions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_llmobs_prompt_version: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}~1versions/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_llmobs_prompt_version: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}~1versions~1{version}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_llmobs_prompt_version: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1prompts~1{prompt_id}~1versions~1{version}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/prompt_versions/methods/get_llmobs_prompt_version' + - $ref: '#/components/x-stackQL-resources/prompt_versions/methods/list_llmobs_prompt_versions' + insert: + - $ref: '#/components/x-stackQL-resources/prompt_versions/methods/create_llmobs_prompt_version' + update: + - $ref: '#/components/x-stackQL-resources/prompt_versions/methods/update_llmobs_prompt_version' + delete: [] + replace: [] + span_events: + id: datadog.llm_observability.span_events + name: span_events + title: Span Events + methods: + list_llmobs_spans: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1spans~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + search_llmobs_spans: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1spans~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/span_events/methods/list_llmobs_spans' + insert: [] + update: [] + delete: [] + replace: [] + topic_discovery_clustered_points: + id: datadog.llm_observability.topic_discovery_clustered_points + name: topic_discovery_clustered_points + title: Topic Discovery Clustered Points + methods: + list_llmobs_patterns_clustered_points: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-clustered-points/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_clustered_points/methods/list_llmobs_patterns_clustered_points' + insert: [] + update: [] + delete: [] + replace: [] + topic_discovery_configs: + id: datadog.llm_observability.topic_discovery_configs + name: topic_discovery_configs + title: Topic Discovery Configs + methods: + list_llmobs_patterns_configs: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-configs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + upsert_llmobs_patterns_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-configs/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_patterns_config: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-configs~1{config_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_configs/methods/list_llmobs_patterns_configs' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/topic_discovery_configs/methods/delete_llmobs_patterns_config' + replace: + - $ref: '#/components/x-stackQL-resources/topic_discovery_configs/methods/upsert_llmobs_patterns_config' + topic_discovery_latest_configs: + id: datadog.llm_observability.topic_discovery_latest_configs + name: topic_discovery_latest_configs + title: Topic Discovery Latest Configs + methods: + get_llmobs_patterns_config: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-configs~1latest/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_latest_configs/methods/get_llmobs_patterns_config' + insert: [] + update: [] + delete: [] + replace: [] + topic_discovery_runs: + id: datadog.llm_observability.topic_discovery_runs + name: topic_discovery_runs + title: Topic Discovery Runs + methods: + list_llmobs_patterns_runs: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-runs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + trigger_llmobs_patterns: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-runs/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_runs/methods/list_llmobs_patterns_runs' + insert: + - $ref: '#/components/x-stackQL-resources/topic_discovery_runs/methods/trigger_llmobs_patterns' + update: [] + delete: [] + replace: [] + topic_discovery_run_statuses: + id: datadog.llm_observability.topic_discovery_run_statuses + name: topic_discovery_run_statuses + title: Topic Discovery Run Statuses + methods: + get_llmobs_patterns_run_status: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-runs~1status/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_run_statuses/methods/get_llmobs_patterns_run_status' + insert: [] + update: [] + delete: [] + replace: [] + topic_discovery_topics: + id: datadog.llm_observability.topic_discovery_topics + name: topic_discovery_topics + title: Topic Discovery Topics + methods: + list_llmobs_patterns_topics: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-topics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_topics/methods/list_llmobs_patterns_topics' + insert: [] + update: [] + delete: [] + replace: [] + topic_discovery_topic_with_cluster_points: + id: datadog.llm_observability.topic_discovery_topic_with_cluster_points + name: topic_discovery_topic_with_cluster_points + title: Topic Discovery Topic With Cluster Points + methods: + list_llmobs_patterns_topics_with_clustered_points: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1topic-discovery-topics~1with-cluster-points/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/topic_discovery_topic_with_cluster_points/methods/list_llmobs_patterns_topics_with_clustered_points' + insert: [] + update: [] + delete: [] + replace: [] + datasets: + id: datadog.llm_observability.datasets + name: datasets + title: Datasets + methods: + list_llmobs_datasets: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + create_llmobs_dataset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_datasets: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_llmobs_dataset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + batch_update_llmobs_dataset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1batch_update/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + clone_llmobs_dataset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1clone/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + restore_llmobs_dataset_version: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1restore/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/datasets/methods/list_llmobs_datasets' + insert: + - $ref: '#/components/x-stackQL-resources/datasets/methods/create_llmobs_dataset' + update: + - $ref: '#/components/x-stackQL-resources/datasets/methods/update_llmobs_dataset' + delete: [] + replace: [] + dataset_draft_states: + id: datadog.llm_observability.dataset_draft_states + name: dataset_draft_states + title: Dataset Draft States + methods: + get_llmobs_dataset_draft_state: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1draft_state/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + lock_llmobs_dataset_draft_state: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1draft_state~1lock/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + unlock_llmobs_dataset_draft_state: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1draft_state~1unlock/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dataset_draft_states/methods/get_llmobs_dataset_draft_state' + insert: [] + update: [] + delete: [] + replace: [] + dataset_records: + id: datadog.llm_observability.dataset_records + name: dataset_records + title: Dataset Records + methods: + list_llmobs_dataset_records: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1records/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + update_llmobs_dataset_records: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1records/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_llmobs_dataset_records: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1records/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_llmobs_dataset_records: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1records~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dataset_records/methods/list_llmobs_dataset_records' + insert: + - $ref: '#/components/x-stackQL-resources/dataset_records/methods/create_llmobs_dataset_records' + update: + - $ref: '#/components/x-stackQL-resources/dataset_records/methods/update_llmobs_dataset_records' + delete: [] + replace: [] + dataset_versions: + id: datadog.llm_observability.dataset_versions + name: dataset_versions + title: Dataset Versions + methods: + list_llmobs_dataset_versions: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v1~1{project_id}~1datasets~1{dataset_id}~1versions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dataset_versions/methods/list_llmobs_dataset_versions' + insert: [] + update: [] + delete: [] + replace: [] + experiment_events_v3: + id: datadog.llm_observability.experiment_events_v3 + name: experiment_events_v3 + title: Experiment Events V3 + methods: + list_llmobs_experiment_events: + operation: + $ref: '#/paths/~1api~1v2~1llm-obs~1v3~1experiments~1{experiment_id}~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/experiment_events_v3/methods/list_llmobs_experiment_events' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_facet_keys: + id: datadog.llm_observability.model_lab_facet_keys + name: model_lab_facet_keys + title: Model Lab Facet Keys + methods: + list_model_lab_run_facet_keys: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1facet-keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_facet_keys/methods/list_model_lab_run_facet_keys' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_facet_values: + id: datadog.llm_observability.model_lab_facet_values + name: model_lab_facet_values + title: Model Lab Facet Values + methods: + list_model_lab_run_facet_values: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1facet-values/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_facet_values/methods/list_model_lab_run_facet_values' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_project_facet_keys: + id: datadog.llm_observability.model_lab_project_facet_keys + name: model_lab_project_facet_keys + title: Model Lab Project Facet Keys + methods: + list_model_lab_project_facet_keys: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1project-facet-keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_project_facet_keys/methods/list_model_lab_project_facet_keys' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_project_facet_values: + id: datadog.llm_observability.model_lab_project_facet_values + name: model_lab_project_facet_values + title: Model Lab Project Facet Values + methods: + list_model_lab_project_facet_values: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1project-facet-values/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_project_facet_values/methods/list_model_lab_project_facet_values' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_projects: + id: datadog.llm_observability.model_lab_projects + name: model_lab_projects + title: Model Lab Projects + methods: + list_model_lab_projects: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1projects/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 100 + get_model_lab_project: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1projects~1{project_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + unstar_model_lab_project: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1projects~1{project_id}~1star/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + star_model_lab_project: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1projects~1{project_id}~1star/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_projects/methods/get_model_lab_project' + - $ref: '#/components/x-stackQL-resources/model_lab_projects/methods/list_model_lab_projects' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/model_lab_projects/methods/unstar_model_lab_project' + replace: [] + model_lab_project_artifacts: + id: datadog.llm_observability.model_lab_project_artifacts + name: model_lab_project_artifacts + title: Model Lab Project Artifacts + methods: + list_model_lab_project_artifacts: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1projects~1{project_id}~1artifacts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_project_artifacts/methods/list_model_lab_project_artifacts' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_runs: + id: datadog.llm_observability.model_lab_runs + name: model_lab_runs + title: Model Lab Runs + methods: + list_model_lab_runs: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1runs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 100 + delete_model_lab_run: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1runs~1{run_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_model_lab_run: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1runs~1{run_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_runs/methods/get_model_lab_run' + - $ref: '#/components/x-stackQL-resources/model_lab_runs/methods/list_model_lab_runs' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/model_lab_runs/methods/delete_model_lab_run' + replace: [] + model_lab_run_artifacts: + id: datadog.llm_observability.model_lab_run_artifacts + name: model_lab_run_artifacts + title: Model Lab Run Artifacts + methods: + list_model_lab_run_artifacts: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1runs~1{run_id}~1artifacts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/model_lab_run_artifacts/methods/list_model_lab_run_artifacts' + insert: [] + update: [] + delete: [] + replace: [] + model_lab_run_pins: + id: datadog.llm_observability.model_lab_run_pins + name: model_lab_run_pins + title: Model Lab Run Pins + methods: + unpin_model_lab_run: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1runs~1{run_id}~1pin/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + pin_model_lab_run: + operation: + $ref: '#/paths/~1api~1v2~1model-lab-api~1runs~1{run_id}~1pin/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/model_lab_run_pins/methods/pin_model_lab_run' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/model_lab_run_pins/methods/unpin_model_lab_run' + replace: [] +servers: + - url: https://api.{site:.+} + variables: + site: + default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/logs.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/logs.yaml index 50f440d..27d6d98 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/logs.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/logs.yaml @@ -1,64 +1,36 @@ openapi: 3.0.0 info: title: logs API - description: datadog logs API + description: Search your logs and send them to your Datadog platform over HTTP. See the [Log Management page](https://docs.datadoghq.com/logs/) for more information. version: '1.0' paths: /api/v2/logs: post: - description: >- - Send your logs to your Datadog platform over HTTP. Limits per HTTP - request are: - + description: |- + Send your logs to your Datadog platform over HTTP. Limits per HTTP request are: - Maximum content size per payload (uncompressed): 5MB - - Maximum size for a single log: 1MB - - Maximum array size if sending multiple logs in an array: 1000 entries - Any log exceeding 1MB is accepted and truncated by Datadog: - - - For a single log request, the API truncates the log at 1MB and returns - a 2xx. - - - For a multi-logs request, the API processes all logs, truncates only - logs larger than 1MB, and returns a 2xx. - + - For a single log request, the API truncates the log at 1MB and returns a 2xx. + - For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx. Datadog recommends sending your logs compressed. - - Add the `Content-Encoding: gzip` header to the request when sending - compressed logs. - - Log events can be submitted with a timestamp that is up to 18 hours in - the past. - + Add the `Content-Encoding: gzip` header to the request when sending compressed logs. + Log events can be submitted with a timestamp that is up to 18 hours in the past. The status codes answered by the HTTP API are: - - 202: Accepted: the request has been accepted for processing - - 400: Bad request (likely an issue in the payload formatting) - - 401: Unauthorized (likely a missing API Key) - - 403: Permission issue (likely using an invalid API Key) - - 408: Request Timeout, request should be retried after some time - - 413: Payload too large (batch is above 5MB uncompressed) - - 429: Too Many Requests, request should be retried after some time - - - 500: Internal Server Error, the server encountered an unexpected - condition that prevented it from fulfilling the request, request should - be retried after some time - - - 503: Service Unavailable, the server is not ready to handle the - request probably because it is overloaded, request should be retried - after some time + - 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time + - 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time operationId: SubmitLog parameters: - description: HTTP header used to compress the media-type. @@ -67,9 +39,7 @@ paths: required: false schema: $ref: '#/components/schemas/ContentEncoding' - - description: >- - Log tags can be passed as query parameters with `text/plain` content - type. + - description: Log tags can be passed as query parameters with `text/plain` content type. example: env:prod,user:my-user in: query name: ddtags @@ -80,6 +50,13 @@ paths: content: application/json: examples: + default: + value: + ddsource: nginx + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment multi-json-messages: description: Pass multiple log objects at once. summary: Multi JSON Messages @@ -95,22 +72,26 @@ paths: message: 2019-11-19T14:37:58,995 INFO [process.name][20081] World service: payment simple-json-message: - description: >- - Log attributes can be passed as `key:value` pairs in valid - JSON messages. + description: Log attributes can be passed as `key:value` pairs in valid JSON messages. summary: Simple JSON Message value: ddsource: nginx ddtags: env:staging,version:5.1 hostname: i-012345678 - message: >- - 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - World + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World service: payment schema: $ref: '#/components/schemas/HTTPLog' application/logplex-1: examples: + default: + value: + multi-raw-message: + description: Submit log messages. + summary: Multi Logplex Messages + value: |- + 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello + 2019-11-19T14:37:58,995 INFO [process.name][20081] World multi-raw-message: description: Submit log messages. summary: Multi Logplex Messages @@ -125,18 +106,22 @@ paths: type: string text/plain: examples: + default: + value: + multi-raw-message: + description: Submit log string. + summary: Multi Raw Messages + value: |- + 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello + 2019-11-19T14:37:58,995 INFO [process.name][20081] World multi-raw-message: description: Submit log string. summary: Multi Raw Messages - value: | + value: |- 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello 2019-11-19T14:37:58,995 INFO [process.name][20081] World simple-raw-message: - description: >- - Submit log string. Log attributes can be passed as query - parameters in the URL. This enables the addition of tags or - the source by using the `ddtags` and `ddsource` parameters: - `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`. + description: 'Submit log string. Log attributes can be passed as query parameters in the URL. This enables the addition of tags or the source by using the `ddtags` and `ddsource` parameters: `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`.' summary: Simple Raw Message value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World schema: @@ -147,8 +132,12 @@ paths: '202': content: application/json: + examples: + default: + value: {} schema: - type: object + type: string + description: (opaque JSON object) description: Request accepted for processing (always 202 empty JSON). '400': content: @@ -200,52 +189,53 @@ paths: description: Service Unavailable security: - apiKeyAuth: [] - servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: http-intake.logs - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: http-intake.logs.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: http-intake.logs - description: The subdomain where the API is deployed. summary: Send logs tags: - Logs x-codegen-request-body-name: body + servers: + - url: https://http-intake.logs.{site:.+} + variables: + site: + default: datadoghq.com + description: The regional site for customers. + x-stackQL-envVar: DD_SITE /api/v2/logs/analytics/aggregate: post: - description: >- - The API endpoint to aggregate events into buckets and compute metrics - and timeseries. + description: The API endpoint to aggregate events into buckets and compute metrics and timeseries. operationId: AggregateLogs requestBody: content: application/json: + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: '@duration' + type: timeseries + filter: + from: now-15m + indexes: + - main + - web + query: service:web* AND @http.status_code:[200 TO 299] + storage_tier: indexes + to: now + group_by: + - facet: host + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== schema: $ref: '#/components/schemas/LogsAggregateRequest' required: true @@ -253,6 +243,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + buckets: + - by: + host: my-hostname + computes: + c0: 19 + meta: + elapsed: 132 + status: done schema: $ref: '#/components/schemas/LogsAggregateResponse' description: OK @@ -262,6 +264,11 @@ paths: $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - logs_read_data summary: Aggregate events tags: - Logs @@ -280,6 +287,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + archive_ids: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + type: archive_order schema: $ref: '#/components/schemas/LogsArchiveOrder' description: OK @@ -299,21 +316,26 @@ paths: permissions: - logs_read_config put: - description: >- - Update the order of your archives. Since logs are processed - sequentially, reordering an archive may change - + description: |- + Update the order of your archives. Since logs are processed sequentially, reordering an archive may change the structure and content of the data processed by other archives. - - **Note**: Using the `PUT` method updates your archive's order by - replacing the current order - + **Note**: Using the `PUT` method updates your archive's order by replacing the current order with the new one. operationId: UpdateLogsArchiveOrder requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + archive_ids: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + type: archive_order schema: $ref: '#/components/schemas/LogsArchiveOrder' description: An object containing the new ordered list of archive IDs. @@ -322,6 +344,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + archive_ids: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + type: archive_order schema: $ref: '#/components/schemas/LogsArchiveOrder' description: OK @@ -361,6 +393,23 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + destination: + bucket: my-bucket + integration: + account_id: '123456789012' + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000001 + type: archives schema: $ref: '#/components/schemas/LogsArchives' description: OK @@ -385,6 +434,36 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compression_method: GZIP + destination: + container: container-name + storage_account: account-name + type: azure + include_tags: false + name: Nginx Archive + query: source:nginx + rehydration_max_scan_size_in_gb: 100 + rehydration_tags: + - team:intake + - team:app + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + name: Nginx Archive + query: source:nginx + type: archives schema: $ref: '#/components/schemas/LogsArchiveCreateRequest' description: The definition of the new archive. @@ -393,6 +472,38 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + account_id: '123456789012' + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000002 + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000002 + type: archives schema: $ref: '#/components/schemas/LogsArchive' description: OK @@ -463,6 +574,23 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + account_id: '123456789012' + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000003 + type: archives schema: $ref: '#/components/schemas/LogsArchive' description: OK @@ -494,21 +622,47 @@ paths: permissions: - logs_read_archives put: - description: >- + description: |- Update a given archive configuration. - - **Note**: Using this method updates your archive configuration by - **replacing** - - your current configuration with the new one sent to your Datadog - organization. + **Note**: Using this method updates your archive configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. operationId: UpdateLogsArchive parameters: - $ref: '#/components/parameters/ArchiveID' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compression_method: GZIP + destination: + container: container-name + storage_account: account-name + type: azure + include_tags: false + name: Nginx Archive + query: source:nginx + rehydration_max_scan_size_in_gb: 100 + rehydration_tags: + - team:intake + - team:app + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + name: Nginx Archive + query: source:nginx + type: archives schema: $ref: '#/components/schemas/LogsArchiveCreateRequest' description: New definition of the archive. @@ -517,6 +671,38 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + account_id: '123456789012' + role_name: my-role + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000004 + type: archives + s3_access_key_id: + value: + data: + attributes: + destination: + bucket: my-bucket + integration: + access_key_id: AKIAIOSFODNN7EXAMPLE + type: s3 + include_tags: false + name: Nginx Archive + query: source:nginx + state: WORKING + id: 00000000-0000-0000-0000-000000000004 + type: archives schema: $ref: '#/components/schemas/LogsArchive' description: OK @@ -550,15 +736,19 @@ paths: - logs_write_archives /api/v2/logs/config/archives/{archive_id}/readers: delete: - description: >- - Removes a role from an archive. ([Roles - API](https://docs.datadoghq.com/api/v2/roles/)) + description: Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) operationId: RemoveRoleFromArchive parameters: - $ref: '#/components/parameters/ArchiveID' requestBody: content: application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles schema: $ref: '#/components/schemas/RelationshipToRole' required: true @@ -602,6 +792,14 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + name: Example Role + id: 00000000-0000-0000-0000-000000000005 + type: roles schema: $ref: '#/components/schemas/RolesResponse' description: OK @@ -634,15 +832,19 @@ paths: permissions: - logs_read_config post: - description: >- - Adds a read role to an archive. ([Roles - API](https://docs.datadoghq.com/api/v2/roles/)) + description: Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) operationId: AddReadRoleToArchive parameters: - $ref: '#/components/parameters/ArchiveID' requestBody: content: application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles schema: $ref: '#/components/schemas/RelationshipToRole' required: true @@ -679,14 +881,32 @@ paths: - logs_write_archives /api/v2/logs/config/custom-destinations: get: - description: >- - Get the list of configured custom destinations in your organization with - their definitions. + description: Get the list of configured custom destinations in your organization with their definitions. operationId: ListLogsCustomDestinations responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000001 + type: custom_destination schema: $ref: '#/components/schemas/CustomDestinationsResponse' description: OK @@ -712,6 +932,23 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + type: custom_destination schema: $ref: '#/components/schemas/CustomDestinationCreateRequest' description: The definition of the new custom destination. @@ -720,6 +957,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000002 + type: custom_destination schema: $ref: '#/components/schemas/CustomDestinationResponse' description: OK @@ -772,6 +1029,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000003 + type: custom_destination schema: $ref: '#/components/schemas/CustomDestinationResponse' description: OK @@ -792,15 +1069,31 @@ paths: - logs_read_config - logs_read_data patch: - description: >- - Update the given fields of a specific custom destination in your - organization. + description: Update the given fields of a specific custom destination in your organization. operationId: UpdateLogsCustomDestination parameters: - $ref: '#/components/parameters/CustomDestinationId' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 + type: custom_destination schema: $ref: '#/components/schemas/CustomDestinationUpdateRequest' description: New definition of the custom destination's fields. @@ -809,6 +1102,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + forward_tags: true + forward_tags_restriction_list: + - datacenter + - host + forward_tags_restriction_list_type: ALLOW_LIST + forwarder_destination: + auth: + type: basic + endpoint: https://example.com + type: http + name: Nginx logs + query: source:nginx + id: 00000000-0000-0000-0000-000000000004 + type: custom_destination schema: $ref: '#/components/schemas/CustomDestinationResponse' description: OK @@ -838,6 +1151,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: '@http.status_code' + tag_name: status_code + id: logs.page.load.count + type: logs_metrics schema: $ref: '#/components/schemas/LogsMetricsResponse' description: OK @@ -853,15 +1182,29 @@ paths: permissions: - logs_read_config post: - description: >- + description: |- Create a metric based on your ingested logs in your organization. - - Returns the log-based metric object from the request body when the - request is successful. + Returns the log-based metric object from the request body when the request is successful. operationId: CreateLogsMetric requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: '@http.status_code' + tag_name: status_code + id: logs.page.load.count + type: logs_metrics schema: $ref: '#/components/schemas/LogsMetricCreateRequest' description: The definition of the new log-based metric. @@ -870,6 +1213,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: '@http.status_code' + tag_name: status_code + id: logs.page.load.count + type: logs_metrics schema: $ref: '#/components/schemas/LogsMetricResponse' description: OK @@ -920,6 +1279,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: '@http.status_code' + tag_name: status_code + id: logs.page.load.count + type: logs_metrics schema: $ref: '#/components/schemas/LogsMetricResponse' description: OK @@ -937,17 +1312,28 @@ paths: permissions: - logs_read_config patch: - description: >- + description: |- Update a specific log-based metric from your organization. - - Returns the log-based metric object from the request body when the - request is successful. + Returns the log-based metric object from the request body when the request is successful. operationId: UpdateLogsMetric parameters: - $ref: '#/components/parameters/MetricID' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compute: + include_percentiles: true + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: '@http.status_code' + tag_name: status_code + type: logs_metrics schema: $ref: '#/components/schemas/LogsMetricUpdateRequest' description: New definition of the log-based metric. @@ -956,6 +1342,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + compute: + aggregation_type: distribution + include_percentiles: true + path: '@duration' + filter: + query: service:web* AND @http.status_code:[200 TO 299] + group_by: + - path: '@http.status_code' + tag_name: status_code + id: logs.page.load.count + type: logs_metrics schema: $ref: '#/components/schemas/LogsMetricResponse' description: OK @@ -975,2380 +1377,14435 @@ paths: operator: OR permissions: - logs_generate_metrics - /api/v2/logs/events: + /api/v2/logs/config/restriction_queries: get: - description: >- - List endpoint returns logs that match a log search query. - - [Results are paginated][1]. - - - Use this endpoint to search and filter your logs. - - - **If you are considering archiving logs for your organization, - - consider use of the Datadog archive capabilities instead of the log list - API. - - See [Datadog Logs Archive documentation][2].** - - - [1]: /logs/guide/collect-multiple-logs-with-pagination - - [2]: https://docs.datadoghq.com/logs/archives - operationId: ListLogsGet + description: Returns all restriction queries, including their names and IDs. + operationId: ListRestrictionQueries parameters: - - description: Search query following logs syntax. - example: '@datacenter:us @role:db' - in: query - name: filter[query] - required: false - schema: - type: string - - description: |- - For customers with multiple indexes, the indexes to search. - Defaults to '*' which means all indexes - example: - - main - - web - explode: false - in: query - name: filter[indexes] - required: false - schema: - items: - description: The name of a log index. - type: string - type: array - - description: Minimum timestamp for requested logs. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested logs. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Specifies the storage type to be used - example: indexes - in: query - name: filter[storage_tier] - required: false - schema: - $ref: '#/components/schemas/LogsStorageTier' - - description: Order of logs in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/LogsSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of logs in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + modified_at: '2024-01-01T00:00:00+00:00' + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000001 + type: logs_restriction_queries schema: - $ref: '#/components/schemas/LogsListResponse' + $ref: '#/components/schemas/RestrictionQueryListResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search logs (GET) + summary: List restriction queries tags: - - Logs - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data + - Logs Restriction Queries x-permission: operator: OR permissions: - - logs_read_data - /api/v2/logs/events/search: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: >- - List endpoint returns logs that match a log search query. - - [Results are paginated][1]. - - - Use this endpoint to search and filter your logs. - - - **If you are considering archiving logs for your organization, - - consider use of the Datadog archive capabilities instead of the log list - API. - - See [Datadog Logs Archive documentation][2].** - - - [1]: /logs/guide/collect-multiple-logs-with-pagination - - [2]: https://docs.datadoghq.com/logs/archives - operationId: ListLogs + description: Create a new restriction query for your organization. + operationId: CreateRestrictionQuery requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + type: logs_restriction_queries schema: - $ref: '#/components/schemas/LogsListRequest' - required: false + $ref: '#/components/schemas/RestrictionQueryCreatePayload' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000002 + type: logs_restriction_queries schema: - $ref: '#/components/schemas/LogsListResponse' + $ref: '#/components/schemas/RestrictionQueryWithoutRelationshipsResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search logs (POST) + summary: Create a restriction query tags: - - Logs + - Logs Restriction Queries x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data x-permission: operator: OR permissions: - - logs_read_data -components: - schemas: - ContentEncoding: - description: HTTP header used to compress the media-type. - enum: - - identity - - gzip - - deflate - type: string - x-enum-varnames: - - IDENTITY - - GZIP - - DEFLATE - HTTPLog: - description: Structured log message. - items: - $ref: '#/components/schemas/HTTPLogItem' - type: array - HTTPLogErrors: - description: Invalid query performed. - properties: - errors: - description: Structured errors. - items: - $ref: '#/components/schemas/HTTPLogError' - type: array - type: object - LogsAggregateRequest: - description: >- - The object sent with the request to retrieve a list of logs from your - organization. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/LogsCompute' - type: array - filter: - $ref: '#/components/schemas/LogsQueryFilter' - group_by: - description: The rules for the group by - items: - $ref: '#/components/schemas/LogsGroupBy' - type: array - options: - $ref: '#/components/schemas/LogsQueryOptions' - page: - $ref: '#/components/schemas/LogsAggregateRequestPage' - type: object - LogsAggregateResponse: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/role/{role_id}: + get: + description: Get restriction query for a given role. + operationId: GetRoleRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryRoleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + modified_at: '2024-01-01T00:00:00+00:00' + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000007 + type: logs_restriction_queries + schema: + $ref: '#/components/schemas/RestrictionQueryListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get restriction query for a given role + tags: + - Logs Restriction Queries + x-permission: + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/user/{user_id}: + get: + description: Get all restriction queries for a given user. + operationId: ListUserRestrictionQueries + parameters: + - $ref: '#/components/parameters/RestrictionQueryUserID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + modified_at: '2024-01-01T00:00:00+00:00' + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000006 + type: logs_restriction_queries + schema: + $ref: '#/components/schemas/RestrictionQueryListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all restriction queries for a given user + tags: + - Logs Restriction Queries + x-permission: + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/{restriction_query_id}: + delete: + description: Deletes a restriction query. + operationId: DeleteRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + responses: + '204': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a restriction query in the organization specified by the restriction query's `restriction_query_id`. + operationId: GetRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000003 + relationships: {} + type: logs_restriction_queries + included: [] + schema: + $ref: '#/components/schemas/RestrictionQueryWithRelationshipsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Edit a restriction query. + operationId: UpdateRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + type: logs_restriction_queries + schema: + $ref: '#/components/schemas/RestrictionQueryUpdatePayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000004 + type: logs_restriction_queries + schema: + $ref: '#/components/schemas/RestrictionQueryWithoutRelationshipsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Replace a restriction query. + operationId: ReplaceRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + type: logs_restriction_queries + schema: + $ref: '#/components/schemas/RestrictionQueryUpdatePayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + restriction_query: env:sandbox + id: 00000000-0000-0000-0000-000000000005 + type: logs_restriction_queries + schema: + $ref: '#/components/schemas/RestrictionQueryWithoutRelationshipsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Replace a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/config/restriction_queries/{restriction_query_id}/roles: + delete: + description: Removes a role from a restriction query. + operationId: RemoveRoleFromRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: '#/components/schemas/RelationshipToRole' + required: true + responses: + '204': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Revoke role from a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Returns all roles that have a given restriction query. + operationId: ListRestrictionQueryRoles + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Datadog Admin Role + id: 00000000-0000-0000-0000-000000000008 + type: roles + schema: + $ref: '#/components/schemas/RestrictionQueryRolesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List roles for a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_read_config + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Adds a role to a restriction query. + + **Note**: This operation automatically grants the `logs_read_data` permission to the role if it doesn't already have it. + operationId: AddRoleToRestrictionQuery + parameters: + - $ref: '#/components/parameters/RestrictionQueryID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: '#/components/schemas/RelationshipToRole' + required: true + responses: + '204': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Grant role to a restriction query + tags: + - Logs Restriction Queries + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/logs/events: + get: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + Use this endpoint to search and filter your logs. + + **If you are considering archiving logs for your organization, + consider use of the Datadog archive capabilities instead of the log list API. + See [Datadog Logs Archive documentation][2].** + + [1]: /logs/guide/collect-multiple-logs-with-pagination + [2]: https://docs.datadoghq.com/logs/archives + operationId: ListLogsGet + parameters: + - description: Search query following logs syntax. + example: '@datacenter:us @role:db' + in: query + name: filter[query] + required: false + schema: + type: string + - description: |- + For customers with multiple indexes, the indexes to search. + Defaults to '*' which means all indexes + example: + - main + - web + explode: false + in: query + name: filter[indexes] + required: false + schema: + items: + description: The name of a log index. + type: string + type: array + - description: Minimum timestamp for requested logs. + example: '2019-01-02T09:42:36.320Z' + in: query + name: filter[from] + required: false + schema: + format: date-time + type: string + - description: Maximum timestamp for requested logs. + example: '2019-01-03T09:42:36.320Z' + in: query + name: filter[to] + required: false + schema: + format: date-time + type: string + - description: Specifies the storage type to be used + example: indexes + in: query + name: filter[storage_tier] + required: false + schema: + $ref: '#/components/schemas/LogsStorageTier' + - description: Order of logs in results. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/LogsSort' + - description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of logs in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: Hello World + service: web-app + tags: + - env:prod + timestamp: '2024-01-01T00:00:00+00:00' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: log + meta: + elapsed: 132 + status: done + schema: + $ref: '#/components/schemas/LogsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Search logs (GET) + tags: + - Logs + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + x-permission: + operator: OR + permissions: + - logs_read_data + /api/v2/logs/events/search: + post: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + Use this endpoint to search and filter your logs. + + **If you are considering archiving logs for your organization, + consider use of the Datadog archive capabilities instead of the log list API. + See [Datadog Logs Archive documentation][2].** + + [1]: /logs/guide/collect-multiple-logs-with-pagination + [2]: https://docs.datadoghq.com/logs/archives + operationId: ListLogs + requestBody: + content: + application/json: + examples: + default: + value: + filter: + from: now-15m + indexes: + - main + - web + query: service:web* AND @http.status_code:[200 TO 299] + storage_tier: indexes + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: '#/components/schemas/LogsListRequest' + required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: Host connected to remote + service: test-service + status: INFO + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: log + meta: + elapsed: 132 + status: done + schema: + $ref: '#/components/schemas/LogsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - logs_read_data + summary: Search logs (POST) + tags: + - Logs + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + x-permission: + operator: OR + permissions: + - logs_read_data + /api/v2/obs-pipelines/pipelines: + get: + description: Retrieve a list of pipelines. + operationId: ListPipelines + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 00000000-0000-0000-0000-000000000001 + type: pipelines + schema: + $ref: '#/components/schemas/ListPipelinesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List pipelines + tags: + - Observability Pipelines + x-permission: + operator: OR + permissions: + - observability_pipelines_read + post: + description: Create a new pipeline. + operationId: CreatePipeline + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + pipeline_type: logs + processor_groups: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: '*' + type: parse_json + processors: [] + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + type: pipelines + schema: + $ref: '#/components/schemas/ObservabilityPipelineSpec' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 00000000-0000-0000-0000-000000000002 + type: pipelines + schema: + $ref: '#/components/schemas/ObservabilityPipeline' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a new pipeline + tags: + - Observability Pipelines + x-permission: + operator: OR + permissions: + - observability_pipelines_deploy + /api/v2/obs-pipelines/pipelines/validate: + post: + description: |- + Validates a pipeline configuration without creating or updating any resources. + Returns a list of validation errors, if any. + operationId: ValidatePipeline + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + pipeline_type: logs + processor_groups: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: '*' + type: parse_json + processors: [] + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + type: pipelines + schema: + $ref: '#/components/schemas/ObservabilityPipelineSpec' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + errors: [] + schema: + $ref: '#/components/schemas/ValidationResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Validate an observability pipeline + tags: + - Observability Pipelines + x-permission: + operator: OR + permissions: + - observability_pipelines_read + /api/v2/obs-pipelines/pipelines/{pipeline_id}: + delete: + description: Delete a pipeline. + operationId: DeletePipeline + parameters: + - description: The ID of the pipeline to delete. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a pipeline + tags: + - Observability Pipelines + x-permission: + operator: OR + permissions: + - observability_pipelines_delete + get: + description: Get a specific pipeline by its ID. + operationId: GetPipeline + parameters: + - description: The ID of the pipeline to retrieve. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 00000000-0000-0000-0000-000000000003 + type: pipelines + schema: + $ref: '#/components/schemas/ObservabilityPipeline' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a specific pipeline + tags: + - Observability Pipelines + x-permission: + operator: OR + permissions: + - observability_pipelines_read + put: + description: Update a pipeline. + operationId: UpdatePipeline + parameters: + - description: The ID of the pipeline to update. + in: path + name: pipeline_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + pipeline_type: logs + processor_groups: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: '*' + type: parse_json + processors: [] + sources: + - id: datadog-agent-source + type: datadog_agent + name: Main Observability Pipeline + id: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: pipelines + schema: + $ref: '#/components/schemas/ObservabilityPipeline' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + destinations: + - id: datadog-logs-destination + inputs: + - datadog-agent-source + type: datadog_logs + sources: + - id: datadog-agent-source + type: datadog_agent + name: My Updated Pipeline + id: 00000000-0000-0000-0000-000000000004 + type: pipelines + schema: + $ref: '#/components/schemas/ObservabilityPipeline' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a pipeline + tags: + - Observability Pipelines + x-permission: + operator: OR + permissions: + - observability_pipelines_deploy + /api/v1/logs-queries/list: + post: + description: |- + List endpoint returns logs that match a log search query. + [Results are paginated][1]. + + **If you are considering archiving logs for your organization, + consider use of the Datadog archive capabilities instead of the log list API. + See [Datadog Logs Archive documentation][2].** + + **Note**: This endpoint is enabled by default for logs customers. To disable it, contact [Datadog support](https://docs.datadoghq.com/help/). + + [1]: /logs/guide/collect-multiple-logs-with-pagination + [2]: https://docs.datadoghq.com/logs/archives + operationId: ListLogsV1 + requestBody: + content: + application/json: + examples: + default: + value: + index: retention-3,retention-15 + limit: 25 + query: service:web* AND @http.status_code:[200 TO 299] + sort: desc + time: + from: '2020-02-02T02:02:02.202Z' + to: '2020-02-20T02:02:02.202Z' + schema: + $ref: '#/components/schemas/LogsListRequestV1' + description: Logs filter + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + logs: + - content: + attributes: + customAttribute: 123 + host: i-0123 + service: test-service + tags: + - team:A + timestamp: '2020-05-26T13:36:14Z' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + schema: + $ref: '#/components/schemas/LogsListResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Search logs + tags: + - Logs + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_read_data + /api/v1/logs/config/index-order: + get: + description: Get the current order of your log indexes. This endpoint takes no JSON arguments. + operationId: GetLogsIndexOrder + responses: + '200': + content: + application/json: + examples: + default: + value: + index_names: + - main + - payments + - web + schema: + $ref: '#/components/schemas/LogsIndexesOrder' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get indexes order + tags: + - Logs Indexes + x-permission: + operator: OR + permissions: + - logs_read_config + put: + description: |- + This endpoint updates the index order of your organization. + It returns the index order object passed in the request body when the request is successful. + operationId: UpdateLogsIndexOrder + requestBody: + content: + application/json: + examples: + default: + value: + index_names: + - main + - payments + - web + schema: + $ref: '#/components/schemas/LogsIndexesOrder' + description: Object containing the new ordered list of index names + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + index_names: + - main + - payments + - web + schema: + $ref: '#/components/schemas/LogsIndexesOrder' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update indexes order + tags: + - Logs Indexes + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_modify_indexes + /api/v1/logs/config/indexes: + get: + description: |- + The Index object describes the configuration of a log index. + This endpoint returns an array of the `LogIndex` objects of your organization. + operationId: ListLogIndexes + responses: + '200': + content: + application/json: + examples: + default: + value: + indexes: + - daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: '#/components/schemas/LogsIndexListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all indexes + tags: + - Logs Indexes + x-permission: + operator: OR + permissions: + - logs_read_config + post: + description: Creates a new index. Returns the Index object passed in the request body when the request is successful. + operationId: CreateLogsIndex + requestBody: + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + daily_limit_warning_threshold_percentage: 70 + exclusion_filters: + - filter: + query: '*' + sample_rate: 1 + is_enabled: true + name: payment + filter: + query: source:python + name: main + num_retention_days: 15 + schema: + $ref: '#/components/schemas/LogsIndex' + description: Object containing the new index. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: '#/components/schemas/LogsIndex' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Invalid Parameter Error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPILimitReachedResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an index + tags: + - Logs Indexes + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_modify_indexes + /api/v1/logs/config/indexes/{name}: + delete: + description: |- + Delete an existing index from your organization. Index deletions are permanent and cannot be reverted. + You cannot recreate an index with the same name as deleted ones. + operationId: DeleteLogsIndex + parameters: + - description: Name of the log index. + in: path + name: name + required: true + schema: + type: string + responses: + '200': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an index + tags: + - Logs Indexes + x-permission: + operator: OR + permissions: + - logs_modify_indexes + get: + description: Get one log index from your organization. This endpoint takes no JSON arguments. + operationId: GetLogsIndex + parameters: + - description: Name of the log index. + in: path + name: name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: '#/components/schemas/LogsIndex' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an index + tags: + - Logs Indexes + x-permission: + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update an index as identified by its name. + Returns the Index object passed in the request body when the request is successful. + + Using the `PUT` method updates your index's configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. + operationId: UpdateLogsIndex + parameters: + - description: Name of the log index. + in: path + name: name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + daily_limit_warning_threshold_percentage: 70 + disable_daily_limit: false + exclusion_filters: + - filter: + query: '*' + sample_rate: 1 + is_enabled: true + name: payment + filter: + query: source:python + num_retention_days: 15 + schema: + $ref: '#/components/schemas/LogsIndexUpdateRequest' + description: Object containing the new `LogsIndexUpdateRequest`. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + daily_limit: 300000000 + filter: + query: source:python + is_rate_limited: false + name: main + num_retention_days: 15 + schema: + $ref: '#/components/schemas/LogsIndex' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Invalid Parameter Error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Too Many Requests + summary: Update an index + tags: + - Logs Indexes + x-codegen-request-body-name: body + /api/v1/logs/config/pipeline-order: + get: + description: |- + Get the current order of your pipelines. + This endpoint takes no JSON arguments. + operationId: GetLogsPipelineOrder + responses: + '200': + content: + application/json: + examples: + default: + value: + pipeline_ids: + - tags + - org_ids + - products + schema: + $ref: '#/components/schemas/LogsPipelinesOrder' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get pipeline order + tags: + - Logs Pipelines + x-permission: + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update the order of your pipelines. Since logs are processed sequentially, reordering a pipeline may change + the structure and content of the data processed by other pipelines and their processors. + + **Note**: Using the `PUT` method updates your pipeline order by replacing your current order + with the new one sent to your Datadog organization. + operationId: UpdateLogsPipelineOrder + requestBody: + content: + application/json: + examples: + default: + value: + pipeline_ids: + - tags + - org_ids + - products + schema: + $ref: '#/components/schemas/LogsPipelinesOrder' + description: Object containing the new ordered list of pipeline IDs. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + pipeline_ids: + - tags + - org_ids + - products + schema: + $ref: '#/components/schemas/LogsPipelinesOrder' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update pipeline order + tags: + - Logs Pipelines + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_write_pipelines + /api/v1/logs/config/pipelines: + get: + description: |- + Get all pipelines from your organization. + This endpoint takes no JSON arguments. + operationId: ListLogsPipelines + responses: + '200': + content: + application/json: + examples: + default: + value: + - filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + type: array + items: + $ref: '#/components/schemas/LogsPipeline' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all pipelines + tags: + - Logs Pipelines + x-permission: + operator: OR + permissions: + - logs_read_config + post: + description: Create a pipeline in your organization. + operationId: CreateLogsPipeline + requestBody: + content: + application/json: + examples: + default: + value: + filter: + query: source:python + is_enabled: true + name: My Pipeline + processors: [] + schema: + $ref: '#/components/schemas/LogsPipeline' + description: Definition of the new pipeline. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: '#/components/schemas/LogsPipeline' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a pipeline + tags: + - Logs Pipelines + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_write_pipelines + /api/v1/logs/config/pipelines/{pipeline_id}: + delete: + description: |- + Delete a given pipeline from your organization. + This endpoint takes no JSON arguments. + operationId: DeleteLogsPipeline + parameters: + - description: ID of the pipeline to delete. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a pipeline + tags: + - Logs Pipelines + x-permission: + operator: OR + permissions: + - logs_write_pipelines + get: + description: |- + Get a specific pipeline from your organization. + This endpoint takes no JSON arguments. + operationId: GetLogsPipeline + parameters: + - description: ID of the pipeline to get. + in: path + name: pipeline_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: '#/components/schemas/LogsPipeline' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a pipeline + tags: + - Logs Pipelines + x-permission: + operator: OR + permissions: + - logs_read_config + put: + description: |- + Update a given pipeline configuration to change it’s processors or their order. + + **Note**: Using this method updates your pipeline configuration by **replacing** + your current configuration with the new one sent to your Datadog organization. + operationId: UpdateLogsPipeline + parameters: + - description: ID of the pipeline to delete. + in: path + name: pipeline_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + filter: + query: source:python + is_enabled: true + name: My Pipeline + processors: [] + schema: + $ref: '#/components/schemas/LogsPipeline' + description: New definition of the pipeline. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + filter: + query: source:python + id: abc-123 + is_enabled: true + is_read_only: false + name: My Pipeline + processors: [] + schema: + $ref: '#/components/schemas/LogsPipeline' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/LogsAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a pipeline + tags: + - Logs Pipelines + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - logs_write_pipelines + /v1/input: + post: + deprecated: true + description: |- + Send your logs to your Datadog platform over HTTP. Limits per HTTP request are: + + - Maximum content size per payload (uncompressed): 5MB + - Maximum size for a single log: 1MB + - Maximum array size if sending multiple logs in an array: 1000 entries + + Any log exceeding 1MB is accepted and truncated by Datadog: + - For a single log request, the API truncates the log at 1MB and returns a 2xx. + - For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx. + + Datadog recommends sending your logs compressed. + Add the `Content-Encoding: gzip` header to the request when sending compressed logs. + + The status codes answered by the HTTP API are: + - 200: OK + - 400: Bad request (likely an issue in the payload formatting) + - 403: Permission issue (likely using an invalid API Key) + - 413: Payload too large (batch is above 5MB uncompressed) + - 5xx: Internal error, request should be retried after some time + operationId: SubmitLogV1 + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: '#/components/schemas/ContentEncodingV1' + - description: Log tags can be passed as query parameters with `text/plain` content type. + example: env:prod,user:my-user + in: query + name: ddtags + required: false + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + - ddsource: nginx + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment + multi-json-messages: + description: Pass multiple log objects at once. + summary: Multi JSON Messages + value: + - message: hello + - message: world + schema: + $ref: '#/components/schemas/HTTPLog' + application/json;simple: + examples: + default: + value: + ddsource: nginx + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment + simple-json-message: + description: Log attributes can be passed as `key:value` pairs in valid JSON messages. + summary: Simple JSON Message + value: + ddsource: agent + ddtags: env:prod,user:joe.doe + hostname: fa1e1e739d95 + message: hello world + schema: + $ref: '#/components/schemas/HTTPLogItemV1' + application/logplex-1: + examples: + default: + value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + multi-raw-message: + description: Submit log messages. + summary: Multi Logplex Messages + value: |- + hello + world + simple-logplex-message: + description: Submit log string. + summary: Simple Logplex Message + value: hello world + schema: + type: string + text/plain: + examples: + default: + value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + multi-raw-message: + description: Submit log string. + summary: Multi Raw Messages + value: |- + hello + world + simple-raw-message: + description: 'Submit log string. Log attributes can be passed as query parameters in the URL. This enables the addition of tags or the source by using the `ddtags` and `ddsource` parameters: `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`.' + summary: Simple Raw Message + value: hello world + schema: + type: string + description: Log to send (JSON format). + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + type: string + description: (opaque JSON object) + description: Response from server (always 200 empty JSON). + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPLogErrorV1' + description: unexpected error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Send logs + tags: + - Logs + x-codegen-request-body-name: body + servers: + - url: https://http-intake.logs.{site:.+} + variables: + site: + default: datadoghq.com + description: The regional site for Datadog customers. + x-stackQL-envVar: DD_SITE +components: + schemas: + ContentEncoding: + description: HTTP header used to compress the media-type. + enum: + - identity + - gzip + - deflate + type: string + x-enum-varnames: + - IDENTITY + - GZIP + - DEFLATE + HTTPLog: + description: Structured log message. + items: + $ref: '#/components/schemas/HTTPLogItem' + type: array + HTTPLogErrors: + description: Invalid query performed. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/HTTPLogError' + type: array + type: object + LogsAggregateRequest: + description: The object sent with the request to retrieve a list of logs from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: '#/components/schemas/LogsCompute' + type: array + filter: + $ref: '#/components/schemas/LogsQueryFilter' + group_by: + description: The rules for the group by + items: + $ref: '#/components/schemas/LogsGroupBy' + type: array + options: + $ref: '#/components/schemas/LogsQueryOptions' + page: + $ref: '#/components/schemas/LogsAggregateRequestPage' + type: object + LogsAggregateResponse: description: The response object for the logs aggregate API endpoint properties: - data: - $ref: '#/components/schemas/LogsAggregateResponseData' - meta: - $ref: '#/components/schemas/LogsResponseMetadata' + data: + $ref: '#/components/schemas/LogsAggregateResponseData' + meta: + $ref: '#/components/schemas/LogsResponseMetadata' + type: object + LogsArchiveOrder: + description: A ordered list of archive IDs. + properties: + data: + $ref: '#/components/schemas/LogsArchiveOrderDefinition' + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + LogsArchives: + description: The available archives. + properties: + data: + description: A list of archives. + items: + $ref: '#/components/schemas/LogsArchiveDefinition' + type: array + type: object + LogsArchiveCreateRequest: + description: The logs archive. + properties: + data: + $ref: '#/components/schemas/LogsArchiveCreateRequestDefinition' + type: object + LogsArchive: + description: The logs archive. + properties: + data: + $ref: '#/components/schemas/LogsArchiveDefinition' + type: object + RelationshipToRole: + description: Relationship to role. + properties: + data: + $ref: '#/components/schemas/RelationshipToRoleData' + type: object + RolesResponse: + description: Response containing information about multiple roles. + properties: + data: + description: Array of returned roles. + items: + $ref: '#/components/schemas/Role' + type: array + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + type: object + CustomDestinationsResponse: + description: The available custom destinations. + properties: + data: + description: A list of custom destinations. + items: + $ref: '#/components/schemas/CustomDestinationResponseDefinition' + type: array + type: object + CustomDestinationCreateRequest: + description: The custom destination. + properties: + data: + $ref: '#/components/schemas/CustomDestinationCreateRequestDefinition' + type: object + CustomDestinationResponse: + description: The custom destination. + properties: + data: + $ref: '#/components/schemas/CustomDestinationResponseDefinition' + type: object + CustomDestinationUpdateRequest: + description: The custom destination. + properties: + data: + $ref: '#/components/schemas/CustomDestinationUpdateRequestDefinition' + type: object + LogsMetricsResponse: + description: All the available log-based metric objects. + properties: + data: + description: A list of log-based metric objects. + items: + $ref: '#/components/schemas/LogsMetricResponseData' + type: array + type: object + LogsMetricCreateRequest: + description: The new log-based metric body. + properties: + data: + $ref: '#/components/schemas/LogsMetricCreateData' + required: + - data + type: object + LogsMetricResponse: + description: The log-based metric object. + properties: + data: + $ref: '#/components/schemas/LogsMetricResponseData' + type: object + LogsMetricUpdateRequest: + description: The new log-based metric body. + properties: + data: + $ref: '#/components/schemas/LogsMetricUpdateData' + required: + - data + type: object + RestrictionQueryListResponse: + description: Response containing information about multiple restriction queries. + properties: + data: + description: Array of returned restriction queries. + items: + $ref: '#/components/schemas/RestrictionQueryWithoutRelationships' + type: array + type: object + RestrictionQueryCreatePayload: + description: Create a restriction query. + properties: + data: + $ref: '#/components/schemas/RestrictionQueryCreateData' + type: object + RestrictionQueryWithoutRelationshipsResponse: + description: Response containing information about a single restriction query. + properties: + data: + $ref: '#/components/schemas/RestrictionQueryWithoutRelationships' + type: object + RestrictionQueryWithRelationshipsResponse: + description: Response containing information about a single restriction query. + properties: + data: + $ref: '#/components/schemas/RestrictionQueryWithRelationships' + included: + description: Array of objects related to the restriction query. + items: + $ref: '#/components/schemas/RestrictionQueryResponseIncludedItem' + type: array + type: object + RestrictionQueryUpdatePayload: + description: Update a restriction query. + properties: + data: + $ref: '#/components/schemas/RestrictionQueryUpdateData' + type: object + RestrictionQueryRolesResponse: + description: Response containing information about roles attached to a restriction query. + properties: + data: + description: Array of roles. + items: + $ref: '#/components/schemas/RestrictionQueryRole' + type: array + type: object + LogsStorageTier: + default: indexes + description: Specifies storage type as indexes, online-archives or flex + enum: + - indexes + - online-archives + - flex + example: indexes + type: string + x-enum-varnames: + - INDEXES + - ONLINE_ARCHIVES + - FLEX + LogsSort: + description: Sort parameters when querying logs. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + LogsListResponse: + description: Response object with all logs matching the request and pagination information. + properties: + data: + description: Array of logs matching the request. + items: + $ref: '#/components/schemas/Log' + type: array + links: + $ref: '#/components/schemas/LogsListResponseLinks' + meta: + $ref: '#/components/schemas/LogsResponseMetadata' + type: object + LogsListRequest: + description: The request for a logs list. + properties: + filter: + $ref: '#/components/schemas/LogsQueryFilter' + options: + $ref: '#/components/schemas/LogsQueryOptions' + page: + $ref: '#/components/schemas/LogsListRequestPage' + sort: + $ref: '#/components/schemas/LogsSort' + type: object + ListPipelinesResponse: + description: Represents the response payload containing a list of pipelines and associated metadata. + properties: + data: + description: The `schema` `data`. + items: + $ref: '#/components/schemas/ObservabilityPipelineData' + type: array + meta: + $ref: '#/components/schemas/ListPipelinesResponseMeta' + required: + - data + type: object + ObservabilityPipelineSpec: + description: Input schema representing an observability pipeline configuration. Used in create and validate requests. + properties: + data: + $ref: '#/components/schemas/ObservabilityPipelineSpecData' + required: + - data + type: object + ObservabilityPipeline: + description: Top-level schema representing a pipeline. + properties: + data: + $ref: '#/components/schemas/ObservabilityPipelineData' + required: + - data + type: object + ValidationResponse: + description: Response containing validation errors. + example: + errors: + - meta: + field: region + id: datadog-agent-source + message: Field 'region' is required + title: Field 'region' is required + properties: + errors: + description: The `ValidationResponse` `errors`. + items: + $ref: '#/components/schemas/ValidationError' + type: array + type: object + LogsListRequestV1: + description: Object to send with the request to retrieve a list of logs from your Organization. + properties: + index: + description: |- + The log index on which the request is performed. For multi-index organizations, + the default is all live indexes. Historical indexes of rehydrated logs must be specified. + example: retention-3,retention-15 + type: string + limit: + description: Number of logs return in the response. + format: int32 + maximum: 1000 + type: integer + query: + description: The search query - following the log search syntax. + example: service:web* AND @http.status_code:[200 TO 299] + type: string + sort: + $ref: '#/components/schemas/LogsSortV1' + startAt: + description: |- + Hash identifier of the first log to return in the list, available in a log `id` attribute. + This parameter is used for the pagination feature. + + **Note**: This parameter is ignored if the corresponding log + is out of the scope of the specified time window. + type: string + time: + $ref: '#/components/schemas/LogsListRequestTime' + required: + - time + type: object + LogsListResponseV1: + description: Response object with all logs matching the request and pagination information. + properties: + logs: + description: Array of logs matching the request and the `nextLogId` if sent. + items: + $ref: '#/components/schemas/LogV1' + type: array + nextLogId: + description: |- + Hash identifier of the next log to return in the list. + This parameter is used for the pagination feature. + nullable: true + type: string + status: + description: Status of the response. + type: string + type: object + LogsAPIErrorResponse: + description: Response returned by the Logs API when errors occur. + properties: + error: + $ref: '#/components/schemas/LogsAPIError' + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + LogsIndexesOrder: + description: Object containing the ordered list of log index names. + properties: + index_names: + description: |- + Array of strings identifying by their name(s) the index(es) of your organization. + Logs are tested against the query filter of each index one by one, following the order of the array. + Logs are eventually stored in the first matching index. + example: + - main + - payments + - web + items: + description: An index name. + type: string + type: array + required: + - index_names + type: object + LogsIndexListResponse: + description: Object with all Index configurations for a given organization. + properties: + indexes: + description: Array of Log index configurations. + items: + $ref: '#/components/schemas/LogsIndex' + type: array + type: object + LogsIndex: + description: Object describing a Datadog Log index. + properties: + daily_limit: + description: The number of log events you can send in this index per day before you are rate-limited. + example: 300000000 + format: int64 + type: integer + daily_limit_reset: + $ref: '#/components/schemas/LogsDailyLimitReset' + daily_limit_warning_threshold_percentage: + description: A percentage threshold of the daily quota at which a Datadog warning event is generated. + example: 70 + format: double + maximum: 99.99 + minimum: 50 + type: number + exclusion_filters: + description: |- + An array of exclusion objects. The logs are tested against the query of each filter, + following the order of the array. Only the first matching active exclusion matters, + others (if any) are ignored. + items: + $ref: '#/components/schemas/LogsExclusion' + type: array + filter: + $ref: '#/components/schemas/LogsFilter' + is_rate_limited: + description: |- + A boolean stating if the index is rate limited, meaning more logs than the daily limit have been sent. + Rate limit is reset every-day at 2pm UTC. + example: false + readOnly: true + type: boolean + name: + description: The name of the index. + example: main + type: string + num_flex_logs_retention_days: + description: |- + The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. + If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through `num_retention_days`, + and then stored in Flex Tier until the number of days specified in `num_flex_logs_retention_days` is reached. + The available values depend on retention plans specified in your organization's contract/subscriptions. + example: 360 + format: int64 + type: integer + num_retention_days: + description: |- + The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. + The available values depend on retention plans specified in your organization's contract/subscriptions. + example: 15 + format: int64 + type: integer + tags: + description: A list of tags associated with the index. Tags must be in `key:value` format. + example: + - team:backend + - env:production + items: + description: A single tag using the format `key:value`. + type: string + type: array + required: + - name + - filter + type: object + LogsAPILimitReachedResponse: + description: Response returned by the Logs API when the max limit has been reached. + properties: + error: + $ref: '#/components/schemas/LogsAPIError' + type: object + LogsIndexUpdateRequest: + description: Object for updating a Datadog Log index. + properties: + daily_limit: + description: The number of log events you can send in this index per day before you are rate-limited. + example: 300000000 + format: int64 + type: integer + daily_limit_reset: + $ref: '#/components/schemas/LogsDailyLimitReset' + daily_limit_warning_threshold_percentage: + description: A percentage threshold of the daily quota at which a Datadog warning event is generated. + example: 70 + format: double + maximum: 99.99 + minimum: 50 + type: number + disable_daily_limit: + description: |- + If true, sets the `daily_limit` value to null and the index is not limited on a daily basis (any + specified `daily_limit` value in the request is ignored). If false or omitted, the index's current + `daily_limit` is maintained. + example: false + type: boolean + exclusion_filters: + description: |- + An array of exclusion objects. The logs are tested against the query of each filter, + following the order of the array. Only the first matching active exclusion matters, + others (if any) are ignored. + items: + $ref: '#/components/schemas/LogsExclusion' + type: array + filter: + $ref: '#/components/schemas/LogsFilter' + num_flex_logs_retention_days: + description: |- + The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. + If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through `num_retention_days`, + and then stored in Flex Tier until the number of days specified in `num_flex_logs_retention_days` is reached. + The available values depend on retention plans specified in your organization's contract/subscriptions. + + **Note**: Changing this value affects all logs already in this index. It may also affect billing. + example: 360 + format: int64 + type: integer + num_retention_days: + description: |- + The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. + The available values depend on retention plans specified in your organization's contract/subscriptions. + + **Note**: Changing this value affects all logs already in this index. It may also affect billing. + example: 15 + format: int64 + type: integer + tags: + description: A list of tags associated with the index. Tags must be in `key:value` format. + example: + - team:backend + - env:production + items: + description: A single tag using the format `key:value`. + type: string + type: array + required: + - filter + type: object + LogsPipelinesOrder: + description: Object containing the ordered list of pipeline IDs. + properties: + pipeline_ids: + description: |- + Ordered Array of `` strings, the order of pipeline IDs in the array + define the overall Pipelines order for Datadog. + example: + - tags + - org_ids + - products + items: + description: A given pipeline ID. + type: string + type: array + required: + - pipeline_ids + type: object + LogsPipelineList: + description: Array of all log pipeline objects configured for the organization. + items: + $ref: '#/components/schemas/LogsPipeline' + type: array + LogsPipeline: + description: |- + Pipelines and processors operate on incoming logs, + parsing and transforming them into structured attributes for easier querying. + + **Note**: These endpoints are only available for admin users. + Make sure to use an application key created by an admin. + properties: + description: + description: A description of the pipeline. + type: string + filter: + $ref: '#/components/schemas/LogsFilter' + id: + description: ID of the pipeline. + readOnly: true + type: string + is_enabled: + description: Whether or not the pipeline is enabled. + type: boolean + is_read_only: + description: Whether or not the pipeline can be edited. + readOnly: true + type: boolean + name: + description: Name of the pipeline. + example: '' + type: string + processors: + description: Ordered list of processors in this pipeline. + items: + $ref: '#/components/schemas/LogsProcessor' + type: array + tags: + description: A list of tags associated with the pipeline. + items: + description: A single tag using the format `key:value`. + type: string + type: array + type: + description: Type of pipeline. + example: pipeline + readOnly: true + type: string + required: + - name + type: object + ContentEncodingV1: + description: HTTP header used to compress the media-type. + enum: + - gzip + - deflate + type: string + x-enum-varnames: + - GZIP + - DEFLATE + HTTPLogItemV1: + additionalProperties: + description: Additional log attributes. + type: string + description: Logs that are sent over HTTP. + properties: + ddsource: + description: |- + The integration name associated with your log: the technology from which the log originated. + When it matches an integration name, Datadog automatically installs the corresponding parsers and facets. + See [reserved attributes](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes). + example: nginx + type: string + ddtags: + description: Tags associated with your logs. + example: env:staging,version:5.1 + type: string + hostname: + description: The name of the originating host of the log. + example: i-012345678 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same value when you use both products. + See [reserved attributes](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes). + example: payment + type: string + required: + - message + type: object + HTTPLogErrorV1: + description: Invalid query performed. + properties: + code: + description: Error code. + example: 0 + format: int32 + maximum: 2147483647 + type: integer + message: + description: Error message. + example: Your browser sent an invalid request. + type: string + required: + - code + - message + type: object + HTTPLogItem: + additionalProperties: + description: Additional log attributes. + description: Logs that are sent over HTTP. + properties: + ddsource: + description: |- + The integration name associated with your log: the technology from which the log originated. + When it matches an integration name, Datadog automatically installs the corresponding parsers and facets. + See [reserved attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). + example: nginx + type: string + ddtags: + description: Tags associated with your logs. + example: env:staging,version:5.1 + type: string + hostname: + description: The name of the originating host of the log. + example: i-012345678 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same value when you use both products. + See [reserved attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). + example: payment + type: string + required: + - message + type: object + HTTPLogError: + description: List of errors. + properties: + detail: + description: Error message. + example: Malformed payload + type: string + status: + description: Error code. + example: '400' + type: string + title: + description: Error title. + example: Bad Request + type: string + type: object + LogsCompute: + description: A compute rule to compute metrics or timeseries + properties: + aggregation: + $ref: '#/components/schemas/LogsAggregationFunction' + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points + example: 5m + type: string + metric: + description: The metric to use + example: '@duration' + type: string + type: + $ref: '#/components/schemas/LogsComputeType' + required: + - aggregation + type: object + LogsQueryFilter: + description: The search and filter query settings + properties: + from: + default: now-15m + description: The minimum time for the requested logs, supports date math and regular timestamps (milliseconds). + example: now-15m + type: string + indexes: + default: + - '*' + description: For customers with multiple indexes, the indexes to search. Defaults to ['*'] which means all indexes. + example: + - main + - web + items: + description: The name of a log index. + type: string + type: array + query: + default: '*' + description: The search query - following the log search syntax. + example: service:web* AND @http.status_code:[200 TO 299] + type: string + storage_tier: + $ref: '#/components/schemas/LogsStorageTier' + to: + default: now + description: The maximum time for the requested logs, supports date math and regular timestamps (milliseconds). + example: now + type: string + type: object + LogsGroupBy: + description: A group by rule + properties: + facet: + description: The name of the facet to use (required) + example: host + type: string + histogram: + $ref: '#/components/schemas/LogsGroupByHistogram' + limit: + default: 10 + description: |- + The maximum buckets to return for this group by. Note: at most 10000 buckets are allowed. + If grouping by multiple facets, the product of limits must not exceed 10000. + format: int64 + type: integer + missing: + $ref: '#/components/schemas/LogsGroupByMissing' + sort: + $ref: '#/components/schemas/LogsAggregateSort' + total: + $ref: '#/components/schemas/LogsGroupByTotal' + required: + - facet + type: object + LogsQueryOptions: + deprecated: true + description: |- + Global query options that are used during the query. + Note: These fields are currently deprecated and do not affect the query results. + properties: + timeOffset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: UTC + description: The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: GMT + type: string + type: object + LogsAggregateRequestPage: + description: Paging settings + properties: + cursor: + description: 'The returned paging point to use to get the next results. Note: at most 1000 results can be paged.' + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + LogsAggregateResponseData: + description: The query results + properties: + buckets: + description: The list of matching buckets, one item per bucket + items: + $ref: '#/components/schemas/LogsAggregateBucket' + type: array + type: object + LogsResponseMetadata: + description: The metadata associated with a request + properties: + elapsed: + description: The time elapsed in milliseconds + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/LogsResponseMetadataPage' + request_id: + description: The identifier of the request + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + $ref: '#/components/schemas/LogsAggregateResponseStatus' + warnings: + description: |- + A list of warnings (non fatal errors) encountered, partial results might be returned if + warnings are present in the response. + items: + $ref: '#/components/schemas/LogsWarning' + type: array + type: object + LogsArchiveOrderDefinition: + description: The definition of an archive order. + properties: + attributes: + $ref: '#/components/schemas/LogsArchiveOrderAttributes' + type: + $ref: '#/components/schemas/LogsArchiveOrderDefinitionType' + required: + - type + - attributes + type: object + LogsArchiveDefinition: + description: The definition of an archive. + properties: + attributes: + $ref: '#/components/schemas/LogsArchiveAttributes' + id: + description: The archive ID. + example: a2zcMylnM4OCHpYusxIi3g + readOnly: true + type: string + type: + default: archives + description: The type of the resource. The value should always be archives. + example: archives + readOnly: true + type: string + required: + - type + type: object + LogsArchiveCreateRequestDefinition: + description: The definition of an archive. + properties: + attributes: + $ref: '#/components/schemas/LogsArchiveCreateRequestAttributes' + type: + default: archives + description: The type of the resource. The value should always be archives. + example: archives + type: string + required: + - type + type: object + RelationshipToRoleData: + description: Relationship to role object. + properties: + id: + description: The unique identifier of the role. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + type: + $ref: '#/components/schemas/RolesType' + type: object + Role: + description: Role object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/RoleAttributes' + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: '#/components/schemas/RoleResponseRelationships' + type: + $ref: '#/components/schemas/RolesType' + required: + - type + type: object + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + type: object + CustomDestinationResponseDefinition: + description: The definition of a custom destination. + properties: + attributes: + $ref: '#/components/schemas/CustomDestinationResponseAttributes' + id: + description: The custom destination ID. + example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 + readOnly: true + type: string + type: + $ref: '#/components/schemas/CustomDestinationType' + type: object + CustomDestinationCreateRequestDefinition: + description: The definition of a custom destination. + properties: + attributes: + $ref: '#/components/schemas/CustomDestinationCreateRequestAttributes' + type: + $ref: '#/components/schemas/CustomDestinationType' + required: + - type + - attributes + type: object + CustomDestinationUpdateRequestDefinition: + description: The definition of a custom destination. + properties: + attributes: + $ref: '#/components/schemas/CustomDestinationUpdateRequestAttributes' + id: + description: The custom destination ID. + example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 + type: string + type: + $ref: '#/components/schemas/CustomDestinationType' + required: + - type + - id + type: object + LogsMetricResponseData: + description: The log-based metric properties. + properties: + attributes: + $ref: '#/components/schemas/LogsMetricResponseAttributes' + id: + $ref: '#/components/schemas/LogsMetricID' + type: + $ref: '#/components/schemas/LogsMetricType' + type: object + LogsMetricCreateData: + description: The new log-based metric properties. + properties: + attributes: + $ref: '#/components/schemas/LogsMetricCreateAttributes' + id: + $ref: '#/components/schemas/LogsMetricID' + type: + $ref: '#/components/schemas/LogsMetricType' + required: + - id + - type + - attributes + type: object + LogsMetricUpdateData: + description: The new log-based metric properties. + properties: + attributes: + $ref: '#/components/schemas/LogsMetricUpdateAttributes' + type: + $ref: '#/components/schemas/LogsMetricType' + required: + - type + - attributes + type: object + RestrictionQueryWithoutRelationships: + description: Restriction query object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/RestrictionQueryAttributes' + id: + description: ID of the restriction query. + example: 79a0e60a-644a-11ea-ad29-43329f7f58b5 + type: string + type: + default: logs_restriction_queries + description: Restriction queries type. + example: logs_restriction_queries + readOnly: true + type: string + type: object + RestrictionQueryCreateData: + description: Data related to the creation of a restriction query. + properties: + attributes: + $ref: '#/components/schemas/RestrictionQueryCreateAttributes' + type: + $ref: '#/components/schemas/LogsRestrictionQueriesType' + type: object + RestrictionQueryWithRelationships: + description: Restriction query object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/RestrictionQueryAttributes' + id: + description: ID of the restriction query. + example: 79a0e60a-644a-11ea-ad29-43329f7f58b5 + type: string + relationships: + $ref: '#/components/schemas/UserRelationships' + type: + $ref: '#/components/schemas/LogsRestrictionQueriesType' + type: object + RestrictionQueryResponseIncludedItem: + description: An object related to a restriction query. + properties: + attributes: + $ref: '#/components/schemas/RestrictionQueryRoleAttribute' + id: + description: ID of the role. + example: + type: string + type: + $ref: '#/components/schemas/RolesType' + required: + - type + - id + - attributes + type: object + RestrictionQueryUpdateData: + description: Data related to the update of a restriction query. + properties: + attributes: + $ref: '#/components/schemas/RestrictionQueryUpdateAttributes' + type: + $ref: '#/components/schemas/LogsRestrictionQueriesType' + type: object + RestrictionQueryRole: + description: Partial role object. + properties: + attributes: + $ref: '#/components/schemas/RestrictionQueryRoleAttribute' + id: + description: ID of the role. + example: + type: string + type: + $ref: '#/components/schemas/RolesType' + required: + - type + - id + - attributes + type: object + Log: + description: Object description of a log after being processed and stored by Datadog. + properties: + attributes: + $ref: '#/components/schemas/LogAttributes' + id: + description: Unique ID of the Log. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/LogType' + type: object + LogsListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/logs/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + LogsListRequestPage: + description: Paging attributes for listing logs. + properties: + cursor: + description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: Maximum number of logs in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + ObservabilityPipelineData: + description: Contains the pipeline’s ID, type, and configuration attributes. + properties: + attributes: + $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' + id: + description: Unique identifier for the pipeline. + example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + type: string + type: + default: pipelines + description: The resource type identifier. For pipeline resources, this should always be set to `pipelines`. + example: pipelines + type: string + required: + - id + - type + - attributes + type: object + ListPipelinesResponseMeta: + description: Metadata about the response. + properties: + totalCount: + description: The total number of pipelines. + example: 42 + format: int64 + type: integer + type: object + ObservabilityPipelineSpecData: + description: Contains the the pipeline configuration. + properties: + attributes: + $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' + type: + default: pipelines + description: The resource type identifier. For pipeline resources, this should always be set to `pipelines`. + example: pipelines + type: string + required: + - type + - attributes + type: object + ValidationError: + description: Represents a single validation error, including a human-readable title and metadata. + properties: + meta: + $ref: '#/components/schemas/ValidationErrorMeta' + title: + description: A short, human-readable summary of the error. + example: Field 'region' is required + type: string + required: + - title + - meta + type: object + LogsSortV1: + description: Time-ascending `asc` or time-descending `desc` results. + enum: + - asc + - desc + type: string + x-enum-varnames: + - TIME_ASCENDING + - TIME_DESCENDING + LogsListRequestTime: + description: Timeframe to retrieve the log from. + properties: + from: + description: Minimum timestamp for requested logs. + example: '2020-02-02T02:02:02.202Z' + format: date-time + type: string + timezone: + description: |- + Timezone can be specified both as an offset (for example "UTC+03:00") + or a regional zone (for example "Europe/Paris"). + type: string + to: + description: Maximum timestamp for requested logs. + example: '2020-02-20T02:02:02.202Z' + format: date-time + type: string + required: + - from + - to + type: object + LogV1: + description: Object describing a log after being processed and stored by Datadog. + properties: + content: + $ref: '#/components/schemas/LogContent' + id: + description: ID of the Log. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: object + LogsAPIError: + description: Error returned by the Logs API + properties: + code: + description: Code identifying the error + type: string + details: + description: Additional error details + items: + $ref: '#/components/schemas/LogsAPIError' + type: array + message: + description: Error message + type: string + type: object + LogsDailyLimitReset: + description: Object containing options to override the default daily limit reset time. + properties: + reset_time: + description: String in `HH:00` format representing the time of day the daily limit should be reset. The hours must be between 00 and 23 (inclusive). + example: '14:00' + type: string + reset_utc_offset: + description: String in `(-|+)HH:00` format representing the UTC offset to apply to the given reset time. The hours must be between -12 and +14 (inclusive). + example: '+02:00' + type: string + type: object + LogsExclusion: + description: Represents the index exclusion filter object from configuration API. + properties: + filter: + $ref: '#/components/schemas/LogsExclusionFilter' + is_enabled: + description: Whether or not the exclusion filter is active. + type: boolean + name: + description: Name of the index exclusion filter. + example: payment + type: string + required: + - name + type: object + LogsFilter: + description: Filter for logs. + properties: + query: + description: The filter query. + example: source:python + type: string + type: object + LogsProcessor: + description: Definition of a logs processor. + properties: + grok: + $ref: '#/components/schemas/LogsGrokParserRules' + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + samples: + description: List of sample logs to test this grok parser. + items: + description: A log sample that is used to test the grok parser. + maxLength: 5000 + type: string + maxItems: 5 + type: array + source: + default: message + description: Name of the log attribute to parse. + example: message + type: string + type: + $ref: '#/components/schemas/LogsGrokParserType' + sources: + description: Array of source attributes. + example: + - web + - gateway + items: + description: Attribute used as a source to define the log associated date. + type: string + type: array + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + source_type: + default: attribute + description: Defines if the sources are from log `attribute` or `tag`. + type: string + target: + description: Final attribute or tag name to remap the sources to. + example: operation_id + type: string + target_format: + $ref: '#/components/schemas/TargetFormatType' + target_type: + default: attribute + description: Defines if the final attribute or tag name is from log `attribute` or `tag`. + type: string + normalize_ending_slashes: + default: false + description: Normalize the ending slashes or not. + nullable: true + type: boolean + is_encoded: + default: false + description: Define if the source attribute is URL encoded or not. + type: boolean + categories: + description: |- + Array of filters to match or not a log and their + corresponding `name` to assign a custom value to the log. + example: [] + items: + $ref: '#/components/schemas/LogsCategoryProcessorCategory' + type: array + expression: + description: Arithmetic operation between one or more log attributes. + example: '' + type: string + is_replace_missing: + default: false + description: |- + If `true`, it replaces all missing attributes of expression by `0`, `false` + skip the operation if an attribute is missing. + type: boolean + template: + description: A formula with one or more attributes and raw text. + example: '' + type: string + description: + description: A description of the pipeline. + type: string + filter: + $ref: '#/components/schemas/LogsFilter' + processors: + description: Ordered list of processors in this pipeline. + items: + $ref: '#/components/schemas/LogsProcessor' + type: array + tags: + description: A list of tags associated with the pipeline. + items: + description: A single tag using the format `key:value`. + type: string + type: array + default_lookup: + description: Value to set the target attribute if the source value is not found in the list. + type: string + lookup_table: + description: |- + Mapping table of values for the source attribute and their associated target attribute values, + formatted as `["source_key1,target_value1", "source_key2,target_value2"]` + example: + - source_key1,target_value1 + - source_key2,target_value2 + items: + description: Mapping between a source and a value, it should follow the format `","`. + type: string + type: array + lookup_enrichment_table: + description: Name of the Reference Table for the source attribute and their associated target attribute values. + example: service_id_to_service_name_table + type: string + operation: + $ref: '#/components/schemas/LogsArrayProcessorOperation' + binary_to_text_encoding: + $ref: '#/components/schemas/LogsDecoderProcessorBinaryToTextEncoding' + input_representation: + $ref: '#/components/schemas/LogsDecoderProcessorInputRepresentation' + mappers: + description: The `LogsSchemaProcessor` `mappers`. + example: + - name: Map userIdentity to ocsf.user.uid + sources: + - userIdentity.principalId + target: ocsf.user.uid + type: schema-remapper + items: + $ref: '#/components/schemas/LogsSchemaMapper' + type: array + schema: + $ref: '#/components/schemas/LogsSchemaData' + attribute_to_exclude: + description: Name of the log attribute to remove from the log event. + example: foo + type: string + required: + - source + - grok + - type + - sources + - target + - categories + - expression + - template + - lookup_table + - lookup_enrichment_table + - operation + - binary_to_text_encoding + - input_representation + - name + - mappers + - schema + - attribute_to_exclude + - processors + type: object + LogsAggregationFunction: + description: An aggregation function + enum: + - count + - cardinality + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + - median + example: pc90 + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - PERCENTILE_75 + - PERCENTILE_90 + - PERCENTILE_95 + - PERCENTILE_98 + - PERCENTILE_99 + - SUM + - MIN + - MAX + - AVG + - MEDIAN + LogsComputeType: + default: total + description: The type of compute + enum: + - timeseries + - total + type: string + x-enum-varnames: + - TIMESERIES + - TOTAL + LogsGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + Note: at most 100 buckets are allowed, the number of buckets is (max - min)/interval. + properties: + interval: + description: The bin size of the histogram buckets + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out) + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out) + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + LogsGroupByMissing: + description: The value to use for logs that don't have the facet used to group by + type: string + format: double + LogsAggregateSort: + description: A sort rule + example: + aggregation: count + order: asc + properties: + aggregation: + $ref: '#/components/schemas/LogsAggregationFunction' + metric: + description: The metric to sort by (only used for `type=measure`) + example: '@duration' + type: string + order: + $ref: '#/components/schemas/LogsSortOrder' + type: + $ref: '#/components/schemas/LogsAggregateSortType' + type: object + LogsGroupByTotal: + default: false + description: A resulting object to put the given computes in over all the matching records. + type: boolean + format: double + LogsAggregateBucket: + description: A bucket values + properties: + by: + additionalProperties: + description: The values for each group by + description: The key, value pairs for each group by + example: + '@state': success + '@version': abc + type: object + computes: + additionalProperties: + $ref: '#/components/schemas/LogsAggregateBucketValue' + description: A map of the metric name -> value for regular compute or list of values for a timeseries + type: object + type: object + LogsResponseMetadataPage: + description: Paging attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + LogsAggregateResponseStatus: + description: The status of the response + enum: + - done + - timeout + example: done + type: string + x-enum-varnames: + - DONE + - TIMEOUT + LogsWarning: + description: A warning message indicating something that went wrong with the query + properties: + code: + description: A unique code for this type of warning + example: unknown_index + type: string + detail: + description: A detailed explanation of this specific warning + example: 'indexes: foo, bar' + type: string + title: + description: A short human-readable summary of the warning + example: One or several indexes are missing or invalid, results hold data from the other indexes + type: string + type: object + LogsArchiveOrderAttributes: + description: The attributes associated with the archive order. + properties: + archive_ids: + description: |- + An ordered array of `` strings, the order of archive IDs in the array + define the overall archives order for Datadog. + example: + - a2zcMylnM4OCHpYusxIi1g + - a2zcMylnM4OCHpYusxIi2g + - a2zcMylnM4OCHpYusxIi3g + items: + description: A given archive ID. + type: string + type: array + required: + - archive_ids + type: object + LogsArchiveOrderDefinitionType: + default: archive_order + description: Type of the archive order definition. + enum: + - archive_order + example: archive_order + type: string + x-enum-varnames: + - ARCHIVE_ORDER + LogsArchiveAttributes: + description: The attributes associated with the archive. + properties: + compression_method: + $ref: '#/components/schemas/LogsArchiveAttributesCompressionMethod' + destination: + $ref: '#/components/schemas/LogsArchiveDestination' + include_tags: + default: false + description: |- + To store the tags in the archive, set the value "true". + If it is set to "false", the tags will be deleted when the logs are sent to the archive. + example: false + type: boolean + lookup_attributes: + description: An array of attributes to use as lookup keys for the archive. + example: + - trace_id + - user_id + items: + description: A lookup attribute name. + type: string + type: array + name: + description: The archive name. + example: Nginx Archive + type: string + partitioning_attributes: + description: An array of attributes to use as partition keys for the archive. The attribute used most frequently for querying should be first. + example: + - service + - status + items: + description: A partition attribute name. + type: string + type: array + query: + description: The archive query/filter. Logs matching this query are included in the archive. + example: source:nginx + type: string + rehydration_max_scan_size_in_gb: + description: Maximum scan size for rehydration from this archive. + example: 100 + format: int64 + nullable: true + type: integer + rehydration_tags: + description: An array of tags to add to rehydrated logs from an archive. + example: + - team:intake + - team:app + items: + description: A given tag in the `:` format. + type: string + type: array + state: + $ref: '#/components/schemas/LogsArchiveState' + required: + - name + - query + - destination + type: object + LogsArchiveCreateRequestAttributes: + description: The attributes associated with the archive. + properties: + compression_method: + $ref: '#/components/schemas/LogsArchiveAttributesCompressionMethod' + destination: + $ref: '#/components/schemas/LogsArchiveCreateRequestDestination' + include_tags: + default: false + description: |- + To store the tags in the archive, set the value "true". + If it is set to "false", the tags will be deleted when the logs are sent to the archive. + example: false + type: boolean + lookup_attributes: + description: An array of attributes to use as lookup keys for the archive. + example: + - trace_id + - user_id + items: + description: A lookup attribute name. + type: string + type: array + name: + description: The archive name. + example: Nginx Archive + type: string + partitioning_attributes: + description: An array of attributes to use as partition keys for the archive. The attribute used most frequently for querying should be first. + example: + - service + - status + items: + description: A partition attribute name. + type: string + type: array + query: + description: The archive query/filter. Logs matching this query are included in the archive. + example: source:nginx + type: string + rehydration_max_scan_size_in_gb: + description: Maximum scan size for rehydration from this archive. + example: 100 + format: int64 + nullable: true + type: integer + rehydration_tags: + description: An array of tags to add to rehydrated logs from an archive. + example: + - team:intake + - team:app + items: + description: A given tag in the `:` format. + type: string + type: array + required: + - name + - query + - destination + type: object + RolesType: + default: roles + description: Roles type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + RoleAttributes: + additionalProperties: {} + description: Attributes of the role. + properties: + created_at: + description: Creation time of the role. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last role modification. + format: date-time + readOnly: true + type: string + name: + description: The name of the role. The name is neither unique nor a stable identifier of the role. + type: string + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. + items: + description: Name of a managed role to inherit permissions from. + type: string + type: array + user_count: + description: Number of users with that role. + format: int64 + readOnly: true + type: integer + type: object + RoleResponseRelationships: + description: Relationships of the role object returned by the API. + properties: + permissions: + $ref: '#/components/schemas/RelationshipToPermissions' + type: object + Pagination: + description: Pagination object. + properties: + total_count: + description: Total count. + format: int64 + type: integer + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer + type: object + CustomDestinationResponseAttributes: + description: The attributes associated with the custom destination. + properties: + enabled: + default: true + description: Whether logs matching this custom destination should be forwarded or not. + example: true + type: boolean + forward_tags: + default: true + description: Whether tags from the forwarded logs should be forwarded or not. + example: true + type: boolean + forward_tags_restriction_list: + default: [] + description: |- + List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered. + + An empty list represents no restriction is in place and either all or no tags will be + forwarded depending on `forward_tags_restriction_list_type` parameter. + example: + - datacenter + - host + items: + description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + type: string + maxItems: 10 + minItems: 0 + type: array + forward_tags_restriction_list_type: + $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType' + forwarder_destination: + $ref: '#/components/schemas/CustomDestinationResponseForwardDestination' + name: + description: The custom destination name. + example: Nginx logs + type: string + query: + default: '' + description: The custom destination query filter. Logs matching this query are forwarded to the destination. + example: source:nginx + type: string + type: object + CustomDestinationType: + default: custom_destination + description: The type of the resource. The value should always be `custom_destination`. + enum: + - custom_destination + example: custom_destination + type: string + x-enum-varnames: + - CUSTOM_DESTINATION + CustomDestinationCreateRequestAttributes: + description: The attributes associated with the custom destination. + properties: + enabled: + default: true + description: Whether logs matching this custom destination should be forwarded or not. + example: true + type: boolean + forward_tags: + default: true + description: Whether tags from the forwarded logs should be forwarded or not. + example: true + type: boolean + forward_tags_restriction_list: + default: [] + description: |- + List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be filtered. + + An empty list represents no restriction is in place and either all or no tags will be + forwarded depending on `forward_tags_restriction_list_type` parameter. + example: + - datacenter + - host + items: + description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + type: string + maxItems: 10 + minItems: 0 + type: array + forward_tags_restriction_list_type: + $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType' + forwarder_destination: + $ref: '#/components/schemas/CustomDestinationForwardDestination' + name: + description: The custom destination name. + example: Nginx logs + type: string + query: + default: '' + description: The custom destination query and filter. Logs matching this query are forwarded to the destination. + example: source:nginx + type: string + required: + - name + - forwarder_destination + type: object + CustomDestinationUpdateRequestAttributes: + description: The attributes associated with the custom destination. + properties: + enabled: + default: true + description: Whether logs matching this custom destination should be forwarded or not. + example: true + type: boolean + forward_tags: + default: true + description: Whether tags from the forwarded logs should be forwarded or not. + example: true + type: boolean + forward_tags_restriction_list: + default: [] + description: |- + List of [keys of tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) to be restricted from being forwarded. + An empty list represents no restriction is in place and either all or no tags will be forwarded depending on `forward_tags_restriction_list_type` parameter. + example: + - datacenter + - host + items: + description: The [key part of a tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + type: string + maxItems: 10 + minItems: 0 + type: array + forward_tags_restriction_list_type: + $ref: '#/components/schemas/CustomDestinationAttributeTagsRestrictionListType' + forwarder_destination: + $ref: '#/components/schemas/CustomDestinationForwardDestination' + name: + description: The custom destination name. + example: Nginx logs + type: string + query: + default: '' + description: The custom destination query and filter. Logs matching this query are forwarded to the destination. + example: source:nginx + type: string + type: object + LogsMetricResponseAttributes: + description: The object describing a Datadog log-based metric. + properties: + compute: + $ref: '#/components/schemas/LogsMetricResponseCompute' + filter: + $ref: '#/components/schemas/LogsMetricResponseFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/LogsMetricResponseGroupBy' + type: array + type: object + LogsMetricID: + description: The name of the log-based metric. + example: logs.page.load.count + type: string + LogsMetricType: + default: logs_metrics + description: The type of the resource. The value should always be logs_metrics. + enum: + - logs_metrics + example: logs_metrics + type: string + x-enum-varnames: + - LOGS_METRICS + LogsMetricCreateAttributes: + description: The object describing the Datadog log-based metric to create. + properties: + compute: + $ref: '#/components/schemas/LogsMetricCompute' + filter: + $ref: '#/components/schemas/LogsMetricFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/LogsMetricGroupBy' + type: array + required: + - compute + type: object + LogsMetricUpdateAttributes: + description: The log-based metric properties that will be updated. + properties: + compute: + $ref: '#/components/schemas/LogsMetricUpdateCompute' + filter: + $ref: '#/components/schemas/LogsMetricFilter' + group_by: + description: The rules for the group by. + items: + $ref: '#/components/schemas/LogsMetricGroupBy' + type: array + type: object + RestrictionQueryAttributes: + description: Attributes of the restriction query. + properties: + created_at: + description: Creation time of the restriction query. + example: '2020-03-17T21:06:44.000Z' + format: date-time + readOnly: true + type: string + last_modifier_email: + description: Email of the user who last modified this restriction query. + example: user@example.com + readOnly: true + type: string + last_modifier_name: + description: Name of the user who last modified this restriction query. + example: John Doe + readOnly: true + type: string + modified_at: + description: Time of last restriction query modification. + example: '2020-03-17T21:15:15.000Z' + format: date-time + readOnly: true + type: string + restriction_query: + description: The query that defines the restriction. Only the content matching the query can be returned. + example: env:sandbox + type: string + role_count: + description: Number of roles associated with this restriction query. + example: 3 + format: int64 + readOnly: true + type: integer + user_count: + description: Number of users associated with this restriction query. + example: 5 + format: int64 + readOnly: true + type: integer + type: object + RestrictionQueryCreateAttributes: + description: Attributes of the created restriction query. + properties: + restriction_query: + description: The restriction query. + example: env:sandbox + type: string + required: + - restriction_query + type: object + LogsRestrictionQueriesType: + default: logs_restriction_queries + description: Restriction query resource type. + enum: + - logs_restriction_queries + example: logs_restriction_queries + type: string + x-enum-varnames: + - LOGS_RESTRICTION_QUERIES + UserRelationships: + description: Relationships of the user object. + properties: + roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + RestrictionQueryUpdateAttributes: + description: Attributes of the edited restriction query. + properties: + restriction_query: + description: The restriction query. + example: env:sandbox + type: string + required: + - restriction_query + type: object + RestrictionQueryRoleAttribute: + description: Attributes of the role for a restriction query. + properties: + name: + description: The role name. + example: Datadog Admin Role + type: string + type: object + LogAttributes: + description: JSON object containing all log attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from your log. + example: + customAttribute: 123 + duration: 2345 + type: object + host: + description: Name of the machine from where the logs are being sent. + example: i-0123 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: Host connected to remote + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same + value when you use both products. + example: agent + type: string + status: + description: Status of the message associated with your log. + example: INFO + type: string + tags: + description: Array of tags associated with your log. + example: + - team:A + items: + description: Tag associated with your log. + type: string + type: array + timestamp: + description: Timestamp of your log. + example: '2019-01-02T09:42:36.320Z' + format: date-time + type: string + type: object + LogType: + default: log + description: Type of the event. + enum: + - log + example: log + type: string + x-enum-varnames: + - LOG + ObservabilityPipelineDataAttributes: + description: Defines the pipeline’s name and its components (sources, processors, and destinations). + properties: + config: + $ref: '#/components/schemas/ObservabilityPipelineConfig' + name: + description: Name of the pipeline. + example: Main Observability Pipeline + type: string + required: + - name + - config + type: object + ValidationErrorMeta: + description: Describes additional metadata for validation errors, including field names and error messages. + properties: + field: + description: The field name that caused the error. + example: region + type: string + id: + description: The ID of the component in which the error occurred. + example: datadog-agent-source + type: string + message: + description: The detailed error message. + example: Field 'region' is required + type: string + required: + - message + type: object + LogContent: + description: JSON object containing all log attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from your log. + example: + customAttribute: 123 + duration: 2345 + type: object + host: + description: Name of the machine from where the logs are being sent. + example: i-0123 + type: string + message: + description: |- + The message [reserved attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) + of your log. By default, Datadog ingests the value of the message attribute as the body of the log entry. + That value is then highlighted and displayed in the Logstream, where it is indexed for full text search. + example: Host connected to remote + type: string + service: + description: |- + The name of the application or service generating the log events. + It is used to switch from Logs to APM, so make sure you define the same + value when you use both products. + example: agent + type: string + tags: + description: Array of tags associated with your log. + example: + - team:A + items: + description: Tag associated with your log. + type: string + type: array + timestamp: + description: Timestamp of your log. + example: '2020-05-26T13:36:14Z' + format: date-time + type: string + type: object + LogsExclusionFilter: + description: Exclusion filter is defined by a query, a sampling rule, and a active/inactive toggle. + properties: + query: + description: |- + Default query is `*`, meaning all logs flowing in the index would be excluded. + Scope down exclusion filter to only a subset of logs with a log query. + example: '*' + type: string + sample_attribute: + description: |- + Sample attribute to use for the sampling of logs going through this exclusion filter. + When set, only the logs with the specified attribute are sampled. + example: '@ci.job_id' + type: string + sample_rate: + description: |- + Sample rate to apply to logs going through this exclusion filter, + a value of 1.0 excludes all logs matching the query. + example: 1 + format: double + type: number + required: + - sample_rate + type: object + LogsGrokParser: + description: |- + Create custom grok rules to parse the full message or [a specific attribute of your raw event](https://docs.datadoghq.com/logs/log_configuration/parsing/#advanced-settings). + For more information, see the [parsing section](https://docs.datadoghq.com/logs/log_configuration/parsing). + properties: + grok: + $ref: '#/components/schemas/LogsGrokParserRules' + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + samples: + description: List of sample logs to test this grok parser. + items: + description: A log sample that is used to test the grok parser. + maxLength: 5000 + type: string + maxItems: 5 + type: array + source: + default: message + description: Name of the log attribute to parse. + example: message + type: string + type: + $ref: '#/components/schemas/LogsGrokParserType' + required: + - source + - grok + - type + type: object + LogsDateRemapper: + description: |- + As Datadog receives logs, it timestamps them using the value(s) from any of these default attributes. + + - `timestamp` + - `date` + - `_timestamp` + - `Timestamp` + - `eventTime` + - `published_date` + + If your logs put their dates in an attribute not in this list, + use the log date Remapper Processor to define their date attribute as the official log timestamp. + The recognized date formats are ISO8601, UNIX (the milliseconds EPOCH format), and RFC3164. + + **Note:** If your logs don’t contain any of the default attributes + and you haven’t defined your own date attribute, Datadog timestamps + the logs with the date it received them. + + If multiple log date remapper processors can be applied to a given log, + only the first one (according to the pipelines order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + description: Array of source attributes. + example: + - web + - gateway + items: + description: Attribute used as a source to define the log associated date. + type: string + type: array + type: + $ref: '#/components/schemas/LogsDateRemapperType' + required: + - sources + - type + type: object + LogsStatusRemapper: + description: |- + Use this Processor if you want to assign some attributes as the official status. + + Each incoming status value is mapped as follows. + + - Integers from 0 to 7 map to the Syslog severity standards + - Strings beginning with `emerg` or f (case-insensitive) map to `emerg` (0) + - Strings beginning with `a` (case-insensitive) map to `alert` (1) + - Strings beginning with `c` (case-insensitive) map to `critical` (2) + - Strings beginning with `err` (case-insensitive) map to `error` (3) + - Strings beginning with `w` (case-insensitive) map to `warning` (4) + - Strings beginning with `n` (case-insensitive) map to `notice` (5) + - Strings beginning with `i` (case-insensitive) map to `info` (6) + - Strings beginning with `d`, `trace` or `verbose` (case-insensitive) map to `debug` (7) + - Strings beginning with `o` or matching `OK` or `Success` (case-insensitive) map to OK + - All others map to `info` (6) + + **Note:** If multiple log status remapper processors can be applied to a given log, + only the first one (according to the pipelines order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + description: Array of source attributes. + example: [] + items: + description: Attribute used as a source to define the log associated status. + type: string + type: array + type: + $ref: '#/components/schemas/LogsStatusRemapperType' + required: + - sources + - type + type: object + LogsServiceRemapper: + description: |- + Use this processor if you want to assign one or more attributes as the official service. + + **Note:** If multiple service remapper processors can be applied to a given log, + only the first one (according to the pipeline order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + description: Array of source attributes. + example: + - web + - gateway + items: + description: Attribute used as a source to define the log associated service. + type: string + type: array + type: + $ref: '#/components/schemas/LogsServiceRemapperType' + required: + - sources + - type + type: object + LogsMessageRemapper: + description: |- + The message is a key attribute in Datadog. + It is displayed in the message column of the Log Explorer and you can do full string search on it. + Use this Processor to define one or more attributes as the official log message. + + **Note:** If multiple log message remapper processors can be applied to a given log, + only the first one (according to the pipeline order) is taken into account. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: + - msg + description: Array of source attributes. + example: + - msg + items: + description: Attribute used as a source to define the log associated message. + type: string + type: array + type: + $ref: '#/components/schemas/LogsMessageRemapperType' + required: + - sources + - type + type: object + LogsAttributeRemapper: + description: |- + The remapper processor remaps any source attribute(s) or tag to another target attribute or tag. + Constraints on the tag/attribute name are explained in the [Tag Best Practice documentation](https://docs.datadoghq.com/logs/guide/log-parsing-best-practice). + Some additional constraints are applied as `:` or `,` are not allowed in the target tag/attribute name. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + source_type: + default: attribute + description: Defines if the sources are from log `attribute` or `tag`. + type: string + sources: + description: Array of source attributes. + example: + - web + - gateway + items: + description: Attribute used as a source to remap its value to the target attribute. + type: string + type: array + target: + description: Final attribute or tag name to remap the sources to. + example: operation_id + type: string + target_format: + $ref: '#/components/schemas/TargetFormatType' + target_type: + default: attribute + description: Defines if the final attribute or tag name is from log `attribute` or `tag`. + type: string + type: + $ref: '#/components/schemas/LogsAttributeRemapperType' + required: + - sources + - target + - type + type: object + LogsURLParser: + description: This processor extracts query parameters and other important parameters from a URL. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + normalize_ending_slashes: + default: false + description: Normalize the ending slashes or not. + nullable: true + type: boolean + sources: + default: + - http.url + description: Array of source attributes. + example: + - http.url + items: + description: Attribute to extract the URL from. + type: string + type: array + target: + default: http.url_details + description: Name of the parent attribute that contains all the extracted details from the `sources`. + example: http.url_details + type: string + type: + $ref: '#/components/schemas/LogsURLParserType' + required: + - sources + - target + - type + type: object + LogsUserAgentParser: + description: |- + The User-Agent parser takes a User-Agent attribute and extracts the OS, browser, device, and other user data. + It recognizes major bots like the Google Bot, Yahoo Slurp, and Bing. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + is_encoded: + default: false + description: Define if the source attribute is URL encoded or not. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: + - http.useragent + description: Array of source attributes. + example: + - http.useragent + items: + description: Attribute to extract the User-Agent from. + type: string + type: array + target: + default: http.useragent_details + description: Name of the parent attribute that contains all the extracted details from the `sources`. + example: http.useragent_details + type: string + type: + $ref: '#/components/schemas/LogsUserAgentParserType' + required: + - sources + - target + - type + type: object + LogsCategoryProcessor: + description: |- + Use the Category Processor to add a new attribute (without spaces or special characters in the new attribute name) + to a log matching a provided search query. Use categories to create groups for an analytical view. + For example, URL groups, machine groups, environments, and response time buckets. + + **Notes**: + + - The syntax of the query is the one of Logs Explorer search bar. + The query can be done on any log attribute or tag, whether it is a facet or not. + Wildcards can also be used inside your query. + - Once the log has matched one of the Processor queries, it stops. + Make sure they are properly ordered in case a log could match several queries. + - The names of the categories must be unique. + - Once defined in the Category Processor, you can map categories to log status using the Log Status Remapper. + properties: + categories: + description: |- + Array of filters to match or not a log and their + corresponding `name` to assign a custom value to the log. + example: [] + items: + $ref: '#/components/schemas/LogsCategoryProcessorCategory' + type: array + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + target: + description: Name of the target attribute which value is defined by the matching category. + example: '' + type: string + type: + $ref: '#/components/schemas/LogsCategoryProcessorType' + required: + - categories + - target + - type + type: object + LogsArithmeticProcessor: + description: |- + Use the Arithmetic Processor to add a new attribute (without spaces or special characters + in the new attribute name) to a log with the result of the provided formula. + This enables you to remap different time attributes with different units into a single attribute, + or to compute operations on attributes within the same log. + + The formula can use parentheses and the basic arithmetic operators `-`, `+`, `*`, `/`. + + By default, the calculation is skipped if an attribute is missing. + Select “Replace missing attribute by 0” to automatically populate + missing attribute values with 0 to ensure that the calculation is done. + An attribute is missing if it is not found in the log attributes, + or if it cannot be converted to a number. + + *Notes*: + + - The operator `-` needs to be space split in the formula as it can also be contained in attribute names. + - If the target attribute already exists, it is overwritten by the result of the formula. + - Results are rounded up to the 9th decimal. For example, if the result of the formula is `0.1234567891`, + the actual value stored for the attribute is `0.123456789`. + - If you need to scale a unit of measure, + see [Scale Filter](https://docs.datadoghq.com/logs/log_configuration/parsing/?tab=filter#matcher-and-filter). + properties: + expression: + description: Arithmetic operation between one or more log attributes. + example: '' + type: string + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + is_replace_missing: + default: false + description: |- + If `true`, it replaces all missing attributes of expression by `0`, `false` + skip the operation if an attribute is missing. + type: boolean + name: + description: Name of the processor. + type: string + target: + description: Name of the attribute that contains the result of the arithmetic operation. + example: '' + type: string + type: + $ref: '#/components/schemas/LogsArithmeticProcessorType' + required: + - target + - expression + - type + type: object + LogsStringBuilderProcessor: + description: |- + Use the string builder processor to add a new attribute (without spaces or special characters) + to a log with the result of the provided template. + This enables aggregation of different attributes or raw strings into a single attribute. + + The template is defined by both raw text and blocks with the syntax `%{attribute_path}`. + + **Notes**: + + - The processor only accepts attributes with values or an array of values in the blocks. + - If an attribute cannot be used (object or array of object), + it is replaced by an empty string or the entire operation is skipped depending on your selection. + - If the target attribute already exists, it is overwritten by the result of the template. + - Results of the template cannot exceed 256 characters. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + is_replace_missing: + default: false + description: |- + If true, it replaces all missing attributes of `template` by an empty string. + If `false` (default), skips the operation for missing attributes. + type: boolean + name: + description: Name of the processor. + type: string + target: + description: The name of the attribute that contains the result of the template. + example: '' + type: string + template: + description: A formula with one or more attributes and raw text. + example: '' + type: string + type: + $ref: '#/components/schemas/LogsStringBuilderProcessorType' + required: + - target + - template + - type + type: object + LogsPipelineProcessor: + description: |- + Nested Pipelines are pipelines within a pipeline. Use Nested Pipelines to split the processing into two steps. + For example, first use a high-level filtering such as team and then a second level of filtering based on the + integration, service, or any other tag or attribute. + + A pipeline can contain Nested Pipelines and Processors whereas a Nested Pipeline can only contain Processors. + properties: + description: + description: A description of the pipeline. + type: string + filter: + $ref: '#/components/schemas/LogsFilter' + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + processors: + description: Ordered list of processors in this pipeline. + items: + $ref: '#/components/schemas/LogsProcessor' + type: array + tags: + description: A list of tags associated with the pipeline. + items: + description: A single tag using the format `key:value`. + type: string + type: array + type: + $ref: '#/components/schemas/LogsPipelineProcessorType' + required: + - type + type: object + LogsGeoIPParser: + description: |- + The GeoIP parser takes an IP address attribute and extracts if available + the Continent, Country, Subdivision, and City information in the target attribute path. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: + - network.client.ip + description: Array of source attributes. + example: + - network.client.ip + items: + description: Attribute to geo-localize the IP from. + type: string + type: array + target: + default: network.client.geoip + description: Name of the parent attribute that contains all the extracted details from the `sources`. + example: network.client.geoip + type: string + type: + $ref: '#/components/schemas/LogsGeoIPParserType' + required: + - sources + - target + - type + type: object + LogsLookupProcessor: + description: |- + Use the Lookup Processor to define a mapping between a log attribute + and a human readable value saved in the processors mapping table. + For example, you can use the Lookup Processor to map an internal service ID + into a human readable service name. Alternatively, you could also use it to check + if the MAC address that just attempted to connect to the production + environment belongs to your list of stolen machines. + properties: + default_lookup: + description: Value to set the target attribute if the source value is not found in the list. + type: string + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + lookup_table: + description: |- + Mapping table of values for the source attribute and their associated target attribute values, + formatted as `["source_key1,target_value1", "source_key2,target_value2"]` + example: + - source_key1,target_value1 + - source_key2,target_value2 + items: + description: Mapping between a source and a value, it should follow the format `","`. + type: string + type: array + name: + description: Name of the processor. + type: string + source: + description: Source attribute used to perform the lookup. + example: service_id + type: string + target: + description: |- + Name of the attribute that contains the corresponding value in the mapping list + or the `default_lookup` if not found in the mapping list. + example: service + type: string + type: + $ref: '#/components/schemas/LogsLookupProcessorType' + required: + - source + - target + - lookup_table + - type + type: object + ReferenceTableLogsLookupProcessor: + description: |- + **Note**: Reference Tables are in public beta. + Use the Lookup Processor to define a mapping between a log attribute + and a human readable value saved in a Reference Table. + For example, you can use the Lookup Processor to map an internal service ID + into a human readable service name. Alternatively, you could also use it to check + if the MAC address that just attempted to connect to the production + environment belongs to your list of stolen machines. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + lookup_enrichment_table: + description: Name of the Reference Table for the source attribute and their associated target attribute values. + example: service_id_to_service_name_table + type: string + name: + description: Name of the processor. + type: string + source: + description: Source attribute used to perform the lookup. + example: service_id + type: string + target: + description: Name of the attribute that contains the corresponding value in the mapping list. + example: service + type: string + type: + $ref: '#/components/schemas/LogsLookupProcessorType' + required: + - source + - target + - lookup_enrichment_table + - type + type: object + LogsTraceRemapper: + description: |- + There are two ways to improve correlation between application traces and logs. + + 1. Follow the documentation on [how to inject a trace ID in the application logs](https://docs.datadoghq.com/tracing/connect_logs_and_traces) + and by default log integrations take care of all the rest of the setup. + + 2. Use the Trace remapper processor to define a log attribute as its associated trace ID. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: + - dd.trace_id + description: Array of source attributes. + items: + description: Attribute to extract the trace ID from. + type: string + type: array + type: + $ref: '#/components/schemas/LogsTraceRemapperType' + required: + - type + type: object + LogsSpanRemapper: + description: |- + There are two ways to define correlation between application spans and logs: + + 1. Follow the documentation on [how to inject a span ID in the application logs](https://docs.datadoghq.com/tracing/connect_logs_and_traces). + Log integrations automatically handle all remaining setup steps by default. + + 2. Use the span remapper processor to define a log attribute as its associated span ID. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + sources: + default: + - dd.span_id + description: Array of source attributes. + items: + description: Attribute to extract the span ID from. + type: string + type: array + type: + $ref: '#/components/schemas/LogsSpanRemapperType' + required: + - type + type: object + LogsArrayProcessor: + description: |- + A processor for extracting, aggregating, or transforming values from JSON arrays within your logs. + Supported operations are: + - Select value from matching element + - Compute array length + - Append a value to an array + - Extract key-value pairs from an array + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + operation: + $ref: '#/components/schemas/LogsArrayProcessorOperation' + type: + $ref: '#/components/schemas/LogsArrayProcessorType' + required: + - operation + - type + type: object + LogsDecoderProcessor: + description: |- + The decoder processor decodes any source attribute containing a + base64/base16-encoded UTF-8/ASCII string back to its original value, storing the + result in a target attribute. + properties: + binary_to_text_encoding: + $ref: '#/components/schemas/LogsDecoderProcessorBinaryToTextEncoding' + input_representation: + $ref: '#/components/schemas/LogsDecoderProcessorInputRepresentation' + is_enabled: + default: false + description: Whether the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + source: + description: Name of the log attribute with the encoded data. + example: encoded.field + type: string + target: + description: Name of the log attribute that contains the decoded data. + example: decoded.field + type: string + type: + $ref: '#/components/schemas/LogsDecoderProcessorType' + required: + - source + - target + - binary_to_text_encoding + - input_representation + - type + type: object + LogsSchemaProcessor: + description: A processor that has additional validations and checks for a given schema. Currently supported schema types include OCSF. + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + mappers: + description: The `LogsSchemaProcessor` `mappers`. + example: + - name: Map userIdentity to ocsf.user.uid + sources: + - userIdentity.principalId + target: ocsf.user.uid + type: schema-remapper + items: + $ref: '#/components/schemas/LogsSchemaMapper' + type: array + name: + description: Name of the processor. + example: Map additionalEventData.LoginTo to ocsf.dst_endpoint.svc_name + type: string + schema: + $ref: '#/components/schemas/LogsSchemaData' + type: + $ref: '#/components/schemas/LogsSchemaProcessorType' + required: + - name + - mappers + - type + - schema + type: object + LogsExcludeAttributeProcessor: + description: |- + Use this processor to remove an attribute from a log during processing. + The processor strips the specified attribute from the log event, which is useful + when the attribute contains sensitive data or is no longer needed downstream. + properties: + attribute_to_exclude: + description: Name of the log attribute to remove from the log event. + example: foo + type: string + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + type: + $ref: '#/components/schemas/LogsExcludeAttributeProcessorType' + required: + - type + - attribute_to_exclude + type: object + LogsArrayMapProcessor: + description: |- + The array-map processor transforms each element of a source array by applying + sub-processors in order and collecting the results into a target array. + Results can be written to a new array, to the source array (in-place), or to + an existing target array. Sub-processors can read from `$sourceElem.` + (object element field), bare `$sourceElem` (primitive element), or any parent + log attribute path. Sub-processors write to `$targetElem.` (object + output field) or bare `$targetElem` (primitive output). + properties: + is_enabled: + default: false + description: Whether or not the processor is enabled. + type: boolean + name: + description: Name of the processor. + type: string + preserve_source: + default: true + description: |- + When `false` and `source != target`, the source attribute is removed after + processing. Cannot be `false` when `source == target`. + type: boolean + processors: + description: |- + Sub-processors applied to each element. Allowed types: `attribute-remapper`, + `string-builder-processor`, `arithmetic-processor`, `category-processor`. + items: + $ref: '#/components/schemas/LogsArrayMapSubProcessor' + type: array + source: + description: |- + Attribute path of the source array. Elements are read-only via `$sourceElem` + inside sub-processors. + example: detail.resource.s3BucketDetails + type: string + target: + description: |- + Attribute path of the output array. Sub-processors write to `$targetElem` + (or `$targetElem.`) to build each output element. + example: ocsf.resources + type: string + type: + $ref: '#/components/schemas/LogsArrayMapProcessorType' + required: + - source + - target + - processors + - type + type: object + LogsGroupByMissingString: + description: The missing value to use if there is string valued facet. + type: string + LogsGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + LogsSortOrder: + description: The order to use, ascending or descending + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASCENDING + - DESCENDING + LogsAggregateSortType: + default: alphabetical + description: The type of sorting algorithm + enum: + - alphabetical + - measure + type: string + x-enum-varnames: + - ALPHABETICAL + - MEASURE + LogsGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total" + type: boolean + LogsGroupByTotalString: + description: A string to use as the key value for the total bucket + type: string + LogsGroupByTotalNumber: + description: A number to use as the key value for the total bucket + format: double + type: number + LogsAggregateBucketValue: + description: A bucket value, can be either a timeseries or a single value + type: string + format: double + items: + $ref: '#/components/schemas/LogsAggregateBucketValueTimeseriesPoint' + x-generate-alias-as-model: true + LogsArchiveAttributesCompressionMethod: + default: GZIP + description: The type of compression for the archive. + enum: + - GZIP + - ZSTD + example: GZIP + type: string + x-enum-varnames: + - GZIP + - ZSTD + LogsArchiveDestination: + description: An archive's destination. + nullable: true + type: object + properties: + container: + description: The container where the archive will be stored. + example: container-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationAzure' + path: + description: The archive path. + type: string + region: + description: The region where the archive will be stored. + type: string + storage_account: + description: The associated storage account. + example: account-name + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationAzureType' + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + encryption: + $ref: '#/components/schemas/LogsArchiveEncryptionS3' + storage_class: + $ref: '#/components/schemas/LogsArchiveStorageClassS3Type' + required: + - storage_account + - container + - integration + - type + - bucket + LogsArchiveState: + description: The state of the archive. + enum: + - UNKNOWN + - WORKING + - FAILING + - WORKING_AUTH_LEGACY + example: WORKING + type: string + x-enum-varnames: + - UNKNOWN + - WORKING + - FAILING + - WORKING_AUTH_LEGACY + LogsArchiveCreateRequestDestination: + description: An archive's destination. + properties: + container: + description: The container where the archive will be stored. + example: container-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationAzure' + path: + description: The archive path. + type: string + region: + description: The region where the archive will be stored. + type: string + storage_account: + description: The associated storage account. + example: account-name + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationAzureType' + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + encryption: + $ref: '#/components/schemas/LogsArchiveEncryptionS3' + storage_class: + $ref: '#/components/schemas/LogsArchiveStorageClassS3Type' + required: + - storage_account + - container + - integration + - type + - bucket + type: object + RelationshipToPermissions: + description: Relationship to multiple permissions objects. + properties: + data: + description: Relationships to permission objects. + items: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: array + type: object + CustomDestinationAttributeTagsRestrictionListType: + default: ALLOW_LIST + description: |- + How `forward_tags_restriction_list` parameter should be interpreted. + If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match the ones on the restriction list + are forwarded. + + `BLOCK_LIST` works the opposite way. It does not forward the tags matching the ones on the list. + enum: + - ALLOW_LIST + - BLOCK_LIST + example: ALLOW_LIST + type: string + x-enum-varnames: + - ALLOW_LIST + - BLOCK_LIST + CustomDestinationResponseForwardDestination: + description: A custom destination's location to forward logs. + properties: + auth: + $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuth' + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + type: + $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttpType' + sourcetype: + description: |- + The Splunk sourcetype for the events sent to this Splunk destination. + + If the field is absent from the request and no sourcetype has been previously set on this destination, the default sourcetype `_json` is used. + On update, if the field is absent from the request but a sourcetype was previously set, the previous value is kept. + If set to `null`, the sourcetype field is omitted from the forwarded event entirely. + Otherwise, the provided string value is used as the sourcetype. + example: my-source + nullable: true + type: string + index_name: + description: Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). + example: nginx-logs + type: string + index_rotation: + description: |- + Date pattern with US locale and UTC timezone to be appended to the index name after adding `-` + (that is, `${index_name}-${indexPattern}`). + You can customize the index rotation naming pattern by choosing one of these options: + - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) + - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) + - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) + - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) + + If this field is missing or is blank, it means that the index name will always be the same + (that is, no rotation). + example: yyyy-MM-dd + type: string + client_id: + description: Client ID from the Datadog Azure integration. + example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 + type: string + data_collection_endpoint: + description: Azure data collection endpoint. + example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com + type: string + data_collection_rule_id: + description: Azure data collection rule ID. + example: dcr-000a00a000a00000a000000aa000a0aa + type: string + stream_name: + description: Azure stream name. + example: Custom-MyTable + type: string + writeOnly: true + tenant_id: + description: Tenant ID from the Datadog Azure integration. + example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + type: string + required: + - type + - endpoint + - auth + - index_name + - tenant_id + - client_id + - data_collection_endpoint + - data_collection_rule_id + - stream_name + type: object + CustomDestinationForwardDestination: + description: A custom destination's location to forward logs. + properties: + auth: + $ref: '#/components/schemas/CustomDestinationHttpDestinationAuth' + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + type: + $ref: '#/components/schemas/CustomDestinationForwardDestinationHttpType' + access_token: + description: Access token of the Splunk HTTP Event Collector. This field is not returned by the API. + example: splunk_access_token + type: string + writeOnly: true + sourcetype: + description: |- + The Splunk sourcetype for the events sent to this Splunk destination. + + If the field is absent from the request and no sourcetype has been previously set on this destination, the default sourcetype `_json` is used. + On update, if the field is absent from the request but a sourcetype was previously set, the previous value is kept. + If set to `null`, the sourcetype field is omitted from the forwarded event entirely. + Otherwise, the provided string value is used as the sourcetype. + example: my-source + nullable: true + type: string + index_name: + description: Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). + example: nginx-logs + type: string + index_rotation: + description: |- + Date pattern with US locale and UTC timezone to be appended to the index name after adding `-` + (that is, `${index_name}-${indexPattern}`). + You can customize the index rotation naming pattern by choosing one of these options: + - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) + - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) + - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) + - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) + + If this field is missing or is blank, it means that the index name will always be the same + (that is, no rotation). + example: yyyy-MM-dd + type: string + client_id: + description: Client ID from the Datadog Azure integration. + example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 + type: string + data_collection_endpoint: + description: Azure data collection endpoint. + example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com + type: string + data_collection_rule_id: + description: Azure data collection rule ID. + example: dcr-000a00a000a00000a000000aa000a0aa + type: string + stream_name: + description: Azure stream name. + example: Custom-MyTable + type: string + writeOnly: true + tenant_id: + description: Tenant ID from the Datadog Azure integration. + example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + type: string + required: + - type + - endpoint + - auth + - access_token + - index_name + - tenant_id + - client_id + - data_collection_endpoint + - data_collection_rule_id + - stream_name + type: object + LogsMetricResponseCompute: + description: The compute rule to compute the log-based metric. + properties: + aggregation_type: + $ref: '#/components/schemas/LogsMetricResponseComputeAggregationType' + include_percentiles: + $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' + path: + description: The path to the value the log-based metric will aggregate on (only used if the aggregation type is a "distribution"). + example: '@duration' + type: string + type: object + LogsMetricResponseFilter: + description: The log-based metric filter. Logs matching this filter will be aggregated in this metric. + properties: + query: + description: The search query - following the log search syntax. + example: service:web* AND @http.status_code:[200 TO 299] + type: string + type: object + LogsMetricResponseGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the log-based metric will be aggregated over. + example: '@http.status_code' + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. + example: status_code + type: string + type: object + LogsMetricCompute: + description: The compute rule to compute the log-based metric. + properties: + aggregation_type: + $ref: '#/components/schemas/LogsMetricComputeAggregationType' + include_percentiles: + $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' + path: + description: The path to the value the log-based metric will aggregate on (only used if the aggregation type is a "distribution"). + example: '@duration' + type: string + required: + - aggregation_type + type: object + LogsMetricFilter: + description: The log-based metric filter. Logs matching this filter will be aggregated in this metric. + properties: + query: + default: '*' + description: The search query - following the log search syntax. + example: service:web* AND @http.status_code:[200 TO 299] + type: string + type: object + LogsMetricGroupBy: + description: A group by rule. + properties: + path: + description: The path to the value the log-based metric will be aggregated over. + example: '@http.status_code' + type: string + tag_name: + description: Eventual name of the tag that gets created. By default, the path attribute is used as the tag name. + example: status_code + type: string + required: + - path + type: object + LogsMetricUpdateCompute: + description: The compute rule to compute the log-based metric. + properties: + include_percentiles: + $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' + type: object + RelationshipToRoles: + description: Relationship to roles. + properties: + data: + description: An array containing type and the unique identifier of a role. + items: + $ref: '#/components/schemas/RelationshipToRoleData' + type: array + type: object + ObservabilityPipelineConfig: + description: Specifies the pipeline's configuration, including its sources, processors, and destinations. + properties: + destinations: + description: A list of destination components where processed logs are sent. + example: + - id: datadog-logs-destination + inputs: + - my-processor-group + type: datadog_logs + items: + $ref: '#/components/schemas/ObservabilityPipelineConfigDestinationItem' + type: array + pipeline_type: + $ref: '#/components/schemas/ObservabilityPipelineConfigPipelineType' + processor_groups: + description: A list of processor groups that transform or enrich log data. + example: + - enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + id: filter-processor + include: status:error + type: filter + - enabled: true + field: message + id: json-processor + include: '*' + type: parse_json + items: + $ref: '#/components/schemas/ObservabilityPipelineConfigProcessorGroup' + type: array + processors: + deprecated: true + description: |- + A list of processor groups that transform or enrich log data. + + **Deprecated:** This field is deprecated, you should now use the processor_groups field. + example: [] + items: + $ref: '#/components/schemas/ObservabilityPipelineConfigProcessorGroup' + type: array + sources: + description: A list of configured data sources for the pipeline. + example: + - id: datadog-agent-source + type: datadog_agent + items: + $ref: '#/components/schemas/ObservabilityPipelineConfigSourceItem' + type: array + use_legacy_search_syntax: + description: |- + Set to `true` to continue using the legacy search syntax while migrating filter queries. After migrating all queries to the new syntax, set to `false`. + The legacy syntax is deprecated and will eventually be removed. + Requires Observability Pipelines Worker 2.11 or later. + Only applies to `logs` pipelines. This field is ignored for `metrics` pipelines. + See [Upgrade Your Filter Queries to the New Search Syntax](https://docs.datadoghq.com/observability_pipelines/guide/upgrade_your_filter_queries_to_the_new_search_syntax/) for more information. + type: boolean + required: + - sources + - destinations + type: object + LogsGrokParserRules: + description: Set of rules for the grok parser. + properties: + match_rules: + description: List of match rules for the grok parser, separated by a new line. + example: |- + rule_name_1 foo + rule_name_2 bar + type: string + support_rules: + default: '' + description: List of support rules for the grok parser, separated by a new line. + example: |- + rule_name_1 foo + rule_name_2 bar + type: string + required: + - match_rules + type: object + LogsGrokParserType: + default: grok-parser + description: Type of logs grok parser. + enum: + - grok-parser + example: grok-parser + type: string + x-enum-varnames: + - GROK_PARSER + LogsDateRemapperType: + default: date-remapper + description: Type of logs date remapper. + enum: + - date-remapper + example: date-remapper + type: string + x-enum-varnames: + - DATE_REMAPPER + LogsStatusRemapperType: + default: status-remapper + description: Type of logs status remapper. + enum: + - status-remapper + example: status-remapper + type: string + x-enum-varnames: + - STATUS_REMAPPER + LogsServiceRemapperType: + default: service-remapper + description: Type of logs service remapper. + enum: + - service-remapper + example: service-remapper + type: string + x-enum-varnames: + - SERVICE_REMAPPER + LogsMessageRemapperType: + default: message-remapper + description: Type of logs message remapper. + enum: + - message-remapper + example: message-remapper + type: string + x-enum-varnames: + - MESSAGE_REMAPPER + TargetFormatType: + description: |- + If the `target_type` of the remapper is `attribute`, try to cast the value to a new specific type. + If the cast is not possible, the original type is kept. `string`, `integer`, or `double` are the possible types. + If the `target_type` is `tag`, this parameter may not be specified. + enum: + - auto + - string + - integer + - double + type: string + x-enum-varnames: + - AUTO + - STRING + - INTEGER + - DOUBLE + LogsAttributeRemapperType: + default: attribute-remapper + description: Type of logs attribute remapper. + enum: + - attribute-remapper + example: attribute-remapper + type: string + x-enum-varnames: + - ATTRIBUTE_REMAPPER + LogsURLParserType: + default: url-parser + description: Type of logs URL parser. + enum: + - url-parser + example: url-parser + type: string + x-enum-varnames: + - URL_PARSER + LogsUserAgentParserType: + default: user-agent-parser + description: Type of logs User-Agent parser. + enum: + - user-agent-parser + example: user-agent-parser + type: string + x-enum-varnames: + - USER_AGENT_PARSER + LogsCategoryProcessorCategory: + description: Object describing the logs filter. + properties: + filter: + $ref: '#/components/schemas/LogsFilter' + name: + description: Value to assign to the target attribute. + type: string + type: object + LogsCategoryProcessorType: + default: category-processor + description: Type of logs category processor. + enum: + - category-processor + example: category-processor + type: string + x-enum-varnames: + - CATEGORY_PROCESSOR + LogsArithmeticProcessorType: + default: arithmetic-processor + description: Type of logs arithmetic processor. + enum: + - arithmetic-processor + example: arithmetic-processor + type: string + x-enum-varnames: + - ARITHMETIC_PROCESSOR + LogsStringBuilderProcessorType: + default: string-builder-processor + description: Type of logs string builder processor. + enum: + - string-builder-processor + example: string-builder-processor + type: string + x-enum-varnames: + - STRING_BUILDER_PROCESSOR + LogsPipelineProcessorType: + default: pipeline + description: Type of logs pipeline processor. + enum: + - pipeline + example: pipeline + type: string + x-enum-varnames: + - PIPELINE + LogsGeoIPParserType: + default: geo-ip-parser + description: Type of GeoIP parser. + enum: + - geo-ip-parser + example: geo-ip-parser + type: string + x-enum-varnames: + - GEO_IP_PARSER + LogsLookupProcessorType: + default: lookup-processor + description: Type of logs lookup processor. + enum: + - lookup-processor + example: lookup-processor + type: string + x-enum-varnames: + - LOOKUP_PROCESSOR + LogsTraceRemapperType: + default: trace-id-remapper + description: Type of logs trace remapper. + enum: + - trace-id-remapper + example: trace-id-remapper + type: string + x-enum-varnames: + - TRACE_ID_REMAPPER + LogsSpanRemapperType: + default: span-id-remapper + description: Type of logs span remapper. + enum: + - span-id-remapper + example: span-id-remapper + type: string + x-enum-varnames: + - SPAN_ID_REMAPPER + LogsArrayProcessorOperation: + description: Configuration of the array processor operation to perform. + properties: + preserve_source: + default: true + description: Remove or preserve the remapped source element. + type: boolean + source: + description: Attribute path containing the value to append. + example: network.client.ip + type: string + target: + description: Attribute path of the array to append to. + example: sourceIps + type: string + type: + $ref: '#/components/schemas/LogsArrayProcessorOperationAppendType' + filter: + description: Filter condition expressed as `key:value` used to find the matching element. + example: name:Referrer + type: string + value_to_extract: + description: Key of the value to extract from the matching element. + example: value + type: string + key_to_extract: + description: Key of the attribute in each array element that holds the name to use for the extracted attribute. + example: name + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + required: + - type + - source + - target + - filter + - value_to_extract + - key_to_extract + type: object + LogsArrayProcessorType: + default: array-processor + description: Type of logs array processor. + enum: + - array-processor + example: array-processor + type: string + x-enum-varnames: + - ARRAY_PROCESSOR + LogsDecoderProcessorBinaryToTextEncoding: + description: The encoding used to represent the binary data. + enum: + - base64 + - base16 + example: base64 + type: string + x-enum-varnames: + - BASE64 + - BASE16 + LogsDecoderProcessorInputRepresentation: + description: The original representation of input string. + enum: + - utf_8 + - integer + example: utf_8 + type: string + x-enum-varnames: + - UTF_8 + - INTEGER + LogsDecoderProcessorType: + default: decoder-processor + description: Type of logs decoder processor. + enum: + - decoder-processor + example: decoder-processor + type: string + x-enum-varnames: + - DECODER_PROCESSOR + LogsSchemaMapper: + description: Configuration of the schema processor mapper to use. + properties: + name: + description: Name of the logs schema remapper. + example: Map userIdentity.principalId, responseElements.role.roleId, responseElements.user.userId to ocsf.user.uid + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + sources: + description: Array of source attributes. + example: + - userIdentity.principalId + - responseElements.role.roleId + - responseElements.user.userId + items: + description: Attribute used as a source to remap its value to the target attribute. + type: string + type: array + target: + description: Target field to map log source field to. + example: ocsf.user.uid + type: string + target_format: + $ref: '#/components/schemas/TargetFormatType' + type: + $ref: '#/components/schemas/LogsSchemaRemapperType' + categories: + description: |- + Array of filters to match or not a log and their + corresponding `name` to assign a custom value to the log. + example: + - filter: + query: '@eventName:(ConsoleLogin OR ExternalIdPDirectoryLogin OR UserAuthentication OR Authenticate)' + id: 1 + name: Logon + - filter: + query: '@eventName:*' + id: 99 + name: Other + items: + $ref: '#/components/schemas/LogsSchemaCategoryMapperCategory' + type: array + fallback: + $ref: '#/components/schemas/LogsSchemaCategoryMapperFallback' + targets: + $ref: '#/components/schemas/LogsSchemaCategoryMapperTargets' + required: + - name + - sources + - target + - type + - categories + - targets + type: object + LogsSchemaData: + description: Configuration of the schema data to use. + properties: + class_name: + description: Class name of the schema to use. + example: Account Change + type: string + class_uid: + description: Class UID of the schema to use. + example: 3001 + format: int64 + type: integer + profiles: + description: Optional list of profiles to modify the schema. + example: + - security_control + - host + items: + description: A profile name that modifies the schema behavior. + type: string + type: array + schema_type: + description: Type of schema to use. + example: ocsf + type: string + version: + description: Version of the schema to use. + example: 1.5.0 + type: string + required: + - schema_type + - version + - class_uid + - class_name + type: object + LogsSchemaProcessorType: + default: schema-processor + description: Type of logs schema processor. + enum: + - schema-processor + example: schema-processor + type: string + x-enum-varnames: + - SCHEMA_PROCESSOR + LogsExcludeAttributeProcessorType: + default: exclude-attribute + description: Type of logs exclude attribute processor. + enum: + - exclude-attribute + example: exclude-attribute + type: string + x-enum-varnames: + - EXCLUDE_ATTRIBUTE + LogsArrayMapSubProcessor: + description: |- + A sub-processor used inside an array-map processor. + Allowed types: `attribute-remapper`, `string-builder-processor`, + `arithmetic-processor`, `category-processor`. + properties: + name: + description: Name of the sub-processor. + type: string + override_on_conflict: + default: false + description: Override the target element if already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + sources: + description: Array of source attribute paths. + example: + - $sourceElem.id + items: + type: string + type: array + target: + description: Target attribute path. + example: $targetElem.uid + type: string + target_format: + $ref: '#/components/schemas/TargetFormatType' + type: + $ref: '#/components/schemas/LogsAttributeRemapperType' + expression: + description: Arithmetic operation to perform. + example: $sourceElem.count * 2 + type: string + is_replace_missing: + default: false + description: Replace missing attribute values with 0. + type: boolean + template: + description: Formula with one or more attributes and raw text. + example: item-%{$sourceElem.id} + type: string + categories: + description: Array of filters to match against a log and the corresponding value to assign. + items: + $ref: '#/components/schemas/LogsCategoryProcessorCategory' + type: array + required: + - sources + - target + - type + - expression + - template + - categories + type: object + LogsArrayMapProcessorType: + default: array-map-processor + description: Type of logs array-map processor. + enum: + - array-map-processor + example: array-map-processor + type: string + x-enum-varnames: + - ARRAY_MAP_PROCESSOR + LogsAggregateBucketValueSingleString: + description: A single string value + type: string + LogsAggregateBucketValueSingleNumber: + description: A single number value + format: double + type: number + LogsAggregateBucketValueTimeseries: + description: A timeseries array + items: + $ref: '#/components/schemas/LogsAggregateBucketValueTimeseriesPoint' + type: array + x-generate-alias-as-model: true + LogsArchiveDestinationAzure: + description: The Azure archive destination. + properties: + container: + description: The container where the archive will be stored. + example: container-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationAzure' + path: + description: The archive path. + type: string + region: + description: The region where the archive will be stored. + type: string + storage_account: + description: The associated storage account. + example: account-name + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationAzureType' + required: + - storage_account + - container + - integration + - type + type: object + LogsArchiveDestinationGCS: + description: The GCS archive destination. + properties: + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationGCS' + path: + description: The archive path. + type: string + type: + $ref: '#/components/schemas/LogsArchiveDestinationGCSType' + required: + - bucket + - integration + - type + type: object + LogsArchiveDestinationS3: + description: The S3 archive destination. + properties: + bucket: + description: The bucket where the archive will be stored. + example: bucket-name + type: string + encryption: + $ref: '#/components/schemas/LogsArchiveEncryptionS3' + integration: + $ref: '#/components/schemas/LogsArchiveIntegrationS3' + path: + description: The archive path. + type: string + storage_class: + $ref: '#/components/schemas/LogsArchiveStorageClassS3Type' + type: + $ref: '#/components/schemas/LogsArchiveDestinationS3Type' + required: + - bucket + - integration + - type + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + type: object + CustomDestinationResponseForwardDestinationHttp: + description: The HTTP destination. + properties: + auth: + $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuth' + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + type: + $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttpType' + required: + - type + - endpoint + - auth + type: object + CustomDestinationResponseForwardDestinationSplunk: + description: The Splunk HTTP Event Collector (HEC) destination. + properties: + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + sourcetype: + description: |- + The Splunk sourcetype for the events sent to this Splunk destination. + + If the field is absent from the request and no sourcetype has been previously set on this destination, the default sourcetype `_json` is used. + On update, if the field is absent from the request but a sourcetype was previously set, the previous value is kept. + If set to `null`, the sourcetype field is omitted from the forwarded event entirely. + Otherwise, the provided string value is used as the sourcetype. + example: my-source + nullable: true + type: string + type: + $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationSplunkType' + required: + - type + - endpoint + type: object + CustomDestinationResponseForwardDestinationElasticsearch: + description: The Elasticsearch destination. + properties: + auth: + $ref: '#/components/schemas/CustomDestinationResponseElasticsearchDestinationAuth' + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + index_name: + description: Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). + example: nginx-logs + type: string + index_rotation: + description: |- + Date pattern with US locale and UTC timezone to be appended to the index name after adding `-` + (that is, `${index_name}-${indexPattern}`). + You can customize the index rotation naming pattern by choosing one of these options: + - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) + - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) + - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) + - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) + + If this field is missing or is blank, it means that the index name will always be the same + (that is, no rotation). + example: yyyy-MM-dd + type: string + type: + $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationElasticsearchType' + required: + - type + - endpoint + - auth + - index_name + type: object + CustomDestinationResponseForwardDestinationMicrosoftSentinel: + description: The Microsoft Sentinel destination. + properties: + client_id: + description: Client ID from the Datadog Azure integration. + example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 + type: string + data_collection_endpoint: + description: Azure data collection endpoint. + example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com + type: string + data_collection_rule_id: + description: Azure data collection rule ID. + example: dcr-000a00a000a00000a000000aa000a0aa + type: string + stream_name: + description: Azure stream name. + example: Custom-MyTable + type: string + writeOnly: true + tenant_id: + description: Tenant ID from the Datadog Azure integration. + example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + type: string + type: + $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinelType' + required: + - type + - tenant_id + - client_id + - data_collection_endpoint + - data_collection_rule_id + - stream_name + type: object + CustomDestinationForwardDestinationHttp: + description: The HTTP destination. + properties: + auth: + $ref: '#/components/schemas/CustomDestinationHttpDestinationAuth' + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + type: + $ref: '#/components/schemas/CustomDestinationForwardDestinationHttpType' + required: + - type + - endpoint + - auth + type: object + CustomDestinationForwardDestinationSplunk: + description: The Splunk HTTP Event Collector (HEC) destination. + properties: + access_token: + description: Access token of the Splunk HTTP Event Collector. This field is not returned by the API. + example: splunk_access_token + type: string + writeOnly: true + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + sourcetype: + description: |- + The Splunk sourcetype for the events sent to this Splunk destination. + + If the field is absent from the request and no sourcetype has been previously set on this destination, the default sourcetype `_json` is used. + On update, if the field is absent from the request but a sourcetype was previously set, the previous value is kept. + If set to `null`, the sourcetype field is omitted from the forwarded event entirely. + Otherwise, the provided string value is used as the sourcetype. + example: my-source + nullable: true + type: string + type: + $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunkType' + required: + - type + - endpoint + - access_token + type: object + CustomDestinationForwardDestinationElasticsearch: + description: The Elasticsearch destination. + properties: + auth: + $ref: '#/components/schemas/CustomDestinationElasticsearchDestinationAuth' + endpoint: + description: |- + The destination for which logs will be forwarded to. + Must have HTTPS scheme and forwarding back to Datadog is not allowed. + example: https://example.com + type: string + index_name: + description: Name of the Elasticsearch index (must follow [Elasticsearch's criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). + example: nginx-logs + type: string + index_rotation: + description: |- + Date pattern with US locale and UTC timezone to be appended to the index name after adding `-` + (that is, `${index_name}-${indexPattern}`). + You can customize the index rotation naming pattern by choosing one of these options: + - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: `2022-10-19-09`) + - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) + - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) + - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) + + If this field is missing or is blank, it means that the index name will always be the same + (that is, no rotation). + example: yyyy-MM-dd + type: string + type: + $ref: '#/components/schemas/CustomDestinationForwardDestinationElasticsearchType' + required: + - type + - endpoint + - auth + - index_name + type: object + CustomDestinationForwardDestinationMicrosoftSentinel: + description: The Microsoft Sentinel destination. + properties: + client_id: + description: Client ID from the Datadog Azure integration. + example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 + type: string + data_collection_endpoint: + description: Azure data collection endpoint. + example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com + type: string + data_collection_rule_id: + description: Azure data collection rule ID. + example: dcr-000a00a000a00000a000000aa000a0aa + type: string + stream_name: + description: Azure stream name. + example: Custom-MyTable + type: string + writeOnly: true + tenant_id: + description: Tenant ID from the Datadog Azure integration. + example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + type: string + type: + $ref: '#/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinelType' + required: + - type + - tenant_id + - client_id + - data_collection_endpoint + - data_collection_rule_id + - stream_name + type: object + LogsMetricResponseComputeAggregationType: + description: The type of aggregation to use. + enum: + - count + - distribution + example: distribution + type: string + x-enum-varnames: + - COUNT + - DISTRIBUTION + LogsMetricComputeIncludePercentiles: + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. + Only present when the `aggregation_type` is `distribution`. + example: true + type: boolean + LogsMetricComputeAggregationType: + description: The type of aggregation to use. + enum: + - count + - distribution + example: distribution + type: string + x-enum-varnames: + - COUNT + - DISTRIBUTION + ObservabilityPipelineConfigDestinationItem: + description: A destination for the pipeline. + properties: + api_version: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion' + auth: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + bulk_index: + description: The name of the index to write events to in Elasticsearch. + example: logs-index + type: string + compression: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompression' + data_stream: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationDataStream' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Elasticsearch endpoint URL. + example: ELASTICSEARCH_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: elasticsearch-destination + type: string + id_key: + description: The name of the field used as the document ID in Elasticsearch. + example: id + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + pipeline: + description: The name of an Elasticsearch ingest pipeline to apply to events before indexing. + example: my-pipeline + type: string + request_retry_partial: + description: When `true`, retries failed partial bulk requests when some events in a batch fail while others succeed. + type: boolean + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationType' + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + encoding: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationEncoding' + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string + token_key: + description: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string + uri_key: + description: Name of the environment variable or secret that holds the HTTP endpoint URI. + example: HTTP_DESTINATION_URI + type: string + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string + bucket: + description: S3 bucket name. + example: error-logs + type: string + key_prefix: + description: Optional prefix for object keys. + type: string + region: + description: AWS region of the S3 bucket. + example: us-east-1 + type: string + server_side_encryption: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationServerSideEncryption' + ssekms_key_id: + description: |- + The AWS KMS key ID used for SSE-KMS encryption. + Only applies when `server_side_encryption` is set to `aws:kms`. + example: arn:aws:kms:us-east-1:123456789012:key/mrk-abc123 + type: string + storage_class: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass' + batch_settings: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericBatchSettings' + custom_source_name: + description: Custom source name for the logs in Security Lake. + example: my-custom-source + type: string + blob_prefix: + description: Optional prefix for blobs written to the container. + example: logs/ + type: string + connection_string_key: + description: Name of the environment variable or secret that holds the Azure Storage connection string. + example: AZURE_STORAGE_CONNECTION_STRING + type: string + container_name: + description: The name of the Azure Blob Storage container to store logs in. + example: my-log-container + type: string + batch: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationBatch' + batch_encoding: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationBatchEncoding' + database: + description: Optional ClickHouse database name. If omitted, the user's default database on the ClickHouse server is used. + example: my_database + type: string + date_time_best_effort: + description: When `true`, enables flexible DateTime parsing on the ClickHouse server side. + example: false + type: boolean + format: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationFormat' + skip_unknown_fields: + description: |- + When `true`, fields not present in the target table schema are dropped instead of causing insert errors. + When unset, the ClickHouse server's own `input_format_skip_unknown_fields` setting applies. + example: true + nullable: true + type: boolean + table: + description: Target ClickHouse table name. Events are inserted into this table. + example: application_logs + type: string + routes: + description: A list of routing rules that forward matching logs to Datadog using dedicated API keys. + example: + - api_key_key: API_KEY_IDENTIFIER + include: service:api + route_id: datadog-logs-route-us1 + site: us1 + items: + $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestinationRoute' + maxItems: 100 + type: array + customer_id: + description: The Google Chronicle customer ID. + example: abcdefg123456789 + type: string + log_type: + description: The log type metadata associated with the Chronicle destination. + example: nginx_logs + type: string + acl: + $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationAcl' + metadata: + description: Custom metadata to attach to each object uploaded to the GCS bucket. + items: + $ref: '#/components/schemas/ObservabilityPipelineMetadataEntry' + type: array + project: + description: The Google Cloud project ID that owns the Pub/Sub topic. + example: my-gcp-project + type: string + topic: + description: The Pub/Sub topic name to publish logs to. + example: logs-subscription + type: string + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string + headers_key: + description: The field name to use for Kafka message headers. + example: headers + type: string + key_field: + description: The field name to use as the Kafka message key. + example: message_id + type: string + librdkafka_options: + description: Optional list of advanced Kafka producer configuration options, defined as key-value pairs. + items: + $ref: '#/components/schemas/ObservabilityPipelineKafkaLibrdkafkaOption' + type: array + message_timeout_ms: + description: Maximum time in milliseconds to wait for message delivery confirmation. + example: 300000 + format: int64 + minimum: 1 + type: integer + rate_limit_duration_secs: + description: Duration in seconds for the rate limit window. + example: 1 + format: int64 + minimum: 1 + type: integer + rate_limit_num: + description: Maximum number of messages allowed per rate limit duration. + example: 1000 + format: int64 + minimum: 1 + type: integer + sasl: + $ref: '#/components/schemas/ObservabilityPipelineKafkaSasl' + socket_timeout_ms: + description: Socket timeout in milliseconds for network requests. + example: 60000 + format: int64 + maximum: 300000 + minimum: 10 + type: integer + client_id: + description: Azure AD client ID used for authentication. + example: a1b2c3d4-5678-90ab-cdef-1234567890ab + type: string + client_secret_key: + description: Name of the environment variable or secret that holds the Azure AD client secret. + example: AZURE_CLIENT_SECRET + type: string + dce_uri_key: + description: Name of the environment variable or secret that holds the Data Collection Endpoint (DCE) URI. + example: DCE_URI + type: string + dcr_immutable_id: + description: The immutable ID of the Data Collection Rule (DCR). + example: dcr-uuid-1234 + type: string + tenant_id: + description: Azure AD tenant ID. + example: abcdef12-3456-7890-abcd-ef1234567890 + type: string + account_id_key: + description: Name of the environment variable or secret that holds the New Relic account ID. + example: NEW_RELIC_ACCOUNT_ID + type: string + license_key_key: + description: Name of the environment variable or secret that holds the New Relic license key. + example: NEW_RELIC_LICENSE_KEY + type: string + keepalive: + description: Optional socket keepalive duration in milliseconds. + example: 60000 + format: int64 + minimum: 0 + type: integer + address_key: + description: Name of the environment variable or secret that holds the socket address (host:port). + example: SOCKET_ADDRESS + type: string + framing: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFraming' + mode: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationMode' + auto_extract_timestamp: + description: |- + If `true`, Splunk tries to extract timestamps from incoming log events. + If `false`, Splunk assigns the time the event was received. + example: true + type: boolean + index: + description: Optional name of the Splunk index where logs are written. + example: main + type: string + indexed_fields: + description: List of log field names to send as indexed fields to Splunk HEC. Available only when `encoding` is `json`. + example: + - service + - host + items: + description: A log field name to index in Splunk. + type: string + type: array + sourcetype: + description: The Splunk sourcetype to assign to log events. + example: custom_sourcetype + type: string + token_strategy: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationTokenStrategy' + header_custom_fields: + description: A list of custom headers to include in the request to Sumo Logic. + items: + $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem' + type: array + header_host_name: + description: Optional override for the host name header. + example: host-123 + type: string + header_source_category: + description: Optional override for the source category header. + example: source-category + type: string + header_source_name: + description: Optional override for the source name header. + example: source-name + type: string + ingestion_endpoint_key: + description: Name of the environment variable or the secret identifier that references the Databricks Zerobus ingestion endpoint, which is used to stream data directly into your Databricks Lakehouse. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_INGESTION_ENDPOINT + type: string + table_name: + description: The fully qualified name of your target Databricks table. Make sure this table already exists in your Databricks workspace before deploying. + example: catalog.schema.table + type: string + unity_catalog_endpoint_key: + description: Name of the environment variable or the secret identifier that references your Databricks workspace URL, which is used to communicate with the Unity Catalog API. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_UNITY_CATALOG_ENDPOINT + type: string + default_namespace: + description: Optional default namespace for metrics sent to Splunk HEC. + example: custom_namespace + type: string + source: + description: The Splunk source field value for metric events. + example: observability_pipelines + type: string + required: + - id + - type + - inputs + - encoding + - auth + - bucket + - region + - storage_class + - compression + - custom_source_name + - container_name + - table + - customer_id + - project + - topic + - client_id + - tenant_id + - dcr_immutable_id + - framing + - mode + - table_name + type: object + x-pipeline-types: + - logs + - metrics + ObservabilityPipelineConfigPipelineType: + default: logs + description: The type of data being ingested. Defaults to `logs` if not specified. + enum: + - logs + - metrics + example: logs + type: string + x-enum-varnames: + - LOGS + - METRICS + ObservabilityPipelineConfigProcessorGroup: + description: A group of processors. + example: + enabled: true + id: my-processor-group + include: service:my-service + inputs: + - datadog-agent-source + processors: + - enabled: true + fields: + - name: env + value: prod + id: add-fields-processor + include: '*' + type: add_fields + - enabled: true + id: filter-processor + include: status:error + type: filter + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Whether this processor group is enabled. + example: true + type: boolean + id: + description: The unique identifier for the processor group. + example: grouped-processors + type: string + include: + description: Conditional expression for when this processor group should execute. + example: service:my-service + type: string + inputs: + description: A list of IDs for components whose output is used as the input for this processor group. + example: + - datadog-agent-source + items: + description: The ID of a component whose output is used as input. + type: string + type: array + processors: + description: Processors applied sequentially within this group. Events flow through each processor in order. + example: + - enabled: true + fields: + - name: env + value: prod + id: add-fields-processor + include: '*' + type: add_fields + - enabled: true + id: filter-processor + include: status:error + type: filter + items: + $ref: '#/components/schemas/ObservabilityPipelineConfigProcessorItem' + type: array + required: + - id + - include + - inputs + - processors + - enabled + type: object + ObservabilityPipelineConfigSourceItem: + description: A data source for the pipeline. + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Datadog Agent source. + example: DATADOG_AGENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: datadog-agent-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSourceType' + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + compression: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceCompression' + region: + description: AWS region where the S3 bucket resides. + example: us-east-1 + type: string + url_key: + description: Name of the environment variable or secret that holds the S3 bucket URL. + example: S3_BUCKET_URL + type: string + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + project: + description: The Google Cloud project ID that owns the Pub/Sub subscription. + example: my-gcp-project + type: string + subscription: + description: The Pub/Sub subscription name from which messages are consumed. + example: logs-subscription + type: string + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + endpoint_url_key: + description: Name of the environment variable or secret that holds the HTTP endpoint URL to scrape. + example: HTTP_ENDPOINT_URL + type: string + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string + scrape_interval_secs: + description: The interval (in seconds) between HTTP scrape requests. + example: 60 + format: int64 + type: integer + scrape_timeout_secs: + description: The timeout (in seconds) for each scrape request. + example: 10 + format: int64 + type: integer + token_key: + description: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string + valid_tokens: + description: |- + A list of tokens that are accepted for authenticating incoming HTTP requests. When set, + the source rejects any request whose token does not match an enabled entry in this list. + Cannot be combined with the `plain` auth strategy. + items: + $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceValidToken' + maxItems: 1000 + minItems: 1 + type: array + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string + group_id: + description: Consumer group ID used by the Kafka client. + example: consumer-group-0 + type: string + librdkafka_options: + description: Optional list of advanced Kafka client configuration options, defined as key-value pairs. + items: + $ref: '#/components/schemas/ObservabilityPipelineKafkaLibrdkafkaOption' + type: array + sasl: + $ref: '#/components/schemas/ObservabilityPipelineKafkaSasl' + topics: + description: A list of Kafka topic names to subscribe to. The source ingests messages from each topic specified. + example: + - topic1 + - topic2 + items: + description: A Kafka topic name to subscribe to. + type: string + type: array + mode: + $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' + framing: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFraming' + store_hec_token: + description: |- + When `true`, the Splunk HEC token from the incoming request is stored in the event metadata. + This allows downstream components to forward the token to other Splunk HEC destinations. + example: true + type: boolean + uri_key: + description: Name of the environment variable or secret that holds the WebSocket server URI (`ws://` or `wss://`). + example: WS_URI + type: string + grpc_address_key: + description: Environment variable name containing the gRPC server address for receiving OTLP data. Must be a valid environment variable name (alphanumeric characters and underscores only). + example: OTEL_GRPC_ADDRESS + type: string + http_address_key: + description: Environment variable name containing the HTTP server address for receiving OTLP data. Must be a valid environment variable name (alphanumeric characters and underscores only). + example: OTEL_HTTP_ADDRESS + type: string + required: + - id + - type + - region + - decoding + - project + - subscription + - auth_strategy + - group_id + - topics + - mode + - framing + type: object + x-pipeline-types: + - logs + - metrics + LogsArrayProcessorOperationAppend: + description: Operation that appends a value to a target array attribute. + properties: + preserve_source: + default: true + description: Remove or preserve the remapped source element. + type: boolean + source: + description: Attribute path containing the value to append. + example: network.client.ip + type: string + target: + description: Attribute path of the array to append to. + example: sourceIps + type: string + type: + $ref: '#/components/schemas/LogsArrayProcessorOperationAppendType' + required: + - type + - source + - target + type: object + LogsArrayProcessorOperationLength: + description: Operation that computes the length of a `source` array and stores the result in the `target` attribute. + properties: + source: + description: Attribute path of the array to measure. + example: tags + type: string + target: + description: Attribute that receives the computed length. + example: tagCount + type: string + type: + $ref: '#/components/schemas/LogsArrayProcessorOperationLengthType' + required: + - type + - source + - target + type: object + LogsArrayProcessorOperationSelect: + description: Operation that finds an object in a `source` array using a `filter`, and then extracts a specific value into the `target` attribute. + properties: + filter: + description: Filter condition expressed as `key:value` used to find the matching element. + example: name:Referrer + type: string + source: + description: Attribute path of the array to search into. + example: httpRequest.headers + type: string + target: + description: Attribute that receives the extracted value. + example: referrer + type: string + type: + $ref: '#/components/schemas/LogsArrayProcessorOperationSelectType' + value_to_extract: + description: Key of the value to extract from the matching element. + example: value + type: string + required: + - type + - source + - target + - filter + - value_to_extract + type: object + LogsArrayProcessorOperationExtractKeyValue: + description: Operation that extracts key-value pairs from a `source` array and stores the result in the `target` attribute. + properties: + key_to_extract: + description: Key of the attribute in each array element that holds the name to use for the extracted attribute. + example: name + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + source: + description: Attribute path of the array to extract key-value pairs from. + example: tags + type: string + target: + description: Attribute that receives the extracted key-value pairs. If not specified, the extracted attributes are added at the root level of the log. + example: extracted + type: string + type: + $ref: '#/components/schemas/LogsArrayProcessorOperationExtractKeyValueType' + value_to_extract: + description: Key of the attribute in each array element that holds the value to use for the extracted attribute. + example: value + type: string + required: + - type + - source + - key_to_extract + - value_to_extract + type: object + LogsSchemaRemapper: + description: The schema remapper maps source log fields to their correct fields. + properties: + name: + description: Name of the logs schema remapper. + example: Map userIdentity.principalId, responseElements.role.roleId, responseElements.user.userId to ocsf.user.uid + type: string + override_on_conflict: + default: false + description: Whether to override the target element if it's already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + sources: + description: Array of source attributes. + example: + - userIdentity.principalId + - responseElements.role.roleId + - responseElements.user.userId + items: + description: Attribute used as a source to remap its value to the target attribute. + type: string + type: array + target: + description: Target field to map log source field to. + example: ocsf.user.uid + type: string + target_format: + $ref: '#/components/schemas/TargetFormatType' + type: + $ref: '#/components/schemas/LogsSchemaRemapperType' + required: + - name + - sources + - target + - type + type: object + LogsSchemaCategoryMapper: + description: |- + Use the Schema Category Mapper to categorize log event into enum fields. + In the case of OCSF, they can be used to map sibling fields which are composed of an ID and a name. + + **Notes**: + + - The syntax of the query is the one of Logs Explorer search bar. + The query can be done on any log attribute or tag, whether it is a facet or not. + Wildcards can also be used inside your query. + - Categories are executed in order and processing stops at the first match. + Make sure categories are properly ordered in case a log could match multiple queries. + - Sibling fields always have a numerical ID field and a human-readable string name. + - A fallback section handles cases where the name or ID value matches a specific value. + If the name matches "Other" or the ID matches 99, the value of the sibling name field will be pulled from a source field from the original log. + properties: + categories: + description: |- + Array of filters to match or not a log and their + corresponding `name` to assign a custom value to the log. + example: + - filter: + query: '@eventName:(ConsoleLogin OR ExternalIdPDirectoryLogin OR UserAuthentication OR Authenticate)' + id: 1 + name: Logon + - filter: + query: '@eventName:*' + id: 99 + name: Other + items: + $ref: '#/components/schemas/LogsSchemaCategoryMapperCategory' + type: array + fallback: + $ref: '#/components/schemas/LogsSchemaCategoryMapperFallback' + name: + description: Name of the logs schema category mapper. + example: activity_id and activity_name + type: string + targets: + $ref: '#/components/schemas/LogsSchemaCategoryMapperTargets' + type: + $ref: '#/components/schemas/LogsSchemaCategoryMapperType' + required: + - categories + - targets + - type + - name + type: object + LogsArrayMapAttributeRemapper: + description: |- + An attribute remapper sub-processor for use inside an array-map processor. + Unlike the top-level attribute remapper, `is_enabled`, `source_type`, and + `target_type` are not supported. + properties: + name: + description: Name of the sub-processor. + type: string + override_on_conflict: + default: false + description: Override the target element if already set. + type: boolean + preserve_source: + default: false + description: Remove or preserve the remapped source element. + type: boolean + sources: + description: Array of source attribute paths. + example: + - $sourceElem.id + items: + type: string + type: array + target: + description: Target attribute path. + example: $targetElem.uid + type: string + target_format: + $ref: '#/components/schemas/TargetFormatType' + type: + $ref: '#/components/schemas/LogsAttributeRemapperType' + required: + - sources + - target + - type + type: object + LogsArrayMapArithmeticSubProcessor: + description: |- + An arithmetic sub-processor for use inside an array-map processor. + Unlike the top-level arithmetic processor, `is_enabled` is not supported. + properties: + expression: + description: Arithmetic operation to perform. + example: $sourceElem.count * 2 + type: string + is_replace_missing: + default: false + description: Replace missing attribute values with 0. + type: boolean + name: + description: Name of the sub-processor. + type: string + target: + description: Target attribute path for the result. + example: $targetElem.doubled + type: string + type: + $ref: '#/components/schemas/LogsArithmeticProcessorType' + required: + - expression + - target + - type + type: object + LogsArrayMapStringBuilderSubProcessor: + description: |- + A string builder sub-processor for use inside an array-map processor. + Unlike the top-level string builder processor, `is_enabled` is not supported. + properties: + is_replace_missing: + default: false + description: Replace missing attribute values with an empty string. + type: boolean + name: + description: Name of the sub-processor. + type: string + target: + description: Target attribute path for the result. + example: $targetElem.label + type: string + template: + description: Formula with one or more attributes and raw text. + example: item-%{$sourceElem.id} + type: string + type: + $ref: '#/components/schemas/LogsStringBuilderProcessorType' + required: + - template + - target + - type + type: object + LogsArrayMapCategorySubProcessor: + description: |- + A category sub-processor for use inside an array-map processor. + Unlike the top-level category processor, `is_enabled` is not supported. + properties: + categories: + description: Array of filters to match against a log and the corresponding value to assign. + items: + $ref: '#/components/schemas/LogsCategoryProcessorCategory' + type: array + name: + description: Name of the sub-processor. + type: string + target: + description: Target attribute path for the category value. + example: $targetElem.level + type: string + type: + $ref: '#/components/schemas/LogsCategoryProcessorType' + required: + - categories + - target + - type + type: object + LogsAggregateBucketValueTimeseriesPoint: + description: A timeseries point + properties: + time: + description: The time value for this point + example: '2020-06-08T11:55:00Z' + type: string + value: + description: The value for this point + example: 19 + format: double + type: number + type: object + LogsArchiveIntegrationAzure: + description: The Azure archive's integration destination. + properties: + client_id: + description: A client ID. + example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + type: string + tenant_id: + description: A tenant ID. + example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + type: string + required: + - tenant_id + - client_id + type: object + LogsArchiveDestinationAzureType: + default: azure + description: Type of the Azure archive destination. + enum: + - azure + example: azure + type: string + x-enum-varnames: + - AZURE + LogsArchiveIntegrationGCS: + description: The GCS archive's integration destination. + properties: + client_email: + description: A client email. + example: youremail@example.com + type: string + project_id: + description: A project ID. + example: project-id + type: string + required: + - client_email + type: object + LogsArchiveDestinationGCSType: + default: gcs + description: Type of the GCS archive destination. + enum: + - gcs + example: gcs + type: string + x-enum-varnames: + - GCS + LogsArchiveEncryptionS3: + description: The S3 encryption settings. + properties: + key: + description: An Amazon Resource Name (ARN) used to identify an AWS KMS key. + example: arn:aws:kms:us-east-1:012345678901:key/DatadogIntegrationRoleKms + type: string + type: + $ref: '#/components/schemas/LogsArchiveEncryptionS3Type' + required: + - type + type: object + LogsArchiveIntegrationS3: + description: 'The S3 Archive''s integration destination. You must provide one of the following: `access_key_id` alone, or both `account_id` and `role_name` together.' + properties: + access_key_id: + description: The access key ID for the integration. + example: AKIAIOSFODNN7EXAMPLE + type: string + account_id: + description: The account ID for the integration. + example: '123456789012' + type: string + role_name: + description: The name of the role to assume for the integration. + example: role-name + type: string + required: + - access_key_id + - account_id + - role_name + type: object + LogsArchiveStorageClassS3Type: + default: STANDARD + description: The storage class where the archive will be stored. + enum: + - STANDARD + - STANDARD_IA + - ONEZONE_IA + - INTELLIGENT_TIERING + - GLACIER_IR + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + - STANDARD_IA + - ONEZONE_IA + - INTELLIGENT_TIERING + - GLACIER_IR + LogsArchiveDestinationS3Type: + default: s3 + description: Type of the S3 archive destination. + enum: + - s3 + example: s3 + type: string + x-enum-varnames: + - S3 + PermissionsType: + default: permissions + description: Permissions resource type. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + CustomDestinationResponseHttpDestinationAuth: + description: Authentication method of the HTTP requests. + properties: + type: + $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType' + header_name: + description: The header name of the authentication. + example: CUSTOM-HEADER-NAME + type: string + required: + - type + - header_name + type: object + CustomDestinationResponseForwardDestinationHttpType: + default: http + description: Type of the HTTP destination. + enum: + - http + example: http + type: string + x-enum-varnames: + - HTTP + CustomDestinationResponseForwardDestinationSplunkType: + default: splunk_hec + description: Type of the Splunk HTTP Event Collector (HEC) destination. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + CustomDestinationResponseElasticsearchDestinationAuth: + additionalProperties: + description: Basic access authentication. + description: Basic access authentication. + type: object + CustomDestinationResponseForwardDestinationElasticsearchType: + default: elasticsearch + description: Type of the Elasticsearch destination. + enum: + - elasticsearch + example: elasticsearch + type: string + x-enum-varnames: + - ELASTICSEARCH + CustomDestinationResponseForwardDestinationMicrosoftSentinelType: + default: microsoft_sentinel + description: Type of the Microsoft Sentinel destination. + enum: + - microsoft_sentinel + example: microsoft_sentinel + type: string + x-enum-varnames: + - MICROSOFT_SENTINEL + CustomDestinationHttpDestinationAuth: + description: Authentication method of the HTTP requests. + properties: + password: + description: The password of the authentication. This field is not returned by the API. + example: datadog-custom-destination-password + type: string + writeOnly: true + type: + $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasicType' + username: + description: The username of the authentication. This field is not returned by the API. + example: datadog-custom-destination-username + type: string + writeOnly: true + header_name: + description: The header name of the authentication. + example: CUSTOM-HEADER-NAME + type: string + header_value: + description: The header value of the authentication. This field is not returned by the API. + example: CUSTOM-HEADER-AUTHENTICATION-VALUE + type: string + writeOnly: true + required: + - type + - username + - password + - header_name + - header_value + type: object + CustomDestinationForwardDestinationHttpType: + default: http + description: Type of the HTTP destination. + enum: + - http + example: http + type: string + x-enum-varnames: + - HTTP + CustomDestinationForwardDestinationSplunkType: + default: splunk_hec + description: Type of the Splunk HTTP Event Collector (HEC) destination. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + CustomDestinationElasticsearchDestinationAuth: + description: Basic access authentication. + properties: + password: + description: The password of the authentication. This field is not returned by the API. + example: datadog-custom-destination-password + type: string + writeOnly: true + username: + description: The username of the authentication. This field is not returned by the API. + example: datadog-custom-destination-username + type: string + writeOnly: true + required: + - username + - password + type: object + CustomDestinationForwardDestinationElasticsearchType: + default: elasticsearch + description: Type of the Elasticsearch destination. + enum: + - elasticsearch + example: elasticsearch + type: string + x-enum-varnames: + - ELASTICSEARCH + CustomDestinationForwardDestinationMicrosoftSentinelType: + default: microsoft_sentinel + description: Type of the Microsoft Sentinel destination. + enum: + - microsoft_sentinel + example: microsoft_sentinel + type: string + x-enum-varnames: + - MICROSOFT_SENTINEL + ObservabilityPipelineElasticsearchDestination: + description: |- + The `elasticsearch` destination writes logs or metrics to an Elasticsearch cluster. + + **Supported pipeline types:** logs, metrics + properties: + api_version: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion' + auth: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + bulk_index: + description: The name of the index to write events to in Elasticsearch. + example: logs-index + type: string + compression: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompression' + data_stream: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationDataStream' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Elasticsearch endpoint URL. + example: ELASTICSEARCH_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: elasticsearch-destination + type: string + id_key: + description: The name of the field used as the document ID in Elasticsearch. + example: id + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + pipeline: + description: The name of an Elasticsearch ingest pipeline to apply to events before indexing. + example: my-pipeline + type: string + request_retry_partial: + description: When `true`, retries failed partial bulk requests when some events in a batch fail while others succeed. + type: boolean + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + - metrics + ObservabilityPipelineHttpClientDestination: + description: |- + The `http_client` destination sends data to an HTTP endpoint. + + **Supported pipeline types:** logs, metrics + properties: + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationAuthStrategy' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + compression: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationCompression' + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + encoding: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationEncoding' + id: + description: The unique identifier for this component. + example: http-client-destination + type: string + inputs: + description: A list of component IDs whose output is used as the input for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineClientTls' + token_key: + description: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationType' + uri_key: + description: Name of the environment variable or secret that holds the HTTP endpoint URI. + example: HTTP_DESTINATION_URI + type: string + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string + required: + - id + - type + - inputs + - encoding + type: object + x-pipeline-types: + - logs + - metrics + ObservabilityPipelineAmazonOpenSearchDestination: + description: |- + The `amazon_opensearch` destination writes logs to Amazon OpenSearch. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + bulk_index: + description: The index to write logs to. + example: logs-index + type: string + id: + description: The unique identifier for this component. + example: elasticsearch-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationType' + required: + - id + - type + - inputs + - auth + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAmazonS3Destination: + description: |- + The `amazon_s3` destination sends your logs in Datadog-rehydratable format to an Amazon S3 bucket for archiving. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + bucket: + description: S3 bucket name. + example: error-logs + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + id: + description: Unique identifier for the destination component. + example: amazon-s3-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - datadog-agent-source + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + key_prefix: + description: Optional prefix for object keys. + type: string + region: + description: AWS region of the S3 bucket. + example: us-east-1 + type: string + server_side_encryption: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationServerSideEncryption' + ssekms_key_id: + description: |- + The AWS KMS key ID used for SSE-KMS encryption. + Only applies when `server_side_encryption` is set to `aws:kms`. + example: arn:aws:kms:us-east-1:123456789012:key/mrk-abc123 + type: string + storage_class: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass' + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationType' + required: + - id + - type + - inputs + - bucket + - region + - storage_class + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAmazonS3GenericDestination: + description: |- + The `amazon_s3_generic` destination sends your logs to an Amazon S3 bucket. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + batch_settings: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericBatchSettings' + bucket: + description: S3 bucket name. + example: my-bucket + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + compression: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericCompression' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericEncoding' + id: + description: Unique identifier for the destination component. + example: generic-s3-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: A component ID referenced as an input source. + type: string + type: array + key_prefix: + description: Optional prefix for object keys. + type: string + region: + description: AWS region of the S3 bucket. + example: us-east-1 + type: string + server_side_encryption: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationServerSideEncryption' + ssekms_key_id: + description: |- + The AWS KMS key ID used for SSE-KMS encryption. + Only applies when `server_side_encryption` is set to `aws:kms`. + example: arn:aws:kms:us-east-1:123456789012:key/mrk-abc123 + type: string + storage_class: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass' + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericDestinationType' + required: + - id + - type + - inputs + - bucket + - region + - storage_class + - encoding + - compression + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAmazonSecurityLakeDestination: + description: |- + The `amazon_security_lake` destination sends your logs to Amazon Security Lake. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + bucket: + description: Name of the Amazon S3 bucket in Security Lake (3-63 characters). + example: security-lake-bucket + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + custom_source_name: + description: Custom source name for the logs in Security Lake. + example: my-custom-source + type: string + id: + description: Unique identifier for the destination component. + example: amazon-security-lake-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + region: + description: AWS region of the S3 bucket. + example: us-east-1 + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestinationType' + required: + - id + - type + - inputs + - bucket + - region + - custom_source_name + type: object + x-pipeline-types: + - logs + AzureStorageDestination: + description: |- + The `azure_storage` destination forwards logs to an Azure Blob Storage container. + + **Supported pipeline types:** logs + properties: + blob_prefix: + description: Optional prefix for blobs written to the container. + example: logs/ + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + connection_string_key: + description: Name of the environment variable or secret that holds the Azure Storage connection string. + example: AZURE_STORAGE_CONNECTION_STRING + type: string + container_name: + description: The name of the Azure Blob Storage container to store logs in. + example: my-log-container + type: string + id: + description: The unique identifier for this component. + example: azure-storage-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - processor-id + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: '#/components/schemas/AzureStorageDestinationType' + required: + - id + - type + - inputs + - container_name + type: object + x-pipeline-types: + - logs + ObservabilityPipelineClickhouseDestination: + description: |- + The `clickhouse` destination sends log events to a ClickHouse database table over HTTP. + + **Supported pipeline types:** logs. + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationAuth' + batch: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationBatch' + batch_encoding: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationBatchEncoding' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + compression: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationCompression' + database: + description: Optional ClickHouse database name. If omitted, the user's default database on the ClickHouse server is used. + example: my_database + type: string + date_time_best_effort: + description: When `true`, enables flexible DateTime parsing on the ClickHouse server side. + example: false + type: boolean + endpoint_url_key: + description: |- + Name of the environment variable or secret that contains the ClickHouse HTTP endpoint URL. + Defaults to `DESTINATION_CLICKHOUSE_ENDPOINT_URL` (prefixed with `DD_OP_` at runtime). + example: CLICKHOUSE_ENDPOINT_URL + type: string + format: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationFormat' + id: + description: The unique identifier for this component. + example: clickhouse-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + skip_unknown_fields: + description: |- + When `true`, fields not present in the target table schema are dropped instead of causing insert errors. + When unset, the ClickHouse server's own `input_format_skip_unknown_fields` setting applies. + example: true + nullable: true + type: boolean + table: + description: Target ClickHouse table name. Events are inserted into this table. + example: application_logs + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationType' + required: + - id + - type + - inputs + - table + type: object + x-pipeline-types: + - logs + ObservabilityPipelineCloudPremDestination: + description: |- + The `cloud_prem` destination sends logs to Datadog CloudPrem. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + endpoint_url_key: + description: Name of the environment variable or secret that holds the CloudPrem endpoint URL. + example: CLOUDPREM_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: cloud-prem-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + tls: + $ref: '#/components/schemas/ObservabilityPipelineClientTls' + description: Configuration for TLS encryption. + type: + $ref: '#/components/schemas/ObservabilityPipelineCloudPremDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineCrowdStrikeNextGenSiemDestination: + description: |- + The `crowdstrike_next_gen_siem` destination forwards logs to CrowdStrike Next Gen SIEM. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + compression: + $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the CrowdStrike endpoint URL. + example: CROWDSTRIKE_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: crowdstrike-ngsiem-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + token_key: + description: Name of the environment variable or secret that holds the CrowdStrike API token. + example: CROWDSTRIKE_TOKEN + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType' + required: + - id + - type + - inputs + - encoding + type: object + x-pipeline-types: + - logs + ObservabilityPipelineDatadogLogsDestination: + description: |- + The `datadog_logs` destination forwards logs to Datadog Log Management. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + id: + description: The unique identifier for this component. + example: datadog-logs-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + routes: + description: A list of routing rules that forward matching logs to Datadog using dedicated API keys. + example: + - api_key_key: API_KEY_IDENTIFIER + include: service:api + route_id: datadog-logs-route-us1 + site: us1 + items: + $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestinationRoute' + maxItems: 100 + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineGoogleChronicleDestination: + description: |- + The `google_chronicle` destination sends logs to Google Chronicle. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + customer_id: + description: The Google Chronicle customer ID. + example: abcdefg123456789 + type: string + encoding: + $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Google Chronicle endpoint URL. + example: CHRONICLE_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: google-chronicle-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - parse-json-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + log_type: + description: The log type metadata associated with the Chronicle destination. + example: nginx_logs + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestinationType' + required: + - id + - type + - inputs + - customer_id + type: object + x-pipeline-types: + - logs + ObservabilityPipelineGoogleCloudStorageDestination: + description: |- + The `google_cloud_storage` destination stores logs in a Google Cloud Storage (GCS) bucket. + It requires a bucket name, Google Cloud authentication, and metadata fields. + + **Supported pipeline types:** logs + properties: + acl: + $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationAcl' + auth: + $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' + bucket: + description: Name of the GCS bucket. + example: error-logs + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + id: + description: Unique identifier for the destination component. + example: gcs-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - datadog-agent-source + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + key_prefix: + description: Optional prefix for object keys within the GCS bucket. + type: string + metadata: + description: Custom metadata to attach to each object uploaded to the GCS bucket. + items: + $ref: '#/components/schemas/ObservabilityPipelineMetadataEntry' + type: array + storage_class: + $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationStorageClass' + type: + $ref: '#/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationType' + required: + - id + - type + - inputs + - bucket + - storage_class + type: object + x-pipeline-types: + - logs + ObservabilityPipelineGooglePubSubDestination: + description: |- + The `google_pubsub` destination publishes logs to a Google Cloud Pub/Sub topic. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Google Cloud Pub/Sub endpoint URL. + example: GCP_PUBSUB_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: google-pubsub-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + project: + description: The Google Cloud project ID that owns the Pub/Sub topic. + example: my-gcp-project + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + topic: + description: The Pub/Sub topic name to publish logs to. + example: logs-subscription + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubDestinationType' + required: + - id + - type + - inputs + - encoding + - project + - topic + type: object + x-pipeline-types: + - logs + ObservabilityPipelineKafkaDestination: + description: |- + The `kafka` destination sends logs to Apache Kafka topics. + + **Supported pipeline types:** logs + properties: + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + compression: + $ref: '#/components/schemas/ObservabilityPipelineKafkaDestinationCompression' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineKafkaDestinationEncoding' + headers_key: + description: The field name to use for Kafka message headers. + example: headers + type: string + id: + description: The unique identifier for this component. + example: kafka-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + key_field: + description: The field name to use as the Kafka message key. + example: message_id + type: string + librdkafka_options: + description: Optional list of advanced Kafka producer configuration options, defined as key-value pairs. + items: + $ref: '#/components/schemas/ObservabilityPipelineKafkaLibrdkafkaOption' + type: array + message_timeout_ms: + description: Maximum time in milliseconds to wait for message delivery confirmation. + example: 300000 + format: int64 + minimum: 1 + type: integer + rate_limit_duration_secs: + description: Duration in seconds for the rate limit window. + example: 1 + format: int64 + minimum: 1 + type: integer + rate_limit_num: + description: Maximum number of messages allowed per rate limit duration. + example: 1000 + format: int64 + minimum: 1 + type: integer + sasl: + $ref: '#/components/schemas/ObservabilityPipelineKafkaSasl' + socket_timeout_ms: + description: Socket timeout in milliseconds for network requests. + example: 60000 + format: int64 + maximum: 300000 + minimum: 10 + type: integer + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + topic: + description: The Kafka topic name to publish logs to. + example: logs-topic + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineKafkaDestinationType' + required: + - id + - type + - inputs + - topic + - encoding + type: object + x-pipeline-types: + - logs + MicrosoftSentinelDestination: + description: |- + The `microsoft_sentinel` destination forwards logs to Microsoft Sentinel. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + client_id: + description: Azure AD client ID used for authentication. + example: a1b2c3d4-5678-90ab-cdef-1234567890ab + type: string + client_secret_key: + description: Name of the environment variable or secret that holds the Azure AD client secret. + example: AZURE_CLIENT_SECRET + type: string + dce_uri_key: + description: Name of the environment variable or secret that holds the Data Collection Endpoint (DCE) URI. + example: DCE_URI + type: string + dcr_immutable_id: + description: The immutable ID of the Data Collection Rule (DCR). + example: dcr-uuid-1234 + type: string + id: + description: The unique identifier for this component. + example: sentinel-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + table: + description: The name of the Log Analytics table where logs are sent. + example: CustomLogsTable + type: string + tenant_id: + description: Azure AD tenant ID. + example: abcdef12-3456-7890-abcd-ef1234567890 + type: string + type: + $ref: '#/components/schemas/MicrosoftSentinelDestinationType' + required: + - id + - type + - inputs + - client_id + - tenant_id + - dcr_immutable_id + - table + type: object + x-pipeline-types: + - logs + ObservabilityPipelineNewRelicDestination: + description: |- + The `new_relic` destination sends logs to the New Relic platform. + + **Supported pipeline types:** logs + properties: + account_id_key: + description: Name of the environment variable or secret that holds the New Relic account ID. + example: NEW_RELIC_ACCOUNT_ID + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + id: + description: The unique identifier for this component. + example: new-relic-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - parse-json-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + license_key_key: + description: Name of the environment variable or secret that holds the New Relic license key. + example: NEW_RELIC_LICENSE_KEY + type: string + region: + $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion' + type: + $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationType' + required: + - id + - type + - inputs + - region + type: object + x-pipeline-types: + - logs + ObservabilityPipelineOpenSearchDestination: + description: |- + The `opensearch` destination writes logs to an OpenSearch cluster. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + bulk_index: + description: The index to write logs to. + example: logs-index + type: string + data_stream: + $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestinationDataStream' + endpoint_url_key: + description: Name of the environment variable or secret that holds the OpenSearch endpoint URL. + example: OPENSEARCH_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: opensearch-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineRsyslogDestination: + description: |- + The `rsyslog` destination forwards logs to an external `rsyslog` server over TCP or UDP using the syslog protocol. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + endpoint_url_key: + description: Name of the environment variable or secret that holds the syslog server endpoint URL. + example: SYSLOG_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: rsyslog-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + keepalive: + description: Optional socket keepalive duration in milliseconds. + example: 60000 + format: int64 + minimum: 0 + type: integer + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSentinelOneDestination: + description: |- + The `sentinel_one` destination sends logs to SentinelOne. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + id: + description: The unique identifier for this component. + example: sentinelone-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + region: + $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion' + token_key: + description: Name of the environment variable or secret that holds the SentinelOne API token. + example: SENTINELONE_TOKEN + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationType' + required: + - id + - type + - inputs + - region + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSocketDestination: + description: |- + The `socket` destination sends logs over TCP or UDP to a remote server. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the socket address (host:port). + example: SOCKET_ADDRESS + type: string + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationEncoding' + framing: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFraming' + id: + description: The unique identifier for this component. + example: socket-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + mode: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationMode' + tls: + $ref: '#/components/schemas/ObservabilityPipelineClientTls' + description: TLS configuration. Relevant only when `mode` is `tcp`. + type: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationType' + required: + - id + - type + - inputs + - encoding + - framing + - mode + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSplunkHecDestination: + description: |- + The `splunk_hec` destination forwards logs to Splunk using the HTTP Event Collector (HEC). + + **Supported pipeline types:** logs + properties: + auto_extract_timestamp: + description: |- + If `true`, Splunk tries to extract timestamps from incoming log events. + If `false`, Splunk assigns the time the event was received. + example: true + type: boolean + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Splunk HEC endpoint URL. + example: SPLUNK_HEC_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-hec-destination + type: string + index: + description: Optional name of the Splunk index where logs are written. + example: main + type: string + indexed_fields: + description: List of log field names to send as indexed fields to Splunk HEC. Available only when `encoding` is `json`. + example: + - service + - host + items: + description: A log field name to index in Splunk. + type: string + type: array + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + sourcetype: + description: The Splunk sourcetype to assign to log events. + example: custom_sourcetype + type: string + token_key: + description: Name of the environment variable or secret that holds the Splunk HEC token. + example: SPLUNK_HEC_TOKEN + type: string + token_strategy: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationTokenStrategy' + type: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSumoLogicDestination: + description: |- + The `sumo_logic` destination forwards logs to Sumo Logic. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + encoding: + $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationEncoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the Sumo Logic HTTP endpoint URL. + example: SUMO_LOGIC_ENDPOINT_URL + type: string + header_custom_fields: + description: A list of custom headers to include in the request to Sumo Logic. + items: + $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem' + type: array + header_host_name: + description: Optional override for the host name header. + example: host-123 + type: string + header_source_category: + description: Optional override for the source category header. + example: source-category + type: string + header_source_name: + description: Optional override for the source name header. + example: source-name + type: string + id: + description: The unique identifier for this component. + example: sumo-logic-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSyslogNgDestination: + description: |- + The `syslog_ng` destination forwards logs to an external `syslog-ng` server over TCP or UDP using the syslog protocol. + + **Supported pipeline types:** logs + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + endpoint_url_key: + description: Name of the environment variable or secret that holds the syslog-ng server endpoint URL. + example: SYSLOG_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. + example: syslog-ng-destination + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + keepalive: + description: Optional socket keepalive duration in milliseconds. + example: 60000 + format: int64 + minimum: 0 + type: integer + tls: + $ref: '#/components/schemas/ObservabilityPipelineClientTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - logs + ObservabilityPipelineDatabricksZerobusDestination: + description: |- + The `databricks_zerobus` destination sends logs to Databricks using the Zerobus ingestion API, streaming data directly into your Databricks Lakehouse. + + **Supported pipeline types:** Logs, rehydration + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineDatabricksZerobusDestinationAuth' + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + id: + description: The unique identifier for this component. + example: databricks-zerobus-destination + type: string + ingestion_endpoint_key: + description: Name of the environment variable or the secret identifier that references the Databricks Zerobus ingestion endpoint, which is used to stream data directly into your Databricks Lakehouse. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_INGESTION_ENDPOINT + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + table_name: + description: The fully qualified name of your target Databricks table. Make sure this table already exists in your Databricks workspace before deploying. + example: catalog.schema.table + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineDatabricksZerobusDestinationType' + unity_catalog_endpoint_key: + description: Name of the environment variable or the secret identifier that references your Databricks workspace URL, which is used to communicate with the Unity Catalog API. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_UNITY_CATALOG_ENDPOINT + type: string + required: + - id + - type + - inputs + - table_name + - auth + type: object + x-pipeline-types: + - logs + - rehydration + ObservabilityPipelineDatadogMetricsDestination: + description: |- + The `datadog_metrics` destination forwards metrics to Datadog. + + **Supported pipeline types:** metrics + properties: + id: + description: The unique identifier for this component. + example: datadog-metrics-destination + type: string + inputs: + description: A list of component IDs whose output is used as the input for this component. + example: + - metric-tags-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineDatadogMetricsDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - metrics + ObservabilityPipelineSplunkHecMetricsDestination: + description: |- + The `splunk_hec_metrics` destination forwards metrics to Splunk using the HTTP Event Collector (HEC). + + **Supported pipeline types:** metrics + properties: + buffer: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptions' + compression: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecMetricsDestinationCompression' + default_namespace: + description: Optional default namespace for metrics sent to Splunk HEC. + example: custom_namespace + type: string + endpoint_url_key: + description: Name of the environment variable or secret that holds the Splunk HEC endpoint URL. + example: SPLUNK_HEC_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-hec-metrics-destination + type: string + index: + description: Optional name of the Splunk index where metrics are written. + example: metrics + type: string + inputs: + description: A list of component IDs whose output is used as the `input` for this component. + example: + - metrics-filter-processor + items: + description: The ID of a component whose output is used as input for this destination. + type: string + type: array + source: + description: The Splunk source field value for metric events. + example: observability_pipelines + type: string + sourcetype: + description: The Splunk sourcetype to assign to metric events. + example: custom_sourcetype + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + token_key: + description: Name of the environment variable or secret that holds the Splunk HEC token. + example: SPLUNK_HEC_TOKEN + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecMetricsDestinationType' + required: + - id + - type + - inputs + type: object + x-pipeline-types: + - metrics + ObservabilityPipelineComponentDisplayName: + description: The display name for a component. + example: my component + type: string + ObservabilityPipelineConfigProcessorItem: + description: A processor for the pipeline. + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: filter-processor + type: string + include: + description: A Datadog search query used to determine which logs/metrics should pass through the filter. Logs/metrics that match this query continue to downstream components; others are dropped. + example: service:my-service + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineFilterProcessorType' + variables: + description: A list of environment variable mappings to apply to log fields. + items: + $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable' + type: array + fields: + description: A list of static fields (key-value pairs) that is added to each log event processed by this component. + items: + $ref: '#/components/schemas/ObservabilityPipelineFieldValue' + type: array + remaps: + description: Array of VRL remap rules. + items: + $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorRemap' + minItems: 1 + type: array + action: + $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorAction' + keys: + description: A list of tag keys. + example: + - env + - service + - version + items: + description: A Datadog tag key to include or exclude. + type: string + type: array + mode: + $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorMode' + cache: + $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorCache' + file: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFile' + geoip: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp' + reference_table: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableReferenceTable' + target: + description: Path where enrichment results should be stored in the log. + example: enriched.geoip + type: string + metrics: + description: Configuration for generating individual metrics. + items: + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetric' + type: array + keep_unmatched: + description: Whether to keep an event that does not match any of the mapping filters. + example: false + type: boolean + mappings: + description: A list of mapping rules to convert events to the OCSF format. + items: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping' + type: array + disable_library_rules: + default: false + description: If set to `true`, disables the default Grok rules provided by Datadog. + example: true + type: boolean + field: + default: message + description: The log field to parse with the Grok rules. + example: message + type: string + rules: + description: The list of Grok parsing rules selected by either source field or include query. + items: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleItem' + type: array + always_use_text_key: + description: Whether to always use a text key for element content. + type: boolean + attr_prefix: + description: The prefix to use for XML attributes in the parsed output. + type: string + include_attr: + description: Whether to include XML attributes in the parsed output. + type: boolean + parse_bool: + description: Whether to parse boolean values from strings. + type: boolean + parse_null: + description: Whether to parse null values. + type: boolean + parse_number: + description: Whether to parse numeric values from strings. + type: boolean + text_key: + description: The key name to use for text content within XML elements. Must be at least 1 character if specified. + minLength: 1 + type: string + drop_events: + description: 'If set to `true`, logs that match the quota filter and are sent after the quota is exceeded are dropped. Logs that do not match the filter continue through the pipeline. **Note**: You can set either `drop_events` or `overflow_action`, but not both.' + example: false + type: boolean + ignore_when_missing_partitions: + description: If `true`, the processor skips quota checks when partition fields are missing from the logs. + type: boolean + limit: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' + name: + description: Name of the quota. + example: MyQuota + type: string + overflow_action: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction' + overrides: + description: A list of alternate quota rules that apply to specific sets of events, identified by matching field values. Each override can define a custom limit. + items: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverride' + type: array + partition_fields: + description: A list of fields used to segment log traffic for quota enforcement. Quotas are tracked independently by unique combinations of these field values. + items: + description: The name of a log field used to partition quota enforcement. + type: string + type: array + too_many_buckets_action: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction' + group_by: + description: A list of fields used to group log events for merging. + example: + - log.user.id + - log.device.id + items: + description: A log field path used to group events for aggregation. + type: string + type: array + merge_strategies: + description: List of merge strategies defining how values from grouped events should be combined. + items: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy' + type: array + percentage: + description: The percentage of logs to sample. + example: 10 + format: double + type: number + arrays: + description: A list of array split configurations. + items: + $ref: '#/components/schemas/ObservabilityPipelineSplitArrayProcessorArrayConfig' + maxItems: 15 + minItems: 1 + type: array + threshold: + description: the number of events allowed in a given time window. Events sent after the threshold has been reached, are dropped. + example: 1000 + format: int64 + type: integer + window: + description: The time window in seconds over which the threshold applies. + example: 60 + format: double + type: number + tags: + description: A list of static tags (key-value pairs) added to each metric processed by this component. + items: + $ref: '#/components/schemas/ObservabilityPipelineFieldValue' + maxItems: 15 + type: array + interval_secs: + description: The interval, in seconds, over which metrics are aggregated. + example: 10 + format: int64 + maximum: 60 + minimum: 1 + type: integer + limit_exceeded_action: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorAction' + per_metric_limits: + description: A list of per-metric cardinality overrides that take precedence over the default `value_limit`. + items: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorPerMetricLimit' + maxItems: 100 + type: array + tracking_mode: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorTrackingMode' + value_limit: + description: The default maximum number of distinct tag value combinations allowed per metric. + example: 10000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer + required: + - id + - type + - include + - enabled + - variables + - fields + - remaps + - mode + - action + - keys + - target + - mappings + - rules + - field + - name + - limit + - group_by + - merge_strategies + - percentage + - arrays + - threshold + - window + - tags + - interval_secs + - limit_exceeded_action + - tracking_mode + - value_limit + type: object + x-pipeline-types: + - logs + - metrics + example: + id: parse-grok-processor + include: service:my-service + type: parse_grok + ObservabilityPipelineDatadogAgentSource: + description: |- + The `datadog_agent` source collects logs/metrics from the Datadog Agent. + + **Supported pipeline types:** logs, metrics + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Datadog Agent source. + example: DATADOG_AGENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: datadog-agent-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + - metrics + ObservabilityPipelineAmazonDataFirehoseSource: + description: |- + The `amazon_data_firehose` source ingests logs from AWS Data Firehose. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the Firehose delivery stream address. + example: FIREHOSE_ADDRESS + type: string + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: amazon-firehose-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAmazonS3Source: + description: |- + The `amazon_s3` source ingests logs from an Amazon S3 bucket. + It supports AWS authentication, TLS encryption, and configurable compression. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' + compression: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceCompression' + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: aws-s3-source + type: string + region: + description: AWS region where the S3 bucket resides. + example: us-east-1 + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceType' + url_key: + description: Name of the environment variable or secret that holds the S3 bucket URL. + example: S3_BUCKET_URL + type: string + required: + - id + - type + - region + type: object + x-pipeline-types: + - logs + ObservabilityPipelineFluentBitSource: + description: |- + The `fluent_bit` source ingests logs from Fluent Bit. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Fluent Bit receiver. + example: FLUENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: fluent-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineFluentBitSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineFluentdSource: + description: |- + The `fluentd` source ingests logs from a Fluentd-compatible service. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Fluent receiver. + example: FLUENT_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: fluent-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineFluentdSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineGooglePubSubSource: + description: |- + The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub subscription. + + **Supported pipeline types:** logs + properties: + auth: + $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: google-pubsub-source + type: string + project: + description: The Google Cloud project ID that owns the Pub/Sub subscription. + example: my-gcp-project + type: string + subscription: + description: The Pub/Sub subscription name from which messages are consumed. + example: logs-subscription + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSourceType' + required: + - id + - type + - decoding + - project + - subscription + type: object + x-pipeline-types: + - logs + ObservabilityPipelineHttpClientSource: + description: |- + The `http_client` source scrapes logs from HTTP endpoints at regular intervals. + + **Supported pipeline types:** logs + properties: + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + endpoint_url_key: + description: Name of the environment variable or secret that holds the HTTP endpoint URL to scrape. + example: HTTP_ENDPOINT_URL + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: http-client-source + type: string + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_PASSWORD + type: string + scrape_interval_secs: + description: The interval (in seconds) between HTTP scrape requests. + example: 60 + format: int64 + type: integer + scrape_timeout_secs: + description: The timeout (in seconds) for each scrape request. + example: 10 + format: int64 + type: integer + tls: + $ref: '#/components/schemas/ObservabilityPipelineClientTls' + token_key: + description: Name of the environment variable or secret that holds the bearer token (used when `auth_strategy` is `bearer`). + example: HTTP_AUTH_TOKEN + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceType' + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `basic`). + example: HTTP_AUTH_USERNAME + type: string + required: + - id + - type + - decoding + type: object + x-pipeline-types: + - logs + ObservabilityPipelineHttpServerSource: + description: |- + The `http_server` source collects logs over HTTP POST from external services. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the HTTP server. + example: HTTP_SERVER_ADDRESS + type: string + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds a custom header value (used with custom auth strategies). + example: HTTP_AUTH_CUSTOM_HEADER + type: string + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + id: + description: Unique ID for the HTTP server source. + example: http-server-source + type: string + password_key: + description: Name of the environment variable or secret that holds the password (used when `auth_strategy` is `plain`). + example: HTTP_AUTH_PASSWORD + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceType' + username_key: + description: Name of the environment variable or secret that holds the username (used when `auth_strategy` is `plain`). + example: HTTP_AUTH_USERNAME + type: string + valid_tokens: + description: |- + A list of tokens that are accepted for authenticating incoming HTTP requests. When set, + the source rejects any request whose token does not match an enabled entry in this list. + Cannot be combined with the `plain` auth strategy. + items: + $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceValidToken' + maxItems: 1000 + minItems: 1 + type: array + required: + - id + - type + - auth_strategy + - decoding + type: object + x-pipeline-types: + - logs + ObservabilityPipelineKafkaSource: + description: |- + The `kafka` source ingests data from Apache Kafka topics. + + **Supported pipeline types:** logs + properties: + bootstrap_servers_key: + description: Name of the environment variable or secret that holds the Kafka bootstrap servers list. + example: KAFKA_BOOTSTRAP_SERVERS + type: string + group_id: + description: Consumer group ID used by the Kafka client. + example: consumer-group-0 + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: kafka-source + type: string + librdkafka_options: + description: Optional list of advanced Kafka client configuration options, defined as key-value pairs. + items: + $ref: '#/components/schemas/ObservabilityPipelineKafkaLibrdkafkaOption' + type: array + sasl: + $ref: '#/components/schemas/ObservabilityPipelineKafkaSasl' + tls: + $ref: '#/components/schemas/ObservabilityPipelineTls' + topics: + description: A list of Kafka topic names to subscribe to. The source ingests messages from each topic specified. + example: + - topic1 + - topic2 + items: + description: A Kafka topic name to subscribe to. + type: string + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceType' + required: + - id + - type + - group_id + - topics + type: object + x-pipeline-types: + - logs + ObservabilityPipelineLogstashSource: + description: |- + The `logstash` source ingests logs from a Logstash forwarder. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Logstash receiver. + example: LOGSTASH_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: logstash-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineLogstashSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineRsyslogSource: + description: |- + The `rsyslog` source listens for logs over TCP or UDP from an `rsyslog` server using the syslog protocol. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the syslog receiver. + example: SYSLOG_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: rsyslog-source + type: string + mode: + $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineRsyslogSourceType' + required: + - id + - type + - mode + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSocketSource: + description: |- + The `socket` source ingests logs over TCP or UDP. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the socket. + example: SOCKET_ADDRESS + type: string + framing: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFraming' + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: socket-source + type: string + mode: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceMode' + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + description: TLS configuration. Relevant only when `mode` is `tcp`. + type: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceType' + required: + - id + - type + - mode + - framing + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSplunkHecSource: + description: |- + The `splunk_hec` source implements the Splunk HTTP Event Collector (HEC) API. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the HEC API. + example: SPLUNK_HEC_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-hec-source + type: string + store_hec_token: + description: |- + When `true`, the Splunk HEC token from the incoming request is stored in the event metadata. + This allows downstream components to forward the token to other Splunk HEC destinations. + example: true + type: boolean + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSourceType' + valid_tokens: + description: |- + A list of tokens that are accepted for authenticating incoming HEC requests. When set, the source + rejects any request whose HEC token does not match an enabled entry in this list. + items: + $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSourceValidToken' + maxItems: 1000 + minItems: 1 + type: array + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSplunkTcpSource: + description: |- + The `splunk_tcp` source receives logs from a Splunk Universal Forwarder over TCP. + TLS is supported for secure transmission. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Splunk TCP receiver. + example: SPLUNK_TCP_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: splunk-tcp-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSumoLogicSource: + description: |- + The `sumo_logic` source receives logs from Sumo Logic collectors. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the Sumo Logic receiver. + example: SUMO_LOGIC_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: sumo-logic-source + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSyslogNgSource: + description: |- + The `syslog_ng` source listens for logs over TCP or UDP from a `syslog-ng` server using the syslog protocol. + + **Supported pipeline types:** logs + properties: + address_key: + description: Name of the environment variable or secret that holds the listen address for the syslog-ng receiver. + example: SYSLOG_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: syslog-ng-source + type: string + mode: + $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSourceType' + required: + - id + - type + - mode + type: object + x-pipeline-types: + - logs + ObservabilityPipelineWebsocketSource: + description: |- + The `websocket` source ingests logs from a WebSocket server using the `ws://` or `wss://` protocol. + + **Supported pipeline types:** logs. + properties: + auth_strategy: + $ref: '#/components/schemas/ObservabilityPipelineWebsocketSourceAuthStrategy' + custom_key: + description: Name of the environment variable or secret that holds the custom authorization header value. Used when `auth_strategy` is `custom`. + example: WS_AUTH_CUSTOM_HEADER + type: string + decoding: + $ref: '#/components/schemas/ObservabilityPipelineDecoding' + id: + description: The unique identifier for this component. + example: websocket-source + type: string + password_key: + description: Name of the environment variable or secret that holds the password. Used when `auth_strategy` is `basic`. + example: WS_AUTH_PASSWORD + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineWebsocketSourceTls' + token_key: + description: Name of the environment variable or secret that holds the bearer token. Used when `auth_strategy` is `bearer`. + example: WS_BEARER_TOKEN + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineWebsocketSourceType' + uri_key: + description: Name of the environment variable or secret that holds the WebSocket server URI (`ws://` or `wss://`). + example: WS_URI + type: string + username_key: + description: Name of the environment variable or secret that holds the username. Used when `auth_strategy` is `basic`. + example: WS_AUTH_USERNAME + type: string + required: + - id + - type + - decoding + - auth_strategy + type: object + x-pipeline-types: + - logs + ObservabilityPipelineOpentelemetrySource: + description: |- + The `opentelemetry` source receives telemetry data using the OpenTelemetry Protocol (OTLP) over gRPC and HTTP. + + **Supported pipeline types:** logs, metrics + properties: + grpc_address_key: + description: Environment variable name containing the gRPC server address for receiving OTLP data. Must be a valid environment variable name (alphanumeric characters and underscores only). + example: OTEL_GRPC_ADDRESS + type: string + http_address_key: + description: Environment variable name containing the HTTP server address for receiving OTLP data. Must be a valid environment variable name (alphanumeric characters and underscores only). + example: OTEL_HTTP_ADDRESS + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: opentelemetry-source + type: string + tls: + $ref: '#/components/schemas/ObservabilityPipelineMtlsServerTls' + type: + $ref: '#/components/schemas/ObservabilityPipelineOpentelemetrySourceType' + required: + - id + - type + type: object + x-pipeline-types: + - logs + - metrics + LogsArrayProcessorOperationAppendType: + description: Operation type. + enum: + - append + example: append + type: string + x-enum-varnames: + - APPEND + LogsArrayProcessorOperationLengthType: + description: Operation type. + enum: + - length + example: length + type: string + x-enum-varnames: + - LENGTH + LogsArrayProcessorOperationSelectType: + description: Operation type. + enum: + - select + example: select + type: string + x-enum-varnames: + - SELECT + LogsArrayProcessorOperationExtractKeyValueType: + description: Operation type. + enum: + - key-value + example: key-value + type: string + x-enum-varnames: + - KEY_VALUE + LogsSchemaRemapperType: + description: Type of logs schema remapper. + enum: + - schema-remapper + example: schema-remapper + type: string + x-enum-varnames: + - SCHEMA_REMAPPER + LogsSchemaCategoryMapperCategory: + description: Object describing the logs filter with corresponding category ID and name assignment. + properties: + filter: + $ref: '#/components/schemas/LogsFilter' + id: + description: ID to inject into the category. + example: 1 + format: int64 + type: integer + name: + description: Value to assign to target schema field. + example: Password Change + type: string + required: + - filter + - id + - name + type: object + LogsSchemaCategoryMapperFallback: + description: Used to override hardcoded category values with a value pulled from a source attribute on the log. + properties: + sources: + additionalProperties: + items: + description: A fallback source attribute name. + type: string + type: array + description: Fallback sources used to populate value of field. + example: {} + type: object + values: + additionalProperties: + type: string + description: Values that define when the fallback is used. + example: {} + type: object + type: object + LogsSchemaCategoryMapperTargets: + description: Name of the target attributes which value is defined by the matching category. + properties: + id: + description: ID of the field to map log attributes to. + example: ocsf.activity_id + type: string + name: + description: Name of the field to map log attributes to. + example: ocsf.activity_name + type: string + type: object + LogsSchemaCategoryMapperType: + description: Type of logs schema category mapper. + enum: + - schema-category-mapper + example: schema-category-mapper + type: string + x-enum-varnames: + - SCHEMA_CATEGORY_MAPPER + LogsArchiveEncryptionS3Type: + description: Type of S3 encryption for a destination. + enum: + - NO_OVERRIDE + - SSE_S3 + - SSE_KMS + example: SSE_S3 + type: string + x-enum-varnames: + - NO_OVERRIDE + - SSE_S3 + - SSE_KMS + LogsArchiveIntegrationS3AccessKey: + description: The S3 Archive's integration destination using an access key. + properties: + access_key_id: + description: The access key ID for the integration. + example: AKIAIOSFODNN7EXAMPLE + type: string + required: + - access_key_id + type: object + LogsArchiveIntegrationS3Role: + description: The S3 Archive's integration destination using an IAM role. + properties: + account_id: + description: The account ID for the integration. + example: '123456789012' + type: string + role_name: + description: The name of the role to assume for the integration. + example: role-name + type: string + required: + - account_id + - role_name + type: object + CustomDestinationResponseHttpDestinationAuthBasic: + description: Basic access authentication. + properties: + type: + $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType' + required: + - type + type: object + CustomDestinationResponseHttpDestinationAuthCustomHeader: + description: Custom header access authentication. + properties: + header_name: + description: The header name of the authentication. + example: CUSTOM-HEADER-NAME + type: string + type: + $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeaderType' + required: + - type + - header_name + type: object + CustomDestinationHttpDestinationAuthBasic: + description: Basic access authentication. + properties: + password: + description: The password of the authentication. This field is not returned by the API. + example: datadog-custom-destination-password + type: string + writeOnly: true + type: + $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasicType' + username: + description: The username of the authentication. This field is not returned by the API. + example: datadog-custom-destination-username + type: string + writeOnly: true + required: + - type + - username + - password + type: object + CustomDestinationHttpDestinationAuthCustomHeader: + description: Custom header access authentication. + properties: + header_name: + description: The header name of the authentication. + example: CUSTOM-HEADER-NAME + type: string + header_value: + description: The header value of the authentication. This field is not returned by the API. + example: CUSTOM-HEADER-AUTHENTICATION-VALUE + type: string + writeOnly: true + type: + $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthCustomHeaderType' + required: + - type + - header_name + - header_value + type: object + ObservabilityPipelineElasticsearchDestinationApiVersion: + description: The Elasticsearch API version to use. Set to `auto` to auto-detect. + enum: + - auto + - v6 + - v7 + - v8 + example: auto + type: string + x-enum-varnames: + - AUTO + - V6 + - V7 + - V8 + ObservabilityPipelineElasticsearchDestinationAuth: + description: |- + Authentication settings for the Elasticsearch destination. + When `strategy` is `basic`, use `username_key` and `password_key` to reference credentials stored in environment variables or secrets. + properties: + password_key: + description: Name of the environment variable or secret that holds the Elasticsearch password (used when `strategy` is `basic`). + example: ELASTICSEARCH_PASSWORD + type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy' + username_key: + description: Name of the environment variable or secret that holds the Elasticsearch username (used when `strategy` is `basic`). + example: ELASTICSEARCH_USERNAME + type: string + required: + - strategy + type: object + ObservabilityPipelineBufferOptions: + description: Configuration for buffer settings on destination components. + properties: + max_size: + description: Maximum size of the disk buffer. + example: 4096 + format: int64 + type: integer + type: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsDiskType' + when_full: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull' + max_events: + description: Maximum events for the memory buffer. + example: 500 + format: int64 + type: integer + required: + - max_size + - max_events + type: object + ObservabilityPipelineElasticsearchDestinationCompression: + description: Compression configuration for the Elasticsearch destination. + properties: + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestinationCompressionAlgorithm' + level: + description: The compression level. Only applicable for `gzip`, `zlib`, and `zstd` algorithms. + example: 6 + format: int64 + type: integer + required: + - algorithm + type: object + ObservabilityPipelineElasticsearchDestinationDataStream: + description: Configuration options for writing to Elasticsearch Data Streams instead of a fixed index. + properties: + auto_routing: + description: When `true`, automatically routes events to the appropriate data stream based on the event content. + type: boolean + dataset: + description: The data stream dataset. This groups events by their source or application. + type: string + dtype: + description: The data stream type. This determines how events are categorized within the data stream. + type: string + namespace: + description: The data stream namespace. This separates events into different environments or domains. + type: string + sync_fields: + description: When `true`, synchronizes data stream fields with the Elasticsearch index mapping. + type: boolean + type: object + ObservabilityPipelineTls: + description: Configuration for enabling TLS encryption between the pipeline component and external services. + properties: + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the server’s TLS certificate. + type: string + crt_file: + description: Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services. + example: /path/to/cert.crt + type: string + key_file: + description: Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication. + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: TLS_KEY_PASSPHRASE + type: string + required: + - crt_file + type: object + ObservabilityPipelineElasticsearchDestinationType: + default: elasticsearch + description: The destination type. The value should always be `elasticsearch`. + enum: + - elasticsearch + example: elasticsearch + type: string + x-enum-varnames: + - ELASTICSEARCH + ObservabilityPipelineHttpClientDestinationAuthStrategy: + description: HTTP authentication strategy. + enum: + - none + - basic + - bearer + example: basic + type: string + x-enum-varnames: + - NONE + - BASIC + - BEARER + ObservabilityPipelineHttpClientDestinationCompression: + description: Compression configuration for HTTP requests. + properties: + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineHttpClientDestinationCompressionAlgorithm' + required: + - algorithm + type: object + ObservabilityPipelineHttpClientDestinationEncoding: + description: Encoding format for log events. + enum: + - json + example: json + type: string + x-enum-varnames: + - JSON + ObservabilityPipelineClientTls: + description: Configuration for enabling TLS encryption between the pipeline component and external services. + properties: + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the server’s TLS certificate. + type: string + crt_file: + description: Path to the TLS client certificate file used to authenticate the pipeline component with upstream or downstream services. + example: /path/to/cert.crt + type: string + key_file: + description: Path to the private key file associated with the TLS client certificate. Used for mutual TLS authentication. + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: TLS_KEY_PASSPHRASE + type: string + server_name: + description: Server name to use for Server Name Indication (SNI) and to verify against the certificate presented by the remote host. Use this when the address you connect to doesn't match the certificate's Common Name or Subject Alternative Name. + example: server.example.com + maxLength: 253 + minLength: 1 + type: string + required: + - crt_file + type: object + ObservabilityPipelineHttpClientDestinationType: + default: http_client + description: The destination type. The value should always be `http_client`. + enum: + - http_client + example: http_client + type: string + x-enum-varnames: + - HTTP_CLIENT + ObservabilityPipelineAmazonOpenSearchDestinationAuth: + description: |- + Authentication settings for the Amazon OpenSearch destination. + The `strategy` field determines whether basic or AWS-based authentication is used. + properties: + assume_role: + description: The ARN of the role to assume (used with `aws` strategy). + type: string + aws_region: + description: AWS region + type: string + external_id: + description: External ID for the assumed role (used with `aws` strategy). + type: string + session_name: + description: Session name for the assumed role (used with `aws` strategy). + type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy' + required: + - strategy + type: object + ObservabilityPipelineAmazonOpenSearchDestinationType: + default: amazon_opensearch + description: The destination type. The value should always be `amazon_opensearch`. + enum: + - amazon_opensearch + example: amazon_opensearch + type: string + x-enum-varnames: + - AMAZON_OPENSEARCH + ObservabilityPipelineAwsAuth: + description: |- + AWS authentication credentials used for accessing AWS services such as S3. + If omitted, the system’s default credentials are used (for example, the IAM role and environment variables). + properties: + assume_role: + description: The Amazon Resource Name (ARN) of the role to assume. + type: string + external_id: + description: A unique identifier for cross-account role assumption. + type: string + session_name: + description: A session identifier used for logging and tracing the assumed role session. + type: string + type: object + ObservabilityPipelineAmazonS3DestinationServerSideEncryption: + description: Server-side encryption type for Amazon S3. + enum: + - aws:kms + - AES256 + example: aws:kms + type: string + x-enum-varnames: + - AWS_KMS + - AES256 + ObservabilityPipelineAmazonS3DestinationStorageClass: + description: S3 storage class. + enum: + - STANDARD + - REDUCED_REDUNDANCY + - INTELLIGENT_TIERING + - STANDARD_IA + - EXPRESS_ONEZONE + - ONEZONE_IA + - GLACIER + - GLACIER_IR + - DEEP_ARCHIVE + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + - REDUCED_REDUNDANCY + - INTELLIGENT_TIERING + - STANDARD_IA + - EXPRESS_ONEZONE + - ONEZONE_IA + - GLACIER + - GLACIER_IR + - DEEP_ARCHIVE + ObservabilityPipelineAmazonS3DestinationType: + default: amazon_s3 + description: The destination type. Always `amazon_s3`. + enum: + - amazon_s3 + example: amazon_s3 + type: string + x-enum-varnames: + - AMAZON_S3 + ObservabilityPipelineAmazonS3GenericBatchSettings: + description: Event batching settings + properties: + batch_size: + description: Maximum batch size in bytes. + example: 100000000 + format: int64 + type: integer + timeout_secs: + description: Maximum number of seconds to wait before flushing the batch. + example: 900 + format: int64 + type: integer + type: object + ObservabilityPipelineAmazonS3GenericCompression: + description: Compression algorithm applied to encoded logs. + properties: + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionZstdType' + level: + description: Zstd compression level. + example: 3 + format: int64 + type: integer + required: + - algorithm + - level + type: object + ObservabilityPipelineAmazonS3GenericEncoding: + description: Encoding format for the destination. + properties: + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingJsonType' + required: + - type + type: object + ObservabilityPipelineAmazonS3GenericDestinationType: + default: amazon_s3_generic + description: The destination type. Always `amazon_s3_generic`. + enum: + - amazon_s3_generic + example: amazon_s3_generic + type: string + x-enum-varnames: + - GENERIC_ARCHIVES_S3 + ObservabilityPipelineAmazonSecurityLakeDestinationType: + default: amazon_security_lake + description: The destination type. Always `amazon_security_lake`. + enum: + - amazon_security_lake + example: amazon_security_lake + type: string + x-enum-varnames: + - AMAZON_SECURITY_LAKE + AzureStorageDestinationType: + default: azure_storage + description: The destination type. The value should always be `azure_storage`. + enum: + - azure_storage + example: azure_storage + type: string + x-enum-varnames: + - AZURE_STORAGE + ObservabilityPipelineClickhouseDestinationAuth: + description: |- + HTTP Basic Authentication credentials for the ClickHouse destination. + When `strategy` is `basic`, provide `username_key` and `password_key` that reference environment variables or secrets containing the credentials. + properties: + password_key: + description: Name of the environment variable or secret that contains the ClickHouse password. + example: CLICKHOUSE_PASSWORD + type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationAuthStrategy' + username_key: + description: Name of the environment variable or secret that contains the ClickHouse username. + example: CLICKHOUSE_USERNAME + type: string + required: + - strategy + type: object + ObservabilityPipelineClickhouseDestinationBatch: + description: Batching configuration for ClickHouse inserts. + properties: + max_events: + description: Maximum number of events per batch before it is flushed. + example: 1000 + format: int64 + minimum: 1 + type: integer + timeout_secs: + description: Maximum number of seconds to wait before flushing a partial batch. + example: 1 + format: int64 + maximum: 65535 + minimum: 1 + type: integer + type: object + ObservabilityPipelineClickhouseDestinationBatchEncoding: + description: |- + Batch encoding configuration for the ClickHouse destination. + Required when `format` is `arrow_stream`. The `codec` field must be set to `arrow_stream`. + properties: + allow_nullable_fields: + description: |- + When `true`, null values are allowed for non-nullable fields in the ClickHouse schema. + When `false` (default), missing values for non-nullable columns cause encoding errors. + example: false + type: boolean + codec: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationBatchEncodingCodec' + required: + - codec + type: object + ObservabilityPipelineClickhouseDestinationCompression: + description: |- + Compression setting for outbound HTTP requests to ClickHouse. + Can be specified as a shorthand string (`"gzip"` or `"none"`) or as an object + with an `algorithm` field and an optional `level` (gzip only, 1–9). + enum: + - gzip + - none + example: gzip + type: string + x-enum-varnames: + - GZIP + - NONE + properties: + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationCompressionAlgorithm' + level: + description: Compression level (1–9). Only applicable when `algorithm` is `gzip`. + example: 6 + format: int64 + maximum: 9 + minimum: 1 + type: integer + required: + - algorithm + ObservabilityPipelineClickhouseDestinationFormat: + description: |- + Insert format for events sent to ClickHouse. + - `json_each_row`: Maps event fields to columns by name (ClickHouse `JSONEachRow`). + - `json_as_object`: Inserts each event into a single `Object('json')` / `JSON` column (ClickHouse `JSONAsObject`). + - `json_as_string`: Inserts each event into a single `String`-typed column as raw JSON (ClickHouse `JSONAsString`). + - `arrow_stream`: Batches events using Apache Arrow IPC streaming format. Requires `batch_encoding`. + enum: + - json_each_row + - json_as_object + - json_as_string + - arrow_stream + example: json_each_row + type: string + x-enum-varnames: + - JSON_EACH_ROW + - JSON_AS_OBJECT + - JSON_AS_STRING + - ARROW_STREAM + ObservabilityPipelineClickhouseDestinationType: + default: clickhouse + description: The destination type. The value must be `clickhouse`. + enum: + - clickhouse + example: clickhouse + type: string + x-enum-varnames: + - CLICKHOUSE + ObservabilityPipelineCloudPremDestinationType: + default: cloud_prem + description: The destination type. The value should always be `cloud_prem`. + enum: + - cloud_prem + example: cloud_prem + type: string + x-enum-varnames: + - CLOUD_PREM + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression: + description: Compression configuration for log events. + properties: + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm' + level: + description: Compression level. + example: 6 + format: int64 + type: integer + required: + - algorithm type: object - LogsArchiveOrder: - description: A ordered list of archive IDs. + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType: + default: crowdstrike_next_gen_siem + description: The destination type. The value should always be `crowdstrike_next_gen_siem`. + enum: + - crowdstrike_next_gen_siem + example: crowdstrike_next_gen_siem + type: string + x-enum-varnames: + - CROWDSTRIKE_NEXT_GEN_SIEM + ObservabilityPipelineDatadogLogsDestinationRoute: + description: Defines how the `datadog_logs` destination routes matching logs to a Datadog site using a specific API key. properties: - data: - $ref: '#/components/schemas/LogsArchiveOrderDefinition' + api_key_key: + description: Name of the environment variable or secret that stores the Datadog API key used by this route. + example: API_KEY_IDENTIFIER + type: string + include: + description: A Datadog search query that determines which logs are forwarded using this route. + example: service:api + type: string + route_id: + description: Unique identifier for this route within the destination. + example: datadog-logs-route-us + type: string + site: + description: Datadog site where matching logs are sent (for example, `us1`). + example: us1 + type: string + type: object + ObservabilityPipelineDatadogLogsDestinationType: + default: datadog_logs + description: The destination type. The value should always be `datadog_logs`. + enum: + - datadog_logs + example: datadog_logs + type: string + x-enum-varnames: + - DATADOG_LOGS + ObservabilityPipelineGcpAuth: + description: Google Cloud credentials used to authenticate with Google Cloud Storage. + properties: + credentials_file: + description: Path to the Google Cloud service account key file. + example: /var/secrets/gcp-credentials.json + type: string + required: + - credentials_file + type: object + ObservabilityPipelineGoogleChronicleDestinationEncoding: + description: The encoding format for the logs sent to Chronicle. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineGoogleChronicleDestinationType: + default: google_chronicle + description: The destination type. The value should always be `google_chronicle`. + enum: + - google_chronicle + example: google_chronicle + type: string + x-enum-varnames: + - GOOGLE_CHRONICLE + ObservabilityPipelineGoogleCloudStorageDestinationAcl: + description: Access control list setting for objects written to the bucket. + enum: + - private + - project-private + - public-read + - authenticated-read + - bucket-owner-read + - bucket-owner-full-control + example: private + type: string + x-enum-varnames: + - PRIVATE + - PROJECTNOT_PRIVATE + - PUBLICNOT_READ + - AUTHENTICATEDNOT_READ + - BUCKETNOT_OWNERNOT_READ + - BUCKETNOT_OWNERNOT_FULLNOT_CONTROL + ObservabilityPipelineMetadataEntry: + description: A custom metadata entry. + properties: + name: + description: The metadata key. + example: environment + type: string + value: + description: The metadata value. + example: production + type: string + required: + - name + - value + type: object + ObservabilityPipelineGoogleCloudStorageDestinationStorageClass: + description: Storage class used for objects stored in GCS. + enum: + - STANDARD + - NEARLINE + - COLDLINE + - ARCHIVE + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + - NEARLINE + - COLDLINE + - ARCHIVE + ObservabilityPipelineGoogleCloudStorageDestinationType: + default: google_cloud_storage + description: The destination type. Always `google_cloud_storage`. + enum: + - google_cloud_storage + example: google_cloud_storage + type: string + x-enum-varnames: + - GOOGLE_CLOUD_STORAGE + ObservabilityPipelineGooglePubSubDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineGooglePubSubDestinationType: + default: google_pubsub + description: The destination type. The value should always be `google_pubsub`. + enum: + - google_pubsub + example: google_pubsub + type: string + x-enum-varnames: + - GOOGLE_PUBSUB + ObservabilityPipelineKafkaDestinationCompression: + description: Compression codec for Kafka messages. + enum: + - none + - gzip + - snappy + - lz4 + - zstd + example: gzip + type: string + x-enum-varnames: + - NONE + - GZIP + - SNAPPY + - LZ4 + - ZSTD + ObservabilityPipelineKafkaDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineKafkaLibrdkafkaOption: + description: Represents a key-value pair used to configure low-level `librdkafka` client options for Kafka source and destination, such as timeouts, buffer sizes, and security settings. + properties: + name: + description: The name of the `librdkafka` configuration option to set. + example: fetch.message.max.bytes + type: string + value: + description: The value assigned to the specified `librdkafka` configuration option. + example: '1048576' + type: string + required: + - name + - value + type: object + ObservabilityPipelineKafkaSasl: + description: Specifies the SASL mechanism for authenticating with a Kafka cluster. + properties: + mechanism: + $ref: '#/components/schemas/ObservabilityPipelineKafkaSaslMechanism' + password_key: + description: Name of the environment variable or secret that holds the SASL password. + example: KAFKA_SASL_PASSWORD + type: string + username_key: + description: Name of the environment variable or secret that holds the SASL username. + example: KAFKA_SASL_USERNAME + type: string + type: object + ObservabilityPipelineKafkaDestinationType: + default: kafka + description: The destination type. The value should always be `kafka`. + enum: + - kafka + example: kafka + type: string + x-enum-varnames: + - KAFKA + MicrosoftSentinelDestinationType: + default: microsoft_sentinel + description: The destination type. The value should always be `microsoft_sentinel`. + enum: + - microsoft_sentinel + example: microsoft_sentinel + type: string + x-enum-varnames: + - MICROSOFT_SENTINEL + ObservabilityPipelineNewRelicDestinationRegion: + description: The New Relic region. + enum: + - us + - eu + example: us + type: string + x-enum-varnames: + - US + - EU + ObservabilityPipelineNewRelicDestinationType: + default: new_relic + description: The destination type. The value should always be `new_relic`. + enum: + - new_relic + example: new_relic + type: string + x-enum-varnames: + - NEW_RELIC + ObservabilityPipelineOpenSearchDestinationDataStream: + description: Configuration options for writing to OpenSearch Data Streams instead of a fixed index. + properties: + dataset: + description: The data stream dataset for your logs. This groups logs by their source or application. + type: string + dtype: + description: The data stream type for your logs. This determines how logs are categorized within the data stream. + type: string + namespace: + description: The data stream namespace for your logs. This separates logs into different environments or domains. + type: string + type: object + ObservabilityPipelineOpenSearchDestinationType: + default: opensearch + description: The destination type. The value should always be `opensearch`. + enum: + - opensearch + example: opensearch + type: string + x-enum-varnames: + - OPENSEARCH + ObservabilityPipelineRsyslogDestinationType: + default: rsyslog + description: The destination type. The value should always be `rsyslog`. + enum: + - rsyslog + example: rsyslog + type: string + x-enum-varnames: + - RSYSLOG + ObservabilityPipelineSentinelOneDestinationRegion: + description: The SentinelOne region to send logs to. + enum: + - us + - eu + - ca + - data_set_us + example: us + type: string + x-enum-varnames: + - US + - EU + - CA + - DATA_SET_US + ObservabilityPipelineSentinelOneDestinationType: + default: sentinel_one + description: The destination type. The value should always be `sentinel_one`. + enum: + - sentinel_one + example: sentinel_one + type: string + x-enum-varnames: + - SENTINEL_ONE + ObservabilityPipelineSocketDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineSocketDestinationFraming: + description: Framing method configuration. + properties: + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod' + delimiter: + description: A single ASCII character used as a delimiter. + example: '|' + maxLength: 1 + minLength: 1 + type: string + required: + - method + - delimiter + type: object + ObservabilityPipelineSocketDestinationMode: + description: Protocol used to send logs. + enum: + - tcp + - udp + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + ObservabilityPipelineSocketDestinationType: + default: socket + description: The destination type. The value should always be `socket`. + enum: + - socket + example: socket + type: string + x-enum-varnames: + - SOCKET + ObservabilityPipelineSplunkHecDestinationEncoding: + description: Encoding format for log events. + enum: + - json + - raw_message + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + ObservabilityPipelineSplunkHecDestinationTokenStrategy: + description: Controls how the Splunk HEC token is supplied. Use `custom` to provide a token with `token_key`, or `from_source` to forward the token received from an upstream Splunk HEC source. + enum: + - custom + - from_source + example: custom + type: string + x-enum-varnames: + - CUSTOM + - FROM_SOURCE + ObservabilityPipelineSplunkHecDestinationType: + default: splunk_hec + description: The destination type. Always `splunk_hec`. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + ObservabilityPipelineSumoLogicDestinationEncoding: + description: The output encoding format. + enum: + - json + - raw_message + - logfmt + example: json + type: string + x-enum-varnames: + - JSON + - RAW_MESSAGE + - LOGFMT + ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem: + description: Single key-value pair used as a custom log header for Sumo Logic. + properties: + name: + description: The header field name. + example: X-Sumo-Category + type: string + value: + description: The header field value. + example: my-app-logs + type: string + required: + - name + - value + type: object + ObservabilityPipelineSumoLogicDestinationType: + default: sumo_logic + description: The destination type. The value should always be `sumo_logic`. + enum: + - sumo_logic + example: sumo_logic + type: string + x-enum-varnames: + - SUMO_LOGIC + ObservabilityPipelineSyslogNgDestinationType: + default: syslog_ng + description: The destination type. The value should always be `syslog_ng`. + enum: + - syslog_ng + example: syslog_ng + type: string + x-enum-varnames: + - SYSLOG_NG + ObservabilityPipelineDatabricksZerobusDestinationAuth: + description: OAuth credentials for authenticating with the Databricks Zerobus ingestion API. + properties: + client_id: + description: Your service principal application ID (UUID). + example: 9a8b7c6d-1234-5678-abcd-ef0123456789 + type: string + client_secret_key: + description: Name of the environment variable or secret that holds the OAuth client secret used to authenticate with the Databricks ingestion endpoint. + example: DD_OP_DESTINATION_DATABRICKS_ZEROBUS_OAUTH_CLIENT_SECRET + type: string + required: + - client_id + type: object + ObservabilityPipelineDatabricksZerobusDestinationType: + default: databricks_zerobus + description: The destination type. The value must be `databricks_zerobus`. + enum: + - databricks_zerobus + example: databricks_zerobus + type: string + x-enum-varnames: + - DATABRICKS_ZEROBUS + ObservabilityPipelineDatadogMetricsDestinationType: + default: datadog_metrics + description: The destination type. The value should always be `datadog_metrics`. + enum: + - datadog_metrics + example: datadog_metrics + type: string + x-enum-varnames: + - DATADOG_METRICS + ObservabilityPipelineSplunkHecMetricsDestinationCompression: + default: none + description: Compression algorithm applied when sending metrics to Splunk HEC. + enum: + - none + - gzip + example: none + type: string + x-enum-varnames: + - NONE + - GZIP + ObservabilityPipelineSplunkHecMetricsDestinationType: + default: splunk_hec_metrics + description: The destination type. Always `splunk_hec_metrics`. + enum: + - splunk_hec_metrics + example: splunk_hec_metrics + type: string + x-enum-varnames: + - SPLUNK_HEC_METRICS + ObservabilityPipelineFilterProcessor: + description: |- + The `filter` processor allows conditional processing of logs/metrics based on a Datadog search query. Logs/metrics that match the `include` query are passed through; others are discarded. + + **Supported pipeline types:** logs, metrics + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: filter-processor + type: string + include: + description: A Datadog search query used to determine which logs/metrics should pass through the filter. Logs/metrics that match this query continue to downstream components; others are dropped. + example: service:my-service + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineFilterProcessorType' + required: + - id + - type + - include + - enabled + type: object + x-pipeline-types: + - logs + - metrics + ObservabilityPipelineAddEnvVarsProcessor: + description: |- + The `add_env_vars` processor adds environment variable values to log events. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this processor in the pipeline. + example: add-env-vars-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorType' + variables: + description: A list of environment variable mappings to apply to log fields. + items: + $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable' + type: array + required: + - id + - type + - include + - variables + - enabled + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAddFieldsProcessor: + description: |- + The `add_fields` processor adds static key-value fields to logs. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of static fields (key-value pairs) that is added to each log event processed by this component. + items: + $ref: '#/components/schemas/ObservabilityPipelineFieldValue' + type: array + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: add-fields-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessorType' + required: + - id + - type + - include + - fields + - enabled + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAddHostnameProcessor: + description: |- + The `add_hostname` processor adds the hostname to log events. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: add-hostname-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineAddHostnameProcessorType' + required: + - id + - type + - include + - enabled + type: object + x-pipeline-types: + - logs + ObservabilityPipelineCustomProcessor: + description: |- + The `custom_processor` processor transforms events using [Vector Remap Language (VRL)](https://vector.dev/docs/reference/vrl/) scripts with advanced filtering capabilities. + + **Supported pipeline types:** logs + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this processor. + example: remap-vrl-processor + type: string + include: + default: '*' + description: A Datadog search query used to determine which logs this processor targets. This field should always be set to `*` for the custom_processor processor. + example: '*' + type: string + remaps: + description: Array of VRL remap rules. + items: + $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorRemap' + minItems: 1 + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorType' + required: + - id + - type + - include + - remaps + - enabled type: object - APIErrorResponse: - description: API error response. + x-pipeline-types: + - logs + ObservabilityPipelineDatadogTagsProcessor: + description: |- + The `datadog_tags` processor includes or excludes specific Datadog tags in your logs. + + **Supported pipeline types:** logs properties: - errors: - description: A list of errors. + action: + $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorAction' + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: datadog-tags-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + keys: + description: A list of tag keys. example: - - Bad Request + - env + - service + - version items: - description: A list of items. - example: Bad Request + description: A Datadog tag key to include or exclude. type: string type: array + mode: + $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorMode' + type: + $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorType' required: - - errors + - id + - type + - include + - mode + - action + - keys + - enabled type: object - LogsArchives: - description: The available archives. + x-pipeline-types: + - logs + ObservabilityPipelineDedupeProcessor: + description: |- + The `dedupe` processor removes duplicate fields in log events. + + **Supported pipeline types:** logs properties: - data: - description: A list of archives. + cache: + $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorCache' + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of log field paths to check for duplicates. + example: + - log.message + - log.error items: - $ref: '#/components/schemas/LogsArchiveDefinition' + description: A log field path to evaluate for duplicate values. + type: string type: array + id: + description: The unique identifier for this processor. + example: dedupe-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + mode: + $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorMode' + type: + $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorType' + required: + - id + - type + - include + - fields + - mode + - enabled type: object - LogsArchiveCreateRequest: - description: The logs archive. - properties: - data: - $ref: '#/components/schemas/LogsArchiveCreateRequestDefinition' - type: object - LogsArchive: - description: The logs archive. - properties: - data: - $ref: '#/components/schemas/LogsArchiveDefinition' - type: object - RelationshipToRole: - description: Relationship to role. + x-pipeline-types: + - logs + ObservabilityPipelineEnrichmentTableProcessor: + description: |- + The `enrichment_table` processor enriches logs using a static CSV file, GeoIP database, or reference table. Exactly one of `file`, `geoip`, or `reference_table` must be configured. + + **Supported pipeline types:** logs properties: - data: - $ref: '#/components/schemas/RelationshipToRoleData' + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + file: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFile' + geoip: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp' + id: + description: The unique identifier for this processor. + example: enrichment-table-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: source:my-source + type: string + reference_table: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableReferenceTable' + target: + description: Path where enrichment results should be stored in the log. + example: enriched.geoip + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessorType' + required: + - id + - type + - include + - target + - enabled type: object - RolesResponse: - description: Response containing information about multiple roles. + x-pipeline-types: + - logs + ObservabilityPipelineGenerateMetricsProcessor: + description: |- + The `generate_datadog_metrics` processor creates custom metrics from logs and sends them to Datadog. + Metrics can be counters, gauges, or distributions and optionally grouped by log fields. + + **Supported pipeline types:** logs properties: - data: - description: Array of returned roles. + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this component in other parts of the pipeline. + example: generate-metrics-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + metrics: + description: Configuration for generating individual metrics. items: - $ref: '#/components/schemas/Role' + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetric' type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' + type: + $ref: '#/components/schemas/ObservabilityPipelineGenerateMetricsProcessorType' + required: + - id + - type + - enabled type: object - CustomDestinationsResponse: - description: The available custom destinations. + x-pipeline-types: + - logs + ObservabilityPipelineGenerateMetricsV2Processor: + description: |- + The `generate_metrics` processor creates custom metrics from logs. + Metrics can be counters, gauges, or distributions and optionally grouped by log fields. + The generated metrics must be routed to a metrics destination using the input `.metrics`. + + **Supported pipeline types:** logs properties: - data: - description: A list of custom destinations. + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this component in other parts of the pipeline. + example: generate-metrics-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + metrics: + description: Configuration for generating individual metrics. items: - $ref: '#/components/schemas/CustomDestinationResponseDefinition' + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetric' type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineGenerateMetricsV2ProcessorType' + required: + - id + - type + - enabled type: object - CustomDestinationCreateRequest: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationCreateRequestDefinition' - type: object - CustomDestinationResponse: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationResponseDefinition' - type: object - CustomDestinationUpdateRequest: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationUpdateRequestDefinition' - type: object - LogsMetricsResponse: - description: All the available log-based metric objects. + x-pipeline-types: + - logs + ObservabilityPipelineOcsfMapperProcessor: + description: |- + The `ocsf_mapper` processor transforms logs into the OCSF schema using a predefined mapping configuration. + + **Supported pipeline types:** logs properties: - data: - description: A list of log-based metric objects. + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used to reference this component in other parts of the pipeline. + example: ocsf-mapper-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + keep_unmatched: + description: Whether to keep an event that does not match any of the mapping filters. + example: false + type: boolean + mappings: + description: A list of mapping rules to convert events to the OCSF format. items: - $ref: '#/components/schemas/LogsMetricResponseData' + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping' type: array - type: object - LogsMetricCreateRequest: - description: The new log-based metric body. - properties: - data: - $ref: '#/components/schemas/LogsMetricCreateData' + type: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorType' required: - - data - type: object - LogsMetricResponse: - description: The log-based metric object. - properties: - data: - $ref: '#/components/schemas/LogsMetricResponseData' + - id + - type + - include + - mappings + - enabled type: object - LogsMetricUpdateRequest: - description: The new log-based metric body. + x-pipeline-types: + - logs + ObservabilityPipelineParseGrokProcessor: + description: |- + The `parse_grok` processor extracts structured fields from unstructured log messages using Grok patterns. + + **Supported pipeline types:** logs + example: + id: parse-grok-processor + include: service:my-service + type: parse_grok properties: - data: - $ref: '#/components/schemas/LogsMetricUpdateData' + disable_library_rules: + default: false + description: If set to `true`, disables the default Grok rules provided by Datadog. + example: true + type: boolean + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + field: + default: message + description: The log field to parse with the Grok rules. + example: message + type: string + id: + description: A unique identifier for this processor. + example: parse-grok-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + rules: + description: The list of Grok parsing rules selected by either source field or include query. + items: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleItem' + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorType' required: - - data + - id + - type + - include + - rules + - enabled type: object - LogsStorageTier: - default: indexes - description: Specifies storage type as indexes, online-archives or flex - enum: - - indexes - - online-archives - - flex - example: indexes - type: string - x-enum-varnames: - - INDEXES - - ONLINE_ARCHIVES - - FLEX - LogsSort: - description: Sort parameters when querying logs. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - LogsListResponse: - description: >- - Response object with all logs matching the request and pagination - information. + x-pipeline-types: + - logs + ObservabilityPipelineParseJSONProcessor: + description: |- + The `parse_json` processor extracts JSON from a specified field and flattens it into the event. This is useful when logs contain embedded JSON as a string. + + **Supported pipeline types:** logs properties: - data: - description: Array of logs matching the request. - items: - $ref: '#/components/schemas/Log' - type: array - links: - $ref: '#/components/schemas/LogsListResponseLinks' - meta: - $ref: '#/components/schemas/LogsResponseMetadata' + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + field: + description: The name of the log field that contains a JSON string. + example: message + type: string + id: + description: A unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + example: parse-json-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessorType' + required: + - id + - type + - include + - field + - enabled type: object - LogsListRequest: - description: The request for a logs list. + x-pipeline-types: + - logs + ObservabilityPipelineParseXMLProcessor: + description: |- + The `parse_xml` processor parses XML from a specified field and extracts it into the event. + + **Supported pipeline types:** logs properties: - filter: - $ref: '#/components/schemas/LogsQueryFilter' - options: - $ref: '#/components/schemas/LogsQueryOptions' - page: - $ref: '#/components/schemas/LogsListRequestPage' - sort: - $ref: '#/components/schemas/LogsSort' + always_use_text_key: + description: Whether to always use a text key for element content. + type: boolean + attr_prefix: + description: The prefix to use for XML attributes in the parsed output. + type: string + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + field: + description: The name of the log field that contains an XML string. + example: message + type: string + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: parse-xml-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service + type: string + include_attr: + description: Whether to include XML attributes in the parsed output. + type: boolean + parse_bool: + description: Whether to parse boolean values from strings. + type: boolean + parse_null: + description: Whether to parse null values. + type: boolean + parse_number: + description: Whether to parse numeric values from strings. + type: boolean + text_key: + description: The key name to use for text content within XML elements. Must be at least 1 character if specified. + minLength: 1 + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineParseXMLProcessorType' + required: + - id + - type + - include + - field + - enabled type: object - HTTPLogItem: - additionalProperties: - description: Additional log attributes. - description: Logs that are sent over HTTP. - properties: - ddsource: - description: >- - The integration name associated with your log: the technology from - which the log originated. - - When it matches an integration name, Datadog automatically installs - the corresponding parsers and facets. + x-pipeline-types: + - logs + ObservabilityPipelineQuotaProcessor: + description: |- + The `quota` processor measures logging traffic for logs that match a specified filter. When the configured daily quota is met, the processor can drop or alert. - See [reserved - attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). - example: nginx + **Supported pipeline types:** logs + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + drop_events: + description: 'If set to `true`, logs that match the quota filter and are sent after the quota is exceeded are dropped. Logs that do not match the filter continue through the pipeline. **Note**: You can set either `drop_events` or `overflow_action`, but not both.' + example: false + type: boolean + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: quota-processor type: string - ddtags: - description: Tags associated with your logs. - example: env:staging,version:5.1 + ignore_when_missing_partitions: + description: If `true`, the processor skips quota checks when partition fields are missing from the logs. + type: boolean + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service type: string - hostname: - description: The name of the originating host of the log. - example: i-012345678 + limit: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' + name: + description: Name of the quota. + example: MyQuota type: string - message: - description: >- - The message [reserved - attribute](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes) - - of your log. By default, Datadog ingests the value of the message - attribute as the body of the log entry. + overflow_action: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction' + overrides: + description: A list of alternate quota rules that apply to specific sets of events, identified by matching field values. Each override can define a custom limit. + items: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverride' + type: array + partition_fields: + description: A list of fields used to segment log traffic for quota enforcement. Quotas are tracked independently by unique combinations of these field values. + items: + description: The name of a log field used to partition quota enforcement. + type: string + type: array + too_many_buckets_action: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction' + type: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorType' + required: + - id + - type + - include + - name + - limit + - enabled + type: object + x-pipeline-types: + - logs + ObservabilityPipelineReduceProcessor: + description: |- + The `reduce` processor aggregates and merges logs based on matching keys and merge strategies. - That value is then highlighted and displayed in the Logstream, where - it is indexed for full text search. - example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + **Supported pipeline types:** logs + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + group_by: + description: A list of fields used to group log events for merging. + example: + - log.user.id + - log.device.id + items: + description: A log field path used to group events for aggregation. + type: string + type: array + id: + description: The unique identifier for this processor. + example: reduce-processor type: string - service: - description: >- - The name of the application or service generating the log events. - - It is used to switch from Logs to APM, so make sure you define the - same value when you use both products. - - See [reserved - attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). - example: payment + include: + description: A Datadog search query used to determine which logs this processor targets. + example: env:prod type: string + merge_strategies: + description: List of merge strategies defining how values from grouped events should be combined. + items: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy' + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorType' required: - - message + - id + - type + - include + - group_by + - merge_strategies + - enabled type: object - HTTPLogError: - description: List of errors. + x-pipeline-types: + - logs + ObservabilityPipelineRemoveFieldsProcessor: + description: |- + The `remove_fields` processor deletes specified fields from logs. + + **Supported pipeline types:** logs properties: - detail: - description: Error message. - example: Malformed payload - type: string - status: - description: Error code. - example: '400' + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of field names to be removed from each log event. + example: + - field1 + - field2 + items: + description: The name of a field to remove from the log event. + type: string + type: array + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: remove-fields-processor type: string - title: - description: Error title. - example: Bad Request + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessorType' + required: + - id + - type + - include + - fields + - enabled type: object - LogsCompute: - description: A compute rule to compute metrics or timeseries + x-pipeline-types: + - logs + ObservabilityPipelineRenameFieldsProcessor: + description: |- + The `rename_fields` processor changes field names. + + **Supported pipeline types:** logs properties: - aggregation: - $ref: '#/components/schemas/LogsAggregationFunction' - interval: - description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points - example: 5m + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + fields: + description: A list of rename rules specifying which fields to rename in the event, what to rename them to, and whether to preserve the original fields. + items: + $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessorField' + type: array + id: + description: A unique identifier for this component. Used to reference this component in other parts of the pipeline (e.g., as input to downstream components). + example: rename-fields-processor type: string - metric: - description: The metric to use - example: '@duration' + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service type: string type: - $ref: '#/components/schemas/LogsComputeType' + $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessorType' required: - - aggregation + - id + - type + - include + - fields + - enabled type: object - LogsQueryFilter: - description: The search and filter query settings + x-pipeline-types: + - logs + ObservabilityPipelineSampleProcessor: + description: |- + The `sample` processor allows probabilistic sampling of logs at a fixed rate. + + **Supported pipeline types:** logs properties: - from: - default: now-15m - description: >- - The minimum time for the requested logs, supports date math and - regular timestamps (milliseconds). - example: now-15m - type: string - indexes: - default: - - '*' - description: >- - For customers with multiple indexes, the indexes to search. Defaults - to ['*'] which means all indexes. + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + group_by: + description: Optional list of fields to group events by. Each group is sampled independently. example: - - main - - web + - service + - host items: - description: The name of a log index. + description: A log field name used to group events for independent sampling. type: string + minItems: 1 type: array - query: - default: '*' - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: sample-processor type: string - storage_tier: - $ref: '#/components/schemas/LogsStorageTier' - to: - default: now - description: >- - The maximum time for the requested logs, supports date math and - regular timestamps (milliseconds). - example: now + include: + description: A Datadog search query used to determine which logs this processor targets. + example: service:my-service type: string + percentage: + description: The percentage of logs to sample. + example: 10 + format: double + type: number + type: + $ref: '#/components/schemas/ObservabilityPipelineSampleProcessorType' + required: + - id + - type + - include + - percentage + - enabled type: object - LogsGroupBy: - description: A group by rule + x-pipeline-types: + - logs + ObservabilityPipelineSensitiveDataScannerProcessor: + description: |- + The `sensitive_data_scanner` processor detects and optionally redacts sensitive data in log events. + + **Supported pipeline types:** logs properties: - facet: - description: The name of the facet to use (required) - example: host + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: sensitive-scanner type: string - histogram: - $ref: '#/components/schemas/LogsGroupByHistogram' - limit: - default: 10 - description: >- - The maximum buckets to return for this group by. Note: at most 10000 - buckets are allowed. + include: + description: A Datadog search query used to determine which logs this processor targets. + example: source:prod + type: string + rules: + description: A list of rules for identifying and acting on sensitive data patterns. + items: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorRule' + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorType' + required: + - id + - type + - include + - rules + - enabled + type: object + x-pipeline-types: + - logs + ObservabilityPipelineSplitArrayProcessor: + description: |- + The `split_array` processor splits array fields into separate events based on configured rules. - If grouping by multiple facets, the product of limits must not - exceed 10000. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/LogsGroupByMissing' - sort: - $ref: '#/components/schemas/LogsAggregateSort' - total: - $ref: '#/components/schemas/LogsGroupByTotal' + **Supported pipeline types:** logs + properties: + arrays: + description: A list of array split configurations. + items: + $ref: '#/components/schemas/ObservabilityPipelineSplitArrayProcessorArrayConfig' + maxItems: 15 + minItems: 1 + type: array + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: split-array-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. For split_array, this should typically be `*`. + example: '*' + type: string + type: + $ref: '#/components/schemas/ObservabilityPipelineSplitArrayProcessorType' required: - - facet + - id + - type + - include + - arrays + - enabled type: object - LogsQueryOptions: - deprecated: true - description: >- - Global query options that are used during the query. + x-pipeline-types: + - logs + ObservabilityPipelineThrottleProcessor: + description: |- + The `throttle` processor limits the number of events that pass through over a given time window. - Note: These fields are currently deprecated and do not affect the query - results. + **Supported pipeline types:** logs properties: - timeOffset: - description: The time offset (in seconds) to apply to the query. + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + group_by: + description: Optional list of fields used to group events before the threshold has been reached. + example: + - log.user.id + items: + description: A log field name used to group events for independent throttling. + type: string + type: array + id: + description: The unique identifier for this processor. + example: throttle-processor + type: string + include: + description: A Datadog search query used to determine which logs this processor targets. + example: env:prod + type: string + threshold: + description: the number of events allowed in a given time window. Events sent after the threshold has been reached, are dropped. + example: 1000 format: int64 type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT + type: + $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessorType' + window: + description: The time window in seconds over which the threshold applies. + example: 60 + format: double + type: number + required: + - id + - type + - include + - threshold + - window + - enabled + type: object + x-pipeline-types: + - logs + ObservabilityPipelineAddMetricTagsProcessor: + description: |- + The `add_metric_tags` processor adds static tags to metrics. + + **Supported pipeline types:** metrics + properties: + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: add-metric-tags-processor + type: string + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: '*' type: string + tags: + description: A list of static tags (key-value pairs) added to each metric processed by this component. + items: + $ref: '#/components/schemas/ObservabilityPipelineFieldValue' + maxItems: 15 + type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineAddMetricTagsProcessorType' + required: + - id + - type + - include + - tags + - enabled type: object - LogsAggregateRequestPage: - description: Paging settings + x-pipeline-types: + - metrics + ObservabilityPipelineAggregateProcessor: + description: |- + The `aggregate` processor combines metrics that share the same name and tags into a single metric over a configurable interval. + + **Supported pipeline types:** metrics properties: - cursor: - description: >- - The returned paging point to use to get the next results. Note: at - most 1000 results can be paged. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: aggregate-processor type: string + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: '*' + type: string + interval_secs: + description: The interval, in seconds, over which metrics are aggregated. + example: 10 + format: int64 + maximum: 60 + minimum: 1 + type: integer + mode: + $ref: '#/components/schemas/ObservabilityPipelineAggregateProcessorMode' + type: + $ref: '#/components/schemas/ObservabilityPipelineAggregateProcessorType' + required: + - id + - type + - include + - interval_secs + - mode + - enabled type: object - LogsAggregateResponseData: - description: The query results + x-pipeline-types: + - metrics + ObservabilityPipelineMetricTagsProcessor: + description: |- + The `metric_tags` processor filters metrics based on their tags using Datadog tag key patterns. + + **Supported pipeline types:** metrics properties: - buckets: - description: The list of matching buckets, one item per bucket + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: metric-tags-processor + type: string + include: + description: A Datadog search query that determines which metrics the processor targets. + example: '*' + type: string + rules: + description: A list of rules for filtering metric tags. items: - $ref: '#/components/schemas/LogsAggregateBucket' + $ref: '#/components/schemas/ObservabilityPipelineMetricTagsProcessorRule' + maxItems: 100 + minItems: 1 type: array + type: + $ref: '#/components/schemas/ObservabilityPipelineMetricTagsProcessorType' + required: + - id + - type + - include + - rules + - enabled type: object - LogsResponseMetadata: - description: The metadata associated with a request + x-pipeline-types: + - metrics + ObservabilityPipelineRenameMetricTagsProcessor: + description: |- + The `rename_metric_tags` processor changes the keys of tags on metrics. + + **Supported pipeline types:** metrics properties: - elapsed: - description: The time elapsed in milliseconds - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/LogsResponseMetadataPage' - request_id: - description: The identifier of the request - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean + id: + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: rename-metric-tags-processor type: string - status: - $ref: '#/components/schemas/LogsAggregateResponseStatus' - warnings: - description: >- - A list of warnings (non fatal errors) encountered, partial results - might be returned if - - warnings are present in the response. + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: '*' + type: string + tags: + description: A list of rename rules specifying which tag keys to rename on each metric. items: - $ref: '#/components/schemas/LogsWarning' + $ref: '#/components/schemas/ObservabilityPipelineRenameMetricTagsProcessorTag' + maxItems: 15 type: array - type: object - LogsArchiveOrderDefinition: - description: The definition of an archive order. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveOrderAttributes' type: - $ref: '#/components/schemas/LogsArchiveOrderDefinitionType' + $ref: '#/components/schemas/ObservabilityPipelineRenameMetricTagsProcessorType' required: + - id - type - - attributes + - include + - tags + - enabled type: object - LogsArchiveDefinition: - description: The definition of an archive. + x-pipeline-types: + - metrics + ObservabilityPipelineTagCardinalityLimitProcessor: + description: |- + The `tag_cardinality_limit` processor caps the number of distinct tag value combinations on metrics, dropping tags or events once the limit is exceeded. + + **Supported pipeline types:** metrics properties: - attributes: - $ref: '#/components/schemas/LogsArchiveAttributes' + display_name: + $ref: '#/components/schemas/ObservabilityPipelineComponentDisplayName' + enabled: + description: Indicates whether the processor is enabled. + example: true + type: boolean id: - description: The archive ID. - example: a2zcMylnM4OCHpYusxIi3g - readOnly: true + description: The unique identifier for this component. Used in other parts of the pipeline to reference this component (for example, as the `input` to downstream components). + example: tag-cardinality-limit-processor type: string - type: - default: archives - description: The type of the resource. The value should always be archives. - example: archives - readOnly: true + include: + description: A Datadog search query used to determine which metrics this processor targets. + example: '*' type: string + limit_exceeded_action: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorAction' + per_metric_limits: + description: A list of per-metric cardinality overrides that take precedence over the default `value_limit`. + items: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorPerMetricLimit' + maxItems: 100 + type: array + tracking_mode: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorTrackingMode' + type: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorType' + value_limit: + description: The default maximum number of distinct tag value combinations allowed per metric. + example: 10000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer required: + - id - type + - include + - limit_exceeded_action + - tracking_mode + - value_limit + - enabled type: object - LogsArchiveCreateRequestDefinition: - description: The definition of an archive. + x-pipeline-types: + - metrics + ObservabilityPipelineDatadogAgentSourceType: + default: datadog_agent + description: The source type. The value should always be `datadog_agent`. + enum: + - datadog_agent + example: datadog_agent + type: string + x-enum-varnames: + - DATADOG_AGENT + ObservabilityPipelineAmazonDataFirehoseSourceType: + default: amazon_data_firehose + description: The source type. The value should always be `amazon_data_firehose`. + enum: + - amazon_data_firehose + example: amazon_data_firehose + type: string + x-enum-varnames: + - AMAZON_DATA_FIREHOSE + ObservabilityPipelineAmazonS3SourceCompression: + description: Compression format for objects retrieved from the S3 bucket. Use `auto` to detect compression from the object's Content-Encoding header or file extension. + enum: + - auto + - none + - gzip + - zstd + example: gzip + type: string + x-enum-varnames: + - AUTO + - NONE + - GZIP + - ZSTD + ObservabilityPipelineAmazonS3SourceType: + default: amazon_s3 + description: The source type. Always `amazon_s3`. + enum: + - amazon_s3 + example: amazon_s3 + type: string + x-enum-varnames: + - AMAZON_S3 + ObservabilityPipelineMtlsServerTls: + description: Configuration for enabling TLS encryption between the pipeline component and external connecting clients. properties: - attributes: - $ref: '#/components/schemas/LogsArchiveCreateRequestAttributes' - type: - default: archives - description: The type of the resource. The value should always be archives. - example: archives + ca_file: + description: Path to the Certificate Authority (CA) file used to validate connecting clients' TLS certificates. + type: string + crt_file: + description: Path to the TLS server certificate file used to used to identify the pipeline component to connecting clients. + example: /path/to/cert.crt + type: string + key_file: + description: Path to the private key file associated with the TLS server certificate. + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: TLS_KEY_PASSPHRASE type: string + verify_certificate: + description: When `true`, requires client connections to present a valid certificate, enabling mutual TLS authentication. + type: boolean required: - - type + - crt_file type: object - RelationshipToRoleData: - description: Relationship to role object. + ObservabilityPipelineFluentBitSourceType: + default: fluent_bit + description: The source type. The value should always be `fluent_bit`. + enum: + - fluent_bit + example: fluent_bit + type: string + x-enum-varnames: + - FLUENT_BIT + ObservabilityPipelineFluentdSourceType: + default: fluentd + description: The source type. The value should always be `fluentd. + enum: + - fluentd + example: fluentd + type: string + x-enum-varnames: + - FLUENTD + ObservabilityPipelineDecoding: + description: The decoding format used to interpret incoming logs. + enum: + - bytes + - gelf + - json + - syslog + example: json + type: string + x-enum-varnames: + - DECODE_BYTES + - DECODE_GELF + - DECODE_JSON + - DECODE_SYSLOG + ObservabilityPipelineGooglePubSubSourceType: + default: google_pubsub + description: The source type. The value should always be `google_pubsub`. + enum: + - google_pubsub + example: google_pubsub + type: string + x-enum-varnames: + - GOOGLE_PUBSUB + ObservabilityPipelineHttpClientSourceAuthStrategy: + description: Optional authentication strategy for HTTP requests. + enum: + - none + - basic + - bearer + - custom + example: basic + type: string + x-enum-varnames: + - NONE + - BASIC + - BEARER + - CUSTOM + ObservabilityPipelineHttpClientSourceType: + default: http_client + description: The source type. The value should always be `http_client`. + enum: + - http_client + example: http_client + type: string + x-enum-varnames: + - HTTP_CLIENT + ObservabilityPipelineHttpServerSourceAuthStrategy: + description: HTTP authentication method. + enum: + - none + - plain + example: plain + type: string + x-enum-varnames: + - NONE + - PLAIN + ObservabilityPipelineHttpServerSourceType: + default: http_server + description: The source type. The value should always be `http_server`. + enum: + - http_server + example: http_server + type: string + x-enum-varnames: + - HTTP_SERVER + ObservabilityPipelineHttpServerSourceValidToken: + description: An accepted token used to authenticate incoming HTTP server requests. properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + enabled: + default: true + description: |- + Indicates whether this token is currently accepted. Disabled tokens are rejected without + being removed from the configuration. + example: true + type: boolean + field_to_add: + $ref: '#/components/schemas/ObservabilityPipelineSourceValidTokenFieldToAdd' + path_to_token: + $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceValidTokenPathToToken' + token_key: + description: Name of the environment variable or secret that holds the expected token value. + example: HTTP_SERVER_TOKEN + pattern: ^[A-Za-z0-9_]+$ type: string - type: - $ref: '#/components/schemas/RolesType' + required: + - token_key type: object - Role: - description: Role object returned by the API. + ObservabilityPipelineKafkaSourceType: + default: kafka + description: The source type. The value should always be `kafka`. + enum: + - kafka + example: kafka + type: string + x-enum-varnames: + - KAFKA + ObservabilityPipelineLogstashSourceType: + default: logstash + description: The source type. The value should always be `logstash`. + enum: + - logstash + example: logstash + type: string + x-enum-varnames: + - LOGSTASH + ObservabilityPipelineSyslogSourceMode: + description: Protocol used by the syslog source to receive messages. + enum: + - tcp + - udp + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + ObservabilityPipelineRsyslogSourceType: + default: rsyslog + description: The source type. The value should always be `rsyslog`. + enum: + - rsyslog + example: rsyslog + type: string + x-enum-varnames: + - RSYSLOG + ObservabilityPipelineSocketSourceFraming: + description: Framing method configuration for the socket source. properties: - attributes: - $ref: '#/components/schemas/RoleAttributes' - id: - description: The unique identifier of the role. + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod' + delimiter: + description: A single ASCII character used to delimit events. + example: '|' + maxLength: 1 + minLength: 1 type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' required: - - type + - method + - delimiter type: object - ResponseMetaAttributes: - description: Object describing meta attributes of response. + ObservabilityPipelineSocketSourceMode: + description: Protocol used to receive logs. + enum: + - tcp + - udp + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + ObservabilityPipelineSocketSourceType: + default: socket + description: The source type. The value should always be `socket`. + enum: + - socket + example: socket + type: string + x-enum-varnames: + - SOCKET + ObservabilityPipelineSplunkHecSourceType: + default: splunk_hec + description: The source type. Always `splunk_hec`. + enum: + - splunk_hec + example: splunk_hec + type: string + x-enum-varnames: + - SPLUNK_HEC + ObservabilityPipelineSplunkHecSourceValidToken: + description: An accepted HEC token used to authenticate incoming Splunk HEC requests. properties: - page: - $ref: '#/components/schemas/Pagination' + enabled: + default: true + description: |- + Indicates whether this token is currently accepted. Disabled tokens are rejected without + being removed from the configuration. + example: true + type: boolean + field_to_add: + $ref: '#/components/schemas/ObservabilityPipelineSourceValidTokenFieldToAdd' + token_key: + description: Name of the environment variable or secret that holds the expected HEC token value. + example: SPLUNK_HEC_TOKEN + pattern: ^[A-Za-z0-9_]+$ + type: string + required: + - token_key type: object - CustomDestinationResponseDefinition: - description: The definition of a custom destination. + ObservabilityPipelineSplunkTcpSourceType: + default: splunk_tcp + description: The source type. Always `splunk_tcp`. + enum: + - splunk_tcp + example: splunk_tcp + type: string + x-enum-varnames: + - SPLUNK_TCP + ObservabilityPipelineSumoLogicSourceType: + default: sumo_logic + description: The source type. The value should always be `sumo_logic`. + enum: + - sumo_logic + example: sumo_logic + type: string + x-enum-varnames: + - SUMO_LOGIC + ObservabilityPipelineSyslogNgSourceType: + default: syslog_ng + description: The source type. The value should always be `syslog_ng`. + enum: + - syslog_ng + example: syslog_ng + type: string + x-enum-varnames: + - SYSLOG_NG + ObservabilityPipelineWebsocketSourceAuthStrategy: + description: Authentication strategy for the WebSocket source connection. + enum: + - none + - basic + - bearer + - custom + example: bearer + type: string + x-enum-varnames: + - NONE + - BASIC + - BEARER + - CUSTOM + ObservabilityPipelineWebsocketSourceTls: + description: TLS configuration for the WebSocket source. Use `enabled` for standard `wss://` connections, or `with_client_cert` to present a client certificate for mutual TLS. + properties: + mode: + $ref: '#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabledMode' + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the remote server's TLS certificate. + example: /path/to/ca.crt + type: string + crt_file: + description: Path to the TLS client certificate file used to identify this source to the remote server. + example: /path/to/client.crt + type: string + key_file: + description: Path to the private key file associated with the client certificate. + example: /path/to/client.key + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: WS_TLS_KEY_PASSPHRASE + type: string + required: + - mode + - crt_file + type: object + ObservabilityPipelineWebsocketSourceType: + default: websocket + description: The source type. The value should always be `websocket`. + enum: + - websocket + example: websocket + type: string + x-enum-varnames: + - WEBSOCKET + ObservabilityPipelineOpentelemetrySourceType: + default: opentelemetry + description: The source type. The value should always be `opentelemetry`. + enum: + - opentelemetry + example: opentelemetry + type: string + x-enum-varnames: + - OPENTELEMETRY + CustomDestinationResponseHttpDestinationAuthBasicType: + default: basic + description: Type of the basic access authentication. + enum: + - basic + example: basic + type: string + x-enum-varnames: + - BASIC + CustomDestinationResponseHttpDestinationAuthCustomHeaderType: + default: custom_header + description: Type of the custom header access authentication. + enum: + - custom_header + example: custom_header + type: string + x-enum-varnames: + - CUSTOM_HEADER + CustomDestinationHttpDestinationAuthBasicType: + default: basic + description: Type of the basic access authentication. + enum: + - basic + example: basic + type: string + x-enum-varnames: + - BASIC + CustomDestinationHttpDestinationAuthCustomHeaderType: + default: custom_header + description: Type of the custom header access authentication. + enum: + - custom_header + example: custom_header + type: string + x-enum-varnames: + - CUSTOM_HEADER + ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy: + description: The authentication strategy to use. + enum: + - basic + - aws + example: aws + type: string + x-enum-varnames: + - BASIC + - AWS + ObservabilityPipelineDiskBufferOptions: + description: Options for configuring a disk buffer. properties: - attributes: - $ref: '#/components/schemas/CustomDestinationResponseAttributes' - id: - description: The custom destination ID. - example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 - readOnly: true - type: string + max_size: + description: Maximum size of the disk buffer. + example: 4096 + format: int64 + type: integer type: - $ref: '#/components/schemas/CustomDestinationType' + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsDiskType' + when_full: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull' + required: + - max_size type: object - CustomDestinationCreateRequestDefinition: - description: The definition of a custom destination. + ObservabilityPipelineMemoryBufferOptions: + description: Options for configuring a memory buffer by byte size. properties: - attributes: - $ref: '#/components/schemas/CustomDestinationCreateRequestAttributes' + max_size: + description: Maximum size of the memory buffer. + example: 4096 + format: int64 + type: integer type: - $ref: '#/components/schemas/CustomDestinationType' + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsMemoryType' + when_full: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull' required: - - type - - attributes + - max_size type: object - CustomDestinationUpdateRequestDefinition: - description: The definition of a custom destination. + ObservabilityPipelineMemoryBufferSizeOptions: + description: Options for configuring a memory buffer by queue length. properties: - attributes: - $ref: '#/components/schemas/CustomDestinationUpdateRequestAttributes' - id: - description: The custom destination ID. - example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 - type: string + max_events: + description: Maximum events for the memory buffer. + example: 500 + format: int64 + type: integer type: - $ref: '#/components/schemas/CustomDestinationType' + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsMemoryType' + when_full: + $ref: '#/components/schemas/ObservabilityPipelineBufferOptionsWhenFull' required: - - type - - id + - max_events type: object - LogsMetricResponseData: - description: The log-based metric properties. + ObservabilityPipelineElasticsearchDestinationCompressionAlgorithm: + description: The compression algorithm applied when sending data to Elasticsearch. + enum: + - none + - gzip + - zlib + - zstd + - snappy + example: gzip + type: string + x-enum-varnames: + - NONE + - GZIP + - ZLIB + - ZSTD + - SNAPPY + ObservabilityPipelineHttpClientDestinationCompressionAlgorithm: + description: Compression algorithm. + enum: + - gzip + example: gzip + type: string + x-enum-varnames: + - GZIP + ObservabilityPipelineAmazonS3GenericCompressionZstd: + description: Zstd compression. properties: - attributes: - $ref: '#/components/schemas/LogsMetricResponseAttributes' - id: - $ref: '#/components/schemas/LogsMetricID' - type: - $ref: '#/components/schemas/LogsMetricType' + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionZstdType' + level: + description: Zstd compression level. + example: 3 + format: int64 + type: integer + required: + - algorithm + - level type: object - LogsMetricCreateData: - description: The new log-based metric properties. + ObservabilityPipelineAmazonS3GenericCompressionGzip: + description: Gzip compression. properties: - attributes: - $ref: '#/components/schemas/LogsMetricCreateAttributes' - id: - $ref: '#/components/schemas/LogsMetricID' - type: - $ref: '#/components/schemas/LogsMetricType' + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionGzipType' + level: + description: Gzip compression level. + example: 6 + format: int64 + type: integer required: - - id - - type - - attributes + - algorithm + - level type: object - LogsMetricUpdateData: - description: The new log-based metric properties. + ObservabilityPipelineAmazonS3GenericCompressionSnappy: + description: Snappy compression. properties: - attributes: - $ref: '#/components/schemas/LogsMetricUpdateAttributes' - type: - $ref: '#/components/schemas/LogsMetricType' + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericCompressionSnappyType' required: - - type - - attributes + - algorithm type: object - Log: - description: Object description of a log after being processed and stored by Datadog. + ObservabilityPipelineAmazonS3GenericEncodingJson: + description: JSON encoding. properties: - attributes: - $ref: '#/components/schemas/LogAttributes' - id: - description: Unique ID of the Log. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string type: - $ref: '#/components/schemas/LogType' - type: object - LogsListResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/logs/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingJsonType' + required: + - type type: object - LogsListRequestPage: - description: Paging attributes for listing logs. + ObservabilityPipelineAmazonS3GenericEncodingParquet: + description: Parquet encoding. properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of logs in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer + type: + $ref: '#/components/schemas/ObservabilityPipelineAmazonS3GenericEncodingParquetType' + required: + - type type: object - LogsAggregationFunction: - description: An aggregation function + ObservabilityPipelineClickhouseDestinationAuthStrategy: + description: The authentication strategy for ClickHouse HTTP requests. Only `basic` is supported. enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 + - basic + example: basic type: string x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - LogsComputeType: - default: total - description: The type of compute + - BASIC + ObservabilityPipelineClickhouseDestinationBatchEncodingCodec: + description: The codec used for batch encoding. Only `arrow_stream` is supported. enum: - - timeseries - - total + - arrow_stream + example: arrow_stream type: string x-enum-varnames: - - TIMESERIES - - TOTAL - LogsGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - Note: at most 100 buckets are allowed, the number of buckets is (max - - min)/interval. + - ARROW_STREAM + ObservabilityPipelineClickhouseDestinationCompressionAlgorithm: + description: The compression algorithm applied to outbound HTTP requests. + enum: + - gzip + - none + example: gzip + type: string + x-enum-varnames: + - GZIP + - NONE + ObservabilityPipelineClickhouseDestinationCompressionObject: + description: |- + Structured compression configuration for the ClickHouse destination. + Use `algorithm` to specify the compression type and `level` (optional, gzip only) to control compression strength. properties: - interval: - description: The bin size of the histogram buckets - example: 10 - format: double - type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out) - example: 100 - format: double - type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out) - example: 50 - format: double - type: number + algorithm: + $ref: '#/components/schemas/ObservabilityPipelineClickhouseDestinationCompressionAlgorithm' + level: + description: Compression level (1–9). Only applicable when `algorithm` is `gzip`. + example: 6 + format: int64 + maximum: 9 + minimum: 1 + type: integer required: - - interval - - min - - max - type: object - LogsGroupByMissing: - description: The value to use for logs that don't have the facet used to group by - oneOf: - - $ref: '#/components/schemas/LogsGroupByMissingString' - - $ref: '#/components/schemas/LogsGroupByMissingNumber' - LogsAggregateSort: - description: A sort rule - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/LogsAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`) - example: '@duration' - type: string - order: - $ref: '#/components/schemas/LogsSortOrder' - type: - $ref: '#/components/schemas/LogsAggregateSortType' - type: object - LogsGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/LogsGroupByTotalBoolean' - - $ref: '#/components/schemas/LogsGroupByTotalString' - - $ref: '#/components/schemas/LogsGroupByTotalNumber' - LogsAggregateBucket: - description: A bucket values - properties: - by: - additionalProperties: - description: The values for each group by - description: The key, value pairs for each group by - example: - '@state': success - '@version': abc - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/LogsAggregateBucketValue' - description: >- - A map of the metric name -> value for regular compute or list of - values for a timeseries - type: object - type: object - LogsResponseMetadataPage: - description: Paging attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string + - algorithm type: object - LogsAggregateResponseStatus: - description: The status of the response + ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm: + description: Compression algorithm for log events. enum: - - done - - timeout - example: done + - gzip + - zlib + example: gzip type: string x-enum-varnames: - - DONE - - TIMEOUT - LogsWarning: - description: A warning message indicating something that went wrong with the query + - GZIP + - ZLIB + ObservabilityPipelineKafkaSaslMechanism: + description: SASL mechanism used for Kafka authentication. + enum: + - PLAIN + - SCRAM-SHA-256 + - SCRAM-SHA-512 + type: string + x-enum-varnames: + - PLAIN + - SCRAMNOT_SHANOT_256 + - SCRAMNOT_SHANOT_512 + ObservabilityPipelineSocketDestinationFramingNewlineDelimited: + description: Each log event is delimited by a newline character. properties: - code: - description: A unique code for this type of warning - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes - type: string + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod' + required: + - method + type: object + ObservabilityPipelineSocketDestinationFramingBytes: + description: Event data is not delimited at all. + properties: + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingBytesMethod' + required: + - method type: object - LogsArchiveOrderAttributes: - description: The attributes associated with the archive order. + ObservabilityPipelineSocketDestinationFramingCharacterDelimited: + description: Each log event is separated using the specified delimiter character. properties: - archive_ids: - description: >- - An ordered array of `` strings, the order of archive IDs - in the array - - define the overall archives order for Datadog. - example: - - a2zcMylnM4OCHpYusxIi1g - - a2zcMylnM4OCHpYusxIi2g - - a2zcMylnM4OCHpYusxIi3g - items: - description: A given archive ID. - type: string - type: array + delimiter: + description: A single ASCII character used as a delimiter. + example: '|' + maxLength: 1 + minLength: 1 + type: string + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod' required: - - archive_ids + - method + - delimiter type: object - LogsArchiveOrderDefinitionType: - default: archive_order - description: Type of the archive order definition. + ObservabilityPipelineFilterProcessorType: + default: filter + description: The processor type. The value should always be `filter`. enum: - - archive_order - example: archive_order + - filter + example: filter type: string x-enum-varnames: - - ARCHIVE_ORDER - LogsArchiveAttributes: - description: The attributes associated with the archive. + - FILTER + ObservabilityPipelineAddEnvVarsProcessorType: + default: add_env_vars + description: The processor type. The value should always be `add_env_vars`. + enum: + - add_env_vars + example: add_env_vars + type: string + x-enum-varnames: + - ADD_ENV_VARS + ObservabilityPipelineAddEnvVarsProcessorVariable: + description: Defines a mapping between an environment variable and a log field. properties: - destination: - $ref: '#/components/schemas/LogsArchiveDestination' - include_tags: - default: false - description: >- - To store the tags in the archive, set the value "true". - - If it is set to "false", the tags will be deleted when the logs are - sent to the archive. - example: false - type: boolean - name: - description: The archive name. - example: Nginx Archive + field: + description: The target field in the log event. + example: log.environment.region type: string - query: - description: >- - The archive query/filter. Logs matching this query are included in - the archive. - example: source:nginx + name: + description: The name of the environment variable to read. + example: AWS_REGION type: string - rehydration_max_scan_size_in_gb: - description: Maximum scan size for rehydration from this archive. - example: 100 - format: int64 - nullable: true - type: integer - rehydration_tags: - description: An array of tags to add to rehydrated logs from an archive. - example: - - team:intake - - team:app - items: - description: A given tag in the `:` format. - type: string - type: array - state: - $ref: '#/components/schemas/LogsArchiveState' required: + - field - name - - query - - destination type: object - LogsArchiveCreateRequestAttributes: - description: The attributes associated with the archive. + ObservabilityPipelineFieldValue: + description: Represents a static key-value pair used in various processors. properties: - destination: - $ref: '#/components/schemas/LogsArchiveCreateRequestDestination' - include_tags: - default: false - description: >- - To store the tags in the archive, set the value "true". - - If it is set to "false", the tags will be deleted when the logs are - sent to the archive. - example: false - type: boolean name: - description: The archive name. - example: Nginx Archive + description: The field name. + example: field_name type: string - query: - description: >- - The archive query/filter. Logs matching this query are included in - the archive. - example: source:nginx + value: + description: The field value. + example: field_value type: string - rehydration_max_scan_size_in_gb: - description: Maximum scan size for rehydration from this archive. - example: 100 - format: int64 - nullable: true - type: integer - rehydration_tags: - description: An array of tags to add to rehydrated logs from an archive. - example: - - team:intake - - team:app - items: - description: A given tag in the `:` format. - type: string - type: array required: - name - - query - - destination + - value type: object - RolesType: - default: roles - description: Roles type. + ObservabilityPipelineAddFieldsProcessorType: + default: add_fields + description: The processor type. The value should always be `add_fields`. enum: - - roles - example: roles + - add_fields + example: add_fields type: string x-enum-varnames: - - ROLES - RoleAttributes: - description: Attributes of the role. + - ADD_FIELDS + ObservabilityPipelineAddHostnameProcessorType: + default: add_hostname + description: The processor type. The value should always be `add_hostname`. + enum: + - add_hostname + example: add_hostname + type: string + x-enum-varnames: + - ADD_HOSTNAME + ObservabilityPipelineCustomProcessorRemap: + description: Defines a single VRL remap rule with its own filtering and transformation logic. properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true + drop_on_error: + description: Whether to drop events that caused errors during processing. + example: false + type: boolean + enabled: + description: Whether this remap rule is enabled. + example: true + type: boolean + include: + description: A Datadog search query used to filter events for this specific remap rule. + example: service:web type: string name: - description: >- - The name of the role. The name is neither unique nor a stable - identifier of the role. + description: A descriptive name for this remap rule. + example: Parse JSON from message field type: string - user_count: - description: Number of users with that role. - format: int64 - readOnly: true - type: integer - type: object - RoleResponseRelationships: - description: Relationships of the role object returned by the API. - properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' + source: + description: The VRL script source code that defines the processing logic. + example: . = parse_json!(.message) + type: string + required: + - include + - name + - source + - drop_on_error type: object - Pagination: - description: Pagination object. + ObservabilityPipelineCustomProcessorType: + default: custom_processor + description: The processor type. The value should always be `custom_processor`. + enum: + - custom_processor + example: custom_processor + type: string + x-enum-varnames: + - CUSTOM_PROCESSOR + ObservabilityPipelineDatadogTagsProcessorAction: + description: The action to take on tags with matching keys. + enum: + - include + - exclude + example: include + type: string + x-enum-varnames: + - INCLUDE + - EXCLUDE + ObservabilityPipelineDatadogTagsProcessorMode: + description: The processing mode. + enum: + - filter + example: filter + type: string + x-enum-varnames: + - FILTER + ObservabilityPipelineDatadogTagsProcessorType: + default: datadog_tags + description: The processor type. The value should always be `datadog_tags`. + enum: + - datadog_tags + example: datadog_tags + type: string + x-enum-varnames: + - DATADOG_TAGS + ObservabilityPipelineDedupeProcessorCache: + description: Configuration for the cache used to detect duplicates. properties: - total_count: - description: Total count. - format: int64 - type: integer - total_filtered_count: - description: Total count of elements matched by the filter. + num_events: + description: The number of events to cache for duplicate detection. + example: 5000 format: int64 + maximum: 1000000000 + minimum: 1 type: integer + required: + - num_events type: object - CustomDestinationResponseAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: >- - Whether logs matching this custom destination should be forwarded or - not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: >- - List of [keys of - tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be filtered. - - - An empty list represents no restriction is in place and either all - or no tags will be - - forwarded depending on `forward_tags_restriction_list_type` - parameter. - example: - - datacenter - - host - items: - description: >- - The [key part of a - tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: >- - #/components/schemas/CustomDestinationAttributeTagsRestrictionListType - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: >- - The custom destination query filter. Logs matching this query are - forwarded to the destination. - example: source:nginx - type: string - type: object - CustomDestinationType: - default: custom_destination - description: >- - The type of the resource. The value should always be - `custom_destination`. + ObservabilityPipelineDedupeProcessorMode: + description: The deduplication mode to apply to the fields. enum: - - custom_destination - example: custom_destination + - match + - ignore + example: match type: string x-enum-varnames: - - CUSTOM_DESTINATION - CustomDestinationCreateRequestAttributes: - description: The attributes associated with the custom destination. + - MATCH + - IGNORE + ObservabilityPipelineDedupeProcessorType: + default: dedupe + description: The processor type. The value should always be `dedupe`. + enum: + - dedupe + example: dedupe + type: string + x-enum-varnames: + - DEDUPE + ObservabilityPipelineEnrichmentTableFile: + description: Defines a static enrichment table loaded from a CSV file. properties: - enabled: - default: true - description: >- - Whether logs matching this custom destination should be forwarded or - not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: >- - List of [keys of - tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be filtered. - - - An empty list represents no restriction is in place and either all - or no tags will be - - forwarded depending on `forward_tags_restriction_list_type` - parameter. - example: - - datacenter - - host + encoding: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncoding' + key: + description: Key fields used to look up enrichment values. items: - description: >- - The [key part of a - tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItems' type: array - forward_tags_restriction_list_type: - $ref: >- - #/components/schemas/CustomDestinationAttributeTagsRestrictionListType - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: >- - The custom destination query and filter. Logs matching this query - are forwarded to the destination. - example: source:nginx + path: + description: Path to the CSV file. + example: /etc/enrichment/lookup.csv type: string + schema: + description: Schema defining column names and their types. + items: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItems' + type: array required: - - name - - forwarder_destination + - encoding + - key + - path + - schema type: object - CustomDestinationUpdateRequestAttributes: - description: The attributes associated with the custom destination. + ObservabilityPipelineEnrichmentTableGeoIp: + description: Uses a GeoIP database to enrich logs based on an IP field. properties: - enabled: - default: true - description: >- - Whether logs matching this custom destination should be forwarded or - not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: >- - List of [keys of - tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be restricted from being forwarded. - - An empty list represents no restriction is in place and either all - or no tags will be forwarded depending on - `forward_tags_restriction_list_type` parameter. - example: - - datacenter - - host + key_field: + description: Path to the IP field in the log. + example: log.source.ip + type: string + locale: + description: Locale used to resolve geographical names. + example: en + type: string + path: + description: Path to the GeoIP database file. + example: /etc/geoip/GeoLite2-City.mmdb + type: string + required: + - key_field + - locale + - path + type: object + ObservabilityPipelineEnrichmentTableReferenceTable: + description: Uses a Datadog reference table to enrich logs. + properties: + app_key_key: + description: Name of the environment variable or secret that holds the Datadog application key used to access the reference table. + example: DD_APP_KEY + type: string + columns: + description: List of column names to include from the reference table. If not provided, all columns are included. items: - description: >- - The [key part of a - tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). + description: The name of a column to include from the reference table. type: string - maxItems: 10 - minItems: 0 type: array - forward_tags_restriction_list_type: - $ref: >- - #/components/schemas/CustomDestinationAttributeTagsRestrictionListType - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationForwardDestination' - name: - description: The custom destination name. - example: Nginx logs + key_field: + description: Path to the field in the log event to match against the reference table. + example: log.user.id type: string - query: - default: '' - description: >- - The custom destination query and filter. Logs matching this query - are forwarded to the destination. - example: source:nginx + table_id: + description: The unique identifier of the reference table. + example: 550e8400-e29b-41d4-a716-446655440000 type: string + required: + - key_field + - table_id type: object - LogsMetricResponseAttributes: - description: The object describing a Datadog log-based metric. + ObservabilityPipelineEnrichmentTableProcessorType: + default: enrichment_table + description: The processor type. The value should always be `enrichment_table`. + enum: + - enrichment_table + example: enrichment_table + type: string + x-enum-varnames: + - ENRICHMENT_TABLE + ObservabilityPipelineGeneratedMetric: + description: |- + Defines a log-based custom metric, including its name, type, filter, value computation strategy, + and optional grouping fields. properties: - compute: - $ref: '#/components/schemas/LogsMetricResponseCompute' - filter: - $ref: '#/components/schemas/LogsMetricResponseFilter' group_by: - description: The rules for the group by. + description: Optional fields used to group the metric series. + example: + - service + - env items: - $ref: '#/components/schemas/LogsMetricResponseGroupBy' + description: A log field name used to group the metric series. + type: string type: array + include: + description: Datadog filter query to match logs for metric generation. + example: service:billing + type: string + metric_type: + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricMetricType' + name: + description: Name of the custom metric to be created. + example: logs.processed + type: string + value: + $ref: '#/components/schemas/ObservabilityPipelineMetricValue' + required: + - name + - include + - metric_type + - value type: object - LogsMetricID: - description: The name of the log-based metric. - example: logs.page.load.count + ObservabilityPipelineGenerateMetricsProcessorType: + default: generate_datadog_metrics + description: The processor type. Always `generate_datadog_metrics`. + enum: + - generate_datadog_metrics + example: generate_datadog_metrics type: string - LogsMetricType: - default: logs_metrics - description: The type of the resource. The value should always be logs_metrics. + x-enum-varnames: + - GENERATE_DATADOG_METRICS + ObservabilityPipelineGenerateMetricsV2ProcessorType: + default: generate_metrics + description: The processor type. Always `generate_metrics`. enum: - - logs_metrics - example: logs_metrics + - generate_metrics + example: generate_metrics type: string x-enum-varnames: - - LOGS_METRICS - LogsMetricCreateAttributes: - description: The object describing the Datadog log-based metric to create. + - GENERATE_METRICS + ObservabilityPipelineOcsfMapperProcessorMapping: + description: Defines how specific events are transformed to OCSF using a mapping configuration. properties: - compute: - $ref: '#/components/schemas/LogsMetricCompute' - filter: - $ref: '#/components/schemas/LogsMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricGroupBy' - type: array + include: + description: A Datadog search query used to select the logs that this mapping should apply to. + example: service:my-service + type: string + mapping: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorMappingMapping' required: - - compute + - include + - mapping type: object - LogsMetricUpdateAttributes: - description: The log-based metric properties that will be updated. + ObservabilityPipelineOcsfMapperProcessorType: + default: ocsf_mapper + description: The processor type. The value should always be `ocsf_mapper`. + enum: + - ocsf_mapper + example: ocsf_mapper + type: string + x-enum-varnames: + - OCSF_MAPPER + ObservabilityPipelineParseGrokProcessorRuleItem: + description: A single Grok parsing rule, selected by either source field or include query. properties: - compute: - $ref: '#/components/schemas/LogsMetricUpdateCompute' - filter: - $ref: '#/components/schemas/LogsMetricFilter' - group_by: - description: The rules for the group by. + match_rules: + description: |- + A list of Grok parsing rules that define how to extract fields from the source field. + Each rule must contain a name and a valid Grok pattern. + example: + - name: MyParsingRule + rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' items: - $ref: '#/components/schemas/LogsMetricGroupBy' + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule' type: array - type: object - LogAttributes: - description: JSON object containing all log attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from your log. - example: - customAttribute: 123 - duration: 2345 - type: object - host: - description: Name of the machine from where the logs are being sent. - example: i-0123 - type: string - message: - description: >- - The message [reserved - attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) - - of your log. By default, Datadog ingests the value of the message - attribute as the body of the log entry. - - That value is then highlighted and displayed in the Logstream, where - it is indexed for full text search. - example: Host connected to remote - type: string - service: - description: >- - The name of the application or service generating the log events. - - It is used to switch from Logs to APM, so make sure you define the - same - - value when you use both products. - example: agent - type: string - status: - description: Status of the message associated with your log. - example: INFO + source: + description: The value of the source field in log events to be processed by the Grok rules. + example: message type: string - tags: - description: Array of tags associated with your log. + support_rules: + description: A list of Grok helper rules that can be referenced by the parsing rules. example: - - team:A + - name: user + rule: '%{word:user.name}' items: - description: Tag associated with your log. - type: string + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule' type: array - timestamp: - description: Timestamp of your log. - example: '2019-01-02T09:42:36.320Z' - format: date-time + include: + description: A Datadog search query used to determine which logs this Grok rule targets. + example: service:my-service type: string + required: + - source + - match_rules + - include type: object - LogType: - default: log - description: Type of the event. + ObservabilityPipelineParseGrokProcessorType: + default: parse_grok + description: The processor type. The value should always be `parse_grok`. enum: - - log - example: log + - parse_grok + example: parse_grok type: string x-enum-varnames: - - LOG - LogsGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - LogsGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - LogsSortOrder: - description: The order to use, ascending or descending + - PARSE_GROK + ObservabilityPipelineParseJSONProcessorType: + default: parse_json + description: The processor type. The value should always be `parse_json`. enum: - - asc - - desc - example: asc + - parse_json + example: parse_json type: string x-enum-varnames: - - ASCENDING - - DESCENDING - LogsAggregateSortType: - default: alphabetical - description: The type of sorting algorithm + - PARSE_JSON + ObservabilityPipelineParseXMLProcessorType: + default: parse_xml + description: The processor type. The value should always be `parse_xml`. enum: - - alphabetical - - measure + - parse_xml + example: parse_xml type: string x-enum-varnames: - - ALPHABETICAL - - MEASURE - LogsGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total" - type: boolean - LogsGroupByTotalString: - description: A string to use as the key value for the total bucket - type: string - LogsGroupByTotalNumber: - description: A number to use as the key value for the total bucket - format: double - type: number - LogsAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value - oneOf: - - $ref: '#/components/schemas/LogsAggregateBucketValueSingleString' - - $ref: '#/components/schemas/LogsAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/LogsAggregateBucketValueTimeseries' - LogsArchiveDestination: - description: An archive's destination. - nullable: true - oneOf: - - $ref: '#/components/schemas/LogsArchiveDestinationAzure' - - $ref: '#/components/schemas/LogsArchiveDestinationGCS' - - $ref: '#/components/schemas/LogsArchiveDestinationS3' + - PARSE_XML + ObservabilityPipelineQuotaProcessorLimit: + description: The maximum amount of data or number of events allowed before the quota is enforced. Can be specified in bytes or events. + properties: + enforce: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimitEnforceType' + limit: + description: The limit for quota enforcement. + example: 1000 + format: int64 + type: integer + required: + - enforce + - limit type: object - LogsArchiveState: - description: The state of the archive. + ObservabilityPipelineQuotaProcessorOverflowAction: + description: |- + The action to take when the quota or bucket limit is exceeded. Options: + - `drop`: Drop the event. + - `no_action`: Let the event pass through. + - `overflow_routing`: Route to an overflow destination. enum: - - UNKNOWN - - WORKING - - FAILING - - WORKING_AUTH_LEGACY - example: WORKING + - drop + - no_action + - overflow_routing + example: drop type: string x-enum-varnames: - - UNKNOWN - - WORKING - - FAILING - - WORKING_AUTH_LEGACY - LogsArchiveCreateRequestDestination: - description: An archive's destination. - oneOf: - - $ref: '#/components/schemas/LogsArchiveDestinationAzure' - - $ref: '#/components/schemas/LogsArchiveDestinationGCS' - - $ref: '#/components/schemas/LogsArchiveDestinationS3' - RelationshipToPermissions: - description: Relationship to multiple permissions objects. + - DROP + - NO_ACTION + - OVERFLOW_ROUTING + ObservabilityPipelineQuotaProcessorOverride: + description: Defines a custom quota limit that applies to specific log events based on matching field values. properties: - data: - description: Relationships to permission objects. + fields: + description: A list of field matchers used to apply a specific override. If an event matches all listed key-value pairs, the corresponding override limit is enforced. items: - $ref: '#/components/schemas/RelationshipToPermissionData' + $ref: '#/components/schemas/ObservabilityPipelineFieldValue' type: array + limit: + $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' + required: + - fields + - limit type: object - CustomDestinationAttributeTagsRestrictionListType: - default: ALLOW_LIST - description: >- - How `forward_tags_restriction_list` parameter should be interpreted. - - If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match - the ones on the restriction list - - are forwarded. - - - `BLOCK_LIST` works the opposite way. It does not forward the tags - matching the ones on the list. + ObservabilityPipelineQuotaProcessorType: + default: quota + description: The processor type. The value should always be `quota`. enum: - - ALLOW_LIST - - BLOCK_LIST - example: ALLOW_LIST + - quota + example: quota type: string x-enum-varnames: - - ALLOW_LIST - - BLOCK_LIST - CustomDestinationResponseForwardDestination: - description: A custom destination's location to forward logs. - oneOf: - - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttp' - - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationSplunk - - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationElasticsearch - - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinel - CustomDestinationForwardDestination: - description: A custom destination's location to forward logs. - oneOf: - - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttp' - - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunk' - - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationElasticsearch - - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinel - LogsMetricResponseCompute: - description: The compute rule to compute the log-based metric. + - QUOTA + ObservabilityPipelineReduceProcessorMergeStrategy: + description: Defines how a specific field should be merged across grouped events. properties: - aggregation_type: - $ref: '#/components/schemas/LogsMetricResponseComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' path: - description: >- - The path to the value the log-based metric will aggregate on (only - used if the aggregation type is a "distribution"). - example: '@duration' - type: string - type: object - LogsMetricResponseFilter: - description: >- - The log-based metric filter. Logs matching this filter will be - aggregated in this metric. - properties: - query: - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] + description: The field path in the log event. + example: log.user.roles type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategyStrategy' + required: + - path + - strategy type: object - LogsMetricResponseGroupBy: - description: A group by rule. + ObservabilityPipelineReduceProcessorType: + default: reduce + description: The processor type. The value should always be `reduce`. + enum: + - reduce + example: reduce + type: string + x-enum-varnames: + - REDUCE + ObservabilityPipelineRemoveFieldsProcessorType: + default: remove_fields + description: The processor type. The value should always be `remove_fields`. + enum: + - remove_fields + example: remove_fields + type: string + x-enum-varnames: + - REMOVE_FIELDS + ObservabilityPipelineRenameFieldsProcessorField: + description: Defines how to rename a field in log events. properties: - path: - description: The path to the value the log-based metric will be aggregated over. - example: '@http.status_code' - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. - example: status_code + destination: + description: The field name to assign the renamed value to. + example: destination_field type: string - type: object - LogsMetricCompute: - description: The compute rule to compute the log-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/LogsMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - path: - description: >- - The path to the value the log-based metric will aggregate on (only - used if the aggregation type is a "distribution"). - example: '@duration' + preserve_source: + description: Indicates whether the original field, that is received from the source, should be kept (`true`) or removed (`false`) after renaming. + example: false + type: boolean + source: + description: The original field name in the log event that should be renamed. + example: source_field type: string required: - - aggregation_type + - source + - destination + - preserve_source type: object - LogsMetricFilter: - description: >- - The log-based metric filter. Logs matching this filter will be - aggregated in this metric. + ObservabilityPipelineRenameFieldsProcessorType: + default: rename_fields + description: The processor type. The value should always be `rename_fields`. + enum: + - rename_fields + example: rename_fields + type: string + x-enum-varnames: + - RENAME_FIELDS + ObservabilityPipelineSampleProcessorType: + default: sample + description: The processor type. The value should always be `sample`. + enum: + - sample + example: sample + type: string + x-enum-varnames: + - SAMPLE + ObservabilityPipelineSensitiveDataScannerProcessorRule: + description: Defines a rule for detecting sensitive data, including matching pattern, scope, and the action to take. properties: - query: - default: '*' - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] + keyword_options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions' + name: + description: A name identifying the rule. + example: Redact Credit Card Numbers type: string + on_match: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorAction' + pattern: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorPattern' + scope: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScope' + tags: + description: Tags assigned to this rule for filtering and classification. + example: + - pii + - ccn + items: + description: A tag string used to classify and filter this sensitive data rule. + type: string + type: array + required: + - name + - pattern + - scope + - on_match type: object - LogsMetricGroupBy: - description: A group by rule. + ObservabilityPipelineSensitiveDataScannerProcessorType: + default: sensitive_data_scanner + description: The processor type. The value should always be `sensitive_data_scanner`. + enum: + - sensitive_data_scanner + example: sensitive_data_scanner + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER + ObservabilityPipelineSplitArrayProcessorArrayConfig: + description: Configuration for a single array split operation. properties: - path: - description: The path to the value the log-based metric will be aggregated over. - example: '@http.status_code' + field: + description: The path to the array field to split. + example: tags type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. - example: status_code + include: + description: A Datadog search query used to determine which logs this array split operation targets. + example: '*' type: string required: - - path + - include + - field type: object - LogsMetricUpdateCompute: - description: The compute rule to compute the log-based metric. + ObservabilityPipelineSplitArrayProcessorType: + default: split_array + description: The processor type. The value should always be `split_array`. + enum: + - split_array + example: split_array + type: string + x-enum-varnames: + - SPLIT_ARRAY + ObservabilityPipelineThrottleProcessorType: + default: throttle + description: The processor type. The value should always be `throttle`. + enum: + - throttle + example: throttle + type: string + x-enum-varnames: + - THROTTLE + ObservabilityPipelineAddMetricTagsProcessorType: + default: add_metric_tags + description: The processor type. The value must be `add_metric_tags`. + enum: + - add_metric_tags + example: add_metric_tags + type: string + x-enum-varnames: + - ADD_METRIC_TAGS + ObservabilityPipelineAggregateProcessorMode: + description: The aggregation mode applied to metrics that share the same name and tags within the interval. + enum: + - auto + - sum + - latest + - count + - max + - min + - mean + example: auto + type: string + x-enum-varnames: + - AUTO + - SUM + - LATEST + - COUNT + - MAX + - MIN + - MEAN + ObservabilityPipelineAggregateProcessorType: + default: aggregate + description: The processor type. The value must be `aggregate`. + enum: + - aggregate + example: aggregate + type: string + x-enum-varnames: + - AGGREGATE + ObservabilityPipelineMetricTagsProcessorRule: + description: Defines a rule for filtering metric tags based on key patterns. properties: - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' + action: + $ref: '#/components/schemas/ObservabilityPipelineMetricTagsProcessorRuleAction' + include: + description: A Datadog search query used to determine which metrics this rule targets. + example: '*' + type: string + keys: + description: A list of tag keys to include or exclude. + example: + - env + - service + - version + items: + description: A metric tag key to include or exclude based on the action. + type: string + type: array + mode: + $ref: '#/components/schemas/ObservabilityPipelineMetricTagsProcessorRuleMode' + required: + - include + - mode + - action + - keys type: object - LogsAggregateBucketValueSingleString: - description: A single string value + ObservabilityPipelineMetricTagsProcessorType: + default: metric_tags + description: The processor type. The value should always be `metric_tags`. + enum: + - metric_tags + example: metric_tags type: string - LogsAggregateBucketValueSingleNumber: - description: A single number value - format: double - type: number - LogsAggregateBucketValueTimeseries: - description: A timeseries array - items: - $ref: '#/components/schemas/LogsAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - LogsArchiveDestinationAzure: - description: The Azure archive destination. + x-enum-varnames: + - METRIC_TAGS + ObservabilityPipelineRenameMetricTagsProcessorTag: + description: Defines how to rename a tag on metric events. properties: - container: - description: The container where the archive will be stored. - example: container-name - type: string - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationAzure' - path: - description: The archive path. + rename_to: + description: The new tag key to assign in place of the original. + example: destination_tag type: string - region: - description: The region where the archive will be stored. - type: string - storage_account: - description: The associated storage account. - example: account-name + tag: + description: The original tag key on the metric event. + example: source_tag type: string - type: - $ref: '#/components/schemas/LogsArchiveDestinationAzureType' required: - - storage_account - - container - - integration - - type + - tag + - rename_to type: object - LogsArchiveDestinationGCS: - description: The GCS archive destination. + ObservabilityPipelineRenameMetricTagsProcessorType: + default: rename_metric_tags + description: The processor type. The value must be `rename_metric_tags`. + enum: + - rename_metric_tags + example: rename_metric_tags + type: string + x-enum-varnames: + - RENAME_METRIC_TAGS + ObservabilityPipelineTagCardinalityLimitProcessorAction: + description: The action to take when the cardinality limit is exceeded. + enum: + - drop_tag + - drop_event + example: drop_tag + type: string + x-enum-varnames: + - DROP_TAG + - DROP_EVENT + ObservabilityPipelineTagCardinalityLimitProcessorPerMetricLimit: + description: A cardinality override applied to a specific metric. properties: - bucket: - description: The bucket where the archive will be stored. - example: bucket-name - type: string - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationGCS' - path: - description: The archive path. + limit_exceeded_action: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorAction' + metric_name: + description: The name of the metric this override applies to. + example: system.cpu.user type: string - type: - $ref: '#/components/schemas/LogsArchiveDestinationGCSType' + override_type: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorOverrideType' + per_tag_limits: + description: A list of per-tag cardinality overrides that apply within this metric. Must be omitted when `override_type` is `excluded`. + items: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorPerTagLimit' + maxItems: 50 + type: array + value_limit: + description: The maximum number of distinct tag value combinations allowed for this metric. Required when `override_type` is `limit_override`. Must be omitted when `override_type` is `excluded`. + example: 10000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer required: - - bucket - - integration - - type + - metric_name + - override_type type: object - LogsArchiveDestinationS3: - description: The S3 archive destination. + ObservabilityPipelineTagCardinalityLimitProcessorTrackingMode: + description: Controls whether the processor uses exact or probabilistic tag tracking. properties: - bucket: - description: The bucket where the archive will be stored. - example: bucket-name - type: string - encryption: - $ref: '#/components/schemas/LogsArchiveEncryptionS3' - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationS3' - path: - description: The archive path. - type: string - storage_class: - $ref: '#/components/schemas/LogsArchiveStorageClassS3Type' - type: - $ref: '#/components/schemas/LogsArchiveDestinationS3Type' + mode: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorTrackingModeMode' required: - - bucket - - integration - - type + - mode type: object - RelationshipToPermissionData: - description: Relationship to permission object. + ObservabilityPipelineTagCardinalityLimitProcessorType: + default: tag_cardinality_limit + description: The processor type. The value must be `tag_cardinality_limit`. + enum: + - tag_cardinality_limit + example: tag_cardinality_limit + type: string + x-enum-varnames: + - TAG_CARDINALITY_LIMIT + ObservabilityPipelineSourceValidTokenFieldToAdd: + description: |- + An optional metadata field that is attached to every event authenticated by the + associated token. Both `key` and `value` must match `^[A-Za-z0-9_]+$`. properties: - id: - description: ID of the permission. + key: + description: The metadata field name to add to incoming events. + example: token_name + maxLength: 256 + pattern: ^[A-Za-z0-9_]+$ type: string - type: - $ref: '#/components/schemas/PermissionsType' + value: + description: The metadata field value to add to incoming events. + example: my_token + maxLength: 1024 + pattern: ^[A-Za-z0-9_]+$ + type: string + required: + - key + - value type: object - CustomDestinationResponseForwardDestinationHttp: - description: The HTTP destination. + ObservabilityPipelineHttpServerSourceValidTokenPathToToken: + description: |- + Specifies where the worker extracts the token from in the incoming HTTP request. + This can be either a built-in location (`path` or `address`) or an HTTP header object. + enum: + - path + - address + example: path + type: string + x-enum-varnames: + - PATH + - ADDRESS properties: - auth: - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuth' - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com + header: + description: The name of the HTTP header that carries the token. + example: X-Token type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationHttpType required: - - type - - endpoint - - auth + - header + ObservabilityPipelineSocketSourceFramingNewlineDelimited: + description: Byte frames which are delimited by a newline character. + properties: + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod' + required: + - method type: object - CustomDestinationResponseForwardDestinationSplunk: - description: The Splunk HTTP Event Collector (HEC) destination. + ObservabilityPipelineSocketSourceFramingBytes: + description: Byte frames are passed through as-is according to the underlying I/O boundaries (for example, split between messages or stream segments). properties: - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationSplunkType + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingBytesMethod' required: - - type - - endpoint + - method type: object - CustomDestinationResponseForwardDestinationElasticsearch: - description: The Elasticsearch destination. + ObservabilityPipelineSocketSourceFramingCharacterDelimited: + description: Byte frames which are delimited by a chosen character. properties: - auth: - $ref: >- - #/components/schemas/CustomDestinationResponseElasticsearchDestinationAuth - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - index_name: - description: >- - Name of the Elasticsearch index (must follow [Elasticsearch's - criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). - example: nginx-logs - type: string - index_rotation: - description: >- - Date pattern with US locale and UTC timezone to be appended to the - index name after adding `-` - - (that is, `${index_name}-${indexPattern}`). - - You can customize the index rotation naming pattern by choosing one - of these options: - - - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: - `2022-10-19-09`) - - - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) - - - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) - - - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) - - - If this field is missing or is blank, it means that the index name - will always be the same - - (that is, no rotation). - example: yyyy-MM-dd + delimiter: + description: A single ASCII character used to delimit events. + example: '|' + maxLength: 1 + minLength: 1 type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationElasticsearchType + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod' required: - - type - - endpoint - - auth - - index_name + - method + - delimiter type: object - CustomDestinationResponseForwardDestinationMicrosoftSentinel: - description: The Microsoft Sentinel destination. + ObservabilityPipelineSocketSourceFramingOctetCounting: + description: Byte frames according to the octet counting format as per RFC6587. properties: - client_id: - description: Client ID from the Datadog Azure integration. - example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 - type: string - data_collection_endpoint: - description: Azure data collection endpoint. - example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com - type: string - data_collection_rule_id: - description: Azure data collection rule ID. - example: dcr-000a00a000a00000a000000aa000a0aa - type: string - stream_name: - description: Azure stream name. - example: Custom-MyTable - type: string - writeOnly: true - tenant_id: - description: Tenant ID from the Datadog Azure integration. - example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinelType + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCountingMethod' required: - - type - - tenant_id - - client_id - - data_collection_endpoint - - data_collection_rule_id - - stream_name + - method type: object - CustomDestinationForwardDestinationHttp: - description: The HTTP destination. + ObservabilityPipelineSocketSourceFramingChunkedGelf: + description: Byte frames which are chunked GELF messages. properties: - auth: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuth' - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttpType' + method: + $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelfMethod' required: - - type - - endpoint - - auth + - method type: object - CustomDestinationForwardDestinationSplunk: - description: The Splunk HTTP Event Collector (HEC) destination. + ObservabilityPipelineWebsocketSourceTlsEnabled: + description: TLS configuration that enables encryption without a client certificate. Use this for standard `wss://` connections that do not require mutual TLS. + properties: + mode: + $ref: '#/components/schemas/ObservabilityPipelineWebsocketSourceTlsEnabledMode' + required: + - mode + type: object + ObservabilityPipelineWebsocketSourceTlsWithClientCert: + description: TLS configuration that enables encryption and presents a client certificate for mutual TLS authentication. properties: - access_token: - description: >- - Access token of the Splunk HTTP Event Collector. This field is not - returned by the API. - example: splunk_access_token + ca_file: + description: Path to the Certificate Authority (CA) file used to validate the remote server's TLS certificate. + example: /path/to/ca.crt type: string - writeOnly: true - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com + crt_file: + description: Path to the TLS client certificate file used to identify this source to the remote server. + example: /path/to/client.crt type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunkType' + key_file: + description: Path to the private key file associated with the client certificate. + example: /path/to/client.key + type: string + key_pass_key: + description: Name of the environment variable or secret that holds the passphrase for the private key file. + example: WS_TLS_KEY_PASSPHRASE + type: string + mode: + $ref: '#/components/schemas/ObservabilityPipelineWebsocketSourceTlsWithClientCertMode' required: - - type - - endpoint - - access_token + - mode + - crt_file type: object - CustomDestinationForwardDestinationElasticsearch: - description: The Elasticsearch destination. + ObservabilityPipelineBufferOptionsDiskType: + default: disk + description: The type of the buffer that will be configured, a disk buffer. + enum: + - disk + type: string + x-enum-varnames: + - DISK + ObservabilityPipelineBufferOptionsWhenFull: + default: block + description: Behavior when the buffer is full (block and stop accepting new events, or drop new events) + enum: + - block + - drop_newest + type: string + x-enum-varnames: + - BLOCK + - DROP_NEWEST + ObservabilityPipelineBufferOptionsMemoryType: + default: memory + description: The type of the buffer that will be configured, a memory buffer. + enum: + - memory + type: string + x-enum-varnames: + - MEMORY + ObservabilityPipelineAmazonS3GenericCompressionZstdType: + default: zstd + description: The compression type. Always `zstd`. + enum: + - zstd + example: zstd + type: string + x-enum-varnames: + - ZSTD + ObservabilityPipelineAmazonS3GenericCompressionGzipType: + default: gzip + description: The compression type. Always `gzip`. + enum: + - gzip + example: gzip + type: string + x-enum-varnames: + - GZIP + ObservabilityPipelineAmazonS3GenericCompressionSnappyType: + default: snappy + description: The compression type. Always `snappy`. + enum: + - snappy + example: snappy + type: string + x-enum-varnames: + - SNAPPY + ObservabilityPipelineAmazonS3GenericEncodingJsonType: + default: json + description: The encoding type. Always `json`. + enum: + - json + example: json + type: string + x-enum-varnames: + - JSON + ObservabilityPipelineAmazonS3GenericEncodingParquetType: + default: parquet + description: The encoding type. Always `parquet`. + enum: + - parquet + example: parquet + type: string + x-enum-varnames: + - PARQUET + ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod: + description: The definition of `ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod` object. + enum: + - newline_delimited + example: newline_delimited + type: string + x-enum-varnames: + - NEWLINE_DELIMITED + ObservabilityPipelineSocketDestinationFramingBytesMethod: + description: The definition of `ObservabilityPipelineSocketDestinationFramingBytesMethod` object. + enum: + - bytes + example: bytes + type: string + x-enum-varnames: + - BYTES + ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod: + description: The definition of `ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod` object. + enum: + - character_delimited + example: character_delimited + type: string + x-enum-varnames: + - CHARACTER_DELIMITED + ObservabilityPipelineEnrichmentTableFileEncoding: + description: File encoding format. properties: - auth: - $ref: '#/components/schemas/CustomDestinationElasticsearchDestinationAuth' - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - index_name: - description: >- - Name of the Elasticsearch index (must follow [Elasticsearch's - criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). - example: nginx-logs - type: string - index_rotation: - description: >- - Date pattern with US locale and UTC timezone to be appended to the - index name after adding `-` - - (that is, `${index_name}-${indexPattern}`). - - You can customize the index rotation naming pattern by choosing one - of these options: - - - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: - `2022-10-19-09`) - - - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) - - - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) - - - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) - - - If this field is missing or is blank, it means that the index name - will always be the same - - (that is, no rotation). - example: yyyy-MM-dd + delimiter: + description: The `encoding` `delimiter`. + example: ',' type: string + includes_headers: + description: The `encoding` `includes_headers`. + example: true + type: boolean type: - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationElasticsearchType + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileEncodingType' required: - type - - endpoint - - auth - - index_name + - delimiter + - includes_headers type: object - CustomDestinationForwardDestinationMicrosoftSentinel: - description: The Microsoft Sentinel destination. + ObservabilityPipelineEnrichmentTableFileKeyItems: + description: Defines how to map log fields to enrichment table columns during lookups. properties: - client_id: - description: Client ID from the Datadog Azure integration. - example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 - type: string - data_collection_endpoint: - description: Azure data collection endpoint. - example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com - type: string - data_collection_rule_id: - description: Azure data collection rule ID. - example: dcr-000a00a000a00000a000000aa000a0aa + column: + description: The `items` `column`. + example: user_id type: string - stream_name: - description: Azure stream name. - example: Custom-MyTable - type: string - writeOnly: true - tenant_id: - description: Tenant ID from the Datadog Azure integration. - example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 + comparison: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison' + field: + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemField' + required: + - column + - comparison + - field + type: object + ObservabilityPipelineEnrichmentTableFileSchemaItems: + description: Describes a single column and its type in an enrichment table schema. + properties: + column: + description: The `items` `column`. + example: region type: string type: - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinelType + $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItemsType' required: + - column - type - - tenant_id - - client_id - - data_collection_endpoint - - data_collection_rule_id - - stream_name type: object - LogsMetricResponseComputeAggregationType: - description: The type of aggregation to use. + ObservabilityPipelineGeneratedMetricMetricType: + description: Type of metric to create. enum: - count + - gauge - distribution - example: distribution + example: count type: string x-enum-varnames: - COUNT + - GAUGE - DISTRIBUTION - LogsMetricComputeIncludePercentiles: - description: >- - Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when the `aggregation_type` is `distribution`. - example: true - type: boolean - LogsMetricComputeAggregationType: - description: The type of aggregation to use. + ObservabilityPipelineMetricValue: + description: Specifies how the value of the generated metric is computed. + properties: + strategy: + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOneStrategy' + field: + description: Name of the log field containing the numeric value to increment the metric by. + example: errors + type: string + required: + - strategy + - field + type: object + ObservabilityPipelineOcsfMapperProcessorMappingMapping: + description: Defines a single mapping rule for transforming logs into the OCSF schema. + example: CloudTrail Account Change enum: - - count - - distribution - example: distribution + - CloudTrail Account Change + - GCP Cloud Audit CreateBucket + - GCP Cloud Audit CreateSink + - GCP Cloud Audit SetIamPolicy + - GCP Cloud Audit UpdateSink + - Github Audit Log API Activity + - Google Workspace Admin Audit addPrivilege + - Microsoft 365 Defender Incident + - Microsoft 365 Defender UserLoggedIn + - Okta System Log Authentication + - Palo Alto Networks Firewall Traffic type: string x-enum-varnames: - - COUNT - - DISTRIBUTION - LogsAggregateBucketValueTimeseriesPoint: - description: A timeseries point + - CLOUDTRAIL_ACCOUNT_CHANGE + - GCP_CLOUD_AUDIT_CREATEBUCKET + - GCP_CLOUD_AUDIT_CREATESINK + - GCP_CLOUD_AUDIT_SETIAMPOLICY + - GCP_CLOUD_AUDIT_UPDATESINK + - GITHUB_AUDIT_LOG_API_ACTIVITY + - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE + - MICROSOFT_365_DEFENDER_INCIDENT + - MICROSOFT_365_DEFENDER_USERLOGGEDIN + - OKTA_SYSTEM_LOG_AUTHENTICATION + - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC properties: - time: - description: The time value for this point - example: '2020-06-08T11:55:00Z' + mapping: + description: A list of field mapping rules for transforming log fields to OCSF schema fields. + items: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingCustomFieldMapping' + type: array + metadata: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingCustomMetadata' + version: + description: The version of the custom mapping configuration. + example: 1 + format: int64 + type: integer + required: + - mapping + - metadata + - version + ObservabilityPipelineParseGrokProcessorRule: + description: |- + A Grok parsing rule used in the `parse_grok` processor. Each rule defines how to extract structured fields + from a specific log field using Grok patterns. + properties: + match_rules: + description: |- + A list of Grok parsing rules that define how to extract fields from the source field. + Each rule must contain a name and a valid Grok pattern. + example: + - name: MyParsingRule + rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' + items: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule' + type: array + source: + description: The value of the source field in log events to be processed by the Grok rules. + example: message type: string - value: - description: The value for this point - example: 19 - format: double - type: number + support_rules: + description: A list of Grok helper rules that can be referenced by the parsing rules. + example: + - name: user + rule: '%{word:user.name}' + items: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule' + type: array + required: + - source + - match_rules type: object - LogsArchiveIntegrationAzure: - description: The Azure archive's integration destination. + ObservabilityPipelineParseGrokProcessorIncludeRule: + description: |- + A Grok parsing rule selected using the `include` query. Each rule defines how to extract structured fields + from logs matching a Datadog search query. properties: - client_id: - description: A client ID. - example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa - type: string - tenant_id: - description: A tenant ID. - example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa + include: + description: A Datadog search query used to determine which logs this Grok rule targets. + example: service:my-service type: string + match_rules: + description: |- + A list of Grok parsing rules that define how to extract fields from matching logs. + Each rule must contain a name and a valid Grok pattern. + example: + - name: MyParsingRule + rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' + items: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule' + type: array + support_rules: + description: A list of Grok helper rules that can be referenced by the parsing rules. + example: + - name: user + rule: '%{word:user.name}' + items: + $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule' + type: array required: - - tenant_id - - client_id + - include + - match_rules type: object - LogsArchiveDestinationAzureType: - default: azure - description: Type of the Azure archive destination. + ObservabilityPipelineQuotaProcessorLimitEnforceType: + description: Unit for quota enforcement in bytes for data size or events for count. enum: - - azure - example: azure + - bytes + - events + example: bytes type: string x-enum-varnames: - - AZURE - LogsArchiveIntegrationGCS: - description: The GCS archive's integration destination. - properties: - client_email: - description: A client email. - example: youremail@example.com - type: string - project_id: - description: A project ID. - example: project-id - type: string - required: - - client_email - type: object - LogsArchiveDestinationGCSType: - default: gcs - description: Type of the GCS archive destination. + - BYTES + - EVENTS + ObservabilityPipelineReduceProcessorMergeStrategyStrategy: + description: The merge strategy to apply. enum: - - gcs - example: gcs + - discard + - retain + - sum + - max + - min + - array + - concat + - concat_newline + - concat_raw + - shortest_array + - longest_array + - flat_unique + example: flat_unique type: string x-enum-varnames: - - GCS - LogsArchiveEncryptionS3: - description: The S3 encryption settings. + - DISCARD + - RETAIN + - SUM + - MAX + - MIN + - ARRAY + - CONCAT + - CONCAT_NEWLINE + - CONCAT_RAW + - SHORTEST_ARRAY + - LONGEST_ARRAY + - FLAT_UNIQUE + ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions: + description: Configuration for keywords used to reinforce sensitive data pattern detection. properties: - key: - description: An Amazon Resource Name (ARN) used to identify an AWS KMS key. - example: arn:aws:kms:us-east-1:012345678901:key/DatadogIntegrationRoleKms - type: string + keywords: + description: A list of keywords to match near the sensitive pattern. + example: + - ssn + - card + - account + items: + description: A keyword string that reinforces detection when found near the sensitive pattern. + type: string + type: array + proximity: + description: Maximum number of tokens between a keyword and a sensitive value match. + example: 5 + format: int64 + type: integer + required: + - keywords + - proximity + type: object + ObservabilityPipelineSensitiveDataScannerProcessorAction: + description: Defines what action to take when sensitive data is matched. + properties: + action: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction' + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions' + required: + - action + - options + type: object + ObservabilityPipelineSensitiveDataScannerProcessorPattern: + description: Pattern detection configuration for identifying sensitive data using either a custom regex or a library reference. + properties: + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions' type: - $ref: '#/components/schemas/LogsArchiveEncryptionS3Type' + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType' required: - type + - options type: object - LogsArchiveIntegrationS3: - description: The S3 Archive's integration destination. + ObservabilityPipelineSensitiveDataScannerProcessorScope: + description: Determines which parts of the log the pattern-matching rule should be applied to. properties: - account_id: - description: The account ID for the integration. - example: '123456789012' + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions' + target: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget' + required: + - target + - options + type: object + ObservabilityPipelineMetricTagsProcessorRuleAction: + description: The action to take on tags with matching keys. + enum: + - include + - exclude + example: include + type: string + x-enum-varnames: + - INCLUDE + - EXCLUDE + ObservabilityPipelineMetricTagsProcessorRuleMode: + description: The processing mode for tag filtering. + enum: + - filter + example: filter + type: string + x-enum-varnames: + - FILTER + ObservabilityPipelineTagCardinalityLimitProcessorOverrideType: + description: How the override is applied. `limit_override` enforces a custom limit; `excluded` omits the metric or tag from cardinality tracking. + enum: + - limit_override + - excluded + example: limit_override + type: string + x-enum-varnames: + - LIMIT_OVERRIDE + - EXCLUDED + ObservabilityPipelineTagCardinalityLimitProcessorPerTagLimit: + description: A cardinality override for a specific tag key within a per-metric limit. + properties: + override_type: + $ref: '#/components/schemas/ObservabilityPipelineTagCardinalityLimitProcessorOverrideType' + tag_key: + description: The tag key this override applies to. + example: host type: string - role_name: - description: The path of the integration. - example: role-name + value_limit: + description: The maximum number of distinct values allowed for this tag. Required when `override_type` is `limit_override`. Must be omitted when `override_type` is `excluded`. + example: 5000 + format: int64 + maximum: 1000000 + minimum: 0 + type: integer + required: + - tag_key + - override_type + type: object + ObservabilityPipelineTagCardinalityLimitProcessorTrackingModeMode: + description: The cardinality tracking algorithm to use. + enum: + - exact_fingerprint + - probabilistic + example: exact_fingerprint + type: string + x-enum-varnames: + - EXACT_FINGERPRINT + - PROBABILISTIC + ObservabilityPipelineHttpServerSourceValidTokenPathToTokenLocation: + description: Built-in token location on the incoming HTTP request. + enum: + - path + - address + example: path + type: string + x-enum-varnames: + - PATH + - ADDRESS + ObservabilityPipelineHttpServerSourceValidTokenPathToTokenHeader: + description: Extract the token from a specific HTTP request header. + properties: + header: + description: The name of the HTTP header that carries the token. + example: X-Token type: string required: - - role_name - - account_id + - header type: object - LogsArchiveStorageClassS3Type: - default: STANDARD - description: The storage class where the archive will be stored. + ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod: + description: Byte frames which are delimited by a newline character. enum: - - STANDARD - - STANDARD_IA - - ONEZONE_IA - - INTELLIGENT_TIERING - - GLACIER_IR - example: STANDARD + - newline_delimited + example: newline_delimited type: string x-enum-varnames: - - STANDARD - - STANDARD_IA - - ONEZONE_IA - - INTELLIGENT_TIERING - - GLACIER_IR - LogsArchiveDestinationS3Type: - default: s3 - description: Type of the S3 archive destination. + - NEWLINE_DELIMITED + ObservabilityPipelineSocketSourceFramingBytesMethod: + description: Byte frames are passed through as-is according to the underlying I/O boundaries (for example, split between messages or stream segments). enum: - - s3 - example: s3 + - bytes + example: bytes type: string x-enum-varnames: - - S3 - PermissionsType: - default: permissions - description: Permissions resource type. + - BYTES + ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod: + description: Byte frames which are delimited by a chosen character. enum: - - permissions - example: permissions + - character_delimited + example: character_delimited type: string x-enum-varnames: - - PERMISSIONS - CustomDestinationResponseHttpDestinationAuth: - description: Authentication method of the HTTP requests. - oneOf: - - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthBasic - - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeader - CustomDestinationResponseForwardDestinationHttpType: - default: http - description: Type of the HTTP destination. + - CHARACTER_DELIMITED + ObservabilityPipelineSocketSourceFramingOctetCountingMethod: + description: Byte frames according to the octet counting format as per RFC6587. enum: - - http - example: http + - octet_counting + example: octet_counting type: string x-enum-varnames: - - HTTP - CustomDestinationResponseForwardDestinationSplunkType: - default: splunk_hec - description: Type of the Splunk HTTP Event Collector (HEC) destination. + - OCTET_COUNTING + ObservabilityPipelineSocketSourceFramingChunkedGelfMethod: + description: Byte frames which are chunked GELF messages. enum: - - splunk_hec - example: splunk_hec + - chunked_gelf + example: chunked_gelf type: string x-enum-varnames: - - SPLUNK_HEC - CustomDestinationResponseElasticsearchDestinationAuth: - additionalProperties: - description: Basic access authentication. - description: Basic access authentication. - type: object - CustomDestinationResponseForwardDestinationElasticsearchType: - default: elasticsearch - description: Type of the Elasticsearch destination. + - CHUNKED_GELF + ObservabilityPipelineWebsocketSourceTlsEnabledMode: + description: TLS mode. Must be `enabled`. enum: - - elasticsearch - example: elasticsearch + - enabled + example: enabled type: string x-enum-varnames: - - ELASTICSEARCH - CustomDestinationResponseForwardDestinationMicrosoftSentinelType: - default: microsoft_sentinel - description: Type of the Microsoft Sentinel destination. + - ENABLED + ObservabilityPipelineWebsocketSourceTlsWithClientCertMode: + description: TLS mode. Must be `with_client_cert`. enum: - - microsoft_sentinel - example: microsoft_sentinel + - with_client_cert + example: with_client_cert type: string x-enum-varnames: - - MICROSOFT_SENTINEL - CustomDestinationHttpDestinationAuth: - description: Authentication method of the HTTP requests. - oneOf: - - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasic' - - $ref: >- - #/components/schemas/CustomDestinationHttpDestinationAuthCustomHeader - CustomDestinationForwardDestinationHttpType: - default: http - description: Type of the HTTP destination. + - WITH_CLIENT_CERT + ObservabilityPipelineEnrichmentTableFileEncodingType: + description: Specifies the encoding format (e.g., CSV) used for enrichment tables. enum: - - http - example: http + - csv + example: csv type: string x-enum-varnames: - - HTTP - CustomDestinationForwardDestinationSplunkType: - default: splunk_hec - description: Type of the Splunk HTTP Event Collector (HEC) destination. + - CSV + ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: + description: Defines how to compare key fields for enrichment table lookups. enum: - - splunk_hec - example: splunk_hec + - equals + example: equals type: string x-enum-varnames: - - SPLUNK_HEC - CustomDestinationElasticsearchDestinationAuth: - description: Basic access authentication. + - EQUALS + ObservabilityPipelineEnrichmentTableFileKeyItemField: + description: |- + Specifies the source of the key value used for enrichment table lookups. + Can be a plain field path string or an object specifying `event`, `vrl`, or `secret`. + example: log.user.id + type: string properties: - password: - description: >- - The password of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-password + event: + description: The path to the field in the log event to use as the lookup key. + example: log.user.id type: string - writeOnly: true - username: - description: >- - The username of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-username + vrl: + description: A VRL expression that returns the value to use as the lookup key. + example: .log.user.id + type: string + secret: + description: The name of the secret containing the lookup key value. + example: MY_LOOKUP_SECRET type: string - writeOnly: true required: - - username - - password - type: object - CustomDestinationForwardDestinationElasticsearchType: - default: elasticsearch - description: Type of the Elasticsearch destination. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - CustomDestinationForwardDestinationMicrosoftSentinelType: - default: microsoft_sentinel - description: Type of the Microsoft Sentinel destination. + - event + - vrl + - secret + ObservabilityPipelineEnrichmentTableFileSchemaItemsType: + description: Declares allowed data types for enrichment table columns. enum: - - microsoft_sentinel - example: microsoft_sentinel + - string + - boolean + - integer + - float + - date + - timestamp + example: string type: string x-enum-varnames: - - MICROSOFT_SENTINEL - LogsArchiveEncryptionS3Type: - description: Type of S3 encryption for a destination. + - STRING + - BOOLEAN + - INTEGER + - FLOAT + - DATE + - TIMESTAMP + ObservabilityPipelineGeneratedMetricIncrementByOne: + description: Strategy that increments a generated metric by one for each matching event. + properties: + strategy: + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOneStrategy' + required: + - strategy + type: object + ObservabilityPipelineGeneratedMetricIncrementByField: + description: Strategy that increments a generated metric based on the value of a log field. + properties: + field: + description: Name of the log field containing the numeric value to increment the metric by. + example: errors + type: string + strategy: + $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy' + required: + - strategy + - field + type: object + ObservabilityPipelineOcsfMappingLibrary: + description: Predefined library mappings for common log formats. enum: - - NO_OVERRIDE - - SSE_S3 - - SSE_KMS - example: SSE_S3 + - CloudTrail Account Change + - GCP Cloud Audit CreateBucket + - GCP Cloud Audit CreateSink + - GCP Cloud Audit SetIamPolicy + - GCP Cloud Audit UpdateSink + - Github Audit Log API Activity + - Google Workspace Admin Audit addPrivilege + - Microsoft 365 Defender Incident + - Microsoft 365 Defender UserLoggedIn + - Okta System Log Authentication + - Palo Alto Networks Firewall Traffic + example: CloudTrail Account Change type: string x-enum-varnames: - - NO_OVERRIDE - - SSE_S3 - - SSE_KMS - CustomDestinationResponseHttpDestinationAuthBasic: - description: Basic access authentication. + - CLOUDTRAIL_ACCOUNT_CHANGE + - GCP_CLOUD_AUDIT_CREATEBUCKET + - GCP_CLOUD_AUDIT_CREATESINK + - GCP_CLOUD_AUDIT_SETIAMPOLICY + - GCP_CLOUD_AUDIT_UPDATESINK + - GITHUB_AUDIT_LOG_API_ACTIVITY + - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE + - MICROSOFT_365_DEFENDER_INCIDENT + - MICROSOFT_365_DEFENDER_USERLOGGEDIN + - OKTA_SYSTEM_LOG_AUTHENTICATION + - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC + ObservabilityPipelineOcsfMappingCustom: + description: Custom OCSF mapping configuration for transforming logs. + properties: + mapping: + description: A list of field mapping rules for transforming log fields to OCSF schema fields. + items: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingCustomFieldMapping' + type: array + metadata: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingCustomMetadata' + version: + description: The version of the custom mapping configuration. + example: 1 + format: int64 + type: integer + required: + - mapping + - metadata + - version + type: object + ObservabilityPipelineParseGrokProcessorRuleMatchRule: + description: |- + Defines a Grok parsing rule, which extracts structured fields from log content using named Grok patterns. + Each rule must have a unique name and a valid Datadog Grok pattern that will be applied to the source field. + properties: + name: + description: The name of the rule. + example: MyParsingRule + type: string + rule: + description: The definition of the Grok rule. + example: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' + type: string + required: + - name + - rule + type: object + ObservabilityPipelineParseGrokProcessorRuleSupportRule: + description: The Grok helper rule referenced in the parsing rules. + properties: + name: + description: The name of the Grok helper rule. + example: user + type: string + rule: + description: The definition of the Grok helper rule. + example: ' %{word:user.name}' + type: string + required: + - name + - rule + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionRedact: + description: Configuration for completely redacting matched sensitive data. + properties: + action: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction' + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions' + required: + - action + - options + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionHash: + description: Configuration for hashing matched sensitive values. + properties: + action: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction' + options: + description: |- + Optional settings for the hash action. When omitted or empty, matched sensitive data is + replaced with a deterministic hashed value that preserves structure for analytics while + protecting the original content. Reserved for future hash configuration (for example, algorithm or salt). (opaque JSON object) + type: string + required: + - action + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact: + description: Configuration for partially redacting matched sensitive data. + properties: + action: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction' + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions' + required: + - action + - options + type: object + ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern: + description: Defines a custom regex-based pattern for identifying sensitive data in logs. properties: + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions' type: - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType' required: - type + - options type: object - CustomDestinationResponseHttpDestinationAuthCustomHeader: - description: Custom header access authentication. + ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern: + description: Specifies a pattern from Datadog’s sensitive data detection library to match known sensitive data types. properties: - header_name: - description: The header name of the authentication. - example: CUSTOM-HEADER-NAME - type: string + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions' type: - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeaderType + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType' required: - type - - header_name + - options type: object - CustomDestinationHttpDestinationAuthBasic: - description: Basic access authentication. + ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude: + description: Includes only specific fields for sensitive data scanning. properties: - password: - description: >- - The password of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-password + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions' + target: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget' + required: + - target + - options + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude: + description: Excludes specific fields from sensitive data scanning. + properties: + options: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions' + target: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget' + required: + - target + - options + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScopeAll: + description: Applies scanning across all available fields. + properties: + target: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget' + required: + - target + type: object + ObservabilityPipelineEnrichmentTableFieldStringPath: + description: A plain field path in the log event, used as the lookup key. + example: log.user.id + type: string + ObservabilityPipelineEnrichmentTableFieldEventLookup: + description: Looks up a value from a field path in the log event. + properties: + event: + description: The path to the field in the log event to use as the lookup key. + example: log.user.id type: string - writeOnly: true - type: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasicType' - username: - description: >- - The username of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-username + required: + - event + type: object + ObservabilityPipelineEnrichmentTableFieldVrlLookup: + description: Evaluates a VRL expression to produce the lookup key. + properties: + vrl: + description: A VRL expression that returns the value to use as the lookup key. + example: .log.user.id type: string - writeOnly: true required: - - type - - username - - password + - vrl type: object - CustomDestinationHttpDestinationAuthCustomHeader: - description: Custom header access authentication. + ObservabilityPipelineEnrichmentTableFieldSecretLookup: + description: Looks up a value stored as a pipeline secret. properties: - header_name: - description: The header name of the authentication. - example: CUSTOM-HEADER-NAME + secret: + description: The name of the secret containing the lookup key value. + example: MY_LOOKUP_SECRET type: string - header_value: - description: >- - The header value of the authentication. This field is not returned - by the API. - example: CUSTOM-HEADER-AUTHENTICATION-VALUE + required: + - secret + type: object + ObservabilityPipelineGeneratedMetricIncrementByOneStrategy: + description: Increments the metric by 1 for each matching event. + enum: + - increment_by_one + example: increment_by_one + type: string + x-enum-varnames: + - INCREMENT_BY_ONE + ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy: + description: Uses a numeric field in the log event as the metric increment. + enum: + - increment_by_field + example: increment_by_field + type: string + x-enum-varnames: + - INCREMENT_BY_FIELD + ObservabilityPipelineOcsfMappingCustomFieldMapping: + description: Defines a single field mapping rule for transforming a source field to an OCSF destination field. + properties: + default: + description: The default value to use if the source field is missing or empty. + example: '' + dest: + description: The destination OCSF field path. + example: device.type + type: string + lookup: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingCustomLookup' + source: + description: The source field path from the log event. + example: host.type + sources: + description: Multiple source field paths for combined mapping. + example: + - field1 + - field2 + value: + description: A static value to use for the destination field. + example: static_value + required: + - dest + type: object + ObservabilityPipelineOcsfMappingCustomMetadata: + description: Metadata for the custom OCSF mapping. + properties: + class: + description: The OCSF event class name. + example: Device Inventory Info + type: string + profiles: + description: A list of OCSF profiles to apply. + example: + - container + items: + description: The name of an OCSF profile to apply to the event. + type: string + type: array + version: + description: The OCSF schema version. + example: 1.3.0 + type: string + required: + - class + - version + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction: + description: Action type that completely replaces the matched sensitive data with a fixed replacement string to remove all visibility. + enum: + - redact + example: redact + type: string + x-enum-varnames: + - REDACT + ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions: + description: Configuration for fully redacting sensitive data. + properties: + replace: + description: The string used to replace matched sensitive data (for example, "***" or "[REDACTED]"). + example: '***' + type: string + required: + - replace + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction: + description: Action type that replaces the matched sensitive data with a hashed representation, preserving structure while securing content. + enum: + - hash + example: hash + type: string + x-enum-varnames: + - HASH + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction: + description: Action type that redacts part of the sensitive data while preserving a configurable number of characters, typically used for masking purposes (e.g., show last 4 digits of a credit card). + enum: + - partial_redact + example: partial_redact + type: string + x-enum-varnames: + - PARTIAL_REDACT + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions: + description: Controls how partial redaction is applied, including character count and direction. + properties: + characters: + description: Number of characters to leave visible from the start or end of the matched value; the rest are redacted. + example: 4 + format: int64 + type: integer + direction: + $ref: '#/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection' + required: + - characters + - direction + type: object + ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions: + description: Options for defining a custom regex pattern. + properties: + description: + description: Human-readable description providing context about a sensitive data scanner rule + example: Custom regex for internal API keys + type: string + rule: + description: A regular expression used to detect sensitive values. Must be a valid regex. + example: \b\d{16}\b + type: string + required: + - rule + type: object + ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType: + description: Indicates a custom regular expression is used for matching. + enum: + - custom + example: custom + type: string + x-enum-varnames: + - CUSTOM + ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions: + description: Options for selecting a predefined library pattern and enabling keyword support. + properties: + description: + description: Human-readable description providing context about a sensitive data scanner rule + example: Credit card pattern type: string - writeOnly: true - type: - $ref: >- - #/components/schemas/CustomDestinationHttpDestinationAuthCustomHeaderType + id: + description: Identifier for a predefined pattern from the sensitive data scanner pattern library. + example: credit_card + type: string + use_recommended_keywords: + description: Whether to augment the pattern with recommended keywords (optional). + type: boolean required: - - type - - header_name - - header_value + - id type: object - CustomDestinationResponseHttpDestinationAuthBasicType: - default: basic - description: Type of the basic access authentication. + ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType: + description: Indicates that a predefined library pattern is used. enum: - - basic - example: basic + - library + example: library type: string x-enum-varnames: - - BASIC - CustomDestinationResponseHttpDestinationAuthCustomHeaderType: - default: custom_header - description: Type of the custom header access authentication. + - LIBRARY + ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions: + description: Fields to which the scope rule applies. + properties: + fields: + description: List of log attribute names (field paths) to which the scope applies. Only these fields are included in or excluded from pattern matching. + example: + - '' + items: + description: A log field path to include or exclude from sensitive data scanning. + type: string + type: array + required: + - fields + type: object + ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget: + description: Applies the rule only to included fields. enum: - - custom_header - example: custom_header + - include + example: include type: string x-enum-varnames: - - CUSTOM_HEADER - CustomDestinationHttpDestinationAuthBasicType: - default: basic - description: Type of the basic access authentication. + - INCLUDE + ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget: + description: Excludes specific fields from processing. enum: - - basic - example: basic + - exclude + example: exclude type: string x-enum-varnames: - - BASIC - CustomDestinationHttpDestinationAuthCustomHeaderType: - default: custom_header - description: Type of the custom header access authentication. + - EXCLUDE + ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget: + description: Applies the rule to all fields. enum: - - custom_header - example: custom_header + - all + example: all type: string x-enum-varnames: - - CUSTOM_HEADER + - ALL + ObservabilityPipelineOcsfMappingCustomLookup: + description: Lookup table configuration for mapping source values to destination values. + properties: + default: + description: The default value to use if no lookup match is found. + example: unknown + table: + description: A list of lookup table entries for value transformation. + items: + $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingCustomLookupTableEntry' + type: array + type: object + ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection: + description: Indicates whether to redact characters from the first or last part of the matched value. + enum: + - first + - last + example: last + type: string + x-enum-varnames: + - FIRST + - LAST + ObservabilityPipelineOcsfMappingCustomLookupTableEntry: + description: A single entry in a lookup table for value transformation. + properties: + contains: + description: The substring to match in the source value. + example: Desktop + type: string + equals: + description: The exact value to match in the source. + example: desktop + equals_source: + description: The source field to match against. + example: device_type + type: string + matches: + description: A regex pattern to match in the source value. + example: ^Desktop.* + type: string + not_matches: + description: A regex pattern that must not match the source value. + example: ^Mobile.* + type: string + value: + description: The value to use when a match is found. + example: desktop + type: object responses: BadRequestResponse: content: @@ -3408,6 +15865,47 @@ components: required: true schema: type: string + PageSize: + description: Number of items to return per page. The maximum allowed value is 100. + in: query + name: page[size] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + PageNumber: + description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + RestrictionQueryRoleID: + description: The ID of the role. + in: path + name: role_id + required: true + schema: + type: string + RestrictionQueryUserID: + description: The ID of the user. + in: path + name: user_id + required: true + schema: + type: string + RestrictionQueryID: + description: The ID of the restriction query. + in: path + name: restriction_query_id + required: true + schema: + type: string x-stackQL-resources: logs: id: datadog.logs.logs @@ -3415,17 +15913,27 @@ components: title: Logs methods: submit_log: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs/post' response: mediaType: application/json openAPIDocKey: '202' + request: + nativeCasing: camel aggregate_logs: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1analytics~1aggregate/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel list_logs_get: operation: $ref: '#/paths/~1api~1v2~1logs~1events/get' @@ -3433,18 +15941,35 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 list_logs: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1events~1search/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/logs/methods/list_logs_get' - insert: - - $ref: '#/components/x-stackQL-resources/logs/methods/submit_log' - - $ref: '#/components/x-stackQL-resources/logs/methods/list_logs' + insert: [] update: [] delete: [] replace: [] @@ -3460,22 +15985,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_logs_archive_order: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1config~1archive-order/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/archive_order/methods/get_logs_archive_order + - $ref: '#/components/x-stackQL-resources/archive_order/methods/get_logs_archive_order' insert: [] update: [] delete: [] replace: - - $ref: >- - #/components/x-stackQL-resources/archive_order/methods/update_logs_archive_order + - $ref: '#/components/x-stackQL-resources/archive_order/methods/update_logs_archive_order' archives: id: datadog.logs.archives name: archives @@ -3488,18 +16018,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_logs_archive: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1config~1archives/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_logs_archive: operation: $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_logs_archive: operation: $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/get' @@ -3507,27 +16046,30 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_logs_archive: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/archives/methods/get_logs_archive' - - $ref: >- - #/components/x-stackQL-resources/archives/methods/list_logs_archives + - $ref: '#/components/x-stackQL-resources/archives/methods/list_logs_archives' insert: - - $ref: >- - #/components/x-stackQL-resources/archives/methods/create_logs_archive + - $ref: '#/components/x-stackQL-resources/archives/methods/create_logs_archive' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/archives/methods/delete_logs_archive + - $ref: '#/components/x-stackQL-resources/archives/methods/delete_logs_archive' replace: - - $ref: >- - #/components/x-stackQL-resources/archives/methods/update_logs_archive + - $ref: '#/components/x-stackQL-resources/archives/methods/update_logs_archive' archive_read_roles: id: datadog.logs.archive_read_roles name: archive_read_roles @@ -3535,37 +16077,40 @@ components: methods: remove_role_from_archive: operation: - $ref: >- - #/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/delete + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel list_archive_read_roles: operation: - $ref: >- - #/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/get + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel add_read_role_to_archive: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/post + $ref: '#/paths/~1api~1v2~1logs~1config~1archives~1{archive_id}~1readers/post' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/archive_read_roles/methods/list_archive_read_roles + - $ref: '#/components/x-stackQL-resources/archive_read_roles/methods/list_archive_read_roles' insert: - - $ref: >- - #/components/x-stackQL-resources/archive_read_roles/methods/add_read_role_to_archive + - $ref: '#/components/x-stackQL-resources/archive_read_roles/methods/add_read_role_to_archive' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/archive_read_roles/methods/remove_role_from_archive + - $ref: '#/components/x-stackQL-resources/archive_read_roles/methods/remove_role_from_archive' replace: [] custom_destinations: id: datadog.logs.custom_destinations @@ -3579,49 +16124,57 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_logs_custom_destination: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1config~1custom-destinations/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_logs_custom_destination: operation: - $ref: >- - #/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/delete + $ref: '#/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_logs_custom_destination: operation: - $ref: >- - #/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/get + $ref: '#/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_logs_custom_destination: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/patch + $ref: '#/paths/~1api~1v2~1logs~1config~1custom-destinations~1{custom_destination_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/custom_destinations/methods/get_logs_custom_destination - - $ref: >- - #/components/x-stackQL-resources/custom_destinations/methods/list_logs_custom_destinations + - $ref: '#/components/x-stackQL-resources/custom_destinations/methods/get_logs_custom_destination' + - $ref: '#/components/x-stackQL-resources/custom_destinations/methods/list_logs_custom_destinations' insert: - - $ref: >- - #/components/x-stackQL-resources/custom_destinations/methods/create_logs_custom_destination + - $ref: '#/components/x-stackQL-resources/custom_destinations/methods/create_logs_custom_destination' update: - - $ref: >- - #/components/x-stackQL-resources/custom_destinations/methods/update_logs_custom_destination + - $ref: '#/components/x-stackQL-resources/custom_destinations/methods/update_logs_custom_destination' delete: - - $ref: >- - #/components/x-stackQL-resources/custom_destinations/methods/delete_logs_custom_destination + - $ref: '#/components/x-stackQL-resources/custom_destinations/methods/delete_logs_custom_destination' replace: [] metrics: id: datadog.logs.metrics @@ -3635,18 +16188,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_logs_metric: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1config~1metrics/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_logs_metric: operation: $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_logs_metric: operation: $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/get' @@ -3654,29 +16216,459 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_logs_metric: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1logs~1config~1metrics~1{metric_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/metrics/methods/get_logs_metric' - $ref: '#/components/x-stackQL-resources/metrics/methods/list_logs_metrics' insert: - - $ref: >- - #/components/x-stackQL-resources/metrics/methods/create_logs_metric + - $ref: '#/components/x-stackQL-resources/metrics/methods/create_logs_metric' + update: + - $ref: '#/components/x-stackQL-resources/metrics/methods/update_logs_metric' + delete: + - $ref: '#/components/x-stackQL-resources/metrics/methods/delete_logs_metric' + replace: [] + restriction_queries: + id: datadog.logs.restriction_queries + name: restriction_queries + title: Restriction Queries + methods: + list_restriction_queries: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_restriction_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_restriction_query: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_restriction_query: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_restriction_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + replace_restriction_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/restriction_queries/methods/get_restriction_query' + - $ref: '#/components/x-stackQL-resources/restriction_queries/methods/list_restriction_queries' + insert: + - $ref: '#/components/x-stackQL-resources/restriction_queries/methods/create_restriction_query' update: - - $ref: >- - #/components/x-stackQL-resources/metrics/methods/update_logs_metric + - $ref: '#/components/x-stackQL-resources/restriction_queries/methods/update_restriction_query' + delete: + - $ref: '#/components/x-stackQL-resources/restriction_queries/methods/delete_restriction_query' + replace: + - $ref: '#/components/x-stackQL-resources/restriction_queries/methods/replace_restriction_query' + restriction_query_roles: + id: datadog.logs.restriction_query_roles + name: restriction_query_roles + title: Restriction Query Roles + methods: + get_role_restriction_query: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1role~1{role_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + remove_role_from_restriction_query: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}~1roles/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + list_restriction_query_roles: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}~1roles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + add_role_to_restriction_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1{restriction_query_id}~1roles/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/restriction_query_roles/methods/get_role_restriction_query' + - $ref: '#/components/x-stackQL-resources/restriction_query_roles/methods/list_restriction_query_roles' + insert: + - $ref: '#/components/x-stackQL-resources/restriction_query_roles/methods/add_role_to_restriction_query' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/metrics/methods/delete_logs_metric + - $ref: '#/components/x-stackQL-resources/restriction_query_roles/methods/remove_role_from_restriction_query' replace: [] + restriction_query_users: + id: datadog.logs.restriction_query_users + name: restriction_query_users + title: Restriction Query Users + methods: + list_user_restriction_queries: + operation: + $ref: '#/paths/~1api~1v2~1logs~1config~1restriction_queries~1user~1{user_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/restriction_query_users/methods/list_user_restriction_queries' + insert: [] + update: [] + delete: [] + replace: [] + observability_pipelines: + id: datadog.logs.observability_pipelines + name: observability_pipelines + title: Observability Pipelines + methods: + list_pipelines: + operation: + $ref: '#/paths/~1api~1v2~1obs-pipelines~1pipelines/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_pipeline: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1obs-pipelines~1pipelines/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + validate_pipeline: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1obs-pipelines~1pipelines~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_pipeline: + operation: + $ref: '#/paths/~1api~1v2~1obs-pipelines~1pipelines~1{pipeline_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_pipeline: + operation: + $ref: '#/paths/~1api~1v2~1obs-pipelines~1pipelines~1{pipeline_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_pipeline: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1obs-pipelines~1pipelines~1{pipeline_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/observability_pipelines/methods/get_pipeline' + - $ref: '#/components/x-stackQL-resources/observability_pipelines/methods/list_pipelines' + insert: + - $ref: '#/components/x-stackQL-resources/observability_pipelines/methods/create_pipeline' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/observability_pipelines/methods/delete_pipeline' + replace: + - $ref: '#/components/x-stackQL-resources/observability_pipelines/methods/update_pipeline' + index_order: + id: datadog.logs.index_order + name: index_order + title: Index Order + methods: + get_logs_index_order: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1index-order/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_logs_index_order: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1index-order/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/index_order/methods/get_logs_index_order' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/index_order/methods/update_logs_index_order' + indexes: + id: datadog.logs.indexes + name: indexes + title: Indexes + methods: + list_log_indexes: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1indexes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.indexes + request: + nativeCasing: camel + create_logs_index: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1indexes/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_logs_index: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1indexes~1{name}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_logs_index: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1indexes~1{name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_logs_index: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1indexes~1{name}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/indexes/methods/get_logs_index' + - $ref: '#/components/x-stackQL-resources/indexes/methods/list_log_indexes' + insert: + - $ref: '#/components/x-stackQL-resources/indexes/methods/create_logs_index' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/indexes/methods/delete_logs_index' + replace: + - $ref: '#/components/x-stackQL-resources/indexes/methods/update_logs_index' + pipeline_order: + id: datadog.logs.pipeline_order + name: pipeline_order + title: Pipeline Order + methods: + get_logs_pipeline_order: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipeline-order/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_logs_pipeline_order: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipeline-order/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/pipeline_order/methods/get_logs_pipeline_order' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/pipeline_order/methods/update_logs_pipeline_order' + pipelines: + id: datadog.logs.pipelines + name: pipelines + title: Pipelines + methods: + list_logs_pipelines: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipelines/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_logs_pipeline: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipelines/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_logs_pipeline: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipelines~1{pipeline_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_logs_pipeline: + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipelines~1{pipeline_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_logs_pipeline: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1logs~1config~1pipelines~1{pipeline_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/pipelines/methods/get_logs_pipeline' + - $ref: '#/components/x-stackQL-resources/pipelines/methods/list_logs_pipelines' + insert: + - $ref: '#/components/x-stackQL-resources/pipelines/methods/create_logs_pipeline' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/pipelines/methods/delete_logs_pipeline' + replace: + - $ref: '#/components/x-stackQL-resources/pipelines/methods/update_logs_pipeline' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/metrics.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/metrics.yaml index 090b21f..aa288b0 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/metrics.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/metrics.yaml @@ -1,7 +1,22 @@ openapi: 3.0.0 info: title: metrics API - description: datadog metrics API + description: |- + The metrics endpoint allows you to: + + - Post metrics data so it can be graphed on Datadog’s dashboards + - Query metrics from any time period (timeseries and scalar) + - Modify tag configurations for metrics + - View tags and volumes for metrics + + **Note**: A graph can only contain a set number of points + and as the timeframe over which a metric is viewed increases, + aggregation between points occurs to stay below that set number. + + The Post, Patch, and Delete `manage_tags` API methods can only be performed by + a user who has the `Manage Tags for Metrics` permission. + + See the [Metrics page](https://docs.datadoghq.com/metrics/) for more information. version: '1.0' paths: /api/v2/datasets: @@ -12,6 +27,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000003 + type: dataset schema: $ref: '#/components/schemas/DatasetResponseMulti' description: OK @@ -40,17 +69,20 @@ paths: requestBody: content: application/json: - example: - data: - attributes: - name: Test RUM Dataset - principals: - - role:94172442-be03-11e9-a77a-3b7612558ac1 - product_filters: - - filters: - - '@application.id:application_123' - product: rum - type: dataset + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + restriction_query_id: 00000000-0000-0000-0000-000000000001 + type: dataset schema: $ref: '#/components/schemas/DatasetCreateRequest' description: Dataset payload @@ -59,6 +91,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:abc-123 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000004 + type: dataset schema: $ref: '#/components/schemas/DatasetResponseSingle' description: OK @@ -127,6 +173,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000001 + type: dataset schema: $ref: '#/components/schemas/DatasetResponseSingle' description: OK @@ -160,6 +220,19 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - '@application.id:ABCD' + product: logs + type: dataset schema: $ref: '#/components/schemas/DatasetUpdateRequest' description: Dataset payload @@ -168,6 +241,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + name: Security Audit Dataset + principals: + - role:94172442-be03-11e9-a77a-3b7612558ac1 + product_filters: + - filters: + - source:cloudtrail + product: logs + id: 00000000-0000-0000-0000-000000000002 + type: dataset schema: $ref: '#/components/schemas/DatasetResponseSingle' description: OK @@ -195,101 +282,326 @@ paths: x-unstable: |- **Note: Data Access is in preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).** + /api/v2/ddsql/query/tabular: + post: + description: |- + Submit a DDSQL statement and return either a `running` state with an opaque `query_id` + for the client to poll, or a `completed` state with the column-major result set inlined + when the query finishes quickly enough to be served synchronously. + operationId: ExecuteDdsqlTabularQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + query: SELECT cloud_provider, count(*) FROM dd.hosts group by cloud_provider + row_limit: 1000 + time: + from_timestamp: 1736942400000 + to_timestamp: 1736946000000 + type: ddsql_query_request + schema: + $ref: '#/components/schemas/DdsqlTabularQueryRequest' + required: true + responses: + '200': + content: + application/json: + examples: + completed: + summary: Query finished synchronously + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: 00000000-0000-0000-0000-000000000000 + type: ddsql_query_response + meta: + elapsed: 318 + request_id: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7081 + default: + summary: Query finished synchronously + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: 00000000-0000-0000-0000-000000000000 + type: ddsql_query_response + meta: + elapsed: 318 + request_id: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7081 + running: + summary: Query still executing + value: + data: + attributes: + query_id: eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ== + state: running + id: 00000000-0000-0000-0000-000000000000 + type: ddsql_query_response + meta: + elapsed: 42 + request_id: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7081 + schema: + $ref: '#/components/schemas/DdsqlTabularQueryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Execute a tabular DDSQL query + tags: + - DDSQL + /api/v2/ddsql/query/tabular/fetch: + post: + description: |- + Poll a previously submitted DDSQL query for results. Pass the opaque `query_id` returned + by a prior `ExecuteDdsqlTabularQuery` (or by a prior `FetchDdsqlTabularQuery` that + returned `state: running`) and the server returns either a `running` state to poll again + or a `completed` state with the column-major result set inlined. + operationId: FetchDdsqlTabularQuery + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + query_id: eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ== + type: ddsql_query_fetch_request + schema: + $ref: '#/components/schemas/DdsqlTabularQueryFetchRequest' + required: true + responses: + '200': + content: + application/json: + examples: + completed: + summary: Query finished + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: 00000000-0000-0000-0000-000000000000 + type: ddsql_query_response + meta: + elapsed: 87 + request_id: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082 + default: + summary: Query finished + value: + data: + attributes: + columns: + - name: service + type: VARCHAR + values: + - web-store + - checkout + - name: count + type: BIGINT + values: + - 1024 + - 512 + state: completed + id: 00000000-0000-0000-0000-000000000000 + type: ddsql_query_response + meta: + elapsed: 87 + request_id: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082 + running: + summary: Query still executing + value: + data: + attributes: + query_id: eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ== + state: running + id: 00000000-0000-0000-0000-000000000000 + type: ddsql_query_response + meta: + elapsed: 12 + request_id: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082 + schema: + $ref: '#/components/schemas/DdsqlTabularQueryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Fetch the result of a DDSQL query + tags: + - DDSQL /api/v2/metrics: get: - description: >- - Returns all metrics that can be configured in the Metrics Summary page - or with Metrics without Limits™ (matching additional filters if - specified). - - Optionally, paginate by using the `page[cursor]` and/or `page[size]` - query parameters. - - To fetch the first page, pass in a query parameter with either a valid - `page[size]` or an empty cursor like `page[cursor]=`. To fetch the next - page, pass in the `next_cursor` value from the response as the new - `page[cursor]` value. + description: |- + Get a list of actively reporting metrics for your organization. Pagination is optional using the `page[cursor]` and `page[size]` query parameters. - Once the `meta.pagination.next_cursor` value is null, all pages have - been retrieved. + Query parameters use bracket notation (for example, `filter[tags]`, `filter[queried][window][seconds]`). Pass them as standard URL query strings, URL-encoding the brackets if your client does not handle them. For example: `GET /api/v2/metrics?filter[tags]=env:prod&window[seconds]=86400&page[size]=500`. operationId: ListTagConfigurations parameters: - - description: Filter custom metrics that have configured tags. + - description: Only return custom metrics that have been configured (`true`) or not configured (`false`) with Metrics Without Limits. example: true in: query name: filter[configured] required: false schema: type: boolean - - description: Filter tag configurations by configured tags. - example: app + - description: Only return metrics that are eligible (`true`) or ineligible (`false`) for configuration with Metrics Without Limits. + example: true + in: query + name: filter[is_configurable] + required: false + schema: + type: boolean + - description: Only return metrics that have the given tag key(s) in their Metrics Without Limits configuration (included or excluded). + example: app,env in: query name: filter[tags_configured] required: false schema: description: Tag keys to filter by. type: string - - description: Filter metrics by metric type. + - description: Only return metrics of the given metric type. in: query name: filter[metric_type] required: false schema: $ref: '#/components/schemas/MetricTagConfigurationMetricTypeCategory' - - description: |- - Filter distributions with additional percentile - aggregations enabled or disabled. + - description: Only return distribution metrics that have percentile aggregations enabled (true) or disabled (false). example: true in: query name: filter[include_percentiles] required: false schema: type: boolean - - description: >- - (Preview) Filter custom metrics that have or have not been queried - in the specified window[seconds]. - - If no window is provided or the window is less than 2 hours, a - default of 2 hours will be applied. + - description: Only return metrics that have been queried (true) or not queried (false) in the look back window. Set the window with `filter[queried][window][seconds]`; if omitted, a default window is used. example: true in: query name: filter[queried] required: false schema: type: boolean - - description: >- - Filter metrics that have been submitted with the given tags. - Supports boolean and wildcard expressions. - - Can only be combined with the filter[queried] filter. - example: env IN (staging,test) AND service:web + - description: 'This parameter has no effect unless `filter[queried]` is also set. Only return metrics that have been queried or not queried in the specified window. The default value is 2,592,000 seconds (30 days), the maximum value is 15,552,000 seconds (180 days), and the minimum value is 1 second. For example: `filter[queried]=true&filter[queried][window][seconds]=604800`.' + example: 15552000 + in: query + name: filter[queried][window][seconds] + required: false + schema: + default: 2592000 + format: int64 + maximum: 15552000 + minimum: 1 + type: integer + - description: 'Only return metrics that were submitted with tags matching this expression. You can use AND, OR, IN, and wildcards. For example: `filter[tags]=env IN (staging,test) AND service:web*`.' + example: env IN (staging,test) AND service:web* in: query name: filter[tags] required: false schema: type: string - - description: >- - (Preview) Filter metrics that are used in dashboards, monitors, - notebooks, SLOs. + - description: Only return metrics that are used in at least one dashboard, monitor, notebook, or SLO. example: true in: query name: filter[related_assets] required: false schema: type: boolean - - description: >- - The number of seconds of look back (from now) to apply to a - filter[tag] or filter[queried] query. - - Default value is 3600 (1 hour), maximum value is 2,592,000 (30 - days). + - description: Include related resources in the response. Set to `metric_volumes` to include indexed and ingested volume counts for each metric. + example: metric_volumes + in: query + name: include + required: false + schema: + type: string + - description: 'Sort results by metric volume. Prefix a key with `-` for descending order. Supported keys: `metric_volumes.indexed_volume`, `metric_volumes.ingested_volume`, `metric_volumes.indexed_volume_delta`, `metric_volumes.ingested_volume_delta`. Requires a paginated request (`page[size]` or `page[cursor]`).' + example: '-metric_volumes.indexed_volume' + in: query + name: sort + required: false + schema: + type: string + - description: Only return metrics that have been actively reporting in the specified window. The default value is 3600 seconds (1 hour), the maximum value is 2,592,000 seconds (30 days), and the minimum value is 1 second. example: 3600 in: query name: window[seconds] required: false schema: + default: 3600 format: int64 + maximum: 2592000 + minimum: 1 type: integer - - description: Maximum number of results returned. + - description: Maximum number of results per page. Send `page[size]` on the first request to opt in to pagination. On each subsequent request, send `page[cursor]` set to the value of `meta.pagination.next_cursor` from the previous response. The default value is 10000, the maximum value is 10000, and the minimum value is 1. in: query name: page[size] required: false @@ -299,14 +611,7 @@ paths: maximum: 10000 minimum: 1 type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.pagination.next_cursor`. - - Once the `meta.pagination.next_cursor` key is null, all pages have - been retrieved. + - description: Cursor for pagination. Use `page[size]` to opt-in to pagination and get the first page; for subsequent pages, use the value from `meta.pagination.next_cursor` in the response. Pagination is complete when `next_cursor` is null. in: query name: page[cursor] required: false @@ -316,6 +621,52 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - id: system.cpu.user + type: metrics + - attributes: + created_at: '2020-03-25T09:48:37.463835Z' + metric_type: gauge + modified_at: '2020-04-25T09:48:37.463835Z' + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + meta: + pagination: + next_cursor: eyJhZnRlciI6Imh0dHAuZW5kcG9pbnQucmVxdWVzdCJ9 + with_metric_volumes: + value: + data: + - id: user.custom.cpu.usage + relationships: + metric_volumes: + data: + id: user.custom.cpu.usage + type: metric_volumes + type: metrics + - id: user.custom.mem.usage + relationships: + metric_volumes: + data: + id: user.custom.mem.usage + type: metric_volumes + type: metrics + included: + - attributes: + indexed_volume: 1000 + ingested_volume: 456 + id: user.custom.cpu.usage + type: metric_volumes + - attributes: + indexed_volume: 250 + ingested_volume: 1011 + id: user.custom.mem.usage + type: metric_volumes schema: $ref: '#/components/schemas/MetricsAndMetricTagConfigurationsResponse' description: Success @@ -356,21 +707,28 @@ paths: - metrics_read /api/v2/metrics/config/bulk-tags: delete: - description: >- - Delete all custom lists of queryable tag keys for a set of existing - count, gauge, rate, and distribution metrics. + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Use [Tag Indexing Rules](/api/latest/metrics/#create-a-tag-indexing-rule) (`POST /api/v2/metrics/tag-indexing-rules`) instead. + Delete all custom lists of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics. Metrics are selected by passing a metric name prefix. - - Results can be sent to a set of account email addresses, just like the - same operation in the Datadog web app. - - Can only be used with application keys of users with the `Manage Tags - for Metrics` permission. + Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app. + Can only be used with application keys of users with the `Manage Tags for Metrics` permission. operationId: DeleteBulkTagsMetricsConfiguration requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + emails: + - sue@example.com + - bob@example.com + id: kafka.lag + type: metric_bulk_configure_tags schema: $ref: '#/components/schemas/MetricBulkTagConfigDeleteRequest' required: true @@ -378,6 +736,16 @@ paths: '202': content: application/json: + examples: + default: + value: + data: + attributes: + emails: + - test@example.com + status: Accepted + id: kafka.lag + type: metric_bulk_configure_tags schema: $ref: '#/components/schemas/MetricBulkTagConfigResponse' description: Accepted @@ -413,32 +781,37 @@ paths: operator: OR permissions: - metric_tags_write + x-sunset: '2027-01-01' post: - description: >- - Create and define a list of queryable tag keys for a set of existing - count, gauge, rate, and distribution metrics. - - Metrics are selected by passing a metric name prefix. Use the Delete - method of this API path to remove tag configurations. - - Results can be sent to a set of account email addresses, just like the - same operation in the Datadog web app. - - If multiple calls include the same metric, the last configuration - applied (not by submit order) is used, do not - - expect deterministic ordering of concurrent calls. The - `exclude_tags_mode` value will set all metrics that match the prefix to - - the same exclusion state, metric tag configurations do not support mixed - inclusion and exclusion for tags on the same metric. + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Use [Tag Indexing Rules](/api/latest/metrics/#create-a-tag-indexing-rule) (`POST /api/v2/metrics/tag-indexing-rules`) instead. - Can only be used with application keys of users with the `Manage Tags - for Metrics` permission. + Create and define a list of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics. + Metrics are selected by passing a metric name prefix. Use the Delete method of this API path to remove tag configurations. + Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app. + If multiple calls include the same metric, the last configuration applied (not by submit order) is used, do not + expect deterministic ordering of concurrent calls. The `exclude_tags_mode` value will set all metrics that match the prefix to + the same exclusion state, metric tag configurations do not support mixed inclusion and exclusion for tags on the same metric. + Can only be used with application keys of users with the `Manage Tags for Metrics` permission. operationId: CreateBulkTagsMetricsConfiguration requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + emails: + - sue@example.com + - bob@example.com + tags: + - host + - pod_name + - is_shadow + id: kafka.lag + type: metric_bulk_configure_tags schema: $ref: '#/components/schemas/MetricBulkTagConfigCreateRequest' required: true @@ -446,6 +819,17 @@ paths: '202': content: application/json: + examples: + default: + value: + data: + attributes: + emails: + - test@example.com + tags: + - host + id: kafka.lag + type: metric_bulk_configure_tags schema: $ref: '#/components/schemas/MetricBulkTagConfigResponse' description: Accepted @@ -481,270 +865,365 @@ paths: operator: OR permissions: - metric_tags_write - /api/v2/metrics/{metric_name}/active-configurations: - get: - description: >- - List tags and aggregations that are actively queried on dashboards, - notebooks, monitors, the Metrics Explorer, and using the API for a given - metric name. - operationId: ListActiveMetricConfigurations - parameters: - - $ref: '#/components/parameters/MetricName' - - description: >- - The number of seconds of look back (from now). - - Default value is 604,800 (1 week), minimum value is 7200 (2 hours), - maximum value is 2,630,000 (1 month). - example: 7200 - in: query - name: window[seconds] - required: false - schema: - format: int64 - type: integer + x-sunset: '2027-01-01' + /api/v2/metrics/historical-metrics-configurations: + post: + description: |- + Enable historical metrics ingestion (late data ingestion) for a metric. Idempotent: + enabling an already-enabled metric returns 200 instead of 201. Not supported for + distribution metrics, metrics with an existing tag configuration, or most standard + (non-custom) metrics. + operationId: CreateHistoricalMetricsConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: dd.test.metric + type: historical_metrics_configurations + schema: + $ref: '#/components/schemas/HistoricalMetricsConfigurationCreateRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + id: dd.test.metric + type: historical_metrics_configurations schema: - $ref: >- - #/components/schemas/MetricSuggestedTagsAndAggregationsResponse - description: Success - '400': + $ref: '#/components/schemas/HistoricalMetricsConfigurationResponse' + description: OK + '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + id: dd.test.metric + type: historical_metrics_configurations schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': + $ref: '#/components/schemas/HistoricalMetricsConfigurationResponse' + description: Created + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Not Found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - late_metrics_config_write + summary: Enable historical metrics ingestion + tags: + - Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - late_metrics_config_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/historical-metrics-configurations/{metric_name}: + delete: + description: |- + Disable historical metrics ingestion for a metric. Idempotent: always returns 204, + whether or not the configuration existed or the metric itself still exists, so that + Terraform destroy succeeds for a metric removed out-of-band. + operationId: DeleteHistoricalMetricsConfiguration + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '204': + description: No Content + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: List active tags and aggregations + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - late_metrics_config_write + summary: Delete a historical metrics configuration tags: - Metrics x-permission: operator: OR permissions: - - metrics_read - /api/v2/metrics/{metric_name}/all-tags: + - late_metrics_config_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: >- - View indexed tag key-value pairs for a given metric name over the - previous hour. - operationId: ListTagsByMetricName + description: |- + Get the historical metrics ingestion configuration for a metric. Existence of the + resource means historical metrics ingestion is enabled; returns 404 when it is not + enabled for the metric. + operationId: GetHistoricalMetricsConfiguration parameters: - $ref: '#/components/parameters/MetricName' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + id: dd.test.metric + type: historical_metrics_configurations schema: - $ref: '#/components/schemas/MetricAllTagsResponse' - description: Success + $ref: '#/components/schemas/HistoricalMetricsConfigurationResponse' + description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Not Found '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - metrics_read - summary: List tags by metric name + summary: Get a historical metrics configuration tags: - Metrics x-permission: operator: OR permissions: - metrics_read - /api/v2/metrics/{metric_name}/assets: + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/tag-indexing-rules: get: - description: >- - Returns dashboards, monitors, notebooks, and SLOs that a metric is - stored in, if any. Updated every 24 hours. - operationId: ListMetricAssets + description: List tag indexing rules for an org, sorted by `rule_order`, with offset/limit pagination. + operationId: ListTagIndexingRules parameters: - - $ref: '#/components/parameters/MetricName' + - description: Page size (1–1000, default 100). + in: query + name: page[limit] + schema: + format: int64 + type: integer + - description: Page offset from the start of the list (default 0). + in: query + name: page[offset] + schema: + format: int64 + type: integer + - description: Substring filter on rule name. + in: query + name: search + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + exclude_tags_mode: false + metric_name_matches: + - dd.test.* + name: my-indexing-rule + rule_order: 1 + tags: + - env + - service + id: 00000000-0000-0000-0000-000000000001 + type: tag_indexing_rules + meta: + total: 1 schema: - $ref: '#/components/schemas/MetricAssetsResponse' - description: Success + $ref: '#/components/schemas/TagIndexingRulesResponse' + description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Too Many Requests security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Related Assets to a Metric + - AuthZ: + - metrics_read + summary: List tag indexing rules tags: - Metrics - /api/v2/metrics/{metric_name}/estimate: - get: - description: >- - Returns the estimated cardinality for a metric with a given tag, - percentile and number of aggregations configuration using Metrics - without Limits™. - operationId: EstimateMetricsOutputSeries - parameters: - - $ref: '#/components/parameters/MetricName' - - description: Filtered tag keys that the metric is configured to query with. - example: app,host - in: query - name: filter[groups] - required: false - schema: - type: string - - description: >- - The number of hours of look back (from now) to estimate cardinality - with. If unspecified, it defaults to 0 hours. - example: 49 - in: query - name: filter[hours_ago] - required: false - schema: - format: int32 - maximum: 2147483647 - minimum: 49 - type: integer - - description: Deprecated. Number of aggregations has no impact on volume. - example: 1 - in: query - name: filter[num_aggregations] - required: false - schema: - format: int32 - maximum: 9 - type: integer - - description: >- - A boolean, for distribution metrics only, to estimate cardinality if - the metric includes additional percentile aggregators. - example: true - in: query - name: filter[pct] - required: false - schema: - type: boolean - - description: >- - A window, in hours, from the look back to estimate cardinality with. - The minimum and default is 1 hour. - example: 6 - in: query - name: filter[timespan_h] - required: false - schema: - format: int32 - maximum: 2147483647 - type: integer + x-permission: + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a tag indexing rule for the org. `rule_order` is assigned server-side as max+1 + among existing rules; use the reorder endpoint to change the evaluation order. + Requires the `Manage Tags for Metrics` permission. + operationId: CreateTagIndexingRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_name_matches: + - dd.test.* + name: my-indexing-rule + tags: + - env + - service + type: tag_indexing_rules + schema: + $ref: '#/components/schemas/TagIndexingRuleCreateRequest' + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + exclude_tags_mode: false + metric_name_matches: + - dd.test.* + name: my-indexing-rule + rule_order: 1 + tags: + - env + - service + id: 00000000-0000-0000-0000-000000000001 + type: tag_indexing_rules schema: - $ref: '#/components/schemas/MetricEstimateResponse' - description: Success + $ref: '#/components/schemas/TagIndexingRuleResponse' + description: Created '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Too Many Requests - summary: Tag Configuration Cardinality Estimator + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Create a tag indexing rule tags: - Metrics + x-codegen-request-body-name: body x-permission: - operator: OPEN - permissions: [] - /api/v2/metrics/{metric_name}/tag-cardinalities: - get: - description: Returns the cardinality details of tags for a specific metric. - operationId: GetMetricTagCardinalityDetails - parameters: - - $ref: '#/components/parameters/MetricName' + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/tag-indexing-rules/order: + post: + description: |- + Atomically re-sequence the tag indexing rules for an org to match the supplied list of rule UUIDs. + The server assigns `rule_order` 1, 2, … matching each rule UUID by position in the list. + The UUIDs of all active rules must be provided; omitting any active rule UUID returns a 400 error. + Requires the `Manage Tags for Metrics` permission. + operationId: ReorderTagIndexingRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rule_ids: + - 00000000-0000-0000-0000-000000000001 + - 00000000-0000-0000-0000-000000000002 + type: tag_indexing_rules + schema: + $ref: '#/components/schemas/TagIndexingRuleOrderRequest' + required: true responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagCardinalitiesResponse' - description: Success + '204': + description: No Content '400': content: application/json: @@ -769,147 +1248,218 @@ paths: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' description: Too Many Requests - summary: Get tag key cardinality details + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Reorder tag indexing rules tags: - Metrics + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - metrics_read - /api/v2/metrics/{metric_name}/tags: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/tag-indexing-rules/{id}: delete: description: |- - Deletes a metric's tag configuration. Can only be used with application - keys from users with the `Manage Tags for Metrics` permission. - operationId: DeleteTagConfiguration + Soft-delete a tag indexing rule. Idempotent: returns 204 whether the rule existed or was already deleted. + Remaining rules in the org are automatically re-sequenced to keep `rule_order` dense and 1-based. + Requires the `Manage Tags for Metrics` permission. + operationId: DeleteTagIndexingRule parameters: - - $ref: '#/components/parameters/MetricName' + - $ref: '#/components/parameters/TagIndexingRuleId' responses: '204': description: No Content - '403': + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Too Many Requests - summary: Delete a tag configuration + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Delete a tag indexing rule tags: - Metrics x-permission: operator: OR permissions: - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Returns the tag configuration for the given metric name. - operationId: ListTagConfigurationByName + description: Get a single tag indexing rule by its UUID. + operationId: GetTagIndexingRule parameters: - - $ref: '#/components/parameters/MetricName' + - $ref: '#/components/parameters/TagIndexingRuleId' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + exclude_tags_mode: false + metric_name_matches: + - dd.test.* + name: my-indexing-rule + rule_order: 1 + tags: + - env + - service + id: 00000000-0000-0000-0000-000000000001 + type: tag_indexing_rules schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: Success + $ref: '#/components/schemas/TagIndexingRuleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Not Found '429': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Too Many Requests security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - metrics_read - summary: List tag configuration by name + summary: Get a tag indexing rule tags: - Metrics x-permission: operator: OR permissions: - metrics_read - patch: - description: >- - Update the tag configuration of a metric or percentile aggregations of a - distribution metric or custom aggregations - - of a count, rate, or gauge metric. By setting `exclude_tags_mode` to - true the behavior is changed - - from an allow-list to a deny-list, and tags in the defined list will not - be queryable. - - Can only be used with application keys from users with the `Manage Tags - for Metrics` permission. This endpoint requires - - a tag configuration to be created first. - operationId: UpdateTagConfiguration + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Partially update a tag indexing rule. Fields omitted from the request body are left unchanged. + Setting `rule_order` to a value already used by another rule returns 409; use the + reorder endpoint for atomic re-sequencing. Requires the `Manage Tags for Metrics` permission. + operationId: UpdateTagIndexingRule parameters: - - $ref: '#/components/parameters/MetricName' + - $ref: '#/components/parameters/TagIndexingRuleId' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: my-updated-rule + tags: + - env + - service + - version + type: tag_indexing_rules schema: - $ref: '#/components/schemas/MetricTagConfigurationUpdateRequest' + $ref: '#/components/schemas/TagIndexingRuleUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + exclude_tags_mode: false + metric_name_matches: + - dd.test.* + name: my-updated-rule + rule_order: 1 + tags: + - env + - service + - version + id: 00000000-0000-0000-0000-000000000001 + type: tag_indexing_rules schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' + $ref: '#/components/schemas/TagIndexingRuleResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Forbidden - '422': + '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict '429': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Too Many Requests - summary: Update a tag configuration + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Update a tag indexing rule tags: - Metrics x-codegen-request-body-name: body @@ -917,37 +1467,44 @@ paths: operator: OR permissions: - metric_tags_write - post: - description: >- - Create and define a list of queryable tag keys for an existing - count/gauge/rate/distribution metric. - - Optionally, include percentile aggregations on any distribution metric. - By setting `exclude_tags_mode` - - to true, the behavior is changed from an allow-list to a deny-list, and - tags in the defined list are - - not queryable. Can only be used with application keys of users with the - `Manage Tags for Metrics` - - permission. - operationId: CreateTagConfiguration + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/{metric_name}/active-configurations: + get: + description: List tags and aggregations that are actively queried on dashboards, notebooks, monitors, the Metrics Explorer, and using the API for a given metric name. + operationId: ListActiveMetricConfigurations parameters: - $ref: '#/components/parameters/MetricName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationCreateRequest' - required: true + - description: |- + The number of seconds of look back (from now). + Default value is 604,800 (1 week), minimum value is 7200 (2 hours), maximum value is 2,630,000 (1 month). + example: 7200 + in: query + name: window[seconds] + required: false + schema: + format: int64 + type: integer responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + active_aggregations: + - space: avg + time: avg + active_tags: + - app + id: http.endpoint.request + type: actively_queried_configurations schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: Created + $ref: '#/components/schemas/MetricSuggestedTagsAndAggregationsResponse' + description: Success '400': content: application/json: @@ -960,422 +1517,1880 @@ paths: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden - '409': + '404': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Conflict + description: Not Found '429': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Too Many Requests - summary: Create a tag configuration + summary: List active tags and aggregations tags: - Metrics - x-codegen-request-body-name: body x-permission: operator: OR permissions: - - metric_tags_write - /api/v2/metrics/{metric_name}/volumes: + - metrics_read + /api/v2/metrics/{metric_name}/all-tags: get: - description: >- - View distinct metrics volumes for the given metric name. - - - Custom metrics generated in-app from other products will return `null` - for ingested volumes. - operationId: ListVolumesByMetricName + description: |- + View indexed and ingested tags for a given metric name. + Results are filtered by the `window[seconds]` parameter, which defaults to 14400 (4 hours). + operationId: ListTagsByMetricName parameters: - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricVolumesResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + - description: |- + The number of seconds of look back (from now) to query for tag data. + Default value is 14400 (4 hours), minimum value is 14400 (4 hours). + example: 14400 + in: query + name: window[seconds] + required: false + schema: + format: int64 + type: integer + - description: |- + Filter results to tags from data points that have the specified tags. + For example, `filter[tags]=env:staging,host:123` returns tags only from data points with both `env:staging` and `host:123`. + example: env:staging,host:123 + in: query + name: filter[tags] + required: false + schema: + type: string + - description: |- + Filter returned tags to those matching a substring. + For example, `filter[match]=env` returns tags like `env:prod`, `environment:staging`, etc. + example: env + in: query + name: filter[match] + required: false + schema: + type: string + - description: |- + Whether to include tag values in the response. + Defaults to true. + example: true + in: query + name: filter[include_tag_values] + required: false + schema: + type: boolean + - description: |- + Whether to allow partial results. + Defaults to false. + example: false + in: query + name: filter[allow_partial] + required: false + schema: + type: boolean + - description: Maximum number of results to return. + example: 1000 + in: query + name: page[limit] + required: false + schema: + default: 1000000 + format: int32 + maximum: 1000000 + minimum: 1 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - env:prod + - host:myhost + id: system.cpu.user + type: metrics + schema: + $ref: '#/components/schemas/MetricAllTagsResponse' + description: Success + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tags by metric name + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metrics_read + /api/v2/metrics/{metric_name}/assets: + get: + description: Returns dashboards, monitors, notebooks, and SLOs that a metric is stored in, if any. Updated every 24 hours. + operationId: ListMetricAssets + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: http.endpoint.request + relationships: + dashboards: + data: + - id: abc-def-xyz + type: dashboards + monitors: + data: + - id: '1775073' + type: monitors + notebooks: + data: [] + slos: + data: [] + type: metrics + included: + - attributes: + popularity: 3 + title: My Dashboard + url: /dashboard/abc-def-xyz + id: abc-def-xyz + type: dashboards + - attributes: + title: CPU utilization is high + url: /monitors/1775073 + id: '1775073' + type: monitors + schema: + $ref: '#/components/schemas/MetricAssetsResponse' + description: Success + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Related Assets to a Metric + tags: + - Metrics + /api/v2/metrics/{metric_name}/estimate: + get: + description: Returns the estimated cardinality for a metric with a given tag, percentile and number of aggregations configuration using Metrics without Limits™. + operationId: EstimateMetricsOutputSeries + parameters: + - $ref: '#/components/parameters/MetricName' + - description: 'Comma-separated list of tag keys that the metric is configured to query with. For example: `filter[groups]=app,host`.' + example: app,host + in: query + name: filter[groups] + required: false + schema: + type: string + - description: When `true`, `filter[groups]` is treated as an exclude list instead of an include list. Defaults to `false`. + example: false + in: query + name: filter[exclude_tags_mode] + required: false + schema: + type: boolean + - description: The number of hours of look back (from now) to estimate cardinality with. If unspecified, it defaults to 0 hours. + example: 49 + in: query + name: filter[hours_ago] + required: false + schema: + format: int32 + maximum: 2147483647 + minimum: 49 + type: integer + - description: Deprecated. Number of aggregations has no impact on volume. + example: 1 + in: query + name: filter[num_aggregations] + required: false + schema: + format: int32 + maximum: 9 + type: integer + - description: Deprecated. This query parameter has no effect on the estimate. + example: true + in: query + name: filter[pct] + required: false + schema: + type: boolean + - description: A window, in hours, from the look back to estimate cardinality with. The minimum and default is 1 hour. + example: 6 + in: query + name: filter[timespan_h] + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + estimate_type: count_or_gauge + estimated_at: '2024-01-01T00:00:00+00:00' + estimated_output_series: 50 + id: system.cpu.user + type: metric_cardinality_estimate + schema: + $ref: '#/components/schemas/MetricEstimateResponse' + description: Success + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + summary: Tag Configuration Cardinality Estimator + tags: + - Metrics + x-permission: + operator: OPEN + permissions: [] + /api/v2/metrics/{metric_name}/tag-cardinalities: + get: + description: Returns the cardinality details of tags for a specific metric. + operationId: GetMetricTagCardinalityDetails + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + cardinality_delta: 25 + id: host + type: tag_cardinality + - attributes: + cardinality_delta: 5 + id: env + type: tag_cardinality + meta: + metric_name: system.cpu.user + schema: + $ref: '#/components/schemas/MetricTagCardinalitiesResponse' + description: Success + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too Many Requests + summary: Get tag key cardinality details + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metrics_read + /api/v2/metrics/{metric_name}/tag-indexing-rule-exemptions: + delete: + description: |- + Remove a metric's exemption from tag indexing rules. Idempotent: returns 204 whether or not + an exemption existed. Any associated legacy tag configuration record is also removed. + Requires the `Manage Tags for Metrics` permission. + operationId: DeleteTagIndexingRuleExemption + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Delete a tag indexing rule exemption + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Returns why a metric is excluded from tag indexing rules. + Returns 200 with `kind=exemption` when an explicit exemption exists, 200 with + `kind=legacy_tag_configuration` when the metric has a legacy tag configuration acting as an + implicit exclusion, or 404 when neither applies. + operationId: GetTagIndexingRuleExemption + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + created_by_handle: user@datadoghq.com + kind: exemption + reason: This metric has a pre-existing tag configuration. + id: dd.test.metric + type: tag_indexing_rule_exemptions + schema: + $ref: '#/components/schemas/TagIndexingRuleExemptionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get a tag indexing rule exemption + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Exempt a metric from all tag indexing rules. The response includes the created + exemption resource. Requires the `Manage Tags for Metrics` permission. + operationId: CreateTagIndexingRuleExemption + parameters: + - $ref: '#/components/parameters/MetricName' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + reason: This metric has a pre-existing tag configuration. + type: tag_indexing_rule_exemptions + schema: + $ref: '#/components/schemas/TagIndexingRuleExemptionCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T12:00:00.000Z' + created_by_handle: user@datadoghq.com + kind: exemption + reason: This metric has a pre-existing tag configuration. + id: dd.test.metric + type: tag_indexing_rule_exemptions + schema: + $ref: '#/components/schemas/TagIndexingRuleExemptionResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metric_tags_write + summary: Create a tag indexing rule exemption + tags: + - Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - metric_tags_write + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/{metric_name}/tag-indexing-rules: + get: + description: |- + List the tag indexing rules that apply to a given metric, sorted by `rule_order`. + Matching is performed server-side using each rule's `metric_name_matches` glob patterns. + operationId: ListTagIndexingRulesForMetric + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + meta: + total: 0 + schema: + $ref: '#/components/schemas/TagIndexingRulesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tag indexing rules for a metric + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metrics_read + x-unstable: |- + **Note**: The Tag Indexing Rules feature is currently in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/metrics/{metric_name}/tags: + delete: + description: |- + Deletes a metric's tag configuration. Can only be used with application + keys from users with the `Manage Tags for Metrics` permission. + Note: This operation is irreversible. + operationId: DeleteTagConfiguration + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + summary: Delete a tag configuration + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metric_tags_write + get: + description: |- + Returns the tag configuration for the given metric name. + + A metric may exist and submit data without having a tag configuration. If no tag configuration exists + for the metric, this endpoint returns `404 Not Found`. This response does not indicate that the metric + itself is missing. + operationId: ListTagConfigurationByName + parameters: + - $ref: '#/components/parameters/MetricName' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: '#/components/schemas/MetricTagConfigurationResponse' + description: Success + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: No tag configuration exists for the metric + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: List tag configuration by name + tags: + - Metrics + x-permission: + operator: OR + permissions: + - metrics_read + patch: + description: |- + Update the tag configuration of a metric or percentile aggregations of a distribution metric or custom aggregations + of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true the behavior is changed + from an allow-list to a deny-list, and tags in the defined list will not be queryable. + Can only be used with application keys from users with the `Manage Tags for Metrics` permission. This endpoint requires + a tag configuration to be created first. + operationId: UpdateTagConfiguration + parameters: + - $ref: '#/components/parameters/MetricName' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + group_by: + - app + - datacenter + include_percentiles: false + id: http.endpoint.request + type: manage_tags + schema: + $ref: '#/components/schemas/MetricTagConfigurationUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: '#/components/schemas/MetricTagConfigurationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + summary: Update a tag configuration + tags: + - Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - metric_tags_write + post: + description: |- + Create and define a list of queryable tag keys for an existing count/gauge/rate/distribution metric. + Optionally, include percentile aggregations on any distribution metric. By setting `exclude_tags_mode` + to true, the behavior is changed from an allow-list to a deny-list, and tags in the defined list are + not queryable. Can only be used with application keys of users with the `Manage Tags for Metrics` + permission. + operationId: CreateTagConfiguration + parameters: + - $ref: '#/components/parameters/MetricName' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + include_percentiles: false + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: '#/components/schemas/MetricTagConfigurationCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + metric_type: distribution + tags: + - app + - datacenter + id: http.endpoint.request + type: manage_tags + schema: + $ref: '#/components/schemas/MetricTagConfigurationResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + summary: Create a tag configuration + tags: + - Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - metric_tags_write + /api/v2/metrics/{metric_name}/volumes: + get: + description: |- + View hourly average cardinality for the given metric name over the look back period. + For Metric Name Pricing customers, view total point volume for the given metric name + over the look back period. + operationId: ListVolumesByMetricName + parameters: + - $ref: '#/components/parameters/MetricName' + - description: |- + The number of seconds of look back (from now). + Default value is 3,600 (1 hour), maximum value is 2,592,000 (1 month). + example: 7200 + in: query + name: window[seconds] + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + indexed_volume: 100 + ingested_volume: 200 + id: http.endpoint.request + type: metric_volumes + schema: + $ref: '#/components/schemas/MetricVolumesResponse' + description: Success + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too Many Requests + summary: List distinct metric volumes by metric name + tags: + - Metrics + x-permission: + operator: OPEN + permissions: [] + /api/v2/query/scalar: + post: + description: |- + Query scalar values (as seen on Query Value, Table, and Toplist widgets). + Multiple data sources are supported with the ability to + process the data using formulas and functions. + operationId: QueryScalarData + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + formulas: + - formula: a+b + limit: + count: 10 + from: 1568899800000 + queries: + - aggregator: avg + data_source: metrics + query: avg:system.cpu.user{*} by {env} + to: 1568923200000 + type: scalar_request + schema: + $ref: '#/components/schemas/ScalarFormulaQueryRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + columns: [] + type: scalar_response + schema: + $ref: '#/components/schemas/ScalarFormulaQueryResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - timeseries_query + summary: Query scalar data across multiple products + tags: + - Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - timeseries_query + /api/v2/query/timeseries: + post: + description: |- + Query timeseries data across various data sources and + process the data by applying formulas and functions. Datadog recommends + using this endpoint over the v1 `/api/v1/query` endpoint for querying + timeseries data. + operationId: QueryTimeseriesData + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + formulas: + - formula: a+b + limit: + count: 10 + from: 1568899800000 + interval: 5000 + queries: + - data_source: metrics + query: avg:system.cpu.user{*} by {env} + to: 1568923200000 + type: timeseries_request + schema: + $ref: '#/components/schemas/TimeseriesFormulaQueryRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + series: [] + times: [] + values: [] + type: timeseries_response + schema: + $ref: '#/components/schemas/TimeseriesFormulaQueryResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - timeseries_query + summary: Query timeseries data across multiple products + tags: + - Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - timeseries_query + /api/v2/series: + post: + description: |- + The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards. + The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes). + + If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect: + + - 64 bits for the timestamp + - 64 bits for the value + - 20 bytes for the metric names + - 50 bytes for the timeseries + - The full payload is approximately 100 bytes. + + Host name is one of the resources in the Resources field. + operationId: SubmitMetrics + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: '#/components/schemas/MetricContentEncoding' + requestBody: + content: + application/json: + examples: + default: + value: + series: + - metric: system.load.1 + points: + - timestamp: 1636629071 + value: 1.1 + resources: + - name: dummyhost + type: host + type: 0 + dynamic-points: + description: Post time-series data that can be graphed on Datadog’s dashboards. + externalValue: examples/metrics/dynamic-points.json.sh + summary: Dynamic Points + x-variables: + NOW: $(date +%s) + schema: + $ref: '#/components/schemas/MetricPayload' + required: true + responses: + '202': + content: + application/json: + examples: + default: + value: + errors: [] + schema: + $ref: '#/components/schemas/IntakePayloadAccepted' + description: Payload accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request '403': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': + description: Authentication error + '408': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Request timeout + '413': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + description: Payload too large '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Submit metrics + tags: + - Metrics + x-codegen-request-body-name: body + /api/v2/spans/analytics/aggregate: + post: + description: |- + The API endpoint to aggregate spans into buckets and compute metrics and timeseries. + This endpoint is rate limited to `300` requests per hour. + operationId: AggregateSpans + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compute: + - aggregation: pc90 + interval: 5m + metric: '@duration' + type: timeseries + filter: + from: now-15m + query: service:web* AND @http.status_code:[200 TO 299] + to: now + group_by: + - facet: host + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT + type: aggregate_request + schema: + $ref: '#/components/schemas/SpansAggregateRequest' + required: true + responses: + '200': content: application/json: + examples: + default: + value: + data: + - attributes: + by: + host: my-hostname + computes: + c0: 19 + id: abc-123 + type: bucket + meta: + elapsed: 132 + status: done schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: List distinct metric volumes by metric name + $ref: '#/components/schemas/SpansAggregateResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Aggregate spans tags: - - Metrics + - Spans + x-codegen-request-body-name: body x-permission: - operator: OPEN - permissions: [] - /api/v2/query/scalar: + operator: OR + permissions: + - apm_read + /api/v2/spans/events: + get: + description: |- + List endpoint returns spans that match a span search query. + [Results are paginated][1]. + + Use this endpoint to see your latest spans. + This endpoint is rate limited to `300` requests per hour. + + [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api + operationId: ListSpansGet + parameters: + - description: Search query following spans syntax. + example: '@datacenter:us @role:db' + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested spans. Supports date-time ISO8601, date math, and regular timestamps (milliseconds). + example: '2023-01-02T09:42:36.320Z' + in: query + name: filter[from] + required: false + schema: + type: string + - description: Maximum timestamp for requested spans. Supports date-time ISO8601, date math, and regular timestamps (milliseconds). + example: '2023-01-03T09:42:36.320Z' + in: query + name: filter[to] + required: false + schema: + type: string + - description: Order of spans in results. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/SpansSort' + - description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of spans in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + service: web-store + id: abc-123 + type: spans + schema: + $ref: '#/components/schemas/SpansListResponse' + description: OK + '400': + $ref: '#/components/responses/SpansBadRequestResponse' + '403': + $ref: '#/components/responses/SpansForbiddenResponse' + '422': + $ref: '#/components/responses/SpansUnprocessableEntityResponse' + '429': + $ref: '#/components/responses/SpansTooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_read + summary: Get a list of spans + tags: + - Spans + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + /api/v2/spans/events/search: post: - description: >- - Query scalar values (as seen on Query Value, Table, and Toplist - widgets). + description: |- + List endpoint returns spans that match a span search query. + [Results are paginated][1]. - Multiple data sources are supported with the ability to + Use this endpoint to build complex spans filtering and search. + This endpoint is rate limited to `300` requests per hour. - process the data using formulas and functions. - operationId: QueryScalarData + [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api + operationId: ListSpans requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + filter: + from: now-15m + query: service:web* AND @http.status_code:[200 TO 299] + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + type: search_request schema: - $ref: '#/components/schemas/ScalarFormulaQueryRequest' + $ref: '#/components/schemas/SpansListRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + env: prod + service: test-service + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: spans + meta: + elapsed: 132 + status: done schema: - $ref: '#/components/schemas/ScalarFormulaQueryResponse' + $ref: '#/components/schemas/SpansListResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' + $ref: '#/components/responses/SpansBadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/SpansForbiddenResponse' + '422': + $ref: '#/components/responses/SpansUnprocessableEntityResponse' '429': - $ref: '#/components/responses/TooManyRequestsResponse' + $ref: '#/components/responses/SpansTooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - timeseries_query - summary: Query scalar data across multiple products + - apm_read + summary: Search spans + tags: + - Spans + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.data.attributes.page.cursor + cursorPath: meta.page.after + limitParam: body.data.attributes.page.limit + resultsPath: data + /api/v1/distribution_points: + post: + description: The distribution points end-point allows you to post distribution data that can be graphed on Datadog’s dashboards. + operationId: SubmitDistributionPoints + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: '#/components/schemas/DistributionPointsContentEncoding' + requestBody: + content: + application/json: + examples: + default: + value: + series: + - host: test.example.com + metric: system.load.1 + points: + - - 1636629071 + - - 1 + - 2 + tags: + - environment:test + type: distribution + dynamic-points: + description: Post time-series data that can be graphed on Datadog’s dashboards. + externalValue: examples/metrics/distribution-points.json.sh + summary: Dynamic Points + x-variables: + NOW: $(date +%s) + schema: + $ref: '#/components/schemas/DistributionPointsPayload' + required: true + responses: + '202': + content: + text/json: + examples: + default: + value: + status: ok + schema: + $ref: '#/components/schemas/IntakePayloadAcceptedV1' + description: Payload accepted + '400': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '408': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Request timeout + '413': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Payload too large + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Submit distribution points tags: - Metrics x-codegen-request-body-name: body + /api/v1/metrics: + get: + description: Get the list of actively reporting metrics from a given time until now. + operationId: ListActiveMetrics + parameters: + - description: Seconds since the Unix epoch. + in: query + name: from + required: true + schema: + format: int64 + type: integer + - description: |- + Hostname for filtering the list of metrics returned. + If set, metrics retrieved are those with the corresponding hostname tag. + in: query + name: host + required: false + schema: + type: string + - description: |- + Filter metrics that have been submitted with the given tags. Supports boolean and wildcard expressions. + Cannot be combined with other filters. + example: env IN (staging,test) AND service:web + in: query + name: tag_filter + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + from: '1567816237' + metrics: + - system.cpu.idle + - system.load.1 + schema: + $ref: '#/components/schemas/MetricsListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - metrics_read + summary: Get active metrics list + tags: + - Metrics x-permission: operator: OR permissions: - - timeseries_query - /api/v2/query/timeseries: - post: - description: |- - Query timeseries data across various data sources and - process the data by applying formulas and functions. - operationId: QueryTimeseriesData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TimeseriesFormulaQueryRequest' - required: true + - metrics_read + /api/v1/metrics/{metric_name}: + get: + description: Get metadata about a specific metric. + operationId: GetMetricMetadata + parameters: + - description: Name of the metric for which to get metadata. + in: path + name: metric_name + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + description: Number of requests received. + per_unit: second + type: count + unit: byte schema: - $ref: '#/components/schemas/TimeseriesFormulaQueryResponse' + $ref: '#/components/schemas/MetricMetadataV1' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - timeseries_query - summary: Query timeseries data across multiple products + - metrics_read + summary: Get metric metadata tags: - Metrics - x-codegen-request-body-name: body x-permission: operator: OR permissions: - - timeseries_query - /api/v2/series: - post: - description: >- - The metrics end-point allows you to post time-series data that can be - graphed on Datadog’s dashboards. - - The maximum payload size is 500 kilobytes (512000 bytes). Compressed - payloads must have a decompressed size of less than 5 megabytes (5242880 - bytes). - - - If you’re submitting metrics directly to the Datadog API without using - DogStatsD, expect: - - - - 64 bits for the timestamp - - - 64 bits for the value - - - 20 bytes for the metric names - - - 50 bytes for the timeseries - - - The full payload is approximately 100 bytes. - - - Host name is one of the resources in the Resources field. - operationId: SubmitMetrics + - metrics_read + put: + description: Edit metadata of a specific metric. Find out more about [supported types](https://docs.datadoghq.com/developers/metrics). + operationId: UpdateMetricMetadata parameters: - - description: HTTP header used to compress the media-type. - in: header - name: Content-Encoding - required: false + - description: Name of the metric for which to edit metadata. + in: path + name: metric_name + required: true schema: - $ref: '#/components/schemas/MetricContentEncoding' + type: string requestBody: content: application/json: examples: - dynamic-points: - description: >- - Post time-series data that can be graphed on Datadog’s - dashboards. - externalValue: examples/metrics/dynamic-points.json.sh - summary: Dynamic Points - x-variables: - NOW: $(date +%s) + default: + value: + description: Number of requests received. + per_unit: second + type: count + unit: byte schema: - $ref: '#/components/schemas/MetricPayload' + $ref: '#/components/schemas/MetricMetadataV1' + description: New metadata. required: true responses: - '202': + '200': content: application/json: + examples: + default: + value: + description: Number of requests received. + per_unit: second + type: count + unit: byte schema: - $ref: '#/components/schemas/IntakePayloadAccepted' - description: Payload accepted + $ref: '#/components/schemas/MetricMetadataV1' + description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/APIErrorResponseV1' description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Request timeout - '413': + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Payload too large + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Submit metrics + summary: Edit metric metadata tags: - Metrics x-codegen-request-body-name: body - /api/v2/spans/analytics/aggregate: - post: - description: >- - The API endpoint to aggregate spans into buckets and compute metrics and - timeseries. - - This endpoint is rate limited to `300` requests per hour. - operationId: AggregateSpans - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansAggregateRequest' - required: true + x-permission: + operator: OR + permissions: + - metrics_metadata_write + /api/v1/query: + get: + description: |- + Query timeseries points. Datadog recommends using the v2 + `/api/v2/query/timeseries` endpoint over this endpoint for + querying timeseries data. + operationId: QueryMetrics + parameters: + - description: Start of the queried time period, seconds since the Unix epoch. + in: query + name: from + required: true + schema: + format: int64 + type: integer + - description: End of the queried time period, seconds since the Unix epoch. + in: query + name: to + required: true + schema: + format: int64 + type: integer + - description: Query string. + in: query + name: query + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + query: avg:system.cpu.idle{*} + res_type: time_series + series: + - aggr: avg + display_name: system.cpu.idle + expression: avg:system.cpu.idle{*} + metric: system.cpu.idle + pointlist: + - - 1681683300000 + - 77.62145685254418 + scope: '*' + status: ok schema: - $ref: '#/components/schemas/SpansAggregateResponse' + $ref: '#/components/schemas/MetricsQueryResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - apm_read - summary: Aggregate spans + - timeseries_query + summary: Query timeseries points tags: - - Spans - x-codegen-request-body-name: body + - Metrics x-permission: operator: OR permissions: - - apm_read - /api/v2/spans/events: + - timeseries_query + /api/v1/search: get: + deprecated: true description: |- - List endpoint returns spans that match a span search query. - [Results are paginated][1]. + **Note**: This endpoint is deprecated. Use `/api/v2/metrics` instead. - Use this endpoint to see your latest spans. - This endpoint is rate limited to `300` requests per hour. - - [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api - operationId: ListSpansGet + Search for metrics from the last 24 hours in Datadog. + operationId: ListMetrics parameters: - - description: Search query following spans syntax. - example: '@datacenter:us @role:db' - in: query - name: filter[query] - required: false - schema: - type: string - - description: >- - Minimum timestamp for requested spans. Supports date-time ISO8601, - date math, and regular timestamps (milliseconds). - example: '2023-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - type: string - - description: >- - Maximum timestamp for requested spans. Supports date-time ISO8601, - date math, and regular timestamps (milliseconds). - example: '2023-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - type: string - - description: Order of spans in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/SpansSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + - description: Query string to search metrics upon. Can optionally be prefixed with `metrics:`. in: query - name: page[cursor] - required: false + name: q + required: true schema: type: string - - description: Maximum number of spans in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer responses: '200': content: application/json: + examples: + default: + value: + results: + metrics: + - system.cpu.idle + - system.load.1 schema: - $ref: '#/components/schemas/SpansListResponse' + $ref: '#/components/schemas/MetricSearchResponse' description: OK '400': - $ref: '#/components/responses/SpansBadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request '403': - $ref: '#/components/responses/SpansForbiddenResponse' - '422': - $ref: '#/components/responses/SpansUnprocessableEntityResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden '429': - $ref: '#/components/responses/SpansTooManyRequestsResponse' + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - apm_read - summary: Get a list of spans + - metrics_read + summary: Search metrics tags: - - Spans - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - /api/v2/spans/events/search: + - Metrics + x-permission: + operator: OR + permissions: + - metrics_read + /api/v1/series: post: description: |- - List endpoint returns spans that match a span search query. - [Results are paginated][1]. + The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards. + The maximum payload size is 3.2 megabytes (3200000 bytes). Compressed payloads must have a decompressed size of less than 62 megabytes (62914560 bytes). - Use this endpoint to build complex spans filtering and search. - This endpoint is rate limited to `300` requests per hour. + If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect: - [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api - operationId: ListSpans + - 64 bits for the timestamp + - 64 bits for the value + - 40 bytes for the metric names + - 50 bytes for the timeseries + - The full payload is approximately 100 bytes. However, with the DogStatsD API, + compression is applied, which reduces the payload size. + operationId: SubmitMetricsV1 + parameters: + - description: HTTP header used to compress the media-type. + in: header + name: Content-Encoding + required: false + schema: + $ref: '#/components/schemas/MetricContentEncodingV1' requestBody: content: application/json: + examples: + default: + value: + series: + - host: test.example.com + metric: system.load.1 + points: + - - 1636629071 + - 0.7 + tags: + - environment:test + type: gauge + dynamic-points: + description: Post time-series data that can be graphed on Datadog’s dashboards. + externalValue: examples/metrics/dynamic-points.json.sh + summary: Dynamic Points + x-variables: + NOW: $(date +%s) schema: - $ref: '#/components/schemas/SpansListRequest' + $ref: '#/components/schemas/MetricsPayload' required: true responses: - '200': + '202': content: - application/json: + text/json: + examples: + default: + value: + status: ok schema: - $ref: '#/components/schemas/SpansListResponse' - description: OK + $ref: '#/components/schemas/IntakePayloadAcceptedV1' + description: Payload accepted '400': - $ref: '#/components/responses/SpansBadRequestResponse' + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request '403': - $ref: '#/components/responses/SpansForbiddenResponse' - '422': - $ref: '#/components/responses/SpansUnprocessableEntityResponse' + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '408': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Request timeout + '413': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Payload too large '429': - $ref: '#/components/responses/SpansTooManyRequestsResponse' + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Search spans + summary: Submit metrics tags: - - Spans + - Metrics x-codegen-request-body-name: body - x-pagination: - cursorParam: body.data.attributes.page.cursor - cursorPath: meta.page.after - limitParam: body.data.attributes.page.limit - resultsPath: data components: schemas: DatasetResponseMulti: @@ -1409,6 +3424,47 @@ components: required: - data type: object + DdsqlTabularQueryRequest: + description: Wrapper for a DDSQL tabular query execution request. + properties: + data: + $ref: '#/components/schemas/DdsqlTabularQueryRequestData' + required: + - data + type: object + DdsqlTabularQueryResponse: + description: |- + Response envelope for both the execute and fetch DDSQL tabular query endpoints. + Carries the JSON:API primary resource and a top-level `meta` block with + request-scoped observability handles. + properties: + data: + $ref: '#/components/schemas/DdsqlTabularQueryResponseData' + meta: + $ref: '#/components/schemas/DdsqlTabularQueryResponseMeta' + required: + - data + - meta + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + DdsqlTabularQueryFetchRequest: + description: Wrapper for a DDSQL tabular query fetch request. + properties: + data: + $ref: '#/components/schemas/DdsqlTabularQueryFetchRequestData' + required: + - data + type: object MetricTagConfigurationMetricTypeCategory: default: distribution description: The metric's type category. @@ -1428,6 +3484,11 @@ components: items: $ref: '#/components/schemas/MetricsAndMetricTagConfigurations' type: array + included: + description: Array of metric volume resources included when requested with `include=metric_volumes`. + items: + $ref: '#/components/schemas/MetricIngestedIndexedVolume' + type: array links: $ref: '#/components/schemas/MetricsListResponseLinks' meta: @@ -1471,26 +3532,82 @@ components: required: - data type: object + HistoricalMetricsConfigurationCreateRequest: + description: Request body for enabling historical metrics ingestion for a metric. + properties: + data: + $ref: '#/components/schemas/HistoricalMetricsConfigurationCreateData' + required: + - data + type: object + HistoricalMetricsConfigurationResponse: + description: Response containing a historical metrics configuration. + properties: + data: + $ref: '#/components/schemas/HistoricalMetricsConfigurationData' + readOnly: true + type: object + TagIndexingRulesResponse: + description: Response containing a page of tag indexing rules. + properties: + data: + description: Array of tag indexing rule objects. + items: + $ref: '#/components/schemas/TagIndexingRuleData' + type: array + links: + $ref: '#/components/schemas/MetricsListResponseLinks' + meta: + $ref: '#/components/schemas/TagIndexingRulesResponseMeta' + readOnly: true + type: object + TagIndexingRuleCreateRequest: + description: Request body for creating a tag indexing rule. + properties: + data: + $ref: '#/components/schemas/TagIndexingRuleCreateData' + required: + - data + type: object + TagIndexingRuleResponse: + description: Response containing a single tag indexing rule. + properties: + data: + $ref: '#/components/schemas/TagIndexingRuleData' + readOnly: true + type: object + TagIndexingRuleOrderRequest: + description: Request body for reordering tag indexing rules. + properties: + data: + $ref: '#/components/schemas/TagIndexingRuleOrderData' + required: + - data + type: object + TagIndexingRuleUpdateRequest: + description: Request body for updating a tag indexing rule. + properties: + data: + $ref: '#/components/schemas/TagIndexingRuleUpdateData' + required: + - data + type: object MetricSuggestedTagsAndAggregationsResponse: - description: >- - Response object that includes a single metric's actively queried tags - and aggregations. + description: Response object that includes a single metric's actively queried tags and aggregations. properties: data: $ref: '#/components/schemas/MetricSuggestedTagsAndAggregations' readOnly: true type: object MetricAllTagsResponse: - description: Response object that includes a single metric's indexed tags. + description: Response object that includes a single metric's indexed and ingested tags. properties: data: $ref: '#/components/schemas/MetricAllTags' readOnly: true type: object MetricAssetsResponse: - description: >- - Response object that includes related dashboards, monitors, notebooks, - and SLOs. + description: Response object that includes related dashboards, monitors, notebooks, and SLOs. properties: data: $ref: '#/components/schemas/MetricAssetResponseData' @@ -1507,9 +3624,7 @@ components: $ref: '#/components/schemas/MetricEstimate' type: object MetricTagCardinalitiesResponse: - description: > - Response object that includes an array of objects representing the - cardinality details of a metric's tags. + description: Response object that includes an array of objects representing the cardinality details of a metric's tags. properties: data: $ref: '#/components/schemas/MetricTagCardinalitiesData' @@ -1517,16 +3632,20 @@ components: $ref: '#/components/schemas/MetricTagCardinalitiesMeta' readOnly: true type: object - JSONAPIErrorResponse: - description: API error response. + TagIndexingRuleExemptionResponse: + description: Response containing a tag indexing rule exemption. properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array + data: + $ref: '#/components/schemas/TagIndexingRuleExemptionData' + readOnly: true + type: object + TagIndexingRuleExemptionCreateRequest: + description: Request body for creating a tag indexing rule exemption. + properties: + data: + $ref: '#/components/schemas/TagIndexingRuleExemptionCreateData' required: - - errors + - data type: object MetricTagConfigurationResponse: description: Response object which includes a single metric's tag configuration. @@ -1536,9 +3655,7 @@ components: readOnly: true type: object MetricTagConfigurationUpdateRequest: - description: >- - Request object that includes the metric that you would like to edit the - tag configuration on. + description: Request object that includes the metric that you would like to edit the tag configuration on. properties: data: $ref: '#/components/schemas/MetricTagConfigurationUpdateData' @@ -1546,9 +3663,7 @@ components: - data type: object MetricTagConfigurationCreateRequest: - description: >- - Request object that includes the metric that you would like to configure - tags for. + description: Request object that includes the metric that you would like to configure tags for. properties: data: $ref: '#/components/schemas/MetricTagConfigurationCreateData' @@ -1588,9 +3703,7 @@ components: - data type: object TimeseriesFormulaQueryResponse: - description: >- - A message containing one response to a timeseries query made with - timeseries formula query request. + description: A message containing one response to a timeseries query made with timeseries formula query request. properties: data: $ref: '#/components/schemas/TimeseriesResponse' @@ -1641,9 +3754,7 @@ components: type: array type: object SpansAggregateRequest: - description: >- - The object sent with the request to retrieve a list of aggregated spans - from your organization. + description: The object sent with the request to retrieve a list of aggregated spans from your organization. properties: data: $ref: '#/components/schemas/SpansAggregateData' @@ -1669,9 +3780,7 @@ components: - TIMESTAMP_ASCENDING - TIMESTAMP_DESCENDING SpansListResponse: - description: >- - Response object with all spans matching the request and pagination - information. + description: Response object with all spans matching the request and pagination information. properties: data: description: Array of spans matching the request. @@ -1689,6 +3798,184 @@ components: data: $ref: '#/components/schemas/SpansListRequestData' type: object + DistributionPointsContentEncoding: + description: HTTP header used to compress the media-type. + enum: + - deflate + type: string + x-enum-varnames: + - DEFLATE + DistributionPointsPayload: + description: The distribution points payload. + properties: + series: + description: A list of distribution points series to submit to Datadog. + example: + - metric: system.load.1 + points: + - - 1475317847 + - - 1 + - 2 + items: + $ref: '#/components/schemas/DistributionPointsSeries' + type: array + required: + - series + type: object + IntakePayloadAcceptedV1: + description: The payload accepted for intake. + properties: + status: + description: The status of the intake payload. + example: ok + type: string + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + MetricsListResponse: + description: Object listing all metric names stored by Datadog since a given time. + example: + from: '1571011200' + metrics: + - system.cpu.idle + - system.mem.free + - aws.ec2.cpuutilization + properties: + from: + description: Time when the metrics were active, seconds since the Unix epoch. + type: string + metrics: + description: List of metric names. + items: + description: A metric name. + type: string + type: array + type: object + MetricMetadataV1: + description: Object with all metric related metadata. + properties: + description: + description: Metric description. + type: string + integration: + description: Name of the integration that sent the metric if applicable. + readOnly: true + type: string + per_unit: + description: Per unit of the metric such as `second` in `bytes per second`. + example: second + type: string + short_name: + description: A more human-readable and abbreviated version of the metric name. + type: string + statsd_interval: + description: StatsD flush interval of the metric in seconds if applicable. + format: int64 + type: integer + type: + description: Metric type such as `gauge` or `rate`. + example: count + type: string + unit: + description: Primary unit of the metric such as `byte` or `operation`. + example: byte + type: string + type: object + MetricsQueryResponse: + description: Response Object that includes your query and the list of metrics retrieved. + properties: + error: + description: Message indicating the errors if status is not `ok`. + readOnly: true + type: string + from_date: + description: Start of requested time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + group_by: + description: List of tag keys on which to group. + items: + description: Tag key to group by your metric. + type: string + readOnly: true + type: array + message: + description: Message indicating `success` if status is `ok`. + readOnly: true + type: string + query: + description: Query string + readOnly: true + type: string + res_type: + description: Type of response. + example: time_series + readOnly: true + type: string + series: + description: List of timeseries queried. + items: + $ref: '#/components/schemas/MetricsQueryMetadata' + readOnly: true + type: array + status: + description: Status of the query. + example: ok + readOnly: true + type: string + to_date: + description: End of requested time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + type: object + MetricSearchResponse: + description: Object containing the list of metrics matching the search query. + properties: + results: + $ref: '#/components/schemas/MetricSearchResponseResults' + type: object + MetricContentEncodingV1: + default: deflate + description: HTTP header used to compress the media-type. + enum: + - deflate + - gzip + example: deflate + type: string + x-enum-varnames: + - DEFLATE + - GZIP + MetricsPayload: + description: The metrics' payload. + properties: + series: + description: A list of timeseries to submit to Datadog. + example: + - metric: system.load.1 + points: + - - 1475317847 + - 0.7 + items: + $ref: '#/components/schemas/Series' + type: array + required: + - series + type: object DatasetResponse: description: |- **Datasets Object Constraints** @@ -1709,40 +3996,148 @@ components: description: Unique identifier for the dataset. example: 123e4567-e89b-12d3-a456-426614174000 type: string - type: - $ref: '#/components/schemas/DatasetType' + type: + $ref: '#/components/schemas/DatasetType' + type: object + DatasetRequest: + description: |- + **Datasets Object Constraints** + - **Tag limit per dataset**: + - Each restricted dataset supports a maximum of 10 key:value pairs per product. + + - **Tag key rules per telemetry type**: + - Only one tag key or attribute may be used to define access within a single telemetry type. + - The same or different tag key may be used across different telemetry types. + + - **Tag value uniqueness**: + - Tag values must be unique within a single dataset. + - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. + properties: + attributes: + $ref: '#/components/schemas/DatasetAttributesRequest' + type: + $ref: '#/components/schemas/DatasetType' + required: + - type + - attributes + type: object + DdsqlTabularQueryRequestData: + description: JSON:API resource object for a DDSQL tabular query execution request. + properties: + attributes: + $ref: '#/components/schemas/DdsqlTabularQueryRequestAttributes' + type: + $ref: '#/components/schemas/DdsqlTabularQueryRequestType' + required: + - type + - attributes + type: object + DdsqlTabularQueryResponseData: + description: JSON:API resource object for a DDSQL tabular query response. + properties: + attributes: + $ref: '#/components/schemas/DdsqlTabularQueryResponseAttributes' + id: + description: Stable identifier for the query response resource. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/DdsqlTabularQueryResponseType' + required: + - id + - type + - attributes + type: object + DdsqlTabularQueryResponseMeta: + description: |- + Top-level JSON:API meta block accompanying every DDSQL tabular query response. + Carries standard observability handles for client-side correlation. + properties: + elapsed: + description: Server-side time spent serving this request, in milliseconds. + example: 87 + format: int64 + type: integer + request_id: + description: |- + Echo of the `DD-Request-ID` header assigned by Datadog's edge to this request, + for support correlation. + example: req-7f3e7d2c-1a0b-4d3e-9b2a-3c4d5e6f7082 + type: string + required: + - elapsed + - request_id + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string type: object - DatasetRequest: - description: |- - **Datasets Object Constraints** - - **Tag limit per dataset**: - - Each restricted dataset supports a maximum of 10 key:value pairs per product. - - - **Tag key rules per telemetry type**: - - Only one tag key or attribute may be used to define access within a single telemetry type. - - The same or different tag key may be used across different telemetry types. - - - **Tag value uniqueness**: - - Tag values must be unique within a single dataset. - - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. + DdsqlTabularQueryFetchRequestData: + description: JSON:API resource object for a DDSQL tabular query fetch request. properties: attributes: - $ref: '#/components/schemas/DatasetAttributesRequest' + $ref: '#/components/schemas/DdsqlTabularQueryFetchRequestAttributes' type: - $ref: '#/components/schemas/DatasetType' + $ref: '#/components/schemas/DdsqlTabularQueryFetchRequestType' required: - type - attributes type: object MetricsAndMetricTagConfigurations: description: Object for a metrics and metric tag configurations. - oneOf: - - $ref: '#/components/schemas/Metric' - - $ref: '#/components/schemas/MetricTagConfiguration' + example: + id: metric.foo.bar + type: metrics + attributes: + aggregations: + - space: avg + time: avg + created_at: '2020-03-25T09:48:37.463835Z' + metric_type: gauge + modified_at: '2020-04-25T09:48:37.463835Z' + tags: + - app + - datacenter + properties: + id: + $ref: '#/components/schemas/MetricName' + relationships: + $ref: '#/components/schemas/MetricRelationships' + type: + $ref: '#/components/schemas/MetricType' + attributes: + $ref: '#/components/schemas/MetricTagConfigurationAttributes' + type: object + MetricIngestedIndexedVolume: + description: Object for a single metric's ingested and indexed volume. + properties: + attributes: + $ref: '#/components/schemas/MetricIngestedIndexedVolumeAttributes' + id: + $ref: '#/components/schemas/MetricName' + type: + $ref: '#/components/schemas/MetricIngestedIndexedVolumeType' + type: object MetricsListResponseLinks: - description: >- - Pagination links. Only present if pagination query parameters were - provided. + description: Pagination links. Only present if pagination query parameters were provided. properties: first: description: Link to the first page. @@ -1770,9 +4165,7 @@ components: $ref: '#/components/schemas/MetricMetaPage' type: object MetricBulkTagConfigDelete: - description: >- - Request object to bulk delete all tag configurations for metrics - matching the given prefix. + description: Request object to bulk delete all tag configurations for metrics matching the given prefix. properties: attributes: $ref: '#/components/schemas/MetricBulkTagConfigDeleteAttributes' @@ -1800,9 +4193,7 @@ components: - type type: object MetricBulkTagConfigCreate: - description: >- - Request object to bulk configure tags for metrics matching the given - prefix. + description: Request object to bulk configure tags for metrics matching the given prefix. properties: attributes: $ref: '#/components/schemas/MetricBulkTagConfigCreateAttributes' @@ -1814,6 +4205,84 @@ components: - id - type type: object + HistoricalMetricsConfigurationCreateData: + description: Data object for enabling historical metrics ingestion for a metric. + properties: + id: + description: The metric name, used as the resource ID. + example: dd.test.metric + type: string + type: + $ref: '#/components/schemas/HistoricalMetricsConfigurationType' + required: + - id + - type + type: object + HistoricalMetricsConfigurationData: + description: A historical metrics configuration resource object. Existence of this resource means historical metrics ingestion is enabled for the metric; there is no separate enabled attribute. + properties: + attributes: + $ref: '#/components/schemas/HistoricalMetricsConfigurationAttributes' + id: + description: The metric name, used as the resource ID. + example: dd.test.metric + type: string + type: + $ref: '#/components/schemas/HistoricalMetricsConfigurationType' + type: object + TagIndexingRuleData: + description: A tag indexing rule resource object. + properties: + attributes: + $ref: '#/components/schemas/TagIndexingRuleAttributes' + id: + description: The unique identifier (UUID) of the tag indexing rule. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/TagIndexingRuleType' + type: object + TagIndexingRulesResponseMeta: + description: Pagination metadata for a list of tag indexing rules. + properties: + total: + description: Total number of tag indexing rules in the org. + example: 5 + format: int64 + type: integer + type: object + TagIndexingRuleCreateData: + description: Data object for creating a tag indexing rule. + properties: + attributes: + $ref: '#/components/schemas/TagIndexingRuleCreateAttributes' + type: + $ref: '#/components/schemas/TagIndexingRuleType' + required: + - type + - attributes + type: object + TagIndexingRuleOrderData: + description: Data object for the reorder operation. + properties: + attributes: + $ref: '#/components/schemas/TagIndexingRuleOrderAttributes' + type: + $ref: '#/components/schemas/TagIndexingRuleType' + required: + - type + - attributes + type: object + TagIndexingRuleUpdateData: + description: Data object for updating a tag indexing rule. + properties: + attributes: + $ref: '#/components/schemas/TagIndexingRuleUpdateAttributes' + type: + $ref: '#/components/schemas/TagIndexingRuleType' + required: + - type + type: object MetricSuggestedTagsAndAggregations: description: Object for a single metric's actively queried tags and aggregations. properties: @@ -1825,7 +4294,7 @@ components: $ref: '#/components/schemas/MetricActiveConfigurationType' type: object MetricAllTags: - description: Object for a single metric's indexed tags. + description: Object for a single metric's indexed and ingested tags. properties: attributes: $ref: '#/components/schemas/MetricAllTagsAttributes' @@ -1849,11 +4318,17 @@ components: type: object MetricAssetResponseIncluded: description: List of included assets with full set of attributes. - oneOf: - - $ref: '#/components/schemas/MetricDashboardAsset' - - $ref: '#/components/schemas/MetricMonitorAsset' - - $ref: '#/components/schemas/MetricNotebookAsset' - - $ref: '#/components/schemas/MetricSLOAsset' + properties: + attributes: + $ref: '#/components/schemas/MetricDashboardAttributes' + id: + $ref: '#/components/schemas/MetricDashboardID' + type: + $ref: '#/components/schemas/MetricDashboardType' + required: + - id + - type + type: object MetricEstimate: description: Object for a metric cardinality estimate. properties: @@ -1873,34 +4348,33 @@ components: description: Response metadata object. properties: metric_name: - description: | + description: |- The name of metric for which the tag cardinalities are returned. This matches the metric name provided in the request. type: string type: object - JSONAPIErrorItem: - description: API error response body + TagIndexingRuleExemptionData: + description: A tag indexing rule exemption resource object. properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request + attributes: + $ref: '#/components/schemas/TagIndexingRuleExemptionAttributes' + id: + description: The metric name, used as the resource ID. + example: dd.test.metric type: string + type: + $ref: '#/components/schemas/TagIndexingRuleExemptionType' + type: object + TagIndexingRuleExemptionCreateData: + description: Data object for creating a tag indexing rule exemption. + properties: + attributes: + $ref: '#/components/schemas/TagIndexingRuleExemptionCreateAttributes' + type: + $ref: '#/components/schemas/TagIndexingRuleExemptionType' + required: + - type + - attributes type: object MetricTagConfiguration: description: Object for a single metric tag configuration. @@ -1922,6 +4396,8 @@ components: $ref: '#/components/schemas/MetricTagConfigurationAttributes' id: $ref: '#/components/schemas/MetricName' + relationships: + $ref: '#/components/schemas/MetricRelationships' type: $ref: '#/components/schemas/MetricTagConfigurationType' type: object @@ -1970,9 +4446,14 @@ components: type: object MetricVolumes: description: Possible response objects for a metric's volume. - oneOf: - - $ref: '#/components/schemas/MetricDistinctVolume' - - $ref: '#/components/schemas/MetricIngestedIndexedVolume' + properties: + attributes: + $ref: '#/components/schemas/MetricDistinctVolumeAttributes' + id: + $ref: '#/components/schemas/MetricName' + type: + $ref: '#/components/schemas/MetricDistinctVolumeType' + type: object ScalarFormulaRequest: description: A single scalar query to be executed. properties: @@ -2012,16 +4493,12 @@ components: $ref: '#/components/schemas/TimeseriesFormulaResponseType' type: object MetricSeries: - description: >- + description: |- A metric to submit to Datadog. - - See [Datadog - metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). + See [Datadog metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). properties: interval: - description: >- - If the type of the metric is rate or count, define the corresponding - interval in seconds. + description: If the type of the metric is rate or count, define the corresponding interval in seconds. example: 20 format: int64 type: integer @@ -2032,11 +4509,7 @@ components: example: system.load.1 type: string points: - description: >- - Points relating to a metric. All points must be objects with - timestamp and a scalar value (cannot be a string). Timestamps should - be in POSIX time in seconds, and cannot be more than ten minutes in - the future or more than one hour in the past. + description: Points relating to a metric. All points must be objects with timestamp and a scalar value (cannot be a string). Timestamps should be in POSIX time in seconds, and cannot be more than ten minutes in the future or more than one hour in the past. example: - timestamp: 1575317847 value: 0.5 @@ -2104,19 +4577,15 @@ components: status: $ref: '#/components/schemas/SpansAggregateResponseStatus' warnings: - description: >- - A list of warnings (non fatal errors) encountered, partial results - might be returned if - + description: |- + A list of warnings (non fatal errors) encountered, partial results might be returned if warnings are present in the response. items: $ref: '#/components/schemas/SpansWarning' type: array type: object Span: - description: >- - Object description of a spans after being processed and stored by - Datadog. + description: Object description of a spans after being processed and stored by Datadog. properties: attributes: $ref: '#/components/schemas/SpansAttributes' @@ -2127,52 +4596,219 @@ components: type: $ref: '#/components/schemas/SpansType' type: object - SpansListResponseLinks: - description: Links attributes. + SpansListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/spans/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + SpansListResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/SpansResponseMetadataPage' + request_id: + description: The identifier of the request. + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + $ref: '#/components/schemas/SpansAggregateResponseStatus' + warnings: + description: |- + A list of warnings (non fatal errors) encountered, partial results might be returned if + warnings are present in the response. + items: + $ref: '#/components/schemas/SpansWarning' + type: array + type: object + SpansListRequestData: + description: The object containing the query content. + properties: + attributes: + $ref: '#/components/schemas/SpansListRequestAttributes' + type: + $ref: '#/components/schemas/SpansListRequestType' + type: object + DistributionPointsSeries: + description: A distribution points metric to submit to Datadog. + properties: + host: + description: The name of the host that produced the distribution point metric. + example: test.example.com + type: string + metric: + description: The name of the distribution points metric. + example: system.load.1 + type: string + points: + description: Points relating to the distribution point metric. All points must be tuples with timestamp and a list of values (cannot be a string). Timestamps should be in POSIX time in seconds. + example: + - - 1575317847 + - - 0.5 + - 1 + items: + $ref: '#/components/schemas/DistributionPoint' + type: array + tags: + description: A list of tags associated with the distribution point metric. + example: + - environment:test + items: + description: Individual tags. + type: string + type: array + type: + $ref: '#/components/schemas/DistributionPointsType' + required: + - metric + - points + type: object + MetricsQueryMetadata: + description: Object containing all metric names returned and their associated metadata. + properties: + aggr: + description: Aggregation type. + example: avg + nullable: true + readOnly: true + type: string + display_name: + description: Display name of the metric. + example: system.cpu.idle + readOnly: true + type: string + end: + description: End of the time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + expression: + description: Metric expression. + example: system.cpu.idle{host:foo,env:test} + readOnly: true + type: string + interval: + description: Number of milliseconds between data samples. + format: int64 + readOnly: true + type: integer + length: + description: Number of data samples. + format: int64 + readOnly: true + type: integer + metric: + description: Metric name. + example: system.cpu.idle + readOnly: true + type: string + pointlist: + description: List of points of the timeseries in milliseconds. + example: + - - 1681683300000 + - 77.62145685254418 + items: + $ref: '#/components/schemas/Point' + readOnly: true + type: array + query_index: + description: The index of the series' query within the request. + format: int64 + readOnly: true + type: integer + scope: + description: Metric scope, comma separated list of tags. + example: host:foo,env:test + readOnly: true + type: string + start: + description: Start of the time window, milliseconds since Unix epoch. + format: int64 + readOnly: true + type: integer + tag_set: + description: Unique tags identifying this series. + items: + description: Unique tags identifying this series. + type: string + readOnly: true + type: array + unit: + description: |- + Detailed information about the metric unit. + The first element describes the "primary unit" (for example, `bytes` in `bytes per second`). + The second element describes the "per unit" (for example, `second` in `bytes per second`). + If the second element is not present, the API returns null. + items: + $ref: '#/components/schemas/MetricsQueryUnit' + maxItems: 2 + minItems: 2 + readOnly: true + type: array + type: object + MetricSearchResponseResults: + description: Search result. properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/spans/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string + metrics: + description: List of metrics that match the search query. + items: + description: Metric name. + type: string + type: array type: object - SpansListResponseMetadata: - description: The metadata associated with a request. + Series: + description: |- + A metric to submit to Datadog. + See [Datadog metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 + host: + description: The name of the host that produced the metric. + example: test.example.com + type: string + interval: + default: null + description: If the type of the metric is rate or count, define the corresponding interval in seconds. + example: 20 format: int64 + nullable: true type: integer - page: - $ref: '#/components/schemas/SpansResponseMetadataPage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + metric: + description: The name of the timeseries. + example: system.load.1 type: string - status: - $ref: '#/components/schemas/SpansAggregateResponseStatus' - warnings: - description: >- - A list of warnings (non fatal errors) encountered, partial results - might be returned if - - warnings are present in the response. + points: + description: Points relating to a metric. All points must be tuples with timestamp and a scalar value (cannot be a string). Timestamps should be in POSIX time in seconds, and cannot be more than ten minutes in the future or more than one hour in the past. + example: + - - 1575317847 + - 0.5 items: - $ref: '#/components/schemas/SpansWarning' + $ref: '#/components/schemas/Point' + type: array + tags: + description: A list of tags associated with the metric. + example: + - environment:test + items: + description: Individual tags. + type: string type: array - type: object - SpansListRequestData: - description: The object containing the query content. - properties: - attributes: - $ref: '#/components/schemas/SpansListRequestAttributes' type: - $ref: '#/components/schemas/SpansListRequestType' + default: '' + description: The type of the metric. Valid types are "",`count`, `gauge`, and `rate`. + example: rate + type: string + required: + - metric + - points type: object DatasetAttributesResponse: description: Dataset metadata and configuration(s). @@ -2191,12 +4827,11 @@ components: example: Security Audit Dataset type: string principals: - description: >- - List of access principals, formatted as `principal_type:id`. - Principal can be 'team' or 'role'. + description: List of access principals, formatted as `principal_type:id`. Principal can be 'team' or 'role'. example: - role:86245fce-0a4e-11f0-92bd-da7ad0900002 items: + description: An access principal identifier formatted as `principal_type:id`. example: role:86245fce-0a4e-11f0-92bd-da7ad0900002 type: string type: array @@ -2223,12 +4858,11 @@ components: example: Security Audit Dataset type: string principals: - description: >- - List of access principals, formatted as `principal_type:id`. - Principal can be 'team' or 'role'. + description: List of access principals, formatted as `principal_type:id`. Principal can be 'team' or 'role'. example: - role:94172442-be03-11e9-a77a-3b7612558ac1 items: + description: An access principal identifier formatted as `principal_type:id`. example: role:94172442-be03-11e9-a77a-3b7612558ac1 type: string type: array @@ -2242,21 +4876,147 @@ components: - product_filters - principals type: object + DdsqlTabularQueryRequestAttributes: + description: Attributes describing the DDSQL query to execute. + properties: + query: + description: |- + The DDSQL statement to execute. DDSQL is Datadog's SQL dialect, which is a subset + of PostgreSQL, scoped to Datadog data sources. + example: SELECT cloud_provider, count(*) FROM dd.hosts group by cloud_provider + type: string + row_limit: + description: |- + Cap on the number of rows returned. Defaults to 5,000 when omitted. Must be + between 1 and 10,000 inclusive; values outside this range are rejected with 400. + example: 1000 + format: int64 + maximum: 10000 + minimum: 1 + type: integer + time: + $ref: '#/components/schemas/DdsqlTabularQueryTimeWindow' + required: + - query + - time + type: object + DdsqlTabularQueryRequestType: + default: ddsql_query_request + description: JSON:API resource type for a DDSQL tabular query request. + enum: + - ddsql_query_request + example: ddsql_query_request + type: string + x-enum-varnames: + - DDSQL_QUERY_REQUEST + DdsqlTabularQueryResponseAttributes: + description: |- + Attributes of a DDSQL tabular query response. `query_id` is set when + `state` is `running`; `columns` is set when `state` is `completed`. + properties: + columns: + $ref: '#/components/schemas/DdsqlTabularQueryColumns' + query_id: + description: |- + Opaque token to pass to the fetch endpoint to poll for results. + Set when `state` is `running` and absent when `state` is `completed`. + example: eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ== + type: string + state: + $ref: '#/components/schemas/DdsqlTabularQueryState' + warnings: + $ref: '#/components/schemas/DdsqlTabularQueryWarnings' + required: + - state + type: object + DdsqlTabularQueryResponseType: + default: ddsql_query_response + description: JSON:API resource type for a DDSQL tabular query response. + enum: + - ddsql_query_response + example: ddsql_query_response + type: string + x-enum-varnames: + - DDSQL_QUERY_RESPONSE + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + DdsqlTabularQueryFetchRequestAttributes: + description: Attributes describing which previously submitted DDSQL query to fetch. + properties: + query_id: + description: |- + Opaque token returned by an earlier execute or fetch response that carried + `state: running`. Identifies the query to poll for results. + example: eyJxdWVyeSI6ICJTRUxFQ1QgKiBGUk9NIGxvZ3MifQ== + type: string + required: + - query_id + type: object + DdsqlTabularQueryFetchRequestType: + default: ddsql_query_fetch_request + description: JSON:API resource type for a DDSQL tabular query fetch request. + enum: + - ddsql_query_fetch_request + example: ddsql_query_fetch_request + type: string + x-enum-varnames: + - DDSQL_QUERY_FETCH_REQUEST Metric: - description: Object for a single metric tag configuration. + description: Object for a single metric. example: id: metric.foo.bar type: metrics properties: id: $ref: '#/components/schemas/MetricName' + relationships: + $ref: '#/components/schemas/MetricRelationships' type: $ref: '#/components/schemas/MetricType' type: object + MetricIngestedIndexedVolumeAttributes: + description: Object containing the definition of a metric's ingested and indexed volume. + properties: + indexed_volume: + description: Estimated average hourly number of indexed time series for the given metric over the last hour. For organizations on Metric Name Pricing, this represents the estimated sum of indexed data points over the last hour. + example: 10 + format: int64 + type: integer + ingested_volume: + description: Estimated average hourly number of ingested time series for the given metric over the last hour. This value is `0` for metrics not configured with Metrics Without Limits. For organizations on Metric Name Pricing, this represents the estimated sum of ingested data points over the last hour. + example: 20 + format: int64 + type: integer + type: object + MetricName: + description: The metric name for this resource. + example: test.metric.latency + type: string + MetricIngestedIndexedVolumeType: + default: metric_volumes + description: The metric ingested and indexed volume type. + enum: + - metric_volumes + example: metric_volumes + type: string + x-enum-varnames: + - METRIC_VOLUMES MetricMetaPage: - description: >- - Paging attributes. Only present if pagination query parameters were - provided. + description: Paging attributes. Only present if pagination query parameters were provided. properties: cursor: description: The cursor used to get the current results, if any. @@ -2300,12 +5060,9 @@ components: emails: $ref: '#/components/schemas/MetricBulkTagConfigEmailList' exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. type: boolean status: description: The status of the request. @@ -2320,13 +5077,9 @@ components: emails: $ref: '#/components/schemas/MetricBulkTagConfigEmailList' exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. Defaults to false. type: boolean include_actively_queried_tags_window: @@ -2350,10 +5103,187 @@ components: tags: $ref: '#/components/schemas/MetricBulkTagConfigTagNameList' type: object + HistoricalMetricsConfigurationType: + default: historical_metrics_configurations + description: The historical metrics configuration resource type. + enum: + - historical_metrics_configurations + example: historical_metrics_configurations + type: string + x-enum-varnames: + - HISTORICAL_METRICS_CONFIGURATIONS + HistoricalMetricsConfigurationAttributes: + description: Attributes of a historical metrics configuration. + properties: + created_at: + description: Timestamp when historical metrics ingestion was enabled for the metric. + example: '2024-01-15T12:00:00.000Z' + format: date-time + readOnly: true + type: string + type: object + TagIndexingRuleAttributes: + description: Attributes of a tag indexing rule. + properties: + created_at: + description: Timestamp when the rule was created. + example: '2024-01-15T12:00:00.000Z' + format: date-time + readOnly: true + type: string + created_by_handle: + description: Handle of the user who created the rule. + example: user@datadoghq.com + readOnly: true + type: string + exclude_tags_mode: + description: When true, the rule excludes the listed tags and indexes all others. When false (default), the rule includes only the listed tags. + example: false + type: boolean + ignored_metric_name_matches: + description: Metric name prefixes excluded from the rule's scope. + example: + - dd.test.excluded.* + items: + type: string + type: array + metric_name_matches: + description: Metric name prefixes (glob patterns) this rule applies to. + example: + - dd.test.* + items: + type: string + type: array + modified_at: + description: Timestamp when the rule was last modified. + example: '2024-01-15T12:00:00.000Z' + format: date-time + readOnly: true + type: string + modified_by_handle: + description: Handle of the user who last modified the rule. + example: user@datadoghq.com + readOnly: true + type: string + name: + description: Human-readable name for the rule. + example: my-indexing-rule + type: string + options: + $ref: '#/components/schemas/TagIndexingRuleOptions' + rule_order: + description: Evaluation order within the org. Lower values are evaluated first. Assigned server-side on create (max+1); pass on update to change the rule's position. + example: 1 + format: int64 + readOnly: true + type: integer + tags: + description: Tag keys managed by this rule. + example: + - env + - service + items: + type: string + type: array + type: object + TagIndexingRuleType: + default: tag_indexing_rules + description: The tag indexing rule resource type. + enum: + - tag_indexing_rules + example: tag_indexing_rules + type: string + x-enum-varnames: + - TAG_INDEXING_RULES + TagIndexingRuleCreateAttributes: + description: Attributes for creating a tag indexing rule. + properties: + exclude_tags_mode: + description: When true, the rule excludes the listed tags and indexes all others. When false (default), the rule includes only the listed tags. + example: false + type: boolean + ignored_metric_name_matches: + description: Metric name prefixes excluded from the rule's scope. + items: + type: string + type: array + metric_name_matches: + description: Metric name prefixes (glob patterns) this rule applies to. + example: + - dd.test.* + items: + type: string + type: array + name: + description: Human-readable name for the rule. + example: my-indexing-rule + type: string + options: + $ref: '#/components/schemas/TagIndexingRuleOptions' + tags: + description: Tag keys managed by this rule. + example: + - env + - service + items: + type: string + type: array + required: + - name + - metric_name_matches + type: object + TagIndexingRuleOrderAttributes: + description: Attributes for the reorder operation. + properties: + rule_ids: + description: Ordered list of tag indexing rule UUIDs. The server assigns rule_order 1, 2, … matching position in this list. + example: + - 00000000-0000-0000-0000-000000000001 + - 00000000-0000-0000-0000-000000000002 + items: + type: string + type: array + type: object + TagIndexingRuleUpdateAttributes: + description: Attributes for updating a tag indexing rule. All fields are optional; omitted fields are unchanged. + properties: + exclude_tags_mode: + description: When true, the rule excludes the listed tags and indexes all others. + type: boolean + ignored_metric_name_matches: + description: Metric name prefixes excluded from the rule's scope. + items: + type: string + type: array + metric_name_matches: + description: Metric name prefixes (glob patterns) this rule applies to. + example: + - dd.test.* + items: + type: string + type: array + name: + description: Human-readable name for the rule. + example: my-indexing-rule + type: string + options: + $ref: '#/components/schemas/TagIndexingRuleOptions' + rule_order: + description: Desired evaluation order. Returns 409 if the value conflicts with another rule; use POST /api/v2/metrics/tag-indexing-rules/order for atomic re-sequencing. + example: 2 + format: int64 + type: integer + tags: + description: Tag keys managed by this rule. + example: + - env + - service + items: + type: string + type: array + type: object MetricSuggestedTagsAttributes: - description: >- - Object containing the definition of a metric's actively queried tags and - aggregations. + description: Object containing the definition of a metric's actively queried tags and aggregations. properties: active_aggregations: $ref: '#/components/schemas/MetricSuggestedAggregations' @@ -2367,10 +5297,6 @@ components: type: string type: array type: object - MetricName: - description: The metric name for this resource. - example: test.metric.latency - type: string MetricActiveConfigurationType: default: actively_queried_configurations description: The metric actively queried configuration resource type. @@ -2381,16 +5307,26 @@ components: x-enum-varnames: - ACTIVELY_QUERIED_CONFIGURATIONS MetricAllTagsAttributes: - description: Object containing the definition of a metric's tags. + description: Object containing the definition of a metric's indexed and ingested tags. properties: + ingested_tags: + description: List of ingested tags that are not indexed. + example: + - env:prod + - service:web + - version:1.0 + items: + description: Ingested tags for the metric. + type: string + type: array tags: - description: List of indexed tag value pairs. + description: List of indexed tags. example: - sport:golf - sport:football - animal:dog items: - description: Tag key-value pairs. + description: Indexed tags for the metric. type: string type: array type: object @@ -2478,9 +5414,7 @@ components: format: date-time type: string estimated_output_series: - description: >- - Estimated cardinality of the metric based on the queried - configuration. + description: Estimated cardinality of the metric based on the queried configuration. example: 50 format: int64 type: integer @@ -2495,9 +5429,7 @@ components: x-enum-varnames: - METRIC_CARDINALITY_ESTIMATE MetricTagCardinality: - description: >- - Object containing metadata and attributes related to a specific tag key - associated with the metric. + description: Object containing metadata and attributes related to a specific tag key associated with the metric. example: attributes: cardinality_delta: 25 @@ -2514,30 +5446,50 @@ components: description: This describes the endpoint action. type: string type: object - JSONAPIErrorItemSource: - description: References to the source of the error. + TagIndexingRuleExemptionAttributes: + description: Attributes of a tag indexing rule exemption. properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization + created_at: + description: Timestamp when the exemption was created. + example: '2024-01-15T12:00:00.000Z' + format: date-time + readOnly: true type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit + created_by_handle: + description: Handle of the user who created the exemption. + example: user@datadoghq.com + readOnly: true type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title + kind: + description: Discriminates between an explicit exemption (`exemption`) and a pre-existing legacy tag configuration acting as an implicit exclusion (`legacy_tag_configuration`). + example: exemption + type: string + reason: + description: The reason the metric is exempt from tag indexing rules. + example: This metric has a pre-existing tag configuration. + type: string + type: object + TagIndexingRuleExemptionType: + default: tag_indexing_rule_exemptions + description: The tag indexing rule exemption resource type. + enum: + - tag_indexing_rule_exemptions + example: tag_indexing_rule_exemptions + type: string + x-enum-varnames: + - TAG_INDEXING_RULE_EXEMPTIONS + TagIndexingRuleExemptionCreateAttributes: + description: Attributes for creating a tag indexing rule exemption. + properties: + reason: + description: The reason the metric is exempt from tag indexing rules. + example: This metric has a pre-existing tag configuration. type: string + required: + - reason type: object MetricTagConfigurationAttributes: - description: >- - Object containing the definition of a metric tag configuration - attributes. + description: Object containing the definition of a metric tag configuration attributes. properties: aggregations: $ref: '#/components/schemas/MetricCustomAggregations' @@ -2547,20 +5499,14 @@ components: format: date-time type: string exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. Defaults to false. Requires `tags` property. type: boolean include_percentiles: - description: >- - Toggle to include or exclude percentile aggregations for - distribution metrics. - + description: |- + Toggle to include or exclude percentile aggregations for distribution metrics. Only present when the `metric_type` is `distribution`. example: true type: boolean @@ -2581,6 +5527,12 @@ components: type: string type: array type: object + MetricRelationships: + description: Relationships for a metric. + properties: + metric_volumes: + $ref: '#/components/schemas/MetricVolumesRelationship' + type: object MetricTagConfigurationType: default: manage_tags description: The metric tag configuration resource type. @@ -2591,28 +5543,20 @@ components: x-enum-varnames: - MANAGE_TAGS MetricTagConfigurationUpdateAttributes: - description: >- - Object containing the definition of a metric tag configuration to be - updated. + description: Object containing the definition of a metric tag configuration to be updated. properties: aggregations: $ref: '#/components/schemas/MetricCustomAggregations' exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. Defaults to false. Requires `tags` property. type: boolean include_percentiles: - description: >- + description: |- Toggle to include/exclude percentiles for a distribution metric. - - Defaults to false. Can only be applied to metrics that have a - `metric_type` of `distribution`. + Defaults to false. Can only be applied to metrics that have a `metric_type` of `distribution`. example: true type: boolean tags: @@ -2627,28 +5571,20 @@ components: type: array type: object MetricTagConfigurationCreateAttributes: - description: >- - Object containing the definition of a metric tag configuration to be - created. + description: Object containing the definition of a metric tag configuration to be created. properties: aggregations: $ref: '#/components/schemas/MetricCustomAggregations' exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - + description: |- + When set to true, the configuration will exclude the configured tags and include any other submitted tags. + When set to false, the configuration will include the configured tags and exclude any other submitted tags. Defaults to false. Requires `tags` property. type: boolean include_percentiles: - description: >- + description: |- Toggle to include/exclude percentiles for a distribution metric. - - Defaults to false. Can only be applied to metrics that have a - `metric_type` of `distribution`. + Defaults to false. Can only be applied to metrics that have a `metric_type` of `distribution`. example: true type: boolean metric_type: @@ -2677,16 +5613,6 @@ components: type: $ref: '#/components/schemas/MetricDistinctVolumeType' type: object - MetricIngestedIndexedVolume: - description: Object for a single metric's ingested and indexed volume. - properties: - attributes: - $ref: '#/components/schemas/MetricIngestedIndexedVolumeAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricIngestedIndexedVolumeType' - type: object ScalarFormulaRequestAttributes: description: The object describing a scalar formula request. properties: @@ -2696,18 +5622,14 @@ components: $ref: '#/components/schemas/QueryFormula' type: array from: - description: >- - Start date (inclusive) of the query in milliseconds since the Unix - epoch. + description: Start date (inclusive) of the query in milliseconds since the Unix epoch. example: 1568899800000 format: int64 type: integer queries: $ref: '#/components/schemas/ScalarFormulaRequestQueries' to: - description: >- - End date (exclusive) of the query in milliseconds since the Unix - epoch. + description: End date (exclusive) of the query in milliseconds since the Unix epoch. example: 1568923200000 format: int64 type: integer @@ -2729,10 +5651,7 @@ components: description: The object describing a scalar response. properties: columns: - description: >- - List of response columns, each corresponding to an individual - formula or query in the request and with values in parallel arrays - matching the series list. + description: List of response columns, each corresponding to an individual formula or query in the request and with values in parallel arrays matching the series list. items: $ref: '#/components/schemas/ScalarColumn' type: array @@ -2755,9 +5674,7 @@ components: $ref: '#/components/schemas/QueryFormula' type: array from: - description: >- - Start date (inclusive) of the query in milliseconds since the Unix - epoch. + description: Start date (inclusive) of the query in milliseconds since the Unix epoch. example: 1568899800000 format: int64 type: integer @@ -2773,9 +5690,7 @@ components: queries: $ref: '#/components/schemas/TimeseriesFormulaRequestQueries' to: - description: >- - End date (exclusive) of the query in milliseconds since the Unix - epoch. + description: End date (exclusive) of the query in milliseconds since the Unix epoch. example: 1568923200000 format: int64 type: integer @@ -2805,9 +5720,7 @@ components: type: object TimeseriesFormulaResponseType: default: timeseries_response - description: >- - The type of the resource. The value should always be - timeseries_response. + description: The type of the resource. The value should always be timeseries_response. enum: - timeseries_response example: timeseries_response @@ -2827,11 +5740,9 @@ components: value: 0.5 properties: timestamp: - description: >- + description: |- The timestamp should be in seconds and current. - - Current is defined as not more than 10 minutes in the future or more - than 1 hour in the past. + Current is defined as not more than 10 minutes in the future or more than 1 hour in the past. format: int64 type: integer value: @@ -2853,9 +5764,7 @@ components: type: string type: object MetricIntakeType: - description: >- - The type of metric. The available types are `0` (unspecified), `1` - (count), `2` (rate), and `3` (gauge). + description: The type of metric. The available types are `0` (unspecified), `1` (count), `2` (rate), and `3` (gauge). enum: - 0 - 1 @@ -2872,9 +5781,7 @@ components: description: The object containing all the query parameters. properties: compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. + description: The list of metrics or timeseries to compute for the retrieved buckets. items: $ref: '#/components/schemas/SpansCompute' type: array @@ -2909,14 +5816,12 @@ components: '@version': abc type: object compute: - description: The compute data. - type: object + description: The compute data. (opaque JSON object) + type: string computes: additionalProperties: $ref: '#/components/schemas/SpansAggregateBucketValue' - description: >- - A map of the metric name -> value for regular compute or list of - values for a timeseries. + description: A map of the metric name -> value for regular compute or list of values for a timeseries. type: object type: object SpansAggregateBucketType: @@ -2950,9 +5855,7 @@ components: type: string title: description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes + example: One or several indexes are missing or invalid, results hold data from the other indexes type: string type: object SpansAttributes: @@ -3003,19 +5906,14 @@ components: example: retention_filter type: string service: - description: >- + description: |- The name of the application or service generating the span events. - - It is used to switch from APM to Logs, so make sure you define the - same - + It is used to switch from APM to Logs, so make sure you define the same value when you use both products. example: agent type: string single_span: - description: >- - Whether or not the span was collected as a stand-alone span. Always - associated to "single_span" ingestion_reason if true. + description: Whether or not the span was collected as a stand-alone span. Always associated to "single_span" ingestion_reason if true. example: true type: boolean span_id: @@ -3057,13 +5955,10 @@ components: description: Paging attributes. properties: after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same - + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== type: string type: object SpansListRequestAttributes: @@ -3087,39 +5982,152 @@ components: type: string x-enum-varnames: - SEARCH_REQUEST + DistributionPoint: + description: Array of distribution points. + example: + - 1575317847 + - - 0.5 + - 1 + items: + description: List of distribution point. + oneOf: + - $ref: '#/components/schemas/DistributionPointTimestamp' + - $ref: '#/components/schemas/DistributionPointData' + maxItems: 2 + minItems: 2 + type: array + DistributionPointsType: + default: distribution + description: The type of the distribution point. + enum: + - distribution + example: distribution + type: string + x-enum-varnames: + - DISTRIBUTION + Point: + description: Array of timeseries points. + example: + - 1575317847 + - 0.5 + items: + description: |- + Each point is of the form `[POSIX_timestamp, numeric_value]`. + The timestamp should be in seconds and current. + The numeric value format should be a 32bit float gauge-type value. + Current is defined as not more than 10 minutes in the future or more than 1 hour in the past. + format: double + nullable: true + type: number + maxItems: 2 + minItems: 2 + type: array + MetricsQueryUnit: + description: Object containing the metric unit family, scale factor, name, and short name. + nullable: true + properties: + family: + description: Unit family, allows for conversion between units of the same family, for scaling. + example: time + readOnly: true + type: string + name: + description: Unit name + example: minute + readOnly: true + type: string + plural: + description: Plural form of the unit name. + example: minutes + readOnly: true + type: string + scale_factor: + description: Factor for scaling between units of the same family. + example: 60 + format: double + readOnly: true + type: number + short_name: + description: Abbreviation of the unit. + example: min + readOnly: true + type: string + type: object FiltersPerProduct: description: Product-specific filters for the dataset. properties: filters: - description: >- - Defines the list of tag-based filters used to restrict access to - telemetry data for a specific product. - - These filters act as access control rules. Each filter must follow - the tag query syntax used by - - Datadog (such as `@tag.key:value`), and only one tag or attribute - may be used to define the access strategy - + description: |- + Defines the list of tag-based filters used to restrict access to telemetry data for a specific product. + These filters act as access control rules. Each filter must follow the tag query syntax used by + Datadog (such as `@tag.key:value`), and only one tag or attribute may be used to define the access strategy per telemetry type. example: - '@application.id:ABCD' items: + description: A tag-based filter expression using Datadog tag query syntax. example: '@application.id:ABCD' type: string type: array product: - description: >- - Name of the product the dataset is for. Possible values are 'apm', - 'rum', - - 'metrics', 'logs', 'error_tracking', and 'cloud_cost'. + description: |- + Name of the product the dataset is for. Possible values are 'apm', 'rum', + 'metrics', 'logs', 'error_tracking', 'cloud_cost', 'sd_repoinfo', 'secruntime', and 'signal'. example: logs type: string required: - product - filters type: object + DdsqlTabularQueryTimeWindow: + description: |- + Time window scoping the underlying data sources, expressed in Unix milliseconds + since the epoch. Inclusive on `from_timestamp`, exclusive on `to_timestamp`. + Results from static tables (for example, `dd.hosts`) are not affected by the + time window, but the field must still be provided. + properties: + from_timestamp: + description: Start of the query window (inclusive), in Unix milliseconds since the epoch. + example: 1736942400000 + format: int64 + type: integer + to_timestamp: + description: End of the query window (exclusive), in Unix milliseconds since the epoch. + example: 1736946000000 + format: int64 + type: integer + required: + - from_timestamp + - to_timestamp + type: object + DdsqlTabularQueryColumns: + description: |- + Column-major result set. Each element carries one column's name, type, and values, + with one value per row of the result. Set when `state` is `completed`. + items: + $ref: '#/components/schemas/DdsqlTabularQueryColumn' + type: array + DdsqlTabularQueryState: + description: |- + Lifecycle state of a DDSQL tabular query response. + `running` means the query is still executing and the client should poll + the fetch endpoint with the returned `query_id`. `completed` means the + result set is inlined in `columns` and no further polling is required. + enum: + - running + - completed + example: completed + type: string + x-enum-varnames: + - RUNNING + - COMPLETED + DdsqlTabularQueryWarnings: + description: Non-fatal messages emitted by the query engine while serving this response. + items: + description: A single non-fatal warning message. + example: Query result was truncated at the configured row_limit. + type: string + type: array MetricMetaPageType: default: cursor_limit description: Type of metric pagination. @@ -3150,6 +6158,17 @@ components: pattern: ^[A-Za-z][A-Za-z0-9\.\-\_:\/]*$ type: string type: array + TagIndexingRuleOptions: + description: Versioned configuration options for a tag indexing rule. + properties: + data: + $ref: '#/components/schemas/TagIndexingRuleOptionsData' + version: + description: Options schema version. Only `1` is supported. + example: 1 + format: int64 + type: integer + type: object MetricSuggestedAggregations: description: List of aggregation combinations that have been actively queried. example: @@ -3161,9 +6180,7 @@ components: $ref: '#/components/schemas/MetricCustomAggregation' type: array MetricAssetDashboardRelationships: - description: >- - An object containing the list of dashboards that can be referenced in - the `included` data. + description: An object containing the list of dashboards that can be referenced in the `included` data. properties: data: description: A list of dashboards that can be referenced in the `included` data. @@ -3172,9 +6189,7 @@ components: type: array type: object MetricAssetMonitorRelationships: - description: >- - A object containing the list of monitors that can be referenced in the - `included` data. + description: A object containing the list of monitors that can be referenced in the `included` data. properties: data: description: A list of monitors that can be referenced in the `included` data. @@ -3183,9 +6198,7 @@ components: type: array type: object MetricAssetNotebookRelationships: - description: >- - An object containing the list of notebooks that can be referenced in the - `included` data. + description: An object containing the list of notebooks that can be referenced in the `included` data. properties: data: description: A list of notebooks that can be referenced in the `included` data. @@ -3194,9 +6207,7 @@ components: type: array type: object MetricAssetSLORelationships: - description: >- - An object containing a list of SLOs that can be referenced in the - `included` data. + description: An object containing a list of SLOs that can be referenced in the `included` data. properties: data: description: A list of SLOs that can be referenced in the `included` data. @@ -3205,9 +6216,7 @@ components: type: array type: object MetricDashboardAttributes: - description: >- - Attributes related to the dashboard, including title, popularity, and - url. + description: Attributes related to the dashboard, including title, popularity, and url. properties: popularity: description: Value from 0 to 5 that ranks popularity of the dashboard. @@ -3304,11 +6313,7 @@ components: - SLOS MetricEstimateType: default: count_or_gauge - description: >- - Estimate type based on the queried configuration. By default, - `count_or_gauge` is returned. `distribution` is returned for - distribution metrics without percentiles enabled. Lastly, `percentile` - is returned if `filter[pct]=true` is queried with a distribution metric. + description: Estimate type based on the queried configuration. `count_or_gauge` is returned by default, and `distribution` is returned for distribution metrics. The `filter[pct]` query parameter has no effect on this value. enum: - count_or_gauge - distribution @@ -3328,9 +6333,7 @@ components: type: integer type: object MetricCustomAggregations: - description: >- - Deprecated. You no longer need to configure specific time and space - aggregations for Metrics Without Limits. + description: Deprecated. You no longer need to configure specific time and space aggregations for Metrics Without Limits. example: - space: sum time: sum @@ -3354,6 +6357,12 @@ components: - COUNT - RATE - DISTRIBUTION + MetricVolumesRelationship: + description: Relationship to a metric volume included in the response. + properties: + data: + $ref: '#/components/schemas/MetricVolumesRelationshipData' + type: object MetricDistinctVolumeAttributes: description: Object containing the definition of a metric's distinct volume. properties: @@ -3372,38 +6381,11 @@ components: type: string x-enum-varnames: - DISTINCT_METRIC_VOLUMES - MetricIngestedIndexedVolumeAttributes: - description: >- - Object containing the definition of a metric's ingested and indexed - volume. - properties: - indexed_volume: - description: Indexed volume for the given metric. - example: 10 - format: int64 - type: integer - ingested_volume: - description: Ingested volume for the given metric. - example: 20 - format: int64 - type: integer - type: object - MetricIngestedIndexedVolumeType: - default: metric_volumes - description: The metric ingested and indexed volume type. - enum: - - metric_volumes - example: metric_volumes - type: string - x-enum-varnames: - - METRIC_VOLUMES QueryFormula: description: A formula for calculation based on one or more queries. properties: formula: - description: >- - Formula string, referencing one or more queries with their name - property. + description: Formula string, referencing one or more queries with their name property. example: a+b type: string limit: @@ -3422,9 +6404,29 @@ components: type: array ScalarColumn: description: A single column in a scalar query response. - oneOf: - - $ref: '#/components/schemas/GroupScalarColumn' - - $ref: '#/components/schemas/DataScalarColumn' + properties: + name: + description: The name of the tag key or group. + example: env + type: string + type: + $ref: '#/components/schemas/ScalarColumnTypeGroup' + values: + description: The array of tag values for each group found for the results of the formulas or queries. + example: + - - production + - - staging + items: + description: An individual tag value for a given group column. + items: + description: One tag value within a values array. + example: production + type: string + type: array + type: array + meta: + $ref: '#/components/schemas/ScalarMeta' + type: object TimeseriesFormulaRequestQueries: description: List of queries to be run and used as inputs to the formulas. example: @@ -3434,9 +6436,7 @@ components: $ref: '#/components/schemas/TimeseriesQuery' type: array TimeseriesResponseSeriesList: - description: >- - Array of response series. The index here corresponds to the index in the - `formulas` or `queries` array from the request. + description: Array of response series. The index here corresponds to the index in the `formulas` or `queries` array from the request. items: $ref: '#/components/schemas/TimeseriesResponseSeries' type: array @@ -3449,9 +6449,7 @@ components: type: integer type: array TimeseriesResponseValuesList: - description: >- - Array of value-arrays. The index here corresponds to the index in the - `formulas` or `queries` array from the request. + description: Array of value-arrays. The index here corresponds to the index in the `formulas` or `queries` array from the request. items: $ref: '#/components/schemas/TimeseriesResponseValues' type: array @@ -3502,9 +6500,7 @@ components: properties: from: default: now-15m - description: >- - The minimum time for the requested spans, supports date-time - ISO8601, date math, and regular timestamps (milliseconds). + description: The minimum time for the requested spans, supports date-time ISO8601, date math, and regular timestamps (milliseconds). example: now-15m type: string query: @@ -3514,9 +6510,7 @@ components: type: string to: default: now - description: >- - The maximum time for the requested spans, supports date-time - ISO8601, date math, and regular timestamps (milliseconds). + description: The maximum time for the requested spans, supports date-time ISO8601, date math, and regular timestamps (milliseconds). example: now type: string type: object @@ -3544,11 +6538,9 @@ components: - facet type: object SpansQueryOptions: - description: >- + description: |- Global query options that are used during the query. - - Note: You should only supply timezone or time offset but not both - otherwise the query will fail. + Note: You should only supply timezone or time offset but not both otherwise the query will fail. properties: timeOffset: description: The time offset (in seconds) to apply to the query. @@ -3556,26 +6548,23 @@ components: type: integer timezone: default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). + description: The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). example: GMT type: string type: object SpansAggregateBucketValue: description: A bucket value, can be either a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/SpansAggregateBucketValueSingleString' - - $ref: '#/components/schemas/SpansAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/SpansAggregateBucketValueTimeseries' + type: string + format: double + items: + $ref: '#/components/schemas/SpansAggregateBucketValueTimeseriesPoint' + x-generate-alias-as-model: true SpansListRequestPage: description: Paging attributes for listing spans. properties: cursor: description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== type: string limit: default: 10 @@ -3585,6 +6574,72 @@ components: maximum: 1000 type: integer type: object + DistributionPointTimestamp: + description: Distribution point timestamp. It should be in seconds and current. + format: double + type: number + DistributionPointData: + description: Distribution point data. + items: + description: List of distribution point data. + format: double + type: number + type: array + DdsqlTabularQueryColumn: + description: A single column of a DDSQL tabular query result. + properties: + name: + description: Name of the column as projected by the SQL statement. + example: service + type: string + type: + description: |- + DDSQL data type of the column's values, for example `VARCHAR`, `BIGINT`, + `DECIMAL`, `BOOLEAN`, `TIMESTAMP`, `JSON`, or an array variant such as + `VARCHAR[]`. See the + [DDSQL data-types reference](https://docs.datadoghq.com/ddsql_reference/#data-types) + for the full, up-to-date list. + example: VARCHAR + type: string + values: + description: |- + Column values in row order, one entry per result row. The element type + follows the column's `type`. The following serialization rules should be + taken into account: + + - `BIGINT` values are encoded as JSON numbers in the signed 64-bit integer range. + - `DECIMAL` values are encoded as JSON numbers with 64-bit double precision. + - `TIMESTAMP` and `DATE` values are encoded as Unix-millisecond integers; a + `DATE` resolves to midnight UTC. + - `JSON` values are returned as a JSON-encoded string. + + `null` is allowed for any column type where a value is missing. + example: + - web-store + - checkout + items: {} + type: array + required: + - name + - type + - values + type: object + TagIndexingRuleOptionsData: + description: Data payload for tag indexing rule options. + properties: + dynamic_tags: + $ref: '#/components/schemas/TagIndexingRuleDynamicTags' + manage_preexisting_metrics: + description: When true, the rule applies to metrics that were ingested before the rule was created. + example: true + type: boolean + metric_match: + $ref: '#/components/schemas/TagIndexingRuleMetricMatch' + override_previous_rules: + description: When true, this rule's tag list overrides tags configured by earlier rules for the same metric. When false (default), tags from all matching rules are combined. + example: false + type: boolean + type: object MetricCustomAggregation: description: A time and space aggregation combination for use in query. example: @@ -3600,9 +6655,7 @@ components: - space type: object MetricAssetDashboardRelationship: - description: >- - An object of type `dashboard` that can be referenced in the `included` - data. + description: An object of type `dashboard` that can be referenced in the `included` data. properties: id: $ref: '#/components/schemas/MetricDashboardID' @@ -3610,9 +6663,7 @@ components: $ref: '#/components/schemas/MetricDashboardType' type: object MetricAssetMonitorRelationship: - description: >- - An object of type `monitor` that can be referenced in the `included` - data. + description: An object of type `monitor` that can be referenced in the `included` data. properties: id: $ref: '#/components/schemas/MetricMonitorID' @@ -3620,9 +6671,7 @@ components: $ref: '#/components/schemas/MetricMonitorType' type: object MetricAssetNotebookRelationship: - description: >- - An object of type `notebook` that can be referenced in the `included` - data. + description: An object of type `notebook` that can be referenced in the `included` data. properties: id: $ref: '#/components/schemas/MetricNotebookID' @@ -3637,13 +6686,18 @@ components: type: $ref: '#/components/schemas/MetricSLOType' type: object + MetricVolumesRelationshipData: + description: Relationship data for a metric volume. + properties: + id: + $ref: '#/components/schemas/MetricName' + type: + $ref: '#/components/schemas/MetricIngestedIndexedVolumeType' + type: object FormulaLimit: - description: >- - Message for specifying limits to the number of values returned by a - query. - - This limit is only for scalar queries and has no effect on timeseries - queries. + description: |- + Message for specifying limits to the number of values returned by a query. + This limit is only for scalar queries and has no effect on timeseries queries. properties: count: description: The number of results to which to limit. @@ -3651,18 +6705,153 @@ components: format: int32 maximum: 2147483647 type: integer - order: + order: + $ref: '#/components/schemas/QuerySortOrder' + type: object + ScalarQuery: + description: An individual scalar query to one of the basic Datadog data sources. + example: + aggregator: avg + data_source: metrics + query: avg:system.cpu.user{*} by {env} + additional_query_filters: '*' + group_mode: overall + measure: good_events + name: my_slo + slo_id: '12345678910' + slo_query_type: metric + properties: + aggregator: + $ref: '#/components/schemas/MetricsAggregator' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/MetricsDataSource' + name: + description: The variable name for use in formulas. + type: string + query: + description: A classic metrics query string. + example: avg:system.cpu.user{*} by {env} + type: string + compute: + $ref: '#/components/schemas/EventsCompute' + group_by: + $ref: '#/components/schemas/EventsQueryGroupBys' + indexes: + description: The indexes in which to search. + example: + - main + items: + description: The unique index name. + example: main + type: string + type: array + search: + $ref: '#/components/schemas/EventsSearch' + env: + description: The environment to query. + example: prod + type: string + operation_name: + description: The APM operation name. + example: web.request + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: datacenter + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: us-east-1 + type: string + resource_name: + description: The resource name to filter by. + example: Admin::ProductsController#create + type: string + service: + description: The service name to filter by. + example: web-store + type: string + stat: + $ref: '#/components/schemas/ApmResourceStatName' + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: primary + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: A peer tag value. + example: peer.service:my-service + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (for example, env, primary_tag). + example: env:prod + type: string + resource_hash: + description: The resource hash for exact matching. + example: abc123 + type: string + span_kind: + $ref: '#/components/schemas/ApmMetricsSpanKind' + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: true + type: boolean + additional_query_filters: + description: Additional filters applied to the SLO query. + example: host:host_a,env:prod + type: string + group_mode: + $ref: '#/components/schemas/SlosGroupMode' + measure: + $ref: '#/components/schemas/SlosMeasure' + slo_id: + description: The unique identifier of the SLO to query. + example: a]b123c45de6f78g90h + type: string + slo_query_type: + $ref: '#/components/schemas/SlosQueryType' + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The process metric to query. + example: process.stat.cpu.total_pct + type: string + sort: $ref: '#/components/schemas/QuerySortOrder' + tag_filters: + description: Tag filters to narrow down processes. + items: + description: A tag filter value. + example: env:prod + type: string + type: array + text_filter: + description: A full-text search filter to match process names or commands. + type: string + required: + - data_source + - query + - aggregator + - compute + - name + - env + - service + - stat + - operation_name + - resource_name + - slo_id + - measure + - metric type: object - ScalarQuery: - description: An individual scalar query to one of the basic Datadog data sources. - example: - aggregator: avg - data_source: metrics - query: avg:system.cpu.user{*} by {env} - oneOf: - - $ref: '#/components/schemas/MetricsScalarQuery' - - $ref: '#/components/schemas/EventsScalarQuery' GroupScalarColumn: description: A column containing the tag keys and values in a group. properties: @@ -3673,9 +6862,7 @@ components: type: $ref: '#/components/schemas/ScalarColumnTypeGroup' values: - description: >- - The array of tag values for each group found for the results of the - formulas or queries. + description: The array of tag values for each group found for the results of the formulas or queries. example: - - production - - staging @@ -3716,32 +6903,157 @@ components: example: data_source: metrics query: avg:system.cpu.user{*} by {env} - oneOf: - - $ref: '#/components/schemas/MetricsTimeseriesQuery' - - $ref: '#/components/schemas/EventsTimeseriesQuery' + additional_query_filters: '*' + group_mode: overall + measure: good_events + name: my_slo + slo_id: '12345678910' + slo_query_type: metric + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/MetricsDataSource' + name: + description: The variable name for use in formulas. + type: string + query: + description: A classic metrics query string. + example: avg:system.cpu.user{*} by {env} + type: string + compute: + $ref: '#/components/schemas/EventsCompute' + group_by: + $ref: '#/components/schemas/EventsQueryGroupBys' + indexes: + description: The indexes in which to search. + example: + - main + items: + description: The unique index name. + example: main + type: string + type: array + search: + $ref: '#/components/schemas/EventsSearch' + env: + description: The environment to query. + example: prod + type: string + operation_name: + description: The APM operation name. + example: web.request + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: datacenter + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: us-east-1 + type: string + resource_name: + description: The resource name to filter by. + example: Admin::ProductsController#create + type: string + service: + description: The service name to filter by. + example: web-store + type: string + stat: + $ref: '#/components/schemas/ApmResourceStatName' + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: primary + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: A peer tag value. + example: peer.service:my-service + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (for example, env, primary_tag). + example: env:prod + type: string + resource_hash: + description: The resource hash for exact matching. + example: abc123 + type: string + span_kind: + $ref: '#/components/schemas/ApmMetricsSpanKind' + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: true + type: boolean + additional_query_filters: + description: Additional filters applied to the SLO query. + example: host:host_a,env:prod + type: string + group_mode: + $ref: '#/components/schemas/SlosGroupMode' + measure: + $ref: '#/components/schemas/SlosMeasure' + slo_id: + description: The unique identifier of the SLO to query. + example: a]b123c45de6f78g90h + type: string + slo_query_type: + $ref: '#/components/schemas/SlosQueryType' + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The process metric to query. + example: process.stat.cpu.total_pct + type: string + sort: + $ref: '#/components/schemas/QuerySortOrder' + tag_filters: + description: Tag filters to narrow down processes. + items: + description: A tag filter value. + example: env:prod + type: string + type: array + text_filter: + description: A full-text search filter to match process names or commands. + type: string + required: + - data_source + - query + - compute + - name + - env + - service + - stat + - operation_name + - resource_name + - slo_id + - measure + - metric + type: object TimeseriesResponseSeries: - description: '' + description: A single series in a timeseries query response, containing the query index, unit information, and group tags. properties: group_tags: $ref: '#/components/schemas/GroupTags' query_index: - description: >- - The index of the query in the "formulas" array (or "queries" array - if no "formulas" was specified). + description: The index of the query in the "formulas" array (or "queries" array if no "formulas" was specified). example: 0 format: int32 maximum: 2147483647 type: integer unit: - description: >- + description: |- Detailed information about the unit. - - The first element describes the "primary unit" (for example, `bytes` - in `bytes per second`). - - The second element describes the "per unit" (for example, `second` - in `bytes per second`). - + The first element describes the "primary unit" (for example, `bytes` in `bytes per second`). + The second element describes the "per unit" (for example, `second` in `bytes per second`). If the second element is not present, the API returns null. items: $ref: '#/components/schemas/Unit' @@ -3800,11 +7112,9 @@ components: - TIMESERIES - TOTAL SpansGroupByHistogram: - description: >- + description: |- Used to perform a histogram computation (only for measure facets). - - Note: At most 100 buckets are allowed, the number of buckets is (max - - min)/interval. + Note: At most 100 buckets are allowed, the number of buckets is (max - min)/interval. properties: interval: description: The bin size of the histogram buckets. @@ -3832,9 +7142,8 @@ components: type: object SpansGroupByMissing: description: The value to use for spans that don't have the facet used to group by. - oneOf: - - $ref: '#/components/schemas/SpansGroupByMissingString' - - $ref: '#/components/schemas/SpansGroupByMissingNumber' + type: string + format: double SpansAggregateSort: description: A sort rule. example: @@ -3854,13 +7163,9 @@ components: type: object SpansGroupByTotal: default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/SpansGroupByTotalBoolean' - - $ref: '#/components/schemas/SpansGroupByTotalString' - - $ref: '#/components/schemas/SpansGroupByTotalNumber' + description: A resulting object to put the given computes in over all the matching records. + type: boolean + format: double SpansAggregateBucketValueSingleString: description: A single string value. type: string @@ -3874,6 +7179,59 @@ components: $ref: '#/components/schemas/SpansAggregateBucketValueTimeseriesPoint' type: array x-generate-alias-as-model: true + TagIndexingRuleDynamicTags: + description: |- + Options for dynamic tag indexing applied per metric, such as tags filtered by query usage. + + Before a tag key is dropped by this rule, two grace period conditions must be met: + + 1. The metric must be submitted for at least as long as the selected window. + 2. A tag key must have been submitted for at least 15 days. + + Any metric or tag key that does not meet these conditions are excluded from this + indexing rule. The `exclude_not_*` fields require `exclude_tags_mode` to be set to `true`. + properties: + exclude_not_queried_window_seconds: + description: Tags that have not been queried within this window are excluded from indexing. Maximum of `7776000` (90 days). + example: 3600 + format: int64 + maximum: 7776000 + type: integer + exclude_not_used_in_assets: + description: Tags not used in any dashboards, monitors, notebooks, or SLOs are excluded from indexing. + example: false + type: boolean + queried_tags_window_seconds: + description: Window in seconds for evaluating queried tags. + example: 3600 + format: int64 + type: integer + related_asset_tags: + description: When true, tags from related assets are included. + example: false + type: boolean + type: object + TagIndexingRuleMetricMatch: + description: Criteria for matching metrics based on query state. + properties: + is_queried: + description: Match metrics that are being queried. + type: boolean + not_queried: + description: Match metrics that are not being queried. + type: boolean + not_used_in_assets: + description: Match metrics not used in any dashboards or monitors. + type: boolean + queried_window_seconds: + description: Window in seconds for evaluating query state. + example: 3600 + format: int64 + type: integer + used_in_assets: + description: Match metrics used in dashboards or monitors. + type: boolean + type: object MetricCustomSpaceAggregation: description: A space aggregation for use in query. enum: @@ -3915,10 +7273,12 @@ components: - ASC - DESC MetricsScalarQuery: - description: An individual scalar metrics query. + description: A query against Datadog custom metrics or Cloud Cost data sources. properties: aggregator: $ref: '#/components/schemas/MetricsAggregator' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' data_source: $ref: '#/components/schemas/MetricsDataSource' name: @@ -3934,10 +7294,12 @@ components: - aggregator type: object EventsScalarQuery: - description: An individual scalar events query. + description: An individual scalar query for logs, RUM, traces, CI pipelines, security signals, and other event-based data sources. Use this query type for any data source powered by the Events Platform. See the data_source field for the full list of supported sources. properties: compute: $ref: '#/components/schemas/EventsCompute' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' data_source: $ref: '#/components/schemas/EventsDataSource' group_by: @@ -3951,14 +7313,293 @@ components: example: main type: string type: array - name: - description: The variable name for use in formulas. + name: + description: The variable name for use in formulas. + type: string + search: + $ref: '#/components/schemas/EventsSearch' + required: + - data_source + - compute + type: object + ApmResourceStatsQuery: + description: A query for APM resource statistics such as latency, error rate, and hit count, grouped by resource name. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ApmResourceStatsDataSource' + env: + description: The environment to query. + example: prod + type: string + group_by: + description: Tag keys to group results by. + items: + description: A tag key to group by. + example: resource_name + type: string + type: array + name: + description: The variable name for use in formulas. + example: query1 + type: string + operation_name: + description: The APM operation name. + example: web.request + type: string + primary_tag_name: + description: Name of the second primary tag used within APM. Required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog + example: datacenter + type: string + primary_tag_value: + description: Value of the second primary tag by which to filter APM data. `primary_tag_name` must also be specified. + example: us-east-1 + type: string + resource_name: + description: The resource name to filter by. + example: Admin::ProductsController#create + type: string + service: + description: The service name to filter by. + example: web-store + type: string + stat: + $ref: '#/components/schemas/ApmResourceStatName' + required: + - data_source + - name + - env + - service + - stat + type: object + ApmMetricsQuery: + description: A query for APM trace metrics such as hits, errors, and latency percentiles, aggregated across services. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ApmMetricsDataSource' + group_by: + description: Optional fields to group the query results by. + items: + description: A field to group results by. + example: service + type: string + type: array + name: + description: The variable name for use in formulas. + example: query1 + type: string + operation_mode: + description: Optional operation mode to aggregate across operation names. + example: primary + type: string + operation_name: + description: Name of operation on service. If not provided, the primary operation name is used. + example: web.request + type: string + peer_tags: + description: Tags to query for a specific downstream entity (peer.service, peer.db_instance, peer.s3, peer.s3.bucket, etc.). + items: + description: A peer tag value. + example: peer.service:my-service + type: string + type: array + query_filter: + description: Additional filters for the query using metrics query syntax (for example, env, primary_tag). + example: env:prod + type: string + resource_hash: + description: The resource hash for exact matching. + example: abc123 + type: string + resource_name: + description: The full name of a specific resource to filter by. + example: GET /api/v1/users + type: string + service: + description: The service name to filter by. + example: web-store + type: string + span_kind: + $ref: '#/components/schemas/ApmMetricsSpanKind' + stat: + $ref: '#/components/schemas/ApmMetricsStat' + required: + - data_source + - name + - stat + type: object + ApmDependencyStatsQuery: + description: A query for APM dependency statistics between services, such as call latency and error rates. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ApmDependencyStatsDataSource' + env: + description: The environment to query. + example: prod + type: string + is_upstream: + description: Determines whether stats for upstream or downstream dependencies should be queried. + example: true + type: boolean + name: + description: The variable name for use in formulas. + example: query1 + type: string + operation_name: + description: The APM operation name. + example: web.request + type: string + primary_tag_name: + description: The name of the second primary tag used within APM; required when `primary_tag_value` is specified. See https://docs.datadoghq.com/tracing/guide/setting_primary_tags_to_scope/#add-a-second-primary-tag-in-datadog. + example: datacenter + type: string + primary_tag_value: + description: Filter APM data by the second primary tag. `primary_tag_name` must also be specified. + example: us-east-1 + type: string + resource_name: + description: The resource name to filter by. + example: GET /api/v2/users + type: string + service: + description: The service name to filter by. + example: web-store + type: string + stat: + $ref: '#/components/schemas/ApmDependencyStatName' + required: + - data_source + - name + - env + - operation_name + - resource_name + - service + - stat + type: object + SloQuery: + description: A query for SLO status, error budget, and burn rate metrics. + example: + additional_query_filters: '*' + data_source: slo + group_mode: overall + measure: good_events + name: my_slo + slo_id: '12345678910' + slo_query_type: metric + properties: + additional_query_filters: + description: Additional filters applied to the SLO query. + example: host:host_a,env:prod + type: string + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/SloDataSource' + group_mode: + $ref: '#/components/schemas/SlosGroupMode' + measure: + $ref: '#/components/schemas/SlosMeasure' + name: + description: The variable name for use in formulas. + example: query1 + type: string + slo_id: + description: The unique identifier of the SLO to query. + example: a]b123c45de6f78g90h + type: string + slo_query_type: + $ref: '#/components/schemas/SlosQueryType' + required: + - data_source + - slo_id + - measure + type: object + ProcessScalarQuery: + description: A query for host-level process metrics such as CPU and memory usage. + properties: + aggregator: + $ref: '#/components/schemas/MetricsAggregator' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ProcessDataSource' + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The process metric to query. + example: process.stat.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: '#/components/schemas/QuerySortOrder' + tag_filters: + description: Tag filters to narrow down processes. + items: + description: A tag filter value. + example: env:prod + type: string + type: array + text_filter: + description: A full-text search filter to match process names or commands. + type: string + required: + - data_source + - name + - metric + type: object + ContainerScalarQuery: + description: A query for container-level metrics such as CPU and memory usage. + properties: + aggregator: + $ref: '#/components/schemas/MetricsAggregator' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ContainerDataSource' + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The container metric to query. + example: process.stat.container.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: '#/components/schemas/QuerySortOrder' + tag_filters: + description: Tag filters to narrow down containers. + items: + description: A tag filter value. + example: env:prod + type: string + type: array + text_filter: + description: A full-text search filter to match container names. type: string - search: - $ref: '#/components/schemas/EventsSearch' required: - data_source - - compute + - name + - metric type: object ScalarColumnTypeGroup: default: group @@ -3973,15 +7614,10 @@ components: description: Metadata for the resulting numerical values. properties: unit: - description: >- + description: |- Detailed information about the unit. - - First element describes the "primary unit" (for example, `bytes` in - `bytes per second`). - - The second element describes the "per unit" (for example, `second` - in `bytes per second`). - + First element describes the "primary unit" (for example, `bytes` in `bytes per second`). + The second element describes the "per unit" (for example, `second` in `bytes per second`). If the second element is not present, the API returns null. items: $ref: '#/components/schemas/Unit' @@ -3998,8 +7634,10 @@ components: x-enum-varnames: - NUMBER MetricsTimeseriesQuery: - description: An individual timeseries metrics query. + description: A query against Datadog custom metrics or Cloud Cost data sources. properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' data_source: $ref: '#/components/schemas/MetricsDataSource' name: @@ -4014,10 +7652,12 @@ components: - query type: object EventsTimeseriesQuery: - description: An individual timeseries events query. + description: An individual timeseries query for logs, RUM, traces, CI pipelines, security signals, and other event-based data sources. Use this query type for any data source powered by the Events Platform. See the data_source field for the full list of supported sources. properties: compute: $ref: '#/components/schemas/EventsCompute' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' data_source: $ref: '#/components/schemas/EventsDataSource' group_by: @@ -4040,6 +7680,84 @@ components: - data_source - compute type: object + ProcessTimeseriesQuery: + description: A query for host-level process metrics such as CPU and memory usage. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ProcessDataSource' + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The process metric to query. + example: process.stat.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: '#/components/schemas/QuerySortOrder' + tag_filters: + description: Tag filters to narrow down processes. + items: + description: A tag filter value. + example: env:prod + type: string + type: array + text_filter: + description: A full-text search filter to match process names or commands. + type: string + required: + - data_source + - name + - metric + type: object + ContainerTimeseriesQuery: + description: A query for container-level metrics such as CPU and memory usage. + properties: + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuids' + data_source: + $ref: '#/components/schemas/ContainerDataSource' + is_normalized_cpu: + description: Whether CPU metrics should be normalized by core count. + type: boolean + limit: + description: Maximum number of results to return. + format: int64 + type: integer + metric: + description: The container metric to query. + example: process.stat.container.cpu.total_pct + type: string + name: + description: The variable name for use in formulas. + example: query1 + type: string + sort: + $ref: '#/components/schemas/QuerySortOrder' + tag_filters: + description: Tag filters to narrow down containers. + items: + description: A tag filter value. + example: env:prod + type: string + type: array + text_filter: + description: A full-text search filter to match container names. + type: string + required: + - data_source + - name + - metric + type: object GroupTags: description: List of tags that apply to a single response value. items: @@ -4048,15 +7766,11 @@ components: type: string type: array Unit: - description: >- - Object containing the metric unit family, scale factor, name, and short - name. + description: Object containing the metric unit family, scale factor, name, and short name. nullable: true properties: family: - description: >- - Unit family, allows for conversion between units of the same family, - for scaling. + description: Unit family, allows for conversion between units of the same family, for scaling. example: time type: string name: @@ -4152,6 +7866,13 @@ components: - MEAN - L2NORM - AREA + CrossOrgUuids: + description: Organization UUIDs to query when using [cross-organization visibility](/account_management/org_settings/cross_org_visibility/). Limited to one organization UUID. + items: + description: An organization UUID. + type: string + maxItems: 1 + type: array MetricsDataSource: default: metrics description: A data source that is powered by the Metrics platform. @@ -4184,13 +7905,35 @@ components: description: A data source that is powered by the Events Platform. enum: - logs + - spans + - network - rum + - security_signals + - profiles + - audit + - events + - ci_tests + - ci_pipelines + - incident_analytics + - product_analytics + - on_call_events - dora example: logs type: string x-enum-varnames: - LOGS + - SPANS + - NETWORK - RUM + - SECURITY_SIGNALS + - PROFILES + - AUDIT + - EVENTS + - CI_TESTS + - CI_PIPELINES + - INCIDENT_ANALYTICS + - PRODUCT_ANALYTICS + - ON_CALL_EVENTS - DORA EventsQueryGroupBys: description: The list of facets on which to split results. @@ -4205,6 +7948,212 @@ components: example: status:warn service:foo type: string type: object + ApmResourceStatsDataSource: + default: apm_resource_stats + description: A data source for APM resource statistics queries. + enum: + - apm_resource_stats + example: apm_resource_stats + type: string + x-enum-varnames: + - APM_RESOURCE_STATS + ApmResourceStatName: + description: The APM resource statistic to query. + enum: + - error_rate + - errors + - hits + - latency_avg + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + - latency_distribution + - total_time + example: latency_p95 + type: string + x-enum-varnames: + - ERROR_RATE + - ERRORS + - HITS + - LATENCY_AVG + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + - LATENCY_DISTRIBUTION + - TOTAL_TIME + ApmMetricsDataSource: + default: apm_metrics + description: A data source for APM metrics queries. + enum: + - apm_metrics + example: apm_metrics + type: string + x-enum-varnames: + - APM_METRICS + ApmMetricsSpanKind: + description: Describes the relationship between the span, its parents, and its children in a trace. + enum: + - consumer + - server + - client + - producer + - internal + example: server + type: string + x-enum-varnames: + - CONSUMER + - SERVER + - CLIENT + - PRODUCER + - INTERNAL + ApmMetricsStat: + description: The APM metric statistic to query. + enum: + - error_rate + - errors + - errors_per_second + - hits + - hits_per_second + - apdex + - latency_avg + - latency_max + - latency_p50 + - latency_p75 + - latency_p90 + - latency_p95 + - latency_p99 + - latency_p999 + - latency_distribution + - total_time + example: latency_p99 + type: string + x-enum-varnames: + - ERROR_RATE + - ERRORS + - ERRORS_PER_SECOND + - HITS + - HITS_PER_SECOND + - APDEX + - LATENCY_AVG + - LATENCY_MAX + - LATENCY_P50 + - LATENCY_P75 + - LATENCY_P90 + - LATENCY_P95 + - LATENCY_P99 + - LATENCY_P999 + - LATENCY_DISTRIBUTION + - TOTAL_TIME + ApmDependencyStatsDataSource: + default: apm_dependency_stats + description: A data source for APM dependency statistics queries. + enum: + - apm_dependency_stats + example: apm_dependency_stats + type: string + x-enum-varnames: + - APM_DEPENDENCY_STATS + ApmDependencyStatName: + description: The APM dependency statistic to query. + enum: + - avg_duration + - avg_root_duration + - avg_spans_per_trace + - error_rate + - pct_exec_time + - pct_of_traces + - total_traces_count + example: avg_duration + type: string + x-enum-varnames: + - AVG_DURATION + - AVG_ROOT_DURATION + - AVG_SPANS_PER_TRACE + - ERROR_RATE + - PCT_EXEC_TIME + - PCT_OF_TRACES + - TOTAL_TRACES_COUNT + SloDataSource: + default: slo + description: A data source for SLO queries. + enum: + - slo + example: slo + type: string + x-enum-varnames: + - SLO + SlosGroupMode: + description: How SLO results are grouped in the response. + enum: + - overall + - components + example: overall + type: string + x-enum-varnames: + - OVERALL + - COMPONENTS + SlosMeasure: + description: The SLO measurement to retrieve. + enum: + - good_events + - bad_events + - slo_status + - error_budget_remaining + - error_budget_remaining_history + - error_budget_burndown + - burn_rate + - slo_status_history + - good_minutes + - bad_minutes + example: slo_status + type: string + x-enum-varnames: + - GOOD_EVENTS + - BAD_EVENTS + - SLO_STATUS + - ERROR_BUDGET_REMAINING + - ERROR_BUDGET_REMAINING_HISTORY + - ERROR_BUDGET_BURNDOWN + - BURN_RATE + - SLO_STATUS_HISTORY + - GOOD_MINUTES + - BAD_MINUTES + SlosQueryType: + description: The type of SLO definition being queried. + enum: + - metric + - time_slice + - monitor + example: metric + type: string + x-enum-varnames: + - METRIC + - TIME_SLICE + - MONITOR + ProcessDataSource: + default: process + description: A data source for process-level infrastructure metrics. + enum: + - process + example: process + type: string + x-enum-varnames: + - PROCESS + ContainerDataSource: + default: container + description: A data source for container-level infrastructure metrics. + enum: + - container + example: container + type: string + x-enum-varnames: + - CONTAINER EventsAggregation: default: count description: The type of aggregation that can be performed on events-based queries. @@ -4243,12 +8192,9 @@ components: type: string limit: default: 10 - description: >- - The maximum buckets to return for this group by. Note: at most 10000 - buckets are allowed. - - If grouping by multiple facets, the product of limits must not - exceed 10000. + description: |- + The maximum buckets to return for this group by. Note: at most 10000 buckets are allowed. + If grouping by multiple facets, the product of limits must not exceed 10000. example: 10 format: int32 maximum: 10000 @@ -4264,9 +8210,7 @@ components: aggregation: $ref: '#/components/schemas/EventsAggregation' metric: - description: >- - The metric's calculated value which should be used to define the - sort order of a query's results. + description: The metric's calculated value which should be used to define the sort order of a query's results. example: '@duration' type: string order: @@ -4369,6 +8313,14 @@ components: required: true schema: type: string + TagIndexingRuleId: + description: ID of the tag indexing rule. + example: 00000000-0000-0000-0000-000000000001 + in: path + name: id + required: true + schema: + type: string x-stackQL-resources: datasets: id: datadog.metrics.datasets @@ -4382,18 +8334,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_dataset: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1datasets/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_dataset: operation: $ref: '#/paths/~1api~1v2~1datasets~1{dataset_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_dataset: operation: $ref: '#/paths/~1api~1v2~1datasets~1{dataset_id}/get' @@ -4401,12 +8362,19 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_dataset: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1datasets~1{dataset_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/datasets/methods/get_dataset' @@ -4418,6 +8386,39 @@ components: - $ref: '#/components/x-stackQL-resources/datasets/methods/delete_dataset' replace: - $ref: '#/components/x-stackQL-resources/datasets/methods/update_dataset' + ddsql_queries: + id: datadog.metrics.ddsql_queries + name: ddsql_queries + title: Ddsql Queries + methods: + execute_ddsql_tabular_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ddsql~1query~1tabular/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + fetch_ddsql_tabular_query: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ddsql~1query~1tabular~1fetch/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] tag_configurations: id: datadog.metrics.tag_configurations name: tag_configurations @@ -4430,24 +8431,28 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - delete_bulk_tags_metrics_configuration: - operation: - $ref: '#/paths/~1api~1v2~1metrics~1config~1bulk-tags/delete' - response: - mediaType: application/json - openAPIDocKey: '202' - create_bulk_tags_metrics_configuration: - operation: - $ref: '#/paths/~1api~1v2~1metrics~1config~1bulk-tags/post' - response: - mediaType: application/json - openAPIDocKey: '202' + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.pagination.next_cursor + location: body + queryParamPushdown: + top: + paramName: page[size] + maxValue: 10000 delete_tag_configuration: operation: $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel list_tag_configuration_by_name: operation: $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/get' @@ -4455,38 +8460,174 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_tag_configuration: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel create_tag_configuration: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tags/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/list_tag_configuration_by_name - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/list_tag_configurations + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/list_tag_configuration_by_name' + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/list_tag_configurations' insert: - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/create_tag_configuration - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/create_bulk_tags_metrics_configuration + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/create_tag_configuration' update: - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/update_tag_configuration + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/update_tag_configuration' + delete: + - $ref: '#/components/x-stackQL-resources/tag_configurations/methods/delete_tag_configuration' + replace: [] + historical_metrics_configurations: + id: datadog.metrics.historical_metrics_configurations + name: historical_metrics_configurations + title: Historical Metrics Configurations + methods: + create_historical_metrics_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1metrics~1historical-metrics-configurations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_historical_metrics_configuration: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1historical-metrics-configurations~1{metric_name}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_historical_metrics_configuration: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1historical-metrics-configurations~1{metric_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/historical_metrics_configurations/methods/get_historical_metrics_configuration' + insert: + - $ref: '#/components/x-stackQL-resources/historical_metrics_configurations/methods/create_historical_metrics_configuration' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/delete_tag_configuration - - $ref: >- - #/components/x-stackQL-resources/tag_configurations/methods/delete_bulk_tags_metrics_configuration + - $ref: '#/components/x-stackQL-resources/historical_metrics_configurations/methods/delete_historical_metrics_configuration' replace: [] + tag_indexing_rules: + id: datadog.metrics.tag_indexing_rules + name: tag_indexing_rules + title: Tag Indexing Rules + methods: + list_tag_indexing_rules: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1tag-indexing-rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_tag_indexing_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1metrics~1tag-indexing-rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + reorder_tag_indexing_rules: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1metrics~1tag-indexing-rules~1order/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + delete_tag_indexing_rule: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1tag-indexing-rules~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_tag_indexing_rule: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1tag-indexing-rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_tag_indexing_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1metrics~1tag-indexing-rules~1{id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_tag_indexing_rules_for_metric: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tag-indexing-rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rules/methods/get_tag_indexing_rule' + - $ref: '#/components/x-stackQL-resources/tag_indexing_rules/methods/list_tag_indexing_rules_for_metric' + - $ref: '#/components/x-stackQL-resources/tag_indexing_rules/methods/list_tag_indexing_rules' + insert: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rules/methods/create_tag_indexing_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rules/methods/delete_tag_indexing_rule' + replace: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rules/methods/update_tag_indexing_rule' active_tag_configurations: id: datadog.metrics.active_tag_configurations name: active_tag_configurations @@ -4494,16 +8635,16 @@ components: methods: list_active_metric_configurations: operation: - $ref: >- - #/paths/~1api~1v2~1metrics~1{metric_name}~1active-configurations/get + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1active-configurations/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/active_tag_configurations/methods/list_active_metric_configurations + - $ref: '#/components/x-stackQL-resources/active_tag_configurations/methods/list_active_metric_configurations' insert: [] update: [] delete: [] @@ -4520,10 +8661,16 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000000 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/tags/methods/list_tags_by_metric_name + - $ref: '#/components/x-stackQL-resources/tags/methods/list_tags_by_metric_name' insert: [] update: [] delete: [] @@ -4540,10 +8687,11 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/related_assets/methods/list_metric_assets + - $ref: '#/components/x-stackQL-resources/related_assets/methods/list_metric_assets' insert: [] update: [] delete: [] @@ -4560,10 +8708,11 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/metrics_output_series/methods/estimate_metrics_output_series + - $ref: '#/components/x-stackQL-resources/metrics_output_series/methods/estimate_metrics_output_series' insert: [] update: [] delete: [] @@ -4580,14 +8729,57 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/tag_cardinality_details/methods/get_metric_tag_cardinality_details + - $ref: '#/components/x-stackQL-resources/tag_cardinality_details/methods/get_metric_tag_cardinality_details' insert: [] update: [] delete: [] replace: [] + tag_indexing_rule_exemptions: + id: datadog.metrics.tag_indexing_rule_exemptions + name: tag_indexing_rule_exemptions + title: Tag Indexing Rule Exemptions + methods: + delete_tag_indexing_rule_exemption: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tag-indexing-rule-exemptions/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_tag_indexing_rule_exemption: + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tag-indexing-rule-exemptions/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_tag_indexing_rule_exemption: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1metrics~1{metric_name}~1tag-indexing-rule-exemptions/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rule_exemptions/methods/get_tag_indexing_rule_exemption' + insert: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rule_exemptions/methods/create_tag_indexing_rule_exemption' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/tag_indexing_rule_exemptions/methods/delete_tag_indexing_rule_exemption' + replace: [] volumes: id: datadog.metrics.volumes name: volumes @@ -4600,10 +8792,11 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/volumes/methods/list_volumes_by_metric_name + - $ref: '#/components/x-stackQL-resources/volumes/methods/list_volumes_by_metric_name' insert: [] update: [] delete: [] @@ -4614,23 +8807,38 @@ components: title: Metrics methods: query_scalar_data: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1query~1scalar/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel query_timeseries_data: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1query~1timeseries/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel submit_metrics: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1series/post' response: mediaType: application/json openAPIDocKey: '202' + request: + nativeCasing: camel sqlVerbs: select: [] insert: @@ -4644,11 +8852,16 @@ components: title: Spans methods: aggregate_spans: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1spans~1analytics~1aggregate/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel list_spans_get: operation: $ref: '#/paths/~1api~1v2~1spans~1events/get' @@ -4656,12 +8869,31 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 list_spans: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1spans~1events~1search/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/spans/methods/list_spans_get' @@ -4670,9 +8902,105 @@ components: update: [] delete: [] replace: [] + distribution_points: + id: datadog.metrics.distribution_points + name: distribution_points + title: Distribution Points + methods: + submit_distribution_points: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1distribution_points/post' + response: + mediaType: text/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + active_metrics: + id: datadog.metrics.active_metrics + name: active_metrics + title: Active Metrics + methods: + list_active_metrics: + operation: + $ref: '#/paths/~1api~1v1~1metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/active_metrics/methods/list_active_metrics' + insert: [] + update: [] + delete: [] + replace: [] + metric_metadata: + id: datadog.metrics.metric_metadata + name: metric_metadata + title: Metric Metadata + methods: + get_metric_metadata: + operation: + $ref: '#/paths/~1api~1v1~1metrics~1{metric_name}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_metric_metadata: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1metrics~1{metric_name}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/metric_metadata/methods/get_metric_metadata' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/metric_metadata/methods/update_metric_metadata' + timeseries_query: + id: datadog.metrics.timeseries_query + name: timeseries_query + title: Timeseries Query + methods: + query_metrics: + operation: + $ref: '#/paths/~1api~1v1~1query/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.series + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/timeseries_query/methods/query_metrics' + insert: [] + update: [] + delete: [] + replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/monitoring.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/monitoring.yaml index 01a995c..3f29b63 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/monitoring.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/monitoring.yaml @@ -4,14 +4,111 @@ info: description: datadog monitoring API version: '1.0' paths: + /api/v2/data-observability/monitors/runs/{run_id}/status: + get: + description: Retrieves the current status of a data observability monitor run. Poll this endpoint after triggering a run to determine when evaluation is complete. + operationId: GetDataObservabilityMonitorRunStatus + parameters: + - description: The ID of the monitor run to retrieve status for. + example: abc123def456 + in: path + name: run_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + status: ok + id: abc123def456 + type: monitor_run + schema: + $ref: '#/components/schemas/GetDataObservabilityMonitorRunStatusResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - data_observability_monitors_write + - monitors_write + summary: Get data observability monitor run status + tags: + - Data Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/data-observability/monitors/{monitor_id}/run: + post: + description: Manually triggers a run for a data observability monitor. Only monitors that are not scheduled (manually-runnable) can be triggered this way. + operationId: RunDataObservabilityMonitor + parameters: + - description: The ID of the data observability monitor to run. + example: 12345 + in: path + name: monitor_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: abc123def456 + type: monitor_run + schema: + $ref: '#/components/schemas/RunDataObservabilityMonitorResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - data_observability_monitors_write + - monitors_write + summary: Run a data observability monitor + tags: + - Data Observability + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/monitor/notification_rule: get: description: Returns a list of all monitor notification rules. operationId: GetMonitorNotificationRules parameters: - - description: >- - The page to start paginating from. If `page` is not specified, the - argument defaults to the first page. + - description: The page to start paginating from. If `page` is not specified, the argument defaults to the first page. in: query name: page required: false @@ -20,9 +117,7 @@ paths: maximum: 1000000 minimum: 0 type: integer - - description: >- - The number of rules to return per page. If `per_page` is not - specified, the argument defaults to 100. + - description: The number of rules to return per page. If `per_page` is not specified, the argument defaults to 100. in: query name: per_page required: false @@ -31,37 +126,25 @@ paths: maximum: 1000 minimum: 1 type: integer - - description: >- - String for sort order, composed of field and sort order separated by - a colon, for example `name:asc`. Supported sort directions: `asc`, - `desc`. Supported fields: `name`, `created_at`. + - description: 'String for sort order, composed of field and sort order separated by a colon, for example `name:asc`. Supported sort directions: `asc`, `desc`. Supported fields: `name`, `created_at`.' in: query name: sort required: false schema: type: string - - description: >- + - description: |- JSON-encoded filter object. Supported keys: - - * `text`: Free-text query matched against rule name, tags, and - recipients. - - * `tags`: Array of strings. Return rules that have any of these - tags. - - * `recipients`: Array of strings. Return rules that have any of - these recipients. - example: >- - {"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]} + * `text`: Free-text query matched against rule name, tags, and recipients. + * `tags`: Array of strings. Return rules that have any of these tags. + * `recipients`: Array of strings. Return rules that have any of these recipients. + example: '{"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]}' in: query name: filters required: false schema: type: string - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource path is `created_by`. in: query name: include @@ -73,6 +156,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + filter: + scope: team:product + name: A notification rule name + recipients: + - slack-test-channel + id: 00000000-0000-1234-0000-000000000000 + type: monitor-notification-rule schema: $ref: '#/components/schemas/MonitorNotificationRuleListResponse' description: OK @@ -102,6 +197,20 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + filter: + tags: + - team:product + - host:abc + name: A notification rule name + recipients: + - slack-test-channel + - jira-test + type: monitor-notification-rule schema: $ref: '#/components/schemas/MonitorNotificationRuleCreateRequest' description: Request body to create a monitor notification rule. @@ -110,6 +219,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + filter: + scope: team:product + name: A notification rule name + recipients: + - slack-test-channel + id: 00000000-0000-1234-0000-000000000000 + type: monitor-notification-rule schema: $ref: '#/components/schemas/MonitorNotificationRuleResponse' description: OK @@ -179,10 +300,8 @@ paths: required: true schema: type: string - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource path is `created_by`. in: query name: include @@ -194,6 +313,18 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + filter: + scope: team:product + name: A notification rule name + recipients: + - slack-test-channel + id: 00000000-0000-1234-0000-000000000000 + type: monitor-notification-rule schema: $ref: '#/components/schemas/MonitorNotificationRuleResponse' description: OK @@ -236,6 +367,21 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + filter: + tags: + - team:product + - host:abc + name: A notification rule name + recipients: + - slack-test-channel + - jira-test + id: 00000000-0000-1234-0000-000000000000 + type: monitor-notification-rule schema: $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequest' description: Request body to update the monitor notification rule. @@ -244,6 +390,21 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + filter: + scope: team:product AND host:abc + modified: '2024-01-01T00:00:00+00:00' + name: A notification rule name + recipients: + - slack-test-channel + - jira-test + id: 00000000-0000-1234-0000-000000000000 + type: monitor-notification-rule schema: $ref: '#/components/schemas/MonitorNotificationRuleResponse' description: OK @@ -283,6 +444,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: 00000000-0000-1234-0000-000000000000 + type: monitor-config-policy schema: $ref: '#/components/schemas/MonitorConfigPolicyListResponse' description: OK @@ -312,6 +487,19 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + type: monitor-config-policy schema: $ref: '#/components/schemas/MonitorConfigPolicyCreateRequest' description: Create a monitor configuration policy request body. @@ -320,6 +508,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: 00000000-0000-1234-0000-000000000000 + type: monitor-config-policy schema: $ref: '#/components/schemas/MonitorConfigPolicyResponse' description: OK @@ -402,6 +604,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: 00000000-0000-1234-0000-000000000000 + type: monitor-config-policy schema: $ref: '#/components/schemas/MonitorConfigPolicyResponse' description: OK @@ -445,6 +661,20 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: 00000000-0000-1234-0000-000000000000 + type: monitor-config-policy schema: $ref: '#/components/schemas/MonitorConfigPolicyEditRequest' description: Description of the update. @@ -453,6 +683,20 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + policy: + tag_key: datacenter + tag_key_required: true + valid_tag_values: + - prod + - staging + policy_type: tag + id: 00000000-0000-1234-0000-000000000000 + type: monitor-config-policy schema: $ref: '#/components/schemas/MonitorConfigPolicyResponse' description: OK @@ -492,6 +736,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created: '2024-01-01T00:00:00+00:00' + description: This is a template for monitoring user activity. + modified: '2024-01-01T00:00:00+00:00' + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 1 + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateListResponse' description: OK @@ -518,6 +782,30 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateCreateRequest' required: true @@ -525,6 +813,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + description: This is a template for monitoring user activity. + modified: '2024-01-01T00:00:00+00:00' + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 1 + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateCreateResponse' description: OK @@ -553,6 +861,30 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateCreateRequest' required: true @@ -620,9 +952,7 @@ paths: schema: example: 00000000-0000-1234-0000-000000000000 type: string - - description: >- - Whether to include all versions of the template in the response in - the versions field. + - description: Whether to include all versions of the template in the response in the versions field. example: false in: query name: with_all_versions @@ -633,6 +963,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + description: This is a template for monitoring user activity. + modified: '2024-01-01T00:00:00+00:00' + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 1 + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateResponse' description: OK @@ -672,6 +1022,31 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateUpdateRequest' required: true @@ -679,6 +1054,26 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + description: This is a template for monitoring user activity. + modified: '2024-01-01T00:00:00+00:00' + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + title: Postgres CPU Monitor + version: 2 + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateResponse' description: OK @@ -708,9 +1103,7 @@ paths: contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/monitor/template/{template_id}/validate: post: - description: >- - Validate the structure and content of an existing monitor user template - being updated to a new version. + description: Validate the structure and content of an existing monitor user template being updated to a new version. operationId: ValidateExistingMonitorUserTemplate parameters: - description: ID of the monitor user template. @@ -723,6 +1116,31 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: This is a template for monitoring user activity. + monitor_definition: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + tags: + - product:Our Custom App + - integration:Azure + template_variables: + - available_values: + - value1 + - value2 + defaults: + - defaultValue + name: regionName + tag_key: datacenter + title: Postgres CPU Monitor + id: 00000000-0000-1234-0000-000000000000 + type: monitor-user-template schema: $ref: '#/components/schemas/MonitorUserTemplateUpdateRequest' required: true @@ -779,6 +1197,21 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + end: '2024-01-01T01:00:00+00:00' + groups: + - service:postgres + scope: env:(staging OR prod) AND datacenter:us-east-1 + start: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-1234-0000-000000000000 + type: downtime_match + meta: + page: + total_filtered_count: 1 schema: $ref: '#/components/schemas/MonitorDowntimeMatchResponse' description: OK @@ -807,1036 +1240,17846 @@ paths: operator: OR permissions: - monitors_downtime - /api/v2/synthetics/settings/on_demand_concurrency_cap: + /api/v2/synthetics/api-multistep/subtests/{public_id}: get: - description: Get the on-demand concurrency cap. - operationId: GetOnDemandConcurrencyCap + description: |- + Get the list of API tests that can be added as subtests to a given API multistep test. + The current test is excluded from the list since a test cannot be a subtest of itself. + operationId: GetApiMultistepSubtests + parameters: + - description: The public ID of the API multistep test. + in: path + name: public_id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: [] schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' + $ref: '#/components/schemas/SyntheticsApiMultistepSubtestsResponse' description: OK '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the on-demand concurrency cap + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get available subtests for a multistep test tags: - Synthetics x-permission: operator: OR permissions: - - billing_read + - synthetics_read + /api/v2/synthetics/api-multistep/subtests/{public_id}/parents: + get: + description: |- + Get the list of API multistep tests that include a given subtest, + along with their monitor status. + operationId: GetApiMultistepSubtestParents + parameters: + - description: The public ID of the subtest. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/SyntheticsApiMultistepParentTestsResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get parent tests for a subtest + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/downtimes: + get: + description: Get a list of all Synthetics downtimes for your organization. + operationId: ListSyntheticsDowntimes + parameters: + - description: Comma-separated list of Synthetics test public IDs to filter downtimes by. + in: query + name: filter[test_ids] + required: false + schema: + example: abc-def-123,xyz-uvw-456 + type: string + - description: If set to `true`, return only downtimes that are currently active. + in: query + name: filter[active] + required: false + schema: + example: 'true' + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime + schema: + $ref: '#/components/schemas/SyntheticsDowntimesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Synthetics downtimes + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_read post: - description: Save new value for on-demand concurrency cap. - operationId: SetOnDemandConcurrencyCap + description: Create a new Synthetics downtime. + operationId: CreateSyntheticsDowntime requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + isEnabled: true + name: Weekly maintenance + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + type: downtime schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' - description: . + $ref: '#/components/schemas/SyntheticsDowntimeRequest' required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime + schema: + $ref: '#/components/schemas/SyntheticsDowntimeResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + - synthetics_default_settings_write + /api/v2/synthetics/downtimes/{downtime_id}: + delete: + description: Delete a Synthetics downtime by its ID. + operationId: DeleteSyntheticsDowntime + parameters: + - description: The ID of the downtime to delete. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + - synthetics_default_settings_write + get: + description: Get a Synthetics downtime by its ID. + operationId: GetSyntheticsDowntime + parameters: + - description: The ID of the downtime to retrieve. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' + $ref: '#/components/schemas/SyntheticsDowntimeResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Save new value for on-demand concurrency cap + summary: Get a Synthetics downtime tags: - Synthetics - x-codegen-request-body-name: body x-permission: - operator: OR + operator: AND permissions: - - billing_edit -components: - schemas: - MonitorNotificationRuleListResponse: - description: Response for retrieving all monitor notification rules. - properties: - data: - description: A list of monitor notification rules. - items: - $ref: '#/components/schemas/MonitorNotificationRuleData' - type: array - included: - description: Array of objects related to the monitor notification rules. - items: - $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request + - synthetics_read + put: + description: Update a Synthetics downtime by its ID. + operationId: UpdateSyntheticsDowntime + parameters: + - description: The ID of the downtime to update. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 type: string - type: array - required: - - errors - type: object - MonitorNotificationRuleCreateRequest: - description: Request for creating a monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleCreateRequestData' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + isEnabled: true + name: Weekly maintenance + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + type: downtime + schema: + $ref: '#/components/schemas/SyntheticsDowntimeRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime + schema: + $ref: '#/components/schemas/SyntheticsDowntimeResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + - synthetics_default_settings_write + /api/v2/synthetics/downtimes/{downtime_id}/tests/{test_id}: + delete: + description: Disassociate a Synthetics test from a downtime. + operationId: RemoveTestFromSyntheticsDowntime + parameters: + - description: The ID of the downtime. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: The public ID of the Synthetics test to disassociate from the downtime. + in: path + name: test_id + required: true + schema: + example: abc-def-123 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime + schema: + $ref: '#/components/schemas/SyntheticsDowntimeResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Remove a test from a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + put: + description: Associate a Synthetics test with a downtime. + operationId: AddTestToSyntheticsDowntime + parameters: + - description: The ID of the downtime. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + - description: The public ID of the Synthetics test to associate with the downtime. + in: path + name: test_id + required: true + schema: + example: abc-def-123 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime + schema: + $ref: '#/components/schemas/SyntheticsDowntimeResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add a test to a Synthetics downtime + tags: + - Synthetics + x-permission: + operator: AND + permissions: + - synthetics_write + /api/v2/synthetics/settings/on_demand_concurrency_cap: + get: + description: Get the on-demand concurrency cap. + operationId: GetOnDemandConcurrencyCap + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + on_demand_concurrency_cap: 20 + type: on_demand_concurrency_cap + schema: + $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the on-demand concurrency cap + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - billing_read + post: + description: Save new value for on-demand concurrency cap. + operationId: SetOnDemandConcurrencyCap + requestBody: + content: + application/json: + examples: + default: + value: + on_demand_concurrency_cap: 20 + schema: + $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' + description: . + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + on_demand_concurrency_cap: 20 + type: on_demand_concurrency_cap + schema: + $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Save new value for on-demand concurrency cap + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - billing_edit + /api/v2/synthetics/suites: + post: + operationId: CreateSyntheticsSuite + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: '' + type: suite + type: suites + schema: + $ref: '#/components/schemas/SuiteCreateEditRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: '' + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: '#/components/schemas/SyntheticsSuiteResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a test suite + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/suites/bulk-delete: + post: + operationId: DeleteSyntheticsSuites + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + public_ids: + - '' + type: delete_suites_request + schema: + $ref: '#/components/schemas/DeletedSuitesRequestDeleteRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + deleted_at: '2024-01-01T00:00:00+00:00' + public_id: 123-abc-456 + id: 123-abc-456 + type: suites + schema: + $ref: '#/components/schemas/DeletedSuitesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Bulk delete suites + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v2/synthetics/suites/search: + get: + description: Search for test suites. + operationId: SearchSuites + parameters: + - description: The search query. + in: query + name: query + required: false + schema: + type: string + - description: The sort order for the results (e.g., `name,asc` or `name,desc`). + in: query + name: sort + required: false + schema: + default: name,asc + type: string + - description: If true, return only facets instead of full test details. + in: query + name: facets_only + required: false + schema: + default: false + type: boolean + - description: The offset from which to start returning results. + in: query + name: start + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of results to return. + in: query + name: count + required: false + schema: + default: 50 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + suites: + - monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: [] + type: suite + total: 1 + id: abc-123 + type: suites_search + schema: + $ref: '#/components/schemas/SyntheticsSuiteSearchResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Search test suites + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/suites/{public_id}: + get: + operationId: GetSyntheticsSuite + parameters: + - description: The public ID of the suite to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: '' + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: '#/components/schemas/SyntheticsSuiteResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a suite + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + operationId: EditSyntheticsSuite + parameters: + - description: The public ID of the suite to edit. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: '' + type: suite + type: suites + schema: + $ref: '#/components/schemas/SuiteCreateEditRequest' + description: New suite details to be saved. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: '' + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: '#/components/schemas/SyntheticsSuiteResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a test suite + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v2/synthetics/suites/{public_id}/jsonpatch: + patch: + description: |- + Patch a Synthetic test suite using JSON Patch (RFC 6902). + Use partial updates to modify only specific fields of a test suite. + + Common operations include: + - Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}` + - Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}` + - Remove fields: `{"op": "remove", "path": "/message"}` + operationId: PatchTestSuite + parameters: + - description: The public ID of the Synthetic test suite to patch. + in: path + name: public_id + required: true + schema: + example: 123-abc-456 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + json_patch: + - op: add + path: /name + type: suites_json_patch + schema: + $ref: '#/components/schemas/SuiteJsonPatchRequest' + description: JSON Patch document with operations to apply. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + message: Notification message + monitor_id: 12345678 + name: Example suite name + options: + alerting_threshold: 0.5 + public_id: 123-abc-456 + tags: + - env:production + tests: + - alerting_criticality: critical + public_id: '' + type: suite + id: 123-abc-456 + type: suites + schema: + $ref: '#/components/schemas/SyntheticsSuiteResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Patch a test suite + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/browser/{public_id}/results: + get: + description: Get the latest result summaries for a given Synthetic browser test. + operationId: ListSyntheticsBrowserTestLatestResults + parameters: + - description: The public ID of the Synthetic browser test for which to search results. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Filter results by status. + in: query + name: status + required: false + schema: + $ref: '#/components/schemas/SyntheticsTestResultStatus' + - description: Filter results by run type. + in: query + name: runType + required: false + schema: + $ref: '#/components/schemas/SyntheticsTestResultRunType' + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + - description: Device IDs for which to query results. + in: query + name: device_id + required: false + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + device: + id: chrome.laptop_large + name: Chrome - Laptop Large + type: browser + finished_at: 1679328005200 + location: + id: aws:eu-west-1 + name: Ireland (AWS) + run_type: scheduled + started_at: 1679328000000 + status: passed + test_type: browser + test_version: 2 + id: '7291038456723891045' + relationships: + test: + data: + id: xyz-abc-789 + type: test + type: result_summary + schema: + $ref: '#/components/schemas/SyntheticsTestLatestResultsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test's latest results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/browser/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic browser test. + operationId: GetSyntheticsBrowserTestResult + parameters: + - description: The public ID of the Synthetic browser test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + - description: The event ID used to look up the result in the event store. + in: query + name: event_id + required: false + schema: + type: string + - description: Timestamp in seconds to look up the result. + in: query + name: timestamp + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + device: + id: chrome.laptop_large + name: Chrome - Laptop Large + type: browser + location: + id: aws:eu-west-1 + name: Ireland (AWS) + result: + duration: 5200 + finished_at: 1679328005200 + id: '7291038456723891045' + started_at: 1679328000000 + status: passed + test_type: browser + test_version: 2 + id: '7291038456723891045' + relationships: + test: + data: + id: xyz-abc-789 + type: test + type: result + schema: + $ref: '#/components/schemas/SyntheticsTestResultResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/bulk-delete: + post: + operationId: DeleteSyntheticsTests + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + public_ids: + - abc-def-123 + - xyz-uvw-456 + type: delete_tests_request + schema: + $ref: '#/components/schemas/DeletedTestsRequestDeleteRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: abc-def-123 + type: delete_tests + schema: + $ref: '#/components/schemas/DeletedTestsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Bulk delete tests + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v2/synthetics/tests/fast/{id}: + get: + operationId: GetSyntheticsFastTestResult + parameters: + - description: The UUID of the fast test to retrieve the result for. + in: path + name: id + required: true + schema: + example: abc12345-1234-1234-1234-abc123456789 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + location: + id: aws:us-east-1 + name: N. Virginia (AWS) + result: + duration: 150.5 + finished_at: 1679328001000 + id: abc12345-1234-1234-1234-abc123456789 + resolved_ip: 1.2.3.4 + run_type: fast + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 1 + id: abc12345-1234-1234-1234-abc123456789 + type: result + schema: + $ref: '#/components/schemas/SyntheticsFastTestResult' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a fast test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/network: + post: + operationId: CreateSyntheticsNetworkTest + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + assertions: + - operator: lessThan + property: avg + target: 500 + type: latency + request: + e2e_queries: 50 + host: '' + max_ttl: 30 + port: 443 + tcp_method: prefer_sack + traceroute_queries: 3 + locations: + - aws:us-east-1 + - agent:my-agent-name + message: Network Path test notification + monitor_id: 12345678 + name: Example Network Path test + options: + monitor_options: + notification_preset_name: show_all + scheduling: + timeframes: + - day: 1 + from: '07:00' + to: '16:00' + - day: 3 + from: '07:00' + to: '16:00' + timezone: America/New_York + public_id: abc-def-123 + status: live + subtype: tcp + tags: + - env:production + type: network + type: network + schema: + $ref: '#/components/schemas/SyntheticsNetworkTestEditRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: {} + locations: + - aws:us-east-1 + message: Network Path test notification + name: Example Network Path test + options: {} + status: live + type: network + id: abc-def-123 + type: network_test + schema: + $ref: '#/components/schemas/SyntheticsNetworkTestResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a Network Path test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/network/{public_id}: + get: + operationId: GetSyntheticsNetworkTest + parameters: + - description: The public ID of the Network Path test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: {} + locations: + - aws:us-east-1 + message: Network Path test notification + name: Example Network Path test + options: {} + status: live + type: network + id: abc-def-123 + type: network_test + schema: + $ref: '#/components/schemas/SyntheticsNetworkTestResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a Network Path test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + operationId: UpdateSyntheticsNetworkTest + parameters: + - description: The public ID of the Network Path test to edit. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + assertions: + - operator: lessThan + property: avg + target: 500 + type: latency + request: + e2e_queries: 50 + host: '' + max_ttl: 30 + port: 443 + tcp_method: prefer_sack + traceroute_queries: 3 + locations: + - aws:us-east-1 + - agent:my-agent-name + message: Network Path test notification + monitor_id: 12345678 + name: Example Network Path test + options: + monitor_options: + notification_preset_name: show_all + scheduling: + timeframes: + - day: 1 + from: '07:00' + to: '16:00' + - day: 3 + from: '07:00' + to: '16:00' + timezone: America/New_York + public_id: abc-def-123 + status: live + subtype: tcp + tags: + - env:production + type: network + type: network + schema: + $ref: '#/components/schemas/SyntheticsNetworkTestEditRequest' + description: New Network Path test details to be saved. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: {} + locations: + - aws:us-east-1 + message: Network Path test notification + name: Example Network Path test + options: {} + status: live + type: network + id: abc-def-123 + type: network_test + schema: + $ref: '#/components/schemas/SyntheticsNetworkTestResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a Network Path test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/poll_results: + get: + description: |- + Poll for test results given a list of result IDs. This is typically used after + triggering tests with CI/CD to retrieve results once they are available. + operationId: PollSyntheticsTestResults + parameters: + - description: A JSON-encoded array of result IDs to poll for. + example: '["id1","id2","id3"]' + in: query + name: result_ids + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + location: + id: aws:us-east-1 + name: N. Virginia (AWS) + result: + duration: 150.5 + finished_at: 1679328001000 + id: '5158904793181869365' + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: '5158904793181869365' + relationships: + test: + data: + id: abc-def-123 + type: test + type: result + schema: + $ref: '#/components/schemas/SyntheticsPollTestResultsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Poll for test results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/files/download: + post: + description: |- + Get a presigned URL to download a file attached to a Synthetic test. + The returned URL is temporary and expires after a short period. + operationId: GetTestFileDownloadUrl + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + bucketKey: api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + schema: + $ref: '#/components/schemas/SyntheticsTestFileDownloadRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + presignedUrl: https://example.com/download + schema: + $ref: '#/components/schemas/SyntheticsTestFileDownloadResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a presigned URL for downloading a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/files/multipart-presigned-urls: + post: + description: |- + Get presigned URLs for uploading a file to a Synthetic test using multipart upload. + Returns the presigned URLs for each part along with the bucket key that references the file. + operationId: GetTestFileMultipartPresignedUrls + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + bucketKeyPrefix: api-upload-file + parts: + - md5: 1B2M2Y8AsgTpgAmY7PhCfg== + partNumber: 1 + schema: + $ref: '#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + bucketKey: api-upload-file/abc-def-123/file.json + presignedUrls: [] + schema: + $ref: '#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Get presigned URLs for uploading a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/{public_id}/files/multipart-upload-abort: + post: + description: |- + Abort an in-progress multipart file upload for a Synthetic test. This cancels the upload + and releases any storage used by already-uploaded parts. + operationId: AbortTestFileMultipartUpload + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + key: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + uploadId: upload-id-abc123 + schema: + $ref: '#/components/schemas/SyntheticsTestFileAbortMultipartUploadRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Abort a multipart upload of a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/{public_id}/files/multipart-upload-complete: + post: + description: |- + Complete a multipart file upload for a Synthetic test. Call this endpoint after all parts + have been uploaded using the presigned URLs obtained from the multipart presigned URLs endpoint. + operationId: CompleteTestFileMultipartUpload + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + example: abc-def-123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + key: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + parts: + - ETag: '"d41d8cd98f00b204e9800998ecf8427e"' + PartNumber: 1 + uploadId: upload-id-abc123 + schema: + $ref: '#/components/schemas/SyntheticsTestFileCompleteMultipartUploadRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Complete a multipart upload of a test file + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_write + - synthetics_create_edit_trigger + /api/v2/synthetics/tests/{public_id}/parent-suites: + get: + description: Get the list of parent suites and their status for a given Synthetic test. + operationId: GetTestParentSuites + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/SyntheticsTestParentSuitesResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get parent suites for a test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/results: + get: + description: Get the latest result summaries for a given Synthetic test. + operationId: ListSyntheticsTestLatestResults + parameters: + - description: The public ID of the Synthetic test for which to search results. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Filter results by status. + in: query + name: status + required: false + schema: + $ref: '#/components/schemas/SyntheticsTestResultStatus' + - description: Filter results by run type. + in: query + name: runType + required: false + schema: + $ref: '#/components/schemas/SyntheticsTestResultRunType' + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + - description: Device IDs for which to query results. + in: query + name: device_id + required: false + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + finished_at: 1679328001000 + location: + id: aws:us-east-1 + name: N. Virginia (AWS) + run_type: scheduled + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: '5158904793181869365' + relationships: + test: + data: + id: abc-def-123 + type: test + type: result_summary + schema: + $ref: '#/components/schemas/SyntheticsTestLatestResultsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test's latest results + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic test. + operationId: GetSyntheticsTestResult + parameters: + - description: The public ID of the Synthetic test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + - description: The event ID used to look up the result in the event store. + in: query + name: event_id + required: false + schema: + type: string + - description: Timestamp in seconds to look up the result. + in: query + name: timestamp + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + location: + id: aws:us-east-1 + name: N. Virginia (AWS) + result: + duration: 150.5 + finished_at: 1679328001000 + id: '5158904793181869365' + started_at: 1679328000000 + status: passed + test_sub_type: http + test_type: api + test_version: 3 + id: '5158904793181869365' + relationships: + test: + data: + id: abc-def-123 + type: test + type: result + schema: + $ref: '#/components/schemas/SyntheticsTestResultResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/version_history: + get: + description: Get the paginated version history for a Synthetic test. + operationId: ListSyntheticsTestVersions + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + type: string + - description: The version number of the last item from the previous page. Omit to get the first page. + in: query + name: last_version_number + required: false + schema: + format: int64 + type: integer + - description: Maximum number of version records to return per page. + in: query + name: limit + required: false + schema: + format: int64 + maximum: 50 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/SyntheticsTestVersionHistoryResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get version history of a test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/tests/{public_id}/version_history/{version_number}: + get: + description: Get a specific version of a Synthetic test by its version number. + operationId: GetSyntheticsTestVersion + parameters: + - description: The public ID of the Synthetic test. + in: path + name: public_id + required: true + schema: + type: string + - description: The version number to retrieve. + in: path + name: version_number + required: true + schema: + format: int64 + type: integer + - description: If `true`, include change metadata in the response. + in: query + name: include_change_metadata + required: false + schema: + type: boolean + - description: |- + If `true`, only check whether the version exists without returning its full payload. + Returns an empty object if the version exists, or 404 if not. + in: query + name: only_check_existence + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + public_id: abc-def-123 + version_number: 1 + schema: + $ref: '#/components/schemas/SyntheticsTestVersionResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a specific version of a test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v2/synthetics/variables/{variable_id}/jsonpatch: + patch: + description: |- + Patch a global variable using JSON Patch (RFC 6902). + This endpoint allows partial updates to a global variable by specifying only the fields to modify. + + Common operations include: + - Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}` + - Update nested values: `{"op": "replace", "path": "/value/value", "value": "new_value"}` + - Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}` + - Remove fields: `{"op": "remove", "path": "/description"}` + operationId: PatchGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + json_patch: + - op: add + path: /name + type: global_variables_json_patch + schema: + $ref: '#/components/schemas/GlobalVariableJsonPatchRequest' + description: JSON Patch document with operations to apply. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Example description + name: MY_VARIABLE + tags: + - team:front + value: + secure: false + value: example-value + id: abc-123 + type: global_variables + schema: + $ref: '#/components/schemas/GlobalVariableResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Patch a global variable + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_global_variable_write + /api/v1/check_run: + post: + description: |- + Submit a list of Service Checks. + + **Notes**: + - A valid API key is required. + - Service checks can be submitted up to 10 minutes in the past. + operationId: SubmitServiceCheck + requestBody: + content: + application/json: + examples: + default: + value: + - check: app.ok + host_name: app.host1 + message: app is running + status: 0 + tags: + - environment:test + schema: + $ref: '#/components/schemas/ServiceChecks' + description: Service Check request body. + required: true + responses: + '202': + content: + text/json: + examples: + default: + value: + status: ok + schema: + $ref: '#/components/schemas/IntakePayloadAcceptedV1' + description: Payload accepted + '400': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '408': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Request timeout + '413': + content: + text/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Payload too large + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Submit a Service Check + tags: + - Service Checks + x-codegen-request-body-name: body + /api/v1/monitor: + get: + description: Get all monitors from your organization. + operationId: ListMonitors + parameters: + - description: |- + When specified, shows additional information about the group states. + Choose one or more from `all`, `alert`, `warn`, and `no data`. + in: query + name: group_states + required: false + schema: + example: alert + type: string + - description: A string to filter monitors by name. + in: query + name: name + required: false + schema: + type: string + - description: |- + A comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope. + For example, `host:host0`. + in: query + name: tags + required: false + schema: + example: host:host0 + type: string + - description: |- + A comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors. + Tags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`. + in: query + name: monitor_tags + required: false + schema: + example: service:my-app + type: string + - description: If this argument is set to true, then the returned data includes all current active downtimes for each monitor. + in: query + name: with_downtimes + required: false + schema: + type: boolean + - description: Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty. + in: query + name: id_offset + required: false + schema: + format: int64 + type: integer + - description: The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination. + in: query + name: page + required: false + schema: + example: 0 + format: int64 + type: integer + - description: The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100. + in: query + name: page_size + required: false + schema: + default: 100 + example: 20 + format: int32 + maximum: 1000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + - id: 123 + message: You may need to add web hosts if this is consistently high. + name: My monitor + options: + no_data_timeframe: 20 + notify_no_data: true + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + - frontend + type: query alert + schema: + type: array + items: + $ref: '#/components/schemas/Monitor' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all monitors + tags: + - Monitors + x-pagination: + limitParam: page_size + pageParam: page + x-permission: + operator: OR + permissions: + - monitors_read + post: + description: |- + Create a monitor using the specified options. + + #### Monitor Types + + The type of monitor chosen from: + + - anomaly: `query alert` + - APM: `query alert` or `trace-analytics alert` + - composite: `composite` + - custom: `service check` + - forecast: `query alert` + - host: `service check` + - integration: `query alert` or `service check` + - live process: `process alert` + - logs: `log alert` + - metric: `query alert` + - network: `service check` + - outlier: `query alert` + - process: `service check` + - rum: `rum alert` + - SLO: `slo alert` + - watchdog: `event-v2 alert` + - event-v2: `event-v2 alert` + - audit: `audit alert` + - error-tracking: `error-tracking alert` + - database-monitoring: `database-monitoring alert` + - network-performance: `network-performance alert` + - cloud cost: `cost alert` + - network-path: `network-path alert` + + **Notes**: + - Synthetic monitors are created through the Synthetics API. See the [Synthetics API](https://docs.datadoghq.com/api/latest/synthetics/) documentation for more information. + - Log monitors require an unscoped App Key. + + #### Query Types + + ##### Metric Alert Query + + Example: `time_aggr(time_window):space_aggr:metric{tags} [by {key}] operator #` + + - `time_aggr`: avg, sum, max, min, change, or pct_change + - `time_window`: `last_#m` (with `#` between 1 and 10080 depending on the monitor type) or `last_#h`(with `#` between 1 and 168 depending on the monitor type) or `last_1d`, or `last_1w` + - `space_aggr`: avg, sum, min, or max + - `tags`: one or more tags (comma-separated), or * + - `key`: a 'key' in key:value tag syntax; defines a separate alert for each tag in the group (multi-alert) + - `operator`: <, <=, >, >=, ==, or != + - `#`: an integer or decimal number used to set the threshold + + To use a dynamic threshold on a metric monitor with a formula query, replace `#` with the `threshold` keyword + (for example, `... > threshold`) and provide the threshold as a query via `critical_query` on `options.thresholds`. + This feature is in preview. + + If you are using the `_change_` or `_pct_change_` time aggregator, instead use `change_aggr(time_aggr(time_window), + timeshift):space_aggr:metric{tags} [by {key}] operator #` with: + + - `change_aggr` change, pct_change + - `time_aggr` avg, sum, max, min [Learn more](https://docs.datadoghq.com/monitors/create/types/#define-the-conditions) + - `time_window` last\_#m (between 1 and 2880 depending on the monitor type), last\_#h (between 1 and 48 depending on the monitor type), or last_#d (1 or 2) + - `timeshift` #m_ago (5, 10, 15, or 30), #h_ago (1, 2, or 4), or 1d_ago + + Use this to create an outlier monitor using the following query: + `avg(last_30m):outliers(avg:system.cpu.user{role:es-events-data} by {host}, 'dbscan', 7) > 0` + + ##### Service Check Query + + Example: `"check".over(tags).last(count).by(group).count_by_status()` + + - `check` name of the check, for example `datadog.agent.up` + - `tags` one or more quoted tags (comma-separated), or "*". for example: `.over("env:prod", "role:db")`; `over` cannot be blank. + - `count` must be at greater than or equal to your max threshold (defined in the `options`). It is limited to 100. + For example, if you've specified to notify on 1 critical, 3 ok, and 2 warn statuses, `count` should be at least 3. + - `group` must be specified for check monitors. Per-check grouping is already explicitly known for some service checks. + For example, Postgres integration monitors are tagged by `db`, `host`, and `port`, and Network monitors by `host`, `instance`, and `url`. See [Service Checks](https://docs.datadoghq.com/api/latest/service-checks/) documentation for more information. + + ##### Event Alert Query + + **Note:** The Event Alert Query has been replaced by the Event V2 Alert Query. For more information, see the [Event Migration guide](https://docs.datadoghq.com/service_management/events/guides/migrating_to_new_events_features/). + + ##### Event V2 Alert Query + + Example: `events(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### Process Alert Query + + Example: `processes(search).over(tags).rollup('count').last(timeframe) operator #` + + - `search` free text search string for querying processes. + Matching processes match results on the [Live Processes](https://docs.datadoghq.com/infrastructure/process/?tab=linuxwindows) page. + - `tags` one or more tags (comma-separated) + - `timeframe` the timeframe to roll up the counts. Examples: 10m, 4h. Supported timeframes: s, m, h and d + - `operator` <, <=, >, >=, ==, or != + - `#` an integer or decimal number used to set the threshold + + ##### Logs Alert Query + + Example: `logs(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `index_name` For multi-index organizations, the log index in which the request is performed. + - `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### Composite Query + + Example: `12345 && 67890`, where `12345` and `67890` are the IDs of non-composite monitors + + * `name` [*required*, *default* = **dynamic, based on query**]: The name of the alert. + * `message` [*required*, *default* = **dynamic, based on query**]: A message to include with notifications for this monitor. + Email notifications can be sent to specific users by using the same '@username' notation as events. + * `tags` [*optional*, *default* = **empty list**]: A list of tags to associate with your monitor. + When getting all monitor details via the API, use the `monitor_tags` argument to filter results by these tags. + It is only available via the API and isn't visible or editable in the Datadog UI. + + ##### SLO Alert Query + + Example: `error_budget("slo_id").over("time_window") operator #` + + - `slo_id`: The alphanumeric SLO ID of the SLO you are configuring the alert for. + - `time_window`: The time window of the SLO target you wish to alert on. Valid options: `7d`, `30d`, `90d`. + - `operator`: `>=` or `>` + + ##### Audit Alert Query + + Example: `audits(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### CI Pipelines Alert Query + + Example: `ci-pipelines(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### CI Tests Alert Query + + Example: `ci-tests(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + ##### Error Tracking Alert Query + + "New issue" example: `error-tracking(query).source(issue_source).new().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #` + "High impact issue" example: `error-tracking(query).source(issue_source).impact().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `issue_source` The issue source - supports `all`, `browser`, `mobile` and `backend` and defaults to `all` if omitted. + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality` and defaults to `count` if omitted. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `group by` Comma-separated list of attributes to group by - should contain at least `issue.id`. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + **Database Monitoring Alert Query** + + Example: `database-monitoring(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + **Network Performance Alert Query** + + Example: `network-performance(query).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + + **Cost Alert Query** + + Example: `formula(query).timeframe_type(time_window).function(parameter) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `timeframe_type` The timeframe type to evaluate the cost + - for `forecast` supports `current` + - for `change`, `anomaly`, `threshold` supports `last` + - `time_window` - supports daily roll-up e.g. `7d` + - `function` - [optional, defaults to `threshold` monitor if omitted] supports `change`, `anomaly`, `forecast` + - `parameter` Specify the parameter of the type + - for `change`: + - supports `relative`, `absolute` + - [optional] supports `#`, where `#` is an integer or decimal number used to set the threshold + - for `anomaly`: + - supports `direction=both`, `direction=above`, `direction=below` + - [optional] supports `threshold=#`, where `#` is an integer or decimal number used to set the threshold + - `operator` + - for `threshold` supports `<`, `<=`, `>`, `>=`, `==`, or `!=` + - for `change` supports `>`, `<` + - for `anomaly` supports `>=` + - for `forecast` supports `>` + - `#` an integer or decimal number used to set the threshold. + + **Network Path Alert Query** + + Example: `network-path(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #` + + - `query` The search query - following the [Log search syntax](https://docs.datadoghq.com/logs/search_syntax/). + - `index_name` The data type to monitor on - supports `netpath-path` and `netpath-hop`. + - `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`. + - `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use. + - `time_window` #m (between 1 and 2880), #h (between 1 and 48). + - `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`. + - `#` an integer or decimal number used to set the threshold. + operationId: CreateMonitor + requestBody: + content: + application/json: + examples: + default: + value: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + options: + no_data_timeframe: 20 + notify_no_data: true + priority: 3 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + - frontend + type: query alert + schema: + $ref: '#/components/schemas/Monitor' + description: Create a monitor request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + id: 123 + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + options: + no_data_timeframe: 20 + notify_no_data: true + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + - frontend + type: query alert + schema: + $ref: '#/components/schemas/Monitor' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_write + summary: Create a monitor + tags: + - Monitors + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_write + /api/v1/monitor/can_delete: + get: + description: Check if the given monitors can be deleted. + operationId: CheckCanDeleteMonitor + parameters: + - description: The IDs of the monitor to check. + explode: false + in: query + name: monitor_ids + required: true + schema: + items: + example: 666486743 + format: int64 + type: integer + type: array + style: form + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + ok: + - 123 + errors: null + schema: + $ref: '#/components/schemas/CheckCanDeleteMonitorResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/CheckCanDeleteMonitorResponse' + description: Deletion conflict error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Check if a monitor can be deleted + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_read + /api/v1/monitor/groups/search: + get: + description: Search and filter your monitor groups details. + operationId: SearchMonitorGroups + parameters: + - description: |- + After entering a search query on the [Triggered Monitors page][1], use the query parameter value in the + URL of the page as a value for this parameter. For more information, see the [Manage Monitors documentation][2]. + + The query can contain any number of space-separated monitor attributes, for instance: `query="type:metric group_status:alert"`. + + [1]: https://app.datadoghq.com/monitors/triggered + [2]: /monitors/manage/#triggered-monitors + in: query + name: query + required: false + schema: + type: string + - description: Page to start paginating from. + in: query + name: page + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Number of monitors to return per page. + in: query + name: per_page + required: false + schema: + default: 30 + format: int64 + type: integer + - description: |- + String for sort order, composed of field and sort order separate by a comma, for example `name,asc`. Supported sort directions: `asc`, `desc`. Supported fields: + + * `name` + * `status` + * `tags` + in: query + name: sort + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + counts: + status: + - count: 1 + name: OK + type: + - count: 1 + name: metric + groups: + - group: '*' + group_tags: + - '*' + monitor_id: 123 + monitor_name: Example Monitor + status: OK + metadata: + page: 0 + page_count: 1 + per_page: 30 + total_count: 1 + schema: + $ref: '#/components/schemas/MonitorGroupSearchResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Monitors group search + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_read + /api/v1/monitor/search: + get: + description: Search and filter your monitors details. + operationId: SearchMonitors + parameters: + - description: |- + After entering a search query in your [Manage Monitor page][1] use the query parameter value in the + URL of the page as value for this parameter. Consult the dedicated [manage monitor documentation][2] + page to learn more. + + The query can contain any number of space-separated monitor attributes, for instance `query="type:metric status:alert"`. + + [1]: https://app.datadoghq.com/monitors/manage + [2]: /monitors/manage/#find-the-monitors + in: query + name: query + required: false + schema: + type: string + - description: Page to start paginating from. + in: query + name: page + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Number of monitors to return per page. + in: query + name: per_page + required: false + schema: + default: 30 + format: int64 + type: integer + - description: |- + String for sort order, composed of field and sort order separate by a comma, for example `name,asc`. Supported sort directions: `asc`, `desc`. Supported fields: + + * `name` + * `status` + * `tags` + in: query + name: sort + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + counts: + status: + - count: 1 + name: No Data + type: + - count: 1 + name: metric + metadata: + page: 0 + page_count: 1 + per_page: 30 + total_count: 1 + monitors: + - id: 123 + name: Example Monitor + org_id: 123 + status: No Data + type: query alert + schema: + $ref: '#/components/schemas/MonitorSearchResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Monitors search + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_read + /api/v1/monitor/validate: + post: + description: |- + Validate the monitor provided in the request. + + **Note**: Log monitors require an unscoped App Key and `logs_read_data` permission. + operationId: ValidateMonitor + requestBody: + content: + application/json: + examples: + default: + value: + message: You may need to add web hosts if this is consistently high. + name: My monitor + options: + no_data_timeframe: 20 + notify_no_data: true + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + - frontend + type: query alert + schema: + $ref: '#/components/schemas/Monitor' + description: Monitor request object + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid JSON + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Validate a monitor + tags: + - Monitors + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_read + /api/v1/monitor/{monitor_id}: + delete: + description: Delete the specified monitor + operationId: DeleteMonitor + parameters: + - description: The ID of the monitor. + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + - description: Delete the monitor even if it's referenced by other resources (for example SLO, composite monitor). + in: query + name: force + required: false + schema: + example: 'false' + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + deleted_monitor_id: 123 + schema: + $ref: '#/components/schemas/DeletedMonitor' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item not found error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_write + summary: Delete a monitor + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_write + get: + description: Get details about the specified monitor from your organization. + operationId: GetMonitor + parameters: + - description: The ID of the monitor + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + - description: When specified, shows additional information about the group states. Choose one or more from `all`, `alert`, `warn`, and `no data`. + in: query + name: group_states + required: false + schema: + type: string + - description: If this argument is set to true, then the returned data includes all current active downtimes for the monitor. + in: query + name: with_downtimes + required: false + schema: + type: boolean + - description: If this argument is set to `true`, the returned data includes all assets tied to this monitor. + in: query + name: with_assets + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + id: 123 + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + type: query alert + schema: + $ref: '#/components/schemas/Monitor' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Monitor Not Found error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a monitor's details + tags: + - Monitors + x-permission: + operator: OR + permissions: + - monitors_read + put: + description: Edit the specified monitor. + operationId: UpdateMonitor + parameters: + - description: The ID of the monitor. + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + message: Updated notification message for this monitor. + name: Updated monitor name + options: + no_data_timeframe: 20 + notify_no_data: true + priority: 3 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + - frontend + type: query alert + schema: + $ref: '#/components/schemas/MonitorUpdateRequest' + description: Edit a monitor request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + id: 123 + message: Updated notification message for this monitor. + name: Updated monitor name + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + type: query alert + schema: + $ref: '#/components/schemas/Monitor' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Monitor Not Found error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_write + summary: Edit a monitor + tags: + - Monitors + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_write + /api/v1/monitor/{monitor_id}/downtimes: + get: + deprecated: true + description: Get all active v1 downtimes for the specified monitor. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: ListMonitorDowntimesV1 + parameters: + - description: The id of the monitor + in: path + name: monitor_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + - active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduled maintenance + scope: + - env:staging + start: 1412792983 + schema: + type: array + items: + $ref: '#/components/schemas/Downtime' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Monitor Not Found error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get active downtimes for a monitor + tags: + - Downtimes + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_read + /api/v1/monitor/{monitor_id}/validate: + post: + description: |- + Validate the monitor provided in the request. + + **Note**: Log monitors require an unscoped App Key and `logs_read_data` permission. + operationId: ValidateExistingMonitor + parameters: + - description: The ID of the monitor + in: path + name: monitor_id + required: true + schema: + example: 666486743 + format: int64 + type: integer + requestBody: + content: + application/json: + examples: + default: + value: + message: You may need to add web hosts if this is consistently high. + name: My monitor + options: + no_data_timeframe: 20 + notify_no_data: true + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + tags: + - app:webserver + - frontend + type: query alert + schema: + $ref: '#/components/schemas/Monitor' + description: Monitor request object + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: {} + schema: + example: {} + type: string + description: (opaque JSON object) + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid JSON + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Validate an existing monitor + tags: + - Monitors + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_read + /api/v1/synthetics/ci/batch/{batch_id}: + get: + description: Get a batch's updated details. + operationId: GetSyntheticsCIBatch + parameters: + - description: The ID of the batch. + in: path + name: batch_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + results: + - location: aws:eu-west-3 + result_id: abc-123 + status: passed + test_name: Example API test + test_public_id: abc-def-123 + test_type: api + status: passed + schema: + $ref: '#/components/schemas/SyntheticsBatchDetails' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Batch does not exist. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get details of batch + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/locations: + get: + description: |- + Get the list of public and private locations available for Synthetic + tests. No arguments required. + operationId: ListLocations + responses: + '200': + content: + application/json: + examples: + default: + value: + locations: + - id: aws:eu-west-3 + name: Paris (AWS) + schema: + $ref: '#/components/schemas/SyntheticsLocations' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_read + summary: Get all locations (public and private) + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_private_location_read + /api/v1/synthetics/private-locations: + post: + description: Create a new Synthetic private location. + operationId: CreatePrivateLocation + requestBody: + content: + application/json: + examples: + default: + value: + description: Description of private location + name: New private location + tags: + - team:front + schema: + $ref: '#/components/schemas/SyntheticsPrivateLocation' + description: Details of the private location to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + private_location: + description: Description of private location + id: pl:new-private-location-abc-123 + name: New private location + tags: + - team:front + schema: + $ref: '#/components/schemas/SyntheticsPrivateLocationCreationResponse' + description: OK + '402': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Quota reached for private locations + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Private locations are not activated for the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_write + summary: Create a private location + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_private_location_write + /api/v1/synthetics/private-locations/{location_id}: + delete: + description: Delete a Synthetic private location. + operationId: DeletePrivateLocation + parameters: + - description: The ID of the private location. + in: path + name: location_id + required: true + schema: + type: string + responses: + '204': + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Private locations are not activated for the user + - Private location does not exist + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_write + summary: Delete a private location + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_private_location_write + get: + description: Get a Synthetic private location. + operationId: GetPrivateLocation + parameters: + - description: The ID of the private location. + in: path + name: location_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + description: Description of private location + id: pl:new-private-location-abc-123 + name: New private location + tags: + - team:front + schema: + $ref: '#/components/schemas/SyntheticsPrivateLocation' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic private locations are not activated for the user + - Private location does not exist + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_read + summary: Get a private location + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_private_location_read + put: + description: Edit a Synthetic private location. + operationId: UpdatePrivateLocation + parameters: + - description: The ID of the private location. + in: path + name: location_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: Description of private location + name: New private location + tags: + - team:front + schema: + $ref: '#/components/schemas/SyntheticsPrivateLocation' + description: Details of the private location to be updated. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + description: Description of private location + id: pl:new-private-location-abc-123 + name: New private location + tags: + - team:front + schema: + $ref: '#/components/schemas/SyntheticsPrivateLocation' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Private locations are not activated for the user + - Private location does not exist + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_private_location_write + summary: Edit a private location + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_private_location_write + /api/v1/synthetics/settings/default_locations: + get: + description: Get the default locations settings. + operationId: GetSyntheticsDefaultLocations + responses: + '200': + content: + application/json: + examples: + default: + value: + - aws:eu-west-3 + - aws:us-east-1 + schema: + type: array + items: + type: object + properties: + synthetics_default_location: + type: string + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the default locations + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_default_settings_read + /api/v1/synthetics/tests: + get: + description: Get the list of all Synthetic tests. + operationId: ListTests + parameters: + - description: Used for pagination. The number of tests returned in the page. + in: query + name: page_size + required: false + schema: + default: 100 + format: int64 + type: integer + - description: Used for pagination. Which page you want to retrieve. Starts at zero. + in: query + name: page_number + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + tests: + - locations: + - aws:eu-west-3 + name: Example API test + public_id: abc-def-123 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsListTestsResponse' + description: OK - Returns the list of all Synthetic tests. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Synthetic Monitoring is not activated for the user. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get the list of all Synthetic tests + tags: + - Synthetics + x-pagination: + limitParam: page_size + pageParam: page_number + resultsPath: tests + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/api: + post: + description: Create a Synthetic API test. + operationId: CreateSyntheticsAPITest + requestBody: + content: + application/json: + examples: + 1-simple-api-test: + description: Example of an API test. + summary: Create an API test. + value: + config: + assertions: + - operator: lessThan + target: 1000 + type: responseTime + - operator: is + target: 200 + type: statusCode + - operator: is + property: content-type + target: text/html; charset=UTF-8 + type: header + request: + method: GET + url: https://example.com + locations: + - azure:eastus + - aws:eu-west-3 + message: MY_NOTIFICATION_MESSAGE + name: MY_TEST_NAME + options: + min_failure_duration: 0 + min_location_failed: 1 + monitor_options: + renotify_interval: 0 + tick_every: 60 + status: live + subtype: http + tags: + - env:production + type: api + 2-multistep-api-test: + description: |- + Example of a multistep API test running on a fake furniture store. + It creates a card, select a product and then add the product to the card. + summary: Create a Multistep API test + value: + config: + steps: + - assertions: + - operator: lessThan + target: 30000 + type: responseTime + extractedValues: + - field: location + name: CART_ID + parser: + type: regex + value: (?:[^\\/](?!(\\|/)))+$ + type: http_header + name: Get a cart + request: + method: POST + timeout: 30 + url: https://api.shopist.io/carts + subtype: http + - assertions: + - operator: is + target: 200 + type: statusCode + extractedValues: + - name: PRODUCT_ID + parser: + type: json_path + value: $[0].id['$oid'] + type: http_body + name: Get a product + request: + method: GET + timeout: 30 + url: https://api.shopist.io/products.json + subtype: http + - assertions: + - operator: is + target: 201 + type: statusCode + name: Add product to cart + request: + body: |- + { + "cart_item": { + "product_id": "{{ PRODUCT_ID }}", + "amount_paid": 500, + "quantity": 1 + }, + "cart_id": "{{ CART_ID }}" + } + headers: + content-type: application/json + method: POST + timeout: 30 + url: https://api.shopist.io/add_item.json + subtype: http + locations: + - aws:us-west-2 + message: MY_NOTIFICATION_MESSAGE + name: MY_TEST_NAME + options: + ci: + executionRule: blocking + min_failure_duration: 5400 + min_location_failed: 1 + monitor_options: + renotify_interval: 0 + retry: + count: 3 + interval: 300 + tick_every: 900 + status: live + subtype: multi + tags: + - env:prod + type: api + default: + value: + config: + assertions: + - operator: is + target: 200 + type: statusCode + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: Notification message + name: Example API test + options: + min_failure_duration: 0 + min_location_failed: 1 + tick_every: 60 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsAPITest' + description: Details of the test to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + assertions: + - operator: is + target: 200 + type: statusCode + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: Notification message + monitor_id: 12345678 + name: Example API test + options: + min_failure_duration: 0 + min_location_failed: 1 + tick_every: 60 + public_id: abc-123-def + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsAPITest' + description: OK - Returns the created test details. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Creation failed + '402': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Test quota is reached + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create an API test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/api/{public_id}: + get: + description: |- + Get the detailed configuration associated with + a Synthetic API test. + operationId: GetAPITest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: Notification message + name: Example API test + options: + tick_every: 60 + public_id: abc-def-123 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsAPITest' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get an API test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + description: Edit the configuration of a Synthetic API test. + operationId: UpdateAPITest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + config: + assertions: + - operator: is + target: 200 + type: statusCode + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: Notification message + name: Example API test + options: + min_failure_duration: 0 + min_location_failed: 1 + tick_every: 60 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsAPITest' + description: New test details to be saved. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: Notification message + name: Example API test + options: + tick_every: 60 + public_id: abc-def-123 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsAPITest' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit an API test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/browser: + post: + description: Create a Synthetic browser test. + operationId: CreateSyntheticsBrowserTest + requestBody: + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: '' + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + status: live + steps: + - name: Check current URL + params: + check: contains + value: example + type: assertCurrentUrl + tags: + - env:production + type: browser + schema: + $ref: '#/components/schemas/SyntheticsBrowserTest' + description: Details of the test to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: '' + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + public_id: abc-def-123 + status: live + tags: + - env:production + type: browser + schema: + $ref: '#/components/schemas/SyntheticsBrowserTest' + description: OK - Returns the created test details. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Creation failed + '402': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Test quota is reached + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a browser test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/browser/{public_id}: + get: + description: |- + Get the detailed configuration (including steps) associated with + a Synthetic browser test. + operationId: GetBrowserTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: '' + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + public_id: abc-def-123 + status: live + tags: + - env:production + type: browser + schema: + $ref: '#/components/schemas/SyntheticsBrowserTest' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + description: Edit the configuration of a Synthetic browser test. + operationId: UpdateBrowserTest + parameters: + - description: The public ID of the test to edit. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: '' + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + status: live + steps: + - name: Check current URL + params: + check: contains + value: example + type: assertCurrentUrl + tags: + - env:production + type: browser + schema: + $ref: '#/components/schemas/SyntheticsBrowserTest' + description: New test details to be saved. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + assertions: [] + request: + method: GET + url: https://example.com + locations: + - aws:eu-west-3 + message: '' + name: Example browser test + options: + device_ids: + - chrome.laptop_large + tick_every: 3600 + public_id: abc-def-123 + status: live + tags: + - env:production + type: browser + schema: + $ref: '#/components/schemas/SyntheticsBrowserTest' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a browser test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/browser/{public_id}/results: + get: + description: Get the last 150 test results summaries for a given Synthetic browser test. + operationId: GetBrowserTestLatestResults + parameters: + - description: |- + The public ID of the browser test for which to search results + for. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + last_timestamp_fetched: 1706745600000 + results: + - check_time: 1706745600000 + probe_dc: aws:eu-west-3 + result_id: abc-123 + status: 0 + schema: + $ref: '#/components/schemas/SyntheticsGetBrowserTestLatestResultsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test's latest results summaries + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/browser/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic browser test. + operationId: GetBrowserTestResult + parameters: + - description: |- + The public ID of the browser test to which the target result + belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + check_time: 1706745600000 + probe_dc: aws:eu-west-3 + result_id: abc-123 + status: 0 + schema: + $ref: '#/components/schemas/SyntheticsBrowserTestResultFull' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test or result is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a browser test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/delete: + post: + description: Delete multiple Synthetic tests by ID. + operationId: DeleteTests + requestBody: + content: + application/json: + examples: + default: + value: + public_ids: + - abc-def-123 + schema: + $ref: '#/components/schemas/SyntheticsDeleteTestsPayload' + description: Public ID list of the Synthetic tests to be deleted. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + deleted_tests: + - deleted_at: '2024-01-01T00:00:00+00:00' + public_id: abc-def-123 + schema: + $ref: '#/components/schemas/SyntheticsDeleteTestsResponse' + description: OK. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Test cannot be deleted as it's used elsewhere (as a sub-test or in an uptime widget) + - Some IDs are not owned by the user + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Tests to be deleted can't be found + - Synthetic is not activated for the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Delete tests + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/mobile: + post: + description: Create a Synthetic mobile test. + operationId: CreateSyntheticsMobileTest + requestBody: + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - synthetics:mobile:device:apple_iphone_14_ios_16 + min_failure_duration: 0 + mobileApplication: + applicationId: abc-123 + referenceId: abc-456 + referenceType: latest + tick_every: 3600 + tags: + - env:production + type: mobile + schema: + $ref: '#/components/schemas/SyntheticsMobileTest' + description: Details of the test to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - synthetics:mobile:device:apple_iphone_14_ios_16 + mobileApplication: + applicationId: abc-123 + referenceId: abc-456 + referenceType: latest + tick_every: 3600 + public_id: abc-def-123 + status: live + tags: + - env:production + type: mobile + schema: + $ref: '#/components/schemas/SyntheticsMobileTest' + description: OK - Returns the created test details. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Creation failed + '402': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Test quota is reached + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Create a mobile test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/mobile/{public_id}: + get: + description: |- + Get the detailed configuration associated with + a Synthetic mobile test. + operationId: GetMobileTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - synthetics:mobile:device:apple_iphone_14_ios_16 + mobileApplication: + applicationId: abc-123 + referenceId: abc-456 + referenceType: latest + tick_every: 3600 + public_id: abc-def-123 + status: live + tags: + - env:production + type: mobile + schema: + $ref: '#/components/schemas/SyntheticsMobileTest' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a mobile test + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + put: + description: Edit the configuration of a Synthetic mobile test. + operationId: UpdateMobileTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - synthetics:mobile:device:apple_iphone_14_ios_16 + min_failure_duration: 0 + mobileApplication: + applicationId: abc-123 + referenceId: abc-456 + referenceType: latest + tick_every: 3600 + tags: + - env:production + type: mobile + schema: + $ref: '#/components/schemas/SyntheticsMobileTest' + description: New test details to be saved. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + config: + variables: [] + message: Notification message + name: Example mobile test + options: + device_ids: + - synthetics:mobile:device:apple_iphone_14_ios_16 + mobileApplication: + applicationId: abc-123 + referenceId: abc-456 + referenceType: latest + tick_every: 3600 + public_id: abc-def-123 + status: live + tags: + - env:production + type: mobile + schema: + $ref: '#/components/schemas/SyntheticsMobileTest' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Edit a mobile test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/search: + get: + description: Search for Synthetic tests. + operationId: SearchTests + parameters: + - description: The search query. + in: query + name: text + required: false + schema: + type: string + - description: If true, include the full configuration for each test in the response. + in: query + name: include_full_config + required: false + schema: + type: boolean + - description: If true, return only facets instead of full test details. + in: query + name: facets_only + required: false + schema: + type: boolean + - description: The offset from which to start returning results. + in: query + name: start + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of results to return. + in: query + name: count + required: false + schema: + default: 50 + format: int64 + type: integer + - description: The sort order for the results (e.g., `name,asc` or `name,desc`). + in: query + name: sort + required: false + schema: + default: name,asc + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + tests: + - locations: + - aws:eu-west-3 + message: Test notification + name: Example Test + public_id: abc-def-123 + status: live + tags: + - env:prod + type: api + schema: + $ref: '#/components/schemas/SyntheticsListTestsResponse' + description: OK - Returns the list of Synthetic tests matching the search. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Search Synthetic tests + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/trigger: + post: + description: Trigger a set of Synthetic tests. + operationId: TriggerTests + requestBody: + content: + application/json: + examples: + default: + value: + tests: + - public_id: aaa-aaa-aaa + schema: + $ref: '#/components/schemas/SyntheticsTriggerBody' + description: The identifiers of the tests to trigger. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + batch_id: abc-123 + results: + - location: 1 + public_id: abc-def-123 + result_id: abc-123 + triggered_check_ids: + - abc-def-123 + schema: + $ref: '#/components/schemas/SyntheticsTriggerCITestsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Trigger Synthetic tests + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/trigger/ci: + post: + description: Trigger a set of Synthetic tests for continuous integration. + operationId: TriggerCITests + requestBody: + content: + application/json: + examples: + default: + value: + tests: + - public_id: aaa-aaa-aaa + schema: + $ref: '#/components/schemas/SyntheticsCITestBody' + description: Details of the test to trigger. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + batch_id: abc-123 + results: + - location: 1 + public_id: abc-def-123 + result_id: abc-123 + triggered_check_ids: + - abc-def-123 + schema: + $ref: '#/components/schemas/SyntheticsTriggerCITestsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: JSON format is wrong + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Trigger tests from CI/CD pipelines + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/uptimes: + post: + description: Fetch uptime for multiple Synthetic tests by ID. + operationId: FetchUptimes + requestBody: + content: + application/json: + examples: + default: + value: + from_ts: 1726041488 + public_ids: + - abc-def-123 + to_ts: 1726127888 + schema: + $ref: '#/components/schemas/SyntheticsFetchUptimesPayload' + description: Public ID list of the Synthetic tests and timeframe. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + - from_ts: 1726041488 + overall: + group: name + history: + - - 1726041488 + - 0 + span_precision: 2 + uptime: 99.99 + public_id: abc-def-123 + to_ts: 1726127888 + schema: + type: array + items: + $ref: '#/components/schemas/SyntheticsTestUptime' + description: OK. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: '- JSON format is wrong' + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Fetch uptime for multiple tests + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/{public_id}: + get: + description: Get the detailed configuration associated with a Synthetic test. + operationId: GetTest + parameters: + - description: The public ID of the test to get details from. + in: path + name: public_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + locations: + - aws:eu-west-3 + message: Notification message + name: Example test + public_id: abc-def-123 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsTestDetailsWithoutSteps' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get a test configuration + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + patch: + description: Patch the configuration of a Synthetic test with partial data. + operationId: PatchTest + parameters: + - description: The public ID of the test to patch. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + - op: replace + path: /name + value: New test name + - op: remove + path: /config/assertions/0 + schema: + $ref: '#/components/schemas/SyntheticsPatchTestBody' + description: '[JSON Patch](https://jsonpatch.com/) compliant list of operations' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + locations: + - aws:eu-west-3 + message: Notification message + name: New test name + public_id: abc-def-123 + status: live + subtype: http + tags: + - env:production + type: api + schema: + $ref: '#/components/schemas/SyntheticsTestDetails' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - JSON format is wrong + - Updating sub-type is forbidden + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + - Test can't be found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Patch a Synthetic test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/tests/{public_id}/results: + get: + description: Get the last 150 test results summaries for a given Synthetic API test. + operationId: GetAPITestLatestResults + parameters: + - description: The public ID of the test for which to search results for. + in: path + name: public_id + required: true + schema: + type: string + - description: Timestamp in milliseconds from which to start querying results. + in: query + name: from_ts + required: false + schema: + format: int64 + type: integer + - description: Timestamp in milliseconds up to which to query results. + in: query + name: to_ts + required: false + schema: + format: int64 + type: integer + - description: Locations for which to query results. + in: query + name: probe_dc + required: false + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + last_timestamp_fetched: 1706745600000 + results: + - check_time: 1706745600000 + probe_dc: aws:eu-west-3 + result: + passed: true + result_id: abc-123 + status: 0 + schema: + $ref: '#/components/schemas/SyntheticsGetAPITestLatestResultsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get an API test's latest results summaries + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/{public_id}/results/{result_id}: + get: + description: Get a specific full result from a given Synthetic API test. + operationId: GetAPITestResult + parameters: + - description: The public ID of the API test to which the target result belongs. + in: path + name: public_id + required: true + schema: + type: string + - description: The ID of the result to get. + in: path + name: result_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + check_time: 1706745600000 + probe_dc: aws:eu-west-3 + result_id: abc-123 + status: 0 + schema: + $ref: '#/components/schemas/SyntheticsAPITestResultFull' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test or result is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_read + summary: Get an API test result + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_read + /api/v1/synthetics/tests/{public_id}/status: + put: + description: Pause or start a Synthetic test by changing the status. + operationId: UpdateTestPauseStatus + parameters: + - description: The public ID of the Synthetic test to update. + in: path + name: public_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + new_status: live + schema: + $ref: '#/components/schemas/SyntheticsUpdateTestPauseStatusPayload' + description: Status to set the given Synthetic test to. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: true + schema: + type: boolean + description: OK - Returns a boolean indicating if the update was successful. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: JSON format is wrong. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: |- + - Synthetic Monitoring is not activated for the user + - Test is not owned by the user + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_write + summary: Pause or start a test + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_write + /api/v1/synthetics/variables: + get: + description: Get the list of all Synthetic global variables. + operationId: ListGlobalVariables + responses: + '200': + content: + application/json: + examples: + default: + value: + variables: + - description: Example description + id: abc-123 + name: MY_VARIABLE + tags: + - team:front + value: + secure: false + value: example-value + schema: + $ref: '#/components/schemas/SyntheticsListGlobalVariablesResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_read + - AuthZ: + - apm_api_catalog_read + summary: Get all global variables + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_global_variable_read + - apm_api_catalog_read + post: + description: Create a Synthetic global variable. + operationId: CreateGlobalVariable + requestBody: + content: + application/json: + examples: + default: + value: + description: Example description + name: MY_VARIABLE + tags: + - team:front + - test:workflow-1 + value: + secure: false + value: variable-value + schema: + $ref: '#/components/schemas/SyntheticsGlobalVariableRequest' + description: Details of the global variable to create. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + description: Example description + id: abc-123 + name: MY_VARIABLE + tags: + - team:front + - test:workflow-1 + value: + secure: false + value: variable-value + schema: + $ref: '#/components/schemas/SyntheticsGlobalVariable' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_write + summary: Create a global variable + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_global_variable_write + /api/v1/synthetics/variables/{variable_id}: + delete: + description: Delete a Synthetic global variable. + operationId: DeleteGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: JSON format is wrong + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_write + summary: Delete a global variable + tags: + - Synthetics + x-permission: + operator: OR + permissions: + - synthetics_global_variable_write + get: + description: Get the detailed configuration of a global variable. + operationId: GetGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + description: Example description + id: abc-123 + name: MY_VARIABLE + tags: + - team:front + value: + secure: false + value: variable-value + schema: + $ref: '#/components/schemas/SyntheticsGlobalVariable' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_read + summary: Get a global variable + tags: + - Synthetics + put: + description: Edit a Synthetic global variable. + operationId: EditGlobalVariable + parameters: + - description: The ID of the global variable. + in: path + name: variable_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: Example description + name: MY_VARIABLE + tags: + - team:front + - test:workflow-1 + value: + secure: false + value: variable-value + schema: + $ref: '#/components/schemas/SyntheticsGlobalVariableRequest' + description: Details of the global variable to update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + description: Example description + id: abc-123 + name: MY_VARIABLE + tags: + - team:front + - test:workflow-1 + value: + secure: false + value: variable-value + schema: + $ref: '#/components/schemas/SyntheticsGlobalVariable' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Invalid request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - synthetics_global_variable_write + summary: Edit a global variable + tags: + - Synthetics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - synthetics_global_variable_write +components: + schemas: + GetDataObservabilityMonitorRunStatusResponse: + description: The response for getting the status of a data observability monitor run. + properties: + data: + $ref: '#/components/schemas/GetDataObservabilityMonitorRunStatusResponseData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + RunDataObservabilityMonitorResponse: + description: The response returned when a data observability monitor run is triggered. + properties: + data: + $ref: '#/components/schemas/RunDataObservabilityMonitorResponseData' + required: + - data + type: object + MonitorNotificationRuleListResponse: + description: Response for retrieving all monitor notification rules. + properties: + data: + description: A list of monitor notification rules. + items: + $ref: '#/components/schemas/MonitorNotificationRuleData' + type: array + included: + description: Array of objects related to the monitor notification rules. + items: + $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' + type: array + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + MonitorNotificationRuleCreateRequest: + description: Request for creating a monitor notification rule. + properties: + data: + $ref: '#/components/schemas/MonitorNotificationRuleCreateRequestData' + required: + - data + type: object + MonitorNotificationRuleResponse: + description: A monitor notification rule. + properties: + data: + $ref: '#/components/schemas/MonitorNotificationRuleData' + included: + description: Array of objects related to the monitor notification rule that the user requested. + items: + $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' + type: array + type: object + MonitorNotificationRuleUpdateRequest: + description: Request for updating a monitor notification rule. + properties: + data: + $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequestData' + required: + - data + type: object + MonitorConfigPolicyListResponse: + description: Response for retrieving all monitor configuration policies. + properties: + data: + description: An array of monitor configuration policies. + items: + $ref: '#/components/schemas/MonitorConfigPolicyResponseData' + type: array + type: object + MonitorConfigPolicyCreateRequest: + description: Request for creating a monitor configuration policy. + properties: + data: + $ref: '#/components/schemas/MonitorConfigPolicyCreateData' + required: + - data + type: object + MonitorConfigPolicyResponse: + description: Response for retrieving a monitor configuration policy. + properties: + data: + $ref: '#/components/schemas/MonitorConfigPolicyResponseData' + type: object + MonitorConfigPolicyEditRequest: + description: Request for editing a monitor configuration policy. + properties: + data: + $ref: '#/components/schemas/MonitorConfigPolicyEditData' + required: + - data + type: object + MonitorUserTemplateListResponse: + description: Response for retrieving all monitor user templates. + properties: + data: + description: An array of monitor user templates. + items: + $ref: '#/components/schemas/MonitorUserTemplateResponseData' + type: array + type: object + MonitorUserTemplateCreateRequest: + description: Request for creating a monitor user template. + properties: + data: + $ref: '#/components/schemas/MonitorUserTemplateCreateData' + required: + - data + type: object + MonitorUserTemplateCreateResponse: + description: Response for creating a monitor user template. + properties: + data: + $ref: '#/components/schemas/MonitorUserTemplateResponseData' + type: object + MonitorUserTemplateResponse: + description: Response for retrieving a monitor user template. + properties: + data: + $ref: '#/components/schemas/MonitorUserTemplateResponseDataWithVersions' + type: object + MonitorUserTemplateUpdateRequest: + description: Request for creating a new monitor user template version. + properties: + data: + $ref: '#/components/schemas/MonitorUserTemplateUpdateData' + required: + - data + type: object + MonitorDowntimeMatchResponse: + description: Response for retrieving all downtime matches for a monitor. + properties: + data: + description: An array of downtime matches. + items: + $ref: '#/components/schemas/MonitorDowntimeMatchResponseData' + type: array + meta: + $ref: '#/components/schemas/DowntimeMeta' + type: object + SyntheticsApiMultistepSubtestsResponse: + description: Response containing the list of available subtests for an API multistep test. + properties: + data: + description: List of API tests that can be added as subtests. + items: + $ref: '#/components/schemas/SyntheticsApiMultistepSubtestData' + type: array + type: object + SyntheticsApiMultistepParentTestsResponse: + description: Response containing the list of parent tests for an API multistep subtest. + properties: + data: + description: List of parent tests that include this subtest. + items: + $ref: '#/components/schemas/SyntheticsApiMultistepParentTestData' + type: array + type: object + SyntheticsDowntimesResponse: + description: Response containing a list of Synthetics downtimes. + properties: + data: + $ref: '#/components/schemas/SyntheticsDowntimeDataList' + required: + - data + type: object + SyntheticsDowntimeRequest: + description: Request body for creating or updating a Synthetics downtime. + properties: + data: + $ref: '#/components/schemas/SyntheticsDowntimeDataRequest' + required: + - data + type: object + SyntheticsDowntimeResponse: + description: Response containing a single Synthetics downtime. + properties: + data: + $ref: '#/components/schemas/SyntheticsDowntimeData' + required: + - data + type: object + OnDemandConcurrencyCapResponse: + description: On-demand concurrency cap response. + properties: + data: + $ref: '#/components/schemas/OnDemandConcurrencyCap' + type: object + OnDemandConcurrencyCapAttributes: + description: On-demand concurrency cap attributes. + properties: + on_demand_concurrency_cap: + description: Value of the on-demand concurrency cap. + format: double + type: number + type: object + SuiteCreateEditRequest: + description: Request body for creating or editing a Synthetic test suite. + properties: + data: + $ref: '#/components/schemas/SuiteCreateEdit' + required: + - data + type: object + SyntheticsSuiteResponse: + description: Synthetics suite response + properties: + data: + $ref: '#/components/schemas/SyntheticsSuiteResponseData' + type: object + DeletedSuitesRequestDeleteRequest: + description: Request body for bulk deleting Synthetic test suites. + properties: + data: + $ref: '#/components/schemas/DeletedSuitesRequestDelete' + required: + - data + type: object + DeletedSuitesResponse: + description: Response containing the list of deleted Synthetic test suites. + properties: + data: + description: List of deleted Synthetic suite data objects. + items: + $ref: '#/components/schemas/DeletedSuiteResponseData' + type: array + type: object + SyntheticsSuiteSearchResponse: + description: Synthetics suite search response + properties: + data: + $ref: '#/components/schemas/SyntheticsSuiteSearchResponseData' + type: object + SuiteJsonPatchRequest: + description: JSON Patch request for a Synthetic test suite. + properties: + data: + $ref: '#/components/schemas/SuiteJsonPatchRequestData' + required: + - data + type: object + SyntheticsTestResultStatus: + description: Status of a Synthetic test result. + enum: + - passed + - failed + - no_data + example: passed + type: string + x-enum-varnames: + - PASSED + - FAILED + - NO_DATA + SyntheticsTestResultRunType: + description: The type of run for a Synthetic test result. + enum: + - scheduled + - fast + - ci + - triggered + example: scheduled + type: string + x-enum-varnames: + - SCHEDULED + - FAST + - CI + - TRIGGERED + SyntheticsTestLatestResultsResponse: + description: Response object for a Synthetic test's latest result summaries. + properties: + data: + description: Array of Synthetic test result summaries. + items: + $ref: '#/components/schemas/SyntheticsTestResultSummaryData' + type: array + included: + description: Array of included related resources, such as the test definition. + items: + $ref: '#/components/schemas/SyntheticsTestResultIncludedItem' + type: array + type: object + SyntheticsTestResultResponse: + description: Response object for a Synthetic test result. + properties: + data: + $ref: '#/components/schemas/SyntheticsTestResultData' + included: + description: Array of included related resources, such as the test definition. + items: + $ref: '#/components/schemas/SyntheticsTestResultIncludedItem' + type: array + type: object + DeletedTestsRequestDeleteRequest: + description: Request body for bulk deleting Synthetic tests. + properties: + data: + $ref: '#/components/schemas/DeletedTestsRequestDelete' + required: + - data + type: object + DeletedTestsResponse: + description: Response containing the list of deleted Synthetic tests. + properties: + data: + description: List of deleted Synthetic test data objects. + items: + $ref: '#/components/schemas/DeletedTestResponseData' + type: array + type: object + SyntheticsFastTestResult: + description: |- + Fast test result response. Returns `null` if the result is not yet available + (the test is still running or timed out before completing). + nullable: true + properties: + data: + $ref: '#/components/schemas/SyntheticsFastTestResultData' + type: object + SyntheticsNetworkTestEditRequest: + description: Network Path test request. + properties: + data: + $ref: '#/components/schemas/SyntheticsNetworkTestEdit' + required: + - data + type: object + SyntheticsNetworkTestResponse: + description: Network Path test response. + properties: + data: + $ref: '#/components/schemas/SyntheticsNetworkTestResponseData' + type: object + SyntheticsPollTestResultsResponse: + description: Response object for polling Synthetic test results. + properties: + data: + description: Array of Synthetic test results. + items: + $ref: '#/components/schemas/SyntheticsTestResultData' + type: array + included: + description: Array of included related resources, such as the test definition. + items: + $ref: '#/components/schemas/SyntheticsTestResultIncludedItem' + type: array + type: object + SyntheticsTestFileDownloadRequest: + description: Request body for getting a presigned download URL for a test file. + properties: + bucketKey: + description: The bucket key referencing the file to download. + example: api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + minLength: 1 + type: string + required: + - bucketKey + type: object + SyntheticsTestFileDownloadResponse: + description: Response containing a presigned URL for downloading a test file. + properties: + url: + description: A presigned URL to download the file. The URL expires after a short period. + example: https://storage.example.com/presigned-download-url + type: string + type: object + SyntheticsTestFileMultipartPresignedUrlsRequest: + description: Request body for getting presigned URLs for a multipart file upload. + properties: + bucketKeyPrefix: + $ref: '#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsRequestBucketKeyPrefix' + parts: + description: Array of part descriptors for the multipart upload. + items: + $ref: '#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsPart' + type: array + required: + - bucketKeyPrefix + - parts + type: object + SyntheticsTestFileMultipartPresignedUrlsResponse: + description: Response containing presigned URLs for multipart file upload and the bucket key. + properties: + bucketKey: + description: The bucket key that references the uploaded file after completion. + example: api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + type: string + multipart_presigned_urls_params: + $ref: '#/components/schemas/SyntheticsTestFileMultipartPresignedUrlsParams' + type: object + SyntheticsTestFileAbortMultipartUploadRequest: + description: Request body for aborting a multipart file upload. + properties: + key: + description: The full storage path of the file whose upload should be aborted. + example: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + type: string + uploadId: + description: The upload ID of the multipart upload to abort. + example: upload-id-abc123 + type: string + required: + - uploadId + - key + type: object + SyntheticsTestFileCompleteMultipartUploadRequest: + description: Request body for completing a multipart file upload. + properties: + key: + description: The full storage path for the uploaded file. + example: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + type: string + parts: + description: Array of completed parts with their ETags. + items: + $ref: '#/components/schemas/SyntheticsTestFileCompleteMultipartUploadPart' + type: array + uploadId: + description: The upload ID returned when the multipart upload was initiated. + example: upload-id-abc123 + type: string + required: + - uploadId + - key + - parts + type: object + SyntheticsTestParentSuitesResponse: + description: Response containing the list of parent suites for a Synthetic test. + properties: + data: + description: List of parent suites for the given test. + items: + $ref: '#/components/schemas/SyntheticsTestParentSuiteData' + type: array + type: object + SyntheticsTestVersionHistoryResponse: + description: Response containing the paginated version history for a Synthetic test. + properties: + data: + description: List of version change records. + items: + $ref: '#/components/schemas/SyntheticsTestVersionChangeData' + type: array + meta: + $ref: '#/components/schemas/SyntheticsTestVersionHistoryMeta' + type: object + SyntheticsTestVersionResponse: + description: Response containing a specific version of a Synthetic test. + properties: + data: + $ref: '#/components/schemas/SyntheticsTestVersionData' + type: object + GlobalVariableJsonPatchRequest: + description: JSON Patch request for global variable. + properties: + data: + $ref: '#/components/schemas/GlobalVariableJsonPatchRequestData' + required: + - data + type: object + GlobalVariableResponse: + description: Global variable response. + properties: + data: + $ref: '#/components/schemas/GlobalVariableData' + type: object + ServiceChecks: + description: The service checks. + items: + $ref: '#/components/schemas/ServiceCheck' + type: array + IntakePayloadAcceptedV1: + description: The payload accepted for intake. + properties: + status: + description: The status of the intake payload. + example: ok + type: string + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + Monitor: + description: Object describing a monitor. + properties: + assets: + description: The list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks). + items: + $ref: '#/components/schemas/MonitorAsset' + type: array + created: + description: Timestamp of the monitor creation. + format: date-time + readOnly: true + type: string + creator: + $ref: '#/components/schemas/CreatorV1' + deleted: + description: Whether or not the monitor is deleted. (Always `null`) + format: date-time + nullable: true + readOnly: true + type: string + draft_status: + $ref: '#/components/schemas/MonitorDraftStatus' + id: + description: ID of this monitor. + format: int64 + readOnly: true + type: integer + matching_downtimes: + description: A list of active v1 downtimes that match this monitor. + items: + $ref: '#/components/schemas/MatchingDowntime' + type: array + message: + description: A message to include with notifications for this monitor. + type: string + modified: + description: Last timestamp when the monitor was edited. + format: date-time + readOnly: true + type: string + multi: + description: Whether or not the monitor is broken down on different groups. + readOnly: true + type: boolean + name: + description: The monitor name. + example: My monitor + type: string + options: + $ref: '#/components/schemas/MonitorOptions' + overall_state: + $ref: '#/components/schemas/MonitorOverallStates' + priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int64 + nullable: true + type: integer + query: + description: The monitor query. + example: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: string + restricted_roles: + description: A list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles. + items: + description: A role UUID. + type: string + nullable: true + type: array + state: + $ref: '#/components/schemas/MonitorState' + tags: + description: Tags associated to your monitor. + items: + description: A Datadog tag. + type: string + type: array + type: + $ref: '#/components/schemas/MonitorTypeV1' + required: + - type + - query + type: object + CheckCanDeleteMonitorResponse: + description: Response of monitor IDs that can or can't be safely deleted. + properties: + data: + $ref: '#/components/schemas/CheckCanDeleteMonitorResponseData' + errors: + additionalProperties: + description: Strings denoting where a monitor is used. + items: + description: Asset where a monitor is used. + type: string + type: array + description: A mapping of Monitor ID to strings denoting where it's used. + nullable: true + type: object + required: + - data + type: object + MonitorGroupSearchResponse: + description: The response of a monitor group search. + example: + counts: + status: + - count: 2 + name: OK + type: + - count: 2 + name: metric + groups: + - group: '*' + group_tags: + - '*' + last_nodata_ts: 0 + last_triggered_ts: 1525702966 + monitor_id: 2738266 + monitor_name: '[demo] Cassandra disk usage is high on {{host.name}}' + status: OK + - group: '*' + group_tags: + - '*' + last_nodata_ts: 0 + last_triggered_ts: 1525703008 + monitor_id: 1576648 + monitor_name: '[demo] Disk usage is high on {{host.name}}' + status: OK + metadata: + page: 0 + page_count: 2 + per_page: 30 + total_count: 2 + properties: + counts: + $ref: '#/components/schemas/MonitorGroupSearchResponseCounts' + groups: + description: The list of found monitor groups. + items: + $ref: '#/components/schemas/MonitorGroupSearchResult' + readOnly: true + type: array + metadata: + $ref: '#/components/schemas/MonitorSearchResponseMetadata' + type: object + MonitorSearchResponse: + description: The response from a monitor search. + example: + counts: + muted: + - count: 3 + name: false + - count: 3 + name: true + status: + - count: 4 + name: No Data + - count: 2 + name: OK + tag: + - count: 6 + name: service:cassandra + type: + - count: 6 + name: metric + metadata: + page: 0 + page_count: 6 + per_page: 30 + total_count: 6 + monitors: + - classification: metric + creator: + handle: john@datadoghq.com + name: John Doe + id: 2699850 + last_triggered_ts: null + metrics: + - system.cpu.user + name: Cassandra CPU is high on {{host.name}} in {{availability-zone.name}} + notifications: + - handle: jane@datadoghq.com + name: Jane Doe + org_id: 1234 + quality_issues: + - broken_at_handle + - noisy_monitor + scopes: + - '!availability-zone:us-east-1c' + - name:cassandra + status: No Data + tags: + - service:cassandra + type: query alert + properties: + counts: + $ref: '#/components/schemas/MonitorSearchResponseCounts' + metadata: + $ref: '#/components/schemas/MonitorSearchResponseMetadata' + monitors: + description: The list of found monitors. + items: + $ref: '#/components/schemas/MonitorSearchResult' + readOnly: true + type: array + type: object + DeletedMonitor: + description: Response from the delete monitor call. + properties: + deleted_monitor_id: + description: ID of the deleted monitor. + example: 666486743 + format: int64 + type: integer + readOnly: true + type: object + MonitorUpdateRequest: + description: Object describing a monitor update request. + properties: + assets: + description: The list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks). + items: + $ref: '#/components/schemas/MonitorAsset' + nullable: true + type: array + created: + description: Timestamp of the monitor creation. + format: date-time + readOnly: true + type: string + creator: + $ref: '#/components/schemas/CreatorV1' + deleted: + description: Whether or not the monitor is deleted. (Always `null`) + format: date-time + nullable: true + readOnly: true + type: string + draft_status: + $ref: '#/components/schemas/MonitorDraftStatus' + id: + description: ID of this monitor. + format: int64 + readOnly: true + type: integer + message: + description: A message to include with notifications for this monitor. + type: string + modified: + description: Last timestamp when the monitor was edited. + format: date-time + readOnly: true + type: string + multi: + description: Whether or not the monitor is broken down on different groups. + readOnly: true + type: boolean + name: + description: The monitor name. + type: string + options: + $ref: '#/components/schemas/MonitorOptions' + overall_state: + $ref: '#/components/schemas/MonitorOverallStates' + priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int64 + nullable: true + type: integer + query: + description: The monitor query. + type: string + restricted_roles: + description: A list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles. + items: + description: A role UUID. + type: string + nullable: true + type: array + state: + $ref: '#/components/schemas/MonitorState' + tags: + description: Tags associated to your monitor. + items: + description: A Datadog tag. + type: string + type: array + type: + $ref: '#/components/schemas/MonitorTypeV1' + type: object + Downtime: + description: |- + Downtiming gives you greater control over monitor notifications by + allowing you to globally exclude scopes from alerting. + Downtime settings, which can be scheduled with start and end times, + prevent all alerting related to specified Datadog tags. + properties: + active: + description: If a scheduled downtime currently exists. + example: true + readOnly: true + type: boolean + active_child: + $ref: '#/components/schemas/DowntimeChild' + canceled: + description: If a scheduled downtime is canceled. + example: 1412799983 + format: int64 + nullable: true + readOnly: true + type: integer + creator_id: + description: User ID of the downtime creator. + example: 123456 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + disabled: + description: If a downtime has been disabled. + example: false + type: boolean + downtime_type: + description: |- + `0` for a downtime applied on `*` or all, + `1` when the downtime is only scoped to hosts, + or `2` when the downtime is scoped to anything but hosts. + example: 2 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + end: + description: |- + POSIX timestamp to end the downtime. If not provided, + the downtime is in effect indefinitely until you cancel it. + example: 1412793983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1625 + format: int64 + readOnly: true + type: integer + message: + description: |- + A message to include with notifications for this downtime. + Email notifications can be sent to specific users by using the same `@username` notation as events. + example: Message on the downtime + nullable: true + type: string + monitor_id: + description: |- + A single monitor to which the downtime applies. + If not provided, the downtime applies to all monitors. + example: 123456 + format: int64 + nullable: true + type: integer + monitor_tags: + description: |- + A comma-separated list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match ALL provided monitor tags. + For example, `service:postgres` **AND** `team:frontend`. + example: + - '*' + items: + description: A monitor tag. + type: string + type: array + mute_first_recovery_notification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + notify_end_states: + $ref: '#/components/schemas/NotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/NotifyEndTypes' + parent_id: + description: ID of the parent Downtime. + example: 123 + format: int64 + nullable: true + type: integer + recurrence: + $ref: '#/components/schemas/DowntimeRecurrence' + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: + - env:staging + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: |- + POSIX timestamp to start the downtime. + If not provided, the downtime starts the moment it is created. + example: 1412792983 + format: int64 + type: integer + timezone: + description: The timezone in which to display the downtime's start and end times in Datadog applications. + example: America/New_York + type: string + updater_id: + description: ID of the last user that updated the downtime. + example: 123456 + format: int32 + maximum: 2147483647 + nullable: true + readOnly: true + type: integer + type: object + SyntheticsBatchDetails: + description: Details about a batch response. + properties: + data: + $ref: '#/components/schemas/SyntheticsBatchDetailsData' + type: object + SyntheticsLocations: + description: List of Synthetic locations. + properties: + locations: + description: List of Synthetic locations. + items: + $ref: '#/components/schemas/SyntheticsLocation' + type: array + type: object + SyntheticsPrivateLocation: + description: Object containing information about the private location to create. + properties: + description: + description: Description of the private location. + example: Description of private location + type: string + id: + description: Unique identifier of the private location. + readOnly: true + type: string + metadata: + $ref: '#/components/schemas/SyntheticsPrivateLocationMetadata' + name: + description: Name of the private location. + example: New private location + type: string + secrets: + $ref: '#/components/schemas/SyntheticsPrivateLocationSecrets' + tags: + description: Array of tags attached to the private location. + example: + - team:front + items: + description: A tag attached to the private location. + example: team:front + type: string + type: array + required: + - name + - description + - tags + type: object + SyntheticsPrivateLocationCreationResponse: + description: Object that contains the new private location, the public key for result encryption, and the configuration skeleton. + properties: + config: + description: Configuration skeleton for the private location. See installation instructions of the private location on how to use this configuration. (opaque JSON object) + type: string + private_location: + $ref: '#/components/schemas/SyntheticsPrivateLocation' + result_encryption: + $ref: '#/components/schemas/SyntheticsPrivateLocationCreationResponseResultEncryption' + type: object + SyntheticsDefaultLocations: + description: List of Synthetics default locations settings. + example: + - aws:eu-west-3 + items: + description: Name of the location. + type: string + type: array + SyntheticsListTestsResponse: + description: Object containing an array of Synthetic tests configuration. + properties: + tests: + description: Array of Synthetic tests configuration. + items: + $ref: '#/components/schemas/SyntheticsTestDetailsWithoutSteps' + type: array + type: object + SyntheticsAPITest: + description: Object containing details about a Synthetic API test. + properties: + config: + $ref: '#/components/schemas/SyntheticsAPITestConfig' + locations: + description: Array of locations used to run the test. + example: + - aws:eu-west-3 + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. + example: Notification message + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: Example test name + type: string + options: + $ref: '#/components/schemas/SyntheticsTestOptionsV1' + public_id: + description: The public ID for the test. + example: 123-abc-456 + readOnly: true + type: string + status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + subtype: + $ref: '#/components/schemas/SyntheticsTestDetailsSubType' + tags: + description: Array of tags attached to the test. + example: + - env:production + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: '#/components/schemas/SyntheticsAPITestType' + required: + - name + - config + - locations + - options + - type + - message + type: object + SyntheticsBrowserTest: + description: Object containing details about a Synthetic browser test. + properties: + config: + $ref: '#/components/schemas/SyntheticsBrowserTestConfig' + locations: + description: Array of locations used to run the test. + example: + - aws:eu-west-3 + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. Message can either be text or an empty string. + example: '' + type: string + monitor_id: + description: The associated monitor ID. + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: Example test name + type: string + options: + $ref: '#/components/schemas/SyntheticsTestOptionsV1' + public_id: + description: The public ID of the test. + readOnly: true + type: string + status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + steps: + description: Array of steps for the test. + items: + $ref: '#/components/schemas/SyntheticsStep' + type: array + tags: + description: Array of tags attached to the test. + example: + - env:prod + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: '#/components/schemas/SyntheticsBrowserTestType' + required: + - config + - locations + - name + - options + - type + - message + type: object + SyntheticsGetBrowserTestLatestResultsResponse: + description: Object with the latest Synthetic browser test run. + properties: + last_timestamp_fetched: + description: Timestamp of the latest browser test run. + format: int64 + type: integer + results: + description: Result of the latest browser test run. + items: + $ref: '#/components/schemas/SyntheticsBrowserTestResultShort' + type: array + type: object + SyntheticsBrowserTestResultFull: + description: Object returned describing a browser test result. + properties: + check: + $ref: '#/components/schemas/SyntheticsBrowserTestResultFullCheck' + check_time: + description: When the browser test was conducted. + format: double + type: number + check_version: + description: Version of the browser test used. + format: int64 + type: integer + probe_dc: + description: Location from which the browser test was performed. + type: string + result: + $ref: '#/components/schemas/SyntheticsBrowserTestResultData' + result_id: + description: ID of the browser test result. + type: string + status: + $ref: '#/components/schemas/SyntheticsTestMonitorStatus' + type: object + SyntheticsDeleteTestsPayload: + description: |- + A JSON list of the ID or IDs of the Synthetic tests that you want + to delete. + properties: + force_delete_dependencies: + description: |- + Delete the Synthetic test even if it's referenced by other resources + (for example, SLOs and composite monitors). + example: false + type: boolean + public_ids: + description: An array of Synthetic test IDs you want to delete. + example: [] + items: + description: A Synthetic test ID to delete. + example: abc-def-123 + type: string + type: array + type: object + SyntheticsDeleteTestsResponse: + description: Response object for deleting Synthetic tests. + properties: + deleted_tests: + description: |- + Array of objects containing a deleted Synthetic test ID with + the associated deletion timestamp. + items: + $ref: '#/components/schemas/SyntheticsDeletedTest' + type: array + type: object + SyntheticsMobileTest: + description: Object containing details about a Synthetic mobile test. + properties: + config: + $ref: '#/components/schemas/SyntheticsMobileTestConfig' + device_ids: + description: Array with the different device IDs used to run the test. + items: + $ref: '#/components/schemas/SyntheticsDeviceID' + type: array + message: + description: Notification message associated with the test. + example: Notification message + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: Example test name + type: string + options: + $ref: '#/components/schemas/SyntheticsMobileTestOptions' + public_id: + description: The public ID of the test. + example: 123-abc-456 + readOnly: true + type: string + status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + steps: + description: Array of steps for the test. + items: + $ref: '#/components/schemas/SyntheticsMobileStep' + type: array + tags: + description: Array of tags attached to the test. + example: + - env:production + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: '#/components/schemas/SyntheticsMobileTestType' + required: + - config + - name + - options + - type + - message + type: object + SyntheticsTriggerBody: + description: Object describing the Synthetic tests to trigger. + properties: + tests: + description: List of Synthetic tests. + items: + $ref: '#/components/schemas/SyntheticsTriggerTest' + type: array + required: + - tests + type: object + SyntheticsTriggerCITestsResponse: + description: Object containing information about the tests triggered. + properties: + batch_id: + description: The public ID of the batch triggered. + nullable: true + type: string + locations: + description: List of Synthetic locations. + items: + $ref: '#/components/schemas/SyntheticsTriggerCITestLocation' + type: array + results: + description: Information about the tests runs. + items: + $ref: '#/components/schemas/SyntheticsTriggerCITestRunResult' + type: array + triggered_check_ids: + description: The public IDs of the Synthetic test triggered. + items: + description: The public ID of the Synthetic test. + type: string + type: array + type: object + SyntheticsCITestBody: + description: Object describing the synthetics tests to trigger. + properties: + tests: + description: List of Synthetic tests with overrides. + items: + $ref: '#/components/schemas/SyntheticsCITest' + type: array + type: object + SyntheticsFetchUptimesPayload: + description: Object containing IDs of Synthetic tests and a timeframe. + properties: + from_ts: + description: Timestamp in seconds (Unix epoch) for the start of uptime. + example: 0 + format: int64 + type: integer + public_ids: + description: An array of Synthetic test IDs you want uptimes for. + example: [] + items: + description: A Synthetic test ID. + example: abc-def-123 + type: string + type: array + to_ts: + description: Timestamp in seconds (Unix epoch) for the end of uptime. + example: 0 + format: int64 + type: integer + required: + - from_ts + - to_ts + - public_ids + type: object + SyntheticsTestUptime: + description: Object containing the uptime for a Synthetic test ID. + properties: + from_ts: + description: Timestamp in seconds for the start of uptime. + format: int64 + type: integer + overall: + $ref: '#/components/schemas/SyntheticsUptime' + public_id: + description: A Synthetic test ID. + example: abc-def-123 + type: string + to_ts: + description: Timestamp in seconds for the end of uptime. + format: int64 + type: integer + type: object + SyntheticsTestDetailsWithoutSteps: + description: Object containing details about your Synthetic test, without test steps. + properties: + config: + $ref: '#/components/schemas/SyntheticsTestConfig' + creator: + $ref: '#/components/schemas/CreatorV1' + locations: + description: Array of locations used to run the test. + example: + - aws:eu-west-3 + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. + type: string + monitor_id: + description: The associated monitor ID. + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + type: string + options: + $ref: '#/components/schemas/SyntheticsTestOptionsV1' + public_id: + description: The test public ID. + readOnly: true + type: string + status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + subtype: + $ref: '#/components/schemas/SyntheticsTestDetailsSubType' + tags: + description: Array of tags attached to the test. + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: '#/components/schemas/SyntheticsTestDetailsType' + type: object + SyntheticsPatchTestBody: + description: Wrapper around an array of [JSON Patch](https://jsonpatch.com) operations to perform on the test + properties: + data: + description: Array of [JSON Patch](https://jsonpatch.com) operations to perform on the test + example: + - op: replace + path: /name + value: New test name + - op: remove + path: /config/assertions/0 + items: + $ref: '#/components/schemas/SyntheticsPatchTestOperation' + type: array + type: object + SyntheticsTestDetails: + description: Object containing details about your Synthetic test. + properties: + config: + $ref: '#/components/schemas/SyntheticsTestConfig' + creator: + $ref: '#/components/schemas/CreatorV1' + locations: + description: Array of locations used to run the test. + example: + - aws:eu-west-3 + items: + description: A location from which the test was run. + type: string + type: array + message: + description: Notification message associated with the test. + type: string + monitor_id: + description: The associated monitor ID. + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + type: string + options: + $ref: '#/components/schemas/SyntheticsTestOptionsV1' + public_id: + description: The test public ID. + readOnly: true + type: string + status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + steps: + description: The steps of the test if they exist. + items: + $ref: '#/components/schemas/SyntheticsStep' + type: array + subtype: + $ref: '#/components/schemas/SyntheticsTestDetailsSubType' + tags: + description: Array of tags attached to the test. + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: '#/components/schemas/SyntheticsTestDetailsType' + type: object + SyntheticsGetAPITestLatestResultsResponse: + description: Object with the latest Synthetic API test run. + properties: + last_timestamp_fetched: + description: Timestamp of the latest API test run. + format: int64 + type: integer + results: + description: Result of the latest API test run. + items: + $ref: '#/components/schemas/SyntheticsAPITestResultShort' + type: array + type: object + SyntheticsAPITestResultFull: + description: Object returned describing a API test result. + properties: + check: + $ref: '#/components/schemas/SyntheticsAPITestResultFullCheck' + check_time: + description: When the API test was conducted. + format: double + type: number + check_version: + description: Version of the API test used. + format: int64 + type: integer + probe_dc: + description: Locations for which to query the API test results. + type: string + result: + $ref: '#/components/schemas/SyntheticsAPITestResultData' + result_id: + description: ID of the API test result. + type: string + status: + $ref: '#/components/schemas/SyntheticsTestMonitorStatus' + type: object + SyntheticsUpdateTestPauseStatusPayload: + description: Object to start or pause an existing Synthetic test. + properties: + new_status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + type: object + SyntheticsListGlobalVariablesResponse: + description: Object containing an array of Synthetic global variables. + properties: + variables: + description: Array of Synthetic global variables. + items: + $ref: '#/components/schemas/SyntheticsGlobalVariable' + type: array + type: object + SyntheticsGlobalVariableRequest: + description: Details of the global variable to create. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsGlobalVariableAttributes' + description: + description: Description of the global variable. + example: Example description + type: string + id: + description: Unique identifier of the global variable. + readOnly: true + type: string + is_fido: + description: Determines if the global variable is a FIDO variable. + type: boolean + is_totp: + description: Determines if the global variable is a TOTP/MFA variable. + type: boolean + name: + description: Name of the global variable. Unique across Synthetic global variables. + example: MY_VARIABLE + type: string + parse_test_options: + $ref: '#/components/schemas/SyntheticsGlobalVariableParseTestOptions' + parse_test_public_id: + description: A Synthetic test ID to use as a test to generate the variable value. + example: abc-def-123 + type: string + tags: + description: Tags of the global variable. + example: + - team:front + - test:workflow-1 + items: + description: Tag name. + type: string + type: array + value: + $ref: '#/components/schemas/SyntheticsGlobalVariableValue' + required: + - description + - name + - tags + type: object + SyntheticsGlobalVariable: + description: Synthetic global variable. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsGlobalVariableAttributes' + description: + description: Description of the global variable. + example: Example description + type: string + id: + description: Unique identifier of the global variable. + readOnly: true + type: string + is_fido: + description: Determines if the global variable is a FIDO variable. + type: boolean + is_totp: + description: Determines if the global variable is a TOTP/MFA variable. + type: boolean + name: + description: Name of the global variable. Unique across Synthetic global variables. + example: MY_VARIABLE + type: string + parse_test_options: + $ref: '#/components/schemas/SyntheticsGlobalVariableParseTestOptions' + parse_test_public_id: + description: A Synthetic test ID to use as a test to generate the variable value. + example: abc-def-123 + type: string + tags: + description: Tags of the global variable. + example: + - team:front + - test:workflow-1 + items: + description: Tag name. + type: string + type: array + value: + $ref: '#/components/schemas/SyntheticsGlobalVariableValue' + required: + - description + - name + - tags + - value + type: object + GetDataObservabilityMonitorRunStatusResponseData: + description: The data object for a data observability monitor run status response. + properties: + attributes: + $ref: '#/components/schemas/GetDataObservabilityMonitorRunStatusResponseAttributes' + id: + description: The unique identifier of the monitor run. + example: abc123def456 + type: string + type: + $ref: '#/components/schemas/DataObservabilityMonitorRunType' + required: + - id + - type + - attributes + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + RunDataObservabilityMonitorResponseData: + description: The data object returned when a data observability monitor run is triggered. + properties: + id: + description: The unique identifier of the monitor run. + example: abc123def456 + type: string + type: + $ref: '#/components/schemas/DataObservabilityMonitorRunType' + required: + - id + - type + type: object + MonitorNotificationRuleData: + description: Monitor notification rule data. + properties: + attributes: + $ref: '#/components/schemas/MonitorNotificationRuleResponseAttributes' + id: + $ref: '#/components/schemas/MonitorNotificationRuleId' + relationships: + $ref: '#/components/schemas/MonitorNotificationRuleRelationships' + type: + $ref: '#/components/schemas/MonitorNotificationRuleResourceType' + type: object + MonitorNotificationRuleResponseIncludedItem: + description: An object related to a monitor notification rule. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + MonitorNotificationRuleCreateRequestData: + description: Object to create a monitor notification rule. + properties: + attributes: + $ref: '#/components/schemas/MonitorNotificationRuleAttributes' + type: + $ref: '#/components/schemas/MonitorNotificationRuleResourceType' + required: + - attributes + type: object + MonitorNotificationRuleUpdateRequestData: + description: Object to update a monitor notification rule. + properties: + attributes: + $ref: '#/components/schemas/MonitorNotificationRuleAttributes' + id: + $ref: '#/components/schemas/MonitorNotificationRuleId' + type: + $ref: '#/components/schemas/MonitorNotificationRuleResourceType' + required: + - id + - attributes + type: object + MonitorConfigPolicyResponseData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: '#/components/schemas/MonitorConfigPolicyAttributeResponse' + id: + description: ID of this monitor configuration policy. + example: 00000000-0000-1234-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/MonitorConfigPolicyResourceType' + type: object + MonitorConfigPolicyCreateData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: '#/components/schemas/MonitorConfigPolicyAttributeCreateRequest' + type: + $ref: '#/components/schemas/MonitorConfigPolicyResourceType' + required: + - type + - attributes + type: object + MonitorConfigPolicyEditData: + description: A monitor configuration policy data. + properties: + attributes: + $ref: '#/components/schemas/MonitorConfigPolicyAttributeEditRequest' + id: + description: ID of this monitor configuration policy. + example: 00000000-0000-1234-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/MonitorConfigPolicyResourceType' + required: + - id + - type + - attributes + type: object + MonitorUserTemplateResponseData: + description: Monitor user template list response data. + properties: + attributes: + $ref: '#/components/schemas/MonitorUserTemplateResponseAttributes' + id: + $ref: '#/components/schemas/MonitorUserTemplateId' + type: + $ref: '#/components/schemas/MonitorUserTemplateResourceType' + type: object + MonitorUserTemplateCreateData: + description: Monitor user template data. + properties: + attributes: + $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' + type: + $ref: '#/components/schemas/MonitorUserTemplateResourceType' + required: + - type + - attributes + type: object + MonitorUserTemplateResponseDataWithVersions: + description: Monitor user template data. + properties: + attributes: + $ref: '#/components/schemas/MonitorUserTemplate' + id: + $ref: '#/components/schemas/MonitorUserTemplateId' + type: + $ref: '#/components/schemas/MonitorUserTemplateResourceType' + type: object + MonitorUserTemplateUpdateData: + description: Monitor user template data. + properties: + attributes: + $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' + id: + $ref: '#/components/schemas/MonitorUserTemplateId' + type: + $ref: '#/components/schemas/MonitorUserTemplateResourceType' + required: + - id + - type + - attributes + type: object + MonitorDowntimeMatchResponseData: + description: A downtime match. + properties: + attributes: + $ref: '#/components/schemas/MonitorDowntimeMatchResponseAttributes' + id: + description: The downtime ID. + example: 00000000-0000-1234-0000-000000000000 + nullable: true + type: string + type: + $ref: '#/components/schemas/MonitorDowntimeMatchResourceType' + type: object + DowntimeMeta: + description: Pagination metadata returned by the API. + properties: + page: + $ref: '#/components/schemas/DowntimeMetaPage' + type: object + SyntheticsApiMultistepSubtestData: + description: Data object for a Synthetic API multistep subtest. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsApiMultistepSubtestAttributes' + id: + description: The public ID of the subtest. + example: abc-def-123 + type: string + type: + $ref: '#/components/schemas/SyntheticsApiMultistepSubtestType' + type: object + SyntheticsApiMultistepParentTestData: + description: Data object for a parent API multistep test. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsApiMultistepParentTestAttributes' + id: + description: The public ID of the parent test. + example: abc-def-123 + type: string + type: + $ref: '#/components/schemas/SyntheticsApiMultistepParentTestType' + type: object + SyntheticsDowntimeDataList: + description: List of Synthetics downtime objects. + example: + - attributes: + createdAt: '2024-01-15T10:30:00Z' + createdBy: 00000000-0000-0000-0000-000000000003 + createdByName: Jane Doe + description: Scheduled weekly maintenance window. + isEnabled: true + name: Weekly maintenance + tags: [] + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + updatedAt: '2024-01-15T10:30:00Z' + updatedBy: 00000000-0000-0000-0000-000000000003 + updatedByName: Jane Doe + id: 00000000-0000-0000-0000-000000000001 + type: downtime + items: + $ref: '#/components/schemas/SyntheticsDowntimeData' + type: array + SyntheticsDowntimeDataRequest: + description: The data object for a Synthetics downtime create or update request. + example: + attributes: + isEnabled: true + name: Weekly maintenance + testIds: + - abc-def-123 + timeSlots: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + type: downtime + properties: + attributes: + $ref: '#/components/schemas/SyntheticsDowntimeDataAttributesRequest' + type: + $ref: '#/components/schemas/SyntheticsDowntimeResourceType' + required: + - type + - attributes + type: object + SyntheticsDowntimeData: + description: A Synthetics downtime object. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsDowntimeDataAttributesResponse' + id: + description: The unique identifier of the downtime. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/SyntheticsDowntimeResourceType' + required: + - id + - type + - attributes + type: object + OnDemandConcurrencyCap: + description: On-demand concurrency cap. + properties: + attributes: + $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' + type: + $ref: '#/components/schemas/OnDemandConcurrencyCapType' + type: object + SuiteCreateEdit: + description: Data object for creating or editing a Synthetic test suite. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsSuite' + type: + $ref: '#/components/schemas/SyntheticsSuiteTypes' + required: + - attributes + - type + type: object + SyntheticsSuiteResponseData: + description: Synthetics suite response data + properties: + attributes: + $ref: '#/components/schemas/SyntheticsSuite' + id: + description: The public ID for the suite. + example: 123-abc-456 + readOnly: true + type: string + type: + $ref: '#/components/schemas/SyntheticsSuiteTypes' + type: object + DeletedSuitesRequestDelete: + description: Data object for a bulk delete Synthetic test suites request. + properties: + attributes: + $ref: '#/components/schemas/DeletedSuitesRequestDeleteAttributes' + id: + description: An optional identifier for the delete request. + type: string + type: + $ref: '#/components/schemas/DeletedSuitesRequestType' + required: + - attributes + type: object + DeletedSuiteResponseData: + description: Data object for a deleted Synthetic test suite. + properties: + attributes: + $ref: '#/components/schemas/DeletedSuiteResponseDataAttributes' + id: + description: The public ID of the deleted Synthetic test suite. + type: string + type: + $ref: '#/components/schemas/SyntheticsSuiteTypes' + type: object + SyntheticsSuiteSearchResponseData: + description: Synthetics suite search response data + properties: + attributes: + $ref: '#/components/schemas/SyntheticsSuiteSearchResponseDataAttributes' + id: + description: The unique identifier of the suite search response data. + format: uuid + type: string + type: + $ref: '#/components/schemas/SuiteSearchResponseType' + type: object + SuiteJsonPatchRequestData: + description: Data object for a JSON Patch request on a Synthetic test suite. + properties: + attributes: + $ref: '#/components/schemas/SuiteJsonPatchRequestDataAttributes' + type: + $ref: '#/components/schemas/SuiteJsonPatchType' + type: object + SyntheticsTestResultSummaryData: + description: Wrapper object for a Synthetic test result summary. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsTestResultSummaryAttributes' + id: + description: The result ID. + example: '5158904793181869365' + type: string + relationships: + $ref: '#/components/schemas/SyntheticsTestResultRelationships' + type: + $ref: '#/components/schemas/SyntheticsTestResultSummaryType' + type: object + SyntheticsTestResultIncludedItem: + description: An included related resource. + properties: + attributes: + additionalProperties: {} + description: Attributes of the included resource. + type: object + id: + description: ID of the included resource. + example: abc-def-123 + type: string + type: + description: Type of the included resource. + example: test + type: string + type: object + SyntheticsTestResultData: + description: Wrapper object for a Synthetic test result. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsTestResultAttributes' + id: + description: The result ID. + example: '5158904793181869365' + type: string + relationships: + $ref: '#/components/schemas/SyntheticsTestResultRelationships' + type: + $ref: '#/components/schemas/SyntheticsTestResultType' + type: object + DeletedTestsRequestDelete: + description: Data object for a bulk delete Synthetic tests request. + properties: + attributes: + $ref: '#/components/schemas/DeletedTestsRequestDeleteAttributes' + id: + description: An optional identifier for the delete request. + type: string + type: + $ref: '#/components/schemas/DeletedTestsRequestType' + required: + - attributes + type: object + DeletedTestResponseData: + description: Data object for a deleted Synthetic test. + properties: + attributes: + $ref: '#/components/schemas/DeletedTestResponseDataAttributes' + id: + description: The public ID of the deleted Synthetic test. + type: string + type: + $ref: '#/components/schemas/DeletedTestsResponseType' + type: object + SyntheticsFastTestResultData: + description: Fast test result data object (JSON:API format). + properties: + attributes: + $ref: '#/components/schemas/SyntheticsFastTestResultAttributes' + id: + description: The UUID of the fast test, used as the result identifier. + example: abc12345-1234-1234-1234-abc123456789 + type: string + type: + $ref: '#/components/schemas/SyntheticsFastTestResultType' + type: object + SyntheticsNetworkTestEdit: + description: Data object for creating or editing a Network Path test. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsNetworkTest' + type: + $ref: '#/components/schemas/SyntheticsNetworkTestType' + required: + - attributes + - type + type: object + SyntheticsNetworkTestResponseData: + description: Network Path test response data. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsNetworkTest' + id: + description: The public ID of the Network Path test. + example: abc-def-123 + readOnly: true + type: string + type: + $ref: '#/components/schemas/SyntheticsNetworkTestResponseType' + type: object + SyntheticsTestFileMultipartPresignedUrlsRequestBucketKeyPrefix: + description: The bucket key prefix indicating the type of file upload. + enum: + - api-upload-file + - browser-upload-file-step + example: api-upload-file + type: string + x-enum-varnames: + - API_UPLOAD_FILE + - BROWSER_UPLOAD_FILE_STEP + SyntheticsTestFileMultipartPresignedUrlsPart: + description: A part descriptor for initiating a multipart upload. + properties: + md5: + description: Base64-encoded MD5 digest of the part content. + example: 1B2M2Y8AsgTpgAmY7PhCfg== + maxLength: 24 + minLength: 22 + type: string + partNumber: + description: The 1-indexed part number for the multipart upload. + example: 1 + format: int64 + type: integer + required: + - md5 + - partNumber + type: object + SyntheticsTestFileMultipartPresignedUrlsParams: + description: Presigned URL parameters returned for a multipart upload. + properties: + key: + description: The full storage path for the file being uploaded. + example: org-123/api-upload-file/abc-def-123/2024-01-01T00:00:00_uuid.json + type: string + upload_id: + description: The upload ID assigned by the storage provider for this multipart upload. + example: upload-id-abc123 + type: string + urls: + additionalProperties: + type: string + description: A map of part numbers to presigned upload URLs. + example: + '1': https://storage.example.com/presigned-upload-url-part-1 + '2': https://storage.example.com/presigned-upload-url-part-2 + type: object + type: object + SyntheticsTestFileCompleteMultipartUploadPart: + description: A completed part of a multipart upload. + properties: + ETag: + description: The ETag returned by the storage provider after uploading the part. + example: '"d41d8cd98f00b204e9800998ecf8427e"' + type: string + PartNumber: + description: The 1-indexed part number for the multipart upload. + example: 1 + format: int64 + type: integer + required: + - ETag + - PartNumber + type: object + SyntheticsTestParentSuiteData: + description: Data object for a parent suite. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsTestParentSuiteAttributes' + id: + description: The public ID of the parent suite. + example: abc-def-123 + type: string + type: + $ref: '#/components/schemas/SyntheticsTestParentSuiteType' + type: object + SyntheticsTestVersionChangeData: + description: Data object for a version change record. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsTestVersionChangeAttributes' + id: + description: UUID of the version change record. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/SyntheticsTestVersionChangeType' + type: object + SyntheticsTestVersionHistoryMeta: + description: Pagination metadata for a version history response. + properties: + next_last_version_number: + description: |- + The version number to use as the `last_version_number` query parameter + to fetch the next page. `null` indicates there are no more pages. + example: 3 + format: int64 + nullable: true + type: integer + retention_period_in_days: + description: The number of days that version history is retained. + example: 30 + format: int64 + type: integer + type: object + SyntheticsTestVersionData: + description: Data object for a specific Synthetic test version. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsTestVersionAttributes' + id: + description: UUID of the version record. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/SyntheticsTestVersionType' + type: object + GlobalVariableJsonPatchRequestData: + description: Data object for a JSON Patch request on a Synthetic global variable. + properties: + attributes: + $ref: '#/components/schemas/GlobalVariableJsonPatchRequestDataAttributes' + type: + $ref: '#/components/schemas/GlobalVariableJsonPatchType' + type: object + GlobalVariableData: + description: Synthetics global variable data. Wrapper around the global variable object. + properties: + attributes: + $ref: '#/components/schemas/SyntheticsGlobalVariable' + id: + description: Global variable identifier. + type: string + type: + $ref: '#/components/schemas/GlobalVariableType' + type: object + ServiceCheck: + description: An object containing service check and status. + properties: + check: + description: The check. + example: app.ok + type: string + host_name: + description: The host name correlated with the check. + example: app.host1 + type: string + message: + description: Message containing check status. + example: app is running + type: string + status: + $ref: '#/components/schemas/ServiceCheckStatus' + tags: + description: Tags related to a check. + example: + - environment:test + items: + description: Items related to a check. + type: string + type: array + timestamp: + description: Time of check. + format: int64 + type: integer + required: + - check + - status + - tags + - host_name + type: object + MonitorAsset: + description: |- + Represents key links tied to a monitor to help users take action on alerts. + This feature is in Preview and only available to users with the feature enabled. + properties: + category: + $ref: '#/components/schemas/MonitorAssetCategory' + name: + description: Name for the monitor asset + example: Monitor Runbook + type: string + resource_key: + description: Represents the identifier of the internal Datadog resource that this asset represents. IDs in this field should be passed in as strings. + example: '12345' + type: string + resource_type: + $ref: '#/components/schemas/MonitorAssetResourceType' + url: + description: URL link for the asset. For links with an internal resource type set, this should be the relative path to where the Datadog domain is appended internally. For external links, this should be the full URL path. + example: /notebooks/12345 + type: string + required: + - name + - url + - category + type: object + CreatorV1: + description: Object describing the creator of the shared element. + properties: + email: + description: Email of the creator. + type: string + handle: + description: Handle of the creator. + type: string + name: + description: Name of the creator. + nullable: true + type: string + readOnly: true + type: object + MonitorDraftStatus: + default: published + description: |- + Indicates whether the monitor is in a draft or published state. + + `draft`: The monitor appears as Draft and does not send notifications. + `published`: The monitor is active and evaluates conditions and notify as configured. + + This field is in preview. The draft value is only available to customers with the feature enabled. + enum: + - draft + - published + type: string + x-enum-varnames: + - DRAFT + - PUBLISHED + MatchingDowntime: + description: Object describing a downtime that matches this monitor. + properties: + end: + description: POSIX timestamp to end the downtime. + example: 1412792983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1625 + format: int64 + readOnly: true + type: integer + scope: + description: |- + The scope(s) to which the downtime applies. Must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: + - env:staging + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: POSIX timestamp to start the downtime. + example: 1412792983 + format: int64 + type: integer + required: + - id + type: object + MonitorOptions: + description: List of options associated with your monitor. + properties: + aggregation: + $ref: '#/components/schemas/MonitorOptionsAggregation' + device_ids: + deprecated: true + description: IDs of the device the Synthetics monitor is running on. + items: + $ref: '#/components/schemas/MonitorDeviceID' + readOnly: true + type: array + enable_logs_sample: + description: Whether or not to send a log sample when the log monitor triggers. + type: boolean + enable_samples: + description: Whether or not to send a list of samples when the monitor triggers. This is only used by CI Test and Pipeline monitors. + type: boolean + escalation_message: + description: |- + We recommend using the [is_renotify](https://docs.datadoghq.com/monitors/notify/?tab=is_alert#renotify), + block in the original message instead. + A message to include with a re-notification. Supports the `@username` notification we allow elsewhere. + Not applicable if `renotify_interval` is `None`. + type: string + evaluation_delay: + description: |- + Time (in seconds) to delay evaluation, as a non-negative integer. For example, if the value is set to `300` (5min), + the timeframe is set to `last_5m` and the time is 7:00, the monitor evaluates data from 6:50 to 6:55. + This is useful for AWS CloudWatch and other backfilled metrics to ensure the monitor always has data during evaluation. + format: int64 + nullable: true + type: integer + group_retention_duration: + description: |- + The time span after which groups with missing data are dropped from the monitor state. + The minimum value is one hour, and the maximum value is 72 hours. + Example values are: "60m", "1h", and "2d". + This option is only available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors. + type: string + groupby_simple_monitor: + deprecated: true + description: Whether the log alert monitor triggers a single alert or multiple alerts when any group breaches a threshold. Use `notify_by` instead. + type: boolean + include_tags: + default: true + description: |- + A Boolean indicating whether notifications from this monitor automatically inserts its triggering tags into the title. + + **Examples** + - If `True`, `[Triggered on {host:h1}] Monitor Title` + - If `False`, `[Triggered] Monitor Title` + type: boolean + locked: + deprecated: true + description: Whether or not the monitor is locked (only editable by creator and admins). Use `restricted_roles` instead. + type: boolean + min_failure_duration: + default: 0 + description: How long the test should be in failure before alerting (integer, number of seconds, max 7200). + format: int64 + maximum: 7200 + minimum: 0 + nullable: true + type: integer + min_location_failed: + default: 1 + description: |- + The minimum number of locations in failure at the same time during + at least one moment in the `min_failure_duration` period (`min_location_failed` and `min_failure_duration` + are part of the advanced alerting rules - integer, >= 1). + format: int64 + nullable: true + type: integer + new_group_delay: + description: |- + Time (in seconds) to skip evaluations for new groups. + + For example, this option can be used to skip evaluations for new hosts while they initialize. + + Must be a non negative integer. + format: int64 + nullable: true + type: integer + new_host_delay: + default: 300 + deprecated: true + description: |- + Time (in seconds) to allow a host to boot and applications + to fully start before starting the evaluation of monitor results. + Should be a non negative integer. + + Use new_group_delay instead. + format: int64 + nullable: true + type: integer + no_data_timeframe: + description: |- + The number of minutes before a monitor notifies after data stops reporting. + Datadog recommends at least 2x the monitor timeframe for query alerts or 2 minutes for service checks. + If omitted, 2x the evaluation timeframe is used for query alerts, and 24 hours is used for service checks. + format: int64 + nullable: true + type: integer + notification_preset_name: + $ref: '#/components/schemas/MonitorOptionsNotificationPresets' + notify_audit: + default: false + description: A Boolean indicating whether tagged users is notified on changes to this monitor. + type: boolean + notify_by: + description: |- + Controls what granularity a monitor alerts on. Only available for monitors with groupings. + For instance, a monitor grouped by `cluster`, `namespace`, and `pod` can be configured to only notify on each + new `cluster` violating the alert conditions by setting `notify_by` to `["cluster"]`. Tags mentioned + in `notify_by` must be a subset of the grouping tags in the query. + For example, a query grouped by `cluster` and `namespace` cannot notify on `region`. + Setting `notify_by` to `["*"]` configures the monitor to notify as a simple-alert. + items: + description: A grouping tag. + type: string + type: array + notify_no_data: + description: A Boolean indicating whether this monitor notifies when data stops reporting. Defaults to `false`. + type: boolean + on_missing_data: + $ref: '#/components/schemas/OnMissingDataOption' + renotify_interval: + default: null + description: |- + The number of minutes after the last notification before a monitor re-notifies on the current status. + It only re-notifies if it’s not resolved. + format: int64 + nullable: true + type: integer + renotify_occurrences: + description: The number of times re-notification messages should be sent on the current status at the provided re-notification interval. + format: int64 + nullable: true + type: integer + renotify_statuses: + description: |- + The types of monitor statuses for which re-notification messages are sent. + Default: **null** if `renotify_interval` is **null**. + If `renotify_interval` is set, defaults to renotify on `Alert` and `No Data`. + items: + $ref: '#/components/schemas/MonitorRenotifyStatusType' + nullable: true + type: array + require_full_window: + description: |- + A Boolean indicating whether this monitor needs a full window of data before it’s evaluated. + We highly recommend you set this to `false` for sparse metrics, + otherwise some evaluations are skipped. Default is false. This setting only applies to + metric monitors. + type: boolean + scheduling_options: + $ref: '#/components/schemas/MonitorOptionsSchedulingOptions' + silenced: + additionalProperties: + description: UTC epoch timestamp in seconds when the downtime for the group expires. + format: int64 + nullable: true + type: integer + deprecated: true + description: Information about the downtime applied to the monitor. Only shows v1 downtimes. + type: object + synthetics_check_id: + deprecated: true + description: ID of the corresponding Synthetic check. + nullable: true + type: string + threshold_windows: + $ref: '#/components/schemas/MonitorThresholdWindowOptions' + thresholds: + $ref: '#/components/schemas/MonitorThresholds' + timeout_h: + default: null + description: The number of hours of the monitor not reporting data before it automatically resolves from a triggered state. The minimum allowed value is 0 hours. The maximum allowed value is 24 hours. + format: int64 + nullable: true + type: integer + variables: + description: List of requests that can be used in the monitor query. **This feature is currently in beta.** + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionQueryDefinition' + type: array + type: object + MonitorOverallStates: + description: The different states your monitor can be in. + enum: + - Alert + - Ignored + - No Data + - OK + - Skipped + - Unknown + - Warn + readOnly: true + type: string + x-enum-varnames: + - ALERT + - IGNORED + - NO_DATA + - OK + - SKIPPED + - UNKNOWN + - WARN + MonitorState: + description: Wrapper object with the different monitor states. + properties: + groups: + additionalProperties: + $ref: '#/components/schemas/MonitorStateGroup' + description: |- + Dictionary where the keys are groups (comma separated lists of tags) and the values are + the list of groups your monitor is broken down on. + type: object + readOnly: true + type: object + MonitorTypeV1: + description: The type of the monitor. For more information about `type`, see the [monitor options](https://docs.datadoghq.com/monitors/guide/monitor_api_options/) docs. + enum: + - composite + - event alert + - log alert + - metric alert + - process alert + - query alert + - rum alert + - service check + - synthetics alert + - trace-analytics alert + - slo alert + - event-v2 alert + - audit alert + - ci-pipelines alert + - ci-tests alert + - error-tracking alert + - database-monitoring alert + - network-performance alert + - cost alert + - data-quality alert + - network-path alert + - data-jobs alert + - llm-observability alert + example: query alert + type: string + x-enum-varnames: + - COMPOSITE + - EVENT_ALERT + - LOG_ALERT + - METRIC_ALERT + - PROCESS_ALERT + - QUERY_ALERT + - RUM_ALERT + - SERVICE_CHECK + - SYNTHETICS_ALERT + - TRACE_ANALYTICS_ALERT + - SLO_ALERT + - EVENT_V2_ALERT + - AUDIT_ALERT + - CI_PIPELINES_ALERT + - CI_TESTS_ALERT + - ERROR_TRACKING_ALERT + - DATABASE_MONITORING_ALERT + - NETWORK_PERFORMANCE_ALERT + - COST_ALERT + - DATA_QUALITY_ALERT + - NETWORK_PATH_ALERT + - DATA_JOBS_ALERT + - LLM_OBSERVABILITY_ALERT + CheckCanDeleteMonitorResponseData: + description: Wrapper object with the list of monitor IDs. + example: {} + properties: + ok: + description: An array of Monitor IDs that can be safely deleted. + items: + description: ID of a monitor that can be safely deleted. + format: int64 + type: integer + type: array + type: object + MonitorGroupSearchResponseCounts: + description: The counts of monitor groups per different criteria. + properties: + status: + $ref: '#/components/schemas/MonitorSearchCount' + type: + $ref: '#/components/schemas/MonitorSearchCount' + readOnly: true + type: object + MonitorGroupSearchResult: + description: A single monitor group search result. + properties: + group: + description: The name of the group. + readOnly: true + type: string + group_tags: + description: The list of tags of the monitor group. + items: + description: One monitor group tag. + readOnly: true + type: string + readOnly: true + type: array + last_nodata_ts: + description: Latest timestamp the monitor group was in NO_DATA state. + format: int64 + readOnly: true + type: integer + last_triggered_ts: + description: Latest timestamp the monitor group triggered. + format: int64 + nullable: true + readOnly: true + type: integer + monitor_id: + description: The ID of the monitor. + format: int64 + readOnly: true + type: integer + monitor_name: + description: The name of the monitor. + readOnly: true + type: string + status: + $ref: '#/components/schemas/MonitorOverallStates' + type: object + MonitorSearchResponseMetadata: + description: Metadata about the response. + properties: + page: + description: The page to start paginating from. + format: int64 + readOnly: true + type: integer + page_count: + description: The number of pages. + format: int64 + readOnly: true + type: integer + per_page: + description: The number of monitors to return per page. + format: int64 + readOnly: true + type: integer + total_count: + description: The total number of monitors. + format: int64 + readOnly: true + type: integer + type: object + MonitorSearchResponseCounts: + description: The counts of monitors per different criteria. + properties: + muted: + $ref: '#/components/schemas/MonitorSearchCount' + status: + $ref: '#/components/schemas/MonitorSearchCount' + tag: + $ref: '#/components/schemas/MonitorSearchCount' + type: + $ref: '#/components/schemas/MonitorSearchCount' + readOnly: true + type: object + MonitorSearchResult: + description: Holds search results. + properties: + classification: + description: Classification of the monitor. + readOnly: true + type: string + creator: + $ref: '#/components/schemas/CreatorV1' + id: + description: ID of the monitor. + format: int64 + readOnly: true + type: integer + last_triggered_ts: + description: Latest timestamp the monitor triggered. + format: int64 + nullable: true + readOnly: true + type: integer + metrics: + description: Metrics used by the monitor. + items: + description: A metric used by the monitor. + readOnly: true + type: string + readOnly: true + type: array + name: + description: The monitor name. + readOnly: true + type: string + notifications: + description: The notification triggered by the monitor. + items: + $ref: '#/components/schemas/MonitorSearchResultNotification' + readOnly: true + type: array + org_id: + description: The ID of the organization. + format: int64 + readOnly: true + type: integer + quality_issues: + description: Quality issues detected with the monitor. + items: + description: A quality issue detected with the monitor. + readOnly: true + type: string + readOnly: true + type: array + query: + description: The monitor query. + example: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: string + scopes: + description: |- + The scope(s) to which the downtime applies, for example `host:app2`. + Provide multiple scopes as a comma-separated list, for example `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes + (that is `env:dev AND env:prod`), NOT any of them. + example: + - host:app2 + - env:dev,env:prod + items: + description: Scope value(s). + readOnly: true + type: string + type: array + status: + $ref: '#/components/schemas/MonitorOverallStates' + tags: + description: Tags associated with the monitor. + items: + description: A tag associated with the monitor. + readOnly: true + type: string + readOnly: true + type: array + type: + $ref: '#/components/schemas/MonitorTypeV1' + type: object + DowntimeChild: + description: |- + The downtime object definition of the active child for the original parent recurring downtime. This + field will only exist on recurring downtimes. + nullable: true + properties: + active: + description: If a scheduled downtime currently exists. + example: true + readOnly: true + type: boolean + canceled: + description: If a scheduled downtime is canceled. + example: 1412799983 + format: int64 + nullable: true + readOnly: true + type: integer + creator_id: + description: User ID of the downtime creator. + example: 123456 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + disabled: + description: If a downtime has been disabled. + example: false + type: boolean + downtime_type: + description: |- + `0` for a downtime applied on `*` or all, + `1` when the downtime is only scoped to hosts, + or `2` when the downtime is scoped to anything but hosts. + example: 2 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + end: + description: |- + POSIX timestamp to end the downtime. If not provided, + the downtime is in effect indefinitely until you cancel it. + example: 1412793983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1626 + format: int64 + readOnly: true + type: integer + message: + description: |- + A message to include with notifications for this downtime. + Email notifications can be sent to specific users by using the same `@username` notation as events. + example: Message on the downtime + nullable: true + type: string + monitor_id: + description: |- + A single monitor to which the downtime applies. + If not provided, the downtime applies to all monitors. + example: 123456 + format: int64 + nullable: true + type: integer + monitor_tags: + description: |- + A comma-separated list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match ALL provided monitor tags. + For example, `service:postgres` **AND** `team:frontend`. + example: + - '*' + items: + description: A monitor tag. + type: string + type: array + mute_first_recovery_notification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + notify_end_states: + $ref: '#/components/schemas/NotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/NotifyEndTypes' + parent_id: + description: ID of the parent Downtime. + example: 123 + format: int64 + nullable: true + type: integer + recurrence: + $ref: '#/components/schemas/DowntimeRecurrence' + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: + - env:staging + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: |- + POSIX timestamp to start the downtime. + If not provided, the downtime starts the moment it is created. + example: 1412792983 + format: int64 + type: integer + timezone: + description: The timezone in which to display the downtime's start and end times in Datadog applications. + example: America/New_York + type: string + updater_id: + description: ID of the last user that updated the downtime. + example: 123456 + format: int32 + maximum: 2147483647 + nullable: true + readOnly: true + type: integer + readOnly: true + type: object + NotifyEndStates: + default: + - alert + - no data + - warn + description: States for which `notify_end_types` sends out notifications for. + example: + - alert + - no data + - warn + items: + $ref: '#/components/schemas/NotifyEndState' + type: array + NotifyEndTypes: + default: + - expired + description: |- + If set, notifies if a monitor is in an alert-worthy state (`ALERT`, `WARNING`, or `NO DATA`) + when this downtime expires or is canceled. Applied to monitors that change states during + the downtime (such as from `OK` to `ALERT`, `WARNING`, or `NO DATA`), and to monitors that + already have an alert-worthy state when downtime begins. + example: + - canceled + - expired + items: + $ref: '#/components/schemas/NotifyEndType' + type: array + DowntimeRecurrence: + description: An object defining the recurrence of the downtime. + nullable: true + properties: + period: + description: |- + How often to repeat as an integer. + For example, to repeat every 3 days, select a type of `days` and a period of `3`. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + rrule: + description: |- + The `RRULE` standard for defining recurring events (**requires to set "type" to rrule**) + For example, to have a recurring event on the first day of each month, set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to `1`. + Most common `rrule` options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) are supported. + + **Note**: Attributes specifying the duration in `RRULE` are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). + More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api) + example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 + type: string + type: + description: The type of recurrence. Choose from `days`, `weeks`, `months`, `years`, `rrule`. + example: weeks + type: string + until_date: + description: |- + The date at which the recurrence should end as a POSIX timestamp. + `until_occurences` and `until_date` are mutually exclusive. + example: 1447786293 + format: int64 + nullable: true + type: integer + until_occurrences: + description: |- + How many times the downtime is rescheduled. + `until_occurences` and `until_date` are mutually exclusive. + example: 2 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + week_days: + description: |- + A list of week days to repeat on. Choose from `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. + Only applicable when type is weeks. First letter must be capitalized. + example: + - Mon + - Tue + items: + description: A day of the week, formatted as `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. + type: string + nullable: true + type: array + type: object + SyntheticsBatchDetailsData: + description: Wrapper object that contains the details of a batch. + properties: + metadata: + $ref: '#/components/schemas/SyntheticsCIBatchMetadata' + results: + description: List of results for the batch. + items: + $ref: '#/components/schemas/SyntheticsBatchResult' + type: array + status: + $ref: '#/components/schemas/SyntheticsBatchStatus' + type: object + SyntheticsLocation: + description: |- + Synthetic location that can be used when creating or editing a + test. + properties: + id: + description: Unique identifier of the location. + type: string + name: + description: Name of the location. + type: string + type: object + SyntheticsPrivateLocationMetadata: + description: Object containing metadata about the private location. + properties: + restricted_roles: + $ref: '#/components/schemas/SyntheticsRestrictedRoles' + type: object + SyntheticsPrivateLocationSecrets: + description: Secrets for the private location. Only present in the response when creating the private location. + properties: + authentication: + $ref: '#/components/schemas/SyntheticsPrivateLocationSecretsAuthentication' + config_decryption: + $ref: '#/components/schemas/SyntheticsPrivateLocationSecretsConfigDecryption' + readOnly: true + type: object + SyntheticsPrivateLocationCreationResponseResultEncryption: + description: Public key for the result encryption. + properties: + id: + description: Fingerprint for the encryption key. + type: string + key: + description: Public key for result encryption. + type: string + type: object + SyntheticsAPITestConfig: + description: Configuration object for a Synthetic API test. + example: + assertions: + - operator: lessThan + target: 1000 + type: responseTime + request: + method: GET + url: https://example.com + properties: + assertions: + default: [] + description: Array of assertions used for the test. Required for single API tests. + example: + - operator: lessThan + target: 1000 + type: responseTime + items: + $ref: '#/components/schemas/SyntheticsAssertion' + type: array + configVariables: + description: Array of variables used for the test. + items: + $ref: '#/components/schemas/SyntheticsConfigVariable' + type: array + request: + $ref: '#/components/schemas/SyntheticsTestRequest' + steps: + description: When the test subtype is `multi`, the steps of the test. + items: + $ref: '#/components/schemas/SyntheticsAPIStep' + type: array + variablesFromScript: + description: Variables defined from JavaScript code. + example: dd.variable.set("FOO", "foo") + type: string + type: object + SyntheticsTestOptionsV1: + description: Object describing the extra options for a Synthetic test. + properties: + accept_self_signed: + description: |- + For SSL tests, whether or not the test should allow self signed + certificates. + type: boolean + allow_insecure: + description: Allows loading insecure content for an HTTP request in an API test. + type: boolean + blockedRequestPatterns: + description: Array of URL patterns to block. + items: + description: A URL pattern to block during the Synthetic test. + type: string + type: array + captureNetworkPayloads: + description: Capture HTTP request/response headers and bodies for Fetch/XHR calls made during browser tests. + type: boolean + checkCertificateRevocation: + description: For SSL tests, whether or not the test should fail on revoked certificate in stapled OCSP. + type: boolean + ci: + $ref: '#/components/schemas/SyntheticsTestCiOptions' + device_ids: + description: For browser test, array with the different device IDs used to run the test. + items: + $ref: '#/components/schemas/SyntheticsDeviceID' + type: array + disableAiaIntermediateFetching: + description: For SSL tests, whether or not the test should disable fetching intermediate certificates from AIA. + type: boolean + disableCors: + description: Whether or not to disable CORS mechanism. + type: boolean + disableCsp: + description: Disable Content Security Policy for browser tests. + type: boolean + enableProfiling: + description: Enable profiling for browser tests. + type: boolean + enableSecurityTesting: + deprecated: true + description: Enable security testing for browser tests. Security testing is not available anymore. This field is deprecated and won't be used. + type: boolean + follow_redirects: + description: For API HTTP test, whether or not the test should follow redirects. + type: boolean + httpVersion: + $ref: '#/components/schemas/SyntheticsTestOptionsHTTPVersion' + ignoreServerCertificateError: + description: Ignore server certificate error for browser tests. + type: boolean + ignore_certificate_validation: + description: For SSL tests, whether the test should ignore certificate validation. + type: boolean + initialNavigationTimeout: + description: Timeout before declaring the initial step as failed (in seconds) for browser tests. + format: int64 + type: integer + min_failure_duration: + description: Minimum amount of time in failure required to trigger an alert. + format: int64 + type: integer + min_location_failed: + description: |- + Minimum number of locations in failure required to trigger + an alert. + format: int64 + type: integer + monitor_name: + description: The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs. + type: string + monitor_options: + $ref: '#/components/schemas/SyntheticsTestOptionsMonitorOptions' + monitor_priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int32 + maximum: 5 + minimum: 1 + type: integer + noScreenshot: + description: Prevents saving screenshots of the steps. + type: boolean + restricted_roles: + $ref: '#/components/schemas/SyntheticsRestrictedRoles' + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + rumSettings: + $ref: '#/components/schemas/SyntheticsBrowserTestRumSettings' + scheduling: + $ref: '#/components/schemas/SyntheticsTestOptionsScheduling' + tick_every: + description: The frequency at which to run the Synthetic test (in seconds). + format: int64 + maximum: 604800 + minimum: 30 + type: integer + type: object + SyntheticsTestPauseStatus: + description: |- + Define whether you want to start (`live`) or pause (`paused`) a + Synthetic test. + enum: + - live + - paused + example: live + type: string + x-enum-varnames: + - LIVE + - PAUSED + SyntheticsTestDetailsSubType: + description: |- + The subtype of the Synthetic API test, `http`, `ssl`, `tcp`, + `dns`, `icmp`, `udp`, `websocket`, `grpc` or `multi`. + enum: + - http + - ssl + - tcp + - dns + - multi + - icmp + - udp + - websocket + - grpc + example: http + type: string + x-enum-varnames: + - HTTP + - SSL + - TCP + - DNS + - MULTI + - ICMP + - UDP + - WEBSOCKET + - GRPC + SyntheticsAPITestType: + default: api + description: Type of the Synthetic test, `api`. + enum: + - api + example: api + type: string + x-enum-varnames: + - API + SyntheticsBrowserTestConfig: + description: Configuration object for a Synthetic browser test. + properties: + assertions: + default: [] + description: Array of assertions used for the test. + example: [] + items: + $ref: '#/components/schemas/SyntheticsAssertion' + type: array + configVariables: + description: Array of variables used for the test. + items: + $ref: '#/components/schemas/SyntheticsConfigVariable' + type: array + request: + $ref: '#/components/schemas/SyntheticsTestRequest' + setCookie: + description: Cookies to be used for the request, using the [Set-Cookie](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie) syntax. + type: string + variables: + description: Array of variables used for the test steps. + items: + $ref: '#/components/schemas/SyntheticsBrowserVariable' + type: array + required: + - request + - assertions + type: object + SyntheticsStep: + description: The steps used in a Synthetic browser test. + properties: + allowFailure: + description: A boolean set to allow this step to fail. + type: boolean + alwaysExecute: + description: A boolean set to always execute this step even if the previous step failed or was skipped. + type: boolean + exitIfSucceed: + description: A boolean set to exit the test if the step succeeds. + type: boolean + isCritical: + description: A boolean to use in addition to `allowFailure` to determine if the test should be marked as failed when the step fails. + type: boolean + name: + description: The name of the step. + type: string + noScreenshot: + description: A boolean set to skip taking a screenshot for the step. + type: boolean + params: + description: The parameters of the step. (opaque JSON object) + type: string + public_id: + description: The public ID of the step. + type: string + timeout: + description: The time before declaring a step failed. + format: int64 + type: integer + type: + $ref: '#/components/schemas/SyntheticsStepType' + type: object + SyntheticsBrowserTestType: + default: browser + description: Type of the Synthetic test, `browser`. + enum: + - browser + example: browser + type: string + x-enum-varnames: + - BROWSER + SyntheticsBrowserTestResultShort: + description: Object with the results of a single Synthetic browser test. + properties: + check_time: + description: Last time the browser test was performed. + format: double + type: number + probe_dc: + description: Location from which the Browser test was performed. + type: string + result: + $ref: '#/components/schemas/SyntheticsBrowserTestResultShortResult' + result_id: + description: ID of the browser test result. + type: string + status: + $ref: '#/components/schemas/SyntheticsTestMonitorStatus' + type: object + SyntheticsBrowserTestResultFullCheck: + description: Object describing the browser test configuration. + properties: + config: + $ref: '#/components/schemas/SyntheticsTestConfig' + required: + - config + type: object + SyntheticsBrowserTestResultData: + description: Object containing results for your Synthetic browser test. + properties: + browserType: + description: Type of browser device used for the browser test. + type: string + browserVersion: + description: Browser version used for the browser test. + type: string + device: + $ref: '#/components/schemas/SyntheticsDevice' + duration: + description: Global duration in second of the browser test. + format: double + type: number + error: + description: Error returned for the browser test. + type: string + failure: + $ref: '#/components/schemas/SyntheticsBrowserTestResultFailure' + passed: + description: Whether or not the browser test was conducted. + type: boolean + receivedEmailCount: + description: The amount of email received during the browser test. + format: int64 + type: integer + startUrl: + description: Starting URL for the browser test. + type: string + stepDetails: + description: Array containing the different browser test steps. + items: + $ref: '#/components/schemas/SyntheticsStepDetail' + type: array + thumbnailsBucketKey: + description: Whether or not a thumbnail is associated with the browser test. + type: boolean + timeToInteractive: + description: |- + Time in second to wait before the browser test starts after + reaching the start URL. + format: double + type: number + type: object + SyntheticsTestMonitorStatus: + description: |- + The status of your Synthetic monitor. + * `O` for not triggered + * `1` for triggered + * `2` for no data + enum: + - 0 + - 1 + - 2 + format: int64 + type: integer + x-enum-varnames: + - UNTRIGGERED + - TRIGGERED + - NO_DATA + SyntheticsDeletedTest: + description: |- + Object containing a deleted Synthetic test ID with the associated + deletion timestamp. + properties: + deleted_at: + description: Deletion timestamp of the Synthetic test ID. + format: date-time + type: string + public_id: + description: The Synthetic test ID deleted. + type: string + type: object + SyntheticsMobileTestConfig: + description: Configuration object for a Synthetic mobile test. + properties: + initialApplicationArguments: + $ref: '#/components/schemas/SyntheticsMobileTestInitialApplicationArguments' + variables: + description: Array of variables used for the test steps. + items: + $ref: '#/components/schemas/SyntheticsConfigVariable' + type: array + type: object + SyntheticsDeviceID: + description: The device ID. + example: chrome.laptop_large + type: string + SyntheticsMobileTestOptions: + description: Object describing the extra options for a Synthetic test. + properties: + allowApplicationCrash: + description: A boolean to set if an application crash would mark the test as failed. + type: boolean + bindings: + description: Array of bindings used for the mobile test. + items: + $ref: '#/components/schemas/SyntheticsTestRestrictionPolicyBinding' + type: array + ci: + $ref: '#/components/schemas/SyntheticsTestCiOptions' + defaultStepTimeout: + description: The default timeout for steps in the test (in seconds). + format: int32 + maximum: 300 + minimum: 1 + type: integer + device_ids: + description: For mobile test, array with the different device IDs used to run the test. + example: + - synthetics:mobile:device:apple_ipad_10th_gen_2022_ios_16 + items: + $ref: '#/components/schemas/SyntheticsDeviceID' + type: array + disableAutoAcceptAlert: + description: A boolean to disable auto accepting alerts. + type: boolean + min_failure_duration: + description: Minimum amount of time in failure required to trigger an alert. + format: int64 + maximum: 7200 + minimum: 0 + type: integer + mobileApplication: + $ref: '#/components/schemas/SyntheticsMobileTestsMobileApplication' + monitor_name: + description: The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs. + type: string + monitor_options: + $ref: '#/components/schemas/SyntheticsTestOptionsMonitorOptions' + monitor_priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int32 + maximum: 5 + minimum: 1 + type: integer + noScreenshot: + description: A boolean set to not take a screenshot for the step. + type: boolean + restricted_roles: + $ref: '#/components/schemas/SyntheticsRestrictedRoles' + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + scheduling: + $ref: '#/components/schemas/SyntheticsTestOptionsScheduling' + tick_every: + description: The frequency at which to run the Synthetic test (in seconds). + example: 300 + format: int64 + maximum: 604800 + minimum: 300 + type: integer + verbosity: + description: The level of verbosity for the mobile test. This field can not be set by a user. + format: int32 + maximum: 5 + minimum: 0 + type: integer + required: + - device_ids + - tick_every + - mobileApplication + type: object + SyntheticsMobileStep: + description: The steps used in a Synthetic mobile test. + properties: + allowFailure: + description: A boolean set to allow this step to fail. + type: boolean + hasNewStepElement: + description: A boolean set to determine if the step has a new step element. + type: boolean + isCritical: + description: A boolean to use in addition to `allowFailure` to determine if the test should be marked as failed when the step fails. + type: boolean + name: + description: The name of the step. + example: '' + maxLength: 1500 + type: string + noScreenshot: + description: A boolean set to not take a screenshot for the step. + type: boolean + params: + $ref: '#/components/schemas/SyntheticsMobileStepParams' + publicId: + description: The public ID of the step. + example: pub-lic-id0 + type: string + timeout: + description: The time before declaring a step failed. + format: int64 + type: integer + type: + $ref: '#/components/schemas/SyntheticsMobileStepType' + required: + - name + - params + - type + type: object + SyntheticsMobileTestType: + default: mobile + description: Type of the Synthetic test, `mobile`. + enum: + - mobile + example: mobile + type: string + x-enum-varnames: + - MOBILE + SyntheticsTriggerTest: + description: Test configuration for Synthetics + properties: + metadata: + $ref: '#/components/schemas/SyntheticsCIBatchMetadata' + public_id: + description: The public ID of the Synthetic test to trigger. + example: aaa-aaa-aaa + type: string + required: + - public_id + type: object + SyntheticsTriggerCITestLocation: + description: Synthetic location. + properties: + id: + description: Unique identifier of the location. + format: int64 + type: integer + name: + description: Name of the location. + type: string + type: object + SyntheticsTriggerCITestRunResult: + description: Information about a single test run. + properties: + device: + $ref: '#/components/schemas/SyntheticsDeviceID' + location: + description: The location ID of the test run. + format: int64 + type: integer + public_id: + description: The public ID of the Synthetic test. + type: string + result_id: + description: ID of the result. + type: string + type: object + SyntheticsCITest: + description: Configuration for Continuous Testing. + properties: + allowInsecureCertificates: + description: Disable certificate checks in API tests. + type: boolean + basicAuth: + $ref: '#/components/schemas/SyntheticsBasicAuth' + body: + description: Body to include in the test. + type: string + bodyType: + description: Type of the data sent in a Synthetic API test. + type: string + cookies: + description: Cookies for the request. + type: string + deviceIds: + description: For browser test, array with the different device IDs used to run the test. + items: + $ref: '#/components/schemas/SyntheticsDeviceID' + type: array + followRedirects: + description: For API HTTP test, whether or not the test should follow redirects. + type: boolean + headers: + $ref: '#/components/schemas/SyntheticsTestHeaders' + locations: + description: Array of locations used to run the test. + example: + - aws:eu-west-3 + items: + description: A location from which the test was run. + type: string + type: array + metadata: + $ref: '#/components/schemas/SyntheticsCIBatchMetadata' + public_id: + description: The public ID of the Synthetic test to trigger. + example: aaa-aaa-aaa + type: string + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + startUrl: + description: Starting URL for the browser test. + type: string + variables: + additionalProperties: + description: A single variable. + type: string + description: Variables to replace in the test. + type: object + version: + description: The version number of the Synthetic test version to trigger. + format: int64 + type: integer + required: + - public_id + type: object + SyntheticsUptime: + description: Object containing the uptime information. + properties: + errors: + description: An array of error objects returned while querying the history data for the service level objective. + items: + $ref: '#/components/schemas/SLOHistoryResponseErrorWithType' + nullable: true + type: array + group: + description: The location name + example: name + type: string + history: + description: |- + The state transition history for the monitor, represented as an array of + pairs. Each pair is an array where the first element is the transition timestamp + in Unix epoch format (integer) and the second element is the state (integer). + For the state, an integer value of `0` indicates uptime, `1` indicates downtime, + and `2` indicates no data. + example: + - - 1579212382 + - 0 + items: + description: An array of transitions + example: + - 1579212382 + - 0 + items: + description: A timeseries data point which is a tuple of (timestamp, value). + format: double + type: number + maxItems: 2 + minItems: 2 + type: array + type: array + span_precision: + description: The number of decimal places to which the SLI value is accurate for the given from-to timestamps. + example: 2 + format: double + type: number + uptime: + description: The overall uptime. + example: 99.99 + format: double + type: number + type: object + SyntheticsTestConfig: + description: Configuration object for a Synthetic test. + properties: + assertions: + default: [] + description: Array of assertions used for the test. Required for single API tests. + example: [] + items: + $ref: '#/components/schemas/SyntheticsAssertion' + type: array + configVariables: + description: Array of variables used for the test. + items: + $ref: '#/components/schemas/SyntheticsConfigVariable' + type: array + request: + $ref: '#/components/schemas/SyntheticsTestRequest' + variables: + description: Browser tests only - array of variables used for the test steps. + items: + $ref: '#/components/schemas/SyntheticsBrowserVariable' + type: array + type: object + SyntheticsTestDetailsType: + description: Type of the Synthetic test. + enum: + - api + - browser + - mobile + - network + type: string + x-enum-varnames: + - API + - BROWSER + - MOBILE + - NETWORK + SyntheticsPatchTestOperation: + description: A single [JSON Patch](https://jsonpatch.com) operation to perform on the test + properties: + op: + $ref: '#/components/schemas/SyntheticsPatchTestOperationName' + path: + description: The path to the value to modify + example: /name + type: string + value: + description: A value to use in a [JSON Patch](https://jsonpatch.com) operation + example: New Test Name + type: object + SyntheticsAPITestResultShort: + description: Object with the results of a single Synthetic API test. + properties: + check_time: + description: Last time the API test was performed. + format: double + type: number + probe_dc: + description: Location from which the API test was performed. + type: string + result: + $ref: '#/components/schemas/SyntheticsAPITestResultShortResult' + result_id: + description: ID of the API test result. + type: string + status: + $ref: '#/components/schemas/SyntheticsTestMonitorStatus' + type: object + SyntheticsAPITestResultFullCheck: + description: Object describing the API test configuration. + properties: + config: + $ref: '#/components/schemas/SyntheticsTestConfig' + required: + - config + type: object + SyntheticsAPITestResultData: + description: Object containing results for your Synthetic API test. + properties: + cert: + $ref: '#/components/schemas/SyntheticsSSLCertificate' + eventType: + $ref: '#/components/schemas/SyntheticsTestProcessStatus' + failure: + $ref: '#/components/schemas/SyntheticsApiTestResultFailure' + httpStatusCode: + description: The API test HTTP status code. + format: int64 + type: integer + requestHeaders: + additionalProperties: + description: Requested request header. (opaque JSON object) + type: string + description: Request header object used for the API test. + type: object + responseBody: + description: Response body returned for the API test. + type: string + responseHeaders: + additionalProperties: + description: Returned request header. + description: Response headers returned for the API test. + type: object + responseSize: + description: Global size in byte of the API test response. + format: int64 + type: integer + timings: + $ref: '#/components/schemas/SyntheticsTiming' + type: object + SyntheticsGlobalVariableAttributes: + description: Attributes of the global variable. + properties: + restricted_roles: + $ref: '#/components/schemas/SyntheticsRestrictedRoles' + type: object + SyntheticsGlobalVariableParseTestOptions: + description: Parser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with `parse_test_public_id`. + properties: + field: + description: When type is `http_header`, name of the header to use to extract the value. + example: content-type + type: string + localVariableName: + description: When type is `local_variable`, name of the local variable to use to extract the value. + example: LOCAL_VARIABLE + type: string + parser: + $ref: '#/components/schemas/SyntheticsVariableParser' + type: + $ref: '#/components/schemas/SyntheticsGlobalVariableParseTestOptionsType' + required: + - type + type: object + SyntheticsGlobalVariableValue: + description: Value of the global variable. + example: + secure: true + value: value + properties: + options: + $ref: '#/components/schemas/SyntheticsGlobalVariableOptions' + secure: + description: Determines if the value of the variable is hidden. + type: boolean + value: + description: |- + Value of the global variable. When reading a global variable, + the value will not be present if the variable is hidden with the `secure` property. + example: example-value + type: string + type: object + GetDataObservabilityMonitorRunStatusResponseAttributes: + description: The attributes of a data observability monitor run status response. + properties: + error_message: + description: Error message describing why the monitor run failed. Only present when status is error. + example: run completed but produced no metric data + type: string + status: + $ref: '#/components/schemas/DataObservabilityMonitorRunStatus' + required: + - status + type: object + DataObservabilityMonitorRunType: + default: monitor_run + description: The JSON:API resource type for a data observability monitor run. + enum: + - monitor_run + example: monitor_run + type: string + x-enum-varnames: + - MONITOR_RUN + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + MonitorNotificationRuleResponseAttributes: + additionalProperties: {} + description: Attributes of the monitor notification rule. + properties: + bundle_config: + $ref: '#/components/schemas/MonitorNotificationRuleBundleConfig' + conditional_recipients: + $ref: '#/components/schemas/MonitorNotificationRuleConditionalRecipients' + created: + description: Creation time of the monitor notification rule. + example: '2020-01-02T03:04:00.000Z' + format: date-time + type: string + filter: + $ref: '#/components/schemas/MonitorNotificationRuleFilter' + modified: + description: Time the monitor notification rule was last modified. + example: '2020-01-02T03:04:00.000Z' + format: date-time + type: string + name: + $ref: '#/components/schemas/MonitorNotificationRuleName' + recipients: + $ref: '#/components/schemas/MonitorNotificationRuleRecipients' + type: object + MonitorNotificationRuleId: + description: The ID of the monitor notification rule. + example: 00000000-0000-1234-0000-000000000000 + type: string + MonitorNotificationRuleRelationships: + description: All relationships associated with monitor notification rule. + properties: + created_by: + $ref: '#/components/schemas/MonitorNotificationRuleRelationshipsCreatedBy' + type: object + MonitorNotificationRuleResourceType: + default: monitor-notification-rule + description: Monitor notification rule resource type. + enum: + - monitor-notification-rule + example: monitor-notification-rule + type: string + x-enum-varnames: + - MONITOR_NOTIFICATION_RULE + User: + description: User object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + MonitorNotificationRuleAttributes: + additionalProperties: false + description: Attributes of the monitor notification rule. + properties: + bundle_config: + $ref: '#/components/schemas/MonitorNotificationRuleBundleConfig' + conditional_recipients: + $ref: '#/components/schemas/MonitorNotificationRuleConditionalRecipients' + filter: + $ref: '#/components/schemas/MonitorNotificationRuleFilter' + name: + $ref: '#/components/schemas/MonitorNotificationRuleName' + recipients: + $ref: '#/components/schemas/MonitorNotificationRuleRecipients' + required: + - name + type: object + MonitorConfigPolicyAttributeResponse: + description: Policy and policy type for a monitor configuration policy. + properties: + policy: + $ref: '#/components/schemas/MonitorConfigPolicyPolicy' + policy_type: + $ref: '#/components/schemas/MonitorConfigPolicyType' + type: object + MonitorConfigPolicyResourceType: + default: monitor-config-policy + description: Monitor configuration policy resource type. + enum: + - monitor-config-policy + example: monitor-config-policy + type: string + x-enum-varnames: + - MONITOR_CONFIG_POLICY + MonitorConfigPolicyAttributeCreateRequest: + description: Policy and policy type for a monitor configuration policy. + properties: + policy: + $ref: '#/components/schemas/MonitorConfigPolicyPolicyCreateRequest' + policy_type: + $ref: '#/components/schemas/MonitorConfigPolicyType' + required: + - policy_type + - policy + type: object + MonitorConfigPolicyAttributeEditRequest: + description: Policy and policy type for a monitor configuration policy. + properties: + policy: + $ref: '#/components/schemas/MonitorConfigPolicyPolicy' + policy_type: + $ref: '#/components/schemas/MonitorConfigPolicyType' + required: + - policy_type + - policy + type: object + MonitorUserTemplateResponseAttributes: + additionalProperties: {} + description: Attributes for a monitor user template. + properties: + created: + $ref: '#/components/schemas/MonitorUserTemplateCreated' + description: + $ref: '#/components/schemas/MonitorUserTemplateDescription' + modified: + $ref: '#/components/schemas/MonitorUserTemplateModified' + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + type: object + tags: + $ref: '#/components/schemas/MonitorUserTemplateTags' + template_variables: + $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' + title: + $ref: '#/components/schemas/MonitorUserTemplateTitle' + version: + $ref: '#/components/schemas/MonitorUserTemplateVersion' + type: object + MonitorUserTemplateId: + description: The unique identifier. + example: 00000000-0000-1234-0000-000000000000 + type: string + MonitorUserTemplateResourceType: + default: monitor-user-template + description: Monitor user template resource type. + enum: + - monitor-user-template + example: monitor-user-template + type: string + x-enum-varnames: + - MONITOR_USER_TEMPLATE + MonitorUserTemplateRequestAttributes: + additionalProperties: false + description: Attributes for a monitor user template. + properties: + description: + $ref: '#/components/schemas/MonitorUserTemplateDescription' + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + type: object + tags: + $ref: '#/components/schemas/MonitorUserTemplateTags' + template_variables: + $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' + title: + $ref: '#/components/schemas/MonitorUserTemplateTitle' + required: + - title + - monitor_definition + - tags + type: object + MonitorUserTemplate: + additionalProperties: {} + description: A monitor user template object. + properties: + created: + $ref: '#/components/schemas/MonitorUserTemplateCreated' + description: + $ref: '#/components/schemas/MonitorUserTemplateDescription' + modified: + $ref: '#/components/schemas/MonitorUserTemplateModified' + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + type: object + tags: + $ref: '#/components/schemas/MonitorUserTemplateTags' + template_variables: + $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' + title: + $ref: '#/components/schemas/MonitorUserTemplateTitle' + version: + $ref: '#/components/schemas/MonitorUserTemplateVersion' + versions: + description: All versions of the monitor user template. + items: + $ref: '#/components/schemas/SimpleMonitorUserTemplate' + type: array + type: object + MonitorDowntimeMatchResponseAttributes: + description: Downtime match details. + properties: + end: + description: The end of the downtime. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true + type: string + groups: + description: An array of groups associated with the downtime. + example: + - service:postgres + - team:frontend + items: + description: An array of groups. + example: service:postgres + type: string + type: array + scope: + $ref: '#/components/schemas/DowntimeScope' + start: + description: The start of the downtime. + example: '2020-01-02T03:04:00.000Z' + format: date-time + type: string + type: object + MonitorDowntimeMatchResourceType: + default: downtime_match + description: Monitor Downtime Match resource type. + enum: + - downtime_match + example: downtime_match + type: string + x-enum-varnames: + - DOWNTIME_MATCH + DowntimeMetaPage: + description: Object containing the total filtered count. + properties: + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer + type: object + SyntheticsApiMultistepSubtestAttributes: + description: Attributes of a Synthetic API multistep subtest. + properties: + name: + description: Name of the subtest. + example: My API Test + type: string + public_id: + description: The public ID of the subtest. + example: abc-def-123 + type: string + type: object + SyntheticsApiMultistepSubtestType: + default: subtest + description: Type of the subtest resource. + enum: + - subtest + example: subtest + type: string + x-enum-varnames: + - SUBTEST + SyntheticsApiMultistepParentTestAttributes: + description: Attributes of a parent API multistep test. + properties: + child_name: + description: The name of the child subtest. + example: My API Subtest + type: string + child_public_id: + description: The public ID of the child subtest. + example: xyz-uvw-789 + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + type: integer + name: + description: Name of the parent test. + example: My Multistep Test + type: string + overall_state: + description: The overall state of the parent test. + example: 0 + format: int64 + type: integer + overall_state_modified: + description: Timestamp of when the overall state was last modified. + example: '2024-01-01T00:00:00+00:00' + type: string + public_id: + description: The public ID of the parent test. + example: abc-def-123 + type: string + type: object + SyntheticsApiMultistepParentTestType: + default: parent_test + description: Type of the parent test resource. + enum: + - parent_test + example: parent_test + type: string + x-enum-varnames: + - PARENT_TEST + SyntheticsDowntimeDataAttributesRequest: + description: Attributes for creating or updating a Synthetics downtime. + properties: + description: + description: An optional description of the downtime. + example: Scheduled weekly maintenance window. + type: string + isEnabled: + description: Whether the downtime is enabled. + example: true + type: boolean + name: + description: The name of the downtime. + example: Weekly maintenance + type: string + tags: + $ref: '#/components/schemas/SyntheticsDowntimeTags' + testIds: + $ref: '#/components/schemas/SyntheticsDowntimeTestIds' + timeSlots: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotRequests' + required: + - name + - isEnabled + - timeSlots + - testIds + type: object + SyntheticsDowntimeResourceType: + description: The resource type for a Synthetics downtime. + enum: + - downtime + example: downtime + type: string + x-enum-varnames: + - DOWNTIME + SyntheticsDowntimeDataAttributesResponse: + description: Attributes of a Synthetics downtime response object. + properties: + createdAt: + description: The timestamp when the downtime was created. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + createdBy: + description: The UUID of the user who created the downtime. + example: 00000000-0000-0000-0000-000000000003 + type: string + createdByName: + description: The display name of the user who created the downtime. + example: Jane Doe + type: string + description: + description: The description of the downtime. + example: Scheduled weekly maintenance window. + type: string + isEnabled: + description: Whether the downtime is enabled. + example: true + type: boolean + name: + description: The name of the downtime. + example: Weekly maintenance + type: string + tags: + $ref: '#/components/schemas/SyntheticsDowntimeTags' + testIds: + $ref: '#/components/schemas/SyntheticsDowntimeTestIds' + timeSlots: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotResponses' + updatedAt: + description: The timestamp when the downtime was last updated. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + updatedBy: + description: The UUID of the user who last updated the downtime. + example: 00000000-0000-0000-0000-000000000003 + type: string + updatedByName: + description: The display name of the user who last updated the downtime. + example: Jane Doe + type: string + required: + - name + - description + - isEnabled + - createdBy + - createdByName + - createdAt + - updatedBy + - updatedByName + - updatedAt + - timeSlots + - testIds + - tags + type: object + OnDemandConcurrencyCapType: + description: On-demand concurrency cap type. + enum: + - on_demand_concurrency_cap + type: string + x-enum-varnames: + - ON_DEMAND_CONCURRENCY_CAP + SyntheticsSuite: + description: Object containing details about a Synthetic suite. + properties: + message: + description: Notification message associated with the suite. + example: Notification message + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the suite. + example: Example suite name + type: string + options: + $ref: '#/components/schemas/SyntheticsSuiteOptions' + public_id: + description: The public ID for the test. + example: 123-abc-456 + readOnly: true + type: string + tags: + description: Array of tags attached to the suite. + example: + - env:production + items: + description: A tag attached to the suite. + type: string + type: array + tests: + description: Array of Synthetic tests included in the suite. + items: + $ref: '#/components/schemas/SyntheticsSuiteTest' + type: array + type: + $ref: '#/components/schemas/SyntheticsSuiteType' + required: + - name + - type + - tests + - options + type: object + SyntheticsSuiteTypes: + default: suites + description: Type for the Synthetics suites responses, `suites`. + enum: + - suites + example: suites + type: string + x-enum-varnames: + - SUITES + DeletedSuitesRequestDeleteAttributes: + description: Attributes for a bulk delete Synthetic test suites request. + properties: + force_delete_dependencies: + description: Whether to force deletion of suites that have dependent resources. + type: boolean + public_ids: + description: List of public IDs of the Synthetic test suites to delete. + example: + - '' + items: + description: The public ID of a Synthetic test suite to delete. + type: string + type: array + required: + - public_ids + type: object + DeletedSuitesRequestType: + default: delete_suites_request + description: Type for the bulk delete Synthetic suites request, `delete_suites_request`. + enum: + - delete_suites_request + example: delete_suites_request + type: string + x-enum-varnames: + - DELETE_SUITES_REQUEST + DeletedSuiteResponseDataAttributes: + description: Attributes of a deleted Synthetic test suite, including deletion timestamp and public ID. + properties: + deleted_at: + description: Deletion timestamp of the Synthetic suite ID. + type: string + public_id: + description: The Synthetic suite ID deleted. + type: string + type: object + SyntheticsSuiteSearchResponseDataAttributes: + description: Synthetics suite search response data attributes + properties: + suites: + description: List of Synthetic suites matching the search query. + items: + $ref: '#/components/schemas/SyntheticsSuite' + type: array + total: + description: Total number of Synthetic suites matching the search query. + format: int32 + maximum: 2147483647 + type: integer + type: object + SuiteSearchResponseType: + default: suites_search + description: Type for the Synthetics suites search response, `suites_search`. + enum: + - suites_search + example: suites_search + type: string + x-enum-varnames: + - SUITES_SEARCH + SuiteJsonPatchRequestDataAttributes: + description: Attributes for a JSON Patch request on a Synthetic test suite. + properties: + json_patch: + description: JSON Patch operations following RFC 6902. + items: + $ref: '#/components/schemas/JsonPatchOperation' + type: array + type: object + SuiteJsonPatchType: + default: suites_json_patch + description: Type for a JSON Patch request on a Synthetic test suite, `suites_json_patch`. + enum: + - suites_json_patch + example: suites_json_patch + type: string + x-enum-varnames: + - SUITES_JSON_PATCH + SyntheticsTestResultSummaryAttributes: + description: Attributes of a Synthetic test result summary. + properties: + device: + $ref: '#/components/schemas/SyntheticsTestResultDevice' + execution_info: + $ref: '#/components/schemas/SyntheticsTestResultExecutionInfo' + finished_at: + description: Timestamp of when the test finished (in milliseconds). + format: int64 + type: integer + location: + $ref: '#/components/schemas/SyntheticsTestResultLocation' + run_type: + $ref: '#/components/schemas/SyntheticsTestResultRunType' + started_at: + description: Timestamp of when the test started (in milliseconds). + format: int64 + type: integer + status: + $ref: '#/components/schemas/SyntheticsTestResultStatus' + steps_info: + $ref: '#/components/schemas/SyntheticsTestResultStepsInfo' + test_sub_type: + $ref: '#/components/schemas/SyntheticsTestSubType' + test_type: + $ref: '#/components/schemas/SyntheticsTestType' + type: object + SyntheticsTestResultRelationships: + description: Relationships for a Synthetic test result. + properties: + test: + $ref: '#/components/schemas/SyntheticsTestResultRelationshipTest' + type: object + SyntheticsTestResultSummaryType: + default: result_summary + description: Type of the Synthetic test result summary resource, `result_summary`. + enum: + - result_summary + example: result_summary + type: string + x-enum-varnames: + - RESULT_SUMMARY + SyntheticsTestResultAttributes: + description: Attributes of a Synthetic test result. + properties: + batch: + $ref: '#/components/schemas/SyntheticsTestResultBatch' + ci: + $ref: '#/components/schemas/SyntheticsTestResultCI' + device: + $ref: '#/components/schemas/SyntheticsTestResultDevice' + git: + $ref: '#/components/schemas/SyntheticsTestResultGit' + location: + $ref: '#/components/schemas/SyntheticsTestResultLocation' + result: + $ref: '#/components/schemas/SyntheticsTestResultDetail' + test_sub_type: + $ref: '#/components/schemas/SyntheticsTestSubType' + test_type: + $ref: '#/components/schemas/SyntheticsTestType' + type: object + SyntheticsTestResultType: + default: result + description: Type of the Synthetic test result resource, `result`. + enum: + - result + example: result + type: string + x-enum-varnames: + - RESULT + DeletedTestsRequestDeleteAttributes: + description: Attributes for a bulk delete Synthetic tests request. + properties: + force_delete_dependencies: + description: Whether to force deletion of tests that have dependent resources. + type: boolean + public_ids: + description: List of public IDs of the Synthetic tests to delete. + example: + - abc-def-123 + items: + description: The public ID of a Synthetic test to delete. + type: string + type: array + required: + - public_ids + type: object + DeletedTestsRequestType: + default: delete_tests_request + description: Type for the bulk delete Synthetic tests request, `delete_tests_request`. + enum: + - delete_tests_request + example: delete_tests_request + type: string + x-enum-varnames: + - DELETE_TESTS_REQUEST + DeletedTestResponseDataAttributes: + description: Attributes of a deleted Synthetic test, including deletion timestamp and public ID. + properties: + deleted_at: + description: Deletion timestamp of the Synthetic test ID. + type: string + public_id: + description: The Synthetic test ID deleted. + type: string + type: object + DeletedTestsResponseType: + default: delete_tests + description: Type for the bulk delete Synthetic tests response, `delete_tests`. + enum: + - delete_tests + example: delete_tests + type: string + x-enum-varnames: + - DELETE_TESTS + SyntheticsFastTestResultAttributes: + description: Attributes of the fast test result. + properties: + device: + $ref: '#/components/schemas/SyntheticsTestResultDevice' + location: + $ref: '#/components/schemas/SyntheticsTestResultLocation' + result: + $ref: '#/components/schemas/SyntheticsFastTestResultDetail' + test_sub_type: + $ref: '#/components/schemas/SyntheticsFastTestSubType' + test_type: + $ref: '#/components/schemas/SyntheticsFastTestType' + test_version: + description: Version of the test at the time the fast test was triggered. + example: 1 + format: int64 + type: integer + type: object + SyntheticsFastTestResultType: + default: result + description: JSON:API type for a fast test result. + enum: + - result + example: result + type: string + x-enum-varnames: + - RESULT + SyntheticsNetworkTest: + description: Object containing details about a Network Path test. + properties: + config: + $ref: '#/components/schemas/SyntheticsNetworkTestConfig' + locations: + description: |- + Array of locations used to run the test. Network Path tests can be run from managed locations to test public endpoints, + or from a [Datadog Agent](https://docs.datadoghq.com/synthetics/network_path_tests/#agent-configuration) to test private environments. + example: + - aws:us-east-1 + - agent:my-agent-name + items: + description: A location to run the test from. + type: string + type: array + message: + description: Notification message associated with the test. + example: Network Path test notification + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + readOnly: true + type: integer + name: + description: Name of the test. + example: Example Network Path test + type: string + options: + $ref: '#/components/schemas/SyntheticsTestOptions' + public_id: + description: The public ID for the test. + example: abc-def-123 + readOnly: true + type: string + status: + $ref: '#/components/schemas/SyntheticsTestPauseStatus' + subtype: + $ref: '#/components/schemas/SyntheticsNetworkTestSubType' + tags: + description: Array of tags attached to the test. + example: + - env:production + items: + description: A tag attached to the test. + type: string + type: array + type: + $ref: '#/components/schemas/SyntheticsNetworkTestType' + required: + - name + - config + - locations + - options + - type + - message + type: object + SyntheticsNetworkTestType: + default: network + description: Type of the Synthetic test, `network`. + enum: + - network + example: network + type: string + x-enum-varnames: + - NETWORK + SyntheticsNetworkTestResponseType: + default: network_test + description: Type of response, `network_test`. + enum: + - network_test + example: network_test + type: string + x-enum-varnames: + - NETWORK_TEST + SyntheticsTestParentSuiteAttributes: + description: Object containing details about a parent suite of a Synthetic test. + properties: + child_name: + description: The name of the child test within the suite. + example: My API Test + type: string + child_public_id: + description: The public ID of the child test within the suite. + example: xyz-uvw-789 + type: string + monitor_id: + description: The associated monitor ID. + example: 12345678 + format: int64 + type: integer + name: + description: Name of the parent suite. + example: My Suite + type: string + overall_state: + description: The overall state of the parent suite. + example: 0 + format: int64 + type: integer + overall_state_modified: + description: Timestamp of when the overall state was last modified. + example: '2024-01-01T00:00:00+00:00' + type: string + public_id: + description: The public ID of the parent suite. + example: abc-def-123 + type: string + type: object + SyntheticsTestParentSuiteType: + default: parent_suite + description: Type of the parent suite resource. + enum: + - parent_suite + example: parent_suite + type: string + x-enum-varnames: + - PARENT_SUITE + SyntheticsTestVersionChangeAttributes: + description: Attributes of a version change record. + properties: + author_uuid: + description: UUID of the user who created this version. + example: 00000000-0000-0000-0000-000000000000 + type: string + change_metadata: + description: List of metadata describing individual changes in this version. + items: + $ref: '#/components/schemas/SyntheticsTestVersionChangeMetadataItem' + type: array + version_number: + description: The sequential version number. + example: 5 + format: int64 + type: integer + version_payload_created_at: + description: Timestamp of when this version was created. + example: '2024-01-01T00:00:00+00:00' + format: date-time + type: string + type: object + SyntheticsTestVersionChangeType: + default: version_metadata + description: Type of the version metadata resource. + enum: + - version_metadata + example: version_metadata + type: string + x-enum-varnames: + - VERSION_METADATA + SyntheticsTestVersionAttributes: + description: Attributes of a specific Synthetic test version. + properties: + author: + $ref: '#/components/schemas/SyntheticsTestVersionAuthor' + change_metadata: + description: |- + List of metadata describing individual changes in this version. + Only returned when the `include_change_metadata` query parameter is `true`. + items: + $ref: '#/components/schemas/SyntheticsTestVersionChangeMetadataItem' + type: array + payload: + additionalProperties: {} + description: The full test configuration at this version. + type: object + version_payload_created_at: + description: Timestamp of when this version was created. + example: '2024-01-01T00:00:00+00:00' + format: date-time + type: string + type: object + SyntheticsTestVersionType: + default: version + description: Type of the version resource. + enum: + - version + example: version + type: string + x-enum-varnames: + - VERSION + GlobalVariableJsonPatchRequestDataAttributes: + description: Attributes for a JSON Patch request on a Synthetic global variable. + properties: + json_patch: + description: JSON Patch operations following RFC 6902. + items: + $ref: '#/components/schemas/JsonPatchOperation' + type: array + type: object + GlobalVariableJsonPatchType: + description: Global variable JSON Patch type. + enum: + - global_variables_json_patch + type: string + x-enum-varnames: + - GLOBAL_VARIABLES_JSON_PATCH + GlobalVariableType: + description: Global variable type. + enum: + - global_variables + type: string + x-enum-varnames: + - GLOBAL_VARIABLES + ServiceCheckStatus: + description: The status of a service check. Set to `0` for OK, `1` for warning, `2` for critical, and `3` for unknown. + enum: + - 0 + - 1 + - 2 + - 3 + example: 0 + format: int32 + type: integer + x-enum-varnames: + - OK + - WARNING + - CRITICAL + - UNKNOWN + MonitorAssetCategory: + description: Indicates the type of asset this entity represents on a monitor. + enum: + - runbook + example: runbook + type: string + x-enum-varnames: + - RUNBOOK + MonitorAssetResourceType: + description: Type of internal Datadog resource associated with a monitor asset. + enum: + - notebook + type: string + x-enum-varnames: + - NOTEBOOK + MonitorOptionsAggregation: + description: Type of aggregation performed in the monitor query. + properties: + group_by: + description: Group to break down the monitor on. + example: host + type: string + metric: + description: Metric name used in the monitor. + example: metrics.name + type: string + type: + description: Metric type used in the monitor. + example: count + type: string + readOnly: true + type: object + MonitorDeviceID: + description: ID of the device the Synthetics monitor is running on. Same as `SyntheticsDeviceID`. + enum: + - laptop_large + - tablet + - mobile_small + - chrome.laptop_large + - chrome.tablet + - chrome.mobile_small + - firefox.laptop_large + - firefox.tablet + - firefox.mobile_small + type: string + x-enum-varnames: + - LAPTOP_LARGE + - TABLET + - MOBILE_SMALL + - CHROME_LAPTOP_LARGE + - CHROME_TABLET + - CHROME_MOBILE_SMALL + - FIREFOX_LAPTOP_LARGE + - FIREFOX_TABLET + - FIREFOX_MOBILE_SMALL + MonitorOptionsNotificationPresets: + default: show_all + description: Toggles the display of additional content sent in the monitor notification. + enum: + - show_all + - hide_query + - hide_handles + - hide_all + - hide_query_and_handles + - show_only_snapshot + - hide_handles_and_footer + type: string + x-enum-varnames: + - SHOW_ALL + - HIDE_QUERY + - HIDE_HANDLES + - HIDE_ALL + - HIDE_QUERY_AND_HANDLES + - SHOW_ONLY_SNAPSHOT + - HIDE_HANDLES_AND_FOOTER + OnMissingDataOption: + description: |- + Controls how groups or monitors are treated if an evaluation does not return any data points. + The default option results in different behavior depending on the monitor query type. + For monitors using Count queries, an empty monitor evaluation is treated as 0 and is compared to the threshold conditions. + For monitors using any query type other than Count, for example Gauge, Measure, or Rate, the monitor shows the last known status. + This option is available for APM Trace Analytics, Audit Trail, CI, Error Tracking, Event, Logs, and RUM monitors. + It is also required for metric monitors that use `scheduling_options.custom_schedule`. + enum: + - default + - show_no_data + - show_and_notify_no_data + - resolve + type: string + x-enum-varnames: + - DEFAULT + - SHOW_NO_DATA + - SHOW_AND_NOTIFY_NO_DATA + - RESOLVE + MonitorRenotifyStatusType: + description: The different statuses for which renotification is supported. + enum: + - alert + - warn + - no data + type: string + x-enum-varnames: + - ALERT + - WARN + - NO_DATA + MonitorOptionsSchedulingOptions: + description: Configuration options for scheduling. + properties: + custom_schedule: + $ref: '#/components/schemas/MonitorOptionsCustomSchedule' + evaluation_window: + $ref: '#/components/schemas/MonitorOptionsSchedulingOptionsEvaluationWindow' + type: object + MonitorThresholdWindowOptions: + description: Alerting time window options. + properties: + recovery_window: + description: Describes how long an anomalous metric must be normal before the alert recovers. + nullable: true + type: string + trigger_window: + description: Describes how long a metric must be anomalous before an alert triggers. + nullable: true + type: string + type: object + MonitorThresholds: + description: List of the different monitor threshold available. + properties: + critical: + description: The monitor `CRITICAL` threshold. + format: double + type: number + critical_query: + description: Query evaluated as a dynamic `CRITICAL` threshold. Only supported on metric monitors with a formula query and options['variables']. Cannot be combined with static thresholds. This field is in preview. + example: formula("2 * query1").rollup("avg").last("6mo") + type: string + critical_recovery: + description: The monitor `CRITICAL` recovery threshold. + format: double + nullable: true + type: number + critical_recovery_query: + description: Query evaluated as a dynamic `CRITICAL` recovery threshold. Only supported on metric monitors with a formula query and options['variables']. Cannot be combined with static thresholds. This field is in preview. + example: formula("1.5 * query1").rollup("avg").last("3mo") + type: string + ok: + description: The monitor `OK` threshold. + format: double + nullable: true + type: number + unknown: + description: The monitor UNKNOWN threshold. + format: double + nullable: true + type: number + warning: + description: The monitor `WARNING` threshold. + format: double + nullable: true + type: number + warning_recovery: + description: The monitor `WARNING` recovery threshold. + format: double + nullable: true + type: number + type: object + MonitorFormulaAndFunctionQueryDefinition: + description: A formula and function query. + properties: + compute: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventsDataSource' + group_by: + description: Group by options. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: query_errors + type: string + search: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionSearch' + aggregator: + $ref: '#/components/schemas/MonitorFormulaAndFunctionCostAggregator' + query: + description: The monitor query. + example: sum:all.cost{*}.rollup(sum, 86400) + type: string + filter: + description: Filter expression used to match on data entities. Uses Aastra query syntax. + example: search for column where `database:production AND table:users` + type: string + measure: + $ref: '#/components/schemas/MonitorFormulaAndFunctionDataQualityMeasure' + monitor_options: + $ref: '#/components/schemas/MonitorFormulaAndFunctionDataQualityMonitorOptions' + schema_version: + description: Schema version for the data quality query. + example: 0.0.1 + type: string + scope: + description: |- + Optional scoping expression to further filter metrics. Uses metrics filter syntax. + This is useful when an entity has been configured to emit metrics with additional tags. + example: env:production + type: string + job_type: + description: |- + The type of job being monitored. Valid values include: + `databricks.job`, `spark.application`, `airflow.dag`, + `dbt.job`, `dbt.model`, `dbt.test`, `glue.job`. + Custom job types are supported with the `custom.ol.` prefix. + example: databricks.job + type: string + jobs_query: + description: Filter expression used to select the jobs to monitor. + example: job_name:smoke* + type: string + query_dialect: + description: Query dialect for data jobs queries. Currently only `metric` is supported. + example: metric + type: string + augment_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateAugmentQuery' + base_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateBaseQuery' + join_condition: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateQueryJoinCondition' + filter_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateFilterQuery' + filters: + description: Filter conditions for the query. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateQueryFilter' + type: array + required: + - data_source + - compute + - name + - query + - measure + - filter + - jobs_query + - job_type + - query_dialect + - base_query + - augment_query + - join_condition + - group_by + - filter_query + - filters + type: object + additionalProperties: false + MonitorStateGroup: + description: Monitor state for a single group. + properties: + last_nodata_ts: + description: Latest timestamp the monitor was in NO_DATA state. + format: int64 + type: integer + last_notified_ts: + description: Latest timestamp of the notification sent for this monitor group. + format: int64 + type: integer + last_resolved_ts: + description: Latest timestamp the monitor group was resolved. + format: int64 + type: integer + last_triggered_ts: + description: Latest timestamp the monitor group triggered. + format: int64 + type: integer + name: + description: The name of the monitor. + type: string + status: + $ref: '#/components/schemas/MonitorOverallStates' + type: object + MonitorSearchCount: + description: Search facets. + items: + $ref: '#/components/schemas/MonitorSearchCountItem' + type: array + MonitorSearchResultNotification: + description: A notification triggered by the monitor. + properties: + handle: + description: The email address that received the notification. + readOnly: true + type: string + name: + description: The username receiving the notification + readOnly: true + type: string + readOnly: true + type: object + NotifyEndState: + description: A notification end state. + enum: + - alert + - no data + - warn + example: alert + type: string + x-enum-varnames: + - ALERT + - NO_DATA + - WARN + NotifyEndType: + description: A notification end type. + enum: + - canceled + - expired + example: expired + type: string + x-enum-varnames: + - CANCELED + - EXPIRED + SyntheticsCIBatchMetadata: + description: Metadata for the Synthetic tests run. + properties: + ci: + $ref: '#/components/schemas/SyntheticsCIBatchMetadataCI' + git: + $ref: '#/components/schemas/SyntheticsCIBatchMetadataGit' + type: object + SyntheticsBatchResult: + description: Object with the results of a Synthetic batch. + properties: + device: + $ref: '#/components/schemas/SyntheticsDeviceID' + duration: + description: Total duration in millisecond of the test. + format: double + type: number + execution_rule: + $ref: '#/components/schemas/SyntheticsTestExecutionRule' + location: + description: Name of the location. + type: string + result_id: + description: The ID of the result to get. + type: string + retries: + description: Number of times this result has been retried. + format: double + type: number + status: + $ref: '#/components/schemas/SyntheticsBatchStatus' + test_name: + description: Name of the test. + type: string + test_public_id: + description: The public ID of the Synthetic test. + type: string + test_type: + $ref: '#/components/schemas/SyntheticsTestDetailsType' + type: object + SyntheticsBatchStatus: + description: Determines whether the batch has passed, failed, or is in progress. + enum: + - passed + - skipped + - failed + type: string + x-enum-varnames: + - PASSED + - SKIPPED + - FAILED + SyntheticsRestrictedRoles: + deprecated: true + description: A list of role identifiers that can be pulled from the Roles API, for restricting read and write access. This field is deprecated. Use the restriction policies API to manage permissions. + example: + - xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + items: + description: UUID for a role. + example: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + type: string + type: array + SyntheticsPrivateLocationSecretsAuthentication: + description: Authentication part of the secrets. + properties: + id: + description: Access key for the private location. + readOnly: true + type: string + key: + description: Secret access key for the private location. + readOnly: true + type: string + type: object + SyntheticsPrivateLocationSecretsConfigDecryption: + description: Private key for the private location. + properties: + key: + description: Private key for the private location. + readOnly: true + type: string + type: object + SyntheticsAssertion: + description: |- + Object describing the assertions type, their associated operator, + which property they apply, and upon which target. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionOperator' + property: + description: The associated assertion property. + type: string + target: + $ref: '#/components/schemas/SyntheticsAssertionTargetValue' + description: Value used by the operator. + timingsScope: + $ref: '#/components/schemas/SyntheticsAssertionTimingsScope' + type: + $ref: '#/components/schemas/SyntheticsAssertionType' + code: + description: The JavaScript code that performs the assertions. + example: dd.expect(dd.response.statusCode).to.equal(200); + type: string + required: + - type + - operator + - target + - code + type: object + SyntheticsConfigVariable: + description: Object defining a variable that can be used in your test configuration. + properties: + example: + description: Example for the variable. + type: string + id: + description: ID of the variable for global variables. + type: string + name: + description: Name of the variable. + example: VARIABLE_NAME + type: string + pattern: + description: Pattern of the variable. + type: string + secure: + description: Whether the value of this variable will be obfuscated in test results. Only for config variables of type `text`. + example: false + type: boolean + type: + $ref: '#/components/schemas/SyntheticsConfigVariableType' + required: + - type + - name + type: object + SyntheticsTestRequest: + description: Object describing the Synthetic test request. + properties: + allow_insecure: + description: Allows loading insecure content for an HTTP request in a multistep test step. + type: boolean + basicAuth: + $ref: '#/components/schemas/SyntheticsBasicAuth' + body: + description: Body to include in the test. + type: string + bodyType: + $ref: '#/components/schemas/SyntheticsTestRequestBodyType' + callType: + $ref: '#/components/schemas/SyntheticsTestCallType' + certificate: + $ref: '#/components/schemas/SyntheticsTestRequestCertificate' + certificateDomains: + default: [] + description: By default, the client certificate is applied on the domain of the starting URL for browser tests. If you want your client certificate to be applied on other domains instead, add them in `certificateDomains`. + items: + description: Domain to apply the client certificate. + example: '' + type: string + type: array + checkCertificateRevocation: + description: Check for certificate revocation. + type: boolean + compressedJsonDescriptor: + description: A protobuf JSON descriptor that needs to be gzipped first then base64 encoded. + type: string + compressedProtoFile: + description: A protobuf file that needs to be gzipped first then base64 encoded. + type: string + disableAiaIntermediateFetching: + description: Disable fetching intermediate certificates from AIA. + type: boolean + dnsServer: + description: DNS server to use for DNS tests. + type: string + dnsServerPort: + $ref: '#/components/schemas/SyntheticsTestRequestDNSServerPort' + description: DNS server port to use for DNS tests. + files: + description: Files to be used as part of the request in the test. Only valid if `bodyType` is `multipart/form-data`. + items: + $ref: '#/components/schemas/SyntheticsTestRequestBodyFile' + type: array + follow_redirects: + description: Specifies whether or not the request follows redirects. + type: boolean + form: + additionalProperties: + description: A single form entry. + type: string + description: Form to be used as part of the request in the test. Only valid if `bodyType` is `multipart/form-data`. + type: object + headers: + $ref: '#/components/schemas/SyntheticsTestHeaders' + host: + description: Host name to perform the test with. + type: string + httpVersion: + $ref: '#/components/schemas/SyntheticsTestOptionsHTTPVersion' + ignore_certificate_validation: + description: For SSL tests, whether the test should ignore certificate validation. + type: boolean + isMessageBase64Encoded: + description: Whether the message is base64 encoded. + type: boolean + mcpProtocolVersion: + $ref: '#/components/schemas/SyntheticsMCPProtocolVersion' + message: + description: Message to send for UDP or WebSocket tests. + type: string + metadata: + $ref: '#/components/schemas/SyntheticsTestMetadata' + method: + description: Either the HTTP method/verb to use or a gRPC method available on the service set in the `service` field. Required if `subtype` is `HTTP` or if `subtype` is `grpc` and `callType` is `unary`. + type: string + noSavingResponseBody: + description: Determines whether or not to save the response body. + type: boolean + numberOfPackets: + description: Number of pings to use per test. + format: int32 + maximum: 10 + minimum: 0 + type: integer + persistCookies: + description: Persist cookies across redirects. + type: boolean + port: + $ref: '#/components/schemas/SyntheticsTestRequestPort' + proxy: + $ref: '#/components/schemas/SyntheticsTestRequestProxy' + query: + description: Query to use for the test. (opaque JSON object) + type: string + servername: + description: |- + For SSL tests, it specifies on which server you want to initiate the TLS handshake, + allowing the server to present one of multiple possible certificates on + the same IP address and TCP port number. + type: string + service: + description: The gRPC service on which you want to perform the gRPC call. + example: Greeter + type: string + shouldTrackHops: + description: Turns on a traceroute probe to discover all gateways along the path to the host destination. + type: boolean + timeout: + description: Timeout in seconds for the test. + format: double + type: number + toolArgs: + additionalProperties: {} + description: Arguments to pass to the MCP tool. Free-form object whose shape depends on the tool. Used when `callType` is `tool_call`. + type: object + toolName: + description: The name of the MCP tool to call. Required when `callType` is `tool_call`. + example: search + type: string + url: + description: URL to perform the test with. + example: https://example.com + type: string + type: object + SyntheticsAPIStep: + description: The steps used in a Synthetic multi-step API test. + properties: + allowFailure: + description: Determines whether or not to continue with test if this step fails. + type: boolean + assertions: + default: [] + description: Array of assertions used for the test. + example: + - operator: lessThan + target: 1000 + type: responseTime + items: + $ref: '#/components/schemas/SyntheticsAssertion' + type: array + exitIfSucceed: + description: Determines whether or not to exit the test if the step succeeds. + type: boolean + extractedValues: + description: Array of values to parse and save as variables from the response. + items: + $ref: '#/components/schemas/SyntheticsParsingOptions' + type: array + extractedValuesFromScript: + description: Generate variables using JavaScript. + type: string + id: + description: ID of the step. + example: abc-def-123 + readOnly: true + type: string + isCritical: + description: |- + Determines whether or not to consider the entire test as failed if this step fails. + Can be used only if `allowFailure` is `true`. + type: boolean + name: + description: The name of the step. + example: Example step name + type: string + request: + $ref: '#/components/schemas/SyntheticsTestRequest' + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + subtype: + $ref: '#/components/schemas/SyntheticsAPITestStepSubtype' + value: + description: 'The time to wait in seconds. Minimum value: 0. Maximum value: 180.' + example: 5 + format: int32 + maximum: 180 + minimum: 0 + type: integer + alwaysExecute: + description: A boolean set to always execute this step even if the previous step failed or was skipped. + type: boolean + subtestPublicId: + description: Public ID of the test to be played as part of a `playSubTest` step type. + example: '' + type: string + required: + - assertions + - request + - name + - subtype + - value + - subtestPublicId + type: object + SyntheticsTestCiOptions: + description: CI/CD options for a Synthetic test. + properties: + executionRule: + $ref: '#/components/schemas/SyntheticsTestExecutionRule' + required: + - executionRule + type: object + SyntheticsTestOptionsHTTPVersion: + description: HTTP version to use for a Synthetic test. + enum: + - http1 + - http2 + - any + type: string + x-enum-varnames: + - HTTP1 + - HTTP2 + - ANY + SyntheticsTestOptionsMonitorOptions: + description: |- + Object containing the options for a Synthetic test as a monitor + (for example, renotification). + properties: + escalation_message: + description: Message to include in the escalation notification. + type: string + notification_preset_name: + $ref: '#/components/schemas/SyntheticsTestOptionsMonitorOptionsNotificationPresetName' + renotify_interval: + description: |- + Time interval before renotifying if the test is still failing + (in minutes). + format: int64 + minimum: 0 + type: integer + renotify_occurrences: + description: The number of times to renotify if the test is still failing. + format: int64 + type: integer + type: object + SyntheticsTestOptionsRetry: + description: Object describing the retry strategy to apply to a Synthetic test. + properties: + count: + description: |- + Number of times a test needs to be retried before marking a + location as failed. Defaults to 0. + format: int64 + type: integer + interval: + description: |- + Time interval between retries (in milliseconds). Defaults to + 300ms. + format: double + type: number + type: object + SyntheticsBrowserTestRumSettings: + description: |- + The RUM data collection settings for the Synthetic browser test. + **Note:** There are 3 ways to format RUM settings: + + `{ isEnabled: false }` + RUM data is not collected. + + `{ isEnabled: true }` + RUM data is collected from the Synthetic test's default application. + + `{ isEnabled: true, applicationId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", clientTokenId: 12345 }` + RUM data is collected using the specified application. + example: + applicationId: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + clientTokenId: 12345 + isEnabled: true + properties: + applicationId: + description: RUM application ID used to collect RUM data for the browser test. + example: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx + type: string + clientTokenId: + description: RUM application API key ID used to collect RUM data for the browser test. + example: 12345 + format: int64 + type: integer + isEnabled: + description: Determines whether RUM data is collected during test runs. + example: true + type: boolean + required: + - isEnabled + type: object + SyntheticsTestOptionsScheduling: + description: Object containing timeframes and timezone used for advanced scheduling. + properties: + timeframes: + description: Array containing objects describing the scheduling pattern to apply to each day. + example: + - day: 1 + from: '07:00' + to: '16:00' + - day: 3 + from: '07:00' + to: '16:00' + items: + $ref: '#/components/schemas/SyntheticsTestOptionsSchedulingTimeframe' + type: array + timezone: + description: Timezone in which the timeframe is based. + example: America/New_York + type: string + required: + - timeframes + - timezone + type: object + SyntheticsBrowserVariable: + description: |- + Object defining a variable that can be used in your browser test. + See the [Recording Steps documentation](https://docs.datadoghq.com/synthetics/browser_tests/actions/?tab=testanelementontheactivepage#variables). + properties: + example: + description: Example for the variable. + type: string + id: + description: ID for the variable. Global variables require an ID. + type: string + name: + description: Name of the variable. + example: VARIABLE_NAME + type: string + pattern: + description: Pattern of the variable. + type: string + secure: + description: Determines whether or not the browser test variable is obfuscated. Can only be used with browser variables of type `text`. + type: boolean + type: + $ref: '#/components/schemas/SyntheticsBrowserVariableType' + required: + - type + - name + type: object + SyntheticsStepType: + description: Step type used in your Synthetic test. + enum: + - assertCurrentUrl + - assertElementAttribute + - assertElementContent + - assertElementPresent + - assertEmail + - assertFileDownload + - assertFromJavascript + - assertPageContains + - assertPageLacks + - assertRequests + - click + - drag + - drop + - extractFromJavascript + - extractFromEmailBody + - extractVariable + - goToEmailLink + - goToUrl + - goToUrlAndMeasureTti + - hover + - playSubTest + - pressKey + - refresh + - runApiTest + - scroll + - selectOption + - typeText + - uploadFiles + - wait + example: assertElementContent + type: string + x-enum-varnames: + - ASSERT_CURRENT_URL + - ASSERT_ELEMENT_ATTRIBUTE + - ASSERT_ELEMENT_CONTENT + - ASSERT_ELEMENT_PRESENT + - ASSERT_EMAIL + - ASSERT_FILE_DOWNLOAD + - ASSERT_FROM_JAVASCRIPT + - ASSERT_PAGE_CONTAINS + - ASSERT_PAGE_LACKS + - ASSERT_REQUESTS + - CLICK + - DRAG + - DROP + - EXTRACT_FROM_JAVASCRIPT + - EXTRACT_FROM_EMAIL_BODY + - EXTRACT_VARIABLE + - GO_TO_EMAIL_LINK + - GO_TO_URL + - GO_TO_URL_AND_MEASURE_TTI + - HOVER + - PLAY_SUB_TEST + - PRESS_KEY + - REFRESH + - RUN_API_TEST + - SCROLL + - SELECT_OPTION + - TYPE_TEXT + - UPLOAD_FILES + - WAIT + SyntheticsBrowserTestResultShortResult: + description: Object with the result of the last browser test run. + properties: + device: + $ref: '#/components/schemas/SyntheticsDevice' + duration: + description: Length in milliseconds of the browser test run. + format: double + type: number + errorCount: + description: Amount of errors collected for a single browser test run. + format: int64 + type: integer + stepCountCompleted: + description: Amount of browser test steps completed before failing. + format: int64 + type: integer + stepCountTotal: + description: Total amount of browser test steps. + format: int64 + type: integer + type: object + SyntheticsDevice: + description: Object describing the device used to perform the Synthetic test. + properties: + height: + description: Screen height of the device. + example: 0 + format: int64 + type: integer + id: + $ref: '#/components/schemas/SyntheticsDeviceID' + isMobile: + description: Whether or not the device is a mobile. + type: boolean + name: + description: The device name. + example: '' + type: string + width: + description: Screen width of the device. + example: 0 + format: int64 + type: integer + required: + - id + - name + - height + - width + type: object + SyntheticsBrowserTestResultFailure: + description: The browser test failure details. + properties: + code: + $ref: '#/components/schemas/SyntheticsBrowserTestFailureCode' + message: + description: The browser test error message. + example: Error during DNS resolution (ENOTFOUND). + type: string + type: object + SyntheticsStepDetail: + description: Object describing a step for a Synthetic test. + properties: + allowFailure: + description: Whether or not the step was allowed to fail. + type: boolean + browserErrors: + description: Array of errors collected for a browser test. + items: + $ref: '#/components/schemas/SyntheticsBrowserError' + type: array + checkType: + $ref: '#/components/schemas/SyntheticsCheckType' + description: + description: Description of the test. + type: string + duration: + description: Total duration in millisecond of the test. + format: double + type: number + error: + description: Error returned by the test. + type: string + failure: + $ref: '#/components/schemas/SyntheticsBrowserTestResultFailure' + playingTab: + $ref: '#/components/schemas/SyntheticsPlayingTab' + screenshotBucketKey: + description: Whether or not screenshots where collected by the test. + type: boolean + skipped: + description: Whether or not to skip this step. + type: boolean + snapshotBucketKey: + description: Whether or not snapshots where collected by the test. + type: boolean + stepId: + description: The step ID. + format: int64 + type: integer + subTestStepDetails: + description: |- + If this step includes a sub-test. + [Subtests documentation](https://docs.datadoghq.com/synthetics/browser_tests/advanced_options/#subtests). + items: + $ref: '#/components/schemas/SyntheticsStepDetail' + type: array + timeToInteractive: + description: Time before starting the step. + format: double + type: number + type: + $ref: '#/components/schemas/SyntheticsStepType' + url: + description: URL to perform the step against. + type: string + value: + description: Value for the step. + vitalsMetrics: + description: Array of Core Web Vitals metrics for the step. + items: + $ref: '#/components/schemas/SyntheticsCoreWebVitals' + type: array + warnings: + description: Warning collected that didn't failed the step. + items: + $ref: '#/components/schemas/SyntheticsStepDetailWarning' + type: array + type: object + SyntheticsMobileTestInitialApplicationArguments: + additionalProperties: + description: A single application argument. + type: string + description: Initial application arguments for a mobile test. + type: object + SyntheticsTestRestrictionPolicyBinding: + description: Objects describing the binding used for a mobile test. + properties: + principals: + $ref: '#/components/schemas/SyntheticsTestRestrictionPolicyBindingPrincipals' + relation: + $ref: '#/components/schemas/SyntheticsTestRestrictionPolicyBindingRelation' + type: object + SyntheticsMobileTestsMobileApplication: + description: Mobile application for mobile synthetics test. + properties: + applicationId: + description: Application ID of the mobile application. + example: 00000000-0000-0000-0000-aaaaaaaaaaaa + maxLength: 1500 + type: string + referenceId: + description: Reference ID of the mobile application. + example: 00000000-0000-0000-0000-aaaaaaaaaaab + maxLength: 1500 + type: string + referenceType: + $ref: '#/components/schemas/SyntheticsMobileTestsMobileApplicationReferenceType' + required: + - applicationId + - referenceId + - referenceType + type: object + SyntheticsMobileStepParams: + description: The parameters of a mobile step. + properties: + check: + $ref: '#/components/schemas/SyntheticsCheckType' + delay: + description: Number of milliseconds to wait between inputs in a `typeText` step type. + format: int64 + maximum: 5000 + minimum: 0 + type: integer + direction: + $ref: '#/components/schemas/SyntheticsMobileStepParamsDirection' + element: + $ref: '#/components/schemas/SyntheticsMobileStepParamsElement' + enabled: + description: Boolean to change the state of the wifi for a `toggleWiFi` step type. + type: boolean + maxScrolls: + description: Maximum number of scrolls to do for a `scrollToElement` step type. + format: int64 + type: integer + positions: + $ref: '#/components/schemas/SyntheticsMobileStepParamsPositions' + subtestPublicId: + description: Public ID of the test to be played as part of a `playSubTest` step type. + type: string + value: + $ref: '#/components/schemas/SyntheticsMobileStepParamsValue' + variable: + $ref: '#/components/schemas/SyntheticsMobileStepParamsVariable' + withEnter: + description: Boolean to indicate if `Enter` should be pressed at the end of the `typeText` step type. + type: boolean + x: + description: Amount to scroll by on the `x` axis for a `scroll` step type. + format: double + type: number + 'y': + description: Amount to scroll by on the `y` axis for a `scroll` step type. + format: double + type: number + type: object + SyntheticsMobileStepType: + description: Step type used in your mobile Synthetic test. + enum: + - assertElementContent + - assertScreenContains + - assertScreenLacks + - doubleTap + - extractVariable + - flick + - openDeeplink + - playSubTest + - pressBack + - restartApplication + - rotate + - scroll + - scrollToElement + - tap + - toggleWiFi + - typeText + - wait + example: assertElementContent + type: string + x-enum-varnames: + - ASSERTELEMENTCONTENT + - ASSERTSCREENCONTAINS + - ASSERTSCREENLACKS + - DOUBLETAP + - EXTRACTVARIABLE + - FLICK + - OPENDEEPLINK + - PLAYSUBTEST + - PRESSBACK + - RESTARTAPPLICATION + - ROTATE + - SCROLL + - SCROLLTOELEMENT + - TAP + - TOGGLEWIFI + - TYPETEXT + - WAIT + SyntheticsBasicAuth: + description: Object to handle basic authentication when performing the test. + properties: + password: + description: Password to use for the basic authentication. + example: PaSSw0RD! + type: string + type: + $ref: '#/components/schemas/SyntheticsBasicAuthWebType' + username: + description: Username to use for the basic authentication. + example: my_username + type: string + accessKey: + description: Access key for the `SIGV4` authentication. + example: AKIAIOSFODNN7EXAMPLE + type: string + region: + description: Region for the `SIGV4` authentication. + example: us-east-1 + type: string + secretKey: + description: Secret key for the `SIGV4` authentication. + example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY + type: string + serviceName: + description: Service name for the `SIGV4` authentication. + example: execute-api + type: string + sessionToken: + description: Session token for the `SIGV4` authentication. + example: |- + AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L + To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z + rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp + Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE + type: string + domain: + description: Domain for the authentication to use when performing the test. + example: DOMAINNAME + type: string + workstation: + description: Workstation for the authentication to use when performing the test. + example: '' + type: string + accessTokenUrl: + description: Access token URL to use when performing the authentication. + example: https://example.com + type: string + audience: + description: Audience to use when performing the authentication. + example: audience + type: string + clientId: + description: Client ID to use when performing the authentication. + example: oauth-username + type: string + clientSecret: + description: Client secret to use when performing the authentication. + example: oauth-password + type: string + resource: + description: Resource to use when performing the authentication. + example: resource + type: string + scope: + description: Scope to use when performing the authentication. + example: scope + type: string + tokenApiAuthentication: + $ref: '#/components/schemas/SyntheticsBasicAuthOauthTokenApiAuthentication' + addClaims: + $ref: '#/components/schemas/SyntheticsBasicAuthJWTAddClaims' + algorithm: + $ref: '#/components/schemas/SyntheticsBasicAuthJWTAlgorithm' + expiresIn: + description: Token time-to-live in seconds. + example: 3600 + format: int64 + minimum: 1 + type: integer + header: + description: Custom JWT header as a JSON string. + example: '{"kid": "my-key-id"}' + type: string + payload: + description: JWT claims as a JSON string. + example: '{"sub": "1234567890", "name": "John Doe"}' + type: string + secret: + description: |- + Signing key for the JWT authentication. Use the shared secret for `HS256` + or the private key (PEM format) for `RS256` and `ES256`. + example: mysecretkey + type: string + tokenPrefix: + description: Prefix added before the token in the `Authorization` header. Defaults to `Bearer`. + example: Bearer + type: string + type: object + required: + - accessKey + - secretKey + - type + - password + - username + - accessTokenUrl + - tokenApiAuthentication + - clientId + - clientSecret + - algorithm + - payload + - secret + SyntheticsTestHeaders: + additionalProperties: + description: A single Header. + type: string + description: Headers to include when performing the test. + type: object + SLOHistoryResponseErrorWithType: + description: An object describing the error with error type and error message. + properties: + error_message: + description: A message with more details about the error. + example: '' + type: string + error_type: + description: Type of the error. + example: '' + type: string + required: + - error_type + - error_message + type: object + SyntheticsPatchTestOperationName: + description: The operation to perform + enum: + - add + - remove + - replace + - move + - copy + - test + example: replace + type: string + x-enum-varnames: + - ADD + - REMOVE + - REPLACE + - MOVE + - COPY + - TEST + SyntheticsAPITestResultShortResult: + description: Result of the last API test run. + properties: + passed: + description: Describes if the test run has passed or failed. + type: boolean + timings: + $ref: '#/components/schemas/SyntheticsTiming' + type: object + SyntheticsSSLCertificate: + description: Object describing the SSL certificate used for a Synthetic test. + properties: + cipher: + description: Cipher used for the connection. + type: string + exponent: + description: Exponent associated to the certificate. + format: double + type: number + extKeyUsage: + description: Array of extensions and details used for the certificate. + items: + description: An extension or detail used for the certificate. + type: string + type: array + fingerprint: + description: MD5 digest of the DER-encoded Certificate information. + type: string + fingerprint256: + description: SHA-1 digest of the DER-encoded Certificate information. + type: string + issuer: + $ref: '#/components/schemas/SyntheticsSSLCertificateIssuer' + modulus: + description: Modulus associated to the SSL certificate private key. + type: string + protocol: + description: TLS protocol used for the test. + type: string + serialNumber: + description: Serial Number assigned by Symantec to the SSL certificate. + type: string + subject: + $ref: '#/components/schemas/SyntheticsSSLCertificateSubject' + validFrom: + description: Date from which the SSL certificate is valid. + format: date-time + type: string + validTo: + description: Date until which the SSL certificate is valid. + format: date-time + type: string + type: object + SyntheticsTestProcessStatus: + description: Status of a Synthetic test. + enum: + - not_scheduled + - scheduled + - finished + - finished_with_error + type: string + x-enum-varnames: + - NOT_SCHEDULED + - SCHEDULED + - FINISHED + - FINISHED_WITH_ERROR + SyntheticsApiTestResultFailure: + description: The API test failure details. + properties: + code: + $ref: '#/components/schemas/SyntheticsApiTestFailureCode' + message: + description: The API test error message. + example: Error during DNS resolution (ENOTFOUND). + type: string + type: object + SyntheticsTiming: + description: |- + Object containing all metrics and their values collected for a Synthetic API test. + See the [Synthetic Monitoring Metrics documentation](https://docs.datadoghq.com/synthetics/metrics/). + properties: + dns: + description: The duration in millisecond of the DNS lookup. + format: double + type: number + download: + description: The time in millisecond to download the response. + format: double + type: number + firstByte: + description: The time in millisecond to first byte. + format: double + type: number + handshake: + description: The duration in millisecond of the TLS handshake. + format: double + type: number + redirect: + description: The time in millisecond spent during redirections. + format: double + type: number + ssl: + description: The duration in millisecond of the TLS handshake. + format: double + type: number + tcp: + description: Time in millisecond to establish the TCP connection. + format: double + type: number + total: + description: The overall time in millisecond the request took to be processed. + format: double + type: number + wait: + description: Time spent in millisecond waiting for a response. + format: double + type: number + type: object + SyntheticsVariableParser: + description: Details of the parser to use for the global variable. + example: + type: regex + value: .* + properties: + type: + $ref: '#/components/schemas/SyntheticsGlobalVariableParserType' + value: + description: Regex or JSON path used for the parser. Not used with type `raw`. + type: string + required: + - type + type: object + SyntheticsGlobalVariableParseTestOptionsType: + description: Type of value to extract from a test for a Synthetic global variable. + enum: + - http_body + - http_header + - http_status_code + - local_variable + example: http_body + type: string + x-enum-varnames: + - HTTP_BODY + - HTTP_HEADER + - HTTP_STATUS_CODE + - LOCAL_VARIABLE + SyntheticsGlobalVariableOptions: + description: Options for the Global Variable for MFA. + properties: + totp_parameters: + $ref: '#/components/schemas/SyntheticsGlobalVariableTOTPParameters' + type: object + DataObservabilityMonitorRunStatus: + description: The status of a data observability monitor run. + enum: + - pending + - ok + - warn + - alert + - error + example: pending + type: string + x-enum-varnames: + - PENDING + - OK + - WARN + - ALERT + - ERROR + MonitorNotificationRuleBundleConfig: + description: |- + Use bundle config to enable alert bundling to reduce monitor signal noises. **Note**: This feature is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + properties: + duration: + description: Duration of the bundling period. + example: 3600 + format: int32 + maximum: 2147483647 + type: integer + required: + - duration + type: object + MonitorNotificationRuleConditionalRecipients: + description: Use conditional recipients to define different recipients for different situations. Cannot be used with `recipients`. + properties: + conditions: + description: Conditions of the notification rule. + items: + $ref: '#/components/schemas/MonitorNotificationRuleCondition' + maxItems: 10 + minItems: 1 + type: array + fallback_recipients: + $ref: '#/components/schemas/MonitorNotificationRuleRecipients' + description: If none of the `conditions` applied, `fallback_recipients` will get notified. + required: + - conditions + type: object + MonitorNotificationRuleFilter: + description: Specifies the matching criteria for monitor notifications. + additionalProperties: false + properties: + tags: + description: A list of tag key:value pairs (e.g. `team:product`). All tags must match (AND semantics). + example: + - team:product + - host:abc + items: + description: A tag key:value pair to match against monitor notifications. + maxLength: 255 + type: string + maxItems: 20 + minItems: 1 + type: array + uniqueItems: true + scope: + description: A scope expression composed by key:value pairs (e.g. `service:foo`) with boolean operators (AND, OR, NOT) and parentheses for grouping. + example: service:(foo OR bar) AND team:test NOT environment:staging + maxLength: 3000 + minLength: 1 + type: string + required: + - tags + - scope + type: object + MonitorNotificationRuleName: + description: The name of the monitor notification rule. + example: A notification rule name + maxLength: 1000 + minLength: 1 + type: string + MonitorNotificationRuleRecipients: + description: A list of recipients to notify. Uses the same format as the monitor `message` field. Must not start with an '@'. Cannot be used with `conditional_recipients`. + example: + - slack-test-channel + - jira-test + items: + description: individual recipient. + maxLength: 255 + type: string + maxItems: 20 + minItems: 1 + type: array + uniqueItems: true + MonitorNotificationRuleRelationshipsCreatedBy: + description: The user who created the monitor notification rule. + properties: + data: + $ref: '#/components/schemas/MonitorNotificationRuleRelationshipsCreatedByData' + type: object + UserAttributes: + description: Attributes of user object returned by the API. + properties: + created_at: + description: The ISO 8601 timestamp of when the user account was created. + format: date-time + type: string + disabled: + description: Whether the user account is deactivated. Disabled users cannot log in. + type: boolean + email: + description: The email address of the user, used for login and notifications. + type: string + handle: + description: The unique handle (username) of the user, typically matching their email prefix. + type: string + icon: + description: URL of the user's profile icon, typically a Gravatar URL derived from the email address. + type: string + last_login_time: + description: The ISO 8601 timestamp of the user's most recent login, or null if the user has never logged in. + format: date-time + nullable: true + readOnly: true + type: string + mfa_enabled: + description: Whether multi-factor authentication (MFA) is enabled for the user's account. + readOnly: true + type: boolean + modified_at: + description: The ISO 8601 timestamp of when the user account was last modified. + format: date-time + type: string + name: + description: The full display name of the user as shown in the Datadog UI. + nullable: true + type: string + service_account: + description: |- + Whether this is a service account rather than a human user. + Service accounts are used for programmatic API access. + type: boolean + status: + description: The current status of the user account (for example, `Active`, `Pending`, or `Disabled`). + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true + type: string + uuid: + description: The globally unique identifier (UUID) of the user. + readOnly: true + type: string + verified: + description: Whether the user's email address has been verified. + type: boolean + type: object + UserResponseRelationships: + description: Relationships of the user object returned by the API. + properties: + org: + $ref: '#/components/schemas/RelationshipToOrganization' + other_orgs: + $ref: '#/components/schemas/RelationshipToOrganizations' + other_users: + $ref: '#/components/schemas/RelationshipToUsers' + roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + MonitorConfigPolicyPolicy: + description: Configuration for the policy. + properties: + tag_key: + description: The key of the tag. + example: datacenter + maxLength: 255 + type: string + tag_key_required: + description: If a tag key is required for monitor creation. + example: true + type: boolean + valid_tag_values: + description: Valid values for the tag. + example: + - prod + - staging + items: + description: A valid tag value for the monitor configuration policy. + maxLength: 255 + type: string + type: array + type: object + MonitorConfigPolicyType: + default: tag + description: The monitor configuration policy type. + enum: + - tag + example: tag + type: string + x-enum-varnames: + - TAG + MonitorConfigPolicyPolicyCreateRequest: + description: Configuration for the policy. + properties: + tag_key: + description: The key of the tag. + example: datacenter + maxLength: 255 + type: string + tag_key_required: + description: If a tag key is required for monitor creation. + example: true + type: boolean + valid_tag_values: + description: Valid values for the tag. + example: + - prod + - staging + items: + description: A valid tag value for the monitor configuration policy. + maxLength: 255 + type: string + type: array + required: + - tag_key + - tag_key_required + - valid_tag_values + type: object + MonitorUserTemplateCreated: + description: The created timestamp of the template. + example: '2024-01-02T03:04:23.274966+00:00' + format: date-time + readOnly: true + type: string + MonitorUserTemplateDescription: + description: A brief description of the monitor user template. + example: This is a template for monitoring user activity. + nullable: true + type: string + MonitorUserTemplateModified: + description: The last modified timestamp. When the template version was created. + example: '2024-02-02T03:04:23.274966+00:00' + format: date-time + readOnly: true + type: string + MonitorUserTemplateTags: + description: The definition of `MonitorUserTemplateTags` object. + example: + - product:Our Custom App + - integration:Azure + items: + description: |- + Tags associated with the monitor user template. Must be key value. Only 'product' and 'integration' keys are + allowed. The value is the name of the category to display the template under. Integrations can be filtered out in the UI. + (Review note: This modeling of 'categories' is subject to change.) + example: us-east1 + minLength: 1 + type: string + uniqueItems: true + type: array + MonitorUserTemplateTemplateVariables: + description: The definition of `MonitorUserTemplateTemplateVariables` object. + items: + $ref: '#/components/schemas/MonitorUserTemplateTemplateVariablesItems' + type: array + MonitorUserTemplateTitle: + description: The title of the monitor user template. + example: Postgres CPU Monitor + type: string + MonitorUserTemplateVersion: + description: The version of the monitor user template. + example: 0 + format: int64 + nullable: true + readOnly: true + type: integer + SimpleMonitorUserTemplate: + description: A simplified version of a monitor user template. + properties: + created: + $ref: '#/components/schemas/MonitorUserTemplateCreated' + description: + $ref: '#/components/schemas/MonitorUserTemplateDescription' + id: + description: The unique identifier. The initial version will match the template ID. + example: 00000000-0000-1234-0000-000000000000 + type: string + monitor_definition: + additionalProperties: {} + description: A valid monitor definition in the same format as the [V1 Monitor API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + example: + message: You may need to add web hosts if this is consistently high. + name: Bytes received on host0 + query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 + type: query alert + type: object + tags: + $ref: '#/components/schemas/MonitorUserTemplateTags' + template_variables: + $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' + title: + $ref: '#/components/schemas/MonitorUserTemplateTitle' + version: + $ref: '#/components/schemas/MonitorUserTemplateVersion' + type: object + DowntimeScope: + description: The scope to which the downtime applies. Must follow the [common search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). + example: env:(staging OR prod) AND datacenter:us-east-1 + type: string + SyntheticsDowntimeTags: + description: List of tags associated with a Synthetics downtime. + example: + - team:backend + - env:prod + items: + description: A tag. + type: string + type: array + SyntheticsDowntimeTestIds: + description: List of Synthetics test public IDs associated with a downtime. + example: + - abc-def-123 + - xyz-uvw-456 + items: + description: A Synthetics test public ID. + type: string + type: array + SyntheticsDowntimeTimeSlotRequests: + description: List of time slots for a Synthetics downtime create or update request. + example: + - duration: 3600 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + items: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotRequest' + type: array + SyntheticsDowntimeTimeSlotResponses: + description: List of time slots in a Synthetics downtime response. + example: + - duration: 3600 + id: 00000000-0000-0000-0000-000000000002 + start: + day: 15 + hour: 10 + minute: 30 + month: 1 + year: 2024 + timezone: Europe/Paris + items: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotResponse' + type: array + SyntheticsSuiteOptions: + description: Object describing the extra options for a Synthetic suite. + properties: + alerting_threshold: + description: Percentage of critical tests failure needed for a suite to fail. + format: double + maximum: 1 + minimum: 0 + type: number + type: object + SyntheticsSuiteTest: + description: Object containing details about a Synthetic test included in a Synthetic suite. + properties: + alerting_criticality: + $ref: '#/components/schemas/SyntheticsSuiteTestAlertingCriticality' + public_id: + description: The public ID of the Synthetic test included in the suite. + example: '' + type: string + required: + - public_id + type: object + SyntheticsSuiteType: + default: suite + description: Type of the Synthetic suite, `suite`. + enum: + - suite + example: suite + type: string + x-enum-varnames: + - SUITE + JsonPatchOperation: + description: A JSON Patch operation as per RFC 6902. + properties: + op: + $ref: '#/components/schemas/JsonPatchOperationOp' + path: + description: A JSON Pointer path (e.g., "/name", "/value/secure"). + example: /name + type: string + value: + description: The value to use for the operation (not applicable for "remove" and "test" operations). + required: + - op + - path + type: object + SyntheticsTestResultDevice: + description: Device information for the test result (browser and mobile tests). + properties: + browser: + $ref: '#/components/schemas/SyntheticsTestResultDeviceBrowser' + id: + description: Device identifier. + example: chrome.laptop_large + type: string + name: + description: Device name. + example: Chrome - Laptop Large + type: string + platform: + $ref: '#/components/schemas/SyntheticsTestResultDevicePlatform' + resolution: + $ref: '#/components/schemas/SyntheticsTestResultDeviceResolution' + type: + description: Device type. + example: browser + type: string + type: object + SyntheticsTestResultExecutionInfo: + description: Execution details for a Synthetic test result. + properties: + duration: + $ref: '#/components/schemas/SyntheticsTestResultDuration' + error_message: + description: Error message if the execution encountered an issue. + example: Connection timed out + type: string + is_fast_retry: + description: Whether this result is from a fast retry. + example: true + type: boolean + timings: + additionalProperties: {} + description: Timing breakdown of the test execution in milliseconds. + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + tunnel: + description: Whether the test was executed through a tunnel. + example: false + type: boolean + unhealthy: + description: Whether the location was unhealthy during execution. + example: false + type: boolean + type: object + SyntheticsTestResultLocation: + description: Location information for a Synthetic test result. + properties: + id: + description: Identifier of the location. + example: aws:us-east-1 + type: string + name: + description: Human-readable name of the location. + example: N. Virginia (AWS) + type: string + version: + description: Version of the worker that ran the test. + example: 1.0.0 + type: string + worker_id: + description: Identifier of the specific worker that ran the test. + example: worker-abc-123 + type: string + type: object + SyntheticsTestResultStepsInfo: + description: Step execution summary for a Synthetic test result. + properties: + completed: + description: Number of completed steps. + example: 6 + format: int64 + type: integer + errors: + description: Number of steps with errors. + example: 0 + format: int64 + type: integer + total: + description: Total number of steps. + example: 6 + format: int64 + type: integer + type: object + SyntheticsTestSubType: + description: Subtype of the Synthetic test that produced this result. + enum: + - dns + - grpc + - http + - icmp + - mcp + - multi + - ssl + - tcp + - udp + - websocket + example: http + type: string + x-enum-varnames: + - DNS + - GRPC + - HTTP + - ICMP + - MCP + - MULTI + - SSL + - TCP + - UDP + - WEBSOCKET + SyntheticsTestType: + description: Type of the Synthetic test that produced this result. + enum: + - api + - browser + - mobile + - network + example: api + type: string + x-enum-varnames: + - API + - BROWSER + - MOBILE + - NETWORK + SyntheticsTestResultRelationshipTest: + description: Relationship to the Synthetic test. + properties: + data: + $ref: '#/components/schemas/SyntheticsTestResultRelationshipTestData' + type: object + SyntheticsTestResultBatch: + description: Batch information for the test result. + properties: + id: + description: Batch identifier. + example: batch-abc-123 + type: string + type: object + SyntheticsTestResultCI: + description: CI information associated with the test result. + properties: + pipeline: + $ref: '#/components/schemas/SyntheticsTestResultCIPipeline' + provider: + $ref: '#/components/schemas/SyntheticsTestResultCIProvider' + stage: + $ref: '#/components/schemas/SyntheticsTestResultCIStage' + workspace_path: + description: Path of the workspace that ran the CI job. + example: /home/runner/work/example + type: string + type: object + SyntheticsTestResultGit: + description: Git information associated with the test result. + properties: + branch: + description: Git branch name. + example: main + type: string + commit: + $ref: '#/components/schemas/SyntheticsTestResultGitCommit' + repository_url: + description: Git repository URL. + example: https://github.com/DataDog/example + type: string + type: object + SyntheticsTestResultDetail: + description: Full result details for a Synthetic test execution. + properties: + assertions: + description: Assertion results produced by the test. + items: + $ref: '#/components/schemas/SyntheticsTestResultAssertionResult' + type: array + bucket_keys: + $ref: '#/components/schemas/SyntheticsTestResultBucketKeys' + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + cert: + $ref: '#/components/schemas/SyntheticsTestResultCertificate' + compressed_json_descriptor: + description: Compressed JSON descriptor for the test (internal format). + example: compressedJsonDescriptorValue + type: string + compressed_steps: + description: Compressed representation of the test steps (internal format). + example: eJzLSM3JyQcABiwCFQ== + type: string + connection_outcome: + description: Outcome of the connection attempt (for example, `established`, `refused`). + example: established + type: string + dns_resolution: + $ref: '#/components/schemas/SyntheticsTestResultDnsResolution' + duration: + description: Duration of the test execution (in milliseconds). + example: 380.7 + format: double + type: number + exited_on_step_success: + description: Whether the test exited early because a step marked with `exitIfSucceed` passed. + example: false + type: boolean + failure: + $ref: '#/components/schemas/SyntheticsTestResultFailure' + finished_at: + description: Timestamp of when the test finished (in milliseconds). + example: 1723782422760 + format: int64 + type: integer + handshake: + $ref: '#/components/schemas/SyntheticsTestResultHandshake' + id: + description: The unique identifier for this result. + example: '5158904793181869365' + type: string + initial_id: + description: The initial result ID before any retries. + example: '5158904793181869365' + type: string + is_fast_retry: + description: Whether this result is from a fast retry. + example: true + type: boolean + is_last_retry: + description: Whether this result is from the last retry. + example: true + type: boolean + netpath: + $ref: '#/components/schemas/SyntheticsTestResultNetpath' + netstats: + $ref: '#/components/schemas/SyntheticsTestResultNetstats' + ocsp: + $ref: '#/components/schemas/SyntheticsTestResultOCSPResponse' + ping: + $ref: '#/components/schemas/SyntheticsTestResultTracerouteHop' + received_email_count: + description: Number of emails received during the test (email tests). + example: 1 + format: int64 + type: integer + received_message: + description: Message received from the target (for WebSocket/TCP/UDP tests). + example: 'UDP echo: b''Test message''' + type: string + request: + $ref: '#/components/schemas/SyntheticsTestResultRequestInfo' + resolved_ip: + description: IP address resolved for the target host. + example: 54.243.255.141 + type: string + response: + $ref: '#/components/schemas/SyntheticsTestResultResponseInfo' + run_type: + $ref: '#/components/schemas/SyntheticsTestResultRunType' + sent_message: + description: Message sent to the target (for WebSocket/TCP/UDP tests). + example: udp mess + type: string + start_url: + description: Start URL for the test (browser tests). + example: http://34.95.79.70/prototype + type: string + started_at: + description: Timestamp of when the test started (in milliseconds). + example: 1723782422750 + format: int64 + type: integer + status: + $ref: '#/components/schemas/SyntheticsTestResultStatus' + steps: + description: Step results (for browser, mobile, and multistep API tests). + items: + $ref: '#/components/schemas/SyntheticsTestResultStep' + type: array + time_to_interactive: + description: Time to interactive in milliseconds (browser tests). + example: 183 + format: int64 + type: integer + timings: + additionalProperties: {} + description: Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + trace: + $ref: '#/components/schemas/SyntheticsTestResultTrace' + traceroute: + description: Traceroute hop results (for network tests). + items: + $ref: '#/components/schemas/SyntheticsTestResultTracerouteHop' + type: array + triggered_at: + description: Timestamp of when the test was triggered (in milliseconds). + example: 1723782422715 + format: int64 + type: integer + tunnel: + description: Whether the test was executed through a tunnel. + example: false + type: boolean + turns: + description: Turns executed by a goal-based browser test. + items: + $ref: '#/components/schemas/SyntheticsTestResultTurn' + type: array + unhealthy: + description: Whether the test runner was unhealthy at the time of execution. + example: false + type: boolean + variables: + $ref: '#/components/schemas/SyntheticsTestResultVariables' + type: object + SyntheticsFastTestResultDetail: + description: |- + Detailed result data for the fast test run. The exact shape of nested fields + (`request`, `response`, `assertions`, etc.) depends on the test subtype. + properties: + assertions: + description: Results of each assertion evaluated during the test. + items: + $ref: '#/components/schemas/SyntheticsTestResultAssertionResult' + type: array + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + cert: + $ref: '#/components/schemas/SyntheticsTestResultCertificate' + duration: + description: Total duration of the test in milliseconds. + example: 150.5 + format: double + type: number + failure: + $ref: '#/components/schemas/SyntheticsTestResultFailure' + finished_at: + description: Unix timestamp (ms) of when the test finished. + example: 1679328001000 + format: int64 + type: integer + id: + description: The result ID. Set to the fast test UUID because no persistent result ID exists for fast tests. + example: abc12345-1234-1234-1234-abc123456789 + type: string + is_fast_retry: + description: Whether this result is from an automatic fast retry. + example: false + type: boolean + request: + $ref: '#/components/schemas/SyntheticsTestResultRequestInfo' + resolved_ip: + description: IP address resolved for the target host. + example: 1.2.3.4 + type: string + response: + $ref: '#/components/schemas/SyntheticsTestResultResponseInfo' + run_type: + $ref: '#/components/schemas/SyntheticsTestResultRunType' + started_at: + description: Unix timestamp (ms) of when the test started. + example: 1679328000000 + format: int64 + type: integer + status: + description: Status of the test result (`passed` or `failed`). + example: passed + type: string + steps: + description: Step results for multistep API tests. + items: + $ref: '#/components/schemas/SyntheticsTestResultStep' + type: array + timings: + additionalProperties: {} + description: Timing breakdown of the test request phases (for example, DNS, TCP, TLS, first byte). + example: + dns: 2.9 + download: 2.1 + firstByte: 95.2 + ssl: 187.9 + tcp: 92.6 + total: 380.7 + type: object + traceroute: + description: Traceroute hop results, present for ICMP and TCP tests. + items: + $ref: '#/components/schemas/SyntheticsTestResultTracerouteHop' + type: array + triggered_at: + description: Unix timestamp (ms) of when the test was triggered. + example: 1679327999000 + format: int64 + type: integer + tunnel: + description: Whether the test was run through a Synthetics tunnel. + example: false + type: boolean + type: object + SyntheticsFastTestSubType: + description: Subtype of the Synthetic test that produced this result. + enum: + - dns + - grpc + - http + - icmp + - mcp + - multi + - ssl + - tcp + - udp + - websocket + example: http + type: string + x-enum-varnames: + - DNS + - GRPC + - HTTP + - ICMP + - MCP + - MULTI + - SSL + - TCP + - UDP + - WEBSOCKET + SyntheticsFastTestType: + description: Type of the Synthetic fast test that produced this result. + enum: + - fast-api + - fast-browser + example: fast-api + type: string + x-enum-varnames: + - FAST_API + - FAST_BROWSER + SyntheticsNetworkTestConfig: + description: Configuration object for a Network Path test. + properties: + assertions: + default: [] + description: Array of assertions used for the test. + example: + - operator: lessThan + property: avg + target: 500 + type: latency + items: + $ref: '#/components/schemas/SyntheticsNetworkAssertion' + type: array + request: + $ref: '#/components/schemas/SyntheticsNetworkTestRequest' + type: object + SyntheticsTestOptions: + description: Object describing the extra options for a Synthetic test. + properties: + min_failure_duration: + description: Minimum amount of time in failure required to trigger an alert. + format: int64 + type: integer + min_location_failed: + description: |- + Minimum number of locations in failure required to trigger + an alert. + format: int64 + type: integer + monitor_name: + description: The monitor name is used for the alert title as well as for all monitor dashboard widgets and SLOs. + type: string + monitor_options: + $ref: '#/components/schemas/SyntheticsTestOptionsMonitorOptions' + monitor_priority: + description: Integer from 1 (high) to 5 (low) indicating alert severity. + format: int32 + maximum: 5 + minimum: 1 + type: integer + restricted_roles: + $ref: '#/components/schemas/SyntheticsRestrictedRoles' + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + scheduling: + $ref: '#/components/schemas/SyntheticsTestOptionsScheduling' + tick_every: + description: The frequency at which to run the Synthetic test (in seconds). + format: int64 + maximum: 604800 + minimum: 30 + type: integer + type: object + SyntheticsNetworkTestSubType: + description: 'Subtype of the Synthetic Network Path test: `tcp`, `udp`, or `icmp`.' + enum: + - tcp + - udp + - icmp + example: tcp + type: string + x-enum-varnames: + - TCP + - UDP + - ICMP + SyntheticsTestVersionChangeMetadataItem: + description: Object describing a single change within a version. + properties: + action: + description: The action that was performed (for example, `updated` or `created`). + type: string + action_metadata: + $ref: '#/components/schemas/SyntheticsTestVersionActionMetadata' + type: object + SyntheticsTestVersionAuthor: + description: Object describing the author of a test version. + properties: + email: + description: Email address of the author. + example: john.doe@example.com + type: string + handle: + description: The author's Datadog handle (login username). + example: john.doe + type: string + id: + description: UUID of the author. + example: 00000000-0000-0000-0000-000000000000 + type: string + name: + description: Display name of the author. + example: John Doe + type: string + type: object + MonitorOptionsCustomSchedule: + description: Configuration options for the custom schedule. **This feature is in private beta.** + properties: + recurrences: + description: Array of custom schedule recurrences. + items: + $ref: '#/components/schemas/MonitorOptionsCustomScheduleRecurrence' + type: array + type: object + MonitorOptionsSchedulingOptionsEvaluationWindow: + description: Configuration options for the evaluation window. If `hour_starts` is set, no other fields may be set. Otherwise, `day_starts` and `month_starts` must be set together. + properties: + day_starts: + description: The time of the day at which a one day cumulative evaluation window starts. + example: '04:00' + type: string + hour_starts: + description: The minute of the hour at which a one hour cumulative evaluation window starts. + example: 0 + format: int32 + maximum: 59 + minimum: 0 + type: integer + month_starts: + description: The day of the month at which a one month cumulative evaluation window starts. + example: 1 + format: int32 + maximum: 1 + minimum: 1 + type: integer + timezone: + description: The timezone of the time of the day of the cumulative evaluation window start. + example: Europe/Paris + type: string + type: object + MonitorFormulaAndFunctionEventQueryDefinition: + description: A formula and functions events query. + properties: + compute: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventsDataSource' + group_by: + description: Group by options. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: query_errors + type: string + search: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionSearch' + required: + - data_source + - compute + - name + type: object + MonitorFormulaAndFunctionCostQueryDefinition: + description: A formula and functions cost query. + properties: + aggregator: + $ref: '#/components/schemas/MonitorFormulaAndFunctionCostAggregator' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionCostDataSource' + name: + description: Name of the query for use in formulas. + example: query1 + type: string + query: + description: The monitor query. + example: sum:all.cost{*}.rollup(sum, 86400) + type: string + required: + - name + - data_source + - query + type: object + MonitorFormulaAndFunctionDataQualityQueryDefinition: + description: A formula and functions data quality query. + properties: + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionDataQualityDataSource' + filter: + description: Filter expression used to match on data entities. Uses Aastra query syntax. + example: search for column where `database:production AND table:users` + type: string + group_by: + description: Optional grouping fields for aggregation. + example: + - entity_id + items: + description: A field name to group results by. + type: string + type: array + measure: + $ref: '#/components/schemas/MonitorFormulaAndFunctionDataQualityMeasure' + monitor_options: + $ref: '#/components/schemas/MonitorFormulaAndFunctionDataQualityMonitorOptions' + name: + description: Name of the query for use in formulas. + example: query1 + type: string + schema_version: + description: Schema version for the data quality query. + example: 0.0.1 + type: string + scope: + description: |- + Optional scoping expression to further filter metrics. Uses metrics filter syntax. + This is useful when an entity has been configured to emit metrics with additional tags. + example: env:production + type: string + required: + - name + - data_source + - measure + - filter + type: object + MonitorFormulaAndFunctionDataJobsQueryDefinition: + description: A formula and functions data jobs query. + properties: + job_type: + description: |- + The type of job being monitored. Valid values include: + `databricks.job`, `spark.application`, `airflow.dag`, + `dbt.job`, `dbt.model`, `dbt.test`, `glue.job`. + Custom job types are supported with the `custom.ol.` prefix. + example: databricks.job + type: string + jobs_query: + description: Filter expression used to select the jobs to monitor. + example: job_name:smoke* + type: string + name: + description: Name of the query for use in formulas. Must be `run_query`. + example: run_query + type: string + query_dialect: + description: Query dialect for data jobs queries. Currently only `metric` is supported. + example: metric + type: string + required: + - name + - jobs_query + - job_type + - query_dialect + type: object + MonitorFormulaAndFunctionAggregateAugmentedQueryDefinition: + additionalProperties: false + description: A formula and functions aggregate augmented query. Used to enrich base query results with data from a reference table. + properties: + augment_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateAugmentQuery' + base_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateBaseQuery' + compute: + description: Compute options for the query. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + minItems: 1 + type: array + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateAugmentedDataSource' + group_by: + description: Group by options for the query. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + join_condition: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateQueryJoinCondition' + name: + description: Name of the query for use in formulas. + example: query1 + type: string + required: + - data_source + - base_query + - augment_query + - join_condition + - compute + - group_by + type: object + MonitorFormulaAndFunctionAggregateFilteredQueryDefinition: + additionalProperties: false + description: A formula and functions aggregate filtered query. Used to filter base query results using data from another source. + properties: + base_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateBaseQuery' + compute: + description: Compute options for the query. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + type: array + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateFilteredDataSource' + filter_query: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateFilterQuery' + filters: + description: Filter conditions for the query. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateQueryFilter' + type: array + group_by: + description: Group by options for the query. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + name: + description: Name of the query for use in formulas. + example: query1 + type: string + required: + - data_source + - base_query + - filter_query + - filters + type: object + MonitorSearchCountItem: + description: A facet item. + properties: + count: + description: The number of found monitors with the listed value. + format: int64 + readOnly: true + type: integer + name: + description: The facet value. + readOnly: true + type: object + SyntheticsCIBatchMetadataCI: + description: Description of the CI provider. + properties: + pipeline: + $ref: '#/components/schemas/SyntheticsCIBatchMetadataPipeline' + provider: + $ref: '#/components/schemas/SyntheticsCIBatchMetadataProvider' + type: object + SyntheticsCIBatchMetadataGit: + description: Git information. + properties: + branch: + description: Branch name. + type: string + commitSha: + description: The commit SHA. + type: string + type: object + SyntheticsTestExecutionRule: + description: Execution rule for a Synthetic test. + enum: + - blocking + - non_blocking + - skipped + example: blocking + type: string + x-enum-varnames: + - BLOCKING + - NON_BLOCKING + - SKIPPED + SyntheticsAssertionTarget: + description: An assertion which uses a simple target. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionOperator' + property: + description: The associated assertion property. + type: string + target: + $ref: '#/components/schemas/SyntheticsAssertionTargetValue' + description: Value used by the operator. + timingsScope: + $ref: '#/components/schemas/SyntheticsAssertionTimingsScope' + type: + $ref: '#/components/schemas/SyntheticsAssertionType' + required: + - type + - operator + - target + type: object + SyntheticsAssertionBodyHashTarget: + description: An assertion which targets body hash. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionBodyHashOperator' + target: + $ref: '#/components/schemas/SyntheticsAssertionTargetValue' + description: Value used by the operator. + type: + $ref: '#/components/schemas/SyntheticsAssertionBodyHashType' + required: + - type + - operator + - target + type: object + SyntheticsAssertionJSONPathTarget: + description: An assertion for the `validatesJSONPath` operator. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionJSONPathOperator' + property: + description: The associated assertion property. + type: string + target: + $ref: '#/components/schemas/SyntheticsAssertionJSONPathTargetTarget' + type: + $ref: '#/components/schemas/SyntheticsAssertionType' + required: + - type + - operator + type: object + SyntheticsAssertionJSONSchemaTarget: + description: An assertion for the `validatesJSONSchema` operator. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionJSONSchemaOperator' + target: + $ref: '#/components/schemas/SyntheticsAssertionJSONSchemaTargetTarget' + type: + $ref: '#/components/schemas/SyntheticsAssertionType' + required: + - type + - operator + type: object + SyntheticsAssertionXPathTarget: + description: An assertion for the `validatesXPath` operator. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionXPathOperator' + property: + description: The associated assertion property. + type: string + target: + $ref: '#/components/schemas/SyntheticsAssertionXPathTargetTarget' + type: + $ref: '#/components/schemas/SyntheticsAssertionType' + required: + - type + - operator + type: object + SyntheticsAssertionJavascript: + description: A JavaScript assertion. + properties: + code: + description: The JavaScript code that performs the assertions. + example: dd.expect(dd.response.statusCode).to.equal(200); + type: string + type: + $ref: '#/components/schemas/SyntheticsAssertionJavascriptType' + required: + - type + - code + type: object + SyntheticsAssertionMCPServerCapabilitiesTarget: + description: An assertion that checks that an MCP server advertises the expected capabilities. + properties: + operator: + $ref: '#/components/schemas/SyntheticsAssertionOperator' + target: + description: List of MCP server capabilities to assert against. + example: + - completions + items: + $ref: '#/components/schemas/SyntheticsMCPServerCapability' + type: array + type: + $ref: '#/components/schemas/SyntheticsAssertionMCPServerCapabilitiesType' + required: + - type + - operator + - target + type: object + SyntheticsAssertionMCPRespectsSpecification: + description: An assertion that verifies the MCP server response respects the MCP specification. + properties: + type: + $ref: '#/components/schemas/SyntheticsAssertionMCPRespectsSpecificationType' + required: + - type + type: object + SyntheticsConfigVariableType: + description: Type of the configuration variable. + enum: + - global + - text + - email + example: text + type: string + x-enum-varnames: + - GLOBAL + - TEXT + - EMAIL + SyntheticsTestRequestBodyType: + description: Type of the request body. + enum: + - text/plain + - application/json + - text/xml + - text/html + - application/x-www-form-urlencoded + - graphql + - application/octet-stream + - multipart/form-data + example: text/plain + type: string + x-enum-varnames: + - TEXT_PLAIN + - APPLICATION_JSON + - TEXT_XML + - TEXT_HTML + - APPLICATION_X_WWW_FORM_URLENCODED + - GRAPHQL + - APPLICATION_OCTET_STREAM + - MULTIPART_FORM_DATA + SyntheticsTestCallType: + description: |- + The type of call to perform. Used by gRPC steps (`healthcheck`, `unary`) + and MCP steps (`init`, `tool_list`, `tool_call`). Valid values depend on + the parent step's `subtype`. + enum: + - healthcheck + - unary + - init + - tool_list + - tool_call + example: unary + type: string + x-enum-varnames: + - HEALTHCHECK + - UNARY + - INIT + - TOOL_LIST + - TOOL_CALL + SyntheticsTestRequestCertificate: + description: Client certificate to use when performing the test request. + properties: + cert: + $ref: '#/components/schemas/SyntheticsTestRequestCertificateItem' + key: + $ref: '#/components/schemas/SyntheticsTestRequestCertificateItem' + type: object + SyntheticsTestRequestDNSServerPort: + description: DNS server port to use for DNS tests. + format: int64 + type: integer + SyntheticsTestRequestBodyFile: + description: Object describing a file to be used as part of the request in the test. + properties: + bucketKey: + description: Bucket key of the file. + type: string + content: + description: Content of the file. + maxLength: 3145728 + type: string + encoding: + description: Encoding of the file content. The only supported value is `base64`, indicating the `content` field contains base64-encoded data. + type: string + name: + description: Name of the file. + maxLength: 1500 + type: string + originalFileName: + description: Original name of the file. + maxLength: 1500 + type: string + size: + description: Size of the file. + format: int64 + maximum: 3145728 + minimum: 1 + type: integer + type: + description: Type of the file. + maxLength: 1500 + type: string + type: object + SyntheticsMCPProtocolVersion: + description: The MCP protocol version used by the step. See https://modelcontextprotocol.io/specification. + enum: + - '2025-06-18' + example: '2025-06-18' + type: string + x-enum-varnames: + - VERSION_2025_06_18 + SyntheticsTestMetadata: + additionalProperties: + description: A single metadatum. + type: string + description: Metadata to include when performing the gRPC test. + type: object + SyntheticsTestRequestPort: + description: Port to use when performing the test. + format: int64 + type: integer + SyntheticsTestRequestProxy: + description: The proxy to perform the test. + properties: + headers: + $ref: '#/components/schemas/SyntheticsTestHeaders' + url: + description: URL of the proxy to perform the test. + example: https://example.com + type: string + required: + - url + type: object + SyntheticsAPITestStep: + description: The Test step used in a Synthetic multi-step API test. + properties: + allowFailure: + description: Determines whether or not to continue with test if this step fails. + type: boolean + assertions: + default: [] + description: Array of assertions used for the test. + example: + - operator: lessThan + target: 1000 + type: responseTime + items: + $ref: '#/components/schemas/SyntheticsAssertion' + type: array + exitIfSucceed: + description: Determines whether or not to exit the test if the step succeeds. + type: boolean + extractedValues: + description: Array of values to parse and save as variables from the response. + items: + $ref: '#/components/schemas/SyntheticsParsingOptions' + type: array + extractedValuesFromScript: + description: Generate variables using JavaScript. + type: string + id: + description: ID of the step. + example: abc-def-123 + readOnly: true + type: string + isCritical: + description: |- + Determines whether or not to consider the entire test as failed if this step fails. + Can be used only if `allowFailure` is `true`. + type: boolean + name: + description: The name of the step. + example: Example step name + type: string + request: + $ref: '#/components/schemas/SyntheticsTestRequest' + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + subtype: + $ref: '#/components/schemas/SyntheticsAPITestStepSubtype' + required: + - assertions + - request + - name + - subtype + type: object + SyntheticsAPIWaitStep: + description: The Wait step used in a Synthetic multi-step API test. + properties: + id: + description: ID of the step. + example: abc-def-123 + readOnly: true + type: string + name: + description: The name of the step. + example: Example step name + type: string + subtype: + $ref: '#/components/schemas/SyntheticsAPIWaitStepSubtype' + value: + description: 'The time to wait in seconds. Minimum value: 0. Maximum value: 180.' + example: 5 + format: int32 + maximum: 180 + minimum: 0 + type: integer + required: + - name + - subtype + - value + type: object + SyntheticsAPISubtestStep: + description: The subtest step used in a Synthetics multi-step API test. + properties: + allowFailure: + description: Determines whether or not to continue with test if this step fails. + type: boolean + alwaysExecute: + description: A boolean set to always execute this step even if the previous step failed or was skipped. + type: boolean + exitIfSucceed: + description: Determines whether or not to exit the test if the step succeeds. + type: boolean + extractedValuesFromScript: + description: Generate variables using JavaScript. + type: string + id: + description: ID of the step. + example: abc-def-123 + readOnly: true + type: string + isCritical: + description: |- + Determines whether or not to consider the entire test as failed if this step fails. + Can be used only if `allowFailure` is `true`. + type: boolean + name: + description: The name of the step. + example: Example step name + type: string + retry: + $ref: '#/components/schemas/SyntheticsTestOptionsRetry' + subtestPublicId: + description: Public ID of the test to be played as part of a `playSubTest` step type. + example: '' + type: string + subtype: + $ref: '#/components/schemas/SyntheticsAPISubtestStepSubtype' + required: + - name + - subtype + - subtestPublicId + type: object + SyntheticsTestOptionsMonitorOptionsNotificationPresetName: + description: The name of the preset for the notification for the monitor. + enum: + - show_all + - hide_all + - hide_query + - hide_handles + - hide_query_and_handles + - show_only_snapshot + - hide_handles_and_footer + type: string + x-enum-varnames: + - SHOW_ALL + - HIDE_ALL + - HIDE_QUERY + - HIDE_HANDLES + - HIDE_QUERY_AND_HANDLES + - SHOW_ONLY_SNAPSHOT + - HIDE_HANDLES_AND_FOOTER + SyntheticsTestOptionsSchedulingTimeframe: + description: Object describing a timeframe. + properties: + day: + description: Number representing the day of the week. + example: 1 + format: int32 + maximum: 7 + minimum: 1 + type: integer + from: + description: The hour of the day on which scheduling starts. + example: '07:00' + type: string + to: + description: The hour of the day on which scheduling ends. + example: '16:00' + type: string + required: + - day + - from + - to + type: object + SyntheticsBrowserVariableType: + description: Type of browser test variable. + enum: + - element + - email + - global + - text + example: text + type: string + x-enum-varnames: + - ELEMENT + - EMAIL + - GLOBAL + - TEXT + SyntheticsBrowserTestFailureCode: + description: Error code that can be returned by a Synthetic test. + enum: + - API_REQUEST_FAILURE + - ASSERTION_FAILURE + - DOWNLOAD_FILE_TOO_LARGE + - ELEMENT_NOT_INTERACTABLE + - EMAIL_VARIABLE_NOT_DEFINED + - EVALUATE_JAVASCRIPT + - EVALUATE_JAVASCRIPT_CONTEXT + - EXTRACT_VARIABLE + - FORBIDDEN_URL + - FRAME_DETACHED + - INCONSISTENCIES + - INTERNAL_ERROR + - INVALID_TYPE_TEXT_DELAY + - INVALID_URL + - INVALID_VARIABLE_PATTERN + - INVISIBLE_ELEMENT + - LOCATE_ELEMENT + - NAVIGATE_TO_LINK + - OPEN_URL + - PRESS_KEY + - SERVER_CERTIFICATE + - SELECT_OPTION + - STEP_TIMEOUT + - SUB_TEST_NOT_PASSED + - TEST_TIMEOUT + - TOO_MANY_HTTP_REQUESTS + - UNAVAILABLE_BROWSER + - UNKNOWN + - UNSUPPORTED_AUTH_SCHEMA + - UPLOAD_FILES_ELEMENT_TYPE + - UPLOAD_FILES_DIALOG + - UPLOAD_FILES_DYNAMIC_ELEMENT + - UPLOAD_FILES_NAME + type: string + x-enum-varnames: + - API_REQUEST_FAILURE + - ASSERTION_FAILURE + - DOWNLOAD_FILE_TOO_LARGE + - ELEMENT_NOT_INTERACTABLE + - EMAIL_VARIABLE_NOT_DEFINED + - EVALUATE_JAVASCRIPT + - EVALUATE_JAVASCRIPT_CONTEXT + - EXTRACT_VARIABLE + - FORBIDDEN_URL + - FRAME_DETACHED + - INCONSISTENCIES + - INTERNAL_ERROR + - INVALID_TYPE_TEXT_DELAY + - INVALID_URL + - INVALID_VARIABLE_PATTERN + - INVISIBLE_ELEMENT + - LOCATE_ELEMENT + - NAVIGATE_TO_LINK + - OPEN_URL + - PRESS_KEY + - SERVER_CERTIFICATE + - SELECT_OPTION + - STEP_TIMEOUT + - SUB_TEST_NOT_PASSED + - TEST_TIMEOUT + - TOO_MANY_HTTP_REQUESTS + - UNAVAILABLE_BROWSER + - UNKNOWN + - UNSUPPORTED_AUTH_SCHEMA + - UPLOAD_FILES_ELEMENT_TYPE + - UPLOAD_FILES_DIALOG + - UPLOAD_FILES_DYNAMIC_ELEMENT + - UPLOAD_FILES_NAME + SyntheticsBrowserError: + description: Error response object for a browser test. + properties: + description: + description: Description of the error. + example: Example error message + type: string + name: + description: Name of the error. + example: Failed test + type: string + status: + description: Status Code of the error. + example: 500 + format: int64 + type: integer + type: + $ref: '#/components/schemas/SyntheticsBrowserErrorType' + required: + - description + - name + - type + type: object + SyntheticsCheckType: + description: Type of assertion to apply in an API test. + enum: + - equals + - notEquals + - contains + - notContains + - startsWith + - notStartsWith + - greater + - lower + - greaterEquals + - lowerEquals + - matchRegex + - between + - isEmpty + - notIsEmpty + type: string + x-enum-varnames: + - EQUALS + - NOT_EQUALS + - CONTAINS + - NOT_CONTAINS + - STARTS_WITH + - NOT_STARTS_WITH + - GREATER + - LOWER + - GREATER_EQUALS + - LOWER_EQUALS + - MATCH_REGEX + - BETWEEN + - IS_EMPTY + - NOT_IS_EMPTY + SyntheticsPlayingTab: + description: Navigate between different tabs for your browser test. + enum: + - -1 + - 0 + - 1 + - 2 + - 3 + format: int64 + type: integer + x-enum-varnames: + - MAIN_TAB + - NEW_TAB + - TAB_1 + - TAB_2 + - TAB_3 + SyntheticsCoreWebVitals: + description: Core Web Vitals attached to a browser test step. + properties: + cls: + description: Cumulative Layout Shift. + format: double + type: number + lcp: + description: Largest Contentful Paint in milliseconds. + format: double + type: number + url: + description: URL attached to the metrics. + type: string + type: object + SyntheticsStepDetailWarning: + description: Object collecting warnings for a given step. + properties: + message: + description: Message for the warning. + example: '' + type: string + type: + $ref: '#/components/schemas/SyntheticsWarningType' + required: + - message + - type + type: object + SyntheticsTestRestrictionPolicyBindingPrincipals: + description: List of principals for a mobile test binding. + items: + description: A principal for a mobile test binding. + maxLength: 1500 + type: string + type: array + SyntheticsTestRestrictionPolicyBindingRelation: + description: The type of relation for the binding. + enum: + - editor + - viewer + type: string + x-enum-varnames: + - EDITOR + - VIEWER + SyntheticsMobileTestsMobileApplicationReferenceType: + description: Reference type for the mobile application for a mobile synthetics test. + enum: + - latest + - version + example: latest + type: string + x-enum-varnames: + - LATEST + - VERSION + SyntheticsMobileStepParamsDirection: + description: The direction of the scroll for a `scrollToElement` step type. + enum: + - up + - down + - left + - right + type: string + x-enum-varnames: + - UP + - DOWN + - LEFT + - RIGHT + SyntheticsMobileStepParamsElement: + description: Information about the element used for a step. + properties: + context: + description: Context of the element. + type: string + contextType: + $ref: '#/components/schemas/SyntheticsMobileStepParamsElementContextType' + elementDescription: + description: Description of the element. + type: string + multiLocator: + description: Multi-locator to find the element. (opaque JSON object) + type: string + relativePosition: + $ref: '#/components/schemas/SyntheticsMobileStepParamsElementRelativePosition' + textContent: + description: Text content of the element. + type: string + userLocator: + $ref: '#/components/schemas/SyntheticsMobileStepParamsElementUserLocator' + viewName: + description: Name of the view of the element. + type: string + type: object + SyntheticsMobileStepParamsPositions: + description: List of positions for the `flick` step type. The maximum is 10 flicks per step + items: + $ref: '#/components/schemas/SyntheticsMobileStepParamsPositionsItems' + type: array + SyntheticsMobileStepParamsValue: + description: Values used in the step for in multiple step types. + type: string + format: int64 + SyntheticsMobileStepParamsVariable: + description: Variable object for `extractVariable` step type. + properties: + example: + description: An example for the variable. + example: '' + type: string + name: + description: The variable name. + example: VAR_NAME + type: string + required: + - name + - example + type: object + SyntheticsBasicAuthWeb: + description: Object to handle basic authentication when performing the test. + properties: + password: + description: Password to use for the basic authentication. + example: PaSSw0RD! + type: string + type: + $ref: '#/components/schemas/SyntheticsBasicAuthWebType' + username: + description: Username to use for the basic authentication. + example: my_username + type: string + type: object + SyntheticsBasicAuthSigv4: + description: Object to handle `SIGV4` authentication when performing the test. + properties: + accessKey: + description: Access key for the `SIGV4` authentication. + example: AKIAIOSFODNN7EXAMPLE + type: string + region: + description: Region for the `SIGV4` authentication. + example: us-east-1 + type: string + secretKey: + description: Secret key for the `SIGV4` authentication. + example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYzEXAMPLEKEY + type: string + serviceName: + description: Service name for the `SIGV4` authentication. + example: execute-api + type: string + sessionToken: + description: Session token for the `SIGV4` authentication. + example: |- + AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/L + To6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3z + rkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtp + Z3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE + type: string + type: + $ref: '#/components/schemas/SyntheticsBasicAuthSigv4Type' + required: + - accessKey + - secretKey + - type + type: object + SyntheticsBasicAuthNTLM: + description: Object to handle `NTLM` authentication when performing the test. + properties: + domain: + description: Domain for the authentication to use when performing the test. + example: DOMAINNAME + type: string + password: + description: Password for the authentication to use when performing the test. + example: examplepassword + type: string + type: + $ref: '#/components/schemas/SyntheticsBasicAuthNTLMType' + username: + description: Username for the authentication to use when performing the test. + example: joedoe + type: string + workstation: + description: Workstation for the authentication to use when performing the test. + example: '' + type: string + required: + - type + type: object + SyntheticsBasicAuthDigest: + description: Object to handle digest authentication when performing the test. + properties: + password: + description: Password to use for the digest authentication. + example: PaSSw0RD! + type: string + type: + $ref: '#/components/schemas/SyntheticsBasicAuthDigestType' + username: + description: Username to use for the digest authentication. + example: my_username + type: string + required: + - password + - username + - type + type: object + SyntheticsBasicAuthOauthClient: + description: Object to handle `oauth client` authentication when performing the test. + properties: + accessTokenUrl: + description: Access token URL to use when performing the authentication. + example: https://example.com + type: string + audience: + description: Audience to use when performing the authentication. + example: audience + type: string + clientId: + description: Client ID to use when performing the authentication. + example: oauth-username + type: string + clientSecret: + description: Client secret to use when performing the authentication. + example: oauth-password + type: string + resource: + description: Resource to use when performing the authentication. + example: resource + type: string + scope: + description: Scope to use when performing the authentication. + example: scope + type: string + tokenApiAuthentication: + $ref: '#/components/schemas/SyntheticsBasicAuthOauthTokenApiAuthentication' + type: + $ref: '#/components/schemas/SyntheticsBasicAuthOauthClientType' + required: + - accessTokenUrl + - tokenApiAuthentication + - clientId + - clientSecret + - type + type: object + SyntheticsBasicAuthOauthROP: + description: Object to handle `oauth rop` authentication when performing the test. + properties: + accessTokenUrl: + description: Access token URL to use when performing the authentication. + example: https://example.com + type: string + audience: + description: Audience to use when performing the authentication. + example: audience + type: string + clientId: + description: Client ID to use when performing the authentication. + example: client-id + type: string + clientSecret: + description: Client secret to use when performing the authentication. + example: client-secret + type: string + password: + description: Password to use when performing the authentication. + example: password + type: string + resource: + description: Resource to use when performing the authentication. + example: resource + type: string + scope: + description: Scope to use when performing the authentication. + example: scope + type: string + tokenApiAuthentication: + $ref: '#/components/schemas/SyntheticsBasicAuthOauthTokenApiAuthentication' + type: + $ref: '#/components/schemas/SyntheticsBasicAuthOauthROPType' + username: + description: Username to use when performing the authentication. + example: username + type: string + required: + - accessTokenUrl + - password + - tokenApiAuthentication + - username + - type + type: object + SyntheticsBasicAuthJWT: + description: Object to handle JWT authentication when performing the test. + properties: + addClaims: + $ref: '#/components/schemas/SyntheticsBasicAuthJWTAddClaims' + algorithm: + $ref: '#/components/schemas/SyntheticsBasicAuthJWTAlgorithm' + expiresIn: + description: Token time-to-live in seconds. + example: 3600 + format: int64 + minimum: 1 + type: integer + header: + description: Custom JWT header as a JSON string. + example: '{"kid": "my-key-id"}' + type: string + payload: + description: JWT claims as a JSON string. + example: '{"sub": "1234567890", "name": "John Doe"}' + type: string + secret: + description: |- + Signing key for the JWT authentication. Use the shared secret for `HS256` + or the private key (PEM format) for `RS256` and `ES256`. + example: mysecretkey + type: string + tokenPrefix: + description: Prefix added before the token in the `Authorization` header. Defaults to `Bearer`. + example: Bearer + type: string + type: + $ref: '#/components/schemas/SyntheticsBasicAuthJWTType' + required: + - algorithm + - payload + - secret + - type + type: object + SyntheticsSSLCertificateIssuer: + description: Object describing the issuer of a SSL certificate. + properties: + C: + description: Country Name that issued the certificate. + type: string + CN: + description: Common Name that issued certificate. + type: string + L: + description: Locality that issued the certificate. + type: string + O: + description: Organization that issued the certificate. + type: string + OU: + description: Organizational Unit that issued the certificate. + type: string + ST: + description: State Or Province Name that issued the certificate. + type: string + type: object + SyntheticsSSLCertificateSubject: + description: Object describing the SSL certificate used for the test. + properties: + C: + description: Country Name associated with the certificate. + type: string + CN: + description: Common Name that associated with the certificate. + type: string + L: + description: Locality associated with the certificate. + type: string + O: + description: Organization associated with the certificate. + type: string + OU: + description: Organizational Unit associated with the certificate. + type: string + ST: + description: State Or Province Name associated with the certificate. + type: string + altName: + description: Subject Alternative Name associated with the certificate. + type: string + type: object + SyntheticsApiTestFailureCode: + description: Error code that can be returned by a Synthetic test. + enum: + - BODY_TOO_LARGE + - DENIED + - TOO_MANY_REDIRECTS + - AUTHENTICATION_ERROR + - DECRYPTION + - INVALID_CHAR_IN_HEADER + - HEADER_TOO_LARGE + - HEADERS_INCOMPATIBLE_CONTENT_LENGTH + - INVALID_REQUEST + - REQUIRES_UPDATE + - UNESCAPED_CHARACTERS_IN_REQUEST_PATH + - MALFORMED_RESPONSE + - INCORRECT_ASSERTION + - CONNREFUSED + - CONNRESET + - DNS + - HOSTUNREACH + - NETUNREACH + - TIMEOUT + - SSL + - OCSP + - INVALID_TEST + - TUNNEL + - WEBSOCKET + - UNKNOWN + - INTERNAL_ERROR + type: string + x-enum-varnames: + - BODY_TOO_LARGE + - DENIED + - TOO_MANY_REDIRECTS + - AUTHENTICATION_ERROR + - DECRYPTION + - INVALID_CHAR_IN_HEADER + - HEADER_TOO_LARGE + - HEADERS_INCOMPATIBLE_CONTENT_LENGTH + - INVALID_REQUEST + - REQUIRES_UPDATE + - UNESCAPED_CHARACTERS_IN_REQUEST_PATH + - MALFORMED_RESPONSE + - INCORRECT_ASSERTION + - CONNREFUSED + - CONNRESET + - DNS + - HOSTUNREACH + - NETUNREACH + - TIMEOUT + - SSL + - OCSP + - INVALID_TEST + - TUNNEL + - WEBSOCKET + - UNKNOWN + - INTERNAL_ERROR + SyntheticsGlobalVariableParserType: + description: Type of parser for a Synthetic global variable from a synthetics test. + enum: + - raw + - json_path + - regex + - x_path + example: raw + type: string + x-enum-varnames: + - RAW + - JSON_PATH + - REGEX + - X_PATH + SyntheticsGlobalVariableTOTPParameters: + description: Parameters for the TOTP/MFA variable + properties: + digits: + description: Number of digits for the OTP code. + example: 6 + format: int32 + maximum: 10 + minimum: 4 + type: integer + refresh_interval: + description: Interval for which to refresh the token (in seconds). + example: 30 + format: int32 + maximum: 999 + minimum: 0 + type: integer + type: object + MonitorNotificationRuleCondition: + description: |- + A conditional recipient rule composed of a `scope` (the matching condition) and + `recipients` (who to notify when it matches). + properties: + recipients: + $ref: '#/components/schemas/MonitorNotificationRuleRecipients' + description: A list of recipients to notify. Uses the same format as the monitor `message` field. Must not start with an '@'. + scope: + $ref: '#/components/schemas/MonitorNotificationRuleConditionScope' + required: + - scope + - recipients + type: object + MonitorNotificationRuleFilterTags: + additionalProperties: false + description: Filters monitor notifications by a list of tag key:value pairs. + properties: + tags: + description: A list of tag key:value pairs (e.g. `team:product`). All tags must match (AND semantics). + example: + - team:product + - host:abc + items: + description: A tag key:value pair to match against monitor notifications. + maxLength: 255 + type: string + maxItems: 20 + minItems: 1 + type: array + uniqueItems: true + required: + - tags + type: object + MonitorNotificationRuleFilterScope: + additionalProperties: false + description: Filters monitor notifications using a scope expression over key:value pairs with boolean logic (AND, OR, NOT). + properties: + scope: + description: A scope expression composed by key:value pairs (e.g. `service:foo`) with boolean operators (AND, OR, NOT) and parentheses for grouping. + example: service:(foo OR bar) AND team:test NOT environment:staging + maxLength: 3000 + minLength: 1 + type: string + required: + - scope + type: object + MonitorNotificationRuleRelationshipsCreatedByData: + description: Data for the user who created the monitor notification rule. + nullable: true + properties: + id: + description: User ID of the monitor notification rule creator. + example: 00000000-0000-1234-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/UsersType' + type: object + RelationshipToOrganization: + description: Relationship to an organization. + properties: + data: + $ref: '#/components/schemas/RelationshipToOrganizationData' + required: + - data + type: object + RelationshipToOrganizations: + description: Relationship to organizations. + properties: + data: + description: Relationships to organization objects. + example: [] + items: + $ref: '#/components/schemas/RelationshipToOrganizationData' + type: array + required: + - data + type: object + RelationshipToUsers: + description: Relationship to users. + properties: + data: + description: Relationships to user objects. + example: [] + items: + $ref: '#/components/schemas/RelationshipToUserData' + type: array + required: + - data + type: object + RelationshipToRoles: + description: Relationship to roles. + properties: + data: + description: An array containing type and the unique identifier of a role. + items: + $ref: '#/components/schemas/RelationshipToRoleData' + type: array + type: object + MonitorConfigPolicyTagPolicy: + description: Tag attributes of a monitor configuration policy. + properties: + tag_key: + description: The key of the tag. + example: datacenter + maxLength: 255 + type: string + tag_key_required: + description: If a tag key is required for monitor creation. + example: true + type: boolean + valid_tag_values: + description: Valid values for the tag. + example: + - prod + - staging + items: + description: A valid tag value for the monitor configuration policy. + maxLength: 255 + type: string + type: array + type: object + MonitorConfigPolicyTagPolicyCreateRequest: + description: Tag attributes of a monitor configuration policy. + properties: + tag_key: + description: The key of the tag. + example: datacenter + maxLength: 255 + type: string + tag_key_required: + description: If a tag key is required for monitor creation. + example: true + type: boolean + valid_tag_values: + description: Valid values for the tag. + example: + - prod + - staging + items: + description: A valid tag value for the monitor configuration policy. + maxLength: 255 + type: string + type: array + required: + - tag_key + - tag_key_required + - valid_tag_values + type: object + MonitorUserTemplateTemplateVariablesItems: + additionalProperties: false + description: List of objects representing template variables on the monitor which can have selectable values. + properties: + available_values: + description: Available values for the variable. + example: + - value1 + - value2 + items: + description: An available value for the template variable. + minLength: 1 + type: string + uniqueItems: true + type: array + defaults: + description: Default values of the template variable. + example: + - defaultValue + items: + description: A default value for the template variable. + minLength: 0 + type: string + uniqueItems: true + type: array + name: + description: The name of the template variable. + example: regionName + type: string + tag_key: + description: The tag key associated with the variable. This works the same as dashboard template variables. + example: datacenter + type: string + required: + - name + type: object + SyntheticsDowntimeTimeSlotRequest: + description: A time slot for a Synthetics downtime create or update request. + properties: + duration: + description: The duration of the time slot in seconds, between 60 and 604800. + example: 3600 + format: int64 + type: integer + name: + description: An optional label for the time slot. + example: Weekly maintenance window + type: string + recurrence: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotRecurrenceRequest' + start: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotDate' + timezone: + description: The IANA timezone name for the time slot. + example: Europe/Paris + type: string + required: + - start + - timezone + - duration + type: object + SyntheticsDowntimeTimeSlotResponse: + description: A time slot returned in a Synthetics downtime response. + properties: + duration: + description: The duration of the time slot in seconds. + example: 3600 + format: int64 + type: integer + id: + description: The unique identifier of the time slot. + example: 00000000-0000-0000-0000-000000000002 + type: string + name: + description: The label for the time slot. + example: Weekly maintenance window + type: string + recurrence: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotRecurrenceResponse' + start: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotDate' + timezone: + description: The IANA timezone name for the time slot. + example: Europe/Paris + type: string + required: + - id + - start + - timezone + - duration + type: object + SyntheticsSuiteTestAlertingCriticality: + description: Alerting criticality for each the test. + enum: + - ignore + - critical + example: critical + type: string + x-enum-varnames: + - IGNORE + - CRITICAL + JsonPatchOperationOp: + description: The operation to perform. + enum: + - add + - remove + - replace + - move + - copy + - test + example: add + type: string + x-enum-varnames: + - ADD + - REMOVE + - REPLACE + - MOVE + - COPY + - TEST + SyntheticsTestResultDeviceBrowser: + description: Browser information for the device used to run the test. + properties: + type: + description: Browser type (for example, `chrome`, `firefox`). + example: edge + type: string + user_agent: + description: User agent string reported by the browser. + example: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.212 Safari/537.36 Edg/127.0.2651.105 DatadogSynthetics + type: string + version: + description: Browser version. + example: 127.0.2651.105 + type: string + type: object + SyntheticsTestResultDevicePlatform: + description: Platform information for the device used to run the test. + properties: + name: + description: Platform name (for example, `linux`, `macos`). + example: ios + type: string + version: + description: Platform version. + example: '14.8' + type: string + type: object + SyntheticsTestResultDeviceResolution: + description: Screen resolution of the device used to run the test. + properties: + height: + description: Viewport height in pixels. + example: 1100 + format: int64 + type: integer + pixel_ratio: + description: Device pixel ratio. + example: 2 + format: double + type: number + width: + description: Viewport width in pixels. + example: 1440 + format: int64 + type: integer + type: object + SyntheticsTestResultDuration: + description: Total duration of a Synthetic test execution. + properties: + has_duration: + description: Whether a duration was recorded for this execution. + example: true + type: boolean + value: + description: Duration value in milliseconds. + example: 380 + format: int64 + type: integer + type: object + SyntheticsTestResultRelationshipTestData: + description: Data for the test relationship. + properties: + id: + description: The public ID of the test. + example: abc-def-123 + type: string + type: + description: Type of the related resource. + example: test + type: string + type: object + SyntheticsTestResultCIPipeline: + description: Details of the CI pipeline. + properties: + id: + description: Pipeline identifier. + example: pipeline-abc-123 + type: string + name: + description: Pipeline name. + example: build-and-test + type: string + number: + description: Pipeline number. + example: 42 + format: int64 + type: integer + url: + description: Pipeline URL. + example: https://github.com/DataDog/example/actions/runs/42 + type: string + type: object + SyntheticsTestResultCIProvider: + description: Details of the CI provider. + properties: + name: + description: Provider name. + example: github + type: string + type: object + SyntheticsTestResultCIStage: + description: Details of the CI stage. + properties: + name: + description: Stage name. + example: test + type: string + type: object + SyntheticsTestResultGitCommit: + description: Details of the Git commit associated with the test result. + properties: + author: + $ref: '#/components/schemas/SyntheticsTestResultGitUser' + committer: + $ref: '#/components/schemas/SyntheticsTestResultGitUser' + message: + description: Commit message. + example: Fix bug in login flow + type: string + sha: + description: Commit SHA. + example: 9e107d9d372bb6826bd81d3542a419d6f0e1de56 + type: string + url: + description: URL of the commit. + example: https://github.com/DataDog/example/commit/9e107d9d372bb6826bd81d3542a419d6f0e1de56 + type: string + type: object + SyntheticsTestResultAssertionResult: + description: An individual assertion result from a Synthetic test. + properties: + actual: + description: Actual value observed during the test. Its type depends on the assertion type. + example: 200 + error_message: + description: Error message if the assertion failed. + example: 'Assertion failed: expected 200 but got 500' + type: string + expected: + description: Expected value for the assertion. Its type depends on the assertion type. + example: '200' + operator: + description: Operator used for the assertion (for example, `is`, `contains`). + example: is + type: string + property: + description: Property targeted by the assertion, when applicable. + example: content-type + type: string + target: + description: Target value for the assertion. Its type depends on the assertion type. + example: 200 + target_path: + description: JSON path or XPath evaluated for the assertion. + example: $.url + type: string + target_path_operator: + description: Operator used for the target path assertion. + example: contains + type: string + type: + description: Type of the assertion (for example, `responseTime`, `statusCode`, `body`). + example: statusCode + type: string + valid: + description: Whether the assertion passed. + example: true + type: boolean + type: object + SyntheticsTestResultBucketKeys: + description: Storage bucket keys for artifacts produced during a step or test. + properties: + after_step_screenshot: + description: Key for the screenshot captured after the step (goal-based tests). + example: screenshots/after-step-1-1.png + type: string + after_turn_screenshot: + description: Key for the screenshot captured after the turn (goal-based tests). + example: screenshots/after-turn-1.png + type: string + artifacts: + description: Key for miscellaneous artifacts. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/artifacts__1724521416257.json + type: string + before_step_screenshot: + description: Key for the screenshot captured before the step (goal-based tests). + example: screenshots/before-step-1-1.png + type: string + before_turn_screenshot: + description: Key for the screenshot captured before the turn (goal-based tests). + example: screenshots/before-turn-1.png + type: string + crash_report: + description: Key for a captured crash report. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/crash_report.log + type: string + device_logs: + description: Key for captured device logs. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/d2z-32s-iax_1340718101990858549_device_logs.log + type: string + email_messages: + description: Keys for email message payloads captured by the step. + items: + description: Storage bucket key for a captured email message. + type: string + type: array + screenshot: + description: Key for the captured screenshot. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/step-0__1724521416269.jpeg + type: string + snapshot: + description: Key for the captured DOM snapshot. + example: 2/e2e-tests/equ-jku-twc/results/6989498452827932222/edge.laptop_large/snapshot.html + type: string + source: + description: Key for the page source or element source. + example: 2/e2e-tests/d2z-32s-iax/results/1340718101990858549/synthetics:mobile:device:iphone_se_2020_ios_14/step-0__1724445301832.xml + type: string + type: object + SyntheticsTestResultCertificate: + description: SSL/TLS certificate information returned from an SSL test. + properties: + cipher: + description: Cipher used for the TLS connection. + example: TLS_AES_256_GCM_SHA384 + type: string + exponent: + description: RSA exponent of the certificate. + example: 65537 + format: int64 + type: integer + ext_key_usage: + description: Extended key usage extensions for the certificate. + example: + - 1.3.6.1.5.5.7.3.1 + items: + description: Extended key usage value. + type: string + type: array + fingerprint: + description: SHA-1 fingerprint of the certificate. + example: D6:03:5A:9F:93:E1:B7:28:EC:90:C5:9F:72:30:55:7C:74:5F:53:92 + type: string + fingerprint256: + description: SHA-256 fingerprint of the certificate. + example: 04:45:93:A9:4C:14:70:47:DB:3C:FC:05:F9:5A:50:4E:DA:DB:A1:C6:37:3D:15:C0:B2:7E:5D:93:5F:A2:02:C7 + type: string + issuer: + additionalProperties: + type: string + description: Certificate issuer details. + example: + C: US + CN: WE2 + O: Google Trust Services + type: object + modulus: + description: RSA modulus of the certificate. + example: C0FCE9F9... + type: string + protocol: + description: TLS protocol used (for example, `TLSv1.2`). + example: TLSv1.3 + type: string + serial_number: + description: Serial number of the certificate. + example: 7B584A1A6670A1EB0941A9A121569D60 + type: string + subject: + additionalProperties: + type: string + description: Certificate subject details. + example: + CN: '*.google.fr' + altName: DNS:*.google.fr, DNS:google.fr + type: object + tls_version: + description: TLS protocol version. + example: 1.3 + format: double + type: number + valid: + $ref: '#/components/schemas/SyntheticsTestResultCertificateValidity' + type: object + SyntheticsTestResultDnsResolution: + description: DNS resolution details recorded during the test execution. + properties: + attempts: + description: DNS resolution attempts made during the test. + items: + $ref: '#/components/schemas/SyntheticsTestResultDnsResolutionAttempt' + type: array + resolved_ip: + description: Resolved IP address for the target host. + example: 54.243.255.141 + type: string + resolved_port: + description: Resolved port for the target service. + example: '443' + type: string + server: + description: DNS server used for the resolution. + example: 8.8.4.4 + type: string + type: object + SyntheticsTestResultFailure: + description: Details about the failure of a Synthetic test. + properties: + code: + description: Error code for the failure. + example: TIMEOUT + type: string + internal_code: + description: Internal error code used for debugging. + example: INCORRECT_ASSERTION + type: string + internal_message: + description: Internal error message used for debugging. + example: Assertion failed on step 2 + type: string + message: + description: Error message for the failure. + example: Connection timed out + type: string + type: object + SyntheticsTestResultHandshake: + description: Handshake request and response for protocol-level tests. + properties: + request: + $ref: '#/components/schemas/SyntheticsTestResultRequestInfo' + response: + $ref: '#/components/schemas/SyntheticsTestResultResponseInfo' + type: object + SyntheticsTestResultNetpath: + description: Network Path test result capturing the path between source and destination. + properties: + destination: + $ref: '#/components/schemas/SyntheticsTestResultNetpathDestination' + hops: + description: Hops along the network path. + items: + $ref: '#/components/schemas/SyntheticsTestResultNetpathHop' + type: array + origin: + description: Origin of the network path (for example, probe source). + example: synthetics + type: string + pathtrace_id: + description: Identifier of the path trace. + example: 5d3cb978-533b-41ce-85a4-3661c8dd6a0b + type: string + protocol: + description: Protocol used for the path trace (for example, `tcp`, `udp`, `icmp`). + example: TCP + type: string + source: + $ref: '#/components/schemas/SyntheticsTestResultNetpathEndpoint' + tags: + description: Tags associated with the network path measurement. + example: + - synthetics.test_id:nja-epx-mg8 + items: + description: Tag associated with the network path measurement. + type: string + type: array + timestamp: + description: Unix timestamp (ms) of the network path measurement. + example: 1744117822266 + format: int64 + type: integer + type: object + SyntheticsTestResultNetstats: + description: Aggregated network statistics from the test execution. + properties: + hops: + $ref: '#/components/schemas/SyntheticsTestResultNetstatsHops' + jitter: + description: Network jitter in milliseconds. + example: 0.08 + format: double + type: number + latency: + $ref: '#/components/schemas/SyntheticsTestResultNetworkLatency' + packet_loss_percentage: + description: Percentage of probe packets lost. + example: 0 + format: double + type: number + packets_received: + description: Number of probe packets received. + example: 4 + format: int64 + type: integer + packets_sent: + description: Number of probe packets sent. + example: 4 + format: int64 + type: integer + type: object + SyntheticsTestResultOCSPResponse: + description: OCSP response received while validating a certificate. + properties: + certificate: + $ref: '#/components/schemas/SyntheticsTestResultOCSPCertificate' + status: + description: OCSP response status (for example, `good`, `revoked`, `unknown`). + example: good + type: string + updates: + $ref: '#/components/schemas/SyntheticsTestResultOCSPUpdates' + type: object + SyntheticsTestResultTracerouteHop: + description: A network probe result, used for traceroute hops and ping summaries. + properties: + host: + description: Target hostname. + example: 34.95.79.70 + type: string + latency: + $ref: '#/components/schemas/SyntheticsTestResultNetworkLatency' + packet_loss_percentage: + description: Percentage of probe packets lost. + example: 0 + format: double + type: number + packet_size: + description: Size of each probe packet in bytes. + example: 56 + format: int64 + type: integer + packets_received: + description: Number of probe packets received. + example: 4 + format: int64 + type: integer + packets_sent: + description: Number of probe packets sent. + example: 4 + format: int64 + type: integer + resolved_ip: + description: Resolved IP address for the target. + example: 34.95.79.70 + type: string + routers: + description: List of intermediate routers for the traceroute. + items: + $ref: '#/components/schemas/SyntheticsTestResultRouter' + type: array + type: object + SyntheticsTestResultRequestInfo: + description: Details of the outgoing request made during the test execution. + properties: + allow_insecure: + description: Whether insecure certificates are allowed for this request. + example: false + type: boolean + body: + description: Body sent with the request. + example: '{"key":"value"}' + type: string + call_type: + description: gRPC call type (for example, `unary`, `healthCheck`, or `reflection`). + example: unary + type: string + destination_service: + description: Destination service for a Network Path test. + example: my-service + type: string + dns_server: + description: DNS server used to resolve the target host. + example: 8.8.8.8 + type: string + dns_server_port: + description: Port of the DNS server used for resolution. + example: 53 + format: int64 + type: integer + e2e_queries: + description: Number of end-to-end probe queries issued. + example: 4 + format: int64 + type: integer + files: + description: Files attached to the request. + items: + $ref: '#/components/schemas/SyntheticsTestResultFileRef' + type: array + headers: + additionalProperties: {} + description: Headers sent with the request. + example: + content-type: application/json + type: object + host: + description: Host targeted by the request. + example: grpcbin.test.k6.io + type: string + max_ttl: + description: Maximum TTL for network probe packets. + example: 64 + format: int64 + type: integer + message: + description: Message sent with the request (for WebSocket/TCP/UDP tests). + example: My message + type: string + method: + description: HTTP method used for the request. + example: GET + type: string + no_saving_response_body: + description: Whether the response body was not saved. + example: true + type: boolean + port: + description: Port targeted by the request. Can be a number or a string variable reference. + example: 9000 + service: + description: Service name targeted by the request (for gRPC tests). + example: addsvc.Add + type: string + source_service: + description: Source service for a Network Path test. + example: synthetics + type: string + timeout: + description: Request timeout in milliseconds. + example: 60 + format: int64 + type: integer + tool_name: + description: Name of the MCP tool called (MCP tests only). + example: search + type: string + traceroute_queries: + description: Number of traceroute probe queries issued. + example: 2 + format: int64 + type: integer + url: + description: URL targeted by the request. + example: https://httpbin.org/anything/lol valuehugo + type: string + type: object + SyntheticsTestResultResponseInfo: + description: Details of the response received during the test execution. + properties: + body: + description: Body of the response. + example: '{"status":"ok"}' + type: string + body_compressed: + description: Compressed representation of the response body. + example: eJzLSM3JyQcABiwCFQ== + type: string + body_hashes: + description: Hashes computed over the response body. + example: 9e107d9d372bb6826bd81d3542a419d6 + type: string + body_size: + description: Size of the response body in bytes. + example: 793 + format: int64 + type: integer + cache_headers: + additionalProperties: + type: string + description: Cache-related response headers. + example: + server: gunicorn/19.9.0 + type: object + cdn: + $ref: '#/components/schemas/SyntheticsTestResultCdnProviderInfo' + close: + $ref: '#/components/schemas/SyntheticsTestResultWebSocketClose' + compressed_message: + description: Compressed representation of the response message. + example: eJzLSM3JyQcABiwCFQ== + type: string + headers: + additionalProperties: {} + description: Response headers. + example: + content-type: application/json + type: object + healthcheck: + $ref: '#/components/schemas/SyntheticsTestResultHealthCheck' + http_version: + description: HTTP version of the response. + example: '2.0' + type: string + is_body_truncated: + description: Whether the response body was truncated. + example: false + type: boolean + is_message_truncated: + description: Whether the response message was truncated. + example: false + type: boolean + message: + description: Message received in the response (for WebSocket/TCP/UDP tests). + example: '{"f_string":"concat-STATIC_HIDDEN_VALUE"}' + type: string + metadata: + additionalProperties: + type: string + description: Additional metadata returned with the response. + type: object + records: + description: DNS records returned in the response (DNS tests only). + items: + $ref: '#/components/schemas/SyntheticsTestResultDnsRecord' + type: array + redirects: + description: Redirect hops encountered while performing the request. + items: + $ref: '#/components/schemas/SyntheticsTestResultRedirect' + type: array + status_code: + description: HTTP status code of the response. + example: 200 + format: int64 + type: integer + type: object + SyntheticsTestResultStep: + description: A step result from a browser, mobile, or multistep API test. + properties: + allow_failure: + description: Whether the test continues when this step fails. + example: false + type: boolean + api_test: + additionalProperties: {} + description: Inner API test definition for browser `runApiTest` steps. + type: object + assertion_result: + $ref: '#/components/schemas/SyntheticsTestResultStepAssertionResult' + assertions: + description: Assertion results produced by the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultAssertionResult' + type: array + blocked_requests_urls: + description: URLs of requests blocked during the step. + items: + description: Blocked request URL. + type: string + type: array + bounds: + $ref: '#/components/schemas/SyntheticsTestResultBounds' + browser_errors: + description: Browser errors captured during the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultBrowserError' + type: array + bucket_keys: + $ref: '#/components/schemas/SyntheticsTestResultBucketKeys' + cdn_resources: + description: CDN resources encountered during the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultCdnResource' + type: array + click_type: + description: Click type performed in a browser step. + example: primary + type: string + compressed_json_descriptor: + description: Compressed JSON descriptor for the step (internal format). + example: compressedJsonDescriptorValue + type: string + config: + additionalProperties: {} + description: Request configuration executed by this step (API test steps). + type: object + description: + description: Human-readable description of the step. + example: Navigate to start URL + type: string + duration: + description: Duration of the step in milliseconds. + example: 1015 + format: double + type: number + element_description: + description: Description of the element interacted with by the step. + example: + type: string + element_updates: + $ref: '#/components/schemas/SyntheticsTestResultStepElementUpdates' + extracted_value: + $ref: '#/components/schemas/SyntheticsTestResultVariable' + failure: + $ref: '#/components/schemas/SyntheticsTestResultFailure' + http_results: + description: HTTP results produced by an MCP step. + items: + $ref: '#/components/schemas/SyntheticsTestResultAssertionResult' + type: array + id: + description: Identifier of the step. + example: fkk-j2a-gmw + type: string + is_critical: + description: Whether this step is critical for the test outcome. + example: true + type: boolean + javascript_custom_assertion_code: + description: Whether the step uses a custom JavaScript assertion. + example: false + type: boolean + locate_element_duration: + description: Time taken to locate the element in milliseconds. + example: 845 + format: double + type: number + name: + description: Name of the step. + example: Extract variable from body + type: string + request: + $ref: '#/components/schemas/SyntheticsTestResultRequestInfo' + response: + $ref: '#/components/schemas/SyntheticsTestResultResponseInfo' + retries: + description: Retry results for the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultStep' + type: array + retry_count: + description: Number of times this step was retried. + example: 0 + format: int64 + type: integer + rum_context: + $ref: '#/components/schemas/SyntheticsTestResultRumContext' + started_at: + description: Unix timestamp (ms) of when the step started. + example: 1724445283308 + format: int64 + type: integer + status: + description: Status of the step (for example, `passed`, `failed`). + example: passed + type: string + sub_step: + $ref: '#/components/schemas/SyntheticsTestResultSubStep' + sub_test: + $ref: '#/components/schemas/SyntheticsTestResultSubTest' + subtype: + description: Subtype of the step. + example: http + type: string + tabs: + description: Browser tabs involved in the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultTab' + type: array + timings: + additionalProperties: {} + description: Timing breakdown of the step execution. + type: object + tunnel: + description: Whether the step was executed through a Synthetics tunnel. + example: false + type: boolean + type: + description: Type of the step (for example, `click`, `assertElementContent`, `runApiTest`). + example: click + type: string + url: + description: URL associated with the step (for navigation steps). + example: http://34.95.79.70/prototype + type: string + value: + description: Step value. Its type depends on the step type. + example: http://34.95.79.70/prototype + variables: + $ref: '#/components/schemas/SyntheticsTestResultVariables' + vitals_metrics: + description: Web vitals metrics captured during the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultVitalsMetrics' + type: array + warnings: + description: Warnings emitted during the step. + items: + $ref: '#/components/schemas/SyntheticsTestResultWarning' + type: array + type: object + SyntheticsTestResultTrace: + description: Trace identifiers associated with a Synthetic test result. + properties: + id: + description: Datadog APM trace identifier. + example: '5513046492231128177' + type: string + otel_id: + description: OpenTelemetry trace identifier. + example: d8ba00eb1507bdba8643ba8e7a1c022c + type: string + type: object + SyntheticsTestResultTurn: + description: A turn in a goal-based browser test, grouping steps and reasoning. + properties: + bucket_keys: + $ref: '#/components/schemas/SyntheticsTestResultBucketKeys' + name: + description: Name of the turn. + example: Turn 1 + type: string + reasoning: + description: Agent reasoning produced for this turn. + example: I need to navigate to the chairs section + type: string + status: + description: Status of the turn (for example, `passed`, `failed`). + example: passed + type: string + steps: + description: Steps executed during the turn. + items: + $ref: '#/components/schemas/SyntheticsTestResultTurnStep' + type: array + turn_finished_at: + description: Unix timestamp (ms) of when the turn finished. + example: 1724521438800 + format: int64 + type: integer + turn_started_at: + description: Unix timestamp (ms) of when the turn started. + example: 1724521436800 + format: int64 + type: integer + type: object + SyntheticsTestResultVariables: + description: Variables captured during a test step. + properties: + config: + description: Variables defined in the test configuration. + items: + $ref: '#/components/schemas/SyntheticsTestResultVariable' + type: array + extracted: + description: Variables extracted during the test execution. + items: + $ref: '#/components/schemas/SyntheticsTestResultVariable' + type: array + type: object + SyntheticsNetworkAssertion: + description: Object describing an assertion for a Network Path test. + properties: + operator: + $ref: '#/components/schemas/SyntheticsNetworkAssertionOperator' + property: + $ref: '#/components/schemas/SyntheticsNetworkAssertionProperty' + target: + description: Target value in milliseconds. + example: 500 + format: double + type: number + type: + $ref: '#/components/schemas/SyntheticsNetworkAssertionLatencyType' required: - - data + - operator + - property + - target + - type type: object - MonitorNotificationRuleResponse: - description: A monitor notification rule. + SyntheticsNetworkTestRequest: + description: Object describing the request for a Network Path test. properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleData' - included: - description: >- - Array of objects related to the monitor notification rule that the - user requested. + destination_service: + description: An optional label displayed for the destination host in the Network Path visualization. + type: string + e2e_queries: + description: The number of packets sent to probe the destination to measure packet loss, latency and jitter. + example: 50 + format: int64 + type: integer + host: + description: Host name to query. + example: '' + type: string + max_ttl: + description: The maximum time-to-live (max number of hops) used in outgoing probe packets. + example: 30 + format: int64 + type: integer + port: + description: |- + For TCP or UDP tests, the port to use when performing the test. + If not set on a UDP test, a random port is assigned, which may affect the results. + example: 443 + format: int64 + type: integer + source_service: + description: An optional label displayed for the source host in the Network Path visualization. + type: string + tcp_method: + $ref: '#/components/schemas/SyntheticsNetworkTestRequestTCPMethod' + timeout: + description: Timeout in seconds. + format: int64 + type: integer + traceroute_queries: + description: The number of traceroute path tracings. + example: 3 + format: int64 + type: integer + required: + - host + - max_ttl + - e2e_queries + - traceroute_queries + type: object + SyntheticsTestVersionActionMetadata: + description: Object containing metadata about a change action. + properties: + after_value: + description: The value of the property after the change. + before_value: + description: The value of the property before the change. + diff_patches: + description: List of diff patches for text changes. items: - $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' + $ref: '#/components/schemas/SyntheticsTestVersionDiffPatches' + nullable: true type: array + property_path: + description: The dot-separated path of the property that was changed. + type: string type: object - MonitorNotificationRuleUpdateRequest: - description: Request for updating a monitor notification rule. + MonitorOptionsCustomScheduleRecurrence: + description: Configuration for a recurrence set on the monitor options for custom schedule. properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequestData' + rrule: + description: Defines the recurrence rule (RRULE) for a given schedule. + example: FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR + type: string + start: + description: Defines the start date and time of the recurring schedule. + example: '2023-08-31T16:30:00' + type: string + timezone: + description: Defines the timezone the schedule runs on. + example: Europe/Paris + type: string + type: object + MonitorFormulaAndFunctionEventQueryDefinitionCompute: + description: Compute options. + properties: + aggregation: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventAggregation' + interval: + description: A time interval in milliseconds. + example: 60000 + format: int64 + type: integer + metric: + description: Measurable attribute to compute. + example: '@duration' + type: string + name: + description: The name assigned to this aggregation, when multiple aggregations are defined for a query. + example: compute_result + type: string + source: + description: Source reference for composite query payloads. + example: filter_query + type: string required: - - data + - aggregation type: object - MonitorConfigPolicyListResponse: - description: Response for retrieving all monitor configuration policies. + MonitorFormulaAndFunctionEventsDataSource: + description: Data source for event platform-based queries. + enum: + - rum + - ci_pipelines + - ci_tests + - audit + - events + - logs + - spans + - database_queries + - network + - network_path + example: rum + type: string + x-enum-varnames: + - RUM + - CI_PIPELINES + - CI_TESTS + - AUDIT + - EVENTS + - LOGS + - SPANS + - DATABASE_QUERIES + - NETWORK + - NETWORK_PATH + MonitorFormulaAndFunctionEventQueryGroupBy: + description: List of objects used to group by. properties: - data: - description: An array of monitor configuration policies. + facet: + description: Event facet. + example: status + type: string + limit: + description: Number of groups to return. + example: 10 + format: int64 + type: integer + sort: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBySort' + source: + description: Source reference for composite query payloads. + example: filter_query + type: string + required: + - facet + type: object + MonitorFormulaAndFunctionEventQueryDefinitionSearch: + description: Search options. + properties: + query: + description: Events search string. + example: service:query + type: string + required: + - query + type: object + MonitorFormulaAndFunctionCostAggregator: + description: Aggregation methods for metric queries. + enum: + - avg + - sum + - max + - min + - last + - area + - l2norm + - percentile + - stddev + example: avg + type: string + x-enum-varnames: + - AVG + - SUM + - MAX + - MIN + - LAST + - AREA + - L2NORM + - PERCENTILE + - STDDEV + MonitorFormulaAndFunctionCostDataSource: + description: Data source for cost queries. + enum: + - metrics + - cloud_cost + - datadog_usage + example: cloud_cost + type: string + x-enum-varnames: + - METRICS + - CLOUD_COST + - DATADOG_USAGE + MonitorFormulaAndFunctionDataQualityDataSource: + description: Data source for data quality queries. + enum: + - data_quality_metrics + example: data_quality_metrics + type: string + x-enum-varnames: + - DATA_QUALITY_METRICS + MonitorFormulaAndFunctionDataQualityMeasure: + description: |- + The data quality measure to query. Common values include: + `bytes`, `cardinality`, `custom`, `freshness`, `max`, `mean`, `min`, + `nullness`, `percent_negative`, `percent_zero`, `row_count`, `stddev`, + `sum`, `uniqueness`. Additional values may be supported. + example: row_count + type: string + MonitorFormulaAndFunctionDataQualityMonitorOptions: + description: Monitor configuration options for data quality queries. + properties: + crontab_override: + description: Crontab expression to override the default schedule. + example: '* * * 10' + type: string + custom_sql: + description: Custom SQL query for the monitor. + example: SELECT COUNT(*) FROM users AS dd_value + type: string + custom_where: + description: Custom WHERE clause for the query. + example: USER_ID = 123 + type: string + group_by_columns: + description: Columns to group results by. + example: + - col1 + - col2 items: - $ref: '#/components/schemas/MonitorConfigPolicyResponseData' + description: A column name to group results by. + type: string type: array + model_type_override: + $ref: '#/components/schemas/MonitorFormulaAndFunctionDataQualityModelTypeOverride' + sensitivity: + description: |- + Sensitivity of the anomaly detection model, expressed as a multiplier on the width + of the predicted bounds. Higher values widen the bounds and produce fewer alerts; + lower values tighten them and produce more alerts. Defaults to `3.0`. + example: 3 + format: double + type: number type: object - MonitorConfigPolicyCreateRequest: - description: Request for creating a monitor configuration policy. + MonitorFormulaAndFunctionAggregateAugmentQuery: + description: Augment query for aggregate augmented queries. Can be an events query or a reference table query. properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyCreateData' + compute: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventsDataSource' + group_by: + description: Group by options. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: query_errors + type: string + search: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionSearch' + columns: + description: List of columns to retrieve from the reference table. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionReferenceTableColumn' + type: array + query_filter: + description: Optional filter expression for the reference table query. + type: string + table_name: + description: Name of the reference table. + example: test_table + type: string required: - - data + - data_source + - compute + - name + - table_name type: object - MonitorConfigPolicyResponse: - description: Response for retrieving a monitor configuration policy. + additionalProperties: false + MonitorFormulaAndFunctionAggregateBaseQuery: + description: Base query for aggregate queries. Can be an events query or a metrics query. properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyResponseData' + compute: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventsDataSource' + group_by: + description: Group by options. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: query_errors + type: string + search: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionSearch' + aggregator: + $ref: '#/components/schemas/MonitorFormulaAndFunctionMetricsAggregator' + query: + description: The metrics query definition. + example: avg:system.cpu.user{*} + type: string + required: + - data_source + - compute + - name + - query type: object - MonitorConfigPolicyEditRequest: - description: Request for editing a monitor configuration policy. + additionalProperties: false + MonitorFormulaAndFunctionAggregateAugmentedDataSource: + description: Data source for aggregate augmented queries. + enum: + - aggregate_augmented_query + example: aggregate_augmented_query + type: string + x-enum-varnames: + - AGGREGATE_AUGMENTED_QUERY + MonitorFormulaAndFunctionAggregateQueryJoinCondition: + additionalProperties: false + description: Join condition for aggregate augmented queries. properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyEditData' + augment_attribute: + description: Attribute from the augment query to join on. + example: org_id + type: string + base_attribute: + description: Attribute from the base query to join on. + example: org_id + type: string + join_type: + $ref: '#/components/schemas/MonitorFormulaAndFunctionAggregateQueryJoinType' required: - - data + - base_attribute + - augment_attribute + - join_type type: object - MonitorUserTemplateListResponse: - description: Response for retrieving all monitor user templates. + MonitorFormulaAndFunctionAggregateFilteredDataSource: + description: Data source for aggregate filtered queries. + enum: + - aggregate_filtered_query + example: aggregate_filtered_query + type: string + x-enum-varnames: + - AGGREGATE_FILTERED_QUERY + MonitorFormulaAndFunctionAggregateFilterQuery: + description: Filter query for aggregate filtered queries. Can be an events query or a reference table query. properties: - data: - description: An array of monitor user templates. + compute: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionCompute' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventsDataSource' + group_by: + description: Group by options. items: - $ref: '#/components/schemas/MonitorUserTemplateResponseData' + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryGroupBy' + type: array + indexes: + description: An array of index names to query in the stream. Omit or use `[]` to query all indexes at once. + example: + - days-3 + - days-7 + items: + description: A log index set up for your organization. For additional indexes, see the [multiple indexes](https://docs.datadoghq.com/logs/indexes/#multiple-indexes) documentation. + type: string + type: array + name: + description: Name of the query for use in formulas. + example: query_errors + type: string + search: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventQueryDefinitionSearch' + columns: + description: List of columns to retrieve from the reference table. + items: + $ref: '#/components/schemas/MonitorFormulaAndFunctionReferenceTableColumn' type: array + query_filter: + description: Optional filter expression for the reference table query. + type: string + table_name: + description: Name of the reference table. + example: test_table + type: string + required: + - data_source + - compute + - name + - table_name type: object - MonitorUserTemplateCreateRequest: - description: Request for creating a monitor user template. + additionalProperties: false + MonitorFormulaAndFunctionAggregateQueryFilter: + additionalProperties: false + description: Filter definition for aggregate filtered queries. properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateCreateData' + base_attribute: + description: Attribute from the base query to filter on. + example: org_id + type: string + exclude: + default: false + description: Whether to exclude matching records instead of including them. + type: boolean + filter_attribute: + description: Attribute from the filter query to match against. + example: org_id + type: string required: - - data + - base_attribute + - filter_attribute type: object - MonitorUserTemplateCreateResponse: - description: Response for creating a monitor user template. + SyntheticsCIBatchMetadataPipeline: + description: Description of the CI pipeline. + properties: + url: + description: URL of the pipeline. + type: string + type: object + SyntheticsCIBatchMetadataProvider: + description: Description of the CI provider. + properties: + name: + description: Name of the CI provider. + type: string + type: object + SyntheticsAssertionOperator: + description: Assertion operator to apply. + enum: + - contains + - doesNotContain + - is + - isNot + - lessThan + - lessThanOrEqual + - moreThan + - moreThanOrEqual + - matches + - doesNotMatch + - validates + - isInMoreThan + - isInLessThan + - doesNotExist + - isUndefined + example: contains + type: string + x-enum-varnames: + - CONTAINS + - DOES_NOT_CONTAIN + - IS + - IS_NOT + - LESS_THAN + - LESS_THAN_OR_EQUAL + - MORE_THAN + - MORE_THAN_OR_EQUAL + - MATCHES + - DOES_NOT_MATCH + - VALIDATES + - IS_IN_MORE_DAYS_THAN + - IS_IN_LESS_DAYS_THAN + - DOES_NOT_EXIST + - IS_UNDEFINED + SyntheticsAssertionTargetValue: + description: Value used by the operator in assertions. Can be either a number or string. + example: 0 + format: double + type: number + SyntheticsAssertionTimingsScope: + description: Timings scope for response time assertions. + enum: + - all + - withoutDNS + type: string + x-enum-varnames: + - ALL + - WITHOUT_DNS + SyntheticsAssertionType: + description: Type of the assertion. + enum: + - body + - header + - statusCode + - certificate + - responseTime + - property + - recordEvery + - recordSome + - tlsVersion + - minTlsVersion + - latency + - packetLossPercentage + - packetsReceived + - networkHop + - receivedMessage + - grpcHealthcheckStatus + - grpcMetadata + - grpcProto + - connection + - multiNetworkHop + - jitter + - mcpToolNameLength + - mcpToolCount + example: statusCode + type: string + x-enum-varnames: + - BODY + - HEADER + - STATUS_CODE + - CERTIFICATE + - RESPONSE_TIME + - PROPERTY + - RECORD_EVERY + - RECORD_SOME + - TLS_VERSION + - MIN_TLS_VERSION + - LATENCY + - PACKET_LOSS_PERCENTAGE + - PACKETS_RECEIVED + - NETWORK_HOP + - RECEIVED_MESSAGE + - GRPC_HEALTHCHECK_STATUS + - GRPC_METADATA + - GRPC_PROTO + - CONNECTION + - MULTI_NETWORK_HOP + - JITTER + - MCP_TOOL_NAME_LENGTH + - MCP_TOOL_COUNT + SyntheticsAssertionBodyHashOperator: + description: Assertion operator to apply. + enum: + - md5 + - sha1 + - sha256 + example: md5 + type: string + x-enum-varnames: + - MD5 + - SHA1 + - SHA256 + SyntheticsAssertionBodyHashType: + description: Type of the assertion. + enum: + - bodyHash + example: bodyHash + type: string + x-enum-varnames: + - BODY_HASH + SyntheticsAssertionJSONPathOperator: + description: Assertion operator to apply. + enum: + - validatesJSONPath + example: validatesJSONPath + type: string + x-enum-varnames: + - VALIDATES_JSON_PATH + SyntheticsAssertionJSONPathTargetTarget: + description: Composed target for `validatesJSONPath` operator. properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateResponseData' + elementsOperator: + description: The element from the list of results to assert on. To choose from the first element in the list `firstElementMatches`, every element in the list `everyElementMatches`, at least one element in the list `atLeastOneElementMatches` or the serialized value of the list `serializationMatches`. + type: string + jsonPath: + description: The JSON path to assert. + type: string + operator: + description: The specific operator to use on the path. + type: string + targetValue: + $ref: '#/components/schemas/SyntheticsAssertionTargetValue' + description: The path target value to compare to. type: object - MonitorUserTemplateResponse: - description: Response for retrieving a monitor user template. + SyntheticsAssertionJSONSchemaOperator: + description: Assertion operator to apply. + enum: + - validatesJSONSchema + example: validatesJSONSchema + type: string + x-enum-varnames: + - VALIDATES_JSON_SCHEMA + SyntheticsAssertionJSONSchemaTargetTarget: + description: Composed target for `validatesJSONSchema` operator. properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateResponseDataWithVersions' + jsonSchema: + description: The JSON Schema to assert. + type: string + metaSchema: + $ref: '#/components/schemas/SyntheticsAssertionJSONSchemaMetaSchema' type: object - MonitorUserTemplateUpdateRequest: - description: Request for creating a new monitor user template version. + SyntheticsAssertionXPathOperator: + description: Assertion operator to apply. + enum: + - validatesXPath + example: validatesXPath + type: string + x-enum-varnames: + - VALIDATES_X_PATH + SyntheticsAssertionXPathTargetTarget: + description: Composed target for `validatesXPath` operator. properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateUpdateData' - required: - - data + operator: + description: The specific operator to use on the path. + type: string + targetValue: + $ref: '#/components/schemas/SyntheticsAssertionTargetValue' + description: The path target value to compare to. + xPath: + description: The X path to assert. + type: string type: object - MonitorDowntimeMatchResponse: - description: Response for retrieving all downtime matches for a monitor. + SyntheticsAssertionJavascriptType: + description: Type of the assertion. + enum: + - javascript + example: javascript + type: string + x-enum-varnames: + - JAVASCRIPT + SyntheticsMCPServerCapability: + description: A capability advertised by an MCP server. + enum: + - completions + - experimental + - logging + - prompts + - resources + - tools + type: string + x-enum-varnames: + - COMPLETIONS + - EXPERIMENTAL + - LOGGING + - PROMPTS + - RESOURCES + - TOOLS + SyntheticsAssertionMCPServerCapabilitiesType: + description: Type of the assertion. + enum: + - mcpServerCapabilities + example: mcpServerCapabilities + type: string + x-enum-varnames: + - MCP_SERVER_CAPABILITIES + SyntheticsAssertionMCPRespectsSpecificationType: + description: Type of the assertion. + enum: + - mcpRespectsSpecification + example: mcpRespectsSpecification + type: string + x-enum-varnames: + - MCP_RESPECTS_SPECIFICATION + SyntheticsTestRequestCertificateItem: + description: Define a request certificate. properties: - data: - description: An array of downtime matches. - items: - $ref: '#/components/schemas/MonitorDowntimeMatchResponseData' - type: array - meta: - $ref: '#/components/schemas/DowntimeMeta' + content: + description: Content of the certificate or key. + type: string + filename: + description: File name for the certificate or key. + type: string + updatedAt: + description: Date of update of the certificate or key, ISO format. + type: string type: object - OnDemandConcurrencyCapResponse: - description: On-demand concurrency cap response. + SyntheticsTestRequestNumericalDNSServerPort: + description: Integer DNS server port number to use when performing the test. + format: int64 + type: integer + SyntheticsTestRequestVariableDNSServerPort: + description: String DNS server port number to use when performing the test. Supports templated variables. + type: string + SyntheticsTestRequestNumericalPort: + description: Integer Port number to use when performing the test. + format: int64 + type: integer + SyntheticsTestRequestVariablePort: + description: String Port number to use when performing the test. Supports templated variables. + type: string + SyntheticsParsingOptions: + description: Parsing options for variables to extract. + example: {} properties: - data: - $ref: '#/components/schemas/OnDemandConcurrencyCap' + field: + description: When type is `http_header` or `grpc_metadata`, name of the header or metadatum to extract. + example: content-type + type: string + name: + description: Name of the variable to extract. + type: string + parser: + $ref: '#/components/schemas/SyntheticsVariableParser' + secure: + description: Determines whether or not the extracted value will be obfuscated. + type: boolean + type: + $ref: '#/components/schemas/SyntheticsLocalVariableParsingOptionsType' type: object - OnDemandConcurrencyCapAttributes: - description: On-demand concurrency cap attributes. + SyntheticsAPITestStepSubtype: + description: The subtype of the Synthetic multi-step API test step. + enum: + - http + - grpc + - ssl + - dns + - tcp + - udp + - icmp + - websocket + - mcp + example: http + type: string + x-enum-varnames: + - HTTP + - GRPC + - SSL + - DNS + - TCP + - UDP + - ICMP + - WEBSOCKET + - MCP + SyntheticsAPIWaitStepSubtype: + description: The subtype of the Synthetic multi-step API wait step. + enum: + - wait + example: wait + type: string + x-enum-varnames: + - WAIT + SyntheticsAPISubtestStepSubtype: + description: The subtype of the Synthetic multi-step API subtest step. + enum: + - playSubTest + example: playSubTest + type: string + x-enum-varnames: + - PLAY_SUB_TEST + SyntheticsBrowserErrorType: + description: Error type returned by a browser test. + enum: + - network + - js + example: network + type: string + x-enum-varnames: + - NETWORK + - JS + SyntheticsWarningType: + description: User locator used. + enum: + - user_locator + example: user_locator + type: string + x-enum-varnames: + - USER_LOCATOR + SyntheticsMobileStepParamsElementContextType: + description: Type of the context that the element is in. + enum: + - native + - web + type: string + x-enum-varnames: + - NATIVE + - WEB + SyntheticsMobileStepParamsElementRelativePosition: + description: Position of the action relative to the element. properties: - on_demand_concurrency_cap: - description: Value of the on-demand concurrency cap. + x: + description: The `relativePosition` on the `x` axis for the element. + format: double + type: number + 'y': + description: The `relativePosition` on the `y` axis for the element. format: double type: number type: object - MonitorNotificationRuleData: - description: Monitor notification rule data. + SyntheticsMobileStepParamsElementUserLocator: + description: User locator to find the element. properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleResponseAttributes' - id: - $ref: '#/components/schemas/MonitorNotificationRuleId' - relationships: - $ref: '#/components/schemas/MonitorNotificationRuleRelationships' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' + failTestOnCannotLocate: + description: Whether if the test should fail if the element cannot be found. + type: boolean + values: + description: Values of the user locator. + items: + $ref: '#/components/schemas/SyntheticsMobileStepParamsElementUserLocatorValuesItems' + type: array type: object - MonitorNotificationRuleResponseIncludedItem: - description: An object related to a monitor notification rule. - oneOf: - - $ref: '#/components/schemas/User' - MonitorNotificationRuleCreateRequestData: - description: Object to create a monitor notification rule. + SyntheticsMobileStepParamsPositionsItems: + description: A description of a single position for a `flick` step type. properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleAttributes' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - required: - - attributes + x: + description: The `x` position for the flick. + format: double + type: number + 'y': + description: The `y` position for the flick. + format: double + type: number type: object - MonitorNotificationRuleUpdateRequestData: - description: Object to update a monitor notification rule. + SyntheticsMobileStepParamsValueString: + description: Value used in the step for in multiple step types. + type: string + SyntheticsMobileStepParamsValueNumber: + description: Value used in the step for in multiple step types. + format: int64 + type: integer + SyntheticsBasicAuthWebType: + default: web + description: The type of basic authentication to use when performing the test. + enum: + - web + example: web + type: string + x-enum-varnames: + - WEB + SyntheticsBasicAuthSigv4Type: + default: sigv4 + description: The type of authentication to use when performing the test. + enum: + - sigv4 + example: sigv4 + type: string + x-enum-varnames: + - SIGV4 + SyntheticsBasicAuthNTLMType: + default: ntlm + description: The type of authentication to use when performing the test. + enum: + - ntlm + example: ntlm + type: string + x-enum-varnames: + - NTLM + SyntheticsBasicAuthDigestType: + default: digest + description: The type of basic authentication to use when performing the test. + enum: + - digest + example: digest + type: string + x-enum-varnames: + - DIGEST + SyntheticsBasicAuthOauthTokenApiAuthentication: + description: Type of token to use when performing the authentication. + enum: + - header + - body + example: header + type: string + x-enum-varnames: + - HEADER + - BODY + SyntheticsBasicAuthOauthClientType: + default: oauth-client + description: The type of basic authentication to use when performing the test. + enum: + - oauth-client + example: oauth-client + type: string + x-enum-varnames: + - OAUTH_CLIENT + SyntheticsBasicAuthOauthROPType: + default: oauth-rop + description: The type of basic authentication to use when performing the test. + enum: + - oauth-rop + example: oauth-rop + type: string + x-enum-varnames: + - OAUTH_ROP + SyntheticsBasicAuthJWTAddClaims: + description: Standard JWT claims to automatically inject. properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleAttributes' - id: - $ref: '#/components/schemas/MonitorNotificationRuleId' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - required: - - id - - attributes + exp: + description: Whether to inject the `exp` (expiration) claim. + example: true + type: boolean + iat: + description: Whether to inject the `iat` (issued at) claim. + example: true + type: boolean type: object - MonitorConfigPolicyResponseData: - description: A monitor configuration policy data. + SyntheticsBasicAuthJWTAlgorithm: + description: Algorithm to use for the JWT authentication. + enum: + - HS256 + - RS256 + - ES256 + example: HS256 + type: string + x-enum-varnames: + - HS256 + - RS256 + - ES256 + SyntheticsBasicAuthJWTType: + default: jwt + description: The type of authentication to use when performing the test. + enum: + - jwt + example: jwt + type: string + x-enum-varnames: + - JWT + MonitorNotificationRuleConditionScope: + description: |- + Defines the condition under which the recipients are notified. Supported formats: + - Monitor status condition using `transition_type:`, for example `transition_type:is_alert`. + - A single tag key:value pair, for example `env:prod`. + example: transition_type:is_alert + maxLength: 3000 + minLength: 1 + type: string + RelationshipToOrganizationData: + description: Relationship to organization object. properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeResponse' id: - description: ID of this monitor configuration policy. - example: 00000000-0000-1234-0000-000000000000 + description: ID of the organization. + example: 00000000-0000-beef-0000-000000000000 type: string type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - type: object - MonitorConfigPolicyCreateData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeCreateRequest' - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' + $ref: '#/components/schemas/OrganizationsType' required: + - id - type - - attributes type: object - MonitorConfigPolicyEditData: - description: A monitor configuration policy data. + RelationshipToUserData: + description: Relationship to user object. properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeEditRequest' id: - description: ID of this monitor configuration policy. - example: 00000000-0000-1234-0000-000000000000 + description: A unique identifier that represents the user. + example: 00000000-0000-0000-2345-000000000000 type: string type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' + $ref: '#/components/schemas/UsersType' required: - id - type - - attributes type: object - MonitorUserTemplateResponseData: - description: Monitor user template list response data. + RelationshipToRoleData: + description: Relationship to role object. properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateResponseAttributes' id: - $ref: '#/components/schemas/MonitorUserTemplateId' + description: The unique identifier of the role. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' + $ref: '#/components/schemas/RolesType' type: object - MonitorUserTemplateCreateData: - description: Monitor user template data. + SyntheticsDowntimeTimeSlotRecurrenceRequest: + description: Recurrence settings for a Synthetics downtime time slot. properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' + end: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotDate' + frequency: + $ref: '#/components/schemas/SyntheticsDowntimeFrequency' + interval: + description: The interval between recurrences, relative to the frequency. + example: 1 + format: int64 + type: integer + weekdayPositions: + $ref: '#/components/schemas/SyntheticsDowntimeWeekdayPositions' + weekdays: + $ref: '#/components/schemas/SyntheticsDowntimeWeekdays' required: - - type - - attributes + - frequency type: object - MonitorUserTemplateResponseDataWithVersions: - description: Monitor user template data. + SyntheticsDowntimeTimeSlotDate: + description: A specific date and time used to define the start or end of a Synthetics downtime time slot. properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplate' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' + day: + description: The day component of the date (1-31). + example: 15 + format: int64 + type: integer + hour: + description: The hour component of the time (0-23). + example: 10 + format: int64 + type: integer + minute: + description: The minute component of the time (0-59). + example: 30 + format: int64 + type: integer + month: + description: The month component of the date (1-12). + example: 1 + format: int64 + type: integer + year: + description: The year component of the date. + example: 2024 + format: int64 + type: integer + required: + - year + - month + - day + - hour + - minute type: object - MonitorUserTemplateUpdateData: - description: Monitor user template data. + SyntheticsDowntimeTimeSlotRecurrenceResponse: + description: Recurrence settings returned in a Synthetics downtime time slot response. properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' + frequency: + $ref: '#/components/schemas/SyntheticsDowntimeFrequency' + interval: + description: The interval between recurrences, relative to the frequency. + example: 1 + format: int64 + type: integer + until: + $ref: '#/components/schemas/SyntheticsDowntimeTimeSlotDate' + weekdayPositions: + $ref: '#/components/schemas/SyntheticsDowntimeWeekdayPositions' + weekdays: + $ref: '#/components/schemas/SyntheticsDowntimeWeekdays' required: - - id - - type - - attributes + - frequency + - interval + - weekdays type: object - MonitorDowntimeMatchResponseData: - description: A downtime match. + SyntheticsTestResultGitUser: + description: A Git user (author or committer). properties: - attributes: - $ref: '#/components/schemas/MonitorDowntimeMatchResponseAttributes' - id: - description: The downtime ID. - example: 00000000-0000-1234-0000-000000000000 - nullable: true + date: + description: Timestamp of the commit action for this user. + example: '2024-08-15T14:23:00Z' + type: string + email: + description: Email address of the Git user. + example: jane.doe@example.com + type: string + name: + description: Name of the Git user. + example: Jane Doe type: string - type: - $ref: '#/components/schemas/MonitorDowntimeMatchResourceType' type: object - DowntimeMeta: - description: Pagination metadata returned by the API. + SyntheticsTestResultCertificateValidity: + description: Validity window of a certificate. properties: - page: - $ref: '#/components/schemas/DowntimeMetaPage' + from: + description: Unix timestamp (ms) of when the certificate became valid. + example: 1742469686000 + format: int64 + type: integer + to: + description: Unix timestamp (ms) of when the certificate expires. + example: 1749727285000 + format: int64 + type: integer type: object - OnDemandConcurrencyCap: - description: On-demand concurrency cap. - properties: - attributes: - $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' - type: - $ref: '#/components/schemas/OnDemandConcurrencyCapType' + SyntheticsTestResultDnsResolutionAttempt: + additionalProperties: + type: string + description: A single DNS resolution attempt. Keys are provider-specific attempt fields. type: object - MonitorNotificationRuleResponseAttributes: - additionalProperties: {} - description: Attributes of the monitor notification rule. + SyntheticsTestResultNetpathDestination: + description: Destination endpoint of a network path measurement. properties: - created: - description: Creation time of the monitor notification rule. - example: '2020-01-02T03:04:00.000Z' - format: date-time + hostname: + description: Hostname of the destination. + example: 34.95.79.70 type: string - filter: - $ref: '#/components/schemas/MonitorNotificationRuleFilter' - modified: - description: Time the monitor notification rule was last modified. - example: '2020-01-02T03:04:00.000Z' - format: date-time + ip_address: + description: IP address of the destination. + example: 34.95.79.70 type: string - name: - $ref: '#/components/schemas/MonitorNotificationRuleName' - recipients: - $ref: '#/components/schemas/MonitorNotificationRuleRecipients' + port: + description: Port of the destination service. + example: 80 + format: int64 + type: integer type: object - MonitorNotificationRuleId: - description: The ID of the monitor notification rule. - example: 00000000-0000-1234-0000-000000000000 - type: string - MonitorNotificationRuleRelationships: - description: All relationships associated with monitor notification rule. + SyntheticsTestResultNetpathHop: + description: A single hop along a network path. properties: - created_by: - $ref: '#/components/schemas/MonitorNotificationRuleRelationshipsCreatedBy' + hostname: + description: Resolved hostname of the hop. + example: 70.79.95.34.bc.googleusercontent.com + type: string + ip_address: + description: IP address of the hop. + example: 10.240.134.15 + type: string + reachable: + description: Whether this hop was reachable. + example: true + type: boolean + rtt: + description: Round-trip time to this hop in milliseconds. + example: 0.000346599 + format: double + type: number + ttl: + description: Time-to-live value of the probe packet at this hop. + example: 2 + format: int64 + type: integer type: object - MonitorNotificationRuleResourceType: - default: monitor-notification-rule - description: Monitor notification rule resource type. - enum: - - monitor-notification-rule - example: monitor-notification-rule - type: string - x-enum-varnames: - - MONITOR_NOTIFICATION_RULE - User: - description: User object returned by the API. + SyntheticsTestResultNetpathEndpoint: + description: Source endpoint of a network path measurement. properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. + hostname: + description: Hostname of the endpoint. + example: edge-eu1.staging.dog type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' type: object - MonitorNotificationRuleAttributes: - additionalProperties: false - description: Attributes of the monitor notification rule. + SyntheticsTestResultNetstatsHops: + description: Statistics about the number of hops for a network test. properties: - filter: - $ref: '#/components/schemas/MonitorNotificationRuleFilter' - name: - $ref: '#/components/schemas/MonitorNotificationRuleName' - recipients: - $ref: '#/components/schemas/MonitorNotificationRuleRecipients' - required: - - name - - recipients + avg: + description: Average number of hops. + example: 11 + format: double + type: number + max: + description: Maximum number of hops. + example: 11 + format: int64 + type: integer + min: + description: Minimum number of hops. + example: 11 + format: int64 + type: integer type: object - MonitorConfigPolicyAttributeResponse: - description: Policy and policy type for a monitor configuration policy. + SyntheticsTestResultNetworkLatency: + description: Latency statistics for a network probe. properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicy' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' + avg: + description: Average latency in milliseconds. + example: 1.8805 + format: double + type: number + max: + description: Maximum latency in milliseconds. + example: 1.97 + format: double + type: number + min: + description: Minimum latency in milliseconds. + example: 1.76 + format: double + type: number type: object - MonitorConfigPolicyResourceType: - default: monitor-config-policy - description: Monitor configuration policy resource type. - enum: - - monitor-config-policy - example: monitor-config-policy - type: string - x-enum-varnames: - - MONITOR_CONFIG_POLICY - MonitorConfigPolicyAttributeCreateRequest: - description: Policy and policy type for a monitor configuration policy. + SyntheticsTestResultOCSPCertificate: + description: Certificate details returned in an OCSP response. properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicyCreateRequest' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - required: - - policy_type - - policy + revocation_reason: + description: Reason code for the revocation, when applicable. + example: unspecified + type: string + revocation_time: + description: Unix timestamp (ms) of the revocation. + example: 1749727285000 + format: int64 + type: integer + serial_number: + description: Serial number of the certificate. + example: 7B584A1A6670A1EB0941A9A121569D60 + type: string type: object - MonitorConfigPolicyAttributeEditRequest: - description: Policy and policy type for a monitor configuration policy. + SyntheticsTestResultOCSPUpdates: + description: OCSP response update timestamps. properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicy' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - required: - - policy_type - - policy + next_update: + description: Unix timestamp (ms) of the next expected OCSP update. + example: 1743074486000 + format: int64 + type: integer + produced_at: + description: Unix timestamp (ms) of when the OCSP response was produced. + example: 1742469686000 + format: int64 + type: integer + this_update: + description: Unix timestamp (ms) of this OCSP update. + example: 1742469686000 + format: int64 + type: integer type: object - MonitorUserTemplateResponseAttributes: - additionalProperties: {} - description: Attributes for a monitor user template. + SyntheticsTestResultRouter: + description: A router along the traceroute path. properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - modified: - $ref: '#/components/schemas/MonitorUserTemplateModified' - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' + ip: + description: IP address of the router. + example: 34.95.79.70 + type: string + resolved_host: + description: Resolved hostname of the router. + example: 70.79.95.34.bc.googleusercontent.com + type: string type: object - MonitorUserTemplateId: - description: The unique identifier. - example: 00000000-0000-1234-0000-000000000000 - type: string - MonitorUserTemplateResourceType: - default: monitor-user-template - description: Monitor user template resource type. - enum: - - monitor-user-template - example: monitor-user-template - type: string - x-enum-varnames: - - MONITOR_USER_TEMPLATE - MonitorUserTemplateRequestAttributes: - additionalProperties: false - description: Attributes for a monitor user template. + SyntheticsTestResultFileRef: + description: Reference to a file attached to a Synthetic test request. properties: - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - required: - - title - - monitor_definition - - tags + bucket_key: + description: Storage bucket key where the file is stored. + example: api-upload-file/s3v-msw-tp3/2024-08-20T12:18:27.628081_f433c953-a58a-4296-834b-0669e32ba55f.json + type: string + encoding: + description: Encoding of the file contents. + example: base64 + type: string + name: + description: File name. + example: dd_logo_h_rgb.jpg + type: string + size: + description: File size in bytes. + example: 30294 + format: int64 + type: integer + type: + description: File MIME type. + example: image/jpeg + type: string type: object - MonitorUserTemplate: - additionalProperties: {} - description: A monitor user template object. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - modified: - $ref: '#/components/schemas/MonitorUserTemplateModified' - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - versions: - description: All versions of the monitor user template. - items: - $ref: '#/components/schemas/SimpleMonitorUserTemplate' - type: array + SyntheticsTestResultCdnProviderInfo: + description: CDN provider details inferred from response headers. + properties: + cache: + $ref: '#/components/schemas/SyntheticsTestResultCdnCacheStatus' + provider: + description: Name of the CDN provider. + example: google_cloud + type: string type: object - MonitorDowntimeMatchResponseAttributes: - description: Downtime match details. + SyntheticsTestResultWebSocketClose: + description: WebSocket close frame information for WebSocket test responses. properties: - end: - description: The end of the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true + reason: + description: Reason string received in the close frame. + example: Normal closure type: string - groups: - description: An array of groups associated with the downtime. + status_code: + description: Status code received in the close frame. + example: 1000 + format: int64 + type: integer + type: object + SyntheticsTestResultHealthCheck: + description: Health check information returned from a gRPC health check call. + properties: + message: + additionalProperties: + type: string + description: Raw health check message payload. + type: object + status: + description: Health check status code. + example: 1 + format: int64 + type: integer + type: object + SyntheticsTestResultDnsRecord: + description: A DNS record returned in a DNS test response. + properties: + type: + description: DNS record type (for example, `A`, `AAAA`, `CNAME`). + example: A + type: string + values: + description: Values associated with the DNS record. example: - - service:postgres - - team:frontend + - 213.186.33.19 items: - description: An array of groups. - example: service:postgres + description: DNS record value. type: string type: array - scope: - $ref: '#/components/schemas/DowntimeScope' - start: - description: The start of the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time + type: object + SyntheticsTestResultRedirect: + description: A redirect hop encountered while performing the request. + properties: + location: + description: Target location of the redirect. + example: https://example.com/new-location type: string + status_code: + description: HTTP status code of the redirect response. + example: 301 + format: int64 + type: integer type: object - MonitorDowntimeMatchResourceType: - default: downtime_match - description: Monitor Downtime Match resource type. - enum: - - downtime_match - example: downtime_match - type: string - x-enum-varnames: - - DOWNTIME_MATCH - DowntimeMetaPage: - description: Object containing the total filtered count. + SyntheticsTestResultStepAssertionResult: + description: Assertion result for a browser or mobile step. properties: - total_filtered_count: - description: Total count of elements matched by the filter. + actual: + description: Actual value observed during the step assertion. Its type depends on the check type. + example: |- + True + good + good + good + good + True + check_type: + description: Type of the step assertion check. + example: contains + type: string + expected: + description: Expected value for the step assertion. Its type depends on the check type. + example: True good good good good True + has_secure_variables: + description: Whether the assertion involves secure variables. + example: false + type: boolean + type: object + SyntheticsTestResultBounds: + description: Bounding box of an element on the page. + properties: + height: + description: Height in pixels. + example: 37 + format: int64 + type: integer + width: + description: Width in pixels. + example: 343 + format: int64 + type: integer + x: + description: Horizontal position in pixels. + example: 16 + format: int64 + type: integer + 'y': + description: Vertical position in pixels. + example: 140 format: int64 type: integer type: object - OnDemandConcurrencyCapType: - description: On-demand concurrency cap type. - enum: - - on_demand_concurrency_cap - type: string - x-enum-varnames: - - ON_DEMAND_CONCURRENCY_CAP - MonitorNotificationRuleFilter: - description: Filter used to associate the notification rule with monitors. - oneOf: - - $ref: '#/components/schemas/MonitorNotificationRuleFilterTags' - MonitorNotificationRuleName: - description: The name of the monitor notification rule. - example: A notification rule name - maxLength: 1000 - minLength: 1 - type: string - MonitorNotificationRuleRecipients: - description: >- - A list of recipients to notify. Uses the same format as the monitor - `message` field. Must not start with an '@'. - example: - - slack-test-channel - - jira-test - items: - description: individual recipient. - maxLength: 255 - type: string - maxItems: 20 - minItems: 1 - type: array - uniqueItems: true - MonitorNotificationRuleRelationshipsCreatedBy: - description: The user who created the monitor notification rule. + SyntheticsTestResultBrowserError: + description: A browser error captured during a browser test step. properties: - data: - $ref: >- - #/components/schemas/MonitorNotificationRuleRelationshipsCreatedByData + description: + description: Error description. + example: Failed to fetch resource + type: string + method: + description: HTTP method associated with the error (for network errors). + example: GET + type: string + name: + description: Error name. + example: NetworkError + type: string + status: + description: HTTP status code associated with the error (for network errors). + example: 500 + format: int64 + type: integer + type: + description: Type of the browser error. + example: network + type: string + url: + additionalProperties: {} + description: URL associated with the error. + type: object type: object - UserAttributes: - description: Attributes of user object returned by the API. + SyntheticsTestResultCdnResource: + description: A CDN resource encountered while executing a browser step. properties: - created_at: - description: Creation time of the user. - format: date-time + cdn: + $ref: '#/components/schemas/SyntheticsTestResultCdnProviderInfo' + resolved_ip: + description: Resolved IP address for the CDN resource. + example: 34.95.79.70 type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. + timestamp: + description: Unix timestamp (ms) of when the resource was fetched. + example: 1724521406576 + format: int64 + type: integer + timings: + additionalProperties: {} + description: Timing breakdown for fetching the CDN resource. + example: + firstByte: 99.7 + tcp: 0.9 + type: object + type: object + SyntheticsTestResultStepElementUpdates: + description: Element locator updates produced during a step. + properties: + multi_locator: + additionalProperties: + type: string + description: Updated multi-locator definition. + type: object + target_outer_html: + description: Updated outer HTML of the targeted element. + example:

My website - v4

type: string - handle: - description: Handle of the user. + version: + description: Version of the element locator definition. + example: 3 + format: int64 + type: integer + type: object + SyntheticsTestResultVariable: + description: A variable used or extracted during a test. + properties: + err: + description: Error encountered when evaluating the variable. + example: LOCAL_VARIABLE_UNKNOWN type: string - icon: - description: URL of the user's icon. + error_message: + description: Human-readable error message for variable evaluation. + example: Unknown variable name undefined. type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time + example: + description: Example value for the variable. + example: lol value + type: string + id: + description: Variable identifier. + example: c896702c-1e34-4e62-a67b-432e8092d062 type: string name: - description: Name of the user. - nullable: true + description: Variable name. + example: HEADER_VALUE type: string - service_account: - description: Whether the user is a service account. + pattern: + description: Pattern used to extract the variable. + example: lol value + type: string + secure: + description: Whether the variable holds a secure value. + example: false type: boolean - status: - description: Status of the user. + type: + description: Variable type. + example: text type: string - title: - description: Title of the user. - nullable: true + val: + description: Evaluated value of the variable. + example: value-to-extract + type: string + value: + description: Current value of the variable. + example: lol value type: string - verified: - description: Whether the user is verified. - type: boolean type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. + SyntheticsTestResultRumContext: + description: RUM application context associated with a step or sub-test. properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' + application_id: + description: RUM application identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + session_id: + description: RUM session identifier. + example: 11111111-1111-1111-1111-111111111111 + type: string + view_id: + description: RUM view identifier. + example: 22222222-2222-2222-2222-222222222222 + type: string type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - MonitorConfigPolicyPolicy: - description: Configuration for the policy. - oneOf: - - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicy' - MonitorConfigPolicyType: - default: tag - description: The monitor configuration policy type. - enum: - - tag - example: tag - type: string - x-enum-varnames: - - TAG - MonitorConfigPolicyPolicyCreateRequest: - description: Configuration for the policy. - oneOf: - - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicyCreateRequest' - MonitorUserTemplateCreated: - description: The created timestamp of the template. - example: '2024-01-02T03:04:23.274966+00:00' - format: date-time - readOnly: true - type: string - MonitorUserTemplateDescription: - description: A brief description of the monitor user template. - example: This is a template for monitoring user activity. - nullable: true - type: string - MonitorUserTemplateModified: - description: The last modified timestamp. When the template version was created. - example: '2024-02-02T03:04:23.274966+00:00' - format: date-time - readOnly: true - type: string - MonitorUserTemplateTags: - description: The definition of `MonitorUserTemplateTags` object. - example: - - product:Our Custom App - - integration:Azure - items: - description: >- - Tags associated with the monitor user template. Must be key value. - Only 'product' and 'integration' keys are - - allowed. The value is the name of the category to display the template - under. Integrations can be filtered out in the UI. - - (Review note: This modeling of 'categories' is subject to change.) - example: us-east1 - minLength: 1 - type: string - uniqueItems: true - type: array - MonitorUserTemplateTemplateVariables: - description: The definition of `MonitorUserTemplateTemplateVariables` object. - items: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariablesItems' - type: array - MonitorUserTemplateTitle: - description: The title of the monitor user template. - example: Postgres CPU Monitor - type: string - MonitorUserTemplateVersion: - description: The version of the monitor user template. - example: 0 - format: int64 - nullable: true - readOnly: true - type: integer - SimpleMonitorUserTemplate: - description: A simplified version of a monitor user template. + SyntheticsTestResultSubStep: + description: Information about a sub-step in a nested test execution. + properties: + level: + description: Depth of the sub-step in the execution tree. + example: 1 + format: int64 + type: integer + parent_step: + $ref: '#/components/schemas/SyntheticsTestResultParentStep' + parent_test: + $ref: '#/components/schemas/SyntheticsTestResultParentTest' + type: object + SyntheticsTestResultSubTest: + description: Information about a sub-test played from a parent browser test. + properties: + id: + description: Identifier of the sub-test. + example: abc-def-123 + type: string + playing_tab: + description: Index of the browser tab playing the sub-test. + example: 0 + format: int64 + type: integer + rum_context: + $ref: '#/components/schemas/SyntheticsTestResultRumContext' + type: object + SyntheticsTestResultTab: + description: Information about a browser tab involved in a step. + properties: + focused: + description: Whether the tab was focused during the step. + example: true + type: boolean + title: + description: Title of the tab. + example: Team Browser mini-websites + type: string + url: + description: URL loaded in the tab. + example: http://34.95.79.70/prototype + type: string + type: object + SyntheticsTestResultVitalsMetrics: + description: Web vitals metrics captured during a browser test step. + properties: + cls: + description: Cumulative Layout Shift score. + example: 0 + format: double + type: number + fcp: + description: First Contentful Paint in milliseconds. + example: 120.3 + format: double + type: number + inp: + description: Interaction to Next Paint in milliseconds. + example: 85 + format: double + type: number + lcp: + description: Largest Contentful Paint in milliseconds. + example: 210.5 + format: double + type: number + ttfb: + description: Time To First Byte in milliseconds. + example: 95.2 + format: double + type: number + url: + description: URL that produced the metrics. + example: http://34.95.79.70/prototype + type: string + type: object + SyntheticsTestResultWarning: + description: A warning captured during a browser test step. properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - id: - description: >- - The unique identifier. The initial version will match the template - ID. - example: 00000000-0000-1234-0000-000000000000 + element_bounds: + description: Bounds of elements related to the warning. + items: + $ref: '#/components/schemas/SyntheticsTestResultBounds' + type: array + message: + description: Warning message. + example: Element is not visible in the viewport type: string - monitor_definition: + type: + description: Type of the warning. + example: visibility + type: string + type: object + SyntheticsTestResultTurnStep: + description: A step executed during a goal-based browser test turn. + properties: + bucket_keys: + $ref: '#/components/schemas/SyntheticsTestResultBucketKeys' + config: additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). + description: Browser step configuration for this turn step. example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert + id: step-1 + name: Click on div "Chairs" + type: click type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' type: object - DowntimeScope: - description: >- - The scope to which the downtime applies. Must follow the [common search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - example: env:(staging OR prod) AND datacenter:us-east-1 - type: string - MonitorNotificationRuleFilterTags: - additionalProperties: false - description: Filter monitors by tags. Monitors must match all tags. + SyntheticsNetworkAssertionLatency: + description: Network latency assertion for a Network Path test. properties: - tags: - description: A list of monitor tags. - example: - - team:product - - host:abc - items: - maxLength: 255 - type: string - maxItems: 20 - minItems: 1 - type: array - uniqueItems: true + operator: + $ref: '#/components/schemas/SyntheticsNetworkAssertionOperator' + property: + $ref: '#/components/schemas/SyntheticsNetworkAssertionProperty' + target: + description: Target value in milliseconds. + example: 500 + format: double + type: number + type: + $ref: '#/components/schemas/SyntheticsNetworkAssertionLatencyType' required: - - tags + - operator + - property + - target + - type type: object - MonitorNotificationRuleRelationshipsCreatedByData: - description: Data for the user who created the monitor notification rule. - nullable: true + SyntheticsNetworkAssertionMultiNetworkHop: + description: Multi-network hop assertion for a Network Path test. properties: - id: - description: User ID of the monitor notification rule creator. - example: 00000000-0000-1234-0000-000000000000 - type: string + operator: + $ref: '#/components/schemas/SyntheticsNetworkAssertionOperator' + property: + $ref: '#/components/schemas/SyntheticsNetworkAssertionProperty' + target: + description: Target value in number of hops. + example: 3 + format: double + type: number type: - $ref: '#/components/schemas/UsersType' - type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' + $ref: '#/components/schemas/SyntheticsNetworkAssertionMultiNetworkHopType' required: - - data + - operator + - property + - target + - type type: object - RelationshipToOrganizations: - description: Relationship to organizations. + SyntheticsNetworkAssertionPacketLossPercentage: + description: Packet loss percentage assertion for a Network Path test. properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array + operator: + $ref: '#/components/schemas/SyntheticsNetworkAssertionOperator' + target: + description: Target value as a percentage (0 to 1). + example: 0.05 + format: double + maximum: 1 + minimum: 0 + type: number + type: + $ref: '#/components/schemas/SyntheticsNetworkAssertionPacketLossPercentageType' required: - - data + - operator + - target + - type type: object - RelationshipToUsers: - description: Relationship to users. + SyntheticsNetworkAssertionJitter: + description: Jitter assertion for a Network Path test. properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array + operator: + $ref: '#/components/schemas/SyntheticsNetworkAssertionOperator' + target: + description: Target value in milliseconds. + example: 5 + format: double + type: number + type: + $ref: '#/components/schemas/SyntheticsNetworkAssertionJitterType' required: - - data + - operator + - target + - type type: object - RelationshipToRoles: - description: Relationship to roles. + SyntheticsNetworkTestRequestTCPMethod: + description: For TCP tests, the TCP traceroute strategy. + enum: + - prefer_sack + - syn + - sack + example: prefer_sack + type: string + x-enum-varnames: + - PREFER_SACK + - SYN + - SACK + SyntheticsTestVersionDiffPatches: + description: Object describing a patch in the diff. properties: - data: - description: An array containing type and the unique identifier of a role. + diffs: + description: List of individual diff operations. items: - $ref: '#/components/schemas/RelationshipToRoleData' + $ref: '#/components/schemas/SyntheticsTestVersionDiffPatchDiff' type: array + length1: + description: Length of the original text segment. + format: int64 + type: integer + length2: + description: Length of the modified text segment. + format: int64 + type: integer + start1: + description: Start position in the original text. + format: int64 + type: integer + start2: + description: Start position in the modified text. + format: int64 + type: integer type: object - MonitorConfigPolicyTagPolicy: - description: Tag attributes of a monitor configuration policy. + MonitorFormulaAndFunctionEventAggregation: + description: Aggregation methods for event platform queries. + enum: + - count + - cardinality + - median + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + example: avg + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - MEDIAN + - PC75 + - PC90 + - PC95 + - PC98 + - PC99 + - SUM + - MIN + - MAX + - AVG + MonitorFormulaAndFunctionEventQueryGroupBySort: + description: Options for sorting group by results. properties: - tag_key: - description: The key of the tag. - example: datacenter - maxLength: 255 + aggregation: + $ref: '#/components/schemas/MonitorFormulaAndFunctionEventAggregation' + metric: + description: Metric used for sorting group by results. type: string - tag_key_required: - description: If a tag key is required for monitor creation. - example: true - type: boolean - valid_tag_values: - description: Valid values for the tag. - example: - - prod - - staging - items: - maxLength: 255 - type: string - type: array + order: + $ref: '#/components/schemas/QuerySortOrderV1' + required: + - aggregation type: object - MonitorConfigPolicyTagPolicyCreateRequest: - description: Tag attributes of a monitor configuration policy. + MonitorFormulaAndFunctionDataQualityModelTypeOverride: + description: Override for the model type used in anomaly detection. + enum: + - freshness + - percentage + - any + type: string + x-enum-varnames: + - FRESHNESS + - PERCENTAGE + - ANY + MonitorFormulaAndFunctionReferenceTableQueryDefinition: + additionalProperties: false + description: A reference table query for use in aggregate queries. properties: - tag_key: - description: The key of the tag. - example: datacenter - maxLength: 255 - type: string - tag_key_required: - description: If a tag key is required for monitor creation. - example: true - type: boolean - valid_tag_values: - description: Valid values for the tag. - example: - - prod - - staging + columns: + description: List of columns to retrieve from the reference table. items: - maxLength: 255 - type: string + $ref: '#/components/schemas/MonitorFormulaAndFunctionReferenceTableColumn' type: array + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionReferenceTableDataSource' + name: + description: Name of the query. + example: filter_query + type: string + query_filter: + description: Optional filter expression for the reference table query. + type: string + table_name: + description: Name of the reference table. + example: test_table + type: string required: - - tag_key - - tag_key_required - - valid_tag_values + - data_source + - table_name type: object - MonitorUserTemplateTemplateVariablesItems: + MonitorFormulaAndFunctionMetricsQueryDefinition: additionalProperties: false - description: >- - List of objects representing template variables on the monitor which can - have selectable values. + description: A formula and functions metrics query for use in aggregate queries. properties: - available_values: - description: Available values for the variable. - example: - - value1 - - value2 - items: - minLength: 1 - type: string - uniqueItems: true - type: array - defaults: - description: Default values of the template variable. - example: - - defaultValue - items: - minLength: 0 - type: string - uniqueItems: true - type: array + aggregator: + $ref: '#/components/schemas/MonitorFormulaAndFunctionMetricsAggregator' + data_source: + $ref: '#/components/schemas/MonitorFormulaAndFunctionMetricsDataSource' name: - description: The name of the template variable. - example: regionName + description: Name of the query for use in formulas. + example: query1 type: string - tag_key: - description: >- - The tag key associated with the variable. This works the same as - dashboard template variables. - example: datacenter + query: + description: The metrics query definition. + example: avg:system.cpu.user{*} type: string required: - - name + - data_source + - query type: object - RelationshipToOrganizationData: - description: Relationship to organization object. + MonitorFormulaAndFunctionAggregateQueryJoinType: + description: Join type for aggregate query join conditions. + enum: + - inner + - left + example: inner + type: string + x-enum-varnames: + - INNER + - LEFT + SyntheticsAssertionTargetValueNumber: + description: Numeric value used by the operator in assertions. + format: double + type: number + SyntheticsAssertionTargetValueString: + description: String value used by the operator in assertions. Supports templated variables. + type: string + SyntheticsAssertionJSONSchemaMetaSchema: + description: The JSON Schema meta-schema version used in the assertion. + enum: + - draft-07 + - draft-06 + type: string + x-enum-varnames: + - DRAFT_07 + - DRAFT_06 + SyntheticsLocalVariableParsingOptionsType: + description: Property of the Synthetic Test Response to extract into a local variable. + enum: + - grpc_message + - grpc_metadata + - http_body + - http_header + - http_status_code + example: http_body + type: string + x-enum-varnames: + - GRPC_MESSAGE + - GRPC_METADATA + - HTTP_BODY + - HTTP_HEADER + - HTTP_STATUS_CODE + SyntheticsMobileStepParamsElementUserLocatorValuesItems: + description: A single user locator object. + properties: + type: + $ref: '#/components/schemas/SyntheticsMobileStepParamsElementUserLocatorValuesItemsType' + value: + description: Value of a user locator. + type: string + type: object + OrganizationsType: + default: orgs + description: Organizations resource type. + enum: + - orgs + example: orgs + type: string + x-enum-varnames: + - ORGS + RolesType: + default: roles + description: Roles type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + SyntheticsDowntimeFrequency: + description: The recurrence frequency of a Synthetics downtime time slot. + enum: + - DAILY + - WEEKLY + - MONTHLY + - YEARLY + example: WEEKLY + type: string + x-enum-varnames: + - DAILY + - WEEKLY + - MONTHLY + - YEARLY + SyntheticsDowntimeWeekdayPositions: + description: Positions of the weekdays within a month for a monthly Synthetics downtime recurrence. Used in combination with `weekdays` to schedule occurrences such as "the first Monday of the month". + example: + - 1 + items: + $ref: '#/components/schemas/SyntheticsDowntimeWeekdayPosition' + type: array + SyntheticsDowntimeWeekdays: + description: Days of the week for a Synthetics downtime recurrence schedule. + example: + - MO + - WE + - FR + items: + $ref: '#/components/schemas/SyntheticsDowntimeWeekday' + type: array + SyntheticsTestResultCdnCacheStatus: + description: Cache status reported by the CDN for the response. + properties: + cached: + description: Whether the response was served from the CDN cache. + example: true + type: boolean + status: + description: Raw cache status string reported by the CDN. + example: HIT + type: string + type: object + SyntheticsTestResultParentStep: + description: Reference to the parent step of a sub-step. properties: id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 + description: Identifier of the parent step. + example: fkk-j2a-gmw type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - id - - type type: object - RelationshipToUserData: - description: Relationship to user object. + SyntheticsTestResultParentTest: + description: Reference to the parent test of a sub-step. + properties: + id: + description: Identifier of the parent test. + example: abc-def-123 + type: string + type: object + SyntheticsNetworkAssertionOperator: + description: Assertion operator to apply. + enum: + - is + - isNot + - lessThan + - lessThanOrEqual + - moreThan + - moreThanOrEqual + example: lessThan + type: string + x-enum-varnames: + - IS + - IS_NOT + - LESS_THAN + - LESS_THAN_OR_EQUAL + - MORE_THAN + - MORE_THAN_OR_EQUAL + SyntheticsNetworkAssertionProperty: + description: The associated assertion property. + enum: + - avg + - max + - min + example: avg + type: string + x-enum-varnames: + - AVG + - MAX + - MIN + SyntheticsNetworkAssertionLatencyType: + default: latency + description: Type of the latency assertion. + enum: + - latency + example: latency + type: string + x-enum-varnames: + - LATENCY + SyntheticsNetworkAssertionMultiNetworkHopType: + default: multiNetworkHop + description: Type of the multi-network hop assertion. + enum: + - multiNetworkHop + example: multiNetworkHop + type: string + x-enum-varnames: + - MULTI_NETWORK_HOP + SyntheticsNetworkAssertionPacketLossPercentageType: + default: packetLossPercentage + description: Type of the packet loss percentage assertion. + enum: + - packetLossPercentage + example: packetLossPercentage + type: string + x-enum-varnames: + - PACKET_LOSS_PERCENTAGE + SyntheticsNetworkAssertionJitterType: + default: jitter + description: Type of the jitter assertion. + enum: + - jitter + example: jitter + type: string + x-enum-varnames: + - JITTER + SyntheticsTestVersionDiffPatchDiff: + description: Object describing a single text diff operation. properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 + change_text: + description: The text that was changed. + type: string + operation: + description: The diff operation applied. type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type type: object - RelationshipToRoleData: - description: Relationship to role object. + QuerySortOrderV1: + default: desc + description: Direction of sort. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASC + - DESC + MonitorFormulaAndFunctionReferenceTableColumn: + additionalProperties: false + description: A column definition for reference table queries. properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + alias: + description: Optional alias for the column. type: string - type: - $ref: '#/components/schemas/RolesType' + name: + description: Name of the column. + example: org_id + type: string + required: + - name type: object - OrganizationsType: - default: orgs - description: Organizations resource type. + MonitorFormulaAndFunctionReferenceTableDataSource: + description: Data source for reference table queries. enum: - - orgs - example: orgs + - reference_table + example: reference_table type: string x-enum-varnames: - - ORGS - RolesType: - default: roles - description: Roles type. + - REFERENCE_TABLE + MonitorFormulaAndFunctionMetricsAggregator: + description: Aggregator for metrics queries. enum: - - roles - example: roles + - avg + - min + - max + - sum + - last + - mean + - area + - l2norm + - percentile + - stddev + - count_unique + example: avg type: string x-enum-varnames: - - ROLES + - AVG + - MIN + - MAX + - SUM + - LAST + - MEAN + - AREA + - L2NORM + - PERCENTILE + - STDDEV + - COUNT_UNIQUE + MonitorFormulaAndFunctionMetricsDataSource: + description: Data source for metrics queries. + enum: + - metrics + - cloud_cost + - datadog_usage + example: metrics + type: string + x-enum-varnames: + - METRICS + - CLOUD_COST + - DATADOG_USAGE + SyntheticsMobileStepParamsElementUserLocatorValuesItemsType: + description: Type of a user locator. + enum: + - accessibility-id + - id + - ios-predicate-string + - ios-class-chain + - xpath + type: string + x-enum-varnames: + - ACCESSIBILITY_ID + - ID + - IOS_PREDICATE_STRING + - IOS_CLASS_CHAIN + - XPATH + SyntheticsDowntimeWeekdayPosition: + description: The position of a weekday within a month for a monthly Synthetics downtime recurrence. `1` through `4` select the first through fourth occurrence of the weekday in the month, and `-1` selects the last occurrence. + enum: + - 1 + - 2 + - 3 + - 4 + - -1 + example: 1 + format: int64 + type: integer + x-enum-varnames: + - FIRST + - SECOND + - THIRD + - FOURTH + - LAST + SyntheticsDowntimeWeekday: + description: A day of the week for a Synthetics downtime recurrence. + enum: + - MO + - TU + - WE + - TH + - FR + - SA + - SU + example: MO + type: string + x-enum-varnames: + - MONDAY + - TUESDAY + - WEDNESDAY + - THURSDAY + - FRIDAY + - SATURDAY + - SUNDAY responses: TooManyRequestsResponse: content: @@ -1844,6 +19087,18 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Too many requests + BadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + NotFoundResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found parameters: PageOffset: description: Specific offset to use as the beginning of the returned page. @@ -1856,230 +19111,1534 @@ components: format: int64 type: integer x-stackQL-resources: + data_observability_monitor_run_statuses: + id: datadog.monitoring.data_observability_monitor_run_statuses + name: data_observability_monitor_run_statuses + title: Data Observability Monitor Run Statuses + methods: + get_data_observability_monitor_run_status: + operation: + $ref: '#/paths/~1api~1v2~1data-observability~1monitors~1runs~1{run_id}~1status/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/data_observability_monitor_run_statuses/methods/get_data_observability_monitor_run_status' + insert: [] + update: [] + delete: [] + replace: [] + data_observability_monitors: + id: datadog.monitoring.data_observability_monitors + name: data_observability_monitors + title: Data Observability Monitors + methods: + run_data_observability_monitor: + operation: + $ref: '#/paths/~1api~1v2~1data-observability~1monitors~1{monitor_id}~1run/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] notification_rules: id: datadog.monitoring.notification_rules name: notification_rules title: Notification Rules methods: - get_monitor_notification_rules: + get_monitor_notification_rules: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: per_page + maxValue: 1000 + create_monitor_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_monitor_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_monitor_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_monitor_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/notification_rules/methods/get_monitor_notification_rule' + - $ref: '#/components/x-stackQL-resources/notification_rules/methods/get_monitor_notification_rules' + insert: + - $ref: '#/components/x-stackQL-resources/notification_rules/methods/create_monitor_notification_rule' + update: + - $ref: '#/components/x-stackQL-resources/notification_rules/methods/update_monitor_notification_rule' + delete: + - $ref: '#/components/x-stackQL-resources/notification_rules/methods/delete_monitor_notification_rule' + replace: [] + config_policies: + id: datadog.monitoring.config_policies + name: config_policies + title: Config Policies + methods: + list_monitor_config_policies: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_monitor_config_policy: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_monitor_config_policy: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_monitor_config_policy: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/config_policies/methods/get_monitor_config_policy' + - $ref: '#/components/x-stackQL-resources/config_policies/methods/list_monitor_config_policies' + insert: + - $ref: '#/components/x-stackQL-resources/config_policies/methods/create_monitor_config_policy' + update: + - $ref: '#/components/x-stackQL-resources/config_policies/methods/update_monitor_config_policy' + delete: + - $ref: '#/components/x-stackQL-resources/config_policies/methods/delete_monitor_config_policy' + replace: [] + user_templates: + id: datadog.monitoring.user_templates + name: user_templates + title: User Templates + methods: + list_monitor_user_templates: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_monitor_user_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_monitor_user_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + delete_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_monitor_user_template: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_monitor_user_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_existing_monitor_user_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/user_templates/methods/get_monitor_user_template' + - $ref: '#/components/x-stackQL-resources/user_templates/methods/list_monitor_user_templates' + insert: + - $ref: '#/components/x-stackQL-resources/user_templates/methods/create_monitor_user_template' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/user_templates/methods/delete_monitor_user_template' + replace: + - $ref: '#/components/x-stackQL-resources/user_templates/methods/update_monitor_user_template' + downtimes: + id: datadog.monitoring.downtimes + name: downtimes + title: Downtimes + methods: + list_monitor_downtimes: + operation: + $ref: '#/paths/~1api~1v2~1monitor~1{monitor_id}~1downtime_matches/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/downtimes/methods/list_monitor_downtimes' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_api_multistep_subtests: + id: datadog.monitoring.synthetics_api_multistep_subtests + name: synthetics_api_multistep_subtests + title: Synthetics Api Multistep Subtests + methods: + get_api_multistep_subtests: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1api-multistep~1subtests~1{public_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_api_multistep_subtests/methods/get_api_multistep_subtests' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_api_multistep_subtest_parents: + id: datadog.monitoring.synthetics_api_multistep_subtest_parents + name: synthetics_api_multistep_subtest_parents + title: Synthetics Api Multistep Subtest Parents + methods: + get_api_multistep_subtest_parents: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1api-multistep~1subtests~1{public_id}~1parents/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_api_multistep_subtest_parents/methods/get_api_multistep_subtest_parents' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_downtimes: + id: datadog.monitoring.synthetics_downtimes + name: synthetics_downtimes + title: Synthetics Downtimes + methods: + list_synthetics_downtimes: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_synthetics_downtime: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_synthetics_downtime: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes~1{downtime_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_synthetics_downtime: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes~1{downtime_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_synthetics_downtime: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes~1{downtime_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_downtimes/methods/get_synthetics_downtime' + - $ref: '#/components/x-stackQL-resources/synthetics_downtimes/methods/list_synthetics_downtimes' + insert: + - $ref: '#/components/x-stackQL-resources/synthetics_downtimes/methods/create_synthetics_downtime' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/synthetics_downtimes/methods/delete_synthetics_downtime' + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_downtimes/methods/update_synthetics_downtime' + synthetics_downtime_tests: + id: datadog.monitoring.synthetics_downtime_tests + name: synthetics_downtime_tests + title: Synthetics Downtime Tests + methods: + remove_test_from_synthetics_downtime: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes~1{downtime_id}~1tests~1{test_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + add_test_to_synthetics_downtime: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1downtimes~1{downtime_id}~1tests~1{test_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/synthetics_downtime_tests/methods/remove_test_from_synthetics_downtime' + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_downtime_tests/methods/add_test_to_synthetics_downtime' + on_demand_concurrency_cap: + id: datadog.monitoring.on_demand_concurrency_cap + name: on_demand_concurrency_cap + title: On Demand Concurrency Cap + methods: + get_on_demand_concurrency_cap: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1settings~1on_demand_concurrency_cap/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + set_on_demand_concurrency_cap: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1settings~1on_demand_concurrency_cap/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/on_demand_concurrency_cap/methods/get_on_demand_concurrency_cap' + insert: + - $ref: '#/components/x-stackQL-resources/on_demand_concurrency_cap/methods/set_on_demand_concurrency_cap' + update: [] + delete: [] + replace: [] + synthetics_suites: + id: datadog.monitoring.synthetics_suites + name: synthetics_suites + title: Synthetics Suites + methods: + create_synthetics_suite: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1suites/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_synthetics_suites: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1suites~1bulk-delete/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + search_suites: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1suites~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: count + skip: + paramName: start + get_synthetics_suite: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1suites~1{public_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + edit_synthetics_suite: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1suites~1{public_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_suites/methods/get_synthetics_suite' + - $ref: '#/components/x-stackQL-resources/synthetics_suites/methods/search_suites' + insert: + - $ref: '#/components/x-stackQL-resources/synthetics_suites/methods/create_synthetics_suite' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_suites/methods/edit_synthetics_suite' + synthetics_suite_jsonpatches: + id: datadog.monitoring.synthetics_suite_jsonpatches + name: synthetics_suite_jsonpatches + title: Synthetics Suite Jsonpatches + methods: + patch_test_suite: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1suites~1{public_id}~1jsonpatch/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/synthetics_suite_jsonpatches/methods/patch_test_suite' + delete: [] + replace: [] + synthetics_test_browser_results: + id: datadog.monitoring.synthetics_test_browser_results + name: synthetics_test_browser_results + title: Synthetics Test Browser Results + methods: + list_synthetics_browser_test_latest_results: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1browser~1{public_id}~1results/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_synthetics_browser_test_result: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1browser~1{public_id}~1results~1{result_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_test_browser_results/methods/get_synthetics_browser_test_result' + - $ref: '#/components/x-stackQL-resources/synthetics_test_browser_results/methods/list_synthetics_browser_test_latest_results' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_tests: + id: datadog.monitoring.synthetics_tests + name: synthetics_tests + title: Synthetics Tests + methods: + delete_synthetics_tests: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1bulk-delete/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_tests: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.tests + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + delete_tests: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1delete/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + trigger_tests: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1trigger/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + trigger_citests: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1trigger~1ci/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_test: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1{public_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + patch_test: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1{public_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_test_pause_status: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1{public_id}~1status/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_tests/methods/get_test' + - $ref: '#/components/x-stackQL-resources/synthetics_tests/methods/list_tests' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/synthetics_tests/methods/patch_test' + delete: [] + replace: [] + synthetics_fast_test_results: + id: datadog.monitoring.synthetics_fast_test_results + name: synthetics_fast_test_results + title: Synthetics Fast Test Results + methods: + get_synthetics_fast_test_result: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1fast~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_fast_test_results/methods/get_synthetics_fast_test_result' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_network_tests: + id: datadog.monitoring.synthetics_network_tests + name: synthetics_network_tests + title: Synthetics Network Tests + methods: + create_synthetics_network_test: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1network/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_synthetics_network_test: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1network~1{public_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_synthetics_network_test: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1network~1{public_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_network_tests/methods/get_synthetics_network_test' + insert: + - $ref: '#/components/x-stackQL-resources/synthetics_network_tests/methods/create_synthetics_network_test' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_network_tests/methods/update_synthetics_network_test' + synthetics_test_poll_results: + id: datadog.monitoring.synthetics_test_poll_results + name: synthetics_test_poll_results + title: Synthetics Test Poll Results + methods: + poll_synthetics_test_results: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1poll_results/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_test_poll_results/methods/poll_synthetics_test_results' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_test_files: + id: datadog.monitoring.synthetics_test_files + name: synthetics_test_files + title: Synthetics Test Files + methods: + get_test_file_download_url: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1files~1download/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_test_file_multipart_presigned_urls: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1files~1multipart-presigned-urls/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + abort_test_file_multipart_upload: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1files~1multipart-upload-abort/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + complete_test_file_multipart_upload: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1files~1multipart-upload-complete/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + synthetics_test_parent_suites: + id: datadog.monitoring.synthetics_test_parent_suites + name: synthetics_test_parent_suites + title: Synthetics Test Parent Suites + methods: + get_test_parent_suites: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1parent-suites/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_test_parent_suites/methods/get_test_parent_suites' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_test_results: + id: datadog.monitoring.synthetics_test_results + name: synthetics_test_results + title: Synthetics Test Results + methods: + list_synthetics_test_latest_results: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1results/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_synthetics_test_result: + operation: + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1results~1{result_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_test_results/methods/get_synthetics_test_result' + - $ref: '#/components/x-stackQL-resources/synthetics_test_results/methods/list_synthetics_test_latest_results' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_test_version_histories: + id: datadog.monitoring.synthetics_test_version_histories + name: synthetics_test_version_histories + title: Synthetics Test Version Histories + methods: + list_synthetics_test_versions: operation: - $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/get' + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1version_history/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_monitor_notification_rule: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 50 + get_synthetics_test_version: operation: - $ref: '#/paths/~1api~1v2~1monitor~1notification_rule/post' + $ref: '#/paths/~1api~1v2~1synthetics~1tests~1{public_id}~1version_history~1{version_number}/get' response: mediaType: application/json openAPIDocKey: '200' - delete_monitor_notification_rule: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_test_version_histories/methods/get_synthetics_test_version' + - $ref: '#/components/x-stackQL-resources/synthetics_test_version_histories/methods/list_synthetics_test_versions' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_variable_jsonpatches: + id: datadog.monitoring.synthetics_variable_jsonpatches + name: synthetics_variable_jsonpatches + title: Synthetics Variable Jsonpatches + methods: + patch_global_variable: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/delete' + $ref: '#/paths/~1api~1v2~1synthetics~1variables~1{variable_id}~1jsonpatch/patch' response: mediaType: application/json - openAPIDocKey: '204' - get_monitor_notification_rule: + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/synthetics_variable_jsonpatches/methods/patch_global_variable' + delete: [] + replace: [] + service_checks: + id: datadog.monitoring.service_checks + name: service_checks + title: Service Checks + methods: + submit_service_check: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/get' + $ref: '#/paths/~1api~1v1~1check_run/post' + response: + mediaType: text/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + monitors: + id: datadog.monitoring.monitors + name: monitors + title: Monitors + methods: + list_monitors: + operation: + $ref: '#/paths/~1api~1v1~1monitor/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + maxValue: 1000 + create_monitor: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1monitor/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + check_can_delete_monitor: + operation: + $ref: '#/paths/~1api~1v1~1monitor~1can_delete/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_monitor_notification_rule: + request: + nativeCasing: camel + validate_monitor: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1notification_rule~1{rule_id}/patch' + $ref: '#/paths/~1api~1v1~1monitor~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_monitor: + operation: + $ref: '#/paths/~1api~1v1~1monitor~1{monitor_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_monitor: + operation: + $ref: '#/paths/~1api~1v1~1monitor~1{monitor_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_monitor: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1monitor~1{monitor_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + validate_existing_monitor: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1monitor~1{monitor_id}~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/notification_rules/methods/get_monitor_notification_rule - - $ref: >- - #/components/x-stackQL-resources/notification_rules/methods/get_monitor_notification_rules + - $ref: '#/components/x-stackQL-resources/monitors/methods/get_monitor' + - $ref: '#/components/x-stackQL-resources/monitors/methods/list_monitors' + - $ref: '#/components/x-stackQL-resources/monitors/methods/check_can_delete_monitor' insert: - - $ref: >- - #/components/x-stackQL-resources/notification_rules/methods/create_monitor_notification_rule - update: - - $ref: >- - #/components/x-stackQL-resources/notification_rules/methods/update_monitor_notification_rule + - $ref: '#/components/x-stackQL-resources/monitors/methods/create_monitor' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/notification_rules/methods/delete_monitor_notification_rule + - $ref: '#/components/x-stackQL-resources/monitors/methods/delete_monitor' + replace: + - $ref: '#/components/x-stackQL-resources/monitors/methods/update_monitor' + monitor_group_search_results: + id: datadog.monitoring.monitor_group_search_results + name: monitor_group_search_results + title: Monitor Group Search Results + methods: + search_monitor_groups: + operation: + $ref: '#/paths/~1api~1v1~1monitor~1groups~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.groups + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: per_page + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitor_group_search_results/methods/search_monitor_groups' + insert: [] + update: [] + delete: [] replace: [] - config_policies: - id: datadog.monitoring.config_policies - name: config_policies - title: Config Policies + monitor_search_results: + id: datadog.monitoring.monitor_search_results + name: monitor_search_results + title: Monitor Search Results methods: - list_monitor_config_policies: + search_monitors: operation: - $ref: '#/paths/~1api~1v2~1monitor~1policy/get' + $ref: '#/paths/~1api~1v1~1monitor~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.monitors + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: per_page + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitor_search_results/methods/search_monitors' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_ci_batches: + id: datadog.monitoring.synthetics_ci_batches + name: synthetics_ci_batches + title: Synthetics Ci Batches + methods: + get_synthetics_cibatch: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1ci~1batch~1{batch_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_monitor_config_policy: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_ci_batches/methods/get_synthetics_cibatch' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_locations: + id: datadog.monitoring.synthetics_locations + name: synthetics_locations + title: Synthetics Locations + methods: + list_locations: operation: - $ref: '#/paths/~1api~1v2~1monitor~1policy/post' + $ref: '#/paths/~1api~1v1~1synthetics~1locations/get' response: mediaType: application/json openAPIDocKey: '200' - delete_monitor_config_policy: + objectKey: $.locations + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_locations/methods/list_locations' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_private_locations: + id: datadog.monitoring.synthetics_private_locations + name: synthetics_private_locations + title: Synthetics Private Locations + methods: + create_private_location: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/delete' + $ref: '#/paths/~1api~1v1~1synthetics~1private-locations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_private_location: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1private-locations~1{location_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_monitor_config_policy: + request: + nativeCasing: camel + get_private_location: operation: - $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/get' + $ref: '#/paths/~1api~1v1~1synthetics~1private-locations~1{location_id}/get' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - update_monitor_config_policy: + request: + nativeCasing: camel + update_private_location: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1policy~1{policy_id}/patch' + $ref: '#/paths/~1api~1v1~1synthetics~1private-locations~1{location_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/config_policies/methods/get_monitor_config_policy - - $ref: >- - #/components/x-stackQL-resources/config_policies/methods/list_monitor_config_policies + - $ref: '#/components/x-stackQL-resources/synthetics_private_locations/methods/get_private_location' insert: - - $ref: >- - #/components/x-stackQL-resources/config_policies/methods/create_monitor_config_policy - update: - - $ref: >- - #/components/x-stackQL-resources/config_policies/methods/update_monitor_config_policy + - $ref: '#/components/x-stackQL-resources/synthetics_private_locations/methods/create_private_location' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/config_policies/methods/delete_monitor_config_policy - replace: [] - user_templates: - id: datadog.monitoring.user_templates - name: user_templates - title: User Templates + - $ref: '#/components/x-stackQL-resources/synthetics_private_locations/methods/delete_private_location' + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_private_locations/methods/update_private_location' + synthetics_default_locations: + id: datadog.monitoring.synthetics_default_locations + name: synthetics_default_locations + title: Synthetics Default Locations methods: - list_monitor_user_templates: + get_synthetics_default_locations: operation: - $ref: '#/paths/~1api~1v2~1monitor~1template/get' + $ref: '#/paths/~1api~1v1~1synthetics~1settings~1default_locations/get' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_monitor_user_template: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_default_locations/methods/get_synthetics_default_locations' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_api_tests: + id: datadog.monitoring.synthetics_api_tests + name: synthetics_api_tests + title: Synthetics Api Tests + methods: + create_synthetics_apitest: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1template/post' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1api/post' response: mediaType: application/json openAPIDocKey: '200' - validate_monitor_user_template: + request: + nativeCasing: camel + get_apitest: operation: - $ref: '#/paths/~1api~1v2~1monitor~1template~1validate/post' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1api~1{public_id}/get' response: mediaType: application/json - openAPIDocKey: '204' - delete_monitor_user_template: + openAPIDocKey: '200' + request: + nativeCasing: camel + update_apitest: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/delete' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1api~1{public_id}/put' response: mediaType: application/json - openAPIDocKey: '204' - get_monitor_user_template: + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_api_tests/methods/get_apitest' + insert: + - $ref: '#/components/x-stackQL-resources/synthetics_api_tests/methods/create_synthetics_apitest' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_api_tests/methods/update_apitest' + synthetics_browser_tests: + id: datadog.monitoring.synthetics_browser_tests + name: synthetics_browser_tests + title: Synthetics Browser Tests + methods: + create_synthetics_browser_test: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/get' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1browser/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - update_monitor_user_template: + request: + nativeCasing: camel + get_browser_test: operation: - $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}/put' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1browser~1{public_id}/get' response: mediaType: application/json openAPIDocKey: '200' - validate_existing_monitor_user_template: + request: + nativeCasing: camel + update_browser_test: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1monitor~1template~1{template_id}~1validate/post' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1browser~1{public_id}/put' response: mediaType: application/json - openAPIDocKey: '204' + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/user_templates/methods/get_monitor_user_template - - $ref: >- - #/components/x-stackQL-resources/user_templates/methods/list_monitor_user_templates + - $ref: '#/components/x-stackQL-resources/synthetics_browser_tests/methods/get_browser_test' insert: - - $ref: >- - #/components/x-stackQL-resources/user_templates/methods/create_monitor_user_template + - $ref: '#/components/x-stackQL-resources/synthetics_browser_tests/methods/create_synthetics_browser_test' update: [] - delete: - - $ref: >- - #/components/x-stackQL-resources/user_templates/methods/delete_monitor_user_template + delete: [] replace: - - $ref: >- - #/components/x-stackQL-resources/user_templates/methods/update_monitor_user_template - downtimes: - id: datadog.monitoring.downtimes - name: downtimes - title: Downtimes + - $ref: '#/components/x-stackQL-resources/synthetics_browser_tests/methods/update_browser_test' + synthetics_browser_test_results: + id: datadog.monitoring.synthetics_browser_test_results + name: synthetics_browser_test_results + title: Synthetics Browser Test Results methods: - list_monitor_downtimes: + get_browser_test_latest_results: operation: - $ref: '#/paths/~1api~1v2~1monitor~1{monitor_id}~1downtime_matches/get' + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1browser~1{public_id}~1results/get' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data + objectKey: $.results + request: + nativeCasing: camel + get_browser_test_result: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1browser~1{public_id}~1results~1{result_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/downtimes/methods/list_monitor_downtimes + - $ref: '#/components/x-stackQL-resources/synthetics_browser_test_results/methods/get_browser_test_result' + - $ref: '#/components/x-stackQL-resources/synthetics_browser_test_results/methods/get_browser_test_latest_results' insert: [] update: [] delete: [] replace: [] - on_demand_concurrency_cap: - id: datadog.monitoring.on_demand_concurrency_cap - name: on_demand_concurrency_cap - title: On Demand Concurrency Cap + synthetics_mobile_tests: + id: datadog.monitoring.synthetics_mobile_tests + name: synthetics_mobile_tests + title: Synthetics Mobile Tests methods: - get_on_demand_concurrency_cap: + create_synthetics_mobile_test: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1synthetics~1settings~1on_demand_concurrency_cap/get + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1mobile/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - set_on_demand_concurrency_cap: + request: + nativeCasing: camel + get_mobile_test: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1mobile~1{public_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_mobile_test: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1synthetics~1settings~1on_demand_concurrency_cap/post + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1mobile~1{public_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/on_demand_concurrency_cap/methods/get_on_demand_concurrency_cap + - $ref: '#/components/x-stackQL-resources/synthetics_mobile_tests/methods/get_mobile_test' insert: - - $ref: >- - #/components/x-stackQL-resources/on_demand_concurrency_cap/methods/set_on_demand_concurrency_cap + - $ref: '#/components/x-stackQL-resources/synthetics_mobile_tests/methods/create_synthetics_mobile_test' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_mobile_tests/methods/update_mobile_test' + synthetics_test_search_results: + id: datadog.monitoring.synthetics_test_search_results + name: synthetics_test_search_results + title: Synthetics Test Search Results + methods: + search_tests: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.tests + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: count + skip: + paramName: start + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_test_search_results/methods/search_tests' + insert: [] + update: [] + delete: [] + replace: [] + synthetics_test_uptimes: + id: datadog.monitoring.synthetics_test_uptimes + name: synthetics_test_uptimes + title: Synthetics Test Uptimes + methods: + fetch_uptimes: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1uptimes/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + synthetics_api_test_results: + id: datadog.monitoring.synthetics_api_test_results + name: synthetics_api_test_results + title: Synthetics Api Test Results + methods: + get_apitest_latest_results: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1{public_id}~1results/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.results + request: + nativeCasing: camel + get_apitest_result: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1tests~1{public_id}~1results~1{result_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_api_test_results/methods/get_apitest_result' + - $ref: '#/components/x-stackQL-resources/synthetics_api_test_results/methods/get_apitest_latest_results' + insert: [] update: [] delete: [] replace: [] + synthetics_global_variables: + id: datadog.monitoring.synthetics_global_variables + name: synthetics_global_variables + title: Synthetics Global Variables + methods: + list_global_variables: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1variables/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.variables + request: + nativeCasing: camel + create_global_variable: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1variables/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_global_variable: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1variables~1{variable_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_global_variable: + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1variables~1{variable_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + edit_global_variable: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1synthetics~1variables~1{variable_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/synthetics_global_variables/methods/get_global_variable' + - $ref: '#/components/x-stackQL-resources/synthetics_global_variables/methods/list_global_variables' + insert: + - $ref: '#/components/x-stackQL-resources/synthetics_global_variables/methods/create_global_variable' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/synthetics_global_variables/methods/delete_global_variable' + replace: + - $ref: '#/components/x-stackQL-resources/synthetics_global_variables/methods/edit_global_variable' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/organization.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/organization.yaml index 9dcd88b..43b89bc 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/organization.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/organization.yaml @@ -4,6 +4,67 @@ info: description: datadog organization API version: '1.0' paths: + /api/v2/anonymize_users: + put: + description: |- + Anonymize a list of users, removing their personal data. This operation is irreversible. + Requires the `user_access_manage` permission. + operationId: AnonymizeUsers + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + user_ids: + - 00000000-0000-0000-0000-000000000000 + type: anonymize_users_request + schema: + $ref: '#/components/schemas/AnonymizeUsersRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: abc-123 + type: anonymize_users_response + schema: + $ref: '#/components/schemas/AnonymizeUsersResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Anonymize users + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + x-unstable: '**Note**: This endpoint is in Preview and may be subject to changes.' /api/v2/api_keys: get: description: List all API keys available for your account. @@ -24,6 +85,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + last4: abcd + modified_at: '2024-01-01T00:00:00+00:00' + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000001 + type: api_keys schema: $ref: '#/components/schemas/APIKeysResponse' description: OK @@ -54,6 +126,13 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: API Key for submitting metrics + type: api_keys schema: $ref: '#/components/schemas/APIKeyCreateRequest' required: true @@ -61,6 +140,17 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + last4: abcd + modified_at: '2024-01-01T00:00:00+00:00' + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000002 + type: api_keys schema: $ref: '#/components/schemas/APIKeyResponse' description: Created @@ -126,6 +216,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + last4: abcd + modified_at: '2024-01-01T00:00:00+00:00' + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000003 + type: api_keys schema: $ref: '#/components/schemas/APIKeyResponse' description: OK @@ -158,6 +259,14 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: API Key for submitting metrics + id: 00112233-4455-6677-8899-aabbccddeeff + type: api_keys schema: $ref: '#/components/schemas/APIKeyUpdateRequest' required: true @@ -165,6 +274,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + last4: abcd + modified_at: '2024-01-01T00:00:00+00:00' + name: API Key for submitting metrics + id: 00000000-0000-0000-0000-000000000004 + type: api_keys schema: $ref: '#/components/schemas/APIKeyResponse' description: OK @@ -207,11 +327,22 @@ paths: - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' + - $ref: '#/components/parameters/ApplicationKeyFilterOwnedByParameter' - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000001 + type: application_keys schema: $ref: '#/components/schemas/ListApplicationKeysResponse' description: OK @@ -283,6 +414,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000002 + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyResponse' description: OK @@ -321,6 +462,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + id: 00112233-4455-6677-8899-aabbccddeeff + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyUpdateRequest' required: true @@ -328,6 +481,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000003 + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyResponse' description: OK @@ -361,17 +524,13 @@ paths: - org_app_keys_write /api/v2/audit/events: get: - description: >- + description: |- List endpoint returns events that match a Audit Logs search query. - [Results are paginated][1]. - Use this endpoint to see your latest Audit Logs events. - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination operationId: ListAuditLogs parameters: - description: Search query following Audit Logs syntax. @@ -404,8 +563,7 @@ paths: schema: $ref: '#/components/schemas/AuditLogsSort' - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== in: query name: page[cursor] required: false @@ -425,6 +583,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + message: User logged in + service: web-app + tags: + - team:A + timestamp: '2024-01-01T00:00:00+00:00' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: audit + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done schema: $ref: '#/components/schemas/AuditLogsEventsResponse' description: OK @@ -448,23 +622,30 @@ paths: - audit_logs_read /api/v2/audit/events/search: post: - description: >- - List endpoint returns Audit Logs events that match an Audit search - query. - + description: |- + List endpoint returns Audit Logs events that match an Audit search query. [Results are paginated][1]. + Use this endpoint to build complex Audit Logs events filtering and search. - Use this endpoint to build complex Audit Logs events filtering and - search. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + [1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination operationId: SearchAuditLogs requestBody: content: application/json: + examples: + default: + value: + filter: + from: now-15m + query: '@type:session AND @session.type:user' + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp schema: $ref: '#/components/schemas/AuditLogsSearchEventsRequest' required: false @@ -472,6 +653,24 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + message: User logged in + service: web-app + tags: + - team:A + timestamp: '2019-01-02T09:42:36.320Z' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: audit + links: + next: https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done schema: $ref: '#/components/schemas/AuditLogsEventsResponse' description: OK @@ -513,9 +712,7 @@ paths: required: false schema: type: string - - description: >- - Filter by mapping resource type. Defaults to "role" if not - specified. + - description: Filter by mapping resource type. Defaults to "role" if not specified. in: query name: resource_type schema: @@ -524,6 +721,15 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000003 + type: authn_mappings schema: $ref: '#/components/schemas/AuthNMappingsResponse' description: OK @@ -548,6 +754,14 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + type: authn_mappings schema: $ref: '#/components/schemas/AuthNMappingCreateRequest' required: true @@ -555,6 +769,15 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000004 + type: authn_mappings schema: $ref: '#/components/schemas/AuthNMappingResponse' description: OK @@ -625,6 +848,15 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000001 + type: authn_mappings schema: $ref: '#/components/schemas/AuthNMappingResponse' description: OK @@ -657,6 +889,15 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: authn_mappings schema: $ref: '#/components/schemas/AuthNMappingUpdateRequest' required: true @@ -664,6 +905,15 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attribute_key: member-of + attribute_value: Development + id: 00000000-0000-0000-0000-000000000002 + type: authn_mappings schema: $ref: '#/components/schemas/AuthNMappingResponse' description: OK @@ -707,6 +957,144 @@ paths: operator: OR permissions: - user_access_manage + /api/v2/current_user: + get: + description: |- + Get the user associated with the current authentication context. + The response includes the user's profile attributes (name, email, handle, + status, MFA state), along with related resources: the user's organization, + assigned roles with their granted permissions, and team-scoped roles. + No additional permissions are required beyond valid authentication. + operationId: GetCurrentUser + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00+00:00' + disabled: false + email: jane.doe@example.com + handle: jane.doe + icon: https://secure.gravatar.com/avatar/abc123 + mfa_enabled: true + modified_at: '2024-06-01T12:00:00+00:00' + name: Jane Doe + service_account: false + status: Active + title: Senior Engineer + verified: true + id: 00000000-0000-9999-0000-000000000000 + type: users + included: [] + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get current user + tags: + - Users + patch: + description: |- + Edit the profile of the currently authenticated user. Updatable fields + include `name`, `title`, `email`, and `disabled` status. The `id` field + in the request body must match the authenticated user's UUID; a mismatch + returns a 422 error. Email address changes are recorded in the audit trail. + Requires the `user_self_profile_write` permission. + operationId: UpdateCurrentUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: jane.doe@example.com + name: Jane Doe + title: Staff Engineer + id: 00000000-0000-9999-0000-000000000000 + type: users + schema: + $ref: '#/components/schemas/UserUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00+00:00' + disabled: false + email: jane.doe@example.com + handle: jane.doe + icon: https://secure.gravatar.com/avatar/abc123 + mfa_enabled: true + modified_at: '2024-06-01T12:00:00+00:00' + name: Jane Doe + service_account: false + status: Active + title: Staff Engineer + verified: true + id: 00000000-0000-9999-0000-000000000000 + type: users + included: [] + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update current user + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_self_profile_write /api/v2/current_user/application_keys: get: description: List all application keys available for current user @@ -723,6 +1111,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000004 + type: application_keys schema: $ref: '#/components/schemas/ListApplicationKeysResponse' description: OK @@ -759,6 +1157,17 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyCreateRequest' required: true @@ -766,6 +1175,16 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000005 + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyResponse' description: Created @@ -822,7 +1241,9 @@ paths: permissions: - user_app_keys get: - description: Get an application key owned by current user + description: |- + Get an application key owned by current user. + The `key` field is not returned for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). operationId: GetCurrentUserApplicationKey parameters: - $ref: '#/components/parameters/ApplicationKeyID' @@ -830,6 +1251,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000006 + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyResponse' description: OK @@ -855,13 +1286,27 @@ paths: permissions: - user_app_keys patch: - description: Edit an application key owned by current user + description: |- + Edit an application key owned by current user. + The `key` field is not returned for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). operationId: UpdateCurrentUserApplicationKey parameters: - $ref: '#/components/parameters/ApplicationKeyID' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + id: 00112233-4455-6677-8899-aabbccddeeff + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyUpdateRequest' required: true @@ -869,6 +1314,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2020-11-23T10:00:00.000Z' + last4: abcd + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000007 + type: application_keys schema: $ref: '#/components/schemas/ApplicationKeyResponse' description: OK @@ -902,15 +1357,28 @@ paths: - user_app_keys /api/v2/deletion/data/{product}: post: - description: >- - Creates a data deletion request by providing a query and a timeframe - targeting the proper data. + description: Creates a data deletion request by providing a query and a timeframe targeting the proper data. operationId: CreateDataDeletionRequest parameters: - $ref: '#/components/parameters/ProductName' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + displayed_total: 100 + from: 1672527600000 + indexes: + - test-index + - test-index-2 + query: + host: abc + service: xyz + to: 1704063600000 + type: create_deletion_req schema: $ref: '#/components/schemas/CreateDataDeletionRequestBody' required: true @@ -918,6 +1386,29 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000000Z' + created_by: test@example.com + displayed_total: 100 + from_time: 1672527600000 + is_created: true + org_id: 123 + product: logs + query: service:xyz host:abc + starting_at: '2024-01-01T02:00:00.000000Z' + status: pending + to_time: 1704063600000 + total_unrestricted: 100 + updated_at: '2024-01-01T00:00:00.000000Z' + id: '1' + type: deletion_request + meta: + product: logs + request_status: pending schema: $ref: '#/components/schemas/CreateDataDeletionResponseBody' description: OK @@ -948,21 +1439,13 @@ paths: x-permission: operator: OR permissions: - - rum_delete_data - logs_delete_data - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/deletion/requests: get: - description: >- - Gets a list of data deletion requests based on several filter - parameters. + description: Gets a list of data deletion requests based on several filter parameters. operationId: GetDataDeletionRequests parameters: - - description: >- - The next page of the previous search. If the next_page parameter is - included, the rest of the query elements are ignored. + - description: The next page of the previous search. If the next_page parameter is included, the rest of the query elements are ignored. example: cGFnZTI= in: query name: next_page @@ -1005,6 +1488,29 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00.000000Z' + created_by: test@example.com + displayed_total: 100 + from_time: 1672527600000 + is_created: true + org_id: 123 + product: logs + query: service:xyz host:abc + starting_at: '2024-01-01T02:00:00.000000Z' + status: pending + to_time: 1704063600000 + total_unrestricted: 100 + updated_at: '2024-01-01T00:00:00.000000Z' + id: '1' + type: deletion_request + meta: + next_page: cGFnZTI= + product: logs schema: $ref: '#/components/schemas/GetDataDeletionsResponseBody' description: OK @@ -1029,11 +1535,7 @@ paths: x-permission: operator: OR permissions: - - rum_delete_data - logs_delete_data - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/deletion/requests/{id}/cancel: put: description: Cancels a data deletion request by providing its ID. @@ -1044,6 +1546,29 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000000Z' + created_by: test@example.com + displayed_total: 100 + from_time: 1672527600000 + is_created: true + org_id: 123 + product: logs + query: service:xyz host:abc + starting_at: '2024-01-01T02:00:00.000000Z' + status: canceled + to_time: 1704063600000 + total_unrestricted: 100 + updated_at: '2024-01-01T00:00:00.000000Z' + id: '1' + type: deletion_request + meta: + product: logs + request_status: canceled schema: $ref: '#/components/schemas/CancelDataDeletionResponseBody' description: OK @@ -1074,11 +1599,7 @@ paths: x-permission: operator: OR permissions: - - rum_delete_data - logs_delete_data - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/domain_allowlist: get: description: Get the domain allowlist for an organization. @@ -1087,6 +1608,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + domains: + - '@example.com' + enabled: false + id: 00000000-0000-0000-0000-000000000002 + type: domain_allowlist schema: $ref: '#/components/schemas/DomainAllowlistResponse' description: OK @@ -1116,6 +1647,15 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + domains: + - '@static-test-domain.test' + enabled: false + type: domain_allowlist schema: $ref: '#/components/schemas/DomainAllowlistRequest' required: true @@ -1123,6 +1663,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + domains: + - '@example.com' + enabled: false + id: 00000000-0000-0000-0000-000000000001 + type: domain_allowlist schema: $ref: '#/components/schemas/DomainAllowlistResponse' description: OK @@ -1146,1405 +1696,2600 @@ paths: - generate_dashboard_reports - generate_log_reports - manage_log_reports - /api/v2/ip_allowlist: + /api/v2/global_orgs: get: - description: Returns the IP allowlist and its enabled or disabled state. - operationId: GetIPAllowlist + description: Returns organizations across regions for the authenticated user. The `user_handle` query parameter must match the authenticated user's handle. + operationId: ListGlobalOrgs + parameters: + - description: The handle of the authenticated user. + in: query + name: user_handle + required: true + schema: + example: user@example.com + type: string + - description: Maximum number of results returned. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int32 + maximum: 1000 + minimum: 1 + type: integer + - description: |- + String to query the next page of results. + This key is provided with each valid response from the API in `meta.page.next_cursor`. + in: query + name: page[cursor] + required: false + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + org: + name: Example Org + public_id: abcdef12345 + subdomain: example + uuid: 13d10a96-6ff2-49be-be7b-4f56ebb13335 + redirect_url: https://app.datadoghq.com/account/login/password?dd_oid=13d10a96-6ff2-49be-be7b-4f56ebb13335&login_hint=user%40example.com + source_region: us1.prod.dog + user: + handle: user@example.com + uuid: cfab5cf9-5472-48ea-a79c-a64045f4f745 + type: global_user_orgs + links: + next: https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100&page[cursor]=next-page + self: https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100 + meta: + page: + cursor: '' + limit: 100 + next_cursor: next-page + type: cursor schema: - $ref: '#/components/schemas/IPAllowlistResponse' + $ref: '#/components/schemas/GlobalOrgsResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - org_management - summary: Get IP Allowlist + - user_access_read + summary: List global orgs tags: - - IP Allowlist + - Organizations + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.next_cursor + limitParam: page[limit] + resultsPath: data x-permission: operator: OR permissions: - - org_management - patch: - description: Edit the entries in the IP allowlist, and enable or disable it. - operationId: UpdateIPAllowlist - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistUpdateRequest' - required: true + - user_access_read + /api/v2/governance/config: + get: + description: |- + Retrieve the Governance Console configuration for the organization, including whether the + Console is enabled, whether assignment notifications are enabled, and whether usage + attribution is configured. + operationId: GetGovernanceConfig responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + enabled: true + usage_attribution_configured: true + xorg_insights_enabled: true + id: 00000000-0000-0000-0000-000000000000 + type: governance_console_config schema: - $ref: '#/components/schemas/IPAllowlistResponse' + $ref: '#/components/schemas/GovernanceConfigResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - org_management - summary: Update IP Allowlist + - AuthZ: [] + summary: Get the Governance Console configuration tags: - - IP Allowlist - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_management - /api/v2/org_configs: + - Governance Console + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control: get: - description: Returns all Org Configs (name, description, and value). - operationId: ListOrgConfigs + description: |- + Retrieve the list of governance controls configured for the organization. Each control pairs a + detection definition with the organization's current detection, notification, and mitigation + configuration, along with counts of active and mitigated detections. + operationId: ListGovernanceControls responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + active_detections_count: 12 + category: security + created_at: '2024-01-15T09:30:00Z' + created_by: 11111111-2222-3333-4444-555555555555 + description: Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials. + detection_parameters: + api_key_threshold: 30 + insights: [] + last_detection_at: '2024-03-01T12:00:00Z' + mitigated_detections_count: 3 + mitigation_parameters: {} + mitigation_type: '' + mitigations: + - description: Automatically identifies and revokes inactive API keys to improve security and reduce potential attack surface. + execution_modes: + - manual + - automatic + id: revoke_api_key + permissions: + - api_keys_write + - api_keys_delete + supported_parameters: [] + title: Revoke Unused API Keys + name: Unused API Keys + priority: High + product: api_keys + resource_type: api_key + resource_type_display_name: API Key + supported_detection_parameters: + - default_value: 30 + description: Number of days of inactivity before an API key is considered unused. + display_name: Unused API Key Threshold + name: api_key_threshold + required: false + supported_values: null + type: integer + type: Proactive + id: unused_api_keys + type: governance_control schema: - $ref: '#/components/schemas/OrgConfigListResponse' + $ref: '#/components/schemas/GovernanceControlsResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Org Configs + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List controls tags: - - Organizations + - Governance Console x-permission: - operator: OPEN - permissions: [] - /api/v2/org_configs/{org_config_name}: + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control/{detection_type}: get: - description: Return the name, description, and value of a specific Org Config. - operationId: GetOrgConfig + description: |- + Retrieve a single governance control by its detection type, including the organization's current + detection, notification, and mitigation configuration and detection counts. + operationId: GetGovernanceControl parameters: - - $ref: '#/components/parameters/OrgConfigName' + - description: The detection type that identifies the control, for example `unused_api_keys`. + example: unused_api_keys + in: path + name: detection_type + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + active_detections_count: 12 + category: security + created_at: '2024-01-15T09:30:00Z' + created_by: 11111111-2222-3333-4444-555555555555 + description: Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials. + detection_parameters: + api_key_threshold: 30 + insights: [] + last_detection_at: '2024-03-01T12:00:00Z' + mitigated_detections_count: 3 + mitigation_parameters: {} + mitigation_type: revoke_api_key + mitigations: [] + name: Unused API Keys + priority: High + product: api_keys + resource_type: api_key + resource_type_display_name: API Key + supported_detection_parameters: + - default_value: 30 + description: Number of days of inactivity before an API key is considered unused. + display_name: Unused API Key Threshold + name: api_key_threshold + required: false + supported_values: null + type: integer + type: Proactive + id: unused_api_keys + type: governance_control schema: - $ref: '#/components/schemas/OrgConfigGetResponse' + $ref: '#/components/schemas/GovernanceControlResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a specific Org Config value + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a control tags: - - Organizations + - Governance Console x-permission: - operator: OPEN - permissions: [] + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). patch: - description: Update the value of a specific Org Config. - operationId: UpdateOrgConfig + description: |- + Update the detection, notification, and mitigation configuration of a governance control. Only + the attributes present in the request are modified. Changing the mitigation type or its + parameters may require additional permissions. + operationId: UpdateGovernanceControl parameters: - - $ref: '#/components/parameters/OrgConfigName' + - description: The detection type that identifies the control, for example `unused_api_keys`. + example: unused_api_keys + in: path + name: detection_type + required: true + schema: + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + detection_parameters: + api_key_threshold: 60 + mitigation_type: revoke_api_key + type: governance_control schema: - $ref: '#/components/schemas/OrgConfigWriteRequest' + $ref: '#/components/schemas/GovernanceControlUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + active_detections_count: 12 + category: security + created_at: '2024-01-15T09:30:00Z' + created_by: 11111111-2222-3333-4444-555555555555 + description: Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials. + detection_parameters: + api_key_threshold: 60 + insights: [] + last_detection_at: '2024-03-01T12:00:00Z' + mitigated_detections_count: 3 + mitigation_parameters: {} + mitigation_type: revoke_api_key + mitigations: [] + name: Unused API Keys + priority: High + product: api_keys + resource_type: api_key + resource_type_display_name: API Key + supported_detection_parameters: [] + type: Proactive + id: unused_api_keys + type: governance_control schema: - $ref: '#/components/schemas/OrgConfigGetResponse' + $ref: '#/components/schemas/GovernanceControlResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a specific Org Config + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update a control tags: - - Organizations + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - org_management - /api/v2/org_connections: + - governance_console_read + - governance_console_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control/{detection_type}/detections: get: - description: Returns a list of org connections. - operationId: ListOrgConnections + description: |- + Retrieve the detections produced by the governance control with the given detection type. + Results can be filtered by state and free-text query, sorted, and paginated. + operationId: ListGovernanceControlDetections + parameters: + - description: The detection type that identifies the control; for example, `unused_api_keys`. + example: unused_api_keys + in: path + name: detection_type + required: true + schema: + type: string + - description: Restrict the results to detections in the given state. + example: active + in: query + name: filter[state] + required: false + schema: + type: string + - description: Restrict the results to detections matching the given free-text query. + example: production + in: query + name: filter[query] + required: false + schema: + type: string + - description: |- + A comma-separated list of attributes to sort detections by. Prefix an attribute with + `-` for descending order. + + The attributes available for sorting are `id`, `created_at`, `assigned_to`, + `detection_type`, `display_name`, `exception_at`, `mitigate_after`, `mitigated_at`, + `priority`, `resource_id`, and `state`. Defaults to `created_at,-id`. + example: '-created_at,-id' + in: query + name: sort + required: false + schema: + type: string + - description: The zero-based index of the page to return; the first page is 0. + example: 0 + in: query + name: page[number] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The number of detections to return per page. + example: 50 + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + assigned_team: platform-security + assigned_to: 11111111-2222-3333-4444-555555555555 + assignment_source: manual + control_id: unused_api_keys + created_at: '2024-03-01T12:00:00Z' + detection_type: unused_api_keys + display_name: CI Deploy Key + metadata: + region: us-east-1 + priority: 1 + resource_id: api-key-12345 + resource_type: api_key + state: active + id: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + type: governance_control_detection schema: - $ref: '#/components/schemas/OrgConnectionListResponse' + $ref: '#/components/schemas/GovernanceControlDetectionsResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - org_connections_read - summary: List Org Connections + - AuthZ: [] + summary: List control detections tags: - - Org Connections + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - org_connections_read - post: - description: Create a new org connection between the current org and a target org. - operationId: CreateOrgConnections - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionCreateRequest' - required: true + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/control/{detection_type}/notification_settings: + get: + description: |- + Retrieve the notification settings for the governance control with the given detection type, + including, for each supported event type, whether notifications are enabled and which + destinations receive them. + operationId: GetGovernanceControlNotificationSettings + parameters: + - description: The detection type that identifies the control; for example, `unused_api_keys`. + example: unused_api_keys + in: path + name: detection_type + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + event_settings: + - enabled: true + event_type: new_detection + targets: + - handle: '#governance-alerts' + type: slack + id: unused_api_keys + type: control_notification_settings schema: - $ref: '#/components/schemas/OrgConnectionResponse' + $ref: '#/components/schemas/ControlNotificationSettingsResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Create Org Connection + - AuthZ: [] + summary: Get control notification settings tags: - - Org Connections - x-codegen-request-body-name: body + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - org_connections_write - /api/v2/org_connections/{connection_id}: - delete: - description: Delete an existing org connection. - operationId: DeleteOrgConnections + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: |- + Replace the notification settings for the governance control with the given detection type, + setting, for each supported event type, whether notifications are enabled and which + destinations receive them. + operationId: UpdateGovernanceControlNotificationSettings parameters: - - $ref: '#/components/parameters/OrgConnectionId' + - description: The detection type that identifies the control; for example, `unused_api_keys`. + example: unused_api_keys + in: path + name: detection_type + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + event_settings: + - enabled: true + event_type: new_detection + targets: + - handle: '#governance-alerts' + type: slack + type: control_notification_settings + schema: + $ref: '#/components/schemas/ControlNotificationSettingsUpdateRequest' + required: true responses: '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + event_settings: + - enabled: true + event_type: new_detection + targets: + - handle: '#governance-alerts' + type: slack + id: unused_api_keys + type: control_notification_settings + schema: + $ref: '#/components/schemas/ControlNotificationSettingsResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Delete Org Connection + - AuthZ: [] + summary: Update control notification settings tags: - - Org Connections + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - org_connections_write - patch: - description: Update an existing org connection. - operationId: UpdateOrgConnections - parameters: - - $ref: '#/components/parameters/OrgConnectionId' + - governance_console_read + - governance_console_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/detections/mitigate: + post: + description: |- + Apply a mitigation to a set of governance detections of a given detection type. When the + mitigation type is omitted, the control's configured mitigation is used. The request is + accepted for asynchronous processing. + operationId: MitigateGovernanceDetections requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + detection_ids: + - 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + detection_type: unused_api_keys + mitigation_parameters: {} + mitigation_type: revoke_api_key + type: governance_control_detection schema: - $ref: '#/components/schemas/OrgConnectionUpdateRequest' + $ref: '#/components/schemas/GovernanceMitigationRequest' required: true responses: - '200': + '202': + description: Accepted + '400': content: application/json: schema: - $ref: '#/components/schemas/OrgConnectionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Update Org Connection + - AuthZ: [] + summary: Mitigate detections tags: - - Org Connections + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - org_connections_write - /api/v2/permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/detections/{detection_id}: get: - description: Returns a list of all permissions, including name, description, and ID. - operationId: ListPermissions + description: Retrieve a single governance detection by its unique identifier. + operationId: GetGovernanceDetection + parameters: + - description: The unique identifier of the detection. + example: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + in: path + name: detection_id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + assigned_team: platform-security + assigned_to: 11111111-2222-3333-4444-555555555555 + assignment_source: manual + control_id: unused_api_keys + created_at: '2024-03-01T12:00:00Z' + detection_type: unused_api_keys + display_name: CI Deploy Key + metadata: + region: us-east-1 + priority: 1 + resource_id: api-key-12345 + resource_type: api_key + state: active + id: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + type: governance_control_detection schema: - $ref: '#/components/schemas/PermissionsResponse' + $ref: '#/components/schemas/GovernanceControlDetectionResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List permissions - tags: - - Roles - x-permission: - operator: OR - permissions: - - user_access_read - /api/v2/restriction_policy/{resource_id}: - delete: - description: Deletes the restriction policy associated with a specified resource. - operationId: DeleteRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: [] - summary: Delete a restriction policy + summary: Get a detection tags: - - Restriction Policies + - Governance Console x-permission: - operator: OPEN - permissions: [] - get: - description: Retrieves the restriction policy associated with a specified resource. - operationId: GetRestrictionPolicy + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update a governance detection by its unique identifier. Only the attributes present in the + request are modified, allowing a detection to be acknowledged as an exception, reopened, + reassigned, or deferred for mitigation. + operationId: UpdateGovernanceDetection parameters: - - $ref: '#/components/parameters/ResourceID' + - description: The unique identifier of the detection. + example: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + in: path + name: detection_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assigned_to: 11111111-2222-3333-4444-555555555555 + state: exception + type: governance_control_detection + schema: + $ref: '#/components/schemas/GovernanceControlDetectionUpdateRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + assigned_team: platform-security + assigned_to: 11111111-2222-3333-4444-555555555555 + assignment_source: manual + control_id: unused_api_keys + created_at: '2024-03-01T12:00:00Z' + detection_type: unused_api_keys + display_name: CI Deploy Key + metadata: + region: us-east-1 + priority: 1 + resource_id: api-key-12345 + resource_type: api_key + state: active + id: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + type: governance_control_detection schema: - $ref: '#/components/schemas/RestrictionPolicyResponse' + $ref: '#/components/schemas/GovernanceControlDetectionResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: [] - summary: Get a restriction policy + summary: Update a detection tags: - - Restriction Policies + - Governance Console x-permission: - operator: OPEN - permissions: [] - post: + operator: AND + permissions: + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/insights: + get: description: |- - Updates the restriction policy associated with a resource. - - #### Supported resources - Restriction policies can be applied to the following resources: - - Dashboards: `dashboard` - - Integration Services: `integration-service` - - Integration Webhooks: `integration-webhook` - - Notebooks: `notebook` - - Powerpacks: `powerpack` - - Reference Tables: `reference-table` - - Security Rules: `security-rule` - - Service Level Objectives: `slo` - - Synthetic Global Variables: `synthetics-global-variable` - - Synthetic Tests: `synthetics-test` - - Synthetic Private Locations: `synthetics-private-location` - - Monitors: `monitor` - - Workflows: `workflow` - - App Builder Apps: `app-builder-app` - - Connections: `connection` - - Connection Groups: `connection-group` - - RUM Applications: `rum-application` - - Cross Org Connections: `cross-org-connection` - - Spreadsheets: `spreadsheet` - - On-Call Schedules: `on-call-schedule` - - On-Call Escalation Policies: `on-call-escalation-policy` - - On-Call Team Routing Rules: `on-call-team-routing-rules` - - #### Supported relations for resources - Resource Type | Supported Relations - ----------------------------|-------------------------- - Dashboards | `viewer`, `editor` - Integration Services | `viewer`, `editor` - Integration Webhooks | `viewer`, `editor` - Notebooks | `viewer`, `editor` - Powerpacks | `viewer`, `editor` - Security Rules | `viewer`, `editor` - Service Level Objectives | `viewer`, `editor` - Synthetic Global Variables | `viewer`, `editor` - Synthetic Tests | `viewer`, `editor` - Synthetic Private Locations | `viewer`, `editor` - Monitors | `viewer`, `editor` - Reference Tables | `viewer`, `editor` - Workflows | `viewer`, `runner`, `editor` - App Builder Apps | `viewer`, `editor` - Connections | `viewer`, `resolver`, `editor` - Connection Groups | `viewer`, `editor` - RUM Application | `viewer`, `editor` - Cross Org Connections | `viewer`, `editor` - Spreadsheets | `viewer`, `editor` - On-Call Schedules | `viewer`, `overrider`, `editor` - On-Call Escalation Policies | `viewer`, `editor` - On-Call Team Routing Rules | `viewer`, `editor` - operationId: UpdateRestrictionPolicy + Retrieve the list of governance insights available to the organization. Each insight + reports the query used to compute it, so that the value can be computed client-side. + Insights can be filtered by product. + operationId: ListGovernanceInsights parameters: - - $ref: '#/components/parameters/ResourceID' - - description: >- - Allows admins (users with the `user_access_manage` permission) to - remove their own access from the resource if set to `true`. By - default, this is set to `false`, preventing admins from locking - themselves out. + - description: |- + Restrict the results to insights belonging to the given products. May be repeated to + filter by multiple products. Matching is case-insensitive. + example: + - Usage + - Logs Settings in: query - name: allow_self_lockout + name: filter[product] required: false schema: - type: boolean - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyUpdateRequest' - description: Restriction policy payload - required: true + items: + type: string + type: array responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + audit_query: null + description: Number of custom metrics submitted by the organization. + display_name: Custom Metrics + event_query: null + metric_query: + query: sum:datadog.estimated_usage.metrics.custom{*} + reducer: sum + source: metrics + percentage_query: null + product: Usage + query_config: + chart_type: line + comparison_shift: month + directionality: decrease_better + effective_time_window_days: 30 + sub_product: '' + time_range: month + unit_name: custom metrics + usage_query: null + id: 498ee21f-8037-48b8-a961-a488692902f4 + type: insight + - attributes: + audit_query: + compute: + aggregation: cardinality + interval: 86400000 + metric: '@usr.id' + indexes: + - main + query: '@evt.name:Dashboard' + source: audit + description: Number of users who have used the Dashboard in the last 30 days + display_name: Active Users + event_query: null + metric_query: null + percentage_query: null + product: Usage + query_config: + chart_type: line + comparison_shift: month + directionality: neutral + effective_time_window_days: 30 + sub_product: '' + time_range: month + unit_name: active users + usage_query: null + id: a3248d1b-5578-4345-a34e-fe9657300f22 + type: insight schema: - $ref: '#/components/schemas/RestrictionPolicyResponse' + $ref: '#/components/schemas/GovernanceInsightsResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Update a restriction policy + - AuthZ: + - events_read + - metrics_read + summary: List insights tags: - - Restriction Policies - x-codegen-request-body-name: body + - Governance Console x-permission: - operator: OPEN - permissions: [] - /api/v2/roles: + operator: OR + permissions: + - metrics_read + - events_read + - audit_logs_read + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/notification_settings: get: - description: Returns all roles, including their names and their unique identifiers. - operationId: ListRoles - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: >- - Sort roles depending on the given field. Sort order is **ascending** - by default. - - Sort order is **descending** if the field is prefixed by a negative - sign, for example: - - `sort=-name`. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/RolesSort' - - description: Filter all roles by the given string. - in: query - name: filter - required: false - schema: - type: string - - description: Filter all roles by the given list of role IDs. - in: query - name: filter[id] - required: false - schema: - type: string + description: |- + Retrieve the organization-wide governance notification settings, including whether users are + notified when detections are assigned to them. + operationId: GetGovernanceNotificationSettings responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + id: 11111111-2222-3333-4444-555555555555 + type: governance_notification_settings schema: - $ref: '#/components/schemas/RolesResponse' + $ref: '#/components/schemas/GovernanceNotificationSettingsResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List roles + - AuthZ: [] + summary: Get notification settings tags: - - Roles + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - user_access_read - post: - description: Create a new role for your organization. - operationId: CreateRole + - governance_console_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update the organization-wide governance notification settings. Only the attributes present in + the request are modified. + operationId: UpdateGovernanceNotificationSettings requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + type: governance_notification_settings schema: - $ref: '#/components/schemas/RoleCreateRequest' + $ref: '#/components/schemas/GovernanceNotificationSettingsUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + assignment_notifications_enabled: true + id: 11111111-2222-3333-4444-555555555555 + type: governance_notification_settings schema: - $ref: '#/components/schemas/RoleCreateResponse' + $ref: '#/components/schemas/GovernanceNotificationSettingsResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create role + - AuthZ: [] + summary: Update notification settings tags: - - Roles - x-codegen-request-body-name: body + - Governance Console x-permission: - operator: OR + operator: AND permissions: - - user_access_manage - /api/v2/roles/{role_id}: - delete: - description: Disables a role. - operationId: DeleteRole + - governance_console_read + - governance_console_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/tag_rules: + get: + description: |- + Retrieve all tag rules for the organization. Optionally include disabled or deleted + rules, filter by telemetry source, and include each rule's current compliance score + via the `include=score` query parameter. + operationId: ListTagRules parameters: - - $ref: '#/components/parameters/RoleID' + - description: Whether to include rules that are currently disabled. Defaults to `false`. + example: false + in: query + name: include_disabled + required: false + schema: + type: boolean + - description: Whether to include rules that have been soft-deleted. Defaults to `false`. + example: false + in: query + name: include_deleted + required: false + schema: + type: boolean + - description: Comma-separated list of related resources to include alongside each rule in the response. Currently the only supported value is `score`. + example: score + in: query + name: include + required: false + schema: + $ref: '#/components/schemas/TagRuleInclude' + - description: Restrict the result set to rules whose source matches the given value. + in: query + name: filter[source] + required: false + schema: + $ref: '#/components/schemas/TagRuleSource' + - description: Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Defaults to a recent window appropriate for the source. + example: 1779315066097 + in: query + name: ts_start + required: false + schema: + format: int64 + type: integer + - description: End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. + example: 1779401466097 + in: query + name: ts_end + required: false + schema: + format: int64 + type: integer responses: - '204': - description: OK - '403': + '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2026-05-21T22:11:06.108696Z' + created_by: test-user + enabled: true + modified_at: '2026-05-21T22:11:06.108696Z' + modified_by: test-user + name: Service tag must be one of api or web + negated: false + required: true + rule_type: surfacing + scope: env + source: logs + tag_key: service + tag_value_patterns: + - api + - web + version: 1 + id: '123' + relationships: + score: + data: + id: 123-v1-1779315066097-1779401466097 + type: tag_rule_score + type: tag_rule + included: + - attributes: + score: 80 + ts_end: 1779401466097 + ts_start: 1779315066097 + version: 1 + id: 123-v1-1779315066097-1779401466097 + type: tag_rule_score schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/TagRulesListResponse' + description: OK + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Delete role - tags: - - Roles - x-codegen-request-body-name: body - get: - description: Get a role in the organization specified by the role’s `role_id`. - operationId: GetRole - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '200': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': content: application/json: schema: - $ref: '#/components/schemas/RoleResponse' - description: OK + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a role + summary: List tag rules tags: - - Roles - x-codegen-request-body-name: body - patch: - description: >- - Edit a role. Can only be used with application keys belonging to - administrators. - operationId: UpdateRole - parameters: - - $ref: '#/components/parameters/RoleID' + - Tag Rules + x-permission: + operator: OR + permissions: + - telemetry_rules_read + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new tag rule for the organization. The caller's organization is derived from + the authenticated user; cross-organization creation is not supported. Fields such as + `rule_id`, `version`, and the timestamp/audit fields are assigned by the server. + operationId: CreateTagRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Service tag must be one of api or web + negated: false + required: true + rule_type: surfacing + scope: env + source: logs + tag_key: service + tag_value_patterns: + - api + - web + type: tag_rule schema: - $ref: '#/components/schemas/RoleUpdateRequest' + $ref: '#/components/schemas/TagRuleCreateRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-21T22:11:06.108696Z' + created_by: test-user + enabled: true + modified_at: '2026-05-21T22:11:06.108696Z' + modified_by: test-user + name: Service tag must be one of api or web + negated: false + required: true + rule_type: surfacing + scope: env + source: logs + tag_key: service + tag_value_patterns: + - api + - web + version: 1 + id: '123' + type: tag_rule schema: - $ref: '#/components/schemas/RoleUpdateResponse' - description: OK + $ref: '#/components/schemas/TagRuleResponse' + description: Created '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '422': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '409': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Update a role + summary: Create a tag rule tags: - - Roles - x-codegen-request-body-name: body + - Tag Rules x-permission: - operator: OR + operator: AND permissions: - - user_access_manage - /api/v2/roles/{role_id}/clone: - post: - description: Clone an existing role - operationId: CloneRole + - telemetry_rules_create + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/tag_rules/{rule_id}: + delete: + description: |- + Delete a tag rule. By default the rule is soft-deleted so it can be recovered later + and so that historical score data remains queryable. Pass `hard_delete=true` to remove + the rule permanently. + operationId: DeleteTagRule parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCloneRequest' - required: true + - description: The unique identifier of the tag rule to delete. + example: '123' + in: path + name: rule_id + required: true + schema: + type: string + - description: Whether to permanently delete the rule instead of performing a soft delete. Defaults to `false`. + example: false + in: query + name: hard_delete + required: false + schema: + type: boolean responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleResponse' - description: OK + '204': + description: No Content '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '409': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create a new role by cloning an existing role + summary: Delete a tag rule tags: - - Roles - x-codegen-request-body-name: body + - Tag Rules x-permission: - operator: OR + operator: AND permissions: - - user_access_manage - /api/v2/roles/{role_id}/permissions: - delete: - description: Removes a permission from a role. - operationId: RemovePermissionFromRole + - telemetry_rules_create + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: |- + Retrieve a single tag rule by ID. Optionally include the rule's current compliance + score via the `include=score` query parameter. Rules belonging to other organizations + cannot be retrieved. + operationId: GetTagRule parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToPermission' - required: true + - description: The unique identifier of the tag rule. + example: '123' + in: path + name: rule_id + required: true + schema: + type: string + - description: Comma-separated list of related resources to include alongside the rule. Currently the only supported value is `score`. + example: score + in: query + name: include + required: false + schema: + $ref: '#/components/schemas/TagRuleInclude' + - description: Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. + example: 1779315066097 + in: query + name: ts_start + required: false + schema: + format: int64 + type: integer + - description: End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. + example: 1779401466097 + in: query + name: ts_end + required: false + schema: + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-21T22:11:06.108696Z' + created_by: test-user + enabled: true + modified_at: '2026-05-21T22:11:06.108696Z' + modified_by: test-user + name: Service tag must be one of api or web + negated: false + required: true + rule_type: surfacing + scope: env + source: logs + tag_key: service + tag_value_patterns: + - api + - web + version: 1 + id: '123' + relationships: + score: + data: + id: 123-v1-1779315066097-1779401466097 + type: tag_rule_score + type: tag_rule + included: + - attributes: + score: 80 + ts_end: 1779401466097 + ts_start: 1779315066097 + version: 1 + id: 123-v1-1779315066097-1779401466097 + type: tag_rule_score schema: - $ref: '#/components/schemas/PermissionsResponse' + $ref: '#/components/schemas/TagRuleResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Revoke permission + summary: Get a tag rule tags: - - Roles - x-codegen-request-body-name: body + - Tag Rules x-permission: operator: OR permissions: - - user_access_manage - get: - description: Returns a list of all permissions for a single role. - operationId: ListRolePermissions + - telemetry_rules_read + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update one or more attributes of an existing tag rule. Only the fields supplied in the + request body are modified; omitted fields retain their current values. The rule's + `source` cannot be changed after creation. + operationId: UpdateTagRule parameters: - - $ref: '#/components/parameters/RoleID' + - description: The unique identifier of the tag rule to update. + example: '123' + in: path + name: rule_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Service tag must be one of api, web, or worker + id: '123' + type: tag_rule + schema: + $ref: '#/components/schemas/TagRuleUpdateRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-21T22:11:06.108696Z' + created_by: test-user + enabled: true + modified_at: '2026-05-21T22:25:01.000000Z' + modified_by: test-user + name: Service tag must be one of api, web, or worker + negated: false + required: true + rule_type: surfacing + scope: env + source: logs + tag_key: service + tag_value_patterns: + - api + - web + version: 2 + id: '123' + type: tag_rule schema: - $ref: '#/components/schemas/PermissionsResponse' + $ref: '#/components/schemas/TagRuleResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List permissions for a role + summary: Update a tag rule tags: - - Roles - x-codegen-request-body-name: body - post: - description: Adds a permission to a role. - operationId: AddPermissionToRole + - Tag Rules + x-permission: + operator: AND + permissions: + - telemetry_rules_create + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/governance/tag_rules/{rule_id}/score: + get: + description: |- + Retrieve the compliance score for a single tag rule. The score is computed over the + requested time window (or a source-appropriate default) and represents the percentage of + telemetry within that window that conforms to the rule. A `null` score indicates that + no relevant telemetry was found. + operationId: GetTagRuleScore parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToPermission' - required: true + - description: The unique identifier of the tag rule. + example: '123' + in: path + name: rule_id + required: true + schema: + type: string + - description: Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. + example: 1779315066097 + in: query + name: ts_start + required: false + schema: + format: int64 + type: integer + - description: End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. + example: 1779401466097 + in: query + name: ts_end + required: false + schema: + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + score: 80 + ts_end: 1779401466097 + ts_start: 1779315066097 + version: 1 + id: 123-v1-1779315066097-1779401466097 + type: tag_rule_score schema: - $ref: '#/components/schemas/PermissionsResponse' + $ref: '#/components/schemas/TagRuleScoreResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Grant permission to a role + summary: Get a tag rule compliance score tags: - - Roles - x-codegen-request-body-name: body + - Tag Rules x-permission: operator: OR permissions: - - user_access_manage - /api/v2/roles/{role_id}/users: - delete: - description: Removes a user from a role. - operationId: RemoveUserFromRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToUser' - required: true + - telemetry_rules_read + - metrics_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/hamr: + get: + description: |- + Retrieve the High Availability Multi-Region (HAMR) organization connection details for the authenticated organization. + This endpoint returns information about the HAMR connection configuration, including the target organization, + datacenter, status, and whether this is the primary or secondary organization in the HAMR relationship. + operationId: GetHamrOrgConnection responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + hamr_status: 4 + is_primary: true + modified_at: '2024-01-01T00:00:00+00:00' + modified_by: test@example.com + target_org_datacenter: us1 + target_org_name: Production Backup Org + target_org_uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: hamr_org_connections schema: - $ref: '#/components/schemas/UsersResponse' + $ref: '#/components/schemas/HamrOrgConnectionResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Remove a user from a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Gets all users of a role. - operationId: ListRoleUsers - parameters: - - $ref: '#/components/parameters/RoleID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: >- - User attribute to order results by. Sort order is **ascending** by - default. - - Sort order is **descending** if the field is prefixed by a negative - sign, - - for example `sort=-name`. Options: `name`, `email`, `status`. - in: query - name: sort - required: false - schema: - default: name - type: string - - description: Filter all users by the given string. Defaults to no filtering. - in: query - name: filter - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get all users of a role + summary: Get HAMR organization connection tags: - - Roles + - High Availability MultiRegion + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Adds a user to a role. - operationId: AddUserToRole - parameters: - - $ref: '#/components/parameters/RoleID' + description: |- + Create or update the High Availability Multi-Region (HAMR) organization connection. + This endpoint allows you to configure the HAMR connection between the authenticated organization + and a target organization, including setting the connection status (ONBOARDING, PASSIVE, FAILOVER, ACTIVE, RECOVERY) + operationId: CreateHamrOrgConnection requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + hamr_status: 4 + is_primary: true + modified_by: admin@example.com + target_org_datacenter: us1 + target_org_name: Production Backup Org + target_org_uuid: 660f9511-f3ac-52e5-b827-557766551111 + id: 550e8400-e29b-41d4-a716-446655440000 + type: hamr_org_connections schema: - $ref: '#/components/schemas/RelationshipToUser' + $ref: '#/components/schemas/HamrOrgConnectionRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + hamr_status: 4 + is_primary: true + modified_at: '2024-01-01T00:00:00+00:00' + modified_by: test@example.com + target_org_datacenter: us1 + target_org_name: Production Backup Org + target_org_uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000002 + type: hamr_org_connections schema: - $ref: '#/components/schemas/UsersResponse' + $ref: '#/components/schemas/HamrOrgConnectionResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Add a user to a role + summary: Create or update HAMR organization connection tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/saml_configurations/idp_metadata: - post: - description: >- - Endpoint for uploading IdP metadata for SAML setup. - - - Use this endpoint to upload or replace IdP metadata for SAML login - configuration. - operationId: UploadIdPMetadata - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/IdPMetadataFormData' - required: true + - High Availability MultiRegion + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/identity_providers: + get: + description: Get all identity providers available for the current organization. + operationId: ListIdentityProviders responses: '200': - description: OK - '400': content: application/json: + examples: + default: + value: + data: + - attributes: + authentication_method: SAML + enabled: true + id: 00000000-0000-0000-0000-000000000001 + type: identity_providers + - attributes: + authentication_method: google_oidc + enabled: false + id: 00000000-0000-0000-0000-000000000002 + type: identity_providers + - attributes: + authentication_method: standard + enabled: false + id: 00000000-0000-0000-0000-000000000003 + type: identity_providers schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/IdentityProvidersResponse' + description: OK '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Upload IdP metadata + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: List identity providers tags: - - Organizations - x-codegen-request-body-name: body + - Identity Providers x-permission: operator: OR permissions: - org_management - /api/v2/service_accounts: - post: - description: Create a service account for your organization. - operationId: CreateServiceAccount + - user_access_manage + /api/v2/identity_providers/{idp_id}: + patch: + description: Enable or disable an identity provider for the current organization. + operationId: UpdateIdentityProvider + parameters: + - $ref: '#/components/parameters/IdentityProviderId' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + id: 00000000-0000-0000-0000-000000000001 + type: identity_providers schema: - $ref: '#/components/schemas/ServiceAccountCreateRequest' + $ref: '#/components/schemas/IdentityProviderUpdateRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + authentication_method: SAML + enabled: true + id: 00000000-0000-0000-0000-000000000001 + type: identity_providers schema: - $ref: '#/components/schemas/UserResponse' + $ref: '#/components/schemas/IdentityProviderResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a service account + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update an identity provider tags: - - Service Accounts + - Identity Providers x-codegen-request-body-name: body x-permission: operator: OR permissions: - - service_account_write - /api/v2/service_accounts/{service_account_id}/application_keys: + - org_management + /api/v2/identity_providers/{idp_id}/users: get: - description: List all application keys available for this service account. - operationId: ListServiceAccountApplicationKeys + description: |- + Get all users in the organization whose login method has been overridden + to use the specified identity provider. + operationId: ListIdentityProviderUsers parameters: - - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/IdentityProviderId' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' + - description: User attribute to order results by. Options include `email` and `name`. + in: query + name: sort + required: false + schema: + default: email + example: email + type: string + - description: 'Direction of sort. Options: `asc`, `desc`.' + in: query + name: sort_dir + required: false + schema: + $ref: '#/components/schemas/QuerySortOrder' + - description: Filter users by the given string. Defaults to no filtering. + in: query + name: filter + required: false + schema: + type: string + - description: |- + Filter on status attribute. + Comma-separated list, with possible values `Active`, `Pending`, and `Disabled`. + Defaults to no filtering. + in: query + name: filter[status] + required: false + schema: + example: Active + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + email: example@datadoghq.com + handle: example-user + name: Example User + status: Active + id: 00000000-0000-9999-0000-000000000001 + type: users + meta: + page: + total_count: 1 + total_filtered_count: 1 schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' + $ref: '#/components/schemas/UsersResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List application keys for this service account + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: List users with an identity provider override tags: - - Service Accounts + - Identity Providers + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data x-permission: operator: OR permissions: - - service_account_write - post: - description: Create an application key for this service account. - operationId: CreateServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' + - org_management + /api/v2/ip_allowlist: + get: + description: Returns the IP allowlist and its enabled or disabled state. + operationId: GetIPAllowlist + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + entries: + - data: + attributes: + cidr_block: 127.0.0.1/32 + note: Example entry + id: 00000000-0000-0000-0000-000000000003 + type: ip_allowlist_entry + id: 00000000-0000-0000-0000-000000000001 + type: ip_allowlist + schema: + $ref: '#/components/schemas/IPAllowlistResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Get IP Allowlist + tags: + - IP Allowlist + x-permission: + operator: OR + permissions: + - org_management + patch: + description: Edit the entries in the IP allowlist, and enable or disable it. + operationId: UpdateIPAllowlist requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: false + entries: + - data: + attributes: + cidr_block: 127.0.0.1/32 + type: ip_allowlist_entry + type: ip_allowlist schema: - $ref: '#/components/schemas/ApplicationKeyCreateRequest' + $ref: '#/components/schemas/IPAllowlistUpdateRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + enabled: false + entries: + - data: + attributes: + cidr_block: 127.0.0.1/32 + note: Example entry + id: 00000000-0000-0000-0000-000000000004 + type: ip_allowlist_entry + id: 00000000-0000-0000-0000-000000000002 + type: ip_allowlist schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: Created + $ref: '#/components/schemas/IPAllowlistResponse' + description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an application key for this service account + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update IP Allowlist tags: - - Service Accounts + - IP Allowlist x-codegen-request-body-name: body x-permission: operator: OR permissions: - - service_account_write - /api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id}: + - org_management + /api/v2/login/org_configs/max_session_duration: + put: + description: |- + Update the maximum session duration for the current organization. + The duration is specified in seconds. + operationId: UpdateLoginOrgConfigsMaxSessionDuration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + max_session_duration: 604800 + type: max_session_duration + schema: + $ref: '#/components/schemas/MaxSessionDurationUpdateRequest' + required: true + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update the maximum session duration + tags: + - Organizations + x-permission: + operator: OR + permissions: + - org_management + /api/v2/oauth2/.well-known/sites: + get: + description: Retrieve the list of public OAuth2 sites available for the current environment. This endpoint is used for OAuth2 discovery and returns sites where users can authenticate. + operationId: GetOAuth2WellKnownSites + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + sites: + - datadoghq.com + - datadoghq.eu + - us5.datadoghq.com + - us3.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + id: prod + type: env + schema: + $ref: '#/components/schemas/OAuth2WellKnownSitesResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Get OAuth2 well-known sites + tags: + - OAuth2 Client Public + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/oauth2/clients/{client_uuid}/scopes_restriction: delete: - description: Delete an application key owned by this service account. - operationId: DeleteServiceAccountApplicationKey + description: Delete the scopes restriction configured for the OAuth2 client. + operationId: DeleteScopesRestriction parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' + - $ref: '#/components/parameters/OAuthClientUUIDPathParameter' responses: '204': description: No Content - '403': + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key for this service account + summary: Delete an OAuth2 client scopes restriction tags: - - Service Accounts + - OAuth2 Client Public x-permission: operator: OR permissions: - - service_account_write + - org_authorized_apps_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Get an application key owned by this service account. - operationId: GetServiceAccountApplicationKey + description: Get the scopes restriction configured for the OAuth2 client. + operationId: GetScopesRestriction parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' + - $ref: '#/components/parameters/OAuthClientUUIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + required_permission_scopes: null + scopes_restriction: + oidc_scopes: + - openid + - email + permission_scopes: + - dashboards_read + - metrics_read + id: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + type: scopes_restriction schema: - $ref: '#/components/schemas/PartialApplicationKeyResponse' + $ref: '#/components/schemas/OAuthScopesRestrictionResponse' description: OK - '403': + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get one application key for this service account + summary: Get an OAuth2 client scopes restriction tags: - - Service Accounts + - OAuth2 Client Public x-permission: operator: OR permissions: - - service_account_write - patch: - description: Edit an application key owned by this service account. - operationId: UpdateServiceAccountApplicationKey + - org_authorized_apps_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create or update the scopes restriction configured for the OAuth2 client. + operationId: UpsertScopesRestriction parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' + - $ref: '#/components/parameters/OAuthClientUUIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + oidc_scopes: + - openid + - email + permission_scopes: + - dashboards_read + - metrics_read + type: upsert_scopes_restriction schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' + $ref: '#/components/schemas/UpsertOAuthScopesRestrictionRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + required_permission_scopes: null + scopes_restriction: + oidc_scopes: + - openid + - email + permission_scopes: + - dashboards_read + - metrics_read + id: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + type: scopes_restriction schema: - $ref: '#/components/schemas/PartialApplicationKeyResponse' + $ref: '#/components/schemas/OAuthScopesRestrictionResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key for this service account + summary: Upsert an OAuth2 client scopes restriction tags: - - Service Accounts + - OAuth2 Client Public x-codegen-request-body-name: body x-permission: operator: OR permissions: - - service_account_write - /api/v2/team: + - org_authorized_apps_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/oauth2/register: + post: + description: Register an OAuth2 client using the Dynamic Client Registration protocol defined in RFC 7591. + operationId: RegisterOAuthClient + requestBody: + content: + application/json: + examples: + default: + value: + client_name: Example MCP Client + grant_types: + - authorization_code + - refresh_token + redirect_uris: + - https://example.com/oauth/callback + response_types: + - code + token_endpoint_auth_method: none + schema: + $ref: '#/components/schemas/OAuthClientRegistrationRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + client_id: 72b68208-36a6-11f0-b21b-da7ad0900002 + client_name: Example MCP Client + grant_types: + - authorization_code + - refresh_token + redirect_uris: + - https://example.com/oauth/callback + response_types: + - code + token_endpoint_auth_method: none + schema: + $ref: '#/components/schemas/OAuthClientRegistrationResponse' + description: Created + '400': + content: + application/json: + examples: + default: + value: + error: invalid_client_metadata + error_description: redirect URI is not well-formed + schema: + $ref: '#/components/schemas/OAuthClientRegistrationError' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: Register an OAuth2 client + tags: + - OAuth2 Client Public + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org: get: - description: >- - Get all teams. - - Can be used to search for teams using the `filter[keyword]` and - `filter[me]` query parameters. - operationId: ListTeams + description: Returns the current organization and its managed organizations in JSON:API format. + operationId: ListOrgs parameters: - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/PageSize' - - description: Specifies the order of the returned teams - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/ListTeamsSort' - - description: >- - Included related resources optionally requested. Allowed enum - values: `team_links, user_team_permissions` - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/ListTeamsInclude' - type: array - - description: Search query. Can be team name, team handle, or email of team member + - description: Filter managed organizations by name. + example: My Child Org in: query - name: filter[keyword] + name: filter[name] required: false schema: type: string - - description: When true, only returns teams the current user belongs to - in: query - name: filter[me] - required: false - schema: - type: boolean - - description: List of fields that need to be fetched. - explode: false - in: query - name: fields[team] - required: false - schema: - items: - $ref: '#/components/schemas/TeamsField' - type: array responses: '200': content: application/json: + examples: + default: + value: + data: + id: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + relationships: + current_org: + data: + id: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + type: orgs + managed_orgs: + data: + - id: a1b2c3d4-00cc-11ea-a77b-570c9d03c6c5 + type: orgs + type: managed_orgs + included: + - attributes: + created_at: '2019-09-26T17:28:28Z' + description: Production organization. + disabled: false + modified_at: '2024-01-15T10:30:00Z' + name: My Organization + public_id: abcdef12345 + sharing: none + url: https://app.datadoghq.com/account/my-org + id: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + type: orgs + - attributes: + created_at: '2020-05-10T12:00:00Z' + description: Child organization. + disabled: false + modified_at: '2024-06-20T08:15:00Z' + name: My Child Org + public_id: ghijkl67890 + sharing: none + url: https://app.datadoghq.com/account/my-child-org + id: a1b2c3d4-00cc-11ea-a77b-570c9d03c6c5 + type: orgs schema: - $ref: '#/components/schemas/TeamsResponse' + $ref: '#/components/schemas/ManagedOrgsResponse' description: OK + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '429': @@ -2553,179 +4298,238 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Get all teams + - org_management + - org_connections_write + summary: List your managed organizations tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data + - Organizations x-permission: operator: OR permissions: - - teams_read + - org_management + - org_connections_write + /api/v2/org/disable: post: - description: >- - Create a new team. - - User IDs passed through the `users` relationship field are added to the - team. - operationId: CreateTeam + description: |- + Disable the Datadog organization associated with the authenticated user or API key. + The request body uses JSON:API format. If `org_uuid` is supplied, it must match + the authenticated org or the request is rejected. Successful calls disable the org + and return the resulting state from the downstream service. Requires the + `org_management` permission. + operationId: DisableCustomerOrg requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + org_uuid: abcdef01-2345-6789-abcd-ef0123456789 + id: '1' + type: customer_org_disable schema: - $ref: '#/components/schemas/TeamCreateRequest' + $ref: '#/components/schemas/CustomerOrgDisableRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + status: disabled + id: abcdef01-2345-6789-abcd-ef0123456789 + type: org_disable schema: - $ref: '#/components/schemas/TeamResponse' - description: CREATED + $ref: '#/components/schemas/CustomerOrgDisableResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - - teams_manage - summary: Create a team + - org_management + summary: Disable the authenticated customer organization tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - teams_read - - teams_manage - /api/v2/team/sync: - post: - description: >- - This endpoint attempts to link your existing Datadog teams with GitHub - teams by matching their names. - - It evaluates all current Datadog teams and compares them against teams - in the GitHub organization - - connected to your Datadog account, based on Datadog Team handle and - GitHub Team slug - - (lowercased and kebab-cased). - - - This operation is read-only on the GitHub side, no teams will be - modified or created. - - - [A GitHub organization must be connected to your Datadog - account](https://docs.datadoghq.com/integrations/github/), - - and the GitHub App integrated with Datadog must have the `Members Read` - permission. Matching is performed by comparing the Datadog team handle - to the GitHub team slug - - using a normalized exact match; case is ignored and spaces are removed. - No modifications are made + - Customer Org + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org/saml_configurations: + patch: + description: |- + Update the SAML preferences for the current organization. - to teams in GitHub. This will not create new Teams in Datadog. - operationId: SyncTeams + Use this endpoint to set the just-in-time (JIT) provisioning domains and the default role + assigned to just-in-time provisioned users. + operationId: UpdateOrgSamlConfigurations requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + default_role_uuids: + - 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + jit_domains: + - example.com + type: saml_preferences schema: - $ref: '#/components/schemas/TeamSyncRequest' + $ref: '#/components/schemas/OrgSAMLPreferencesUpdateRequest' required: true responses: - '200': - description: OK + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal Server Error - Unexpected error during linking. - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_manage - summary: Link Teams with GitHub Teams + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update organization SAML preferences tags: - - Teams + - Organizations x-codegen-request-body-name: body x-permission: - operator: AND + operator: OR permissions: - - teams_manage - x-unstable: >- - **Note**: This endpoint is in Preview. To request access, fill out this - [form](https://www.datadoghq.com/product-preview/github-integration-for-teams/). - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/team/{super_team_id}/member_teams: + - org_management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_authorized_clients: get: - description: Get all member teams. - operationId: ListMemberTeams + description: Get a list of all OAuth2 clients authorized for the current organization. + operationId: ListOrgAuthorizedClients parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - - description: List of fields that need to be fetched. - explode: false + - description: Field to sort results by. Options include `oauth2_client.name`. in: query - name: fields[team] + name: sort required: false schema: - items: - $ref: '#/components/schemas/TeamsField' - type: array + default: oauth2_client.name + example: oauth2_client.name + type: string + - description: Filter results by client name, app title, or app description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter results by the OAuth2 client name. + in: query + name: filter[oauth2_client][name] + required: false + schema: + type: string + - description: Filter results by the org-level disabled status. + in: query + name: filter[disabled] + required: false + schema: + type: string + - description: |- + Comma-separated list of related resources to include. + Options: `oauth2_client`, `oauth2_client.app`, `user_authorized_clients.user`. + in: query + name: include + required: false + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + disabled: false + last_exercised: '2024-01-15T10:30:00+00:00' + user_count: 2 + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2_client: + data: + id: 00000000-0000-0000-0000-000000000010 + type: oauth2_clients + user_authorized_clients: + data: + - id: 00000000-0000-0000-0000-000000000020 + type: user_authorized_clients + links: + related: /api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients + type: org_authorized_clients + meta: + page: + total_count: 1 + total_filtered_count: 1 schema: - $ref: '#/components/schemas/TeamsResponse' + $ref: '#/components/schemas/OrgAuthorizedClientsResponse' description: OK '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Get all member teams + - org_authorized_apps_read + summary: List org authorized clients tags: - - Teams + - Org Authorized Clients x-pagination: limitParam: page[size] pageParam: page[number] @@ -2733,5578 +4537,28147 @@ paths: x-permission: operator: OR permissions: - - teams_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: >- - Add a member team. - - Adds the team given by the `id` in the body as a member team of the - super team. - operationId: AddMemberTeam + - org_authorized_apps_read + - manage_integrations + /api/v2/org_authorized_clients/{org_authorized_client_id}: + delete: + description: Disable an OAuth2 client authorization for the current organization, revoking access for all users. + operationId: DeleteOrgAuthorizedClient parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AddMemberTeamRequest' - required: true + - $ref: '#/components/parameters/OrgAuthorizedClientId' responses: '204': - description: Added + description: No Content '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Add a member team + - org_authorized_apps_write + summary: Delete an org authorized client tags: - - Teams + - Org Authorized Clients x-permission: operator: OR permissions: - - teams_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/team/{super_team_id}/member_teams/{member_team_id}: - delete: - description: Remove a super team's member team identified by `member_team_id`. - operationId: RemoveMemberTeam + - org_authorized_apps_write + get: + description: Get a single OAuth2 client authorized for the current organization. + operationId: GetOrgAuthorizedClient parameters: - - description: None - in: path - name: super_team_id - required: true + - $ref: '#/components/parameters/OrgAuthorizedClientId' + - description: |- + Comma-separated list of related resources to include. + Options: `oauth2_client`, `oauth2_client.app`, `oauth2_client.scopes`, `user_authorized_clients.user`. + in: query + name: include + required: false schema: type: string - - description: None - in: path - name: member_team_id - required: true + - description: Filter included user authorized clients by disabled status. + in: query + name: filter[user_authorized_clients][disabled] + required: false + schema: + type: string + - description: Filter included user authorized clients by user disabled status. + in: query + name: filter[user_authorized_clients][user][disabled] + required: false schema: type: string responses: - '204': - description: No Content + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: false + last_exercised: '2024-01-15T10:30:00+00:00' + user_count: 2 + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2_client: + data: + id: 00000000-0000-0000-0000-000000000010 + type: oauth2_clients + user_authorized_clients: + data: + - id: 00000000-0000-0000-0000-000000000020 + type: user_authorized_clients + links: + related: /api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients + type: org_authorized_clients + schema: + $ref: '#/components/schemas/OrgAuthorizedClientResponse' + description: OK '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Remove a member team + - org_authorized_apps_read + summary: Get an org authorized client tags: - - Teams + - Org Authorized Clients x-permission: operator: OR permissions: - - teams_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/team/{team_id}: - delete: - description: Remove a team using the team's `id`. - operationId: DeleteTeam + - org_authorized_apps_read + patch: + description: Enable or disable an OAuth2 client authorization for the current organization. + operationId: UpdateOrgAuthorizedClient parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgAuthorizedClientId' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: true + id: 00000000-0000-0000-0000-000000000001 + type: org_authorized_clients + schema: + $ref: '#/components/schemas/OrgAuthorizedClientUpdateRequest' + required: true responses: - '204': - description: No Content + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + disabled: true + last_exercised: '2024-01-15T10:30:00+00:00' + user_count: 2 + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2_client: + data: + id: 00000000-0000-0000-0000-000000000010 + type: oauth2_clients + user_authorized_clients: + data: [] + links: + related: /api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients + type: org_authorized_clients + schema: + $ref: '#/components/schemas/OrgAuthorizedClientResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - - teams_manage - summary: Remove a team + - org_authorized_apps_write + summary: Update an org authorized client tags: - - Teams + - Org Authorized Clients + x-codegen-request-body-name: body x-permission: - operator: AND + operator: OR permissions: - - teams_read - - teams_manage - get: - description: Get a single team using the team's `id`. - operationId: GetTeam + - org_authorized_apps_write + /api/v2/org_authorized_clients/{org_authorized_client_id}/user/{user_id}: + delete: + description: Disable all authorizations for a specific user for the specified OAuth2 client in the current organization. + operationId: DeleteOrgAuthorizedClientAllUserAuthorizations parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgAuthorizedClientId' + - $ref: '#/components/parameters/UserIdForOrgClient' responses: - '200': + '204': + description: No Content + '403': content: application/json: schema: - $ref: '#/components/schemas/TeamResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Get a team + - org_authorized_apps_write + summary: Delete a user's authorizations for a client tags: - - Teams + - Org Authorized Clients x-permission: operator: OR permissions: - - teams_read - patch: - description: >- - Update a team using the team's `id`. - - If the `team_links` relationship is present, the associated links are - updated to be in the order they appear in the array, and any existing - team links not present are removed. - operationId: UpdateTeam + - org_authorized_apps_write + /api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients: + get: + description: Get a list of user authorizations for the specified OAuth2 client in the current organization. + operationId: ListOrgAuthorizedClientUserAuthorizations parameters: - - description: None - in: path - name: team_id - required: true + - $ref: '#/components/parameters/OrgAuthorizedClientId' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: 'Field to sort results by. Options: `user.name`, `user.email`, `oauth2_client.name`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/OrgAuthorizedClientUserAuthorizationsSort' + - description: Filter results by the user authorization disabled status. + in: query + name: filter[disabled] + required: false + schema: + type: string + - description: Filter results by user name. + in: query + name: filter[user][name] + required: false + schema: + type: string + - description: Filter results by user email. + in: query + name: filter[user][email] + required: false + schema: + type: string + - description: Filter results by whether the user is disabled. + in: query + name: filter[user][disabled] + required: false schema: type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamUpdateRequest' - required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-10T08:00:00+00:00' + disabled: false + last_exercised: '2024-01-15T10:30:00+00:00' + modified_at: '2024-01-10T08:00:00+00:00' + org_disabled: false + id: 00000000-0000-0000-0000-000000000020 + relationships: + oauth2_client: + data: + id: 00000000-0000-0000-0000-000000000010 + type: oauth2_clients + scopes: + data: + - id: example_scope + type: scopes + user: + data: + id: 00000000-0000-9999-0000-000000000001 + type: users + type: user_authorized_clients + meta: + page: + total_count: 1 + total_filtered_count: 1 schema: - $ref: '#/components/schemas/TeamResponse' + $ref: '#/components/schemas/UserAuthorizedClientsResponse' description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '409': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error + '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Update a team + - org_authorized_apps_read + summary: List user authorizations for a client tags: - - Teams - x-codegen-request-body-name: body + - Org Authorized Clients + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data x-permission: operator: OR permissions: - - teams_read - /api/v2/team/{team_id}/links: - get: - description: Get all links for a given team. - operationId: GetTeamLinks + - org_authorized_apps_read + /api/v2/org_authorized_clients/{org_authorized_client_id}/user_authorized_clients/{user_authorized_client_id}: + delete: + description: Disable a specific user authorization for the specified OAuth2 client in the current organization. + operationId: DeleteOrgAuthorizedClientUserAuthorization parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgAuthorizedClientId' + - $ref: '#/components/parameters/UserAuthorizedClientIdForOrg' responses: - '200': + '204': + description: No Content + '403': content: application/json: schema: - $ref: '#/components/schemas/TeamLinksResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Get links for a team + - org_authorized_apps_write + summary: Delete a user authorization for a client tags: - - Teams + - Org Authorized Clients x-permission: operator: OR permissions: - - teams_read - post: - description: Add a new link to a team. - operationId: CreateTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkCreateRequest' - required: true + - org_authorized_apps_write + /api/v2/org_configs: + get: + description: Returns all Org Configs (name, description, and value). + operationId: ListOrgConfigs responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: Example org config description + name: monitor_timezone + value: UTC + value_type: bool + id: abcd1234 + type: org_configs schema: - $ref: '#/components/schemas/TeamLinkResponse' + $ref: '#/components/schemas/OrgConfigListResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Create a team link + summary: List Org Configs tags: - - Teams - x-codegen-request-body-name: body + - Organizations x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/links/{link_id}: - delete: - description: Remove a link from a team. - operationId: DeleteTeamLink + operator: OPEN + permissions: [] + /api/v2/org_configs/{org_config_name}: + get: + description: Return the name, description, and value of a specific Org Config. + operationId: GetOrgConfig parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgConfigName' responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: Example org config description + name: monitor_timezone + value: UTC + value_type: bool + id: abcd1234 + type: org_configs schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/OrgConfigGetResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a team link + summary: Get a specific Org Config value tags: - - Teams + - Organizations x-permission: - operator: OR - permissions: - - teams_read - get: - description: Get a single link for a team. - operationId: GetTeamLink + operator: OPEN + permissions: [] + patch: + description: Update the value of a specific Org Config. + operationId: UpdateOrgConfig parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgConfigName' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + value: UTC + type: org_configs + schema: + $ref: '#/components/schemas/OrgConfigWriteRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: Example org config description + name: monitor_timezone + value: UTC + value_type: bool + id: abcd1234 + type: org_configs schema: - $ref: '#/components/schemas/TeamLinkResponse' + $ref: '#/components/schemas/OrgConfigGetResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get a team link + summary: Update a specific Org Config tags: - - Teams + - Organizations x-permission: operator: OR permissions: - - teams_read - patch: - description: Update a team link. - operationId: UpdateTeamLink + - org_management + /api/v2/org_connections: + get: + description: Returns a list of org connections. + operationId: ListOrgConnections parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true + - description: The Org ID of the sink org. + example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1 + in: query + name: sink_org_id + required: false schema: type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a team link - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/memberships: - get: - description: Get a paginated list of members for a team - operationId: GetTeamMemberships - parameters: - - description: None - in: path - name: team_id - required: true + - description: The Org ID of the source org. + example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1 + in: query + name: source_org_id + required: false schema: type: string - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: Specifies the order of returned team memberships + - description: The limit of number of entries you want to return. Default is 1000. + example: 1000 in: query - name: sort + name: limit required: false schema: - $ref: '#/components/schemas/GetTeamMembershipsSort' - - description: Search query, can be user email or name + format: int64 + type: integer + - description: The pagination offset which you want to query from. Default is 0. + example: 0 in: query - name: filter[keyword] + name: offset required: false schema: - type: string + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + connection_types: + - logs + created_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + relationships: {} + type: org_connection schema: - $ref: '#/components/schemas/UserTeamsResponse' - description: Represents a user's association to a team + $ref: '#/components/schemas/OrgConnectionListResponse' + description: OK + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Get team memberships + - org_connections_read + summary: List Org Connections tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data + - Org Connections x-permission: operator: OR permissions: - - teams_read + - org_connections_read post: - description: Add a user to a team. - operationId: CreateTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string + description: Create a new org connection between the current org and a target org. + operationId: CreateOrgConnections requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + relationships: + sink_org: + data: + id: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + name: Example Org + type: orgs + type: org_connection schema: - $ref: '#/components/schemas/UserTeamRequest' + $ref: '#/components/schemas/OrgConnectionCreateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + created_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000002 + relationships: {} + type: org_connection schema: - $ref: '#/components/schemas/UserTeamResponse' - description: Represents a user's association to a team + $ref: '#/components/schemas/OrgConnectionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/responses/NotFoundResponse' '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Add a user to a team + - org_connections_write + summary: Create Org Connection tags: - - Teams + - Org Connections x-codegen-request-body-name: body x-permission: operator: OR permissions: - - teams_read - /api/v2/team/{team_id}/memberships/{user_id}: + - org_connections_write + /api/v2/org_connections/{connection_id}: delete: - description: Remove a user from a team. - operationId: DeleteTeamMembership + description: Delete an existing org connection. + operationId: DeleteOrgConnections parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: user_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgConnectionId' responses: - '204': - description: No Content + '200': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Remove a user from a team + - org_connections_write + summary: Delete Org Connection tags: - - Teams + - Org Connections x-permission: operator: OR permissions: - - teams_read + - org_connections_write patch: - description: Update a user's membership attributes on a team. - operationId: UpdateTeamMembership + description: Update an existing org connection. + operationId: UpdateOrgConnections parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: user_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgConnectionId' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + - metrics + id: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + type: org_connection schema: - $ref: '#/components/schemas/UserTeamUpdateRequest' + $ref: '#/components/schemas/OrgConnectionUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + connection_types: + - logs + - metrics + created_at: '2024-01-01T00:00:00+00:00' + id: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + type: org_connection schema: - $ref: '#/components/schemas/UserTeamResponse' - description: Represents a user's association to a team + $ref: '#/components/schemas/OrgConnectionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Update a user's membership attributes on a team + - org_connections_write + summary: Update Org Connection tags: - - Teams - x-codegen-request-body-name: body + - Org Connections x-permission: operator: OR permissions: - - teams_read - /api/v2/team/{team_id}/permission-settings: + - org_connections_write + /api/v2/org_group_memberships: get: - description: Get all permission settings for a given team. - operationId: GetTeamPermissionSettings + description: List organization group memberships. Filter by org group ID or org UUID. At least one of `filter[org_group_id]` or `filter[org_uuid]` must be provided. When filtering by org UUID, returns a single-item list with the membership for that org. + operationId: ListOrgGroupMemberships parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgGroupMembershipFilterOrgGroupId' + - $ref: '#/components/parameters/OrgGroupMembershipFilterOrgUuid' + - $ref: '#/components/parameters/OrgGroupPageNumber' + - $ref: '#/components/parameters/OrgGroupPageSize' + - $ref: '#/components/parameters/MembershipSort' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + org_name: Acme Corp + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: f1e2d3c4-b5a6-7890-1234-567890abcdef + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_memberships + links: + first: https://api.datadoghq.com/api/v2/org_group_memberships?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + last: https://api.datadoghq.com/api/v2/org_group_memberships?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + next: null + prev: null + self: https://api.datadoghq.com/api/v2/org_group_memberships?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + meta: + page: + first_number: 0 + last_number: 0 + next_number: null + number: 0 + prev_number: null + size: 50 + total: 1 + type: number_size schema: - $ref: '#/components/schemas/TeamPermissionSettingsResponse' + $ref: '#/components/schemas/OrgGroupMembershipListResponse' description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get permission settings for a team + summary: List org group memberships tags: - - Teams + - Org Groups x-permission: operator: OR permissions: - - teams_read - /api/v2/team/{team_id}/permission-settings/{action}: - put: - description: Update a team permission setting for a given team. - operationId: UpdateTeamPermissionSetting - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: action - required: true - schema: - type: string + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_memberships/bulk: + patch: + description: Move a batch of organizations from one org group to another. This is an atomic operation. Maximum 100 orgs per request. + operationId: BulkUpdateOrgGroupMemberships requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + orgs: + - org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + relationships: + source_org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + target_org_group: + data: + id: d4e5f6a7-b890-1234-cdef-567890abcdef + type: org_groups + type: org_group_membership_bulk_updates schema: - $ref: '#/components/schemas/TeamPermissionSettingUpdateRequest' + $ref: '#/components/schemas/OrgGroupMembershipBulkUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-16T14:00:00Z' + org_name: Acme Corp + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: f1e2d3c4-b5a6-7890-1234-567890abcdef + relationships: + org_group: + data: + id: d4e5f6a7-b890-1234-cdef-567890abcdef + type: org_groups + type: org_group_memberships schema: - $ref: '#/components/schemas/TeamPermissionSettingResponse' + $ref: '#/components/schemas/OrgGroupMembershipListResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update permission setting for team + summary: Bulk update org group memberships tags: - - Teams - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - teams_read - /api/v2/usage/application_security: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_memberships/{org_group_membership_id}: get: - deprecated: true - description: >- - Get hourly usage for application security . - - **Note:** This endpoint has been deprecated. Hourly usage data for all - products is now available in the [Get hourly usage by product family - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - operationId: GetUsageApplicationSecurityMonitoring + description: Get a specific organization group membership by its ID. + operationId: GetOrgGroupMembership parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour. - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour. - in: query - name: end_hr - required: false - schema: - format: date-time - type: string + - $ref: '#/components/parameters/OrgGroupMembershipId' responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + org_name: Acme Corp + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: f1e2d3c4-b5a6-7890-1234-567890abcdef + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_memberships schema: - $ref: >- - #/components/schemas/UsageApplicationSecurityMonitoringResponse + $ref: '#/components/schemas/OrgGroupMembershipResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for application security + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an org group membership tags: - - Usage Metering + - Org Groups x-permission: operator: OR permissions: - - usage_read - /api/v2/usage/billing_dimension_mapping: - get: - description: >- - Get a mapping of billing dimensions to the corresponding keys for the - supported usage metering public API endpoints. - - Mapping data is updated on a monthly cadence. - - - This endpoint is only accessible to [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetBillingDimensionMapping + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Move an organization to a different org group by updating its membership. + operationId: UpdateOrgGroupMembership parameters: - - description: >- - Datetime in ISO-8601 format, UTC, and for mappings beginning this - month. Defaults to the current month. - in: query - name: filter[month] - required: false - schema: - format: date-time - type: string - - description: >- - String to specify whether to retrieve active billing dimension - mappings for the contract or for all available mappings. Allowed - views have the string `active` or `all`. Defaults to `active`. - in: query - name: filter[view] - required: false - schema: - default: active - type: string + - $ref: '#/components/parameters/OrgGroupMembershipId' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: f1e2d3c4-b5a6-7890-1234-567890abcdef + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_memberships + schema: + $ref: '#/components/schemas/OrgGroupMembershipUpdateRequest' + required: true responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-16T14:00:00Z' + org_name: Acme Corp + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: f1e2d3c4-b5a6-7890-1234-567890abcdef + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_memberships schema: - $ref: '#/components/schemas/BillingDimensionsMappingResponse' + $ref: '#/components/schemas/OrgGroupMembershipResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get billing dimension mapping for usage endpoints + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an org group membership tags: - - Usage Metering + - Org Groups x-permission: operator: OR permissions: - - usage_read - /api/v2/usage/cost_by_org: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policies: get: - deprecated: true - description: >- - Get cost across multi-org account. - - Cost by org data for a given month becomes available no later than the - 16th of the following month. - - **Note:** This endpoint has been deprecated. Please use the new endpoint - - [`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account) - - instead. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetCostByOrg + description: List policies for an organization group. Requires a filter on org group ID. + operationId: ListOrgGroupPolicies parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning this month. - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string + - $ref: '#/components/parameters/OrgGroupPolicyFilterOrgGroupId' + - $ref: '#/components/parameters/OrgGroupPolicyFilterPolicyName' + - $ref: '#/components/parameters/OrgGroupPageNumber' + - $ref: '#/components/parameters/OrgGroupPageSize' + - $ref: '#/components/parameters/PolicySort' responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + - attributes: + content: + value: UTC + enforcement_tier: OVERRIDE_ALLOWED + modified_at: '2024-01-15T10:30:00Z' + policy_name: monitor_timezone + policy_type: org_config + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_policies + links: + first: https://api.datadoghq.com/api/v2/org_group_policies?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + last: https://api.datadoghq.com/api/v2/org_group_policies?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + next: null + prev: null + self: https://api.datadoghq.com/api/v2/org_group_policies?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + meta: + page: + first_number: 0 + last_number: 0 + next_number: null + number: 0 + prev_number: null + size: 50 + total: 1 + type: number_size schema: - $ref: '#/components/schemas/CostByOrgResponse' + $ref: '#/components/schemas/OrgGroupPolicyListResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List org group policies + tags: + - Org Groups + x-permission: + operator: OR + permissions: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new policy for an organization group. + operationId: CreateOrgGroupPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: UTC + enforcement_tier: OVERRIDE_ALLOWED + policy_name: monitor_timezone + policy_type: org_config + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_policies + schema: + $ref: '#/components/schemas/OrgGroupPolicyCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: UTC + enforcement_tier: OVERRIDE_ALLOWED + modified_at: '2024-01-15T10:30:00Z' + policy_name: monitor_timezone + policy_type: org_config + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_policies + schema: + $ref: '#/components/schemas/OrgGroupPolicyResponse' + description: Created + '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get cost across multi-org account + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an org group policy tags: - - Usage Metering + - Org Groups x-permission: - operator: AND + operator: OR permissions: - - usage_read - - billing_read - /api/v2/usage/estimated_cost: - get: - description: >- - Get estimated cost across multi-org and single root-org accounts. - - Estimated cost data is only available for the current month and previous - month - - and is delayed by up to 72 hours from when it was incurred. - - To access historical costs prior to this, use the `/historical_cost` - endpoint. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetEstimatedCostByOrg + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policies/{org_group_policy_id}: + delete: + description: Delete an organization group policy by its ID. + operationId: DeleteOrgGroupPolicy parameters: - - description: >- - String to specify whether cost is broken down at a parent-org level - or at the sub-org level. Available views are `summary` and - `sub-org`. Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning this month. **Either start_month or start_date should - be specified, but not both.** (start_month cannot go beyond two - months in the past). Provide an `end_month` to view month-over-month - cost. - in: query - name: start_month - required: false - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for - cost beginning this day. **Either start_month or start_date should - be specified, but not both.** (start_date cannot go beyond two - months in the past). Provide an `end_date` to view day-over-day - cumulative cost. - in: query - name: start_date - required: false - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for - cost ending this day. - in: query - name: end_date - required: false - schema: - format: date-time - type: string - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to `false`. - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean + - $ref: '#/components/parameters/OrgGroupPolicyId' responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK + '204': + description: No Content '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get estimated cost across your account + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an org group policy tags: - - Usage Metering + - Org Groups x-permission: - operator: AND + operator: OR permissions: - - usage_read - - billing_read - /api/v2/usage/historical_cost: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: >- - Get historical cost across multi-org and single root-org accounts. - - Cost data for a given month becomes available no later than the 16th of - the following month. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetHistoricalCostByOrg + description: Get a specific organization group policy by its ID. + operationId: GetOrgGroupPolicy parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning this month. - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: >- - String to specify whether cost is broken down at a parent-org level - or at the sub-org level. Available views are `summary` and - `sub-org`. Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to `false`. - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean + - $ref: '#/components/parameters/OrgGroupPolicyId' responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: UTC + enforcement_tier: OVERRIDE_ALLOWED + modified_at: '2024-01-15T10:30:00Z' + policy_name: monitor_timezone + policy_type: org_config + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_policies schema: - $ref: '#/components/schemas/CostByOrgResponse' + $ref: '#/components/schemas/OrgGroupPolicyResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get historical cost across your account + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an org group policy tags: - - Usage Metering + - Org Groups x-permission: - operator: AND + operator: OR permissions: - - usage_read - - billing_read - /api/v2/usage/hourly_usage: - get: - description: Get hourly usage by product family. - operationId: GetHourlyUsage + - org_group_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing organization group policy. + operationId: UpdateOrgGroupPolicy parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] - for usage beginning at this hour. - in: query - name: filter[timestamp][start] - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] - for usage ending **before** this hour. - in: query - name: filter[timestamp][end] - required: false - schema: - format: date-time - type: string - - description: >- - Comma separated list of product families to retrieve. Available - families are `all`, `analyzed_logs`, - - `application_security`, `audit_trail`, `serverless`, `ci_app`, - `cloud_cost_management`, `cloud_siem`, - - `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, - `custom_events`, `cws`, `dbm`, `error_tracking`, - - `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, - `indexed_spans`, `ingested_spans`, `iot`, - - `lambda_traced_invocations`, `llm_observability`, `logs`, - `network_flows`, `network_hosts`, `network_monitoring`, - - `observability_pipelines`, `online_archive`, `profiling`, - `product_analytics`, `rum`, `rum_browser_sessions`, - - `rum_mobile_sessions`, `sds`, `snmp`, `software_delivery`, - `synthetics_api`, `synthetics_browser`, - - `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, - `vuln_management` and `workflow_executions`. - - The following product family has been **deprecated**: `audit_logs`. - in: query - name: filter[product_families] - required: true - schema: - type: string - - description: Include child org usage in the response. Defaults to false. - in: query - name: filter[include_descendants] - required: false - schema: - default: false - type: boolean - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to false. - in: query - name: filter[include_connected_accounts] - required: false - schema: - default: false - type: boolean - - description: >- - Include breakdown of usage by subcategories where applicable (for - product family logs only). Defaults to false. - in: query - name: filter[include_breakdown] - required: false - schema: - default: false - type: boolean - - description: >- - Comma separated list of product family versions to use in the format - `product_family:version`. For example, - - `infra_hosts:1.0.0`. If this parameter is not used, the API will use - the latest version of each requested - - product family. Currently all families have one version `1.0.0`. - in: query - name: filter[versions] - required: false - schema: - type: string - - description: >- - Maximum number of results to return (between 1 and 500) - defaults - to 500 if limit not specified. - in: query - name: page[limit] - required: false - schema: - default: 500 - format: int32 - maximum: 500 - minimum: 1 - type: integer - - description: >- - List following results with a next_record_id provided in the - previous query. - in: query - name: page[next_record_id] - required: false - schema: - type: string + - $ref: '#/components/parameters/OrgGroupPolicyId' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: US/Eastern + enforcement_tier: GROUP_MANAGED + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: org_group_policies + schema: + $ref: '#/components/schemas/OrgGroupPolicyUpdateRequest' + required: true responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + attributes: + content: + value: US/Eastern + enforcement_tier: GROUP_MANAGED + modified_at: '2024-01-16T14:00:00Z' + policy_name: monitor_timezone + policy_type: org_config + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_policies schema: - $ref: '#/components/schemas/HourlyUsageResponse' + $ref: '#/components/schemas/OrgGroupPolicyResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage by product family + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an org group policy tags: - - Usage Metering + - Org Groups x-permission: operator: OR permissions: - - usage_read - /api/v2/usage/lambda_traced_invocations: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_configs: get: - deprecated: true - description: >- - Get hourly usage for Lambda traced invocations. - - **Note:** This endpoint has been deprecated.. Hourly usage data for all - products is now available in the [Get hourly usage by product family - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - operationId: GetUsageLambdaTracedInvocations - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour. - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour. - in: query - name: end_hr - required: false - schema: - format: date-time - type: string + description: List all org configs that are eligible to be used as organization group policies. + operationId: ListOrgGroupPolicyConfigs responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + - attributes: + allowed_values: + - UTC + - US/Eastern + - US/Pacific + default_value: UTC + description: The default timezone for monitors. + name: monitor_timezone + value_type: string + id: monitor_timezone + type: org_group_policy_configs schema: - $ref: '#/components/schemas/UsageLambdaTracedInvocationsResponse' + $ref: '#/components/schemas/OrgGroupPolicyConfigListResponse' description: OK - '400': + '401': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for Lambda traced invocations + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List org group policy configs tags: - - Usage Metering + - Org Groups x-permission: operator: OR permissions: - - usage_read - /api/v2/usage/observability_pipelines: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_overrides: get: - deprecated: true - description: >- - Get hourly usage for observability pipelines. - - **Note:** This endpoint has been deprecated. Hourly usage data for all - products is now available in the [Get hourly usage by product family - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - operationId: GetUsageObservabilityPipelines + description: List policy overrides for an organization group. Requires a filter on org group ID. Optionally filter by policy ID. + operationId: ListOrgGroupPolicyOverrides parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour. - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour. - in: query - name: end_hr - required: false - schema: - format: date-time - type: string + - $ref: '#/components/parameters/OrgGroupPolicyOverrideFilterOrgGroupId' + - $ref: '#/components/parameters/OrgGroupPolicyOverrideFilterPolicyId' + - $ref: '#/components/parameters/OrgGroupPageNumber' + - $ref: '#/components/parameters/OrgGroupPageSize' + - $ref: '#/components/parameters/OverrideSort' responses: '200': content: - application/json;datetime-format=rfc3339: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + org_group_policy: + data: + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: org_group_policies + type: org_group_policy_overrides + links: + first: https://api.datadoghq.com/api/v2/org_group_policy_overrides?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + last: https://api.datadoghq.com/api/v2/org_group_policy_overrides?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + next: null + prev: null + self: https://api.datadoghq.com/api/v2/org_group_policy_overrides?filter%5Borg_group_id%5D=a1b2c3d4-e5f6-7890-abcd-ef0123456789&page%5Bnumber%5D=0&page%5Bsize%5D=50 + meta: + page: + first_number: 0 + last_number: 0 + next_number: null + number: 0 + prev_number: null + size: 50 + total: 1 + type: number_size schema: - $ref: '#/components/schemas/UsageObservabilityPipelinesResponse' + $ref: '#/components/schemas/OrgGroupPolicyOverrideListResponse' description: OK '400': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for observability pipelines - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/projected_cost: - get: - description: >- - Get projected cost across multi-org and single root-org accounts. - - Projected cost data is only available for the current month and becomes - available around the 12th of the month. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetProjectedCost - parameters: - - description: >- - String to specify whether cost is broken down at a parent-org level - or at the sub-org level. Available views are `summary` and - `sub-org`. Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to `false`. - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/ProjectedCostResponse' - description: OK - '400': + '401': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: - application/json;datetime-format=rfc3339: + application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get projected cost across your account + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List org group policy overrides tags: - - Usage Metering + - Org Groups x-permission: - operator: AND + operator: OR permissions: - - usage_read - - billing_read - /api/v2/user_invitations: + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: >- - Sends emails to one or more users inviting them to join the - organization. - operationId: SendInvitations + description: Create a new policy override for an organization within an org group. + operationId: CreateOrgGroupPolicyOverride requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + org_group_policy: + data: + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: org_group_policies + type: org_group_policy_overrides schema: - $ref: '#/components/schemas/UserInvitationsRequest' + $ref: '#/components/schemas/OrgGroupPolicyOverrideCreateRequest' required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + org_group_policy: + data: + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: org_group_policies + type: org_group_policy_overrides schema: - $ref: '#/components/schemas/UserInvitationsResponse' - description: OK + $ref: '#/components/schemas/OrgGroupPolicyOverrideResponse' + description: Created '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Send invitation emails + summary: Create an org group policy override tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_invite - /api/v2/user_invitations/{user_invitation_uuid}: - get: - description: Returns a single user invitation by its UUID. - operationId: GetInvitation + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_overrides/{org_group_policy_override_id}: + delete: + description: Delete an organization group policy override by its ID. + operationId: DeleteOrgGroupPolicyOverride parameters: - - description: The UUID of the user invitation. - in: path - name: user_invitation_uuid - required: true - schema: - example: 00000000-0000-0000-3456-000000000000 - type: string + - $ref: '#/components/parameters/OrgGroupPolicyOverrideId' responses: - '200': + '204': + description: No Content + '400': content: application/json: schema: - $ref: '#/components/schemas/UserInvitationResponse' - description: OK + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Get a user invitation + summary: Delete an org group policy override tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_invite - /api/v2/users: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: |- - Get the list of all users in the organization. This list includes - all users even if they are deactivated or unverified. - operationId: ListUsers + description: Get a specific organization group policy override by its ID. + operationId: GetOrgGroupPolicyOverride parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: >- - User attribute to order results by. Sort order is ascending by - default. - - Sort order is descending if the field - - is prefixed by a negative sign, for example `sort=-name`. Options: - `name`, - - `modified_at`, `user_count`. - in: query - name: sort - required: false - schema: - default: name - example: name - type: string - - description: 'Direction of sort. Options: `asc`, `desc`.' - in: query - name: sort_dir - required: false - schema: - $ref: '#/components/schemas/QuerySortOrder' - - description: Filter all users by the given string. Defaults to no filtering. - in: query - name: filter - required: false - schema: - type: string - - description: >- - Filter on status attribute. - - Comma separated list, with possible values `Active`, `Pending`, and - `Disabled`. - - Defaults to no filtering. - in: query - name: filter[status] - required: false - schema: - example: Active - type: string + - $ref: '#/components/parameters/OrgGroupPolicyOverrideId' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + org_group_policy: + data: + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: org_group_policies + type: org_group_policy_overrides schema: - $ref: '#/components/schemas/UsersResponse' + $ref: '#/components/schemas/OrgGroupPolicyOverrideResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List all users + summary: Get an org group policy override tags: - - Users - x-codegen-request-body-name: body - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data + - Org Groups x-permission: operator: OR permissions: - - user_access_read - post: - description: Create a user for your organization. - operationId: CreateUser + - org_group_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing organization group policy override. + operationId: UpdateOrgGroupPolicyOverride + parameters: + - $ref: '#/components/parameters/OrgGroupPolicyOverrideId' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + type: org_group_policy_overrides schema: - $ref: '#/components/schemas/UserCreateRequest' + $ref: '#/components/schemas/OrgGroupPolicyOverrideUpdateRequest' required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-16T14:00:00Z' + org_site: us1 + org_uuid: c3d4e5f6-a7b8-9012-cdef-012345678901 + id: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + org_group_policy: + data: + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: org_group_policies + type: org_group_policy_overrides schema: - $ref: '#/components/schemas/UserResponse' + $ref: '#/components/schemas/OrgGroupPolicyOverrideResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Create a user + summary: Update an org group policy override tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_invite - /api/v2/users/{user_id}: - delete: - description: |- - Disable a user. Can only be used with an application key belonging - to an administrator user. - operationId: DisableUser + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_group_policy_suggestions: + get: + description: List suggested organization group policies. Requires a filter on org group ID. + operationId: ListOrgGroupPolicySuggestions parameters: - - $ref: '#/components/parameters/UserID' + - $ref: '#/components/parameters/OrgGroupPolicyFilterOrgGroupId' responses: - '204': + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + consensus_ratio: 0.75 + policy_name: monitor_timezone + recommended_value: UTC + status: pending + id: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + relationships: + org_group: + data: + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + type: org_group_policy_suggestions + schema: + $ref: '#/components/schemas/OrgGroupPolicySuggestionListResponse' description: OK - '403': + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Disable a user + summary: List org group policy suggestions tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_manage - - service_account_write + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_groups: get: - description: Get a user in the organization specified by the user’s `user_id`. - operationId: GetUser + description: List all organization groups that the requesting organization has access to. + operationId: ListOrgGroups parameters: - - $ref: '#/components/parameters/UserID' + - $ref: '#/components/parameters/OrgGroupPageNumber' + - $ref: '#/components/parameters/OrgGroupPageSize' + - $ref: '#/components/parameters/OrgGroupSort' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + name: My Org Group + owner_org_site: us1 + owner_org_uuid: b2c3d4e5-f6a7-8901-bcde-f01234567890 + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + links: + first: https://api.datadoghq.com/api/v2/org_groups?page%5Bnumber%5D=0&page%5Bsize%5D=50 + last: https://api.datadoghq.com/api/v2/org_groups?page%5Bnumber%5D=0&page%5Bsize%5D=50 + next: null + prev: null + self: https://api.datadoghq.com/api/v2/org_groups?page%5Bnumber%5D=0&page%5Bsize%5D=50 + meta: + page: + first_number: 0 + last_number: 0 + next_number: null + number: 0 + prev_number: null + size: 50 + total: 1 + type: number_size schema: - $ref: '#/components/schemas/UserResponse' + $ref: '#/components/schemas/OrgGroupListResponse' description: OK - '403': + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get user details + summary: List org groups tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_read - patch: - description: |- - Edit a user. Can only be used with an application key belonging - to an administrator user. - operationId: UpdateUser - parameters: - - $ref: '#/components/parameters/UserID' + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new organization group. + operationId: CreateOrgGroup requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: My Org Group + type: org_groups schema: - $ref: '#/components/schemas/UserUpdateRequest' + $ref: '#/components/schemas/OrgGroupCreateRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + name: My Org Group + owner_org_site: us1 + owner_org_uuid: b2c3d4e5-f6a7-8901-bcde-f01234567890 + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups schema: - $ref: '#/components/schemas/UserResponse' - description: OK + $ref: '#/components/schemas/OrgGroupResponse' + description: Created '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' description: Bad Request - '403': + '401': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '422': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '409': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Update a user + summary: Create an org group tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_manage - - service_account_write - /api/v2/users/{user_id}/orgs: - get: - description: >- - Get a user organization. Returns the user information and all - organizations - - joined by this user. - operationId: ListUserOrganizations + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/org_groups/{org_group_id}: + delete: + description: Delete an organization group by its ID. + operationId: DeleteOrgGroup parameters: - - $ref: '#/components/parameters/UserID' + - $ref: '#/components/parameters/OrgGroupId' responses: - '200': + '204': + description: No Content + '400': content: application/json: schema: - $ref: '#/components/schemas/UserResponse' - description: OK + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get a user organization + summary: Delete an org group tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: - operator: OPEN - permissions: [] - /api/v2/users/{user_id}/permissions: + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: |- - Get a user permission set. Returns a list of the user’s permissions - granted by the associated user's roles. - operationId: ListUserPermissions + description: Get a specific organization group by its ID. + operationId: GetOrgGroup parameters: - - $ref: '#/components/parameters/UserID' + - $ref: '#/components/parameters/OrgGroupId' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-15T10:30:00Z' + name: My Org Group + owner_org_site: us1 + owner_org_uuid: b2c3d4e5-f6a7-8901-bcde-f01234567890 + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups schema: - $ref: '#/components/schemas/PermissionsResponse' + $ref: '#/components/schemas/OrgGroupResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a user permissions + summary: Get an org group tags: - - Users - x-codegen-request-body-name: body + - Org Groups x-permission: operator: OR permissions: - - user_access_read - /api/v2/users/{user_uuid}/memberships: - get: - description: Get a list of memberships for a user - operationId: GetUserMemberships + - org_group_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the name of an existing organization group. + operationId: UpdateOrgGroup parameters: - - description: None - in: path - name: user_uuid - required: true - schema: - type: string + - $ref: '#/components/parameters/OrgGroupId' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated Org Group Name + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups + schema: + $ref: '#/components/schemas/OrgGroupUpdateRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-15T10:30:00Z' + modified_at: '2024-01-16T14:00:00Z' + name: Updated Org Group Name + owner_org_site: us1 + owner_org_uuid: b2c3d4e5-f6a7-8901-bcde-f01234567890 + id: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + type: org_groups schema: - $ref: '#/components/schemas/UserTeamsResponse' - description: Represents a user's association to a team - '404': + $ref: '#/components/schemas/OrgGroupResponse' + description: OK + '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an org group + tags: + - Org Groups + x-permission: + operator: OR + permissions: + - org_group_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/permissions: + get: + description: Returns a list of all permissions, including name, description, and ID. + operationId: ListPermissions + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Full access to all resources. + display_name: Admin + group_name: General + name: admin + restricted: false + id: 00000000-0000-0000-0000-000000000001 + type: permissions + schema: + $ref: '#/components/schemas/PermissionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - teams_read - summary: Get user memberships + - user_access_read + summary: List permissions tags: - - Teams + - Roles x-permission: operator: OR permissions: - - teams_read -components: - schemas: - APIKeysResponse: - description: Response for a list of API keys. - properties: - data: - description: Array of API keys. - items: - $ref: '#/components/schemas/PartialAPIKey' - type: array - included: - description: Array of objects related to the API key. - items: - $ref: '#/components/schemas/APIKeyResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/APIKeysResponseMeta' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - APIKeyCreateRequest: - description: Request used to create an API key. - properties: - data: - $ref: '#/components/schemas/APIKeyCreateData' - required: - - data - type: object - APIKeyResponse: - description: Response for retrieving an API key. - properties: - data: - $ref: '#/components/schemas/FullAPIKey' - included: - description: Array of objects related to the API key. - items: - $ref: '#/components/schemas/APIKeyResponseIncludedItem' - type: array - type: object - APIKeyUpdateRequest: - description: Request used to update an API key. - properties: - data: - $ref: '#/components/schemas/APIKeyUpdateData' - required: - - data - type: object - ListApplicationKeysResponse: - description: Response for a list of application keys. - properties: - data: - description: Array of application keys. - items: - $ref: '#/components/schemas/PartialApplicationKey' - type: array - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/ApplicationKeyResponseMeta' - type: object - ApplicationKeyResponse: - description: Response for retrieving an application key. - properties: - data: - $ref: '#/components/schemas/FullApplicationKey' - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - type: object - ApplicationKeyUpdateRequest: - description: Request used to update an application key. - properties: - data: - $ref: '#/components/schemas/ApplicationKeyUpdateData' - required: - - data - type: object - AuditLogsSort: - description: Sort parameters when querying events. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - AuditLogsEventsResponse: - description: >- - Response object with all events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/AuditLogsEvent' - type: array - links: - $ref: '#/components/schemas/AuditLogsResponseLinks' - meta: - $ref: '#/components/schemas/AuditLogsResponseMetadata' - type: object - AuditLogsSearchEventsRequest: - description: The request for a Audit Logs events list. - properties: - filter: - $ref: '#/components/schemas/AuditLogsQueryFilter' - options: - $ref: '#/components/schemas/AuditLogsQueryOptions' - page: - $ref: '#/components/schemas/AuditLogsQueryPageOptions' - sort: - $ref: '#/components/schemas/AuditLogsSort' - type: object - AuthNMappingsSort: - description: Sorting options for AuthN Mappings. - enum: - - created_at - - '-created_at' - - role_id - - '-role_id' - - saml_assertion_attribute_id - - '-saml_assertion_attribute_id' - - role.name - - '-role.name' - - saml_assertion_attribute.attribute_key - - '-saml_assertion_attribute.attribute_key' - - saml_assertion_attribute.attribute_value - - '-saml_assertion_attribute.attribute_value' - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - ROLE_ID_ASCENDING - - ROLE_ID_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_ID_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_ID_DESCENDING - - ROLE_NAME_ASCENDING - - ROLE_NAME_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_KEY_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_KEY_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_VALUE_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_VALUE_DESCENDING - AuthNMappingResourceType: - description: The type of resource being mapped to. - enum: - - role - - team - type: string - x-enum-varnames: - - ROLE - - TEAM - AuthNMappingsResponse: - description: Array of AuthN Mappings response. - properties: - data: - description: Array of returned AuthN Mappings. - items: - $ref: '#/components/schemas/AuthNMapping' - type: array - included: - description: Included data in the AuthN Mapping response. - items: - $ref: '#/components/schemas/AuthNMappingIncluded' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - AuthNMappingCreateRequest: - description: Request for creating an AuthN Mapping. - properties: - data: - $ref: '#/components/schemas/AuthNMappingCreateData' - required: - - data - type: object - AuthNMappingResponse: - description: AuthN Mapping response from the API. - properties: - data: - $ref: '#/components/schemas/AuthNMapping' - included: - description: Included data in the AuthN Mapping response. - items: - $ref: '#/components/schemas/AuthNMappingIncluded' - type: array - type: object - AuthNMappingUpdateRequest: - description: Request to update an AuthN Mapping. + - user_access_read + /api/v2/personal_access_tokens: + get: + description: List all access tokens for the organization. + operationId: ListPersonalAccessTokens + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - $ref: '#/components/parameters/PersonalAccessTokensSortParameter' + - $ref: '#/components/parameters/PersonalAccessTokensFilterParameter' + - $ref: '#/components/parameters/PersonalAccessTokensFilterOwnerIDParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000002 + type: personal_access_tokens + meta: + page: + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/ListPersonalAccessTokensResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all access tokens + tags: + - Key Management + x-permission: + operator: OR + permissions: + - user_app_keys + - org_app_keys_read + post: + description: Create a personal access token for the current user. + operationId: CreatePersonalAccessToken + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + expires_at: '2025-12-31T23:59:59+00:00' + name: My Personal Access Token + scopes: + - dashboards_read + - dashboards_write + type: personal_access_tokens + schema: + $ref: '#/components/schemas/PersonalAccessTokenCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + key: + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000001 + type: personal_access_tokens + schema: + $ref: '#/components/schemas/PersonalAccessTokenCreateResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a personal access token + tags: + - Key Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_app_keys + /api/v2/personal_access_tokens/{token_id}: + delete: + description: Revoke a specific personal access token. + operationId: RevokePersonalAccessToken + parameters: + - $ref: '#/components/parameters/AccessTokenID' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Revoke a personal access token + tags: + - Key Management + x-permission: + operator: OR + permissions: + - user_app_keys + - org_app_keys_write + get: + description: Get a specific personal access token by its ID. + operationId: GetPersonalAccessToken + parameters: + - $ref: '#/components/parameters/AccessTokenID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000003 + type: personal_access_tokens + schema: + $ref: '#/components/schemas/PersonalAccessTokenResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a personal access token + tags: + - Key Management + x-permission: + operator: OR + permissions: + - user_app_keys + - org_app_keys_read + patch: + description: Update a specific personal access token. + operationId: UpdatePersonalAccessToken + parameters: + - $ref: '#/components/parameters/AccessTokenID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated Personal Access Token + scopes: + - dashboards_read + - dashboards_write + id: 00112233-4455-6677-8899-aabbccddeeff + type: personal_access_tokens + schema: + $ref: '#/components/schemas/PersonalAccessTokenUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + name: My Personal Access Token + public_portion: ddpat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000004 + type: personal_access_tokens + schema: + $ref: '#/components/schemas/PersonalAccessTokenResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a personal access token + tags: + - Key Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_app_keys + - org_app_keys_write + /api/v2/restriction_policy/{resource_id}: + delete: + description: Deletes the restriction policy associated with a specified resource. + operationId: DeleteRestrictionPolicy + parameters: + - $ref: '#/components/parameters/ResourceID' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete a restriction policy + tags: + - Restriction Policies + x-permission: + operator: OPEN + permissions: [] + get: + description: Retrieves the restriction policy associated with a specified resource. + operationId: GetRestrictionPolicy + parameters: + - $ref: '#/components/parameters/ResourceID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + bindings: + - principals: + - role:00000000-0000-1111-0000-000000000000 + relation: editor + id: dashboard:abc-def-ghi + type: restriction_policy + schema: + $ref: '#/components/schemas/RestrictionPolicyResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a restriction policy + tags: + - Restriction Policies + x-permission: + operator: OPEN + permissions: [] + post: + description: |- + Updates the restriction policy associated with a resource. + + #### Supported resources + Restriction policies can be applied to the following resources: + - Dashboards: `dashboard` + - Integration Services: `integration-service` + - Integration Webhooks: `integration-webhook` + - Notebooks: `notebook` + - Powerpacks: `powerpack` + - Reference Tables: `reference-table` + - Security Rules: `security-rule` + - Service Level Objectives: `slo` + - Synthetic Global Variables: `synthetics-global-variable` + - Synthetic Tests: `synthetics-test` + - Synthetic Private Locations: `synthetics-private-location` + - Monitors: `monitor` + - Workflows: `workflow` + - App Builder Apps: `app-builder-app` + - Connections: `connection` + - Connection Groups: `connection-group` + - RUM Applications: `rum-application` + - Cross Org Connections: `cross-org-connection` + - Spreadsheets: `spreadsheet` + - On-Call Schedules: `on-call-schedule` + - On-Call Escalation Policies: `on-call-escalation-policy` + - On-Call Team Routing Rules: `on-call-team-routing-rules` + - Logs Pipelines: `logs-pipeline` + - Case Management Projects: `case-management-project` + - Monitor Notification Rules: `monitor-notification-rule` + - Status Pages: `status-page` + - Feature Flags: `feature-flag` + + #### Supported relations for resources + Resource Type | Supported Relations + ----------------------------|-------------------------- + Dashboards | `viewer`, `editor` + Integration Services | `viewer`, `editor` + Integration Webhooks | `viewer`, `editor` + Notebooks | `viewer`, `editor` + Powerpacks | `viewer`, `editor` + Security Rules | `viewer`, `editor` + Service Level Objectives | `viewer`, `editor` + Synthetic Global Variables | `viewer`, `editor` + Synthetic Tests | `viewer`, `editor` + Synthetic Private Locations | `viewer`, `editor` + Monitors | `viewer`, `editor` + Reference Tables | `viewer`, `editor` + Workflows | `viewer`, `runner`, `editor` + App Builder Apps | `viewer`, `editor` + Connections | `viewer`, `resolver`, `editor` + Connection Groups | `viewer`, `editor` + RUM Application | `viewer`, `editor` + Cross Org Connections | `viewer`, `editor` + Spreadsheets | `viewer`, `editor` + On-Call Schedules | `viewer`, `overrider`, `editor` + On-Call Escalation Policies | `viewer`, `editor` + On-Call Team Routing Rules | `viewer`, `editor` + Logs Pipelines | `viewer`, `processors_editor`, `editor` + Case Management Projects | `viewer`, `contributor`, `manager` + Monitor Notification Rules | `viewer`, `editor` + Status Pages | `viewer`, `responder`, `manager` + Feature Flags | `viewer`, `contributor`, `editor` + operationId: UpdateRestrictionPolicy + parameters: + - $ref: '#/components/parameters/ResourceID' + - description: Allows admins (users with the `user_access_manage` permission) to remove their own access from the resource if set to `true`. By default, this is set to `false`, preventing admins from locking themselves out. + in: query + name: allow_self_lockout + required: false + schema: + type: boolean + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + bindings: + - principals: + - user:4dee724d-00cc-11ea-a77b-570c9d03c6c5 + relation: editor + id: dashboard:abc-def-ghi + type: restriction_policy + schema: + $ref: '#/components/schemas/RestrictionPolicyUpdateRequest' + description: Restriction policy payload + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + bindings: + - principals: + - role:00000000-0000-1111-0000-000000000000 + relation: editor + id: dashboard:abc-def-ghi + type: restriction_policy + schema: + $ref: '#/components/schemas/RestrictionPolicyResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update a restriction policy + tags: + - Restriction Policies + x-codegen-request-body-name: body + x-permission: + operator: OPEN + permissions: [] + /api/v2/roles: + get: + description: Returns all roles, including their names and their unique identifiers. + operationId: ListRoles + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: |- + Sort roles depending on the given field. Sort order is **ascending** by default. + Sort order is **descending** if the field is prefixed by a negative sign, for example: + `sort=-name`. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/RolesSort' + - description: Filter all roles by the given string. + in: query + name: filter + required: false + schema: + type: string + - description: Filter all roles by the given list of role IDs. + in: query + name: filter[id] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: developers + id: 00000000-0000-0000-0000-000000000001 + type: roles + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/RolesResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List roles + tags: + - Roles + x-permission: + operator: OR + permissions: + - user_access_read + post: + description: |- + Create a new role for your organization. + + The following read permissions are automatically added to every new role, even if they are not included in the request: + + - Dashboards Read + - Notebooks Read + - Monitors Read + - APM Read + - Vulnerability Management Read + - RUM Apps Read + - Incidents Read + - SLOs Read + - CI Visibility Read + - CD Visibility Read + operationId: CreateRole + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + type: roles + schema: + $ref: '#/components/schemas/RoleCreateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000002 + type: roles + schema: + $ref: '#/components/schemas/RoleCreateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Create role + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/roles/templates: + get: + description: List all role templates + operationId: ListRoleTemplates + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Datadog Standard Role + id: 00000000-0000-0000-0000-000000000012 + type: roles + schema: + $ref: '#/components/schemas/RoleTemplateArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List role templates + tags: + - Roles + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/roles/{role_id}: + delete: + description: Disables a role. + operationId: DeleteRole + parameters: + - $ref: '#/components/parameters/RoleID' + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Delete role + tags: + - Roles + x-codegen-request-body-name: body + get: + description: Get a role in the organization specified by the role’s `role_id`. + operationId: GetRole + parameters: + - $ref: '#/components/parameters/RoleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000003 + type: roles + schema: + $ref: '#/components/schemas/RoleResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get a role + tags: + - Roles + x-codegen-request-body-name: body + patch: + description: Edit a role. Can only be used with application keys belonging to administrators. + operationId: UpdateRole + parameters: + - $ref: '#/components/parameters/RoleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: updated-role-name + id: 00000000-0000-1111-0000-000000000000 + type: roles + schema: + $ref: '#/components/schemas/RoleUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000004 + type: roles + schema: + $ref: '#/components/schemas/RoleUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Update a role + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/roles/{role_id}/clone: + post: + description: Clone an existing role + operationId: CloneRole + parameters: + - $ref: '#/components/parameters/RoleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: cloned-role + type: roles + schema: + $ref: '#/components/schemas/RoleCloneRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: developers + id: 00000000-0000-0000-0000-000000000011 + type: roles + schema: + $ref: '#/components/schemas/RoleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Create a new role by cloning an existing role + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/roles/{role_id}/permissions: + delete: + description: Removes a permission from a role. + operationId: RemovePermissionFromRole + parameters: + - $ref: '#/components/parameters/RoleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 6f66600e-dd12-11e8-9e55-7f30fbb45e73 + type: permissions + schema: + $ref: '#/components/schemas/RelationshipToPermission' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: logs_read_data + id: 00000000-0000-0000-0000-000000000007 + type: permissions + schema: + $ref: '#/components/schemas/PermissionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Revoke permission + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + get: + description: Returns a list of all permissions for a single role. + operationId: ListRolePermissions + parameters: + - $ref: '#/components/parameters/RoleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: logs_read_data + id: 00000000-0000-0000-0000-000000000005 + type: permissions + schema: + $ref: '#/components/schemas/PermissionsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List permissions for a role + tags: + - Roles + x-codegen-request-body-name: body + post: + description: Adds a permission to a role. + operationId: AddPermissionToRole + parameters: + - $ref: '#/components/parameters/RoleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 6f66600e-dd12-11e8-9e55-7f30fbb45e73 + type: permissions + schema: + $ref: '#/components/schemas/RelationshipToPermission' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: logs_read_data + id: 00000000-0000-0000-0000-000000000006 + type: permissions + schema: + $ref: '#/components/schemas/PermissionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Grant permission to a role + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/roles/{role_id}/users: + delete: + description: Removes a user from a role. + operationId: RemoveUserFromRole + parameters: + - $ref: '#/components/parameters/RoleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + schema: + $ref: '#/components/schemas/RelationshipToUser' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000010 + type: users + schema: + $ref: '#/components/schemas/UsersResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Remove a user from a role + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + get: + description: Gets all users of a role. + operationId: ListRoleUsers + parameters: + - $ref: '#/components/parameters/RoleID' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: |- + User attribute to order results by. Sort order is **ascending** by default. + Sort order is **descending** if the field is prefixed by a negative sign, + for example `sort=-name`. Options: `name`, `email`, `status`. + in: query + name: sort + required: false + schema: + default: name + type: string + - description: Filter all users by the given string. Defaults to no filtering. + in: query + name: filter + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000008 + type: users + schema: + $ref: '#/components/schemas/UsersResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get all users of a role + tags: + - Roles + post: + description: Adds a user to a role. + operationId: AddUserToRole + parameters: + - $ref: '#/components/parameters/RoleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-2345-000000000000 + type: users + schema: + $ref: '#/components/schemas/RelationshipToUser' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000009 + type: users + schema: + $ref: '#/components/schemas/UsersResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Add a user to a role + tags: + - Roles + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/saml_configurations: + get: + description: Get the list of SAML configurations for the current organization. An organization has at most one SAML configuration. + operationId: ListSAMLConfigurations + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + assertion_consumer_service: + - https://app.datadoghq.com/account/saml/assertion + entity_id: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + expires_at: '2010-10-26T13:31:15+00:00' + idp_initiated: true + jit_domains: + - example.com + sso_url: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + included: + - attributes: + name: Datadog Standard Role + id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: '#/components/schemas/SAMLConfigurationsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List SAML configurations + tags: + - Organizations + x-permission: + operator: OR + permissions: + - org_management + /api/v2/saml_configurations/idp_metadata: + post: + description: |- + Endpoint for uploading IdP metadata for SAML setup. + + Use this endpoint to upload or replace IdP metadata for SAML login configuration. + operationId: UploadIdPMetadata + requestBody: + content: + multipart/form-data: + examples: + default: + value: {} + schema: + $ref: '#/components/schemas/IdPMetadataFormData' + required: true + responses: + '200': + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Upload IdP metadata + tags: + - Organizations + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - org_management + /api/v2/saml_configurations/{saml_config_uuid}: + get: + description: Get a single SAML configuration for the current organization by its UUID. + operationId: GetSAMLConfiguration + parameters: + - $ref: '#/components/parameters/SAMLConfigurationUUIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assertion_consumer_service: + - https://app.datadoghq.com/account/saml/assertion + entity_id: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + expires_at: '2010-10-26T13:31:15+00:00' + idp_initiated: true + jit_domains: + - example.com + sso_url: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + included: + - attributes: + name: Datadog Standard Role + id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: '#/components/schemas/SAMLConfigurationResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a SAML configuration + tags: + - Organizations + x-permission: + operator: OR + permissions: + - org_management + patch: + description: |- + Update a single SAML configuration for the current organization. + + Use this endpoint to enable or disable identity-provider-initiated login, set the + just-in-time provisioning domains, and set the default role assigned to + just-in-time provisioned users. A default role is required to enable just-in-time provisioning. + operationId: UpdateSAMLConfiguration + parameters: + - $ref: '#/components/parameters/SAMLConfigurationUUIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + idp_initiated: true + jit_domains: + - example.com + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + schema: + $ref: '#/components/schemas/SAMLConfigurationUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assertion_consumer_service: + - https://app.datadoghq.com/account/saml/assertion + entity_id: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 + expires_at: '2010-10-26T13:31:15+00:00' + idp_initiated: true + jit_domains: + - example.com + sso_url: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + default_roles: + data: + - id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + type: saml_configurations + included: + - attributes: + name: Datadog Standard Role + id: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + type: roles + schema: + $ref: '#/components/schemas/SAMLConfigurationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a SAML configuration + tags: + - Organizations + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - org_management + /api/v2/seats/users: + delete: + description: Unassign seats from users for a product code. + operationId: UnassignSeatsUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + product_code: '' + user_uuids: + - 626a4e8e-64bd-409d-b80e-428f08ac0b62 + type: seat-assignments + schema: + $ref: '#/components/schemas/UnassignSeatsUserRequest' + required: true + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Unassign seats from users + tags: + - Seats + x-permission: + operator: OR + permissions: + - billing_edit + - incident_write + - on_call_write + get: + description: Get the list of users assigned seats for a product code. + operationId: GetSeatsUsers + parameters: + - description: The product code for which to retrieve seat users. + in: query + name: product_code + required: true + schema: + type: string + - description: Maximum number of results to return. + in: query + name: page[limit] + required: false + schema: + format: int64 + type: integer + - description: Cursor for pagination. + in: query + name: page[cursor] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + assigned_at: '2024-01-01T00:00:00+00:00' + email: test@example.com + name: Example Name + id: 00000000-0000-0000-0000-000000000001 + type: seat-users + schema: + $ref: '#/components/schemas/SeatUserDataArray' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get users with seats + tags: + - Seats + x-permission: + operator: OR + permissions: + - billing_read + - incident_read + - on_call_read + post: + description: Assign seats to users for a product code. + operationId: AssignSeatsUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + product_code: '' + user_uuids: + - '' + type: seat-assignments + schema: + $ref: '#/components/schemas/AssignSeatsUserRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + assigned_ids: + - abc-123 + product_code: example-product + id: 00000000-0000-0000-0000-000000000002 + type: seat-assignments + schema: + $ref: '#/components/schemas/AssignSeatsUserResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Assign seats to users + tags: + - Seats + x-permission: + operator: OR + permissions: + - billing_edit + - incident_write + - on_call_write + /api/v2/service_accounts: + post: + description: Create a service account for your organization. + operationId: CreateServiceAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: jane.doe@example.com + service_account: true + relationships: + roles: + data: + - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: users + schema: + $ref: '#/components/schemas/ServiceAccountCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + service_account: true + id: 00000000-0000-0000-0000-000000000001 + type: users + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a service account + tags: + - Service Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/access_tokens: + get: + description: List all access tokens for a specific service account. + operationId: ListServiceAccountAccessTokens + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - $ref: '#/components/parameters/PersonalAccessTokensSortParameter' + - $ref: '#/components/parameters/PersonalAccessTokensFilterParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000005 + type: service_access_tokens + meta: + page: + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/ListServiceAccessTokensResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List access tokens for a service account + tags: + - Service Accounts + x-permission: + operator: OR + permissions: + - service_account_write + post: + description: Create an access token for a service account. + operationId: CreateServiceAccountAccessToken + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Service Account Access Token + scopes: + - dashboards_read + - dashboards_write + type: service_access_tokens + schema: + $ref: '#/components/schemas/ServiceAccountAccessTokenCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + key: + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000006 + type: service_access_tokens + schema: + $ref: '#/components/schemas/ServiceAccessTokenCreateResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an access token for a service account + tags: + - Service Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/access_tokens/{token_id}: + delete: + description: Revoke a specific access token for a service account. + operationId: RevokeServiceAccountAccessToken + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/AccessTokenID' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Revoke an access token for a service account + tags: + - Service Accounts + x-permission: + operator: OR + permissions: + - service_account_write + get: + description: Get a specific access token for a service account by its ID. + operationId: GetServiceAccountAccessToken + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/AccessTokenID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000007 + type: service_access_tokens + schema: + $ref: '#/components/schemas/ServiceAccessTokenResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an access token for a service account + tags: + - Service Accounts + x-permission: + operator: OR + permissions: + - service_account_write + patch: + description: Update a specific access token for a service account. + operationId: UpdateServiceAccountAccessToken + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/AccessTokenID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated Service Access Token + scopes: + - dashboards_read + - dashboards_write + id: 00112233-4455-6677-8899-aabbccddeeff + type: service_access_tokens + schema: + $ref: '#/components/schemas/ServiceAccountAccessTokenUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2025-12-31T23:59:59+00:00' + name: My Service Access Token + public_portion: ddsat_abc123 + scopes: + - dashboards_read + id: 00000000-0000-0000-0000-000000000008 + type: service_access_tokens + schema: + $ref: '#/components/schemas/ServiceAccessTokenResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an access token for a service account + tags: + - Service Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/application_keys: + get: + description: List all application keys available for this service account. + operationId: ListServiceAccountApplicationKeys + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - $ref: '#/components/parameters/ApplicationKeysSortParameter' + - $ref: '#/components/parameters/ApplicationKeyFilterParameter' + - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' + - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000002 + type: application_keys + schema: + $ref: '#/components/schemas/ListApplicationKeysResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List application keys for this service account + tags: + - Service Accounts + x-permission: + operator: OR + permissions: + - service_account_write + post: + description: Create an application key for this service account. + operationId: CreateServiceAccountApplicationKey + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + type: application_keys + schema: + $ref: '#/components/schemas/ApplicationKeyCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000003 + type: application_keys + schema: + $ref: '#/components/schemas/ApplicationKeyResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an application key for this service account + tags: + - Service Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - service_account_write + /api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id}: + delete: + description: Delete an application key owned by this service account. + operationId: DeleteServiceAccountApplicationKey + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/ApplicationKeyID' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an application key for this service account + tags: + - Service Accounts + x-permission: + operator: OR + permissions: + - service_account_write + get: + description: Get an application key owned by this service account. + operationId: GetServiceAccountApplicationKey + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/ApplicationKeyID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000004 + type: application_keys + schema: + $ref: '#/components/schemas/PartialApplicationKeyResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get one application key for this service account + tags: + - Service Accounts + x-permission: + operator: OR + permissions: + - service_account_write + patch: + description: Edit an application key owned by this service account. + operationId: UpdateServiceAccountApplicationKey + parameters: + - $ref: '#/components/parameters/ServiceAccountID' + - $ref: '#/components/parameters/ApplicationKeyID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Application Key for managing dashboards + scopes: + - dashboards_read + - dashboards_write + - dashboards_public_share + id: 00112233-4455-6677-8899-aabbccddeeff + type: application_keys + schema: + $ref: '#/components/schemas/ApplicationKeyUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + name: Application Key for managing dashboards + id: 00000000-0000-0000-0000-000000000005 + type: application_keys + schema: + $ref: '#/components/schemas/PartialApplicationKeyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Edit an application key for this service account + tags: + - Service Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - service_account_write + /api/v2/team: + get: + description: |- + Get all teams. + Can be used to search for teams using the `filter[keyword]` and `filter[me]` query parameters. + operationId: ListTeams + parameters: + - $ref: '#/components/parameters/PageNumber' + - $ref: '#/components/parameters/PageSize' + - description: Specifies the order of the returned teams + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/ListTeamsSort' + - description: 'Included related resources optionally requested. Allowed enum values: `team_links, user_team_permissions`' + in: query + name: include + required: false + schema: + items: + $ref: '#/components/schemas/ListTeamsInclude' + type: array + - description: Search query. Can be team name, team handle, or email of team member + in: query + name: filter[keyword] + required: false + schema: + type: string + - description: When true, only returns teams the current user belongs to + in: query + name: filter[me] + required: false + schema: + type: boolean + - description: List of fields that need to be fetched. + explode: false + in: query + name: fields[team] + required: false + schema: + items: + $ref: '#/components/schemas/TeamsField' + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000001 + type: team + meta: + pagination: + offset: 0 + total: 1 + schema: + $ref: '#/components/schemas/TeamsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get all teams + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - teams_read + post: + description: |- + Create a new team. + User IDs passed through the `users` relationship field are added to the team. + operationId: CreateTeam + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + avatar: 🥑 + handle: example-team + name: Example Team + relationships: + users: + data: [] + type: team + schema: + $ref: '#/components/schemas/TeamCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000002 + type: team + schema: + $ref: '#/components/schemas/TeamResponse' + description: CREATED + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Create a team + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - teams_read + - teams_manage + /api/v2/team-hierarchy-links: + get: + description: List all team hierarchy links that match the provided filters. + operationId: ListTeamHierarchyLinks + parameters: + - $ref: '#/components/parameters/PageNumber' + - $ref: '#/components/parameters/PageSize' + - description: Filter by parent team ID + in: query + name: filter[parent_team] + required: false + schema: + type: string + - description: Filter by sub team ID + in: query + name: filter[sub_team] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + provisioned_by: system + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: team_hierarchy_links + schema: + $ref: '#/components/schemas/TeamHierarchyLinksResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team hierarchy links + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - teams_read + post: + description: Create a new team hierarchy link between a parent team and a sub team. + operationId: AddTeamHierarchyLink + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + parent_team: + data: + id: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: team + sub_team: + data: + id: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: team + type: team_hierarchy_links + schema: + $ref: '#/components/schemas/TeamHierarchyLinkCreateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + provisioned_by: system + id: 00000000-0000-0000-0000-000000000001 + type: team_hierarchy_links + schema: + $ref: '#/components/schemas/TeamHierarchyLinkResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Create a team hierarchy link + tags: + - Teams + x-permission: + operator: AND + permissions: + - teams_read + - teams_manage + /api/v2/team-hierarchy-links/{link_id}: + delete: + description: Remove a team hierarchy link by the given link_id. + operationId: RemoveTeamHierarchyLink + parameters: + - description: The team hierarchy link's identifier + in: path + name: link_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Remove a team hierarchy link + tags: + - Teams + x-permission: + operator: AND + permissions: + - teams_read + - teams_manage + get: + description: Get a single team hierarchy link for the given link_id. + operationId: GetTeamHierarchyLink + parameters: + - description: The team hierarchy link's identifier + in: path + name: link_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + provisioned_by: system + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: team_hierarchy_links + schema: + $ref: '#/components/schemas/TeamHierarchyLinkResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get a team hierarchy link + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/connections: + delete: + description: Delete multiple team connections. + operationId: DeleteTeamConnections + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 12345678-1234-5678-9abc-123456789012 + type: team_connection + schema: + $ref: '#/components/schemas/TeamConnectionDeleteRequest' + required: true + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Delete team connections + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + get: + description: Returns all team connections. + operationId: ListTeamConnections + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: Filter team connections by external source systems. + explode: false + in: query + name: filter[sources] + required: false + schema: + items: + example: github + type: string + type: array + style: form + - description: Filter team connections by Datadog team IDs. + explode: false + in: query + name: filter[team_ids] + required: false + schema: + items: + example: 12345678-1234-5678-9abc-123456789012 + type: string + type: array + style: form + - description: Filter team connections by connected team IDs from external systems. + explode: false + in: query + name: filter[connected_team_ids] + required: false + schema: + items: + example: '@MyGitHubAccount/my-team-name' + type: string + type: array + style: form + - description: Filter team connections by connection IDs. + explode: false + in: query + name: filter[connection_ids] + required: false + schema: + items: + example: 12345678-1234-5678-9abc-123456789012 + type: string + type: array + style: form + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + managed_by: github_sync + source: github + id: 00000000-0000-0000-0000-000000000001 + type: team_connection + schema: + $ref: '#/components/schemas/TeamConnectionsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: List team connections + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - teams_read + post: + description: Create multiple team connections. + operationId: CreateTeamConnections + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + managed_by: github_sync + source: github + relationships: + connected_team: + data: + id: '@GitHubOrg/team-handle' + team: + data: + id: 87654321-4321-8765-dcba-210987654321 + type: team_connection + schema: + $ref: '#/components/schemas/TeamConnectionCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + - attributes: + managed_by: github_sync + source: github + id: 00000000-0000-0000-0000-000000000002 + type: team_connection + schema: + $ref: '#/components/schemas/TeamConnectionsResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Create team connections + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/sync: + get: + description: |- + Get all team synchronization configurations. + Returns a list of configurations used for linking or provisioning teams with external sources like GitHub. + operationId: GetTeamSync + parameters: + - description: Filter by the external source platform for team synchronization + in: query + name: filter[source] + required: true + schema: + $ref: '#/components/schemas/TeamSyncAttributesSource' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + frequency: once + source: github + sync_membership: false + type: link + type: team_sync_bulk + schema: + $ref: '#/components/schemas/TeamSyncResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team sync configurations + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + post: + description: |- + This endpoint configures synchronization between your existing Datadog teams and GitHub teams by matching their names. + It evaluates all current Datadog teams and compares them against teams in the GitHub organization + connected to your Datadog account, based on Datadog Team handle and GitHub Team slug + (lowercased and kebab-cased). + + This operation is read-only on the GitHub side, no teams will be modified or created. + + Optionally, provide `selection_state` to limit synchronization + to specific teams or organizations and their subtrees, instead + of syncing all teams. + + [A GitHub organization must be connected to your Datadog account](https://docs.datadoghq.com/integrations/github/), + and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug + using a normalized exact match; case is ignored and spaces are removed. No modifications are made + to teams in GitHub. This only creates new teams in Datadog when type is set to `provision`. + operationId: SyncTeams + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + source: github + type: link + type: team_sync_bulk + schema: + $ref: '#/components/schemas/TeamSyncRequest' + required: true + responses: + '200': + description: OK + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal Server Error - Unexpected error during linking. + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_manage + summary: Link Teams with GitHub Teams + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - teams_manage + /api/v2/team/{super_team_id}/member_teams: + get: + deprecated: true + description: |- + Get all member teams. + + **Note**: This API is deprecated. For team hierarchy relationships (parent-child + teams), use the team hierarchy links API: `GET /api/v2/team-hierarchy-links`. + operationId: ListMemberTeams + parameters: + - description: None + in: path + name: super_team_id + required: true + schema: + type: string + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: List of fields that need to be fetched. + explode: false + in: query + name: fields[team] + required: false + schema: + items: + $ref: '#/components/schemas/TeamsField' + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000005 + type: team + meta: + pagination: + offset: 0 + total: 1 + schema: + $ref: '#/components/schemas/TeamsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get all member teams + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - teams_read + x-sunset: '2026-06-01' + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + post: + deprecated: true + description: |- + Add a member team. + Adds the team given by the `id` in the body as a member team of the super team. + + **Note**: This API is deprecated. For creating team hierarchy links, use the team hierarchy links API: `POST /api/v2/team-hierarchy-links`. + operationId: AddMemberTeam + parameters: + - description: None + in: path + name: super_team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: member_teams + schema: + $ref: '#/components/schemas/AddMemberTeamRequest' + required: true + responses: + '204': + description: Added + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Add a member team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + x-sunset: '2026-06-01' + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/team/{super_team_id}/member_teams/{member_team_id}: + delete: + deprecated: true + description: |- + Remove a super team's member team identified by `member_team_id`. + + **Note**: This API is deprecated. For deleting team hierarchy links, use the team hierarchy links API: `DELETE /api/v2/team-hierarchy-links/{link_id}`. + operationId: RemoveMemberTeam + parameters: + - description: None + in: path + name: super_team_id + required: true + schema: + type: string + - description: None + in: path + name: member_team_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Remove a member team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + x-sunset: '2026-06-01' + x-unstable: |- + **Note**: This endpoint is in Preview. If you have any feedback, + contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/team/{team_id}: + delete: + description: Remove a team using the team's `id`. + operationId: DeleteTeam + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + - teams_manage + summary: Remove a team + tags: + - Teams + x-permission: + operator: AND + permissions: + - teams_read + - teams_manage + get: + description: Get a single team using the team's `id`. + operationId: GetTeam + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000003 + type: team + schema: + $ref: '#/components/schemas/TeamResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get a team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + patch: + description: |- + Update a team using the team's `id`. + If the `team_links` relationship is present, the associated links are updated to be in the order they appear in the array, and any existing team links not present are removed. + operationId: UpdateTeam + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + avatar: 🥑 + handle: example-team + name: Example Team + relationships: + team_links: + data: + - id: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + links: + related: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links + type: team + schema: + $ref: '#/components/schemas/TeamUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: example-team + name: Example Team + id: 00000000-0000-0000-0000-000000000004 + type: team + schema: + $ref: '#/components/schemas/TeamResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update a team + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/links: + get: + description: Get all links for a given team. + operationId: GetTeamLinks + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + label: Link label + position: 0 + url: https://example.com + id: 00000000-0000-0000-0000-000000000001 + type: team_links + schema: + $ref: '#/components/schemas/TeamLinksResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get links for a team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + post: + description: Add a new link to a team. + operationId: CreateTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + position: 0 + url: https://example.com + type: team_links + schema: + $ref: '#/components/schemas/TeamLinkCreateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + url: https://example.com + id: 00000000-0000-0000-0000-000000000002 + type: team_links + schema: + $ref: '#/components/schemas/TeamLinkResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Create a team link + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/links/{link_id}: + delete: + description: Remove a link from a team. + operationId: DeleteTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: link_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Remove a team link + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + get: + description: Get a single link for a team. + operationId: GetTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: link_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + position: 0 + url: https://example.com + id: 00000000-0000-0000-0000-000000000003 + type: team_links + schema: + $ref: '#/components/schemas/TeamLinkResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get a team link + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + patch: + description: Update a team link. + operationId: UpdateTeamLink + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: link_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + url: https://example.com + type: team_links + schema: + $ref: '#/components/schemas/TeamLinkCreateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + label: Link label + position: 0 + url: https://example.com + id: 00000000-0000-0000-0000-000000000004 + type: team_links + schema: + $ref: '#/components/schemas/TeamLinkResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update a team link + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/memberships: + get: + description: Get a paginated list of members for a team + operationId: GetTeamMemberships + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: Specifies the order of returned team memberships + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/GetTeamMembershipsSort' + - description: Search query, can be user email or name + in: query + name: filter[keyword] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + role: admin + id: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + type: team_memberships + schema: + $ref: '#/components/schemas/UserTeamsResponse' + description: Represents a user's association to a team + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team memberships + tags: + - Teams + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - teams_read + post: + description: |- + Add a user to a team. + + **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership). + operationId: CreateTeamMembership + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + relationships: + team: + data: + id: d7e15d9d-d346-43da-81d8-3d9e71d9a5e9 + type: team + user: + data: + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: users + type: team_memberships + schema: + $ref: '#/components/schemas/UserTeamRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + id: 00000000-0000-0000-0000-000000000001 + type: team_memberships + schema: + $ref: '#/components/schemas/UserTeamResponse' + description: Represents a user's association to a team + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Add a user to a team + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/memberships/{user_id}: + delete: + description: |- + Remove a user from a team. + + **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership). + operationId: DeleteTeamMembership + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: user_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Remove a user from a team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + patch: + description: |- + Update a user's membership attributes on a team. + + **Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https://docs.datadoghq.com/account_management/teams/manage/#team-membership). + operationId: UpdateTeamMembership + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: user_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + type: team_memberships + schema: + $ref: '#/components/schemas/UserTeamUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + role: admin + id: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + type: team_memberships + schema: + $ref: '#/components/schemas/UserTeamResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update a user's membership attributes on a team + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/notification-rules: + get: + operationId: GetTeamNotificationRules + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000001 + type: team_notification_rules + schema: + $ref: '#/components/schemas/TeamNotificationRulesResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team notification rules + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + post: + operationId: CreateTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-ops + workspace: Datadog + type: team_notification_rules + schema: + $ref: '#/components/schemas/TeamNotificationRuleRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000002 + type: team_notification_rules + schema: + $ref: '#/components/schemas/TeamNotificationRuleResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Create team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/notification-rules/{rule_id}: + delete: + operationId: DeleteTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: rule_id + required: true + schema: + type: string + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Delete team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + get: + operationId: GetTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: rule_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000003 + type: team_notification_rules + schema: + $ref: '#/components/schemas/TeamNotificationRuleResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + put: + operationId: UpdateTeamNotificationRule + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: rule_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + pagerduty: + service_name: Datadog-prod + slack: + channel: test-ops + workspace: Datadog + id: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: team_notification_rules + schema: + $ref: '#/components/schemas/TeamNotificationRuleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: + enabled: true + slack: + channel: test-channel + workspace: Datadog + id: 00000000-0000-0000-0000-000000000004 + type: team_notification_rules + schema: + $ref: '#/components/schemas/TeamNotificationRuleResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update team notification rule + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/permission-settings: + get: + description: Get all permission settings for a given team. + operationId: GetTeamPermissionSettings + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + action: edit + editable: true + value: admins + id: TeamPermission-abc-123-edit + type: team_permission_settings + schema: + $ref: '#/components/schemas/TeamPermissionSettingsResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get permission settings for a team + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/team/{team_id}/permission-settings/{action}: + put: + description: Update a team permission setting for a given team. + operationId: UpdateTeamPermissionSetting + parameters: + - description: None + in: path + name: team_id + required: true + schema: + type: string + - description: None + in: path + name: action + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + value: admins + type: team_permission_settings + schema: + $ref: '#/components/schemas/TeamPermissionSettingUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + action: edit + editable: true + value: admins + id: TeamPermission-abc-123-edit + type: team_permission_settings + schema: + $ref: '#/components/schemas/TeamPermissionSettingResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Update permission setting for team + tags: + - Teams + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/usage/application_security: + get: + deprecated: true + description: |- + Get hourly usage for application security . + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) + operationId: GetUsageApplicationSecurityMonitoring + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/UsageApplicationSecurityMonitoringResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for application security + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/usage/billing_dimension_mapping: + get: + description: |- + Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints. + Mapping data is updated on a monthly cadence. + + This endpoint is only accessible to [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetBillingDimensionMapping + parameters: + - description: Datetime in ISO-8601 format, UTC, and for mappings beginning this month. Defaults to the current month. + in: query + name: filter[month] + required: false + schema: + format: date-time + type: string + - description: String to specify whether to retrieve active billing dimension mappings for the contract or for all available mappings. Allowed views have the string `active` or `all`. Defaults to `active`. + in: query + name: filter[view] + required: false + schema: + default: active + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/BillingDimensionsMappingResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get billing dimension mapping for usage endpoints + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/usage/cost_by_org: + get: + deprecated: true + description: |- + Get cost across multi-org account. + Cost by org data for a given month becomes available no later than the 16th of the following month. + **Note:** This endpoint has been deprecated. Please use the new endpoint + [`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account) + instead. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetCostByOrg + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month.' + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.' + in: query + name: end_month + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/CostByOrgResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get cost across multi-org account + tags: + - Usage Metering + x-permission: + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/estimated_cost: + get: + description: |- + Get estimated cost across multi-org and single root-org accounts. + Estimated cost data is only available for the current month and previous month + and is delayed by up to 72 hours from when it was incurred. + To access historical costs prior to this, use the `/historical_cost` endpoint. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetEstimatedCostByOrg + parameters: + - description: String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults to `summary`. + in: query + name: view + required: false + schema: + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month. **Either start_month or start_date should be specified, but not both.** (start_month cannot go beyond two months in the past). Provide an `end_month` to view month-over-month cost.' + in: query + name: start_month + required: false + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.' + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost beginning this day. **Either start_month or start_date should be specified, but not both.** (start_date cannot go beyond two months in the past). Provide an `end_date` to view day-over-day cumulative cost.' + in: query + name: start_date + required: false + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost ending this day.' + in: query + name: end_date + required: false + schema: + format: date-time + type: string + - description: Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals. + in: query + name: cost_aggregation + required: false + schema: + $ref: '#/components/schemas/CostAggregationType' + - description: Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/CostByOrgResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get estimated cost across your account + tags: + - Usage Metering + x-permission: + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/historical_cost: + get: + description: |- + Get historical cost across multi-org and single root-org accounts. + Cost data for a given month becomes available no later than the 16th of the following month. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetHistoricalCostByOrg + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month.' + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults to `summary`. + in: query + name: view + required: false + schema: + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.' + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/CostByOrgResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get historical cost across your account + tags: + - Usage Metering + x-permission: + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/hourly_usage: + get: + description: Get hourly usage by product family. + operationId: GetHourlyUsage + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: filter[timestamp][start] + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: filter[timestamp][end] + required: false + schema: + format: date-time + type: string + - description: |- + Comma separated list of product families to retrieve. Available families are `all`, `ai`, `analyzed_logs`, + `application_performance_monitoring`, `application_security`, `audit_trail`, `bits_ai`, `serverless`, `ci_app`, + `cloud_cost_management`, `cloud_siem`, `csm_container_enterprise`, `csm_host_enterprise`, `csm_host_pro`, `cspm`, + `custom_events`, `cws`, `data_observability`, `dbm`, `digital_experience_management`, `error_tracking`, + `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `infrastructure_monitoring`, + `ingested_spans`, `iot`, `lambda_traced_invocations`, `llm_observability`, `log_management`, `logs`, + `network_flows`, `network_hosts`, `network_monitoring`, `observability_pipelines`, `online_archive`, + `platform_capabilities`, `product_analytics`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, + `sds`, `security`, `snmp`, `software_delivery`, `synthetics_api`, `synthetics_browser`, + `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, `vuln_management` and `workflow_executions`. + The following product family has been **deprecated**: `audit_logs`. + in: query + name: filter[product_families] + required: true + schema: + type: string + - description: Include child org usage in the response. Defaults to false. + in: query + name: filter[include_descendants] + required: false + schema: + default: false + type: boolean + - description: Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to false. + in: query + name: filter[include_connected_accounts] + required: false + schema: + default: false + type: boolean + - description: Include breakdown of usage by subcategories where applicable (for product family logs only). Defaults to false. + in: query + name: filter[include_breakdown] + required: false + schema: + default: false + type: boolean + - description: |- + Comma separated list of product family versions to use in the format `product_family:version`. For example, + `infra_hosts:1.0.0`. If this parameter is not used, the API will use the latest version of each requested + product family. Currently all families have one version `1.0.0`. + in: query + name: filter[versions] + required: false + schema: + type: string + - description: Maximum number of results to return (between 1 and 500) - defaults to 500 if limit not specified. + in: query + name: page[limit] + required: false + schema: + default: 500 + format: int32 + maximum: 500 + minimum: 1 + type: integer + - description: List following results with a next_record_id provided in the previous query. + in: query + name: page[next_record_id] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: abc-123 + type: usage_timeseries + schema: + $ref: '#/components/schemas/HourlyUsageResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage by product family + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/usage/lambda_traced_invocations: + get: + deprecated: true + description: |- + Get hourly usage for Lambda traced invocations. + **Note:** This endpoint has been deprecated.. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) + operationId: GetUsageLambdaTracedInvocations + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/UsageLambdaTracedInvocationsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for Lambda traced invocations + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/usage/observability_pipelines: + get: + deprecated: true + description: |- + Get hourly usage for observability pipelines. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) + operationId: GetUsageObservabilityPipelines + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/UsageObservabilityPipelinesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for observability pipelines + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/usage/projected_cost: + get: + description: |- + Get projected cost across multi-org and single root-org accounts. + Projected cost data is only available for the current month and becomes available around the 12th of the month. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetProjectedCost + parameters: + - description: String to specify whether cost is broken down at a parent-org level or at the sub-org level. Available views are `summary` and `sub-org`. Defaults to `summary`. + in: query + name: view + required: false + schema: + type: string + - description: Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/ProjectedCostResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + - billing_read + summary: Get projected cost across your account + tags: + - Usage Metering + x-permission: + operator: AND + permissions: + - usage_read + - billing_read + /api/v2/usage/summary/available_fields: + get: + description: |- + List the field names returned by `GET /api/v1/usage/summary` at each of its + three response levels. Each list contains every key the data endpoint + emits—both typed fields declared in the OpenAPI spec and untyped keys + exposed through `additionalProperties` (the latter used for billing + dimensions and usage types added after the v1 schema freeze). + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + Go example: + + ```go + fields, _, err := api.GetUsageSummaryAvailableFields(ctx) + attr := fields.Data.GetAttributes() + + // resp is the *UsageSummaryResponse returned by api.GetUsageSummary(ctx, ...) + // Layer 1: UsageSummaryResponse + for _, key := range attr.GetResponseFields() { + if val, ok := resp.AdditionalProperties[key]; ok { + fmt.Println(key, val.(json.Number)) + } + } + // Layer 2: UsageSummaryDate (per month) + for _, date := range resp.GetUsage() { + for _, key := range attr.GetDateFields() { + if val, ok := date.AdditionalProperties[key]; ok { + fmt.Println(key, val.(json.Number)) + } + } + // Layer 3: UsageSummaryDateOrg (per org per month) + for _, org := range date.GetOrgs() { + for _, key := range attr.GetDateOrgFields() { + if val, ok := org.AdditionalProperties[key]; ok { + fmt.Println(key, val.(json.Number)) + } + } + } + } + ``` + operationId: GetUsageSummaryAvailableFields + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + date_fields: + - agent_host_top99p + - aws_host_top99p + - ccm_anthropic_spend_last + date_org_fields: + - agent_host_top99p + - aws_host_top99p + - ccm_anthropic_spend_last + response_fields: + - agent_host_top99p_sum + - aws_host_top99p_sum + - ccm_anthropic_spend_last_sum + id: all + type: usage_summary_available_fields + schema: + $ref: '#/components/schemas/UsageSummaryAvailableFieldsResponse' + description: OK. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized. + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests. + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get available fields for usage summary + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/usage/usage-attribution-types: + get: + description: Get usage attribution types. + operationId: GetUsageAttributionTypes + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: abc-123 + type: usage_attribution_types + schema: + $ref: '#/components/schemas/UsageAttributionTypesResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get usage attribution types + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v2/user_authorized_clients: + get: + description: Get a list of all OAuth2 clients authorized by the current user. + operationId: ListUserAuthorizedClients + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: Filter results by client name, app title, or app description. + in: query + name: filter + required: false + schema: + type: string + - description: Filter results by the user-level disabled status. + in: query + name: filter[disabled] + required: false + schema: + type: string + - description: 'Comma-separated list of related resources to include. Options: `oauth2_client`, `oauth2_client.app`.' + in: query + name: include + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-10T08:00:00+00:00' + disabled: false + last_exercised: '2024-01-15T10:30:00+00:00' + modified_at: '2024-01-10T08:00:00+00:00' + org_disabled: false + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2_client: + data: + id: 00000000-0000-0000-0000-000000000010 + type: oauth2_clients + scopes: + data: + - id: example_scope + type: scopes + user: + data: + id: 00000000-0000-9999-0000-000000000001 + type: users + type: user_authorized_clients + meta: + page: + total_count: 1 + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/UserAuthorizedClientsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - built_in_features + summary: List user authorized clients + tags: + - User Authorized Clients + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + /api/v2/user_authorized_clients/client/{client_id}: + delete: + description: Disable all authorizations the current user has granted to the specified OAuth2 client. + operationId: DeleteUserAuthorizedClientsByClient + parameters: + - $ref: '#/components/parameters/OAuth2ClientId' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete all user authorized clients for a client + tags: + - User Authorized Clients + /api/v2/user_authorized_clients/{user_authorized_client_id}: + delete: + description: Disable the current user's authorization for the specified OAuth2 client. + operationId: DeleteUserAuthorizedClient + parameters: + - $ref: '#/components/parameters/UserAuthorizedClientId' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - built_in_features + summary: Delete a user authorized client + tags: + - User Authorized Clients + get: + description: Get a single OAuth2 client authorization for the current user. + operationId: GetUserAuthorizedClient + parameters: + - $ref: '#/components/parameters/UserAuthorizedClientId' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-10T08:00:00+00:00' + disabled: false + last_exercised: '2024-01-15T10:30:00+00:00' + modified_at: '2024-01-10T08:00:00+00:00' + org_disabled: false + id: 00000000-0000-0000-0000-000000000001 + relationships: + oauth2_client: + data: + id: 00000000-0000-0000-0000-000000000010 + type: oauth2_clients + scopes: + data: + - id: example_scope + type: scopes + user: + data: + id: 00000000-0000-9999-0000-000000000001 + type: users + type: user_authorized_clients + schema: + $ref: '#/components/schemas/UserAuthorizedClientResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - built_in_features + summary: Get a user authorized client + tags: + - User Authorized Clients + /api/v2/user_invitations: + post: + description: Sends emails to one or more users inviting them to join the organization. + operationId: SendInvitations + requestBody: + content: + application/json: + examples: + default: + value: + data: + - relationships: + user: + data: + id: 6cf192b6-d1d9-11ec-ad3d-da7ad0900002 + type: users + type: user_invitations + schema: + $ref: '#/components/schemas/UserInvitationsRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + expires_at: '2024-01-08T00:00:00+00:00' + invite_type: email + uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000007 + type: user_invitations + schema: + $ref: '#/components/schemas/UserInvitationsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Send invitation emails + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_invite + /api/v2/user_invitations/{user_invitation_uuid}: + get: + description: Returns a single user invitation by its UUID. + operationId: GetInvitation + parameters: + - description: The UUID of the user invitation. + in: path + name: user_invitation_uuid + required: true + schema: + example: 00000000-0000-0000-3456-000000000000 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + invite_type: email + uuid: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000008 + type: user_invitations + schema: + $ref: '#/components/schemas/UserInvitationResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Get a user invitation + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_invite + /api/v2/users: + get: + description: |- + Get the list of all users in the organization. This list includes + all users even if they are deactivated or unverified. + operationId: ListUsers + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: |- + User attribute to order results by. Sort order is ascending by default. + Sort order is descending if the field + is prefixed by a negative sign, for example `sort=-name`. Options: `name`, + `modified_at`, `user_count`. + in: query + name: sort + required: false + schema: + default: name + example: name + type: string + - description: 'Direction of sort. Options: `asc`, `desc`.' + in: query + name: sort_dir + required: false + schema: + $ref: '#/components/schemas/QuerySortOrder' + - description: Filter all users by the given string. Defaults to no filtering. + in: query + name: filter + required: false + schema: + type: string + - description: |- + Filter on status attribute. + Comma separated list, with possible values `Active`, `Pending`, and `Disabled`. + Defaults to no filtering. + in: query + name: filter[status] + required: false + schema: + example: Active + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000001 + type: users + included: [] + meta: {} + schema: + $ref: '#/components/schemas/UsersResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List all users + tags: + - Users + x-codegen-request-body-name: body + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - user_access_read + post: + description: Create a user for your organization. + operationId: CreateUser + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + email: jane.doe@example.com + relationships: + roles: + data: + - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: users + schema: + $ref: '#/components/schemas/UserCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000002 + type: users + included: [] + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Create a user + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_invite + /api/v2/users/{user_id}: + delete: + description: |- + Disable a user. Can only be used with an application key belonging + to an administrator user. + operationId: DisableUser + parameters: + - $ref: '#/components/parameters/UserID' + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Disable a user + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + - service_account_write + get: + description: Get a user in the organization specified by the user’s `user_id`. + operationId: GetUser + parameters: + - $ref: '#/components/parameters/UserID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000003 + type: users + included: [] + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get user details + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_read + patch: + description: |- + Edit a user. Can only be used with an application key belonging + to an administrator user. + operationId: UpdateUser + parameters: + - $ref: '#/components/parameters/UserID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-feed-0000-000000000000 + type: users + schema: + $ref: '#/components/schemas/UserUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000004 + type: users + included: [] + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Update a user + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + - service_account_write + /api/v2/users/{user_id}/identity_providers: + get: + description: |- + Get the identity provider overrides for a specific user in the organization. + When a user has no overrides set, they use the organization's default identity providers. + operationId: GetUserIdentityProviders + parameters: + - $ref: '#/components/parameters/UserID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + authentication_method: SAML + id: 00000000-0000-0000-0000-000000000001 + type: identity_providers + schema: + $ref: '#/components/schemas/UserOverrideIdentityProvidersResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Get identity provider overrides for a user + tags: + - Users + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/users/{user_id}/invitations: + delete: + description: |- + Cancel all pending invitations for a specified user. + Requires the `user_access_invite` permission. + operationId: DeleteUserInvitations + parameters: + - description: The UUID of the user whose pending invitations should be canceled. + in: path + name: user_id + required: true + schema: + example: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + format: uuid + type: string + responses: + '200': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_invite + summary: Delete a pending user's invitations + tags: + - Users + x-permission: + operator: OR + permissions: + - user_access_invite + /api/v2/users/{user_id}/orgs: + get: + description: |- + Get a user organization. Returns the user information and all organizations + joined by this user. + operationId: ListUserOrganizations + parameters: + - $ref: '#/components/parameters/UserID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + email: test@example.com + handle: example-handle + name: Example Name + status: Active + id: 00000000-0000-0000-0000-000000000005 + type: users + included: [] + schema: + $ref: '#/components/schemas/UserResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get a user organization + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OPEN + permissions: [] + /api/v2/users/{user_id}/permissions: + get: + description: |- + Get a user permission set. Returns a list of the user’s permissions + granted by the associated user's roles. + operationId: ListUserPermissions + parameters: + - $ref: '#/components/parameters/UserID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + display_name: Logs Read Data + display_type: read + name: logs_read_data + restricted: false + id: 00000000-0000-0000-0000-000000000006 + type: permissions + schema: + $ref: '#/components/schemas/PermissionsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: Get a user permissions + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_read + /api/v2/users/{user_id}/relationships/identity_providers: + patch: + description: |- + Set the identity provider overrides for a specific user in the organization. + Pass an empty list to remove all overrides, reverting the user to the organization's + default identity providers. + operationId: UpdateUserIdentityProviders + parameters: + - $ref: '#/components/parameters/UserID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: identity_providers + schema: + $ref: '#/components/schemas/UpdateUserIdentityProvidersRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_manage + summary: Update identity provider overrides for a user + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_manage + /api/v2/users/{user_uuid}/memberships: + get: + description: Get a list of memberships for a user + operationId: GetUserMemberships + parameters: + - description: None + in: path + name: user_uuid + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + role: admin + id: 00000000-0000-0000-0000-000000000001 + type: team_memberships + schema: + $ref: '#/components/schemas/UserTeamsResponse' + description: Represents a user's association to a team + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - teams_read + summary: Get user memberships + tags: + - Teams + x-permission: + operator: OR + permissions: + - teams_read + /api/v2/validate: + get: + description: Check if the API key is valid. Returns the organization UUID, API key ID, and associated scopes. + operationId: Validate + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + api_key_id: a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6 + api_key_scopes: + - remote_config_read + valid: true + id: 550e8400-e29b-41d4-a716-446655440000 + type: validate_v2 + schema: + $ref: '#/components/schemas/ValidateV2Response' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Validate API key + tags: + - Key Management + x-permission: + operator: OPEN + permissions: [] + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/validate_keys: + get: + description: |- + Check that the API key and application key used for the request are both valid. + Returns `{"status": "ok"}` on success, `401` or `403` otherwise. Useful as a + lightweight authentication probe before issuing other API calls that require + full credentials. + operationId: ValidateAPIKey + responses: + '200': + content: + application/json: + examples: + default: + value: + status: ok + schema: + $ref: '#/components/schemas/ValidateAPIKeyResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unauthorized + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Validate API and application keys + tags: + - Key Management + x-permission: + operator: OPEN + permissions: [] + /: + get: + description: Get information about Datadog IP ranges. + operationId: GetIPRanges + responses: + '200': + content: + application/json: + examples: + default: + value: + agents: + prefixes_ipv4: + - 1.2.3.4/32 + prefixes_ipv6: [] + api: + prefixes_ipv4: + - 1.2.3.4/32 + prefixes_ipv6: [] + apm: + prefixes_ipv4: + - 1.2.3.4/32 + prefixes_ipv6: [] + logs: + prefixes_ipv4: + - 1.2.3.4/32 + prefixes_ipv6: [] + modified: 2019-10-31-20-00-00 + process: + prefixes_ipv4: + - 1.2.3.4/32 + prefixes_ipv6: [] + version: 11 + webhooks: + prefixes_ipv4: + - 1.2.3.4/32 + prefixes_ipv6: [] + schema: + $ref: '#/components/schemas/IPRanges' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: [] + summary: List IP Ranges + tags: + - IP Ranges + servers: + - url: https://ip-ranges.{site:.+} + variables: + site: + default: datadoghq.com + description: The regional site for Datadog customers. + x-stackQL-envVar: DD_SITE + /api/v1/api_key: + get: + description: |- + Get all API keys available for your account. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: ListAPIKeysV1 + responses: + '200': + content: + application/json: + examples: + default: + value: + api_keys: + - created: '2024-01-01T00:00:00+00:00' + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: '#/components/schemas/ApiKeyListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all API keys + tags: + - Key Management + x-permission: + operator: OR + permissions: + - api_keys_read + post: + description: |- + Creates an API key with a given name. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: CreateAPIKeyV1 + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: '#/components/schemas/ApiKey' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + api_key: + created: '2024-01-01T00:00:00+00:00' + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: '#/components/schemas/ApiKeyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an API key + tags: + - Key Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - api_keys_write + /api/v1/api_key/{key}: + delete: + description: |- + Delete a given API key. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: DeleteAPIKeyV1 + parameters: + - description: The specific API key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + api_key: + created: '2024-01-01T00:00:00+00:00' + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: '#/components/schemas/ApiKeyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an API key + tags: + - Key Management + x-permission: + operator: OR + permissions: + - api_keys_delete + get: + description: |- + Get a given API key. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: GetAPIKeyV1 + parameters: + - description: The specific API key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + api_key: + created: '2024-01-01T00:00:00+00:00' + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: '#/components/schemas/ApiKeyResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get API key + tags: + - Key Management + x-permission: + operator: OR + permissions: + - api_keys_read + put: + description: |- + Edit an API key name. + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: UpdateAPIKeyV1 + parameters: + - description: The specific API key you are working with. + in: path + name: key + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: '#/components/schemas/ApiKey' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + api_key: + created: '2024-01-01T00:00:00+00:00' + created_by: test@example.com + key: abc123example456key789placeholder0 + name: app_key + schema: + $ref: '#/components/schemas/ApiKeyResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Edit an API key + tags: + - Key Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - api_keys_write + /api/v1/application_key: + get: + description: |- + Get all application keys available for your Datadog account. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: ListApplicationKeysV1 + responses: + '200': + content: + application/json: + examples: + default: + value: + application_keys: + - hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: '#/components/schemas/ApplicationKeyListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all application keys + tags: + - Key Management + x-permission: + operator: OR + permissions: + - org_app_keys_read + - user_app_keys + post: + description: |- + Create an application key with a given name. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: CreateApplicationKey + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: '#/components/schemas/ApplicationKey' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: '#/components/schemas/ApplicationKeyResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create an application key + tags: + - Key Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_app_keys + /api/v1/application_key/{key}: + delete: + description: |- + Delete a given application key. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: DeleteApplicationKeyV1 + parameters: + - description: The specific APP key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: '#/components/schemas/ApplicationKeyResponseV1' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an application key + tags: + - Key Management + x-permission: + operator: OR + permissions: + - org_app_keys_write + - user_app_keys + get: + description: |- + Get a given application key. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: GetApplicationKeyV1 + parameters: + - description: The specific APP key you are working with. + in: path + name: key + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: '#/components/schemas/ApplicationKeyResponseV1' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an application key + tags: + - Key Management + x-permission: + operator: OR + permissions: + - org_app_keys_read + - user_app_keys + put: + description: |- + Edit an application key name. + This endpoint is disabled for organizations in [One-Time Read mode](https://docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). + + **Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https://docs.datadoghq.com/api/latest/key-management/) endpoints instead. + operationId: UpdateApplicationKeyV1 + parameters: + - description: The specific APP key you are working with. + in: path + name: key + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + name: example key + schema: + $ref: '#/components/schemas/ApplicationKey' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test@example.com + schema: + $ref: '#/components/schemas/ApplicationKeyResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Edit an application key + tags: + - Key Management + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - org_app_keys_write + - user_app_keys + /api/v1/daily_custom_reports: + get: + deprecated: true + description: |- + Get daily custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetDailyCustomReports + parameters: + - description: The number of files to return in the response. `[default=60]`. + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + - description: 'The direction to sort by: `[desc, asc]`.' + in: query + name: sort_dir + required: false + schema: + $ref: '#/components/schemas/UsageSortDirection' + - description: 'The field to sort by: `[computed_on, size, start_date, end_date]`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/UsageSort' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + computed_on: '2024-01-02' + end_date: '2024-01-01' + size: 1024 + start_date: '2024-01-01' + tags: + - env + id: '2024-01-01' + type: reports + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/UsageCustomReportsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + summary: Get the list of available daily custom reports + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/daily_custom_reports/{report_id}: + get: + deprecated: true + description: |- + Get specified daily custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetSpecifiedDailyCustomReports + parameters: + - description: Date of the report in the format `YYYY-MM-DD`. + in: path + name: report_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + computed_on: '2024-01-02' + end_date: '2024-01-01' + location: https://example.s3.amazonaws.com/report.csv + size: 1024 + start_date: '2024-01-01' + tags: + - env + id: '2024-01-01' + type: reports + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/UsageSpecifiedCustomReportsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + summary: Get specified daily custom reports + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/monthly_custom_reports: + get: + deprecated: true + description: |- + Get monthly custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetMonthlyCustomReports + parameters: + - description: The number of files to return in the response `[default=60].` + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + - description: 'The direction to sort by: `[desc, asc]`.' + in: query + name: sort_dir + required: false + schema: + $ref: '#/components/schemas/UsageSortDirection' + - description: 'The field to sort by: `[computed_on, size, start_date, end_date]`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/UsageSort' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + computed_on: '2024-02-01' + end_date: '2024-01-31' + size: 2048 + start_date: '2024-01-01' + tags: + - env + id: 2024-01 + type: reports + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/UsageCustomReportsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + summary: Get the list of available monthly custom reports + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/monthly_custom_reports/{report_id}: + get: + deprecated: true + description: |- + Get specified monthly custom reports. + **Note:** This endpoint will be fully deprecated on December 1, 2022. + Refer to [Migrating from v1 to v2 of the Usage Attribution API](https://docs.datadoghq.com/account_management/guide/usage-attribution-migration/) for the associated migration guide. + operationId: GetSpecifiedMonthlyCustomReports + parameters: + - description: Date of the report in the format `YYYY-MM-DD`. + in: path + name: report_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + computed_on: '2024-02-01' + end_date: '2024-01-31' + location: https://example.s3.amazonaws.com/report.csv + size: 2048 + start_date: '2024-01-01' + tags: + - env + id: 2024-01 + type: reports + meta: + page: + total_count: 1 + schema: + $ref: '#/components/schemas/UsageSpecifiedCustomReportsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + summary: Get specified monthly custom reports + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/org: + get: + description: This endpoint returns data on your top-level organization. + operationId: ListOrgsV1 + responses: + '200': + content: + application/json: + examples: + default: + value: + orgs: + - created: '2019-09-26T17:28:28Z' + name: Example Org + public_id: abc-123 + schema: + $ref: '#/components/schemas/OrganizationListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List your managed organizations + tags: + - Organizations + x-permission: + operator: OR + permissions: + - org_management + post: + description: |- + Create a child organization. + + This endpoint requires the + [multi-organization account](https://docs.datadoghq.com/account_management/multi_organization/) + feature and must be enabled by + [contacting support](https://docs.datadoghq.com/help/). + + Once a new child organization is created, you can interact with it + by using the `org.public_id`, `api_key.key`, and + `application_key.hash` provided in the response. + operationId: CreateChildOrg + requestBody: + content: + application/json: + examples: + default: + value: + billing: + type: parent_billing + name: New child org + subscription: + type: pro + schema: + $ref: '#/components/schemas/OrganizationCreateBody' + description: Organization object that needs to be created + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + org: + created: '2019-09-26T17:28:28Z' + name: New child org + public_id: abc-123 + user: + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: '#/components/schemas/OrganizationCreateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a child organization + tags: + - Organizations + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - org_management + /api/v1/org/{public_id}: + get: + description: Get organization information. + operationId: GetOrg + parameters: + - description: The `public_id` of the organization you are operating within. + in: path + name: public_id + required: true + schema: + example: abc123 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + org: + created: '2019-09-26T17:28:28Z' + name: Example Org + public_id: abc-123 + schema: + $ref: '#/components/schemas/OrganizationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get organization information + tags: + - Organizations + put: + description: Update your organization. + operationId: UpdateOrg + parameters: + - description: The `public_id` of the organization you are operating within. + in: path + name: public_id + required: true + schema: + example: abc123 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + billing: + type: parent_billing + name: New child org + settings: + saml: + enabled: false + saml_idp_initiated_login: + enabled: false + saml_strict_mode: + enabled: false + schema: + $ref: '#/components/schemas/OrganizationV1' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + org: + created: '2019-09-26T17:28:28Z' + name: Example Org + public_id: abc-123 + schema: + $ref: '#/components/schemas/OrganizationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update your organization + tags: + - Organizations + x-codegen-request-body-name: body + /api/v1/org/{public_id}/downgrade: + post: + description: Only available for MSP customers. Removes a child organization from the hierarchy of the master organization and places the child organization on a 30-day trial. + operationId: DowngradeOrg + parameters: + - description: The `public_id` of the organization you are operating within. + in: path + name: public_id + required: true + schema: + example: abc123 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + message: Child organization abc-123 downgraded successfully + schema: + $ref: '#/components/schemas/OrgDowngradedResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Spin-off Child Organization + tags: + - Organizations + /api/v1/org/{public_id}/idp_metadata: + post: + description: |- + There are a couple of options for updating the Identity Provider (IdP) + metadata from your SAML IdP. + + * **Multipart Form-Data**: Post the IdP metadata file using a form post. + + * **XML Body:** Post the IdP metadata file as the body of the request. + operationId: UploadIdPForOrg + parameters: + - description: The `public_id` of the organization you are operating with + in: path + name: public_id + required: true + schema: + example: abc123 + type: string + requestBody: + content: + multipart/form-data: + examples: + default: + value: + idp_file: '@/path/to/idp_metadata.xml' + schema: + $ref: '#/components/schemas/IdpFormData' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + message: IdP metadata successfully uploaded for example org + schema: + $ref: '#/components/schemas/IdpResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '415': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Unsupported Media Type + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Upload IdP metadata + tags: + - Organizations + x-codegen-request-body-name: body + /api/v1/usage/analyzed_logs: + get: + deprecated: true + description: |- + Get hourly usage for analyzed logs (Security Monitoring). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageAnalyzedLogs + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - analyzed_logs: 50 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageAnalyzedLogsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for analyzed logs + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/audit_logs: + get: + deprecated: true + description: |- + Get hourly usage for audit logs. + **Note:** This endpoint has been deprecated. + operationId: GetUsageAuditLogs + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + lines_indexed: 1000 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageAuditLogsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for audit logs + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/aws_lambda: + get: + deprecated: true + description: |- + Get hourly usage for Lambda. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageLambda + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - func_count: 10 + hour: '2024-01-01T00:00:00+00:00' + invocations_sum: 100 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageLambdaResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for Lambda + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/billable-summary: + get: + description: |- + Get billable usage across your account. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetUsageBillableSummary + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage starting this month.' + in: query + name: month + required: false + schema: + format: date-time + type: string + - description: Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - account_name: Example Name + account_public_id: abc-123 + end_date: '2024-01-31T00:00:00+00:00' + num_orgs: 1 + org_name: example-handle + public_id: abc-123 + start_date: '2024-01-01T00:00:00+00:00' + schema: + $ref: '#/components/schemas/UsageBillableSummaryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get billable usage across your account + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/ci-app: + get: + deprecated: true + description: |- + Get hourly usage for CI visibility (tests, pipeline, and spans). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageCIApp + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - ci_pipeline_indexed_spans: 1000 + ci_test_indexed_spans: 2000 + ci_visibility_itr_committers: 5 + ci_visibility_pipeline_committers: 3 + ci_visibility_test_committers: 10 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageCIVisibilityResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for CI visibility + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/cspm: + get: + deprecated: true + description: |- + Get hourly usage for cloud security management (CSM) pro. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageCloudSecurityPostureManagement + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - aws_host_count: 2 + azure_host_count: 1 + container_count: 10 + gcp_host_count: 1 + host_count: 5 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageCloudSecurityPostureManagementResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for CSM Pro + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/cws: + get: + deprecated: true + description: |- + Get hourly usage for cloud workload security. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageCWS + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - cws_container_count: 10 + cws_host_count: 5 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageCWSResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for cloud workload security + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/dbm: + get: + deprecated: true + description: |- + Get hourly usage for database monitoring + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageDBM + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - dbm_host_count: 5 + dbm_queries_count: 100 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageDBMResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for database monitoring + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/fargate: + get: + deprecated: true + description: |- + Get hourly usage for [Fargate](https://docs.datadoghq.com/integrations/ecs_fargate/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageFargate + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - apm_fargate_count: 2 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + tasks_count: 5 + schema: + $ref: '#/components/schemas/UsageFargateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for Fargate + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/hosts: + get: + deprecated: true + description: |- + Get hourly usage for hosts and containers. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageHosts + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - agent_host_count: 1 + apm_host_count: 1 + aws_host_count: 0 + container_count: 2 + gcp_host_count: 0 + host_count: 1 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageHostsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for hosts and containers + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/hourly-attribution: + get: + description: |- + Get hourly usage attribution. Multi-region data is available starting March 1, 2023. + + This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is + set in the response. If it is, make another request and pass `next_record_id` as a parameter. + Pseudo code example: + + ``` + response := GetHourlyUsageAttribution(start_month) + cursor := response.metadata.pagination.next_record_id + WHILE cursor != null BEGIN + sleep(5 seconds) # Avoid running into rate limit + response := GetHourlyUsageAttribution(start_month, next_record_id=cursor) + cursor := response.metadata.pagination.next_record_id + END + ``` + operationId: GetHourlyUsageAttribution + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + - description: |- + Usage type to retrieve. Usage types are in the format `_usage`. + Example: `infra_host_usage` + To obtain the complete list of active usage types that can be used to replace + `` in the field names, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + in: query + name: usage_type + required: true + schema: + $ref: '#/components/schemas/HourlyUsageAttributionUsageType' + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + - description: |- + Comma separated list of tags used to group usage. If no value is provided the usage will not be broken down by tags. + + To see which tags are available, look for the value of `tag_config_source` in the API response. + in: query + name: tag_breakdown_keys + required: false + schema: + type: string + - description: Include child org usage in the response. Defaults to `true`. + in: query + name: include_descendants + required: false + schema: + default: true + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + metadata: + pagination: + next_record_id: null + usage: + - hour: '2024-01-01T00:00:00+00:00' + org_name: Test Org + public_id: abc-123 + region: us + total_usage_sum: 1 + updated_at: '2024-01-01T00:00:00+00:00' + usage_type: infra_host_usage + schema: + $ref: '#/components/schemas/HourlyUsageAttributionResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage attribution + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/incident-management: + get: + deprecated: true + description: |- + Get hourly usage for incident management. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetIncidentManagement + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + monthly_active_users: 5 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageIncidentManagementResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for incident management + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/indexed-spans: + get: + deprecated: true + description: |- + Get hourly usage for indexed spans. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageIndexedSpans + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + indexed_events_count: 500 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageIndexedSpansResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for indexed spans + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/ingested-spans: + get: + deprecated: true + description: |- + Get hourly usage for ingested spans. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetIngestedSpans + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + ingested_events_bytes: 1000000 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageIngestedSpansResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for ingested spans + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/iot: + get: + deprecated: true + description: |- + Get hourly usage for IoT. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageInternetOfThings + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + iot_device_count: 100 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageIoTResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for IoT + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/logs: + get: + deprecated: true + description: |- + Get hourly usage for logs. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageLogs + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - billable_ingested_bytes: 100 + hour: '2024-01-01T00:00:00+00:00' + indexed_events_count: 10 + ingested_events_bytes: 200 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageLogsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for logs + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/logs-by-retention: + get: + deprecated: true + description: |- + Get hourly usage for indexed logs by retention period. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageLogsByRetention + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - indexed_events_count: 100 + live_indexed_events_count: 80 + org_name: example-handle + public_id: abc-123 + rehydrated_indexed_events_count: 20 + retention: '15' + schema: + $ref: '#/components/schemas/UsageLogsByRetentionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly logs usage by retention + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/logs_by_index: + get: + description: Get hourly usage for logs by index. + operationId: GetUsageLogsByIndex + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + - description: Comma-separated list of log index names. + in: query + name: index_name + required: false + schema: + items: + type: string + type: array + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - event_count: 1000 + hour: '2024-01-01T00:00:00+00:00' + index_id: abc-123 + index_name: main + org_name: example-handle + public_id: abc-123 + retention: 15 + schema: + $ref: '#/components/schemas/UsageLogsByIndexResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for logs by index + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/monthly-attribution: + get: + description: |- + Get monthly usage attribution. Multi-region data is available starting March 1, 2023. + + This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is + set in the response. If it is, make another request and pass `next_record_id` as a parameter. + Pseudo code example: + + ``` + response := GetMonthlyUsageAttribution(start_month) + cursor := response.metadata.pagination.next_record_id + WHILE cursor != null BEGIN + sleep(5 seconds) # Avoid running into rate limit + response := GetMonthlyUsageAttribution(start_month, next_record_id=cursor) + cursor := response.metadata.pagination.next_record_id + END + ``` + operationId: GetMonthlyUsageAttribution + parameters: + - description: |- + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage beginning in this month. + Maximum of 15 months ago. + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage ending this month.' + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: |- + Comma-separated list of usage types to return, or `*` for all usage types. + Usage types are in the format `_usage` and `_percentage`. + Example: `infra_host_usage,infra_host_percentage` + To obtain the complete list of usage attribution types that can be used to replace + `` in the field names, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + in: query + name: fields + required: true + schema: + $ref: '#/components/schemas/MonthlyUsageAttributionSupportedMetrics' + - description: 'The direction to sort by: `[desc, asc]`.' + in: query + name: sort_direction + required: false + schema: + $ref: '#/components/schemas/UsageSortDirection' + - description: |- + The field to sort by. Sort fields are in the format `_usage`. + Example: `infra_host_usage` + To obtain the complete list of usage attribution types that can be used to replace + `` in the field names, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + in: query + name: sort_name + required: false + schema: + $ref: '#/components/schemas/MonthlyUsageAttributionSupportedMetrics' + - description: |- + Comma separated list of tag keys used to group usage. If no value is provided the usage will not be broken down by tags. + + To see which tags are available, look for the value of `tag_config_source` in the API response. + in: query + name: tag_breakdown_keys + required: false + schema: + type: string + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + - description: Include child org usage in the response. Defaults to `true`. + in: query + name: include_descendants + required: false + schema: + default: true + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + metadata: + pagination: + next_record_id: null + usage: + - month: '2024-01-01T00:00:00+00:00' + org_name: Test Org + public_id: abc-123 + region: us + updated_at: '2024-01-01T00:00:00+00:00' + values: + infra_host_percentage: 100 + infra_host_usage: 1 + schema: + $ref: '#/components/schemas/MonthlyUsageAttributionResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get monthly usage attribution + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/network_flows: + get: + deprecated: true + description: |- + Get hourly usage for network flows. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageNetworkFlows + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + indexed_events_count: 200 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageNetworkFlowsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: get hourly usage for network flows + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/network_hosts: + get: + deprecated: true + description: |- + Get hourly usage for network hosts. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageNetworkHosts + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - host_count: 5 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageNetworkHostsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for network hosts + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/online-archive: + get: + deprecated: true + description: |- + Get hourly usage for online archive. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageOnlineArchive + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + online_archive_events_count: 5000 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageOnlineArchiveResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for online archive + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/profiling: + get: + deprecated: true + description: |- + Get hourly usage for profiled hosts. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageProfiling + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - avg_container_agent_count: 2 + host_count: 5 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageProfilingResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for profiled hosts + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/rum: + get: + deprecated: true + description: |- + Get hourly usage for [RUM](https://docs.datadoghq.com/real_user_monitoring/) Units. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageRumUnits + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - browser_rum_units: 50 + mobile_rum_units: 50 + org_name: example-handle + public_id: abc-123 + rum_units: 100 + schema: + $ref: '#/components/schemas/UsageRumUnitsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for RUM units + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/rum_sessions: + get: + deprecated: true + description: |- + Get hourly usage for [RUM](https://docs.datadoghq.com/real_user_monitoring/) Sessions. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageRumSessions + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + - description: 'RUM type: `[browser, mobile]`. Defaults to `browser`.' + in: query + name: type + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + replay_session_count: 10 + session_count: 100 + schema: + $ref: '#/components/schemas/UsageRumSessionsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for RUM sessions + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/sds: + get: + deprecated: true + description: |- + Get hourly usage for sensitive data scanner. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSDS + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + logs_scanned_bytes: 1000000 + org_name: example-handle + public_id: abc-123 + total_scanned_bytes: 2000000 + schema: + $ref: '#/components/schemas/UsageSDSResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for sensitive data scanner + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/snmp: + get: + deprecated: true + description: |- + Get hourly usage for SNMP devices. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSNMP + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: |- + Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending + **before** this hour. + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + snmp_devices: 10 + schema: + $ref: '#/components/schemas/UsageSNMPResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for SNMP devices + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/summary: + get: + description: |- + Get all usage across your account. + + For SDK users only: all fields on `UsageSummaryResponse`, `UsageSummaryDate`, and + `UsageSummaryDateOrg` are accessible through each object's `additionalProperties` map. + Existing typed-field getters are unchanged. New billing dimensions will not have + typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key at each response level. + + This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + operationId: GetUsageSummary + parameters: + - description: |- + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage beginning in this month. + Maximum of 15 months ago. + in: query + name: start_month + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage ending this month.' + in: query + name: end_month + required: false + schema: + format: date-time + type: string + - description: Include usage summaries for each sub-org. + in: query + name: include_org_details + required: false + schema: + type: boolean + - description: Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + in: query + name: include_connected_accounts + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + apm_host_top99p_sum: 2 + container_avg_sum: 5 + end_date: '2024-01-31T00:00:00+00:00' + last_updated: '2024-01-01T00:00:00+00:00' + start_date: '2024-01-01T00:00:00+00:00' + usage: + - apm_host_top99p: 2 + container_avg: 5 + date: '2024-01-01T00:00:00+00:00' + schema: + $ref: '#/components/schemas/UsageSummaryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get usage across your account + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/synthetics: + get: + deprecated: true + description: |- + Get hourly usage for [synthetics checks](https://docs.datadoghq.com/synthetics/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSynthetics + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - check_calls_count: 50 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageSyntheticsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for synthetics checks + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/synthetics_api: + get: + deprecated: true + description: |- + Get hourly usage for [synthetics API checks](https://docs.datadoghq.com/synthetics/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSyntheticsAPI + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - check_calls_count: 50 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageSyntheticsAPIResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for synthetics API checks + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/synthetics_browser: + get: + deprecated: true + description: |- + Get hourly usage for synthetics browser checks. + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageSyntheticsBrowser + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - browser_check_calls_count: 20 + hour: '2024-01-01T00:00:00+00:00' + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageSyntheticsBrowserResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for synthetics browser checks + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/timeseries: + get: + deprecated: true + description: |- + Get hourly usage for [custom metrics](https://docs.datadoghq.com/developers/metrics/custom_metrics/). + **Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family). Refer to [Migrating from the V1 Hourly Usage APIs to V2](https://docs.datadoghq.com/account_management/guide/hourly-usage-migration/) for the associated migration guide. + operationId: GetUsageTimeseries + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.' + in: query + name: start_hr + required: true + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.' + in: query + name: end_hr + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + usage: + - hour: '2024-01-01T00:00:00+00:00' + num_custom_input_timeseries: 10 + num_custom_output_timeseries: 5 + num_custom_timeseries: 100 + org_name: example-handle + public_id: abc-123 + schema: + $ref: '#/components/schemas/UsageTimeseriesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get hourly usage for custom metrics + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/usage/top_avg_metrics: + get: + description: Get all [custom metrics](https://docs.datadoghq.com/developers/metrics/custom_metrics/) by hourly average. Use the month parameter to get a month-to-date data resolution or use the day parameter to get a daily resolution. One of the two is required, and only one of the two is allowed. + operationId: GetUsageTopAvgMetrics + parameters: + - description: 'Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM] for usage beginning at this hour. (Either month or day should be specified, but not both)' + in: query + name: month + schema: + format: date-time + type: string + - description: 'Datetime in ISO-8601 format, UTC, precise to day: [YYYY-MM-DD] for usage beginning at this hour. (Either month or day should be specified, but not both)' + in: query + name: day + schema: + format: date-time + type: string + - description: Comma-separated list of metric names. + in: query + name: names + required: false + schema: + items: + type: string + type: array + - description: Maximum number of results to return (between 1 and 5000) - defaults to 500 results if limit not specified. + in: query + name: limit + required: false + schema: + default: 500 + format: int32 + maximum: 5000 + minimum: 1 + type: integer + - description: List following results with a next_record_id provided in the previous query. + in: query + name: next_record_id + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + metadata: + month: '2024-01-01T00:00:00+00:00' + pagination: + next_record_id: null + usage: + - avg_metric_hour: 5 + max_metric_hour: 10 + metric_category: custom + metric_name: test-metric + schema: + $ref: '#/components/schemas/UsageTopAvgMetricsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden - User is not authorized + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Too many requests + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - usage_read + summary: Get all custom metrics by hourly average + tags: + - Usage Metering + x-permission: + operator: OR + permissions: + - usage_read + /api/v1/user: + get: + description: List all users for your organization. + operationId: ListUsersV1 + responses: + '200': + content: + application/json: + examples: + default: + value: + users: + - disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: '#/components/schemas/UserListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - user_access_read + summary: List all users + tags: + - Users + x-permission: + operator: OR + permissions: + - user_access_read + post: + description: |- + Create a user for your organization. + + **Note**: Users can only be created with the admin access role + if application keys belong to administrators. + operationId: CreateUserV1 + requestBody: + content: + application/json: + examples: + default: + value: + email: test@datadoghq.com + handle: test@datadoghq.com + name: test user + schema: + $ref: '#/components/schemas/UserV1' + description: User object that needs to be created. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + user: + disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: '#/components/schemas/UserResponseV1' + description: User created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a user + tags: + - Users + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - user_access_invite + /api/v1/user/{user_handle}: + delete: + description: |- + Delete a user from an organization. + + **Note**: This endpoint can only be used with application keys belonging to + administrators. + operationId: DisableUserV1 + parameters: + - description: The handle of the user. + in: path + name: user_handle + required: true + schema: + example: test@datadoghq.com + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + message: User user@example.com disabled + schema: + $ref: '#/components/schemas/UserDisableResponse' + description: User disabled + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Disable a user + tags: + - Users + get: + description: Get a user's details. + operationId: GetUserV1 + parameters: + - description: The ID of the user. + in: path + name: user_handle + required: true + schema: + example: test@datadoghq.com + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + user: + disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: '#/components/schemas/UserResponseV1' + description: OK for get user + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get user details + tags: + - Users + put: + description: |- + Update a user information. + + **Note**: It can only be used with application keys belonging to administrators. + operationId: UpdateUserV1 + parameters: + - description: The ID of the user. + in: path + name: user_handle + required: true + schema: + example: test@datadoghq.com + type: string + requestBody: + content: + application/json: + examples: + default: + value: + disabled: false + email: test@datadoghq.com + name: test user + schema: + $ref: '#/components/schemas/UserV1' + description: Description of the update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + user: + disabled: false + email: test@example.com + handle: test@example.com + name: Example Name + schema: + $ref: '#/components/schemas/UserResponseV1' + description: User updated + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a user + tags: + - Users + x-codegen-request-body-name: body + /api/v1/validate: + get: + description: Check if the API key (not the APP key) is valid. If invalid, a 403 is returned. + operationId: ValidateV1 + responses: + '200': + content: + application/json: + examples: + default: + value: + valid: true + schema: + $ref: '#/components/schemas/AuthenticationValidationResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Validate API key + tags: + - Authentication + x-permission: + operator: OPEN + permissions: [] +components: + schemas: + AnonymizeUsersRequest: + description: Request body for anonymizing users. + properties: + data: + $ref: '#/components/schemas/AnonymizeUsersRequestData' + required: + - data + type: object + AnonymizeUsersResponse: + description: Response containing the result of an anonymize users request. + properties: + data: + $ref: '#/components/schemas/AnonymizeUsersResponseData' + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + APIKeysResponse: + description: Response for a list of API keys. + properties: + data: + description: Array of API keys. + items: + $ref: '#/components/schemas/PartialAPIKey' + type: array + included: + description: Array of objects related to the API key. + items: + $ref: '#/components/schemas/APIKeyResponseIncludedItem' + type: array + meta: + $ref: '#/components/schemas/APIKeysResponseMeta' + type: object + APIKeyCreateRequest: + description: Request used to create an API key. + properties: + data: + $ref: '#/components/schemas/APIKeyCreateData' + required: + - data + type: object + APIKeyResponse: + description: Response for retrieving an API key. + properties: + data: + $ref: '#/components/schemas/FullAPIKey' + included: + description: Array of objects related to the API key. + items: + $ref: '#/components/schemas/APIKeyResponseIncludedItem' + type: array + type: object + APIKeyUpdateRequest: + description: Request used to update an API key. + properties: + data: + $ref: '#/components/schemas/APIKeyUpdateData' + required: + - data + type: object + ListApplicationKeysResponse: + description: Response for a list of application keys. + properties: + data: + description: Array of application keys. + items: + $ref: '#/components/schemas/PartialApplicationKey' + type: array + included: + description: Array of objects related to the application key. + items: + $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' + type: array + meta: + $ref: '#/components/schemas/ApplicationKeyResponseMeta' + type: object + ApplicationKeyResponse: + description: Response for retrieving an application key. + properties: + data: + $ref: '#/components/schemas/FullApplicationKey' + included: + description: Array of objects related to the application key. + items: + $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' + type: array + type: object + ApplicationKeyUpdateRequest: + description: Request used to update an application key. + properties: + data: + $ref: '#/components/schemas/ApplicationKeyUpdateData' + required: + - data + type: object + AuditLogsSort: + description: Sort parameters when querying events. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + AuditLogsEventsResponse: + description: Response object with all events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: '#/components/schemas/AuditLogsEvent' + type: array + links: + $ref: '#/components/schemas/AuditLogsResponseLinks' + meta: + $ref: '#/components/schemas/AuditLogsResponseMetadata' + type: object + AuditLogsSearchEventsRequest: + description: The request for a Audit Logs events list. + properties: + filter: + $ref: '#/components/schemas/AuditLogsQueryFilter' + options: + $ref: '#/components/schemas/AuditLogsQueryOptions' + page: + $ref: '#/components/schemas/AuditLogsQueryPageOptions' + sort: + $ref: '#/components/schemas/AuditLogsSort' + type: object + AuthNMappingsSort: + description: Sorting options for AuthN Mappings. + enum: + - created_at + - '-created_at' + - role_id + - '-role_id' + - saml_assertion_attribute_id + - '-saml_assertion_attribute_id' + - role.name + - '-role.name' + - saml_assertion_attribute.attribute_key + - '-saml_assertion_attribute.attribute_key' + - saml_assertion_attribute.attribute_value + - '-saml_assertion_attribute.attribute_value' + type: string + x-enum-varnames: + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - ROLE_ID_ASCENDING + - ROLE_ID_DESCENDING + - SAML_ASSERTION_ATTRIBUTE_ID_ASCENDING + - SAML_ASSERTION_ATTRIBUTE_ID_DESCENDING + - ROLE_NAME_ASCENDING + - ROLE_NAME_DESCENDING + - SAML_ASSERTION_ATTRIBUTE_KEY_ASCENDING + - SAML_ASSERTION_ATTRIBUTE_KEY_DESCENDING + - SAML_ASSERTION_ATTRIBUTE_VALUE_ASCENDING + - SAML_ASSERTION_ATTRIBUTE_VALUE_DESCENDING + AuthNMappingResourceType: + description: The type of resource being mapped to. + enum: + - role + - team + type: string + x-enum-varnames: + - ROLE + - TEAM + AuthNMappingsResponse: + description: Array of AuthN Mappings response. + properties: + data: + description: Array of returned AuthN Mappings. + items: + $ref: '#/components/schemas/AuthNMapping' + type: array + included: + description: Included data in the AuthN Mapping response. + items: + $ref: '#/components/schemas/AuthNMappingIncluded' + type: array + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + type: object + AuthNMappingCreateRequest: + description: Request for creating an AuthN Mapping. + properties: + data: + $ref: '#/components/schemas/AuthNMappingCreateData' + required: + - data + type: object + AuthNMappingResponse: + description: AuthN Mapping response from the API. + properties: + data: + $ref: '#/components/schemas/AuthNMapping' + included: + description: Included data in the AuthN Mapping response. + items: + $ref: '#/components/schemas/AuthNMappingIncluded' + type: array + type: object + AuthNMappingUpdateRequest: + description: Request to update an AuthN Mapping. + properties: + data: + $ref: '#/components/schemas/AuthNMappingUpdateData' + required: + - data + type: object + UserResponse: + description: Response containing information about a single user. + properties: + data: + $ref: '#/components/schemas/User' + included: + description: Array of objects related to the user. + items: + $ref: '#/components/schemas/UserResponseIncludedItem' + type: array + type: object + UserUpdateRequest: + description: Update a user. + properties: + data: + $ref: '#/components/schemas/UserUpdateData' + required: + - data + type: object + ApplicationKeyCreateRequest: + description: Request used to create an application key. + properties: + data: + $ref: '#/components/schemas/ApplicationKeyCreateData' + required: + - data + type: object + CreateDataDeletionRequestBody: + description: Object needed to create a data deletion request. + properties: + data: + $ref: '#/components/schemas/CreateDataDeletionRequestBodyData' + required: + - data + type: object + CreateDataDeletionResponseBody: + description: The response from the create data deletion request endpoint. + properties: + data: + $ref: '#/components/schemas/DataDeletionResponseItem' + meta: + $ref: '#/components/schemas/DataDeletionResponseMeta' + type: object + GetDataDeletionsResponseBody: + description: The response from the get data deletion requests endpoint. + properties: + data: + description: The list of data deletion requests that matches the query. + items: + $ref: '#/components/schemas/DataDeletionResponseItem' + type: array + meta: + $ref: '#/components/schemas/DataDeletionResponseMeta' + type: object + CancelDataDeletionResponseBody: + description: The response from the cancel data deletion request endpoint. + properties: + data: + $ref: '#/components/schemas/DataDeletionResponseItem' + meta: + $ref: '#/components/schemas/DataDeletionResponseMeta' + type: object + DomainAllowlistResponse: + description: Response containing information about the email domain allowlist. + properties: + data: + $ref: '#/components/schemas/DomainAllowlistResponseData' + type: object + DomainAllowlistRequest: + description: Request containing the desired email domain allowlist configuration. + properties: + data: + $ref: '#/components/schemas/DomainAllowlist' + required: + - data + type: object + GlobalOrgsResponse: + description: Response containing organizations across regions for the authenticated user. + properties: + data: + description: Organizations across regions for the authenticated user. + items: + $ref: '#/components/schemas/GlobalOrgData' + type: array + links: + $ref: '#/components/schemas/GlobalOrgsLinks' + meta: + $ref: '#/components/schemas/GlobalOrgsMeta' + required: + - data + type: object + GovernanceConfigResponse: + description: The Governance Console configuration for an organization. + properties: + data: + $ref: '#/components/schemas/GovernanceConfigData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + GovernanceControlsResponse: + description: A list of governance controls. + properties: + data: + $ref: '#/components/schemas/GovernanceControlsDataArray' + required: + - data + type: object + GovernanceControlResponse: + description: A single governance control. + properties: + data: + $ref: '#/components/schemas/GovernanceControlData' + required: + - data + type: object + GovernanceControlUpdateRequest: + description: A request to update a governance control. + properties: + data: + $ref: '#/components/schemas/GovernanceControlUpdateData' + required: + - data + type: object + GovernanceControlDetectionsResponse: + description: A list of governance control detections. + properties: + data: + $ref: '#/components/schemas/GovernanceControlDetectionsDataArray' + required: + - data + type: object + ControlNotificationSettingsResponse: + description: The notification settings for a governance control. + properties: + data: + $ref: '#/components/schemas/ControlNotificationSettingsData' + required: + - data + type: object + ControlNotificationSettingsUpdateRequest: + description: A request to update the notification settings for a governance control. + properties: + data: + $ref: '#/components/schemas/ControlNotificationSettingsUpdateData' + required: + - data + type: object + GovernanceMitigationRequest: + description: A request to mitigate a set of governance detections. + properties: + data: + $ref: '#/components/schemas/GovernanceMitigationRequestData' + required: + - data + type: object + GovernanceControlDetectionResponse: + description: A single governance control detection. + properties: + data: + $ref: '#/components/schemas/GovernanceControlDetectionData' + required: + - data + type: object + GovernanceControlDetectionUpdateRequest: + description: A request to update a governance control detection. + properties: + data: + $ref: '#/components/schemas/GovernanceControlDetectionUpdateData' + required: + - data + type: object + GovernanceInsightsResponse: + description: A list of governance insights. + properties: + data: + $ref: '#/components/schemas/GovernanceInsightsDataArray' + required: + - data + type: object + GovernanceNotificationSettingsResponse: + description: The organization-wide governance notification settings. + properties: + data: + $ref: '#/components/schemas/GovernanceNotificationSettingsData' + required: + - data + type: object + GovernanceNotificationSettingsUpdateRequest: + description: A request to update the organization-wide governance notification settings. + properties: + data: + $ref: '#/components/schemas/GovernanceNotificationSettingsUpdateData' + required: + - data + type: object + TagRuleInclude: + description: A related resource to include alongside a tag rule in the response. Currently the only supported value is `score`. + enum: + - score + example: score + type: string + x-enum-varnames: + - SCORE + TagRuleSource: + description: The telemetry source that a tag rule applies to. + enum: + - logs + - spans + - metrics + - rum + - feed + example: logs + type: string + x-enum-varnames: + - LOGS + - SPANS + - METRICS + - RUM + - FEED + TagRulesListResponse: + description: A page of tag rules. + properties: + data: + $ref: '#/components/schemas/TagRuleDataArray' + included: + $ref: '#/components/schemas/TagRuleIncludedResources' + required: + - data + type: object + TagRuleCreateRequest: + description: Payload for creating a new tag rule. + properties: + data: + $ref: '#/components/schemas/TagRuleCreateData' + required: + - data + type: object + TagRuleResponse: + description: A single tag rule. + properties: + data: + $ref: '#/components/schemas/TagRuleData' + included: + $ref: '#/components/schemas/TagRuleIncludedResources' + required: + - data + type: object + TagRuleUpdateRequest: + description: Payload for updating an existing tag rule. Only the supplied fields are modified. + properties: + data: + $ref: '#/components/schemas/TagRuleUpdateData' + required: + - data + type: object + TagRuleScoreResponse: + description: A tag rule compliance score. + properties: + data: + $ref: '#/components/schemas/TagRuleScoreData' + required: + - data + type: object + HamrOrgConnectionResponse: + description: Response payload for a HAMR organization connection. + properties: + data: + $ref: '#/components/schemas/HamrOrgConnectionDataResponse' + required: + - data + type: object + HamrOrgConnectionRequest: + description: Request payload for creating or updating a HAMR organization connection. + properties: + data: + $ref: '#/components/schemas/HamrOrgConnectionDataRequest' + required: + - data + type: object + IdentityProvidersResponse: + description: Response containing a list of identity providers for an organization. + properties: + data: + $ref: '#/components/schemas/IdentityProviderDataList' + required: + - data + type: object + IdentityProviderUpdateRequest: + description: Request body for updating an organization identity provider. + properties: + data: + $ref: '#/components/schemas/IdentityProviderUpdateData' + required: + - data + type: object + IdentityProviderResponse: + description: Response containing a single organization identity provider. + properties: + data: + $ref: '#/components/schemas/IdentityProviderData' + required: + - data + type: object + QuerySortOrder: + default: desc + description: Direction of sort. + enum: + - asc + - desc + type: string + x-enum-varnames: + - ASC + - DESC + UsersResponse: + description: Response containing information about multiple users. + properties: + data: + description: Array of returned users. + items: + $ref: '#/components/schemas/User' + type: array + included: + description: Array of objects related to the users. + items: + $ref: '#/components/schemas/UserResponseIncludedItem' + type: array + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + readOnly: true + type: object + IPAllowlistResponse: + description: Response containing information about the IP allowlist. + properties: + data: + $ref: '#/components/schemas/IPAllowlistData' + type: object + IPAllowlistUpdateRequest: + description: Update the IP allowlist. + properties: + data: + $ref: '#/components/schemas/IPAllowlistData' + required: + - data + type: object + MaxSessionDurationUpdateRequest: + description: A request to update the maximum session duration for an organization. + properties: + data: + $ref: '#/components/schemas/MaxSessionDurationUpdateData' + required: + - data + type: object + OAuth2WellKnownSitesResponse: + description: Response payload containing the list of public OAuth2 sites for discovery. + properties: + data: + $ref: '#/components/schemas/OAuth2WellKnownSitesData' + required: + - data + type: object + OAuthScopesRestrictionResponse: + description: Response payload describing the scopes restriction of an OAuth2 client. + properties: + data: + $ref: '#/components/schemas/OAuthScopesRestrictionResponseData' + required: + - data + type: object + UpsertOAuthScopesRestrictionRequest: + description: Request payload for creating or updating the scopes restriction of an OAuth2 client. + properties: + data: + $ref: '#/components/schemas/UpsertOAuthScopesRestrictionData' + required: + - data + type: object + OAuthClientRegistrationRequest: + description: Request payload for OAuth2 dynamic client registration as defined by RFC 7591. + properties: + client_name: + description: Human-readable name of the client. Control characters are rejected. + example: Example MCP Client + maxLength: 1000 + type: string + client_uri: + description: URL of the home page of the client. + example: https://example.com + maxLength: 1000 + type: string + grant_types: + description: |- + OAuth 2.0 grant types the client may use. + Defaults to `authorization_code` and `refresh_token` when omitted. + example: + - authorization_code + - refresh_token + items: + $ref: '#/components/schemas/OAuthClientRegistrationGrantType' + type: array + jwks_uri: + description: URL referencing the client's JSON Web Key Set. + example: https://example.com/.well-known/jwks.json + maxLength: 1000 + type: string + logo_uri: + description: URL referencing a logo for the client. + example: https://example.com/logo.png + maxLength: 1000 + type: string + policy_uri: + description: URL pointing to the client's privacy policy. + example: https://example.com/privacy + maxLength: 1000 + type: string + redirect_uris: + description: Array of redirection URI strings used by the client in redirect-based flows. + example: + - https://example.com/oauth/callback + items: + description: Redirection URI registered for the client. + example: https://example.com/oauth/callback + maxLength: 1000 + type: string + type: array + response_types: + description: OAuth 2.0 response types the client may use. Only `code` is supported. + example: + - code + items: + $ref: '#/components/schemas/OAuthClientRegistrationResponseType' + type: array + scope: + description: Space-separated list of scope values the client may request. + example: openid profile + maxLength: 1000 + type: string + token_endpoint_auth_method: + description: Requested authentication method for the token endpoint. Only `none` is supported. + example: none + maxLength: 20 + type: string + tos_uri: + description: URL pointing to the client's terms of service. + example: https://example.com/tos + maxLength: 1000 + type: string + required: + - client_name + - redirect_uris + type: object + OAuthClientRegistrationResponse: + description: Response payload for a successful OAuth2 dynamic client registration as defined by RFC 7591. + properties: + client_id: + description: Unique identifier assigned to the registered client. + example: 72b68208-36a6-11f0-b21b-da7ad0900002 + format: uuid + type: string + client_name: + description: Human-readable name of the client. + example: Example MCP Client + type: string + grant_types: + description: OAuth 2.0 grant types registered for the client. + example: + - authorization_code + - refresh_token + items: + $ref: '#/components/schemas/OAuthClientRegistrationGrantType' + type: array + redirect_uris: + description: Redirection URIs registered for the client. + example: + - https://example.com/oauth/callback + items: + description: Redirection URI registered for the client. + example: https://example.com/oauth/callback + type: string + type: array + response_types: + description: OAuth 2.0 response types registered for the client. + example: + - code + items: + $ref: '#/components/schemas/OAuthClientRegistrationResponseType' + type: array + token_endpoint_auth_method: + description: Authentication method registered for the token endpoint. Always `none`. + example: none + type: string + required: + - client_id + - client_name + - redirect_uris + - token_endpoint_auth_method + - grant_types + - response_types + type: object + OAuthClientRegistrationError: + description: Error payload returned by OAuth2 dynamic client registration as defined by RFC 7591. + properties: + error: + description: Single ASCII error code per RFC 7591, such as `invalid_request` or `invalid_client_metadata`. + example: invalid_client_metadata + type: string + error_description: + description: Human-readable description of the error. + example: redirect URI is not well-formed + type: string + required: + - error + - error_description + type: object + ManagedOrgsResponse: + description: Response containing the current organization and its managed organizations. + properties: + data: + $ref: '#/components/schemas/ManagedOrgsData' + included: + description: Included organization resources. + items: + $ref: '#/components/schemas/OrgData' + type: array + required: + - data + - included + type: object + CustomerOrgDisableRequest: + description: Request payload for disabling the authenticated customer organization. + properties: + data: + $ref: '#/components/schemas/CustomerOrgDisableRequestData' + required: + - data + type: object + CustomerOrgDisableResponse: + description: Response describing the outcome of disabling the customer organization. + properties: + data: + $ref: '#/components/schemas/CustomerOrgDisableResponseData' + required: + - data + type: object + OrgSAMLPreferencesUpdateRequest: + description: Request to update an organization's SAML preferences. + properties: + data: + $ref: '#/components/schemas/OrgSAMLPreferencesData' + required: + - data + type: object + OrgAuthorizedClientsResponse: + description: Response containing a list of org authorized clients. + properties: + data: + $ref: '#/components/schemas/OrgAuthorizedClientDataList' + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + required: + - data + - meta + type: object + OrgAuthorizedClientResponse: + description: Response containing a single org authorized client. + properties: + data: + $ref: '#/components/schemas/OrgAuthorizedClientData' + required: + - data + type: object + OrgAuthorizedClientUpdateRequest: + description: Request body for updating an org authorized client. + properties: + data: + $ref: '#/components/schemas/OrgAuthorizedClientUpdateData' + required: + - data + type: object + OrgAuthorizedClientUserAuthorizationsSort: + description: Field to sort user authorizations by. + enum: + - user.name + - user.email + - oauth2_client.name + example: user.name + type: string + x-enum-varnames: + - USER_NAME + - USER_EMAIL + - OAUTH2_CLIENT_NAME + UserAuthorizedClientsResponse: + description: Response containing a list of user authorized clients. + properties: + data: + $ref: '#/components/schemas/UserAuthorizedClientDataList' + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + required: + - data + - meta + type: object + OrgConfigListResponse: + description: A response with multiple Org Configs. + properties: + data: + description: An array of Org Configs. + items: + $ref: '#/components/schemas/OrgConfigRead' + type: array + required: + - data + type: object + OrgConfigGetResponse: + description: A response with a single Org Config. + properties: + data: + $ref: '#/components/schemas/OrgConfigRead' + required: + - data + type: object + OrgConfigWriteRequest: + description: A request to update an Org Config. + properties: + data: + $ref: '#/components/schemas/OrgConfigWrite' + required: + - data + type: object + OrgConnectionListResponse: + description: Response containing a list of org connections. + properties: + data: + description: List of org connections. + items: + $ref: '#/components/schemas/OrgConnection' + type: array + meta: + $ref: '#/components/schemas/OrgConnectionListResponseMeta' + required: + - data + type: object + OrgConnectionCreateRequest: + description: Request to create an org connection. + properties: + data: + $ref: '#/components/schemas/OrgConnectionCreate' + required: + - data + type: object + OrgConnectionResponse: + description: Response containing a single org connection. + properties: + data: + $ref: '#/components/schemas/OrgConnection' + required: + - data + type: object + OrgConnectionUpdateRequest: + description: Request to update an org connection. + properties: + data: + $ref: '#/components/schemas/OrgConnectionUpdate' + required: + - data + type: object + OrgGroupMembershipListResponse: + description: Response containing a list of org group memberships. + properties: + data: + description: An array of org group memberships. + items: + $ref: '#/components/schemas/OrgGroupMembershipData' + type: array + links: + $ref: '#/components/schemas/OrgGroupPaginationLinks' + meta: + $ref: '#/components/schemas/OrgGroupPaginationMeta' + required: + - data + type: object + OrgGroupMembershipBulkUpdateRequest: + description: Request to bulk update org group memberships. + properties: + data: + $ref: '#/components/schemas/OrgGroupMembershipBulkUpdateData' + required: + - data + type: object + OrgGroupMembershipResponse: + description: Response containing a single org group membership. + properties: + data: + $ref: '#/components/schemas/OrgGroupMembershipData' + required: + - data + type: object + OrgGroupMembershipUpdateRequest: + description: Request to update an org group membership. + properties: + data: + $ref: '#/components/schemas/OrgGroupMembershipUpdateData' + required: + - data + type: object + OrgGroupPolicyListResponse: + description: Response containing a list of org group policies. + properties: + data: + description: An array of org group policies. + items: + $ref: '#/components/schemas/OrgGroupPolicyData' + type: array + links: + $ref: '#/components/schemas/OrgGroupPaginationLinks' + meta: + $ref: '#/components/schemas/OrgGroupPaginationMeta' + required: + - data + type: object + OrgGroupPolicyCreateRequest: + description: Request to create an org group policy. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyCreateData' + required: + - data + type: object + OrgGroupPolicyResponse: + description: Response containing a single org group policy. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyData' + required: + - data + type: object + OrgGroupPolicyUpdateRequest: + description: Request to update an org group policy. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyUpdateData' + required: + - data + type: object + OrgGroupPolicyConfigListResponse: + description: Response containing a list of org group policy configs. + properties: + data: + description: An array of org group policy configs. + items: + $ref: '#/components/schemas/OrgGroupPolicyConfigData' + type: array + required: + - data + type: object + OrgGroupPolicyOverrideListResponse: + description: Response containing a list of org group policy overrides. + properties: + data: + description: An array of org group policy overrides. + items: + $ref: '#/components/schemas/OrgGroupPolicyOverrideData' + type: array + links: + $ref: '#/components/schemas/OrgGroupPaginationLinks' + meta: + $ref: '#/components/schemas/OrgGroupPaginationMeta' + required: + - data + type: object + OrgGroupPolicyOverrideCreateRequest: + description: Request to create an org group policy override. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyOverrideCreateData' + required: + - data + type: object + OrgGroupPolicyOverrideResponse: + description: Response containing a single org group policy override. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyOverrideData' + required: + - data + type: object + OrgGroupPolicyOverrideUpdateRequest: + description: Request to update an org group policy override. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyOverrideUpdateData' + required: + - data + type: object + OrgGroupPolicySuggestionListResponse: + description: Response containing a list of org group policy suggestions. + properties: + data: + description: An array of org group policy suggestions. + items: + $ref: '#/components/schemas/OrgGroupPolicySuggestionData' + type: array + required: + - data + type: object + OrgGroupListResponse: + description: Response containing a list of org groups. + properties: + data: + description: An array of org groups. + items: + $ref: '#/components/schemas/OrgGroupData' + type: array + links: + $ref: '#/components/schemas/OrgGroupPaginationLinks' + meta: + $ref: '#/components/schemas/OrgGroupPaginationMeta' + required: + - data + type: object + OrgGroupCreateRequest: + description: Request to create an org group. + properties: + data: + $ref: '#/components/schemas/OrgGroupCreateData' + required: + - data + type: object + OrgGroupResponse: + description: Response containing a single org group. + properties: + data: + $ref: '#/components/schemas/OrgGroupData' + required: + - data + type: object + OrgGroupUpdateRequest: + description: Request to update an org group. + properties: + data: + $ref: '#/components/schemas/OrgGroupUpdateData' + required: + - data + type: object + PermissionsResponse: + description: Payload with API-returned permissions. + properties: + data: + description: Array of permissions. + items: + $ref: '#/components/schemas/Permission' + type: array + type: object + ListPersonalAccessTokensResponse: + description: Response for a list of access tokens. Includes both personal and service access tokens. + properties: + data: + description: Array of access tokens. Includes both personal and service access tokens. + items: + $ref: '#/components/schemas/AccessTokenListItem' + type: array + meta: + $ref: '#/components/schemas/PersonalAccessTokenResponseMeta' + type: object + PersonalAccessTokenCreateRequest: + description: Request used to create an access token. + properties: + data: + $ref: '#/components/schemas/PersonalAccessTokenCreateData' + required: + - data + type: object + PersonalAccessTokenCreateResponse: + description: Response for creating an access token. Includes the token key. + properties: + data: + $ref: '#/components/schemas/FullPersonalAccessToken' + type: object + PersonalAccessTokenResponse: + description: Response for retrieving an access token. + properties: + data: + $ref: '#/components/schemas/PersonalAccessToken' + type: object + PersonalAccessTokenUpdateRequest: + description: Request used to update an access token. + properties: + data: + $ref: '#/components/schemas/PersonalAccessTokenUpdateData' + required: + - data + type: object + RestrictionPolicyResponse: + description: Response containing information about a single restriction policy. + properties: + data: + $ref: '#/components/schemas/RestrictionPolicy' + required: + - data + type: object + RestrictionPolicyUpdateRequest: + description: Update request for a restriction policy. + properties: + data: + $ref: '#/components/schemas/RestrictionPolicy' + required: + - data + type: object + RolesSort: + default: name + description: Sorting options for roles. + enum: + - name + - '-name' + - modified_at + - '-modified_at' + - user_count + - '-user_count' + type: string + x-enum-varnames: + - NAME_ASCENDING + - NAME_DESCENDING + - MODIFIED_AT_ASCENDING + - MODIFIED_AT_DESCENDING + - USER_COUNT_ASCENDING + - USER_COUNT_DESCENDING + RolesResponse: + description: Response containing information about multiple roles. + properties: + data: + description: Array of returned roles. + items: + $ref: '#/components/schemas/Role' + type: array + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + type: object + RoleCreateRequest: + description: Create a role. + properties: + data: + $ref: '#/components/schemas/RoleCreateData' + required: + - data + type: object + RoleCreateResponse: + description: Response containing information about a created role. + properties: + data: + $ref: '#/components/schemas/RoleCreateResponseData' + type: object + RoleTemplateArray: + description: The definition of `RoleTemplateArray` object. + properties: + data: + description: The `RoleTemplateArray` `data`. + items: + $ref: '#/components/schemas/RoleTemplateData' + type: array + required: + - data + type: object + RoleResponse: + description: Response containing information about a single role. + properties: + data: + $ref: '#/components/schemas/Role' + type: object + RoleUpdateRequest: + description: Update a role. + properties: + data: + $ref: '#/components/schemas/RoleUpdateData' + required: + - data + type: object + RoleUpdateResponse: + description: Response containing information about an updated role. + properties: + data: + $ref: '#/components/schemas/RoleUpdateResponseData' + type: object + RoleCloneRequest: + description: Request to create a role by cloning an existing role. + properties: + data: + $ref: '#/components/schemas/RoleClone' + required: + - data + type: object + RelationshipToPermission: + description: Relationship to a permissions object. + properties: + data: + $ref: '#/components/schemas/RelationshipToPermissionData' + type: object + RelationshipToUser: + description: Relationship to user. + properties: + data: + $ref: '#/components/schemas/RelationshipToUserData' + required: + - data + type: object + SAMLConfigurationsResponse: + description: Response containing a list of SAML configurations. + properties: + data: + description: Array of SAML configurations. An organization has at most one SAML configuration. + items: + $ref: '#/components/schemas/SAMLConfiguration' + type: array + included: + description: Resources related to the SAML configurations, such as the default roles. + items: + $ref: '#/components/schemas/Role' + type: array + type: object + IdPMetadataFormData: + description: The form data submitted to upload IdP metadata + properties: + idp_file: + description: The IdP metadata XML file + format: binary + type: string + x-mimetype: application/xml + type: object + SAMLConfigurationResponse: + description: Response containing a single SAML configuration. + properties: + data: + $ref: '#/components/schemas/SAMLConfiguration' + included: + description: Resources related to the SAML configuration, such as the default roles. + items: + $ref: '#/components/schemas/Role' + type: array + required: + - data + type: object + SAMLConfigurationUpdateRequest: + description: Request to update a SAML configuration. + properties: + data: + $ref: '#/components/schemas/SAMLConfigurationUpdateData' + required: + - data + type: object + UnassignSeatsUserRequest: + description: The request body for unassigning seats from users for a product code. + properties: + data: + $ref: '#/components/schemas/UnassignSeatsUserRequestData' + description: The data for the unassign seats user request. + type: object + SeatUserDataArray: + description: A paginated list of seat user resources with associated pagination metadata. + properties: + data: + description: The list of seat users. + items: + $ref: '#/components/schemas/SeatUserData' + type: array + meta: + $ref: '#/components/schemas/SeatUserMeta' + description: The metadata of the seat users. + type: object + AssignSeatsUserRequest: + description: The request body for assigning seats to users for a product code. + properties: + data: + $ref: '#/components/schemas/AssignSeatsUserRequestData' + description: The data for the assign seats user request. + type: object + AssignSeatsUserResponse: + description: The response body returned after successfully assigning seats to users. + properties: + data: + $ref: '#/components/schemas/AssignSeatsUserResponseData' + description: The data for the assign seats user response. + type: object + ServiceAccountCreateRequest: + description: Create a service account. + properties: + data: + $ref: '#/components/schemas/ServiceAccountCreateData' + required: + - data + type: object + ListServiceAccessTokensResponse: + description: Response for a list of access tokens. + properties: + data: + description: Array of access tokens. + items: + $ref: '#/components/schemas/ServiceAccessToken' + type: array + meta: + $ref: '#/components/schemas/ServiceAccessTokenResponseMeta' + type: object + ServiceAccountAccessTokenCreateRequest: + description: Request used to create a service account access token. + properties: + data: + $ref: '#/components/schemas/ServiceAccountAccessTokenCreateData' + required: + - data + type: object + ServiceAccessTokenCreateResponse: + description: Response for creating an access token. Includes the token key. + properties: + data: + $ref: '#/components/schemas/FullServiceAccessToken' + type: object + ServiceAccessTokenResponse: + description: Response for retrieving an access token. + properties: + data: + $ref: '#/components/schemas/ServiceAccessToken' + type: object + ServiceAccountAccessTokenUpdateRequest: + description: Request used to update a service account access token. + properties: + data: + $ref: '#/components/schemas/ServiceAccountAccessTokenUpdateData' + required: + - data + type: object + PartialApplicationKeyResponse: + description: Response for retrieving a partial application key. + properties: + data: + $ref: '#/components/schemas/PartialApplicationKey' + included: + description: Array of objects related to the application key. + items: + $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' + type: array + type: object + ListTeamsSort: + description: Specifies the order of the returned teams + enum: + - name + - '-name' + - user_count + - '-user_count' + type: string + x-enum-varnames: + - NAME + - _NAME + - USER_COUNT + - _USER_COUNT + ListTeamsInclude: + description: Included related resources optionally requested. + enum: + - team_links + - user_team_permissions + type: string + x-enum-varnames: + - TEAM_LINKS + - USER_TEAM_PERMISSIONS + TeamsField: + description: Supported teams field. + enum: + - id + - name + - handle + - summary + - description + - avatar + - banner + - visible_modules + - hidden_modules + - created_at + - modified_at + - user_count + - link_count + - team_links + - user_team_permissions + type: string + x-enum-varnames: + - ID + - NAME + - HANDLE + - SUMMARY + - DESCRIPTION + - AVATAR + - BANNER + - VISIBLE_MODULES + - HIDDEN_MODULES + - CREATED_AT + - MODIFIED_AT + - USER_COUNT + - LINK_COUNT + - TEAM_LINKS + - USER_TEAM_PERMISSIONS + TeamsResponse: + description: Response with multiple teams + properties: + data: + description: Teams response data + items: + $ref: '#/components/schemas/Team' + type: array + included: + description: Resources related to the team + items: + $ref: '#/components/schemas/TeamIncluded' + type: array + links: + $ref: '#/components/schemas/TeamsResponseLinks' + meta: + $ref: '#/components/schemas/TeamsResponseMeta' + type: object + TeamCreateRequest: + description: Request to create a team + properties: + data: + $ref: '#/components/schemas/TeamCreate' + required: + - data + type: object + TeamResponse: + description: Response with a team + properties: + data: + $ref: '#/components/schemas/Team' + type: object + TeamHierarchyLinksResponse: + description: Team hierarchy links response + properties: + data: + description: Team hierarchy links response data + items: + $ref: '#/components/schemas/TeamHierarchyLink' + type: array + included: + description: Included teams + items: + $ref: '#/components/schemas/TeamHierarchyLinkTeam' + type: array + links: + $ref: '#/components/schemas/TeamsHierarchyLinksResponseLinks' + meta: + $ref: '#/components/schemas/TeamsHierarchyLinksResponseMeta' + type: object + TeamHierarchyLinkCreateRequest: + description: Request to create a team hierarchy link + properties: + data: + $ref: '#/components/schemas/TeamHierarchyLinkCreate' + required: + - data + type: object + TeamHierarchyLinkResponse: + description: Team hierarchy link response + properties: + data: + $ref: '#/components/schemas/TeamHierarchyLink' + included: + description: Included teams + items: + $ref: '#/components/schemas/TeamHierarchyLinkTeam' + type: array + links: + $ref: '#/components/schemas/TeamsHierarchyLinksResponseLinks' + type: object + TeamConnectionDeleteRequest: + description: Request for deleting team connections. + properties: + data: + description: Array of team connection IDs to delete. + items: + $ref: '#/components/schemas/TeamConnectionDeleteRequestDataItem' + type: array + required: + - data + type: object + TeamConnectionsResponse: + description: Response containing information about multiple team connections. + properties: + data: + description: Array of team connections. + items: + $ref: '#/components/schemas/TeamConnection' + type: array + meta: + $ref: '#/components/schemas/ConnectionsResponseMeta' + type: object + TeamConnectionCreateRequest: + description: Request for creating team connections. + properties: + data: + description: Array of team connections to create. + items: + $ref: '#/components/schemas/TeamConnectionCreateData' + type: array + required: + - data + type: object + TeamSyncAttributesSource: + description: The external source platform for team synchronization. Only "github" is supported. + enum: + - github + example: github + type: string + x-enum-varnames: + - GITHUB + TeamSyncResponse: + description: Team sync configurations response. + properties: + data: + description: List of team sync configurations + items: + $ref: '#/components/schemas/TeamSyncData' + type: array + type: object + TeamSyncRequest: + description: Team sync request. + example: + data: + attributes: + source: github + type: link + type: team_sync_bulk + properties: + data: + $ref: '#/components/schemas/TeamSyncData' + required: + - data + type: object + AddMemberTeamRequest: + description: Request to add a member team to super team's hierarchy + properties: + data: + $ref: '#/components/schemas/MemberTeam' + required: + - data + type: object + TeamUpdateRequest: + description: Team update request + properties: + data: + $ref: '#/components/schemas/TeamUpdate' + required: + - data + type: object + TeamLinksResponse: + description: Team links response + properties: + data: + description: Team links response data + items: + $ref: '#/components/schemas/TeamLink' + type: array + type: object + TeamLinkCreateRequest: + description: Team link create request + properties: + data: + $ref: '#/components/schemas/TeamLinkCreate' + required: + - data + type: object + TeamLinkResponse: + description: Team link response + properties: + data: + $ref: '#/components/schemas/TeamLink' + type: object + GetTeamMembershipsSort: + description: Specifies the order of returned team memberships + enum: + - manager_name + - '-manager_name' + - name + - '-name' + - handle + - '-handle' + - email + - '-email' + type: string + x-enum-varnames: + - MANAGER_NAME + - _MANAGER_NAME + - NAME + - _NAME + - HANDLE + - _HANDLE + - EMAIL + - _EMAIL + UserTeamsResponse: + description: Team memberships response + properties: + data: + description: Team memberships response data + items: + $ref: '#/components/schemas/UserTeam' + type: array + included: + description: Resources related to the team memberships + items: + $ref: '#/components/schemas/UserTeamIncluded' + type: array + links: + $ref: '#/components/schemas/TeamsResponseLinks' + meta: + $ref: '#/components/schemas/TeamsResponseMeta' + type: object + UserTeamRequest: + description: Team membership request + properties: + data: + $ref: '#/components/schemas/UserTeamCreate' + required: + - data + type: object + UserTeamResponse: + description: Team membership response + properties: + data: + $ref: '#/components/schemas/UserTeam' + included: + description: Resources related to the team memberships + items: + $ref: '#/components/schemas/UserTeamIncluded' + type: array + type: object + UserTeamUpdateRequest: + description: Team membership request + properties: + data: + $ref: '#/components/schemas/UserTeamUpdate' + required: + - data + type: object + TeamNotificationRulesResponse: + description: Team notification rules response + properties: + data: + description: Team notification rules response data + items: + $ref: '#/components/schemas/TeamNotificationRule' + type: array + meta: + $ref: '#/components/schemas/TeamNotificationRulesResponseMeta' + type: object + TeamNotificationRuleRequest: + description: Request to create or update a team notification rule + properties: + data: + $ref: '#/components/schemas/TeamNotificationRule' + required: + - data + type: object + TeamNotificationRuleResponse: + description: Team notification rule response + properties: + data: + $ref: '#/components/schemas/TeamNotificationRule' + type: object + TeamPermissionSettingsResponse: + description: Team permission settings response + properties: + data: + description: Team permission settings response data + items: + $ref: '#/components/schemas/TeamPermissionSetting' + type: array + type: object + TeamPermissionSettingUpdateRequest: + description: Team permission setting update request + properties: + data: + $ref: '#/components/schemas/TeamPermissionSettingUpdate' + required: + - data + type: object + TeamPermissionSettingResponse: + description: Team permission setting response + properties: + data: + $ref: '#/components/schemas/TeamPermissionSetting' + type: object + UsageApplicationSecurityMonitoringResponse: + description: Application Security Monitoring usage response. + properties: + data: + description: Response containing Application Security Monitoring usage. + items: + $ref: '#/components/schemas/UsageDataObject' + type: array + type: object + BillingDimensionsMappingResponse: + description: Billing dimensions mapping response. + properties: + data: + $ref: '#/components/schemas/BillingDimensionsMappingBody' + type: object + CostByOrgResponse: + description: Chargeback Summary response. + properties: + data: + description: Response containing Chargeback Summary. + items: + $ref: '#/components/schemas/CostByOrg' + type: array + type: object + CostAggregationType: + description: Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals. + enum: + - cumulative + type: string + x-enum-varnames: + - CUMULATIVE + HourlyUsageResponse: + description: Hourly usage response. + properties: + data: + description: Response containing hourly usage. + items: + $ref: '#/components/schemas/HourlyUsage' + type: array + meta: + $ref: '#/components/schemas/HourlyUsageMetadata' + type: object + UsageLambdaTracedInvocationsResponse: + description: Lambda Traced Invocations usage response. + properties: + data: + description: Response containing Lambda Traced Invocations usage. + items: + $ref: '#/components/schemas/UsageDataObject' + type: array + type: object + UsageObservabilityPipelinesResponse: + description: Observability Pipelines usage response. + properties: + data: + description: Response containing Observability Pipelines usage. + items: + $ref: '#/components/schemas/UsageDataObject' + type: array + type: object + ProjectedCostResponse: + description: Projected Cost response. + properties: + data: + description: Response containing Projected Cost. + items: + $ref: '#/components/schemas/ProjectedCost' + type: array + type: object + UsageSummaryAvailableFieldsResponse: + description: |- + Response listing every field name returned by `GET /api/v1/usage/summary` + at each of its three response levels. Includes both typed fields and untyped + `additionalProperties` keys. + properties: + data: + $ref: '#/components/schemas/UsageSummaryAvailableFieldsBody' + type: object + UsageAttributionTypesResponse: + description: Usage attribution types response. + properties: + data: + $ref: '#/components/schemas/UsageAttributionTypesBody' + type: object + UserAuthorizedClientResponse: + description: Response containing a single user authorized client. + properties: + data: + $ref: '#/components/schemas/UserAuthorizedClientData' + required: + - data + type: object + UserInvitationsRequest: + description: Object to invite users to join the organization. + properties: + data: + description: List of user invitations. + example: [] + items: + $ref: '#/components/schemas/UserInvitationData' + type: array + required: + - data + type: object + UserInvitationsResponse: + description: User invitations as returned by the API. + properties: + data: + description: Array of user invitations. + items: + $ref: '#/components/schemas/UserInvitationResponseData' + type: array + type: object + UserInvitationResponse: + description: User invitation as returned by the API. + properties: + data: + $ref: '#/components/schemas/UserInvitationResponseData' + type: object + UserCreateRequest: + description: Create a user. + properties: + data: + $ref: '#/components/schemas/UserCreateData' + required: + - data + type: object + UserOverrideIdentityProvidersResponse: + description: Response containing a user's identity provider overrides. + properties: + data: + $ref: '#/components/schemas/UserOverrideIdentityProviderDataList' + required: + - data + type: object + UpdateUserIdentityProvidersRequest: + description: Request body for setting identity provider overrides for a user. + properties: + data: + $ref: '#/components/schemas/UserRelationshipIdentityProviderDataList' + required: + - data + type: object + ValidateV2Response: + description: Response for the API key validation endpoint. + properties: + data: + $ref: '#/components/schemas/ValidateV2Data' + required: + - data + type: object + ValidateAPIKeyResponse: + description: Response object for the API and application key validation status check. + properties: + status: + $ref: '#/components/schemas/ValidateAPIKeyStatus' + required: + - status + type: object + IPRanges: + description: IP ranges. + properties: + agents: + $ref: '#/components/schemas/IPPrefixesAgents' + api: + $ref: '#/components/schemas/IPPrefixesAPI' + apm: + $ref: '#/components/schemas/IPPrefixesAPM' + global: + $ref: '#/components/schemas/IPPrefixesGlobal' + logs: + $ref: '#/components/schemas/IPPrefixesLogs' + modified: + description: Date when last updated, in the form `YYYY-MM-DD-hh-mm-ss`. + example: 2019-10-31-20-00-00 + type: string + orchestrator: + $ref: '#/components/schemas/IPPrefixesOrchestrator' + process: + $ref: '#/components/schemas/IPPrefixesProcess' + remote-configuration: + $ref: '#/components/schemas/IPPrefixesRemoteConfiguration' + synthetics: + $ref: '#/components/schemas/IPPrefixesSynthetics' + synthetics-private-locations: + $ref: '#/components/schemas/IPPrefixesSyntheticsPrivateLocations' + version: + description: Version of the IP list. + example: 11 + format: int64 + type: integer + webhooks: + $ref: '#/components/schemas/IPPrefixesWebhooks' + type: object + ApiKeyListResponse: + description: List of API and application keys available for a given organization. + example: + api_keys: + - created_by: test_user + key: 1234512345123456abcabc912349abcd + name: app_key + properties: + api_keys: + description: Array of API keys. + items: + $ref: '#/components/schemas/ApiKey' + type: array + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + ApiKey: + description: Datadog API key. + properties: + created: + description: Date of creation of the API key. + example: '2019-08-02 15:31:07' + readOnly: true + type: string + created_by: + description: Datadog user handle that created the API key. + example: john@example.com + readOnly: true + type: string + key: + description: API key. + example: 1234512345123456abcabc912349abcd + maxLength: 32 + minLength: 32 + readOnly: true + type: string + name: + description: Name of your API key. + example: example user + type: string + type: object + ApiKeyResponse: + description: An API key with its associated metadata. + example: + api_key: + created_by: test_user + key: 1234512345123456abcabc912349abcd + name: app_key + properties: + api_key: + $ref: '#/components/schemas/ApiKey' + type: object + ApplicationKeyListResponse: + description: An application key response. + example: + application_keys: + - hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test_user + properties: + application_keys: + description: Array of application keys. + items: + $ref: '#/components/schemas/ApplicationKey' + type: array + type: object + ApplicationKey: + description: An application key with its associated metadata. + properties: + hash: + description: Hash of an application key. + example: 1234512345123459cda4eb9ced49a3d84fd0138c + maxLength: 40 + minLength: 40 + readOnly: true + type: string + name: + description: Name of an application key. + example: example user + type: string + owner: + description: Owner of an application key. + example: example.com + readOnly: true + type: string + type: object + ApplicationKeyResponseV1: + description: An application key response. + example: + application_key: + hash: 1234512345123459cda4eb9ced49a3d84fd0138c + name: app_key + owner: test_user + properties: + application_key: + $ref: '#/components/schemas/ApplicationKey' + type: object + UsageSortDirection: + default: desc + description: The direction to sort by. + enum: + - desc + - asc + type: string + x-enum-varnames: + - DESC + - ASC + UsageSort: + default: start_date + description: The field to sort by. + enum: + - computed_on + - size + - start_date + - end_date + type: string + x-enum-varnames: + - COMPUTED_ON + - SIZE + - START_DATE + - END_DATE + UsageCustomReportsResponse: + description: Response containing available custom reports. + properties: + data: + description: An array of available custom reports. + items: + $ref: '#/components/schemas/UsageCustomReportsData' + type: array + meta: + $ref: '#/components/schemas/UsageCustomReportsMeta' + type: object + UsageSpecifiedCustomReportsResponse: + description: Returns available specified custom reports. + properties: + data: + $ref: '#/components/schemas/UsageSpecifiedCustomReportsData' + meta: + $ref: '#/components/schemas/UsageSpecifiedCustomReportsMeta' + type: object + OrganizationListResponse: + description: Response with the list of organizations. + properties: + orgs: + description: Array of organization objects. + items: + $ref: '#/components/schemas/OrganizationV1' + type: array + type: object + OrganizationCreateBody: + description: Object describing an organization to create. + properties: + billing: + $ref: '#/components/schemas/OrganizationBilling' + name: + description: The name of the new child-organization, limited to 32 characters. + example: New child org + maxLength: 32 + type: string + subscription: + $ref: '#/components/schemas/OrganizationSubscription' + required: + - name + type: object + OrganizationCreateResponse: + description: Response object for an organization creation. + properties: + api_key: + $ref: '#/components/schemas/ApiKey' + application_key: + $ref: '#/components/schemas/ApplicationKey' + org: + $ref: '#/components/schemas/OrganizationV1' + user: + $ref: '#/components/schemas/UserV1' + type: object + OrganizationResponse: + description: Response with an organization. + properties: + org: + $ref: '#/components/schemas/OrganizationV1' + type: object + OrganizationV1: + description: Create, edit, and manage organizations. + properties: + billing: + $ref: '#/components/schemas/OrganizationBilling' + created: + description: Date of the organization creation. + example: '2019-09-26T17:28:28Z' + readOnly: true + type: string + description: + description: Description of the organization. + example: some description + type: string + name: + description: The name of the child organization, limited to 32 characters. + example: New child org + maxLength: 32 + type: string + public_id: + description: The `public_id` of the organization you are operating within. + example: abcdef12345 + type: string + settings: + $ref: '#/components/schemas/OrganizationSettings' + subscription: + $ref: '#/components/schemas/OrganizationSubscription' + trial: + description: Only available for MSP customers. Allows child organizations to be created on a trial plan. + example: false + type: boolean + type: object + OrgDowngradedResponse: + description: Status of downgrade + properties: + message: + description: Information pertaining to the downgraded child organization. + type: string + type: object + IdpFormData: + description: Object describing the IdP configuration. + properties: + idp_file: + description: The path to the XML metadata file you wish to upload. + example: '' + format: binary + type: string + required: + - idp_file + type: object + IdpResponse: + description: The IdP response object. + properties: + message: + description: Identity provider response. + example: IdP metadata successfully uploaded for example org + type: string + required: + - message + type: object + UsageAnalyzedLogsResponse: + description: A response containing the number of analyzed logs for each hour for a given organization. + properties: + usage: + description: Get hourly usage for analyzed logs. + items: + $ref: '#/components/schemas/UsageAnalyzedLogsHour' + type: array + type: object + UsageAuditLogsResponse: + description: Response containing the audit logs usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for audit logs. + items: + $ref: '#/components/schemas/UsageAuditLogsHour' + type: array + type: object + UsageLambdaResponse: + description: |- + Response containing the number of Lambda functions and sum of the invocations of all Lambda functions + for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Lambda. + items: + $ref: '#/components/schemas/UsageLambdaHour' + type: array + type: object + UsageBillableSummaryResponse: + description: Response with monthly summary of data billed by Datadog. + properties: + usage: + description: An array of objects regarding usage of billable summary. + items: + $ref: '#/components/schemas/UsageBillableSummaryHour' + type: array + type: object + UsageCIVisibilityResponse: + description: CI visibility usage response + properties: + usage: + description: Response containing CI visibility usage. + items: + $ref: '#/components/schemas/UsageCIVisibilityHour' + type: array + type: object + UsageCloudSecurityPostureManagementResponse: + description: The response containing the Cloud Security Management Pro usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Cloud Security Management Pro. + items: + $ref: '#/components/schemas/UsageCloudSecurityPostureManagementHour' + type: array + type: object + UsageCWSResponse: + description: Response containing the Cloud Workload Security usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Cloud Workload Security. + items: + $ref: '#/components/schemas/UsageCWSHour' + type: array + type: object + UsageDBMResponse: + description: Response containing the Database Monitoring usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Database Monitoring + items: + $ref: '#/components/schemas/UsageDBMHour' + type: array + type: object + UsageFargateResponse: + description: Response containing the number of Fargate tasks run and hourly usage. + properties: + usage: + description: Array with the number of hourly Fargate tasks recorded for a given organization. + items: + $ref: '#/components/schemas/UsageFargateHour' + type: array + type: object + UsageHostsResponse: + description: Host usage response. + properties: + usage: + description: An array of objects related to host usage. + items: + $ref: '#/components/schemas/UsageHostHour' + type: array + type: object + HourlyUsageAttributionUsageType: + description: |- + Supported products for hourly usage attribution requests. Usage types are in the format `_usage`. + To obtain the complete list of valid usage types, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + enum: + - api_usage + - apm_fargate_usage + - apm_host_usage + - apm_usm_usage + - appsec_fargate_usage + - appsec_usage + - asm_serverless_traced_invocations_usage + - asm_serverless_traced_invocations_percentage + - bits_ai_investigations_usage + - browser_usage + - ci_code_coverage_committers_percentage + - ci_code_coverage_committers_usage + - ci_pipeline_indexed_spans_usage + - ci_test_indexed_spans_usage + - ci_visibility_itr_usage + - cloud_siem_usage + - code_security_host_usage + - container_excl_agent_usage + - container_usage + - cspm_containers_usage + - cspm_hosts_usage + - custom_event_usage + - custom_ingested_timeseries_usage + - custom_timeseries_usage + - cws_containers_usage + - cws_fargate_task_usage + - cws_hosts_usage + - data_jobs_monitoring_usage + - data_stream_monitoring_usage + - dbm_hosts_usage + - dbm_queries_usage + - error_tracking_usage + - error_tracking_percentage + - estimated_indexed_spans_usage + - estimated_ingested_spans_usage + - fargate_usage + - flex_logs_starter + - flex_stored_logs + - functions_usage + - incident_management_monthly_active_users_usage + - indexed_spans_usage + - infra_host_usage + - infra_host_basic_usage + - ingested_logs_bytes_usage + - ingested_spans_bytes_usage + - invocations_usage + - lambda_traced_invocations_usage + - llm_observability_usage + - llm_spans_usage + - logs_indexed_15day_usage + - logs_indexed_180day_usage + - logs_indexed_1day_usage + - logs_indexed_30day_usage + - logs_indexed_360day_usage + - logs_indexed_3day_usage + - logs_indexed_45day_usage + - logs_indexed_60day_usage + - logs_indexed_7day_usage + - logs_indexed_90day_usage + - logs_indexed_custom_retention_usage + - mobile_app_testing_usage + - ndm_netflow_usage + - npm_host_usage + - network_device_wireless_usage + - obs_pipeline_bytes_usage + - obs_pipelines_vcpu_usage + - online_archive_usage + - product_analytics_session_usage + - profiled_container_usage + - profiled_fargate_usage + - profiled_host_usage + - published_app + - rum_browser_mobile_sessions_usage + - rum_ingested_usage + - rum_investigate_usage + - rum_replay_sessions_usage + - rum_session_replay_add_on_usage + - sca_fargate_usage + - sds_scanned_bytes_usage + - serverless_apps_usage + - serverless_apps_apm_usage + - siem_12mo_retention_usage + - siem_6mo_retention_usage + - siem_analyzed_logs_add_on_usage + - siem_ingested_bytes_usage + - snmp_usage + - universal_service_monitoring_usage + - vuln_management_hosts_usage + - workflow_executions_usage + type: string + x-enum-varnames: + - API_USAGE + - APM_FARGATE_USAGE + - APM_HOST_USAGE + - APM_USM_USAGE + - APPSEC_FARGATE_USAGE + - APPSEC_USAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE + - BITS_AI_INVESTIGATIONS_USAGE + - BROWSER_USAGE + - CI_CODE_COVERAGE_COMMITTERS_PERCENTAGE + - CI_CODE_COVERAGE_COMMITTERS_USAGE + - CI_PIPELINE_INDEXED_SPANS_USAGE + - CI_TEST_INDEXED_SPANS_USAGE + - CI_VISIBILITY_ITR_USAGE + - CLOUD_SIEM_USAGE + - CODE_SECURITY_HOST_USAGE + - CONTAINER_EXCL_AGENT_USAGE + - CONTAINER_USAGE + - CSPM_CONTAINERS_USAGE + - CSPM_HOSTS_USAGE + - CUSTOM_EVENT_USAGE + - CUSTOM_INGESTED_TIMESERIES_USAGE + - CUSTOM_TIMESERIES_USAGE + - CWS_CONTAINERS_USAGE + - CWS_FARGATE_TASK_USAGE + - CWS_HOSTS_USAGE + - DATA_JOBS_MONITORING_USAGE + - DATA_STREAM_MONITORING_USAGE + - DBM_HOSTS_USAGE + - DBM_QUERIES_USAGE + - ERROR_TRACKING_USAGE + - ERROR_TRACKING_PERCENTAGE + - ESTIMATED_INDEXED_SPANS_USAGE + - ESTIMATED_INGESTED_SPANS_USAGE + - FARGATE_USAGE + - FLEX_LOGS_STARTER + - FLEX_STORED_LOGS + - FUNCTIONS_USAGE + - INCIDENT_MANAGEMENT_MONTHLY_ACTIVE_USERS_USAGE + - INDEXED_SPANS_USAGE + - INFRA_HOST_USAGE + - INFRA_HOST_BASIC_USAGE + - INGESTED_LOGS_BYTES_USAGE + - INGESTED_SPANS_BYTES_USAGE + - INVOCATIONS_USAGE + - LAMBDA_TRACED_INVOCATIONS_USAGE + - LLM_OBSERVABILITY_USAGE + - LLM_SPANS_USAGE + - LOGS_INDEXED_15DAY_USAGE + - LOGS_INDEXED_180DAY_USAGE + - LOGS_INDEXED_1DAY_USAGE + - LOGS_INDEXED_30DAY_USAGE + - LOGS_INDEXED_360DAY_USAGE + - LOGS_INDEXED_3DAY_USAGE + - LOGS_INDEXED_45DAY_USAGE + - LOGS_INDEXED_60DAY_USAGE + - LOGS_INDEXED_7DAY_USAGE + - LOGS_INDEXED_90DAY_USAGE + - LOGS_INDEXED_CUSTOM_RETENTION_USAGE + - MOBILE_APP_TESTING_USAGE + - NDM_NETFLOW_USAGE + - NETWORK_DEVICE_WIRELESS_USAGE + - NPM_HOST_USAGE + - OBS_PIPELINE_BYTES_USAGE + - OBS_PIPELINE_VCPU_USAGE + - ONLINE_ARCHIVE_USAGE + - PRODUCT_ANALYTICS_SESSION_USAGE + - PROFILED_CONTAINER_USAGE + - PROFILED_FARGATE_USAGE + - PROFILED_HOST_USAGE + - PUBLISHED_APP_USAGE + - RUM_BROWSER_MOBILE_SESSIONS_USAGE + - RUM_INGESTED_USAGE + - RUM_INVESTIGATE_USAGE + - RUM_REPLAY_SESSIONS_USAGE + - RUM_SESSION_REPLAY_ADD_ON_USAGE + - SCA_FARGATE_USAGE + - SDS_SCANNED_BYTES_USAGE + - SERVERLESS_APPS_USAGE + - SERVERLESS_APPS_APM_USAGE + - SIEM_12MO_RETENTION_USAGE + - SIEM_6MO_RETENTION_USAGE + - SIEM_ANALYZED_LOGS_ADD_ON_USAGE + - SIEM_INGESTED_BYTES_USAGE + - SNMP_USAGE + - UNIVERSAL_SERVICE_MONITORING_USAGE + - VULN_MANAGEMENT_HOSTS_USAGE + - WORKFLOW_EXECUTIONS_USAGE + HourlyUsageAttributionResponse: + description: Response containing the hourly usage attribution by tag(s). + properties: + metadata: + $ref: '#/components/schemas/HourlyUsageAttributionMetadata' + usage: + description: Get the hourly usage attribution by tag(s). + items: + $ref: '#/components/schemas/HourlyUsageAttributionBody' + type: array + type: object + UsageIncidentManagementResponse: + description: Response containing the incident management usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for incident management. + items: + $ref: '#/components/schemas/UsageIncidentManagementHour' + type: array + type: object + UsageIndexedSpansResponse: + description: A response containing indexed spans usage. + properties: + usage: + description: Array with the number of hourly traces indexed for a given organization. + items: + $ref: '#/components/schemas/UsageIndexedSpansHour' + type: array + type: object + UsageIngestedSpansResponse: + description: Response containing the ingested spans usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for ingested spans. + items: + $ref: '#/components/schemas/UsageIngestedSpansHour' + type: array + type: object + UsageIoTResponse: + description: Response containing the IoT usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for IoT. + items: + $ref: '#/components/schemas/UsageIoTHour' + type: array + type: object + UsageLogsResponse: + description: Response containing the number of logs for each hour. + properties: + usage: + description: An array of objects regarding hourly usage of logs. + items: + $ref: '#/components/schemas/UsageLogsHour' + type: array + type: object + UsageLogsByRetentionResponse: + description: Response containing the indexed logs usage broken down by retention period for an organization during a given hour. + properties: + usage: + description: Get hourly usage for indexed logs by retention period. + items: + $ref: '#/components/schemas/UsageLogsByRetentionHour' + type: array + type: object + UsageLogsByIndexResponse: + description: Response containing the number of indexed logs for each hour and index for a given organization. + properties: + usage: + description: An array of objects regarding hourly usage of logs by index response. + items: + $ref: '#/components/schemas/UsageLogsByIndexHour' + type: array + type: object + MonthlyUsageAttributionSupportedMetrics: + description: |- + Supported metrics for monthly usage attribution requests. Usage types are in the format `_usage`. + To obtain the complete list of valid usage types, make a request to the [Get usage attribution types API](https://docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). + enum: + - api_usage + - api_percentage + - apm_fargate_usage + - apm_fargate_percentage + - appsec_fargate_usage + - appsec_fargate_percentage + - apm_host_usage + - apm_host_percentage + - apm_usm_usage + - apm_usm_percentage + - appsec_usage + - appsec_percentage + - asm_serverless_traced_invocations_usage + - asm_serverless_traced_invocations_percentage + - bits_ai_investigations_usage + - bits_ai_investigations_percentage + - browser_usage + - browser_percentage + - ci_visibility_itr_usage + - ci_visibility_itr_percentage + - cloud_siem_usage + - cloud_siem_percentage + - code_security_host_usage + - code_security_host_percentage + - container_excl_agent_usage + - container_excl_agent_percentage + - container_usage + - container_percentage + - cspm_containers_percentage + - cspm_containers_usage + - cspm_hosts_percentage + - cspm_hosts_usage + - custom_timeseries_usage + - custom_timeseries_percentage + - custom_ingested_timeseries_usage + - custom_ingested_timeseries_percentage + - cws_containers_percentage + - cws_containers_usage + - cws_fargate_task_percentage + - cws_fargate_task_usage + - cws_hosts_percentage + - cws_hosts_usage + - data_jobs_monitoring_usage + - data_jobs_monitoring_percentage + - data_stream_monitoring_usage + - data_stream_monitoring_percentage + - dbm_hosts_percentage + - dbm_hosts_usage + - dbm_queries_percentage + - dbm_queries_usage + - error_tracking_usage + - error_tracking_percentage + - estimated_indexed_spans_usage + - estimated_indexed_spans_percentage + - estimated_ingested_spans_usage + - estimated_ingested_spans_percentage + - fargate_usage + - fargate_percentage + - flex_logs_starter_usage + - flex_logs_starter_percentage + - flex_stored_logs_usage + - flex_stored_logs_percentage + - functions_usage + - functions_percentage + - incident_management_monthly_active_users_usage + - incident_management_monthly_active_users_percentage + - infra_host_usage + - infra_host_percentage + - infra_host_basic_usage + - infra_host_basic_percentage + - invocations_usage + - invocations_percentage + - lambda_traced_invocations_usage + - lambda_traced_invocations_percentage + - llm_observability_usage + - llm_observability_percentage + - llm_spans_usage + - llm_spans_percentage + - mobile_app_testing_percentage + - mobile_app_testing_usage + - ndm_netflow_usage + - ndm_netflow_percentage + - network_device_wireless_usage + - network_device_wireless_percentage + - npm_host_usage + - npm_host_percentage + - obs_pipeline_bytes_usage + - obs_pipeline_bytes_percentage + - obs_pipelines_vcpu_usage + - obs_pipelines_vcpu_percentage + - online_archive_usage + - online_archive_percentage + - product_analytics_session_usage + - product_analytics_session_percentage + - profiled_container_usage + - profiled_container_percentage + - profiled_fargate_usage + - profiled_fargate_percentage + - profiled_host_usage + - profiled_host_percentage + - published_app_usage + - published_app_percentage + - serverless_apps_usage + - serverless_apps_percentage + - serverless_apps_apm_usage + - serverless_apps_apm_percentage + - snmp_usage + - snmp_percentage + - universal_service_monitoring_usage + - universal_service_monitoring_percentage + - vuln_management_hosts_usage + - vuln_management_hosts_percentage + - sds_scanned_bytes_usage + - sds_scanned_bytes_percentage + - ci_test_indexed_spans_usage + - ci_test_indexed_spans_percentage + - ingested_logs_bytes_usage + - ingested_logs_bytes_percentage + - ci_pipeline_indexed_spans_usage + - ci_pipeline_indexed_spans_percentage + - indexed_spans_usage + - indexed_spans_percentage + - custom_event_usage + - custom_event_percentage + - logs_indexed_custom_retention_usage + - logs_indexed_custom_retention_percentage + - logs_indexed_360day_usage + - logs_indexed_360day_percentage + - logs_indexed_180day_usage + - logs_indexed_180day_percentage + - logs_indexed_90day_usage + - logs_indexed_90day_percentage + - logs_indexed_60day_usage + - logs_indexed_60day_percentage + - logs_indexed_45day_usage + - logs_indexed_45day_percentage + - logs_indexed_30day_usage + - logs_indexed_30day_percentage + - logs_indexed_15day_usage + - logs_indexed_15day_percentage + - logs_indexed_7day_usage + - logs_indexed_7day_percentage + - logs_indexed_3day_usage + - logs_indexed_3day_percentage + - logs_indexed_1day_usage + - logs_indexed_1day_percentage + - rum_ingested_usage + - rum_ingested_percentage + - rum_investigate_usage + - rum_investigate_percentage + - rum_replay_sessions_usage + - rum_replay_sessions_percentage + - rum_session_replay_add_on_usage + - rum_session_replay_add_on_percentage + - rum_browser_mobile_sessions_usage + - rum_browser_mobile_sessions_percentage + - ingested_spans_bytes_usage + - ingested_spans_bytes_percentage + - siem_12mo_retention_usage + - siem_12mo_retention_percentage + - siem_6mo_retention_usage + - siem_6mo_retention_percentage + - siem_analyzed_logs_add_on_usage + - siem_analyzed_logs_add_on_percentage + - siem_ingested_bytes_usage + - siem_ingested_bytes_percentage + - workflow_executions_usage + - workflow_executions_percentage + - sca_fargate_usage + - sca_fargate_percentage + - '*' + type: string + x-enum-varnames: + - API_USAGE + - API_PERCENTAGE + - APM_FARGATE_USAGE + - APM_FARGATE_PERCENTAGE + - APPSEC_FARGATE_USAGE + - APPSEC_FARGATE_PERCENTAGE + - APM_HOST_USAGE + - APM_HOST_PERCENTAGE + - APM_USM_USAGE + - APM_USM_PERCENTAGE + - APPSEC_USAGE + - APPSEC_PERCENTAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_USAGE + - ASM_SERVERLESS_TRACED_INVOCATIONS_PERCENTAGE + - BITS_AI_INVESTIGATIONS_USAGE + - BITS_AI_INVESTIGATIONS_PERCENTAGE + - BROWSER_USAGE + - BROWSER_PERCENTAGE + - CI_VISIBILITY_ITR_USAGE + - CI_VISIBILITY_ITR_PERCENTAGE + - CLOUD_SIEM_USAGE + - CLOUD_SIEM_PERCENTAGE + - CODE_SECURITY_HOST_USAGE + - CODE_SECURITY_HOST_PERCENTAGE + - CONTAINER_EXCL_AGENT_USAGE + - CONTAINER_EXCL_AGENT_PERCENTAGE + - CONTAINER_USAGE + - CONTAINER_PERCENTAGE + - CSPM_CONTAINERS_PERCENTAGE + - CSPM_CONTAINERS_USAGE + - CSPM_HOSTS_PERCENTAGE + - CSPM_HOSTS_USAGE + - CUSTOM_TIMESERIES_USAGE + - CUSTOM_TIMESERIES_PERCENTAGE + - CUSTOM_INGESTED_TIMESERIES_USAGE + - CUSTOM_INGESTED_TIMESERIES_PERCENTAGE + - CWS_CONTAINERS_PERCENTAGE + - CWS_CONTAINERS_USAGE + - CWS_FARGATE_TASK_PERCENTAGE + - CWS_FARGATE_TASK_USAGE + - CWS_HOSTS_PERCENTAGE + - CWS_HOSTS_USAGE + - DATA_JOBS_MONITORING_USAGE + - DATA_JOBS_MONITORING_PERCENTAGE + - DATA_STREAM_MONITORING_USAGE + - DATA_STREAM_MONITORING_PERCENTAGE + - DBM_HOSTS_PERCENTAGE + - DBM_HOSTS_USAGE + - DBM_QUERIES_PERCENTAGE + - DBM_QUERIES_USAGE + - ERROR_TRACKING_USAGE + - ERROR_TRACKING_PERCENTAGE + - ESTIMATED_INDEXED_SPANS_USAGE + - ESTIMATED_INDEXED_SPANS_PERCENTAGE + - ESTIMATED_INGESTED_SPANS_USAGE + - ESTIMATED_INGESTED_SPANS_PERCENTAGE + - FARGATE_USAGE + - FARGATE_PERCENTAGE + - FLEX_LOGS_STARTER_USAGE + - FLEX_LOGS_STARTER_PERCENTAGE + - FLEX_STORED_LOGS_USAGE + - FLEX_STORED_LOGS_PERCENTAGE + - FUNCTIONS_USAGE + - FUNCTIONS_PERCENTAGE + - INCIDENT_MANAGEMENT_MONTHLY_ACTIVE_USERS_USAGE + - INCIDENT_MANAGEMENT_MONTHLY_ACTIVE_USERS_PERCENTAGE + - INFRA_HOST_USAGE + - INFRA_HOST_PERCENTAGE + - INFRA_HOST_BASIC_USAGE + - INFRA_HOST_BASIC_PERCENTAGE + - INVOCATIONS_USAGE + - INVOCATIONS_PERCENTAGE + - LAMBDA_TRACED_INVOCATIONS_USAGE + - LAMBDA_TRACED_INVOCATIONS_PERCENTAGE + - LLM_OBSERVABILITY_USAGE + - LLM_OBSERVABILITY_PERCENTAGE + - LLM_SPANS_USAGE + - LLM_SPANS_PERCENTAGE + - MOBILE_APP_TESTING_USAGE + - MOBILE_APP_TESTING_PERCENTAGE + - NDM_NETFLOW_USAGE + - NDM_NETFLOW_PERCENTAGE + - NETWORK_DEVICE_WIRELESS_USAGE + - NETWORK_DEVICE_WIRELESS_PERCENTAGE + - NPM_HOST_USAGE + - NPM_HOST_PERCENTAGE + - OBS_PIPELINE_BYTES_USAGE + - OBS_PIPELINE_BYTES_PERCENTAGE + - OBS_PIPELINES_VCPU_USAGE + - OBS_PIPELINES_VCPU_PERCENTAGE + - ONLINE_ARCHIVE_USAGE + - ONLINE_ARCHIVE_PERCENTAGE + - PRODUCT_ANALYTICS_SESSION_USAGE + - PRODUCT_ANALYTICS_SESSION_PERCENTAGE + - PROFILED_CONTAINER_USAGE + - PROFILED_CONTAINER_PERCENTAGE + - PROFILED_FARGATE_USAGE + - PROFILED_FARGATE_PERCENTAGE + - PROFILED_HOST_USAGE + - PROFILED_HOST_PERCENTAGE + - PUBLISHED_APP_USAGE + - PUBLISHED_APP_PERCENTAGE + - SERVERLESS_APPS_USAGE + - SERVERLESS_APPS_PERCENTAGE + - SERVERLESS_APPS_APM_USAGE + - SERVERLESS_APPS_APM_PERCENTAGE + - SNMP_USAGE + - SNMP_PERCENTAGE + - UNIVERSAL_SERVICE_MONITORING_USAGE + - UNIVERSAL_SERVICE_MONITORING_PERCENTAGE + - VULN_MANAGEMENT_HOSTS_USAGE + - VULN_MANAGEMENT_HOSTS_PERCENTAGE + - SDS_SCANNED_BYTES_USAGE + - SDS_SCANNED_BYTES_PERCENTAGE + - CI_TEST_INDEXED_SPANS_USAGE + - CI_TEST_INDEXED_SPANS_PERCENTAGE + - INGESTED_LOGS_BYTES_USAGE + - INGESTED_LOGS_BYTES_PERCENTAGE + - CI_PIPELINE_INDEXED_SPANS_USAGE + - CI_PIPELINE_INDEXED_SPANS_PERCENTAGE + - INDEXED_SPANS_USAGE + - INDEXED_SPANS_PERCENTAGE + - CUSTOM_EVENT_USAGE + - CUSTOM_EVENT_PERCENTAGE + - LOGS_INDEXED_CUSTOM_RETENTION_USAGE + - LOGS_INDEXED_CUSTOM_RETENTION_PERCENTAGE + - LOGS_INDEXED_360DAY_USAGE + - LOGS_INDEXED_360DAY_PERCENTAGE + - LOGS_INDEXED_180DAY_USAGE + - LOGS_INDEXED_180DAY_PERCENTAGE + - LOGS_INDEXED_90DAY_USAGE + - LOGS_INDEXED_90DAY_PERCENTAGE + - LOGS_INDEXED_60DAY_USAGE + - LOGS_INDEXED_60DAY_PERCENTAGE + - LOGS_INDEXED_45DAY_USAGE + - LOGS_INDEXED_45DAY_PERCENTAGE + - LOGS_INDEXED_30DAY_USAGE + - LOGS_INDEXED_30DAY_PERCENTAGE + - LOGS_INDEXED_15DAY_USAGE + - LOGS_INDEXED_15DAY_PERCENTAGE + - LOGS_INDEXED_7DAY_USAGE + - LOGS_INDEXED_7DAY_PERCENTAGE + - LOGS_INDEXED_3DAY_USAGE + - LOGS_INDEXED_3DAY_PERCENTAGE + - LOGS_INDEXED_1DAY_USAGE + - LOGS_INDEXED_1DAY_PERCENTAGE + - RUM_INGESTED_USAGE + - RUM_INGESTED_PERCENTAGE + - RUM_INVESTIGATE_USAGE + - RUM_INVESTIGATE_PERCENTAGE + - RUM_REPLAY_SESSIONS_USAGE + - RUM_REPLAY_SESSIONS_PERCENTAGE + - RUM_SESSION_REPLAY_ADD_ON_USAGE + - RUM_SESSION_REPLAY_ADD_ON_PERCENTAGE + - RUM_BROWSER_MOBILE_SESSIONS_USAGE + - RUM_BROWSER_MOBILE_SESSIONS_PERCENTAGE + - INGESTED_SPANS_BYTES_USAGE + - INGESTED_SPANS_BYTES_PERCENTAGE + - SIEM_12MO_RETENTION_USAGE + - SIEM_12MO_RETENTION_PERCENTAGE + - SIEM_6MO_RETENTION_USAGE + - SIEM_6MO_RETENTION_PERCENTAGE + - SIEM_ANALYZED_LOGS_ADD_ON_USAGE + - SIEM_ANALYZED_LOGS_ADD_ON_PERCENTAGE + - SIEM_INGESTED_BYTES_USAGE + - SIEM_INGESTED_BYTES_PERCENTAGE + - WORKFLOW_EXECUTIONS_USAGE + - WORKFLOW_EXECUTIONS_PERCENTAGE + - SCA_FARGATE_USAGE + - SCA_FARGATE_PERCENTAGE + - ALL + MonthlyUsageAttributionResponse: + description: Response containing the monthly Usage Summary by tag(s). + properties: + metadata: + $ref: '#/components/schemas/MonthlyUsageAttributionMetadata' + usage: + description: Get usage summary by tag(s). + items: + $ref: '#/components/schemas/MonthlyUsageAttributionBody' + type: array + type: object + UsageNetworkFlowsResponse: + description: Response containing the number of netflow events indexed for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Network Flows. + items: + $ref: '#/components/schemas/UsageNetworkFlowsHour' + type: array + type: object + UsageNetworkHostsResponse: + description: Response containing the number of active NPM hosts for each hour for a given organization. + properties: + usage: + description: Get hourly usage for NPM hosts. + items: + $ref: '#/components/schemas/UsageNetworkHostsHour' + type: array + type: object + UsageOnlineArchiveResponse: + description: Online Archive usage response. + properties: + usage: + description: Response containing Online Archive usage. + items: + $ref: '#/components/schemas/UsageOnlineArchiveHour' + type: array + type: object + UsageProfilingResponse: + description: Response containing the number of profiled hosts for each hour for a given organization. + properties: + usage: + description: Get hourly usage for profiled hosts. + items: + $ref: '#/components/schemas/UsageProfilingHour' + type: array + type: object + UsageRumUnitsResponse: + description: Response containing the number of RUM Units for each hour for a given organization. + properties: + usage: + description: Get hourly usage for RUM Units. + items: + $ref: '#/components/schemas/UsageRumUnitsHour' + type: array + type: object + UsageRumSessionsResponse: + description: Response containing the number of RUM sessions for each hour for a given organization. + properties: + usage: + description: Get hourly usage for RUM sessions. + items: + $ref: '#/components/schemas/UsageRumSessionsHour' + type: array + type: object + UsageSDSResponse: + description: Response containing the Sensitive Data Scanner usage for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Sensitive Data Scanner. + items: + $ref: '#/components/schemas/UsageSDSHour' + type: array + type: object + UsageSNMPResponse: + description: Response containing the number of SNMP devices for each hour for a given organization. + properties: + usage: + description: Get hourly usage for SNMP devices. + items: + $ref: '#/components/schemas/UsageSNMPHour' + type: array + type: object + UsageSummaryResponse: + description: |- + Response summarizing all usage aggregated across the months in the request for + all organizations, and broken down by month and by organization. + + For SDK users only: all fields at this response level are accessible through the + `additionalProperties` map. Existing typed-field getters are unchanged. New billing + dimensions will not have typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key. + properties: + agent_host_top99p_sum: + description: Shows the 99th percentile of all agent hosts over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_agent_builder_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Agent Builder over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_agg_sum: + description: Shows the sum of all AI credits over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_bits_assistant_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_bits_dev_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Bits AI Dev over all hours in the current month for all organizations. + format: int64 + type: integer + ai_credits_bits_sre_ai_credits_agg_sum: + description: Shows the sum of all AI credits used by Bits AI SRE over all hours in the current month for all organizations. + format: int64 + type: integer + apm_azure_app_service_host_top99p_sum: + description: Shows the 99th percentile of all Azure app services using APM over all hours in the current month all organizations. + format: int64 + type: integer + apm_devsecops_host_top99p_sum: + description: Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current month for all organizations. + format: int64 + type: integer + apm_enterprise_standalone_hosts_top99p_sum: + description: Shows the sum of the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current month for all organizations. + format: int64 + type: integer + apm_fargate_count_avg_sum: + description: Shows the average of all APM ECS Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + apm_host_top99p_sum: + description: Shows the 99th percentile of all distinct APM hosts over all hours in the current month for all organizations. + format: int64 + type: integer + apm_pro_standalone_hosts_top99p_sum: + description: Shows the sum of the 99th percentile of all distinct standalone Pro hosts over all hours in the current month for all organizations. + format: int64 + type: integer + appsec_fargate_count_avg_sum: + description: Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + asm_serverless_agg_sum: + description: Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current months for all organizations. + format: int64 + type: integer + audit_logs_lines_indexed_agg_sum: + deprecated: true + description: Shows the sum of all audit logs lines indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + audit_trail_enabled_hwm_sum: + description: Shows the total number of organizations that had Audit Trail enabled over a specific number of months. + format: int64 + type: integer + audit_trail_event_forwarding_events_agg_sum: + description: Shows the sum of all Audit Trail event forwarding events over all hours in the current month for all organizations. + format: int64 + type: integer + avg_profiled_fargate_tasks_sum: + description: The average total count for Fargate Container Profiler over all hours in the current month for all organizations. + format: int64 + type: integer + aws_host_top99p_sum: + description: Shows the 99th percentile of all AWS hosts over all hours in the current month for all organizations. + format: int64 + type: integer + aws_lambda_func_count: + description: Shows the average of the number of functions that executed 1 or more times each hour in the current month for all organizations. + format: int64 + type: integer + aws_lambda_invocations_sum: + description: Shows the sum of all AWS Lambda invocations over all hours in the current month for all organizations. + format: int64 + type: integer + azure_app_service_top99p_sum: + description: Shows the 99th percentile of all Azure app services over all hours in the current month for all organizations. + format: int64 + type: integer + azure_host_top99p_sum: + description: Shows the 99th percentile of all Azure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + billable_ingested_bytes_agg_sum: + description: Shows the sum of all log bytes ingested over all hours in the current month for all organizations. + format: int64 + type: integer + bits_ai_investigations_agg_sum: + description: Shows the sum of all Bits AI Investigations over all hours in the current month for all organizations. + format: int64 + type: integer + browser_rum_lite_session_count_agg_sum: + deprecated: true + description: Shows the sum of all browser lite sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_replay_session_count_agg_sum: + description: Shows the sum of all browser replay sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_units_agg_sum: + deprecated: true + description: Shows the sum of all browser RUM units over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ccm_anthropic_spend_last_sum: + description: Shows the sum of the last value of Anthropic cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_aws_spend_last_sum: + description: Shows the sum of the last value of AWS cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_azure_spend_last_sum: + description: Shows the sum of the last value of Azure cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_confluent_spend_last_sum: + description: Shows the sum of the last value of Confluent cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_databricks_spend_last_sum: + description: Shows the sum of the last value of Databricks cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_elastic_spend_last_sum: + description: Shows the sum of the last value of Elastic cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_fastly_spend_last_sum: + description: Shows the sum of the last value of Fastly cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_gcp_spend_last_sum: + description: Shows the sum of the last value of GCP cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_github_spend_last_sum: + description: Shows the sum of the last value of GitHub cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_mongodb_spend_last_sum: + description: Shows the sum of the last value of MongoDB cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_oci_spend_last_sum: + description: Shows the sum of the last value of OCI cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_openai_spend_last_sum: + description: Shows the sum of the last value of OpenAI cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_snowflake_spend_last_sum: + description: Shows the sum of the last value of Snowflake cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ccm_spend_monitored_ent_last_sum: + description: Shows the sum of the last value of the amount of cloud spend monitored for Enterprise in the current month for all organizations. + format: int64 + type: integer + ccm_spend_monitored_pro_last_sum: + description: Shows the sum of the last value of the amount of cloud spend monitored for Pro in the current month for all organizations. + format: int64 + type: integer + ccm_twilio_spend_last_sum: + description: Shows the sum of the last value of Twilio cloud spend monitored in the current month for all organizations. + format: int64 + type: integer + ci_pipeline_indexed_spans_agg_sum: + description: Shows the sum of all CI pipeline indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_test_indexed_spans_agg_sum: + description: Shows the sum of all CI test indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_itr_committers_hwm_sum: + description: Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_pipeline_committers_hwm_sum: + description: Shows the high-water mark of all CI visibility pipeline committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_test_committers_hwm_sum: + description: Shows the high-water mark of all CI visibility test committers over all hours in the current month for all organizations. + format: int64 + type: integer + cloud_cost_management_aws_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for AWS. + format: int64 + type: integer + cloud_cost_management_azure_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for Azure. + format: int64 + type: integer + cloud_cost_management_gcp_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for GCP. + format: int64 + type: integer + cloud_cost_management_host_count_avg_sum: + description: Sum of the host count average for Cloud Cost Management for all cloud providers. + format: int64 + type: integer + cloud_cost_management_oci_host_count_avg_sum: + description: Sum of the average host counts for Cloud Cost Management on OCI. + format: int64 + type: integer + cloud_siem_events_agg_sum: + description: Shows the sum of all Cloud Security Information and Event Management events over all hours in the current month for all organizations. + format: int64 + type: integer + cloud_siem_indexed_logs_agg_sum: + description: Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current month for all organizations. + format: int64 + type: integer + code_analysis_sa_committers_hwm_sum: + description: Shows the high-water mark of all Static Analysis committers over all hours in the current month for all organizations. + format: int64 + type: integer + code_analysis_sca_committers_hwm_sum: + description: Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current month for all organizations. + format: int64 + type: integer + code_security_host_top99p_sum: + description: Shows the 99th percentile of all Code Security hosts over all hours in the current month for all organizations. + format: int64 + type: integer + container_avg_sum: + description: Shows the average of all distinct containers over all hours in the current month for all organizations. + format: int64 + type: integer + container_excl_agent_avg_sum: + description: Shows the average of the containers without the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + container_hwm_sum: + description: Shows the sum of the high-water marks of all distinct containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_container_enterprise_compliance_count_agg_sum: + description: Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_container_enterprise_cws_count_agg_sum: + description: Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_container_enterprise_total_count_agg_sum: + description: Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_aas_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_aws_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_azure_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_compliance_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_cws_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_gcp_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_oci_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_enterprise_total_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_agg_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + csm_host_pro_oci_host_count_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_aas_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_aws_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_azure_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_container_avg_sum: + description: Shows the average number of Cloud Security Management Pro containers over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_container_hwm_sum: + description: Shows the sum of the high-water marks of Cloud Security Management Pro containers over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_gcp_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_agg_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_top99p_sum: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current month for all organizations. + format: int64 + type: integer + custom_historical_ts_sum: + description: Shows the average number of distinct historical custom metrics over all hours in the current month for all organizations. + format: int64 + type: integer + custom_live_ts_sum: + description: Shows the average number of distinct live custom metrics over all hours in the current month for all organizations. + format: int64 + type: integer + custom_ts_sum: + description: Shows the average number of distinct custom metrics over all hours in the current month for all organizations. + format: int64 + type: integer + cws_container_avg_sum: + description: Shows the average of all distinct Cloud Workload Security containers over all hours in the current month for all organizations. + format: int64 + type: integer + cws_fargate_task_avg_sum: + description: Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + cws_host_top99p_sum: + description: Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current month for all organizations. + format: int64 + type: integer + data_jobs_monitoring_host_hr_agg_sum: + description: Shows the sum of Data Jobs Monitoring hosts over all hours in the current months for all organizations + format: int64 + type: integer + data_stream_monitoring_host_count_agg_sum: + description: Shows the sum of all Data Streams Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + data_stream_monitoring_host_count_top99p_sum: + description: Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + dbm_host_top99p_sum: + description: Shows the 99th percentile of all Database Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + dbm_queries_avg_sum: + description: Shows the average of all distinct Database Monitoring Normalized Queries over all hours in the current month for all organizations. + format: int64 + type: integer + do_jobs_monitoring_orchestrators_job_hours_agg_sum: + description: Shows the sum of all orchestrator job hours over all hours in the current month for all organizations. + format: int64 + type: integer + end_date: + description: Shows the last date of usage in the current month for all organizations. + format: date-time + type: string + eph_infra_host_agent_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_alibaba_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_aws_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_azure_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_basic_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_agent_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_vsphere_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_ent_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_gcp_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_heroku_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_only_aas_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_only_vsphere_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_opentelemetry_agg_sum: + description: Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_opentelemetry_apm_agg_sum: + description: Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_pro_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_proplus_agg_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current month for all organizations. + format: int64 + type: integer + eph_infra_host_proxmox_agg_sum: + description: Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current month for all organizations. + format: int64 + type: integer + error_tracking_apm_error_events_agg_sum: + description: Shows the sum of all Error Tracking APM error events over all hours in the current month for all organizations. + format: int64 + type: integer + error_tracking_error_events_agg_sum: + description: Shows the sum of all Error Tracking error events over all hours in the current month for all organizations. + format: int64 + type: integer + error_tracking_events_agg_sum: + description: Shows the sum of all Error Tracking events over all hours in the current months for all organizations. + format: int64 + type: integer + error_tracking_rum_error_events_agg_sum: + description: Shows the sum of all Error Tracking RUM error events over all hours in the current month for all organizations. + format: int64 + type: integer + event_management_correlation_agg_sum: + description: Shows the sum of all Event Management correlations over all hours in the current month for all organizations. + format: int64 + type: integer + event_management_correlation_correlated_events_agg_sum: + description: Shows the sum of all Event Management correlated events over all hours in the current month for all organizations. + format: int64 + type: integer + event_management_correlation_correlated_related_events_agg_sum: + description: Shows the sum of all Event Management correlated related events over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_avg_sum: + description: The average number of Profiling Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_eks_avg_sum: + description: The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_tasks_count_avg_sum: + description: Shows the average of all Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + fargate_tasks_count_hwm_sum: + description: Shows the sum of the high-water marks of all Fargate tasks over all hours in the current month for all organizations. + format: int64 + type: integer + feature_flags_config_requests_agg_sum: + description: Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current month for all organizations. + format: int64 + type: integer + flex_logs_compute_large_avg_sum: + description: Shows the average number of Flex Logs Compute Large Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_medium_avg_sum: + description: Shows the average number of Flex Logs Compute Medium Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_small_avg_sum: + description: Shows the average number of Flex Logs Compute Small Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_xlarge_avg_sum: + description: Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_compute_xsmall_avg_sum: + description: Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_starter_avg_sum: + description: Shows the average number of Flex Logs Starter Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_starter_storage_index_avg_sum: + description: Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_logs_starter_storage_retention_adjustment_avg_sum: + description: Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current months for all organizations. + format: int64 + type: integer + flex_stored_logs_avg_sum: + description: Shows the average of all Flex Stored Logs over all hours in the current months for all organizations. + format: int64 + type: integer + forwarding_events_bytes_agg_sum: + description: Shows the sum of all logs forwarding bytes over all hours in the current month for all organizations (data available as of April 1, 2023) + format: int64 + type: integer + gcp_host_top99p_sum: + description: Shows the 99th percentile of all GCP hosts over all hours in the current month for all organizations. + format: int64 + type: integer + heroku_host_top99p_sum: + description: Shows the 99th percentile of all Heroku dynos over all hours in the current month for all organizations. + format: int64 + type: integer + incident_management_monthly_active_users_hwm_sum: + description: Shows sum of the high-water marks of incident management monthly active users in the current month for all organizations. + format: int64 + type: integer + incident_management_seats_hwm_sum: + description: Shows the sum of the high-water marks of Incident Management seats over all hours in the current month for all organizations. + format: int64 + type: integer + indexed_events_count_agg_sum: + deprecated: true + description: Shows the sum of all log events indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + indexed_points_agg_sum: + description: Shows the sum of all indexed custom metrics points over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_agg_sum: + description: Shows the sum of all Infrastructure vCPU cores over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_avg_sum: + description: Shows the average of all Infrastructure vCPU cores over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_agg_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_avg_sum: + description: Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_agg_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_avg_sum: + description: Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_agg_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_avg_sum: + description: Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_agg_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_avg_sum: + description: Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current month for all organizations. + format: int64 + type: integer + infra_edge_monitoring_devices_top99p_sum: + description: Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_agent_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_vsphere_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_basic_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current month for all organizations. + format: int64 + type: integer + infra_host_top99p_sum: + description: Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current month for all organizations. + format: int64 + type: integer + infra_storage_mgmt_objects_count_avg_sum: + description: Shows the average number of storage management objects over all hours in the current month for all organizations. + format: int64 + type: integer + ingest_points_agg_sum: + description: Shows the sum of all ingested custom metrics points over all hours in the current month for all organizations. + format: int64 + type: integer + ingested_events_bytes_agg_sum: + description: Shows the sum of all log bytes ingested over all hours in the current month for all organizations. + format: int64 + type: integer + iot_apm_host_agg_sum: + description: Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current month for all organizations. + format: int64 + type: integer + iot_apm_host_top99p_sum: + description: Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current month for all organizations. + format: int64 + type: integer + iot_device_agg_sum: + description: Shows the sum of all IoT devices over all hours in the current month for all organizations. + format: int64 + type: integer + iot_device_top99p_sum: + description: Shows the 99th percentile of all IoT devices over all hours in the current month of all organizations. + format: int64 + type: integer + last_updated: + description: Shows the most recent hour in the current month for all organizations for which all usages were calculated. + format: date-time + type: string + live_indexed_events_agg_sum: + deprecated: true + description: Shows the sum of all live logs indexed over all hours in the current month for all organization (To be deprecated on October 1st, 2024). + format: int64 + type: integer + live_ingested_bytes_agg_sum: + description: Shows the sum of all live logs bytes ingested over all hours in the current month for all organizations (data available as of December 1, 2020). + format: int64 + type: integer + llm_observability_15day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 15-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_30day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 30-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_60day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 60-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_90day_retention_spans_agg_sum: + description: Shows the sum of all Agent Observability 90-day retention spans over all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_agg_sum: + description: Sum of all Agent observability sessions for all hours in the current month for all organizations. + format: int64 + type: integer + llm_observability_min_spend_agg_sum: + description: Minimum spend for Agent observability sessions for all hours in the current month for all organizations. + format: int64 + type: integer + logs_archive_search_gb_scanned_agg_sum: + description: Shows the sum of all Logs Archive Search scanned data over all hours in the current month for all organizations. + format: int64 + type: integer + logs_by_retention: + $ref: '#/components/schemas/LogsByRetention' + metric_names_agg_sum: + description: Shows the sum of all custom metric names over all hours in the current month for all organizations. + format: int64 + type: integer + mobile_rum_lite_session_count_agg_sum: + deprecated: true + description: Shows the sum of all mobile lite sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_android_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Android over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_flutter_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Flutter over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_ios_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on iOS over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_reactnative_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on React Native over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_roku_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Roku over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_units_agg_sum: + deprecated: true + description: Shows the sum of all mobile RUM units over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ndm_netflow_events_agg_sum: + description: Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current month for all organizations. + format: int64 + type: integer + netflow_indexed_events_count_agg_sum: + deprecated: true + description: Shows the sum of all Network flows indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + network_device_wireless_top99p_sum: + description: Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current month for all organizations. + format: int64 + type: integer + network_path_agg_sum: + description: Shows the sum of all Network Path scheduled tests over all hours in the current month for all organizations. + format: int64 + type: integer + npm_host_top99p_sum: + description: Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current month for all organizations. + format: int64 + type: integer + observability_pipelines_bytes_processed_agg_sum: + description: Sum of all observability pipelines bytes processed over all hours in the current month for all organizations. + format: int64 + type: integer + oci_host_agg_sum: + description: Shows the sum of Oracle Cloud Infrastructure hosts over all hours in the current months for all organizations + format: int64 + type: integer + oci_host_top99p_sum: + description: Shows the 99th percentile of Oracle Cloud Infrastructure hosts over all hours in the current months for all organizations + format: int64 + type: integer + on_call_seat_hwm_sum: + description: Shows the sum of the high-water marks of On-Call seats over all hours in the current month for all organizations. + format: int64 + type: integer + online_archive_events_count_agg_sum: + description: Sum of all online archived events over all hours in the current month for all organizations. + format: int64 + type: integer + opentelemetry_apm_host_top99p_sum: + description: Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + opentelemetry_host_top99p_sum: + description: Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current month for all organizations. + format: int64 + type: integer + product_analytics_agg_sum: + description: Sum of all product analytics sessions for all hours in the current month for all organizations. + format: int64 + type: integer + profiling_aas_count_top99p_sum: + description: Shows the 99th percentile of all profiled Azure app services over all hours in the current month for all organizations. + format: int64 + type: integer + profiling_container_agent_count_avg: + description: Shows the average number of profiled containers over all hours in the current month for all organizations. + format: int64 + type: integer + profiling_host_count_top99p_sum: + description: Shows the 99th percentile of all profiled hosts over all hours in the current month for all organizations. + format: int64 + type: integer + proxmox_host_agg_sum: + description: Sum of all Proxmox hosts over all hours in the current month for all organizations. + format: int64 + type: integer + proxmox_host_top99p_sum: + description: Sum of the 99th percentile of all Proxmox hosts over all hours in the current month for all organizations. + format: int64 + type: integer + published_app_hwm_sum: + description: Shows the high-water mark of all published applications over all hours in the current month for all organizations. + format: int64 + type: integer + rehydrated_indexed_events_agg_sum: + deprecated: true + description: Shows the sum of all rehydrated logs indexed over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rehydrated_ingested_bytes_agg_sum: + description: Shows the sum of all rehydrated logs bytes ingested over all hours in the current month for all organizations (data available as of December 1, 2020). + format: int64 + type: integer + rum_browser_and_mobile_session_count: + description: Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_browser_legacy_session_count_agg_sum: + description: Shows the sum of all browser RUM legacy sessions over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_lite_session_count_agg_sum: + description: Shows the sum of all browser RUM lite sessions over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_replay_session_count_agg_sum: + description: Shows the sum of all browser RUM Session Replay counts over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_indexed_sessions_agg_sum: + description: Sum of all RUM indexed sessions for all hours in the current month for all organizations. + format: int64 + type: integer + rum_ingested_sessions_agg_sum: + description: Sum of all RUM ingested sessions for all hours in the current month for all organizations. + format: int64 + type: integer + rum_lite_session_count_agg_sum: + description: Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_android_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_flutter_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on Flutter over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_ios_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_reactnative_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_roku_agg_sum: + description: Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_android_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Android over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_flutter_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_ios_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_kotlinmultiplatform_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_lite_session_count_reactnative_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_roku_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Roku over all hours within the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_unity_agg_sum: + description: Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_android_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on Android over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_ios_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_kotlinmultiplatform_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current month for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_reactnative_agg_sum: + description: Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current month for all organizations. + format: int64 + type: integer + rum_replay_session_count_agg_sum: + description: Shows the sum of all RUM Session Replay counts over all hours in the current month for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_session_count_agg_sum: + deprecated: true + description: Shows the sum of all browser RUM lite sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_session_replay_add_on_agg_sum: + description: Sum of all RUM session replay add-on sessions for all hours in the current month for all organizations. + format: int64 + type: integer + rum_total_session_count_agg_sum: + description: Shows the sum of RUM sessions (browser and mobile) over all hours in the current month for all organizations. + format: int64 + type: integer + rum_units_agg_sum: + deprecated: true + description: Shows the sum of all browser and mobile RUM units over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + sca_fargate_count_avg_sum: + description: Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current months for all organizations. + format: int64 + type: integer + sca_fargate_count_hwm_sum: + description: Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current months for all organizations. + format: int64 + type: integer + sds_apm_scanned_bytes_sum: + description: Sum of all APM bytes scanned with sensitive data scanner in the current month for all organizations. + format: int64 + type: integer + sds_events_scanned_bytes_sum: + description: Sum of all event stream events bytes scanned with sensitive data scanner in the current month for all organizations. + format: int64 + type: integer + sds_logs_scanned_bytes_sum: + description: Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + sds_rum_scanned_bytes_sum: + description: Sum of all RUM bytes scanned with sensitive data scanner in the current month for all organizations. + format: int64 + type: integer + sds_total_scanned_bytes_sum: + description: Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_appservice_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_azurefunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_containerapp_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_fargate_ecs_tasks_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudfunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudrun_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_avg_sum: + description: Sum of the average number of Serverless Apps with Application Performance Monitoring excluding Fargate in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_container_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_count_avg_sum: + description: Sum of the average number of Serverless Apps for Azure in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_function_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Azure Function App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_azure_web_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Azure Web App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_dsm_fargate_tasks_avg_sum: + description: Sum of the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM in the current month for all organizations. + format: int64 + type: integer + serverless_apps_ecs_avg_sum: + description: Sum of the average number of Serverless Apps for Elastic Container Service in the current month for all organizations. + format: int64 + type: integer + serverless_apps_eks_avg_sum: + description: Sum of the average number of Serverless Apps for Elastic Kubernetes Service in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_container_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Azure Container App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_function_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Azure Function App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_web_app_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Azure Web App instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_functions_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_run_instances_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_functions_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_run_instances_avg_sum: + description: Sum of the average number of Serverless Apps for Google Cloud Platform Cloud Run instances in the current month for all organizations. + format: int64 + type: integer + serverless_apps_google_count_avg_sum: + description: Sum of the average number of Serverless Apps for Google Cloud in the current month for all organizations. + format: int64 + type: integer + serverless_apps_infra_gcp_gke_autopilot_pods_avg_sum: + description: Sum of the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods in the current month for all organizations. + format: int64 + type: integer + serverless_apps_total_count_avg_sum: + description: Sum of the average number of Serverless Apps for Azure and Google Cloud in the current month for all organizations. + format: int64 + type: integer + siem_12mo_retention_agg_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current month for all organizations. + format: int64 + type: integer + siem_6mo_retention_agg_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current month for all organizations. + format: int64 + type: integer + siem_analyzed_logs_add_on_count_agg_sum: + description: Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current month for all organizations. + format: int64 + type: integer + snmp_device_count_agg_sum: + description: Shows the sum of all Network Device Monitoring devices over all hours in the current month for all organizations. + format: int64 + type: integer + snmp_device_count_top99p_sum: + description: Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current month for all organizations. + format: int64 + type: integer + start_date: + description: Shows the first date of usage in the current month for all organizations. + format: date-time + type: string + synthetics_browser_check_calls_count_agg_sum: + description: Shows the sum of all Synthetic browser tests over all hours in the current month for all organizations. + format: int64 + type: integer + synthetics_check_calls_count_agg_sum: + description: Shows the sum of all Synthetic API tests over all hours in the current month for all organizations. + format: int64 + type: integer + synthetics_mobile_test_runs_agg_sum: + description: Shows the sum of Synthetic mobile application tests over all hours in the current month for all organizations. + format: int64 + type: integer + synthetics_parallel_testing_max_slots_hwm_sum: + description: Shows the sum of the high-water marks of used synthetics parallel testing slots over all hours in the current month for all organizations. + format: int64 + type: integer + trace_search_indexed_events_count_agg_sum: + description: Shows the sum of all Indexed Spans indexed over all hours in the current month for all organizations. + format: int64 + type: integer + twol_ingested_events_bytes_agg_sum: + description: Shows the sum of all ingested APM span bytes over all hours in the current month for all organizations. + format: int64 + type: integer + universal_service_monitoring_host_top99p_sum: + description: Shows the 99th percentile of all Universal Service Monitoring hosts over all hours in the current month for all organizations. + format: int64 + type: integer + usage: + description: An array of objects regarding hourly usage. + items: + $ref: '#/components/schemas/UsageSummaryDate' + type: array + vsphere_host_top99p_sum: + description: Shows the 99th percentile of all vSphere hosts over all hours in the current month for all organizations. + format: int64 + type: integer + vuln_management_host_count_top99p_sum: + description: Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current month for all organizations. + format: int64 + type: integer + workflow_executions_usage_agg_sum: + description: Sum of all workflows executed over all hours in the current month for all organizations. + format: int64 + type: integer + type: object + x-keep-typed-in-additional-properties: true + UsageSyntheticsResponse: + description: Response containing the number of Synthetics API tests run for each hour for a given organization. + properties: + usage: + description: Array with the number of hourly Synthetics test run for a given organization. + items: + $ref: '#/components/schemas/UsageSyntheticsHour' + type: array + type: object + UsageSyntheticsAPIResponse: + description: Response containing the number of Synthetics API tests run for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Synthetics API tests. + items: + $ref: '#/components/schemas/UsageSyntheticsAPIHour' + type: array + type: object + UsageSyntheticsBrowserResponse: + description: Response containing the number of Synthetics Browser tests run for each hour for a given organization. + properties: + usage: + description: Get hourly usage for Synthetics Browser tests. + items: + $ref: '#/components/schemas/UsageSyntheticsBrowserHour' + type: array + type: object + UsageTimeseriesResponse: + description: Response containing hourly usage of timeseries. + properties: + usage: + description: An array of objects regarding hourly usage of timeseries. + items: + $ref: '#/components/schemas/UsageTimeseriesHour' + type: array + type: object + UsageTopAvgMetricsResponse: + description: Response containing the number of hourly recorded custom metrics for a given organization. + properties: + metadata: + $ref: '#/components/schemas/UsageTopAvgMetricsMetadata' + usage: + description: Number of hourly recorded custom metrics for a given organization. + items: + $ref: '#/components/schemas/UsageTopAvgMetricsHour' + type: array + type: object + UserListResponse: + description: Array of Datadog users for a given organization. + properties: + users: + description: Array of users. + items: + $ref: '#/components/schemas/UserV1' + type: array + type: object + UserV1: + description: Create, edit, and disable users. + properties: + access_role: + $ref: '#/components/schemas/AccessRole' + disabled: + description: The new disabled status of the user. + example: false + type: boolean + email: + description: The new email of the user. + example: test@datadoghq.com + type: string + handle: + description: The user handle, must be a valid email. + example: test@datadoghq.com + type: string + icon: + description: Gravatar icon associated to the user. + example: /path/to/matching/gravatar/icon + readOnly: true + type: string + name: + description: The name of the user. + example: test user + type: string + verified: + description: Whether or not the user logged in Datadog at least once. + example: true + readOnly: true + type: boolean + type: object + UserResponseV1: + description: A Datadog User. + properties: + user: + $ref: '#/components/schemas/UserV1' + type: object + UserDisableResponse: + description: Array of user disabled for a given organization. + properties: + message: + description: Information pertaining to a user disabled for a given organization. + type: string + type: object + AuthenticationValidationResponse: + description: Represent validation endpoint responses. + properties: + valid: + description: Return `true` if the authentication response is valid. + example: true + readOnly: true + type: boolean + type: object + AnonymizeUsersRequestData: + description: Object to anonymize a list of users. + properties: + attributes: + $ref: '#/components/schemas/AnonymizeUsersRequestAttributes' + id: + description: Unique identifier for the request. Not used server-side. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/AnonymizeUsersRequestType' + required: + - type + - attributes + type: object + AnonymizeUsersResponseData: + description: Response data for anonymizing users. + properties: + attributes: + $ref: '#/components/schemas/AnonymizeUsersResponseAttributes' + id: + description: Unique identifier of the response. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/AnonymizeUsersResponseType' + type: object + APIKeysSort: + default: name + description: Sorting options + enum: + - created_at + - '-created_at' + - last4 + - '-last4' + - modified_at + - '-modified_at' + - name + - '-name' + type: string + x-enum-varnames: + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - LAST4_ASCENDING + - LAST4_DESCENDING + - MODIFIED_AT_ASCENDING + - MODIFIED_AT_DESCENDING + - NAME_ASCENDING + - NAME_DESCENDING + PartialAPIKey: + description: Partial Datadog API key. + properties: + attributes: + $ref: '#/components/schemas/PartialAPIKeyAttributes' + id: + description: ID of the API key. + type: string + relationships: + $ref: '#/components/schemas/APIKeyRelationships' + type: + $ref: '#/components/schemas/APIKeysType' + type: object + APIKeyResponseIncludedItem: + description: An object related to an API key. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - attributes + - id + - type + APIKeysResponseMeta: + description: Additional information related to api keys response. + properties: + max_allowed: + description: Max allowed number of API keys. + format: int64 + type: integer + page: + $ref: '#/components/schemas/APIKeysResponseMetaPage' + type: object + APIKeyCreateData: + description: Object used to create an API key. + properties: + attributes: + $ref: '#/components/schemas/APIKeyCreateAttributes' + type: + $ref: '#/components/schemas/APIKeysType' + required: + - attributes + - type + type: object + FullAPIKey: + description: Datadog API key. + properties: + attributes: + $ref: '#/components/schemas/FullAPIKeyAttributes' + id: + description: ID of the API key. + type: string + relationships: + $ref: '#/components/schemas/APIKeyRelationships' + type: + $ref: '#/components/schemas/APIKeysType' + type: object + APIKeyUpdateData: + description: Object used to update an API key. + properties: + attributes: + $ref: '#/components/schemas/APIKeyUpdateAttributes' + id: + description: ID of the API key. + example: 00112233-4455-6677-8899-aabbccddeeff + type: string + type: + $ref: '#/components/schemas/APIKeysType' + required: + - attributes + - id + - type + type: object + ApplicationKeysSort: + default: name + description: Sorting options + enum: + - created_at + - '-created_at' + - last4 + - '-last4' + - name + - '-name' + type: string + x-enum-varnames: + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - LAST4_ASCENDING + - LAST4_DESCENDING + - NAME_ASCENDING + - NAME_DESCENDING + PartialApplicationKey: + description: Partial Datadog application key. + properties: + attributes: + $ref: '#/components/schemas/PartialApplicationKeyAttributes' + id: + description: ID of the application key. + type: string + relationships: + $ref: '#/components/schemas/ApplicationKeyRelationships' + type: + $ref: '#/components/schemas/ApplicationKeysType' + type: object + ApplicationKeyResponseIncludedItem: + description: An object related to an application key. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - type + - attributes + - id + ApplicationKeyResponseMeta: + description: Additional information related to the application key response. + properties: + max_allowed_per_user: + description: Max allowed number of application keys per user. + format: int64 + type: integer + page: + $ref: '#/components/schemas/ApplicationKeyResponseMetaPage' + type: object + FullApplicationKey: + description: Datadog application key. + properties: + attributes: + $ref: '#/components/schemas/FullApplicationKeyAttributes' + id: + description: ID of the application key. + type: string + relationships: + $ref: '#/components/schemas/ApplicationKeyRelationships' + type: + $ref: '#/components/schemas/ApplicationKeysType' + type: object + ApplicationKeyUpdateData: + description: Object used to update an application key. + properties: + attributes: + $ref: '#/components/schemas/ApplicationKeyUpdateAttributes' + id: + description: ID of the application key. + example: 00112233-4455-6677-8899-aabbccddeeff + type: string + type: + $ref: '#/components/schemas/ApplicationKeysType' + required: + - attributes + - id + - type + type: object + AuditLogsEvent: + description: Object description of an Audit Logs event after it is processed and stored by Datadog. + properties: + attributes: + $ref: '#/components/schemas/AuditLogsEventAttributes' + id: + description: Unique ID of the event. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/AuditLogsEventType' + type: object + AuditLogsResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + AuditLogsResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: Time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/AuditLogsResponsePage' + request_id: + description: The identifier of the request. + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + $ref: '#/components/schemas/AuditLogsResponseStatus' + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: '#/components/schemas/AuditLogsWarning' + type: array + type: object + AuditLogsQueryFilter: + description: Search and filter query settings. + properties: + from: + default: now-15m + description: Minimum time for the requested events. Supports date, math, and regular timestamps (in milliseconds). + example: now-15m + type: string + query: + default: '*' + description: Search query following the Audit Logs search syntax. + example: '@type:session AND @session.type:user' + type: string + to: + default: now + description: Maximum time for the requested events. Supports date, math, and regular timestamps (in milliseconds). + example: now + type: string + type: object + AuditLogsQueryOptions: + description: |- + Global query options that are used during the query. + Note: Specify either timezone or time offset, not both. Otherwise, the query fails. + properties: + time_offset: + description: Time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: UTC + description: The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: GMT + type: string + type: object + AuditLogsQueryPageOptions: + description: Paging attributes for listing events. + properties: + cursor: + description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + AuthNMapping: + description: The AuthN Mapping object returned by API. + properties: + attributes: + $ref: '#/components/schemas/AuthNMappingAttributes' + id: + description: ID of the AuthN Mapping. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + relationships: + $ref: '#/components/schemas/AuthNMappingRelationships' + type: + $ref: '#/components/schemas/AuthNMappingsType' + required: + - id + - type + type: object + AuthNMappingIncluded: + description: Included data in the AuthN Mapping response. + properties: + attributes: + $ref: '#/components/schemas/SAMLAssertionAttributeAttributes' + id: + description: The ID of the SAML assertion attribute. + example: '0' + type: string + type: + $ref: '#/components/schemas/SAMLAssertionAttributesType' + relationships: + $ref: '#/components/schemas/RoleResponseRelationships' + required: + - id + - type + type: object + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + type: object + AuthNMappingCreateData: + description: Data for creating an AuthN Mapping. + properties: + attributes: + $ref: '#/components/schemas/AuthNMappingCreateAttributes' + relationships: + $ref: '#/components/schemas/AuthNMappingCreateRelationships' + type: + $ref: '#/components/schemas/AuthNMappingsType' + required: + - type + type: object + AuthNMappingUpdateData: + description: Data for updating an AuthN Mapping. + properties: + attributes: + $ref: '#/components/schemas/AuthNMappingUpdateAttributes' + id: + description: ID of the AuthN Mapping. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + relationships: + $ref: '#/components/schemas/AuthNMappingUpdateRelationships' + type: + $ref: '#/components/schemas/AuthNMappingsType' + required: + - id + - type + type: object + User: + description: User object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + UserResponseIncludedItem: + description: An object related to a user. + properties: + attributes: + $ref: '#/components/schemas/OrganizationAttributes' + id: + description: ID of the organization. + type: string + type: + $ref: '#/components/schemas/OrganizationsType' + relationships: + $ref: '#/components/schemas/RoleResponseRelationships' + required: + - type + type: object + UserUpdateData: + description: Object to update a user. + properties: + attributes: + $ref: '#/components/schemas/UserUpdateAttributes' + id: + description: ID of the user. + example: 00000000-0000-feed-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/UsersType' + required: + - attributes + - type + - id + type: object + ApplicationKeyCreateData: + description: Object used to create an application key. + properties: + attributes: + $ref: '#/components/schemas/ApplicationKeyCreateAttributes' + type: + $ref: '#/components/schemas/ApplicationKeysType' + required: + - attributes + - type + type: object + CreateDataDeletionRequestBodyData: + description: Data needed to create a data deletion request. + properties: + attributes: + $ref: '#/components/schemas/CreateDataDeletionRequestBodyAttributes' + type: + $ref: '#/components/schemas/CreateDataDeletionRequestBodyDataType' + required: + - attributes + - type + type: object + DataDeletionResponseItem: + description: The created data deletion request information. + properties: + attributes: + $ref: '#/components/schemas/DataDeletionResponseItemAttributes' + id: + description: The ID of the created data deletion request. + example: '1' + type: string + type: + description: The type of the request created. + example: deletion_request + type: string + required: + - id + - type + - attributes + type: object + DataDeletionResponseMeta: + description: The metadata of the data deletion response. + properties: + count_product: + additionalProperties: + format: int64 + type: integer + description: The total deletion requests created by product. + example: + logs: 8 + type: object + count_status: + additionalProperties: + format: int64 + type: integer + description: The total deletion requests created by status. + example: + completed: 10 + pending: 5 + type: object + next_page: + description: The next page when searching deletion requests created in the current organization. + example: cGFnZTI= + type: string + product: + description: The product of the deletion request. + example: logs + type: string + request_status: + description: The status of the executed request. + example: canceled + type: string + type: object + DomainAllowlistResponseData: + description: The email domain allowlist response for an org. + properties: + attributes: + $ref: '#/components/schemas/DomainAllowlistResponseDataAttributes' + id: + description: The unique identifier of the org. + nullable: true + type: string + type: + $ref: '#/components/schemas/DomainAllowlistType' + required: + - type + type: object + DomainAllowlist: + description: The email domain allowlist for an org. + properties: + attributes: + $ref: '#/components/schemas/DomainAllowlistAttributes' + id: + description: The unique identifier of the org. + nullable: true + type: string + type: + $ref: '#/components/schemas/DomainAllowlistType' + required: + - type + type: object + GlobalOrgData: + description: An organization associated with the authenticated user. + properties: + attributes: + $ref: '#/components/schemas/GlobalOrgAttributes' + type: + $ref: '#/components/schemas/GlobalOrgType' + required: + - type + - attributes + type: object + GlobalOrgsLinks: + description: Pagination links. + properties: + next: + description: Link to the next page. + example: https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100&page[cursor]=next-page + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + example: https://app.datadoghq.com/api/v2/global_orgs?user_handle=user@example.com&page[limit]=100 + type: string + type: object + GlobalOrgsMeta: + description: Response metadata object. + properties: + page: + $ref: '#/components/schemas/GlobalOrgsMetaPage' + type: object + GovernanceConfigData: + description: A Governance Console configuration resource. + properties: + attributes: + $ref: '#/components/schemas/GovernanceConfigAttributes' + id: + description: |- + The unique identifier of the organization the Governance Console configuration applies + to. May be the nil UUID (`00000000-0000-0000-0000-000000000000`) when the configuration + is not tied to a specific organization record. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/GovernanceConsoleConfigResourceType' + required: + - id + - type + - attributes + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + GovernanceControlsDataArray: + description: An array of governance control resources. + items: + $ref: '#/components/schemas/GovernanceControlData' + type: array + GovernanceControlData: + description: A governance control resource. + properties: + attributes: + $ref: '#/components/schemas/GovernanceControlAttributes' + id: + description: The detection type that uniquely identifies the control. + example: unused_api_keys + type: string + type: + $ref: '#/components/schemas/GovernanceControlResourceType' + required: + - id + - type + - attributes + type: object + GovernanceControlUpdateData: + description: The data of a governance control update request. + properties: + attributes: + $ref: '#/components/schemas/GovernanceControlUpdateAttributes' + type: + $ref: '#/components/schemas/GovernanceControlResourceType' + required: + - type + type: object + GovernanceControlDetectionsDataArray: + description: An array of governance control detection resources. + items: + $ref: '#/components/schemas/GovernanceControlDetectionData' + type: array + ControlNotificationSettingsData: + description: A control notification settings resource. + properties: + attributes: + $ref: '#/components/schemas/ControlNotificationSettingsAttributes' + id: + description: The detection type the notification settings apply to. + example: unused_api_keys + type: string + type: + $ref: '#/components/schemas/ControlNotificationSettingsResourceType' + required: + - id + - type + - attributes + type: object + ControlNotificationSettingsUpdateData: + description: The data of a control notification settings update request. + properties: + attributes: + $ref: '#/components/schemas/ControlNotificationSettingsUpdateAttributes' + type: + $ref: '#/components/schemas/ControlNotificationSettingsResourceType' + required: + - type + type: object + GovernanceMitigationRequestData: + description: The data of a governance mitigation request. + properties: + attributes: + $ref: '#/components/schemas/GovernanceMitigationRequestAttributes' + type: + $ref: '#/components/schemas/GovernanceControlDetectionResourceType' + required: + - type + type: object + GovernanceControlDetectionData: + description: A governance control detection resource. + properties: + attributes: + $ref: '#/components/schemas/GovernanceControlDetectionAttributes' + id: + description: The unique identifier of the detection. + example: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + type: string + type: + $ref: '#/components/schemas/GovernanceControlDetectionResourceType' + required: + - id + - type + - attributes + type: object + GovernanceControlDetectionUpdateData: + description: The data of a governance control detection update request. + properties: + attributes: + $ref: '#/components/schemas/GovernanceControlDetectionUpdateAttributes' + type: + $ref: '#/components/schemas/GovernanceControlDetectionResourceType' + required: + - type + type: object + GovernanceInsightsDataArray: + description: An array of governance insight resources. + items: + $ref: '#/components/schemas/GovernanceInsightData' + type: array + GovernanceNotificationSettingsData: + description: A governance notification settings resource. + properties: + attributes: + $ref: '#/components/schemas/GovernanceNotificationSettingsAttributes' + id: + description: The unique identifier of the organization the notification settings apply to. + example: 11111111-2222-3333-4444-555555555555 + type: string + type: + $ref: '#/components/schemas/GovernanceNotificationSettingsResourceType' + required: + - id + - type + - attributes + type: object + GovernanceNotificationSettingsUpdateData: + description: The data of a governance notification settings update request. + properties: + attributes: + $ref: '#/components/schemas/GovernanceNotificationSettingsUpdateAttributes' + type: + $ref: '#/components/schemas/GovernanceNotificationSettingsResourceType' + required: + - type + type: object + TagRuleDataArray: + description: An array of tag rule data objects. + items: + $ref: '#/components/schemas/TagRuleData' + type: array + TagRuleIncludedResources: + description: Related resources fetched alongside the primary tag rules. Populated when an `include` query parameter is supplied. + items: + $ref: '#/components/schemas/TagRuleScoreData' + type: array + TagRuleCreateData: + description: Data object for creating a tag rule. + properties: + attributes: + $ref: '#/components/schemas/TagRuleCreateAttributes' + type: + $ref: '#/components/schemas/TagRuleResourceType' + required: + - type + - attributes + type: object + TagRuleData: + description: A tag rule resource. + properties: + attributes: + $ref: '#/components/schemas/TagRuleAttributes' + id: + description: The unique identifier of the tag rule. + example: '123' + type: string + relationships: + $ref: '#/components/schemas/TagRuleRelationships' + type: + $ref: '#/components/schemas/TagRuleResourceType' + required: + - type + - id + - attributes + type: object + TagRuleUpdateData: + description: Data object for updating a tag rule. + properties: + attributes: + $ref: '#/components/schemas/TagRuleUpdateAttributes' + id: + description: The unique identifier of the tag rule being updated. + example: '123' + type: string + type: + $ref: '#/components/schemas/TagRuleResourceType' + required: + - type + - id + type: object + TagRuleScoreData: + description: A compliance score resource for a tag rule. + properties: + attributes: + $ref: '#/components/schemas/TagRuleScoreAttributes' + id: + description: The unique identifier of the compliance score resource. + example: 123-v1-1779315066097-1779401466097 + type: string + type: + $ref: '#/components/schemas/TagRuleScoreResourceType' + required: + - type + - id + - attributes + type: object + HamrOrgConnectionDataResponse: + description: Data object for a HAMR organization connection response. + properties: + attributes: + $ref: '#/components/schemas/HamrOrgConnectionAttributesResponse' + id: + description: The organization UUID for this HAMR connection. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + type: + $ref: '#/components/schemas/HamrOrgConnectionType' + required: + - id + - type + - attributes + type: object + HamrOrgConnectionDataRequest: + description: Data object for a HAMR organization connection request. + properties: + attributes: + $ref: '#/components/schemas/HamrOrgConnectionAttributesRequest' + id: + description: The organization UUID for this HAMR connection. Must match the authenticated organization's UUID. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + type: + $ref: '#/components/schemas/HamrOrgConnectionType' + required: + - id + - type + - attributes + type: object + IdentityProviderDataList: + description: List of organization identity provider data objects. + items: + $ref: '#/components/schemas/IdentityProviderData' + type: array + IdentityProviderUpdateData: + description: Data object for updating an organization identity provider. + properties: + attributes: + $ref: '#/components/schemas/IdentityProviderUpdateAttributes' + id: + description: The unique identifier of the identity provider to update. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/IdentityProviderType' + required: + - id + - type + - attributes + type: object + IdentityProviderData: + description: Data object representing an organization identity provider. + properties: + attributes: + $ref: '#/components/schemas/IdentityProviderAttributes' + id: + description: The unique identifier of the identity provider. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/IdentityProviderType' + required: + - id + - type + - attributes + type: object + IPAllowlistData: + description: IP allowlist data. + properties: + attributes: + $ref: '#/components/schemas/IPAllowlistAttributes' + id: + description: The unique identifier of the org. + type: string + type: + $ref: '#/components/schemas/IPAllowlistType' + required: + - type + type: object + MaxSessionDurationUpdateData: + description: The data object for a maximum session duration update request. + properties: + attributes: + $ref: '#/components/schemas/MaxSessionDurationUpdateAttributes' + type: + $ref: '#/components/schemas/MaxSessionDurationType' + required: + - type + - attributes + type: object + OAuth2WellKnownSitesData: + description: Data object containing OAuth2 well-known sites information. + properties: + attributes: + $ref: '#/components/schemas/OAuth2WellKnownSitesAttributes' + id: + description: Environment identifier. + example: prod + type: string + type: + $ref: '#/components/schemas/OAuth2WellKnownSitesEnvType' + required: + - id + - type + - attributes + type: object + OAuthScopesRestrictionResponseData: + description: Data object of an OAuth2 client scopes restriction response. + properties: + attributes: + $ref: '#/components/schemas/OAuthScopesRestrictionResponseAttributes' + id: + description: UUID of the OAuth2 client this restriction applies to. + example: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + format: uuid + type: string + type: + $ref: '#/components/schemas/OAuthScopesRestrictionType' + required: + - id + - type + - attributes + type: object + UpsertOAuthScopesRestrictionData: + description: Data object of an upsert OAuth2 scopes restriction request. + properties: + attributes: + $ref: '#/components/schemas/UpsertOAuthScopesRestrictionDataAttributes' + type: + $ref: '#/components/schemas/UpsertOAuthScopesRestrictionType' + required: + - type + type: object + OAuthClientRegistrationGrantType: + description: OAuth 2.0 grant type that a registered client may use. + enum: + - authorization_code + - refresh_token + example: authorization_code + type: string + x-enum-varnames: + - AUTHORIZATION_CODE + - REFRESH_TOKEN + OAuthClientRegistrationResponseType: + description: OAuth 2.0 response type that a registered client may use. + enum: + - code + example: code + type: string + x-enum-varnames: + - CODE + ManagedOrgsData: + description: The managed organizations resource. + properties: + id: + description: The UUID of the current organization. + example: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/ManagedOrgsRelationships' + type: + $ref: '#/components/schemas/ManagedOrgsType' + required: + - id + - type + - relationships + type: object + OrgData: + description: An organization resource. + properties: + attributes: + $ref: '#/components/schemas/OrgAttributes' + id: + description: The UUID of the organization. + example: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgResourceType' + required: + - id + - type + - attributes + type: object + CustomerOrgDisableRequestData: + description: Data object for a customer org disable request. + properties: + attributes: + $ref: '#/components/schemas/CustomerOrgDisableRequestAttributes' + id: + description: |- + Optional client-supplied identifier for the request. Useful for client-side + correlation; the server does not use this value. + example: '1' + type: string + type: + $ref: '#/components/schemas/CustomerOrgDisableType' + required: + - type + type: object + CustomerOrgDisableResponseData: + description: Data object returned after disabling the customer organization. + properties: + attributes: + $ref: '#/components/schemas/CustomerOrgDisableResponseAttributes' + id: + description: Identifier of the disabled organization. + example: abcdef01-2345-6789-abcd-ef0123456789 + type: string + type: + $ref: '#/components/schemas/CustomerOrgDisableResponseType' + required: + - type + - id + - attributes + type: object + OrgSAMLPreferencesData: + description: Data for updating an organization's SAML preferences. + properties: + attributes: + $ref: '#/components/schemas/OrgSAMLPreferencesAttributes' + id: + description: The identifier of the SAML preferences resource. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/OrgSAMLPreferencesType' + required: + - type + - attributes + type: object + OrgAuthorizedClientDataList: + description: List of org authorized client data objects. + items: + $ref: '#/components/schemas/OrgAuthorizedClientData' + type: array + OrgAuthorizedClientData: + description: Data object representing an org authorized client. + properties: + attributes: + $ref: '#/components/schemas/OrgAuthorizedClientAttributes' + id: + description: The unique identifier of the org authorized client. + example: 00000000-0000-0000-0000-000000000001 + type: string + relationships: + $ref: '#/components/schemas/OrgAuthorizedClientRelationships' + type: + $ref: '#/components/schemas/OrgAuthorizedClientType' + required: + - id + - type + - attributes + - relationships + type: object + OrgAuthorizedClientUpdateData: + description: Data object for updating an org authorized client. + properties: + attributes: + $ref: '#/components/schemas/OrgAuthorizedClientUpdateAttributes' + id: + description: The unique identifier of the org authorized client to update. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/OrgAuthorizedClientType' + required: + - id + - type + type: object + UserAuthorizedClientDataList: + description: List of user authorized client data objects. + items: + $ref: '#/components/schemas/UserAuthorizedClientData' + type: array + OrgConfigRead: + description: A single Org Config. + properties: + attributes: + $ref: '#/components/schemas/OrgConfigReadAttributes' + id: + description: A unique identifier for an Org Config. + example: abcd1234 + type: string + type: + $ref: '#/components/schemas/OrgConfigType' + required: + - id + - type + - attributes + type: object + OrgConfigWrite: + description: An Org Config write operation. + properties: + attributes: + $ref: '#/components/schemas/OrgConfigWriteAttributes' + type: + $ref: '#/components/schemas/OrgConfigType' + required: + - type + - attributes + type: object + OrgConnection: + description: An org connection. + properties: + attributes: + $ref: '#/components/schemas/OrgConnectionAttributes' + id: + description: The unique identifier of the org connection. + example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + format: uuid + type: string + relationships: + $ref: '#/components/schemas/OrgConnectionRelationships' + type: + $ref: '#/components/schemas/OrgConnectionType' + required: + - id + - type + - attributes + - relationships + type: object + OrgConnectionListResponseMeta: + description: Pagination metadata. + properties: + page: + $ref: '#/components/schemas/OrgConnectionListResponseMetaPage' + type: object + OrgConnectionCreate: + description: Org connection creation data. + properties: + attributes: + $ref: '#/components/schemas/OrgConnectionCreateAttributes' + relationships: + $ref: '#/components/schemas/OrgConnectionCreateRelationships' + type: + $ref: '#/components/schemas/OrgConnectionType' + required: + - type + - attributes + - relationships + type: object + OrgConnectionUpdate: + description: Org connection update data. + properties: + attributes: + $ref: '#/components/schemas/OrgConnectionUpdateAttributes' + id: + description: The unique identifier of the org connection. + example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgConnectionType' + required: + - type + - id + - attributes + type: object + OrgGroupMembershipSortOption: + default: uuid + description: Field to sort memberships by. + enum: + - name + - '-name' + - uuid + - '-uuid' + example: uuid + type: string + x-enum-varnames: + - NAME + - MINUS_NAME + - UUID + - MINUS_UUID + OrgGroupMembershipData: + description: An org group membership resource. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupMembershipAttributes' + id: + description: The ID of the org group membership. + example: f1e2d3c4-b5a6-7890-1234-567890abcdef + format: uuid + type: string + relationships: + $ref: '#/components/schemas/OrgGroupMembershipRelationships' + type: + $ref: '#/components/schemas/OrgGroupMembershipType' + required: + - id + - type + - attributes + type: object + OrgGroupPaginationLinks: + description: Pagination links for navigating between pages of an org group list response. + properties: + first: + description: Link to the first page. + type: string + last: + description: Link to the last page. + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + type: string + type: object + OrgGroupPaginationMeta: + description: Pagination metadata for org group list responses. + properties: + page: + $ref: '#/components/schemas/OrgGroupPaginationMetaPage' + type: object + OrgGroupMembershipBulkUpdateData: + description: Data for bulk updating org group memberships. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupMembershipBulkUpdateAttributes' + relationships: + $ref: '#/components/schemas/OrgGroupMembershipBulkUpdateRelationships' + type: + $ref: '#/components/schemas/OrgGroupMembershipBulkUpdateType' + required: + - type + - attributes + - relationships + type: object + OrgGroupMembershipUpdateData: + description: Data for updating an org group membership. + properties: + id: + description: The ID of the membership. + example: f1e2d3c4-b5a6-7890-1234-567890abcdef + format: uuid + type: string + relationships: + $ref: '#/components/schemas/OrgGroupMembershipUpdateRelationships' + type: + $ref: '#/components/schemas/OrgGroupMembershipType' + required: + - id + - type + - relationships + type: object + OrgGroupPolicySortOption: + default: id + description: Field to sort policies by. + enum: + - id + - '-id' + - name + - '-name' + example: id + type: string + x-enum-varnames: + - ID + - MINUS_ID + - NAME + - MINUS_NAME + OrgGroupPolicyData: + description: An org group policy resource. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyAttributes' + id: + description: The ID of the org group policy. + example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/OrgGroupPolicyRelationships' + type: + $ref: '#/components/schemas/OrgGroupPolicyType' + required: + - id + - type + - attributes + type: object + OrgGroupPolicyCreateData: + description: Data for creating an org group policy. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyCreateAttributes' + relationships: + $ref: '#/components/schemas/OrgGroupPolicyCreateRelationships' + type: + $ref: '#/components/schemas/OrgGroupPolicyType' + required: + - type + - attributes + - relationships + type: object + OrgGroupPolicyUpdateData: + description: Data for updating an org group policy. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyUpdateAttributes' + id: + description: The ID of the policy. + example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgGroupPolicyType' + required: + - id + - type + - attributes + type: object + OrgGroupPolicyConfigData: + description: An org group policy config resource. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyConfigAttributes' + id: + description: The identifier of the policy config (uses the config name). + example: monitor_timezone + type: string + type: + $ref: '#/components/schemas/OrgGroupPolicyConfigType' + required: + - id + - type + - attributes + type: object + OrgGroupPolicyOverrideSortOption: + default: id + description: Field to sort overrides by. + enum: + - id + - '-id' + - org_uuid + - '-org_uuid' + example: id + type: string + x-enum-varnames: + - ID + - MINUS_ID + - ORG_UUID + - MINUS_ORG_UUID + OrgGroupPolicyOverrideData: + description: An org group policy override resource. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyOverrideAttributes' + id: + description: The ID of the policy override. + example: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/OrgGroupPolicyOverrideRelationships' + type: + $ref: '#/components/schemas/OrgGroupPolicyOverrideType' + required: + - id + - type + - attributes + type: object + OrgGroupPolicyOverrideCreateData: + description: Data for creating an org group policy override. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyOverrideCreateAttributes' + relationships: + $ref: '#/components/schemas/OrgGroupPolicyOverrideCreateRelationships' + type: + $ref: '#/components/schemas/OrgGroupPolicyOverrideType' + required: + - type + - attributes + - relationships + type: object + OrgGroupPolicyOverrideUpdateData: + description: Data for updating a policy override. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicyOverrideUpdateAttributes' + id: + description: The ID of the policy override. + example: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgGroupPolicyOverrideType' + required: + - id + - type + - attributes + type: object + OrgGroupPolicySuggestionData: + description: An org group policy suggestion resource. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupPolicySuggestionAttributes' + id: + description: The ID of the org group policy suggestion. + example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + type: string + relationships: + $ref: '#/components/schemas/OrgGroupPolicySuggestionRelationships' + type: + $ref: '#/components/schemas/OrgGroupPolicySuggestionType' + required: + - id + - type + - attributes + type: object + OrgGroupSortOption: + default: uuid + description: Field to sort org groups by. + enum: + - name + - '-name' + - uuid + - '-uuid' + example: name + type: string + x-enum-varnames: + - NAME + - MINUS_NAME + - UUID + - MINUS_UUID + OrgGroupData: + description: An org group resource. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupAttributes' + id: + description: The ID of the org group. + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgGroupType' + required: + - id + - type + - attributes + type: object + OrgGroupCreateData: + description: Data for creating an org group. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupCreateAttributes' + type: + $ref: '#/components/schemas/OrgGroupType' + required: + - type + - attributes + type: object + OrgGroupUpdateData: + description: Data for updating an org group. + properties: + attributes: + $ref: '#/components/schemas/OrgGroupUpdateAttributes' + id: + description: The ID of the org group. + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgGroupType' + required: + - id + - type + - attributes + type: object + Permission: + description: Permission object. + properties: + attributes: + $ref: '#/components/schemas/PermissionAttributes' + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + required: + - type + type: object + PersonalAccessTokensSort: + default: name + description: Sorting options + enum: + - name + - '-name' + - created_at + - '-created_at' + - expires_at + - '-expires_at' + - last_used_at + - '-last_used_at' + type: string + x-enum-varnames: + - NAME_ASCENDING + - NAME_DESCENDING + - CREATED_AT_ASCENDING + - CREATED_AT_DESCENDING + - EXPIRES_AT_ASCENDING + - EXPIRES_AT_DESCENDING + - LAST_USED_AT_ASCENDING + - LAST_USED_AT_DESCENDING + AccessTokenListItem: + description: An access token entry returned by the personal access tokens list endpoint. May represent either a personal or a service access token. + properties: + attributes: + $ref: '#/components/schemas/PersonalAccessTokenAttributes' + id: + description: ID of the access token. + type: string + relationships: + $ref: '#/components/schemas/AccessTokenListItemRelationships' + type: + $ref: '#/components/schemas/AccessTokensType' + type: object + PersonalAccessTokenResponseMeta: + description: Additional information related to the access token response. + properties: + page: + $ref: '#/components/schemas/PersonalAccessTokenResponseMetaPage' + type: object + PersonalAccessTokenCreateData: + description: Object used to create an access token. + properties: + attributes: + $ref: '#/components/schemas/PersonalAccessTokenCreateAttributes' + type: + $ref: '#/components/schemas/PersonalAccessTokensType' + required: + - attributes + - type + type: object + FullPersonalAccessToken: + description: Datadog access token, including the token key. + properties: + attributes: + $ref: '#/components/schemas/FullPersonalAccessTokenAttributes' + id: + description: ID of the access token. + type: string + relationships: + $ref: '#/components/schemas/PersonalAccessTokenRelationships' + type: + $ref: '#/components/schemas/PersonalAccessTokensType' + type: object + PersonalAccessToken: + description: Datadog access token. + properties: + attributes: + $ref: '#/components/schemas/PersonalAccessTokenAttributes' + id: + description: ID of the access token. + type: string + relationships: + $ref: '#/components/schemas/PersonalAccessTokenRelationships' + type: + $ref: '#/components/schemas/PersonalAccessTokensType' + type: object + PersonalAccessTokenUpdateData: + description: Object used to update an access token. + properties: + attributes: + $ref: '#/components/schemas/PersonalAccessTokenUpdateAttributes' + id: + description: ID of the access token. + example: 00112233-4455-6677-8899-aabbccddeeff + type: string + type: + $ref: '#/components/schemas/PersonalAccessTokensType' + required: + - attributes + - id + - type + type: object + RestrictionPolicy: + description: Restriction policy object. + properties: + attributes: + $ref: '#/components/schemas/RestrictionPolicyAttributes' + id: + description: The identifier, always equivalent to the value specified in the `resource_id` path parameter. + example: dashboard:abc-def-ghi + type: string + type: + $ref: '#/components/schemas/RestrictionPolicyType' + required: + - type + - id + - attributes + type: object + Role: + description: Role object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/RoleAttributes' + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: '#/components/schemas/RoleResponseRelationships' + type: + $ref: '#/components/schemas/RolesType' + required: + - type + type: object + RoleCreateData: + description: Data related to the creation of a role. + properties: + attributes: + $ref: '#/components/schemas/RoleCreateAttributes' + relationships: + $ref: '#/components/schemas/RoleRelationships' + type: + $ref: '#/components/schemas/RolesType' + required: + - attributes + type: object + RoleCreateResponseData: + description: Role object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/RoleCreateAttributes' + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: '#/components/schemas/RoleResponseRelationships' + type: + $ref: '#/components/schemas/RolesType' + required: + - type + type: object + RoleTemplateData: + description: The definition of `RoleTemplateData` object. + properties: + attributes: + $ref: '#/components/schemas/RoleTemplateDataAttributes' + id: + description: The `RoleTemplateData` `id`. + type: string + type: + $ref: '#/components/schemas/RoleTemplateDataType' + required: + - type + type: object + RoleUpdateData: + description: Data related to the update of a role. + properties: + attributes: + $ref: '#/components/schemas/RoleUpdateAttributes' + id: + description: The unique identifier of the role. + example: 00000000-0000-1111-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/RoleRelationships' + type: + $ref: '#/components/schemas/RolesType' + required: + - attributes + - type + - id + type: object + RoleUpdateResponseData: + description: Role object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/RoleUpdateAttributes' + id: + description: The unique identifier of the role. + type: string + relationships: + $ref: '#/components/schemas/RoleResponseRelationships' + type: + $ref: '#/components/schemas/RolesType' + required: + - type + type: object + RoleClone: + description: Data for the clone role request. + properties: + attributes: + $ref: '#/components/schemas/RoleCloneAttributes' + type: + $ref: '#/components/schemas/RolesType' + required: + - type + - attributes + type: object + RelationshipToPermissionData: + description: Relationship to permission object. + properties: + id: + description: ID of the permission. + type: string + type: + $ref: '#/components/schemas/PermissionsType' + type: object + RelationshipToUserData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-2345-000000000000 + type: string + type: + $ref: '#/components/schemas/UsersType' + required: + - id + - type + type: object + SAMLConfiguration: + description: A SAML configuration object. + properties: + attributes: + $ref: '#/components/schemas/SAMLConfigurationAttributes' + id: + description: The UUID of the SAML configuration. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + relationships: + $ref: '#/components/schemas/SAMLConfigurationRelationships' + type: + $ref: '#/components/schemas/SAMLConfigurationsType' + required: + - id + - type + type: object + SAMLConfigurationUpdateData: + description: Data for updating a SAML configuration. + properties: + attributes: + $ref: '#/components/schemas/SAMLConfigurationUpdateAttributes' + id: + description: The UUID of the SAML configuration to update. Must match the UUID in the URL path. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + maxLength: 39 + type: string + relationships: + $ref: '#/components/schemas/SAMLConfigurationRelationships' + type: + $ref: '#/components/schemas/SAMLConfigurationsType' + required: + - id + - type + type: object + UnassignSeatsUserRequestData: + description: The request data object containing attributes for unassigning seats from users. + properties: + attributes: + $ref: '#/components/schemas/UnassignSeatsUserRequestDataAttributes' + description: The attributes of the unassign seats user request. + id: + description: The ID of the unassign seats user request. + type: string + type: + $ref: '#/components/schemas/SeatAssignmentsDataType' + description: The type of the unassign seats user request. + required: + - type + - attributes + type: object + SeatUserData: + description: A seat user resource object containing its ID, type, and associated attributes. + properties: + attributes: + $ref: '#/components/schemas/SeatUserDataAttributes' + description: The attributes of the seat user. + id: + description: The ID of the seat user. + example: 00000000-0000-0000-0000-000000000000 + nullable: true + type: string + type: + $ref: '#/components/schemas/SeatUserDataType' + type: object + SeatUserMeta: + description: Pagination metadata for the seat users list response. + properties: + cursor: + description: The cursor for the seat users. + type: string + limit: + description: The limit for the seat users. + format: int64 + type: integer + next_cursor: + description: The next cursor for the seat users. + type: string + type: object + AssignSeatsUserRequestData: + description: The request data object containing attributes for assigning seats to users. + properties: + attributes: + $ref: '#/components/schemas/AssignSeatsUserRequestDataAttributes' + description: The attributes of the assign seats user request. + id: + description: The ID of the assign seats user request. + type: string + type: + $ref: '#/components/schemas/SeatAssignmentsDataType' + description: The type of the assign seats user request. + required: + - type + - attributes + type: object + AssignSeatsUserResponseData: + description: The response data object containing attributes of the seat assignment result. + properties: + attributes: + $ref: '#/components/schemas/AssignSeatsUserResponseDataAttributes' + description: The attributes of the assign seats user response. + id: + description: The ID of the assign seats user response. + type: string + type: + $ref: '#/components/schemas/SeatAssignmentsDataType' + type: object + ServiceAccountCreateData: + description: Object to create a service account User. + properties: + attributes: + $ref: '#/components/schemas/ServiceAccountCreateAttributes' + relationships: + $ref: '#/components/schemas/UserRelationships' + type: + $ref: '#/components/schemas/UsersType' + required: + - attributes + - type + type: object + ServiceAccessToken: + description: Datadog access token. + properties: + attributes: + $ref: '#/components/schemas/ServiceAccessTokenAttributes' + id: + description: ID of the access token. + type: string + relationships: + $ref: '#/components/schemas/ServiceAccessTokenRelationships' + type: + $ref: '#/components/schemas/ServiceAccessTokensType' + type: object + ServiceAccessTokenResponseMeta: + description: Additional information related to the access token response. + properties: + page: + $ref: '#/components/schemas/ServiceAccessTokenResponseMetaPage' + type: object + ServiceAccountAccessTokenCreateData: + description: Object used to create a service account access token. + properties: + attributes: + $ref: '#/components/schemas/ServiceAccountAccessTokenCreateAttributes' + type: + $ref: '#/components/schemas/ServiceAccessTokensType' + required: + - attributes + - type + type: object + FullServiceAccessToken: + description: Datadog access token, including the token key. + properties: + attributes: + $ref: '#/components/schemas/FullServiceAccessTokenAttributes' + id: + description: ID of the access token. + type: string + relationships: + $ref: '#/components/schemas/ServiceAccessTokenRelationships' + type: + $ref: '#/components/schemas/ServiceAccessTokensType' + type: object + ServiceAccountAccessTokenUpdateData: + description: Object used to update a service account access token. + properties: + attributes: + $ref: '#/components/schemas/ServiceAccountAccessTokenUpdateAttributes' + id: + description: ID of the access token. + example: 00112233-4455-6677-8899-aabbccddeeff + type: string + type: + $ref: '#/components/schemas/ServiceAccessTokensType' + required: + - attributes + - id + - type + type: object + Team: + description: A team + properties: + attributes: + $ref: '#/components/schemas/TeamAttributes' + id: + description: The team's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + relationships: + $ref: '#/components/schemas/TeamRelationships' + type: + $ref: '#/components/schemas/TeamType' + required: + - attributes + - id + - type + type: object + TeamIncluded: + description: Included resources related to the team + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - attributes + - id + - type + TeamsResponseLinks: + description: Teams response links. + properties: + first: + description: First link. + type: string + last: + description: Last link. + nullable: true + type: string + next: + description: Next link. + type: string + prev: + description: Previous link. + nullable: true + type: string + self: + description: Current link. + type: string + type: object + TeamsResponseMeta: + description: Teams response metadata. + properties: + pagination: + $ref: '#/components/schemas/TeamsResponseMetaPagination' + type: object + TeamCreate: + description: Team create + properties: + attributes: + $ref: '#/components/schemas/TeamCreateAttributes' + relationships: + $ref: '#/components/schemas/TeamCreateRelationships' + type: + $ref: '#/components/schemas/TeamType' + required: + - attributes + - type + type: object + TeamHierarchyLink: + description: Team hierarchy link + properties: + attributes: + $ref: '#/components/schemas/TeamHierarchyLinkAttributes' + id: + description: The team hierarchy link's identifier + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + relationships: + $ref: '#/components/schemas/TeamHierarchyLinkRelationships' + type: + $ref: '#/components/schemas/TeamHierarchyLinkType' + required: + - attributes + - id + - type + type: object + TeamHierarchyLinkTeam: + description: Team hierarchy links connect different teams. This represents team objects that are connected by the team hierarchy link. + properties: + attributes: + $ref: '#/components/schemas/TeamHierarchyLinkTeamAttributes' + id: + description: The team's identifier + example: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: string + type: + $ref: '#/components/schemas/TeamType' + required: + - id + - type + type: object + TeamsHierarchyLinksResponseLinks: + description: When querying team hierarchy links, a set of links for navigation between different pages is included + properties: + first: + description: Link to the first page. + nullable: true + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + nullable: true + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current object. + type: string + type: object + TeamsHierarchyLinksResponseMeta: + description: Metadata that is included in the response when querying the team hierarchy links + properties: + page: + $ref: '#/components/schemas/TeamsHierarchyLinksResponseMetaPage' + type: object + TeamHierarchyLinkCreate: + description: Data provided when creating a team hierarchy link + properties: + relationships: + $ref: '#/components/schemas/TeamHierarchyLinkCreateRelationships' + type: + $ref: '#/components/schemas/TeamHierarchyLinkType' + required: + - relationships + - type + type: object + TeamConnectionDeleteRequestDataItem: + description: A collection of connection ids to delete. + properties: + id: + description: The unique identifier of the team connection to delete. + example: 12345678-1234-5678-9abc-123456789012 + type: string + type: + $ref: '#/components/schemas/TeamConnectionType' + required: + - id + - type + type: object + TeamConnection: + description: A relationship between a Datadog team and a team from another external system. + properties: + attributes: + $ref: '#/components/schemas/TeamConnectionAttributes' + id: + description: The unique identifier of the team connection. + example: 12345678-1234-5678-9abc-123456789012 + type: string + relationships: + $ref: '#/components/schemas/TeamConnectionRelationships' + type: + $ref: '#/components/schemas/TeamConnectionType' + required: + - id + - type + type: object + ConnectionsResponseMeta: + description: Connections response metadata. + properties: + page: + $ref: '#/components/schemas/ConnectionsPagePagination' + type: object + TeamConnectionCreateData: + description: Data for creating a team connection. + properties: + attributes: + $ref: '#/components/schemas/TeamConnectionAttributes' + relationships: + $ref: '#/components/schemas/TeamConnectionRelationships' + type: + $ref: '#/components/schemas/TeamConnectionType' + required: + - type + type: object + TeamSyncData: + description: A configuration governing syncing between Datadog teams and teams from an external system. + properties: + attributes: + $ref: '#/components/schemas/TeamSyncAttributes' + id: + description: The sync's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/TeamSyncBulkType' + required: + - attributes + - type + type: object + MemberTeam: + description: A member team properties: - data: - $ref: '#/components/schemas/AuthNMappingUpdateData' + id: + description: The member team's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/MemberTeamType' + required: + - id + - type + type: object + TeamUpdate: + description: Team update request + properties: + attributes: + $ref: '#/components/schemas/TeamUpdateAttributes' + relationships: + $ref: '#/components/schemas/TeamUpdateRelationships' + type: + $ref: '#/components/schemas/TeamType' + required: + - attributes + - type + type: object + TeamLink: + description: Team link + properties: + attributes: + $ref: '#/components/schemas/TeamLinkAttributes' + id: + description: The team link's identifier + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/TeamLinkType' + required: + - attributes + - id + - type + type: object + TeamLinkCreate: + description: Team link create + properties: + attributes: + $ref: '#/components/schemas/TeamLinkAttributes' + type: + $ref: '#/components/schemas/TeamLinkType' + required: + - attributes + - type + type: object + UserTeam: + description: A user's relationship with a team + properties: + attributes: + $ref: '#/components/schemas/UserTeamAttributes' + id: + description: The ID of a user's relationship with a team + example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + type: string + relationships: + $ref: '#/components/schemas/UserTeamRelationships' + type: + $ref: '#/components/schemas/UserTeamType' + required: + - id + - type + type: object + UserTeamIncluded: + description: Included resources related to the team membership + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - attributes + - id + - type + UserTeamCreate: + description: A user's relationship with a team + properties: + attributes: + $ref: '#/components/schemas/UserTeamAttributes' + relationships: + $ref: '#/components/schemas/UserTeamRelationships' + type: + $ref: '#/components/schemas/UserTeamType' + required: + - type + type: object + UserTeamUpdate: + description: A user's relationship with a team + properties: + attributes: + $ref: '#/components/schemas/UserTeamAttributes' + type: + $ref: '#/components/schemas/UserTeamType' + required: + - type + type: object + TeamNotificationRule: + description: Team notification rule + properties: + attributes: + $ref: '#/components/schemas/TeamNotificationRuleAttributes' + id: + description: The identifier of the team notification rule + example: b8626d7e-cedd-11eb-abf5-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/TeamNotificationRuleType' + required: + - attributes + - type + type: object + TeamNotificationRulesResponseMeta: + description: Metadata that is included in the response when querying the team notification rules + properties: + page: + $ref: '#/components/schemas/TeamNotificationRulesResponseMetaPage' + type: object + TeamPermissionSetting: + description: Team permission setting + properties: + attributes: + $ref: '#/components/schemas/TeamPermissionSettingAttributes' + id: + description: The team permission setting's identifier + example: TeamPermission-aeadc05e-98a8-11ec-ac2c-da7ad0900001-edit + type: string + type: + $ref: '#/components/schemas/TeamPermissionSettingType' + required: + - id + - type + type: object + TeamPermissionSettingUpdate: + description: Team permission setting update + properties: + attributes: + $ref: '#/components/schemas/TeamPermissionSettingUpdateAttributes' + type: + $ref: '#/components/schemas/TeamPermissionSettingType' + required: + - type + type: object + UsageDataObject: + description: Usage data. + properties: + attributes: + $ref: '#/components/schemas/UsageAttributesObject' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/UsageTimeSeriesType' + type: object + BillingDimensionsMappingBody: + description: Billing dimensions mapping data. + items: + $ref: '#/components/schemas/BillingDimensionsMappingBodyItem' + type: array + CostByOrg: + description: Cost data. + properties: + attributes: + $ref: '#/components/schemas/CostByOrgAttributes' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/CostByOrgType' + type: object + HourlyUsage: + description: Hourly usage for a product family for an org. + properties: + attributes: + $ref: '#/components/schemas/HourlyUsageAttributes' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/UsageTimeSeriesType' + type: object + HourlyUsageMetadata: + description: The object containing document metadata. + properties: + pagination: + $ref: '#/components/schemas/HourlyUsagePagination' + type: object + ProjectedCost: + description: Projected Cost data. + properties: + attributes: + $ref: '#/components/schemas/ProjectedCostAttributes' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/ProjectedCostType' + type: object + UsageSummaryAvailableFieldsBody: + description: Available-fields data. + properties: + attributes: + $ref: '#/components/schemas/UsageSummaryAvailableFieldsAttributes' + id: + description: The identifier for the discovery scope. Always `"all"`. + example: all + type: string + type: + $ref: '#/components/schemas/UsageSummaryAvailableFieldsType' + type: object + UsageAttributionTypesBody: + description: Usage attribution types data. + properties: + attributes: + $ref: '#/components/schemas/UsageAttributionTypesAttributes' + id: + description: Unique ID of the response. + type: string + type: + $ref: '#/components/schemas/UsageAttributionTypesType' + type: object + UserAuthorizedClientData: + description: Data object representing a user authorized client. + properties: + attributes: + $ref: '#/components/schemas/UserAuthorizedClientAttributes' + id: + description: The unique identifier of the user authorized client. + example: 00000000-0000-0000-0000-000000000001 + type: string + relationships: + $ref: '#/components/schemas/UserAuthorizedClientRelationships' + type: + $ref: '#/components/schemas/UserAuthorizedClientType' + required: + - id + - type + - attributes + - relationships + type: object + UserInvitationData: + description: Object to create a user invitation. + properties: + relationships: + $ref: '#/components/schemas/UserInvitationRelationships' + type: + $ref: '#/components/schemas/UserInvitationsType' + required: + - type + - relationships + type: object + UserInvitationResponseData: + description: Object of a user invitation returned by the API. + properties: + attributes: + $ref: '#/components/schemas/UserInvitationDataAttributes' + id: + description: ID of the user invitation. + type: string + relationships: + $ref: '#/components/schemas/UserInvitationRelationships' + type: + $ref: '#/components/schemas/UserInvitationsType' + type: object + UserCreateData: + description: Object to create a user. + properties: + attributes: + $ref: '#/components/schemas/UserCreateAttributes' + relationships: + $ref: '#/components/schemas/UserRelationships' + type: + $ref: '#/components/schemas/UsersType' required: - - data + - attributes + - type type: object - ApplicationKeyCreateRequest: - description: Request used to create an application key. + UserOverrideIdentityProviderDataList: + description: List of user identity provider override data objects. + items: + $ref: '#/components/schemas/UserOverrideIdentityProviderData' + type: array + UserRelationshipIdentityProviderDataList: + description: List of identity provider resource identifiers for a relationship update. + items: + $ref: '#/components/schemas/UserRelationshipIdentityProviderData' + type: array + ValidateV2Data: + description: Data object containing the API key validation result. properties: - data: - $ref: '#/components/schemas/ApplicationKeyCreateData' + attributes: + $ref: '#/components/schemas/ValidateV2Attributes' + id: + description: The UUID of the organization associated with the API key. + example: 550e8400-e29b-41d4-a716-446655440000 + type: string + type: + $ref: '#/components/schemas/ValidateV2Type' required: - - data + - id + - type + - attributes type: object - CreateDataDeletionRequestBody: - description: Object needed to create a data deletion request. + ValidateAPIKeyStatus: + description: Status of the validation. Always `ok` when both the API key and the application key are valid. + enum: + - ok + example: ok + type: string + x-enum-varnames: + - OK + IPPrefixesAgents: + description: Available prefix information for the Agent endpoints. properties: - data: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyData' - required: - - data + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array type: object - CreateDataDeletionResponseBody: - description: The response from the create data deletion request endpoint. + IPPrefixesAPI: + description: Available prefix information for the API endpoints. properties: - data: - $ref: '#/components/schemas/DataDeletionResponseItem' - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array type: object - GetDataDeletionsResponseBody: - description: The response from the get data deletion requests endpoint. + IPPrefixesAPM: + description: Available prefix information for the APM endpoints. properties: - data: - description: The list of data deletion requests that matches the query. + prefixes_ipv4: + description: List of IPv4 prefixes. items: - $ref: '#/components/schemas/DataDeletionResponseItem' + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string type: array - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' type: object - CancelDataDeletionResponseBody: - description: The response from the cancel data deletion request endpoint. + IPPrefixesGlobal: + description: Available prefix information for all Datadog endpoints. properties: - data: - $ref: '#/components/schemas/DataDeletionResponseItem' - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array type: object - DomainAllowlistResponse: - description: Response containing information about the email domain allowlist. + IPPrefixesLogs: + description: Available prefix information for the Logs endpoints. properties: - data: - $ref: '#/components/schemas/DomainAllowlistResponseData' + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array type: object - DomainAllowlistRequest: - description: Request containing the desired email domain allowlist configuration. + IPPrefixesOrchestrator: + description: Available prefix information for the Orchestrator endpoints. properties: - data: - $ref: '#/components/schemas/DomainAllowlist' - required: - - data + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array type: object - IPAllowlistResponse: - description: Response containing information about the IP allowlist. + IPPrefixesProcess: + description: Available prefix information for the Process endpoints. properties: - data: - $ref: '#/components/schemas/IPAllowlistData' + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesRemoteConfiguration: + description: Available prefix information for the Remote Configuration endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesSynthetics: + description: Available prefix information for the Synthetics endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv4_by_location: + additionalProperties: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix. + type: string + type: array + description: List of IPv4 prefixes by location. + type: object + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + prefixes_ipv6_by_location: + additionalProperties: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix. + type: string + type: array + description: List of IPv6 prefixes by location. + type: object + type: object + IPPrefixesSyntheticsPrivateLocations: + description: Available prefix information for the Synthetics Private Locations endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + IPPrefixesWebhooks: + description: Available prefix information for the Webhook endpoints. + properties: + prefixes_ipv4: + description: List of IPv4 prefixes. + items: + description: IPv4 prefix + type: string + type: array + prefixes_ipv6: + description: List of IPv6 prefixes. + items: + description: IPv6 prefix + type: string + type: array + type: object + UsageCustomReportsData: + description: The response containing the date and type for custom reports. + properties: + attributes: + $ref: '#/components/schemas/UsageCustomReportsAttributes' + id: + description: The date for specified custom reports. + type: string + type: + $ref: '#/components/schemas/UsageReportsType' + type: object + UsageCustomReportsMeta: + description: The object containing document metadata. + properties: + page: + $ref: '#/components/schemas/UsageCustomReportsPage' + type: object + UsageSpecifiedCustomReportsData: + description: Response containing date and type for specified custom reports. + properties: + attributes: + $ref: '#/components/schemas/UsageSpecifiedCustomReportsAttributes' + id: + description: The date for specified custom reports. + type: string + type: + $ref: '#/components/schemas/UsageReportsType' + type: object + UsageSpecifiedCustomReportsMeta: + description: The object containing document metadata. + properties: + page: + $ref: '#/components/schemas/UsageSpecifiedCustomReportsPage' + type: object + OrganizationBilling: + deprecated: true + description: A JSON array of billing type. + example: + type: parent_billing + properties: + type: + description: The type of billing. Only `parent_billing` is supported. + type: string + type: object + OrganizationSubscription: + deprecated: true + description: Subscription definition. + example: + type: pro + properties: + type: + description: The subscription type. Types available are `trial`, `free`, and `pro`. + type: string + type: object + OrganizationSettings: + description: A JSON array of settings. + properties: + private_widget_share: + description: Whether or not the organization users can share widgets outside of Datadog. + example: false + type: boolean + saml: + $ref: '#/components/schemas/OrganizationSettingsSaml' + saml_autocreate_access_role: + $ref: '#/components/schemas/AccessRole' + saml_autocreate_users_domains: + $ref: '#/components/schemas/OrganizationSettingsSamlAutocreateUsersDomains' + saml_can_be_enabled: + description: Whether or not SAML can be enabled for this organization. + example: false + type: boolean + saml_idp_endpoint: + description: Identity provider endpoint for SAML authentication. + example: https://my.saml.endpoint + type: string + saml_idp_initiated_login: + $ref: '#/components/schemas/OrganizationSettingsSamlIdpInitiatedLogin' + saml_idp_metadata_uploaded: + description: Whether or not a SAML identity provider metadata file was provided to the Datadog organization. + example: false + type: boolean + saml_login_url: + description: URL for SAML logging. + example: https://my.saml.login.url + type: string + saml_strict_mode: + $ref: '#/components/schemas/OrganizationSettingsSamlStrictMode' + type: object + UsageAnalyzedLogsHour: + description: The number of analyzed logs for each hour for a given organization. + properties: + analyzed_logs: + description: Contains the number of analyzed logs. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageAuditLogsHour: + description: Audit logs usage for a given organization for a given hour. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + lines_indexed: + description: The total number of audit logs lines indexed during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageLambdaHour: + description: |- + Number of Lambda functions and sum of the invocations of all Lambda functions + for each hour for a given organization. + properties: + func_count: + description: Contains the number of different functions for each region and AWS account. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + invocations_sum: + description: Contains the sum of invocations of all functions. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageBillableSummaryHour: + description: Response with monthly summary of data billed by Datadog. + properties: + account_name: + description: The account name. + type: string + account_public_id: + description: The account public ID. + type: string + billing_plan: + deprecated: true + description: The billing plan (metadata). (Deprecated from June 2026) + type: string + end_date: + description: Shows the last date of usage. + format: date-time + type: string + num_orgs: + description: The number of organizations. + format: int64 + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + ratio_in_month: + description: Shows usage aggregation for a billing period. + format: double + type: number + region: + description: The region of the organization. + type: string + start_date: + description: Shows the first date of usage. + format: date-time + type: string + usage: + $ref: '#/components/schemas/UsageBillableSummaryKeys' type: object - IPAllowlistUpdateRequest: - description: Update the IP allowlist. + UsageCIVisibilityHour: + description: CI visibility usage in a given hour. properties: - data: - $ref: '#/components/schemas/IPAllowlistData' - required: - - data + ci_pipeline_indexed_spans: + description: The number of spans for pipelines in the queried hour. + format: int64 + nullable: true + type: integer + ci_test_indexed_spans: + description: The number of spans for tests in the queried hour. + format: int64 + nullable: true + type: integer + ci_visibility_itr_committers: + description: Shows the total count of all active Git committers for Intelligent Test Runner in the current month. A committer is active if they commit at least 3 times in a given month. + format: int64 + nullable: true + type: integer + ci_visibility_pipeline_committers: + description: Shows the total count of all active Git committers for Pipelines in the current month. A committer is active if they commit at least 3 times in a given month. + format: int64 + nullable: true + type: integer + ci_visibility_test_committers: + description: The total count of all active Git committers for tests in the current month. A committer is active if they commit at least 3 times in a given month. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - OrgConfigListResponse: - description: A response with multiple Org Configs. + UsageCloudSecurityPostureManagementHour: + description: Cloud Security Management Pro usage for a given organization for a given hour. properties: - data: - description: An array of Org Configs. - items: - $ref: '#/components/schemas/OrgConfigRead' - type: array - required: - - data + aas_host_count: + description: The number of Cloud Security Management Pro Azure app services hosts during a given hour. + format: double + nullable: true + type: number + aws_host_count: + description: The number of Cloud Security Management Pro AWS hosts during a given hour. + format: double + nullable: true + type: number + azure_host_count: + description: The number of Cloud Security Management Pro Azure hosts during a given hour. + format: double + nullable: true + type: number + compliance_host_count: + description: The number of Cloud Security Management Pro hosts during a given hour. + format: double + nullable: true + type: number + container_count: + description: The total number of Cloud Security Management Pro containers during a given hour. + format: double + nullable: true + type: number + gcp_host_count: + description: The number of Cloud Security Management Pro GCP hosts during a given hour. + format: double + nullable: true + type: number + host_count: + description: The total number of Cloud Security Management Pro hosts during a given hour. + format: double + nullable: true + type: number + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - OrgConfigGetResponse: - description: A response with a single Org Config. + UsageCWSHour: + description: Cloud Workload Security usage for a given organization for a given hour. properties: - data: - $ref: '#/components/schemas/OrgConfigRead' - required: - - data + cws_container_count: + description: The total number of Cloud Workload Security container hours from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + cws_host_count: + description: The total number of Cloud Workload Security host hours from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - OrgConfigWriteRequest: - description: A request to update an Org Config. + UsageDBMHour: + description: Database Monitoring usage for a given organization for a given hour. properties: - data: - $ref: '#/components/schemas/OrgConfigWrite' - required: - - data + dbm_host_count: + description: The total number of Database Monitoring host hours from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + dbm_queries_count: + description: The total number of normalized Database Monitoring queries from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - OrgConnectionListResponse: - description: Response containing a list of org connections. + UsageFargateHour: + description: Number of Fargate tasks run and hourly usage. properties: - data: - description: List of org connections. - items: - $ref: '#/components/schemas/OrgConnection' - type: array - meta: - $ref: '#/components/schemas/OrgConnectionListResponseMeta' - required: - - data + apm_fargate_count: + description: The high-water mark of APM ECS Fargate tasks during the given hour. + format: int64 + nullable: true + type: integer + appsec_fargate_count: + description: The Application Security Monitoring ECS Fargate tasks during the given hour. + format: int64 + nullable: true + type: integer + avg_profiled_fargate_tasks: + description: The average profiled task count for Fargate Profiling. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + tasks_count: + description: The number of Fargate tasks run. + format: int64 + nullable: true + type: integer type: object - OrgConnectionCreateRequest: - description: Request to create an org connection. + UsageHostHour: + description: Number of hosts/containers recorded for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/OrgConnectionCreate' - required: - - data + agent_host_count: + description: |- + Contains the total number of infrastructure hosts reporting + during a given hour that were running the Datadog Agent. + format: int64 + nullable: true + type: integer + alibaba_host_count: + description: |- + Contains the total number of hosts that reported through Alibaba integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + apm_azure_app_service_host_count: + description: Contains the total number of Azure App Services hosts using APM. + format: int64 + nullable: true + type: integer + apm_host_count: + description: |- + Shows the total number of hosts using APM during the hour, + these are counted as billable (except during trial periods). + format: int64 + nullable: true + type: integer + aws_host_count: + description: |- + Contains the total number of hosts that reported through the AWS integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + azure_host_count: + description: |- + Contains the total number of hosts that reported through Azure integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + container_count: + description: Shows the total number of containers reported by the Docker integration during the hour. + format: int64 + nullable: true + type: integer + gcp_host_count: + description: |- + Contains the total number of hosts that reported through the Google Cloud integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + heroku_host_count: + description: Contains the total number of Heroku dynos reported by the Datadog Agent. + format: int64 + nullable: true + type: integer + host_count: + description: |- + Contains the total number of billable infrastructure hosts reporting during a given hour. + This is the sum of `agent_host_count`, `aws_host_count`, and `gcp_host_count`. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + nullable: true + type: string + infra_azure_app_service: + description: |- + Contains the total number of hosts that reported through the Azure App Services integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer + opentelemetry_apm_host_count: + description: Contains the total number of hosts using APM reported by Datadog exporter for the OpenTelemetry Collector. + format: int64 + nullable: true + type: integer + opentelemetry_host_count: + description: Contains the total number of hosts reported by Datadog exporter for the OpenTelemetry Collector. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + vsphere_host_count: + description: |- + Contains the total number of hosts that reported through vSphere integration + (and were NOT running the Datadog Agent). + format: int64 + nullable: true + type: integer type: object - OrgConnectionResponse: - description: Response containing a single org connection. + HourlyUsageAttributionMetadata: + description: The object containing document metadata. properties: - data: - $ref: '#/components/schemas/OrgConnection' - required: - - data + pagination: + $ref: '#/components/schemas/HourlyUsageAttributionPagination' type: object - OrgConnectionUpdateRequest: - description: Request to update an org connection. + HourlyUsageAttributionBody: + description: The usage for one set of tags for one hour. properties: - data: - $ref: '#/components/schemas/OrgConnectionUpdate' - required: - - data + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The name of the organization. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + tag_config_source: + description: The source of the usage attribution tag configuration and the selected tags in the format of `::://////`. + type: string + tags: + $ref: '#/components/schemas/UsageAttributionTagNames' + total_usage_sum: + description: Total product usage for the given tags within the hour. + format: double + type: number + updated_at: + description: Shows the most recent hour in the current month for all organizations where usages are calculated. + type: string + usage_type: + $ref: '#/components/schemas/HourlyUsageAttributionUsageType' type: object - PermissionsResponse: - description: Payload with API-returned permissions. + UsageIncidentManagementHour: + description: Incident management usage for a given organization for a given hour. properties: - data: - description: Array of permissions. - items: - $ref: '#/components/schemas/Permission' - type: array + hour: + description: The hour for the usage. + format: date-time + type: string + monthly_active_users: + description: Contains the total number monthly active users from the start of the given hour's month until the given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RestrictionPolicyResponse: - description: Response containing information about a single restriction policy. + UsageIndexedSpansHour: + description: The hours of indexed spans usage. + properties: + hour: + description: The hour for the usage. + format: date-time + type: string + indexed_events_count: + description: Contains the number of spans indexed. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + type: object + UsageIngestedSpansHour: + description: Ingested spans usage for a given organization for a given hour. properties: - data: - $ref: '#/components/schemas/RestrictionPolicy' - required: - - data + hour: + description: The hour for the usage. + format: date-time + type: string + ingested_events_bytes: + description: Contains the total number of bytes ingested for APM spans during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RestrictionPolicyUpdateRequest: - description: Update request for a restriction policy. + UsageIoTHour: + description: IoT usage for a given organization for a given hour. properties: - data: - $ref: '#/components/schemas/RestrictionPolicy' - required: - - data + hour: + description: The hour for the usage. + format: date-time + type: string + iot_device_count: + description: The total number of IoT devices during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RolesSort: - default: name - description: Sorting options for roles. - enum: - - name - - '-name' - - modified_at - - '-modified_at' - - user_count - - '-user_count' - type: string - x-enum-varnames: - - NAME_ASCENDING - - NAME_DESCENDING - - MODIFIED_AT_ASCENDING - - MODIFIED_AT_DESCENDING - - USER_COUNT_ASCENDING - - USER_COUNT_DESCENDING - RolesResponse: - description: Response containing information about multiple roles. + UsageLogsHour: + description: Hour usage for logs. properties: - data: - description: Array of returned roles. - items: - $ref: '#/components/schemas/Role' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' + billable_ingested_bytes: + description: Contains the number of billable log bytes ingested. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + indexed_events_count: + description: Contains the number of log events indexed. + format: int64 + nullable: true + type: integer + ingested_events_bytes: + description: Contains the number of log bytes ingested. + format: int64 + nullable: true + type: integer + logs_forwarding_events_bytes: + description: Contains the number of logs forwarded bytes (data available as of April 1st 2023) + format: int64 + nullable: true + type: integer + logs_live_indexed_count: + description: Contains the number of live log events indexed (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + logs_live_ingested_bytes: + description: Contains the number of live log bytes ingested (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + logs_rehydrated_indexed_count: + description: Contains the number of rehydrated log events indexed (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + logs_rehydrated_ingested_bytes: + description: Contains the number of rehydrated log bytes ingested (data available as of December 1, 2020). + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RoleCreateRequest: - description: Create a role. + UsageLogsByRetentionHour: + description: The number of indexed logs for each hour for a given organization broken down by retention period. properties: - data: - $ref: '#/components/schemas/RoleCreateData' - required: - - data + indexed_events_count: + description: Total logs indexed with this retention period during a given hour. + format: int64 + nullable: true + type: integer + live_indexed_events_count: + description: Live logs indexed with this retention period during a given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + rehydrated_indexed_events_count: + description: Rehydrated logs indexed with this retention period during a given hour. + format: int64 + nullable: true + type: integer + retention: + description: The retention period in days or "custom" for all custom retention usage. + nullable: true + type: string type: object - RoleCreateResponse: - description: Response containing information about a created role. + UsageLogsByIndexHour: + description: Number of indexed logs for each hour and index for a given organization. properties: - data: - $ref: '#/components/schemas/RoleCreateResponseData' + event_count: + description: The total number of indexed logs for the queried hour. + format: int64 + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + index_id: + description: The index ID for this usage. + type: string + index_name: + description: The user specified name for this index ID. + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + retention: + description: The retention period (in days) for this index ID. + format: int64 + type: integer type: object - RoleResponse: - description: Response containing information about a single role. + MonthlyUsageAttributionMetadata: + description: The object containing document metadata. properties: - data: - $ref: '#/components/schemas/Role' + aggregates: + $ref: '#/components/schemas/UsageAttributionAggregates' + pagination: + $ref: '#/components/schemas/MonthlyUsageAttributionPagination' type: object - RoleUpdateRequest: - description: Update a role. + MonthlyUsageAttributionBody: + description: Usage Summary by tag for a given organization. properties: - data: - $ref: '#/components/schemas/RoleUpdateData' - required: - - data + month: + description: 'Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM].' + format: date-time + type: string + org_name: + description: The name of the organization. + type: string + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + tag_config_source: + description: The source of the usage attribution tag configuration and the selected tags in the format `::://////`. + type: string + tags: + $ref: '#/components/schemas/UsageAttributionTagNames' + updated_at: + description: Datetime of the most recent update to the usage values. + format: date-time + type: string + values: + $ref: '#/components/schemas/MonthlyUsageAttributionValues' type: object - RoleUpdateResponse: - description: Response containing information about an updated role. + UsageNetworkFlowsHour: + description: Number of netflow events indexed for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/RoleUpdateResponseData' + hour: + description: The hour for the usage. + format: date-time + type: string + indexed_events_count: + description: Contains the number of netflow events indexed. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RoleCloneRequest: - description: Request to create a role by cloning an existing role. + UsageNetworkHostsHour: + description: Number of active NPM hosts for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/RoleClone' - required: - - data + host_count: + description: Contains the number of active NPM hosts. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RelationshipToPermission: - description: Relationship to a permissions object. + UsageOnlineArchiveHour: + description: Online Archive usage in a given hour. properties: - data: - $ref: '#/components/schemas/RelationshipToPermissionData' + hour: + description: The hour for the usage. + format: date-time + type: string + online_archive_events_count: + description: Total count of online archived events within the hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - RelationshipToUser: - description: Relationship to user. + UsageProfilingHour: + description: The number of profiled hosts for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' - required: - - data + aas_count: + description: Contains the total number of profiled Azure app services reporting during a given hour. + format: int64 + nullable: true + type: integer + avg_container_agent_count: + description: Get average number of container agents for that hour. + format: int64 + nullable: true + type: integer + host_count: + description: Contains the total number of profiled hosts reporting during a given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - UsersResponse: - description: Response containing information about multiple users. + UsageRumUnitsHour: + description: Number of RUM Units used for each hour for a given organization (data available as of November 1, 2021). properties: - data: - description: Array of returned users. - items: - $ref: '#/components/schemas/User' - type: array - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/UserResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - readOnly: true + browser_rum_units: + description: The number of browser RUM units. + format: int64 + nullable: true + type: integer + mobile_rum_units: + description: The number of mobile RUM units. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + rum_units: + description: Total RUM units across mobile and browser RUM. + format: int64 + nullable: true + type: integer type: object - IdPMetadataFormData: - description: The form data submitted to upload IdP metadata + UsageRumSessionsHour: + description: Number of RUM sessions recorded for each hour for a given organization. properties: - idp_file: - description: The IdP metadata XML file - format: binary + hour: + description: The hour for the usage. + format: date-time type: string - x-mimetype: application/xml + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + replay_session_count: + description: Contains the number of RUM Session Replay counts (data available beginning November 1, 2021). + format: int64 + type: integer + session_count: + description: Contains the number of browser RUM lite Sessions. + format: int64 + nullable: true + type: integer + session_count_android: + description: Contains the number of mobile RUM sessions on Android (data available beginning December 1, 2020). + format: int64 + nullable: true + type: integer + session_count_flutter: + description: Contains the number of mobile RUM sessions on Flutter (data available beginning March 1, 2023). + format: int64 + nullable: true + type: integer + session_count_ios: + description: Contains the number of mobile RUM sessions on iOS (data available beginning December 1, 2020). + format: int64 + nullable: true + type: integer + session_count_reactnative: + description: Contains the number of mobile RUM sessions on React Native (data available beginning May 1, 2022). + format: int64 + nullable: true + type: integer type: object - ServiceAccountCreateRequest: - description: Create a service account. + UsageSDSHour: + description: Sensitive Data Scanner usage for a given organization for a given hour. properties: - data: - $ref: '#/components/schemas/ServiceAccountCreateData' - required: - - data + apm_scanned_bytes: + description: The total number of bytes scanned of APM usage across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + events_scanned_bytes: + description: The total number of bytes scanned of Events usage across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + logs_scanned_bytes: + description: The total number of bytes scanned of logs usage by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + rum_scanned_bytes: + description: The total number of bytes scanned of RUM usage across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer + total_scanned_bytes: + description: The total number of bytes scanned across all usage types by the Sensitive Data Scanner from the start of the given hour’s month until the given hour. + format: int64 + nullable: true + type: integer type: object - UserResponse: - description: Response containing information about a single user. + UsageSNMPHour: + description: The number of SNMP devices for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/User' - included: - description: Array of objects related to the user. + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string + snmp_devices: + description: Contains the number of SNMP devices. + format: int64 + nullable: true + type: integer + type: object + LogsByRetention: + description: Object containing logs usage data broken down by retention period. + properties: + orgs: + $ref: '#/components/schemas/LogsByRetentionOrgs' + usage: + description: Aggregated index logs usage for each retention period with usage. items: - $ref: '#/components/schemas/UserResponseIncludedItem' + $ref: '#/components/schemas/LogsRetentionAggSumUsage' type: array + usage_by_month: + $ref: '#/components/schemas/LogsByRetentionMonthlyUsage' type: object - PartialApplicationKeyResponse: - description: Response for retrieving a partial application key. - properties: - data: - $ref: '#/components/schemas/PartialApplicationKey' - included: - description: Array of objects related to the application key. + UsageSummaryDate: + description: |- + Response with hourly report of all data billed by Datadog for all organizations. + + For SDK users only: all fields at this response level are accessible through the + `additionalProperties` map. Existing typed-field getters are unchanged. New billing + dimensions will not have typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key. + properties: + agent_host_top99p: + description: Shows the 99th percentile of all agent hosts over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_agent_builder_ai_credits_sum: + description: Shows the sum of all AI credits used by Agent Builder over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_bits_assistant_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_bits_dev_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Dev over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_bits_sre_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI SRE over all hours in the current date for all organizations. + format: int64 + type: integer + ai_credits_sum: + description: Shows the sum of all AI credits over all hours in the current date for all organizations. + format: int64 + type: integer + apm_azure_app_service_host_top99p: + description: Shows the 99th percentile of all Azure app services using APM over all hours in the current date all organizations. + format: int64 + type: integer + apm_devsecops_host_top99p: + description: Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_enterprise_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current date for all organizations. + format: int64 + type: integer + apm_fargate_count_avg: + description: Shows the average of all APM ECS Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + apm_host_top99p: + description: Shows the 99th percentile of all distinct APM hosts over all hours in the current date for all organizations. + format: int64 + type: integer + apm_pro_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Pro hosts over all hours in the current date for all organizations. + format: int64 + type: integer + appsec_fargate_count_avg: + description: Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + asm_serverless_sum: + description: Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current date for all organizations. + format: int64 + type: integer + audit_logs_lines_indexed_sum: + deprecated: true + description: Shows the sum of audit logs lines indexed over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + audit_trail_enabled_hwm: + description: Shows the number of organizations that had Audit Trail enabled in the current date. + format: int64 + type: integer + audit_trail_event_forwarding_events_sum: + description: Shows the sum of all Audit Trail event forwarding events over all hours in the current date for all organizations. + format: int64 + type: integer + avg_profiled_fargate_tasks: + description: The average total count for Fargate Container Profiler over all hours in the current date for all organizations. + format: int64 + type: integer + aws_host_top99p: + description: Shows the 99th percentile of all AWS hosts over all hours in the current date for all organizations. + format: int64 + type: integer + aws_lambda_func_count: + description: Shows the average of the number of functions that executed 1 or more times each hour in the current date for all organizations. + format: int64 + type: integer + aws_lambda_invocations_sum: + description: Shows the sum of all AWS Lambda invocations over all hours in the current date for all organizations. + format: int64 + type: integer + azure_app_service_top99p: + description: Shows the 99th percentile of all Azure app services over all hours in the current date for all organizations. + format: int64 + type: integer + billable_ingested_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for all organizations. + format: int64 + type: integer + bits_ai_investigations_sum: + description: Shows the sum of all Bits AI Investigations over all hours in the current date for all organizations. + format: int64 + type: integer + browser_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all browser lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_replay_session_count_sum: + description: Shows the sum of all browser replay sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_units_sum: + deprecated: true + description: Shows the sum of all browser RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ccm_anthropic_spend_last: + description: Shows the last value of Anthropic cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_aws_spend_last: + description: Shows the last value of AWS cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_azure_spend_last: + description: Shows the last value of Azure cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_confluent_spend_last: + description: Shows the last value of Confluent cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_databricks_spend_last: + description: Shows the last value of Databricks cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_elastic_spend_last: + description: Shows the last value of Elastic cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_fastly_spend_last: + description: Shows the last value of Fastly cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_gcp_spend_last: + description: Shows the last value of GCP cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_github_spend_last: + description: Shows the last value of GitHub cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_mongodb_spend_last: + description: Shows the last value of MongoDB cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_oci_spend_last: + description: Shows the last value of OCI cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_openai_spend_last: + description: Shows the last value of OpenAI cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_snowflake_spend_last: + description: Shows the last value of Snowflake cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_spend_monitored_ent_last: + description: Shows the last value of the amount of cloud spend monitored for Enterprise over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_spend_monitored_pro_last: + description: Shows the last value of the amount of cloud spend monitored for Pro over all hours in the current date for all organizations. + format: int64 + type: integer + ccm_twilio_spend_last: + description: Shows the last value of Twilio cloud spend monitored over all hours in the current date for all organizations. + format: int64 + type: integer + ci_pipeline_indexed_spans_sum: + description: Shows the sum of all CI pipeline indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_test_indexed_spans_sum: + description: Shows the sum of all CI test indexed spans over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_itr_committers_hwm: + description: Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_pipeline_committers_hwm: + description: Shows the high-water mark of all CI visibility pipeline committers over all hours in the current month for all organizations. + format: int64 + type: integer + ci_visibility_test_committers_hwm: + description: Shows the high-water mark of all CI visibility test committers over all hours in the current month for all organizations. + format: int64 + type: integer + cloud_cost_management_aws_host_count_avg: + description: Host count average of Cloud Cost Management for AWS for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_azure_host_count_avg: + description: Host count average of Cloud Cost Management for Azure for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_gcp_host_count_avg: + description: Host count average of Cloud Cost Management for GCP for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_host_count_avg: + description: Host count average of Cloud Cost Management for all cloud providers for the given date and given organization. + format: int64 + type: integer + cloud_cost_management_oci_host_count_avg: + description: Average host count for Cloud Cost Management on OCI for the given date and organization. + format: int64 + type: integer + cloud_siem_events_sum: + description: Shows the sum of all Cloud Security Information and Event Management events over all hours in the current date for the given org. + format: int64 + type: integer + cloud_siem_indexed_logs_sum: + description: Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sa_committers_hwm: + description: Shows the high-water mark of all Static Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sca_committers_hwm: + description: Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_security_host_top99p: + description: Shows the 99th percentile of all Code Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + container_avg: + description: Shows the average of all distinct containers over all hours in the current date for all organizations. + format: int64 + type: integer + container_excl_agent_avg: + description: Shows the average of containers without the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + container_hwm: + description: Shows the high-water mark of all distinct containers over all hours in the current date for all organizations. + format: int64 + type: integer + csm_container_enterprise_compliance_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_cws_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_total_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aas_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_azure_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_compliance_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_cws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_gcp_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_total_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_aas_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_aws_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_azure_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_container_avg: + description: Shows the average number of Cloud Security Management Pro containers over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_container_hwm: + description: Shows the high-water mark of Cloud Security Management Pro containers over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_gcp_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for all organizations. + format: int64 + type: integer + cspm_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for all organizations. + format: int64 + type: integer + custom_ts_avg: + description: Shows the average number of distinct custom metrics over all hours in the current date for all organizations. + format: int64 + type: integer + cws_container_count_avg: + description: Shows the average of all distinct Cloud Workload Security containers over all hours in the current date for all organizations. + format: int64 + type: integer + cws_fargate_task_avg: + description: Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + cws_host_top99p: + description: Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current date for all organizations. + format: int64 + type: integer + data_jobs_monitoring_host_hr_sum: + description: Shows the sum of all Data Jobs Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_stream_monitoring_host_count_sum: + description: Shows the sum of all Data Streams Monitoring hosts over all hours in the current date for all organizations. + format: int64 + type: integer + data_stream_monitoring_host_count_top99p: + description: Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current date for all organizations. + format: int64 + type: integer + date: + description: The date for the usage. + format: date-time + type: string + dbm_host_top99p: + description: Shows the 99th percentile of all Database Monitoring hosts over all hours in the current date for all organizations. + format: int64 + type: integer + dbm_queries_count_avg: + description: Shows the average of all normalized Database Monitoring queries over all hours in the current date for all organizations. + format: int64 + type: integer + do_jobs_monitoring_orchestrators_job_hours_sum: + description: Shows the sum of all orchestrator job hours over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_alibaba_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_aws_sum: + description: Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_azure_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_basic_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current date for all organizations. + format: int64 + type: integer + eph_infra_host_ent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_gcp_sum: + description: Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_heroku_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_aas_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_apm_sum: + description: Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_sum: + description: Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_pro_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proplus_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proxmox_sum: + description: Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current date for all organizations. + format: int64 + type: integer + error_tracking_apm_error_events_sum: + description: Shows the sum of all Error Tracking APM error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_error_events_sum: + description: Shows the sum of all Error Tracking error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_events_sum: + description: Shows the sum of all Error Tracking events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_rum_error_events_sum: + description: Shows the sum of all Error Tracking RUM error events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_correlated_events_sum: + description: Shows the sum of all Event Management correlated events over all hours in the current date for all organizations. + format: int64 + type: integer + event_management_correlation_correlated_related_events_sum: + description: Shows the sum of all Event Management correlated related events over all hours in the current date for all organizations. + format: int64 + type: integer + event_management_correlation_sum: + description: Shows the sum of all Event Management correlations over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_avg: + description: The average number of Profiling Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_eks_avg: + description: The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_tasks_count_avg: + description: Shows the high-watermark of all Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + fargate_tasks_count_hwm: + description: Shows the average of all Fargate tasks over all hours in the current date for all organizations. + format: int64 + type: integer + feature_flags_config_requests_sum: + description: Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current date for all organizations. + format: int64 + type: integer + flex_logs_compute_large_avg: + description: Shows the average number of Flex Logs Compute Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_medium_avg: + description: Shows the average number of Flex Logs Compute Medium Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_small_avg: + description: Shows the average number of Flex Logs Compute Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xlarge_avg: + description: Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xsmall_avg: + description: Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_avg: + description: Shows the average number of Flex Logs Starter Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_index_avg: + description: Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_retention_adjustment_avg: + description: Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_stored_logs_avg: + description: Shows the average of all Flex Stored Logs over all hours in the current date for the given org. + format: int64 + type: integer + forwarding_events_bytes_sum: + description: Shows the sum of all log bytes forwarded over all hours in the current date for all organizations. + format: int64 + type: integer + gcp_host_top99p: + description: Shows the 99th percentile of all GCP hosts over all hours in the current date for all organizations. + format: int64 + type: integer + heroku_host_top99p: + description: Shows the 99th percentile of all Heroku dynos over all hours in the current date for all organizations. + format: int64 + type: integer + incident_management_monthly_active_users_hwm: + description: Shows the high-water mark of incident management monthly active users over all hours in the current date for all organizations. + format: int64 + type: integer + incident_management_seats_hwm: + description: Shows the high-water mark of Incident Management seats over all hours on the current date for all organizations. + format: int64 + type: integer + indexed_events_count_sum: + description: Shows the sum of all log events indexed over all hours in the current date for all organizations. + format: int64 + type: integer + indexed_points_sum: + description: Shows the sum of all indexed custom metrics points over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_avg: + description: Shows the average of all Infrastructure vCPU cores over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_avg: + description: Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_avg: + description: Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations. + format: int64 + type: integer + infra_cpu_sum: + description: Shows the sum of all Infrastructure vCPU cores over all hours in the current date for all organizations. + format: int64 + type: integer + infra_edge_monitoring_devices_top99p: + description: Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_agent_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_basic_infra_basic_vsphere_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_basic_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current date for all organizations. + format: int64 + type: integer + infra_host_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current date for all organizations. + format: int64 + type: integer + infra_storage_mgmt_objects_count_avg: + description: Shows the average number of storage management objects over all hours in the current date for all organizations. + format: int64 + type: integer + ingest_points_sum: + description: Shows the sum of all ingested custom metrics points over all hours in the current date for all organizations. + format: int64 + type: integer + ingested_events_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for all organizations. + format: int64 + type: integer + iot_apm_host_sum: + description: Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current date for all organizations. + format: int64 + type: integer + iot_apm_host_top99p: + description: Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current date for all organizations. + format: int64 + type: integer + iot_device_sum: + description: Shows the sum of all IoT devices over all hours in the current date for all organizations. + format: int64 + type: integer + iot_device_top99p: + description: Shows the 99th percentile of all IoT devices over all hours in the current date all organizations. + format: int64 + type: integer + llm_observability_15day_retention_spans_sum: + description: Shows the sum of all Agent Observability 15-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_30day_retention_spans_sum: + description: Shows the sum of all Agent Observability 30-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_60day_retention_spans_sum: + description: Shows the sum of all Agent Observability 60-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_90day_retention_spans_sum: + description: Shows the sum of all Agent Observability 90-day retention spans over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_min_spend_sum: + description: Sum of all Agent observability minimum spend over all hours in the current date for all organizations. + format: int64 + type: integer + llm_observability_sum: + description: Sum of all Agent observability sessions over all hours in the current date for all organizations. + format: int64 + type: integer + logs_archive_search_gb_scanned_sum: + description: Shows the sum of all Logs Archive Search scanned data over all hours in the current date for all organizations. + format: int64 + type: integer + metric_names_sum: + description: Shows the sum of all custom metric names over all hours in the current date for all organizations. + format: int64 + type: integer + mobile_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all mobile lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_android_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Android over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_flutter_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Flutter over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_ios_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on iOS over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_reactnative_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on React Native over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_roku_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Roku over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_units_sum: + deprecated: true + description: Shows the sum of all mobile RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ndm_netflow_events_sum: + description: Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current date for the given org. + format: int64 + type: integer + netflow_indexed_events_count_sum: + deprecated: true + description: Shows the sum of all Network flows indexed over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + network_device_wireless_top99p: + description: Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current date for all organizations. + format: int64 + type: integer + network_path_sum: + description: Shows the sum of all Network Path scheduled tests over all hours in the current date for all organizations. + format: int64 + type: integer + npm_host_top99p: + description: Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current date for all organizations. + format: int64 + type: integer + observability_pipelines_bytes_processed_sum: + description: Sum of all observability pipelines bytes processed over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_sum: + description: Shows the sum of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_top99p: + description: Shows the 99th percentile of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + on_call_seat_hwm: + description: Shows the high-water mark of On-Call seats over all hours in the current date for all organizations. + format: int64 + type: integer + online_archive_events_count_sum: + description: Sum of all online archived events over all hours in the current date for all organizations. + format: int64 + type: integer + opentelemetry_apm_host_top99p: + description: Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for all organizations. + format: int64 + type: integer + opentelemetry_host_top99p: + description: Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for all organizations. + format: int64 + type: integer + orgs: + description: Organizations associated with a user. items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' + $ref: '#/components/schemas/UsageSummaryDateOrg' type: array + product_analytics_sum: + description: Sum of all product analytics sessions over all hours in the current date for all organizations. + format: int64 + type: integer + profiling_aas_count_top99p: + description: Shows the 99th percentile of all profiled Azure app services over all hours in the current date for all organizations. + format: int64 + type: integer + profiling_host_top99p: + description: Shows the 99th percentile of all profiled hosts over all hours within the current date for all organizations. + format: int64 + type: integer + proxmox_host_sum: + description: Sum of all Proxmox hosts over all hours in the current date for all organizations. + format: int64 + type: integer + proxmox_host_top99p: + description: 99th percentile of all Proxmox hosts over all hours in the current date for all organizations. + format: int64 + type: integer + published_app_hwm: + description: Shows the high-water mark of all published applications over all hours in the current date for all organizations. + format: int64 + type: integer + rum_browser_and_mobile_session_count: + description: Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_browser_legacy_session_count_sum: + description: Shows the sum of all browser RUM legacy sessions over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_lite_session_count_sum: + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_replay_session_count_sum: + description: Shows the sum of all browser RUM Session Replay counts over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_indexed_sessions_sum: + description: Sum of all RUM indexed sessions over all hours in the current date for all organizations. + format: int64 + type: integer + rum_ingested_sessions_sum: + description: Sum of all RUM ingested sessions over all hours in the current date for all organizations. + format: int64 + type: integer + rum_lite_session_count_sum: + description: Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_android_sum: + description: Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_flutter_sum: + description: Shows the sum of all mobile RUM legacy Sessions on Flutter over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_ios_sum: + description: Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_roku_sum: + description: Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_android_sum: + description: Shows the sum of all mobile RUM lite sessions on Android over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_flutter_sum: + description: Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_ios_sum: + description: Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current date for all organizations. + format: int64 + type: integer + rum_mobile_lite_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_roku_sum: + description: Shows the sum of all mobile RUM lite sessions on Roku over all hours within the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_unity_sum: + description: Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current date for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_android_sum: + description: Shows the sum of all mobile RUM replay sessions on Android over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_ios_sum: + description: Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current date for all organizations. + format: int64 + type: integer + rum_mobile_replay_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current date for the given org. + format: int64 + type: integer + rum_replay_session_count_sum: + description: Shows the sum of all RUM Session Replay counts over all hours in the current date for all organizations (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_session_count_sum: + deprecated: true + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_session_replay_add_on_sum: + description: Sum of all RUM session replay add-on sessions over all hours in the current date for all organizations. + format: int64 + type: integer + rum_total_session_count_sum: + description: Shows the sum of RUM sessions (browser and mobile) over all hours in the current date for all organizations. + format: int64 + type: integer + rum_units_sum: + deprecated: true + description: Shows the sum of all browser and mobile RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024). + format: int64 + type: integer + sca_fargate_count_avg: + description: Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sca_fargate_count_hwm: + description: Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sds_apm_scanned_bytes_sum: + description: Sum of all APM bytes scanned with sensitive data scanner over all hours in the current date for all organizations. + format: int64 + type: integer + sds_events_scanned_bytes_sum: + description: Sum of all event stream events bytes scanned with sensitive data scanner over all hours in the current date for all organizations. + format: int64 + type: integer + sds_logs_scanned_bytes_sum: + description: Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + sds_rum_scanned_bytes_sum: + description: Sum of all RUM bytes scanned with sensitive data scanner over all hours in the current date for all organizations. + format: int64 + type: integer + sds_total_scanned_bytes_sum: + description: Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_fargate_ecs_tasks_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for the current date for all organizations. + format: int64 + type: integer + serverless_apps_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_azure_count_avg: + description: Shows the average number of Serverless Apps for Azure for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Function App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Web App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_dsm_fargate_tasks_avg: + description: Shows the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM for the current date for all organizations. + format: int64 + type: integer + serverless_apps_ecs_avg: + description: Shows the average number of Serverless Apps for Elastic Container Service for the current date for all organizations. + format: int64 + type: integer + serverless_apps_eks_avg: + description: Shows the average number of Serverless Apps for Elastic Kubernetes Service for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_avg: + description: Shows the average number of Serverless Apps excluding Fargate for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Container App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Function App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Web App instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Run instances for the current date for all organizations. + format: int64 + type: integer + serverless_apps_google_count_avg: + description: Shows the average number of Serverless Apps for Google Cloud for the given date and given org. + format: int64 + type: integer + serverless_apps_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods for the current date for all organizations. + format: int64 + type: integer + serverless_apps_total_count_avg: + description: Shows the average number of Serverless Apps for Azure and Google Cloud for the given date and given org. + format: int64 + type: integer + siem_12mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_6mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_analyzed_logs_add_on_count_sum: + description: Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current date for the given org. + format: int64 + type: integer + snmp_device_count_sum: + description: Shows the sum of all Network Device Monitoring devices over all hours in the current date for all organizations. + format: int64 + type: integer + snmp_device_count_top99p: + description: Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_browser_check_calls_count_sum: + description: Shows the sum of all Synthetic browser tests over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_check_calls_count_sum: + description: Shows the sum of all Synthetic API tests over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_mobile_test_runs_sum: + description: Shows the sum of all Synthetic mobile application tests over all hours in the current date for all organizations. + format: int64 + type: integer + synthetics_parallel_testing_max_slots_hwm: + description: Shows the high-water mark of used synthetics parallel testing slots over all hours in the current date for all organizations. + format: int64 + type: integer + trace_search_indexed_events_count_sum: + description: Shows the sum of all Indexed Spans indexed over all hours in the current date for all organizations. + format: int64 + type: integer + twol_ingested_events_bytes_sum: + description: Shows the sum of all ingested APM span bytes over all hours in the current date for all organizations. + format: int64 + type: integer + universal_service_monitoring_host_top99p: + description: Shows the 99th percentile of all universal service management hosts over all hours in the current date for the given org. + format: int64 + type: integer + vsphere_host_top99p: + description: Shows the 99th percentile of all vSphere hosts over all hours in the current date for all organizations. + format: int64 + type: integer + vuln_management_host_count_top99p: + description: Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current date for the given org. + format: int64 + type: integer + workflow_executions_usage_sum: + description: Sum of all workflows executed over all hours in the current date for all organizations. + format: int64 + type: integer type: object - ListTeamsSort: - description: Specifies the order of the returned teams - enum: - - name - - '-name' - - user_count - - '-user_count' - type: string - x-enum-varnames: - - NAME - - _NAME - - USER_COUNT - - _USER_COUNT - ListTeamsInclude: - description: Included related resources optionally requested. - enum: - - team_links - - user_team_permissions - type: string - x-enum-varnames: - - TEAM_LINKS - - USER_TEAM_PERMISSIONS - TeamsField: - description: Supported teams field. - enum: - - id - - name - - handle - - summary - - description - - avatar - - banner - - visible_modules - - hidden_modules - - created_at - - modified_at - - user_count - - link_count - - team_links - - user_team_permissions - type: string - x-enum-varnames: - - ID - - NAME - - HANDLE - - SUMMARY - - DESCRIPTION - - AVATAR - - BANNER - - VISIBLE_MODULES - - HIDDEN_MODULES - - CREATED_AT - - MODIFIED_AT - - USER_COUNT - - LINK_COUNT - - TEAM_LINKS - - USER_TEAM_PERMISSIONS - TeamsResponse: - description: Response with multiple teams + x-keep-typed-in-additional-properties: true + UsageSyntheticsHour: + description: The number of synthetics tests run for each hour for a given organization. properties: - data: - description: Teams response data - items: - $ref: '#/components/schemas/Team' - type: array - included: - description: Resources related to the team - items: - $ref: '#/components/schemas/TeamIncluded' - type: array - links: - $ref: '#/components/schemas/TeamsResponseLinks' - meta: - $ref: '#/components/schemas/TeamsResponseMeta' + check_calls_count: + description: Contains the number of Synthetics API tests run. + format: int64 + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - TeamCreateRequest: - description: Request to create a team + UsageSyntheticsAPIHour: + description: Number of Synthetics API tests run for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/TeamCreate' - required: - - data + check_calls_count: + description: Contains the number of Synthetics API tests run. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - TeamResponse: - description: Response with a team + UsageSyntheticsBrowserHour: + description: Number of Synthetics Browser tests run for each hour for a given organization. properties: - data: - $ref: '#/components/schemas/Team' + browser_check_calls_count: + description: Contains the number of Synthetics Browser tests run. + format: int64 + nullable: true + type: integer + hour: + description: The hour for the usage. + format: date-time + type: string + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - TeamSyncRequest: - description: Team sync request. - example: - data: - attributes: - source: github - type: link - type: team_sync_bulk + UsageTimeseriesHour: + description: The hourly usage of timeseries. properties: - data: - $ref: '#/components/schemas/TeamSyncData' - required: - - data + hour: + description: The hour for the usage. + format: date-time + type: string + num_custom_input_timeseries: + description: Contains the number of custom metrics that are inputs for aggregations (metric configured is custom). + format: int64 + type: integer + num_custom_output_timeseries: + description: Contains the number of custom metrics that are outputs for aggregations (metric configured is custom). + format: int64 + type: integer + num_custom_timeseries: + description: Contains sum of non-aggregation custom metrics and custom metrics that are outputs for aggregations. + format: int64 + type: integer + org_name: + description: The organization name. + type: string + public_id: + description: The organization public ID. + type: string type: object - AddMemberTeamRequest: - description: Request to add a member team to super team's hierarchy + UsageTopAvgMetricsMetadata: + description: The object containing document metadata. properties: - data: - $ref: '#/components/schemas/MemberTeam' - required: - - data + day: + description: The day value from the user request that contains the returned usage data. (If day was used the request) + format: date-time + type: string + month: + description: The month value from the user request that contains the returned usage data. (If month was used the request) + format: date-time + type: string + pagination: + $ref: '#/components/schemas/UsageTopAvgMetricsPagination' type: object - TeamUpdateRequest: - description: Team update request + UsageTopAvgMetricsHour: + description: Number of hourly recorded custom metrics for a given organization. properties: - data: - $ref: '#/components/schemas/TeamUpdate' - required: - - data + avg_metric_hour: + description: Average number of timeseries per hour in which the metric occurs. + format: int64 + type: integer + max_metric_hour: + description: Maximum number of timeseries per hour in which the metric occurs. + format: int64 + type: integer + metric_category: + $ref: '#/components/schemas/UsageMetricCategory' + metric_name: + description: Contains the custom metric name. + type: string type: object - TeamLinksResponse: - description: Team links response + AccessRole: + description: The access role of the user. Options are **st** (standard user), **adm** (admin user), or **ro** (read-only user). + enum: + - st + - adm + - ro + - ERROR + example: ro + nullable: true + type: string + x-enum-varnames: + - STANDARD + - ADMIN + - READ_ONLY + - ERROR + AnonymizeUsersRequestAttributes: + description: Attributes of an anonymize users request. properties: - data: - description: Team links response data + user_ids: + description: List of user IDs (UUIDs) to anonymize. + example: + - 00000000-0000-0000-0000-000000000000 items: - $ref: '#/components/schemas/TeamLink' + example: 00000000-0000-0000-0000-000000000000 + type: string type: array - type: object - TeamLinkCreateRequest: - description: Team link create request - properties: - data: - $ref: '#/components/schemas/TeamLinkCreate' required: - - data - type: object - TeamLinkResponse: - description: Team link response - properties: - data: - $ref: '#/components/schemas/TeamLink' + - user_ids type: object - GetTeamMembershipsSort: - description: Specifies the order of returned team memberships + AnonymizeUsersRequestType: + default: anonymize_users_request + description: Type of the anonymize users request. enum: - - manager_name - - '-manager_name' - - name - - '-name' - - handle - - '-handle' - - email - - '-email' + - anonymize_users_request + example: anonymize_users_request type: string x-enum-varnames: - - MANAGER_NAME - - _MANAGER_NAME - - NAME - - _NAME - - HANDLE - - _HANDLE - - EMAIL - - _EMAIL - UserTeamsResponse: - description: Team memberships response + - ANONYMIZE_USERS_REQUEST + AnonymizeUsersResponseAttributes: + description: Attributes of an anonymize users response. properties: - data: - description: Team memberships response data + anonymize_errors: + description: List of errors encountered during anonymization, one entry per failed user. items: - $ref: '#/components/schemas/UserTeam' + $ref: '#/components/schemas/AnonymizeUserError' type: array - included: - description: Resources related to the team memberships + anonymized_user_ids: + description: List of user IDs (UUIDs) that were successfully anonymized. + example: + - 00000000-0000-0000-0000-000000000000 items: - $ref: '#/components/schemas/UserTeamIncluded' + example: 00000000-0000-0000-0000-000000000000 + type: string type: array - links: - $ref: '#/components/schemas/TeamsResponseLinks' - meta: - $ref: '#/components/schemas/TeamsResponseMeta' - type: object - UserTeamRequest: - description: Team membership request - properties: - data: - $ref: '#/components/schemas/UserTeamCreate' required: - - data - type: object - UserTeamResponse: - description: Team membership response - properties: - data: - $ref: '#/components/schemas/UserTeam' - included: - description: Resources related to the team memberships - items: - $ref: '#/components/schemas/UserTeamIncluded' - type: array + - anonymized_user_ids + - anonymize_errors type: object - UserTeamUpdateRequest: - description: Team membership request + AnonymizeUsersResponseType: + default: anonymize_users_response + description: Type of the anonymize users response. + enum: + - anonymize_users_response + example: anonymize_users_response + type: string + x-enum-varnames: + - ANONYMIZE_USERS_RESPONSE + PartialAPIKeyAttributes: + description: Attributes of a partial API key. properties: - data: - $ref: '#/components/schemas/UserTeamUpdate' - required: - - data + category: + description: The category of the API key. + type: string + created_at: + description: Creation date of the API key. + example: '2020-11-23T10:00:00.000Z' + readOnly: true + type: string + date_last_used: + description: Date the API Key was last used. + example: '2020-11-27T10:00:00.000Z' + format: date-time + nullable: true + readOnly: true + type: string + last4: + description: The last four characters of the API key. + example: abcd + maxLength: 4 + minLength: 4 + readOnly: true + type: string + modified_at: + description: Date the API key was last modified. + example: '2020-11-23T10:00:00.000Z' + readOnly: true + type: string + name: + description: Name of the API key. + example: API Key for submitting metrics + type: string + remote_config_read_enabled: + description: The remote config read enabled status. + type: boolean type: object - TeamPermissionSettingsResponse: - description: Team permission settings response + APIKeyRelationships: + description: Resources related to the API key. properties: - data: - description: Team permission settings response data - items: - $ref: '#/components/schemas/TeamPermissionSetting' - type: array + created_by: + $ref: '#/components/schemas/RelationshipToUser' + modified_by: + $ref: '#/components/schemas/NullableRelationshipToUser' type: object - TeamPermissionSettingUpdateRequest: - description: Team permission setting update request + APIKeysType: + default: api_keys + description: API Keys resource type. + enum: + - api_keys + example: api_keys + type: string + x-enum-varnames: + - API_KEYS + LeakedKey: + description: The definition of LeakedKey object. properties: - data: - $ref: '#/components/schemas/TeamPermissionSettingUpdate' + attributes: + $ref: '#/components/schemas/LeakedKeyAttributes' + id: + description: The LeakedKey id. + example: id + type: string + type: + $ref: '#/components/schemas/LeakedKeyType' required: - - data + - attributes + - id + - type type: object - TeamPermissionSettingResponse: - description: Team permission setting response + APIKeysResponseMetaPage: + description: Additional information related to the API keys response. properties: - data: - $ref: '#/components/schemas/TeamPermissionSetting' + total_filtered_count: + description: Total filtered application key count. + format: int64 + type: integer type: object - UsageApplicationSecurityMonitoringResponse: - description: Application Security Monitoring usage response. + APIKeyCreateAttributes: + description: Attributes used to create an API Key. properties: - data: - description: Response containing Application Security Monitoring usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array + category: + description: The APIKeyCreateAttributes category. + type: string + name: + description: Name of the API key. + example: API Key for submitting metrics + type: string + remote_config_read_enabled: + description: The APIKeyCreateAttributes remote_config_read_enabled. + type: boolean + required: + - name type: object - BillingDimensionsMappingResponse: - description: Billing dimensions mapping response. + FullAPIKeyAttributes: + description: Attributes of a full API key. properties: - data: - $ref: '#/components/schemas/BillingDimensionsMappingBody' + category: + description: The category of the API key. + type: string + created_at: + description: Creation date of the API key. + example: '2020-11-23T10:00:00.000Z' + format: date-time + readOnly: true + type: string + date_last_used: + description: Date the API Key was last used + example: '2020-11-27T10:00:00.000Z' + format: date-time + nullable: true + readOnly: true + type: string + key: + description: The API key. + readOnly: true + type: string + last4: + description: The last four characters of the API key. + example: abcd + maxLength: 4 + minLength: 4 + readOnly: true + type: string + modified_at: + description: Date the API key was last modified. + example: '2020-11-23T10:00:00.000Z' + format: date-time + readOnly: true + type: string + name: + description: Name of the API key. + example: API Key for submitting metrics + type: string + remote_config_read_enabled: + description: The remote config read enabled status. + type: boolean type: object - CostByOrgResponse: - description: Chargeback Summary response. + APIKeyUpdateAttributes: + description: Attributes used to update an API Key. properties: - data: - description: Response containing Chargeback Summary. - items: - $ref: '#/components/schemas/CostByOrg' - type: array + category: + description: The APIKeyUpdateAttributes category. + type: string + name: + description: Name of the API key. + example: API Key for submitting metrics + type: string + remote_config_read_enabled: + description: The APIKeyUpdateAttributes remote_config_read_enabled. + type: boolean + required: + - name type: object - HourlyUsageResponse: - description: Hourly usage response. + PartialApplicationKeyAttributes: + description: Attributes of a partial application key. properties: - data: - description: Response containing hourly usage. + created_at: + description: Creation date of the application key. + example: '2020-11-23T10:00:00.000Z' + readOnly: true + type: string + last4: + description: The last four characters of the application key. + example: abcd + maxLength: 4 + minLength: 4 + readOnly: true + type: string + last_used_at: + description: Last usage timestamp of the application key. + example: '2020-12-20T10:00:00.000Z' + nullable: true + readOnly: true + type: string + name: + description: Name of the application key. + example: Application Key for managing dashboards + type: string + scopes: + description: Array of scopes to grant the application key. + example: + - dashboards_read + - dashboards_write + - dashboards_public_share items: - $ref: '#/components/schemas/HourlyUsage' + description: Name of scope. + type: string + nullable: true type: array - meta: - $ref: '#/components/schemas/HourlyUsageMetadata' type: object - UsageLambdaTracedInvocationsResponse: - description: Lambda Traced Invocations usage response. + ApplicationKeyRelationships: + description: Resources related to the application key. properties: - data: - description: Response containing Lambda Traced Invocations usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array + owned_by: + $ref: '#/components/schemas/RelationshipToUser' type: object - UsageObservabilityPipelinesResponse: - description: Observability Pipelines usage response. + ApplicationKeysType: + default: application_keys + description: Application Keys resource type. + enum: + - application_keys + example: application_keys + type: string + x-enum-varnames: + - APPLICATION_KEYS + ApplicationKeyResponseMetaPage: + description: Additional information related to the application key response. properties: - data: - description: Response containing Observability Pipelines usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array + total_filtered_count: + description: Total filtered application key count. + format: int64 + type: integer type: object - ProjectedCostResponse: - description: Projected Cost response. + FullApplicationKeyAttributes: + description: Attributes of a full application key. properties: - data: - description: Response containing Projected Cost. + created_at: + description: Creation date of the application key. + example: '2020-11-23T10:00:00.000Z' + format: date-time + readOnly: true + type: string + key: + description: The application key. + readOnly: true + type: string + last4: + description: The last four characters of the application key. + example: abcd + maxLength: 4 + minLength: 4 + readOnly: true + type: string + last_used_at: + description: Last usage timestamp of the application key. + example: '2020-12-20T10:00:00.000Z' + format: date-time + nullable: true + readOnly: true + type: string + name: + description: Name of the application key. + example: Application Key for managing dashboards + type: string + scopes: + description: Array of scopes to grant the application key. + example: + - dashboards_read + - dashboards_write + - dashboards_public_share items: - $ref: '#/components/schemas/ProjectedCost' + description: Name of scope. + type: string + nullable: true type: array type: object - UserInvitationsRequest: - description: Object to invite users to join the organization. + ApplicationKeyUpdateAttributes: + description: Attributes used to update an application Key. properties: - data: - description: List of user invitations. - example: [] + name: + description: Name of the application key. + example: Application Key for managing dashboards + type: string + scopes: + description: Array of scopes to grant the application key. + example: + - dashboards_read + - dashboards_write + - dashboards_public_share items: - $ref: '#/components/schemas/UserInvitationData' + description: Name of scope. + type: string + nullable: true type: array - required: - - data type: object - UserInvitationsResponse: - description: User invitations as returned by the API. + AuditLogsEventAttributes: + description: JSON object containing all event attributes and their associated values. properties: - data: - description: Array of user invitations. + attributes: + additionalProperties: {} + description: JSON object of attributes from Audit Logs events. + example: + customAttribute: 123 + duration: 2345 + type: object + message: + description: Message of the event. + type: string + service: + description: |- + Name of the application or service generating Audit Logs events. + This name is used to correlate Audit Logs to APM, so make sure you specify the same + value when you use both products. + example: web-app + type: string + tags: + description: Array of tags associated with your event. + example: + - team:A items: - $ref: '#/components/schemas/UserInvitationResponseData' + description: Tag associated with your event. + type: string type: array - type: object - UserInvitationResponse: - description: User invitation as returned by the API. + timestamp: + description: Timestamp of your event. + example: '2019-01-02T09:42:36.320Z' + format: date-time + type: string + type: object + AuditLogsEventType: + default: audit + description: Type of the event. + enum: + - audit + example: audit + type: string + x-enum-varnames: + - Audit + AuditLogsResponsePage: + description: Paging attributes. properties: - data: - $ref: '#/components/schemas/UserInvitationResponseData' + after: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of `page[cursor]`. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string type: object - QuerySortOrder: - default: desc - description: Direction of sort. + AuditLogsResponseStatus: + description: The status of the response. enum: - - asc - - desc + - done + - timeout + example: done type: string x-enum-varnames: - - ASC - - DESC - UserCreateRequest: - description: Create a user. + - DONE + - TIMEOUT + AuditLogsWarning: + description: Warning message indicating something that went wrong with the query. properties: - data: - $ref: '#/components/schemas/UserCreateData' - required: - - data + code: + description: Unique code for this type of warning. + example: unknown_index + type: string + detail: + description: Detailed explanation of this specific warning. + example: 'indexes: foo, bar' + type: string + title: + description: Short human-readable summary of the warning. + example: One or several indexes are missing or invalid, results hold data from the other indexes + type: string type: object - UserUpdateRequest: - description: Update a user. + AuthNMappingAttributes: + description: Attributes of AuthN Mapping. properties: - data: - $ref: '#/components/schemas/UserUpdateData' - required: - - data + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development + type: string + created_at: + description: Creation time of the AuthN Mapping. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last AuthN Mapping modification. + format: date-time + readOnly: true + type: string + saml_assertion_attribute_id: + description: The ID of the SAML assertion attribute. + example: '0' + type: string type: object - APIKeysSort: - default: name - description: Sorting options + AuthNMappingRelationships: + description: All relationships associated with AuthN Mapping. + properties: + role: + $ref: '#/components/schemas/RelationshipToRole' + saml_assertion_attribute: + $ref: '#/components/schemas/RelationshipToSAMLAssertionAttribute' + team: + $ref: '#/components/schemas/RelationshipToTeam' + type: object + AuthNMappingsType: + default: authn_mappings + description: AuthN Mappings resource type. enum: - - created_at - - '-created_at' - - last4 - - '-last4' - - modified_at - - '-modified_at' - - name - - '-name' + - authn_mappings + example: authn_mappings type: string x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - LAST4_ASCENDING - - LAST4_DESCENDING - - MODIFIED_AT_ASCENDING - - MODIFIED_AT_DESCENDING - - NAME_ASCENDING - - NAME_DESCENDING - PartialAPIKey: - description: Partial Datadog API key. + - AUTHN_MAPPINGS + SAMLAssertionAttribute: + description: SAML assertion attribute. properties: attributes: - $ref: '#/components/schemas/PartialAPIKeyAttributes' + $ref: '#/components/schemas/SAMLAssertionAttributeAttributes' id: - description: ID of the API key. + description: The ID of the SAML assertion attribute. + example: '0' type: string - relationships: - $ref: '#/components/schemas/APIKeyRelationships' type: - $ref: '#/components/schemas/APIKeysType' + $ref: '#/components/schemas/SAMLAssertionAttributesType' + required: + - id + - type type: object - APIKeyResponseIncludedItem: - description: An object related to an API key. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/LeakedKey' - APIKeysResponseMeta: - description: Additional information related to api keys response. + AuthNMappingTeam: + description: Team. properties: - max_allowed: - description: Max allowed number of API keys. + attributes: + $ref: '#/components/schemas/AuthNMappingTeamAttributes' + id: + description: The ID of the Team. + example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/TeamType' + type: object + Pagination: + description: Pagination object. + properties: + total_count: + description: Total count. + format: int64 + type: integer + total_filtered_count: + description: Total count of elements matched by the filter. format: int64 type: integer - page: - $ref: '#/components/schemas/APIKeysResponseMetaPage' type: object - APIKeyCreateData: - description: Object used to create an API key. + AuthNMappingCreateAttributes: + description: Key/Value pair of attributes used for create request. properties: - attributes: - $ref: '#/components/schemas/APIKeyCreateAttributes' - type: - $ref: '#/components/schemas/APIKeysType' + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development + type: string + type: object + AuthNMappingCreateRelationships: + description: Relationship of AuthN Mapping create object to a Role or Team. + properties: + role: + $ref: '#/components/schemas/RelationshipToRole' + team: + $ref: '#/components/schemas/RelationshipToTeam' required: - - attributes - - type + - role + - team type: object - FullAPIKey: - description: Datadog API key. + AuthNMappingUpdateAttributes: + description: Key/Value pair of attributes used for update request. properties: - attributes: - $ref: '#/components/schemas/FullAPIKeyAttributes' - id: - description: ID of the API key. + attribute_key: + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. + example: member-of + type: string + attribute_value: + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. + example: Development type: string - relationships: - $ref: '#/components/schemas/APIKeyRelationships' - type: - $ref: '#/components/schemas/APIKeysType' type: object - APIKeyUpdateData: - description: Object used to update an API key. + AuthNMappingUpdateRelationships: + description: Relationship of AuthN Mapping update object to a Role or Team. properties: - attributes: - $ref: '#/components/schemas/APIKeyUpdateAttributes' - id: - description: ID of the API key. - example: 00112233-4455-6677-8899-aabbccddeeff - type: string - type: - $ref: '#/components/schemas/APIKeysType' + role: + $ref: '#/components/schemas/RelationshipToRole' + team: + $ref: '#/components/schemas/RelationshipToTeam' required: - - attributes - - id - - type + - role + - team + type: object + UserAttributes: + description: Attributes of user object returned by the API. + properties: + created_at: + description: The ISO 8601 timestamp of when the user account was created. + format: date-time + type: string + disabled: + description: Whether the user account is deactivated. Disabled users cannot log in. + type: boolean + email: + description: The email address of the user, used for login and notifications. + type: string + handle: + description: The unique handle (username) of the user, typically matching their email prefix. + type: string + icon: + description: URL of the user's profile icon, typically a Gravatar URL derived from the email address. + type: string + last_login_time: + description: The ISO 8601 timestamp of the user's most recent login, or null if the user has never logged in. + format: date-time + nullable: true + readOnly: true + type: string + mfa_enabled: + description: Whether multi-factor authentication (MFA) is enabled for the user's account. + readOnly: true + type: boolean + modified_at: + description: The ISO 8601 timestamp of when the user account was last modified. + format: date-time + type: string + name: + description: The full display name of the user as shown in the Datadog UI. + nullable: true + type: string + service_account: + description: |- + Whether this is a service account rather than a human user. + Service accounts are used for programmatic API access. + type: boolean + status: + description: The current status of the user account (for example, `Active`, `Pending`, or `Disabled`). + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true + type: string + uuid: + description: The globally unique identifier (UUID) of the user. + readOnly: true + type: string + verified: + description: Whether the user's email address has been verified. + type: boolean type: object - ApplicationKeysSort: - default: name - description: Sorting options + UserResponseRelationships: + description: Relationships of the user object returned by the API. + properties: + org: + $ref: '#/components/schemas/RelationshipToOrganization' + other_orgs: + $ref: '#/components/schemas/RelationshipToOrganizations' + other_users: + $ref: '#/components/schemas/RelationshipToUsers' + roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + UsersType: + default: users + description: Users resource type. enum: - - created_at - - '-created_at' - - last4 - - '-last4' - - name - - '-name' + - users + example: users type: string x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - LAST4_ASCENDING - - LAST4_DESCENDING - - NAME_ASCENDING - - NAME_DESCENDING - PartialApplicationKey: - description: Partial Datadog application key. + - USERS + Organization: + description: Organization object. properties: attributes: - $ref: '#/components/schemas/PartialApplicationKeyAttributes' + $ref: '#/components/schemas/OrganizationAttributes' id: - description: ID of the application key. + description: ID of the organization. type: string - relationships: - $ref: '#/components/schemas/ApplicationKeyRelationships' type: - $ref: '#/components/schemas/ApplicationKeysType' - type: object - ApplicationKeyResponseIncludedItem: - description: An object related to an application key. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Role' - - $ref: '#/components/schemas/LeakedKey' - ApplicationKeyResponseMeta: - description: Additional information related to the application key response. - properties: - max_allowed_per_user: - description: Max allowed number of application keys per user. - format: int64 - type: integer - page: - $ref: '#/components/schemas/ApplicationKeyResponseMetaPage' + $ref: '#/components/schemas/OrganizationsType' + required: + - type type: object - FullApplicationKey: - description: Datadog application key. + UserUpdateAttributes: + description: Attributes of the edited user. properties: - attributes: - $ref: '#/components/schemas/FullApplicationKeyAttributes' - id: - description: ID of the application key. + disabled: + description: |- + When set to `true`, the user is deactivated and can no longer log in. + When `false`, the user is active. + type: boolean + email: + description: |- + The email address of the user, used for login and notifications. + Must be a valid email format. + type: string + name: + description: |- + The full display name of the user as shown in the Datadog UI. + Maximum 55 characters, cannot contain `<` or `>`. + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true type: string - relationships: - $ref: '#/components/schemas/ApplicationKeyRelationships' - type: - $ref: '#/components/schemas/ApplicationKeysType' type: object - ApplicationKeyUpdateData: - description: Object used to update an application key. + ApplicationKeyCreateAttributes: + description: Attributes used to create an application Key. properties: - attributes: - $ref: '#/components/schemas/ApplicationKeyUpdateAttributes' - id: - description: ID of the application key. - example: 00112233-4455-6677-8899-aabbccddeeff + name: + description: Name of the application key. + example: Application Key for managing dashboards type: string - type: - $ref: '#/components/schemas/ApplicationKeysType' + scopes: + description: Array of scopes to grant the application key. + example: + - dashboards_read + - dashboards_write + - dashboards_public_share + items: + description: Name of scope. + type: string + nullable: true + type: array required: - - attributes - - id - - type + - name type: object - AuditLogsEvent: - description: >- - Object description of an Audit Logs event after it is processed and - stored by Datadog. + CreateDataDeletionRequestBodyAttributes: + description: Attributes for creating a data deletion request. properties: - attributes: - $ref: '#/components/schemas/AuditLogsEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/AuditLogsEventType' + displayed_total: + description: Total number of elements to be deleted as displayed to the user. + example: 100 + format: int64 + minimum: 1 + type: integer + from: + description: Start of requested time window, milliseconds since Unix epoch. + example: 1672527600000 + format: int64 + type: integer + indexes: + description: List of indexes for the search. If not provided, the search is performed in all indexes. + example: + - test-index + - test-index-2 + items: + description: Individual index. + type: string + type: array + query: + additionalProperties: + type: string + description: Query for creating a data deletion request. + example: + host: abc + service: xyz + type: object + to: + description: End of requested time window, milliseconds since Unix epoch. + example: 1704063600000 + format: int64 + type: integer + required: + - query + - from + - to + - displayed_total type: object - AuditLogsResponseLinks: - description: Links attributes. + CreateDataDeletionRequestBodyDataType: + description: The deletion request type. + enum: + - create_deletion_req + example: create_deletion_req + type: string + x-enum-varnames: + - CREATE_DELETION_REQ + DataDeletionResponseItemAttributes: + description: Deletion attribute for data deletion response. properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + created_at: + description: Creation time of the deletion request. + example: '2024-01-01T00:00:00.000000Z' type: string - type: object - AuditLogsResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: Time elapsed in milliseconds. - example: 132 + created_by: + description: User who created the deletion request. + example: test.user@datadoghq.com + type: string + customer_message: + description: A message for the customer regarding the deletion request, if any. + example: Your deletion request is being processed. + type: string + displayed_total: + description: Total number of elements to be deleted as displayed to the user. + example: 100 format: int64 type: integer - page: - $ref: '#/components/schemas/AuditLogsResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + error_category: + description: The category of the error for the deletion request, if any. + example: validation_error + type: string + from_time: + description: Start of requested time window, milliseconds since Unix epoch. + example: 1672527600000 + format: int64 + type: integer + indexes: + description: List of indexes for the search. If not provided, the search is performed in all indexes. + example: + - test-index + - test-index-2 + items: + description: Individual index. + type: string + type: array + is_created: + description: Whether the deletion request is fully created or not. It can take several minutes to fully create a deletion request depending on the target query and timeframe. + example: true + type: boolean + org_id: + description: Organization ID. + example: 321813 + format: int64 + type: integer + product: + description: Product name. + example: logs + type: string + query: + description: Query for creating a data deletion request. + example: service:xyz host:abc + type: string + starting_at: + description: Starting time of the process to delete the requested data. + example: '2024-01-01T02:00:00.000000Z' type: string status: - $ref: '#/components/schemas/AuditLogsResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. + description: Status of the deletion request. + example: pending + type: string + to_time: + description: End of requested time window, milliseconds since Unix epoch. + example: 1704063600000 + format: int64 + type: integer + total_unrestricted: + description: Total number of elements to be deleted. Only the data accessible to the current user that matches the query and timeframe provided will be deleted. + example: 100 + format: int64 + type: integer + updated_at: + description: Update time of the deletion request. + example: '2024-01-01T00:00:00.000000Z' + type: string + required: + - created_at + - created_by + - from_time + - is_created + - org_id + - product + - query + - starting_at + - status + - to_time + - total_unrestricted + - displayed_total + - updated_at + type: object + DomainAllowlistResponseDataAttributes: + description: The details of the email domain allowlist. + properties: + domains: + description: The list of domains in the email domain allowlist. items: - $ref: '#/components/schemas/AuditLogsWarning' + description: An email domain in the allowlist. + type: string type: array + enabled: + description: Whether the email domain allowlist is enabled for the org. + type: boolean type: object - AuditLogsQueryFilter: - description: Search and filter query settings. + DomainAllowlistType: + default: domain_allowlist + description: Email domain allowlist allowlist type. + enum: + - domain_allowlist + example: domain_allowlist + type: string + x-enum-varnames: + - DOMAIN_ALLOWLIST + DomainAllowlistAttributes: + description: The details of the email domain allowlist. properties: - from: - default: now-15m - description: >- - Minimum time for the requested events. Supports date, math, and - regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: Search query following the Audit Logs search syntax. - example: '@type:session AND @session.type:user' - type: string - to: - default: now - description: >- - Maximum time for the requested events. Supports date, math, and - regular timestamps (in milliseconds). - example: now - type: string + domains: + description: The list of domains in the email domain allowlist. + items: + description: An email domain in the allowlist. + type: string + type: array + enabled: + description: Whether the email domain allowlist is enabled for the org. + type: boolean type: object - AuditLogsQueryOptions: - description: >- - Global query options that are used during the query. - - Note: Specify either timezone or time offset, not both. Otherwise, the - query fails. + GlobalOrgAttributes: + description: Attributes of an organization associated with the authenticated user. properties: - time_offset: - description: Time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT + org: + $ref: '#/components/schemas/GlobalOrg' + redirect_url: + description: The login URL used to switch into the organization, if available. + example: https://app.datadoghq.com/account/login/password?dd_oid=13d10a96-6ff2-49be-be7b-4f56ebb13335&login_hint=user%40example.com + nullable: true + type: string + source_region: + description: The source region of the organization. + example: us1.prod.dog type: string + user: + $ref: '#/components/schemas/GlobalOrgUser' + required: + - user + - org + - source_region type: object - AuditLogsQueryPageOptions: - description: Paging attributes for listing events. + GlobalOrgType: + description: The resource type for global user organizations. + enum: + - global_user_orgs + example: global_user_orgs + type: string + x-enum-varnames: + - GLOBAL_USER_ORGS + GlobalOrgsMetaPage: + description: Paging attributes. properties: cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + description: The cursor used to get the current results, if any. + example: '' type: string limit: - default: 10 - description: Maximum number of events in the response. - example: 25 + description: Number of results returned. + example: 100 format: int32 maximum: 1000 type: integer - type: object - AuthNMapping: - description: The AuthN Mapping object returned by API. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingAttributes' - id: - description: ID of the AuthN Mapping. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + next_cursor: + description: The cursor used to get the next results, if any. + example: next-page + nullable: true + type: string + prev_cursor: + description: The cursor used to get the previous results, if any. + nullable: true type: string - relationships: - $ref: '#/components/schemas/AuthNMappingRelationships' type: - $ref: '#/components/schemas/AuthNMappingsType' + $ref: '#/components/schemas/GlobalOrgsMetaPageType' + type: object + GovernanceConfigAttributes: + description: The attributes of a Governance Console configuration. + properties: + assignment_notifications_enabled: + description: Whether notifications are sent to users when detections are assigned to them. + example: true + type: boolean + enabled: + description: Whether the Governance Console is enabled for the organization. + example: true + type: boolean + usage_attribution_configured: + description: Whether usage attribution is configured for the organization. + example: true + type: boolean + xorg_insights_enabled: + description: |- + Whether the organization has opted in to sharing governance data with a managing org + for cross-org insights. + example: true + type: boolean required: - - id - - type + - enabled + - assignment_notifications_enabled + - usage_attribution_configured + - xorg_insights_enabled type: object - AuthNMappingIncluded: - description: Included data in the AuthN Mapping response. - oneOf: - - $ref: '#/components/schemas/SAMLAssertionAttribute' - - $ref: '#/components/schemas/Role' - - $ref: '#/components/schemas/AuthNMappingTeam' - ResponseMetaAttributes: - description: Object describing meta attributes of response. + GovernanceConsoleConfigResourceType: + description: Governance console config resource type. + enum: + - governance_console_config + example: governance_console_config + type: string + x-enum-varnames: + - GOVERNANCE_CONSOLE_CONFIG + JSONAPIErrorItemSource: + description: References to the source of the error. properties: - page: - $ref: '#/components/schemas/Pagination' + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string type: object - AuthNMappingCreateData: - description: Data for creating an AuthN Mapping. + GovernanceControlAttributes: + description: The attributes of a governance control. properties: - attributes: - $ref: '#/components/schemas/AuthNMappingCreateAttributes' - relationships: - $ref: '#/components/schemas/AuthNMappingCreateRelationships' + active_detections_count: + description: The number of active detections for the control. + example: 12 + format: int64 + type: integer + category: + description: The value driver the control is grouped under, such as `security` or `cost`. + example: security + type: string + created_at: + description: The time the control configuration was created. + example: '2024-01-15T09:30:00Z' + format: date-time + type: string + created_by: + description: The UUID of the user who created the control configuration. + example: 11111111-2222-3333-4444-555555555555 + type: string + description: + description: A human-readable description of what the control detects. + example: Identifies API keys that have not been used within your specified time threshold, helping reduce security risks from dormant credentials. + type: string + detection_parameters: + $ref: '#/components/schemas/GovernanceControlParametersMap' + nullable: true + insights: + description: The insight slugs associated with the control. + example: [] + items: + description: An insight slug associated with the control. + type: string + type: array + last_detection_at: + description: The time of the most recent detection for the control. `null` when there are no detections. + example: '2024-03-01T12:00:00Z' + format: date-time + nullable: true + type: string + mitigated_detections_count: + description: The number of mitigated detections for the control. + example: 3 + format: int64 + type: integer + mitigation_parameters: + $ref: '#/components/schemas/GovernanceControlParametersMap' + nullable: true + mitigation_type: + description: The configured mitigation type for the control. Empty when not configured. + example: revoke_api_key + type: string + mitigations: + $ref: '#/components/schemas/GovernanceControlMitigationDefinitionArray' + name: + description: Human-readable name of the control. + example: Unused API Keys + type: string + priority: + description: The priority of the control, such as `High`. + example: High + type: string + product: + description: The product the control belongs to. + example: api_keys + type: string + resource_type: + description: The type of resource the control evaluates. + example: api_key + type: string + resource_type_display_name: + description: The human-readable name of the resource type. + example: API Key + type: string + supported_detection_parameters: + $ref: '#/components/schemas/GovernanceControlParameterDefinitionArray' type: - $ref: '#/components/schemas/AuthNMappingsType' + description: The control type, such as `Proactive` or `Detection`. + example: Proactive + type: string required: + - name + - description + - supported_detection_parameters + - resource_type + - resource_type_display_name + - product + - category + - insights + - mitigations - type + - priority + - detection_parameters + - mitigation_type + - mitigation_parameters + - created_at + - created_by + - active_detections_count + - mitigated_detections_count + - last_detection_at type: object - AuthNMappingUpdateData: - description: Data for updating an AuthN Mapping. + GovernanceControlResourceType: + description: JSON:API resource type for a governance control. + enum: + - governance_control + example: governance_control + type: string + x-enum-varnames: + - GOVERNANCE_CONTROL + GovernanceControlUpdateAttributes: + description: The attributes of a governance control that can be updated. Only the attributes present in the request are modified. properties: - attributes: - $ref: '#/components/schemas/AuthNMappingUpdateAttributes' - id: - description: ID of the AuthN Mapping. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + detection_parameters: + $ref: '#/components/schemas/GovernanceControlParametersMap' + nullable: true + mitigation_parameters: + $ref: '#/components/schemas/GovernanceControlParametersMap' + nullable: true + mitigation_type: + description: The mitigation type to configure for the control. + example: revoke_api_key type: string - relationships: - $ref: '#/components/schemas/AuthNMappingUpdateRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - id - - type type: object - ApplicationKeyCreateData: - description: Object used to create an application key. + ControlNotificationSettingsAttributes: + description: The attributes of a governance control's notification settings. properties: - attributes: - $ref: '#/components/schemas/ApplicationKeyCreateAttributes' - type: - $ref: '#/components/schemas/ApplicationKeysType' + event_settings: + $ref: '#/components/schemas/ControlNotificationEventSettingsArray' required: - - attributes - - type + - event_settings type: object - CreateDataDeletionRequestBodyData: - description: Data needed to create a data deletion request. + ControlNotificationSettingsResourceType: + description: Control notification settings resource type. + enum: + - control_notification_settings + example: control_notification_settings + type: string + x-enum-varnames: + - CONTROL_NOTIFICATION_SETTINGS + ControlNotificationSettingsUpdateAttributes: + description: The attributes of a governance control's notification settings that can be updated. properties: - attributes: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyAttributes' - type: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyDataType' - required: - - attributes - - type + event_settings: + $ref: '#/components/schemas/ControlNotificationEventSettingsArray' type: object - DataDeletionResponseItem: - description: The created data deletion request information. + GovernanceMitigationRequestAttributes: + description: The attributes of a governance mitigation request. properties: - attributes: - $ref: '#/components/schemas/DataDeletionResponseItemAttributes' - id: - description: The ID of the created data deletion request. - example: '1' + detection_ids: + description: The identifiers of the detections to mitigate in this request. + example: + - 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d + items: + description: The identifier of a detection to mitigate in this request. + type: string + type: array + detection_type: + description: The detection type whose detections should be mitigated. + example: unused_api_keys type: string - type: - description: The type of the request created. - example: deletion_request + mitigation_parameters: + $ref: '#/components/schemas/GovernanceControlParametersMap' + nullable: true + mitigation_type: + description: The mitigation to apply to the selected detections. Defaults to the control's configured mitigation when omitted. + example: revoke_api_key type: string required: - - id - - type - - attributes + - detection_type + - detection_ids type: object - DataDeletionResponseMeta: - description: The metadata of the data deletion response. + GovernanceControlDetectionResourceType: + description: Governance control detection resource type. + enum: + - governance_control_detection + example: governance_control_detection + type: string + x-enum-varnames: + - GOVERNANCE_CONTROL_DETECTION + GovernanceControlDetectionAttributes: + description: The attributes of a governance control detection. properties: - count_product: - additionalProperties: - format: int64 - type: integer - description: The total deletion requests created by product. - example: - logs: 8 - rum: 7 - type: object - count_status: - additionalProperties: - format: int64 - type: integer - description: The total deletion requests created by status. + assigned_team: + description: The identifier of the team the detection is assigned to, if any. + example: platform-security + type: string + assigned_to: + description: The identifier of the user the detection is assigned to, if any. + example: 11111111-2222-3333-4444-555555555555 + type: string + assignment_source: + $ref: '#/components/schemas/GovernanceControlDetectionAssignmentSource' + control_id: + deprecated: true + description: |- + DEPRECATED: mirrors `detection_type` for backward compatibility; use `detection_type` + instead. + example: unused_api_keys + type: string + created_at: + description: The date and time when the detection was created. + example: '2024-03-01T12:00:00Z' + format: date-time + type: string + detection_type: + description: The type of detection, which determines what condition was detected. + example: unused_api_keys + type: string + display_name: + description: The human-readable name of the detected resource. + example: CI Deploy Key + type: string + exception_at: + description: The date and time when the detection was marked as an exception, if applicable. + example: '2024-03-05T09:00:00Z' + format: date-time + type: string + exception_by: + description: The identifier of the user who marked the detection as an exception, if applicable. + example: 11111111-2222-3333-4444-555555555555 + type: string + metadata: + description: Free-form metadata associated with the detection. example: - completed: 10 - pending: 5 - type: object - next_page: - description: >- - The next page when searching deletion requests created in the - current organization. - example: cGFnZTI= + region: us-east-1 + mitigate_after: + description: The date and time after which the detection is scheduled to be mitigated, if applicable. + example: '2024-03-15T00:00:00Z' + format: date-time + type: string + mitigated_at: + description: The date and time when the detection was mitigated, if applicable. + example: '2024-03-10T15:30:00Z' + format: date-time + type: string + priority: + description: The priority of the detection, if set. + example: 1 + format: int64 + type: integer + resource_id: + description: The identifier of the resource the detection applies to. + example: api-key-12345 + type: string + resource_type: + description: The type of resource the detection applies to, for example `api_key` or `dashboard`. + example: api_key type: string - product: - description: The product of the deletion request. - example: logs + state: + $ref: '#/components/schemas/GovernanceControlDetectionState' + required: + - state + - control_id + - resource_id + - detection_type + - resource_type + - display_name + - created_at + - assignment_source + - priority + type: object + GovernanceControlDetectionUpdateAttributes: + description: The attributes of a governance control detection that can be updated. Only the attributes present in the request are modified. + properties: + assigned_team: + description: The handle of the team the detection is assigned to. Set to an empty string to clear the assignment. + example: platform-security type: string - request_status: - description: The status of the executed request. - example: canceled + assigned_to: + description: The UUID of the user the detection is assigned to. Set to an empty string to clear the assignment. + example: 11111111-2222-3333-4444-555555555555 + type: string + mitigate_after: + description: The timestamp after which the detection becomes eligible for mitigation. Used to defer mitigation to a later time. + example: '2024-03-15T00:00:00Z' + format: date-time type: string + state: + $ref: '#/components/schemas/GovernanceControlDetectionUpdateState' type: object - DomainAllowlistResponseData: - description: The email domain allowlist response for an org. + GovernanceInsightData: + description: A governance insight resource. properties: attributes: - $ref: '#/components/schemas/DomainAllowlistResponseDataAttributes' + $ref: '#/components/schemas/GovernanceInsightAttributes' id: - description: The unique identifier of the org. - nullable: true + description: The unique identifier of the insight. + example: 498ee21f-8037-48b8-a961-a488692902f4 type: string type: - $ref: '#/components/schemas/DomainAllowlistType' + $ref: '#/components/schemas/GovernanceInsightResourceType' required: + - id - type + - attributes type: object - DomainAllowlist: - description: The email domain allowlist for an org. + GovernanceNotificationSettingsAttributes: + description: The attributes of the organization-wide governance notification settings. properties: - attributes: - $ref: '#/components/schemas/DomainAllowlistAttributes' - id: - description: The unique identifier of the org. - nullable: true + assignment_notifications_enabled: + description: Whether notifications are sent to users when detections are assigned to them. + example: true + type: boolean + required: + - assignment_notifications_enabled + type: object + GovernanceNotificationSettingsResourceType: + description: Governance notification settings resource type. + enum: + - governance_notification_settings + example: governance_notification_settings + type: string + x-enum-varnames: + - GOVERNANCE_NOTIFICATION_SETTINGS + GovernanceNotificationSettingsUpdateAttributes: + description: The attributes of the governance notification settings that can be updated. Only the attributes present in the request are modified. + properties: + assignment_notifications_enabled: + description: Whether notifications are sent to users when detections are assigned to them. + example: true + type: boolean + type: object + TagRuleCreateAttributes: + description: Attributes that can be supplied when creating a tag rule. + properties: + enabled: + description: Whether the rule is currently enforced. Defaults to `true` for newly created rules. + example: true + type: boolean + name: + description: Human-readable name for the tag rule. + example: Service tag must be one of api or web type: string - type: - $ref: '#/components/schemas/DomainAllowlistType' + negated: + description: When `true`, the rule matches tag values that do NOT match any of the supplied patterns. Defaults to `false`. + example: false + type: boolean + required: + description: When `true`, telemetry without this tag is treated as a violation. Defaults to `false`. + example: true + type: boolean + rule_type: + $ref: '#/components/schemas/TagRuleCreateType' + scope: + description: |- + The scope the rule applies within. Typically an environment, team, or + organization-level identifier used to limit where the rule is enforced. + example: env + type: string + source: + $ref: '#/components/schemas/TagRuleSource' + tag_key: + description: The tag key that the rule governs (for example, `service`). + example: service + type: string + tag_value_patterns: + description: |- + One or more patterns that valid values for the tag key must match. At least one + pattern is required. + example: + - api + - web + items: + description: A pattern that valid tag values must match. + type: string + minItems: 1 + type: array required: - - type + - name + - source + - scope + - tag_key + - tag_value_patterns + - rule_type type: object - IPAllowlistData: - description: IP allowlist data. + TagRuleResourceType: + description: JSON:API resource type for a tag rule. + enum: + - tag_rule + example: tag_rule + type: string + x-enum-varnames: + - TAG_RULE + TagRuleAttributes: + description: The attributes of a tag rule resource. properties: - attributes: - $ref: '#/components/schemas/IPAllowlistAttributes' - id: - description: The unique identifier of the org. + created_at: + description: The RFC 3339 timestamp at which the rule was created. + example: '2026-05-21T22:11:06.108696Z' + format: date-time type: string - type: - $ref: '#/components/schemas/IPAllowlistType' + created_by: + description: The identifier of the user who created the rule. + example: test-user + type: string + deleted_at: + description: The RFC 3339 timestamp at which the rule was soft-deleted. `null` if the rule has not been deleted. Only present when `include_deleted=true` is requested. + format: date-time + nullable: true + type: string + deleted_by: + description: The identifier of the user who soft-deleted the rule. `null` if the rule has not been deleted. + nullable: true + type: string + enabled: + description: Whether the rule is currently enforced. + example: true + type: boolean + modified_at: + description: The RFC 3339 timestamp at which the rule was last modified. + example: '2026-05-21T22:11:06.108696Z' + format: date-time + type: string + modified_by: + description: The identifier of the user who last modified the rule. + example: test-user + type: string + name: + description: Human-readable name for the tag rule. + example: Service tag must be one of api or web + type: string + negated: + description: When `true`, the rule matches tag values that do NOT match any of the supplied patterns. + example: false + type: boolean + required: + description: When `true`, telemetry without this tag is treated as a violation. + example: true + type: boolean + rule_type: + $ref: '#/components/schemas/TagRuleType' + scope: + description: The scope the rule applies within. + example: env + type: string + source: + $ref: '#/components/schemas/TagRuleSource' + tag_key: + description: The tag key that the rule governs. + example: service + type: string + tag_value_patterns: + description: The patterns that valid values for the tag key must match. + example: + - api + - web + items: + description: A pattern that valid tag values must match. + type: string + type: array + version: + description: A monotonically increasing version counter that is incremented on each update. + example: 1 + format: int64 + type: integer required: - - type + - name + - source + - scope + - tag_key + - tag_value_patterns + - negated + - required + - enabled + - rule_type + - version + - created_at + - created_by + - modified_at + - modified_by type: object - OrgConfigRead: - description: A single Org Config. + TagRuleRelationships: + description: Related resources for a tag rule. Only present when the corresponding `include` query parameter is supplied. properties: - attributes: - $ref: '#/components/schemas/OrgConfigReadAttributes' - id: - description: A unique identifier for an Org Config. - example: abcd1234 + score: + $ref: '#/components/schemas/TagRuleScoreRelationship' + type: object + TagRuleUpdateAttributes: + description: |- + Mutable attributes of a tag rule. Each field is optional; omitting a field leaves its + current value unchanged. The `source` of a rule cannot be changed. + properties: + enabled: + description: Whether the rule is currently enforced. + type: boolean + name: + description: Human-readable name for the tag rule. type: string - type: - $ref: '#/components/schemas/OrgConfigType' + negated: + description: When `true`, the rule matches tag values that do NOT match any of the supplied patterns. + type: boolean + required: + description: When `true`, telemetry without this tag is treated as a violation. + type: boolean + rule_type: + $ref: '#/components/schemas/TagRuleType' + scope: + description: The scope the rule applies within. + type: string + tag_key: + description: The tag key that the rule governs. + type: string + tag_value_patterns: + description: One or more patterns that valid values for the tag key must match. + items: + description: A pattern that valid tag values must match. + type: string + type: array + type: object + TagRuleScoreAttributes: + description: Attributes of a tag rule compliance score. + properties: + score: + description: |- + The compliance score for the rule over the requested time window, as a percentage + between 0 and 100. `null` indicates that no relevant telemetry was found. + example: 80 + format: double + nullable: true + type: number + ts_end: + description: End of the time window the score was computed over, as a Unix timestamp in milliseconds. + example: 1779401466097 + format: int64 + type: integer + ts_start: + description: Start of the time window the score was computed over, as a Unix timestamp in milliseconds. + example: 1779315066097 + format: int64 + type: integer + version: + description: The version of the tag rule that the score was computed against. + example: 1 + format: int64 + type: integer required: - - id - - type - - attributes + - score + - ts_start + - ts_end + - version type: object - OrgConfigWrite: - description: An Org Config write operation. + TagRuleScoreResourceType: + description: JSON:API resource type for a tag rule compliance score. + enum: + - tag_rule_score + example: tag_rule_score + type: string + x-enum-varnames: + - TAG_RULE_SCORE + HamrOrgConnectionAttributesResponse: + description: Attributes of a HAMR organization connection response. + properties: + hamr_status: + $ref: '#/components/schemas/HamrOrgConnectionStatus' + is_primary: + description: |- + Indicates whether this organization is the primary organization in the HAMR relationship. + If true, this is the primary organization. If false, this is the secondary/backup organization. + example: true + type: boolean + modified_at: + description: Timestamp of when this HAMR connection was last modified (RFC3339 format). + example: '2026-01-13T17:26:48.830968Z' + type: string + modified_by: + description: Username or identifier of the user who last modified this HAMR connection. + example: admin@example.com + type: string + target_org_datacenter: + description: Datacenter location of the target organization (e.g., us1, eu1, us5). + example: us1 + type: string + target_org_name: + description: Name of the target organization in the HAMR relationship. + example: Production Backup Org + type: string + target_org_uuid: + description: UUID of the target organization in the HAMR relationship. + example: 660f9511-f3ac-52e5-b827-557766551111 + type: string + required: + - target_org_uuid + - target_org_name + - target_org_datacenter + - hamr_status + - is_primary + - modified_at + - modified_by + type: object + HamrOrgConnectionType: + description: Type of the HAMR organization connection resource. + enum: + - hamr_org_connections + example: hamr_org_connections + type: string + x-enum-varnames: + - HAMR_ORG_CONNECTIONS + HamrOrgConnectionAttributesRequest: + description: Attributes for a HAMR organization connection request. + properties: + hamr_status: + $ref: '#/components/schemas/HamrOrgConnectionStatus' + is_primary: + description: |- + Indicates whether this organization is the primary organization in the HAMR relationship. + If true, this is the primary organization. If false, this is the secondary/backup organization. + example: true + type: boolean + modified_by: + description: Username or identifier of the user who last modified this HAMR connection. + example: admin@example.com + type: string + target_org_datacenter: + description: Datacenter location of the target organization (e.g., us1, eu1, us5). + example: us1 + type: string + target_org_name: + description: Name of the target organization in the HAMR relationship. + example: Production Backup Org + type: string + target_org_uuid: + description: UUID of the target organization in the HAMR relationship. + example: 660f9511-f3ac-52e5-b827-557766551111 + type: string + required: + - target_org_uuid + - target_org_name + - target_org_datacenter + - hamr_status + - is_primary + - modified_by + type: object + IdentityProviderUpdateAttributes: + description: Attributes for updating an organization identity provider. properties: - attributes: - $ref: '#/components/schemas/OrgConfigWriteAttributes' - type: - $ref: '#/components/schemas/OrgConfigType' + enabled: + description: Whether to enable or disable this identity provider for the organization. + example: true + type: boolean required: - - type - - attributes + - enabled type: object - OrgConnection: - description: An org connection. + IdentityProviderType: + description: The resource type for identity providers. + enum: + - identity_providers + example: identity_providers + type: string + x-enum-varnames: + - IDENTITY_PROVIDERS + IdentityProviderAttributes: + description: Attributes of an organization identity provider. properties: - attributes: - $ref: '#/components/schemas/OrgConnectionAttributes' - id: - description: The unique identifier of the org connection. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid + authentication_method: + description: The authentication method used by this identity provider. + example: SAML type: string - relationships: - $ref: '#/components/schemas/OrgConnectionRelationships' - type: - $ref: '#/components/schemas/OrgConnectionType' + enabled: + description: Whether this identity provider is enabled for the organization. + example: true + type: boolean required: - - id - - type - - attributes - - relationships + - authentication_method + - enabled type: object - OrgConnectionListResponseMeta: - description: Pagination metadata. + IPAllowlistAttributes: + description: Attributes of the IP allowlist. properties: - page: - $ref: '#/components/schemas/OrgConnectionListResponseMetaPage' + enabled: + description: Whether the IP allowlist logic is enabled or not. + type: boolean + entries: + description: Array of entries in the IP allowlist. + items: + $ref: '#/components/schemas/IPAllowlistEntry' + type: array type: object - OrgConnectionCreate: - description: Org connection creation data. + IPAllowlistType: + default: ip_allowlist + description: IP allowlist type. + enum: + - ip_allowlist + example: ip_allowlist + type: string + x-enum-varnames: + - IP_ALLOWLIST + MaxSessionDurationUpdateAttributes: + description: Attributes for the maximum session duration update request. properties: - attributes: - $ref: '#/components/schemas/OrgConnectionCreateAttributes' - relationships: - $ref: '#/components/schemas/OrgConnectionCreateRelationships' - type: - $ref: '#/components/schemas/OrgConnectionType' + max_session_duration: + description: The maximum session duration, in seconds. + example: 604800 + format: int64 + minimum: 1 + type: integer + required: + - max_session_duration + type: object + MaxSessionDurationType: + description: Data type of a maximum session duration update. + enum: + - max_session_duration + example: max_session_duration + type: string + x-enum-varnames: + - MAX_SESSION_DURATION + OAuth2WellKnownSitesAttributes: + description: Attributes containing the list of public OAuth2 sites. + properties: + sites: + description: Array of public OAuth2 site URLs for the environment. + example: + - datadoghq.com + - datadoghq.eu + - us5.datadoghq.com + - us3.datadoghq.com + - ap1.datadoghq.com + - ap2.datadoghq.com + items: + description: Public OAuth2 site URL. + example: app.datadoghq.com + type: string + type: array + required: + - sites + type: object + OAuth2WellKnownSitesEnvType: + default: env + description: JSON:API resource type for OAuth2 well-known sites environment. + enum: + - env + example: env + type: string + x-enum-varnames: + - ENV + OAuthScopesRestrictionResponseAttributes: + description: Attributes of an OAuth2 client scopes restriction. + properties: + required_permission_scopes: + description: |- + Permission scopes automatically required for this client (for example, mobile-app permission scopes). + Returns `null` when no scopes are required. + example: + - mobile_app_access + items: + description: Datadog permission scope name. + example: mobile_app_access + type: string + nullable: true + type: array + scopes_restriction: + $ref: '#/components/schemas/OAuthScopesRestriction' required: - - type - - attributes - - relationships + - scopes_restriction + - required_permission_scopes type: object - OrgConnectionUpdate: - description: Org connection update data. + OAuthScopesRestrictionType: + default: scopes_restriction + description: JSON:API resource type for an OAuth2 client scopes restriction. + enum: + - scopes_restriction + example: scopes_restriction + type: string + x-enum-varnames: + - SCOPES_RESTRICTION + UpsertOAuthScopesRestrictionDataAttributes: + description: Attributes of an upsert OAuth2 scopes restriction request. properties: - attributes: - $ref: '#/components/schemas/OrgConnectionUpdateAttributes' - id: - description: The unique identifier of the org connection. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - type: - $ref: '#/components/schemas/OrgConnectionType' + oidc_scopes: + description: OIDC scopes the client is allowed to request. + example: + - openid + - email + items: + $ref: '#/components/schemas/OAuthOidcScope' + type: array + permission_scopes: + description: |- + Datadog permission scopes the client is allowed to request. + Each value must be a valid permission name. + example: + - dashboards_read + - metrics_read + items: + description: Datadog permission scope name. + example: dashboards_read + type: string + type: array + type: object + UpsertOAuthScopesRestrictionType: + default: upsert_scopes_restriction + description: JSON:API resource type for an upsert OAuth2 client scopes restriction request. + enum: + - upsert_scopes_restriction + example: upsert_scopes_restriction + type: string + x-enum-varnames: + - UPSERT_SCOPES_RESTRICTION + ManagedOrgsRelationships: + description: Relationships of the managed organizations resource. + properties: + current_org: + $ref: '#/components/schemas/ManagedOrgsRelationshipToOrg' + managed_orgs: + $ref: '#/components/schemas/ManagedOrgsRelationshipToOrgs' required: - - type - - id - - attributes + - current_org + - managed_orgs type: object - Permission: - description: Permission object. + ManagedOrgsType: + description: The resource type for managed organizations. + enum: + - managed_orgs + example: managed_orgs + type: string + x-enum-varnames: + - MANAGED_ORGS + OrgAttributes: + description: Attributes of an organization. properties: - attributes: - $ref: '#/components/schemas/PermissionAttributes' - id: - description: ID of the permission. + created_at: + description: The creation timestamp of the organization. + example: '2019-09-26T17:28:28Z' + format: date-time + type: string + description: + description: A description of the organization. + example: Production organization. + type: string + disabled: + description: Whether the organization is disabled. + example: false + type: boolean + modified_at: + description: The last modification timestamp of the organization. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + name: + description: The name of the organization. + example: My Organization + type: string + public_id: + description: The public identifier of the organization. + example: abcdef12345 + type: string + sharing: + description: The sharing setting of the organization. + example: none + type: string + url: + description: The URL of the organization. + example: https://app.datadoghq.com/account/my-org type: string - type: - $ref: '#/components/schemas/PermissionsType' required: - - type + - public_id + - name + - description + - sharing + - url + - disabled + - created_at + - modified_at type: object - RestrictionPolicy: - description: Restriction policy object. - properties: - attributes: - $ref: '#/components/schemas/RestrictionPolicyAttributes' - id: - description: >- - The identifier, always equivalent to the value specified in the - `resource_id` path parameter. - example: dashboard:abc-def-ghi + OrgResourceType: + description: The resource type for organizations. + enum: + - orgs + example: orgs + type: string + x-enum-varnames: + - ORGS + CustomerOrgDisableRequestAttributes: + description: |- + Optional attributes for a customer org disable request. When supplied, `org_uuid` + must match the authenticated organization or the request is rejected. + properties: + org_uuid: + description: |- + Datadog organization UUID. If supplied, must match the authenticated + organization. + example: abcdef01-2345-6789-abcd-ef0123456789 type: string - type: - $ref: '#/components/schemas/RestrictionPolicyType' - required: - - type - - id - - attributes type: object - Role: - description: Role object returned by the API. + CustomerOrgDisableType: + description: JSON:API resource type for a customer org disable request. + enum: + - customer_org_disable + example: customer_org_disable + type: string + x-enum-varnames: + - CUSTOMER_ORG_DISABLE + CustomerOrgDisableResponseAttributes: + description: Attributes describing the outcome of the disable action on the customer organization. properties: - attributes: - $ref: '#/components/schemas/RoleAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' + status: + $ref: '#/components/schemas/CustomerOrgDisableStatus' required: - - type + - status type: object - RoleCreateData: - description: Data related to the creation of a role. - properties: - attributes: - $ref: '#/components/schemas/RoleCreateAttributes' - relationships: - $ref: '#/components/schemas/RoleRelationships' - type: - $ref: '#/components/schemas/RolesType' + CustomerOrgDisableResponseType: + description: JSON:API resource type for a customer org disable response. + enum: + - org_disable + example: org_disable + type: string + x-enum-varnames: + - ORG_DISABLE + OrgSAMLPreferencesAttributes: + description: Attributes for updating an organization's SAML preferences. + properties: + default_role_uuids: + description: |- + The UUID of the default role assigned to just-in-time provisioned users. + Exactly one role UUID must be provided. + example: + - 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + items: + description: The UUID of a role. + example: 8dd1cf3c-0c75-11ea-ad28-fb5701eabc7d + format: uuid + type: string + maxItems: 1 + minItems: 1 + type: array + jit_domains: + description: |- + Email domains for which users are automatically provisioned on first SAML login + (just-in-time provisioning). + example: + - example.com + items: + description: An email domain for just-in-time user provisioning. + example: example.com + maxLength: 256 + minLength: 1 + type: string + maxItems: 50 + type: array required: - - attributes + - jit_domains + - default_role_uuids type: object - RoleCreateResponseData: - description: Role object returned by the API. + OrgSAMLPreferencesType: + default: saml_preferences + description: SAML preferences resource type. + enum: + - saml_preferences + example: saml_preferences + type: string + x-enum-varnames: + - SAML_PREFERENCES + OrgAuthorizedClientAttributes: + description: Attributes of an org authorized client. properties: - attributes: - $ref: '#/components/schemas/RoleCreateAttributes' - id: - description: The unique identifier of the role. + disabled: + description: Whether the organization has disabled this client. + example: false + type: boolean + last_exercised: + description: The date and time this client was last exercised. + example: '2024-01-15T10:30:00+00:00' + format: date-time + nullable: true type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' + user_count: + description: The number of users in the organization who have authorized this client. + example: 2 + format: int64 + type: integer required: - - type + - last_exercised + - disabled + - user_count type: object - RoleUpdateData: - description: Data related to the update of a role. + OrgAuthorizedClientRelationships: + description: Relationships for an org authorized client. properties: - attributes: - $ref: '#/components/schemas/RoleUpdateAttributes' - id: - description: The unique identifier of the role. - example: 00000000-0000-1111-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/RoleRelationships' - type: - $ref: '#/components/schemas/RolesType' + oauth2_client: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipOAuth2Client' + user_authorized_clients: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClients' required: - - attributes - - type - - id + - oauth2_client + - user_authorized_clients type: object - RoleUpdateResponseData: - description: Role object returned by the API. + OrgAuthorizedClientType: + description: The resource type for org authorized clients. + enum: + - org_authorized_clients + example: org_authorized_clients + type: string + x-enum-varnames: + - ORG_AUTHORIZED_CLIENTS + OrgAuthorizedClientUpdateAttributes: + description: Attributes for updating an org authorized client. properties: - attributes: - $ref: '#/components/schemas/RoleUpdateAttributes' - id: - description: The unique identifier of the role. + disabled: + description: Whether to disable or enable this client for the organization. + example: true + type: boolean + type: object + OrgConfigReadAttributes: + description: Readable attributes of an Org Config. + properties: + description: + description: The description of an Org Config. + example: Frobulate the turbo encabulator manifold + type: string + modified_at: + description: The timestamp of the last Org Config update (if any). + format: date-time + nullable: true + type: string + name: + description: The machine-friendly name of an Org Config. + example: monitor_timezone + type: string + value: + description: The value of an Org Config. + value_type: + description: The type of an Org Config value. + example: bool type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' required: - - type + - name + - description + - value_type + - value type: object - RoleClone: - description: Data for the clone role request. + OrgConfigType: + description: Data type of an Org Config. + enum: + - org_configs + example: org_configs + type: string + x-enum-varnames: + - ORG_CONFIGS + OrgConfigWriteAttributes: + description: Writable attributes of an Org Config. properties: - attributes: - $ref: '#/components/schemas/RoleCloneAttributes' - type: - $ref: '#/components/schemas/RolesType' + value: + description: The value of an Org Config. required: - - type - - attributes + - value type: object - RelationshipToPermissionData: - description: Relationship to permission object. + OrgConnectionAttributes: + description: Org connection attributes. properties: - id: - description: ID of the permission. + connection_types: + description: List of connection types. + example: + - logs + - metrics + items: + $ref: '#/components/schemas/OrgConnectionTypeEnum' + type: array + created_at: + description: Timestamp when the connection was created. + example: '2023-01-01T12:00:00Z' + format: date-time type: string - type: - $ref: '#/components/schemas/PermissionsType' + required: + - connection_types + - created_at + type: object + OrgConnectionRelationships: + description: Related organizations and user. + properties: + created_by: + $ref: '#/components/schemas/OrgConnectionUserRelationship' + sink_org: + $ref: '#/components/schemas/OrgConnectionOrgRelationship' + source_org: + $ref: '#/components/schemas/OrgConnectionOrgRelationship' type: object - RelationshipToUserData: - description: Relationship to user object. + OrgConnectionType: + description: Org connection type. + enum: + - org_connection + example: org_connection + type: string + x-enum-varnames: + - ORG_CONNECTION + OrgConnectionListResponseMetaPage: + description: Page information. properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type + total_count: + description: Total number of org connections. + example: 0 + format: int64 + type: integer + total_filtered_count: + description: Total number of org connections matching the filter. + example: 0 + format: int64 + type: integer type: object - User: - description: User object returned by the API. + OrgConnectionCreateAttributes: + description: Attributes for creating an org connection. properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' + connection_types: + description: List of connection types to establish. + example: + - logs + items: + $ref: '#/components/schemas/OrgConnectionTypeEnum' + minItems: 1 + type: array + required: + - connection_types type: object - UserResponseIncludedItem: - description: An object related to a user. - oneOf: - - $ref: '#/components/schemas/Organization' - - $ref: '#/components/schemas/Permission' - - $ref: '#/components/schemas/Role' - ServiceAccountCreateData: - description: Object to create a service account User. + OrgConnectionCreateRelationships: + description: Relationships for org connection creation. properties: - attributes: - $ref: '#/components/schemas/ServiceAccountCreateAttributes' - relationships: - $ref: '#/components/schemas/UserRelationships' - type: - $ref: '#/components/schemas/UsersType' + sink_org: + $ref: '#/components/schemas/OrgConnectionOrgRelationship' required: - - attributes - - type + - sink_org type: object - Team: - description: A team + OrgConnectionUpdateAttributes: + description: Attributes for updating an org connection. properties: - attributes: - $ref: '#/components/schemas/TeamAttributes' - id: - description: The team's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/TeamRelationships' - type: - $ref: '#/components/schemas/TeamType' + connection_types: + description: Updated list of connection types. + example: + - logs + - metrics + items: + $ref: '#/components/schemas/OrgConnectionTypeEnum' + minItems: 1 + type: array required: - - attributes - - id - - type + - connection_types type: object - TeamIncluded: - description: Included resources related to the team - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/TeamLink' - - $ref: '#/components/schemas/UserTeamPermission' - TeamsResponseLinks: - description: Teams response links. + OrgGroupMembershipAttributes: + description: Attributes of an org group membership. properties: - first: - description: First link. + created_at: + description: Timestamp when the membership was created. + example: '2024-01-15T10:30:00Z' + format: date-time type: string - last: - description: Last link. - nullable: true + modified_at: + description: Timestamp when the membership was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time type: string - next: - description: Next link. + org_name: + description: The name of the member organization. + example: Acme Corp type: string - prev: - description: Previous link. - nullable: true + org_site: + description: The site of the member organization. + example: us1 type: string - self: - description: Current link. + org_uuid: + description: The UUID of the member organization. + example: c3d4e5f6-a7b8-9012-cdef-012345678901 + format: uuid type: string - type: object - TeamsResponseMeta: - description: Teams response metadata. - properties: - pagination: - $ref: '#/components/schemas/TeamsResponseMetaPagination' - type: object - TeamCreate: - description: Team create - properties: - attributes: - $ref: '#/components/schemas/TeamCreateAttributes' - relationships: - $ref: '#/components/schemas/TeamCreateRelationships' - type: - $ref: '#/components/schemas/TeamType' required: - - attributes - - type + - org_name + - org_uuid + - org_site + - created_at + - modified_at type: object - TeamSyncData: - description: Team sync data. + OrgGroupMembershipRelationships: + description: Relationships of an org group membership. properties: - attributes: - $ref: '#/components/schemas/TeamSyncAttributes' - type: - $ref: '#/components/schemas/TeamSyncBulkType' - required: - - attributes - - type + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' type: object - MemberTeam: - description: A member team + OrgGroupMembershipType: + description: Org group memberships resource type. + enum: + - org_group_memberships + example: org_group_memberships + type: string + x-enum-varnames: + - ORG_GROUP_MEMBERSHIPS + OrgGroupPaginationMetaPage: + description: Page-based pagination details for org group list responses. properties: - id: - description: The member team's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string + first_number: + description: First page number. + format: int64 + type: integer + last_number: + description: Last page number. + format: int64 + nullable: true + type: integer + next_number: + description: Next page number. + format: int64 + nullable: true + type: integer + number: + description: Page number. + format: int64 + type: integer + prev_number: + description: Previous page number. + format: int64 + nullable: true + type: integer + size: + description: Page size. + format: int64 + type: integer + total: + description: Total number of results. + format: int64 + type: integer type: - $ref: '#/components/schemas/MemberTeamType' - required: - - id - - type + description: Pagination type. + example: number_size + type: string type: object - TeamUpdate: - description: Team update request + OrgGroupMembershipBulkUpdateAttributes: + description: Attributes for bulk updating org group memberships. properties: - attributes: - $ref: '#/components/schemas/TeamUpdateAttributes' - relationships: - $ref: '#/components/schemas/TeamUpdateRelationships' - type: - $ref: '#/components/schemas/TeamType' + orgs: + description: List of organizations to move. Maximum 100 per request. + items: + $ref: '#/components/schemas/GlobalOrgIdentifier' + type: array required: - - attributes - - type + - orgs type: object - TeamLink: - description: Team link + OrgGroupMembershipBulkUpdateRelationships: + description: Relationships for bulk updating memberships. properties: - attributes: - $ref: '#/components/schemas/TeamLinkAttributes' - id: - description: The team link's identifier - example: b8626d7e-cedd-11eb-abf5-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamLinkType' + source_org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' + target_org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' required: - - attributes - - id - - type + - source_org_group + - target_org_group type: object - TeamLinkCreate: - description: Team link create + OrgGroupMembershipBulkUpdateType: + description: Org group membership bulk update resource type. + enum: + - org_group_membership_bulk_updates + example: org_group_membership_bulk_updates + type: string + x-enum-varnames: + - ORG_GROUP_MEMBERSHIP_BULK_UPDATES + OrgGroupMembershipUpdateRelationships: + description: Relationships for updating a membership. properties: - attributes: - $ref: '#/components/schemas/TeamLinkAttributes' - type: - $ref: '#/components/schemas/TeamLinkType' + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' required: - - attributes - - type + - org_group type: object - UserTeam: - description: A user's relationship with a team + OrgGroupPolicyAttributes: + description: Attributes of an org group policy. properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - id: - description: The ID of a user's relationship with a team - example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 + content: + additionalProperties: {} + description: The policy content as key-value pairs. + example: + value: UTC + type: object + enforcement_tier: + $ref: '#/components/schemas/OrgGroupPolicyEnforcementTier' + modified_at: + description: Timestamp when the policy was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time type: string - relationships: - $ref: '#/components/schemas/UserTeamRelationships' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - id - - type - type: object - UserTeamIncluded: - description: Included resources related to the team membership - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Team' - UserTeamCreate: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - relationships: - $ref: '#/components/schemas/UserTeamRelationships' - type: - $ref: '#/components/schemas/UserTeamType' + policy_name: + description: The name of the policy. + example: monitor_timezone + type: string + policy_type: + $ref: '#/components/schemas/OrgGroupPolicyPolicyType' required: - - type + - policy_name + - policy_type + - enforcement_tier + - modified_at type: object - UserTeamUpdate: - description: A user's relationship with a team + OrgGroupPolicyRelationships: + description: Relationships of an org group policy. properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - type + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' type: object - TeamPermissionSetting: - description: Team permission setting + OrgGroupPolicyType: + description: Org group policies resource type. + enum: + - org_group_policies + example: org_group_policies + type: string + x-enum-varnames: + - ORG_GROUP_POLICIES + OrgGroupPolicyCreateAttributes: + description: Attributes for creating an org group policy. If `policy_type` or `enforcement_tier` are not provided, they default to `org_config` and `DEFAULT` respectively. properties: - attributes: - $ref: '#/components/schemas/TeamPermissionSettingAttributes' - id: - description: The team permission setting's identifier - example: TeamPermission-aeadc05e-98a8-11ec-ac2c-da7ad0900001-edit + content: + additionalProperties: {} + description: The policy content as key-value pairs. + example: + value: UTC + type: object + enforcement_tier: + $ref: '#/components/schemas/OrgGroupPolicyEnforcementTier' + policy_name: + description: The name of the policy. + example: monitor_timezone type: string - type: - $ref: '#/components/schemas/TeamPermissionSettingType' + policy_type: + $ref: '#/components/schemas/OrgGroupPolicyPolicyType' required: - - id - - type + - policy_name + - content type: object - TeamPermissionSettingUpdate: - description: Team permission setting update + OrgGroupPolicyCreateRelationships: + description: Relationships for creating a policy. properties: - attributes: - $ref: '#/components/schemas/TeamPermissionSettingUpdateAttributes' - type: - $ref: '#/components/schemas/TeamPermissionSettingType' + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' required: - - type + - org_group type: object - UsageDataObject: - description: Usage data. + OrgGroupPolicyUpdateAttributes: + description: Attributes for updating an org group policy. properties: - attributes: - $ref: '#/components/schemas/UsageAttributesObject' - id: - description: Unique ID of the response. + content: + additionalProperties: {} + description: The policy content as key-value pairs. + example: + value: UTC + type: object + enforcement_tier: + $ref: '#/components/schemas/OrgGroupPolicyEnforcementTier' + type: object + OrgGroupPolicyConfigAttributes: + description: Attributes of an org group policy config. + properties: + allowed_values: + description: The allowed values for this config. + example: + - UTC + - US/Eastern + - US/Pacific + items: + description: An allowed value for this config. + type: string + type: array + default_value: + description: The default value for this config. + example: UTC + description: + description: The description of the policy config. + example: The default timezone for monitors. type: string - type: - $ref: '#/components/schemas/UsageTimeSeriesType' + name: + description: The name of the policy config. + example: monitor_timezone + type: string + value_type: + description: The type of the value for this config. + example: string + type: string + required: + - name + - description + - value_type + - allowed_values + - default_value type: object - BillingDimensionsMappingBody: - description: Billing dimensions mapping data. - items: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItem' - type: array - CostByOrg: - description: Cost data. + OrgGroupPolicyConfigType: + description: Org group policy configs resource type. + enum: + - org_group_policy_configs + example: org_group_policy_configs + type: string + x-enum-varnames: + - ORG_GROUP_POLICY_CONFIGS + OrgGroupPolicyOverrideAttributes: + description: Attributes of an org group policy override. properties: - attributes: - $ref: '#/components/schemas/CostByOrgAttributes' - id: - description: Unique ID of the response. + content: + additionalProperties: {} + description: The override content as key-value pairs. + type: object + created_at: + description: Timestamp when the override was created. + example: '2024-01-15T10:30:00Z' + format: date-time type: string - type: - $ref: '#/components/schemas/CostByOrgType' + modified_at: + description: Timestamp when the override was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + org_site: + description: The site of the organization that has the override. + example: us1 + type: string + org_uuid: + description: The UUID of the organization that has the override. + example: c3d4e5f6-a7b8-9012-cdef-012345678901 + format: uuid + type: string + required: + - org_uuid + - org_site + - created_at + - modified_at type: object - HourlyUsage: - description: Hourly usage for a product family for an org. + OrgGroupPolicyOverrideRelationships: + description: Relationships of an org group policy override. properties: - attributes: - $ref: '#/components/schemas/HourlyUsageAttributes' - id: - description: Unique ID of the response. + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' + org_group_policy: + $ref: '#/components/schemas/OrgGroupPolicyRelationshipToOne' + type: object + OrgGroupPolicyOverrideType: + description: Org group policy overrides resource type. + enum: + - org_group_policy_overrides + example: org_group_policy_overrides + type: string + x-enum-varnames: + - ORG_GROUP_POLICY_OVERRIDES + OrgGroupPolicyOverrideCreateAttributes: + description: Attributes for creating a policy override. + properties: + org_site: + description: The site of the organization. + example: us1 type: string - type: - $ref: '#/components/schemas/UsageTimeSeriesType' + org_uuid: + description: The UUID of the organization to grant the override. + example: c3d4e5f6-a7b8-9012-cdef-012345678901 + format: uuid + type: string + required: + - org_uuid + - org_site type: object - HourlyUsageMetadata: - description: The object containing document metadata. + OrgGroupPolicyOverrideCreateRelationships: + description: Relationships for creating a policy override. properties: - pagination: - $ref: '#/components/schemas/HourlyUsagePagination' + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' + org_group_policy: + $ref: '#/components/schemas/OrgGroupPolicyRelationshipToOne' + required: + - org_group + - org_group_policy type: object - ProjectedCost: - description: Projected Cost data. + OrgGroupPolicyOverrideUpdateAttributes: + description: Attributes for updating a policy override. The `org_uuid` and `org_site` fields must match the existing override and cannot be changed. properties: - attributes: - $ref: '#/components/schemas/ProjectedCostAttributes' - id: - description: Unique ID of the response. + org_site: + description: The site of the organization. + example: us1 type: string - type: - $ref: '#/components/schemas/ProjectedCostType' + org_uuid: + description: The UUID of the organization. + example: c3d4e5f6-a7b8-9012-cdef-012345678901 + format: uuid + type: string + required: + - org_uuid + - org_site type: object - UserInvitationData: - description: Object to create a user invitation. + OrgGroupPolicySuggestionAttributes: + description: Attributes of an org group policy suggestion. properties: - relationships: - $ref: '#/components/schemas/UserInvitationRelationships' - type: - $ref: '#/components/schemas/UserInvitationsType' + consensus_ratio: + description: The ratio of member orgs whose configuration agrees on the recommended value. + example: 0.75 + format: double + maximum: 1 + minimum: 0 + type: number + policy_name: + description: The name of the suggested policy. + example: monitor_timezone + type: string + recommended_value: + description: The recommended value for the policy, based on member org consensus. + example: UTC + status: + $ref: '#/components/schemas/OrgGroupPolicySuggestionStatus' required: - - type - - relationships + - policy_name + - status + - consensus_ratio + - recommended_value type: object - UserInvitationResponseData: - description: Object of a user invitation returned by the API. + OrgGroupPolicySuggestionRelationships: + description: Relationships of an org group policy suggestion. properties: - attributes: - $ref: '#/components/schemas/UserInvitationDataAttributes' - id: - description: ID of the user invitation. + org_group: + $ref: '#/components/schemas/OrgGroupRelationshipToOne' + type: object + OrgGroupPolicySuggestionType: + description: Org group policy suggestions resource type. + enum: + - org_group_policy_suggestions + example: org_group_policy_suggestions + type: string + x-enum-varnames: + - ORG_GROUP_POLICY_SUGGESTIONS + OrgGroupAttributes: + description: Attributes of an org group. + properties: + created_at: + description: Timestamp when the org group was created. + example: '2024-01-15T10:30:00Z' + format: date-time type: string - relationships: - $ref: '#/components/schemas/UserInvitationRelationships' - type: - $ref: '#/components/schemas/UserInvitationsType' + modified_at: + description: Timestamp when the org group was last modified. + example: '2024-01-15T10:30:00Z' + format: date-time + type: string + name: + description: The name of the org group. + example: My Org Group + type: string + owner_org_site: + description: The site of the organization that owns this org group. + example: us1 + type: string + owner_org_uuid: + description: The UUID of the organization that owns this org group. + example: b2c3d4e5-f6a7-8901-bcde-f01234567890 + format: uuid + type: string + required: + - name + - owner_org_uuid + - owner_org_site + - created_at + - modified_at type: object - UserCreateData: - description: Object to create a user. + OrgGroupType: + description: Org groups resource type. + enum: + - org_groups + example: org_groups + type: string + x-enum-varnames: + - ORG_GROUPS + OrgGroupCreateAttributes: + description: Attributes for creating an org group. properties: - attributes: - $ref: '#/components/schemas/UserCreateAttributes' - relationships: - $ref: '#/components/schemas/UserRelationships' - type: - $ref: '#/components/schemas/UsersType' + name: + description: The name of the org group. + example: My Org Group + type: string required: - - attributes - - type + - name type: object - UserUpdateData: - description: Object to update a user. + OrgGroupUpdateAttributes: + description: Attributes for updating an org group. properties: - attributes: - $ref: '#/components/schemas/UserUpdateAttributes' - id: - description: ID of the user. - example: 00000000-0000-feed-0000-000000000000 + name: + description: The name of the org group. + example: Updated Org Group Name type: string - type: - $ref: '#/components/schemas/UsersType' required: - - attributes - - type - - id + - name type: object - PartialAPIKeyAttributes: - description: Attributes of a partial API key. + PermissionAttributes: + description: Attributes of a permission. properties: - category: - description: The category of the API key. + created: + description: Creation time of the permission. + format: date-time + type: string + description: + description: Description of the permission. + type: string + display_name: + description: Displayed name for the permission. + type: string + display_type: + description: Display type. + type: string + group_name: + description: Name of the permission group. + type: string + name: + description: Name of the permission. type: string + name_aliases: + description: List of alias names for the permission. + items: + description: An alternative name for the permission. + type: string + type: array + restricted: + description: Whether or not the permission is restricted. + type: boolean + type: object + PermissionsType: + default: permissions + description: Permissions resource type. + enum: + - permissions + example: permissions + type: string + x-enum-varnames: + - PERMISSIONS + PersonalAccessTokenAttributes: + description: Attributes of an access token. + properties: created_at: - description: Creation date of the API key. - example: '2020-11-23T10:00:00.000Z' + description: Creation date of the access token. + example: '2024-01-01T00:00:00+00:00' + format: date-time readOnly: true type: string - last4: - description: The last four characters of the API key. - example: abcd - maxLength: 4 - minLength: 4 + expires_at: + description: Expiration date of the access token. + example: '2025-12-31T23:59:59+00:00' + format: date-time + nullable: true readOnly: true type: string - modified_at: - description: Date the API key was last modified. - example: '2020-11-23T10:00:00.000Z' + last_used_at: + description: Date the access token was last used. + example: '2025-06-15T12:30:00+00:00' + format: date-time + nullable: true + readOnly: true + type: string + modified_at: + description: Date of last modification of the access token. + example: '2024-06-01T00:00:00+00:00' + format: date-time + nullable: true readOnly: true type: string name: - description: Name of the API key. - example: API Key for submitting metrics + description: Name of the access token. + example: My Access Token type: string - remote_config_read_enabled: - description: The remote config read enabled status. - type: boolean + public_portion: + description: The public portion of the access token. + example: ddpat_abc123 + readOnly: true + type: string + scopes: + description: Array of scopes granted to the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array type: object - APIKeyRelationships: - description: Resources related to the API key. + AccessTokenListItemRelationships: + description: Resources related to the access token entry in the mixed list response. properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - modified_by: - $ref: '#/components/schemas/NullableRelationshipToUser' + owned_by: + $ref: '#/components/schemas/RelationshipToAccessTokenOwner' type: object - APIKeysType: - default: api_keys - description: API Keys resource type. + AccessTokensType: + description: Resource type returned by the access tokens list endpoint. Includes both personal and service access tokens. enum: - - api_keys - example: api_keys + - personal_access_tokens + - service_access_tokens + example: personal_access_tokens type: string x-enum-varnames: - - API_KEYS - LeakedKey: - description: The definition of LeakedKey object. - properties: - attributes: - $ref: '#/components/schemas/LeakedKeyAttributes' - id: - description: The LeakedKey id. - example: id - type: string - type: - $ref: '#/components/schemas/LeakedKeyType' - required: - - attributes - - id - - type - type: object - APIKeysResponseMetaPage: - description: Additional information related to the API keys response. + - PERSONAL_ACCESS_TOKENS + - SERVICE_ACCESS_TOKENS + PersonalAccessTokenResponseMetaPage: + description: Pagination information. properties: total_filtered_count: - description: Total filtered application key count. + description: Total filtered access token count. format: int64 type: integer type: object - APIKeyCreateAttributes: - description: Attributes used to create an API Key. + PersonalAccessTokenCreateAttributes: + description: Attributes used to create an access token. properties: - category: - description: The APIKeyCreateAttributes category. + expires_at: + description: Expiration date of the access token. Must be at least 24 hours in the future. + example: '2025-12-31T23:59:59+00:00' + format: date-time type: string name: - description: Name of the API key. - example: API Key for submitting metrics + description: Name of the access token. + example: My Personal Access Token type: string - remote_config_read_enabled: - description: The APIKeyCreateAttributes remote_config_read_enabled. - type: boolean + scopes: + description: Array of scopes to grant the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array required: - name + - scopes + - expires_at type: object - FullAPIKeyAttributes: - description: Attributes of a full API key. + PersonalAccessTokensType: + default: personal_access_tokens + description: Personal access tokens resource type. + enum: + - personal_access_tokens + example: personal_access_tokens + type: string + x-enum-varnames: + - PERSONAL_ACCESS_TOKENS + FullPersonalAccessTokenAttributes: + description: Attributes of a full access token, including the token key. properties: - category: - description: The category of the API key. - type: string created_at: - description: Creation date of the API key. - example: '2020-11-23T10:00:00.000Z' + description: Creation date of the access token. + example: '2024-01-01T00:00:00+00:00' format: date-time readOnly: true type: string - key: - description: The API key. - readOnly: true - type: string - last4: - description: The last four characters of the API key. - example: abcd - maxLength: 4 - minLength: 4 + expires_at: + description: Expiration date of the access token. + example: '2025-12-31T23:59:59+00:00' + format: date-time + nullable: true readOnly: true type: string - modified_at: - description: Date the API key was last modified. - example: '2020-11-23T10:00:00.000Z' - format: date-time + key: + description: The access token key. Only returned upon creation. readOnly: true type: string name: - description: Name of the API key. - example: API Key for submitting metrics + description: Name of the access token. + example: My Access Token type: string - remote_config_read_enabled: - description: The remote config read enabled status. - type: boolean + public_portion: + description: The public portion of the access token. + example: ddpat_abc123 + readOnly: true + type: string + scopes: + description: Array of scopes granted to the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array type: object - APIKeyUpdateAttributes: - description: Attributes used to update an API Key. + PersonalAccessTokenRelationships: + description: Resources related to the access token. + properties: + owned_by: + $ref: '#/components/schemas/RelationshipToUser' + type: object + PersonalAccessTokenUpdateAttributes: + description: Attributes used to update an access token. properties: - category: - description: The APIKeyUpdateAttributes category. - type: string name: - description: Name of the API key. - example: API Key for submitting metrics + description: Name of the access token. + example: Updated Personal Access Token type: string - remote_config_read_enabled: - description: The APIKeyUpdateAttributes remote_config_read_enabled. - type: boolean + scopes: + description: Array of scopes to grant the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array + type: object + RestrictionPolicyAttributes: + description: Restriction policy attributes. + example: + bindings: [] + properties: + bindings: + description: An array of bindings. + items: + $ref: '#/components/schemas/RestrictionPolicyBinding' + type: array required: - - name + - bindings type: object - PartialApplicationKeyAttributes: - description: Attributes of a partial application key. + RestrictionPolicyType: + default: restriction_policy + description: Restriction policy type. + enum: + - restriction_policy + example: restriction_policy + type: string + x-enum-varnames: + - RESTRICTION_POLICY + RoleAttributes: + additionalProperties: {} + description: Attributes of the role. properties: created_at: - description: Creation date of the application key. - example: '2020-11-23T10:00:00.000Z' + description: Creation time of the role. + format: date-time readOnly: true type: string - last4: - description: The last four characters of the application key. - example: abcd - maxLength: 4 - minLength: 4 + modified_at: + description: Time of last role modification. + format: date-time readOnly: true type: string name: - description: Name of the application key. - example: Application Key for managing dashboards + description: The name of the role. The name is neither unique nor a stable identifier of the role. type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. items: - description: Name of scope. + description: Name of a managed role to inherit permissions from. type: string - nullable: true type: array + user_count: + description: Number of users with that role. + format: int64 + readOnly: true + type: integer type: object - ApplicationKeyRelationships: - description: Resources related to the application key. + RoleResponseRelationships: + description: Relationships of the role object returned by the API. properties: - owned_by: - $ref: '#/components/schemas/RelationshipToUser' + permissions: + $ref: '#/components/schemas/RelationshipToPermissions' type: object - ApplicationKeysType: - default: application_keys - description: Application Keys resource type. + RolesType: + default: roles + description: Roles type. enum: - - application_keys - example: application_keys + - roles + example: roles type: string x-enum-varnames: - - APPLICATION_KEYS - ApplicationKeyResponseMetaPage: - description: Additional information related to the application key response. + - ROLES + RoleCreateAttributes: + description: Attributes of the created role. properties: - total_filtered_count: - description: Total filtered application key count. - format: int64 - type: integer + created_at: + description: Creation time of the role. + format: date-time + readOnly: true + type: string + modified_at: + description: Time of last role modification. + format: date-time + readOnly: true + type: string + name: + description: Name of the role. + example: developers + type: string + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. + items: + description: Name of a managed role to inherit permissions from. + type: string + type: array + required: + - name type: object - FullApplicationKeyAttributes: - description: Attributes of a full application key. + RoleRelationships: + description: Relationships of the role object. + properties: + permissions: + $ref: '#/components/schemas/RelationshipToPermissions' + type: object + RoleTemplateDataAttributes: + description: The definition of `RoleTemplateDataAttributes` object. + properties: + description: + description: The `attributes` `description`. + type: string + name: + description: The `attributes` `name`. + type: string + type: object + RoleTemplateDataType: + default: roles + description: Roles resource type. + enum: + - roles + example: roles + type: string + x-enum-varnames: + - ROLES + RoleUpdateAttributes: + description: Attributes of the role. properties: created_at: - description: Creation date of the application key. - example: '2020-11-23T10:00:00.000Z' + description: Creation time of the role. format: date-time readOnly: true type: string - key: - description: The application key. - readOnly: true - type: string - last4: - description: The last four characters of the application key. - example: abcd - maxLength: 4 - minLength: 4 + modified_at: + description: Time of last role modification. + format: date-time readOnly: true type: string name: - description: Name of the application key. - example: Application Key for managing dashboards + description: Name of the role. type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. items: - description: Name of scope. + description: Name of a managed role to inherit permissions from. type: string - nullable: true type: array + user_count: + description: The user count. + format: int32 + maximum: 2147483647 + type: integer type: object - ApplicationKeyUpdateAttributes: - description: Attributes used to update an application Key. + RoleCloneAttributes: + description: Attributes required to create a new role by cloning an existing one. properties: name: - description: Name of the application key. - example: Application Key for managing dashboards + description: Name of the new role that is cloned. + example: cloned-role type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share + receives_permissions_from: + description: |- + The managed role from which this role automatically inherits new permissions. + Specify one of the following: "Datadog Admin Role", "Datadog Standard Role", or "Datadog Read Only Role". + If empty or not specified, the role does not automatically inherit permissions from any managed role. items: - description: Name of scope. + description: Name of a managed role to inherit permissions from. type: string - nullable: true type: array + required: + - name type: object - AuditLogsEventAttributes: - description: JSON object containing all event attributes and their associated values. + SAMLConfigurationAttributes: + description: Attributes of a SAML configuration. properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from Audit Logs events. + assertion_consumer_service: + description: The assertion consumer service (ACS) URLs that the identity provider posts SAML responses to. example: - customAttribute: 123 - duration: 2345 - type: object - message: - description: Message of the event. + - https://app.datadoghq.com/account/saml/assertion + items: + description: An assertion consumer service URL. + example: https://app.datadoghq.com/account/saml/assertion + type: string + type: array + created_at: + description: Creation time of the SAML configuration. + format: date-time + readOnly: true type: string - service: - description: >- - Name of the application or service generating Audit Logs events. - - This name is used to correlate Audit Logs to APM, so make sure you - specify the same - - value when you use both products. - example: web-app + entity_id: + description: The service provider entity ID Datadog presents to the identity provider. + example: https://app.datadoghq.com/account/saml/metadata.xml?id=00000000-0000-0000-0000-000000000000 type: string - tags: - description: Array of tags associated with your event. + expires_at: + description: Expiration time of the uploaded identity provider metadata. + example: '2010-10-26T13:31:15+00:00' + format: date-time + nullable: true + type: string + idp_initiated: + description: Whether identity-provider-initiated login is enabled for the organization. + example: true + type: boolean + jit_domains: + description: |- + Email domains for which users are automatically provisioned on first SAML login + (just-in-time provisioning). example: - - team:A + - example.com items: - description: Tag associated with your event. + description: An email domain for just-in-time user provisioning. + example: example.com type: string type: array - timestamp: - description: Timestamp of your event. - example: '2019-01-02T09:42:36.320Z' + modified_at: + description: Time of the last SAML configuration modification. format: date-time + readOnly: true + type: string + sso_url: + description: |- + The single sign-on URL users can visit to start a SAML login. + Returns `null` when the organization is identity-provider-initiated and has no subdomain. + example: https://app.datadoghq.com/account/login/id/00000000-0000-0000-0000-000000000000 + nullable: true type: string type: object - AuditLogsEventType: - default: audit - description: Type of the event. + SAMLConfigurationRelationships: + description: Relationships of a SAML configuration. + properties: + default_roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + SAMLConfigurationsType: + default: saml_configurations + description: SAML configurations resource type. enum: - - audit - example: audit + - saml_configurations + example: saml_configurations type: string x-enum-varnames: - - Audit - AuditLogsResponsePage: - description: Paging attributes. + - SAML_CONFIGURATIONS + SAMLConfigurationUpdateAttributes: + description: Attributes for updating a SAML configuration. properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of - `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + idp_initiated: + description: Whether identity-provider-initiated login is enabled for the organization. + example: true + type: boolean + jit_domains: + description: |- + Email domains for which users are automatically provisioned on first SAML login + (just-in-time provisioning). A default role is required to enable just-in-time provisioning. + example: + - example.com + items: + description: An email domain for just-in-time user provisioning. + example: example.com + maxLength: 255 + minLength: 1 + type: string + maxItems: 50 + minItems: 0 + type: array + type: object + UnassignSeatsUserRequestDataAttributes: + description: Attributes specifying the product and users from whom seats will be unassigned. + properties: + product_code: + description: The product code for which to unassign seats. + example: '' type: string + user_uuids: + description: The list of user IDs to unassign seats from. + example: + - '' + items: + description: A user UUID identifying a user to unassign seats from. + type: string + type: array + required: + - product_code + - user_uuids type: object - AuditLogsResponseStatus: - description: The status of the response. + SeatAssignmentsDataType: + default: seat-assignments + description: Seat assignments resource type. enum: - - done - - timeout - example: done + - seat-assignments + example: seat-assignments type: string x-enum-varnames: - - DONE - - TIMEOUT - AuditLogsWarning: - description: Warning message indicating something that went wrong with the query. + - SEAT_ASSIGNMENTS + SeatUserDataAttributes: + description: Attributes of a user assigned to a seat, including their email, name, and assignment timestamp. properties: - code: - description: Unique code for this type of warning. - example: unknown_index + assigned_at: + description: The date and time the seat was assigned. + example: '2021-01-01T00:00:00Z' + format: date-time + nullable: true type: string - detail: - description: Detailed explanation of this specific warning. - example: 'indexes: foo, bar' + email: + description: The email of the user. + example: user@example.com + nullable: true type: string - title: - description: Short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes + name: + description: The name of the user. + example: John Doe + nullable: true type: string type: object - AuthNMappingAttributes: - description: Attributes of AuthN Mapping. + SeatUserDataType: + default: seat-users + description: Seat users resource type. + enum: + - seat-users + example: seat-users + type: string + x-enum-varnames: + - SEAT_USERS + AssignSeatsUserRequestDataAttributes: + description: Attributes specifying the product and users to whom seats will be assigned. properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of + product_code: + description: The product code for which to assign seats. + example: '' type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development + user_uuids: + description: The list of user IDs to assign seats to. + example: + - '' + items: + description: A user UUID identifying a user to assign a seat to. + type: string + type: array + required: + - product_code + - user_uuids + type: object + AssignSeatsUserResponseDataAttributes: + description: Attributes of the assign seats response, including the list of users assigned and the product code. + properties: + assigned_ids: + description: The list of user IDs to which the seats were assigned. + items: + description: A user UUID identifying a user to whom a seat was assigned. + type: string + type: array + product_code: + description: The product code for which the seats were assigned. + type: string + type: object + ServiceAccountCreateAttributes: + description: Attributes of the created user. + properties: + email: + description: The email of the user. + example: jane.doe@example.com + type: string + name: + description: The name of the user. + type: string + service_account: + description: Whether the user is a service account. Must be true. + example: true + type: boolean + title: + description: The title of the user. type: string + required: + - email + - service_account + type: object + UserRelationships: + description: Relationships of the user object. + properties: + roles: + $ref: '#/components/schemas/RelationshipToRoles' + type: object + ServiceAccessTokenAttributes: + description: Attributes of an access token. + properties: created_at: - description: Creation time of the AuthN Mapping. + description: Creation date of the access token. + example: '2024-01-01T00:00:00+00:00' + format: date-time + readOnly: true + type: string + expires_at: + description: Expiration date of the access token. + example: '2025-12-31T23:59:59+00:00' format: date-time + nullable: true + readOnly: true + type: string + last_used_at: + description: Date the access token was last used. + example: '2025-06-15T12:30:00+00:00' + format: date-time + nullable: true readOnly: true type: string modified_at: - description: Time of last AuthN Mapping modification. + description: Date of last modification of the access token. + example: '2024-06-01T00:00:00+00:00' format: date-time + nullable: true readOnly: true type: string - saml_assertion_attribute_id: - description: The ID of the SAML assertion attribute. - example: '0' + name: + description: Name of the access token. + example: My Access Token type: string - type: object - AuthNMappingRelationships: - description: All relationships associated with AuthN Mapping. - properties: - role: - $ref: '#/components/schemas/RelationshipToRole' - saml_assertion_attribute: - $ref: '#/components/schemas/RelationshipToSAMLAssertionAttribute' - team: - $ref: '#/components/schemas/RelationshipToTeam' - type: object - AuthNMappingsType: - default: authn_mappings - description: AuthN Mappings resource type. - enum: - - authn_mappings - example: authn_mappings - type: string - x-enum-varnames: - - AUTHN_MAPPINGS - SAMLAssertionAttribute: - description: SAML assertion attribute. - properties: - attributes: - $ref: '#/components/schemas/SAMLAssertionAttributeAttributes' - id: - description: The ID of the SAML assertion attribute. - example: '0' + public_portion: + description: The public portion of the access token. + example: ddsat_abc123 + readOnly: true type: string - type: - $ref: '#/components/schemas/SAMLAssertionAttributesType' - required: - - id - - type + scopes: + description: Array of scopes granted to the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array type: object - AuthNMappingTeam: - description: Team. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingTeamAttributes' - id: - description: The ID of the Team. - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamType' + ServiceAccessTokenRelationships: + description: Resources related to the access token. + properties: + owned_by: + $ref: '#/components/schemas/RelationshipToServiceAccount' type: object - Pagination: - description: Pagination object. + ServiceAccessTokensType: + default: service_access_tokens + description: Service access tokens resource type. + enum: + - service_access_tokens + example: service_access_tokens + type: string + x-enum-varnames: + - SERVICE_ACCESS_TOKENS + ServiceAccessTokenResponseMetaPage: + description: Pagination information. properties: - total_count: - description: Total count. - format: int64 - type: integer total_filtered_count: - description: Total count of elements matched by the filter. + description: Total filtered access token count. format: int64 type: integer type: object - AuthNMappingCreateAttributes: - description: Key/Value pair of attributes used for create request. + ServiceAccountAccessTokenCreateAttributes: + description: Attributes used to create a service account access token. properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of + expires_at: + description: Expiration date of the access token. Optional for service account tokens. + example: '2025-12-31T23:59:59+00:00' + format: date-time type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development + name: + description: Name of the access token. + example: Service Account Access Token type: string + scopes: + description: Array of scopes to grant the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array + required: + - name + - scopes type: object - AuthNMappingCreateRelationships: - description: Relationship of AuthN Mapping create object to a Role or Team. - oneOf: - - $ref: '#/components/schemas/AuthNMappingRelationshipToRole' - - $ref: '#/components/schemas/AuthNMappingRelationshipToTeam' - AuthNMappingUpdateAttributes: - description: Key/Value pair of attributes used for update request. + FullServiceAccessTokenAttributes: + description: Attributes of a full access token, including the token key. properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of + created_at: + description: Creation date of the access token. + example: '2024-01-01T00:00:00+00:00' + format: date-time + readOnly: true type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development + expires_at: + description: Expiration date of the access token. + example: '2025-12-31T23:59:59+00:00' + format: date-time + nullable: true + readOnly: true + type: string + key: + description: The access token key. Only returned upon creation. + readOnly: true + type: string + name: + description: Name of the access token. + example: My Access Token + type: string + public_portion: + description: The public portion of the access token. + example: ddsat_abc123 + readOnly: true type: string + scopes: + description: Array of scopes granted to the access token. + example: + - dashboards_read + - dashboards_write + items: + description: Name of scope. + type: string + type: array type: object - AuthNMappingUpdateRelationships: - description: Relationship of AuthN Mapping update object to a Role or Team. - oneOf: - - $ref: '#/components/schemas/AuthNMappingRelationshipToRole' - - $ref: '#/components/schemas/AuthNMappingRelationshipToTeam' - ApplicationKeyCreateAttributes: - description: Attributes used to create an application Key. + ServiceAccountAccessTokenUpdateAttributes: + description: Attributes used to update a service account access token. properties: name: - description: Name of the application key. - example: Application Key for managing dashboards + description: Name of the access token. + example: Updated Service Access Token type: string scopes: - description: Array of scopes to grant the application key. + description: Array of scopes to grant the access token. example: - dashboards_read - dashboards_write - - dashboards_public_share items: description: Name of scope. type: string - nullable: true type: array - required: - - name type: object - CreateDataDeletionRequestBodyAttributes: - description: Attributes for creating a data deletion request. + TeamAttributes: + description: Team attributes properties: - from: - description: Start of requested time window, milliseconds since Unix epoch. - example: 1672527600000 + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: 🥑 + nullable: true + type: string + banner: + description: Banner selection for the team format: int64 + nullable: true type: integer - indexes: - description: >- - List of indexes for the search. If not provided, the search is - performed in all indexes. - example: - - test-index - - test-index-2 + created_at: + description: Creation date of the team + format: date-time + type: string + description: + description: Free-form markdown description/content for the team's homepage + nullable: true + type: string + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + hidden_modules: + description: Collection of hidden modules for the team items: - description: Individual index. + description: String identifier of the module type: string + nullable: true type: array - query: - additionalProperties: - type: string - description: Query for creating a data deletion request. - example: - host: abc - service: xyz - type: object - to: - description: End of requested time window, milliseconds since Unix epoch. - example: 1704063600000 - format: int64 + is_managed: + description: Whether the team is managed from an external source + type: boolean + link_count: + description: The number of links belonging to the team + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + modified_at: + description: Modification date of the team + format: date-time + type: string + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + summary: + description: A brief summary of the team, derived from the `description` + maxLength: 120 + nullable: true + type: string + user_count: + description: The number of users belonging to the team + format: int32 + maximum: 2147483647 + readOnly: true type: integer + visible_modules: + description: Collection of visible modules for the team + items: + description: String identifier of the module + type: string + nullable: true + type: array required: - - query - - from - - to + - handle + - name type: object - CreateDataDeletionRequestBodyDataType: - description: The deletion request type. + TeamRelationships: + description: Resources related to a team + properties: + team_links: + $ref: '#/components/schemas/RelationshipToTeamLinks' + user_team_permissions: + $ref: '#/components/schemas/RelationshipToUserTeamPermission' + type: object + TeamType: + default: team + description: Team type enum: - - create_deletion_req - example: create_deletion_req + - team + example: team type: string x-enum-varnames: - - CREATE_DELETION_REQ - DataDeletionResponseItemAttributes: - description: Deletion attribute for data deletion response. + - TEAM + UserTeamPermission: + description: A user's permissions for a given team properties: - created_at: - description: Creation time of the deletion request. - example: '2024-01-01T00:00:00.000000Z' - type: string - created_by: - description: User who created the deletion request. - example: test.user@datadoghq.com + attributes: + $ref: '#/components/schemas/UserTeamPermissionAttributes' + id: + description: The user team permission's identifier + example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 type: string - from_time: - description: Start of requested time window, milliseconds since Unix epoch. - example: 1672527600000 + type: + $ref: '#/components/schemas/UserTeamPermissionType' + required: + - id + - type + type: object + TeamsResponseMetaPagination: + description: Teams response metadata. + properties: + first_offset: + description: The first offset. format: int64 type: integer - indexes: - description: >- - List of indexes for the search. If not provided, the search is - performed in all indexes. - example: - - test-index - - test-index-2 - items: - description: Individual index. - type: string - type: array - is_created: - description: >- - Whether the deletion request is fully created or not. It can take - several minutes to fully create a deletion request depending on the - target query and timeframe. - example: true - type: boolean - org_id: - description: Organization ID. - example: 321813 + last_offset: + description: The last offset. format: int64 type: integer - product: - description: Product name. - example: logs - type: string - query: - description: Query for creating a data deletion request. - example: service:xyz host:abc - type: string - starting_at: - description: Starting time of the process to delete the requested data. - example: '2024-01-01T02:00:00.000000Z' - type: string - status: - description: Status of the deletion request. - example: pending - type: string - to_time: - description: End of requested time window, milliseconds since Unix epoch. - example: 1704063600000 + limit: + description: Pagination limit. + format: int64 + type: integer + next_offset: + description: The next offset. + format: int64 + type: integer + offset: + description: The offset. + format: int64 + type: integer + prev_offset: + description: The previous offset. format: int64 type: integer - total_unrestricted: - description: >- - Total number of elements to be deleted. Only the data accessible to - the current user that matches the query and timeframe provided will - be deleted. - example: 100 + total: + description: Total results. format: int64 type: integer - updated_at: - description: Update time of the deletion request. - example: '2024-01-01T00:00:00.000000Z' + type: + description: Offset type. type: string - required: - - created_at - - created_by - - from_time - - is_created - - org_id - - product - - query - - starting_at - - status - - to_time - - total_unrestricted - - updated_at type: object - DomainAllowlistResponseDataAttributes: - description: The details of the email domain allowlist. + TeamCreateAttributes: + description: Team creation attributes properties: - domains: - description: The list of domains in the email domain allowlist. + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: 🥑 + nullable: true + type: string + banner: + description: Banner selection for the team + format: int64 + nullable: true + type: integer + description: + description: Free-form markdown description/content for the team's homepage + type: string + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + hidden_modules: + description: Collection of hidden modules for the team items: + description: String identifier of the module type: string type: array - enabled: - description: Whether the email domain allowlist is enabled for the org. - type: boolean - type: object - DomainAllowlistType: - default: domain_allowlist - description: Email domain allowlist allowlist type. - enum: - - domain_allowlist - example: domain_allowlist - type: string - x-enum-varnames: - - DOMAIN_ALLOWLIST - DomainAllowlistAttributes: - description: The details of the email domain allowlist. - properties: - domains: - description: The list of domains in the email domain allowlist. + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + visible_modules: + description: Collection of visible modules for the team items: + description: String identifier of the module type: string type: array - enabled: - description: Whether the email domain allowlist is enabled for the org. - type: boolean + required: + - handle + - name type: object - IPAllowlistAttributes: - description: Attributes of the IP allowlist. + TeamCreateRelationships: + description: Relationships formed with the team on creation properties: - enabled: - description: Whether the IP allowlist logic is enabled or not. - type: boolean - entries: - description: Array of entries in the IP allowlist. - items: - $ref: '#/components/schemas/IPAllowlistEntry' - type: array + users: + $ref: '#/components/schemas/RelationshipToUsers' type: object - IPAllowlistType: - default: ip_allowlist - description: IP allowlist type. + TeamHierarchyLinkAttributes: + description: Team hierarchy link attributes + properties: + created_at: + description: Timestamp when the team hierarchy link was created + example: '' + format: date-time + type: string + provisioned_by: + description: The provisioner of the team hierarchy link + example: system + type: string + required: + - provisioned_by + - created_at + type: object + TeamHierarchyLinkRelationships: + description: Team hierarchy link relationships + properties: + parent_team: + $ref: '#/components/schemas/TeamHierarchyLinkTeamRelationship' + sub_team: + $ref: '#/components/schemas/TeamHierarchyLinkTeamRelationship' + required: + - parent_team + - sub_team + type: object + TeamHierarchyLinkType: + default: team_hierarchy_links + description: Team hierarchy link type enum: - - ip_allowlist - example: ip_allowlist + - team_hierarchy_links + example: team_hierarchy_links type: string x-enum-varnames: - - IP_ALLOWLIST - OrgConfigReadAttributes: - description: Readable attributes of an Org Config. + - TEAM_HIERARCHY_LINKS + TeamHierarchyLinkTeamAttributes: + description: Team hierarchy links connect different teams. This represents attributes from teams that are connected by the team hierarchy link. properties: - description: - description: The description of an Org Config. - example: Frobulate the turbo encabulator manifold - type: string - modified_at: - description: The timestamp of the last Org Config update (if any). - format: date-time + avatar: + description: The team's avatar nullable: true type: string + banner: + description: The team's banner + format: int64 + type: integer + handle: + description: The team's handle + example: team-handle + type: string + is_managed: + description: Whether the team is managed + type: boolean + is_open_membership: + description: Whether the team has open membership + type: boolean + link_count: + description: The number of links for the team + format: int64 + type: integer name: - description: The machine-friendly name of an Org Config. - example: monitor_timezone + description: The team's name + example: Team Name type: string - value: - description: The value of an Org Config. - value_type: - description: The type of an Org Config value. - example: bool + summary: + description: The team's summary + nullable: true type: string + user_count: + description: The number of users in the team + format: int64 + type: integer required: + - handle - name - - description - - value_type - - value type: object - OrgConfigType: - description: Data type of an Org Config. + TeamsHierarchyLinksResponseMetaPage: + description: Metadata related to paging information that is included in the response when querying the team hierarchy links + properties: + first_number: + description: First page number. + format: int64 + type: integer + last_number: + description: Last page number. + format: int64 + type: integer + next_number: + description: Next page number. + format: int64 + nullable: true + type: integer + number: + description: Page number. + format: int64 + type: integer + prev_number: + description: Previous page number. + format: int64 + nullable: true + type: integer + size: + description: Page size. + format: int64 + type: integer + total: + description: Total number of results. + format: int64 + type: integer + type: + description: Pagination type. + example: number_size + type: string + type: object + TeamHierarchyLinkCreateRelationships: + description: The related teams that will be connected by the team hierarchy link + properties: + parent_team: + $ref: '#/components/schemas/TeamHierarchyLinkCreateTeamRelationship' + sub_team: + $ref: '#/components/schemas/TeamHierarchyLinkCreateTeamRelationship' + required: + - parent_team + - sub_team + type: object + TeamConnectionType: + default: team_connection + description: Team connection resource type. enum: - - org_configs - example: org_configs + - team_connection + example: team_connection type: string x-enum-varnames: - - ORG_CONFIGS - OrgConfigWriteAttributes: - description: Writable attributes of an Org Config. + - TEAM_CONNECTION + TeamConnectionAttributes: + description: Attributes of the team connection. properties: - value: - description: The value of an Org Config. - required: - - value + managed_by: + description: The entity that manages this team connection. + example: github_sync + type: string + source: + description: The name of the external source. + example: github + type: string type: object - OrgConnectionAttributes: - description: Org connection attributes. + TeamConnectionRelationships: + description: Relationships of the team connection. properties: - connection_types: - description: List of connection types. - example: - - logs - - metrics - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - type: array - created_at: - description: Timestamp when the connection was created. - example: '2023-01-01T12:00:00Z' - format: date-time + connected_team: + $ref: '#/components/schemas/ConnectedTeamRef' + team: + $ref: '#/components/schemas/TeamRef' + type: object + ConnectionsPagePagination: + description: Page-based pagination metadata. + properties: + first_number: + description: The first page number. + format: int64 + type: integer + last_number: + description: The last page number. + format: int64 + type: integer + next_number: + description: The next page number. + format: int64 + nullable: true + type: integer + number: + description: The current page number. + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + nullable: true + type: integer + size: + description: The page size. + format: int64 + type: integer + total: + description: Total connections matching request. + format: int64 + type: integer + type: + description: Pagination type. + example: number_size type: string - required: - - connection_types - - created_at type: object - OrgConnectionRelationships: - description: Related organizations and user. + TeamSyncAttributes: + description: Team sync attributes. properties: - created_by: - $ref: '#/components/schemas/OrgConnectionUserRelationship' - sink_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - source_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' + frequency: + $ref: '#/components/schemas/TeamSyncAttributesFrequency' + selection_state: + $ref: '#/components/schemas/TeamSyncAttributesSelectionState' + source: + $ref: '#/components/schemas/TeamSyncAttributesSource' + sync_membership: + $ref: '#/components/schemas/TeamSyncAttributesSyncMembership' + type: + $ref: '#/components/schemas/TeamSyncAttributesType' + required: + - source + - type type: object - OrgConnectionType: - description: Org connection type. + TeamSyncBulkType: + description: Team sync bulk type. enum: - - org_connection - example: org_connection + - team_sync_bulk + example: team_sync_bulk + type: string + x-enum-varnames: + - TEAM_SYNC_BULK + MemberTeamType: + default: member_teams + description: Member team type + enum: + - member_teams + example: member_teams type: string x-enum-varnames: - - ORG_CONNECTION - OrgConnectionListResponseMetaPage: - description: Page information. + - MEMBER_TEAMS + TeamUpdateAttributes: + description: Team update attributes properties: - total_count: - description: Total number of org connections. - example: 0 - format: int64 - type: integer - total_filtered_count: - description: Total number of org connections matching the filter. - example: 0 + avatar: + description: Unicode representation of the avatar for the team, limited to a single grapheme + example: 🥑 + nullable: true + type: string + banner: + description: Banner selection for the team format: int64 + nullable: true type: integer - type: object - OrgConnectionCreateAttributes: - description: Attributes for creating an org connection. - properties: - connection_types: - description: List of connection types to establish. - example: - - logs + description: + description: Free-form markdown description/content for the team's homepage + type: string + handle: + description: The team's identifier + example: example-team + maxLength: 195 + type: string + hidden_modules: + description: Collection of hidden modules for the team items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - minItems: 1 + description: String identifier of the module + type: string type: array - required: - - connection_types - type: object - OrgConnectionCreateRelationships: - description: Relationships for org connection creation. - properties: - sink_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - required: - - sink_org - type: object - OrgConnectionUpdateAttributes: - description: Attributes for updating an org connection. - properties: - connection_types: - description: Updated list of connection types. - example: - - logs - - metrics + name: + description: The name of the team + example: Example Team + maxLength: 200 + type: string + visible_modules: + description: Collection of visible modules for the team items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - minItems: 1 + description: String identifier of the module + type: string type: array required: - - connection_types + - handle + - name type: object - PermissionAttributes: - description: Attributes of a permission. + TeamUpdateRelationships: + description: Team update relationships properties: - created: - description: Creation time of the permission. - format: date-time - type: string - description: - description: Description of the permission. + team_links: + $ref: '#/components/schemas/RelationshipToTeamLinks' + type: object + TeamLinkAttributes: + description: Team link attributes + properties: + label: + description: The link's label + example: Link label + maxLength: 256 type: string - display_name: - description: Displayed name for the permission. + position: + description: The link's position, used to sort links for the team + format: int32 + maximum: 2147483647 + type: integer + team_id: + description: ID of the team the link is associated with + readOnly: true type: string - display_type: - description: Display type. + url: + description: The URL for the link + example: https://example.com type: string - group_name: - description: Name of the permission group. + required: + - label + - url + type: object + TeamLinkType: + default: team_links + description: Team link type + enum: + - team_links + example: team_links + type: string + x-enum-varnames: + - TEAM_LINKS + UserTeamAttributes: + description: Team membership attributes + properties: + provisioned_by: + description: |- + The mechanism responsible for provisioning the team relationship. + Possible values: null for added by a user, "service_account" if added by a service account, and "saml_mapping" if provisioned via SAML mapping. + nullable: true + readOnly: true type: string - name: - description: Name of the permission. + provisioned_by_id: + description: UUID of the User or Service Account who provisioned this team membership, or null if provisioned via SAML mapping. + nullable: true + readOnly: true type: string - restricted: - description: Whether or not the permission is restricted. - type: boolean + role: + $ref: '#/components/schemas/UserTeamRole' type: object - PermissionsType: - default: permissions - description: Permissions resource type. + UserTeamRelationships: + description: Relationship between membership and a user + properties: + team: + $ref: '#/components/schemas/RelationshipToUserTeamTeam' + user: + $ref: '#/components/schemas/RelationshipToUserTeamUser' + type: object + UserTeamType: + default: team_memberships + description: Team membership type enum: - - permissions - example: permissions + - team_memberships + example: team_memberships type: string x-enum-varnames: - - PERMISSIONS - RestrictionPolicyAttributes: - description: Restriction policy attributes. - example: - bindings: [] + - TEAM_MEMBERSHIPS + TeamNotificationRuleAttributes: + description: Team notification rule attributes properties: - bindings: - description: An array of bindings. - items: - $ref: '#/components/schemas/RestrictionPolicyBinding' - type: array - required: - - bindings - type: object - RestrictionPolicyType: - default: restriction_policy - description: Restriction policy type. + email: + $ref: '#/components/schemas/TeamNotificationRuleAttributesEmail' + ms_teams: + $ref: '#/components/schemas/TeamNotificationRuleAttributesMsTeams' + pagerduty: + $ref: '#/components/schemas/TeamNotificationRuleAttributesPagerduty' + slack: + $ref: '#/components/schemas/TeamNotificationRuleAttributesSlack' + type: object + TeamNotificationRuleType: + default: team_notification_rules + description: Team notification rule type enum: - - restriction_policy - example: restriction_policy + - team_notification_rules + example: team_notification_rules type: string x-enum-varnames: - - RESTRICTION_POLICY - RoleAttributes: - description: Attributes of the role. + - TEAM_NOTIFICATION_RULES + TeamNotificationRulesResponseMetaPage: + description: Metadata related to paging information that is included in the response when querying the team notification rules properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: >- - The name of the role. The name is neither unique nor a stable - identifier of the role. - type: string - user_count: - description: Number of users with that role. + first_offset: + description: The first offset. + format: int64 + type: integer + last_offset: + description: The last offset. + format: int64 + type: integer + limit: + description: Pagination limit. + format: int64 + type: integer + next_offset: + description: The next offset. + format: int64 + nullable: true + type: integer + offset: + description: The offset. + format: int64 + type: integer + prev_offset: + description: The previous offset. + format: int64 + nullable: true + type: integer + total: + description: Total results. format: int64 - readOnly: true type: integer + type: + description: Offset type. + type: string type: object - RoleResponseRelationships: - description: Relationships of the role object returned by the API. + TeamPermissionSettingAttributes: + description: Team permission setting attributes properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' + action: + $ref: '#/components/schemas/TeamPermissionSettingSerializerAction' + editable: + description: Whether or not the permission setting is editable by the current user + readOnly: true + type: boolean + options: + $ref: '#/components/schemas/TeamPermissionSettingValues' + title: + description: The team permission name + readOnly: true + type: string + value: + $ref: '#/components/schemas/TeamPermissionSettingValue' type: object - RolesType: - default: roles - description: Roles type. + TeamPermissionSettingType: + default: team_permission_settings + description: Team permission setting type enum: - - roles - example: roles + - team_permission_settings + example: team_permission_settings type: string x-enum-varnames: - - ROLES - RoleCreateAttributes: - description: Attributes of the created role. + - TEAM_PERMISSION_SETTINGS + TeamPermissionSettingUpdateAttributes: + description: Team permission setting update attributes properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true + value: + $ref: '#/components/schemas/TeamPermissionSettingValue' + type: object + UsageAttributesObject: + description: Usage attributes data. + properties: + org_name: + description: The organization name. type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true + product_family: + description: The product for which usage is being reported. type: string - name: - description: Name of the role. - example: developers + public_id: + description: The organization public ID. type: string - required: - - name + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + timeseries: + description: List of usage data reported for each requested hour. + items: + $ref: '#/components/schemas/UsageTimeSeriesObject' + type: array + usage_type: + $ref: '#/components/schemas/HourlyUsageType' type: object - RoleRelationships: - description: Relationships of the role object. + UsageTimeSeriesType: + default: usage_timeseries + description: Type of usage data. + enum: + - usage_timeseries + example: usage_timeseries + type: string + x-enum-varnames: + - USAGE_TIMESERIES + BillingDimensionsMappingBodyItem: + description: The mapping data for each billing dimension. properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' + attributes: + $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributes' + id: + description: ID of the billing dimension. + type: string + type: + $ref: '#/components/schemas/ActiveBillingDimensionsType' type: object - RoleUpdateAttributes: - description: Attributes of the role. + CostByOrgAttributes: + description: Cost attributes data. properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true + account_name: + description: The account name. type: string - modified_at: - description: Time of last role modification. + account_public_id: + description: The account public ID. + type: string + charges: + description: List of charges data reported for the requested month. + items: + $ref: '#/components/schemas/ChargebackBreakdown' + type: array + date: + description: The month requested. format: date-time - readOnly: true type: string - name: - description: Name of the role. + org_name: + description: The organization name. type: string - user_count: - description: The user count. - format: int32 - maximum: 2147483647 - type: integer - type: object - RoleCloneAttributes: - description: Attributes required to create a new role by cloning an existing one. - properties: - name: - description: Name of the new role that is cloned. - example: cloned-role + public_id: + description: The organization public ID. type: string - required: - - name + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + total_cost: + description: The total cost of products for the month. + format: double + type: number type: object - UsersType: - default: users - description: Users resource type. + CostByOrgType: + default: cost_by_org + description: Type of cost data. enum: - - users - example: users + - cost_by_org + example: cost_by_org type: string x-enum-varnames: - - USERS - UserAttributes: - description: Attributes of user object returned by the API. + - COST_BY_ORG + HourlyUsageAttributes: + description: Attributes of hourly usage for a product family for an org for a time period. properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. + account_name: + description: The account name. type: string - handle: - description: Handle of the user. + account_public_id: + description: The account public ID. type: string - icon: - description: URL of the user's icon. + measurements: + description: List of the measured usage values for the product family for the org for the time period. + items: + $ref: '#/components/schemas/HourlyUsageMeasurement' + type: array + org_name: + description: The organization name. type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time + product_family: + description: The product for which usage is being reported. type: string - name: - description: Name of the user. - nullable: true + public_id: + description: The organization public ID. type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. + region: + description: The region of the Datadog instance that the organization belongs to. type: string - title: - description: Title of the user. - nullable: true + timestamp: + description: Datetime in ISO-8601 format, UTC. The hour for the usage. + format: date-time type: string - verified: - description: Whether the user is verified. - type: boolean - type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. - properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' type: object - Organization: - description: Organization object. + HourlyUsagePagination: + description: The metadata for the current pagination. properties: - attributes: - $ref: '#/components/schemas/OrganizationAttributes' - id: - description: ID of the organization. + next_record_id: + description: The cursor to get the next results (if any). To make the next request, use the same parameters and add `next_record_id`. + nullable: true type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - type type: object - ServiceAccountCreateAttributes: - description: Attributes of the created user. + ProjectedCostAttributes: + description: Projected Cost attributes data. properties: - email: - description: The email of the user. - example: jane.doe@example.com + account_name: + description: The account name. type: string - name: - description: The name of the user. + account_public_id: + description: The account public ID. type: string - service_account: - description: Whether the user is a service account. Must be true. - example: true - type: boolean - title: - description: The title of the user. + charges: + description: List of charges data reported for the requested month. + items: + $ref: '#/components/schemas/ChargebackBreakdown' + type: array + date: + description: The month requested. + format: date-time type: string - required: - - email - - service_account + org_name: + description: The organization name. + type: string + projected_total_cost: + description: The total projected cost of products for the month. + format: double + type: number + public_id: + description: The organization public ID. + type: string + region: + description: The region of the Datadog instance that the organization belongs to. + type: string + type: object + ProjectedCostType: + default: projected_cost + description: Type of cost data. + enum: + - projected_cost + example: projected_cost + type: string + x-enum-varnames: + - PROJECt_COST + UsageSummaryAvailableFieldsAttributes: + description: |- + The lists of field names returned by `GET /api/v1/usage/summary` at each + of its three response levels. Each list contains every key the data endpoint + emits—both typed fields declared in the OpenAPI spec and untyped keys + exposed through `additionalProperties`. + properties: + date_fields: + description: |- + Sorted list of every key returned inside each `UsageSummaryDate` + entry of `usage[]` (typed fields and `additionalProperties` keys + combined). + items: + type: string + type: array + date_org_fields: + description: |- + Sorted list of every key returned inside each `UsageSummaryDateOrg` + entry of `usage[].orgs[]` (typed fields and `additionalProperties` + keys combined). + items: + type: string + type: array + response_fields: + description: |- + Sorted list of every key returned as a direct property of + `UsageSummaryResponse` (typed fields and `additionalProperties` + keys combined). + items: + type: string + type: array type: object - UserRelationships: - description: Relationships of the user object. + UsageSummaryAvailableFieldsType: + default: usage_summary_available_fields + description: Type of available-fields data. + enum: + - usage_summary_available_fields + type: string + x-enum-varnames: + - USAGE_SUMMARY_AVAILABLE_FIELDS + UsageAttributionTypesAttributes: + description: List of usage attribution types. properties: - roles: - $ref: '#/components/schemas/RelationshipToRoles' + values: + description: List of usage attribution types. + items: + description: A given usage type in a list. + example: infra_host + type: string + type: array type: object - TeamAttributes: - description: Team attributes + UsageAttributionTypesType: + default: usage_attribution_types + description: Type of usage attribution types data. + enum: + - usage_attribution_types + type: string + x-enum-varnames: + - USAGE_ATTRIBUTION_TYPES + UserAuthorizedClientAttributes: + description: Attributes of a user authorized client. properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer created_at: - description: Creation date of the team + description: The date and time this authorization was created. + example: '2024-01-10T08:00:00+00:00' format: date-time type: string - description: - description: Free-form markdown description/content for the team's homepage + disabled: + description: Whether the user has disabled this authorization. + example: false + type: boolean + last_exercised: + description: The date and time this authorization was last exercised. + example: '2024-01-15T10:30:00+00:00' + format: date-time nullable: true type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - link_count: - description: The number of links belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer modified_at: - description: Modification date of the team + description: The date and time this authorization was last modified. + example: '2024-01-10T08:00:00+00:00' format: date-time type: string - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - summary: - description: A brief summary of the team, derived from the `description` - maxLength: 120 - nullable: true - type: string - user_count: - description: The number of users belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array + org_disabled: + description: Whether the organization has disabled this authorization. + example: false + type: boolean required: - - handle - - name + - created_at + - modified_at + - last_exercised + - disabled + - org_disabled type: object - TeamRelationships: - description: Resources related to a team + UserAuthorizedClientRelationships: + description: Relationships for a user authorized client. properties: - team_links: - $ref: '#/components/schemas/RelationshipToTeamLinks' - user_team_permissions: - $ref: '#/components/schemas/RelationshipToUserTeamPermission' + oauth2_client: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipOAuth2Client' + scopes: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipScopes' + user: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipUser' + required: + - user + - oauth2_client + - scopes type: object - TeamType: - default: team - description: Team type + UserAuthorizedClientType: + description: The resource type for user authorized clients. enum: - - team - example: team + - user_authorized_clients + example: user_authorized_clients type: string x-enum-varnames: - - TEAM - UserTeamPermission: - description: A user's permissions for a given team + - USER_AUTHORIZED_CLIENTS + UserInvitationRelationships: + description: Relationships data for user invitation. properties: - attributes: - $ref: '#/components/schemas/UserTeamPermissionAttributes' - id: - description: The user team permission's identifier - example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 - type: string - type: - $ref: '#/components/schemas/UserTeamPermissionType' + user: + $ref: '#/components/schemas/RelationshipToUser' required: - - id - - type + - user type: object - TeamsResponseMetaPagination: - description: Teams response metadata. + UserInvitationsType: + default: user_invitations + description: User invitations type. + enum: + - user_invitations + example: user_invitations + type: string + x-enum-varnames: + - USER_INVITATIONS + UserInvitationDataAttributes: + description: Attributes of a user invitation. properties: - first_offset: - description: The first offset. - format: int64 - type: integer - last_offset: - description: The last offset. - format: int64 - type: integer - limit: - description: Pagination limit. - format: int64 - type: integer - next_offset: - description: The next offset. - format: int64 - type: integer - offset: - description: The offset. - format: int64 - type: integer - prev_offset: - description: The previous offset. - format: int64 - type: integer - total: - description: Total results. - format: int64 - type: integer - type: - description: Offset type. + created_at: + description: Creation time of the user invitation. + format: date-time type: string - type: object - TeamCreateAttributes: - description: Team creation attributes - properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true + expires_at: + description: Time of invitation expiration. + format: date-time type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - description: - description: Free-form markdown description/content for the team's homepage + invite_type: + description: Type of invitation. type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 + uuid: + description: UUID of the user invitation. + type: string + type: object + UserCreateAttributes: + description: Attributes of the created user. + properties: + email: + description: The email of the user. + example: jane.doe@example.com type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array name: - description: The name of the team - example: Example Team - maxLength: 200 + description: The name of the user. + type: string + title: + description: The title of the user. type: string - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array required: - - handle - - name + - email type: object - TeamCreateRelationships: - description: Relationships formed with the team on creation + UserOverrideIdentityProviderData: + description: Data object representing a user identity provider override. properties: - users: - $ref: '#/components/schemas/RelationshipToUsers' + attributes: + $ref: '#/components/schemas/UserOverrideIdentityProviderAttributes' + id: + description: The unique identifier of the identity provider. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/UserOverrideIdentityProviderDataType' + required: + - id + - type + - attributes type: object - TeamSyncAttributes: - description: Team sync attributes. + UserRelationshipIdentityProviderData: + description: Resource identifier for an identity provider in a relationship update. properties: - source: - $ref: '#/components/schemas/TeamSyncAttributesSource' + id: + description: The unique identifier of the identity provider. + example: 00000000-0000-0000-0000-000000000001 + type: string type: - $ref: '#/components/schemas/TeamSyncAttributesType' + $ref: '#/components/schemas/UserRelationshipIdentityProviderDataType' required: - - source + - id - type type: object - TeamSyncBulkType: - description: Team sync bulk type. - enum: - - team_sync_bulk - example: team_sync_bulk - type: string - x-enum-varnames: - - TEAM_SYNC_BULK - MemberTeamType: - default: member_teams - description: Member team type + ValidateV2Attributes: + description: Attributes of the API key validation response. + properties: + api_key_id: + description: The UUID of the API key. + example: a1b2c3d4-e5f6-47a8-b9c0-d1e2f3a4b5c6 + type: string + api_key_scopes: + description: List of scope names associated with the API key. + example: + - remote_config_read + items: + type: string + type: array + valid: + description: Whether the API key is valid. + example: true + type: boolean + required: + - valid + - api_key_scopes + - api_key_id + type: object + ValidateV2Type: + description: Resource type for the API key validation response. enum: - - member_teams - example: member_teams + - validate_v2 + example: validate_v2 type: string x-enum-varnames: - - MEMBER_TEAMS - TeamUpdateAttributes: - description: Team update attributes + - ValidateV2 + UsageCustomReportsAttributes: + description: The response containing attributes for custom reports. properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true + computed_on: + description: The date the specified custom report was computed. type: string - banner: - description: Banner selection for the team + end_date: + description: The ending date of custom report. + type: string + size: + description: size format: int64 - nullable: true type: integer - description: - description: Free-form markdown description/content for the team's homepage + start_date: + description: The starting date of custom report. type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team + tags: + description: A list of tags to apply to custom reports. items: - description: String identifier of the module + description: A given tag in a list. + example: env type: string type: array - name: - description: The name of the team - example: Example Team - maxLength: 200 + type: object + UsageReportsType: + default: reports + description: The type of reports. + enum: + - reports + example: reports + type: string + x-enum-varnames: + - REPORTS + UsageCustomReportsPage: + description: The object containing page total count. + properties: + total_count: + description: Total page count. + format: int64 + type: integer + type: object + UsageSpecifiedCustomReportsAttributes: + description: The response containing attributes for specified custom reports. + properties: + computed_on: + description: The date the specified custom report was computed. type: string - visible_modules: - description: Collection of visible modules for the team + end_date: + description: The ending date of specified custom report. + type: string + location: + description: A downloadable file for the specified custom reporting file. + example: https://an-s3-or-gs-bucket.s3.amazonaws.com + type: string + size: + description: size + format: int64 + type: integer + start_date: + description: The starting date of specified custom report. + type: string + tags: + description: A list of tags to apply to specified custom reports. items: - description: String identifier of the module + description: A given tag in a list. + example: env type: string type: array - required: - - handle - - name type: object - TeamUpdateRelationships: - description: Team update relationships + UsageSpecifiedCustomReportsPage: + description: The object containing page total count for specified ID. properties: - team_links: - $ref: '#/components/schemas/RelationshipToTeamLinks' + total_count: + description: Total page count. + format: int64 + type: integer type: object - TeamLinkAttributes: - description: Team link attributes + OrganizationSettingsSaml: + description: |- + Set the boolean property enabled to enable or disable single sign on with SAML. + See the SAML documentation for more information about all SAML settings. properties: - label: - description: The link's label - example: Link label - maxLength: 256 - type: string - position: - description: The link's position, used to sort links for the team - format: int32 - maximum: 2147483647 - type: integer - team_id: - description: ID of the team the link is associated with - readOnly: true - type: string - url: - description: The URL for the link - example: https://example.com - type: string - required: - - label - - url + enabled: + description: Whether or not SAML is enabled for this organization. + example: false + type: boolean type: object - TeamLinkType: - default: team_links - description: Team link type - enum: - - team_links - example: team_links - type: string - x-enum-varnames: - - TEAM_LINKS - UserTeamAttributes: - description: Team membership attributes + OrganizationSettingsSamlAutocreateUsersDomains: + description: Has two properties, `enabled` (boolean) and `domains`, which is a list of domains without the @ symbol. properties: - provisioned_by: - description: >- - The mechanism responsible for provisioning the team relationship. - - Possible values: null for added by a user, "service_account" if - added by a service account, and "saml_mapping" if provisioned via - SAML mapping. - nullable: true - readOnly: true - type: string - provisioned_by_id: - description: >- - UUID of the User or Service Account who provisioned this team - membership, or null if provisioned via SAML mapping. - nullable: true - readOnly: true - type: string - role: - $ref: '#/components/schemas/UserTeamRole' + domains: + description: List of domains where the SAML automated user creation is enabled. + items: + description: Domain to automate user creation from. + example: example.com + type: string + type: array + enabled: + description: Whether or not the automated user creation based on SAML domain is enabled. + example: false + type: boolean type: object - UserTeamRelationships: - description: Relationship between membership and a user + OrganizationSettingsSamlIdpInitiatedLogin: + description: Has one property enabled (boolean). properties: - team: - $ref: '#/components/schemas/RelationshipToUserTeamTeam' - user: - $ref: '#/components/schemas/RelationshipToUserTeamUser' + enabled: + description: |- + Whether SAML IdP initiated login is enabled, learn more + in the [SAML documentation](https://docs.datadoghq.com/account_management/saml/#idp-initiated-login). + example: false + type: boolean type: object - UserTeamType: - default: team_memberships - description: Team membership type - enum: - - team_memberships - example: team_memberships - type: string - x-enum-varnames: - - TEAM_MEMBERSHIPS - TeamPermissionSettingAttributes: - description: Team permission setting attributes + OrganizationSettingsSamlStrictMode: + description: Has one property enabled (boolean). properties: - action: - $ref: '#/components/schemas/TeamPermissionSettingSerializerAction' - editable: - description: >- - Whether or not the permission setting is editable by the current - user - readOnly: true + enabled: + description: |- + Whether or not the SAML strict mode is enabled. If true, all users must log in with SAML. + Learn more on the [SAML Strict documentation](https://docs.datadoghq.com/account_management/saml/#saml-strict). + example: false type: boolean - options: - $ref: '#/components/schemas/TeamPermissionSettingValues' - title: - description: The team permission name - readOnly: true + type: object + UsageBillableSummaryKeys: + description: Response with aggregated usage types. + properties: + apm_fargate_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + apm_fargate_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + apm_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + apm_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + apm_profiler_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + apm_profiler_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + apm_trace_search_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + application_security_fargate_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + application_security_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + application_security_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ci_pipeline_indexed_spans_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ci_pipeline_maximum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ci_pipeline_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ci_test_indexed_spans_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ci_testing_maximum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ci_testing_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cloud_cost_management_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cloud_cost_management_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cspm_container_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cspm_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cspm_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + custom_event_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cws_container_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cws_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + cws_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + dbm_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + dbm_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + dbm_normalized_queries_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + dbm_normalized_queries_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + fargate_container_apm_and_profiler_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + fargate_container_apm_and_profiler_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + fargate_container_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + fargate_container_profiler_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + fargate_container_profiler_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + fargate_container_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + incident_management_maximum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + incident_management_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + infra_and_apm_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + infra_and_apm_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + infra_container_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + infra_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + infra_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ingested_spans_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ingested_timeseries_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + ingested_timeseries_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + iot_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + iot_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + lambda_function_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + lambda_function_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_forwarding_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_15day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_180day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_1day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_30day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_360day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_3day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_45day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_60day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_7day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_90day_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_custom_retention_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_indexed_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + logs_ingested_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + network_device_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + network_device_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + npm_flow_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + npm_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + npm_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + observability_pipeline_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + online_archive_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + prof_container_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + prof_host_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + prof_host_top99p: + $ref: '#/components/schemas/UsageBillableSummaryBody' + rum_lite_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + rum_replay_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + rum_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + rum_units_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + sensitive_data_scanner_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + serverless_apm_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + serverless_infra_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + serverless_infra_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + serverless_invocation_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + siem_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + standard_timeseries_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + synthetics_api_tests_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + synthetics_app_testing_maximum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + synthetics_browser_checks_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + timeseries_average: + $ref: '#/components/schemas/UsageBillableSummaryBody' + timeseries_sum: + $ref: '#/components/schemas/UsageBillableSummaryBody' + type: object + HourlyUsageAttributionPagination: + description: The metadata for the current pagination. + properties: + next_record_id: + description: The cursor to get the next results (if any). To make the next request, use the same parameters and add `next_record_id`. + nullable: true type: string - value: - $ref: '#/components/schemas/TeamPermissionSettingValue' type: object - TeamPermissionSettingType: - default: team_permission_settings - description: Team permission setting type - enum: - - team_permission_settings - example: team_permission_settings - type: string - x-enum-varnames: - - TEAM_PERMISSION_SETTINGS - TeamPermissionSettingUpdateAttributes: - description: Team permission setting update attributes + UsageAttributionTagNames: + additionalProperties: + description: |- + A list of values that are associated with each tag key. + + - An empty list means the resource use wasn't tagged with the respective tag. + - Multiple values means the respective tag was applied multiple times on the resource. + - An `` value means the resource was tagged with the respective tag but did not have a value. + items: + description: A given tag in a list. + example: datadog-integrations-lab + type: string + type: array + description: |- + Tag keys and values. + + A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags + configured for usage attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). + In this scenario the API returns the total usage, not broken down by tags. + nullable: true + type: object + UsageAttributionAggregates: + description: An array of available aggregates. + items: + $ref: '#/components/schemas/UsageAttributionAggregatesBody' + type: array + MonthlyUsageAttributionPagination: + description: The metadata for the current pagination. + properties: + next_record_id: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of the `next_record_id`. + nullable: true + type: string + type: object + MonthlyUsageAttributionValues: + description: Fields in Usage Summary by tag(s). + properties: + api_percentage: + description: The percentage of synthetic API test usage by tag(s). + format: double + type: number + api_usage: + description: The synthetic API test usage by tag(s). + format: double + type: number + apm_fargate_percentage: + description: The percentage of APM ECS Fargate task usage by tag(s). + format: double + type: number + apm_fargate_usage: + description: The APM ECS Fargate task usage by tag(s). + format: double + type: number + apm_host_percentage: + description: The percentage of APM host usage by tag(s). + format: double + type: number + apm_host_usage: + description: The APM host usage by tag(s). + format: double + type: number + apm_usm_percentage: + description: The percentage of APM and Universal Service Monitoring host usage by tag(s). + format: double + type: number + apm_usm_usage: + description: The APM and Universal Service Monitoring host usage by tag(s). + format: double + type: number + appsec_fargate_percentage: + description: The percentage of Application Security Monitoring ECS Fargate task usage by tag(s). + format: double + type: number + appsec_fargate_usage: + description: The Application Security Monitoring ECS Fargate task usage by tag(s). + format: double + type: number + appsec_percentage: + description: The percentage of Application Security Monitoring host usage by tag(s). + format: double + type: number + appsec_usage: + description: The Application Security Monitoring host usage by tag(s). + format: double + type: number + asm_serverless_traced_invocations_percentage: + description: The percentage of Application Security Monitoring Serverless traced invocations usage by tag(s). + format: double + type: number + asm_serverless_traced_invocations_usage: + description: The Application Security Monitoring Serverless traced invocations usage by tag(s). + format: double + type: number + bits_ai_investigations_percentage: + description: The percentage of Bits AI `SRE` investigation usage by tag(s). + format: double + type: number + bits_ai_investigations_usage: + description: The Bits AI `SRE` investigation usage by tag(s). + format: double + type: number + browser_percentage: + description: The percentage of synthetic browser test usage by tag(s). + format: double + type: number + browser_usage: + description: The synthetic browser test usage by tag(s). + format: double + type: number + ci_code_coverage_committers_percentage: + description: The percentage of Code Coverage committers usage by tag(s). + format: double + type: number + ci_code_coverage_committers_usage: + description: The total Code Coverage committers usage by tag(s). + format: double + type: number + ci_pipeline_indexed_spans_percentage: + description: The percentage of CI Pipeline Indexed Spans usage by tag(s). + format: double + type: number + ci_pipeline_indexed_spans_usage: + description: The total CI Pipeline Indexed Spans usage by tag(s). + format: double + type: number + ci_test_indexed_spans_percentage: + description: The percentage of CI Test Indexed Spans usage by tag(s). + format: double + type: number + ci_test_indexed_spans_usage: + description: The total CI Test Indexed Spans usage by tag(s). + format: double + type: number + ci_visibility_itr_percentage: + description: The percentage of Git committers for Intelligent Test Runner usage by tag(s). + format: double + type: number + ci_visibility_itr_usage: + description: The Git committers for Intelligent Test Runner usage by tag(s). + format: double + type: number + cloud_siem_percentage: + description: The percentage of Cloud Security Information and Event Management usage by tag(s). + format: double + type: number + cloud_siem_usage: + description: The Cloud Security Information and Event Management usage by tag(s). + format: double + type: number + code_security_host_percentage: + description: The percentage of Code Security host usage by tags. + format: double + type: number + code_security_host_usage: + description: The Code Security host usage by tags. + format: double + type: number + container_excl_agent_percentage: + description: The percentage of container usage without the Datadog Agent by tag(s). + format: double + type: number + container_excl_agent_usage: + description: The container usage without the Datadog Agent by tag(s). + format: double + type: number + container_percentage: + description: The percentage of container usage by tag(s). + format: double + type: number + container_usage: + description: The container usage by tag(s). + format: double + type: number + cspm_containers_percentage: + description: The percentage of Cloud Security Management Pro container usage by tag(s). + format: double + type: number + cspm_containers_usage: + description: The Cloud Security Management Pro container usage by tag(s). + format: double + type: number + cspm_hosts_percentage: + description: The percentage of Cloud Security Management Pro host usage by tag(s). + format: double + type: number + cspm_hosts_usage: + description: The Cloud Security Management Pro host usage by tag(s). + format: double + type: number + custom_event_percentage: + description: The percentage of Custom Events usage by tag(s). + format: double + type: number + custom_event_usage: + description: The total Custom Events usage by tag(s). + format: double + type: number + custom_ingested_timeseries_percentage: + description: The percentage of ingested custom metrics usage by tag(s). + format: double + type: number + custom_ingested_timeseries_usage: + description: The ingested custom metrics usage by tag(s). + format: double + type: number + custom_timeseries_percentage: + description: The percentage of indexed custom metrics usage by tag(s). + format: double + type: number + custom_timeseries_usage: + description: The indexed custom metrics usage by tag(s). + format: double + type: number + cws_containers_percentage: + description: The percentage of Cloud Workload Security container usage by tag(s). + format: double + type: number + cws_containers_usage: + description: The Cloud Workload Security container usage by tag(s). + format: double + type: number + cws_fargate_task_percentage: + description: The percentage of Cloud Workload Security Fargate task usage by tag(s). + format: double + type: number + cws_fargate_task_usage: + description: The Cloud Workload Security Fargate task usage by tag(s). + format: double + type: number + cws_hosts_percentage: + description: The percentage of Cloud Workload Security host usage by tag(s). + format: double + type: number + cws_hosts_usage: + description: The Cloud Workload Security host usage by tag(s). + format: double + type: number + data_jobs_monitoring_usage: + description: The Data Jobs Monitoring usage by tag(s). + format: double + type: number + data_stream_monitoring_usage: + description: The Data Stream Monitoring usage by tag(s). + format: double + type: number + dbm_hosts_percentage: + description: The percentage of Database Monitoring host usage by tag(s). + format: double + type: number + dbm_hosts_usage: + description: The Database Monitoring host usage by tag(s). + format: double + type: number + dbm_queries_percentage: + description: The percentage of Database Monitoring queries usage by tag(s). + format: double + type: number + dbm_queries_usage: + description: The Database Monitoring queries usage by tag(s). + format: double + type: number + error_tracking_percentage: + description: The percentage of error tracking events usage by tag(s). + format: double + type: number + error_tracking_usage: + description: The error tracking events usage by tag(s). + format: double + type: number + estimated_indexed_spans_percentage: + description: The percentage of estimated indexed spans usage by tag(s). + format: double + type: number + estimated_indexed_spans_usage: + description: The estimated indexed spans usage by tag(s). + format: double + type: number + estimated_ingested_spans_percentage: + description: The percentage of estimated ingested spans usage by tag(s). + format: double + type: number + estimated_ingested_spans_usage: + description: The estimated ingested spans usage by tag(s). + format: double + type: number + fargate_percentage: + description: The percentage of Fargate usage by tags. + format: double + type: number + fargate_usage: + description: The Fargate usage by tags. + format: double + type: number + flex_logs_starter_percentage: + description: The percentage of Flex Logs Starter usage by tags. + format: double + type: number + flex_logs_starter_usage: + description: The Flex Logs Starter usage by tags. + format: double + type: number + flex_stored_logs_percentage: + description: The percentage of Flex Stored Logs usage by tags. + format: double + type: number + flex_stored_logs_usage: + description: The Flex Stored Logs usage by tags. + format: double + type: number + functions_percentage: + description: The percentage of Lambda function usage by tag(s). + format: double + type: number + functions_usage: + description: The Lambda function usage by tag(s). + format: double + type: number + incident_management_monthly_active_users_percentage: + description: The percentage of Incident Management monthly active users usage by tag(s). + format: double + type: number + incident_management_monthly_active_users_usage: + description: The Incident Management monthly active users usage by tag(s). + format: double + type: number + indexed_spans_percentage: + description: The percentage of APM Indexed Spans usage by tag(s). + format: double + type: number + indexed_spans_usage: + description: The total APM Indexed Spans usage by tag(s). + format: double + type: number + infra_host_basic_percentage: + description: The percentage of infrastructure host Basic tier usage by tag(s). + format: double + type: number + infra_host_basic_usage: + description: The infrastructure host Basic tier usage by tag(s). + format: double + type: number + infra_host_percentage: + description: The percentage of infrastructure host usage by tag(s). + format: double + type: number + infra_host_usage: + description: The infrastructure host usage by tag(s). + format: double + type: number + ingested_logs_bytes_percentage: + description: The percentage of Ingested Logs usage by tag(s). + format: double + type: number + ingested_logs_bytes_usage: + description: The total Ingested Logs usage by tag(s). + format: double + type: number + ingested_spans_bytes_percentage: + description: The percentage of APM Ingested Spans usage by tag(s). + format: double + type: number + ingested_spans_bytes_usage: + description: The total APM Ingested Spans usage by tag(s). + format: double + type: number + invocations_percentage: + description: The percentage of Lambda invocation usage by tag(s). + format: double + type: number + invocations_usage: + description: The Lambda invocation usage by tag(s). + format: double + type: number + lambda_traced_invocations_percentage: + description: The percentage of Serverless APM usage by tag(s). + format: double + type: number + lambda_traced_invocations_usage: + description: The Serverless APM usage by tag(s). + format: double + type: number + llm_observability_percentage: + description: The percentage of Agent Observability usage by tag(s). + format: double + type: number + llm_observability_usage: + description: The Agent Observability usage by tag(s). + format: double + type: number + llm_spans_percentage: + description: The percentage of LLM Spans usage by tag(s). + format: double + type: number + llm_spans_usage: + description: The LLM Spans usage by tag(s). + format: double + type: number + logs_indexed_15day_percentage: + description: The percentage of Indexed Logs (15-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_15day_usage: + description: The total Indexed Logs (15-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_180day_percentage: + description: The percentage of Indexed Logs (180-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_180day_usage: + description: The total Indexed Logs (180-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_1day_percentage: + description: The percentage of Indexed Logs (1-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_1day_usage: + description: The total Indexed Logs (1-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_30day_percentage: + description: The percentage of Indexed Logs (30-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_30day_usage: + description: The total Indexed Logs (30-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_360day_percentage: + description: The percentage of Indexed Logs (360-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_360day_usage: + description: The total Indexed Logs (360-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_3day_percentage: + description: The percentage of Indexed Logs (3-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_3day_usage: + description: The total Indexed Logs (3-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_45day_percentage: + description: The percentage of Indexed Logs (45-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_45day_usage: + description: The total Indexed Logs (45-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_60day_percentage: + description: The percentage of Indexed Logs (60-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_60day_usage: + description: The total Indexed Logs (60-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_7day_percentage: + description: The percentage of Indexed Logs (7-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_7day_usage: + description: The total Indexed Logs (7-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_90day_percentage: + description: The percentage of Indexed Logs (90-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_90day_usage: + description: The total Indexed Logs (90-day Retention) usage by tag(s). + format: double + type: number + logs_indexed_custom_retention_percentage: + description: The percentage of Indexed Logs (Custom Retention) usage by tag(s). + format: double + type: number + logs_indexed_custom_retention_usage: + description: The total Indexed Logs (Custom Retention) usage by tag(s). + format: double + type: number + mobile_app_testing_percentage: + description: The percentage of Synthetic mobile application test usage by tag(s). + format: double + type: number + mobile_app_testing_usage: + description: The Synthetic mobile application test usage by tag(s). + format: double + type: number + ndm_netflow_percentage: + description: The percentage of Network Device Monitoring NetFlow usage by tag(s). + format: double + type: number + ndm_netflow_usage: + description: The Network Device Monitoring NetFlow usage by tag(s). + format: double + type: number + network_device_wireless_percentage: + description: The percentage of network device wireless usage by tag(s). + format: double + type: number + network_device_wireless_usage: + description: The network device wireless usage by tag(s). + format: double + type: number + npm_host_percentage: + description: The percentage of network host usage by tag(s). + format: double + type: number + npm_host_usage: + description: The network host usage by tag(s). + format: double + type: number + obs_pipeline_bytes_percentage: + description: The percentage of observability pipeline bytes usage by tag(s). + format: double + type: number + obs_pipeline_bytes_usage: + description: The observability pipeline bytes usage by tag(s). + format: double + type: number + obs_pipelines_vcpu_percentage: + description: The percentage of observability pipeline per core usage by tag(s). + format: double + type: number + obs_pipelines_vcpu_usage: + description: The observability pipeline per core usage by tag(s). + format: double + type: number + online_archive_percentage: + description: The percentage of online archive usage by tag(s). + format: double + type: number + online_archive_usage: + description: The online archive usage by tag(s). + format: double + type: number + product_analytics_session_percentage: + description: The percentage of Product Analytics session usage by tag(s). + format: double + type: number + product_analytics_session_usage: + description: The Product Analytics session usage by tag(s). + format: double + type: number + profiled_container_percentage: + description: The percentage of profiled container usage by tag(s). + format: double + type: number + profiled_container_usage: + description: The profiled container usage by tag(s). + format: double + type: number + profiled_fargate_percentage: + description: The percentage of profiled Fargate task usage by tag(s). + format: double + type: number + profiled_fargate_usage: + description: The profiled Fargate task usage by tag(s). + format: double + type: number + profiled_host_percentage: + description: The percentage of profiled hosts usage by tag(s). + format: double + type: number + profiled_host_usage: + description: The profiled hosts usage by tag(s). + format: double + type: number + published_app_percentage: + description: The percentage of published application usage by tag(s). + format: double + type: number + published_app_usage: + description: The published application usage by tag(s). + format: double + type: number + rum_browser_mobile_sessions_percentage: + description: The percentage of RUM Browser and Mobile usage by tag(s). + format: double + type: number + rum_browser_mobile_sessions_usage: + description: The total RUM Browser and Mobile usage by tag(s). + format: double + type: number + rum_ingested_percentage: + description: The percentage of RUM Ingested usage by tag(s). + format: double + type: number + rum_ingested_usage: + description: The total RUM Ingested usage by tag(s). + format: double + type: number + rum_investigate_percentage: + description: The percentage of RUM Investigate usage by tag(s). + format: double + type: number + rum_investigate_usage: + description: The total RUM Investigate usage by tag(s). + format: double + type: number + rum_replay_sessions_percentage: + description: The percentage of RUM Session Replay usage by tag(s). + format: double + type: number + rum_replay_sessions_usage: + description: The total RUM Session Replay usage by tag(s). + format: double + type: number + rum_session_replay_add_on_percentage: + description: The percentage of RUM Session Replay Add-On usage by tag(s). + format: double + type: number + rum_session_replay_add_on_usage: + description: The total RUM Session Replay Add-On usage by tag(s). + format: double + type: number + sca_fargate_percentage: + description: The percentage of Software Composition Analysis Fargate task usage by tag(s). + format: double + type: number + sca_fargate_usage: + description: The total Software Composition Analysis Fargate task usage by tag(s). + format: double + type: number + sds_scanned_bytes_percentage: + description: The percentage of Sensitive Data Scanner usage by tag(s). + format: double + type: number + sds_scanned_bytes_usage: + description: The total Sensitive Data Scanner usage by tag(s). + format: double + type: number + serverless_apps_apm_percentage: + description: The percentage of Serverless Apps APM usage by tag(s). + format: double + type: number + serverless_apps_apm_usage: + description: The total Serverless Apps APM usage by tag(s). + format: double + type: number + serverless_apps_percentage: + description: The percentage of Serverless Apps usage by tag(s). + format: double + type: number + serverless_apps_usage: + description: The total Serverless Apps usage by tag(s). + format: double + type: number + siem_12mo_retention_percentage: + description: The percentage of Cloud SIEM Indexed Logs (12-month retention) usage by tag(s). + format: double + type: number + siem_12mo_retention_usage: + description: The Cloud SIEM Indexed Logs (12-month retention) usage by tag(s). + format: double + type: number + siem_6mo_retention_percentage: + description: The percentage of Cloud SIEM Indexed Logs (6-month retention) usage by tag(s). + format: double + type: number + siem_6mo_retention_usage: + description: The Cloud SIEM Indexed Logs (6-month retention) usage by tag(s). + format: double + type: number + siem_analyzed_logs_add_on_percentage: + description: The percentage of log events analyzed by Cloud SIEM usage by tag(s). + format: double + type: number + siem_analyzed_logs_add_on_usage: + description: The log events analyzed by Cloud SIEM usage by tag(s). + format: double + type: number + siem_ingested_bytes_percentage: + description: The percentage of SIEM usage by tag(s). + format: double + type: number + siem_ingested_bytes_usage: + description: The total SIEM usage by tag(s). + format: double + type: number + snmp_percentage: + description: The percentage of network device usage by tag(s). + format: double + type: number + snmp_usage: + description: The network device usage by tag(s). + format: double + type: number + universal_service_monitoring_percentage: + description: The percentage of universal service monitoring usage by tag(s). + format: double + type: number + universal_service_monitoring_usage: + description: The universal service monitoring usage by tag(s). + format: double + type: number + vuln_management_hosts_percentage: + description: The percentage of Application Vulnerability Management usage by tag(s). + format: double + type: number + vuln_management_hosts_usage: + description: The Application Vulnerability Management usage by tag(s). + format: double + type: number + workflow_executions_percentage: + description: The percentage of workflow executions usage by tag(s). + format: double + type: number + workflow_executions_usage: + description: The total workflow executions usage by tag(s). + format: double + type: number + type: object + LogsByRetentionOrgs: + description: Indexed logs usage summary for each organization for each retention period with usage. properties: - value: - $ref: '#/components/schemas/TeamPermissionSettingValue' + usage: + description: Indexed logs usage summary for each organization. + items: + $ref: '#/components/schemas/LogsByRetentionOrgUsage' + type: array type: object - UsageAttributesObject: - description: Usage attributes data. + LogsRetentionAggSumUsage: + description: Object containing indexed logs usage aggregated across organizations and months for a retention period. properties: - org_name: - description: The organization name. - type: string - product_family: - description: The product for which usage is being reported. - type: string - public_id: - description: The organization public ID. + logs_indexed_logs_usage_agg_sum: + description: Total indexed logs for this retention period. + format: int64 + type: integer + logs_live_indexed_logs_usage_agg_sum: + description: Live indexed logs for this retention period. + format: int64 + type: integer + logs_rehydrated_indexed_logs_usage_agg_sum: + description: Rehydrated indexed logs for this retention period. + format: int64 + type: integer + retention: + description: The retention period in days or "custom" for all custom retention periods. type: string - region: - description: The region of the Datadog instance that the organization belongs to. + type: object + LogsByRetentionMonthlyUsage: + description: Object containing a summary of indexed logs usage by retention period for a single month. + properties: + date: + description: The month for the usage. + format: date-time type: string - timeseries: - description: List of usage data reported for each requested hour. + usage: + description: Indexed logs usage for each active retention for the month. items: - $ref: '#/components/schemas/UsageTimeSeriesObject' + $ref: '#/components/schemas/LogsRetentionSumUsage' type: array - usage_type: - $ref: '#/components/schemas/HourlyUsageType' type: object - UsageTimeSeriesType: - default: usage_timeseries - description: Type of usage data. - enum: - - usage_timeseries - example: usage_timeseries - type: string - x-enum-varnames: - - USAGE_TIMESERIES - BillingDimensionsMappingBodyItem: - description: The mapping data for each billing dimension. + UsageSummaryDateOrg: + description: |- + Global hourly report of all data billed by Datadog for a given organization. + + For SDK users only: all fields at this response level are accessible through the + `additionalProperties` map. Existing typed-field getters are unchanged. New billing + dimensions will not have typed-field getters. Use + [Get available fields for usage summary](https://docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/) + to enumerate every available key. properties: - attributes: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributes' + account_name: + description: The account name. + type: string + account_public_id: + description: The account public id. + type: string + agent_host_top99p: + description: Shows the 99th percentile of all agent hosts over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_agent_builder_ai_credits_sum: + description: Shows the sum of all AI credits used by Agent Builder over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_bits_assistant_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_bits_dev_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI Dev over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_bits_sre_ai_credits_sum: + description: Shows the sum of all AI credits used by Bits AI SRE over all hours in the current date for the given org. + format: int64 + type: integer + ai_credits_sum: + description: Shows the sum of all AI credits over all hours in the current date for the given org. + format: int64 + type: integer + apm_azure_app_service_host_top99p: + description: Shows the 99th percentile of all Azure app services using APM over all hours in the current date for the given org. + format: int64 + type: integer + apm_devsecops_host_top99p: + description: Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_enterprise_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_fargate_count_avg: + description: Shows the average of all APM ECS Fargate tasks over all hours in the current month for the given org. + format: int64 + type: integer + apm_host_top99p: + description: Shows the 99th percentile of all distinct APM hosts over all hours in the current date for the given org. + format: int64 + type: integer + apm_pro_standalone_hosts_top99p: + description: Shows the 99th percentile of all distinct standalone Pro hosts over all hours in the current date for the given org. + format: int64 + type: integer + appsec_fargate_count_avg: + description: Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current month for the given org. + format: int64 + type: integer + asm_serverless_sum: + description: Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current month for the given org. + format: int64 + type: integer + audit_logs_lines_indexed_sum: + deprecated: true + description: Shows the sum of all audit logs lines indexed over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + audit_trail_enabled_hwm: + description: Shows whether Audit Trail is enabled for the current date for the given org. + format: int64 + type: integer + audit_trail_event_forwarding_events_sum: + description: Shows the sum of all Audit Trail event forwarding events over all hours in the current date for the given org. + format: int64 + type: integer + avg_profiled_fargate_tasks: + description: The average total count for Fargate Container Profiler over all hours in the current month for the given org. + format: int64 + type: integer + aws_host_top99p: + description: Shows the 99th percentile of all AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + aws_lambda_func_count: + description: Shows the sum of all AWS Lambda invocations over all hours in the current date for the given org. + format: int64 + type: integer + aws_lambda_invocations_sum: + description: Shows the sum of all AWS Lambda invocations over all hours in the current date for the given org. + format: int64 + type: integer + azure_app_service_top99p: + description: Shows the 99th percentile of all Azure app services over all hours in the current date for the given org. + format: int64 + type: integer + billable_ingested_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for the given org. + format: int64 + type: integer + bits_ai_investigations_sum: + description: Shows the sum of all Bits AI Investigations over all hours in the current date for the given org. + format: int64 + type: integer + browser_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all browser lite sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_replay_session_count_sum: + description: Shows the sum of all browser replay sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + browser_rum_units_sum: + deprecated: true + description: Shows the sum of all browser RUM units over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + ccm_anthropic_spend_last: + description: Shows the last value of Anthropic cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_aws_spend_last: + description: Shows the last value of AWS cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_azure_spend_last: + description: Shows the last value of Azure cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_confluent_spend_last: + description: Shows the last value of Confluent cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_databricks_spend_last: + description: Shows the last value of Databricks cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_elastic_spend_last: + description: Shows the last value of Elastic cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_fastly_spend_last: + description: Shows the last value of Fastly cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_gcp_spend_last: + description: Shows the last value of GCP cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_github_spend_last: + description: Shows the last value of GitHub cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_mongodb_spend_last: + description: Shows the last value of MongoDB cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_oci_spend_last: + description: Shows the last value of OCI cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_openai_spend_last: + description: Shows the last value of OpenAI cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_snowflake_spend_last: + description: Shows the last value of Snowflake cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ccm_spend_monitored_ent_last: + description: Shows the last value of the amount of cloud spend monitored for Enterprise over all hours in the current date for the given org. + format: int64 + type: integer + ccm_spend_monitored_pro_last: + description: Shows the last value of the amount of cloud spend monitored for Pro over all hours in the current date for the given org. + format: int64 + type: integer + ccm_twilio_spend_last: + description: Shows the last value of Twilio cloud spend monitored over all hours in the current date for the given org. + format: int64 + type: integer + ci_pipeline_indexed_spans_sum: + description: Shows the sum of all CI pipeline indexed spans over all hours in the current date for the given org. + format: int64 + type: integer + ci_test_indexed_spans_sum: + description: Shows the sum of all CI test indexed spans over all hours in the current date for the given org. + format: int64 + type: integer + ci_visibility_itr_committers_hwm: + description: Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current date for the given org. + format: int64 + type: integer + ci_visibility_pipeline_committers_hwm: + description: Shows the high-water mark of all CI visibility pipeline committers over all hours in the current date for the given org. + format: int64 + type: integer + ci_visibility_test_committers_hwm: + description: Shows the high-water mark of all CI visibility test committers over all hours in the current date for the given org. + format: int64 + type: integer + cloud_cost_management_aws_host_count_avg: + description: Host count average of Cloud Cost Management for AWS for the given date and given org. + format: int64 + type: integer + cloud_cost_management_azure_host_count_avg: + description: Host count average of Cloud Cost Management for Azure for the given date and given org. + format: int64 + type: integer + cloud_cost_management_gcp_host_count_avg: + description: Host count average of Cloud Cost Management for GCP for the given date and given org. + format: int64 + type: integer + cloud_cost_management_host_count_avg: + description: Host count average of Cloud Cost Management for all cloud providers for the given date and given org. + format: int64 + type: integer + cloud_cost_management_oci_host_count_avg: + description: Average host count for Cloud Cost Management on OCI for the given date and organization. + format: int64 + type: integer + cloud_siem_events_sum: + description: Shows the sum of all Cloud Security Information and Event Management events over all hours in the current date for the given org. + format: int64 + type: integer + cloud_siem_indexed_logs_sum: + description: Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sa_committers_hwm: + description: Shows the high-water mark of all Static Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_analysis_sca_committers_hwm: + description: Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current date for the given org. + format: int64 + type: integer + code_security_host_top99p: + description: Shows the 99th percentile of all Code Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + container_avg: + description: Shows the average of all distinct containers over all hours in the current date for the given org. + format: int64 + type: integer + container_excl_agent_avg: + description: Shows the average of containers without the Datadog Agent over all hours in the current date for the given organization. + format: int64 + type: integer + container_hwm: + description: Shows the high-water mark of all distinct containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_compliance_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_cws_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_container_enterprise_total_count_sum: + description: Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aas_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_aws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_azure_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_compliance_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_cws_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_gcp_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_enterprise_total_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + csm_host_pro_oci_host_count_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_aas_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_aws_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_azure_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_container_avg: + description: Shows the average number of Cloud Security Management Pro containers over all hours in the current date for the given org. + format: int64 + type: integer + cspm_container_hwm: + description: Shows the high-water mark of Cloud Security Management Pro containers over all hours in the current date for the given org. + format: int64 + type: integer + cspm_gcp_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_host_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_hosts_agentless_scanners_sum: + description: Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + cspm_hosts_agentless_scanners_top99p: + description: Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org. + format: int64 + type: integer + custom_historical_ts_avg: + description: Shows the average number of distinct historical custom metrics over all hours in the current date for the given org. + format: int64 + type: integer + custom_live_ts_avg: + description: Shows the average number of distinct live custom metrics over all hours in the current date for the given org. + format: int64 + type: integer + custom_ts_avg: + description: Shows the average number of distinct custom metrics over all hours in the current date for the given org. + format: int64 + type: integer + cws_container_count_avg: + description: Shows the average of all distinct Cloud Workload Security containers over all hours in the current date for the given org. + format: int64 + type: integer + cws_fargate_task_avg: + description: Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + cws_host_top99p: + description: Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_jobs_monitoring_host_hr_sum: + description: Shows the sum of all Data Jobs Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_stream_monitoring_host_count_sum: + description: Shows the sum of all Data Streams Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + data_stream_monitoring_host_count_top99p: + description: Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + dbm_host_top99p_sum: + description: Shows the 99th percentile of all Database Monitoring hosts over all hours in the current month for the given org. + format: int64 + type: integer + dbm_queries_avg_sum: + description: Shows the average of all distinct Database Monitoring normalized queries over all hours in the current month for the given org. + format: int64 + type: integer + do_jobs_monitoring_orchestrators_job_hours_sum: + description: Shows the sum of all orchestrator job hours over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_alibaba_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_aws_sum: + description: Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_azure_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_agent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_infra_basic_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_basic_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_ent_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_gcp_sum: + description: Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_heroku_sum: + description: Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_aas_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_only_vsphere_sum: + description: Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_apm_sum: + description: Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_opentelemetry_sum: + description: Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_pro_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proplus_sum: + description: Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current date for the given org. + format: int64 + type: integer + eph_infra_host_proxmox_sum: + description: Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current date for the given organization. + format: int64 + type: integer + error_tracking_apm_error_events_sum: + description: Shows the sum of all Error Tracking APM error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_error_events_sum: + description: Shows the sum of all Error Tracking error events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_events_sum: + description: Shows the sum of all Error Tracking events over all hours in the current date for the given org. + format: int64 + type: integer + error_tracking_rum_error_events_sum: + description: Shows the sum of all Error Tracking RUM error events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_correlated_events_sum: + description: Shows the sum of all Event Management correlated events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_correlated_related_events_sum: + description: Shows the sum of all Event Management correlated related events over all hours in the current date for the given org. + format: int64 + type: integer + event_management_correlation_sum: + description: Shows the sum of all Event Management correlations over all hours in the current date for the given org. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_avg: + description: The average number of Profiling Fargate tasks over all hours in the current month for the given org. + format: int64 + type: integer + fargate_container_profiler_profiling_fargate_eks_avg: + description: The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current month for the given org. + format: int64 + type: integer + fargate_tasks_count_avg: + description: The average task count for Fargate. + format: int64 + type: integer + fargate_tasks_count_hwm: + description: Shows the high-water mark of all Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + feature_flags_config_requests_sum: + description: Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_large_avg: + description: Shows the average number of Flex Logs Compute Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_medium_avg: + description: Shows the average number of Flex Logs Compute Medium Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_small_avg: + description: Shows the average number of Flex Logs Compute Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xlarge_avg: + description: Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_compute_xsmall_avg: + description: Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_avg: + description: Shows the average number of Flex Logs Starter Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_index_avg: + description: Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_logs_starter_storage_retention_adjustment_avg: + description: Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current date for the given org. + format: int64 + type: integer + flex_stored_logs_avg: + description: Shows the average of all Flex Stored Logs over all hours in the current date for the given org. + format: int64 + type: integer + forwarding_events_bytes_sum: + description: Shows the sum of all log bytes forwarded over all hours in the current date for the given org. + format: int64 + type: integer + gcp_host_top99p: + description: Shows the 99th percentile of all GCP hosts over all hours in the current date for the given org. + format: int64 + type: integer + heroku_host_top99p: + description: Shows the 99th percentile of all Heroku dynos over all hours in the current date for the given org. + format: int64 + type: integer id: - description: ID of the billing dimension. - type: string - type: - $ref: '#/components/schemas/ActiveBillingDimensionsType' - type: object - CostByOrgAttributes: - description: Cost attributes data. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - charges: - description: List of charges data reported for the requested month. - items: - $ref: '#/components/schemas/ChargebackBreakdown' - type: array - date: - description: The month requested. - format: date-time - type: string - org_name: - description: The organization name. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs to. - type: string - total_cost: - description: The total cost of products for the month. - format: double - type: number - type: object - CostByOrgType: - default: cost_by_org - description: Type of cost data. - enum: - - cost_by_org - example: cost_by_org - type: string - x-enum-varnames: - - COST_BY_ORG - HourlyUsageAttributes: - description: >- - Attributes of hourly usage for a product family for an org for a time - period. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - measurements: - description: >- - List of the measured usage values for the product family for the org - for the time period. - items: - $ref: '#/components/schemas/HourlyUsageMeasurement' - type: array - org_name: - description: The organization name. - type: string - product_family: - description: The product for which usage is being reported. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs to. - type: string - timestamp: - description: Datetime in ISO-8601 format, UTC. The hour for the usage. - format: date-time - type: string - type: object - HourlyUsagePagination: - description: The metadata for the current pagination. - properties: - next_record_id: - description: >- - The cursor to get the next results (if any). To make the next - request, use the same parameters and add `next_record_id`. - nullable: true - type: string - type: object - ProjectedCostAttributes: - description: Projected Cost attributes data. - properties: - account_name: - description: The account name. + description: The organization id. type: string - account_public_id: - description: The account public ID. - type: string - charges: - description: List of charges data reported for the requested month. - items: - $ref: '#/components/schemas/ChargebackBreakdown' - type: array - date: - description: The month requested. - format: date-time - type: string - org_name: + incident_management_monthly_active_users_hwm: + description: Shows the high-water mark of incident management monthly active users over all hours in the current date for the given org. + format: int64 + type: integer + incident_management_seats_hwm: + description: Shows the high-water mark of Incident Management seats over all hours on the current date for the given organization. + format: int64 + type: integer + indexed_events_count_sum: + deprecated: true + description: Shows the sum of all log events indexed over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + indexed_points_sum: + description: Shows the sum of all indexed custom metrics points over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_avg: + description: Shows the average of all Infrastructure vCPU cores over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_agent_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_avg: + description: Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_aws_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_azure_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_avg: + description: Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_gcp_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_avg: + description: Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_avg: + description: Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_basic_sum: + description: Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_default_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_agent_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_aws_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_azure_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_gcp_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_avg: + description: Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_nutanix_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_avg: + description: Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_observed_infra_host_vcpu_opentelemetry_sum: + description: Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for the given org. + format: int64 + type: integer + infra_cpu_sum: + description: Shows the sum of all Infrastructure vCPU cores over all hours in the current date for the given org. + format: int64 + type: integer + infra_edge_monitoring_devices_top99p: + description: Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_basic_infra_basic_agent_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_basic_infra_basic_vsphere_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_basic_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current date for the given org. + format: int64 + type: integer + infra_host_top99p: + description: Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + infra_storage_mgmt_objects_count_avg: + description: Shows the average number of storage management objects over all hours in the current date for the given org. + format: int64 + type: integer + ingest_points_sum: + description: Shows the sum of all ingested custom metrics points over all hours in the current date for the given org. + format: int64 + type: integer + ingested_events_bytes_sum: + description: Shows the sum of all log bytes ingested over all hours in the current date for the given org. + format: int64 + type: integer + iot_apm_host_sum: + description: Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current date for the given org. + format: int64 + type: integer + iot_apm_host_top99p: + description: Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current date for the given org. + format: int64 + type: integer + iot_device_agg_sum: + description: Shows the sum of all IoT devices over all hours in the current date for the given org. + format: int64 + type: integer + iot_device_top99p_sum: + description: Shows the 99th percentile of all IoT devices over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_15day_retention_spans_sum: + description: Shows the sum of all Agent Observability 15-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_30day_retention_spans_sum: + description: Shows the sum of all Agent Observability 30-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_60day_retention_spans_sum: + description: Shows the sum of all Agent Observability 60-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_90day_retention_spans_sum: + description: Shows the sum of all Agent Observability 90-day retention spans over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_min_spend_sum: + description: Shows the sum of all Agent Observability minimum spend over all hours in the current date for the given org. + format: int64 + type: integer + llm_observability_sum: + description: Shows the sum of all Agent observability sessions over all hours in the current date for the given org. + format: int64 + type: integer + logs_archive_search_gb_scanned_sum: + description: Shows the sum of all Logs Archive Search scanned data over all hours in the current date for the given org. + format: int64 + type: integer + metric_names_sum: + description: Shows the sum of all custom metric names over all hours in the current date for the given org. + format: int64 + type: integer + mobile_rum_lite_session_count_sum: + deprecated: true + description: Shows the sum of all mobile lite sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_android_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Android over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_flutter_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Flutter over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_ios_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on iOS over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_reactnative_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on React Native over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_roku_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions on Roku over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_session_count_sum: + deprecated: true + description: Shows the sum of all mobile RUM sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + mobile_rum_units_sum: + deprecated: true + description: Shows the sum of all mobile RUM units over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + name: description: The organization name. type: string - projected_total_cost: - description: The total projected cost of products for the month. - format: double - type: number + ndm_netflow_events_sum: + description: Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current date for the given org. + format: int64 + type: integer + netflow_indexed_events_count_sum: + deprecated: true + description: Shows the sum of all Network flows indexed over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + network_device_wireless_top99p: + description: Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current date for the given org. + format: int64 + type: integer + network_path_sum: + description: Shows the sum of all Network Path scheduled tests over all hours in the current date for the given org. + format: int64 + type: integer + npm_host_top99p: + description: Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current date for the given org. + format: int64 + type: integer + observability_pipelines_bytes_processed_sum: + description: Sum of all observability pipelines bytes processed over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_sum: + description: Shows the sum of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + oci_host_top99p: + description: Shows the 99th percentile of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org. + format: int64 + type: integer + on_call_seat_hwm: + description: Shows the high-water mark of On-Call seats over all hours in the current date for the given org. + format: int64 + type: integer + online_archive_events_count_sum: + description: Sum of all online archived events over all hours in the current date for the given org. + format: int64 + type: integer + opentelemetry_apm_host_top99p: + description: Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + opentelemetry_host_top99p: + description: Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org. + format: int64 + type: integer + product_analytics_sum: + description: Shows the sum of all product analytics sessions over all hours in the current date for the given org. + format: int64 + type: integer + profiling_aas_count_top99p: + description: Shows the 99th percentile of all profiled Azure app services over all hours in the current date for all organizations. + format: int64 + type: integer + profiling_host_top99p: + description: Shows the 99th percentile of all profiled hosts over all hours within the current date for the given org. + format: int64 + type: integer + proxmox_host_sum: + description: Sum of all Proxmox hosts over all hours in the current date for the given organization. + format: int64 + type: integer + proxmox_host_top99p: + description: 99th percentile of all Proxmox hosts over all hours in the current date for the given organization. + format: int64 + type: integer public_id: - description: The organization public ID. + description: The organization public id. type: string + published_app_hwm: + description: Shows the high-water mark of all published applications over all hours in the current date for the given org. + format: int64 + type: integer region: - description: The region of the Datadog instance that the organization belongs to. + description: The region of the organization. type: string - type: object - ProjectedCostType: - default: projected_cost - description: Type of cost data. - enum: - - projected_cost - example: projected_cost - type: string - x-enum-varnames: - - PROJECt_COST - UserInvitationRelationships: - description: Relationships data for user invitation. + rum_browser_and_mobile_session_count: + description: Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_browser_legacy_session_count_sum: + description: Shows the sum of all browser RUM legacy sessions over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_lite_session_count_sum: + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_browser_replay_session_count_sum: + description: Shows the sum of all browser RUM Session Replay counts over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_indexed_sessions_sum: + description: Shows the sum of all RUM indexed sessions over all hours in the current date for the given org. + format: int64 + type: integer + rum_ingested_sessions_sum: + description: Shows the sum of all RUM ingested sessions over all hours in the current date for the given org. + format: int64 + type: integer + rum_lite_session_count_sum: + description: Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_android_sum: + description: Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_flutter_sum: + description: Shows the sum of all mobile RUM legacy sessions on Flutter over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_ios_sum: + description: Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_legacy_session_count_roku_sum: + description: Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_android_sum: + description: Shows the sum of all mobile RUM lite sessions on Android over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_flutter_sum: + description: Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_ios_sum: + description: Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_lite_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_roku_sum: + description: Shows the sum of all mobile RUM lite sessions on Roku over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_mobile_lite_session_count_unity_sum: + description: Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_android_sum: + description: Shows the sum of all mobile RUM replay sessions on Android over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_ios_sum: + description: Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_kotlinmultiplatform_sum: + description: Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current date for the given org. + format: int64 + type: integer + rum_mobile_replay_session_count_reactnative_sum: + description: Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current date for the given org. + format: int64 + type: integer + rum_replay_session_count_sum: + description: Shows the sum of all RUM Session Replay counts over all hours in the current date for the given org (To be introduced on October 1st, 2024). + format: int64 + type: integer + rum_session_count_sum: + deprecated: true + description: Shows the sum of all browser RUM lite sessions over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + rum_session_replay_add_on_sum: + description: Shows the sum of all RUM session replay add-on sessions over all hours in the current date for the given org. + format: int64 + type: integer + rum_total_session_count_sum: + description: Shows the sum of RUM sessions (browser and mobile) over all hours in the current date for the given org. + format: int64 + type: integer + rum_units_sum: + deprecated: true + description: Shows the sum of all browser and mobile RUM units over all hours in the current date for the given org (To be deprecated on October 1st, 2024). + format: int64 + type: integer + sca_fargate_count_avg: + description: Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sca_fargate_count_hwm: + description: Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org. + format: int64 + type: integer + sds_apm_scanned_bytes_sum: + description: Sum of all APM bytes scanned with sensitive data scanner over all hours in the current date for the given org. + format: int64 + type: integer + sds_events_scanned_bytes_sum: + description: Sum of all event stream events bytes scanned with sensitive data scanner over all hours in the current date for the given org. + format: int64 + type: integer + sds_logs_scanned_bytes_sum: + description: Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for the given org. + format: int64 + type: integer + sds_rum_scanned_bytes_sum: + description: Sum of all RUM bytes scanned with sensitive data scanner over all hours in the current date for the given org. + format: int64 + type: integer + sds_total_scanned_bytes_sum: + description: Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for the given org. + format: int64 + type: integer + serverless_apps_apm_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_fargate_ecs_tasks_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_apm_excl_fargate_avg: + description: Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_count_avg: + description: Shows the average number of Serverless Apps for Azure for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Function App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps for Azure Web App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_dsm_fargate_tasks_avg: + description: Shows the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM for the given date and given org. + format: int64 + type: integer + serverless_apps_ecs_avg: + description: Shows the average number of Serverless Apps for Elastic Container Service for the given date and given org. + format: int64 + type: integer + serverless_apps_eks_avg: + description: Shows the average number of Serverless Apps for Elastic Kubernetes Service for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_avg: + description: Shows the average number of Serverless Apps excluding Fargate for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_container_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Container App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_function_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Function App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_azure_web_app_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Azure Web App instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_google_cloud_functions_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances for the given date and given org. + format: int64 + type: integer + serverless_apps_google_cloud_run_instances_avg: + description: Shows the average number of Serverless Apps for Google Cloud Platform Cloud Run instances for the given date and given org. + format: int64 + type: integer + serverless_apps_google_count_avg: + description: Shows the average number of Serverless Apps for Google Cloud for the given date and given org. + format: int64 + type: integer + serverless_apps_infra_gcp_gke_autopilot_pods_avg: + description: Shows the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods for the given date and given org. + format: int64 + type: integer + serverless_apps_total_count_avg: + description: Shows the average number of Serverless Apps for Azure and Google Cloud for the given date and given org. + format: int64 + type: integer + siem_12mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_6mo_retention_sum: + description: Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current date for the given org. + format: int64 + type: integer + siem_analyzed_logs_add_on_count_sum: + description: Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current date for the given org. + format: int64 + type: integer + snmp_device_count_sum: + description: Shows the sum of all Network Device Monitoring devices over all hours in the current date for the given org. + format: int64 + type: integer + snmp_device_count_top99p: + description: Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_browser_check_calls_count_sum: + description: Shows the sum of all Synthetic browser tests over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_check_calls_count_sum: + description: Shows the sum of all Synthetic API tests over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_mobile_test_runs_sum: + description: Shows the sum of all Synthetic mobile application tests over all hours in the current date for the given org. + format: int64 + type: integer + synthetics_parallel_testing_max_slots_hwm: + description: Shows the high-water mark of used synthetics parallel testing slots over all hours in the current date for the given org. + format: int64 + type: integer + trace_search_indexed_events_count_sum: + description: Shows the sum of all Indexed Spans indexed over all hours in the current date for the given org. + format: int64 + type: integer + twol_ingested_events_bytes_sum: + description: Shows the sum of all ingested APM span bytes over all hours in the current date for the given org. + format: int64 + type: integer + universal_service_monitoring_host_top99p: + description: Shows the 99th percentile of all Universal Service Monitoring hosts over all hours in the current date for the given org. + format: int64 + type: integer + vsphere_host_top99p: + description: Shows the 99th percentile of all vSphere hosts over all hours in the current date for the given org. + format: int64 + type: integer + vuln_management_host_count_top99p: + description: Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current date for the given org. + format: int64 + type: integer + workflow_executions_usage_sum: + description: Sum of all workflows executed over all hours in the current date for the given org. + format: int64 + type: integer + type: object + x-keep-typed-in-additional-properties: true + UsageTopAvgMetricsPagination: + description: The metadata for the current pagination. properties: - user: - $ref: '#/components/schemas/RelationshipToUser' - required: - - user + limit: + description: Maximum amount of records to be returned. + format: int64 + type: integer + next_record_id: + description: The cursor to get the next results (if any). To make the next request, use the same parameters and add `next_record_id`. + nullable: true + type: string + total_number_of_records: + description: Total number of records. + format: int64 + nullable: true + type: integer type: object - UserInvitationsType: - default: user_invitations - description: User invitations type. + UsageMetricCategory: + description: Contains the metric category. enum: - - user_invitations - example: user_invitations + - standard + - custom type: string x-enum-varnames: - - USER_INVITATIONS - UserInvitationDataAttributes: - description: Attributes of a user invitation. - properties: - created_at: - description: Creation time of the user invitation. - format: date-time - type: string - expires_at: - description: Time of invitation expiration. - format: date-time - type: string - invite_type: - description: Type of invitation. - type: string - uuid: - description: UUID of the user invitation. - type: string - type: object - UserCreateAttributes: - description: Attributes of the created user. - properties: - email: - description: The email of the user. - example: jane.doe@example.com - type: string - name: - description: The name of the user. + - STANDARD + - CUSTOM + AnonymizeUserError: + description: Error encountered when anonymizing a specific user. + properties: + error: + description: Error message describing why anonymization failed. + example: '' type: string - title: - description: The title of the user. + user_id: + description: UUID of the user that failed to be anonymized. + example: 00000000-0000-0000-0000-000000000000 type: string required: - - email - type: object - UserUpdateAttributes: - description: Attributes of the edited user. - properties: - disabled: - description: If the user is enabled or disabled. - type: boolean - email: - description: The email of the user. - type: string - name: - description: The name of the user. - type: string + - user_id + - error type: object NullableRelationshipToUser: description: Relationship to user. @@ -8362,15 +32735,11 @@ components: description: Key/Value pair of attributes used in SAML assertion attributes. properties: attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. + description: Key portion of a key/value pair of the attribute sent from the Identity Provider. example: member-of type: string attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. + description: Value portion of a key/value pair of the attribute sent from the Identity Provider. example: Development type: string type: object @@ -8387,9 +32756,7 @@ components: description: Team attributes. properties: avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme + description: Unicode representation of the avatar for the team, limited to a single grapheme example: 🥑 nullable: true type: string @@ -8426,28 +32793,429 @@ components: readOnly: true type: integer type: object - AuthNMappingRelationshipToRole: - description: Relationship of AuthN Mapping to a Role. + AuthNMappingRelationshipToRole: + description: Relationship of AuthN Mapping to a Role. + properties: + role: + $ref: '#/components/schemas/RelationshipToRole' + required: + - role + type: object + AuthNMappingRelationshipToTeam: + description: Relationship of AuthN Mapping to a Team. + properties: + team: + $ref: '#/components/schemas/RelationshipToTeam' + required: + - team + type: object + RelationshipToOrganization: + description: Relationship to an organization. + properties: + data: + $ref: '#/components/schemas/RelationshipToOrganizationData' + required: + - data + type: object + RelationshipToOrganizations: + description: Relationship to organizations. + properties: + data: + description: Relationships to organization objects. + example: [] + items: + $ref: '#/components/schemas/RelationshipToOrganizationData' + type: array + required: + - data + type: object + RelationshipToUsers: + description: Relationship to users. + properties: + data: + description: Relationships to user objects. + example: [] + items: + $ref: '#/components/schemas/RelationshipToUserData' + type: array + required: + - data + type: object + RelationshipToRoles: + description: Relationship to roles. + properties: + data: + description: An array containing type and the unique identifier of a role. + items: + $ref: '#/components/schemas/RelationshipToRoleData' + type: array + type: object + OrganizationAttributes: + description: Attributes of the organization. + properties: + created_at: + description: Creation time of the organization. + format: date-time + type: string + description: + description: Description of the organization. + type: string + disabled: + description: Whether or not the organization is disabled. + type: boolean + modified_at: + description: Time of last organization modification. + format: date-time + type: string + name: + description: Name of the organization. + type: string + public_id: + description: Public ID of the organization. + type: string + sharing: + description: Sharing type of the organization. + type: string + url: + description: URL of the site that this organization exists at. + type: string + type: object + OrganizationsType: + default: orgs + description: Organizations resource type. + enum: + - orgs + example: orgs + type: string + x-enum-varnames: + - ORGS + GlobalOrg: + description: Organization information for a global organization association. + properties: + name: + description: The name of the organization. + example: Example Org + type: string + public_id: + description: The public identifier of the organization. + example: abcdef12345 + nullable: true + type: string + subdomain: + description: The subdomain used to access the organization, if configured. + example: example + nullable: true + type: string + uuid: + description: The UUID of the organization. + example: 13d10a96-6ff2-49be-be7b-4f56ebb13335 + format: uuid + type: string + required: + - uuid + - name + type: object + GlobalOrgUser: + description: User information for a global organization association. + properties: + handle: + description: The handle of the user. + example: user@example.com + type: string + uuid: + description: The UUID of the user. + example: cfab5cf9-5472-48ea-a79c-a64045f4f745 + format: uuid + type: string + required: + - uuid + - handle + type: object + GlobalOrgsMetaPageType: + description: Type of global orgs pagination. + enum: + - cursor + example: cursor + type: string + x-enum-varnames: + - CURSOR + GovernanceControlParametersMap: + additionalProperties: {} + description: A free-form map of parameter names to their configured values. + type: object + GovernanceControlMitigationDefinitionArray: + description: The mitigations available for a control. + items: + $ref: '#/components/schemas/GovernanceControlMitigationDefinition' + type: array + GovernanceControlParameterDefinitionArray: + description: An array of parameter definitions. + items: + $ref: '#/components/schemas/GovernanceControlParameterDefinition' + type: array + ControlNotificationEventSettingsArray: + description: The notification settings for each supported event type on the control. + items: + $ref: '#/components/schemas/ControlNotificationEventSetting' + type: array + GovernanceControlDetectionAssignmentSource: + description: How the detection's current assignment was determined. Possible values are `auto_resolved`, `manual`, `reassigned`, and `cleared`. + enum: + - auto_resolved + - manual + - reassigned + - cleared + example: manual + type: string + x-enum-varnames: + - AUTO_RESOLVED + - MANUAL + - REASSIGNED + - CLEARED + GovernanceControlDetectionState: + description: The current state of the detection. Possible values are `active`, `exception`, `mitigated`, `inactive`, `obsolete`, `resolved_externally`, and `mitigation_in_progress`. + enum: + - active + - exception + - mitigated + - inactive + - obsolete + - resolved_externally + - mitigation_in_progress + example: active + type: string + x-enum-varnames: + - ACTIVE + - EXCEPTION + - MITIGATED + - INACTIVE + - OBSOLETE + - RESOLVED_EXTERNALLY + - MITIGATION_IN_PROGRESS + GovernanceControlDetectionUpdateState: + description: The new state to set for the detection. Set to `exception` to acknowledge the detection and exclude it from active counts, or `active` to reopen it. + enum: + - exception + - active + example: exception + type: string + x-enum-varnames: + - EXCEPTION + - ACTIVE + GovernanceInsightAttributes: + description: |- + The attributes of a governance insight. Exactly one of `metric_query`, `event_query`, + `usage_query`, `audit_query`, or `percentage_query` is populated, depending on the data + source the insight is computed from; the rest are `null`. + properties: + audit_query: + $ref: '#/components/schemas/GovernanceInsightAuditQuery' + nullable: true + description: + description: A human-readable description of what the insight measures. + example: Number of users who have used the Dashboard in the last 30 days + type: string + display_name: + description: Human-readable name of the insight. + example: Active Dashboards + type: string + event_query: + $ref: '#/components/schemas/GovernanceInsightEventQuery' + nullable: true + metric_query: + $ref: '#/components/schemas/GovernanceInsightMetricQuery' + nullable: true + percentage_query: + $ref: '#/components/schemas/GovernanceInsightPercentageQuery' + nullable: true + product: + description: The product the insight belongs to. + example: Usage + type: string + query_config: + $ref: '#/components/schemas/GovernanceInsightQueryConfig' + nullable: true + sub_product: + description: The sub-product the insight belongs to, if any. + example: Indexes + type: string + time_range: + description: The time range the insight value is computed over, if applicable. + example: month + type: string + unit_name: + description: The unit that the insight's value is measured in. + example: active dashboards + type: string + usage_query: + $ref: '#/components/schemas/GovernanceInsightUsageQuery' + nullable: true + required: + - display_name + - product + - sub_product + - unit_name + - description + - time_range + type: object + GovernanceInsightResourceType: + description: JSON:API resource type for a governance insight. + enum: + - insight + example: insight + type: string + x-enum-varnames: + - INSIGHT + TagRuleCreateType: + description: |- + The rule type allowed when creating a tag rule. Only `surfacing` is accepted at + creation time. + enum: + - surfacing + example: surfacing + type: string + x-enum-varnames: + - SURFACING + TagRuleType: + description: |- + How the rule is enforced. `blocking` rejects telemetry that violates the rule. + `surfacing` only highlights non-compliant telemetry without blocking it. + enum: + - blocking + - surfacing + example: surfacing + type: string + x-enum-varnames: + - BLOCKING + - SURFACING + TagRuleScoreRelationship: + description: A relationship to the compliance score resource for this rule. + properties: + data: + $ref: '#/components/schemas/TagRuleScoreRelationshipData' + required: + - data + type: object + HamrOrgConnectionStatus: + description: |- + Status of the HAMR connection: + - 0: UNSPECIFIED - Connection status not specified + - 1: ONBOARDING - Initial setup of HAMR connection + - 2: PASSIVE - Secondary organization in passive standby mode + - 3: FAILOVER - Liminal status between PASSIVE and ACTIVE + - 4: ACTIVE - Organization is an active failover + - 5: RECOVERY - Recovery operation in progress + enum: + - 0 + - 1 + - 2 + - 3 + - 4 + - 5 + example: 4 + format: int64 + type: integer + x-enum-varnames: + - UNSPECIFIED + - ONBOARDING + - PASSIVE + - FAILOVER + - ACTIVE + - RECOVERY + IPAllowlistEntry: + description: IP allowlist entry object. + properties: + data: + $ref: '#/components/schemas/IPAllowlistEntryData' + required: + - data + type: object + OAuthScopesRestriction: + description: Allowlist of OIDC and permission scopes enforced for the OAuth2 client. + nullable: true properties: - role: - $ref: '#/components/schemas/RelationshipToRole' + oidc_scopes: + description: OIDC scopes the client is restricted to. + example: + - openid + - email + items: + $ref: '#/components/schemas/OAuthOidcScope' + type: array + permission_scopes: + description: Datadog permission scopes the client is restricted to. + example: + - dashboards_read + - metrics_read + items: + description: Datadog permission scope name. + example: dashboards_read + type: string + type: array required: - - role + - oidc_scopes + - permission_scopes type: object - AuthNMappingRelationshipToTeam: - description: Relationship of AuthN Mapping to a Team. + OAuthOidcScope: + description: OIDC scope a client may be restricted to. + enum: + - openid + - profile + - email + - offline_access + example: openid + type: string + x-enum-varnames: + - OPENID + - PROFILE + - EMAIL + - OFFLINE_ACCESS + ManagedOrgsRelationshipToOrg: + description: Relationship to the current organization. properties: - team: - $ref: '#/components/schemas/RelationshipToTeam' + data: + $ref: '#/components/schemas/OrgRelationshipData' required: - - team + - data type: object - IPAllowlistEntry: - description: IP allowlist entry object. + ManagedOrgsRelationshipToOrgs: + description: Relationship to the managed organizations. properties: data: - $ref: '#/components/schemas/IPAllowlistEntryData' + description: List of managed organization references. + items: + $ref: '#/components/schemas/OrgRelationshipData' + type: array + required: + - data + type: object + CustomerOrgDisableStatus: + description: Resulting lifecycle status of the organization after the disable action. + enum: + - disabled + - pending_disable + example: disabled + type: string + x-enum-varnames: + - DISABLED + - PENDING_DISABLE + OrgAuthorizedClientRelationshipOAuth2Client: + description: Relationship to the OAuth2 client for this org authorized client. + properties: + data: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipOAuth2ClientData' + required: + - data + type: object + OrgAuthorizedClientRelationshipUserAuthorizedClients: + description: Relationship to the user authorized clients for this org authorized client. + properties: + data: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsDataList' + links: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsLinks' required: + - links - data type: object OrgConnectionTypeEnum: @@ -8455,11 +33223,13 @@ components: enum: - logs - metrics + - audit example: logs type: string x-enum-varnames: - LOGS - METRICS + - AUDIT OrgConnectionUserRelationship: description: User relationship. properties: @@ -8472,31 +33242,96 @@ components: data: $ref: '#/components/schemas/OrgConnectionOrgRelationshipData' type: object + OrgGroupRelationshipToOne: + description: Relationship to a single org group. + properties: + data: + $ref: '#/components/schemas/OrgGroupRelationshipToOneData' + required: + - data + type: object + GlobalOrgIdentifier: + description: A unique identifier for an organization including its site. + properties: + org_site: + description: The site of the organization. + example: us1 + type: string + org_uuid: + description: The UUID of the organization. + example: c3d4e5f6-a7b8-9012-cdef-012345678901 + format: uuid + type: string + required: + - org_uuid + - org_site + type: object + OrgGroupPolicyEnforcementTier: + default: OVERRIDE_ALLOWED + description: The enforcement tier of the policy. `OVERRIDE_ALLOWED` means the policy is set but member orgs may mutate it. `GROUP_MANAGED` means the policy is strictly controlled and mutations are blocked for affected orgs. `DELEGATE` means each member org controls its own value. + enum: + - OVERRIDE_ALLOWED + - GROUP_MANAGED + - DELEGATE + example: OVERRIDE_ALLOWED + type: string + x-enum-varnames: + - OVERRIDE_ALLOWED + - GROUP_MANAGED + - DELEGATE + OrgGroupPolicyPolicyType: + default: org_config + description: The type of the policy. Only `org_config` is supported, indicating a policy backed by an organization configuration setting. + enum: + - org_config + example: org_config + type: string + x-enum-varnames: + - ORG_CONFIG + OrgGroupPolicyRelationshipToOne: + description: Relationship to a single org group policy. + properties: + data: + $ref: '#/components/schemas/OrgGroupPolicyRelationshipToOneData' + required: + - data + type: object + OrgGroupPolicySuggestionStatus: + description: The status of the policy suggestion. + enum: + - pending + - accepted + - dismissed + example: pending + type: string + x-enum-varnames: + - PENDING + - ACCEPTED + - DISMISSED + RelationshipToAccessTokenOwner: + description: Relationship to the access token's owner. + properties: + data: + $ref: '#/components/schemas/RelationshipToAccessTokenOwnerData' + required: + - data + type: object RestrictionPolicyBinding: description: Specifies which principals are associated with a relation. properties: principals: - description: >- - An array of principals. A principal is a subject or group of - subjects. - - Each principal is formatted as `type:id`. Supported types: `role`, - `team`, `user`, and `org`. - + description: |- + An array of principals. A principal is a subject or group of subjects. + Each principal is formatted as `type:id`. Supported types: `role`, `team`, `user`, and `org`. The org ID can be obtained through the api/v2/current_user API. - The user principal type accepts service account IDs. example: - role:00000000-0000-1111-0000-000000000000 items: - description: >- - Subject or group of subjects. Each principal is formatted as - `type:id`. - + description: |- + Subject or group of subjects. Each principal is formatted as `type:id`. Supported types: `role`, `team`, `user`, and `org`. - The org ID can be obtained through the api/v2/current_user API. - The user principal type accepts service account IDs. type: string type: array @@ -8517,86 +33352,14 @@ components: $ref: '#/components/schemas/RelationshipToPermissionData' type: array type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' - required: - - data - type: object - RelationshipToOrganizations: - description: Relationship to organizations. - properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array - required: - - data - type: object - RelationshipToUsers: - description: Relationship to users. + RelationshipToServiceAccount: + description: Relationship to service account. properties: data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array + $ref: '#/components/schemas/RelationshipToServiceAccountData' required: - data type: object - RelationshipToRoles: - description: Relationship to roles. - properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array - type: object - OrganizationAttributes: - description: Attributes of the organization. - properties: - created_at: - description: Creation time of the organization. - format: date-time - type: string - description: - description: Description of the organization. - type: string - disabled: - description: Whether or not the organization is disabled. - type: boolean - modified_at: - description: Time of last organization modification. - format: date-time - type: string - name: - description: Name of the organization. - type: string - public_id: - description: Public ID of the organization. - type: string - sharing: - description: Sharing type of the organization. - type: string - url: - description: URL of the site that this organization exists at. - type: string - type: object - OrganizationsType: - default: orgs - description: Organizations resource type. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS RelationshipToTeamLinks: description: Relationship between a team and a team link properties: @@ -8620,11 +33383,9 @@ components: description: User team permission attributes properties: permissions: - description: >- - Object of team permission actions and boolean values that a logged - in user can perform on this team. + description: Object of team permission actions and boolean values that a logged in user can perform on this team. (opaque JSON object) readOnly: true - type: object + type: string type: object UserTeamPermissionType: default: user_team_permissions @@ -8635,26 +33396,69 @@ components: type: string x-enum-varnames: - USER_TEAM_PERMISSIONS - TeamSyncAttributesSource: - description: >- - The external source platform for team synchronization. Only "github" is - supported. + TeamHierarchyLinkTeamRelationship: + description: Team hierarchy link team relationship + properties: + data: + $ref: '#/components/schemas/TeamHierarchyLinkTeam' + required: + - data + type: object + TeamHierarchyLinkCreateTeamRelationship: + description: Data about each team that will be connected by the team hierarchy link + properties: + data: + $ref: '#/components/schemas/TeamHierarchyLinkCreateTeam' + required: + - data + type: object + ConnectedTeamRef: + description: Reference to a team from an external system. + properties: + data: + $ref: '#/components/schemas/ConnectedTeamRefData' + type: object + TeamRef: + description: Reference to a Datadog team. + properties: + data: + $ref: '#/components/schemas/TeamRefData' + type: object + TeamSyncAttributesFrequency: + description: How often the sync process should be run. Defaults to `once` when not provided. enum: - - github - example: github + - once + - continuously + - paused + example: once type: string x-enum-varnames: - - GITHUB + - ONCE + - CONTINUOUSLY + - PAUSED + TeamSyncAttributesSelectionState: + description: |- + Specifies which teams or organizations to sync. When + provided, synchronization is limited to the specified + items and their subtrees. + items: + $ref: '#/components/schemas/TeamSyncSelectionStateItem' + type: array + TeamSyncAttributesSyncMembership: + default: false + description: Whether to sync members from the external team to the Datadog team. Defaults to `false` when not provided. + example: true + type: boolean TeamSyncAttributesType: - description: >- - The type of synchronization operation. Only "link" is supported, which - links existing teams by matching names. + description: The type of synchronization operation. "link" connects teams by matching names. "provision" creates new teams when no match is found. enum: - link + - provision example: link type: string x-enum-varnames: - LINK + - PROVISION UserTeamRole: description: The user's role within the team enum: @@ -8679,6 +33483,37 @@ components: required: - data type: object + TeamNotificationRuleAttributesEmail: + description: Email notification settings for the team + properties: + enabled: + description: Flag indicating email notification + type: boolean + type: object + TeamNotificationRuleAttributesMsTeams: + description: MS Teams notification settings for the team + properties: + connector_name: + description: Handle for MS Teams + type: string + type: object + TeamNotificationRuleAttributesPagerduty: + description: PagerDuty notification settings for the team + properties: + service_name: + description: Service name for PagerDuty + type: string + type: object + TeamNotificationRuleAttributesSlack: + description: Slack notification settings for the team + properties: + channel: + description: Channel for Slack notification + type: string + workspace: + description: Workspace for Slack notification + type: string + type: object TeamPermissionSettingSerializerAction: description: The identifier for the action enum: @@ -8718,9 +33553,7 @@ components: format: date-time type: string value: - description: >- - Contains the number measured for the given usage_type during the - hour. + description: Contains the number measured for the given usage_type during the hour. format: int64 nullable: true type: integer @@ -8741,21 +33574,16 @@ components: description: Mapping of billing dimensions to endpoint keys. properties: endpoints: - description: >- - List of supported endpoints with their keys mapped to the - billing_dimension. + description: List of supported endpoints with their keys mapped to the billing_dimension. items: - $ref: >- - #/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItems + $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItems' type: array in_app_label: description: Label used for the billing dimension in the Plan & Usage charts. example: APM Hosts type: string timestamp: - description: >- - Month in ISO-8601 format, UTC, and precise to the second: - `[YYYY-MM-DDThh:mm:ss]`. + description: 'Month in ISO-8601 format, UTC, and precise to the second: `[YYYY-MM-DDThh:mm:ss]`.' format: date-time type: string type: object @@ -8775,9 +33603,7 @@ components: example: on_demand type: string cost: - description: >- - The cost for a particular product and charge type during a given - month. + description: The cost for a particular product and charge type during a given month. format: double type: number product_name: @@ -8792,12 +33618,143 @@ components: description: Type of usage. type: string value: - description: >- - Contains the number measured for the given usage_type during the - hour. + description: Contains the number measured for the given usage_type during the hour. + format: int64 + nullable: true + type: integer + type: object + UserAuthorizedClientRelationshipOAuth2Client: + description: Relationship to the OAuth2 client that was authorized. + properties: + data: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipOAuth2ClientData' + required: + - data + type: object + UserAuthorizedClientRelationshipScopes: + description: Relationship to the scopes granted to the OAuth2 client. + properties: + data: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipScopeDataList' + required: + - data + type: object + UserAuthorizedClientRelationshipUser: + description: Relationship to the user who granted this authorization. + properties: + data: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipUserData' + required: + - data + type: object + UserOverrideIdentityProviderAttributes: + description: Attributes of an identity provider override for a user. + properties: + authentication_method: + description: The authentication method used by this identity provider. + example: SAML + type: string + required: + - authentication_method + type: object + UserOverrideIdentityProviderDataType: + description: The resource type for identity providers. + enum: + - identity_providers + example: identity_providers + type: string + x-enum-varnames: + - IDENTITY_PROVIDERS + UserRelationshipIdentityProviderDataType: + description: The resource type for identity providers. + enum: + - identity_providers + example: identity_providers + type: string + x-enum-varnames: + - IDENTITY_PROVIDERS + UsageBillableSummaryBody: + description: Response with properties for each aggregated usage type. + properties: + account_billable_usage: + description: The total account usage. + format: int64 + type: integer + account_committed_usage: + description: The total account committed usage. + format: int64 + type: integer + account_on_demand_usage: + description: The total account on-demand usage. + format: int64 + type: integer + elapsed_usage_hours: + description: Elapsed usage hours for some billable product. + format: int64 + type: integer + first_billable_usage_hour: + description: The first billable hour for the org. + format: date-time + type: string + last_billable_usage_hour: + description: The last billable hour for the org. + format: date-time + type: string + org_billable_usage: + description: The number of units used within the billable timeframe. + format: int64 + type: integer + percentage_in_account: + description: The percentage of account usage the org represents. + format: double + type: number + usage_unit: + description: Units pertaining to the usage. + type: string + type: object + UsageAttributionAggregatesBody: + description: The object containing the aggregates. + properties: + agg_type: + description: The aggregate type. + example: sum + type: string + field: + description: The field. + example: custom_timeseries_usage + type: string + value: + description: The value for a given field. + format: double + type: number + type: object + LogsByRetentionOrgUsage: + description: Indexed logs usage by retention for a single organization. + properties: + usage: + description: Indexed logs usage for each active retention for the organization. + items: + $ref: '#/components/schemas/LogsRetentionSumUsage' + type: array + type: object + LogsRetentionSumUsage: + description: Object containing indexed logs usage grouped by retention period and summed. + properties: + logs_indexed_logs_usage_sum: + description: Total indexed logs for this retention period. + format: int64 + type: integer + logs_live_indexed_logs_usage_sum: + description: Live indexed logs for this retention period. + format: int64 + type: integer + logs_rehydrated_indexed_logs_usage_sum: + description: Rehydrated indexed logs for this retention period. format: int64 - nullable: true type: integer + retention: + description: The retention period in days or "custom" for all custom retention periods. + type: string type: object NullableRelationshipToUserData: description: Relationship to user object. @@ -8846,6 +33803,252 @@ components: type: $ref: '#/components/schemas/TeamType' type: object + RelationshipToOrganizationData: + description: Relationship to organization object. + properties: + id: + description: ID of the organization. + example: 00000000-0000-beef-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/OrganizationsType' + required: + - id + - type + type: object + GovernanceControlMitigationDefinition: + description: The definition of a mitigation available for a control. + properties: + description: + description: A human-readable description of the mitigation. + example: Automatically identifies and revokes inactive API keys to improve security and reduce potential attack surface. + type: string + execution_modes: + description: The execution modes the mitigation supports, such as `manual` or `automatic`. + example: + - manual + - automatic + items: + description: An execution mode the mitigation supports. + type: string + type: array + id: + description: The unique identifier of the mitigation. + example: revoke_api_key + type: string + permissions: + description: The permissions required to apply the mitigation. + example: + - api_keys_write + - api_keys_delete + items: + description: A permission required to apply the mitigation. + type: string + type: array + supported_parameters: + $ref: '#/components/schemas/GovernanceControlParameterDefinitionArray' + title: + description: A short, human-readable name for the mitigation. + example: Revoke Unused API Keys + type: string + required: + - id + - title + - description + - supported_parameters + - permissions + - execution_modes + type: object + GovernanceControlParameterDefinition: + description: The definition of a configurable parameter on a control or mitigation. + properties: + default_value: + description: The default value of the parameter. The JSON type depends on the parameter's `type`. + example: 30 + description: + description: A human-readable description of the parameter. + example: Number of days of inactivity before an API key is considered unused. + type: string + display_name: + description: The human-readable name of the parameter. + example: Unused API Key Threshold + type: string + name: + description: The machine-readable name of the parameter. + example: api_key_threshold + type: string + required: + description: Whether the parameter must be provided. + example: false + type: boolean + supported_values: + $ref: '#/components/schemas/GovernanceControlSupportedValueArray' + type: + description: The type of the parameter, such as `integer`, `string`, `boolean`, `enum`, or `pattern_list`. + example: integer + type: string + required: + - name + - display_name + - description + - type + - required + - supported_values + - default_value + type: object + ControlNotificationEventSetting: + description: The notification settings for a single event type on a control. + properties: + enabled: + description: Whether notifications are enabled for this event type. + example: true + type: boolean + event_type: + description: The event type the notification settings apply to, such as `new_detection`. + example: new_detection + type: string + targets: + $ref: '#/components/schemas/ControlNotificationTargetArray' + required: + - event_type + - enabled + - targets + type: object + GovernanceInsightAuditQuery: + description: An audit log query used to compute an insight value. + properties: + compute: + $ref: '#/components/schemas/GovernanceInsightAuditCompute' + indexes: + description: The audit log indexes the query runs against. + example: + - main + items: + description: An audit log index name. + type: string + type: array + query: + description: The audit log search query string. + example: '@evt.name:Dashboard' + type: string + source: + description: The data source the query runs against. + example: audit + type: string + required: + - source + - query + - indexes + - compute + type: object + GovernanceInsightEventQuery: + description: An event query used to compute an insight value. + properties: + compute: + $ref: '#/components/schemas/GovernanceInsightEventCompute' + nullable: true + indexes: + description: The event indexes the query runs against. + example: + - main + items: + description: An event index name. + type: string + type: array + query: + description: The event search query string. + example: source:cloudtrail + type: string + required: + - query + - indexes + type: object + GovernanceInsightMetricQuery: + description: A metric query used to compute an insight value. + properties: + query: + description: The query string. + example: avg:system.cpu.user{*} + type: string + reducer: + description: How the query result series is reduced to a single value. + example: avg + type: string + source: + description: The data source the query runs against. + example: metrics + type: string + required: + - source + - query + - reducer + type: object + GovernanceInsightPercentageQuery: + description: A percentage query that computes an insight value as a ratio of two metric queries. + properties: + denominator_query: + $ref: '#/components/schemas/GovernanceInsightMetricQuery' + numerator_query: + $ref: '#/components/schemas/GovernanceInsightMetricQuery' + required: + - numerator_query + - denominator_query + type: object + GovernanceInsightQueryConfig: + description: Query execution context for running insight queries directly. + properties: + chart_type: + description: The chart type used to render the insight. + example: line + type: string + comparison_shift: + description: The window used for the previous value comparison; for example, `week` or `month`. + example: month + type: string + default_value: + description: The default value to display when no data is available. + example: 0 + format: int64 + type: integer + directionality: + $ref: '#/components/schemas/GovernanceInsightDirectionality' + effective_time_window_days: + description: The number of days the insight value is computed over. + example: 30 + format: int64 + type: integer + required: + - effective_time_window_days + - comparison_shift + type: object + GovernanceInsightUsageQuery: + description: A usage query used to compute an insight value. + properties: + query: + description: The usage query string. + example: logs_indexed_events + type: string + reducer: + description: How the query result series is reduced to a single value. + example: sum + type: string + required: + - query + - reducer + type: object + TagRuleScoreRelationshipData: + description: Identifier of the related compliance score resource. + properties: + id: + description: The unique identifier of the related compliance score resource. + example: 123-v1-1779315066097-1779401466097 + type: string + type: + $ref: '#/components/schemas/TagRuleScoreResourceType' + required: + - type + - id + type: object IPAllowlistEntryData: description: Data of the IP allowlist entry object. properties: @@ -8859,6 +34062,48 @@ components: required: - type type: object + OrgRelationshipData: + description: Reference to an organization resource. + properties: + id: + description: The UUID of the organization. + example: 4dee724d-00cc-11ea-a77b-570c9d03c6c5 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgResourceType' + required: + - id + - type + type: object + OrgAuthorizedClientRelationshipOAuth2ClientData: + description: Data identifying the OAuth2 client associated with this org authorized client. + properties: + id: + description: The ID of the OAuth2 client. + example: 00000000-0000-0000-0000-000000000010 + type: string + type: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipOAuth2ClientDataType' + required: + - type + - id + type: object + OrgAuthorizedClientRelationshipUserAuthorizedClientsDataList: + description: List of user authorized client relationship data objects. + items: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsData' + type: array + OrgAuthorizedClientRelationshipUserAuthorizedClientsLinks: + description: Links for the user authorized clients relationship. + properties: + related: + description: Link to the user authorized clients for this org authorized client. + example: /api/v2/org_authorized_clients/00000000-0000-0000-0000-000000000001/user_authorized_clients + type: string + required: + - related + type: object OrgConnectionUserRelationshipData: description: The data for a user relationship. properties: @@ -8887,15 +34132,56 @@ components: type: $ref: '#/components/schemas/OrgConnectionOrgRelationshipDataType' type: object - RelationshipToOrganizationData: - description: Relationship to organization object. + OrgGroupRelationshipToOneData: + description: A reference to an org group. properties: id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 + description: The ID of the org group. + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid type: string type: - $ref: '#/components/schemas/OrganizationsType' + $ref: '#/components/schemas/OrgGroupType' + required: + - id + - type + type: object + OrgGroupPolicyRelationshipToOneData: + description: A reference to an org group policy. + properties: + id: + description: The ID of the policy. + example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + format: uuid + type: string + type: + $ref: '#/components/schemas/OrgGroupPolicyType' + required: + - id + - type + type: object + RelationshipToAccessTokenOwnerData: + description: Relationship to the access token's owner. + properties: + id: + description: A unique identifier that represents the owner. + example: 00000000-0000-0000-2345-000000000000 + type: string + type: + $ref: '#/components/schemas/AccessTokenOwnerType' + required: + - id + - type + type: object + RelationshipToServiceAccountData: + description: Relationship to service account object. + properties: + id: + description: A unique identifier that represents the service account. + example: 00000000-0000-0000-2345-000000000000 + type: string + type: + $ref: '#/components/schemas/ServiceAccountType' required: - id - type @@ -8923,6 +34209,7 @@ components: type: object RelationshipToUserTeamPermissionData: description: Related user team permission data + nullable: true properties: id: description: The ID of the user team permission @@ -8934,6 +34221,57 @@ components: - id - type type: object + TeamHierarchyLinkCreateTeam: + description: This schema defines the attributes about each team that has to be provided when creating a team hierarchy link + properties: + id: + description: The team's identifier + example: 692e8073-12c4-4c71-8408-5090bd44c9c8 + type: string + type: + $ref: '#/components/schemas/TeamType' + required: + - id + - type + type: object + ConnectedTeamRefData: + description: Reference to connected external team. + properties: + id: + description: The connected team ID as it is referenced throughout the Datadog ecosystem. + example: '@GitHubOrg/team-handle' + type: string + type: + $ref: '#/components/schemas/ConnectedTeamRefDataType' + required: + - id + - type + type: object + TeamRefData: + description: Reference to a Datadog team. + properties: + id: + description: The Datadog team ID. + example: 87654321-4321-8765-dcba-210987654321 + type: string + type: + $ref: '#/components/schemas/TeamRefDataType' + required: + - id + - type + type: object + TeamSyncSelectionStateItem: + description: Identifies a team or organization hierarchy to include in synchronization. + properties: + external_id: + $ref: '#/components/schemas/TeamSyncSelectionStateExternalId' + operation: + $ref: '#/components/schemas/TeamSyncSelectionStateOperation' + scope: + $ref: '#/components/schemas/TeamSyncSelectionStateScope' + required: + - external_id + type: object RelationshipToUserTeamTeamData: description: The team associated with the membership properties: @@ -8973,13 +34311,108 @@ components: - apm_host_top99p - apm_host_sum items: + description: A billing dimension key. example: apm_host_top99p type: string type: array status: - $ref: >- - #/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus + $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus' + type: object + UserAuthorizedClientRelationshipOAuth2ClientData: + description: Data identifying the OAuth2 client that was authorized. + properties: + id: + description: The ID of the OAuth2 client. + example: 00000000-0000-0000-0000-000000000010 + type: string + type: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipOAuth2ClientDataType' + required: + - type + - id type: object + UserAuthorizedClientRelationshipScopeDataList: + description: List of scope relationship data objects. + items: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipScopeData' + type: array + UserAuthorizedClientRelationshipUserData: + description: Data identifying the user who granted this authorization. + properties: + id: + description: The ID of the user. + example: 00000000-0000-9999-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipUserDataType' + required: + - type + - id + type: object + GovernanceControlSupportedValueArray: + description: The supported values for an enumerated parameter. `null` when the parameter is not an enumerated type. + items: + $ref: '#/components/schemas/GovernanceControlSupportedValue' + nullable: true + type: array + ControlNotificationTargetArray: + description: The destinations that receive notifications for an event type. + items: + $ref: '#/components/schemas/ControlNotificationTarget' + type: array + GovernanceInsightAuditCompute: + description: The aggregation applied to an audit log query. + properties: + aggregation: + description: The aggregation function to apply. + example: cardinality + type: string + interval: + description: The aggregation time window, in milliseconds. + example: 86400000 + format: int64 + type: integer + metric: + description: The metric or attribute to aggregate. + example: '@usr.id' + type: string + rollup: + description: An optional secondary aggregation applied to the audit query result. + example: '' + type: string + required: + - aggregation + - metric + - interval + type: object + GovernanceInsightEventCompute: + description: The aggregation applied to an event query. + properties: + aggregation: + description: The aggregation function to apply. + example: count + type: string + interval: + description: The aggregation time window, in milliseconds. + example: 86400000 + format: int64 + type: integer + required: + - aggregation + - interval + type: object + GovernanceInsightDirectionality: + description: Whether an increase in the insight's value is good, bad, or neutral. + enum: + - neutral + - increase_better + - decrease_better + example: neutral + type: string + x-enum-varnames: + - NEUTRAL + - INCREASE_BETTER + - DECREASE_BETTER IPAllowlistEntryAttributes: description: Attributes of the IP allowlist entry. properties: @@ -9009,6 +34442,27 @@ components: type: string x-enum-varnames: - IP_ALLOWLIST_ENTRY + OrgAuthorizedClientRelationshipOAuth2ClientDataType: + description: OAuth2 client resource type. + enum: + - oauth2_clients + example: oauth2_clients + type: string + x-enum-varnames: + - OAUTH2_CLIENTS + OrgAuthorizedClientRelationshipUserAuthorizedClientsData: + description: Data identifying a user authorized client. + properties: + id: + description: The ID of the user authorized client. + example: 00000000-0000-0000-0000-000000000020 + type: string + type: + $ref: '#/components/schemas/OrgAuthorizedClientRelationshipUserAuthorizedClientsDataType' + required: + - type + - id + type: object OrgConnectionUserRelationshipDataType: description: The type of the user relationship. enum: @@ -9025,6 +34479,75 @@ components: type: string x-enum-varnames: - ORGS + AccessTokenOwnerType: + description: Owner resource type. Either a user or a service account. + enum: + - users + - service_account + example: users + type: string + x-enum-varnames: + - USERS + - SERVICE_ACCOUNT + ServiceAccountType: + description: Service account resource type. + enum: + - service_account + example: service_account + type: string + x-enum-varnames: + - SERVICE_ACCOUNT + ConnectedTeamRefDataType: + default: github_team + description: External team resource type. + enum: + - github_team + example: github_team + type: string + x-enum-varnames: + - GITHUB_TEAM + TeamRefDataType: + default: team + description: Datadog team resource type. + enum: + - team + example: team + type: string + x-enum-varnames: + - TEAM + TeamSyncSelectionStateExternalId: + description: The external identifier for a team or organization in the source platform. + properties: + type: + $ref: '#/components/schemas/TeamSyncSelectionStateExternalIdType' + value: + $ref: '#/components/schemas/TeamSyncSelectionStateExternalIdValue' + required: + - type + - value + type: object + TeamSyncSelectionStateOperation: + description: |- + The operation to perform on the selected hierarchy. + When set to `include`, synchronization covers the + referenced teams or organizations. + enum: + - include + example: include + type: string + x-enum-varnames: + - INCLUDE + TeamSyncSelectionStateScope: + description: |- + The scope of the selection. When set to `subtree`, + synchronization includes the referenced team or + organization and everything nested under it. + enum: + - subtree + example: subtree + type: string + x-enum-varnames: + - SUBTREE UserTeamTeamType: default: team description: User team team type @@ -9052,6 +34575,114 @@ components: x-enum-varnames: - OK - NOT_FOUND + UserAuthorizedClientRelationshipOAuth2ClientDataType: + description: OAuth2 client resource type. + enum: + - oauth2_clients + example: oauth2_clients + type: string + x-enum-varnames: + - OAUTH2_CLIENTS + UserAuthorizedClientRelationshipScopeData: + description: Data identifying a scope granted to the OAuth2 client. + properties: + id: + description: The identifier of the scope. + example: example_scope + type: string + type: + $ref: '#/components/schemas/UserAuthorizedClientRelationshipScopeDataType' + required: + - type + - id + type: object + UserAuthorizedClientRelationshipUserDataType: + description: User resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + GovernanceControlSupportedValue: + description: A supported value for an enumerated parameter. + properties: + label: + description: The human-readable label for the value. + example: 30 days + type: string + value: + description: The machine-readable value. + example: thirty + type: string + required: + - value + - label + type: object + ControlNotificationTarget: + description: A destination that receives notifications for an event type. + properties: + handle: + description: The destination handle, such as an email address, Slack channel, or user handle. + example: '#governance-alerts' + type: string + type: + $ref: '#/components/schemas/ControlNotificationTargetType' + required: + - type + - handle + type: object + OrgAuthorizedClientRelationshipUserAuthorizedClientsDataType: + description: User authorized client resource type. + enum: + - user_authorized_clients + example: user_authorized_clients + type: string + x-enum-varnames: + - USER_AUTHORIZED_CLIENTS + TeamSyncSelectionStateExternalIdType: + description: |- + The type of external identifier for the selection state item. + For GitHub synchronization, the allowed values are `team` and + `organization`. + enum: + - team + - organization + example: team + type: string + x-enum-varnames: + - TEAM + - ORGANIZATION + TeamSyncSelectionStateExternalIdValue: + description: |- + The external identifier value from the source + platform. For GitHub, this is the string + representation of a GitHub organization ID or team + ID. + example: '1' + type: string + UserAuthorizedClientRelationshipScopeDataType: + description: Scope resource type. + enum: + - scopes + example: scopes + type: string + x-enum-varnames: + - SCOPES + ControlNotificationTargetType: + description: The type of notification destination. + enum: + - email + - slack + - at_mention + - case + example: slack + type: string + x-enum-varnames: + - EMAIL + - SLACK + - AT_MENTION + - CASE responses: TooManyRequestsResponse: content: @@ -9077,18 +34708,18 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden - NotFoundResponse: + UnauthorizedResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - UnauthorizedResponse: + description: Unauthorized + NotFoundResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Unauthorized + description: Not Found ConflictResponse: content: application/json: @@ -9097,7 +34728,7 @@ components: description: Conflict parameters: PageSize: - description: Size for a given page. The maximum allowed value is 100. + description: Number of items to return per page. The maximum allowed value is 100. in: query name: page[size] required: false @@ -9166,10 +34797,7 @@ components: example: '2020-11-24T18:46:21+00:00' type: string APIKeyIncludeParameter: - description: >- - Comma separated list of resource paths for related resources to include - in the response. Supported resource paths are `created_by` and - `modified_by`. + description: Comma separated list of resource paths for related resources to include in the response. Supported resource paths are `created_by` and `modified_by`. in: query name: include required: false @@ -9230,10 +34858,15 @@ components: schema: example: '2020-11-24T18:46:21+00:00' type: string + ApplicationKeyFilterOwnedByParameter: + description: Filter application keys by owner ID. + in: query + name: filter[owned_by] + required: false + schema: + type: string ApplicationKeyIncludeParameter: - description: >- - Resource path for related resources to include in the response. Only - `owned_by` is supported. + description: Resource path for related resources to include in the response. Only `owned_by` is supported. in: query name: include required: false @@ -9255,7 +34888,7 @@ components: schema: type: string ProductName: - description: Name of the product to be deleted, either `logs` or `rum`. + description: Name of the product to be deleted. Only `logs` is supported. in: path name: product required: true @@ -9268,6 +34901,47 @@ components: required: true schema: type: string + IdentityProviderId: + description: The ID of the identity provider. + in: path + name: idp_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + OAuthClientUUIDPathParameter: + description: UUID of the OAuth2 client. + in: path + name: client_uuid + required: true + schema: + example: fafa8e1c-36a5-11f0-a83d-da7ad0900001 + format: uuid + type: string + OrgAuthorizedClientId: + description: The ID of the org authorized client. + in: path + name: org_authorized_client_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + UserIdForOrgClient: + description: The ID of the user. + in: path + name: user_id + required: true + schema: + example: 00000000-0000-9999-0000-000000000001 + type: string + UserAuthorizedClientIdForOrg: + description: The ID of the user authorized client. + in: path + name: user_authorized_client_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000002 + type: string OrgConfigName: description: The name of an Org Config. in: path @@ -9285,14 +34959,183 @@ components: example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a format: uuid type: string + OrgGroupMembershipFilterOrgGroupId: + description: Filter memberships by org group ID. Required when `filter[org_uuid]` is not provided. + in: query + name: filter[org_group_id] + required: false + schema: + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid + type: string + OrgGroupMembershipFilterOrgUuid: + description: Filter memberships by org UUID. Returns a single-item list. + in: query + name: filter[org_uuid] + required: false + schema: + example: b2c3d4e5-f6a7-8901-bcde-f01234567890 + format: uuid + type: string + OrgGroupPageNumber: + description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer + OrgGroupPageSize: + description: The number of items per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 50 + example: 50 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + MembershipSort: + description: 'Field to sort memberships by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/OrgGroupMembershipSortOption' + OrgGroupMembershipId: + description: The ID of the org group membership. + in: path + name: org_group_membership_id + required: true + schema: + example: f1e2d3c4-b5a6-7890-1234-567890abcdef + format: uuid + type: string + OrgGroupPolicyFilterOrgGroupId: + description: Filter policies by org group ID. + in: query + name: filter[org_group_id] + required: true + schema: + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid + type: string + OrgGroupPolicyFilterPolicyName: + description: Filter policies by policy name. + in: query + name: filter[policy_name] + required: false + schema: + example: monitor_timezone + type: string + PolicySort: + description: 'Field to sort policies by. Supported values: `id`, `name`, `-id`, `-name`. Defaults to `id`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/OrgGroupPolicySortOption' + OrgGroupPolicyId: + description: The ID of the org group policy. + in: path + name: org_group_policy_id + required: true + schema: + example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + format: uuid + type: string + OrgGroupPolicyOverrideFilterOrgGroupId: + description: Filter policy overrides by org group ID. + in: query + name: filter[org_group_id] + required: true + schema: + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid + type: string + OrgGroupPolicyOverrideFilterPolicyId: + description: Filter policy overrides by policy ID. + in: query + name: filter[policy_id] + required: false + schema: + example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789 + format: uuid + type: string + OverrideSort: + description: 'Field to sort overrides by. Supported values: `id`, `org_uuid`, `-id`, `-org_uuid`. Defaults to `id`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/OrgGroupPolicyOverrideSortOption' + OrgGroupPolicyOverrideId: + description: The ID of the org group policy override. + in: path + name: org_group_policy_override_id + required: true + schema: + example: 9f8e7d6c-5b4a-3210-fedc-ba0987654321 + format: uuid + type: string + OrgGroupSort: + description: 'Field to sort org groups by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`.' + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/OrgGroupSortOption' + OrgGroupId: + description: The ID of the org group. + in: path + name: org_group_id + required: true + schema: + example: a1b2c3d4-e5f6-7890-abcd-ef0123456789 + format: uuid + type: string + PersonalAccessTokensSortParameter: + description: |- + Access token attribute used to sort results. Sort order is ascending + by default. In order to specify a descending sort, prefix the + attribute with a minus sign. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/PersonalAccessTokensSort' + PersonalAccessTokensFilterParameter: + description: Filter access tokens by the specified string. + in: query + name: filter + required: false + schema: + type: string + PersonalAccessTokensFilterOwnerIDParameter: + description: Filter access tokens by the owner's ID. Supports multiple values. + in: query + name: filter[owned_by] + required: false + schema: + items: + example: 00000000-0000-1234-0000-000000000000 + type: string + type: array + AccessTokenID: + description: The ID of the access token. + in: path + name: token_id + required: true + schema: + example: 00000000-0000-1234-0000-000000000000 + type: string ResourceID: - description: >- - Identifier, formatted as `type:id`. Supported types: `dashboard`, - `integration-service`, `integration-webhook`, `notebook`, - `reference-table`, `security-rule`, `slo`, `workflow`, - `app-builder-app`, `connection`, `connection-group`, `rum-application`, - `cross-org-connection`, `spreadsheet`, `on-call-schedule`, - `on-call-escalation-policy`, `on-call-team-routing-rules. + description: 'Identifier, formatted as `type:id`. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, `powerpack`, `reference-table`, `security-rule`, `slo`, `synthetics-global-variable`, `synthetics-test`, `synthetics-private-location`, `monitor`, `workflow`, `app-builder-app`, `connection`, `connection-group`, `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, `on-call-escalation-policy`, `on-call-team-routing-rules`, `logs-pipeline`, `case-management-project`, `monitor-notification-rule`, `status-page`, `feature-flag`.' example: dashboard:abc-def-ghi in: path name: resource_id @@ -9306,6 +35149,14 @@ components: required: true schema: type: string + SAMLConfigurationUUIDPathParameter: + description: The UUID of the SAML configuration. + in: path + name: saml_config_uuid + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string ServiceAccountID: description: The ID of the service account. in: path @@ -9314,6 +35165,22 @@ components: schema: example: 00000000-0000-1234-0000-000000000000 type: string + OAuth2ClientId: + description: The ID of the OAuth2 client. + in: path + name: client_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000010 + type: string + UserAuthorizedClientId: + description: The ID of the user authorized client. + in: path + name: user_authorized_client_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string UserID: description: The ID of the user. in: path @@ -9323,401 +35190,1699 @@ components: example: 00000000-0000-9999-0000-000000000000 type: string x-stackQL-resources: + users: + id: datadog.organization.users + name: users + title: Users + methods: + anonymize_users: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1anonymize_users/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_users: + operation: + $ref: '#/paths/~1api~1v2~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_user: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1users/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + disable_user: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_user: + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_user: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/users/methods/get_user' + - $ref: '#/components/x-stackQL-resources/users/methods/list_users' + insert: + - $ref: '#/components/x-stackQL-resources/users/methods/create_user' + update: + - $ref: '#/components/x-stackQL-resources/users/methods/update_user' + delete: [] + replace: [] api_keys: id: datadog.organization.api_keys name: api_keys title: Api Keys methods: - list_apikeys: + list_apikeys: + operation: + $ref: '#/paths/~1api~1v2~1api_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_apikey: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1api_keys/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_apikey: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_apikey: + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_apikey: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/api_keys/methods/get_apikey' + - $ref: '#/components/x-stackQL-resources/api_keys/methods/list_apikeys' + insert: + - $ref: '#/components/x-stackQL-resources/api_keys/methods/create_apikey' + update: + - $ref: '#/components/x-stackQL-resources/api_keys/methods/update_apikey' + delete: + - $ref: '#/components/x-stackQL-resources/api_keys/methods/delete_apikey' + replace: [] + application_keys: + id: datadog.organization.application_keys + name: application_keys + title: Application Keys + methods: + list_application_keys: + operation: + $ref: '#/paths/~1api~1v2~1application_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + delete_application_key: + operation: + $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_application_key: + operation: + $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_application_key: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_application_key_v1: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1application_key/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/application_keys/methods/get_application_key' + - $ref: '#/components/x-stackQL-resources/application_keys/methods/list_application_keys' + insert: + - $ref: '#/components/x-stackQL-resources/application_keys/methods/create_application_key_v1' + update: + - $ref: '#/components/x-stackQL-resources/application_keys/methods/update_application_key' + delete: + - $ref: '#/components/x-stackQL-resources/application_keys/methods/delete_application_key' + replace: [] + audit_logs: + id: datadog.organization.audit_logs + name: audit_logs + title: Audit Logs + methods: + list_audit_logs: + operation: + $ref: '#/paths/~1api~1v2~1audit~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + search_audit_logs: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1audit~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/audit_logs/methods/list_audit_logs' + insert: [] + update: [] + delete: [] + replace: [] + authn_mappings: + id: datadog.organization.authn_mappings + name: authn_mappings + title: Authn Mappings + methods: + list_auth_nmappings: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_auth_nmapping: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_auth_nmapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_auth_nmapping: + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_auth_nmapping: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/authn_mappings/methods/get_auth_nmapping' + - $ref: '#/components/x-stackQL-resources/authn_mappings/methods/list_auth_nmappings' + insert: + - $ref: '#/components/x-stackQL-resources/authn_mappings/methods/create_auth_nmapping' + update: + - $ref: '#/components/x-stackQL-resources/authn_mappings/methods/update_auth_nmapping' + delete: + - $ref: '#/components/x-stackQL-resources/authn_mappings/methods/delete_auth_nmapping' + replace: [] + current_user: + id: datadog.organization.current_user + name: current_user + title: Current User + methods: + get_current_user: + operation: + $ref: '#/paths/~1api~1v2~1current_user/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_current_user: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1current_user/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/current_user/methods/get_current_user' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/current_user/methods/update_current_user' + delete: [] + replace: [] + current_user_application_keys: + id: datadog.organization.current_user_application_keys + name: current_user_application_keys + title: Current User Application Keys + methods: + list_current_user_application_keys: + operation: + $ref: '#/paths/~1api~1v2~1current_user~1application_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_current_user_application_key: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1current_user~1application_keys/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_current_user_application_key: + operation: + $ref: '#/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_current_user_application_key: + operation: + $ref: '#/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_current_user_application_key: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/current_user_application_keys/methods/get_current_user_application_key' + - $ref: '#/components/x-stackQL-resources/current_user_application_keys/methods/list_current_user_application_keys' + insert: + - $ref: '#/components/x-stackQL-resources/current_user_application_keys/methods/create_current_user_application_key' + update: + - $ref: '#/components/x-stackQL-resources/current_user_application_keys/methods/update_current_user_application_key' + delete: + - $ref: '#/components/x-stackQL-resources/current_user_application_keys/methods/delete_current_user_application_key' + replace: [] + data_deletion_requests: + id: datadog.organization.data_deletion_requests + name: data_deletion_requests + title: Data Deletion Requests + methods: + create_data_deletion_request: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1deletion~1data~1{product}/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_data_deletion_requests: + operation: + $ref: '#/paths/~1api~1v2~1deletion~1requests/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page_size + maxValue: 50 + cancel_data_deletion_request: + operation: + $ref: '#/paths/~1api~1v2~1deletion~1requests~1{id}~1cancel/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/data_deletion_requests/methods/get_data_deletion_requests' + insert: + - $ref: '#/components/x-stackQL-resources/data_deletion_requests/methods/create_data_deletion_request' + update: [] + delete: [] + replace: [] + domain_allowlist: + id: datadog.organization.domain_allowlist + name: domain_allowlist + title: Domain Allowlist + methods: + get_domain_allowlist: + operation: + $ref: '#/paths/~1api~1v2~1domain_allowlist/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + patch_domain_allowlist: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1domain_allowlist/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/domain_allowlist/methods/get_domain_allowlist' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/domain_allowlist/methods/patch_domain_allowlist' + delete: [] + replace: [] + global_orgs: + id: datadog.organization.global_orgs + name: global_orgs + title: Global Orgs + methods: + list_global_orgs: + operation: + $ref: '#/paths/~1api~1v2~1global_orgs/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.next_cursor + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/global_orgs/methods/list_global_orgs' + insert: [] + update: [] + delete: [] + replace: [] + governance_configs: + id: datadog.organization.governance_configs + name: governance_configs + title: Governance Configs + methods: + get_governance_config: + operation: + $ref: '#/paths/~1api~1v2~1governance~1config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_configs/methods/get_governance_config' + insert: [] + update: [] + delete: [] + replace: [] + governance_controls: + id: datadog.organization.governance_controls + name: governance_controls + title: Governance Controls + methods: + list_governance_controls: + operation: + $ref: '#/paths/~1api~1v2~1governance~1control/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_governance_control: + operation: + $ref: '#/paths/~1api~1v2~1governance~1control~1{detection_type}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_governance_control: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1control~1{detection_type}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_controls/methods/get_governance_control' + - $ref: '#/components/x-stackQL-resources/governance_controls/methods/list_governance_controls' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/governance_controls/methods/update_governance_control' + delete: [] + replace: [] + governance_control_detections: + id: datadog.organization.governance_control_detections + name: governance_control_detections + title: Governance Control Detections + methods: + list_governance_control_detections: + operation: + $ref: '#/paths/~1api~1v2~1governance~1control~1{detection_type}~1detections/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_control_detections/methods/list_governance_control_detections' + insert: [] + update: [] + delete: [] + replace: [] + governance_control_notification_settings: + id: datadog.organization.governance_control_notification_settings + name: governance_control_notification_settings + title: Governance Control Notification Settings + methods: + get_governance_control_notification_settings: + operation: + $ref: '#/paths/~1api~1v2~1governance~1control~1{detection_type}~1notification_settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_governance_control_notification_settings: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1control~1{detection_type}~1notification_settings/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_control_notification_settings/methods/get_governance_control_notification_settings' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/governance_control_notification_settings/methods/update_governance_control_notification_settings' + governance_detections: + id: datadog.organization.governance_detections + name: governance_detections + title: Governance Detections + methods: + mitigate_governance_detections: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1detections~1mitigate/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + get_governance_detection: + operation: + $ref: '#/paths/~1api~1v2~1governance~1detections~1{detection_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_governance_detection: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1detections~1{detection_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_detections/methods/get_governance_detection' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/governance_detections/methods/update_governance_detection' + delete: [] + replace: [] + governance_insights: + id: datadog.organization.governance_insights + name: governance_insights + title: Governance Insights + methods: + list_governance_insights: + operation: + $ref: '#/paths/~1api~1v2~1governance~1insights/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_insights/methods/list_governance_insights' + insert: [] + update: [] + delete: [] + replace: [] + governance_notification_settings: + id: datadog.organization.governance_notification_settings + name: governance_notification_settings + title: Governance Notification Settings + methods: + get_governance_notification_settings: + operation: + $ref: '#/paths/~1api~1v2~1governance~1notification_settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_governance_notification_settings: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1notification_settings/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_notification_settings/methods/get_governance_notification_settings' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/governance_notification_settings/methods/update_governance_notification_settings' + delete: [] + replace: [] + governance_tag_rules: + id: datadog.organization.governance_tag_rules + name: governance_tag_rules + title: Governance Tag Rules + methods: + list_tag_rules: + operation: + $ref: '#/paths/~1api~1v2~1governance~1tag_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_tag_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1tag_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_tag_rule: + operation: + $ref: '#/paths/~1api~1v2~1governance~1tag_rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_tag_rule: + operation: + $ref: '#/paths/~1api~1v2~1governance~1tag_rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_tag_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1governance~1tag_rules~1{rule_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_tag_rules/methods/get_tag_rule' + - $ref: '#/components/x-stackQL-resources/governance_tag_rules/methods/list_tag_rules' + insert: + - $ref: '#/components/x-stackQL-resources/governance_tag_rules/methods/create_tag_rule' + update: + - $ref: '#/components/x-stackQL-resources/governance_tag_rules/methods/update_tag_rule' + delete: + - $ref: '#/components/x-stackQL-resources/governance_tag_rules/methods/delete_tag_rule' + replace: [] + governance_tag_rule_scores: + id: datadog.organization.governance_tag_rule_scores + name: governance_tag_rule_scores + title: Governance Tag Rule Scores + methods: + get_tag_rule_score: + operation: + $ref: '#/paths/~1api~1v2~1governance~1tag_rules~1{rule_id}~1score/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/governance_tag_rule_scores/methods/get_tag_rule_score' + insert: [] + update: [] + delete: [] + replace: [] + hamr_connections: + id: datadog.organization.hamr_connections + name: hamr_connections + title: Hamr Connections + methods: + get_hamr_org_connection: + operation: + $ref: '#/paths/~1api~1v2~1hamr/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_hamr_org_connection: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1hamr/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/hamr_connections/methods/get_hamr_org_connection' + insert: + - $ref: '#/components/x-stackQL-resources/hamr_connections/methods/create_hamr_org_connection' + update: [] + delete: [] + replace: [] + identity_providers: + id: datadog.organization.identity_providers + name: identity_providers + title: Identity Providers + methods: + list_identity_providers: + operation: + $ref: '#/paths/~1api~1v2~1identity_providers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_identity_provider: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1identity_providers~1{idp_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/identity_providers/methods/list_identity_providers' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/identity_providers/methods/update_identity_provider' + delete: [] + replace: [] + identity_provider_users: + id: datadog.organization.identity_provider_users + name: identity_provider_users + title: Identity Provider Users + methods: + list_identity_provider_users: + operation: + $ref: '#/paths/~1api~1v2~1identity_providers~1{idp_id}~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/identity_provider_users/methods/list_identity_provider_users' + insert: [] + update: [] + delete: [] + replace: [] + ip_allowlist: + id: datadog.organization.ip_allowlist + name: ip_allowlist + title: Ip Allowlist + methods: + get_ipallowlist: operation: - $ref: '#/paths/~1api~1v2~1api_keys/get' + $ref: '#/paths/~1api~1v2~1ip_allowlist/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_apikey: + request: + nativeCasing: camel + update_ipallowlist: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1api_keys/post' + $ref: '#/paths/~1api~1v2~1ip_allowlist/patch' response: mediaType: application/json - openAPIDocKey: '201' - delete_apikey: + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ip_allowlist/methods/get_ipallowlist' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/ip_allowlist/methods/update_ipallowlist' + delete: [] + replace: [] + login_configs: + id: datadog.organization.login_configs + name: login_configs + title: Login Configs + methods: + update_login_org_configs_max_session_duration: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/delete' + $ref: '#/paths/~1api~1v2~1login~1org_configs~1max_session_duration/put' response: mediaType: application/json openAPIDocKey: '204' - get_apikey: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/login_configs/methods/update_login_org_configs_max_session_duration' + oauth2_well_known_sites: + id: datadog.organization.oauth2_well_known_sites + name: oauth2_well_known_sites + title: Oauth2 Well Known Sites + methods: + get_oauth2_well_known_sites: operation: - $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/get' + $ref: '#/paths/~1api~1v2~1oauth2~1.well-known~1sites/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_apikey: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/oauth2_well_known_sites/methods/get_oauth2_well_known_sites' + insert: [] + update: [] + delete: [] + replace: [] + oauth2_client_scopes_restrictions: + id: datadog.organization.oauth2_client_scopes_restrictions + name: oauth2_client_scopes_restrictions + title: Oauth2 Client Scopes Restrictions + methods: + delete_scopes_restriction: operation: - $ref: '#/paths/~1api~1v2~1api_keys~1{api_key_id}/patch' + $ref: '#/paths/~1api~1v2~1oauth2~1clients~1{client_uuid}~1scopes_restriction/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_scopes_restriction: + operation: + $ref: '#/paths/~1api~1v2~1oauth2~1clients~1{client_uuid}~1scopes_restriction/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + upsert_scopes_restriction: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1oauth2~1clients~1{client_uuid}~1scopes_restriction/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/api_keys/methods/get_apikey' - - $ref: '#/components/x-stackQL-resources/api_keys/methods/list_apikeys' + - $ref: '#/components/x-stackQL-resources/oauth2_client_scopes_restrictions/methods/get_scopes_restriction' insert: - - $ref: '#/components/x-stackQL-resources/api_keys/methods/create_apikey' - update: - - $ref: '#/components/x-stackQL-resources/api_keys/methods/update_apikey' + - $ref: '#/components/x-stackQL-resources/oauth2_client_scopes_restrictions/methods/upsert_scopes_restriction' + update: [] delete: - - $ref: '#/components/x-stackQL-resources/api_keys/methods/delete_apikey' + - $ref: '#/components/x-stackQL-resources/oauth2_client_scopes_restrictions/methods/delete_scopes_restriction' replace: [] - application_keys: - id: datadog.organization.application_keys - name: application_keys - title: Application Keys + oauth2_clients: + id: datadog.organization.oauth2_clients + name: oauth2_clients + title: Oauth2 Clients methods: - list_application_keys: + register_oauth_client: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1application_keys/get' + $ref: '#/paths/~1api~1v2~1oauth2~1register/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + orgs: + id: datadog.organization.orgs + name: orgs + title: Orgs + methods: + list_orgs: + operation: + $ref: '#/paths/~1api~1v2~1org/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - delete_application_key: + request: + nativeCasing: camel + disable_customer_org: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/delete' + $ref: '#/paths/~1api~1v2~1org~1disable/post' response: mediaType: application/json - openAPIDocKey: '204' - get_application_key: + openAPIDocKey: '200' + request: + nativeCasing: camel + create_child_org: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/get' + $ref: '#/paths/~1api~1v1~1org/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - update_application_key: + request: + nativeCasing: camel + get_org: operation: - $ref: '#/paths/~1api~1v2~1application_keys~1{app_key_id}/patch' + $ref: '#/paths/~1api~1v1~1org~1{public_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.org + request: + nativeCasing: camel + update_org: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1org~1{public_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + downgrade_org: + operation: + $ref: '#/paths/~1api~1v1~1org~1{public_id}~1downgrade/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/application_keys/methods/get_application_key - - $ref: >- - #/components/x-stackQL-resources/application_keys/methods/list_application_keys + - $ref: '#/components/x-stackQL-resources/orgs/methods/get_org' + - $ref: '#/components/x-stackQL-resources/orgs/methods/list_orgs' + insert: + - $ref: '#/components/x-stackQL-resources/orgs/methods/create_child_org' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/orgs/methods/update_org' + org_saml_configurations: + id: datadog.organization.org_saml_configurations + name: org_saml_configurations + title: Org Saml Configurations + methods: + update_org_saml_configurations: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1org~1saml_configurations/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] insert: [] update: - - $ref: >- - #/components/x-stackQL-resources/application_keys/methods/update_application_key - delete: - - $ref: >- - #/components/x-stackQL-resources/application_keys/methods/delete_application_key + - $ref: '#/components/x-stackQL-resources/org_saml_configurations/methods/update_org_saml_configurations' + delete: [] replace: [] - audit_logs: - id: datadog.organization.audit_logs - name: audit_logs - title: Audit Logs + org_authorized_clients: + id: datadog.organization.org_authorized_clients + name: org_authorized_clients + title: Org Authorized Clients methods: - list_audit_logs: + list_org_authorized_clients: operation: - $ref: '#/paths/~1api~1v2~1audit~1events/get' + $ref: '#/paths/~1api~1v2~1org_authorized_clients/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - search_audit_logs: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + delete_org_authorized_client: operation: - $ref: '#/paths/~1api~1v2~1audit~1events~1search/post' + $ref: '#/paths/~1api~1v2~1org_authorized_clients~1{org_authorized_client_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_org_authorized_client: + operation: + $ref: '#/paths/~1api~1v2~1org_authorized_clients~1{org_authorized_client_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_org_authorized_client: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1org_authorized_clients~1{org_authorized_client_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/audit_logs/methods/list_audit_logs + - $ref: '#/components/x-stackQL-resources/org_authorized_clients/methods/get_org_authorized_client' + - $ref: '#/components/x-stackQL-resources/org_authorized_clients/methods/list_org_authorized_clients' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/org_authorized_clients/methods/update_org_authorized_client' + delete: + - $ref: '#/components/x-stackQL-resources/org_authorized_clients/methods/delete_org_authorized_client' + replace: [] + org_authorized_client_users: + id: datadog.organization.org_authorized_client_users + name: org_authorized_client_users + title: Org Authorized Client Users + methods: + delete_org_authorized_client_all_user_authorizations: + operation: + $ref: '#/paths/~1api~1v2~1org_authorized_clients~1{org_authorized_client_id}~1user~1{user_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] insert: [] update: [] - delete: [] + delete: + - $ref: '#/components/x-stackQL-resources/org_authorized_client_users/methods/delete_org_authorized_client_all_user_authorizations' replace: [] - authn_mappings: - id: datadog.organization.authn_mappings - name: authn_mappings - title: Authn Mappings + org_authorized_client_user_authorized_clients: + id: datadog.organization.org_authorized_client_user_authorized_clients + name: org_authorized_client_user_authorized_clients + title: Org Authorized Client User Authorized Clients methods: - list_auth_nmappings: + list_org_authorized_client_user_authorizations: operation: - $ref: '#/paths/~1api~1v2~1authn_mappings/get' + $ref: '#/paths/~1api~1v2~1org_authorized_clients~1{org_authorized_client_id}~1user_authorized_clients/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_auth_nmapping: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + delete_org_authorized_client_user_authorization: operation: - $ref: '#/paths/~1api~1v2~1authn_mappings/post' + $ref: '#/paths/~1api~1v2~1org_authorized_clients~1{org_authorized_client_id}~1user_authorized_clients~1{user_authorized_client_id}/delete' response: mediaType: application/json - openAPIDocKey: '200' - delete_auth_nmapping: + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/org_authorized_client_user_authorized_clients/methods/list_org_authorized_client_user_authorizations' + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/org_authorized_client_user_authorized_clients/methods/delete_org_authorized_client_user_authorization' + replace: [] + configs: + id: datadog.organization.configs + name: configs + title: Configs + methods: + list_org_configs: operation: - $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/delete' + $ref: '#/paths/~1api~1v2~1org_configs/get' response: mediaType: application/json - openAPIDocKey: '204' - get_auth_nmapping: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_org_config: operation: - $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/get' + $ref: '#/paths/~1api~1v2~1org_configs~1{org_config_name}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_auth_nmapping: + request: + nativeCasing: camel + update_org_config: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1authn_mappings~1{authn_mapping_id}/patch' + $ref: '#/paths/~1api~1v2~1org_configs~1{org_config_name}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/authn_mappings/methods/get_auth_nmapping - - $ref: >- - #/components/x-stackQL-resources/authn_mappings/methods/list_auth_nmappings - insert: - - $ref: >- - #/components/x-stackQL-resources/authn_mappings/methods/create_auth_nmapping + - $ref: '#/components/x-stackQL-resources/configs/methods/get_org_config' + - $ref: '#/components/x-stackQL-resources/configs/methods/list_org_configs' + insert: [] update: - - $ref: >- - #/components/x-stackQL-resources/authn_mappings/methods/update_auth_nmapping - delete: - - $ref: >- - #/components/x-stackQL-resources/authn_mappings/methods/delete_auth_nmapping + - $ref: '#/components/x-stackQL-resources/configs/methods/update_org_config' + delete: [] replace: [] - current_user_application_keys: - id: datadog.organization.current_user_application_keys - name: current_user_application_keys - title: Current User Application Keys + connections: + id: datadog.organization.connections + name: connections + title: Connections methods: - list_current_user_application_keys: + list_org_connections: operation: - $ref: '#/paths/~1api~1v2~1current_user~1application_keys/get' + $ref: '#/paths/~1api~1v2~1org_connections/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_current_user_application_key: - operation: - $ref: '#/paths/~1api~1v2~1current_user~1application_keys/post' - response: - mediaType: application/json - openAPIDocKey: '201' - delete_current_user_application_key: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + skip: + paramName: offset + create_org_connections: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/delete + $ref: '#/paths/~1api~1v2~1org_connections/post' response: mediaType: application/json - openAPIDocKey: '204' - get_current_user_application_key: + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_org_connections: operation: - $ref: >- - #/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/get + $ref: '#/paths/~1api~1v2~1org_connections~1{connection_id}/delete' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - update_current_user_application_key: + request: + nativeCasing: camel + update_org_connections: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1current_user~1application_keys~1{app_key_id}/patch + $ref: '#/paths/~1api~1v2~1org_connections~1{connection_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/current_user_application_keys/methods/get_current_user_application_key - - $ref: >- - #/components/x-stackQL-resources/current_user_application_keys/methods/list_current_user_application_keys + - $ref: '#/components/x-stackQL-resources/connections/methods/list_org_connections' insert: - - $ref: >- - #/components/x-stackQL-resources/current_user_application_keys/methods/create_current_user_application_key + - $ref: '#/components/x-stackQL-resources/connections/methods/create_org_connections' update: - - $ref: >- - #/components/x-stackQL-resources/current_user_application_keys/methods/update_current_user_application_key + - $ref: '#/components/x-stackQL-resources/connections/methods/update_org_connections' delete: - - $ref: >- - #/components/x-stackQL-resources/current_user_application_keys/methods/delete_current_user_application_key + - $ref: '#/components/x-stackQL-resources/connections/methods/delete_org_connections' replace: [] - data_deletion_requests: - id: datadog.organization.data_deletion_requests - name: data_deletion_requests - title: Data Deletion Requests + org_group_memberships: + id: datadog.organization.org_group_memberships + name: org_group_memberships + title: Org Group Memberships methods: - create_data_deletion_request: + list_org_group_memberships: operation: - $ref: '#/paths/~1api~1v2~1deletion~1data~1{product}/post' + $ref: '#/paths/~1api~1v2~1org_group_memberships/get' response: mediaType: application/json openAPIDocKey: '200' - get_data_deletion_requests: + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + bulk_update_org_group_memberships: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1deletion~1requests/get' + $ref: '#/paths/~1api~1v2~1org_group_memberships~1bulk/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_org_group_membership: + operation: + $ref: '#/paths/~1api~1v2~1org_group_memberships~1{org_group_membership_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - cancel_data_deletion_request: + request: + nativeCasing: camel + update_org_group_membership: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1deletion~1requests~1{id}~1cancel/put' + $ref: '#/paths/~1api~1v2~1org_group_memberships~1{org_group_membership_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/data_deletion_requests/methods/get_data_deletion_requests - insert: - - $ref: >- - #/components/x-stackQL-resources/data_deletion_requests/methods/create_data_deletion_request - update: [] + - $ref: '#/components/x-stackQL-resources/org_group_memberships/methods/get_org_group_membership' + - $ref: '#/components/x-stackQL-resources/org_group_memberships/methods/list_org_group_memberships' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/org_group_memberships/methods/update_org_group_membership' delete: [] replace: [] - domain_allowlist: - id: datadog.organization.domain_allowlist - name: domain_allowlist - title: Domain Allowlist + org_group_policies: + id: datadog.organization.org_group_policies + name: org_group_policies + title: Org Group Policies methods: - get_domain_allowlist: + list_org_group_policies: operation: - $ref: '#/paths/~1api~1v2~1domain_allowlist/get' + $ref: '#/paths/~1api~1v2~1org_group_policies/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - patch_domain_allowlist: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_org_group_policy: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1domain_allowlist/patch' + $ref: '#/paths/~1api~1v2~1org_group_policies/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_org_group_policy: + operation: + $ref: '#/paths/~1api~1v2~1org_group_policies~1{org_group_policy_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_org_group_policy: + operation: + $ref: '#/paths/~1api~1v2~1org_group_policies~1{org_group_policy_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_org_group_policy: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1org_group_policies~1{org_group_policy_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/domain_allowlist/methods/get_domain_allowlist - insert: [] + - $ref: '#/components/x-stackQL-resources/org_group_policies/methods/get_org_group_policy' + - $ref: '#/components/x-stackQL-resources/org_group_policies/methods/list_org_group_policies' + insert: + - $ref: '#/components/x-stackQL-resources/org_group_policies/methods/create_org_group_policy' update: - - $ref: >- - #/components/x-stackQL-resources/domain_allowlist/methods/patch_domain_allowlist - delete: [] + - $ref: '#/components/x-stackQL-resources/org_group_policies/methods/update_org_group_policy' + delete: + - $ref: '#/components/x-stackQL-resources/org_group_policies/methods/delete_org_group_policy' replace: [] - ip_allowlist: - id: datadog.organization.ip_allowlist - name: ip_allowlist - title: Ip Allowlist + org_group_policy_configs: + id: datadog.organization.org_group_policy_configs + name: org_group_policy_configs + title: Org Group Policy Configs methods: - get_ipallowlist: + list_org_group_policy_configs: operation: - $ref: '#/paths/~1api~1v2~1ip_allowlist/get' + $ref: '#/paths/~1api~1v2~1org_group_policy_configs/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_ipallowlist: - operation: - $ref: '#/paths/~1api~1v2~1ip_allowlist/patch' - response: - mediaType: application/json - openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/ip_allowlist/methods/get_ipallowlist + - $ref: '#/components/x-stackQL-resources/org_group_policy_configs/methods/list_org_group_policy_configs' insert: [] - update: - - $ref: >- - #/components/x-stackQL-resources/ip_allowlist/methods/update_ipallowlist + update: [] delete: [] replace: [] - configs: - id: datadog.organization.configs - name: configs - title: Configs + org_group_policy_overrides: + id: datadog.organization.org_group_policy_overrides + name: org_group_policy_overrides + title: Org Group Policy Overrides methods: - list_org_configs: + list_org_group_policy_overrides: operation: - $ref: '#/paths/~1api~1v2~1org_configs/get' + $ref: '#/paths/~1api~1v2~1org_group_policy_overrides/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - get_org_config: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_org_group_policy_override: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1org_configs~1{org_config_name}/get' + $ref: '#/paths/~1api~1v2~1org_group_policy_overrides/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_org_group_policy_override: + operation: + $ref: '#/paths/~1api~1v2~1org_group_policy_overrides~1{org_group_policy_override_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_org_group_policy_override: + operation: + $ref: '#/paths/~1api~1v2~1org_group_policy_overrides~1{org_group_policy_override_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_org_config: + request: + nativeCasing: camel + update_org_group_policy_override: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1org_configs~1{org_config_name}/patch' + $ref: '#/paths/~1api~1v2~1org_group_policy_overrides~1{org_group_policy_override_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/configs/methods/get_org_config' - - $ref: '#/components/x-stackQL-resources/configs/methods/list_org_configs' - insert: [] + - $ref: '#/components/x-stackQL-resources/org_group_policy_overrides/methods/get_org_group_policy_override' + - $ref: '#/components/x-stackQL-resources/org_group_policy_overrides/methods/list_org_group_policy_overrides' + insert: + - $ref: '#/components/x-stackQL-resources/org_group_policy_overrides/methods/create_org_group_policy_override' update: - - $ref: '#/components/x-stackQL-resources/configs/methods/update_org_config' - delete: [] + - $ref: '#/components/x-stackQL-resources/org_group_policy_overrides/methods/update_org_group_policy_override' + delete: + - $ref: '#/components/x-stackQL-resources/org_group_policy_overrides/methods/delete_org_group_policy_override' replace: [] - connections: - id: datadog.organization.connections - name: connections - title: Connections + org_group_policy_suggestions: + id: datadog.organization.org_group_policy_suggestions + name: org_group_policy_suggestions + title: Org Group Policy Suggestions methods: - list_org_connections: + list_org_group_policy_suggestions: operation: - $ref: '#/paths/~1api~1v2~1org_connections/get' + $ref: '#/paths/~1api~1v2~1org_group_policy_suggestions/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_org_connections: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/org_group_policy_suggestions/methods/list_org_group_policy_suggestions' + insert: [] + update: [] + delete: [] + replace: [] + org_groups: + id: datadog.organization.org_groups + name: org_groups + title: Org Groups + methods: + list_org_groups: operation: - $ref: '#/paths/~1api~1v2~1org_connections/post' + $ref: '#/paths/~1api~1v2~1org_groups/get' response: mediaType: application/json openAPIDocKey: '200' - delete_org_connections: + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_org_group: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1org_connections~1{connection_id}/delete' + $ref: '#/paths/~1api~1v2~1org_groups/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_org_group: + operation: + $ref: '#/paths/~1api~1v2~1org_groups~1{org_group_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_org_group: + operation: + $ref: '#/paths/~1api~1v2~1org_groups~1{org_group_id}/get' response: mediaType: application/json openAPIDocKey: '200' - update_org_connections: + objectKey: $.data + request: + nativeCasing: camel + update_org_group: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1org_connections~1{connection_id}/patch' + $ref: '#/paths/~1api~1v2~1org_groups~1{org_group_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/list_org_connections + - $ref: '#/components/x-stackQL-resources/org_groups/methods/get_org_group' + - $ref: '#/components/x-stackQL-resources/org_groups/methods/list_org_groups' insert: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/create_org_connections + - $ref: '#/components/x-stackQL-resources/org_groups/methods/create_org_group' update: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/update_org_connections + - $ref: '#/components/x-stackQL-resources/org_groups/methods/update_org_group' delete: - - $ref: >- - #/components/x-stackQL-resources/connections/methods/delete_org_connections + - $ref: '#/components/x-stackQL-resources/org_groups/methods/delete_org_group' replace: [] permissions: id: datadog.organization.permissions @@ -9731,14 +36896,83 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/permissions/methods/list_permissions + - $ref: '#/components/x-stackQL-resources/permissions/methods/list_permissions' insert: [] update: [] delete: [] replace: [] + personal_access_tokens: + id: datadog.organization.personal_access_tokens + name: personal_access_tokens + title: Personal Access Tokens + methods: + list_personal_access_tokens: + operation: + $ref: '#/paths/~1api~1v2~1personal_access_tokens/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_personal_access_token: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1personal_access_tokens/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + revoke_personal_access_token: + operation: + $ref: '#/paths/~1api~1v2~1personal_access_tokens~1{token_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_personal_access_token: + operation: + $ref: '#/paths/~1api~1v2~1personal_access_tokens~1{token_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_personal_access_token: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1personal_access_tokens~1{token_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/personal_access_tokens/methods/get_personal_access_token' + - $ref: '#/components/x-stackQL-resources/personal_access_tokens/methods/list_personal_access_tokens' + insert: + - $ref: '#/components/x-stackQL-resources/personal_access_tokens/methods/create_personal_access_token' + update: + - $ref: '#/components/x-stackQL-resources/personal_access_tokens/methods/update_personal_access_token' + delete: + - $ref: '#/components/x-stackQL-resources/personal_access_tokens/methods/revoke_personal_access_token' + replace: [] restriction_policies: id: datadog.organization.restriction_policies name: restriction_policies @@ -9750,6 +36984,8 @@ components: response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_restriction_policy: operation: $ref: '#/paths/~1api~1v2~1restriction_policy~1{resource_id}/get' @@ -9757,24 +36993,28 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_restriction_policy: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1restriction_policy~1{resource_id}/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/restriction_policies/methods/get_restriction_policy + - $ref: '#/components/x-stackQL-resources/restriction_policies/methods/get_restriction_policy' insert: [] update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/restriction_policies/methods/delete_restriction_policy + - $ref: '#/components/x-stackQL-resources/restriction_policies/methods/delete_restriction_policy' replace: - - $ref: >- - #/components/x-stackQL-resources/restriction_policies/methods/update_restriction_policy + - $ref: '#/components/x-stackQL-resources/restriction_policies/methods/update_restriction_policy' roles: id: datadog.organization.roles name: roles @@ -9787,18 +37027,31 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] create_role: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1roles/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_role: operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_role: operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}/get' @@ -9806,18 +37059,30 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_role: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel clone_role: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1clone/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/roles/methods/get_role' @@ -9829,6 +37094,27 @@ components: delete: - $ref: '#/components/x-stackQL-resources/roles/methods/delete_role' replace: [] + role_templates: + id: datadog.organization.role_templates + name: role_templates + title: Role Templates + methods: + list_role_templates: + operation: + $ref: '#/paths/~1api~1v2~1roles~1templates/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/role_templates/methods/list_role_templates' + insert: [] + update: [] + delete: [] + replace: [] role_permissions: id: datadog.organization.role_permissions name: role_permissions @@ -9840,6 +37126,8 @@ components: response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel list_role_permissions: operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1permissions/get' @@ -9847,37 +37135,41 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel add_permission_to_role: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1permissions/post' response: mediaType: application/json openAPIDocKey: '200' - remove_user_from_role: - operation: - $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/delete' - response: - mediaType: application/json - openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/role_permissions/methods/list_role_permissions + - $ref: '#/components/x-stackQL-resources/role_permissions/methods/list_role_permissions' insert: - - $ref: >- - #/components/x-stackQL-resources/role_permissions/methods/add_permission_to_role + - $ref: '#/components/x-stackQL-resources/role_permissions/methods/add_permission_to_role' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/role_permissions/methods/remove_permission_from_role - - $ref: >- - #/components/x-stackQL-resources/role_permissions/methods/remove_user_from_role + - $ref: '#/components/x-stackQL-resources/role_permissions/methods/remove_permission_from_role' replace: [] role_users: id: datadog.organization.role_users name: role_users title: Role Users methods: + remove_user_from_role: + operation: + $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel list_role_users: operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/get' @@ -9885,58 +37177,212 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] add_user_to_role: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1roles~1{role_id}~1users/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/role_users/methods/list_role_users + - $ref: '#/components/x-stackQL-resources/role_users/methods/list_role_users' insert: - - $ref: >- - #/components/x-stackQL-resources/role_users/methods/add_user_to_role + - $ref: '#/components/x-stackQL-resources/role_users/methods/add_user_to_role' update: [] - delete: [] + delete: + - $ref: '#/components/x-stackQL-resources/role_users/methods/remove_user_from_role' replace: [] - idp_metadata: - id: datadog.organization.idp_metadata - name: idp_metadata - title: Idp Metadata + saml_configurations: + id: datadog.organization.saml_configurations + name: saml_configurations + title: Saml Configurations methods: - upload_id_pmetadata: + list_samlconfigurations: + operation: + $ref: '#/paths/~1api~1v2~1saml_configurations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_samlconfiguration: + operation: + $ref: '#/paths/~1api~1v2~1saml_configurations~1{saml_config_uuid}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_samlconfiguration: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1saml_configurations~1idp_metadata/post' + $ref: '#/paths/~1api~1v2~1saml_configurations~1{saml_config_uuid}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: - select: [] + select: + - $ref: '#/components/x-stackQL-resources/saml_configurations/methods/get_samlconfiguration' + - $ref: '#/components/x-stackQL-resources/saml_configurations/methods/list_samlconfigurations' insert: [] - update: [] + update: + - $ref: '#/components/x-stackQL-resources/saml_configurations/methods/update_samlconfiguration' delete: [] replace: [] + seat_assignments: + id: datadog.organization.seat_assignments + name: seat_assignments + title: Seat Assignments + methods: + unassign_seats_user: + operation: + $ref: '#/paths/~1api~1v2~1seats~1users/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_seats_users: + operation: + $ref: '#/paths/~1api~1v2~1seats~1users/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + assign_seats_user: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1seats~1users/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/seat_assignments/methods/get_seats_users' + insert: + - $ref: '#/components/x-stackQL-resources/seat_assignments/methods/assign_seats_user' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/seat_assignments/methods/unassign_seats_user' + replace: [] service_accounts: id: datadog.organization.service_accounts name: service_accounts title: Service Accounts methods: create_service_account: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1service_accounts/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel sqlVerbs: select: [] insert: - - $ref: >- - #/components/x-stackQL-resources/service_accounts/methods/create_service_account + - $ref: '#/components/x-stackQL-resources/service_accounts/methods/create_service_account' update: [] delete: [] replace: [] + service_account_access_tokens: + id: datadog.organization.service_account_access_tokens + name: service_account_access_tokens + title: Service Account Access Tokens + methods: + list_service_account_access_tokens: + operation: + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1access_tokens/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_service_account_access_token: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1access_tokens/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + revoke_service_account_access_token: + operation: + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1access_tokens~1{token_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_service_account_access_token: + operation: + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1access_tokens~1{token_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_service_account_access_token: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1access_tokens~1{token_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/service_account_access_tokens/methods/get_service_account_access_token' + - $ref: '#/components/x-stackQL-resources/service_account_access_tokens/methods/list_service_account_access_tokens' + insert: + - $ref: '#/components/x-stackQL-resources/service_account_access_tokens/methods/create_service_account_access_token' + update: + - $ref: '#/components/x-stackQL-resources/service_account_access_tokens/methods/update_service_account_access_token' + delete: + - $ref: '#/components/x-stackQL-resources/service_account_access_tokens/methods/revoke_service_account_access_token' + replace: [] service_account_keys: id: datadog.organization.service_account_keys name: service_account_keys @@ -9944,56 +37390,66 @@ components: methods: list_service_account_application_keys: operation: - $ref: >- - #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys/get + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] create_service_account_application_key: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys/post + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_service_account_application_key: operation: - $ref: >- - #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/delete + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_service_account_application_key: operation: - $ref: >- - #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/get + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_service_account_application_key: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/patch + $ref: '#/paths/~1api~1v2~1service_accounts~1{service_account_id}~1application_keys~1{app_key_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/service_account_keys/methods/get_service_account_application_key - - $ref: >- - #/components/x-stackQL-resources/service_account_keys/methods/list_service_account_application_keys + - $ref: '#/components/x-stackQL-resources/service_account_keys/methods/get_service_account_application_key' + - $ref: '#/components/x-stackQL-resources/service_account_keys/methods/list_service_account_application_keys' insert: - - $ref: >- - #/components/x-stackQL-resources/service_account_keys/methods/create_service_account_application_key + - $ref: '#/components/x-stackQL-resources/service_account_keys/methods/create_service_account_application_key' update: - - $ref: >- - #/components/x-stackQL-resources/service_account_keys/methods/update_service_account_application_key + - $ref: '#/components/x-stackQL-resources/service_account_keys/methods/update_service_account_application_key' delete: - - $ref: >- - #/components/x-stackQL-resources/service_account_keys/methods/delete_service_account_application_key + - $ref: '#/components/x-stackQL-resources/service_account_keys/methods/delete_service_account_application_key' replace: [] teams: id: datadog.organization.teams @@ -10007,24 +37463,42 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] create_team: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1team/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel sync_teams: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1team~1sync/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_team: operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_team: operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}/get' @@ -10032,12 +37506,19 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_team: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/teams/methods/get_team' @@ -10049,42 +37530,128 @@ components: delete: - $ref: '#/components/x-stackQL-resources/teams/methods/delete_team' replace: [] - team_members: - id: datadog.organization.team_members - name: team_members - title: Team Members + team_hierarchy_links: + id: datadog.organization.team_hierarchy_links + name: team_hierarchy_links + title: Team Hierarchy Links methods: - list_member_teams: + list_team_hierarchy_links: operation: - $ref: '#/paths/~1api~1v2~1team~1{super_team_id}~1member_teams/get' + $ref: '#/paths/~1api~1v2~1team-hierarchy-links/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - add_member_team: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + add_team_hierarchy_link: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1team-hierarchy-links/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + remove_team_hierarchy_link: operation: - $ref: '#/paths/~1api~1v2~1team~1{super_team_id}~1member_teams/post' + $ref: '#/paths/~1api~1v2~1team-hierarchy-links~1{link_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - remove_member_team: + request: + nativeCasing: camel + get_team_hierarchy_link: + operation: + $ref: '#/paths/~1api~1v2~1team-hierarchy-links~1{link_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/team_hierarchy_links/methods/get_team_hierarchy_link' + - $ref: '#/components/x-stackQL-resources/team_hierarchy_links/methods/list_team_hierarchy_links' + insert: + - $ref: '#/components/x-stackQL-resources/team_hierarchy_links/methods/add_team_hierarchy_link' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/team_hierarchy_links/methods/remove_team_hierarchy_link' + replace: [] + team_connections: + id: datadog.organization.team_connections + name: team_connections + title: Team Connections + methods: + delete_team_connections: operation: - $ref: >- - #/paths/~1api~1v2~1team~1{super_team_id}~1member_teams~1{member_team_id}/delete + $ref: '#/paths/~1api~1v2~1team~1connections/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel + list_team_connections: + operation: + $ref: '#/paths/~1api~1v2~1team~1connections/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_team_connections: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1team~1connections/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/team_members/methods/list_member_teams + - $ref: '#/components/x-stackQL-resources/team_connections/methods/list_team_connections' insert: - - $ref: >- - #/components/x-stackQL-resources/team_members/methods/add_member_team + - $ref: '#/components/x-stackQL-resources/team_connections/methods/create_team_connections' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/team_members/methods/remove_member_team + - $ref: '#/components/x-stackQL-resources/team_connections/methods/delete_team_connections' + replace: [] + team_syncs: + id: datadog.organization.team_syncs + name: team_syncs + title: Team Syncs + methods: + get_team_sync: + operation: + $ref: '#/paths/~1api~1v2~1team~1sync/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/team_syncs/methods/get_team_sync' + insert: [] + update: [] + delete: [] replace: [] team_links: id: datadog.organization.team_links @@ -10098,18 +37665,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_team_link: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_team_link: operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_team_link: operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/get' @@ -10117,70 +37693,152 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_team_link: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1team~1{team_id}~1links~1{link_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/team_links/methods/get_team_link' + - $ref: '#/components/x-stackQL-resources/team_links/methods/get_team_links' + insert: + - $ref: '#/components/x-stackQL-resources/team_links/methods/create_team_link' + update: + - $ref: '#/components/x-stackQL-resources/team_links/methods/update_team_link' + delete: + - $ref: '#/components/x-stackQL-resources/team_links/methods/delete_team_link' + replace: [] + team_memberships: + id: datadog.organization.team_memberships + name: team_memberships + title: Team Memberships + methods: + get_team_memberships: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_team_membership: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_team_membership: + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships~1{user_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_team_membership: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships~1{user_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/team_links/methods/get_team_link' - - $ref: '#/components/x-stackQL-resources/team_links/methods/get_team_links' + - $ref: '#/components/x-stackQL-resources/team_memberships/methods/get_team_memberships' insert: - - $ref: >- - #/components/x-stackQL-resources/team_links/methods/create_team_link + - $ref: '#/components/x-stackQL-resources/team_memberships/methods/create_team_membership' update: - - $ref: >- - #/components/x-stackQL-resources/team_links/methods/update_team_link + - $ref: '#/components/x-stackQL-resources/team_memberships/methods/update_team_membership' delete: - - $ref: >- - #/components/x-stackQL-resources/team_links/methods/delete_team_link + - $ref: '#/components/x-stackQL-resources/team_memberships/methods/delete_team_membership' replace: [] - team_memberships: - id: datadog.organization.team_memberships - name: team_memberships - title: Team Memberships + team_notification_rules: + id: datadog.organization.team_notification_rules + name: team_notification_rules + title: Team Notification Rules methods: - get_team_memberships: + get_team_notification_rules: operation: - $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/get' + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1notification-rules/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_team_membership: + request: + nativeCasing: camel + create_team_notification_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships/post' + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1notification-rules/post' response: mediaType: application/json - openAPIDocKey: '200' - delete_team_membership: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_team_notification_rule: operation: - $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships~1{user_id}/delete' + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1notification-rules~1{rule_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - update_team_membership: + request: + nativeCasing: camel + get_team_notification_rule: operation: - $ref: '#/paths/~1api~1v2~1team~1{team_id}~1memberships~1{user_id}/patch' + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1notification-rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_team_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1notification-rules~1{rule_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/team_memberships/methods/get_team_memberships + - $ref: '#/components/x-stackQL-resources/team_notification_rules/methods/get_team_notification_rule' + - $ref: '#/components/x-stackQL-resources/team_notification_rules/methods/get_team_notification_rules' insert: - - $ref: >- - #/components/x-stackQL-resources/team_memberships/methods/create_team_membership - update: - - $ref: >- - #/components/x-stackQL-resources/team_memberships/methods/update_team_membership + - $ref: '#/components/x-stackQL-resources/team_notification_rules/methods/create_team_notification_rule' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/team_memberships/methods/delete_team_membership - replace: [] + - $ref: '#/components/x-stackQL-resources/team_notification_rules/methods/delete_team_notification_rule' + replace: + - $ref: '#/components/x-stackQL-resources/team_notification_rules/methods/update_team_notification_rule' team_permission_settings: id: datadog.organization.team_permission_settings name: team_permission_settings @@ -10193,43 +37851,27 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_team_permission_setting: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1team~1{team_id}~1permission-settings~1{action}/put + $ref: '#/paths/~1api~1v2~1team~1{team_id}~1permission-settings~1{action}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/team_permission_settings/methods/get_team_permission_settings + - $ref: '#/components/x-stackQL-resources/team_permission_settings/methods/get_team_permission_settings' insert: [] update: [] delete: [] replace: - - $ref: >- - #/components/x-stackQL-resources/team_permission_settings/methods/update_team_permission_setting - usage_application_security_monitoring: - id: datadog.organization.usage_application_security_monitoring - name: usage_application_security_monitoring - title: Usage Application Security Monitoring - methods: - get_usage_application_security_monitoring: - operation: - $ref: '#/paths/~1api~1v2~1usage~1application_security/get' - response: - mediaType: application/json;datetime-format=rfc3339 - openAPIDocKey: '200' - objectKey: $.data - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/usage_application_security_monitoring/methods/get_usage_application_security_monitoring - insert: [] - update: [] - delete: [] - replace: [] + - $ref: '#/components/x-stackQL-resources/team_permission_settings/methods/update_team_permission_setting' billing_dimension_mapping: id: datadog.organization.billing_dimension_mapping name: billing_dimension_mapping @@ -10239,33 +37881,14 @@ components: operation: $ref: '#/paths/~1api~1v2~1usage~1billing_dimension_mapping/get' response: - mediaType: application/json;datetime-format=rfc3339 - openAPIDocKey: '200' - objectKey: $.data - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/billing_dimension_mapping/methods/get_billing_dimension_mapping - insert: [] - update: [] - delete: [] - replace: [] - cost_by_org: - id: datadog.organization.cost_by_org - name: cost_by_org - title: Cost By Org - methods: - get_cost_by_org: - operation: - $ref: '#/paths/~1api~1v2~1usage~1cost_by_org/get' - response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/cost_by_org/methods/get_cost_by_org + - $ref: '#/components/x-stackQL-resources/billing_dimension_mapping/methods/get_billing_dimension_mapping' insert: [] update: [] delete: [] @@ -10279,13 +37902,14 @@ components: operation: $ref: '#/paths/~1api~1v2~1usage~1estimated_cost/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/estimated_cost_by_org/methods/get_estimated_cost_by_org + - $ref: '#/components/x-stackQL-resources/estimated_cost_by_org/methods/get_estimated_cost_by_org' insert: [] update: [] delete: [] @@ -10299,13 +37923,14 @@ components: operation: $ref: '#/paths/~1api~1v2~1usage~1historical_cost/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/historical_cost_by_org/methods/get_historical_cost_by_org + - $ref: '#/components/x-stackQL-resources/historical_cost_by_org/methods/get_historical_cost_by_org' insert: [] update: [] delete: [] @@ -10319,149 +37944,222 @@ components: operation: $ref: '#/paths/~1api~1v2~1usage~1hourly_usage/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 500 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/hourly_usage/methods/get_hourly_usage + - $ref: '#/components/x-stackQL-resources/hourly_usage/methods/get_hourly_usage' insert: [] update: [] delete: [] replace: [] - lambda_traced_invocations_usage: - id: datadog.organization.lambda_traced_invocations_usage - name: lambda_traced_invocations_usage - title: Lambda Traced Invocations Usage + projected_cost: + id: datadog.organization.projected_cost + name: projected_cost + title: Projected Cost methods: - get_usage_lambda_traced_invocations: + get_projected_cost: operation: - $ref: '#/paths/~1api~1v2~1usage~1lambda_traced_invocations/get' + $ref: '#/paths/~1api~1v2~1usage~1projected_cost/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/lambda_traced_invocations_usage/methods/get_usage_lambda_traced_invocations + - $ref: '#/components/x-stackQL-resources/projected_cost/methods/get_projected_cost' insert: [] update: [] delete: [] replace: [] - observability_pipelines_usage: - id: datadog.organization.observability_pipelines_usage - name: observability_pipelines_usage - title: Observability Pipelines Usage + usage_summary_available_fields: + id: datadog.organization.usage_summary_available_fields + name: usage_summary_available_fields + title: Usage Summary Available Fields methods: - get_usage_observability_pipelines: + get_usage_summary_available_fields: operation: - $ref: '#/paths/~1api~1v2~1usage~1observability_pipelines/get' + $ref: '#/paths/~1api~1v2~1usage~1summary~1available_fields/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/observability_pipelines_usage/methods/get_usage_observability_pipelines + - $ref: '#/components/x-stackQL-resources/usage_summary_available_fields/methods/get_usage_summary_available_fields' insert: [] update: [] delete: [] replace: [] - projected_cost: - id: datadog.organization.projected_cost - name: projected_cost - title: Projected Cost + usage_usage_attribution_types: + id: datadog.organization.usage_usage_attribution_types + name: usage_usage_attribution_types + title: Usage Usage Attribution Types methods: - get_projected_cost: + get_usage_attribution_types: operation: - $ref: '#/paths/~1api~1v2~1usage~1projected_cost/get' + $ref: '#/paths/~1api~1v2~1usage~1usage-attribution-types/get' response: - mediaType: application/json;datetime-format=rfc3339 + mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/projected_cost/methods/get_projected_cost + - $ref: '#/components/x-stackQL-resources/usage_usage_attribution_types/methods/get_usage_attribution_types' insert: [] update: [] delete: [] replace: [] - invitations: - id: datadog.organization.invitations - name: invitations - title: Invitations + user_authorized_clients: + id: datadog.organization.user_authorized_clients + name: user_authorized_clients + title: User Authorized Clients methods: - send_invitations: + list_user_authorized_clients: operation: - $ref: '#/paths/~1api~1v2~1user_invitations/post' + $ref: '#/paths/~1api~1v2~1user_authorized_clients/get' response: mediaType: application/json - openAPIDocKey: '201' - get_invitation: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + delete_user_authorized_client: operation: - $ref: '#/paths/~1api~1v2~1user_invitations~1{user_invitation_uuid}/get' + $ref: '#/paths/~1api~1v2~1user_authorized_clients~1{user_authorized_client_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_user_authorized_client: + operation: + $ref: '#/paths/~1api~1v2~1user_authorized_clients~1{user_authorized_client_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/invitations/methods/get_invitation + - $ref: '#/components/x-stackQL-resources/user_authorized_clients/methods/get_user_authorized_client' + - $ref: '#/components/x-stackQL-resources/user_authorized_clients/methods/list_user_authorized_clients' insert: [] update: [] - delete: [] + delete: + - $ref: '#/components/x-stackQL-resources/user_authorized_clients/methods/delete_user_authorized_client' replace: [] - users: - id: datadog.organization.users - name: users - title: Users + user_authorized_client_clients: + id: datadog.organization.user_authorized_client_clients + name: user_authorized_client_clients + title: User Authorized Client Clients methods: - list_users: + delete_user_authorized_clients_by_client: operation: - $ref: '#/paths/~1api~1v2~1users/get' + $ref: '#/paths/~1api~1v2~1user_authorized_clients~1client~1{client_id}/delete' response: mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - create_user: + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/user_authorized_client_clients/methods/delete_user_authorized_clients_by_client' + replace: [] + invitations: + id: datadog.organization.invitations + name: invitations + title: Invitations + methods: + send_invitations: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1users/post' + $ref: '#/paths/~1api~1v2~1user_invitations/post' response: mediaType: application/json openAPIDocKey: '201' - disable_user: + request: + nativeCasing: camel + get_invitation: operation: - $ref: '#/paths/~1api~1v2~1users~1{user_id}/delete' + $ref: '#/paths/~1api~1v2~1user_invitations~1{user_invitation_uuid}/get' response: mediaType: application/json - openAPIDocKey: '204' - get_user: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/invitations/methods/get_invitation' + insert: [] + update: [] + delete: [] + replace: [] + user_identity_providers: + id: datadog.organization.user_identity_providers + name: user_identity_providers + title: User Identity Providers + methods: + get_user_identity_providers: operation: - $ref: '#/paths/~1api~1v2~1users~1{user_id}/get' + $ref: '#/paths/~1api~1v2~1users~1{user_id}~1identity_providers/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_user: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/user_identity_providers/methods/get_user_identity_providers' + insert: [] + update: [] + delete: [] + replace: [] + user_invitations: + id: datadog.organization.user_invitations + name: user_invitations + title: User Invitations + methods: + delete_user_invitations: operation: - $ref: '#/paths/~1api~1v2~1users~1{user_id}/patch' + $ref: '#/paths/~1api~1v2~1users~1{user_id}~1invitations/delete' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: '#/components/x-stackQL-resources/users/methods/get_user' - - $ref: '#/components/x-stackQL-resources/users/methods/list_users' - insert: - - $ref: '#/components/x-stackQL-resources/users/methods/create_user' - update: - - $ref: '#/components/x-stackQL-resources/users/methods/update_user' - delete: [] + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/user_invitations/methods/delete_user_invitations' replace: [] user_organizations: id: datadog.organization.user_organizations @@ -10475,10 +38173,11 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/user_organizations/methods/list_user_organizations + - $ref: '#/components/x-stackQL-resources/user_organizations/methods/list_user_organizations' insert: [] update: [] delete: [] @@ -10495,14 +38194,38 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/user_permissions/methods/list_user_permissions + - $ref: '#/components/x-stackQL-resources/user_permissions/methods/list_user_permissions' insert: [] update: [] delete: [] replace: [] + user_relationship_identity_providers: + id: datadog.organization.user_relationship_identity_providers + name: user_relationship_identity_providers + title: User Relationship Identity Providers + methods: + update_user_identity_providers: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1users~1{user_id}~1relationships~1identity_providers/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/user_relationship_identity_providers/methods/update_user_identity_providers' + delete: [] + replace: [] user_team_memberships: id: datadog.organization.user_team_memberships name: user_team_memberships @@ -10515,17 +38238,211 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/user_team_memberships/methods/get_user_memberships' + insert: [] + update: [] + delete: [] + replace: [] + api_key_validation: + id: datadog.organization.api_key_validation + name: api_key_validation + title: Api Key Validation + methods: + validate: + operation: + $ref: '#/paths/~1api~1v2~1validate/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/api_key_validation/methods/validate' + insert: [] + update: [] + delete: [] + replace: [] + key_validation: + id: datadog.organization.key_validation + name: key_validation + title: Key Validation + methods: + validate_apikey: + operation: + $ref: '#/paths/~1api~1v2~1validate_keys/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/key_validation/methods/validate_apikey' + insert: [] + update: [] + delete: [] + replace: [] + ip_ranges: + id: datadog.organization.ip_ranges + name: ip_ranges + title: Ip Ranges + methods: + get_ipranges: + operation: + $ref: '#/paths/~1/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ip_ranges/methods/get_ipranges' + insert: [] + update: [] + delete: [] + replace: [] + usage_billable_summary: + id: datadog.organization.usage_billable_summary + name: usage_billable_summary + title: Usage Billable Summary + methods: + get_usage_billable_summary: + operation: + $ref: '#/paths/~1api~1v1~1usage~1billable-summary/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.usage + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_billable_summary/methods/get_usage_billable_summary' + insert: [] + update: [] + delete: [] + replace: [] + usage_hourly_attribution: + id: datadog.organization.usage_hourly_attribution + name: usage_hourly_attribution + title: Usage Hourly Attribution + methods: + get_hourly_usage_attribution: + operation: + $ref: '#/paths/~1api~1v1~1usage~1hourly-attribution/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.usage + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_hourly_attribution/methods/get_hourly_usage_attribution' + insert: [] + update: [] + delete: [] + replace: [] + usage_logs_by_index: + id: datadog.organization.usage_logs_by_index + name: usage_logs_by_index + title: Usage Logs By Index + methods: + get_usage_logs_by_index: + operation: + $ref: '#/paths/~1api~1v1~1usage~1logs_by_index/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.usage + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_logs_by_index/methods/get_usage_logs_by_index' + insert: [] + update: [] + delete: [] + replace: [] + usage_monthly_attribution: + id: datadog.organization.usage_monthly_attribution + name: usage_monthly_attribution + title: Usage Monthly Attribution + methods: + get_monthly_usage_attribution: + operation: + $ref: '#/paths/~1api~1v1~1usage~1monthly-attribution/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.usage + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_monthly_attribution/methods/get_monthly_usage_attribution' + insert: [] + update: [] + delete: [] + replace: [] + usage_summary: + id: datadog.organization.usage_summary + name: usage_summary + title: Usage Summary + methods: + get_usage_summary: + operation: + $ref: '#/paths/~1api~1v1~1usage~1summary/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.usage + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/usage_summary/methods/get_usage_summary' + insert: [] + update: [] + delete: [] + replace: [] + usage_top_avg_metrics: + id: datadog.organization.usage_top_avg_metrics + name: usage_top_avg_metrics + title: Usage Top Avg Metrics + methods: + get_usage_top_avg_metrics: + operation: + $ref: '#/paths/~1api~1v1~1usage~1top_avg_metrics/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.usage + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 5000 sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/user_team_memberships/methods/get_user_memberships + - $ref: '#/components/x-stackQL-resources/usage_top_avg_metrics/methods/get_usage_top_avg_metrics' insert: [] update: [] delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/remote_config.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/remote_config.yaml index 18f6f30..fe066af 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/remote_config.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/remote_config.yaml @@ -12,9 +12,29 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000003 + type: custom_rule schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleListResponse + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleListResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' @@ -29,15 +49,62 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + action: block_request + parameters: + location: /blocking + status_code: 403 + blocking: false + conditions: + - operator: match_regex + parameters: + data: blocked_users + regex: path.* + value: custom_tag + enabled: false + name: Block request from a bad useragent + path_glob: /api/search/* + scope: + - env: prod + service: billing-service + tags: + category: business_logic + type: users.login.success + type: custom_rule schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleCreateRequest + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCreateRequest' description: The definition of the new WAF Custom Rule. required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from a bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000004 + type: custom_rule schema: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' description: Created @@ -83,6 +150,27 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000001 + type: custom_rule schema: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' description: OK @@ -104,15 +192,66 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + action: block_request + parameters: + location: /blocking + status_code: 403 + blocking: false + conditions: + - operator: match_regex + parameters: + data: blocked_users + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + value: custom_tag + enabled: false + name: Block request from bad useragent + path_glob: /api/search/* + scope: + - env: prod + service: billing-service + tags: + category: business_logic + type: users.login.success + type: custom_rule schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleUpdateRequest + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleUpdateRequest' description: New definition of the WAF Custom Rule. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + blocking: false + conditions: + - operator: match_regex + parameters: + inputs: + - address: server.request.query + key_path: + - id + regex: path.* + enabled: false + name: Block request from bad useragent + tags: + category: attack_attempt + type: lfi + id: 00000000-0000-0000-0000-000000000002 + type: custom_rule schema: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' description: OK @@ -139,9 +278,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000003 + type: exclusion_filter schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFiltersResponse + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFiltersResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' @@ -156,31 +308,61 @@ paths: - appsec_protect_read x-terraform-resource: appsec_waf_exclusion_filter post: - description: >- + description: |- Create a new WAF exclusion filter with the given parameters. - - A request matched by an exclusion filter will be ignored by the - Application Security WAF product. - - Go to https://app.datadoghq.com/security/appsec/passlist to review - existing exclusion filters (also called passlist entries). + A request matched by an exclusion filter will be ignored by the Application Security WAF product. + Go to https://app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries). operationId: CreateApplicationSecurityWafExclusionFilter requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + on_match: monitor + parameters: + - list.search.query + path_glob: /accounts/* + rules_target: + - rule_id: dog-913-009 + tags: + category: attack_attempt + type: lfi + scope: + - env: www + service: prod + type: exclusion_filter schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterCreateRequest + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterCreateRequest' description: The definition of the new WAF exclusion filter. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000004 + type: exclusion_filter schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterResponse + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -233,9 +415,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000001 + type: exclusion_filter schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterResponse + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' @@ -261,18 +456,52 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + on_match: monitor + parameters: + - list.search.query + path_glob: /accounts/* + rules_target: + - rule_id: dog-913-009 + tags: + category: attack_attempt + type: lfi + scope: + - env: www + service: prod + type: exclusion_filter schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterUpdateRequest + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateRequest' description: The exclusion filter to update. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: Exclude false positives on a path + enabled: true + ip_list: + - 198.51.100.72 + parameters: + - list.search.query + path_glob: /accounts/* + id: 00000000-0000-0000-0000-000000000002 + type: exclusion_filter schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterResponse + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -293,14 +522,271 @@ paths: permissions: - appsec_protect_write x-terraform-resource: appsec_waf_exclusion_filter + /api/v2/remote_config/products/asm/waf/policies: + get: + description: Retrieve a list of WAF policies. + operationId: ListApplicationSecurityWAFPolicies + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Monitor security scanners and application attacks such as Server-Side-Request-Forgery (SSRF), SQL Injection, Log4Shell, and Cross-Site-Scripting (XSS). + isDefault: true + name: Managed - Monitoring-only + rules: [] + rulesets: [] + scope: [] + version: 0 + id: recommended + meta: {} + type: policy + - attributes: + description: Block known attack tools without impacting legitimate security scans. + isDefault: false + name: Managed - Block attack tools + protectionPresets: + - attack-tools + rules: [] + rulesets: [] + scope: [] + version: 0 + id: recommended-attack-tools + meta: {} + type: policy + schema: + $ref: '#/components/schemas/ApplicationSecurityPolicyListResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List all WAF policies + tags: + - Application Security + post: + description: Create a new WAF policy. + operationId: CreateApplicationSecurityWafPolicy + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + basedOn: recommended + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + scope: + - env: prod + service: billing-service + version: 0 + type: policy + schema: + $ref: '#/components/schemas/ApplicationSecurityPolicyCreateRequest' + description: The new WAF policy. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + rulesets: [] + scope: + - env: prod + service: billing-service + version: 0 + id: 841d53b4-4d73-4585-99cc-39dd10883f7c + meta: + added_at: '2026-04-16T10:25:18Z' + added_by: 9919ec9b-ebc7-49ee-8dc8-03626e717cca + added_by_name: CI Account + type: policy + schema: + $ref: '#/components/schemas/ApplicationSecurityPolicyResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a WAF Policy + tags: + - Application Security + x-codegen-request-body-name: body + /api/v2/remote_config/products/asm/waf/policies/{policy_id}: + delete: + description: Delete a specific WAF policy. + operationId: DeleteApplicationSecurityWafPolicy + parameters: + - $ref: '#/components/parameters/ApplicationSecurityPolicyIDParam' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a WAF Policy + tags: + - Application Security + x-terraform-resource: appsec_waf_policy + get: + description: Retrieve a WAF policy by ID. + operationId: GetApplicationSecurityWafPolicy + parameters: + - $ref: '#/components/parameters/ApplicationSecurityPolicyIDParam' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: This is a test policy. + isDefault: false + name: Test policy + rules: [] + rulesets: [] + scope: [] + version: -1 + id: cc3e574d-9b5a-4310-b7f4-5560483f84b1 + meta: + added_at: '2026-04-16T10:25:20Z' + added_by: 9919ec9b-ebc7-49ee-8dc8-03626e717cca + added_by_name: CI Account + type: policy + schema: + $ref: '#/components/schemas/ApplicationSecurityPolicyResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a WAF Policy + tags: + - Application Security + x-terraform-resource: appsec_waf_policy + put: + description: |- + Update a specific WAF policy. + Returns the policy object when the request is successful. + operationId: UpdateApplicationSecurityWafPolicy + parameters: + - $ref: '#/components/parameters/ApplicationSecurityPolicyIDParam' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + scope: + - env: prod + service: billing-service + version: 0 + type: policy + schema: + $ref: '#/components/schemas/ApplicationSecurityPolicyUpdateRequest' + description: New WAF policy. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Policy applied to internal web applications. + isDefault: false + name: Internal Network Policy + protectionPresets: + - attack-tools + rules: + - blocking: false + enabled: true + id: rasp-001-002 + rulesets: [] + scope: + - env: prod + service: billing-service + version: 0 + id: 841d53b4-4d73-4585-99cc-39dd10883f7c + meta: + added_at: '2026-04-16T10:25:18Z' + added_by: 9919ec9b-ebc7-49ee-8dc8-03626e717cca + added_by_name: CI Account + type: policy + schema: + $ref: '#/components/schemas/ApplicationSecurityPolicyResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a WAF Policy + tags: + - Application Security + x-codegen-request-body-name: body + x-terraform-resource: appsec_waf_policy /api/v2/remote_config/products/cws/agent_rules: get: - description: >- + description: |- Get the list of Workload Protection agent rules. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: ListCSMThreatsAgentRules parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' @@ -308,9 +794,19 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentRulesListResponse + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRulesListResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' @@ -320,16 +816,26 @@ paths: tags: - CSM Threats post: - description: >- + description: |- Create a new Workload Protection agent rule with the given parameters. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: CreateCSMThreatsAgentRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + policy_id: a8c8e364-6556-434d-b798-a4c23de29c0b + silent: false + type: agent_rule schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' description: The definition of the new agent rule @@ -338,6 +844,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' description: OK @@ -355,12 +872,10 @@ paths: x-codegen-request-body-name: body /api/v2/remote_config/products/cws/agent_rules/{agent_rule_id}: delete: - description: >- + description: |- Delete a specific Workload Protection agent rule. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: DeleteCSMThreatsAgentRule parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' @@ -378,12 +893,10 @@ paths: tags: - CSM Threats get: - description: >- + description: |- Get the details of a specific Workload Protection agent rule. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: GetCSMThreatsAgentRule parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' @@ -392,6 +905,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' description: OK @@ -405,14 +929,11 @@ paths: tags: - CSM Threats patch: - description: >- + description: |- Update a specific Workload Protection Agent rule. - Returns the agent rule object when the request is successful. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: UpdateCSMThreatsAgentRule parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' @@ -420,6 +941,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + policy_id: a8c8e364-6556-434d-b798-a4c23de29c0b + silent: false + id: 3dd-0uc-h1s + type: agent_rule schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' description: New definition of the agent rule @@ -428,6 +961,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' description: OK @@ -447,20 +991,27 @@ paths: x-codegen-request-body-name: body /api/v2/remote_config/products/cws/policy: get: - description: >- + description: |- Get the list of Workload Protection policies. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: ListCSMThreatsAgentPolicies responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPoliciesListResponse + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPoliciesListResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' @@ -470,25 +1021,43 @@ paths: tags: - CSM Threats post: - description: >- + description: |- Create a new Workload Protection policy with the given parameters. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: CreateCSMThreatsAgentPolicy requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + hostTagsLists: + - - env:test + name: my_agent_policy + type: policy schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyCreateRequest + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateRequest' description: The definition of the new Agent policy required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' description: OK @@ -506,23 +1075,20 @@ paths: x-codegen-request-body-name: body /api/v2/remote_config/products/cws/policy/download: get: - description: >- - The download endpoint generates a Workload Protection policy file from - your currently active - - Workload Protection agent rules, and downloads them as a `.policy` file. - This file can then be deployed to - + description: |- + The download endpoint generates a Workload Protection policy file from your currently active + Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to your agents to update the policy running in your environment. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: DownloadCSMThreatsPolicy responses: '200': content: application/zip: + examples: + default: + value: '' schema: format: binary type: string @@ -536,12 +1102,10 @@ paths: - CSM Threats /api/v2/remote_config/products/cws/policy/{policy_id}: delete: - description: >- + description: |- Delete a specific Workload Protection policy. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: DeleteCSMThreatsAgentPolicy parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' @@ -560,12 +1124,10 @@ paths: tags: - CSM Threats get: - description: >- + description: |- Get the details of a specific Workload Protection policy. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: GetCSMThreatsAgentPolicy parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' @@ -573,6 +1135,16 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' description: OK @@ -586,29 +1158,45 @@ paths: tags: - CSM Threats patch: - description: >- + description: |- Update a specific Workload Protection policy. - Returns the policy object when the request is successful. - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. + **Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. operationId: UpdateCSMThreatsAgentPolicy parameters: - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: 6517fcc1-cec7-4394-a655-8d6e9d085255 + type: policy schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateRequest + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateRequest' description: New definition of the Agent policy required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: My agent policy + enabled: true + name: my_agent_policy + id: abc-123 + type: policy schema: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' description: OK @@ -626,162 +1214,15 @@ paths: tags: - CSM Threats x-codegen-request-body-name: body - /api/v2/remote_config/products/obs_pipelines/pipelines: - get: - description: Retrieve a list of pipelines. - operationId: ListPipelines - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListPipelinesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List pipelines - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - post: - description: Create a new pipeline. - operationId: CreatePipeline - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipelineSpec' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_deploy - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - /api/v2/remote_config/products/obs_pipelines/pipelines/validate: - post: - description: > - Validates a pipeline configuration without creating or updating any - resources. - - Returns a list of validation errors, if any. - operationId: ValidatePipeline - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipelineSpec' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ValidationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate an observability pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - /api/v2/remote_config/products/obs_pipelines/pipelines/{pipeline_id}: - delete: - description: Delete a pipeline. - operationId: DeletePipeline - parameters: - - description: The ID of the pipeline to delete. - in: path - name: pipeline_id - required: true - schema: - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_delete - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. + /api/v2/remote_config/products/rum/configs/{config_id}: get: - description: Get a specific pipeline by its ID. - operationId: GetPipeline + description: Retrieve a RUM SDK configuration by its identifier. + operationId: GetRumSdkConfig parameters: - - description: The ID of the pipeline to retrieve. + - description: The ID of the RUM SDK configuration. + example: abc12345-1234-5678-abcd-ef1234567890 in: path - name: pipeline_id + name: config_id required: true schema: type: string @@ -789,72 +1230,120 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + rum: + application_id: f80e917c-3cd0-4048-ade7-1c4c207baa99 + default_privacy_level: mask-user-input + enable_privacy_for_action_name: false + env: production + service: my-service + session_replay_sample_rate: 10 + session_sample_rate: 50 + trace_sample_rate: 100 + track_session_across_subdomains: false + id: abc12345-1234-5678-abcd-ef1234567890 + meta: + updated_at: '2024-01-15T09:30:00.000Z' + updated_by: user@datadoghq.com + type: rum_sdk_config schema: - $ref: '#/components/schemas/ObservabilityPipeline' + $ref: '#/components/schemas/RumSdkConfigResponse' description: OK '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a specific pipeline + summary: Get a RUM SDK configuration tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. + - RUM Remote Config + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). put: - description: Update a pipeline. - operationId: UpdatePipeline + description: |- + Update an existing RUM SDK configuration by its identifier. + Returns the updated configuration when successful. + operationId: UpdateRumSdkConfig parameters: - - description: The ID of the pipeline to update. + - description: The ID of the RUM SDK configuration. + example: abc12345-1234-5678-abcd-ef1234567890 in: path - name: pipeline_id + name: config_id required: true schema: type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + rum: + default_privacy_level: mask + enable_privacy_for_action_name: true + session_replay_sample_rate: 20 + session_sample_rate: 75 + id: abc12345-1234-5678-abcd-ef1234567890 + type: rum_sdk_config schema: - $ref: '#/components/schemas/ObservabilityPipeline' + $ref: '#/components/schemas/RumSdkConfigUpdateRequest' + description: The RUM SDK configuration update. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + rum: + application_id: f80e917c-3cd0-4048-ade7-1c4c207baa99 + default_privacy_level: mask + enable_privacy_for_action_name: true + session_replay_sample_rate: 20 + session_sample_rate: 75 + id: abc12345-1234-5678-abcd-ef1234567890 + type: rum_sdk_config schema: - $ref: '#/components/schemas/ObservabilityPipeline' + $ref: '#/components/schemas/RumSdkConfigResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': $ref: '#/components/responses/NotAuthorizedResponse' '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a pipeline + summary: Update a RUM SDK configuration tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_deploy - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. + - RUM Remote Config + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). components: schemas: ApplicationSecurityWafCustomRuleListResponse: @@ -919,6 +1408,37 @@ components: required: - data type: object + ApplicationSecurityPolicyListResponse: + description: Response object that includes a list of WAF policies. + properties: + data: + description: The WAF policy data. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyData' + type: array + type: object + ApplicationSecurityPolicyCreateRequest: + description: Request object that includes the policy to create. + properties: + data: + $ref: '#/components/schemas/ApplicationSecurityPolicyCreateData' + required: + - data + type: object + ApplicationSecurityPolicyResponse: + description: Response object that includes a single WAF policy. + properties: + data: + $ref: '#/components/schemas/ApplicationSecurityPolicyData' + type: object + ApplicationSecurityPolicyUpdateRequest: + description: Request object that includes the policy to update. + properties: + data: + $ref: '#/components/schemas/ApplicationSecurityPolicyUpdateData' + required: + - data + type: object CloudWorkloadSecurityAgentRulesListResponse: description: Response object that includes a list of Agent rule properties: @@ -943,9 +1463,7 @@ components: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' type: object CloudWorkloadSecurityAgentRuleUpdateRequest: - description: >- - Request object that includes the Agent rule with the attributes to - update + description: Request object that includes the Agent rule with the attributes to update properties: data: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData' @@ -976,63 +1494,52 @@ components: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyData' type: object CloudWorkloadSecurityAgentPolicyUpdateRequest: - description: >- - Request object that includes the Agent policy with the attributes to - update + description: Request object that includes the Agent policy with the attributes to update properties: data: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateData' required: - data type: object - ListPipelinesResponse: - description: >- - Represents the response payload containing a list of pipelines and - associated metadata. + RumSdkConfigResponse: + description: Response containing a RUM SDK configuration. properties: data: - description: The `schema` `data`. - items: - $ref: '#/components/schemas/ObservabilityPipelineData' - type: array - meta: - $ref: '#/components/schemas/ListPipelinesResponseMeta' + $ref: '#/components/schemas/RumSdkConfigData' required: - data type: object - ObservabilityPipelineSpec: - description: >- - Input schema representing an observability pipeline configuration. Used - in create and validate requests. + JSONAPIErrorResponse: + description: API error response. properties: - data: - $ref: '#/components/schemas/ObservabilityPipelineSpecData' - required: - - data + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors type: object - ObservabilityPipeline: - description: Top-level schema representing a pipeline. + RumSdkConfigUpdateRequest: + description: Request body for updating a RUM SDK configuration. properties: data: - $ref: '#/components/schemas/ObservabilityPipelineData' + $ref: '#/components/schemas/RumSdkConfigUpdateData' required: - data type: object - ValidationResponse: - description: Response containing validation errors. - example: - errors: - - meta: - field: region - id: datadog-agent-source - message: Field 'region' is required - title: Field 'region' is required + ApplicationSecurityWafCustomRuleData: + description: Object for a single WAF custom rule. properties: - errors: - description: The `ValidationResponse` `errors`. - items: - $ref: '#/components/schemas/ValidationError' - type: array + attributes: + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAttributes' + id: + description: The ID of the custom rule. + example: 2857c47d-1e3a-4300-8b2f-dc24089c084b + readOnly: true + type: string + type: + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' type: object APIErrorResponse: description: API error response. @@ -1049,25 +1556,11 @@ components: required: - errors type: object - ApplicationSecurityWafCustomRuleData: - description: Object for a single WAF custom rule. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAttributes' - id: - description: The ID of the custom rule. - example: 2857c47d-1e3a-4300-8b2f-dc24089c084b - readOnly: true - type: string - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - type: object ApplicationSecurityWafCustomRuleCreateData: description: Object for a single WAF custom rule. properties: attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleCreateAttributes + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCreateAttributes' type: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' required: @@ -1078,8 +1571,7 @@ components: description: Object for a single WAF Custom Rule. properties: attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleUpdateAttributes + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleUpdateAttributes' type: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' required: @@ -1100,8 +1592,7 @@ components: description: Object for creating a single WAF exclusion filter. properties: attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterCreateAttributes + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterCreateAttributes' type: $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' required: @@ -1112,14 +1603,50 @@ components: description: Object for updating a single WAF exclusion filter. properties: attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterUpdateAttributes + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateAttributes' type: $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' required: - attributes - type type: object + ApplicationSecurityPolicyData: + description: Object for a single WAF policy. + properties: + attributes: + $ref: '#/components/schemas/ApplicationSecurityPolicyAttributes' + id: + description: The ID of the policy. + example: 2857c47d-1e3a-4300-8b2f-dc24089c084b + readOnly: true + type: string + meta: + $ref: '#/components/schemas/ApplicationSecurityPolicyMetadata' + type: + $ref: '#/components/schemas/ApplicationSecurityPolicyType' + type: object + ApplicationSecurityPolicyCreateData: + description: Object for a single WAF policy. + properties: + attributes: + $ref: '#/components/schemas/ApplicationSecurityPolicyCreateAttributes' + type: + $ref: '#/components/schemas/ApplicationSecurityPolicyType' + required: + - attributes + - type + type: object + ApplicationSecurityPolicyUpdateData: + description: Object for a single WAF policy. + properties: + attributes: + $ref: '#/components/schemas/ApplicationSecurityPolicyUpdateAttributes' + type: + $ref: '#/components/schemas/ApplicationSecurityPolicyType' + required: + - attributes + - type + type: object CloudWorkloadSecurityAgentRuleData: description: Object for a single Agent rule properties: @@ -1172,8 +1699,7 @@ components: description: Object for a single Agent rule properties: attributes: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyCreateAttributes + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateAttributes' type: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' required: @@ -1184,8 +1710,7 @@ components: description: Object for a single Agent policy properties: attributes: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateAttributes + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateAttributes' id: $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyID' type: @@ -1194,67 +1719,62 @@ components: - attributes - type type: object - ObservabilityPipelineData: - description: Contains the pipeline’s ID, type, and configuration attributes. + RumSdkConfigData: + description: The RUM SDK configuration data object. properties: attributes: - $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' + $ref: '#/components/schemas/RumSdkConfigAttributes' id: - description: Unique identifier for the pipeline. - example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 + description: The unique identifier of the RUM SDK configuration. + example: abc12345-1234-5678-abcd-ef1234567890 type: string + meta: + $ref: '#/components/schemas/RumSdkConfigMeta' type: - default: pipelines - description: >- - The resource type identifier. For pipeline resources, this should - always be set to `pipelines`. - example: pipelines - type: string + $ref: '#/components/schemas/RumSdkConfigType' required: - id - type - attributes type: object - ListPipelinesResponseMeta: - description: Metadata about the response. + JSONAPIErrorItem: + description: API error response body properties: - totalCount: - description: The total number of pipelines. - example: 42 - format: int64 - type: integer + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string type: object - ObservabilityPipelineSpecData: - description: Contains the the pipeline configuration. + RumSdkConfigUpdateData: + description: The data object for updating a RUM SDK configuration. properties: attributes: - $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' - type: - default: pipelines - description: >- - The resource type identifier. For pipeline resources, this should - always be set to `pipelines`. - example: pipelines + $ref: '#/components/schemas/RumSdkConfigUpdateAttributes' + id: + description: The ID of the RUM SDK configuration to update. + example: abc12345-1234-5678-abcd-ef1234567890 type: string + type: + $ref: '#/components/schemas/RumSdkConfigType' required: + - id - type - attributes type: object - ValidationError: - description: >- - Represents a single validation error, including a human-readable title - and metadata. - properties: - meta: - $ref: '#/components/schemas/ValidationErrorMeta' - title: - description: A short, human-readable summary of the error. - example: Field 'region' is required - type: string - required: - - title - - meta - type: object ApplicationSecurityWafCustomRuleAttributes: description: A WAF custom rule. properties: @@ -1265,10 +1785,8 @@ components: example: false type: boolean conditions: - description: >- - Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - + description: |- + Conditions for which the WAF Custom Rule will triggers, all conditions needs to match in order for the WAF rule to trigger. items: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' @@ -1280,7 +1798,7 @@ components: metadata: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleMetadata' name: - description: The Name of the WAF custom rule. + description: The name of the WAF custom rule. example: Block request from bad useragent type: string path_glob: @@ -1320,10 +1838,8 @@ components: example: false type: boolean conditions: - description: >- - Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - + description: |- + Conditions for which the WAF Custom Rule will triggers, all conditions needs to match in order for the WAF rule to trigger items: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' @@ -1333,7 +1849,7 @@ components: example: false type: boolean name: - description: The Name of the WAF custom rule. + description: The name of the WAF custom rule. example: Block request from a bad useragent type: string path_glob: @@ -1364,10 +1880,8 @@ components: example: false type: boolean conditions: - description: >- - Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - + description: |- + Conditions for which the WAF Custom Rule will triggers, all conditions needs to match in order for the WAF rule to trigger. items: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' @@ -1377,7 +1891,7 @@ components: example: false type: boolean name: - description: The Name of the WAF custom rule. + description: The name of the WAF custom rule. example: Block request from bad useragent type: string path_glob: @@ -1410,15 +1924,12 @@ components: example: true type: boolean event_query: - description: >- - The event query matched by the legacy exclusion filter. Cannot be - created nor updated. + description: The event query matched by the legacy exclusion filter. Cannot be created nor updated. type: string ip_list: - description: >- - The client IP addresses matched by the exclusion filter (CIDR - notation is supported). + description: The client IP addresses matched by the exclusion filter (CIDR notation is supported). items: + description: A single IP address to exclude. example: 198.51.100.72 type: string type: array @@ -1427,11 +1938,9 @@ components: on_match: $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' parameters: - description: >- - A list of parameters matched by the exclusion filter in the HTTP - query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. + description: A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character. items: + description: A request parameter name to exclude from the query string or request body. example: list.search.query type: string type: array @@ -1442,8 +1951,7 @@ components: rules_target: description: The WAF rules targeted by the exclusion filter. items: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget' type: array scope: description: The services where the exclusion filter is deployed. @@ -1451,9 +1959,7 @@ components: $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' type: array search_query: - description: >- - Generated event search query for traces matching the exclusion - filter. + description: Generated event search query for traces matching the exclusion filter. readOnly: true type: string type: object @@ -1483,21 +1989,18 @@ components: example: true type: boolean ip_list: - description: >- - The client IP addresses matched by the exclusion filter (CIDR - notation is supported). + description: The client IP addresses matched by the exclusion filter (CIDR notation is supported). items: + description: A single IP address to exclude. example: 198.51.100.72 type: string type: array on_match: $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' parameters: - description: >- - A list of parameters matched by the exclusion filter in the HTTP - query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. + description: A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character. items: + description: A request parameter name to exclude from the query string or request body. example: list.search.query type: string type: array @@ -1508,8 +2011,7 @@ components: rules_target: description: The WAF rules targeted by the exclusion filter. items: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget' type: array scope: description: The services where the exclusion filter is deployed. @@ -1532,21 +2034,18 @@ components: example: true type: boolean ip_list: - description: >- - The client IP addresses matched by the exclusion filter (CIDR - notation is supported). + description: The client IP addresses matched by the exclusion filter (CIDR notation is supported). items: + description: A single IP address to exclude. example: 198.51.100.72 type: string type: array on_match: $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' parameters: - description: >- - A list of parameters matched by the exclusion filter in the HTTP - query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. + description: A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character. items: + description: A parameter name matched by the exclusion filter in the HTTP query string or request body. example: list.search.query type: string type: array @@ -1557,8 +2056,7 @@ components: rules_target: description: The WAF rules targeted by the exclusion filter. items: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget' type: array scope: description: The services where the exclusion filter is deployed. @@ -1569,6 +2067,205 @@ components: - description - enabled type: object + ApplicationSecurityPolicyAttributes: + description: A WAF policy. + properties: + description: + description: Description of the WAF policy. + example: Policy applied to internal web applications. + type: string + isDefault: + description: |- + Make this policy the default policy. The default policy is applied to + every service not specifically assigned to another policy. + example: false + type: boolean + name: + description: The name of the WAF policy. + example: Internal Network Policy + type: string + protectionPresets: + description: Presets enabled on this policy. + items: + example: attack-tools + type: string + type: array + rules: + description: Rule overrides applied by the policy. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyRuleOverride' + type: array + rulesets: + deprecated: true + description: 'Deprecated: Ruleset overrides. Use `protectionPresets` instead.' + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyRulesetOverride' + type: array + scope: + description: The scope of the WAF policy. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyScope' + type: array + version: + default: 0 + description: Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value. + example: 0 + format: int64 + type: integer + required: + - name + - description + type: object + ApplicationSecurityPolicyMetadata: + description: Metadata associated with the WAF policy. + properties: + added_at: + description: The date and time the WAF policy was created. + example: '2021-01-01T00:00:00Z' + format: date-time + type: string + added_by: + description: The handle of the user who created the WAF policy. + example: john.doe@datadoghq.com + type: string + added_by_name: + description: The name of the user who created the WAF policy. + example: John Doe + type: string + modified_at: + description: The date and time the WAF policy was last updated. + example: '2021-01-01T00:00:00Z' + format: date-time + type: string + modified_by: + description: The handle of the user who last updated the WAF policy. + example: john.doe@datadoghq.com + type: string + modified_by_name: + description: The name of the user who last updated the WAF policy. + example: John Doe + type: string + readOnly: true + type: object + ApplicationSecurityPolicyType: + default: policy + description: The type of the resource. The value should always be `policy`. + enum: + - policy + example: policy + type: string + x-enum-varnames: + - POLICY + ApplicationSecurityPolicyCreateAttributes: + description: Create a new WAF policy. + properties: + basedOn: + description: When creating a new policy, clone the policy indicated by this identifier. + example: recommended + type: string + description: + description: Description of the WAF policy. + example: Policy applied to internal web applications. + type: string + isDefault: + description: |- + Make this policy the default policy. The default policy is applied to + every service not specifically assigned to another policy. + example: false + type: boolean + name: + description: The name of the WAF policy. + example: Internal Network Policy + type: string + protectionPresets: + description: Presets enabled on this policy. + items: + example: attack-tools + type: string + type: array + rules: + description: Rule overrides applied by the policy. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyRuleOverride' + type: array + rulesets: + deprecated: true + description: 'Deprecated: Ruleset overrides. Use `protectionPresets` instead.' + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyRulesetOverride' + type: array + scope: + description: The scope of the WAF policy. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyScope' + type: array + version: + default: 0 + description: Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value. + example: 0 + format: int64 + type: integer + required: + - name + - description + - basedOn + type: object + ApplicationSecurityPolicyUpdateAttributes: + description: Update a WAF policy. + properties: + description: + description: Description of the WAF policy. + example: Policy applied to internal web applications. + type: string + isDefault: + description: |- + Make this policy the default policy. The default policy is applied to + every service not specifically assigned to another policy. + example: false + type: boolean + name: + description: The name of the WAF policy. + example: Internal Network Policy + type: string + protectionPresets: + description: Presets enabled on this policy. + example: + - attack-tools + items: + example: attack-tools + type: string + type: array + rules: + description: Rule overrides applied by the policy. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyRuleOverride' + type: array + rulesets: + deprecated: true + description: 'Deprecated: Ruleset overrides. Use `protectionPresets` instead.' + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyRulesetOverride' + type: array + scope: + description: The scope of the WAF policy. + items: + $ref: '#/components/schemas/ApplicationSecurityPolicyScope' + type: array + version: + default: 0 + description: Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value. + example: 0 + format: int64 + type: integer + required: + - name + - description + - version + - isDefault + - rules + - protectionPresets + - scope + type: object CloudWorkloadSecurityAgentRuleAttributes: description: A Cloud Workload Security Agent rule returned by the API properties: @@ -1580,6 +2277,7 @@ components: blocking: description: The blocking policies that the rule belongs to items: + description: The ID of a blocking policy that this rule belongs to. type: string type: array category: @@ -1608,6 +2306,7 @@ components: disabled: description: The disabled policies that the rule belongs to items: + description: The ID of a disabled policy that this rule belongs to. type: string type: array enabled: @@ -1621,11 +2320,13 @@ components: filters: description: The platforms the Agent rule is supported on items: + description: A platform filter that the Agent rule is supported on. type: string type: array monitoring: description: The monitoring policies that the rule belongs to items: + description: The ID of a monitoring policy that this rule belongs to. type: string type: array name: @@ -1635,8 +2336,13 @@ components: product_tags: description: The list of product tags associated with the rule items: + description: A product tag associated with the rule. type: string type: array + silent: + description: Whether the rule is silent. + example: false + type: boolean updateAuthorUuId: description: The ID of the user who updated the rule example: e51c9744-d158-11ec-ad23-da7ad0900002 @@ -1673,9 +2379,13 @@ components: properties: actions: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' + agent_version: + description: Constrain the rule to specific versions of the Datadog Agent. + type: string blocking: - description: The blocking policies that the rule belongs to + description: The blocking policies that the rule belongs to. items: + description: The ID of a blocking policy that this rule belongs to. type: string type: array description: @@ -1683,12 +2393,13 @@ components: example: My Agent rule type: string disabled: - description: The disabled policies that the rule belongs to + description: The disabled policies that the rule belongs to. items: + description: The ID of a disabled policy that this rule belongs to. type: string type: array enabled: - description: Whether the Agent rule is enabled + description: Whether the Agent rule is enabled. example: true type: boolean expression: @@ -1696,13 +2407,15 @@ components: example: exec.file.name == "sh" type: string filters: - description: The platforms the Agent rule is supported on + description: The platforms the Agent rule is supported on. items: + description: A platform filter that the Agent rule is supported on. type: string type: array monitoring: - description: The monitoring policies that the rule belongs to + description: The monitoring policies that the rule belongs to. items: + description: The ID of a monitoring policy that this rule belongs to. type: string type: array name: @@ -1710,14 +2423,19 @@ components: example: my_agent_rule type: string policy_id: - description: The ID of the policy where the Agent rule is saved + description: The ID of the policy where the Agent rule is saved. example: a8c8e364-6556-434d-b798-a4c23de29c0b type: string product_tags: - description: The list of product tags associated with the rule + description: The list of product tags associated with the rule. items: + description: A product tag associated with the rule. type: string type: array + silent: + description: Whether the rule is silent. + example: false + type: boolean required: - name - expression @@ -1727,9 +2445,13 @@ components: properties: actions: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' + agent_version: + description: Constrain the rule to specific versions of the Datadog Agent + type: string blocking: description: The blocking policies that the rule belongs to items: + description: The ID of a blocking policy that this rule belongs to. type: string type: array description: @@ -1739,6 +2461,7 @@ components: disabled: description: The disabled policies that the rule belongs to items: + description: The ID of a disabled policy that this rule belongs to. type: string type: array enabled: @@ -1752,6 +2475,7 @@ components: monitoring: description: The monitoring policies that the rule belongs to items: + description: The ID of a monitoring policy that this rule belongs to. type: string type: array policy_id: @@ -1761,8 +2485,13 @@ components: product_tags: description: The list of product tags associated with the rule items: + description: A product tag associated with the rule. type: string type: array + silent: + description: Whether the rule is silent. + example: false + type: boolean type: object CloudWorkloadSecurityAgentRuleID: description: The ID of the Agent rule @@ -1798,14 +2527,15 @@ components: hostTags: description: The host tags defining where this policy is deployed items: + description: A host tag used to identify where this policy is deployed. type: string type: array hostTagsLists: - description: >- - The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR + description: The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR items: + description: A list of host tags linked with AND logic. items: + description: A host tag used to filter the deployment scope. type: string type: array type: array @@ -1819,6 +2549,14 @@ components: description: The name of the policy example: my_agent_policy type: string + pinned: + description: Whether the policy is pinned + example: false + type: boolean + policyType: + description: The type of the policy + example: policy + type: string policyVersion: description: The version of the policy example: '1' @@ -1845,8 +2583,9 @@ components: format: int64 type: integer updater: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyUpdaterAttributes + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdaterAttributes' + versions: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyVersions' type: object CloudWorkloadSecurityAgentPolicyType: default: policy @@ -1871,14 +2610,15 @@ components: hostTags: description: The host tags defining where this policy is deployed items: + description: A host tag used to identify where this policy is deployed. type: string type: array hostTagsLists: - description: >- - The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR + description: The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR items: + description: A list of host tags linked with AND logic. items: + description: A host tag used to filter the deployment scope. type: string type: array type: array @@ -1903,14 +2643,15 @@ components: hostTags: description: The host tags defining where this policy is deployed items: + description: A host tag used to identify where this policy is deployed. type: string type: array hostTagsLists: - description: >- - The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR + description: The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR items: + description: A list of host tags linked with AND logic. items: + description: A host tag used to filter the deployment scope. type: string type: array type: array @@ -1923,40 +2664,62 @@ components: description: The ID of the Agent policy example: 6517fcc1-cec7-4394-a655-8d6e9d085255 type: string - ObservabilityPipelineDataAttributes: - description: >- - Defines the pipeline’s name and its components (sources, processors, and - destinations). + RumSdkConfigAttributes: + description: Attributes of the RUM SDK configuration. properties: - config: - $ref: '#/components/schemas/ObservabilityPipelineConfig' - name: - description: Name of the pipeline. - example: Main Observability Pipeline + rum: + $ref: '#/components/schemas/RumSdkConfigRumAttributes' + required: + - rum + type: object + RumSdkConfigMeta: + description: Metadata associated with a RUM SDK configuration. + properties: + updated_at: + description: The timestamp of the last update to this configuration. + example: '2024-01-15T09:30:00.000Z' + format: date-time + type: string + updated_by: + description: The handle of the user who last updated this configuration. + example: user@datadoghq.com type: string required: - - name - - config + - updated_at + - updated_by type: object - ValidationErrorMeta: - description: >- - Describes additional metadata for validation errors, including field - names and error messages. + RumSdkConfigType: + default: rum_sdk_config + description: The type of the resource. The value should always be `rum_sdk_config`. + enum: + - rum_sdk_config + example: rum_sdk_config + type: string + x-enum-varnames: + - RUM_SDK_CONFIG + JSONAPIErrorItemSource: + description: References to the source of the error. properties: - field: - description: The field name that caused the error. - example: region + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization type: string - id: - description: The ID of the component in which the error occurred. - example: datadog-agent-source + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit type: string - message: - description: The detailed error message. - example: Field 'region' is required + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title type: string + type: object + RumSdkConfigUpdateAttributes: + description: Attributes of the RUM SDK configuration to update. + properties: + rum: + $ref: '#/components/schemas/RumSdkConfigRumUpdateAttributes' required: - - message + - rum type: object ApplicationSecurityWafCustomRuleAction: description: The definition of `ApplicationSecurityWafCustomRuleAction` object. @@ -1964,18 +2727,15 @@ components: action: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleActionAction' parameters: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleActionParameters + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleActionParameters' type: object ApplicationSecurityWafCustomRuleCondition: description: One condition of the WAF Custom Rule. properties: operator: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionOperator + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionOperator' parameters: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionParameters + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionParameters' required: - operator - parameters @@ -2029,19 +2789,15 @@ components: ApplicationSecurityWafCustomRuleTags: additionalProperties: type: string - description: >- - Tags associated with the WAF Custom Rule. The concatenation of category - and type will form the security - + description: |- + Tags associated with the WAF Custom Rule. The concatenation of category and type will form the security activity field associated with the traces. maxProperties: 32 properties: category: $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTagsCategory' type: - description: >- - The type of the WAF rule, associated with the category will form the - security activity. + description: The type of the WAF rule, associated with the category will form the security activity. example: users.login.success type: string required: @@ -2074,11 +2830,7 @@ components: readOnly: true type: object ApplicationSecurityWafExclusionFilterOnMatch: - description: >- - The action taken when the exclusion filter matches. When set to - `monitor`, security traces are emitted but the requests are not blocked. - By default, security traces are not emitted and the requests are not - blocked. + description: The action taken when the exclusion filter matches. When set to `monitor`, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked. enum: - monitor type: string @@ -2092,8 +2844,7 @@ components: example: dog-913-009 type: string tags: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTargetTags + $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterRulesTargetTags' type: object ApplicationSecurityWafExclusionFilterScope: description: Deploy on services based on their environment and/or service name. @@ -2107,23 +2858,83 @@ components: example: prod type: string type: object - CloudWorkloadSecurityAgentRuleActions: - description: The array of actions the rule can perform if triggered - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' - nullable: true - type: array - CloudWorkloadSecurityAgentRuleCreatorAttributes: - description: The attributes of the user who created the Agent rule + ApplicationSecurityPolicyRuleOverride: + description: Override WAF rule parameters for services in a policy. properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true + blocking: + description: When blocking is enabled, the rule will block the traffic matched by this rule. + example: false + type: boolean + enabled: + description: When false, this rule will not match any traffic. + example: true + type: boolean + extended_data_collection: + description: When true, collects additional data from the WAF for this rule. + example: false + type: boolean + id: + description: Override the parameters for this WAF rule identifier. + example: rasp-001-002 + type: string + required: + - id + - enabled + - blocking + type: object + ApplicationSecurityPolicyRulesetOverride: + deprecated: true + description: 'Deprecated: Override WAF ruleset parameters. Use `protectionPresets` instead.' + properties: + blocking: + description: When blocking is enabled, the ruleset will block the traffic it matches. + example: false + type: boolean + enabled: + description: When false, this ruleset will not match any traffic. + example: true + type: boolean + id: + description: The identifier of the ruleset to override. + example: attack_tool + type: string + required: + - id + - enabled + - blocking + type: object + ApplicationSecurityPolicyScope: + description: The scope of the WAF policy. + properties: + env: + description: The environment scope for the WAF policy. + example: prod + type: string + service: + description: The service scope for the WAF policy. + example: billing-service + type: string + required: + - service + - env + type: object + CloudWorkloadSecurityAgentRuleActions: + description: The array of actions the rule can perform if triggered + items: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' + nullable: true + type: array + CloudWorkloadSecurityAgentRuleCreatorAttributes: + description: The attributes of the user who created the Agent rule + properties: + handle: + description: The handle of the user + example: datadog.user@example.com + type: string + name: + description: The name of the user + example: Datadog User + nullable: true type: string type: object CloudWorkloadSecurityAgentRuleUpdaterAttributes: @@ -2152,49 +2963,139 @@ components: nullable: true type: string type: object - ObservabilityPipelineConfig: - description: >- - Specifies the pipeline's configuration, including its sources, - processors, and destinations. - properties: - destinations: - description: A list of destination components where processed logs are sent. - example: - - id: datadog-logs-destination - inputs: - - filter-processor - type: datadog_logs - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigDestinationItem' - type: array - processors: - description: A list of processors that transform or enrich log data. - example: - - id: filter-processor - include: service:my-service - inputs: - - datadog-agent-source - type: filter - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigProcessorItem' - type: array - sources: - description: A list of configured data sources for the pipeline. - example: - - id: datadog-agent-source - type: datadog_agent - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigSourceItem' - type: array + CloudWorkloadSecurityAgentPolicyVersions: + description: The versions of the policy + items: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyVersion' + type: array + RumSdkConfigRumAttributes: + description: The RUM SDK settings for a configuration. + properties: + allowed_tracing_urls: + $ref: '#/components/schemas/RumSdkConfigAllowedTracingUrlList' + allowed_tracking_origins: + $ref: '#/components/schemas/RumSdkConfigAllowedTrackingOriginList' + application_id: + description: The ID of the RUM application this configuration belongs to. + example: f80e917c-3cd0-4048-ade7-1c4c207baa99 + type: string + context: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionPairList' + default_privacy_level: + description: The default privacy masking level applied to all RUM data. + example: mask-user-input + type: string + enable_privacy_for_action_name: + description: Whether to mask user-interaction action names for privacy. + example: false + type: boolean + env: + description: The environment tag for the RUM application. + example: production + type: string + service: + description: The service name tag for the RUM application. + example: my-service + type: string + session_replay_sample_rate: + description: The percentage of collected sessions for which a replay is captured (0–100). + example: 10 + format: int64 + maximum: 100 + minimum: 0 + type: integer + session_sample_rate: + description: The percentage of user sessions to collect (0–100). + example: 50 + format: int64 + maximum: 100 + minimum: 0 + type: integer + trace_sample_rate: + description: The percentage of requests to forward as APM traces (0–100). + example: 100 + format: int64 + maximum: 100 + minimum: 0 + type: integer + track_session_across_subdomains: + description: Whether to share a session across subdomains of the same site. + example: false + type: boolean + user: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionPairList' + version: + $ref: '#/components/schemas/RumSdkConfigDynamicOption' + required: + - application_id + - session_sample_rate + - session_replay_sample_rate + - default_privacy_level + - enable_privacy_for_action_name + type: object + RumSdkConfigRumUpdateAttributes: + description: The RUM SDK settings to apply when updating a configuration. + properties: + allowed_tracing_urls: + $ref: '#/components/schemas/RumSdkConfigAllowedTracingUrlList' + allowed_tracking_origins: + $ref: '#/components/schemas/RumSdkConfigAllowedTrackingOriginList' + context: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionPairList' + default_privacy_level: + description: The default privacy masking level applied to all RUM data. + example: mask + type: string + enable_privacy_for_action_name: + description: Whether to mask user-interaction action names for privacy. + example: true + type: boolean + env: + description: The environment tag for the RUM application. + example: production + type: string + service: + description: The service name tag for the RUM application. + example: my-service + type: string + session_replay_sample_rate: + description: The percentage of collected sessions for which a replay is captured (0–100). + example: 20 + format: int64 + maximum: 100 + minimum: 0 + type: integer + session_sample_rate: + description: The percentage of user sessions to collect (0–100). + example: 75 + format: int64 + maximum: 100 + minimum: 0 + type: integer + trace_sample_rate: + description: The percentage of requests to forward as APM traces (0–100). + example: 100 + format: int64 + maximum: 100 + minimum: 0 + type: integer + track_session_across_subdomains: + description: Whether to share a session across subdomains of the same site. + example: false + type: boolean + user: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionPairList' + version: + $ref: '#/components/schemas/RumSdkConfigDynamicOption' required: - - sources - - destinations + - session_sample_rate + - session_replay_sample_rate + - default_privacy_level + - enable_privacy_for_action_name type: object ApplicationSecurityWafCustomRuleActionAction: default: block_request - description: >- - Override the default action to take when the WAF custom rule would - block. + description: Override the default action to take when the WAF custom rule would block. enum: - redirect_request - block_request @@ -2204,9 +3105,7 @@ components: - REDIRECT_REQUEST - BLOCK_REQUEST ApplicationSecurityWafCustomRuleActionParameters: - description: >- - The definition of `ApplicationSecurityWafCustomRuleActionParameters` - object. + description: The definition of `ApplicationSecurityWafCustomRuleActionParameters` object. properties: location: description: The location to redirect to when the WAF custom rule triggers. @@ -2233,6 +3132,10 @@ components: - ip_match - '!ip_match' - capture_data + - exists + - '!exists' + - equals + - '!equals' example: match_regex type: string x-enum-varnames: @@ -2247,54 +3150,47 @@ components: - IP_MATCH - NOT_IP_MATCH - CAPTURE_DATA + - EXISTS + - NOT_EXISTS + - EQUALS + - NOT_EQUALS ApplicationSecurityWafCustomRuleConditionParameters: description: The scope of the WAF custom rule. properties: data: - description: >- - Identifier of a list of data from the denylist. Can only be used as - substitution from the list parameter. + description: Identifier of a list of data from the denylist. Can only be used as substitution from the list parameter. example: blocked_users type: string inputs: - description: >- - List of inputs on which at least one should match with the given - operator. + description: List of inputs on which at least one should match with the given operator. items: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionInput + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionInput' type: array list: - description: >- - List of value to use with the condition. Only used with the - phrase_match, !phrase_match, exact_match and - + description: |- + List of value to use with the condition. Only used with the phrase_match, !phrase_match, exact_match and !exact_match operator. items: + description: A value to match against in the condition. type: string type: array options: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionOptions + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionOptions' regex: - description: >- - Regex to use with the condition. Only used with match_regex and - !match_regex operator. + description: Regex to use with the condition. Only used with match_regex and !match_regex operator. example: path.* type: string + type: + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionParametersType' value: - description: >- - Store the captured value in the specified tag name. Only used with - the capture_data operator. + description: Store the captured value in the specified tag name. Only used with the capture_data operator. example: custom_tag type: string required: - inputs type: object ApplicationSecurityWafCustomRuleTagsCategory: - description: >- - The category of the WAF Rule, can be either `business_logic`, - `attack_attempt` or `security_response`. + description: The category of the WAF Rule, can be either `business_logic`, `attack_attempt` or `security_response`. enum: - attack_attempt - business_logic @@ -2334,4049 +3230,358 @@ components: set: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSet' type: object - ObservabilityPipelineConfigDestinationItem: - description: A destination for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestination' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3Destination' - - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestination - - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestination' - - $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestination' - - $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestination' - - $ref: '#/components/schemas/AzureStorageDestination' - - $ref: '#/components/schemas/MicrosoftSentinelDestination' - - $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestination' - - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestination' - - $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestination' - - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestination - - $ref: '#/components/schemas/ObservabilityPipelineSocketDestination' - - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestination - - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestination - ObservabilityPipelineConfigProcessorItem: - description: A processor for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineFilterProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineGenerateMetricsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineSampleProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessor' - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessor - - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessor' - ObservabilityPipelineConfigSourceItem: - description: A data source for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineKafkaSource' - - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSource' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSource' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSource' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3Source' - - $ref: '#/components/schemas/ObservabilityPipelineFluentdSource' - - $ref: '#/components/schemas/ObservabilityPipelineFluentBitSource' - - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSource' - - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSource' - - $ref: '#/components/schemas/ObservabilityPipelineRsyslogSource' - - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSource' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSource' - - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSource' - - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSource' - - $ref: '#/components/schemas/ObservabilityPipelineLogstashSource' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSource' - ApplicationSecurityWafCustomRuleConditionInput: - description: Input from the request on which the condition should apply. - properties: - address: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionInputAddress - key_path: - description: Specific path for the input. - items: - type: string - type: array - required: - - address - type: object - ApplicationSecurityWafCustomRuleConditionOptions: - description: Options for the operator of this condition. - properties: - case_sensitive: - default: false - description: Evaluate the value as case sensitive. - type: boolean - min_length: - default: 0 - description: >- - Only evaluate this condition if the value has a minimum amount of - characters. - format: int64 - type: integer - type: object - CloudWorkloadSecurityAgentRuleActionHash: - additionalProperties: {} - description: An empty object indicating the hash action - type: object - CloudWorkloadSecurityAgentRuleKill: - description: Kill system call applied on the container matching the rule - properties: - signal: - description: Supported signals for the kill system call - type: string - type: object - CloudWorkloadSecurityAgentRuleActionMetadata: - description: The metadata action applied on the scope matching the rule - properties: - image_tag: - description: The image tag of the metadata action - type: string - service: - description: The service of the metadata action - type: string - short_image: - description: The short image of the metadata action - type: string - type: object - CloudWorkloadSecurityAgentRuleActionSet: - description: The set action applied on the scope matching the rule + CloudWorkloadSecurityAgentPolicyVersion: + description: The versions of the policy properties: - append: - description: Whether the value should be appended to the field - type: boolean - field: - description: The field of the set action + date: + description: The date and time the version was created + nullable: true type: string name: - description: The name of the set action - type: string - scope: - description: The scope of the set action - type: string - size: - description: The size of the set action - format: int64 - type: integer - ttl: - description: The time to live of the set action - format: int64 - type: integer - value: - description: The value of the set action - type: string - type: object - ObservabilityPipelineDatadogLogsDestination: - description: The `datadog_logs` destination forwards logs to Datadog Log Management. - properties: - id: - description: The unique identifier for this component. - example: datadog-logs-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineAmazonS3Destination: - description: >- - The `amazon_s3` destination sends your logs in Datadog-rehydratable - format to an Amazon S3 bucket for archiving. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - bucket: - description: S3 bucket name. - example: error-logs - type: string - id: - description: Unique identifier for the destination component. - example: amazon-s3-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - key_prefix: - description: Optional prefix for object keys. - type: string - region: - description: AWS region of the S3 bucket. - example: us-east-1 - type: string - storage_class: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationType' - required: - - id - - type - - inputs - - bucket - - region - - storage_class - type: object - ObservabilityPipelineGoogleCloudStorageDestination: - description: > - The `google_cloud_storage` destination stores logs in a Google Cloud - Storage (GCS) bucket. - - It requires a bucket name, GCP authentication, and metadata fields. - properties: - acl: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationAcl - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - bucket: - description: Name of the GCS bucket. - example: error-logs - type: string - id: - description: Unique identifier for the destination component. - example: gcs-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - key_prefix: - description: Optional prefix for object keys within the GCS bucket. - type: string - metadata: - description: Custom metadata to attach to each object uploaded to the GCS bucket. - items: - $ref: '#/components/schemas/ObservabilityPipelineMetadataEntry' - type: array - storage_class: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationStorageClass - type: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationType - required: - - id - - type - - inputs - - bucket - - auth - - storage_class - - acl - type: object - ObservabilityPipelineSplunkHecDestination: - description: > - The `splunk_hec` destination forwards logs to Splunk using the HTTP - Event Collector (HEC). - properties: - auto_extract_timestamp: - description: > - If `true`, Splunk tries to extract timestamps from incoming log - events. - - If `false`, Splunk assigns the time the event was received. - example: true - type: boolean - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineSplunkHecDestinationEncoding - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: splunk-hec-destination - type: string - index: - description: Optional name of the Splunk index where logs are written. - example: main - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - sourcetype: - description: The Splunk sourcetype to assign to log events. - example: custom_sourcetype + description: The version of the policy + example: 1.47.0-rc2 type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationType' - required: - - id - - type - - inputs type: object - ObservabilityPipelineSumoLogicDestination: - description: The `sumo_logic` destination forwards logs to Sumo Logic. + RumSdkConfigAllowedTracingUrlList: + description: A list of URL configurations for distributed tracing. + items: + $ref: '#/components/schemas/RumSdkConfigTracingUrlConfig' + type: array + RumSdkConfigAllowedTrackingOriginList: + description: A list of origin patterns allowed for cross-origin session tracking. + items: + $ref: '#/components/schemas/RumSdkConfigMatchOption' + type: array + RumSdkConfigDynamicOptionPairList: + description: A list of dynamic option key-value pairs. + items: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionPair' + type: array + RumSdkConfigDynamicOption: + description: A dynamic configuration option that extracts a value at runtime using a specified strategy. properties: - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineSumoLogicDestinationEncoding - header_custom_fields: - description: A list of custom headers to include in the request to Sumo Logic. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem - type: array - header_host_name: - description: Optional override for the host name header. - example: host-123 + attribute: + description: The element attribute to read. Used when `strategy` is `dom`. + example: data-version type: string - header_source_category: - description: Optional override for the source category header. - example: source-category - type: string - header_source_name: - description: Optional override for the source name header. - example: source-name + extractor: + $ref: '#/components/schemas/RumSdkConfigSerializedRegex' + key: + description: The `localStorage` key to read. Required when `strategy` is `localStorage`. + example: app.version type: string - id: - description: The unique identifier for this component. - example: sumo-logic-destination + name: + description: The cookie name to read. Required when `strategy` is `cookie`. + example: app_version type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineElasticsearchDestination: - description: The `elasticsearch` destination writes logs to an Elasticsearch cluster. - properties: - api_version: - $ref: >- - #/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion - bulk_index: - description: The index to write logs to in Elasticsearch. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: elasticsearch-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineElasticsearchDestinationType - required: - - id - - type - - inputs - type: object - ObservabilityPipelineRsyslogDestination: - description: >- - The `rsyslog` destination forwards logs to an external `rsyslog` server - over TCP or UDP using the syslog protocol. - properties: - id: - description: The unique identifier for this component. - example: rsyslog-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - keepalive: - description: Optional socket keepalive duration in milliseconds. - example: 60000 - format: int64 - minimum: 0 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineSyslogNgDestination: - description: >- - The `syslog_ng` destination forwards logs to an external `syslog-ng` - server over TCP or UDP using the syslog protocol. - properties: - id: - description: The unique identifier for this component. - example: syslog-ng-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - keepalive: - description: Optional socket keepalive duration in milliseconds. - example: 60000 - format: int64 - minimum: 0 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestinationType' - required: - - id - - type - - inputs - type: object - AzureStorageDestination: - description: >- - The `azure_storage` destination forwards logs to an Azure Blob Storage - container. - properties: - blob_prefix: - description: Optional prefix for blobs written to the container. - example: logs/ - type: string - container_name: - description: The name of the Azure Blob Storage container to store logs in. - example: my-log-container - type: string - id: - description: The unique identifier for this component. - example: azure-storage-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - processor-id - items: - type: string - type: array - type: - $ref: '#/components/schemas/AzureStorageDestinationType' - required: - - id - - type - - inputs - - container_name - type: object - MicrosoftSentinelDestination: - description: >- - The `microsoft_sentinel` destination forwards logs to Microsoft - Sentinel. - properties: - client_id: - description: Azure AD client ID used for authentication. - example: a1b2c3d4-5678-90ab-cdef-1234567890ab - type: string - dcr_immutable_id: - description: The immutable ID of the Data Collection Rule (DCR). - example: dcr-uuid-1234 - type: string - id: - description: The unique identifier for this component. - example: sentinel-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - table: - description: The name of the Log Analytics table where logs are sent. - example: CustomLogsTable - type: string - tenant_id: - description: Azure AD tenant ID. - example: abcdef12-3456-7890-abcd-ef1234567890 - type: string - type: - $ref: '#/components/schemas/MicrosoftSentinelDestinationType' - required: - - id - - type - - inputs - - client_id - - tenant_id - - dcr_immutable_id - - table - type: object - ObservabilityPipelineGoogleChronicleDestination: - description: The `google_chronicle` destination sends logs to Google Chronicle. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - customer_id: - description: The Google Chronicle customer ID. - example: abcdefg123456789 - type: string - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding - id: - description: The unique identifier for this component. - example: google-chronicle-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - parse-json-processor - items: - type: string - type: array - log_type: - description: The log type metadata associated with the Chronicle destination. - example: nginx_logs - type: string - type: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleChronicleDestinationType - required: - - id - - type - - inputs - - auth - - customer_id - type: object - ObservabilityPipelineNewRelicDestination: - description: The `new_relic` destination sends logs to the New Relic platform. - properties: - id: - description: The unique identifier for this component. - example: new-relic-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - parse-json-processor - items: - type: string - type: array - region: - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion' - type: - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationType' - required: - - id - - type - - inputs - - region - type: object - ObservabilityPipelineSentinelOneDestination: - description: The `sentinel_one` destination sends logs to SentinelOne. - properties: - id: - description: The unique identifier for this component. - example: sentinelone-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - region: - $ref: >- - #/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion - type: - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationType' - required: - - id - - type - - inputs - - region - type: object - ObservabilityPipelineOpenSearchDestination: - description: The `opensearch` destination writes logs to an OpenSearch cluster. - properties: - bulk_index: - description: The index to write logs to. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: opensearch-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineAmazonOpenSearchDestination: - description: The `amazon_opensearch` destination writes logs to Amazon OpenSearch. - properties: - auth: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuth - bulk_index: - description: The index to write logs to. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: elasticsearch-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationType - required: - - id - - type - - inputs - - auth - type: object - ObservabilityPipelineSocketDestination: - description: | - The `socket` destination sends logs over TCP or UDP to a remote server. - properties: - encoding: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationEncoding' - framing: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFraming' - id: - description: The unique identifier for this component. - example: socket-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - description: TLS configuration. Relevant only when `mode` is `tcp`. - type: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationType' - required: - - id - - type - - inputs - - encoding - - framing - - mode - type: object - ObservabilityPipelineAmazonSecurityLakeDestination: - description: > - The `amazon_security_lake` destination sends your logs to Amazon - Security Lake. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - bucket: - description: Name of the Amazon S3 bucket in Security Lake (3-63 characters). - example: security-lake-bucket - type: string - custom_source_name: - description: Custom source name for the logs in Security Lake. - example: my-custom-source - type: string - id: - description: Unique identifier for the destination component. - example: amazon-security-lake-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - region: - description: AWS region of the S3 bucket. - example: us-east-1 - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestinationType - required: - - id - - type - - inputs - - bucket - - region - - custom_source_name - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestination: - description: >- - The `crowdstrike_next_gen_siem` destination forwards logs to CrowdStrike - Next Gen SIEM. - properties: - compression: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding - id: - description: The unique identifier for this component. - example: crowdstrike-ngsiem-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType - required: - - id - - type - - inputs - - encoding - type: object - ObservabilityPipelineFilterProcessor: - description: >- - The `filter` processor allows conditional processing of logs based on a - Datadog search query. Logs that match the `include` query are passed - through; others are discarded. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: filter-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs should pass - through the filter. Logs that match this query continue to - downstream components; others are dropped. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineFilterProcessorType' - required: - - id - - type - - include - - inputs - type: object - ObservabilityPipelineParseJSONProcessor: - description: >- - The `parse_json` processor extracts JSON from a specified field and - flattens it into the event. This is useful when logs contain embedded - JSON as a string. - properties: - field: - description: The name of the log field that contains a JSON string. - example: message - type: string - id: - description: >- - A unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: parse-json-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessorType' - required: - - id - - type - - include - - field - - inputs - type: object - ObservabilityPipelineQuotaProcessor: - description: >- - The Quota Processor measures logging traffic for logs that match a - specified filter. When the configured daily quota is met, the processor - can drop or alert. - properties: - drop_events: - description: >- - If set to `true`, logs that matched the quota filter and sent after - the quota has been met are dropped; only logs that did not match the - filter query continue through the pipeline. - example: false - type: boolean - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: quota-processor - type: string - ignore_when_missing_partitions: - description: >- - If `true`, the processor skips quota checks when partition fields - are missing from the logs. - type: boolean - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - limit: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' - name: - description: Name of the quota. - example: MyQuota - type: string - overflow_action: - $ref: >- - #/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction - overrides: - description: >- - A list of alternate quota rules that apply to specific sets of - events, identified by matching field values. Each override can - define a custom limit. - items: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverride' - type: array - partition_fields: - description: >- - A list of fields used to segment log traffic for quota enforcement. - Quotas are tracked independently by unique combinations of these - field values. - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorType' - required: - - id - - type - - include - - name - - drop_events - - limit - - inputs - type: object - ObservabilityPipelineAddFieldsProcessor: - description: The `add_fields` processor adds static key-value fields to logs. - properties: - fields: - description: >- - A list of static fields (key-value pairs) that is added to each log - event processed by this component. - items: - $ref: '#/components/schemas/ObservabilityPipelineFieldValue' - type: array - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: add-fields-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineRemoveFieldsProcessor: - description: The `remove_fields` processor deletes specified fields from logs. - properties: - fields: - description: A list of field names to be removed from each log event. - example: - - field1 - - field2 - items: - type: string - type: array - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: remove-fields-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: The `PipelineRemoveFieldsProcessor` `inputs`. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineRenameFieldsProcessor: - description: The `rename_fields` processor changes field names. - properties: - fields: - description: >- - A list of rename rules specifying which fields to rename in the - event, what to rename them to, and whether to preserve the original - fields. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineRenameFieldsProcessorField - type: array - id: - description: >- - A unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: rename-fields-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineGenerateMetricsProcessor: - description: > - The `generate_datadog_metrics` processor creates custom metrics from - logs and sends them to Datadog. - - Metrics can be counters, gauges, or distributions and optionally grouped - by log fields. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline. - example: generate-metrics-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - processor. - example: - - source-id - items: - type: string - type: array - metrics: - description: Configuration for generating individual metrics. - items: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetric' - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineGenerateMetricsProcessorType - required: - - id - - type - - inputs - - include - - metrics - type: object - ObservabilityPipelineSampleProcessor: - description: >- - The `sample` processor allows probabilistic sampling of logs at a fixed - rate. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: sample-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - percentage: - description: The percentage of logs to sample. - example: 10 - format: double - type: number - rate: - description: Number of events to sample (1 in N). - example: 10 - format: int64 - minimum: 1 - type: integer - type: - $ref: '#/components/schemas/ObservabilityPipelineSampleProcessorType' - required: - - id - - type - - include - - inputs - type: object - ObservabilityPipelineParseGrokProcessor: - description: >- - The `parse_grok` processor extracts structured fields from unstructured - log messages using Grok patterns. - properties: - disable_library_rules: - default: false - description: >- - If set to `true`, disables the default Grok rules provided by - Datadog. - example: true - type: boolean - id: - description: A unique identifier for this processor. - example: parse-grok-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - rules: - description: >- - The list of Grok parsing rules. If multiple matching rules are - provided, they are evaluated in order. The first successful match is - applied. - items: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRule' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorType' - required: - - id - - type - - include - - inputs - - rules - type: object - ObservabilityPipelineSensitiveDataScannerProcessor: - description: >- - The `sensitive_data_scanner` processor detects and optionally redacts - sensitive data in log events. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: sensitive-scanner - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: source:prod - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - parse-json-processor - items: - type: string - type: array - rules: - description: >- - A list of rules for identifying and acting on sensitive data - patterns. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorRule - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorType - required: - - id - - type - - include - - inputs - - rules - type: object - ObservabilityPipelineOcsfMapperProcessor: - description: >- - The `ocsf_mapper` processor transforms logs into the OCSF schema using a - predefined mapping configuration. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline. - example: ocsf-mapper-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - processor. - example: - - filter-processor - items: - type: string - type: array - mappings: - description: A list of mapping rules to convert events to the OCSF format. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorType' - required: - - id - - type - - include - - inputs - - mappings - type: object - ObservabilityPipelineAddEnvVarsProcessor: - description: >- - The `add_env_vars` processor adds environment variable values to log - events. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - processor in the pipeline. - example: add-env-vars-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorType' - variables: - description: A list of environment variable mappings to apply to log fields. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable - type: array - required: - - id - - type - - include - - inputs - - variables - type: object - ObservabilityPipelineDedupeProcessor: - description: The `dedupe` processor removes duplicate fields in log events. - properties: - fields: - description: A list of log field paths to check for duplicates. - example: - - log.message - - log.error - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: dedupe-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - parse-json-processor - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorMode' - type: - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorType' - required: - - id - - type - - include - - inputs - - fields - - mode - type: object - ObservabilityPipelineEnrichmentTableProcessor: - description: >- - The `enrichment_table` processor enriches logs using a static CSV file - or GeoIP database. - properties: - file: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFile' - geoip: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp' - id: - description: The unique identifier for this processor. - example: enrichment-table-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: source:my-source - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - add-fields-processor - items: - type: string - type: array - target: - description: Path where enrichment results should be stored in the log. - example: enriched.geoip - type: string - type: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableProcessorType - required: - - id - - type - - include - - inputs - - target - type: object - ObservabilityPipelineReduceProcessor: - description: >- - The `reduce` processor aggregates and merges logs based on matching keys - and merge strategies. - properties: - group_by: - description: A list of fields used to group log events for merging. - example: - - log.user.id - - log.device.id - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: reduce-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: env:prod - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - parse-json-processor - items: - type: string - type: array - merge_strategies: - description: >- - List of merge strategies defining how values from grouped events - should be combined. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorType' - required: - - id - - type - - include - - inputs - - group_by - - merge_strategies - type: object - ObservabilityPipelineThrottleProcessor: - description: >- - The `throttle` processor limits the number of events that pass through - over a given time window. - properties: - group_by: - description: >- - Optional list of fields used to group events before the threshold - has been reached. - example: - - log.user.id - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: throttle-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: env:prod - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - datadog-agent-source - items: - type: string - type: array - threshold: - description: >- - the number of events allowed in a given time window. Events sent - after the threshold has been reached, are dropped. - example: 1000 - format: int64 - type: integer - type: - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessorType' - window: - description: The time window in seconds over which the threshold applies. - example: 60 - format: double - type: number - required: - - id - - type - - include - - inputs - - threshold - - window - type: object - ObservabilityPipelineCustomProcessor: - description: >- - The `custom_processor` processor transforms events using [Vector Remap - Language (VRL)](https://vector.dev/docs/reference/vrl/) scripts with - advanced filtering capabilities. - properties: - id: - description: The unique identifier for this processor. - example: remap-vrl-processor - type: string - include: - default: '*' - description: >- - A Datadog search query used to determine which logs this processor - targets. This field should always be set to `*` for the - custom_processor processor. - example: '*' - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - datadog-agent-source - items: - type: string - type: array - remaps: - description: Array of VRL remap rules. - items: - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorRemap' - minItems: 1 - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorType' - required: - - id - - type - - include - - remaps - - inputs - type: object - ObservabilityPipelineDatadogTagsProcessor: - description: >- - The `datadog_tags` processor includes or excludes specific Datadog tags - in your logs. - properties: - action: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorAction' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: datadog-tags-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - keys: - description: A list of tag keys. - example: - - env - - service - - version - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorMode' - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorType' - required: - - id - - type - - include - - mode - - action - - keys - - inputs - type: object - ObservabilityPipelineKafkaSource: - description: The `kafka` source ingests data from Apache Kafka topics. - properties: - group_id: - description: Consumer group ID used by the Kafka client. - example: consumer-group-0 - type: string - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: kafka-source - type: string - librdkafka_options: - description: >- - Optional list of advanced Kafka client configuration options, - defined as key-value pairs. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineKafkaSourceLibrdkafkaOption - type: array - sasl: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceSasl' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - topics: - description: >- - A list of Kafka topic names to subscribe to. The source ingests - messages from each topic specified. - example: - - topic1 - - topic2 - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceType' - required: - - id - - type - - group_id - - topics - type: object - ObservabilityPipelineDatadogAgentSource: - description: The `datadog_agent` source collects logs from the Datadog Agent. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: datadog-agent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSplunkTcpSource: - description: > - The `splunk_tcp` source receives logs from a Splunk Universal Forwarder - over TCP. - - TLS is supported for secure transmission. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: splunk-tcp-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSplunkHecSource: - description: > - The `splunk_hec` source implements the Splunk HTTP Event Collector (HEC) - API. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: splunk-hec-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSourceType' - required: - - id - - type - type: object - ObservabilityPipelineAmazonS3Source: - description: | - The `amazon_s3` source ingests logs from an Amazon S3 bucket. - It supports AWS authentication and TLS encryption. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: aws-s3-source - type: string - region: - description: AWS region where the S3 bucket resides. - example: us-east-1 - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceType' - required: - - id - - type - - region - type: object - ObservabilityPipelineFluentdSource: - description: The `fluentd` source ingests logs from a Fluentd-compatible service. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: fluent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineFluentdSourceType' - required: - - id - - type - type: object - ObservabilityPipelineFluentBitSource: - description: The `fluent_bit` source ingests logs from Fluent Bit. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: fluent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineFluentBitSourceType' - required: - - id - - type - type: object - ObservabilityPipelineHttpServerSource: - description: >- - The `http_server` source collects logs over HTTP POST from external - services. - properties: - auth_strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineHttpServerSourceAuthStrategy - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: Unique ID for the HTTP server source. - example: http-server-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceType' - required: - - id - - type - - auth_strategy - - decoding - type: object - ObservabilityPipelineSumoLogicSource: - description: The `sumo_logic` source receives logs from Sumo Logic collectors. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: sumo-logic-source - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSourceType' - required: - - id - - type - type: object - ObservabilityPipelineRsyslogSource: - description: >- - The `rsyslog` source listens for logs over TCP or UDP from an `rsyslog` - server using the syslog protocol. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: rsyslog-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineRsyslogSourceType' - required: - - id - - type - - mode - type: object - ObservabilityPipelineSyslogNgSource: - description: >- - The `syslog_ng` source listens for logs over TCP or UDP from a - `syslog-ng` server using the syslog protocol. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: syslog-ng-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSourceType' - required: - - id - - type - - mode - type: object - ObservabilityPipelineAmazonDataFirehoseSource: - description: The `amazon_data_firehose` source ingests logs from AWS Data Firehose. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: amazon-firehose-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonDataFirehoseSourceType - required: - - id - - type - type: object - ObservabilityPipelineGooglePubSubSource: - description: >- - The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub - subscription. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: google-pubsub-source - type: string - project: - description: The GCP project ID that owns the Pub/Sub subscription. - example: my-gcp-project - type: string - subscription: - description: The Pub/Sub subscription name from which messages are consumed. - example: logs-subscription - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSourceType' - required: - - id - - type - - auth - - decoding - - project - - subscription - type: object - ObservabilityPipelineHttpClientSource: - description: >- - The `http_client` source scrapes logs from HTTP endpoints at regular - intervals. - properties: - auth_strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: http-client-source - type: string - scrape_interval_secs: - description: The interval (in seconds) between HTTP scrape requests. - example: 60 - format: int64 - type: integer - scrape_timeout_secs: - description: The timeout (in seconds) for each scrape request. - example: 10 - format: int64 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceType' - required: - - id - - type - - decoding - type: object - ObservabilityPipelineLogstashSource: - description: The `logstash` source ingests logs from a Logstash forwarder. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: logstash-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineLogstashSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSocketSource: - description: | - The `socket` source ingests logs over TCP or UDP. - properties: - framing: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFraming' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: socket-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - description: TLS configuration. Relevant only when `mode` is `tcp`. - type: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceType' - required: - - id - - type - - mode - - framing - type: object - ApplicationSecurityWafCustomRuleConditionInputAddress: - description: Input from the request on which the condition should apply. - enum: - - server.db.statement - - server.io.fs.file - - server.io.net.url - - server.sys.shell.cmd - - server.request.method - - server.request.uri.raw - - server.request.path_params - - server.request.query - - server.request.headers.no_cookies - - server.request.cookies - - server.request.trailers - - server.request.body - - server.response.status - - server.response.headers.no_cookies - - server.response.trailers - - grpc.server.request.metadata - - grpc.server.request.message - - grpc.server.method - - graphql.server.all_resolvers - - usr.id - - http.client_ip - example: server.db.statement - type: string - x-enum-varnames: - - SERVER_DB_STATEMENT - - SERVER_IO_FS_FILE - - SERVER_IO_NET_URL - - SERVER_SYS_SHELL_CMD - - SERVER_REQUEST_METHOD - - SERVER_REQUEST_URI_RAW - - SERVER_REQUEST_PATH_PARAMS - - SERVER_REQUEST_QUERY - - SERVER_REQUEST_HEADERS_NO_COOKIES - - SERVER_REQUEST_COOKIES - - SERVER_REQUEST_TRAILERS - - SERVER_REQUEST_BODY - - SERVER_RESPONSE_STATUS - - SERVER_RESPONSE_HEADERS_NO_COOKIES - - SERVER_RESPONSE_TRAILERS - - GRPC_SERVER_REQUEST_METADATA - - GRPC_SERVER_REQUEST_MESSAGE - - GRPC_SERVER_METHOD - - GRAPHQL_SERVER_ALL_RESOLVERS - - USR_ID - - HTTP_CLIENT_IP - ObservabilityPipelineDatadogLogsDestinationType: - default: datadog_logs - description: The destination type. The value should always be `datadog_logs`. - enum: - - datadog_logs - example: datadog_logs - type: string - x-enum-varnames: - - DATADOG_LOGS - ObservabilityPipelineAwsAuth: - description: > - AWS authentication credentials used for accessing AWS services such as - S3. - - If omitted, the system’s default credentials are used (for example, the - IAM role and environment variables). - properties: - assume_role: - description: The Amazon Resource Name (ARN) of the role to assume. - type: string - external_id: - description: A unique identifier for cross-account role assumption. - type: string - session_name: - description: >- - A session identifier used for logging and tracing the assumed role - session. - type: string - type: object - ObservabilityPipelineAmazonS3DestinationStorageClass: - description: S3 storage class. - enum: - - STANDARD - - REDUCED_REDUNDANCY - - INTELLIGENT_TIERING - - STANDARD_IA - - EXPRESS_ONEZONE - - ONEZONE_IA - - GLACIER - - GLACIER_IR - - DEEP_ARCHIVE - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - REDUCED_REDUNDANCY - - INTELLIGENT_TIERING - - STANDARD_IA - - EXPRESS_ONEZONE - - ONEZONE_IA - - GLACIER - - GLACIER_IR - - DEEP_ARCHIVE - ObservabilityPipelineTls: - description: >- - Configuration for enabling TLS encryption between the pipeline component - and external services. - properties: - ca_file: - description: >- - Path to the Certificate Authority (CA) file used to validate the - server’s TLS certificate. - type: string - crt_file: - description: >- - Path to the TLS client certificate file used to authenticate the - pipeline component with upstream or downstream services. - example: /path/to/cert.crt - type: string - key_file: - description: >- - Path to the private key file associated with the TLS client - certificate. Used for mutual TLS authentication. - type: string - required: - - crt_file - type: object - ObservabilityPipelineAmazonS3DestinationType: - default: amazon_s3 - description: The destination type. Always `amazon_s3`. - enum: - - amazon_s3 - example: amazon_s3 - type: string - x-enum-varnames: - - AMAZON_S3 - ObservabilityPipelineGoogleCloudStorageDestinationAcl: - description: Access control list setting for objects written to the bucket. - enum: - - private - - project-private - - public-read - - authenticated-read - - bucket-owner-read - - bucket-owner-full-control - example: private - type: string - x-enum-varnames: - - PRIVATE - - PROJECTNOT_PRIVATE - - PUBLICNOT_READ - - AUTHENTICATEDNOT_READ - - BUCKETNOT_OWNERNOT_READ - - BUCKETNOT_OWNERNOT_FULLNOT_CONTROL - ObservabilityPipelineGcpAuth: - description: | - GCP credentials used to authenticate with Google Cloud Storage. - properties: - credentials_file: - description: Path to the GCP service account key file. - example: /var/secrets/gcp-credentials.json - type: string - required: - - credentials_file - type: object - ObservabilityPipelineMetadataEntry: - description: A custom metadata entry. - properties: - name: - description: The metadata key. - example: environment - type: string - value: - description: The metadata value. - example: production - type: string - required: - - name - - value - type: object - ObservabilityPipelineGoogleCloudStorageDestinationStorageClass: - description: Storage class used for objects stored in GCS. - enum: - - STANDARD - - NEARLINE - - COLDLINE - - ARCHIVE - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - NEARLINE - - COLDLINE - - ARCHIVE - ObservabilityPipelineGoogleCloudStorageDestinationType: - default: google_cloud_storage - description: The destination type. Always `google_cloud_storage`. - enum: - - google_cloud_storage - example: google_cloud_storage - type: string - x-enum-varnames: - - GOOGLE_CLOUD_STORAGE - ObservabilityPipelineSplunkHecDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineSplunkHecDestinationType: - default: splunk_hec - description: The destination type. Always `splunk_hec`. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - ObservabilityPipelineSumoLogicDestinationEncoding: - description: The output encoding format. - enum: - - json - - raw_message - - logfmt - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - - LOGFMT - ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem: - description: Single key-value pair used as a custom log header for Sumo Logic. - properties: - name: - description: The header field name. - example: X-Sumo-Category - type: string - value: - description: The header field value. - example: my-app-logs - type: string - required: - - name - - value - type: object - ObservabilityPipelineSumoLogicDestinationType: - default: sumo_logic - description: The destination type. The value should always be `sumo_logic`. - enum: - - sumo_logic - example: sumo_logic - type: string - x-enum-varnames: - - SUMO_LOGIC - ObservabilityPipelineElasticsearchDestinationApiVersion: - description: The Elasticsearch API version to use. Set to `auto` to auto-detect. - enum: - - auto - - v6 - - v7 - - v8 - example: auto - type: string - x-enum-varnames: - - AUTO - - V6 - - V7 - - V8 - ObservabilityPipelineElasticsearchDestinationType: - default: elasticsearch - description: The destination type. The value should always be `elasticsearch`. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - ObservabilityPipelineRsyslogDestinationType: - default: rsyslog - description: The destination type. The value should always be `rsyslog`. - enum: - - rsyslog - example: rsyslog - type: string - x-enum-varnames: - - RSYSLOG - ObservabilityPipelineSyslogNgDestinationType: - default: syslog_ng - description: The destination type. The value should always be `syslog_ng`. - enum: - - syslog_ng - example: syslog_ng - type: string - x-enum-varnames: - - SYSLOG_NG - AzureStorageDestinationType: - default: azure_storage - description: The destination type. The value should always be `azure_storage`. - enum: - - azure_storage - example: azure_storage - type: string - x-enum-varnames: - - AZURE_STORAGE - MicrosoftSentinelDestinationType: - default: microsoft_sentinel - description: The destination type. The value should always be `microsoft_sentinel`. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - ObservabilityPipelineGoogleChronicleDestinationEncoding: - description: The encoding format for the logs sent to Chronicle. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineGoogleChronicleDestinationType: - default: google_chronicle - description: The destination type. The value should always be `google_chronicle`. - enum: - - google_chronicle - example: google_chronicle - type: string - x-enum-varnames: - - GOOGLE_CHRONICLE - ObservabilityPipelineNewRelicDestinationRegion: - description: The New Relic region. - enum: - - us - - eu - example: us - type: string - x-enum-varnames: - - US - - EU - ObservabilityPipelineNewRelicDestinationType: - default: new_relic - description: The destination type. The value should always be `new_relic`. - enum: - - new_relic - example: new_relic - type: string - x-enum-varnames: - - NEW_RELIC - ObservabilityPipelineSentinelOneDestinationRegion: - description: The SentinelOne region to send logs to. - enum: - - us - - eu - - ca - - data_set_us - example: us - type: string - x-enum-varnames: - - US - - EU - - CA - - DATA_SET_US - ObservabilityPipelineSentinelOneDestinationType: - default: sentinel_one - description: The destination type. The value should always be `sentinel_one`. - enum: - - sentinel_one - example: sentinel_one - type: string - x-enum-varnames: - - SENTINEL_ONE - ObservabilityPipelineOpenSearchDestinationType: - default: opensearch - description: The destination type. The value should always be `opensearch`. - enum: - - opensearch - example: opensearch - type: string - x-enum-varnames: - - OPENSEARCH - ObservabilityPipelineAmazonOpenSearchDestinationAuth: - description: > - Authentication settings for the Amazon OpenSearch destination. - - The `strategy` field determines whether basic or AWS-based - authentication is used. - properties: - assume_role: - description: The ARN of the role to assume (used with `aws` strategy). - type: string - aws_region: - description: AWS region - type: string - external_id: - description: External ID for the assumed role (used with `aws` strategy). - type: string - session_name: - description: Session name for the assumed role (used with `aws` strategy). - type: string - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy - required: - - strategy - type: object - ObservabilityPipelineAmazonOpenSearchDestinationType: - default: amazon_opensearch - description: The destination type. The value should always be `amazon_opensearch`. - enum: - - amazon_opensearch - example: amazon_opensearch - type: string - x-enum-varnames: - - AMAZON_OPENSEARCH - ObservabilityPipelineSocketDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineSocketDestinationFraming: - description: Framing method configuration. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimited - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingBytes - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimited - ObservabilityPipelineSocketDestinationMode: - description: Protocol used to send logs. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineSocketDestinationType: - default: socket - description: The destination type. The value should always be `socket`. - enum: - - socket - example: socket - type: string - x-enum-varnames: - - SOCKET - ObservabilityPipelineAmazonSecurityLakeDestinationType: - default: amazon_security_lake - description: The destination type. Always `amazon_security_lake`. - enum: - - amazon_security_lake - example: amazon_security_lake - type: string - x-enum-varnames: - - AMAZON_SECURITY_LAKE - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression: - description: Compression configuration for log events. - properties: - algorithm: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm - level: - description: Compression level. - example: 6 - format: int64 - type: integer - required: - - algorithm - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType: - default: crowdstrike_next_gen_siem - description: >- - The destination type. The value should always be - `crowdstrike_next_gen_siem`. - enum: - - crowdstrike_next_gen_siem - example: crowdstrike_next_gen_siem - type: string - x-enum-varnames: - - CROWDSTRIKE_NEXT_GEN_SIEM - ObservabilityPipelineFilterProcessorType: - default: filter - description: The processor type. The value should always be `filter`. - enum: - - filter - example: filter - type: string - x-enum-varnames: - - FILTER - ObservabilityPipelineParseJSONProcessorType: - default: parse_json - description: The processor type. The value should always be `parse_json`. - enum: - - parse_json - example: parse_json - type: string - x-enum-varnames: - - PARSE_JSON - ObservabilityPipelineQuotaProcessorLimit: - description: >- - The maximum amount of data or number of events allowed before the quota - is enforced. Can be specified in bytes or events. - properties: - enforce: - $ref: >- - #/components/schemas/ObservabilityPipelineQuotaProcessorLimitEnforceType - limit: - description: The limit for quota enforcement. - example: 1000 - format: int64 - type: integer - required: - - enforce - - limit - type: object - ObservabilityPipelineQuotaProcessorOverflowAction: - description: | - The action to take when the quota is exceeded. Options: - - `drop`: Drop the event. - - `no_action`: Let the event pass through. - - `overflow_routing`: Route to an overflow destination. - enum: - - drop - - no_action - - overflow_routing - example: drop - type: string - x-enum-varnames: - - DROP - - NO_ACTION - - OVERFLOW_ROUTING - ObservabilityPipelineQuotaProcessorOverride: - description: >- - Defines a custom quota limit that applies to specific log events based - on matching field values. - properties: - fields: - description: >- - A list of field matchers used to apply a specific override. If an - event matches all listed key-value pairs, the corresponding override - limit is enforced. - items: - $ref: '#/components/schemas/ObservabilityPipelineFieldValue' - type: array - limit: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' - required: - - fields - - limit - type: object - ObservabilityPipelineQuotaProcessorType: - default: quota - description: The processor type. The value should always be `quota`. - enum: - - quota - example: quota - type: string - x-enum-varnames: - - QUOTA - ObservabilityPipelineFieldValue: - description: Represents a static key-value pair used in various processors. - properties: - name: - description: The field name. - example: field_name - type: string - value: - description: The field value. - example: field_value - type: string - required: - - name - - value - type: object - ObservabilityPipelineAddFieldsProcessorType: - default: add_fields - description: The processor type. The value should always be `add_fields`. - enum: - - add_fields - example: add_fields - type: string - x-enum-varnames: - - ADD_FIELDS - ObservabilityPipelineRemoveFieldsProcessorType: - default: remove_fields - description: The processor type. The value should always be `remove_fields`. - enum: - - remove_fields - example: remove_fields - type: string - x-enum-varnames: - - REMOVE_FIELDS - ObservabilityPipelineRenameFieldsProcessorField: - description: Defines how to rename a field in log events. - properties: - destination: - description: The field name to assign the renamed value to. - example: destination_field - type: string - preserve_source: - description: >- - Indicates whether the original field, that is received from the - source, should be kept (`true`) or removed (`false`) after renaming. - example: false - type: boolean - source: - description: The original field name in the log event that should be renamed. - example: source_field - type: string - required: - - source - - destination - - preserve_source - type: object - ObservabilityPipelineRenameFieldsProcessorType: - default: rename_fields - description: The processor type. The value should always be `rename_fields`. - enum: - - rename_fields - example: rename_fields - type: string - x-enum-varnames: - - RENAME_FIELDS - ObservabilityPipelineGeneratedMetric: - description: > - Defines a log-based custom metric, including its name, type, filter, - value computation strategy, - - and optional grouping fields. - properties: - group_by: - description: Optional fields used to group the metric series. - example: - - service - - env - items: - type: string - type: array - include: - description: Datadog filter query to match logs for metric generation. - example: service:billing - type: string - metric_type: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricMetricType' - name: - description: Name of the custom metric to be created. - example: logs.processed - type: string - value: - $ref: '#/components/schemas/ObservabilityPipelineMetricValue' - required: - - name - - include - - metric_type - - value - type: object - ObservabilityPipelineGenerateMetricsProcessorType: - default: generate_datadog_metrics - description: The processor type. Always `generate_datadog_metrics`. - enum: - - generate_datadog_metrics - example: generate_datadog_metrics - type: string - x-enum-varnames: - - GENERATE_DATADOG_METRICS - ObservabilityPipelineSampleProcessorType: - default: sample - description: The processor type. The value should always be `sample`. - enum: - - sample - example: sample - type: string - x-enum-varnames: - - SAMPLE - ObservabilityPipelineParseGrokProcessorRule: - description: > - A Grok parsing rule used in the `parse_grok` processor. Each rule - defines how to extract structured fields - - from a specific log field using Grok patterns. - properties: - match_rules: - description: > - A list of Grok parsing rules that define how to extract fields from - the source field. - - Each rule must contain a name and a valid Grok pattern. - example: - - name: MyParsingRule - rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' - items: - $ref: >- - #/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule - type: array - source: - description: The name of the field in the log event to apply the Grok rules to. - example: message - type: string - support_rules: - description: > - A list of Grok helper rules that can be referenced by the parsing - rules. - example: - - name: user - rule: '%{word:user.name}' - items: - $ref: >- - #/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule - type: array - required: - - source - - match_rules - type: object - ObservabilityPipelineParseGrokProcessorType: - default: parse_grok - description: The processor type. The value should always be `parse_grok`. - enum: - - parse_grok - example: parse_grok - type: string - x-enum-varnames: - - PARSE_GROK - ObservabilityPipelineSensitiveDataScannerProcessorRule: - description: >- - Defines a rule for detecting sensitive data, including matching pattern, - scope, and the action to take. - properties: - keyword_options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions - name: - description: A name identifying the rule. - example: Redact Credit Card Numbers - type: string - on_match: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorAction - pattern: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorPattern - scope: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScope - tags: - description: Tags assigned to this rule for filtering and classification. - example: - - pii - - ccn - items: - type: string - type: array - required: - - name - - tags - - pattern - - scope - - on_match - type: object - ObservabilityPipelineSensitiveDataScannerProcessorType: - default: sensitive_data_scanner - description: The processor type. The value should always be `sensitive_data_scanner`. - enum: - - sensitive_data_scanner - example: sensitive_data_scanner - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER - ObservabilityPipelineOcsfMapperProcessorMapping: - description: >- - Defines how specific events are transformed to OCSF using a mapping - configuration. - properties: - include: - description: >- - A Datadog search query used to select the logs that this mapping - should apply to. - example: service:my-service - type: string - mapping: - $ref: >- - #/components/schemas/ObservabilityPipelineOcsfMapperProcessorMappingMapping - required: - - include - - mapping - type: object - ObservabilityPipelineOcsfMapperProcessorType: - default: ocsf_mapper - description: The processor type. The value should always be `ocsf_mapper`. - enum: - - ocsf_mapper - example: ocsf_mapper - type: string - x-enum-varnames: - - OCSF_MAPPER - ObservabilityPipelineAddEnvVarsProcessorType: - default: add_env_vars - description: The processor type. The value should always be `add_env_vars`. - enum: - - add_env_vars - example: add_env_vars - type: string - x-enum-varnames: - - ADD_ENV_VARS - ObservabilityPipelineAddEnvVarsProcessorVariable: - description: Defines a mapping between an environment variable and a log field. - properties: - field: - description: The target field in the log event. - example: log.environment.region - type: string - name: - description: The name of the environment variable to read. - example: AWS_REGION - type: string - required: - - field - - name - type: object - ObservabilityPipelineDedupeProcessorMode: - description: The deduplication mode to apply to the fields. - enum: - - match - - ignore - example: match - type: string - x-enum-varnames: - - MATCH - - IGNORE - ObservabilityPipelineDedupeProcessorType: - default: dedupe - description: The processor type. The value should always be `dedupe`. - enum: - - dedupe - example: dedupe - type: string - x-enum-varnames: - - DEDUPE - ObservabilityPipelineEnrichmentTableFile: - description: Defines a static enrichment table loaded from a CSV file. - properties: - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileEncoding - key: - description: Key fields used to look up enrichment values. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItems - type: array - path: - description: Path to the CSV file. - example: /etc/enrichment/lookup.csv - type: string - schema: - description: Schema defining column names and their types. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItems - type: array - required: - - encoding - - key - - path - - schema - type: object - ObservabilityPipelineEnrichmentTableGeoIp: - description: Uses a GeoIP database to enrich logs based on an IP field. - properties: - key_field: - description: Path to the IP field in the log. - example: log.source.ip - type: string - locale: - description: Locale used to resolve geographical names. - example: en - type: string - path: - description: Path to the GeoIP database file. - example: /etc/geoip/GeoLite2-City.mmdb - type: string - required: - - key_field - - locale - - path - type: object - ObservabilityPipelineEnrichmentTableProcessorType: - default: enrichment_table - description: The processor type. The value should always be `enrichment_table`. - enum: - - enrichment_table - example: enrichment_table - type: string - x-enum-varnames: - - ENRICHMENT_TABLE - ObservabilityPipelineReduceProcessorMergeStrategy: - description: Defines how a specific field should be merged across grouped events. - properties: path: - description: The field path in the log event. - example: log.user.roles - type: string - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategyStrategy - required: - - path - - strategy - type: object - ObservabilityPipelineReduceProcessorType: - default: reduce - description: The processor type. The value should always be `reduce`. - enum: - - reduce - example: reduce - type: string - x-enum-varnames: - - REDUCE - ObservabilityPipelineThrottleProcessorType: - default: throttle - description: The processor type. The value should always be `throttle`. - enum: - - throttle - example: throttle - type: string - x-enum-varnames: - - THROTTLE - ObservabilityPipelineCustomProcessorRemap: - description: >- - Defines a single VRL remap rule with its own filtering and - transformation logic. - properties: - drop_on_error: - description: Whether to drop events that caused errors during processing. - example: false - type: boolean - enabled: - description: Whether this remap rule is enabled. - example: true - type: boolean - include: - description: >- - A Datadog search query used to filter events for this specific remap - rule. - example: service:web - type: string - name: - description: A descriptive name for this remap rule. - example: Parse JSON from message field - type: string - source: - description: The VRL script source code that defines the processing logic. - example: . = parse_json!(.message) - type: string - required: - - include - - name - - source - - enabled - - drop_on_error - type: object - ObservabilityPipelineCustomProcessorType: - default: custom_processor - description: The processor type. The value should always be `custom_processor`. - enum: - - custom_processor - example: custom_processor - type: string - x-enum-varnames: - - CUSTOM_PROCESSOR - ObservabilityPipelineDatadogTagsProcessorAction: - description: The action to take on tags with matching keys. - enum: - - include - - exclude - example: include - type: string - x-enum-varnames: - - INCLUDE - - EXCLUDE - ObservabilityPipelineDatadogTagsProcessorMode: - description: The processing mode. - enum: - - filter - example: filter - type: string - x-enum-varnames: - - FILTER - ObservabilityPipelineDatadogTagsProcessorType: - default: datadog_tags - description: The processor type. The value should always be `datadog_tags`. - enum: - - datadog_tags - example: datadog_tags - type: string - x-enum-varnames: - - DATADOG_TAGS - ObservabilityPipelineKafkaSourceLibrdkafkaOption: - description: >- - Represents a key-value pair used to configure low-level `librdkafka` - client options for Kafka sources, such as timeouts, buffer sizes, and - security settings. - properties: - name: - description: The name of the `librdkafka` configuration option to set. - example: fetch.message.max.bytes - type: string - value: - description: >- - The value assigned to the specified `librdkafka` configuration - option. - example: '1048576' - type: string - required: - - name - - value - type: object - ObservabilityPipelineKafkaSourceSasl: - description: Specifies the SASL mechanism for authenticating with a Kafka cluster. - properties: - mechanism: - $ref: >- - #/components/schemas/ObservabilityPipelinePipelineKafkaSourceSaslMechanism - type: object - ObservabilityPipelineKafkaSourceType: - default: kafka - description: The source type. The value should always be `kafka`. - enum: - - kafka - example: kafka - type: string - x-enum-varnames: - - KAFKA - ObservabilityPipelineDatadogAgentSourceType: - default: datadog_agent - description: The source type. The value should always be `datadog_agent`. - enum: - - datadog_agent - example: datadog_agent - type: string - x-enum-varnames: - - DATADOG_AGENT - ObservabilityPipelineSplunkTcpSourceType: - default: splunk_tcp - description: The source type. Always `splunk_tcp`. - enum: - - splunk_tcp - example: splunk_tcp - type: string - x-enum-varnames: - - SPLUNK_TCP - ObservabilityPipelineSplunkHecSourceType: - default: splunk_hec - description: The source type. Always `splunk_hec`. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - ObservabilityPipelineAmazonS3SourceType: - default: amazon_s3 - description: The source type. Always `amazon_s3`. - enum: - - amazon_s3 - example: amazon_s3 - type: string - x-enum-varnames: - - AMAZON_S3 - ObservabilityPipelineFluentdSourceType: - default: fluentd - description: The source type. The value should always be `fluentd. - enum: - - fluentd - example: fluentd - type: string - x-enum-varnames: - - FLUENTD - ObservabilityPipelineFluentBitSourceType: - default: fluent_bit - description: The source type. The value should always be `fluent_bit`. - enum: - - fluent_bit - example: fluent_bit - type: string - x-enum-varnames: - - FLUENT_BIT - ObservabilityPipelineHttpServerSourceAuthStrategy: - description: HTTP authentication method. - enum: - - none - - plain - example: plain - type: string - x-enum-varnames: - - NONE - - PLAIN - ObservabilityPipelineDecoding: - description: The decoding format used to interpret incoming logs. - enum: - - bytes - - gelf - - json - - syslog - example: json - type: string - x-enum-varnames: - - DECODE_BYTES - - DECODE_GELF - - DECODE_JSON - - DECODE_SYSLOG - ObservabilityPipelineHttpServerSourceType: - default: http_server - description: The source type. The value should always be `http_server`. - enum: - - http_server - example: http_server - type: string - x-enum-varnames: - - HTTP_SERVER - ObservabilityPipelineSumoLogicSourceType: - default: sumo_logic - description: The source type. The value should always be `sumo_logic`. - enum: - - sumo_logic - example: sumo_logic - type: string - x-enum-varnames: - - SUMO_LOGIC - ObservabilityPipelineSyslogSourceMode: - description: Protocol used by the syslog source to receive messages. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineRsyslogSourceType: - default: rsyslog - description: The source type. The value should always be `rsyslog`. - enum: - - rsyslog - example: rsyslog - type: string - x-enum-varnames: - - RSYSLOG - ObservabilityPipelineSyslogNgSourceType: - default: syslog_ng - description: The source type. The value should always be `syslog_ng`. - enum: - - syslog_ng - example: syslog_ng - type: string - x-enum-varnames: - - SYSLOG_NG - ObservabilityPipelineAmazonDataFirehoseSourceType: - default: amazon_data_firehose - description: The source type. The value should always be `amazon_data_firehose`. - enum: - - amazon_data_firehose - example: amazon_data_firehose - type: string - x-enum-varnames: - - AMAZON_DATA_FIREHOSE - ObservabilityPipelineGooglePubSubSourceType: - default: google_pubsub - description: The source type. The value should always be `google_pubsub`. - enum: - - google_pubsub - example: google_pubsub - type: string - x-enum-varnames: - - GOOGLE_PUBSUB - ObservabilityPipelineHttpClientSourceAuthStrategy: - description: Optional authentication strategy for HTTP requests. - enum: - - basic - - bearer - example: basic - type: string - x-enum-varnames: - - BASIC - - BEARER - ObservabilityPipelineHttpClientSourceType: - default: http_client - description: The source type. The value should always be `http_client`. - enum: - - http_client - example: http_client - type: string - x-enum-varnames: - - HTTP_CLIENT - ObservabilityPipelineLogstashSourceType: - default: logstash - description: The source type. The value should always be `logstash`. - enum: - - logstash - example: logstash - type: string - x-enum-varnames: - - LOGSTASH - ObservabilityPipelineSocketSourceFraming: - description: Framing method configuration for the socket source. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimited - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingBytes' - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimited - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCounting - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelf - ObservabilityPipelineSocketSourceMode: - description: Protocol used to receive logs. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineSocketSourceType: - default: socket - description: The source type. The value should always be `socket`. - enum: - - socket - example: socket - type: string - x-enum-varnames: - - SOCKET - ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy: - description: The authentication strategy to use. - enum: - - basic - - aws - example: aws - type: string - x-enum-varnames: - - BASIC - - AWS - ObservabilityPipelineSocketDestinationFramingNewlineDelimited: - description: Each log event is delimited by a newline character. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingBytes: - description: Event data is not delimited at all. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingBytesMethod - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingCharacterDelimited: - description: Each log event is separated using the specified delimiter character. - properties: - delimiter: - description: A single ASCII character used as a delimiter. - example: '|' - maxLength: 1 - minLength: 1 - type: string - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod - required: - - method - - delimiter - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm: - description: Compression algorithm for log events. - enum: - - gzip - - zlib - example: gzip - type: string - x-enum-varnames: - - GZIP - - ZLIB - ObservabilityPipelineQuotaProcessorLimitEnforceType: - description: Unit for quota enforcement in bytes for data size or events for count. - enum: - - bytes - - events - example: bytes - type: string - x-enum-varnames: - - BYTES - - EVENTS - ObservabilityPipelineGeneratedMetricMetricType: - description: Type of metric to create. - enum: - - count - - gauge - - distribution - example: count - type: string - x-enum-varnames: - - COUNT - - GAUGE - - DISTRIBUTION - ObservabilityPipelineMetricValue: - description: Specifies how the value of the generated metric is computed. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOne - - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByField - ObservabilityPipelineParseGrokProcessorRuleMatchRule: - description: > - Defines a Grok parsing rule, which extracts structured fields from log - content using named Grok patterns. - - Each rule must have a unique name and a valid Datadog Grok pattern that - will be applied to the source field. - properties: - name: - description: The name of the rule. - example: MyParsingRule - type: string - rule: - description: The definition of the Grok rule. - example: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' - type: string - required: - - name - - rule - type: object - ObservabilityPipelineParseGrokProcessorRuleSupportRule: - description: The Grok helper rule referenced in the parsing rules. - properties: - name: - description: The name of the Grok helper rule. - example: user - type: string - rule: - description: The definition of the Grok helper rule. - example: ' %{word:user.name}' - type: string - required: - - name - - rule - type: object - ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions: - description: >- - Configuration for keywords used to reinforce sensitive data pattern - detection. - properties: - keywords: - description: A list of keywords to match near the sensitive pattern. - example: - - ssn - - card - - account - items: - type: string - type: array - proximity: - description: >- - Maximum number of tokens between a keyword and a sensitive value - match. - example: 5 - format: int64 - type: integer - required: - - keywords - - proximity - type: object - ObservabilityPipelineSensitiveDataScannerProcessorAction: - description: Defines what action to take when sensitive data is matched. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedact - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHash - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact - ObservabilityPipelineSensitiveDataScannerProcessorPattern: - description: >- - Pattern detection configuration for identifying sensitive data using - either a custom regex or a library reference. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern - ObservabilityPipelineSensitiveDataScannerProcessorScope: - description: >- - Determines which parts of the log the pattern-matching rule should be - applied to. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAll - ObservabilityPipelineOcsfMapperProcessorMappingMapping: - description: >- - Defines a single mapping rule for transforming logs into the OCSF - schema. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingLibrary' - ObservabilityPipelineEnrichmentTableFileEncoding: - description: File encoding format. - properties: - delimiter: - description: The `encoding` `delimiter`. - example: ',' - type: string - includes_headers: - description: The `encoding` `includes_headers`. - example: true - type: boolean - type: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileEncodingType - required: - - type - - delimiter - - includes_headers - type: object - ObservabilityPipelineEnrichmentTableFileKeyItems: - description: >- - Defines how to map log fields to enrichment table columns during - lookups. - properties: - column: - description: The `items` `column`. - example: user_id - type: string - comparison: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison - field: - description: The `items` `field`. - example: log.user.id - type: string - required: - - column - - comparison - - field - type: object - ObservabilityPipelineEnrichmentTableFileSchemaItems: - description: Describes a single column and its type in an enrichment table schema. - properties: - column: - description: The `items` `column`. - example: region - type: string - type: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItemsType - required: - - column - - type - type: object - ObservabilityPipelineReduceProcessorMergeStrategyStrategy: - description: The merge strategy to apply. - enum: - - discard - - retain - - sum - - max - - min - - array - - concat - - concat_newline - - concat_raw - - shortest_array - - longest_array - - flat_unique - example: flat_unique - type: string - x-enum-varnames: - - DISCARD - - RETAIN - - SUM - - MAX - - MIN - - ARRAY - - CONCAT - - CONCAT_NEWLINE - - CONCAT_RAW - - SHORTEST_ARRAY - - LONGEST_ARRAY - - FLAT_UNIQUE - ObservabilityPipelinePipelineKafkaSourceSaslMechanism: - description: SASL mechanism used for Kafka authentication. - enum: - - PLAIN - - SCRAM-SHA-256 - - SCRAM-SHA-512 - type: string - x-enum-varnames: - - PLAIN - - SCRAMNOT_SHANOT_256 - - SCRAMNOT_SHANOT_512 - ObservabilityPipelineSocketSourceFramingNewlineDelimited: - description: Byte frames which are delimited by a newline character. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingBytes: - description: >- - Byte frames are passed through as-is according to the underlying I/O - boundaries (for example, split between messages or stream segments). - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingBytesMethod - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingCharacterDelimited: - description: Byte frames which are delimited by a chosen character. - properties: - delimiter: - description: A single ASCII character used to delimit events. - example: '|' - maxLength: 1 - minLength: 1 - type: string - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod - required: - - method - - delimiter - type: object - ObservabilityPipelineSocketSourceFramingOctetCounting: - description: Byte frames according to the octet counting format as per RFC6587. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCountingMethod - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingChunkedGelf: - description: Byte frames which are chunked GELF messages. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelfMethod - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod: - description: >- - The definition of - `ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod` - object. - enum: - - newline_delimited - example: newline_delimited - type: string - x-enum-varnames: - - NEWLINE_DELIMITED - ObservabilityPipelineSocketDestinationFramingBytesMethod: - description: >- - The definition of - `ObservabilityPipelineSocketDestinationFramingBytesMethod` object. - enum: - - bytes - example: bytes - type: string - x-enum-varnames: - - BYTES - ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod: - description: >- - The definition of - `ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod` - object. - enum: - - character_delimited - example: character_delimited - type: string - x-enum-varnames: - - CHARACTER_DELIMITED - ObservabilityPipelineGeneratedMetricIncrementByOne: - description: >- - Strategy that increments a generated metric by one for each matching - event. - properties: - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOneStrategy - required: - - strategy - type: object - ObservabilityPipelineGeneratedMetricIncrementByField: - description: >- - Strategy that increments a generated metric based on the value of a log - field. - properties: - field: - description: >- - Name of the log field containing the numeric value to increment the - metric by. - example: errors - type: string - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy - required: - - strategy - - field - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionRedact: - description: Configuration for completely redacting matched sensitive data. - properties: - action: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions - required: - - action - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionHash: - description: Configuration for hashing matched sensitive values. - properties: - action: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction - options: - description: >- - The `ObservabilityPipelineSensitiveDataScannerProcessorActionHash` - `options`. - type: object - required: - - action - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact: - description: Configuration for partially redacting matched sensitive data. - properties: - action: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions - required: - - action - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern: - description: >- - Defines a custom regex-based pattern for identifying sensitive data in - logs. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions - type: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType - required: - - type - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern: - description: >- - Specifies a pattern from Datadog’s sensitive data detection library to - match known sensitive data types. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions - type: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType - required: - - type - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude: - description: Includes only specific fields for sensitive data scanning. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions - target: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget + description: The JavaScript path used to extract the value. Required when `strategy` is `js`. + example: application.version + type: string + rc_serialized_type: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionSerializedType' + selector: + description: The CSS selector to read from the page. Required when `strategy` is `dom`. + example: '#app-version' + type: string + strategy: + $ref: '#/components/schemas/RumSdkConfigDynamicOptionStrategy' required: - - target - - options + - rc_serialized_type + - strategy type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude: - description: Excludes specific fields from sensitive data scanning. + ApplicationSecurityWafCustomRuleConditionInput: + description: Input from the request on which the condition should apply. properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions - target: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget + address: + $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleConditionInputAddress' + key_path: + description: Specific path for the input. + items: + description: A path segment for the input key. + type: string + type: array required: - - target - - options + - address type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeAll: - description: Applies scanning across all available fields. + ApplicationSecurityWafCustomRuleConditionOptions: + description: Options for the operator of this condition. properties: - target: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget - required: - - target + case_sensitive: + default: false + description: Evaluate the value as case sensitive. + type: boolean + min_length: + default: 0 + description: Only evaluate this condition if the value has a minimum amount of characters. + format: int64 + type: integer type: object - ObservabilityPipelineOcsfMappingLibrary: - description: Predefined library mappings for common log formats. - enum: - - CloudTrail Account Change - - GCP Cloud Audit CreateBucket - - GCP Cloud Audit CreateSink - - GCP Cloud Audit SetIamPolicy - - GCP Cloud Audit UpdateSink - - Github Audit Log API Activity - - Google Workspace Admin Audit addPrivilege - - Microsoft 365 Defender Incident - - Microsoft 365 Defender UserLoggedIn - - Okta System Log Authentication - - Palo Alto Networks Firewall Traffic - example: CloudTrail Account Change - type: string - x-enum-varnames: - - CLOUDTRAIL_ACCOUNT_CHANGE - - GCP_CLOUD_AUDIT_CREATEBUCKET - - GCP_CLOUD_AUDIT_CREATESINK - - GCP_CLOUD_AUDIT_SETIAMPOLICY - - GCP_CLOUD_AUDIT_UPDATESINK - - GITHUB_AUDIT_LOG_API_ACTIVITY - - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE - - MICROSOFT_365_DEFENDER_INCIDENT - - MICROSOFT_365_DEFENDER_USERLOGGEDIN - - OKTA_SYSTEM_LOG_AUTHENTICATION - - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC - ObservabilityPipelineEnrichmentTableFileEncodingType: - description: Specifies the encoding format (e.g., CSV) used for enrichment tables. - enum: - - csv - example: csv - type: string - x-enum-varnames: - - CSV - ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: - description: Defines how to compare key fields for enrichment table lookups. - enum: - - equals - example: equals - type: string - x-enum-varnames: - - EQUALS - ObservabilityPipelineEnrichmentTableFileSchemaItemsType: - description: Declares allowed data types for enrichment table columns. + ApplicationSecurityWafCustomRuleConditionParametersType: + description: The type of the value to compare against. Only used with the equals and !equals operator. enum: - - string - boolean - - integer + - signed + - unsigned - float - - date - - timestamp + - string example: string type: string x-enum-varnames: - - STRING - BOOLEAN - - INTEGER + - SIGNED + - UNSIGNED - FLOAT - - DATE - - TIMESTAMP - ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod: - description: Byte frames which are delimited by a newline character. - enum: - - newline_delimited - example: newline_delimited - type: string - x-enum-varnames: - - NEWLINE_DELIMITED - ObservabilityPipelineSocketSourceFramingBytesMethod: - description: >- - Byte frames are passed through as-is according to the underlying I/O - boundaries (for example, split between messages or stream segments). - enum: - - bytes - example: bytes - type: string - x-enum-varnames: - - BYTES - ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod: - description: Byte frames which are delimited by a chosen character. - enum: - - character_delimited - example: character_delimited - type: string - x-enum-varnames: - - CHARACTER_DELIMITED - ObservabilityPipelineSocketSourceFramingOctetCountingMethod: - description: Byte frames according to the octet counting format as per RFC6587. - enum: - - octet_counting - example: octet_counting - type: string - x-enum-varnames: - - OCTET_COUNTING - ObservabilityPipelineSocketSourceFramingChunkedGelfMethod: - description: Byte frames which are chunked GELF messages. - enum: - - chunked_gelf - example: chunked_gelf - type: string - x-enum-varnames: - - CHUNKED_GELF - ObservabilityPipelineGeneratedMetricIncrementByOneStrategy: - description: Increments the metric by 1 for each matching event. - enum: - - increment_by_one - example: increment_by_one - type: string - x-enum-varnames: - - INCREMENT_BY_ONE - ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy: - description: Uses a numeric field in the log event as the metric increment. - enum: - - increment_by_field - example: increment_by_field - type: string - x-enum-varnames: - - INCREMENT_BY_FIELD - ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction: - description: >- - Action type that completely replaces the matched sensitive data with a - fixed replacement string to remove all visibility. - enum: - - redact - example: redact - type: string - x-enum-varnames: - - REDACT - ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions: - description: Configuration for fully redacting sensitive data. + - STRING + CloudWorkloadSecurityAgentRuleActionHash: + description: Hash file specified by the field attribute properties: - replace: - description: >- - The - `ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions` - `replace`. - example: '***' + field: + description: The field of the hash action type: string - required: - - replace type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction: - description: >- - Action type that replaces the matched sensitive data with a hashed - representation, preserving structure while securing content. - enum: - - hash - example: hash - type: string - x-enum-varnames: - - HASH - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction: - description: >- - Action type that redacts part of the sensitive data while preserving a - configurable number of characters, typically used for masking purposes - (e.g., show last 4 digits of a credit card). - enum: - - partial_redact - example: partial_redact - type: string - x-enum-varnames: - - PARTIAL_REDACT - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions: - description: >- - Controls how partial redaction is applied, including character count and - direction. + CloudWorkloadSecurityAgentRuleKill: + description: Kill system call applied on the container matching the rule + properties: + signal: + description: Supported signals for the kill system call + type: string + type: object + CloudWorkloadSecurityAgentRuleActionMetadata: + description: The metadata action applied on the scope matching the rule + properties: + image_tag: + description: The image tag of the metadata action + type: string + service: + description: The service of the metadata action + type: string + short_image: + description: The short image of the metadata action + type: string + type: object + CloudWorkloadSecurityAgentRuleActionSet: + description: The set action applied on the scope matching the rule properties: - characters: - description: >- - The - `ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions` - `characters`. - example: 4 + append: + description: Whether the value should be appended to the field. + type: boolean + default_value: + description: The default value of the set action + type: string + expression: + description: The expression of the set action. + type: string + field: + description: The field of the set action + type: string + inherited: + description: Whether the value should be inherited. + type: boolean + name: + description: The name of the set action + type: string + scope: + description: The scope of the set action. + type: string + size: + description: The size of the set action. + format: int64 + type: integer + ttl: + description: The time to live of the set action. format: int64 type: integer - direction: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection + value: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSetValue' + type: object + RumSdkConfigTracingUrlConfig: + description: Configuration for a URL that should have distributed tracing enabled. + properties: + match: + $ref: '#/components/schemas/RumSdkConfigMatchOption' + propagator_types: + description: The list of trace propagator types to use for this URL. + example: + - datadog + - tracecontext + items: + $ref: '#/components/schemas/RumSdkConfigTracingUrlPropagatorType' + type: array required: - - characters - - direction + - match + - propagator_types type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions: - description: Options for defining a custom regex pattern. + RumSdkConfigMatchOption: + description: A match option used for URL or origin pattern matching. properties: - rule: - description: >- - A regular expression used to detect sensitive values. Must be a - valid regex. - example: \b\d{16}\b + rc_serialized_type: + $ref: '#/components/schemas/RumSdkConfigMatchOptionSerializedType' + value: + description: The value to match against. + example: https://app.datadoghq.com type: string required: - - rule + - rc_serialized_type + - value type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType: - description: Indicates a custom regular expression is used for matching. - enum: - - custom - example: custom - type: string - x-enum-varnames: - - CUSTOM - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions: - description: >- - Options for selecting a predefined library pattern and enabling keyword - support. + RumSdkConfigDynamicOptionPair: + description: A key-value pair where the value is a dynamic configuration option. properties: - id: - description: >- - Identifier for a predefined pattern from the sensitive data scanner - pattern library. - example: credit_card + key: + description: The key name for this dynamic configuration pair. + example: id type: string - use_recommended_keywords: - description: Whether to augment the pattern with recommended keywords (optional). - type: boolean + value: + $ref: '#/components/schemas/RumSdkConfigDynamicOption' required: - - id + - key + - value type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType: - description: Indicates that a predefined library pattern is used. - enum: - - library - example: library - type: string - x-enum-varnames: - - LIBRARY - ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions: - description: Fields to which the scope rule applies. + RumSdkConfigSerializedRegex: + description: A serialized regex used as an extractor in dynamic options. properties: - fields: - description: >- - The `ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions` - `fields`. - example: - - '' - items: - type: string - type: array + rc_serialized_type: + $ref: '#/components/schemas/RumSdkConfigSerializedRegexType' + value: + description: The regex pattern used for extraction. + example: ^https://app-.*.datadoghq.com + type: string required: - - fields + - rc_serialized_type + - value type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget: - description: Applies the rule only to included fields. + RumSdkConfigDynamicOptionSerializedType: + description: The type identifier for a dynamic option. Always `dynamic`. + enum: + - dynamic + example: dynamic + type: string + x-enum-varnames: + - DYNAMIC + RumSdkConfigDynamicOptionStrategy: + description: The strategy used to extract the dynamic value. enum: - - include - example: include + - js + - cookie + - dom + - localStorage + example: js type: string x-enum-varnames: - - INCLUDE - ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget: - description: Excludes specific fields from processing. + - JS + - COOKIE + - DOM + - LOCAL_STORAGE + ApplicationSecurityWafCustomRuleConditionInputAddress: + description: Input from the request on which the condition should apply. enum: - - exclude - example: exclude + - server.db.statement + - server.io.fs.file + - server.io.fs.file_write + - server.io.net.url + - server.sys.shell.cmd + - server.request.method + - server.request.uri.raw + - server.request.path_params + - server.request.query + - server.request.headers + - server.request.headers.no_cookies + - server.request.custom-auth + - server.request.cookies + - server.request.trailers + - server.request.body + - server.request.body.filenames + - server.request.body.files_content + - server.response.status + - server.response.headers.no_cookies + - server.response.trailers + - server.response.body + - grpc.server.request.metadata + - grpc.server.request.message + - grpc.server.method + - graphql.server.all_resolvers + - usr.id + - http.client_ip + - server.llm.event + - server.llm.guard.verdict + - _dd.appsec.fp.http.header + - _dd.appsec.fp.http.network + - _dd.appsec.fp.session + - _dd.appsec.fp.http.endpoint + example: server.db.statement type: string x-enum-varnames: - - EXCLUDE - ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget: - description: Applies the rule to all fields. + - SERVER_DB_STATEMENT + - SERVER_IO_FS_FILE + - SERVER_IO_FS_FILE_WRITE + - SERVER_IO_NET_URL + - SERVER_SYS_SHELL_CMD + - SERVER_REQUEST_METHOD + - SERVER_REQUEST_URI_RAW + - SERVER_REQUEST_PATH_PARAMS + - SERVER_REQUEST_QUERY + - SERVER_REQUEST_HEADERS + - SERVER_REQUEST_HEADERS_NO_COOKIES + - SERVER_REQUEST_CUSTOM_AUTH + - SERVER_REQUEST_COOKIES + - SERVER_REQUEST_TRAILERS + - SERVER_REQUEST_BODY + - SERVER_REQUEST_BODY_FILENAMES + - SERVER_REQUEST_BODY_FILES_CONTENT + - SERVER_RESPONSE_STATUS + - SERVER_RESPONSE_HEADERS_NO_COOKIES + - SERVER_RESPONSE_TRAILERS + - SERVER_RESPONSE_BODY + - GRPC_SERVER_REQUEST_METADATA + - GRPC_SERVER_REQUEST_MESSAGE + - GRPC_SERVER_METHOD + - GRAPHQL_SERVER_ALL_RESOLVERS + - USR_ID + - HTTP_CLIENT_IP + - SERVER_LLM_EVENT + - SERVER_LLM_GUARD_VERDICT + - DD_APPSEC_FP_HTTP_HEADER + - DD_APPSEC_FP_HTTP_NETWORK + - DD_APPSEC_FP_SESSION + - DD_APPSEC_FP_HTTP_ENDPOINT + CloudWorkloadSecurityAgentRuleActionSetValue: + description: The value of the set action + type: string + format: int32 + maximum: 2147483647 + RumSdkConfigTracingUrlPropagatorType: + description: A trace propagator type. + enum: + - datadog + - b3 + - b3multi + - tracecontext + example: datadog + type: string + x-enum-varnames: + - DATADOG + - B3 + - B3MULTI + - TRACECONTEXT + RumSdkConfigMatchOptionSerializedType: + description: The type of match pattern, either a literal string or a regex. enum: - - all - example: all + - string + - regex + example: string type: string x-enum-varnames: - - ALL - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection: - description: >- - Indicates whether to redact characters from the first or last part of - the matched value. + - STRING + - REGEX + RumSdkConfigSerializedRegexType: + description: The type identifier for a serialized regex. Always `regex`. enum: - - first - - last - example: last + - regex + example: regex type: string x-enum-varnames: - - FIRST - - LAST + - REGEX responses: NotAuthorizedResponse: content: @@ -6431,6 +3636,14 @@ components: required: true schema: type: string + ApplicationSecurityPolicyIDParam: + description: The ID of the policy. + example: recommended + in: path + name: policy_id + required: true + schema: + type: string CloudWorkloadSecurityQueryAgentPolicyID: description: The ID of the Agent policy example: 6517fcc1-cec7-4394-a655-8d6e9d085255 @@ -6455,26 +3668,6 @@ components: required: true schema: type: string - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer x-stackQL-resources: waf_custom_rules: id: datadog.remote_config.waf_custom_rules @@ -6483,57 +3676,63 @@ components: methods: list_application_security_wafcustom_rules: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_application_security_waf_custom_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules/post + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_application_security_waf_custom_rule: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/delete + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_application_security_waf_custom_rule: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_application_security_waf_custom_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/put + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1custom_rules~1{custom_rule_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/waf_custom_rules/methods/get_application_security_waf_custom_rule - - $ref: >- - #/components/x-stackQL-resources/waf_custom_rules/methods/list_application_security_wafcustom_rules + - $ref: '#/components/x-stackQL-resources/waf_custom_rules/methods/get_application_security_waf_custom_rule' + - $ref: '#/components/x-stackQL-resources/waf_custom_rules/methods/list_application_security_wafcustom_rules' insert: - - $ref: >- - #/components/x-stackQL-resources/waf_custom_rules/methods/create_application_security_waf_custom_rule + - $ref: '#/components/x-stackQL-resources/waf_custom_rules/methods/create_application_security_waf_custom_rule' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/waf_custom_rules/methods/delete_application_security_waf_custom_rule + - $ref: '#/components/x-stackQL-resources/waf_custom_rules/methods/delete_application_security_waf_custom_rule' replace: - - $ref: >- - #/components/x-stackQL-resources/waf_custom_rules/methods/update_application_security_waf_custom_rule + - $ref: '#/components/x-stackQL-resources/waf_custom_rules/methods/update_application_security_waf_custom_rule' waf_exclusion_filters: id: datadog.remote_config.waf_exclusion_filters name: waf_exclusion_filters @@ -6541,57 +3740,127 @@ components: methods: list_application_security_waf_exclusion_filters: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_application_security_waf_exclusion_filter: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters/post + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_application_security_waf_exclusion_filter: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/delete + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_application_security_waf_exclusion_filter: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_application_security_waf_exclusion_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/waf_exclusion_filters/methods/get_application_security_waf_exclusion_filter' + - $ref: '#/components/x-stackQL-resources/waf_exclusion_filters/methods/list_application_security_waf_exclusion_filters' + insert: + - $ref: '#/components/x-stackQL-resources/waf_exclusion_filters/methods/create_application_security_waf_exclusion_filter' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/waf_exclusion_filters/methods/delete_application_security_waf_exclusion_filter' + replace: + - $ref: '#/components/x-stackQL-resources/waf_exclusion_filters/methods/update_application_security_waf_exclusion_filter' + waf_policies: + id: datadog.remote_config.waf_policies + name: waf_policies + title: Waf Policies + methods: + list_application_security_wafpolicies: + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1policies/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_application_security_waf_policy: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1policies/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_application_security_waf_policy: + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1policies~1{policy_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_application_security_waf_policy: + operation: + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1policies~1{policy_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_application_security_waf_policy: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1exclusion_filters~1{exclusion_filter_id}/put + $ref: '#/paths/~1api~1v2~1remote_config~1products~1asm~1waf~1policies~1{policy_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/waf_exclusion_filters/methods/get_application_security_waf_exclusion_filter - - $ref: >- - #/components/x-stackQL-resources/waf_exclusion_filters/methods/list_application_security_waf_exclusion_filters + - $ref: '#/components/x-stackQL-resources/waf_policies/methods/get_application_security_waf_policy' + - $ref: '#/components/x-stackQL-resources/waf_policies/methods/list_application_security_wafpolicies' insert: - - $ref: >- - #/components/x-stackQL-resources/waf_exclusion_filters/methods/create_application_security_waf_exclusion_filter + - $ref: '#/components/x-stackQL-resources/waf_policies/methods/create_application_security_waf_policy' update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/waf_exclusion_filters/methods/delete_application_security_waf_exclusion_filter + - $ref: '#/components/x-stackQL-resources/waf_policies/methods/delete_application_security_waf_policy' replace: - - $ref: >- - #/components/x-stackQL-resources/waf_exclusion_filters/methods/update_application_security_waf_exclusion_filter + - $ref: '#/components/x-stackQL-resources/waf_policies/methods/update_application_security_waf_policy' csm_threats_agent_rules: id: datadog.remote_config.csm_threats_agent_rules name: csm_threats_agent_rules @@ -6604,49 +3873,57 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_csmthreats_agent_rule: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel delete_csmthreats_agent_rule: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/delete + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_csmthreats_agent_rule: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_csmthreats_agent_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/patch + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1agent_rules~1{agent_rule_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_rules/methods/get_csmthreats_agent_rule - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_rules/methods/list_csmthreats_agent_rules + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_rules/methods/get_csmthreats_agent_rule' + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_rules/methods/list_csmthreats_agent_rules' insert: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_rules/methods/create_csmthreats_agent_rule + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_rules/methods/create_csmthreats_agent_rule' update: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_rules/methods/update_csmthreats_agent_rule + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_rules/methods/update_csmthreats_agent_rule' delete: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_rules/methods/delete_csmthreats_agent_rule + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_rules/methods/delete_csmthreats_agent_rule' replace: [] csm_threats_agent_policies: id: datadog.remote_config.csm_threats_agent_policies @@ -6660,125 +3937,95 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel create_csmthreats_agent_policy: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1policy/post' response: mediaType: application/json openAPIDocKey: '200' - download_csmthreats_policy: - operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1download/get - response: - mediaType: application/zip - openAPIDocKey: '200' + request: + nativeCasing: camel delete_csmthreats_agent_policy: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/delete + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/delete' response: mediaType: application/json openAPIDocKey: '202' + request: + nativeCasing: camel get_csmthreats_agent_policy: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_csmthreats_agent_policy: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/patch + $ref: '#/paths/~1api~1v2~1remote_config~1products~1cws~1policy~1{policy_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_policies/methods/get_csmthreats_agent_policy - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_policies/methods/list_csmthreats_agent_policies + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_policies/methods/get_csmthreats_agent_policy' + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_policies/methods/list_csmthreats_agent_policies' insert: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_policies/methods/create_csmthreats_agent_policy + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_policies/methods/create_csmthreats_agent_policy' update: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_policies/methods/update_csmthreats_agent_policy + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_policies/methods/update_csmthreats_agent_policy' delete: - - $ref: >- - #/components/x-stackQL-resources/csm_threats_agent_policies/methods/delete_csmthreats_agent_policy + - $ref: '#/components/x-stackQL-resources/csm_threats_agent_policies/methods/delete_csmthreats_agent_policy' replace: [] - observability_pipelines: - id: datadog.remote_config.observability_pipelines - name: observability_pipelines - title: Observability Pipelines + rum_configs: + id: datadog.remote_config.rum_configs + name: rum_configs + title: Rum Configs methods: - list_pipelines: - operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines/get - response: - mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - create_pipeline: - operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines/post - response: - mediaType: application/json - openAPIDocKey: '201' - validate_pipeline: - operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines~1validate/post - response: - mediaType: application/json - openAPIDocKey: '200' - delete_pipeline: - operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines~1{pipeline_id}/delete - response: - mediaType: application/json - openAPIDocKey: '204' - get_pipeline: + get_rum_sdk_config: operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines~1{pipeline_id}/get + $ref: '#/paths/~1api~1v2~1remote_config~1products~1rum~1configs~1{config_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_pipeline: + request: + nativeCasing: camel + update_rum_sdk_config: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1remote_config~1products~1obs_pipelines~1pipelines~1{pipeline_id}/put + $ref: '#/paths/~1api~1v2~1remote_config~1products~1rum~1configs~1{config_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/observability_pipelines/methods/get_pipeline - - $ref: >- - #/components/x-stackQL-resources/observability_pipelines/methods/list_pipelines - insert: - - $ref: >- - #/components/x-stackQL-resources/observability_pipelines/methods/create_pipeline + - $ref: '#/components/x-stackQL-resources/rum_configs/methods/get_rum_sdk_config' + insert: [] update: [] - delete: - - $ref: >- - #/components/x-stackQL-resources/observability_pipelines/methods/delete_pipeline + delete: [] replace: - - $ref: >- - #/components/x-stackQL-resources/observability_pipelines/methods/update_pipeline + - $ref: '#/components/x-stackQL-resources/rum_configs/methods/update_rum_sdk_config' servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml index 016f125..3b254e1 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml @@ -12,6 +12,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: '123456789012' + type: aws_scan_options schema: $ref: '#/components/schemas/AwsScanOptionsListResponse' description: OK @@ -19,7 +30,12 @@ paths: $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List AWS Scan Options + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List AWS scan options tags: - Agentless Scanning post: @@ -28,6 +44,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: '123456789012' + type: aws_scan_options schema: $ref: '#/components/schemas/AwsScanOptionsCreateRequest' description: The definition of the new scan options. @@ -36,6 +64,17 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: '123456789012' + type: aws_scan_options schema: $ref: '#/components/schemas/AwsScanOptionsResponse' description: Agentless scan options enabled successfully. @@ -47,7 +86,12 @@ paths: $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Post AWS Scan Options + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create AWS scan options tags: - Agentless Scanning x-codegen-request-body-name: body @@ -68,7 +112,12 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete AWS Scan Options + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Delete AWS scan options tags: - Agentless Scanning get: @@ -80,6 +129,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: '123456789012' + type: aws_scan_options schema: $ref: '#/components/schemas/AwsScanOptionsResponse' description: OK @@ -91,6 +151,11 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read summary: Get AWS scan options tags: - Agentless Scanning @@ -102,6 +167,18 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + lambda: true + sensitive_data: false + vuln_containers_os: true + vuln_host_os: true + id: '123456789012' + type: aws_scan_options schema: $ref: '#/components/schemas/AwsScanOptionsUpdateRequest' description: New definition of the scan options. @@ -117,79 +194,142 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Patch AWS Scan Options + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Update AWS scan options tags: - Agentless Scanning x-codegen-request-body-name: body - /api/v2/agentless_scanning/ondemand/aws: + /api/v2/agentless_scanning/accounts/azure: get: - description: Fetches the most recent 1000 AWS on demand tasks. - operationId: ListAwsOnDemandTasks + description: Fetches the scan options configured for Azure accounts. + operationId: ListAzureScanOptions responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + vuln_containers_os: true + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options schema: - $ref: '#/components/schemas/AwsOnDemandListResponse' + $ref: '#/components/schemas/AzureScanOptionsArray' description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS On Demand tasks + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List Azure scan options tags: - Agentless Scanning - x-permission: - operator: OR - permissions: - - security_monitoring_findings_read post: - description: >- - Trigger the scan of an AWS resource with a high priority. Agentless - scanning must be activated for the AWS account containing the resource - to scan. - operationId: CreateAwsOnDemandTask + description: Activate Agentless scan options for an Azure subscription. + operationId: CreateAzureScanOptions requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options schema: - $ref: '#/components/schemas/AwsOnDemandCreateRequest' - description: The definition of the on demand task. + $ref: '#/components/schemas/AzureScanOptions' required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options schema: - $ref: '#/components/schemas/AwsOnDemandResponse' - description: AWS on demand task created successfully. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/schemas/AzureScanOptions' + description: Created '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Post an AWS on demand task + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create Azure scan options + tags: + - Agentless Scanning + /api/v2/agentless_scanning/accounts/azure/{subscription_id}: + delete: + description: Delete Agentless scan options for an Azure subscription. + operationId: DeleteAzureScanOptions + parameters: + - description: The Azure subscription ID. + in: path + name: subscription_id + required: true + schema: + example: 12345678-90ab-cdef-1234-567890abcdef + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Delete Azure scan options tags: - Agentless Scanning - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_findings_write - /api/v2/agentless_scanning/ondemand/aws/{task_id}: get: - description: Fetch the data of a specific on demand task. - operationId: GetAwsOnDemandTask + description: Fetches the Agentless scan options for an activated subscription. + operationId: GetAzureScanOptions parameters: - - $ref: '#/components/parameters/OnDemandTaskId' + - description: The Azure subscription ID. + in: path + name: subscription_id + required: true + schema: + example: 12345678-90ab-cdef-1234-567890abcdef + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options schema: - $ref: '#/components/schemas/AwsOnDemandResponse' - description: OK. + $ref: '#/components/schemas/AzureScanOptions' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': @@ -198,2292 +338,3112 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS On Demand task by id + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get Azure scan options tags: - Agentless Scanning - x-permission: - operator: OR - permissions: - - security_monitoring_findings_read - /api/v2/cloud_security_management/custom_frameworks: - post: - description: Create a custom framework. - operationId: CreateCustomFramework + patch: + description: Update the Agentless scan options for an activated subscription. + operationId: UpdateAzureScanOptions + parameters: + - description: The Azure subscription ID. + in: path + name: subscription_id + required: true + schema: + example: 12345678-90ab-cdef-1234-567890abcdef + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: false + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options schema: - $ref: '#/components/schemas/CreateCustomFrameworkRequest' + $ref: '#/components/schemas/AzureScanOptionsInputUpdate' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: false + vuln_host_os: true + id: 00000000-0000-0000-0000-000000000001 + type: azure_scan_options schema: - $ref: '#/components/schemas/CreateCustomFrameworkResponse' + $ref: '#/components/schemas/AzureScanOptions' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '409': - $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Create a custom framework + - org_management + summary: Update Azure scan options tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - /api/v2/cloud_security_management/custom_frameworks/{handle}/{version}: - delete: - description: Delete a custom framework. - operationId: DeleteCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' + - Agentless Scanning + /api/v2/agentless_scanning/accounts/gcp: + get: + description: Fetches the scan options configured for all GCP projects. + operationId: ListGcpScanOptions responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options schema: - $ref: '#/components/schemas/DeleteCustomFrameworkResponse' + $ref: '#/components/schemas/GcpScanOptionsArray' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Delete a custom framework + - security_monitoring_findings_read + summary: List GCP scan options tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - get: - description: Get a custom framework. - operationId: GetCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' + - Agentless Scanning + post: + description: Activate Agentless scan options for a GCP project. + operationId: CreateGcpScanOptions + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: company-project-id + type: gcp_scan_options + schema: + $ref: '#/components/schemas/GcpScanOptions' + description: The definition of the new scan options. + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options schema: - $ref: '#/components/schemas/GetCustomFrameworkResponse' - description: OK + $ref: '#/components/schemas/GcpScanOptions' + description: Agentless scan options enabled successfully. '400': $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_rules_read - summary: Get a custom framework + - org_management + summary: Create GCP scan options tags: - - Security Monitoring + - Agentless Scanning x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - put: - description: Update a custom framework. - operationId: UpdateCustomFramework + /api/v2/agentless_scanning/accounts/gcp/{project_id}: + delete: + description: Delete Agentless scan options for a GCP project. + operationId: DeleteGcpScanOptions parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCustomFrameworkRequest' - required: true + - description: The GCP project ID. + in: path + name: project_id + required: true + schema: + example: company-project-id + type: string responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCustomFrameworkResponse' - description: OK + '204': + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Update a custom framework + - org_management + summary: Delete GCP scan options tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - /api/v2/cloud_security_management/resource_filters: + - Agentless Scanning get: - description: List resource filters. - operationId: GetResourceEvaluationFilters + description: Fetches the Agentless scan options for an activated GCP project. + operationId: GetGcpScanOptions parameters: - - $ref: '#/components/parameters/ResourceFilterProvider' - - $ref: '#/components/parameters/ResourceFilterAccountID' - - $ref: '#/components/parameters/SkipCache' + - description: The GCP project ID. + in: path + name: project_id + required: true + schema: + example: company-project-id + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options schema: - $ref: '#/components/schemas/GetResourceEvaluationFiltersResponse' + $ref: '#/components/schemas/GcpScanOptions' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_filters_read - summary: List resource filters + - security_monitoring_findings_read + summary: Get GCP scan options tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - put: - description: Update resource filters. - operationId: UpdateResourceEvaluationFilters + - Agentless Scanning + patch: + description: Update the Agentless scan options for an activated GCP project. + operationId: UpdateGcpScanOptions + parameters: + - description: The GCP project ID. + in: path + name: project_id + required: true + schema: + example: company-project-id + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: false + id: company-project-id + type: gcp_scan_options schema: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequest' + $ref: '#/components/schemas/GcpScanOptionsInputUpdate' + description: New definition of the scan options. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + vuln_containers_os: true + vuln_host_os: true + id: abc-123 + type: gcp_scan_options schema: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponse' + $ref: '#/components/schemas/GcpScanOptions' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_filters_write - summary: Update resource filters + - org_management + summary: Update GCP scan options tags: - - Security Monitoring + - Agentless Scanning x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/csm/onboarding/agents: + /api/v2/agentless_scanning/ondemand/aws: get: - description: Get the list of all CSM Agents running on your hosts and containers. - operationId: ListAllCSMAgents - parameters: - - description: The page index for pagination (zero-based). - in: query - name: page - required: false - schema: - example: 2 - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of items to include in a single page. - in: query - name: size - required: false - schema: - example: 12 - format: int32 - maximum: 100 - minimum: 0 - type: integer - - description: >- - A search query string to filter results (for example, - `hostname:COMP-T2H4J27423`). - in: query - name: query - required: false - schema: - example: hostname:COMP-T2H4J27423 - type: string - - description: >- - The sort direction for results. Use `asc` for ascending or `desc` - for descending. - in: query - name: order_direction - required: false - schema: - $ref: '#/components/schemas/OrderDirection' + description: Fetches the most recent 1000 AWS on demand tasks. + operationId: ListAwsOnDemandTasks responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + arn: arn:aws:ec2:us-east-1:123456789012:instance/i-0eabb50529b67a1ba + assigned_at: '2024-01-01T00:00:00+00:00' + created_at: '2024-01-01T00:00:00+00:00' + status: QUEUED + id: abc-123 + type: aws_resource schema: - $ref: '#/components/schemas/CsmAgentsResponse' + $ref: '#/components/schemas/AwsOnDemandListResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all CSM Agents + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List AWS on demand tasks tags: - - CSM Agents - /api/v2/csm/onboarding/coverage_analysis/cloud_accounts: - get: - description: |- - Get the CSM Coverage Analysis of your Cloud Accounts. - This is calculated based on the number of your Cloud Accounts that are - scanned for security issues. - operationId: GetCSMCloudAccountsCoverageAnalysis + - Agentless Scanning + x-permission: + operator: OR + permissions: + - security_monitoring_findings_read + post: + description: Trigger the scan of an AWS resource with a high priority. Agentless scanning must be activated for the AWS account containing the resource to scan. + operationId: CreateAwsOnDemandTask + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + arn: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba + type: aws_resource + schema: + $ref: '#/components/schemas/AwsOnDemandCreateRequest' + description: The definition of the on demand task. + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + arn: arn:aws:ec2:us-east-1:123456789012:instance/i-0eabb50529b67a1ba + created_at: '2024-01-01T00:00:00+00:00' + status: QUEUED + id: abc-123 + type: aws_resource schema: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisResponse' - description: OK + $ref: '#/components/schemas/AwsOnDemandResponse' + description: AWS on demand task created successfully. + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Cloud Accounts Coverage Analysis + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - org_management + summary: Create AWS on demand task tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/coverage_analysis/hosts_and_containers: + - Agentless Scanning + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_findings_write + /api/v2/agentless_scanning/ondemand/aws/{task_id}: get: - description: |- - Get the CSM Coverage Analysis of your Hosts and Containers. - This is calculated based on the number of agents running on your Hosts - and Containers with CSM feature(s) enabled. - operationId: GetCSMHostsAndContainersCoverageAnalysis + description: Fetch the data of a specific on demand task. + operationId: GetAwsOnDemandTask + parameters: + - $ref: '#/components/parameters/OnDemandTaskId' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + arn: arn:aws:ec2:us-east-1:123456789012:instance/i-0eabb50529b67a1ba + assigned_at: '2024-01-01T00:00:00+00:00' + created_at: '2024-01-01T00:00:00+00:00' + status: ASSIGNED + id: abc-123 + type: aws_resource schema: - $ref: >- - #/components/schemas/CsmHostsAndContainersCoverageAnalysisResponse - description: OK + $ref: '#/components/schemas/AwsOnDemandResponse' + description: OK. + '400': + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Hosts and Containers Coverage Analysis + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get AWS on demand task tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/coverage_analysis/serverless: - get: - description: >- - Get the CSM Coverage Analysis of your Serverless Resources. - - This is calculated based on the number of agents running on your - Serverless - - Resources with CSM feature(s) enabled. - operationId: GetCSMServerlessCoverageAnalysis + - Agentless Scanning + x-permission: + operator: OR + permissions: + - security_monitoring_findings_read + /api/v2/cloud_security_management/custom_frameworks: + post: + description: Create a custom framework. + operationId: CreateCustomFramework + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + requirements: + - controls: + - name: control + rules_id: + - def-000-be9 + name: criteria + version: '2' + type: custom_framework + schema: + $ref: '#/components/schemas/CreateCustomFrameworkRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + handle: sec2 + version: '2' + id: sec2-2 + type: custom_framework schema: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisResponse' + $ref: '#/components/schemas/CreateCustomFrameworkResponse' description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' + '400': + $ref: '#/components/responses/BadRequestResponse' + '409': + $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Serverless Coverage Analysis + '500': + $ref: '#/components/responses/BadRequestResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_rules_write + summary: Create a custom framework tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/serverless/agents: - get: - description: >- - Get the list of all CSM Serverless Agents running on your hosts and - containers. - operationId: ListAllCSMServerlessAgents + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_rules_write + /api/v2/cloud_security_management/custom_frameworks/{handle}/{version}: + delete: + description: Delete a custom framework. + operationId: DeleteCustomFramework parameters: - - description: The page index for pagination (zero-based). - in: query - name: page - required: false - schema: - example: 2 - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of items to include in a single page. - in: query - name: size - required: false - schema: - example: 12 - format: int32 - maximum: 100 - minimum: 0 - type: integer - - description: >- - A search query string to filter results (for example, - `hostname:COMP-T2H4J27423`). - in: query - name: query - required: false - schema: - example: hostname:COMP-T2H4J27423 - type: string - - description: >- - The sort direction for results. Use `asc` for ascending or `desc` - for descending. - in: query - name: order_direction - required: false - schema: - $ref: '#/components/schemas/OrderDirection' + - $ref: '#/components/parameters/CustomFrameworkHandle' + - $ref: '#/components/parameters/CustomFrameworkVersion' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + version: '2' + id: sec2-2 + type: custom_framework schema: - $ref: '#/components/schemas/CsmAgentsResponse' + $ref: '#/components/schemas/DeleteCustomFrameworkResponse' description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' + '400': + $ref: '#/components/responses/BadRequestResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all CSM Serverless Agents + '500': + $ref: '#/components/responses/BadRequestResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_rules_write + summary: Delete a custom framework tags: - - CSM Agents - /api/v2/posture_management/findings: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_rules_write get: - description: > - Get a list of findings. These include both misconfigurations and - identity risks. - - - **Note**: To filter and return only identity risks, add the following - query parameter: `?filter[tags]=dd_rule_type:ciem` - - - ### Filtering - - - Filters can be applied by appending query parameters to the URL. - - - Using a single filter: `?filter[attribute_key]=attribute_value` - - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...` - - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2` - - Here, `attribute_key` can be any of the filter keys described further - below. - - - Query parameters of type `integer` support comparison operators (`>`, - `>=`, `<`, `<=`). This is particularly useful when filtering by - `evaluation_changed_at` or `resource_discovery_timestamp`. For example: - `?filter[evaluation_changed_at]=>20123123121`. - - - You can also use the negation operator on strings. For example, use - `filter[resource_type]=-aws*` to filter for any non-AWS resources. - - - The operator must come after the equal sign. For example, to filter with - the `>=` operator, add the operator after the equal sign: - `filter[evaluation_changed_at]=>=1678809373257`. - - - Query parameters must be only among the documented ones and with values - of correct types. Duplicated query parameters (e.g. - `filter[status]=low&filter[status]=info`) are not allowed. - - - ### Additional extension fields - - - Additional extension fields are available for some findings. - - - The data is available when you include the query parameter - `?detailed_findings=true` in the request. - - - The following fields are available for findings: - - - `external_id`: The resource external ID related to the finding. - - - `description`: The description and remediation steps for the finding. - - - `datadog_link`: The Datadog relative link for the finding. - - - `ip_addresses`: The list of private IP addresses for the resource - related to the finding. - - - ### Response - - - The response includes an array of finding objects, pagination metadata, - and a count of items that match the query. - - - Each finding object contains the following: - - - - The finding ID that can be used in a `GetFinding` request to retrieve - the full finding details. - - - Core attributes, including status, evaluation, high-level resource - details, muted state, and rule details. - - - `evaluation_changed_at` and `resource_discovery_date` time stamps. - - - An array of associated tags. - operationId: ListFindings + description: Get a custom framework. + operationId: GetCustomFramework parameters: - - description: Limit the number of findings returned. Must be <= 1000. - example: 50 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - maximum: 1000 - minimum: 1 - type: integer - - description: Return findings for a given snapshot of time (Unix ms). - example: 1678721573794 - in: query - name: snapshot_timestamp - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Return the next page of findings pointed to by the cursor. - example: >- - eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Return findings that have these associated tags (repeatable). - example: >- - filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999 - in: query - name: filter[tags] - required: false - schema: - type: string - - description: >- - Return findings that have changed from pass to fail or vice versa on - a specified date (Unix ms) or date range (using comparison - operators). - example: '>=1678721573794' - in: query - name: filter[evaluation_changed_at] - required: false - schema: - type: string - - description: >- - Set to `true` to return findings that are muted. Set to `false` to - return unmuted findings. - in: query - name: filter[muted] - required: false - schema: - type: boolean - - description: Return findings for the specified rule ID. - in: query - name: filter[rule_id] - required: false - schema: - type: string - - description: Return findings for the specified rule. - in: query - name: filter[rule_name] - required: false - schema: - type: string - - description: Return only findings for the specified resource type. - in: query - name: filter[resource_type] - required: false - schema: - type: string - - description: Return only findings for the specified resource id. - in: query - name: filter[@resource_id] - required: false - schema: - type: string - - description: >- - Return findings that were found on a specified date (Unix ms) or - date range (using comparison operators). - example: '>=1678721573794' - in: query - name: filter[discovery_timestamp] - required: false - schema: - type: string - - description: Return only `pass` or `fail` findings. - example: pass - in: query - name: filter[evaluation] - required: false - schema: - $ref: '#/components/schemas/FindingEvaluation' - - description: Return only findings with the specified status. - example: critical - in: query - name: filter[status] - required: false - schema: - $ref: '#/components/schemas/FindingStatus' - - description: >- - Return findings that match the selected vulnerability types - (repeatable). - example: - - misconfiguration - explode: true - in: query - name: filter[vulnerability_type] - required: false - schema: - items: - $ref: '#/components/schemas/FindingVulnerabilityType' - type: array - - description: Return additional fields for some findings. - example: - - true - in: query - name: detailed_findings - required: false - schema: - type: boolean + - $ref: '#/components/parameters/CustomFrameworkHandle' + - $ref: '#/components/parameters/CustomFrameworkVersion' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + requirements: + - controls: + - name: control + rules_id: + - def-000-be9 + name: criteria + version: '2' + id: sec2-2 + type: custom_framework schema: - $ref: '#/components/schemas/ListFindingsResponse' + $ref: '#/components/schemas/GetCustomFrameworkResponse' description: OK '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' + $ref: '#/components/responses/BadRequestResponse' '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + $ref: '#/components/responses/BadRequestResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_findings_read - summary: List findings + - security_monitoring_rules_read + summary: Get a custom framework tags: - Security Monitoring - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.cursor - limitParam: page[limit] - resultsPath: data - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Mute or unmute findings. - operationId: MuteFindings + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + put: + description: Update a custom framework. + operationId: UpdateCustomFramework + parameters: + - $ref: '#/components/parameters/CustomFrameworkHandle' + - $ref: '#/components/parameters/CustomFrameworkVersion' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + handle: sec2 + name: security-framework + requirements: + - controls: + - name: control + rules_id: + - def-000-be9 + name: criteria + version: '2' + type: custom_framework schema: - $ref: '#/components/schemas/BulkMuteFindingsRequest' - description: > - ### Attributes - - - All findings are updated with the same attributes. The request body - must include at least two attributes: `muted` and `reason`. - - The allowed reasons depend on whether the finding is being muted or - unmuted: - - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `ACCEPTED_RISK`, `OTHER`. - - To unmute a finding : `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, `OTHER`. - - ### Meta - - - The request body must include a list of the finding IDs to be updated. + $ref: '#/components/schemas/UpdateCustomFrameworkRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + handle: sec2 + version: '2' + id: sec2-2 + type: custom_framework schema: - $ref: '#/components/schemas/BulkMuteFindingsResponse' + $ref: '#/components/schemas/UpdateCustomFrameworkResponse' description: OK '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Invalid Request: The server understands the request syntax but - cannot process it due to invalid data. + $ref: '#/components/responses/BadRequestResponse' '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + $ref: '#/components/responses/BadRequestResponse' security: - apiKeyAuth: [] appKeyAuth: [] - summary: Mute or unmute a batch of findings + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_rules_write + summary: Update a custom framework tags: - Security Monitoring x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/posture_management/findings/{finding_id}: + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_rules_write + /api/v2/cloud_security_management/resource_filters: get: - description: Returns a single finding with message and resource configuration. - operationId: GetFinding + description: List resource filters. + operationId: GetResourceEvaluationFilters parameters: - - description: The ID of the finding. - in: path - name: finding_id - required: true - schema: - type: string - - description: Return the finding for a given snapshot of time (Unix ms). - example: 1678721573794 - in: query - name: snapshot_timestamp - required: false - schema: - format: int64 - minimum: 1 - type: integer + - $ref: '#/components/parameters/ResourceFilterProvider' + - $ref: '#/components/parameters/ResourceFilterAccountID' + - $ref: '#/components/parameters/SkipCache' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + cloud_provider: + aws: + '123456789': + - environment:production + id: csm_resource_filter + type: csm_resource_filter schema: - $ref: '#/components/schemas/GetFindingResponse' + $ref: '#/components/schemas/GetResourceEvaluationFiltersResponse' description: OK '400': - $ref: '#/components/responses/FindingsBadRequestResponse' + $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_findings_read - summary: Get a finding + - security_monitoring_filters_read + summary: List resource filters tags: - Security Monitoring - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/security/assets: - get: - description: > - Get a list of vulnerable assets. - - - ### Pagination - - - Please review the [Pagination section for the "List - Vulnerabilities"] endpoint. - - - ### Filtering - - - Please review the [Filtering section for the "List - Vulnerabilities"] endpoint. - - - ### Metadata - - - Please review the [Metadata section for the "List - Vulnerabilities"] endpoint. - operationId: ListVulnerableAssets - parameters: - - description: >- - Its value must come from the `links` section of the response of the - first request. Do not manually edit it. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: >- - The page number to be retrieved. It should be equal or greater than - `1` - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Filter by name. - example: datadog-agent - in: query - name: filter[name] - required: false - schema: - type: string - - description: Filter by type. - example: Host - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: >- - Filter by the first version of the asset since it has been - vulnerable. - example: v1.15.1 - in: query - name: filter[version.first] - required: false - schema: - type: string - - description: Filter by the last detected version of the asset. - example: v1.15.1 - in: query - name: filter[version.last] - required: false - schema: - type: string - - description: Filter by the repository url associated to the asset. - example: github.com/DataDog/datadog-agent.git - in: query - name: filter[repository_url] - required: false - schema: - type: string - - description: Filter whether the asset is in production or not. - example: false - in: query - name: filter[risks.in_production] - required: false - schema: - type: boolean - - description: Filter whether the asset (Service) is under attack or not. - example: false - in: query - name: filter[risks.under_attack] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) is publicly accessible or not. - example: false - in: query - name: filter[risks.is_publicly_accessible] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) has privileged access or not. - example: false - in: query - name: filter[risks.has_privileged_access] - required: false - schema: - type: boolean - - description: >- - Filter whether the asset (Host) has access to sensitive data or - not. - example: false - in: query - name: filter[risks.has_access_to_sensitive_data] - required: false - schema: - type: boolean - - description: Filter by environment. - example: staging - in: query - name: filter[environments] - required: false - schema: - type: string - - description: Filter by teams. - example: compute - in: query - name: filter[teams] - required: false - schema: - type: string - - description: Filter by architecture. - example: arm64 - in: query - name: filter[arch] - required: false - schema: - type: string - - description: Filter by operating system name. - example: ubuntu - in: query - name: filter[operating_system.name] - required: false - schema: - type: string - - description: Filter by operating system version. - example: '24.04' - in: query - name: filter[operating_system.version] - required: false - schema: - type: string + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + put: + description: Update resource filters. + operationId: UpdateResourceEvaluationFilters + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + aws: + '123456789': + - environment:production + - team:devops + azure: + sub-001: + - app:frontend + gcp: + project-abc: + - region:us-central1 + id: csm_resource_filter + type: csm_resource_filter + schema: + $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequest' + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + cloud_provider: + aws: + '123456789': + - environment:production + id: csm_resource_filter + type: csm_resource_filter schema: - $ref: '#/components/schemas/ListVulnerableAssetsResponse' + $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. + $ref: '#/components/responses/BadRequestResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: There is no request associated with the provided token.' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - summary: List vulnerable assets + - AuthZ: + - security_monitoring_filters_write + summary: Update resource filters tags: - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/cloud_workload/policy/download: + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + /api/v2/compliance_findings/rule_based_view: get: - description: >- - The download endpoint generates a Workload Protection policy file from - your currently active - - Workload Protection agent rules, and downloads them as a `.policy` file. - This file can then be deployed to - - your agents to update the policy running in your environment. - + deprecated: true + description: |- + **This endpoint is deprecated.** Use the [Security Monitoring - Search Security Findings](https://docs.datadoghq.com/api/latest/security-monitoring/search-security-findings/) endpoint instead. - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: DownloadCloudWorkloadPolicyFile + Get an aggregated view of compliance rules with their pass, fail, and muted finding counts. + Supports filtering by compliance framework, framework version, and additional query filters. + operationId: GetRuleBasedView + parameters: + - $ref: '#/components/parameters/RuleBasedViewTo' + - $ref: '#/components/parameters/RuleBasedViewFramework' + - $ref: '#/components/parameters/RuleBasedViewVersion' + - $ref: '#/components/parameters/RuleBasedViewQueryFindingsWithoutFrameworkVersion' + - $ref: '#/components/parameters/RuleBasedViewIncludeRulesWithoutFindings' + - $ref: '#/components/parameters/RuleBasedViewIsCustom' + - $ref: '#/components/parameters/RuleBasedViewQuery' responses: '200': content: - application/yaml: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + rules: + - compliance_frameworks: + - control: 164.308-a-4-i + framework: hipaa + is_default: true + message: '' + requirement: Information-Access-Management + version: '1' + enabled: true + id: qjx-udx-xo8 + name: IAM roles should not allow untrusted GitHub Actions to assume them + resourceAttributes: [] + resourceCategory: identity + resourceType: aws_iam_role + stats: + fail: 0 + muted: 0 + pass: 3 + status: critical + tags: + - security:compliance + - cloud_provider:aws + - framework:hipaa + type: cloud_configuration + id: JSONAPI_USELESS_ID + type: rule_based_view schema: - format: binary - type: string + $ref: '#/components/schemas/RuleBasedViewResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Download the Workload Protection policy (US1-FED) + '503': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Service Unavailable + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Get the rule-based view of compliance findings tags: - - CSM Threats + - Compliance x-permission: operator: OR permissions: - - security_monitoring_cws_agent_rules_read - /api/v2/security/sboms: + - security_monitoring_findings_read + x-sunset: '2027-06-26' + x-unstable: |- + **Note**: This endpoint is in Preview and subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/onboarding/agents: get: - description: >- - Get a list of assets SBOMs for an organization. - - - ### Pagination - - - Please review the [Pagination section] for the "List - Vulnerabilities" endpoint. - - - ### Filtering - - - Please review the [Filtering section] for the "List - Vulnerabilities" endpoint. - - - ### Metadata - - - Please review the [Metadata section] for the "List - Vulnerabilities" endpoint. - operationId: ListAssetsSBOMs + description: Get the list of all CSM Agents running on your hosts and containers. + operationId: ListAllCSMAgents parameters: - - description: >- - Its value must come from the `links` section of the response of the - first request. Do not manually edit it. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + - description: The page index for pagination (zero-based). in: query - name: page[token] + name: page required: false schema: - type: string - - description: >- - The page number to be retrieved. It should be equal to or greater - than 1. - example: 1 + example: 2 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of items to include in a single page. in: query - name: page[number] + name: size required: false schema: - format: int64 - minimum: 1 + example: 12 + format: int32 + maximum: 100 + minimum: 0 type: integer - - description: The type of the assets for the SBOM request. - example: Repository + - description: A search query string to filter results (for example, `hostname:COMP-T2H4J27423`). in: query - name: filter[asset_type] + name: query required: false schema: - $ref: '#/components/schemas/AssetType' - - description: The name of the asset for the SBOM request. - example: github.com/datadog/datadog-agent + example: hostname:COMP-T2H4J27423 + type: string + - description: The sort direction for results. Use `asc` for ascending or `desc` for descending. in: query - name: filter[asset_name] + name: order_direction required: false schema: - type: string - - description: The name of the component that is a dependency of an asset. - example: opentelemetry-api + $ref: '#/components/schemas/OrderDirection' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + agent_version: 7.50.0 + hostname: example-host + os: linux + id: abc-123 + type: datadog_agent + meta: + page_index: 0 + page_size: 10 + total_filtered: 1 + schema: + $ref: '#/components/schemas/CsmAgentsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all CSM Agents + tags: + - CSM Agents + /api/v2/csm/onboarding/coverage_analysis/cloud_accounts: + get: + description: |- + Get the CSM Coverage Analysis of your Cloud Accounts. + This is calculated based on the number of your Cloud Accounts that are + scanned for security issues. + operationId: GetCSMCloudAccountsCoverageAnalysis + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + org_id: 123 + total_coverage: + configured_resources_count: 8 + coverage: 0.8 + partially_configured_resources_count: 0 + total_resources_count: 10 + id: abc-123 + type: get_cloud_accounts_coverage_analysis_response_public_v0 + schema: + $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the CSM Cloud Accounts Coverage Analysis + tags: + - CSM Coverage Analysis + /api/v2/csm/onboarding/coverage_analysis/hosts_and_containers: + get: + description: |- + Get the CSM Coverage Analysis of your Hosts and Containers. + This is calculated based on the number of agents running on your Hosts + and Containers with CSM feature(s) enabled. + operationId: GetCSMHostsAndContainersCoverageAnalysis + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + org_id: 123 + total_coverage: + configured_resources_count: 8 + coverage: 0.8 + partially_configured_resources_count: 0 + total_resources_count: 10 + id: abc-123 + type: get_hosts_and_containers_coverage_analysis_response_public_v0 + schema: + $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the CSM Hosts and Containers Coverage Analysis + tags: + - CSM Coverage Analysis + /api/v2/csm/onboarding/coverage_analysis/serverless: + get: + description: |- + Get the CSM Coverage Analysis of your Serverless Resources. + This is calculated based on the number of agents running on your Serverless + Resources with CSM feature(s) enabled. + operationId: GetCSMServerlessCoverageAnalysis + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + org_id: 123 + total_coverage: + configured_resources_count: 8 + coverage: 0.8 + partially_configured_resources_count: 0 + total_resources_count: 10 + id: abc-123 + type: get_serverless_coverage_analysis_response_public_v0 + schema: + $ref: '#/components/schemas/CsmServerlessCoverageAnalysisResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get the CSM Serverless Coverage Analysis + tags: + - CSM Coverage Analysis + /api/v2/csm/onboarding/serverless/agents: + get: + description: Get the list of all CSM Serverless Agents running on your hosts and containers. + operationId: ListAllCSMServerlessAgents + parameters: + - description: The page index for pagination (zero-based). in: query - name: filter[package_name] + name: page required: false schema: - type: string - - description: The version of the component that is a dependency of an asset. - example: 1.33.1 + example: 2 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of items to include in a single page. in: query - name: filter[package_version] + name: size required: false schema: - type: string - - description: >- - The software license name of the component that is a dependency of - an asset. - example: Apache-2.0 + example: 12 + format: int32 + maximum: 100 + minimum: 0 + type: integer + - description: A search query string to filter results (for example, `hostname:COMP-T2H4J27423`). in: query - name: filter[license_name] + name: query required: false schema: + example: hostname:COMP-T2H4J27423 type: string - - description: >- - The software license type of the component that is a dependency of - an asset. - example: network_strong_copyleft + - description: The sort direction for results. Use `asc` for ascending or `desc` for descending. in: query - name: filter[license_type] + name: order_direction required: false schema: - $ref: '#/components/schemas/SBOMComponentLicenseType' + $ref: '#/components/schemas/OrderDirection' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + agent_version: 7.50.0 + hostname: example-host + os: linux + id: abc-123 + type: datadog_agent + meta: + page_index: 0 + page_size: 10 + total_filtered: 1 schema: - $ref: '#/components/schemas/ListAssetsSBOMsResponse' + $ref: '#/components/schemas/CsmAgentsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all CSM Serverless Agents + tags: + - CSM Agents + /api/v2/csm/ownership/settings: + get: + description: Get ownership settings for the org. When settings are unset, the API returns the default opt-out configuration with `auto_tag` set to `true` and `confidence_level` set to `high`. + operationId: GetOwnershipSettings + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_tag: true + confidence_level: high + version: 1 + id: settings + type: ownership_settings + schema: + $ref: '#/components/schemas/OwnershipSettingsResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get ownership settings for the org + tags: + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Update ownership settings for the org. + operationId: PostOwnershipSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_tag: true + confidence_level: high + type: ownership_settings + schema: + $ref: '#/components/schemas/OwnershipSettingsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_tag: true + confidence_level: high + version: 1 + id: settings + type: ownership_settings + schema: + $ref: '#/components/schemas/OwnershipSettingsResponse' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. - '403': + description: Bad Request + '401': content: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update ownership settings for the org + tags: + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/settings/untagged: + get: + description: Count findings with no team tag, grouped by ownership confidence level. + operationId: GetOwnershipUntaggedFindings + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + high_confidence: 30 + low_confidence: 42 + medium_confidence: 70 + total: 142 + id: untagged + type: ownership_untagged_findings + schema: + $ref: '#/components/schemas/OwnershipUntaggedFindingsResponse' + description: OK + '401': content: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: asset not found' + description: Unauthorized '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List assets SBOMs + summary: Count untagged findings by ownership confidence tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/sboms/{asset_type}: + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}: get: - description: | - Get a single SBOM related to an asset by its type and name. - operationId: GetSBOM + description: Get all current ownership inferences for a resource, one per owner type (`user`, `team`, `service`, `unknown`). + operationId: ListOwnershipInferences parameters: - - description: The type of the asset for the SBOM request. - example: Repository + - description: The identifier of the resource to retrieve ownership inferences for. in: path - name: asset_type - required: true - schema: - $ref: '#/components/schemas/AssetType' - - description: The name of the asset for the SBOM request. - example: github.com/datadog/datadog-agent - in: query - name: filter[asset_name] + name: resource_id required: true schema: - type: string - - description: >- - The container image `repo_digest` for the SBOM request. When the - requested asset type is 'Image', this filter is mandatory. - example: >- - sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - in: query - name: filter[repo_digest] - required: false - schema: + example: test-resource type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + items: + - checksum: abc123 + confidence: '0.9500' + created_at: '2026-01-15T10:00:00Z' + evidence_versions: + - pipeline_id: p1 + explanation: High confidence match + id: test-resource:team + owner_type: team + primary_contact_ref: ref:handle/team-a + sources: [] + status: suggested + updated_at: '2026-01-15T10:00:00Z' + id: test-resource + type: ownership_inferences schema: - $ref: '#/components/schemas/GetSBOMResponse' + $ref: '#/components/schemas/OwnershipInferenceListResponse' description: OK '400': content: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. - '403': + description: Bad Request + '401': content: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' + description: Unauthorized '404': content: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: asset not found' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get SBOM + summary: List ownership inferences for a resource tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/signals/notification_rules: + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/history: get: - description: Returns the list of notification rules for security signals. - operationId: GetSignalNotificationRules + description: List inference history entries for a resource across all owner types, ordered from most recent to oldest. Uses cursor-based pagination. + operationId: ListOwnershipHistory + parameters: + - description: The identifier of the resource to retrieve inference history for. + in: path + name: resource_id + required: true + schema: + example: res-1 + type: string + - description: An opaque, base64-encoded cursor token returned by a previous call in `pagination.next_cursor`. Omit to fetch the first page. + in: query + name: cursor + required: false + schema: + example: eyJpZCI6OTh9 + type: string + - description: The maximum number of history entries to return per page. + in: query + name: limit + required: false + schema: + default: 25 + example: 25 + format: int32 + maximum: 100 + minimum: 1 + type: integer responses: '200': - $ref: '#/components/responses/NotificationRulesList' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get the list of signal-based notification rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - post: - description: >- - Create a new notification rule for security signals and return the - created rule. - operationId: CreateSignalNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateNotificationRuleParameters' - description: > - The body of the create notification rule request is composed of the - rule type and the rule attributes: - - the rule name, the selectors, the notification targets, and the rule - enabled status. - required: true - responses: - '201': content: application/json: + examples: + default: + value: + data: + attributes: + items: + - checksum: '' + confidence: '0.9000' + created_at: '2026-01-15T10:00:00Z' + evidence_versions: null + explanation: '' + failed_at: null + failure_reason: null + id: 100 + owner_type: team + primary_contact_ref: ref:handle/team-a + resource_id: res-1 + retry_schedule: null + sources: [] + status: suggested + pagination: + has_more: false + next_cursor: null + id: res-1 + type: ownership_history schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Successfully created the notification rule. + $ref: '#/components/schemas/OwnershipHistoryResponse' + description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Create a new signal-based notification rule + summary: List ownership inference history for a resource tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/signals/notification_rules/{id}: - delete: - description: Delete a notification rule for security signals. - operationId: DeleteSignalNotificationRule + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}: + get: + description: |- + Get the current ownership inference for a resource for a specific owner type. + + This endpoint supports ETag-based caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the inference has not changed. + operationId: GetOwnershipInference parameters: - - description: ID of the notification rule. + - description: The identifier of the resource to retrieve the ownership inference for. in: path - name: id + name: resource_id required: true schema: + example: test-resource + type: string + - description: The owner type of the inference to retrieve. + in: path + name: owner_type + required: true + schema: + $ref: '#/components/schemas/OwnershipOwnerType' + - description: A previously returned `ETag` value. When supplied and the resource has not changed, the endpoint returns `304 Not Modified`. + in: header + name: If-None-Match + required: false + schema: + example: '"abc123"' type: string responses: - '204': - description: Rule successfully deleted. - '403': - $ref: '#/components/responses/ForbiddenResponse' + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + checksum: abc123 + confidence: '0.9500' + created_at: '2026-01-15T10:00:00Z' + evidence_versions: + - pipeline_id: p1 + explanation: High confidence match + owner_type: team + primary_contact_ref: ref:handle/team-a + sources: [] + status: suggested + updated_at: '2026-01-15T10:00:00Z' + id: test-resource:team + type: ownership_inference + schema: + $ref: '#/components/schemas/OwnershipInferenceResponse' + description: OK + headers: + Cache-Control: + description: The cache control directives applied to the response. + schema: + example: private, max-age=60 + type: string + ETag: + description: A strong validator that identifies the current state of the inference. + schema: + example: '"abc123"' + type: string + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Delete a signal-based notification rule + summary: Get an ownership inference by owner type tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}/evidence: get: - description: Get the details of a notification rule for security signals. - operationId: GetSignalNotificationRule + description: |- + Get the evidence versions backing the current ownership inference for a resource and owner type. + + This endpoint supports weak ETag caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the evidence has not changed. + operationId: GetOwnershipEvidence parameters: - - description: ID of the notification rule. + - description: The identifier of the resource to retrieve evidence for. in: path - name: id + name: resource_id + required: true + schema: + example: test-resource + type: string + - description: The owner type of the inference to retrieve evidence for. + in: path + name: owner_type required: true schema: + $ref: '#/components/schemas/OwnershipOwnerType' + - description: A previously returned weak `ETag` value. When supplied and the evidence has not changed, the endpoint returns `304 Not Modified`. + in: header + name: If-None-Match + required: false + schema: + example: W/"f2e126916327bda8" type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + evidence_versions: + - pipeline_id: p1 + version: v3 + id: test-resource + type: ownership_evidence schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule details. + $ref: '#/components/schemas/OwnershipEvidenceResponse' + description: OK + headers: + ETag: + description: A weak validator that identifies the current state of the evidence. + schema: + example: W/"f2e126916327bda8" + type: string '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get details of a signal-based notification rule + summary: Get the evidence for an ownership inference tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - patch: - description: >- - Partially update the notification rule. All fields are optional; if a - field is not provided, it is not updated. - operationId: PatchSignalNotificationRule + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}/feedback: + post: + description: |- + Submit feedback on the current ownership inference for a resource and owner type. Valid actions are `confirm`, `reject`, `correct`, and `persist`. + + The request must include the current inference `checksum` in `inference_checksum`. If the checksum does not match the current inference state, the endpoint returns `409 Conflict`. + + When `action` is `correct`, `corrected_owner_handle` and `corrected_owner_type` are required. + operationId: CreateOwnershipFeedback parameters: - - description: ID of the notification rule. + - description: The identifier of the resource that the feedback applies to. in: path - name: id + name: resource_id required: true schema: + example: res-1 type: string + - description: The type of owner that the feedback applies to. + in: path + name: owner_type + required: true + schema: + $ref: '#/components/schemas/OwnershipOwnerType' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: confirm + actor_handle: user@example.com + actor_type: user + inference_checksum: abc123 + type: ownership_feedback schema: - $ref: '#/components/schemas/PatchNotificationRuleParameters' + $ref: '#/components/schemas/OwnershipFeedbackRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + action: confirm + checksum: abc123 + new_status: suggested + owner_type: team + previous_status: suggested + primary_contact_ref: ref:handle/team-a + updated_at: '2026-01-15T10:00:00Z' + id: res-1 + type: ownership_feedback_result schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule successfully patched. + $ref: '#/components/schemas/OwnershipFeedbackResponse' + description: Created '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - $ref: '#/components/responses/UnprocessableEntityResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/OwnershipInferenceResponse' + description: Conflict '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Patch a signal-based notification rule + summary: Submit feedback on an ownership inference tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/vulnerabilities: + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/ownership/{resource_id}/{owner_type}/history: get: - description: > - Get a list of vulnerabilities. - - - ### Pagination - - - Pagination is enabled by default in both `vulnerabilities` and `assets`. - The size of the page varies depending on the endpoint and cannot be - modified. To automate the request of the next page, you can use the - links section in the response. - - - This endpoint will return paginated responses. The pages are stored in - the links section of the response: - - - ```JSON - - { - "data": [...], - "meta": {...}, - "links": { - "self": "https://.../api/v2/security/vulnerabilities", - "first": "https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc", - "last": "https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc", - "next": "https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc" - } - } - - ``` - - - - - `links.previous` is empty if the first page is requested. - - - `links.next` is empty if the last page is requested. - - - #### Token - - - Vulnerabilities can be created, updated or deleted at any point in time. - - - Upon the first request, a token is created to ensure consistency across - subsequent paginated requests. - - - A token is valid only for 24 hours. - - - #### First request - - - We consider a request to be the first request when there is no - `page[token]` parameter. - - - The response of this first request contains the newly created token in - the `links` section. - - - This token can then be used in the subsequent paginated requests. - - - #### Subsequent requests - - - Any request containing valid `page[token]` and `page[number]` parameters - will be considered a subsequent request. - - - If the `token` is invalid, a `404` response will be returned. - - - If the page `number` is invalid, a `400` response will be returned. - - - ### Filtering - - - The request can include some filter parameters to filter the data to be - retrieved. The format of the filter parameters follows the [JSON:API - format](https://jsonapi.org/format/#fetching-filtering): - `filter[$prop_name]`, where `prop_name` is the property name in the - entity being filtered by. - - - All filters can include multiple values, where data will be filtered - with an OR clause: `filter[title]=Title1,Title2` will filter all - vulnerabilities where title is equal to `Title1` OR `Title2`. - - - String filters are case sensitive. - - - Boolean filters accept `true` or `false` as values. - - - Number filters must include an operator as a second filter input: - `filter[$prop_name][$operator]`. For example, for the vulnerabilities - endpoint: `filter[cvss.base.score][lte]=8`. - - - Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and - `gte` (>=). - - - ### Metadata - - - Following [JSON:API format](https://jsonapi.org/format/#document-meta), - object including non-standard meta-information. - - - This endpoint includes the meta member in the response. For more details - on each of the properties included in this section, check the endpoints - response tables. - - - ```JSON - - { - "data": [...], - "meta": { - "total": 1500, - "count": 18732, - "token": "some_token" - }, - "links": {...} - } - - ``` - operationId: ListVulnerabilities + description: List inference history entries for a resource filtered by owner type, ordered from most recent to oldest. Uses cursor-based pagination. + operationId: ListOwnershipHistoryByOwnerType parameters: - - description: >- - Its value must come from the `links` section of the response of the - first request. Do not manually edit it. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + - description: The identifier of the resource to retrieve inference history for. + in: path + name: resource_id + required: true + schema: + example: res-1 + type: string + - description: The owner type to filter history by. + in: path + name: owner_type + required: true + schema: + $ref: '#/components/schemas/OwnershipOwnerType' + - description: An opaque, base64-encoded cursor token returned by a previous call in `pagination.next_cursor`. Omit to fetch the first page. in: query - name: page[token] + name: cursor required: false schema: + example: eyJpZCI6OTh9 type: string - - description: >- - The page number to be retrieved. It should be equal or greater than - `1` - example: 1 + - description: The maximum number of history entries to return per page. in: query - name: page[number] + name: limit required: false schema: - format: int64 + default: 25 + example: 25 + format: int32 + maximum: 100 minimum: 1 type: integer - - description: Filter by vulnerability type. - example: WeakCipher - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityType' - - description: >- - Filter by vulnerability base (i.e. from the original advisory) - severity score. - example: 5.5 + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - checksum: '' + confidence: '0.9000' + created_at: '2026-01-15T10:00:00Z' + evidence_versions: null + explanation: '' + failed_at: null + failure_reason: null + id: 100 + owner_type: team + primary_contact_ref: ref:handle/team-a + resource_id: res-1 + retry_schedule: null + sources: [] + status: suggested + pagination: + has_more: false + next_cursor: null + id: res-1 + type: ownership_history + schema: + $ref: '#/components/schemas/OwnershipHistoryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List ownership history by owner type + tags: + - CSM Ownership + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/agentless_hosts: + get: + description: Get the list of agentless hosts for CSM, with optional pagination and filtering. + operationId: ListCSMAgentlessHosts + parameters: + - description: The page index for pagination (zero-based). in: query - name: filter[cvss.base.score][`$op`] + name: page required: false schema: - format: double - maximum: 10 + default: 0 + example: 0 + format: int32 + maximum: 1000000 minimum: 0 - type: number - - description: Filter by vulnerability base severity. - example: Medium + type: integer + - description: The number of agentless hosts to return per page. in: query - name: filter[cvss.base.severity] + name: size required: false schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by vulnerability base CVSS vector. - example: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H + default: 10 + example: 10 + format: int32 + maximum: 100 + minimum: 1 + type: integer + - description: A search query string to filter agentless hosts. in: query - name: filter[cvss.base.vector] + name: query required: false schema: + example: cloud_provider:aws type: string - - description: Filter by vulnerability Datadog severity score. - example: 4.3 + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + account_id: '123456789012' + cloud_provider: aws + has_posture_management: true + has_vulnerability_scanning: true + resource_type: aws_ec2_instance + id: i-0123456789abcdef0 + type: agentless_host + meta: + page_index: 0 + page_size: 10 + total_filtered: 1 + schema: + $ref: '#/components/schemas/CsmAgentlessHostsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List agentless hosts + tags: + - CSM Settings + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/agentless_hosts/facet_info: + get: + description: Get the value distribution for a specific agentless host facet, with optional search and filtering. + operationId: GetCSMAgentlessHostFacetInfo + parameters: + - description: The facet identifier to retrieve value distribution for. Valid values are `resource_name`, `account_id`, `resource_type`, `cloud_provider`, `has_vulnerability_scanning`, and `has_posture_management`. in: query - name: filter[cvss.datadog.score][`$op`] - required: false + name: facet + required: true schema: - format: double - maximum: 10 - minimum: 0 - type: number - - description: Filter by vulnerability Datadog severity. - example: Medium + example: cloud_provider + type: string + - description: A search string to filter the facet values. in: query - name: filter[cvss.datadog.severity] + name: search required: false schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by vulnerability Datadog CVSS vector. - example: >- - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:X/RC:X/CR:X/IR:X/AR:X/MAV:L/MAC:H/MPR:L/MUI:N/MS:U/MC:N/MI:N/MA:H + example: aws + type: string + - description: A filter query to scope the facet value counts. in: query - name: filter[cvss.datadog.vector] + name: query required: false schema: + example: cloud_provider:aws type: string - - description: Filter by the status of the vulnerability. - example: Open + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - count: 100 + value: aws + - count: 50 + value: gcp + id: cloud_provider + meta: + total_count: 2 + type: facet_info + schema: + $ref: '#/components/schemas/CsmHostFacetInfoResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get agentless host facet info + tags: + - CSM Settings + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/agentless_hosts/facets: + get: + description: Get the list of available facets for filtering agentless hosts. + operationId: ListCSMAgentlessHostFacets + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + bounded: true + bundled: true + bundledAndUsed: true + defaultValues: [] + description: The cloud provider of the resource. + editable: false + facetType: list + groups: + - agentless + name: Cloud Provider + path: cloud_provider + source: core + type: string + values: + - aws + - gcp + - azure + - oci + id: cloud_provider + type: agentless_host_facet + schema: + $ref: '#/components/schemas/CsmAgentlessHostFacetsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List agentless host facets + tags: + - CSM Settings + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/hosts: + get: + description: Get the list of unified hosts for CSM, combining agent and agentless host data, with optional pagination and filtering. + operationId: ListCSMUnifiedHosts + parameters: + - description: The page index for pagination (zero-based). in: query - name: filter[status] + name: page required: false schema: - $ref: '#/components/schemas/VulnerabilityStatus' - - description: Filter by the tool of the vulnerability. - example: SCA + default: 0 + example: 0 + format: int32 + maximum: 1000000 + minimum: 0 + type: integer + - description: The number of hosts to return per page. in: query - name: filter[tool] + name: size required: false schema: - $ref: '#/components/schemas/VulnerabilityTool' - - description: Filter by library name. - example: linux-aws-5.15 + default: 10 + example: 10 + format: int32 + maximum: 100 + minimum: 1 + type: integer + - description: A search query string to filter unified hosts. in: query - name: filter[library.name] + name: query required: false schema: + example: source:agent type: string - - description: Filter by library version. - example: 5.15.0 + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + agent_cws_enabled: false + agent_posture_management: true + agent_version: 7.50.0 + datadog_agent_key: key123 + os: linux + source: agent + id: agent-host + type: unified_host + - attributes: + account_id: '123456789012' + agentless_posture_management: true + agentless_vulnerability_scanning: true + cloud_provider: aws + resource_type: aws_ec2_instance + source: agentless + id: i-0123456789abcdef0 + type: unified_host + meta: + page_index: 0 + page_size: 10 + total_filtered: 2 + total_pages: 1 + schema: + $ref: '#/components/schemas/CsmUnifiedHostsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List unified hosts + tags: + - CSM Settings + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/hosts/facet_info: + get: + description: Get the value distribution for a specific unified host facet, with optional search and filtering. + operationId: GetCSMUnifiedHostFacetInfo + parameters: + - description: The facet identifier to retrieve value distribution for. Valid values include `resource_name`, `account_id`, `resource_type`, `cloud_provider`, `agentless_vulnerability_scanning`, `agentless_posture_management`, `hostname`, `agent_version`, `os`, `cluster_name`, `agent_posture_management`, `agent_cws_enabled`, `agent_csm_vm_hosts_enabled`, and `agent_csm_vm_containers_enabled`. in: query - name: filter[library.version] - required: false + name: facet + required: true schema: + example: cloud_provider type: string - - description: Filter by advisory ID. - example: TRIVY-CVE-2023-0615 + - description: A search string to filter the facet values. in: query - name: filter[advisory_id] + name: search required: false schema: + example: aws type: string - - description: Filter by exploitation probability. - example: false - in: query - name: filter[risks.exploitation_probability] - required: false - schema: - type: boolean - - description: Filter by POC exploit availability. - example: false - in: query - name: filter[risks.poc_exploit_available] - required: false - schema: - type: boolean - - description: Filter by public exploit availability. - example: false - in: query - name: filter[risks.exploit_available] - required: false - schema: - type: boolean - - description: >- - Filter by vulnerability [EPSS](https://www.first.org/epss/) severity - score. - example: 0.00042 - in: query - name: filter[risks.epss.score][`$op`] - required: false - schema: - format: double - maximum: 1 - minimum: 0 - type: number - - description: >- - Filter by vulnerability [EPSS](https://www.first.org/epss/) - severity. - example: Low - in: query - name: filter[risks.epss.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by language. - example: ubuntu + - description: A filter query to scope the facet value counts. in: query - name: filter[language] + name: query required: false schema: + example: cloud_provider:aws type: string - - description: Filter by ecosystem. - example: Deb - in: query - name: filter[ecosystem] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityEcosystem' - - description: Filter by vulnerability location. - example: com.example.Class:100 - in: query - name: filter[code_location.location] - required: false - schema: - type: string - - description: Filter by vulnerability file path. - example: src/Class.java:100 - in: query - name: filter[code_location.file_path] - required: false - schema: - type: string - - description: Filter by method. - example: FooBar + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + items: + - count: 100 + value: aws + - count: 50 + value: gcp + id: cloud_provider + meta: + total_count: 2 + type: facet_info + schema: + $ref: '#/components/schemas/CsmHostFacetInfoResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get unified host facet info + tags: + - CSM Settings + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/csm/settings/hosts/facets: + get: + description: Get the list of available facets for filtering unified hosts. + operationId: ListCSMUnifiedHostFacets + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + bounded: true + bundled: true + bundledAndUsed: true + defaultValues: [] + description: The cloud provider of the resource. + editable: false + facetType: list + groups: + - hosts + name: Cloud Provider + path: cloud_provider + source: core + type: string + values: + - aws + - gcp + - azure + - oci + id: cloud_provider + type: unified_host_facet + schema: + $ref: '#/components/schemas/CsmUnifiedHostFacetsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List unified host facets + tags: + - CSM Settings + x-unstable: |- + **Note**: This endpoint is in Preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/posture_management/findings: + get: + description: |- + Get a list of findings. These include both misconfigurations and identity risks. + + **Note**: To filter and return only identity risks, add the following query parameter: `?filter[tags]=dd_rule_type:ciem` + + ### Filtering + + Filters can be applied by appending query parameters to the URL. + + - Using a single filter: `?filter[attribute_key]=attribute_value` + - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...` + - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2` + + Here, `attribute_key` can be any of the filter keys described further below. + + Query parameters of type `integer` support comparison operators (`>`, `>=`, `<`, `<=`). This is particularly useful when filtering by `evaluation_changed_at` or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`. + + You can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` to filter for any non-AWS resources. + + The operator must come after the equal sign. For example, to filter with the `>=` operator, add the operator after the equal sign: `filter[evaluation_changed_at]=>=1678809373257`. + + Query parameters must be only among the documented ones and with values of correct types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) are not allowed. + + ### Additional extension fields + + Additional extension fields are available for some findings. + + The data is available when you include the query parameter `?detailed_findings=true` in the request. + + The following fields are available for findings: + - `external_id`: The resource external ID related to the finding. + - `description`: The description and remediation steps for the finding. + - `datadog_link`: The Datadog relative link for the finding. + - `ip_addresses`: The list of private IP addresses for the resource related to the finding. + + ### Response + + The response includes an array of finding objects, pagination metadata, and a count of items that match the query. + + Each finding object contains the following: + + - The finding ID that can be used in a `GetFinding` request to retrieve the full finding details. + - Core attributes, including status, evaluation, high-level resource details, muted state, and rule details. + - `evaluation_changed_at` and `resource_discovery_date` time stamps. + - An array of associated tags. + operationId: ListFindings + parameters: + - description: Limit the number of findings returned. Must be <= 1000. + example: 50 in: query - name: filter[code_location.method] + name: page[limit] required: false schema: - type: string - - description: Filter by fix availability. - example: false + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Return findings for a given snapshot of time (Unix ms). + example: 1678721573794 in: query - name: filter[fix_available] + name: snapshot_timestamp required: false schema: - type: boolean - - description: >- - Filter by vulnerability `repo_digest` (when the vulnerability is - related to `Image` asset). - example: >- - sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 + format: int64 + minimum: 1 + type: integer + - description: Return the next page of findings pointed to by the cursor. + example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= in: query - name: filter[repo_digests] + name: page[cursor] required: false schema: type: string - - description: Filter by origin. - example: agentless-scanner + - description: Return findings that have these associated tags (repeatable). + example: filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999 in: query - name: filter[origin] + name: filter[tags] required: false schema: type: string - - description: Filter by asset name. - example: datadog-agent + - description: Return findings that have changed from pass to fail or vice versa on a specified date (Unix ms) or date range (using comparison operators). + example: '>=1678721573794' in: query - name: filter[asset.name] + name: filter[evaluation_changed_at] required: false schema: type: string - - description: Filter by asset type. - example: Host + - description: Set to `true` to return findings that are muted. Set to `false` to return unmuted findings. in: query - name: filter[asset.type] + name: filter[muted] required: false schema: - $ref: '#/components/schemas/AssetType' - - description: >- - Filter by the first version of the asset this vulnerability has been - detected on. - example: v1.15.1 + type: boolean + - description: Return findings for the specified rule ID. in: query - name: filter[asset.version.first] + name: filter[rule_id] required: false schema: type: string - - description: >- - Filter by the last version of the asset this vulnerability has been - detected on. - example: v1.15.1 + - description: Return findings for the specified rule. in: query - name: filter[asset.version.last] + name: filter[rule_name] required: false schema: type: string - - description: Filter by the repository url associated to the asset. - example: github.com/DataDog/datadog-agent.git + - description: Return only findings for the specified resource type. in: query - name: filter[asset.repository_url] + name: filter[resource_type] required: false schema: type: string - - description: Filter whether the asset is in production or not. - example: false - in: query - name: filter[asset.risks.in_production] - required: false - schema: - type: boolean - - description: Filter whether the asset is under attack or not. - example: false - in: query - name: filter[asset.risks.under_attack] - required: false - schema: - type: boolean - - description: Filter whether the asset is publicly accessible or not. - example: false - in: query - name: filter[asset.risks.is_publicly_accessible] - required: false - schema: - type: boolean - - description: Filter whether the asset is publicly accessible or not. - example: false - in: query - name: filter[asset.risks.has_privileged_access] - required: false - schema: - type: boolean - - description: Filter whether the asset has access to sensitive data or not. - example: false + - description: Return only findings for the specified resource id. in: query - name: filter[asset.risks.has_access_to_sensitive_data] + name: filter[@resource_id] required: false schema: - type: boolean - - description: Filter by asset environments. - example: staging + type: string + - description: Return findings that were found on a specified date (Unix ms) or date range (using comparison operators). + example: '>=1678721573794' in: query - name: filter[asset.environments] + name: filter[discovery_timestamp] required: false schema: type: string - - description: Filter by asset teams. - example: compute + - description: Return only `pass` or `fail` findings. + example: pass in: query - name: filter[asset.teams] + name: filter[evaluation] required: false schema: - type: string - - description: Filter by asset architecture. - example: arm64 + $ref: '#/components/schemas/FindingEvaluation' + - description: Return only findings with the specified status. + example: critical in: query - name: filter[asset.arch] + name: filter[status] required: false schema: - type: string - - description: Filter by asset operating system name. - example: ubuntu + $ref: '#/components/schemas/FindingStatus' + - description: Return findings that match the selected vulnerability types (repeatable). + example: + - misconfiguration + explode: true in: query - name: filter[asset.operating_system.name] + name: filter[vulnerability_type] required: false schema: - type: string - - description: Filter by asset operating system version. - example: '24.04' + items: + $ref: '#/components/schemas/FindingVulnerabilityType' + type: array + - description: Return additional fields for some findings. + example: + - true in: query - name: filter[asset.operating_system.version] + name: detailed_findings required: false schema: - type: string + type: boolean responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + evaluation: fail + resource: arn:aws:s3:::my-bucket + resource_type: aws_s3_bucket + status: high + id: abc-123-xyz + type: finding + meta: + page: + cursor: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= + total_filtered_count: 1 + snapshot_timestamp: 1678721573794 schema: - $ref: '#/components/schemas/ListVulnerabilitiesResponse' + $ref: '#/components/schemas/ListFindingsResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. + $ref: '#/components/responses/FindingsBadRequestResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' + $ref: '#/components/responses/FindingsForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: There is no request associated with the provided token.' + $ref: '#/components/responses/FindingsNotFoundResponse' '429': - $ref: '#/components/responses/TooManyRequestsResponse' + $ref: '#/components/responses/FindingsTooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - summary: List vulnerabilities + - AuthZ: + - security_monitoring_findings_read + summary: List findings tags: - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/vulnerabilities/notification_rules: + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.cursor + limitParam: page[limit] + resultsPath: data + x-unstable: |- + **Note**: This endpoint uses the legacy security findings data model and is planned for deprecation. + Use the [search security findings endpoint](https://docs.datadoghq.com/api/latest/security-monitoring/#search-security-findings), + which is based on the [new security findings schema](https://docs.datadoghq.com/security/guide/findings-schema/), to search security findings. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/posture_management/findings/{finding_id}: get: - description: Returns the list of notification rules for security vulnerabilities. - operationId: GetVulnerabilityNotificationRules - responses: - '200': - $ref: '#/components/responses/NotificationRulesList' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get the list of vulnerability notification rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - post: - description: >- - Create a new notification rule for security vulnerabilities and return - the created rule. - operationId: CreateVulnerabilityNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateNotificationRuleParameters' - description: > - The body of the create notification rule request is composed of the - rule type and the rule attributes: - - the rule name, the selectors, the notification targets, and the rule - enabled status. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Successfully created the notification rule. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Create a new vulnerability-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/vulnerabilities/notification_rules/{id}: - delete: - description: Delete a notification rule for security vulnerabilities. - operationId: DeleteVulnerabilityNotificationRule + description: Returns a single finding with message and resource configuration. + operationId: GetFinding parameters: - - description: ID of the notification rule. + - description: The ID of the finding. in: path - name: id + name: finding_id required: true schema: type: string + - description: Return the finding for a given snapshot of time (Unix ms). + example: 1678721573794 + in: query + name: snapshot_timestamp + required: false + schema: + format: int64 + minimum: 1 + type: integer responses: - '204': - description: Rule successfully deleted. + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + evaluation: fail + message: |- + ## Remediation + + 1. Go to Storage Account. + resource: my_resource_name + resource_type: azure_storage_account + status: critical + id: abc-123 + type: detailed_finding + schema: + $ref: '#/components/schemas/GetFindingResponse' + description: OK + '400': + $ref: '#/components/responses/FindingsBadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/FindingsForbiddenResponse' '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/FindingsNotFoundResponse' '429': - $ref: '#/components/responses/TooManyRequestsResponse' + $ref: '#/components/responses/FindingsTooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - summary: Delete a vulnerability-based notification rule + - AuthZ: + - security_monitoring_findings_read + summary: Get a finding tags: - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write + x-unstable: |- + **Note**: This endpoint uses the legacy security findings data model and is planned for deprecation. + Use the [search security findings endpoint](https://docs.datadoghq.com/api/latest/security-monitoring/#search-security-findings), + which is based on the [new security findings schema](https://docs.datadoghq.com/security/guide/findings-schema/), to search security findings. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security-entities/risk-scores: get: - description: Get the details of a notification rule for security vulnerabilities. - operationId: GetVulnerabilityNotificationRule + description: Get a list of entity risk scores for your organization. Entity risk scores provide security risk assessment for entities like cloud resources, identities, or services based on detected signals, misconfigurations, and identity risks. + operationId: ListEntityRiskScores parameters: - - description: ID of the notification rule. - in: path - name: id - required: true + - description: Start time for the query in Unix timestamp (milliseconds). Defaults to 2 weeks ago. + in: query + name: from + required: false schema: + example: 1704067200000 + format: int64 + type: integer + - description: End time for the query in Unix timestamp (milliseconds). Defaults to now. + in: query + name: to + required: false + schema: + example: 1705276800000 + format: int64 + type: integer + - description: Size of the page to return. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + - description: Page number to return (1-indexed). + in: query + name: page[number] + required: false + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: Query ID for pagination consistency. + in: query + name: page[queryId] + required: false + schema: + example: abc123def456 + type: string + - description: |- + Sort order for results. Format: `field:direction` where direction is `asc` or `desc`. + Supported fields: `riskScore`, `lastDetected`, `firstDetected`, `entityName`, `signalsDetected`. + in: query + name: filter[sort] + required: false + schema: + example: riskScore:desc + type: string + - description: |- + Supports filtering by entity attributes, risk scores, severity, and more. + Example: `severity:critical AND entityType:aws_iam_user` + in: query + name: filter[query] + required: false + schema: + example: severity:critical type: string + - description: Filter by entity type(s). Can specify multiple values. + explode: true + in: query + name: entityType + required: false + schema: + example: + - aws_iam_user + - aws_ec2_instance + items: + example: aws_iam_user + type: string + type: array + style: form responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + accountIds: + - '123456789012' + configRisks: + hasIdentityRisk: false + hasMisconfiguration: true + hasPrivilegedRole: false + isPrivileged: false + isProduction: true + isPubliclyAccessible: true + entityMetadata: + environments: + - production + mitreTactics: + - ta0006-credential-access + mitreTechniques: + - t1078-valid-accounts + services: + - api-gateway + sources: + - cloudtrail + entityName: test-user + entityProviders: + - AWS + entityRoles: [] + entitySubTypes: + - IAM User + entityTypes: + - IAMUser + firstDetected: 1704067200000 + lastActivityTitle: Suspicious API call detected + lastDetected: 1705276800000 + riskScore: 85 + riskScoreEvolution: 12 + severity: critical + signalsDetected: 15 + id: arn:aws:iam::123456789012:user/test-user + type: SecurityEntityRiskScore + meta: + pageNumber: 1 + pageSize: 10 + queryId: abc123def456 + totalRowCount: 1 schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule details. + $ref: '#/components/schemas/SecurityEntityRiskScoresResponse' + description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get details of a vulnerability notification rule + summary: List Entity Risk Scores tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - patch: - description: >- - Partially update the notification rule. All fields are optional; if a - field is not provided, it is not updated. - operationId: PatchVulnerabilityNotificationRule + - Entity Risk Scores + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security-entities/risk-scores/{entity_id}: + get: + description: Get the risk score for a specific entity by its ID. Returns security risk assessment including risk score, severity, detected signals, misconfigurations, and identity risks. + operationId: GetEntityRiskScore parameters: - - description: ID of the notification rule. + - description: The URL-encoded unique identifier for the entity. in: path - name: id + name: entity_id required: true schema: + example: arn:aws:iam::123456789012:user/john.doe type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchNotificationRuleParameters' - required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + accountIds: + - '123456789012' + configRisks: + hasIdentityRisk: false + hasMisconfiguration: true + hasPrivilegedRole: false + isPrivileged: false + isProduction: true + isPubliclyAccessible: true + entityMetadata: + environments: + - production + mitreTactics: + - ta0006-credential-access + mitreTechniques: + - t1078-valid-accounts + services: + - api-gateway + sources: + - cloudtrail + entityName: test-user + entityProviders: + - AWS + entityRoles: [] + entitySubTypes: + - IAM User + entityTypes: + - IAMUser + firstDetected: 1704067200000 + lastActivityTitle: Suspicious API call detected + lastDetected: 1705276800000 + riskScore: 85 + riskScoreEvolution: 12 + severity: critical + signalsDetected: 15 + id: arn:aws:iam::123456789012:user/test-user + type: SecurityEntityRiskScore schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule successfully patched. + $ref: '#/components/schemas/SecurityEntityRiskScoreResponse' + description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - $ref: '#/components/responses/UnprocessableEntityResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Patch a vulnerability-based notification rule + summary: Get Entity Risk Score tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security_monitoring/cloud_workload_security/agent_rules: + - Entity Risk Scores + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/asm/services/{service_filter}: get: - description: >- - Get the list of agent rules. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: ListCloudWorkloadSecurityAgentRules + description: |- + Retrieve Application Security details for services matching the given name. + Returns Application Security activation, compatibility, and product enablement + information for each matching `(service, environment)` pair, along with a count + of services that have Application Security Management (Threats) enabled. + operationId: GetAsmServiceByName + parameters: + - $ref: '#/components/parameters/ApplicationSecurityServiceNameParam' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + agent_versions: + - 7.50.0 + app_type: web + asm_threat_compatible: true + backend_waf_event_count: 10 + business_logic: [] + color: '' + env: prod + event_count: 42 + event_trend: [] + has_appsec_enabled: true + hits: 0 + iast_product_activation: false + iast_product_compatibility: compatible + iast_product_compatibility_reasons: [] + languages: + - go + last_ingested_spans: 1610000000 + rc_capabilities: + - ASM_DD_RULES + recommended_business_logic: [] + risk_product_activation: false + risk_product_compatibility: compatible + risk_product_compatibility_reasons: [] + rules_version: + - 1.13.0 + service: web-store + signal_count: 0 + signal_trend: [] + source: + - services-activity + teams: + - security-team + tracer_versions: + - 1.60.0 + vm-activation: enabled + vuln_critical_count: 0 + vuln_high_count: 0 + without_filter_services: 0 + id: web-store_prod + type: service_env + meta: + num_services_with_appsec: 1 schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentRulesListResponse + $ref: '#/components/schemas/ApplicationSecurityServicesResponse' description: OK '403': $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection agent rules (US1-FED) + summary: Get Application Security details for a service tags: - - CSM Threats + - Application Security x-permission: operator: OR permissions: - - security_monitoring_cws_agent_rules_read - post: - description: >- - Create a new agent rule with the given parameters. - + - apm_service_catalog_read + - appsec_protect_read + - apm_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/cloud_workload/policy/download: + get: + description: |- + The download endpoint generates a Workload Protection policy file from your currently active + Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to + your agents to update the policy running in your environment. - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: CreateCloudWorkloadSecurityAgentRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' - description: The definition of the new agent rule - required: true + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: DownloadCloudWorkloadPolicyFile responses: '200': content: - application/json: + application/yaml: + examples: + default: + value: '' schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' + format: binary + type: string description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection agent rule (US1-FED) + summary: Download the Workload Protection policy (US1-FED) tags: - CSM Threats - x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_cws_agent_rules_write - /api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id}: - delete: - description: >- - Delete a specific agent rule. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: DeleteCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write + - security_monitoring_cws_agent_rules_read + /api/v2/security/findings: get: - description: >- - Get the details of a specific agent rule. + description: |- + Get a list of security findings that match a search query. [See the schema for security findings](https://docs.datadoghq.com/security/guide/findings-schema/). + ### Query Syntax - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: GetCloudWorkloadSecurityAgentRule + This endpoint uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix. + + Example: `@severity:(critical OR high) @status:open team:platform` + operationId: ListSecurityFindings parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' + - description: The search query following log search syntax. + example: '@severity:(critical OR high) @status:open team:platform' + in: query + name: filter[query] + required: false + schema: + default: '*' + type: string + - description: Get the next page of results with a cursor provided in the previous query. + example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ== + in: query + name: page[cursor] + required: false + schema: + type: string + - description: The maximum number of findings in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int64 + maximum: 150 + minimum: 1 + type: integer + - description: Sorts by @detection_changed_at. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/SecurityFindingsSort' responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + attributes: + severity: high + status: open + tags: + - team:platform + timestamp: 1765901760 + id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: finding + meta: + elapsed: 548 + status: done schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' + $ref: '#/components/schemas/ListSecurityFindingsResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection agent rule (US1-FED) + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: List security findings tags: - - CSM Threats + - Security Monitoring + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data x-permission: operator: OR permissions: - - security_monitoring_cws_agent_rules_read + - security_monitoring_findings_read + - appsec_vm_read + /api/v2/security/findings/assignee: patch: - description: >- - Update a specific agent rule. - - Returns the agent rule object when the request is successful. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: UpdateCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' + description: |- + Assign or unassign security findings. + You can assign up to 100 security findings per request. Set `assignee_id` to the unique identifier of the Datadog user you want to assign the findings to. Omit `assignee_id` (or set it to `null`) to unassign the findings. Per-finding warnings and failures are returned in the response `meta` object. + operationId: UpdateFindingsAssignee requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + id: 00000000-0000-0000-0000-000000000001 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + type: assignee schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' - description: New definition of the agent rule + $ref: '#/components/schemas/AssigneeRequest' required: true responses: - '200': + '202': content: application/json: + examples: + default: + value: + data: + attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + id: 00000000-0000-0000-0000-000000000001 + type: assignee schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK + $ref: '#/components/schemas/AssigneeResponse' + description: Accepted '400': $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection agent rule (US1-FED) + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Assign or unassign security findings tags: - - CSM Threats + - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_cws_agent_rules_write - /api/v2/security_monitoring/configuration/security_filters: + - security_monitoring_findings_write + - appsec_vm_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/due_date_rules: get: - description: Get the list of configured security filters with their definitions. - operationId: ListSecurityFilters + description: Get all due date rules for the current organization. + operationId: ListSecurityFindingsAutomationDueDateRules + parameters: + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Critical findings due in 7 days + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: due_date_rules + links: + first: /api/v2/security/findings/automation/due_date_rules?page[size]=1000&page[number]=0 + last: /api/v2/security/findings/automation/due_date_rules?page[size]=1000&page[number]=0 + meta: + page: + total_filtered_count: 1 schema: - $ref: '#/components/schemas/SecurityFiltersResponse' - description: OK + $ref: '#/components/schemas/DueDateRulesResponse' + description: Successfully retrieved the list of due date rules '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: Get all security filters + summary: Get all due date rules tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_filters_read + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: >- - Create a security filter. - - - See the [security filter - guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) - - for more examples. - operationId: CreateSecurityFilter + description: Create a new due date rule for the current organization. + operationId: CreateSecurityFindingsAutomationDueDateRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + enabled: true + name: Critical findings due in 7 days + rule: + finding_types: + - misconfiguration + query: env:prod + type: due_date_rules schema: - $ref: '#/components/schemas/SecurityFilterCreateRequest' - description: The definition of the new security filter. + $ref: '#/components/schemas/DueDateRuleCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Critical findings due in 7 days + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: due_date_rules + schema: + $ref: '#/components/schemas/DueDateRuleResponse' + description: Successfully created the due date rule + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a due date rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/due_date_rules/reorder: + post: + description: Reorder the list of due date rules for the current organization. + operationId: ReorderSecurityFindingsAutomationDueDateRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: due_date_rules + - id: 11111111-1111-1111-1111-111111111111 + type: due_date_rules + schema: + $ref: '#/components/schemas/DueDateRuleReorderRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: due_date_rules + - id: 11111111-1111-1111-1111-111111111111 + type: due_date_rules schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK + $ref: '#/components/schemas/DueDateRuleReorderRequest' + description: Successfully reordered the due date rules '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Create a security filter + summary: Reorder due date rules tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_filters_write - /api/v2/security_monitoring/configuration/security_filters/{security_filter_id}: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/due_date_rules/{rule_id}: delete: - description: Delete a specific security filter. - operationId: DeleteSecurityFilter + description: Delete an existing due date rule by ID. + operationId: DeleteSecurityFindingsAutomationDueDateRule parameters: - - $ref: '#/components/parameters/SecurityFilterID' + - description: The ID of the due date rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '204': - description: OK + description: Rule successfully deleted. '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -2491,36 +3451,67 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Delete a security filter + summary: Delete a due date rule tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_filters_write + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: >- - Get the details of a specific security filter. - - - See the [security filter - guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) - - for more examples. - operationId: GetSecurityFilter + description: Get the details of a due date rule by ID. + operationId: GetSecurityFindingsAutomationDueDateRule parameters: - - $ref: '#/components/parameters/SecurityFilterID' + - description: The ID of the due date rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + due_from: first_seen + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Critical findings due in 7 days + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: due_date_rules schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK + $ref: '#/components/schemas/DueDateRuleResponse' + description: Successfully retrieved the due date rule '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -2528,219 +3519,379 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: Get a security filter + summary: Get a due date rule tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_filters_read - patch: - description: |- - Update a specific security filter. - Returns the security filter object when the request is successful. - operationId: UpdateSecurityFilter + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing due date rule by ID. + operationId: UpdateSecurityFindingsAutomationDueDateRule parameters: - - $ref: '#/components/parameters/SecurityFilterID' + - description: The ID of the due date rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + - due_in_days: 90 + severity: medium + due_from: fix_available + enabled: true + name: Critical findings due in 7 days + rule: + finding_types: + - misconfiguration + query: env:prod + type: due_date_rules schema: - $ref: '#/components/schemas/SecurityFilterUpdateRequest' - description: New definition of the security filter. + $ref: '#/components/schemas/DueDateRuleUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + due_days_per_severity: + - due_in_days: 7 + severity: critical + - due_in_days: 30 + severity: high + - due_in_days: 90 + severity: medium + due_from: fix_available + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510999 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Critical findings due in 7 days + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: due_date_rules schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK + $ref: '#/components/schemas/DueDateRuleResponse' + description: Successfully updated the due date rule '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity + '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Update a security filter + summary: Update a due date rule tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_filters_write - /api/v2/security_monitoring/configuration/suppressions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/mute_rules: get: - description: Get the list of all suppression rules. - operationId: ListSecurityMonitoringSuppressions + description: Get all mute rules for the current organization. + operationId: ListSecurityFindingsAutomationMuteRules + parameters: + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: Accepted for dev environments only + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Mute accepted risks in dev + rule: + finding_types: + - misconfiguration + query: env:dev team:platform @severity:low + id: 00000000-0000-0000-0000-000000000000 + type: mute_rules + links: + first: /api/v2/security/findings/automation/mute_rules?page[size]=1000&page[number]=0 + last: /api/v2/security/findings/automation/mute_rules?page[size]=1000&page[number]=0 + meta: + page: + total_filtered_count: 1 schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK + $ref: '#/components/schemas/MuteRulesResponse' + description: Successfully retrieved the list of mute rules '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get all suppression rules + summary: Get all mute rules tags: - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Create a new suppression rule. - operationId: CreateSecurityMonitoringSuppression + description: Create a new mute rule for the current organization. + operationId: CreateSecurityFindingsAutomationMuteRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: Accepted for dev environments only + enabled: true + name: Mute accepted risks in dev + rule: + finding_types: + - misconfiguration + query: env:dev team:platform @severity:low + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' - description: The definition of the new suppression rule. + $ref: '#/components/schemas/MuteRuleCreateRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: Accepted for dev environments only + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Mute accepted risks in dev + rule: + finding_types: + - misconfiguration + query: env:dev team:platform @severity:low + id: 00000000-0000-0000-0000-000000000000 + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK + $ref: '#/components/schemas/MuteRuleResponse' + description: Successfully created the mute rule '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Create a suppression rule + summary: Create a mute rule tags: - Security Monitoring x-codegen-request-body-name: body - /api/v2/security_monitoring/configuration/suppressions/rules: + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/mute_rules/reorder: post: - description: Get the list of suppressions that would affect a rule. - operationId: GetSuppressionsAffectingFutureRule + description: Reorder the list of mute rules for the current organization. + operationId: ReorderSecurityFindingsAutomationMuteRules requestBody: content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: mute_rules + - id: 11111111-1111-1111-1111-111111111111 + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' + $ref: '#/components/schemas/MuteRuleReorderRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: mute_rules + - id: 11111111-1111-1111-1111-111111111111 + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK + $ref: '#/components/schemas/MuteRuleReorderRequest' + description: Successfully reordered the mute rules '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get suppressions affecting future rule - tags: - - Security Monitoring - /api/v2/security_monitoring/configuration/suppressions/rules/{rule_id}: - get: - description: >- - Get the list of suppressions that affect a specific existing rule by its - ID. - operationId: GetSuppressionsAffectingRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': content: application/json: schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get suppressions affecting a specific rule - tags: - - Security Monitoring - /api/v2/security_monitoring/configuration/suppressions/validation: - post: - description: Validate a suppression rule. - operationId: ValidateSecurityMonitoringSuppression - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Validate a suppression rule + summary: Reorder mute rules tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_suppressions_write - /api/v2/security_monitoring/configuration/suppressions/{suppression_id}: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/mute_rules/{rule_id}: delete: - description: Delete a specific suppression rule. - operationId: DeleteSecurityMonitoringSuppression + description: Delete an existing mute rule by ID. + operationId: DeleteSecurityFindingsAutomationMuteRule parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + - description: The ID of the mute rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '204': - description: OK + description: Rule successfully deleted. '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -2748,25 +3899,64 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Delete a suppression rule + summary: Delete a mute rule tags: - Security Monitoring + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Get the details of a specific suppression rule. - operationId: GetSecurityMonitoringSuppression + description: Get the details of a mute rule by ID. + operationId: GetSecurityFindingsAutomationMuteRule parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + - description: The ID of the mute rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + expire_at: 4070908800000 + reason: risk_accepted + reason_description: Accepted for dev environments only + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Mute accepted risks in dev + rule: + finding_types: + - misconfiguration + query: env:dev team:platform @severity:low + id: 00000000-0000-0000-0000-000000000000 + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK + $ref: '#/components/schemas/MuteRuleResponse' + description: Successfully retrieved the mute rule '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -2774,550 +3964,1021 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get a suppression rule + summary: Get a mute rule tags: - Security Monitoring - patch: - description: Update a specific suppression rule. - operationId: UpdateSecurityMonitoringSuppression + x-permission: + operator: OR + permissions: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing mute rule by ID. + operationId: UpdateSecurityFindingsAutomationMuteRule parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + - description: The ID of the mute rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + reason: risk_accepted + enabled: false + name: Mute accepted risks in dev + rule: + finding_types: + - misconfiguration + query: env:dev + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateRequest' - description: New definition of the suppression rule. Supports partial updates. + $ref: '#/components/schemas/MuteRuleUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + reason: risk_accepted + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: false + modified_at: 1722439510999 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Mute accepted risks in dev + rule: + finding_types: + - misconfiguration + query: env:dev + id: 00000000-0000-0000-0000-000000000000 + type: mute_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK + $ref: '#/components/schemas/MuteRuleResponse' + description: Successfully updated the mute rule '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Update a suppression rule + summary: Update a mute rule tags: - Security Monitoring - /api/v2/security_monitoring/rules: + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/severity_modifier_rules: get: - description: List rules. - operationId: ListSecurityMonitoringRules + description: Get all severity modifier rules for the current organization. + operationId: ListSecurityFindingsAutomationSeverityModifierRules parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + action: + description: Lower severity for dev environment noise + severity: low + type: set + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Downgrade misconfigurations in dev + rule: + finding_types: + - misconfiguration + query: env:dev + id: 00000000-0000-0000-0000-000000000000 + type: severity_modifier_rules + links: + first: /api/v2/security/findings/automation/severity_modifier_rules?page[size]=1000&page[number]=0 + last: /api/v2/security/findings/automation/severity_modifier_rules?page[size]=1000&page[number]=0 + meta: + page: + total_filtered_count: 1 schema: - $ref: '#/components/schemas/SecurityMonitoringListRulesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/SeverityModifierRulesResponse' + description: Successfully retrieved the list of severity modifier rules + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: List rules + summary: Get all severity modifier rules tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_rules_read + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Create a detection rule. - operationId: CreateSecurityMonitoringRule + description: Create a new severity modifier rule for the current organization. + operationId: CreateSecurityFindingsAutomationSeverityModifierRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + description: Lower severity for dev environment noise + severity: low + type: set + enabled: true + name: Downgrade misconfigurations in dev + rule: + finding_types: + - misconfiguration + query: env:dev + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' + $ref: '#/components/schemas/SeverityModifierRuleCreateRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + action: + description: Lower severity for dev environment noise + severity: low + type: set + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Downgrade misconfigurations in dev + rule: + finding_types: + - misconfiguration + query: env:dev + id: 00000000-0000-0000-0000-000000000000 + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK + $ref: '#/components/schemas/SeverityModifierRuleResponse' + description: Successfully created the severity modifier rule '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Create a detection rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/convert: - post: - description: >- - Convert a rule that doesn't (yet) exist from JSON to Terraform for - datadog provider - - resource datadog_security_monitoring_rule. - operationId: ConvertSecurityMonitoringRuleFromJSONToTerraform - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertPayload' - required: true - responses: - '200': content: application/json: schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Convert a rule from JSON to Terraform + summary: Create a severity modifier rule tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/test: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/severity_modifier_rules/reorder: post: - description: Test a rule. - operationId: TestSecurityMonitoringRule + description: Reorder the list of severity modifier rules for the current organization. + operationId: ReorderSecurityFindingsAutomationSeverityModifierRules requestBody: content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: severity_modifier_rules + - id: 11111111-1111-1111-1111-111111111111 + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' + $ref: '#/components/schemas/SeverityModifierRuleReorderRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: severity_modifier_rules + - id: 11111111-1111-1111-1111-111111111111 + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Test a rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/validation: - post: - description: Validate a detection rule. - operationId: ValidateSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleValidatePayload' - required: true - responses: - '204': - description: OK + $ref: '#/components/schemas/SeverityModifierRuleReorderResponse' + description: Successfully reordered the severity modifier rules '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Validate a detection rule + summary: Reorder severity modifier rules tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/severity_modifier_rules/{rule_id}: delete: - description: Delete an existing rule. Default rules cannot be deleted. - operationId: DeleteSecurityMonitoringRule + description: Delete an existing severity modifier rule by ID. + operationId: DeleteSecurityFindingsAutomationSeverityModifierRule parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' + - description: The ID of the severity modifier rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '204': - description: OK + description: Rule successfully deleted '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Delete an existing rule + summary: Delete a severity modifier rule tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_rules_write + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Get a rule's details. - operationId: GetSecurityMonitoringRule + description: Get the details of a severity modifier rule by ID. + operationId: GetSecurityFindingsAutomationSeverityModifierRule parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' + - description: The ID of the severity modifier rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + description: Lower severity for dev environment noise + severity: low + type: set + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Downgrade misconfigurations in dev + rule: + finding_types: + - misconfiguration + query: env:dev + id: 00000000-0000-0000-0000-000000000000 + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK + $ref: '#/components/schemas/SeverityModifierRuleResponse' + description: Successfully retrieved the severity modifier rule + '403': + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a rule's details + summary: Get a severity modifier rule tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_rules_read + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). put: - description: >- - Update an existing rule. When updating `cases`, `queries` or `options`, - the whole field - - must be included. For example, when modifying a query all queries must - be included. - - Default rules can only be updated to be enabled, to change - notifications, or to update - - the tags (default tags cannot be removed). - operationId: UpdateSecurityMonitoringRule + description: Update an existing severity modifier rule by ID. + operationId: UpdateSecurityFindingsAutomationSeverityModifierRule parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' + - description: The ID of the severity modifier rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + severity_delta: down_one + type: shift + enabled: false + name: Downgrade misconfigurations in dev + rule: + finding_types: + - misconfiguration + query: env:dev + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleUpdatePayload' + $ref: '#/components/schemas/SeverityModifierRuleUpdateRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + severity_delta: down_one + type: shift + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: false + modified_at: 1722439510999 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Downgrade misconfigurations in dev + rule: + finding_types: + - misconfiguration + query: env:dev + id: 00000000-0000-0000-0000-000000000000 + type: severity_modifier_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK + $ref: '#/components/schemas/SeverityModifierRuleResponse' + description: Successfully updated the severity modifier rule '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Update an existing rule + summary: Update a severity modifier rule tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}/convert: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/ticket_creation_rules: get: - description: |- - Convert an existing rule from JSON to Terraform for datadog provider - resource datadog_security_monitoring_rule. - operationId: ConvertExistingSecurityMonitoringRule + description: Get all ticket creation rules for the current organization. + operationId: ListSecurityFindingsAutomationTicketCreationRules parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' + - description: The number of rules per page. Maximum is 1000. + in: query + name: page[size] + required: false + schema: + default: 1000 + example: 10 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: The page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + minimum: 0 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + action: + max_tickets_per_day: 100 + project_id: 11111111-1111-1111-1111-111111111111 + target: jira + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Auto-create Jira tickets for critical findings + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: ticket_creation_rules + links: + first: /api/v2/security/findings/automation/ticket_creation_rules?page[size]=1000&page[number]=0 + last: /api/v2/security/findings/automation/ticket_creation_rules?page[size]=1000&page[number]=0 + meta: + page: + total_filtered_count: 1 schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/TicketCreationRulesResponse' + description: Successfully retrieved the list of ticket creation rules '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Convert an existing rule from JSON to Terraform + summary: Get all ticket creation rules tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_rules_read - /api/v2/security_monitoring/rules/{rule_id}/test: + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Test an existing rule. - operationId: TestExistingSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' + description: Create a new ticket creation rule for the current organization. + operationId: CreateSecurityFindingsAutomationTicketCreationRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 100 + project_id: 11111111-1111-1111-1111-111111111111 + target: jira + enabled: true + name: Auto-create Jira tickets for critical findings + rule: + finding_types: + - misconfiguration + query: env:prod + type: ticket_creation_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' + $ref: '#/components/schemas/TicketCreationRuleCreateRequest' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 100 + project_id: 11111111-1111-1111-1111-111111111111 + target: jira + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Auto-create Jira tickets for critical findings + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: ticket_creation_rules schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' - description: OK + $ref: '#/components/schemas/TicketCreationRuleResponse' + description: Successfully created the ticket creation rule '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Test an existing rule + summary: Create a ticket creation rule tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}/version_history: - get: - description: Get a rule's version history. - operationId: GetRuleVersionHistory - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/ticket_creation_rules/reorder: + post: + description: Reorder the list of ticket creation rules for the current organization. + operationId: ReorderSecurityFindingsAutomationTicketCreationRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: ticket_creation_rules + - id: 11111111-1111-1111-1111-111111111111 + type: ticket_creation_rules + schema: + $ref: '#/components/schemas/TicketCreationRuleReorderRequest' + required: true + responses: + '200': content: application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: ticket_creation_rules + - id: 11111111-1111-1111-1111-111111111111 + type: ticket_creation_rules schema: - $ref: '#/components/schemas/GetRuleVersionHistoryResponse' - description: OK + $ref: '#/components/schemas/TicketCreationRuleReorderRequest' + description: Successfully reordered the ticket creation rules '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Reorder ticket creation rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/automation/ticket_creation_rules/{rule_id}: + delete: + description: Delete an existing ticket creation rule by ID. + operationId: DeleteSecurityFindingsAutomationTicketCreationRule + parameters: + - description: The ID of the ticket creation rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + responses: + '204': + description: Rule successfully deleted. + '403': + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a rule's version history + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a ticket creation rule tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_rules_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes.' - /api/v2/security_monitoring/signals: + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: >- - The list endpoint returns security signals that match a search query. - - Both this endpoint and the POST endpoint can be used interchangeably - when listing - - security signals. - operationId: ListSecurityMonitoringSignals + description: Get the details of a ticket creation rule by ID. + operationId: GetSecurityFindingsAutomationTicketCreationRule parameters: - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' + - description: The ID of the ticket creation rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 100 + project_id: 11111111-1111-1111-1111-111111111111 + target: jira + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510282 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Auto-create Jira tickets for critical findings + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: ticket_creation_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/TicketCreationRuleResponse' + description: Successfully retrieved the ticket creation rule '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a quick list of security signals + summary: Get a ticket creation rule tags: - Security Monitoring - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data x-permission: operator: OR permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/search: - post: - description: >- - Returns security signals that match a search query. - - Both this endpoint and the GET endpoint can be used interchangeably for - listing - - security signals. - operationId: SearchSecurityMonitoringSignals + - security_pipelines_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing ticket creation rule by ID. + operationId: UpdateSecurityFindingsAutomationTicketCreationRule + parameters: + - description: The ID of the ticket creation rule. + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 50 + project_id: 11111111-1111-1111-1111-111111111111 + target: jira + enabled: true + name: Auto-create Jira tickets for critical findings + rule: + finding_types: + - misconfiguration + query: env:prod + type: ticket_creation_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' - required: false + $ref: '#/components/schemas/TicketCreationRuleUpdateRequest' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + max_tickets_per_day: 50 + project_id: 11111111-1111-1111-1111-111111111111 + target: jira + created_at: 1722439510282 + created_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + enabled: true + modified_at: 1722439510999 + modified_by: + id: 00000000-0000-0000-0000-000000000000 + name: Jane Doe + type: user + name: Auto-create Jira tickets for critical findings + rule: + finding_types: + - misconfiguration + query: env:prod + id: 00000000-0000-0000-0000-000000000000 + type: ticket_creation_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK + $ref: '#/components/schemas/TicketCreationRuleResponse' + description: Successfully updated the ticket creation rule '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a list of security signals + summary: Update a ticket creation rule tags: - Security Monitoring x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data x-permission: operator: OR permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/{signal_id}: - get: - description: Get a signal's details. - operationId: GetSecurityMonitoringSignal - parameters: - - $ref: '#/components/parameters/SignalID' + - security_pipelines_write + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/findings/cases: + delete: + description: |- + Detach security findings from their case. + This operation dissociates security findings from their associated cases without deleting the cases themselves. You can detach security findings from multiple different cases in a single request, with a limit of 50 security findings per request. Security findings that are not currently attached to any case will be ignored. + operationId: DetachCase + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + type: cases + schema: + $ref: '#/components/schemas/DetachCaseRequest' + required: true responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalResponse' - description: OK + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -3325,654 +4986,1152 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a signal's details + - AuthZ: [] + summary: Detach security findings from their case tags: - Security Monitoring + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/{signal_id}/assignee: - patch: - description: Modify the triage assignee of a security signal. - operationId: EditSecurityMonitoringSignalAssignee - parameters: - - $ref: '#/components/parameters/SignalID' + - security_monitoring_findings_write + - appsec_vm_write + post: + description: |- + Create cases for security findings. + You can create up to 50 cases per request and associate up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the newly created case. + operationId: CreateCases requestBody: content: application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the case. + priority: NOT_DEFINED + title: A title for the case. + relationships: + findings: + data: + - id: YjdhNDM3N2QyNTFjYmUwYTY3NDdhMTg0YTk2Yjg5MDl-ZjNmMzAwOTFkZDNhNGQzYzI0MzgxNTk4MjRjZmE2NzE= + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: cases schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalAssigneeUpdateRequest - description: Attributes describing the signal update. + $ref: '#/components/schemas/CreateCaseRequestArray' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the case. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the case. + id: 00000000-0000-0000-0000-000000000001 + type: cases schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalTriageUpdateResponse - description: OK + $ref: '#/components/schemas/FindingCaseResponseArray' + description: Created '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/BadRequestResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Modify the triage assignee of a security signal + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create cases for security findings tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_signals_write - /api/v2/security_monitoring/signals/{signal_id}/incidents: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/cases/{case_id}: patch: - description: Change the related incidents for a security signal. - operationId: EditSecurityMonitoringSignalIncidents + description: |- + Attach security findings to a case. + You can attach up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the specified case. + operationId: AttachCase parameters: - - $ref: '#/components/parameters/SignalID' + - description: Unique identifier of the case to attach security findings to + in: path + name: case_id + required: true + schema: + type: string requestBody: content: application/json: + examples: + default: + value: + data: + id: c1234567-89ab-cdef-0123-456789abcdef + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: cases schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalIncidentsUpdateRequest - description: Attributes describing the signal update. + $ref: '#/components/schemas/AttachCaseRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the case. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the case. + id: 00000000-0000-0000-0000-000000000002 + type: cases schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalTriageUpdateResponse + $ref: '#/components/schemas/FindingCaseResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/BadRequestResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Change the related incidents of a security signal + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a case tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_signals_write - /api/v2/security_monitoring/signals/{signal_id}/state: + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/jira_issues: patch: - description: Change the triage state of a security signal. - operationId: EditSecurityMonitoringSignalState - parameters: - - $ref: '#/components/parameters/SignalID' + description: |- + Attach security findings to a Jira issue by providing the Jira issue URL. + You can attach up to 50 security findings per Jira issue. If the Jira issue is not linked to any case, this operation will create a case for the security findings and link the Jira issue to the newly created case. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the specified Jira issue. + operationId: AttachJiraIssue requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + jira_issue_url: https://datadoghq-sandbox-538.atlassian.net/browse/CSMSEC-105476 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: jira_issues schema: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateRequest' - description: Attributes describing the signal update. + $ref: '#/components/schemas/AttachJiraIssueRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the Jira issue. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the Jira issue. + id: 00000000-0000-0000-0000-000000000004 + type: cases schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalTriageUpdateResponse + $ref: '#/components/schemas/FindingCaseResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/BadRequestResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Change the triage state of a security signal + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a Jira issue tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_signals_write - /api/v2/sensitive-data-scanner/config: - get: - description: List all the Scanning groups in your organization. - operationId: ListScanningGroups + - security_monitoring_findings_write + - appsec_vm_write + post: + description: |- + Create Jira issues for security findings. + This operation creates a case in Datadog and a Jira issue linked to that case for bidirectional sync between Datadog and Jira. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). You can create up to 50 Jira issues per request and associate up to 50 security findings per Jira issue. Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the newly created Jira issue. + operationId: CreateJiraIssues + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the Jira issue. + fields: + key1: value + key2: + - value + key3: + key4: value + priority: NOT_DEFINED + title: A title for the Jira issue. + relationships: + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: jira_issues + schema: + $ref: '#/components/schemas/CreateJiraIssueRequestArray' + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the Jira issue. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the Jira issue. + id: 00000000-0000-0000-0000-000000000003 + type: cases schema: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponse' - description: OK + $ref: '#/components/schemas/FindingCaseResponseArray' + description: Created '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Scanning Groups + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create Jira issues for security findings tags: - - Sensitive Data Scanner + - Security Monitoring + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - data_scanner_read + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/linear_issues: patch: - description: Reorder the list of groups. - operationId: ReorderScanningGroups + description: |- + Attach security findings to a Linear issue by providing the Linear issue URL. + You can attach up to 50 security findings per Linear issue. If the Linear issue is not linked to any case, this operation will create a case for the security findings and link the Linear issue to the newly created case. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the specified Linear issue. + operationId: AttachLinearIssue requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + linear_issue_url: https://linear.app/your-workspace/issue/ENG-123 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: linear_issues schema: - $ref: '#/components/schemas/SensitiveDataScannerConfigRequest' + $ref: '#/components/schemas/AttachLinearIssueRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the Linear issue. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the Linear issue. + id: 00000000-0000-0000-0000-000000000008 + type: cases schema: - $ref: '#/components/schemas/SensitiveDataScannerReorderGroupsResponse' + $ref: '#/components/schemas/FindingCaseResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Reorder Groups + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a Linear issue tags: - - Sensitive Data Scanner + - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/groups: + - security_monitoring_findings_write + - appsec_vm_write post: - description: >- - Create a scanning group. - - The request MAY include a configuration relationship. - - A rules relationship can be omitted entirely, but if it is included it - MUST be - - null or an empty array (rules cannot be created at the same time). - - The new group will be ordered last within the configuration. - operationId: CreateScanningGroup + description: |- + Create Linear issues for security findings. + This operation creates a case in Datadog and a Linear issue linked to that case for bidirectional sync between Datadog and Linear. You can create up to 50 Linear issues per request and associate up to 50 security findings per Linear issue. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the newly created Linear issue. + operationId: CreateLinearIssues requestBody: content: application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the Linear issue. + label_ids: + - a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + linear_project_id: d4c3b2a1-6f5e-8b7a-0d9c-2f1e4a3b6c5d + priority: NOT_DEFINED + title: A title for the Linear issue. + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: linear_issues schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupCreateRequest' + $ref: '#/components/schemas/CreateLinearIssueRequestArray' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the Linear issue. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the Linear issue. + id: 00000000-0000-0000-0000-000000000007 + type: cases schema: - $ref: '#/components/schemas/SensitiveDataScannerCreateGroupResponse' - description: OK + $ref: '#/components/schemas/FindingCaseResponseArray' + description: Created '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Scanning Group + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create Linear issues for security findings tags: - - Sensitive Data Scanner + - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/groups/{group_id}: - delete: - description: Delete a given group. - operationId: DeleteScanningGroup - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerGroupID' + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/mute: + patch: + description: |- + Mute or unmute security findings. + You can mute or unmute up to 100 security findings per request. The request body must include `is_muted` and `reason` attributes. The allowed reasons depend on whether the finding is being muted or unmuted: + - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `OTHER`, `NO_FIX`, `DUPLICATE`, `RISK_ACCEPTED`. + - To unmute a finding: `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, `OTHER`. + operationId: MuteSecurityFindings requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + mute: + description: To be resolved later. + expire_at: 1778721573794 + is_muted: true + reason: RISK_ACCEPTED + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + type: mute schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteRequest' + $ref: '#/components/schemas/MuteFindingsRequest' required: true responses: - '200': + '202': content: application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: mute schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteResponse' - description: OK + $ref: '#/components/schemas/MuteFindingsResponse' + description: Accepted '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unprocessable Entity '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Scanning Group + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Mute or unmute security findings tags: - - Sensitive Data Scanner + - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - data_scanner_write - patch: - description: >- - Update a group, including the order of the rules. + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/findings/search: + post: + description: |- + Get a list of security findings that match a search query. [See the schema for security findings](https://docs.datadoghq.com/security/guide/findings-schema/). - Rules within the group are reordered by including a rules relationship. - If the rules + ### Query Syntax - relationship is present, its data section MUST contain linkages for all - of the rules + The API uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix. - currently in the group, and MUST NOT contain any others. - operationId: UpdateScanningGroup - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerGroupID' + Example: `@severity:(critical OR high) @status:open team:platform` + operationId: SearchSecurityFindings requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + filter: '@severity:(critical OR high) @status:open team:platform' + page: + cursor: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ== + limit: 25 + sort: '@detection_changed_at' schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateRequest' + $ref: '#/components/schemas/SecurityFindingsSearchRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + attributes: + severity: high + status: open + tags: + - team:platform + timestamp: 1765901760 + id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: finding + meta: + elapsed: 548 + status: done schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateResponse' + $ref: '#/components/schemas/ListSecurityFindingsResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Scanning Group + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_read + summary: Search security findings tags: - - Sensitive Data Scanner + - Security Monitoring x-codegen-request-body-name: body + x-pagination: + cursorParam: body.data.attributes.page.cursor + cursorPath: meta.page.after + limitParam: body.data.attributes.page.limit + resultsPath: data x-permission: operator: OR permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/rules: - post: - description: >- - Create a scanning rule in a sensitive data scanner group, ordered last. - - The posted rule MUST include a group relationship. - - It MUST include either a standard_pattern relationship or a regex - attribute, but not both. - - If included_attributes is empty or missing, we will scan all attributes - except - - excluded_attributes. If both are missing, we will scan the whole event. - operationId: CreateScanningRule + - security_monitoring_findings_read + - appsec_vm_read + /api/v2/security/findings/servicenow_tickets: + patch: + description: |- + Attach security findings to a ServiceNow ticket by providing the ServiceNow ticket URL. + You can attach up to 50 security findings per ServiceNow ticket. If the ServiceNow ticket is not linked to any case, this operation will create a case for the security findings and link the ServiceNow ticket to the newly created case. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the specified ServiceNow ticket. + operationId: AttachServiceNowTicket requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + servicenow_ticket_url: https://example.service-now.com/now/nav/ui/classic/params/target/incident.do?sys_id=abcdef0123456789abcdef0123456789 + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: servicenow_tickets schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleCreateRequest' + $ref: '#/components/schemas/AttachServiceNowTicketRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the ServiceNow ticket. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the ServiceNow ticket. + id: 00000000-0000-0000-0000-000000000006 + type: cases schema: - $ref: '#/components/schemas/SensitiveDataScannerCreateRuleResponse' + $ref: '#/components/schemas/FindingCaseResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/responses/BadRequestResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Scanning Rule + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Attach security findings to a ServiceNow ticket tags: - - Sensitive Data Scanner + - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/rules/{rule_id}: - delete: - description: Delete a given rule. - operationId: DeleteScanningRule - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerRuleID' + - security_monitoring_findings_write + - appsec_vm_write + post: + description: |- + Create ServiceNow tickets for security findings. + This operation creates a case in Datadog and a ServiceNow ticket linked to that case for bidirectional sync between Datadog and ServiceNow. You can create up to 50 ServiceNow tickets per request and associate up to 50 security findings per ServiceNow ticket. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the newly created ServiceNow ticket. + operationId: CreateServiceNowTickets requestBody: content: application/json: + examples: + default: + value: + data: + - attributes: + assignee_id: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + description: A description of the ServiceNow ticket. + priority: NOT_DEFINED + title: A title for the ServiceNow ticket. + relationships: + findings: + data: + - id: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: findings + project: + data: + id: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: projects + type: servicenow_tickets schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteRequest' + $ref: '#/components/schemas/CreateServiceNowTicketRequestArray' required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A description of the ServiceNow ticket. + modified_at: '2024-01-01T00:00:00+00:00' + priority: P4 + status: OPEN + title: A title for the ServiceNow ticket. + id: 00000000-0000-0000-0000-000000000005 + type: cases schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteResponse' - description: OK + $ref: '#/components/schemas/FindingCaseResponseArray' + description: Created '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/responses/BadRequestResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create ServiceNow tickets for security findings + tags: + - Security Monitoring + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - data_scanner_write - patch: - description: >- - Update a scanning rule. + - security_monitoring_findings_write + - appsec_vm_write + /api/v2/security/sboms: + get: + description: |- + Get a list of assets SBOMs for an organization. + + The `filter[asset_type]` parameter is required for initial requests (when no `page[token]` is provided). + Subsequent pages encode the asset type in the pagination token, so `filter[asset_type]` is not required + for paginated requests. Mixing infrastructure asset types (`Host`, `HostImage`, `Image`, `ServerlessFunction`) + with code asset types (`Repository`, `Service`) in the same request is not supported and returns a 400 error. - The request body MUST NOT include a standard_pattern relationship, as - that relationship + ### Pagination - is non-editable. Trying to edit the regex attribute of a rule with a - standard_pattern + Please review the [Pagination section](#pagination) for the "List Vulnerabilities" endpoint. - relationship will also result in an error. - operationId: UpdateScanningRule + ### Filtering + + Please review the [Filtering section](#filtering) for the "List Vulnerabilities" endpoint. + + ### Metadata + + Please review the [Metadata section](#metadata) for the "List Vulnerabilities" endpoint. + operationId: ListAssetsSBOMs parameters: - - $ref: '#/components/parameters/SensitiveDataScannerRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateRequest' - required: true + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal to or greater than 1. + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: The type of the assets for the SBOM request. Required for initial requests (when no `page[token]` is provided). Infrastructure types (`Host`, `HostImage`, `Image`, `ServerlessFunction`) and code types (`Repository`, `Service`) cannot be mixed in the same request. + example: Repository + in: query + name: filter[asset_type] + required: false + schema: + $ref: '#/components/schemas/AssetType' + - description: The name of the asset for the SBOM request. + example: github.com/datadog/datadog-agent + in: query + name: filter[asset_name] + required: false + schema: + type: string + - description: The name of the component that is a dependency of an asset. + example: opentelemetry-api + in: query + name: filter[package_name] + required: false + schema: + type: string + - description: The version of the component that is a dependency of an asset. + example: 1.33.1 + in: query + name: filter[package_version] + required: false + schema: + type: string + - description: The software license name of the component that is a dependency of an asset. + example: Apache-2.0 + in: query + name: filter[license_name] + required: false + schema: + type: string + - description: The software license type of the component that is a dependency of an asset. + example: network_strong_copyleft + in: query + name: filter[license_type] + required: false + schema: + $ref: '#/components/schemas/SBOMComponentLicenseType' responses: '200': content: application/json: + examples: + default: + value: + data: [] schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateResponse' + $ref: '#/components/schemas/ListAssetsSBOMsResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Bad request: The server cannot process the request due to invalid syntax in the request.' '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Forbidden: Access denied' '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Not found: asset not found' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Scanning Rule + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List assets SBOMs tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body + - Security Monitoring x-permission: operator: OR permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/standard-patterns: + - appsec_vm_read + /api/v2/security/sboms/{asset_type}: get: - description: Returns all standard patterns. - operationId: ListStandardPatterns + description: Get a single SBOM related to an asset by its type and name. + operationId: GetSBOM + parameters: + - description: The type of the asset for the SBOM request. + example: Repository + in: path + name: asset_type + required: true + schema: + $ref: '#/components/schemas/AssetType' + - description: The name of the asset for the SBOM request. + example: github.com/datadog/datadog-agent + in: query + name: filter[asset_name] + required: true + schema: + type: string + - description: The container image `repo_digest` for the SBOM request. When the requested asset type is 'Image', this filter is mandatory. + example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 + in: query + name: filter[repo_digest] + required: false + schema: + type: string + - description: The standard of the SBOM. + example: CycloneDX + in: query + name: ext:format + required: false + schema: + $ref: '#/components/schemas/SBOMFormat' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + bomFormat: CycloneDX + components: + - name: google.golang.org/grpc + type: library + version: 1.68.1 + dependencies: [] + metadata: {} + serialNumber: urn:uuid:abc-123 + specVersion: '1.6' + version: 1 + id: github.com/datadog/datadog-agent + type: sboms schema: - $ref: >- - #/components/schemas/SensitiveDataScannerStandardPatternsResponseData + $ref: '#/components/schemas/GetSBOMResponse' description: OK '400': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Bad request: The server cannot process the request due to invalid syntax in the request.' '403': content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Forbidden: Access denied' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Not found: asset not found' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: List standard patterns + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get SBOM tags: - - Sensitive Data Scanner + - Security Monitoring x-permission: operator: OR permissions: - - data_scanner_read - /api/v2/siem-historical-detections/histsignals: + - appsec_vm_read + /api/v2/security/scanned-assets-metadata: get: - description: List hist signals. - operationId: ListSecurityMonitoringHistsignals + description: |- + Get a list of security scanned assets metadata for an organization. + + ### Pagination + + For the "List Vulnerabilities" endpoint, see the [Pagination section](#pagination). + + ### Filtering + + For the "List Vulnerabilities" endpoint, see the [Filtering section](#filtering). + + ### Metadata + + For the "List Vulnerabilities" endpoint, see the [Metadata section](#metadata). + + ### Related endpoints + + This endpoint returns additional metadata for cloud resources that is not available from the standard resource endpoints. To access a richer dataset, call this endpoint together with the relevant resource endpoint(s) and merge (join) their results using the resource identifier. + + **Hosts** + + To enrich host data, join the response from the [Hosts](https://docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields: + + | ENDPOINT | JOIN KEY | TYPE | + | --- | --- | --- | + | [/api/v1/hosts](https://docs.datadoghq.com/api/latest/hosts/) | host_list.host_name | string | + | /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + + **Host Images** + + To enrich host image data, join the response from the [Hosts](https://docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields: + + | ENDPOINT | JOIN KEY | TYPE | + | --- | --- | --- | + | [/api/v1/hosts](https://docs.datadoghq.com/api/latest/hosts/) | host_list.tags_by_source["Amazon Web Services"]["image"] | string | + | /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + + **Container Images** + + To enrich container image data, join the response from the [Container Images](https://docs.datadoghq.com/api/latest/container-images/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields: + + | ENDPOINT | JOIN KEY | TYPE | + | --- | --- | --- | + | [/api/v2/container_images](https://docs.datadoghq.com/api/latest/container-images/) | `data.attributes.name`@`data.attributes.repo_digest` | string | + | /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + operationId: ListScannedAssetsMetadata parameters: - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal to or greater than 1. + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: The type of the scanned asset. + example: Host + in: query + name: filter[asset.type] + required: false + schema: + $ref: '#/components/schemas/CloudAssetType' + - description: The name of the scanned asset. + example: i-0fc7edef1ab26d7ef + in: query + name: filter[asset.name] + required: false + schema: + type: string + - description: The origin of last success scan. + example: agent + in: query + name: filter[last_success.origin] + required: false + schema: + type: string + - description: The environment of last success scan. + example: prod + in: query + name: filter[last_success.env] + required: false + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + asset: + name: i-0fc7edef1ab26d7ef + type: Host + first_success_timestamp: '2024-01-01T00:00:00Z' + last_success: + env: prod + id: Host|i-0fc7edef1ab26d7ef + type: scanned-assets-metadata schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' + $ref: '#/components/schemas/ScannedAssetsMetadata' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Bad request: The server cannot process the request due to invalid syntax in the request.' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Forbidden: Access denied' '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Not found: asset not found' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: List hist signals + summary: List scanned assets metadata tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_signals_read + - appsec_vm_read x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/histsignals/search: + **Note**: This endpoint is a private preview. + If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9). + /api/v2/security/siem/ioc-explorer: get: - description: Search hist signals. - operationId: SearchSecurityMonitoringHistsignals - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Search hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/histsignals/{histsignal_id}: - get: - description: Get a hist signal's details. - operationId: GetSecurityMonitoringHistsignal + description: Get a list of indicators of compromise (IoCs) matching the specified filters. + operationId: ListIndicatorsOfCompromise parameters: - - $ref: '#/components/parameters/HistoricalSignalID' + - description: Number of results per page. + in: query + name: limit + required: false + schema: + default: 50 + format: int32 + maximum: 2147483647 + type: integer + - description: Pagination offset. + in: query + name: offset + required: false + schema: + default: 0 + format: int32 + maximum: 2147483647 + type: integer + - description: Search/filter query (supports field:value syntax). + in: query + name: query + required: false + schema: + type: string + - description: 'Sort column: score, first_seen_ts_epoch, last_seen_ts_epoch, indicator, indicator_type, signal_count, log_count, category, as_type.' + in: query + name: sort[column] + required: false + schema: + default: score + type: string + - description: 'Sort order: asc or desc.' + in: query + name: sort[order] + required: false + schema: + default: desc + type: string + - description: When true, return only OCSF field-based matches. When false, return regex/message-based matches. + in: query + name: ocsf + required: false + schema: + default: true + type: boolean + - description: Filter indicators whose triage state was updated by a specific user identified by their handle. + in: query + name: worked_by + required: false + schema: + type: string + - description: Filter by triage state. + in: query + name: triage_state + required: false + schema: + $ref: '#/components/schemas/IoCTriageState' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + data: + - id: abc-123 + indicator: 192.0.2.1 + indicator_type: ip + score: 85 + metadata: + count: 1 + paging: + offset: 0 + id: abc-123 + type: ioc_explorer_list_response schema: - $ref: '#/components/schemas/SecurityMonitoringSignalResponse' + $ref: '#/components/schemas/IoCExplorerListResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: @@ -3980,183 +6139,332 @@ paths: appKeyAuth: [] - AuthZ: - security_monitoring_signals_read - summary: Get a hist signal's details + summary: List indicators of compromise tags: - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read x-unstable: |- **Note**: This endpoint is in beta and may be subject to changes. Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs: + /api/v2/security/siem/ioc-explorer/indicator: get: - description: List historical jobs. - operationId: ListHistoricalJobs + description: Get detailed information about a specific indicator of compromise (IoC). + operationId: GetIndicatorOfCompromise parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: The order of the jobs in results. - example: status + - description: The indicator value to look up (for example, an IP address or domain). in: query - name: sort - required: false + name: indicator + required: true schema: type: string - - description: Query used to filter items from the fetched list. - example: security:attack status:high + - description: When true, return only OCSF field-based matches. When false, return regex/message-based matches. in: query - name: filter[query] + name: ocsf required: false schema: - type: string + default: true + type: boolean + - description: Include full triage history for the indicator. + in: query + name: include_triage_history + required: false + schema: + default: false + type: boolean + - description: Maximum number of triage history events returned. Only applied when `include_triage_history` is true. + in: query + name: triage_history_limit + required: false + schema: + default: 50 + format: int32 + maximum: 1000 + minimum: 1 + type: integer + - description: Pagination offset into the triage history. Only applied when `include_triage_history` is true. + in: query + name: triage_history_offset + required: false + schema: + default: 0 + format: int32 + maximum: 2147483647 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + data: + id: abc-123 + indicator: 192.0.2.1 + indicator_type: ip + score: 85 + id: abc-123 + type: ioc_indicator_response schema: - $ref: '#/components/schemas/ListHistoricalJobsResponse' + $ref: '#/components/schemas/GetIoCIndicatorResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: List historical jobs + - AuthZ: + - security_monitoring_signals_read + summary: Get an indicator of compromise tags: - Security Monitoring x-unstable: |- **Note**: This endpoint is in beta and may be subject to changes. Please check the documentation regularly for updates. + /api/v2/security/siem/ioc-explorer/triage: post: - description: Run a historical job. - operationId: RunHistoricalJob + description: |- + Set the triage state of an indicator of compromise (IoC). This creates or + updates the triage state for the indicator in your organization. + operationId: CreateIoCTriageState requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + indicator: 192.0.2.1 + triage_state: reviewed + type: ioc_triage_state schema: - $ref: '#/components/schemas/RunHistoricalJobRequest' + $ref: '#/components/schemas/IoCTriageWriteRequest' + description: The triage state to set for the indicator. required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-06-04T12:00:00Z' + indicator: 192.0.2.1 + triage_state: reviewed + triaged_at: '2026-06-04T12:00:00Z' + triaged_by: 11111111-2222-3333-4444-555555555555 + id: abc-123 + type: ioc_triage_state schema: - $ref: '#/components/schemas/JobCreateResponse' - description: Status created + $ref: '#/components/schemas/IoCTriageWriteResponse' + description: Created '400': $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - security_monitoring_rules_write - summary: Run a historical job + - security_monitoring_signals_write + summary: Create or update an indicator triage state tags: - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write x-unstable: |- **Note**: This endpoint is in beta and may be subject to changes. Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/signal_convert: + /api/v2/security/signals/notification_rules: + get: + description: Returns the list of notification rules for security signals. + operationId: GetSignalNotificationRules + responses: + '200': + $ref: '#/components/responses/NotificationRulesList' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get the list of signal-based notification rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_read post: - description: Convert a job result to a signal. - operationId: ConvertJobResultToSignal + description: Create a new notification rule for security signals and return the created rule. + operationId: CreateSignalNotificationRule requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - '@john.doe@email.com' + time_aggregation: 86400 + type: notification_rules schema: - $ref: '#/components/schemas/ConvertJobResultsToSignalsRequest' + $ref: '#/components/schemas/CreateNotificationRuleParameters' + description: |- + The body of the create notification rule request is composed of the rule type and the rule attributes: + the rule name, the selectors, the notification targets, and the rule enabled status. required: true responses: - '204': - description: OK + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - '@test@example.com' + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: '#/components/schemas/NotificationRuleResponse' + description: Successfully created the notification rule. '400': $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Convert a job result to a signal + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a new signal-based notification rule tags: - Security Monitoring x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_signals_write - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/{job_id}: + - security_monitoring_notification_profiles_write + /api/v2/security/signals/notification_rules/{id}: delete: - description: Delete an existing job. - operationId: DeleteHistoricalJob + description: Delete a notification rule for security signals. + operationId: DeleteSignalNotificationRule parameters: - - $ref: '#/components/parameters/HistoricalJobID' + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string responses: '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' + description: Rule successfully deleted. '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Delete an existing job + summary: Delete a signal-based notification rule tags: - Security Monitoring - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_write get: - description: Get a job's details. - operationId: GetHistoricalJob + description: Get the details of a notification rule for security signals. + operationId: GetSignalNotificationRule parameters: - - $ref: '#/components/parameters/HistoricalJobID' + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - '@test@example.com' + version: 1 + id: aaa-bbb-ccc + type: notification_rules schema: - $ref: '#/components/schemas/HistoricalJobResponse' - description: OK + $ref: '#/components/schemas/NotificationRuleResponse' + description: Notification rule details. '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -4164,292 +6472,10510 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a job's details + summary: Get details of a signal-based notification rule tags: - Security Monitoring x-permission: operator: OR permissions: - - security_monitoring_rules_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/{job_id}/cancel: + - security_monitoring_notification_profiles_read patch: - description: Cancel a historical job. - operationId: CancelHistoricalJob + description: Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated. + operationId: PatchSignalNotificationRule parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Cancel a historical job - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/{job_id}/histsignals: - get: - description: Get a job's hist signals. - operationId: GetSecurityMonitoringHistsignalsByJobId - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - '@john.doe@email.com' + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: '#/components/schemas/PatchNotificationRuleParameters' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - '@test@example.com' + version: 1 + id: aaa-bbb-ccc + type: notification_rules schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK + $ref: '#/components/schemas/NotificationRuleResponse' + description: Notification rule successfully patched. '400': $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a job's hist signals + summary: Patch a signal-based notification rule tags: - Security Monitoring + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - security_monitoring_signals_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. -components: - schemas: - AwsScanOptionsListResponse: - description: Response object that includes a list of AWS scan options. - properties: - data: - description: A list of AWS scan options. - items: - $ref: '#/components/schemas/AwsScanOptionsData' - type: array - type: object - AwsScanOptionsCreateRequest: - description: Request object that includes the scan options to create. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsCreateData' - required: - - data - type: object - AwsScanOptionsResponse: - description: Response object that includes the scan options of an AWS account. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsData' - type: object - AwsScanOptionsUpdateRequest: - description: Request object that includes the scan options to update. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsUpdateData' - required: - - data - type: object - AwsOnDemandListResponse: - description: Response object that includes a list of AWS on demand tasks. - properties: - data: - description: A list of on demand tasks. - items: - $ref: '#/components/schemas/AwsOnDemandData' - type: array - type: object - AwsOnDemandCreateRequest: - description: Request object that includes the on demand task to submit. - properties: - data: - $ref: '#/components/schemas/AwsOnDemandCreateData' - required: - - data - type: object - AwsOnDemandResponse: - description: Response object that includes an AWS on demand task. - properties: - data: - $ref: '#/components/schemas/AwsOnDemandData' - type: object - CreateCustomFrameworkRequest: - description: Request object to create a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkData' - required: - - data - type: object - CreateCustomFrameworkResponse: - description: Response object to create a custom framework. - properties: - data: - $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' - required: - - data - type: object - DeleteCustomFrameworkResponse: - description: Response object to delete a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkMetadata' - required: - - data - type: object - GetCustomFrameworkResponse: - description: Response object to get a custom framework. - properties: - data: - $ref: '#/components/schemas/FullCustomFrameworkData' - required: - - data - type: object - UpdateCustomFrameworkRequest: - description: Request object to update a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkData' - required: - - data - type: object - UpdateCustomFrameworkResponse: - description: Response object to update a custom framework. - properties: - data: - $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' - required: - - data - type: object - GetResourceEvaluationFiltersResponse: - description: The definition of `GetResourceEvaluationFiltersResponse` object. - properties: - data: - $ref: '#/components/schemas/GetResourceEvaluationFiltersResponseData' - required: - - data - type: object - UpdateResourceEvaluationFiltersRequest: - description: Request object to update a resource filter. - properties: - data: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequestData' - required: - - data - type: object - UpdateResourceEvaluationFiltersResponse: - description: The definition of `UpdateResourceEvaluationFiltersResponse` object. - properties: - data: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponseData' - required: - - data - type: object - OrderDirection: - description: The sort direction for results. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASC - - DESC - CsmAgentsResponse: - description: Response object that includes a list of CSM Agents. - properties: - data: - description: A list of Agents. - items: - $ref: '#/components/schemas/CsmAgentData' - type: array - meta: - $ref: '#/components/schemas/CSMAgentsMetadata' - type: object - CsmCloudAccountsCoverageAnalysisResponse: - description: CSM Cloud Accounts Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisData' - type: object - CsmHostsAndContainersCoverageAnalysisResponse: - description: CSM Hosts and Containers Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisData' - type: object - CsmServerlessCoverageAnalysisResponse: - description: CSM Serverless Resources Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisData' - type: object - FindingEvaluation: - description: The evaluation of the finding. - enum: - - pass - - fail - example: pass - type: string - x-enum-varnames: - - PASS - - FAIL - FindingStatus: - description: The status of the finding. - enum: - - critical - - high - - medium - - low - - info - example: critical - type: string - x-enum-varnames: - - CRITICAL - - HIGH - - MEDIUM - - LOW - - INFO - FindingVulnerabilityType: - description: The vulnerability type of the finding. - enum: + - security_monitoring_notification_profiles_write + /api/v2/security/vulnerabilities: + get: + deprecated: true + description: |- + Get a list of vulnerabilities. + + ### Pagination + + Pagination is enabled by default in both `vulnerabilities` and `assets`. The size of the page varies depending on the endpoint and cannot be modified. To automate the request of the next page, you can use the links section in the response. + + This endpoint will return paginated responses. The pages are stored in the links section of the response: + + ```JSON + { + "data": [...], + "meta": {...}, + "links": { + "self": "https://.../api/v2/security/vulnerabilities", + "first": "https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc", + "last": "https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc", + "next": "https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc" + } + } + ``` + + + - `links.previous` is empty if the first page is requested. + - `links.next` is empty if the last page is requested. + + #### Token + + Vulnerabilities can be created, updated or deleted at any point in time. + + Upon the first request, a token is created to ensure consistency across subsequent paginated requests. + + A token is valid only for 24 hours. + + #### First request + + We consider a request to be the first request when there is no `page[token]` parameter. + + The response of this first request contains the newly created token in the `links` section. + + This token can then be used in the subsequent paginated requests. + + *Note: The first request may take longer to complete than subsequent requests.* + + #### Subsequent requests + + Any request containing valid `page[token]` and `page[number]` parameters will be considered a subsequent request. + + If the `token` is invalid, a `404` response will be returned. + + If the page `number` is invalid, a `400` response will be returned. + + The returned `token` is valid for all requests in the pagination sequence. To send paginated requests in parallel, reuse the same `token` and change only the `page[number]` parameter. + + ### Filtering + + The request can include some filter parameters to filter the data to be retrieved. The format of the filter parameters follows the [JSON:API format](https://jsonapi.org/format/#fetching-filtering): `filter[$prop_name]`, where `prop_name` is the property name in the entity being filtered by. + + All filters can include multiple values, where data will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter all vulnerabilities where title is equal to `Title1` OR `Title2`. + + String filters are case sensitive. + + Boolean filters accept `true` or `false` as values. + + Number filters must include an operator as a second filter input: `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: `filter[cvss.base.score][lte]=8`. + + Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and `gte` (>=). + + ### Metadata + + Following [JSON:API format](https://jsonapi.org/format/#document-meta), object including non-standard meta-information. + + This endpoint includes the meta member in the response. For more details on each of the properties included in this section, check the endpoints response tables. + + ```JSON + { + "data": [...], + "meta": { + "total": 1500, + "count": 18732, + "token": "some_token" + }, + "links": {...} + } + ``` + ### Extensions + + Requests may include extensions to modify the behavior of the requested endpoint. The filter parameters follow the [JSON:API format](https://jsonapi.org/extensions/#extensions) format: `ext:$extension_name`, where `extension_name` is the name of the modifier that is being applied. + + Extensions can only include one value: `ext:modifier=value`. + operationId: ListVulnerabilities + parameters: + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal or greater than `1` + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: Filter by vulnerability type. + example: WeakCipher + in: query + name: filter[type] + required: false + schema: + $ref: '#/components/schemas/VulnerabilityType' + - description: Filter by vulnerability base (i.e. from the original advisory) severity score. + example: 5.5 + in: query + name: filter[cvss.base.score][`$op`] + required: false + schema: + format: double + maximum: 10 + minimum: 0 + type: number + - description: Filter by vulnerability base severity. + example: Medium + in: query + name: filter[cvss.base.severity] + required: false + schema: + $ref: '#/components/schemas/VulnerabilitySeverity' + - description: Filter by vulnerability base CVSS vector. + example: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H + in: query + name: filter[cvss.base.vector] + required: false + schema: + type: string + - description: Filter by vulnerability Datadog severity score. + example: 4.3 + in: query + name: filter[cvss.datadog.score][`$op`] + required: false + schema: + format: double + maximum: 10 + minimum: 0 + type: number + - description: Filter by vulnerability Datadog severity. + example: Medium + in: query + name: filter[cvss.datadog.severity] + required: false + schema: + $ref: '#/components/schemas/VulnerabilitySeverity' + - description: Filter by vulnerability Datadog CVSS vector. + example: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:X/RC:X/CR:X/IR:X/AR:X/MAV:L/MAC:H/MPR:L/MUI:N/MS:U/MC:N/MI:N/MA:H + in: query + name: filter[cvss.datadog.vector] + required: false + schema: + type: string + - description: Filter by the status of the vulnerability. + example: Open + in: query + name: filter[status] + required: false + schema: + $ref: '#/components/schemas/VulnerabilityStatus' + - description: Filter by the tool of the vulnerability. + example: SCA + in: query + name: filter[tool] + required: false + schema: + $ref: '#/components/schemas/VulnerabilityTool' + - description: Filter by library name. + example: linux-aws-5.15 + in: query + name: filter[library.name] + required: false + schema: + type: string + - description: Filter by library version. + example: 5.15.0 + in: query + name: filter[library.version] + required: false + schema: + type: string + - description: Filter by advisory ID. + example: CVE-2023-0615 + in: query + name: filter[advisory.id] + required: false + schema: + type: string + - description: Filter by exploitation probability. + example: false + in: query + name: filter[risks.exploitation_probability] + required: false + schema: + type: boolean + - description: Filter by POC exploit availability. + example: false + in: query + name: filter[risks.poc_exploit_available] + required: false + schema: + type: boolean + - description: Filter by public exploit availability. + example: false + in: query + name: filter[risks.exploit_available] + required: false + schema: + type: boolean + - description: Filter by vulnerability [EPSS](https://www.first.org/epss/) severity score. + example: 0.00042 + in: query + name: filter[risks.epss.score][`$op`] + required: false + schema: + format: double + maximum: 1 + minimum: 0 + type: number + - description: Filter by vulnerability [EPSS](https://www.first.org/epss/) severity. + example: Low + in: query + name: filter[risks.epss.severity] + required: false + schema: + $ref: '#/components/schemas/VulnerabilitySeverity' + - description: Filter by language. + example: ubuntu + in: query + name: filter[language] + required: false + schema: + type: string + - description: Filter by ecosystem. + example: Deb + in: query + name: filter[ecosystem] + required: false + schema: + $ref: '#/components/schemas/VulnerabilityEcosystem' + - description: Filter by vulnerability location. + example: com.example.Class:100 + in: query + name: filter[code_location.location] + required: false + schema: + type: string + - description: Filter by vulnerability file path. + example: src/Class.java:100 + in: query + name: filter[code_location.file_path] + required: false + schema: + type: string + - description: Filter by method. + example: FooBar + in: query + name: filter[code_location.method] + required: false + schema: + type: string + - description: Filter by fix availability. + example: false + in: query + name: filter[fix_available] + required: false + schema: + type: boolean + - description: Filter by vulnerability `repo_digest` (when the vulnerability is related to `Image` asset). + example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 + in: query + name: filter[repo_digests] + required: false + schema: + type: string + - description: Filter by origin. + example: agentless-scanner + in: query + name: filter[origin] + required: false + schema: + type: string + - description: Filter for whether the vulnerability affects a running kernel (for vulnerabilities related to a `Host` asset). + example: true + in: query + name: filter[running_kernel] + required: false + schema: + type: boolean + - description: Filter by asset name. This field supports the usage of wildcards (*). + example: datadog-agent + in: query + name: filter[asset.name] + required: false + schema: + type: string + - description: Filter by asset type. + example: Host + in: query + name: filter[asset.type] + required: false + schema: + $ref: '#/components/schemas/AssetType' + - description: Filter by the first version of the asset this vulnerability has been detected on. + example: v1.15.1 + in: query + name: filter[asset.version.first] + required: false + schema: + type: string + - description: Filter by the last version of the asset this vulnerability has been detected on. + example: v1.15.1 + in: query + name: filter[asset.version.last] + required: false + schema: + type: string + - description: Filter by the repository url associated to the asset. + example: github.com/DataDog/datadog-agent.git + in: query + name: filter[asset.repository_url] + required: false + schema: + type: string + - description: Filter whether the asset is in production or not. + example: false + in: query + name: filter[asset.risks.in_production] + required: false + schema: + type: boolean + - description: Filter whether the asset is under attack or not. + example: false + in: query + name: filter[asset.risks.under_attack] + required: false + schema: + type: boolean + - description: Filter whether the asset is publicly accessible or not. + example: false + in: query + name: filter[asset.risks.is_publicly_accessible] + required: false + schema: + type: boolean + - description: Filter whether the asset is publicly accessible or not. + example: false + in: query + name: filter[asset.risks.has_privileged_access] + required: false + schema: + type: boolean + - description: Filter whether the asset has access to sensitive data or not. + example: false + in: query + name: filter[asset.risks.has_access_to_sensitive_data] + required: false + schema: + type: boolean + - description: Filter by asset environments. + example: staging + in: query + name: filter[asset.environments] + required: false + schema: + type: string + - description: Filter by asset teams. + example: compute + in: query + name: filter[asset.teams] + required: false + schema: + type: string + - description: Filter by asset architecture. + example: arm64 + in: query + name: filter[asset.arch] + required: false + schema: + type: string + - description: Filter by asset operating system name. + example: ubuntu + in: query + name: filter[asset.operating_system.name] + required: false + schema: + type: string + - description: Filter by asset operating system version. + example: '24.04' + in: query + name: filter[asset.operating_system.version] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/ListVulnerabilitiesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Bad request: The server cannot process the request due to invalid syntax in the request.' + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Forbidden: Access denied' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Not found: There is no request associated with the provided token.' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List vulnerabilities + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - appsec_vm_read + x-sunset: '2027-01-01' + x-unstable: '**Note**: This endpoint is deprecated. See the [List Security Findings endpoint](https://docs.datadoghq.com/api/latest/security-monitoring/#list-security-findings).' + post: + description: |- + Import security vulnerabilities from an external scanner in CycloneDX 1.5 format. + + The payload is validated against the CycloneDX 1.5 JSON schema and the following + additional constraints: + + - `metadata`, `metadata.component`, and `metadata.component.name` are required. + - `metadata.tools.components` must contain exactly one element with a `name` field. + - `components` cannot be empty. Each component requires `bom-ref`, `type`, `name`, and `version`. + - When `type` is `library`, `purl` is required and must be a valid PURL. + - When `type` is `operating-system`, `name` must be one of the supported OS values: + `alma`, `alpine`, `amazon`, `azurelinux`, `bottlerocket`, `cbl-mariner`, `chainguard`, + `centos`, `debian`, `fedora`, `opensuse`, `opensuse-leap`, `opensuse-tumbleweed`, + `oracle`, `photon`, `redhat`, `rocky`, `slem`, `sles`, `ubuntu`, `wolfi`, `windows`, `macos`. + - `vulnerabilities` cannot be empty. Each vulnerability requires `id`, exactly one `ratings` entry, + and at least one `affects` entry. + - Each `affects[].ref` must match a `bom-ref` value in `components`. + operationId: ImportSecurityVulnerabilities + requestBody: + content: + application/json: + examples: + default: + value: + bomFormat: CycloneDX + components: + - bom-ref: a3390fca-c315-41ae-ae05-af5e7859cdee + name: lodash + purl: pkg:npm/lodash@4.17.21 + type: library + version: 4.17.21 + metadata: + component: + name: i-12345 + type: operating-system + tools: + components: + - name: my-scanner + type: application + specVersion: '1.5' + version: 1 + vulnerabilities: + - affects: + - ref: a3390fca-c315-41ae-ae05-af5e7859cdee + description: Sample vulnerability detected in the application. + id: CVE-2021-1234 + ratings: + - score: 9 + severity: high + vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N + schema: + $ref: '#/components/schemas/CycloneDXBom' + required: true + responses: + '200': + description: Vulnerabilities accepted successfully. + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_findings_write + summary: Import security vulnerabilities + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_findings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security/vulnerabilities/notification_rules: + get: + description: Returns the list of notification rules for security vulnerabilities. + operationId: GetVulnerabilityNotificationRules + responses: + '200': + $ref: '#/components/responses/NotificationRulesList' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get the list of vulnerability notification rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_read + post: + description: Create a new notification rule for security vulnerabilities and return the created rule. + operationId: CreateVulnerabilityNotificationRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - '@john.doe@email.com' + time_aggregation: 86400 + type: notification_rules + schema: + $ref: '#/components/schemas/CreateNotificationRuleParameters' + description: |- + The body of the create notification rule request is composed of the rule type and the rule attributes: + the rule name, the selectors, the notification targets, and the rule enabled status. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - misconfiguration + severities: + - critical + trigger_source: security_findings + targets: + - '@test@example.com' + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: '#/components/schemas/NotificationRuleResponse' + description: Successfully created the notification rule. + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a new vulnerability-based notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security/vulnerabilities/notification_rules/{id}: + delete: + description: Delete a notification rule for security vulnerabilities. + operationId: DeleteVulnerabilityNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + responses: + '204': + description: Rule successfully deleted. + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a vulnerability-based notification rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_write + get: + description: Get the details of a notification rule for security vulnerabilities. + operationId: GetVulnerabilityNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - misconfiguration + severities: + - critical + trigger_source: security_findings + targets: + - '@test@example.com' + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: '#/components/schemas/NotificationRuleResponse' + description: Notification rule details. + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get details of a vulnerability notification rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_read + patch: + description: Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated. + operationId: PatchVulnerabilityNotificationRule + parameters: + - description: ID of the notification rule. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule + selectors: + query: (source:production_service OR env:prod) + rule_types: + - misconfiguration + - attack_path + severities: + - critical + trigger_source: security_findings + targets: + - '@john.doe@email.com' + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: '#/components/schemas/PatchNotificationRuleParameters' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: 1722439510282 + created_by: + handle: example-handle + name: Example Name + enabled: true + modified_at: 1722439510282 + modified_by: + handle: example-handle + name: Example Name + name: Rule 1 + selectors: + query: env:prod + rule_types: + - misconfiguration + severities: + - critical + trigger_source: security_findings + targets: + - '@test@example.com' + time_aggregation: 86400 + version: 1 + id: aaa-bbb-ccc + type: notification_rules + schema: + $ref: '#/components/schemas/NotificationRuleResponse' + description: Notification rule successfully patched. + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '422': + $ref: '#/components/responses/UnprocessableEntityResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a vulnerability-based notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security/vulnerable-assets: + get: + description: |- + Get a list of vulnerable assets. + + ### Pagination + + Please review the [Pagination section for the "List Vulnerabilities"](#pagination) endpoint. + + ### Filtering + + Please review the [Filtering section for the "List Vulnerabilities"](#filtering) endpoint. + + ### Metadata + + Please review the [Metadata section for the "List Vulnerabilities"](#metadata) endpoint. + operationId: ListVulnerableAssets + parameters: + - description: Its value must come from the `links` section of the response of the first request. Do not manually edit it. + example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + in: query + name: page[token] + required: false + schema: + type: string + - description: The page number to be retrieved. It should be equal or greater than `1` + example: 1 + in: query + name: page[number] + required: false + schema: + format: int64 + minimum: 1 + type: integer + - description: Filter by name. This field supports the usage of wildcards (*). + example: datadog-agent + in: query + name: filter[name] + required: false + schema: + type: string + - description: Filter by type. + example: Host + in: query + name: filter[type] + required: false + schema: + $ref: '#/components/schemas/AssetType' + - description: Filter by the first version of the asset since it has been vulnerable. + example: v1.15.1 + in: query + name: filter[version.first] + required: false + schema: + type: string + - description: Filter by the last detected version of the asset. + example: v1.15.1 + in: query + name: filter[version.last] + required: false + schema: + type: string + - description: Filter by the repository url associated to the asset. + example: github.com/DataDog/datadog-agent.git + in: query + name: filter[repository_url] + required: false + schema: + type: string + - description: Filter whether the asset is in production or not. + example: false + in: query + name: filter[risks.in_production] + required: false + schema: + type: boolean + - description: Filter whether the asset (Service) is under attack or not. + example: false + in: query + name: filter[risks.under_attack] + required: false + schema: + type: boolean + - description: Filter whether the asset (Host) is publicly accessible or not. + example: false + in: query + name: filter[risks.is_publicly_accessible] + required: false + schema: + type: boolean + - description: Filter whether the asset (Host) has privileged access or not. + example: false + in: query + name: filter[risks.has_privileged_access] + required: false + schema: + type: boolean + - description: Filter whether the asset (Host) has access to sensitive data or not. + example: false + in: query + name: filter[risks.has_access_to_sensitive_data] + required: false + schema: + type: boolean + - description: Filter by environment. + example: staging + in: query + name: filter[environments] + required: false + schema: + type: string + - description: Filter by teams. + example: compute + in: query + name: filter[teams] + required: false + schema: + type: string + - description: Filter by architecture. + example: arm64 + in: query + name: filter[arch] + required: false + schema: + type: string + - description: Filter by operating system name. + example: ubuntu + in: query + name: filter[operating_system.name] + required: false + schema: + type: string + - description: Filter by operating system version. + example: '24.04' + in: query + name: filter[operating_system.version] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/ListVulnerableAssetsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Bad request: The server cannot process the request due to invalid syntax in the request.' + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Forbidden: Access denied' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: 'Not found: There is no request associated with the provided token.' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List vulnerable assets + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - appsec_vm_read + x-unstable: |- + **Note**: This endpoint is a private preview. + If you are interested in accessing this API, [fill out this form](https://forms.gle/kMYC1sDr6WDUBDsx9). + /api/v2/security_monitoring/cloud_workload_security/agent_rules: + get: + description: |- + Get the list of agent rules. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: ListCloudWorkloadSecurityAgentRules + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRulesListResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get all Workload Protection agent rules (US1-FED) + tags: + - CSM Threats + x-permission: + operator: OR + permissions: + - security_monitoring_cws_agent_rules_read + post: + description: |- + Create a new agent rule with the given parameters. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: CreateCloudWorkloadSecurityAgentRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + type: agent_rule + schema: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' + description: The definition of the new agent rule + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a Workload Protection agent rule (US1-FED) + tags: + - CSM Threats + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_cws_agent_rules_write + /api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id}: + delete: + description: |- + Delete a specific agent rule. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: DeleteCloudWorkloadSecurityAgentRule + parameters: + - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a Workload Protection agent rule (US1-FED) + tags: + - CSM Threats + x-permission: + operator: OR + permissions: + - security_monitoring_cws_agent_rules_write + get: + description: |- + Get the details of a specific agent rule. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: GetCloudWorkloadSecurityAgentRule + parameters: + - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a Workload Protection agent rule (US1-FED) + tags: + - CSM Threats + x-permission: + operator: OR + permissions: + - security_monitoring_cws_agent_rules_read + patch: + description: |- + Update a specific agent rule. + Returns the agent rule object when the request is successful. + + **Note**: This endpoint should only be used for the Government (US1-FED) site. + operationId: UpdateCloudWorkloadSecurityAgentRule + parameters: + - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + id: 3dd-0uc-h1s + type: agent_rule + schema: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' + description: New definition of the agent rule + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My Agent rule + enabled: true + expression: exec.file.name == "sh" + name: my_agent_rule + id: abc-123 + type: agent_rule + schema: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a Workload Protection agent rule (US1-FED) + tags: + - CSM Threats + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_cws_agent_rules_write + /api/v2/security_monitoring/configuration/critical_assets: + get: + description: Get the list of all critical assets. + operationId: ListSecurityMonitoringCriticalAssets + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_read + summary: Get all critical assets + tags: + - Security Monitoring + post: + description: Create a new critical asset. + operationId: CreateSecurityMonitoringCriticalAsset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:(log_detection OR signal_correlation OR workload_security OR application_security) source:cloudtrail + severity: increase + tags: + - team:database + - source:cloudtrail + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetCreateRequest' + description: The definition of the new critical asset. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_write + summary: Create a critical asset + tags: + - Security Monitoring + x-codegen-request-body-name: body + /api/v2/security_monitoring/configuration/critical_assets/rules/{rule_id}: + get: + description: Get the list of critical assets that affect a specific existing rule by the rule's ID. + operationId: GetCriticalAssetsAffectingRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_read + summary: Get critical assets affecting a specific rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id}: + delete: + description: Delete a specific critical asset. + operationId: DeleteSecurityMonitoringCriticalAsset + parameters: + - $ref: '#/components/parameters/SecurityMonitoringCriticalAssetID' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_write + summary: Delete a critical asset + tags: + - Security Monitoring + get: + description: Get the details of a specific critical asset. + operationId: GetSecurityMonitoringCriticalAsset + parameters: + - $ref: '#/components/parameters/SecurityMonitoringCriticalAssetID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_read + summary: Get a critical asset + tags: + - Security Monitoring + patch: + description: Update a specific critical asset. + operationId: UpdateSecurityMonitoringCriticalAsset + parameters: + - $ref: '#/components/parameters/SecurityMonitoringCriticalAssetID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + tags: + - technique:T1110-brute-force + - source:cloudtrail + version: 1 + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetUpdateRequest' + description: New definition of the critical asset. Supports partial updates. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + query: security:monitoring + rule_query: type:log_detection source:cloudtrail + severity: increase + version: 1 + id: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: critical_assets + schema: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_critical_assets_write + summary: Update a critical asset + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/integration_config: + get: + description: |- + List the entity context sync configurations for Cloud SIEM. Each configuration connects Cloud SIEM + to an external source that provides entities (for example, users from an identity provider) for use + in signals and the entity explorer. + operationId: ListSecurityMonitoringIntegrationConfigs + parameters: + - description: Filter the entity context sync configurations by source type. + in: query + name: filter[integration_type] + required: false + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationType' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2026-05-01T12:00:00Z' + domain: siem-test.com + enabled: true + integration_type: GOOGLE_WORKSPACE + modified_at: '2026-05-01T12:00:00Z' + name: My GWS Integration + settings: + setting1: value1 + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: List entity context sync configurations + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new entity context sync configuration so Cloud SIEM can ingest entities from an external + source. The credentials provided in `secrets` are validated against the source before the configuration + is stored and never returned in subsequent responses. + operationId: CreateSecurityMonitoringIntegrationConfig + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain: siem-test.com + integration_type: GOOGLE_WORKSPACE + name: My GWS Integration + secrets: + admin_email: test@example.com + settings: + setting1: value1 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigCreateRequest' + description: The definition of the new integration configuration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-01T12:00:00Z' + domain: siem-test.com + enabled: true + integration_type: GOOGLE_WORKSPACE + modified_at: '2026-05-01T12:00:00Z' + name: My GWS Integration + settings: + setting1: value1 + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Create an entity context sync configuration + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/entra_id/azure_app_registrations: + get: + description: |- + Get the Azure App Registrations discovered for the organization and whether at least one of them has + resource collection enabled, which is a prerequisite for activating the Entra ID entity context sync integration. + operationId: GetEntraIdAzureAppRegistrations + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + azure_app_registrations: + - client_id: 66666666-7777-8888-9999-000000000000 + error_count: 0 + resource_collection_enabled: true + subscription_count: 3 + tenant_id: 11111111-2222-3333-4444-555555555555 + has_valid_prerequisite: true + integration_id: 11111111-2222-3333-4444-555555555555 + is_enabled: true + subscribed_at: '2026-05-01T12:00:00Z' + id: '123456' + type: entra_id_azure_app_registrations + schema: + $ref: '#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Get Entra ID Azure App Registration prerequisites + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/validate: + post: + description: |- + Validate a set of credentials against the external entity source before creating a sync configuration. + Returns a 200 status code if the credentials are valid. + operationId: ValidateSecurityMonitoringIntegrationCredentials + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain: siem-test.com + integration_type: GOOGLE_WORKSPACE + secrets: + admin_email: test@example.com + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationCredentialsValidateRequest' + description: The credentials to validate. + required: true + responses: + '200': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Validate entity context sync credentials + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_config_id}: + delete: + description: |- + Delete an entity context sync configuration. Cloud SIEM stops ingesting entities from this source, + and the credentials stored for the configuration are removed from the secrets store. + operationId: DeleteSecurityMonitoringIntegrationConfig + parameters: + - $ref: '#/components/parameters/SecurityMonitoringIntegrationConfigID' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Delete an entity context sync configuration + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of a specific entity context sync configuration. + operationId: GetSecurityMonitoringIntegrationConfig + parameters: + - $ref: '#/components/parameters/SecurityMonitoringIntegrationConfigID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-01T12:00:00Z' + domain: siem-test.com + enabled: true + integration_type: GOOGLE_WORKSPACE + modified_at: '2026-05-01T12:00:00Z' + name: My GWS Integration + settings: + setting1: value1 + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Get an entity context sync configuration + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing entity context sync configuration. Supports partial updates; only the fields provided in the request body are modified. + operationId: UpdateSecurityMonitoringIntegrationConfig + parameters: + - $ref: '#/components/parameters/SecurityMonitoringIntegrationConfigID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + name: My GWS Integration (renamed) + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigUpdateRequest' + description: The fields to update on the integration configuration. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-01T12:00:00Z' + domain: siem-test.com + enabled: false + integration_type: GOOGLE_WORKSPACE + modified_at: '2026-05-08T12:00:00Z' + name: My GWS Integration (renamed) + settings: + setting1: value1 + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Update an entity context sync configuration + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_config_id}/validate: + post: + description: |- + Validate the credentials currently stored on an existing entity context sync configuration. + Returns a 200 status code if the credentials are still valid against the external entity source. + operationId: ValidateSecurityMonitoringIntegrationConfig + parameters: + - $ref: '#/components/parameters/SecurityMonitoringIntegrationConfigID' + responses: + '200': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: Validate an entity context sync configuration + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - integrations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_type}/activate: + post: + description: |- + Activate an entity context sync integration for a source type that does not require manually + supplied credentials (for example, Entra ID). If an integration of this type already exists, + it is returned (re-enabling it first if it was disabled) instead of creating a duplicate. + operationId: ActivateIntegration + parameters: + - description: The integration type to activate (for example, `entra_id`). + in: path + name: integration_type + required: true + schema: + example: entra_id + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: My Entra ID Integration + type: activate_entra_id_request + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationActivateRequest' + description: Optional configuration overrides for the integration to activate. + required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-01T12:00:00Z' + domain: default + enabled: true + integration_type: ENTRA_ID + modified_at: '2026-05-01T12:00:00Z' + name: My Entra ID Integration + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Activate an entity context sync integration + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/integration_config/{integration_type}/deactivate: + post: + description: Deactivate all active entity context sync integrations of the given source type (for example, Entra ID). + operationId: DeactivateIntegration + parameters: + - description: The integration type to deactivate (for example, `entra_id`). + in: path + name: integration_type + required: true + schema: + example: entra_id + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-01T12:00:00Z' + domain: default + enabled: false + integration_type: ENTRA_ID + modified_at: '2026-05-08T12:00:00Z' + name: My Entra ID Integration + state: valid + id: 11111111-2222-3333-4444-555555555555 + type: integration_config + schema: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - manage_integrations + summary: Deactivate an entity context sync integration + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - manage_integrations + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/configuration/notification_rules/send_notification_preview: + post: + description: Send a notification preview to test that a notification rule's targets are properly configured. + operationId: SendSecurityMonitoringNotificationPreview + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Rule 1 + selectors: + query: env:prod + rule_types: + - log_detection + severities: + - critical + trigger_source: security_signals + targets: + - '@john.doe@email.com' + type: notification_rules + schema: + $ref: '#/components/schemas/CreateNotificationRuleParameters' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + preview_results: + - notification_status: DEFAULT + rule_type: log_detection + id: rka-loa-zwu + type: notification_preview_response + schema: + $ref: '#/components/schemas/NotificationRulePreviewResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_notification_profiles_write + summary: Test a notification rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_notification_profiles_write + /api/v2/security_monitoring/configuration/security_filters: + get: + description: Get the list of configured security filters with their definitions. + operationId: ListSecurityFilters + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: '#/components/schemas/SecurityFiltersResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get all security filters + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + post: + description: |- + Create a security filter. + + See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) + for more examples. + operationId: CreateSecurityFilter + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_enabled: true + name: Custom security filter + query: service:api + type: security_filters + schema: + $ref: '#/components/schemas/SecurityFilterCreateRequest' + description: The definition of the new security filter. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: '#/components/schemas/SecurityFilterResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Create a security filter + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + /api/v2/security_monitoring/configuration/security_filters/versions: + get: + description: |- + Get the configured security filters at each historical version of the configuration. + Each entry in the response represents the set of all security filters at a given version, + ordered from the most recent version to the oldest. + operationId: ListSecurityFilterVersions + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + date: 1758177253469 + filters: + - exclusion_filters: [] + filtered_data_type: logs + id: '123' + is_builtin: false + is_enabled: true + name: Test Security Filter + query: source:test + version: 1 + version: 1 + id: '1' + type: security_filters_configuration + schema: + $ref: '#/components/schemas/SecurityFilterVersionsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get the version history of security filters + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + /api/v2/security_monitoring/configuration/security_filters/{security_filter_id}: + delete: + description: Delete a specific security filter. + operationId: DeleteSecurityFilter + parameters: + - $ref: '#/components/parameters/SecurityFilterID' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Delete a security filter + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + get: + description: |- + Get the details of a specific security filter. + + See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) + for more examples. + operationId: GetSecurityFilter + parameters: + - $ref: '#/components/parameters/SecurityFilterID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: '#/components/schemas/SecurityFilterResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get a security filter + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + patch: + description: |- + Update a specific security filter. + Returns the security filter object when the request is successful. + operationId: UpdateSecurityFilter + parameters: + - $ref: '#/components/parameters/SecurityFilterID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: [] + filtered_data_type: logs + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + type: security_filters + schema: + $ref: '#/components/schemas/SecurityFilterUpdateRequest' + description: New definition of the security filter. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + exclusion_filters: + - name: Exclude staging + query: source:staging + filtered_data_type: logs + is_builtin: false + is_enabled: true + name: Custom security filter + query: service:api + version: 1 + id: 3dd-0uc-h1s + type: security_filters + schema: + $ref: '#/components/schemas/SecurityFilterResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Update a security filter + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + /api/v2/security_monitoring/configuration/suppressions: + get: + description: Get the list of all suppression rules. + operationId: ListSecurityMonitoringSuppressions + parameters: + - description: Query string. + in: query + name: query + required: false + schema: + type: string + - description: Attribute used to sort the list of suppression rules. Prefix with `-` to sort in descending order. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionSort' + - description: Size for a given page. Use `-1` to return all items. + in: query + name: page[size] + required: false + schema: + default: -1 + example: 10 + format: int64 + type: integer + - $ref: '#/components/parameters/PageNumber' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + meta: + page: + pageNumber: 0 + pageSize: 10 + totalCount: 1 + schema: + $ref: '#/components/schemas/SecurityMonitoringPaginatedSuppressionsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get all suppression rules + tags: + - Security Monitoring + post: + description: Create a new suppression rule. + operationId: CreateSecurityMonitoringSuppression + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_exclusion_query: source:cloudtrail account_id:12345 + description: This rule suppresses low-severity signals in staging environments. + enabled: true + expiration_date: 1703187336000 + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + start_date: 1703187336000 + suppression_query: env:staging status:low + tags: + - technique:T1110-brute-force + - source:cloudtrail + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' + description: The definition of the new suppression rule. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + id: abc-123 + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Create a suppression rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + /api/v2/security_monitoring/configuration/suppressions/rules: + post: + description: Get the list of suppressions that would affect a rule. + operationId: GetSuppressionsAffectingFutureRule + requestBody: + content: + application/json: + examples: + default: + value: + calculatedFields: + - expression: '@request_end_timestamp - @request_start_timestamp' + name: response_time + cases: [] + filters: + - action: require + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: '' + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + regoRule: + policy: |- + package datadog + + import data.datadog.output as dd_output + import future.keywords.contains + import future.keywords.if + import future.keywords.in + + eval(resource) = "skip" if { + # Logic that evaluates to true if the resource should be skipped + true + } else = "pass" { + # Logic that evaluates to true if the resource is compliant + true + } else = "fail" { + # Logic that evaluates to true if the resource is not compliant + true + } + + # This part remains unchanged for all rules + results contains result if { + some resource in input.resources[input.main_resource_type] + result := dd_output.format(resource, eval(resource)) + } + resourceTypes: + - gcp_iam_service_account + - gcp_iam_policy + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + rootQueries: + - query: source:cloudtrail + queries: [] + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: '2025-07-14T12:00:00' + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: api_security + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + id: abc-123 + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get suppressions affecting future rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/suppressions/rules/{rule_id}: + get: + description: Get the list of suppressions that affect a specific existing rule by its ID. + operationId: GetSuppressionsAffectingRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get suppressions affecting a specific rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/suppressions/validation: + post: + description: Validate a suppression rule. + operationId: ValidateSecurityMonitoringSuppression + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_exclusion_query: source:cloudtrail account_id:12345 + description: This rule suppresses low-severity signals in staging environments. + enabled: true + expiration_date: 1703187336000 + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + start_date: 1703187336000 + suppression_query: env:staging status:low + tags: + - technique:T1110-brute-force + - source:cloudtrail + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' + required: true + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Validate a suppression rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_suppressions_write + /api/v2/security_monitoring/configuration/suppressions/{suppression_id}: + delete: + description: Delete a specific suppression rule. + operationId: DeleteSecurityMonitoringSuppression + parameters: + - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Delete a suppression rule + tags: + - Security Monitoring + get: + description: Get the details of a specific suppression rule. + operationId: GetSecurityMonitoringSuppression + parameters: + - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get a suppression rule + tags: + - Security Monitoring + patch: + description: Update a specific suppression rule. + operationId: UpdateSecurityMonitoringSuppression + parameters: + - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + data_exclusion_query: source:cloudtrail account_id:12345 + description: This rule suppresses low-severity signals in staging environments. + enabled: true + expiration_date: 1703187336000 + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + start_date: 1703187336000 + suppression_query: env:staging status:low + tags: + - technique:T1110-brute-force + - source:cloudtrail + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateRequest' + description: New definition of the suppression rule. Supports partial updates. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + editable: true + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + version: 1 + id: 3dd-0uc-h1s + type: suppressions + schema: + $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConcurrentModificationResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_write + summary: Update a suppression rule + tags: + - Security Monitoring + /api/v2/security_monitoring/configuration/suppressions/{suppression_id}/version_history: + get: + description: Get a suppression's version history. + operationId: GetSuppressionVersionHistory + parameters: + - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + data: + '1': + changes: [] + suppression: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + version: 1 + id: 3dd-0uc-h1s + type: suppression_version_history + schema: + $ref: '#/components/schemas/GetSuppressionVersionHistoryResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + summary: Get a suppression's version history + tags: + - Security Monitoring + /api/v2/security_monitoring/content_packs/states: + get: + description: |- + Get the activation state, integration status, and log collection status + for all Cloud SIEM content packs. + operationId: GetContentPacksStates + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + details: + cp_activation: activated + data_last_seen: within_24_hours + filters_configured: true + integration_installed_status: installed + logs_seen_from_any_index: true + siem_index_incorrect: false + type: logs + status: active + id: aws-cloudtrail + type: content_pack_state + meta: + cloud_siem_index_incorrect: false + sku: add_on_2024 + schema: + $ref: '#/components/schemas/SecurityMonitoringContentPackStatesResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + summary: Get content pack states + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + - logs_read_index_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/content_packs/{content_pack_id}/activate: + put: + description: |- + Activate a Cloud SIEM content pack. This operation configures the necessary + log filters or security filters depending on the pricing model and updates the content + pack activation state. + operationId: ActivateContentPack + parameters: + - description: The ID of the content pack to activate (for example, `aws-cloudtrail`). + in: path + name: content_pack_id + required: true + schema: + example: aws-cloudtrail + type: string + responses: + '202': + description: Accepted + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Activate content pack + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/content_packs/{content_pack_id}/deactivate: + put: + description: |- + Deactivate a Cloud SIEM content pack. This operation removes the content pack's + configuration from log filters or security filters and updates the content pack activation state. + operationId: DeactivateContentPack + parameters: + - description: The ID of the content pack to deactivate (for example, `aws-cloudtrail`). + in: path + name: content_pack_id + required: true + schema: + example: aws-cloudtrail + type: string + responses: + '202': + description: Accepted + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + summary: Deactivate content pack + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets: + get: + description: |- + List all Cloud SIEM datasets available to the organization, including both + customer-defined datasets and Datadog out-of-the-box datasets. + operationId: ListSecurityMonitoringDatasets + parameters: + - description: Size for a given page. The maximum allowed value is 100. + in: query + name: page[size] + required: false + schema: + default: 50 + example: 50 + format: int64 + type: integer + - description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 1 + example: 1 + format: int64 + type: integer + - description: Attribute used to sort datasets. Prefix with `-` to sort in descending order. + in: query + name: sort + required: false + schema: + example: name + type: string + - description: A search query to filter datasets by name or description. + in: query + name: filter[query] + required: false + schema: + example: sample_dataset + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: '2025-03-20T10:00:00Z' + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: '*' + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: '2025-03-20T10:00:00Z' + name: sample_dataset + updatedByHandle: null + updatedByName: null + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + meta: + totalCount: 1 + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetsListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: List datasets + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Create a new Cloud SIEM dataset. A dataset bundles a data source, a set of + indexes, and a search query that can be referenced from detection rules. + operationId: CreateSecurityMonitoringDataset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: '*' + description: A sample dataset used for detection rules. + type: datasetCreate + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetCreateResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Create a dataset + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + - security_monitoring_dataset_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/dependencies: + post: + description: |- + Return, for each of the requested datasets, the list of detection rules that depend + on it. Useful for understanding the impact of updating or deleting a dataset. + operationId: BatchGetSecurityMonitoringDatasetDependencies + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + datasetIds: + - 123e4567-e89b-12d3-a456-426614174000 + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependenciesRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + count: 0 + datasetId: 123e4567-e89b-12d3-a456-426614174000 + ids: [] + resource_type: security_detection_rule + id: 123e4567-e89b-12d3-a456-426614174000 + type: datasetDependents + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependenciesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get dataset dependencies + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/{dataset_id}: + delete: + description: |- + Delete a Cloud SIEM dataset. Out-of-the-box datasets cannot be deleted and + deleting a dataset that is referenced by a detection rule is rejected. + operationId: DeleteSecurityMonitoringDataset + parameters: + - $ref: '#/components/parameters/SecurityMonitoringDatasetID' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Delete a dataset + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + - security_monitoring_dataset_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the current version of a Cloud SIEM dataset by ID. + operationId: GetSecurityMonitoringDataset + parameters: + - $ref: '#/components/parameters/SecurityMonitoringDatasetID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2025-03-20T10:00:00Z' + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: '*' + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: '2025-03-20T10:00:00Z' + name: sample_dataset + updatedByHandle: null + updatedByName: null + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a dataset + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: |- + Update an existing Cloud SIEM dataset. The current version of the dataset can be + provided to detect concurrent modifications. + operationId: UpdateSecurityMonitoringDataset + parameters: + - $ref: '#/components/parameters/SecurityMonitoringDatasetID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: '*' + description: An updated description for the dataset. + version: 1 + type: datasetUpdate + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetUpdateRequest' + required: true + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Update a dataset + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + - security_monitoring_dataset_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/{dataset_id}/version/{version}: + get: + description: Retrieve a specific historical version of a Cloud SIEM dataset. + operationId: GetSecurityMonitoringDatasetByVersion + parameters: + - $ref: '#/components/parameters/SecurityMonitoringDatasetID' + - description: The version number of the dataset to retrieve. + in: path + name: version + required: true + schema: + example: 1 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2025-03-20T10:00:00Z' + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: '*' + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: '2025-03-20T10:00:00Z' + name: sample_dataset + updatedByHandle: null + updatedByName: null + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a dataset at a specific version + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/datasets/{dataset_id}/version_history: + get: + description: Retrieve the version history of a Cloud SIEM dataset, including the changes made at each version. + operationId: GetSecurityMonitoringDatasetVersionHistory + parameters: + - $ref: '#/components/parameters/SecurityMonitoringDatasetID' + - description: Size for a given page. The maximum allowed value is 100. + in: query + name: page[size] + required: false + schema: + default: 10 + example: 10 + format: int64 + type: integer + - description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + data: + '1': + changes: [] + dataset: + createdAt: '2025-03-20T10:00:00Z' + createdByHandle: bruce.lee + createdByName: Bruce Lee + definition: + columns: + - column: message + type: string + data_source: logs + indexes: + - main + name: sample_dataset + search: + query: '*' + description: A sample dataset used for detection rules. + id: 123e4567-e89b-12d3-a456-426614174000 + isDefault: false + isDeprecated: false + modifiedAt: '2025-03-20T10:00:00Z' + name: sample_dataset + updatedByHandle: null + updatedByName: null + version: 1 + id: 123e4567-e89b-12d3-a456-426614174000 + type: dataset_version_history + schema: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionHistoryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get the version history of a dataset + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + - security_monitoring_dataset_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/entity_context: + get: + description: |- + Search the Cloud SIEM entity context store for entities that match a query, and return the historical + revisions of each entity in the requested time range. The endpoint can either return revisions across an + interval (`from` / `to`) or the snapshot of each entity at a single point in time (`as_of`); the two modes + are mutually exclusive. + operationId: GetEntityContext + parameters: + - description: A free-text query (for example, an email address or principal ID) used to filter the entities returned. + example: user@example.com + in: query + name: query + required: false + schema: + type: string + - description: |- + The start of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now-7d`). + Defaults to `now-7d`. Ignored when `as_of` is set. + in: query + name: from + required: false + schema: + default: now-7d + example: now-7d + type: string + - description: |- + The end of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now`). + Defaults to `now`. Ignored when `as_of` is set. + in: query + name: to + required: false + schema: + default: now + example: now + type: string + - description: |- + A point in time at which to query the entity revisions, as an RFC3339 timestamp, a Unix timestamp + (in seconds), or a relative time (for example, `now-1d`). When set, `from` and `to` are ignored. + Cannot be combined with custom `from` / `to` values. + example: now-1d + in: query + name: as_of + required: false + schema: + type: string + - description: The maximum number of entities to return. + in: query + name: limit + required: false + schema: + default: 250 + example: 100 + format: int64 + type: integer + - description: An opaque token used to fetch the next page of results, as returned in `meta.page.next_token` of a previous response. + in: query + name: page_token + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + revisions: + - attributes: + accounts: + - linked-account-123 + display_name: Test User + email: user@example.com + principal_id: user@example.com + first_seen_at: '2026-04-01T00:00:00Z' + last_seen_at: '2026-05-01T00:00:00Z' + id: user@example.com + type: siem_entity_identity + meta: + page: + next_token: '' + total_count: 1 + schema: + $ref: '#/components/schemas/EntityContextResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - siem_entities_read + summary: Get entity context + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - siem_entities_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/entity_context/{id}: + get: + description: |- + Get a single entity from the Cloud SIEM entity context store by its identifier, returning the historical + revisions of the entity in the requested time range. The endpoint can either return revisions across an + interval (`from` / `to`) or the snapshot of the entity at a single point in time (`as_of`); the two modes + are mutually exclusive. + operationId: GetSingleEntityContext + parameters: + - description: The unique identifier of the entity to retrieve. + in: path + name: id + required: true + schema: + example: user@example.com + type: string + - description: |- + The start of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now-7d`). + Defaults to `now-7d`. Ignored when `as_of` is set. + in: query + name: from + required: false + schema: + default: now-7d + example: now-7d + type: string + - description: |- + The end of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now`). + Defaults to `now`. Ignored when `as_of` is set. + in: query + name: to + required: false + schema: + default: now + example: now + type: string + - description: |- + A point in time at which to query the entity revisions, as an RFC3339 timestamp, a Unix timestamp + (in seconds), or a relative time (for example, `now-1d`). When set, `from` and `to` are ignored. + Cannot be combined with custom `from` / `to` values. + example: now-1d + in: query + name: as_of + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + revisions: + - attributes: + accounts: + - linked-account-123 + display_name: Test User + email: user@example.com + principal_id: user@example.com + first_seen_at: '2026-04-01T00:00:00Z' + last_seen_at: '2026-05-01T00:00:00Z' + id: user@example.com + type: siem_entity_identity + schema: + $ref: '#/components/schemas/SingleEntityContextResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - siem_entities_read + summary: Get a single entity context + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - siem_entities_read + x-unstable: |- + **Note**: This endpoint is in Preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/rules: + get: + description: List rules. + operationId: ListSecurityMonitoringRules + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: A search query to filter security rules. You can filter by attributes such as `type`, `source`, `tags`. + example: type:signal_correlation source:cloudtrail + in: query + name: query + required: false + schema: + type: string + - description: Attribute used to sort rules. Prefix with `-` to sort in descending order. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleSort' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: abc-123 + isEnabled: true + name: My security monitoring rule. + type: log_detection + meta: {} + schema: + $ref: '#/components/schemas/SecurityMonitoringListRulesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: List rules + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + post: + description: Create a detection rule. + operationId: CreateSecurityMonitoringRule + requestBody: + content: + application/json: + examples: + default: + value: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + filters: [] + hasExtendedTitle: true + isEnabled: true + message: Test rule + name: My security monitoring rule. + options: + evaluationWindow: 900 + keepAlive: 3600 + maxSignalDuration: 86400 + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + metric: '' + query: '@test:true' + referenceTables: + - checkPresence: true + columnName: value + logFieldPath: testtag + ruleQueryName: a + tableName: synthetics_test_reference_table_dont_delete + tags: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Create a detection rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/bulk_delete: + delete: + description: Delete multiple security monitoring rules in a single request. Default rules cannot be deleted. + operationId: BulkDeleteSecurityMonitoringRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ruleIds: + - abc-000-u7q + - abc-000-7dd + id: bulk_delete + type: bulk_delete_rules + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeletePayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + deletedRules: + - abc-000-u7q + - abc-000-7dd + failedRules: [] + id: bulk_delete_response + type: bulk_delete_response + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Bulk delete security monitoring rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/bulk_export: + post: + description: |- + Export a list of security monitoring rules as a ZIP file containing JSON rule definitions. + The endpoint accepts a list of rule IDs and returns a ZIP archive where each rule is + saved as a separate JSON file named after the rule. + operationId: BulkExportSecurityMonitoringRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ruleIds: + - def-000-u7q + - def-000-7dd + id: bulk_export + type: security_monitoring_rules_bulk_export + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkExportPayload' + required: true + responses: + '200': + content: + application/zip: + examples: + default: + value: + schema: + format: binary + type: string + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Bulk export security monitoring rules + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + /api/v2/security_monitoring/rules/convert: + post: + description: |- + Convert a rule that doesn't (yet) exist from JSON to Terraform for Datadog provider + resource `datadog_security_monitoring_rule`. You can do so for the following rule types: + - App and API Protection + - Cloud SIEM (log detection and signal correlation) + - Workload Protection + + You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). + operationId: ConvertSecurityMonitoringRuleFromJSONToTerraform + requestBody: + content: + application/json: + examples: + default: + value: + calculatedFields: + - expression: '@request_end_timestamp - @request_start_timestamp' + name: response_time + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + filters: [] + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule. + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + regoRule: + policy: |- + package datadog + + import data.datadog.output as dd_output + import future.keywords.contains + import future.keywords.if + import future.keywords.in + + eval(resource) = "skip" if { + # Logic that evaluates to true if the resource should be skipped + true + } else = "pass" { + # Logic that evaluates to true if the resource is compliant + true + } else = "fail" { + # Logic that evaluates to true if the resource is not compliant + true + } + + # This part remains unchanged for all rules + results contains result if { + some resource in input.resources[input.main_resource_type] + result := dd_output.format(resource, eval(resource)) + } + resourceTypes: + - gcp_iam_service_account + - gcp_iam_policy + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 900 + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + keepAlive: 3600 + maxSignalDuration: 86400 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + rootQueries: + - query: source:cloudtrail + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + query: source:cloudtrail + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: '2025-07-14T12:00:00' + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertPayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + ruleId: abc-123 + terraformContent: resource "datadog_security_monitoring_rule" "example" {} + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Convert a rule from JSON to Terraform + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/convert/bulk: + post: + description: |- + Convert a list of existing security monitoring rules to Terraform for the Datadog provider + resource `datadog_security_monitoring_rule`. Returns a ZIP archive containing one Terraform + file per rule. You can convert rules for the following types: + - App and API Protection + - Cloud SIEM (log detection and signal correlation) + - Workload Protection + operationId: BulkConvertExistingSecurityMonitoringRules + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + ruleIds: + - def-000-u7q + - def-000-7dd + id: convert_bulk + type: security_monitoring_rules_convert_bulk + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertBulkPayload' + required: true + responses: + '200': + content: + application/zip: + examples: + default: + value: + schema: + format: binary + type: string + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Bulk convert rules to Terraform + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + /api/v2/security_monitoring/rules/test: + post: + description: Test a rule. + operationId: TestSecurityMonitoringRule + requestBody: + content: + application/json: + examples: + default: + value: + rule: + calculatedFields: + - expression: '@request_end_timestamp - @request_start_timestamp' + name: response_time + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + filters: + - action: require + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule message. + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 0 + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + keepAlive: 0 + maxSignalDuration: 0 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + queries: + - aggregation: count + distinctFields: [] + groupByFields: + - '@userIdentity.assumed_role' + name: '' + query: source:cloudtrail + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: '2025-07-14T12:00:00' + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: log_detection + ruleQueryPayloads: + - expectedResult: true + index: 0 + payload: + ddsource: nginx + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + results: + - true + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Test a rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/validation: + post: + description: Validate a detection rule. + operationId: ValidateSecurityMonitoringRule + requestBody: + content: + application/json: + examples: + default: + value: + calculatedFields: + - expression: '@request_end_timestamp - @request_start_timestamp' + name: response_time + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + filters: + - action: require + groupSignalsBy: + - service + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule + name: My security monitoring rule. + options: + anomalyDetectionOptions: + bucketDuration: 300 + detectionTolerance: 5 + instantaneousBaseline: false + complianceRuleOptions: + regoRule: + policy: |- + package datadog + + import data.datadog.output as dd_output + import future.keywords.contains + import future.keywords.if + import future.keywords.in + + eval(resource) = "skip" if { + # Logic that evaluates to true if the resource should be skipped + true + } else = "pass" { + # Logic that evaluates to true if the resource is compliant + true + } else = "fail" { + # Logic that evaluates to true if the resource is not compliant + true + } + + # This part remains unchanged for all rules + results contains result if { + some resource in input.resources[input.main_resource_type] + result := dd_output.format(resource, eval(resource)) + } + resourceTypes: + - gcp_iam_service_account + - gcp_iam_policy + resourceType: aws_acm + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 1800 + hardcodedEvaluatorType: log4shell + impossibleTravelOptions: + baselineUserLocations: true + baselineUserLocationsDuration: 7 + keepAlive: 1800 + maxSignalDuration: 1800 + newValueOptions: + instantaneousBaseline: false + learningMethod: duration + thirdPartyRuleOptions: + defaultStatus: critical + rootQueries: + - query: source:cloudtrail + queries: + - aggregation: count + distinctFields: [] + groupByFields: + - '@userIdentity.assumed_role' + name: '' + query: source:cloudtrail + schedulingOptions: + rrule: FREQ=HOURLY;INTERVAL=1; + start: '2025-07-14T12:00:00' + timezone: America/New_York + tags: + - env:prod + - team:security + thirdPartyCases: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleValidatePayload' + required: true + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Validate a detection rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/{rule_id}: + delete: + description: Delete an existing rule. Default rules cannot be deleted. + operationId: DeleteSecurityMonitoringRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + responses: + '204': + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Delete an existing rule + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + get: + description: Get a rule's details. + operationId: GetSecurityMonitoringRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleResponse' + description: OK + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a rule's details + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + put: + description: |- + Update an existing rule. When updating `cases`, `queries` or `options`, the whole field + must be included. For example, when modifying a query all queries must be included. + Default rules can only be updated to be enabled, to change notifications, or to update + the tags (default tags cannot be removed). + operationId: UpdateSecurityMonitoringRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + requestBody: + content: + application/json: + examples: + default: + value: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + filters: [] + isEnabled: true + message: Test rule + name: My security monitoring rule. + options: + evaluationWindow: 900 + keepAlive: 3600 + maxSignalDuration: 86400 + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + metrics: [] + query: '@test:true' + tags: [] + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleUpdatePayload' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Update an existing rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/{rule_id}/convert: + get: + description: |- + Convert an existing rule from JSON to Terraform for Datadog provider + resource `datadog_security_monitoring_rule`. You can do so for the following rule types: + - App and API Protection + - Cloud SIEM (log detection and signal correlation) + - Workload Protection + + You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https://registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). + operationId: ConvertExistingSecurityMonitoringRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + responses: + '200': + content: + application/json: + examples: + default: + value: + ruleId: abc-123 + terraformContent: resource "datadog_security_monitoring_rule" "example" {} + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Convert an existing rule from JSON to Terraform + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + /api/v2/security_monitoring/rules/{rule_id}/restore/{version}: + post: + description: |- + Restores a custom detection rule to a previously saved historical version. + Only custom rules can be restored. Default and partner rules return 400. + The restore creates a new version entry; it does not overwrite history. + operationId: RestoreSecurityMonitoringRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + - $ref: '#/components/parameters/SecurityMonitoringRuleVersion' + responses: + '200': + content: + application/json: + examples: + default: + value: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + id: abc-123 + isEnabled: true + message: Test rule + name: My security monitoring rule. + tags: [] + type: log_detection + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Restore a rule to a historical version + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + x-unstable: '**Note**: This endpoint is in beta and may be subject to changes.' + /api/v2/security_monitoring/rules/{rule_id}/test: + post: + description: Test an existing rule. + operationId: TestExistingSecurityMonitoringRule + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + requestBody: + content: + application/json: + examples: + default: + value: + rule: + cases: + - condition: a > 0 + name: '' + notifications: [] + status: info + hasExtendedTitle: true + isEnabled: true + message: My security monitoring rule message. + name: My security monitoring rule. + options: + decreaseCriticalityBasedOnEnv: false + detectionMethod: threshold + evaluationWindow: 0 + keepAlive: 0 + maxSignalDuration: 0 + queries: + - aggregation: count + distinctFields: [] + groupByFields: + - '@userIdentity.assumed_role' + name: '' + query: source:source_here + tags: + - env:prod + - team:security + type: log_detection + ruleQueryPayloads: + - expectedResult: true + index: 0 + payload: + ddsource: source_here + ddtags: env:staging,version:5.1 + hostname: i-012345678 + message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + service: payment + userIdentity: + assumed_role: fake assumed_role + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + results: + - true + schema: + $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Test an existing rule + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + /api/v2/security_monitoring/rules/{rule_id}/version_history: + get: + description: Get a rule's version history. + operationId: GetRuleVersionHistory + parameters: + - $ref: '#/components/parameters/SecurityMonitoringRuleID' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + count: 1 + data: {} + id: abc-123 + type: GetRuleVersionHistoryResponse + schema: + $ref: '#/components/schemas/GetRuleVersionHistoryResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a rule's version history + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + x-unstable: '**Note**: This endpoint is in beta and may be subject to changes.' + /api/v2/security_monitoring/sample_log_generation/subscriptions: + get: + description: |- + Get the sample log generation subscriptions for the organization. + Sample log generation injects representative example logs for a given Cloud SIEM content pack into the Logs platform, + which can be used to test detection rules without onboarding the underlying integration first. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an eligible + pricing model. Other organizations receive a `403 Forbidden` (non-trial orgs) or a `400 Bad Request` + (feature disabled), and legacy pricing tiers receive a response with `status: not_available`. + operationId: ListSampleLogGenerationSubscriptions + parameters: + - description: |- + Filter the subscriptions by status. Use `active` to return only currently active + subscriptions, or `all` to return every subscription including expired ones. + Ignored when `start_timestamp` is provided. Defaults to `active`. + in: query + name: status + required: false + schema: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionsStatusFilter' + - description: |- + The start of the time range, as an RFC3339 timestamp. When provided, the response includes + every subscription that was active at any point in `[start_timestamp, end_timestamp]`, + and the `status` filter is ignored. + example: '2026-05-01T00:00:00Z' + in: query + name: start_timestamp + required: false + schema: + format: date-time + type: string + - description: |- + The end of the time range, as an RFC3339 timestamp. Ignored unless `start_timestamp` is set. + Defaults to the current time when `start_timestamp` is provided. + example: '2026-05-08T00:00:00Z' + in: query + name: end_timestamp + required: false + schema: + format: date-time + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + content_pack_id: aws-cloudtrail + created_at: '2026-05-08T20:02:13.77481Z' + expires_at: '2026-05-11T20:02:13.77481Z' + is_active: true + status: subscribed + id: '999' + type: subscriptions + meta: + total_subscriptions: 1 + schema: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_read + - logs_read_index_data + summary: Get sample log generation subscriptions + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_read + - logs_read_index_data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: |- + Subscribe to sample log generation for a Cloud SIEM content pack. Sample logs for the + requested content pack are injected into the Logs platform for the duration of the subscription, + so detection rules can be exercised without onboarding the underlying integration first. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an + eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject + requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`. + operationId: CreateSampleLogGenerationSubscription + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_id: aws-cloudtrail + duration: 3d + type: subscription_requests + schema: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionCreateRequest' + description: The content pack to subscribe to and the desired duration of the subscription. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_id: aws-cloudtrail + created_at: '2026-05-08T20:02:13.77481Z' + expires_at: '2026-05-11T20:02:13.77481Z' + is_active: true + status: subscribed + id: '789' + type: subscriptions + schema: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + - logs_modify_indexes + summary: Subscribe to sample log generation + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/sample_log_generation/subscriptions/bulk: + post: + description: |- + Subscribe to sample log generation for multiple Cloud SIEM content packs in a single call. + Each requested content pack is processed independently; the response includes a per-item + status so partial successes can be inspected. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an + eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject + requests with `400 Bad Request`, and legacy pricing tiers receive per-item responses with `status: not_available`. + operationId: BulkCreateSampleLogGenerationSubscriptions + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_ids: + - aws-cloudtrail + duration: 3d + type: bulk_subscription_requests + schema: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionRequest' + description: The content packs to subscribe to and the desired duration of the subscriptions. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + content_pack_id: aws-cloudtrail + created_at: '2026-05-08T20:02:13.655716Z' + expires_at: '2026-05-11T20:02:13.655716Z' + is_active: true + status: subscribed + id: '123' + meta: + status: 200 + type: subscriptions + schema: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + - logs_modify_indexes + summary: Bulk subscribe to sample log generation + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/sample_log_generation/subscriptions/{content_pack_id}: + delete: + description: |- + Unsubscribe from sample log generation for a Cloud SIEM content pack. + After unsubscribing, no more sample logs are generated for the requested content pack. + + **Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an + eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject + requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`. + operationId: DeleteSampleLogGenerationSubscription + parameters: + - $ref: '#/components/parameters/SampleLogGenerationContentPackID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + content_pack_id: aws-cloudtrail + created_at: '2026-05-08T20:02:13.77481Z' + expires_at: '2026-05-08T20:30:00Z' + is_active: false + status: unsubscribed + id: '789' + type: subscriptions + schema: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_filters_write + - logs_modify_indexes + summary: Unsubscribe from sample log generation + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_filters_write + - logs_modify_indexes + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/signals: + get: + description: |- + The list endpoint returns security signals that match a search query. + Both this endpoint and the POST endpoint can be used interchangeably when listing + security signals. + operationId: ListSecurityMonitoringSignals + parameters: + - $ref: '#/components/parameters/QueryFilterSearch' + - $ref: '#/components/parameters/QueryFilterFrom' + - $ref: '#/components/parameters/QueryFilterTo' + - $ref: '#/components/parameters/QuerySort' + - $ref: '#/components/parameters/QueryPageCursor' + - $ref: '#/components/parameters/QueryPageLimit' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + tags: + - source:cloudtrail + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + links: + next: '' + meta: + page: + after: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a quick list of security signals + tags: + - Security Monitoring + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/bulk/assignee: + patch: + description: |- + Change the triage assignees of multiple security signals at once. + The maximum number of signals that can be updated in a single request is 199. + operationId: BulkEditSecurityMonitoringSignalsAssignee + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignee: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkAssigneeUpdateRequest' + description: Attributes describing the signal assignee updates. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + result: + count: 1 + events: + - event: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + type: status + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Bulk update triage assignee of security signals + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/bulk/state: + patch: + description: |- + Change the triage states of multiple security signals at once. + The maximum number of signals that can be updated in a single request is 199. + operationId: BulkEditSecurityMonitoringSignalsState + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + archive_reason: none + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkStateUpdateRequest' + description: Attributes describing the signal state updates. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + result: + count: 1 + events: + - event: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + type: status + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Bulk update triage state of security signals + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/bulk/update: + patch: + description: |- + Update the triage state or assignee of multiple security signals at once. + The maximum number of signals that can be updated in a single request is 199. + operationId: BulkEditSecurityMonitoringSignals + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + archive_reason: none + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkUpdateRequest' + description: Attributes describing the signal updates. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + result: + count: 1 + events: + - event: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + status: done + type: status + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Bulk update security signals + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/search: + post: + description: |- + Returns security signals that match a search query. + Both this endpoint and the GET endpoint can be used interchangeably for listing + security signals. + operationId: SearchSecurityMonitoringSignals + requestBody: + content: + application/json: + examples: + default: + value: + filter: + from: '2019-01-02T09:42:36.320Z' + query: security:attack status:high + to: '2019-01-03T09:42:36.320Z' + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' + required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + tags: + - source:cloudtrail + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + links: + next: '' + meta: + page: + after: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a list of security signals + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}: + get: + description: Get a signal's details. + operationId: GetSecurityMonitoringSignal + parameters: + - $ref: '#/components/parameters/SignalID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + tags: + - source:cloudtrail + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a signal's details + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}/assignee: + patch: + description: Modify the triage assignee of a security signal. + operationId: EditSecurityMonitoringSignalAssignee + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateRequest' + description: Attributes describing the signal update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Modify the triage assignee of a security signal + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/{signal_id}/entities: + get: + description: Get the list of entities related to a security signal, captured at the signal's timestamp. + operationId: GetSignalEntities + parameters: + - $ref: '#/components/parameters/SignalID' + - description: The maximum number of entities to return. + in: query + name: limit + required: false + schema: + default: 10 + example: 10 + format: int32 + maximum: 1000 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + identities: + - display_name: Test User + principal_id: user@example.com + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: entities + schema: + $ref: '#/components/schemas/SignalEntitiesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get entities related to a signal + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/security_monitoring/signals/{signal_id}/incidents: + patch: + description: Change the related incidents for a security signal. + operationId: EditSecurityMonitoringSignalIncidents + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_ids: + - 2066 + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateRequest' + description: Attributes describing the signal update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Change the related incidents of a security signal + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/{signal_id}/investigation_queries: + get: + description: Get the list of investigation log queries available for a given security signal. + operationId: GetInvestigationLogQueriesMatchingSignal + parameters: + - $ref: '#/components/parameters/SignalID' + responses: + '200': + content: + application/json: + example: + data: + - attributes: + name: Cloudtrail events for user ARN + query_filter: source:cloudtrail @userIdentity.arn:"foo" + template_variables: + '@userIdentity.arn': + - foo + url: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + id: w00-t10-992 + type: investigation_log_queries + - attributes: + title: Monitor Okta logs to track system access and unusual activity + url: https://www.datadoghq.com/blog/monitor-activity-with-okta/ + id: bxy-o8v-i1a + type: recommended_blog_posts + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalSuggestedActionsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_signals_read + summary: Get investigation queries for a signal + tags: + - Security Monitoring + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}/state: + patch: + description: Change the triage state of a security signal. + operationId: EditSecurityMonitoringSignalState + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_reason: none + state: archived + type: signal_metadata + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateRequest' + description: Attributes describing the signal update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Change the triage state of a security signal + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/signals/{signal_id}/suggested_actions: + get: + description: Get the list of suggested actions for a given security signal. + operationId: GetSuggestedActionsMatchingSignal + parameters: + - $ref: '#/components/parameters/SignalID' + responses: + '200': + content: + application/json: + example: + data: + - attributes: + name: Cloudtrail events for user ARN + query_filter: source:cloudtrail @userIdentity.arn:"foo" + template_variables: + '@userIdentity.arn': + - foo + url: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + id: w00-t10-992 + type: investigation_log_queries + - attributes: + title: Monitor Okta logs to track system access and unusual activity + url: https://www.datadoghq.com/blog/monitor-activity-with-okta/ + id: bxy-o8v-i1a + type: recommended_blog_posts + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalSuggestedActionsResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + - security_monitoring_signals_read + summary: Get suggested actions for a signal + tags: + - Security Monitoring + x-permission: + operator: AND + permissions: + - security_monitoring_rules_read + - security_monitoring_signals_read + /api/v2/security_monitoring/signals/{signal_id}/update: + patch: + description: Update the triage state or assignee of a security signal. + operationId: EditSecurityMonitoringSignal + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + archive_reason: none + state: archived + type: signal_metadata + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalUpdateRequest' + description: Attributes describing the signal triage state or assignee update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee: + uuid: 00000000-0000-0000-0000-000000000001 + incident_ids: [] + state: archived + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: signal_metadata + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update security signal triage state or assignee + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v2/security_monitoring/terraform/{resource_type}/bulk: + post: + description: |- + Export multiple security monitoring resources to Terraform, packaged as a zip archive. + The `resource_type` path parameter specifies the type of resources to export + and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + A maximum of 1000 resources can be exported in a single request. + For `rules`, partner rules cannot be exported and return a 400 error. + operationId: BulkExportSecurityMonitoringTerraformResources + parameters: + - $ref: '#/components/parameters/SecurityMonitoringTerraformResourceType' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource_ids: + - abc-123-def + type: bulk_export_resources + schema: + $ref: '#/components/schemas/SecurityMonitoringTerraformBulkExportRequest' + description: The resource IDs to export. + required: true + responses: + '200': + content: + application/zip: + examples: + default: + value: '' + schema: + format: binary + type: string + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + - AuthZ: + - security_monitoring_rules_read + - AuthZ: + - security_monitoring_filters_read + summary: Export security monitoring resources to Terraform + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_suppressions_read + - security_monitoring_rules_read + - security_monitoring_filters_read + x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' + /api/v2/security_monitoring/terraform/{resource_type}/convert: + post: + description: |- + Convert a security monitoring resource that doesn't (yet) exist from JSON to Terraform. + The `resource_type` path parameter specifies the type of resource to convert + and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + operationId: ConvertSecurityMonitoringTerraformResource + parameters: + - $ref: '#/components/parameters/SecurityMonitoringTerraformResourceType' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + resource_json: + enabled: true + name: Example-Security-Monitoring + rule_query: source:cloudtrail + suppression_query: env:test + id: abc-123 + type: convert_resource + schema: + $ref: '#/components/schemas/SecurityMonitoringTerraformConvertRequest' + description: The resource JSON to convert. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + output: resource "datadog_security_monitoring_suppression" "abc-123" {} + resource_id: abc-123 + type_name: datadog_security_monitoring_suppression + id: datadog_security_monitoring_suppression|abc-123 + type: format_resource + schema: + $ref: '#/components/schemas/SecurityMonitoringTerraformExportResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + - AuthZ: + - security_monitoring_rules_read + - AuthZ: + - security_monitoring_filters_read + summary: Convert security monitoring resource to Terraform + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_suppressions_read + - security_monitoring_rules_read + - security_monitoring_filters_read + x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' + /api/v2/security_monitoring/terraform/{resource_type}/{resource_id}: + get: + description: |- + Export a security monitoring resource to a Terraform configuration. + The `resource_type` path parameter specifies the type of resource to export + and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + For `rules`, partner rules cannot be exported and return a 400 error. + operationId: ExportSecurityMonitoringTerraformResource + parameters: + - $ref: '#/components/parameters/SecurityMonitoringTerraformResourceType' + - $ref: '#/components/parameters/SecurityMonitoringTerraformResourceId' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + output: resource "datadog_security_monitoring_suppression" "abc-123" {} + resource_id: abc-123 + type_name: datadog_security_monitoring_suppression + id: datadog_security_monitoring_suppression|abc-123 + type: format_resource + schema: + $ref: '#/components/schemas/SecurityMonitoringTerraformExportResponse' + description: OK + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_suppressions_read + - AuthZ: + - security_monitoring_rules_read + - AuthZ: + - security_monitoring_filters_read + summary: Export security monitoring resource to Terraform + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_suppressions_read + - security_monitoring_rules_read + - security_monitoring_filters_read + x-unstable: '**Note**: This endpoint is in Preview. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).' + /api/v2/sensitive-data-scanner/config: + get: + description: List all the Scanning groups in your organization. + operationId: ListScanningGroups + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: {} + id: abc-123 + relationships: + groups: + data: + - id: group-abc-123 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_configuration + included: + - attributes: + description: '' + filter: + query: '*' + is_enabled: true + name: My scanning group + product_list: + - logs + samplings: + - product: logs + rate: 100 + id: group-abc-123 + relationships: + configuration: + data: + id: abc-123 + type: sensitive_data_scanner_configuration + rules: + data: + - id: rule-abc-123 + type: sensitive_data_scanner_rule + type: sensitive_data_scanner_group + - attributes: + description: Detects credit card numbers in various formats + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 35 + keywords: + - credit card + is_enabled: true + name: Credit Card Rule + namespaces: + - admin + priority: 1 + tags: + - sensitive_data:true + text_replacement: + type: none + id: rule-abc-123 + relationships: + group: + data: + id: group-abc-123 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_rule + meta: + count_limit: 500 + group_count_limit: 20 + is_pci_compliant: false + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List Scanning Groups + tags: + - Sensitive Data Scanner + x-permission: + operator: OR + permissions: + - data_scanner_read + patch: + description: Reorder the list of groups. + operationId: ReorderScanningGroups + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + groups: + data: + - id: a796feff-a0cc-4a9f-8c61-16c4d5e44964 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_configuration + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerConfigRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerReorderGroupsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Reorder Groups + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/groups: + post: + description: |- + Create a scanning group. + The request MAY include a configuration relationship. + A rules relationship can be omitted entirely, but if it is included it MUST be + null or an empty array (rules cannot be created at the same time). + The new group will be ordered last within the configuration. + operationId: CreateScanningGroup + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: '*' + is_enabled: false + product_list: + - logs + samplings: + - product: logs + rate: 100 + relationships: + configuration: + data: + type: sensitive_data_scanner_configuration + type: sensitive_data_scanner_group + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerGroupCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: '' + filter: + query: '*' + is_enabled: false + name: My scanning group + product_list: + - logs + samplings: + - product: logs + rate: 100 + id: group-abc-123 + relationships: + configuration: + data: + id: abc-123 + type: sensitive_data_scanner_configuration + rules: + data: [] + type: sensitive_data_scanner_group + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerCreateGroupResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Scanning Group + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/groups/{group_id}: + delete: + description: Delete a given group. + operationId: DeleteScanningGroup + parameters: + - $ref: '#/components/parameters/SensitiveDataScannerGroupID' + requestBody: + content: + application/json: + examples: + default: + value: + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Scanning Group + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + patch: + description: |- + Update a group, including the order of the rules. + Rules within the group are reordered by including a rules relationship. If the rules + relationship is present, its data section MUST contain linkages for all of the rules + currently in the group, and MUST NOT contain any others. + operationId: UpdateScanningGroup + parameters: + - $ref: '#/components/parameters/SensitiveDataScannerGroupID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: '*' + is_enabled: false + product_list: + - logs + samplings: + - product: logs + rate: 100 + relationships: + configuration: + data: + type: sensitive_data_scanner_configuration + type: sensitive_data_scanner_group + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Scanning Group + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/rules: + post: + description: |- + Create a scanning rule in a sensitive data scanner group, ordered last. + The posted rule MUST include a group relationship. + It MUST include either a standard_pattern relationship or a regex attribute, but not both. + If included_attributes is empty or missing, we will scan all attributes except + excluded_attributes. If both are missing, we will scan the whole event. + operationId: CreateScanningRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 30 + keywords: + - email + - address + - login + is_enabled: true + namespaces: + - admin + suppressions: + ends_with: + - '@example.com' + - another.example.com + exact_match: + - admin@example.com + - user@example.com + starts_with: + - admin + - user + tags: + - sensitive_data:true + text_replacement: + type: none + relationships: + group: + data: + type: sensitive_data_scanner_group + standard_pattern: + data: + type: sensitive_data_scanner_standard_pattern + type: sensitive_data_scanner_rule + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerRuleCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Detects credit card numbers in various formats + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 35 + keywords: + - credit card + is_enabled: true + name: Credit Card Rule + namespaces: + - admin + priority: 1 + tags: + - sensitive_data:true + text_replacement: + type: none + id: rule-abc-123 + relationships: + group: + data: + id: group-abc-123 + type: sensitive_data_scanner_group + type: sensitive_data_scanner_rule + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerCreateRuleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Scanning Rule + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/rules/{rule_id}: + delete: + description: Delete a given rule. + operationId: DeleteScanningRule + parameters: + - $ref: '#/components/parameters/SensitiveDataScannerRuleID' + requestBody: + content: + application/json: + examples: + default: + value: + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Scanning Rule + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + patch: + description: |- + Update a scanning rule. + The request body MUST NOT include a standard_pattern relationship, as that relationship + is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern + relationship will also result in an error. + operationId: UpdateScanningRule + parameters: + - $ref: '#/components/parameters/SensitiveDataScannerRuleID' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + excluded_namespaces: + - admin.name + included_keyword_configuration: + character_count: 30 + keywords: + - email + - address + - login + is_enabled: true + namespaces: + - admin + suppressions: + ends_with: + - '@example.com' + - another.example.com + exact_match: + - admin@example.com + - user@example.com + starts_with: + - admin + - user + tags: + - sensitive_data:true + text_replacement: + type: none + relationships: + group: + data: + type: sensitive_data_scanner_group + standard_pattern: + data: + type: sensitive_data_scanner_standard_pattern + type: sensitive_data_scanner_rule + meta: + version: 0 + schema: + $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + meta: + version: 1 + schema: + $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Scanning Rule + tags: + - Sensitive Data Scanner + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - data_scanner_write + /api/v2/sensitive-data-scanner/config/standard-patterns: + get: + description: Returns all standard patterns. + operationId: ListStandardPatterns + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Detects credit card numbers in various formats + included_keywords: + - credit card + - card number + name: Credit Card Number + priority: 1 + tags: + - card_number + id: abc-123 + type: sensitive_data_scanner_standard_pattern + schema: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseData' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List standard patterns + tags: + - Sensitive Data Scanner + x-permission: + operator: OR + permissions: + - data_scanner_read + /api/v2/siem-historical-detections/histsignals: + get: + description: List hist signals. + operationId: ListSecurityMonitoringHistsignals + parameters: + - $ref: '#/components/parameters/QueryFilterSearch' + - $ref: '#/components/parameters/QueryFilterFrom' + - $ref: '#/components/parameters/QueryFilterTo' + - $ref: '#/components/parameters/QuerySort' + - $ref: '#/components/parameters/QueryPageCursor' + - $ref: '#/components/parameters/QueryPageLimit' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: List hist signals + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/histsignals/search: + post: + description: Search hist signals. + operationId: SearchSecurityMonitoringHistsignals + requestBody: + content: + application/json: + examples: + default: + value: + filter: + from: '2019-01-02T09:42:36.320Z' + query: security:attack status:high + to: '2019-01-03T09:42:36.320Z' + page: + limit: 25 + sort: timestamp + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' + required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Search hist signals + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/histsignals/{histsignal_id}: + get: + description: Get a hist signal's details. + operationId: GetSecurityMonitoringHistsignal + parameters: + - $ref: '#/components/parameters/HistoricalSignalID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a hist signal's details + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs: + get: + description: List historical jobs. + operationId: ListHistoricalJobs + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - description: The order of the jobs in results. + example: status + in: query + name: sort + required: false + schema: + type: string + - description: Query used to filter items from the fetched list. + example: security:attack status:high + in: query + name: filter[query] + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: '2024-01-01T00:00:00+00:00' + createdByHandle: example-handle + createdByName: Example Name + jobName: Example Job + jobStatus: COMPLETED + id: abc-123 + type: historicalDetectionsJob + meta: + totalCount: 1 + schema: + $ref: '#/components/schemas/ListHistoricalJobsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List historical jobs + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + post: + description: Run a historical job. + operationId: RunHistoricalJob + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + jobDefinition: + cases: + - condition: a > 1 + name: Condition 1 + notifications: [] + status: info + from: 1730387522611 + index: main + message: A large number of failed login attempts. + name: Excessive number of failed attempts. + options: + evaluationWindow: 900 + keepAlive: 3600 + maxSignalDuration: 86400 + queries: + - aggregation: count + distinctFields: [] + groupByFields: [] + query: source:non_existing_src_weekend + tags: [] + to: 1730391122611 + type: log_detection + type: historicalDetectionsJobCreate + schema: + $ref: '#/components/schemas/RunHistoricalJobRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + id: abc-123 + type: historicalDetectionsJob + schema: + $ref: '#/components/schemas/JobCreateResponse' + description: Status created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Run a historical job + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/signal_convert: + post: + description: Convert a job result to a signal. + operationId: ConvertJobResultToSignal + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + jobResultIds: + - '' + notifications: + - '' + signalMessage: A large number of failed login attempts. + signalSeverity: critical + type: historicalDetectionsJobResultSignalConversion + schema: + $ref: '#/components/schemas/ConvertJobResultsToSignalsRequest' + required: true + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Convert a job result to a signal + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/{job_id}: + delete: + description: Delete an existing job. + operationId: DeleteHistoricalJob + parameters: + - $ref: '#/components/parameters/HistoricalJobID' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete an existing job + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + get: + description: Get a job's details. + operationId: GetHistoricalJob + parameters: + - $ref: '#/components/parameters/HistoricalJobID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-01T00:00:00+00:00' + createdByHandle: example-handle + createdByName: Example Name + jobName: Example Job + jobStatus: COMPLETED + modifiedAt: '2024-01-01T00:00:00+00:00' + signalOutput: false + id: abc-123 + type: historicalDetectionsJob + schema: + $ref: '#/components/schemas/HistoricalJobResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_read + summary: Get a job's details + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/{job_id}/cancel: + patch: + description: Cancel a historical job. + operationId: CancelHistoricalJob + parameters: + - $ref: '#/components/parameters/HistoricalJobID' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/ConcurrentModificationResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_rules_write + summary: Cancel a historical job + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_rules_write + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/siem-historical-detections/jobs/{job_id}/histsignals: + get: + description: Get a job's hist signals. + operationId: GetSecurityMonitoringHistsignalsByJobId + parameters: + - $ref: '#/components/parameters/HistoricalJobID' + - $ref: '#/components/parameters/QueryFilterSearch' + - $ref: '#/components/parameters/QueryFilterFrom' + - $ref: '#/components/parameters/QueryFilterTo' + - $ref: '#/components/parameters/QuerySort' + - $ref: '#/components/parameters/QueryPageCursor' + - $ref: '#/components/parameters/QueryPageLimit' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: A large number of failed login attempts. + tags: + - source:production + timestamp: '2024-01-01T00:00:00+00:00' + id: abc-123 + type: signal + schema: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - security_monitoring_signals_read + summary: Get a job's hist signals + tags: + - Security Monitoring + x-permission: + operator: OR + permissions: + - security_monitoring_signals_read + x-unstable: |- + **Note**: This endpoint is in beta and may be subject to changes. + Please check the documentation regularly for updates. + /api/v2/static-analysis-sca/dependencies: + post: + operationId: CreateSCAResult + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: scarequests + schema: + $ref: '#/components/schemas/ScaRequest' + required: true + responses: + '200': + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Post dependencies for analysis + tags: + - Static Analysis + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/static-analysis-sca/dependencies/scan: + post: + operationId: CreateSCAScan + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + commit_hash: 0e9fc8de83eaabecd722e1cd0ed44fb489fe15fc + libraries: + - exclusions: [] + is_dev: false + is_direct: true + package_manager: nuget + purl: pkg:nuget/Newtonsoft.Json@13.0.1 + target_frameworks: + - net8.0 + resource_name: my-org/my-repo + type: mcpscanrequest + schema: + $ref: '#/components/schemas/McpScanRequest' + required: true + responses: + '202': + content: + application/json: + examples: + default: + value: + data: + attributes: + job_id: 0190a3d4-1234-7000-8000-000000000000 + id: 0190a3d4-1234-7000-8000-000000000000 + type: mcpscanrequestresponse + schema: + $ref: '#/components/schemas/McpScanRequestResponse' + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Submit libraries for vulnerability scanning + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis-sca/dependencies/scan/{job_id}: + get: + operationId: GetSCAScan + parameters: + - description: The job identifier returned when the scan was submitted. + in: path + name: job_id + required: true + schema: + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + vulnerabilities: [] + schema: + $ref: '#/components/schemas/ScanResultResponse' + description: OK + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Retrieve a dependency scan result + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis-sca/licenses/list: + get: + operationId: ListSCALicenses + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + licenses: + - display_name: MIT License + identifier: MIT + short_name: MIT + id: 0190a3d4-1234-7000-8000-000000000000 + type: licenserequest + schema: + $ref: '#/components/schemas/LicensesListResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get the list of SPDX licenses + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis-sca/vulnerabilities/resolve-vulnerable-symbols: + post: + operationId: CreateSCAResolveVulnerableSymbols + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: resolve-vulnerable-symbols-request + schema: + $ref: '#/components/schemas/ResolveVulnerableSymbolsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + results: + - purl: pkg:npm/lodash@4.17.20 + vulnerable_symbols: [] + id: abc-123 + type: resolve-vulnerable-symbols-response + schema: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: POST request to resolve vulnerable symbols + tags: + - Static Analysis + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/static-analysis/ai/memory: + get: + description: Get all AI memory violation results for the authenticated organization. + operationId: ListAiMemoryViolationResults + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + line: 10 + message: This is a false positive. + name: src/main.py + repository_id: my-repo + rule: my-ai-ruleset/my-ai-rule + sha: abc123def456789012345678901234567890abcd + type: FP + id: '42' + type: ai_memory_violation_result + schema: + $ref: '#/components/schemas/AiMemoryViolationResultsResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List AI memory violation results + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Add a new AI memory violation result for the authenticated organization. + operationId: CreateAiMemoryViolationResult + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + line: 10 + message: This is a false positive. + name: src/main.py + repository_id: my-repo + rule: my-ai-ruleset/my-ai-rule + sha: abc123def456789012345678901234567890abcd + type: FP + id: violation-abc + type: ai_memory_violation_result + schema: + $ref: '#/components/schemas/AiMemoryViolationResultRequest' + required: true + responses: + '200': + description: Successfully created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Create an AI memory violation result + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/memory/{id}: + delete: + description: Delete an AI memory violation result by its numeric identifier. + operationId: DeleteAiMemoryViolationResult + parameters: + - description: The numeric identifier of the memory violation result. + in: path + name: id + required: true + schema: + example: '42' + type: string + responses: + '200': + description: Successfully deleted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Memory violation result not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Delete an AI memory violation result + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/prompts: + get: + description: Get all AI prompts, including default prompts and custom AI rule prompts for the authenticated organization. + operationId: ListAiPrompts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: SECURITY + checksum: abc123 + content: Ruleset content + cwe: '79' + description: Ruleset description + directories: [] + execution_mode: auto + file_search_keywords: [] + globs: + - '**/*.py' + is_default: false + is_testing: false + language: PYTHON + result_keywords_exclude: [] + rule_version: '1' + severity: ERROR + short_description: Ruleset short description + id: my-ai-ruleset/my-ai-rule + type: ai_prompt + schema: + $ref: '#/components/schemas/AiPromptsResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List AI prompts + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets: + get: + description: Get all AI custom rulesets for the authenticated organization. + operationId: ListAiCustomRulesets + parameters: + - description: The offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of rulesets to return. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + description: Ruleset description + name: my-ai-ruleset + rules: [] + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: '#/components/schemas/AiCustomRulesetsResponse' + description: Successful response + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List AI custom rulesets + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new AI custom ruleset for the authenticated organization. + operationId: CreateAiCustomRuleset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Ruleset description + name: my-ai-ruleset + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: '#/components/schemas/AiCustomRulesetRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + description: Ruleset description + name: my-ai-ruleset + rules: [] + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: '#/components/schemas/AiCustomRulesetResponse' + description: Successfully created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict - ruleset already exists + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Precondition Failed - validation error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Create an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}: + delete: + description: Delete an AI custom ruleset by name. + operationId: DeleteAiCustomRuleset + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + responses: + '200': + description: Successfully deleted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Delete an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get an AI custom ruleset by name. + operationId: GetAiCustomRuleset + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + description: Ruleset description + name: my-ai-ruleset + rules: [] + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: '#/components/schemas/AiCustomRulesetResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the description of an existing AI custom ruleset. + operationId: UpdateAiCustomRuleset + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Ruleset description + name: my-ai-ruleset + short_description: Ruleset short description + id: my-ai-ruleset + type: ai_ruleset + schema: + $ref: '#/components/schemas/AiCustomRulesetUpdateRequest' + required: true + responses: + '200': + description: Successfully updated + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Precondition Failed - validation error or ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Update an AI custom ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules: + post: + description: Create a new AI custom rule within a ruleset. + operationId: CreateAiCustomRule + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-ai-rule + type: ai_rule + schema: + $ref: '#/components/schemas/AiCustomRuleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + last_revision: null + name: my-ai-rule + id: my-ai-rule + type: ai_rule + schema: + $ref: '#/components/schemas/AiCustomRuleResponse' + description: Successfully created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict - rule already exists + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Precondition Failed - validation error or ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Create an AI custom rule + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}: + delete: + description: Delete an AI custom rule by name within a ruleset. + operationId: DeleteAiCustomRule + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + responses: + '200': + description: Successfully deleted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Delete an AI custom rule + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get an AI custom rule by name within a ruleset. + operationId: GetAiCustomRule + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + last_revision: null + name: my-ai-rule + id: my-ai-rule + type: ai_rule + schema: + $ref: '#/components/schemas/AiCustomRuleResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get an AI custom rule + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions: + get: + description: Get all revisions for an AI custom rule. + operationId: ListAiCustomRuleRevisions + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + - description: The offset for pagination. + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The maximum number of revisions to return. + in: query + name: page[limit] + required: false + schema: + default: 100 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: SECURITY + checksum: abc123 + content: Content + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + cwe: null + description: Ruleset description + directories: [] + execution_mode: auto + globs: + - '**/*.py' + is_default: false + is_published: false + is_testing: false + severity: ERROR + short_description: Ruleset short description + version_id: 1 + id: revision-abc-123 + type: ai_rule_revision + schema: + $ref: '#/components/schemas/AiCustomRuleRevisionsResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: List AI custom rule revisions + tags: + - Static Analysis + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new revision for an AI custom rule. + operationId: CreateAiCustomRuleRevision + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: SECURITY + content: Content + description: Ruleset description + directories: [] + execution_mode: auto + globs: + - '**/*.py' + is_published: false + is_testing: false + severity: ERROR + short_description: Ruleset short description + version_id: 1 + id: revision-abc-123 + type: ai_rule_revision + schema: + $ref: '#/components/schemas/AiCustomRuleRevisionRequest' + required: true + responses: + '200': + description: Successfully created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Create an AI custom rule revision + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/ai/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id}: + get: + description: Get a specific revision of an AI custom rule. + operationId: GetAiCustomRuleRevision + parameters: + - description: The ruleset name. + in: path + name: ruleset_name + required: true + schema: + example: my-ai-ruleset + type: string + - description: The rule name. + in: path + name: rule_name + required: true + schema: + example: my-ai-rule + type: string + - description: The revision identifier. + in: path + name: id + required: true + schema: + example: revision-abc-123 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: SECURITY + checksum: abc123 + content: Content + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + cwe: null + description: Ruleset description + directories: [] + execution_mode: auto + globs: + - '**/*.py' + is_default: false + is_published: false + is_testing: false + severity: ERROR + short_description: Ruleset short description + version_id: 1 + id: revision-abc-123 + type: ai_rule_revision + schema: + $ref: '#/components/schemas/AiCustomRuleRevisionResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Revision not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Internal Server Error + summary: Get an AI custom rule revision + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/codegen/rulesets: + get: + description: Get the rulesets relevant for code generation for the authenticated user. + operationId: ListStaticAnalysisCodegenRulesets + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/SastRulesetsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: List codegen rulesets + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets: + get: + description: Get all custom rulesets for the authenticated organization. + operationId: ListCustomRulesets + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/CustomRulesetListResponse' + description: OK + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: List Custom Rulesets + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create a new custom ruleset for the authenticated organization. + operationId: CreateCustomRuleset + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: My custom ruleset. + name: my-custom-ruleset + type: custom_ruleset + schema: + $ref: '#/components/schemas/CustomRulesetRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: my-custom-ruleset + id: my-custom-ruleset + type: custom_ruleset + schema: + $ref: '#/components/schemas/CustomRulesetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Precondition Failed + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Create Custom Ruleset + tags: + - Static Analysis + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}: + delete: + description: Delete a custom ruleset + operationId: DeleteCustomRuleset + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + responses: + '200': + description: Successfully deleted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Custom Ruleset + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a custom ruleset by name + operationId: GetCustomRuleset + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + description: Example ruleset description + name: my-ruleset + rules: [] + short_description: Short description + id: my-ruleset + type: custom_ruleset + schema: + $ref: '#/components/schemas/CustomRulesetResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Show Custom Ruleset + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing custom ruleset + operationId: UpdateCustomRuleset + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rules: + - created_at: '2026-01-09T13:00:57.473141Z' + created_by: foobarbaz + last_revision: + id: revision-123 + name: my-rule + type: custom_ruleset + schema: + $ref: '#/components/schemas/CustomRulesetRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + description: Example ruleset description + name: my-ruleset + rules: [] + short_description: Short description + id: my-ruleset + type: custom_ruleset + schema: + $ref: '#/components/schemas/CustomRulesetResponse' + description: Successfully updated + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Precondition failed - validation error or ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update Custom Ruleset + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules: + put: + description: Create a new custom rule within a ruleset + operationId: CreateCustomRule + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: custom_rule + schema: + $ref: '#/components/schemas/CustomRuleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + last_revision: + attributes: {} + id: revision-abc-123 + type: custom_rule_revision + name: my-rule + id: my-rule + type: custom_rule + schema: + $ref: '#/components/schemas/CustomRuleResponse' + description: Successfully created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict - rule already exists + '412': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Precondition failed - validation error or ruleset not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Custom Rule + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}: + delete: + description: Delete a custom rule + operationId: DeleteCustomRule + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + responses: + '200': + description: Successfully deleted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete Custom Rule + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a custom rule by name + operationId: GetCustomRule + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + last_revision: + attributes: {} + id: revision-abc-123 + type: custom_rule_revision + name: my-rule + id: my-rule + type: custom_rule + schema: + $ref: '#/components/schemas/CustomRuleResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Show Custom Rule + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions: + get: + description: Get all revisions for a custom rule + operationId: ListCustomRuleRevisions + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + - description: Pagination offset + in: query + name: page[offset] + required: false + schema: + default: 0 + format: int64 + type: integer + - description: Pagination limit + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + arguments: [] + category: SECURITY + checksum: 8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99 + code: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + creation_message: Initial revision + cve: null + cwe: null + description: Example ruleset description + documentation_url: null + is_published: false + is_testing: false + language: PYTHON + severity: ERROR + short_description: Short description + should_use_ai_fix: false + tags: [] + tests: [] + tree_sitter_query: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + id: revision-123 + type: custom_rule_revision + schema: + $ref: '#/components/schemas/CustomRuleRevisionsResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too many requests + summary: List Custom Rule Revisions + tags: + - Static Analysis + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Create a new revision for a custom rule + operationId: CreateCustomRuleRevision + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + arguments: + - description: Maximum call depth to analyze + name: max_depth + category: SECURITY + code: 'def rule(node): return node.type == ''call''' + creation_message: Initial revision + cve: CVE-2024-1234 + cwe: CWE-79 + description: Detects insecure coding patterns that may lead to vulnerabilities + documentation_url: https://docs.example.com/rules/my-rule + is_published: false + is_testing: false + language: PYTHON + severity: ERROR + short_description: Rule to detect insecure patterns + should_use_ai_fix: false + tags: + - security + - custom + tests: + - annotation_count: 1 + code: result = insecure_function() + filename: test.yaml + tree_sitter_query: (call_expression) @call + type: custom_rule_revision + schema: + $ref: '#/components/schemas/CustomRuleRevisionRequest' + required: true + responses: + '200': + description: Successfully created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Rule not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create Custom Rule Revision + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/revert: + post: + description: Revert a custom rule to a previous revision + operationId: RevertCustomRuleRevision + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: revert_custom_rule_revision_request + schema: + $ref: '#/components/schemas/RevertCustomRuleRevisionRequest' + required: true + responses: + '200': + description: Successfully reverted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Revert Custom Rule Revision + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/custom/rulesets/{ruleset_name}/rules/{rule_name}/revisions/{id}: + get: + description: Get a specific revision of a custom rule + operationId: GetCustomRuleRevision + parameters: + - description: The ruleset name + in: path + name: ruleset_name + required: true + schema: + type: string + - description: The rule name + in: path + name: rule_name + required: true + schema: + type: string + - description: The revision ID + in: path + name: id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + arguments: [] + category: SECURITY + checksum: 8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99 + code: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + created_at: '2024-01-01T00:00:00+00:00' + created_by: example-handle + creation_message: Initial revision + cve: null + cwe: null + description: Example ruleset description + documentation_url: null + is_published: false + is_testing: false + language: PYTHON + severity: ERROR + short_description: Short description + should_use_ai_fix: false + tags: [] + tests: [] + tree_sitter_query: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + id: revision-123 + type: custom_rule_revision + schema: + $ref: '#/components/schemas/CustomRuleRevisionResponse' + description: Successful response + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized - custom rules not enabled + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Revision not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Show Custom Rule Revision + tags: + - Static Analysis + x-unstable: |- + This endpoint is in Preview and may introduce breaking changes. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/default-rulesets/{language}: + get: + description: Get the default SAST ruleset names for a given programming language. + operationId: GetStaticAnalysisDefaultRulesets + parameters: + - description: The programming language for which to retrieve the default rulesets. + in: path + name: language + required: true + schema: + example: python + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + rulesets: + - python-best-practices + id: python + type: defaultRulesetsPerLanguage + schema: + $ref: '#/components/schemas/DefaultRulesetsPerLanguageResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get default rulesets for a language + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/rulesets: + post: + description: Get rules for multiple rulesets in batch. + operationId: ListMultipleRulesets + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: get_multiple_rulesets_request + schema: + $ref: '#/components/schemas/GetMultipleRulesetsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + rulesets: [] + id: abc-123 + type: get_multiple_rulesets_response + schema: + $ref: '#/components/schemas/GetMultipleRulesetsResponse' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Ruleset get multiple + tags: + - Security Monitoring + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/static-analysis/rulesets/{ruleset_name}: + get: + description: Get a SAST ruleset by name, including all its rules. + operationId: GetStaticAnalysisRuleset + parameters: + - description: The name of the ruleset to retrieve. + in: path + name: ruleset_name + required: true + schema: + example: python-best-practices + type: string + - description: When true, test cases for each rule are included in the response. + in: query + name: include_tests + required: false + schema: + type: boolean + - description: When true, rules that are in testing mode are included in the response. + in: query + name: include_testing_rules + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A collection of Python best practice rules. + name: python-best-practices + rules: [] + short_description: Python best practices. + id: python-best-practices + type: rulesets + schema: + $ref: '#/components/schemas/SastRulesetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get a SAST ruleset + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/secrets/rules: + get: + description: Returns a list of Secrets rules with ID, Pattern, Description, Priority, and SDS ID. + operationId: GetSecretsRules + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Detects example secrets + name: Example Secret Rule + pattern: '[A-Za-z0-9]{32}' + priority: '1' + id: abc-123 + type: secret_rule + schema: + $ref: '#/components/schemas/SecretRuleArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Returns a list of Secrets rules + tags: + - Security Monitoring + x-unstable: '**Note**: This endpoint may be subject to changes.' + /api/v2/static-analysis/static-analysis-server/analyze: + post: + description: Run static analysis rules against a source code file and return violations found. + operationId: CreateStaticAnalysisServerAnalysis + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + code: aW1wb3J0IHN5cw== + file_encoding: utf-8 + filename: test.py + language: python + rules: [] + type: analysis_request + schema: + $ref: '#/components/schemas/AnalysisRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + errors: [] + rule_responses: [] + id: abc-123 + type: server_request + schema: + $ref: '#/components/schemas/AnalysisResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Analyze code + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/static-analysis-server/get-ast: + post: + description: Parse source code into an abstract syntax tree (AST) for the specified language. + operationId: CreateStaticAnalysisAst + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + code: aW1wb3J0IHN5cw== + file_encoding: utf-8 + language: python + type: get_ast_request + schema: + $ref: '#/components/schemas/GetAstRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + ast: {} + type: get_ast_response + schema: + $ref: '#/components/schemas/GetAstResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get AST for source code + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/static-analysis-server/node-types/{language}: + get: + description: Retrieve tree-sitter node type definitions for a given programming language. + operationId: GetStaticAnalysisNodeTypes + parameters: + - description: The programming language for which to retrieve node type definitions. + in: path + name: language + required: true + schema: + example: python + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + node_types: [] + id: python + type: get_node_types_response + schema: + $ref: '#/components/schemas/NodeTypesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get node types for a language + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/static-analysis/static-analysis-server/tree-sitter-wasm/{file}: + get: + description: Download the WebAssembly binary for a tree-sitter grammar by file name. + operationId: GetStaticAnalysisTreeSitterWasm + parameters: + - description: The name of the WASM file to download. + in: path + name: file + required: true + schema: + example: tree-sitter-python.wasm + type: string + responses: + '200': + content: + application/octet-stream: + examples: + default: + value: '' + schema: + format: binary + type: string + description: BLOB with the content of the WASM file + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - code_analysis_read + summary: Get tree-sitter WASM file + tags: + - Security Monitoring + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v1/security_analytics/signals/{signal_id}/add_to_incident: + patch: + description: Add a security signal to an incident. This makes it possible to search for signals by incident within the signal explorer and to view the signals on the incident timeline. + operationId: AddSecurityMonitoringSignalToIncident + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + incident_id: 2066 + version: 0 + schema: + $ref: '#/components/schemas/AddSignalToIncidentRequest' + description: Attributes describing the signal update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + status: updated + schema: + $ref: '#/components/schemas/SuccessfulSignalUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Add a security signal to an incident + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v1/security_analytics/signals/{signal_id}/assignee: + patch: + deprecated: true + description: This endpoint is deprecated - Modify the triage assignee of a security signal. + operationId: EditSecurityMonitoringSignalAssigneeV1 + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + assignee: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + version: 0 + schema: + $ref: '#/components/schemas/SignalAssigneeUpdateRequest' + description: Attributes describing the signal update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + status: updated + schema: + $ref: '#/components/schemas/SuccessfulSignalUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Modify the triage assignee of a security signal + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write + /api/v1/security_analytics/signals/{signal_id}/state: + patch: + deprecated: true + description: This endpoint is deprecated - Change the triage state of a security signal. + operationId: EditSecurityMonitoringSignalStateV1 + parameters: + - $ref: '#/components/parameters/SignalID' + requestBody: + content: + application/json: + examples: + default: + value: + archiveReason: none + state: open + version: 0 + schema: + $ref: '#/components/schemas/SignalStateUpdateRequest' + description: Attributes describing the signal update. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + status: updated + schema: + $ref: '#/components/schemas/SuccessfulSignalUpdateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Change the triage state of a security signal + tags: + - Security Monitoring + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - security_monitoring_signals_write +components: + schemas: + AwsScanOptionsListResponse: + description: Response object that includes a list of AWS scan options. + properties: + data: + description: A list of AWS scan options. + items: + $ref: '#/components/schemas/AwsScanOptionsData' + type: array + type: object + AwsScanOptionsCreateRequest: + description: Request object that includes the scan options to create. + properties: + data: + $ref: '#/components/schemas/AwsScanOptionsCreateData' + required: + - data + type: object + AwsScanOptionsResponse: + description: Response object that includes the scan options of an AWS account. + properties: + data: + $ref: '#/components/schemas/AwsScanOptionsData' + type: object + AwsScanOptionsUpdateRequest: + description: Request object that includes the scan options to update. + properties: + data: + $ref: '#/components/schemas/AwsScanOptionsUpdateData' + required: + - data + type: object + AzureScanOptionsArray: + description: Response object containing a list of Azure scan options. + example: + data: + - attributes: + compliance_host: false + function: true + vuln_containers_os: true + vuln_host_os: true + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + properties: + data: + description: A list of Azure scan options. + items: + $ref: '#/components/schemas/AzureScanOptionsData' + type: array + required: + - data + type: object + AzureScanOptions: + description: Response object containing Azure scan options for a single subscription. + example: + data: + attributes: + compliance_host: false + function: true + vuln_containers_os: true + vuln_host_os: true + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + properties: + data: + $ref: '#/components/schemas/AzureScanOptionsData' + type: object + AzureScanOptionsInputUpdate: + description: Request object for updating Azure scan options. + example: + data: + id: 12345678-90ab-cdef-1234-567890abcdef + type: azure_scan_options + properties: + data: + $ref: '#/components/schemas/AzureScanOptionsInputUpdateData' + type: object + GcpScanOptionsArray: + description: Response object containing a list of GCP scan options. + example: + data: + - attributes: + cloud_function: true + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: company-project-id + type: gcp_scan_options + properties: + data: + description: A list of GCP scan options. + items: + $ref: '#/components/schemas/GcpScanOptionsData' + type: array + required: + - data + type: object + GcpScanOptions: + description: Response object containing GCP scan options for a single project. + example: + data: + attributes: + cloud_function: true + compliance_host: false + vuln_containers_os: true + vuln_host_os: true + id: company-project-id + type: gcp_scan_options + properties: + data: + $ref: '#/components/schemas/GcpScanOptionsData' + type: object + GcpScanOptionsInputUpdate: + description: Request object for updating GCP scan options. + example: + data: + id: company-project-id + type: gcp_scan_options + properties: + data: + $ref: '#/components/schemas/GcpScanOptionsInputUpdateData' + type: object + AwsOnDemandListResponse: + description: Response object that includes a list of AWS on demand tasks. + properties: + data: + description: A list of on demand tasks. + items: + $ref: '#/components/schemas/AwsOnDemandData' + type: array + type: object + AwsOnDemandCreateRequest: + description: Request object that includes the on demand task to submit. + properties: + data: + $ref: '#/components/schemas/AwsOnDemandCreateData' + required: + - data + type: object + AwsOnDemandResponse: + description: Response object that includes an AWS on demand task. + properties: + data: + $ref: '#/components/schemas/AwsOnDemandData' + type: object + CreateCustomFrameworkRequest: + description: Request object to create a custom framework. + properties: + data: + $ref: '#/components/schemas/CustomFrameworkData' + required: + - data + type: object + CreateCustomFrameworkResponse: + description: Response object to create a custom framework. + properties: + data: + $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' + required: + - data + type: object + DeleteCustomFrameworkResponse: + description: Response object to delete a custom framework. + properties: + data: + $ref: '#/components/schemas/CustomFrameworkMetadata' + required: + - data + type: object + GetCustomFrameworkResponse: + description: Response object to get a custom framework. + properties: + data: + $ref: '#/components/schemas/FullCustomFrameworkData' + required: + - data + type: object + UpdateCustomFrameworkRequest: + description: Request object to update a custom framework. + properties: + data: + $ref: '#/components/schemas/CustomFrameworkData' + required: + - data + type: object + UpdateCustomFrameworkResponse: + description: Response object to update a custom framework. + properties: + data: + $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' + required: + - data + type: object + GetResourceEvaluationFiltersResponse: + description: The definition of `GetResourceEvaluationFiltersResponse` object. + properties: + data: + $ref: '#/components/schemas/GetResourceEvaluationFiltersResponseData' + required: + - data + type: object + UpdateResourceEvaluationFiltersRequest: + description: Request object to update a resource filter. + properties: + data: + $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequestData' + required: + - data + type: object + UpdateResourceEvaluationFiltersResponse: + description: The definition of `UpdateResourceEvaluationFiltersResponse` object. + properties: + data: + $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponseData' + required: + - data + type: object + RuleBasedViewResponse: + description: Response containing an aggregated view of compliance rules with their finding statistics. + properties: + data: + $ref: '#/components/schemas/RuleBasedViewData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + OrderDirection: + description: The sort direction for results. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASC + - DESC + CsmAgentsResponse: + description: Response object that includes a list of CSM Agents. + properties: + data: + description: A list of Agents. + items: + $ref: '#/components/schemas/CsmAgentData' + type: array + meta: + $ref: '#/components/schemas/CSMAgentsMetadata' + type: object + CsmCloudAccountsCoverageAnalysisResponse: + description: CSM Cloud Accounts Coverage Analysis response. + properties: + data: + $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisData' + type: object + CsmHostsAndContainersCoverageAnalysisResponse: + description: CSM Hosts and Containers Coverage Analysis response. + properties: + data: + $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisData' + type: object + CsmServerlessCoverageAnalysisResponse: + description: CSM Serverless Resources Coverage Analysis response. + properties: + data: + $ref: '#/components/schemas/CsmServerlessCoverageAnalysisData' + type: object + OwnershipSettingsResponse: + description: The response returned when retrieving or updating ownership settings. + properties: + data: + $ref: '#/components/schemas/OwnershipSettingsData' + required: + - data + type: object + OwnershipSettingsRequest: + description: The request body for updating ownership settings. + properties: + data: + $ref: '#/components/schemas/OwnershipSettingsRequestData' + required: + - data + type: object + OwnershipUntaggedFindingsResponse: + description: The response returned when counting findings without a team tag by ownership confidence. + properties: + data: + $ref: '#/components/schemas/OwnershipUntaggedFindingsData' + required: + - data + type: object + OwnershipInferenceListResponse: + description: The response returned when listing all current ownership inferences for a resource. + properties: + data: + $ref: '#/components/schemas/OwnershipInferenceListData' + required: + - data + type: object + OwnershipHistoryResponse: + description: The response returned when listing the inference history for a resource. + properties: + data: + $ref: '#/components/schemas/OwnershipHistoryData' + required: + - data + type: object + OwnershipOwnerType: + description: The owner type for an ownership inference. + enum: + - user + - team + - service + - unknown + example: team + type: string + x-enum-varnames: + - USER + - TEAM + - SERVICE + - UNKNOWN + OwnershipInferenceResponse: + description: The response returned when retrieving a single ownership inference for an owner type. + properties: + data: + $ref: '#/components/schemas/OwnershipInferenceData' + required: + - data + type: object + OwnershipEvidenceResponse: + description: The response returned when retrieving the evidence backing an ownership inference for an owner type. + properties: + data: + $ref: '#/components/schemas/OwnershipEvidenceData' + required: + - data + type: object + OwnershipFeedbackRequest: + description: The request body for submitting ownership feedback. + properties: + data: + $ref: '#/components/schemas/OwnershipFeedbackRequestData' + required: + - data + type: object + OwnershipFeedbackResponse: + description: The response returned after applying ownership feedback to an inference. + properties: + data: + $ref: '#/components/schemas/OwnershipFeedbackResultData' + required: + - data + type: object + CsmAgentlessHostsResponse: + description: The response returned when listing agentless hosts. + properties: + data: + $ref: '#/components/schemas/CsmAgentlessHostItems' + meta: + $ref: '#/components/schemas/CsmSettingsMeta' + required: + - data + - meta + type: object + CsmHostFacetInfoResponse: + description: The response returned when requesting value distribution for a specific facet. + properties: + data: + $ref: '#/components/schemas/CsmHostFacetInfoData' + required: + - data + type: object + CsmAgentlessHostFacetsResponse: + description: The response returned when listing facets for agentless hosts. + properties: + data: + $ref: '#/components/schemas/CsmAgentlessHostFacetItems' + required: + - data + type: object + CsmUnifiedHostsResponse: + description: The response returned when listing unified hosts. + properties: + data: + $ref: '#/components/schemas/CsmUnifiedHostItems' + meta: + $ref: '#/components/schemas/CsmUnifiedHostsMeta' + required: + - data + - meta + type: object + CsmUnifiedHostFacetsResponse: + description: The response returned when listing facets for unified hosts. + properties: + data: + $ref: '#/components/schemas/CsmUnifiedHostFacetItems' + required: + - data + type: object + FindingEvaluation: + description: The evaluation of the finding. + enum: + - pass + - fail + example: pass + type: string + x-enum-varnames: + - PASS + - FAIL + FindingStatus: + description: The status of the finding. + enum: + - critical + - high + - medium + - low + - info + example: critical + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MEDIUM + - LOW + - INFO + FindingVulnerabilityType: + description: The vulnerability type of the finding. + enum: - misconfiguration - attack_path - identity_risk @@ -4457,1886 +16983,10683 @@ components: example: misconfiguration type: string x-enum-varnames: - - MISCONFIGURATION - - ATTACK_PATH - - IDENTITY_RISK - - API_SECURITY - ListFindingsResponse: - description: The expected response schema when listing findings. + - MISCONFIGURATION + - ATTACK_PATH + - IDENTITY_RISK + - API_SECURITY + ListFindingsResponse: + description: The expected response schema when listing findings. + properties: + data: + $ref: '#/components/schemas/ListFindingsData' + example: + - attributes: + evaluation: fail + resource: arn:aws:s3:::my-bucket + resource_type: aws_s3_bucket + status: high + id: abc-123-xyz + type: finding + meta: + $ref: '#/components/schemas/ListFindingsMeta' + required: + - data + - meta + type: object + GetFindingResponse: + description: The expected response schema when getting a finding. + properties: + data: + $ref: '#/components/schemas/DetailedFinding' + required: + - data + type: object + SecurityEntityRiskScoresResponse: + description: Response containing a list of entity risk scores + properties: + data: + description: Array of entity risk score objects. + items: + $ref: '#/components/schemas/SecurityEntityRiskScore' + type: array + meta: + $ref: '#/components/schemas/SecurityEntityRiskScoresMeta' + required: + - data + - meta + type: object + SecurityEntityRiskScoreResponse: + description: Response containing a single entity risk score + properties: + data: + $ref: '#/components/schemas/SecurityEntityRiskScore' + required: + - data + type: object + ApplicationSecurityServicesResponse: + description: Response object containing the list of services matching the requested name. + properties: + data: + description: The list of services matching the requested name. + items: + $ref: '#/components/schemas/ApplicationSecurityServiceResource' + type: array + meta: + $ref: '#/components/schemas/ApplicationSecurityServicesMetadata' + required: + - data + - meta + type: object + SecurityFindingsSort: + default: '-@detection_changed_at' + description: The sort parameters when querying security findings. + enum: + - '@detection_changed_at' + - '-@detection_changed_at' + type: string + x-enum-varnames: + - DETECTION_CHANGED_AT_ASC + - DETECTION_CHANGED_AT_DESC + ListSecurityFindingsResponse: + description: The expected response schema when listing security findings. + properties: + data: + description: Array of security findings matching the search query. + items: + $ref: '#/components/schemas/SecurityFindingsData' + type: array + links: + $ref: '#/components/schemas/SecurityFindingsLinks' + meta: + $ref: '#/components/schemas/SecurityFindingsMeta' + type: object + AssigneeRequest: + description: Request to assign or unassign security findings. + properties: + data: + $ref: '#/components/schemas/AssigneeRequestData' + required: + - data + type: object + AssigneeResponse: + description: Response for the assign or unassign request. + properties: + data: + $ref: '#/components/schemas/AssigneeResponseData' + meta: + $ref: '#/components/schemas/AssigneeResponseMeta' + required: + - data + type: object + DueDateRulesResponse: + description: A list of due date rules with pagination metadata. + properties: + data: + $ref: '#/components/schemas/DueDateRulesDataList' + links: + $ref: '#/components/schemas/SecurityAutomationRulesLinks' + meta: + $ref: '#/components/schemas/SecurityAutomationRulesMeta' + required: + - data + - meta + - links + type: object + DueDateRuleCreateRequest: + description: The body of a due date rule create request. + properties: + data: + $ref: '#/components/schemas/DueDateRuleDataCreate' + required: + - data + type: object + DueDateRuleResponse: + description: A single due date rule response. + properties: + data: + $ref: '#/components/schemas/DueDateRuleDataResponse' + required: + - data + type: object + DueDateRuleReorderRequest: + description: The body of the due date rule reorder request. + properties: + data: + $ref: '#/components/schemas/DueDateRuleReorderData' + required: + - data + type: object + DueDateRuleUpdateRequest: + description: The body of a due date rule update request. + properties: + data: + $ref: '#/components/schemas/DueDateRuleDataCreate' + required: + - data + type: object + MuteRulesResponse: + description: A list of mute rules with pagination metadata. + properties: + data: + $ref: '#/components/schemas/MuteRulesDataList' + links: + $ref: '#/components/schemas/SecurityAutomationRulesLinks' + meta: + $ref: '#/components/schemas/SecurityAutomationRulesMeta' + required: + - data + - meta + - links + type: object + MuteRuleCreateRequest: + description: The body of a mute rule create request. + properties: + data: + $ref: '#/components/schemas/MuteRuleDataCreate' + required: + - data + type: object + MuteRuleResponse: + description: A single mute rule response. + properties: + data: + $ref: '#/components/schemas/MuteRuleDataResponse' + required: + - data + type: object + MuteRuleReorderRequest: + description: The body of the mute rule reorder request. + properties: + data: + $ref: '#/components/schemas/MuteRuleReorderData' + required: + - data + type: object + MuteRuleUpdateRequest: + description: The body of a mute rule update request. + properties: + data: + $ref: '#/components/schemas/MuteRuleDataCreate' + required: + - data + type: object + SeverityModifierRulesResponse: + description: A list of severity modifier rules with pagination metadata. + properties: + data: + $ref: '#/components/schemas/SeverityModifierRulesDataList' + links: + $ref: '#/components/schemas/SecurityAutomationRulesLinks' + meta: + $ref: '#/components/schemas/SecurityAutomationRulesMeta' + required: + - data + - meta + - links + type: object + SeverityModifierRuleCreateRequest: + description: The body of a severity modifier rule create request. + properties: + data: + $ref: '#/components/schemas/SeverityModifierRuleDataCreate' + required: + - data + type: object + SeverityModifierRuleResponse: + description: A single severity modifier rule response. + properties: + data: + $ref: '#/components/schemas/SeverityModifierRuleDataResponse' + required: + - data + type: object + SeverityModifierRuleReorderRequest: + description: The body of a severity modifier rule reorder request. + properties: + data: + $ref: '#/components/schemas/SeverityModifierRuleReorderData' + required: + - data + type: object + SeverityModifierRuleReorderResponse: + description: The response of a severity modifier rule reorder request. + properties: + data: + $ref: '#/components/schemas/SeverityModifierRuleReorderData' + required: + - data + type: object + SeverityModifierRuleUpdateRequest: + description: The body of a severity modifier rule update request. + properties: + data: + $ref: '#/components/schemas/SeverityModifierRuleDataCreate' + required: + - data + type: object + TicketCreationRulesResponse: + description: A list of ticket creation rules with pagination metadata. + properties: + data: + $ref: '#/components/schemas/TicketCreationRulesDataList' + links: + $ref: '#/components/schemas/SecurityAutomationRulesLinks' + meta: + $ref: '#/components/schemas/SecurityAutomationRulesMeta' + required: + - data + - meta + - links + type: object + TicketCreationRuleCreateRequest: + description: The body of a ticket creation rule create request. + properties: + data: + $ref: '#/components/schemas/TicketCreationRuleDataCreate' + required: + - data + type: object + TicketCreationRuleResponse: + description: A single ticket creation rule response. + properties: + data: + $ref: '#/components/schemas/TicketCreationRuleDataResponse' + required: + - data + type: object + TicketCreationRuleReorderRequest: + description: The body of the ticket creation rule reorder request. + properties: + data: + $ref: '#/components/schemas/TicketCreationRuleReorderData' + required: + - data + type: object + TicketCreationRuleUpdateRequest: + description: The body of a ticket creation rule update request. + properties: + data: + $ref: '#/components/schemas/TicketCreationRuleDataCreate' + required: + - data + type: object + DetachCaseRequest: + description: Request for detaching security findings from their case. + properties: + data: + $ref: '#/components/schemas/DetachCaseRequestData' + type: object + CreateCaseRequestArray: + description: List of requests to create cases for security findings. + properties: + data: + description: Array of case creation request data objects. + items: + $ref: '#/components/schemas/CreateCaseRequestData' + type: array + required: + - data + type: object + FindingCaseResponseArray: + description: List of case responses. + properties: + data: + description: Array of case response data objects. + items: + $ref: '#/components/schemas/FindingCaseResponseData' + type: array + required: + - data + type: object + AttachCaseRequest: + description: Request for attaching security findings to a case. + properties: + data: + $ref: '#/components/schemas/AttachCaseRequestData' + type: object + FindingCaseResponse: + description: Case response. + properties: + data: + $ref: '#/components/schemas/FindingCaseResponseData' + type: object + AttachJiraIssueRequest: + description: Request for attaching security findings to a Jira issue. + properties: + data: + $ref: '#/components/schemas/AttachJiraIssueRequestData' + type: object + CreateJiraIssueRequestArray: + description: List of requests to create Jira issues for security findings. + properties: + data: + description: Array of Jira issue creation request data objects. + items: + $ref: '#/components/schemas/CreateJiraIssueRequestData' + type: array + required: + - data + type: object + AttachLinearIssueRequest: + description: Request for attaching security findings to a Linear issue. + properties: + data: + $ref: '#/components/schemas/AttachLinearIssueRequestData' + required: + - data + type: object + CreateLinearIssueRequestArray: + description: List of requests to create Linear issues for security findings. + properties: + data: + description: Array of Linear issue creation request data objects. + items: + $ref: '#/components/schemas/CreateLinearIssueRequestData' + type: array + required: + - data + type: object + MuteFindingsRequest: + description: Request to mute or unmute security findings. + properties: + data: + $ref: '#/components/schemas/MuteFindingsRequestData' + required: + - data + type: object + MuteFindingsResponse: + description: Response for the mute or unmute request. + properties: + data: + $ref: '#/components/schemas/MuteFindingsResponseData' + type: object + SecurityFindingsSearchRequest: + description: The request body for searching security findings. + properties: + data: + $ref: '#/components/schemas/SecurityFindingsSearchRequestData' + type: object + AttachServiceNowTicketRequest: + description: Request for attaching security findings to a ServiceNow ticket. + properties: + data: + $ref: '#/components/schemas/AttachServiceNowTicketRequestData' + required: + - data + type: object + CreateServiceNowTicketRequestArray: + description: List of requests to create ServiceNow tickets for security findings. + properties: + data: + description: Array of ServiceNow ticket creation request data objects. + items: + $ref: '#/components/schemas/CreateServiceNowTicketRequestData' + type: array + required: + - data + type: object + AssetType: + description: The asset type + enum: + - Repository + - Service + - Host + - HostImage + - Image + - ServerlessFunction + example: Repository + type: string + x-enum-varnames: + - REPOSITORY + - SERVICE + - HOST + - HOSTIMAGE + - IMAGE + - SERVERLESSFUNCTION + SBOMComponentLicenseType: + description: The SBOM component license type. + enum: + - network_strong_copyleft + - non_standard_copyleft + - other_non_free + - other_non_standard + - permissive + - public_domain + - strong_copyleft + - weak_copyleft + example: application + type: string + x-enum-varnames: + - NETWORK_STRONG_COPYLEFT + - NON_STANDARD_COPYLEFT + - OTHER_NON_FREE + - OTHER_NON_STANDARD + - PERMISSIVE + - PUBLIC_DOMAIN + - STRONG_COPYLEFT + - WEAK_COPYLEFT + ListAssetsSBOMsResponse: + description: The expected response schema when listing assets SBOMs. + properties: + data: + description: List of assets SBOMs. + items: + $ref: '#/components/schemas/SBOM' + type: array + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Metadata' + required: + - data + type: object + SBOMFormat: + description: The SBOM standard + enum: + - CycloneDX + - SPDX + example: CycloneDX + type: string + x-enum-varnames: + - CYCLONEDX + - SPDX + GetSBOMResponse: + description: The expected response schema when getting an SBOM. + properties: + data: + $ref: '#/components/schemas/SBOM' + required: + - data + type: object + CloudAssetType: + description: The cloud asset type + enum: + - Host + - HostImage + - Image + example: Host + type: string + x-enum-varnames: + - HOST + - HOST_IMAGE + - IMAGE + ScannedAssetsMetadata: + description: The expected response schema when listing scanned assets metadata. + properties: + data: + description: List of scanned assets metadata. + items: + $ref: '#/components/schemas/ScannedAssetMetadata' + type: array + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Metadata' + required: + - data + type: object + IoCTriageState: + description: Current triage state of the indicator. + enum: + - not_reviewed + - reviewed + example: not_reviewed + type: string + x-enum-varnames: + - NOT_REVIEWED + - REVIEWED + IoCExplorerListResponse: + description: Response for the list indicators of compromise endpoint. + properties: + data: + $ref: '#/components/schemas/IoCExplorerListResponseData' + type: object + GetIoCIndicatorResponse: + description: Response for the get indicator of compromise endpoint. + properties: + data: + $ref: '#/components/schemas/GetIoCIndicatorResponseData' + type: object + IoCTriageWriteRequest: + description: Request body for creating or updating an indicator triage state. + properties: + data: + $ref: '#/components/schemas/IoCTriageWriteRequestData' + required: + - data + type: object + IoCTriageWriteResponse: + description: Response for the create indicator triage state endpoint. + properties: + data: + $ref: '#/components/schemas/IoCTriageWriteResponseData' + type: object + CreateNotificationRuleParameters: + description: Body of the notification rule create request. + properties: + data: + $ref: '#/components/schemas/CreateNotificationRuleParametersData' + type: object + NotificationRuleResponse: + description: Response object which includes a notification rule. + properties: + data: + $ref: '#/components/schemas/NotificationRule' + type: object + PatchNotificationRuleParameters: + description: Body of the notification rule patch request. + properties: + data: + $ref: '#/components/schemas/PatchNotificationRuleParametersData' + type: object + VulnerabilityType: + description: The vulnerability type. + enum: + - AdminConsoleActive + - CodeInjection + - CommandInjection + - ComponentWithKnownVulnerability + - DangerousWorkflows + - DefaultAppDeployed + - DefaultHtmlEscapeInvalid + - DirectoryListingLeak + - EmailHtmlInjection + - EndOfLife + - HardcodedPassword + - HardcodedSecret + - HeaderInjection + - HstsHeaderMissing + - InsecureAuthProtocol + - InsecureCookie + - InsecureJspLayout + - LdapInjection + - MaliciousPackage + - MandatoryRemediation + - NoHttpOnlyCookie + - NoSameSiteCookie + - NoSqlMongoDbInjection + - PathTraversal + - ReflectionInjection + - RiskyLicense + - SessionRewriting + - SessionRewritting + - SessionTimeout + - SqlInjection + - Ssrf + - StackTraceLeak + - TemplateInjection + - TrustBoundaryViolation + - Unmaintained + - UntrustedDeserialization + - UnvalidatedRedirect + - VerbTampering + - WeakCipher + - WeakHash + - WeakRandomness + - XContentTypeHeaderMissing + - XPathInjection + - Xss + example: WeakCipher + type: string + x-enum-varnames: + - ADMIN_CONSOLE_ACTIVE + - CODE_INJECTION + - COMMAND_INJECTION + - COMPONENT_WITH_KNOWN_VULNERABILITY + - DANGEROUS_WORKFLOWS + - DEFAULT_APP_DEPLOYED + - DEFAULT_HTML_ESCAPE_INVALID + - DIRECTORY_LISTING_LEAK + - EMAIL_HTML_INJECTION + - END_OF_LIFE + - HARDCODED_PASSWORD + - HARDCODED_SECRET + - HEADER_INJECTION + - HSTS_HEADER_MISSING + - INSECURE_AUTH_PROTOCOL + - INSECURE_COOKIE + - INSECURE_JSP_LAYOUT + - LDAP_INJECTION + - MALICIOUS_PACKAGE + - MANDATORY_REMEDIATION + - NO_HTTP_ONLY_COOKIE + - NO_SAME_SITE_COOKIE + - NO_SQL_MONGO_DB_INJECTION + - PATH_TRAVERSAL + - REFLECTION_INJECTION + - RISKY_LICENSE + - SESSION_REWRITING + - SESSION_REWRITTING + - SESSION_TIMEOUT + - SQL_INJECTION + - SSRF + - STACK_TRACE_LEAK + - TEMPLATE_INJECTION + - TRUST_BOUNDARY_VIOLATION + - UNMAINTAINED + - UNTRUSTED_DESERIALIZATION + - UNVALIDATED_REDIRECT + - VERB_TAMPERING + - WEAK_CIPHER + - WEAK_HASH + - WEAK_RANDOMNESS + - X_CONTENT_TYPE_HEADER_MISSING + - X_PATH_INJECTION + - XSS + VulnerabilitySeverity: + description: The vulnerability severity. + enum: + - Unknown + - None + - Low + - Medium + - High + - Critical + example: Medium + type: string + x-enum-varnames: + - UNKNOWN + - NONE + - LOW + - MEDIUM + - HIGH + - CRITICAL + VulnerabilityStatus: + description: The vulnerability status. + enum: + - Open + - Muted + - Remediated + - InProgress + - AutoClosed + example: Open + type: string + x-enum-varnames: + - OPEN + - MUTED + - REMEDIATED + - INPROGRESS + - AUTOCLOSED + VulnerabilityTool: + description: The vulnerability tool. + enum: + - IAST + - SCA + - Infra + - SAST + example: SCA + type: string + x-enum-varnames: + - IAST + - SCA + - INFRA + - SAST + VulnerabilityEcosystem: + description: The related vulnerability asset ecosystem. + enum: + - PyPI + - Maven + - NuGet + - Npm + - RubyGems + - Go + - Packagist + - Deb + - Rpm + - Apk + - Windows + - Generic + - MacOs + - Oci + - BottleRocket + - None + type: string + x-enum-varnames: + - PYPI + - MAVEN + - NUGET + - NPM + - RUBY_GEMS + - GO + - PACKAGIST + - DEB + - RPM + - APK + - WINDOWS + - GENERIC + - MAC_OS + - OCI + - BOTTLE_ROCKET + - NONE + ListVulnerabilitiesResponse: + description: The expected response schema when listing vulnerabilities. + properties: + data: + description: List of vulnerabilities. + items: + $ref: '#/components/schemas/Vulnerability' + type: array + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Metadata' + required: + - data + type: object + CycloneDXBom: + description: A CycloneDX 1.5 Bill of Materials (BOM) document containing vulnerability data. + properties: + bomFormat: + description: The BOM format identifier. Must be `CycloneDX`. + example: CycloneDX + type: string + components: + description: The list of scanned software components. Cannot be empty. + items: + $ref: '#/components/schemas/CycloneDXComponent' + type: array + metadata: + $ref: '#/components/schemas/CycloneDXMetadata' + specVersion: + description: The CycloneDX specification version. Must be `1.5`. + example: '1.5' + type: string + version: + description: The version number of the BOM document. + example: 1 + format: int64 + type: integer + vulnerabilities: + description: The list of detected vulnerabilities. Cannot be empty. + items: + $ref: '#/components/schemas/CycloneDXVulnerability' + type: array + required: + - bomFormat + - specVersion + - metadata + - components + - vulnerabilities + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + ListVulnerableAssetsResponse: + description: The expected response schema when listing vulnerable assets. + properties: + data: + description: List of vulnerable assets. + items: + $ref: '#/components/schemas/Asset' + type: array + links: + $ref: '#/components/schemas/Links' + meta: + $ref: '#/components/schemas/Metadata' + required: + - data + type: object + CloudWorkloadSecurityAgentRulesListResponse: + description: Response object that includes a list of Agent rule + properties: + data: + description: A list of Agent rules objects + items: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' + type: array + type: object + CloudWorkloadSecurityAgentRuleCreateRequest: + description: Request object that includes the Agent rule to create + properties: + data: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateData' + required: + - data + type: object + CloudWorkloadSecurityAgentRuleResponse: + description: Response object that includes an Agent rule + properties: + data: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' + type: object + CloudWorkloadSecurityAgentRuleUpdateRequest: + description: Request object that includes the Agent rule with the attributes to update + properties: + data: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData' + required: + - data + type: object + SecurityMonitoringCriticalAssetsResponse: + description: Response object containing the available critical assets. + properties: + data: + description: A list of critical assets objects. + items: + $ref: '#/components/schemas/SecurityMonitoringCriticalAsset' + type: array + type: object + SecurityMonitoringCriticalAssetCreateRequest: + description: Request object that includes the critical asset that you would like to create. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetCreateData' + required: + - data + type: object + SecurityMonitoringCriticalAssetResponse: + description: Response object containing a single critical asset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringCriticalAsset' + type: object + SecurityMonitoringCriticalAssetUpdateRequest: + description: Request object containing the fields to update on the critical asset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetUpdateData' + required: + - data + type: object + SecurityMonitoringIntegrationType: + description: The type of external source that provides entities to Cloud SIEM. + enum: + - GOOGLE_WORKSPACE + - OKTA + - ENTRA_ID + - CROWDSTRIKE + - SENTINELONE + example: GOOGLE_WORKSPACE + type: string + x-enum-varnames: + - GOOGLE_WORKSPACE + - OKTA + - ENTRA_ID + - CROWDSTRIKE + - SENTINELONE + SecurityMonitoringIntegrationConfigsResponse: + description: Response containing a list of entity context sync configurations. + properties: + data: + description: The list of integration configurations. + items: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigData' + type: array + required: + - data + type: object + SecurityMonitoringIntegrationConfigCreateRequest: + description: Request body to create an entity context sync configuration. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigCreateData' + required: + - data + type: object + SecurityMonitoringIntegrationConfigResponse: + description: Response containing a single entity context sync configuration. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigData' + required: + - data + type: object + SecurityMonitoringEntraIdAzureAppRegistrationsResponse: + description: Response containing the Azure App Registration prerequisites for the Entra ID integration. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsData' + required: + - data + type: object + SecurityMonitoringIntegrationCredentialsValidateRequest: + description: Request body to validate credentials against an external entity source before creating a sync configuration. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringIntegrationCredentialsValidateData' + required: + - data + type: object + SecurityMonitoringIntegrationConfigUpdateRequest: + description: Request body to update an entity context sync configuration. Supports partial updates. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigUpdateData' + required: + - data + type: object + SecurityMonitoringIntegrationActivateRequest: + description: Request body to activate an entity context sync integration for a source type that does not require secrets. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringIntegrationActivateData' + type: object + NotificationRulePreviewResponse: + description: Response from the notification preview request. + properties: + data: + $ref: '#/components/schemas/NotificationRulePreviewResponseData' + required: + - data + type: object + SecurityFiltersResponse: + description: All the available security filters objects. + properties: + data: + description: A list of security filters objects. + items: + $ref: '#/components/schemas/SecurityFilter' + type: array + meta: + $ref: '#/components/schemas/SecurityFilterMeta' + type: object + SecurityFilterCreateRequest: + description: Request object that includes the security filter that you would like to create. + properties: + data: + $ref: '#/components/schemas/SecurityFilterCreateData' + required: + - data + type: object + SecurityFilterResponse: + description: Response object which includes a single security filter. + properties: + data: + $ref: '#/components/schemas/SecurityFilter' + meta: + $ref: '#/components/schemas/SecurityFilterMeta' + type: object + SecurityFilterVersionsResponse: + description: Response containing the version history of security filters. + properties: + data: + description: A list of historical security filter configurations, ordered from the most recent to the oldest. + items: + $ref: '#/components/schemas/SecurityFilterVersion' + type: array + required: + - data + type: object + SecurityFilterUpdateRequest: + description: The new security filter body. + properties: + data: + $ref: '#/components/schemas/SecurityFilterUpdateData' + required: + - data + type: object + SecurityMonitoringSuppressionSort: + description: The sort parameters used for querying suppression rules. + enum: + - name + - start_date + - expiration_date + - update_date + - enabled + - '-name' + - '-start_date' + - '-expiration_date' + - '-update_date' + - '-creation_date' + - '-enabled' + type: string + x-enum-varnames: + - NAME + - START_DATE + - EXPIRATION_DATE + - UPDATE_DATE + - ENABLED + - NAME_DESCENDING + - START_DATE_DESCENDING + - EXPIRATION_DATE_DESCENDING + - UPDATE_DATE_DESCENDING + - CREATION_DATE_DESCENDING + - ENABLED_DESCENDING + SecurityMonitoringPaginatedSuppressionsResponse: + description: Response object containing the available suppression rules with pagination metadata. + properties: + data: + description: A list of suppressions objects. + items: + $ref: '#/components/schemas/SecurityMonitoringSuppression' + type: array + meta: + $ref: '#/components/schemas/SecurityMonitoringSuppressionsMeta' + type: object + SecurityMonitoringSuppressionCreateRequest: + description: Request object that includes the suppression rule that you would like to create. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateData' + required: + - data + type: object + SecurityMonitoringSuppressionResponse: + description: Response object containing a single suppression rule. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSuppression' + type: object + SecurityMonitoringRuleCreatePayload: + description: Create a new rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + required: + - name + - isEnabled + - queries + - options + - cases + - message + - complianceSignalOptions + type: object + SecurityMonitoringSuppressionsResponse: + description: Response object containing the available suppression rules. + properties: + data: + description: A list of suppressions objects. + items: + $ref: '#/components/schemas/SecurityMonitoringSuppression' + type: array + type: object + SecurityMonitoringSuppressionUpdateRequest: + description: Request object containing the fields to update on the suppression rule. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateData' + required: + - data + type: object + GetSuppressionVersionHistoryResponse: + description: Response for getting the suppression version history. + properties: + data: + $ref: '#/components/schemas/GetSuppressionVersionHistoryData' + type: object + SecurityMonitoringContentPackStatesResponse: + description: Response containing content pack states. + properties: + data: + description: Array of content pack states. + items: + $ref: '#/components/schemas/SecurityMonitoringContentPackStateData' + type: array + meta: + $ref: '#/components/schemas/SecurityMonitoringContentPackStateMeta' + required: + - data + - meta + type: object + SecurityMonitoringDatasetsListResponse: + description: Response containing a paginated list of Cloud SIEM datasets. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetsListData' + meta: + $ref: '#/components/schemas/SecurityMonitoringDatasetsListMeta' + required: + - data + - meta + type: object + SecurityMonitoringDatasetCreateRequest: + description: Request body for creating a Cloud SIEM dataset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetCreateData' + required: + - data + type: object + SecurityMonitoringDatasetCreateResponse: + description: Response returned after creating a dataset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetCreateResponseData' + required: + - data + type: object + SecurityMonitoringDatasetDependenciesRequest: + description: Request body for retrieving dependencies of a batch of datasets. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependenciesRequestData' + required: + - data + type: object + SecurityMonitoringDatasetDependenciesResponse: + description: Response listing the dependents of each requested dataset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependenciesResponseData' + required: + - data + type: object + SecurityMonitoringDatasetResponse: + description: Response containing a single Cloud SIEM dataset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetData' + required: + - data + type: object + SecurityMonitoringDatasetUpdateRequest: + description: Request body for updating a Cloud SIEM dataset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetUpdateData' + required: + - data + type: object + SecurityMonitoringDatasetVersionHistoryResponse: + description: Response containing the version history of a Cloud SIEM dataset. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionHistoryData' + required: + - data + type: object + EntityContextResponse: + description: Response from the entity context endpoint, containing the matching entities and pagination metadata. + properties: + data: + description: The list of entities matching the query. + items: + $ref: '#/components/schemas/EntityContextEntity' + type: array + meta: + $ref: '#/components/schemas/EntityContextResponseMeta' + required: + - data + - meta + type: object + SingleEntityContextResponse: + description: Response from the single entity context endpoint, containing the matching entity. + properties: + data: + $ref: '#/components/schemas/EntityContextEntity' + required: + - data + type: object + SecurityMonitoringRuleSort: + description: The sort parameters used for querying security monitoring rules. + enum: + - name + - creation_date + - update_date + - enabled + - type + - highest_severity + - source + - '-name' + - '-creation_date' + - '-update_date' + - '-enabled' + - '-type' + - '-highest_severity' + - '-source' + type: string + x-enum-varnames: + - NAME + - CREATION_DATE + - UPDATE_DATE + - ENABLED + - TYPE + - HIGHEST_SEVERITY + - SOURCE + - NAME_DESCENDING + - CREATION_DATE_DESCENDING + - UPDATE_DATE_DESCENDING + - ENABLED_DESCENDING + - TYPE_DESCENDING + - HIGHEST_SEVERITY_DESCENDING + - SOURCE_DESCENDING + SecurityMonitoringListRulesResponse: + description: List of rules. + properties: + data: + description: Array containing the list of rules. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleResponse' + type: array + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + type: object + SecurityMonitoringRuleResponse: + description: Create a new rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCase' + type: array + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + createdAt: + description: When the rule was created, timestamp in milliseconds. + format: int64 + type: integer + creationAuthorId: + description: User ID of the user who created the rule. + format: int64 + type: integer + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + defaultTags: + description: Default Tags for default rules (included in tags) + example: + - security:attacks + items: + description: Default Tag. + type: string + type: array + deprecationDate: + description: When the rule will be deprecated, timestamp in milliseconds. + format: int64 + type: integer + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + type: boolean + id: + description: The ID of the rule. + type: string + isDefault: + description: Whether the rule is included by default. + type: boolean + isDeleted: + description: Whether the rule has been deleted. + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: The name of the rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeRead' + updateAuthorId: + description: User ID of the user who updated the rule. + format: int64 + type: integer + updatedAt: + description: The date the rule was last updated, in milliseconds. + format: int64 + type: integer + version: + description: The version of the rule. + format: int64 + type: integer + type: object + SecurityMonitoringRuleBulkDeletePayload: + description: Payload for bulk deleting security monitoring rules. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteData' + required: + - data + type: object + SecurityMonitoringRuleBulkDeleteResponse: + description: Response for bulk deleting security monitoring rules. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteResponseData' + type: object + SecurityMonitoringRuleBulkExportPayload: + description: Payload for bulk exporting security monitoring rules. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkExportData' + required: + - data + type: object + SecurityMonitoringRuleConvertPayload: + description: Convert a rule from JSON to Terraform. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringRuleConvertResponse: + description: Result of the convert rule request containing Terraform content. + properties: + ruleId: + description: the ID of the rule. + type: string + terraformContent: + description: Terraform string as a result of converting the rule from JSON. + type: string + type: object + SecurityMonitoringRuleConvertBulkPayload: + description: Payload for bulk converting security monitoring rules to Terraform. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertBulkData' + required: + - data + type: object + SecurityMonitoringRuleTestRequest: + description: Test the rule queries of a rule (rule property is ignored when applied to an existing rule) + properties: + rule: + $ref: '#/components/schemas/SecurityMonitoringRuleTestPayload' + ruleQueryPayloads: + description: Data payloads used to test rules query with the expected result. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayload' + type: array + type: object + SecurityMonitoringRuleTestResponse: + description: Result of the test of the rule queries. + properties: + results: + description: |- + Assert results are returned in the same order as the rule query payloads. + For each payload, it returns True if the result matched the expected result, + False otherwise. + items: + description: Whether the rule query result matched the expected result. + type: boolean + type: array + type: object + SecurityMonitoringRuleValidatePayload: + description: Validate a rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + required: + - name + - isEnabled + - queries + - options + - cases + - message + - complianceSignalOptions + type: object + SecurityMonitoringRuleUpdatePayload: + description: Update an existing rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCase' + type: array + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + customMessage: + description: Custom/Overridden Message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: Name of the rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' + type: array + version: + description: The version of the rule being updated. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + GetRuleVersionHistoryResponse: + description: Response for getting the rule version history. + properties: + data: + $ref: '#/components/schemas/GetRuleVersionHistoryData' + type: object + SampleLogGenerationSubscriptionsStatusFilter: + default: active + description: Filter that controls whether to return only active subscriptions or every subscription on record. + enum: + - active + - all + example: active + type: string + x-enum-varnames: + - ACTIVE + - ALL + SampleLogGenerationSubscriptionsResponse: + description: Response containing a list of sample log generation subscriptions. + properties: + data: + description: The list of sample log generation subscriptions. + items: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionData' + type: array + meta: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionsResponseMeta' + required: + - data + - meta + type: object + SampleLogGenerationSubscriptionCreateRequest: + description: Request body to create a sample log generation subscription for a single content pack. + properties: + data: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionCreateData' + required: + - data + type: object + SampleLogGenerationSubscriptionResponse: + description: Response containing a single sample log generation subscription. + properties: + data: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionData' + required: + - data + type: object + SampleLogGenerationBulkSubscriptionRequest: + description: Request body to create sample log generation subscriptions for multiple content packs at once. + properties: + data: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionData' + required: + - data + type: object + SampleLogGenerationBulkSubscriptionResponse: + description: Response containing the per-content-pack results of a bulk subscription request. + properties: + data: + description: The list of bulk subscription results, one per requested content pack. + items: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionResultItem' + type: array + required: + - data + type: object + SecurityMonitoringSignalsListResponse: + description: |- + The response object with all security signals matching the request + and pagination information. + properties: + data: + description: An array of security signals matching the request. + items: + $ref: '#/components/schemas/SecurityMonitoringSignal' + type: array + links: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseLinks' + meta: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMeta' + type: object + SecurityMonitoringSignalsBulkAssigneeUpdateRequest: + description: Request body for updating the assignee of multiple security signals. + properties: + data: + description: An array of signal assignee updates. + items: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkAssigneeUpdateData' + maxItems: 199 + type: array + required: + - data + type: object + SecurityMonitoringSignalsBulkTriageUpdateResponse: + description: Response for a bulk triage update of security signals. + properties: + result: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkTriageUpdateResult' + status: + description: The status of the bulk operation. + example: done + type: string + type: + description: The type of the response. + example: status + type: string + required: + - type + - status + - result + type: object + SecurityMonitoringSignalsBulkStateUpdateRequest: + description: Request body for updating the triage states of multiple security signals. + properties: + data: + description: An array of signal state updates. + items: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkStateUpdateData' + maxItems: 199 + type: array + required: + - data + type: object + SecurityMonitoringSignalsBulkUpdateRequest: + description: Request body for updating multiple attributes of multiple security signals. + properties: + data: + description: An array of signal updates. + items: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkUpdateData' + maxItems: 199 + type: array + required: + - data + type: object + SecurityMonitoringSignalListRequest: + description: The request for a security signal list. + properties: + filter: + $ref: '#/components/schemas/SecurityMonitoringSignalListRequestFilter' + page: + $ref: '#/components/schemas/SecurityMonitoringSignalListRequestPage' + sort: + $ref: '#/components/schemas/SecurityMonitoringSignalsSort' + type: object + SecurityMonitoringSignalResponse: + description: Security Signal response data object. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignal' + type: object + SecurityMonitoringSignalAssigneeUpdateRequest: + description: Request body for changing the assignee of a given security monitoring signal. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateData' + required: + - data + type: object + SecurityMonitoringSignalTriageUpdateResponse: + description: The response returned after all triage operations, containing the updated signal triage data. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateData' + required: + - data + type: object + SignalEntitiesResponse: + description: Response containing entities related to a security signal. + properties: + data: + $ref: '#/components/schemas/SignalEntitiesData' + required: + - data + type: object + SecurityMonitoringSignalIncidentsUpdateRequest: + description: Request body for changing the related incidents of a given security monitoring signal. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateData' + required: + - data + type: object + SecurityMonitoringSignalSuggestedActionsResponse: + description: Response with suggested actions for a security signal. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalSuggestedActionList' + required: + - data + type: object + SecurityMonitoringSignalStateUpdateRequest: + description: Request body for changing the state of a given security monitoring signal. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateData' + required: + - data + type: object + SecurityMonitoringSignalUpdateRequest: + description: Request body for updating the triage state or assignee of a security signal. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringSignalUpdateData' + required: + - data + type: object + SecurityMonitoringTerraformBulkExportRequest: + description: Request body for bulk exporting security monitoring resources to Terraform. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringTerraformBulkExportData' + required: + - data + type: object + SecurityMonitoringTerraformConvertRequest: + description: Request body for converting a security monitoring resource JSON to Terraform. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringTerraformConvertData' + required: + - data + type: object + SecurityMonitoringTerraformExportResponse: + description: Response containing the Terraform configuration for a security monitoring resource. + properties: + data: + $ref: '#/components/schemas/SecurityMonitoringTerraformExportData' + type: object + SensitiveDataScannerGetConfigResponse: + description: Get all groups response. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponseData' + included: + $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedArray' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMeta' + type: object + SensitiveDataScannerConfigRequest: + description: Group reorder request. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerReorderConfig' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + required: + - data + - meta + type: object + SensitiveDataScannerReorderGroupsResponse: + description: Group reorder response. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMeta' + type: object + SensitiveDataScannerGroupCreateRequest: + description: Create group request. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerGroupCreate' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerCreateGroupResponse: + description: Create group response. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerGroupResponse' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerGroupDeleteRequest: + description: Delete group request. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + required: + - meta + type: object + SensitiveDataScannerGroupDeleteResponse: + description: Delete group response. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerGroupUpdateRequest: + description: Update group request. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerGroupUpdate' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + required: + - data + - meta + type: object + SensitiveDataScannerGroupUpdateResponse: + description: Update group response. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerRuleCreateRequest: + description: Create rule request. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerRuleCreate' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + required: + - data + - meta + type: object + SensitiveDataScannerCreateRuleResponse: + description: Create rule response. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerRuleResponse' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerRuleDeleteRequest: + description: Delete rule request. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + required: + - meta + type: object + SensitiveDataScannerRuleDeleteResponse: + description: Delete rule response. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerRuleUpdateRequest: + description: Update rule request. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerRuleUpdate' + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + required: + - data + - meta + type: object + SensitiveDataScannerRuleUpdateResponse: + description: Update rule response. + properties: + meta: + $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + type: object + SensitiveDataScannerStandardPatternsResponseData: + description: List Standard patterns response data. + properties: + data: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponse' + type: object + ListHistoricalJobsResponse: + description: List of historical jobs. + properties: + data: + description: Array containing the list of historical jobs. + items: + $ref: '#/components/schemas/HistoricalJobResponseData' + type: array + meta: + $ref: '#/components/schemas/HistoricalJobListMeta' + type: object + RunHistoricalJobRequest: + description: Run a historical job request. + properties: + data: + $ref: '#/components/schemas/RunHistoricalJobRequestData' + type: object + JobCreateResponse: + description: Run a historical job response. + properties: + data: + $ref: '#/components/schemas/JobCreateResponseData' + type: object + ConvertJobResultsToSignalsRequest: + description: Request for converting historical job results to signals. + properties: + data: + $ref: '#/components/schemas/ConvertJobResultsToSignalsData' + type: object + HistoricalJobResponse: + description: Historical job response. + properties: + data: + $ref: '#/components/schemas/HistoricalJobResponseData' + type: object + ScaRequest: + description: The top-level request object for submitting a Software Composition Analysis (SCA) scan result. + properties: + data: + $ref: '#/components/schemas/ScaRequestData' + type: object + McpScanRequest: + description: The top-level request object for submitting an MCP SCA dependency scan. + properties: + data: + $ref: '#/components/schemas/McpScanRequestData' + required: + - data + type: object + McpScanRequestResponse: + description: The top-level response object returned when an MCP SCA dependency scan request has been accepted. + properties: + data: + $ref: '#/components/schemas/McpScanRequestResponseData' + required: + - data + type: object + ScanResultResponse: + description: |- + The raw scan result document produced by the SCA processor. + The contents reflect the vulnerabilities and metadata produced for the libraries + submitted in the original scan request. + additionalProperties: {} + type: object + LicensesListResponse: + description: The top-level response object returned by the licenses list endpoint, containing the array of supported SPDX licenses. + properties: + data: + $ref: '#/components/schemas/LicensesListResponseData' + required: + - data + type: object + ResolveVulnerableSymbolsRequest: + description: The top-level request object for resolving vulnerable symbols in a set of packages. + properties: + data: + $ref: '#/components/schemas/ResolveVulnerableSymbolsRequestData' + type: object + ResolveVulnerableSymbolsResponse: + description: The top-level response object returned when resolving vulnerable symbols for a set of packages. + properties: + data: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponseData' + type: object + AiMemoryViolationResultsResponse: + description: Response containing a list of AI memory violation results. + properties: + data: + description: The list of AI memory violation results. + items: + $ref: '#/components/schemas/AiMemoryViolationResultResponseData' + type: array + required: + - data + type: object + AiMemoryViolationResultRequest: + description: Request body for creating an AI memory violation result. + properties: + data: + $ref: '#/components/schemas/AiMemoryViolationResultRequestData' + type: object + AiPromptsResponse: + description: Response containing a list of AI prompts. + properties: + data: + description: The list of AI prompts. + items: + $ref: '#/components/schemas/AiPromptResponseData' + type: array + required: + - data + type: object + AiCustomRulesetsResponse: + description: Response containing a list of AI custom rulesets. + properties: + data: + description: The list of AI custom rulesets. + items: + $ref: '#/components/schemas/AiCustomRulesetResponseData' + type: array + required: + - data + type: object + AiCustomRulesetRequest: + description: Request body for creating an AI custom ruleset. + properties: + data: + $ref: '#/components/schemas/AiCustomRulesetRequestData' + type: object + AiCustomRulesetResponse: + description: Response containing a single AI custom ruleset. + properties: + data: + $ref: '#/components/schemas/AiCustomRulesetResponseData' + required: + - data + type: object + AiCustomRulesetUpdateRequest: + description: Request body for updating an AI custom ruleset. + properties: + data: + $ref: '#/components/schemas/AiCustomRulesetUpdateData' + type: object + AiCustomRuleRequest: + description: Request body for creating an AI custom rule. + properties: + data: + $ref: '#/components/schemas/AiCustomRuleRequestData' + type: object + AiCustomRuleResponse: + description: Response containing a single AI custom rule. + properties: + data: + $ref: '#/components/schemas/AiCustomRuleResponseData' + required: + - data + type: object + AiCustomRuleRevisionsResponse: + description: Response containing a list of AI custom rule revisions. + properties: + data: + description: The list of AI custom rule revisions. + items: + $ref: '#/components/schemas/AiCustomRuleRevisionResponseData' + type: array + required: + - data + type: object + AiCustomRuleRevisionRequest: + description: Request body for creating an AI custom rule revision. + properties: + data: + $ref: '#/components/schemas/AiCustomRuleRevisionRequestData' + type: object + AiCustomRuleRevisionResponse: + description: Response containing a single AI custom rule revision. + properties: + data: + $ref: '#/components/schemas/AiCustomRuleRevisionResponseData' + required: + - data + type: object + SastRulesetsResponse: + description: The response payload containing a list of SAST rulesets and their rules. + properties: + data: + description: The list of SAST rulesets returned in the response. + items: + $ref: '#/components/schemas/SastRulesetData' + type: array + required: + - data + type: object + CustomRulesetListResponse: + description: Response containing a list of custom rulesets for the authenticated organization. + properties: + data: + description: The list of custom rulesets. + items: + $ref: '#/components/schemas/CustomRuleset' + type: array + required: + - data + type: object + CustomRulesetRequest: + description: Request body for creating or updating a custom ruleset. + properties: + data: + $ref: '#/components/schemas/CustomRulesetRequestData' + type: object + CustomRulesetResponse: + description: Response containing a single custom ruleset. + properties: + data: + $ref: '#/components/schemas/CustomRuleset' + required: + - data + type: object + CustomRuleRequest: + description: Request body for creating or updating a custom rule. + properties: + data: + $ref: '#/components/schemas/CustomRuleRequestData' + type: object + CustomRuleResponse: + description: Response containing a single custom rule. + properties: + data: + $ref: '#/components/schemas/CustomRuleResponseData' + required: + - data + type: object + CustomRuleRevisionsResponse: + description: Response containing a paginated list of custom rule revisions. + properties: + data: + description: List of custom rule revisions. + items: + $ref: '#/components/schemas/CustomRuleRevision' + type: array + type: object + CustomRuleRevisionRequest: + description: Request body for creating a new custom rule revision. + properties: + data: + $ref: '#/components/schemas/CustomRuleRevisionRequestData' + type: object + RevertCustomRuleRevisionRequest: + description: Request body for reverting a custom rule to a previous revision. + properties: + data: + $ref: '#/components/schemas/RevertCustomRuleRevisionRequestData' + type: object + CustomRuleRevisionResponse: + description: Response containing a single custom rule revision. + properties: + data: + $ref: '#/components/schemas/CustomRuleRevision' + required: + - data + type: object + DefaultRulesetsPerLanguageResponse: + description: The response payload containing the default ruleset names for a programming language. + properties: + data: + $ref: '#/components/schemas/DefaultRulesetsPerLanguageData' + required: + - data + type: object + GetMultipleRulesetsRequest: + description: The request payload for retrieving rules for multiple rulesets in a single batch call. + properties: + data: + $ref: '#/components/schemas/GetMultipleRulesetsRequestData' + type: object + GetMultipleRulesetsResponse: + description: The response payload for the get-multiple-rulesets endpoint, containing the requested rulesets and their rules. + properties: + data: + $ref: '#/components/schemas/GetMultipleRulesetsResponseData' + type: object + SastRulesetResponse: + description: The response payload containing a single SAST ruleset and its rules. + properties: + data: + $ref: '#/components/schemas/SastRulesetData' + required: + - data + type: object + SecretRuleArray: + description: A collection of secret detection rules returned by the list endpoint. + properties: + data: + description: The list of secret detection rules. + items: + $ref: '#/components/schemas/SecretRuleData' + type: array + required: + - data + type: object + AnalysisRequest: + description: The request payload for running static analysis on source code. + properties: + data: + $ref: '#/components/schemas/AnalysisRequestData' + required: + - data + type: object + AnalysisResponse: + description: The response payload from running static analysis on source code. + properties: + data: + $ref: '#/components/schemas/AnalysisResponseData' + required: + - data + type: object + GetAstRequest: + description: The request payload for parsing source code into an abstract syntax tree. + properties: + data: + $ref: '#/components/schemas/GetAstRequestData' + required: + - data + type: object + GetAstResponse: + description: The response payload containing the parsed abstract syntax tree. + properties: + data: + $ref: '#/components/schemas/GetAstResponseData' + required: + - data + type: object + NodeTypesResponse: + description: The response payload containing tree-sitter node type definitions for a programming language. + properties: + data: + $ref: '#/components/schemas/NodeTypesResponseData' + required: + - data + type: object + AddSignalToIncidentRequest: + description: Attributes describing which incident to add the signal to. + properties: + add_to_signal_timeline: + description: Whether to post the signal on the incident timeline. + type: boolean + incident_id: + description: Public ID attribute of the incident to which the signal will be added. + example: 2066 + format: int64 + type: integer + version: + $ref: '#/components/schemas/VersionV1' + required: + - incident_id + type: object + SuccessfulSignalUpdateResponse: + description: Updated signal data following a successfully performed update. + properties: + status: + description: Status of the response. + type: string + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + SignalAssigneeUpdateRequest: + description: Attributes describing an assignee update operation over a security signal. + properties: + assignee: + description: The UUID of the user being assigned. Use empty string to return signal to unassigned. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + type: string + version: + $ref: '#/components/schemas/VersionV1' + required: + - assignee + type: object + SignalStateUpdateRequest: + description: Attributes describing the change of state for a given state. + properties: + archiveComment: + description: Optional comment to explain why a signal is being archived. + type: string + archiveReason: + $ref: '#/components/schemas/SignalArchiveReason' + state: + $ref: '#/components/schemas/SignalTriageState' + version: + $ref: '#/components/schemas/VersionV1' + required: + - state + type: object + AwsScanOptionsData: + description: Single AWS Scan Options entry. + properties: + attributes: + $ref: '#/components/schemas/AwsScanOptionsAttributes' + id: + description: The ID of the AWS account. + example: '184366314700' + type: string + type: + $ref: '#/components/schemas/AwsScanOptionsType' + type: object + AwsScanOptionsCreateData: + description: Object for the scan options of a single AWS account. + properties: + attributes: + $ref: '#/components/schemas/AwsScanOptionsCreateAttributes' + id: + $ref: '#/components/schemas/AwsAccountId' + type: + $ref: '#/components/schemas/AwsScanOptionsType' + required: + - id + - type + - attributes + type: object + AwsScanOptionsUpdateData: + description: Object for the scan options of a single AWS account. + properties: + attributes: + $ref: '#/components/schemas/AwsScanOptionsUpdateAttributes' + id: + $ref: '#/components/schemas/AwsAccountId' + type: + $ref: '#/components/schemas/AwsScanOptionsType' + required: + - id + - type + - attributes + type: object + AzureScanOptionsData: + description: Single Azure scan options entry. + properties: + attributes: + $ref: '#/components/schemas/AzureScanOptionsDataAttributes' + id: + description: The Azure subscription ID. + example: '' + type: string + type: + $ref: '#/components/schemas/AzureScanOptionsDataType' + required: + - type + - id + type: object + AzureScanOptionsInputUpdateData: + description: Data object for updating the scan options of a single Azure subscription. + properties: + attributes: + $ref: '#/components/schemas/AzureScanOptionsInputUpdateDataAttributes' + id: + description: The Azure subscription ID. + example: 12345678-90ab-cdef-1234-567890abcdef + type: string + type: + $ref: '#/components/schemas/AzureScanOptionsInputUpdateDataType' + required: + - type + - id + type: object + GcpScanOptionsData: + description: Single GCP scan options entry. + properties: + attributes: + $ref: '#/components/schemas/GcpScanOptionsDataAttributes' + id: + description: The GCP project ID. + example: '' + type: string + type: + $ref: '#/components/schemas/GcpScanOptionsDataType' + required: + - type + - id + type: object + GcpScanOptionsInputUpdateData: + description: Data object for updating the scan options of a single GCP project. + properties: + attributes: + $ref: '#/components/schemas/GcpScanOptionsInputUpdateDataAttributes' + id: + description: The GCP project ID. + example: '' + type: string + type: + $ref: '#/components/schemas/GcpScanOptionsInputUpdateDataType' + required: + - type + - id + type: object + AwsOnDemandData: + description: Single AWS on demand task. + properties: + attributes: + $ref: '#/components/schemas/AwsOnDemandAttributes' + id: + description: The UUID of the task. + example: 6d09294c-9ad9-42fd-a759-a0c1599b4828 + type: string + type: + $ref: '#/components/schemas/AwsOnDemandType' + type: object + AwsOnDemandCreateData: + description: Object for a single AWS on demand task. + properties: + attributes: + $ref: '#/components/schemas/AwsOnDemandCreateAttributes' + type: + $ref: '#/components/schemas/AwsOnDemandType' + required: + - type + - attributes + type: object + CustomFrameworkData: + description: Contains type and attributes for custom frameworks. + properties: + attributes: + $ref: '#/components/schemas/CustomFrameworkDataAttributes' + type: + $ref: '#/components/schemas/CustomFrameworkType' + required: + - type + - attributes + type: object + FrameworkHandleAndVersionResponseData: + description: Contains type and attributes for custom frameworks. + properties: + attributes: + $ref: '#/components/schemas/CustomFrameworkDataHandleAndVersion' + id: + description: The ID of the custom framework. + example: handle-version + type: string + type: + $ref: '#/components/schemas/CustomFrameworkType' + required: + - id + - type + - attributes + type: object + CustomFrameworkMetadata: + description: Metadata for custom frameworks. + properties: + attributes: + $ref: '#/components/schemas/CustomFrameworkWithoutRequirements' + id: + description: The ID of the custom framework. + example: handle-version + type: string + type: + $ref: '#/components/schemas/CustomFrameworkType' + type: object + FullCustomFrameworkData: + description: Contains type and attributes for custom frameworks. + properties: + attributes: + $ref: '#/components/schemas/FullCustomFrameworkDataAttributes' + id: + description: The ID of the custom framework. + example: handle-version + type: string + type: + $ref: '#/components/schemas/CustomFrameworkType' + required: + - id + - type + - attributes + type: object + GetResourceEvaluationFiltersResponseData: + description: The definition of `GetResourceFilterResponseData` object. + properties: + attributes: + $ref: '#/components/schemas/ResourceFilterAttributes' + id: + description: The `data` `id`. + example: csm_resource_filter + type: string + type: + $ref: '#/components/schemas/ResourceFilterRequestType' + type: object + UpdateResourceEvaluationFiltersRequestData: + description: The definition of `UpdateResourceFilterRequestData` object. + properties: + attributes: + $ref: '#/components/schemas/ResourceFilterAttributes' + id: + description: The `UpdateResourceEvaluationFiltersRequestData` `id`. + example: csm_resource_filter + type: string + type: + $ref: '#/components/schemas/ResourceFilterRequestType' + required: + - attributes + - type + type: object + UpdateResourceEvaluationFiltersResponseData: + description: The definition of `UpdateResourceFilterResponseData` object. + properties: + attributes: + $ref: '#/components/schemas/ResourceFilterAttributes' + id: + description: The `data` `id`. + example: csm_resource_filter + type: string + type: + $ref: '#/components/schemas/ResourceFilterRequestType' + required: + - attributes + - type + type: object + RuleBasedViewData: + description: Data envelope for the rule-based view response. + properties: + attributes: + $ref: '#/components/schemas/RuleBasedViewAttributes' + id: + description: Unique identifier of the rule-based view document. + example: JSONAPI_USELESS_ID + type: string + type: + $ref: '#/components/schemas/RuleBasedViewType' + required: + - attributes + - id + - type + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + CsmAgentData: + description: Single Agent Data. + properties: + attributes: + $ref: '#/components/schemas/CsmAgentsAttributes' + id: + description: The ID of the Agent. + example: fffffc5505f6a006fdf7cf5aae053653 + type: string + type: + $ref: '#/components/schemas/CSMAgentsType' + type: object + CSMAgentsMetadata: + description: Metadata related to the paginated response. + properties: + page_index: + description: The index of the current page in the paginated results. + example: 0 + format: int64 + type: integer + page_size: + description: The number of items per page in the paginated results. + example: 10 + format: int64 + type: integer + total_filtered: + description: Total number of items that match the filter criteria. + example: 128697 + format: int64 + type: integer + type: object + CsmCloudAccountsCoverageAnalysisData: + description: CSM Cloud Accounts Coverage Analysis data. + properties: + attributes: + $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisAttributes' + id: + description: The ID of your organization. + example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 + type: string + type: + default: get_cloud_accounts_coverage_analysis_response_public_v0 + description: The type of the resource. The value should always be `get_cloud_accounts_coverage_analysis_response_public_v0`. + example: get_cloud_accounts_coverage_analysis_response_public_v0 + type: string + type: object + CsmHostsAndContainersCoverageAnalysisData: + description: CSM Hosts and Containers Coverage Analysis data. + properties: + attributes: + $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisAttributes' + id: + description: The ID of your organization. + example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 + type: string + type: + default: get_hosts_and_containers_coverage_analysis_response_public_v0 + description: The type of the resource. The value should always be `get_hosts_and_containers_coverage_analysis_response_public_v0`. + example: get_hosts_and_containers_coverage_analysis_response_public_v0 + type: string + type: object + CsmServerlessCoverageAnalysisData: + description: CSM Serverless Resources Coverage Analysis data. + properties: + attributes: + $ref: '#/components/schemas/CsmServerlessCoverageAnalysisAttributes' + id: + description: The ID of your organization. + example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 + type: string + type: + default: get_serverless_coverage_analysis_response_public_v0 + description: The type of the resource. The value should always be `get_serverless_coverage_analysis_response_public_v0`. + example: get_serverless_coverage_analysis_response_public_v0 + type: string + type: object + OwnershipSettingsData: + description: The data wrapper for an ownership settings response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipSettingsAttributes' + id: + description: The identifier of the ownership settings resource. + example: settings + type: string + type: + $ref: '#/components/schemas/OwnershipSettingsType' + required: + - id + - type + - attributes + type: object + OwnershipSettingsRequestData: + description: The data wrapper for an ownership settings request. + properties: + attributes: + $ref: '#/components/schemas/OwnershipSettingsRequestAttributes' + type: + $ref: '#/components/schemas/OwnershipSettingsType' + required: + - type + - attributes + type: object + OwnershipUntaggedFindingsData: + description: The data wrapper for an ownership untagged findings response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipUntaggedFindingsAttributes' + id: + description: The identifier of the ownership untagged findings resource. + example: untagged + type: string + type: + $ref: '#/components/schemas/OwnershipUntaggedFindingsType' + required: + - id + - type + - attributes + type: object + OwnershipInferenceListData: + description: The data wrapper for the ownership inferences collection response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipInferenceListAttributes' + id: + description: The resource identifier associated with the returned inferences. + example: test-resource + type: string + type: + $ref: '#/components/schemas/OwnershipInferencesType' + required: + - id + - type + - attributes + type: object + OwnershipHistoryData: + description: The data wrapper for an ownership history response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipHistoryAttributes' + id: + description: The resource identifier for which history is returned. + example: res-1 + type: string + type: + $ref: '#/components/schemas/OwnershipHistoryType' + required: + - id + - type + - attributes + type: object + OwnershipInferenceData: + description: The data wrapper for a single ownership inference response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipInferenceAttributes' + id: + description: The identifier of the inference, formatted as `resource_id:owner_type`. + example: test-resource:team + type: string + type: + $ref: '#/components/schemas/OwnershipInferenceType' + required: + - id + - type + - attributes + type: object + OwnershipEvidenceData: + description: The data wrapper for an ownership evidence response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipEvidenceAttributes' + id: + description: The identifier of the resource the evidence applies to. + example: test-resource + type: string + type: + $ref: '#/components/schemas/OwnershipEvidenceType' + required: + - id + - type + - attributes + type: object + OwnershipFeedbackRequestData: + description: The data wrapper for an ownership feedback request. + properties: + attributes: + $ref: '#/components/schemas/OwnershipFeedbackRequestAttributes' + type: + $ref: '#/components/schemas/OwnershipFeedbackType' + required: + - type + - attributes + type: object + OwnershipFeedbackResultData: + description: The data wrapper for an ownership feedback result response. + properties: + attributes: + $ref: '#/components/schemas/OwnershipFeedbackResultAttributes' + id: + description: The identifier of the resource that the feedback was applied to. + example: res-1 + type: string + type: + $ref: '#/components/schemas/OwnershipFeedbackResultType' + required: + - id + - type + - attributes + type: object + CsmAgentlessHostItems: + description: The list of agentless hosts for the current page. + items: + $ref: '#/components/schemas/CsmAgentlessHostData' + type: array + CsmSettingsMeta: + description: Pagination metadata for a CSM settings list response. + properties: + page_index: + description: The current page index (zero-based). + example: 0 + format: int64 + type: integer + page_size: + description: The number of resources returned per page. + example: 10 + format: int64 + type: integer + total_filtered: + description: The total number of resources matching the filter criteria. + example: 100 + format: int64 + type: integer + required: + - total_filtered + - page_index + - page_size + type: object + CsmHostFacetInfoData: + description: The data wrapper for a facet info response. + properties: + attributes: + $ref: '#/components/schemas/CsmHostFacetInfoAttributes' + id: + description: The identifier of the facet. + example: cloud_provider + type: string + meta: + $ref: '#/components/schemas/CsmHostFacetInfoMeta' + type: + $ref: '#/components/schemas/CsmFacetInfoType' + required: + - id + - type + - attributes + - meta + type: object + CsmAgentlessHostFacetItems: + description: The list of available facets for agentless hosts. + items: + $ref: '#/components/schemas/CsmAgentlessHostFacetData' + type: array + CsmUnifiedHostItems: + description: The list of unified hosts for the current page. + items: + $ref: '#/components/schemas/CsmUnifiedHostData' + type: array + CsmUnifiedHostsMeta: + description: Pagination metadata for a unified hosts list response. + properties: + page_index: + description: The current page index (zero-based). + example: 0 + format: int64 + type: integer + page_size: + description: The number of hosts returned per page. + example: 10 + format: int64 + type: integer + total_filtered: + description: The total number of hosts matching the filter criteria. + example: 100 + format: int64 + type: integer + total_pages: + description: The total number of pages available. + example: 10 + format: int64 + type: integer + required: + - total_filtered + - page_index + - page_size + - total_pages + type: object + CsmUnifiedHostFacetItems: + description: The list of available facets for unified hosts. + items: + $ref: '#/components/schemas/CsmUnifiedHostFacetData' + type: array + ListFindingsData: + description: Array of findings. + items: + $ref: '#/components/schemas/Finding' + type: array + ListFindingsMeta: + additionalProperties: false + description: Metadata for pagination. + properties: + page: + $ref: '#/components/schemas/ListFindingsPage' + snapshot_timestamp: + description: The point in time corresponding to the listed findings. + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + type: object + DetailedFinding: + description: A single finding with with message and resource configuration. + properties: + attributes: + $ref: '#/components/schemas/DetailedFindingAttributes' + id: + $ref: '#/components/schemas/FindingID' + type: + $ref: '#/components/schemas/DetailedFindingType' + type: object + SecurityEntityRiskScore: + description: An entity risk score containing security risk assessment information + properties: + attributes: + $ref: '#/components/schemas/SecurityEntityRiskScoreAttributes' + id: + description: Unique identifier for the entity + example: arn:aws:iam::123456789012:user/john.doe + type: string + type: + $ref: '#/components/schemas/SecurityEntityRiskScoreType' + required: + - id + - type + - attributes + type: object + SecurityEntityRiskScoresMeta: + description: Metadata for pagination + properties: + pageNumber: + description: Current page number (1-indexed) + example: 1 + format: int64 + type: integer + pageSize: + description: Number of items per page + example: 10 + format: int64 + type: integer + queryId: + description: Query ID for pagination consistency + example: abc123def456 + type: string + totalRowCount: + description: Total number of entities matching the query + example: 150 + format: int64 + type: integer + required: + - queryId + - totalRowCount + - pageSize + - pageNumber + type: object + ApplicationSecurityServiceResource: + description: A JSON:API resource describing a service and its Application Security details. + properties: + attributes: + $ref: '#/components/schemas/ApplicationSecurityServiceAttributes' + id: + description: The unique identifier of the service, formatted as `_`. + example: web-store_prod + type: string + type: + $ref: '#/components/schemas/ApplicationSecurityServiceType' + required: + - id + - type + - attributes + type: object + ApplicationSecurityServicesMetadata: + description: Metadata returned alongside the list of services. + properties: + num_services_with_appsec: + description: The number of services with Application Security Management (Threats) enabled. + example: 1 + format: int64 + type: integer + required: + - num_services_with_appsec + type: object + SecurityFindingsData: + description: A single security finding. + properties: + attributes: + $ref: '#/components/schemas/SecurityFindingsAttributes' + id: + description: The unique ID of the security finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: string + type: + $ref: '#/components/schemas/SecurityFindingsDataType' + type: object + SecurityFindingsLinks: + description: Links for pagination. + properties: + next: + description: Link for the next page of results. Note that paginated requests can also be made using the POST endpoint. + example: https://app.datadoghq.com/api/v2/security/findings?page[cursor]=eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==&page[limit]=25 + type: string + type: object + SecurityFindingsMeta: + description: Metadata about the response. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 548 + format: int64 + type: integer + page: + $ref: '#/components/schemas/SecurityFindingsPage' + request_id: + description: The identifier of the request. + example: pddv1ChZwVlMxMUdYRFRMQ1lyb3B4MGNYbFlnIi0KHQu35LDbucx + type: string + status: + $ref: '#/components/schemas/SecurityFindingsStatus' + type: object + AssigneeRequestData: + description: Data of the assignee request. + properties: + attributes: + $ref: '#/components/schemas/AssigneeRequestDataAttributes' + id: + description: Unique identifier of the assignee request. + example: 00000000-0000-0000-0000-000000000001 + type: string + relationships: + $ref: '#/components/schemas/AssigneeRequestDataRelationships' + type: + $ref: '#/components/schemas/AssigneeDataType' + required: + - relationships + - type + type: object + AssigneeResponseData: + description: Data of the assignee response. + properties: + attributes: + $ref: '#/components/schemas/AssigneeResponseDataAttributes' + id: + description: Unique identifier of the assignee request. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/AssigneeDataType' + required: + - id + - type + - attributes + type: object + AssigneeResponseMeta: + description: Per-finding warnings and failures produced while processing the bulk assignee request. + properties: + failures: + description: Findings that could not be assigned or unassigned. + items: + $ref: '#/components/schemas/AssignmentResult' + type: array + warnings: + description: Findings for which the assignment succeeded but a non-critical error occurred during processing. + items: + $ref: '#/components/schemas/AssignmentResult' + type: array + type: object + DueDateRulesDataList: + description: A list of due date rule data objects. + items: + $ref: '#/components/schemas/DueDateRuleDataResponse' + type: array + SecurityAutomationRulesLinks: + description: Pagination links for the list of automation rules. + properties: + first: + description: Link to the first page of results. + example: /api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=0 + type: string + last: + description: Link to the last page of results. + example: /api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=5 + type: string + next: + description: Link to the next page of results. + example: /api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=2 + type: string + prev: + description: Link to the previous page of results. + example: /api/v2/security/findings/automation/mute_rules?page[size]=10&page[number]=0 + type: string + required: + - first + - last + type: object + SecurityAutomationRulesMeta: + description: Metadata for the list of automation rules. + properties: + page: + $ref: '#/components/schemas/SecurityAutomationRulesPageInfo' + required: + - page + type: object + DueDateRuleDataCreate: + description: The data object for a due date rule create or update request. + properties: + attributes: + $ref: '#/components/schemas/DueDateRuleAttributesCreate' + type: + $ref: '#/components/schemas/DueDateRuleType' + required: + - type + - attributes + type: object + DueDateRuleDataResponse: + description: The data object for a due date rule returned by the API. + properties: + attributes: + $ref: '#/components/schemas/DueDateRuleAttributesResponse' + id: + description: The ID of the due date rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/DueDateRuleType' + required: + - id + - type + - attributes + type: object + DueDateRuleReorderData: + description: The ordered list of all due date rules; every rule must be included. + items: + $ref: '#/components/schemas/DueDateRuleReorderItem' + type: array + MuteRulesDataList: + description: A list of mute rule data objects. + items: + $ref: '#/components/schemas/MuteRuleDataResponse' + type: array + MuteRuleDataCreate: + description: The data object for a mute rule create or update request. + properties: + attributes: + $ref: '#/components/schemas/MuteRuleAttributesCreate' + type: + $ref: '#/components/schemas/MuteRuleType' + required: + - type + - attributes + type: object + MuteRuleDataResponse: + description: The data object for a mute rule returned by the API. + properties: + attributes: + $ref: '#/components/schemas/MuteRuleAttributesResponse' + id: + description: The ID of the mute rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/MuteRuleType' + required: + - id + - type + - attributes + type: object + MuteRuleReorderData: + description: The ordered list of all mute rules; every rule must be included. + items: + $ref: '#/components/schemas/MuteRuleReorderItem' + type: array + SeverityModifierRulesDataList: + description: A list of severity modifier rule data objects. + items: + $ref: '#/components/schemas/SeverityModifierRuleDataResponse' + type: array + SeverityModifierRuleDataCreate: + description: The data object for a severity modifier rule create or update request. + properties: + attributes: + $ref: '#/components/schemas/SeverityModifierRuleAttributesCreate' + type: + $ref: '#/components/schemas/SeverityModifierRuleType' + required: + - type + - attributes + type: object + SeverityModifierRuleDataResponse: + description: The data object for a severity modifier rule as returned by the API. + properties: + attributes: + $ref: '#/components/schemas/SeverityModifierRuleAttributesResponse' + id: + description: The ID of the severity modifier rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/SeverityModifierRuleType' + required: + - id + - type + - attributes + type: object + SeverityModifierRuleReorderData: + description: The ordered list of severity modifier rules; every rule must be included. + items: + $ref: '#/components/schemas/SeverityModifierRuleReorderItem' + type: array + TicketCreationRulesDataList: + description: A list of ticket creation rule data objects. + items: + $ref: '#/components/schemas/TicketCreationRuleDataResponse' + type: array + TicketCreationRuleDataCreate: + description: The data object for a ticket creation rule create or update request. + properties: + attributes: + $ref: '#/components/schemas/TicketCreationRuleAttributesCreate' + type: + $ref: '#/components/schemas/TicketCreationRuleType' + required: + - type + - attributes + type: object + TicketCreationRuleDataResponse: + description: The data object for a ticket creation rule returned by the API. + properties: + attributes: + $ref: '#/components/schemas/TicketCreationRuleAttributesResponse' + id: + description: The ID of the ticket creation rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/TicketCreationRuleType' + required: + - id + - type + - attributes + type: object + TicketCreationRuleReorderData: + description: The ordered list of all ticket creation rules; every rule must be included. + items: + $ref: '#/components/schemas/TicketCreationRuleReorderItem' + type: array + DetachCaseRequestData: + description: Data for detaching security findings from their case. + properties: + relationships: + $ref: '#/components/schemas/DetachCaseRequestDataRelationships' + type: + $ref: '#/components/schemas/CaseDataType' + required: + - type + type: object + CreateCaseRequestData: + description: Data of the case to create. + properties: + attributes: + $ref: '#/components/schemas/CreateCaseRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateCaseRequestDataRelationships' + type: + $ref: '#/components/schemas/CaseDataType' + required: + - type + type: object + FindingCaseResponseData: + description: Data of the case. + properties: + attributes: + $ref: '#/components/schemas/FindingCaseResponseDataAttributes' + id: + description: Unique identifier of the case. + example: c1234567-89ab-cdef-0123-456789abcdef + type: string + relationships: + $ref: '#/components/schemas/FindingCaseResponseDataRelationships' + type: + $ref: '#/components/schemas/CaseDataType' + required: + - type + type: object + AttachCaseRequestData: + description: Data of the case to attach security findings to. + properties: + id: + description: Unique identifier of the case. + example: c1234567-89ab-cdef-0123-456789abcdef + type: string + relationships: + $ref: '#/components/schemas/AttachCaseRequestDataRelationships' + type: + $ref: '#/components/schemas/CaseDataType' + required: + - type + - id + type: object + AttachJiraIssueRequestData: + description: Data of the Jira issue to attach security findings to. + properties: + attributes: + $ref: '#/components/schemas/AttachJiraIssueRequestDataAttributes' + relationships: + $ref: '#/components/schemas/AttachJiraIssueRequestDataRelationships' + type: + $ref: '#/components/schemas/JiraIssuesDataType' + required: + - type + type: object + CreateJiraIssueRequestData: + description: Data of the Jira issue to create. + properties: + attributes: + $ref: '#/components/schemas/CreateJiraIssueRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateJiraIssueRequestDataRelationships' + type: + $ref: '#/components/schemas/JiraIssuesDataType' + required: + - type + type: object + AttachLinearIssueRequestData: + description: Data of the Linear issue to attach security findings to. + properties: + attributes: + $ref: '#/components/schemas/AttachLinearIssueRequestDataAttributes' + relationships: + $ref: '#/components/schemas/AttachLinearIssueRequestDataRelationships' + type: + $ref: '#/components/schemas/LinearIssuesDataType' + required: + - attributes + - relationships + - type + type: object + CreateLinearIssueRequestData: + description: Data of the Linear issue to create. + properties: + attributes: + $ref: '#/components/schemas/CreateLinearIssueRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateLinearIssueRequestDataRelationships' + type: + $ref: '#/components/schemas/LinearIssuesDataType' + required: + - type + type: object + MuteFindingsRequestData: + description: Data of the mute request. + properties: + attributes: + $ref: '#/components/schemas/MuteFindingsRequestDataAttributes' + id: + description: Unique identifier of the mute request. + example: 00000000-0000-0000-0000-000000000001 + type: string + relationships: + $ref: '#/components/schemas/MuteFindingsRequestDataRelationships' + type: + $ref: '#/components/schemas/MuteDataType' + required: + - attributes + - relationships + - type + type: object + MuteFindingsResponseData: + description: Data of the mute response. + properties: + id: + description: Unique identifier of the mute request. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/MuteDataType' + required: + - type + - id + type: object + SecurityFindingsSearchRequestData: + description: Request data for searching security findings. + properties: + attributes: + $ref: '#/components/schemas/SecurityFindingsSearchRequestDataAttributes' + type: object + AttachServiceNowTicketRequestData: + description: Data of the ServiceNow ticket to attach security findings to. + properties: + attributes: + $ref: '#/components/schemas/AttachServiceNowTicketRequestDataAttributes' + relationships: + $ref: '#/components/schemas/AttachServiceNowTicketRequestDataRelationships' + type: + $ref: '#/components/schemas/ServiceNowTicketsDataType' + required: + - attributes + - relationships + - type + type: object + CreateServiceNowTicketRequestData: + description: Data of the ServiceNow ticket to create. + properties: + attributes: + $ref: '#/components/schemas/CreateServiceNowTicketRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateServiceNowTicketRequestDataRelationships' + type: + $ref: '#/components/schemas/ServiceNowTicketsDataType' + required: + - relationships + - type + type: object + SBOM: + description: A single SBOM + properties: + attributes: + $ref: '#/components/schemas/SBOMAttributes' + id: + description: The unique ID for this SBOM (it is equivalent to the `asset_name` or `asset_name@repo_digest` (Image) + example: github.com/datadog/datadog-agent + type: string + type: + $ref: '#/components/schemas/SBOMType' + type: object + Links: + description: The JSON:API links related to pagination. + properties: + first: + description: First page link. + example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=1&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + type: string + last: + description: Last page link. + example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=15&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + type: string + next: + description: Next page link. + example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=16&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + type: string + previous: + description: Previous page link. + example: https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=14&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + type: string + self: + description: Request link. + example: https://api.datadoghq.com/api/v2/security/vulnerabilities?filter%5Btool%5D=Infra + type: string + required: + - self + - first + - last + type: object + Metadata: + description: The metadata related to this request. + properties: + count: + description: Number of entities included in the response. + example: 150 + format: int64 + type: integer + token: + description: The token that identifies the request. + example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + type: string + total: + description: Total number of entities across all pages. + example: 152431 + format: int64 + type: integer + required: + - count + - total + - token + type: object + ScannedAssetMetadata: + description: The metadata of a scanned asset. + properties: + attributes: + $ref: '#/components/schemas/ScannedAssetMetadataAttributes' + id: + description: The ID of the scanned asset metadata. + example: Host|i-0fc7edef1ab26d7ef + type: string + type: + $ref: '#/components/schemas/ScannedAssetMetadataType' + required: + - id + - type + - attributes + type: object + IoCExplorerListResponseData: + description: IoC Explorer list response data object. + properties: + attributes: + $ref: '#/components/schemas/IoCExplorerListResponseAttributes' + id: + description: Unique identifier for the response. + type: string + type: + description: Response type identifier. + type: string + type: object + GetIoCIndicatorResponseData: + description: IoC indicator response data object. + properties: + attributes: + $ref: '#/components/schemas/GetIoCIndicatorResponseAttributes' + id: + description: Unique identifier for the response. + type: string + type: + description: Response type identifier. + type: string + type: object + IoCTriageWriteRequestData: + description: Data object for the triage write request. + properties: + attributes: + $ref: '#/components/schemas/IoCTriageWriteRequestAttributes' + type: + default: ioc_triage_state + description: Triage state resource type. + example: ioc_triage_state + type: string + required: + - type + - attributes + type: object + IoCTriageWriteResponseData: + description: Data object of the triage write response. + properties: + attributes: + $ref: '#/components/schemas/IoCTriageWriteResponseAttributes' + id: + description: Unique identifier for the triage state record. + type: string + type: + default: ioc_triage_state + description: Triage state resource type. + type: string + type: object + NotificationRulesListResponse: + description: The list of notification rules. + properties: + data: + items: + $ref: '#/components/schemas/NotificationRule' + type: array + type: object + CreateNotificationRuleParametersData: + description: 'Data of the notification rule create request: the rule type, and the rule attributes. All fields are required.' + properties: + attributes: + $ref: '#/components/schemas/CreateNotificationRuleParametersDataAttributes' + type: + $ref: '#/components/schemas/NotificationRulesType' + required: + - attributes + - type + type: object + NotificationRule: + description: |- + Notification rules allow full control over notifications generated by the various Datadog security products. + They allow users to define the conditions under which a notification should be generated (based on rule severities, + rule types, rule tags, and so on), and the targets to notify. + A notification rule is composed of a rule ID, a rule type, and the rule attributes. All fields are required. + properties: + attributes: + $ref: '#/components/schemas/NotificationRuleAttributes' + id: + $ref: '#/components/schemas/ID' + type: + $ref: '#/components/schemas/NotificationRulesType' + required: + - attributes + - id + - type + type: object + PatchNotificationRuleParametersData: + description: 'Data of the notification rule patch request: the rule ID, the rule type, and the rule attributes. All fields are required.' + properties: + attributes: + $ref: '#/components/schemas/PatchNotificationRuleParametersDataAttributes' + id: + $ref: '#/components/schemas/ID' + type: + $ref: '#/components/schemas/NotificationRulesType' + required: + - attributes + - id + - type + type: object + Vulnerability: + description: A single vulnerability + properties: + attributes: + $ref: '#/components/schemas/VulnerabilityAttributes' + id: + description: The unique ID for this vulnerability. + example: 3ecdfea798f2ce8f6e964805a344945f + type: string + relationships: + $ref: '#/components/schemas/VulnerabilityRelationships' + type: + $ref: '#/components/schemas/VulnerabilitiesType' + required: + - id + - type + - attributes + - relationships + type: object + CycloneDXComponent: + description: A software component identified during scanning. + properties: + bom-ref: + description: A unique reference identifier used to link vulnerabilities to this component. + example: a3390fca-c315-41ae-ae05-af5e7859cdee + type: string + name: + description: The name of the component. + example: lodash + type: string + purl: + description: The Package URL (PURL) of the component. Required when `type` is `library`. + example: pkg:npm/lodash@4.17.21 + type: string + type: + $ref: '#/components/schemas/CycloneDXComponentType' + version: + description: The version of the component. + example: 4.17.21 + type: string + required: + - bom-ref + - type + - name + - version + type: object + CycloneDXMetadata: + description: Metadata about the BOM, including the scanned asset and the scanner tool. + properties: + component: + $ref: '#/components/schemas/CycloneDXMetadataComponent' + tools: + $ref: '#/components/schemas/CycloneDXMetadataTools' + required: + - component + - tools + type: object + CycloneDXVulnerability: + description: A security vulnerability affecting one or more components. + properties: + advisories: + description: External advisory references for the vulnerability. + items: + $ref: '#/components/schemas/CycloneDXVulnerabilityAdvisory' + type: array + affects: + description: The components affected by this vulnerability. Must be non-empty. Each `ref` must match a `bom-ref` in `components`. + items: + $ref: '#/components/schemas/CycloneDXVulnerabilityAffects' + type: array + analysis: + $ref: '#/components/schemas/CycloneDXVulnerabilityAnalysis' + cwes: + description: CWE identifiers associated with the vulnerability. + example: + - 123 + - 345 + items: + format: int64 + type: integer + type: array + description: + description: A short description of the vulnerability. + example: Sample vulnerability detected in the application. + type: string + detail: + description: Detailed information about the vulnerability. + example: Details about the vulnerability. + type: string + id: + description: The vulnerability identifier (for example, a CVE ID). + example: CVE-2021-1234 + type: string + ratings: + description: The severity ratings for the vulnerability. Must contain exactly one element. + items: + $ref: '#/components/schemas/CycloneDXVulnerabilityRating' + type: array + references: + description: External reference identifiers for the vulnerability. + items: + $ref: '#/components/schemas/CycloneDXVulnerabilityReference' + type: array + required: + - id + - ratings + - affects + type: object + Asset: + description: A single vulnerable asset + properties: + attributes: + $ref: '#/components/schemas/AssetAttributes' + id: + description: The unique ID for this asset. + example: Repository|github.com/DataDog/datadog-agent.git + type: string + type: + $ref: '#/components/schemas/AssetEntityType' + required: + - id + - type + - attributes + type: object + CloudWorkloadSecurityAgentRuleData: + description: Object for a single Agent rule + properties: + attributes: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAttributes' + id: + description: The ID of the Agent rule + example: 3dd-0uc-h1s + type: string + type: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' + type: object + CloudWorkloadSecurityAgentRuleCreateData: + description: Object for a single Agent rule + properties: + attributes: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes' + type: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' + required: + - attributes + - type + type: object + CloudWorkloadSecurityAgentRuleUpdateData: + description: Object for a single Agent rule + properties: + attributes: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes' + id: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleID' + type: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' + required: + - attributes + - type + type: object + SecurityMonitoringCriticalAsset: + description: The critical asset's properties. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetAttributes' + id: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetID' + type: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetType' + type: object + SecurityMonitoringCriticalAssetCreateData: + description: Object for a single critical asset. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetCreateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetType' + required: + - type + - attributes + type: object + SecurityMonitoringCriticalAssetUpdateData: + description: The new critical asset properties; partial updates are supported. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetUpdateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetType' + required: + - type + - attributes + type: object + SecurityMonitoringIntegrationConfigData: + description: An entity context sync configuration. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigAttributes' + id: + description: The unique identifier of the integration configuration. + example: 11111111-2222-3333-4444-555555555555 + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResourceType' + required: + - id + - type + - attributes + type: object + SecurityMonitoringIntegrationConfigCreateData: + description: The entity context sync configuration to create. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigCreateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResourceType' + required: + - type + - attributes + type: object + SecurityMonitoringEntraIdAzureAppRegistrationsData: + description: The Azure App Registration prerequisites for the Entra ID integration. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsAttributes' + id: + description: The ID of the organization the Azure App Registrations belong to. + example: '123456' + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringEntraIdAzureAppRegistrationsResourceType' + required: + - id + - type + - attributes + type: object + SecurityMonitoringIntegrationCredentialsValidateData: + description: The credentials to validate. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringIntegrationCredentialsValidateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResourceType' + required: + - type + - attributes + type: object + SecurityMonitoringIntegrationConfigUpdateData: + description: The entity context sync configuration fields to update. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigUpdateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigResourceType' + required: + - type + - attributes + type: object + SecurityMonitoringIntegrationActivateData: + description: The configuration overrides for the integration to activate. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringIntegrationActivateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationActivateResourceType' + type: object + NotificationRulePreviewResponseData: + description: The notification preview response data. + properties: + attributes: + $ref: '#/components/schemas/NotificationRulePreviewResponseAttributes' + id: + description: The ID of the notification preview response. + example: rka-loa-zwu + type: string + type: + $ref: '#/components/schemas/NotificationRulePreviewResponseType' + required: + - type + - attributes + type: object + SecurityFilter: + description: The security filter's properties. + properties: + attributes: + $ref: '#/components/schemas/SecurityFilterAttributes' + id: + $ref: '#/components/schemas/SecurityFilterID' + type: + $ref: '#/components/schemas/SecurityFilterType' + type: object + SecurityFilterMeta: + description: Optional metadata associated to the response. + properties: + warning: + description: A warning message. + example: All the security filters are disabled. As a result, no logs are being analyzed. + type: string + type: object + SecurityFilterCreateData: + description: Object for a single security filter. + properties: + attributes: + $ref: '#/components/schemas/SecurityFilterCreateAttributes' + type: + $ref: '#/components/schemas/SecurityFilterType' + required: + - type + - attributes + type: object + SecurityFilterVersion: + description: A snapshot of all security filters at a specific configuration version. + properties: + attributes: + $ref: '#/components/schemas/SecurityFilterVersionAttributes' + id: + description: The identifier of the configuration version. + example: '1' + type: string + type: + $ref: '#/components/schemas/SecurityFilterVersionType' + required: + - id + - type + - attributes + type: object + SecurityFilterUpdateData: + description: The new security filter properties. + properties: + attributes: + $ref: '#/components/schemas/SecurityFilterUpdateAttributes' + type: + $ref: '#/components/schemas/SecurityFilterType' + required: + - type + - attributes + type: object + SecurityMonitoringSuppression: + description: The suppression rule's properties. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSuppressionAttributes' + id: + $ref: '#/components/schemas/SecurityMonitoringSuppressionID' + type: + $ref: '#/components/schemas/SecurityMonitoringSuppressionType' + type: object + SecurityMonitoringSuppressionsMeta: + description: Metadata for the suppression list response. + properties: + page: + $ref: '#/components/schemas/SecurityMonitoringSuppressionsPageMeta' + type: object + SecurityMonitoringSuppressionCreateData: + description: Object for a single suppression rule. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringSuppressionType' + required: + - type + - attributes + type: object + SecurityMonitoringStandardRuleCreatePayload: + description: Create a new rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringSignalRuleCreatePayload: + description: Create a new signal correlation rule. + properties: + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting signals which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' + type: array + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + CloudConfigurationRuleCreatePayload: + description: Create a new cloud configuration rule. + properties: + cases: + description: Description of generated findings and signals (severity and channels to be notified in case of a signal). Must contain exactly one item. + items: + $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' + type: array + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + filters: + description: Additional queries to filter matched events before they are processed. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message in markdown format for generated findings and signals. + example: |- + #Description + Explanation of the rule. + + #Remediation + How to fix the security issue. + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/CloudConfigurationRuleOptions' + tags: + description: Tags for generated findings and signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: '#/components/schemas/CloudConfigurationRuleType' + required: + - name + - isEnabled + - options + - complianceSignalOptions + - cases + - message + type: object + SecurityMonitoringSuppressionUpdateData: + description: The new suppression properties; partial updates are supported. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringSuppressionType' + required: + - type + - attributes + type: object + GetSuppressionVersionHistoryData: + description: Data for the suppression version history. + properties: + attributes: + $ref: '#/components/schemas/SuppressionVersionHistory' + id: + description: ID of the suppression. + type: string + type: + $ref: '#/components/schemas/GetSuppressionVersionHistoryDataType' + type: object + SecurityMonitoringContentPackStateData: + description: Content pack state data. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringContentPackStateAttributes' + id: + description: The content pack identifier. + example: aws-cloudtrail + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackStateType' + required: + - id + - type + - attributes + type: object + SecurityMonitoringContentPackStateMeta: + description: Metadata for content pack states. + properties: + cloud_siem_index_incorrect: + description: Whether the Cloud SIEM index configuration is incorrect for the organization. + example: false + type: boolean + retention_months: + description: The number of months that standard logs are retained for organizations on the standalone_indexed` pricing model. This field is omitted for other pricing models. + example: 15 + format: int32 + maximum: 60 + type: integer + sku: + $ref: '#/components/schemas/SecurityMonitoringSKU' + required: + - cloud_siem_index_incorrect + - sku + type: object + SecurityMonitoringDatasetsListData: + description: A list of dataset data items. + items: + $ref: '#/components/schemas/SecurityMonitoringDatasetData' + type: array + SecurityMonitoringDatasetsListMeta: + description: Metadata returned with a list of datasets. + properties: + totalCount: + description: The total number of datasets matching the request, across all pages. + example: 1 + format: int64 + type: integer + required: + - totalCount + type: object + SecurityMonitoringDatasetCreateData: + description: The data wrapper of a dataset create request. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringDatasetAttributesRequest' + type: + $ref: '#/components/schemas/SecurityMonitoringDatasetCreateType' + required: + - type + - attributes + type: object + SecurityMonitoringDatasetCreateResponseData: + description: The data wrapper of a dataset create response. + properties: + id: + description: The UUID of the newly created dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringDatasetType' + required: + - id + - type + type: object + SecurityMonitoringDatasetDependenciesRequestData: + description: The data wrapper of a dataset dependencies request. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependenciesRequestAttributes' + required: + - attributes + type: object + SecurityMonitoringDatasetDependenciesResponseData: + description: The list of dataset dependents entries. + items: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependentsData' + type: array + SecurityMonitoringDatasetData: + description: The data wrapper of a dataset response. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringDatasetAttributesResponse' + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringDatasetType' + required: + - id + - type + - attributes + type: object + SecurityMonitoringDatasetUpdateData: + description: The data wrapper of a dataset update request. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringDatasetAttributesRequest' + type: + $ref: '#/components/schemas/SecurityMonitoringDatasetUpdateType' + required: + - type + - attributes + type: object + SecurityMonitoringDatasetVersionHistoryData: + description: The data wrapper of a dataset version history response. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionHistoryAttributes' + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionHistoryType' + required: + - id + - type + - attributes + type: object + EntityContextEntity: + description: A single entity returned by the entity context endpoint. + properties: + attributes: + $ref: '#/components/schemas/EntityContextEntityAttributes' + id: + description: The unique identifier of the entity. + example: user@example.com + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringEntityContextEntityType' + required: + - id + - type + - attributes + type: object + EntityContextResponseMeta: + description: Metadata returned alongside the entity context response. + properties: + page: + $ref: '#/components/schemas/EntityContextPage' + total_count: + description: The total number of entities matching the query, irrespective of pagination. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - page + - total_count + type: object + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + type: object + SecurityMonitoringStandardRuleResponse: + description: Rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCase' + type: array + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + createdAt: + description: When the rule was created, timestamp in milliseconds. + format: int64 + type: integer + creationAuthorId: + description: User ID of the user who created the rule. + format: int64 + type: integer + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + defaultTags: + description: Default Tags for default rules (included in tags) + example: + - security:attacks + items: + description: Default Tag. + type: string + type: array + deprecationDate: + description: When the rule will be deprecated, timestamp in milliseconds. + format: int64 + type: integer + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + type: boolean + id: + description: The ID of the rule. + type: string + isDefault: + description: Whether the rule is included by default. + type: boolean + isDeleted: + description: Whether the rule has been deleted. + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: The name of the rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeRead' + updateAuthorId: + description: User ID of the user who updated the rule. + format: int64 + type: integer + updatedAt: + description: The date the rule was last updated, in milliseconds. + format: int64 + type: integer + version: + description: The version of the rule. + format: int64 + type: integer + type: object + SecurityMonitoringSignalRuleResponse: + description: Rule. + properties: + cases: + description: Cases for generating signals. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCase' + type: array + createdAt: + description: When the rule was created, timestamp in milliseconds. + format: int64 + type: integer + creationAuthorId: + description: User ID of the user who created the rule. + format: int64 + type: integer + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + deprecationDate: + description: When the rule will be deprecated, timestamp in milliseconds. + format: int64 + type: integer + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + type: boolean + id: + description: The ID of the rule. + type: string + isDefault: + description: Whether the rule is included by default. + type: boolean + isDeleted: + description: Whether the rule has been deleted. + type: boolean + isEnabled: + description: Whether the rule is enabled. + type: boolean + message: + description: Message for generated signals. + type: string + name: + description: The name of the rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponseQuery' + type: array + tags: + description: Tags for generated signals. + items: + description: Tag. + type: string + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' + updateAuthorId: + description: User ID of the user who updated the rule. + format: int64 + type: integer + version: + description: The version of the rule. + format: int64 + type: integer + type: object + SecurityMonitoringRuleBulkDeleteData: + description: Data for bulk deleting security monitoring rules. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteAttributes' + id: + description: Request ID. This value is echoed back as the response's resource ID. + example: bulk_delete + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteRequestDataType' + required: + - attributes + - type + type: object + SecurityMonitoringRuleBulkDeleteResponseData: + description: Data for the bulk delete response. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteResponseAttributes' + id: + description: The identifier of the bulk delete response. + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkDeleteResponseDataType' + type: object + SecurityMonitoringRuleBulkExportData: + description: Data for bulk exporting security monitoring rules. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkExportAttributes' + id: + description: Request ID. + example: bulk_export + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringRuleBulkExportDataType' + required: + - attributes + - type + type: object + SecurityMonitoringStandardRulePayload: + description: The payload of a rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringSignalRulePayload: + description: The payload of a signal correlation rule. + properties: + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting signals which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' + type: array + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringRuleConvertBulkData: + description: Data for bulk converting security monitoring rules to Terraform. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertBulkAttributes' + id: + description: Request ID. + example: convert_bulk + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringRuleConvertBulkDataType' + required: + - attributes + - type + type: object + SecurityMonitoringRuleTestPayload: + description: Test a rule. + properties: + calculatedFields: + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + items: + $ref: '#/components/schemas/CalculatedField' + type: array + cases: + description: Cases for generating signals. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + type: array + filters: + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + groupSignalsBy: + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. + example: + - service + items: + description: Field to group by. + type: string + type: array + hasExtendedTitle: + description: Whether the notifications include the triggering group-by values in their title. + example: true + type: boolean + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message for generated signals. + example: '' + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/SecurityMonitoringRuleOptions' + queries: + description: Queries for selecting logs which are part of the rule. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + type: array + referenceTables: + description: Reference tables for the rule. + items: + $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + type: array + schedulingOptions: + $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' + tags: + description: Tags for generated signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeTest' + required: + - name + - isEnabled + - queries + - options + - cases + - message + type: object + SecurityMonitoringRuleQueryPayload: + description: Payload to test a rule query with the expected result. + properties: + expectedResult: + description: Expected result of the test. + example: true + type: boolean + index: + description: Index of the query under test. + example: 0 + format: int64 + minimum: 0 + type: integer + payload: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayloadData' + type: object + CloudConfigurationRulePayload: + description: The payload of a cloud configuration rule. + properties: + cases: + description: Description of generated findings and signals (severity and channels to be notified in case of a signal). Must contain exactly one item. + items: + $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' + type: array + complianceSignalOptions: + $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' + customMessage: + description: Custom/Overridden message for generated signals (used in case of Default rule update). + type: string + customName: + description: Custom/Overridden name of the rule (used in case of Default rule update). + type: string + filters: + description: Additional queries to filter matched events before they are processed. + items: + $ref: '#/components/schemas/SecurityMonitoringFilter' + type: array + isEnabled: + description: Whether the rule is enabled. + example: true + type: boolean + message: + description: Message in markdown format for generated findings and signals. + example: |- + #Description + Explanation of the rule. + + #Remediation + How to fix the security issue. + type: string + name: + description: The name of the rule. + example: My security monitoring rule. + type: string + options: + $ref: '#/components/schemas/CloudConfigurationRuleOptions' + tags: + description: Tags for generated findings and signals. + example: + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + type: + $ref: '#/components/schemas/CloudConfigurationRuleType' + required: + - name + - isEnabled + - options + - complianceSignalOptions + - cases + - message + type: object + CalculatedField: + description: Calculated field. + properties: + expression: + description: Expression. + example: '@request_end_timestamp - @request_start_timestamp' + type: string + name: + description: Field name. + example: response_time + type: string + required: + - name + - expression + type: object + SecurityMonitoringRuleCase: + description: Case when signal is generated. + properties: + actions: + description: Action to perform for each rule case. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' + type: array + condition: + description: |- + A rule case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated + based on the event counts in the previously defined queries. + type: string + customStatus: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + name: + description: Name of the case. + type: string + notifications: + description: Notification targets for each rule case. + items: + description: Notification. + type: string + type: array + status: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + type: object + CloudConfigurationRuleComplianceSignalOptions: + description: How to generate compliance signals. Useful for cloud_configuration rules only. + properties: + defaultActivationStatus: + description: The default activation status. + nullable: true + type: boolean + defaultGroupByFields: + description: The default group by fields. + items: + description: A field name used for default grouping. + type: string + nullable: true + type: array + userActivationStatus: + description: Whether signals will be sent. + nullable: true + type: boolean + userGroupByFields: + description: Fields to use to group findings by when sending signals. + items: + description: A field name to group findings by. + type: string + nullable: true + type: array + type: object + SecurityMonitoringFilter: + description: The rule's suppression filter. + properties: + action: + $ref: '#/components/schemas/SecurityMonitoringFilterAction' + query: + description: Query for selecting logs to apply the filtering action. + type: string + type: object + SecurityMonitoringRuleOptions: + description: Options. + properties: + anomalyDetectionOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptions' + complianceRuleOptions: + $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' + decreaseCriticalityBasedOnEnv: + $ref: '#/components/schemas/SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv' + detectionMethod: + $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' + evaluationWindow: + $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' + hardcodedEvaluatorType: + $ref: '#/components/schemas/SecurityMonitoringRuleHardcodedEvaluatorType' + impossibleTravelOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions' + keepAlive: + $ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive' + maxSignalDuration: + $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' + newValueOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' + sequenceDetectionOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleSequenceDetectionOptions' + thirdPartyRuleOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' + type: object + SecurityMonitoringRuleQuery: + description: Query for matching rule. + properties: + aggregation: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' + customQueryExtension: + description: Query extension to append to the logs query. + example: a > 3 + type: string + dataSource: + $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' + distinctFields: + description: Field for which the cardinality is measured. Sent as an array. + items: + description: Field. + type: string + type: array + groupByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + hasOptionalGroupByFields: + default: false + description: When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values. + example: false + type: boolean + index: + description: |- + **This field is currently unstable and might be removed in a minor version upgrade.** + The index to run the query on, if the `dataSource` is `logs`. Only used for scheduled rules - in other words, when the `schedulingOptions` field is present in the rule payload. + type: string + indexes: + description: List of indexes to query when the `dataSource` is `logs`. Only used for scheduled rules, such as when the `schedulingOptions` field is present in the rule payload. + items: + description: Index. + type: string + type: array + metric: + deprecated: true + description: |- + (Deprecated) The target field to aggregate over when using the sum or max + aggregations. `metrics` field should be used instead. + type: string + metrics: + description: Group of target fields to aggregate over when using the sum, max, geo data, or new value aggregations. The sum, max, and geo data aggregations only accept one value in this list, whereas the new value aggregation accepts up to five values. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + query: + description: Query to run on logs. + example: a > 3 + type: string + correlatedByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + correlatedQueryIndex: + description: Index of the rule query used to retrieve the correlated field. + format: int32 + maximum: 9 + type: integer + ruleId: + description: Rule ID to match on signals. + example: org-ru1-e1d + type: string + type: object + required: + - ruleId + SecurityMonitoringReferenceTable: + description: Reference tables used in the queries. + properties: + checkPresence: + description: Whether to include or exclude the matched values. + type: boolean + columnName: + description: The name of the column in the reference table. + type: string + logFieldPath: + description: The field in the log to match against the reference table. + type: string + ruleQueryName: + description: The name of the query to apply the reference table to. + type: string + tableName: + description: The name of the reference table. + type: string + type: object + SecurityMonitoringSchedulingOptions: + description: Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs. + nullable: true + properties: + rrule: + description: Schedule for the rule queries, written in RRULE syntax. See [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) for syntax reference. + example: FREQ=HOURLY;INTERVAL=1; + type: string + start: + description: Start date for the schedule, in ISO 8601 format without timezone. + example: '2025-07-14T12:00:00' + type: string + timezone: + description: Time zone of the start date, in the [tz database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) format. + example: America/New_York + type: string + type: object + SecurityMonitoringThirdPartyRuleCase: + description: Case when signal is generated by a third party rule. + properties: + customStatus: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + name: + description: Name of the case. + type: string + notifications: + description: Notification targets for each rule case. + items: + description: Notification. + type: string + type: array + query: + description: A query to map a third party event to this case. + type: string + status: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + type: object + GetRuleVersionHistoryData: + description: Data for the rule version history. + properties: + attributes: + $ref: '#/components/schemas/RuleVersionHistory' + id: + description: ID of the rule. + type: string + type: + $ref: '#/components/schemas/GetRuleVersionHistoryDataType' + type: object + SampleLogGenerationSubscriptionData: + description: A sample log generation subscription. + properties: + attributes: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionAttributes' + id: + description: The unique identifier of the subscription. + example: '789' + type: string + type: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionResourceType' + required: + - id + - type + - attributes + type: object + SampleLogGenerationSubscriptionsResponseMeta: + description: Metadata returned alongside a list of sample log generation subscriptions. + properties: + total_subscriptions: + description: The total number of subscriptions matching the request, irrespective of pagination. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - total_subscriptions + type: object + SampleLogGenerationSubscriptionCreateData: + description: The subscription request body. + properties: + attributes: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionCreateAttributes' + type: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionRequestType' + required: + - type + - attributes + type: object + SampleLogGenerationBulkSubscriptionData: + description: The bulk subscription request body. + properties: + attributes: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionAttributes' + type: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionRequestType' + required: + - type + - attributes + type: object + SampleLogGenerationBulkSubscriptionResultItem: + description: A single result entry returned by the bulk subscription endpoint. + properties: + attributes: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionAttributes' + id: + description: The unique identifier of the subscription, when one was created. + example: '123' + type: string + meta: + $ref: '#/components/schemas/SampleLogGenerationBulkSubscriptionItemMeta' + type: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionResourceType' + required: + - id + - type + - attributes + - meta + type: object + SecurityMonitoringSignalsSort: + description: The sort parameters used for querying security signals. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + SecurityMonitoringSignal: + description: Object description of a security signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalAttributes' + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringSignalType' + type: object + SecurityMonitoringSignalsListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + The link for the next set of results. **Note**: The request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/security_monitoring/signals?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + SecurityMonitoringSignalsListResponseMeta: + description: Meta attributes. + properties: + page: + $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMetaPage' + type: object + SecurityMonitoringSignalsBulkAssigneeUpdateData: + description: Data for updating the assignees for multiple security signals. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkAssigneeUpdateAttributes' + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringSignalType' + required: + - id + - attributes + type: object + SecurityMonitoringSignalsBulkTriageUpdateResult: + description: The result payload of a bulk signal triage update. + properties: + count: + description: The number of signals updated. + example: 2 + format: int64 + type: integer + events: + description: The list of updated signals. + items: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkTriageEvent' + type: array + required: + - count + - events + type: object + SecurityMonitoringSignalsBulkStateUpdateData: + description: Data for updating the state for multiple security signals. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes' + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringSignalType' + required: + - id + - attributes + type: object + SecurityMonitoringSignalsBulkUpdateData: + description: Data for updating a single security signal in a bulk update operation. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalUpdateAttributes' + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringSignalType' + required: + - id + - attributes + type: object + SecurityMonitoringSignalListRequestFilter: + description: Search filters for listing security signals. + properties: + from: + description: The minimum timestamp for requested security signals. + example: '2019-01-02T09:42:36.320Z' + format: date-time + type: string + query: + description: Search query for listing security signals. + example: security:attack status:high + type: string + to: + description: The maximum timestamp for requested security signals. + example: '2019-01-03T09:42:36.320Z' + format: date-time + type: string + type: object + SecurityMonitoringSignalListRequestPage: + description: The paging attributes for listing security signals. + properties: + cursor: + description: A list of results using the cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: The maximum number of security signals in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + SecurityMonitoringSignalAssigneeUpdateData: + description: Data containing the patch for changing the assignee of a signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateAttributes' + required: + - attributes + type: object + SecurityMonitoringSignalTriageUpdateData: + description: Data containing the updated triage attributes of the signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalTriageAttributes' + id: + description: The unique ID of the security signal. + type: string + type: + $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' + type: object + SignalEntitiesData: + description: Entities related to a security signal. + properties: + attributes: + $ref: '#/components/schemas/SignalEntitiesAttributes' + id: + description: The signal ID the entities are associated with. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/SignalEntitiesType' + required: + - id + - type + - attributes + type: object + SecurityMonitoringSignalIncidentsUpdateData: + description: Data containing the patch for changing the related incidents of a signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateAttributes' + required: + - attributes + type: object + SecurityMonitoringSignalSuggestedActionList: + description: List of suggested actions for a security signal. + example: + - attributes: + name: Cloudtrail events for user ARN + query_filter: source:cloudtrail @userIdentity.arn:"foo" + template_variables: + '@userIdentity.arn': + - foo + url: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + id: w00-t10-992 + type: investigation_log_queries + - attributes: + title: Monitor Okta logs to track system access and unusual activity + url: https://www.datadoghq.com/blog/monitor-activity-with-okta/ + id: bxy-o8v-i1a + type: recommended_blog_posts + items: + $ref: '#/components/schemas/SecurityMonitoringSignalSuggestedAction' + type: array + SecurityMonitoringSignalStateUpdateData: + description: Data containing the patch for changing the state of a signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes' + id: + description: The unique ID of the security signal. + type: + $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' + required: + - attributes + type: object + SecurityMonitoringSignalUpdateData: + description: Data containing the triage state or assignee update for a security signal. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringSignalUpdateAttributes' + type: + $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' + required: + - attributes + type: object + SecurityMonitoringTerraformResourceType: + description: The type of security monitoring resource to export to Terraform. + enum: + - suppressions + - critical_assets + - security_filters + - rules + type: string + x-enum-varnames: + - SUPPRESSIONS + - CRITICAL_ASSETS + - SECURITY_FILTERS + - RULES + SecurityMonitoringTerraformBulkExportData: + description: The bulk export request data object. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringTerraformBulkExportAttributes' + type: + description: The JSON:API type. Always `bulk_export_resources`. + example: bulk_export_resources + type: string + required: + - type + - attributes + type: object + SecurityMonitoringTerraformConvertData: + description: The convert request data object. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringTerraformConvertAttributes' + id: + description: The ID of the resource being converted. + example: abc-123 + type: string + type: + description: The JSON:API type. Always `convert_resource`. + example: convert_resource + type: string + required: + - type + - id + - attributes + type: object + SecurityMonitoringTerraformExportData: + description: The Terraform export data object. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringTerraformExportAttributes' + id: + description: The resource identifier composed of the Terraform type name and the resource ID separated by `|`. + example: datadog_security_monitoring_suppression|abc-123 + type: string + type: + description: The JSON:API type. Always `format_resource`. + example: format_resource + type: string + required: + - type + - id + - attributes + type: object + SensitiveDataScannerGetConfigResponseData: + description: Response data related to the scanning groups. + properties: + attributes: + additionalProperties: {} + description: Attributes of the Sensitive Data configuration. + type: object + id: + description: ID of the configuration. + type: string + relationships: + $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' + type: object + SensitiveDataScannerGetConfigIncludedArray: + description: Included objects from relationships. + items: + $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedItem' + type: array + SensitiveDataScannerMeta: + description: Meta response containing information about the API. + properties: + count_limit: + description: Maximum number of scanning rules allowed for the org. + format: int64 + type: integer + group_count_limit: + description: Maximum number of scanning groups allowed for the org. + format: int64 + type: integer + has_highlight_enabled: + default: true + deprecated: true + description: (Deprecated) Whether or not scanned events are highlighted in Logs or RUM for the org. + type: boolean + has_multi_pass_enabled: + deprecated: true + description: (Deprecated) Whether or not scanned events have multi-pass enabled. + type: boolean + is_pci_compliant: + description: Whether or not the org is compliant to the payment card industry standard. + type: boolean + version: + description: Version of the API. + example: 0 + format: int64 + minimum: 0 + type: integer + type: object + SensitiveDataScannerReorderConfig: + description: Data related to the reordering of scanning groups. + properties: + id: + description: ID of the configuration. + type: string + relationships: + $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' + type: object + SensitiveDataScannerMetaVersionOnly: + description: Meta payload containing information about the API. + properties: + version: + description: Version of the API (optional). + example: 0 + format: int64 + minimum: 0 + type: integer + type: object + SensitiveDataScannerGroupCreate: + description: Data related to the creation of a group. + properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' + relationships: + $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerGroupType' + required: + - type + - attributes + type: object + SensitiveDataScannerGroupResponse: + description: Response data related to the creation of a group. + properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' + id: + description: ID of the group. + type: string + relationships: + $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerGroupType' + type: object + SensitiveDataScannerGroupUpdate: + description: Data related to the update of a group. + properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' + id: + description: ID of the group. + type: string + relationships: + $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerGroupType' + type: object + SensitiveDataScannerRuleCreate: + description: Data related to the creation of a rule. + properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' + relationships: + $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerRuleType' + required: + - type + - attributes + - relationships + type: object + SensitiveDataScannerRuleResponse: + description: Response data related to the creation of a rule. + properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' + id: + description: ID of the rule. + type: string + relationships: + $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerRuleType' + type: object + SensitiveDataScannerRuleUpdate: + description: Data related to the update of a rule. + properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' + id: + description: ID of the rule. + type: string + relationships: + $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' + type: + $ref: '#/components/schemas/SensitiveDataScannerRuleType' + type: object + SensitiveDataScannerStandardPatternsResponse: + description: List Standard patterns response. + items: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseItem' + type: array + HistoricalJobResponseData: + description: Historical job response data. + properties: + attributes: + $ref: '#/components/schemas/HistoricalJobResponseAttributes' + id: + description: ID of the job. + type: string + type: + $ref: '#/components/schemas/HistoricalJobDataType' + type: object + HistoricalJobListMeta: + description: Metadata about the list of jobs. + properties: + totalCount: + description: Number of jobs in the list. + format: int32 + maximum: 2147483647 + type: integer + type: object + RunHistoricalJobRequestData: + description: Data for running a historical job request. + properties: + attributes: + $ref: '#/components/schemas/RunHistoricalJobRequestAttributes' + type: + $ref: '#/components/schemas/RunHistoricalJobRequestDataType' + type: object + JobCreateResponseData: + description: The definition of `JobCreateResponseData` object. + properties: + id: + description: ID of the created job. + type: string + type: + $ref: '#/components/schemas/HistoricalJobDataType' + type: object + ConvertJobResultsToSignalsData: + description: Data for converting historical job results to signals. + properties: + attributes: + $ref: '#/components/schemas/ConvertJobResultsToSignalsAttributes' + type: + $ref: '#/components/schemas/ConvertJobResultsToSignalsDataType' + type: object + ScaRequestData: + description: The data object in an SCA request, containing the dependency graph attributes and request type. + properties: + attributes: + $ref: '#/components/schemas/ScaRequestDataAttributes' + id: + description: An optional identifier for this SCA request data object. + type: string + type: + $ref: '#/components/schemas/ScaRequestDataType' + required: + - type + type: object + McpScanRequestData: + description: The data object in an MCP SCA scan request, containing the scan attributes and request type. + properties: + attributes: + $ref: '#/components/schemas/McpScanRequestDataAttributes' + id: + description: An optional identifier for this scan request. + type: string + type: + $ref: '#/components/schemas/McpScanRequestDataType' + required: + - type + - attributes + type: object + McpScanRequestResponseData: + description: The data object returned when a scan request has been accepted. + properties: + attributes: + $ref: '#/components/schemas/McpScanRequestResponseDataAttributes' + id: + description: The job identifier assigned to the scan. + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + type: + $ref: '#/components/schemas/McpScanRequestResponseDataType' + required: + - id + - type + - attributes + type: object + AnyValueObject: + additionalProperties: {} + description: An arbitrary object value with additional properties. + type: object + LicensesListResponseData: + description: The data object in a licenses list response, containing the list of SPDX licenses. + properties: + attributes: + $ref: '#/components/schemas/LicensesListResponseDataAttributes' + id: + description: The unique identifier for this licenses list response. + example: 0190a3d4-1234-7000-8000-000000000000 + type: string + type: + $ref: '#/components/schemas/LicensesListResponseDataType' + required: + - id + - type + - attributes + type: object + ResolveVulnerableSymbolsRequestData: + description: The data object in a request to resolve vulnerable symbols, containing the package PURLs and request type. + properties: + attributes: + $ref: '#/components/schemas/ResolveVulnerableSymbolsRequestDataAttributes' + id: + description: An optional identifier for this request data object. + type: string + type: + $ref: '#/components/schemas/ResolveVulnerableSymbolsRequestDataType' + required: + - type + type: object + ResolveVulnerableSymbolsResponseData: + description: The data object in a response for resolving vulnerable symbols, containing the result attributes and response type. + properties: + attributes: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponseDataAttributes' + id: + description: The unique identifier for this response data object. + type: string + type: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponseDataType' + required: + - type + type: object + AiMemoryViolationResultResponseData: + description: Response data for an AI memory violation result. + properties: + attributes: + $ref: '#/components/schemas/AiMemoryViolationResultResponseAttributes' + id: + description: The numeric identifier of the violation result. + example: '42' + type: string + type: + $ref: '#/components/schemas/AiMemoryViolationResultDataType' + required: + - id + - type + - attributes + type: object + AiMemoryViolationResultRequestData: + description: Request data for creating an AI memory violation result. + properties: + attributes: + $ref: '#/components/schemas/AiMemoryViolationResultRequestAttributes' + id: + description: The violation result identifier. + example: violation-abc + type: string + type: + $ref: '#/components/schemas/AiMemoryViolationResultDataType' + type: object + AiPromptResponseData: + description: Response data for an AI prompt. + properties: + attributes: + $ref: '#/components/schemas/AiPromptResponseAttributes' + id: + description: The prompt identifier. + example: my-ai-ruleset/my-ai-rule + type: string + type: + $ref: '#/components/schemas/AiPromptDataType' + required: + - id + - type + - attributes + type: object + AiCustomRulesetResponseData: + description: Response data for an AI custom ruleset. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRulesetResponseAttributes' + id: + description: The ruleset identifier. + example: my-ai-ruleset + type: string + type: + $ref: '#/components/schemas/AiCustomRulesetDataType' + required: + - id + - type + - attributes + type: object + AiCustomRulesetRequestData: + description: Request data for creating an AI custom ruleset. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRulesetRequestAttributes' + id: + description: The ruleset identifier, which must match the name. + example: my-ai-ruleset + type: string + type: + $ref: '#/components/schemas/AiCustomRulesetDataType' + type: object + AiCustomRulesetUpdateData: + description: Request data for updating an AI custom ruleset. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRulesetUpdateAttributes' + id: + description: The ruleset identifier. + example: my-ai-ruleset + type: string + type: + $ref: '#/components/schemas/AiCustomRulesetDataType' + type: object + AiCustomRuleRequestData: + description: Request data for creating an AI custom rule. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRuleRequestAttributes' + id: + description: The rule identifier, which must match the name. + example: my-ai-rule + type: string + type: + $ref: '#/components/schemas/AiCustomRuleDataType' + type: object + AiCustomRuleResponseData: + description: Response data for an AI custom rule. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRuleItem' + id: + description: The rule identifier. + example: my-ai-rule + type: string + type: + $ref: '#/components/schemas/AiCustomRuleDataType' + required: + - id + - type + - attributes + type: object + AiCustomRuleRevisionResponseData: + description: Response data for an AI custom rule revision. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRuleRevisionResponseAttributes' + id: + description: The revision identifier. + example: revision-abc-123 + type: string + type: + $ref: '#/components/schemas/AiCustomRuleRevisionDataType' + required: + - id + - type + - attributes + type: object + AiCustomRuleRevisionRequestData: + description: Request data for creating an AI custom rule revision. + properties: + attributes: + $ref: '#/components/schemas/AiCustomRuleRevisionRequestAttributes' + id: + description: The revision identifier. + example: revision-abc-123 + type: string + type: + $ref: '#/components/schemas/AiCustomRuleRevisionDataType' + type: object + SastRulesetData: + description: The primary data object representing a SAST ruleset. + properties: + attributes: + $ref: '#/components/schemas/SastRulesetDataAttributes' + id: + description: The unique identifier of the ruleset resource. + example: python-best-practices + type: string + type: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsDataType' + required: + - id + - type + - attributes + type: object + CustomRuleset: + description: A custom static analysis ruleset containing a set of user-defined rules. + properties: + attributes: + $ref: '#/components/schemas/CustomRulesetAttributes' + id: + description: Ruleset identifier + example: my-ruleset + type: string + type: + $ref: '#/components/schemas/CustomRulesetDataType' + required: + - id + - type + - attributes + type: object + CustomRulesetRequestData: + description: Data object for a custom ruleset create or update request. + properties: + attributes: + $ref: '#/components/schemas/CustomRulesetRequestDataAttributes' + id: + description: Ruleset identifier + type: string + type: + $ref: '#/components/schemas/CustomRulesetDataType' + type: object + CustomRuleRequestData: + description: Data object for a custom rule create or update request. + properties: + attributes: + $ref: '#/components/schemas/CustomRuleRequestDataAttributes' + id: + description: Rule identifier + type: string + type: + $ref: '#/components/schemas/CustomRuleDataType' + type: object + CustomRuleResponseData: + description: Data object returned in a custom rule response, including its ID, type, and attributes. + properties: + attributes: + $ref: '#/components/schemas/CustomRule' + id: + description: Rule identifier + example: my-rule + type: string + type: + $ref: '#/components/schemas/CustomRuleDataType' + required: + - id + - type + - attributes + type: object + CustomRuleRevision: + description: A specific revision of a custom static analysis rule. + properties: + attributes: + $ref: '#/components/schemas/CustomRuleRevisionAttributes' + id: + description: Revision identifier + example: revision-123 + type: string + type: + $ref: '#/components/schemas/CustomRuleRevisionDataType' + required: + - id + - type + - attributes + type: object + CustomRuleRevisionRequestData: + description: Data object for a custom rule revision create request. + properties: + attributes: + $ref: '#/components/schemas/CustomRuleRevisionInputAttributes' + id: + description: Revision identifier + type: string + type: + $ref: '#/components/schemas/CustomRuleRevisionDataType' + type: object + RevertCustomRuleRevisionRequestData: + description: Data object for a request to revert a custom rule to a previous revision. + properties: + attributes: + $ref: '#/components/schemas/RevertCustomRuleRevisionRequestDataAttributes' + id: + description: Request identifier + type: string + type: + $ref: '#/components/schemas/RevertCustomRuleRevisionDataType' + type: object + DefaultRulesetsPerLanguageData: + description: The primary data object in the default rulesets per language response. + properties: + attributes: + $ref: '#/components/schemas/DefaultRulesetsPerLanguageDataAttributes' + id: + description: The language identifier used as the resource identifier. + example: python + type: string + type: + $ref: '#/components/schemas/DefaultRulesetsPerLanguageDataType' + required: + - id + - type + - attributes + type: object + GetMultipleRulesetsRequestData: + description: The primary data object in the get-multiple-rulesets request, containing request attributes and resource type. + properties: + attributes: + $ref: '#/components/schemas/GetMultipleRulesetsRequestDataAttributes' + id: + description: An optional identifier for the get-multiple-rulesets request resource. + type: string + type: + $ref: '#/components/schemas/GetMultipleRulesetsRequestDataType' + required: + - type + type: object + GetMultipleRulesetsResponseData: + description: The primary data object in the get-multiple-rulesets response, containing the response attributes and resource type. + properties: + attributes: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributes' + id: + description: The unique identifier of the get-multiple-rulesets response resource. + type: string + type: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataType' + required: + - type + type: object + SecretRuleData: + description: The data object representing a secret detection rule, including its attributes and resource type. + properties: + attributes: + $ref: '#/components/schemas/SecretRuleDataAttributes' + id: + description: The unique identifier of the secret rule resource. + type: string + type: + $ref: '#/components/schemas/SecretRuleDataType' + required: + - type + type: object + AnalysisRequestData: + description: The primary data object in the analysis request. + properties: + attributes: + $ref: '#/components/schemas/AnalysisRequestDataAttributes' + id: + description: An optional identifier for the analysis request resource. + type: string + type: + $ref: '#/components/schemas/AnalysisRequestDataType' + required: + - type + - attributes + type: object + AnalysisResponseData: + description: The primary data object in the analysis response. + properties: + attributes: + $ref: '#/components/schemas/AnalysisResponseDataAttributes' + id: + description: The unique identifier of the analysis response resource. + example: abc-123 + type: string + type: + $ref: '#/components/schemas/AnalysisResponseDataType' + required: + - id + - type + - attributes + type: object + GetAstRequestData: + description: The primary data object in the get-AST request. + properties: + attributes: + $ref: '#/components/schemas/GetAstRequestDataAttributes' + id: + description: An optional identifier for the get-AST request resource. + type: string + type: + $ref: '#/components/schemas/GetAstRequestDataType' + required: + - type + - attributes + type: object + GetAstResponseData: + description: The primary data object in the get-AST response. + properties: + attributes: + $ref: '#/components/schemas/GetAstResponseDataAttributes' + id: + description: The identifier of the get-AST response resource. + type: string + type: + $ref: '#/components/schemas/GetAstResponseDataType' + required: + - type + - attributes + type: object + NodeTypesResponseData: + description: The primary data object in the node types response. + properties: + attributes: + $ref: '#/components/schemas/NodeTypesResponseDataAttributes' + id: + description: The unique identifier of the node types response resource. + example: python + type: string + type: + $ref: '#/components/schemas/NodeTypesResponseDataType' + required: + - id + - type + - attributes + type: object + VersionV1: + description: Version of the updated signal. If server side version is higher, update will be rejected. + example: 0 + format: int64 + type: integer + SignalArchiveReason: + description: Reason why a signal has been archived. + enum: + - none + - false_positive + - testing_or_maintenance + - investigated_case_opened + - true_positive_benign + - true_positive_malicious + - other + type: string + x-enum-varnames: + - NONE + - FALSE_POSITIVE + - TESTING_OR_MAINTENANCE + - INVESTIGATED_CASE_OPENED + - TRUE_POSITIVE_BENIGN + - TRUE_POSITIVE_MALICIOUS + - OTHER + SignalTriageState: + description: The new triage state of the signal. + enum: + - open + - archived + - under_review + example: open + type: string + x-enum-varnames: + - OPEN + - ARCHIVED + - UNDER_REVIEW + AwsScanOptionsAttributes: + description: Attributes for the AWS scan options. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + example: false + type: boolean + lambda: + description: Indicates if scanning of Lambda functions is enabled. + example: true + type: boolean + sensitive_data: + description: Indicates if scanning for sensitive data is enabled. + example: false + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + example: true + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + example: true + type: boolean + type: object + AwsScanOptionsType: + default: aws_scan_options + description: The type of the resource. The value should always be `aws_scan_options`. + enum: + - aws_scan_options + example: aws_scan_options + type: string + x-enum-varnames: + - AWS_SCAN_OPTIONS + AwsScanOptionsCreateAttributes: + description: Attributes for the AWS scan options to create. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + example: false + type: boolean + lambda: + description: Indicates if scanning of Lambda functions is enabled. + example: true + type: boolean + sensitive_data: + description: Indicates if scanning for sensitive data is enabled. + example: false + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + example: true + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + example: true + type: boolean + required: + - compliance_host + - lambda + - sensitive_data + - vuln_containers_os + - vuln_host_os + type: object + AwsAccountId: + description: The ID of the AWS account. + example: '123456789012' + type: string + AwsScanOptionsUpdateAttributes: + description: Attributes for the AWS scan options to update. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + example: false + type: boolean + lambda: + description: Indicates if scanning of Lambda functions is enabled. + example: true + type: boolean + sensitive_data: + description: Indicates if scanning for sensitive data is enabled. + example: false + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + example: true + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + example: true + type: boolean + type: object + AzureScanOptionsDataAttributes: + description: Attributes for Azure scan options configuration. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + function: + description: Indicates if scanning of Azure Functions is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + AzureScanOptionsDataType: + default: azure_scan_options + description: The type of the resource. The value should always be `azure_scan_options`. + enum: + - azure_scan_options + example: azure_scan_options + type: string + x-enum-varnames: + - AZURE_SCAN_OPTIONS + AzureScanOptionsInputUpdateDataAttributes: + description: Attributes for updating Azure scan options configuration. + properties: + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + function: + description: Indicates if scanning of Azure Functions is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + AzureScanOptionsInputUpdateDataType: + default: azure_scan_options + description: Azure scan options resource type. + enum: + - azure_scan_options + example: azure_scan_options + type: string + x-enum-varnames: + - AZURE_SCAN_OPTIONS + GcpScanOptionsDataAttributes: + description: Attributes for GCP scan options configuration. + properties: + cloud_function: + description: Indicates if scanning of Cloud Functions is enabled. + type: boolean + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + GcpScanOptionsDataType: + default: gcp_scan_options + description: GCP scan options resource type. + enum: + - gcp_scan_options + example: gcp_scan_options + type: string + x-enum-varnames: + - GCP_SCAN_OPTIONS + GcpScanOptionsInputUpdateDataAttributes: + description: Attributes for updating GCP scan options configuration. + properties: + cloud_function: + description: Indicates if scanning of Cloud Functions is enabled. + type: boolean + compliance_host: + description: Indicates whether host compliance scanning is enabled. + type: boolean + vuln_containers_os: + description: Indicates if scanning for vulnerabilities in containers is enabled. + type: boolean + vuln_host_os: + description: Indicates if scanning for vulnerabilities in hosts is enabled. + type: boolean + type: object + GcpScanOptionsInputUpdateDataType: + default: gcp_scan_options + description: GCP scan options resource type. + enum: + - gcp_scan_options + example: gcp_scan_options + type: string + x-enum-varnames: + - GCP_SCAN_OPTIONS + AwsOnDemandAttributes: + description: Attributes for the AWS on demand task. + properties: + arn: + description: The arn of the resource to scan. + example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba + type: string + assigned_at: + description: Specifies the assignment timestamp if the task has been already assigned to a scanner. + example: '2025-02-11T18:25:04.550564Z' + type: string + created_at: + description: The task submission timestamp. + example: '2025-02-11T18:13:24.576915Z' + type: string + status: + description: |- + Indicates the status of the task. + QUEUED: the task has been submitted successfully and the resource has not been assigned to a scanner yet. + ASSIGNED: the task has been assigned. + ABORTED: the scan has been aborted after a period of time due to technical reasons, such as resource not found, insufficient permissions, or the absence of a configured scanner. + example: QUEUED + type: string + type: object + AwsOnDemandType: + default: aws_resource + description: The type of the on demand task. The value should always be `aws_resource`. + enum: + - aws_resource + example: aws_resource + type: string + x-enum-varnames: + - AWS_RESOURCE + AwsOnDemandCreateAttributes: + description: Attributes for the AWS on demand task. + properties: + arn: + description: The arn of the resource to scan. Agentless supports the scan of EC2 instances, lambda functions, AMI, ECR, RDS and S3 buckets. + example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba + type: string + required: + - arn + type: object + CustomFrameworkDataAttributes: + description: Framework Data Attributes. + properties: + description: + description: Framework Description + type: string + handle: + description: Framework Handle + example: sec2 + type: string + icon_url: + description: Framework Icon URL + type: string + name: + description: Framework Name + example: security-framework + type: string + requirements: + description: Framework Requirements + items: + $ref: '#/components/schemas/CustomFrameworkRequirement' + type: array + version: + description: Framework Version + example: '2' + type: string + required: + - handle + - version + - name + - requirements + type: object + CustomFrameworkType: + default: custom_framework + description: The type of the resource. The value must be `custom_framework`. + enum: + - custom_framework + example: custom_framework + type: string + x-enum-varnames: + - CUSTOM_FRAMEWORK + CustomFrameworkDataHandleAndVersion: + description: Framework Handle and Version. + properties: + handle: + description: Framework Handle + example: sec2 + type: string + version: + description: Framework Version + example: '2' + type: string + type: object + CustomFrameworkWithoutRequirements: + description: Framework without requirements. + properties: + description: + description: Framework Description + example: this is a security description + type: string + handle: + description: Framework Handle + example: sec2 + type: string + icon_url: + description: Framework Icon URL + example: https://example.com/icon.png + type: string + name: + description: Framework Name + example: security-framework + type: string + version: + description: Framework Version + example: '2' + type: string + required: + - handle + - version + - name + type: object + FullCustomFrameworkDataAttributes: + description: Full Framework Data Attributes. + properties: + handle: + description: Framework Handle + example: sec2 + type: string + icon_url: + description: Framework Icon URL + example: https://example.com/icon.png + type: string + name: + description: Framework Name + example: security-framework + type: string + requirements: + description: Framework Requirements + items: + $ref: '#/components/schemas/CustomFrameworkRequirement' + type: array + version: + description: Framework Version + example: '2' + type: string + required: + - handle + - version + - name + - requirements + type: object + ResourceFilterAttributes: + description: Attributes of a resource filter. + example: + aws: + '123456789': + - environment:production + - team:devops + azure: + sub-001: + - app:frontend + gcp: + project-abc: + - region:us-central1 + properties: + cloud_provider: + additionalProperties: + additionalProperties: + items: + description: Tag filter in format "key:value" + example: environment:production + type: string + type: array + type: object + description: A map of cloud provider names (e.g., "aws", "gcp", "azure") to a map of account/resource IDs and their associated tag filters. + type: object + uuid: + description: The UUID of the resource filter. + type: string + required: + - cloud_provider + type: object + ResourceFilterRequestType: + description: Constant string to identify the request type. + enum: + - csm_resource_filter + example: csm_resource_filter + type: string + x-enum-varnames: + - CSM_RESOURCE_FILTER + RuleBasedViewAttributes: + description: Attributes of the rule-based view. + properties: + count: + description: Total number of rules in the view. + example: 1 + format: int64 + type: integer + rules: + $ref: '#/components/schemas/RuleBasedViewRules' + required: + - count + - rules + type: object + RuleBasedViewType: + default: rule_based_view + description: The type of the resource. The value should always be `rule_based_view`. + enum: + - rule_based_view + example: rule_based_view + type: string + x-enum-varnames: + - RULE_BASED_VIEW + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + CsmAgentsAttributes: + description: A CSM Agent returned by the API. + properties: + agent_version: + description: Version of the Datadog Agent. + type: string + aws_fargate: + description: AWS Fargate details. + type: string + cluster_name: + description: List of cluster names associated with the Agent. + items: + description: A cluster name associated with the Agent. + type: string + type: array + datadog_agent: + description: Unique identifier for the Datadog Agent. + type: string + ecs_fargate_task_arn: + description: ARN of the ECS Fargate task. + type: string + envs: + description: List of environments associated with the Agent. + items: + description: An environment name associated with the Agent. + type: string + nullable: true + type: array + host_id: + description: ID of the host. + format: int64 + type: integer + hostname: + description: Name of the host. + type: string + install_method_installer_version: + description: Version of the installer used for installing the Datadog Agent. + type: string + install_method_tool: + description: Tool used for installing the Datadog Agent. + type: string + is_csm_vm_containers_enabled: + description: Indicates if CSM VM Containers is enabled. + nullable: true + type: boolean + is_csm_vm_hosts_enabled: + description: Indicates if CSM VM Hosts is enabled. + nullable: true + type: boolean + is_cspm_enabled: + description: Indicates if CSPM is enabled. + nullable: true + type: boolean + is_cws_enabled: + description: Indicates if CWS is enabled. + nullable: true + type: boolean + is_cws_remote_configuration_enabled: + description: Indicates if CWS Remote Configuration is enabled. + nullable: true + type: boolean + is_remote_configuration_enabled: + description: Indicates if Remote Configuration is enabled. + nullable: true + type: boolean + os: + description: Operating system of the host. + type: string + type: object + CSMAgentsType: + default: datadog_agent + description: The type of the resource. The value should always be `datadog_agent`. + enum: + - datadog_agent + example: datadog_agent + type: string + x-enum-varnames: + - DATADOG_AGENT + CsmCloudAccountsCoverageAnalysisAttributes: + description: CSM Cloud Accounts Coverage Analysis attributes. properties: - data: - $ref: '#/components/schemas/ListFindingsData' - meta: - $ref: '#/components/schemas/ListFindingsMeta' + aws_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + azure_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + gcp_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + org_id: + description: The ID of your organization. + example: 123456 + format: int64 + type: integer + total_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + type: object + CsmHostsAndContainersCoverageAnalysisAttributes: + description: CSM Hosts and Containers Coverage Analysis attributes. + properties: + cspm_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + cws_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + org_id: + description: The ID of your organization. + example: 123456 + format: int64 + type: integer + total_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + vm_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + type: object + CsmServerlessCoverageAnalysisAttributes: + description: CSM Serverless Resources Coverage Analysis attributes. + properties: + cws_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + org_id: + description: The ID of your organization. + example: 123456 + format: int64 + type: integer + total_coverage: + $ref: '#/components/schemas/CsmCoverageAnalysis' + type: object + OwnershipSettingsAttributes: + description: The attributes of the ownership settings response. + properties: + auto_tag: + description: Whether automatic ownership tagging is enabled. + example: true + type: boolean + confidence_level: + $ref: '#/components/schemas/OwnershipConfidenceLevel' + version: + description: The current version of the ownership settings. + example: 1 + format: int64 + type: integer required: - - data - - meta + - version + - auto_tag + - confidence_level + type: object + OwnershipSettingsType: + default: ownership_settings + description: The type of the ownership settings resource. The value should always be `ownership_settings`. + enum: + - ownership_settings + example: ownership_settings + type: string + x-enum-varnames: + - OWNERSHIP_SETTINGS + OwnershipSettingsRequestAttributes: + description: The attributes of an ownership settings request. + properties: + auto_tag: + description: Whether automatic ownership tagging is enabled. + example: true + type: boolean + confidence_level: + $ref: '#/components/schemas/OwnershipConfidenceLevel' + required: + - auto_tag + - confidence_level + type: object + OwnershipUntaggedFindingsAttributes: + description: The counts of findings without a team tag by ownership confidence. + properties: + high_confidence: + description: The number of high confidence findings without a team tag. + example: 30 + format: int64 + type: integer + low_confidence: + description: The number of low confidence findings without a team tag. + example: 42 + format: int64 + type: integer + medium_confidence: + description: The number of medium confidence findings without a team tag. + example: 70 + format: int64 + type: integer + total: + description: The total number of findings without a team tag. + example: 142 + format: int64 + type: integer + required: + - total + - high_confidence + - medium_confidence + - low_confidence + type: object + OwnershipUntaggedFindingsType: + default: ownership_untagged_findings + description: The type of the ownership untagged findings resource. The value should always be `ownership_untagged_findings`. + enum: + - ownership_untagged_findings + example: ownership_untagged_findings + type: string + x-enum-varnames: + - OWNERSHIP_UNTAGGED_FINDINGS + OwnershipInferenceListAttributes: + description: The attributes of the ownership inferences collection response. + properties: + items: + $ref: '#/components/schemas/OwnershipInferenceItems' + required: + - items + type: object + OwnershipInferencesType: + default: ownership_inferences + description: The type of the ownership inferences collection resource. The value should always be `ownership_inferences`. + enum: + - ownership_inferences + example: ownership_inferences + type: string + x-enum-varnames: + - OWNERSHIP_INFERENCES + OwnershipHistoryAttributes: + description: The attributes of an ownership history response. + properties: + items: + $ref: '#/components/schemas/OwnershipHistoryItems' + pagination: + $ref: '#/components/schemas/OwnershipHistoryPagination' + required: + - items + - pagination + type: object + OwnershipHistoryType: + default: ownership_history + description: The type of the ownership history resource. The value should always be `ownership_history`. + enum: + - ownership_history + example: ownership_history + type: string + x-enum-varnames: + - OWNERSHIP_HISTORY + OwnershipInferenceAttributes: + description: The attributes of a single ownership inference. + properties: + checksum: + description: A checksum that uniquely identifies the current state of the inference. Required when submitting feedback. + example: abc123 + type: string + confidence: + description: The confidence score of the inference, expressed as a numeric string with up to four decimal places. + example: '0.9500' + type: string + created_at: + description: The time when the inference was created. + example: '2026-01-15T10:00:00Z' + format: date-time + type: string + evidence_versions: + $ref: '#/components/schemas/OwnershipEvidenceVersions' + explanation: + description: A human-readable explanation of how the inference was produced. + example: High confidence match + type: string + owner_type: + $ref: '#/components/schemas/OwnershipOwnerType' + primary_contact_ref: + description: The primary contact reference for the inferred owner, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + sources: + $ref: '#/components/schemas/OwnershipInferenceSources' + status: + $ref: '#/components/schemas/OwnershipInferenceStatus' + updated_at: + description: The time when the inference was last updated. + example: '2026-01-15T10:00:00Z' + format: date-time + type: string + required: + - owner_type + - confidence + - explanation + - evidence_versions + - sources + - status + - checksum + - created_at + - updated_at + type: object + OwnershipInferenceType: + default: ownership_inference + description: The type of the ownership inference resource. The value should always be `ownership_inference`. + enum: + - ownership_inference + example: ownership_inference + type: string + x-enum-varnames: + - OWNERSHIP_INFERENCE + OwnershipEvidenceAttributes: + description: The attributes of an ownership evidence response. + properties: + evidence_versions: + $ref: '#/components/schemas/OwnershipEvidenceVersions' + required: + - evidence_versions + type: object + OwnershipEvidenceType: + default: ownership_evidence + description: The type of the ownership evidence resource. The value should always be `ownership_evidence`. + enum: + - ownership_evidence + example: ownership_evidence + type: string + x-enum-varnames: + - OWNERSHIP_EVIDENCE + OwnershipFeedbackRequestAttributes: + description: The attributes of an ownership feedback request. + properties: + action: + $ref: '#/components/schemas/OwnershipFeedbackAction' + actor_handle: + description: The handle of the actor submitting the feedback. + example: user@example.com + type: string + actor_type: + description: The type of actor submitting the feedback, for example `user` or `service`. + example: user + type: string + corrected_owner_handle: + description: The corrected owner handle. Required when `action` is `correct`. + example: team-b + nullable: true + type: string + corrected_owner_type: + description: The corrected owner type. Required when `action` is `correct`. + example: team + nullable: true + type: string + inference_checksum: + description: The checksum of the inference being acted upon. Must match the current inference checksum or the request returns a conflict. + example: abc123 + type: string + reason: + description: An optional free-form reason explaining the feedback. + example: Confirmed by team lead. + nullable: true + type: string + required: + - action + - actor_handle + - actor_type + - inference_checksum + type: object + OwnershipFeedbackType: + default: ownership_feedback + description: The type of the ownership feedback request resource. The value should always be `ownership_feedback`. + enum: + - ownership_feedback + example: ownership_feedback + type: string + x-enum-varnames: + - OWNERSHIP_FEEDBACK + OwnershipFeedbackResultAttributes: + description: The attributes of an ownership feedback result. + properties: + action: + $ref: '#/components/schemas/OwnershipFeedbackAction' + checksum: + description: The checksum of the inference after the feedback was applied. + example: abc123 + type: string + new_status: + $ref: '#/components/schemas/OwnershipInferenceStatus' + owner_type: + $ref: '#/components/schemas/OwnershipOwnerType' + previous_status: + $ref: '#/components/schemas/OwnershipInferenceStatus' + primary_contact_ref: + description: The primary contact reference for the inferred owner after the feedback was applied, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + updated_at: + description: The time when the inference was updated by the feedback. + example: '2026-01-15T10:00:00Z' + format: date-time + type: string + required: + - action + - previous_status + - new_status + - owner_type + - checksum + - updated_at + type: object + OwnershipFeedbackResultType: + default: ownership_feedback_result + description: The type of the ownership feedback result resource. The value should always be `ownership_feedback_result`. + enum: + - ownership_feedback_result + example: ownership_feedback_result + type: string + x-enum-varnames: + - OWNERSHIP_FEEDBACK_RESULT + CsmAgentlessHostData: + description: A single agentless host resource. + properties: + attributes: + $ref: '#/components/schemas/CsmAgentlessHostAttributes' + id: + description: The resource identifier of the agentless host. + example: i-0123456789abcdef0 + type: string + type: + $ref: '#/components/schemas/CsmAgentlessHostType' + required: + - id + - type + - attributes + type: object + CsmHostFacetInfoAttributes: + description: Attributes of a facet info response, containing the value distribution for the requested facet. + properties: + items: + $ref: '#/components/schemas/CsmHostFacetInfoItems' + required: + - items + type: object + CsmHostFacetInfoMeta: + description: Metadata for the facet info response. + properties: + total_count: + description: The total number of distinct values for this facet. + example: 4 + format: int64 + type: integer + required: + - total_count + type: object + CsmFacetInfoType: + default: facet_info + description: The JSON:API type for facet info resources. The value should always be `facet_info`. + enum: + - facet_info + example: facet_info + type: string + x-enum-varnames: + - FACET_INFO + CsmAgentlessHostFacetData: + description: A single agentless host facet resource. + properties: + attributes: + $ref: '#/components/schemas/CsmAgentlessHostFacetAttributes' + id: + description: The identifier of the facet, corresponding to the field path. + example: cloud_provider + type: string + type: + $ref: '#/components/schemas/CsmAgentlessHostFacetType' + required: + - id + - type + - attributes + type: object + CsmUnifiedHostData: + description: A single unified host resource, combining agent and agentless data. + properties: + attributes: + $ref: '#/components/schemas/CsmUnifiedHostAttributes' + id: + description: The resource identifier of the unified host. + example: i-0123456789abcdef0 + type: string + type: + $ref: '#/components/schemas/CsmUnifiedHostType' + required: + - id + - type + - attributes + type: object + CsmUnifiedHostFacetData: + description: A single unified host facet resource. + properties: + attributes: + $ref: '#/components/schemas/CsmAgentlessHostFacetAttributes' + id: + description: The identifier of the facet, corresponding to the field path. + example: cloud_provider + type: string + type: + $ref: '#/components/schemas/CsmUnifiedHostFacetType' + required: + - id + - type + - attributes + type: object + Finding: + description: A single finding without the message and resource configuration. + properties: + attributes: + $ref: '#/components/schemas/FindingAttributes' + id: + $ref: '#/components/schemas/FindingID' + type: + $ref: '#/components/schemas/FindingType' type: object - BulkMuteFindingsRequest: - description: The new bulk mute finding request. + ListFindingsPage: + additionalProperties: false + description: Pagination and findings count information. properties: - data: - $ref: '#/components/schemas/BulkMuteFindingsRequestData' - required: - - data + cursor: + description: The cursor used to paginate requests. + example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= + type: string + total_filtered_count: + description: The total count of findings after the filter has been applied. + example: 213 + format: int64 + type: integer type: object - BulkMuteFindingsResponse: - description: The expected response schema. + DetailedFindingAttributes: + description: The JSON:API attributes of the detailed finding. properties: - data: - $ref: '#/components/schemas/BulkMuteFindingsResponseData' - required: - - data + evaluation: + $ref: '#/components/schemas/FindingEvaluation' + evaluation_changed_at: + $ref: '#/components/schemas/FindingEvaluationChangedAt' + message: + description: The remediation message for this finding. + example: |- + ## Remediation + + ### From the console + + 1. Go to Storage Account + 2. For each Storage Account, navigate to Data Protection + 3. Select Set soft delete enabled and enter the number of days to retain soft deleted data. + type: string + mute: + $ref: '#/components/schemas/FindingMute' + resource: + $ref: '#/components/schemas/FindingResource' + resource_configuration: + description: The resource configuration for this finding. (opaque JSON object) + type: string + resource_discovery_date: + $ref: '#/components/schemas/FindingResourceDiscoveryDate' + resource_type: + $ref: '#/components/schemas/FindingResourceType' + rule: + $ref: '#/components/schemas/FindingRule' + status: + $ref: '#/components/schemas/FindingStatus' + tags: + $ref: '#/components/schemas/FindingTags' type: object - JSONAPIErrorResponse: - description: API error response. + FindingID: + description: The unique ID for this finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: string + DetailedFindingType: + default: detailed_finding + description: The JSON:API type for findings that have the message and resource configuration. + enum: + - detailed_finding + example: detailed_finding + type: string + x-enum-varnames: + - DETAILED_FINDING + SecurityEntityRiskScoreAttributes: + description: Attributes of an entity risk score. properties: - errors: - description: A list of errors. + accountIds: + description: Cloud account IDs associated with the entity. + example: + - '222233334444' + - '3333333555555' items: - $ref: '#/components/schemas/JSONAPIErrorItem' + description: A cloud account ID. + type: string type: array + configRisks: + $ref: '#/components/schemas/SecurityEntityConfigRisks' + entityMetadata: + $ref: '#/components/schemas/SecurityEntityMetadata' + entityName: + description: Human-readable name of the entity. + example: john.doe + type: string + entityProviders: + description: Cloud providers associated with the entity. + example: + - AWS + items: + description: A cloud provider name. + type: string + type: array + entityRoles: + description: Roles associated with the entity. + example: [] + items: + description: A role assigned to the entity. + type: string + type: array + entitySubTypes: + description: Sub-types associated with the entity. + example: + - Root + items: + description: An entity sub-type label. + type: string + type: array + entityType: + description: Type of the entity (for example, aws_iam_user, aws_ec2_instance). + example: aws_iam_user + type: string + entityTypes: + description: All types associated with the entity. + example: + - Root + - User Name + items: + description: An entity type label. + type: string + type: array + firstDetected: + description: Timestamp when the entity was first detected (Unix milliseconds). + example: 1778876604661 + format: int64 + type: integer + lastActivityTitle: + description: Title of the most recent signal detected for this entity. + example: Suspicious API call detected + type: string + lastDetected: + description: Timestamp when the entity was last detected (Unix milliseconds). + example: 1780064607093 + format: int64 + type: integer + riskScore: + description: Current risk score for the entity. + example: 85 + format: int64 + type: integer + riskScoreEvolution: + description: Change in risk score compared to previous period. + example: 12 + format: int64 + type: integer + severity: + $ref: '#/components/schemas/SecurityEntityRiskScoreAttributesSeverity' + signalsDetected: + description: Number of security signals detected for this entity. + example: 15 + format: int64 + type: integer required: - - errors - type: object - GetFindingResponse: - description: The expected response schema when getting a finding. + - entityProviders + - entitySubTypes + - accountIds + - riskScore + - riskScoreEvolution + - severity + - firstDetected + - lastDetected + - lastActivityTitle + - signalsDetected + - configRisks + - entityMetadata + type: object + SecurityEntityRiskScoreType: + description: Resource type. + enum: + - SecurityEntityRiskScore + example: SecurityEntityRiskScore + type: string + x-enum-varnames: + - SECURITY_ENTITY_RISK_SCORE + ApplicationSecurityServiceAttributes: + description: Application Security details describing a service in a given environment. properties: - data: - $ref: '#/components/schemas/DetailedFinding' + agent_versions: + description: The Datadog Agent versions reporting for the service. + example: + - 7.50.0 + items: + description: A Datadog Agent version reporting for the service. + example: 7.50.0 + type: string + type: array + app_type: + description: The application type of the service, such as `web` or `serverless`. + example: web + type: string + asm_threat_compatible: + description: Whether the service is compatible with Application Security Management (Threats). + example: true + type: boolean + backend_waf_event_count: + description: The number of backend WAF events detected for the service. + example: 10 + format: int64 + type: integer + business_logic: + description: The enabled business logic detection rules for the service. + example: + - users.login.success + items: + description: A business logic detection rule enabled for the service. + example: users.login.success + type: string + type: array + color: + deprecated: true + description: 'Deprecated: a display color associated with the service in the UI.' + example: '' + type: string + env: + description: The environment the service runs in. + example: prod + type: string + event_count: + description: The number of Application Security events detected for the service. + example: 42 + format: int64 + type: integer + event_trend: + deprecated: true + description: 'Deprecated: the trend of Application Security events over time.' + example: + - 0 + items: + description: A point in the Application Security events trend. + example: 0 + format: int64 + type: integer + type: array + has_appsec_enabled: + description: Whether Application Security Management (Threats) is enabled for the service. + example: true + type: boolean + hits: + deprecated: true + description: 'Deprecated: the number of hits for the service.' + example: 0 + format: int64 + type: integer + iast_product_activation: + description: Whether Interactive Application Security Testing (IAST) is enabled for the service. + example: false + type: boolean + iast_product_compatibility: + description: The Interactive Application Security Testing (IAST) compatibility status of the service. + example: compatible + type: string + iast_product_compatibility_reasons: + description: The reasons explaining the Interactive Application Security Testing (IAST) compatibility status. + example: + - service_not_compatible + items: + description: A reason explaining the Interactive Application Security Testing (IAST) compatibility status. + example: service_not_compatible + type: string + type: array + languages: + description: The programming languages detected for the service. + example: + - go + items: + description: A programming language detected for the service. + example: go + type: string + type: array + last_ingested_spans: + description: The Unix timestamp, in seconds, of the last ingested span for the service. + example: 1610000000 + format: int64 + type: integer + rc_capabilities: + description: The Remote Configuration capabilities reported by the service. + example: + - ASM_DD_RULES + items: + description: A Remote Configuration capability reported by the service. + example: ASM_DD_RULES + type: string + type: array + recommended_business_logic: + description: The recommended business logic detection rules for the service. + example: + - users.login.success + items: + description: A recommended business logic detection rule for the service. + example: users.login.success + type: string + type: array + risk_product_activation: + description: Whether Software Composition Analysis (SCA) is enabled for the service. + example: false + type: boolean + risk_product_compatibility: + description: The Software Composition Analysis (SCA) compatibility status of the service. + example: compatible + type: string + risk_product_compatibility_reasons: + description: The reasons explaining the Software Composition Analysis (SCA) compatibility status. + example: + - service_not_compatible + items: + description: A reason explaining the Software Composition Analysis (SCA) compatibility status. + example: service_not_compatible + type: string + type: array + rules_version: + description: The WAF rules versions applied to the service. + example: + - 1.13.0 + items: + description: A WAF rules version applied to the service. + example: 1.13.0 + type: string + type: array + service: + description: The name of the service. + example: web-store + type: string + signal_count: + deprecated: true + description: 'Deprecated: the number of security signals for the service.' + example: 0 + format: int64 + type: integer + signal_trend: + deprecated: true + description: 'Deprecated: the trend of security signals over time.' + example: + - 0 + items: + description: A point in the security signals trend. + example: 0 + format: int64 + type: integer + type: array + source: + description: The data sources that contributed information about the service. + example: + - services-activity + items: + description: A data source that contributed information about the service. + example: services-activity + type: string + type: array + teams: + description: The teams that own the service. + example: + - security-team + items: + description: A team that owns the service. + example: security-team + type: string + type: array + tracer_versions: + description: The Datadog tracing library versions reporting for the service. + example: + - 1.60.0 + items: + description: A Datadog tracing library version reporting for the service. + example: 1.60.0 + type: string + type: array + vm-activation: + description: The Vulnerability Management activation status of the service. + example: enabled + type: string + vuln_critical_count: + deprecated: true + description: 'Deprecated: the number of critical-severity vulnerabilities for the service.' + example: 0 + format: int64 + type: integer + vuln_high_count: + deprecated: true + description: 'Deprecated: the number of high-severity vulnerabilities for the service.' + example: 0 + format: int64 + type: integer + without_filter_services: + description: The total number of services available without applying the service filter. + example: 0 + format: int64 + type: integer required: - - data - type: object - AssetType: - description: The asset type + - service + - env + - app_type + - has_appsec_enabled + - asm_threat_compatible + - languages + - teams + - event_count + - backend_waf_event_count + - risk_product_activation + - risk_product_compatibility + - risk_product_compatibility_reasons + - iast_product_activation + - iast_product_compatibility + - iast_product_compatibility_reasons + - vm-activation + - agent_versions + - tracer_versions + - rules_version + - rc_capabilities + - source + - last_ingested_spans + - business_logic + - recommended_business_logic + - without_filter_services + - color + - event_trend + - signal_trend + - signal_count + - hits + - vuln_high_count + - vuln_critical_count + type: object + ApplicationSecurityServiceType: + default: service_env + description: The type of the resource. The value should always be `service_env`. enum: - - Repository - - Service - - Host - - HostImage - - Image - example: Repository + - service_env + example: service_env type: string x-enum-varnames: - - REPOSITORY - - SERVICE - - HOST - - HOSTIMAGE - - IMAGE - ListVulnerableAssetsResponse: - description: The expected response schema when listing vulnerable assets. + - SERVICE_ENV + SecurityFindingsAttributes: + description: The JSON object containing all attributes of the security finding. properties: - data: - description: List of vulnerable assets. + attributes: + additionalProperties: {} + description: The custom attributes of the security finding. + example: + severity: high + status: open + type: object + tags: + description: List of tags associated with the security finding. + example: + - team:platform + - env:prod items: - $ref: '#/components/schemas/Asset' + description: A tag associated with the security finding. + type: string type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data + timestamp: + description: The Unix timestamp at which the detection changed for the resource. Same value as @detection_changed_at. + example: 1765901760 + format: int64 + type: integer type: object - SBOMComponentLicenseType: - description: The SBOM component license type. + SecurityFindingsDataType: + default: finding + description: The type of the security finding resource. + enum: + - finding + example: finding + type: string + x-enum-varnames: + - FINDING + SecurityFindingsPage: + description: Pagination information. + properties: + after: + description: The cursor used to get the next page of results. + example: eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= + type: string + type: object + SecurityFindingsStatus: + description: The status of the response. enum: - - network_strong_copyleft - - non_standard_copyleft - - other_non_free - - other_non_standard - - permissive - - public_domain - - strong_copyleft - - weak_copyleft - example: application + - done + - timeout + example: done type: string x-enum-varnames: - - NETWORK_STRONG_COPYLEFT - - NON_STANDARD_COPYLEFT - - OTHER_NON_FREE - - OTHER_NON_STANDARD - - PERMISSIVE - - PUBLIC_DOMAIN - - STRONG_COPYLEFT - - WEAK_COPYLEFT - ListAssetsSBOMsResponse: - description: The expected response schema when listing assets SBOMs. + - DONE + - TIMEOUT + AssigneeRequestDataAttributes: + description: Attributes of the assignee request. properties: - data: - description: List of assets SBOMs. - items: - $ref: '#/components/schemas/SBOM' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data + assignee_id: + description: Unique identifier of the Datadog user to assign the security findings to. If this field is not provided, the security findings are unassigned. + example: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + type: string type: object - GetSBOMResponse: - description: The expected response schema when getting an SBOM. + AssigneeRequestDataRelationships: + description: Relationships of the assignee request. properties: - data: - $ref: '#/components/schemas/SBOM' + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to assign or unassign. required: - - data + - findings type: object - CreateNotificationRuleParameters: - description: Body of the notification rule create request. + AssigneeDataType: + default: assignee + description: Assignee resource type. + enum: + - assignee + example: assignee + type: string + x-enum-varnames: + - ASSIGNEE + AssigneeResponseDataAttributes: + description: Attributes of the assignee response. properties: - data: - $ref: '#/components/schemas/CreateNotificationRuleParametersData' + assignee_id: + description: Unique identifier of the Datadog user assigned to the security findings. Omitted when the findings were unassigned. + example: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + type: string type: object - NotificationRuleResponse: - description: Response object which includes a notification rule. + AssignmentResult: + description: Per-finding outcome of an assign or unassign operation. properties: - data: - $ref: '#/components/schemas/NotificationRule' + detail: + description: Human-readable explanation of the outcome. + example: failed to update finding assignee + type: string + finding_id: + description: Unique identifier of the security finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: string + status: + description: HTTP-like status code describing the outcome for this finding. + example: 500 + format: int32 + maximum: 599 + type: integer + title: + description: Short label describing the outcome for this finding. + example: Internal Server Error + type: string + required: + - finding_id + - status + - title + - detail type: object - PatchNotificationRuleParameters: - description: Body of the notification rule patch request. + SecurityAutomationRulesPageInfo: + description: Pagination information for the list of automation rules. properties: - data: - $ref: '#/components/schemas/PatchNotificationRuleParametersData' + total_filtered_count: + description: The total number of rules matching the current filter. + example: 42 + format: int64 + type: integer + required: + - total_filtered_count type: object - VulnerabilityType: - description: The vulnerability type. - enum: - - AdminConsoleActive - - CodeInjection - - CommandInjection - - ComponentWithKnownVulnerability - - DangerousWorkflows - - DefaultAppDeployed - - DefaultHtmlEscapeInvalid - - DirectoryListingLeak - - EmailHtmlInjection - - EndOfLife - - HardcodedPassword - - HardcodedSecret - - HeaderInjection - - HstsHeaderMissing - - InsecureAuthProtocol - - InsecureCookie - - InsecureJspLayout - - LdapInjection - - MaliciousPackage - - MandatoryRemediation - - NoHttpOnlyCookie - - NoSameSiteCookie - - NoSqlMongoDbInjection - - PathTraversal - - ReflectionInjection - - RiskyLicense - - SessionRewriting - - SessionTimeout - - SqlInjection - - Ssrf - - StackTraceLeak - - TrustBoundaryViolation - - Unmaintained - - UntrustedDeserialization - - UnvalidatedRedirect - - VerbTampering - - WeakCipher - - WeakHash - - WeakRandomness - - XContentTypeHeaderMissing - - XPathInjection - - Xss - example: WeakCipher - type: string - x-enum-varnames: - - ADMIN_CONSOLE_ACTIVE - - CODE_INJECTION - - COMMAND_INJECTION - - COMPONENT_WITH_KNOWN_VULNERABILITY - - DANGEROUS_WORKFLOWS - - DEFAULT_APP_DEPLOYED - - DEFAULT_HTML_ESCAPE_INVALID - - DIRECTORY_LISTING_LEAK - - EMAIL_HTML_INJECTION - - END_OF_LIFE - - HARDCODED_PASSWORD - - HARDCODED_SECRET - - HEADER_INJECTION - - HSTS_HEADER_MISSING - - INSECURE_AUTH_PROTOCOL - - INSECURE_COOKIE - - INSECURE_JSP_LAYOUT - - LDAP_INJECTION - - MALICIOUS_PACKAGE - - MANDATORY_REMEDIATION - - NO_HTTP_ONLY_COOKIE - - NO_SAME_SITE_COOKIE - - NO_SQL_MONGO_DB_INJECTION - - PATH_TRAVERSAL - - REFLECTION_INJECTION - - RISKY_LICENSE - - SESSION_REWRITING - - SESSION_TIMEOUT - - SQL_INJECTION - - SSRF - - STACK_TRACE_LEAK - - TRUST_BOUNDARY_VIOLATION - - UNMAINTAINED - - UNTRUSTED_DESERIALIZATION - - UNVALIDATED_REDIRECT - - VERB_TAMPERING - - WEAK_CIPHER - - WEAK_HASH - - WEAK_RANDOMNESS - - X_CONTENT_TYPE_HEADER_MISSING - - X_PATH_INJECTION - - XSS - VulnerabilitySeverity: - description: The vulnerability severity. - enum: - - Unknown - - None - - Low - - Medium - - High - - Critical - example: Medium - type: string - x-enum-varnames: - - UNKNOWN - - NONE - - LOW - - MEDIUM - - HIGH - - CRITICAL - VulnerabilityStatus: - description: The vulnerability status. - enum: - - Open - - Muted - - Remediated - - InProgress - - AutoClosed - example: Open - type: string - x-enum-varnames: - - OPEN - - MUTED - - REMEDIATED - - INPROGRESS - - AUTOCLOSED - VulnerabilityTool: - description: The vulnerability tool. + DueDateRuleAttributesCreate: + description: Attributes for creating or updating a due date rule. + properties: + action: + $ref: '#/components/schemas/DueDateRuleAction' + enabled: + description: Whether the due date rule is enabled. + example: true + type: boolean + name: + description: The name of the due date rule. + example: Critical findings due in 7 days + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' + required: + - name + - rule + - action + type: object + DueDateRuleType: + description: The JSON:API type for due date rules. enum: - - IAST - - SCA - - Infra - example: SCA + - due_date_rules + example: due_date_rules type: string x-enum-varnames: - - IAST - - SCA - - INFRA - VulnerabilityEcosystem: - description: The related vulnerability asset ecosystem. + - DUE_DATE_RULES + DueDateRuleAttributesResponse: + description: Attributes of a due date rule returned by the API. + properties: + action: + $ref: '#/components/schemas/DueDateRuleAction' + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: '#/components/schemas/AutomationRuleCreatedBy' + enabled: + description: Whether the due date rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: '#/components/schemas/AutomationRuleModifiedBy' + name: + description: The name of the due date rule. + example: Critical findings due in 7 days + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' + required: + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by + type: object + DueDateRuleReorderItem: + description: A reference to a due date rule used for reordering. + properties: + id: + description: The ID of the automation rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/DueDateRuleType' + required: + - type + - id + type: object + MuteRuleAttributesCreate: + description: Attributes for creating or updating a mute rule. + properties: + action: + $ref: '#/components/schemas/MuteRuleAction' + enabled: + description: Whether the mute rule is enabled. + example: true + type: boolean + name: + description: The name of the mute rule. + example: Mute accepted risks in dev + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' + required: + - name + - rule + - action + type: object + MuteRuleType: + description: The JSON:API type for mute rules. enum: - - PyPI - - Maven - - NuGet - - Npm - - RubyGems - - Go - - Packagist - - Ddeb - - Rpm - - Apk - - Windows + - mute_rules + example: mute_rules type: string x-enum-varnames: - - PYPI - - MAVEN - - NUGET - - NPM - - RUBY_GEMS - - GO - - PACKAGIST - - D_DEB - - RPM - - APK - - WINDOWS - ListVulnerabilitiesResponse: - description: The expected response schema when listing vulnerabilities. + - MUTE_RULES + MuteRuleAttributesResponse: + description: Attributes of a mute rule returned by the API. properties: - data: - description: List of vulnerabilities. - items: - $ref: '#/components/schemas/Vulnerability' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' + action: + $ref: '#/components/schemas/MuteRuleAction' + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: '#/components/schemas/AutomationRuleCreatedBy' + enabled: + description: Whether the mute rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: '#/components/schemas/AutomationRuleModifiedBy' + name: + description: The name of the mute rule. + example: Mute accepted risks in dev + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' required: - - data + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by type: object - CloudWorkloadSecurityAgentRulesListResponse: - description: Response object that includes a list of Agent rule + MuteRuleReorderItem: + description: A reference to a mute rule used for reordering. properties: - data: - description: A list of Agent rules objects - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: array + id: + description: The ID of the automation rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/MuteRuleType' + required: + - type + - id type: object - CloudWorkloadSecurityAgentRuleCreateRequest: - description: Request object that includes the Agent rule to create + SeverityModifierRuleAttributesCreate: + description: Attributes for creating or updating a severity modifier rule. properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateData' + action: + $ref: '#/components/schemas/SeverityModifierRuleAction' + enabled: + description: Whether the severity modifier rule is enabled. + example: true + type: boolean + name: + description: The name of the severity modifier rule. + example: Downgrade misconfigurations in dev + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' required: - - data + - name + - rule + - action type: object - CloudWorkloadSecurityAgentRuleResponse: - description: Response object that includes an Agent rule + SeverityModifierRuleType: + description: The JSON:API type for severity modifier rules. + enum: + - severity_modifier_rules + example: severity_modifier_rules + type: string + x-enum-varnames: + - SEVERITY_MODIFIER_RULES + SeverityModifierRuleAttributesResponse: + description: Attributes of a severity modifier rule as returned by the API. properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' + action: + $ref: '#/components/schemas/SeverityModifierRuleAction' + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: '#/components/schemas/AutomationRuleCreatedBy' + enabled: + description: Whether the severity modifier rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: '#/components/schemas/AutomationRuleModifiedBy' + name: + description: The name of the severity modifier rule. + example: Downgrade misconfigurations in dev + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' + required: + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by type: object - CloudWorkloadSecurityAgentRuleUpdateRequest: - description: >- - Request object that includes the Agent rule with the attributes to - update + SeverityModifierRuleReorderItem: + description: A reference to a severity modifier rule used for reordering. properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData' + id: + description: The ID of the automation rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/SeverityModifierRuleType' required: - - data + - type + - id type: object - SecurityFiltersResponse: - description: All the available security filters objects. + TicketCreationRuleAttributesCreate: + description: Attributes for creating or updating a ticket creation rule. properties: - data: - description: A list of security filters objects. - items: - $ref: '#/components/schemas/SecurityFilter' - type: array - meta: - $ref: '#/components/schemas/SecurityFilterMeta' + action: + $ref: '#/components/schemas/TicketCreationRuleAction' + enabled: + description: Whether the ticket creation rule is enabled. + example: true + type: boolean + name: + description: The name of the ticket creation rule. + example: Auto-create Jira tickets for critical findings + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' + required: + - name + - rule + - action type: object - SecurityFilterCreateRequest: - description: >- - Request object that includes the security filter that you would like to - create. + TicketCreationRuleType: + description: The JSON:API type for ticket creation rules. + enum: + - ticket_creation_rules + example: ticket_creation_rules + type: string + x-enum-varnames: + - TICKET_CREATION_RULES + TicketCreationRuleAttributesResponse: + description: Attributes of a ticket creation rule returned by the API. properties: - data: - $ref: '#/components/schemas/SecurityFilterCreateData' + action: + $ref: '#/components/schemas/TicketCreationRuleActionResponse' + created_at: + description: The Unix timestamp in milliseconds when the rule was created. + example: 1722439510282 + format: int64 + type: integer + created_by: + $ref: '#/components/schemas/AutomationRuleCreatedBy' + enabled: + description: Whether the ticket creation rule is enabled. + example: true + type: boolean + modified_at: + description: The Unix timestamp in milliseconds when the rule was last modified. + example: 1722439510282 + format: int64 + type: integer + modified_by: + $ref: '#/components/schemas/AutomationRuleModifiedBy' + name: + description: The name of the ticket creation rule. + example: Auto-create Jira tickets for critical findings + maxLength: 255 + minLength: 1 + type: string + rule: + $ref: '#/components/schemas/AutomationRuleScope' required: - - data + - name + - enabled + - rule + - action + - created_at + - created_by + - modified_at + - modified_by type: object - SecurityFilterResponse: - description: Response object which includes a single security filter. + TicketCreationRuleReorderItem: + description: A reference to a ticket creation rule used for reordering. properties: - data: - $ref: '#/components/schemas/SecurityFilter' - meta: - $ref: '#/components/schemas/SecurityFilterMeta' + id: + description: The ID of the automation rule. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/TicketCreationRuleType' + required: + - type + - id type: object - SecurityFilterUpdateRequest: - description: The new security filter body. + DetachCaseRequestDataRelationships: + description: Relationships detaching security findings from their case. properties: - data: - $ref: '#/components/schemas/SecurityFilterUpdateData' + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to detach from their case. required: - - data + - findings type: object - SecurityMonitoringSuppressionsResponse: - description: Response object containing the available suppression rules. + CaseDataType: + default: cases + description: Cases resource type. + enum: + - cases + example: cases + type: string + x-enum-varnames: + - CASES + CreateCaseRequestDataAttributes: + description: Attributes of the case to create. properties: - data: - description: A list of suppressions objects. + assignee_id: + description: Unique identifier of the user assigned to the case. + example: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + type: string + description: + description: Description of the case. If not provided, the description will be automatically generated. + example: A description of the case. + type: string + priority: + $ref: '#/components/schemas/CasePriority' + description: Priority of the case. If not provided, the priority will be automatically set to "NOT_DEFINED". + example: P4 + title: + description: Title of the case. If not provided, the title will be automatically generated. + example: A title for the case. + type: string + type: object + CreateCaseRequestDataRelationships: + description: Relationships of the case to create. + properties: + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to create a case for. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project in which the case will be created. + required: + - findings + - project + type: object + FindingCaseResponseDataAttributes: + description: Attributes of the case. + properties: + archived_at: + description: Timestamp of when the case was archived. + example: '2025-01-01T00:00:00.000Z' + format: date-time + type: string + assigned_to: + $ref: '#/components/schemas/RelationshipToUser' + description: User assigned to the case. + attributes: + additionalProperties: + items: + description: A custom attribute value string. + type: string + type: array + description: Custom attributes associated with the case as key-value pairs where values are string arrays. + type: object + closed_at: + description: Timestamp of when the case was closed. + example: '2025-01-01T00:00:00.000Z' + format: date-time + type: string + created_at: + description: Timestamp of when the case was created. + example: '2025-01-01T00:00:00.000Z' + format: date-time + type: string + creation_source: + description: Source of the case creation. + example: CS_SECURITY_FINDING + type: string + description: + description: Description of the case. + example: A description of the case. + type: string + due_date: + description: Due date of the case. + example: '2025-01-01' + type: string + insights: + description: Insights of the case. items: - $ref: '#/components/schemas/SecurityMonitoringSuppression' + $ref: '#/components/schemas/CaseInsightsItems' type: array + jira_issue: + $ref: '#/components/schemas/FindingJiraIssue' + description: Jira issue associated with the case. + key: + description: Key of the case. + example: PROJ-123 + type: string + linear_issue: + $ref: '#/components/schemas/FindingLinearIssue' + description: Linear issue associated with the case. + modified_at: + description: Timestamp of when the case was last modified. + example: '2025-01-01T00:00:00.000Z' + format: date-time + type: string + priority: + description: Priority of the case. + example: P4 + type: string + servicenow_ticket: + $ref: '#/components/schemas/FindingServiceNowTicket' + description: ServiceNow ticket associated with the case. + status: + description: Status of the case. + example: OPEN + type: string + status_group: + description: Status group of the case. + example: SG_OPEN + type: string + status_name: + description: Status name of the case. + example: Open + type: string + title: + description: Title of the case. + example: A title for the case. + type: string + type: + description: Type of the case. For security cases, this is always "SECURITY". + example: SECURITY + type: string type: object - SecurityMonitoringSuppressionCreateRequest: - description: >- - Request object that includes the suppression rule that you would like to - create. + FindingCaseResponseDataRelationships: + description: Relationships of the case. properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateData' - required: - - data + created_by: + $ref: '#/components/schemas/RelationshipToUser' + description: User who created the case. + modified_by: + $ref: '#/components/schemas/RelationshipToUser' + description: User who last modified the case. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Project in which the case was created. type: object - SecurityMonitoringSuppressionResponse: - description: Response object containing a single suppression rule. + AttachCaseRequestDataRelationships: + description: Relationships of the case to attach security findings to. properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppression' + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to attach to the case. + required: + - findings type: object - SecurityMonitoringRuleCreatePayload: - description: Create a new rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleCreatePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleCreatePayload' - - $ref: '#/components/schemas/CloudConfigurationRuleCreatePayload' - SecurityMonitoringSuppressionUpdateRequest: - description: Request object containing the fields to update on the suppression rule. + AttachJiraIssueRequestDataAttributes: + description: Attributes of the Jira issue to attach security findings to. properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateData' + jira_issue_url: + description: URL of the Jira issue to attach security findings to. + example: https://domain.atlassian.net/browse/PROJ-123 + type: string required: - - data + - jira_issue_url type: object - SecurityMonitoringListRulesResponse: - description: List of rules. + AttachJiraIssueRequestDataRelationships: + description: Relationships of the Jira issue to attach security findings to. properties: - data: - description: Array containing the list of rules. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to attach to the Jira issue. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project with Jira integration configured. It is used to attach security findings to the Jira issue. To configure the integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). + required: + - findings + - project type: object - SecurityMonitoringRuleResponse: - description: Create a new rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleResponse' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponse' - SecurityMonitoringRuleConvertPayload: - description: Convert a rule from JSON to Terraform. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRulePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRulePayload' - SecurityMonitoringRuleConvertResponse: - description: Result of the convert rule request containing Terraform content. + JiraIssuesDataType: + default: jira_issues + description: Jira issues resource type. + enum: + - jira_issues + example: jira_issues + type: string + x-enum-varnames: + - JIRA_ISSUES + CreateJiraIssueRequestDataAttributes: + description: Attributes of the Jira issue to create. properties: - ruleId: - description: the ID of the rule. + assignee_id: + description: Unique identifier of the Datadog user assigned to the Jira issue. + example: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 type: string - terraformContent: - description: Terraform string as a result of converting the rule from JSON. + description: + description: Description of the Jira issue. If not provided, the description will be automatically generated. + example: A description of the Jira issue. + type: string + fields: + additionalProperties: {} + description: Custom fields of the Jira issue to create. For the list of available fields, see [Jira documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-projectidorkey-issuetypes-issuetypeid-get). + example: + key1: value + key2: + - value + key3: + key4: value + type: object + priority: + $ref: '#/components/schemas/CasePriority' + description: Datadog case priority mapped to the Jira issue priority. If not provided, the priority will be automatically set to "NOT_DEFINED". To configure the mapping, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). + example: P4 + title: + description: Title of the Jira issue. If not provided, the title will be automatically generated. + example: A title for the Jira issue. type: string type: object - SecurityMonitoringRuleTestRequest: - description: >- - Test the rule queries of a rule (rule property is ignored when applied - to an existing rule) + CreateJiraIssueRequestDataRelationships: + description: Relationships of the Jira issue to create. properties: - rule: - $ref: '#/components/schemas/SecurityMonitoringRuleTestPayload' - ruleQueryPayloads: - description: Data payloads used to test rules query with the expected result. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayload' - type: array + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to create a Jira issue for. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project configured with the Jira integration. It is used to create the Jira issue. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https://docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). + required: + - findings + - project type: object - SecurityMonitoringRuleTestResponse: - description: Result of the test of the rule queries. + AttachLinearIssueRequestDataAttributes: + description: Attributes of the Linear issue to attach security findings to. properties: - results: - description: >- - Assert results are returned in the same order as the rule query - payloads. - - For each payload, it returns True if the result matched the expected - result, - - False otherwise. - items: - type: boolean - type: array + linear_issue_url: + description: URL of the Linear issue to attach security findings to. + example: https://linear.app/your-workspace/issue/ENG-123 + type: string + required: + - linear_issue_url type: object - SecurityMonitoringRuleValidatePayload: - description: Validate a rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRulePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRulePayload' - - $ref: '#/components/schemas/CloudConfigurationRulePayload' - SecurityMonitoringRuleUpdatePayload: - description: Update an existing rule. + AttachLinearIssueRequestDataRelationships: + description: Relationships of the Linear issue to attach security findings to. properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - customMessage: - description: >- - Custom/Overridden Message for generated signals (used in case of - Default rule update). + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to attach to the Linear issue. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project with the Linear integration configured. It is used to attach security findings to the Linear issue. + required: + - findings + - project + type: object + LinearIssuesDataType: + default: linear_issues + description: Linear issues resource type. + enum: + - linear_issues + example: linear_issues + type: string + x-enum-varnames: + - LINEAR_ISSUES + CreateLinearIssueRequestDataAttributes: + description: Attributes of the Linear issue to create. + properties: + assignee_id: + description: Unique identifier of the Datadog user assigned to the Linear issue. + example: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 type: string - customName: - description: Custom/Overridden name (used in case of Default rule update). + description: + description: Description of the Linear issue. If not provided, the description will be automatically generated. + example: A description of the Linear issue. type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. + label_ids: + description: Linear label IDs to set on the created issue. example: - - service + - a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d items: - description: Field to group by. + description: A Linear label ID. type: string type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. + linear_project_id: + description: Unique identifier of the Linear project to pin the issue to. If not provided, the issue is not associated with a Linear project. + example: d4c3b2a1-6f5e-8b7a-0d9c-2f1e4a3b6c5d type: string - name: - description: Name of the rule. + priority: + $ref: '#/components/schemas/CasePriority' + description: Datadog case priority mapped to the Linear issue priority. If not provided, the priority will be automatically set to "NOT_DEFINED". + example: P4 + title: + description: Title of the Linear issue. If not provided, the title will be automatically generated. + example: A title for the Linear issue. type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' - type: array - version: - description: The version of the rule being updated. - example: 1 - format: int32 - maximum: 2147483647 - type: integer type: object - GetRuleVersionHistoryResponse: - description: Response for getting the rule version history. + CreateLinearIssueRequestDataRelationships: + description: Relationships of the Linear issue to create. properties: - data: - $ref: '#/components/schemas/GetRuleVersionHistoryData' + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to create a Linear issue for. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project configured with the Linear integration. It is used to create the Linear issue. + required: + - findings + - project type: object - SecurityMonitoringSignalsListResponse: - description: |- - The response object with all security signals matching the request - and pagination information. + MuteFindingsRequestDataAttributes: + description: Attributes of the mute request. properties: - data: - description: An array of security signals matching the request. - items: - $ref: '#/components/schemas/SecurityMonitoringSignal' - type: array - links: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseLinks' - meta: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMeta' + mute: + $ref: '#/components/schemas/MuteFindingsMuteAttributes' + required: + - mute type: object - SecurityMonitoringSignalListRequest: - description: The request for a security signal list. + MuteFindingsRequestDataRelationships: + description: Relationships of the mute request. + properties: + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to mute or unmute. + required: + - findings + type: object + MuteDataType: + default: mute + description: Mute resource type. + enum: + - mute + example: mute + type: string + x-enum-varnames: + - MUTE + SecurityFindingsSearchRequestDataAttributes: + description: Request attributes for searching security findings. properties: filter: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequestFilter' + default: '*' + description: The search query following log search syntax. + example: '@severity:(critical OR high) @status:open team:platform' + type: string page: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequestPage' + $ref: '#/components/schemas/SecurityFindingsSearchRequestPage' sort: - $ref: '#/components/schemas/SecurityMonitoringSignalsSort' - type: object - SecurityMonitoringSignalResponse: - description: Security Signal response data object. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignal' - type: object - SecurityMonitoringSignalAssigneeUpdateRequest: - description: >- - Request body for changing the assignee of a given security monitoring - signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateData' - required: - - data + $ref: '#/components/schemas/SecurityFindingsSort' type: object - SecurityMonitoringSignalTriageUpdateResponse: - description: >- - The response returned after all triage operations, containing the - updated signal triage data. + AttachServiceNowTicketRequestDataAttributes: + description: Attributes of the ServiceNow ticket to attach security findings to. properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateData' + servicenow_ticket_url: + description: URL of the ServiceNow incident to attach security findings to. Must be a service-now.com URL pointing to an incident record. + example: https://example.service-now.com/now/nav/ui/classic/params/target/incident.do?sys_id=abcdef0123456789abcdef0123456789 + type: string required: - - data + - servicenow_ticket_url type: object - APIErrorResponse: - description: API error response. + AttachServiceNowTicketRequestDataRelationships: + description: Relationships of the ServiceNow ticket to attach security findings to. properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to attach to the ServiceNow ticket. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project with the ServiceNow integration configured. It is used to attach security findings to the ServiceNow ticket. required: - - errors + - findings + - project type: object - SecurityMonitoringSignalIncidentsUpdateRequest: - description: >- - Request body for changing the related incidents of a given security - monitoring signal. + ServiceNowTicketsDataType: + default: servicenow_tickets + description: ServiceNow tickets resource type. + enum: + - servicenow_tickets + example: servicenow_tickets + type: string + x-enum-varnames: + - SERVICENOW_TICKETS + CreateServiceNowTicketRequestDataAttributes: + description: Attributes of the ServiceNow ticket to create. properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateData' - required: - - data + assignee_id: + description: Unique identifier of the Datadog user assigned to the case backing the ServiceNow ticket. + example: f315bdaf-9ee7-4808-a9c1-99c15bf0f4d0 + type: string + description: + description: Description of the ServiceNow ticket. If not provided, the description will be automatically generated. + example: A description of the ServiceNow ticket. + type: string + priority: + $ref: '#/components/schemas/CasePriority' + description: Datadog case priority mapped to the ServiceNow ticket priority. If not provided, the priority will be automatically set to "NOT_DEFINED". + example: P4 + title: + description: Title of the ServiceNow ticket. If not provided, the title will be automatically generated. + example: A title for the ServiceNow ticket. + type: string type: object - SecurityMonitoringSignalStateUpdateRequest: - description: >- - Request body for changing the state of a given security monitoring - signal. + CreateServiceNowTicketRequestDataRelationships: + description: Relationships of the ServiceNow ticket to create. properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateData' + findings: + $ref: '#/components/schemas/Findings' + description: Security findings to create a ServiceNow ticket for. + project: + $ref: '#/components/schemas/CaseManagementProject' + description: Case management project configured with the ServiceNow integration. It is used to create the ServiceNow ticket. required: - - data - type: object - SensitiveDataScannerGetConfigResponse: - description: Get all groups response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponseData' - included: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedArray' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMeta' + - findings + - project type: object - SensitiveDataScannerConfigRequest: - description: Group reorder request. + SBOMAttributes: + description: The JSON:API attributes of the SBOM. properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerReorderConfig' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + bomFormat: + description: Specifies the format of the BOM. This helps to identify the file as CycloneDX since BOM do not have a filename convention nor does JSON schema support namespaces. This value MUST be `CycloneDX`. + example: CycloneDX + type: string + components: + description: A list of software and hardware components. + items: + $ref: '#/components/schemas/SBOMComponent' + type: array + dependencies: + description: List of dependencies between components of the SBOM. + items: + $ref: '#/components/schemas/SBOMComponentDependency' + type: array + metadata: + $ref: '#/components/schemas/SBOMMetadata' + serialNumber: + description: Every BOM generated has a unique serial number, even if the contents of the BOM have not changed overt time. The serial number follows [RFC-4122](https://datatracker.ietf.org/doc/html/rfc4122) + example: urn:uuid:f7119d2f-1vgh-24b5-91f0-12010db72da7 + type: string + specVersion: + $ref: '#/components/schemas/SpecVersion' + version: + description: It increments when a BOM is modified. The default value is 1. + example: 1 + format: int64 + type: integer required: - - data - - meta + - bomFormat + - specVersion + - components + - metadata + - serialNumber + - version + - dependencies type: object - SensitiveDataScannerReorderGroupsResponse: - description: Group reorder response. + SBOMType: + description: The JSON:API type. + enum: + - sboms + example: sboms + type: string + x-enum-varnames: + - SBOMS + ScannedAssetMetadataAttributes: + description: The attributes of a scanned asset metadata. properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMeta' + asset: + $ref: '#/components/schemas/ScannedAssetMetadataAsset' + first_success_timestamp: + description: The timestamp when the scan of the asset was performed for the first time. + example: '2025-07-08T07:24:53Z' + type: string + last_success: + $ref: '#/components/schemas/ScannedAssetMetadataLastSuccess' + required: + - asset + - last_success + - first_success_timestamp type: object - SensitiveDataScannerGroupCreateRequest: - description: Create group request. + ScannedAssetMetadataType: + description: The JSON:API type. + enum: + - scanned-assets-metadata + example: scanned-assets-metadata + type: string + x-enum-varnames: + - SCANNED_ASSETS_METADATA + IoCExplorerListResponseAttributes: + description: Attributes of the IoC Explorer list response. properties: data: - $ref: '#/components/schemas/SensitiveDataScannerGroupCreate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + description: List of indicators of compromise. + items: + $ref: '#/components/schemas/IoCIndicator' + type: array + metadata: + $ref: '#/components/schemas/IoCExplorerListResponseMetadata' + paging: + $ref: '#/components/schemas/IoCExplorerListResponsePaging' type: object - SensitiveDataScannerCreateGroupResponse: - description: Create group response. + GetIoCIndicatorResponseAttributes: + description: Attributes of the get indicator response. properties: data: - $ref: '#/components/schemas/SensitiveDataScannerGroupResponse' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + $ref: '#/components/schemas/IoCIndicatorDetailed' type: object - SensitiveDataScannerGroupDeleteRequest: - description: Delete group request. + IoCTriageWriteRequestAttributes: + description: Attributes for setting an indicator's triage state. properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + indicator: + description: The indicator value to triage (for example, an IP address or domain). + example: 192.0.2.1 + type: string + triage_state: + $ref: '#/components/schemas/IoCTriageState' required: - - meta + - indicator + - triage_state type: object - SensitiveDataScannerGroupDeleteResponse: - description: Delete group response. + IoCTriageWriteResponseAttributes: + description: Attributes of a created or updated triage state. properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + created_at: + description: Timestamp when the triage record was created. + format: date-time + type: string + indicator: + description: The indicator value that was triaged. + type: string + triage_state: + $ref: '#/components/schemas/IoCTriageState' + triaged_at: + description: Timestamp when the triage state was set. + format: date-time + type: string + triaged_by: + description: UUID of the user who set the triage state. + type: string type: object - SensitiveDataScannerGroupUpdateRequest: - description: Update group request. + CreateNotificationRuleParametersDataAttributes: + description: Attributes of the notification rule create request. properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + enabled: + $ref: '#/components/schemas/Enabled' + name: + $ref: '#/components/schemas/RuleName' + routing: + $ref: '#/components/schemas/NotificationRuleRouting' + selectors: + $ref: '#/components/schemas/Selectors' + targets: + $ref: '#/components/schemas/Targets' + time_aggregation: + $ref: '#/components/schemas/TimeAggregation' required: - - data - - meta - type: object - SensitiveDataScannerGroupUpdateResponse: - description: Update group response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + - selectors + - name + - targets type: object - SensitiveDataScannerRuleCreateRequest: - description: Create rule request. + NotificationRulesType: + description: The rule type associated to notification rules. + enum: + - notification_rules + example: notification_rules + type: string + x-enum-varnames: + - NOTIFICATION_RULES + NotificationRuleAttributes: + description: Attributes of the notification rule. properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleCreate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + created_at: + $ref: '#/components/schemas/Date' + created_by: + $ref: '#/components/schemas/RuleUser' + enabled: + $ref: '#/components/schemas/Enabled' + modified_at: + $ref: '#/components/schemas/Date' + modified_by: + $ref: '#/components/schemas/RuleUser' + name: + $ref: '#/components/schemas/RuleName' + selectors: + $ref: '#/components/schemas/Selectors' + targets: + $ref: '#/components/schemas/Targets' + time_aggregation: + $ref: '#/components/schemas/TimeAggregation' + version: + $ref: '#/components/schemas/Version' required: - - data - - meta + - created_at + - created_by + - enabled + - modified_at + - modified_by + - name + - selectors + - targets + - version type: object - SensitiveDataScannerCreateRuleResponse: - description: Create rule response. + ID: + description: The ID of a notification rule. + example: aaa-bbb-ccc + type: string + PatchNotificationRuleParametersDataAttributes: + description: Attributes of the notification rule patch request. It is required to update the version of the rule when patching it. properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleResponse' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + enabled: + $ref: '#/components/schemas/Enabled' + name: + $ref: '#/components/schemas/RuleName' + routing: + $ref: '#/components/schemas/NotificationRuleRouting' + selectors: + $ref: '#/components/schemas/Selectors' + targets: + $ref: '#/components/schemas/Targets' + time_aggregation: + $ref: '#/components/schemas/TimeAggregation' + version: + $ref: '#/components/schemas/Version' type: object - SensitiveDataScannerRuleDeleteRequest: - description: Delete rule request. + VulnerabilityAttributes: + description: The JSON:API attributes of the vulnerability. properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + advisory: + $ref: '#/components/schemas/VulnerabilityAdvisory' + advisory_id: + description: Vulnerability advisory ID. + example: TRIVY-CVE-2023-0615 + type: string + code_location: + $ref: '#/components/schemas/CodeLocation' + cve_list: + description: Vulnerability CVE list. + example: + - CVE-2023-0615 + items: + description: A CVE identifier associated with the vulnerability. + example: CVE-2023-0615 + type: string + type: array + cvss: + $ref: '#/components/schemas/VulnerabilityCvss' + dependency_locations: + $ref: '#/components/schemas/VulnerabilityDependencyLocations' + description: + description: Vulnerability description. + example: LDAP Injection is a security vulnerability that occurs when untrusted user input is improperly handled and directly incorporated into LDAP queries without appropriate sanitization or validation. This vulnerability enables attackers to manipulate LDAP queries and potentially gain unauthorized access, modify data, or extract sensitive information from the directory server. By exploiting the LDAP injection vulnerability, attackers can execute malicious commands, bypass authentication mechanisms, and perform unauthorized actions within the directory service. + type: string + ecosystem: + $ref: '#/components/schemas/VulnerabilityEcosystem' + exposure_time: + description: Vulnerability exposure time in seconds. + example: 5618604 + format: int64 + type: integer + first_detection: + description: First detection of the vulnerability in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format + example: '2024-09-19T21:23:08.000Z' + type: string + fix_available: + description: Whether the vulnerability has a remediation or not. + example: false + type: boolean + language: + description: Vulnerability language. + example: ubuntu + type: string + last_detection: + description: Last detection of the vulnerability in [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339) format + example: '2024-09-01T21:23:08.000Z' + type: string + library: + $ref: '#/components/schemas/Library' + origin: + description: Vulnerability origin. + example: + - agentless-scanner + items: + description: The detection origin of the vulnerability (for example, the scanner type). + example: agentless-scanner + type: string + type: array + remediations: + description: List of remediations. + items: + $ref: '#/components/schemas/Remediation' + type: array + repo_digests: + description: Vulnerability `repo_digest` list (when the vulnerability is related to `Image` asset). + items: + description: A container image repository digest identifying the affected image. + example: sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 + type: string + type: array + risks: + $ref: '#/components/schemas/VulnerabilityRisks' + running_kernel: + description: True if the vulnerability affects a package in the host’s running kernel, false if it affects a non-running kernel, and omit if it is not kernel-related. + example: true + type: boolean + status: + $ref: '#/components/schemas/VulnerabilityStatus' + title: + description: Vulnerability title. + example: LDAP Injection + type: string + tool: + $ref: '#/components/schemas/VulnerabilityTool' + type: + $ref: '#/components/schemas/VulnerabilityType' required: - - meta - type: object - SensitiveDataScannerRuleDeleteResponse: - description: Delete rule response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + - type + - cvss + - status + - tool + - title + - description + - cve_list + - risks + - language + - first_detection + - last_detection + - exposure_time + - remediations + - fix_available + - origin type: object - SensitiveDataScannerRuleUpdateRequest: - description: Update rule request. + VulnerabilityRelationships: + description: Related entities object. properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + affects: + $ref: '#/components/schemas/VulnerabilityRelationshipsAffects' required: - - data - - meta - type: object - SensitiveDataScannerRuleUpdateResponse: - description: Update rule response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' + - affects type: object - SensitiveDataScannerStandardPatternsResponseData: - description: List Standard patterns response data. + VulnerabilitiesType: + description: The JSON:API type. + enum: + - vulnerabilities + example: vulnerabilities + type: string + x-enum-varnames: + - VULNERABILITIES + CycloneDXComponentType: + description: The type of the scanned component. + enum: + - library + - application + - operating-system + example: library + type: string + x-enum-varnames: + - LIBRARY + - APPLICATION + - OPERATING_SYSTEM + CycloneDXMetadataComponent: + description: The asset that was scanned (for example, a host or container image). properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponse' + bom-ref: + description: A unique reference identifier for this metadata component. If set, must match a `bom-ref` in `components`. + example: host-ref-abc123 + type: string + name: + description: The name or identifier of the scanned asset (for example, an instance ID or hostname). + example: i-12345 + type: string + type: + description: The type of the scanned asset. + example: operating-system + type: string + required: + - name type: object - ListHistoricalJobsResponse: - description: List of historical jobs. + CycloneDXMetadataTools: + description: Information about the scanner tool that produced this BOM. properties: - data: - description: Array containing the list of historical jobs. + components: + description: The scanner tool components. Must contain exactly one element. items: - $ref: '#/components/schemas/HistoricalJobResponseData' + $ref: '#/components/schemas/CycloneDXToolComponent' type: array - meta: - $ref: '#/components/schemas/HistoricalJobListMeta' + required: + - components type: object - RunHistoricalJobRequest: - description: Run a historical job request. + CycloneDXVulnerabilityAdvisory: + description: An external advisory reference for a vulnerability. properties: - data: - $ref: '#/components/schemas/RunHistoricalJobRequestData' + url: + description: The URL of the advisory. + example: https://example.com/advisory/CVE-2021-1234 + type: string type: object - JobCreateResponse: - description: Run a historical job response. + CycloneDXVulnerabilityAffects: + description: A reference to a component affected by a vulnerability. properties: - data: - $ref: '#/components/schemas/JobCreateResponseData' + ref: + description: The `bom-ref` of the affected component. + example: a3390fca-c315-41ae-ae05-af5e7859cdee + type: string + required: + - ref type: object - ConvertJobResultsToSignalsRequest: - description: Request for converting historical job results to signals. + CycloneDXVulnerabilityAnalysis: + description: |- + The exploitability analysis for the vulnerability. When `state` is set to `resolved` + or `resolved_with_pedigree`, the vulnerability is closed in Datadog. + Other state values are accepted but have no effect on the vulnerability status. properties: - data: - $ref: '#/components/schemas/ConvertJobResultsToSignalsData' + state: + description: The vulnerability analysis state. + example: resolved + type: string type: object - HistoricalJobResponse: - description: Historical job response. + CycloneDXVulnerabilityRating: + description: A severity rating for a vulnerability. properties: - data: - $ref: '#/components/schemas/HistoricalJobResponseData' + score: + description: The CVSS score. + example: 9 + format: double + type: number + severity: + description: The severity level. + example: high + type: string + vector: + description: The CVSS vector string. + example: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:N + type: string type: object - AwsScanOptionsData: - description: Single AWS Scan Options entry. + CycloneDXVulnerabilityReference: + description: An external reference identifier for a vulnerability. properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsAttributes' id: - description: The ID of the AWS account. - example: '184366314700' + description: The identifier of the external reference (for example, a GHSA ID). + example: GHSA-35m5-8cvj-8783 type: string - type: - $ref: '#/components/schemas/AwsScanOptionsType' + source: + $ref: '#/components/schemas/CycloneDXVulnerabilityReferenceSource' type: object - AwsScanOptionsCreateData: - description: Object for the scan options of a single AWS account. + AssetAttributes: + description: The JSON:API attributes of the asset. properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsCreateAttributes' - id: - $ref: '#/components/schemas/AwsAccountId' + arch: + description: Asset architecture. + example: arm64 + type: string + environments: + description: List of environments where the asset is deployed. + example: + - staging + items: + description: An environment where the asset is deployed. + example: staging + type: string + type: array + name: + description: Asset name. + example: github.com/DataDog/datadog-agent.git + type: string + operating_system: + $ref: '#/components/schemas/AssetOperatingSystem' + risks: + $ref: '#/components/schemas/AssetRisks' + teams: + description: List of teams that own the asset. + example: + - compute + items: + description: A team that owns the asset. + example: compute + type: string + type: array type: - $ref: '#/components/schemas/AwsScanOptionsType' + $ref: '#/components/schemas/AssetType' + version: + $ref: '#/components/schemas/AssetVersion' required: - - id + - name - type - - attributes + - risks + - environments type: object - AwsScanOptionsUpdateData: - description: Object for the scan options of a single AWS account. + AssetEntityType: + description: The JSON:API type. + enum: + - assets + example: assets + type: string + x-enum-varnames: + - ASSETS + CloudWorkloadSecurityAgentRuleAttributes: + description: A Cloud Workload Security Agent rule returned by the API properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsUpdateAttributes' - id: - $ref: '#/components/schemas/AwsAccountId' - type: - $ref: '#/components/schemas/AwsScanOptionsType' - required: - - id - - type - - attributes + actions: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' + agentConstraint: + description: The version of the Agent + type: string + blocking: + description: The blocking policies that the rule belongs to + items: + description: The ID of a blocking policy that this rule belongs to. + type: string + type: array + category: + description: The category of the Agent rule + example: Process Activity + type: string + creationAuthorUuId: + description: The ID of the user who created the rule + example: e51c9744-d158-11ec-ad23-da7ad0900002 + type: string + creationDate: + description: When the Agent rule was created, timestamp in milliseconds + example: 1624366480320 + format: int64 + type: integer + creator: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreatorAttributes' + defaultRule: + description: Whether the rule is included by default + example: false + type: boolean + description: + description: The description of the Agent rule + example: My Agent rule + type: string + disabled: + description: The disabled policies that the rule belongs to + items: + description: The ID of a disabled policy that this rule belongs to. + type: string + type: array + enabled: + description: Whether the Agent rule is enabled + example: true + type: boolean + expression: + description: The SECL expression of the Agent rule + example: exec.file.name == "sh" + type: string + filters: + description: The platforms the Agent rule is supported on + items: + description: A platform filter that the Agent rule is supported on. + type: string + type: array + monitoring: + description: The monitoring policies that the rule belongs to + items: + description: The ID of a monitoring policy that this rule belongs to. + type: string + type: array + name: + description: The name of the Agent rule + example: my_agent_rule + type: string + product_tags: + description: The list of product tags associated with the rule + items: + description: A product tag associated with the rule. + type: string + type: array + silent: + description: Whether the rule is silent. + example: false + type: boolean + updateAuthorUuId: + description: The ID of the user who updated the rule + example: e51c9744-d158-11ec-ad23-da7ad0900002 + type: string + updateDate: + description: Timestamp in milliseconds when the Agent rule was last updated + example: 1624366480320 + format: int64 + type: integer + updatedAt: + description: When the Agent rule was last updated, timestamp in milliseconds + example: 1624366480320 + format: int64 + type: integer + updater: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdaterAttributes' + version: + description: The version of the Agent rule + example: 23 + format: int64 + type: integer type: object - AwsOnDemandData: - description: Single AWS on demand task. + CloudWorkloadSecurityAgentRuleType: + default: agent_rule + description: The type of the resource, must always be `agent_rule` + enum: + - agent_rule + example: agent_rule + type: string + x-enum-varnames: + - AGENT_RULE + CloudWorkloadSecurityAgentRuleCreateAttributes: + description: Create a new Cloud Workload Security Agent rule. properties: - attributes: - $ref: '#/components/schemas/AwsOnDemandAttributes' - id: - description: The UUID of the task. - example: 6d09294c-9ad9-42fd-a759-a0c1599b4828 + actions: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' + agent_version: + description: Constrain the rule to specific versions of the Datadog Agent. type: string - type: - $ref: '#/components/schemas/AwsOnDemandType' - type: object - AwsOnDemandCreateData: - description: Object for a single AWS on demand task. - properties: - attributes: - $ref: '#/components/schemas/AwsOnDemandCreateAttributes' - type: - $ref: '#/components/schemas/AwsOnDemandType' - required: - - type - - attributes - type: object - CustomFrameworkData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkDataAttributes' - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - type - - attributes - type: object - FrameworkHandleAndVersionResponseData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkDataHandleAndVersion' - id: - description: The ID of the custom framework. - example: handle-version + blocking: + description: The blocking policies that the rule belongs to. + items: + description: The ID of a blocking policy that this rule belongs to. + type: string + type: array + description: + description: The description of the Agent rule. + example: My Agent rule type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - id - - type - - attributes - type: object - CustomFrameworkMetadata: - description: Metadata for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkWithoutRequirements' - id: - description: The ID of the custom framework. - example: handle-version + disabled: + description: The disabled policies that the rule belongs to. + items: + description: The ID of a disabled policy that this rule belongs to. + type: string + type: array + enabled: + description: Whether the Agent rule is enabled. + example: true + type: boolean + expression: + description: The SECL expression of the Agent rule. + example: exec.file.name == "sh" type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - type: object - FullCustomFrameworkData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/FullCustomFrameworkDataAttributes' - id: - description: The ID of the custom framework. - example: handle-version + filters: + description: The platforms the Agent rule is supported on. + items: + description: A platform filter that the Agent rule is supported on. + type: string + type: array + monitoring: + description: The monitoring policies that the rule belongs to. + items: + description: The ID of a monitoring policy that this rule belongs to. + type: string + type: array + name: + description: The name of the Agent rule. + example: my_agent_rule type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' + policy_id: + description: The ID of the policy where the Agent rule is saved. + example: a8c8e364-6556-434d-b798-a4c23de29c0b + type: string + product_tags: + description: The list of product tags associated with the rule. + items: + description: A product tag associated with the rule. + type: string + type: array + silent: + description: Whether the rule is silent. + example: false + type: boolean required: - - id - - type - - attributes + - name + - expression type: object - GetResourceEvaluationFiltersResponseData: - description: The definition of `GetResourceFilterResponseData` object. + CloudWorkloadSecurityAgentRuleUpdateAttributes: + description: Update an existing Cloud Workload Security Agent rule properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `data` `id`. - example: csm_resource_filter + actions: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' + agent_version: + description: Constrain the rule to specific versions of the Datadog Agent type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - type: object - UpdateResourceEvaluationFiltersRequestData: - description: The definition of `UpdateResourceFilterRequestData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `UpdateResourceEvaluationFiltersRequestData` `id`. - example: csm_resource_filter + blocking: + description: The blocking policies that the rule belongs to + items: + description: The ID of a blocking policy that this rule belongs to. + type: string + type: array + description: + description: The description of the Agent rule + example: My Agent rule type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - required: - - attributes - - type - type: object - UpdateResourceEvaluationFiltersResponseData: - description: The definition of `UpdateResourceFilterResponseData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `data` `id`. - example: csm_resource_filter + disabled: + description: The disabled policies that the rule belongs to + items: + description: The ID of a disabled policy that this rule belongs to. + type: string + type: array + enabled: + description: Whether the Agent rule is enabled + example: true + type: boolean + expression: + description: The SECL expression of the Agent rule + example: exec.file.name == "sh" type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - required: - - attributes - - type - type: object - CsmAgentData: - description: Single Agent Data. - properties: - attributes: - $ref: '#/components/schemas/CsmAgentsAttributes' - id: - description: The ID of the Agent. - example: fffffc5505f6a006fdf7cf5aae053653 + monitoring: + description: The monitoring policies that the rule belongs to + items: + description: The ID of a monitoring policy that this rule belongs to. + type: string + type: array + policy_id: + description: The ID of the policy where the Agent rule is saved + example: a8c8e364-6556-434d-b798-a4c23de29c0b type: string - type: - $ref: '#/components/schemas/CSMAgentsType' + product_tags: + description: The list of product tags associated with the rule + items: + description: A product tag associated with the rule. + type: string + type: array + silent: + description: Whether the rule is silent. + example: false + type: boolean type: object - CSMAgentsMetadata: - description: Metadata related to the paginated response. + CloudWorkloadSecurityAgentRuleID: + description: The ID of the Agent rule + example: 3dd-0uc-h1s + type: string + SecurityMonitoringCriticalAssetAttributes: + description: The attributes of the critical asset. properties: - page_index: - description: The index of the current page in the paginated results. - example: 0 + creation_author_id: + description: ID of user who created the critical asset. + example: 367742 format: int64 type: integer - page_size: - description: The number of items per page in the paginated results. - example: 10 + creation_date: + description: A Unix millisecond timestamp given the creation date of the critical asset. format: int64 type: integer - total_filtered: - description: Total number of items that match the filter criteria. - example: 128697 + creator: + $ref: '#/components/schemas/SecurityMonitoringUser' + description: + description: A description of the critical asset. + example: Production database servers handling PII + type: string + editable: + description: Whether the critical asset is editable. + example: true + type: boolean + enabled: + description: Whether the critical asset is enabled. + example: true + type: boolean + query: + description: The query for the critical asset. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: security:monitoring + type: string + rule_query: + description: The rule query of the critical asset, with the same syntax as the search bar for detection rules. This determines which rules this critical asset will apply to. + example: type:log_detection source:cloudtrail + type: string + severity: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetSeverity' + tags: + description: List of tags associated with the critical asset. + example: + - team:database + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + update_author_id: + description: ID of user who updated the critical asset. + example: 367743 format: int64 type: integer + update_date: + description: A Unix millisecond timestamp given the update date of the critical asset. + format: int64 + type: integer + updater: + $ref: '#/components/schemas/SecurityMonitoringUser' + version: + description: The version of the critical asset; it starts at 1, and is incremented at each update. + example: 2 + format: int32 + maximum: 2147483647 + type: integer type: object - CsmCloudAccountsCoverageAnalysisData: - description: CSM Cloud Accounts Coverage Analysis data. + SecurityMonitoringCriticalAssetID: + description: The ID of the critical asset. + example: 4e2435a5-6670-4b8f-baff-46083cd1c250 + type: string + SecurityMonitoringCriticalAssetType: + default: critical_assets + description: The type of the resource. The value should always be `critical_assets`. + enum: + - critical_assets + example: critical_assets + type: string + x-enum-varnames: + - CRITICAL_ASSETS + SecurityMonitoringCriticalAssetCreateAttributes: + description: Object containing the attributes of the critical asset to be created. properties: - attributes: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_cloud_accounts_coverage_analysis_response_public_v0 - description: >- - The type of the resource. The value should always be - `get_cloud_accounts_coverage_analysis_response_public_v0`. - example: get_cloud_accounts_coverage_analysis_response_public_v0 + description: + description: A description of the critical asset. + example: Production database servers handling PII type: string - type: object - CsmHostsAndContainersCoverageAnalysisData: - description: CSM Hosts and Containers Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 + enabled: + default: true + description: Whether the critical asset is enabled. Defaults to `true` if not specified. + example: true + type: boolean + query: + description: The query for the critical asset. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: security:monitoring type: string - type: - default: get_hosts_and_containers_coverage_analysis_response_public_v0 - description: >- - The type of the resource. The value should always be - `get_hosts_and_containers_coverage_analysis_response_public_v0`. - example: get_hosts_and_containers_coverage_analysis_response_public_v0 + rule_query: + description: The rule query of the critical asset, with the same syntax as the search bar for detection rules. This determines which rules this critical asset will apply to. + example: type:(log_detection OR signal_correlation OR workload_security OR application_security) source:cloudtrail type: string + severity: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetSeverity' + tags: + description: List of tags associated with the critical asset. + example: + - team:database + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + required: + - query + - severity + - rule_query type: object - CsmServerlessCoverageAnalysisData: - description: CSM Serverless Resources Coverage Analysis data. + SecurityMonitoringCriticalAssetUpdateAttributes: + description: The critical asset properties to be updated. properties: - attributes: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 + description: + description: A description of the critical asset. + example: Production database servers handling PII type: string - type: - default: get_serverless_coverage_analysis_response_public_v0 - description: >- - The type of the resource. The value should always be - `get_serverless_coverage_analysis_response_public_v0`. - example: get_serverless_coverage_analysis_response_public_v0 + enabled: + description: Whether the critical asset is enabled. + example: true + type: boolean + query: + description: The query for the critical asset. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: security:monitoring type: string - type: object - ListFindingsData: - description: Array of findings. - items: - $ref: '#/components/schemas/Finding' - type: array - ListFindingsMeta: - additionalProperties: false - description: Metadata for pagination. - properties: - page: - $ref: '#/components/schemas/ListFindingsPage' - snapshot_timestamp: - description: The point in time corresponding to the listed findings. - example: 1678721573794 - format: int64 - minimum: 1 + rule_query: + description: The rule query of the critical asset, with the same syntax as the search bar for detection rules. This determines which rules this critical asset will apply to. + example: type:log_detection source:cloudtrail + type: string + severity: + $ref: '#/components/schemas/SecurityMonitoringCriticalAssetSeverity' + tags: + description: List of tags associated with the critical asset. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + version: + description: The version of the critical asset being updated. Used for optimistic locking to prevent concurrent modifications. + example: 1 + format: int32 + maximum: 2147483647 type: integer type: object - BulkMuteFindingsRequestData: - description: Data object containing the new bulk mute properties of the finding. + SecurityMonitoringIntegrationConfigAttributes: + description: The attributes of an entity context sync configuration as returned by the API. properties: - attributes: - $ref: '#/components/schemas/BulkMuteFindingsRequestAttributes' - id: - description: UUID to identify the request - example: dbe5f567-192b-4404-b908-29b70e1c9f76 + created_at: + description: The time at which the entity context sync configuration was created. + example: '2026-05-01T12:00:00Z' + format: date-time type: string - meta: - $ref: '#/components/schemas/BulkMuteFindingsRequestMeta' - type: - $ref: '#/components/schemas/FindingType' + domain: + description: The domain associated with the external entity source (for example, the customer's identity provider domain). + example: siem-test.com + type: string + enabled: + description: Whether the sync is enabled and actively ingesting entities into Cloud SIEM. + example: true + type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationType' + modified_at: + description: The time at which the entity context sync configuration was last modified. + example: '2026-05-01T12:00:00Z' + format: date-time + type: string + name: + description: The display name of the entity context sync configuration. + example: My GWS Integration + type: string + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + state: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigState' required: - - id - - type - - attributes - - meta + - enabled + - domain + - integration_type type: object - BulkMuteFindingsResponseData: - description: Data object containing the ID of the request that was updated. - properties: - id: - description: UUID used to identify the request - example: 93bfeb70-af47-424d-908a-948d3f08e37f + SecurityMonitoringIntegrationConfigResourceType: + default: integration_config + description: The type of the resource. The value should always be `integration_config`. + enum: + - integration_config + example: integration_config + type: string + x-enum-varnames: + - INTEGRATION_CONFIG + SecurityMonitoringIntegrationConfigCreateAttributes: + description: The attributes of the entity context sync configuration to create. + discriminator: + mapping: + CROWDSTRIKE: '#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationConfigCreateAttributes' + ENTRA_ID: '#/components/schemas/SecurityMonitoringEntraIdIntegrationConfigCreateAttributes' + GOOGLE_WORKSPACE: '#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationConfigCreateAttributes' + OKTA: '#/components/schemas/SecurityMonitoringOktaIntegrationConfigCreateAttributes' + SENTINELONE: '#/components/schemas/SecurityMonitoringSentinelOneIntegrationConfigCreateAttributes' + propertyName: integration_type + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace' + name: + description: The display name for the entity context sync configuration. + example: My GWS Integration type: string - type: - $ref: '#/components/schemas/FindingType' + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type + - domain + - name + - secrets type: object - JSONAPIErrorItem: - description: API error response body + SecurityMonitoringEntraIdAzureAppRegistrationsAttributes: + description: The attributes of the Entra ID Azure App Registration prerequisites. properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body + azure_app_registrations: + description: The Azure App Registrations discovered for the organization. + items: + $ref: '#/components/schemas/SecurityMonitoringAzureAppRegistration' + type: array + has_valid_prerequisite: + description: Whether at least one Azure App Registration has resource collection enabled. + example: true + type: boolean + integration_id: + description: The ID of the Entra ID integration configuration, if one exists. + example: 11111111-2222-3333-4444-555555555555 type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' + is_enabled: + description: Whether the Entra ID integration configuration is enabled, if one exists. + example: true + type: boolean + subscribed_at: + description: The time at which the Entra ID integration configuration was created, if one exists. + example: '2026-05-01T12:00:00Z' + format: date-time type: string - title: - description: Short human-readable summary of the error. - example: Bad Request + required: + - azure_app_registrations + - has_valid_prerequisite + type: object + SecurityMonitoringEntraIdAzureAppRegistrationsResourceType: + default: entra_id_azure_app_registrations + description: The type of the resource. The value should always be `entra_id_azure_app_registrations`. + enum: + - entra_id_azure_app_registrations + example: entra_id_azure_app_registrations + type: string + x-enum-varnames: + - ENTRA_ID_AZURE_APP_REGISTRATIONS + SecurityMonitoringIntegrationCredentialsValidateAttributes: + description: The credentials to validate against the external entity source. + discriminator: + mapping: + CROWDSTRIKE: '#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationCredentialsValidateAttributes' + ENTRA_ID: '#/components/schemas/SecurityMonitoringEntraIdIntegrationCredentialsValidateAttributes' + GOOGLE_WORKSPACE: '#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationCredentialsValidateAttributes' + OKTA: '#/components/schemas/SecurityMonitoringOktaIntegrationCredentialsValidateAttributes' + SENTINELONE: '#/components/schemas/SecurityMonitoringSentinelOneIntegrationCredentialsValidateAttributes' + propertyName: integration_type + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace' + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets' + required: + - integration_type + - domain + - secrets + type: object + SecurityMonitoringIntegrationConfigUpdateAttributes: + description: Fields to update on the entity context sync configuration. All fields other than the integration type are optional. + discriminator: + mapping: + CROWDSTRIKE: '#/components/schemas/SecurityMonitoringCrowdStrikeIntegrationConfigUpdateAttributes' + ENTRA_ID: '#/components/schemas/SecurityMonitoringEntraIdIntegrationConfigUpdateAttributes' + GOOGLE_WORKSPACE: '#/components/schemas/SecurityMonitoringGoogleWorkspaceIntegrationConfigUpdateAttributes' + OKTA: '#/components/schemas/SecurityMonitoringOktaIntegrationConfigUpdateAttributes' + SENTINELONE: '#/components/schemas/SecurityMonitoringSentinelOneIntegrationConfigUpdateAttributes' + propertyName: integration_type + properties: + domain: + description: The new domain associated with the external entity source. + example: siem-test.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace' + name: + description: The new display name for the entity context sync configuration. + example: My GWS Integration (renamed) type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type type: object - DetailedFinding: - description: A single finding with with message and resource configuration. + SecurityMonitoringIntegrationActivateAttributes: + description: Overrides applied when activating the integration. All fields are optional. properties: - attributes: - $ref: '#/components/schemas/DetailedFindingAttributes' - id: - $ref: '#/components/schemas/FindingID' - type: - $ref: '#/components/schemas/DetailedFindingType' + domain: + description: The domain associated with the external entity source. + example: default + type: string + name: + description: The display name for the entity context sync configuration. + example: My Entra ID Integration + type: string + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' type: object - Asset: - description: A single vulnerable asset + SecurityMonitoringIntegrationActivateResourceType: + default: activate_entra_id_request + description: The type of the resource. The value should always be `activate_entra_id_request`. + enum: + - activate_entra_id_request + example: activate_entra_id_request + type: string + x-enum-varnames: + - ACTIVATE_ENTRA_ID_REQUEST + NotificationRulePreviewResponseAttributes: + description: Attributes of the notification preview response. properties: - attributes: - $ref: '#/components/schemas/AssetAttributes' - id: - description: The unique ID for this asset. - example: Repository|github.com/DataDog/datadog-agent.git - type: string - type: - $ref: '#/components/schemas/AssetEntityType' + preview_results: + $ref: '#/components/schemas/NotificationRulePreviewResults' required: - - id - - type - - attributes + - preview_results type: object - Links: - description: The JSON:API links related to pagination. + NotificationRulePreviewResponseType: + description: The type of the notification preview response. + enum: + - notification_preview_response + example: notification_preview_response + type: string + x-enum-varnames: + - NOTIFICATION_PREVIEW_RESPONSE + SecurityFilterAttributes: + description: The object describing a security filter. properties: - first: - description: First page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=1&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - last: - description: Last page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=15&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + exclusion_filters: + description: The list of exclusion filters applied in this security filter. + items: + $ref: '#/components/schemas/SecurityFilterExclusionFilterResponse' + type: array + filtered_data_type: + $ref: '#/components/schemas/SecurityFilterFilteredDataType' + is_builtin: + description: Whether the security filter is the built-in filter. + example: false + type: boolean + is_enabled: + description: Whether the security filter is enabled. + example: false + type: boolean + name: + description: The security filter name. + example: Custom security filter type: string - next: - description: Next page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=16&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + query: + description: The security filter query. Logs accepted by this query will be accepted by this filter. + example: service:api type: string - previous: - description: Previous page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=14&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 + version: + description: The version of the security filter. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + type: object + SecurityFilterID: + description: The ID of the security filter. + example: 3dd-0uc-h1s + type: string + SecurityFilterType: + default: security_filters + description: The type of the resource. The value should always be `security_filters`. + enum: + - security_filters + example: security_filters + type: string + x-enum-varnames: + - SECURITY_FILTERS + SecurityFilterCreateAttributes: + description: Object containing the attributes of the security filter to be created. + properties: + exclusion_filters: + description: Exclusion filters to exclude some logs from the security filter. + example: + - name: Exclude staging + query: source:staging + items: + $ref: '#/components/schemas/SecurityFilterExclusionFilter' + type: array + filtered_data_type: + $ref: '#/components/schemas/SecurityFilterFilteredDataType' + is_enabled: + description: Whether the security filter is enabled. + example: true + type: boolean + name: + description: The name of the security filter. + example: Custom security filter type: string - self: - description: Request link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?filter%5Btool%5D=Infra + query: + description: The query of the security filter. + example: service:api type: string required: - - self - - first - - last + - name + - query + - exclusion_filters + - filtered_data_type + - is_enabled type: object - Metadata: - description: The metadata related to this request. + SecurityFilterVersionAttributes: + description: The attributes describing a single security filter configuration version. properties: - count: - description: Number of entities included in the response. - example: 150 + date: + description: The Unix timestamp in milliseconds at which this configuration version was applied. + example: 1758177253469 format: int64 type: integer - token: - description: The token that identifies the request. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - total: - description: Total number of entities across all pages. - example: 152431 - format: int64 + filters: + description: The set of security filters at this configuration version. + items: + $ref: '#/components/schemas/SecurityFilterVersionEntry' + type: array + version: + description: The configuration version number. + example: 1 + format: int32 + maximum: 2147483647 type: integer required: - - count - - total - - token + - version + - date + - filters type: object - SBOM: - description: A single SBOM + SecurityFilterVersionType: + default: security_filters_configuration + description: The type of the resource. The value should always be `security_filters_configuration`. + enum: + - security_filters_configuration + example: security_filters_configuration + type: string + x-enum-varnames: + - SECURITY_FILTERS_CONFIGURATION + SecurityFilterUpdateAttributes: + description: The security filters properties to be updated. properties: - attributes: - $ref: '#/components/schemas/SBOMAttributes' - id: - description: >- - The unique ID for this SBOM (it is equivalent to the `asset_name` or - `asset_name@repo_digest` (Image) - example: github.com/datadog/datadog-agent + exclusion_filters: + description: Exclusion filters to exclude some logs from the security filter. + example: [] + items: + $ref: '#/components/schemas/SecurityFilterExclusionFilter' + type: array + filtered_data_type: + $ref: '#/components/schemas/SecurityFilterFilteredDataType' + is_enabled: + description: Whether the security filter is enabled. + example: true + type: boolean + name: + description: The name of the security filter. + example: Custom security filter type: string - type: - $ref: '#/components/schemas/SBOMType' - type: object - NotificationRule: - description: > - Notification rules allow full control over notifications generated by - the various Datadog security products. - - They allow users to define the conditions under which a notification - should be generated (based on rule severities, - - rule types, rule tags, and so on), and the targets to notify. - - A notification rule is composed of a rule ID, a rule type, and the rule - attributes. All fields are required. - properties: - attributes: - $ref: '#/components/schemas/NotificationRuleAttributes' - id: - $ref: '#/components/schemas/ID' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - id - - type - type: object - CreateNotificationRuleParametersData: - description: >- - Data of the notification rule create request: the rule type, and the - rule attributes. All fields are required. - properties: - attributes: - $ref: '#/components/schemas/CreateNotificationRuleParametersDataAttributes' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - type - type: object - PatchNotificationRuleParametersData: - description: >- - Data of the notification rule patch request: the rule ID, the rule type, - and the rule attributes. All fields are required. - properties: - attributes: - $ref: '#/components/schemas/PatchNotificationRuleParametersDataAttributes' - id: - $ref: '#/components/schemas/ID' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - id - - type - type: object - Vulnerability: - description: A single vulnerability - properties: - attributes: - $ref: '#/components/schemas/VulnerabilityAttributes' - id: - description: The unique ID for this vulnerability. - example: 3ecdfea798f2ce8f6e964805a344945f + query: + description: The query of the security filter. + example: service:api type: string - relationships: - $ref: '#/components/schemas/VulnerabilityRelationships' - type: - $ref: '#/components/schemas/VulnerabilitiesType' - required: - - id - - type - - attributes - - relationships + version: + description: The version of the security filter to update. + example: 1 + format: int32 + maximum: 2147483647 + type: integer type: object - CloudWorkloadSecurityAgentRuleData: - description: Object for a single Agent rule + SecurityMonitoringSuppressionAttributes: + description: The attributes of the suppression rule. properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAttributes' - id: - description: The ID of the Agent rule - example: 3dd-0uc-h1s + creation_date: + description: A Unix millisecond timestamp given the creation date of the suppression rule. + format: int64 + type: integer + creator: + $ref: '#/components/schemas/SecurityMonitoringUser' + data_exclusion_query: + description: An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule. + example: source:cloudtrail account_id:12345 type: string - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - type: object - CloudWorkloadSecurityAgentRuleCreateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentRuleUpdateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes' - id: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleID' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type + description: + description: A description for the suppression rule. + example: This rule suppresses low-severity signals in staging environments. + type: string + editable: + description: Whether the suppression rule is editable. + example: true + type: boolean + enabled: + description: Whether the suppression rule is enabled. + example: true + type: boolean + expiration_date: + description: A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore. + example: 1703187336000 + format: int64 + type: integer + name: + description: The name of the suppression rule. + example: Custom suppression + type: string + rule_query: + description: The rule query of the suppression rule, with the same syntax as the search bar for detection rules. + example: type:log_detection source:cloudtrail + type: string + start_date: + description: A Unix millisecond timestamp giving the start date for the suppression rule. After this date, it starts suppressing signals. + example: 1703187336000 + format: int64 + type: integer + suppression_query: + description: The suppression query of the suppression rule. If a signal matches this query, it is suppressed and not triggered. Same syntax as the queries to search signals in the signal explorer. + example: env:staging status:low + type: string + tags: + description: List of tags associated with the suppression rule. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array + update_date: + description: A Unix millisecond timestamp given the update date of the suppression rule. + format: int64 + type: integer + updater: + $ref: '#/components/schemas/SecurityMonitoringUser' + version: + description: The version of the suppression rule; it starts at 1, and is incremented at each update. + example: 42 + format: int32 + maximum: 2147483647 + type: integer type: object - SecurityFilter: - description: The security filter's properties. + SecurityMonitoringSuppressionID: + description: The ID of the suppression rule. + example: 3dd-0uc-h1s + type: string + SecurityMonitoringSuppressionType: + default: suppressions + description: The type of the resource. The value should always be `suppressions`. + enum: + - suppressions + example: suppressions + type: string + x-enum-varnames: + - SUPPRESSIONS + SecurityMonitoringSuppressionsPageMeta: + description: Pagination metadata. properties: - attributes: - $ref: '#/components/schemas/SecurityFilterAttributes' - id: - $ref: '#/components/schemas/SecurityFilterID' - type: - $ref: '#/components/schemas/SecurityFilterType' + pageNumber: + description: Current page number. + example: 0 + format: int64 + type: integer + pageSize: + description: Current page size. + example: 2 + format: int64 + type: integer + totalCount: + description: Total count of suppressions. + example: 2 + format: int64 + type: integer type: object - SecurityFilterMeta: - description: Optional metadata associated to the response. + SecurityMonitoringSuppressionCreateAttributes: + description: Object containing the attributes of the suppression rule to be created. properties: - warning: - description: A warning message. - example: >- - All the security filters are disabled. As a result, no logs are - being analyzed. + data_exclusion_query: + description: An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule. + example: source:cloudtrail account_id:12345 type: string - type: object - SecurityFilterCreateData: - description: Object for a single security filter. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterCreateAttributes' - type: - $ref: '#/components/schemas/SecurityFilterType' + description: + description: A description for the suppression rule. + example: This rule suppresses low-severity signals in staging environments. + type: string + enabled: + description: Whether the suppression rule is enabled. + example: true + type: boolean + expiration_date: + description: A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore. + example: 1703187336000 + format: int64 + type: integer + name: + description: The name of the suppression rule. + example: Custom suppression + type: string + rule_query: + description: The rule query of the suppression rule, with the same syntax as the search bar for detection rules. + example: type:log_detection source:cloudtrail + type: string + start_date: + description: A Unix millisecond timestamp giving the start date for the suppression rule. After this date, it starts suppressing signals. + example: 1703187336000 + format: int64 + type: integer + suppression_query: + description: The suppression query of the suppression rule. If a signal matches this query, it is suppressed and is not triggered. It uses the same syntax as the queries to search signals in the Signals Explorer. + example: env:staging status:low + type: string + tags: + description: List of tags associated with the suppression rule. + example: + - technique:T1110-brute-force + - source:cloudtrail + items: + description: A tag string in `key:value` format. + type: string + type: array required: - - type - - attributes + - name + - enabled + - rule_query type: object - SecurityFilterUpdateData: - description: The new security filter properties. + SecurityMonitoringRuleCaseCreate: + description: Case when signal is generated. properties: - attributes: - $ref: '#/components/schemas/SecurityFilterUpdateAttributes' - type: - $ref: '#/components/schemas/SecurityFilterType' + actions: + description: Action to perform for each rule case. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' + type: array + condition: + description: |- + A case contains logical operations (`>`,`>=`, `&&`, `||`) to determine if a signal should be generated + based on the event counts in the previously defined queries. + type: string + name: + description: Name of the case. + type: string + notifications: + description: Notification targets. + items: + description: Notification. + type: string + type: array + status: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' required: - - type - - attributes + - status type: object - SecurityMonitoringSuppression: - description: The suppression rule's properties. + SecurityMonitoringStandardRuleQuery: + description: Query for matching rule. properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionAttributes' - id: - $ref: '#/components/schemas/SecurityMonitoringSuppressionID' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' + aggregation: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' + customQueryExtension: + description: Query extension to append to the logs query. + example: a > 3 + type: string + dataSource: + $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' + distinctFields: + description: Field for which the cardinality is measured. Sent as an array. + items: + description: Field. + type: string + type: array + groupByFields: + description: Fields to group by. + items: + description: Field. + type: string + type: array + hasOptionalGroupByFields: + default: false + description: When false, events without a group-by value are ignored by the rule. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values. + example: false + type: boolean + index: + description: |- + **This field is currently unstable and might be removed in a minor version upgrade.** + The index to run the query on, if the `dataSource` is `logs`. Only used for scheduled rules - in other words, when the `schedulingOptions` field is present in the rule payload. + type: string + indexes: + description: List of indexes to query when the `dataSource` is `logs`. Only used for scheduled rules, such as when the `schedulingOptions` field is present in the rule payload. + items: + description: Index. + type: string + type: array + metric: + deprecated: true + description: |- + (Deprecated) The target field to aggregate over when using the sum or max + aggregations. `metrics` field should be used instead. + type: string + metrics: + description: Group of target fields to aggregate over when using the sum, max, geo data, or new value aggregations. The sum, max, and geo data aggregations only accept one value in this list, whereas the new value aggregation accepts up to five values. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + query: + description: Query to run on logs. + example: a > 3 + type: string type: object - SecurityMonitoringSuppressionCreateData: - description: Object for a single suppression rule. + SecurityMonitoringThirdPartyRuleCaseCreate: + description: Case when a signal is generated by a third party rule. properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateAttributes' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' + name: + description: Name of the case. + type: string + notifications: + description: Notification targets for each case. + items: + description: Notification. + type: string + type: array + query: + description: A query to map a third party event to this case. + type: string + status: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' required: - - type - - attributes + - status type: object - SecurityMonitoringStandardRuleCreatePayload: - description: Create a new rule. + SecurityMonitoringRuleTypeCreate: + description: The rule type. + enum: + - api_security + - application_security + - log_detection + - workload_activity + - workload_security + type: string + x-enum-varnames: + - API_SECURITY + - APPLICATION_SECURITY + - LOG_DETECTION + - WORKLOAD_ACTIVITY + - WORKLOAD_SECURITY + SecurityMonitoringSignalRuleQuery: + description: Query for matching rule on signals. properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] + aggregation: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' + correlatedByFields: + description: Fields to group by. items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + description: Field. + type: string type: array - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. + correlatedQueryIndex: + description: Index of the rule query used to retrieve the correlated field. + format: int32 + maximum: 9 + type: integer + metrics: + description: Group of target fields to aggregate over. items: - $ref: '#/components/schemas/SecurityMonitoringFilter' + description: Field. + type: string type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service + name: + description: Name of the query. + type: string + ruleId: + description: Rule ID to match on signals. + example: org-ru1-e1d + type: string + required: + - ruleId + type: object + SecurityMonitoringSignalRuleType: + description: The rule type. + enum: + - signal_correlation + type: string + x-enum-varnames: + - SIGNAL_CORRELATION + CloudConfigurationRuleCaseCreate: + description: Description of signals. + properties: + notifications: + description: Notification targets for each rule case. items: - description: Field to group by. + description: Notification. type: string type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. + status: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + required: + - status + type: object + CloudConfigurationRuleOptions: + description: Options on cloud configuration rules. + properties: + complianceRuleOptions: + $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' + required: + - complianceRuleOptions + type: object + CloudConfigurationRuleType: + description: The rule type. + enum: + - cloud_configuration + type: string + x-enum-varnames: + - CLOUD_CONFIGURATION + SecurityMonitoringSuppressionUpdateAttributes: + description: The suppression rule properties to be updated. + properties: + data_exclusion_query: + description: An exclusion query on the input data of the security rules, which could be logs, Agent events, or other types of data based on the security rule. Events matching this query are ignored by any detection rules referenced in the suppression rule. + example: source:cloudtrail account_id:12345 + type: string + description: + description: A description for the suppression rule. + example: This rule suppresses low-severity signals in staging environments. + type: string + enabled: + description: Whether the suppression rule is enabled. example: true type: boolean - message: - description: Message for generated signals. - example: '' - type: string + expiration_date: + description: A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore. If unset, the expiration date of the suppression rule is left untouched. If set to `null`, the expiration date is removed. + example: 1703187336000 + format: int64 + nullable: true + type: integer name: - description: The name of the rule. - example: My security monitoring rule. + description: The name of the suppression rule. + example: Custom suppression + type: string + rule_query: + description: The rule query of the suppression rule, with the same syntax as the search bar for detection rules. + example: type:log_detection source:cloudtrail + type: string + start_date: + description: A Unix millisecond timestamp giving the start date for the suppression rule. After this date, it starts suppressing signals. If unset, the start date of the suppression rule is left untouched. If set to `null`, the start date is removed. + example: 1703187336000 + format: int64 + nullable: true + type: integer + suppression_query: + description: The suppression query of the suppression rule. If a signal matches this query, it is suppressed and not triggered. Same syntax as the queries to search signals in the signal explorer. + example: env:staging status:low type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' tags: - description: Tags for generated signals. + description: List of tags associated with the suppression rule. example: - - env:prod - - team:security + - technique:T1110-brute-force + - source:cloudtrail items: - description: Tag. + description: A tag string in `key:value` format. type: string type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' + version: + description: The current version of the suppression. This is optional, but it can help prevent concurrent modifications. + format: int32 + maximum: 2147483647 + type: integer + type: object + SuppressionVersionHistory: + description: Response object containing the version history of a suppression. + properties: + count: + description: The number of suppression versions. + format: int32 + maximum: 2147483647 + type: integer + data: + additionalProperties: + $ref: '#/components/schemas/SuppressionVersions' + description: A suppression version with a list of updates. + description: The version history of a suppression. + type: object + type: object + GetSuppressionVersionHistoryDataType: + description: Type of data. + enum: + - suppression_version_history + type: string + x-enum-varnames: + - SUPPRESSIONVERSIONHISTORY + SecurityMonitoringContentPackStateAttributes: + description: Attributes of a content pack state. + properties: + details: + $ref: '#/components/schemas/SecurityMonitoringContentPackStateDetails' + status: + $ref: '#/components/schemas/SecurityMonitoringContentPackStatus' required: - - name - - isEnabled - - queries - - options - - cases - - message + - status + - details type: object - SecurityMonitoringSignalRuleCreatePayload: - description: Create a new signal correlation rule. + SecurityMonitoringContentPackStateType: + description: Type for content pack state object + enum: + - content_pack_state + example: content_pack_state + type: string + x-enum-varnames: + - CONTENT_PACK_STATE + SecurityMonitoringSKU: + description: The Cloud SIEM pricing model (SKU) for the organization. + enum: + - per_gb_analyzed + - per_event_in_siem_index_2023 + - add_on_2024 + - standalone_indexed + - unknown + example: add_on_2024 + type: string + x-enum-varnames: + - PER_GB_ANALYZED + - PER_EVENT_IN_SIEM_INDEX_2023 + - ADD_ON_2024 + - STANDALONE_INDEXED + - UNKNOWN + SecurityMonitoringDatasetAttributesRequest: + description: The attributes of a dataset create or update request. properties: - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. + definition: + $ref: '#/components/schemas/SecurityMonitoringDatasetDefinition' + description: + description: The description of the dataset. Maximum 255 characters. + example: A sample dataset used for detection rules. type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting signals which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - type: array - tags: - description: Tags for generated signals. + version: + description: |- + The expected current version of the dataset for optimistic concurrency control on updates. + If the dataset's current version does not match, the request is rejected with a 409 Conflict. + example: 1 + format: int64 + type: integer + required: + - definition + type: object + SecurityMonitoringDatasetCreateType: + description: The type of resource for a dataset create request. + enum: + - datasetCreate + example: datasetCreate + type: string + x-enum-varnames: + - DATASET_CREATE + SecurityMonitoringDatasetType: + description: The type of resource for a dataset response. + enum: + - dataset + example: dataset + type: string + x-enum-varnames: + - DATASET + SecurityMonitoringDatasetDependenciesRequestAttributes: + description: The attributes of a dataset dependencies request. + properties: + datasetIds: + description: The list of dataset UUIDs to query dependencies for. Must contain between 1 and 100 items. example: - - env:prod - - team:security + - 123e4567-e89b-12d3-a456-426614174000 items: - description: Tag. type: string type: array + required: + - datasetIds + type: object + SecurityMonitoringDatasetDependentsData: + description: A single entry describing the dependents of one dataset. + properties: + attributes: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependentsAttributes' + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' + $ref: '#/components/schemas/SecurityMonitoringDatasetDependentsType' required: - - name - - isEnabled - - queries - - options - - cases - - message + - id + - type + - attributes type: object - CloudConfigurationRuleCreatePayload: - description: Create a new cloud configuration rule. + SecurityMonitoringDatasetAttributesResponse: + description: The attributes of a Cloud SIEM dataset. properties: - cases: - description: > - Description of generated findings and signals (severity and channels - to be notified in case of a signal). Must contain exactly one item. - items: - $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - filters: - description: >- - Additional queries to filter matched events before they are - processed. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - isEnabled: - description: Whether the rule is enabled. - example: true + createdAt: + description: The creation timestamp of the dataset, in ISO 8601 format. + example: '2025-03-20T10:00:00Z' + type: string + createdByHandle: + description: The Datadog handle of the user who created the dataset. + example: bruce.lee + type: string + createdByName: + description: The display name of the user who created the dataset. + example: Bruce Lee + type: string + definition: + $ref: '#/components/schemas/SecurityMonitoringDatasetDefinition' + description: + description: The description of the dataset. + example: A sample dataset used for detection rules. + type: string + id: + description: The UUID of the dataset. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + isDefault: + description: Whether the dataset is an out-of-the-box dataset provided by Datadog. + example: false type: boolean - message: - description: Message in markdown format for generated findings and signals. - example: | - #Description - Explanation of the rule. - - #Remediation - How to fix the security issue. + isDeprecated: + description: Whether the dataset is marked as deprecated. + example: false + type: boolean + modifiedAt: + description: The timestamp of the last modification of the dataset, in ISO 8601 format. + example: '2025-03-20T10:00:00Z' type: string name: - description: The name of the rule. - example: My security monitoring rule. + description: The unique name of the dataset. + example: sample_dataset type: string - options: - $ref: '#/components/schemas/CloudConfigurationRuleOptions' - tags: - description: Tags for generated findings and signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/CloudConfigurationRuleType' + updatedByHandle: + description: The Datadog handle of the user who last updated the dataset. + example: bruce.lee + nullable: true + type: string + updatedByName: + description: The display name of the user who last updated the dataset. + example: Bruce Lee + nullable: true + type: string + version: + description: The current version of the dataset. + example: 1 + format: int64 + type: integer required: + - id - name - - isEnabled - - options - - complianceSignalOptions - - cases - - message + - description + - version + - definition + - createdAt + - createdByHandle + - createdByName + - modifiedAt + - updatedByHandle + - updatedByName + - isDefault + - isDeprecated + type: object + SecurityMonitoringDatasetUpdateType: + description: The type of resource for a dataset update request. + enum: + - datasetUpdate + example: datasetUpdate + type: string + x-enum-varnames: + - DATASET_UPDATE + SecurityMonitoringDatasetVersionHistoryAttributes: + description: The attributes of a dataset version history response. + properties: + count: + description: The total number of versions available for this dataset. + example: 1 + format: int64 + type: integer + data: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionHistoryEntries' + required: + - data + - count type: object - SecurityMonitoringSuppressionUpdateData: - description: The new suppression properties; partial updates are supported. + SecurityMonitoringDatasetVersionHistoryType: + description: The type of resource for a dataset version history response. + enum: + - dataset_version_history + example: dataset_version_history + type: string + x-enum-varnames: + - DATASET_VERSION_HISTORY + EntityContextEntityAttributes: + description: The attributes of an entity context entry, grouping all the historical revisions of the entity. properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateAttributes' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' + revisions: + description: The historical revisions of the entity, ordered chronologically. + items: + $ref: '#/components/schemas/EntityContextRevision' + type: array required: - - type - - attributes + - revisions type: object - ResponseMetaAttributes: - description: Object describing meta attributes of response. + SecurityMonitoringEntityContextEntityType: + default: entity + description: |- + The type of the entity. Reflects the underlying entity kind from the entity context store + (for example, `siem_entity_identity` for identities). Defaults to `entity` when the kind is unknown. + example: siem_entity_identity + type: string + EntityContextPage: + description: Pagination metadata for the entity context response. properties: - page: - $ref: '#/components/schemas/Pagination' + next_token: + description: An opaque token to pass as `page_token` in a subsequent request to retrieve the next page of results. Empty when there are no more results. + example: '' + type: string + required: + - next_token type: object - SecurityMonitoringStandardRuleResponse: - description: Rule. + Pagination: + description: Pagination object. properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - createdAt: - description: When the rule was created, timestamp in milliseconds. + total_count: + description: Total count. format: int64 type: integer - creationAuthorId: - description: User ID of the user who created the rule. + total_filtered_count: + description: Total count of elements matched by the filter. format: int64 type: integer - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - defaultTags: - description: Default Tags for default rules (included in tags) - example: - - security:attacks + type: object + SecurityMonitoringRuleTypeRead: + description: The rule type. + enum: + - log_detection + - infrastructure_configuration + - workload_security + - cloud_configuration + - application_security + - api_security + - workload_activity + type: string + x-enum-varnames: + - LOG_DETECTION + - INFRASTRUCTURE_CONFIGURATION + - WORKLOAD_SECURITY + - CLOUD_CONFIGURATION + - APPLICATION_SECURITY + - API_SECURITY + - WORKLOAD_ACTIVITY + SecurityMonitoringSignalRuleResponseQuery: + description: Query for matching rule on signals. + properties: + aggregation: + $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' + correlatedByFields: + description: Fields to correlate by. items: - description: Default Tag. + description: Field. type: string type: array - deprecationDate: - description: When the rule will be deprecated, timestamp in milliseconds. - format: int64 + correlatedQueryIndex: + description: Index of the rule query used to retrieve the correlated field. + format: int32 + maximum: 9 type: integer - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - type: boolean - id: - description: The ID of the rule. - type: string - isDefault: - description: Whether the rule is included by default. - type: boolean - isDeleted: - description: Whether the rule has been deleted. - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: The name of the rule. + defaultRuleId: + description: Default Rule ID to match on signals. + example: d3f-ru1-e1d type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. + distinctFields: + description: Field for which the cardinality is measured. Sent as an array. items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' + description: Field. + type: string type: array - referenceTables: - description: Reference tables for the rule. + groupByFields: + description: Fields to group by. items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' + description: Field. + type: string type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. + metrics: + description: Group of target fields to aggregate over. items: - description: Tag. + description: Field. type: string type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] + name: + description: Name of the query. + type: string + ruleId: + description: Rule ID to match on signals. + example: org-ru1-e1d + type: string + type: object + SecurityMonitoringRuleBulkDeleteAttributes: + description: Attributes for bulk deleting security monitoring rules. + properties: + ruleIds: + description: List of rule IDs to delete. + example: + - abc-000-u7q + - abc-000-7dd items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' + description: A rule ID to delete. + type: string + minItems: 1 type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeRead' - updateAuthorId: - description: User ID of the user who updated the rule. - format: int64 - type: integer - updatedAt: - description: The date the rule was last updated, in milliseconds. - format: int64 - type: integer - version: - description: The version of the rule. - format: int64 - type: integer + required: + - ruleIds type: object - SecurityMonitoringSignalRuleResponse: - description: Rule. + SecurityMonitoringRuleBulkDeleteRequestDataType: + description: The resource type for a bulk delete request. + enum: + - bulk_delete_rules + example: bulk_delete_rules + type: string + x-enum-varnames: + - BULK_DELETE_RULES + SecurityMonitoringRuleBulkDeleteResponseAttributes: + description: Attributes for the bulk delete response. properties: - cases: - description: Cases for generating signals. + deletedRules: + description: List of successfully deleted rule IDs. items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' + type: string type: array - createdAt: - description: When the rule was created, timestamp in milliseconds. - format: int64 - type: integer - creationAuthorId: - description: User ID of the user who created the rule. - format: int64 - type: integer - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - deprecationDate: - description: When the rule will be deprecated, timestamp in milliseconds. - format: int64 - type: integer - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. + failedRules: + description: List of rule IDs that could not be deleted. items: - $ref: '#/components/schemas/SecurityMonitoringFilter' + type: string type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - type: boolean - id: - description: The ID of the rule. - type: string - isDefault: - description: Whether the rule is included by default. - type: boolean - isDeleted: - description: Whether the rule has been deleted. - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: The name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. + type: object + SecurityMonitoringRuleBulkDeleteResponseDataType: + description: The resource type for a bulk delete response. + enum: + - bulk_delete_response + example: bulk_delete_response + type: string + x-enum-varnames: + - BULK_DELETE_RESPONSE + SecurityMonitoringRuleBulkExportAttributes: + description: Attributes for bulk exporting security monitoring rules. + properties: + ruleIds: + description: |- + List of rule IDs to export. Each rule will be included in the resulting ZIP file + as a separate JSON file. + example: + - def-000-u7q + - def-000-7dd items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponseQuery' + description: A rule ID to include in the bulk export. + type: string + minItems: 1 type: array - tags: - description: Tags for generated signals. + required: + - ruleIds + type: object + SecurityMonitoringRuleBulkExportDataType: + description: The type of the resource. + enum: + - security_monitoring_rules_bulk_export + example: security_monitoring_rules_bulk_export + type: string + x-enum-varnames: + - SECURITY_MONITORING_RULES_BULK_EXPORT + SecurityMonitoringRuleConvertBulkAttributes: + description: Attributes for bulk converting security monitoring rules to Terraform. + properties: + ruleIds: + description: |- + List of rule IDs to convert. Each rule will be included in the resulting ZIP file + as a separate Terraform file. + example: + - def-000-u7q + - def-000-7dd items: - description: Tag. + description: A rule ID to include in the bulk convert. type: string + minItems: 1 type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - updateAuthorId: - description: User ID of the user who updated the rule. - format: int64 - type: integer - version: - description: The version of the rule. - format: int64 - type: integer + required: + - ruleIds type: object - SecurityMonitoringStandardRulePayload: - description: The payload of a rule. + SecurityMonitoringRuleConvertBulkDataType: + description: The type of the resource. + enum: + - security_monitoring_rules_convert_bulk + example: security_monitoring_rules_convert_bulk + type: string + x-enum-varnames: + - SECURITY_MONITORING_RULES_CONVERT_BULK + SecurityMonitoringStandardRuleTestPayload: + description: The payload of a rule to test properties: calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. + description: Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. items: $ref: '#/components/schemas/CalculatedField' type: array @@ -6346,28 +27669,13 @@ components: items: $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' type: array - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. + description: Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. items: $ref: '#/components/schemas/SecurityMonitoringFilter' type: array groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. example: - service items: @@ -6375,9 +27683,7 @@ components: type: string type: array hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. + description: Whether the notifications include the triggering group-by values in their title. example: true type: boolean isEnabled: @@ -6410,633 +27716,707 @@ components: tags: description: Tags for generated signals. example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringSignalRulePayload: - description: The payload of a signal correlation rule. - properties: - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting signals which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - type: array - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringRuleTestPayload: - description: Test a rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleTestPayload' - SecurityMonitoringRuleQueryPayload: - description: Payload to test a rule query with the expected result. - properties: - expectedResult: - description: Expected result of the test. - example: true - type: boolean - index: - description: Index of the query under test. - example: 0 - format: int64 - minimum: 0 - type: integer - payload: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayloadData' - type: object - CloudConfigurationRulePayload: - description: The payload of a cloud configuration rule. - properties: - cases: - description: > - Description of generated findings and signals (severity and channels - to be notified in case of a signal). Must contain exactly one item. - items: - $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message in markdown format for generated findings and signals. - example: | - #Description - Explanation of the rule. - - #Remediation - How to fix the security issue. - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/CloudConfigurationRuleOptions' - tags: - description: Tags for generated findings and signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/CloudConfigurationRuleType' - required: - - name - - isEnabled - - options - - complianceSignalOptions - - cases - - message - type: object - CalculatedField: - description: Calculated field. - properties: - expression: - description: Expression. - example: '@request_end_timestamp - @request_start_timestamp' - type: string - name: - description: Field name. - example: response_time - type: string - required: - - name - - expression - type: object - SecurityMonitoringRuleCase: - description: Case when signal is generated. - properties: - actions: - description: Action to perform for each rule case. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' - type: array - condition: - description: >- - A rule case contains logical operations (`>`,`>=`, `&&`, `||`) to - determine if a signal should be generated - - based on the event counts in the previously defined queries. - type: string - customStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - type: object - CloudConfigurationRuleComplianceSignalOptions: - description: >- - How to generate compliance signals. Useful for cloud_configuration rules - only. - properties: - defaultActivationStatus: - description: The default activation status. - nullable: true - type: boolean - defaultGroupByFields: - description: The default group by fields. - items: - type: string - nullable: true - type: array - userActivationStatus: - description: Whether signals will be sent. - nullable: true - type: boolean - userGroupByFields: - description: Fields to use to group findings by when sending signals. - items: - type: string - nullable: true - type: array - type: object - SecurityMonitoringFilter: - description: The rule's suppression filter. - properties: - action: - $ref: '#/components/schemas/SecurityMonitoringFilterAction' - query: - description: Query for selecting logs to apply the filtering action. - type: string - type: object - SecurityMonitoringRuleOptions: - description: Options. - properties: - complianceRuleOptions: - $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' - decreaseCriticalityBasedOnEnv: - $ref: >- - #/components/schemas/SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv - detectionMethod: - $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' - evaluationWindow: - $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' - hardcodedEvaluatorType: - $ref: '#/components/schemas/SecurityMonitoringRuleHardcodedEvaluatorType' - impossibleTravelOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions' - keepAlive: - $ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive' - maxSignalDuration: - $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' - newValueOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' - thirdPartyRuleOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' + - env:prod + - team:security + items: + description: Tag. + type: string + type: array + thirdPartyCases: + description: Cases for generating signals from third-party rules. Only available for third-party rules. + example: [] + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + type: array + type: + $ref: '#/components/schemas/SecurityMonitoringRuleTypeTest' + required: + - name + - isEnabled + - queries + - options + - cases + - message type: object - SecurityMonitoringRuleQuery: - description: Query for matching rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - SecurityMonitoringReferenceTable: - description: Reference tables used in the queries. + SecurityMonitoringRuleQueryPayloadData: + additionalProperties: {} + description: Payload used to test the rule query. properties: - checkPresence: - description: Whether to include or exclude the matched values. - type: boolean - columnName: - description: The name of the column in the reference table. + ddsource: + description: Source of the payload. + example: nginx type: string - logFieldPath: - description: The field in the log to match against the reference table. + ddtags: + description: Tags associated with your data. + example: env:staging,version:5.1 type: string - ruleQueryName: - description: The name of the query to apply the reference table to. + hostname: + description: The name of the originating host of the log. + example: i-012345678 type: string - tableName: - description: The name of the reference table. + message: + description: The message of the payload. + example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: string + service: + description: The name of the application or service generating the data. + example: payment type: string type: object - SecurityMonitoringSchedulingOptions: - description: >- - Options for scheduled rules. When this field is present, the rule runs - based on the schedule. When absent, it runs real-time on ingested logs. - nullable: true + SecurityMonitoringRuleCaseAction: + description: Action to perform when a signal is triggered. Only available for Application Security rule type. properties: - rrule: - description: >- - Schedule for the rule queries, written in RRULE syntax. See - [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) - for syntax reference. - example: FREQ=HOURLY;INTERVAL=1; - type: string - start: - description: Start date for the schedule, in ISO 8601 format without timezone. - example: '2025-07-14T12:00:00' - type: string - timezone: - description: >- - Time zone of the start date, in the [tz - database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) - format. - example: America/New_York + options: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptions' + type: + $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionType' + type: object + SecurityMonitoringRuleSeverity: + description: Severity of the Security Signal. + enum: + - info + - low + - medium + - high + - critical + example: critical + type: string + x-enum-varnames: + - INFO + - LOW + - MEDIUM + - HIGH + - CRITICAL + SecurityMonitoringFilterAction: + description: The type of filtering action. + enum: + - require + - suppress + type: string + x-enum-varnames: + - REQUIRE + - SUPPRESS + SecurityMonitoringRuleAnomalyDetectionOptions: + additionalProperties: {} + description: Options on anomaly detection method. + properties: + bucketDuration: + $ref: '#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptionsBucketDuration' + detectionTolerance: + $ref: '#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptionsDetectionTolerance' + instantaneousBaseline: + $ref: '#/components/schemas/SecurityMonitoringRuleInstantaneousBaseline' + learningDuration: + $ref: '#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptionsLearningDuration' + learningPeriodBaseline: + description: An optional override baseline to apply while the rule is in the learning period. Must be greater than or equal to 0. + format: int64 + minimum: 0 + type: integer + type: object + CloudConfigurationComplianceRuleOptions: + additionalProperties: {} + description: |- + Options for cloud_configuration rules. + Fields `resourceType` and `regoRule` are mandatory when managing custom `cloud_configuration` rules. + properties: + complexRule: + description: |- + Whether the rule is a complex one. + Must be set to true if `regoRule.resourceTypes` contains more than one item. Defaults to false. + type: boolean + regoRule: + $ref: '#/components/schemas/CloudConfigurationRegoRule' + resourceType: + description: Main resource type to be checked by the rule. It should be specified again in `regoRule.resourceTypes`. + example: aws_acm type: string type: object - SecurityMonitoringThirdPartyRuleCase: - description: Case when signal is generated by a third party rule. + SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv: + description: |- + If true, signals in non-production environments have a lower severity than what is defined by the rule case, which can reduce signal noise. + The severity is decreased by one level: `CRITICAL` in production becomes `HIGH` in non-production, `HIGH` becomes `MEDIUM` and so on. `INFO` remains `INFO`. + The decrement is applied when the environment tag of the signal starts with `staging`, `test` or `dev`. + example: false + type: boolean + SecurityMonitoringRuleDetectionMethod: + description: The detection method. + enum: + - threshold + - new_value + - anomaly_detection + - impossible_travel + - hardcoded + - third_party + - anomaly_threshold + - sequence_detection + type: string + x-enum-varnames: + - THRESHOLD + - NEW_VALUE + - ANOMALY_DETECTION + - IMPOSSIBLE_TRAVEL + - HARDCODED + - THIRD_PARTY + - ANOMALY_THRESHOLD + - SEQUENCE_DETECTION + SecurityMonitoringRuleEvaluationWindow: + description: |- + A time window is specified to match when at least one of the cases matches true. This is a sliding window + and evaluates in real time. For third party detection method, this field is not used. + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + - 43200 + - 86400 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + - THREE_HOURS + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + SecurityMonitoringRuleHardcodedEvaluatorType: + description: Hardcoded evaluator type. + enum: + - log4shell + type: string + x-enum-varnames: + - LOG4SHELL + SecurityMonitoringRuleImpossibleTravelOptions: + description: Options on impossible travel detection method. + properties: + baselineUserLocations: + $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations' + baselineUserLocationsDuration: + $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocationsDuration' + type: object + SecurityMonitoringRuleKeepAlive: + description: |- + Once a signal is generated, the signal will remain "open" if a case is matched at least once within + this keep alive window. For third party detection method, this field is not used. + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + - 43200 + - 86400 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + - THREE_HOURS + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + SecurityMonitoringRuleMaxSignalDuration: + description: |- + A signal will "close" regardless of the query being matched once the time exceeds the maximum duration. + This time is calculated from the first seen timestamp. + enum: + - 0 + - 60 + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 7200 + - 10800 + - 21600 + - 43200 + - 86400 + format: int32 + type: integer + x-enum-varnames: + - ZERO_MINUTES + - ONE_MINUTE + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - TWO_HOURS + - THREE_HOURS + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + SecurityMonitoringRuleNewValueOptions: + description: Options on new value detection method. + properties: + forgetAfter: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsForgetAfter' + instantaneousBaseline: + $ref: '#/components/schemas/SecurityMonitoringRuleInstantaneousBaseline' + learningDuration: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningDuration' + learningMethod: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningMethod' + learningThreshold: + $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningThreshold' + type: object + SecurityMonitoringRuleSequenceDetectionOptions: + description: Options on sequence detection method. + properties: + stepTransitions: + description: Transitions defining the allowed order of steps and their evaluation windows. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleSequenceDetectionStepTransition' + type: array + steps: + description: Steps that define the conditions to be matched in sequence. + items: + $ref: '#/components/schemas/SecurityMonitoringRuleSequenceDetectionStep' + type: array + type: object + SecurityMonitoringRuleThirdPartyOptions: + description: Options on third party detection method. properties: - customStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each rule case. + defaultNotifications: + description: Notification targets for the logs that do not correspond to any of the cases. items: description: Notification. type: string type: array - query: - description: A query to map a third party event to this case. - type: string - status: + defaultStatus: $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + rootQueries: + description: Queries to be combined with third party case queries. Each of them can have different group by fields, to aggregate differently based on the type of alert. + items: + $ref: '#/components/schemas/SecurityMonitoringThirdPartyRootQuery' + type: array + signalTitleTemplate: + description: A template for the signal title; if omitted, the title is generated based on the case name. + type: string type: object - GetRuleVersionHistoryData: - description: Data for the rule version history. + RuleVersionHistory: + description: Response object containing the version history of a rule. properties: - attributes: - $ref: '#/components/schemas/RuleVersionHistory' - id: - description: ID of the rule. - type: string - type: - $ref: '#/components/schemas/GetRuleVersionHistoryDataType' + count: + description: The number of rule versions. + format: int32 + maximum: 2147483647 + type: integer + data: + additionalProperties: + $ref: '#/components/schemas/RuleVersions' + description: A rule version with a list of updates. + description: The `RuleVersionHistory` `data`. + type: object type: object - SecurityMonitoringSignalsSort: - description: The sort parameters used for querying security signals. + GetRuleVersionHistoryDataType: + description: Type of data. enum: - - timestamp - - '-timestamp' + - GetRuleVersionHistoryResponse type: string x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - SecurityMonitoringSignal: - description: Object description of a security signal. + - GETRULEVERSIONHISTORYRESPONSE + SampleLogGenerationSubscriptionAttributes: + description: The attributes describing a sample log generation subscription. properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalAttributes' - id: - description: The unique ID of the security signal. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + content_pack_id: + description: The identifier of the Cloud SIEM content pack the subscription targets. + example: aws-cloudtrail type: string - type: - $ref: '#/components/schemas/SecurityMonitoringSignalType' + created_at: + description: The time at which the subscription was created. + example: '2026-05-08T20:02:13.77481Z' + format: date-time + type: string + expires_at: + description: The time at which the subscription expires and stops generating logs. + example: '2026-05-11T20:02:13.77481Z' + format: date-time + type: string + is_active: + description: Whether the subscription is currently active and generating logs. + example: true + type: boolean + status: + $ref: '#/components/schemas/SampleLogGenerationSubscriptionStatus' + required: + - content_pack_id + - status + - is_active + - created_at + - expires_at type: object - SecurityMonitoringSignalsListResponseLinks: - description: Links attributes. + SampleLogGenerationSubscriptionResourceType: + default: subscriptions + description: The type of the resource. The value should always be `subscriptions`. + enum: + - subscriptions + example: subscriptions + type: string + x-enum-varnames: + - SUBSCRIPTIONS + SampleLogGenerationSubscriptionCreateAttributes: + description: The attributes for creating a sample log generation subscription. properties: - next: - description: >- - The link for the next set of results. **Note**: The request can also - be made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/security_monitoring/signals?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + content_pack_id: + description: The identifier of the Cloud SIEM content pack to subscribe to. + example: aws-cloudtrail type: string + duration: + $ref: '#/components/schemas/SampleLogGenerationDuration' + required: + - content_pack_id type: object - SecurityMonitoringSignalsListResponseMeta: - description: Meta attributes. + SampleLogGenerationSubscriptionRequestType: + default: subscription_requests + description: The type of the resource. The value should always be `subscription_requests`. + enum: + - subscription_requests + example: subscription_requests + type: string + x-enum-varnames: + - SUBSCRIPTION_REQUESTS + SampleLogGenerationBulkSubscriptionAttributes: + description: The attributes for creating sample log generation subscriptions for multiple content packs. properties: - page: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMetaPage' + content_pack_ids: + description: The identifiers of the Cloud SIEM content packs to subscribe to. At most five content packs can be requested in a single call. + example: + - aws-cloudtrail + items: + description: A Cloud SIEM content pack identifier. + type: string + maxItems: 5 + type: array + duration: + $ref: '#/components/schemas/SampleLogGenerationDuration' + required: + - content_pack_ids type: object - SecurityMonitoringSignalListRequestFilter: - description: Search filters for listing security signals. + SampleLogGenerationBulkSubscriptionRequestType: + default: bulk_subscription_requests + description: The type of the resource. The value should always be `bulk_subscription_requests`. + enum: + - bulk_subscription_requests + example: bulk_subscription_requests + type: string + x-enum-varnames: + - BULK_SUBSCRIPTION_REQUESTS + SampleLogGenerationBulkSubscriptionItemMeta: + description: Per-item status returned for a bulk subscription request. properties: - from: - description: The minimum timestamp for requested security signals. - example: '2019-01-02T09:42:36.320Z' - format: date-time + error: + description: A description of the error encountered for this content pack, if the subscription could not be created. + example: content pack does not exist type: string - query: - description: Search query for listing security signals. - example: security:attack status:high + status: + description: The HTTP status code that resulted from creating the subscription for this content pack. + example: 200 + format: int32 + maximum: 599 + type: integer + required: + - status + type: object + SecurityMonitoringSignalAttributes: + additionalProperties: {} + description: |- + The object containing all signal attributes and their + associated values. + properties: + custom: + additionalProperties: {} + description: A JSON object of attributes in the security signal. + example: + workflow: + first_seen: '2020-06-23T14:46:01.000Z' + last_seen: '2020-06-23T14:46:49.000Z' + rule: + id: 0f5-e0c-805 + name: Brute Force Attack Grouped By User + version: 12 + type: object + message: + description: The message in the security signal defined by the rule that generated the signal. + example: Detect Account Take Over (ATO) through brute force attempts type: string - to: - description: The maximum timestamp for requested security signals. - example: '2019-01-03T09:42:36.320Z' + tags: + description: An array of tags associated with the security signal. + example: + - security:attack + - technique:T1110-brute-force + items: + description: The tag associated with the security signal. + type: string + type: array + timestamp: + description: The timestamp of the security signal. + example: '2019-01-02T09:42:36.320Z' format: date-time type: string type: object - SecurityMonitoringSignalListRequestPage: - description: The paging attributes for listing security signals. + SecurityMonitoringSignalType: + default: signal + description: The type of event. + enum: + - signal + example: signal + type: string + x-enum-varnames: + - SIGNAL + SecurityMonitoringSignalsListResponseMetaPage: + description: Paging attributes. properties: - cursor: - description: A list of results using the cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + after: + description: |- + The cursor used to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== type: string - limit: - default: 10 - description: The maximum number of security signals in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer type: object - SecurityMonitoringSignalAssigneeUpdateData: - description: Data containing the patch for changing the assignee of a signal. + SecurityMonitoringSignalsBulkAssigneeUpdateAttributes: + description: Attributes describing the new assignees for a bulk signal update. properties: - attributes: - $ref: >- - #/components/schemas/SecurityMonitoringSignalAssigneeUpdateAttributes + assignee: + description: UUID of the user to assign to the signal. Use an empty string to unassign. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 + type: string + version: + $ref: '#/components/schemas/SecurityMonitoringSignalVersion' required: - - attributes + - assignee type: object - SecurityMonitoringSignalTriageUpdateData: - description: Data containing the updated triage attributes of the signal. + SecurityMonitoringSignalsBulkTriageEvent: + description: A single signal event entry in a bulk triage update response. properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageAttributes' + event: + $ref: '#/components/schemas/SecurityMonitoringSignalsBulkTriageEventAttributes' id: description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA type: string - type: - $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' - type: object - SecurityMonitoringSignalIncidentsUpdateData: - description: >- - Data containing the patch for changing the related incidents of a - signal. - properties: - attributes: - $ref: >- - #/components/schemas/SecurityMonitoringSignalIncidentsUpdateAttributes required: - - attributes + - id + - event type: object - SecurityMonitoringSignalStateUpdateData: - description: Data containing the patch for changing the state of a signal. + SecurityMonitoringSignalStateUpdateAttributes: + description: Attributes describing the change of state of a security signal. properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes' - id: - description: The unique ID of the security signal. - type: - $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' + archive_comment: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' + archive_reason: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' + state: + $ref: '#/components/schemas/SecurityMonitoringSignalState' + version: + $ref: '#/components/schemas/SecurityMonitoringSignalVersion' required: - - attributes + - state type: object - SensitiveDataScannerGetConfigResponseData: - description: Response data related to the scanning groups. + SecurityMonitoringSignalUpdateAttributes: + description: Attributes for updating the triage state or assignee of a security signal. properties: - attributes: - additionalProperties: {} - description: Attributes of the Sensitive Data configuration. - type: object - id: - description: ID of the configuration. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' + archive_comment: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' + archive_reason: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' + assignee: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + state: + $ref: '#/components/schemas/SecurityMonitoringSignalState' + version: + $ref: '#/components/schemas/SecurityMonitoringSignalVersion' type: object - SensitiveDataScannerGetConfigIncludedArray: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedItem' - type: array - SensitiveDataScannerMeta: - description: Meta response containing information about the API. + SecurityMonitoringSignalAssigneeUpdateAttributes: + description: Attributes describing the new assignee of a security signal. + properties: + assignee: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + version: + $ref: '#/components/schemas/SecurityMonitoringSignalVersion' + required: + - assignee + type: object + SecurityMonitoringSignalTriageAttributes: + description: Attributes describing a triage state update operation over a security signal. properties: - count_limit: - description: Maximum number of scanning rules allowed for the org. - format: int64 - type: integer - group_count_limit: - description: Maximum number of scanning groups allowed for the org. + archive_comment: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' + archive_comment_timestamp: + description: Timestamp of the last edit to the comment. format: int64 + minimum: 0 type: integer - has_highlight_enabled: - default: true - deprecated: true - description: >- - (Deprecated) Whether or not scanned events are highlighted in Logs - or RUM for the org. - type: boolean - has_multi_pass_enabled: - deprecated: true - description: (Deprecated) Whether or not scanned events have multi-pass enabled. - type: boolean - is_pci_compliant: - description: >- - Whether or not the org is compliant to the payment card industry - standard. - type: boolean - version: - description: Version of the API. - example: 0 + archive_comment_user: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + archive_reason: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' + assignee: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + incident_ids: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' + state: + $ref: '#/components/schemas/SecurityMonitoringSignalState' + state_update_timestamp: + description: Timestamp of the last update to the signal state. format: int64 minimum: 0 type: integer + state_update_user: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + required: + - assignee + - state + - incident_ids type: object - SensitiveDataScannerReorderConfig: - description: Data related to the reordering of scanning groups. + SecurityMonitoringSignalMetadataType: + default: signal_metadata + description: The type of event. + enum: + - signal_metadata + example: signal_metadata + type: string + x-enum-varnames: + - SIGNAL_METADATA + SignalEntitiesAttributes: + description: Attributes containing the entities related to the signal. properties: - id: - description: ID of the configuration. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' + identities: + description: The identity entities related to the signal. Each item is a free-form object describing an identity (for example, a user or principal). + example: + - display_name: Test User + principal_id: user@example.com + items: + $ref: '#/components/schemas/SignalEntityIdentity' + type: array + required: + - identities type: object - SensitiveDataScannerMetaVersionOnly: - description: Meta payload containing information about the API. + SignalEntitiesType: + default: entities + description: The type of the resource. The value should always be `entities`. + enum: + - entities + example: entities + type: string + x-enum-varnames: + - ENTITIES + SecurityMonitoringSignalIncidentsUpdateAttributes: + description: Attributes describing the new list of related signals for a security signal. properties: + incident_ids: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' version: - description: Version of the API (optional). - example: 0 - format: int64 - minimum: 0 - type: integer + $ref: '#/components/schemas/SecurityMonitoringSignalVersion' + required: + - incident_ids type: object - SensitiveDataScannerGroupCreate: - description: Data related to the creation of a group. + SecurityMonitoringSignalSuggestedAction: + description: A suggested action for a security signal. properties: attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' + $ref: '#/components/schemas/SecurityMonitoringSignalSuggestedActionAttributes' + id: + description: The unique ID of the suggested action. + example: w00-t10-992 + type: string type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' + $ref: '#/components/schemas/SecurityMonitoringSignalSuggestedActionType' required: + - id - type - attributes type: object - SensitiveDataScannerGroupResponse: - description: Response data related to the creation of a group. + SecurityMonitoringTerraformBulkExportAttributes: + description: Attributes for the bulk export request. properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' + resource_ids: + description: The list of resource IDs to export. Maximum 1000 items. + example: + - '' + items: + description: The ID of the resource to export. + type: string + maxItems: 1000 + type: array + required: + - resource_ids type: object - SensitiveDataScannerGroupUpdate: - description: Data related to the update of a group. + SecurityMonitoringTerraformConvertAttributes: + description: Attributes for the convert request. properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' + resource_json: + additionalProperties: {} + description: The resource attributes as a JSON object, matching the structure returned by the corresponding Datadog API (for example, the attributes of a suppression rule). + example: + enabled: true + name: Custom suppression + rule_query: type:log_detection source:cloudtrail + suppression_query: env:staging status:low + type: object + required: + - resource_json type: object - SensitiveDataScannerRuleCreate: - description: Data related to the creation of a rule. + SecurityMonitoringTerraformExportAttributes: + description: Attributes of the Terraform export response. properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' + output: + description: The Terraform configuration for the resource. + type: string + resource_id: + description: The ID of the exported resource. + example: abc-123 + type: string + type_name: + description: The Terraform resource type name. + example: datadog_security_monitoring_suppression + type: string required: - - type - - attributes - - relationships + - type_name + - resource_id type: object - SensitiveDataScannerRuleResponse: - description: Response data related to the creation of a rule. + SensitiveDataScannerConfigurationRelationships: + description: Relationships of the configuration. properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' + groups: + $ref: '#/components/schemas/SensitiveDataScannerGroupList' type: object - SensitiveDataScannerRuleUpdate: - description: Data related to the update of a rule. + SensitiveDataScannerConfigurationType: + default: sensitive_data_scanner_configuration + description: Sensitive Data Scanner configuration type. + enum: + - sensitive_data_scanner_configuration + example: sensitive_data_scanner_configuration + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_CONFIGURATIONS + SensitiveDataScannerGetConfigIncludedItem: + description: An object related to the configuration. properties: attributes: $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' @@ -7048,2646 +28428,2991 @@ components: type: $ref: '#/components/schemas/SensitiveDataScannerRuleType' type: object - SensitiveDataScannerStandardPatternsResponse: - description: List Standard patterns response. - items: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseItem' - type: array - HistoricalJobResponseData: - description: Historical job response data. + SensitiveDataScannerGroupAttributes: + description: Attributes of the Sensitive Data Scanner group. properties: - attributes: - $ref: '#/components/schemas/HistoricalJobResponseAttributes' - id: - description: ID of the job. + description: + description: Description of the group. type: string - type: - $ref: '#/components/schemas/HistoricalJobDataType' + filter: + $ref: '#/components/schemas/SensitiveDataScannerFilter' + is_enabled: + description: Whether or not the group is enabled. + type: boolean + name: + description: Name of the group. + type: string + product_list: + description: List of products the scanning group applies. + items: + $ref: '#/components/schemas/SensitiveDataScannerProduct' + type: array + samplings: + description: List of sampling rates per product type. + items: + $ref: '#/components/schemas/SensitiveDataScannerSamplings' + type: array type: object - HistoricalJobListMeta: - description: Metadata about the list of jobs. + SensitiveDataScannerGroupRelationships: + description: Relationships of the group. properties: - totalCount: - description: Number of jobs in the list. - format: int32 - maximum: 2147483647 + configuration: + $ref: '#/components/schemas/SensitiveDataScannerConfigurationData' + rules: + $ref: '#/components/schemas/SensitiveDataScannerRuleData' + type: object + SensitiveDataScannerGroupType: + default: sensitive_data_scanner_group + description: Sensitive Data Scanner group type. + enum: + - sensitive_data_scanner_group + example: sensitive_data_scanner_group + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_GROUP + SensitiveDataScannerRuleAttributes: + description: Attributes of the Sensitive Data Scanner rule. + properties: + description: + description: Description of the rule. + type: string + excluded_namespaces: + description: Attributes excluded from the scan. If namespaces is provided, it has to be a sub-path of the namespaces array. + example: + - admin.name + items: + description: An attribute path to exclude from the scan. + type: string + type: array + included_keyword_configuration: + $ref: '#/components/schemas/SensitiveDataScannerIncludedKeywordConfiguration' + is_enabled: + description: Whether or not the rule is enabled. + type: boolean + name: + description: Name of the rule. + type: string + namespaces: + description: |- + Attributes included in the scan. If namespaces is empty or missing, all attributes except excluded_namespaces are scanned. + If both are missing the whole event is scanned. + example: + - admin + items: + description: An attribute path to include in the scan. + type: string + type: array + pattern: + description: Not included if there is a relationship to a standard pattern. + type: string + priority: + description: Integer from 1 (high) to 5 (low) indicating rule issue severity. + format: int64 + maximum: 5 + minimum: 1 type: integer + suppressions: + $ref: '#/components/schemas/SensitiveDataScannerSuppressions' + tags: + description: List of tags. + items: + description: A tag associated with the rule. + type: string + type: array + text_replacement: + $ref: '#/components/schemas/SensitiveDataScannerTextReplacement' type: object - RunHistoricalJobRequestData: - description: Data for running a historical job request. + SensitiveDataScannerRuleRelationships: + description: Relationships of a scanning rule. properties: - attributes: - $ref: '#/components/schemas/RunHistoricalJobRequestAttributes' - type: - $ref: '#/components/schemas/RunHistoricalJobRequestDataType' + group: + $ref: '#/components/schemas/SensitiveDataScannerGroupData' + standard_pattern: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternData' type: object - JobCreateResponseData: - description: The definition of `JobCreateResponseData` object. + SensitiveDataScannerRuleType: + default: sensitive_data_scanner_rule + description: Sensitive Data Scanner rule type. + enum: + - sensitive_data_scanner_rule + example: sensitive_data_scanner_rule + type: string + x-enum-varnames: + - SENSITIVE_DATA_SCANNER_RULE + SensitiveDataScannerStandardPatternsResponseItem: + description: Standard pattern item. properties: + attributes: + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternAttributes' id: - description: ID of the created job. + description: ID of the standard pattern. type: string type: - $ref: '#/components/schemas/HistoricalJobDataType' - type: object - ConvertJobResultsToSignalsData: - description: Data for converting historical job results to signals. - properties: - attributes: - $ref: '#/components/schemas/ConvertJobResultsToSignalsAttributes' - type: - $ref: '#/components/schemas/ConvertJobResultsToSignalsDataType' + $ref: '#/components/schemas/SensitiveDataScannerStandardPatternType' type: object - AwsScanOptionsAttributes: - description: Attributes for the AWS scan options. + HistoricalJobResponseAttributes: + description: Historical job attributes. properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true + createdAt: + description: Time when the job was created. + type: string + createdByHandle: + description: The handle of the user who created the job. + type: string + createdByName: + description: The name of the user who created the job. + type: string + createdFromRuleId: + description: ID of the rule used to create the job (if it is created from a rule). + type: string + jobDefinition: + $ref: '#/components/schemas/JobDefinition' + jobName: + description: Job name. + type: string + jobStatus: + description: Job status. + type: string + modifiedAt: + description: Last modification time of the job. + type: string + progressRate: + description: Job execution progress as a value between 0 and 1. Available for ongoing jobs. + format: double + type: number + signalOutput: + description: Whether the job outputs signals. type: boolean type: object - AwsScanOptionsType: - default: aws_scan_options - description: The type of the resource. The value should always be `aws_scan_options`. + HistoricalJobDataType: + description: Type of payload. enum: - - aws_scan_options - example: aws_scan_options + - historicalDetectionsJob type: string x-enum-varnames: - - AWS_SCAN_OPTIONS - AwsScanOptionsCreateAttributes: - description: Attributes for the AWS scan options to create. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - required: - - lambda - - sensitive_data - - vuln_containers_os - - vuln_host_os - type: object - AwsAccountId: - description: The ID of the AWS account. - example: '123456789012' - type: string - AwsScanOptionsUpdateAttributes: - description: Attributes for the AWS scan options to update. + - HISTORICALDETECTIONSJOB + RunHistoricalJobRequestAttributes: + description: Run a historical job request. properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true + fromRule: + $ref: '#/components/schemas/JobDefinitionFromRule' + jobDefinition: + $ref: '#/components/schemas/JobDefinition' + signalOutput: + description: Whether the job outputs signals when results are converted. type: boolean type: object - AwsOnDemandAttributes: - description: Attributes for the AWS on demand task. - properties: - arn: - description: The arn of the resource to scan. - example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba - type: string - assigned_at: - description: >- - Specifies the assignment timestamp if the task has been already - assigned to a scanner. - example: '2025-02-11T18:25:04.550564Z' - type: string - created_at: - description: The task submission timestamp. - example: '2025-02-11T18:13:24.576915Z' - type: string - status: - description: >- - Indicates the status of the task. - - QUEUED: the task has been submitted successfully and the resource - has not been assigned to a scanner yet. - - ASSIGNED: the task has been assigned. - - ABORTED: the scan has been aborted after a period of time due to - technical reasons, such as resource not found, insufficient - permissions, or the absence of a configured scanner. - example: QUEUED - type: string - type: object - AwsOnDemandType: - default: aws_resource - description: >- - The type of the on demand task. The value should always be - `aws_resource`. + RunHistoricalJobRequestDataType: + description: Type of data. enum: - - aws_resource - example: aws_resource + - historicalDetectionsJobCreate type: string x-enum-varnames: - - AWS_RESOURCE - AwsOnDemandCreateAttributes: - description: Attributes for the AWS on demand task. + - HISTORICALDETECTIONSJOBCREATE + ConvertJobResultsToSignalsAttributes: + description: Attributes for converting historical job results to signals. properties: - arn: - description: >- - The arn of the resource to scan. Agentless supports the scan of EC2 - instances, lambda functions, AMI, ECR, RDS and S3 buckets. - example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba + jobResultIds: + description: Job result IDs. + example: + - '' + items: + description: A job result ID. + type: string + type: array + notifications: + description: Notifications sent. + example: + - '' + items: + description: A notification recipient handle. + type: string + type: array + signalMessage: + description: Message of generated signals. + example: A large number of failed login attempts. type: string + signalSeverity: + $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' required: - - arn + - jobResultIds + - signalSeverity + - signalMessage + - notifications type: object - CustomFrameworkDataAttributes: - description: Framework Data Attributes. + ConvertJobResultsToSignalsDataType: + description: Type of payload. + enum: + - historicalDetectionsJobResultSignalConversion + type: string + x-enum-varnames: + - HISTORICALDETECTIONSJOBRESULTSIGNALCONVERSION + ScaRequestDataAttributes: + description: The attributes of an SCA request, containing dependency graph data, vulnerability information, and repository context. properties: - description: - description: Framework Description - type: string - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - type: string - name: - description: Framework Name - example: security-framework + commit: + $ref: '#/components/schemas/ScaRequestDataAttributesCommit' + dependencies: + description: The list of dependencies discovered in the repository. + items: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItems' + type: array + env: + description: The environment context in which the SCA scan was performed (e.g., production, staging). type: string - requirements: - description: Framework Requirements + files: + description: The list of dependency manifest files found in the repository. items: - $ref: '#/components/schemas/CustomFrameworkRequirement' + $ref: '#/components/schemas/ScaRequestDataAttributesFilesItems' type: array - version: - description: Framework Version - example: '2' + relations: + description: The dependency relations describing the inter-component dependency graph. + items: + $ref: '#/components/schemas/ScaRequestDataAttributesRelationsItems' + type: array + repository: + $ref: '#/components/schemas/ScaRequestDataAttributesRepository' + service: + description: The name of the service or application being analyzed. type: string - required: - - handle - - version - - name - - requirements + tags: + additionalProperties: + type: string + description: A map of key-value tags providing additional metadata for the SCA scan. + type: object + vulnerabilities: + description: The list of vulnerabilities identified in the dependency graph. + items: + $ref: '#/components/schemas/ScaRequestDataAttributesVulnerabilitiesItems' + type: array type: object - CustomFrameworkType: - default: custom_framework - description: The type of the resource. The value must be `custom_framework`. + ScaRequestDataType: + default: scarequests + description: The type identifier for SCA dependency analysis requests. enum: - - custom_framework - example: custom_framework + - scarequests + example: scarequests type: string x-enum-varnames: - - CUSTOM_FRAMEWORK - CustomFrameworkDataHandleAndVersion: - description: Framework Handle and Version. - properties: - handle: - description: Framework Handle - example: sec2 - type: string - version: - description: Framework Version - example: '2' - type: string - type: object - CustomFrameworkWithoutRequirements: - description: Framework without requirements. + - SCAREQUESTS + McpScanRequestDataAttributes: + description: The attributes of an MCP SCA scan request, describing the libraries to scan and their context. properties: - description: - description: Framework Description - example: this is a security description - type: string - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - example: https://example.com/icon.png - type: string - name: - description: Framework Name - example: security-framework + commit_hash: + description: The commit hash of the source code being scanned. + example: 0e9fc8de83eaabecd722e1cd0ed44fb489fe15fc type: string - version: - description: Framework Version - example: '2' + libraries: + $ref: '#/components/schemas/McpScanRequestDataAttributesLibraries' + resource_name: + description: The name of the resource (typically the repository or project name) being scanned. + example: my-org/my-repo type: string required: - - handle - - version - - name + - resource_name + - commit_hash + - libraries type: object - FullCustomFrameworkDataAttributes: - description: Full Framework Data Attributes. + McpScanRequestDataType: + default: mcpscanrequest + description: The type identifier for MCP SCA scan requests. + enum: + - mcpscanrequest + example: mcpscanrequest + type: string + x-enum-varnames: + - MCPSCANREQUEST + McpScanRequestResponseDataAttributes: + description: The attributes returned when a scan request has been accepted, containing the job identifier used to poll for results. properties: - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - example: https://example.com/icon.png - type: string - name: - description: Framework Name - example: security-framework - type: string - requirements: - description: Framework Requirements - items: - $ref: '#/components/schemas/CustomFrameworkRequirement' - type: array - version: - description: Framework Version - example: '2' + job_id: + description: The job identifier assigned to the scan, used to retrieve the scan result. + example: 0190a3d4-1234-7000-8000-000000000000 type: string required: - - handle - - version - - name - - requirements + - job_id type: object - ResourceFilterAttributes: - description: Attributes of a resource filter. - example: - aws: - '123456789': - - environment:production - - team:devops - azure: - sub-001: - - app:frontend - gcp: - project-abc: - - region:us-central1 + McpScanRequestResponseDataType: + default: mcpscanrequestresponse + description: The type identifier for MCP SCA scan request responses. + enum: + - mcpscanrequestresponse + example: mcpscanrequestresponse + type: string + x-enum-varnames: + - MCPSCANREQUESTRESPONSE + LicensesListResponseDataAttributes: + description: The attributes of the licenses list response, containing the array of SPDX licenses. properties: - cloud_provider: - additionalProperties: - additionalProperties: - items: - description: Tag filter in format "key:value" - example: environment:production - type: string - type: array - type: object - description: >- - A map of cloud provider names (e.g., "aws", "gcp", "azure") to a map - of account/resource IDs and their associated tag filters. - type: object - uuid: - description: The UUID of the resource filter. - type: string + licenses: + $ref: '#/components/schemas/LicensesListResponseDataAttributesLicenses' required: - - cloud_provider + - licenses type: object - ResourceFilterRequestType: - description: Constant string to identify the request type. + LicensesListResponseDataType: + default: licenserequest + description: The type identifier for license list responses. enum: - - csm_resource_filter - example: csm_resource_filter + - licenserequest + example: licenserequest type: string x-enum-varnames: - - CSM_RESOURCE_FILTER - CsmAgentsAttributes: - description: A CSM Agent returned by the API. + - LICENSEREQUEST + ResolveVulnerableSymbolsRequestDataAttributes: + description: The attributes of a request to resolve vulnerable symbols, containing the list of package PURLs to check. properties: - agent_version: - description: Version of the Datadog Agent. - type: string - aws_fargate: - description: AWS Fargate details. - type: string - cluster_name: - description: List of cluster names associated with the Agent. - items: - type: string - type: array - datadog_agent: - description: Unique identifier for the Datadog Agent. - type: string - ecs_fargate_task_arn: - description: ARN of the ECS Fargate task. - type: string - envs: - description: List of environments associated with the Agent. + purls: + description: The list of Package URLs (PURLs) for which to resolve vulnerable symbols. items: + description: A Package URL (PURL) identifying a specific package and version. type: string - nullable: true type: array - host_id: - description: ID of the host. - format: int64 - type: integer - hostname: - description: Name of the host. - type: string - install_method_installer_version: - description: Version of the installer used for installing the Datadog Agent. - type: string - install_method_tool: - description: Tool used for installing the Datadog Agent. - type: string - is_csm_vm_containers_enabled: - description: Indicates if CSM VM Containers is enabled. - nullable: true - type: boolean - is_csm_vm_hosts_enabled: - description: Indicates if CSM VM Hosts is enabled. - nullable: true - type: boolean - is_cspm_enabled: - description: Indicates if CSPM is enabled. - nullable: true - type: boolean - is_cws_enabled: - description: Indicates if CWS is enabled. - nullable: true - type: boolean - is_cws_remote_configuration_enabled: - description: Indicates if CWS Remote Configuration is enabled. - nullable: true - type: boolean - is_remote_configuration_enabled: - description: Indicates if Remote Configuration is enabled. - nullable: true - type: boolean - os: - description: Operating system of the host. - type: string type: object - CSMAgentsType: - default: datadog_agent - description: The type of the resource. The value should always be `datadog_agent`. + ResolveVulnerableSymbolsRequestDataType: + default: resolve-vulnerable-symbols-request + description: The type identifier for requests to resolve vulnerable symbols. enum: - - datadog_agent - example: datadog_agent + - resolve-vulnerable-symbols-request + example: resolve-vulnerable-symbols-request type: string x-enum-varnames: - - DATADOG_AGENT - CsmCloudAccountsCoverageAnalysisAttributes: - description: CSM Cloud Accounts Coverage Analysis attributes. - properties: - aws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - azure_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - gcp_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - CsmHostsAndContainersCoverageAnalysisAttributes: - description: CSM Hosts and Containers Coverage Analysis attributes. + - RESOLVE_VULNERABLE_SYMBOLS_REQUEST + ResolveVulnerableSymbolsResponseDataAttributes: + description: The attributes of a response containing resolved vulnerable symbols, organized by package. properties: - cspm_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - cws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - vm_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' + results: + description: The list of resolved vulnerable symbol results, one entry per queried package. + items: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponseResults' + type: array type: object - CsmServerlessCoverageAnalysisAttributes: - description: CSM Serverless Resources Coverage Analysis attributes. + ResolveVulnerableSymbolsResponseDataType: + default: resolve-vulnerable-symbols-response + description: The type identifier for responses containing resolved vulnerable symbols. + enum: + - resolve-vulnerable-symbols-response + example: resolve-vulnerable-symbols-response + type: string + x-enum-varnames: + - RESOLVE_VULNERABLE_SYMBOLS_RESPONSE + AiMemoryViolationResultResponseAttributes: + description: Response attributes of an AI memory violation result. properties: - cws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 + created_at: + description: The creation timestamp. + example: '2024-01-01T00:00:00+00:00' + format: date-time + type: string + created_by: + description: The identifier of the user who created the result. + example: example-handle + type: string + line: + description: The line number where the violation was found. + example: 10 format: int64 type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - Finding: - description: A single finding without the message and resource configuration. - properties: - attributes: - $ref: '#/components/schemas/FindingAttributes' - id: - $ref: '#/components/schemas/FindingID' + message: + description: A message explaining the violation result. + example: This is a false positive because the input is sanitized. + type: string + name: + description: The file path where the violation was found. + example: src/main.py + type: string + repository_id: + description: The repository identifier. + example: my-repo + type: string + rule: + description: The rule identifier in the format ruleset/rule. + example: my-ai-ruleset/my-ai-rule + type: string + sha: + description: The git commit SHA where the violation was found. + example: abc123def456789012345678901234567890abcd + type: string type: - $ref: '#/components/schemas/FindingType' - type: object - ListFindingsPage: - additionalProperties: false - description: Pagination and findings count information. + $ref: '#/components/schemas/AiMemoryViolationType' + required: + - rule + - repository_id + - sha + - name + - line + - created_at + - created_by + - type + - message + type: object + AiMemoryViolationResultDataType: + description: AI memory violation result resource type. + enum: + - ai_memory_violation_result + example: ai_memory_violation_result + type: string + x-enum-varnames: + - AI_MEMORY_VIOLATION_RESULT + AiMemoryViolationResultRequestAttributes: + description: Attributes for creating an AI memory violation result. properties: - cursor: - description: The cursor used to paginate requests. - example: >- - eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= - type: string - total_filtered_count: - description: The total count of findings after the filter has been applied. - example: 213 + line: + description: The line number where the violation was found. + example: 10 format: int64 type: integer + message: + description: A message explaining the violation result. + example: This is a false positive because the input is sanitized. + type: string + name: + description: The file path where the violation was found. + example: src/main.py + type: string + repository_id: + description: The repository identifier. + example: my-repo + type: string + rule: + description: The rule identifier in the format ruleset/rule. + example: my-ai-ruleset/my-ai-rule + type: string + sha: + description: The git commit SHA where the violation was found. + example: abc123def456789012345678901234567890abcd + type: string + type: + $ref: '#/components/schemas/AiMemoryViolationType' + required: + - rule + - repository_id + - sha + - name + - line + - type + - message type: object - BulkMuteFindingsRequestAttributes: - additionalProperties: false - description: The mute properties to be updated. + AiPromptResponseAttributes: + description: Response attributes of an AI prompt. properties: - mute: - $ref: '#/components/schemas/BulkMuteFindingsRequestProperties' + category: + $ref: '#/components/schemas/CustomRuleRevisionAttributesCategory' + checksum: + description: Checksum of the prompt content. + example: abc123 + type: string + content: + description: Base64-encoded AI prompt content. + example: Content + type: string + cwe: + description: The CWE identifier associated with this prompt. + example: '79' + type: string + description: + description: Base64-encoded full description. + example: Ruleset description + type: string + directories: + description: Directory patterns this prompt applies to. + example: [] + items: + type: string + type: array + execution_mode: + $ref: '#/components/schemas/AiCustomRuleRevisionExecutionMode' + file_search_keywords: + description: Keywords used to search for relevant files. + example: + - import + items: + type: string + type: array + globs: + description: File glob patterns this prompt applies to. + example: + - '**/*.py' + items: + type: string + type: array + is_default: + description: Whether this is a default Datadog prompt. + example: false + type: boolean + is_testing: + description: Whether this prompt is for testing only. + example: false + type: boolean + language: + $ref: '#/components/schemas/Language' + result_keywords_exclude: + description: Keywords to exclude from results. + example: [] + items: + type: string + type: array + rule_version: + description: The version of the rule this prompt is associated with. + example: '1' + type: string + severity: + $ref: '#/components/schemas/CustomRuleRevisionAttributesSeverity' + short_description: + description: Base64-encoded short description. + example: Ruleset short description + type: string required: - - mute - type: object - BulkMuteFindingsRequestMeta: - description: Meta object containing the findings to be updated. + - rule_version + - globs + - short_description + - description + - severity + - category + - file_search_keywords + - result_keywords_exclude + - content + - checksum + - execution_mode + - directories + - is_testing + - is_default + type: object + AiPromptDataType: + description: AI prompt resource type. + enum: + - ai_prompt + example: ai_prompt + type: string + x-enum-varnames: + - AI_PROMPT + AiCustomRulesetResponseAttributes: + description: Response attributes of an AI custom ruleset. properties: - findings: - description: Array of findings. + created_at: + description: The creation timestamp. + example: '2024-01-01T00:00:00+00:00' + format: date-time + type: string + created_by: + description: The identifier of the user who created the ruleset. + example: example-handle + type: string + description: + description: Base64-encoded full description of the ruleset. + example: Ruleset description + type: string + name: + description: The ruleset name. + example: my-ai-ruleset + type: string + rules: + description: The rules contained in the ruleset. items: - $ref: '#/components/schemas/BulkMuteFindingsRequestMetaFindings' + $ref: '#/components/schemas/AiCustomRuleItem' + nullable: true type: array + short_description: + description: Base64-encoded short description of the ruleset. + example: Ruleset short description + type: string + required: + - name + - short_description + - description + - created_at + - created_by + - rules type: object - FindingType: - default: finding - description: The JSON:API type for findings. + AiCustomRulesetDataType: + description: AI custom ruleset resource type. enum: - - finding - example: finding + - ai_ruleset + example: ai_ruleset type: string x-enum-varnames: - - FINDING - JSONAPIErrorItemSource: - description: References to the source of the error. + - AI_RULESET + AiCustomRulesetRequestAttributes: + description: Attributes for creating an AI custom ruleset. properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization + description: + description: Base64-encoded full description of the ruleset. + example: Ruleset description type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit + name: + description: The ruleset name. + example: my-ai-ruleset type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title + short_description: + description: Base64-encoded short description of the ruleset. + example: Ruleset short description type: string + required: + - name + - short_description + - description type: object - DetailedFindingAttributes: - description: The JSON:API attributes of the detailed finding. + AiCustomRulesetUpdateAttributes: + description: Attributes for updating an AI custom ruleset. properties: - evaluation: - $ref: '#/components/schemas/FindingEvaluation' - evaluation_changed_at: - $ref: '#/components/schemas/FindingEvaluationChangedAt' - message: - description: The remediation message for this finding. - example: >- - ## Remediation - - - ### From the console - - - 1. Go to Storage Account - - 2. For each Storage Account, navigate to Data Protection - - 3. Select Set soft delete enabled and enter the number of days to - retain soft deleted data. + description: + description: Base64-encoded full description of the ruleset. + example: Ruleset description + type: string + name: + description: The ruleset name. + example: my-ai-ruleset + type: string + short_description: + description: Base64-encoded short description of the ruleset. + example: Ruleset short description type: string - mute: - $ref: '#/components/schemas/FindingMute' - resource: - $ref: '#/components/schemas/FindingResource' - resource_configuration: - description: The resource configuration for this finding. - type: object - resource_discovery_date: - $ref: '#/components/schemas/FindingResourceDiscoveryDate' - resource_type: - $ref: '#/components/schemas/FindingResourceType' - rule: - $ref: '#/components/schemas/FindingRule' - status: - $ref: '#/components/schemas/FindingStatus' - tags: - $ref: '#/components/schemas/FindingTags' type: object - FindingID: - description: The unique ID for this finding. - example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== - type: string - DetailedFindingType: - default: detailed_finding - description: >- - The JSON:API type for findings that have the message and resource - configuration. + AiCustomRuleRequestAttributes: + description: Attributes for creating an AI custom rule. + properties: + name: + description: The rule name. + example: my-ai-rule + type: string + type: object + AiCustomRuleDataType: + description: AI custom rule resource type. enum: - - detailed_finding - example: detailed_finding + - ai_rule + example: ai_rule type: string x-enum-varnames: - - DETAILED_FINDING - AssetAttributes: - description: The JSON:API attributes of the asset. + - AI_RULE + AiCustomRuleItem: + description: An AI custom rule embedded within a ruleset response. properties: - arch: - description: Asset architecture. - example: arm64 + created_at: + description: The creation timestamp. + example: '2024-01-01T00:00:00+00:00' + format: date-time type: string - environments: - description: List of environments where the asset is deployed. - example: - - staging + created_by: + description: The identifier of the user who created the rule. + example: example-handle + type: string + last_revision: + $ref: '#/components/schemas/AiCustomRuleRevisionResponseAttributes' + description: The most recent revision of the rule. + nullable: true + name: + description: The rule name. + example: my-ai-rule + type: string + required: + - name + - created_at + - created_by + - last_revision + type: object + AiCustomRuleRevisionResponseAttributes: + description: Response attributes of an AI custom rule revision. + properties: + category: + $ref: '#/components/schemas/CustomRuleRevisionAttributesCategory' + checksum: + description: Checksum of the revision content. + example: abc123def456 + type: string + content: + description: Base64-encoded AI model content for this revision. + example: Content + type: string + created_at: + description: The creation timestamp. + example: '2024-01-01T00:00:00+00:00' + format: date-time + type: string + created_by: + description: The identifier of the user who created the revision. + example: example-handle + type: string + cwe: + description: The associated CWE identifier. + example: '79' + nullable: true + type: string + description: + description: Base64-encoded full description. + example: Ruleset description + type: string + directories: + description: Directory patterns this rule applies to. + example: [] items: - example: staging type: string type: array - name: - description: Asset name. - example: github.com/DataDog/datadog-agent.git - type: string - operating_system: - $ref: '#/components/schemas/AssetOperatingSystem' - risks: - $ref: '#/components/schemas/AssetRisks' - teams: - description: List of teams that own the asset. + execution_mode: + $ref: '#/components/schemas/AiCustomRuleRevisionExecutionMode' + globs: + description: File glob patterns this rule applies to. example: - - compute + - '**/*.py' items: - example: compute type: string type: array - type: - $ref: '#/components/schemas/AssetType' - version: - $ref: '#/components/schemas/AssetVersion' + is_default: + description: Whether this is a default Datadog rule. + example: false + type: boolean + is_published: + description: Whether this revision is published. + example: false + type: boolean + is_testing: + description: Whether this revision is for testing only. + example: false + type: boolean + severity: + $ref: '#/components/schemas/CustomRuleRevisionAttributesSeverity' + short_description: + description: Base64-encoded short description. + example: Ruleset short description + type: string + version_id: + description: The version identifier for this revision. + example: 1 + format: int64 + type: integer required: - - name - - type - - risks - - environments + - version_id + - short_description + - description + - content + - globs + - directories + - execution_mode + - cwe + - checksum + - created_at + - created_by + - severity + - category + - is_published + - is_testing + - is_default type: object - AssetEntityType: - description: The JSON:API type. + AiCustomRuleRevisionDataType: + description: AI custom rule revision resource type. enum: - - assets - example: assets + - ai_rule_revision + example: ai_rule_revision type: string x-enum-varnames: - - ASSETS - SBOMAttributes: - description: The JSON:API attributes of the SBOM. + - AI_RULE_REVISION + AiCustomRuleRevisionRequestAttributes: + description: Attributes for creating an AI custom rule revision. properties: - bomFormat: - description: >- - Specifies the format of the BOM. This helps to identify the file as - CycloneDX since BOM do not have a filename convention nor does JSON - schema support namespaces. This value MUST be `CycloneDX`. - example: CycloneDX + category: + $ref: '#/components/schemas/CustomRuleRevisionAttributesCategory' + content: + description: Base64-encoded AI model content for this revision. + example: Content type: string - components: - description: A list of software and hardware components. + cwe: + description: The associated CWE identifier. + example: '79' + nullable: true + type: string + description: + description: Base64-encoded full description. + example: Ruleset description + type: string + directories: + description: Directory patterns this rule applies to. + example: [] items: - $ref: '#/components/schemas/SBOMComponent' + type: string type: array - dependencies: - description: List of dependencies between components of the SBOM. + execution_mode: + $ref: '#/components/schemas/AiCustomRuleRevisionExecutionMode' + globs: + description: File glob patterns this rule applies to. + example: + - '**/*.py' items: - $ref: '#/components/schemas/SBOMComponentDependency' - type: array - metadata: - $ref: '#/components/schemas/SBOMMetadata' - serialNumber: - description: >- - Every BOM generated has a unique serial number, even if the contents - of the BOM have not changed overt time. The serial number follows - [RFC-4122](https://datatracker.ietf.org/doc/html/rfc4122) - example: urn:uuid:f7119d2f-1vgh-24b5-91f0-12010db72da7 + type: string + type: array + is_published: + description: Whether this revision is published. + example: false + type: boolean + is_testing: + description: Whether this revision is for testing only. + example: false + type: boolean + severity: + $ref: '#/components/schemas/CustomRuleRevisionAttributesSeverity' + short_description: + description: Base64-encoded short description. + example: Ruleset short description type: string - specVersion: - $ref: '#/components/schemas/SpecVersion' - version: - description: It increments when a BOM is modified. The default value is 1. + version_id: + description: The version identifier for this revision. example: 1 format: int64 type: integer required: - - bomFormat - - specVersion - - components - - metadata - - serialNumber - - version - - dependencies + - short_description + - description + - content + - globs + - directories + - execution_mode + - severity + - category + - is_published + - is_testing type: object - SBOMType: - description: The JSON:API type. + SastRulesetDataAttributes: + description: The attributes of a SAST ruleset, including its name, description, and rules. + properties: + description: + description: A detailed description of the ruleset's purpose and the types of issues it targets. + example: A collection of Python best practice rules. + type: string + name: + description: The unique name of the ruleset. + example: python-best-practices + type: string + rules: + description: The list of static analysis rules included in this ruleset. + items: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItems' + type: array + short_description: + description: A brief summary of the ruleset, suitable for display in listings. + example: Python best practices ruleset. + type: string + required: + - name + - short_description + - description + - rules + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsDataType: + default: rulesets + description: Rulesets resource type. enum: - - sboms - example: sboms + - rulesets + example: rulesets type: string x-enum-varnames: - - SBOMS - NotificationRuleAttributes: - description: Attributes of the notification rule. + - RULESETS + CustomRulesetAttributes: + description: Attributes of a custom ruleset, including its name, description, and rules. properties: created_at: - $ref: '#/components/schemas/Date' + description: Creation timestamp + example: '2026-01-09T13:00:57.473141Z' + format: date-time + type: string created_by: - $ref: '#/components/schemas/RuleUser' - enabled: - $ref: '#/components/schemas/Enabled' - modified_at: - $ref: '#/components/schemas/Date' - modified_by: - $ref: '#/components/schemas/RuleUser' + description: Creator identifier + example: foobarbaz + type: string + description: + description: Base64-encoded full description + example: bG9uZyBkZXNjcmlwdGlvbg== + type: string name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - version: - $ref: '#/components/schemas/Version' + description: Ruleset name + example: my-ruleset + type: string + rules: + description: Rules in the ruleset + items: + $ref: '#/components/schemas/CustomRule' + nullable: true + type: array + short_description: + description: Base64-encoded short description + example: c2hvcnQgZGVzY3JpcHRpb24= + type: string required: + - name + - short_description + - description - created_at - created_by - - enabled - - modified_at - - modified_by - - name - - selectors - - targets - - version + - rules type: object - ID: - description: The ID of a notification rule. - example: aaa-bbb-ccc - type: string - NotificationRulesType: - description: The rule type associated to notification rules. + CustomRulesetDataType: + description: Resource type enum: - - notification_rules - example: notification_rules + - custom_ruleset + example: custom_ruleset type: string x-enum-varnames: - - NOTIFICATION_RULES - CreateNotificationRuleParametersDataAttributes: - description: Attributes of the notification rule create request. + - CUSTOM_RULESET + CustomRulesetRequestDataAttributes: + description: Attributes for creating or updating a custom ruleset. properties: - enabled: - $ref: '#/components/schemas/Enabled' + description: + description: Base64-encoded full description + type: string name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - required: - - selectors - - name - - targets + description: Ruleset name + type: string + rules: + description: Rules in the ruleset + items: + $ref: '#/components/schemas/CustomRule' + nullable: true + type: array + short_description: + description: Base64-encoded short description + type: string type: object - PatchNotificationRuleParametersDataAttributes: - description: >- - Attributes of the notification rule patch request. It is required to - update the version of the rule when patching it. + CustomRuleRequestDataAttributes: + description: Attributes for creating or updating a custom rule. properties: - enabled: - $ref: '#/components/schemas/Enabled' name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - version: - $ref: '#/components/schemas/Version' + description: Rule name + type: string type: object - VulnerabilityAttributes: - description: The JSON:API attributes of the vulnerability. + CustomRuleDataType: + description: Resource type + enum: + - custom_rule + example: custom_rule + type: string + x-enum-varnames: + - CUSTOM_RULE + CustomRule: + description: A custom static analysis rule within a ruleset. properties: - advisory_id: - description: Vulnerability advisory ID. - example: TRIVY-CVE-2023-0615 + created_at: + description: Creation timestamp + example: '2026-01-09T13:00:57.473141Z' + format: date-time type: string - code_location: - $ref: '#/components/schemas/CodeLocation' - cve_list: - description: Vulnerability CVE list. - example: - - CVE-2023-0615 + created_by: + description: Creator identifier + example: foobarbaz + type: string + last_revision: + $ref: '#/components/schemas/CustomRuleRevision' + description: Most recent revision + nullable: true + name: + description: Rule name + example: my-rule + type: string + required: + - name + - created_at + - created_by + - last_revision + type: object + CustomRuleRevisionAttributes: + description: Attributes of a custom rule revision, including code, metadata, and test cases. + properties: + arguments: + description: Rule arguments items: - example: CVE-2023-0615 - type: string + $ref: '#/components/schemas/Argument' type: array - cvss: - $ref: '#/components/schemas/VulnerabilityCvss' - dependency_locations: - $ref: '#/components/schemas/VulnerabilityDependencyLocations' + category: + $ref: '#/components/schemas/CustomRuleRevisionAttributesCategory' + checksum: + description: Code checksum + example: 8a66c4e4e631099ad71be3c1ea3ea8fc2d57193e56db2c296e2dd8a508b26b99 + type: string + code: + description: Rule code + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + created_at: + description: Creation timestamp + example: '2026-01-09T13:00:57.473141Z' + format: date-time + type: string + created_by: + description: Creator identifier + example: foobarbaz + type: string + creation_message: + description: Revision creation message + example: Initial revision + type: string + cve: + description: Associated CVE + example: CVE-2024-1234 + nullable: true + type: string + cwe: + description: Associated CWE + example: CWE-79 + nullable: true + type: string description: - description: Vulnerability description. - example: >- - LDAP Injection is a security vulnerability that occurs when - untrusted user input is improperly handled and directly incorporated - into LDAP queries without appropriate sanitization or validation. - This vulnerability enables attackers to manipulate LDAP queries and - potentially gain unauthorized access, modify data, or extract - sensitive information from the directory server. By exploiting the - LDAP injection vulnerability, attackers can execute malicious - commands, bypass authentication mechanisms, and perform unauthorized - actions within the directory service. + description: Full description + example: bG9uZyBkZXNjcmlwdGlvbg== type: string - ecosystem: - $ref: '#/components/schemas/VulnerabilityEcosystem' - exposure_time: - description: Vulnerability exposure time in seconds. - example: 5618604 - format: int64 - type: integer - first_detection: - description: >- - First detection of the vulnerability in [RFC - 3339](https://datatracker.ietf.org/doc/html/rfc3339) format - example: '2024-09-19T21:23:08.000Z' + documentation_url: + description: Documentation URL + example: https://docs.example.com/rules/my-rule + nullable: true type: string - fix_available: - description: Whether the vulnerability has a remediation or not. + is_published: + description: Whether the revision is published + example: false + type: boolean + is_testing: + description: Whether this is a testing revision example: false type: boolean language: - description: Vulnerability language. - example: ubuntu - type: string - last_detection: - description: >- - Last detection of the vulnerability in [RFC - 3339](https://datatracker.ietf.org/doc/html/rfc3339) format - example: '2024-09-01T21:23:08.000Z' + $ref: '#/components/schemas/Language' + severity: + $ref: '#/components/schemas/CustomRuleRevisionAttributesSeverity' + short_description: + description: Short description + example: c2hvcnQgZGVzY3JpcHRpb24= type: string - library: - $ref: '#/components/schemas/Library' - origin: - description: Vulnerability origin. + should_use_ai_fix: + description: Whether to use AI for fixes + example: false + type: boolean + tags: + description: Rule tags example: - - agentless-scanner + - security + - custom items: - example: agentless-scanner + description: A tag attached to the rule. type: string type: array - remediations: - description: List of remediations. - items: - $ref: '#/components/schemas/Remediation' - type: array - repo_digests: - description: >- - Vulnerability `repo_digest` list (when the vulnerability is related - to `Image` asset). + tests: + description: Rule tests items: - example: >- - sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - type: string + $ref: '#/components/schemas/CustomRuleRevisionTest' type: array - risks: - $ref: '#/components/schemas/VulnerabilityRisks' - status: - $ref: '#/components/schemas/VulnerabilityStatus' - title: - description: Vulnerability title. - example: LDAP Injection + tree_sitter_query: + description: Tree-sitter query + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== type: string - tool: - $ref: '#/components/schemas/VulnerabilityTool' - type: - $ref: '#/components/schemas/VulnerabilityType' required: - - type - - cvss - - status - - tool - - title + - creation_message + - short_description - description - - cve_list - - risks + - code + - checksum - language - - first_detection - - last_detection - - exposure_time - - remediations - - fix_available - - origin - type: object - VulnerabilityRelationships: - description: Related entities object. - properties: - affects: - $ref: '#/components/schemas/VulnerabilityRelationshipsAffects' - required: - - affects - type: object - VulnerabilitiesType: - description: The JSON:API type. + - tree_sitter_query + - created_at + - created_by + - severity + - category + - cve + - cwe + - arguments + - tests + - tags + - is_published + - should_use_ai_fix + - documentation_url + - is_testing + type: object + CustomRuleRevisionDataType: + description: Resource type enum: - - vulnerabilities - example: vulnerabilities + - custom_rule_revision + example: custom_rule_revision type: string - x-enum-varnames: - - VULNERABILITIES - CloudWorkloadSecurityAgentRuleAttributes: - description: A Cloud Workload Security Agent rule returned by the API - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - agentConstraint: - description: The version of the Agent - type: string - blocking: - description: The blocking policies that the rule belongs to + x-enum-varnames: + - CUSTOM_RULE_REVISION + CustomRuleRevisionInputAttributes: + description: Input attributes for creating or updating a custom rule revision. + properties: + arguments: + description: Rule arguments items: - type: string + $ref: '#/components/schemas/Argument' type: array category: - description: The category of the Agent rule - example: Process Activity + $ref: '#/components/schemas/CustomRuleRevisionAttributesCategory' + code: + description: Rule code + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + creation_message: + description: Revision creation message + example: Initial revision + type: string + cve: + description: Associated CVE + example: CVE-2024-1234 + nullable: true type: string - creationAuthorUuId: - description: The ID of the user who created the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 + cwe: + description: Associated CWE + example: CWE-79 + nullable: true type: string - creationDate: - description: When the Agent rule was created, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - creator: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreatorAttributes' - defaultRule: - description: Whether the rule is included by default - example: false - type: boolean description: - description: The description of the Agent rule - example: My Agent rule + description: Full description + example: bG9uZyBkZXNjcmlwdGlvbg== type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true + documentation_url: + description: Documentation URL + example: https://docs.example.com/rules/my-rule + nullable: true + type: string + is_published: + description: Whether the revision is published + example: false type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" + is_testing: + description: Whether this is a testing revision + example: false + type: boolean + language: + $ref: '#/components/schemas/Language' + severity: + $ref: '#/components/schemas/CustomRuleRevisionAttributesSeverity' + short_description: + description: Short description + example: c2hvcnQgZGVzY3JpcHRpb24= type: string - filters: - description: The platforms the Agent rule is supported on + should_use_ai_fix: + description: Whether to use AI for fixes + example: false + type: boolean + tags: + description: Rule tags + example: + - security + - custom items: + description: A tag attached to the rule. type: string type: array - monitoring: - description: The monitoring policies that the rule belongs to + tests: + description: Rule tests items: - type: string + $ref: '#/components/schemas/CustomRuleRevisionTest' type: array - name: - description: The name of the Agent rule - example: my_agent_rule + tree_sitter_query: + description: Tree-sitter query + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - updateAuthorUuId: - description: The ID of the user who updated the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 + required: + - creation_message + - short_description + - description + - code + - language + - tree_sitter_query + - severity + - category + - cve + - cwe + - arguments + - tests + - tags + - is_published + - should_use_ai_fix + - documentation_url + - is_testing + type: object + RevertCustomRuleRevisionRequestDataAttributes: + description: Attributes specifying the current and target revision IDs for a revert operation. + properties: + currentRevision: + description: Current revision ID + type: string + revertToRevision: + description: Target revision ID to revert to type: string - updateDate: - description: Timestamp in milliseconds when the Agent rule was last updated - example: 1624366480320 - format: int64 - type: integer - updatedAt: - description: When the Agent rule was last updated, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - updater: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdaterAttributes' - version: - description: The version of the Agent rule - example: 23 - format: int64 - type: integer type: object - CloudWorkloadSecurityAgentRuleType: - default: agent_rule - description: The type of the resource, must always be `agent_rule` + RevertCustomRuleRevisionDataType: + description: Request type enum: - - agent_rule - example: agent_rule + - revert_custom_rule_revision_request type: string x-enum-varnames: - - AGENT_RULE - CloudWorkloadSecurityAgentRuleCreateAttributes: - description: Create a new Cloud Workload Security Agent rule. + - REVERT_CUSTOM_RULE_REVISION_REQUEST + DefaultRulesetsPerLanguageDataAttributes: + description: The attributes of the default rulesets per language response, containing the list of default ruleset names. properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to + rulesets: + description: The list of default ruleset names for the specified programming language. + example: + - python-best-practices items: type: string type: array - description: - description: The description of the Agent rule. - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to + required: + - rulesets + type: object + DefaultRulesetsPerLanguageDataType: + default: defaultRulesetsPerLanguage + description: Default rulesets per language resource type. + enum: + - defaultRulesetsPerLanguage + example: defaultRulesetsPerLanguage + type: string + x-enum-varnames: + - DEFAULT_RULESETS_PER_LANGUAGE + GetMultipleRulesetsRequestDataAttributes: + description: The request attributes for fetching multiple rulesets, specifying which rulesets to retrieve and what data to include. + properties: + include_testing_rules: + description: When true, rules that are available in testing mode are included in the response. + type: boolean + include_tests: + description: When true, test cases associated with each rule are included in the response. + type: boolean + rulesets: + description: The list of ruleset names to retrieve. items: + description: The name of a ruleset to include in the batch request. type: string type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule. - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on + type: object + GetMultipleRulesetsRequestDataType: + default: get_multiple_rulesets_request + description: Get multiple rulesets request resource type. + enum: + - get_multiple_rulesets_request + example: get_multiple_rulesets_request + type: string + x-enum-varnames: + - GET_MULTIPLE_RULESETS_REQUEST + GetMultipleRulesetsResponseDataAttributes: + description: The attributes of the get-multiple-rulesets response, containing the list of requested rulesets. + properties: + rulesets: + description: The list of rulesets returned in response to the batch request. items: - type: string + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItems' type: array - monitoring: - description: The monitoring policies that the rule belongs to + type: object + GetMultipleRulesetsResponseDataType: + default: get_multiple_rulesets_response + description: Get multiple rulesets response resource type. + enum: + - get_multiple_rulesets_response + example: get_multiple_rulesets_response + type: string + x-enum-varnames: + - GET_MULTIPLE_RULESETS_RESPONSE + SecretRuleDataAttributes: + description: The attributes of a secret detection rule, including its pattern, priority, and validation configuration. + properties: + default_included_keywords: + description: A list of keywords that are included by default when scanning for secrets matching this rule. items: + description: A keyword used to narrow down secret detection to relevant contexts. type: string type: array + description: + description: A detailed explanation of what type of secret this rule detects. + type: string + license: + description: The license under which this secret rule is distributed. + type: string + match_validation: + $ref: '#/components/schemas/SecretRuleDataAttributesMatchValidation' name: - description: The name of the Agent rule. - example: my_agent_rule + description: The unique name of the secret detection rule. type: string - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b + pattern: + description: The regular expression pattern used to identify potential secrets in source code or configuration. type: string - product_tags: - description: The list of product tags associated with the rule + priority: + description: The priority level of this rule, used to rank findings when multiple rules match. + type: string + sds_id: + description: The identifier of the corresponding Sensitive Data Scanner rule, if one exists. + type: string + validators: + description: A list of validator identifiers used to further confirm a detected secret is genuine. items: + description: A validator identifier applied to refine secret detection accuracy. type: string type: array + type: object + SecretRuleDataType: + default: secret_rule + description: Secret rule resource type. + enum: + - secret_rule + example: secret_rule + type: string + x-enum-varnames: + - SECRET_RULE + AnalysisRequestDataAttributes: + description: The attributes of the analysis request, containing the source code and rules to apply. + properties: + code: + description: The base64-encoded source code to analyze. + example: aW1wb3J0IHN5cw== + type: string + file_encoding: + description: The encoding of the source code file (must be `utf-8`). + example: utf-8 + type: string + filename: + description: The name of the file being analyzed. + example: test.py + type: string + language: + description: The programming language of the source code. + example: python + type: string + rules: + description: The list of static analysis rules to apply during analysis. + items: + $ref: '#/components/schemas/AnalysisRequestRule' + type: array required: - - name - - expression + - code + - file_encoding + - filename + - language + - rules type: object - CloudWorkloadSecurityAgentRuleUpdateAttributes: - description: Update an existing Cloud Workload Security Agent rule + AnalysisRequestDataType: + default: analysis_request + description: Analysis request resource type. + enum: + - analysis_request + example: analysis_request + type: string + x-enum-varnames: + - ANALYSIS_REQUEST + AnalysisResponseDataAttributes: + description: The attributes of the analysis response, containing rule results and any top-level errors. properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to + errors: + description: Top-level error messages encountered during the analysis operation. + example: [] items: type: string type: array - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to + rule_responses: + description: The list of results for each static analysis rule applied during analysis. items: - type: string + $ref: '#/components/schemas/AnalysisRuleResponse' type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" + required: + - rule_responses + - errors + type: object + AnalysisResponseDataType: + default: server_request + description: Analysis response resource type. + enum: + - server_request + example: server_request + type: string + x-enum-varnames: + - SERVER_REQUEST + GetAstRequestDataAttributes: + description: The attributes of the get-AST request, containing the source code to parse. + properties: + code: + description: The base64-encoded source code to parse into an abstract syntax tree. + example: aW1wb3J0IHN5cw== type: string - monitoring: - description: The monitoring policies that the rule belongs to + file_encoding: + description: The encoding of the source code file (must be utf-8). + example: utf-8 + type: string + language: + description: The programming language of the source code to parse. + example: python + type: string + required: + - code + - file_encoding + - language + type: object + GetAstRequestDataType: + default: get_ast_request + description: Get AST request resource type. + enum: + - get_ast_request + example: get_ast_request + type: string + x-enum-varnames: + - GET_AST_REQUEST + GetAstResponseDataAttributes: + description: The attributes of the get-AST response, containing the parsed abstract syntax tree. + properties: + ast: + additionalProperties: {} + description: The parsed abstract syntax tree as a JSON object. + type: object + required: + - ast + type: object + GetAstResponseDataType: + default: get_ast_response + description: Get AST response resource type. + enum: + - get_ast_response + example: get_ast_response + type: string + x-enum-varnames: + - GET_AST_RESPONSE + NodeTypesResponseDataAttributes: + description: The attributes of the node types response, containing the list of node type definitions for the requested language. + properties: + node_types: + description: The list of tree-sitter node type definitions for the language. items: - type: string + $ref: '#/components/schemas/NodeType' type: array - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule + required: + - node_types + type: object + NodeTypesResponseDataType: + default: get_node_types_response + description: Get node types response resource type. + enum: + - get_node_types_response + example: get_node_types_response + type: string + x-enum-varnames: + - GET_NODE_TYPES_RESPONSE + CustomFrameworkRequirement: + description: Framework Requirement. + properties: + controls: + description: Requirement Controls. items: - type: string + $ref: '#/components/schemas/CustomFrameworkControl' type: array + name: + description: Requirement Name. + example: criteria + type: string + required: + - name + - controls + type: object + RuleBasedViewRules: + description: List of rules in the rule-based view. + items: + $ref: '#/components/schemas/RuleBasedViewRule' + type: array + CsmCoverageAnalysis: + description: CSM Coverage Analysis. + properties: + configured_resources_count: + description: The number of fully configured resources. + example: 8 + format: int64 + type: integer + coverage: + description: The coverage percentage. + example: 0.8 + format: double + type: number + partially_configured_resources_count: + description: The number of partially configured resources. + example: 0 + format: int64 + type: integer + total_resources_count: + description: The total number of resources. + example: 10 + format: int64 + type: integer type: object - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3dd-0uc-h1s + OwnershipConfidenceLevel: + description: The ownership confidence level. + enum: + - high + - medium + - low + example: high type: string - SecurityFilterAttributes: - description: The object describing a security filter. + x-enum-varnames: + - HIGH + - MEDIUM + - LOW + OwnershipInferenceItems: + description: The list of inferences for a resource, with one inference per owner type. + items: + $ref: '#/components/schemas/OwnershipInferenceItem' + type: array + OwnershipHistoryItems: + description: The list of history entries returned for this page. + items: + $ref: '#/components/schemas/OwnershipHistoryItem' + type: array + OwnershipHistoryPagination: + description: Cursor-based pagination metadata for the history response. properties: - exclusion_filters: - description: The list of exclusion filters applied in this security filter. - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilterResponse' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_builtin: - description: Whether the security filter is the built-in filter. + has_more: + description: Whether more history entries are available beyond this page. example: false type: boolean - is_enabled: - description: Whether the security filter is enabled. - example: false - type: boolean - name: - description: The security filter name. - example: Custom security filter - type: string - query: - description: >- - The security filter query. Logs accepted by this query will be - accepted by this filter. - example: service:api + next_cursor: + description: An opaque, base64-encoded cursor token. Pass it as the `cursor` query parameter to retrieve the next page. Absent or `null` when there are no further pages. + example: eyJpZCI6OTh9 + nullable: true type: string - version: - description: The version of the security filter. - example: 1 - format: int32 - maximum: 2147483647 - type: integer + required: + - has_more type: object - SecurityFilterID: - description: The ID of the security filter. - example: 3dd-0uc-h1s + OwnershipEvidenceVersions: + description: The list of evidence versions associated with an inference. + example: + - pipeline_id: p1 + version: v3 + items: + $ref: '#/components/schemas/OwnershipEvidenceVersion' + nullable: true + type: array + OwnershipInferenceSources: + description: The list of sources backing an ownership inference. Empty when the inference status is not whitelisted to expose sources. + example: + - kind: code_owners + items: + $ref: '#/components/schemas/OwnershipInferenceSource' + type: array + OwnershipInferenceStatus: + description: The lifecycle status of an ownership inference. + enum: + - suggested + - persisted + - overridden + - failed + - unknown + example: suggested type: string - SecurityFilterType: - default: security_filters - description: The type of the resource. The value should always be `security_filters`. + x-enum-varnames: + - SUGGESTED + - PERSISTED + - OVERRIDDEN + - FAILED + - UNKNOWN + OwnershipFeedbackAction: + description: The feedback action to apply to an inference. enum: - - security_filters - example: security_filters + - confirm + - reject + - correct + - persist + example: confirm type: string x-enum-varnames: - - SECURITY_FILTERS - SecurityFilterCreateAttributes: - description: Object containing the attributes of the security filter to be created. + - CONFIRM + - REJECT + - CORRECT + - PERSIST + CsmAgentlessHostAttributes: + description: Attributes of an agentless host. properties: - exclusion_filters: - description: Exclusion filters to exclude some logs from the security filter. - example: - - name: Exclude staging - query: source:staging - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilter' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_enabled: - description: Whether the security filter is enabled. + account_id: + description: The ID of the cloud account that the host belongs to. + example: '123456789012' + type: string + cloud_provider: + $ref: '#/components/schemas/CsmCloudProvider' + has_posture_management: + description: Whether CSM Misconfigurations is enabled for this host. `true` if enabled; `false` if disabled. example: true type: boolean - name: - description: The name of the security filter. - example: Custom security filter - type: string - query: - description: The query of the security filter. - example: service:api - type: string + has_vulnerability_scanning: + description: Whether CSM Vulnerabilities is enabled for this host. `true` if enabled; `false` if disabled. + example: true + type: boolean + resource_type: + $ref: '#/components/schemas/CsmAgentlessHostResourceType' required: - - name - - query - - exclusion_filters - - filtered_data_type - - is_enabled + - account_id + - cloud_provider + - resource_type + - has_posture_management + - has_vulnerability_scanning type: object - SecurityFilterUpdateAttributes: - description: The security filters properties to be updated. + CsmAgentlessHostType: + default: agentless_host + description: The JSON:API type for agentless host resources. The value should always be `agentless_host`. + enum: + - agentless_host + example: agentless_host + type: string + x-enum-varnames: + - AGENTLESS_HOST + CsmHostFacetInfoItems: + description: The list of facet value entries for the current page. + items: + $ref: '#/components/schemas/CsmHostFacetInfoItem' + type: array + CsmAgentlessHostFacetAttributes: + description: Attributes of an agentless host facet. properties: - exclusion_filters: - description: Exclusion filters to exclude some logs from the security filter. - example: [] - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilter' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_enabled: - description: Whether the security filter is enabled. + bounded: + description: Whether the facet has a bounded set of allowed values. `true` indicates a fixed value set and `false` indicates free-form values. example: true type: boolean + bundled: + description: Whether the facet is bundled as part of the default facet set. `true` indicates bundled and `false` indicates custom. + example: true + type: boolean + bundledAndUsed: + description: Whether the facet is both bundled and actively used. `true` indicates in use; `false` indicates unused. + example: true + type: boolean + defaultValues: + $ref: '#/components/schemas/CsmHostFacetDefaultValues' + description: + description: A human-readable description of what the facet represents. + example: The cloud provider of the resource + type: string + editable: + description: Whether the facet can be edited by users. `true` indicates editable; `false` indicates read-only. + example: false + type: boolean + facetType: + description: The UI display type for the facet, such as `list`. + example: list + type: string + groups: + $ref: '#/components/schemas/CsmHostFacetGroups' name: - description: The name of the security filter. - example: Custom security filter + description: The display name of the facet. + example: Cloud Provider type: string - query: - description: The query of the security filter. - example: service:api + path: + description: The field path used when filtering by this facet. + example: cloud_provider type: string - version: - description: The version of the security filter to update. - example: 1 - format: int32 - maximum: 2147483647 - type: integer + source: + description: The data source that provides the facet values. + example: core + type: string + type: + description: The data type of the facet values. + example: string + type: string + values: + $ref: '#/components/schemas/CsmHostFacetValues' + required: + - name + - path + - description + - groups + - bounded + - bundled + - bundledAndUsed + - defaultValues + - editable + - facetType + - source + - type + - values type: object - SecurityMonitoringSuppressionAttributes: - description: The attributes of the suppression rule. + CsmAgentlessHostFacetType: + default: agentless_host_facet + description: The JSON:API type for agentless host facet resources. The value should always be `agentless_host_facet`. + enum: + - agentless_host_facet + example: agentless_host_facet + type: string + x-enum-varnames: + - AGENTLESS_HOST_FACET + CsmUnifiedHostAttributes: + description: Attributes of a unified host, combining data from agent and agentless sources. properties: - creation_date: - description: >- - A Unix millisecond timestamp given the creation date of the - suppression rule. - format: int64 - type: integer - creator: - $ref: '#/components/schemas/SecurityMonitoringUser' - data_exclusion_query: - description: >- - An exclusion query on the input data of the security rules, which - could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any - detection rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. + account_id: + description: The ID of the cloud account that the host belongs to. Present only when the host was discovered through agentless scanning. + example: '123456789012' + nullable: true type: string - editable: - description: Whether the suppression rule is editable. + agent_csm_vm_containers_enabled: + description: Whether CSM Vulnerabilities is enabled for containers through the Datadog Agent. `true` if enabled; `false` if disabled. + example: false + nullable: true + type: boolean + agent_csm_vm_hosts_enabled: + description: Whether CSM Vulnerabilities is enabled for hosts through the Datadog Agent. `true` if enabled; `false` if disabled. example: true + nullable: true type: boolean - enabled: - description: Whether the suppression rule is enabled. + agent_cws_enabled: + description: Whether CSM Threats is enabled for this host through the Datadog Agent. `true` if enabled; `false` if disabled. + example: false + nullable: true + type: boolean + agent_posture_management: + description: Whether CSM Misconfigurations is enabled for this host through the Datadog Agent. `true` if enabled; `false` if disabled. example: true + nullable: true type: boolean - expiration_date: - description: >- - A Unix millisecond timestamp giving an expiration date for the - suppression rule. After this date, it won't suppress signals - anymore. - example: 1703187336000 - format: int64 - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression + agent_version: + description: The version of the Datadog Agent running on this host. + example: 7.50.0 + nullable: true type: string - rule_query: - description: >- - The rule query of the suppression rule, with the same syntax as the - search bar for detection rules. - example: type:log_detection source:cloudtrail + agentless_posture_management: + description: Whether CSM Misconfigurations is enabled for this host via agentless scanning. `true` if enabled; `false` if disabled. + example: false + nullable: true + type: boolean + agentless_vulnerability_scanning: + description: Whether CSM Vulnerabilities is enabled for this host via agentless scanning. `true` if enabled; `false` if disabled. + example: true + nullable: true + type: boolean + cloud_provider: + $ref: '#/components/schemas/CsmCloudProvider' + cluster_name: + description: The name of the Kubernetes cluster the host belongs to, if applicable. + example: my-cluster + nullable: true type: string - start_date: - description: >- - A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. - example: 1703187336000 - format: int64 - type: integer - suppression_query: - description: >- - The suppression query of the suppression rule. If a signal matches - this query, it is suppressed and not triggered. Same syntax as the - queries to search signals in the signal explorer. - example: env:staging status:low + datadog_agent_key: + description: The Datadog Agent key associated with this host. Present only for agent-sourced hosts. + example: key123 + nullable: true type: string - update_date: - description: >- - A Unix millisecond timestamp given the update date of the - suppression rule. + env: + description: The list of environment tags associated with this host. + example: + - prod + items: + type: string + nullable: true + type: array + host_id: + description: The internal Datadog host identifier. Present only for agent-sourced hosts. + example: 12345678 format: int64 + nullable: true type: integer - updater: - $ref: '#/components/schemas/SecurityMonitoringUser' - version: - description: >- - The version of the suppression rule; it starts at 1, and is - incremented at each update. - example: 42 - format: int32 - maximum: 2147483647 - type: integer + install_method_tool: + description: The tool used to install the Datadog Agent on this host. + example: helm + nullable: true + type: string + os: + description: The operating system of the host. Present only for agent-sourced hosts. + example: linux + nullable: true + type: string + resource_type: + $ref: '#/components/schemas/CsmAgentlessHostResourceType' + source: + $ref: '#/components/schemas/CsmUnifiedHostSource' + required: + - source + type: object + CsmUnifiedHostType: + default: unified_host + description: The JSON:API type for unified host resources. The value should always be `unified_host`. + enum: + - unified_host + example: unified_host + type: string + x-enum-varnames: + - UNIFIED_HOST + CsmUnifiedHostFacetType: + default: unified_host_facet + description: The JSON:API type for unified host facet resources. The value should always be `unified_host_facet`. + enum: + - unified_host_facet + example: unified_host_facet + type: string + x-enum-varnames: + - UNIFIED_HOST_FACET + FindingAttributes: + description: The JSON:API attributes of the finding. + properties: + datadog_link: + $ref: '#/components/schemas/FindingDatadogLink' + description: + $ref: '#/components/schemas/FindingDescription' + evaluation: + $ref: '#/components/schemas/FindingEvaluation' + evaluation_changed_at: + $ref: '#/components/schemas/FindingEvaluationChangedAt' + external_id: + $ref: '#/components/schemas/FindingExternalId' + mute: + $ref: '#/components/schemas/FindingMute' + resource: + $ref: '#/components/schemas/FindingResource' + resource_discovery_date: + $ref: '#/components/schemas/FindingResourceDiscoveryDate' + resource_type: + $ref: '#/components/schemas/FindingResourceType' + rule: + $ref: '#/components/schemas/FindingRule' + status: + $ref: '#/components/schemas/FindingStatus' + tags: + $ref: '#/components/schemas/FindingTags' + vulnerability_type: + $ref: '#/components/schemas/FindingVulnerabilityType' type: object - SecurityMonitoringSuppressionID: - description: The ID of the suppression rule. - example: 3dd-0uc-h1s - type: string - SecurityMonitoringSuppressionType: - default: suppressions - description: The type of the resource. The value should always be `suppressions`. + FindingType: + default: finding + description: The JSON:API type for findings. enum: - - suppressions - example: suppressions + - finding + example: finding type: string x-enum-varnames: - - SUPPRESSIONS - SecurityMonitoringSuppressionCreateAttributes: - description: Object containing the attributes of the suppression rule to be created. + - FINDING + FindingEvaluationChangedAt: + description: The date on which the evaluation for this finding changed (Unix ms). + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + FindingMute: + additionalProperties: false + description: Information about the mute status of this finding. properties: - data_exclusion_query: - description: >- - An exclusion query on the input data of the security rules, which - could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any - detection rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. + description: Additional information about the reason why this finding is muted or unmuted. + example: To be resolved later type: string - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean expiration_date: - description: >- - A Unix millisecond timestamp giving an expiration date for the - suppression rule. After this date, it won't suppress signals - anymore. - example: 1703187336000 + description: The expiration date of the mute or unmute action (Unix ms). + example: 1778721573794 format: int64 type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: >- - The rule query of the suppression rule, with the same syntax as the - search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string + muted: + description: Whether this finding is muted or unmuted. + example: true + type: boolean + reason: + $ref: '#/components/schemas/FindingMuteReason' start_date: - description: >- - A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. - example: 1703187336000 + description: The start of the mute period. + example: 1678721573794 format: int64 type: integer - suppression_query: - description: >- - The suppression query of the suppression rule. If a signal matches - this query, it is suppressed and is not triggered. It uses the same - syntax as the queries to search signals in the Signals Explorer. - example: env:staging status:low + uuid: + description: The ID of the user who muted or unmuted this finding. + example: e51c9744-d158-11ec-ad23-da7ad0900002 type: string - required: - - name - - enabled - - rule_query type: object - SecurityMonitoringRuleCaseCreate: - description: Case when signal is generated. + FindingResource: + description: The resource name of this finding. + example: my_resource_name + type: string + FindingResourceDiscoveryDate: + description: The date on which the resource was discovered (Unix ms). + example: 1678721573794 + format: int64 + minimum: 1 + type: integer + FindingResourceType: + description: The resource type of this finding. + example: azure_storage_account + type: string + FindingRule: + additionalProperties: false + description: The rule that triggered this finding. properties: - actions: - description: Action to perform for each rule case. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' - type: array - condition: - description: >- - A case contains logical operations (`>`,`>=`, `&&`, `||`) to - determine if a signal should be generated - - based on the event counts in the previously defined queries. + id: + description: The ID of the rule that triggered this finding. + example: dv2-jzf-41i type: string name: - description: Name of the case. + description: The name of the rule that triggered this finding. + example: Soft delete is enabled for Azure Storage type: string - notifications: - description: Notification targets. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' + type: object + FindingTags: + description: The tags associated with this finding. + example: + - cloud_provider:aws + - myTag:myValue + items: + description: The list of tags. + type: string + type: array + SecurityEntityConfigRisks: + description: Configuration risks associated with the entity + properties: + hasIdentityRisk: + description: Whether the entity has identity risks + example: false + type: boolean + hasMisconfiguration: + description: Whether the entity has misconfigurations + example: true + type: boolean + hasPrivilegedRole: + description: Whether the entity has privileged roles + example: true + type: boolean + isPrivileged: + description: Whether the entity has privileged access + example: false + type: boolean + isProduction: + description: Whether the entity is in a production environment + example: true + type: boolean + isPubliclyAccessible: + description: Whether the entity is publicly accessible + example: true + type: boolean required: - - status + - hasMisconfiguration + - hasIdentityRisk + - isPubliclyAccessible + - isProduction + - hasPrivilegedRole + - isPrivileged type: object - SecurityMonitoringStandardRuleQuery: - description: Query for matching rule. + SecurityEntityMetadata: + description: Metadata about the entity from cloud providers properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - customQueryExtension: - description: Query extension to append to the logs query. - example: a > 3 + accountID: + description: Cloud account ID (AWS) + example: '123456789012' type: string - dataSource: - $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. + environments: + description: Environment tags associated with the entity + example: + - production + - us-east-1 items: - description: Field. + description: An environment tag associated with the entity. type: string type: array - hasOptionalGroupByFields: - default: false - description: >- - When false, events without a group-by value are ignored by the rule. - When true, events with missing group-by fields are processed with - `N/A`, replacing the missing values. - example: false - type: boolean - index: - description: >- - **This field is currently unstable and might be removed in a minor - version upgrade.** - - The index to run the query on, if the `dataSource` is `logs`. Only - used for scheduled rules - in other words, when the - `schedulingOptions` field is present in the rule payload. - type: string - metric: - deprecated: true - description: >- - (Deprecated) The target field to aggregate over when using the sum - or max - - aggregations. `metrics` field should be used instead. - type: string - metrics: - description: >- - Group of target fields to aggregate over when using the sum, max, - geo data, or new value aggregations. The sum, max, and geo data - aggregations only accept one value in this list, whereas the new - value aggregation accepts up to five values. + mitreTactics: + description: MITRE ATT&CK tactics detected + example: + - Credential Access + - Privilege Escalation items: - description: Field. + description: Detected MITRE ATT&CK tactic type: string type: array - name: - description: Name of the query. - type: string - query: - description: Query to run on logs. - example: a > 3 - type: string - type: object - SecurityMonitoringThirdPartyRuleCaseCreate: - description: Case when a signal is generated by a third party rule. - properties: - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each case. + mitreTechniques: + description: MITRE ATT&CK techniques detected + example: + - T1078 + - T1098 items: - description: Notification. + description: Detected MITRE ATT&CK technique type: string type: array - query: - description: A query to map a third party event to this case. + projectID: + description: Cloud project ID (GCP) + example: my-gcp-project type: string - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - SecurityMonitoringRuleTypeCreate: - description: The rule type. - enum: - - api_security - - application_security - - log_detection - - workload_security - type: string - x-enum-varnames: - - API_SECURITY - - APPLICATION_SECURITY - - LOG_DETECTION - - WORKLOAD_SECURITY - SecurityMonitoringSignalRuleQuery: - description: Query for matching rule on signals. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - correlatedByFields: - description: Fields to group by. + services: + description: Services associated with the entity + example: + - api-gateway + - lambda items: - description: Field. + description: A service name associated with the entity. type: string type: array - correlatedQueryIndex: - description: Index of the rule query used to retrieve the correlated field. - format: int32 - maximum: 9 - type: integer - metrics: - description: Group of target fields to aggregate over. + sources: + description: Data sources that detected this entity + example: + - cloudtrail + - cloud-security-posture-management items: - description: Field. + description: A data source identifier. type: string type: array - name: - description: Name of the query. - type: string - ruleId: - description: Rule ID to match on signals. - example: org-ru1-e1d + subscriptionID: + description: Cloud subscription ID (Azure) + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 type: string required: - - ruleId + - sources + - environments + - services + - mitreTactics + - mitreTechniques type: object - SecurityMonitoringSignalRuleType: - description: The rule type. + SecurityEntityRiskScoreAttributesSeverity: + description: Severity level based on risk score enum: - - signal_correlation + - critical + - high + - medium + - low + - info + example: critical type: string x-enum-varnames: - - SIGNAL_CORRELATION - CloudConfigurationRuleCaseCreate: - description: Description of signals. + - CRITICAL + - HIGH + - MEDIUM + - LOW + - INFO + Findings: + description: A list of security findings. properties: - notifications: - description: Notification targets for each rule case. + data: + description: Array of security finding data objects. items: - description: Notification. - type: string + $ref: '#/components/schemas/FindingData' type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status type: object - CloudConfigurationRuleOptions: - description: Options on cloud configuration rules. + DueDateRuleAction: + description: The action to take when the due date rule matches a finding. properties: - complianceRuleOptions: - $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' + due_days_per_severity: + $ref: '#/components/schemas/DueDatePerSeverityList' + due_from: + $ref: '#/components/schemas/DueDateFrom' + reason_description: + description: An optional description providing more context for the due date assignment. + example: Applied for production findings only + maxLength: 20000 + type: string required: - - complianceRuleOptions + - due_days_per_severity + - due_from type: object - CloudConfigurationRuleType: - description: The rule type. - enum: - - cloud_configuration - type: string - x-enum-varnames: - - CLOUD_CONFIGURATION - SecurityMonitoringSuppressionUpdateAttributes: - description: The suppression rule properties to be updated. + AutomationRuleScope: + description: Defines the scope of findings to which the automation rule applies. properties: - data_exclusion_query: - description: >- - An exclusion query on the input data of the security rules, which - could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any - detection rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 + finding_types: + $ref: '#/components/schemas/SecurityFindingTypes' + query: + description: A search query to further filter the findings matched by this rule. The `@workflow.*` namespace and `@status` fields are not permitted. For a reference of available fields, see the [Security Findings schema documentation](https://docs.datadoghq.com/security/guide/findings-schema/). + example: env:prod team:platform + maxLength: 30000 type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. + required: + - finding_types + type: object + AutomationRuleCreatedBy: + description: The user or Datadog system who created the rule. + properties: + id: + description: The actor's identifier (a user UUID or a system identifier). + example: 00000000-0000-0000-0000-000000000000 type: string - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: >- - A Unix millisecond timestamp giving an expiration date for the - suppression rule. After this date, it won't suppress signals - anymore. If unset, the expiration date of the suppression rule is - left untouched. If set to `null`, the expiration date is removed. - example: 1703187336000 - format: int64 - nullable: true - type: integer name: - description: The name of the suppression rule. - example: Custom suppression + description: The name of the actor. + example: Jane Doe type: string - rule_query: - description: >- - The rule query of the suppression rule, with the same syntax as the - search bar for detection rules. - example: type:log_detection source:cloudtrail + type: + $ref: '#/components/schemas/AutomationRuleActorType' + required: + - type + - id + - name + type: object + AutomationRuleModifiedBy: + description: The user or Datadog system who last modified the rule. + properties: + id: + description: The actor's identifier (a user UUID or a system identifier). + example: 00000000-0000-0000-0000-000000000000 type: string - start_date: - description: >- - A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. If - unset, the start date of the suppression rule is left untouched. If - set to `null`, the start date is removed. - example: 1703187336000 - format: int64 - nullable: true - type: integer - suppression_query: - description: >- - The suppression query of the suppression rule. If a signal matches - this query, it is suppressed and not triggered. Same syntax as the - queries to search signals in the signal explorer. - example: env:staging status:low + name: + description: The name of the actor. + example: Jane Doe type: string - version: - description: >- - The current version of the suppression. This is optional, but it can - help prevent concurrent modifications. - format: int32 - maximum: 2147483647 - type: integer + type: + $ref: '#/components/schemas/AutomationRuleActorType' + required: + - type + - id + - name type: object - Pagination: - description: Pagination object. + MuteRuleAction: + description: The action to take when the mute rule matches a finding. properties: - total_count: - description: Total count. - format: int64 - type: integer - total_filtered_count: - description: Total count of elements matched by the filter. + expire_at: + description: The Unix timestamp in milliseconds at which the mute expires. If omitted, the mute does not expire. + example: 4070908800000 format: int64 type: integer + reason: + $ref: '#/components/schemas/MuteReason' + reason_description: + description: An optional description providing more context for the mute reason. + example: Accepted for dev environments only + maxLength: 20000 + type: string + required: + - reason type: object - SecurityMonitoringRuleTypeRead: - description: The rule type. - enum: - - log_detection - - infrastructure_configuration - - workload_security - - cloud_configuration - - application_security - - api_security - type: string - x-enum-varnames: - - LOG_DETECTION - - INFRASTRUCTURE_CONFIGURATION - - WORKLOAD_SECURITY - - CLOUD_CONFIGURATION - - APPLICATION_SECURITY - - API_SECURITY - SecurityMonitoringSignalRuleResponseQuery: - description: Query for matching rule on signals. + SeverityModifierRuleAction: + description: |- + The action to take when a severity modifier rule matches a finding. This is a discriminated union on `type`: `set` assigns a fixed severity, while `shift` moves the severity up or down by one rank. + + A severity modifier rule's `rule.query` must not filter on `@severity` or on the `@severity_details.user_adjusted.*` namespace. + + Use `@severity_details.adjusted.value` instead, which reflects the severity before user-defined adjustments. properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - correlatedByFields: - description: Fields to correlate by. - items: - description: Field. - type: string - type: array - correlatedQueryIndex: - description: Index of the rule query used to retrieve the correlated field. - format: int32 - maximum: 9 - type: integer - defaultRuleId: - description: Default Rule ID to match on signals. - example: d3f-ru1-e1d + description: + description: An optional free-form explanation for the severity change. + example: Lower severity for dev environment noise + maxLength: 20000 type: string - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - metrics: - description: Group of target fields to aggregate over. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. + severity: + $ref: '#/components/schemas/SeverityModifierSeverity' + type: + $ref: '#/components/schemas/SeverityModifierRuleSetActionType' + severity_delta: + $ref: '#/components/schemas/SeverityModifierSeverityDelta' + required: + - type + - severity + - severity_delta + type: object + TicketCreationRuleAction: + description: The action to take when the ticket creation rule matches a finding. + properties: + assignee_id: + description: The UUID of the default assignee for created tickets. + example: 22222222-2222-2222-2222-222222222222 + format: uuid type: string - ruleId: - description: Rule ID to match on signals. - example: org-ru1-e1d + fields: + description: Custom fields of the Jira issue to create. For the list of available fields, see [Jira documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-projectidorkey-issuetypes-issuetypeid-get). (opaque JSON object) + example: + labels: + - security + type: string + max_tickets_per_day: + description: The maximum number of tickets the rule may create per day. If exceeded, one final ticket will be created, explaining the limit was hit and link back to the responsible rule. + example: 100 + format: int64 + maximum: 500 + minimum: 1 + type: integer + project_id: + description: The UUID of the case management project. + example: 11111111-1111-1111-1111-111111111111 + format: uuid type: string + target: + $ref: '#/components/schemas/TicketCreationTarget' + required: + - project_id + - target + - max_tickets_per_day type: object - SecurityMonitoringStandardRuleTestPayload: - description: The payload of a rule to test + TicketCreationRuleActionResponse: + description: The action to take when the ticket creation rule matches a finding. properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' + assignee_id: + description: The UUID of the default assignee for created tickets. + example: 22222222-2222-2222-2222-222222222222 + format: uuid type: string - name: - description: The name of the rule. - example: My security monitoring rule. + auto_disabled_reason: + description: The reason the rule was automatically disabled by the system due to a ticketing integration error. + example: Daily ticket creation limit exceeded type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. + fields: + description: Custom fields of the Jira issue to create. For the list of available fields, see [Jira documentation](https://developer.atlassian.com/cloud/jira/platform/rest/v2/api-group-issues/#api-rest-api-2-issue-createmeta-projectidorkey-issuetypes-issuetypeid-get). (opaque JSON object) example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeTest' + labels: + - security + type: string + max_tickets_per_day: + description: The maximum number of tickets the rule may create per day. If exceeded, one final ticket will be created, explaining the limit was hit and link back to the responsible rule. + example: 100 + format: int64 + maximum: 500 + minimum: 1 + type: integer + project_id: + description: The UUID of the case management project. + example: 11111111-1111-1111-1111-111111111111 + format: uuid + type: string + target: + $ref: '#/components/schemas/TicketCreationTarget' required: - - name - - isEnabled - - queries - - options - - cases - - message + - project_id + - target + - max_tickets_per_day + type: object + CasePriority: + default: NOT_DEFINED + description: Case priority + enum: + - NOT_DEFINED + - P1 + - P2 + - P3 + - P4 + - P5 + example: NOT_DEFINED + type: string + x-enum-varnames: + - NOT_DEFINED + - P1 + - P2 + - P3 + - P4 + - P5 + CaseManagementProject: + description: Case management project. + properties: + data: + $ref: '#/components/schemas/CaseManagementProjectData' + required: + - data + type: object + RelationshipToUser: + description: Relationship to user. + properties: + data: + $ref: '#/components/schemas/RelationshipToUserData' + required: + - data type: object - SecurityMonitoringRuleQueryPayloadData: - additionalProperties: {} - description: Payload used to test the rule query. + CaseInsightsItems: + description: An insight of the case. properties: - ddsource: - description: Source of the payload. - example: nginx + ref: + description: Reference of the insight. + example: /security/appsec/vm/library/vulnerability/dfa027f7c037b2f77159adc027fecb56?detection=static type: string - ddtags: - description: Tags associated with your data. - example: env:staging,version:5.1 + resource_id: + description: Unique identifier of the resource. For example, the unique identifier of a security finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== type: string - hostname: - description: The name of the originating host of the log. - example: i-012345678 + type: + description: Type of the resource. For example, the type of a security finding is "SECURITY_FINDING". + example: SECURITY_FINDING type: string - message: - description: The message of the payload. - example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World + type: object + FindingJiraIssue: + description: Jira issue associated with the case. + properties: + error_message: + description: Error message if the Jira issue creation failed. + example: '{"errorMessages":["An error occured."],"errors":{}}' type: string - service: - description: The name of the application or service generating the data. - example: payment + result: + $ref: '#/components/schemas/FindingJiraIssueResult' + status: + description: Status of the Jira issue creation. Can be "COMPLETED" if the Jira issue was created successfully, or "FAILED" if the Jira issue creation failed. + example: COMPLETED type: string type: object - SecurityMonitoringRuleCaseAction: - description: >- - Action to perform when a signal is triggered. Only available for - Application Security rule type. + FindingLinearIssue: + description: Linear issue associated with the case. properties: - options: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptions' - type: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionType' + error_message: + description: Error message if the Linear issue creation failed. + example: Linear issue creation failed. + type: string + result: + $ref: '#/components/schemas/FindingLinearIssueResult' + status: + description: Status of the Linear issue creation. Can be "COMPLETED" if the Linear issue was created successfully, or "FAILED" if the Linear issue creation failed. + example: COMPLETED + type: string type: object - SecurityMonitoringRuleSeverity: - description: Severity of the Security Signal. - enum: - - info - - low - - medium - - high - - critical - example: critical - type: string - x-enum-varnames: - - INFO - - LOW - - MEDIUM - - HIGH - - CRITICAL - SecurityMonitoringFilterAction: - description: The type of filtering action. - enum: - - require - - suppress - type: string - x-enum-varnames: - - REQUIRE - - SUPPRESS - CloudConfigurationComplianceRuleOptions: - additionalProperties: {} - description: > - Options for cloud_configuration rules. - - Fields `resourceType` and `regoRule` are mandatory when managing custom - `cloud_configuration` rules. + FindingServiceNowTicket: + description: ServiceNow ticket associated with the case. properties: - complexRule: - description: > - Whether the rule is a complex one. - - Must be set to true if `regoRule.resourceTypes` contains more than - one item. Defaults to false. - type: boolean - regoRule: - $ref: '#/components/schemas/CloudConfigurationRegoRule' - resourceType: - description: > - Main resource type to be checked by the rule. It should be specified - again in `regoRule.resourceTypes`. - example: aws_acm + result: + $ref: '#/components/schemas/FindingServiceNowTicketResult' + status: + description: Status of the ServiceNow ticket operation. Can be "COMPLETED" if successful, or "FAILED" if the operation failed. + example: COMPLETED type: string type: object - SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv: - description: >- - If true, signals in non-production environments have a lower severity - than what is defined by the rule case, which can reduce signal noise. - - The severity is decreased by one level: `CRITICAL` in production becomes - `HIGH` in non-production, `HIGH` becomes `MEDIUM` and so on. `INFO` - remains `INFO`. - - The decrement is applied when the environment tag of the signal starts - with `staging`, `test` or `dev`. - example: false - type: boolean - SecurityMonitoringRuleDetectionMethod: - description: The detection method. - enum: - - threshold - - new_value - - anomaly_detection - - impossible_travel - - hardcoded - - third_party - - anomaly_threshold - type: string - x-enum-varnames: - - THRESHOLD - - NEW_VALUE - - ANOMALY_DETECTION - - IMPOSSIBLE_TRAVEL - - HARDCODED - - THIRD_PARTY - - ANOMALY_THRESHOLD - SecurityMonitoringRuleEvaluationWindow: - description: >- - A time window is specified to match when at least one of the cases - matches true. This is a sliding window - - and evaluates in real time. For third party detection method, this field - is not used. - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleHardcodedEvaluatorType: - description: Hardcoded evaluator type. - enum: - - log4shell - type: string - x-enum-varnames: - - LOG4SHELL - SecurityMonitoringRuleImpossibleTravelOptions: - description: Options on impossible travel detection method. + MuteFindingsMuteAttributes: + description: Mute properties to apply to the findings. properties: - baselineUserLocations: - $ref: >- - #/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations + description: + description: Additional information about the reason why the findings are muted or unmuted. This field has a limit of 280 characters. + example: To be resolved later. + type: string + expire_at: + description: The expiration date of the mute action (Unix ms). It must be set to a value greater than the current timestamp. If this field is not provided, the findings remain muted indefinitely. + example: 1778721573794 + format: int64 + type: integer + is_muted: + description: Whether the findings should be muted or unmuted. + example: true + type: boolean + reason: + $ref: '#/components/schemas/MuteFindingsReason' + description: The reason why the findings are muted or unmuted. + required: + - is_muted + - reason type: object - SecurityMonitoringRuleKeepAlive: - description: >- - Once a signal is generated, the signal will remain "open" if a case is - matched at least once within - - this keep alive window. For third party detection method, this field is - not used. - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleMaxSignalDuration: - description: >- - A signal will "close" regardless of the query being matched once the - time exceeds the maximum duration. - - This time is calculated from the first seen timestamp. - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleNewValueOptions: - description: Options on new value detection method. + SecurityFindingsSearchRequestPage: + description: Pagination attributes for the search request. properties: - forgetAfter: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsForgetAfter - learningDuration: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningDuration - learningMethod: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningMethod - learningThreshold: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningThreshold + cursor: + description: Get the next page of results with a cursor provided in the previous query. + example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ== + type: string + limit: + default: 10 + description: The maximum number of security findings in the response. + example: 25 + format: int64 + maximum: 150 + minimum: 1 + type: integer + type: object + SBOMComponent: + description: Software or hardware component. + properties: + bom-ref: + description: An optional identifier that can be used to reference the component elsewhere in the BOM. + example: pkg:golang/google.golang.org/grpc@1.68.1 + type: string + licenses: + description: The software licenses of the SBOM component. + items: + $ref: '#/components/schemas/SBOMComponentLicense' + type: array + name: + description: The name of the component. This will often be a shortened, single name of the component. + example: google.golang.org/grpc + type: string + properties: + description: The custom properties of the component of the SBOM. + items: + $ref: '#/components/schemas/SBOMComponentProperty' + type: array + purl: + description: Specifies the package-url (purl). The purl, if specified, MUST be valid and conform to the [specification](https://github.com/package-url/purl-spec). + example: pkg:golang/google.golang.org/grpc@1.68.1 + type: string + supplier: + $ref: '#/components/schemas/SBOMComponentSupplier' + type: + $ref: '#/components/schemas/SBOMComponentType' + version: + description: The component version. + example: 1.68.1 + type: string + required: + - type + - name + - version + - supplier type: object - SecurityMonitoringRuleThirdPartyOptions: - description: Options on third party detection method. + SBOMComponentDependency: + description: The dependencies of a component of the SBOM. properties: - defaultNotifications: - description: >- - Notification targets for the logs that do not correspond to any of - the cases. + dependsOn: + description: The components that are dependencies of the ref component. items: - description: Notification. + description: A package URL (purl) identifying a dependency of the component. + example: pkg:golang/google.golang.org/grpc@1.68.1 type: string + required: + - ref + - dependsOn type: array - defaultStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - rootQueries: - description: >- - Queries to be combined with third party case queries. Each of them - can have different group by fields, to aggregate differently based - on the type of alert. - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRootQuery' - type: array - signalTitleTemplate: - description: >- - A template for the signal title; if omitted, the title is generated - based on the case name. + ref: + description: The identifier for the related component. + example: Repository|github.com/datadog/datadog-agent type: string type: object - RuleVersionHistory: - description: Response object containing the version history of a rule. - properties: - count: - description: The number of rule versions. - format: int32 - maximum: 2147483647 - type: integer - data: - additionalProperties: - $ref: '#/components/schemas/RuleVersions' - description: A rule version with a list of updates. - description: The `RuleVersionHistory` `data`. - type: object - type: object - GetRuleVersionHistoryDataType: - description: Type of data. - enum: - - GetRuleVersionHistoryResponse - type: string - x-enum-varnames: - - GETRULEVERSIONHISTORYRESPONSE - SecurityMonitoringSignalAttributes: - additionalProperties: {} - description: |- - The object containing all signal attributes and their - associated values. + SBOMMetadata: + description: Provides additional information about a BOM. properties: - custom: - additionalProperties: {} - description: A JSON object of attributes in the security signal. - example: - workflow: - first_seen: '2020-06-23T14:46:01.000Z' - last_seen: '2020-06-23T14:46:49.000Z' - rule: - id: 0f5-e0c-805 - name: 'Brute Force Attack Grouped By User ' - version: 12 - type: object - message: - description: >- - The message in the security signal defined by the rule that - generated the signal. - example: Detect Account Take Over (ATO) through brute force attempts - type: string - tags: - description: An array of tags associated with the security signal. - example: - - security:attack - - technique:T1110-brute-force + authors: + description: List of authors of the SBOM. items: - description: The tag associated with the security signal. - type: string + $ref: '#/components/schemas/SBOMMetadataAuthor' type: array + component: + $ref: '#/components/schemas/SBOMMetadataComponent' timestamp: - description: The timestamp of the security signal. - example: '2019-01-02T09:42:36.320Z' - format: date-time + description: The timestamp of the SBOM creation. + example: '2025-07-08T07:24:53Z' type: string type: object - SecurityMonitoringSignalType: - default: signal - description: The type of event. + SpecVersion: + description: The version of the CycloneDX specification a BOM conforms to. enum: - - signal - example: signal + - '1.0' + - '1.1' + - '1.2' + - '1.3' + - '1.4' + - '1.5' + - '1.6' + example: '1.6' type: string x-enum-varnames: - - SIGNAL - SecurityMonitoringSignalsListResponseMetaPage: - description: Paging attributes. + - ONE_ZERO + - ONE_ONE + - ONE_TWO + - ONE_THREE + - ONE_FOUR + - ONE_FIVE + - ONE_SIX + ScannedAssetMetadataAsset: + description: The asset of a scanned asset metadata. properties: - after: - description: >- - The cursor used to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + name: + description: The name of the asset. + example: i-0fc7edef1ab26d7ef type: string + type: + $ref: '#/components/schemas/CloudAssetType' + required: + - type + - name type: object - SecurityMonitoringSignalAssigneeUpdateAttributes: - description: Attributes describing the new assignee of a security signal. + ScannedAssetMetadataLastSuccess: + description: Metadata for the last successful scan of an asset. properties: - assignee: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' + env: + description: The environment of the last success scan of the asset. + example: prod + type: string + origin: + description: The list of origins of the last success scan of the asset. + example: + - production + items: + description: An origin identifier for the last successful scan of the asset. + example: production + type: string + type: array + timestamp: + description: The timestamp of the last success scan of the asset. + example: '2025-07-08T07:24:53Z' + type: string required: - - assignee + - timestamp type: object - SecurityMonitoringSignalTriageAttributes: - description: >- - Attributes describing a triage state update operation over a security - signal. + IoCIndicator: + description: An indicator of compromise with threat intelligence data. properties: - archive_comment: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' - archive_comment_timestamp: - description: Timestamp of the last edit to the comment. + as_geo: + $ref: '#/components/schemas/IoCGeoLocation' + as_type: + description: Autonomous system type. + type: string + benign_sources: + description: Threat intelligence sources that flagged this indicator as benign. + items: + $ref: '#/components/schemas/IoCSource' + nullable: true + type: array + categories: + description: Threat categories associated with the indicator. + items: + type: string + type: array + first_seen: + description: Timestamp when the indicator was first seen. + format: date-time + type: string + id: + description: Unique identifier for the indicator. + type: string + indicator: + description: The indicator value (for example, an IP address or domain). + type: string + indicator_type: + description: Type of indicator (for example, IP address or domain). + type: string + last_seen: + description: Timestamp when the indicator was last seen. + format: date-time + type: string + log_matches: + description: Number of logs that matched this indicator. format: int64 - minimum: 0 type: integer - archive_comment_user: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - archive_reason: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' - assignee: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - incident_ids: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' - state: - $ref: '#/components/schemas/SecurityMonitoringSignalState' - state_update_timestamp: - description: Timestamp of the last update to the signal state. + m_as_type: + $ref: '#/components/schemas/IoCScoreEffect' + m_persistence: + $ref: '#/components/schemas/IoCScoreEffect' + m_signal: + $ref: '#/components/schemas/IoCScoreEffect' + m_sources: + $ref: '#/components/schemas/IoCScoreEffect' + malicious_sources: + description: Threat intelligence sources that flagged this indicator as malicious. + items: + $ref: '#/components/schemas/IoCSource' + nullable: true + type: array + max_trust_score: + $ref: '#/components/schemas/IoCScoreEffect' + score: + description: Threat score for the indicator (0-100). + format: double + type: number + signal_matches: + description: Number of security signals that matched this indicator. format: int64 - minimum: 0 type: integer - state_update_user: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - required: - - assignee - - state - - incident_ids - type: object - SecurityMonitoringSignalMetadataType: - default: signal_metadata - description: The type of event. - enum: - - signal_metadata - example: signal_metadata - type: string - x-enum-varnames: - - SIGNAL_METADATA - SecurityMonitoringSignalIncidentsUpdateAttributes: - description: >- - Attributes describing the new list of related signals for a security - signal. - properties: - incident_ids: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - incident_ids + signal_tier: + description: Signal tier level. + format: int64 + type: integer + suspicious_sources: + description: Threat intelligence sources that flagged this indicator as suspicious. + items: + $ref: '#/components/schemas/IoCSource' + nullable: true + type: array + tags: + description: Tags associated with the indicator. + items: + type: string + type: array + triage_state: + $ref: '#/components/schemas/IoCTriageState' + triaged_at: + description: Timestamp when the indicator was last triaged. + format: date-time + type: string + triaged_by: + description: UUID of the user who last triaged the indicator. + type: string type: object - SecurityMonitoringSignalStateUpdateAttributes: - description: Attributes describing the change of state of a security signal. + IoCExplorerListResponseMetadata: + description: Response metadata. properties: - archive_comment: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' - archive_reason: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' - state: - $ref: '#/components/schemas/SecurityMonitoringSignalState' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - state + count: + description: Total number of indicators matching the query. + format: int64 + type: integer type: object - SensitiveDataScannerConfigurationRelationships: - description: Relationships of the configuration. + IoCExplorerListResponsePaging: + description: Pagination information. properties: - groups: - $ref: '#/components/schemas/SensitiveDataScannerGroupList' + offset: + description: Current pagination offset. + format: int64 + type: integer type: object - SensitiveDataScannerConfigurationType: - default: sensitive_data_scanner_configuration - description: Sensitive Data Scanner configuration type. - enum: - - sensitive_data_scanner_configuration - example: sensitive_data_scanner_configuration - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_CONFIGURATIONS - SensitiveDataScannerGetConfigIncludedItem: - description: An object related to the configuration. - oneOf: - - $ref: '#/components/schemas/SensitiveDataScannerRuleIncludedItem' - - $ref: '#/components/schemas/SensitiveDataScannerGroupIncludedItem' - SensitiveDataScannerGroupAttributes: - description: Attributes of the Sensitive Data Scanner group. + IoCIndicatorDetailed: + description: An indicator of compromise with extended context from your environment. properties: - description: - description: Description of the group. + additional_data: + additionalProperties: {} + description: Additional domain-specific context from threat intelligence sources. + type: object + as_cidr_block: + description: Autonomous system CIDR block. type: string - filter: - $ref: '#/components/schemas/SensitiveDataScannerFilter' - is_enabled: - description: Whether or not the group is enabled. - type: boolean - name: - description: Name of the group. + as_geo: + $ref: '#/components/schemas/IoCGeoLocation' + as_number: + description: Autonomous system number. type: string - product_list: - description: List of products the scanning group applies. + as_organization: + description: Autonomous system organization name. + type: string + as_type: + description: Autonomous system type. + type: string + benign_sources: + description: Threat intelligence sources that flagged this indicator as benign. + items: + $ref: '#/components/schemas/IoCSource' + nullable: true + type: array + categories: + description: Threat categories associated with the indicator. items: - $ref: '#/components/schemas/SensitiveDataScannerProduct' + type: string type: array - samplings: - description: List of sampling rates per product type. + critical_assets: + description: Critical assets associated with this indicator. items: - $ref: '#/components/schemas/SensitiveDataScannerSamplings' + type: string type: array - type: object - SensitiveDataScannerGroupRelationships: - description: Relationships of the group. - properties: - configuration: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationData' - rules: - $ref: '#/components/schemas/SensitiveDataScannerRuleData' - type: object - SensitiveDataScannerGroupType: - default: sensitive_data_scanner_group - description: Sensitive Data Scanner group type. - enum: - - sensitive_data_scanner_group - example: sensitive_data_scanner_group - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_GROUP - SensitiveDataScannerRuleAttributes: - description: Attributes of the Sensitive Data Scanner rule. - properties: - description: - description: Description of the rule. + first_seen: + description: Timestamp when the indicator was first seen. + format: date-time type: string - excluded_namespaces: - description: >- - Attributes excluded from the scan. If namespaces is provided, it has - to be a sub-path of the namespaces array. - example: - - admin.name + hosts: + description: Hosts associated with this indicator. items: type: string type: array - included_keyword_configuration: - $ref: >- - #/components/schemas/SensitiveDataScannerIncludedKeywordConfiguration - is_enabled: - description: Whether or not the rule is enabled. - type: boolean - name: - description: Name of the rule. + id: + description: Unique identifier for the indicator. type: string - namespaces: - description: >- - Attributes included in the scan. If namespaces is empty or missing, - all attributes except excluded_namespaces are scanned. - - If both are missing the whole event is scanned. - example: - - admin + indicator: + description: The indicator value (for example, an IP address or domain). + type: string + indicator_type: + description: Type of indicator (for example, IP address or domain). + type: string + last_seen: + description: Timestamp when the indicator was last seen. + format: date-time + type: string + log_matches: + description: Number of logs that matched this indicator. + format: int64 + type: integer + log_sources: + description: Log sources where this indicator was observed. items: type: string type: array - pattern: - description: Not included if there is a relationship to a standard pattern. - type: string - priority: - description: Integer from 1 (high) to 5 (low) indicating rule issue severity. + m_as_type: + $ref: '#/components/schemas/IoCScoreEffect' + m_persistence: + $ref: '#/components/schemas/IoCScoreEffect' + m_signal: + $ref: '#/components/schemas/IoCScoreEffect' + m_sources: + $ref: '#/components/schemas/IoCScoreEffect' + malicious_sources: + description: Threat intelligence sources that flagged this indicator as malicious. + items: + $ref: '#/components/schemas/IoCSource' + nullable: true + type: array + max_trust_score: + $ref: '#/components/schemas/IoCScoreEffect' + score: + description: Threat score for the indicator (0-100). + format: double + type: number + services: + description: Services where this indicator was observed. + items: + type: string + type: array + signal_matches: + description: Number of security signals that matched this indicator. + format: int64 + type: integer + signal_severity: + description: Breakdown of security signals by severity. + items: + $ref: '#/components/schemas/IoCSignalSeverityCount' + type: array + signal_tier: + description: Signal tier level. format: int64 - maximum: 5 - minimum: 1 type: integer + suspicious_sources: + description: Threat intelligence sources that flagged this indicator as suspicious. + items: + $ref: '#/components/schemas/IoCSource' + nullable: true + type: array tags: - description: List of tags. + description: Tags associated with the indicator. items: type: string type: array - text_replacement: - $ref: '#/components/schemas/SensitiveDataScannerTextReplacement' + triage_history: + description: Full triage history timeline. Returned only when `include_triage_history` is true. + items: + $ref: '#/components/schemas/IoCTriageEvent' + type: array + triage_state: + $ref: '#/components/schemas/IoCTriageState' + triaged_at: + description: Timestamp when the indicator was last triaged. + format: date-time + type: string + triaged_by: + description: UUID of the user who last triaged the indicator. + type: string + users: + additionalProperties: + description: List of user identifiers in this category. + items: + type: string + type: array + description: Users associated with this indicator, grouped by category. + type: object type: object - SensitiveDataScannerRuleRelationships: - description: Relationships of a scanning rule. + Enabled: + description: Field used to enable or disable the rule. + example: true + type: boolean + RuleName: + description: Name of the notification rule. + example: Rule 1 + type: string + NotificationRuleRouting: + description: Routing configuration for the notification rule. properties: - group: - $ref: '#/components/schemas/SensitiveDataScannerGroupData' - standard_pattern: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternData' + mode: + $ref: '#/components/schemas/NotificationRuleRoutingMode' + required: + - mode type: object - SensitiveDataScannerRuleType: - default: sensitive_data_scanner_rule - description: Sensitive Data Scanner rule type. - enum: - - sensitive_data_scanner_rule - example: sensitive_data_scanner_rule - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_RULE - SensitiveDataScannerStandardPatternsResponseItem: - description: Standard pattern item. + Selectors: + description: |- + Selectors are used to filter security issues for which notifications should be generated. + Users can specify rule severities, rule types, a query to filter security issues on tags and attributes, and the trigger source. + Only the trigger_source field is required. properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternAttributes' - id: - description: ID of the standard pattern. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternType' + query: + $ref: '#/components/schemas/NotificationRuleQuery' + rule_types: + $ref: '#/components/schemas/RuleTypes' + severities: + description: The security rules severities to consider. + items: + $ref: '#/components/schemas/RuleSeverity' + type: array + trigger_source: + $ref: '#/components/schemas/TriggerSource' + required: + - trigger_source type: object - HistoricalJobResponseAttributes: - description: Historical job attributes. + Targets: + description: |- + List of recipients to notify when a notification rule is triggered. Many different target types are supported, + such as email addresses, Slack channels, and PagerDuty services. + The appropriate integrations need to be properly configured to send notifications to the specified targets. + example: + - '@john.doe@email.com' + items: + description: Recipients to notify. + type: string + type: array + TimeAggregation: + description: |- + Time aggregation period (in seconds) is used to aggregate the results of the notification rule evaluation. + Results are aggregated over a selected time frame using a rolling window, which updates with each new evaluation. + Notifications are only sent for new issues discovered during the window. + Time aggregation is only available for vulnerability-based notification rules. When omitted or set to 0, no aggregation + is done. + example: 86400 + format: int64 + type: integer + Date: + description: Date as Unix timestamp in milliseconds. + example: 1722439510282 + format: int64 + type: integer + RuleUser: + description: User creating or modifying a rule. properties: - createdAt: - description: Time when the job was created. + handle: + description: The user handle. + example: john.doe@domain.com type: string - createdByHandle: - description: The handle of the user who created the job. + name: + description: The user name. + example: John Doe type: string - createdByName: - description: The name of the user who created the job. + type: object + Version: + description: Version of the notification rule. It is updated when the rule is modified. + example: 1 + format: int64 + type: integer + VulnerabilityAdvisory: + description: Advisory associated with the vulnerability. + properties: + id: + description: Vulnerability advisory ID. + example: TRIVY-CVE-2023-0615 type: string - createdFromRuleId: - description: >- - ID of the rule used to create the job (if it is created from a - rule). + last_modification_date: + description: Vulnerability advisory last modification date. + example: '2024-09-19T21:23:08.000Z' type: string - jobDefinition: - $ref: '#/components/schemas/JobDefinition' - jobName: - description: Job name. + publish_date: + description: Vulnerability advisory publish date. + example: '2024-09-19T21:23:08.000Z' type: string - jobStatus: - description: Job status. + required: + - id + type: object + CodeLocation: + description: Code vulnerability location. + properties: + file_path: + description: Vulnerability location file path. + example: src/Class.java:100 type: string - modifiedAt: - description: Last modification time of the job. + location: + description: Vulnerability extracted location. + example: com.example.Class:100 + type: string + method: + description: Vulnerability location method. + example: FooBar type: string + required: + - location type: object - HistoricalJobDataType: - description: Type of payload. - enum: - - historicalDetectionsJob - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOB - RunHistoricalJobRequestAttributes: - description: Run a historical job request. + VulnerabilityCvss: + description: Vulnerability severities. properties: - fromRule: - $ref: '#/components/schemas/JobDefinitionFromRule' - id: - description: Request ID. - type: string - jobDefinition: - $ref: '#/components/schemas/JobDefinition' + base: + $ref: '#/components/schemas/CVSS' + datadog: + $ref: '#/components/schemas/CVSS' + required: + - base + - datadog type: object - RunHistoricalJobRequestDataType: - description: Type of data. - enum: - - historicalDetectionsJobCreate - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOBCREATE - ConvertJobResultsToSignalsAttributes: - description: Attributes for converting historical job results to signals. + VulnerabilityDependencyLocations: + description: Static library vulnerability location. + properties: + block: + $ref: '#/components/schemas/DependencyLocation' + name: + $ref: '#/components/schemas/DependencyLocation' + version: + $ref: '#/components/schemas/DependencyLocation' + required: + - block + type: object + Library: + description: Vulnerability library. properties: - id: - description: Request ID. - type: string - jobResultIds: - description: Job result IDs. - example: - - '' - items: - type: string - type: array - notifications: - description: Notifications sent. - example: - - '' + additional_names: + description: Related library or package names (such as child packages or affected binary paths). items: + description: A related library or package name affected by the vulnerability. + example: linux-tools-common type: string type: array - signalMessage: - description: Message of generated signals. - example: A large number of failed login attempts. + name: + description: Vulnerability library name. + example: linux-aws-5.15 + type: string + version: + description: Vulnerability library version. + example: 5.15.0 type: string - signalSeverity: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' required: - - jobResultIds - - signalSeverity - - signalMessage - - notifications + - name type: object - ConvertJobResultsToSignalsDataType: - description: Type of payload. - enum: - - historicalDetectionsJobResultSignalConversion - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOBRESULTSIGNALCONVERSION - CustomFrameworkRequirement: - description: Framework Requirement. + Remediation: + description: Vulnerability remediation. properties: - controls: - description: Requirement Controls. + auto_solvable: + description: Whether the vulnerability can be resolved when recompiling the package or not. + example: false + type: boolean + avoided_advisories: + description: Avoided advisories. items: - $ref: '#/components/schemas/CustomFrameworkControl' + $ref: '#/components/schemas/Advisory' type: array - name: - description: Requirement Name. - example: criteria + fixed_advisories: + description: Remediation fixed advisories. + items: + $ref: '#/components/schemas/Advisory' + type: array + library_name: + description: Library name remediating the vulnerability. + example: stdlib + type: string + library_version: + description: Library version remediating the vulnerability. + example: Upgrade to a version >= 1.20.0 + type: string + new_advisories: + description: New advisories. + items: + $ref: '#/components/schemas/Advisory' + type: array + remaining_advisories: + description: Remaining advisories. + items: + $ref: '#/components/schemas/Advisory' + type: array + type: + description: Remediation type. + example: text type: string required: - - name - - controls - type: object - CsmCoverageAnalysis: - description: CSM Coverage Analysis. - properties: - configured_resources_count: - description: The number of fully configured resources. - example: 8 - format: int64 - type: integer - coverage: - description: The coverage percentage. - example: 0.8 - format: double - type: number - partially_configured_resources_count: - description: The number of partially configured resources. - example: 0 - format: int64 - type: integer - total_resources_count: - description: The total number of resources. - example: 10 - format: int64 - type: integer - type: object - FindingAttributes: - description: The JSON:API attributes of the finding. - properties: - datadog_link: - $ref: '#/components/schemas/FindingDatadogLink' - description: - $ref: '#/components/schemas/FindingDescription' - evaluation: - $ref: '#/components/schemas/FindingEvaluation' - evaluation_changed_at: - $ref: '#/components/schemas/FindingEvaluationChangedAt' - external_id: - $ref: '#/components/schemas/FindingExternalId' - mute: - $ref: '#/components/schemas/FindingMute' - resource: - $ref: '#/components/schemas/FindingResource' - resource_discovery_date: - $ref: '#/components/schemas/FindingResourceDiscoveryDate' - resource_type: - $ref: '#/components/schemas/FindingResourceType' - rule: - $ref: '#/components/schemas/FindingRule' - status: - $ref: '#/components/schemas/FindingStatus' - tags: - $ref: '#/components/schemas/FindingTags' - vulnerability_type: - $ref: '#/components/schemas/FindingVulnerabilityType' + - type + - library_name + - library_version + - auto_solvable + - fixed_advisories + - remaining_advisories + - new_advisories + - avoided_advisories type: object - BulkMuteFindingsRequestProperties: - additionalProperties: false - description: Object containing the new mute properties of the findings. + VulnerabilityRisks: + description: Vulnerability risks. properties: - description: - description: >- - Additional information about the reason why those findings are muted - or unmuted. This field has a maximum limit of 280 characters. - type: string - expiration_date: - description: > - The expiration date of the mute or unmute action (Unix ms). It must - be set to a value greater than the current timestamp. - - If this field is not provided, the finding will be muted or unmuted - indefinitely, which is equivalent to setting the expiration date to - 9999999999999. - example: 1778721573794 - format: int64 - type: integer - muted: - description: Whether those findings should be muted or unmuted. - example: true + epss: + $ref: '#/components/schemas/EPSS' + exploit_available: + description: Vulnerability public exploit availability. + example: false + type: boolean + exploit_sources: + description: Vulnerability exploit sources. + example: + - NIST + items: + description: An exploit source reporting this vulnerability. + example: NIST + type: string + type: array + exploitation_probability: + description: Vulnerability exploitation probability. + example: false + type: boolean + poc_exploit_available: + description: Vulnerability POC exploit availability. + example: false type: boolean - reason: - $ref: '#/components/schemas/FindingMuteReason' required: - - muted - - reason + - exploitation_probability + - poc_exploit_available + - exploit_available + - exploit_sources type: object - BulkMuteFindingsRequestMetaFindings: - description: Finding object containing the finding information. + VulnerabilityRelationshipsAffects: + description: Relationship type. properties: - finding_id: - $ref: '#/components/schemas/FindingID' + data: + $ref: '#/components/schemas/VulnerabilityRelationshipsAffectsData' + required: + - data type: object - FindingEvaluationChangedAt: - description: The date on which the evaluation for this finding changed (Unix ms). - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - FindingMute: - additionalProperties: false - description: Information about the mute status of this finding. + CycloneDXToolComponent: + description: A scanner tool component. properties: - description: - description: >- - Additional information about the reason why this finding is muted or - unmuted. - example: To be resolved later - type: string - expiration_date: - description: The expiration date of the mute or unmute action (Unix ms). - example: 1778721573794 - format: int64 - type: integer - muted: - description: Whether this finding is muted or unmuted. - example: true - type: boolean - reason: - $ref: '#/components/schemas/FindingMuteReason' - start_date: - description: The start of the mute period. - example: 1678721573794 - format: int64 - type: integer - uuid: - description: The ID of the user who muted or unmuted this finding. - example: e51c9744-d158-11ec-ad23-da7ad0900002 + name: + description: The name of the scanner tool. + example: my-scanner type: string - type: object - FindingResource: - description: The resource name of this finding. - example: my_resource_name - type: string - FindingResourceDiscoveryDate: - description: The date on which the resource was discovered (Unix ms). - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - FindingResourceType: - description: The resource type of this finding. - example: azure_storage_account - type: string - FindingRule: - additionalProperties: false - description: The rule that triggered this finding. - properties: - id: - description: The ID of the rule that triggered this finding. - example: dv2-jzf-41i + type: + description: The type of the tool component. + example: application type: string - name: - description: The name of the rule that triggered this finding. - example: Soft delete is enabled for Azure Storage + required: + - name + type: object + CycloneDXVulnerabilityReferenceSource: + description: The source of an external vulnerability reference. + properties: + url: + description: The URL of the reference source. + example: https://example.com type: string type: object - FindingTags: - description: The tags associated with this finding. - example: - - cloud_provider:aws - - myTag:myValue - items: - description: The list of tags. - type: string - type: array AssetOperatingSystem: description: Asset operating system. properties: @@ -9699,6 +31424,10 @@ components: description: Operating system name. example: ubuntu type: string + version: + description: Operating system version. + example: '24.04' + type: string required: - name type: object @@ -9740,367 +31469,438 @@ components: example: _latest type: string type: object - SBOMComponent: - description: Software or hardware component. + CloudWorkloadSecurityAgentRuleActions: + description: The array of actions the rule can perform if triggered + items: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' + nullable: true + type: array + CloudWorkloadSecurityAgentRuleCreatorAttributes: + description: The attributes of the user who created the Agent rule properties: - bom-ref: - description: >- - An optional identifier that can be used to reference the component - elsewhere in the BOM. - example: pkg:golang/google.golang.org/grpc@1.68.1 + handle: + description: The handle of the user + example: datadog.user@example.com type: string - licenses: - description: The software licenses of the SBOM component. - items: - $ref: '#/components/schemas/SBOMComponentLicense' - type: array name: - description: >- - The name of the component. This will often be a shortened, single - name of the component. - example: google.golang.org/grpc - type: string - properties: - description: The custom properties of the component of the SBOM. - items: - $ref: '#/components/schemas/SBOMComponentProperty' - type: array - purl: - description: >- - Specifies the package-url (purl). The purl, if specified, MUST be - valid and conform to the - [specification](https://github.com/package-url/purl-spec). - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - supplier: - $ref: '#/components/schemas/SBOMComponentSupplier' - type: - $ref: '#/components/schemas/SBOMComponentType' - version: - description: The component version. - example: 1.68.1 + description: The name of the user + example: Datadog User + nullable: true type: string - required: - - type - - name - - version - - supplier type: object - SBOMComponentDependency: - description: The dependencies of a component of the SBOM. + CloudWorkloadSecurityAgentRuleUpdaterAttributes: + description: The attributes of the user who last updated the Agent rule properties: - dependsOn: - description: The components that are dependencies of the ref component. - items: - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - required: - - ref - - dependsOn - type: array - ref: - description: The identifier for the related component. - example: Repository|github.com/datadog/datadog-agent + handle: + description: The handle of the user + example: datadog.user@example.com + type: string + name: + description: The name of the user + example: Datadog User + nullable: true type: string type: object - SBOMMetadata: - description: Provides additional information about a BOM. + SecurityMonitoringUser: + description: A user. properties: - authors: - description: List of authors of the SBOM. - items: - $ref: '#/components/schemas/SBOMMetadataAuthor' - type: array - component: - $ref: '#/components/schemas/SBOMMetadataComponent' - timestamp: - description: The timestamp of the SBOM creation. - example: '2025-07-08T07:24:53Z' + handle: + description: The handle of the user. + example: john.doe@datadoghq.com + type: string + name: + description: The name of the user. + example: John Doe + nullable: true type: string type: object - SpecVersion: - description: The version of the CycloneDX specification a BOM conforms to. + SecurityMonitoringCriticalAssetSeverity: + description: Severity associated with this critical asset. Either an explicit severity can be set, or the severity can be increased or decreased, or the severity can be left unchanged (no-op). enum: - - '1.0' - - '1.1' - - '1.2' - - '1.3' - - '1.4' - - '1.5' - example: '1.5' + - info + - low + - medium + - high + - critical + - increase + - decrease + - no-op + example: increase type: string x-enum-varnames: - - ONE_ZERO - - ONE_ONE - - ONE_TWO - - ONE_THREE - - ONE_FOUR - - ONE_FIVE - Date: - description: Date as Unix timestamp in milliseconds. - example: 1722439510282 - format: int64 - type: integer - RuleUser: - description: User creating or modifying a rule. + - INFO + - LOW + - MEDIUM + - HIGH + - CRITICAL + - INCREASE + - DECREASE + - NO_OP + SecurityMonitoringIntegrationConfigSettings: + additionalProperties: {} + description: Free-form, non-sensitive settings for the entity context sync. The accepted keys depend on the source type. + example: + setting1: value1 + type: object + SecurityMonitoringIntegrationConfigState: + description: The state of the credentials configured on the entity context sync. + enum: + - valid + - invalid + - initializing + example: valid + type: string + x-enum-varnames: + - VALID + - INVALID + - INITIALIZING + SecurityMonitoringGoogleWorkspaceIntegrationConfigCreateAttributes: + description: The attributes of a Google Workspace entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace' + name: + description: The display name for the entity context sync configuration. + example: My GWS Integration + type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type + - domain + - name + - secrets + type: object + SecurityMonitoringOktaIntegrationConfigCreateAttributes: + description: The attributes of an Okta entity context sync configuration to create. properties: - handle: - description: The user handle. - example: john.doe@domain.com + domain: + description: The domain associated with the external entity source. + example: siem-test.com type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeOkta' name: - description: The user name. - example: John Doe + description: The display name for the entity context sync configuration. + example: My Okta Integration type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigOktaSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type + - domain + - name + - secrets type: object - Enabled: - description: Field used to enable or disable the rule. - example: true - type: boolean - RuleName: - description: Name of the notification rule. - example: Rule 1 - type: string - Selectors: - description: >- - Selectors are used to filter security issues for which notifications - should be generated. - - Users can specify rule severities, rule types, a query to filter - security issues on tags and attributes, and the trigger source. - - Only the trigger_source field is required. + SecurityMonitoringEntraIdIntegrationConfigCreateAttributes: + description: The attributes of an Entra ID entity context sync configuration to create. properties: - query: - $ref: '#/components/schemas/NotificationRuleQuery' - rule_types: - $ref: '#/components/schemas/RuleTypes' - severities: - description: The security rules severities to consider. - items: - $ref: '#/components/schemas/RuleSeverity' - type: array - trigger_source: - $ref: '#/components/schemas/TriggerSource' + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeEntraId' + name: + description: The display name for the entity context sync configuration. + example: My Entra ID Integration + type: string + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' required: - - trigger_source + - integration_type + - domain + - name type: object - Targets: - description: >- - List of recipients to notify when a notification rule is triggered. Many - different target types are supported, - - such as email addresses, Slack channels, and PagerDuty services. - - The appropriate integrations need to be properly configured to send - notifications to the specified targets. - example: - - '@john.doe@email.com' - items: - description: Recipients to notify. - type: string - type: array - TimeAggregation: - description: >- - Time aggregation period (in seconds) is used to aggregate the results of - the notification rule evaluation. - - Results are aggregated over a selected time frame using a rolling - window, which updates with each new evaluation. - - Notifications are only sent for new issues discovered during the window. - - Time aggregation is only available for vulnerability-based notification - rules. When omitted or set to 0, no aggregation - - is done. - example: 86400 - format: int64 - type: integer - Version: - description: >- - Version of the notification rule. It is updated when the rule is - modified. - example: 1 - format: int64 - type: integer - CodeLocation: - description: Code vulnerability location. + SecurityMonitoringCrowdStrikeIntegrationConfigCreateAttributes: + description: The attributes of a CrowdStrike entity context sync configuration to create. properties: - file_path: - description: Vulnerability location file path. - example: src/Class.java:100 + domain: + description: The domain associated with the external entity source. + example: api.crowdstrike.com type: string - location: - description: Vulnerability extracted location. - example: com.example.Class:100 + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeCrowdStrike' + name: + description: The display name for the entity context sync configuration. + example: My CrowdStrike Integration type: string - method: - description: Vulnerability location method. - example: FooBar + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigCrowdStrikeSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type + - domain + - name + - secrets + type: object + SecurityMonitoringSentinelOneIntegrationConfigCreateAttributes: + description: The attributes of a SentinelOne entity context sync configuration to create. + properties: + domain: + description: The domain associated with the external entity source. + example: acme.sentinelone.net + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeSentinelOne' + name: + description: The display name for the entity context sync configuration. + example: My SentinelOne Integration type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSentinelOneSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' required: - - location + - integration_type + - domain + - name + - secrets type: object - VulnerabilityCvss: - description: Vulnerability severities. + SecurityMonitoringAzureAppRegistration: + description: An Azure App Registration discovered for the organization. properties: - base: - $ref: '#/components/schemas/CVSS' - datadog: - $ref: '#/components/schemas/CVSS' + client_id: + description: The client ID of the App Registration. + example: 66666666-7777-8888-9999-000000000000 + type: string + error_count: + description: The number of errors encountered while crawling resources for this App Registration. + example: 0 + format: int64 + type: integer + resource_collection_enabled: + description: Whether resource collection is enabled for this App Registration. + example: true + type: boolean + subscription_count: + description: The number of Azure subscriptions associated with this App Registration. + example: 3 + format: int64 + type: integer + tenant_id: + description: The Azure tenant ID of the App Registration. + example: 11111111-2222-3333-4444-555555555555 + type: string required: - - base - - datadog + - tenant_id + - client_id + - resource_collection_enabled + - subscription_count + - error_count + type: object + SecurityMonitoringGoogleWorkspaceIntegrationCredentialsValidateAttributes: + description: The Google Workspace credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace' + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets' + required: + - integration_type + - domain + - secrets type: object - VulnerabilityDependencyLocations: - description: Static library vulnerability location. + SecurityMonitoringOktaIntegrationCredentialsValidateAttributes: + description: The Okta credentials to validate against the external entity source. properties: - block: - $ref: '#/components/schemas/DependencyLocation' - name: - $ref: '#/components/schemas/DependencyLocation' - version: - $ref: '#/components/schemas/DependencyLocation' + domain: + description: The domain associated with the external entity source. + example: siem-test.com + type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeOkta' + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigOktaSecrets' required: - - block + - integration_type + - domain + - secrets type: object - Library: - description: Vulnerability library. + SecurityMonitoringEntraIdIntegrationCredentialsValidateAttributes: + description: The Entra ID credentials to validate against the external entity source. properties: - name: - description: Vulnerability library name. - example: linux-aws-5.15 + domain: + description: The domain associated with the external entity source. + example: siem-test.com type: string - version: - description: Vulnerability library version. - example: 5.15.0 + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeEntraId' + required: + - integration_type + - domain + type: object + SecurityMonitoringCrowdStrikeIntegrationCredentialsValidateAttributes: + description: The CrowdStrike credentials to validate against the external entity source. + properties: + domain: + description: The domain associated with the external entity source. + example: api.crowdstrike.com type: string + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeCrowdStrike' + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigCrowdStrikeSecrets' required: - - name + - integration_type + - domain + - secrets type: object - Remediation: - description: Vulnerability remediation. + SecurityMonitoringSentinelOneIntegrationCredentialsValidateAttributes: + description: The SentinelOne credentials to validate against the external entity source. properties: - auto_solvable: - description: >- - Whether the vulnerability can be resolved when recompiling the - package or not. - example: false - type: boolean - avoided_advisories: - description: Avoided advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - fixed_advisories: - description: Remediation fixed advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - library_name: - description: Library name remediating the vulnerability. - example: stdlib + domain: + description: The domain associated with the external entity source. + example: acme.sentinelone.net type: string - library_version: - description: Library version remediating the vulnerability. - example: Upgrade to a version >= 1.20.0 + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeSentinelOne' + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSentinelOneSecrets' + required: + - integration_type + - domain + - secrets + type: object + SecurityMonitoringGoogleWorkspaceIntegrationConfigUpdateAttributes: + description: Fields to update on a Google Workspace entity context sync configuration. + properties: + domain: + description: The new domain associated with the external entity source. + example: siem-test.com type: string - new_advisories: - description: New advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - remaining_advisories: - description: Remaining advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - type: - description: Remediation type. - example: text + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeGoogleWorkspace' + name: + description: The new display name for the entity context sync configuration. + example: My GWS Integration (renamed) type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' required: - - type - - library_name - - library_version - - auto_solvable - - fixed_advisories - - remaining_advisories - - new_advisories - - avoided_advisories + - integration_type type: object - VulnerabilityRisks: - description: Vulnerability risks. + SecurityMonitoringOktaIntegrationConfigUpdateAttributes: + description: Fields to update on an Okta entity context sync configuration. properties: - epss: - $ref: '#/components/schemas/EPSS' - exploit_available: - description: Vulnerability public exploit availability. - example: false - type: boolean - exploit_sources: - description: Vulnerability exploit sources. - example: - - NIST - items: - example: NIST - type: string - type: array - exploitation_probability: - description: Vulnerability exploitation probability. - example: false - type: boolean - poc_exploit_available: - description: Vulnerability POC exploit availability. - example: false + domain: + description: The new domain associated with the external entity source. + example: siem-test.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeOkta' + name: + description: The new display name for the entity context sync configuration. + example: My Okta Integration (renamed) + type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigOktaSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' required: - - exploitation_probability - - poc_exploit_available - - exploit_available - - exploit_sources + - integration_type type: object - VulnerabilityRelationshipsAffects: - description: Relationship type. + SecurityMonitoringEntraIdIntegrationConfigUpdateAttributes: + description: Fields to update on an Entra ID entity context sync configuration. properties: - data: - $ref: '#/components/schemas/VulnerabilityRelationshipsAffectsData' + domain: + description: The new domain associated with the external entity source. + example: siem-test.com + type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeEntraId' + name: + description: The new display name for the entity context sync configuration. + example: My Entra ID Integration (renamed) + type: string + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' required: - - data + - integration_type type: object - CloudWorkloadSecurityAgentRuleActions: - description: The array of actions the rule can perform if triggered - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' - nullable: true - type: array - CloudWorkloadSecurityAgentRuleCreatorAttributes: - description: The attributes of the user who created the Agent rule + SecurityMonitoringCrowdStrikeIntegrationConfigUpdateAttributes: + description: Fields to update on a CrowdStrike entity context sync configuration. properties: - handle: - description: The handle of the user - example: datadog.user@example.com + domain: + description: The new domain associated with the external entity source. + example: api.crowdstrike.com type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeCrowdStrike' name: - description: The name of the user - example: Datadog User - nullable: true + description: The new display name for the entity context sync configuration. + example: My CrowdStrike Integration (renamed) type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigCrowdStrikeSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type type: object - CloudWorkloadSecurityAgentRuleUpdaterAttributes: - description: The attributes of the user who last updated the Agent rule + SecurityMonitoringSentinelOneIntegrationConfigUpdateAttributes: + description: Fields to update on a SentinelOne entity context sync configuration. properties: - handle: - description: The handle of the user - example: datadog.user@example.com + domain: + description: The new domain associated with the external entity source. + example: acme.sentinelone.net type: string + enabled: + description: Whether the entity context sync should be enabled. + example: true + type: boolean + integration_type: + $ref: '#/components/schemas/SecurityMonitoringIntegrationTypeSentinelOne' name: - description: The name of the user - example: Datadog User - nullable: true + description: The new display name for the entity context sync configuration. + example: My SentinelOne Integration (renamed) type: string + secrets: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSentinelOneSecrets' + settings: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigSettings' + required: + - integration_type type: object + NotificationRulePreviewResults: + description: List of preview results for each rule type matched by the notification rule. + example: + - notification_status: DEFAULT + rule_type: log_detection + items: + $ref: '#/components/schemas/NotificationRulePreviewResult' + type: array SecurityFilterExclusionFilterResponse: description: A single exclusion filter. properties: @@ -10132,70 +31932,290 @@ components: example: Exclude staging type: string query: - description: >- - Exclusion filter query. Logs that match this query are excluded from - the security filter. + description: Exclusion filter query. Logs that match this query are excluded from the security filter. example: source:staging type: string required: - name - query type: object - SecurityMonitoringUser: - description: A user. + SecurityFilterVersionEntry: + description: A single security filter as it existed at a given configuration version. properties: - handle: - description: The handle of the user. - example: john.doe@datadoghq.com + exclusion_filters: + description: The list of exclusion filters applied in this security filter. + items: + $ref: '#/components/schemas/SecurityFilterExclusionFilterResponse' + type: array + filtered_data_type: + $ref: '#/components/schemas/SecurityFilterFilteredDataType' + id: + description: The ID of the security filter. + example: '123' type: string + is_builtin: + description: Whether the security filter is the built-in filter. + example: false + type: boolean + is_enabled: + description: Whether the security filter is enabled. + example: true + type: boolean name: - description: The name of the user. - example: John Doe - nullable: true + description: The name of the security filter. + example: Test Security Filter + type: string + query: + description: The query of the security filter. + example: source:test + type: string + version: + description: The version of this security filter. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + required: + - id + - name + - version + - query + - is_enabled + - exclusion_filters + - filtered_data_type + - is_builtin + type: object + SecurityMonitoringRuleQueryAggregation: + description: The aggregation type. + enum: + - count + - cardinality + - sum + - max + - new_value + - geo_data + - event_count + - none + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - SUM + - MAX + - NEW_VALUE + - GEO_DATA + - EVENT_COUNT + - NONE + SecurityMonitoringStandardDataSource: + default: logs + description: Source of events, either logs, audit trail, security signals, or Datadog events. `app_sec_spans` is deprecated in favor of `spans`. + enum: + - logs + - audit + - app_sec_spans + - spans + - security_runtime + - network + - events + - security_signals + example: logs + type: string + x-enum-varnames: + - LOGS + - AUDIT + - APP_SEC_SPANS + - SPANS + - SECURITY_RUNTIME + - NETWORK + - EVENTS + - SECURITY_SIGNALS + SuppressionVersions: + description: A suppression version with a list of updates. + properties: + changes: + description: A list of changes. + items: + $ref: '#/components/schemas/VersionHistoryUpdate' + type: array + suppression: + $ref: '#/components/schemas/SecurityMonitoringSuppressionAttributes' + type: object + SecurityMonitoringContentPackStateDetails: + description: |- + Type-specific details for a content pack state. The set of fields present depends + on the content pack's `type`. When Cloud SIEM is inactive for the requesting organization, `onboarding` is returned instead of the content pack's usual type, such as `logs` or `vulnerability`.` + discriminator: + mapping: + appsec: '#/components/schemas/SecurityMonitoringContentPackAppSecDetails' + audit: '#/components/schemas/SecurityMonitoringContentPackAuditDetails' + entity: '#/components/schemas/SecurityMonitoringContentPackEntityDetails' + logs: '#/components/schemas/SecurityMonitoringContentPackLogsDetails' + onboarding: '#/components/schemas/SecurityMonitoringContentPackOnboardingDetails' + threat_intel: '#/components/schemas/SecurityMonitoringContentPackThreatIntelDetails' + vulnerability: '#/components/schemas/SecurityMonitoringContentPackVulnerabilityDetails' + propertyName: type + properties: + cp_activation: + $ref: '#/components/schemas/SecurityMonitoringContentPackActivation' + data_last_seen: + $ref: '#/components/schemas/SecurityMonitoringContentPackTimestampBucket' + filters_configured: + description: |- + Whether filters (Security Filters or Index Query depending on the pricing model) are + present and correctly configured to route logs into Cloud SIEM. + example: true + type: boolean + integration_installed_status: + $ref: '#/components/schemas/SecurityMonitoringContentPackIntegrationStatus' + logs_seen_from_any_index: + description: Whether logs for this content pack have been seen in any Datadog index in the last 72 hours. + example: true + type: boolean + siem_index_incorrect: + description: Whether the Cloud SIEM index configuration is incorrect (only applies to certain pricing models). + example: false + type: boolean + type: + $ref: '#/components/schemas/SecurityFilterFilteredDataType' + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + - filters_configured + - logs_seen_from_any_index + - siem_index_incorrect + type: object + SecurityMonitoringContentPackStatus: + description: The current operational status of a content pack. + enum: + - install + - activate + - initializing + - active + - warning + - broken + - not_configured + example: active + type: string + x-enum-descriptions: + - Not activated; no logs detected in the last 72 hours. + - Not activated; logs are flowing into a Datadog index but not yet routed through Cloud SIEM. + - Activated; awaiting first log ingestion. + - Activated; logs received within the last 24 hours. + - Activated; integration not installed or logs last seen 24 to 72 hours ago. + - Activated; no logs for over 72 hours, filter missing, or Cloud SIEM index incorrectly ordered. + - Activated, but no credentials are configured (entity content packs only). + x-enum-varnames: + - INSTALL + - ACTIVATE + - INITIALIZING + - ACTIVE + - WARNING + - BROKEN + - NOT_CONFIGURED + SecurityMonitoringDatasetDefinition: + description: |- + The definition of the dataset. The shape depends on the value of `data_source`. + Use `reference_table` or `managed_resource` for a referential dataset, or one of the + event platform sources (for example `logs`, `audit`, `events`, `spans`, `rum`) for + an event platform dataset. + properties: + columns: + description: For event platform datasets, the list of columns exposed by the dataset. + items: + $ref: '#/components/schemas/SecurityMonitoringDatasetColumn' + type: array + data_source: + description: The data source backing this dataset definition. + example: logs + type: string + indexes: + description: For event platform datasets, the list of indexes to query. + items: + type: string + type: array + name: + description: The unique name of the dataset. Must start with a lowercase letter and contain only lowercase letters, digits, and underscores (max 255 characters). + example: sample_dataset + type: string + query_filter: + description: For referential datasets, an optional filter expression applied to the table. + example: status = 'active' type: string + search: + $ref: '#/components/schemas/SecurityMonitoringDatasetSearch' + storage: + description: Storage tier the dataset reads from. Applies to event platform datasets. + example: hot + type: string + table_name: + description: For referential datasets, the name of the underlying table. + example: my_reference_table + type: string + time_window: + $ref: '#/components/schemas/SecurityMonitoringDatasetTimeWindow' + required: + - data_source + - name type: object - SecurityMonitoringRuleQueryAggregation: - description: The aggregation type. - enum: + SecurityMonitoringDatasetDependentsAttributes: + description: The attributes of a dataset dependents entry. + properties: + count: + description: The number of resources that depend on the dataset. + example: 0 + format: int64 + type: integer + datasetId: + description: The UUID of the dataset whose dependencies are being reported. + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + ids: + $ref: '#/components/schemas/SecurityMonitoringDatasetDependentsIds' + resource_type: + description: The type of resource that depends on the dataset. + example: security_detection_rule + type: string + required: + - datasetId + - resource_type + - ids - count - - cardinality - - sum - - max - - new_value - - geo_data - - event_count - - none - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - SUM - - MAX - - NEW_VALUE - - GEO_DATA - - EVENT_COUNT - - NONE - SecurityMonitoringStandardDataSource: - default: logs - description: Source of events, either logs, audit trail, or Datadog events. + type: object + SecurityMonitoringDatasetDependentsType: + description: The type of resource for a dataset dependents entry. enum: - - logs - - audit - - app_sec_spans - - spans - - security_runtime - - network - - events - example: logs + - datasetDependents + example: datasetDependents type: string x-enum-varnames: - - LOGS - - AUDIT - - APP_SEC_SPANS - - SPANS - - SECURITY_RUNTIME - - NETWORK - - EVENTS + - DATASET_DEPENDENTS + SecurityMonitoringDatasetVersionHistoryEntries: + additionalProperties: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionEntry' + description: A map from version number (as a string) to the dataset state at that version. + type: object + EntityContextRevision: + description: A single historical revision of an entity, including the time range during which the revision was observed. + properties: + attributes: + $ref: '#/components/schemas/EntityContextRevisionAttributes' + first_seen_at: + description: The first time the entity was observed at this revision. + example: '2026-04-01T00:00:00Z' + format: date-time + type: string + last_seen_at: + description: The last time the entity was observed at this revision. + example: '2026-05-01T00:00:00Z' + format: date-time + type: string + required: + - attributes + - first_seen_at + - last_seen_at + type: object SecurityMonitoringRuleTypeTest: description: The rule type. enum: @@ -10214,11 +32234,9 @@ components: minimum: 0 type: integer flaggedIPType: - $ref: >- - #/components/schemas/SecurityMonitoringRuleCaseActionOptionsFlaggedIPType + $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptionsFlaggedIPType' userBehaviorName: - $ref: >- - #/components/schemas/SecurityMonitoringRuleCaseActionOptionsUserBehaviorName + $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptionsUserBehaviorName' type: object SecurityMonitoringRuleCaseActionType: description: The action type. @@ -10233,14 +32251,76 @@ components: - BLOCK_USER - USER_BEHAVIOR - FLAG_IP + SecurityMonitoringRuleAnomalyDetectionOptionsBucketDuration: + description: |- + Duration in seconds of the time buckets used to aggregate events matched by the rule. + Must be greater than or equal to 300. + enum: + - 300 + - 600 + - 900 + - 1800 + - 3600 + - 10800 + example: 300 + format: int32 + type: integer + x-enum-varnames: + - FIVE_MINUTES + - TEN_MINUTES + - FIFTEEN_MINUTES + - THIRTY_MINUTES + - ONE_HOUR + - THREE_HOURS + SecurityMonitoringRuleAnomalyDetectionOptionsDetectionTolerance: + description: |- + An optional parameter that sets how permissive anomaly detection is. + Higher values require higher deviations before triggering a signal. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + example: 5 + format: int32 + type: integer + x-enum-varnames: + - ONE + - TWO + - THREE + - FOUR + - FIVE + SecurityMonitoringRuleInstantaneousBaseline: + description: When set to true, Datadog uses previous values that fall within the defined learning window to construct the baseline, enabling the system to establish an accurate baseline more rapidly rather than relying solely on gradual learning over time. + example: false + type: boolean + SecurityMonitoringRuleAnomalyDetectionOptionsLearningDuration: + description: Learning duration in hours. Anomaly detection waits for at least this amount of historical data before it starts evaluating. + enum: + - 1 + - 6 + - 12 + - 24 + - 48 + - 168 + - 336 + format: int32 + type: integer + x-enum-varnames: + - ONE_HOUR + - SIX_HOURS + - TWELVE_HOURS + - ONE_DAY + - TWO_DAYS + - ONE_WEEK + - TWO_WEEKS CloudConfigurationRegoRule: description: Rule details. properties: policy: - description: >- - The policy written in `rego`, see: - https://www.openpolicyagent.org/docs/latest/policy-language/ - example: | + description: 'The policy written in `rego`, see: https://www.openpolicyagent.org/docs/latest/policy-language/' + example: |- package datadog import data.datadog.output as dd_output @@ -10266,13 +32346,12 @@ components: } type: string resourceTypes: - description: >- - List of resource types that will be evaluated upon. Must have at - least one element. + description: List of resource types that will be evaluated upon. Must have at least one element. example: - gcp_iam_service_account - gcp_iam_policy items: + description: A cloud resource type identifier. type: string type: array required: @@ -10280,55 +32359,36 @@ components: - resourceTypes type: object SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations: - description: >- - If true, signals are suppressed for the first 24 hours. In that time, - Datadog learns the user's regular - - access locations. This can be helpful to reduce noise and infer VPN - usage or credentialed API access. + description: |- + If true, signals are suppressed for the first 24 hours. In that time, Datadog learns the user's regular + access locations. This can be helpful to reduce noise and infer VPN usage or credentialed API access. example: true type: boolean + SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocationsDuration: + description: The duration in days during which Datadog learns the user's regular access locations. After this period, signals are generated for accesses from unknown locations. + format: int32 + maximum: 30 + minimum: 1 + nullable: true + type: integer SecurityMonitoringRuleNewValueOptionsForgetAfter: description: The duration in days after which a learned value is forgotten. - enum: - - 1 - - 2 - - 7 - - 14 - - 21 - - 28 format: int32 + maximum: 30 + minimum: 1 type: integer - x-enum-varnames: - - ONE_DAY - - TWO_DAYS - - ONE_WEEK - - TWO_WEEKS - - THREE_WEEKS - - FOUR_WEEKS SecurityMonitoringRuleNewValueOptionsLearningDuration: default: 0 - description: >- - The duration in days during which values are learned, and after which - signals will be generated for values that - - weren't learned. If set to 0, a signal will be generated for all new - values after the first value is learned. - enum: - - 0 - - 1 - - 7 + description: |- + The duration in days during which values are learned, and after which signals will be generated for values that + weren't learned. If set to 0, a signal will be generated for all new values after the first value is learned. format: int32 + maximum: 30 + minimum: 0 type: integer - x-enum-varnames: - - ZERO_DAYS - - ONE_DAY - - SEVEN_DAYS SecurityMonitoringRuleNewValueOptionsLearningMethod: default: duration - description: >- - The learning method used to determine when signals should be generated - for values that weren't learned. + description: The learning method used to determine when signals should be generated for values that weren't learned. enum: - duration - threshold @@ -10338,9 +32398,7 @@ components: - THRESHOLD SecurityMonitoringRuleNewValueOptionsLearningThreshold: default: 0 - description: >- - A number of occurrences after which signals will be generated for values - that weren't learned. + description: A number of occurrences after which signals will be generated for values that weren't learned. enum: - 0 - 1 @@ -10349,6 +32407,30 @@ components: x-enum-varnames: - ZERO_OCCURRENCES - ONE_OCCURRENCE + SecurityMonitoringRuleSequenceDetectionStepTransition: + description: Transition from a parent step to a child step within a sequence detection rule. + properties: + child: + description: Name of the child step. + type: string + evaluationWindow: + $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' + parent: + description: Name of the parent step. + type: string + type: object + SecurityMonitoringRuleSequenceDetectionStep: + description: Step definition for sequence detection containing the step name, condition, and evaluation window. + properties: + condition: + description: Condition referencing rule queries (e.g., `a > 0`). + type: string + evaluationWindow: + $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' + name: + description: Unique name identifying the step. + type: string + type: object SecurityMonitoringThirdPartyRootQuery: description: A query to be combined with the third party case query. properties: @@ -10369,11 +32451,121 @@ components: changes: description: A list of changes. items: - $ref: '#/components/schemas/RuleVersionUpdate' + $ref: '#/components/schemas/VersionHistoryUpdate' type: array rule: $ref: '#/components/schemas/SecurityMonitoringRuleResponse' type: object + SampleLogGenerationSubscriptionStatus: + description: The status of the subscription. + enum: + - subscribed + - renewed + - unsubscribed + - no_active_subscription + - not_available + - active + - expired + example: subscribed + type: string + x-enum-varnames: + - SUBSCRIBED + - RENEWED + - UNSUBSCRIBED + - NO_ACTIVE_SUBSCRIPTION + - NOT_AVAILABLE + - ACTIVE + - EXPIRED + SampleLogGenerationDuration: + default: 3d + description: How long the subscription should remain active before expiring. + enum: + - 1h + - 1d + - 3d + - 7d + example: 3d + type: string + x-enum-varnames: + - ONE_HOUR + - ONE_DAY + - THREE_DAYS + - SEVEN_DAYS + SecurityMonitoringSignalVersion: + description: Version of the updated signal. If server side version is higher, update will be rejected. + format: int64 + type: integer + SecurityMonitoringSignalsBulkTriageEventAttributes: + description: Triage attributes of a security signal returned in a bulk update response. + properties: + archive_comment: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' + archive_comment_timestamp: + description: Timestamp of the last edit to the archive comment. + format: int64 + type: integer + archive_comment_user: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + archive_reason: + $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' + assignee: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + id: + description: The unique ID of the security signal. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + incident_ids: + $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' + state: + $ref: '#/components/schemas/SecurityMonitoringSignalState' + state_update_timestamp: + description: Timestamp of the last state update. + format: int64 + type: integer + state_update_user: + $ref: '#/components/schemas/SecurityMonitoringTriageUser' + required: + - id + - state + - assignee + - incident_ids + type: object + SecurityMonitoringSignalArchiveComment: + description: Optional comment to display on archived signals. + type: string + SecurityMonitoringSignalArchiveReason: + description: Reason a signal is archived. + enum: + - none + - false_positive + - testing_or_maintenance + - remediated + - investigated_case_opened + - true_positive_benign + - true_positive_malicious + - other + type: string + x-enum-varnames: + - NONE + - FALSE_POSITIVE + - TESTING_OR_MAINTENANCE + - REMEDIATED + - INVESTIGATED_CASE_OPENED + - TRUE_POSITIVE_BENIGN + - TRUE_POSITIVE_MALICIOUS + - OTHER + SecurityMonitoringSignalState: + description: The new triage state of the signal. + enum: + - open + - archived + - under_review + example: open + type: string + x-enum-varnames: + - OPEN + - ARCHIVED + - UNDER_REVIEW SecurityMonitoringTriageUser: description: Object representing a given user entity. properties: @@ -10400,54 +32592,55 @@ components: required: - uuid type: object - SecurityMonitoringSignalVersion: - description: >- - Version of the updated signal. If server side version is higher, update - will be rejected. - format: int64 - type: integer - SecurityMonitoringSignalArchiveComment: - description: Optional comment to display on archived signals. - type: string - SecurityMonitoringSignalArchiveReason: - description: Reason a signal is archived. - enum: - - none - - false_positive - - testing_or_maintenance - - investigated_case_opened - - other - type: string - x-enum-varnames: - - NONE - - FALSE_POSITIVE - - TESTING_OR_MAINTENANCE - - INVESTIGATED_CASE_OPENED - - OTHER SecurityMonitoringSignalIncidentIds: description: Array of incidents that are associated with this signal. example: - 2066 items: - description: >- - Public ID attribute of the incident that is associated with the - signal. + description: Public ID attribute of the incident that is associated with the signal. example: 2066 format: int64 type: integer type: array - SecurityMonitoringSignalState: - description: The new triage state of the signal. + SignalEntityIdentity: + additionalProperties: {} + description: An identity entity related to a signal. The set of attributes is dynamic and depends on the source providing the identity. + example: + display_name: Test User + principal_id: user@example.com + type: object + SecurityMonitoringSignalSuggestedActionAttributes: + description: Attributes of a suggested action for a security signal. The available fields depend on the action type. + properties: + name: + description: The name of the investigation log query. + example: Cloudtrail events for user ARN + type: string + query_filter: + description: The log query filter for the investigation. + example: source:cloudtrail @userIdentity.arn:"foo" + type: string + template_variables: + $ref: '#/components/schemas/SecurityMonitoringSignalInvestigationQueryTemplateVariables' + title: + description: The title of the recommended blog post. + example: Monitor Okta logs to track system access and unusual activity + type: string + url: + description: The URL of the suggested action. + example: /logs?query=source%3Acloudtrail+%40userIdentity.arn%3A%22foo%22 + type: string + type: object + SecurityMonitoringSignalSuggestedActionType: + description: The type of the suggested action resource. enum: - - open - - archived - - under_review - example: open + - investigation_log_queries + - recommended_blog_posts + example: investigation_log_queries type: string x-enum-varnames: - - OPEN - - ARCHIVED - - UNDER_REVIEW + - INVESTIGATION_LOG_QUERIES + - RECOMMENDED_BLOG_POSTS SensitiveDataScannerGroupList: description: List of groups, ordered. properties: @@ -10531,56 +32724,77 @@ components: items: $ref: '#/components/schemas/SensitiveDataScannerRule' type: array - type: object - SensitiveDataScannerIncludedKeywordConfiguration: - description: >- - Object defining a set of keywords and a number of characters that help - reduce noise. - - You can provide a list of keywords you would like to check within a - defined proximity of the matching pattern. - - If any of the keywords are found within the proximity check, the match - is kept. - + type: object + SensitiveDataScannerIncludedKeywordConfiguration: + description: |- + Object defining a set of keywords and a number of characters that help reduce noise. + You can provide a list of keywords you would like to check within a defined proximity of the matching pattern. + If any of the keywords are found within the proximity check, the match is kept. If none are found, the match is discarded. properties: character_count: - description: >- - The number of characters behind a match detected by Sensitive Data - Scanner to look for the keywords defined. - - `character_count` should be greater than the maximum length of a - keyword defined for a rule. + description: |- + The number of characters behind a match detected by Sensitive Data Scanner to look for the keywords defined. + `character_count` should be greater than the maximum length of a keyword defined for a rule. example: 30 format: int64 maximum: 50 minimum: 1 type: integer keywords: - description: >- - Keyword list that will be checked during scanning in order to - validate a match. - + description: |- + Keyword list that will be checked during scanning in order to validate a match. The number of keywords in the list must be less than or equal to 30. example: - - credit card - - cc + - email + - address + - login items: + description: A keyword to match within the defined proximity of the detected pattern. type: string type: array use_recommended_keywords: - description: >- - Should the rule use the underlying standard pattern keyword - configuration. If set to `true`, the rule must be tied - - to a standard pattern. If set to `false`, the specified keywords and - `character_count` are applied. + description: |- + Should the rule use the underlying standard pattern keyword configuration. If set to `true`, the rule must be tied + to a standard pattern. If set to `false`, the specified keywords and `character_count` are applied. type: boolean required: - keywords - character_count type: object + SensitiveDataScannerSuppressions: + description: |- + Object describing the suppressions for a rule. There are three types of suppressions, `starts_with`, `ends_with`, and `exact_match`. + Suppressed matches are not obfuscated, counted in metrics, or displayed in the Findings page. + properties: + ends_with: + description: List of strings to use for suppression of matches ending with these strings. + example: + - '@example.com' + - another.example.com + items: + description: A string suffix; matches ending with this value are suppressed. + type: string + type: array + exact_match: + description: List of strings to use for suppression of matches exactly matching these strings. + example: + - admin@example.com + - user@example.com + items: + description: A string value; matches exactly equal to this value are suppressed. + type: string + type: array + starts_with: + description: List of strings to use for suppression of matches starting with these strings. + example: + - admin + - user + items: + description: A string prefix; matches starting with this value are suppressed. + type: string + type: array + type: object SensitiveDataScannerTextReplacement: description: Object describing how the scanned event will be replaced. properties: @@ -10595,11 +32809,7 @@ components: description: Required if type == 'replacement_string'. type: string should_save_match: - description: >- - Only valid when type == `replacement_string`. When enabled, matches - can be unmasked in logs by users with ‘Data Scanner Unmask’ - permission. As a security best practice, avoid masking for - highly-sensitive, long-lived data. + description: Only valid when type == `replacement_string`. When enabled, matches can be unmasked in logs by users with ‘Data Scanner Unmask’ permission. As a security best practice, avoid masking for highly-sensitive, long-lived data. type: boolean type: $ref: '#/components/schemas/SensitiveDataScannerTextReplacementType' @@ -10625,6 +32835,7 @@ components: included_keywords: description: List of included keywords. items: + description: A keyword used to increase match precision for the standard pattern. type: string type: array name: @@ -10632,15 +32843,10 @@ components: type: string pattern: deprecated: true - description: >- - (Deprecated) Regex to match, optionally documented for older - standard rules. Refer to the `description` field to understand what - the rule does. + description: (Deprecated) Regex to match, optionally documented for older standard rules. Refer to the `description` field to understand what the rule does. type: string priority: - description: >- - Integer from 1 (high) to 5 (low) indicating standard pattern issue - severity. + description: Integer from 1 (high) to 5 (low) indicating standard pattern issue severity. format: int64 maximum: 5 minimum: 1 @@ -10648,6 +32854,7 @@ components: tags: description: List of tags. items: + description: A tag associated with the standard pattern. type: string type: array type: object @@ -10669,9 +32876,10 @@ components: $ref: '#/components/schemas/CalculatedField' type: array cases: - description: Cases used for generating job results. + description: Cases used for generating job results. Up to 10 cases are allowed. items: $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' + maxItems: 10 type: array from: description: Starting time of data analyzed by the job. @@ -10679,9 +32887,7 @@ components: format: int64 type: integer groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. + description: Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. example: - service items: @@ -10703,9 +32909,10 @@ components: options: $ref: '#/components/schemas/HistoricalJobOptions' queries: - description: Queries for selecting logs analyzed by the job. + description: Queries for selecting logs analyzed by the job. Up to 10 queries are allowed. items: $ref: '#/components/schemas/HistoricalJobQuery' + maxItems: 10 type: array referenceTables: description: Reference tables used in the queries. @@ -10715,15 +32922,15 @@ components: tags: description: Tags for generated signals. items: + description: A tag string in `key:value` format. type: string type: array thirdPartyCases: - description: >- - Cases for generating results from third-party detection method. Only - available for third-party detection method. + description: Cases for generating results from third-party detection method. Only available for third-party detection method. Up to 10 cases are allowed. example: [] items: $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' + maxItems: 10 type: array to: description: Ending time of data analyzed by the job. @@ -10745,6 +32952,12 @@ components: JobDefinitionFromRule: description: Definition of a historical job based on a security monitoring rule. properties: + caseIndex: + description: Zero-based index of the rule case to use as the job's signal condition. When omitted, all cases are evaluated. Up to 10 cases are supported, so valid values are 0 to 9. + format: int32 + maximum: 9 + minimum: 0 + type: integer from: description: Starting time of data analyzed by the job. example: 1729843470000 @@ -10758,23 +32971,519 @@ components: description: Index used to load the data. example: cloud_siem type: string - notifications: - description: Notifications sent when the job is completed. - example: - - '@sns-cloudtrail-results' + notifications: + description: Notifications sent when the job is completed. + example: + - '@sns-cloudtrail-results' + items: + description: A notification recipient handle (for example, `@user` or `@channel`). + type: string + type: array + to: + description: Ending time of data analyzed by the job. + example: 1729847070000 + format: int64 + type: integer + required: + - id + - from + - to + - index + type: object + ScaRequestDataAttributesCommit: + description: Metadata about the commit associated with the SCA scan, including author, committer, and branch information. + properties: + author_date: + description: The date when the commit was authored. + type: string + author_email: + description: The email address of the commit author. + type: string + author_name: + description: The full name of the commit author. + type: string + branch: + description: The branch name on which the commit was made. + type: string + committer_email: + description: The email address of the person who committed the change. + type: string + committer_name: + description: The full name of the person who committed the change. + type: string + sha: + description: The SHA hash uniquely identifying the commit. + type: string + type: object + ScaRequestDataAttributesDependenciesItems: + description: A dependency found in the repository, including its identity, location, and reachability metadata. + properties: + exclusions: + description: A list of patterns or identifiers that should be excluded from analysis for this dependency. + items: + description: An exclusion pattern or identifier. + type: string + type: array + group: + description: The group or organization namespace of the dependency (e.g., Maven group ID). + type: string + is_dev: + description: Indicates whether this is a development-only dependency not used in production. + type: boolean + is_direct: + description: Indicates whether this is a direct dependency (as opposed to a transitive one). + type: boolean + language: + description: The programming language ecosystem of this dependency (e.g., java, python, javascript). + type: string + locations: + description: The list of source file locations where this dependency is declared. + items: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItems' + type: array + name: + description: The name of the dependency package. + type: string + package_manager: + description: The package manager responsible for this dependency (e.g., maven, pip, npm). + type: string + purl: + description: The Package URL (PURL) uniquely identifying this dependency. + type: string + reachable_symbol_properties: + description: Properties describing symbols from this dependency that are reachable in the application code. + items: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsReachableSymbolPropertiesItems' + type: array + version: + description: The version of the dependency. + type: string + type: object + ScaRequestDataAttributesFilesItems: + description: A file entry in the repository associated with a dependency manifest. + properties: + name: + description: The name or path of the file within the repository. + type: string + purl: + description: The Package URL (PURL) associated with the dependency declared in this file. + type: string + type: object + ScaRequestDataAttributesRelationsItems: + description: A dependency relation describing which other components a given component depends on. + properties: + depends_on: + description: The list of BOM references that this component directly depends on. + items: + description: A BOM reference of a dependency. + type: string + type: array + ref: + description: The BOM reference of the component that has dependencies. + type: string + type: object + ScaRequestDataAttributesRepository: + description: Information about the source code repository being analyzed. + properties: + url: + description: The URL of the repository. + type: string + type: object + ScaRequestDataAttributesVulnerabilitiesItems: + description: A vulnerability entry from the Software Bill of Materials (SBOM), describing a known security issue and the components it affects. + properties: + affects: + description: The list of components affected by this vulnerability. + items: + $ref: '#/components/schemas/ScaRequestDataAttributesVulnerabilitiesItemsAffectsItems' + type: array + bom_ref: + description: The unique BOM reference identifier for this vulnerability entry. + type: string + id: + description: The vulnerability identifier (e.g., CVE ID or similar). + type: string + type: object + McpScanRequestDataAttributesLibraries: + description: The list of libraries to scan for vulnerabilities. + items: + $ref: '#/components/schemas/McpScanRequestDataAttributesLibrariesItems' + type: array + LicensesListResponseDataAttributesLicenses: + description: The list of SPDX licenses returned by the API. + items: + $ref: '#/components/schemas/LicensesListResponseDataAttributesLicensesItems' + type: array + ResolveVulnerableSymbolsResponseResults: + description: The result of resolving vulnerable symbols for a specific package, identified by its PURL. + properties: + purl: + description: The Package URL (PURL) uniquely identifying the package for which vulnerable symbols are resolved. + type: string + vulnerable_symbols: + description: The list of vulnerable symbol groups found in this package, organized by advisory. + items: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponseResultsVulnerableSymbols' + type: array + type: object + AiMemoryViolationType: + description: The type of AI memory violation result indicating whether it is a true positive or false positive. + enum: + - TP + - FP + example: FP + type: string + x-enum-varnames: + - TP + - FP + CustomRuleRevisionAttributesCategory: + description: Rule category + enum: + - SECURITY + - BEST_PRACTICES + - CODE_STYLE + - ERROR_PRONE + - PERFORMANCE + example: SECURITY + type: string + x-enum-varnames: + - SECURITY + - BEST_PRACTICES + - CODE_STYLE + - ERROR_PRONE + - PERFORMANCE + AiCustomRuleRevisionExecutionMode: + description: The execution mode for an AI rule revision. + enum: + - auto + - manual + - always + example: auto + type: string + x-enum-varnames: + - AUTO + - MANUAL + - ALWAYS + Language: + description: Programming language + enum: + - PYTHON + - JAVASCRIPT + - TYPESCRIPT + - JAVA + - GO + - YAML + - RUBY + - CSHARP + - PHP + - KOTLIN + - SWIFT + example: PYTHON + type: string + x-enum-varnames: + - PYTHON + - JAVASCRIPT + - TYPESCRIPT + - JAVA + - GO + - YAML + - RUBY + - CSHARP + - PHP + - KOTLIN + - SWIFT + CustomRuleRevisionAttributesSeverity: + description: Rule severity + enum: + - ERROR + - WARNING + - NOTICE + example: ERROR + type: string + x-enum-varnames: + - ERROR + - WARNING + - NOTICE + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItems: + description: A static analysis rule within a ruleset, including its definition, metadata, and associated test cases. + properties: + arguments: + description: The list of configurable arguments accepted by this rule. + items: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsArgumentsItems' + type: array + category: + description: The category classifying the type of issue this rule detects (e.g., security, style, performance). + type: string + checksum: + description: A checksum of the rule definition used to detect changes. + type: string + code: + description: The rule implementation code used by the static analysis engine. + type: string + created_at: + description: The date and time when the rule was created. + format: date-time + type: string + created_by: + description: The identifier of the user or system that created the rule. + type: string + cve: + description: The CVE identifier associated with the vulnerability this rule detects, if applicable. + type: string + cwe: + description: The CWE identifier associated with the weakness category this rule detects, if applicable. + type: string + data: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsData' + description: + description: A detailed explanation of what the rule detects and why it matters. + type: string + documentation_url: + description: A URL pointing to additional documentation for this rule. + type: string + entity_checked: + description: The code entity type (e.g., function, class, variable) that this rule inspects. + type: string + is_published: + description: Indicates whether the rule is publicly published and available to all users. + type: boolean + is_testing: + description: Indicates whether the rule is in testing mode and not yet promoted to production. + type: boolean + language: + description: The programming language this rule applies to. + type: string + last_updated_at: + description: The date and time when the rule was last modified. + format: date-time + type: string + last_updated_by: + description: The identifier of the user or system that last updated the rule. + type: string + name: + description: The unique name identifying this rule within its ruleset. + type: string + regex: + description: A regular expression pattern used by the rule for pattern-based detection. + type: string + severity: + description: The severity level of findings produced by this rule (e.g., ERROR, WARNING, NOTICE). + type: string + short_description: + description: A brief summary of what the rule detects, suitable for display in listings. + type: string + should_use_ai_fix: + description: Indicates whether an AI-generated fix suggestion should be offered for findings from this rule. + type: boolean + tests: + description: The list of test cases used to validate the rule's behavior. + items: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsTestsItems' + type: array + tree_sitter_query: + description: The Tree-sitter query expression used by the rule to match code patterns in the AST. + type: string + type: + description: The rule type indicating the detection mechanism used (e.g., tree_sitter, regex). + type: string + required: + - data + type: object + Argument: + description: A named argument for a custom static analysis rule. + properties: + description: + description: Base64-encoded argument description + example: YXJndW1lbnQgZGVzY3JpcHRpb24= + type: string + name: + description: Base64-encoded argument name + example: YXJndW1lbnRfbmFtZQ== + type: string + required: + - name + - description + type: object + CustomRuleRevisionTest: + description: A test case associated with a custom rule revision, used to validate rule behavior. + properties: + annotation_count: + description: Expected violation count + example: 1 + format: int64 + type: integer + code: + description: Test code + example: Y29uZHVjdG9yOgogICAgLSBkZXBsb3lfb25seTogdHJ1ZQ== + type: string + filename: + description: Test filename + example: test.yaml + type: string + required: + - filename + - code + - annotation_count + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItems: + description: A ruleset returned in the response, containing its metadata and associated rules. + properties: + data: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsData' + description: + description: A detailed description of the ruleset's purpose and the types of issues it targets. + type: string + name: + description: The unique name of the ruleset. + type: string + rules: + description: The list of static analysis rules included in this ruleset. + items: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItems' + type: array + short_description: + description: A brief summary of the ruleset, suitable for display in listings. + type: string + required: + - data + type: object + SecretRuleDataAttributesMatchValidation: + description: Configuration for validating whether a detected secret is active by making an HTTP request and inspecting the response. + properties: + endpoint: + description: The URL endpoint to call when validating a detected secret. + type: string + hosts: + description: The list of hostnames to include when performing secret match validation. + items: + description: A hostname used during match validation. + type: string + type: array + http_method: + description: The HTTP method (e.g., GET, POST) to use when making the validation request. + type: string + invalid_http_status_code: + description: The HTTP status code ranges that indicate the detected secret is invalid or inactive. + items: + $ref: '#/components/schemas/SecretRuleDataAttributesMatchValidationInvalidHttpStatusCodeItems' + type: array + request_headers: + additionalProperties: + type: string + description: A map of HTTP header names to values to include in the validation request. + type: object + timeout_seconds: + description: The maximum number of seconds to wait for a response during validation before timing out. + format: int64 + maximum: 18446744073709552000 + minimum: 0 + type: integer + type: + description: The type of match validation to perform (e.g., http). + type: string + valid_http_status_code: + description: The HTTP status code ranges that indicate the detected secret is valid and active. + items: + $ref: '#/components/schemas/SecretRuleDataAttributesMatchValidationValidHttpStatusCodeItems' + type: array + type: object + AnalysisRequestRule: + description: A static analysis rule to apply during code analysis. + properties: + category: + description: The category of the rule (for example, `BEST_PRACTICES`, `SECURITY`). + example: BEST_PRACTICES + type: string + checksum: + description: A checksum of the rule definition. + example: abc123def456 + type: string + code: + description: The base64-encoded rule implementation code. + example: ZnVuY3Rpb24gdmlzaXQobm9kZSkge30= + type: string + entity_checked: + description: The code entity type checked by the rule, applicable when rule type is `AST_CHECK`. + nullable: true + type: string + id: + description: The unique identifier of the rule. + example: python-best-practices/no-exit + type: string + language: + description: The programming language this rule targets. + example: python + type: string + regex: + description: A base64-encoded regex pattern used by the rule, applicable when rule type is `REGEX`. + nullable: true + type: string + severity: + description: The severity of findings from this rule (for example, `ERROR`, `WARNING`). + example: WARNING + type: string + tree_sitter_query: + description: The base64-encoded tree-sitter query used by the rule. + example: KGNhbGwgbmFtZTogKGF0dHJpYnV0ZSkpQHZhbA== + type: string + type: + description: The rule type indicating the detection mechanism (for example, `TREE_SITTER_QUERY`). + example: TREE_SITTER_QUERY + type: string + required: + - id + - category + - checksum + - language + - severity + - tree_sitter_query + - type + - code + type: object + AnalysisRuleResponse: + description: The result of applying a single static analysis rule to the analyzed source code. + properties: + errors: + description: A list of error messages encountered while executing the rule. + example: [] + items: + type: string + type: array + execution_error: + description: An error message if the rule execution failed, or null if execution succeeded. + example: null + nullable: true + type: string + execution_time_ms: + description: The time taken to execute the rule, in milliseconds. + example: 42 + format: int64 + type: integer + identifier: + description: The identifier of the rule that produced this response. + example: python-best-practices/no-exit + type: string + output: + description: The raw output produced by the rule engine during execution. + example: '' + type: string + violations: + description: The list of violations found by this rule. items: - type: string + $ref: '#/components/schemas/AnalysisViolation' type: array - to: - description: Ending time of data analyzed by the job. - example: 1729847070000 - format: int64 - type: integer required: - - id - - from - - to - - index + - errors + - execution_error + - execution_time_ms + - identifier + - output + - violations + type: object + NodeType: + additionalProperties: {} + description: A tree-sitter node type definition for a given language, describing the node's structure, subtypes, and fields. type: object CustomFrameworkControl: description: Framework Control. @@ -10788,29 +33497,290 @@ components: example: - '["def-000-abc"]' items: + description: A rule ID associated with the control. type: string type: array required: - name - rules_id type: object + RuleBasedViewRule: + description: A compliance rule along with its evaluation statistics and framework mappings. + properties: + compliance_frameworks: + $ref: '#/components/schemas/RuleBasedViewComplianceFrameworks' + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + id: + description: Unique identifier of the rule. + example: qjx-udx-xo8 + type: string + name: + description: Human-readable name of the rule. + example: IAM roles should not allow untrusted GitHub Actions to assume them + type: string + resourceAttributes: + $ref: '#/components/schemas/RuleBasedViewResourceAttributes' + resourceCategory: + description: Resource category targeted by the rule. + example: identity + type: string + resourceType: + description: Resource type targeted by the rule. + example: aws_iam_role + type: string + stats: + $ref: '#/components/schemas/RuleBasedViewRuleStats' + status: + description: Severity associated with the rule (for example, `info`, `low`, `medium`, `high`, or `critical`). + example: critical + type: string + tags: + $ref: '#/components/schemas/RuleBasedViewRuleTags' + type: + $ref: '#/components/schemas/RuleBasedViewRuleCategory' + required: + - compliance_frameworks + - enabled + - id + - name + - resourceAttributes + - resourceCategory + - resourceType + - stats + - status + - tags + - type + type: object + OwnershipInferenceItem: + description: A single ownership inference, scoped to a specific owner type. + properties: + checksum: + description: A checksum that uniquely identifies the current state of the inference. Required when submitting feedback. + example: abc123 + type: string + confidence: + description: The confidence score of the inference, expressed as a numeric string with up to four decimal places. + example: '0.9500' + type: string + created_at: + description: The time when the inference was created. + example: '2026-01-15T10:00:00Z' + format: date-time + type: string + evidence_versions: + $ref: '#/components/schemas/OwnershipEvidenceVersions' + explanation: + description: A human-readable explanation of how the inference was produced. + example: High confidence match + type: string + id: + description: The identifier of the inference, formatted as `resource_id:owner_type`. + example: test-resource:team + type: string + owner_type: + $ref: '#/components/schemas/OwnershipOwnerType' + primary_contact_ref: + description: The primary contact reference for the inferred owner, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + sources: + $ref: '#/components/schemas/OwnershipInferenceSources' + status: + $ref: '#/components/schemas/OwnershipInferenceStatus' + updated_at: + description: The time when the inference was last updated. + example: '2026-01-15T10:00:00Z' + format: date-time + type: string + required: + - id + - owner_type + - confidence + - explanation + - evidence_versions + - sources + - status + - checksum + - created_at + - updated_at + type: object + OwnershipHistoryItem: + description: A single ownership inference history entry. + properties: + checksum: + description: A checksum identifying the state of the inference at this point in time. + example: '' + type: string + confidence: + description: The confidence score of the inference, expressed as a numeric string with up to four decimal places. + example: '0.9000' + type: string + created_at: + description: The time this history entry was created. + example: '2026-01-15T10:00:00Z' + format: date-time + type: string + evidence_versions: + $ref: '#/components/schemas/OwnershipEvidenceVersions' + explanation: + description: A human-readable explanation of how the inference was produced. + example: '' + type: string + failed_at: + description: The time when this inference failed, if applicable. + example: '2026-01-15T10:00:00Z' + format: date-time + nullable: true + type: string + failure_reason: + description: The reason why this inference failed, if applicable. + example: missing evidence + nullable: true + type: string + id: + description: The unique identifier of the history entry. + example: 100 + format: int64 + type: integer + owner_type: + $ref: '#/components/schemas/OwnershipOwnerType' + primary_contact_ref: + description: The primary contact reference for the inferred owner, formatted as `ref:handle/`. + example: ref:handle/team-a + nullable: true + type: string + resource_id: + description: The identifier of the resource that the inference applies to. + example: res-1 + type: string + retry_schedule: + description: The scheduled retry time for a failed inference, if applicable. + example: '2026-01-15T11:00:00Z' + format: date-time + nullable: true + type: string + sources: + $ref: '#/components/schemas/OwnershipInferenceSources' + status: + $ref: '#/components/schemas/OwnershipInferenceStatus' + required: + - id + - resource_id + - owner_type + - confidence + - explanation + - evidence_versions + - sources + - checksum + - status + - created_at + type: object + OwnershipEvidenceVersion: + additionalProperties: {} + description: A single evidence version entry describing how an inference was produced. + example: + pipeline_id: p1 + version: v3 + type: object + OwnershipInferenceSource: + additionalProperties: {} + description: A source describing how an inference was derived. + example: + kind: code_owners + type: object + CsmCloudProvider: + description: The cloud provider of a host resource. + enum: + - aws + - gcp + - azure + - oci + example: aws + type: string + x-enum-varnames: + - AWS + - GCP + - AZURE + - OCI + CsmAgentlessHostResourceType: + description: The type of cloud resource for an agentless host. + enum: + - aws_ec2_instance + - azure_virtual_machine_instance + - gcp_compute_instance + - oci_instance + example: aws_ec2_instance + type: string + x-enum-varnames: + - AWS_EC2_INSTANCE + - AZURE_VIRTUAL_MACHINE_INSTANCE + - GCP_COMPUTE_INSTANCE + - OCI_INSTANCE + CsmHostFacetInfoItem: + description: A single value and its occurrence count for a facet. + properties: + count: + description: The number of resources with this facet value. + example: 100 + format: int64 + type: integer + value: + description: The facet value. + example: aws + type: string + required: + - value + - count + type: object + CsmHostFacetDefaultValues: + description: The list of default filter values for the facet. + example: [] + items: + type: string + type: array + CsmHostFacetGroups: + description: The list of UI groups that this facet belongs to. + example: + - agentless + items: + type: string + type: array + CsmHostFacetValues: + description: The list of allowed filter values for bounded facets. Empty for unbounded facets. + example: + - aws + - gcp + items: + type: string + type: array + CsmUnifiedHostSource: + description: The source of a unified host entry, indicating whether it was discovered via agent, agentless scanning, or both. + enum: + - agent + - agentless + - both + example: agent + type: string + x-enum-varnames: + - AGENT + - AGENTLESS + - BOTH FindingDatadogLink: description: The Datadog relative link for this finding. - example: >- - /security/compliance?panels=cpfinding%7Cevent%7CruleId%3Adef-000-u5t%7CresourceId%3Ae8c9ab7c52ebd7bf2fdb4db641082d7d%7CtabId%3Aoverview + example: /security/compliance?panels=cpfinding%7Cevent%7CruleId%3Adef-000-u5t%7CresourceId%3Ae8c9ab7c52ebd7bf2fdb4db641082d7d%7CtabId%3Aoverview type: string FindingDescription: description: The description and remediation steps for this finding. - example: >- + example: |- ## Remediation - 1. In the console, go to **Storage Account**. - 2. For each Storage Account, navigate to **Data Protection**. - - 3. Select **Set soft delete enabled** and enter the number of days to - retain soft deleted data. + 3. Select **Set soft delete enabled** and enter the number of days to retain soft deleted data. type: string FindingExternalId: description: The cloud-based ID for the resource related to the finding. @@ -10836,6 +33806,234 @@ components: - HUMAN_ERROR - NO_LONGER_ACCEPTED_RISK - OTHER + FindingData: + description: Data object representing a security finding. + properties: + id: + description: Unique identifier of the security finding. + example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== + type: string + type: + $ref: '#/components/schemas/FindingDataType' + required: + - type + - id + type: object + DueDatePerSeverityList: + description: A list of severity-to-due-date mappings. Each severity may appear at most once. + items: + $ref: '#/components/schemas/DueDatePerSeverityItem' + type: array + DueDateFrom: + description: The reference point from which the due date is calculated. When `fix_available` is selected but not applicable to the finding type, `first_seen` is used instead. + enum: + - first_seen + - fix_available + example: first_seen + type: string + x-enum-varnames: + - FIRST_SEEN + - FIX_AVAILABLE + SecurityFindingTypes: + description: The list of security finding types that the automation rule applies to. + example: + - misconfiguration + items: + $ref: '#/components/schemas/SecurityFindingType' + minItems: 1 + type: array + AutomationRuleActorType: + description: Whether the actor is a user or the Datadog system. + enum: + - user + - system + example: user + type: string + x-enum-varnames: + - USER + - SYSTEM + MuteReason: + description: The reason for muting a security finding. + enum: + - duplicate + - false_positive + - no_fix + - other + - pending_fix + - risk_accepted + example: risk_accepted + type: string + x-enum-varnames: + - DUPLICATE + - FALSE_POSITIVE + - NO_FIX + - OTHER + - PENDING_FIX + - RISK_ACCEPTED + SeverityModifierRuleSetAction: + description: Sets matched findings to a fixed severity. + properties: + description: + description: An optional free-form explanation for the severity change. + example: Lower severity for dev environment noise + maxLength: 20000 + type: string + severity: + $ref: '#/components/schemas/SeverityModifierSeverity' + type: + $ref: '#/components/schemas/SeverityModifierRuleSetActionType' + required: + - type + - severity + type: object + SeverityModifierRuleShiftAction: + description: Shifts matched findings up or down by one severity rank. + properties: + description: + description: An optional free-form explanation for the severity change. + example: Lower severity for dev environment noise + maxLength: 20000 + type: string + severity_delta: + $ref: '#/components/schemas/SeverityModifierSeverityDelta' + type: + $ref: '#/components/schemas/SeverityModifierRuleShiftActionType' + required: + - type + - severity_delta + type: object + TicketCreationTarget: + description: The ticketing system to create tickets in. + enum: + - jira + - case_management + example: jira + type: string + x-enum-varnames: + - JIRA + - CASE_MANAGEMENT + CaseManagementProjectData: + description: Data object representing a case management project. + properties: + id: + description: Unique identifier of the case management project. + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/CaseManagementProjectDataType' + required: + - type + - id + type: object + RelationshipToUserData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-2345-000000000000 + type: string + type: + $ref: '#/components/schemas/UsersType' + required: + - id + - type + type: object + FindingJiraIssueResult: + description: Result of the Jira issue creation. + properties: + account_id: + description: Account ID of the Jira issue. + example: 463a8631-680e-455c-bfd3-3ed04d326eb7 + type: string + issue_id: + description: Unique identifier of the Jira issue. + example: '2871276' + type: string + issue_key: + description: Key of the Jira issue. + example: PROJ-123 + type: string + issue_url: + description: URL of the Jira issue. + example: https://domain.atlassian.net/browse/PROJ-123 + type: string + type: object + FindingLinearIssueResult: + description: Result of the Linear issue creation. + properties: + account_id: + description: Account ID of the Linear workspace. + example: 463a8631-680e-455c-bfd3-3ed04d326eb7 + type: string + issue_id: + description: Unique identifier of the Linear issue. + example: 9c1e5f8a-2b3d-4c7e-8f6a-1d2e3f4a5b6c + type: string + issue_key: + description: Key of the Linear issue. + example: ENG-123 + type: string + team_id: + description: Team ID of the Linear issue. + example: b5d3c8a1-7e6f-4d2c-9a8b-3c4d5e6f7a8b + type: string + url: + description: URL of the Linear issue. + example: https://linear.app/your-workspace/issue/ENG-123 + type: string + type: object + FindingServiceNowTicketResult: + description: Result of the ServiceNow ticket creation or attachment. + properties: + instance_name: + description: ServiceNow instance name extracted from the ticket URL. + example: example + type: string + sys_id: + description: Unique identifier of the ServiceNow incident record. + example: abcdef0123456789abcdef0123456789 + type: string + sys_target_link: + description: Direct link to the ServiceNow incident record. + example: https://example.service-now.com/incident.do?sys_id=abcdef0123456789abcdef0123456789 + type: string + sys_target_sys_id: + description: Unique identifier of the target ServiceNow record. + example: abcdef0123456789abcdef0123456789 + type: string + table_name: + description: ServiceNow table containing the incident record. + example: incident + type: string + url: + description: URL of the ServiceNow incident record. + example: https://example.service-now.com/now/nav/ui/classic/params/target/incident.do?sys_id=abcdef0123456789abcdef0123456789 + type: string + type: object + MuteFindingsReason: + description: The reason why the findings are muted or unmuted. + enum: + - PENDING_FIX + - FALSE_POSITIVE + - OTHER + - NO_FIX + - DUPLICATE + - RISK_ACCEPTED + - NO_PENDING_FIX + - HUMAN_ERROR + - NO_LONGER_ACCEPTED_RISK + example: PENDING_FIX + type: string + x-enum-varnames: + - PENDING_FIX + - FALSE_POSITIVE + - OTHER + - NO_FIX + - DUPLICATE + - RISK_ACCEPTED + - NO_PENDING_FIX + - HUMAN_ERROR + - NO_LONGER_ACCEPTED_RISK SBOMComponentLicense: description: The software license of the component of the SBOM. properties: @@ -10902,29 +34100,88 @@ components: SBOMMetadataAuthor: description: Author of the SBOM. properties: - name: - description: The identifier of the Author of the SBOM. - example: Datadog, Inc. + name: + description: The identifier of the Author of the SBOM. + example: Datadog, Inc. + type: string + type: object + SBOMMetadataComponent: + description: The component that the BOM describes. + properties: + name: + description: The name of the component. This will often be a shortened, single name of the component. + example: github.com/datadog/datadog-agent + type: string + type: + description: Specifies the type of the component. + example: application + type: string + type: object + IoCGeoLocation: + description: Geographic location information for an IP indicator. + properties: + city: + description: City name. + type: string + country_code: + description: ISO country code. + type: string + country_name: + description: Full country name. + type: string + type: object + IoCSource: + description: A threat intelligence source that has flagged an indicator. + properties: + name: + description: Name of the threat intelligence source. + type: string + type: object + IoCScoreEffect: + description: Effect of a scoring factor on the indicator's threat score. + enum: + - RAISE_SCORE + - LOWER_SCORE + - NO_EFFECT + type: string + x-enum-varnames: + - RAISE_SCORE + - LOWER_SCORE + - NO_EFFECT + IoCSignalSeverityCount: + description: Count of security signals by severity level. + properties: + count: + description: Number of signals at this severity level. + format: int64 + type: integer + severity: + description: Severity level (for example, critical, high, medium, low, info). type: string type: object - SBOMMetadataComponent: - description: The component that the BOM describes. + IoCTriageEvent: + description: A single entry in an indicator's triage history timeline. properties: - name: - description: >- - The name of the component. This will often be a shortened, single - name of the component. - example: github.com/datadog/datadog-agent + triage_state: + $ref: '#/components/schemas/IoCTriageState' + triaged_at: + description: Timestamp when this triage action occurred. + format: date-time type: string - type: - description: Specifies the type of the component. - example: application + triaged_by: + description: UUID of the user who performed this triage action. type: string type: object + NotificationRuleRoutingMode: + description: The routing mode for the notification rule. `manual` sends notifications to the configured targets. + enum: + - manual + example: manual + type: string + x-enum-varnames: + - MANUAL NotificationRuleQuery: - description: >- - The query is composed of one or several key:value pairs, which can be - used to filter security issues on tags and attributes. + description: The query is composed of one or several key:value pairs, which can be used to filter security issues on tags and attributes. example: (source:production_service OR env:prod) type: string RuleTypes: @@ -10954,13 +34211,9 @@ components: - UNKNOWN - INFO TriggerSource: - description: >- - The type of security issues on which the rule applies. Notification - rules based on security signals need to use the trigger source - "security_signals", - - while notification rules based on security vulnerabilities need to use - the trigger source "security_findings". + description: |- + The type of security issues on which the rule applies. Notification rules based on security signals need to use the trigger source "security_signals", + while notification rules based on security vulnerabilities need to use the trigger source "security_findings". enum: - security_findings - security_signals @@ -11083,25 +34336,105 @@ components: set: $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSet' type: object - SecurityMonitoringRuleCaseActionOptionsFlaggedIPType: - description: >- - Used with the case action of type 'flag_ip'. The value specified in this - field is applied as a flag to the IP addresses. + SecurityMonitoringIntegrationTypeGoogleWorkspace: + description: The source type for a Google Workspace entity context sync. enum: - - SUSPICIOUS - - FLAGGED - example: FLAGGED + - GOOGLE_WORKSPACE + example: GOOGLE_WORKSPACE type: string x-enum-varnames: - - SUSPICIOUS - - FLAGGED - SecurityMonitoringRuleCaseActionOptionsUserBehaviorName: - description: >- - Used with the case action of type 'user_behavior'. The value specified - in this field is applied as a risk tag to all users affected by the - rule. + - GOOGLE_WORKSPACE + SecurityMonitoringIntegrationConfigGoogleWorkspaceSecrets: + description: Credentials for a Google Workspace entity context sync. + properties: + admin_email: + description: The admin email to impersonate for domain-wide delegation. + example: admin@example.com + type: string + service_account_json: + $ref: '#/components/schemas/SecurityMonitoringIntegrationConfigGoogleWorkspaceServiceAccount' + required: + - service_account_json + type: object + SecurityMonitoringIntegrationTypeOkta: + description: The source type for an Okta entity context sync. + enum: + - OKTA + example: OKTA + type: string + x-enum-varnames: + - OKTA + SecurityMonitoringIntegrationConfigOktaSecrets: + description: Credentials for an Okta entity context sync. + properties: + api_token: + description: The Okta API token used to authenticate against the Okta API. + example: 00aBcDeFgHiJkLmNoPqRsTuVwXyZ + type: string + required: + - api_token + type: object + SecurityMonitoringIntegrationTypeEntraId: + description: The source type for an Entra ID entity context sync. + enum: + - ENTRA_ID + example: ENTRA_ID + type: string + x-enum-varnames: + - ENTRA_ID + SecurityMonitoringIntegrationTypeCrowdStrike: + description: The source type for a CrowdStrike entity context sync. + enum: + - CROWDSTRIKE + example: CROWDSTRIKE + type: string + x-enum-varnames: + - CROWDSTRIKE + SecurityMonitoringIntegrationConfigCrowdStrikeSecrets: + description: Credentials for a CrowdStrike entity context sync. + properties: + client_id: + description: The CrowdStrike API client ID. + example: abcdef0123456789abcdef0123456789 + type: string + client_secret: + description: The CrowdStrike API client secret. + example: aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789ABCDEF + type: string + required: + - client_id + - client_secret + type: object + SecurityMonitoringIntegrationTypeSentinelOne: + description: The source type for a SentinelOne entity context sync. + enum: + - SENTINELONE + example: SENTINELONE type: string - RuleVersionUpdate: + x-enum-varnames: + - SENTINELONE + SecurityMonitoringIntegrationConfigSentinelOneSecrets: + description: Credentials for a SentinelOne entity context sync. + properties: + api_token: + description: The SentinelOne API token. + example: aBcDeFgHiJkLmNoPqRsTuVwXyZ0123456789 + type: string + required: + - api_token + type: object + NotificationRulePreviewResult: + description: The preview result for a single rule type. + properties: + notification_status: + $ref: '#/components/schemas/NotificationRulePreviewNotificationStatus' + rule_type: + $ref: '#/components/schemas/RuleTypesItems' + required: + - rule_type + - notification_status + type: object + VersionHistoryUpdate: description: A change in a rule version. properties: change: @@ -11113,7 +34446,207 @@ components: example: Tags type: string type: - $ref: '#/components/schemas/RuleVersionUpdateType' + $ref: '#/components/schemas/VersionHistoryUpdateType' + type: object + SecurityMonitoringContentPackLogsDetails: + description: Details for a logs-based content pack. + properties: + cp_activation: + $ref: '#/components/schemas/SecurityMonitoringContentPackActivation' + data_last_seen: + $ref: '#/components/schemas/SecurityMonitoringContentPackTimestampBucket' + filters_configured: + description: |- + Whether filters (Security Filters or Index Query depending on the pricing model) are + present and correctly configured to route logs into Cloud SIEM. + example: true + type: boolean + integration_installed_status: + $ref: '#/components/schemas/SecurityMonitoringContentPackIntegrationStatus' + logs_seen_from_any_index: + description: Whether logs for this content pack have been seen in any Datadog index in the last 72 hours. + example: true + type: boolean + siem_index_incorrect: + description: Whether the Cloud SIEM index configuration is incorrect (only applies to certain pricing models). + example: false + type: boolean + type: + $ref: '#/components/schemas/SecurityFilterFilteredDataType' + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + - filters_configured + - logs_seen_from_any_index + - siem_index_incorrect + type: object + SecurityMonitoringContentPackThreatIntelDetails: + description: Details for a threat intelligence content pack. + properties: + cp_activation: + $ref: '#/components/schemas/SecurityMonitoringContentPackActivation' + data_last_seen: + $ref: '#/components/schemas/SecurityMonitoringContentPackTimestampBucket' + integration_installed_status: + $ref: '#/components/schemas/SecurityMonitoringContentPackIntegrationStatus' + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackThreatIntelDetailsType' + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + type: object + SecurityMonitoringContentPackEntityDetails: + description: Details for an entity or identity content pack. + properties: + cp_activation: + $ref: '#/components/schemas/SecurityMonitoringContentPackActivation' + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackEntityDetailsType' + required: + - type + - cp_activation + type: object + SecurityMonitoringContentPackAuditDetails: + description: Details for an audit trail content pack. + properties: + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackAuditDetailsType' + required: + - type + type: object + SecurityMonitoringContentPackAppSecDetails: + description: Details for an Application Security content pack. + properties: + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackAppSecDetailsType' + required: + - type + type: object + SecurityMonitoringContentPackVulnerabilityDetails: + description: Details for a vulnerability content pack. + properties: + cp_activation: + $ref: '#/components/schemas/SecurityMonitoringContentPackActivation' + data_last_seen: + $ref: '#/components/schemas/SecurityMonitoringContentPackTimestampBucket' + integration_installed_status: + $ref: '#/components/schemas/SecurityMonitoringContentPackIntegrationStatus' + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackVulnerabilityDetailsType' + required: + - type + - cp_activation + - data_last_seen + - integration_installed_status + type: object + SecurityMonitoringContentPackOnboardingDetails: + description: Content pack details returned when Cloud SIEM is inactive for the requesting organization. + properties: + integration_installed_status: + $ref: '#/components/schemas/SecurityMonitoringContentPackIntegrationStatus' + logs_seen_from_any_index: + description: Whether logs for this content pack have been seen in any Datadog index in the last 72 hours. + example: true + type: boolean + type: + $ref: '#/components/schemas/SecurityMonitoringContentPackOnboardingDetailsType' + required: + - type + - logs_seen_from_any_index + type: object + SecurityMonitoringDatasetColumn: + description: A column exposed by an event platform dataset. + properties: + column: + description: The name of the column. + example: message + type: string + type: + description: The type of the column value. + example: string + type: string + required: + - column + - type + type: object + SecurityMonitoringDatasetSearch: + description: The search clause applied to an event platform dataset. + properties: + query: + description: The search query expression. + example: '*' + type: string + required: + - query + type: object + SecurityMonitoringDatasetTimeWindow: + description: An optional time window that overrides the default query time range. + properties: + from: + description: Inclusive start of the time window, in milliseconds since the Unix epoch. + example: 1700000000000 + format: int64 + type: integer + to: + description: Exclusive end of the time window, in milliseconds since the Unix epoch. + example: 1700003600000 + format: int64 + type: integer + type: object + SecurityMonitoringDatasetDependentsIds: + description: The list of resource IDs that depend on the dataset. + example: [] + items: + type: string + type: array + SecurityMonitoringDatasetVersionEntry: + description: A single entry in the version history of a dataset. + properties: + changes: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionChanges' + dataset: + $ref: '#/components/schemas/SecurityMonitoringDatasetAttributesResponse' + required: + - dataset + - changes + type: object + EntityContextRevisionAttributes: + additionalProperties: {} + description: The set of attributes recorded for the entity at this revision. The keys depend on the kind of entity. + example: + accounts: + - linked-account-123 + display_name: Test User + email: user@example.com + principal_id: user@example.com + type: object + SecurityMonitoringRuleCaseActionOptionsFlaggedIPType: + description: Used with the case action of type 'flag_ip'. The value specified in this field is applied as a flag to the IP addresses. + enum: + - SUSPICIOUS + - FLAGGED + example: FLAGGED + type: string + x-enum-varnames: + - SUSPICIOUS + - FLAGGED + SecurityMonitoringRuleCaseActionOptionsUserBehaviorName: + description: Used with the case action of type 'user_behavior'. The value specified in this field is applied as a risk tag to all users affected by the rule. + type: string + SecurityMonitoringSignalInvestigationQueryTemplateVariables: + additionalProperties: + items: + description: A value for this template variable extracted from the signal. + type: string + type: array + description: Template variables applied to the investigation log query, mapping attribute paths to values extracted from the signal. + example: + '@userIdentity.arn': + - foo type: object SensitiveDataScannerGroupItem: description: Data related to a Sensitive Data Scanner Group. @@ -11144,19 +34677,12 @@ components: type: object SensitiveDataScannerTextReplacementType: default: none - description: >- + description: |- Type of the replacement text. None means no replacement. - hash means the data will be stubbed. replacement_string means that - - one can chose a text to replace the data. - partial_replacement_from_beginning - + one can chose a text to replace the data. partial_replacement_from_beginning allows a user to partially replace the data from the beginning, and - - partial_replacement_from_end on the other hand, allows to replace data - from - + partial_replacement_from_end on the other hand, allows to replace data from the end. enum: - none @@ -11192,6 +34718,8 @@ components: HistoricalJobOptions: description: Job options. properties: + anomalyDetectionOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleAnomalyDetectionOptions' detectionMethod: $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' evaluationWindow: @@ -11204,16 +34732,42 @@ components: $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' newValueOptions: $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' + sequenceDetectionOptions: + $ref: '#/components/schemas/SecurityMonitoringRuleSequenceDetectionOptions' thirdPartyRuleOptions: $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' type: object HistoricalJobQuery: description: Query for selecting logs analyzed by the historical job. properties: + additionalFilters: + description: Additional filters appended to the query at evaluation time. + type: string aggregation: $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' + correlatedByFields: + description: Fields used to correlate results across queries in sequence detection rules. + items: + description: Field. + type: string + type: array + correlatedQueryIndex: + description: Zero-based index of the query to correlate with in sequence detection rules. Up to 10 queries are supported, so valid values are 0 to 9. + format: int64 + maximum: 9 + minimum: 0 + type: integer + customQueryExtension: + description: Custom query extension used to refine the base query. + type: string dataSource: $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' + datasetIds: + description: IDs of reference datasets used by this query. + items: + description: Dataset ID. + type: string + type: array distinctFields: description: Field for which the cardinality is measured. Sent as an array. items: @@ -11228,30 +34782,408 @@ components: type: array hasOptionalGroupByFields: default: false - description: >- - When false, events without a group-by value are ignored by the - query. When true, events with missing group-by fields are processed - with `N/A`, replacing the missing values. + description: When false, events without a group-by value are ignored by the query. When true, events with missing group-by fields are processed with `N/A`, replacing the missing values. example: false type: boolean + index: + description: Index used to load the data for this query. + type: string + indexes: + description: Indexes used to load the data for this query. Mutually exclusive with `index`. + items: + description: Index name. + type: string + type: array metrics: - description: >- - Group of target fields to aggregate over when using the sum, max, - geo data, or new value aggregations. The sum, max, and geo data - aggregations only accept one value in this list, whereas the new - value aggregation accepts up to five values. + description: Group of target fields to aggregate over when using the sum, max, geo data, or new value aggregations. The sum, max, and geo data aggregations only accept one value in this list, whereas the new value aggregation accepts up to five values. + items: + description: Field. + type: string + type: array + name: + description: Name of the query. + type: string + query: + description: Query to run on logs. + example: a > 3 + type: string + queryLanguage: + description: Language used to parse the query string. + type: string + type: object + ScaRequestDataAttributesDependenciesItemsLocationsItems: + description: The source code location where a dependency is declared, including block, name, namespace, and version positions within the file. + properties: + block: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition' + name: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition' + namespace: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition' + version: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition' + type: object + ScaRequestDataAttributesDependenciesItemsReachableSymbolPropertiesItems: + description: A key-value property describing a reachable symbol within a dependency. + properties: + name: + description: The name of the reachable symbol property. + type: string + value: + description: The value of the reachable symbol property. + type: string + type: object + ScaRequestDataAttributesVulnerabilitiesItemsAffectsItems: + description: A reference to a component affected by a vulnerability. + properties: + ref: + description: The BOM reference identifying the affected component. + type: string + type: object + McpScanRequestDataAttributesLibrariesItems: + description: A library declaration to include in the dependency scan. + properties: + exclusions: + $ref: '#/components/schemas/McpScanRequestDataAttributesLibrariesItemsExclusions' + is_dev: + description: Whether this library is a development-only dependency. + example: false + type: boolean + is_direct: + description: Whether this library is a direct (rather than transitive) dependency. + example: true + type: boolean + package_manager: + description: The package manager that produced this library entry (for example, `npm`, `pip`, `nuget`). + example: nuget + type: string + purl: + description: The Package URL (PURL) uniquely identifying the library and its version. + example: pkg:nuget/Newtonsoft.Json@13.0.1 + type: string + target_frameworks: + $ref: '#/components/schemas/McpScanRequestDataAttributesLibrariesItemsTargetFrameworks' + required: + - purl + - is_dev + - is_direct + - package_manager + type: object + LicensesListResponseDataAttributesLicensesItems: + description: An SPDX license entry returned by the licenses list endpoint. + properties: + display_name: + description: The human-readable name of the license. + example: MIT License + type: string + identifier: + description: The SPDX identifier of the license. + example: MIT + type: string + short_name: + description: The short name of the license, typically matching the SPDX identifier. + example: MIT + type: string + required: + - display_name + - identifier + - short_name + type: object + ResolveVulnerableSymbolsResponseResultsVulnerableSymbols: + description: A collection of vulnerable symbols associated with a specific security advisory. + properties: + advisory_id: + description: The identifier of the security advisory that describes the vulnerability. + type: string + symbols: + description: The list of symbols that are vulnerable according to this advisory. + items: + $ref: '#/components/schemas/ResolveVulnerableSymbolsResponseResultsVulnerableSymbolsSymbols' + type: array + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsArgumentsItems: + description: An argument parameter for a static analysis rule, with a name and description. + properties: + description: + description: A human-readable explanation of the argument's purpose and accepted values. + type: string + name: + description: The name of the rule argument. + type: string + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsData: + description: The resource identifier and type for a static analysis rule. + properties: + id: + description: The unique identifier of the rule resource. + type: string + type: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsDataType' + required: + - type + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsTestsItems: + description: A test case associated with a static analysis rule, containing the source code and expected annotation count. + properties: + annotation_count: + description: The expected number of annotations (findings) the rule should produce when run against the test code. + format: int64 + maximum: 65535 + minimum: 0 + type: integer + code: + description: The source code snippet used as input for the rule test. + type: string + filename: + description: The filename associated with the test code snippet. + type: string + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsData: + description: The resource identifier and type for a ruleset. + properties: + id: + description: The unique identifier of the ruleset resource. + type: string + type: + $ref: '#/components/schemas/GetMultipleRulesetsResponseDataAttributesRulesetsItemsDataType' + required: + - type + type: object + SecretRuleDataAttributesMatchValidationInvalidHttpStatusCodeItems: + description: An HTTP status code range that indicates an invalid (unsuccessful) secret match during validation. + properties: + end: + description: The inclusive upper bound of the HTTP status code range. + format: int64 + maximum: 18446744073709552000 + minimum: 0 + type: integer + start: + description: The inclusive lower bound of the HTTP status code range. + format: int64 + maximum: 18446744073709552000 + minimum: 0 + type: integer + type: object + SecretRuleDataAttributesMatchValidationValidHttpStatusCodeItems: + description: An HTTP status code range that indicates a valid (successful) secret match during validation. + properties: + end: + description: The inclusive upper bound of the HTTP status code range. + format: int64 + maximum: 18446744073709552000 + minimum: 0 + type: integer + start: + description: The inclusive lower bound of the HTTP status code range. + format: int64 + maximum: 18446744073709552000 + minimum: 0 + type: integer + type: object + AnalysisViolation: + description: A rule violation found in the analyzed source code. + properties: + category: + description: The category of the violation. + example: BEST_PRACTICES + type: string + end: + $ref: '#/components/schemas/AnalysisPosition' + fixes: + description: The list of suggested fixes for this violation. items: - description: Field. - type: string + $ref: '#/components/schemas/AnalysisFix' type: array - name: - description: Name of the query. + message: + description: A human-readable description of the violation. + example: Use of sys.exit() is discouraged. type: string - query: - description: Query to run on logs. - example: a > 3 + severity: + description: The severity level of the violation. + example: WARNING type: string + start: + $ref: '#/components/schemas/AnalysisPosition' + required: + - category + - severity + - message + - start + - end + - fixes + type: object + RuleBasedViewComplianceFrameworks: + description: List of compliance framework mappings associated with the rule. + items: + $ref: '#/components/schemas/RuleBasedViewComplianceFramework' + type: array + RuleBasedViewResourceAttributes: + description: List of resource attribute names exposed by the rule. + example: + - instance_id + items: + description: Name of a resource attribute exposed by the rule. + example: instance_id + type: string + type: array + RuleBasedViewRuleStats: + description: Counts of findings for the rule, grouped by their evaluation status. + properties: + fail: + description: Number of findings that failed evaluation. + example: 0 + format: int64 + type: integer + muted: + description: Number of findings that have been muted. + example: 0 + format: int64 + type: integer + pass: + description: Number of findings that passed evaluation. + example: 3 + format: int64 + type: integer + required: + - fail + - pass + - muted + type: object + RuleBasedViewRuleTags: + description: List of tags attached to the rule. + example: + - security:compliance + items: + description: A tag attached to the rule. + example: security:compliance + type: string + type: array + RuleBasedViewRuleCategory: + description: The category of the security rule. + enum: + - cloud_configuration + - infrastructure_configuration + - api_security + example: cloud_configuration + type: string + x-enum-varnames: + - CLOUD_CONFIGURATION + - INFRASTRUCTURE_CONFIGURATION + - API_SECURITY + FindingDataType: + default: findings + description: Security findings resource type. + enum: + - findings + example: findings + type: string + x-enum-varnames: + - FINDINGS + DueDatePerSeverityItem: + description: A mapping of a severity level to the number of days until a finding is due. + properties: + due_in_days: + description: The number of days from the reference point until the finding is due. + example: 7 + format: int64 + maximum: 365 + minimum: 1 + type: integer + severity: + $ref: '#/components/schemas/DueDateSeverity' + required: + - severity + - due_in_days type: object + SecurityFindingType: + description: The type of security finding that the automation rule applies to. + enum: + - api_security + - attack_path + - host_and_container_vulnerability + - iac_misconfiguration + - identity_risk + - library_vulnerability + - misconfiguration + - runtime_code_vulnerability + - secret + - static_code_vulnerability + - workload_activity + example: misconfiguration + type: string + x-enum-varnames: + - API_SECURITY + - ATTACK_PATH + - HOST_AND_CONTAINER_VULNERABILITY + - IAC_MISCONFIGURATION + - IDENTITY_RISK + - LIBRARY_VULNERABILITY + - MISCONFIGURATION + - RUNTIME_CODE_VULNERABILITY + - SECRET + - STATIC_CODE_VULNERABILITY + - WORKLOAD_ACTIVITY + SeverityModifierSeverity: + description: The severity to assign to matched findings. `info_none` is not supported for the `iac_misconfiguration`, `runtime_code_vulnerability`, `secret`, or `static_code_vulnerability` finding types. + enum: + - info_none + - low + - medium + - high + - critical + example: low + type: string + x-enum-varnames: + - INFO_NONE + - LOW + - MEDIUM + - HIGH + - CRITICAL + SeverityModifierRuleSetActionType: + description: The type of a severity modifier rule action that sets a fixed severity. + enum: + - set + example: set + type: string + x-enum-varnames: + - SET + SeverityModifierSeverityDelta: + description: The direction in which to shift the severity of matched findings by one rank. + enum: + - up_one + - down_one + example: up_one + type: string + x-enum-varnames: + - UP_ONE + - DOWN_ONE + SeverityModifierRuleShiftActionType: + description: The type of a severity modifier rule action that shifts the severity by one rank. + enum: + - shift + example: shift + type: string + x-enum-varnames: + - SHIFT + CaseManagementProjectDataType: + default: projects + description: Projects resource type. + enum: + - projects + example: projects + type: string + x-enum-varnames: + - PROJECTS + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS SBOMComponentLicenseLicense: description: The software license of the component of the SBOM. properties: @@ -11263,21 +35195,13 @@ components: - name type: object RuleTypesItems: - description: >- + description: |- Security rule type which can be used in security rules. - - Signal-based notification rules can filter signals based on rule types - application_security, log_detection, - - workload_security, signal_correlation, cloud_configuration and - infrastructure_configuration. - - Vulnerability-based notification rules can filter vulnerabilities based - on rule types application_code_vulnerability, - - application_library_vulnerability, attack_path, - container_image_vulnerability, identity_risk, misconfiguration, - api_security, host_vulnerability and iac_misconfiguration. + Signal-based notification rules can filter signals based on rule types application_security, log_detection, + workload_security, signal_correlation, cloud_configuration and infrastructure_configuration. + Vulnerability-based notification rules can filter vulnerabilities based on rule types application_code_vulnerability, + application_library_vulnerability, attack_path, container_image_vulnerability, identity_risk, misconfiguration, + api_security, host_vulnerability, iac_misconfiguration, sast_vulnerability, secret_vulnerability and workload_activity. enum: - application_security - log_detection @@ -11294,85 +35218,455 @@ components: - api_security - host_vulnerability - iac_misconfiguration + - sast_vulnerability + - secret_vulnerability + - workload_activity + example: log_detection + type: string + x-enum-varnames: + - APPLICATION_SECURITY + - LOG_DETECTION + - WORKLOAD_SECURITY + - SIGNAL_CORRELATION + - CLOUD_CONFIGURATION + - INFRASTRUCTURE_CONFIGURATION + - APPLICATION_CODE_VULNERABILITY + - APPLICATION_LIBRARY_VULNERABILITY + - ATTACK_PATH + - CONTAINER_IMAGE_VULNERABILITY + - IDENTITY_RISK + - MISCONFIGURATION + - API_SECURITY + - HOST_VULNERABILITY + - IAC_MISCONFIGURATION + - SAST_VULNERABILITY + - SECRET_VULNERABILITY + - WORKLOAD_ACTIVITY + CloudWorkloadSecurityAgentRuleActionHash: + description: Hash file specified by the field attribute + properties: + field: + description: The field of the hash action + type: string + type: object + CloudWorkloadSecurityAgentRuleKill: + description: Kill system call applied on the container matching the rule + properties: + signal: + description: Supported signals for the kill system call + type: string + type: object + CloudWorkloadSecurityAgentRuleActionMetadata: + description: The metadata action applied on the scope matching the rule + properties: + image_tag: + description: The image tag of the metadata action + type: string + service: + description: The service of the metadata action + type: string + short_image: + description: The short image of the metadata action + type: string + type: object + CloudWorkloadSecurityAgentRuleActionSet: + description: The set action applied on the scope matching the rule + properties: + append: + description: Whether the value should be appended to the field. + type: boolean + default_value: + description: The default value of the set action + type: string + expression: + description: The expression of the set action. + type: string + field: + description: The field of the set action + type: string + inherited: + description: Whether the value should be inherited. + type: boolean + name: + description: The name of the set action + type: string + scope: + description: The scope of the set action. + type: string + size: + description: The size of the set action. + format: int64 + type: integer + ttl: + description: The time to live of the set action. + format: int64 + type: integer + value: + $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSetValue' + type: object + SecurityMonitoringIntegrationConfigGoogleWorkspaceServiceAccount: + additionalProperties: {} + description: The Google Cloud service account JSON used to authenticate against the Google Workspace Admin SDK. Additional keys beyond those documented are preserved. + properties: + client_email: + description: The service account client email. + example: svc@my-project.iam.gserviceaccount.com + type: string + private_key: + description: The service account private key. + example: |- + -----BEGIN PRIVATE KEY----- + ... + -----END PRIVATE KEY----- + type: string + project_id: + description: The Google Cloud project ID that owns the service account. + example: my-project + type: string + type: + description: The service account type. Must be `service_account`. + example: service_account + type: string + required: + - type + - project_id + - private_key + - client_email + type: object + NotificationRulePreviewNotificationStatus: + description: The notification status for the given rule type. `SUCCESS` means a matching event was found and the notification was sent successfully. `DEFAULT` means no matching event was found and a default placeholder notification was sent instead. `ERROR` means an error occurred while sending the notification. + enum: + - SUCCESS + - DEFAULT + - ERROR + example: SUCCESS + type: string + x-enum-varnames: + - SUCCESS + - DEFAULT + - ERROR + VersionHistoryUpdateType: + description: The type of change. + enum: + - create + - update + - delete + type: string + x-enum-varnames: + - CREATE + - UPDATE + - DELETE + SecurityMonitoringContentPackActivation: + description: The activation status of a content pack. + enum: + - never_activated + - activated + - deactivated + example: activated + type: string + x-enum-descriptions: + - Pack has never been activated for this organization. + - Pack is currently activated. + - Pack was previously activated but has since been deactivated. + x-enum-varnames: + - NEVER_ACTIVATED + - ACTIVATED + - DEACTIVATED + SecurityMonitoringContentPackTimestampBucket: + description: Timestamp bucket indicating when logs were last collected. + enum: + - not_seen + - within_24_hours + - within_24_to_72_hours + - over_72h_to_30d + - over_30d + example: within_24_hours + type: string + x-enum-descriptions: + - No logs observed. + - Logs received within the last 24 hours. + - Logs last seen 24 to 72 hours ago. + - Logs last seen 3 to 30 days ago. + - Logs last seen more than 30 days ago. + x-enum-varnames: + - NOT_SEEN + - WITHIN_24_HOURS + - WITHIN_24_TO_72_HOURS + - OVER_72H_TO_30D + - OVER_30D + SecurityMonitoringContentPackIntegrationStatus: + description: The installation status of the related integration. + enum: + - installed + - available + - partially_installed + - detected + - error + example: installed + type: string + x-enum-descriptions: + - Integration is fully installed. + - Integration exists in the catalog but is not installed. + - Integration is only partially configured. + - Integration detected (for example, logs are flowing) but not explicitly installed. + - Integration is in an error state. + x-enum-varnames: + - INSTALLED + - AVAILABLE + - PARTIALLY_INSTALLED + - DETECTED + - ERROR + SecurityMonitoringContentPackThreatIntelDetailsType: + description: Type for threat intelligence content pack details. + enum: + - threat_intel + example: threat_intel + type: string + x-enum-varnames: + - THREAT_INTEL + SecurityMonitoringContentPackEntityDetailsType: + description: Type for entity content pack details. + enum: + - entity + example: entity + type: string + x-enum-varnames: + - ENTITY + SecurityMonitoringContentPackAuditDetailsType: + description: Type for audit trail content pack details. + enum: + - audit + example: audit + type: string + x-enum-varnames: + - AUDIT + SecurityMonitoringContentPackAppSecDetailsType: + description: Type for Application Security content pack details. + enum: + - appsec + example: appsec + type: string + x-enum-varnames: + - APPSEC + SecurityMonitoringContentPackVulnerabilityDetailsType: + description: Type for vulnerability content pack details. + enum: + - vulnerability + example: vulnerability + type: string + x-enum-varnames: + - VULNERABILITY + SecurityMonitoringContentPackOnboardingDetailsType: + description: Type for onboarding content pack details. + enum: + - onboarding + example: onboarding + type: string + x-enum-varnames: + - ONBOARDING + SecurityMonitoringDatasetVersionChanges: + description: The list of field changes between this version of the dataset and the previous one. + items: + $ref: '#/components/schemas/SecurityMonitoringDatasetVersionFieldChange' + type: array + ScaRequestDataAttributesDependenciesItemsLocationsItemsFilePosition: + description: A range within a file defined by a start and end position, along with the file name. + properties: + end: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsPosition' + file_name: + description: The name or path of the file containing this location. + type: string + start: + $ref: '#/components/schemas/ScaRequestDataAttributesDependenciesItemsLocationsItemsPosition' + type: object + McpScanRequestDataAttributesLibrariesItemsExclusions: + description: The list of dependency PURLs to exclude when resolving transitive dependencies for this library. + items: + description: A dependency PURL to exclude. + type: string + type: array + McpScanRequestDataAttributesLibrariesItemsTargetFrameworks: + description: The list of target framework identifiers associated with the library. + items: + description: A target framework identifier (for example, `net8.0`). + type: string + type: array + ResolveVulnerableSymbolsResponseResultsVulnerableSymbolsSymbols: + description: A symbol identified as vulnerable within a dependency, including its name, type, and value. + properties: + name: + description: The name of the vulnerable symbol. + type: string + type: + description: The type classification of the vulnerable symbol (e.g., function, class, variable). + type: string + value: + description: The value or identifier associated with the vulnerable symbol. + type: string + type: object + GetMultipleRulesetsResponseDataAttributesRulesetsItemsRulesItemsDataType: + default: rules + description: Rules resource type. + enum: + - rules + example: rules type: string x-enum-varnames: - - APPLICATION_SECURITY - - LOG_DETECTION - - WORKLOAD_SECURITY - - SIGNAL_CORRELATION - - CLOUD_CONFIGURATION - - INFRASTRUCTURE_CONFIGURATION - - APPLICATION_CODE_VULNERABILITY - - APPLICATION_LIBRARY_VULNERABILITY - - ATTACK_PATH - - CONTAINER_IMAGE_VULNERABILITY - - IDENTITY_RISK - - MISCONFIGURATION - - API_SECURITY - - HOST_VULNERABILITY - - IAC_MISCONFIGURATION - CloudWorkloadSecurityAgentRuleActionHash: - additionalProperties: {} - description: An empty object indicating the hash action + - RULES + AnalysisPosition: + description: A position in source code, identified by line and column numbers. + properties: + col: + description: The column number in the source file (1-based). + example: 5 + format: int64 + type: integer + line: + description: The line number in the source file (1-based). + example: 10 + format: int64 + type: integer + required: + - line + - col type: object - CloudWorkloadSecurityAgentRuleKill: - description: Kill system call applied on the container matching the rule + AnalysisFix: + description: A fix suggestion for a rule violation, consisting of one or more edit operations. properties: - signal: - description: Supported signals for the kill system call + description: + description: A human-readable description of what the fix does. + example: Replace with a safe alternative. type: string + edits: + description: The list of edit operations that constitute the fix. + items: + $ref: '#/components/schemas/AnalysisEdit' + type: array + required: + - description + - edits type: object - CloudWorkloadSecurityAgentRuleActionMetadata: - description: The metadata action applied on the scope matching the rule + RuleBasedViewComplianceFramework: + description: Compliance framework mapping for a rule. properties: - image_tag: - description: The image tag of the metadata action + control: + description: Identifier of the control inside the requirement. + example: 164.308-a-4-i type: string - service: - description: The service of the metadata action + framework: + description: Handle of the compliance framework. + example: hipaa type: string - short_image: - description: The short image of the metadata action + is_default: + description: Whether the framework is a Datadog default framework. `true` indicates a Datadog framework and `false` indicates a custom framework. + example: true + type: boolean + message: + description: Optional message describing the framework mapping for the rule. + example: '' + type: string + requirement: + description: Name of the requirement that contains the control. + example: Information-Access-Management + type: string + version: + description: Version of the compliance framework. + example: '1' type: string type: object - CloudWorkloadSecurityAgentRuleActionSet: - description: The set action applied on the scope matching the rule + DueDateSeverity: + description: A severity level used to configure due date thresholds. + enum: + - critical + - high + - medium + - low + - info + - none + - unknown + example: critical + type: string + x-enum-varnames: + - CRITICAL + - HIGH + - MEDIUM + - LOW + - INFO + - NONE + - UNKNOWN + CloudWorkloadSecurityAgentRuleActionSetValue: + description: The value of the set action + type: string + format: int32 + maximum: 2147483647 + SecurityMonitoringDatasetVersionFieldChange: + description: A single field change between two versions of a dataset. properties: - append: - description: Whether the value should be appended to the field - type: boolean + current: + description: The current value of the field, serialized as a JSON value. + example: New description. field: - description: The field of the set action - type: string - name: - description: The name of the set action + description: The name of the field that changed. + example: description type: string - scope: - description: The scope of the set action - type: string - size: - description: The size of the set action - format: int64 + previous: + description: The previous value of the field, serialized as a JSON value. + example: Old description. + required: + - field + - previous + - current + type: object + ScaRequestDataAttributesDependenciesItemsLocationsItemsPosition: + description: A specific position (line and column) within a source file. + properties: + col: + description: The column number of the position within the line. + format: int32 + maximum: 2147483647 type: integer - ttl: - description: The time to live of the set action - format: int64 + line: + description: The line number of the position within the file. + format: int32 + maximum: 2147483647 type: integer - value: - description: The value of the set action - type: string type: object - RuleVersionUpdateType: - description: The type of change. + AnalysisEdit: + description: A single edit operation within a fix suggestion for a rule violation. + properties: + content: + description: The content to insert or replace at the specified position, if applicable. + example: safe_alternative() + nullable: true + type: string + edit_type: + $ref: '#/components/schemas/AnalysisEditType' + end: + $ref: '#/components/schemas/AnalysisPosition' + description: The end position of the edit, or null for pure insertions. + nullable: true + start: + $ref: '#/components/schemas/AnalysisPosition' + required: + - start + - end + - edit_type + - content + type: object + AnalysisEditType: + default: ADD + description: The type of code edit to apply when fixing a violation. enum: - - create - - update - - delete + - ADD + - UPDATE + - REMOVE + example: ADD type: string x-enum-varnames: - - CREATE + - ADD - UPDATE - - DELETE + - REMOVE responses: NotAuthorizedResponse: content: @@ -11409,9 +35703,7 @@ components: application/json: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad Request: The server cannot process the request due to invalid syntax - in the request. + description: 'Bad Request: The server cannot process the request due to invalid syntax in the request.' FindingsForbiddenResponse: content: application/json: @@ -11430,23 +35722,24 @@ components: schema: $ref: '#/components/schemas/JSONAPIErrorResponse' description: 'Too many requests: The rate limit set by the API has been exceeded.' - NotificationRulesList: + ForbiddenResponse: content: application/json: schema: - properties: - data: - items: - $ref: '#/components/schemas/NotificationRule' - type: array - type: object - description: The list of notification rules. - ForbiddenResponse: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + UnauthorizedResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + description: Unauthorized + NotificationRulesList: + content: + application/json: + schema: + $ref: '#/components/schemas/NotificationRulesListResponse' + description: The list of notification rules. UnprocessableEntityResponse: content: application/json: @@ -11498,9 +35791,7 @@ components: schema: type: string ResourceFilterAccountID: - description: >- - Filter resource filters by cloud provider account ID. This parameter is - only valid when provider is specified. + description: Filter resource filters by cloud provider account ID. This parameter is only valid when provider is specified. in: query name: account_id required: false @@ -11513,6 +35804,77 @@ components: required: false schema: type: boolean + RuleBasedViewTo: + description: Timestamp of the query end, in milliseconds since the Unix epoch. + in: query + name: to + required: true + schema: + example: 1739982278000 + format: int64 + type: integer + RuleBasedViewFramework: + description: Compliance framework handle to filter rules and findings by. + in: query + name: framework + required: false + schema: + default: '' + example: hipaa + type: string + RuleBasedViewVersion: + description: Version of the compliance framework to filter rules and findings by. + in: query + name: version + required: false + schema: + example: '1' + type: string + RuleBasedViewQueryFindingsWithoutFrameworkVersion: + description: When `true`, returns findings without a `framework_version` tag. Used for findings from custom frameworks or those created before framework versioning was introduced. + in: query + name: query_findings_without_framework_version + required: false + schema: + default: false + example: false + type: boolean + RuleBasedViewIncludeRulesWithoutFindings: + description: When `true`, includes rules in the response that have no associated findings. + in: query + name: include_rules_without_findings + required: false + schema: + default: false + example: false + type: boolean + RuleBasedViewIsCustom: + description: Set to `true` when the requested `framework` is a custom framework. + in: query + name: is_custom + required: false + schema: + example: false + type: boolean + RuleBasedViewQuery: + description: Additional event-platform filters applied to the underlying findings query. For example, `scored:true project_id:datadog-prod-us5`. + in: query + name: query + required: false + schema: + default: '' + example: scored:true + type: string + ApplicationSecurityServiceNameParam: + description: |- + The name of the service to retrieve Application Security details for. + Returns all matching services across environments. + example: web-store + in: path + name: service_filter + required: true + schema: + type: string CloudWorkloadSecurityAgentRuleID: description: The ID of the Agent rule example: 3b5-v82-ns6 @@ -11521,20 +35883,44 @@ components: required: true schema: type: string - SecurityFilterID: - description: The ID of the security filter. + SecurityMonitoringRuleID: + description: The ID of the rule. in: path - name: security_filter_id + name: rule_id required: true schema: type: string - SecurityMonitoringRuleID: - description: The ID of the rule. + SecurityMonitoringCriticalAssetID: + description: The ID of the critical asset. in: path - name: rule_id + name: critical_asset_id + required: true + schema: + type: string + SecurityMonitoringIntegrationConfigID: + description: The ID of the entity context sync configuration. + in: path + name: integration_config_id + required: true + schema: + type: string + SecurityFilterID: + description: The ID of the security filter. + in: path + name: security_filter_id required: true schema: type: string + PageNumber: + description: Specific page number to return. + in: query + name: page[number] + required: false + schema: + default: 0 + example: 0 + format: int64 + type: integer SecurityMonitoringSuppressionID: description: The ID of the suppression rule in: path @@ -11543,7 +35929,7 @@ components: schema: type: string PageSize: - description: Size for a given page. The maximum allowed value is 100. + description: Number of items to return per page. The maximum allowed value is 100. in: query name: page[size] required: false @@ -11552,16 +35938,30 @@ components: example: 10 format: int64 type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false + SecurityMonitoringDatasetID: + description: The UUID of the dataset. + in: path + name: dataset_id + required: true schema: - default: 0 - example: 0 + example: 123e4567-e89b-12d3-a456-426614174000 + type: string + SecurityMonitoringRuleVersion: + description: The historical version number of the rule. + in: path + name: version + required: true + schema: + example: 1 format: int64 type: integer + SampleLogGenerationContentPackID: + description: The identifier of the Cloud SIEM content pack to operate on (for example, `aws-cloudtrail`). + in: path + name: content_pack_id + required: true + schema: + type: string QueryFilterSearch: description: The search query for security signals. example: security:attack status:high @@ -11597,8 +35997,7 @@ components: $ref: '#/components/schemas/SecurityMonitoringSignalsSort' QueryPageCursor: description: A list of results using the cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== in: query name: page[cursor] required: false @@ -11622,6 +36021,20 @@ components: required: true schema: type: string + SecurityMonitoringTerraformResourceType: + description: The type of security monitoring resource to export. + in: path + name: resource_type + required: true + schema: + $ref: '#/components/schemas/SecurityMonitoringTerraformResourceType' + SecurityMonitoringTerraformResourceId: + description: The ID of the security monitoring resource to export. + in: path + name: resource_id + required: true + schema: + type: string SensitiveDataScannerGroupID: description: The ID of a group of rules. in: path @@ -11656,1098 +36069,3763 @@ components: name: aws_scan_options title: Aws Scan Options methods: - list_aws_scan_options: + list_aws_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_aws_scan_options: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_aws_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_aws_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_aws_scan_options: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_scan_options/methods/get_aws_scan_options' + - $ref: '#/components/x-stackQL-resources/aws_scan_options/methods/list_aws_scan_options' + insert: + - $ref: '#/components/x-stackQL-resources/aws_scan_options/methods/create_aws_scan_options' + update: + - $ref: '#/components/x-stackQL-resources/aws_scan_options/methods/update_aws_scan_options' + delete: + - $ref: '#/components/x-stackQL-resources/aws_scan_options/methods/delete_aws_scan_options' + replace: [] + agentless_scanning_account_azures: + id: datadog.security.agentless_scanning_account_azures + name: agentless_scanning_account_azures + title: Agentless Scanning Account Azures + methods: + list_azure_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1azure/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_azure_scan_options: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1azure/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_azure_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1azure~1{subscription_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_azure_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1azure~1{subscription_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_azure_scan_options: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1azure~1{subscription_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_azures/methods/get_azure_scan_options' + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_azures/methods/list_azure_scan_options' + insert: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_azures/methods/create_azure_scan_options' + update: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_azures/methods/update_azure_scan_options' + delete: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_azures/methods/delete_azure_scan_options' + replace: [] + agentless_scanning_account_gcp: + id: datadog.security.agentless_scanning_account_gcp + name: agentless_scanning_account_gcp + title: Agentless Scanning Account Gcp + methods: + list_gcp_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1gcp/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_gcp_scan_options: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1gcp/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_gcp_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1gcp~1{project_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_gcp_scan_options: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1gcp~1{project_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_gcp_scan_options: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1gcp~1{project_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_gcp/methods/get_gcp_scan_options' + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_gcp/methods/list_gcp_scan_options' + insert: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_gcp/methods/create_gcp_scan_options' + update: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_gcp/methods/update_gcp_scan_options' + delete: + - $ref: '#/components/x-stackQL-resources/agentless_scanning_account_gcp/methods/delete_gcp_scan_options' + replace: [] + aws_on_demand_tasks: + id: datadog.security.aws_on_demand_tasks + name: aws_on_demand_tasks + title: Aws On Demand Tasks + methods: + list_aws_on_demand_tasks: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_aws_on_demand_task: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + get_aws_on_demand_task: + operation: + $ref: '#/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws~1{task_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/aws_on_demand_tasks/methods/get_aws_on_demand_task' + - $ref: '#/components/x-stackQL-resources/aws_on_demand_tasks/methods/list_aws_on_demand_tasks' + insert: + - $ref: '#/components/x-stackQL-resources/aws_on_demand_tasks/methods/create_aws_on_demand_task' + update: [] + delete: [] + replace: [] + custom_frameworks: + id: datadog.security.custom_frameworks + name: custom_frameworks + title: Custom Frameworks + methods: + create_custom_framework: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1custom_frameworks/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_custom_framework: + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_custom_framework: + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_custom_framework: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/custom_frameworks/methods/get_custom_framework' + insert: + - $ref: '#/components/x-stackQL-resources/custom_frameworks/methods/create_custom_framework' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/custom_frameworks/methods/delete_custom_framework' + replace: + - $ref: '#/components/x-stackQL-resources/custom_frameworks/methods/update_custom_framework' + resource_evaluation_filters: + id: datadog.security.resource_evaluation_filters + name: resource_evaluation_filters + title: Resource Evaluation Filters + methods: + get_resource_evaluation_filters: + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1resource_filters/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_resource_evaluation_filters: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cloud_security_management~1resource_filters/put' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/resource_evaluation_filters/methods/get_resource_evaluation_filters' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/resource_evaluation_filters/methods/update_resource_evaluation_filters' + csm_agents: + id: datadog.security.csm_agents + name: csm_agents + title: Csm Agents + methods: + list_all_csmagents: + operation: + $ref: '#/paths/~1api~1v2~1csm~1onboarding~1agents/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_agents/methods/list_all_csmagents' + insert: [] + update: [] + delete: [] + replace: [] + csm_cloud_accounts_coverage_analysis: + id: datadog.security.csm_cloud_accounts_coverage_analysis + name: csm_cloud_accounts_coverage_analysis + title: Csm Cloud Accounts Coverage Analysis + methods: + get_csmcloud_accounts_coverage_analysis: + operation: + $ref: '#/paths/~1api~1v2~1csm~1onboarding~1coverage_analysis~1cloud_accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_cloud_accounts_coverage_analysis/methods/get_csmcloud_accounts_coverage_analysis' + insert: [] + update: [] + delete: [] + replace: [] + csm_hosts_and_containers_coverage_analysis: + id: datadog.security.csm_hosts_and_containers_coverage_analysis + name: csm_hosts_and_containers_coverage_analysis + title: Csm Hosts And Containers Coverage Analysis + methods: + get_csmhosts_and_containers_coverage_analysis: + operation: + $ref: '#/paths/~1api~1v2~1csm~1onboarding~1coverage_analysis~1hosts_and_containers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_hosts_and_containers_coverage_analysis/methods/get_csmhosts_and_containers_coverage_analysis' + insert: [] + update: [] + delete: [] + replace: [] + csm_serverless_coverage_analysis: + id: datadog.security.csm_serverless_coverage_analysis + name: csm_serverless_coverage_analysis + title: Csm Serverless Coverage Analysis + methods: + get_csmserverless_coverage_analysis: + operation: + $ref: '#/paths/~1api~1v2~1csm~1onboarding~1coverage_analysis~1serverless/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_serverless_coverage_analysis/methods/get_csmserverless_coverage_analysis' + insert: [] + update: [] + delete: [] + replace: [] + csm_serverless_agents: + id: datadog.security.csm_serverless_agents + name: csm_serverless_agents + title: Csm Serverless Agents + methods: + list_all_csmserverless_agents: + operation: + $ref: '#/paths/~1api~1v2~1csm~1onboarding~1serverless~1agents/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_serverless_agents/methods/list_all_csmserverless_agents' + insert: [] + update: [] + delete: [] + replace: [] + csm_ownership_settings: + id: datadog.security.csm_ownership_settings + name: csm_ownership_settings + title: Csm Ownership Settings + methods: + get_ownership_settings: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + post_ownership_settings: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1settings/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_ownership_settings/methods/get_ownership_settings' + insert: + - $ref: '#/components/x-stackQL-resources/csm_ownership_settings/methods/post_ownership_settings' + update: [] + delete: [] + replace: [] + csm_ownership_setting_untaggeds: + id: datadog.security.csm_ownership_setting_untaggeds + name: csm_ownership_setting_untaggeds + title: Csm Ownership Setting Untaggeds + methods: + get_ownership_untagged_findings: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1settings~1untagged/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_ownership_setting_untaggeds/methods/get_ownership_untagged_findings' + insert: [] + update: [] + delete: [] + replace: [] + csm_ownerships: + id: datadog.security.csm_ownerships + name: csm_ownerships + title: Csm Ownerships + methods: + list_ownership_inferences: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1{resource_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_ownership_inference: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1{resource_id}~1{owner_type}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_ownerships/methods/get_ownership_inference' + - $ref: '#/components/x-stackQL-resources/csm_ownerships/methods/list_ownership_inferences' + insert: [] + update: [] + delete: [] + replace: [] + csm_ownership_histories: + id: datadog.security.csm_ownership_histories + name: csm_ownership_histories + title: Csm Ownership Histories + methods: + list_ownership_history: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1{resource_id}~1history/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 100 + list_ownership_history_by_owner_type: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1{resource_id}~1{owner_type}~1history/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 100 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_ownership_histories/methods/list_ownership_history_by_owner_type' + - $ref: '#/components/x-stackQL-resources/csm_ownership_histories/methods/list_ownership_history' + insert: [] + update: [] + delete: [] + replace: [] + csm_ownership_evidences: + id: datadog.security.csm_ownership_evidences + name: csm_ownership_evidences + title: Csm Ownership Evidences + methods: + get_ownership_evidence: + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1{resource_id}~1{owner_type}~1evidence/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_ownership_evidences/methods/get_ownership_evidence' + insert: [] + update: [] + delete: [] + replace: [] + csm_ownership_feedbacks: + id: datadog.security.csm_ownership_feedbacks + name: csm_ownership_feedbacks + title: Csm Ownership Feedbacks + methods: + create_ownership_feedback: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1csm~1ownership~1{resource_id}~1{owner_type}~1feedback/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/csm_ownership_feedbacks/methods/create_ownership_feedback' + update: [] + delete: [] + replace: [] + csm_setting_agentless_hosts: + id: datadog.security.csm_setting_agentless_hosts + name: csm_setting_agentless_hosts + title: Csm Setting Agentless Hosts + methods: + list_csmagentless_hosts: + operation: + $ref: '#/paths/~1api~1v2~1csm~1settings~1agentless_hosts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_setting_agentless_hosts/methods/list_csmagentless_hosts' + insert: [] + update: [] + delete: [] + replace: [] + csm_setting_agentless_host_facet_infos: + id: datadog.security.csm_setting_agentless_host_facet_infos + name: csm_setting_agentless_host_facet_infos + title: Csm Setting Agentless Host Facet Infos + methods: + get_csmagentless_host_facet_info: + operation: + $ref: '#/paths/~1api~1v2~1csm~1settings~1agentless_hosts~1facet_info/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_setting_agentless_host_facet_infos/methods/get_csmagentless_host_facet_info' + insert: [] + update: [] + delete: [] + replace: [] + csm_setting_agentless_host_facets: + id: datadog.security.csm_setting_agentless_host_facets + name: csm_setting_agentless_host_facets + title: Csm Setting Agentless Host Facets + methods: + list_csmagentless_host_facets: + operation: + $ref: '#/paths/~1api~1v2~1csm~1settings~1agentless_hosts~1facets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_setting_agentless_host_facets/methods/list_csmagentless_host_facets' + insert: [] + update: [] + delete: [] + replace: [] + csm_setting_hosts: + id: datadog.security.csm_setting_hosts + name: csm_setting_hosts + title: Csm Setting Hosts + methods: + list_csmunified_hosts: + operation: + $ref: '#/paths/~1api~1v2~1csm~1settings~1hosts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_setting_hosts/methods/list_csmunified_hosts' + insert: [] + update: [] + delete: [] + replace: [] + csm_setting_host_facet_infos: + id: datadog.security.csm_setting_host_facet_infos + name: csm_setting_host_facet_infos + title: Csm Setting Host Facet Infos + methods: + get_csmunified_host_facet_info: + operation: + $ref: '#/paths/~1api~1v2~1csm~1settings~1hosts~1facet_info/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_setting_host_facet_infos/methods/get_csmunified_host_facet_info' + insert: [] + update: [] + delete: [] + replace: [] + csm_setting_host_facets: + id: datadog.security.csm_setting_host_facets + name: csm_setting_host_facets + title: Csm Setting Host Facets + methods: + list_csmunified_host_facets: + operation: + $ref: '#/paths/~1api~1v2~1csm~1settings~1hosts~1facets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/csm_setting_host_facets/methods/list_csmunified_host_facets' + insert: [] + update: [] + delete: [] + replace: [] + findings: + id: datadog.security.findings + name: findings + title: Findings + methods: + list_findings: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.cursor + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + get_finding: + operation: + $ref: '#/paths/~1api~1v2~1posture_management~1findings~1{finding_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + mute_security_findings: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1mute/patch' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/findings/methods/get_finding' + - $ref: '#/components/x-stackQL-resources/findings/methods/list_findings' + insert: [] + update: [] + delete: [] + replace: [] + security_entity_risk_scores: + id: datadog.security.security_entity_risk_scores + name: security_entity_risk_scores + title: Security Entity Risk Scores + methods: + list_entity_risk_scores: + operation: + $ref: '#/paths/~1api~1v2~1security-entities~1risk-scores/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + get_entity_risk_score: + operation: + $ref: '#/paths/~1api~1v2~1security-entities~1risk-scores~1{entity_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/security_entity_risk_scores/methods/get_entity_risk_score' + - $ref: '#/components/x-stackQL-resources/security_entity_risk_scores/methods/list_entity_risk_scores' + insert: [] + update: [] + delete: [] + replace: [] + application_security_services: + id: datadog.security.application_security_services + name: application_security_services + title: Application Security Services + methods: + get_asm_service_by_name: + operation: + $ref: '#/paths/~1api~1v2~1security~1asm~1services~1{service_filter}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/application_security_services/methods/get_asm_service_by_name' + insert: [] + update: [] + delete: [] + replace: [] + security_findings: + id: datadog.security.security_findings + name: security_findings + title: Security Findings + methods: + list_security_findings: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 150 + update_findings_assignee: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1assignee/patch' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + search_security_findings: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/security_findings/methods/list_security_findings' + insert: [] + update: [] + delete: [] + replace: [] + finding_automation_due_date_rules: + id: datadog.security.finding_automation_due_date_rules + name: finding_automation_due_date_rules + title: Finding Automation Due Date Rules + methods: + list_security_findings_automation_due_date_rules: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1due_date_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_security_findings_automation_due_date_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1due_date_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + reorder_security_findings_automation_due_date_rules: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1due_date_rules~1reorder/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_findings_automation_due_date_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1due_date_rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_findings_automation_due_date_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1due_date_rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_findings_automation_due_date_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1due_date_rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/finding_automation_due_date_rules/methods/get_security_findings_automation_due_date_rule' + - $ref: '#/components/x-stackQL-resources/finding_automation_due_date_rules/methods/list_security_findings_automation_due_date_rules' + insert: + - $ref: '#/components/x-stackQL-resources/finding_automation_due_date_rules/methods/create_security_findings_automation_due_date_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/finding_automation_due_date_rules/methods/delete_security_findings_automation_due_date_rule' + replace: + - $ref: '#/components/x-stackQL-resources/finding_automation_due_date_rules/methods/update_security_findings_automation_due_date_rule' + finding_automation_mute_rules: + id: datadog.security.finding_automation_mute_rules + name: finding_automation_mute_rules + title: Finding Automation Mute Rules + methods: + list_security_findings_automation_mute_rules: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1mute_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_security_findings_automation_mute_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1mute_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + reorder_security_findings_automation_mute_rules: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1mute_rules~1reorder/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_findings_automation_mute_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1mute_rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_findings_automation_mute_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1mute_rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_findings_automation_mute_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1mute_rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/finding_automation_mute_rules/methods/get_security_findings_automation_mute_rule' + - $ref: '#/components/x-stackQL-resources/finding_automation_mute_rules/methods/list_security_findings_automation_mute_rules' + insert: + - $ref: '#/components/x-stackQL-resources/finding_automation_mute_rules/methods/create_security_findings_automation_mute_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/finding_automation_mute_rules/methods/delete_security_findings_automation_mute_rule' + replace: + - $ref: '#/components/x-stackQL-resources/finding_automation_mute_rules/methods/update_security_findings_automation_mute_rule' + finding_automation_severity_modifier_rules: + id: datadog.security.finding_automation_severity_modifier_rules + name: finding_automation_severity_modifier_rules + title: Finding Automation Severity Modifier Rules + methods: + list_security_findings_automation_severity_modifier_rules: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1severity_modifier_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_security_findings_automation_severity_modifier_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1severity_modifier_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + reorder_security_findings_automation_severity_modifier_rules: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1severity_modifier_rules~1reorder/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_findings_automation_severity_modifier_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1severity_modifier_rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_findings_automation_severity_modifier_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1severity_modifier_rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_findings_automation_severity_modifier_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1severity_modifier_rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/finding_automation_severity_modifier_rules/methods/get_security_findings_automation_severity_modifier_rule' + - $ref: '#/components/x-stackQL-resources/finding_automation_severity_modifier_rules/methods/list_security_findings_automation_severity_modifier_rules' + insert: + - $ref: '#/components/x-stackQL-resources/finding_automation_severity_modifier_rules/methods/create_security_findings_automation_severity_modifier_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/finding_automation_severity_modifier_rules/methods/delete_security_findings_automation_severity_modifier_rule' + replace: + - $ref: '#/components/x-stackQL-resources/finding_automation_severity_modifier_rules/methods/update_security_findings_automation_severity_modifier_rule' + finding_automation_ticket_creation_rules: + id: datadog.security.finding_automation_ticket_creation_rules + name: finding_automation_ticket_creation_rules + title: Finding Automation Ticket Creation Rules + methods: + list_security_findings_automation_ticket_creation_rules: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1ticket_creation_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_security_findings_automation_ticket_creation_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1ticket_creation_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + reorder_security_findings_automation_ticket_creation_rules: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1ticket_creation_rules~1reorder/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_findings_automation_ticket_creation_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1ticket_creation_rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_findings_automation_ticket_creation_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1ticket_creation_rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_findings_automation_ticket_creation_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1automation~1ticket_creation_rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/finding_automation_ticket_creation_rules/methods/get_security_findings_automation_ticket_creation_rule' + - $ref: '#/components/x-stackQL-resources/finding_automation_ticket_creation_rules/methods/list_security_findings_automation_ticket_creation_rules' + insert: + - $ref: '#/components/x-stackQL-resources/finding_automation_ticket_creation_rules/methods/create_security_findings_automation_ticket_creation_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/finding_automation_ticket_creation_rules/methods/delete_security_findings_automation_ticket_creation_rule' + replace: + - $ref: '#/components/x-stackQL-resources/finding_automation_ticket_creation_rules/methods/update_security_findings_automation_ticket_creation_rule' + finding_cases: + id: datadog.security.finding_cases + name: finding_cases + title: Finding Cases + methods: + detach_case: + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1cases/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + create_cases: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1cases/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + attach_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1cases~1{case_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/finding_cases/methods/create_cases' + update: + - $ref: '#/components/x-stackQL-resources/finding_cases/methods/attach_case' + delete: + - $ref: '#/components/x-stackQL-resources/finding_cases/methods/detach_case' + replace: [] + finding_jira_issues: + id: datadog.security.finding_jira_issues + name: finding_jira_issues + title: Finding Jira Issues + methods: + attach_jira_issue: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1jira_issues/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_jira_issues: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1jira_issues/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/finding_jira_issues/methods/create_jira_issues' + update: + - $ref: '#/components/x-stackQL-resources/finding_jira_issues/methods/attach_jira_issue' + delete: [] + replace: [] + finding_linear_issues: + id: datadog.security.finding_linear_issues + name: finding_linear_issues + title: Finding Linear Issues + methods: + attach_linear_issue: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1linear_issues/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_linear_issues: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1linear_issues/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/finding_linear_issues/methods/create_linear_issues' + update: + - $ref: '#/components/x-stackQL-resources/finding_linear_issues/methods/attach_linear_issue' + delete: [] + replace: [] + finding_servicenow_tickets: + id: datadog.security.finding_servicenow_tickets + name: finding_servicenow_tickets + title: Finding Servicenow Tickets + methods: + attach_service_now_ticket: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1servicenow_tickets/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_service_now_tickets: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1findings~1servicenow_tickets/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/finding_servicenow_tickets/methods/create_service_now_tickets' + update: + - $ref: '#/components/x-stackQL-resources/finding_servicenow_tickets/methods/attach_service_now_ticket' + delete: [] + replace: [] + sboms: + id: datadog.security.sboms + name: sboms + title: Sboms + methods: + list_assets_sboms: + operation: + $ref: '#/paths/~1api~1v2~1security~1sboms/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_sbom: + operation: + $ref: '#/paths/~1api~1v2~1security~1sboms~1{asset_type}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/sboms/methods/get_sbom' + - $ref: '#/components/x-stackQL-resources/sboms/methods/list_assets_sboms' + insert: [] + update: [] + delete: [] + replace: [] + scanned_assets_metadata: + id: datadog.security.scanned_assets_metadata + name: scanned_assets_metadata + title: Scanned Assets Metadata + methods: + list_scanned_assets_metadata: + operation: + $ref: '#/paths/~1api~1v2~1security~1scanned-assets-metadata/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/scanned_assets_metadata/methods/list_scanned_assets_metadata' + insert: [] + update: [] + delete: [] + replace: [] + siem_ioc_explorers: + id: datadog.security.siem_ioc_explorers + name: siem_ioc_explorers + title: Siem Ioc Explorers + methods: + list_indicators_of_compromise: + operation: + $ref: '#/paths/~1api~1v2~1security~1siem~1ioc-explorer/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 2147483647 + skip: + paramName: offset + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/siem_ioc_explorers/methods/list_indicators_of_compromise' + insert: [] + update: [] + delete: [] + replace: [] + siem_ioc_explorer_indicators: + id: datadog.security.siem_ioc_explorer_indicators + name: siem_ioc_explorer_indicators + title: Siem Ioc Explorer Indicators + methods: + get_indicator_of_compromise: + operation: + $ref: '#/paths/~1api~1v2~1security~1siem~1ioc-explorer~1indicator/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/siem_ioc_explorer_indicators/methods/get_indicator_of_compromise' + insert: [] + update: [] + delete: [] + replace: [] + siem_ioc_explorer_triages: + id: datadog.security.siem_ioc_explorer_triages + name: siem_ioc_explorer_triages + title: Siem Ioc Explorer Triages + methods: + create_io_ctriage_state: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1siem~1ioc-explorer~1triage/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/siem_ioc_explorer_triages/methods/create_io_ctriage_state' + update: [] + delete: [] + replace: [] + signal_notification_rules: + id: datadog.security.signal_notification_rules + name: signal_notification_rules + title: Signal Notification Rules + methods: + get_signal_notification_rules: + operation: + $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_signal_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_signal_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_signal_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + patch_signal_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/signal_notification_rules/methods/get_signal_notification_rule' + - $ref: '#/components/x-stackQL-resources/signal_notification_rules/methods/get_signal_notification_rules' + insert: + - $ref: '#/components/x-stackQL-resources/signal_notification_rules/methods/create_signal_notification_rule' + update: + - $ref: '#/components/x-stackQL-resources/signal_notification_rules/methods/patch_signal_notification_rule' + delete: + - $ref: '#/components/x-stackQL-resources/signal_notification_rules/methods/delete_signal_notification_rule' + replace: [] + vulnerabilities: + id: datadog.security.vulnerabilities + name: vulnerabilities + title: Vulnerabilities + methods: + list_vulnerabilities: + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + import_security_vulnerabilities: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/vulnerabilities/methods/list_vulnerabilities' + insert: + - $ref: '#/components/x-stackQL-resources/vulnerabilities/methods/import_security_vulnerabilities' + update: [] + delete: [] + replace: [] + vulnerability_notification_rules: + id: datadog.security.vulnerability_notification_rules + name: vulnerability_notification_rules + title: Vulnerability Notification Rules + methods: + get_vulnerability_notification_rules: + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_vulnerability_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_vulnerability_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_vulnerability_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + patch_vulnerability_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/vulnerability_notification_rules/methods/get_vulnerability_notification_rule' + - $ref: '#/components/x-stackQL-resources/vulnerability_notification_rules/methods/get_vulnerability_notification_rules' + insert: + - $ref: '#/components/x-stackQL-resources/vulnerability_notification_rules/methods/create_vulnerability_notification_rule' + update: + - $ref: '#/components/x-stackQL-resources/vulnerability_notification_rules/methods/patch_vulnerability_notification_rule' + delete: + - $ref: '#/components/x-stackQL-resources/vulnerability_notification_rules/methods/delete_vulnerability_notification_rule' + replace: [] + vulnerable_assets: + id: datadog.security.vulnerable_assets + name: vulnerable_assets + title: Vulnerable Assets + methods: + list_vulnerable_assets: + operation: + $ref: '#/paths/~1api~1v2~1security~1vulnerable-assets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/vulnerable_assets/methods/list_vulnerable_assets' + insert: [] + update: [] + delete: [] + replace: [] + cloud_workload_security_agent_rules: + id: datadog.security.cloud_workload_security_agent_rules + name: cloud_workload_security_agent_rules + title: Cloud Workload Security Agent Rules + methods: + list_cloud_workload_security_agent_rules: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_cloud_workload_security_agent_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_cloud_workload_security_agent_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_cloud_workload_security_agent_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_cloud_workload_security_agent_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/get_cloud_workload_security_agent_rule' + - $ref: '#/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/list_cloud_workload_security_agent_rules' + insert: + - $ref: '#/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/create_cloud_workload_security_agent_rule' + update: + - $ref: '#/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/update_cloud_workload_security_agent_rule' + delete: + - $ref: '#/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/delete_cloud_workload_security_agent_rule' + replace: [] + monitoring_critical_assets: + id: datadog.security.monitoring_critical_assets + name: monitoring_critical_assets + title: Monitoring Critical Assets + methods: + list_security_monitoring_critical_assets: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1critical_assets/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_security_monitoring_critical_asset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1critical_assets/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_monitoring_critical_asset: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1critical_assets~1{critical_asset_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_monitoring_critical_asset: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1critical_assets~1{critical_asset_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_monitoring_critical_asset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1critical_assets~1{critical_asset_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_critical_assets/methods/get_security_monitoring_critical_asset' + - $ref: '#/components/x-stackQL-resources/monitoring_critical_assets/methods/list_security_monitoring_critical_assets' + insert: + - $ref: '#/components/x-stackQL-resources/monitoring_critical_assets/methods/create_security_monitoring_critical_asset' + update: + - $ref: '#/components/x-stackQL-resources/monitoring_critical_assets/methods/update_security_monitoring_critical_asset' + delete: + - $ref: '#/components/x-stackQL-resources/monitoring_critical_assets/methods/delete_security_monitoring_critical_asset' + replace: [] + monitoring_critical_asset_rules: + id: datadog.security.monitoring_critical_asset_rules + name: monitoring_critical_asset_rules + title: Monitoring Critical Asset Rules + methods: + get_critical_assets_affecting_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1critical_assets~1rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_critical_asset_rules/methods/get_critical_assets_affecting_rule' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_integration_configs: + id: datadog.security.monitoring_integration_configs + name: monitoring_integration_configs + title: Monitoring Integration Configs + methods: + list_security_monitoring_integration_configs: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_security_monitoring_integration_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_security_monitoring_integration_credentials: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_monitoring_integration_config: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1{integration_config_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_monitoring_integration_config: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1{integration_config_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_monitoring_integration_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1{integration_config_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_security_monitoring_integration_config: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1{integration_config_id}~1validate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + activate_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1{integration_type}~1activate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + deactivate_integration: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1{integration_type}~1deactivate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_integration_configs/methods/get_security_monitoring_integration_config' + - $ref: '#/components/x-stackQL-resources/monitoring_integration_configs/methods/list_security_monitoring_integration_configs' + insert: + - $ref: '#/components/x-stackQL-resources/monitoring_integration_configs/methods/create_security_monitoring_integration_config' + update: + - $ref: '#/components/x-stackQL-resources/monitoring_integration_configs/methods/update_security_monitoring_integration_config' + delete: + - $ref: '#/components/x-stackQL-resources/monitoring_integration_configs/methods/delete_security_monitoring_integration_config' + replace: [] + monitoring_entra_id_azure_app_registrations: + id: datadog.security.monitoring_entra_id_azure_app_registrations + name: monitoring_entra_id_azure_app_registrations + title: Monitoring Entra Id Azure App Registrations + methods: + get_entra_id_azure_app_registrations: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1integration_config~1entra_id~1azure_app_registrations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_entra_id_azure_app_registrations/methods/get_entra_id_azure_app_registrations' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_notification_rules: + id: datadog.security.monitoring_notification_rules + name: monitoring_notification_rules + title: Monitoring Notification Rules + methods: + send_security_monitoring_notification_preview: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1notification_rules~1send_notification_preview/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + filters: + id: datadog.security.filters + name: filters + title: Filters + methods: + list_security_filters: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_security_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_security_filter: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_filter: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_filter: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/filters/methods/get_security_filter' + - $ref: '#/components/x-stackQL-resources/filters/methods/list_security_filters' + insert: + - $ref: '#/components/x-stackQL-resources/filters/methods/create_security_filter' + update: + - $ref: '#/components/x-stackQL-resources/filters/methods/update_security_filter' + delete: + - $ref: '#/components/x-stackQL-resources/filters/methods/delete_security_filter' + replace: [] + monitoring_security_filter_versions: + id: datadog.security.monitoring_security_filter_versions + name: monitoring_security_filter_versions + title: Monitoring Security Filter Versions + methods: + list_security_filter_versions: operation: - $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1versions/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_aws_scan_options: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_security_filter_versions/methods/list_security_filter_versions' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_suppressions: + id: datadog.security.monitoring_suppressions + name: monitoring_suppressions + title: Monitoring Suppressions + methods: + list_security_monitoring_suppressions: operation: - $ref: '#/paths/~1api~1v2~1agentless_scanning~1accounts~1aws/post' + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions/get' response: mediaType: application/json - openAPIDocKey: '201' - delete_aws_scan_options: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_security_monitoring_suppression: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_security_monitoring_suppression: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/delete + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1validation/post' response: mediaType: application/json openAPIDocKey: '204' - get_aws_scan_options: + request: + nativeCasing: camel + delete_security_monitoring_suppression: operation: - $ref: >- - #/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_monitoring_suppression: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_aws_scan_options: + request: + nativeCasing: camel + update_security_monitoring_suppression: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1agentless_scanning~1accounts~1aws~1{account_id}/patch + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/patch' response: mediaType: application/json - openAPIDocKey: '204' + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_scan_options/methods/get_aws_scan_options - - $ref: >- - #/components/x-stackQL-resources/aws_scan_options/methods/list_aws_scan_options + - $ref: '#/components/x-stackQL-resources/monitoring_suppressions/methods/get_security_monitoring_suppression' + - $ref: '#/components/x-stackQL-resources/monitoring_suppressions/methods/list_security_monitoring_suppressions' insert: - - $ref: >- - #/components/x-stackQL-resources/aws_scan_options/methods/create_aws_scan_options + - $ref: '#/components/x-stackQL-resources/monitoring_suppressions/methods/create_security_monitoring_suppression' update: - - $ref: >- - #/components/x-stackQL-resources/aws_scan_options/methods/update_aws_scan_options + - $ref: '#/components/x-stackQL-resources/monitoring_suppressions/methods/update_security_monitoring_suppression' delete: - - $ref: >- - #/components/x-stackQL-resources/aws_scan_options/methods/delete_aws_scan_options + - $ref: '#/components/x-stackQL-resources/monitoring_suppressions/methods/delete_security_monitoring_suppression' replace: [] - aws_on_demand_tasks: - id: datadog.security.aws_on_demand_tasks - name: aws_on_demand_tasks - title: Aws On Demand Tasks + suppressions_affecting_future_rule: + id: datadog.security.suppressions_affecting_future_rule + name: suppressions_affecting_future_rule + title: Suppressions Affecting Future Rule methods: - list_aws_on_demand_tasks: + get_suppressions_affecting_future_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1rules/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_aws_on_demand_task: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/suppressions_affecting_future_rule/methods/get_suppressions_affecting_future_rule' + update: [] + delete: [] + replace: [] + suppressions_affecting_rule: + id: datadog.security.suppressions_affecting_rule + name: suppressions_affecting_rule + title: Suppressions Affecting Rule + methods: + get_suppressions_affecting_rule: operation: - $ref: '#/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws/post' + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1rules~1{rule_id}/get' response: mediaType: application/json - openAPIDocKey: '201' - get_aws_on_demand_task: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/suppressions_affecting_rule/methods/get_suppressions_affecting_rule' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_suppression_version_histories: + id: datadog.security.monitoring_suppression_version_histories + name: monitoring_suppression_version_histories + title: Monitoring Suppression Version Histories + methods: + get_suppression_version_history: operation: - $ref: >- - #/paths/~1api~1v2~1agentless_scanning~1ondemand~1aws~1{task_id}/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}~1version_history/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/aws_on_demand_tasks/methods/get_aws_on_demand_task - - $ref: >- - #/components/x-stackQL-resources/aws_on_demand_tasks/methods/list_aws_on_demand_tasks - insert: - - $ref: >- - #/components/x-stackQL-resources/aws_on_demand_tasks/methods/create_aws_on_demand_task + - $ref: '#/components/x-stackQL-resources/monitoring_suppression_version_histories/methods/get_suppression_version_history' + insert: [] update: [] delete: [] replace: [] - custom_frameworks: - id: datadog.security.custom_frameworks - name: custom_frameworks - title: Custom Frameworks + monitoring_content_pack_states: + id: datadog.security.monitoring_content_pack_states + name: monitoring_content_pack_states + title: Monitoring Content Pack States methods: - create_custom_framework: + get_content_packs_states: operation: - $ref: >- - #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks/post + $ref: '#/paths/~1api~1v2~1security_monitoring~1content_packs~1states/get' response: mediaType: application/json openAPIDocKey: '200' - delete_custom_framework: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_content_pack_states/methods/get_content_packs_states' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_content_packs: + id: datadog.security.monitoring_content_packs + name: monitoring_content_packs + title: Monitoring Content Packs + methods: + activate_content_pack: operation: - $ref: >- - #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/delete + $ref: '#/paths/~1api~1v2~1security_monitoring~1content_packs~1{content_pack_id}~1activate/put' response: mediaType: application/json - openAPIDocKey: '200' - get_custom_framework: + openAPIDocKey: '202' + request: + nativeCasing: camel + deactivate_content_pack: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1content_packs~1{content_pack_id}~1deactivate/put' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + monitoring_datasets: + id: datadog.security.monitoring_datasets + name: monitoring_datasets + title: Monitoring Datasets + methods: + list_security_monitoring_datasets: operation: - $ref: >- - #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_custom_framework: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_security_monitoring_dataset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_security_monitoring_dataset: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets~1{dataset_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_monitoring_dataset: operation: - $ref: >- - #/paths/~1api~1v2~1cloud_security_management~1custom_frameworks~1{handle}~1{version}/put + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets~1{dataset_id}/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_security_monitoring_dataset: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets~1{dataset_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/custom_frameworks/methods/get_custom_framework + - $ref: '#/components/x-stackQL-resources/monitoring_datasets/methods/get_security_monitoring_dataset' + - $ref: '#/components/x-stackQL-resources/monitoring_datasets/methods/list_security_monitoring_datasets' insert: - - $ref: >- - #/components/x-stackQL-resources/custom_frameworks/methods/create_custom_framework - update: [] + - $ref: '#/components/x-stackQL-resources/monitoring_datasets/methods/create_security_monitoring_dataset' + update: + - $ref: '#/components/x-stackQL-resources/monitoring_datasets/methods/update_security_monitoring_dataset' delete: - - $ref: >- - #/components/x-stackQL-resources/custom_frameworks/methods/delete_custom_framework - replace: - - $ref: >- - #/components/x-stackQL-resources/custom_frameworks/methods/update_custom_framework - resource_evaluation_filters: - id: datadog.security.resource_evaluation_filters - name: resource_evaluation_filters - title: Resource Evaluation Filters + - $ref: '#/components/x-stackQL-resources/monitoring_datasets/methods/delete_security_monitoring_dataset' + replace: [] + monitoring_dataset_dependencies: + id: datadog.security.monitoring_dataset_dependencies + name: monitoring_dataset_dependencies + title: Monitoring Dataset Dependencies methods: - get_resource_evaluation_filters: + batch_get_security_monitoring_dataset_dependencies: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cloud_security_management~1resource_filters/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets~1dependencies/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - update_resource_evaluation_filters: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/monitoring_dataset_dependencies/methods/batch_get_security_monitoring_dataset_dependencies' + update: [] + delete: [] + replace: [] + monitoring_dataset_versions: + id: datadog.security.monitoring_dataset_versions + name: monitoring_dataset_versions + title: Monitoring Dataset Versions + methods: + get_security_monitoring_dataset_by_version: operation: - $ref: '#/paths/~1api~1v2~1cloud_security_management~1resource_filters/put' + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets~1{dataset_id}~1version~1{version}/get' response: mediaType: application/json - openAPIDocKey: '201' + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/resource_evaluation_filters/methods/get_resource_evaluation_filters + - $ref: '#/components/x-stackQL-resources/monitoring_dataset_versions/methods/get_security_monitoring_dataset_by_version' insert: [] update: [] delete: [] - replace: - - $ref: >- - #/components/x-stackQL-resources/resource_evaluation_filters/methods/update_resource_evaluation_filters - csm_agents: - id: datadog.security.csm_agents - name: csm_agents - title: Csm Agents + replace: [] + monitoring_dataset_version_histories: + id: datadog.security.monitoring_dataset_version_histories + name: monitoring_dataset_version_histories + title: Monitoring Dataset Version Histories methods: - list_all_csmagents: + get_security_monitoring_dataset_version_history: operation: - $ref: '#/paths/~1api~1v2~1csm~1onboarding~1agents/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1datasets~1{dataset_id}~1version_history/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/csm_agents/methods/list_all_csmagents + - $ref: '#/components/x-stackQL-resources/monitoring_dataset_version_histories/methods/get_security_monitoring_dataset_version_history' insert: [] update: [] delete: [] replace: [] - csm_cloud_accounts_coverage_analysis: - id: datadog.security.csm_cloud_accounts_coverage_analysis - name: csm_cloud_accounts_coverage_analysis - title: Csm Cloud Accounts Coverage Analysis + monitoring_entity_contexts: + id: datadog.security.monitoring_entity_contexts + name: monitoring_entity_contexts + title: Monitoring Entity Contexts methods: - get_csmcloud_accounts_coverage_analysis: + get_entity_context: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1entity_context/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + get_single_entity_context: operation: - $ref: >- - #/paths/~1api~1v2~1csm~1onboarding~1coverage_analysis~1cloud_accounts/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1entity_context~1{id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/csm_cloud_accounts_coverage_analysis/methods/get_csmcloud_accounts_coverage_analysis + - $ref: '#/components/x-stackQL-resources/monitoring_entity_contexts/methods/get_single_entity_context' + - $ref: '#/components/x-stackQL-resources/monitoring_entity_contexts/methods/get_entity_context' insert: [] update: [] delete: [] replace: [] - csm_hosts_and_containers_coverage_analysis: - id: datadog.security.csm_hosts_and_containers_coverage_analysis - name: csm_hosts_and_containers_coverage_analysis - title: Csm Hosts And Containers Coverage Analysis + monitoring_rules: + id: datadog.security.monitoring_rules + name: monitoring_rules + title: Monitoring Rules methods: - get_csmhosts_and_containers_coverage_analysis: + list_security_monitoring_rules: operation: - $ref: >- - #/paths/~1api~1v2~1csm~1onboarding~1coverage_analysis~1hosts_and_containers/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_security_monitoring_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + bulk_delete_security_monitoring_rules: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1bulk_delete/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + convert_security_monitoring_rule_from_jsonto_terraform: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1convert/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + test_security_monitoring_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1test/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + validate_security_monitoring_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1validation/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + delete_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_security_monitoring_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + convert_existing_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1convert/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + restore_security_monitoring_rule: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1restore~1{version}/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + test_existing_security_monitoring_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1test/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/csm_hosts_and_containers_coverage_analysis/methods/get_csmhosts_and_containers_coverage_analysis - insert: [] + - $ref: '#/components/x-stackQL-resources/monitoring_rules/methods/get_security_monitoring_rule' + - $ref: '#/components/x-stackQL-resources/monitoring_rules/methods/list_security_monitoring_rules' + insert: + - $ref: '#/components/x-stackQL-resources/monitoring_rules/methods/create_security_monitoring_rule' update: [] - delete: [] - replace: [] - csm_serverless_coverage_analysis: - id: datadog.security.csm_serverless_coverage_analysis - name: csm_serverless_coverage_analysis - title: Csm Serverless Coverage Analysis + delete: + - $ref: '#/components/x-stackQL-resources/monitoring_rules/methods/delete_security_monitoring_rule' + - $ref: '#/components/x-stackQL-resources/monitoring_rules/methods/bulk_delete_security_monitoring_rules' + replace: + - $ref: '#/components/x-stackQL-resources/monitoring_rules/methods/update_security_monitoring_rule' + rule_version_history: + id: datadog.security.rule_version_history + name: rule_version_history + title: Rule Version History methods: - get_csmserverless_coverage_analysis: + get_rule_version_history: operation: - $ref: >- - #/paths/~1api~1v2~1csm~1onboarding~1coverage_analysis~1serverless/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1version_history/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/csm_serverless_coverage_analysis/methods/get_csmserverless_coverage_analysis + - $ref: '#/components/x-stackQL-resources/rule_version_history/methods/get_rule_version_history' insert: [] update: [] delete: [] replace: [] - csm_serverless_agents: - id: datadog.security.csm_serverless_agents - name: csm_serverless_agents - title: Csm Serverless Agents + monitoring_sample_log_generation_subscriptions: + id: datadog.security.monitoring_sample_log_generation_subscriptions + name: monitoring_sample_log_generation_subscriptions + title: Monitoring Sample Log Generation Subscriptions methods: - list_all_csmserverless_agents: + list_sample_log_generation_subscriptions: operation: - $ref: '#/paths/~1api~1v2~1csm~1onboarding~1serverless~1agents/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1sample_log_generation~1subscriptions/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/csm_serverless_agents/methods/list_all_csmserverless_agents - insert: [] - update: [] - delete: [] - replace: [] - findings: - id: datadog.security.findings - name: findings - title: Findings - methods: - list_findings: + request: + nativeCasing: camel + create_sample_log_generation_subscription: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1posture_management~1findings/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1sample_log_generation~1subscriptions/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - mute_findings: + request: + nativeCasing: camel + bulk_create_sample_log_generation_subscriptions: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1posture_management~1findings/patch' + $ref: '#/paths/~1api~1v2~1security_monitoring~1sample_log_generation~1subscriptions~1bulk/post' response: mediaType: application/json openAPIDocKey: '200' - get_finding: + request: + nativeCasing: camel + delete_sample_log_generation_subscription: operation: - $ref: '#/paths/~1api~1v2~1posture_management~1findings~1{finding_id}/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1sample_log_generation~1subscriptions~1{content_pack_id}/delete' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/findings/methods/get_finding' - - $ref: '#/components/x-stackQL-resources/findings/methods/list_findings' - insert: [] + - $ref: '#/components/x-stackQL-resources/monitoring_sample_log_generation_subscriptions/methods/list_sample_log_generation_subscriptions' + insert: + - $ref: '#/components/x-stackQL-resources/monitoring_sample_log_generation_subscriptions/methods/create_sample_log_generation_subscription' update: [] - delete: [] + delete: + - $ref: '#/components/x-stackQL-resources/monitoring_sample_log_generation_subscriptions/methods/delete_sample_log_generation_subscription' replace: [] - vulnerable_assets: - id: datadog.security.vulnerable_assets - name: vulnerable_assets - title: Vulnerable Assets + monitoring_signals: + id: datadog.security.monitoring_signals + name: monitoring_signals + title: Monitoring Signals methods: - list_vulnerable_assets: + list_security_monitoring_signals: operation: - $ref: '#/paths/~1api~1v2~1security~1assets/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/vulnerable_assets/methods/list_vulnerable_assets - insert: [] - update: [] - delete: [] - replace: [] - cloud_workload_security_agent_rules: - id: datadog.security.cloud_workload_security_agent_rules - name: cloud_workload_security_agent_rules - title: Cloud Workload Security Agent Rules - methods: - download_cloud_workload_policy_file: + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + bulk_edit_security_monitoring_signals_assignee: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security~1cloud_workload~1policy~1download/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1bulk~1assignee/patch' response: - mediaType: application/yaml + mediaType: application/json openAPIDocKey: '200' - list_cloud_workload_security_agent_rules: + request: + nativeCasing: camel + bulk_edit_security_monitoring_signals_state: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1bulk~1state/patch' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_cloud_workload_security_agent_rule: + request: + nativeCasing: camel + bulk_edit_security_monitoring_signals: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules/post + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1bulk~1update/patch' response: mediaType: application/json openAPIDocKey: '200' - delete_cloud_workload_security_agent_rule: + request: + nativeCasing: camel + search_security_monitoring_signals: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/delete + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1search/post' response: mediaType: application/json - openAPIDocKey: '204' - get_cloud_workload_security_agent_rule: + openAPIDocKey: '200' + request: + nativeCasing: camel + get_security_monitoring_signal: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/get + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_cloud_workload_security_agent_rule: + request: + nativeCasing: camel + edit_security_monitoring_signal_assignee: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1cloud_workload_security~1agent_rules~1{agent_rule_id}/patch + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1assignee/patch' response: mediaType: application/json openAPIDocKey: '200' - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/get_cloud_workload_security_agent_rule - - $ref: >- - #/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/list_cloud_workload_security_agent_rules - insert: - - $ref: >- - #/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/create_cloud_workload_security_agent_rule - update: - - $ref: >- - #/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/update_cloud_workload_security_agent_rule - delete: - - $ref: >- - #/components/x-stackQL-resources/cloud_workload_security_agent_rules/methods/delete_cloud_workload_security_agent_rule - replace: [] - sboms: - id: datadog.security.sboms - name: sboms - title: Sboms - methods: - list_assets_sboms: + request: + nativeCasing: camel + edit_security_monitoring_signal_incidents: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security~1sboms/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1incidents/patch' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - get_sbom: + request: + nativeCasing: camel + edit_security_monitoring_signal_state: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security~1sboms~1{asset_type}/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1state/patch' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data + request: + nativeCasing: camel + edit_security_monitoring_signal: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1update/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + add_security_monitoring_signal_to_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v1~1security_analytics~1signals~1{signal_id}~1add_to_incident/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/sboms/methods/get_sbom' - - $ref: '#/components/x-stackQL-resources/sboms/methods/list_assets_sboms' + - $ref: '#/components/x-stackQL-resources/monitoring_signals/methods/get_security_monitoring_signal' + - $ref: '#/components/x-stackQL-resources/monitoring_signals/methods/list_security_monitoring_signals' insert: [] update: [] delete: [] replace: [] - signal_notification_rules: - id: datadog.security.signal_notification_rules - name: signal_notification_rules - title: Signal Notification Rules + monitoring_signal_entities: + id: datadog.security.monitoring_signal_entities + name: monitoring_signal_entities + title: Monitoring Signal Entities methods: - get_signal_notification_rules: + get_signal_entities: operation: - $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1entities/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_signal_notification_rule: - operation: - $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules/post' - response: - mediaType: application/json - openAPIDocKey: '201' - delete_signal_notification_rule: - operation: - $ref: >- - #/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/delete - response: - mediaType: application/json - openAPIDocKey: '204' - get_signal_notification_rule: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 1000 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_signal_entities/methods/get_signal_entities' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_signal_investigation_queries: + id: datadog.security.monitoring_signal_investigation_queries + name: monitoring_signal_investigation_queries + title: Monitoring Signal Investigation Queries + methods: + get_investigation_log_queries_matching_signal: operation: - $ref: '#/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1investigation_queries/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - patch_signal_notification_rule: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_signal_investigation_queries/methods/get_investigation_log_queries_matching_signal' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_signal_suggested_actions: + id: datadog.security.monitoring_signal_suggested_actions + name: monitoring_signal_suggested_actions + title: Monitoring Signal Suggested Actions + methods: + get_suggested_actions_matching_signal: operation: - $ref: >- - #/paths/~1api~1v2~1security~1signals~1notification_rules~1{id}/patch + $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1suggested_actions/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/signal_notification_rules/methods/get_signal_notification_rule - - $ref: >- - #/components/x-stackQL-resources/signal_notification_rules/methods/get_signal_notification_rules - insert: - - $ref: >- - #/components/x-stackQL-resources/signal_notification_rules/methods/create_signal_notification_rule - update: - - $ref: >- - #/components/x-stackQL-resources/signal_notification_rules/methods/patch_signal_notification_rule - delete: - - $ref: >- - #/components/x-stackQL-resources/signal_notification_rules/methods/delete_signal_notification_rule + - $ref: '#/components/x-stackQL-resources/monitoring_signal_suggested_actions/methods/get_suggested_actions_matching_signal' + insert: [] + update: [] + delete: [] replace: [] - vulnerabilities: - id: datadog.security.vulnerabilities - name: vulnerabilities - title: Vulnerabilities + monitoring_terraform_resources: + id: datadog.security.monitoring_terraform_resources + name: monitoring_terraform_resources + title: Monitoring Terraform Resources methods: - list_vulnerabilities: + convert_security_monitoring_terraform_resource: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security~1vulnerabilities/get' + $ref: '#/paths/~1api~1v2~1security_monitoring~1terraform~1{resource_type}~1convert/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + export_security_monitoring_terraform_resource: + operation: + $ref: '#/paths/~1api~1v2~1security_monitoring~1terraform~1{resource_type}~1{resource_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/vulnerabilities/methods/list_vulnerabilities + - $ref: '#/components/x-stackQL-resources/monitoring_terraform_resources/methods/export_security_monitoring_terraform_resource' insert: [] update: [] delete: [] replace: [] - vulnerability_notification_rules: - id: datadog.security.vulnerability_notification_rules - name: vulnerability_notification_rules - title: Vulnerability Notification Rules + scanning_groups: + id: datadog.security.scanning_groups + name: scanning_groups + title: Scanning Groups methods: - get_vulnerability_notification_rules: + list_scanning_groups: operation: - $ref: >- - #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules/get + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_vulnerability_notification_rule: + request: + nativeCasing: camel + reorder_scanning_groups: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules/post + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/patch' response: mediaType: application/json - openAPIDocKey: '201' - delete_vulnerability_notification_rule: + openAPIDocKey: '200' + request: + nativeCasing: camel + create_scanning_group: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/delete + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups/post' response: mediaType: application/json - openAPIDocKey: '204' - get_vulnerability_notification_rule: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_scanning_group: operation: - $ref: >- - #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/get + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups~1{group_id}/delete' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - patch_vulnerability_notification_rule: + request: + nativeCasing: camel + update_scanning_group: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security~1vulnerabilities~1notification_rules~1{id}/patch + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups~1{group_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/vulnerability_notification_rules/methods/get_vulnerability_notification_rule - - $ref: >- - #/components/x-stackQL-resources/vulnerability_notification_rules/methods/get_vulnerability_notification_rules + - $ref: '#/components/x-stackQL-resources/scanning_groups/methods/list_scanning_groups' insert: - - $ref: >- - #/components/x-stackQL-resources/vulnerability_notification_rules/methods/create_vulnerability_notification_rule + - $ref: '#/components/x-stackQL-resources/scanning_groups/methods/create_scanning_group' update: - - $ref: >- - #/components/x-stackQL-resources/vulnerability_notification_rules/methods/patch_vulnerability_notification_rule + - $ref: '#/components/x-stackQL-resources/scanning_groups/methods/update_scanning_group' delete: - - $ref: >- - #/components/x-stackQL-resources/vulnerability_notification_rules/methods/delete_vulnerability_notification_rule + - $ref: '#/components/x-stackQL-resources/scanning_groups/methods/delete_scanning_group' replace: [] - filters: - id: datadog.security.filters - name: filters - title: Filters + scanning_rules: + id: datadog.security.scanning_rules + name: scanning_rules + title: Scanning Rules methods: - list_security_filters: + create_scanning_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_scanning_rule: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters/get + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules~1{rule_id}/delete' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_security_filter: + request: + nativeCasing: camel + update_scanning_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters/post + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules~1{rule_id}/patch' response: mediaType: application/json openAPIDocKey: '200' - delete_security_filter: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/scanning_rules/methods/create_scanning_rule' + update: + - $ref: '#/components/x-stackQL-resources/scanning_rules/methods/update_scanning_rule' + delete: + - $ref: '#/components/x-stackQL-resources/scanning_rules/methods/delete_scanning_rule' + replace: [] + standard_patterns: + id: datadog.security.standard_patterns + name: standard_patterns + title: Standard Patterns + methods: + list_standard_patterns: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/delete + $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1standard-patterns/get' response: mediaType: application/json - openAPIDocKey: '204' - get_security_filter: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/standard_patterns/methods/list_standard_patterns' + insert: [] + update: [] + delete: [] + replace: [] + monitoring_hist_signals: + id: datadog.security.monitoring_hist_signals + name: monitoring_hist_signals + title: Monitoring Hist Signals + methods: + list_security_monitoring_histsignals: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/get + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1histsignals/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_security_filter: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + search_security_monitoring_histsignals: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1security_filters~1{security_filter_id}/patch + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1histsignals~1search/post' response: mediaType: application/json openAPIDocKey: '200' - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/filters/methods/get_security_filter - - $ref: >- - #/components/x-stackQL-resources/filters/methods/list_security_filters - insert: - - $ref: >- - #/components/x-stackQL-resources/filters/methods/create_security_filter - update: - - $ref: >- - #/components/x-stackQL-resources/filters/methods/update_security_filter - delete: - - $ref: >- - #/components/x-stackQL-resources/filters/methods/delete_security_filter - replace: [] - monitoring_suppressions: - id: datadog.security.monitoring_suppressions - name: monitoring_suppressions - title: Monitoring Suppressions - methods: - list_security_monitoring_suppressions: + request: + nativeCasing: camel + get_security_monitoring_histsignal: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions/get + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1histsignals~1{histsignal_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_security_monitoring_suppression: + request: + nativeCasing: camel + convert_job_result_to_signal: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1signal_convert/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_security_monitoring_histsignals_by_job_id: + operation: + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}~1histsignals/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/monitoring_hist_signals/methods/get_security_monitoring_histsignal' + - $ref: '#/components/x-stackQL-resources/monitoring_hist_signals/methods/get_security_monitoring_histsignals_by_job_id' + - $ref: '#/components/x-stackQL-resources/monitoring_hist_signals/methods/list_security_monitoring_histsignals' + insert: [] + update: [] + delete: [] + replace: [] + historical_jobs: + id: datadog.security.historical_jobs + name: historical_jobs + title: Historical Jobs + methods: + list_historical_jobs: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions/post + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs/get' response: mediaType: application/json openAPIDocKey: '200' - validate_security_monitoring_suppression: + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + run_historical_job: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1validation/post + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs/post' response: mediaType: application/json - openAPIDocKey: '204' - delete_security_monitoring_suppression: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_historical_job: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/delete + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_security_monitoring_suppression: + request: + nativeCasing: camel + get_historical_job: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/get + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_security_monitoring_suppression: + request: + nativeCasing: camel + cancel_historical_job: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1{suppression_id}/patch + $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}~1cancel/patch' response: mediaType: application/json - openAPIDocKey: '200' + openAPIDocKey: '204' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/monitoring_suppressions/methods/get_security_monitoring_suppression - - $ref: >- - #/components/x-stackQL-resources/monitoring_suppressions/methods/list_security_monitoring_suppressions + - $ref: '#/components/x-stackQL-resources/historical_jobs/methods/get_historical_job' + - $ref: '#/components/x-stackQL-resources/historical_jobs/methods/list_historical_jobs' insert: - - $ref: >- - #/components/x-stackQL-resources/monitoring_suppressions/methods/create_security_monitoring_suppression + - $ref: '#/components/x-stackQL-resources/historical_jobs/methods/run_historical_job' update: - - $ref: >- - #/components/x-stackQL-resources/monitoring_suppressions/methods/update_security_monitoring_suppression + - $ref: '#/components/x-stackQL-resources/historical_jobs/methods/cancel_historical_job' delete: - - $ref: >- - #/components/x-stackQL-resources/monitoring_suppressions/methods/delete_security_monitoring_suppression + - $ref: '#/components/x-stackQL-resources/historical_jobs/methods/delete_historical_job' replace: [] - suppressions_affecting_future_rule: - id: datadog.security.suppressions_affecting_future_rule - name: suppressions_affecting_future_rule - title: Suppressions Affecting Future Rule + sca_dependencies: + id: datadog.security.sca_dependencies + name: sca_dependencies + title: Sca Dependencies methods: - get_suppressions_affecting_future_rule: + create_scaresult: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1rules/post + $ref: '#/paths/~1api~1v2~1static-analysis-sca~1dependencies/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + create_scascan: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1static-analysis-sca~1dependencies~1scan/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel sqlVerbs: select: [] insert: - - $ref: >- - #/components/x-stackQL-resources/suppressions_affecting_future_rule/methods/get_suppressions_affecting_future_rule + - $ref: '#/components/x-stackQL-resources/sca_dependencies/methods/create_scaresult' update: [] delete: [] replace: [] - suppressions_affecting_rule: - id: datadog.security.suppressions_affecting_rule - name: suppressions_affecting_rule - title: Suppressions Affecting Rule + sca_dependency_scans: + id: datadog.security.sca_dependency_scans + name: sca_dependency_scans + title: Sca Dependency Scans methods: - get_suppressions_affecting_rule: + get_scascan: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1configuration~1suppressions~1rules~1{rule_id}/get + $ref: '#/paths/~1api~1v2~1static-analysis-sca~1dependencies~1scan~1{job_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + sca_licenses: + id: datadog.security.sca_licenses + name: sca_licenses + title: Sca Licenses + methods: + list_scalicenses: + operation: + $ref: '#/paths/~1api~1v2~1static-analysis-sca~1licenses~1list/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/suppressions_affecting_rule/methods/get_suppressions_affecting_rule + - $ref: '#/components/x-stackQL-resources/sca_licenses/methods/list_scalicenses' insert: [] update: [] delete: [] replace: [] - monitoring_rules: - id: datadog.security.monitoring_rules - name: monitoring_rules - title: Monitoring Rules + sca_vulnerabilities: + id: datadog.security.sca_vulnerabilities + name: sca_vulnerabilities + title: Sca Vulnerabilities methods: - list_security_monitoring_rules: + create_scaresolve_vulnerable_symbols: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/get' + $ref: '#/paths/~1api~1v2~1static-analysis-sca~1vulnerabilities~1resolve-vulnerable-symbols/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_security_monitoring_rule: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + static_analysis_ai_memories: + id: datadog.security.static_analysis_ai_memories + name: static_analysis_ai_memories + title: Static Analysis Ai Memories + methods: + list_ai_memory_violation_results: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1memory/get' response: mediaType: application/json openAPIDocKey: '200' - convert_security_monitoring_rule_from_jsonto_terraform: + objectKey: $.data + request: + nativeCasing: camel + create_ai_memory_violation_result: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1convert/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1memory/post' response: mediaType: application/json openAPIDocKey: '200' - test_security_monitoring_rule: + request: + nativeCasing: camel + delete_ai_memory_violation_result: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1test/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1memory~1{id}/delete' response: mediaType: application/json openAPIDocKey: '200' - validate_security_monitoring_rule: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_memories/methods/list_ai_memory_violation_results' + insert: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_memories/methods/create_ai_memory_violation_result' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_memories/methods/delete_ai_memory_violation_result' + replace: [] + static_analysis_ai_prompts: + id: datadog.security.static_analysis_ai_prompts + name: static_analysis_ai_prompts + title: Static Analysis Ai Prompts + methods: + list_ai_prompts: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1validation/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1prompts/get' response: mediaType: application/json - openAPIDocKey: '204' - delete_security_monitoring_rule: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_prompts/methods/list_ai_prompts' + insert: [] + update: [] + delete: [] + replace: [] + static_analysis_ai_rulesets: + id: datadog.security.static_analysis_ai_rulesets + name: static_analysis_ai_rulesets + title: Static Analysis Ai Rulesets + methods: + list_ai_custom_rulesets: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/delete' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets/get' response: mediaType: application/json - openAPIDocKey: '204' - get_security_monitoring_rule: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_ai_custom_ruleset: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets/post' response: mediaType: application/json openAPIDocKey: '200' - update_security_monitoring_rule: + request: + nativeCasing: camel + delete_ai_custom_ruleset: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}/put' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}/delete' response: mediaType: application/json openAPIDocKey: '200' - convert_existing_security_monitoring_rule: + request: + nativeCasing: camel + get_ai_custom_ruleset: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1convert/get + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}/get' response: mediaType: application/json openAPIDocKey: '200' - test_existing_security_monitoring_rule: + objectKey: $.data + request: + nativeCasing: camel + update_ai_custom_ruleset: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1test/post + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/monitoring_rules/methods/get_security_monitoring_rule - - $ref: >- - #/components/x-stackQL-resources/monitoring_rules/methods/list_security_monitoring_rules + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_rulesets/methods/get_ai_custom_ruleset' + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_rulesets/methods/list_ai_custom_rulesets' insert: - - $ref: >- - #/components/x-stackQL-resources/monitoring_rules/methods/create_security_monitoring_rule - update: [] + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_rulesets/methods/create_ai_custom_ruleset' + update: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_rulesets/methods/update_ai_custom_ruleset' delete: - - $ref: >- - #/components/x-stackQL-resources/monitoring_rules/methods/delete_security_monitoring_rule - replace: - - $ref: >- - #/components/x-stackQL-resources/monitoring_rules/methods/update_security_monitoring_rule - rule_version_history: - id: datadog.security.rule_version_history - name: rule_version_history - title: Rule Version History + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_rulesets/methods/delete_ai_custom_ruleset' + replace: [] + static_analysis_ai_ruleset_rules: + id: datadog.security.static_analysis_ai_ruleset_rules + name: static_analysis_ai_ruleset_rules + title: Static Analysis Ai Ruleset Rules methods: - get_rule_version_history: + create_ai_custom_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1rules~1{rule_id}~1version_history/get + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}~1rules/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/rule_version_history/methods/get_rule_version_history - insert: [] - update: [] - delete: [] - replace: [] - monitoring_signals: - id: datadog.security.monitoring_signals - name: monitoring_signals - title: Monitoring Signals - methods: - list_security_monitoring_signals: + request: + nativeCasing: camel + delete_ai_custom_rule: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1signals/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}~1rules~1{rule_name}/delete' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - search_security_monitoring_signals: + request: + nativeCasing: camel + get_ai_custom_rule: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1search/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}~1rules~1{rule_name}/get' response: mediaType: application/json openAPIDocKey: '200' - get_security_monitoring_signal: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_ruleset_rules/methods/get_ai_custom_rule' + insert: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_ruleset_rules/methods/create_ai_custom_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_ruleset_rules/methods/delete_ai_custom_rule' + replace: [] + static_analysis_ai_ruleset_rule_revisions: + id: datadog.security.static_analysis_ai_ruleset_rule_revisions + name: static_analysis_ai_ruleset_rule_revisions + title: Static Analysis Ai Ruleset Rule Revisions + methods: + list_ai_custom_rule_revisions: operation: - $ref: '#/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - edit_security_monitoring_signal_assignee: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_ai_custom_rule_revision: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1assignee/patch + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions/post' response: mediaType: application/json openAPIDocKey: '200' - edit_security_monitoring_signal_incidents: + request: + nativeCasing: camel + get_ai_custom_rule_revision: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1incidents/patch + $ref: '#/paths/~1api~1v2~1static-analysis~1ai~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions~1{id}/get' response: mediaType: application/json openAPIDocKey: '200' - edit_security_monitoring_signal_state: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_ruleset_rule_revisions/methods/get_ai_custom_rule_revision' + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_ruleset_rule_revisions/methods/list_ai_custom_rule_revisions' + insert: + - $ref: '#/components/x-stackQL-resources/static_analysis_ai_ruleset_rule_revisions/methods/create_ai_custom_rule_revision' + update: [] + delete: [] + replace: [] + static_analysis_codegen_rulesets: + id: datadog.security.static_analysis_codegen_rulesets + name: static_analysis_codegen_rulesets + title: Static Analysis Codegen Rulesets + methods: + list_static_analysis_codegen_rulesets: operation: - $ref: >- - #/paths/~1api~1v2~1security_monitoring~1signals~1{signal_id}~1state/patch + $ref: '#/paths/~1api~1v2~1static-analysis~1codegen~1rulesets/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/monitoring_signals/methods/get_security_monitoring_signal - - $ref: >- - #/components/x-stackQL-resources/monitoring_signals/methods/list_security_monitoring_signals + - $ref: '#/components/x-stackQL-resources/static_analysis_codegen_rulesets/methods/list_static_analysis_codegen_rulesets' insert: [] update: [] delete: [] replace: [] - scanning_groups: - id: datadog.security.scanning_groups - name: scanning_groups - title: Scanning Groups + static_analysis_custom_rulesets: + id: datadog.security.static_analysis_custom_rulesets + name: static_analysis_custom_rulesets + title: Static Analysis Custom Rulesets methods: - list_scanning_groups: + list_custom_rulesets: operation: - $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - reorder_scanning_groups: + request: + nativeCasing: camel + create_custom_ruleset: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config/patch' + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets/put' response: mediaType: application/json openAPIDocKey: '200' - create_scanning_group: + request: + nativeCasing: camel + delete_custom_ruleset: operation: - $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}/delete' response: mediaType: application/json openAPIDocKey: '200' - delete_scanning_group: + request: + nativeCasing: camel + get_custom_ruleset: operation: - $ref: >- - #/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups~1{group_id}/delete + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}/get' response: mediaType: application/json openAPIDocKey: '200' - update_scanning_group: + objectKey: $.data + request: + nativeCasing: camel + update_custom_ruleset: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1sensitive-data-scanner~1config~1groups~1{group_id}/patch + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/scanning_groups/methods/list_scanning_groups - insert: - - $ref: >- - #/components/x-stackQL-resources/scanning_groups/methods/create_scanning_group + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_rulesets/methods/get_custom_ruleset' + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_rulesets/methods/list_custom_rulesets' + insert: [] update: - - $ref: >- - #/components/x-stackQL-resources/scanning_groups/methods/update_scanning_group + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_rulesets/methods/update_custom_ruleset' delete: - - $ref: >- - #/components/x-stackQL-resources/scanning_groups/methods/delete_scanning_group - replace: [] - scanning_rules: - id: datadog.security.scanning_rules - name: scanning_rules - title: Scanning Rules + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_rulesets/methods/delete_custom_ruleset' + replace: + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_rulesets/methods/create_custom_ruleset' + static_analysis_custom_ruleset_rules: + id: datadog.security.static_analysis_custom_ruleset_rules + name: static_analysis_custom_ruleset_rules + title: Static Analysis Custom Ruleset Rules methods: - create_scanning_rule: - operation: - $ref: '#/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules/post' - response: - mediaType: application/json - openAPIDocKey: '200' - delete_scanning_rule: + create_custom_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules~1{rule_id}/delete + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules/put' response: mediaType: application/json openAPIDocKey: '200' - update_scanning_rule: + request: + nativeCasing: camel + delete_custom_rule: operation: - $ref: >- - #/paths/~1api~1v2~1sensitive-data-scanner~1config~1rules~1{rule_id}/patch + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules~1{rule_name}/delete' response: mediaType: application/json openAPIDocKey: '200' - sqlVerbs: - select: [] - insert: - - $ref: >- - #/components/x-stackQL-resources/scanning_rules/methods/create_scanning_rule - update: - - $ref: >- - #/components/x-stackQL-resources/scanning_rules/methods/update_scanning_rule - delete: - - $ref: >- - #/components/x-stackQL-resources/scanning_rules/methods/delete_scanning_rule - replace: [] - standard_patterns: - id: datadog.security.standard_patterns - name: standard_patterns - title: Standard Patterns - methods: - list_standard_patterns: + request: + nativeCasing: camel + get_custom_rule: operation: - $ref: >- - #/paths/~1api~1v2~1sensitive-data-scanner~1config~1standard-patterns/get + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules~1{rule_name}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/standard_patterns/methods/list_standard_patterns + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_ruleset_rules/methods/get_custom_rule' insert: [] update: [] - delete: [] - replace: [] - monitoring_hist_signals: - id: datadog.security.monitoring_hist_signals - name: monitoring_hist_signals - title: Monitoring Hist Signals + delete: + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_ruleset_rules/methods/delete_custom_rule' + replace: + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_ruleset_rules/methods/create_custom_rule' + static_analysis_custom_ruleset_rule_revisions: + id: datadog.security.static_analysis_custom_ruleset_rule_revisions + name: static_analysis_custom_ruleset_rule_revisions + title: Static Analysis Custom Ruleset Rule Revisions methods: - list_security_monitoring_histsignals: + list_custom_rule_revisions: operation: - $ref: '#/paths/~1api~1v2~1siem-historical-detections~1histsignals/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - search_security_monitoring_histsignals: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_custom_rule_revision: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1siem-historical-detections~1histsignals~1search/get + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions/put' response: mediaType: application/json openAPIDocKey: '200' - get_security_monitoring_histsignal: + request: + nativeCasing: camel + revert_custom_rule_revision: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1siem-historical-detections~1histsignals~1{histsignal_id}/get + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions~1revert/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - convert_job_result_to_signal: + request: + nativeCasing: camel + get_custom_rule_revision: operation: - $ref: >- - #/paths/~1api~1v2~1siem-historical-detections~1jobs~1signal_convert/post + $ref: '#/paths/~1api~1v2~1static-analysis~1custom~1rulesets~1{ruleset_name}~1rules~1{rule_name}~1revisions~1{id}/get' response: mediaType: application/json - openAPIDocKey: '204' - get_security_monitoring_histsignals_by_job_id: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_ruleset_rule_revisions/methods/get_custom_rule_revision' + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_ruleset_rule_revisions/methods/list_custom_rule_revisions' + insert: [] + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/static_analysis_custom_ruleset_rule_revisions/methods/create_custom_rule_revision' + static_analysis_default_rulesets: + id: datadog.security.static_analysis_default_rulesets + name: static_analysis_default_rulesets + title: Static Analysis Default Rulesets + methods: + get_static_analysis_default_rulesets: operation: - $ref: >- - #/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}~1histsignals/get + $ref: '#/paths/~1api~1v2~1static-analysis~1default-rulesets~1{language}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/monitoring_hist_signals/methods/get_security_monitoring_histsignal - - $ref: >- - #/components/x-stackQL-resources/monitoring_hist_signals/methods/get_security_monitoring_histsignals_by_job_id - - $ref: >- - #/components/x-stackQL-resources/monitoring_hist_signals/methods/list_security_monitoring_histsignals + - $ref: '#/components/x-stackQL-resources/static_analysis_default_rulesets/methods/get_static_analysis_default_rulesets' insert: [] update: [] delete: [] replace: [] - historical_jobs: - id: datadog.security.historical_jobs - name: historical_jobs - title: Historical Jobs + static_analysis_rulesets: + id: datadog.security.static_analysis_rulesets + name: static_analysis_rulesets + title: Static Analysis Rulesets methods: - list_historical_jobs: + list_multiple_rulesets: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1rulesets/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_static_analysis_ruleset: + operation: + $ref: '#/paths/~1api~1v2~1static-analysis~1rulesets~1{ruleset_name}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - run_historical_job: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_rulesets/methods/get_static_analysis_ruleset' + insert: + - $ref: '#/components/x-stackQL-resources/static_analysis_rulesets/methods/list_multiple_rulesets' + update: [] + delete: [] + replace: [] + static_analysis_secret_rules: + id: datadog.security.static_analysis_secret_rules + name: static_analysis_secret_rules + title: Static Analysis Secret Rules + methods: + get_secrets_rules: operation: - $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs/post' + $ref: '#/paths/~1api~1v2~1static-analysis~1secrets~1rules/get' response: mediaType: application/json - openAPIDocKey: '201' - delete_historical_job: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/static_analysis_secret_rules/methods/get_secrets_rules' + insert: [] + update: [] + delete: [] + replace: [] + static_analysis_server: + id: datadog.security.static_analysis_server + name: static_analysis_server + title: Static Analysis Server + methods: + create_static_analysis_server_analysis: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}/delete + $ref: '#/paths/~1api~1v2~1static-analysis~1static-analysis-server~1analyze/post' response: mediaType: application/json - openAPIDocKey: '204' - get_historical_job: + openAPIDocKey: '200' + request: + nativeCasing: camel + create_static_analysis_ast: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}/get' + $ref: '#/paths/~1api~1v2~1static-analysis~1static-analysis-server~1get-ast/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - cancel_historical_job: + request: + nativeCasing: camel + get_static_analysis_node_types: operation: - $ref: >- - #/paths/~1api~1v2~1siem-historical-detections~1jobs~1{job_id}~1cancel/patch + $ref: '#/paths/~1api~1v2~1static-analysis~1static-analysis-server~1node-types~1{language}/get' response: mediaType: application/json - openAPIDocKey: '204' + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/historical_jobs/methods/get_historical_job - - $ref: >- - #/components/x-stackQL-resources/historical_jobs/methods/list_historical_jobs - insert: - - $ref: >- - #/components/x-stackQL-resources/historical_jobs/methods/run_historical_job - update: - - $ref: >- - #/components/x-stackQL-resources/historical_jobs/methods/cancel_historical_job - delete: - - $ref: >- - #/components/x-stackQL-resources/historical_jobs/methods/delete_historical_job + select: [] + insert: [] + update: [] + delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/service_management.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/service_management.yaml index a115bc0..8f15eb3 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/service_management.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/service_management.yaml @@ -4,6 +4,213 @@ info: description: datadog service_management API version: '1.0' paths: + /api/v2/bits-ai/investigations: + get: + description: List all Bits AI investigations for the organization. + operationId: ListInvestigations + parameters: + - description: Offset for pagination. + example: 0 + in: query + name: page[offset] + required: false + schema: + format: int64 + type: integer + - description: Maximum number of investigations to return. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 25 + format: int64 + maximum: 100 + type: integer + - description: Filter investigations by monitor ID. + example: 12345678 + in: query + name: filter[monitor_id] + required: false + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + status: conclusive + title: Monitor alert investigation for web-server-01 + id: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + type: investigation + links: + first: https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10 + next: https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=10&page[limit]=10 + self: https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10 + meta: + page: + limit: 10 + offset: 0 + total: 50 + schema: + $ref: '#/components/schemas/ListInvestigationsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - bits_investigations_read + summary: List Bits AI investigations + tags: + - Bits AI + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data + x-permission: + operator: OR + permissions: + - bits_investigations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Trigger a new Bits AI investigation based on a monitor alert. + operationId: TriggerInvestigation + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + trigger: + monitor_alert_trigger: + event_id: '1234567890123456789' + event_ts: 1700000000000 + monitor_id: 12345678 + type: monitor_alert_trigger + type: trigger_investigation_request + schema: + $ref: '#/components/schemas/TriggerInvestigationRequest' + description: Trigger investigation request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + investigation_id: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + id: f5e6a7b8-c9d0-1e2f-3a4b-5c6d7e8f9a0b + type: trigger_investigation_response + schema: + $ref: '#/components/schemas/TriggerInvestigationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - bits_investigations_write + summary: Trigger a Bits AI investigation + tags: + - Bits AI + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - bits_investigations_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/bits-ai/investigations/{id}: + get: + description: Get a specific Bits AI investigation by ID. + operationId: GetInvestigation + parameters: + - description: The ID of the investigation. + example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + in: path + name: id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + conclusions: + - description: The investigation found that a memory leak in payments-service caused CPU usage to spike above 95% starting at 14:32 UTC. + summary: CPU usage exceeded 95% for over 10 minutes on web-server-01. + title: High CPU usage detected on web-server-01 + status: conclusive + title: Monitor alert investigation for web-server-01 + id: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + type: investigation + links: + self: https://app.datadoghq.com/bits-ai/investigations/a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + schema: + $ref: '#/components/schemas/GetInvestigationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - bits_investigations_read + summary: Get a Bits AI investigation + tags: + - Bits AI + x-permission: + operator: OR + permissions: + - bits_investigations_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). /api/v2/cases: get: description: Search cases. @@ -30,6 +237,29 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + meta: + page: + current: 1 + size: 10 + total: 1 schema: $ref: '#/components/schemas/CasesResponse' description: OK @@ -54,6 +284,7 @@ paths: x-pagination: limitParam: page[size] pageParam: page[number] + pageStart: 1 resultsPath: data post: description: Create a Case @@ -61,6 +292,25 @@ paths: requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + priority: NOT_DEFINED + status_name: Open + title: Security breach investigation + type_id: 3b010bde-09ce-4449-b745-71dd5f861963 + relationships: + assignee: + data: + id: 00000000-0000-0000-0000-000000000000 + type: user + project: + data: + id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: project + type: case schema: $ref: '#/components/schemas/CaseCreateRequest' description: Case payload @@ -69,6 +319,24 @@ paths: '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: $ref: '#/components/schemas/CaseResponse' description: CREATED @@ -90,16 +358,46 @@ paths: summary: Create a case tags: - Case Management - /api/v2/cases/projects: - get: - description: Get all projects. - operationId: GetProjects + /api/v2/cases/aggregate: + post: + description: Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics. + operationId: AggregateCases + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + group_by: + groups: + - status + limit: 14 + query_filter: service:case-api + type: aggregate + schema: + $ref: '#/components/schemas/CaseAggregateRequest' + description: Case aggregate request payload. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + groups: + - group: OPEN + value: + - 42 + total: 100 + id: agg-result-001 + type: aggregate schema: - $ref: '#/components/schemas/ProjectsResponse' + $ref: '#/components/schemas/CaseAggregateResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -116,26 +414,35 @@ paths: appKeyAuth: [] - AuthZ: - cases_read - summary: Get all projects + summary: Aggregate cases tags: - Case Management + /api/v2/cases/bulk: post: - description: Create a project. - operationId: CreateProject + description: Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body. + operationId: BulkUpdateCases requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + case_ids: + - case-id-1 + - case-id-2 + payload: + priority: P1 + type: priority + type: bulk schema: - $ref: '#/components/schemas/ProjectCreateRequest' - description: Project payload + $ref: '#/components/schemas/CaseBulkUpdateRequest' + description: Case bulk update request payload. required: true responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectResponse' - description: CREATED + '200': + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -151,47 +458,52 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Create a project - tags: - - Case Management - /api/v2/cases/projects/{project_id}: - delete: - description: Remove a project using the project's `id`. - operationId: DeleteProject - parameters: - - $ref: '#/components/parameters/ProjectIDPathParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Remove a project + summary: Bulk update cases tags: - Case Management + /api/v2/cases/count: get: - description: Get the details of a project by `project_id`. - operationId: GetProject + description: Returns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope. + operationId: CountCases parameters: - - $ref: '#/components/parameters/ProjectIDPathParameter' + - description: Filter query for cases. + in: query + name: query_filter + required: false + schema: + type: string + - description: Comma-separated fields to group by. + example: status,priority + in: query + name: group_bys + required: false + schema: + type: string + - description: Maximum facet values to return. + in: query + name: limit + required: false + schema: + format: int64 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + groups: + - group: status + group_values: + - count: 42 + value: OPEN + id: count-result-001 + type: count schema: - $ref: '#/components/schemas/ProjectResponse' + $ref: '#/components/schemas/CaseCountResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -208,21 +520,53 @@ paths: appKeyAuth: [] - AuthZ: - cases_read - summary: Get the details of a project + summary: Count cases tags: - Case Management - /api/v2/cases/{case_id}: + /api/v2/cases/link: get: - description: Get the details of case by `case_id` - operationId: GetCase + description: Returns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters. + operationId: ListCaseLinks parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' + - description: The entity type to look up links for. Use `CASE` to find links for a specific case. + in: query + name: entity_type + required: true + schema: + example: CASE + type: string + - description: The UUID of the entity to look up links for. + in: query + name: entity_id + required: true + schema: + example: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + type: string + - description: Optional filter to only return links of a specific relationship type (for example, `BLOCKS` or `CAUSES`). + in: query + name: relationship + required: false + schema: + example: BLOCKS + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d + child_entity_type: CASE + parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + parent_entity_type: CASE + relationship: BLOCKS + id: 804cd682-55f6-4541-ab00-b608b282ea7d + type: link schema: - $ref: '#/components/schemas/CaseResponse' + $ref: '#/components/schemas/CaseLinksResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -239,29 +583,49 @@ paths: appKeyAuth: [] - AuthZ: - cases_read - summary: Get the details of a case + summary: List case links tags: - Case Management - /api/v2/cases/{case_id}/archive: post: - description: Archive case - operationId: ArchiveCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' + description: Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified. + operationId: CreateCaseLink requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d + child_entity_type: CASE + parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + parent_entity_type: CASE + relationship: BLOCKS + type: link schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Archive case payload + $ref: '#/components/schemas/CaseLinkCreateRequest' + description: Case link create request. required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + child_entity_id: 4417921d-0866-4a38-822c-6f2a0f65f77d + child_entity_type: CASE + parent_entity_id: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + parent_entity_type: CASE + relationship: BLOCKS + id: 804cd682-55f6-4541-ab00-b608b282ea7d + type: link schema: - $ref: '#/components/schemas/CaseResponse' - description: OK + $ref: '#/components/schemas/CaseLinkResponse' + description: Created '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -277,30 +641,19 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Archive case + summary: Create a case link tags: - Case Management - /api/v2/cases/{case_id}/assign: - post: - description: Assign case to a user - operationId: AssignCase + /api/v2/cases/link/{link_id}: + delete: + description: Deletes an existing link between cases by link ID. + operationId: DeleteCaseLink parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseAssignRequest' - description: Assign case payload - required: true + - $ref: '#/components/parameters/LinkIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': + '204': + description: No Content + '400': $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' @@ -315,28 +668,28 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Assign case + summary: Delete a case link tags: - Case Management - /api/v2/cases/{case_id}/attributes: - post: - description: Update case attributes - operationId: UpdateAttributes - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdateAttributesRequest' - description: Case attributes update payload - required: true + /api/v2/cases/projects: + get: + description: Get all projects. + operationId: GetProjects responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000002 + type: project schema: - $ref: '#/components/schemas/CaseResponse' + $ref: '#/components/schemas/ProjectsResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -352,30 +705,44 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cases_write - summary: Update case attributes + - cases_read + summary: Get all projects tags: - Case Management - /api/v2/cases/{case_id}/priority: post: - description: Update case priority - operationId: UpdatePriority - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' + description: Create a project. + operationId: CreateProject requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + type: project schema: - $ref: '#/components/schemas/CaseUpdatePriorityRequest' - description: Case priority update payload + $ref: '#/components/schemas/ProjectCreateRequest' + description: Project payload. required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000001 + type: project schema: - $ref: '#/components/schemas/CaseResponse' - description: OK + $ref: '#/components/schemas/ProjectResponse' + description: CREATED '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -391,28 +758,25 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Update case priority + summary: Create a project tags: - Case Management - /api/v2/cases/{case_id}/status: - post: - description: Update case status - operationId: UpdateStatus - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdateStatusRequest' - description: Case status update payload - required: true + /api/v2/cases/projects/favorites: + get: + description: Returns the list of case projects that the current authenticated user has marked as favorites. + operationId: ListUserCaseProjectFavorites responses: '200': content: application/json: + examples: + default: + value: + data: + - id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: project_favorite schema: - $ref: '#/components/schemas/CaseResponse' + $ref: '#/components/schemas/ProjectFavoritesResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -424,33 +788,61 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_read + summary: List project favorites + tags: + - Case Management + /api/v2/cases/projects/{project_id}: + delete: + description: Remove a project using the project's `id`. + operationId: DeleteProject + parameters: + - $ref: '#/components/parameters/ProjectIDPathParameter' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: API error response + '429': + $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - cases_write - summary: Update case status + summary: Remove a project tags: - Case Management - /api/v2/cases/{case_id}/unarchive: - post: - description: Unarchive case - operationId: UnarchiveCase + get: + description: Get the details of a project by `project_id`. + operationId: GetProject parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Unarchive case payload - required: true + - $ref: '#/components/parameters/ProjectIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000003 + type: project schema: - $ref: '#/components/schemas/CaseResponse' + $ref: '#/components/schemas/ProjectResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -466,29 +858,42 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - cases_write - summary: Unarchive case + - cases_read + summary: Get the details of a project tags: - Case Management - /api/v2/cases/{case_id}/unassign: - post: - description: Unassign case - operationId: UnassignCase + patch: + description: Update a project. + operationId: UpdateProject parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/ProjectIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + type: project schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Unassign case payload + $ref: '#/components/schemas/ProjectUpdateRequest' + description: Project payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + key: SEC + name: Security Investigation + id: 00000000-0000-0000-0000-000000000004 + type: project schema: - $ref: '#/components/schemas/CaseResponse' + $ref: '#/components/schemas/ProjectResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -505,338 +910,302 @@ paths: appKeyAuth: [] - AuthZ: - cases_write - summary: Unassign case + summary: Update a project tags: - Case Management - /api/v2/downtime: - get: - description: Get all scheduled downtimes. - operationId: ListDowntimes + /api/v2/cases/projects/{project_id}/favorites: + delete: + description: Removes a case project from the current user's favorites list. + operationId: UnfavoriteCaseProject parameters: - - description: Only return downtimes that are active when the request is made. - in: query - name: current_only - required: false - schema: - type: boolean - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - - paths are `created_by` and `monitor`. - in: query - name: include - required: false - schema: - example: created_by,monitor - type: string - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of downtimes in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 30 - format: int64 - type: integer + - $ref: '#/components/parameters/ProjectIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListDowntimesResponse' - description: OK + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - monitors_downtime - summary: Get all downtimes + - cases_write + summary: Unfavorite a project tags: - - Downtimes - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - monitors_downtime + - Case Management post: - description: Schedule a downtime. - operationId: CreateDowntime - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeCreateRequest' - description: Schedule a downtime request body. - required: true + description: Marks a case project as a favorite for the current authenticated user. + operationId: FavoriteCaseProject + parameters: + - $ref: '#/components/parameters/ProjectIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK + '204': + description: No Content '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - monitors_downtime - summary: Schedule a downtime + - cases_write + summary: Favorite a project tags: - - Downtimes - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/downtime/{downtime_id}: - delete: - description: >- - Cancel a downtime. - - - **Note**: Downtimes canceled through the API are no longer active, but - are retained for approximately two days before being permanently - removed. The downtime may still appear in search results until it is - permanently removed. - operationId: CancelDowntime + - Case Management + /api/v2/cases/projects/{project_id}/notification_rules: + get: + description: Get all notification rules for a project. + operationId: GetProjectNotificationRules parameters: - - description: ID of the downtime to cancel. + - description: Project UUID + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 in: path - name: downtime_id + name: project_id required: true schema: - example: 00000000-0000-1234-0000-000000000000 type: string responses: - '204': - description: OK - '403': + '200': content: application/json: + examples: + default: + value: + data: + - attributes: + is_enabled: true + query: '' + recipients: + - data: + email: test@example.com + type: EMAIL + triggers: + - data: {} + type: CASE_CREATED + id: 00000000-0000-0000-0000-000000000001 + type: notification_rule schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/CaseNotificationRulesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Downtime not found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - monitors_downtime - summary: Cancel a downtime + - cases_read + summary: Get notification rules tags: - - Downtimes - x-permission: - operator: OR - permissions: - - monitors_downtime - get: - description: Get downtime detail by `downtime_id`. - operationId: GetDowntime + - Case Management + post: + description: Create a notification rule for a project. + operationId: CreateProjectNotificationRule parameters: - - description: ID of the downtime to fetch. + - description: Project UUID + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 in: path - name: downtime_id + name: project_id required: true schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - - paths are `created_by` and `monitor`. - in: query - name: include - required: false - schema: - example: created_by,monitor type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + recipients: + - type: EMAIL + triggers: + - type: CASE_CREATED + type: notification_rule + schema: + $ref: '#/components/schemas/CaseNotificationRuleCreateRequest' + description: Notification rule payload + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + is_enabled: true + query: '' + recipients: + - data: + email: test@example.com + type: EMAIL + triggers: + - data: {} + type: CASE_CREATED + id: 00000000-0000-0000-0000-000000000002 + type: notification_rule schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK + $ref: '#/components/schemas/CaseNotificationRuleResponse' + description: CREATED '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - monitors_downtime - summary: Get a downtime + - cases_write + summary: Create a notification rule tags: - - Downtimes - x-permission: - operator: OR - permissions: - - monitors_downtime - patch: - description: Update a downtime by `downtime_id`. - operationId: UpdateDowntime + - Case Management + /api/v2/cases/projects/{project_id}/notification_rules/{notification_rule_id}: + delete: + description: Delete a notification rule using the notification rule's `id`. + operationId: DeleteProjectNotificationRule parameters: - - description: ID of the downtime to update. + - description: Project UUID + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 in: path - name: downtime_id + name: project_id required: true schema: - example: 00e000000-0000-1234-0000-000000000000 type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeUpdateRequest' - description: Update a downtime request body. - required: true + - $ref: '#/components/parameters/NotificationRuleIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + '204': + description: No Content '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' '404': content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' - description: Downtime not found + description: API error response '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - monitors_downtime - summary: Update a downtime + - cases_write + summary: Delete a notification rule tags: - - Downtimes - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/error-tracking/issues/search: - post: - description: >- - Search issues endpoint allows you to programmatically search for issues - within your organization. This endpoint returns a list of issues that - match a given search query, following the event search syntax. The - search results are limited to a maximum of 100 issues per request. - operationId: SearchIssues + - Case Management + put: + description: Update a notification rule. + operationId: UpdateProjectNotificationRule parameters: - - $ref: '#/components/parameters/SearchIssuesIncludeQueryParameter' + - description: Project UUID + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string + - $ref: '#/components/parameters/NotificationRuleIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + recipients: + - type: EMAIL + triggers: + - type: CASE_CREATED + type: notification_rule schema: - $ref: '#/components/schemas/IssuesSearchRequest' - description: Search issues request payload. + $ref: '#/components/schemas/CaseNotificationRuleUpdateRequest' + description: Notification rule payload required: true responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssuesSearchResponse' - description: OK + '204': + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - error_tracking_read - summary: Search error tracking issues + - cases_write + summary: Update a notification rule tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}: + - Case Management + /api/v2/cases/projects/{project_id}/rules: get: - description: >- - Retrieve the full details for a specific error tracking issue, including - attributes and relationships. - operationId: GetIssue + description: Returns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes. + operationId: ListCaseAutomationRules parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - - $ref: '#/components/parameters/GetIssueIncludeQueryParameter' + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: '2024-01-01T00:00:00.000Z' + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule schema: - $ref: '#/components/schemas/IssueResponse' + $ref: '#/components/schemas/AutomationRulesResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -852,30 +1221,65 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - error_tracking_read - summary: Get the details of an error tracking issue + - cases_read + summary: List automation rules tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}/assignee: - put: - description: Update the assignee of an issue by `issue_id`. - operationId: UpdateIssueAssignee + - Case Management + post: + description: Creates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute. + operationId: CreateCaseAutomationRule parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + type: rule schema: - $ref: '#/components/schemas/IssueUpdateAssigneeRequest' - description: Update issue assignee request payload. + $ref: '#/components/schemas/AutomationRuleCreateRequest' + description: Automation rule payload. required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: '2024-01-01T00:00:00.000Z' + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule schema: - $ref: '#/components/schemas/IssueResponse' - description: OK + $ref: '#/components/schemas/AutomationRuleResponse' + description: Created '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -890,34 +1294,74 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - error_tracking_read - - error_tracking_write - - cases_read - cases_write - summary: Update the assignee of an issue + summary: Create an automation rule tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}/state: - put: - description: >- - Update the state of an issue by `issue_id`. Use this endpoint to move an - issue between states such as `OPEN`, `RESOLVED`, or `IGNORED`. - operationId: UpdateIssueState + - Case Management + /api/v2/cases/projects/{project_id}/rules/{rule_id}: + delete: + description: Permanently deletes an automation rule from a project. + operationId: DeleteCaseAutomationRule parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssueUpdateStateRequest' - description: Update issue state request payload. - required: true + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string + - $ref: '#/components/parameters/RuleIDPathParameter' + responses: + '204': + description: No Content + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Delete an automation rule + tags: + - Case Management + get: + description: Returns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled). + operationId: GetCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string + - $ref: '#/components/parameters/RuleIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: '2024-01-01T00:00:00.000Z' + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule schema: - $ref: '#/components/schemas/IssueResponse' + $ref: '#/components/schemas/AutomationRuleResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -933,285 +1377,173 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - error_tracking_read - - error_tracking_write - summary: Update the state of an issue + - cases_read + summary: Get an automation rule tags: - - Error Tracking - /api/v2/events: - get: - description: >- - List endpoint returns events that match an events search query. - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest events. - operationId: ListEvents + - Case Management + put: + description: Updates the trigger, action, name, or state of an existing automation rule. + operationId: UpdateCaseAutomationRule parameters: - - description: Search query following events syntax. - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events, in milliseconds. - in: query - name: filter[from] - required: false - schema: - type: string - - description: Maximum timestamp for requested events, in milliseconds. - in: query - name: filter[to] - required: false - schema: - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/EventsSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true schema: type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - events_read - summary: Get a list of events - tags: - - Events - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - events_read - post: - description: >- - This endpoint allows you to publish events. - - - **Note:** To utilize this endpoint with our client libraries, please - ensure you are using the latest version released on or after July 1, - 2025. Earlier versions do not support this functionality. - - - ✅ **Only events with the `change` or `alert` category** are in General - Availability. For change events, see [Change - Tracking](https://docs.datadoghq.com/change_tracking) for more details. - - - ❌ For use cases involving other event categories, use the V1 endpoint or - reach out to [support](https://www.datadoghq.com/support/). - - - ❌ Notifications are not yet supported for events sent to this endpoint. - Use the V1 endpoint for notification functionality. - operationId: CreateEvent + - $ref: '#/components/parameters/RuleIDPathParameter' requestBody: content: application/json: examples: - json-request-body: + default: value: data: attributes: - aggregation_key: aggregation_key_123 - attributes: - author: - name: example@datadog.com - type: user - change_metadata: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - resource_link: datadog.com/feature/fallback_payments_test - changed_resource: - name: fallback_payments_test - type: feature_flag - impacted_resources: - - name: payments_api - type: service - new_value: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - prev_value: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - category: change - integration_id: custom-events - message: payment_processed feature flag has been enabled - tags: - - env:api_client_test - timestamp: '2020-01-01T01:30:15.010000Z' - title: payment_processed feature flag updated - type: event + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + type: rule schema: - $ref: '#/components/schemas/EventCreateRequestPayload' - description: Event creation request payload. + $ref: '#/components/schemas/AutomationRuleUpdateRequest' + description: Automation rule payload. required: true responses: - '202': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: '2024-01-01T00:00:00.000Z' + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule schema: - $ref: '#/components/schemas/EventCreateResponsePayload' + $ref: '#/components/schemas/AutomationRuleResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: event-management-intake - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: event-management-intake.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: event-management-intake - description: The subdomain where the API is deployed. - summary: Post an event + - AuthZ: + - cases_write + summary: Update an automation rule tags: - - Events - x-codegen-request-body-name: body - /api/v2/events/search: + - Case Management + /api/v2/cases/projects/{project_id}/rules/{rule_id}/disable: post: - description: >- - List endpoint returns events that match an events search query. - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search. - operationId: SearchEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListRequest' - required: false + description: Disables an automation rule so it no longer triggers on case events. The rule configuration is preserved. + operationId: DisableCaseAutomationRule + parameters: + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string + - $ref: '#/components/parameters/RuleIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: '2024-01-01T00:00:00.000Z' + name: Auto-assign workflow + state: DISABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule schema: - $ref: '#/components/schemas/EventsListResponse' + $ref: '#/components/schemas/AutomationRuleResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search events + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Disable an automation rule tags: - - Events - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - events_read - /api/v2/events/{event_id}: - get: - description: Get the details of an event by `event_id`. - operationId: GetEvent + - Case Management + /api/v2/cases/projects/{project_id}/rules/{rule_id}/enable: + post: + description: Enables a previously disabled automation rule so it triggers on matching case events. + operationId: EnableCaseAutomationRule parameters: - - description: The UID of the event. + - description: The UUID of the project that owns the automation rules. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 in: path - name: event_id + name: project_id required: true schema: type: string + - $ref: '#/components/parameters/RuleIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + action: + data: + handle: workflow-handle-123 + type: EXECUTE_WORKFLOW + created_at: '2024-01-01T00:00:00.000Z' + name: Auto-assign workflow + state: ENABLED + trigger: + type: CASE_CREATED + id: e6773723-fe58-49ff-9975-dff00f14e28d + type: rule schema: - $ref: '#/components/schemas/V2EventResponse' + $ref: '#/components/schemas/AutomationRuleResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1227,76 +1559,75 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - events_read - summary: Get an event + - cases_write + summary: Enable an automation rule tags: - - Events - x-permission: - operator: OR - permissions: - - events_read - /api/v2/incidents: + - Case Management + /api/v2/cases/types: get: - description: Get all incidents for the user's organization. - operationId: ListIncidents - parameters: - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' + description: Get all case types + operationId: GetAllCaseTypes responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + description: Investigations done in case management + emoji: 🕵🏻‍♂️ + name: Investigation + id: 00000000-0000-0000-0000-000000000001 + type: case_type schema: - $ref: '#/components/schemas/IncidentsResponse' + $ref: '#/components/schemas/CaseTypesResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of incidents + summary: Get all case types tags: - - Incidents - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Case Management Type post: - description: Create an incident. - operationId: CreateIncident + description: Create a Case Type + operationId: CreateCaseType requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: 🕵🏻‍♂️ + name: Investigation + type: case_type schema: - $ref: '#/components/schemas/IncidentCreateRequest' - description: Incident payload. + $ref: '#/components/schemas/CaseTypeCreateRequest' + description: Case type payload required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: 🕵🏻‍♂️ + name: Investigation + id: 00000000-0000-0000-0000-000000000001 + type: case_type schema: - $ref: '#/components/schemas/IncidentResponse' + $ref: '#/components/schemas/CaseTypeResponse' description: CREATED '400': $ref: '#/components/responses/BadRequestResponse' @@ -1304,87 +1635,100 @@ paths: $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident + summary: Create a case type tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-rules: + - Case Management Type + /api/v2/cases/types/custom_attributes: get: - description: >- - Lists all notification rules for the organization. Optionally filter by - incident type. - operationId: ListIncidentNotificationRules - parameters: - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter + description: Get all custom attributes + operationId: GetAllCustomAttributes responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + case_type_id: 00000000-0000-0000-0000-000000000002 + description: AWS Region, must be a valid region supported by AWS + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000001 + type: custom_attribute schema: - $ref: '#/components/schemas/IncidentNotificationRuleArray' + $ref: '#/components/schemas/CustomAttributeConfigsResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_read - summary: List incident notification rules + summary: Get all custom attributes tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Creates a new notification rule. - operationId: CreateIncidentNotificationRule + - Case Management Attribute + /api/v2/cases/types/{case_type_id}: + delete: + description: Delete a case type + operationId: DeleteCaseType + parameters: + - $ref: '#/components/parameters/CaseTypeIDPathParameter' + responses: + '204': + description: No Content + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a case type + tags: + - Case Management Type + put: + description: Updates the name, emoji, or description of an existing case type. + operationId: UpdateCaseType + parameters: + - $ref: '#/components/parameters/CaseTypeIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: 🕵🏻‍♂️ + name: Investigation + type: case_type schema: - $ref: '#/components/schemas/CreateIncidentNotificationRuleRequest' + $ref: '#/components/schemas/CaseTypeUpdateRequest' + description: Case type payload. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + description: Investigations done in case management + emoji: 🕵🏻‍♂️ + name: Investigation + id: 00000000-0000-0000-0000-000000000001 + type: case_type schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: Created + $ref: '#/components/schemas/CaseTypeResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -1399,72 +1743,90 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_notification_settings_write - summary: Create an incident notification rule + - cases_shared_settings_write + summary: Update a case type tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-rules/{id}: - delete: - description: Deletes a notification rule by its ID. - operationId: DeleteIncidentNotificationRule + - Case Management Type + /api/v2/cases/types/{case_type_id}/custom_attributes: + get: + description: Get all custom attribute config of case type + operationId: GetAllCustomAttributeConfigsByCaseType parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter + - $ref: '#/components/parameters/CaseTypeIDPathParameter' responses: - '204': - description: No Content + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + case_type_id: 00000000-0000-0000-0000-000000000004 + description: AWS Region, must be a valid region supported by AWS + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000003 + type: custom_attribute + schema: + $ref: '#/components/schemas/CustomAttributeConfigsResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Delete an incident notification rule + summary: Get all custom attributes config of case type tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Retrieves a specific notification rule by its ID. - operationId: GetIncidentNotificationRule + - Case Management Attribute + post: + description: Create custom attribute config for a case type + operationId: CreateCustomAttributeConfig parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter + - $ref: '#/components/parameters/CaseTypeIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: AWS Region, must be a valid region supported by AWS + display_name: AWS Region + is_multi: true + key: aws_region + type: NUMBER + type: custom_attribute + schema: + $ref: '#/components/schemas/CustomAttributeConfigCreateRequest' + description: Custom attribute config payload + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + case_type_id: 00000000-0000-0000-0000-000000000006 + description: AWS Region, must be a valid region supported by AWS + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000005 + type: custom_attribute schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: OK + $ref: '#/components/schemas/CustomAttributeConfigResponse' + description: CREATED '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -1475,42 +1837,70 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_read - summary: Get an incident notification rule + summary: Create custom attribute config for a case type tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Case Management Attribute + /api/v2/cases/types/{case_type_id}/custom_attributes/{custom_attribute_id}: + delete: + description: Delete custom attribute config + operationId: DeleteCustomAttributeConfig + parameters: + - $ref: '#/components/parameters/CaseTypeIDPathParameter' + - $ref: '#/components/parameters/CaseCustomAttributeIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete custom attributes config + tags: + - Case Management Attribute put: - description: Updates an existing notification rule with a complete replacement. - operationId: UpdateIncidentNotificationRule + description: Updates the display name, description, type, or options of an existing custom attribute configuration for a case type. + operationId: UpdateCustomAttributeConfig parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter + - $ref: '#/components/parameters/CaseTypeIDPathParameter' + - $ref: '#/components/parameters/CaseCustomAttributeIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + description: Updated description. + display_name: AWS Region + type: custom_attribute schema: - $ref: '#/components/schemas/PutIncidentNotificationRuleRequest' + $ref: '#/components/schemas/CustomAttributeConfigUpdateRequest' + description: Custom attribute config payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + case_type_id: 00000000-0000-0000-0000-000000000006 + description: Updated description. + display_name: AWS Region + is_multi: true + key: aws_region + type: TEXT + id: 00000000-0000-0000-0000-000000000005 + type: custom_attribute schema: - $ref: '#/components/schemas/IncidentNotificationRule' + $ref: '#/components/schemas/CustomAttributeConfigResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1526,35 +1916,38 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_notification_settings_write - summary: Update an incident notification rule + - cases_shared_settings_write + summary: Update custom attribute config tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-templates: + - Case Management Attribute + /api/v2/cases/views: get: - description: Lists all notification templates. Optionally filter by incident type. - operationId: ListIncidentNotificationTemplates + description: Returns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases. + operationId: ListCaseViews parameters: - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncidentTypeFilterQueryParameter - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter + - description: Filter views by project identifier. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: query + name: project_id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00.000Z' + name: Open bugs + query: status:open type:bug + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view schema: - $ref: '#/components/schemas/IncidentNotificationTemplateArray' + $ref: '#/components/schemas/CaseViewsResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1570,34 +1963,45 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_read - summary: List incident notification templates + - cases_read + summary: List case views tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Case Management post: - description: Creates a new notification template. - operationId: CreateIncidentNotificationTemplate + description: Creates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view. + operationId: CreateCaseView requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: Open bugs + project_id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + query: status:open type:bug + type: view schema: - $ref: '#/components/schemas/CreateIncidentNotificationTemplateRequest' + $ref: '#/components/schemas/CaseViewCreateRequest' + description: Case view payload. required: true responses: '201': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + name: Open bugs + query: status:open type:bug + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' + $ref: '#/components/schemas/CaseViewResponse' description: Created '400': $ref: '#/components/responses/BadRequestResponse' @@ -1613,28 +2017,16 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_notification_settings_write - summary: Create incident notification template + - cases_write + summary: Create a case view tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-templates/{id}: + - Case Management + /api/v2/cases/views/{view_id}: delete: - description: Deletes a notification template by its ID. - operationId: DeleteIncidentNotificationTemplate + description: Permanently deletes a saved case view. + operationId: DeleteCaseView parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter + - $ref: '#/components/parameters/ViewIDPathParameter' responses: '204': description: No Content @@ -1652,32 +2044,31 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_notification_settings_write - summary: Delete a notification template + - cases_write + summary: Delete a case view tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Case Management get: - description: Retrieves a specific notification template by its ID. - operationId: GetIncidentNotificationTemplate + description: Returns a single saved case view identified by its UUID, including its query, associated project, and timestamps. + operationId: GetCaseView parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter + - $ref: '#/components/parameters/ViewIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + name: Open bugs + query: status:open type:bug + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' + $ref: '#/components/schemas/CaseViewResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1693,40 +2084,45 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_read - summary: Get incident notification template + - cases_read + summary: Get a case view tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_settings_read - - incident_write - - incident_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Updates an existing notification template's attributes. - operationId: UpdateIncidentNotificationTemplate + - Case Management + put: + description: Updates the name, query, or notification rule of an existing case view. + operationId: UpdateCaseView parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter + - $ref: '#/components/parameters/ViewIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + name: Updated view name + type: view schema: - $ref: '#/components/schemas/PatchIncidentNotificationTemplateRequest' + $ref: '#/components/schemas/CaseViewUpdateRequest' + description: Case view payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + name: Updated view name + query: status:open type:bug + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: view schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' + $ref: '#/components/schemas/CaseViewResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1742,32 +2138,40 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_notification_settings_write - summary: Update incident notification template + - cases_write + summary: Update a case view tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/types: + - Case Management + /api/v2/cases/{case_id}: get: - description: Get all incident types. - operationId: ListIncidentTypes + description: Get the details of case by `case_id` + operationId: GetCase parameters: - - $ref: '#/components/parameters/IncidentTypeIncludeDeletedParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentTypeListResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1775,42 +2179,61 @@ paths: $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get a list of incident types + - cases_read + summary: Get the details of a case tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Case Management + /api/v2/cases/{case_id}/archive: post: - description: Create an incident type. - operationId: CreateIncidentType + description: Archive case + operationId: ArchiveCase + parameters: + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + type: case schema: - $ref: '#/components/schemas/IncidentTypeCreateRequest' - description: Incident type payload. + $ref: '#/components/schemas/CaseEmptyRequest' + description: Archive case payload required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: CREATED + $ref: '#/components/schemas/CaseResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -1825,28 +2248,54 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Create an incident type + - cases_write + summary: Archive case tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/types/{incident_type_id}: - delete: - description: Delete an incident type. - operationId: DeleteIncidentType + - Case Management + /api/v2/cases/{case_id}/assign: + post: + description: Assign case to a user + operationId: AssignCase parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignee_id: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 + type: case + schema: + $ref: '#/components/schemas/CaseAssignRequest' + description: Assign case payload + required: true responses: - '204': + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1862,31 +2311,61 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Delete an incident type + - cases_write + summary: Assign case tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get incident type details. - operationId: GetIncidentType + - Case Management + /api/v2/cases/{case_id}/attributes: + post: + description: Update case attributes + operationId: UpdateAttributes parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: + env: + - prod + service: + - web-store + - web-api + team: + - engineering + type: case + schema: + $ref: '#/components/schemas/CaseUpdateAttributesRequest' + description: Case attributes update payload + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentTypeResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1902,37 +2381,47 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get incident type details + - cases_write + summary: Update case attributes tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Update an incident type. - operationId: UpdateIncidentType + - Case Management + /api/v2/cases/{case_id}/comment: + post: + description: Comment case + operationId: CommentCase parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + comment: This is my comment ! + type: case schema: - $ref: '#/components/schemas/IncidentTypePatchRequest' - description: Incident type payload. + $ref: '#/components/schemas/CaseCommentRequest' + description: Case comment payload required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + cell_content: + message: This is my comment ! + created_at: '2024-01-01T00:00:00+00:00' + type: COMMENT + id: 00000000-0000-0000-0000-000000000001 + type: timeline_cell schema: - $ref: '#/components/schemas/IncidentTypeResponse' + $ref: '#/components/schemas/TimelineResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -1944,41 +2433,19 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an incident type + summary: Comment case tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/search: - get: - description: Search for incidents matching a certain query. - operationId: SearchIncidents + - Case Management + /api/v2/cases/{case_id}/comment/{cell_id}: + delete: + description: Delete case comment + operationId: DeleteCaseComment parameters: - - $ref: '#/components/parameters/IncidentSearchIncludeQueryParameter' - - $ref: '#/components/parameters/IncidentSearchQueryQueryParameter' - - $ref: '#/components/parameters/IncidentSearchSortQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' + - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/CellIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentSearchResponse' - description: OK + '204': + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -1989,35 +2456,31 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Search for incidents + summary: Delete case comment tags: - - Incidents - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data.attributes.incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}: - delete: - description: Deletes an existing incident from the users organization. - operationId: DeleteIncident + - Case Management + put: + description: Updates the text content of an existing comment on a case timeline. The comment is identified by its cell ID. + operationId: UpdateCaseComment parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/CellIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + comment: Updated comment text + type: case + schema: + $ref: '#/components/schemas/CaseUpdateCommentRequest' + description: Case update comment payload. + required: true responses: - '204': + '200': description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2033,34 +2496,42 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Delete an existing incident + - cases_write + summary: Update case comment tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get the details of an incident by `incident_id`. - operationId: GetIncident + - Case Management + /api/v2/cases/{case_id}/custom_attributes/{custom_attribute_key}: + delete: + description: Delete custom attribute from case + operationId: DeleteCaseCustomAttribute parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/CaseCustomAttributeKeyPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentResponse' + $ref: '#/components/schemas/CaseResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': @@ -2073,40 +2544,56 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get the details of an incident + - cases_write + summary: Delete custom attribute from case tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: >- - Updates an incident. Provide only the attributes that should be updated - as this request is a partial update. - operationId: UpdateIncident + - Case Management + post: + description: Update case custom attribute + operationId: UpdateCaseCustomAttribute parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/CaseCustomAttributeKeyPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + is_multi: false + type: NUMBER + value: 42 + type: case schema: - $ref: '#/components/schemas/IncidentUpdateRequest' - description: Incident Payload. + $ref: '#/components/schemas/CaseUpdateCustomAttributeRequest' + description: Update case custom attribute payload required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2122,34 +2609,54 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Update an existing incident + - cases_write + summary: Update case custom attribute tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/attachments: - get: - description: Get all attachments for a given incident. - operationId: ListIncidentAttachments + - Case Management + /api/v2/cases/{case_id}/description: + post: + description: Update case description + operationId: UpdateCaseDescription parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentAttachmentIncludeQueryParameter' - - $ref: '#/components/parameters/IncidentAttachmentFilterQueryParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Seeing some weird memory increase... We shouldn't ignore this + type: case + schema: + $ref: '#/components/schemas/CaseUpdateDescriptionRequest' + description: Case description update payload + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentAttachmentsResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2161,39 +2668,58 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of attachments + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case description tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: >- - The bulk update endpoint for creating, updating, and deleting - attachments for a given incident. - operationId: UpdateIncidentAttachments + - Case Management + /api/v2/cases/{case_id}/due_date: + post: + description: Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved. + operationId: UpdateCaseDueDate parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentAttachmentIncludeQueryParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + due_date: '2026-12-31' + type: case schema: - $ref: '#/components/schemas/IncidentAttachmentUpdateRequest' - description: Incident Attachment Payload. + $ref: '#/components/schemas/CaseUpdateDueDateRequest' + description: Case due date update payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentAttachmentUpdateResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2205,115 +2731,221 @@ paths: $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create, update, and delete incident attachments + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - cases_write + summary: Update case due date tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/integrations: - get: - description: Get all integration metadata for an incident. - operationId: ListIncidentIntegrations + - Case Management + /api/v2/cases/{case_id}/insights: + delete: + description: Removes one or more previously added insights from a case by specifying their type and resource identifier in the request body. + operationId: RemoveCaseInsights parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + insights: + - ref: /monitors/12345?q=total + resource_id: '12345' + type: SECURITY_SIGNAL + type: case + schema: + $ref: '#/components/schemas/CaseInsightsRequest' + description: Case insights request. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataListResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get a list of an incident's integration metadata + - cases_write + summary: Remove insights from a case tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Create an incident integration metadata. - operationId: CreateIncidentIntegration + - Case Management + put: + description: Adds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see `CaseInsightType` for allowed values), a ref (URL path to the resource), and a resource_id. + operationId: AddCaseInsights parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + insights: + - ref: /monitors/12345?q=total + resource_id: '12345' + type: SECURITY_SIGNAL + type: case schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataCreateRequest' - description: Incident integration metadata payload. + $ref: '#/components/schemas/CaseInsightsRequest' + description: Case insights request. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: CREATED + $ref: '#/components/schemas/CaseResponse' + description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Create an incident integration metadata + - cases_write + summary: Add insights to a case tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id}: - delete: - description: Delete an incident integration metadata. - operationId: DeleteIncidentIntegration + - Case Management + /api/v2/cases/{case_id}/priority: + post: + description: Update case priority + operationId: UpdatePriority parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + priority: NOT_DEFINED + type: case + schema: + $ref: '#/components/schemas/CaseUpdatePriorityRequest' + description: Case priority update payload + required: true responses: - '204': + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2329,367 +2961,540 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Delete an incident integration metadata + - cases_write + summary: Update case priority tags: - - Incidents - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get incident integration metadata details. - operationId: GetIncidentIntegration + - Case Management + /api/v2/cases/{case_id}/relationships/incidents: + post: + description: Link an incident to a case + operationId: LinkIncident parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incidents + schema: + $ref: '#/components/schemas/RelationshipToIncidentRequest' + description: Incident link request + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + key: CASEM-4523 + priority: NOT_DEFINED + status: OPEN + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000002 + type: case schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: OK + $ref: '#/components/schemas/CaseResponse' + description: Created '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get incident integration metadata details + - cases_write + summary: Link incident to case tags: - - Incidents - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Update an existing incident integration metadata. - operationId: UpdateIncidentIntegration + - Case Management + /api/v2/cases/{case_id}/relationships/jira_issues: + delete: + description: Remove the link between a Jira issue and a case + operationId: UnlinkJiraIssue parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataPatchRequest' - description: Incident integration metadata payload. - required: true + - $ref: '#/components/parameters/CaseIDPathParameter' responses: - '200': + '204': + description: No Content + '400': content: application/json: schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Update an existing incident integration metadata + - cases_write + summary: Remove Jira issue link from case tags: - - Incidents - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/todos: - get: - description: Get all todos for an incident. - operationId: ListIncidentTodos + - Case Management + patch: + description: Link an existing Jira issue to a case + operationId: LinkJiraIssueToCase parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + jira_issue_url: https://jira.example.com/browse/PROJ-123 + type: issues + schema: + $ref: '#/components/schemas/JiraIssueLinkRequest' + description: Jira issue link request + required: true responses: - '200': + '204': + description: No Content + '400': content: application/json: schema: - $ref: '#/components/schemas/IncidentTodoListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get a list of an incident's todos + - cases_write + summary: Link existing Jira issue to case tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). + - Case Management post: - description: Create an incident todo. - operationId: CreateIncidentTodo + description: Create a new Jira issue and link it to a case + operationId: CreateCaseJiraIssue parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + fields: {} + issue_type_id: '10001' + jira_account_id: '1234' + project_id: '5678' + type: issues schema: - $ref: '#/components/schemas/IncidentTodoCreateRequest' - description: Incident todo payload. + $ref: '#/components/schemas/JiraIssueCreateRequest' + description: Jira issue creation request required: true responses: - '201': + '202': + description: Accepted + '400': content: application/json: schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Create an incident todo + - cases_write + summary: Create Jira issue for case tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/todos/{todo_id}: - delete: - description: Delete an incident todo. - operationId: DeleteIncidentTodo + - Case Management + /api/v2/cases/{case_id}/relationships/notebook: + post: + description: Create a new investigation notebook and link it to a case + operationId: CreateCaseNotebook parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + type: notebook + schema: + $ref: '#/components/schemas/NotebookCreateRequest' + description: Notebook creation request + required: true responses: '204': - description: OK + description: No Content '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Delete an incident todo + - cases_write + summary: Create investigation notebook for case tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get incident todo details. - operationId: GetIncidentTodo + - Case Management + /api/v2/cases/{case_id}/relationships/project: + patch: + description: Update the project associated with a case + operationId: MoveCaseToProject parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + id: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: project + schema: + $ref: '#/components/schemas/ProjectRelationship' + description: Project update request + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + key: CASEM-4523 + priority: NOT_DEFINED + status: OPEN + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + type: case schema: - $ref: '#/components/schemas/IncidentTodoResponse' + $ref: '#/components/schemas/CaseResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get incident todo details + - cases_write + summary: Update case project tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Update an incident todo. - operationId: UpdateIncidentTodo + - Case Management + /api/v2/cases/{case_id}/relationships/servicenow_tickets: + post: + description: Create a new ServiceNow incident ticket and link it to a case + operationId: CreateCaseServiceNowTicket parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + assignment_group: IT Support + instance_name: my-instance + type: tickets schema: - $ref: '#/components/schemas/IncidentTodoPatchRequest' - description: Incident todo payload. + $ref: '#/components/schemas/ServiceNowTicketCreateRequest' + description: ServiceNow ticket creation request required: true responses: - '200': + '202': + description: Accepted + '400': content: application/json: schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_write - summary: Update an incident todo + - cases_write + summary: Create ServiceNow ticket for case tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/on-call/escalation-policies: + - Case Management + /api/v2/cases/{case_id}/resolved_reason: post: - description: Create a new On-Call escalation policy - operationId: CreateOnCallEscalationPolicy + description: Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases. + operationId: UpdateCaseResolvedReason parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`. - in: query - name: include - schema: - type: string + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + security_resolved_reason: FALSE_POSITIVE + type: case schema: - $ref: '#/components/schemas/EscalationPolicyCreateRequest' + $ref: '#/components/schemas/CaseUpdateResolvedReasonRequest' + description: Case resolved reason update payload. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/EscalationPolicy' - description: Created + $ref: '#/components/schemas/CaseResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Create On-Call escalation policy + - AuthZ: + - cases_write + summary: Update case resolved reason tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/escalation-policies/{policy_id}: - delete: - description: Delete an On-Call escalation policy - operationId: DeleteOnCallEscalationPolicy + - Case Management + /api/v2/cases/{case_id}/status: + post: + description: Update case status + operationId: UpdateStatus parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string + - $ref: '#/components/parameters/CaseIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + status: OPEN + status_name: Open + type: case + schema: + $ref: '#/components/schemas/CaseUpdateStatusRequest' + description: Case status update payload + required: true responses: - '204': - description: No Content + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case + schema: + $ref: '#/components/schemas/CaseResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': @@ -2701,38 +3506,57 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Delete On-Call escalation policy + - AuthZ: + - cases_write + summary: Update case status tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write + - Case Management + /api/v2/cases/{case_id}/timelines: get: - description: Get an On-Call escalation policy - operationId: GetOnCallEscalationPolicy + description: Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order. + operationId: ListCaseTimeline parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true + - $ref: '#/components/parameters/CaseIDPathParameter' + - description: Number of timeline cells to return per page. + in: query + name: page[size] + required: false schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`. + default: 100 + format: int64 + type: integer + - description: Zero-based page number for pagination. in: query - name: include + name: page[number] + required: false schema: - type: string + default: 0 + format: int64 + type: integer + - description: If `true`, returns timeline cells in chronological order (oldest first). Defaults to `false` (newest first). + in: query + name: sort[ascending] + required: false + schema: + default: false + type: boolean responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + cell_content: + message: This is a comment + created_at: '2024-01-01T00:00:00+00:00' + type: COMMENT + id: 00000000-0000-0000-0000-000000000001 + type: timeline_cell schema: - $ref: '#/components/schemas/EscalationPolicy' + $ref: '#/components/schemas/TimelineResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2747,44 +3571,55 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call escalation policy + - AuthZ: + - cases_read + summary: Get case timeline tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Update an On-Call escalation policy - operationId: UpdateOnCallEscalationPolicy + - Case Management + /api/v2/cases/{case_id}/title: + post: + description: Update case title + operationId: UpdateCaseTitle parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`. - in: query - name: include - schema: - type: string + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + title: Memory leak investigation on API + type: case schema: - $ref: '#/components/schemas/EscalationPolicyUpdateRequest' + $ref: '#/components/schemas/CaseUpdateTitleRequest' + description: Case title update payload required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/EscalationPolicy' + $ref: '#/components/schemas/CaseResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -2799,299 +3634,121 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Update On-Call escalation policy + - AuthZ: + - cases_write + summary: Update case title tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/pages: + - Case Management + /api/v2/cases/{case_id}/unarchive: post: - description: | - Trigger a new On-Call Page. - operationId: CreateOnCallPage + description: Unarchive case + operationId: UnarchiveCase + parameters: + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + type: case schema: - $ref: '#/components/schemas/CreatePageRequest' + $ref: '#/components/schemas/CaseEmptyRequest' + description: Unarchive case payload required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/CreatePageResponse' - description: OK. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Create On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/acknowledge: - post: - description: | - Acknowledges an On-Call Page. - operationId: AcknowledgeOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Acknowledge On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/escalate: - post: - description: | - Escalates an On-Call Page. - operationId: EscalateOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Escalate On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/resolve: - post: - description: | - Resolves an On-Call Page. - operationId: ResolveOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. + $ref: '#/components/schemas/CaseResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Resolve On-Call Page + - AuthZ: + - cases_write + summary: Unarchive case tags: - - On-Call Paging - /api/v2/on-call/schedules: + - Case Management + /api/v2/cases/{case_id}/unassign: post: - description: Create a new On-Call schedule - operationId: CreateOnCallSchedule + description: Unassign case + operationId: UnassignCase parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, - `layers.members.user`. - in: query - name: include - schema: - type: string + - $ref: '#/components/parameters/CaseIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + type: case schema: - $ref: '#/components/schemas/ScheduleCreateRequest' + $ref: '#/components/schemas/CaseEmptyRequest' + description: Unassign case payload required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: CASEM-1234 + priority: NOT_DEFINED + status: OPEN + status_name: Open + title: Memory leak investigation on API + id: 00000000-0000-0000-0000-000000000001 + relationships: + project: + data: + id: 00000000-0000-0000-0000-000000000002 + type: project + type: case schema: - $ref: '#/components/schemas/Schedule' - description: Created + $ref: '#/components/schemas/CaseResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Create On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/schedules/{schedule_id}: - delete: - description: Delete an On-Call schedule - operationId: DeleteOnCallSchedule - parameters: - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - responses: - '204': - description: No Content - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' '404': $ref: '#/components/responses/NotFoundResponse' '429': @@ -3099,40 +3756,37 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Delete On-Call schedule + - AuthZ: + - cases_write + summary: Unassign case tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write + - Case Management + /api/v2/cases/{case_id}/watchers: get: - description: Get an On-Call schedule - operationId: GetOnCallSchedule + description: Returns the list of users who are watching a case. Watchers receive notifications about updates to the case. + operationId: ListCaseWatchers parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, - `layers.members.user`. - in: query - name: include - schema: - type: string - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string + - $ref: '#/components/parameters/CaseIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + - id: 8146583c-0b5f-11ec-abf8-da7ad0900001 + relationships: + user: + data: + id: 8146583c-0b5f-11ec-abf8-da7ad0900001 + type: user + type: watcher schema: - $ref: '#/components/schemas/Schedule' + $ref: '#/components/schemas/CaseWatchersResponse' description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' '401': $ref: '#/components/responses/UnauthorizedResponse' '403': @@ -3144,46 +3798,21 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call schedule + - AuthZ: + - cases_read + summary: List case watchers tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Update a new On-Call schedule - operationId: UpdateOnCallSchedule + - Case Management + /api/v2/cases/{case_id}/watchers/{user_uuid}: + delete: + description: Removes a user from the watchers list of a case. The user no longer receives notifications about updates to the case. + operationId: UnwatchCase parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, - `layers.members.user`. - in: query - name: include - schema: - type: string - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScheduleUpdateRequest' - required: true + - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/UserUUIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: OK + '204': + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -3197,50 +3826,20 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Update On-Call schedule + - AuthZ: + - cases_write + summary: Unwatch a case tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/schedules/{schedule_id}/on-call: - get: - description: >- - Retrieves the user who is on-call for the specified schedule at a given - time. - operationId: GetScheduleOnCallUser + - Case Management + post: + description: Adds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case. + operationId: WatchCase parameters: - - description: >- - Specifies related resources to include in the response as a - comma-separated list. Allowed value: `user`. - in: query - name: include - schema: - type: string - - description: The ID of the schedule. - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - - description: >- - Retrieves the on-call user at the given timestamp (ISO-8601). - Defaults to the current time if omitted." - in: query - name: filter[at_ts] - schema: - example: '2025-05-07T02:53:01Z' - type: string + - $ref: '#/components/parameters/CaseIDPathParameter' + - $ref: '#/components/parameters/UserUUIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Shift' - description: OK + '201': + description: Created '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -3254,656 +3853,1069 @@ paths: security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Get the schedule on-call user + - AuthZ: + - cases_write + summary: Watch a case tags: - - On-Call - /api/v2/on-call/teams/{team_id}/on-call: - get: - description: Get a team's on-call users at a given time - operationId: GetTeamOnCallUsers - parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `responders`, `escalations`, - `escalations.responders`. - in: query - name: include - schema: - type: string - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string + - Case Management + /api/v2/change-management/change-request: + post: + description: Create a new change request. + operationId: CreateChangeRequest + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_request_linked_incident_uuid: 00000000-0000-0000-0000-000000000000 + change_request_maintenance_window_query: '' + change_request_plan: 1. Deploy to staging 2. Run tests 3. Deploy to production + change_request_risk: LOW + change_request_type: NORMAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T15:00:00Z' + project_id: d4bbe1af-f36e-42f1-87c1-493ca35c320e + requested_teams: + - team-handle-1 + start_date: '2024-01-01T03:00:00Z' + title: Deploy new payment service + type: change_request + schema: + $ref: '#/components/schemas/ChangeRequestCreateRequest' + description: Change request payload. + required: true responses: - '200': + '201': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: '' + change_request_maintenance_window_query: '' + change_request_plan: '' + change_request_risk: LOW + change_request_type: NORMAL + created_at: '2024-01-01T00:00:00+00:00' + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T00:00:00+00:00' + key: CHM-1234 + modified_at: '2024-01-01T00:00:00+00:00' + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: '2024-01-01T00:00:00+00:00' + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request schema: - $ref: '#/components/schemas/TeamOnCallResponders' - description: OK + $ref: '#/components/schemas/ChangeRequestResponse' + description: Created '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Get team on-call users + - AuthZ: + - cases_write + summary: Create a change request tags: - - On-Call - /api/v2/on-call/teams/{team_id}/routing-rules: + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/change-management/change-request/{change_request_id}: get: - description: Get a team's On-Call routing rules - operationId: GetOnCallTeamRoutingRules + description: Get the details of a change request by its ID. + operationId: GetChangeRequest parameters: - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `rules`, `rules.policy`. - in: query - name: include - schema: - type: string + - $ref: '#/components/parameters/ChangeRequestIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: '' + change_request_maintenance_window_query: '' + change_request_plan: '' + change_request_risk: LOW + change_request_type: NORMAL + created_at: '2024-01-01T00:00:00+00:00' + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T00:00:00+00:00' + key: CHM-1234 + modified_at: '2024-01-01T00:00:00+00:00' + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: '2024-01-01T00:00:00+00:00' + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request schema: - $ref: '#/components/schemas/TeamRoutingRules' + $ref: '#/components/schemas/ChangeRequestResponse' description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call team routing rules + - AuthZ: + - cases_read + summary: Get a change request tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Set a team's On-Call routing rules - operationId: SetOnCallTeamRoutingRules + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update the properties of a change request. + operationId: UpdateChangeRequest parameters: - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `rules`, `rules.policy`. - in: query - name: include - schema: - type: string + - $ref: '#/components/parameters/ChangeRequestIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + change_request_plan: Updated deployment plan + change_request_risk: LOW + change_request_type: NORMAL + end_date: '2024-01-02T15:00:00Z' + id: CHM-1234 + start_date: '2024-01-01T03:00:00Z' + relationships: + change_request_decisions: + data: + - id: decision-id-0 + type: change_request + included: + - attributes: + change_request_status: REQUESTED + request_reason: Please review and approve this change + id: decision-id-0 + type: change_request_decision schema: - $ref: '#/components/schemas/TeamRoutingRulesRequest' + $ref: '#/components/schemas/ChangeRequestUpdateRequest' + description: Change request update payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: '' + change_request_maintenance_window_query: '' + change_request_plan: '' + change_request_risk: LOW + change_request_type: NORMAL + created_at: '2024-01-01T00:00:00+00:00' + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T00:00:00+00:00' + key: CHM-1234 + modified_at: '2024-01-01T00:00:00+00:00' + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: '2024-01-01T00:00:00+00:00' + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request schema: - $ref: '#/components/schemas/TeamRoutingRules' + $ref: '#/components/schemas/ChangeRequestResponse' description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Set On-Call team routing rules - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/services: - get: - deprecated: true - description: >- - Get all incident services uploaded for the requesting user's - organization. If the `include[users]` query parameter is provided, the - included attribute will contain the users related to these incident - services. - operationId: ListIncidentServices - parameters: - - $ref: '#/components/parameters/IncidentServiceIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - $ref: '#/components/parameters/IncidentServiceSearchQueryParameter' - responses: - '200': + '400': content: application/json: schema: - $ref: '#/components/schemas/IncidentServicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get a list of all incident services + - cases_write + summary: Update a change request tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated.' + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/change-management/change-request/{change_request_id}/branch: post: - deprecated: true - description: Creates a new incident service. - operationId: CreateIncidentService + description: Create a new branch in a repository for a change request. + operationId: CreateChangeRequestBranch + parameters: + - $ref: '#/components/parameters/ChangeRequestIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + branch_name: chm/CHM-1234 + repo_id: DataDog/test-repo + type: change_request_branch schema: - $ref: '#/components/schemas/IncidentServiceCreateRequest' - description: Incident Service Payload. + $ref: '#/components/schemas/ChangeRequestBranchCreateRequest' + description: Branch creation payload. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: '' + change_request_maintenance_window_query: '' + change_request_plan: '' + change_request_risk: LOW + change_request_type: NORMAL + created_at: '2024-01-01T00:00:00+00:00' + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T00:00:00+00:00' + key: CHM-1234 + modified_at: '2024-01-01T00:00:00+00:00' + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: '2024-01-01T00:00:00+00:00' + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: CREATED + $ref: '#/components/schemas/ChangeRequestResponse' + description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Create a new incident service + - cases_write + summary: Create a change request branch tags: - - Incident Services - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/services/definitions: - get: - description: Get a list of all service definitions from the Datadog Service Catalog. - operationId: ListServiceDefinitions + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/change-management/change-request/{change_request_id}/decisions/{decision_id}: + delete: + description: Delete a decision from a change request. + operationId: DeleteChangeRequestDecision parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/SchemaVersion' + - $ref: '#/components/parameters/ChangeRequestIDPathParameter' + - $ref: '#/components/parameters/ChangeRequestDecisionIDPathParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: '' + change_request_maintenance_window_query: '' + change_request_plan: '' + change_request_risk: LOW + change_request_type: NORMAL + created_at: '2024-01-01T00:00:00+00:00' + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T00:00:00+00:00' + key: CHM-1234 + modified_at: '2024-01-01T00:00:00+00:00' + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: '2024-01-01T00:00:00+00:00' + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request schema: - $ref: '#/components/schemas/ServiceDefinitionsListResponse' + $ref: '#/components/schemas/ChangeRequestResponse' description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - apm_service_catalog_read - summary: Get all service definitions + - cases_write + summary: Delete a change request decision tags: - - Service Definition - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - apm_service_catalog_read - post: - description: Create or update service definition in the Datadog Service Catalog. - operationId: CreateOrUpdateServiceDefinitions + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a decision on a change request, such as approving or declining it. + operationId: UpdateChangeRequestDecision + parameters: + - $ref: '#/components/parameters/ChangeRequestIDPathParameter' + - $ref: '#/components/parameters/ChangeRequestDecisionIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + id: CHM-1234 + relationships: + change_request_decisions: + data: + - id: decision-id-0 + type: change_request + included: + - attributes: + change_request_status: REQUESTED + request_reason: Please review and approve this change + id: decision-id-0 + type: change_request_decision schema: - $ref: '#/components/schemas/ServiceDefinitionsCreateRequest' - description: Service Definition YAML/JSON. + $ref: '#/components/schemas/ChangeRequestDecisionUpdateRequest' + description: Decision update payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + attributes: {} + change_request_linked_incident_uuid: '' + change_request_maintenance_window_query: '' + change_request_plan: '' + change_request_risk: LOW + change_request_type: NORMAL + created_at: '2024-01-01T00:00:00+00:00' + creation_source: CS_MANUAL + description: Deploying new payment service v2.1 + end_date: '2024-01-02T00:00:00+00:00' + key: CHM-1234 + modified_at: '2024-01-01T00:00:00+00:00' + plan_notebook_id: 0 + priority: NOT_DEFINED + project_id: 00000000-0000-0000-0000-000000000001 + start_date: '2024-01-01T00:00:00+00:00' + status: OPEN + title: Deploy new payment service + type: CHANGE_REQUEST + id: CHM-1234 + relationships: + change_request_decisions: + data: [] + created_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + modified_by: + data: + id: 00000000-0000-0000-0000-000000000001 + type: user + type: change_request schema: - $ref: '#/components/schemas/ServiceDefinitionCreateResponse' - description: CREATED + $ref: '#/components/schemas/ChangeRequestResponse' + description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - apm_service_catalog_write - summary: Create or update service definition + - cases_write + summary: Update a change request decision tags: - - Service Definition - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_service_catalog_write - /api/v2/services/definitions/{service_name}: - delete: - description: Delete a single service definition in the Datadog Service Catalog. - operationId: DeleteServiceDefinition + - Change Management + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/downtime: + get: + description: Get all scheduled downtimes. + operationId: ListDowntimes parameters: - - $ref: '#/components/parameters/ServiceName' + - description: Only return downtimes that are active when the request is made. + in: query + name: current_only + required: false + schema: + type: boolean + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource + paths are `created_by` and `monitor`. + in: query + name: include + required: false + schema: + example: created_by,monitor + type: string + - $ref: '#/components/parameters/PageOffset' + - description: Maximum number of downtimes in the response. + example: 100 + in: query + name: page[limit] + required: false + schema: + default: 30 + format: int64 + type: integer responses: - '204': + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: '2024-01-01T00:00:00+00:00' + display_timezone: America/New_York + message: Message about the downtime + modified: '2024-01-01T00:00:00+00:00' + monitor_identifier: + monitor_tags: + - '*' + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: 00000000-0000-1234-0000-000000000000 + type: downtime + meta: + page: + total_filtered_count: 1 + schema: + $ref: '#/components/schemas/ListDowntimesResponse' description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - apm_service_catalog_write - summary: Delete a single service definition + - monitors_downtime + summary: Get all downtimes tags: - - Service Definition + - Downtimes + x-pagination: + limitParam: page[limit] + pageOffsetParam: page[offset] + resultsPath: data x-permission: operator: OR permissions: - - apm_service_catalog_write - get: - description: Get a single service definition from the Datadog Service Catalog. - operationId: GetServiceDefinition - parameters: - - $ref: '#/components/parameters/ServiceName' - - $ref: '#/components/parameters/SchemaVersion' + - monitors_downtime + post: + description: Schedule a downtime. + operationId: CreateDowntime + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_timezone: America/New_York + message: Message about the downtime + monitor_identifier: + monitor_id: 123 + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + schedule: + timezone: America/New_York + scope: env:(staging OR prod) AND datacenter:us-east-1 + type: downtime + schema: + $ref: '#/components/schemas/DowntimeCreateRequest' + description: Schedule a downtime request body. + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + display_timezone: America/New_York + message: Message about the downtime + modified: '2024-01-01T00:00:00+00:00' + monitor_identifier: + monitor_tags: + - '*' + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: 00000000-0000-1234-0000-000000000000 + type: downtime schema: - $ref: '#/components/schemas/ServiceDefinitionGetResponse' + $ref: '#/components/schemas/DowntimeResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - apm_service_catalog_read - summary: Get a single service definition + - monitors_downtime + summary: Schedule a downtime tags: - - Service Definition + - Downtimes + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - apm_service_catalog_read - /api/v2/services/{service_id}: + - monitors_downtime + /api/v2/downtime/{downtime_id}: delete: - deprecated: true - description: Deletes an existing incident service. - operationId: DeleteIncidentService + description: |- + Cancel a downtime. + + **Note**: Downtimes canceled through the API are no longer active, but are retained for approximately two days before being permanently removed. The downtime may still appear in search results until it is permanently removed. + operationId: CancelDowntime parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' + - description: ID of the downtime to cancel. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-1234-0000-000000000000 + type: string responses: '204': description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Downtime not found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Delete an existing incident service + - monitors_downtime + summary: Cancel a downtime tags: - - Incident Services + - Downtimes x-permission: operator: OR permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' + - monitors_downtime get: - deprecated: true - description: >- - Get details of an incident service. If the `include[users]` query - parameter is provided, - - the included attribute will contain the users related to these incident - services. - operationId: GetIncidentService + description: Get downtime detail by `downtime_id`. + operationId: GetDowntime parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - - $ref: '#/components/parameters/IncidentServiceIncludeQueryParameter' + - description: ID of the downtime to fetch. + in: path + name: downtime_id + required: true + schema: + example: 00000000-0000-1234-0000-000000000000 + type: string + - description: |- + Comma-separated list of resource paths for related resources to include in the response. Supported resource + paths are `created_by` and `monitor`. + in: query + name: include + required: false + schema: + example: created_by,monitor + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + display_timezone: America/New_York + message: Message about the downtime + modified: '2024-01-01T00:00:00+00:00' + monitor_identifier: + monitor_tags: + - '*' + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: 00000000-0000-1234-0000-000000000000 + type: downtime schema: - $ref: '#/components/schemas/IncidentServiceResponse' + $ref: '#/components/schemas/DowntimeResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get details of an incident service + - monitors_downtime + summary: Get a downtime tags: - - Incident Services + - Downtimes x-permission: operator: OR permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated.' + - monitors_downtime patch: - deprecated: true - description: >- - Updates an existing incident service. Only provide the attributes which - should be updated as this request is a partial update. - operationId: UpdateIncidentService + description: Update a downtime by `downtime_id`. + operationId: UpdateDowntime parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' + - description: ID of the downtime to update. + in: path + name: downtime_id + required: true + schema: + example: 00e000000-0000-1234-0000-000000000000 + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + display_timezone: America/New_York + message: Message about the downtime + monitor_identifier: + monitor_id: 123 + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + schedule: + timezone: America/New_York + scope: env:(staging OR prod) AND datacenter:us-east-1 + id: 00000000-0000-1234-0000-000000000000 + type: downtime schema: - $ref: '#/components/schemas/IncidentServiceUpdateRequest' - description: Incident Service Payload. + $ref: '#/components/schemas/DowntimeUpdateRequest' + description: Update a downtime request body. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + display_timezone: America/New_York + message: Message about the downtime + modified: '2024-01-01T00:00:00+00:00' + monitor_identifier: + monitor_tags: + - '*' + mute_first_recovery_notification: false + notify_end_states: + - alert + - warn + notify_end_types: + - canceled + - expired + scope: env:(staging OR prod) AND datacenter:us-east-1 + status: active + id: 00000000-0000-1234-0000-000000000000 + type: downtime schema: - $ref: '#/components/schemas/IncidentServiceResponse' + $ref: '#/components/schemas/DowntimeResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden '404': - $ref: '#/components/responses/NotFoundResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Downtime not found '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Update an existing incident service + - monitors_downtime + summary: Update a downtime tags: - - Incident Services + - Downtimes x-codegen-request-body-name: body x-permission: operator: OR permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/slo/report: + - monitors_downtime + /api/v2/error-tracking/issues/search: post: - description: >- - Create a job to generate an SLO report. The report job is processed - asynchronously and eventually results in a CSV report being available - for download. - - - Check the status of the job and download the CSV report using the - returned `report_id`. - operationId: CreateSLOReportJob + description: Search issues endpoint allows you to programmatically search for issues within your organization. This endpoint returns a list of issues that match a given search query, following the event search syntax. The search results are limited to a maximum of 100 issues per request. + operationId: SearchIssues + parameters: + - $ref: '#/components/parameters/SearchIssuesIncludeQueryParameter' requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + from: 1671612804000 + order_by: IMPACTED_SESSIONS + persona: BACKEND + query: service:orders-* AND @language:go + to: 1671620004000 + type: search_request schema: - $ref: '#/components/schemas/SloReportCreateRequest' - description: Create SLO report job request body. + $ref: '#/components/schemas/IssuesSearchRequest' + description: Search issues request payload. required: true responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + impacted_sessions: 12 + impacted_users: 4 + total_count: 82 + id: abc-123 + type: error_tracking_search_result schema: - $ref: '#/components/schemas/SLOReportPostResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Create a new SLO report - tags: - - Service Level Objectives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - slos_read - x-unstable: >- - **Note**: This feature is in private beta. To request access, use the - request access form in the [Service Level - Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs. - /api/v2/slo/report/{report_id}/download: - get: - description: >- - Download an SLO report. This can only be performed after the report job - has completed. - - - Reports are not guaranteed to exist indefinitely. Datadog recommends - that you download the report as soon as it is available. - operationId: GetSLOReport - parameters: - - $ref: '#/components/parameters/ReportID' - responses: - '200': - content: - text/csv: - schema: - type: string + $ref: '#/components/schemas/IssuesSearchResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - slos_read - summary: Get SLO report + - error_tracking_read + summary: Search error tracking issues tags: - - Service Level Objectives - x-unstable: >- - **Note**: This feature is in private beta. To request access, use the - request access form in the [Service Level - Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs. - /api/v2/slo/report/{report_id}/status: + - Error Tracking + /api/v2/error-tracking/issues/{issue_id}: get: - description: Get the status of the SLO report job. - operationId: GetSLOReportJobStatus + description: Retrieve the full details for a specific error tracking issue, including attributes and relationships. + operationId: GetIssue parameters: - - $ref: '#/components/parameters/ReportID' + - $ref: '#/components/parameters/IssueIDPathParameter' + - $ref: '#/components/parameters/GetIssueIncludeQueryParameter' responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + error_message: object of type 'NoneType' has no len() + error_type: builtins.TypeError + service: test-service + state: OPEN + id: 00000000-0000-0000-0000-000000000001 + type: issue schema: - $ref: '#/components/schemas/SLOReportStatusGetResponse' + $ref: '#/components/schemas/IssueResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - slos_read - summary: Get SLO report status + - error_tracking_read + summary: Get the details of an error tracking issue tags: - - Service Level Objectives - x-unstable: >- - **Note**: This feature is in private beta. To request access, use the - request access form in the [Service Level - Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs. - /api/v2/teams: - get: - deprecated: true - description: >- - Get all incident teams for the requesting user's organization. If the - `include[users]` query parameter is provided, the included attribute - will contain the users related to these incident teams. - operationId: ListIncidentTeams + - Error Tracking + /api/v2/error-tracking/issues/{issue_id}/assignee: + delete: + description: Remove the assignee of an issue by `issue_id`. + operationId: DeleteIssueAssignee parameters: - - $ref: '#/components/parameters/IncidentTeamIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - $ref: '#/components/parameters/IncidentTeamSearchQueryParameter' + - $ref: '#/components/parameters/IssueIDPathParameter' responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamsResponse' - description: OK + '204': + description: No Content '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -3918,35 +4930,49 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get a list of all incident teams + - error_tracking_read + - error_tracking_write + - cases_read + - cases_write + summary: Remove the assignee of an issue tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - post: - deprecated: true - description: Creates a new incident team. - operationId: CreateIncidentTeam + - Error Tracking + put: + description: Update the assignee of an issue by `issue_id`. + operationId: UpdateIssueAssignee + parameters: + - $ref: '#/components/parameters/IssueIDPathParameter' requestBody: content: application/json: + examples: + default: + value: + data: + id: 87cb11a0-278c-440a-99fe-701223c80296 + type: assignee schema: - $ref: '#/components/schemas/IncidentTeamCreateRequest' - description: Incident Team Payload. + $ref: '#/components/schemas/IssueUpdateAssigneeRequest' + description: Update issue assignee request payload. required: true responses: - '201': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + error_message: object of type 'NoneType' has no len() + error_type: builtins.TypeError + service: test-service + state: OPEN + id: 00000000-0000-0000-0000-000000000003 + type: issue schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: CREATED + $ref: '#/components/schemas/IssueResponse' + description: OK '400': $ref: '#/components/responses/BadRequestResponse' '401': @@ -3961,27 +4987,51 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Create a new incident team + - error_tracking_read + - error_tracking_write + - cases_read + - cases_write + summary: Update the assignee of an issue tags: - - Incident Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - /api/v2/teams/{team_id}: - delete: - deprecated: true - description: Deletes an existing incident team. - operationId: DeleteIncidentTeam + - Error Tracking + /api/v2/error-tracking/issues/{issue_id}/state: + put: + description: Update the state of an issue by `issue_id`. Use this endpoint to move an issue between states such as `OPEN`, `RESOLVED`, or `IGNORED`. + operationId: UpdateIssueState parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' + - $ref: '#/components/parameters/IssueIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + state: RESOLVED + id: c1726a66-1f64-11ee-b338-da7ad0900002 + type: error_tracking_issue + schema: + $ref: '#/components/schemas/IssueUpdateStateRequest' + description: Update issue state request payload. + required: true responses: - '204': + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + error_message: object of type 'NoneType' has no len() + error_type: builtins.TypeError + service: test-service + state: RESOLVED + id: 00000000-0000-0000-0000-000000000002 + type: issue + schema: + $ref: '#/components/schemas/IssueResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -3997,82 +5047,383 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Delete an existing incident team + - error_tracking_read + - error_tracking_write + summary: Update the state of an issue tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). + - Error Tracking + /api/v2/events: get: - deprecated: true - description: >- - Get details of an incident team. If the `include[users]` query parameter - is provided, + description: |- + List endpoint returns events that match an events search query. + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - the included attribute will contain the users related to these incident - teams. - operationId: GetIncidentTeam + Use this endpoint to see your latest events. + operationId: ListEvents parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - - $ref: '#/components/parameters/IncidentTeamIncludeQueryParameter' + - description: Search query following events syntax. + in: query + name: filter[query] + required: false + schema: + type: string + - description: Minimum timestamp for requested events, in milliseconds. + in: query + name: filter[from] + required: false + schema: + type: string + - description: Maximum timestamp for requested events, in milliseconds. + in: query + name: filter[to] + required: false + schema: + type: string + - description: Order of events in results. + in: query + name: sort + required: false + schema: + $ref: '#/components/schemas/EventsSort' + - description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + in: query + name: page[cursor] + required: false + schema: + type: string + - description: Maximum number of events in the response. + example: 25 + in: query + name: page[limit] + required: false + schema: + default: 10 + format: int32 + maximum: 1000 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + message: Test event + tags: + - env:prod + timestamp: '2019-01-02T09:42:36.320Z' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: event + meta: + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR schema: - $ref: '#/components/schemas/IncidentTeamResponse' + $ref: '#/components/schemas/EventsListResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_read - summary: Get details of an incident team + - events_read + summary: Get a list of events tags: - - Incident Teams + - Events + x-pagination: + cursorParam: page[cursor] + cursorPath: meta.page.after + limitParam: page[limit] + resultsPath: data x-permission: operator: OR permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - patch: - deprecated: true - description: >- - Updates an existing incident team. Only provide the attributes which - should be updated as this request is a partial update. - operationId: UpdateIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' + - events_read + post: + description: |- + This endpoint allows you to publish events. + + **Note:** To utilize this endpoint with our client libraries, please ensure you are using the latest version released on or after July 1, 2025. Earlier versions do not support this functionality. + + **Important:** Upgrade to the latest client library version to use the updated endpoint at `https://event-management-intake.{site}/api/v2/events`. Older client library versions of the Post an event (v2) API send requests to a deprecated endpoint (`https://api.{site}/api/v2/events`). + + ✅ **Only events with the `change` or `alert` category** are in General Availability. For change events, see [Change Tracking](https://docs.datadoghq.com/change_tracking) for more details. + + ❌ For use cases involving other event categories, use the V1 endpoint or reach out to [support](https://www.datadoghq.com/support/). + operationId: CreateEvent requestBody: content: application/json: + examples: + alert-event: + description: Example of an alert event for tracking alerts and monitoring events. + summary: Alert Event + value: + data: + attributes: + aggregation_key: deduplication_key_here + attributes: + custom: + my-object-attribute: + my-array-attribute: + - 1 + - 2 + - 3 + my-array-object-attribute: + - name: test-object-1 + - name: test-object-2 + my-integer-attribute: 1 + my-string-attribute: my-custom-value + links: + - category: runbook + title: Datadog website + url: https://datadoghq.com + priority: '1' + status: error + category: alert + message: Something is broken! + tags: + - service:my-test-service + - datacenter:primary + title: My Alerting Event + type: event + change-event: + description: Example of a change event for tracking configuration or feature flag changes. + summary: Change Event + value: + data: + attributes: + aggregation_key: aggregation_key_123 + attributes: + author: + name: example@datadog.com + type: user + change_metadata: + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username + resource_link: datadog.com/feature/fallback_payments_test + changed_resource: + name: fallback_payments_test + type: feature_flag + impacted_resources: + - name: payments_api + type: service + new_value: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + prev_value: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + category: change + host: hostname + integration_id: custom-events + message: payment_processed feature flag has been enabled + tags: + - env:api_client_test + timestamp: '2020-01-01T01:30:15.010000Z' + title: payment_processed feature flag updated + type: event + default: + value: + data: + attributes: + aggregation_key: aggregation_key_123 + attributes: + author: + name: example@datadog.com + type: user + change_metadata: + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username + resource_link: datadog.com/feature/fallback_payments_test + changed_resource: + name: fallback_payments_test + type: feature_flag + impacted_resources: + - name: payments_api + type: service + new_value: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + prev_value: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + category: change + host: hostname + integration_id: custom-events + message: payment_processed feature flag has been enabled + tags: + - env:api_client_test + timestamp: '2020-01-01T01:30:15.010000Z' + title: payment_processed feature flag updated + type: event schema: - $ref: '#/components/schemas/IncidentTeamUpdateRequest' - description: Incident Team Payload. + $ref: '#/components/schemas/EventCreateRequestPayload' + description: Event creation request payload. required: true + responses: + '202': + content: + application/json: + examples: + default: + value: + data: + attributes: + attributes: + evt: + uid: abc-123 + type: event + schema: + $ref: '#/components/schemas/EventCreateResponsePayload' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Post an event + tags: + - Events + x-codegen-request-body-name: body + servers: + - url: https://event-management-intake.{site:.+} + variables: + site: + default: datadoghq.com + description: The regional site for customers. + x-stackQL-envVar: DD_SITE + /api/v2/events/search: + post: + description: |- + List endpoint returns events that match an events search query. + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). + + Use this endpoint to build complex events filtering and search. + operationId: SearchEvents + requestBody: + content: + application/json: + examples: + default: + value: + filter: + from: now-15m + query: service:web* AND @http.status_code:[200 TO 299] + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp + schema: + $ref: '#/components/schemas/EventsListRequest' + required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + message: Test event + tags: + - env:prod + timestamp: '2019-01-02T09:42:36.320Z' + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: event + meta: + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + schema: + $ref: '#/components/schemas/EventsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Search events + tags: + - Events + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.page.cursor + cursorPath: meta.page.after + limitParam: body.page.limit + resultsPath: data + x-permission: + operator: OR + permissions: + - events_read + /api/v2/events/{event_id}: + get: + description: Get the details of an event by `event_id`. + operationId: GetEvent + parameters: + - description: The UID of the event. + in: path + name: event_id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + message: The event message + tags: + - env:api_client_test + timestamp: '2017-01-15T01:30:15.010000Z' + id: abc-123 + type: event schema: - $ref: '#/components/schemas/IncidentTeamResponse' + $ref: '#/components/schemas/V2EventResponse' description: OK '400': $ref: '#/components/responses/BadRequestResponse' @@ -4088,8787 +5439,35654 @@ paths: - apiKeyAuth: [] appKeyAuth: [] - AuthZ: - - incident_settings_write - summary: Update an existing incident team + - events_read + summary: Get an event tags: - - Incident Teams - x-codegen-request-body-name: body + - Events x-permission: operator: OR permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). -components: - schemas: - CasesResponse: - description: Response with cases - properties: - data: - description: Cases response data - items: - $ref: '#/components/schemas/Case' - type: array - meta: - $ref: '#/components/schemas/CasesResponseMeta' - type: object - CaseCreateRequest: - description: Case create request - properties: - data: - $ref: '#/components/schemas/CaseCreate' - required: - - data - type: object - CaseResponse: - description: Case response - properties: - data: - $ref: '#/components/schemas/Case' - type: object - ProjectsResponse: - description: Response with projects - properties: - data: - description: Projects response data - items: - $ref: '#/components/schemas/Project' - type: array - type: object - ProjectCreateRequest: - description: Project create request - properties: - data: - $ref: '#/components/schemas/ProjectCreate' - required: - - data - type: object - ProjectResponse: - description: Project response - properties: - data: - $ref: '#/components/schemas/Project' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - CaseEmptyRequest: - description: Case empty request - properties: - data: - $ref: '#/components/schemas/CaseEmpty' - required: - - data - type: object - CaseAssignRequest: - description: Case assign request - properties: - data: - $ref: '#/components/schemas/CaseAssign' - required: - - data - type: object - CaseUpdateAttributesRequest: - description: Case update attributes request - properties: - data: - $ref: '#/components/schemas/CaseUpdateAttributes' - required: - - data - type: object - CaseUpdatePriorityRequest: - description: Case update priority request - properties: - data: - $ref: '#/components/schemas/CaseUpdatePriority' - required: - - data - type: object - CaseUpdateStatusRequest: - description: Case update status request - properties: - data: - $ref: '#/components/schemas/CaseUpdateStatus' - required: - - data - type: object - ListDowntimesResponse: - description: Response for retrieving all downtimes. - properties: - data: - description: An array of downtimes. - items: - $ref: '#/components/schemas/DowntimeResponseData' - type: array - included: - description: Array of objects related to the downtimes. - items: - $ref: '#/components/schemas/DowntimeResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/DowntimeMeta' - type: object - DowntimeCreateRequest: - description: Request for creating a downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeCreateRequestData' - required: - - data - type: object - DowntimeResponse: - description: |- - Downtiming gives you greater control over monitor notifications by - allowing you to globally exclude scopes from alerting. - Downtime settings, which can be scheduled with start and end times, - prevent all alerting related to specified Datadog tags. - properties: - data: - $ref: '#/components/schemas/DowntimeResponseData' - included: - description: Array of objects related to the downtime that the user requested. - items: - $ref: '#/components/schemas/DowntimeResponseIncludedItem' - type: array - type: object - DowntimeUpdateRequest: - description: Request for editing a downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeUpdateRequestData' - required: - - data - type: object - IssuesSearchRequest: - description: Search issues request payload. - properties: - data: - $ref: '#/components/schemas/IssuesSearchRequestData' - required: - - data - type: object - IssuesSearchResponse: - description: Search issues response payload. - properties: - data: - description: Array of results matching the search query. - items: - $ref: '#/components/schemas/IssuesSearchResult' - type: array - included: - description: Array of resources related to the search results. - items: - $ref: '#/components/schemas/IssuesSearchResultIncluded' - type: array - type: object - IssueResponse: - description: Response containing error tracking issue data. - properties: - data: - $ref: '#/components/schemas/Issue' - included: - description: Array of resources related to the issue. - items: - $ref: '#/components/schemas/IssueIncluded' - type: array - type: object - IssueUpdateAssigneeRequest: - description: Update issue assignee request payload. - properties: - data: - $ref: '#/components/schemas/IssueUpdateAssigneeRequestData' - required: - - data - type: object - IssueUpdateStateRequest: - description: Update issue state request payload. - properties: - data: - $ref: '#/components/schemas/IssueUpdateStateRequestData' - required: - - data - type: object - EventsSort: - description: The sort parameters when querying events. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - EventsListResponse: - description: >- - The response object with all events matching the request and pagination - information. - properties: - data: - description: An array of events matching the request. - items: - $ref: '#/components/schemas/EventResponse' - type: array - links: - $ref: '#/components/schemas/EventsListResponseLinks' - meta: - $ref: '#/components/schemas/EventsResponseMetadata' - type: object - EventCreateRequestPayload: - description: Payload for creating an event. - properties: - data: - $ref: '#/components/schemas/EventCreateRequest' - required: - - data - type: object - EventCreateResponsePayload: - description: Event creation response. - properties: - data: - $ref: '#/components/schemas/EventCreateResponse' - links: - $ref: '#/components/schemas/EventCreateResponsePayloadLinks' - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - EventsListRequest: - description: >- - The object sent with the request to retrieve a list of events from your - organization. - properties: - filter: - $ref: '#/components/schemas/EventsQueryFilter' - options: - $ref: '#/components/schemas/EventsQueryOptions' - page: - $ref: '#/components/schemas/EventsRequestPage' - sort: - $ref: '#/components/schemas/EventsSort' - type: object - V2EventResponse: - description: Get an event response. - properties: - data: - $ref: '#/components/schemas/V2Event' - type: object - IncidentsResponse: - description: Response with a list of incidents. - properties: - data: - description: An array of incidents. - example: - - attributes: - created: '2020-04-21T15:34:08.627205+00:00' - creation_idempotency_key: null - customer_impact_duration: 0 - customer_impact_end: null - customer_impact_scope: null - customer_impact_start: null - customer_impacted: false - detected: '2020-04-14T00:00:00+00:00' - incident_type_uuid: 00000000-0000-0000-0000-000000000001 - modified: '2020-09-17T14:16:58.696424+00:00' - public_id: 1 - resolved: null - severity: SEV-1 - time_to_detect: 0 - time_to_internal_response: 0 - time_to_repair: 0 - time_to_resolve: 0 - title: Example Incident - id: 00000000-aaaa-0000-0000-000000000000 - relationships: - attachments: + - events_read + /api/v2/forms: + get: + description: Get all forms for the authenticated user's organization. + operationId: ListForms + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + active: true + anonymous: false + created_at: '2026-05-29T20:06:14.895284Z' + datastore_config: + datastore_id: 00000000-0000-0000-0000-000000000000 + primary_column_name: '' + primary_key_generation_strategy: '' + description: A form to collect user feedback. + end_date: null + idp_survey: false + modified_at: '2026-05-29T20:06:14.895285Z' + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: '#/components/schemas/FormsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List forms + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new form. The form is created in draft mode and must be published before it can be used. This also creates a new datastore for form responses and links it to the form. + operationId: CreateForm + requestBody: + content: + application/json: + examples: + default: + value: data: - - id: 00000000-9999-0000-0000-000000000000 - type: incident_attachments - - id: 00000000-1234-0000-0000-000000000000 - type: incident_attachments - commander_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - created_by_user: + attributes: + anonymous: false + data_definition: {} + description: A form to collect user feedback. + idp_survey: false + name: User Feedback Form + single_response: false + ui_definition: {} + type: forms + schema: + $ref: '#/components/schemas/CreateFormRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: '2026-05-29T20:06:14.895284Z' + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: null + idp_survey: false + modified_at: '2026-05-29T20:06:14.895285Z' + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: '#/components/schemas/FormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/create_and_publish: + post: + description: Creates a new form and immediately publishes its initial version. This also creates a new datastore for form responses and links it to the form. + operationId: CreateAndPublishForm + requestBody: + content: + application/json: + examples: + default: + value: data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - integrations: + attributes: + anonymous: false + data_definition: {} + description: A form to collect user feedback. + idp_survey: false + name: User Feedback Form + single_response: false + ui_definition: {} + type: forms + schema: + $ref: '#/components/schemas/CreateFormRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: '2026-05-29T20:06:14.895284Z' + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: null + idp_survey: false + modified_at: '2026-05-29T20:06:14.895285Z' + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: '#/components/schemas/FormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create and publish a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}: + delete: + description: Delete a form by its ID. This will also try to delete the associated datastore. + operationId: DeleteForm + parameters: + - description: The ID of the form. + example: 844dfd88-aa84-4db4-8979-e7bdbb9c1dc3 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 844dfd88-aa84-4db4-8979-e7bdbb9c1dc3 + type: forms + schema: + $ref: '#/components/schemas/DeleteFormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a form definition by its ID. + operationId: GetForm + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + - description: The version of the form to retrieve. Use 'latest' for the most recent draft, 'published' for the last published version, or a specific version number. + in: query + name: version + required: false + schema: + default: latest + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: '2026-05-29T20:06:14.895284Z' + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: null + idp_survey: false + modified_at: '2026-05-29T20:06:14.895285Z' + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: '#/components/schemas/FormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a form's properties such as its name, description, or datastore configuration. + operationId: UpdateForm + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: data: - - id: 00000000-0000-0000-4444-000000000000 - type: incident_integrations - - id: 00000000-0000-0000-5555-000000000000 - type: incident_integrations - last_modified_by_user: + attributes: + form_update: + description: An updated description. + name: Updated Form Name + type: forms + schema: + $ref: '#/components/schemas/UpdateFormRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: '2026-05-29T20:06:14.895284Z' + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: An updated description. + end_date: null + idp_survey: false + modified_at: '2026-05-29T20:06:15.000000Z' + name: Updated Form Name + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: '#/components/schemas/FormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/clone: + post: + description: Clone an existing form. The clone is created in draft mode using the source form's latest version. + operationId: CloneForm + parameters: + - description: The ID of the form to clone. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incidents - - attributes: - created: '2020-04-21T15:34:08.627205+00:00' - creation_idempotency_key: null - customer_impact_duration: 0 - customer_impact_end: null - customer_impact_scope: null - customer_impact_start: null - customer_impacted: false - detected: '2020-04-14T00:00:00+00:00' - incident_type_uuid: 00000000-0000-0000-0000-000000000002 - modified: '2020-09-17T14:16:58.696424+00:00' - public_id: 2 - resolved: null - severity: SEV-5 - time_to_detect: 0 - time_to_internal_response: 0 - time_to_repair: 0 - time_to_resolve: 0 - title: Example Incident 2 - id: 00000000-1111-0000-0000-000000000000 - relationships: - attachments: + attributes: + name: Copy of My Form + type: forms + schema: + $ref: '#/components/schemas/CloneFormRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: '2026-05-30T10:00:00.000000Z' + datastore_config: + datastore_id: a2b3c4d5-e6f7-8901-2345-6789abcdef01 + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: null + idp_survey: false + modified_at: '2026-05-30T10:00:00.000000Z' + name: Copy of My Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 7a1e9054-5f6a-4b08-9e3d-c2f189a3bce0 + type: forms + schema: + $ref: '#/components/schemas/FormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Clone a form + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/publish: + post: + description: Publish a specific version of a form, making it available for submissions. + operationId: PublishForm + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: data: - - id: 00000000-9999-0000-0000-000000000000 - type: incident_attachments - commander_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - created_by_user: + attributes: + version: 1 + type: form_publications + schema: + $ref: '#/components/schemas/PublishFormRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-29T20:06:13.677353Z' + form_id: afc67600-0511-43b1-9b18-578fb4979bd3 + form_version: 1 + id: '42' + modified_at: '2026-05-29T20:06:13.677353Z' + org_id: 2 + publish_seq: 1 + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: '42' + type: form_publications + schema: + $ref: '#/components/schemas/FormPublicationResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Publish a form version + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/versions: + post: + description: |- + Create or update the latest draft version of a form. The `upsert_params` field controls + optimistic concurrency behavior. + operationId: UpsertFormVersion + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - integrations: + attributes: + data_definition: {} + state: draft + ui_definition: {} + upsert_params: + match_policy: none + type: form_versions + schema: + $ref: '#/components/schemas/UpsertFormVersionRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2026-05-29T20:06:14.895921Z' + data_definition: + $ref: '#/components/schemas/FormDataDefinition' + definition_signature: '{"signature":"b7f312957a80cea2c8c9950532b205a90a3f8a7ebb7e52fc25437a25d903d545","version":1}' + etag: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + modified_at: '2026-05-29T20:06:14.949163Z' + state: draft + ui_definition: {} + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + version: 2 + id: '126' + type: form_versions + schema: + $ref: '#/components/schemas/FormVersionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create or update a form version + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/forms/{form_id}/versions/upsert_and_publish: + post: + description: Upsert the latest form version and publish it in a single atomic transaction. + operationId: UpsertAndPublishFormVersion + parameters: + - description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + in: path + name: form_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: data: - - id: 00000000-0000-0000-0001-000000000000 - type: incident_integrations - - id: 00000000-0000-0000-0002-000000000000 - type: incident_integrations - last_modified_by_user: + attributes: + data_definition: {} + ui_definition: {} + upsert_params: + etag: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + type: form_versions + schema: + $ref: '#/components/schemas/UpsertAndPublishFormVersionRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + active: true + anonymous: false + created_at: '2026-05-29T20:06:14.895284Z' + datastore_config: + datastore_id: 5108ea24-dd83-4696-9caa-f069f73d0fad + primary_column_name: id + primary_key_generation_strategy: none + description: A form to collect user feedback. + end_date: null + idp_survey: false + modified_at: '2026-05-29T20:06:15.000000Z' + name: User Feedback Form + org_id: 2 + self_service: false + single_response: false + user_id: 10001 + user_uuid: 1fc709aa-be19-4539-a47d-52a30d78a978 + id: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + type: forms + schema: + $ref: '#/components/schemas/FormResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Unauthorized + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Upsert and publish a form version + tags: + - Forms + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents: + get: + description: Get all incidents for the user's organization. + operationId: ListIncidents + parameters: + - $ref: '#/components/parameters/IncidentIncludeQueryParameter' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageOffset' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: '2024-01-01T00:00:00+00:00' + customer_impacted: false + modified: '2024-01-01T00:00:00+00:00' + title: A test incident title + id: 00000000-0000-0000-1234-000000000000 + type: incidents + schema: + $ref: '#/components/schemas/IncidentsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of incidents + tags: + - Incidents + x-pagination: + limitParam: page[size] + pageOffsetParam: page[offset] + resultsPath: data + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident. + operationId: CreateIncident + requestBody: + content: + application/json: + examples: + default: + value: data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - type: incidents - items: - $ref: '#/components/schemas/IncidentResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentCreateRequest: - description: Create request for an incident. - properties: - data: - $ref: '#/components/schemas/IncidentCreateData' - required: - - data - type: object - IncidentResponse: - description: Response with an incident. - properties: - data: - $ref: '#/components/schemas/IncidentResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - required: - - data - type: object - IncidentNotificationRuleArray: - description: Response with notification rules. - properties: - data: - description: The `NotificationRuleArray` `data`. - items: - $ref: '#/components/schemas/IncidentNotificationRuleResponseData' - type: array - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' - type: array - meta: - $ref: '#/components/schemas/IncidentNotificationRuleArrayMeta' - required: - - data - type: object - CreateIncidentNotificationRuleRequest: - description: Create request for a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleCreateData' - required: - - data - type: object - IncidentNotificationRule: - description: Response with a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleResponseData' - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' - type: array - required: - - data - type: object - PutIncidentNotificationRuleRequest: - description: Put request for a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleUpdateData' - required: - - data - type: object - IncidentNotificationTemplateArray: - description: Response with notification templates. - properties: - data: - description: The `NotificationTemplateArray` `data`. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' - type: array - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' - type: array - meta: - $ref: '#/components/schemas/IncidentNotificationTemplateArrayMeta' - required: - - data - type: object - CreateIncidentNotificationTemplateRequest: - description: Create request for a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateData' - required: - - data - type: object - IncidentNotificationTemplate: - description: Response with a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' - type: array - required: - - data - type: object - PatchIncidentNotificationTemplateRequest: - description: Update request for a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateUpdateData' - required: - - data - type: object - IncidentTypeListResponse: - description: Response with a list of incident types. - properties: - data: - description: An array of incident type objects. - items: - $ref: '#/components/schemas/IncidentTypeObject' - type: array - required: - - data - type: object - IncidentTypeCreateRequest: - description: Create request for an incident type. - properties: - data: - $ref: '#/components/schemas/IncidentTypeCreateData' - required: - - data - type: object - IncidentTypeResponse: - description: Incident type response data. - properties: - data: - $ref: '#/components/schemas/IncidentTypeObject' - required: - - data - type: object - IncidentTypePatchRequest: - description: Patch request for an incident type. - properties: - data: - $ref: '#/components/schemas/IncidentTypePatchData' - required: - - data - type: object - IncidentSearchResponse: - description: Response with incidents and facets. - properties: - data: - $ref: '#/components/schemas/IncidentSearchResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentSearchResponseMeta' - required: - - data - type: object - IncidentUpdateRequest: - description: Update request for an incident. - properties: - data: - $ref: '#/components/schemas/IncidentUpdateData' - required: - - data - type: object - IncidentAttachmentsResponse: - description: The response object containing an incident's attachments. - properties: - data: - description: An array of incident attachments. - example: - - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentAttachmentsResponseIncludedItem' - type: array - required: - - data - type: object - IncidentAttachmentUpdateRequest: - description: The update request for an incident's attachments. - properties: - data: - description: >- - An array of incident attachments. An attachment object without an - "id" key indicates that you want to - - create that attachment. An attachment object without an "attributes" - key indicates that you want to - - delete that attachment. An attachment object with both the "id" key - and a populated "attributes" object - - indicates that you want to update that attachment. - example: - - attributes: - attachment: - documentUrl: https://app.datadoghq.com/notebook/123 - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - type: incident_attachments - - attributes: - attachment: - documentUrl: https://www.example.com/webstore-failure-runbook - title: Runbook for webstore service failures - attachment_type: link - type: incident_attachments - - id: 00000000-abcd-0003-0000-000000000000 - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentUpdateData' - type: array - required: - - data - type: object - IncidentAttachmentUpdateResponse: - description: >- - The response object containing the created or updated incident - attachments. - properties: - data: - description: >- - An array of incident attachments. Only the attachments that were - created or updated by the request are - - returned. - example: - - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: + attributes: + customer_impact_scope: Example customer impact scope + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + incident_type_uuid: 00000000-0000-0000-0000-000000000000 + initial_cells: + - cell_type: markdown + content: + content: An example timeline cell message. + important: false + is_test: false + notification_handles: + - display_name: Jane Doe + handle: '@user@email.com' + - display_name: Slack Channel + handle: '@slack-channel' + - display_name: Incident Workflow + handle: '@workflow-from-incident' + title: A test incident title + relationships: + commander_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + type: incidents + schema: + $ref: '#/components/schemas/IncidentCreateRequest' + description: Incident payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + modified: '2024-01-01T00:00:00+00:00' + title: A test incident title + id: 00000000-0000-0000-1234-000000000000 + type: incidents + schema: + $ref: '#/components/schemas/IncidentResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/global/incident-handles: + delete: + description: Delete a global incident handle. + operationId: DeleteGlobalIncidentHandle + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete global incident handle + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a list of global incident handles. + operationId: ListGlobalIncidentHandles + parameters: + - description: Comma-separated list of related resources to include in the response + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,commander_user,incident_type + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + fields: + severity: + - SEV-1 + modified_at: '2024-01-01T00:00:00+00:00' + name: '@incident-sev-1' + id: 00000000-0000-0000-0000-000000000006 + type: incidents_handles + schema: + $ref: '#/components/schemas/IncidentHandlesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List global incident handles + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new global incident handle. + operationId: CreateGlobalIncidentHandle + parameters: + - description: Comma-separated list of related resources to include in the response + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,commander_user,incident_type + type: string + requestBody: + content: + application/json: + examples: + default: + value: data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentAttachmentsResponseIncludedItem' - type: array - required: - - data - type: object - IncidentIntegrationMetadataListResponse: - description: Response with a list of incident integration metadata. - properties: - data: + attributes: + fields: + severity: + - SEV-1 + name: '@incident-sev-1' + id: b2494081-cdf0-4205-b366-4e1dd4fdf0bf + relationships: + commander_user: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + incident_type: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + type: incidents_handles + schema: + $ref: '#/components/schemas/IncidentHandleRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + fields: + severity: + - SEV-1 + modified_at: '2024-01-01T00:00:00+00:00' + name: '@incident-sev-1' + id: 00000000-0000-0000-0000-000000000007 + type: incidents_handles + schema: + $ref: '#/components/schemas/IncidentHandleResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create global incident handle + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an existing global incident handle. + operationId: UpdateGlobalIncidentHandle + parameters: + - description: Comma-separated list of related resources to include in the response + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,commander_user,incident_type + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + fields: + severity: + - SEV-1 + name: '@incident-sev-1' + id: b2494081-cdf0-4205-b366-4e1dd4fdf0bf + relationships: + commander_user: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + incident_type: + data: + id: f7b538b1-ed7c-4e84-82de-fdf84a539d40 + type: incident_types + type: incidents_handles + schema: + $ref: '#/components/schemas/IncidentHandleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + fields: + severity: + - SEV-1 + modified_at: '2024-01-01T00:00:00+00:00' + name: '@incident-sev-1' + id: 00000000-0000-0000-0000-000000000008 + type: incidents_handles + schema: + $ref: '#/components/schemas/IncidentHandleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update global incident handle + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/global/settings: + get: + description: Retrieve global incident settings for the organization. + operationId: GetGlobalIncidentSettings + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + analytics_dashboard_id: 00000000-0000-0000-0000-000000000002-def + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + type: incidents_global_settings + schema: + $ref: '#/components/schemas/GlobalIncidentSettingsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get global incident settings + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update global incident settings for the organization. + operationId: UpdateGlobalIncidentSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + analytics_dashboard_id: 00000000-0000-0000-0000-000000000003-def + type: incidents_global_settings + schema: + $ref: '#/components/schemas/GlobalIncidentSettingsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + analytics_dashboard_id: 00000000-0000-0000-0000-000000000005-def + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000004 + type: incidents_global_settings + schema: + $ref: '#/components/schemas/GlobalIncidentSettingsResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update global incident settings + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-chat-configurations: + post: + description: Create a Google Chat configuration for incidents. + operationId: CreateIncidentGoogleChatConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain_id: my-domain + space_name_template: '{{incident.title}}' + space_target_audience_id: '123456789' + space_time_zone: America/New_York + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: google_chat_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationRequest' + description: Google Chat configuration payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + domain_id: my-domain + modified_at: '2024-01-01T00:00:00.000Z' + space_name_template: '{{incident.title}}' + space_target_audience_id: '123456789' + space_time_zone: America/New_York + id: 00000000-0000-0000-0000-000000000001 + type: google_chat_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident Google Chat configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-chat-configurations/{id}: + patch: + description: Update a Google Chat configuration for incidents. + operationId: UpdateIncidentGoogleChatConfiguration + parameters: + - $ref: '#/components/parameters/IncidentGoogleChatConfigurationIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + domain_id: updated-domain + id: 00000000-0000-0000-0000-000000000001 + type: google_chat_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationPatchRequest' + description: Google Chat configuration patch payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + domain_id: updated-domain + modified_at: '2024-01-02T00:00:00.000Z' + space_name_template: '{{incident.title}}' + space_target_audience_id: '123456789' + space_time_zone: America/New_York + id: 00000000-0000-0000-0000-000000000001 + type: google_chat_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident Google Chat configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-meet-configurations: + post: + description: Create a Google Meet configuration for incidents. + operationId: CreateIncidentGoogleMeetConfiguration + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + allow_manual_meeting_creation: true + auto_summarize: false + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: google_meet_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationRequest' + description: Google Meet configuration payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + allow_manual_meeting_creation: true + auto_summarize: false + created_at: '2024-01-01T00:00:00.000Z' + modified_at: '2024-01-01T00:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: google_meet_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident Google Meet configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/google-meet-configurations/{id}: + patch: + description: Update a Google Meet configuration for incidents. + operationId: UpdateIncidentGoogleMeetConfiguration + parameters: + - $ref: '#/components/parameters/IncidentGoogleMeetConfigurationIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_summarize: true + id: 00000000-0000-0000-0000-000000000001 + type: google_meet_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationPatchRequest' + description: Google Meet configuration patch payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + allow_manual_meeting_creation: true + auto_summarize: true + created_at: '2024-01-01T00:00:00.000Z' + modified_at: '2024-01-02T00:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: google_meet_configurations + schema: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident Google Meet configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/impact-fields: + get: + description: List all impact fields for incidents. + operationId: ListIncidentImpactFields + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/IncidentImpactFieldsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: List incident impact fields + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an impact field for incidents. + operationId: CreateIncidentImpactField + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope + field_choices: + - description: Affects all customers + display_name: All Customers + value: all_customers + - description: Affects some customers + display_name: Some Customers + value: some_customers + field_type: dropdown + name: customer_impact_scope + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: impact_fields + schema: + $ref: '#/components/schemas/IncidentImpactFieldRequest' + description: Impact field payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope + field_choices: + - description: Affects all customers + display_name: All Customers + value: all_customers + field_type: dropdown + name: customer_impact_scope + id: 00000000-0000-0000-0000-000000000001 + type: impact_fields + schema: + $ref: '#/components/schemas/IncidentImpactFieldResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident impact field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/impact-fields/{field_id}: + delete: + description: Delete an impact field for incidents. + operationId: DeleteIncidentImpactField + parameters: + - $ref: '#/components/parameters/IncidentImpactFieldIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident impact field + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Update an impact field for incidents. + operationId: UpdateIncidentImpactField + parameters: + - $ref: '#/components/parameters/IncidentImpactFieldIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope Updated + field_type: dropdown + name: customer_impact_scope + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: impact_fields + schema: + $ref: '#/components/schemas/IncidentImpactFieldRequest' + description: Impact field update payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + display_name: Customer Impact Scope Updated + field_type: dropdown + name: customer_impact_scope + id: 00000000-0000-0000-0000-000000000001 + type: impact_fields + schema: + $ref: '#/components/schemas/IncidentImpactFieldResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident impact field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-rules: + get: + description: Lists all notification rules for the organization. Optionally filter by incident type. + operationId: ListIncidentNotificationRules + parameters: + - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: '2024-01-01T00:00:00+00:00' + enabled: true + handles: + - '@team-email@example.com' + modified: '2024-01-01T00:00:00+00:00' + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: '#/components/schemas/IncidentNotificationRuleArray' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List incident notification rules + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Creates a new notification rule. + operationId: CreateIncidentNotificationRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + enabled: true + handles: + - '@team-email@company.com' + - '@slack-channel' + renotify_on: + - status + - severity + trigger: incident_created_trigger + visibility: organization + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + notification_template: + data: + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + type: incident_notification_rules + schema: + $ref: '#/components/schemas/CreateIncidentNotificationRuleRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: '2024-01-01T00:00:00+00:00' + enabled: true + handles: + - '@team-email@example.com' + modified: '2024-01-01T00:00:00+00:00' + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: '#/components/schemas/IncidentNotificationRule' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Create an incident notification rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-rules/{id}: + delete: + description: Deletes a notification rule by its ID. + operationId: DeleteIncidentNotificationRule + parameters: + - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' + - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Delete an incident notification rule + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieves a specific notification rule by its ID. + operationId: GetIncidentNotificationRule + parameters: + - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' + - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: '2024-01-01T00:00:00+00:00' + enabled: true + handles: + - '@team-email@example.com' + modified: '2024-01-01T00:00:00+00:00' + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: '#/components/schemas/IncidentNotificationRule' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_read + summary: Get an incident notification rule + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Updates an existing notification rule with a complete replacement. + operationId: UpdateIncidentNotificationRule + parameters: + - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' + - $ref: '#/components/parameters/IncidentNotificationRuleIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + enabled: true + handles: + - '@team-email@company.com' + - '@slack-channel' + renotify_on: + - status + - severity + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + notification_template: + data: + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + type: incident_notification_rules + schema: + $ref: '#/components/schemas/PutIncidentNotificationRuleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + conditions: + - field: severity + values: + - SEV-1 + - SEV-2 + created: '2024-01-01T00:00:00+00:00' + enabled: true + handles: + - '@team-email@example.com' + modified: '2024-01-01T00:00:00+00:00' + trigger: incident_created_trigger + visibility: organization + id: 00000000-0000-0000-0000-000000000001 + type: incident_notification_rules + schema: + $ref: '#/components/schemas/IncidentNotificationRule' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Update an incident notification rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-templates: + get: + description: Lists all notification templates. Optionally filter by incident type. + operationId: ListIncidentNotificationTemplates + parameters: + - $ref: '#/components/parameters/IncidentNotificationTemplateIncidentTypeFilterQueryParameter' + - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: alert + content: |- + An incident has been declared. + + Title: {{incident.title}} + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + name: Incident Alert Template + subject: '{{incident.severity}} Incident: {{incident.title}}' + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: '#/components/schemas/IncidentNotificationTemplateArray' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List incident notification templates + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Creates a new notification template. + operationId: CreateIncidentNotificationTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: |- + An incident has been declared. + + Title: {{incident.title}} + Severity: {{incident.severity}} + Affected Services: {{incident.services}} + Status: {{incident.state}} + + Please join the incident channel for updates. + name: Incident Alert Template + subject: '{{incident.severity}} Incident: {{incident.title}}' + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: notification_templates + schema: + $ref: '#/components/schemas/CreateIncidentNotificationTemplateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: |- + An incident has been declared. + + Title: {{incident.title}} + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + name: Incident Alert Template + subject: '{{incident.severity}} Incident: {{incident.title}}' + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: '#/components/schemas/IncidentNotificationTemplate' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Create incident notification template + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/notification-templates/{id}: + delete: + description: Deletes a notification template by its ID. + operationId: DeleteIncidentNotificationTemplate + parameters: + - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' + - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Delete a notification template + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieves a specific notification template by its ID. + operationId: GetIncidentNotificationTemplate + parameters: + - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' + - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: |- + An incident has been declared. + + Title: {{incident.title}} + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + name: Incident Alert Template + subject: '{{incident.severity}} Incident: {{incident.title}}' + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: '#/components/schemas/IncidentNotificationTemplate' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + - incident_write + summary: Get incident notification template + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_write + - incident_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Updates an existing notification template's attributes. + operationId: UpdateIncidentNotificationTemplate + parameters: + - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' + - $ref: '#/components/parameters/IncidentNotificationTemplateIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: update + content: |- + Incident Status Update: + + Title: {{incident.title}} + New Status: {{incident.state}} + Severity: {{incident.severity}} + Services: {{incident.services}} + Commander: {{incident.commander}} + + For more details, visit the incident page. + name: Incident Status Update Template + subject: 'Incident Update: {{incident.title}} - {{incident.state}}' + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: '#/components/schemas/PatchIncidentNotificationTemplateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: alert + content: |- + An incident has been declared. + + Title: {{incident.title}} + created: '2024-01-01T00:00:00+00:00' + modified: '2024-01-01T00:00:00+00:00' + name: Incident Alert Template + subject: '{{incident.severity}} Incident: {{incident.title}}' + id: 00000000-0000-0000-0000-000000000001 + type: notification_templates + schema: + $ref: '#/components/schemas/IncidentNotificationTemplate' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_notification_settings_write + summary: Update incident notification template + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/postmortem-templates: + get: + description: Retrieve a list of all postmortem templates for incidents. + operationId: ListIncidentPostmortemTemplates + parameters: + - $ref: '#/components/parameters/PostmortemTemplateFilterIncidentTypeParameter' + - $ref: '#/components/parameters/PostmortemTemplateSortParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + content: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + createdAt: '2024-01-01T00:00:00+00:00' + is_default: '2024-01-01T00:00:00+00:00' + location: datadog_notebooks + modifiedAt: '2024-01-01T00:00:00+00:00' + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000001 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: '#/components/schemas/PostmortemTemplatesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List postmortem templates + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new postmortem template for incidents. + operationId: CreateIncidentPostmortemTemplate + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + content: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + name: Standard Postmortem Template + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: '#/components/schemas/PostmortemTemplateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + content: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + createdAt: '2024-01-01T00:00:00+00:00' + is_default: null + location: datadog_notebooks + modifiedAt: '2024-01-01T00:00:00+00:00' + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000002 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: '#/components/schemas/PostmortemTemplateResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/postmortem-templates/{template_id}: + delete: + description: Delete a postmortem template. + operationId: DeleteIncidentPostmortemTemplate + parameters: + - $ref: '#/components/parameters/PostmortemTemplateIdParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve details of a specific postmortem template. + operationId: GetIncidentPostmortemTemplate + parameters: + - $ref: '#/components/parameters/PostmortemTemplateIdParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + content: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + createdAt: '2024-01-01T00:00:00+00:00' + is_default: null + location: datadog_notebooks + modifiedAt: '2024-01-01T00:00:00+00:00' + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000003 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: '#/components/schemas/PostmortemTemplateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing postmortem template. + operationId: UpdateIncidentPostmortemTemplate + parameters: + - $ref: '#/components/parameters/PostmortemTemplateIdParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000004 + type: postmortem_templates + schema: + $ref: '#/components/schemas/PostmortemTemplateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + content: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + createdAt: '2024-01-01T00:00:00+00:00' + is_default: null + location: datadog_notebooks + modifiedAt: '2024-01-01T00:00:00+00:00' + name: Standard Postmortem Template + id: 00000000-0000-0000-0000-000000000004 + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000009 + type: incident_types + type: postmortem_templates + schema: + $ref: '#/components/schemas/PostmortemTemplateResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update postmortem template + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/rules: + get: + description: List all incident rules. + operationId: ListIncidentRules + parameters: + - description: Filter rules by task ID. + in: query + name: filter[task_id] + required: false + schema: + example: notify-incident-handles-job + type: string + - description: Filter rules by trigger. + in: query + name: filter[trigger] + required: false + schema: + example: incident_created_trigger + type: string + - description: Filter rules by incident type UUID. + in: query + name: incidentTypeUUID + required: false + schema: + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/IncidentRulesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: List incident rules + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident rule. + operationId: CreateIncidentRule + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: severity:SEV-1 + condition_table_type: 1 + enabled: true + execution_type: 1 + task_id: notify-incident-handles-job + task_payload: '{}' + trigger: incident_created_trigger + type: incident_rules + schema: + $ref: '#/components/schemas/IncidentRuleRequest' + description: Incident rule payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: severity:SEV-1 + condition_table_type: 1 + created: '2024-01-01T00:00:00.000Z' + enabled: true + execution_type: 1 + modified: '2024-01-01T00:00:00.000Z' + task_id: notify-incident-handles-job + task_payload: '{}' + trigger: incident_created_trigger + id: 00000000-0000-0000-0000-000000000001 + type: incidents_rules + schema: + $ref: '#/components/schemas/IncidentRuleResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/rules/{rule_id}: + delete: + description: Delete an incident rule. + operationId: DeleteIncidentRule + parameters: + - $ref: '#/components/parameters/IncidentRuleIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident rule + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_write + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single incident rule by ID. + operationId: GetIncidentRule + parameters: + - $ref: '#/components/parameters/IncidentRuleIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: severity:SEV-1 + condition_table_type: 1 + created: '2024-01-01T00:00:00.000Z' + enabled: true + execution_type: 1 + modified: '2024-01-01T00:00:00.000Z' + task_id: notify-incident-handles-job + task_payload: '{}' + trigger: incident_created_trigger + id: 00000000-0000-0000-0000-000000000001 + type: incidents_rules + schema: + $ref: '#/components/schemas/IncidentRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: Get an incident rule + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_notification_settings_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident rule. + operationId: UpdateIncidentRule + parameters: + - $ref: '#/components/parameters/IncidentRuleIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + enabled: false + id: 00000000-0000-0000-0000-000000000001 + type: incident_rules + schema: + $ref: '#/components/schemas/IncidentRulePatchRequest' + description: Incident rule patch payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + condition: + raw_query: severity:SEV-1 + condition_table_type: 1 + created: '2024-01-01T00:00:00.000Z' + enabled: false + execution_type: 1 + modified: '2024-01-02T00:00:00.000Z' + task_id: notify-incident-handles-job + task_payload: '{}' + trigger: incident_created_trigger + id: 00000000-0000-0000-0000-000000000001 + type: incidents_rules + schema: + $ref: '#/components/schemas/IncidentRuleResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident rule + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + - incident_notification_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types: + get: + description: Get all incident types. + operationId: ListIncidentTypes + parameters: + - $ref: '#/components/parameters/IncidentTypeIncludeDeletedParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000002 + type: incident_types + schema: + $ref: '#/components/schemas/IncidentTypeListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of incident types + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident type. + operationId: CreateIncidentType + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + createdBy: 00000000-0000-0000-0000-000000000000 + description: Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. + is_default: false + lastModifiedBy: 00000000-0000-0000-0000-000000000000 + name: Security Incident + prefix: IR + type: incident_types + schema: + $ref: '#/components/schemas/IncidentTypeCreateRequest' + description: Incident type payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000001 + type: incident_types + schema: + $ref: '#/components/schemas/IncidentTypeResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident type + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types/org-settings: + get: + description: List org settings for all incident types. + operationId: ListOrgSettings + parameters: + - description: Maximum number of results to return. + in: query + name: page[size] + required: false + schema: + example: 10 + format: int64 + type: integer + - description: The offset for pagination. + in: query + name: page[offset] + required: false + schema: + example: 0 + format: int64 + type: integer + - description: Whether to include deleted records. + in: query + name: include-deleted + required: false + schema: + example: false + type: boolean + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: incident_type + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/IncidentOrgSettingsListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List incident type org settings + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types/{incident_type_id}: + delete: + description: Delete an incident type. + operationId: DeleteIncidentType + parameters: + - $ref: '#/components/parameters/IncidentTypeIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident type + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get incident type details. + operationId: GetIncidentType + parameters: + - $ref: '#/components/parameters/IncidentTypeIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000003 + type: incident_types + schema: + $ref: '#/components/schemas/IncidentTypeResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get incident type details + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident type. + operationId: UpdateIncidentType + parameters: + - $ref: '#/components/parameters/IncidentTypeIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + createdBy: 00000000-0000-0000-0000-000000000000 + description: 'Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. Note: This will notify the security team.' + is_default: false + lastModifiedBy: 00000000-0000-0000-0000-000000000000 + name: Security Incident + prefix: IR + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + schema: + $ref: '#/components/schemas/IncidentTypePatchRequest' + description: Incident type payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Any incidents that harm the confidentiality, integrity, or availability of our data. + is_default: false + name: Security Incident + id: 00000000-0000-0000-0000-000000000004 + type: incident_types + schema: + $ref: '#/components/schemas/IncidentTypeResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident type + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/types/{incident_type_id}/org-settings: + get: + description: Get the org settings for a specific incident type. + operationId: GetOrgSettingsByIncidentType + parameters: + - $ref: '#/components/parameters/IncidentOrgSettingsTypeIDPathParameter' + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: incident_type + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00.000Z' + modified: '2024-01-01T00:00:00.000Z' + settings: + allow_anonymous_incident_declaration: false + allow_guest_incident_declaration: false + pagerduty_paging: true + private_incidents_by_default: false + id: 00000000-0000-0000-0000-000000000001 + type: incident_org_settings + schema: + $ref: '#/components/schemas/IncidentOrgSettingsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get org settings by incident type + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_settings_read + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-fields: + get: + description: Get a list of all incident user-defined fields. + operationId: ListIncidentUserDefinedFields + parameters: + - description: The number of results to return per page. Must be between 0 and 1000. + in: query + name: page[size] + schema: + default: 1000 + format: int64 + maximum: 1000 + minimum: 0 + type: integer + - description: The page number to retrieve, starting at 0. + in: query + name: page[number] + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + - description: When true, include soft-deleted fields in the response. + in: query + name: include-deleted + schema: + default: false + type: boolean + - description: Filter results to fields associated with the given incident type UUID. + in: query + name: filter[incident-type] + schema: + type: string + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: what_happened + collected: active + created: '2026-03-18T08:40:04.437887Z' + default_value: null + deleted: null + display_name: Root Cause + metadata: null + modified: '2026-03-18T08:40:04.437887Z' + name: root_cause + ordinal: '1.1' + required: false + reserved: false + tag_key: null + type: 1 + valid_values: + - description: A bug in the service code. + display_name: Service Bug + value: service_bug + id: 6f8f42e0-6a84-4495-9a24-6decb0a87de0 + relationships: + created_by_user: + data: + id: 00000000-0000-0000-0000-000000000001 + type: users + incident_type: + data: + id: 7459c30c-c661-4171-9474-db3a486377b2 + type: incident_types + last_modified_by_user: + data: + id: 00000000-0000-0000-0000-000000000001 + type: users + type: user_defined_field + meta: + offset: 0 + size: 1 + schema: + $ref: '#/components/schemas/IncidentUserDefinedFieldListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of incident user-defined fields + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident user-defined field. + operationId: CreateIncidentUserDefinedField + parameters: + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: what_happened + collected: active + default_value: critical + display_name: Root Cause + name: root_cause + ordinal: '1.5' + required: false + tag_key: datacenter + type: 3 + valid_values: + - description: A critical severity incident. + display_name: Critical + short_description: Critical + value: critical + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000000 + type: incident_types + type: user_defined_field + schema: + $ref: '#/components/schemas/IncidentUserDefinedFieldCreateRequest' + description: Incident user-defined field payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: null + collected: null + created: '2026-03-18T08:40:05.185406Z' + default_value: null + deleted: null + display_name: Root Cause + metadata: null + modified: '2026-03-18T08:40:05.185406Z' + name: root_cause + ordinal: '9' + required: false + reserved: false + tag_key: null + type: 3 + valid_values: null + id: 82263487-b540-4c12-8797-58ac1d4fed17 + relationships: + created_by_user: + data: + id: 2f2c94fe-cd6e-4f8e-b9c7-d5755aca09a6 + type: users + incident_type: + data: + id: 7459c30c-c661-4171-9474-db3a486377b2 + type: incident_types + last_modified_by_user: + data: + id: 2f2c94fe-cd6e-4f8e-b9c7-d5755aca09a6 + type: users + type: user_defined_field + schema: + $ref: '#/components/schemas/IncidentUserDefinedFieldResponse' + description: CREATED + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident user-defined field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-fields/{field_id}: + delete: + description: Delete an incident user-defined field. + operationId: DeleteIncidentUserDefinedField + parameters: + - $ref: '#/components/parameters/IncidentUserDefinedFieldIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident user-defined field + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get details of an incident user-defined field. + operationId: GetIncidentUserDefinedField + parameters: + - $ref: '#/components/parameters/IncidentUserDefinedFieldIDPathParameter' + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: what_happened + collected: active + created: '2026-03-18T08:40:04.437887Z' + default_value: null + deleted: null + display_name: Root Cause + metadata: null + modified: '2026-03-18T08:40:04.437887Z' + name: root_cause + ordinal: '1.1' + required: false + reserved: false + tag_key: null + type: 1 + valid_values: + - description: A bug in the service code. + display_name: Service Bug + value: service_bug + id: 6f8f42e0-6a84-4495-9a24-6decb0a87de0 + relationships: + created_by_user: + data: + id: 00000000-0000-0000-0000-000000000001 + type: users + incident_type: + data: + id: 7459c30c-c661-4171-9474-db3a486377b2 + type: incident_types + last_modified_by_user: + data: + id: 00000000-0000-0000-0000-000000000001 + type: users + type: user_defined_field + schema: + $ref: '#/components/schemas/IncidentUserDefinedFieldResponse' + description: OK + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get an incident user-defined field + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident user-defined field. + operationId: UpdateIncidentUserDefinedField + parameters: + - $ref: '#/components/parameters/IncidentUserDefinedFieldIDPathParameter' + - description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: what_happened + collected: active + default_value: critical + display_name: Root Cause + ordinal: '1.5' + required: false + valid_values: + - description: A critical severity incident. + display_name: Critical + short_description: Critical + value: critical + id: 00000000-0000-0000-0000-000000000000 + type: user_defined_field + schema: + $ref: '#/components/schemas/IncidentUserDefinedFieldUpdateRequest' + description: Incident user-defined field update payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: what_happened + collected: null + created: '2026-03-18T08:39:49.913895Z' + default_value: null + deleted: null + display_name: Root Cause + metadata: null + modified: '2026-03-18T08:39:49.922909Z' + name: root_cause + ordinal: '8' + required: false + reserved: false + tag_key: null + type: 3 + valid_values: null + id: 13a731a3-a010-450e-b6a3-3d450a26170c + relationships: + created_by_user: + data: + id: 8e7d4859-0916-4df8-b51c-5f5a4ea7815e + type: users + incident_type: + data: + id: 95edc42f-c55d-46fa-92a1-a182646454af + type: incident_types + last_modified_by_user: + data: + id: 8e7d4859-0916-4df8-b51c-5f5a4ea7815e + type: users + type: user_defined_field + schema: + $ref: '#/components/schemas/IncidentUserDefinedFieldResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident user-defined field + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_settings_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-roles: + get: + description: List all user-defined roles for incidents. + operationId: ListIncidentUserDefinedRoles + parameters: + - description: Filter roles by incident type UUID. + in: query + name: filter[incident-type] + required: false + schema: + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,incident_type + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created: '2024-01-01T00:00:00.000Z' + description: The technical lead for the incident. + modified: '2024-01-01T00:00:00.000Z' + name: Tech Lead + policy: + is_single: true + id: 00000000-0000-0000-0000-000000000002 + type: incident_user_defined_roles + schema: + $ref: '#/components/schemas/IncidentUserDefinedRolesResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: List incident user-defined roles + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a new user-defined role for incidents. + operationId: CreateIncidentUserDefinedRole + parameters: + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,incident_type + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: The technical lead for the incident. + name: Tech Lead + policy: + is_single: true + relationships: + incident_type: + data: + id: 00000000-0000-0000-0000-000000000001 + type: incident_types + type: incident_user_defined_roles + schema: + $ref: '#/components/schemas/IncidentUserDefinedRoleRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00.000Z' + description: The technical lead for the incident. + modified: '2024-01-01T00:00:00.000Z' + name: Tech Lead + policy: + is_single: true + id: 00000000-0000-0000-0000-000000000002 + type: incident_user_defined_roles + schema: + $ref: '#/components/schemas/IncidentUserDefinedRoleResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Create an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/config/user-defined-roles/{role_id}: + delete: + description: Delete an existing user-defined role for incidents. + operationId: DeleteIncidentUserDefinedRole + parameters: + - $ref: '#/components/parameters/IncidentUserDefinedRoleIDPathParameter' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Delete an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Retrieve a single user-defined role for incidents. + operationId: GetIncidentUserDefinedRole + parameters: + - $ref: '#/components/parameters/IncidentUserDefinedRoleIDPathParameter' + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,incident_type + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00.000Z' + description: The technical lead for the incident. + modified: '2024-01-01T00:00:00.000Z' + name: Tech Lead + policy: + is_single: true + id: 00000000-0000-0000-0000-000000000002 + type: incident_user_defined_roles + schema: + $ref: '#/components/schemas/IncidentUserDefinedRoleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_read + summary: Get an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing user-defined role for incidents. + operationId: UpdateIncidentUserDefinedRole + parameters: + - $ref: '#/components/parameters/IncidentUserDefinedRoleIDPathParameter' + - description: Comma-separated list of related resources to include in the response. + in: query + name: include + required: false + schema: + example: created_by_user,last_modified_by_user,incident_type + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Updated Tech Lead + id: 00000000-0000-0000-0000-000000000002 + type: incident_user_defined_roles + schema: + $ref: '#/components/schemas/IncidentUserDefinedRolePatchRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00.000Z' + modified: '2024-01-02T00:00:00.000Z' + name: Updated Tech Lead + policy: + is_single: true + id: 00000000-0000-0000-0000-000000000002 + type: incident_user_defined_roles + schema: + $ref: '#/components/schemas/IncidentUserDefinedRoleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_settings_write + summary: Update an incident user-defined role + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/import: + post: + description: |- + Import an incident from an external system. This endpoint allows you to create incidents with + historical data such as custom timestamps for detection, declaration, and resolution. + Imported incidents do not execute integrations or notification rules. + operationId: ImportIncident + parameters: + - $ref: '#/components/parameters/IncidentImportIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + declared: '2025-01-01T00:00:00Z' + detected: '2025-01-01T00:00:00Z' + fields: + severity: + value: SEV-5 + state: + value: active + incident_type_uuid: 00000000-0000-0000-0000-000000000000 + resolved: '2025-01-01T01:00:00Z' + title: Imported incident from external system + visibility: organization + relationships: + commander_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + declared_by_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + type: incidents + schema: + $ref: '#/components/schemas/IncidentImportRequest' + description: Incident import payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + fields: + severity: + value: SEV-5 + state: + value: active + modified: '2024-01-01T00:00:00+00:00' + title: Imported incident from external system + id: 00000000-0000-0000-1234-000000000000 + type: incidents + schema: + $ref: '#/components/schemas/IncidentImportResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Import an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/search: + get: + description: Search for incidents matching a certain query. + operationId: SearchIncidents + parameters: + - $ref: '#/components/parameters/IncidentSearchIncludeQueryParameter' + - $ref: '#/components/parameters/IncidentSearchQueryQueryParameter' + - $ref: '#/components/parameters/IncidentSearchSortQueryParameter' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageOffset' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + facets: + severity: [] + state: [] + incidents: [] + total: 0 + type: incidents_search_results + schema: + $ref: '#/components/schemas/IncidentSearchResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Search for incidents + tags: + - Incidents + x-pagination: + limitParam: page[size] + pageOffsetParam: page[offset] + resultsPath: data.attributes.incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}: + delete: + description: Deletes an existing incident from the users organization. + operationId: DeleteIncident + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an existing incident + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get the details of an incident by `incident_id`. + operationId: GetIncident + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + modified: '2024-01-01T00:00:00+00:00' + title: A test incident title + id: 00000000-0000-0000-1234-000000000000 + type: incidents + schema: + $ref: '#/components/schemas/IncidentResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get the details of an incident + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Updates an incident. Provide only the attributes that should be updated as this request is a partial update. + operationId: UpdateIncident + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + customer_impact_scope: Example customer impact scope + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + notification_handles: + - display_name: Jane Doe + handle: '@user@email.com' + - display_name: Slack Channel + handle: '@slack-channel' + - display_name: Incident Workflow + handle: '@workflow-from-incident' + title: A test incident title + id: 00000000-0000-0000-4567-000000000000 + relationships: + commander_user: + data: + id: 00000000-0000-0000-0000-000000000000 + type: users + integrations: + data: + - id: 00000000-abcd-0005-0000-000000000000 + type: incident_integrations + - id: 00000000-abcd-0006-0000-000000000000 + type: incident_integrations + postmortem: + data: + id: 00000000-0000-abcd-3000-000000000000 + type: incident_postmortems + type: incidents + schema: + $ref: '#/components/schemas/IncidentUpdateRequest' + description: Incident Payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00+00:00' + customer_impacted: false + fields: + severity: + type: dropdown + value: SEV-5 + modified: '2024-01-01T00:00:00+00:00' + title: A test incident title + id: 00000000-0000-0000-1234-000000000000 + type: incidents + schema: + $ref: '#/components/schemas/IncidentResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an existing incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/ai/postmortem: + post: + description: Generate an AI postmortem for an incident. + operationId: GetIncidentAIPostmortem + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + action_items: 1. Improve failover testing. + customer_impact: 5% of users experienced timeouts for 30 minutes. + executive_summary: A database failover caused a 30-minute service outage. + key_timeline: 10:00 - Alert fired. 10:30 - Issue resolved. + lessons_learned: We need to test the failover process under realistic load. + system_overview: The primary database cluster experienced a failover event. + id: 00000000-0000-0000-0000-000000000000 + type: get_incident_ai_postmortem_response + schema: + $ref: '#/components/schemas/IncidentAIPostmortemResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Get an AI-generated incident postmortem + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/attachments: + get: + description: List incident attachments. + operationId: ListIncidentAttachments + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - description: Filter attachments by type. Supported values are `1` (`postmortem`) and `2` (`link`). + in: query + name: filter[attachment_type] + schema: + example: '1' + type: string + - $ref: '#/components/parameters/AttachmentIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + title: Postmortem IR-123 + attachment_type: postmortem + modified: '2024-01-01T00:00:00+00:00' + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: '#/components/schemas/AttachmentArray' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List incident attachments + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident attachment. + operationId: CreateIncidentAttachment + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/AttachmentIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + title: Postmortem-IR-123 + attachment_type: postmortem + type: incident_attachments + schema: + $ref: '#/components/schemas/CreateAttachmentRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + title: Postmortem IR-123 + attachment_type: postmortem + modified: '2024-01-01T00:00:00+00:00' + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: '#/components/schemas/Attachment' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create incident attachment + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/attachments/postmortems: + post: + description: |- + Create a postmortem attachment for an incident. + + The endpoint accepts markdown for notebooks created in Confluence or Google Docs. + Postmortems created from notebooks need to be formatted using frontend notebook cells, + in addition to markdown format. + operationId: CreateIncidentPostmortemAttachment + parameters: + - description: The ID of the incident + in: path + name: incident_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + cells: + - id: cell-1 + type: markdown + content: |- + # Incident Report - IR-123 + [...] + postmortem_template_id: 93645509-874e-45c4-adfa-623bfeaead89-123 + title: Postmortem-IR-123 + type: incident_attachments + schema: + $ref: '#/components/schemas/PostmortemAttachmentRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + title: Postmortem IR-123 + attachment_type: postmortem + modified: '2024-01-01T00:00:00+00:00' + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: '#/components/schemas/Attachment' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Create postmortem attachment + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/attachments/{attachment_id}: + delete: + operationId: DeleteIncidentAttachment + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/AttachmentIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete incident attachment + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + operationId: UpdateIncidentAttachment + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/AttachmentIDPathParameter' + - $ref: '#/components/parameters/AttachmentIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/124/Postmortem-IR-124 + title: Postmortem-IR-124 + id: 00000000-abcd-0002-0000-000000000000 + type: incident_attachments + schema: + $ref: '#/components/schemas/PatchAttachmentRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + attachment: + documentUrl: https://app.datadoghq.com/notebook/124/Postmortem-IR-124 + title: Postmortem IR-124 + attachment_type: postmortem + modified: '2024-01-01T00:00:00+00:00' + id: 00000000-abcd-0002-0000-000000000000 + relationships: + incident: + data: + id: 00000000-0000-0000-1234-000000000000 + type: incidents + type: incident_attachments + schema: + $ref: '#/components/schemas/Attachment' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update incident attachment + tags: + - Incidents + x-permission: + operator: AND + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in Preview. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/cases/page: + post: + description: Create a page from an incident using the Cases service. + operationId: CreatePageFromIncident + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A critical incident affecting production systems. + services: + - web-store + tags: + - env:prod + target: + identifier: my-oncall-team + type: team_handle + title: Production outage - SEV-1 + type: page + schema: + $ref: '#/components/schemas/IncidentCreatePageFromIncidentRequest' + description: Page creation payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: page_uuid + schema: + $ref: '#/components/schemas/IncidentPageUUIDResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create a page from an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - oncall_page + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/configurations: + patch: + description: Update a configuration for an incident. + operationId: UpdateIncidentConfiguration + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + include_in_search: false + id: 00000000-0000-0000-0000-000000000001 + type: incidents_configurations + schema: + $ref: '#/components/schemas/IncidentConfigurationPatchRequest' + description: Incident configuration patch payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + execute_integrations: true + execute_notification_rules: true + incident_id: 00000000-0000-0000-0000-000000000000 + include_in_analytics: true + include_in_search: false + modified_at: '2024-01-02T00:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: incidents_configurations + schema: + $ref: '#/components/schemas/IncidentConfigurationResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a configuration for an incident. + operationId: CreateIncidentConfiguration + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + execute_integrations: true + execute_notification_rules: true + include_in_analytics: true + include_in_search: true + type: incidents_configurations + schema: + $ref: '#/components/schemas/IncidentConfigurationRequest' + description: Incident configuration payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + execute_integrations: true + execute_notification_rules: true + incident_id: 00000000-0000-0000-0000-000000000000 + include_in_analytics: true + include_in_search: true + modified_at: '2024-01-01T00:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: incidents_configurations + schema: + $ref: '#/components/schemas/IncidentConfigurationResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident configuration + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/impacts: + get: + description: Get all impacts for an incident. + operationId: ListIncidentImpacts + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentImpactIncludeQueryParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + description: Service was unavailable for external users + end_at: '2024-01-01T01:00:00+00:00' + start_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000001 + type: incident_impacts + schema: + $ref: '#/components/schemas/IncidentImpactsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List an incident's impacts + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + post: + description: Create an impact for an incident. + operationId: CreateIncidentImpact + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentImpactIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Service was unavailable for external users + end_at: '2025-08-29T13:17:00Z' + fields: + customers_impacted: all + products_impacted: + - shopping + - marketing + start_at: '2025-08-28T13:17:00Z' + type: incident_impacts + schema: + $ref: '#/components/schemas/IncidentImpactCreateRequest' + description: Incident impact payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Service was unavailable for external users + end_at: '2024-01-01T01:00:00+00:00' + start_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000002 + type: incident_impacts + schema: + $ref: '#/components/schemas/IncidentImpactResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident impact + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + /api/v2/incidents/{incident_id}/impacts/{impact_id}: + delete: + description: Delete an incident impact. + operationId: DeleteIncidentImpact + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentImpactIDPathParameter' + responses: + '204': + description: No Content + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident impact + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + patch: + description: Update an incident impact. + operationId: PatchIncidentImpact + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentImpactIDPathParameter' + - $ref: '#/components/parameters/IncidentImpactIncludeQueryParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Patched service impact description + type: incident_impacts + schema: + $ref: '#/components/schemas/IncidentImpactPatchRequest' + description: Incident impact patch payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Patched service impact description + start_at: '2025-08-28T13:17:00Z' + id: 00000000-0000-0000-0000-000000000002 + type: incident_impacts + schema: + $ref: '#/components/schemas/IncidentImpactResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident impact + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/page: + post: + description: Create an on-call page directly from an incident. + operationId: CreateOnCallPageFromIncident + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A critical incident affecting production systems. + services: + - web-store + target: + identifier: my-oncall-team + type: team_handle + title: Production outage - SEV-1 + type: page + schema: + $ref: '#/components/schemas/IncidentCreateOnCallPageRequest' + description: On-call page creation payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: page_uuid + schema: + $ref: '#/components/schemas/IncidentPageUUIDResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an on-call page from an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: AND + permissions: + - oncall_page + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/pages/link: + post: + description: Link an existing on-call page to an incident. + operationId: LinkPageToIncident + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: PAGE-12345 + page_target: + identifier: my-oncall-team + type: team_handle + id: PAGE-12345 + type: page + schema: + $ref: '#/components/schemas/IncidentOnCallPageLinkRequest' + description: On-call page link payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + integration_type: 15 + status: 2 + id: 00000000-0000-0000-0000-000000000001 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Conflict - page already linked to incident. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Link a page to an incident + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/integrations: + get: + description: Get all integration metadata for an incident. + operationId: ListIncidentIntegrations + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of an incident's integration metadata + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident integration metadata. + operationId: CreateIncidentIntegration + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 1 + metadata: + channels: + - channel_id: C0123456789 + channel_name: '#new-channel' + redirect_url: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 + team_id: T01234567 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataCreateRequest' + description: Incident integration metadata payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident integration metadata + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id}: + delete: + description: Delete an incident integration metadata. + operationId: DeleteIncidentIntegration + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident integration metadata + tags: + - Incidents + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get incident integration metadata details. + operationId: GetIncidentIntegration + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get incident integration metadata details + tags: + - Incidents + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an existing incident integration metadata. + operationId: UpdateIncidentIntegration + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 1 + metadata: + channels: + - channel_id: C0123456789 + channel_name: '#updated-channel-name' + redirect_url: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 + team_id: T01234567 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataPatchRequest' + description: Incident integration metadata payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-aaaa-0000-0000-000000000000 + integration_type: 8 + metadata: + issues: + - account: https://example.atlassian.net + issue_key: PROJ-123 + project_key: PROJ + id: 00000000-0000-0000-1234-000000000000 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an existing incident integration metadata + tags: + - Incidents + x-codegen-request-body-name: body + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/todos: + get: + description: Get all todos for an incident. + operationId: ListIncidentTodos + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + assignees: + - '@test.user@example.com' + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000002 + type: incident_todos + schema: + $ref: '#/components/schemas/IncidentTodoListResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get a list of an incident's todos + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create an incident todo. + operationId: CreateIncidentTodo + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - '@test.user@test.com' + completed: '2023-03-06T22:00:00.000000+00:00' + content: Restore lost data. + due_date: '2023-07-10T05:00:00.000000+00:00' + incident_id: 00000000-aaaa-0000-0000-000000000000 + type: incident_todos + schema: + $ref: '#/components/schemas/IncidentTodoCreateRequest' + description: Incident todo payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - '@test.user@example.com' + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000001 + type: incident_todos + schema: + $ref: '#/components/schemas/IncidentTodoResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident todo + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/relationships/todos/{todo_id}: + delete: + description: Delete an incident todo. + operationId: DeleteIncidentTodo + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentTodoIDPathParameter' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident todo + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get incident todo details. + operationId: GetIncidentTodo + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentTodoIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - '@test.user@example.com' + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000003 + type: incident_todos + schema: + $ref: '#/components/schemas/IncidentTodoResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get incident todo details + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update an incident todo. + operationId: UpdateIncidentTodo + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentTodoIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - '@test.user@test.com' + completed: '2023-03-06T22:00:00.000000+00:00' + content: Restore lost data. + due_date: '2023-07-10T05:00:00.000000+00:00' + incident_id: 00000000-aaaa-0000-0000-000000000000 + type: incident_todos + schema: + $ref: '#/components/schemas/IncidentTodoPatchRequest' + description: Incident todo payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + assignees: + - '@test.user@example.com' + content: Restore lost data. + id: 00000000-0000-0000-0000-000000000004 + type: incident_todos + schema: + $ref: '#/components/schemas/IncidentTodoResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident todo + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in public beta. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/responders: + get: + description: List all responders for an incident. + operationId: ListIncidentResponders + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/IncidentRespondersResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List incident responders + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Add a responder to an incident. + operationId: CreateIncidentResponder + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + relationships: + user: + data: + id: 00000000-0000-0000-0000-000000000001 + type: users + type: incident_responders + schema: + $ref: '#/components/schemas/IncidentResponderRequest' + description: Incident responder payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00.000Z' + is_billable: true + modified: '2024-01-01T00:00:00.000Z' + id: 00000000-0000-0000-0000-000000000002 + type: incident_responders + schema: + $ref: '#/components/schemas/IncidentResponderResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident responder + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/responders/{responder_id}: + delete: + description: Remove a responder from an incident. + operationId: DeleteIncidentResponder + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentResponderIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident responder + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Get a single responder for an incident. + operationId: GetIncidentResponder + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentResponderIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created: '2024-01-01T00:00:00.000Z' + is_billable: true + modified: '2024-01-01T00:00:00.000Z' + id: 00000000-0000-0000-0000-000000000002 + type: incident_responders + schema: + $ref: '#/components/schemas/IncidentResponderResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: Get an incident responder + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/servicenow-records: + post: + description: Create a ServiceNow record for an incident. + operationId: CreateIncidentServiceNowRecord + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + assignment_group: IT Support + configuration_item_mapping: my-service + instance_name: my-instance + type: incident_servicenow_record_prompt + schema: + $ref: '#/components/schemas/IncidentServiceNowRecordRequest' + description: ServiceNow record payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + incident_id: 00000000-0000-0000-0000-000000000000 + integration_type: 13 + metadata: + records: + - instance_name: my-instance + record_num: INC0001234 + redirect_url: https://my-instance.service-now.com/nav_to.do?uri=incident.do?sys_id=abc123 + status: 2 + id: 00000000-0000-0000-0000-000000000001 + type: incident_integrations + schema: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident ServiceNow record + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/timestamp-overrides: + get: + description: List all timestamp overrides for an incident. + operationId: ListTimestampOverrides + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/IncidentTimestampOverridesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_read + summary: List incident timestamp overrides + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_read + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Create a timestamp override for an incident. + operationId: CreateTimestampOverride + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + timestamp_type: detected + timestamp_value: '2024-01-01T10:00:00.000Z' + type: incidents_timestamp_overrides + schema: + $ref: '#/components/schemas/IncidentTimestampOverrideRequest' + description: Timestamp override payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + incident_id: 00000000-0000-0000-0000-000000000000 + modified_at: '2024-01-01T00:00:00.000Z' + timestamp_type: detected + timestamp_value: '2024-01-01T10:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: incidents_timestamp_overrides + schema: + $ref: '#/components/schemas/IncidentTimestampOverrideResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Create an incident timestamp override + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/incidents/{incident_id}/timestamp-overrides/{id}: + delete: + description: Delete a timestamp override for an incident. + operationId: DeleteTimestampOverride + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentTimestampOverrideIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Delete an incident timestamp override + tags: + - Incidents + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + patch: + description: Update a timestamp override for an incident. + operationId: UpdateTimestampOverride + parameters: + - $ref: '#/components/parameters/IncidentIDPathParameter' + - $ref: '#/components/parameters/IncidentTimestampOverrideIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + timestamp_value: '2024-01-01T11:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: incidents_timestamp_overrides + schema: + $ref: '#/components/schemas/IncidentTimestampOverridePatchRequest' + description: Timestamp override patch payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00.000Z' + incident_id: 00000000-0000-0000-0000-000000000000 + modified_at: '2024-01-02T00:00:00.000Z' + timestamp_type: detected + timestamp_value: '2024-01-01T11:00:00.000Z' + id: 00000000-0000-0000-0000-000000000001 + type: incidents_timestamp_overrides + schema: + $ref: '#/components/schemas/IncidentTimestampOverrideResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - incident_write + summary: Update an incident timestamp override + tags: + - Incidents + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - incident_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/maintenance_windows: + get: + description: Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query. + operationId: ListMaintenanceWindows + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + end_at: '2026-06-01T06:00:00Z' + name: Weekly maintenance + query: project:SEC + start_at: '2026-06-01T00:00:00Z' + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: maintenance_window + schema: + $ref: '#/components/schemas/MaintenanceWindowsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_read + summary: List maintenance windows + tags: + - Case Management + post: + description: Creates a maintenance window for event management cases with a name, case filter query, and time range (start and end). + operationId: CreateMaintenanceWindow + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: '2026-06-01T06:00:00Z' + name: Weekly maintenance + query: project:SEC + start_at: '2026-06-01T00:00:00Z' + type: maintenance_window + schema: + $ref: '#/components/schemas/MaintenanceWindowCreateRequest' + description: Maintenance window payload. + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: '2026-06-01T06:00:00Z' + name: Weekly maintenance + query: project:SEC + start_at: '2026-06-01T00:00:00Z' + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: maintenance_window + schema: + $ref: '#/components/schemas/MaintenanceWindowResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_write + summary: Create a maintenance window + tags: + - Case Management + /api/v2/maintenance_windows/{maintenance_window_id}: + delete: + description: Permanently deletes a maintenance window. + operationId: DeleteMaintenanceWindow + parameters: + - $ref: '#/components/parameters/MaintenanceWindowIDPathParameter' + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_write + summary: Delete a maintenance window + tags: + - Case Management + put: + description: Updates the name, query, start time, or end time of an existing maintenance window. + operationId: UpdateMaintenanceWindow + parameters: + - $ref: '#/components/parameters/MaintenanceWindowIDPathParameter' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: '2026-06-01T06:00:00Z' + name: Weekly maintenance + query: project:SEC + start_at: '2026-06-01T00:00:00Z' + type: maintenance_window + schema: + $ref: '#/components/schemas/MaintenanceWindowUpdateRequest' + description: Maintenance window payload. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + end_at: '2026-06-01T06:00:00Z' + name: Weekly maintenance + query: project:SEC + start_at: '2026-06-01T00:00:00Z' + id: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: maintenance_window + schema: + $ref: '#/components/schemas/MaintenanceWindowResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - event_correlation_config_write + summary: Update a maintenance window + tags: + - Case Management + /api/v2/on-call/escalation-policies: + post: + description: Create a new On-Call escalation policy + operationId: CreateOnCallEscalationPolicy + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - config: + schedule: + position: previous + id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + - assignment: round-robin + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-abb1-0000-0000-000000000000 + type: users + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: '#/components/schemas/EscalationPolicyCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: '#/components/schemas/EscalationPolicy' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create On-Call escalation policy + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + /api/v2/on-call/escalation-policies/{policy_id}: + delete: + description: Delete an On-Call escalation policy + operationId: DeleteOnCallEscalationPolicy + parameters: + - description: The ID of the escalation policy + in: path + name: policy_id + required: true + schema: + example: a3000000-0000-0000-0000-000000000000 + type: string + responses: + '204': + description: No Content + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete On-Call escalation policy + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + get: + description: Get an On-Call escalation policy + operationId: GetOnCallEscalationPolicy + parameters: + - description: The ID of the escalation policy + in: path + name: policy_id + required: true + schema: + example: a3000000-0000-0000-0000-000000000000 + type: string + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: '#/components/schemas/EscalationPolicy' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get On-Call escalation policy + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + put: + description: Update an On-Call escalation policy + operationId: UpdateOnCallEscalationPolicy + parameters: + - description: The ID of the escalation policy + in: path + name: policy_id + required: true + schema: + example: a3000000-0000-0000-0000-000000000000 + type: string + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: false + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + id: 00000000-aba1-0000-0000-000000000000 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + id: a3000000-0000-0000-0000-000000000000 + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: '#/components/schemas/EscalationPolicyUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + schema: + $ref: '#/components/schemas/EscalationPolicy' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update On-Call escalation policy + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + /api/v2/on-call/pages: + post: + description: Trigger a new On-Call Page. + operationId: CreateOnCallPage + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Page details. + tags: + - service:test + target: + identifier: my-team + type: team_handle + title: Page title + urgency: low + type: pages + schema: + $ref: '#/components/schemas/CreatePageRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: pages + schema: + $ref: '#/components/schemas/CreatePageResponse' + description: OK. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create On-Call Page + tags: + - On-Call Paging + servers: + - url: https://{site:.+} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + /api/v2/on-call/pages/{page_id}/acknowledge: + post: + description: Acknowledges an On-Call Page. + operationId: AcknowledgeOnCallPage + parameters: + - description: The page ID. + in: path + name: page_id + required: true + schema: + example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + format: uuid + type: string + responses: + '202': + description: Accepted. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Acknowledge On-Call Page + tags: + - On-Call Paging + servers: + - url: https://{site:.+} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + /api/v2/on-call/pages/{page_id}/escalate: + post: + description: Escalates an On-Call Page. + operationId: EscalateOnCallPage + parameters: + - description: The page ID. + in: path + name: page_id + required: true + schema: + example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + format: uuid + type: string + responses: + '202': + description: Accepted. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Escalate On-Call Page + tags: + - On-Call Paging + servers: + - url: https://{site:.+} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + /api/v2/on-call/pages/{page_id}/resolve: + post: + description: Resolves an On-Call Page. + operationId: ResolveOnCallPage + parameters: + - description: The page ID. + in: path + name: page_id + required: true + schema: + example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + format: uuid + type: string + responses: + '202': + description: Accepted. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Resolve On-Call Page + tags: + - On-Call Paging + servers: + - url: https://{site:.+} + variables: + site: + default: navy.oncall.datadoghq.com + description: The globally available endpoint for On-Call. + /api/v2/on-call/schedules: + post: + description: Create a new On-Call schedule + operationId: CreateOnCallSchedule + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + layers: + - effective_date: '2025-02-03T05:00:00Z' + end_date: '2025-12-31T00:00:00Z' + interval: + days: 1 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + rotation_start: '2025-02-01T00:00:00Z' + name: On-Call Schedule + time_zone: America/New_York + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: '#/components/schemas/ScheduleCreateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: layers + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: '#/components/schemas/Schedule' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create On-Call schedule + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + /api/v2/on-call/schedules/{schedule_id}: + delete: + description: Delete an On-Call schedule + operationId: DeleteOnCallSchedule + parameters: + - description: The ID of the schedule + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + responses: + '204': + description: No Content + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete On-Call schedule + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + get: + description: Get an On-Call schedule + operationId: GetOnCallSchedule + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.' + in: query + name: include + schema: + type: string + - description: The ID of the schedule + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: layers + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: '#/components/schemas/Schedule' + description: OK + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get On-Call schedule + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + put: + description: Update a new On-Call schedule + operationId: UpdateOnCallSchedule + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`.' + in: query + name: include + schema: + type: string + - description: The ID of the schedule + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + layers: + - effective_date: '2025-02-03T05:00:00Z' + end_date: '2025-12-31T00:00:00Z' + interval: + seconds: 3600 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + rotation_start: '2025-02-01T00:00:00Z' + name: On-Call Schedule Updated + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + schema: + $ref: '#/components/schemas/ScheduleUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 00000000-0000-0000-0000-000000000001 + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000002 + type: layers + teams: + data: + - id: 00000000-0000-0000-0000-000000000003 + type: teams + type: schedules + schema: + $ref: '#/components/schemas/Schedule' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update On-Call schedule + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + /api/v2/on-call/schedules/{schedule_id}/on-call: + get: + deprecated: true + description: Retrieves the user who is on-call for the specified schedule at a given time. This endpoint does not support schedules with multiple concurrent on-call responders at a position. Deprecated. Use `Get on-call responders for a schedule` instead. + operationId: GetScheduleOnCallUser + parameters: + - description: 'Specifies related resources to include in the response as a comma-separated list. Allowed value: `user`.' + in: query + name: include + schema: + type: string + - description: The ID of the schedule. + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + - description: Retrieves the on-call user at the given timestamp in RFC3339 format (for example, `2025-05-07T02:53:01Z` or `2025-05-07T02:53:01+00:00`). When using timezone offsets with `+` or `-`, ensure proper URL encoding (`+` should be encoded as `%2B`). Defaults to the current time if omitted. + in: query + name: filter[at_ts] + schema: + example: '2025-05-07T02:53:01Z' + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + end: '2024-01-01T03:53:01.000000000Z' + start: '2024-01-01T02:53:01.000000000Z' + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + schema: + $ref: '#/components/schemas/Shift' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get scheduled on-call user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + x-sunset: '2027-02-01' + /api/v2/on-call/schedules/{schedule_id}/responders: + get: + description: Retrieves the on-call responders for the specified schedule, grouped by position (previous, current, next), at a given time. Supports schedules with multiple concurrent on-call responders at a position, by returning a list of shifts per position. + operationId: GetScheduleOnCallResponders + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `schedule`, `responders`, `responders.shifts`, `responders.shifts.user`.' + in: query + name: include + schema: + type: string + - description: The ID of the schedule. + in: path + name: schedule_id + required: true + schema: + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + - description: 'Comma-separated list of positions to retrieve. Allowed values: `previous`, `current`, `next`. Defaults to `current` if omitted.' + in: query + name: filter[position] + schema: + example: previous,current,next + type: string + - description: Retrieves the on-call responders at the given timestamp in RFC3339 format (for example, `2025-05-07T02:53:01Z` or `2025-05-07T02:53:01+00:00`). When using timezone offsets with `+` or `-`, ensure proper URL encoding (`+` should be encoded as `%2B`). Defaults to the current time if omitted. + in: query + name: filter[at_ts] + schema: + example: '2025-05-07T02:53:01Z' + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + scheduled_at: '2024-05-07T02:53:01.000000000Z' + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400 + relationships: + responders: + data: + - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current + type: schedule_oncall_responder + schedule: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: schedules + type: schedule_oncall_responders + included: + - attributes: + position: current + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current + relationships: + shifts: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: shifts + type: schedule_oncall_responder + - attributes: + end: '2024-05-08T02:53:01.000000000Z' + start: '2024-05-07T02:53:01.000000000Z' + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + schema: + $ref: '#/components/schemas/ScheduleOnCallResponders' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get on-call responders for a schedule + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + /api/v2/on-call/teams/{team_id}/on-call: + get: + description: Get a team's on-call users at a given time + operationId: GetTeamOnCallUsers + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `responders`, `escalations`, `escalations.responders`.' + in: query + name: include + schema: + type: string + - description: The team ID + in: path + name: team_id + required: true + schema: + example: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + relationships: + escalations: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: escalation_policy_steps + responders: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + type: team_oncall_responders + schema: + $ref: '#/components/schemas/TeamOnCallResponders' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get team on-call users + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + /api/v2/on-call/teams/{team_id}/routing-rules: + get: + description: Get a team's On-Call routing rules + operationId: GetOnCallTeamRoutingRules + parameters: + - description: The team ID + in: path + name: team_id + required: true + schema: + example: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: string + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: team_routing_rules + schema: + $ref: '#/components/schemas/TeamRoutingRules' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get On-Call team routing rules + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + put: + description: Set a team's On-Call routing rules + operationId: SetOnCallTeamRoutingRules + parameters: + - description: The team ID + in: path + name: team_id + required: true + schema: + example: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: string + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `rules`, `rules.policy`.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + rules: + - actions: null + policy_id: '' + query: tags.service:test + time_restriction: + restrictions: + - end_day: monday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + - end_day: tuesday + end_time: '17:00:00' + start_day: tuesday + start_time: '09:00:00' + time_zone: '' + urgency: high + - actions: + - channel: channel + type: send_slack_message + workspace: workspace + policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 + query: '' + time_restriction: null + urgency: low + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: team_routing_rules + schema: + $ref: '#/components/schemas/TeamRoutingRulesRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: team_routing_rules + schema: + $ref: '#/components/schemas/TeamRoutingRules' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Set On-Call team routing rules + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_write + /api/v2/on-call/users/{user_id}/notification-channels: + get: + description: List the notification channels for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: ListUserNotificationChannels + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + config: + address: test@example.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + schema: + $ref: '#/components/schemas/ListNotificationChannelsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List On-Call notification channels for a user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + post: + description: Create a new notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: CreateUserNotificationChannel + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + address: foo@bar.com + formats: + - html + type: email + type: notification_channels + schema: + $ref: '#/components/schemas/CreateUserNotificationChannelRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + address: test@example.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + schema: + $ref: '#/components/schemas/NotificationChannel' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create an On-Call notification channel for a user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_respond + /api/v2/on-call/users/{user_id}/notification-channels/{channel_id}: + delete: + description: Delete a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: DeleteUserNotificationChannel + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The channel ID + in: path + name: channel_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete an On-Call notification channel for a user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_respond + get: + description: Get a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: GetUserNotificationChannel + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The channel ID + in: path + name: channel_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + config: + address: test@example.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + schema: + $ref: '#/components/schemas/NotificationChannel' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get an On-Call notification channel for a user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + /api/v2/on-call/users/{user_id}/notification-rules: + get: + description: List the notification rules for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: ListUserNotificationRules + parameters: + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `channel`.' + in: query + name: include + schema: + type: string + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_rules + schema: + $ref: '#/components/schemas/ListOnCallNotificationRulesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: List On-Call notification rules for a user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_read + post: + description: Create a new notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: CreateUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: '#/components/schemas/CreateOnCallNotificationRuleRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 00000000-0000-0000-0000-000000000001 + relationships: + channel: + data: + id: 00000000-0000-0000-0000-000000000002 + type: notification_channels + type: notification_rules + schema: + $ref: '#/components/schemas/OnCallNotificationRule' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Create an On-Call notification rule for a user + tags: + - On-Call + x-permission: + operator: AND + permissions: + - on_call_respond + /api/v2/on-call/users/{user_id}/notification-rules/{rule_id}: + delete: + description: Delete a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: DeleteUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The rule ID + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Delete an On-Call notification rule for a user + tags: + - On-Call + x-permission: + operator: OR + permissions: + - on_call_respond + get: + description: Get a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: GetUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The rule ID + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `channel`.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: '#/components/schemas/OnCallNotificationRule' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Get an On-Call notification rule for a user + tags: + - On-Call + x-permission: + operator: OR + permissions: + - on_call_read + put: + description: Update a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + operationId: UpdateUserNotificationRule + parameters: + - description: The user ID + in: path + name: user_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: The rule ID + in: path + name: rule_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + - description: 'Comma-separated list of included relationships to be returned. Allowed values: `channel`.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 2462ace1-49e2-aab1-xc4f-29cc4ae1105n7 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: '#/components/schemas/UpdateOnCallNotificationRuleRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + schema: + $ref: '#/components/schemas/OnCallNotificationRule' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: [] + summary: Update an On-Call notification rule for a user + tags: + - On-Call + x-permission: + operator: OR + permissions: + - on_call_read + /api/v2/services/definitions: + get: + description: Get a list of all service definitions from the Datadog Service Catalog. + operationId: ListServiceDefinitions + parameters: + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + - $ref: '#/components/parameters/SchemaVersion' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + schema: + dd-service: test-service + schema-version: v2.2 + team: my-team + id: test-service + type: service_definitions + schema: + $ref: '#/components/schemas/ServiceDefinitionsListResponse' + description: OK + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get all service definitions + tags: + - Service Definition + x-pagination: + limitParam: page[size] + pageParam: page[number] + resultsPath: data + x-permission: + operator: OR + permissions: + - apm_service_catalog_read + post: + description: Create or update service definition in the Datadog Service Catalog. + operationId: CreateOrUpdateServiceDefinitions + requestBody: + content: + application/json: + examples: + default: + value: + application: my-app + ci-pipeline-fingerprints: + - j88xdEy0J5lc + - eZ7LMljCk8vo + contacts: + - contact: https://teams.microsoft.com/myteam + name: My team channel + type: slack + dd-service: my-service + description: My service description + extensions: + myorg/extension: extensionValue + integrations: + opsgenie: + region: US + service-url: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 + pagerduty: + service-url: https://my-org.pagerduty.com/service-directory/PMyService + languages: + - dotnet + - go + - java + - js + - php + - python + - ruby + - c++ + lifecycle: sandbox + links: + - name: Runbook + provider: Github + type: runbook + url: https://my-runbook + schema-version: v2.2 + tags: + - my:tag + - service:tag + team: my-team + tier: High + type: web + schema: + $ref: '#/components/schemas/ServiceDefinitionsCreateRequest' + description: Service Definition YAML/JSON. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + schema: + dd-service: my-service + schema-version: v2.2 + id: abc-123 + type: service_definitions + schema: + $ref: '#/components/schemas/ServiceDefinitionCreateResponse' + description: CREATED + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Create or update service definition + tags: + - Service Definition + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - apm_service_catalog_write + /api/v2/services/definitions/{service_name}: + delete: + description: Delete a single service definition in the Datadog Service Catalog. + operationId: DeleteServiceDefinition + parameters: + - $ref: '#/components/parameters/ServiceName' + responses: + '204': + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_write + summary: Delete a single service definition + tags: + - Service Definition + x-permission: + operator: OR + permissions: + - apm_service_catalog_write + get: + description: Get a single service definition from the Datadog Service Catalog. + operationId: GetServiceDefinition + parameters: + - $ref: '#/components/parameters/ServiceName' + - $ref: '#/components/parameters/SchemaVersion' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + schema: + dd-service: test-service + schema-version: v2.2 + team: my-team + id: test-service + type: service_definitions + schema: + $ref: '#/components/schemas/ServiceDefinitionGetResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - apm_service_catalog_read + summary: Get a single service definition + tags: + - Service Definition + x-permission: + operator: OR + permissions: + - apm_service_catalog_read + /api/v2/slo/report: + post: + deprecated: true + description: |- + Create a job to generate an SLO report. The report job is processed asynchronously and eventually results in a CSV report being available for download. + + Check the status of the job and download the CSV report using the returned `report_id`. + operationId: CreateSLOReportJob + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from_ts: 1690901870 + interval: weekly + query: slo_type:metric + timezone: America/New_York + to_ts: 1706803070 + schema: + $ref: '#/components/schemas/SloReportCreateRequest' + description: Create SLO report job request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000001 + type: report_id + schema: + $ref: '#/components/schemas/SLOReportPostResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Create a new SLO report + tags: + - Service Level Objectives + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - slos_read + x-sunset: '2027-01-25' + x-unstable: '**Note**: This feature is in private beta and is no longer accepting requests for access.' + /api/v2/slo/report/{report_id}/download: + get: + deprecated: true + description: |- + Download an SLO report. This can only be performed after the report job has completed. + + Reports are not guaranteed to exist indefinitely. Datadog recommends that you download the report as soon as it is available. + operationId: GetSLOReport + parameters: + - $ref: '#/components/parameters/ReportID' + responses: + '200': + content: + text/csv: + examples: + default: + value: |- + slo_name,slo_id,sli,error_budget_remaining + My SLO,abc-123,99.95,99.5 + schema: + type: string + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get SLO report + tags: + - Service Level Objectives + x-sunset: '2027-01-25' + x-unstable: '**Note**: This feature is in private beta and is no longer accepting requests for access.' + /api/v2/slo/report/{report_id}/status: + get: + deprecated: true + description: Get the status of the SLO report job. + operationId: GetSLOReportJobStatus + parameters: + - $ref: '#/components/parameters/ReportID' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + status: completed + id: 00000000-0000-0000-0000-000000000002 + type: report_id + schema: + $ref: '#/components/schemas/SLOReportStatusGetResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get SLO report status + tags: + - Service Level Objectives + x-sunset: '2027-01-25' + x-unstable: '**Note**: This feature is in private beta and is no longer accepting requests for access.' + /api/v2/slo/{slo_id}/status: + get: + description: |- + Get the status of a Service Level Objective (SLO) for a given time period. + + This endpoint returns the current SLI value, error budget remaining, and other status information for the specified SLO. + operationId: GetSloStatus + parameters: + - $ref: '#/components/parameters/SloID' + - $ref: '#/components/parameters/FromTimestamp' + - $ref: '#/components/parameters/ToTimestamp' + - $ref: '#/components/parameters/DisableCorrections' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + error_budget_remaining: 99.5 + raw_error_budget_remaining: + unit: seconds + value: 86400.5 + sli: 99.95 + span_precision: 2 + state: ok + id: 00000000-0000-0000-0000-000000000000 + type: slo_status + schema: + $ref: '#/components/schemas/SloStatusResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get SLO status + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_read + x-unstable: |- + **Note**: This endpoint is in public beta and it's subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/statuspages: + get: + description: Lists all status pages for the organization. + operationId: ListStatusPages + parameters: + - description: Offset to use as the start of the page. + in: query + name: page[offset] + schema: + default: 0 + format: int64 + type: integer + - description: The number of status pages to return per page. + in: query + name: page[limit] + schema: + default: 50 + format: int64 + type: integer + - description: Filter status pages by exact domain prefix match. Returns at most one result. + in: query + name: filter[domain_prefix] + schema: + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + components: [] + domain_prefix: status-page-us1 + enabled: true + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + id: 00000000-0000-0000-0000-000000000001 + type: status_pages + schema: + $ref: '#/components/schemas/StatusPageArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List status pages + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + post: + description: Creates a new status page in an unpublished state. Use the dedicated [publish](#publish-status-page) status page endpoint to publish the page after creation. + operationId: CreateStatusPage + parameters: + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + components: + - name: API + position: 0 + type: component + - components: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + name: Web App + position: 1 + type: group + - name: Webhooks + position: 2 + type: component + domain_prefix: status-page-us1 + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + type: status_pages + schema: + $ref: '#/components/schemas/CreateStatusPageRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + domain_prefix: status-page-us1 + enabled: false + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + id: 00000000-0000-0000-0000-000000000002 + type: status_pages + schema: + $ref: '#/components/schemas/StatusPage' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/degradations: + get: + description: Lists all degradations for the organization. Optionally filter by status and page. + operationId: ListDegradations + parameters: + - description: Optional page id filter. + in: query + name: filter[page_id] + schema: + type: string + - description: Offset to use as the start of the page. + in: query + name: page[offset] + schema: + default: 0 + format: int64 + type: integer + - description: The number of degradations to return per page. + in: query + name: page[limit] + schema: + default: 50 + format: int64 + type: integer + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + - description: 'Optional degradation status filter. Supported values: investigating, identified, monitoring, resolved.' + in: query + name: filter[status] + schema: + type: string + - description: 'Sort order. Prefix with ''-'' for descending. Supported values: created_at, -created_at, modified_at, -modified_at.' + in: query + name: sort + schema: + type: string + - description: Optional source ID filter. Returns only degradations whose source matches this ID (for example, an incident ID). + in: query + name: filter[source_id] + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + components_affected: [] + created_at: '2024-01-01T00:00:00+00:00' + description: Our API is experiencing elevated latency. + modified_at: '2024-01-01T00:00:00+00:00' + status: investigating + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000005 + type: degradations + schema: + $ref: '#/components/schemas/DegradationArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List degradations + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + /api/v2/statuspages/maintenances: + get: + description: Lists all maintenances for the organization. Optionally filter by status and page. + operationId: ListMaintenances + parameters: + - description: Optional page id filter. + in: query + name: filter[page_id] + schema: + type: string + - description: Offset to use as the start of the page. + in: query + name: page[offset] + schema: + default: 0 + format: int64 + type: integer + - description: The number of maintenances to return per page. + in: query + name: page[limit] + schema: + default: 50 + format: int64 + type: integer + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + - description: 'Optional maintenance status filter. Supported values: scheduled, in_progress, completed.' + in: query + name: filter[status] + schema: + type: string + - description: 'Sort order. Prefix with ''-'' for descending. Supported values: created_at, -created_at, start_date, -start_date.' + in: query + name: sort + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + completed_date: '2024-01-01T01:00:00+00:00' + completed_description: We have completed maintenance on the API. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API. + scheduled_description: We will be performing maintenance on the API. + start_date: '2024-01-01T00:00:00+00:00' + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000016 + type: maintenances + schema: + $ref: '#/components/schemas/MaintenanceArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List maintenances + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + /api/v2/statuspages/{page_id}: + delete: + description: Deletes a status page by its ID. + operationId: DeleteStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + get: + description: Retrieves a specific status page by its ID. + operationId: GetStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + domain_prefix: status-page-us1 + enabled: true + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + id: 00000000-0000-0000-0000-000000000007 + type: status_pages + schema: + $ref: '#/components/schemas/StatusPage' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing status page's attributes. To publish and unpublish status pages, use the dedicated [publish](#publish-status-page) and [unpublish](#unpublish-status-page) status page endpoints. + operationId: UpdateStatusPage + parameters: + - description: Whether to delete existing subscribers when updating a status page's type. + in: query + name: delete_subscribers + schema: + default: false + type: boolean + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + domain_prefix: status-page-us1-east + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 East + subscriptions_enabled: false + type: internal + visualization_type: bars_only + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: status_pages + schema: + $ref: '#/components/schemas/PatchStatusPageRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components: [] + domain_prefix: status-page-us1-east + enabled: false + name: Status Page US1 East + subscriptions_enabled: false + type: internal + visualization_type: bars_only + id: 00000000-0000-0000-0000-000000000006 + type: status_pages + schema: + $ref: '#/components/schemas/StatusPage' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update status page + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/{page_id}/components: + get: + description: Lists all components for a status page. + operationId: ListComponents + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + name: Metrics Intake + position: 0 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000008 + type: components + schema: + $ref: '#/components/schemas/StatusPagesComponentArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List components + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + post: + description: Creates a new component. + operationId: CreateComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake + position: 0 + type: component + relationships: + group: + data: null + type: components + schema: + $ref: '#/components/schemas/CreateComponentRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake + position: 0 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000009 + type: components + schema: + $ref: '#/components/schemas/StatusPagesComponent' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/{page_id}/components/{component_id}: + delete: + description: Deletes a component by its ID. + operationId: DeleteComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the component. + in: path + name: component_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + get: + description: Retrieves a specific component by its ID. + operationId: GetComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the component. + in: path + name: component_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake + position: 0 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000012 + type: components + schema: + $ref: '#/components/schemas/StatusPagesComponent' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing component's attributes. + operationId: UpdateComponent + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the component. + in: path + name: component_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake Service + position: 4 + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: components + schema: + $ref: '#/components/schemas/PatchComponentRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Metrics Intake Service + position: 4 + status: operational + type: component + id: 00000000-0000-0000-0000-000000000011 + type: components + schema: + $ref: '#/components/schemas/StatusPagesComponent' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update component + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_write + /api/v2/statuspages/{page_id}/degradation_templates: + get: + description: Lists all degradation templates for a status page. + operationId: ListDegradationTemplates + parameters: + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: '#/components/schemas/DegradationTemplateArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List degradation templates + tags: + - Status Pages + post: + description: Creates a new degradation template. + operationId: CreateDegradationTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + type: degradation_templates + schema: + $ref: '#/components/schemas/CreateDegradationTemplateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: '#/components/schemas/DegradationTemplate' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create degradation template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/degradation_templates/{template_id}: + delete: + description: Deletes a degradation template by its ID (soft delete). + operationId: DeleteDegradationTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete degradation template + tags: + - Status Pages + get: + description: Retrieves a specific degradation template by its ID. + operationId: GetDegradationTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: '#/components/schemas/DegradationTemplate' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get degradation template + tags: + - Status Pages + patch: + description: Updates an existing degradation template's attributes. + operationId: UpdateDegradationTemplate + parameters: + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + degradation_title: Elevated API Latency for 40 minutes + name: Elevated API Latency + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: '#/components/schemas/PatchDegradationTemplateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + degradation_title: Elevated API Latency for 40 minutes + name: Elevated API Latency + updates: + - message: We are investigating the issue. + status: investigating + id: 00000000-0000-0000-0000-000000000003 + type: degradation_templates + schema: + $ref: '#/components/schemas/DegradationTemplate' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update degradation template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/degradations: + post: + description: Creates a new degradation. + operationId: CreateDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: Whether to notify page subscribers of the degradation. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: Our API is experiencing elevated latency. We are investigating the issue. + status: investigating + title: Elevated API Latency + type: degradations + schema: + $ref: '#/components/schemas/CreateDegradationRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 00000000-0000-0000-0000-000000000019 + status: degraded + created_at: '2024-01-01T00:00:00+00:00' + description: Our API is experiencing elevated latency. We are investigating the issue. + modified_at: '2024-01-01T00:00:00+00:00' + status: investigating + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000010 + type: degradations + schema: + $ref: '#/components/schemas/Degradation' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Create degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/degradations/backfill: + post: + description: Creates a backfilled degradation with predefined updates. + operationId: CreateBackfilledDegradation + parameters: + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + title: Past API Outage + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: We detected elevated error rates in the API. + started_at: '2026-04-27T13:37:31Z' + status: investigating + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: The issue has been resolved. + started_at: '2026-04-27T14:37:31Z' + status: resolved + type: degradations + schema: + $ref: '#/components/schemas/CreateBackfilledDegradationRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + created_at: '2026-04-27T13:37:31+00:00' + description: The issue has been resolved. + modified_at: '2026-04-27T14:37:31+00:00' + status: resolved + title: Past API Outage + updates: [] + id: 00000000-0000-0000-0000-000000000010 + type: degradations + schema: + $ref: '#/components/schemas/Degradation' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Create backfilled degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/degradations/{degradation_id}: + delete: + description: Deletes a degradation by its ID. + operationId: DeleteDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Delete degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + get: + description: Retrieves a specific degradation by its ID. + operationId: GetDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 00000000-0000-0000-0000-000000000018 + status: degraded + created_at: '2024-01-01T00:00:00+00:00' + description: Our API is experiencing elevated latency. We are investigating the issue. + modified_at: '2024-01-01T00:00:00+00:00' + status: investigating + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000004 + type: degradations + schema: + $ref: '#/components/schemas/Degradation' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing degradation's attributes. + operationId: UpdateDegradation + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: Whether to notify page subscribers of the degradation. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: We've deployed a fix and latency has returned to normal. This issue has been resolved. + status: resolved + title: Elevated API Latency in US1 + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: degradations + schema: + $ref: '#/components/schemas/PatchDegradationRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: + - id: 00000000-0000-0000-0000-000000000017 + status: operational + created_at: '2024-01-01T00:00:00+00:00' + description: We've deployed a fix and latency has returned to normal. + modified_at: '2024-01-01T00:00:00+00:00' + status: resolved + title: Elevated API Latency + updates: [] + id: 00000000-0000-0000-0000-000000000003 + type: degradations + schema: + $ref: '#/components/schemas/Degradation' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Update degradation + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/degradations/{degradation_id}/updates/{update_id}: + delete: + description: Soft-deletes a degradation update. + operationId: SoftDeleteDegradationUpdate + parameters: + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + format: uuid + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Soft delete degradation update + tags: + - Status Pages + patch: + description: Edits a specific degradation update. + operationId: EditDegradationUpdate + parameters: + - description: The ID of the degradation. + in: path + name: degradation_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, degradation, status_page.' + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We've identified the source of the latency increase and are deploying a fix. + status: identified + id: 00000000-0000-0000-0000-000000000000 + type: degradation_updates + schema: + $ref: '#/components/schemas/PatchDegradationUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We've identified the source of the latency increase and are deploying a fix. + status: identified + id: 00000000-0000-0000-0000-000000000000 + type: degradation_updates + schema: + $ref: '#/components/schemas/DegradationUpdate' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Edit degradation update + tags: + - Status Pages + /api/v2/statuspages/{page_id}/maintenance_templates: + get: + description: Lists all maintenance templates for a status page. + operationId: ListMaintenanceTemplates + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: '#/components/schemas/MaintenanceTemplateArray' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: List maintenance templates + tags: + - Status Pages + post: + description: Creates a new maintenance template. + operationId: CreateMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + type: maintenance_templates + schema: + $ref: '#/components/schemas/CreateMaintenanceTemplateRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: '#/components/schemas/MaintenanceTemplate' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Create maintenance template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/maintenance_templates/{template_id}: + delete: + description: Deletes a maintenance template by its ID (soft delete). + operationId: DeleteMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Delete maintenance template + tags: + - Status Pages + get: + description: Retrieves a specific maintenance template by its ID. + operationId: GetMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: '#/components/schemas/MaintenanceTemplate' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get maintenance template + tags: + - Status Pages + patch: + description: Updates an existing maintenance template's attributes. + operationId: UpdateMaintenanceTemplate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the degradation or maintenance template. + in: path + name: template_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + maintenance_title: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_description: We have completed maintenance on the API to improve performance. + component_ids: + - 1234abcd-12ab-34cd-56ef-123456abcdef + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + maintenance_title: API Maintenance + name: API Maintenance + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + id: 00000000-0000-0000-0000-000000000004 + type: maintenance_templates + schema: + $ref: '#/components/schemas/MaintenanceTemplate' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_write + summary: Update maintenance template + tags: + - Status Pages + /api/v2/statuspages/{page_id}/maintenances: + post: + description: Schedules a new maintenance. + operationId: CreateMaintenance + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: Whether to notify page subscribers of the maintenance. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: '2026-02-18T19:51:13.332360075Z' + completed_description: We have completed maintenance on the API to improve performance. + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + in_progress_description: We are currently performing maintenance on the API to improve performance. + scheduled_description: We will be performing maintenance on the API to improve performance. + start_date: '2026-02-18T19:21:13.332360075Z' + title: API Maintenance + type: maintenances + schema: + $ref: '#/components/schemas/CreateMaintenanceRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: '2024-01-01T01:00:00+00:00' + completed_description: We have completed maintenance on the API to improve performance. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API to improve performance. + scheduled_description: We will be performing maintenance on the API to improve performance. + start_date: '2024-01-01T00:00:00+00:00' + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000015 + type: maintenances + schema: + $ref: '#/components/schemas/Maintenance' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Schedule maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/backfill: + post: + description: Creates a backfilled maintenance with predefined updates. + operationId: CreateBackfilledMaintenance + parameters: + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + title: Past Database Maintenance + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: maintenance + description: Database maintenance is in progress. + started_at: '2026-04-27T13:37:31Z' + status: in_progress + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: Database maintenance has been completed. + started_at: '2026-04-27T14:37:31Z' + status: completed + type: maintenances + schema: + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: '2026-04-27T14:37:31+00:00' + completed_description: '' + components_affected: [] + in_progress_description: '' + scheduled_description: '' + start_date: '2026-04-27T13:37:31+00:00' + status: completed + title: Past Database Maintenance + id: 00000000-0000-0000-0000-000000000015 + type: maintenances + schema: + $ref: '#/components/schemas/Maintenance' + description: Created + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Create backfilled maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/{maintenance_id}: + get: + description: Retrieves a specific maintenance by its ID. + operationId: GetMaintenance + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: '2024-01-01T01:00:00+00:00' + completed_description: We have completed maintenance on the API. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API. + scheduled_description: We will be performing maintenance on the API. + start_date: '2024-01-01T00:00:00+00:00' + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000013 + type: maintenances + schema: + $ref: '#/components/schemas/Maintenance' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_settings_read + summary: Get maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_settings_read + patch: + description: Updates an existing maintenance's attributes. + operationId: UpdateMaintenance + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: Whether to notify page subscribers of the maintenance. + in: query + name: notify_subscribers + schema: + default: true + type: boolean + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: 'Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.' + in: query + name: include + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: '2026-02-18T20:01:13.332360075Z' + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + start_date: '2026-02-18T19:21:13.332360075Z' + title: API Maintenance + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: maintenances + schema: + $ref: '#/components/schemas/PatchMaintenanceRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + completed_date: '2024-01-01T01:00:00+00:00' + completed_description: We have completed maintenance on the API. + components_affected: [] + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + start_date: '2024-01-01T00:00:00+00:00' + status: scheduled + title: API Maintenance + id: 00000000-0000-0000-0000-000000000014 + type: maintenances + schema: + $ref: '#/components/schemas/Maintenance' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Update maintenance + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/maintenances/{maintenance_id}/updates/{update_id}: + patch: + description: Edits the message of a specific maintenance update. Editing is allowed regardless of the parent maintenance's status, including completed and canceled maintenances. + operationId: PatchMaintenanceUpdate + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance. + in: path + name: maintenance_id + required: true + schema: + format: uuid + type: string + - description: The ID of the maintenance update. + in: path + name: update_id + required: true + schema: + format: uuid + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: We have completed maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + schema: + $ref: '#/components/schemas/PatchMaintenanceUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + components_affected: [] + created_at: '2026-04-27T13:37:31+00:00' + description: We have completed maintenance on the API to improve performance. + manual_transition: true + modified_at: '2026-04-27T14:37:31+00:00' + started_at: '2026-04-27T13:37:31+00:00' + status: completed + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + schema: + $ref: '#/components/schemas/MaintenanceUpdate' + description: OK + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_incident_write + summary: Edit maintenance update + tags: + - Status Pages + x-permission: + operator: AND + permissions: + - status_pages_incident_write + /api/v2/statuspages/{page_id}/publish: + post: + description: Publishes a status page. For pages of type `public`, makes the status page available on the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, makes the status page available under the `status-pages/$domain_prefix/view` route within the Datadog organization and requires the `status_pages_internal_page_publish` permission. + operationId: PublishStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_internal_page_publish + - status_pages_public_page_publish + summary: Publish status page + tags: + - Status Pages + x-permission: + operator: OR + permissions: + - status_pages_public_page_publish + - status_pages_internal_page_publish + /api/v2/statuspages/{page_id}/unpublish: + post: + description: Unpublishes a status page. For pages of type `public`, removes the status page from the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, removes the `status-pages/$domain_prefix/view` route from the Datadog organization and requires the `status_pages_internal_page_publish` permission. + operationId: UnpublishStatusPage + parameters: + - description: The ID of the status page. + in: path + name: page_id + required: true + schema: + format: uuid + type: string + responses: + '204': + description: No Content + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - status_pages_internal_page_publish + - status_pages_public_page_publish + summary: Unpublish status page + tags: + - Status Pages + x-permission: + operator: OR + permissions: + - status_pages_public_page_publish + - status_pages_internal_page_publish + /api/v1/downtime: + get: + deprecated: true + description: Get all scheduled downtimes. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: ListDowntimesV1 + parameters: + - description: Only return downtimes that are active when the request is made. + in: query + name: current_only + required: false + schema: + type: boolean + - description: Return creator information. + in: query + name: with_creator + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + - active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduled maintenance + scope: + - env:staging + start: 1412792983 + schema: + type: array + items: + $ref: '#/components/schemas/Downtime' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get all downtimes + tags: + - Downtimes + x-permission: + operator: OR + permissions: + - monitors_read + post: + deprecated: true + description: Schedule a downtime. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: CreateDowntimeV1 + requestBody: + content: + application/json: + examples: + default: + value: + end: 1412793983 + message: Scheduling downtime for a database maintenance window. + monitor_tags: + - '*' + scope: + - env:staging + start: 1412792983 + timezone: America/New_York + schema: + $ref: '#/components/schemas/Downtime' + description: Schedule a downtime request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduling downtime for a database maintenance window. + scope: + - env:staging + start: 1412792983 + schema: + $ref: '#/components/schemas/Downtime' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Schedule a downtime + tags: + - Downtimes + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_downtime + /api/v1/downtime/cancel/by_scope: + post: + deprecated: true + description: Delete all downtimes that match the scope of `X`. **Note:** This only interacts with Downtimes created using v1 endpoints. This endpoint has been deprecated and will not be replaced. Please use v2 endpoints to find and cancel downtimes. + operationId: CancelDowntimesByScope + requestBody: + content: + application/json: + examples: + default: + value: + scope: host:myserver + schema: + $ref: '#/components/schemas/CancelDowntimesByScopeRequest' + description: Scope to cancel downtimes for. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + cancelled_ids: + - 123 + schema: + $ref: '#/components/schemas/CanceledDowntimesIds' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Downtimes not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Cancel downtimes by scope + tags: + - Downtimes + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_downtime + /api/v1/downtime/{downtime_id}: + delete: + deprecated: true + description: Cancel a downtime. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: CancelDowntimeV1 + parameters: + - description: ID of the downtime to cancel. + in: path + name: downtime_id + required: true + schema: + example: 123456 + format: int64 + type: integer + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Downtime not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Cancel a downtime + tags: + - Downtimes + x-permission: + operator: OR + permissions: + - monitors_downtime + get: + deprecated: true + description: Get downtime detail by `downtime_id`. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: GetDowntimeV1 + parameters: + - description: ID of the downtime to fetch. + in: path + name: downtime_id + required: true + schema: + example: 123456 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + active: true + disabled: false + end: 1412793983 + id: 1625 + message: Scheduled maintenance + scope: + - env:staging + start: 1412792983 + schema: + $ref: '#/components/schemas/Downtime' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Downtime not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_read + summary: Get a downtime + tags: + - Downtimes + x-permission: + operator: OR + permissions: + - monitors_read + put: + deprecated: true + description: Update a single downtime by `downtime_id`. **Note:** This endpoint has been deprecated. Please use v2 endpoints. + operationId: UpdateDowntimeV1 + parameters: + - description: ID of the downtime to update. + in: path + name: downtime_id + required: true + schema: + example: 123456 + format: int64 + type: integer + style: simple + requestBody: + content: + application/json: + examples: + default: + value: + end: 1412793983 + message: Updating downtime end time. + monitor_tags: + - '*' + scope: + - env:staging + start: 1412792983 + timezone: America/New_York + schema: + $ref: '#/components/schemas/Downtime' + description: Update a downtime request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + active: true + disabled: false + end: 1412793983 + id: 1625 + message: Updating downtime end time. + scope: + - env:staging + start: 1412792983 + schema: + $ref: '#/components/schemas/Downtime' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Downtime not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - monitors_downtime + summary: Update a downtime + tags: + - Downtimes + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - monitors_downtime + /api/v1/events: + get: + description: |- + The event stream can be queried and filtered by time, priority, sources and tags. + + **Notes**: + - If the event you’re querying contains markdown formatting of any kind, + you may see characters such as `%`,`\`,`n` in your output. + + - This endpoint returns a maximum of `1000` most recent results. To return additional results, + identify the last timestamp of the last result and set that as the `end` query time to + paginate the results. You can also use the page parameter to specify which set of `1000` results to return. + operationId: ListEventsV1 + parameters: + - description: POSIX timestamp. + in: query + name: start + required: true + schema: + format: int64 + type: integer + - description: POSIX timestamp. + in: query + name: end + required: true + schema: + format: int64 + type: integer + - description: Priority of your events, either `low` or `normal`. + in: query + name: priority + required: false + schema: + $ref: '#/components/schemas/EventPriorityV1' + - description: A comma separated string of sources. + in: query + name: sources + schema: + type: string + - description: A comma separated list indicating what tags, if any, should be used to filter the list of events. + example: host:host0 + in: query + name: tags + required: false + schema: + type: string + - description: |- + Set unaggregated to `true` to return all events within the specified [`start`,`end`] timeframe. + Otherwise if an event is aggregated to a parent event with a timestamp outside of the timeframe, + it won't be available in the output. Aggregated events with `is_aggregate=true` in the response will still be returned unless exclude_aggregate is set to `true.` + in: query + name: unaggregated + required: false + schema: + type: boolean + - description: |- + Set `exclude_aggregate` to `true` to only return unaggregated events where `is_aggregate=false` in the response. If the `exclude_aggregate` parameter is set to `true`, + then the unaggregated parameter is ignored and will be `true` by default. + in: query + name: exclude_aggregate + required: false + schema: + type: boolean + - description: |- + By default 1000 results are returned per request. Set page to the number of the page to return with `0` being the first page. The page parameter can only be used + when either unaggregated or exclude_aggregate is set to `true.` + in: query + name: page + required: false + schema: + format: int32 + maximum: 2147483647 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + events: + - alert_type: info + date_happened: 1674842440 + host: test.host + id: 123 + id_str: '123' + priority: normal + source_type_name: my_apps + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + url: /event/event?id=123 + status: ok + schema: + $ref: '#/components/schemas/EventListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Get a list of events + tags: + - Events + x-permission: + operator: OR + permissions: + - events_read + post: + description: |- + This endpoint allows you to post events to the stream. + Tag them, set priority and event aggregate them with other events. + operationId: CreateEventV1 + requestBody: + content: + application/json: + examples: + default: + value: + priority: normal + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + schema: + $ref: '#/components/schemas/EventCreateRequestV1' + description: Event request object + required: true + responses: + '202': + content: + application/json: + examples: + default: + value: + event: + alert_type: info + date_happened: 1674842440 + id: 123 + id_str: '123' + priority: normal + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + url: /event/event?id=123 + status: ok + schema: + $ref: '#/components/schemas/EventCreateResponseV1' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Post an event + tags: + - Events + x-codegen-request-body-name: body + /api/v1/events/{event_id}: + get: + description: |- + This endpoint allows you to query for event details. + + **Note**: If the event you’re querying contains markdown formatting of any kind, + you may see characters such as `%`,`\`,`n` in your output. + operationId: GetEventV1 + parameters: + - description: The ID of the event. + in: path + name: event_id + required: true + schema: + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + event: + alert_type: info + date_happened: 1674842440 + host: test.host + id: 123 + id_str: '123' + priority: normal + tags: + - environment:test + text: Oh boy! + title: Did you hear the news today? + url: /event/event?id=123 + status: ok + schema: + $ref: '#/components/schemas/EventResponseV1' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Authentication Error + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Item Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - events_read + summary: Get an event + tags: + - Events + x-permission: + operator: OR + permissions: + - events_read + /api/v1/slo: + get: + description: Get a list of service level objective objects for your organization. + operationId: ListSLOs + parameters: + - description: A comma separated list of the IDs of the service level objectives objects. + example: id1, id2, id3 + in: query + name: ids + required: false + schema: + type: string + - description: The query string to filter results based on SLO names. + example: monitor + in: query + name: query + required: false + schema: + type: string + - description: The query string to filter results based on a single SLO tag. + example: env:prod + in: query + name: tags_query + required: false + schema: + type: string + - description: The query string to filter results based on SLO numerator and denominator. + example: aws.elb.request_count + in: query + name: metrics_query + required: false + schema: + type: string + - description: The number of SLOs to return in the response. + in: query + name: limit + required: false + schema: + default: 1000 + format: int64 + type: integer + - description: The specific offset to use as the beginning of the returned response. + in: query + name: offset + required: false + schema: + format: int64 + type: integer + - description: Whether to return only deleted service level objective objects. + example: true + in: query + name: is_deleted + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: abc-123 + name: Custom Metric SLO + tags: + - env:prod + - app:core + thresholds: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + type: metric + errors: [] + schema: + $ref: '#/components/schemas/SLOListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get all SLOs + tags: + - Service Level Objectives + x-pagination: + limitParam: limit + pageOffsetParam: offset + resultsPath: data + x-permission: + operator: OR + permissions: + - slos_read + post: + description: Create a service level objective object. + operationId: CreateSLO + requestBody: + content: + application/json: + examples: + default: + value: + description: Track the availability of our custom metric. + name: Custom Metric SLO + query: + denominator: sum:my.custom.metric{*}.as_count() + numerator: sum:my.custom.metric{type:good}.as_count() + tags: + - env:prod + - app:core + thresholds: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + type: metric + schema: + $ref: '#/components/schemas/ServiceLevelObjectiveRequest' + description: Service level objective request object. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - description: Track the availability of our custom metric. + id: abc-123 + name: Custom Metric SLO + tags: + - env:prod + - app:core + thresholds: + - target: 95 + target_display: '95.0' + timeframe: 7d + type: metric + errors: [] + schema: + $ref: '#/components/schemas/SLOListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Create an SLO object + tags: + - Service Level Objectives + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - slos_write + /api/v1/slo/bulk_delete: + post: + description: |- + Delete (or partially delete) multiple service level objective objects. + + This endpoint facilitates deletion of one or more thresholds for one or more + service level objective objects. If all thresholds are deleted, the service level + objective object is deleted as well. + operationId: DeleteSLOTimeframeInBulk + requestBody: + content: + application/json: + examples: + default: + value: + id1: + - 7d + - 30d + id2: + - 7d + - 30d + schema: + $ref: '#/components/schemas/SLOBulkDelete' + description: Delete multiple service level objective objects request body. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + deleted: [] + updated: + - abc-123 + errors: [] + schema: + $ref: '#/components/schemas/SLOBulkDeleteResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Bulk Delete SLO Timeframes + tags: + - Service Level Objectives + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - slos_write + /api/v1/slo/can_delete: + get: + description: |- + Check if an SLO can be safely deleted. For example, + assure an SLO can be deleted without disrupting a dashboard. + operationId: CheckCanDeleteSLO + parameters: + - description: A comma separated list of the IDs of the service level objectives objects. + example: id1, id2, id3 + in: query + name: ids + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + ok: + - abc-123 + errors: {} + schema: + $ref: '#/components/schemas/CheckCanDeleteSLOResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/CheckCanDeleteSLOResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Check if SLOs can be safely deleted + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_read + /api/v1/slo/correction: + get: + description: Get all Service Level Objective corrections. + operationId: ListSLOCorrection + parameters: + - description: The specific offset to use as the beginning of the returned response. + in: query + name: offset + required: false + schema: + format: int64 + type: integer + - description: The number of SLO corrections to return in the response. Default is 25. + in: query + name: limit + required: false + schema: + default: 25 + format: int64 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionListResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get all SLO corrections + tags: + - Service Level Objective Corrections + x-pagination: + limitParam: limit + pageOffsetParam: offset + resultsPath: data + x-permission: + operator: OR + permissions: + - slos_read + post: + description: |- + Create an SLO correction. Use `slo_id` to apply the correction to a single SLO, or `slo_query` to apply the + correction to SLOs that match a query. Exactly one of `slo_id` or `slo_query` is required. + operationId: CreateSLOCorrection + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + description: Planned maintenance window for database upgrade. + end: 1600003600 + slo_id: sloId + start: 1600000000 + timezone: UTC + type: correction + slo_query: + value: + data: + attributes: + category: Scheduled Maintenance + description: Planned maintenance window for checkout services. + end: 1600003600 + slo_query: env:prod service:checkout + start: 1600000000 + timezone: UTC + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionCreateRequest' + description: Create an SLO Correction + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: SLO Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_corrections + summary: Create an SLO correction + tags: + - Service Level Objective Corrections + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - slos_corrections + /api/v1/slo/correction/{slo_correction_id}: + delete: + description: Permanently delete the specified SLO correction object. + operationId: DeleteSLOCorrection + parameters: + - description: The ID of the SLO correction object. + in: path + name: slo_correction_id + required: true + schema: + type: string + responses: + '204': + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Delete an SLO correction + tags: + - Service Level Objective Corrections + get: + description: Get an SLO correction. + operationId: GetSLOCorrection + parameters: + - description: The ID of the SLO correction object. + in: path + name: slo_correction_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Get an SLO correction for an SLO + tags: + - Service Level Objective Corrections + patch: + description: Update the specified SLO correction object. + operationId: UpdateSLOCorrection + parameters: + - description: The ID of the SLO correction object. + in: path + name: slo_correction_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + description: Updated correction for maintenance window. + end: 1600003600 + start: 1600000000 + timezone: UTC + type: correction + slo_query: + value: + data: + attributes: + category: Scheduled Maintenance + description: Updated correction for checkout services. + end: 1600003600 + slo_query: env:prod service:checkout + start: 1600000000 + timezone: UTC + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionUpdateRequest' + description: The edited SLO correction object. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Update an SLO correction + tags: + - Service Level Objective Corrections + x-codegen-request-body-name: body + /api/v1/slo/search: + get: + description: Get a list of service level objective objects for your organization. + operationId: SearchSLO + parameters: + - description: |- + The query string to filter results based on SLO names. + Some examples of queries include `service:` + and ``. + in: query + name: query + required: false + schema: + type: string + - description: The number of files to return in the response `[default=10]`. + in: query + name: page[size] + required: false + schema: + format: int64 + type: integer + - description: The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`. + in: query + name: page[number] + required: false + schema: + format: int64 + type: integer + - description: Whether or not to return facet information in the response `[default=false]`. + in: query + name: include_facets + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + slos: + - data: + attributes: + name: Example SLO + thresholds: + - target: 95 + target_display: '95' + timeframe: 7d + id: abc-123 + type: slo + type: service_level_objective_search_results + schema: + $ref: '#/components/schemas/SearchSLOResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Search for SLOs + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_read + /api/v1/slo/{slo_id}: + delete: + description: |- + Permanently delete the specified service level objective object. + + If an SLO is used in a dashboard, the `DELETE /v1/slo/` endpoint returns + a 409 conflict error because the SLO is referenced in a dashboard. + operationId: DeleteSLO + parameters: + - description: The ID of the service level objective. + in: path + name: slo_id + required: true + schema: + type: string + - description: Delete the monitor even if it's referenced by other resources (for example SLO, composite monitor). + in: query + name: force + required: false + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - abc-123 + errors: {} + schema: + $ref: '#/components/schemas/SLODeleteResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/SLODeleteResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Delete an SLO + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_write + get: + description: Get a service level objective object. + operationId: GetSLO + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + - description: Get the IDs of SLO monitors that reference this SLO. + example: true + in: query + name: with_configured_alert_ids + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + description: Track the availability of our custom metric. + id: abc-123 + name: Custom Metric SLO + tags: + - env:prod + thresholds: + - target: 95 + target_display: '95.0' + timeframe: 7d + type: metric + errors: [] + schema: + $ref: '#/components/schemas/SLOResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get an SLO's details + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_read + put: + description: Update the specified service level objective object. + operationId: UpdateSLO + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + description: Updated description for the SLO. + name: Custom Metric SLO + query: + denominator: sum:my.custom.metric{*}.as_count() + numerator: sum:my.custom.metric{type:good}.as_count() + tags: + - env:prod + - app:core + thresholds: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + type: metric + schema: + $ref: '#/components/schemas/ServiceLevelObjective' + description: The edited service level objective request object. + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - description: Updated description for the SLO. + id: abc-123 + name: Custom Metric SLO + tags: + - env:prod + thresholds: + - target: 95 + target_display: '95.0' + timeframe: 7d + type: metric + errors: [] + schema: + $ref: '#/components/schemas/SLOListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_write + summary: Update an SLO + tags: + - Service Level Objectives + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - slos_write + /api/v1/slo/{slo_id}/corrections: + get: + description: Get corrections applied to an SLO + operationId: GetSLOCorrections + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + category: Scheduled Maintenance + end: 1600003600 + slo_id: abc-123 + start: 1600000000 + timezone: UTC + id: abc-123 + type: correction + schema: + $ref: '#/components/schemas/SLOCorrectionListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get Corrections For an SLO + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_read + /api/v1/slo/{slo_id}/history: + get: + description: |- + Get a specific SLO’s history, regardless of its SLO type. + + The detailed history data is structured according to the source data type. + For example, metric data is included for event SLOs that use + the metric source, and monitor SLO types include the monitor transition history. + + **Note:** There are different response formats for event based and time based SLOs. + Examples of both are shown. + operationId: GetSLOHistory + parameters: + - description: The ID of the service level objective object. + in: path + name: slo_id + required: true + schema: + type: string + - description: The `from` timestamp for the query window in epoch seconds. + in: query + name: from_ts + required: true + schema: + format: int64 + type: integer + - description: The `to` timestamp for the query window in epoch seconds. + in: query + name: to_ts + required: true + schema: + format: int64 + type: integer + - description: The SLO target. If `target` is passed in, the response will include the remaining error budget and a timeframe value of `custom`. + in: query + name: target + schema: + exclusiveMaximum: true + exclusiveMinimum: true + format: double + maximum: 100 + minimum: 0 + type: number + - description: |- + Defaults to `true`. If any SLO corrections are applied and this parameter is set to `false`, + then the corrections will not be applied and the SLI values will not be affected. + in: query + name: apply_correction + required: false + schema: + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + from_ts: 1615323990 + overall: + sli_value: 99.99 + span_precision: 2 + thresholds: + 7d: + target: 95 + timeframe: 7d + to_ts: 1615928790 + type: metric + type_id: 1 + errors: null + schema: + $ref: '#/components/schemas/SLOHistoryResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponseV1' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - slos_read + summary: Get an SLO's history + tags: + - Service Level Objectives + x-permission: + operator: OR + permissions: + - slos_read +components: + schemas: + ListInvestigationsResponse: + description: Response for listing investigations. + properties: + data: + description: List of investigations. + items: + $ref: '#/components/schemas/ListInvestigationsResponseData' + type: array + links: + $ref: '#/components/schemas/ListInvestigationsResponseLinks' + meta: + $ref: '#/components/schemas/ListInvestigationsResponseMeta' + required: + - data + - meta + - links + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + TriggerInvestigationRequest: + description: Request to trigger a new investigation. + properties: + data: + $ref: '#/components/schemas/TriggerInvestigationRequestData' + required: + - data + type: object + TriggerInvestigationResponse: + description: Response after triggering an investigation. + properties: + data: + $ref: '#/components/schemas/TriggerInvestigationResponseData' + required: + - data + type: object + GetInvestigationResponse: + description: Response for a single Bits AI investigation. + properties: + data: + $ref: '#/components/schemas/GetInvestigationResponseData' + links: + $ref: '#/components/schemas/GetInvestigationResponseLinks' + required: + - data + - links + type: object + CasesResponse: + description: Response with cases + properties: + data: + description: Cases response data + items: + $ref: '#/components/schemas/Case' + type: array + meta: + $ref: '#/components/schemas/CasesResponseMeta' + type: object + CaseCreateRequest: + description: Case create request + properties: + data: + $ref: '#/components/schemas/CaseCreate' + required: + - data + type: object + CaseResponse: + description: Case response + properties: + data: + $ref: '#/components/schemas/Case' + type: object + CaseAggregateRequest: + description: Request payload for aggregating case counts with grouping. Use this to get faceted breakdowns of cases (for example, count of cases grouped by priority and status). + properties: + data: + $ref: '#/components/schemas/CaseAggregateRequestData' + required: + - data + type: object + CaseAggregateResponse: + description: Response containing aggregated case counts grouped by the requested fields. + properties: + data: + $ref: '#/components/schemas/CaseAggregateResponseData' + required: + - data + type: object + CaseBulkUpdateRequest: + description: Request payload for applying a single action (such as changing priority, status, or assignment) to multiple cases at once. + properties: + data: + $ref: '#/components/schemas/CaseBulkUpdateRequestData' + required: + - data + type: object + CaseCountResponse: + description: Response containing the total number of cases matching a query, optionally grouped by specified fields. + properties: + data: + $ref: '#/components/schemas/CaseCountResponseData' + required: + - data + type: object + CaseLinksResponse: + description: Response containing a list of case links. + properties: + data: + description: A list of case links. + items: + $ref: '#/components/schemas/CaseLink' + type: array + required: + - data + type: object + CaseLinkCreateRequest: + description: Request payload for creating a link between two entities. + properties: + data: + $ref: '#/components/schemas/CaseLinkCreate' + required: + - data + type: object + CaseLinkResponse: + description: Response containing a single case link. + properties: + data: + $ref: '#/components/schemas/CaseLink' + required: + - data + type: object + ProjectsResponse: + description: Response with projects. + properties: + data: + description: Projects response data. + items: + $ref: '#/components/schemas/Project' + type: array + type: object + ProjectCreateRequest: + description: Project create request. + properties: + data: + $ref: '#/components/schemas/ProjectCreate' + required: + - data + type: object + ProjectResponse: + description: Project response. + properties: + data: + $ref: '#/components/schemas/Project' + type: object + ProjectFavoritesResponse: + description: Response containing the list of projects the current user has favorited. + properties: + data: + description: List of project favorites. + items: + $ref: '#/components/schemas/ProjectFavorite' + type: array + required: + - data + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + ProjectUpdateRequest: + description: Project update request. + properties: + data: + $ref: '#/components/schemas/ProjectUpdate' + required: + - data + type: object + CaseNotificationRulesResponse: + description: Response with notification rules + properties: + data: + description: Notification rules data + items: + $ref: '#/components/schemas/CaseNotificationRule' + type: array + type: object + CaseNotificationRuleCreateRequest: + description: Notification rule create request + properties: + data: + $ref: '#/components/schemas/CaseNotificationRuleCreate' + required: + - data + type: object + CaseNotificationRuleResponse: + description: Notification rule response + properties: + data: + $ref: '#/components/schemas/CaseNotificationRule' + type: object + CaseNotificationRuleUpdateRequest: + description: Notification rule update request + properties: + data: + $ref: '#/components/schemas/CaseNotificationRuleUpdate' + required: + - data + type: object + AutomationRulesResponse: + description: Response containing a list of automation rules for a project. + properties: + data: + description: List of automation rules. + items: + $ref: '#/components/schemas/AutomationRule' + type: array + required: + - data + type: object + AutomationRuleCreateRequest: + description: Request payload for creating an automation rule. + properties: + data: + $ref: '#/components/schemas/AutomationRuleCreate' + required: + - data + type: object + AutomationRuleResponse: + description: Response containing a single automation rule. + properties: + data: + $ref: '#/components/schemas/AutomationRule' + required: + - data + type: object + AutomationRuleUpdateRequest: + description: Request payload for updating an automation rule. + properties: + data: + $ref: '#/components/schemas/AutomationRuleUpdate' + required: + - data + type: object + CaseTypesResponse: + description: Response containing a list of case types. + properties: + data: + description: List of case types + items: + $ref: '#/components/schemas/CaseTypeResource' + type: array + type: object + CaseTypeCreateRequest: + description: Request payload for creating a case type. + properties: + data: + $ref: '#/components/schemas/CaseTypeCreate' + required: + - data + type: object + CaseTypeResponse: + description: Response containing a single case type. + properties: + data: + $ref: '#/components/schemas/CaseTypeResource' + type: object + CustomAttributeConfigsResponse: + description: Response containing a list of custom attribute configurations. + properties: + data: + description: List of custom attribute configs of case type + items: + $ref: '#/components/schemas/CustomAttributeConfig' + type: array + type: object + CaseTypeUpdateRequest: + description: Request payload for updating a case type. + properties: + data: + $ref: '#/components/schemas/CaseTypeUpdate' + required: + - data + type: object + CustomAttributeConfigCreateRequest: + description: Request payload for creating a custom attribute configuration. + properties: + data: + $ref: '#/components/schemas/CustomAttributeConfigCreate' + required: + - data + type: object + CustomAttributeConfigResponse: + description: Response containing a single custom attribute configuration. + properties: + data: + $ref: '#/components/schemas/CustomAttributeConfig' + type: object + CustomAttributeConfigUpdateRequest: + description: Request payload for updating a custom attribute configuration. + properties: + data: + $ref: '#/components/schemas/CustomAttributeConfigUpdate' + required: + - data + type: object + CaseViewsResponse: + description: Response containing a list of case views. + properties: + data: + description: A list of case views. + items: + $ref: '#/components/schemas/CaseView' + type: array + required: + - data + type: object + CaseViewCreateRequest: + description: Request payload for creating a case view. + properties: + data: + $ref: '#/components/schemas/CaseViewCreate' + required: + - data + type: object + CaseViewResponse: + description: Response containing a single case view. + properties: + data: + $ref: '#/components/schemas/CaseView' + required: + - data + type: object + CaseViewUpdateRequest: + description: Request payload for updating a case view. + properties: + data: + $ref: '#/components/schemas/CaseViewUpdate' + required: + - data + type: object + CaseEmptyRequest: + description: Case empty request + properties: + data: + $ref: '#/components/schemas/CaseEmpty' + required: + - data + type: object + CaseAssignRequest: + description: Case assign request + properties: + data: + $ref: '#/components/schemas/CaseAssign' + required: + - data + type: object + CaseUpdateAttributesRequest: + description: Case update attributes request + properties: + data: + $ref: '#/components/schemas/CaseUpdateAttributes' + required: + - data + type: object + CaseCommentRequest: + description: Case comment request + properties: + data: + $ref: '#/components/schemas/CaseComment' + required: + - data + type: object + TimelineResponse: + description: Response containing the chronological list of timeline cells for a case. + properties: + data: + description: The `TimelineResponse` `data`. + items: + $ref: '#/components/schemas/TimelineCellResource' + type: array + type: object + CaseUpdateCommentRequest: + description: Request payload for updating a comment on a case timeline. + properties: + data: + $ref: '#/components/schemas/CaseUpdateComment' + required: + - data + type: object + CaseUpdateCustomAttributeRequest: + description: Case update custom attribute request + properties: + data: + $ref: '#/components/schemas/CaseUpdateCustomAttribute' + required: + - data + type: object + CaseUpdateDescriptionRequest: + description: Case update description request + properties: + data: + $ref: '#/components/schemas/CaseUpdateDescription' + required: + - data + type: object + CaseUpdateDueDateRequest: + description: Request payload for updating a case's due date. + properties: + data: + $ref: '#/components/schemas/CaseUpdateDueDate' + required: + - data + type: object + CaseInsightsRequest: + description: Request payload for adding or removing case insights. + properties: + data: + $ref: '#/components/schemas/CaseInsightsData' + required: + - data + type: object + CaseUpdatePriorityRequest: + description: Case update priority request + properties: + data: + $ref: '#/components/schemas/CaseUpdatePriority' + required: + - data + type: object + RelationshipToIncidentRequest: + description: Relationship to incident request + properties: + data: + $ref: '#/components/schemas/IncidentRelationshipData' + required: + - data + type: object + JiraIssueLinkRequest: + description: Jira issue link request + properties: + data: + $ref: '#/components/schemas/JiraIssueLinkData' + required: + - data + type: object + JiraIssueCreateRequest: + description: Jira issue creation request + properties: + data: + $ref: '#/components/schemas/JiraIssueCreateData' + required: + - data + type: object + NotebookCreateRequest: + description: Notebook creation request + properties: + data: + $ref: '#/components/schemas/NotebookCreateData' + required: + - data + type: object + ProjectRelationship: + description: Relationship to project. + properties: + data: + $ref: '#/components/schemas/ProjectRelationshipData' + required: + - data + type: object + ServiceNowTicketCreateRequest: + description: ServiceNow ticket creation request + properties: + data: + $ref: '#/components/schemas/ServiceNowTicketCreateData' + required: + - data + type: object + CaseUpdateResolvedReasonRequest: + description: Request payload for updating the resolution reason on a closed security case. + properties: + data: + $ref: '#/components/schemas/CaseUpdateResolvedReason' + required: + - data + type: object + CaseUpdateStatusRequest: + description: Case update status request + properties: + data: + $ref: '#/components/schemas/CaseUpdateStatus' + required: + - data + type: object + CaseUpdateTitleRequest: + description: Case update title request + properties: + data: + $ref: '#/components/schemas/CaseUpdateTitle' + required: + - data + type: object + CaseWatchersResponse: + description: Response containing the list of users watching a case. + properties: + data: + description: List of case watchers. + items: + $ref: '#/components/schemas/CaseWatcher' + type: array + required: + - data + type: object + ChangeRequestCreateRequest: + description: Request object to create a change request. + properties: + data: + $ref: '#/components/schemas/ChangeRequestCreateData' + required: + - data + type: object + ChangeRequestResponse: + description: Response object for a change request. + properties: + data: + $ref: '#/components/schemas/ChangeRequestResponseData' + included: + $ref: '#/components/schemas/ChangeRequestIncluded' + required: + - data + type: object + ChangeRequestUpdateRequest: + description: Request object to update a change request. + properties: + data: + $ref: '#/components/schemas/ChangeRequestUpdateData' + included: + $ref: '#/components/schemas/ChangeRequestUpdateIncluded' + required: + - data + type: object + ChangeRequestBranchCreateRequest: + description: Request object to create a branch for a change request. + properties: + data: + $ref: '#/components/schemas/ChangeRequestBranchCreateData' + required: + - data + type: object + ChangeRequestDecisionUpdateRequest: + description: Request object to update a change request decision. + properties: + data: + $ref: '#/components/schemas/ChangeRequestDecisionUpdateData' + included: + $ref: '#/components/schemas/ChangeRequestUpdateIncluded' + required: + - data + type: object + ListDowntimesResponse: + description: Response for retrieving all downtimes. + properties: + data: + description: An array of downtimes. + items: + $ref: '#/components/schemas/DowntimeResponseData' + type: array + included: + description: Array of objects related to the downtimes. + items: + $ref: '#/components/schemas/DowntimeResponseIncludedItem' + type: array + meta: + $ref: '#/components/schemas/DowntimeMeta' + type: object + DowntimeCreateRequest: + description: Request for creating a downtime. + properties: + data: + $ref: '#/components/schemas/DowntimeCreateRequestData' + required: + - data + type: object + DowntimeResponse: + description: |- + Downtiming gives you greater control over monitor notifications by + allowing you to globally exclude scopes from alerting. + Downtime settings, which can be scheduled with start and end times, + prevent all alerting related to specified Datadog tags. + properties: + data: + $ref: '#/components/schemas/DowntimeResponseData' + included: + description: Array of objects related to the downtime that the user requested. + items: + $ref: '#/components/schemas/DowntimeResponseIncludedItem' + type: array + type: object + DowntimeUpdateRequest: + description: Request for editing a downtime. + properties: + data: + $ref: '#/components/schemas/DowntimeUpdateRequestData' + required: + - data + type: object + IssuesSearchRequest: + description: Search issues request payload. + properties: + data: + $ref: '#/components/schemas/IssuesSearchRequestData' + required: + - data + type: object + IssuesSearchResponse: + description: Search issues response payload. + properties: + data: + description: Array of results matching the search query. + items: + $ref: '#/components/schemas/IssuesSearchResult' + type: array + included: + description: Array of resources related to the search results. + items: + $ref: '#/components/schemas/IssuesSearchResultIncluded' + type: array + type: object + IssueResponse: + description: Response containing error tracking issue data. + properties: + data: + $ref: '#/components/schemas/Issue' + included: + description: Array of resources related to the issue. + items: + $ref: '#/components/schemas/IssueIncluded' + type: array + type: object + IssueUpdateAssigneeRequest: + description: Update issue assignee request payload. + properties: + data: + $ref: '#/components/schemas/IssueUpdateAssigneeRequestData' + required: + - data + type: object + IssueUpdateStateRequest: + description: Update issue state request payload. + properties: + data: + $ref: '#/components/schemas/IssueUpdateStateRequestData' + required: + - data + type: object + EventsSort: + description: The sort parameters when querying events. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + EventsListResponse: + description: The response object with all events matching the request and pagination information. + properties: + data: + description: An array of events matching the request. + items: + $ref: '#/components/schemas/EventResponse' + type: array + links: + $ref: '#/components/schemas/EventsListResponseLinks' + meta: + $ref: '#/components/schemas/EventsResponseMetadata' + type: object + EventCreateRequestPayload: + description: Payload for creating an event. + properties: + data: + $ref: '#/components/schemas/EventCreateRequest' + required: + - data + type: object + EventCreateResponsePayload: + description: Event creation response. + properties: + data: + $ref: '#/components/schemas/EventCreateResponse' + links: + $ref: '#/components/schemas/EventCreateResponsePayloadLinks' + type: object + EventsListRequest: + description: The object sent with the request to retrieve a list of events from your organization. + properties: + filter: + $ref: '#/components/schemas/EventsQueryFilter' + options: + $ref: '#/components/schemas/EventsQueryOptions' + page: + $ref: '#/components/schemas/EventsRequestPage' + sort: + $ref: '#/components/schemas/EventsSort' + type: object + V2EventResponse: + description: Get an event response. + properties: + data: + $ref: '#/components/schemas/V2Event' + type: object + FormsResponse: + description: A response containing a list of forms. + properties: + data: + $ref: '#/components/schemas/FormDataList' + required: + - data + type: object + CreateFormRequest: + description: A request to create a form. + properties: + data: + $ref: '#/components/schemas/CreateFormData' + required: + - data + type: object + FormResponse: + description: A response containing a single form. + properties: + data: + $ref: '#/components/schemas/FormData' + required: + - data + type: object + DeleteFormResponse: + description: A response returned after deleting a form. + properties: + data: + $ref: '#/components/schemas/DeleteFormData' + type: object + UpdateFormRequest: + description: A request to update a form. + properties: + data: + $ref: '#/components/schemas/UpdateFormData' + required: + - data + type: object + CloneFormRequest: + description: A request to clone a form. + properties: + data: + $ref: '#/components/schemas/CloneFormData' + required: + - data + type: object + PublishFormRequest: + description: A request to publish a form version. + properties: + data: + $ref: '#/components/schemas/PublishFormData' + required: + - data + type: object + FormPublicationResponse: + description: A response containing a single form publication. + properties: + data: + $ref: '#/components/schemas/FormPublicationData' + required: + - data + type: object + UpsertFormVersionRequest: + description: A request to create or update a form version. + properties: + data: + $ref: '#/components/schemas/UpsertFormVersionData' + required: + - data + type: object + FormDataDefinition: + additionalProperties: {} + description: A JSON Schema definition that describes the form's data fields. + properties: + description: + description: A description shown to form respondents. + example: Welcome to the Engineering Experience Survey. + type: string + properties: + additionalProperties: {} + description: A map of field names to their JSON Schema definitions. + type: object + required: + description: List of field names that must be answered. + items: + type: string + type: array + title: + description: The title of the form schema. + example: Developer Experience Survey + type: string + type: + $ref: '#/components/schemas/FormDataDefinitionType' + type: object + FormVersionResponse: + description: A response containing a single form version. + properties: + data: + $ref: '#/components/schemas/FormVersionData' + required: + - data + type: object + UpsertAndPublishFormVersionRequest: + description: A request to upsert and publish a form version in a single transaction. + properties: + data: + $ref: '#/components/schemas/UpsertAndPublishFormVersionData' + required: + - data + type: object + IncidentsResponse: + description: Response with a list of incidents. + properties: + data: + description: An array of incidents. + example: + - attributes: + created: '2020-04-21T15:34:08.627205+00:00' + creation_idempotency_key: null + customer_impact_duration: 0 + customer_impact_end: null + customer_impact_scope: null + customer_impact_start: null + customer_impacted: false + detected: '2020-04-14T00:00:00+00:00' + incident_type_uuid: 00000000-0000-0000-0000-000000000001 + modified: '2020-09-17T14:16:58.696424+00:00' + public_id: 1 + resolved: null + severity: SEV-1 + time_to_detect: 0 + time_to_internal_response: 0 + time_to_repair: 0 + time_to_resolve: 0 + title: Example Incident + id: 00000000-aaaa-0000-0000-000000000000 + relationships: + attachments: + data: + - id: 00000000-9999-0000-0000-000000000000 + type: incident_attachments + - id: 00000000-1234-0000-0000-000000000000 + type: incident_attachments + commander_user: + data: + id: 00000000-0000-0000-cccc-000000000000 + type: users + created_by_user: + data: + id: 00000000-0000-0000-cccc-000000000000 + type: users + integrations: + data: + - id: 00000000-0000-0000-4444-000000000000 + type: incident_integrations + - id: 00000000-0000-0000-5555-000000000000 + type: incident_integrations + last_modified_by_user: + data: + id: 00000000-0000-0000-cccc-000000000000 + type: users + type: incidents + - attributes: + created: '2020-04-21T15:34:08.627205+00:00' + creation_idempotency_key: null + customer_impact_duration: 0 + customer_impact_end: null + customer_impact_scope: null + customer_impact_start: null + customer_impacted: false + detected: '2020-04-14T00:00:00+00:00' + incident_type_uuid: 00000000-0000-0000-0000-000000000002 + modified: '2020-09-17T14:16:58.696424+00:00' + public_id: 2 + resolved: null + severity: SEV-5 + time_to_detect: 0 + time_to_internal_response: 0 + time_to_repair: 0 + time_to_resolve: 0 + title: Example Incident 2 + id: 00000000-1111-0000-0000-000000000000 + relationships: + attachments: + data: + - id: 00000000-9999-0000-0000-000000000000 + type: incident_attachments + commander_user: + data: + id: 00000000-aaaa-0000-0000-000000000000 + type: users + created_by_user: + data: + id: 00000000-aaaa-0000-0000-000000000000 + type: users + integrations: + data: + - id: 00000000-0000-0000-0001-000000000000 + type: incident_integrations + - id: 00000000-0000-0000-0002-000000000000 + type: incident_integrations + last_modified_by_user: + data: + id: 00000000-aaaa-0000-0000-000000000000 + type: users + type: incidents + items: + $ref: '#/components/schemas/IncidentResponseData' + type: array + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentResponseIncludedItem' + readOnly: true + type: array + meta: + $ref: '#/components/schemas/IncidentResponseMeta' + required: + - data + type: object + IncidentCreateRequest: + description: Create request for an incident. + properties: + data: + $ref: '#/components/schemas/IncidentCreateData' + required: + - data + type: object + IncidentResponse: + description: Response with an incident. + properties: + data: + $ref: '#/components/schemas/IncidentResponseData' + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentResponseIncludedItem' + readOnly: true + type: array + required: + - data + type: object + IncidentHandlesResponse: + description: Response payload for a list of global incident handles, including handle data and related resources. + properties: + data: + $ref: '#/components/schemas/IncidentHandlesResponseData' + example: + - attributes: + name: '@incident-sev-1' + id: 12ceee6d-a7c0-4407-bc54-30e54140d7f0 + type: incident_handles + included: + $ref: '#/components/schemas/IncidentHandleIncludedResponse' + required: + - data + type: object + IncidentHandleRequest: + description: Request payload for creating or updating a global incident handle. + properties: + data: + $ref: '#/components/schemas/IncidentHandleDataRequest' + required: + - data + type: object + IncidentHandleResponse: + description: Response payload for a single incident handle, including the handle data and related resources. + properties: + data: + $ref: '#/components/schemas/IncidentHandleDataResponse' + included: + $ref: '#/components/schemas/IncidentHandleIncludedResponse' + required: + - data + type: object + GlobalIncidentSettingsResponse: + description: Response payload containing global incident settings. + properties: + data: + $ref: '#/components/schemas/GlobalIncidentSettingsDataResponse' + required: + - data + type: object + GlobalIncidentSettingsRequest: + description: Request payload for updating global incident settings. + properties: + data: + $ref: '#/components/schemas/GlobalIncidentSettingsDataRequest' + required: + - data + type: object + IncidentGoogleChatConfigurationRequest: + description: Request payload for creating a Google Chat configuration. + properties: + data: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationDataRequest' + required: + - data + type: object + IncidentGoogleChatConfigurationResponse: + description: Response with a Google Chat configuration. + properties: + data: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationDataResponse' + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentGoogleChatConfigurationPatchRequest: + description: Request payload for patching a Google Chat configuration. + properties: + data: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationPatchDataRequest' + required: + - data + type: object + IncidentGoogleMeetConfigurationRequest: + description: Request payload for creating a Google Meet configuration. + properties: + data: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationDataRequest' + required: + - data + type: object + IncidentGoogleMeetConfigurationResponse: + description: Response with a Google Meet configuration. + properties: + data: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationDataResponse' + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentGoogleMeetConfigurationPatchRequest: + description: Request payload for patching a Google Meet configuration. + properties: + data: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationPatchDataRequest' + required: + - data + type: object + IncidentImpactFieldsResponse: + description: Response with a list of impact fields. + properties: + data: + description: List of impact fields. + items: + $ref: '#/components/schemas/IncidentImpactFieldDataResponse' + type: array + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentImpactFieldRequest: + description: Request payload for creating an impact field. + properties: + data: + $ref: '#/components/schemas/IncidentImpactFieldDataRequest' + required: + - data + type: object + IncidentImpactFieldResponse: + description: Response with a single impact field. + properties: + data: + $ref: '#/components/schemas/IncidentImpactFieldDataResponse' + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentNotificationRuleArray: + description: Response with notification rules. + properties: + data: + description: The `NotificationRuleArray` `data`. + items: + $ref: '#/components/schemas/IncidentNotificationRuleResponseData' + type: array + included: + description: Related objects that are included in the response. + items: + $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' + type: array + meta: + $ref: '#/components/schemas/IncidentNotificationRuleArrayMeta' + required: + - data + type: object + CreateIncidentNotificationRuleRequest: + description: Create request for a notification rule. + properties: + data: + $ref: '#/components/schemas/IncidentNotificationRuleCreateData' + required: + - data + type: object + IncidentNotificationRule: + description: Response with a notification rule. + properties: + data: + $ref: '#/components/schemas/IncidentNotificationRuleResponseData' + included: + description: Related objects that are included in the response. + items: + $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' + type: array + required: + - data + type: object + PutIncidentNotificationRuleRequest: + description: Put request for a notification rule. + properties: + data: + $ref: '#/components/schemas/IncidentNotificationRuleUpdateData' + required: + - data + type: object + IncidentNotificationTemplateArray: + description: Response with notification templates. + properties: + data: + description: The `NotificationTemplateArray` `data`. + items: + $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' + type: array + included: + description: Related objects that are included in the response. + items: + $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' + type: array + meta: + $ref: '#/components/schemas/IncidentNotificationTemplateArrayMeta' + required: + - data + type: object + CreateIncidentNotificationTemplateRequest: + description: Create request for a notification template. + properties: + data: + $ref: '#/components/schemas/IncidentNotificationTemplateCreateData' + required: + - data + type: object + IncidentNotificationTemplate: + description: Response with a notification template. + properties: + data: + $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' + included: + description: Related objects that are included in the response. + items: + $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' + type: array + required: + - data + type: object + PatchIncidentNotificationTemplateRequest: + description: Update request for a notification template. + properties: + data: + $ref: '#/components/schemas/IncidentNotificationTemplateUpdateData' + required: + - data + type: object + PostmortemTemplatesResponse: + description: Response containing a list of postmortem templates. + properties: + data: + description: An array of postmortem template data objects. + items: + $ref: '#/components/schemas/PostmortemTemplateDataResponse' + type: array + required: + - data + type: object + PostmortemTemplateRequest: + description: Request body for creating or updating a postmortem template. + properties: + data: + $ref: '#/components/schemas/PostmortemTemplateDataRequest' + required: + - data + type: object + PostmortemTemplateResponse: + description: Response containing a single postmortem template. + properties: + data: + $ref: '#/components/schemas/PostmortemTemplateDataResponse' + required: + - data + type: object + IncidentRulesResponse: + description: Response with a list of incident rules. + properties: + data: + description: List of incident rules. + items: + $ref: '#/components/schemas/IncidentRuleDataResponse' + type: array + required: + - data + type: object + IncidentRuleRequest: + description: Request payload for creating an incident rule. + properties: + data: + $ref: '#/components/schemas/IncidentRuleDataRequest' + required: + - data + type: object + IncidentRuleResponse: + description: Response with a single incident rule. + properties: + data: + $ref: '#/components/schemas/IncidentRuleDataResponse' + required: + - data + type: object + IncidentRulePatchRequest: + description: Request payload for patching an incident rule. + properties: + data: + $ref: '#/components/schemas/IncidentRulePatchDataRequest' + required: + - data + type: object + IncidentTypeListResponse: + description: Response with a list of incident types. + properties: + data: + description: An array of incident type objects. + items: + $ref: '#/components/schemas/IncidentTypeObject' + type: array + required: + - data + type: object + IncidentTypeCreateRequest: + description: Create request for an incident type. + properties: + data: + $ref: '#/components/schemas/IncidentTypeCreateData' + required: + - data + type: object + IncidentTypeResponse: + description: Incident type response data. + properties: + data: + $ref: '#/components/schemas/IncidentTypeObject' + required: + - data + type: object + IncidentOrgSettingsListResponse: + description: Response with a list of incident org settings resources. + properties: + data: + description: List of incident org settings resources. + items: + $ref: '#/components/schemas/IncidentOrgSettingsDataResponse' + type: array + required: + - data + type: object + IncidentTypePatchRequest: + description: Patch request for an incident type. + properties: + data: + $ref: '#/components/schemas/IncidentTypePatchData' + required: + - data + type: object + IncidentOrgSettingsResponse: + description: Response with a single incident org settings resource. + properties: + data: + $ref: '#/components/schemas/IncidentOrgSettingsDataResponse' + required: + - data + type: object + IncidentUserDefinedFieldListResponse: + description: Response containing a list of incident user-defined fields. + properties: + data: + description: An array of user-defined field objects. + items: + $ref: '#/components/schemas/IncidentUserDefinedFieldResponseData' + type: array + meta: + $ref: '#/components/schemas/IncidentUserDefinedFieldListMeta' + required: + - data + - meta + type: object + IncidentUserDefinedFieldCreateRequest: + description: Request body for creating an incident user-defined field. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedFieldCreateData' + required: + - data + type: object + IncidentUserDefinedFieldResponse: + description: Response containing a single incident user-defined field. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedFieldResponseData' + required: + - data + type: object + IncidentUserDefinedFieldUpdateRequest: + description: Request body for updating an incident user-defined field. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedFieldUpdateData' + required: + - data + type: object + IncidentUserDefinedRolesResponse: + description: Response with a list of incident user-defined roles. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedRolesDataResponse' + included: + $ref: '#/components/schemas/IncidentUserDefinedRoleIncludedResponse' + required: + - data + type: object + IncidentUserDefinedRoleRequest: + description: Request for creating an incident user-defined role. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedRoleDataRequest' + required: + - data + type: object + IncidentUserDefinedRoleResponse: + description: Response with a single incident user-defined role. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedRoleDataResponse' + included: + $ref: '#/components/schemas/IncidentUserDefinedRoleIncludedResponse' + required: + - data + type: object + IncidentUserDefinedRolePatchRequest: + description: Request for updating an incident user-defined role. + properties: + data: + $ref: '#/components/schemas/IncidentUserDefinedRolePatchDataRequest' + required: + - data + type: object + IncidentImportRequest: + description: Import request for an incident. Used to import historical incidents from external systems. + properties: + data: + $ref: '#/components/schemas/IncidentImportRequestData' + required: + - data + type: object + IncidentImportResponse: + description: Response with an incident. + properties: + data: + $ref: '#/components/schemas/IncidentImportResponseData' + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentImportResponseIncludedItem' + readOnly: true + type: array + required: + - data + type: object + IncidentSearchResponse: + description: Response with incidents and facets. + properties: + data: + $ref: '#/components/schemas/IncidentSearchResponseData' + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentResponseIncludedItem' + readOnly: true + type: array + meta: + $ref: '#/components/schemas/IncidentSearchResponseMeta' + required: + - data + type: object + IncidentUpdateRequest: + description: Update request for an incident. + properties: + data: + $ref: '#/components/schemas/IncidentUpdateData' + required: + - data + type: object + IncidentAIPostmortemResponse: + description: Response with an AI-generated incident postmortem. + properties: + data: + $ref: '#/components/schemas/IncidentAIPostmortemDataResponse' + required: + - data + type: object + AttachmentArray: + description: A list of incident attachments. + properties: + data: + description: An array of attachment data objects. + items: + $ref: '#/components/schemas/AttachmentData' + type: array + included: + description: A list of related objects included in the response. + items: + $ref: '#/components/schemas/AttachmentIncluded' + type: array + required: + - data + type: object + CreateAttachmentRequest: + description: Create request for an attachment. + properties: + data: + $ref: '#/components/schemas/CreateAttachmentRequestData' + type: object + Attachment: + description: An attachment response containing the attachment data and related objects. + properties: + data: + $ref: '#/components/schemas/AttachmentData' + included: + description: A list of related objects included in the response. + items: + $ref: '#/components/schemas/AttachmentIncluded' + type: array + type: object + PostmortemAttachmentRequest: + description: Request body for creating a postmortem attachment. + properties: + data: + $ref: '#/components/schemas/PostmortemAttachmentRequestData' + required: + - data + type: object + PatchAttachmentRequest: + description: Request to update an attachment. + properties: + data: + $ref: '#/components/schemas/PatchAttachmentRequestData' + type: object + IncidentCreatePageFromIncidentRequest: + description: Request payload for creating a page from an incident. + properties: + data: + $ref: '#/components/schemas/IncidentCreatePageFromIncidentDataRequest' + required: + - data + type: object + IncidentPageUUIDResponse: + description: Response with a page UUID. + properties: + data: + $ref: '#/components/schemas/IncidentPageUUIDDataResponse' + required: + - data + type: object + IncidentConfigurationPatchRequest: + description: Request payload for patching an incident configuration. + properties: + data: + $ref: '#/components/schemas/IncidentConfigurationPatchDataRequest' + required: + - data + type: object + IncidentConfigurationResponse: + description: Response with an incident configuration. + properties: + data: + $ref: '#/components/schemas/IncidentConfigurationDataResponse' + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentConfigurationRequest: + description: Request payload for creating an incident configuration. + properties: + data: + $ref: '#/components/schemas/IncidentConfigurationDataRequest' + required: + - data + type: object + IncidentImpactsResponse: + description: Response with a list of incident impacts. + properties: + data: + description: An array of incident impacts. + items: + $ref: '#/components/schemas/IncidentImpactResponseData' + type: array + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentImpactCreateRequest: + description: Create request for an incident impact. + properties: + data: + $ref: '#/components/schemas/IncidentImpactCreateData' + required: + - data + type: object + IncidentImpactResponse: + description: Response with an incident impact. + properties: + data: + $ref: '#/components/schemas/IncidentImpactResponseData' + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentImpactPatchRequest: + description: Patch request for an incident impact. + properties: + data: + $ref: '#/components/schemas/IncidentImpactPatchData' + required: + - data + type: object + IncidentCreateOnCallPageRequest: + description: Request payload for creating an on-call page from an incident. + properties: + data: + $ref: '#/components/schemas/IncidentCreateOnCallPageDataRequest' + required: + - data + type: object + IncidentOnCallPageLinkRequest: + description: Request payload for linking an on-call page to an incident. + properties: + data: + $ref: '#/components/schemas/IncidentOnCallPageDataRequest' + required: + - data + type: object + IncidentIntegrationMetadataResponse: + description: Response with an incident integration metadata. + properties: + data: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponseIncludedItem' + readOnly: true + type: array + required: + - data + type: object + IncidentIntegrationMetadataListResponse: + description: Response with a list of incident integration metadata. + properties: + data: description: An array of incident integration metadata. items: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' + $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' + type: array + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentIntegrationMetadataResponseIncludedItem' + readOnly: true + type: array + meta: + $ref: '#/components/schemas/IncidentResponseMeta' + required: + - data + type: object + IncidentIntegrationMetadataCreateRequest: + description: Create request for an incident integration metadata. + properties: + data: + $ref: '#/components/schemas/IncidentIntegrationMetadataCreateData' + required: + - data + type: object + IncidentIntegrationMetadataPatchRequest: + description: Patch request for an incident integration metadata. + properties: + data: + $ref: '#/components/schemas/IncidentIntegrationMetadataPatchData' + required: + - data + type: object + IncidentTodoListResponse: + description: Response with a list of incident todos. + properties: + data: + description: An array of incident todos. + items: + $ref: '#/components/schemas/IncidentTodoResponseData' + type: array + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' + readOnly: true + type: array + meta: + $ref: '#/components/schemas/IncidentResponseMeta' + required: + - data + type: object + IncidentTodoCreateRequest: + description: Create request for an incident todo. + properties: + data: + $ref: '#/components/schemas/IncidentTodoCreateData' + required: + - data + type: object + IncidentTodoResponse: + description: Response with an incident todo. + properties: + data: + $ref: '#/components/schemas/IncidentTodoResponseData' + included: + description: Included related resources that the user requested. + items: + $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' + readOnly: true + type: array + required: + - data + type: object + IncidentTodoPatchRequest: + description: Patch request for an incident todo. + properties: + data: + $ref: '#/components/schemas/IncidentTodoPatchData' + required: + - data + type: object + IncidentRespondersResponse: + description: Response with a list of incident responders. + properties: + data: + description: List of incident responders. + items: + $ref: '#/components/schemas/IncidentResponderDataResponse' + type: array + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentResponderRequest: + description: Request payload for creating an incident responder. + properties: + data: + $ref: '#/components/schemas/IncidentResponderDataRequest' + required: + - data + type: object + IncidentResponderResponse: + description: Response with a single incident responder. + properties: + data: + $ref: '#/components/schemas/IncidentResponderDataResponse' + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentServiceNowRecordRequest: + description: Request payload for creating a ServiceNow record for an incident. + properties: + data: + $ref: '#/components/schemas/IncidentServiceNowRecordDataRequest' + required: + - data + type: object + IncidentTimestampOverridesResponse: + description: Response with a list of timestamp overrides. + properties: + data: + description: List of timestamp overrides. + items: + $ref: '#/components/schemas/IncidentTimestampOverrideDataResponse' + type: array + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentTimestampOverrideRequest: + description: Request payload for creating a timestamp override. + properties: + data: + $ref: '#/components/schemas/IncidentTimestampOverrideDataRequest' + required: + - data + type: object + IncidentTimestampOverrideResponse: + description: Response with a single timestamp override. + properties: + data: + $ref: '#/components/schemas/IncidentTimestampOverrideDataResponse' + included: + description: Included related resources. + items: + $ref: '#/components/schemas/IncidentUserData' + readOnly: true + type: array + required: + - data + type: object + IncidentTimestampOverridePatchRequest: + description: Request payload for patching a timestamp override. + properties: + data: + $ref: '#/components/schemas/IncidentTimestampOverridePatchDataRequest' + required: + - data + type: object + MaintenanceWindowsResponse: + description: Response containing a list of maintenance windows. + properties: + data: + description: List of maintenance windows. + items: + $ref: '#/components/schemas/MaintenanceWindow' + type: array + required: + - data + type: object + MaintenanceWindowCreateRequest: + description: Request payload for creating a maintenance window. + properties: + data: + $ref: '#/components/schemas/MaintenanceWindowCreate' + required: + - data + type: object + MaintenanceWindowResponse: + description: Response containing a single maintenance window. + properties: + data: + $ref: '#/components/schemas/MaintenanceWindow' + required: + - data + type: object + MaintenanceWindowUpdateRequest: + description: Request payload for updating a maintenance window. + properties: + data: + $ref: '#/components/schemas/MaintenanceWindowUpdate' + required: + - data + type: object + EscalationPolicyCreateRequest: + description: Represents a request to create a new escalation policy, including the policy data. + example: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - config: + schedule: + position: previous + id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + - assignment: round-robin + escalate_after_seconds: 3600 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-abb1-0000-0000-000000000000 + type: users + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + properties: + data: + $ref: '#/components/schemas/EscalationPolicyCreateRequestData' + required: + - data + type: object + EscalationPolicy: + description: Represents a complete escalation policy response, including policy data and optionally included related resources. + example: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: true + retries: 2 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + steps: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: steps + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + included: + - attributes: + avatar: '' + description: Team 1 description + handle: team1 + name: Team 1 + id: 00000000-da3a-0000-0000-000000000000 + type: teams + - attributes: + assignment: default + escalate_after_seconds: 3600 + id: 00000000-aba1-0000-0000-000000000000 + relationships: + targets: + data: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - id: 00000000-aba2-0000-0000-000000000000_previous + type: schedule_target + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + type: steps + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + - attributes: + position: previous + id: 00000000-aba2-0000-0000-000000000000_previous + relationships: + schedule: + data: + id: 00000000-aba2-0000-0000-000000000000 + type: schedules + type: schedule_target + - id: 00000000-aba3-0000-0000-000000000000 + type: teams + properties: + data: + $ref: '#/components/schemas/EscalationPolicyData' + included: + description: Provides any included related resources, such as steps or targets, returned with the policy. + items: + $ref: '#/components/schemas/EscalationPolicyIncluded' + type: array + type: object + EscalationPolicyUpdateRequest: + description: Represents a request to update an existing escalation policy, including the updated policy data. + example: + data: + attributes: + name: Escalation Policy 1 + resolve_page_on_policy_end: false + retries: 2 + steps: + - assignment: default + escalate_after_seconds: 3600 + id: 00000000-aba1-0000-0000-000000000000 + targets: + - id: 00000000-aba1-0000-0000-000000000000 + type: users + - id: 00000000-aba2-0000-0000-000000000000 + type: schedules + id: a3000000-0000-0000-0000-000000000000 + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: policies + properties: + data: + $ref: '#/components/schemas/EscalationPolicyUpdateRequestData' + required: + - data + type: object + CreatePageRequest: + description: Full request to trigger an On-Call Page. + example: + data: + attributes: + description: Page details. + tags: + - service:test + target: + identifier: my-team + type: team_handle + title: Page title + urgency: low + type: pages + properties: + data: + $ref: '#/components/schemas/CreatePageRequestData' + type: object + CreatePageResponse: + description: The full response object after creating a new On-Call Page. + example: + data: + id: 15e74b8b-f865-48d0-bcc5-453323ed2c8f + type: pages + properties: + data: + $ref: '#/components/schemas/CreatePageResponseData' + type: object + ScheduleCreateRequest: + description: The top-level request body for schedule creation, wrapping a `data` object. + example: + data: + attributes: + layers: + - effective_date: '2025-02-03T05:00:00Z' + end_date: '2025-12-31T00:00:00Z' + interval: + days: 1 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + rotation_start: '2025-02-01T00:00:00Z' + name: On-Call Schedule + time_zone: America/New_York + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + properties: + data: + $ref: '#/components/schemas/ScheduleCreateRequestData' + required: + - data + type: object + Schedule: + description: Top-level container for a schedule object, including both the `data` payload and any related `included` resources (such as teams, layers, or members). + example: + data: + attributes: + name: On-Call Schedule + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + layers: + data: + - id: 00000000-0000-0000-0000-000000000001 + type: layers + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + included: + - attributes: + avatar: '' + description: Team 1 description + handle: team1 + name: Team 1 + id: 00000000-da3a-0000-0000-000000000000 + type: teams + - attributes: + effective_date: '2025-02-03T05:00:00Z' + end_date: '2025-12-31T00:00:00Z' + interval: + days: 1 + name: Layer 1 + restrictions: + - end_day: friday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + rotation_start: '2025-02-01T00:00:00Z' + id: 00000000-0000-0000-0000-000000000001 + relationships: + members: + data: + - id: 00000000-0000-0000-0000-000000000002 + type: members + type: layers + - id: 00000000-0000-0000-0000-000000000002 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: members + - attributes: + email: foo@bar.com + name: User 1 + id: 00000000-aba1-0000-0000-000000000000 + type: users + properties: + data: + $ref: '#/components/schemas/ScheduleData' + included: + description: Any additional resources related to this schedule, such as teams and layers. + items: + $ref: '#/components/schemas/ScheduleDataIncludedItem' + type: array + type: object + ScheduleUpdateRequest: + description: A top-level wrapper for a schedule update request, referring to the `data` object with the new details. + example: + data: + attributes: + layers: + - effective_date: '2025-02-03T05:00:00Z' + end_date: '2025-12-31T00:00:00Z' + interval: + seconds: 3600 + members: + - user: + id: 00000000-aba1-0000-0000-000000000000 + name: Layer 1 + restrictions: + - end_day: friday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + rotation_start: '2025-02-01T00:00:00Z' + name: On-Call Schedule Updated + time_zone: America/New_York + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + relationships: + teams: + data: + - id: 00000000-da3a-0000-0000-000000000000 + type: teams + type: schedules + properties: + data: + $ref: '#/components/schemas/ScheduleUpdateRequestData' + required: + - data + type: object + Shift: + description: An on-call shift with its associated data and relationships. + example: + data: + attributes: + end: '2025-05-07T03:53:01.206662873Z' + start: '2025-05-07T02:53:01.206662814Z' + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + included: + - attributes: + email: foo@bar.com + name: User 1 + status: '' + id: 00000000-aba1-0000-0000-000000000000 + type: users + properties: + data: + $ref: '#/components/schemas/ShiftData' + nullable: true + included: + description: The `Shift` `included`. + items: + $ref: '#/components/schemas/ShiftIncluded' + type: array + type: object + ScheduleOnCallResponders: + description: Root object representing a schedule's on-call responders, grouped by position (previous, current, next), for a given point in time. + example: + data: + attributes: + scheduled_at: '2024-05-07T02:53:01.000000000Z' + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400 + relationships: + responders: + data: + - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current + type: schedule_oncall_responder + schedule: + data: + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: schedules + type: schedule_oncall_responders + included: + - attributes: + position: current + id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d-1715054400-current + relationships: + shifts: + data: + - id: 00000000-0000-0000-0000-000000000000 + type: shifts + type: schedule_oncall_responder + - attributes: + end: '2024-05-08T02:53:01.000000000Z' + start: '2024-05-07T02:53:01.000000000Z' + id: 00000000-0000-0000-0000-000000000000 + relationships: + user: + data: + id: 00000000-aba1-0000-0000-000000000000 + type: users + type: shifts + - attributes: + email: test@test.com + name: Test User + status: active + id: 00000000-aba1-0000-0000-000000000000 + type: users + properties: + data: + $ref: '#/components/schemas/ScheduleOnCallRespondersData' + included: + description: Related resources referenced in the responder groups' relationships, such as shifts, schedules, and users. + items: + $ref: '#/components/schemas/ScheduleOnCallRespondersIncluded' + type: array + type: object + TeamOnCallResponders: + description: Root object representing a team's on-call responder configuration. + example: + data: + id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 + relationships: + escalations: + data: + - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 + type: escalation_policy_steps + responders: + data: + - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 + type: users + type: team_oncall_responders + included: + - attributes: + email: test@test.com + name: Test User + status: active + id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 + type: users + - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 + relationships: + responders: + data: + - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 + type: users + type: escalation_policy_steps + properties: + data: + $ref: '#/components/schemas/TeamOnCallRespondersData' + included: + description: The `TeamOnCallResponders` `included`. + items: + $ref: '#/components/schemas/TeamOnCallRespondersIncluded' + type: array + type: object + TeamRoutingRules: + description: Represents a complete set of team routing rules, including data and optionally included related resources. + example: + data: + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + rules: + data: + - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a + type: team_routing_rules + - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a + type: team_routing_rules + type: team_routing_rules + included: + - attributes: + actions: null + query: tags.service:test + time_restriction: + restrictions: + - end_day: monday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + - end_day: tuesday + end_time: '17:00:00' + start_day: tuesday + start_time: '09:00:00' + time_zone: '' + urgency: high + id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a + relationships: + policy: + data: null + type: team_routing_rules + properties: + data: + $ref: '#/components/schemas/TeamRoutingRulesData' + included: + description: Provides related routing rules or other included resources. + items: + $ref: '#/components/schemas/TeamRoutingRulesIncluded' + type: array + type: object + TeamRoutingRulesRequest: + description: Represents a request to create or update team routing rules, including the data payload. + example: + data: + attributes: + rules: + - actions: null + policy_id: '' + query: tags.service:test + time_restriction: + restrictions: + - end_day: monday + end_time: '17:00:00' + start_day: monday + start_time: '09:00:00' + - end_day: tuesday + end_time: '17:00:00' + start_day: tuesday + start_time: '09:00:00' + time_zone: '' + urgency: high + - actions: + - channel: channel + type: send_slack_message + workspace: workspace + policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 + query: '' + time_restriction: null + urgency: low + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: team_routing_rules + properties: + data: + $ref: '#/components/schemas/TeamRoutingRulesRequestData' + type: object + ListNotificationChannelsResponse: + description: Response type for listing notification channels for a user + properties: + data: + description: Array of notification channel data objects. + items: + $ref: '#/components/schemas/NotificationChannelData' + type: array + type: object + CreateUserNotificationChannelRequest: + description: A top-level wrapper for creating a notification channel for a user + example: + data: + attributes: + config: + address: foo@bar.com + formats: + - html + type: email + type: notification_channels + properties: + data: + $ref: '#/components/schemas/CreateNotificationChannelData' + required: + - data + type: object + NotificationChannel: + description: A top-level wrapper for a user notification channel + example: + data: + attributes: + config: + address: foo@bar.com + formats: + - html + type: email + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + type: notification_channels + properties: + data: + $ref: '#/components/schemas/NotificationChannelData' + type: object + ListOnCallNotificationRulesResponse: + description: Response type for listing notification rules for a user + properties: + data: + description: Array of notification rule data objects. + items: + $ref: '#/components/schemas/OnCallNotificationRuleData' + type: array + included: + items: + $ref: '#/components/schemas/OnCallNotificationRulesIncluded' + type: array + type: object + CreateOnCallNotificationRuleRequest: + description: A top-level wrapper for creating a notification rule for a user + example: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + properties: + data: + $ref: '#/components/schemas/CreateOnCallNotificationRuleRequestData' + required: + - data + type: object + OnCallNotificationRule: + description: A top-level wrapper for a notification rule + example: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 27590dae-47be-4a7d-9abf-8f4e45124020 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + properties: + data: + $ref: '#/components/schemas/OnCallNotificationRuleData' + included: + items: + $ref: '#/components/schemas/OnCallNotificationRulesIncluded' + type: array + required: + - data + type: object + UpdateOnCallNotificationRuleRequest: + description: A top-level wrapper for updating a notification rule for a user + example: + data: + attributes: + category: high_urgency + channel_settings: + method: sms + type: phone + delay_minutes: 1 + id: 2462ace1-49e2-aab1-xc4f-29cc4ae1105n7 + relationships: + channel: + data: + id: 1562fab3-a8c2-49e2-8f3a-28dcda2405e2 + type: notification_channels + type: notification_rules + properties: + data: + $ref: '#/components/schemas/UpdateOnCallNotificationRuleRequestData' + required: + - data + type: object + ServiceDefinitionsListResponse: + description: Create service definitions response. + properties: + data: + description: Data representing service definitions. + items: + $ref: '#/components/schemas/ServiceDefinitionData' + type: array + type: object + ServiceDefinitionsCreateRequest: + description: Create service definitions request. + properties: + application: + description: Identifier for a group of related services serving a product feature, which the service is a part of. + example: my-app + type: string + ci-pipeline-fingerprints: + description: A set of CI fingerprints. + example: + - j88xdEy0J5lc + - eZ7LMljCk8vo + items: + description: A CI pipeline fingerprint string. + type: string + type: array + contacts: + description: A list of contacts related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Contact' + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + description: + description: A short description of the service. + example: My service description + type: string + extensions: + additionalProperties: {} + description: Extensions to v2.2 schema. + example: + myorg/extension: extensionValue + type: object + integrations: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Integrations' + languages: + description: 'The service''s programming language. Datadog recognizes the following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, and `c++`.' + example: + - dotnet + - go + - java + - js + - php + - python + - ruby + - c++ + items: + description: A programming language identifier. + type: string + type: array + lifecycle: + description: The current life cycle phase of the service. + example: sandbox + type: string + links: + description: A list of links related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Link' + type: array + schema-version: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Version' + tags: + description: A set of custom tags. + example: + - my:tag + - service:tag + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. + example: my-team + type: string + tier: + description: Importance of the service. + example: High + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Type' + dd-team: + description: Experimental feature. A Team handle that matches a Team in the Datadog Teams product. + example: my-team + type: string + docs: + description: A list of documentation related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Doc' + type: array + repos: + description: A list of code repositories related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Repo' + type: array + required: + - schema-version + - dd-service + type: object + example: |- + --- + schema-version: v2 + dd-service: my-service + ServiceDefinitionCreateResponse: + description: Create service definitions response. + properties: + data: + description: Create service definitions response payload. + items: + $ref: '#/components/schemas/ServiceDefinitionData' + type: array + type: object + ServiceDefinitionGetResponse: + description: Get service definition response. + properties: + data: + $ref: '#/components/schemas/ServiceDefinitionData' + type: object + SloReportCreateRequest: + description: The SLO report request body. + properties: + data: + $ref: '#/components/schemas/SloReportCreateRequestData' + required: + - data + type: object + SLOReportPostResponse: + description: The SLO report response. + properties: + data: + $ref: '#/components/schemas/SLOReportPostResponseData' + type: object + SLOReportStatusGetResponse: + description: The SLO report status response. + properties: + data: + $ref: '#/components/schemas/SLOReportStatusGetResponseData' + type: object + SloStatusResponse: + description: The SLO status response. + properties: + data: + $ref: '#/components/schemas/SloStatusData' + required: + - data + type: object + StatusPageArray: + description: Response object for a list of status pages. + properties: + data: + description: A list of status page data objects. + items: + $ref: '#/components/schemas/StatusPageData' + type: array + included: + description: The included related resources of a status page. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/StatusPageArrayIncluded' + type: array + meta: + $ref: '#/components/schemas/PaginationMeta' + required: + - data + type: object + CreateStatusPageRequest: + description: Request object for creating a status page. + example: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + components: + - name: API + position: 0 + type: component + - components: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + name: Web App + position: 1 + type: group + - name: Webhooks + position: 2 + type: component + domain_prefix: status-page-us1 + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 + subscriptions_enabled: true + type: public + visualization_type: bars_and_uptime_percentage + type: status_pages + properties: + data: + $ref: '#/components/schemas/CreateStatusPageRequestData' + type: object + StatusPage: + description: Response object for a single status page. + properties: + data: + $ref: '#/components/schemas/StatusPageData' + included: + description: The included related resources of a status page. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/StatusPageArrayIncluded' + type: array + type: object + DegradationArray: + description: Response object for a list of degradations. + properties: + data: + description: A list of degradation data objects. + items: + $ref: '#/components/schemas/DegradationData' + type: array + included: + description: The included related resources of a degradation. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + meta: + $ref: '#/components/schemas/PaginationMeta' + required: + - data + type: object + MaintenanceArray: + description: Response object for a list of maintenances. + properties: + data: + description: A list of maintenance data objects. + items: + $ref: '#/components/schemas/MaintenanceData' + type: array + included: + description: The included related resources of a maintenance. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + meta: + $ref: '#/components/schemas/PaginationMeta' + required: + - data + type: object + PatchStatusPageRequest: + description: Request object for updating a status page. + example: + data: + attributes: + company_logo: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + domain_prefix: status-page-us1-east + email_header_image: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + favicon: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + name: Status Page US1 East + subscriptions_enabled: false + type: internal + visualization_type: bars_only + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: status_pages + properties: + data: + $ref: '#/components/schemas/PatchStatusPageRequestData' + type: object + StatusPagesComponentArray: + description: Response object for a list of components. + properties: + data: + description: A list of component data objects. + items: + $ref: '#/components/schemas/StatusPagesComponentData' + type: array + included: + description: The included related resources of a component. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/StatusPagesComponentArrayIncluded' + type: array + required: + - data + type: object + CreateComponentRequest: + description: Request object for creating a component. + example: + data: + attributes: + name: Metrics Intake + position: 0 + type: component + relationships: + group: + data: null + type: components + properties: + data: + $ref: '#/components/schemas/CreateComponentRequestData' + type: object + StatusPagesComponent: + description: Response object for a single component. + properties: + data: + $ref: '#/components/schemas/StatusPagesComponentData' + included: + description: The included related resources of a component. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/StatusPagesComponentArrayIncluded' + type: array + type: object + PatchComponentRequest: + description: Request object for updating a component. + example: + data: + attributes: + name: Metrics Intake Service + position: 4 + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: components + properties: + data: + $ref: '#/components/schemas/PatchComponentRequestData' + type: object + DegradationTemplateArray: + description: Response object for a list of degradation templates. + properties: + data: + description: A list of degradation template data objects. + items: + $ref: '#/components/schemas/DegradationTemplateData' + type: array + included: + description: The included related resources of a degradation template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + required: + - data + type: object + CreateDegradationTemplateRequest: + description: Request object for creating a degradation template. + properties: + data: + $ref: '#/components/schemas/CreateDegradationTemplateRequestData' + type: object + DegradationTemplate: + description: Response object for a single degradation template. + properties: + data: + $ref: '#/components/schemas/DegradationTemplateData' + included: + description: The included related resources of a degradation template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + type: object + PatchDegradationTemplateRequest: + description: Request object for updating a degradation template. + properties: + data: + $ref: '#/components/schemas/PatchDegradationTemplateRequestData' + type: object + CreateDegradationRequest: + description: Request object for creating a degradation. + example: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: Our API is experiencing elevated latency. We are investigating the issue. + status: investigating + title: Elevated API Latency + type: degradations + properties: + data: + $ref: '#/components/schemas/CreateDegradationRequestData' + meta: + $ref: '#/components/schemas/DegradationRequestMeta' + description: The supported metadata for creating a degradation. + type: object + Degradation: + description: Response object for a single degradation. + properties: + data: + $ref: '#/components/schemas/DegradationData' + included: + description: The included related resources of a degradation. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + type: object + CreateBackfilledDegradationRequest: + description: Request object for creating a backfilled degradation. + example: + data: + attributes: + title: Past API Outage + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: We detected elevated error rates in the API. + started_at: '2026-04-27T13:37:31.038001628Z' + status: investigating + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + description: Root cause identified as a misconfigured deployment. + started_at: '2026-04-27T14:07:31.038001628Z' + status: identified + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: The issue has been resolved and API is operating normally. + started_at: '2026-04-27T14:37:31.038001628Z' + status: resolved + type: degradations + properties: + data: + $ref: '#/components/schemas/CreateBackfilledDegradationRequestData' + type: object + PatchDegradationRequest: + description: Request object for updating a degradation. + example: + data: + attributes: + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: We've deployed a fix and latency has returned to normal. This issue has been resolved. + status: resolved + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: degradations + properties: + data: + $ref: '#/components/schemas/PatchDegradationRequestData' + meta: + $ref: '#/components/schemas/DegradationRequestMeta' + description: The supported metadata for updating a degradation. + type: object + PatchDegradationUpdateRequest: + description: Request object for editing a degradation update. + example: + data: + attributes: + description: We've identified the source of the latency increase and are deploying a fix. + status: identified + id: 00000000-0000-0000-0000-000000000000 + type: degradation_updates + properties: + data: + $ref: '#/components/schemas/PatchDegradationUpdateRequestData' + type: object + DegradationUpdate: + description: Response object for a degradation update. + properties: + data: + $ref: '#/components/schemas/DegradationUpdateData' + included: + description: Resources related to the degradation update. + items: + $ref: '#/components/schemas/DegradationUpdateIncluded' + type: array + type: object + MaintenanceTemplateArray: + description: Response object for a list of maintenance templates. + properties: + data: + description: A list of maintenance template data objects. + items: + $ref: '#/components/schemas/MaintenanceTemplateData' + type: array + included: + description: The included related resources of a maintenance template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + required: + - data + type: object + CreateMaintenanceTemplateRequest: + description: Request object for creating a maintenance template. + properties: + data: + $ref: '#/components/schemas/CreateMaintenanceTemplateRequestData' + type: object + MaintenanceTemplate: + description: Response object for a single maintenance template. + properties: + data: + $ref: '#/components/schemas/MaintenanceTemplateData' + included: + description: The included related resources of a maintenance template. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + type: object + PatchMaintenanceTemplateRequest: + description: Request object for updating a maintenance template. + properties: + data: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestData' + type: object + CreateMaintenanceRequest: + description: Request object for creating a maintenance. + example: + data: + attributes: + completed_date: '2026-02-18T19:51:13.332360075Z' + completed_description: We have completed maintenance on the API to improve performance. + components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + in_progress_description: We are currently performing maintenance on the API to improve performance. + scheduled_description: We will be performing maintenance on the API to improve performance. + start_date: '2026-02-18T19:21:13.332360075Z' + title: API Maintenance + type: maintenances + properties: + data: + $ref: '#/components/schemas/CreateMaintenanceRequestData' + type: object + Maintenance: + description: Response object for a single maintenance. + properties: + data: + $ref: '#/components/schemas/MaintenanceData' + included: + description: The included related resources of a maintenance. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + type: object + CreateBackfilledMaintenanceRequest: + description: Request object for creating a backfilled maintenance. + example: + data: + attributes: + title: Past Database Maintenance + updates: + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: maintenance + description: Database maintenance is in progress. + started_at: '2026-04-27T13:37:31.038003786Z' + status: in_progress + - components_affected: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational + description: Database maintenance has been completed successfully. + started_at: '2026-04-27T14:37:31.038003786Z' + status: completed + type: maintenances + properties: + data: + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequestData' + type: object + PatchMaintenanceRequest: + description: Request object for updating a maintenance. + example: + data: + attributes: + completed_date: '2026-02-18T20:01:13.332360075Z' + in_progress_description: We are currently performing maintenance on the API to improve performance for 40 minutes. + scheduled_description: We will be performing maintenance on the API to improve performance for 40 minutes. + start_date: '2026-02-18T19:21:13.332360075Z' + title: API Maintenance + id: 1234abcd-12ab-34cd-56ef-123456abcdef + type: maintenances + properties: + data: + $ref: '#/components/schemas/PatchMaintenanceRequestData' + type: object + PatchMaintenanceUpdateRequest: + description: Request object for editing a maintenance update. + example: + data: + attributes: + description: We have completed maintenance on the API to improve performance. + id: 00000000-0000-0000-0000-000000000000 + type: maintenance_updates + properties: + data: + $ref: '#/components/schemas/PatchMaintenanceUpdateRequestData' + type: object + MaintenanceUpdate: + description: Response object for a maintenance update. + properties: + data: + $ref: '#/components/schemas/MaintenanceUpdateData' + type: object + Downtime: + description: |- + Downtiming gives you greater control over monitor notifications by + allowing you to globally exclude scopes from alerting. + Downtime settings, which can be scheduled with start and end times, + prevent all alerting related to specified Datadog tags. + properties: + active: + description: If a scheduled downtime currently exists. + example: true + readOnly: true + type: boolean + active_child: + $ref: '#/components/schemas/DowntimeChild' + canceled: + description: If a scheduled downtime is canceled. + example: 1412799983 + format: int64 + nullable: true + readOnly: true + type: integer + creator_id: + description: User ID of the downtime creator. + example: 123456 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + disabled: + description: If a downtime has been disabled. + example: false + type: boolean + downtime_type: + description: |- + `0` for a downtime applied on `*` or all, + `1` when the downtime is only scoped to hosts, + or `2` when the downtime is scoped to anything but hosts. + example: 2 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + end: + description: |- + POSIX timestamp to end the downtime. If not provided, + the downtime is in effect indefinitely until you cancel it. + example: 1412793983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1625 + format: int64 + readOnly: true + type: integer + message: + description: |- + A message to include with notifications for this downtime. + Email notifications can be sent to specific users by using the same `@username` notation as events. + example: Message on the downtime + nullable: true + type: string + monitor_id: + description: |- + A single monitor to which the downtime applies. + If not provided, the downtime applies to all monitors. + example: 123456 + format: int64 + nullable: true + type: integer + monitor_tags: + description: |- + A comma-separated list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match ALL provided monitor tags. + For example, `service:postgres` **AND** `team:frontend`. + example: + - '*' + items: + description: A monitor tag. + type: string + type: array + mute_first_recovery_notification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + notify_end_states: + $ref: '#/components/schemas/NotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/NotifyEndTypes' + parent_id: + description: ID of the parent Downtime. + example: 123 + format: int64 + nullable: true + type: integer + recurrence: + $ref: '#/components/schemas/DowntimeRecurrence' + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: + - env:staging + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: |- + POSIX timestamp to start the downtime. + If not provided, the downtime starts the moment it is created. + example: 1412792983 + format: int64 + type: integer + timezone: + description: The timezone in which to display the downtime's start and end times in Datadog applications. + example: America/New_York + type: string + updater_id: + description: ID of the last user that updated the downtime. + example: 123456 + format: int32 + maximum: 2147483647 + nullable: true + readOnly: true + type: integer + type: object + APIErrorResponseV1: + description: Error response object. + properties: + errors: + description: Array of errors returned by the API. + example: + - Bad Request + items: + description: Error description. + example: Bad Request + type: string + type: array + required: + - errors + type: object + CancelDowntimesByScopeRequest: + description: Cancel downtimes according to scope. + properties: + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: host:myserver + type: string + required: + - scope + type: object + CanceledDowntimesIds: + description: Object containing array of IDs of canceled downtimes. + properties: + cancelled_ids: + description: ID of downtimes that were canceled. + example: + - 123456789 + - 123456790 + items: + description: Integer representation of one downtime ID. + format: int64 + type: integer + type: array + type: object + EventPriorityV1: + description: The priority of the event. For example, `normal` or `low`. + enum: + - normal + - low + example: normal + nullable: true + type: string + x-enum-varnames: + - NORMAL + - LOW + EventListResponse: + description: An event list response. + properties: + events: + description: An array of events. + items: + $ref: '#/components/schemas/EventV1' + type: array + status: + description: A status. + type: string + type: object + EventCreateRequestV1: + description: Object representing an event. + properties: + aggregation_key: + description: |- + An arbitrary string to use for aggregation. Limited to 100 characters. + If you specify a key, all events using that key are grouped together in the Event Stream. + maxLength: 100 + type: string + alert_type: + $ref: '#/components/schemas/EventAlertType' + date_happened: + description: |- + POSIX timestamp of the event. Must be sent as an integer (that is no quotes). + Limited to events no older than 18 hours + format: int64 + type: integer + device_name: + description: A device name. + type: string + host: + description: |- + Host name to associate with the event. + Any tags associated with the host are also applied to this event. + type: string + priority: + $ref: '#/components/schemas/EventPriorityV1' + related_event_id: + description: ID of the parent event. Must be sent as an integer (that is no quotes). + format: int64 + type: integer + source_type_name: + description: |- + The type of event being posted. Option examples include nagios, hudson, jenkins, my_apps, chef, puppet, git, bitbucket, etc. + A complete list of source attribute values [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + type: string + tags: + description: A list of tags to apply to the event. + example: + - environment:test + items: + description: A tag. + type: string + type: array + text: + description: |- + The body of the event. Limited to 4000 characters. The text supports markdown. + To use markdown in the event text, start the text block with `%%% \n` and end the text block with `\n %%%`. + Use `msg_text` with the Datadog Ruby library. + example: Oh boy! + maxLength: 4000 + type: string + title: + description: The event title. + example: Did you hear the news today? + type: string + required: + - title + - text + type: object + EventCreateResponseV1: + description: Object containing an event response. + properties: + event: + $ref: '#/components/schemas/EventV1' + status: + description: A status. + type: string + type: object + EventResponseV1: + description: Object containing an event response. + properties: + event: + $ref: '#/components/schemas/EventV1' + status: + description: A status. + type: string + type: object + SLOListResponse: + description: A response with one or more service level objective. + properties: + data: + description: An array of service level objective objects. + items: + $ref: '#/components/schemas/ServiceLevelObjective' + type: array + errors: + description: |- + An array of error messages. Each endpoint documents how/whether this field is + used. + items: + description: The error message. + type: string + type: array + metadata: + $ref: '#/components/schemas/SLOListResponseMetadata' + type: object + ServiceLevelObjectiveRequest: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). + properties: + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + groups: + description: |- + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the `monitor_ids` field is one. + example: + - env:prod + - role:mysql + items: + description: A group name, for instance `env:prod`. + type: string + type: array + monitor_ids: + description: |- + A list of monitor IDs that defines the scope of a monitor service level + objective. **Required if type is `monitor`**. + items: + description: A monitor ID. + format: int64 + type: integer + type: array + name: + description: The name of the service level objective object. + example: Custom Metric SLO + type: string + query: + $ref: '#/components/schemas/ServiceLevelObjectiveQuery' + sli_specification: + $ref: '#/components/schemas/SLOSliSpec' + tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + example: + - env:prod + - app:core + items: + description: A tag to apply to your SLO. + type: string + type: array + target_threshold: + description: |- + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + example: 99.9 + format: double + type: number + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + items: + $ref: '#/components/schemas/SLOThreshold' + type: array + timeframe: + $ref: '#/components/schemas/SLOTimeframe' + type: + $ref: '#/components/schemas/SLOType' + warning_threshold: + description: |- + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. + example: 99.95 + format: double + type: number + required: + - name + - thresholds + - type + type: object + SLOBulkDelete: + additionalProperties: + description: An array of all SLO timeframes. + items: + $ref: '#/components/schemas/SLOTimeframe' + type: array + description: |- + A map of service level objective object IDs to arrays of timeframes, + which indicate the thresholds to delete for each ID. + example: + id1: + - 7d + - 30d + id2: + - 7d + - 30d + type: object + SLOBulkDeleteResponse: + description: |- + The bulk partial delete service level objective object endpoint + response. + + This endpoint operates on multiple service level objective objects, so + it may be partially successful. In such cases, the "data" and "error" + fields in this response indicate which deletions succeeded and failed. + properties: + data: + $ref: '#/components/schemas/SLOBulkDeleteResponseData' + errors: + description: Array of errors object returned. + items: + $ref: '#/components/schemas/SLOBulkDeleteError' + type: array + type: object + CheckCanDeleteSLOResponse: + description: A service level objective response containing the requested object. + properties: + data: + $ref: '#/components/schemas/CheckCanDeleteSLOResponseData' + errors: + additionalProperties: + description: Description of the service level objective reference. + type: string + description: A mapping of SLO id to it's current usages. + type: object + type: object + SLOCorrectionListResponse: + description: A list of SLO correction objects. + properties: + data: + description: The list of SLO corrections objects. + items: + $ref: '#/components/schemas/SLOCorrection' + type: array + meta: + $ref: '#/components/schemas/ResponseMetaAttributes' + type: object + SLOCorrectionCreateRequest: + description: An object that defines a correction to be applied to one or more SLOs. + properties: + data: + $ref: '#/components/schemas/SLOCorrectionCreateData' + type: object + SLOCorrectionResponse: + description: The response object of an SLO correction. + properties: + data: + $ref: '#/components/schemas/SLOCorrection' + type: object + SLOCorrectionUpdateRequest: + description: An object that defines a correction to be applied to an SLO. + properties: + data: + $ref: '#/components/schemas/SLOCorrectionUpdateData' + type: object + SearchSLOResponse: + description: A search SLO response containing results from the search query. + properties: + data: + $ref: '#/components/schemas/SearchSLOResponseData' + links: + $ref: '#/components/schemas/SearchSLOResponseLinks' + meta: + $ref: '#/components/schemas/SearchSLOResponseMeta' + type: object + SLODeleteResponse: + description: A response list of all service level objective deleted. + properties: + data: + description: An array containing the ID of the deleted service level objective object. + items: + description: ID of a deleted SLO. + type: string + type: array + errors: + additionalProperties: + description: Error preventing the SLO deletion. + type: string + description: An dictionary containing the ID of the SLO as key and a deletion error as value. + type: object + type: object + SLOResponse: + description: A service level objective response containing a single service level objective. + properties: + data: + $ref: '#/components/schemas/SLOResponseData' + errors: + description: |- + An array of error messages. Each endpoint documents how/whether this field is + used. + items: + description: The error message. + type: string + type: array + type: object + ServiceLevelObjective: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). + properties: + created_at: + description: |- + Creation timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + creator: + $ref: '#/components/schemas/CreatorV1' + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + groups: + description: |- + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the `monitor_ids` field is one. + example: + - env:prod + - role:mysql + items: + description: A group name, for instance `env:prod`. + type: string + type: array + id: + description: |- + A unique identifier for the service level objective object. + + Always included in service level objective responses. + readOnly: true + type: string + modified_at: + description: |- + Modification timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + monitor_ids: + description: |- + A list of monitor ids that defines the scope of a monitor service level + objective. **Required if type is `monitor`**. + items: + description: A monitor ID. + format: int64 + type: integer + type: array + monitor_tags: + description: |- + The union of monitor tags for all monitors referenced by the `monitor_ids` + field. + Always included in service level objective responses for monitor-based service level + objectives (but may be empty). Ignored in create/update requests. Does not + affect which monitors are included in the service level objective (that is + determined entirely by the `monitor_ids` field). + items: + description: A monitor tag. + type: string + type: array + name: + description: The name of the service level objective object. + example: Custom Metric SLO + type: string + query: + $ref: '#/components/schemas/ServiceLevelObjectiveQuery' + sli_specification: + $ref: '#/components/schemas/SLOSliSpec' + tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + example: + - env:prod + - app:core + items: + description: A tag to apply to your SLO. + type: string + type: array + target_threshold: + description: |- + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + example: 99.9 + format: double + type: number + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + items: + $ref: '#/components/schemas/SLOThreshold' + type: array + timeframe: + $ref: '#/components/schemas/SLOTimeframe' + type: + $ref: '#/components/schemas/SLOType' + warning_threshold: + description: |- + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. + example: 99.95 + format: double + type: number + required: + - name + - thresholds + - type + type: object + SLOHistoryResponse: + description: A service level objective history response. + properties: + data: + $ref: '#/components/schemas/SLOHistoryResponseData' + errors: + description: A list of errors while querying the history data for the service level objective. + items: + $ref: '#/components/schemas/SLOHistoryResponseError' + nullable: true + type: array + type: object + ListInvestigationsResponseData: + description: Data for an investigation list item. + properties: + attributes: + $ref: '#/components/schemas/ListInvestigationsResponseDataAttributes' + id: + description: The unique identifier of the investigation. + example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + type: string + type: + $ref: '#/components/schemas/InvestigationType' + required: + - id + - type + - attributes + type: object + ListInvestigationsResponseLinks: + description: Pagination links for the list investigations response. + properties: + first: + description: Link to the first page. + example: https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10 + type: string + last: + description: Link to the last page. + nullable: true + type: string + next: + description: Link to the next page. + example: https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=10&page[limit]=10 + type: string + prev: + description: Link to the previous page. + nullable: true + type: string + self: + description: Link to the current page. + example: https://api.datadoghq.com/api/v2/bits-ai/investigations?page[offset]=0&page[limit]=10 + type: string + required: + - first + - next + - self + type: object + ListInvestigationsResponseMeta: + description: Metadata for the list investigations response. + properties: + page: + $ref: '#/components/schemas/ListInvestigationsResponseMetaPage' + required: + - page + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + TriggerInvestigationRequestData: + description: Data for the trigger investigation request. + properties: + attributes: + $ref: '#/components/schemas/TriggerInvestigationRequestDataAttributes' + type: + $ref: '#/components/schemas/TriggerInvestigationRequestType' + required: + - type + - attributes + type: object + TriggerInvestigationResponseData: + description: Data for the trigger investigation response. + properties: + attributes: + $ref: '#/components/schemas/TriggerInvestigationResponseDataAttributes' + id: + description: Unique identifier for the trigger response. + example: f5e6a7b8-c9d0-1e2f-3a4b-5c6d7e8f9a0b + type: string + type: + $ref: '#/components/schemas/TriggerInvestigationResponseType' + required: + - id + - type + - attributes + type: object + GetInvestigationResponseData: + description: Data for the get investigation response. + properties: + attributes: + $ref: '#/components/schemas/GetInvestigationResponseDataAttributes' + id: + description: The unique identifier of the investigation. + example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + type: string + type: + $ref: '#/components/schemas/InvestigationType' + required: + - id + - type + - attributes + type: object + GetInvestigationResponseLinks: + description: Links related to the investigation. + properties: + self: + description: The URL to the investigation in the Datadog app. + example: https://app.datadoghq.com/bits-ai/investigations/a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + type: string + required: + - self + type: object + CaseSortableField: + description: Case field that can be sorted on + enum: + - created_at + - priority + - status + example: created_at + type: string + x-enum-varnames: + - CREATED_AT + - PRIORITY + - STATUS + Case: + description: A case + properties: + attributes: + $ref: '#/components/schemas/CaseAttributes' + id: + description: Case's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + relationships: + $ref: '#/components/schemas/CaseRelationships' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - id + - type + - attributes + type: object + CasesResponseMeta: + description: Cases response metadata + properties: + page: + $ref: '#/components/schemas/CasesResponseMetaPagination' + type: object + CaseCreate: + description: Case creation data + properties: + attributes: + $ref: '#/components/schemas/CaseCreateAttributes' + relationships: + $ref: '#/components/schemas/CaseCreateRelationships' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseAggregateRequestData: + description: Data object wrapping the aggregation query type and attributes. + properties: + attributes: + $ref: '#/components/schemas/CaseAggregateRequestAttributes' + type: + $ref: '#/components/schemas/CaseAggregateResourceType' + required: + - attributes + - type + type: object + CaseAggregateResponseData: + description: Data object containing the aggregation results, including total count and per-group breakdowns. + properties: + attributes: + $ref: '#/components/schemas/CaseAggregateResponseAttributes' + id: + description: Aggregate response identifier. + example: agg-result-001 + type: string + type: + description: Aggregate resource type. + example: aggregate + type: string + required: + - type + - id + - attributes + type: object + CaseBulkUpdateRequestData: + description: Data object wrapping the bulk update type and attributes. + properties: + attributes: + $ref: '#/components/schemas/CaseBulkUpdateRequestAttributes' + type: + $ref: '#/components/schemas/CaseBulkResourceType' + required: + - attributes + - type + type: object + CaseCountResponseData: + description: Data object containing the count results, including per-field group breakdowns. + properties: + attributes: + $ref: '#/components/schemas/CaseCountResponseAttributes' + id: + description: Count response identifier. + example: count-result-001 + type: string + type: + description: Count resource type. + example: count + type: string + required: + - type + - id + - attributes + type: object + CaseLink: + description: A directional link representing a relationship between two entities. At least one entity must be a case. + properties: + attributes: + $ref: '#/components/schemas/CaseLinkAttributes' + id: + description: The case link identifier. + example: 804cd682-55f6-4541-ab00-b608b282ea7d + type: string + type: + $ref: '#/components/schemas/CaseLinkResourceType' + required: + - id + - type + - attributes + type: object + CaseLinkCreate: + description: Data object for creating a case link. + properties: + attributes: + $ref: '#/components/schemas/CaseLinkAttributes' + type: + $ref: '#/components/schemas/CaseLinkResourceType' + required: + - type + - attributes + type: object + Project: + description: A Project. + properties: + attributes: + $ref: '#/components/schemas/ProjectAttributes' + id: + description: The Project's identifier. + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + relationships: + $ref: '#/components/schemas/ProjectRelationships' + type: + $ref: '#/components/schemas/ProjectResourceType' + required: + - id + - type + - attributes + type: object + ProjectCreate: + description: Project create. + properties: + attributes: + $ref: '#/components/schemas/ProjectCreateAttributes' + type: + $ref: '#/components/schemas/ProjectResourceType' + required: + - attributes + - type + type: object + ProjectFavorite: + description: Represents a case project that the current user has bookmarked for quick access. Favorited projects appear prominently in the Case Management UI. + properties: + id: + description: The UUID of the favorited project. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: string + type: + $ref: '#/components/schemas/ProjectFavoriteResourceType' + required: + - id + - type + type: object + ProjectUpdate: + description: Project update. + properties: + attributes: + $ref: '#/components/schemas/ProjectUpdateAttributes' + type: + $ref: '#/components/schemas/ProjectResourceType' + required: + - type + type: object + CaseNotificationRule: + description: A notification rule for case management + properties: + attributes: + $ref: '#/components/schemas/CaseNotificationRuleAttributes' + id: + description: The notification rule's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/CaseNotificationRuleResourceType' + required: + - id + - type + - attributes + type: object + CaseNotificationRuleCreate: + description: Notification rule create + properties: + attributes: + $ref: '#/components/schemas/CaseNotificationRuleCreateAttributes' + type: + $ref: '#/components/schemas/CaseNotificationRuleResourceType' + required: + - attributes + - type + type: object + CaseNotificationRuleUpdate: + description: Notification rule update + properties: + attributes: + $ref: '#/components/schemas/CaseNotificationRuleAttributes' + type: + $ref: '#/components/schemas/CaseNotificationRuleResourceType' + required: + - type + type: object + AutomationRule: + description: An automation rule that executes an action (such as running a Datadog workflow or assigning an AI agent) when a specified case event occurs within a project. + properties: + attributes: + $ref: '#/components/schemas/AutomationRuleAttributes' + id: + description: Automation rule identifier. + example: e6773723-fe58-49ff-9975-dff00f14e28d + type: string + relationships: + $ref: '#/components/schemas/AutomationRuleRelationships' + type: + $ref: '#/components/schemas/CaseAutomationRuleResourceType' + required: + - id + - type + - attributes + type: object + AutomationRuleCreate: + description: Data object for creating an automation rule. + properties: + attributes: + $ref: '#/components/schemas/AutomationRuleCreateAttributes' + type: + $ref: '#/components/schemas/CaseAutomationRuleResourceType' + required: + - type + - attributes + type: object + AutomationRuleUpdate: + description: Data object for updating an automation rule. + properties: + attributes: + $ref: '#/components/schemas/AutomationRuleCreateAttributes' + type: + $ref: '#/components/schemas/CaseAutomationRuleResourceType' + required: + - type + type: object + CaseTypeResource: + description: A case type that defines a classification category for cases. Each case type can have its own custom attributes, statuses, and automation rules. + properties: + attributes: + $ref: '#/components/schemas/CaseTypeResourceAttributes' + id: + description: Case type's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/CaseTypeResourceType' + type: object + CaseTypeCreate: + description: Data object for creating a case type. + properties: + attributes: + $ref: '#/components/schemas/CaseTypeResourceAttributes' + type: + $ref: '#/components/schemas/CaseTypeResourceType' + required: + - attributes + - type + type: object + CustomAttributeConfig: + description: A custom attribute configuration that defines an organization-specific metadata field on cases. Custom attributes are scoped to a case type and can hold text, URLs, numbers, or predefined select options. + properties: + attributes: + $ref: '#/components/schemas/CustomAttributeConfigResourceAttributes' + id: + description: Custom attribute configs identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/CustomAttributeConfigResourceType' + type: object + CaseTypeUpdate: + description: Data object for updating a case type. + properties: + attributes: + $ref: '#/components/schemas/CaseTypeResourceAttributes' + type: + $ref: '#/components/schemas/CaseTypeResourceType' + required: + - type + type: object + CustomAttributeConfigCreate: + description: Data object for creating a custom attribute configuration. + properties: + attributes: + $ref: '#/components/schemas/CustomAttributeConfigAttributesCreate' + type: + $ref: '#/components/schemas/CustomAttributeConfigResourceType' + required: + - attributes + - type + type: object + CustomAttributeConfigUpdate: + description: Data object for updating a custom attribute configuration. + properties: + attributes: + $ref: '#/components/schemas/CustomAttributeConfigUpdateAttributes' + type: + $ref: '#/components/schemas/CustomAttributeConfigResourceType' + required: + - type + type: object + CaseView: + description: A saved case view that provides a filtered, reusable list of cases matching a specific query. Views act as persistent dashboards for monitoring case subsets. + properties: + attributes: + $ref: '#/components/schemas/CaseViewAttributes' + id: + description: The view's identifier. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: string + relationships: + $ref: '#/components/schemas/CaseViewRelationships' + type: + $ref: '#/components/schemas/CaseViewResourceType' + required: + - id + - type + - attributes + type: object + CaseViewCreate: + description: Data object for creating a case view. + properties: + attributes: + $ref: '#/components/schemas/CaseViewCreateAttributes' + type: + $ref: '#/components/schemas/CaseViewResourceType' + required: + - type + - attributes + type: object + CaseViewUpdate: + description: Data object for updating a case view. + properties: + attributes: + $ref: '#/components/schemas/CaseViewUpdateAttributes' + type: + $ref: '#/components/schemas/CaseViewResourceType' + required: + - type + type: object + CaseEmpty: + description: Case empty request data + properties: + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - type + type: object + CaseAssign: + description: Case assign + properties: + attributes: + $ref: '#/components/schemas/CaseAssignAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseUpdateAttributes: + description: Case update attributes + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateAttributesAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseComment: + description: Case comment + properties: + attributes: + $ref: '#/components/schemas/CaseCommentAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + TimelineCellResource: + description: A timeline cell resource representing a single entry in a case's activity timeline. + properties: + attributes: + $ref: '#/components/schemas/TimelineCell' + id: + description: Timeline cell's identifier + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/TimelineCellResourceType' + required: + - id + - type + - attributes + type: object + CaseUpdateComment: + description: Data object for updating a case comment. + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateCommentAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - type + - attributes + type: object + CaseUpdateCustomAttribute: + description: Case update custom attribute + properties: + attributes: + $ref: '#/components/schemas/CustomAttributeValue' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseUpdateDescription: + description: Case update description + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateDescriptionAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseUpdateDueDate: + description: Data object for updating a case's due date. + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateDueDateAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseInsightsData: + description: Data object containing the insights to add or remove. + properties: + attributes: + $ref: '#/components/schemas/CaseInsightsAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - type + - attributes + type: object + CaseUpdatePriority: + description: Case priority status + properties: + attributes: + $ref: '#/components/schemas/CaseUpdatePriorityAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + IncidentRelationshipData: + description: Incident relationship data + properties: + id: + description: Incident identifier + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/IncidentResourceType' + required: + - type + - id + type: object + JiraIssueLinkData: + description: Jira issue link data + properties: + attributes: + $ref: '#/components/schemas/JiraIssueLinkAttributes' + type: + $ref: '#/components/schemas/JiraIssueResourceType' + required: + - type + - attributes + type: object + JiraIssueCreateData: + description: Jira issue creation data + properties: + attributes: + $ref: '#/components/schemas/JiraIssueCreateAttributes' + type: + $ref: '#/components/schemas/JiraIssueResourceType' + required: + - type + - attributes + type: object + NotebookCreateData: + description: Notebook creation data + properties: + type: + $ref: '#/components/schemas/NotebookResourceType' + required: + - type + type: object + ProjectRelationshipData: + description: Relationship to project object. + properties: + id: + description: A unique identifier that represents the project. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: string + type: + $ref: '#/components/schemas/ProjectResourceType' + required: + - id + - type + type: object + ServiceNowTicketCreateData: + description: ServiceNow ticket creation data + properties: + attributes: + $ref: '#/components/schemas/ServiceNowTicketCreateAttributes' + type: + $ref: '#/components/schemas/ServiceNowTicketResourceType' + required: + - type + - attributes + type: object + CaseUpdateResolvedReason: + description: Data object for updating a case's resolved reason. + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateResolvedReasonAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseUpdateStatus: + description: Case update status + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateStatusAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseUpdateTitle: + description: Case update title + properties: + attributes: + $ref: '#/components/schemas/CaseUpdateTitleAttributes' + type: + $ref: '#/components/schemas/CaseResourceType' + required: + - attributes + - type + type: object + CaseWatcher: + description: Represents a user who is subscribed to notifications for a case. Watchers receive updates when the case's status, priority, assignee, or comments change. + properties: + id: + description: The primary identifier of the case watcher. + example: 8146583c-0b5f-11ec-abf8-da7ad0900001 + type: string + relationships: + $ref: '#/components/schemas/CaseWatcherRelationships' + type: + $ref: '#/components/schemas/CaseWatcherResourceType' + required: + - id + - type + - relationships + type: object + ChangeRequestCreateData: + description: Data object to create a change request. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestCreateAttributes' + type: + $ref: '#/components/schemas/ChangeRequestResourceType' + required: + - type + - attributes + type: object + ChangeRequestResponseData: + description: Data object for a change request response. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestResponseAttributes' + id: + description: The identifier of the change request. + example: CHM-1234 + type: string + relationships: + $ref: '#/components/schemas/ChangeRequestRelationships' + type: + $ref: '#/components/schemas/ChangeRequestResourceType' + required: + - id + - type + - attributes + type: object + ChangeRequestIncluded: + description: Included resources related to the change request. + items: + $ref: '#/components/schemas/ChangeRequestIncludedItem' + type: array + ChangeRequestUpdateData: + description: Data object to update a change request. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestUpdateAttributes' + relationships: + $ref: '#/components/schemas/ChangeRequestUpdateRelationships' + type: + $ref: '#/components/schemas/ChangeRequestResourceType' + required: + - type + type: object + ChangeRequestUpdateIncluded: + description: Included resources for the change request update. + items: + $ref: '#/components/schemas/ChangeRequestDecisionCreateItem' + type: array + ChangeRequestBranchCreateData: + description: Data object to create a change request branch. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestBranchCreateAttributes' + type: + $ref: '#/components/schemas/ChangeRequestBranchResourceType' + required: + - type + - attributes + type: object + ChangeRequestDecisionUpdateData: + description: Data object to update a change request decision. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestDecisionUpdateDataAttributes' + relationships: + $ref: '#/components/schemas/ChangeRequestDecisionUpdateDataRelationships' + type: + $ref: '#/components/schemas/ChangeRequestResourceType' + required: + - type + type: object + DowntimeResponseData: + description: Downtime data. + properties: + attributes: + $ref: '#/components/schemas/DowntimeResponseAttributes' + id: + description: The downtime ID. + example: 00000000-0000-1234-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/DowntimeRelationships' + type: + $ref: '#/components/schemas/DowntimeResourceType' + type: object + DowntimeResponseIncludedItem: + description: An object related to a downtime. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + DowntimeMeta: + description: Pagination metadata returned by the API. + properties: + page: + $ref: '#/components/schemas/DowntimeMetaPage' + type: object + DowntimeCreateRequestData: + description: Object to create a downtime. + properties: + attributes: + $ref: '#/components/schemas/DowntimeCreateRequestAttributes' + type: + $ref: '#/components/schemas/DowntimeResourceType' + required: + - type + - attributes + type: object + DowntimeUpdateRequestData: + description: Object to update a downtime. + properties: + attributes: + $ref: '#/components/schemas/DowntimeUpdateRequestAttributes' + id: + description: ID of this downtime. + example: 00000000-0000-1234-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/DowntimeResourceType' + required: + - id + - type + - attributes + type: object + SearchIssuesIncludeQueryParameterItem: + description: Relationship object that should be included in the search response. + enum: + - issue + - issue.assignee + - issue.case + - issue.team_owners + example: issue.case + type: string + x-enum-varnames: + - ISSUE + - ISSUE_ASSIGNEE + - ISSUE_CASE + - ISSUE_TEAM_OWNERS + IssuesSearchRequestData: + description: Search issues request. + properties: + attributes: + $ref: '#/components/schemas/IssuesSearchRequestDataAttributes' + type: + $ref: '#/components/schemas/IssuesSearchRequestDataType' + required: + - type + - attributes + type: object + IssuesSearchResult: + description: Result matching the search query. + properties: + attributes: + $ref: '#/components/schemas/IssuesSearchResultAttributes' + id: + description: Search result identifier (matches the nested issue's identifier). + example: c1726a66-1f64-11ee-b338-da7ad0900002 + type: string + relationships: + $ref: '#/components/schemas/IssuesSearchResultRelationships' + type: + $ref: '#/components/schemas/IssuesSearchResultType' + required: + - id + - type + - attributes + type: object + IssuesSearchResultIncluded: + description: An array of related resources, returned when the `include` query parameter is used. + properties: + attributes: + $ref: '#/components/schemas/IssueAttributes' + id: + description: Issue identifier. + example: c1726a66-1f64-11ee-b338-da7ad0900002 + type: string + relationships: + $ref: '#/components/schemas/IssueRelationships' + type: + $ref: '#/components/schemas/IssueType' + required: + - id + - type + - attributes + type: object + GetIssueIncludeQueryParameterItem: + description: Relationship object that should be included in the response. + enum: + - assignee + - case + - team_owners + example: case + type: string + x-enum-varnames: + - ASSIGNEE + - CASE + - TEAM_OWNERS + Issue: + description: The issue matching the request. + properties: + attributes: + $ref: '#/components/schemas/IssueAttributes' + id: + description: Issue identifier. + example: c1726a66-1f64-11ee-b338-da7ad0900002 + type: string + relationships: + $ref: '#/components/schemas/IssueRelationships' + type: + $ref: '#/components/schemas/IssueType' + required: + - id + - type + - attributes + type: object + IssueIncluded: + description: An array of related resources, returned when the `include` query parameter is used. + properties: + attributes: + $ref: '#/components/schemas/IssueCaseAttributes' + id: + description: Case identifier. + example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 + type: string + relationships: + $ref: '#/components/schemas/IssueCaseRelationships' + type: + $ref: '#/components/schemas/IssueCaseResourceType' + required: + - id + - type + - attributes + type: object + IssueUpdateAssigneeRequestData: + description: Update issue assignee request. + properties: + id: + description: User identifier. + example: 87cb11a0-278c-440a-99fe-701223c80296 + type: string + type: + $ref: '#/components/schemas/IssueUpdateAssigneeRequestDataType' + required: + - id + - type + type: object + IssueUpdateStateRequestData: + description: Update issue state request. + properties: + attributes: + $ref: '#/components/schemas/IssueUpdateStateRequestDataAttributes' + id: + description: Issue identifier. + example: c1726a66-1f64-11ee-b338-da7ad0900002 + type: string + type: + $ref: '#/components/schemas/IssueUpdateStateRequestDataType' + required: + - id + - type + - attributes + type: object + EventResponse: + description: The object description of an event after being processed and stored by Datadog. + properties: + attributes: + $ref: '#/components/schemas/EventResponseAttributes' + id: + description: the unique ID of the event. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/EventType' + type: object + EventsListResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. Note that the request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + EventsResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/EventsResponseMetadataPage' + request_id: + description: The identifier of the request. + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + description: The request status. + example: done + type: string + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results might be returned if + warnings are present in the response. + items: + $ref: '#/components/schemas/EventsWarning' + type: array + type: object + EventCreateRequest: + description: An event object. + properties: + attributes: + $ref: '#/components/schemas/EventPayload' + type: + $ref: '#/components/schemas/EventCreateRequestType' + required: + - type + - attributes + type: object + EventCreateResponse: + description: Event object. + properties: + attributes: + $ref: '#/components/schemas/EventCreateResponseAttributes' + type: + description: Entity type. + example: event + type: string + type: object + EventCreateResponsePayloadLinks: + description: Links to the event. + properties: + self: + description: The URL of the event. This link is only functional when using the default subdomain. + type: string + type: object + EventsQueryFilter: + description: The search and filter query settings. + properties: + from: + default: now-15m + description: The minimum time for the requested events. Supports date math and regular timestamps in milliseconds. + example: now-15m + type: string + query: + default: '*' + description: The search query following the event search syntax. + example: service:web* AND @http.status_code:[200 TO 299] + type: string + to: + default: now + description: The maximum time for the requested events. Supports date math and regular timestamps in milliseconds. + example: now + type: string + type: object + EventsQueryOptions: + description: |- + The global query options that are used. Either provide a timezone or a time offset but not both, + otherwise the query fails. + properties: + timeOffset: + description: The time offset to apply to the query in seconds. + format: int64 + type: integer + timezone: + default: UTC + description: The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: GMT + type: string + type: object + EventsRequestPage: + description: Pagination settings. + properties: + cursor: + description: The returned paging point to use to get the next results. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: The maximum number of logs in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + V2Event: + description: An event object. + properties: + attributes: + $ref: '#/components/schemas/V2EventAttributes' + id: + description: The event's ID. + example: '' + type: string + type: + description: Entity type. + example: event + type: string + type: object + FormDataList: + description: A list of form resource objects. + items: + $ref: '#/components/schemas/FormData' + type: array + CreateFormData: + description: The data for creating a form. + properties: + attributes: + $ref: '#/components/schemas/CreateFormDataAttributes' + type: + $ref: '#/components/schemas/FormType' + required: + - attributes + - type + type: object + FormData: + description: A form resource object. + properties: + attributes: + $ref: '#/components/schemas/FormDataAttributes' + id: + description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + format: uuid + type: string + type: + $ref: '#/components/schemas/FormType' + required: + - id + - type + - attributes + type: object + DeleteFormData: + description: The data returned when a form is deleted. + properties: + id: + description: The ID of the deleted form. + example: 844dfd88-aa84-4db4-8979-e7bdbb9c1dc3 + format: uuid + type: string + type: + $ref: '#/components/schemas/FormType' + required: + - id + - type + type: object + UpdateFormData: + description: The data for updating a form. + properties: + attributes: + $ref: '#/components/schemas/UpdateFormDataAttributes' + id: + description: The ID of the form. + example: 22f6006a-2302-4926-9396-d2dfcf7b0b34 + format: uuid + type: string + type: + $ref: '#/components/schemas/FormType' + required: + - type + - attributes + type: object + CloneFormData: + description: The data for cloning a form. + properties: + attributes: + $ref: '#/components/schemas/CloneFormDataAttributes' + type: + $ref: '#/components/schemas/FormType' + required: + - type + type: object + PublishFormData: + description: The data for publishing a form version. + properties: + attributes: + $ref: '#/components/schemas/PublishFormDataAttributes' + type: + $ref: '#/components/schemas/FormPublicationType' + required: + - type + - attributes + type: object + FormPublicationData: + description: A form publication resource object. + properties: + attributes: + $ref: '#/components/schemas/FormPublicationAttributes' + id: + description: The ID of the form publication. + example: '42' + type: string + type: + $ref: '#/components/schemas/FormPublicationType' + required: + - id + - type + - attributes + type: object + UpsertFormVersionData: + description: The data for creating or updating a form version. + properties: + attributes: + $ref: '#/components/schemas/UpsertFormVersionDataAttributes' + type: + $ref: '#/components/schemas/FormVersionType' + required: + - type + - attributes + type: object + FormDataDefinitionType: + default: object + description: The root schema type. + enum: + - object + type: string + x-enum-varnames: + - OBJECT + FormVersionData: + description: A form version resource object. + properties: + attributes: + $ref: '#/components/schemas/FormVersionAttributes' + id: + description: The ID of the form version. + example: '126' + type: string + type: + $ref: '#/components/schemas/FormVersionType' + required: + - id + - type + - attributes + type: object + UpsertAndPublishFormVersionData: + description: The data for upserting and publishing a form version. + properties: + attributes: + $ref: '#/components/schemas/UpsertAndPublishFormVersionDataAttributes' + type: + $ref: '#/components/schemas/FormVersionType' + required: + - type + - attributes + type: object + IncidentRelatedObject: + description: Object related to an incident. + enum: + - users + - attachments + type: string + x-enum-varnames: + - USERS + - ATTACHMENTS + IncidentResponseData: + description: Incident data from a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentResponseAttributes' + id: + description: The incident's ID. + example: 00000000-0000-0000-1234-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentResponseRelationships' + type: + $ref: '#/components/schemas/IncidentType' + required: + - id + - type + type: object + IncidentResponseIncludedItem: + description: An object related to an incident that is included in the response. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserAttributes' + id: + description: ID of the user. + type: string + type: + $ref: '#/components/schemas/UsersType' + relationships: + $ref: '#/components/schemas/AttachmentDataRelationships' + type: object + required: + - type + - attributes + - relationships + - id + IncidentResponseMeta: + description: The metadata object containing pagination metadata. + properties: + pagination: + $ref: '#/components/schemas/IncidentResponseMetaPagination' + readOnly: true + type: object + IncidentCreateData: + description: Incident data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentCreateAttributes' + relationships: + $ref: '#/components/schemas/IncidentCreateRelationships' + type: + $ref: '#/components/schemas/IncidentType' + required: + - type + - attributes + type: object + IncidentHandlesResponseData: + description: Array of incident handle data objects returned in a list response. + items: + $ref: '#/components/schemas/IncidentHandleDataResponse' + type: array + IncidentHandleIncludedResponse: + description: Included related resources + items: + $ref: '#/components/schemas/IncidentHandleIncludedItemResponse' + type: array + IncidentHandleDataRequest: + description: Data object representing an incident handle in a create or update request. + properties: + attributes: + $ref: '#/components/schemas/IncidentHandleAttributesRequest' + id: + description: The ID of the incident handle (required for PUT requests) + example: b2494081-cdf0-4205-b366-4e1dd4fdf0bf + type: string + relationships: + $ref: '#/components/schemas/IncidentHandleRelationshipsRequest' + type: + $ref: '#/components/schemas/IncidentHandleType' + required: + - type + - attributes + type: object + IncidentHandleDataResponse: + description: Data object representing an incident handle in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentHandleAttributesResponse' + id: + description: The ID of the incident handle + example: 12ceee6d-a7c0-4407-bc54-30e54140d7f0 + type: string + relationships: + $ref: '#/components/schemas/IncidentHandleRelationships' + type: + $ref: '#/components/schemas/IncidentHandleType' + required: + - id + - type + - attributes + type: object + GlobalIncidentSettingsDataResponse: + description: Data object in the global incident settings response. + properties: + attributes: + $ref: '#/components/schemas/GlobalIncidentSettingsAttributesResponse' + id: + description: The unique identifier for the global incident settings + example: f8b9a915-ed85-48b4-9071-ceba567a3db5 + type: string + type: + $ref: '#/components/schemas/GlobalIncidentSettingsType' + required: + - id + - type + - attributes + type: object + GlobalIncidentSettingsDataRequest: + description: Data object in the global incident settings request. + properties: + attributes: + $ref: '#/components/schemas/GlobalIncidentSettingsAttributesRequest' + type: + $ref: '#/components/schemas/GlobalIncidentSettingsType' + required: + - type + type: object + IncidentGoogleChatConfigurationDataRequest: + description: Google Chat configuration data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationDataAttributesRequest' + relationships: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationRelationshipsRequest' + type: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationType' + required: + - type + - attributes + - relationships + type: object + IncidentGoogleChatConfigurationDataResponse: + description: Google Chat configuration data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationDataAttributesResponse' + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationRelationships' + type: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationType' + required: + - id + - type + - attributes + type: object + IncidentUserData: + description: User object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserAttributes' + id: + description: ID of the user. + type: string + type: + $ref: '#/components/schemas/UsersType' + type: object + IncidentGoogleChatConfigurationPatchDataRequest: + description: Google Chat configuration data in a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationPatchDataAttributesRequest' + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentGoogleChatConfigurationType' + required: + - id + - type + type: object + IncidentGoogleMeetConfigurationDataRequest: + description: Google Meet configuration data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationDataAttributesRequest' + relationships: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationRelationshipsRequest' + type: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationType' + required: + - type + - attributes + - relationships + type: object + IncidentGoogleMeetConfigurationDataResponse: + description: Google Meet configuration data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationDataAttributesResponse' + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationRelationships' + type: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationType' + required: + - id + - type + - attributes + type: object + IncidentGoogleMeetConfigurationPatchDataRequest: + description: Google Meet configuration data in a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationPatchDataAttributesRequest' + id: + description: The configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentGoogleMeetConfigurationType' + required: + - id + - type + type: object + IncidentImpactFieldDataResponse: + description: Impact field data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentImpactFieldDataAttributesResponse' + id: + description: The impact field identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentImpactFieldRelationships' + type: + $ref: '#/components/schemas/IncidentImpactFieldType' + required: + - id + - type + - attributes + type: object + IncidentImpactFieldDataRequest: + description: Impact field data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentImpactFieldDataAttributesRequest' + relationships: + $ref: '#/components/schemas/IncidentImpactFieldRelationshipsRequest' + type: + $ref: '#/components/schemas/IncidentImpactFieldType' + required: + - type + - attributes + - relationships + type: object + IncidentNotificationRuleResponseData: + description: Notification rule data from a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationRuleAttributes' + id: + description: The unique identifier of the notification rule. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentNotificationRuleRelationships' + type: + $ref: '#/components/schemas/IncidentNotificationRuleType' + required: + - id + - type + type: object + IncidentNotificationRuleIncludedItems: + description: Objects related to a notification rule. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - id + - type + IncidentNotificationRuleArrayMeta: + description: Response metadata. + properties: + pagination: + $ref: '#/components/schemas/IncidentNotificationRuleArrayMetaPage' + type: object + IncidentNotificationRuleCreateData: + description: Notification rule data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' + relationships: + $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' + type: + $ref: '#/components/schemas/IncidentNotificationRuleType' + required: + - type + - attributes + type: object + IncidentNotificationRuleUpdateData: + description: Notification rule data for an update request. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' + id: + description: The unique identifier of the notification rule. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' + type: + $ref: '#/components/schemas/IncidentNotificationRuleType' + required: + - id + - type + - attributes + type: object + IncidentNotificationTemplateResponseData: + description: Notification template data from a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' + id: + description: The unique identifier of the notification template. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' + type: + $ref: '#/components/schemas/IncidentNotificationTemplateType' + required: + - id + - type + type: object + IncidentNotificationTemplateIncludedItems: + description: Objects related to a notification template. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - id + - type + IncidentNotificationTemplateArrayMeta: + description: Response metadata. + properties: + page: + $ref: '#/components/schemas/IncidentNotificationTemplateArrayMetaPage' + type: object + IncidentNotificationTemplateCreateData: + description: Notification template data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationTemplateCreateAttributes' + relationships: + $ref: '#/components/schemas/IncidentNotificationTemplateCreateDataRelationships' + type: + $ref: '#/components/schemas/IncidentNotificationTemplateType' + required: + - type + - attributes + type: object + IncidentNotificationTemplateUpdateData: + description: Notification template data for an update request. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationTemplateUpdateAttributes' + id: + description: The unique identifier of the notification template. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentNotificationTemplateType' + required: + - id + - type + type: object + PostmortemTemplateDataResponse: + description: Data object for a postmortem template returned in a response. + properties: + attributes: + $ref: '#/components/schemas/PostmortemTemplateAttributesResponse' + id: + description: The ID of the template. + example: 00000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/PostmortemTemplateResponseRelationships' + type: + $ref: '#/components/schemas/PostmortemTemplateType' + required: + - id + - type + - attributes + type: object + PostmortemTemplateDataRequest: + description: Data object for creating or updating a postmortem template. + properties: + attributes: + $ref: '#/components/schemas/PostmortemTemplateAttributesRequest' + id: + description: The ID of the template. Required when updating. + example: 00000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/PostmortemTemplateCreateRelationships' + type: + $ref: '#/components/schemas/PostmortemTemplateType' + required: + - type + - attributes + type: object + IncidentRuleDataResponse: + description: Incident rule data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentRuleDataAttributesResponse' + id: + description: The rule identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentRuleResponseType' + required: + - id + - type + - attributes + type: object + IncidentRuleDataRequest: + description: Incident rule data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentRuleDataAttributesRequest' + type: + $ref: '#/components/schemas/IncidentRuleType' + required: + - type + - attributes + type: object + IncidentRulePatchDataRequest: + description: Incident rule data in a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentRulePatchDataAttributesRequest' + id: + description: The rule identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentRuleType' + required: + - id + - type + type: object + IncidentTypeObject: + description: Incident type response data. + properties: + attributes: + $ref: '#/components/schemas/IncidentTypeAttributes' + id: + description: The incident type's ID. + example: 00000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentTypeRelationships' + type: + $ref: '#/components/schemas/IncidentTypeType' + required: + - id + - type + type: object + IncidentTypeCreateData: + description: Incident type data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentTypeAttributes' + type: + $ref: '#/components/schemas/IncidentTypeType' + required: + - type + - attributes + type: object + IncidentOrgSettingsDataResponse: + description: Incident org settings data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentOrgSettingsDataAttributesResponse' + id: + description: The org settings identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentOrgSettingsRelationships' + type: + $ref: '#/components/schemas/IncidentOrgSettingsType' + required: + - id + - type + - attributes + type: object + IncidentTypePatchData: + description: Incident type data for a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentTypeUpdateAttributes' + id: + description: The incident type's ID. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/IncidentTypeType' + required: + - id + - type + - attributes + type: object + IncidentUserDefinedFieldResponseData: + description: Data object for an incident user-defined field response. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserDefinedFieldAttributesResponse' + id: + description: The unique identifier of the user-defined field. + example: 00000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentUserDefinedFieldRelationships' + type: + $ref: '#/components/schemas/IncidentUserDefinedFieldType' + required: + - id + - type + - attributes + - relationships + type: object + IncidentUserDefinedFieldListMeta: + description: Pagination metadata for the user-defined field list response. + properties: + offset: + description: The offset of the current page. + example: 0 + format: int64 + type: integer + size: + description: The total number of items in the current page. + example: 5 + format: int64 + type: integer + type: object + IncidentUserDefinedFieldCreateData: + description: Data for creating an incident user-defined field. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserDefinedFieldAttributesCreateRequest' + relationships: + $ref: '#/components/schemas/IncidentUserDefinedFieldCreateRelationships' + type: + $ref: '#/components/schemas/IncidentUserDefinedFieldType' + required: + - type + - attributes + - relationships + type: object + IncidentUserDefinedFieldUpdateData: + description: Data for updating an incident user-defined field. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserDefinedFieldAttributesUpdateRequest' + id: + description: The unique identifier of the user-defined field to update. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/IncidentUserDefinedFieldType' + required: + - id + - type + - attributes + type: object + IncidentUserDefinedRolesDataResponse: + description: List of incident user-defined role data objects. + items: + $ref: '#/components/schemas/IncidentUserDefinedRoleDataResponse' + type: array + IncidentUserDefinedRoleIncludedResponse: + description: Included resources for an incident user-defined role response. + items: + $ref: '#/components/schemas/IncidentUserDefinedRoleIncludedItem' + type: array + IncidentUserDefinedRoleDataRequest: + description: Data for creating an incident user-defined role. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserDefinedRoleDataAttributesRequest' + relationships: + $ref: '#/components/schemas/IncidentUserDefinedRoleRelationshipsRequest' + type: + $ref: '#/components/schemas/IncidentUserDefinedRoleType' + required: + - type + - attributes + - relationships + type: object + IncidentUserDefinedRoleDataResponse: + description: Data for an incident user-defined role response. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserDefinedRoleDataAttributesResponse' + id: + description: The ID of the user-defined role. + example: 00000000-0000-0000-0000-000000000002 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentUserDefinedRoleRelationshipsResponse' + type: + $ref: '#/components/schemas/IncidentUserDefinedRoleType' + required: + - id + - type + - attributes + type: object + IncidentUserDefinedRolePatchDataRequest: + description: Data for updating an incident user-defined role. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserDefinedRolePatchDataAttributesRequest' + id: + description: The ID of the user-defined role to update. + example: 00000000-0000-0000-0000-000000000002 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentUserDefinedRoleType' + required: + - id + - type + type: object + IncidentImportRelatedObject: + description: Object related to an incident that can be included in the response. + enum: + - last_modified_by_user + - created_by_user + - commander_user + - declared_by_user + - incident_type + type: string + x-enum-varnames: + - LAST_MODIFIED_BY_USER + - CREATED_BY_USER + - COMMANDER_USER + - DECLARED_BY_USER + - INCIDENT_TYPE + IncidentImportRequestData: + description: Incident data for an import request. + properties: + attributes: + $ref: '#/components/schemas/IncidentImportRequestAttributes' + relationships: + $ref: '#/components/schemas/IncidentImportRelationships' + type: + $ref: '#/components/schemas/IncidentType' + required: + - type + - attributes + type: object + IncidentImportResponseData: + description: Incident data from an import response. + properties: + attributes: + $ref: '#/components/schemas/IncidentImportResponseAttributes' + id: + description: The incident's ID. + example: 00000000-0000-0000-1234-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentImportResponseRelationships' + type: + $ref: '#/components/schemas/IncidentType' + required: + - id + - type + type: object + IncidentImportResponseIncludedItem: + description: An object related to an incident that is included in the response. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserAttributes' + id: + description: ID of the user. + type: string + type: + $ref: '#/components/schemas/UsersType' + relationships: + $ref: '#/components/schemas/IncidentTypeRelationships' + type: object + required: + - id + - type + IncidentSearchSortOrder: + description: The ways searched incidents can be sorted. + enum: + - created + - '-created' + type: string + x-enum-varnames: + - CREATED_ASCENDING + - CREATED_DESCENDING + IncidentSearchResponseData: + description: Data returned by an incident search. + properties: + attributes: + $ref: '#/components/schemas/IncidentSearchResponseAttributes' + type: + $ref: '#/components/schemas/IncidentSearchResultsType' + type: object + IncidentSearchResponseMeta: + description: The metadata object containing pagination metadata. + properties: + pagination: + $ref: '#/components/schemas/IncidentResponseMetaPagination' + readOnly: true + type: object + IncidentUpdateData: + description: Incident data for an update request. + properties: + attributes: + $ref: '#/components/schemas/IncidentUpdateAttributes' + id: + description: The incident's ID. + example: 00000000-0000-0000-4567-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentUpdateRelationships' + type: + $ref: '#/components/schemas/IncidentType' + required: + - id + - type + type: object + IncidentAIPostmortemDataResponse: + description: AI postmortem data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentAIPostmortemDataAttributesResponse' + id: + description: The incident identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentAIPostmortemResponseType' + required: + - id + - type + - attributes + type: object + AttachmentData: + description: Attachment data from a response. + properties: + attributes: + $ref: '#/components/schemas/AttachmentDataAttributes' + id: + description: The unique identifier of the attachment. + example: 00000000-abcd-0002-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/AttachmentDataRelationships' + type: + $ref: '#/components/schemas/IncidentAttachmentType' + required: + - type + - attributes + - relationships + - id + type: object + AttachmentIncluded: + description: Objects related to an attachment. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserAttributes' + id: + description: ID of the user. + type: string + type: + $ref: '#/components/schemas/UsersType' + type: object + CreateAttachmentRequestData: + description: Attachment data for a create request. + properties: + attributes: + $ref: '#/components/schemas/CreateAttachmentRequestDataAttributes' + id: + description: The unique identifier of the attachment. + type: string + type: + $ref: '#/components/schemas/IncidentAttachmentType' + required: + - type + type: object + PostmortemAttachmentRequestData: + description: Postmortem attachment data + properties: + attributes: + $ref: '#/components/schemas/PostmortemAttachmentRequestAttributes' + type: + $ref: '#/components/schemas/IncidentAttachmentType' + required: + - type + - attributes + type: object + PatchAttachmentRequestData: + description: Attachment data for an update request. + properties: + attributes: + $ref: '#/components/schemas/PatchAttachmentRequestDataAttributes' + id: + description: The unique identifier of the attachment. + example: 00000000-abcd-0002-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/IncidentAttachmentType' + required: + - type + type: object + IncidentCreatePageFromIncidentDataRequest: + description: Page data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentCreatePageFromIncidentDataAttributesRequest' + type: + $ref: '#/components/schemas/IncidentCreatePageFromIncidentType' + required: + - type + - attributes + type: object + IncidentPageUUIDDataResponse: + description: Page UUID data in a response. + properties: + id: + description: The UUID of the created page. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentPageUUIDType' + required: + - id + - type + type: object + IncidentConfigurationPatchDataRequest: + description: Incident configuration data in a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentConfigurationPatchDataAttributesRequest' + id: + description: The incident configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentConfigurationType' + required: + - id + - type + type: object + IncidentConfigurationDataResponse: + description: Incident configuration data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentConfigurationDataAttributesResponse' + id: + description: The incident configuration identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentConfigurationRelationships' + type: + $ref: '#/components/schemas/IncidentConfigurationType' + required: + - id + - type + - attributes + type: object + IncidentConfigurationDataRequest: + description: Incident configuration data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentConfigurationDataAttributesRequest' + type: + $ref: '#/components/schemas/IncidentConfigurationType' + required: + - type + type: object + IncidentImpactRelatedObject: + description: A reference to a resource related to an incident impact. + enum: + - incident + - created_by_user + - last_modified_by_user + type: string + x-enum-varnames: + - INCIDENT + - CREATED_BY_USER + - LAST_MODIFIED_BY_USER + IncidentImpactResponseData: + description: Incident impact data from a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentImpactAttributes' + id: + description: The incident impact's ID. + example: 00000000-0000-0000-1234-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentImpactRelationships' + type: + $ref: '#/components/schemas/IncidentImpactType' + required: + - id + - type + type: object + IncidentImpactCreateData: + description: Incident impact data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentImpactCreateAttributes' + type: + $ref: '#/components/schemas/IncidentImpactType' + required: + - type + - attributes + type: object + IncidentImpactPatchData: + description: Incident impact data for a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentImpactPatchAttributes' + type: + $ref: '#/components/schemas/IncidentImpactType' + required: + - type + type: object + IncidentCreateOnCallPageDataRequest: + description: On-call page data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentCreateOnCallPageDataAttributesRequest' + type: + $ref: '#/components/schemas/IncidentCreatePageFromIncidentType' + required: + - type + - attributes + type: object + IncidentOnCallPageDataRequest: + description: On-call page data in a link request. + properties: + attributes: + $ref: '#/components/schemas/IncidentOnCallPageDataAttributesRequest' + id: + description: The ID of the on-call page to link. + example: PAGE-12345 + type: string + type: + $ref: '#/components/schemas/IncidentOnCallPageType' + required: + - id + - type + type: object + IncidentIntegrationMetadataResponseData: + description: Incident integration metadata from a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' + id: + description: The incident integration metadata's ID. + example: 00000000-0000-0000-1234-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentIntegrationRelationships' + type: + $ref: '#/components/schemas/IncidentIntegrationMetadataType' + required: + - id + - type + type: object + IncidentIntegrationMetadataResponseIncludedItem: + description: An object related to an incident integration metadata that is included in the response. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + IncidentIntegrationMetadataCreateData: + description: Incident integration metadata data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' + type: + $ref: '#/components/schemas/IncidentIntegrationMetadataType' + required: + - type + - attributes + type: object + IncidentIntegrationMetadataPatchData: + description: Incident integration metadata data for a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' + type: + $ref: '#/components/schemas/IncidentIntegrationMetadataType' + required: + - type + - attributes + type: object + IncidentTodoResponseData: + description: Incident todo response data. + properties: + attributes: + $ref: '#/components/schemas/IncidentTodoAttributes' + id: + description: The incident todo's ID. + example: 00000000-0000-0000-1234-000000000000 + type: string + relationships: + $ref: '#/components/schemas/IncidentTodoRelationships' + type: + $ref: '#/components/schemas/IncidentTodoType' + required: + - id + - type + type: object + IncidentTodoResponseIncludedItem: + description: An object related to an incident todo that is included in the response. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + IncidentTodoCreateData: + description: Incident todo data for a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentTodoAttributes' + type: + $ref: '#/components/schemas/IncidentTodoType' + required: + - type + - attributes + type: object + IncidentTodoPatchData: + description: Incident todo data for a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentTodoAttributes' + type: + $ref: '#/components/schemas/IncidentTodoType' + required: + - type + - attributes + type: object + IncidentResponderDataResponse: + description: Incident responder data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentResponderDataAttributesResponse' + id: + description: The responder identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentResponderRelationships' + type: + $ref: '#/components/schemas/IncidentResponderType' + required: + - id + - type + - attributes + type: object + IncidentResponderDataRequest: + description: Incident responder data in a create request. + properties: + relationships: + $ref: '#/components/schemas/IncidentResponderRelationshipsRequest' + type: + $ref: '#/components/schemas/IncidentResponderType' + required: + - type + - relationships + type: object + IncidentServiceNowRecordDataRequest: + description: ServiceNow record data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentServiceNowRecordDataAttributesRequest' + type: + $ref: '#/components/schemas/IncidentServiceNowRecordPromptType' + required: + - type + - attributes + type: object + IncidentTimestampOverrideDataResponse: + description: Timestamp override data in a response. + properties: + attributes: + $ref: '#/components/schemas/IncidentTimestampOverrideDataAttributesResponse' + id: + description: The timestamp override identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentTimestampOverrideRelationships' + type: + $ref: '#/components/schemas/IncidentTimestampOverrideType' + required: + - id + - type + - attributes + type: object + IncidentTimestampOverrideDataRequest: + description: Timestamp override data in a create request. + properties: + attributes: + $ref: '#/components/schemas/IncidentTimestampOverrideDataAttributesRequest' + type: + $ref: '#/components/schemas/IncidentTimestampOverrideType' + required: + - type + - attributes + type: object + IncidentTimestampOverridePatchDataRequest: + description: Timestamp override data in a patch request. + properties: + attributes: + $ref: '#/components/schemas/IncidentTimestampOverridePatchDataAttributesRequest' + id: + description: The timestamp override identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + $ref: '#/components/schemas/IncidentTimestampOverrideType' + required: + - id + - type + type: object + MaintenanceWindow: + description: A maintenance window that defines a scheduled time period during which case-related notifications and automation rules are suppressed. Each maintenance window applies to cases matching a specified query. + properties: + attributes: + $ref: '#/components/schemas/MaintenanceWindowAttributes' + id: + description: The maintenance window's identifier. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + type: string + type: + $ref: '#/components/schemas/MaintenanceWindowResourceType' + required: + - id + - type + - attributes + type: object + MaintenanceWindowCreate: + description: Data object for creating a maintenance window. + properties: + attributes: + $ref: '#/components/schemas/MaintenanceWindowCreateAttributes' + type: + $ref: '#/components/schemas/MaintenanceWindowResourceType' + required: + - type + - attributes + type: object + MaintenanceWindowUpdate: + description: Data object for updating a maintenance window. + properties: + attributes: + $ref: '#/components/schemas/MaintenanceWindowUpdateAttributes' + type: + $ref: '#/components/schemas/MaintenanceWindowResourceType' + required: + - type + type: object + EscalationPolicyCreateRequestData: + description: Represents the data for creating an escalation policy, including its attributes, relationships, and resource type. + properties: + attributes: + $ref: '#/components/schemas/EscalationPolicyCreateRequestDataAttributes' + relationships: + $ref: '#/components/schemas/EscalationPolicyCreateRequestDataRelationships' + type: + $ref: '#/components/schemas/EscalationPolicyCreateRequestDataType' + required: + - type + - attributes + type: object + EscalationPolicyData: + description: Represents the data for a single escalation policy, including its attributes, ID, relationships, and resource type. + properties: + attributes: + $ref: '#/components/schemas/EscalationPolicyDataAttributes' + id: + description: Specifies the unique identifier of the escalation policy. + example: ab000000-0000-0000-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/EscalationPolicyDataRelationships' + type: + $ref: '#/components/schemas/EscalationPolicyDataType' + required: + - type + type: object + EscalationPolicyIncluded: + description: Represents included related resources when retrieving an escalation policy, such as teams, steps, or targets. + properties: + attributes: + $ref: '#/components/schemas/EscalationPolicyStepAttributes' + id: + description: Specifies the unique identifier of this escalation policy step. + type: string + relationships: + $ref: '#/components/schemas/EscalationPolicyStepRelationships' + type: + $ref: '#/components/schemas/EscalationPolicyStepType' + required: + - type + - id + - attributes + - relationships + type: object + EscalationPolicyUpdateRequestData: + description: Represents the data for updating an existing escalation policy, including its ID, attributes, relationships, and resource type. + properties: + attributes: + $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataAttributes' + id: + description: Specifies the unique identifier of the escalation policy being updated. + example: 00000000-aba1-0000-0000-000000000000 + type: string + relationships: + $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataRelationships' + type: + $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataType' + required: + - type + - id + - attributes + type: object + CreatePageRequestData: + description: The main request body, including attributes and resource type. + properties: + attributes: + $ref: '#/components/schemas/CreatePageRequestDataAttributes' + type: + $ref: '#/components/schemas/CreatePageRequestDataType' + required: + - type + type: object + CreatePageResponseData: + description: The information returned after successfully creating a page. + properties: + id: + description: The unique ID of the created page. + type: string + type: + $ref: '#/components/schemas/CreatePageResponseDataType' + required: + - type + type: object + ScheduleCreateRequestData: + description: The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type. + properties: + attributes: + $ref: '#/components/schemas/ScheduleCreateRequestDataAttributes' + relationships: + $ref: '#/components/schemas/ScheduleCreateRequestDataRelationships' + type: + $ref: '#/components/schemas/ScheduleCreateRequestDataType' + required: + - type + - attributes + type: object + ScheduleData: + description: Represents the primary data object for a schedule, linking attributes and relationships. + properties: + attributes: + $ref: '#/components/schemas/ScheduleDataAttributes' + id: + description: The schedule's unique identifier. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + relationships: + $ref: '#/components/schemas/ScheduleDataRelationships' + type: + $ref: '#/components/schemas/ScheduleDataType' + required: + - type + type: object + ScheduleDataIncludedItem: + description: Any additional resources related to this schedule, such as teams and layers. + properties: + attributes: + $ref: '#/components/schemas/TeamReferenceAttributes' + id: + description: The team's unique identifier. + type: string + type: + $ref: '#/components/schemas/TeamReferenceType' + relationships: + $ref: '#/components/schemas/LayerRelationships' + required: + - type + type: object + ScheduleUpdateRequestData: + description: Contains all data needed to update an existing schedule, including its attributes (such as name and time zone) and any relationships to teams. + properties: + attributes: + $ref: '#/components/schemas/ScheduleUpdateRequestDataAttributes' + id: + description: The ID of the schedule to be updated. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + type: string + relationships: + $ref: '#/components/schemas/ScheduleUpdateRequestDataRelationships' + type: + $ref: '#/components/schemas/ScheduleUpdateRequestDataType' + required: + - type + - id + - attributes + type: object + ShiftData: + description: Data for an on-call shift. + properties: + attributes: + $ref: '#/components/schemas/ShiftDataAttributes' + id: + description: The `ShiftData` `id`. + type: string + relationships: + $ref: '#/components/schemas/ShiftDataRelationships' + type: + $ref: '#/components/schemas/ShiftDataType' + required: + - type + type: object + ShiftIncluded: + description: Included data for shift operations. + properties: + attributes: + $ref: '#/components/schemas/ScheduleUserAttributes' + id: + description: The unique user identifier. + type: string + type: + $ref: '#/components/schemas/ScheduleUserType' + required: + - type + type: object + ScheduleOnCallRespondersData: + description: The main data object representing a schedule's on-call responders lookup, including relationships and metadata. + properties: + attributes: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataAttributes' + id: + description: Unique identifier of this on-call responders lookup. + type: string + relationships: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationships' + type: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataType' + required: + - type + type: object + ScheduleOnCallRespondersIncluded: + description: Represents a union of related resources included in the response, such as responder groups, shifts, schedules, and users. + properties: + attributes: + $ref: '#/components/schemas/ScheduleOnCallResponderDataAttributes' + id: + description: Unique identifier of this responder group. + type: string + relationships: + $ref: '#/components/schemas/ScheduleOnCallResponderDataRelationships' + type: + $ref: '#/components/schemas/ScheduleOnCallResponderDataType' + required: + - type + type: object + TeamOnCallRespondersData: + description: Defines the main on-call responder object for a team, including relationships and metadata. + properties: + id: + description: Unique identifier of the on-call responder configuration. + type: string + relationships: + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationships' + type: + $ref: '#/components/schemas/TeamOnCallRespondersDataType' + required: + - type + type: object + TeamOnCallRespondersIncluded: + description: Represents an union of related resources included in the response, such as users and escalation steps. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + required: + - type + TeamRoutingRulesData: + description: Represents the top-level data object for team routing rules, containing the ID, relationships, and resource type. + properties: + id: + description: Specifies the unique identifier of this team routing rules record. + type: string + relationships: + $ref: '#/components/schemas/TeamRoutingRulesDataRelationships' + type: + $ref: '#/components/schemas/TeamRoutingRulesDataType' + required: + - type + type: object + TeamRoutingRulesIncluded: + description: Represents additional included resources for team routing rules, such as associated routing rules. + properties: + attributes: + $ref: '#/components/schemas/RoutingRuleAttributes' + id: + description: Specifies the unique identifier of this routing rule. + type: string + relationships: + $ref: '#/components/schemas/RoutingRuleRelationships' + type: + $ref: '#/components/schemas/RoutingRuleType' + required: + - type + type: object + TeamRoutingRulesRequestData: + description: Holds the data necessary to create or update team routing rules, including attributes, ID, and resource type. + properties: + attributes: + $ref: '#/components/schemas/TeamRoutingRulesRequestDataAttributes' + id: + description: Specifies the unique identifier for this set of team routing rules. + type: string + type: + $ref: '#/components/schemas/TeamRoutingRulesRequestDataType' + required: + - type + type: object + NotificationChannelData: + description: Data for an on-call notification channel + properties: + attributes: + $ref: '#/components/schemas/NotificationChannelAttributes' + id: + description: Unique identifier for the channel + type: string + type: + $ref: '#/components/schemas/NotificationChannelType' + required: + - type + type: object + CreateNotificationChannelData: + description: Data for creating an on-call notification channel + properties: + attributes: + $ref: '#/components/schemas/CreateNotificationChannelAttributes' + type: + $ref: '#/components/schemas/NotificationChannelType' + required: + - type + type: object + OnCallNotificationRuleData: + description: Data for an on-call notification rule + properties: + attributes: + $ref: '#/components/schemas/OnCallNotificationRuleAttributes' + id: + description: Unique identifier for the rule + type: string + relationships: + $ref: '#/components/schemas/OnCallNotificationRuleRelationships' + type: + $ref: '#/components/schemas/OnCallNotificationRuleType' + required: + - type + type: object + OnCallNotificationRulesIncluded: + description: Represents additional included resources for a on-call notification rules + properties: + attributes: + $ref: '#/components/schemas/NotificationChannelAttributes' + id: + description: Unique identifier for the channel + type: string + type: + $ref: '#/components/schemas/NotificationChannelType' + required: + - type + type: object + CreateOnCallNotificationRuleRequestData: + description: Data for creating an on-call notification rule + properties: + attributes: + $ref: '#/components/schemas/OnCallNotificationRuleRequestAttributes' + relationships: + $ref: '#/components/schemas/OnCallNotificationRuleRelationships' + type: + $ref: '#/components/schemas/OnCallNotificationRuleType' + required: + - type + type: object + UpdateOnCallNotificationRuleRequestData: + description: Data for updating an on-call notification rule + properties: + attributes: + $ref: '#/components/schemas/UpdateOnCallNotificationRuleRequestAttributes' + id: + description: Unique identifier for the rule + type: string + relationships: + $ref: '#/components/schemas/OnCallNotificationRuleRelationships' + type: + $ref: '#/components/schemas/OnCallNotificationRuleType' + required: + - type + type: object + ServiceDefinitionSchemaVersions: + description: Schema versions + enum: + - v1 + - v2 + - v2.1 + - v2.2 + type: string + x-enum-varnames: + - V1 + - V2 + - V2_1 + - V2_2 + ServiceDefinitionData: + description: Service definition data. + properties: + attributes: + $ref: '#/components/schemas/ServiceDefinitionDataAttributes' + id: + description: Service definition id. + type: string + type: + description: Service definition type. + type: string + type: object + ServiceDefinitionV2Dot2: + description: Service definition v2.2 for providing service metadata and integrations. + properties: + application: + description: Identifier for a group of related services serving a product feature, which the service is a part of. + example: my-app + type: string + ci-pipeline-fingerprints: + description: A set of CI fingerprints. + example: + - j88xdEy0J5lc + - eZ7LMljCk8vo + items: + description: A CI pipeline fingerprint string. + type: string + type: array + contacts: + description: A list of contacts related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Contact' + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + description: + description: A short description of the service. + example: My service description + type: string + extensions: + additionalProperties: {} + description: Extensions to v2.2 schema. + example: + myorg/extension: extensionValue + type: object + integrations: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Integrations' + languages: + description: 'The service''s programming language. Datadog recognizes the following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, and `c++`.' + example: + - dotnet + - go + - java + - js + - php + - python + - ruby + - c++ + items: + description: A programming language identifier. + type: string + type: array + lifecycle: + description: The current life cycle phase of the service. + example: sandbox + type: string + links: + description: A list of links related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Link' + type: array + schema-version: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Version' + tags: + description: A set of custom tags. + example: + - my:tag + - service:tag + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. + example: my-team + type: string + tier: + description: Importance of the service. + example: High + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Type' + required: + - schema-version + - dd-service + type: object + ServiceDefinitionV2Dot1: + description: Service definition v2.1 for providing service metadata and integrations. + properties: + application: + description: Identifier for a group of related services serving a product feature, which the service is a part of. + example: my-app + type: string + contacts: + description: A list of contacts related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1Contact' + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + description: + description: A short description of the service. + example: My service description + type: string + extensions: + additionalProperties: {} + description: Extensions to v2.1 schema. + example: + myorg/extension: extensionValue + type: object + integrations: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1Integrations' + lifecycle: + description: The current life cycle phase of the service. + example: sandbox + type: string + links: + description: A list of links related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1Link' + type: array + schema-version: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1Version' + tags: + description: A set of custom tags. + example: + - my:tag + - service:tag + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. + example: my-team + type: string + tier: + description: Importance of the service. + example: High + type: string + required: + - schema-version + - dd-service + type: object + ServiceDefinitionV2: + description: Service definition V2 for providing service metadata and integrations. + properties: + contacts: + description: A list of contacts related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Contact' + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + dd-team: + description: Experimental feature. A Team handle that matches a Team in the Datadog Teams product. + example: my-team + type: string + docs: + description: A list of documentation related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Doc' + type: array + extensions: + additionalProperties: {} + description: Extensions to V2 schema. + example: + myorg/extension: extensionValue + type: object + integrations: + $ref: '#/components/schemas/ServiceDefinitionV2Integrations' + links: + description: A list of links related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Link' + type: array + repos: + description: A list of code repositories related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Repo' + type: array + schema-version: + $ref: '#/components/schemas/ServiceDefinitionV2Version' + tags: + description: A set of custom tags. + example: + - my:tag + - service:tag + items: + description: A custom tag string in `key:value` format. + type: string + type: array + team: + description: Team that owns the service. + example: my-team + type: string + required: + - schema-version + - dd-service + type: object + ServiceDefinitionRaw: + description: Service Definition in raw JSON/YAML representation. + example: |- + --- + schema-version: v2 + dd-service: my-service + type: string + SloReportCreateRequestData: + description: The data portion of the SLO report request. + properties: + attributes: + $ref: '#/components/schemas/SloReportCreateRequestAttributes' + required: + - attributes + type: object + SLOReportPostResponseData: + description: The data portion of the SLO report response. + properties: + id: + description: The ID of the report job. + example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 + type: string + type: + description: The type of ID. + example: report_id + type: string + type: object + SLOReportStatusGetResponseData: + description: The data portion of the SLO report status response. + properties: + attributes: + $ref: '#/components/schemas/SLOReportStatusGetResponseAttributes' + id: + description: The ID of the report job. + example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 + type: string + type: + description: The type of ID. + example: report_id + type: string + type: object + SloStatusData: + description: The data portion of the SLO status response. + properties: + attributes: + $ref: '#/components/schemas/SloStatusDataAttributes' + id: + description: The ID of the SLO. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/SloStatusType' + required: + - id + - type + - attributes + type: object + StatusPageData: + description: The data object for a status page. + properties: + attributes: + $ref: '#/components/schemas/StatusPageDataAttributes' + id: + description: The ID of the status page. + format: uuid + type: string + relationships: + $ref: '#/components/schemas/StatusPageDataRelationships' + type: + $ref: '#/components/schemas/StatusPageDataType' + required: + - type + type: object + StatusPageArrayIncluded: + description: An included resource related to a status page. + properties: + attributes: + $ref: '#/components/schemas/StatusPagesUserAttributes' + id: + description: The ID of the Datadog user. + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + type: object + PaginationMeta: + description: Response metadata. + properties: + page: + $ref: '#/components/schemas/PaginationMetaPage' + readOnly: true + type: object + CreateStatusPageRequestData: + description: The data object for creating a status page. + properties: + attributes: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributes' + type: + $ref: '#/components/schemas/StatusPageDataType' + required: + - attributes + - type + type: object + DegradationData: + description: The data object for a degradation. + properties: + attributes: + $ref: '#/components/schemas/DegradationDataAttributes' + id: + description: The ID of the degradation. + format: uuid + type: string + relationships: + $ref: '#/components/schemas/DegradationDataRelationships' + type: + $ref: '#/components/schemas/PatchDegradationRequestDataType' + required: + - type + type: object + DegradationIncluded: + description: An included resource related to a degradation or maintenance. + properties: + attributes: + $ref: '#/components/schemas/StatusPagesUserAttributes' + id: + description: The ID of the Datadog user. + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + relationships: + $ref: '#/components/schemas/StatusPageAsIncludedRelationships' + required: + - type + type: object + MaintenanceData: + description: The data object for a maintenance. + properties: + attributes: + $ref: '#/components/schemas/MaintenanceDataAttributes' + id: + description: The ID of the maintenance. + format: uuid + type: string + relationships: + $ref: '#/components/schemas/MaintenanceDataRelationships' + type: + $ref: '#/components/schemas/PatchMaintenanceRequestDataType' + required: + - type + type: object + PatchStatusPageRequestData: + description: The data object for updating a status page. + properties: + attributes: + $ref: '#/components/schemas/PatchStatusPageRequestDataAttributes' + id: + description: The ID of the status page. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPageDataType' + required: + - attributes + - id + - type + type: object + StatusPagesComponentData: + description: The data object for a component. + properties: + attributes: + $ref: '#/components/schemas/StatusPagesComponentDataAttributes' + id: + description: The ID of the component. + format: uuid + type: string + relationships: + $ref: '#/components/schemas/StatusPagesComponentDataRelationships' + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' + required: + - type + type: object + StatusPagesComponentArrayIncluded: + description: An included resource related to a component. + properties: + attributes: + $ref: '#/components/schemas/StatusPagesUserAttributes' + id: + description: The ID of the Datadog user. + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + relationships: + $ref: '#/components/schemas/StatusPageAsIncludedRelationships' + required: + - type + type: object + CreateComponentRequestData: + description: The data object for creating a component. + properties: + attributes: + $ref: '#/components/schemas/CreateComponentRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateComponentRequestDataRelationships' + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' + required: + - attributes + - type + type: object + PatchComponentRequestData: + description: The data object for updating a component. + properties: + attributes: + $ref: '#/components/schemas/PatchComponentRequestDataAttributes' + id: + description: The ID of the component. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' + required: + - attributes + - id + - type + type: object + DegradationTemplateData: + description: The data object for a degradation template. + properties: + attributes: + $ref: '#/components/schemas/DegradationTemplateDataAttributes' + id: + description: The ID of the degradation template. + type: string + relationships: + $ref: '#/components/schemas/DegradationTemplateDataRelationships' + type: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' + required: + - type + type: object + CreateDegradationTemplateRequestData: + description: The data object for creating a degradation template. + properties: + attributes: + $ref: '#/components/schemas/CreateDegradationTemplateRequestDataAttributes' + type: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' + required: + - type + type: object + PatchDegradationTemplateRequestData: + description: The data object for updating a degradation template. + properties: + attributes: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataAttributes' + id: + description: The ID of the degradation template. + example: '' + type: string + type: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' + required: + - type + - id + type: object + CreateDegradationRequestData: + description: The data object for creating a degradation. + properties: + attributes: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateDegradationRequestDataRelationships' + type: + $ref: '#/components/schemas/PatchDegradationRequestDataType' + required: + - attributes + - type + type: object + DegradationRequestMeta: + description: The supported metadata for a degradation request. + properties: + idempotency_key: + description: A unique key used to ensure idempotent requests. + example: 1e6a4b8e-4c2f-4a3d-8f1a-9c7d2e5b6f10 + format: uuid + type: string + type: object + CreateBackfilledDegradationRequestData: + description: The data object for creating a backfilled degradation. + properties: + attributes: + $ref: '#/components/schemas/CreateBackfilledDegradationRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateBackfilledDegradationRequestDataRelationships' + type: + $ref: '#/components/schemas/PatchDegradationRequestDataType' + required: + - type + type: object + PatchDegradationRequestData: + description: The data object for updating a degradation. + properties: + attributes: + $ref: '#/components/schemas/PatchDegradationRequestDataAttributes' + id: + description: The ID of the degradation. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + relationships: + $ref: '#/components/schemas/PatchDegradationRequestDataRelationships' + type: + $ref: '#/components/schemas/PatchDegradationRequestDataType' + required: + - attributes + - id + - type + type: object + PatchDegradationUpdateRequestData: + description: The data object for editing a degradation update. + properties: + attributes: + $ref: '#/components/schemas/PatchDegradationUpdateRequestDataAttributes' + id: + description: The ID of the degradation update to edit. + type: string + type: + $ref: '#/components/schemas/PatchDegradationUpdateRequestDataType' + required: + - type + type: object + DegradationUpdateData: + description: The data object for a degradation update. + properties: + attributes: + $ref: '#/components/schemas/DegradationUpdateDataAttributes' + id: + description: The ID of the degradation update. + type: string + relationships: + $ref: '#/components/schemas/DegradationUpdateDataRelationships' + type: + $ref: '#/components/schemas/PatchDegradationUpdateRequestDataType' + required: + - type + type: object + DegradationUpdateIncluded: + description: Resources included in a degradation update response. + properties: + attributes: + $ref: '#/components/schemas/StatusPagesUserAttributes' + id: + description: The ID of the Datadog user. + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + data: + $ref: '#/components/schemas/DegradationData' + included: + description: The included related resources of a degradation. Client must explicitly request these resources by name in the `include` query parameter. + items: + $ref: '#/components/schemas/DegradationIncluded' + type: array + relationships: + $ref: '#/components/schemas/StatusPageAsIncludedRelationships' + required: + - type + type: object + MaintenanceTemplateData: + description: The data object for a maintenance template. + properties: + attributes: + $ref: '#/components/schemas/MaintenanceTemplateDataAttributes' + id: + description: The ID of the maintenance template. + type: string + relationships: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationships' + type: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' + required: + - type + type: object + CreateMaintenanceTemplateRequestData: + description: The data object for creating a maintenance template. + properties: + attributes: + $ref: '#/components/schemas/CreateMaintenanceTemplateRequestDataAttributes' + type: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' + required: + - type + type: object + PatchMaintenanceTemplateRequestData: + description: The data object for updating a maintenance template. + properties: + attributes: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataAttributes' + id: + description: The ID of the maintenance template. + example: '' + type: string + type: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' + required: + - type + - id + type: object + CreateMaintenanceRequestData: + description: The data object for creating a maintenance. + properties: + attributes: + $ref: '#/components/schemas/CreateMaintenanceRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateMaintenanceRequestDataRelationships' + type: + $ref: '#/components/schemas/PatchMaintenanceRequestDataType' + required: + - attributes + - type + type: object + CreateBackfilledMaintenanceRequestData: + description: The data object for creating a backfilled maintenance. + properties: + attributes: + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequestDataAttributes' + relationships: + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequestDataRelationships' + type: + $ref: '#/components/schemas/PatchMaintenanceRequestDataType' + required: + - type + type: object + PatchMaintenanceRequestData: + description: The data object for updating a maintenance. + properties: + attributes: + $ref: '#/components/schemas/PatchMaintenanceRequestDataAttributes' + id: + description: The ID of the maintenance. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + relationships: + $ref: '#/components/schemas/PatchMaintenanceRequestDataRelationships' + type: + $ref: '#/components/schemas/PatchMaintenanceRequestDataType' + required: + - attributes + - type + - id + type: object + PatchMaintenanceUpdateRequestData: + description: The data object for editing a maintenance update. + properties: + attributes: + $ref: '#/components/schemas/PatchMaintenanceUpdateRequestDataAttributes' + id: + description: The ID of the maintenance update to edit. Must match the `update_id` path parameter. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + type: string + type: + $ref: '#/components/schemas/PatchMaintenanceUpdateRequestDataType' + required: + - id + - type + type: object + MaintenanceUpdateData: + description: The data object for a maintenance update. + properties: + attributes: + $ref: '#/components/schemas/MaintenanceUpdateDataAttributes' + id: + description: The ID of the maintenance update. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + relationships: + $ref: '#/components/schemas/MaintenanceUpdateDataRelationships' + type: + $ref: '#/components/schemas/PatchMaintenanceUpdateRequestDataType' + required: + - id + - type + type: object + DowntimeChild: + description: |- + The downtime object definition of the active child for the original parent recurring downtime. This + field will only exist on recurring downtimes. + nullable: true + properties: + active: + description: If a scheduled downtime currently exists. + example: true + readOnly: true + type: boolean + canceled: + description: If a scheduled downtime is canceled. + example: 1412799983 + format: int64 + nullable: true + readOnly: true + type: integer + creator_id: + description: User ID of the downtime creator. + example: 123456 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + disabled: + description: If a downtime has been disabled. + example: false + type: boolean + downtime_type: + description: |- + `0` for a downtime applied on `*` or all, + `1` when the downtime is only scoped to hosts, + or `2` when the downtime is scoped to anything but hosts. + example: 2 + format: int32 + maximum: 2147483647 + readOnly: true + type: integer + end: + description: |- + POSIX timestamp to end the downtime. If not provided, + the downtime is in effect indefinitely until you cancel it. + example: 1412793983 + format: int64 + nullable: true + type: integer + id: + description: The downtime ID. + example: 1626 + format: int64 + readOnly: true + type: integer + message: + description: |- + A message to include with notifications for this downtime. + Email notifications can be sent to specific users by using the same `@username` notation as events. + example: Message on the downtime + nullable: true + type: string + monitor_id: + description: |- + A single monitor to which the downtime applies. + If not provided, the downtime applies to all monitors. + example: 123456 + format: int64 + nullable: true + type: integer + monitor_tags: + description: |- + A comma-separated list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match ALL provided monitor tags. + For example, `service:postgres` **AND** `team:frontend`. + example: + - '*' + items: + description: A monitor tag. + type: string + type: array + mute_first_recovery_notification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + notify_end_states: + $ref: '#/components/schemas/NotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/NotifyEndTypes' + parent_id: + description: ID of the parent Downtime. + example: 123 + format: int64 + nullable: true + type: integer + recurrence: + $ref: '#/components/schemas/DowntimeRecurrence' + scope: + description: |- + The scope(s) to which the downtime applies and must be in `key:value` format. For example, `host:app2`. + Provide multiple scopes as a comma-separated list like `env:dev,env:prod`. + The resulting downtime applies to sources that matches ALL provided scopes (`env:dev` **AND** `env:prod`). + example: + - env:staging + items: + description: A scope. For example, `"env:staging"`. + type: string + type: array + start: + description: |- + POSIX timestamp to start the downtime. + If not provided, the downtime starts the moment it is created. + example: 1412792983 + format: int64 + type: integer + timezone: + description: The timezone in which to display the downtime's start and end times in Datadog applications. + example: America/New_York + type: string + updater_id: + description: ID of the last user that updated the downtime. + example: 123456 + format: int32 + maximum: 2147483647 + nullable: true + readOnly: true + type: integer + readOnly: true + type: object + NotifyEndStates: + default: + - alert + - no data + - warn + description: States for which `notify_end_types` sends out notifications for. + example: + - alert + - no data + - warn + items: + $ref: '#/components/schemas/NotifyEndState' + type: array + NotifyEndTypes: + default: + - expired + description: |- + If set, notifies if a monitor is in an alert-worthy state (`ALERT`, `WARNING`, or `NO DATA`) + when this downtime expires or is canceled. Applied to monitors that change states during + the downtime (such as from `OK` to `ALERT`, `WARNING`, or `NO DATA`), and to monitors that + already have an alert-worthy state when downtime begins. + example: + - canceled + - expired + items: + $ref: '#/components/schemas/NotifyEndType' + type: array + DowntimeRecurrence: + description: An object defining the recurrence of the downtime. + nullable: true + properties: + period: + description: |- + How often to repeat as an integer. + For example, to repeat every 3 days, select a type of `days` and a period of `3`. + example: 1 + format: int32 + maximum: 2147483647 + type: integer + rrule: + description: |- + The `RRULE` standard for defining recurring events (**requires to set "type" to rrule**) + For example, to have a recurring event on the first day of each month, set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to `1`. + Most common `rrule` options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) are supported. + + **Note**: Attributes specifying the duration in `RRULE` are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). + More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api) + example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 + type: string + type: + description: The type of recurrence. Choose from `days`, `weeks`, `months`, `years`, `rrule`. + example: weeks + type: string + until_date: + description: |- + The date at which the recurrence should end as a POSIX timestamp. + `until_occurences` and `until_date` are mutually exclusive. + example: 1447786293 + format: int64 + nullable: true + type: integer + until_occurrences: + description: |- + How many times the downtime is rescheduled. + `until_occurences` and `until_date` are mutually exclusive. + example: 2 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + week_days: + description: |- + A list of week days to repeat on. Choose from `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. + Only applicable when type is weeks. First letter must be capitalized. + example: + - Mon + - Tue + items: + description: A day of the week, formatted as `Mon`, `Tue`, `Wed`, `Thu`, `Fri`, `Sat` or `Sun`. + type: string + nullable: true + type: array + type: object + EventV1: + description: Object representing an event. + properties: + alert_type: + $ref: '#/components/schemas/EventAlertType' + date_happened: + description: |- + POSIX timestamp of the event. Must be sent as an integer (that is no quotes). + Limited to events up to 18 hours in the past and two hours in the future. + format: int64 + type: integer + device_name: + description: A device name. + type: string + host: + description: |- + Host name to associate with the event. + Any tags associated with the host are also applied to this event. + type: string + id: + description: Integer ID of the event. + format: int64 + readOnly: true + type: integer + id_str: + description: |- + Handling IDs as large 64-bit numbers can cause loss of accuracy issues with some programming languages. + Instead, use the string representation of the Event ID to avoid losing accuracy. + readOnly: true + type: string + payload: + description: Payload of the event. + example: '{}' + readOnly: true + type: string + priority: + $ref: '#/components/schemas/EventPriorityV1' + source_type_name: + description: |- + The type of event being posted. Option examples include nagios, hudson, jenkins, my_apps, chef, puppet, git, bitbucket, etc. + The list of standard source attribute values [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + type: string + tags: + description: A list of tags to apply to the event. + example: + - environment:test + items: + description: A tag. + type: string + type: array + text: + description: |- + The body of the event. Limited to 4000 characters. The text supports markdown. + To use markdown in the event text, start the text block with `%%% \n` and end the text block with `\n %%%`. + Use `msg_text` with the Datadog Ruby library. + example: Oh boy! + maxLength: 4000 + type: string + title: + description: The event title. + example: Did you hear the news today? + type: string + url: + description: URL of the event. + readOnly: true + type: string + type: object + EventAlertType: + description: |- + If an alert event is enabled, set its type. + For example, `error`, `warning`, `info`, `success`, `user_update`, + `recommendation`, and `snapshot`. + enum: + - error + - warning + - info + - success + - user_update + - recommendation + - snapshot + example: info + type: string + x-enum-varnames: + - ERROR + - WARNING + - INFO + - SUCCESS + - USER_UPDATE + - RECOMMENDATION + - SNAPSHOT + SLOListResponseMetadata: + description: The metadata object containing additional information about the list of SLOs. + properties: + page: + $ref: '#/components/schemas/SLOListResponseMetadataPage' + type: object + ServiceLevelObjectiveQuery: + description: |- + A count-based (metric) SLO query. This field is superseded by `sli_specification` but is retained for backwards compatibility. Note that Datadog only allows the sum by aggregator + to be used because this will sum up all request counts instead of averaging them, or taking the max or + min of all of those requests. + properties: + denominator: + description: A Datadog metric query for total (valid) events. + example: sum:my.custom.metric{*}.as_count() + type: string + numerator: + description: A Datadog metric query for good events. + example: sum:my.custom.metric{type:good}.as_count() + type: string + required: + - numerator + - denominator + type: object + SLOSliSpec: + description: A generic SLI specification. This is used for time-slice and count-based (metric) SLOs only. + additionalProperties: false + example: + time_slice: + comparator: < + query: + formulas: + - formula: query2/query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{*} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.errors{*} by {env}.as_count() + threshold: 5 + count: + bad_events_formula: query2 + good_events_formula: query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count() + properties: + time_slice: + $ref: '#/components/schemas/SLOTimeSliceCondition' + count: + $ref: '#/components/schemas/SLOCountDefinition' + required: + - time_slice + - count + type: object + SLOThreshold: + description: SLO thresholds (target and optionally warning) for a single time window. + properties: + target: + description: |- + The target value for the service level indicator within the corresponding + timeframe. + example: 99.9 + format: double + type: number + target_display: + description: |- + A string representation of the target that indicates its precision. + It uses trailing zeros to show significant decimal places (for example `98.00`). + + Always included in service level objective responses. Ignored in + create/update requests. + example: '99.9' + type: string + timeframe: + $ref: '#/components/schemas/SLOTimeframe' + warning: + description: The warning value for the service level objective. + example: 90 + format: double + type: number + warning_display: + description: |- + A string representation of the warning target (see the description of + the `target_display` field for details). + + Included in service level objective responses if a warning target exists. + Ignored in create/update requests. + example: '90.0' + type: string + required: + - timeframe + - target + type: object + SLOTimeframe: + description: |- + The SLO time window options. Note that "custom" is not a valid option for creating + or updating SLOs. It is only used when querying SLO history over custom timeframes. + enum: + - 7d + - 30d + - 90d + - custom + example: 30d + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + - CUSTOM + SLOType: + description: The type of the service level objective. + enum: + - metric + - monitor + - time_slice + example: metric + type: string + x-enum-varnames: + - METRIC + - MONITOR + - TIME_SLICE + SLOBulkDeleteResponseData: + description: An array of service level objective objects. + properties: + deleted: + description: |- + An array of service level objective object IDs that indicates + which objects that were completely deleted. + items: + description: A deleted SLO ID. + type: string + type: array + updated: + description: |- + An array of service level objective object IDs that indicates + which objects that were modified (objects for which at least one + threshold was deleted, but that were not completely deleted). + items: + description: An updated SLO ID. + type: string + type: array + type: object + SLOBulkDeleteError: + description: Object describing the error. + properties: + id: + description: |- + The ID of the service level objective object associated with + this error. + example: '' + type: string + message: + description: The error message. + example: '' + type: string + timeframe: + $ref: '#/components/schemas/SLOErrorTimeframe' + required: + - id + - timeframe + - message + type: object + CheckCanDeleteSLOResponseData: + description: An array of service level objective objects. + properties: + ok: + description: An array of SLO IDs that can be safely deleted. + items: + description: An SLO ID. + type: string + type: array + type: object + SLOCorrection: + description: The response object of a list of SLO corrections. + properties: + attributes: + $ref: '#/components/schemas/SLOCorrectionResponseAttributes' + id: + description: The ID of the SLO correction. + type: string + type: + $ref: '#/components/schemas/SLOCorrectionType' + type: object + ResponseMetaAttributes: + description: Object describing meta attributes of response. + properties: + page: + $ref: '#/components/schemas/Pagination' + type: object + SLOCorrectionCreateData: + description: The data object associated with the SLO correction to be created. + properties: + attributes: + $ref: '#/components/schemas/SLOCorrectionCreateRequestAttributes' + type: + $ref: '#/components/schemas/SLOCorrectionType' + required: + - type + type: object + SLOCorrectionUpdateData: + description: The data object associated with the SLO correction to be updated. + properties: + attributes: + $ref: '#/components/schemas/SLOCorrectionUpdateRequestAttributes' + type: + $ref: '#/components/schemas/SLOCorrectionType' + type: object + SearchSLOResponseData: + description: Data from search SLO response. + properties: + attributes: + $ref: '#/components/schemas/SearchSLOResponseDataAttributes' + type: + description: Type of service level objective result. + example: '' + type: string + type: object + SearchSLOResponseLinks: + description: Pagination links. + properties: + first: + description: Link to last page. + type: string + last: + description: Link to first page. + nullable: true + type: string + next: + description: Link to the next page. + type: string + prev: + description: Link to previous page. + nullable: true + type: string + self: + description: Link to current page. + type: string + type: object + SearchSLOResponseMeta: + description: Searches metadata returned by the API. + properties: + pagination: + $ref: '#/components/schemas/SearchSLOResponseMetaPage' + type: object + SLOResponseData: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, `tags`, etc.). + properties: + configured_alert_ids: + description: A list of SLO monitors IDs that reference this SLO. This field is returned only when `with_configured_alert_ids` parameter is true in query. + example: + - 123 + - 456 + - 789 + items: + description: A monitor ID. + format: int64 + type: integer + type: array + created_at: + description: |- + Creation timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + creator: + $ref: '#/components/schemas/CreatorV1' + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + groups: + description: |- + A list of (up to 20) monitor groups that narrow the scope of a monitor service level objective. + + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the `monitor_ids` field is one. + example: + - env:prod + - role:mysql + items: + description: A group name, for instance `env:prod`. + type: string + type: array + id: + description: |- + A unique identifier for the service level objective object. + + Always included in service level objective responses. + readOnly: true + type: string + modified_at: + description: |- + Modification timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + monitor_ids: + description: |- + A list of monitor ids that defines the scope of a monitor service level + objective. **Required if type is `monitor`**. + items: + description: A monitor ID. + format: int64 + type: integer + type: array + monitor_tags: + description: |- + The union of monitor tags for all monitors referenced by the `monitor_ids` + field. + Always included in service level objective responses for monitor service level + objectives (but may be empty). Ignored in create/update requests. Does not + affect which monitors are included in the service level objective (that is + determined entirely by the `monitor_ids` field). + items: + description: A monitor tag. + type: string + type: array + name: + description: The name of the service level objective object. + example: Custom Metric SLO + type: string + query: + $ref: '#/components/schemas/ServiceLevelObjectiveQuery' + description: The metric query used to define a count-based SLO as the ratio of good events to total events. + sli_specification: + $ref: '#/components/schemas/SLOSliSpec' + description: A generic SLI specification. This is currently used for time-slice and count-based (metric) SLOs only. + tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + example: + - env:prod + - app:core + items: + description: A tag to apply to your SLO. + type: string + type: array + target_threshold: + description: |- + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + example: 99.9 + format: double + type: number + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: + - target: 95 + timeframe: 7d + - target: 95 + timeframe: 30d + warning: 97 + items: + $ref: '#/components/schemas/SLOThreshold' + type: array + timeframe: + $ref: '#/components/schemas/SLOTimeframe' + type: + $ref: '#/components/schemas/SLOType' + warning_threshold: + description: |- + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. + example: 99.95 + format: double + type: number + type: object + CreatorV1: + description: Object describing the creator of the shared element. + properties: + email: + description: Email of the creator. + type: string + handle: + description: Handle of the creator. + type: string + name: + description: Name of the creator. + nullable: true + type: string + readOnly: true + type: object + SLOHistoryResponseData: + description: An array of service level objective objects. + properties: + from_ts: + description: The `from` timestamp in epoch seconds. + example: 1615323990 + format: int64 + type: integer + group_by: + description: |- + For `metric` based SLOs where the query includes a group-by clause, this represents the list of grouping parameters. + + This is not included in responses for `monitor` based SLOs. + items: + description: A grouping parameter. + type: string + type: array + groups: + description: |- + For grouped SLOs, this represents SLI data for specific groups. + + This is not included in the responses for `metric` based SLOs. + items: + $ref: '#/components/schemas/SLOHistoryMonitor' + type: array + monitors: + description: |- + For multi-monitor SLOs, this represents SLI data for specific monitors. + + This is not included in the responses for `metric` based SLOs. + items: + $ref: '#/components/schemas/SLOHistoryMonitor' + type: array + overall: + $ref: '#/components/schemas/SLOHistorySLIData' + series: + $ref: '#/components/schemas/SLOHistoryMetrics' + thresholds: + additionalProperties: + $ref: '#/components/schemas/SLOThreshold' + description: mapping of string timeframe to the SLO threshold. + example: + my_service: + target: 95 + timeframe: 7d + type: object + to_ts: + description: The `to` timestamp in epoch seconds. + example: 1615928790 + format: int64 + type: integer + type: + $ref: '#/components/schemas/SLOType' + type_id: + $ref: '#/components/schemas/SLOTypeNumeric' + type: object + SLOHistoryResponseError: + description: A list of errors while querying the history data for the service level objective. + properties: + error: + description: Human readable error. + type: string + type: object + ListInvestigationsResponseDataAttributes: + description: Attributes of an investigation list item. + properties: + status: + description: The current status of the investigation. + example: conclusive + type: string + title: + description: The title of the investigation. + example: Monitor alert investigation for web-server-01 + type: string + required: + - status + - title + type: object + InvestigationType: + description: The resource type for investigations. + enum: + - investigation + example: investigation + type: string + x-enum-varnames: + - INVESTIGATION + ListInvestigationsResponseMetaPage: + description: Pagination metadata. + properties: + limit: + description: Maximum number of results per page. + example: 10 + format: int64 + type: integer + offset: + description: Offset of the current page. + example: 0 + format: int64 + type: integer + total: + description: Total number of investigations. + example: 50 + format: int64 + type: integer + required: + - total + - limit + - offset + type: object + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + TriggerInvestigationRequestDataAttributes: + description: Attributes for the trigger investigation request. + properties: + trigger: + $ref: '#/components/schemas/TriggerAttributes' + required: + - trigger + type: object + TriggerInvestigationRequestType: + description: The resource type for trigger investigation requests. + enum: + - trigger_investigation_request + example: trigger_investigation_request + type: string + x-enum-varnames: + - TRIGGER_INVESTIGATION_REQUEST + TriggerInvestigationResponseDataAttributes: + description: Attributes for the trigger investigation response. + properties: + investigation_id: + description: The ID of the investigation that was created. + example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d + type: string + required: + - investigation_id + type: object + TriggerInvestigationResponseType: + description: The resource type for trigger investigation responses. + enum: + - trigger_investigation_response + example: trigger_investigation_response + type: string + x-enum-varnames: + - TRIGGER_INVESTIGATION_RESPONSE + GetInvestigationResponseDataAttributes: + description: Attributes of the investigation. + properties: + conclusions: + description: The conclusions drawn from the investigation. + items: + $ref: '#/components/schemas/InvestigationConclusion' + type: array + status: + description: The current status of the investigation. + example: conclusive + type: string + title: + description: The title of the investigation. + example: Monitor alert investigation for web-server-01 + type: string + required: + - title + - status + - conclusions + type: object + CaseAttributes: + description: Case resource attributes + properties: + archived_at: + description: Timestamp of when the case was archived + format: date-time + nullable: true + readOnly: true + type: string + attributes: + $ref: '#/components/schemas/CaseObjectAttributes' + closed_at: + description: Timestamp of when the case was closed + format: date-time + nullable: true + readOnly: true + type: string + created_at: + description: Timestamp of when the case was created + format: date-time + readOnly: true + type: string + custom_attributes: + additionalProperties: + $ref: '#/components/schemas/CustomAttributeValue' + description: Case custom attributes + type: object + description: + description: Description + type: string + jira_issue: + $ref: '#/components/schemas/JiraIssue' + key: + description: Key + example: CASEM-4523 + type: string + modified_at: + description: Timestamp of when the case was last modified + format: date-time + nullable: true + readOnly: true + type: string + priority: + $ref: '#/components/schemas/CasePriority' + service_now_ticket: + $ref: '#/components/schemas/ServiceNowTicket' + status: + $ref: '#/components/schemas/CaseStatus' + status_group: + $ref: '#/components/schemas/CaseStatusGroup' + status_name: + $ref: '#/components/schemas/CaseStatusName' + title: + description: Title + example: Memory leak investigation on API + type: string + type: + $ref: '#/components/schemas/CaseType' + type_id: + description: Case type UUID + example: 3b010bde-09ce-4449-b745-71dd5f861963 + type: string + type: object + CaseRelationships: + description: Resources related to a case + properties: + assignee: + $ref: '#/components/schemas/NullableUserRelationship' + created_by: + $ref: '#/components/schemas/NullableUserRelationship' + modified_by: + $ref: '#/components/schemas/NullableUserRelationship' + project: + $ref: '#/components/schemas/ProjectRelationship' + type: object + CaseResourceType: + default: case + description: JSON:API resource type for cases. + enum: + - case + example: case + type: string + x-enum-varnames: + - CASE + CasesResponseMetaPagination: + description: Pagination metadata + properties: + current: + description: Current page number + format: int64 + type: integer + size: + description: Number of cases in current page + format: int64 + type: integer + total: + description: Total number of pages + format: int64 + type: integer + type: object + CaseCreateAttributes: + description: Case creation attributes + properties: + custom_attributes: + additionalProperties: + $ref: '#/components/schemas/CustomAttributeValue' + description: Case custom attributes + type: object + description: + description: Description + type: string + priority: + $ref: '#/components/schemas/CasePriority' + status_name: + $ref: '#/components/schemas/CaseStatusName' + title: + description: Title + example: Security breach investigation + type: string + type_id: + description: Case type UUID + example: 3b010bde-09ce-4449-b745-71dd5f861963 + type: string + required: + - title + - type_id + type: object + CaseCreateRelationships: + description: Relationships formed with the case on creation + properties: + assignee: + $ref: '#/components/schemas/NullableUserRelationship' + project: + $ref: '#/components/schemas/ProjectRelationship' + required: + - project + type: object + CaseAggregateRequestAttributes: + description: Attributes for the aggregation request, including the search query and grouping configuration. + properties: + group_by: + $ref: '#/components/schemas/CaseAggregateGroupBy' + query_filter: + description: A search query to filter which cases are included in the aggregation. Uses the same syntax as the Case Management search bar. + example: service:case-api + type: string + required: + - query_filter + - group_by + type: object + CaseAggregateResourceType: + description: JSON:API resource type for case aggregation requests. + enum: + - aggregate + example: aggregate + type: string + x-enum-varnames: + - AGGREGATE + CaseAggregateResponseAttributes: + description: Attributes of the aggregation result, including the total count across all groups and the per-group breakdowns. + properties: + groups: + description: Aggregated groups. + items: + $ref: '#/components/schemas/CaseAggregateGroup' + type: array + total: + description: Total count of aggregated cases. + example: 100 + format: double + type: number + required: + - total + - groups + type: object + CaseBulkUpdateRequestAttributes: + description: Attributes for the bulk update, specifying which cases to update and the action to apply. + properties: + case_ids: + description: An array of case identifiers to apply the bulk action to. + example: + - case-id-1 + - case-id-2 + items: + type: string + type: array + payload: + additionalProperties: + type: string + description: A key-value map of action-specific parameters. The required keys depend on the action type (for example, `priority` for the priority action, `assignee_id` for assign). + example: + priority: P1 + type: object + type: + $ref: '#/components/schemas/CaseBulkActionType' + required: + - case_ids + - type + type: object + CaseBulkResourceType: + description: JSON:API resource type for bulk case operations. + enum: + - bulk + example: bulk + type: string + x-enum-varnames: + - BULK + CaseCountResponseAttributes: + description: Attributes for the count response, including the total count and optional facet breakdowns. + properties: + groups: + description: List of facet groups, one per field specified in `group_bys`. + items: + $ref: '#/components/schemas/CaseCountGroup' + type: array + required: + - groups + type: object + CaseLinkAttributes: + description: Attributes describing a directional relationship between two entities (cases, incidents, or pages). + properties: + child_entity_id: + description: The UUID of the child (target) entity in the relationship. + example: 4417921d-0866-4a38-822c-6f2a0f65f77d + type: string + child_entity_type: + description: 'The type of the child entity. Allowed values: `CASE`, `INCIDENT`, `PAGE`, `AGENT_CONVERSATION`.' + example: CASE + type: string + parent_entity_id: + description: The UUID of the parent (source) entity in the relationship. + example: bf0cbac6-4c16-4cfb-b6bf-ca5e0ec37a4f + type: string + parent_entity_type: + description: 'The type of the parent entity. Allowed values: `CASE`, `INCIDENT`, `PAGE`, `AGENT_CONVERSATION`.' + example: CASE + type: string + relationship: + description: 'The type of directional relationship. Allowed values: `RELATES_TO` (bidirectional association), `CAUSES` (parent causes child), `BLOCKS` (parent blocks child), `DUPLICATES` (parent duplicates child), `PARENT_OF` (hierarchical), `SUCCESSOR_OF` (sequence), `ESCALATES_TO` (priority escalation).' + example: BLOCKS + type: string + required: + - relationship + - parent_entity_id + - parent_entity_type + - child_entity_id + - child_entity_type + type: object + CaseLinkResourceType: + description: JSON:API resource type for case links. + enum: + - link + example: link + type: string + x-enum-varnames: + - LINK + ProjectAttributes: + description: Project attributes. + properties: + columns_config: + $ref: '#/components/schemas/ProjectColumnsConfig' + enabled_custom_case_types: + description: List of enabled custom case type IDs. + items: + description: A custom case type identifier. + type: string + type: array + key: + description: The project's key. + example: CASEM + type: string + name: + description: Project's name. + example: Security Investigation + type: string + restricted: + description: Whether the project is restricted. + type: boolean + settings: + $ref: '#/components/schemas/ProjectSettings' + type: object + ProjectRelationships: + description: Project relationships. + properties: + member_team: + $ref: '#/components/schemas/RelationshipToTeamLinks' + member_user: + $ref: '#/components/schemas/UsersRelationship' + type: object + ProjectResourceType: + default: project + description: Project resource type. + enum: + - project + example: project + type: string + x-enum-varnames: + - PROJECT + ProjectCreateAttributes: + description: Project creation attributes. + properties: + enabled_custom_case_types: + description: List of enabled custom case type IDs. + items: + description: A custom case type identifier. + type: string + type: array + key: + description: Project's key. Cannot be "CASE". + example: SEC + type: string + name: + description: Project name. + example: Security Investigation + type: string + team_uuid: + description: Team UUID to associate with the project. + type: string + required: + - name + - key + type: object + ProjectFavoriteResourceType: + default: project_favorite + description: JSON:API resource type for project favorites. + enum: + - project_favorite + example: project_favorite + type: string + x-enum-varnames: + - PROJECT_FAVORITE + ProjectUpdateAttributes: + description: Project update attributes. + properties: + columns_config: + $ref: '#/components/schemas/ProjectColumnsConfig' + enabled_custom_case_types: + description: List of enabled custom case type IDs. + items: + description: A custom case type identifier. + type: string + type: array + name: + description: Project name. + type: string + settings: + $ref: '#/components/schemas/ProjectSettings' + team_uuid: + description: Team UUID to associate with the project. + type: string + type: object + CaseNotificationRuleAttributes: + description: Notification rule attributes + properties: + is_enabled: + description: Whether the notification rule is enabled + type: boolean + query: + description: Query to filter cases for this notification rule + type: string + recipients: + description: List of notification recipients + items: + $ref: '#/components/schemas/CaseNotificationRuleRecipient' + type: array + triggers: + description: List of triggers for this notification rule + items: + $ref: '#/components/schemas/CaseNotificationRuleTrigger' + type: array + type: object + CaseNotificationRuleResourceType: + default: notification_rule + description: Notification rule resource type + enum: + - notification_rule + example: notification_rule + type: string + x-enum-varnames: + - NOTIFICATION_RULE + CaseNotificationRuleCreateAttributes: + description: Notification rule creation attributes + properties: + is_enabled: + default: true + description: Whether the notification rule is enabled + type: boolean + query: + description: Query to filter cases for this notification rule + type: string + recipients: + description: List of notification recipients + items: + $ref: '#/components/schemas/CaseNotificationRuleRecipient' + type: array + triggers: + description: List of triggers for this notification rule + items: + $ref: '#/components/schemas/CaseNotificationRuleTrigger' + type: array + required: + - recipients + - triggers + type: object + AutomationRuleAttributes: + description: Core attributes of an automation rule, including its name, trigger condition, action to execute, and current state. + properties: + action: + $ref: '#/components/schemas/AutomationRuleAction' + created_at: + description: Timestamp when the automation rule was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + readOnly: true + type: string + modified_at: + description: Timestamp when the automation rule was last modified. + format: date-time + readOnly: true + type: string + name: + description: A human-readable name for the automation rule, used to identify the rule in the UI and API responses. + example: Auto-assign workflow + type: string + state: + $ref: '#/components/schemas/CaseAutomationRuleState' + trigger: + $ref: '#/components/schemas/AutomationRuleTrigger' + required: + - name + - trigger + - action + - state + - created_at + type: object + AutomationRuleRelationships: + description: Related resources for the automation rule, including the users who created and last modified it. + properties: + created_by: + $ref: '#/components/schemas/NullableUserRelationship' + modified_by: + $ref: '#/components/schemas/NullableUserRelationship' + type: object + CaseAutomationRuleResourceType: + default: rule + description: JSON:API resource type for case automation rules. + enum: + - rule + example: rule + type: string + x-enum-varnames: + - RULE + AutomationRuleCreateAttributes: + description: Attributes required to create an automation rule. + properties: + action: + $ref: '#/components/schemas/AutomationRuleAction' + name: + description: Name of the automation rule. + example: Auto-assign workflow + type: string + state: + $ref: '#/components/schemas/CaseAutomationRuleState' + trigger: + $ref: '#/components/schemas/AutomationRuleTrigger' + required: + - name + - trigger + - action + type: object + CaseTypeResourceAttributes: + description: Attributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request). + properties: + deleted_at: + description: Timestamp when the case type was marked as deleted. A null value indicates the case type is active. + format: date-time + nullable: true + readOnly: true + type: string + description: + description: A detailed description explaining when this case type should be used. + example: Investigations done in case management + type: string + emoji: + description: An emoji icon representing the case type in the UI. + example: 🕵🏻‍♂️ + type: string + name: + description: The display name of the case type, shown in the Case Management UI when creating or viewing cases. + example: Investigation + type: string + required: + - name + type: object + CaseTypeResourceType: + default: case_type + description: JSON:API resource type for case types. + enum: + - case_type + example: case_type + type: string + x-enum-varnames: + - CASE_TYPE + CustomAttributeConfigResourceAttributes: + description: Attributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type. + properties: + case_type_id: + description: The UUID of the case type this custom attribute belongs to. + example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + type: string + description: + description: A description explaining the purpose and expected values for this custom attribute. + example: AWS Region, must be a valid region supported by AWS + type: string + display_name: + description: The human-readable label shown in the Case Management UI for this custom attribute. + example: AWS Region + type: string + is_multi: + description: If `true`, this attribute accepts an array of values. If `false`, only a single value is allowed. + example: true + type: boolean + key: + description: The programmatic key used to reference this custom attribute in search queries and API calls. + example: aws_region + type: string + type: + $ref: '#/components/schemas/CustomAttributeType' + required: + - case_type_id + - display_name + - key + - type + - is_multi + type: object + CustomAttributeConfigResourceType: + default: custom_attribute + description: JSON:API resource type for custom attribute configurations. + enum: + - custom_attribute + example: custom_attribute + type: string + x-enum-varnames: + - CUSTOM_ATTRIBUTE + CustomAttributeConfigAttributesCreate: + description: Attributes required to create a custom attribute configuration. + properties: + description: + description: A description explaining the purpose and expected values for this custom attribute. + example: AWS Region, must be a valid region supported by AWS + type: string + display_name: + description: The human-readable label shown in the Case Management UI for this custom attribute. + example: AWS Region + type: string + is_multi: + description: If `true`, this attribute accepts an array of values. If `false`, only a single value is allowed. + example: true + type: boolean + key: + description: The programmatic key used to reference this custom attribute in search queries and API calls. + example: aws_region + type: string + type: + $ref: '#/components/schemas/CustomAttributeType' + required: + - display_name + - key + - type + - is_multi + type: object + CustomAttributeConfigUpdateAttributes: + description: Attributes that can be updated on a custom attribute configuration. All fields are optional; only provided fields are changed. + properties: + description: + description: A description explaining the purpose and expected values for this custom attribute. + example: Updated description. + type: string + display_name: + description: The human-readable label shown in the Case Management UI for this custom attribute. + example: AWS Region + type: string + map_from: + description: An external field identifier to auto-populate this attribute from (used for integrations with external systems). + type: string + type: + $ref: '#/components/schemas/CustomAttributeType' + type_data: + $ref: '#/components/schemas/CustomAttributeTypeData' + type: object + CaseViewAttributes: + description: Attributes of a case view, including the filter query and optional notification rule. + properties: + created_at: + description: Timestamp when the view was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + readOnly: true + type: string + modified_at: + description: Timestamp when the view was last modified. + format: date-time + readOnly: true + type: string + name: + description: A human-readable name for the view, displayed in the Case Management UI. + example: Open bugs + type: string + np_rule_id: + description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. + type: string + query: + description: The search query that determines which cases appear in this view. Uses the same syntax as the Case Management search bar (for example, `status:open priority:P1`). + example: status:open type:bug + type: string + required: + - name + - query + - created_at + type: object + CaseViewRelationships: + description: Related resources for the case view, including the creator, last modifier, and associated project. + properties: + created_by: + $ref: '#/components/schemas/NullableUserRelationship' + modified_by: + $ref: '#/components/schemas/NullableUserRelationship' + project: + $ref: '#/components/schemas/ProjectRelationship' + type: object + CaseViewResourceType: + default: view + description: JSON:API resource type for case views. + enum: + - view + example: view + type: string + x-enum-varnames: + - VIEW + CaseViewCreateAttributes: + description: Attributes required to create a case view. + properties: + name: + description: The name of the view. + example: Open bugs + type: string + np_rule_id: + description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. + type: string + project_id: + description: The UUID of the project this view belongs to. Views are scoped to a single project. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + type: string + query: + description: The query used to filter cases in this view. + example: status:open type:bug + type: string + required: + - name + - query + - project_id + type: object + CaseViewUpdateAttributes: + description: Attributes that can be updated on a case view. All fields are optional; only provided fields are changed. + properties: + name: + description: The name of the view. + type: string + np_rule_id: + description: The identifier of a notification rule linked to this view. When set, users subscribed to the view receive alerts for matching cases. + type: string + query: + description: The query used to filter cases in this view. + type: string + type: object + CaseAssignAttributes: + description: Case assign attributes + properties: + assignee_id: + description: Assignee's UUID + example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 + type: string + required: + - assignee_id + type: object + CaseUpdateAttributesAttributes: + description: Case update attributes attributes + properties: + attributes: + $ref: '#/components/schemas/CaseObjectAttributes' + required: + - attributes + type: object + CaseCommentAttributes: + description: Case comment attributes + properties: + comment: + description: The `CaseCommentAttributes` `message`. + example: This is my comment ! + type: string + required: + - comment + type: object + TimelineCell: + description: Attributes of a timeline cell, representing a single event in a case's chronological activity log (for example, a comment, status change, or assignment update). + properties: + author: + $ref: '#/components/schemas/TimelineCellAuthor' + cell_content: + $ref: '#/components/schemas/TimelineCellContent' + created_at: + description: Timestamp of when the cell was created + format: date-time + readOnly: true + type: string + deleted_at: + description: Timestamp of when the cell was deleted + format: date-time + readOnly: true + type: string + modified_at: + description: Timestamp of when the cell was last modified + format: date-time + readOnly: true + type: string + type: + $ref: '#/components/schemas/TimelineCellType' + type: object + TimelineCellResourceType: + default: timeline_cell + description: JSON:API resource type for timeline cells. + enum: + - timeline_cell + example: timeline_cell + type: string + x-enum-varnames: + - TIMELINE_CELL + CaseUpdateCommentAttributes: + description: Attributes for updating a comment. + properties: + comment: + description: The updated comment message. + example: Updated comment text + type: string + required: + - comment + type: object + CustomAttributeValue: + description: A typed value for a custom attribute on a specific case. + properties: + is_multi: + description: If true, value must be an array + example: false + type: boolean + type: + $ref: '#/components/schemas/CustomAttributeType' + value: + $ref: '#/components/schemas/CustomAttributeValuesUnion' + required: + - type + - is_multi + - value + type: object + CaseUpdateDescriptionAttributes: + description: Case update description attributes + properties: + description: + description: Case new description + example: Seeing some weird memory increase... We shouldn't ignore this + type: string + required: + - description + type: object + CaseUpdateDueDateAttributes: + description: Attributes for setting or clearing a case's due date. + properties: + due_date: + description: The target resolution date for the case, in `YYYY-MM-DD` format. Set to `null` to clear the due date. + example: '2026-12-31' + type: string + required: + - due_date + type: object + CaseInsightsAttributes: + description: Attributes for adding or removing insights from a case. + properties: + insights: + description: Array of insights to add to or remove from a case. + items: + $ref: '#/components/schemas/CaseInsight' + maxItems: 100 + minItems: 1 + type: array + required: + - insights + type: object + CaseUpdatePriorityAttributes: + description: Case update priority attributes + properties: + priority: + $ref: '#/components/schemas/CasePriority' + required: + - priority + type: object + IncidentResourceType: + description: Incident resource type + enum: + - incidents + example: incidents + type: string + x-enum-varnames: + - INCIDENTS + JiraIssueLinkAttributes: + description: Jira issue link attributes + properties: + jira_issue_url: + description: URL of the Jira issue + example: https://jira.example.com/browse/PROJ-123 + type: string + required: + - jira_issue_url + type: object + JiraIssueResourceType: + description: Jira issue resource type + enum: + - issues + example: issues + type: string + x-enum-varnames: + - ISSUES + JiraIssueCreateAttributes: + description: Jira issue creation attributes + properties: + fields: + additionalProperties: {} + description: Additional Jira fields + example: {} + type: object + issue_type_id: + description: Jira issue type ID + example: '10001' + type: string + jira_account_id: + description: Jira account ID + example: '1234' + type: string + project_id: + description: Jira project ID + example: '5678' + type: string + required: + - jira_account_id + - project_id + - issue_type_id + type: object + NotebookResourceType: + description: Notebook resource type + enum: + - notebook + example: notebook + type: string + x-enum-varnames: + - NOTEBOOK + ServiceNowTicketCreateAttributes: + description: ServiceNow ticket creation attributes + properties: + assignment_group: + description: ServiceNow assignment group + example: IT Support + type: string + instance_name: + description: ServiceNow instance name + example: my-instance + type: string + required: + - instance_name + type: object + ServiceNowTicketResourceType: + description: ServiceNow ticket resource type + enum: + - tickets + example: tickets + type: string + x-enum-varnames: + - TICKETS + CaseUpdateResolvedReasonAttributes: + description: Attributes for setting the resolution reason on a security case. + properties: + security_resolved_reason: + description: The reason the security case was resolved (for example, `FALSE_POSITIVE`, `TRUE_POSITIVE`, `BENIGN_POSITIVE`). + example: FALSE_POSITIVE + type: string + required: + - security_resolved_reason + type: object + CaseUpdateStatusAttributes: + description: Case update status attributes + properties: + status: + $ref: '#/components/schemas/CaseStatus' + deprecated: true + status_name: + $ref: '#/components/schemas/CaseStatusName' + type: object + CaseUpdateTitleAttributes: + description: Case update title attributes + properties: + title: + description: Case new title + example: Memory leak investigation on API + type: string + required: + - title + type: object + CaseWatcherRelationships: + description: Relationships for a case watcher, linking to the underlying user resource. + properties: + user: + $ref: '#/components/schemas/CaseWatcherUserRelationship' + required: + - user + type: object + CaseWatcherResourceType: + default: watcher + description: JSON:API resource type for case watchers. + enum: + - watcher + example: watcher + type: string + x-enum-varnames: + - WATCHER + ChangeRequestCreateAttributes: + description: Attributes for creating a change request. + properties: + change_request_linked_incident_uuid: + description: The UUID of an incident to link to the change request. + example: 00000000-0000-0000-0000-000000000000 + type: string + change_request_maintenance_window_query: + description: The maintenance window query for the change request. + example: '' + type: string + change_request_plan: + description: The plan associated with the change request. + example: 1. Deploy to staging 2. Run tests 3. Deploy to production + type: string + change_request_risk: + $ref: '#/components/schemas/ChangeRequestRiskLevel' + change_request_type: + $ref: '#/components/schemas/ChangeRequestChangeType' + description: + description: The description of the change request. + example: Deploying new payment service v2.1 + type: string + end_date: + description: The planned end date of the change request. + example: '2024-01-02T15:00:00Z' + format: date-time + type: string + project_id: + description: The project UUID to associate with the change request. + example: d4bbe1af-f36e-42f1-87c1-493ca35c320e + type: string + requested_teams: + description: A list of team handles to request decisions from. + example: + - team-handle-1 + items: + description: A team handle to request decisions from. + type: string + type: array + start_date: + description: The planned start date of the change request. + example: '2024-01-01T03:00:00Z' + format: date-time + type: string + title: + description: The title of the change request. + example: Deploy new payment service + type: string + required: + - title + type: object + ChangeRequestResourceType: + description: Change request resource type. + enum: + - change_request + example: change_request + type: string + x-enum-varnames: + - CHANGE_REQUEST + ChangeRequestResponseAttributes: + description: Attributes of a change request response. + properties: + archived_at: + description: Timestamp of when the change request was archived. + format: date-time + nullable: true + readOnly: true + type: string + attributes: + $ref: '#/components/schemas/ChangeRequestObjectAttributes' + change_request_linked_incident_uuid: + description: The UUID of the linked incident. + example: '' + type: string + change_request_maintenance_window_query: + description: The maintenance window query for the change request. + example: '' + type: string + change_request_plan: + description: The plan associated with the change request. + example: '' + type: string + change_request_risk: + $ref: '#/components/schemas/ChangeRequestRiskLevel' + change_request_type: + $ref: '#/components/schemas/ChangeRequestChangeType' + closed_at: + description: Timestamp of when the change request was closed. + format: date-time + nullable: true + readOnly: true + type: string + created_at: + description: Timestamp of when the change request was created. + example: '2024-01-01T00:00:00Z' + format: date-time + readOnly: true + type: string + creation_source: + description: The source from which the change request was created. + example: CS_MANUAL + type: string + description: + description: The description of the change request. + example: Deploying new payment service v2.1 + type: string + end_date: + description: The planned end date of the change request. + example: '2024-01-02T15:00:00Z' + format: date-time + type: string + key: + description: The human-readable key of the change request. + example: CHM-1234 + type: string + modified_at: + description: Timestamp of when the change request was last modified. + example: '2024-01-01T00:00:00Z' + format: date-time + readOnly: true + type: string + plan_notebook_id: + description: The notebook ID associated with the change request plan. + example: 0 + format: int64 + type: integer + priority: + description: The priority of the change request. + example: NOT_DEFINED + type: string + project_id: + description: The project UUID associated with the change request. + example: d4bbe1af-f36e-42f1-87c1-493ca35c320e + type: string + start_date: + description: The planned start date of the change request. + example: '2024-01-01T03:00:00Z' + format: date-time + type: string + status: + description: The current status of the change request. + example: OPEN + type: string + title: + description: The title of the change request. + example: Deploy new payment service + type: string + type: + description: The case type. + example: CHANGE_REQUEST + type: string + required: + - key + - title + - type + - priority + - status + - description + - creation_source + - plan_notebook_id + - project_id + - attributes + - created_at + - modified_at + - change_request_type + - change_request_risk + - change_request_plan + - change_request_linked_incident_uuid + - change_request_maintenance_window_query + type: object + ChangeRequestRelationships: + description: Relationships of a change request. + properties: + change_request_decisions: + $ref: '#/components/schemas/ChangeRequestDecisionsRelationship' + created_by: + $ref: '#/components/schemas/ChangeRequestUserRelationship' + modified_by: + $ref: '#/components/schemas/ChangeRequestUserRelationship' + required: + - created_by + - modified_by + - change_request_decisions + type: object + ChangeRequestIncludedItem: + description: An included resource item in the change request response. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestIncludedUserAttributes' + id: + description: The user UUID. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + description: The resource type. + example: user + type: string + relationships: + $ref: '#/components/schemas/ChangeRequestDecisionRelationships' + required: + - type + - id + - attributes + type: object + ChangeRequestUpdateAttributes: + description: Attributes for updating a change request. + properties: + change_request_plan: + description: The plan associated with the change request. + example: Updated deployment plan + type: string + change_request_risk: + $ref: '#/components/schemas/ChangeRequestRiskLevel' + change_request_type: + $ref: '#/components/schemas/ChangeRequestChangeType' + end_date: + description: The planned end date of the change request. + example: '2024-01-02T15:00:00Z' + format: date-time + type: string + id: + description: The identifier of the change request to update. + example: CHM-1234 + type: string + start_date: + description: The planned start date of the change request. + example: '2024-01-01T03:00:00Z' + format: date-time + type: string + type: object + ChangeRequestUpdateRelationships: + description: Relationships for updating a change request. + properties: + change_request_decisions: + $ref: '#/components/schemas/ChangeRequestDecisionsRelationship' + type: object + ChangeRequestDecisionCreateItem: + description: An included change request decision for a create or update operation. + properties: + attributes: + $ref: '#/components/schemas/ChangeRequestDecisionCreateAttributes' + id: + description: The decision identifier. + example: decision-id-0 + type: string + relationships: + $ref: '#/components/schemas/ChangeRequestDecisionCreateRelationships' + type: + $ref: '#/components/schemas/ChangeRequestDecisionResourceType' + required: + - type + - id + type: object + ChangeRequestBranchCreateAttributes: + description: Attributes for creating a change request branch. + properties: + branch_name: + description: The name of the branch to create. + example: chm/CHM-1234 + type: string + repo_id: + description: The repository identifier in the format owner/repository. + example: DataDog/dd-source + type: string + required: + - repo_id + - branch_name + type: object + ChangeRequestBranchResourceType: + description: Change request branch resource type. + enum: + - change_request_branch + example: change_request_branch + type: string + x-enum-varnames: + - CHANGE_REQUEST_BRANCH + ChangeRequestDecisionUpdateDataAttributes: + description: Attributes of the parent change request for a decision update. + properties: + id: + description: The identifier of the change request. + example: CHM-1234 + type: string + type: object + ChangeRequestDecisionUpdateDataRelationships: + description: Relationships for updating a change request decision. + properties: + change_request_decisions: + $ref: '#/components/schemas/ChangeRequestDecisionsRelationship' + required: + - change_request_decisions + type: object + DowntimeResponseAttributes: + description: Downtime details. + properties: + canceled: + description: Time that the downtime was canceled. + example: 2020-01-02T03:04:05.282979+0000 + format: date-time + nullable: true + type: string + created: + description: Creation time of the downtime. + example: 2020-01-02T03:04:05.282979+0000 + format: date-time + type: string + display_timezone: + $ref: '#/components/schemas/DowntimeDisplayTimezone' + message: + $ref: '#/components/schemas/DowntimeMessage' + modified: + description: Time that the downtime was last modified. + example: 2020-01-02T03:04:05.282979+0000 + format: date-time + type: string + monitor_identifier: + $ref: '#/components/schemas/DowntimeMonitorIdentifier' + mute_first_recovery_notification: + $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' + notify_end_states: + $ref: '#/components/schemas/DowntimeNotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/DowntimeNotifyEndTypes' + schedule: + $ref: '#/components/schemas/DowntimeScheduleResponse' + scope: + $ref: '#/components/schemas/DowntimeScope' + status: + $ref: '#/components/schemas/DowntimeStatus' + type: object + DowntimeRelationships: + description: All relationships associated with downtime. + properties: + created_by: + $ref: '#/components/schemas/DowntimeRelationshipsCreatedBy' + monitor: + $ref: '#/components/schemas/DowntimeRelationshipsMonitor' + type: object + DowntimeResourceType: + default: downtime + description: Downtime resource type. + enum: + - downtime + example: downtime + type: string + x-enum-varnames: + - DOWNTIME + User: + description: User object returned by the API. + properties: + attributes: + $ref: '#/components/schemas/UserAttributes' + id: + description: ID of the user. + type: string + relationships: + $ref: '#/components/schemas/UserResponseRelationships' + type: + $ref: '#/components/schemas/UsersType' + type: object + DowntimeMonitorIncludedItem: + description: Information about the monitor identified by the downtime. + properties: + attributes: + $ref: '#/components/schemas/DowntimeMonitorIncludedAttributes' + id: + description: ID of the monitor identified by the downtime. + example: 12345 + format: int64 + type: integer + type: + $ref: '#/components/schemas/DowntimeIncludedMonitorType' + type: object + DowntimeMetaPage: + description: Object containing the total filtered count. + properties: + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer + type: object + DowntimeCreateRequestAttributes: + description: Downtime details. + properties: + display_timezone: + $ref: '#/components/schemas/DowntimeDisplayTimezone' + message: + $ref: '#/components/schemas/DowntimeMessage' + monitor_identifier: + $ref: '#/components/schemas/DowntimeMonitorIdentifier' + mute_first_recovery_notification: + $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' + notify_end_states: + $ref: '#/components/schemas/DowntimeNotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/DowntimeNotifyEndTypes' + schedule: + $ref: '#/components/schemas/DowntimeScheduleCreateRequest' + scope: + $ref: '#/components/schemas/DowntimeScope' + required: + - scope + - monitor_identifier + type: object + DowntimeUpdateRequestAttributes: + description: Attributes of the downtime to update. + properties: + display_timezone: + $ref: '#/components/schemas/DowntimeDisplayTimezone' + message: + $ref: '#/components/schemas/DowntimeMessage' + monitor_identifier: + $ref: '#/components/schemas/DowntimeMonitorIdentifier' + mute_first_recovery_notification: + $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' + notify_end_states: + $ref: '#/components/schemas/DowntimeNotifyEndStates' + notify_end_types: + $ref: '#/components/schemas/DowntimeNotifyEndTypes' + schedule: + $ref: '#/components/schemas/DowntimeScheduleUpdateRequest' + scope: + $ref: '#/components/schemas/DowntimeScope' + type: object + IssuesSearchRequestDataAttributes: + description: Object describing a search issue request. + properties: + assignee_ids: + description: Filter issues by assignee IDs. Multiple values are combined with OR logic. + example: + - 00000000-0000-0000-0000-000000000001 + items: + format: uuid + type: string + maxItems: 50 + type: array + from: + description: Start date (inclusive) of the query in milliseconds since the Unix epoch. + example: 1671612804000 + format: int64 + type: integer + order_by: + $ref: '#/components/schemas/IssuesSearchRequestDataAttributesOrderBy' + persona: + $ref: '#/components/schemas/IssuesSearchRequestDataAttributesPersona' + query: + description: Search query following the event search syntax. + example: service:orders-* AND @language:go + type: string + states: + description: Filter issues by state. Multiple values are combined with OR logic. + example: + - OPEN + - ACKNOWLEDGED + items: + $ref: '#/components/schemas/IssueState' + maxItems: 20 + type: array + team_ids: + description: Filter issues by team IDs. Multiple values are combined with OR logic. + example: + - 00000000-0000-0000-0000-000000000002 + items: + format: uuid + type: string + maxItems: 50 + type: array + to: + description: End date (exclusive) of the query in milliseconds since the Unix epoch. + example: 1671620004000 + format: int64 + type: integer + track: + $ref: '#/components/schemas/IssuesSearchRequestDataAttributesTrack' + required: + - query + - from + - to + type: object + IssuesSearchRequestDataType: + description: Type of the object. + enum: + - search_request + example: search_request + type: string + x-enum-varnames: + - SEARCH_REQUEST + IssuesSearchResultAttributes: + description: Object containing the information of a search result. + properties: + impacted_sessions: + description: Count of sessions impacted by the issue over the queried time window. + example: 12 + format: int64 + type: integer + impacted_users: + description: Count of users impacted by the issue over the queried time window. + example: 4 + format: int64 + type: integer + total_count: + description: Total count of errors that match the issue over the queried time window. + example: 82 + format: int64 + type: integer + type: object + IssuesSearchResultRelationships: + description: Relationships between the search result and other resources. + properties: + issue: + $ref: '#/components/schemas/IssuesSearchResultIssueRelationship' + type: object + IssuesSearchResultType: + description: Type of the object. + enum: + - error_tracking_search_result + example: error_tracking_search_result + type: string + x-enum-varnames: + - ERROR_TRACKING_SEARCH_RESULT + IssueUser: + description: The user to whom the issue is assigned. + properties: + attributes: + $ref: '#/components/schemas/IssueUserAttributes' + id: + description: User identifier. + example: 87cb11a0-278c-440a-99fe-701223c80296 + type: string + type: + $ref: '#/components/schemas/IssueUserType' + required: + - id + - type + - attributes + type: object + IssueTeam: + description: A team that owns an issue. + properties: + attributes: + $ref: '#/components/schemas/IssueTeamAttributes' + id: + description: Team identifier. + example: 221b0179-6447-4d03-91c3-3ca98bf60e8a + type: string + type: + $ref: '#/components/schemas/IssueTeamType' + required: + - id + - type + - attributes + type: object + IssueAttributes: + description: Object containing the information of an issue. + properties: + error_message: + description: Error message associated with the issue. + example: object of type 'NoneType' has no len() + type: string + error_type: + description: Type of the error that matches the issue. + example: builtins.TypeError + type: string + file_path: + description: Path of the file where the issue occurred. + example: /django-email/conduit/apps/core/utils.py + type: string + first_seen: + description: Timestamp of the first seen error in milliseconds since the Unix epoch. + example: 1671612804001 + format: int64 + type: integer + first_seen_version: + description: The application version (for example, git commit hash) where the issue was first observed. + example: aaf65cd0 + type: string + function_name: + description: Name of the function where the issue occurred. + example: filter_forbidden_tags + type: string + is_crash: + description: Error is a crash. + example: false + type: boolean + languages: + description: Array of programming languages associated with the issue. + example: + - PYTHON + - GO + items: + $ref: '#/components/schemas/IssueLanguage' + type: array + last_seen: + description: Timestamp of the last seen error in milliseconds since the Unix epoch. + example: 1671620003100 + format: int64 + type: integer + last_seen_version: + description: The application version (for example, git commit hash) where the issue was last observed. + example: b6199f80 + type: string + platform: + $ref: '#/components/schemas/IssuePlatform' + regression: + $ref: '#/components/schemas/IssueRegression' + service: + description: Service name. + example: email-api-py + type: string + state: + $ref: '#/components/schemas/IssueState' + type: object + IssueRelationships: + description: Relationship between the issue and an assignee, case and/or teams. + properties: + assignee: + $ref: '#/components/schemas/IssueAssigneeRelationship' + case: + $ref: '#/components/schemas/IssueCaseRelationship' + team_owners: + $ref: '#/components/schemas/IssueTeamOwnersRelationship' + type: object + IssueType: + description: Type of the object. + enum: + - issue + example: issue + type: string + x-enum-varnames: + - ISSUE + IssueCase: + description: The case attached to the issue. + properties: + attributes: + $ref: '#/components/schemas/IssueCaseAttributes' + id: + description: Case identifier. + example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 + type: string + relationships: + $ref: '#/components/schemas/IssueCaseRelationships' + type: + $ref: '#/components/schemas/IssueCaseResourceType' + required: + - id + - type + - attributes + type: object + IssueUpdateAssigneeRequestDataType: + description: Type of the object. + enum: + - assignee + example: assignee + type: string + x-enum-varnames: + - ASSIGNEE + IssueUpdateStateRequestDataAttributes: + description: Object describing an issue state update request. + properties: + state: + $ref: '#/components/schemas/IssueState' + required: + - state + type: object + IssueUpdateStateRequestDataType: + description: Type of the object. + enum: + - error_tracking_issue + example: error_tracking_issue + type: string + x-enum-varnames: + - ERROR_TRACKING_ISSUE + EventResponseAttributes: + description: The object description of an event response attribute. + properties: + attributes: + $ref: '#/components/schemas/EventAttributes' + message: + description: The message of the event. + type: string + tags: + description: An array of tags associated with the event. + example: + - team:A + items: + description: The tag associated with the event. + type: string + type: array + timestamp: + description: The timestamp of the event. + example: '2019-01-02T09:42:36.320Z' + format: date-time + type: string + type: object + EventType: + default: event + description: Type of the event. + enum: + - event + example: event + type: string + x-enum-varnames: + - EVENT + EventsResponseMetadataPage: + description: Pagination attributes. + properties: + after: + description: |- + The cursor to use to get the next results, if any. To make the next request, use the same + parameters with the addition of the `page[cursor]`. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + EventsWarning: + description: A warning message indicating something is wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: unknown_index + type: string + detail: + description: A detailed explanation of this specific warning. + example: 'indexes: foo, bar' + type: string + title: + description: A short human-readable summary of the warning. + example: One or several indexes are missing or invalid. Results hold data from the other indexes. + type: string + type: object + EventPayload: + additionalProperties: false + description: Event attributes. + properties: + aggregation_key: + description: A string used for aggregation when [correlating](https://docs.datadoghq.com/service_management/events/correlation/) events. If you specify a key, events are deduplicated to alerts based on this key. Limited to 100 characters. + example: aggregation_key_123 + maxLength: 100 + minLength: 1 + type: string + attributes: + $ref: '#/components/schemas/EventPayloadAttributes' + category: + $ref: '#/components/schemas/EventCategory' + host: + description: Host name to associate with the event. Any tags associated with the host are also applied to this event. Limited to 255 characters. + example: hostname + maxLength: 255 + minLength: 1 + type: string + integration_id: + $ref: '#/components/schemas/EventPayloadIntegrationId' + message: + description: Free formed text associated with the event. It's suggested to use `data.attributes.attributes.custom` for well-structured attributes. Limited to 4000 characters. + example: payment_processed feature flag has been enabled + maxLength: 4000 + minLength: 1 + type: string + tags: + description: |- + A list of tags associated with the event. Maximum of 100 tags allowed. + Refer to [Tags docs](https://docs.datadoghq.com/getting_started/tagging/). + example: + - env:api_client_test + items: + description: A tag. + maxLength: 200 + minLength: 1 + type: string + maxItems: 100 + minItems: 1 + type: array + timestamp: + description: |- + Timestamp when the event occurred. Must follow [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) format. + For example `"2017-01-15T01:30:15.010000Z"`. + Defaults to the timestamp of receipt. Limited to values no older than 18 hours. + type: string + title: + description: The title of the event. Limited to 500 characters. + example: payment_processed feature flag updated + maxLength: 500 + minLength: 1 + type: string + required: + - title + - category + - attributes + type: object + EventCreateRequestType: + description: Entity type. + enum: + - event + example: event + type: string + x-enum-varnames: + - EVENT + EventCreateResponseAttributes: + description: Event attributes. + properties: + attributes: + $ref: '#/components/schemas/EventCreateResponseAttributesAttributes' + type: object + V2EventAttributes: + description: Event attributes. + properties: + attributes: + $ref: '#/components/schemas/V2EventAttributesAttributes' + message: + description: Free-form text associated with the event. + example: The event message + type: string + tags: + description: A list of tags associated with the event. + example: + - env:api_client_test + items: + description: A tag. + type: string + type: array + timestamp: + description: Timestamp when the event occurred. + example: '2017-01-15T01:30:15.010000Z' + type: string + type: object + CreateFormDataAttributes: + description: The attributes for creating a form. + properties: + anonymous: + default: false + description: Whether the form accepts anonymous submissions. + example: false + type: boolean + data_definition: + $ref: '#/components/schemas/FormDataDefinition' + description: + description: The description of the form. + example: A form to collect user feedback. + type: string + idp_survey: + default: false + description: Whether the form is an IDP survey. + example: false + type: boolean + name: + description: The name of the form. + example: User Feedback Form + type: string + single_response: + default: false + description: Whether each user can only submit one response. + example: false + type: boolean + ui_definition: + $ref: '#/components/schemas/FormUiDefinition' + required: + - data_definition + - name + - ui_definition + type: object + FormType: + default: forms + description: The resource type for a form. + enum: + - forms + example: forms + type: string + x-enum-varnames: + - FORMS + FormDataAttributes: + description: The attributes of a form. + properties: + active: + description: Whether the form is currently active. + example: true + type: boolean + anonymous: + description: Whether the form accepts anonymous submissions. + example: false + type: boolean + created_at: + description: The time at which the form was created. + example: '2026-05-29T20:06:13.677353Z' + format: date-time + type: string + datastore_config: + $ref: '#/components/schemas/FormDatastoreConfigAttributes' + description: + description: The description of the form. + example: A form to collect user feedback. + type: string + end_date: + description: The date and time at which the form stops accepting responses. + example: null + format: date-time + nullable: true + type: string + has_submitted: + description: Whether the current user has already submitted this form. Only present for forms with `single_response` set to `true`. + nullable: true + type: boolean + idp_survey: + description: Whether the form is an IDP survey. + example: false + type: boolean + modified_at: + description: The time at which the form was last modified. + example: '2026-05-29T20:06:13.677353Z' + format: date-time + type: string + name: + description: The name of the form. + example: User Feedback Form + type: string + org_id: + description: The ID of the organization that owns this form. + example: 2 + format: int64 + type: integer + publication: + $ref: '#/components/schemas/FormPublicationAttributes' + self_service: + description: Whether the form is available in the self-service catalog. + example: false + type: boolean + single_response: + description: Whether each user can only submit one response. + example: false + type: boolean + user_id: + description: The ID of the user who created this form. + example: 10001 + format: int64 + type: integer + user_uuid: + description: The UUID of the user who created this form. + example: 1fc709aa-be19-4539-a47d-52a30d78a978 + format: uuid + type: string + version: + $ref: '#/components/schemas/FormVersionAttributes' + required: + - active + - anonymous + - created_at + - datastore_config + - description + - idp_survey + - modified_at + - name + - org_id + - self_service + - single_response + - user_id + - user_uuid + type: object + UpdateFormDataAttributes: + description: The attributes for updating a form. + properties: + form_update: + $ref: '#/components/schemas/FormUpdateAttributes' + required: + - form_update + type: object + CloneFormDataAttributes: + description: The attributes for cloning a form. + properties: + name: + description: The name for the cloned form. Defaults to "Copy of (source form name)" if not provided. + example: Copy of My Form + type: string + type: object + PublishFormDataAttributes: + description: The attributes for publishing a form version. + properties: + version: + description: The version number to publish. + example: 1 + format: int64 + type: integer + required: + - version + type: object + FormPublicationType: + default: form_publications + description: The resource type for a form publication. + enum: + - form_publications + example: form_publications + type: string + x-enum-varnames: + - FORM_PUBLICATIONS + FormPublicationAttributes: + description: The attributes of a form publication. + properties: + created_at: + description: The time at which the publication was created. + example: '2026-05-29T20:06:13.677353Z' + format: date-time + type: string + form_id: + description: The ID of the form. + example: afc67600-0511-43b1-9b18-578fb4979bd3 + format: uuid + type: string + form_version: + description: The version number that was published. + example: 1 + format: int64 + type: integer + id: + description: The ID of the form publication. + example: '42' + type: string + modified_at: + description: The time at which the publication was last modified. + example: '2026-05-29T20:06:13.677353Z' + format: date-time + type: string + org_id: + description: The ID of the organization that owns this publication. + example: 2 + format: int64 + type: integer + publish_seq: + description: The sequential publication number for this form. + example: 1 + format: int64 + type: integer + user_id: + description: The ID of the user who created this publication. + example: 10001 + format: int64 + type: integer + user_uuid: + description: The UUID of the user who created this publication. + example: 1fc709aa-be19-4539-a47d-52a30d78a978 + format: uuid + type: string + required: + - created_at + - form_id + - form_version + - modified_at + - org_id + - publish_seq + - user_id + - user_uuid + type: object + UpsertFormVersionDataAttributes: + description: The attributes for creating or updating a form version. + properties: + data_definition: + $ref: '#/components/schemas/FormDataDefinition' + state: + $ref: '#/components/schemas/FormVersionState' + ui_definition: + $ref: '#/components/schemas/FormUiDefinition' + upsert_params: + $ref: '#/components/schemas/UpsertFormVersionUpsertParams' + required: + - state + - data_definition + - ui_definition + - upsert_params + type: object + FormVersionType: + default: form_versions + description: The resource type for a form version. + enum: + - form_versions + example: form_versions + type: string + x-enum-varnames: + - FORM_VERSIONS + FormVersionAttributes: + description: The attributes of a form version. + properties: + created_at: + description: The time at which the version was created. + example: '2026-05-29T20:06:14.895921Z' + format: date-time + type: string + data_definition: + $ref: '#/components/schemas/FormDataDefinition' + definition_signature: + description: The signature of the version definition. + example: '{"signature":"b7f312957a80cea2c8c9950532b205a90a3f8a7ebb7e52fc25437a25d903d545","version":1}' + type: string + etag: + description: The ETag for optimistic concurrency control. + example: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + nullable: true + type: string + id: + description: The ID of the form version. + example: '126' + type: string + modified_at: + description: The time at which the version was last modified. + example: '2026-05-29T20:06:14.949163Z' + format: date-time + type: string + state: + $ref: '#/components/schemas/FormVersionState' + ui_definition: + $ref: '#/components/schemas/FormUiDefinition' + user_id: + description: The ID of the user who created this version. + example: 10001 + format: int64 + type: integer + user_uuid: + description: The UUID of the user who created this version. + example: 1fc709aa-be19-4539-a47d-52a30d78a978 + format: uuid + type: string + version: + description: The sequential version number. + example: 1 + format: int64 + type: integer + required: + - created_at + - data_definition + - definition_signature + - etag + - modified_at + - state + - ui_definition + - user_id + - user_uuid + - version + type: object + UpsertAndPublishFormVersionDataAttributes: + description: The attributes for upserting and publishing a form version. + properties: + data_definition: + $ref: '#/components/schemas/FormDataDefinition' + ui_definition: + $ref: '#/components/schemas/FormUiDefinition' + upsert_params: + $ref: '#/components/schemas/UpsertAndPublishFormVersionUpsertParams' + required: + - data_definition + - ui_definition + - upsert_params + type: object + IncidentResponseAttributes: + additionalProperties: {} + description: The incident's attributes from a response. + properties: + archived: + description: Timestamp of when the incident was archived. + format: date-time + nullable: true + readOnly: true + type: string + case_id: + description: The incident case id. + format: int64 + nullable: true + type: integer + created: + description: Timestamp when the incident was created. + format: date-time + readOnly: true + type: string + customer_impact_duration: + description: |- + Length of the incident's customer impact in seconds. + Equals the difference between `customer_impact_start` and `customer_impact_end`. + format: int64 + readOnly: true + type: integer + customer_impact_end: + description: Timestamp when customers were no longer impacted by the incident. + format: date-time + nullable: true + type: string + customer_impact_scope: + description: A summary of the impact customers experienced during the incident. + example: An example customer impact scope + nullable: true + type: string + customer_impact_start: + description: Timestamp when customers began being impacted by the incident. + format: date-time + nullable: true + type: string + customer_impacted: + description: A flag indicating whether the incident caused customer impact. + example: false + type: boolean + declared: + description: Timestamp when the incident was declared. + format: date-time + readOnly: true + type: string + declared_by: + $ref: '#/components/schemas/IncidentNonDatadogCreator' + declared_by_uuid: + description: UUID of the user who declared the incident. + nullable: true + type: string + detected: + description: Timestamp when the incident was detected. + format: date-time + nullable: true + type: string + fields: + additionalProperties: + $ref: '#/components/schemas/IncidentFieldAttributes' + description: A condensed view of the user-defined fields attached to incidents. + example: + severity: + type: dropdown + value: SEV-5 + type: object + incident_type_uuid: + description: A unique identifier that represents an incident type. + example: 00000000-0000-0000-0000-000000000000 + type: string + is_test: + description: A flag indicating whether the incident is a test incident. + example: false + type: boolean + modified: + description: Timestamp when the incident was last modified. + format: date-time + readOnly: true + type: string + non_datadog_creator: + $ref: '#/components/schemas/IncidentNonDatadogCreator' + notification_handles: + description: Notification handles that will be notified of the incident during update. + example: + - display_name: Jane Doe + handle: '@user@email.com' + - display_name: Slack Channel + handle: '@slack-channel' + - display_name: Incident Workflow + handle: '@workflow-from-incident' + items: + $ref: '#/components/schemas/IncidentNotificationHandle' + nullable: true + type: array + public_id: + description: The monotonically increasing integer ID for the incident. + example: 1 + format: int64 + type: integer + resolved: + description: Timestamp when the incident's state was last changed from active or stable to resolved or completed. + format: date-time + nullable: true + type: string + severity: + $ref: '#/components/schemas/IncidentSeverity' + state: + description: The state incident. + nullable: true + type: string + time_to_detect: + description: |- + The amount of time in seconds to detect the incident. + Equals the difference between `customer_impact_start` and `detected`. + format: int64 + readOnly: true + type: integer + time_to_internal_response: + description: The amount of time in seconds to call incident after detection. Equals the difference of `detected` and `created`. + format: int64 + readOnly: true + type: integer + time_to_repair: + description: The amount of time in seconds to resolve customer impact after detecting the issue. Equals the difference between `customer_impact_end` and `detected`. + format: int64 + readOnly: true + type: integer + time_to_resolve: + description: The amount of time in seconds to resolve the incident after it was created. Equals the difference between `created` and `resolved`. + format: int64 + readOnly: true + type: integer + title: + description: The title of the incident, which summarizes what happened. + example: A test incident title + type: string + visibility: + description: The incident visibility status. + nullable: true + type: string + required: + - title + type: object + IncidentResponseRelationships: + description: The incident's relationships from a response. + properties: + attachments: + $ref: '#/components/schemas/RelationshipToIncidentAttachment' + commander_user: + $ref: '#/components/schemas/NullableRelationshipToUser' + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + declared_by_user: + $ref: '#/components/schemas/RelationshipToUser' + impacts: + $ref: '#/components/schemas/RelationshipToIncidentImpacts' + integrations: + $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + responders: + $ref: '#/components/schemas/RelationshipToIncidentResponders' + user_defined_fields: + $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFields' + type: object + IncidentType: + default: incidents + description: Incident resource type. + enum: + - incidents + example: incidents + type: string + x-enum-varnames: + - INCIDENTS + IncidentResponseMetaPagination: + description: Pagination properties. + properties: + next_offset: + description: The index of the first element in the next page of results. Equal to page size added to the current offset. + example: 1000 + format: int64 + type: integer + offset: + description: The index of the first element in the results. + example: 10 + format: int64 + type: integer + size: + description: Maximum size of pages to return. + example: 1000 + format: int64 + type: integer + type: object + IncidentCreateAttributes: + description: The incident's attributes for a create request. + properties: + customer_impact_scope: + description: Required if `customer_impacted:"true"`. A summary of the impact customers experienced during the incident. + example: Example customer impact scope + type: string + customer_impacted: + description: A flag indicating whether the incident caused customer impact. + example: false + type: boolean + fields: + additionalProperties: + $ref: '#/components/schemas/IncidentFieldAttributes' + description: A condensed view of the user-defined fields for which to create initial selections. + example: + severity: + type: dropdown + value: SEV-5 + type: object + incident_type_uuid: + description: A unique identifier that represents an incident type. The default incident type will be used if this property is not provided. + example: 00000000-0000-0000-0000-000000000000 + type: string + initial_cells: + description: An array of initial timeline cells to be placed at the beginning of the incident timeline. + items: + $ref: '#/components/schemas/IncidentTimelineCellCreateAttributes' + type: array + is_test: + description: A flag indicating whether the incident is a test incident. + example: false + type: boolean + notification_handles: + description: Notification handles that will be notified of the incident at creation. + example: + - display_name: Jane Doe + handle: '@user@email.com' + - display_name: Slack Channel + handle: '@slack-channel' + - display_name: Incident Workflow + handle: '@workflow-from-incident' + items: + $ref: '#/components/schemas/IncidentNotificationHandle' + type: array + title: + description: The title of the incident, which summarizes what happened. + example: A test incident title + type: string + required: + - title + - customer_impacted + type: object + IncidentCreateRelationships: + description: The relationships the incident will have with other resources once created. + properties: + commander_user: + $ref: '#/components/schemas/NullableRelationshipToUser' + required: + - commander_user + type: object + IncidentHandleIncludedItemResponse: + description: A single included resource item in an incident handle response, which can be a user or an incident type. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserAttributes' + id: + description: ID of the user. + type: string + type: + $ref: '#/components/schemas/UsersType' + relationships: + $ref: '#/components/schemas/IncidentTypeRelationships' + type: object + required: + - id + - type + IncidentHandleAttributesRequest: + description: Incident handle attributes for requests + properties: + fields: + $ref: '#/components/schemas/IncidentHandleAttributesFields' + name: + description: The handle name + example: '@incident-sev-1' + type: string + required: + - name + type: object + IncidentHandleRelationshipsRequest: + description: Relationships to associate with an incident handle in a create or update request. + nullable: true + properties: + commander_user: + $ref: '#/components/schemas/IncidentHandleRelationship' + incident_type: + $ref: '#/components/schemas/IncidentHandleRelationship' + required: + - incident_type + type: object + IncidentHandleType: + description: Incident handle resource type + enum: + - incidents_handles + example: incidents_handles + type: string + x-enum-varnames: + - INCIDENTS_HANDLES + IncidentHandleAttributesResponse: + description: Incident handle attributes for responses + properties: + created_at: + description: Timestamp when the handle was created + example: '2026-01-13T17:15:52.726905Z' + format: date-time + type: string + fields: + $ref: '#/components/schemas/IncidentHandleAttributesFields' + modified_at: + description: Timestamp when the handle was last modified + example: '2026-01-13T17:15:52.726905Z' + format: date-time + type: string + name: + description: The handle name + example: '@incident-sev-1' + type: string + required: + - name + - fields + - created_at + - modified_at + type: object + IncidentHandleRelationships: + description: Relationships associated with an incident handle response, including linked users and incident type. + nullable: true + properties: + commander_user: + $ref: '#/components/schemas/IncidentHandleRelationship' + created_by_user: + $ref: '#/components/schemas/IncidentHandleRelationship' + incident_type: + $ref: '#/components/schemas/IncidentHandleRelationship' + last_modified_by_user: + $ref: '#/components/schemas/IncidentHandleRelationship' + required: + - incident_type + - created_by_user + - last_modified_by_user + type: object + GlobalIncidentSettingsAttributesResponse: + description: Global incident settings attributes + properties: + analytics_dashboard_id: + description: The analytics dashboard ID + example: abc-123-def + type: string + created: + description: Timestamp when the settings were created + example: '2026-01-13T17:15:56.557278191Z' + format: date-time + type: string + modified: + description: Timestamp when the settings were last modified + example: '2026-01-13T17:15:56.557278191Z' + format: date-time + type: string + required: + - created + - modified + - analytics_dashboard_id + type: object + GlobalIncidentSettingsType: + description: Global incident settings resource type + enum: + - incidents_global_settings + example: incidents_global_settings + type: string + x-enum-varnames: + - INCIDENTS_GLOBAL_SETTINGS + GlobalIncidentSettingsAttributesRequest: + description: Global incident settings attributes + properties: + analytics_dashboard_id: + description: The analytics dashboard ID + example: abc-123-def + type: string + type: object + IncidentGoogleChatConfigurationDataAttributesRequest: + description: Attributes for creating a Google Chat configuration. + properties: + domain_id: + description: The Google Chat domain ID. + example: my-domain + type: string + space_name_template: + description: The template for the Google Chat space name. + example: '{{incident.title}}' + type: string + space_target_audience_id: + description: The target audience ID for the Google Chat space. + example: '123456789' + type: string + space_time_zone: + description: The time zone for the Google Chat space. + example: America/New_York + type: string + required: + - domain_id + - space_name_template + - space_time_zone + - space_target_audience_id + type: object + IncidentGoogleChatConfigurationRelationshipsRequest: + description: Relationships for a Google Chat configuration create request. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + required: + - incident_type + type: object + IncidentGoogleChatConfigurationType: + description: Google Chat configuration resource type. + enum: + - google_chat_configurations + example: google_chat_configurations + type: string + x-enum-varnames: + - GOOGLE_CHAT_CONFIGURATIONS + IncidentGoogleChatConfigurationDataAttributesResponse: + description: Attributes of a Google Chat configuration. + properties: + created_at: + description: Timestamp when the configuration was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + domain_id: + description: The Google Chat domain ID. + example: my-domain + type: string + modified_at: + description: Timestamp when the configuration was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + space_name_template: + description: The template for the Google Chat space name. + example: '{{incident.title}}' + type: string + space_target_audience_id: + description: The target audience ID for the Google Chat space. + example: '123456789' + type: string + space_time_zone: + description: The time zone for the Google Chat space. + example: America/New_York + type: string + required: + - domain_id + - space_name_template + - space_time_zone + - space_target_audience_id + - created_at + - modified_at + type: object + IncidentGoogleChatConfigurationRelationships: + description: Relationships for a Google Chat configuration. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentUserAttributes: + description: Attributes of user object returned by the API. + properties: + email: + description: Email of the user. + type: string + handle: + description: Handle of the user. + type: string + icon: + description: URL of the user's icon. + type: string + name: + description: Name of the user. + nullable: true + type: string + uuid: + description: UUID of the user. + type: string + type: object + UsersType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + IncidentGoogleChatConfigurationPatchDataAttributesRequest: + description: Attributes for patching a Google Chat configuration. All fields are optional. + properties: + domain_id: + description: The Google Chat domain ID. + example: my-domain + type: string + space_name_template: + description: The template for the Google Chat space name. + example: '{{incident.title}}' + type: string + space_target_audience_id: + description: The target audience ID for the Google Chat space. + example: '123456789' + type: string + space_time_zone: + description: The time zone for the Google Chat space. + example: America/New_York + type: string + type: object + IncidentGoogleMeetConfigurationDataAttributesRequest: + description: Attributes for creating a Google Meet configuration. + properties: + allow_manual_meeting_creation: + description: Whether to allow manual meeting creation. + example: true + type: boolean + auto_summarize: + description: Whether to auto-summarize meetings. + example: false + type: boolean + required: + - allow_manual_meeting_creation + - auto_summarize + type: object + IncidentGoogleMeetConfigurationRelationshipsRequest: + description: Relationships for a Google Meet configuration create request. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + required: + - incident_type + type: object + IncidentGoogleMeetConfigurationType: + description: Google Meet configuration resource type. + enum: + - google_meet_configurations + example: google_meet_configurations + type: string + x-enum-varnames: + - GOOGLE_MEET_CONFIGURATIONS + IncidentGoogleMeetConfigurationDataAttributesResponse: + description: Attributes of a Google Meet configuration. + properties: + allow_manual_meeting_creation: + description: Whether manual meeting creation is allowed. + example: true + type: boolean + auto_summarize: + description: Whether meetings are auto-summarized. + example: false + type: boolean + created_at: + description: Timestamp when the configuration was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + modified_at: + description: Timestamp when the configuration was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + required: + - allow_manual_meeting_creation + - auto_summarize + - modified_at + type: object + IncidentGoogleMeetConfigurationRelationships: + description: Relationships for a Google Meet configuration. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentGoogleMeetConfigurationPatchDataAttributesRequest: + description: Attributes for patching a Google Meet configuration. All fields are optional. + properties: + allow_manual_meeting_creation: + description: Whether to allow manual meeting creation. + example: true + type: boolean + auto_summarize: + description: Whether to auto-summarize meetings. + example: false + type: boolean + type: object + IncidentImpactFieldDataAttributesResponse: + description: Attributes of an impact field in a response. + properties: + display_name: + description: The display name of the impact field. + example: Customer Impact Scope + type: string + field_choices: + description: The choices for dropdown or multiselect fields. + items: + $ref: '#/components/schemas/IncidentImpactFieldChoice' + type: array + field_type: + $ref: '#/components/schemas/IncidentImpactFieldValueType' + name: + description: The normalized name of the impact field. + example: customer_impact_scope + type: string + tag_key: + description: The tag key associated with the field. + example: env + nullable: true + type: string + required: + - name + - display_name + - field_type + type: object + IncidentImpactFieldRelationships: + description: Relationships for an impact field. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentImpactFieldType: + description: Impact field resource type. + enum: + - impact_fields + example: impact_fields + type: string + x-enum-varnames: + - IMPACT_FIELDS + IncidentImpactFieldDataAttributesRequest: + description: Attributes for creating an impact field. + properties: + display_name: + description: The display name of the impact field. + example: Customer Impact Scope + type: string + field_choices: + description: The choices for dropdown or multiselect fields. + items: + $ref: '#/components/schemas/IncidentImpactFieldChoice' + type: array + field_type: + $ref: '#/components/schemas/IncidentImpactFieldValueType' + name: + description: The normalized name of the impact field (used as identifier). + example: customer_impact_scope + type: string + tag_key: + description: The tag key associated with the field (for metrictag type). + example: env + nullable: true + type: string + required: + - name + - display_name + - field_type + type: object + IncidentImpactFieldRelationshipsRequest: + description: Relationships for an impact field create request. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + required: + - incident_type + type: object + IncidentNotificationRuleAttributes: + description: The notification rule's attributes. + properties: + conditions: + $ref: '#/components/schemas/IncidentNotificationRuleConditions' + created: + description: Timestamp when the notification rule was created. + example: '2025-01-15T10:30:00Z' + format: date-time + readOnly: true + type: string + enabled: + description: Whether the notification rule is enabled. + example: true + type: boolean + handles: + $ref: '#/components/schemas/IncidentNotificationRuleHandles' + modified: + description: Timestamp when the notification rule was last modified. + example: '2025-01-15T14:45:00Z' + format: date-time + readOnly: true + type: string + renotify_on: + $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' + trigger: + description: The trigger event for this notification rule. + example: incident_created_trigger + type: string + visibility: + $ref: '#/components/schemas/IncidentNotificationRuleAttributesVisibility' + required: + - conditions + - handles + - visibility + - trigger + - enabled + - created + - modified + type: object + IncidentNotificationRuleRelationships: + description: The notification rule's resource relationships. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + notification_template: + $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' + type: object + IncidentNotificationRuleType: + description: Notification rules resource type. + enum: + - incident_notification_rules + example: incident_notification_rules + type: string + x-enum-varnames: + - INCIDENT_NOTIFICATION_RULES + IncidentNotificationTemplateObject: + description: A notification template object for inclusion in other resources. + properties: + attributes: + $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' + id: + description: The unique identifier of the notification template. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + relationships: + $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' + type: + $ref: '#/components/schemas/IncidentNotificationTemplateType' + required: + - id + - type + type: object + IncidentNotificationRuleArrayMetaPage: + description: Pagination metadata. + properties: + next_offset: + description: The offset for the next page of results. + example: 15 + format: int64 + type: integer + offset: + description: The current offset in the results. + example: 0 + format: int64 + type: integer + size: + description: The number of results returned per page. + example: 15 + format: int64 + type: integer + type: object + IncidentNotificationRuleCreateAttributes: + description: The attributes for creating a notification rule. + properties: + conditions: + $ref: '#/components/schemas/IncidentNotificationRuleConditions' + enabled: + default: false + description: Whether the notification rule is enabled. + example: true + type: boolean + handles: + $ref: '#/components/schemas/IncidentNotificationRuleHandles' + renotify_on: + $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' + trigger: + description: The trigger event for this notification rule. + example: incident_created_trigger + type: string + visibility: + $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributesVisibility' + required: + - conditions + - handles + - trigger + type: object + IncidentNotificationRuleCreateDataRelationships: + description: The definition of `NotificationRuleCreateDataRelationships` object. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + notification_template: + $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' + type: object + IncidentNotificationTemplateAttributes: + description: The notification template's attributes. + properties: + category: + description: The category of the notification template. + example: alert + type: string + content: + description: The content body of the notification template. + example: |- + An incident has been declared. + + Title: {{incident.title}} + Severity: {{incident.severity}} + Affected Services: {{incident.services}} + Status: {{incident.state}} + + Please join the incident channel for updates. + type: string + created: + description: Timestamp when the notification template was created. + example: '2025-01-15T10:30:00Z' + format: date-time + readOnly: true + type: string + modified: + description: Timestamp when the notification template was last modified. + example: '2025-01-15T14:45:00Z' + format: date-time + readOnly: true + type: string + name: + description: The name of the notification template. + example: Incident Alert Template + type: string + subject: + description: The subject line of the notification template. + example: '{{incident.severity}} Incident: {{incident.title}}' + type: string + required: + - name + - subject + - content + - category + - created + - modified + type: object + IncidentNotificationTemplateRelationships: + description: The notification template's resource relationships. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentNotificationTemplateType: + description: Notification templates resource type. + enum: + - notification_templates + example: notification_templates + type: string + x-enum-varnames: + - NOTIFICATION_TEMPLATES + IncidentNotificationTemplateArrayMetaPage: + description: Pagination metadata. + properties: + total_count: + description: Total number of notification templates. + example: 42 + format: int64 + type: integer + total_filtered_count: + description: Total number of notification templates matching the filter. + example: 15 + format: int64 + type: integer + type: object + IncidentNotificationTemplateCreateAttributes: + description: The attributes for creating a notification template. + properties: + category: + description: The category of the notification template. + example: alert + type: string + content: + description: The content body of the notification template. + example: |- + An incident has been declared. + + Title: {{incident.title}} + Severity: {{incident.severity}} + Affected Services: {{incident.services}} + Status: {{incident.state}} + + Please join the incident channel for updates. + type: string + name: + description: The name of the notification template. + example: Incident Alert Template + type: string + subject: + description: The subject line of the notification template. + example: '{{incident.severity}} Incident: {{incident.title}}' + type: string + required: + - name + - subject + - content + - category + type: object + IncidentNotificationTemplateCreateDataRelationships: + description: The definition of `NotificationTemplateCreateDataRelationships` object. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + type: object + IncidentNotificationTemplateUpdateAttributes: + description: The attributes to update on a notification template. + properties: + category: + description: The category of the notification template. + example: update + type: string + content: + description: The content body of the notification template. + example: |- + Incident Status Update: + + Title: {{incident.title}} + New Status: {{incident.state}} + Severity: {{incident.severity}} + Services: {{incident.services}} + Commander: {{incident.commander}} + + For more details, visit the incident page. + type: string + name: + description: The name of the notification template. + example: Incident Status Update Template + type: string + subject: + description: The subject line of the notification template. + example: 'Incident Update: {{incident.title}} - {{incident.state}}' + type: string + type: object + PostmortemTemplateAttributesResponse: + description: Attributes of a postmortem template returned in a response. + properties: + confluence_postmortem_settings: + $ref: '#/components/schemas/ConfluencePostmortemSettings' + content: + description: The templated content of the postmortem, supporting Markdown and incident template variables. + example: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + type: string + createdAt: + description: When the template was created. + example: '2026-01-13T17:15:53.208340Z' + format: date-time + type: string + google_docs_postmortem_settings: + $ref: '#/components/schemas/GoogleDocsPostmortemSettings' + is_default: + description: When set, marks this template as a default. The effective default for an incident type is the template with the most recent `is_default` timestamp. + example: '2024-01-01T00:00:00+00:00' + format: date-time + nullable: true + type: string + location: + $ref: '#/components/schemas/PostmortemTemplateLocation' + modifiedAt: + description: When the template was last modified. + example: '2026-01-13T17:15:53.208340Z' + format: date-time + type: string + name: + description: The name of the template. + example: Standard Postmortem Template + type: string + required: + - name + - content + - is_default + - location + - createdAt + - modifiedAt + type: object + PostmortemTemplateResponseRelationships: + description: Relationships of a postmortem template returned in a response. + properties: + incident_type: + $ref: '#/components/schemas/PostmortemTemplateIncidentTypeRelationship' + last_modified_by_user: + $ref: '#/components/schemas/PostmortemTemplateUserRelationship' + type: object + PostmortemTemplateType: + description: Postmortem template resource type. + enum: + - postmortem_templates + - postmortem_template + example: postmortem_templates + type: string + x-enum-varnames: + - POSTMORTEM_TEMPLATES + - POSTMORTEM_TEMPLATE + PostmortemTemplateAttributesRequest: + description: Attributes for creating or updating a postmortem template. + properties: + confluence_postmortem_settings: + $ref: '#/components/schemas/ConfluencePostmortemSettings' + content: + description: The templated content of the postmortem, supporting Markdown and incident template variables. + example: |- + # Overview + + # What Happened + + # Timeline + + # Action Items + type: string + google_docs_postmortem_settings: + $ref: '#/components/schemas/GoogleDocsPostmortemSettings' + is_default: + description: When set, marks this template as a default. The effective default for an incident type is the template with the most recent `is_default` timestamp. Set to `null` to unset. + example: '2024-01-01T00:00:00+00:00' + format: date-time + nullable: true + type: string + location: + $ref: '#/components/schemas/PostmortemTemplateLocation' + name: + description: The name of the template. + example: Standard Postmortem Template + type: string + required: + - name + type: object + PostmortemTemplateCreateRelationships: + description: Relationships for a postmortem template. `incident_type` is required when creating a template and is immutable afterwards. + properties: + incident_type: + $ref: '#/components/schemas/PostmortemTemplateIncidentTypeRelationship' + type: object + IncidentRuleDataAttributesResponse: + description: Attributes of an incident rule in a response. + properties: + condition: + $ref: '#/components/schemas/IncidentRuleQueryCondition' + condition_table_type: + description: The condition table type. + example: 1 + format: int64 + type: integer + conditions: + description: List of field-based conditions. + items: + $ref: '#/components/schemas/IncidentRuleCondition' + type: array + created: + description: Timestamp when the rule was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + created_by_uuid: + description: UUID of the user who created the rule. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + deleted: + description: Timestamp when the rule was deleted. + example: null + format: date-time + nullable: true + type: string + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + execution_type: + description: The execution type of the rule. + example: 1 + format: int64 + type: integer + incident_settings_association_uuid: + description: The incident settings association UUID. + example: null + format: uuid + nullable: true + type: string + match_any_condition: + description: Whether any condition should match. + example: false + type: boolean + modified: + description: Timestamp when the rule was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + modified_by_uuid: + description: UUID of the user who last modified the rule. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + org_id: + description: The organization ID. + example: 123456 + format: int64 + type: integer + task_id: + description: The task ID. + example: notify-incident-handles-job + nullable: true + type: string + task_payload: + description: The JSON-encoded task payload. + example: '{}' + nullable: true + type: string + trigger: + description: The trigger event for the rule. + example: incident_created_trigger + type: string + type: object + IncidentRuleResponseType: + description: Incident rule response resource type. + enum: + - incidents_rules + example: incidents_rules + type: string + x-enum-varnames: + - INCIDENTS_RULES + IncidentRuleDataAttributesRequest: + description: Attributes for creating an incident rule. + properties: + condition: + $ref: '#/components/schemas/IncidentRuleQueryCondition' + condition_table_type: + description: The condition table type. 1 = raw query. + example: 1 + format: int64 + type: integer + conditions: + description: List of field-based conditions. + items: + $ref: '#/components/schemas/IncidentRuleCondition' + type: array + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + execution_type: + $ref: '#/components/schemas/IncidentRuleExecutionType' + incident_type_uuid: + description: The UUID of the incident type this rule applies to. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + nullable: true + type: string + match_any_condition: + description: Whether any condition (OR logic) should match instead of all (AND logic). + example: false + type: boolean + task_id: + $ref: '#/components/schemas/IncidentRuleTaskIDType' + task_payload: + description: The JSON-encoded payload for the task. + example: '{}' + type: string + trigger: + $ref: '#/components/schemas/IncidentRuleTriggerType' + required: + - execution_type + - condition_table_type + - condition + - task_id + - task_payload + - enabled + type: object + IncidentRuleType: + description: Incident rule resource type. + enum: + - incident_rules + example: incident_rules + type: string + x-enum-varnames: + - INCIDENT_RULES + IncidentRulePatchDataAttributesRequest: + description: Attributes for patching an incident rule. All fields are optional. + properties: + condition: + $ref: '#/components/schemas/IncidentRuleQueryCondition' + conditions: + description: List of field-based conditions. + items: + $ref: '#/components/schemas/IncidentRuleCondition' + type: array + enabled: + description: Whether the rule is enabled. + example: true + type: boolean + task_payload: + description: The JSON-encoded payload for the task. + example: '{}' + type: string + trigger: + $ref: '#/components/schemas/IncidentRuleTriggerType' + type: object + IncidentTypeAttributes: + description: Incident type's attributes. + properties: + configuration: + $ref: '#/components/schemas/IncidentTypeConfiguration' + readOnly: true + createdAt: + description: Timestamp when the incident type was created. + format: date-time + readOnly: true + type: string + createdBy: + description: A unique identifier that represents the user that created the incident type. + example: 00000000-0000-0000-0000-000000000000 + readOnly: true + type: string + description: + description: Text that describes the incident type. + example: Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. + type: string + is_default: + default: false + description: If true, this incident type will be used as the default incident type if a type is not specified during the creation of incident resources. + example: false + type: boolean + lastModifiedBy: + description: A unique identifier that represents the user that last modified the incident type. + example: 00000000-0000-0000-0000-000000000000 + readOnly: true + type: string + modifiedAt: + description: Timestamp when the incident type was last modified. + format: date-time + readOnly: true + type: string + name: + description: The name of the incident type. + example: Security Incident + type: string + prefix: + description: The string that will be prepended to the incident title across the Datadog app. + example: IR + readOnly: true + type: string + required: + - name + type: object + IncidentTypeRelationships: + additionalProperties: {} + description: The incident type's resource relationships. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + google_meet_configuration: + $ref: '#/components/schemas/GoogleMeetConfigurationReference' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + microsoft_teams_configuration: + $ref: '#/components/schemas/MicrosoftTeamsConfigurationReference' + zoom_configuration: + $ref: '#/components/schemas/ZoomConfigurationReference' + type: object + IncidentTypeType: + default: incident_types + description: Incident type resource type. + enum: + - incident_types + example: incident_types + type: string + x-enum-varnames: + - INCIDENT_TYPES + IncidentOrgSettingsDataAttributesResponse: + description: Attributes of an incident org settings resource in a response. + properties: + created: + description: Timestamp when the settings were created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + modified: + description: Timestamp when the settings were last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + settings: + $ref: '#/components/schemas/IncidentOrgSettingsMeta' + required: + - created + - modified + - settings + type: object + IncidentOrgSettingsRelationships: + description: Relationships for an incident org settings resource. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + type: object + IncidentOrgSettingsType: + description: Incident org settings resource type. + enum: + - incident_org_settings + example: incident_org_settings + type: string + x-enum-varnames: + - INCIDENT_ORG_SETTINGS + IncidentTypeUpdateAttributes: + description: Incident type's attributes for updates. + properties: + configuration: + $ref: '#/components/schemas/IncidentTypeConfiguration' + createdAt: + description: Timestamp when the incident type was created. + format: date-time + readOnly: true + type: string + createdBy: + description: A unique identifier that represents the user that created the incident type. + example: 00000000-0000-0000-0000-000000000000 + readOnly: true + type: string + description: + description: Text that describes the incident type. + example: 'Any incidents that harm (or have the potential to) the confidentiality, integrity, or availability of our data. Note: This will notify the security team.' + type: string + is_default: + description: When true, this incident type will be used as the default type when an incident type is not specified. + example: false + type: boolean + lastModifiedBy: + description: A unique identifier that represents the user that last modified the incident type. + example: 00000000-0000-0000-0000-000000000000 + readOnly: true + type: string + modifiedAt: + description: Timestamp when the incident type was last modified. + format: date-time + readOnly: true + type: string + name: + description: The name of the incident type. + example: Security Incident + type: string + prefix: + description: The string that will be prepended to the incident title across the Datadog app. + example: IR + readOnly: true + type: string + type: object + IncidentUserDefinedFieldAttributesResponse: + description: Attributes of an incident user-defined field. + properties: + category: + $ref: '#/components/schemas/IncidentUserDefinedFieldCategory' + collected: + $ref: '#/components/schemas/IncidentUserDefinedFieldCollected' + created: + description: Timestamp when the field was created. + example: '2026-03-18T08:40:05.185406Z' + format: date-time + readOnly: true + type: string + default_value: + description: The default value for the field. + example: critical + nullable: true + type: string + deleted: + description: Timestamp when the field was soft-deleted, or null if not deleted. + example: null + format: date-time + nullable: true + readOnly: true + type: string + display_name: + description: The human-readable name shown in the UI. + example: Root Cause + type: string + metadata: + $ref: '#/components/schemas/IncidentUserDefinedFieldMetadata' + modified: + description: Timestamp when the field was last modified. + example: '2026-03-18T08:40:05.185406Z' + format: date-time + nullable: true + readOnly: true + type: string + name: + description: The unique identifier of the field. + example: root_cause + type: string + ordinal: + description: A decimal string representing the field's display order in the UI. + example: '1.5' + nullable: true + type: string + required: + description: When true, users must fill out this field on incidents. + example: false + type: boolean + reserved: + description: When true, this field is reserved for system use and cannot be deleted. + example: false + readOnly: true + type: boolean + tag_key: + description: For metric tag-type fields only, the metric tag key that powers the autocomplete options. + example: null + nullable: true + type: string + type: + description: The data type of the field. 1=dropdown, 2=multiselect, 3=textbox, 4=textarray, 5=metrictag, 6=autocomplete, 7=number, 8=datetime. + example: 3 + format: int32 + maximum: 8 + minimum: 1 + nullable: true + type: integer + valid_values: + description: The list of allowed values for dropdown, multiselect, and autocomplete fields. + items: + $ref: '#/components/schemas/IncidentUserDefinedFieldValidValue' + nullable: true + type: array + required: + - category + - collected + - created + - default_value + - deleted + - display_name + - metadata + - modified + - name + - ordinal + - required + - reserved + - tag_key + - type + - valid_values + type: object + IncidentUserDefinedFieldRelationships: + description: Relationships of an incident user-defined field. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + required: + - created_by_user + - last_modified_by_user + - incident_type + type: object + IncidentUserDefinedFieldType: + description: The incident user defined fields type. + enum: + - user_defined_field + example: user_defined_field + type: string + x-enum-varnames: + - USER_DEFINED_FIELD + IncidentUserDefinedFieldAttributesCreateRequest: + description: Attributes for creating an incident user-defined field. + properties: + category: + $ref: '#/components/schemas/IncidentUserDefinedFieldCategory' + collected: + $ref: '#/components/schemas/IncidentUserDefinedFieldCollected' + default_value: + description: The default value for the field. Must be one of the valid values when valid_values is set. + example: critical + nullable: true + type: string + display_name: + description: The human-readable name shown in the UI. Defaults to a formatted version of the name if not provided. + example: Root Cause + type: string + name: + description: The unique identifier of the field. Must start with a letter or digit and contain only letters, digits, underscores, or periods. + example: root_cause + type: string + ordinal: + description: A decimal string representing the field's display order in the UI. + example: '1.5' + nullable: true + type: string + required: + description: When true, users must fill out this field on incidents. + example: false + type: boolean + tag_key: + description: For metric tag-type fields only, the metric tag key that powers the autocomplete options. + example: datacenter + nullable: true + type: string + type: + $ref: '#/components/schemas/IncidentUserDefinedFieldFieldType' + valid_values: + description: The list of allowed values for dropdown and multiselect fields. Limited to 1000 values. + items: + $ref: '#/components/schemas/IncidentUserDefinedFieldValidValue' + type: array + required: + - name + - type + type: object + IncidentUserDefinedFieldCreateRelationships: + description: Relationships for creating an incident user-defined field. + properties: + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + required: + - incident_type + type: object + IncidentUserDefinedFieldAttributesUpdateRequest: + description: Attributes for updating an incident user-defined field. All fields are optional. + properties: + category: + $ref: '#/components/schemas/IncidentUserDefinedFieldCategory' + collected: + $ref: '#/components/schemas/IncidentUserDefinedFieldCollected' + default_value: + description: The default value for the field. Must be one of the valid values when valid_values is set. + example: critical + nullable: true + type: string + display_name: + description: The human-readable name shown in the UI. + example: Root Cause + type: string + ordinal: + description: A decimal string representing the field's display order in the UI. + example: '1.5' + nullable: true + type: string + required: + description: When true, users must fill out this field on incidents. + example: false + nullable: true + type: boolean + valid_values: + description: The list of allowed values for dropdown and multiselect fields. Limited to 1000 values. + items: + $ref: '#/components/schemas/IncidentUserDefinedFieldValidValue' + nullable: true + type: array + type: object + IncidentUserDefinedRoleIncludedItem: + description: A single included resource in a user-defined role response. + properties: + attributes: + $ref: '#/components/schemas/IncidentUserAttributes' + id: + description: ID of the user. + type: string + type: + $ref: '#/components/schemas/UsersType' + relationships: + $ref: '#/components/schemas/IncidentTypeRelationships' + type: object + required: + - id + - type + IncidentUserDefinedRoleDataAttributesRequest: + description: Attributes for creating an incident user-defined role. + properties: + description: + description: A description of the user-defined role. + example: The technical lead for the incident. + nullable: true + type: string + name: + description: The name of the user-defined role. + example: Tech Lead + type: string + policy: + $ref: '#/components/schemas/IncidentUserDefinedRolePolicy' + required: + - name + type: object + IncidentUserDefinedRoleRelationshipsRequest: + description: Relationships for creating a user-defined role. + properties: + incident_type: + $ref: '#/components/schemas/IncidentUserDefinedRoleIncidentTypeRelationship' + required: + - incident_type + type: object + IncidentUserDefinedRoleType: + description: Incident user-defined role resource type. + enum: + - incident_user_defined_roles + example: incident_user_defined_roles + type: string + x-enum-varnames: + - INCIDENT_USER_DEFINED_ROLES + IncidentUserDefinedRoleDataAttributesResponse: + description: Attributes of an incident user-defined role. + properties: + created: + description: Timestamp when the role was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + description: + description: A description of the user-defined role. + example: The technical lead for the incident. + nullable: true + type: string + modified: + description: Timestamp when the role was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + name: + description: The name of the user-defined role. + example: Tech Lead + type: string + policy: + $ref: '#/components/schemas/IncidentUserDefinedRolePolicy' + required: + - name + - policy + - created + - modified + type: object + IncidentUserDefinedRoleRelationshipsResponse: + description: Relationships of a user-defined role response. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident_type: + $ref: '#/components/schemas/IncidentUserDefinedRoleIncidentTypeRelationship' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentUserDefinedRolePatchDataAttributesRequest: + description: Attributes for updating an incident user-defined role. + properties: + description: + description: A description of the user-defined role. + example: The technical lead for the incident. + nullable: true + type: string + name: + description: The name of the user-defined role. + example: Tech Lead + type: string + policy: + $ref: '#/components/schemas/IncidentUserDefinedRolePolicy' + type: object + IncidentImportRequestAttributes: + description: The incident's attributes for an import request. + properties: + declared: + description: Timestamp when the incident was declared. + example: '2025-01-01T00:00:00Z' + format: date-time + type: string + detected: + description: Timestamp when the incident was detected. + example: '2025-01-01T00:00:00Z' + format: date-time + type: string + fields: + additionalProperties: + $ref: '#/components/schemas/IncidentImportFieldAttributes' + description: A condensed view of the user-defined fields for which to create initial selections. + example: + severity: + value: SEV-5 + state: + value: active + type: object + incident_type_uuid: + description: A unique identifier that represents the incident type. If not provided, the default incident type is used. + example: 00000000-0000-0000-0000-000000000000 + type: string + resolved: + description: Timestamp when the incident was resolved. Can only be set when the state field is set to 'resolved'. + example: '2025-01-01T01:00:00Z' + format: date-time + type: string + title: + description: The title of the incident that summarizes what happened. + example: Imported incident from external system + maxLength: 1024 + type: string + visibility: + $ref: '#/components/schemas/IncidentImportVisibility' + required: + - title + type: object + IncidentImportRelationships: + description: The relationships for an incident import request. + properties: + commander_user: + $ref: '#/components/schemas/NullableRelationshipToUser' + declared_by_user: + $ref: '#/components/schemas/NullableRelationshipToUser' + type: object + IncidentImportResponseAttributes: + description: The incident's attributes from an import response. + properties: + archived: + description: Timestamp when the incident was archived. + format: date-time + nullable: true + readOnly: true + type: string + case_id: + description: The incident case ID. + format: int64 + nullable: true + type: integer + created: + description: Timestamp when the incident was created. + example: '2025-01-01T00:00:00Z' + format: date-time + readOnly: true + type: string + created_by_uuid: + description: UUID of the user who created the incident. + nullable: true + type: string + creation_idempotency_key: + description: A unique key used to ensure idempotent incident creation. + nullable: true + type: string + customer_impact_end: + description: Timestamp when customers were no longer impacted by the incident. + format: date-time + nullable: true + type: string + customer_impact_scope: + description: A summary of the impact customers experienced during the incident. + example: An example customer impact scope + nullable: true + type: string + customer_impact_start: + description: Timestamp when customers began to be impacted by the incident. + format: date-time + nullable: true + type: string + declared: + description: Timestamp when the incident was declared. + example: '2025-01-01T00:00:00Z' + format: date-time + nullable: true + type: string + declared_by_uuid: + description: UUID of the user who declared the incident. + nullable: true + type: string + detected: + description: Timestamp when the incident was detected. + example: '2025-01-01T00:00:00Z' + format: date-time + nullable: true + type: string + fields: + additionalProperties: + $ref: '#/components/schemas/IncidentFieldAttributes' + description: A condensed view of the user-defined fields attached to incidents. + example: + severity: + type: dropdown + value: SEV-5 + type: object + incident_type_uuid: + description: A unique identifier that represents an incident type. + example: 00000000-0000-0000-0000-000000000000 + type: string + is_test: + description: A flag indicating whether the incident is a test incident. + example: false + type: boolean + last_modified_by_uuid: + description: UUID of the user who last modified the incident. + nullable: true + type: string + modified: + description: Timestamp when the incident was last modified. + format: date-time + readOnly: true + type: string + non_datadog_creator: + $ref: '#/components/schemas/IncidentNonDatadogCreator' + notification_handles: + description: Notification handles that are notified of the incident during update. + items: + $ref: '#/components/schemas/IncidentNotificationHandle' + nullable: true + type: array + public_id: + description: The monotonically increasing integer ID for the incident. + example: 1 + format: int64 + type: integer + resolved: + description: Timestamp when the incident's state was last changed from active or stable to resolved or completed. + format: date-time + nullable: true + type: string + severity: + $ref: '#/components/schemas/IncidentSeverity' + state: + description: The state of the incident. + nullable: true + type: string + title: + description: The title of the incident that summarizes what happened. + example: A test incident title + type: string + visibility: + description: The incident visibility status. + nullable: true + type: string + required: + - title + type: object + IncidentImportResponseRelationships: + description: The incident's relationships from an import response. + properties: + attachments: + $ref: '#/components/schemas/RelationshipToIncidentAttachment' + commander_user: + $ref: '#/components/schemas/NullableRelationshipToUser' + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + declared_by_user: + $ref: '#/components/schemas/RelationshipToUser' + impacts: + $ref: '#/components/schemas/RelationshipToIncidentImpacts' + incident_type: + $ref: '#/components/schemas/RelationshipToIncidentType' + integrations: + $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + responders: + $ref: '#/components/schemas/RelationshipToIncidentResponders' + user_defined_fields: + $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFields' + type: object + IncidentSearchResponseAttributes: + description: Attributes returned by an incident search. + properties: + facets: + $ref: '#/components/schemas/IncidentSearchResponseFacetsData' + incidents: + description: Incidents returned by the search. + items: + $ref: '#/components/schemas/IncidentSearchResponseIncidentsData' + type: array + total: + description: Number of incidents returned by the search. + example: 10 + format: int32 + maximum: 2147483647 + type: integer + required: + - facets + - incidents + - total + type: object + IncidentSearchResultsType: + default: incidents_search_results + description: Incident search result type. + enum: + - incidents_search_results + example: incidents_search_results + type: string + x-enum-varnames: + - INCIDENTS_SEARCH_RESULTS + IncidentUpdateAttributes: + description: The incident's attributes for an update request. + properties: + customer_impact_end: + description: Timestamp when customers were no longer impacted by the incident. + format: date-time + nullable: true + type: string + customer_impact_scope: + description: A summary of the impact customers experienced during the incident. + example: Example customer impact scope + type: string + customer_impact_start: + description: Timestamp when customers began being impacted by the incident. + format: date-time + nullable: true + type: string + customer_impacted: + description: A flag indicating whether the incident caused customer impact. + example: false + type: boolean + detected: + description: Timestamp when the incident was detected. + format: date-time + nullable: true + type: string + fields: + additionalProperties: + $ref: '#/components/schemas/IncidentFieldAttributes' + description: A condensed view of the user-defined fields for which to update selections. + example: + severity: + type: dropdown + value: SEV-5 + type: object + notification_handles: + description: Notification handles that will be notified of the incident during update. + example: + - display_name: Jane Doe + handle: '@user@email.com' + - display_name: Slack Channel + handle: '@slack-channel' + - display_name: Incident Workflow + handle: '@workflow-from-incident' + items: + $ref: '#/components/schemas/IncidentNotificationHandle' + type: array + title: + description: The title of the incident, which summarizes what happened. + example: A test incident title + type: string + type: object + IncidentUpdateRelationships: + description: The incident's relationships for an update request. + properties: + commander_user: + $ref: '#/components/schemas/NullableRelationshipToUser' + integrations: + $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' + postmortem: + $ref: '#/components/schemas/RelationshipToIncidentPostmortem' + type: object + IncidentAIPostmortemDataAttributesResponse: + description: Attributes of an AI-generated incident postmortem. + properties: + action_items: + description: Action items to prevent recurrence. + example: 1. Improve failover testing. 2. Add more monitoring alerts. + type: string + customer_impact: + description: The impact of the incident on customers. + example: 5% of users experienced timeouts for 30 minutes. + type: string + executive_summary: + description: An executive summary of the incident. + example: A database failover caused a 30-minute service outage affecting 5% of users. + type: string + key_timeline: + description: Key timeline events during the incident. + example: 10:00 - Alert fired. 10:05 - On-call engineer paged. 10:30 - Issue resolved. + type: string + lessons_learned: + description: Lessons learned from the incident. + example: We need to test the failover process under realistic load conditions. + type: string + system_overview: + description: An overview of the affected systems. + example: The primary database cluster experienced a failover event. + type: string + type: object + IncidentAIPostmortemResponseType: + description: AI postmortem response resource type. + enum: + - get_incident_ai_postmortem_response + example: get_incident_ai_postmortem_response + type: string + x-enum-varnames: + - GET_INCIDENT_AI_POSTMORTEM_RESPONSE + AttachmentDataAttributes: + description: The attachment's attributes. + properties: + attachment: + $ref: '#/components/schemas/AttachmentDataAttributesAttachment' + attachment_type: + $ref: '#/components/schemas/AttachmentDataAttributesAttachmentType' + modified: + description: Timestamp when the attachment was last modified. + example: '2025-01-01T01:01:01.000000001Z' + format: date-time + type: string + type: object + AttachmentDataRelationships: + description: The attachment's resource relationships. + properties: + incident: + $ref: '#/components/schemas/RelationshipToIncident' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentAttachmentType: + default: incident_attachments + description: The incident attachment resource type. + enum: + - incident_attachments + example: incident_attachments + type: string + x-enum-varnames: + - INCIDENT_ATTACHMENTS + CreateAttachmentRequestDataAttributes: + description: The attributes for creating an attachment. + properties: + attachment: + $ref: '#/components/schemas/CreateAttachmentRequestDataAttributesAttachment' + attachment_type: + $ref: '#/components/schemas/AttachmentDataAttributesAttachmentType' + type: object + PostmortemAttachmentRequestAttributes: + description: Postmortem attachment attributes + properties: + cells: + description: The cells of the postmortem + items: + $ref: '#/components/schemas/PostmortemCell' + type: array + content: + description: The content of the postmortem + example: |- + # Incident Report - IR-123 + [...] + type: string + postmortem_template_id: + description: The ID of the postmortem template + example: 93645509-874e-45c4-adfa-623bfeaead89-123 + type: string + title: + description: The title of the postmortem + example: Postmortem-IR-123 + type: string + type: object + PatchAttachmentRequestDataAttributes: + description: The attributes for updating an attachment. + properties: + attachment: + $ref: '#/components/schemas/PatchAttachmentRequestDataAttributesAttachment' + type: object + IncidentCreatePageFromIncidentDataAttributesRequest: + description: Attributes for creating a page from an incident. + properties: + description: + description: The description of the page. + example: A critical incident affecting production systems. + type: string + incident_public_id: + description: The public ID of the incident. + example: '12345' + type: string + role: + $ref: '#/components/schemas/IncidentPageRoleReference' + services: + description: List of affected services. + example: + - web-store + - checkout + items: + type: string + type: array + tags: + description: List of tags for the page. + example: + - env:prod + items: + type: string + type: array + target: + $ref: '#/components/schemas/IncidentPageTarget' + title: + description: The title of the page. + example: Production outage - SEV-1 + type: string + type: object + IncidentCreatePageFromIncidentType: + description: Resource type for a page creation request. + enum: + - page + example: page + type: string + x-enum-varnames: + - PAGE + IncidentPageUUIDType: + description: Resource type for a page UUID response. + enum: + - page_uuid + example: page_uuid + type: string + x-enum-varnames: + - PAGE_UUID + IncidentConfigurationPatchDataAttributesRequest: + description: Attributes for patching an incident configuration. All fields are optional. + properties: + execute_integrations: + description: Whether to execute integrations for this incident. + example: true + type: boolean + execute_notification_rules: + description: Whether to execute notification rules for this incident. + example: true + type: boolean + include_in_analytics: + description: Whether to include this incident in analytics. + example: true + type: boolean + include_in_search: + description: Whether to include this incident in search results. + example: true + type: boolean + type: object + IncidentConfigurationType: + description: Incident configuration resource type. + enum: + - incidents_configurations + example: incidents_configurations + type: string + x-enum-varnames: + - INCIDENTS_CONFIGURATIONS + IncidentConfigurationDataAttributesResponse: + description: Attributes of an incident configuration in a response. + properties: + created_at: + description: Timestamp when the configuration was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + execute_integrations: + description: Whether integrations are executed for this incident. + example: true + type: boolean + execute_notification_rules: + description: Whether notification rules are executed for this incident. + example: true + type: boolean + incident_id: + description: The incident identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + include_in_analytics: + description: Whether this incident is included in analytics. + example: true + type: boolean + include_in_search: + description: Whether this incident is included in search results. + example: true + type: boolean + modified_at: + description: Timestamp when the configuration was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + required: + - incident_id + - created_at + - modified_at + type: object + IncidentConfigurationRelationships: + description: Relationships for an incident configuration. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentConfigurationDataAttributesRequest: + description: Attributes for creating an incident configuration. + properties: + execute_integrations: + description: Whether to execute integrations for this incident. + example: true + type: boolean + execute_notification_rules: + description: Whether to execute notification rules for this incident. + example: true + type: boolean + include_in_analytics: + description: Whether to include this incident in analytics. + example: true + type: boolean + include_in_search: + description: Whether to include this incident in search results. + example: true + type: boolean + type: object + IncidentImpactAttributes: + description: The incident impact's attributes. + properties: + created: + description: Timestamp when the impact was created. + example: '2025-08-29T13:17:00Z' + format: date-time + readOnly: true + type: string + description: + description: Description of the impact. + example: Service was unavailable for external users + type: string + end_at: + description: Timestamp when the impact ended. + example: '2025-08-29T13:17:00Z' + format: date-time + nullable: true + type: string + fields: + $ref: '#/components/schemas/IncidentImpactFieldsObject' + impact_type: + description: The type of impact. + example: customer + type: string + modified: + description: Timestamp when the impact was last modified. + example: '2025-08-29T13:17:00Z' + format: date-time + readOnly: true + type: string + start_at: + description: Timestamp representing when the impact started. + example: '2025-08-28T13:17:00Z' + format: date-time + type: string + required: + - description + - start_at + type: object + IncidentImpactRelationships: + description: The incident impact's resource relationships. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + incident: + $ref: '#/components/schemas/RelationshipToIncident' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentImpactType: + default: incident_impacts + description: Incident impact resource type. + enum: + - incident_impacts + example: incident_impacts + type: string + x-enum-varnames: + - INCIDENT_IMPACTS + IncidentImpactCreateAttributes: + description: The incident impact's attributes for a create request. + properties: + description: + description: Description of the impact. + example: Service was unavailable for external users + type: string + end_at: + description: Timestamp when the impact ended. + example: '2025-08-29T13:17:00Z' + format: date-time + nullable: true + type: string + fields: + $ref: '#/components/schemas/IncidentImpactFieldsObject' + start_at: + description: Timestamp when the impact started. + example: '2025-08-28T13:17:00Z' + format: date-time + type: string + required: + - description + - start_at + type: object + IncidentImpactPatchAttributes: + description: The incident impact's attributes for a patch request. All fields are optional. + properties: + description: + description: Description of the impact. + example: Service was unavailable for external users + type: string + end_at: + description: Timestamp when the impact ended. + example: '2025-08-29T13:17:00Z' + format: date-time + nullable: true + type: string + fields: + $ref: '#/components/schemas/IncidentImpactFieldsObject' + start_at: + description: Timestamp when the impact started. + example: '2025-08-28T13:17:00Z' + format: date-time + type: string + type: object + IncidentCreateOnCallPageDataAttributesRequest: + description: Attributes for creating an on-call page from an incident. + properties: + description: + description: The description of the page. + example: A critical incident affecting production systems. + type: string + role: + $ref: '#/components/schemas/IncidentPageRoleReference' + services: + description: List of affected services. + example: + - web-store + items: + type: string + type: array + tags: + description: List of tags for the page. + example: + - env:prod + items: + type: string + type: array + target: + $ref: '#/components/schemas/IncidentPageTarget' + title: + description: The title of the page. + example: Production outage - SEV-1 + type: string + type: object + IncidentOnCallPageDataAttributesRequest: + description: Attributes for linking a page to an incident. + properties: + key: + description: The key of the on-call page. + example: PAGE-12345 + type: string + page_target: + $ref: '#/components/schemas/IncidentOnCallPageTarget' + team_id: + description: The team ID associated with the page (deprecated, use page_target instead). + example: team-abc-123 + type: string + type: object + IncidentOnCallPageType: + description: On-call page resource type. + enum: + - page + example: page + type: string + x-enum-varnames: + - PAGE + IncidentIntegrationMetadataAttributes: + description: Incident integration metadata's attributes for a create request. + properties: + created: + description: Timestamp when the incident todo was created. + format: date-time + readOnly: true + type: string + incident_id: + description: UUID of the incident this integration metadata is connected to. + example: 00000000-aaaa-0000-0000-000000000000 + type: string + integration_type: + description: |- + A number indicating the type of integration this metadata is for. 1 indicates Slack; + 7 indicates Microsoft Teams; + 8 indicates Jira. + example: 1 + format: int32 + maximum: 100 + type: integer + metadata: + $ref: '#/components/schemas/IncidentIntegrationMetadataMetadata' + modified: + description: Timestamp when the incident todo was last modified. + format: date-time + readOnly: true + type: string + status: + description: |- + A number indicating the status of this integration metadata. 0 indicates unknown; + 1 indicates pending; 2 indicates complete; 3 indicates manually created; + 4 indicates manually updated; 5 indicates failed. + format: int32 + maximum: 5 + type: integer + required: + - integration_type + - metadata + type: object + IncidentIntegrationRelationships: + description: The incident's integration relationships from a response. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentIntegrationMetadataType: + default: incident_integrations + description: Integration metadata resource type. + enum: + - incident_integrations + example: incident_integrations + type: string + x-enum-varnames: + - INCIDENT_INTEGRATIONS + IncidentTodoAttributes: + description: Incident todo's attributes. + properties: + assignees: + $ref: '#/components/schemas/IncidentTodoAssigneeArray' + completed: + description: Timestamp when the todo was completed. + example: '2023-03-06T22:00:00.000000+00:00' + nullable: true + type: string + content: + description: The follow-up task's content. + example: Restore lost data. + type: string + created: + description: Timestamp when the incident todo was created. + format: date-time + readOnly: true + type: string + due_date: + description: Timestamp when the todo should be completed by. + example: '2023-07-10T05:00:00.000000+00:00' + nullable: true + type: string + incident_id: + description: UUID of the incident this todo is connected to. + example: 00000000-aaaa-0000-0000-000000000000 + type: string + modified: + description: Timestamp when the incident todo was last modified. + format: date-time + readOnly: true + type: string + required: + - content + - assignees + type: object + IncidentTodoRelationships: + description: The incident's relationships from a response. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentTodoType: + default: incident_todos + description: Todo resource type. + enum: + - incident_todos + example: incident_todos + type: string + x-enum-varnames: + - INCIDENT_TODOS + IncidentResponderDataAttributesResponse: + description: Attributes of an incident responder in a response. + properties: + created: + description: Timestamp when the responder was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + external_id: + description: The external ID of the responder. + example: null + nullable: true + type: string + external_source: + description: The external source of the responder. + example: null + nullable: true + type: string + is_billable: + description: Whether this responder counts toward billing. + example: true + type: boolean + last_active: + description: Timestamp when the responder was last active. + example: '2024-01-01T00:00:00.000Z' + format: date-time + nullable: true + type: string + meta: + additionalProperties: {} + description: Additional metadata for the responder. + nullable: true + type: object + modified: + description: Timestamp when the responder was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + required: + - created + - modified + - is_billable + type: object + IncidentResponderRelationships: + description: Relationships for an incident responder. + properties: + created_by: + $ref: '#/components/schemas/RelationshipToUser' + last_modified_by: + $ref: '#/components/schemas/RelationshipToUser' + role_assignments: + $ref: '#/components/schemas/IncidentResponderRoleAssignmentsRelationship' + user: + $ref: '#/components/schemas/NullableRelationshipToUser' + type: object + IncidentResponderType: + description: Incident responder resource type. + enum: + - incident_responders + example: incident_responders + type: string + x-enum-varnames: + - INCIDENT_RESPONDERS + IncidentResponderRelationshipsRequest: + description: Relationships for creating an incident responder. + properties: + user: + $ref: '#/components/schemas/IncidentResponderUserRelationship' + required: + - user + type: object + IncidentServiceNowRecordDataAttributesRequest: + description: Attributes for creating a ServiceNow record for an incident. + properties: + assignment_group: + description: The ServiceNow assignment group. + example: IT Support + type: string + configuration_item_mapping: + description: The ServiceNow configuration item mapping. + example: my-service + type: string + instance_name: + description: The ServiceNow instance name. + example: my-instance + type: string + record_id: + description: An existing ServiceNow record ID (Sys ID) to link instead of creating a new record. + example: abc123def456 + type: string + required: + - instance_name + - assignment_group + - configuration_item_mapping + type: object + IncidentServiceNowRecordPromptType: + description: ServiceNow record prompt resource type. + enum: + - incident_servicenow_record_prompt + example: incident_servicenow_record_prompt + type: string + x-enum-varnames: + - INCIDENT_SERVICENOW_RECORD_PROMPT + IncidentTimestampOverrideDataAttributesResponse: + description: Attributes of a timestamp override in a response. + properties: + created_at: + description: Timestamp when the override was created. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + deleted_at: + description: Timestamp when the override was deleted. + example: null + format: date-time + nullable: true + type: string + incident_id: + description: The incident identifier. + example: 00000000-0000-0000-0000-000000000000 + type: string + modified_at: + description: Timestamp when the override was last modified. + example: '2024-01-01T00:00:00.000Z' + format: date-time + type: string + timestamp_type: + $ref: '#/components/schemas/IncidentTimestampType' + timestamp_value: + description: The overridden timestamp value. + example: '2024-01-01T10:00:00.000Z' + format: date-time + type: string + required: + - incident_id + - timestamp_type + - timestamp_value + - created_at + - modified_at + type: object + IncidentTimestampOverrideRelationships: + description: Relationships for a timestamp override. + properties: + created_by_user: + $ref: '#/components/schemas/RelationshipToUser' + last_modified_by_user: + $ref: '#/components/schemas/RelationshipToUser' + type: object + IncidentTimestampOverrideType: + description: Incident timestamp override resource type. + enum: + - incidents_timestamp_overrides + example: incidents_timestamp_overrides + type: string + x-enum-varnames: + - INCIDENTS_TIMESTAMP_OVERRIDES + IncidentTimestampOverrideDataAttributesRequest: + description: Attributes for creating a timestamp override. + properties: + timestamp_type: + $ref: '#/components/schemas/IncidentTimestampType' + timestamp_value: + description: The overridden timestamp value. + example: '2024-01-01T10:00:00.000Z' + format: date-time + type: string + required: + - timestamp_type + - timestamp_value + type: object + IncidentTimestampOverridePatchDataAttributesRequest: + description: Attributes for patching a timestamp override. + properties: + timestamp_value: + description: The overridden timestamp value. + example: '2024-01-01T10:00:00.000Z' + format: date-time + type: string + required: + - timestamp_value + type: object + MaintenanceWindowAttributes: + description: Attributes of a maintenance window, including its schedule and the query that determines which cases are affected. + properties: + created_by: + description: The UUID of the user who created this maintenance window. Read-only. + readOnly: true + type: string + end_at: + description: The ISO 8601 timestamp when the maintenance window ends and normal notification behavior resumes. + example: '2026-06-01T06:00:00Z' + format: date-time + type: string + name: + description: A human-readable name for the maintenance window (for example, `Database migration - Dec 15`). + example: Weekly maintenance + type: string + query: + description: A case search query that determines which cases are affected during the maintenance window. Uses the same syntax as the Case Management search bar. + example: project:SEC + type: string + start_at: + description: The ISO 8601 timestamp when the maintenance window begins and notifications start being suppressed. + example: '2026-06-01T00:00:00Z' + format: date-time + type: string + updated_by: + description: The UUID of the user who last modified this maintenance window. Read-only. + readOnly: true + type: string + required: + - name + - query + - start_at + - end_at + type: object + MaintenanceWindowResourceType: + default: maintenance_window + description: JSON:API resource type for maintenance windows. + enum: + - maintenance_window + example: maintenance_window + type: string + x-enum-varnames: + - MAINTENANCE_WINDOW + MaintenanceWindowCreateAttributes: + description: Attributes required to create a maintenance window. + properties: + end_at: + description: The end time of the maintenance window. + example: '2026-06-01T06:00:00Z' + format: date-time + type: string + name: + description: The name of the maintenance window. + example: Weekly maintenance + type: string + query: + description: The query to filter event management cases for this maintenance window. + example: project:SEC + type: string + start_at: + description: The start time of the maintenance window. + example: '2026-06-01T00:00:00Z' + format: date-time + type: string + required: + - name + - query + - start_at + - end_at + type: object + MaintenanceWindowUpdateAttributes: + description: Attributes that can be updated on a maintenance window. All fields are optional; only provided fields are changed. + properties: + end_at: + description: The end time of the maintenance window. + format: date-time + type: string + name: + description: The name of the maintenance window. + type: string + query: + description: The query to filter event management cases for this maintenance window. + type: string + start_at: + description: The start time of the maintenance window. + format: date-time + type: string + type: object + EscalationPolicyCreateRequestDataAttributes: + description: Defines the attributes for creating an escalation policy, including its description, name, resolution behavior, retries, and steps. + properties: + name: + description: Specifies the name for the new escalation policy. + example: On-Call Escalation Policy + minLength: 1 + type: string + resolve_page_on_policy_end: + description: Indicates whether the page is automatically resolved when the policy ends. + type: boolean + retries: + description: Specifies how many times the escalation sequence is retried if there is no response. + format: int64 + maximum: 10 + minimum: 0 + type: integer + steps: + description: A list of escalation steps, each defining assignment, escalation timeout, and targets for the new policy. + items: + $ref: '#/components/schemas/EscalationPolicyCreateRequestDataAttributesStepsItems' + maxItems: 10 + minItems: 1 + type: array + required: + - name + - steps + type: object + EscalationPolicyCreateRequestDataRelationships: + description: Represents relationships in an escalation policy creation request, including references to teams. + properties: + teams: + $ref: '#/components/schemas/DataRelationshipsTeams' + type: object + EscalationPolicyCreateRequestDataType: + default: policies + description: Indicates that the resource is of type `policies`. + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + EscalationPolicyDataAttributes: + description: Defines the main attributes of an escalation policy, such as its name and behavior on policy end. + properties: + name: + description: Specifies the name of the escalation policy. + example: On-Call Escalation Policy + minLength: 1 + type: string + resolve_page_on_policy_end: + description: Indicates whether the page is automatically resolved when the policy ends. + type: boolean + retries: + description: Specifies how many times the escalation sequence is retried if there is no response. + format: int64 + maximum: 10 + minimum: 0 + type: integer + required: + - name + type: object + EscalationPolicyDataRelationships: + description: Represents the relationships for an escalation policy, including references to steps and teams. + properties: + steps: + $ref: '#/components/schemas/EscalationPolicyDataRelationshipsSteps' + teams: + $ref: '#/components/schemas/DataRelationshipsTeams' + required: + - steps + type: object + EscalationPolicyDataType: + default: policies + description: Indicates that the resource is of type `policies`. + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + EscalationPolicyStep: + description: Represents a single step in an escalation policy, including its attributes, relationships, and resource type. + properties: + attributes: + $ref: '#/components/schemas/EscalationPolicyStepAttributes' + id: + description: Specifies the unique identifier of this escalation policy step. + type: string + relationships: + $ref: '#/components/schemas/EscalationPolicyStepRelationships' + type: + $ref: '#/components/schemas/EscalationPolicyStepType' + required: + - type + type: object + EscalationPolicyUser: + description: Represents a user object in the context of an escalation policy, including their `id`, type, and basic attributes. + properties: + attributes: + $ref: '#/components/schemas/EscalationPolicyUserAttributes' + id: + description: The unique user identifier. + type: string + type: + $ref: '#/components/schemas/EscalationPolicyUserType' + required: + - type + type: object + ConfiguredSchedule: + description: Full resource representation of a configured schedule target with position (previous, current, or next). + properties: + attributes: + $ref: '#/components/schemas/ConfiguredScheduleTargetAttributes' + id: + description: Specifies the unique identifier of the configured schedule target. + example: 00000000-aba1-0000-0000-000000000000_previous + type: string + relationships: + $ref: '#/components/schemas/ConfiguredScheduleTargetRelationships' + type: + $ref: '#/components/schemas/ConfiguredScheduleTargetType' + required: + - type + - id + - attributes + - relationships + type: object + TeamReference: + description: Provides a reference to a team, including ID, type, and basic attributes/relationships. + properties: + attributes: + $ref: '#/components/schemas/TeamReferenceAttributes' + id: + description: The team's unique identifier. + type: string + type: + $ref: '#/components/schemas/TeamReferenceType' + required: + - type + type: object + EscalationPolicyUpdateRequestDataAttributes: + description: Defines the attributes that can be updated for an escalation policy, such as description, name, resolution behavior, retries, and steps. + properties: + name: + description: Specifies the name of the escalation policy. + example: On-Call Escalation Policy + minLength: 1 + type: string + resolve_page_on_policy_end: + description: Indicates whether the page is automatically resolved when the policy ends. + type: boolean + retries: + description: Specifies how many times the escalation sequence is retried if there is no response. + format: int64 + maximum: 10 + minimum: 0 + type: integer + steps: + description: A list of escalation steps, each defining assignment, escalation timeout, and targets. + items: + $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataAttributesStepsItems' + maxItems: 10 + minItems: 1 type: array - included: - description: Included related resources that the user requested. + required: + - name + - steps + type: object + EscalationPolicyUpdateRequestDataRelationships: + description: Represents relationships in an escalation policy update request, including references to teams. + properties: + teams: + $ref: '#/components/schemas/DataRelationshipsTeams' + type: object + EscalationPolicyUpdateRequestDataType: + default: policies + description: Indicates that the resource is of type `policies`. + enum: + - policies + example: policies + type: string + x-enum-varnames: + - POLICIES + CreatePageRequestDataAttributes: + description: Details about the On-Call Page you want to create. + properties: + description: + description: A short summary of the issue or context. + type: string + tags: + description: Tags to help categorize or filter the page. + items: + description: A single tag for categorizing the page. + type: string + type: array + target: + $ref: '#/components/schemas/CreatePageRequestDataAttributesTarget' + title: + description: The title of the page. + example: 'Service: Test is down' + type: string + urgency: + $ref: '#/components/schemas/PageUrgency' + required: + - target + - title + - urgency + type: object + CreatePageRequestDataType: + default: pages + description: The type of resource used when creating an On-Call Page. + enum: + - pages + example: pages + type: string + x-enum-varnames: + - PAGES + CreatePageResponseDataType: + default: pages + description: The type of resource used when creating an On-Call Page. + enum: + - pages + example: pages + type: string + x-enum-varnames: + - PAGES + ScheduleCreateRequestDataAttributes: + description: Describes the main attributes for creating a new schedule, including name, layers, and time zone. + properties: + layers: + description: The layers of On-Call coverage that define rotation intervals and restrictions. + items: + $ref: '#/components/schemas/ScheduleCreateRequestDataAttributesLayersItems' + type: array + name: + description: A human-readable name for the new schedule. + example: Team A On-Call + type: string + time_zone: + description: The time zone in which the schedule is defined. + example: America/New_York + type: string + required: + - name + - time_zone + - layers + type: object + ScheduleCreateRequestDataRelationships: + description: Gathers relationship objects for the schedule creation request, including the teams to associate. + properties: + teams: + $ref: '#/components/schemas/DataRelationshipsTeams' + type: object + ScheduleCreateRequestDataType: + default: schedules + description: Schedules resource type. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleDataAttributes: + description: Provides core properties of a schedule object such as its name and time zone. + properties: + name: + description: A short name for the schedule. + example: Primary On-Call + type: string + tags: + description: A list of tags associated with the schedule. + items: + type: string + type: array + time_zone: + description: The time zone in which this schedule operates. + example: America/New_York + type: string + type: object + ScheduleDataRelationships: + description: Groups the relationships for a schedule object, referencing layers and teams. + properties: + layers: + $ref: '#/components/schemas/ScheduleDataRelationshipsLayers' + teams: + $ref: '#/components/schemas/DataRelationshipsTeams' + type: object + ScheduleDataType: + default: schedules + description: Schedules resource type. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + Layer: + description: Encapsulates a layer resource, holding attributes like rotation details, plus relationships to the members covering that layer. + properties: + attributes: + $ref: '#/components/schemas/LayerAttributes' + id: + description: A unique identifier for this layer. + type: string + relationships: + $ref: '#/components/schemas/LayerRelationships' + type: + $ref: '#/components/schemas/LayerType' + required: + - type + type: object + ScheduleMember: + description: Represents a single member entry in a schedule, referencing a specific user. + properties: + id: + description: The unique identifier for this schedule member. + type: string + relationships: + $ref: '#/components/schemas/ScheduleMemberRelationships' + type: + $ref: '#/components/schemas/ScheduleMemberType' + required: + - type + type: object + ScheduleUser: + description: Represents a user object in the context of a schedule, including their `id`, type, and basic attributes. + properties: + attributes: + $ref: '#/components/schemas/ScheduleUserAttributes' + id: + description: The unique user identifier. + type: string + type: + $ref: '#/components/schemas/ScheduleUserType' + required: + - type + type: object + ScheduleUpdateRequestDataAttributes: + description: Defines the updatable attributes for a schedule, such as name, time zone, and layers. + properties: + layers: + description: The updated list of layers (rotations) for this schedule. + items: + $ref: '#/components/schemas/ScheduleUpdateRequestDataAttributesLayersItems' + type: array + name: + description: A short name for the schedule. + example: Primary On-Call + type: string + time_zone: + description: The time zone used when interpreting rotation times. + example: America/New_York + type: string + required: + - name + - time_zone + - layers + type: object + ScheduleUpdateRequestDataRelationships: + description: Houses relationships for the schedule update, typically referencing teams. + properties: + teams: + $ref: '#/components/schemas/DataRelationshipsTeams' + type: object + ScheduleUpdateRequestDataType: + default: schedules + description: Schedules resource type. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ShiftDataAttributes: + description: Attributes for an on-call shift. + properties: + end: + description: The end time of the shift. + format: date-time + type: string + start: + description: The start time of the shift. + format: date-time + type: string + type: object + ShiftDataRelationships: + description: Relationships for an on-call shift. + properties: + user: + $ref: '#/components/schemas/ShiftDataRelationshipsUser' + type: object + ShiftDataType: + default: shifts + description: Indicates that the resource is of type 'shifts'. + enum: + - shifts + example: shifts + type: string + x-enum-varnames: + - SHIFTS + ScheduleOnCallRespondersDataAttributes: + description: Attributes for a schedule's on-call responders lookup. + properties: + scheduled_at: + description: The timestamp the responders were resolved at. + format: date-time + type: string + type: object + ScheduleOnCallRespondersDataRelationships: + description: Relationships for a schedule's on-call responders lookup, including the schedule and its responder groups. + properties: + responders: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationshipsResponders' + schedule: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationshipsSchedule' + type: object + ScheduleOnCallRespondersDataType: + default: schedule_oncall_responders + description: Represents the resource type for a schedule's grouped on-call responders across the previous, current, and next positions. + enum: + - schedule_oncall_responders + example: schedule_oncall_responders + type: string + x-enum-varnames: + - SCHEDULE_ONCALL_RESPONDERS + ScheduleOnCallResponderData: + description: Represents one position's (previous, current, or next) group of on-call responder shifts. Positions with no matching shift are omitted entirely from the response. + properties: + attributes: + $ref: '#/components/schemas/ScheduleOnCallResponderDataAttributes' + id: + description: Unique identifier of this responder group. + type: string + relationships: + $ref: '#/components/schemas/ScheduleOnCallResponderDataRelationships' + type: + $ref: '#/components/schemas/ScheduleOnCallResponderDataType' + required: + - type + type: object + TeamOnCallRespondersDataRelationships: + description: Relationship objects linked to a team's on-call responder configuration, including escalations and responders. + properties: + escalations: + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalations' + responders: + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsResponders' + type: object + TeamOnCallRespondersDataType: + default: team_oncall_responders + description: Represents the resource type for a group of users assigned to handle on-call duties within a team. + enum: + - team_oncall_responders + example: team_oncall_responders + type: string + x-enum-varnames: + - TEAM_ONCALL_RESPONDERS + Escalation: + description: Represents an escalation policy step. + properties: + id: + description: Unique identifier of the escalation step. + type: string + relationships: + $ref: '#/components/schemas/EscalationRelationships' + type: + $ref: '#/components/schemas/EscalationType' + required: + - type + type: object + TeamRoutingRulesDataRelationships: + description: Specifies relationships for team routing rules, including rule references. + properties: + rules: + $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRules' + type: object + TeamRoutingRulesDataType: + default: team_routing_rules + description: Team routing rules resource type. + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + RoutingRule: + description: Represents a routing rule, including its attributes, relationships, and unique identifier. + properties: + attributes: + $ref: '#/components/schemas/RoutingRuleAttributes' + id: + description: Specifies the unique identifier of this routing rule. + type: string + relationships: + $ref: '#/components/schemas/RoutingRuleRelationships' + type: + $ref: '#/components/schemas/RoutingRuleType' + required: + - type + type: object + TeamRoutingRulesRequestDataAttributes: + description: Represents the attributes of a request to update or create team routing rules. + properties: + rules: + description: A list of routing rule items that define how incoming pages should be handled. items: - $ref: >- - #/components/schemas/IncidentIntegrationMetadataResponseIncludedItem - readOnly: true + $ref: '#/components/schemas/TeamRoutingRulesRequestRule' type: array + type: object + TeamRoutingRulesRequestDataType: + default: team_routing_rules + description: Team routing rules resource type. + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + NotificationChannelAttributes: + description: Attributes for an on-call notification channel. + properties: + active: + description: Whether the notification channel is currently active. + type: boolean + config: + $ref: '#/components/schemas/NotificationChannelConfig' + description: Notification channel configuration + type: object + NotificationChannelType: + default: notification_channels + description: Indicates that the resource is of type 'notification_channels'. + enum: + - notification_channels + example: notification_channels + type: string + x-enum-varnames: + - NOTIFICATION_CHANNELS + CreateNotificationChannelAttributes: + description: Attributes for creating an on-call notification channel. + properties: + config: + $ref: '#/components/schemas/CreateNotificationChannelConfig' + description: Notification channel configuration + type: object + OnCallNotificationRuleAttributes: + description: Attributes for an on-call notification rule. + properties: + category: + $ref: '#/components/schemas/OnCallNotificationRuleCategory' + channel_settings: + $ref: '#/components/schemas/OnCallNotificationRuleChannelSettings' + description: Configuration for the associated channel, if necessary + nullable: true + delay_minutes: + description: The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation + format: int64 + type: integer + type: object + OnCallNotificationRuleRelationships: + description: Relationship object for creating a notification rule + properties: + channel: + $ref: '#/components/schemas/OnCallNotificationRuleChannelRelationship' + type: object + OnCallNotificationRuleType: + default: notification_rules + description: Indicates that the resource is of type 'notification_rules'. + enum: + - notification_rules + example: notification_rules + type: string + x-enum-varnames: + - NOTIFICATION_RULES + OnCallNotificationRuleRequestAttributes: + description: Attributes for creating or modifying an on-call notification rule. + properties: + category: + $ref: '#/components/schemas/OnCallNotificationRuleCategory' + channel_settings: + $ref: '#/components/schemas/OnCallNotificationRuleChannelSettings' + description: Configuration for the associated channel, if necessary + nullable: true + delay_minutes: + description: The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation + format: int64 + type: integer + type: object + UpdateOnCallNotificationRuleRequestAttributes: + description: Attributes for creating or modifying an on-call notification rule. + properties: + category: + $ref: '#/components/schemas/OnCallNotificationRuleCategory' + channel_settings: + $ref: '#/components/schemas/OnCallNotificationRuleChannelSettings' + description: Configuration for the associated channel, if necessary + nullable: true + delay_minutes: + description: The number of minutes that will elapse before this rule is evaluated. 0 indicates immediate evaluation + format: int64 + type: integer + type: object + ServiceDefinitionDataAttributes: + description: Service definition attributes. + properties: meta: - $ref: '#/components/schemas/IncidentResponseMeta' + $ref: '#/components/schemas/ServiceDefinitionMeta' + schema: + $ref: '#/components/schemas/ServiceDefinitionSchema' + type: object + ServiceDefinitionV2Dot2Contact: + description: Service owner's contacts information. + properties: + contact: + description: Contact value. + example: https://teams.microsoft.com/myteam + type: string + name: + description: Contact Name. + example: My team channel + type: string + type: + description: 'Contact type. Datadog recognizes the following types: `email`, `slack`, and `microsoft-teams`.' + example: slack + type: string required: - - data + - type + - contact type: object - IncidentIntegrationMetadataCreateRequest: - description: Create request for an incident integration metadata. + ServiceDefinitionV2Dot2Integrations: + description: Third party integrations that Datadog supports. + properties: + opsgenie: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Opsgenie' + pagerduty: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Pagerduty' + type: object + ServiceDefinitionV2Dot2Link: + description: Service's external links. + properties: + name: + description: Link name. + example: Runbook + type: string + provider: + description: Link provider. + example: Github + type: string + type: + description: 'Link type. Datadog recognizes the following types: `runbook`, `doc`, `repo`, `dashboard`, and `other`.' + example: runbook + type: string + url: + description: Link URL. + example: https://my-runbook + type: string + required: + - name + - type + - url + type: object + ServiceDefinitionV2Dot2Version: + default: v2.2 + description: Schema version being used. + enum: + - v2.2 + example: v2.2 + type: string + x-enum-varnames: + - V2_2 + ServiceDefinitionV2Dot2Type: + description: The type of service. + example: web + type: string + ServiceDefinitionV2Dot1Contact: + description: Service owner's contacts information. + properties: + contact: + description: Contact value. + example: contact@datadoghq.com + type: string + name: + description: Contact email. + example: Team Email + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1EmailType' + required: + - type + - contact + type: object + ServiceDefinitionV2Dot1Integrations: + description: Third party integrations that Datadog supports. + properties: + opsgenie: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1Opsgenie' + pagerduty: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1Pagerduty' + type: object + ServiceDefinitionV2Dot1Link: + description: Service's external links. + properties: + name: + description: Link name. + example: Runbook + type: string + provider: + description: Link provider. + example: Github + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1LinkType' + url: + description: Link URL. + example: https://my-runbook + type: string + required: + - name + - type + - url + type: object + ServiceDefinitionV2Dot1Version: + default: v2.1 + description: Schema version being used. + enum: + - v2.1 + example: v2.1 + type: string + x-enum-varnames: + - V2_1 + ServiceDefinitionV2Contact: + description: Service owner's contacts information. properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataCreateData' + contact: + description: Contact value. + example: contact@datadoghq.com + type: string + name: + description: Contact email. + example: Team Email + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2EmailType' required: - - data + - type + - contact type: object - IncidentIntegrationMetadataResponse: - description: Response with an incident integration metadata. + ServiceDefinitionV2Doc: + description: Service documents. properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: >- - #/components/schemas/IncidentIntegrationMetadataResponseIncludedItem - readOnly: true - type: array + name: + description: Document name. + example: Architecture + type: string + provider: + description: Document provider. + example: google drive + type: string + url: + description: Document URL. + example: https://gdrive/mydoc + type: string required: - - data + - name + - url type: object - IncidentIntegrationMetadataPatchRequest: - description: Patch request for an incident integration metadata. + ServiceDefinitionV2Integrations: + description: Third party integrations that Datadog supports. properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataPatchData' - required: - - data + opsgenie: + $ref: '#/components/schemas/ServiceDefinitionV2Opsgenie' + pagerduty: + $ref: '#/components/schemas/ServiceDefinitionV2Pagerduty' type: object - IncidentTodoListResponse: - description: Response with a list of incident todos. + ServiceDefinitionV2Link: + description: Service's external links. properties: - data: - description: An array of incident todos. - items: - $ref: '#/components/schemas/IncidentTodoResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' + name: + description: Link name. + example: Runbook + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2LinkType' + url: + description: Link URL. + example: https://my-runbook + type: string required: - - data + - name + - type + - url type: object - IncidentTodoCreateRequest: - description: Create request for an incident todo. + ServiceDefinitionV2Repo: + description: Service code repositories. properties: - data: - $ref: '#/components/schemas/IncidentTodoCreateData' + name: + description: Repository name. + example: Source Code + type: string + provider: + description: Repository provider. + example: GitHub + type: string + url: + description: Repository URL. + example: https://github.com/DataDog/schema + type: string required: - - data + - name + - url type: object - IncidentTodoResponse: - description: Response with an incident todo. + ServiceDefinitionV2Version: + default: v2 + description: Schema version being used. + enum: + - v2 + example: v2 + type: string + x-enum-varnames: + - V2 + SloReportCreateRequestAttributes: + description: The attributes portion of the SLO report request. properties: - data: - $ref: '#/components/schemas/IncidentTodoResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' - readOnly: true - type: array + from_ts: + description: The `from` timestamp for the report in epoch seconds. + example: 1690901870 + format: int64 + type: integer + interval: + $ref: '#/components/schemas/SLOReportInterval' + query: + description: The query string used to filter SLO results. Some examples of queries include `service:` and `slo-name`. + example: slo_type:metric + type: string + timezone: + description: The timezone used to determine the start and end of each interval. For example, weekly intervals start at 12am on Sunday in the specified timezone. + example: America/New_York + type: string + to_ts: + description: The `to` timestamp for the report in epoch seconds. + example: 1706803070 + format: int64 + type: integer required: - - data + - query + - from_ts + - to_ts type: object - IncidentTodoPatchRequest: - description: Patch request for an incident todo. + SLOReportStatusGetResponseAttributes: + description: The attributes portion of the SLO report status response. properties: - data: - $ref: '#/components/schemas/IncidentTodoPatchData' - required: - - data + status: + $ref: '#/components/schemas/SLOReportStatus' type: object - EscalationPolicyCreateRequest: - description: >- - Represents a request to create a new escalation policy, including the - policy data. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: true - retries: 2 - steps: - - assignment: default - escalate_after_seconds: 3600 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - - assignment: round-robin - escalate_after_seconds: 3600 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-abb1-0000-0000-000000000000 - type: users - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies + SloStatusDataAttributes: + description: The attributes of the SLO status. properties: - data: - $ref: '#/components/schemas/EscalationPolicyCreateRequestData' + error_budget_remaining: + description: The percentage of error budget remaining. + example: 99.5 + format: double + type: number + raw_error_budget_remaining: + $ref: '#/components/schemas/RawErrorBudgetRemaining' + sli: + description: The current Service Level Indicator (SLI) value as a percentage. + example: 99.95 + format: double + type: number + span_precision: + description: The precision of the time span in seconds. + example: 2 + format: int64 + type: integer + state: + description: The current state of the SLO (for example, `breached`, `warning`, `ok`). + example: ok + type: string required: - - data - type: object - EscalationPolicy: - description: >- - Represents a complete escalation policy response, including policy data - and optionally included related resources. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: true - retries: 2 - id: 00000000-aba1-0000-0000-000000000000 - relationships: - steps: - data: - - id: 00000000-aba1-0000-0000-000000000000 - type: steps - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - included: - - attributes: - avatar: '' - description: Team 1 description - handle: team1 - name: Team 1 - id: 00000000-da3a-0000-0000-000000000000 - type: teams - - attributes: - assignment: default - escalate_after_seconds: 3600 - id: 00000000-aba1-0000-0000-000000000000 - relationships: - targets: - data: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - type: steps - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams + - sli + - error_budget_remaining + - raw_error_budget_remaining + - state + - span_precision + type: object + SloStatusType: + description: The type of the SLO status resource. + enum: + - slo_status + example: slo_status + type: string + x-enum-varnames: + - SLO_STATUS + StatusPageDataAttributes: + description: The attributes of a status page. properties: - data: - $ref: '#/components/schemas/EscalationPolicyData' - included: - description: >- - Provides any included related resources, such as steps or targets, - returned with the policy. + company_logo: + description: Base64-encoded image data displayed on the status page. + nullable: true + type: string + components: + description: Components displayed on the status page. items: - $ref: '#/components/schemas/EscalationPolicyIncluded' + $ref: '#/components/schemas/StatusPageDataAttributesComponentsItems' type: array + created_at: + description: Timestamp of when the status page was created. + format: date-time + type: string + custom_domain: + description: If configured, the url that the status page is accessible at. + nullable: true + type: string + custom_domain_enabled: + description: Whether the custom domain is configured. + type: boolean + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + type: string + email_header_image: + description: Base64-encoded image data included in email notifications sent to status page subscribers. + nullable: true + type: string + enabled: + description: Whether the status page is enabled. + type: boolean + favicon: + description: Base64-encoded image data displayed in the browser tab. + nullable: true + type: string + modified_at: + description: Timestamp of when the status page was last modified. + format: date-time + type: string + name: + description: The name of the status page. + type: string + page_url: + description: The url that the status page is accessible at. + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + type: boolean + type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType' + visualization_type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType' type: object - EscalationPolicyUpdateRequest: - description: >- - Represents a request to update an existing escalation policy, including - the updated policy data. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: false - retries: 2 - steps: - - assignment: default - escalate_after_seconds: 3600 - id: 00000000-aba1-0000-0000-000000000000 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - id: a3000000-0000-0000-0000-000000000000 - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies + StatusPageDataRelationships: + description: The relationships of a status page. properties: - data: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestData' - required: - - data + created_by_user: + $ref: '#/components/schemas/StatusPageDataRelationshipsCreatedByUser' + description: The Datadog user who created the status page. + last_modified_by_user: + $ref: '#/components/schemas/StatusPageDataRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the status page. type: object - CreatePageRequest: - description: Full request to trigger an On-Call Page. - example: - data: - attributes: - description: Page details. - tags: - - service:test - target: - identifier: my-team - type: team_handle - title: Page title - urgency: low - type: pages + StatusPageDataType: + default: status_pages + description: Status pages resource type. + enum: + - status_pages + example: status_pages + type: string + x-enum-varnames: + - STATUS_PAGES + StatusPagesUser: + description: The included Datadog user resource. properties: - data: - $ref: '#/components/schemas/CreatePageRequestData' + attributes: + $ref: '#/components/schemas/StatusPagesUserAttributes' + id: + description: The ID of the Datadog user. + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type type: object - CreatePageResponse: - description: The full response object after creating a new On-Call Page. + PaginationMetaPage: + description: Offset-based pagination schema. example: - data: - id: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - type: pages - properties: - data: - $ref: '#/components/schemas/CreatePageResponseData' + first_offset: 0 + last_offset: 900 + limit: 100 + next_offset: 100 + offset: 0 + prev_offset: 100 + total: 1000 + type: offset_limit + properties: + first_offset: + description: Integer representing the offset to fetch the first page of results. + example: 0 + format: int64 + type: integer + last_offset: + description: Integer representing the offset to fetch the last page of results. + example: 900 + format: int64 + nullable: true + type: integer + limit: + description: Integer representing the number of elements to be returned in the results. + example: 100 + format: int64 + type: integer + next_offset: + description: Integer representing the index of the first element in the next page of results. Equal to page size added to the current offset. + example: 100 + format: int64 + nullable: true + type: integer + offset: + description: Integer representing the index of the first element in the results. + example: 0 + format: int64 + type: integer + prev_offset: + description: Integer representing the index of the first element in the previous page of results. + example: 100 + format: int64 + nullable: true + type: integer + total: + description: Integer representing the total number of elements available. + example: 1000 + format: int64 + nullable: true + type: integer + type: + $ref: '#/components/schemas/PaginationMetaPageType' type: object - ScheduleCreateRequest: - description: >- - The top-level request body for schedule creation, wrapping a `data` - object. - example: - data: - attributes: - layers: - - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - days: 1 - members: - - user: - id: 00000000-aba1-0000-0000-000000000000 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - rotation_start: '2025-02-01T00:00:00Z' - name: On-Call Schedule - time_zone: America/New_York - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules + CreateStatusPageRequestDataAttributes: + description: The supported attributes for creating a status page. properties: - data: - $ref: '#/components/schemas/ScheduleCreateRequestData' + company_logo: + description: The base64-encoded image data displayed on the status page. + example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + type: string + components: + description: The components displayed on the status page. + example: + - components: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component + name: Web App + position: 0 + type: group + - name: API + position: 1 + type: component + - name: Webhooks + position: 2 + type: component + items: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesComponentsItems' + type: array + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + example: status-page-us1 + type: string + email_header_image: + description: Base64-encoded image data included in email notifications sent to status page subscribers. + example: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + type: string + favicon: + description: Base64-encoded image data displayed in the browser tab. + example: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + type: string + name: + description: The name of the status page. + example: Status Page US1 + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + example: true + type: boolean + type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType' + example: public + visualization_type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType' + example: bars_and_uptime_percentage required: - - data + - domain_prefix + - name + - type + - visualization_type type: object - Schedule: - description: >- - Top-level container for a schedule object, including both the `data` - payload and any related `included` resources (such as teams, layers, or - members). - example: - data: - attributes: - name: On-Call Schedule - time_zone: America/New_York - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - relationships: - layers: - data: - - id: 00000000-0000-0000-0000-000000000001 - type: layers - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - included: - - attributes: - avatar: '' - description: Team 1 description - handle: team1 - name: Team 1 - id: 00000000-da3a-0000-0000-000000000000 - type: teams - - attributes: - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - days: 1 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - rotation_start: '2025-02-01T00:00:00Z' - id: 00000000-0000-0000-0000-000000000001 - relationships: - members: - data: - - id: 00000000-0000-0000-0000-000000000002 - type: members - type: layers - - id: 00000000-0000-0000-0000-000000000002 - relationships: - user: - data: - id: 00000000-aba1-0000-0000-000000000000 - type: users - type: members - - attributes: - email: foo@bar.com - name: User 1 - id: 00000000-aba1-0000-0000-000000000000 - type: users + DegradationDataAttributes: + description: The attributes of a degradation. + properties: + components_affected: + description: Components affected by the degradation. + items: + $ref: '#/components/schemas/DegradationDataAttributesComponentsAffectedItems' + type: array + created_at: + description: Timestamp of when the degradation was created. + format: date-time + type: string + description: + description: Description of the degradation. + type: string + is_backfilled: + description: Whether the degradation was backfilled. + type: boolean + modified_at: + description: Timestamp of when the degradation was last modified. + format: date-time + type: string + source: + $ref: '#/components/schemas/DegradationDataAttributesSource' + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' + title: + description: Title of the degradation. + type: string + updates: + description: Past updates made to the degradation. + items: + $ref: '#/components/schemas/DegradationDataAttributesUpdatesItems' + type: array + type: object + DegradationDataRelationships: + description: The relationships of a degradation. + properties: + created_by_user: + $ref: '#/components/schemas/DegradationDataRelationshipsCreatedByUser' + description: The Datadog user who created the degradation. + last_modified_by_user: + $ref: '#/components/schemas/DegradationDataRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the degradation. + status_page: + $ref: '#/components/schemas/DegradationDataRelationshipsStatusPage' + description: The status page the degradation belongs to. + template: + $ref: '#/components/schemas/DegradationDataRelationshipsTemplate' + description: The template the degradation was created from. + type: object + PatchDegradationRequestDataType: + default: degradations + description: Degradations resource type. + enum: + - degradations + example: degradations + type: string + x-enum-varnames: + - DEGRADATIONS + StatusPageAsIncluded: + description: The included status page resource. + properties: + attributes: + $ref: '#/components/schemas/StatusPageAsIncludedAttributes' + id: + description: The ID of the status page. + format: uuid + type: string + relationships: + $ref: '#/components/schemas/StatusPageAsIncludedRelationships' + type: + $ref: '#/components/schemas/StatusPageDataType' + required: + - type + type: object + MaintenanceDataAttributes: + description: The attributes of a maintenance. properties: - data: - $ref: '#/components/schemas/ScheduleData' - included: - description: >- - Any additional resources related to this schedule, such as teams and - layers. + completed_date: + description: Timestamp of when the maintenance was completed. + format: date-time + type: string + completed_description: + description: The description shown when the maintenance is completed. + type: string + components_affected: + description: Components affected by the maintenance. items: - $ref: '#/components/schemas/ScheduleDataIncludedItem' + $ref: '#/components/schemas/MaintenanceDataAttributesComponentsAffectedItems' + type: array + in_progress_description: + description: The description shown while the maintenance is in progress. + type: string + is_backfilled: + description: Whether the maintenance was backfilled. + type: boolean + modified_at: + description: Timestamp of when the maintenance was last modified. + format: date-time + type: string + published_date: + description: Timestamp of when the maintenance was published. + format: date-time + type: string + scheduled_description: + description: The description shown when the maintenance is scheduled. + type: string + start_date: + description: Timestamp of when the maintenance is scheduled to start. + format: date-time + type: string + status: + $ref: '#/components/schemas/MaintenanceDataAttributesStatus' + description: The status of the maintenance. + title: + description: Title of the maintenance. + type: string + updates: + description: Past updates made to the maintenance. + items: + $ref: '#/components/schemas/MaintenanceDataAttributesUpdatesItems' type: array type: object - ScheduleUpdateRequest: - description: >- - A top-level wrapper for a schedule update request, referring to the - `data` object with the new details. - example: - data: - attributes: - layers: - - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - seconds: 3600 - members: - - user: - id: 00000000-aba1-0000-0000-000000000000 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - rotation_start: '2025-02-01T00:00:00Z' - name: On-Call Schedule Updated - time_zone: America/New_York - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules + MaintenanceDataRelationships: + description: The relationships of a maintenance. properties: - data: - $ref: '#/components/schemas/ScheduleUpdateRequestData' - required: - - data + created_by_user: + $ref: '#/components/schemas/MaintenanceDataRelationshipsCreatedByUser' + description: The Datadog user who created the maintenance. + last_modified_by_user: + $ref: '#/components/schemas/MaintenanceDataRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the maintenance. + status_page: + $ref: '#/components/schemas/MaintenanceDataRelationshipsStatusPage' + description: The status page the maintenance belongs to. + template: + $ref: '#/components/schemas/MaintenanceDataRelationshipsTemplate' + description: The template the maintenance was created from. + type: object + PatchMaintenanceRequestDataType: + default: maintenances + description: Maintenances resource type. + enum: + - maintenances + example: maintenances + type: string + x-enum-varnames: + - MAINTENANCES + PatchStatusPageRequestDataAttributes: + description: The supported attributes for updating a status page. + properties: + company_logo: + description: The base64-encoded image data displayed on the status page. + example: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAIKMMMM + type: string + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + example: status-page-us1 + type: string + email_header_image: + description: The base64-encoded image data displayed in email notifications sent to status page subscribers. + example: data:image/png;base64,pQSLAw0KGgoAAAANSUhEUgAAAQ4AASJKFF + type: string + favicon: + description: The base64-encoded image data displayed in the browser tab. + example: data:image/png;base64,kWMRNw0KGgoAAAANSUhEUgAAAEAAAABACA + type: string + name: + description: The name of the status page. + example: Status Page US1 + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + example: true + type: boolean + type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType' + example: public + visualization_type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType' + example: bars_and_uptime_percentage type: object - Shift: - description: An on-call shift with its associated data and relationships. - example: - data: - attributes: - end: '2025-05-07T03:53:01.206662873Z' - start: '2025-05-07T02:53:01.206662814Z' - id: 00000000-0000-0000-0000-000000000000 - relationships: - user: - data: - id: 00000000-aba1-0000-0000-000000000000 - type: users - type: shifts - included: - - attributes: - email: foo@bar.com - name: User 1 - status: '' - id: 00000000-aba1-0000-0000-000000000000 - type: users + StatusPagesComponentDataAttributes: + description: The attributes of a component. properties: - data: - $ref: '#/components/schemas/ShiftData' - nullable: true - included: - description: The `Shift` `included`. + components: + description: If the component is of type `group`, the components within the group. items: - $ref: '#/components/schemas/ShiftIncluded' + $ref: '#/components/schemas/StatusPagesComponentDataAttributesComponentsItems' type: array + created_at: + description: Timestamp of when the component was created. + format: date-time + type: string + modified_at: + description: Timestamp of when the component was last modified. + format: date-time + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' + type: + $ref: '#/components/schemas/CreateComponentRequestDataAttributesType' + required: + - type type: object - TeamOnCallResponders: - description: Root object representing a team's on-call responder configuration. - example: - data: - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - relationships: - escalations: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: escalation_policy_steps - responders: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - type: team_oncall_responders - included: - - attributes: - email: test@test.com - name: Test User - status: active - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - relationships: - responders: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - type: escalation_policy_steps + StatusPagesComponentDataRelationships: + description: The relationships of a component. properties: - data: - $ref: '#/components/schemas/TeamOnCallRespondersData' - included: - description: The `TeamOnCallResponders` `included`. - items: - $ref: '#/components/schemas/TeamOnCallRespondersIncluded' - type: array + created_by_user: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsCreatedByUser' + description: The Datadog user who created the component. + group: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsGroup' + description: The group the component belongs to. + last_modified_by_user: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the component. + status_page: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsStatusPage' + description: The status page the component belongs to. + type: object + StatusPagesComponentGroupType: + default: components + description: Components resource type. + enum: + - components + example: components + type: string + x-enum-varnames: + - COMPONENTS + StatusPagesComponentGroup: + description: The included component group resource. + properties: + attributes: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributes' + id: + description: The ID of the component. + format: uuid + type: string + relationships: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationships' + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' + required: + - type type: object - TeamRoutingRules: - description: >- - Represents a complete set of team routing rules, including data and - optionally included related resources. - example: - data: - id: 27590dae-47be-4a7d-9abf-8f4e45124020 - relationships: - rules: - data: - - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - type: team_routing_rules - - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - type: team_routing_rules - type: team_routing_rules - included: - - attributes: - actions: null - query: tags.service:test - time_restriction: - restrictions: - - end_day: monday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - - end_day: tuesday - end_time: '17:00:00' - start_day: tuesday - start_time: '09:00:00' - time_zone: '' - urgency: high - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - relationships: - policy: - data: null - type: team_routing_rules + CreateComponentRequestDataAttributes: + description: The supported attributes for creating a component. properties: - data: - $ref: '#/components/schemas/TeamRoutingRulesData' - included: - description: Provides related routing rules or other included resources. + components: + description: If creating a component of type `group`, the components to create within the group. + example: + - name: Login + position: 0 + type: component + - name: Settings + position: 1 + type: component items: - $ref: '#/components/schemas/TeamRoutingRulesIncluded' + $ref: '#/components/schemas/CreateComponentRequestDataAttributesComponentsItems' type: array + name: + description: The name of the component. + example: Web App + type: string + position: + description: The zero-indexed position of the component. + example: 0 + format: int64 + type: integer + type: + $ref: '#/components/schemas/CreateComponentRequestDataAttributesType' + description: The type of the component. + example: group + required: + - name + - position + - type type: object - TeamRoutingRulesRequest: - description: >- - Represents a request to create or update team routing rules, including - the data payload. - example: - data: - attributes: - rules: - - actions: null - policy_id: '' - query: tags.service:test - time_restriction: - restrictions: - - end_day: monday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - - end_day: tuesday - end_time: '17:00:00' - start_day: tuesday - start_time: '09:00:00' - time_zone: '' - urgency: high - - actions: - - channel: channel - type: send_slack_message - workspace: workspace - policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 - query: '' - time_restriction: null - urgency: low - id: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: team_routing_rules + CreateComponentRequestDataRelationships: + description: The supported relationships for creating a component. properties: - data: - $ref: '#/components/schemas/TeamRoutingRulesRequestData' + group: + $ref: '#/components/schemas/CreateComponentRequestDataRelationshipsGroup' + description: The group to create the component within. type: object - IncidentServicesResponse: - description: Response with a list of incident service payloads. + PatchComponentRequestDataAttributes: + description: The supported attributes for updating a component. properties: - data: - description: An array of incident services. - example: - - id: 00000000-0000-0000-0000-000000000000 - type: services + name: + description: The name of the component. + example: Web App + type: string + position: + description: The position of the component. If the component belongs to a group, the position is relative to the other components in the group. + example: 1 + format: int64 + type: integer + type: object + DegradationTemplateDataAttributes: + description: The attributes of a degradation template. + properties: + components_affected: + description: The components affected by a degradation created from this template. items: - $ref: '#/components/schemas/IncidentServiceResponseData' + $ref: '#/components/schemas/DegradationTemplateDataAttributesComponentsAffectedItems' type: array - included: - description: Included related resources which the user requested. + created_at: + description: Timestamp of when the degradation template was created. + format: date-time + type: string + degradation_title: + description: The title used for a degradation created from this template. + type: string + modified_at: + description: Timestamp of when the degradation template was last modified. + format: date-time + type: string + name: + description: The name of the degradation template. + type: string + updates: + description: The pre-filled updates for a degradation created from this template. items: - $ref: '#/components/schemas/IncidentServiceIncludedItems' - readOnly: true + $ref: '#/components/schemas/DegradationTemplateDataAttributesUpdatesItems' type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data type: object - IncidentServiceCreateRequest: - description: Create request with an incident service payload. + DegradationTemplateDataRelationships: + description: The relationships of a degradation template. properties: - data: - $ref: '#/components/schemas/IncidentServiceCreateData' - required: - - data - type: object - IncidentServiceResponse: - description: Response with an incident service payload. + created_by_user: + $ref: '#/components/schemas/DegradationTemplateDataRelationshipsCreatedByUser' + description: The Datadog user who created the degradation template. + last_modified_by_user: + $ref: '#/components/schemas/DegradationTemplateDataRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the degradation template. + status_page: + $ref: '#/components/schemas/DegradationTemplateDataRelationshipsStatusPage' + description: The status page the degradation template belongs to. + type: object + PatchDegradationTemplateRequestDataType: + default: degradation_templates + description: Degradation templates resource type. + enum: + - degradation_templates + example: degradation_templates + type: string + x-enum-varnames: + - DEGRADATION_TEMPLATES + CreateDegradationTemplateRequestDataAttributes: + description: The attributes for creating a degradation template. properties: - data: - $ref: '#/components/schemas/IncidentServiceResponseData' - included: - description: Included objects from relationships. + components_affected: + description: The components affected by a degradation created from this template. items: - $ref: '#/components/schemas/IncidentServiceIncludedItems' - readOnly: true + $ref: '#/components/schemas/CreateDegradationTemplateRequestDataAttributesComponentsAffectedItems' + type: array + degradation_title: + description: The title used for a degradation created from this template. + type: string + name: + description: The name of the degradation template. + example: '' + type: string + updates: + description: The pre-filled updates for a degradation created from this template. + items: + $ref: '#/components/schemas/CreateDegradationTemplateRequestDataAttributesUpdatesItems' type: array required: - - data + - name type: object - ServiceDefinitionsListResponse: - description: Create service definitions response. + PatchDegradationTemplateRequestDataAttributes: + description: The supported attributes for updating a degradation template. properties: - data: - description: Data representing service definitions. + components_affected: + description: The components affected by a degradation created from this template. items: - $ref: '#/components/schemas/ServiceDefinitionData' + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItems' type: array - type: object - ServiceDefinitionsCreateRequest: - description: Create service definitions request. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Dot2' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1' - - $ref: '#/components/schemas/ServiceDefinitionV2' - - $ref: '#/components/schemas/ServiceDefinitionRaw' - ServiceDefinitionCreateResponse: - description: Create service definitions response. - properties: - data: - description: Create service definitions response payload. + degradation_title: + description: The title used for a degradation created from this template. + type: string + name: + description: The name of the degradation template. + type: string + updates: + description: The pre-filled updates for a degradation created from this template. items: - $ref: '#/components/schemas/ServiceDefinitionData' + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataAttributesUpdatesItems' type: array type: object - ServiceDefinitionGetResponse: - description: Get service definition response. - properties: - data: - $ref: '#/components/schemas/ServiceDefinitionData' - type: object - IncidentServiceUpdateRequest: - description: Update request with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceUpdateData' - required: - - data - type: object - SloReportCreateRequest: - description: The SLO report request body. + CreateDegradationRequestDataAttributes: + description: The supported attributes for creating a degradation. properties: - data: - $ref: '#/components/schemas/SloReportCreateRequestData' + components_affected: + description: The components affected by the degradation. + example: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: degraded + items: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesComponentsAffectedItems' + type: array + description: + description: The description of the degradation. + example: Our API is experiencing elevated latency. We are investigating the issue. + type: string + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' + description: The status of the degradation. + example: investigating + title: + description: The title of the degradation. + example: Elevated API Latency + type: string required: - - data - type: object - SLOReportPostResponse: - description: The SLO report response. - properties: - data: - $ref: '#/components/schemas/SLOReportPostResponseData' + - components_affected + - status + - title type: object - SLOReportStatusGetResponse: - description: The SLO report status response. + CreateDegradationRequestDataRelationships: + description: The supported relationships for creating a degradation. properties: - data: - $ref: '#/components/schemas/SLOReportStatusGetResponseData' + template: + $ref: '#/components/schemas/CreateDegradationRequestDataRelationshipsTemplate' + description: The template used to create the degradation. type: object - IncidentTeamsResponse: - description: Response with a list of incident team payloads. + CreateBackfilledDegradationRequestDataAttributes: + description: The supported attributes for creating a backfilled degradation. properties: - data: - description: An array of incident teams. - example: - - attributes: - name: team name - id: 00000000-7ea3-0000-0000-000000000000 - type: teams - items: - $ref: '#/components/schemas/IncidentTeamResponseData' - type: array - included: - description: Included related resources which the user requested. + title: + description: The title of the backfilled degradation. + example: '' + type: string + updates: + description: The list of status updates describing the timeline of the degradation. items: - $ref: '#/components/schemas/IncidentTeamIncludedItems' - readOnly: true + $ref: '#/components/schemas/CreateBackfilledDegradationRequestDataAttributesUpdatesItems' type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' required: - - data + - title + - updates type: object - IncidentTeamCreateRequest: - description: Create request with an incident team payload. + CreateBackfilledDegradationRequestDataRelationships: + description: The supported relationships for creating a backfilled degradation. properties: - data: - $ref: '#/components/schemas/IncidentTeamCreateData' - required: - - data + template: + $ref: '#/components/schemas/CreateBackfilledDegradationRequestDataRelationshipsTemplate' + description: The template used to create the backfilled degradation. type: object - IncidentTeamResponse: - description: Response with an incident team payload. + PatchDegradationRequestDataAttributes: + description: The supported attributes for updating a degradation. properties: - data: - $ref: '#/components/schemas/IncidentTeamResponseData' - included: - description: Included objects from relationships. + components_affected: + description: The components affected by the degradation. + example: + - id: 1234abcd-12ab-34cd-56ef-123456abcdef + status: operational items: - $ref: '#/components/schemas/IncidentTeamIncludedItems' - readOnly: true + $ref: '#/components/schemas/PatchDegradationRequestDataAttributesComponentsAffectedItems' type: array - required: - - data + description: + description: The description of the degradation. + example: We've deployed a fix and latency has returned to normal. This issue has been resolved. + type: string + status: + $ref: '#/components/schemas/PatchDegradationRequestDataAttributesStatus' + example: resolved + title: + description: The title of the degradation. + example: Elevated API Latency + type: string type: object - IncidentTeamUpdateRequest: - description: Update request with an incident team payload. + PatchDegradationRequestDataRelationships: + description: The supported relationships for updating a degradation. properties: - data: - $ref: '#/components/schemas/IncidentTeamUpdateData' - required: - - data + template: + $ref: '#/components/schemas/PatchDegradationRequestDataRelationshipsTemplate' + description: The template used to create the degradation. type: object - CaseSortableField: - description: Case field that can be sorted on + PatchDegradationUpdateRequestDataAttributes: + description: Attributes for editing a degradation update. + properties: + description: + description: The message body of the update. + type: string + status: + $ref: '#/components/schemas/PatchDegradationUpdateRequestDataAttributesStatus' + type: object + PatchDegradationUpdateRequestDataType: + default: degradation_updates + description: Degradation updates resource type. enum: - - created_at - - priority - - status - example: created_at + - degradation_updates + example: degradation_updates type: string x-enum-varnames: - - CREATED_AT - - PRIORITY - - STATUS - Case: - description: A case + - DEGRADATION_UPDATES + DegradationUpdateDataAttributes: + description: Attributes of a degradation update resource. properties: - attributes: - $ref: '#/components/schemas/CaseAttributes' - id: - description: Case's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + components_affected: + description: Components affected by this update. + items: + $ref: '#/components/schemas/DegradationUpdateDataAttributesComponentsAffectedItems' + type: array + created_at: + description: The date and time the update was created. + format: date-time type: string - relationships: - $ref: '#/components/schemas/CaseRelationships' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - id - - type - - attributes - type: object - CasesResponseMeta: - description: Cases response metadata - properties: - page: - $ref: '#/components/schemas/CasesResponseMetaPagination' + deleted_at: + description: The date and time the update was soft-deleted. + format: date-time + type: string + description: + description: The message body of the update. + type: string + modified_at: + description: The date and time the update was last modified. + format: date-time + type: string + started_at: + description: The date and time the update started. + format: date-time + type: string + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' type: object - CaseCreate: - description: Case creation data + DegradationUpdateDataRelationships: + description: Relationships of a degradation update resource. properties: - attributes: - $ref: '#/components/schemas/CaseCreateAttributes' - relationships: - $ref: '#/components/schemas/CaseCreateRelationships' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type + created_by_user: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsUser' + degradation: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsDegradation' + deleted_by_user: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsUser' + last_modified_by_user: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsUser' + status_page: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsStatusPage' type: object - Project: - description: A Project + MaintenanceTemplateDataAttributes: + description: The attributes of a maintenance template. properties: - attributes: - $ref: '#/components/schemas/ProjectAttributes' - id: - description: The Project's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 + completed_description: + description: The description shown when a maintenance created from this template is completed. + type: string + component_ids: + description: The IDs of the components affected by a maintenance created from this template. + items: + type: string + type: array + created_at: + description: Timestamp of when the maintenance template was created. + format: date-time + type: string + in_progress_description: + description: The description shown while a maintenance created from this template is in progress. + type: string + maintenance_title: + description: The title used for a maintenance created from this template. + type: string + modified_at: + description: Timestamp of when the maintenance template was last modified. + format: date-time + type: string + name: + description: The name of the maintenance template. + type: string + scheduled_description: + description: The description shown when a maintenance created from this template is scheduled. type: string - relationships: - $ref: '#/components/schemas/ProjectRelationships' - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - id - - type - - attributes type: object - ProjectCreate: - description: Project create + MaintenanceTemplateDataRelationships: + description: The relationships of a maintenance template. properties: - attributes: - $ref: '#/components/schemas/ProjectCreateAttributes' - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - attributes - - type - type: object - CaseEmpty: - description: Case empty request data + created_by_user: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationshipsCreatedByUser' + description: The Datadog user who created the maintenance template. + last_modified_by_user: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the maintenance template. + status_page: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationshipsStatusPage' + description: The status page the maintenance template belongs to. + type: object + PatchMaintenanceTemplateRequestDataType: + default: maintenance_templates + description: Maintenance templates resource type. + enum: + - maintenance_templates + example: maintenance_templates + type: string + x-enum-varnames: + - MAINTENANCE_TEMPLATES + CreateMaintenanceTemplateRequestDataAttributes: + description: The attributes for creating a maintenance template. properties: - type: - $ref: '#/components/schemas/CaseResourceType' + completed_description: + description: The description shown when a maintenance created from this template is completed. + type: string + component_ids: + description: The IDs of the components affected by a maintenance created from this template. + items: + type: string + type: array + in_progress_description: + description: The description shown while a maintenance created from this template is in progress. + type: string + maintenance_title: + description: The title used for a maintenance created from this template. + type: string + name: + description: The name of the maintenance template. + example: '' + type: string + scheduled_description: + description: The description shown when a maintenance created from this template is scheduled. + type: string required: - - type + - name type: object - CaseAssign: - description: Case assign + PatchMaintenanceTemplateRequestDataAttributes: + description: The supported attributes for updating a maintenance template. properties: - attributes: - $ref: '#/components/schemas/CaseAssignAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type + completed_description: + description: The description shown when a maintenance created from this template is completed. + type: string + component_ids: + description: The IDs of the components affected by a maintenance created from this template. + items: + type: string + type: array + in_progress_description: + description: The description shown while a maintenance created from this template is in progress. + type: string + maintenance_title: + description: The title used for a maintenance created from this template. + type: string + name: + description: The name of the maintenance template. + type: string + scheduled_description: + description: The description shown when a maintenance created from this template is scheduled. + type: string type: object - CaseUpdateAttributes: - description: Case update attributes + CreateMaintenanceRequestDataAttributes: + description: The supported attributes for creating a maintenance. properties: - attributes: - $ref: '#/components/schemas/CaseUpdateAttributesAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' + completed_date: + description: Timestamp of when the maintenance was completed. + example: '2026-02-18T19:51:13.332360075Z' + format: date-time + type: string + completed_description: + description: The description shown when the maintenance is completed. + example: We have completed maintenance on the API to improve performance. + type: string + components_affected: + description: The components affected by the maintenance. + items: + $ref: '#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems' + type: array + in_progress_description: + description: The description shown while the maintenance is in progress. + example: We are currently performing maintenance on the API to improve performance. + type: string + scheduled_description: + description: The description shown when the maintenance is scheduled. + example: We will be performing maintenance on the API to improve performance. + type: string + start_date: + description: Timestamp of when the maintenance is scheduled to start. + example: '2026-02-18T19:21:13.332360075Z' + format: date-time + type: string + title: + description: The title of the maintenance. + example: API Maintenance + type: string required: - - attributes - - type + - title + - completed_date + - completed_description + - scheduled_description + - start_date + - in_progress_description type: object - CaseUpdatePriority: - description: Case priority status + CreateMaintenanceRequestDataRelationships: + description: The supported relationships for creating a maintenance. properties: - attributes: - $ref: '#/components/schemas/CaseUpdatePriorityAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type + template: + $ref: '#/components/schemas/CreateMaintenanceRequestDataRelationshipsTemplate' + description: The template used to create the maintenance. type: object - CaseUpdateStatus: - description: Case update status + CreateBackfilledMaintenanceRequestDataAttributes: + description: The supported attributes for creating a backfilled maintenance. properties: - attributes: - $ref: '#/components/schemas/CaseUpdateStatusAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' + title: + description: The title of the backfilled maintenance. + example: '' + type: string + updates: + description: 'The list of updates. Exactly two updates are required: the start (`in_progress`) and the end (`completed`).' + items: + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequestDataAttributesUpdatesItems' + maxItems: 2 + minItems: 2 + type: array required: - - attributes - - type + - title + - updates type: object - DowntimeResponseData: - description: Downtime data. + CreateBackfilledMaintenanceRequestDataRelationships: + description: The supported relationships for creating a backfilled maintenance. properties: - attributes: - $ref: '#/components/schemas/DowntimeResponseAttributes' - id: - description: The downtime ID. - example: 00000000-0000-1234-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/DowntimeRelationships' - type: - $ref: '#/components/schemas/DowntimeResourceType' + template: + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequestDataRelationshipsTemplate' + description: The template used to create the backfilled maintenance. type: object - DowntimeResponseIncludedItem: - description: An object related to a downtime. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/DowntimeMonitorIncludedItem' - DowntimeMeta: - description: Pagination metadata returned by the API. + PatchMaintenanceRequestDataAttributes: + description: The supported attributes for updating a maintenance. properties: - page: - $ref: '#/components/schemas/DowntimeMetaPage' + canceled_description: + description: The description shown when the maintenance is canceled. + type: string + completed_date: + description: Timestamp of when the maintenance was completed. + format: date-time + type: string + completed_description: + description: The description shown when the maintenance is completed. + type: string + components_affected: + description: The components affected by the maintenance. + items: + $ref: '#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItems' + type: array + in_progress_description: + description: The description shown while the maintenance is in progress. + type: string + scheduled_description: + description: The description shown when the maintenance is scheduled. + type: string + start_date: + description: Timestamp of when the maintenance is scheduled to start. + format: date-time + type: string + status: + $ref: '#/components/schemas/MaintenanceDataAttributesStatus' + description: The status of the maintenance. + title: + description: The title of the maintenance. + type: string type: object - DowntimeCreateRequestData: - description: Object to create a downtime. + PatchMaintenanceRequestDataRelationships: + description: The supported relationships for updating a maintenance. properties: - attributes: - $ref: '#/components/schemas/DowntimeCreateRequestAttributes' - type: - $ref: '#/components/schemas/DowntimeResourceType' - required: - - type - - attributes + template: + $ref: '#/components/schemas/PatchMaintenanceRequestDataRelationshipsTemplate' + description: The template used to create the maintenance. type: object - DowntimeUpdateRequestData: - description: Object to update a downtime. + PatchMaintenanceUpdateRequestDataAttributes: + description: Attributes for editing a maintenance update. properties: - attributes: - $ref: '#/components/schemas/DowntimeUpdateRequestAttributes' - id: - description: ID of this downtime. - example: 00000000-0000-1234-0000-000000000000 + description: + description: The message body of the update. + example: '' type: string - type: - $ref: '#/components/schemas/DowntimeResourceType' - required: - - id - - type - - attributes type: object - SearchIssuesIncludeQueryParameterItem: - description: Relationship object that should be included in the search response. + PatchMaintenanceUpdateRequestDataType: + default: maintenance_updates + description: Maintenance updates resource type. enum: - - issue - - issue.assignee - - issue.case - - issue.team_owners - example: issue.case + - maintenance_updates + example: maintenance_updates type: string x-enum-varnames: - - ISSUE - - ISSUE_ASSIGNEE - - ISSUE_CASE - - ISSUE_TEAM_OWNERS - IssuesSearchRequestData: - description: Search issues request. + - MAINTENANCE_UPDATES + MaintenanceUpdateDataAttributes: + description: Attributes of a maintenance update resource. properties: - attributes: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributes' - type: - $ref: '#/components/schemas/IssuesSearchRequestDataType' - required: - - type - - attributes + components_affected: + description: Components affected at the time of the update. + items: + $ref: '#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems' + type: array + created_at: + description: The date and time the update was created. + format: date-time + type: string + description: + description: The message body of the update. + type: string + manual_transition: + description: Whether the update was applied manually by a user (true) or automatically by the system (false). + type: boolean + modified_at: + description: The date and time the update was last modified. + format: date-time + type: string + started_at: + description: The date and time the update started. + format: date-time + type: string + status: + $ref: '#/components/schemas/MaintenanceUpdateDataAttributesStatus' type: object - IssuesSearchResult: - description: Result matching the search query. + MaintenanceUpdateDataRelationships: + description: Relationships of a maintenance update resource. properties: - attributes: - $ref: '#/components/schemas/IssuesSearchResultAttributes' - id: - description: Search result identifier (matches the nested issue's identifier). - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - relationships: - $ref: '#/components/schemas/IssuesSearchResultRelationships' - type: - $ref: '#/components/schemas/IssuesSearchResultType' - required: - - id - - type - - attributes + created_by_user: + $ref: '#/components/schemas/MaintenanceUpdateDataRelationshipsUser' + last_modified_by_user: + $ref: '#/components/schemas/MaintenanceUpdateDataRelationshipsUser' + maintenance: + $ref: '#/components/schemas/MaintenanceUpdateDataRelationshipsMaintenance' type: object - IssuesSearchResultIncluded: - description: >- - An array of related resources, returned when the `include` query - parameter is used. - oneOf: - - $ref: '#/components/schemas/Issue' - - $ref: '#/components/schemas/Case' - - $ref: '#/components/schemas/IssueUser' - - $ref: '#/components/schemas/IssueTeam' - GetIssueIncludeQueryParameterItem: - description: Relationship object that should be included in the response. + NotifyEndState: + description: A notification end state. enum: - - assignee - - case - - team_owners - example: case + - alert + - no data + - warn + example: alert type: string x-enum-varnames: - - ASSIGNEE - - CASE - - TEAM_OWNERS - Issue: - description: The issue matching the request. + - ALERT + - NO_DATA + - WARN + NotifyEndType: + description: A notification end type. + enum: + - canceled + - expired + example: expired + type: string + x-enum-varnames: + - CANCELED + - EXPIRED + SLOListResponseMetadataPage: + description: The object containing information about the pages of the list of SLOs. properties: - attributes: - $ref: '#/components/schemas/IssueAttributes' - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - relationships: - $ref: '#/components/schemas/IssueRelationships' - type: - $ref: '#/components/schemas/IssueType' - required: - - id - - type - - attributes + total_count: + description: The total number of resources that could be retrieved ignoring the parameters and filters in the request. + format: int64 + type: integer + total_filtered_count: + description: The total number of resources that match the parameters and filters in the request. This attribute can be used by a client to determine the total number of pages. + format: int64 + type: integer type: object - IssueIncluded: - description: >- - An array of related resources, returned when the `include` query - parameter is used. - oneOf: - - $ref: '#/components/schemas/IssueCase' - - $ref: '#/components/schemas/IssueUser' - - $ref: '#/components/schemas/IssueTeam' - IssueUpdateAssigneeRequestData: - description: Update issue assignee request. + SLOTimeSliceSpec: + additionalProperties: false + description: A time-slice SLI specification. + example: + time_slice: + comparator: < + query: + formulas: + - formula: query2/query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{*} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.errors{*} by {env}.as_count() + threshold: 5 + properties: + time_slice: + $ref: '#/components/schemas/SLOTimeSliceCondition' + required: + - time_slice + type: object + SLOCountSpec: + additionalProperties: false + description: A metric SLI specification. + example: + count: + bad_events_formula: query2 + good_events_formula: query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count() properties: - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUpdateAssigneeRequestDataType' + count: + $ref: '#/components/schemas/SLOCountDefinition' required: - - id - - type + - count type: object - IssueUpdateStateRequestData: - description: Update issue state request. + SLOErrorTimeframe: + description: |- + The timeframe of the threshold associated with this error + or "all" if all thresholds are affected. + enum: + - 7d + - 30d + - 90d + - all + example: 30d + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + - ALL + SLOCorrectionResponseAttributes: + description: The attribute object associated with the SLO correction. properties: - attributes: - $ref: '#/components/schemas/IssueUpdateStateRequestDataAttributes' - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 + category: + $ref: '#/components/schemas/SLOCorrectionCategory' + created_at: + description: The epoch timestamp of when the correction was created at. + format: int64 + nullable: true + type: integer + creator: + $ref: '#/components/schemas/CreatorV1' + description: + description: Description of the correction being made. + type: string + duration: + description: Length of time (in seconds) for a specified `rrule` recurring SLO correction. + example: 3600 + format: int64 + nullable: true + type: integer + end: + description: Ending time of the correction in epoch seconds. + format: int64 + nullable: true + type: integer + modified_at: + description: The epoch timestamp of when the correction was modified at. + format: int64 + nullable: true + type: integer + modifier: + $ref: '#/components/schemas/SLOCorrectionResponseAttributesModifier' + rrule: + description: |- + The recurrence rules as defined in the iCalendar RFC 5545. The supported rules for SLO corrections + are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`. + example: FREQ=DAILY;INTERVAL=10;COUNT=5 + nullable: true + type: string + slo_id: + description: ID of the single SLO that this correction applies to. + nullable: true + type: string + slo_query: + description: Query that matches the SLOs this correction applies to. + nullable: true + type: string + start: + description: Starting time of the correction in epoch seconds. + format: int64 + type: integer + timezone: + description: The timezone to display in the UI for the correction times (defaults to "UTC"). type: string - type: - $ref: '#/components/schemas/IssueUpdateStateRequestDataType' - required: - - id - - type - - attributes type: object - EventResponse: - description: >- - The object description of an event after being processed and stored by - Datadog. + SLOCorrectionType: + default: correction + description: SLO correction resource type. + enum: + - correction + example: correction + type: string + x-enum-varnames: + - CORRECTION + Pagination: + description: Pagination object. properties: - attributes: - $ref: '#/components/schemas/EventResponseAttributes' - id: - description: the unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/EventType' + total_count: + description: Total count. + format: int64 + type: integer + total_filtered_count: + description: Total count of elements matched by the filter. + format: int64 + type: integer type: object - EventsListResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the + SLOCorrectionCreateRequestAttributes: + description: |- + The attribute object associated with the SLO correction to be created. - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + Exactly one of `slo_id` or `slo_query` must be provided. + properties: + category: + $ref: '#/components/schemas/SLOCorrectionCategory' + description: + description: Description of the correction being made. + type: string + duration: + description: Length of time (in seconds) for a specified `rrule` recurring SLO correction. + example: 1600000000 + format: int64 + type: integer + end: + description: Ending time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + rrule: + description: |- + The recurrence rules as defined in the iCalendar RFC 5545. The supported rules for SLO corrections + are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`. + example: FREQ=DAILY;INTERVAL=10;COUNT=5 + type: string + slo_id: + description: ID of the single SLO that this correction applies to. + example: sloId + type: string + slo_query: + description: |- + Query that matches the SLOs this correction applies to. + The query uses the [Events search syntax](https://docs.datadoghq.com/events/explorer/searching/) + and can filter SLOs by SLO tags. + example: env:prod service:checkout + type: string + start: + description: Starting time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + timezone: + description: The timezone to display in the UI for the correction times (defaults to "UTC"). + example: UTC type: string + required: + - start + - category type: object - EventsResponseMetadata: - description: The metadata associated with a request. + SLOCorrectionUpdateRequestAttributes: + description: The attribute object associated with the SLO correction to be updated. properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 + category: + $ref: '#/components/schemas/SLOCorrectionCategory' + description: + description: Description of the correction being made. + type: string + duration: + description: Length of time (in seconds) for a specified `rrule` recurring SLO correction. + example: 3600 format: int64 type: integer - page: - $ref: '#/components/schemas/EventsResponseMetadataPage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + end: + description: Ending time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + rrule: + description: |- + The recurrence rules as defined in the iCalendar RFC 5545. The supported rules for SLO corrections + are `FREQ`, `INTERVAL`, `COUNT`, `UNTIL` and `BYDAY`. + example: FREQ=DAILY;INTERVAL=10;COUNT=5 type: string - status: - description: The request status. - example: done + slo_query: + description: |- + Query that matches the SLOs this correction applies to. + The query uses the [Events search syntax](https://docs.datadoghq.com/events/explorer/searching/) + and can filter SLOs by SLO tags. + example: env:prod service:checkout + type: string + start: + description: Starting time of the correction in epoch seconds. + example: 1600000000 + format: int64 + type: integer + timezone: + description: The timezone to display in the UI for the correction times (defaults to "UTC"). + example: UTC type: string - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - might be returned if - - warnings are present in the response. - items: - $ref: '#/components/schemas/EventsWarning' - type: array type: object - EventCreateRequest: - description: An event object. + SearchSLOResponseDataAttributes: + description: Attributes properties: - attributes: - $ref: '#/components/schemas/EventPayload' - type: - $ref: '#/components/schemas/EventCreateRequestType' - required: - - type - - attributes + facets: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacets' + slos: + description: SLOs + items: + $ref: '#/components/schemas/SearchServiceLevelObjective' + type: array type: object - EventCreateResponse: - description: Event object. + SearchSLOResponseMetaPage: + description: Pagination metadata returned by the API. properties: - attributes: - $ref: '#/components/schemas/EventCreateResponseAttributes' + first_number: + description: The first number. + format: int64 + type: integer + last_number: + description: The last number. + format: int64 + type: integer + next_number: + description: The next number. + format: int64 + type: integer + number: + description: The page number. + format: int64 + type: integer + prev_number: + description: The previous page number. + format: int64 + type: integer + size: + description: The size of the response. + format: int64 + type: integer + total: + description: The total number of SLOs in the response. + format: int64 + type: integer type: - description: Entity type. - example: event - type: string - type: object - EventCreateResponsePayloadLinks: - description: Links to the event. - properties: - self: - description: >- - The URL of the event. This link is only functional when using the - default subdomain. + description: Type of pagination. type: string type: object - JSONAPIErrorItem: - description: API error response body + SLOHistoryMonitor: + description: |- + An object that holds an SLI value and its associated data. It can represent an SLO's overall SLI value. + This can also represent the SLI value for a specific monitor in multi-monitor SLOs, or a group in grouped SLOs. properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body + error_budget_remaining: + $ref: '#/components/schemas/SLOErrorBudgetRemainingData' + errors: + description: An array of error objects returned while querying the history data for the service level objective. + items: + $ref: '#/components/schemas/SLOHistoryResponseErrorWithType' + type: array + group: + description: For groups in a grouped SLO, this is the group name. + example: name type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' + history: + description: |- + The state transition history for the monitor. It is represented as + an array of pairs. Each pair is an array containing the timestamp of the transition + as an integer in Unix epoch format in the first element, and the state as an integer in the + second element. An integer value of `0` for state means uptime, `1` means downtime, and `2` means no data. + Periods of no data are counted either as uptime or downtime depending on monitor settings. + See [SLO documentation](https://docs.datadoghq.com/service_management/service_level_objectives/monitor/#missing-data) + for detailed information. + example: + - - 1579212382 + - 0 + items: + description: Represents an array timeseries data. + example: + - 1579212382 + - 0 + items: + description: A timeseries data point which is a tuple of (timestamp, value). + format: double + type: number + maxItems: 2 + minItems: 2 + type: array + type: array + monitor_modified: + description: For `monitor` based SLOs, this is the last modified timestamp in epoch seconds of the monitor. + example: 1615867200 + format: int64 + type: integer + monitor_type: + description: For `monitor` based SLOs, this describes the type of monitor. + example: string type: string - title: - description: Short human-readable summary of the error. - example: Bad Request + name: + description: For groups in a grouped SLO, this is the group name. For monitors in a multi-monitor SLO, this is the monitor name. + example: string type: string + precision: + deprecated: true + description: The amount of decimal places the SLI value is accurate to for the given from `&&` to timestamp. Use `span_precision` instead. + example: 2 + format: double + type: number + preview: + description: |- + For `monitor` based SLOs, when `true` this indicates that a replay is in progress to give an accurate uptime + calculation. + example: true + type: boolean + sli_value: + description: The current SLI value of the SLO over the history window. + example: 99.99 + format: double + nullable: true + type: number + span_precision: + description: The amount of decimal places the SLI value is accurate to for the given from `&&` to timestamp. + example: 2 + format: double + type: number + uptime: + deprecated: true + description: Use `sli_value` instead. + example: 99.99 + format: double + type: number type: object - EventsQueryFilter: - description: The search and filter query settings. + SLOHistorySLIData: + description: |- + An object that holds an SLI value and its associated data. It can represent an SLO's overall SLI value. + This can also represent the SLI value for a specific monitor in multi-monitor SLOs, or a group in grouped SLOs. properties: - from: - default: now-15m - description: >- - The minimum time for the requested events. Supports date math and - regular timestamps in milliseconds. - example: now-15m + error_budget_remaining: + $ref: '#/components/schemas/SLOErrorBudgetRemainingData' + errors: + description: An array of error objects returned while querying the history data for the service level objective. + items: + $ref: '#/components/schemas/SLOHistoryResponseErrorWithType' + type: array + group: + description: For groups in a grouped SLO, this is the group name. + example: name type: string - query: - default: '*' - description: The search query following the event search syntax. - example: service:web* AND @http.status_code:[200 TO 299] + history: + description: |- + The state transition history for `monitor` or `time-slice` SLOs. It is represented as + an array of pairs. Each pair is an array containing the timestamp of the transition + as an integer in Unix epoch format in the first element, and the state as an integer in the + second element. An integer value of `0` for state means uptime, `1` means downtime, and `2` means no data. + Periods of no data count as uptime in time-slice SLOs, while for monitor SLOs, no data is counted + either as uptime or downtime depending on monitor settings. See + [SLO documentation](https://docs.datadoghq.com/service_management/service_level_objectives/monitor/#missing-data) + for detailed information. + example: + - - 1579212382 + - 0 + items: + description: Represents an array timeseries data. + example: + - 1579212382 + - 0 + items: + description: A timeseries data point which is a tuple of (timestamp, value). + format: double + type: number + maxItems: 2 + minItems: 2 + type: array + type: array + monitor_modified: + description: For `monitor` based SLOs, this is the last modified timestamp in epoch seconds of the monitor. + example: 1615867200 + format: int64 + type: integer + monitor_type: + description: For `monitor` based SLOs, this describes the type of monitor. + example: string type: string - to: - default: now - description: >- - The maximum time for the requested events. Supports date math and - regular timestamps in milliseconds. - example: now + name: + description: For groups in a grouped SLO, this is the group name. For monitors in a multi-monitor SLO, this is the monitor name. + example: string type: string + precision: + additionalProperties: + description: The number of accurate decimals. + format: double + type: number + description: A mapping of threshold `timeframe` to number of accurate decimals, regardless of the from && to timestamp. + example: + 30d: 1 + 7d: 2 + type: object + preview: + description: |- + For `monitor` based SLOs, when `true` this indicates that a replay is in progress to give an accurate uptime + calculation. + example: true + type: boolean + sli_value: + description: The current SLI value of the SLO over the history window. + example: 99.99 + format: double + nullable: true + type: number + span_precision: + description: The amount of decimal places the SLI value is accurate to for the given from `&&` to timestamp. + example: 2 + format: double + type: number + uptime: + deprecated: true + description: Use `sli_value` instead. + example: 99.99 + format: double + nullable: true + type: number type: object - EventsQueryOptions: - description: >- - The global query options that are used. Either provide a timezone or a - time offset but not both, + SLOHistoryMetrics: + description: |- + A `metric` based SLO history response. - otherwise the query fails. + This is not included in responses for `monitor` based SLOs. properties: - timeOffset: - description: The time offset to apply to the query in seconds. + denominator: + $ref: '#/components/schemas/SLOHistoryMetricsSeries' + interval: + description: The aggregated query interval for the series data. It's implicit based on the query time window. + example: 0 format: int64 type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - EventsRequestPage: - description: Pagination settings. - properties: - cursor: - description: The returned paging point to use to get the next results. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + message: + description: Optional message if there are specific query issues/warnings. + example: '' type: string - limit: - default: 10 - description: The maximum number of logs in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - V2Event: - description: An event object. - properties: - attributes: - $ref: '#/components/schemas/V2EventAttributes' - id: - description: The event's ID. + numerator: + $ref: '#/components/schemas/SLOHistoryMetricsSeries' + query: + description: The combined numerator and denominator query CSV. example: '' type: string - type: - description: Entity type. - example: event + res_type: + description: The series result type. This mimics `batch_query` response type. + example: '' type: string + resp_version: + description: The series response version type. This mimics `batch_query` response type. + example: 0 + format: int64 + type: integer + times: + description: An array of query timestamps in EPOCH milliseconds. + example: [] + items: + description: A timestamp in EPOCH milliseconds. + format: double + type: number + type: array + required: + - res_type + - interval + - resp_version + - query + - times + - numerator + - denominator type: object - IncidentRelatedObject: - description: Object related to an incident. + SLOTypeNumeric: + description: |- + A numeric representation of the type of the service level objective (`0` for + monitor, `1` for metric). Always included in service level objective responses. + Ignored in create/update requests. enum: - - users - - attachments - type: string + - 0 + - 1 + - 2 + example: 0 + format: int32 + type: integer x-enum-varnames: - - USERS - - ATTACHMENTS - IncidentResponseData: - description: Incident data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentResponseAttributes' - id: - description: The incident's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentResponseRelationships' + - MONITOR + - METRIC + - TIME_SLICE + TriggerAttributes: + description: The trigger definition for starting an investigation. + properties: + monitor_alert_trigger: + $ref: '#/components/schemas/MonitorAlertTriggerAttributes' type: - $ref: '#/components/schemas/IncidentType' + $ref: '#/components/schemas/TriggerType' required: - - id - type + - monitor_alert_trigger type: object - IncidentResponseIncludedItem: - description: An object related to an incident that is included in the response. - oneOf: - - $ref: '#/components/schemas/IncidentUserData' - - $ref: '#/components/schemas/IncidentAttachmentData' - IncidentResponseMeta: - description: The metadata object containing pagination metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentResponseMetaPagination' - readOnly: true - type: object - IncidentCreateData: - description: Incident data for a create request. + InvestigationConclusion: + description: A full explanation of the finding, including root cause analysis and supporting evidence. properties: - attributes: - $ref: '#/components/schemas/IncidentCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentCreateRelationships' - type: - $ref: '#/components/schemas/IncidentType' + description: + description: A full explanation of the finding, including root cause analysis and supporting evidence. + example: The investigation found that a memory leak in payments-service caused CPU usage to spike above 95% starting at 14:32 UTC. + type: string + summary: + description: A summary of the finding, including affected components and timeframe. + example: CPU usage exceeded 95% for over 10 minutes on web-server-01. + type: string + title: + description: The title of the conclusion. + example: High CPU usage detected on web-server-01 + type: string required: - - type - - attributes + - title + - summary + - description type: object - IncidentNotificationRuleResponseData: - description: Notification rule data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleAttributes' - id: - description: The unique identifier of the notification rule. - example: 00000000-0000-0000-0000-000000000001 - format: uuid + CaseObjectAttributes: + additionalProperties: + items: + description: An attribute value. type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - id - - type + type: array + description: Key-value pairs of case attributes. Each key maps to an array of string values, used for flexible metadata such as labels or tags. type: object - IncidentNotificationRuleIncludedItems: - description: Objects related to a notification rule. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/IncidentTypeObject' - - $ref: '#/components/schemas/IncidentNotificationTemplateObject' - IncidentNotificationRuleArrayMeta: - description: Response metadata. + JiraIssue: + description: Jira issue attached to case + nullable: true properties: - pagination: - $ref: '#/components/schemas/IncidentNotificationRuleArrayMetaPage' + result: + $ref: '#/components/schemas/JiraIssueResult' + status: + $ref: '#/components/schemas/Case3rdPartyTicketStatus' + readOnly: true type: object - IncidentNotificationRuleCreateData: - description: Notification rule data for a create request. + CasePriority: + default: NOT_DEFINED + description: Case priority + enum: + - NOT_DEFINED + - P1 + - P2 + - P3 + - P4 + - P5 + example: NOT_DEFINED + type: string + x-enum-varnames: + - NOT_DEFINED + - P1 + - P2 + - P3 + - P4 + - P5 + ServiceNowTicket: + description: ServiceNow ticket attached to case + nullable: true properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' + result: + $ref: '#/components/schemas/ServiceNowTicketResult' + status: + $ref: '#/components/schemas/Case3rdPartyTicketStatus' + readOnly: true + type: object + CaseStatus: + deprecated: true + description: Deprecated way of representing the case status, which only supports OPEN, IN_PROGRESS, and CLOSED statuses. Use `status_name` instead. + enum: + - OPEN + - IN_PROGRESS + - CLOSED + example: OPEN + type: string + x-enum-varnames: + - OPEN + - IN_PROGRESS + - CLOSED + CaseStatusGroup: + description: Status group of the case. + enum: + - SG_OPEN + - SG_IN_PROGRESS + - SG_CLOSED + example: SG_OPEN + type: string + x-enum-varnames: + - SG_OPEN + - SG_IN_PROGRESS + - SG_CLOSED + CaseStatusName: + description: Status of the case. Must be one of the existing statuses for the case's type. + example: Open + type: string + CaseType: + deprecated: true + description: Case type + enum: + - STANDARD + example: STANDARD + type: string + x-enum-varnames: + - STANDARD + NullableUserRelationship: + description: Relationship to user. + nullable: true + properties: + data: + $ref: '#/components/schemas/NullableUserRelationshipData' required: - - type - - attributes + - data type: object - IncidentNotificationRuleUpdateData: - description: Notification rule data for an update request. + CaseAggregateGroupBy: + description: Configuration for grouping aggregated results by one or more case fields. properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' - id: - description: The unique identifier of the notification rule. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' + groups: + description: Fields to group by. + example: + - status + items: + type: string + type: array + limit: + description: Maximum number of groups to return. + example: 14 + format: int32 + maximum: 1000 + type: integer required: - - id - - type - - attributes + - groups + - limit type: object - IncidentNotificationTemplateResponseData: - description: Notification template data from a response. + CaseAggregateGroup: + description: A single group within the aggregation results, containing the group key and its associated count values. properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid + group: + description: The value of the field being grouped on (for example, `OPEN` when grouping by status). + example: OPEN type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' + value: + description: The count of cases in this group. + example: + - 42 + items: + format: double + type: number + type: array required: - - id - - type + - group + - value type: object - IncidentNotificationTemplateIncludedItems: - description: Objects related to a notification template. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/IncidentTypeObject' - IncidentNotificationTemplateArrayMeta: - description: Response metadata. + CaseBulkActionType: + description: The type of action to apply in a bulk update. Allowed values are `priority`, `status`, `assign`, `unassign`, `archive`, `unarchive`, `jira`, `servicenow`, `linear`, `update_project`. + enum: + - priority + - status + - assign + - unassign + - archive + - unarchive + - jira + - servicenow + - linear + - update_project + example: priority + type: string + x-enum-varnames: + - PRIORITY + - STATUS + - ASSIGN + - UNASSIGN + - ARCHIVE + - UNARCHIVE + - JIRA + - SERVICENOW + - LINEAR + - UPDATE_PROJECT + CaseCountGroup: + description: A facet group containing counts broken down by the distinct values of a case field (for example, status or priority). + properties: + group: + description: The name of the field being grouped on (for example, `status` or `priority`). + example: status + type: string + group_values: + description: Values within this group. + items: + $ref: '#/components/schemas/CaseCountGroupValue' + type: array + required: + - group + - group_values + type: object + ProjectColumnsConfig: + description: Project columns configuration. properties: - page: - $ref: '#/components/schemas/IncidentNotificationTemplateArrayMetaPage' + columns: + description: List of column configurations for the project board view. + items: + $ref: '#/components/schemas/ProjectColumnsConfigColumnsItems' + type: array type: object - IncidentNotificationTemplateCreateData: - description: Notification template data for a create request. + ProjectSettings: + description: Project settings. + properties: + auto_close_inactive_cases: + $ref: '#/components/schemas/AutoCloseInactiveCases' + auto_transition_assigned_cases: + $ref: '#/components/schemas/AutoTransitionAssignedCases' + integration_incident: + $ref: '#/components/schemas/IntegrationIncident' + integration_jira: + $ref: '#/components/schemas/IntegrationJira' + integration_monitor: + $ref: '#/components/schemas/IntegrationMonitor' + integration_on_call: + $ref: '#/components/schemas/IntegrationOnCall' + integration_service_now: + $ref: '#/components/schemas/IntegrationServiceNow' + notification: + $ref: '#/components/schemas/ProjectNotificationSettings' + type: object + RelationshipToTeamLinks: + description: Relationship between a team and a team link properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateAttributes' - relationships: - $ref: >- - #/components/schemas/IncidentNotificationTemplateCreateDataRelationships - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - type - - attributes + data: + description: Related team links + items: + $ref: '#/components/schemas/RelationshipToTeamLinkData' + type: array + links: + $ref: '#/components/schemas/TeamRelationshipsLinks' type: object - IncidentNotificationTemplateUpdateData: - description: Notification template data for an update request. + UsersRelationship: + description: Relationship to users. properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateUpdateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' + data: + description: Relationships to user objects. + example: [] + items: + $ref: '#/components/schemas/UserRelationshipData' + type: array required: - - id - - type + - data type: object - IncidentTypeObject: - description: Incident type response data. + CaseNotificationRuleRecipient: + description: Notification rule recipient properties: - attributes: - $ref: '#/components/schemas/IncidentTypeAttributes' - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 + data: + $ref: '#/components/schemas/CaseNotificationRuleRecipientData' + type: + description: Type of recipient (SLACK_CHANNEL, EMAIL, HTTP, PAGERDUTY_SERVICE, MS_TEAMS_CHANNEL) + example: EMAIL type: string - relationships: - $ref: '#/components/schemas/IncidentTypeRelationships' + type: object + CaseNotificationRuleTrigger: + description: Notification rule trigger + properties: + data: + $ref: '#/components/schemas/CaseNotificationRuleTriggerData' type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type + description: Type of trigger (CASE_CREATED, STATUS_TRANSITIONED, ATTRIBUTE_VALUE_CHANGED, EVENT_CORRELATION_SIGNAL_CORRELATED) + example: CASE_CREATED + type: string type: object - IncidentTypeCreateData: - description: Incident type data for a create request. + AutomationRuleAction: + description: Defines what happens when the rule triggers. Combines an action type with action-specific configuration data. properties: - attributes: - $ref: '#/components/schemas/IncidentTypeAttributes' + data: + $ref: '#/components/schemas/AutomationRuleActionData' type: - $ref: '#/components/schemas/IncidentTypeType' + $ref: '#/components/schemas/AutomationRuleActionType' required: - type - - attributes + - data type: object - IncidentTypePatchData: - description: Incident type data for a patch request. + CaseAutomationRuleState: + description: Whether the automation rule is active. Enabled rules trigger on matching case events; disabled rules are inactive but preserve their configuration. + enum: + - ENABLED + - DISABLED + example: ENABLED + type: string + x-enum-varnames: + - ENABLED + - DISABLED + AutomationRuleTrigger: + description: Defines when the rule activates. Combines a trigger type (the case event to listen for) with optional trigger data (conditions that narrow when the trigger fires). properties: - attributes: - $ref: '#/components/schemas/IncidentTypeUpdateAttributes' - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string + data: + $ref: '#/components/schemas/AutomationRuleTriggerData' type: - $ref: '#/components/schemas/IncidentTypeType' + $ref: '#/components/schemas/AutomationRuleTriggerType' required: - - id - type - - attributes type: object - IncidentSearchSortOrder: - description: The ways searched incidents can be sorted. + CustomAttributeType: + description: The data type of the custom attribute, which determines the allowed values and UI input control. enum: - - created - - '-created' + - URL + - TEXT + - NUMBER + - SELECT + example: NUMBER type: string x-enum-varnames: - - CREATED_ASCENDING - - CREATED_DESCENDING - IncidentSearchResponseData: - description: Data returned by an incident search. + - URL + - TEXT + - NUMBER + - SELECT + CustomAttributeTypeData: + description: Type-specific configuration for the custom attribute. For SELECT-type attributes, this contains the list of allowed options. properties: - attributes: - $ref: '#/components/schemas/IncidentSearchResponseAttributes' + options: + description: Options for SELECT type custom attributes. + items: + $ref: '#/components/schemas/CustomAttributeSelectOption' + type: array + type: object + TimelineCellAuthor: + description: The author of the timeline cell. Currently only user authors are supported. + properties: + content: + $ref: '#/components/schemas/TimelineCellAuthorUserContent' type: - $ref: '#/components/schemas/IncidentSearchResultsType' + $ref: '#/components/schemas/TimelineCellAuthorUserType' type: object - IncidentSearchResponseMeta: - description: The metadata object containing pagination metadata. + TimelineCellContent: + description: The content payload of a timeline cell, varying by cell type. properties: - pagination: - $ref: '#/components/schemas/IncidentResponseMetaPagination' - readOnly: true + message: + description: The text content of the comment. Supports Markdown formatting. + type: string type: object - IncidentUpdateData: - description: Incident data for an update request. + TimelineCellType: + description: The type of content in the timeline cell. Currently only `COMMENT` is supported in this endpoint. + enum: + - COMMENT + example: COMMENT + type: string + x-enum-varnames: + - COMMENT + CustomAttributeValuesUnion: + description: The value of a custom attribute. The accepted format depends on the attribute's type and whether it accepts multiple values. + example: '' + type: string + items: + description: TEXT/URL/NUMBER/SELECT Value + type: string + format: double + format: double + CaseInsight: + description: A reference to an external Datadog resource that provides investigative context for a case, such as a security signal, monitor alert, error tracking issue, or incident. properties: - attributes: - $ref: '#/components/schemas/IncidentUpdateAttributes' - id: - description: The incident's ID. - example: 00000000-0000-0000-4567-000000000000 + ref: + description: The URL path or deep link to the insight resource within Datadog (for example, `/monitors/12345?q=total`). + example: /monitors/12345?q=total + type: string + resource_id: + description: The unique identifier of the referenced Datadog resource (for example, a monitor ID, incident ID, or signal ID). + example: '12345' type: string - relationships: - $ref: '#/components/schemas/IncidentUpdateRelationships' type: - $ref: '#/components/schemas/IncidentType' + $ref: '#/components/schemas/CaseInsightType' required: - - id - type + - ref + - resource_id + type: object + CaseWatcherUserRelationship: + description: The user relationship for a case watcher. + properties: + data: + $ref: '#/components/schemas/UserRelationshipData' + required: + - data type: object - IncidentAttachmentRelatedObject: - description: The object related to an incident attachment. + ChangeRequestRiskLevel: + description: The risk level of the change request. enum: - - users + - UNDEFINED + - LOW + - MEDIUM + - HIGH + example: LOW type: string x-enum-varnames: - - USERS - IncidentAttachmentAttachmentType: - description: The type of the incident attachment attributes. + - UNDEFINED + - LOW + - MEDIUM + - HIGH + ChangeRequestChangeType: + description: The type of the change request. enum: - - link - - postmortem - example: link + - NORMAL + - STANDARD + - EMERGENCY + example: NORMAL type: string x-enum-varnames: - - LINK - - POSTMORTEM - IncidentAttachmentData: - description: A single incident attachment. - example: - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments + - NORMAL + - STANDARD + - EMERGENCY + ChangeRequestObjectAttributes: + additionalProperties: + items: + description: An attribute value. + type: string + type: array + description: Custom attributes of the change request as key-value pairs. + type: object + ChangeRequestDecisionsRelationship: + description: Relationship to change request decisions. + properties: + data: + description: Array of decision relationship data. + items: + $ref: '#/components/schemas/ChangeRequestDecisionRelationshipData' + type: array + required: + - data + type: object + ChangeRequestUserRelationship: + description: Relationship to a user. + properties: + data: + $ref: '#/components/schemas/ChangeRequestUserRelationshipData' + required: + - data + type: object + ChangeRequestIncludedUser: + description: An included user resource. properties: attributes: - $ref: '#/components/schemas/IncidentAttachmentAttributes' + $ref: '#/components/schemas/ChangeRequestIncludedUserAttributes' id: - description: A unique identifier that represents the incident attachment. - example: 00000000-abcd-0001-0000-000000000000 + description: The user UUID. + example: 00000000-0000-0000-0000-000000000000 type: string - relationships: - $ref: '#/components/schemas/IncidentAttachmentRelationships' type: - $ref: '#/components/schemas/IncidentAttachmentType' + description: The resource type. + example: user + type: string required: - type - - attributes - id - - relationships + - attributes type: object - IncidentAttachmentsResponseIncludedItem: - description: An object related to an attachment that is included in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentAttachmentUpdateData: - description: A single incident attachment. + ChangeRequestIncludedDecision: + description: An included change request decision resource. properties: attributes: - $ref: '#/components/schemas/IncidentAttachmentUpdateAttributes' + $ref: '#/components/schemas/ChangeRequestDecisionResponseAttributes' id: - description: A unique identifier that represents the incident attachment. - example: 00000000-abcd-0001-0000-000000000000 + description: The decision UUID. + example: decision-id-0 type: string + relationships: + $ref: '#/components/schemas/ChangeRequestDecisionRelationships' type: - $ref: '#/components/schemas/IncidentAttachmentType' + $ref: '#/components/schemas/ChangeRequestDecisionResourceType' required: - type + - id + - attributes type: object - IncidentIntegrationMetadataResponseData: - description: Incident integration metadata from a response. + ChangeRequestDecisionCreateAttributes: + description: Attributes for creating a change request decision. properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - id: - description: The incident integration metadata's ID. - example: 00000000-0000-0000-1234-000000000000 + change_request_status: + $ref: '#/components/schemas/ChangeRequestDecisionStatusType' + request_reason: + description: The reason for requesting the decision. + example: Please review and approve this change type: string - relationships: - $ref: '#/components/schemas/IncidentIntegrationRelationships' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' + type: object + ChangeRequestDecisionCreateRelationships: + description: Relationships for creating a change request decision. + properties: + requested_user: + $ref: '#/components/schemas/ChangeRequestUserRelationship' + type: object + ChangeRequestDecisionResourceType: + description: Change request decision resource type. + enum: + - change_request_decision + example: change_request_decision + type: string + x-enum-varnames: + - CHANGE_REQUEST_DECISION + DowntimeDisplayTimezone: + default: UTC + description: |- + The timezone in which to display the downtime's start and end times in Datadog applications. This is not used + as an offset for scheduling. + example: America/New_York + nullable: true + type: string + DowntimeMessage: + description: |- + A message to include with notifications for this downtime. Email notifications can be sent to specific users + by using the same `@username` notation as events. + example: Message about the downtime + nullable: true + type: string + DowntimeMonitorIdentifier: + description: Monitor identifier for the downtime. + additionalProperties: {} + properties: + monitor_id: + description: ID of the monitor to prevent notifications. + example: 123 + format: int64 + type: integer + monitor_tags: + description: |- + A list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match **all** provided monitor tags. Setting `monitor_tags` + to `[*]` configures the downtime to mute all monitors for the given scope. + example: + - service:postgres + - team:frontend + items: + description: A list of monitor tags. + example: service:postgres + type: string + minItems: 1 + type: array required: - - id - - type + - monitor_id + - monitor_tags type: object - IncidentIntegrationMetadataResponseIncludedItem: - description: >- - An object related to an incident integration metadata that is included - in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentIntegrationMetadataCreateData: - description: Incident integration metadata data for a create request. + DowntimeMuteFirstRecoveryNotification: + description: If the first recovery notification during a downtime should be muted. + example: false + type: boolean + DowntimeNotifyEndStates: + description: States that will trigger a monitor notification when the `notify_end_types` action occurs. + example: + - alert + - warn + items: + $ref: '#/components/schemas/DowntimeNotifyEndStateTypes' + type: array + DowntimeNotifyEndTypes: + description: Actions that will trigger a monitor notification if the downtime is in the `notify_end_types` state. + example: + - canceled + - expired + items: + $ref: '#/components/schemas/DowntimeNotifyEndStateActions' + type: array + DowntimeScheduleResponse: + description: |- + The schedule that defines when the monitor starts, stops, and recurs. There are two types of schedules: + one-time and recurring. Recurring schedules may have up to five RRULE-based recurrences. If no schedules are + provided, the downtime will begin immediately and never end. properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' + current_downtime: + $ref: '#/components/schemas/DowntimeScheduleCurrentDowntimeResponse' + recurrences: + description: A list of downtime recurrences. + items: + $ref: '#/components/schemas/DowntimeScheduleRecurrenceResponse' + maxItems: 5 + minItems: 1 + type: array + timezone: + default: UTC + description: |- + The timezone in which to schedule the downtime. This affects recurring start and end dates. + Must match `display_timezone`. + example: America/New_York + type: string + end: + description: ISO-8601 Datetime to end the downtime. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true + type: string + start: + description: ISO-8601 Datetime to start the downtime. + example: '2020-01-02T03:04:00.000Z' + format: date-time + type: string required: - - type - - attributes + - recurrences + - start type: object - IncidentIntegrationMetadataPatchData: - description: Incident integration metadata data for a patch request. + DowntimeScope: + description: The scope to which the downtime applies. Must follow the [common search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). + example: env:(staging OR prod) AND datacenter:us-east-1 + type: string + DowntimeStatus: + description: The current status of the downtime. + enum: + - active + - canceled + - ended + - scheduled + example: active + type: string + x-enum-varnames: + - ACTIVE + - CANCELED + - ENDED + - SCHEDULED + DowntimeRelationshipsCreatedBy: + description: The user who created the downtime. properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - type - - attributes + data: + $ref: '#/components/schemas/DowntimeRelationshipsCreatedByData' type: object - IncidentTodoResponseData: - description: Incident todo response data. + DowntimeRelationshipsMonitor: + description: The monitor identified by the downtime. properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - id: - description: The incident todo's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTodoRelationships' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - id - - type + data: + $ref: '#/components/schemas/DowntimeRelationshipsMonitorData' type: object - IncidentTodoResponseIncludedItem: - description: An object related to an incident todo that is included in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentTodoCreateData: - description: Incident todo data for a create request. + UserAttributes: + description: Attributes of user object returned by the API. properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - type - - attributes + created_at: + description: The ISO 8601 timestamp of when the user account was created. + format: date-time + type: string + disabled: + description: Whether the user account is deactivated. Disabled users cannot log in. + type: boolean + email: + description: The email address of the user, used for login and notifications. + type: string + handle: + description: The unique handle (username) of the user, typically matching their email prefix. + type: string + icon: + description: URL of the user's profile icon, typically a Gravatar URL derived from the email address. + type: string + last_login_time: + description: The ISO 8601 timestamp of the user's most recent login, or null if the user has never logged in. + format: date-time + nullable: true + readOnly: true + type: string + mfa_enabled: + description: Whether multi-factor authentication (MFA) is enabled for the user's account. + readOnly: true + type: boolean + modified_at: + description: The ISO 8601 timestamp of when the user account was last modified. + format: date-time + type: string + name: + description: The full display name of the user as shown in the Datadog UI. + nullable: true + type: string + service_account: + description: |- + Whether this is a service account rather than a human user. + Service accounts are used for programmatic API access. + type: boolean + status: + description: The current status of the user account (for example, `Active`, `Pending`, or `Disabled`). + type: string + title: + description: The job title of the user (for example, "Senior Engineer" or "Product Manager"). + nullable: true + type: string + uuid: + description: The globally unique identifier (UUID) of the user. + readOnly: true + type: string + verified: + description: Whether the user's email address has been verified. + type: boolean type: object - IncidentTodoPatchData: - description: Incident todo data for a patch request. + UserResponseRelationships: + description: Relationships of the user object returned by the API. properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - type - - attributes + org: + $ref: '#/components/schemas/RelationshipToOrganization' + other_orgs: + $ref: '#/components/schemas/RelationshipToOrganizations' + other_users: + $ref: '#/components/schemas/RelationshipToUsers' + roles: + $ref: '#/components/schemas/RelationshipToRoles' type: object - EscalationPolicyCreateRequestData: - description: >- - Represents the data for creating an escalation policy, including its - attributes, relationships, and resource type. + DowntimeMonitorIncludedAttributes: + description: Attributes of the monitor identified by the downtime. properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataAttributes' - relationships: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataType' - required: - - type - - attributes + name: + description: The name of the monitor identified by the downtime. + example: A monitor name + type: string type: object - EscalationPolicyData: - description: >- - Represents the data for a single escalation policy, including its - attributes, ID, relationships, and resource type. + DowntimeIncludedMonitorType: + default: monitors + description: Monitor resource type. + enum: + - monitors + example: monitors + type: string + x-enum-varnames: + - MONITORS + DowntimeScheduleCreateRequest: + description: Schedule for the downtime. properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyDataAttributes' - id: - description: Specifies the unique identifier of the escalation policy. - example: ab000000-0000-0000-0000-000000000000 + recurrences: + description: A list of downtime recurrences. + items: + $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' + type: array + timezone: + default: UTC + description: The timezone in which to schedule the downtime. + example: America/New_York + type: string + end: + description: |- + ISO-8601 Datetime to end the downtime. Must include a UTC offset of zero. If not provided, the + downtime continues forever. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true + type: string + start: + description: |- + ISO-8601 Datetime to start the downtime. Must include a UTC offset of zero. If not provided, the + downtime starts the moment it is created. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyDataType' required: - - type + - recurrences type: object - EscalationPolicyIncluded: - description: >- - Represents included related resources when retrieving an escalation - policy, such as teams, steps, or targets. - oneOf: - - $ref: '#/components/schemas/TeamReference' - - $ref: '#/components/schemas/EscalationPolicyStep' - - $ref: '#/components/schemas/EscalationPolicyUser' - - $ref: '#/components/schemas/ScheduleData' - EscalationPolicyUpdateRequestData: - description: >- - Represents the data for updating an existing escalation policy, - including its ID, attributes, relationships, and resource type. + additionalProperties: false + DowntimeScheduleUpdateRequest: + description: Schedule for the downtime. + additionalProperties: false properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataAttributes' - id: - description: >- - Specifies the unique identifier of the escalation policy being - updated. - example: 00000000-aba1-0000-0000-000000000000 + recurrences: + description: A list of downtime recurrences. + items: + $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' + type: array + timezone: + default: UTC + description: The timezone in which to schedule the downtime. + example: America/New_York + type: string + end: + description: |- + ISO-8601 Datetime to end the downtime. Must include a UTC offset of zero. If not provided, the + downtime continues forever. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true + type: string + start: + description: |- + ISO-8601 Datetime to start the downtime. Must include a UTC offset of zero. If not provided, the + downtime starts the moment it is created. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataType' - required: - - type - - id - - attributes type: object - CreatePageRequestData: - description: The main request body, including attributes and resource type. + IssuesSearchRequestDataAttributesOrderBy: + description: The attribute to sort the search results by. + enum: + - TOTAL_COUNT + - FIRST_SEEN + - IMPACTED_SESSIONS + - PRIORITY + example: IMPACTED_SESSIONS + type: string + x-enum-varnames: + - TOTAL_COUNT + - FIRST_SEEN + - IMPACTED_SESSIONS + - PRIORITY + IssuesSearchRequestDataAttributesPersona: + description: Persona for the search. Either track(s) or persona(s) must be specified. + enum: + - ALL + - BROWSER + - MOBILE + - BACKEND + example: BACKEND + type: string + x-enum-varnames: + - ALL + - BROWSER + - MOBILE + - BACKEND + IssueState: + description: State of the issue + enum: + - OPEN + - ACKNOWLEDGED + - RESOLVED + - IGNORED + - EXCLUDED + example: RESOLVED + type: string + x-enum-varnames: + - OPEN + - ACKNOWLEDGED + - RESOLVED + - IGNORED + - EXCLUDED + IssuesSearchRequestDataAttributesTrack: + description: Track of the events to query. Either track(s) or persona(s) must be specified. + enum: + - trace + - logs + - rum + example: trace + type: string + x-enum-varnames: + - TRACE + - LOGS + - RUM + IssuesSearchResultIssueRelationship: + description: Relationship between the search result and the corresponding issue. properties: - attributes: - $ref: '#/components/schemas/CreatePageRequestDataAttributes' - type: - $ref: '#/components/schemas/CreatePageRequestDataType' + data: + $ref: '#/components/schemas/IssueReference' required: - - type + - data type: object - CreatePageResponseData: - description: The information returned after successfully creating a page. + IssueUserAttributes: + description: Object containing the information of a user. properties: - id: - description: The unique ID of the created page. + email: + description: Email of the user. + example: user@company.com type: string - type: - $ref: '#/components/schemas/CreatePageResponseDataType' - required: - - type - type: object - ScheduleCreateRequestData: - description: >- - The core data wrapper for creating a schedule, encompassing attributes, - relationships, and the resource type. - properties: - attributes: - $ref: '#/components/schemas/ScheduleCreateRequestDataAttributes' - relationships: - $ref: '#/components/schemas/ScheduleCreateRequestDataRelationships' - type: - $ref: '#/components/schemas/ScheduleCreateRequestDataType' - required: - - type - - attributes - type: object - ScheduleData: - description: >- - Represents the primary data object for a schedule, linking attributes - and relationships. - properties: - attributes: - $ref: '#/components/schemas/ScheduleDataAttributes' - id: - description: The schedule's unique identifier. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + handle: + description: Handle of the user. + example: User Handle type: string - relationships: - $ref: '#/components/schemas/ScheduleDataRelationships' - type: - $ref: '#/components/schemas/ScheduleDataType' - required: - - type - type: object - ScheduleDataIncludedItem: - description: >- - Any additional resources related to this schedule, such as teams and - layers. - oneOf: - - $ref: '#/components/schemas/TeamReference' - - $ref: '#/components/schemas/Layer' - - $ref: '#/components/schemas/ScheduleMember' - - $ref: '#/components/schemas/ScheduleUser' - ScheduleUpdateRequestData: - description: >- - Contains all data needed to update an existing schedule, including its - attributes (such as name and time zone) and any relationships to teams. - properties: - attributes: - $ref: '#/components/schemas/ScheduleUpdateRequestDataAttributes' - id: - description: The ID of the schedule to be updated. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d + name: + description: Name of the user. + example: User Name type: string - relationships: - $ref: '#/components/schemas/ScheduleUpdateRequestDataRelationships' - type: - $ref: '#/components/schemas/ScheduleUpdateRequestDataType' - required: - - type - - id - - attributes type: object - ShiftData: - description: Data for an on-call shift. + IssueUserType: + description: Type of the object + enum: + - user + example: user + type: string + x-enum-varnames: + - USER + IssueTeamAttributes: + description: Object containing the information of a team. properties: - attributes: - $ref: '#/components/schemas/ShiftDataAttributes' - id: - description: The `ShiftData` `id`. + handle: + description: The team's identifier. + example: team-handle type: string - relationships: - $ref: '#/components/schemas/ShiftDataRelationships' - type: - $ref: '#/components/schemas/ShiftDataType' - required: - - type - type: object - ShiftIncluded: - description: Included data for shift operations. - oneOf: - - $ref: '#/components/schemas/ScheduleUser' - TeamOnCallRespondersData: - description: >- - Defines the main on-call responder object for a team, including - relationships and metadata. - properties: - id: - description: Unique identifier of the on-call responder configuration. + name: + description: The name of the team. + example: Team Name + type: string + summary: + description: A brief summary of the team, derived from its description. + example: This is a team. type: string - relationships: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationships' - type: - $ref: '#/components/schemas/TeamOnCallRespondersDataType' - required: - - type type: object - TeamOnCallRespondersIncluded: - description: >- - Represents an union of related resources included in the response, such - as users and escalation steps. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Escalation' - TeamRoutingRulesData: - description: >- - Represents the top-level data object for team routing rules, containing - the ID, relationships, and resource type. + IssueTeamType: + description: Type of the object. + enum: + - team + example: team + type: string + x-enum-varnames: + - TEAM + IssueLanguage: + description: Programming language associated with the issue. + enum: + - BRIGHTSCRIPT + - C + - C_PLUS_PLUS + - C_SHARP + - CLOJURE + - DOT_NET + - ELIXIR + - ERLANG + - GO + - GROOVY + - HASKELL + - HCL + - JAVA + - JAVASCRIPT + - JVM + - KOTLIN + - OBJECTIVE_C + - PERL + - PHP + - PYTHON + - RUBY + - RUST + - SCALA + - SWIFT + - TERRAFORM + - TYPESCRIPT + - UNKNOWN + example: PYTHON + type: string + x-enum-varnames: + - BRIGHTSCRIPT + - C + - C_PLUS_PLUS + - C_SHARP + - CLOJURE + - DOT_NET + - ELIXIR + - ERLANG + - GO + - GROOVY + - HASKELL + - HCL + - JAVA + - JAVASCRIPT + - JVM + - KOTLIN + - OBJECTIVE_C + - PERL + - PHP + - PYTHON + - RUBY + - RUST + - SCALA + - SWIFT + - TERRAFORM + - TYPESCRIPT + - UNKNOWN + IssuePlatform: + description: Platform associated with the issue. + enum: + - ANDROID + - BACKEND + - BROWSER + - FLUTTER + - IOS + - REACT_NATIVE + - ROKU + - UNKNOWN + example: BACKEND + type: string + x-enum-varnames: + - ANDROID + - BACKEND + - BROWSER + - FLUTTER + - IOS + - REACT_NATIVE + - ROKU + - UNKNOWN + IssueRegression: + description: Regression information for an issue that was previously resolved and then reopened. properties: - id: - description: Specifies the unique identifier of this team routing rules record. + regressed_at: + description: Timestamp when the issue was reopened (regressed). + example: '2024-01-03T08:00:00Z' + format: date-time + type: string + regressed_at_version: + description: Application version where the regression was observed. + example: v2.5.2 + type: string + resolved_at: + description: Timestamp when the issue was resolved before the regression. + example: '2024-01-01T10:00:00Z' + format: date-time type: string - relationships: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationships' - type: - $ref: '#/components/schemas/TeamRoutingRulesDataType' required: - - type + - resolved_at + - regressed_at type: object - TeamRoutingRulesIncluded: - description: >- - Represents additional included resources for team routing rules, such as - associated routing rules. - oneOf: - - $ref: '#/components/schemas/RoutingRule' - TeamRoutingRulesRequestData: - description: >- - Holds the data necessary to create or update team routing rules, - including attributes, ID, and resource type. - properties: - attributes: - $ref: '#/components/schemas/TeamRoutingRulesRequestDataAttributes' - id: - description: Specifies the unique identifier for this set of team routing rules. - type: string - type: - $ref: '#/components/schemas/TeamRoutingRulesRequestDataType' + IssueAssigneeRelationship: + description: Relationship between the issue and assignee. + properties: + data: + $ref: '#/components/schemas/IssueUserReference' required: - - type + - data type: object - IncidentServiceResponseData: - description: Incident Service data from responses. + IssueCaseRelationship: + description: Relationship between the issue and case. properties: - attributes: - $ref: '#/components/schemas/IncidentServiceResponseAttributes' - id: - description: The incident service's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' + data: + $ref: '#/components/schemas/IssueCaseReference' required: - - id - - type + - data type: object - IncidentServiceIncludedItems: - description: >- - An object related to an incident service which is present in the - included payload. - oneOf: - - $ref: '#/components/schemas/User' - IncidentServiceCreateData: - description: Incident Service payload for create requests. + IssueTeamOwnersRelationship: + description: Relationship between the issue and teams. properties: - attributes: - $ref: '#/components/schemas/IncidentServiceCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' + data: + description: Array of teams that are owners of the issue. + items: + $ref: '#/components/schemas/IssueTeamReference' + type: array required: - - type + - data type: object - ServiceDefinitionSchemaVersions: - description: Schema versions - enum: - - v1 - - v2 - - v2.1 - - v2.2 - type: string - x-enum-varnames: - - V1 - - V2 - - V2_1 - - V2_2 - ServiceDefinitionData: - description: Service definition data. + IssueCaseAttributes: + description: Object containing the information of a case. properties: - attributes: - $ref: '#/components/schemas/ServiceDefinitionDataAttributes' - id: - description: Service definition id. + archived_at: + description: Timestamp of when the case was archived. + example: '2025-01-01T00:00:00Z' + format: date-time type: string - type: - description: Service definition type. + closed_at: + description: Timestamp of when the case was closed. + example: '2025-01-01T00:00:00Z' + format: date-time type: string - type: object - ServiceDefinitionV2Dot2: - description: Service definition v2.2 for providing service metadata and integrations. - properties: - application: - description: >- - Identifier for a group of related services serving a product - feature, which the service is a part of. - example: my-app + created_at: + description: Timestamp of when the case was created. + example: '2025-01-01T00:00:00Z' + format: date-time type: string - ci-pipeline-fingerprints: - description: A set of CI fingerprints. - example: - - j88xdEy0J5lc - - eZ7LMljCk8vo - items: - type: string - type: array - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Contact' - type: array - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: my-service + creation_source: + description: Source of the case creation. + example: ERROR_TRACKING type: string description: - description: A short description of the service. - example: My service description + description: Description of the case. type: string - extensions: - additionalProperties: {} - description: Extensions to v2.2 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Integrations' - languages: - description: >- - The service's programming language. Datadog recognizes the following - languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, - and `c++`. - example: - - dotnet - - go - - java - - js - - php - - python - - ruby - - c++ - items: - type: string - type: array - lifecycle: - description: The current life cycle phase of the service. - example: sandbox + due_date: + description: Due date of the case. + example: '2025-01-01' type: string - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Link' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag + insights: + description: Insights of the case. items: - type: string + $ref: '#/components/schemas/IssueCaseInsight' type: array - team: - description: >- - Team that owns the service. It is used to locate a team defined in - Datadog Teams if it exists. - example: my-team + jira_issue: + $ref: '#/components/schemas/IssueCaseJiraIssue' + key: + description: Key of the case. + example: ET-123 type: string - tier: - description: Importance of the service. - example: High + linear_issue: + $ref: '#/components/schemas/IssueCaseLinearIssue' + modified_at: + description: Timestamp of when the case was last modified. + example: '2025-01-01T00:00:00Z' + format: date-time + type: string + priority: + $ref: '#/components/schemas/CasePriority' + status: + $ref: '#/components/schemas/CaseStatus' + title: + description: Title of the case. + example: 'Error: HTTP error' type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Type' - required: - - schema-version - - dd-service + description: Type of the case. + example: ERROR_TRACKING_ISSUE + type: string type: object - ServiceDefinitionV2Dot1: - description: Service definition v2.1 for providing service metadata and integrations. + IssueCaseRelationships: + description: Resources related to a case. properties: - application: - description: >- - Identifier for a group of related services serving a product - feature, which the service is a part of. - example: my-app + assignee: + $ref: '#/components/schemas/NullableUserRelationship' + created_by: + $ref: '#/components/schemas/NullableUserRelationship' + modified_by: + $ref: '#/components/schemas/NullableUserRelationship' + project: + $ref: '#/components/schemas/ProjectRelationship' + type: object + IssueCaseResourceType: + description: Type of the object. + enum: + - case + example: case + type: string + x-enum-varnames: + - CASE + EventAttributes: + description: Object description of attributes from your event. + properties: + aggregation_key: + description: Aggregation key of the event. type: string - contacts: - description: A list of contacts related to the services. + date_happened: + description: |- + POSIX timestamp of the event. Must be sent as an integer (no quotation marks). + Limited to events no older than 18 hours. + format: int64 + type: integer + device_name: + description: A device name. + type: string + duration: + description: The duration between the triggering of the event and its recovery in nanoseconds. + format: int64 + type: integer + event_object: + description: The event title. + example: Did you hear the news today? + type: string + evt: + $ref: '#/components/schemas/Event' + hostname: + description: |- + Host name to associate with the event. + Any tags associated with the host are also applied to this event. + type: string + monitor: + $ref: '#/components/schemas/MonitorType' + monitor_groups: + description: List of groups referred to in the event. items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Contact' + description: Group referred to in the event. + type: string + nullable: true type: array - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: my-service - type: string - description: - description: A short description of the service. - example: My service description + monitor_id: + description: ID of the monitor that triggered the event. When an event isn't related to a monitor, this field is empty. + format: int64 + nullable: true + type: integer + priority: + $ref: '#/components/schemas/EventPriority' + related_event_id: + description: Related event ID. + format: int64 + type: integer + service: + description: Service that triggered the event. + example: datadog-api type: string - extensions: - additionalProperties: {} - description: Extensions to v2.1 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Integrations' - lifecycle: - description: The current life cycle phase of the service. - example: sandbox + source_type_name: + description: |- + The type of event being posted. + For example, `nagios`, `hudson`, `jenkins`, `my_apps`, `chef`, `puppet`, `git` or `bitbucket`. + The list of standard source attribute values is [available here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). type: string - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Link' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Version' + sourcecategory: + description: Identifier for the source of the event, such as a monitor alert, an externally-submitted event, or an integration. + type: string + status: + $ref: '#/components/schemas/EventStatusType' tags: - description: A set of custom tags. + description: A list of tags to apply to the event. example: - - my:tag - - service:tag + - environment:test items: + description: A tag. type: string type: array - team: - description: >- - Team that owns the service. It is used to locate a team defined in - Datadog Teams if it exists. - example: my-team - type: string - tier: - description: Importance of the service. - example: High + timestamp: + description: POSIX timestamp of your event in milliseconds. + example: 1652274265000 + format: int64 + type: integer + title: + description: The event title. + example: Oh boy! type: string - required: - - schema-version - - dd-service type: object - ServiceDefinitionV2: - description: Service definition V2 for providing service metadata and integrations. + EventPayloadAttributes: + description: JSON object for category-specific attributes. Schema is different per event category. + additionalProperties: false properties: - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Contact' - type: array - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: my-service - type: string - dd-team: - description: >- - Experimental feature. A Team handle that matches a Team in the - Datadog Teams product. - example: my-team - type: string - docs: - description: A list of documentation related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Doc' - type: array - extensions: + author: + $ref: '#/components/schemas/ChangeEventCustomAttributesAuthor' + change_metadata: additionalProperties: {} - description: Extensions to V2 schema. + description: Free form JSON object with information related to the `change` event. Supports up to 100 properties per object and a maximum nesting depth of 10 levels. example: - myorg/extension: extensionValue + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username + resource_link: datadog.com/feature/fallback_payments_test type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Integrations' - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Link' - type: array - repos: - description: A list of code repositories related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Repo' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Version' - tags: - description: A set of custom tags. + changed_resource: + $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResource' + impacted_resources: + description: |- + A list of resources impacted by this change. It is recommended to provide an impacted resource to display + the change event at the correct location. Only resources of type `service` are supported. Maximum of 100 impacted resources allowed. example: - - my:tag - - service:tag + - name: payments_api + type: service items: - type: string + $ref: '#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItems' + maxItems: 100 type: array - team: - description: Team that owns the service. - example: my-team - type: string + new_value: + additionalProperties: {} + description: Free form JSON object representing the new state of the changed resource. + example: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + type: object + prev_value: + additionalProperties: {} + description: Free form JSON object representing the previous state of the changed resource. + example: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + type: object + custom: + $ref: '#/components/schemas/AlertEventCustomAttributesCustom' + links: + $ref: '#/components/schemas/AlertEventCustomAttributesLinks' + priority: + $ref: '#/components/schemas/AlertEventCustomAttributesPriority' + status: + $ref: '#/components/schemas/AlertEventCustomAttributesStatus' required: - - schema-version - - dd-service + - changed_resource + - status type: object - ServiceDefinitionRaw: - description: Service Definition in raw JSON/YAML representation. - example: | - --- - schema-version: v2 - dd-service: my-service + EventCategory: + description: Event category identifying the type of event. + enum: + - change + - alert + example: change type: string - IncidentServiceUpdateData: - description: Incident Service payload for update requests. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceUpdateAttributes' - id: - description: The incident service's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - type - type: object - SloReportCreateRequestData: - description: The data portion of the SLO report request. + x-enum-varnames: + - CHANGE + - ALERT + EventPayloadIntegrationId: + description: Integration ID sourced from integration manifests. + enum: + - custom-events + example: custom-events + type: string + x-enum-varnames: + - CUSTOM_EVENTS + EventCreateResponseAttributesAttributes: + description: JSON object for category-specific attributes. properties: - attributes: - $ref: '#/components/schemas/SloReportCreateRequestAttributes' - required: - - attributes + evt: + $ref: '#/components/schemas/EventCreateResponseAttributesAttributesEvt' type: object - SLOReportPostResponseData: - description: The data portion of the SLO report response. + V2EventAttributesAttributes: + description: JSON object for category-specific attributes. properties: - id: - description: The ID of the report job. - example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 + aggregation_key: + $ref: '#/components/schemas/V2EventAggregationKey' + author: + $ref: '#/components/schemas/ChangeEventAttributesAuthor' + change_metadata: + description: JSON object of change metadata. (opaque JSON object) + example: + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username type: string - type: - description: The type of ID. - example: report_id + changed_resource: + $ref: '#/components/schemas/ChangeEventAttributesChangedResource' + evt: + $ref: '#/components/schemas/EventSystemAttributes' + impacted_resources: + description: A list of resources impacted by this change. + example: + - name: service-name + type: service + items: + $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItem' + type: array + new_value: + description: The new state of the changed resource. (opaque JSON object) + example: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + type: string + prev_value: + description: The previous state of the changed resource. (opaque JSON object) + example: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + type: string + service: + $ref: '#/components/schemas/V2EventService' + timestamp: + $ref: '#/components/schemas/V2EventTimestamp' + title: + $ref: '#/components/schemas/V2EventTitle' + custom: + description: JSON object of custom attributes. (opaque JSON object) + example: {} type: string + links: + description: The links related to the event. + example: + - category: runbook + title: Runbook Link + url: https://app.datadoghq.com/runbook + items: + $ref: '#/components/schemas/AlertEventAttributesLinksItem' + type: array + priority: + $ref: '#/components/schemas/AlertEventAttributesPriority' + status: + $ref: '#/components/schemas/AlertEventAttributesStatus' type: object - SLOReportStatusGetResponseData: - description: The data portion of the SLO report status response. + FormUiDefinition: + additionalProperties: {} + description: UI configuration for rendering form fields, including widget overrides, field ordering, and themes. properties: - attributes: - $ref: '#/components/schemas/SLOReportStatusGetResponseAttributes' - id: - description: The ID of the report job. - example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 + ui:order: + description: The order in which form fields are displayed. + items: + type: string + type: array + ui:theme: + $ref: '#/components/schemas/FormUiDefinitionUiTheme' + type: object + FormDatastoreConfigAttributes: + description: The datastore configuration for a form. + properties: + datastore_id: + description: The ID of the datastore. + example: 5108ea24-dd83-4696-9caa-f069f73d0fad + format: uuid type: string - type: - description: The type of ID. - example: report_id + primary_column_name: + description: The name of the primary column in the datastore. + example: id type: string + primary_key_generation_strategy: + description: The strategy used to generate primary keys in the datastore. + example: none + type: string + required: + - datastore_id + - primary_column_name + - primary_key_generation_strategy type: object - IncidentTeamResponseData: - description: Incident Team data from a response. + FormUpdateAttributes: + description: The fields to update on a form. At least one field must be provided. properties: - attributes: - $ref: '#/components/schemas/IncidentTeamResponseAttributes' - id: - description: The incident team's ID. - example: 00000000-7ea3-0000-000a-000000000000 + datastore_config: + $ref: '#/components/schemas/FormDatastoreConfigAttributes' + description: + description: The updated description of the form. + example: An updated description. + type: string + name: + description: The updated name of the form. + example: Updated Form Name type: string - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' type: object - IncidentTeamIncludedItems: - description: >- - An object related to an incident team which is present in the included - payload. - oneOf: - - $ref: '#/components/schemas/User' - IncidentTeamCreateData: - description: Incident Team data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' + FormVersionState: + description: The state of a form version. + enum: + - draft + - frozen + example: frozen + type: string + x-enum-varnames: + - DRAFT + - FROZEN + UpsertFormVersionUpsertParams: + description: Concurrency control parameters for the form version upsert operation. + properties: + etag: + description: The ETag of the latest version. Required when `match_policy` is `if_etag_match`. + example: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d + nullable: true + type: string + insert_only: + description: If true, only a new version may be inserted; updating the current draft is not allowed. + example: false + type: boolean + match_policy: + $ref: '#/components/schemas/LatestVersionMatchPolicy' required: - - type + - match_policy type: object - IncidentTeamUpdateData: - description: Incident Team data for an update request. + UpsertAndPublishFormVersionUpsertParams: + description: Concurrency control parameters for the upsert and publish operation. properties: - attributes: - $ref: '#/components/schemas/IncidentTeamUpdateAttributes' - id: - description: The incident team's ID. - example: 00000000-7ea3-0000-0001-000000000000 + etag: + description: The ETag of the latest version used for optimistic concurrency control. + example: b51f08b698d88d8027a935d9db649774949f5fb41a0c559bfee6a9a13225c72d type: string - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' required: - - type + - etag type: object - CaseAttributes: - description: Case resource attributes + IncidentNonDatadogCreator: + description: Incident's non Datadog creator. + nullable: true properties: - archived_at: - description: Timestamp of when the case was archived - format: date-time - nullable: true - readOnly: true - type: string - attributes: - $ref: '#/components/schemas/CaseObjectAttributes' - closed_at: - description: Timestamp of when the case was closed - format: date-time - nullable: true - readOnly: true - type: string - created_at: - description: Timestamp of when the case was created - format: date-time - readOnly: true - type: string - description: - description: Description + image_48_px: + description: Non Datadog creator `48px` image. type: string - jira_issue: - $ref: '#/components/schemas/JiraIssue' - key: - description: Key - example: CASEM-4523 + name: + description: Non Datadog creator name. type: string - modified_at: - description: Timestamp of when the case was last modified - format: date-time + type: object + IncidentFieldAttributes: + description: Dynamic fields for which selections can be made, with field names as keys. + properties: + type: + $ref: '#/components/schemas/IncidentFieldAttributesSingleValueType' + value: + description: The single value selected for this field. + example: SEV-1 nullable: true - readOnly: true - type: string - priority: - $ref: '#/components/schemas/CasePriority' - service_now_ticket: - $ref: '#/components/schemas/ServiceNowTicket' - status: - $ref: '#/components/schemas/CaseStatus' - title: - description: Title - example: Memory leak investigation on API type: string - type: - $ref: '#/components/schemas/CaseType' type: object - CaseRelationships: - description: Resources related to a case + IncidentNotificationHandle: + description: A notification handle that will be notified at incident creation. properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - created_by: - $ref: '#/components/schemas/NullableUserRelationship' - modified_by: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' + display_name: + description: The name of the notified handle. + example: Jane Doe + type: string + handle: + description: The handle used for the notification. This includes an email address, Slack channel, or workflow. + example: '@test.user@test.com' + type: string type: object - CaseResourceType: - default: case - description: Case resource type + IncidentSeverity: + description: The incident severity. enum: - - case - example: case + - UNKNOWN + - SEV-0 + - SEV-1 + - SEV-2 + - SEV-3 + - SEV-4 + - SEV-5 + example: UNKNOWN type: string x-enum-varnames: - - CASE - CasesResponseMetaPagination: - description: Pagination metadata + - UNKNOWN + - SEV_0 + - SEV_1 + - SEV_2 + - SEV_3 + - SEV_4 + - SEV_5 + RelationshipToIncidentAttachment: + description: A relationship reference for attachments. properties: - current: - description: Current page number - format: int64 - type: integer - size: - description: Number of cases in current page - format: int64 - type: integer - total: - description: Total number of pages - format: int64 - type: integer + data: + description: An array of incident attachments. + items: + $ref: '#/components/schemas/RelationshipToIncidentAttachmentData' + type: array + required: + - data type: object - CaseCreateAttributes: - description: Case creation attributes + NullableRelationshipToUser: + description: Relationship to user. + nullable: true properties: - description: - description: Description - type: string - priority: - $ref: '#/components/schemas/CasePriority' - title: - description: Title - example: Security breach investigation - type: string - type: - $ref: '#/components/schemas/CaseType' + data: + $ref: '#/components/schemas/NullableRelationshipToUserData' required: - - title - - type + - data type: object - CaseCreateRelationships: - description: Relationships formed with the case on creation + RelationshipToUser: + description: Relationship to user. properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' + data: + $ref: '#/components/schemas/RelationshipToUserData' required: - - project + - data type: object - ProjectAttributes: - description: Project attributes + RelationshipToIncidentImpacts: + description: Relationship to impacts. properties: - key: - description: The project's key - example: CASEM - type: string - name: - description: Project's name - type: string + data: + description: An array of incident impacts. + items: + $ref: '#/components/schemas/RelationshipToIncidentImpactData' + type: array + required: + - data type: object - ProjectRelationships: - description: Project relationships + RelationshipToIncidentIntegrationMetadatas: + description: A relationship reference for multiple integration metadata objects. + example: + data: + - id: 00000000-abcd-0005-0000-000000000000 + type: incident_integrations + - id: 00000000-abcd-0006-0000-000000000000 + type: incident_integrations properties: - member_team: - $ref: '#/components/schemas/RelationshipToTeamLinks' - member_user: - $ref: '#/components/schemas/UsersRelationship' + data: + description: Integration metadata relationship array + example: + - id: 00000000-abcd-0003-0000-000000000000 + type: incident_integrations + - id: 00000000-abcd-0004-0000-000000000000 + type: incident_integrations + items: + $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadataData' + type: array + required: + - data type: object - ProjectResourceType: - default: project - description: Project resource type - enum: - - project - example: project - type: string - x-enum-varnames: - - PROJECT - ProjectCreateAttributes: - description: Project creation attributes + RelationshipToIncidentResponders: + description: Relationship to incident responders. properties: - key: - description: Project's key. Cannot be "CASE" - example: SEC - type: string - name: - description: name - example: Security Investigation - type: string + data: + description: An array of incident responders. + items: + $ref: '#/components/schemas/RelationshipToIncidentResponderData' + type: array required: - - name - - key + - data type: object - CaseAssignAttributes: - description: Case assign attributes + RelationshipToIncidentUserDefinedFields: + description: Relationship to incident user defined fields. properties: - assignee_id: - description: Assignee's UUID - example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 - type: string + data: + description: An array of user defined fields. + items: + $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFieldData' + type: array required: - - assignee_id + - data type: object - CaseUpdateAttributesAttributes: - description: Case update attributes attributes + IncidentTimelineCellCreateAttributes: + description: The timeline cell's attributes for a create request. properties: - attributes: - $ref: '#/components/schemas/CaseObjectAttributes' + cell_type: + $ref: '#/components/schemas/IncidentTimelineCellMarkdownContentType' + content: + $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributesContent' + important: + default: false + description: A flag indicating whether the timeline cell is important and should be highlighted. + example: false + type: boolean required: - - attributes + - content + - cell_type type: object - CaseUpdatePriorityAttributes: - description: Case update priority attributes + IncidentHandleAttributesFields: + description: Dynamic fields associated with the handle + example: + severity: + - SEV-1 properties: - priority: - $ref: '#/components/schemas/CasePriority' + severity: + description: Severity levels associated with the handle + items: + $ref: '#/components/schemas/IncidentHandleAttributesFieldsSeverity' + type: array + type: object + IncidentHandleRelationship: + description: A single relationship object for an incident handle, wrapping the related resource data. + properties: + data: + $ref: '#/components/schemas/IncidentHandleRelationshipData' required: - - priority + - data type: object - CaseUpdateStatusAttributes: - description: Case update status attributes + RelationshipToIncidentType: + description: Relationship to an incident type. properties: - status: - $ref: '#/components/schemas/CaseStatus' + data: + $ref: '#/components/schemas/RelationshipToIncidentTypeData' required: - - status + - data type: object - DowntimeResponseAttributes: - description: Downtime details. + IncidentImpactFieldChoice: + description: A choice option for a dropdown or multiselect impact field. properties: - canceled: - description: Time that the downtime was canceled. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - nullable: true + description: + description: The description of the choice. + example: Affects all customers type: string - created: - description: Creation time of the downtime. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time + display_name: + description: The display name of the choice. + example: Critical type: string - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - modified: - description: Time that the downtime was last modified. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time + value: + description: The value of the choice. + example: critical type: string - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleResponse' - scope: - $ref: '#/components/schemas/DowntimeScope' - status: - $ref: '#/components/schemas/DowntimeStatus' - type: object - DowntimeRelationships: - description: All relationships associated with downtime. - properties: - created_by: - $ref: '#/components/schemas/DowntimeRelationshipsCreatedBy' - monitor: - $ref: '#/components/schemas/DowntimeRelationshipsMonitor' + required: + - value + - display_name type: object - DowntimeResourceType: - default: downtime - description: Downtime resource type. + IncidentImpactFieldValueType: + description: The type of an impact field. enum: - - downtime - example: downtime + - dropdown + - text + - textarray + - metrictag + - number + - datetime + - multiselect + example: dropdown type: string x-enum-varnames: - - DOWNTIME - User: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' - type: object - DowntimeMonitorIncludedItem: - description: Information about the monitor identified by the downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeMonitorIncludedAttributes' - id: - description: ID of the monitor identified by the downtime. - example: 12345 - format: int64 - type: integer - type: - $ref: '#/components/schemas/DowntimeIncludedMonitorType' - type: object - DowntimeMetaPage: - description: Object containing the total filtered count. - properties: - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - DowntimeCreateRequestAttributes: - description: Downtime details. - properties: - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleCreateRequest' - scope: - $ref: '#/components/schemas/DowntimeScope' - required: - - scope - - monitor_identifier - type: object - DowntimeUpdateRequestAttributes: - description: Attributes of the downtime to update. - properties: - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleUpdateRequest' - scope: - $ref: '#/components/schemas/DowntimeScope' - type: object - IssuesSearchRequestDataAttributes: - description: Object describing a search issue request. + - DROPDOWN + - TEXT + - TEXTARRAY + - METRICTAG + - NUMBER + - DATETIME + - MULTISELECT + IncidentNotificationRuleConditions: + description: The conditions that trigger this notification rule. + example: + - field: severity + values: + - SEV-1 + - SEV-2 + items: + $ref: '#/components/schemas/IncidentNotificationRuleConditionsItems' + type: array + IncidentNotificationRuleHandles: + description: The notification handles (targets) for this rule. + example: + - '@team-email@company.com' + - '@slack-channel' + items: + description: A notification handle (email, Slack channel, etc.). + type: string + type: array + IncidentNotificationRuleRenotifyOn: + description: List of incident fields that trigger re-notification when changed. + example: + - status + - severity + items: + description: An incident field name. + type: string + type: array + IncidentNotificationRuleAttributesVisibility: + description: The visibility of the notification rule. + enum: + - all + - organization + - private + example: organization + type: string + x-enum-varnames: + - ALL + - ORGANIZATION + - PRIVATE + RelationshipToIncidentNotificationTemplate: + description: A relationship reference to a notification template. properties: - from: - description: >- - Start date (inclusive) of the query in milliseconds since the Unix - epoch. - example: 1671612804000 - format: int64 - type: integer - order_by: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesOrderBy' - persona: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesPersona' - query: - description: Search query following the event search syntax. - example: service:orders-* AND @language:go - type: string - to: - description: >- - End date (exclusive) of the query in milliseconds since the Unix - epoch. - example: 1671620004000 - format: int64 - type: integer - track: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesTrack' + data: + $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplateData' required: - - query - - from - - to + - data type: object - IssuesSearchRequestDataType: - description: Type of the object. - enum: - - search_request - example: search_request + IncidentNotificationRuleCreateAttributesVisibility: + description: The visibility of the notification rule. + enum: + - all + - organization + - private + example: organization type: string x-enum-varnames: - - SEARCH_REQUEST - IssuesSearchResultAttributes: - description: Object containing the information of a search result. + - ALL + - ORGANIZATION + - PRIVATE + ConfluencePostmortemSettings: + description: Settings for a postmortem template stored in Confluence. Required when `location` is `confluence`. properties: - impacted_sessions: - description: >- - Count of sessions impacted by the issue over the queried time - window. - example: 12 - format: int64 - type: integer - impacted_users: - description: Count of users impacted by the issue over the queried time window. - example: 4 - format: int64 - type: integer - total_count: - description: >- - Total count of errors that match the issue over the queried time - window. - example: 82 - format: int64 - type: integer + account_id: + description: The ID of the Confluence integration account. + example: '123456' + type: string + parent_id: + description: The ID of the parent Confluence page under which postmortems are created. + example: '345678' + nullable: true + type: string + space_id: + description: The ID of the Confluence space where postmortems are created. + example: '789012' + type: string + required: + - account_id + - space_id type: object - IssuesSearchResultRelationships: - description: Relationships between the search result and other resources. + GoogleDocsPostmortemSettings: + description: Settings for a postmortem template stored in Google Docs. Required when `location` is `google_docs`. properties: - issue: - $ref: '#/components/schemas/IssuesSearchResultIssueRelationship' + account_id: + description: The ID of the Google Drive integration account. + example: '123456' + type: string + parent_folder_id: + description: The ID of the Google Drive folder where postmortems are created. + example: '789012' + type: string + required: + - account_id + - parent_folder_id type: object - IssuesSearchResultType: - description: Type of the object. + PostmortemTemplateLocation: + default: datadog_notebooks + description: The location where the postmortem is created and stored. enum: - - error_tracking_search_result - example: error_tracking_search_result + - datadog_notebooks + - confluence + - google_docs + example: datadog_notebooks type: string x-enum-varnames: - - ERROR_TRACKING_SEARCH_RESULT - IssueUser: - description: The user to whom the issue is assigned. + - DATADOG_NOTEBOOKS + - CONFLUENCE + - GOOGLE_DOCS + PostmortemTemplateIncidentTypeRelationship: + description: Relationship to the incident type this template belongs to. properties: - attributes: - $ref: '#/components/schemas/IssueUserAttributes' - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUserType' + data: + $ref: '#/components/schemas/PostmortemTemplateIncidentTypeRelationshipData' required: - - id - - type - - attributes + - data type: object - IssueTeam: - description: A team that owns an issue. + PostmortemTemplateUserRelationship: + description: Relationship to a user. properties: - attributes: - $ref: '#/components/schemas/IssueTeamAttributes' - id: - description: Team identifier. - example: 221b0179-6447-4d03-91c3-3ca98bf60e8a - type: string - type: - $ref: '#/components/schemas/IssueTeamType' + data: + $ref: '#/components/schemas/PostmortemTemplateUserRelationshipData' required: - - id - - type - - attributes + - data type: object - IssueAttributes: - description: Object containing the information of an issue. + IncidentRuleQueryCondition: + description: A query-based condition for an incident rule. properties: - error_message: - description: Error message associated with the issue. - example: object of type 'NoneType' has no len() - type: string - error_type: - description: Type of the error that matches the issue. - example: builtins.TypeError - type: string - file_path: - description: Path of the file where the issue occurred. - example: /django-email/conduit/apps/core/utils.py + normalized_query: + description: The normalized query string. + example: severity:SEV-1 + nullable: true type: string - first_seen: - description: >- - Timestamp of the first seen error in milliseconds since the Unix - epoch. - example: 1671612804001 - format: int64 - type: integer - first_seen_version: - description: >- - The application version (for example, git commit hash) where the - issue was first observed. - example: aaf65cd0 + raw_query: + description: The raw query string. + example: severity:SEV-1 + nullable: true type: string - function_name: - description: Name of the function where the issue occurred. - example: filter_forbidden_tags + type: object + IncidentRuleCondition: + description: A condition for an incident rule. + properties: + field: + description: The field to match on. + example: severity type: string - is_crash: - description: Error is a crash. - example: false - type: boolean - languages: - description: Array of programming languages associated with the issue. + values: + description: The values to match. example: - - PYTHON - - GO + - SEV-1 + - SEV-2 items: - $ref: '#/components/schemas/IssueLanguage' + type: string type: array - last_seen: - description: >- - Timestamp of the last seen error in milliseconds since the Unix - epoch. - example: 1671620003100 - format: int64 - type: integer - last_seen_version: - description: >- - The application version (for example, git commit hash) where the - issue was last observed. - example: b6199f80 - type: string - platform: - $ref: '#/components/schemas/IssuePlatform' - service: - description: Service name. - example: email-api-py - type: string - state: - $ref: '#/components/schemas/IssueState' - type: object - IssueRelationships: - description: Relationship between the issue and an assignee, case and/or teams. - properties: - assignee: - $ref: '#/components/schemas/IssueAssigneeRelationship' - case: - $ref: '#/components/schemas/IssueCaseRelationship' - team_owners: - $ref: '#/components/schemas/IssueTeamOwnersRelationship' + required: + - field + - values type: object - IssueType: - description: Type of the object. + IncidentRuleExecutionType: + description: The execution type of an incident rule. enum: - - issue - example: issue + - 1 + - 2 + example: 1 + format: int64 + type: integer + x-enum-varnames: + - SINGLE_EXECUTION + - MULTI_EXECUTION + IncidentRuleTaskIDType: + description: The task ID for an incident rule. + enum: + - jira-create-issue-job + - notify-incident-handles-job + - servicenow-create-incident-job + - slack-create-channel-job + - zoom-create-meeting-job + - google-meet-create-meeting-job + - workflow-automation-job + - ms-teams-create-meeting-job + - google-chat-create-space-job + - zoom-suppress-summarization-job + - ms-teams-suppress-summarization-job + - google-meet-suppress-summarization-job + example: notify-incident-handles-job type: string x-enum-varnames: - - ISSUE - IssueCase: - description: The case attached to the issue. + - JIRA_CREATE_ISSUE_JOB + - NOTIFY_INCIDENT_HANDLES_JOB + - SERVICENOW_CREATE_INCIDENT_JOB + - SLACK_CREATE_CHANNEL_JOB + - ZOOM_CREATE_MEETING_JOB + - GOOGLE_MEET_CREATE_MEETING_JOB + - WORKFLOW_AUTOMATION_JOB + - MS_TEAMS_CREATE_MEETING_JOB + - GOOGLE_CHAT_CREATE_SPACE_JOB + - ZOOM_SUPPRESS_SUMMARIZATION_JOB + - MS_TEAMS_SUPPRESS_SUMMARIZATION_JOB + - GOOGLE_MEET_SUPPRESS_SUMMARIZATION_JOB + IncidentRuleTriggerType: + description: The trigger event for an incident rule. + enum: + - incident_saved_trigger + - incident_created_trigger + - incident_modified_trigger + example: incident_created_trigger + type: string + x-enum-varnames: + - INCIDENT_SAVED_TRIGGER + - INCIDENT_CREATED_TRIGGER + - INCIDENT_MODIFIED_TRIGGER + IncidentTypeConfiguration: + description: The incident-type-scoped behavior settings. All fields are optional on update. Any field omitted from a PATCH request keeps its current value. This object is read-only on the incident type resource itself and is only mutated through the update (PATCH) endpoint. properties: - attributes: - $ref: '#/components/schemas/IssueCaseAttributes' - id: - description: Case identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 + allow_incident_deletion: + default: false + description: Whether incidents of this type can be deleted. + example: false + type: boolean + allow_workflows: + default: true + description: Whether automation workflows can be triggered for incidents of this type. + example: true + type: boolean + create_message: + description: An optional message shown to users when they declare an incident of this type. + example: Create an incident here type: string - relationships: - $ref: '#/components/schemas/IssueCaseRelationships' - type: - $ref: '#/components/schemas/IssueCaseResourceType' + editable_timestamps: + default: false + description: Whether responders can edit incident timestamps for incidents of this type. + example: false + type: boolean + private_incidents: + default: false + description: Whether responders can create private incidents of this type. This is an opt-in setting, distinct from `private_incidents_by_default`, which controls whether incidents are created private automatically. + example: false + type: boolean + private_incidents_by_default: + default: false + description: Whether incidents of this type are created as private by default. + example: false + type: boolean + slug_source: + $ref: '#/components/schemas/IncidentTypeSlugSource' + test_incidents: + default: true + description: Whether incidents of this type are treated as test incidents. + example: true + type: boolean + type: object + GoogleMeetConfigurationReference: + description: A reference to a Google Meet Configuration resource. + nullable: true + properties: + data: + $ref: '#/components/schemas/GoogleMeetConfigurationReferenceData' required: - - id - - type - - attributes + - data type: object - IssueUpdateAssigneeRequestDataType: - description: Type of the object. - enum: - - assignee - example: assignee - type: string - x-enum-varnames: - - ASSIGNEE - IssueUpdateStateRequestDataAttributes: - description: Object describing an issue state update request. + MicrosoftTeamsConfigurationReference: + description: A reference to a Microsoft Teams Configuration resource. + nullable: true properties: - state: - $ref: '#/components/schemas/IssueState' + data: + $ref: '#/components/schemas/MicrosoftTeamsConfigurationReferenceData' required: - - state + - data type: object - IssueUpdateStateRequestDataType: - description: Type of the object. + ZoomConfigurationReference: + description: A reference to a Zoom configuration resource. + nullable: true + properties: + data: + $ref: '#/components/schemas/ZoomConfigurationReferenceData' + required: + - data + type: object + IncidentOrgSettingsMeta: + additionalProperties: {} + description: The settings configuration for an incident org settings resource. + example: + allow_anonymous_incident_declaration: false + allow_guest_incident_declaration: false + pagerduty_paging: true + private_incidents_by_default: false + type: object + IncidentUserDefinedFieldCategory: + description: 'The section in which the field appears: "what_happened" or "why_it_happened". When null, the field appears in the Attributes section.' enum: - - error_tracking_issue - example: error_tracking_issue + - what_happened + - why_it_happened + example: what_happened + nullable: true type: string x-enum-varnames: - - ERROR_TRACKING_ISSUE - EventResponseAttributes: - description: The object description of an event response attribute. - properties: - attributes: - $ref: '#/components/schemas/EventAttributes' - message: - description: The message of the event. - type: string - tags: - description: An array of tags associated with the event. - example: - - team:A - items: - description: The tag associated with the event. - type: string - type: array - timestamp: - description: The timestamp of the event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - EventType: - default: event - description: Type of the event. + - WHAT_HAPPENED + - WHY_IT_HAPPENED + IncidentUserDefinedFieldCollected: + description: The lifecycle stage at which the app prompts users to fill out this field. Cannot be set on required fields. enum: - - event - example: event + - active + - stable + - resolved + - completed + example: active + nullable: true type: string x-enum-varnames: - - EVENT - EventsResponseMetadataPage: - description: Pagination attributes. + - ACTIVE + - STABLE + - RESOLVED + - COMPLETED + IncidentUserDefinedFieldMetadata: + description: Metadata for autocomplete-type user-defined fields, describing how to populate autocomplete options. + nullable: true properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + category: + description: The category of the autocomplete source. + example: teams_and_services type: string - type: object - EventsWarning: - description: A warning message indicating something is wrong with the query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index + search_limit_param: + description: The query parameter used to limit the number of autocomplete results. + example: page[size] type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' + search_params: + additionalProperties: {} + description: Additional query parameters to include in the search URL. + type: object + search_query_param: + description: The query parameter used to pass typed input to the search URL. + example: filter type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid. Results hold data - from the other indexes. + search_result_path: + description: The JSON path to the results in the response body. + example: $.data[*].attributes.name + type: string + search_url: + description: The URL used to populate autocomplete options. + example: /api/v2/incidents/config/services type: string + required: + - category + - search_url + - search_query_param + - search_limit_param + - search_result_path + - search_params type: object - EventPayload: - additionalProperties: false - description: Event attributes. + IncidentUserDefinedFieldValidValue: + description: A valid value for an incident user-defined field. properties: - aggregation_key: - description: >- - A string used for aggregation when - [correlating](https://docs.datadoghq.com/service_management/events/correlation/) - events. If you specify a key, events are deduplicated to alerts - based on this key. Limited to 100 characters. - example: aggregation_key_123 - maxLength: 100 - minLength: 1 + description: + description: A detailed description of the valid value. + example: A critical severity incident. type: string - attributes: - $ref: '#/components/schemas/EventPayloadAttributes' - category: - $ref: '#/components/schemas/EventCategory' - integration_id: - $ref: '#/components/schemas/EventPayloadIntegrationId' - message: - description: >- - Free formed text associated with the event. It's suggested to use - `data.attributes.attributes.custom` for well-structured attributes. - Limited to 4000 characters. - example: payment_processed feature flag has been enabled - maxLength: 4000 - minLength: 1 + display_name: + description: The human-readable display name for this value. + example: Critical type: string - tags: - description: >- - A list of tags associated with the event. Maximum of 100 tags - allowed. - - Refer to [Tags - docs](https://docs.datadoghq.com/getting_started/tagging/). - example: - - env:api_client_test - items: - description: A tag. - maxLength: 200 - minLength: 1 - type: string - maxItems: 100 - minItems: 1 - type: array - timestamp: - description: >- - Timestamp when the event occurred. Must follow [ISO - 8601](https://www.iso.org/iso-8601-date-and-time-format.html) - format. - - For example `"2017-01-15T01:30:15.010000Z"`. - - Defaults to the timestamp of receipt. Limited to values no older - than 18 hours. + short_description: + description: A short description of the valid value. + example: Critical type: string - title: - description: The title of the event. Limited to 500 characters. - example: payment_processed feature flag updated - maxLength: 500 - minLength: 1 + value: + description: The identifier that is stored when this option is selected. + example: critical type: string required: - - title - - category - - attributes + - display_name + - value type: object - EventCreateRequestType: - description: Entity type. + IncidentUserDefinedFieldFieldType: + description: The data type of the field. 1=dropdown, 2=multiselect, 3=textbox, 4=textarray, 5=metrictag, 6=autocomplete, 7=number, 8=datetime. enum: - - event - example: event - type: string + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + example: 3 + format: int32 + type: integer x-enum-varnames: - - EVENT - EventCreateResponseAttributes: - description: Event attributes. + - DROPDOWN + - MULTISELECT + - TEXTBOX + - TEXTARRAY + - METRICTAG + - AUTOCOMPLETE + - NUMBER + - DATETIME + IncidentUserDefinedRolePolicy: + description: Policy configuration for a user-defined role. properties: - attributes: - $ref: '#/components/schemas/EventCreateResponseAttributesAttributes' + is_single: + description: Whether this role can only be assigned to one responder at a time. + example: true + type: boolean + required: + - is_single type: object - JSONAPIErrorItemSource: - description: References to the source of the error. + IncidentUserDefinedRoleIncidentTypeRelationship: + description: Relationship to an incident type for a user-defined role. properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string + data: + $ref: '#/components/schemas/IncidentUserDefinedRoleIncidentTypeRelationshipData' + required: + - data type: object - V2EventAttributes: - description: Event attributes. + IncidentImportFieldAttributes: + description: Dynamic fields for which selections can be made, with field names as keys. + additionalProperties: false properties: - attributes: - $ref: '#/components/schemas/V2EventAttributesAttributes' - message: - description: Free-form text associated with the event. - example: The event message - type: string - tags: - description: A list of tags associated with the event. - example: - - env:api_client_test - items: - description: A tag. - type: string - type: array - timestamp: - description: Timestamp when the event occurred. - example: '2017-01-15T01:30:15.010000Z' + value: + description: The single value selected for this field. + example: SEV-1 + nullable: true type: string type: object - IncidentResponseAttributes: - description: The incident's attributes from a response. + IncidentImportVisibility: + default: organization + description: The visibility of the incident. + enum: + - organization + - private + example: organization + type: string + x-enum-varnames: + - ORGANIZATION + - PRIVATE + IncidentSearchResponseFacetsData: + description: Facet data for incidents returned by a search query. properties: - archived: - description: Timestamp of when the incident was archived. - format: date-time - nullable: true - readOnly: true - type: string - case_id: - description: The incident case id. - format: int64 - nullable: true - type: integer - created: - description: Timestamp when the incident was created. - format: date-time - readOnly: true - type: string - customer_impact_duration: - description: >- - Length of the incident's customer impact in seconds. - - Equals the difference between `customer_impact_start` and - `customer_impact_end`. - format: int64 - readOnly: true - type: integer - customer_impact_end: - description: Timestamp when customers were no longer impacted by the incident. - format: date-time - nullable: true - type: string - customer_impact_scope: - description: A summary of the impact customers experienced during the incident. - example: An example customer impact scope - nullable: true - type: string - customer_impact_start: - description: Timestamp when customers began being impacted by the incident. - format: date-time - nullable: true - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - detected: - description: Timestamp when the incident was detected. - format: date-time - nullable: true - type: string + commander: + description: Facet data for incident commander users. + items: + $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' + type: array + created_by: + description: Facet data for incident creator users. + items: + $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' + type: array fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: A condensed view of the user-defined fields attached to incidents. - example: - severity: - type: dropdown - value: SEV-5 - type: object - incident_type_uuid: - description: A unique identifier that represents an incident type. - example: 00000000-0000-0000-0000-000000000000 - type: string - is_test: - description: A flag indicating whether the incident is a test incident. - example: false - type: boolean - modified: - description: Timestamp when the incident was last modified. - format: date-time - readOnly: true - type: string - non_datadog_creator: - $ref: '#/components/schemas/IncidentNonDatadogCreator' - notification_handles: - description: >- - Notification handles that will be notified of the incident during - update. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' + description: Facet data for incident property fields. items: - $ref: '#/components/schemas/IncidentNotificationHandle' - nullable: true + $ref: '#/components/schemas/IncidentSearchResponsePropertyFieldFacetData' + type: array + impact: + description: Facet data for incident impact attributes. + items: + $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' + type: array + last_modified_by: + description: Facet data for incident last modified by users. + items: + $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' + type: array + postmortem: + description: Facet data for incident postmortem existence. + items: + $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' + type: array + responder: + description: Facet data for incident responder users. + items: + $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' type: array - public_id: - description: The monotonically increasing integer ID for the incident. - example: 1 - format: int64 - type: integer - resolved: - description: >- - Timestamp when the incident's state was last changed from active or - stable to resolved or completed. - format: date-time - nullable: true - type: string severity: - $ref: '#/components/schemas/IncidentSeverity' + description: Facet data for incident severity attributes. + items: + $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' + type: array state: - description: The state incident. - nullable: true - type: string - time_to_detect: - description: >- - The amount of time in seconds to detect the incident. - - Equals the difference between `customer_impact_start` and - `detected`. - format: int64 - readOnly: true - type: integer - time_to_internal_response: - description: >- - The amount of time in seconds to call incident after detection. - Equals the difference of `detected` and `created`. - format: int64 - readOnly: true - type: integer + description: Facet data for incident state attributes. + items: + $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' + type: array time_to_repair: - description: >- - The amount of time in seconds to resolve customer impact after - detecting the issue. Equals the difference between - `customer_impact_end` and `detected`. - format: int64 - readOnly: true - type: integer + description: Facet data for incident time to repair metrics. + items: + $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' + type: array time_to_resolve: - description: >- - The amount of time in seconds to resolve the incident after it was - created. Equals the difference between `created` and `resolved`. - format: int64 - readOnly: true - type: integer - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - visibility: - description: The incident visibility status. - nullable: true - type: string + description: Facet data for incident time to resolve metrics. + items: + $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' + type: array + type: object + IncidentSearchResponseIncidentsData: + description: Incident returned by the search. + properties: + data: + $ref: '#/components/schemas/IncidentResponseData' required: - - title + - data type: object - IncidentResponseRelationships: - description: The incident's relationships from a response. + RelationshipToIncidentPostmortem: + description: A relationship reference for postmortems. + example: + data: + id: 00000000-0000-abcd-3000-000000000000 + type: incident_postmortems properties: - attachments: - $ref: '#/components/schemas/RelationshipToIncidentAttachment' - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - impacts: - $ref: '#/components/schemas/RelationshipToIncidentImpacts' - integrations: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - responders: - $ref: '#/components/schemas/RelationshipToIncidentResponders' - user_defined_fields: - $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFields' + data: + $ref: '#/components/schemas/RelationshipToIncidentPostmortemData' + required: + - data type: object - IncidentType: - default: incidents - description: Incident resource type. + AttachmentDataAttributesAttachment: + description: The attachment object. + properties: + documentUrl: + description: The URL of the attachment. + example: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + type: string + title: + description: The title of the attachment. + example: Postmortem IR-123 + type: string + type: object + AttachmentDataAttributesAttachmentType: + description: The type of the attachment. enum: - - incidents - example: incidents + - postmortem + - link + example: postmortem type: string x-enum-varnames: - - INCIDENTS - IncidentUserData: - description: User object returned by the API. + - POSTMORTEM + - LINK + RelationshipToIncident: + description: Relationship to incident. + properties: + data: + $ref: '#/components/schemas/RelationshipToIncidentData' + required: + - data + type: object + CreateAttachmentRequestDataAttributesAttachment: + description: The attachment object for creating an attachment. + properties: + documentUrl: + description: The URL of the attachment. + example: https://app.datadoghq.com/notebook/123/Postmortem-IR-123 + type: string + title: + description: The title of the attachment. + example: Postmortem-IR-123 + type: string + type: object + PostmortemCell: + description: A cell in the postmortem properties: attributes: - $ref: '#/components/schemas/IncidentUserAttributes' + $ref: '#/components/schemas/PostmortemCellAttributes' id: - description: ID of the user. + description: The unique identifier of the cell + example: cell-1 type: string type: - $ref: '#/components/schemas/UsersType' + $ref: '#/components/schemas/PostmortemCellType' type: object - IncidentResponseMetaPagination: - description: Pagination properties. + PatchAttachmentRequestDataAttributesAttachment: + description: The updated attachment object. properties: - next_offset: - description: >- - The index of the first element in the next page of results. Equal to - page size added to the current offset. - example: 1000 - format: int64 - type: integer - offset: - description: The index of the first element in the results. - example: 10 - format: int64 - type: integer - size: - description: Maximum size of pages to return. - example: 1000 - format: int64 - type: integer + documentUrl: + description: The updated URL for the attachment. + example: https://app.datadoghq.com/notebook/124/Postmortem-IR-124 + type: string + title: + description: The updated title for the attachment. + example: Postmortem-IR-124 + type: string type: object - IncidentCreateAttributes: - description: The incident's attributes for a create request. + IncidentPageRoleReference: + description: A reference to an incident role for a page. properties: - customer_impact_scope: - description: >- - Required if `customer_impacted:"true"`. A summary of the impact - customers experienced during the incident. - example: Example customer impact scope - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: >- - A condensed view of the user-defined fields for which to create - initial selections. - example: - severity: - type: dropdown - value: SEV-5 - type: object - incident_type_uuid: - description: >- - A unique identifier that represents an incident type. The default - incident type will be used if this property is not provided. + id: + description: The role identifier. example: 00000000-0000-0000-0000-000000000000 + format: uuid type: string - initial_cells: - description: >- - An array of initial timeline cells to be placed at the beginning of - the incident timeline. + type: + $ref: '#/components/schemas/IncidentPageRoleType' + required: + - type + - id + type: object + IncidentPageTarget: + description: The target recipient for a page. + properties: + identifier: + description: The identifier of the target (handle, UUID, or user UUID). + example: my-team-handle + type: string + type: + $ref: '#/components/schemas/IncidentPageTargetType' + required: + - type + - identifier + type: object + IncidentImpactFieldsObject: + additionalProperties: {} + description: An object mapping impact field names to field values. + example: + customers_impacted: all + products_impacted: + - shopping + - marketing + type: object + IncidentOnCallPageTarget: + description: The target of an on-call page. + properties: + identifier: + description: The identifier of the page target. + example: my-oncall-team + type: string + type: + description: The type of the page target. + example: team_handle + type: string + required: + - type + - identifier + type: object + IncidentIntegrationMetadataMetadata: + description: Incident integration metadata's metadata attribute. + properties: + channels: + description: Array of Slack channels in this integration metadata. + example: [] items: - $ref: '#/components/schemas/IncidentTimelineCellCreateAttributes' + $ref: '#/components/schemas/SlackIntegrationMetadataChannelItem' type: array - is_test: - description: A flag indicating whether the incident is a test incident. - example: false - type: boolean - notification_handles: - description: >- - Notification handles that will be notified of the incident at - creation. + issues: + description: Array of Jira issues in this integration metadata. + example: [] + items: + $ref: '#/components/schemas/JiraIntegrationMetadataIssuesItem' + type: array + teams: + description: Array of Microsoft Teams in this integration metadata. + example: [] + items: + $ref: '#/components/schemas/MSTeamsIntegrationMetadataTeamsItem' + type: array + required: + - channels + - issues + - teams + type: object + IncidentTodoAssigneeArray: + description: Array of todo assignees. + example: + - '@test.user@test.com' + items: + $ref: '#/components/schemas/IncidentTodoAssignee' + type: array + IncidentResponderRoleAssignmentsRelationship: + description: Relationship to role assignments for a responder. + properties: + data: + description: List of role assignment relationship data. + items: + $ref: '#/components/schemas/IncidentResponderRoleAssignmentRelationshipData' + type: array + type: object + IncidentResponderUserRelationship: + description: Relationship to a user for a responder create request. + properties: + data: + $ref: '#/components/schemas/IncidentResponderUserRelationshipData' + required: + - data + type: object + IncidentTimestampType: + description: The type of timestamp to override. + enum: + - detected + - resolved + - declared + example: detected + type: string + x-enum-varnames: + - DETECTED + - RESOLVED + - DECLARED + EscalationPolicyCreateRequestDataAttributesStepsItems: + description: Defines a single escalation step within an escalation policy creation request. Contains assignment strategy, escalation timeout, and a list of targets. + properties: + assignment: + $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' + escalate_after_seconds: + description: Defines how many seconds to wait before escalating to the next step. + example: 3600 + format: int64 + maximum: 36000 + minimum: 60 + type: integer + targets: + description: Specifies the collection of escalation targets for this step. example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' + - users items: - $ref: '#/components/schemas/IncidentNotificationHandle' + $ref: '#/components/schemas/EscalationPolicyStepTarget' type: array - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string required: - - title - - customer_impacted + - targets type: object - IncidentCreateRelationships: - description: >- - The relationships the incident will have with other resources once - created. + DataRelationshipsTeams: + description: Associates teams with this schedule in a data structure. properties: - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - required: - - commander_user + data: + description: An array of team references for this schedule. + items: + $ref: '#/components/schemas/DataRelationshipsTeamsDataItems' + type: array type: object - IncidentNotificationRuleAttributes: - description: The notification rule's attributes. + EscalationPolicyDataRelationshipsSteps: + description: Defines the relationship to a collection of steps within an escalation policy. Contains an array of step data references. properties: - conditions: - $ref: '#/components/schemas/IncidentNotificationRuleConditions' - created: - description: Timestamp when the notification rule was created. - example: '2025-01-15T10:30:00Z' - format: date-time - readOnly: true - type: string - enabled: - description: Whether the notification rule is enabled. - example: true - type: boolean - handles: - $ref: '#/components/schemas/IncidentNotificationRuleHandles' - modified: - description: Timestamp when the notification rule was last modified. - example: '2025-01-15T14:45:00Z' - format: date-time - readOnly: true + data: + description: An array of references to the steps defined in this escalation policy. + items: + $ref: '#/components/schemas/EscalationPolicyDataRelationshipsStepsDataItems' + type: array + type: object + EscalationPolicyStepAttributes: + description: Defines attributes for an escalation policy step, such as assignment strategy and escalation timeout. + properties: + assignment: + $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' + escalate_after_seconds: + description: Specifies how many seconds to wait before escalating to the next step. + format: int64 + type: integer + type: object + EscalationPolicyStepRelationships: + description: Represents the relationship of an escalation policy step to its targets. + properties: + targets: + $ref: '#/components/schemas/EscalationTargets' + type: object + EscalationPolicyStepType: + default: steps + description: Indicates that the resource is of type `steps`. + enum: + - steps + example: steps + type: string + x-enum-varnames: + - STEPS + EscalationPolicyUserAttributes: + description: Provides basic user information for an escalation policy, including a name and email address. + properties: + email: + description: The user's email address. + example: jane.doe@example.com type: string - renotify_on: - $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' - trigger: - description: The trigger event for this notification rule. - example: incident_created_trigger + name: + description: The user's name. + example: Jane Doe type: string - visibility: - $ref: '#/components/schemas/IncidentNotificationRuleAttributesVisibility' + status: + $ref: '#/components/schemas/UserAttributesStatus' + type: object + EscalationPolicyUserType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ConfiguredScheduleTargetAttributes: + description: Attributes for a configured schedule target, including position. + example: + position: previous + properties: + position: + $ref: '#/components/schemas/ScheduleTargetPosition' required: - - conditions - - handles - - visibility - - trigger - - enabled - - created - - modified + - position type: object - IncidentNotificationRuleRelationships: - description: The notification rule's resource relationships. + ConfiguredScheduleTargetRelationships: + description: Represents the relationships of a configured schedule target. properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - notification_template: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' + schedule: + $ref: '#/components/schemas/ConfiguredScheduleTargetRelationshipsSchedule' + required: + - schedule type: object - IncidentNotificationRuleType: - description: Notification rules resource type. + ConfiguredScheduleTargetType: + default: schedule_target + description: Indicates that the resource is of type `schedule_target`. enum: - - incident_notification_rules - example: incident_notification_rules + - schedule_target + example: schedule_target type: string x-enum-varnames: - - INCIDENT_NOTIFICATION_RULES - IncidentNotificationTemplateObject: - description: A notification template object for inclusion in other resources. + - SCHEDULE_TARGET + TeamReferenceAttributes: + description: Encapsulates the basic attributes of a Team reference, such as name, handle, and an optional avatar or description. properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid + avatar: + description: URL or reference for the team's avatar (if available). + type: string + description: + description: A short text describing the team. + type: string + handle: + description: A unique handle/slug for the team. + type: string + name: + description: The full, human-readable name of the team. type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type type: object - IncidentNotificationRuleArrayMetaPage: - description: Pagination metadata. + TeamReferenceType: + default: teams + description: Teams resource type. + enum: + - teams + example: teams + type: string + x-enum-varnames: + - TEAMS + EscalationPolicyUpdateRequestDataAttributesStepsItems: + description: Defines a single escalation step within an escalation policy update request. Contains assignment strategy, escalation timeout, an optional step ID, and a list of targets. properties: - next_offset: - description: The offset for the next page of results. - example: 15 - format: int64 - type: integer - offset: - description: The current offset in the results. - example: 0 - format: int64 - type: integer - size: - description: The number of results returned per page. - example: 15 + assignment: + $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' + escalate_after_seconds: + description: Defines how many seconds to wait before escalating to the next step. + example: 3600 format: int64 + maximum: 36000 + minimum: 60 type: integer - type: object - IncidentNotificationRuleCreateAttributes: - description: The attributes for creating a notification rule. - properties: - conditions: - $ref: '#/components/schemas/IncidentNotificationRuleConditions' - enabled: - default: false - description: Whether the notification rule is enabled. - example: true - type: boolean - handles: - $ref: '#/components/schemas/IncidentNotificationRuleHandles' - renotify_on: - $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' - trigger: - description: The trigger event for this notification rule. - example: incident_created_trigger + id: + description: Specifies the unique identifier of this step. + example: 00000000-aba1-0000-0000-000000000000 type: string - visibility: - $ref: >- - #/components/schemas/IncidentNotificationRuleCreateAttributesVisibility + targets: + description: Specifies the collection of escalation targets for this step. + items: + $ref: '#/components/schemas/EscalationPolicyStepTarget' + type: array required: - - conditions - - handles - - trigger - type: object - IncidentNotificationRuleCreateDataRelationships: - description: The definition of `NotificationRuleCreateDataRelationships` object. - properties: - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - notification_template: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' + - targets type: object - IncidentNotificationTemplateAttributes: - description: The notification template's attributes. + CreatePageRequestDataAttributesTarget: + description: Information about the target to notify (such as a team or user). properties: - category: - description: The category of the notification template. - example: alert - type: string - content: - description: The content body of the notification template. - example: |- - An incident has been declared. - - Title: {{incident.title}} - Severity: {{incident.severity}} - Affected Services: {{incident.services}} - Status: {{incident.state}} - - Please join the incident channel for updates. + identifier: + description: Identifier for the target (for example, team handle or user ID). type: string - created: - description: Timestamp when the notification template was created. - example: '2025-01-15T10:30:00Z' + type: + $ref: '#/components/schemas/OnCallPageTargetType' + type: object + PageUrgency: + default: high + description: On-Call Page urgency level. + enum: + - low + - high + example: high + type: string + x-enum-varnames: + - LOW + - HIGH + ScheduleCreateRequestDataAttributesLayersItems: + description: Describes a schedule layer, including rotation intervals, members, restrictions, and timeline settings. + properties: + effective_date: + description: The date/time when this layer becomes active (in ISO 8601). + example: '2025-01-01T00:00:00Z' format: date-time - readOnly: true type: string - modified: - description: Timestamp when the notification template was last modified. - example: '2025-01-15T14:45:00Z' + end_date: + description: The date/time after which this layer no longer applies (in ISO 8601). format: date-time - readOnly: true type: string + interval: + $ref: '#/components/schemas/LayerAttributesInterval' + members: + description: A list of members who participate in this layer's rotation. + items: + $ref: '#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems' + type: array name: - description: The name of the notification template. - example: Incident Alert Template + description: The name of this layer. + example: Primary On-Call Layer type: string - subject: - description: The subject line of the notification template. - example: '{{incident.severity}} Incident: {{incident.title}}' + restrictions: + description: Zero or more time-based restrictions (for example, only weekdays, during business hours). + items: + $ref: '#/components/schemas/TimeRestriction' + type: array + rotation_start: + description: The date/time when the rotation for this layer starts (in ISO 8601). + example: '2025-01-01T00:00:00Z' + format: date-time + type: string + time_zone: + description: The time zone for this layer. + example: America/New_York type: string required: - name - - subject - - content - - category - - created - - modified - type: object - IncidentNotificationTemplateRelationships: - description: The notification template's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' + - interval + - rotation_start + - effective_date + - members type: object - IncidentNotificationTemplateType: - description: Notification templates resource type. - enum: - - notification_templates - example: notification_templates - type: string - x-enum-varnames: - - NOTIFICATION_TEMPLATES - IncidentNotificationTemplateArrayMetaPage: - description: Pagination metadata. + ScheduleDataRelationshipsLayers: + description: Associates layers with this schedule in a data structure. properties: - total_count: - description: Total number of notification templates. - example: 42 - format: int64 - type: integer - total_filtered_count: - description: Total number of notification templates matching the filter. - example: 15 - format: int64 - type: integer + data: + description: An array of layer references for this schedule. + items: + $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItems' + type: array type: object - IncidentNotificationTemplateCreateAttributes: - description: The attributes for creating a notification template. + LayerAttributes: + description: Describes key properties of a Layer, including rotation details, name, start/end times, and any restrictions. properties: - category: - description: The category of the notification template. - example: alert + effective_date: + description: When the layer becomes active (ISO 8601). + format: date-time type: string - content: - description: The content body of the notification template. - example: |- - An incident has been declared. - - Title: {{incident.title}} - Severity: {{incident.severity}} - Affected Services: {{incident.services}} - Status: {{incident.state}} - - Please join the incident channel for updates. + end_date: + description: When the layer ceases to be active (ISO 8601). + format: date-time type: string + interval: + $ref: '#/components/schemas/LayerAttributesInterval' name: - description: The name of the notification template. - example: Incident Alert Template + description: The name of this layer. + example: Weekend Layer type: string - subject: - description: The subject line of the notification template. - example: '{{incident.severity}} Incident: {{incident.title}}' + restrictions: + description: An optional list of time restrictions for when this layer is in effect. + items: + $ref: '#/components/schemas/TimeRestriction' + type: array + rotation_start: + description: The date/time when the rotation starts (ISO 8601). + format: date-time + type: string + time_zone: + description: The time zone for this layer. + example: America/New_York type: string - required: - - name - - subject - - content - - category type: object - IncidentNotificationTemplateCreateDataRelationships: - description: The definition of `NotificationTemplateCreateDataRelationships` object. + LayerRelationships: + description: Holds references to objects related to the Layer entity, such as its members. properties: - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' + members: + $ref: '#/components/schemas/LayerRelationshipsMembers' type: object - IncidentNotificationTemplateUpdateAttributes: - description: The attributes to update on a notification template. + LayerType: + default: layers + description: Layers resource type. + enum: + - layers + example: layers + type: string + x-enum-varnames: + - LAYERS + ScheduleMemberRelationships: + description: Defines relationships for a schedule member, primarily referencing a single user. properties: - category: - description: The category of the notification template. - example: update - type: string - content: - description: The content body of the notification template. - example: |- - Incident Status Update: - - Title: {{incident.title}} - New Status: {{incident.state}} - Severity: {{incident.severity}} - Services: {{incident.services}} - Commander: {{incident.commander}} - - For more details, visit the incident page. + user: + $ref: '#/components/schemas/ScheduleMemberRelationshipsUser' + type: object + ScheduleMemberType: + default: members + description: Schedule Members resource type. + enum: + - members + example: members + type: string + x-enum-varnames: + - MEMBERS + ScheduleUserAttributes: + description: Provides basic user information for a schedule, including a name and email address. + properties: + email: + description: The user's email address. + example: jane.doe@example.com type: string name: - description: The name of the notification template. - example: Incident Status Update Template - type: string - subject: - description: The subject line of the notification template. - example: 'Incident Update: {{incident.title}} - {{incident.state}}' + description: The user's name. + example: Jane Doe type: string + status: + $ref: '#/components/schemas/UserAttributesStatus' type: object - IncidentTypeAttributes: - description: Incident type's attributes. + ScheduleUserType: + default: users + description: Users resource type. + enum: + - users + example: users + type: string + x-enum-varnames: + - USERS + ScheduleUpdateRequestDataAttributesLayersItems: + description: |- + Represents a layer within a schedule update, including rotation details, members, + and optional restrictions. properties: - createdAt: - description: Timestamp when the incident type was created. + effective_date: + description: When this updated layer takes effect (ISO 8601 format). + example: '2025-02-03T05:00:00Z' format: date-time - readOnly: true - type: string - createdBy: - description: >- - A unique identifier that represents the user that created the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - description: - description: Text that describes the incident type. - example: >- - Any incidents that harm (or have the potential to) the - confidentiality, integrity, or availability of our data. - type: string - is_default: - default: false - description: >- - If true, this incident type will be used as the default incident - type if a type is not specified during the creation of incident - resources. - example: false - type: boolean - lastModifiedBy: - description: >- - A unique identifier that represents the user that last modified the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true type: string - modifiedAt: - description: Timestamp when the incident type was last modified. + end_date: + description: When this updated layer should stop being active (ISO 8601 format). + example: '2025-12-31T00:00:00Z' format: date-time - readOnly: true type: string + id: + description: A unique identifier for the layer being updated. + example: 00000000-0000-0000-0000-000000000001 + type: string + interval: + $ref: '#/components/schemas/LayerAttributesInterval' + members: + description: The members assigned to this layer. + items: + $ref: '#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems' + type: array name: - description: The name of the incident type. - example: Security Incident + description: The name for this layer (for example, "Secondary Coverage"). + example: Primary On-Call Layer + type: string + restrictions: + description: Any time restrictions that define when this layer is active. + items: + $ref: '#/components/schemas/TimeRestriction' + type: array + rotation_start: + description: The date/time at which the rotation begins (ISO 8601 format). + example: '2025-02-01T00:00:00Z' + format: date-time type: string - prefix: - description: >- - The string that will be prepended to the incident title across the - Datadog app. - example: IR - readOnly: true + time_zone: + description: The time zone for this layer. + example: America/New_York type: string required: + - effective_date + - interval + - members - name + - rotation_start type: object - IncidentTypeRelationships: - additionalProperties: {} - description: The incident type's resource relationships. + ShiftDataRelationshipsUser: + description: Defines the relationship between a shift and the user who is working that shift. properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - google_meet_configuration: - $ref: '#/components/schemas/GoogleMeetConfigurationReference' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - microsoft_teams_configuration: - $ref: '#/components/schemas/MicrosoftTeamsConfigurationReference' - zoom_configuration: - $ref: '#/components/schemas/ZoomConfigurationReference' + data: + $ref: '#/components/schemas/ShiftDataRelationshipsUserData' + required: + - data type: object - IncidentTypeType: - default: incident_types - description: Incident type resource type. + ScheduleOnCallRespondersDataRelationshipsResponders: + description: Defines the list of per-position (previous, current, next) responder groups for the schedule. + properties: + data: + description: Array of references to the responder groups included in the response. + items: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationshipsRespondersDataItems' + type: array + type: object + ScheduleOnCallRespondersDataRelationshipsSchedule: + description: Defines the relationship to the schedule this on-call responders lookup was performed for. + properties: + data: + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationshipsScheduleData' + type: object + ScheduleOnCallResponderDataAttributes: + description: Attributes for one position's (previous, current, or next) group of on-call responder shifts. + properties: + position: + $ref: '#/components/schemas/ScheduleTargetPosition' + type: object + ScheduleOnCallResponderDataRelationships: + description: Relationships for a single position's (previous, current, or next) responder group. + properties: + shifts: + $ref: '#/components/schemas/ScheduleOnCallResponderDataRelationshipsShifts' + type: object + ScheduleOnCallResponderDataType: + default: schedule_oncall_responder + description: Represents the resource type for a single position's (previous, current, or next) group of on-call responder shifts. enum: - - incident_types - example: incident_types + - schedule_oncall_responder + example: schedule_oncall_responder type: string x-enum-varnames: - - INCIDENT_TYPES - IncidentTypeUpdateAttributes: - description: Incident type's attributes for updates. + - SCHEDULE_ONCALL_RESPONDER + TeamOnCallRespondersDataRelationshipsEscalations: + description: Defines the escalation policy steps linked to the team's on-call configuration. properties: - createdAt: - description: Timestamp when the incident type was created. - format: date-time - readOnly: true - type: string - createdBy: - description: >- - A unique identifier that represents the user that created the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - description: - description: Text that describes the incident type. - example: >- - Any incidents that harm (or have the potential to) the - confidentiality, integrity, or availability of our data. Note: This - will notify the security team. - type: string - is_default: - description: >- - When true, this incident type will be used as the default type when - an incident type is not specified. - example: false - type: boolean - lastModifiedBy: - description: >- - A unique identifier that represents the user that last modified the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - modifiedAt: - description: Timestamp when the incident type was last modified. - format: date-time - readOnly: true - type: string - name: - description: The name of the incident type. - example: Security Incident - type: string - prefix: - description: >- - The string that will be prepended to the incident title across the - Datadog app. - example: IR - readOnly: true - type: string + data: + description: Array of escalation step references. + items: + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItems' + type: array type: object - IncidentSearchResponseAttributes: - description: Attributes returned by an incident search. + TeamOnCallRespondersDataRelationshipsResponders: + description: Defines the list of users assigned as on-call responders for the team. properties: - facets: - $ref: '#/components/schemas/IncidentSearchResponseFacetsData' - incidents: - description: Incidents returned by the search. + data: + description: Array of user references associated as responders. items: - $ref: '#/components/schemas/IncidentSearchResponseIncidentsData' + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItems' type: array - total: - description: Number of incidents returned by the search. - example: 10 - format: int32 - maximum: 2147483647 - type: integer - required: - - facets - - incidents - - total type: object - IncidentSearchResultsType: - default: incidents_search_results - description: Incident search result type. + EscalationRelationships: + description: Contains the relationships of an escalation object, including its responders. + properties: + responders: + $ref: '#/components/schemas/EscalationRelationshipsResponders' + type: object + EscalationType: + default: escalation_policy_steps + description: Represents the resource type for individual steps in an escalation policy used during incident response. enum: - - incidents_search_results - example: incidents_search_results + - escalation_policy_steps + example: escalation_policy_steps type: string x-enum-varnames: - - INCIDENTS_SEARCH_RESULTS - IncidentUpdateAttributes: - description: The incident's attributes for an update request. + - ESCALATION_POLICY_STEPS + TeamRoutingRulesDataRelationshipsRules: + description: Holds references to a set of routing rules in a relationship. properties: - customer_impact_end: - description: Timestamp when customers were no longer impacted by the incident. - format: date-time + data: + description: An array of references to the routing rules associated with this team. + items: + $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItems' + type: array + type: object + RoutingRuleAttributes: + description: Defines the configurable attributes of a routing rule, such as actions, query, time restriction, and urgency. + properties: + actions: + description: Specifies the list of actions to perform when the routing rule matches. + items: + $ref: '#/components/schemas/RoutingRuleAction' + type: array + query: + description: Defines the query or condition that triggers this routing rule. + type: string + time_restriction: + $ref: '#/components/schemas/TimeRestrictions' nullable: true + urgency: + $ref: '#/components/schemas/Urgency' + type: object + RoutingRuleRelationships: + description: Specifies relationships for a routing rule, linking to associated policy resources. + properties: + policy: + $ref: '#/components/schemas/RoutingRuleRelationshipsPolicy' + type: object + RoutingRuleType: + default: team_routing_rules + description: Team routing rules resource type. + enum: + - team_routing_rules + example: team_routing_rules + type: string + x-enum-varnames: + - TEAM_ROUTING_RULES + TeamRoutingRulesRequestRule: + description: Defines an individual routing rule item that contains the rule data for the request. + properties: + actions: + description: Specifies the list of actions to perform when the routing rule is matched. + items: + $ref: '#/components/schemas/RoutingRuleAction' + type: array + policy_id: + description: Identifies the policy to be applied when this routing rule matches. type: string - customer_impact_scope: - description: A summary of the impact customers experienced during the incident. - example: Example customer impact scope + query: + description: Defines the query or condition that triggers this routing rule. type: string - customer_impact_start: - description: Timestamp when customers began being impacted by the incident. + time_restriction: + $ref: '#/components/schemas/TimeRestrictions' + urgency: + $ref: '#/components/schemas/Urgency' + type: object + NotificationChannelConfig: + description: Defines the configuration for an On-Call notification channel + properties: + formatted_number: + description: The formatted international version of Number (e.g. +33 7 1 23 45 67). + example: '' + type: string + number: + description: The E-164 formatted phone number (e.g. +3371234567) + example: '' + type: string + region: + description: The ISO 3166-1 alpha-2 two-letter country code. + example: '' + type: string + sms_subscribed_at: + description: If present, the date the user subscribed this number to SMS messages format: date-time nullable: true type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. + type: + $ref: '#/components/schemas/NotificationChannelPhoneConfigType' + verified: + description: Indicates whether this phone has been verified by the user in Datadog On-Call example: false type: boolean - detected: - description: Timestamp when the incident was detected. - format: date-time - nullable: true + address: + description: The e-mail address to be notified + example: '' type: string - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: >- - A condensed view of the user-defined fields for which to update - selections. - example: - severity: - type: dropdown - value: SEV-5 - type: object - notification_handles: - description: >- - Notification handles that will be notified of the incident during - update. + formats: + description: Preferred content formats for notifications. example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' + - html items: - $ref: '#/components/schemas/IncidentNotificationHandle' + $ref: '#/components/schemas/NotificationChannelEmailFormatType' type: array - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title + application_name: + description: The name of the application used to receive push notifications + example: '' type: string - type: object - IncidentUpdateRelationships: - description: The incident's relationships for an update request. - properties: - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - integrations: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' - postmortem: - $ref: '#/components/schemas/RelationshipToIncidentPostmortem' - type: object - IncidentAttachmentAttributes: - description: The attributes object for an attachment. - oneOf: - - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' - - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' - IncidentAttachmentRelationships: - description: The incident attachment's relationships. - properties: - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentAttachmentType: - default: incident_attachments - description: The incident attachment resource type. - enum: - - incident_attachments - example: incident_attachments - type: string - x-enum-varnames: - - INCIDENT_ATTACHMENTS - IncidentAttachmentUpdateAttributes: - description: Incident attachment attributes. - oneOf: - - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' - - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' - IncidentIntegrationMetadataAttributes: - description: Incident integration metadata's attributes for a create request. - properties: - created: - description: Timestamp when the incident todo was created. - format: date-time - readOnly: true + device_name: + description: The name of the mobile device being used + example: '' type: string - incident_id: - description: UUID of the incident this integration metadata is connected to. - example: 00000000-aaaa-0000-0000-000000000000 + required: + - type + - number + - formatted_number + - region + - verified + - address + - formats + - device_name + - application_name + type: object + CreateNotificationChannelConfig: + description: Defines the configuration for creating an On-Call notification channel + properties: + number: + description: The E-164 formatted phone number (e.g. +3371234567) + example: '' type: string - integration_type: - description: >- - A number indicating the type of integration this metadata is for. 1 - indicates Slack; - - 8 indicates Jira. - example: 1 - format: int32 - maximum: 9 - type: integer - metadata: - $ref: '#/components/schemas/IncidentIntegrationMetadataMetadata' - modified: - description: Timestamp when the incident todo was last modified. - format: date-time - readOnly: true + type: + $ref: '#/components/schemas/NotificationChannelPhoneConfigType' + address: + description: The e-mail address to be notified + example: '' type: string - status: - description: >- - A number indicating the status of this integration metadata. 0 - indicates unknown; - - 1 indicates pending; 2 indicates complete; 3 indicates manually - created; - - 4 indicates manually updated; 5 indicates failed. - format: int32 - maximum: 5 - type: integer + formats: + description: Preferred content formats for notifications. + example: + - html + items: + $ref: '#/components/schemas/NotificationChannelEmailFormatType' + type: array required: - - integration_type - - metadata - type: object - IncidentIntegrationRelationships: - description: The incident's integration relationships from a response. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' + - type + - number + - address + - formats type: object - IncidentIntegrationMetadataType: - default: incident_integrations - description: Integration metadata resource type. + OnCallNotificationRuleCategory: + default: high_urgency + description: Specifies the category a notification rule will apply to enum: - - incident_integrations - example: incident_integrations + - high_urgency + - low_urgency type: string x-enum-varnames: - - INCIDENT_INTEGRATIONS - IncidentTodoAttributes: - description: Incident todo's attributes. + - HIGH_URGENCY + - LOW_URGENCY + OnCallNotificationRuleChannelSettings: + description: Defines the configuration for a channel associated with a notification rule properties: - assignees: - $ref: '#/components/schemas/IncidentTodoAssigneeArray' - completed: - description: Timestamp when the todo was completed. - example: '2023-03-06T22:00:00.000000+00:00' - nullable: true + method: + $ref: '#/components/schemas/OnCallPhoneNotificationRuleMethod' + type: + $ref: '#/components/schemas/NotificationChannelPhoneConfigType' + required: + - type + - method + type: object + OnCallNotificationRuleChannelRelationship: + description: Relationship object for creating a notification rule + properties: + data: + $ref: '#/components/schemas/OnCallNotificationRuleChannelRelationshipData' + required: + - data + type: object + ServiceDefinitionMeta: + description: Metadata about a service definition. + properties: + github-html-url: + description: GitHub HTML URL. type: string - content: - description: The follow-up task's content. - example: Restore lost data. + ingested-schema-version: + description: Ingestion schema version. type: string - created: - description: Timestamp when the incident todo was created. - format: date-time - readOnly: true + ingestion-source: + description: Ingestion source of the service definition. type: string - due_date: - description: Timestamp when the todo should be completed by. - example: '2023-07-10T05:00:00.000000+00:00' - nullable: true + last-modified-time: + description: Last modified time of the service definition. type: string - incident_id: - description: UUID of the incident this todo is connected to. - example: 00000000-aaaa-0000-0000-000000000000 + origin: + description: User defined origin of the service definition. type: string - modified: - description: Timestamp when the incident todo was last modified. - format: date-time - readOnly: true + origin-detail: + description: User defined origin's detail of the service definition. + type: string + warnings: + description: A list of schema validation warnings. + items: + $ref: '#/components/schemas/ServiceDefinitionMetaWarnings' + type: array + type: object + ServiceDefinitionSchema: + description: Service definition schema. + deprecated: true + properties: + contact: + $ref: '#/components/schemas/ServiceDefinitionV1Contact' + extensions: + additionalProperties: {} + description: Extensions to V1 schema. + example: + myorg/extension: extensionValue + type: object + external-resources: + description: A list of external links related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV1Resource' + type: array + info: + $ref: '#/components/schemas/ServiceDefinitionV1Info' + integrations: + $ref: '#/components/schemas/ServiceDefinitionV1Integrations' + org: + $ref: '#/components/schemas/ServiceDefinitionV1Org' + schema-version: + $ref: '#/components/schemas/ServiceDefinitionV1Version' + tags: + description: A set of custom tags. + example: + - my:tag + - service:tag + items: + description: A custom tag string in `key:value` format. + type: string + type: array + contacts: + description: A list of contacts related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Contact' + type: array + dd-service: + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. + example: my-service + type: string + dd-team: + description: Experimental feature. A Team handle that matches a Team in the Datadog Teams product. + example: my-team + type: string + docs: + description: A list of documentation related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Doc' + type: array + links: + description: A list of links related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Link' + type: array + repos: + description: A list of code repositories related to the services. + items: + $ref: '#/components/schemas/ServiceDefinitionV2Repo' + type: array + team: + description: Team that owns the service. + example: my-team + type: string + application: + description: Identifier for a group of related services serving a product feature, which the service is a part of. + example: my-app + type: string + description: + description: A short description of the service. + example: My service description + type: string + lifecycle: + description: The current life cycle phase of the service. + example: sandbox + type: string + tier: + description: Importance of the service. + example: High + type: string + ci-pipeline-fingerprints: + description: A set of CI fingerprints. + example: + - j88xdEy0J5lc + - eZ7LMljCk8vo + items: + description: A CI pipeline fingerprint string. + type: string + type: array + languages: + description: 'The service''s programming language. Datadog recognizes the following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, and `c++`.' + example: + - dotnet + - go + - java + - js + - php + - python + - ruby + - c++ + items: + description: A programming language identifier. + type: string + type: array + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2Type' + required: + - schema-version + - info + - dd-service + type: object + ServiceDefinitionV2Dot2Opsgenie: + description: Opsgenie integration for the service. + properties: + region: + $ref: '#/components/schemas/ServiceDefinitionV2Dot2OpsgenieRegion' + service-url: + description: Opsgenie service url. + example: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 type: string required: - - content - - assignees + - service-url type: object - IncidentTodoRelationships: - description: The incident's relationships from a response. + ServiceDefinitionV2Dot2Pagerduty: + description: PagerDuty integration for the service. properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' + service-url: + description: PagerDuty service url. + example: https://my-org.pagerduty.com/service-directory/PMyService + type: string type: object - IncidentTodoType: - default: incident_todos - description: Todo resource type. - enum: - - incident_todos - example: incident_todos - type: string - x-enum-varnames: - - INCIDENT_TODOS - EscalationPolicyCreateRequestDataAttributes: - description: >- - Defines the attributes for creating an escalation policy, including its - description, name, resolution behavior, retries, and steps. + ServiceDefinitionV2Dot1Email: + description: Service owner's email. properties: + contact: + description: Contact value. + example: contact@datadoghq.com + type: string name: - description: Specifies the name for the new escalation policy. - example: On-Call Escalation Policy + description: Contact email. + example: Team Email type: string - resolve_page_on_policy_end: - description: >- - Indicates whether the page is automatically resolved when the policy - ends. - type: boolean - retries: - description: >- - Specifies how many times the escalation sequence is retried if there - is no response. - format: int64 - type: integer - steps: - description: >- - A list of escalation steps, each defining assignment, escalation - timeout, and targets for the new policy. - items: - $ref: >- - #/components/schemas/EscalationPolicyCreateRequestDataAttributesStepsItems - type: array + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1EmailType' required: - - name - - steps + - type + - contact type: object - EscalationPolicyCreateRequestDataRelationships: - description: >- - Represents relationships in an escalation policy creation request, - including references to teams. + ServiceDefinitionV2Dot1Slack: + description: Service owner's Slack channel. properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' + contact: + description: Slack Channel. + example: https://yourcompany.slack.com/archives/channel123 + type: string + name: + description: Contact Slack. + example: Team Slack + type: string + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1SlackType' + required: + - type + - contact type: object - EscalationPolicyCreateRequestDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - EscalationPolicyDataAttributes: - description: >- - Defines the main attributes of an escalation policy, such as its name - and behavior on policy end. + ServiceDefinitionV2Dot1MSTeams: + description: Service owner's Microsoft Teams. properties: + contact: + description: Contact value. + example: https://teams.microsoft.com/myteam + type: string name: - description: Specifies the name of the escalation policy. - example: On-Call Escalation Policy + description: Contact Microsoft Teams. + example: My team channel type: string - resolve_page_on_policy_end: - description: >- - Indicates whether the page is automatically resolved when the policy - ends. - type: boolean - retries: - description: >- - Specifies how many times the escalation sequence is retried if there - is no response. - format: int64 - type: integer + type: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeamsType' required: - - name + - type + - contact type: object - EscalationPolicyDataRelationships: - description: >- - Represents the relationships for an escalation policy, including - references to steps and teams. + ServiceDefinitionV2Dot1Opsgenie: + description: Opsgenie integration for the service. properties: - steps: - $ref: '#/components/schemas/EscalationPolicyDataRelationshipsSteps' - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' + region: + $ref: '#/components/schemas/ServiceDefinitionV2Dot1OpsgenieRegion' + service-url: + description: Opsgenie service url. + example: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 + type: string required: - - steps + - service-url type: object - EscalationPolicyDataType: - default: policies - description: Indicates that the resource is of type `policies`. + ServiceDefinitionV2Dot1Pagerduty: + description: PagerDuty integration for the service. + properties: + service-url: + description: PagerDuty service url. + example: https://my-org.pagerduty.com/service-directory/PMyService + type: string + type: object + ServiceDefinitionV2Dot1LinkType: + description: Link type. enum: - - policies - example: policies + - doc + - repo + - runbook + - dashboard + - other + example: runbook type: string x-enum-varnames: - - POLICIES - TeamReference: - description: >- - Provides a reference to a team, including ID, type, and basic - attributes/relationships. + - DOC + - REPO + - RUNBOOK + - DASHBOARD + - OTHER + ServiceDefinitionV2Email: + description: Service owner's email. properties: - attributes: - $ref: '#/components/schemas/TeamReferenceAttributes' - id: - description: The team's unique identifier. + contact: + description: Contact value. + example: contact@datadoghq.com + type: string + name: + description: Contact email. + example: Team Email type: string type: - $ref: '#/components/schemas/TeamReferenceType' + $ref: '#/components/schemas/ServiceDefinitionV2EmailType' required: - type + - contact type: object - EscalationPolicyStep: - description: >- - Represents a single step in an escalation policy, including its - attributes, relationships, and resource type. + ServiceDefinitionV2Slack: + description: Service owner's Slack channel. properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyStepAttributes' - id: - description: Specifies the unique identifier of this escalation policy step. + contact: + description: Slack Channel. + example: https://yourcompany.slack.com/archives/channel123 + type: string + name: + description: Contact Slack. + example: Team Slack type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyStepRelationships' type: - $ref: '#/components/schemas/EscalationPolicyStepType' + $ref: '#/components/schemas/ServiceDefinitionV2SlackType' required: - type + - contact type: object - EscalationPolicyUser: - description: >- - Represents a user object in the context of an escalation policy, - including their `id`, type, and basic attributes. + ServiceDefinitionV2MSTeams: + description: Service owner's Microsoft Teams. properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyUserAttributes' - id: - description: The unique user identifier. + contact: + description: Contact value. + example: https://teams.microsoft.com/myteam + type: string + name: + description: Contact Microsoft Teams. + example: My team channel type: string type: - $ref: '#/components/schemas/EscalationPolicyUserType' + $ref: '#/components/schemas/ServiceDefinitionV2MSTeamsType' required: - type + - contact type: object - EscalationPolicyUpdateRequestDataAttributes: - description: >- - Defines the attributes that can be updated for an escalation policy, - such as description, name, resolution behavior, retries, and steps. + ServiceDefinitionV2Opsgenie: + description: Opsgenie integration for the service. properties: - name: - description: Specifies the name of the escalation policy. - example: On-Call Escalation Policy + region: + $ref: '#/components/schemas/ServiceDefinitionV2OpsgenieRegion' + service-url: + description: Opsgenie service url. + example: https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 type: string - resolve_page_on_policy_end: - description: >- - Indicates whether the page is automatically resolved when the policy - ends. - type: boolean - retries: - description: >- - Specifies how many times the escalation sequence is retried if there - is no response. - format: int64 - type: integer - steps: - description: >- - A list of escalation steps, each defining assignment, escalation - timeout, and targets. - items: - $ref: >- - #/components/schemas/EscalationPolicyUpdateRequestDataAttributesStepsItems - type: array required: - - name - - steps - type: object - EscalationPolicyUpdateRequestDataRelationships: - description: >- - Represents relationships in an escalation policy update request, - including references to teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' + - service-url type: object - EscalationPolicyUpdateRequestDataType: - default: policies - description: Indicates that the resource is of type `policies`. + ServiceDefinitionV2Pagerduty: + description: PagerDuty service URL for the service. + example: https://my-org.pagerduty.com/service-directory/PMyService + type: string + ServiceDefinitionV2LinkType: + description: Link type. enum: - - policies - example: policies + - doc + - wiki + - runbook + - url + - repo + - dashboard + - oncall + - code + - link + example: runbook type: string x-enum-varnames: - - POLICIES - CreatePageRequestDataAttributes: - description: Details about the On-Call Page you want to create. + - DOC + - WIKI + - RUNBOOK + - URL + - REPO + - DASHBOARD + - ONCALL + - CODE + - LINK + SLOReportInterval: + description: The frequency at which report data is to be generated. + enum: + - daily + - weekly + - monthly + example: weekly + type: string + x-enum-varnames: + - DAILY + - WEEKLY + - MONTHLY + SLOReportStatus: + description: The status of the SLO report job. + enum: + - in_progress + - completed + - completed_with_errors + - failed + example: completed + type: string + x-enum-varnames: + - IN_PROGRESS + - COMPLETED + - COMPLETED_WITH_ERRORS + - FAILED + RawErrorBudgetRemaining: + description: The raw error budget remaining for the SLO. properties: - description: - description: A short summary of the issue or context. + unit: + description: The unit of the error budget (for example, `seconds`, `requests`). + example: seconds type: string - tags: - description: Tags to help categorize or filter the page. + value: + description: The numeric value of the remaining error budget. + example: 86400.5 + format: double + type: number + required: + - value + - unit + type: object + StatusPageDataAttributesComponentsItems: + description: A component displayed on a status page. + properties: + components: + description: If the component is of type `group`, the components within the group. items: - type: string + $ref: '#/components/schemas/StatusPageDataAttributesComponentsItemsComponentsItems' type: array - target: - $ref: '#/components/schemas/CreatePageRequestDataAttributesTarget' - title: - description: The title of the page. - example: 'Service: Test is down' - type: string - urgency: - $ref: '#/components/schemas/PageUrgency' - required: - - target - - title - - urgency + id: + description: The ID of the component. + format: uuid + type: string + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' + type: + $ref: '#/components/schemas/CreateComponentRequestDataAttributesType' type: object - CreatePageRequestDataType: - default: pages - description: The type of resource used when creating an On-Call Page. + CreateStatusPageRequestDataAttributesType: + description: The type of the status page controlling how the status page is accessed. enum: - - pages - example: pages + - public + - internal + example: public type: string x-enum-varnames: - - PAGES - CreatePageResponseDataType: - default: pages - description: The type of resource used when creating an On-Call Page. + - PUBLIC + - INTERNAL + CreateStatusPageRequestDataAttributesVisualizationType: + description: The visualization type of the status page. enum: - - pages - example: pages + - bars_and_uptime_percentage + - bars_only + - component_name_only + example: bars_and_uptime_percentage type: string x-enum-varnames: - - PAGES - ScheduleCreateRequestDataAttributes: - description: >- - Describes the main attributes for creating a new schedule, including - name, layers, and time zone. + - BARS_AND_UPTIME_PERCENTAGE + - BARS_ONLY + - COMPONENT_NAME_ONLY + StatusPageDataRelationshipsCreatedByUser: + description: The Datadog user who created the status page. properties: - layers: - description: >- - The layers of On-Call coverage that define rotation intervals and - restrictions. - items: - $ref: >- - #/components/schemas/ScheduleCreateRequestDataAttributesLayersItems - type: array - name: - description: A human-readable name for the new schedule. - example: Team A On-Call - type: string - time_zone: - description: The time zone in which the schedule is defined. - example: America/New_York - type: string + data: + $ref: '#/components/schemas/StatusPageDataRelationshipsCreatedByUserData' required: - - name - - time_zone - - layers + - data type: object - ScheduleCreateRequestDataRelationships: - description: >- - Gathers relationship objects for the schedule creation request, - including the teams to associate. + StatusPageDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the status page. properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' + data: + $ref: '#/components/schemas/StatusPageDataRelationshipsLastModifiedByUserData' + required: + - data type: object - ScheduleCreateRequestDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ScheduleDataAttributes: - description: >- - Provides core properties of a schedule object such as its name and time - zone. + StatusPagesUserAttributes: + description: Attributes of the Datadog user. properties: + email: + description: The email of the Datadog user. + type: string + handle: + description: The handle of the Datadog user. + type: string + icon: + description: The icon of the Datadog user. + type: string name: - description: A short name for the schedule. - example: Primary On-Call + description: The name of the Datadog user. type: string - time_zone: - description: The time zone in which this schedule operates. - example: America/New_York + uuid: + description: The UUID of the Datadog user. type: string type: object - ScheduleDataRelationships: - description: >- - Groups the relationships for a schedule object, referencing layers and - teams. - properties: - layers: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayers' - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleDataType: - default: schedules - description: Schedules resource type. + StatusPagesUserType: + default: users + description: Users resource type. enum: - - schedules - example: schedules + - users + example: users type: string x-enum-varnames: - - SCHEDULES - Layer: - description: >- - Encapsulates a layer resource, holding attributes like rotation details, - plus relationships to the members covering that layer. + - USERS + PaginationMetaPageType: + default: offset_limit + description: The pagination type used for offset-based pagination. + enum: + - offset_limit + example: offset_limit + type: string + x-enum-varnames: + - OFFSET_LIMIT + CreateStatusPageRequestDataAttributesComponentsItems: + description: A component to be created on a status page. properties: - attributes: - $ref: '#/components/schemas/LayerAttributes' + components: + description: If creating a component of type `group`, the components to create within the group. + items: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesComponentsItemsComponentsItems' + type: array id: - description: A unique identifier for this layer. + description: The ID of the component. + format: uuid + readOnly: true type: string - relationships: - $ref: '#/components/schemas/LayerRelationships' + name: + description: The name of the component. + type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' type: - $ref: '#/components/schemas/LayerType' - required: - - type + $ref: '#/components/schemas/CreateComponentRequestDataAttributesType' type: object - ScheduleMember: - description: >- - Represents a single member entry in a schedule, referencing a specific - user. + DegradationDataAttributesComponentsAffectedItems: + description: A component affected by a degradation. properties: id: - description: The unique identifier for this schedule member. + description: The ID of the component. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string - relationships: - $ref: '#/components/schemas/ScheduleMemberRelationships' - type: - $ref: '#/components/schemas/ScheduleMemberType' + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' required: - - type + - id + - status type: object - ScheduleUser: - description: >- - Represents a user object in the context of a schedule, including their - `id`, type, and basic attributes. + DegradationDataAttributesSource: + description: The source of the degradation. properties: - attributes: - $ref: '#/components/schemas/ScheduleUserAttributes' - id: - description: The unique user identifier. + created_at: + description: Timestamp of when the source was created. + example: '' + format: date-time + type: string + source_id: + description: The ID of the source. + example: '' type: string type: - $ref: '#/components/schemas/ScheduleUserType' + $ref: '#/components/schemas/DegradationDataAttributesSourceType' required: + - created_at + - source_id - type type: object - ScheduleUpdateRequestDataAttributes: - description: >- - Defines the updatable attributes for a schedule, such as name, time - zone, and layers. + CreateDegradationRequestDataAttributesStatus: + description: The status of the degradation. + enum: + - investigating + - identified + - monitoring + - resolved + example: investigating + type: string + x-enum-varnames: + - INVESTIGATING + - IDENTIFIED + - MONITORING + - RESOLVED + DegradationDataAttributesUpdatesItems: + description: A status update recorded during a degradation. properties: - layers: - description: The updated list of layers (rotations) for this schedule. + components_affected: + description: The components affected at the time of the update. items: - $ref: >- - #/components/schemas/ScheduleUpdateRequestDataAttributesLayersItems + $ref: '#/components/schemas/DegradationDataAttributesUpdatesItemsComponentsAffectedItems' type: array - name: - description: A short name for the schedule. - example: Primary On-Call + created_at: + description: Timestamp of when the update was created. + format: date-time + readOnly: true type: string - time_zone: - description: The time zone used when interpreting rotation times. - example: America/New_York + deleted_at: + description: The date and time the resource was deleted. type: string - required: - - name - - time_zone - - layers - type: object - ScheduleUpdateRequestDataRelationships: - description: >- - Houses relationships for the schedule update, typically referencing - teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleUpdateRequestDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ShiftDataAttributes: - description: Attributes for an on-call shift. - properties: - end: - description: The end time of the shift. + deleted_by_user_uuid: + description: UUID of the user who deleted the resource. + type: string + description: + description: Description of the update. + type: string + id: + description: Identifier of the update. + format: uuid + readOnly: true + type: string + last_modified_by_user_uuid: + description: UUID of the user who last modified the resource. + type: string + modified_at: + description: Timestamp of when the update was last modified. format: date-time + readOnly: true type: string - start: - description: The start time of the shift. + started_at: + description: Timestamp of when the update started. format: date-time type: string + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' type: object - ShiftDataRelationships: - description: Relationships for an on-call shift. + DegradationDataRelationshipsCreatedByUser: + description: The Datadog user who created the degradation. properties: - user: - $ref: '#/components/schemas/ShiftDataRelationshipsUser' + data: + $ref: '#/components/schemas/DegradationDataRelationshipsCreatedByUserData' + required: + - data type: object - ShiftDataType: - default: shifts - description: Indicates that the resource is of type 'shifts'. - enum: - - shifts - example: shifts - type: string - x-enum-varnames: - - SHIFTS - TeamOnCallRespondersDataRelationships: - description: >- - Relationship objects linked to a team's on-call responder configuration, - including escalations and responders. + DegradationDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the degradation. properties: - escalations: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsEscalations - responders: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsResponders' + data: + $ref: '#/components/schemas/DegradationDataRelationshipsLastModifiedByUserData' + required: + - data type: object - TeamOnCallRespondersDataType: - default: team_oncall_responders - description: >- - Represents the resource type for a group of users assigned to handle - on-call duties within a team. - enum: - - team_oncall_responders - example: team_oncall_responders - type: string - x-enum-varnames: - - TEAM_ONCALL_RESPONDERS - Escalation: - description: Represents an escalation policy step. + DegradationDataRelationshipsStatusPage: + description: The status page the degradation belongs to. properties: - id: - description: Unique identifier of the escalation step. + data: + $ref: '#/components/schemas/DegradationDataRelationshipsStatusPageData' + required: + - data + type: object + DegradationDataRelationshipsTemplate: + description: The template the degradation was created from. + properties: + data: + $ref: '#/components/schemas/DegradationDataRelationshipsTemplateData' + required: + - data + type: object + StatusPageAsIncludedAttributes: + description: The attributes of a status page. + properties: + company_logo: + description: The base64-encoded image data displayed in the company logo. type: string - relationships: - $ref: '#/components/schemas/EscalationRelationships' + components: + description: Components displayed on the status page. + items: + $ref: '#/components/schemas/StatusPageAsIncludedAttributesComponentsItems' + type: array + created_at: + description: Timestamp of when the status page was created. + format: date-time + type: string + custom_domain: + description: If configured, the url that the status page is accessible at. + type: string + custom_domain_enabled: + description: Whether the custom domain is configured. + type: boolean + domain_prefix: + description: The subdomain of the status page's url taking the form `https://{domain_prefix}.statuspage.datadoghq.com`. Globally unique across Datadog Status Pages. + type: string + email_header_image: + description: Base64-encoded image data included in email notifications sent to status page subscribers. + type: string + enabled: + description: Whether the status page is enabled. + type: boolean + favicon: + description: Base64-encoded image data displayed in the browser tab. + type: string + modified_at: + description: Timestamp of when the status page was last modified. + format: date-time + type: string + name: + description: The name of the status page. + type: string + page_url: + description: The url that the status page is accessible at. + type: string + slack_app_icon: + description: The Slack app icon URL for the status page. + type: string + slack_subscriptions_enabled: + description: Whether Slack subscriptions are enabled for the status page. + type: boolean + subscriptions_enabled: + description: Whether users can subscribe to the status page. + type: boolean type: - $ref: '#/components/schemas/EscalationType' - required: - - type + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesType' + visualization_type: + $ref: '#/components/schemas/CreateStatusPageRequestDataAttributesVisualizationType' type: object - TeamRoutingRulesDataRelationships: - description: >- - Specifies relationships for team routing rules, including rule - references. + StatusPageAsIncludedRelationships: + description: The relationships of a status page. properties: - rules: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRules' + created_by_user: + $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsCreatedByUser' + description: The Datadog user who created the status page. + last_modified_by_user: + $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsLastModifiedByUser' + description: The Datadog user who last modified the status page. type: object - TeamRoutingRulesDataType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - RoutingRule: - description: >- - Represents a routing rule, including its attributes, relationships, and - unique identifier. + MaintenanceDataAttributesComponentsAffectedItems: + description: A component affected by a maintenance. properties: - attributes: - $ref: '#/components/schemas/RoutingRuleAttributes' id: - description: Specifies the unique identifier of this routing rule. + description: The ID of the component. Must be a component of type `component`. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string - relationships: - $ref: '#/components/schemas/RoutingRuleRelationships' - type: - $ref: '#/components/schemas/RoutingRuleType' + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: '#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus' required: - - type - type: object - TeamRoutingRulesRequestDataAttributes: - description: >- - Represents the attributes of a request to update or create team routing - rules. - properties: - rules: - description: >- - A list of routing rule items that define how incoming pages should - be handled. - items: - $ref: '#/components/schemas/TeamRoutingRulesRequestRule' - type: array + - id + - status type: object - TeamRoutingRulesRequestDataType: - default: team_routing_rules - description: Team routing rules resource type. + MaintenanceDataAttributesStatus: + description: The status of the maintenance. enum: - - team_routing_rules - example: team_routing_rules + - scheduled + - in_progress + - completed type: string x-enum-varnames: - - TEAM_ROUTING_RULES - IncidentServiceResponseAttributes: - description: The incident service's attributes from a response. + - SCHEDULED + - IN_PROGRESS + - COMPLETED + MaintenanceDataAttributesUpdatesItems: + description: An update made to a maintenance. properties: - created: - description: Timestamp of when the incident service was created. + components_affected: + description: The components affected at the time of the update. + items: + $ref: '#/components/schemas/MaintenanceDataAttributesUpdatesItemsComponentsAffectedItems' + type: array + created_at: + description: Timestamp of when the update was created. format: date-time readOnly: true type: string - modified: - description: Timestamp of when the incident service was modified. + description: + description: Description of the update. + type: string + id: + description: Identifier of the update. + format: uuid + readOnly: true + type: string + manual_transition: + description: Whether the update was applied manually by a user (true) or automatically by the system (false). + readOnly: true + type: boolean + modified_at: + description: Timestamp of when the update was last modified. format: date-time readOnly: true type: string - name: - description: Name of the incident service. - example: service name + started_at: + description: Timestamp of when the update started. + format: date-time + type: string + status: + description: The status of the update. type: string type: object - IncidentServiceRelationships: - description: The incident service's relationships. + MaintenanceDataRelationshipsCreatedByUser: + description: The Datadog user who created the maintenance. properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by: - $ref: '#/components/schemas/RelationshipToUser' - readOnly: true + data: + $ref: '#/components/schemas/MaintenanceDataRelationshipsCreatedByUserData' + required: + - data type: object - IncidentServiceType: - default: services - description: Incident service resource type. - enum: - - services - example: services - type: string - x-enum-varnames: - - SERVICES - IncidentServiceCreateAttributes: - description: The incident service's attributes for a create request. + MaintenanceDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the maintenance. properties: - name: - description: Name of the incident service. - example: an example service name - type: string + data: + $ref: '#/components/schemas/MaintenanceDataRelationshipsLastModifiedByUserData' required: - - name + - data type: object - ServiceDefinitionDataAttributes: - description: Service definition attributes. + MaintenanceDataRelationshipsStatusPage: + description: The status page the maintenance belongs to. properties: - meta: - $ref: '#/components/schemas/ServiceDefinitionMeta' - schema: - $ref: '#/components/schemas/ServiceDefinitionSchema' + data: + $ref: '#/components/schemas/MaintenanceDataRelationshipsStatusPageData' + required: + - data type: object - ServiceDefinitionV2Dot2Contact: - description: Service owner's contacts information. + MaintenanceDataRelationshipsTemplate: + description: The template the maintenance was created from. properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam + data: + $ref: '#/components/schemas/MaintenanceDataRelationshipsTemplateData' + required: + - data + type: object + StatusPagesComponentDataAttributesComponentsItems: + description: A component within a component group. + properties: + id: + description: The ID of the component within the group. + format: uuid + readOnly: true type: string name: - description: Contact Name. - example: My team channel + description: The name of the component within the group. type: string + position: + description: The zero-indexed position of the component within the group. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' type: - description: >- - Contact type. Datadog recognizes the following types: `email`, - `slack`, and `microsoft-teams`. - example: slack - type: string + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType' + type: object + StatusPagesComponentDataAttributesStatus: + description: The status of the component. + enum: + - operational + - degraded + - partial_outage + - major_outage + - maintenance + example: operational + type: string + x-enum-varnames: + - OPERATIONAL + - DEGRADED + - PARTIAL_OUTAGE + - MAJOR_OUTAGE + - MAINTENANCE + CreateComponentRequestDataAttributesType: + description: The type of the component. + enum: + - component + - group + example: component + type: string + x-enum-varnames: + - COMPONENT + - GROUP + StatusPagesComponentDataRelationshipsCreatedByUser: + description: The Datadog user who created the component. + properties: + data: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsCreatedByUserData' required: - - type - - contact + - data type: object - ServiceDefinitionV2Dot2Integrations: - description: Third party integrations that Datadog supports. + StatusPagesComponentDataRelationshipsGroup: + description: The group the component belongs to. properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Pagerduty' + data: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsGroupData' + required: + - data type: object - ServiceDefinitionV2Dot2Link: - description: Service's external links. + StatusPagesComponentDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the component. properties: - name: - description: Link name. - example: Runbook - type: string - provider: - description: Link provider. - example: Github + data: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsLastModifiedByUserData' + required: + - data + type: object + StatusPagesComponentDataRelationshipsStatusPage: + description: The status page the component belongs to. + properties: + data: + $ref: '#/components/schemas/StatusPagesComponentDataRelationshipsStatusPageData' + required: + - data + type: object + StatusPagesComponentGroupAttributes: + description: The attributes of a component group. + properties: + components: + description: If the component is of type `group`, the components within the group. + items: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItems' + type: array + created_at: + description: Timestamp of when the component was created. + format: date-time type: string - type: - description: >- - Link type. Datadog recognizes the following types: `runbook`, `doc`, - `repo`, `dashboard`, and `other`. - example: runbook + modified_at: + description: Timestamp of when the component was last modified. + format: date-time type: string - url: - description: Link URL. - example: https://my-runbook + name: + description: The name of the component. type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' + type: + $ref: '#/components/schemas/CreateComponentRequestDataAttributesType' required: - - name - type - - url type: object - ServiceDefinitionV2Dot2Version: - default: v2.2 - description: Schema version being used. - enum: - - v2.2 - example: v2.2 - type: string - x-enum-varnames: - - V2_2 - ServiceDefinitionV2Dot2Type: - description: The type of service. - example: web - type: string - ServiceDefinitionV2Dot1Contact: - description: Service owner's contacts information. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Email' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Slack' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeams' - ServiceDefinitionV2Dot1Integrations: - description: Third party integrations that Datadog supports. + StatusPagesComponentGroupRelationships: + description: The relationships of a component group. properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Pagerduty' + created_by_user: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsCreatedByUser' + group: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsGroup' + last_modified_by_user: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsLastModifiedByUser' + status_page: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsStatusPage' type: object - ServiceDefinitionV2Dot1Link: - description: Service's external links. + CreateComponentRequestDataAttributesComponentsItems: + description: A component to be created within a group. properties: name: - description: Link name. - example: Runbook - type: string - provider: - description: Link provider. - example: Github + description: The name of the grouped component. + example: '' type: string + position: + description: The zero-indexed position of the grouped component relative to the other components in the group. + example: 0 + format: int64 + type: integer type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1LinkType' - url: - description: Link URL. - example: https://my-runbook - type: string + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType' required: - name + - position - type - - url type: object - ServiceDefinitionV2Dot1Version: - default: v2.1 - description: Schema version being used. - enum: - - v2.1 - example: v2.1 - type: string - x-enum-varnames: - - V2_1 - ServiceDefinitionV2Contact: - description: Service owner's contacts information. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Email' - - $ref: '#/components/schemas/ServiceDefinitionV2Slack' - - $ref: '#/components/schemas/ServiceDefinitionV2MSTeams' - ServiceDefinitionV2Doc: - description: Service documents. + CreateComponentRequestDataRelationshipsGroup: + description: The group to create the component within. properties: - name: - description: Document name. - example: Architecture + data: + $ref: '#/components/schemas/CreateComponentRequestDataRelationshipsGroupData' + required: + - data + type: object + DegradationTemplateDataAttributesComponentsAffectedItems: + description: A component affected by a degradation created from this template. + properties: + id: + description: The ID of the component. + example: '' type: string - provider: - description: Document provider. - example: google drive + name: + description: The name of the component. + readOnly: true type: string - url: - description: Document URL. - example: https://gdrive/mydoc + status: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus' + required: + - id + - status + type: object + DegradationTemplateDataAttributesUpdatesItems: + description: A pre-filled update for a degradation created from this template. + properties: + message: + description: The message of the update. type: string + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' + required: + - status + type: object + DegradationTemplateDataRelationshipsCreatedByUser: + description: The Datadog user who created the degradation template. + properties: + data: + $ref: '#/components/schemas/DegradationTemplateDataRelationshipsCreatedByUserData' + required: + - data + type: object + DegradationTemplateDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the degradation template. + properties: + data: + $ref: '#/components/schemas/DegradationTemplateDataRelationshipsLastModifiedByUserData' required: - - name - - url + - data type: object - ServiceDefinitionV2Integrations: - description: Third party integrations that Datadog supports. + DegradationTemplateDataRelationshipsStatusPage: + description: The status page the degradation template belongs to. properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Pagerduty' + data: + $ref: '#/components/schemas/DegradationTemplateDataRelationshipsStatusPageData' + required: + - data type: object - ServiceDefinitionV2Link: - description: Service's external links. + CreateDegradationTemplateRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation created from this template. properties: - name: - description: Link name. - example: Runbook + id: + description: The ID of the component. Must be a component of type `component`. + example: '' type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2LinkType' - url: - description: Link URL. - example: https://my-runbook + name: + description: The name of the component. + readOnly: true type: string + status: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus' required: - - name - - type - - url + - id + - status type: object - ServiceDefinitionV2Repo: - description: Service code repositories. + CreateDegradationTemplateRequestDataAttributesUpdatesItems: + description: A pre-filled update for a degradation created from this template. properties: - name: - description: Repository name. - example: Source Code + message: + description: The message of the update. type: string - provider: - description: Repository provider. - example: GitHub + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' + required: + - status + type: object + PatchDegradationTemplateRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation created from this template. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: '' type: string - url: - description: Repository URL. - example: https://github.com/DataDog/schema + name: + description: The name of the component. + readOnly: true type: string + status: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus' required: - - name - - url + - id + - status type: object - ServiceDefinitionV2Version: - default: v2 - description: Schema version being used. - enum: - - v2 - example: v2 - type: string - x-enum-varnames: - - V2 - IncidentServiceUpdateAttributes: - description: The incident service's attributes for an update request. + PatchDegradationTemplateRequestDataAttributesUpdatesItems: + description: A pre-filled update for a degradation created from this template. properties: - name: - description: Name of the incident service. - example: an example service name + message: + description: The message of the update. type: string + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' required: - - name + - status type: object - SloReportCreateRequestAttributes: - description: The attributes portion of the SLO report request. + CreateDegradationRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation. properties: - from_ts: - description: The `from` timestamp for the report in epoch seconds. - example: 1690901870 - format: int64 - type: integer - interval: - $ref: '#/components/schemas/SLOReportInterval' - query: - description: >- - The query string used to filter SLO results. Some examples of - queries include `service:` and `slo-name`. - example: slo_type:metric + id: + description: The ID of the component. Must be a component of type `component`. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string - timezone: - description: >- - The timezone used to determine the start and end of each interval. - For example, weekly intervals start at 12am on Sunday in the - specified timezone. - example: America/New_York + name: + description: The name of the component. + readOnly: true type: string - to_ts: - description: The `to` timestamp for the report in epoch seconds. - example: 1706803070 - format: int64 - type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' required: - - query - - from_ts - - to_ts + - id + - status type: object - SLOReportStatusGetResponseAttributes: - description: The attributes portion of the SLO report status response. + CreateDegradationRequestDataRelationshipsTemplate: + description: The template used to create the degradation. properties: - status: - $ref: '#/components/schemas/SLOReportStatus' + data: + $ref: '#/components/schemas/CreateDegradationRequestDataRelationshipsTemplateData' + required: + - data type: object - IncidentTeamResponseAttributes: - description: The incident team's attributes from a response. + CreateBackfilledDegradationRequestDataAttributesUpdatesItems: + description: A backfilled degradation update entry. properties: - created: - description: Timestamp of when the incident team was created. - format: date-time - readOnly: true + components_affected: + description: The components affected. + items: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesComponentsAffectedItems' + type: array + description: + description: A description of the update. type: string - modified: - description: Timestamp of when the incident team was modified. + started_at: + description: Timestamp of when the update occurred. + example: '' format: date-time - readOnly: true + type: string + status: + $ref: '#/components/schemas/CreateDegradationRequestDataAttributesStatus' + required: + - started_at + - status + type: object + CreateBackfilledDegradationRequestDataRelationshipsTemplate: + description: The template used to create the backfilled degradation. + properties: + data: + $ref: '#/components/schemas/CreateBackfilledDegradationRequestDataRelationshipsTemplateData' + required: + - data + type: object + PatchDegradationRequestDataAttributesComponentsAffectedItems: + description: A component affected by a degradation. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string name: - description: Name of the incident team. - example: team name + description: The name of the component. + readOnly: true type: string + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' + required: + - id + - status type: object - IncidentTeamRelationships: - description: The incident team's relationships. + PatchDegradationRequestDataAttributesStatus: + description: The status of the degradation. + enum: + - investigating + - identified + - monitoring + - resolved + type: string + x-enum-varnames: + - INVESTIGATING + - IDENTIFIED + - MONITORING + - RESOLVED + PatchDegradationRequestDataRelationshipsTemplate: + description: The template used to create the degradation. properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by: - $ref: '#/components/schemas/RelationshipToUser' - readOnly: true + data: + $ref: '#/components/schemas/PatchDegradationRequestDataRelationshipsTemplateData' + required: + - data type: object - IncidentTeamType: - default: teams - description: Incident Team resource type. + PatchDegradationUpdateRequestDataAttributesStatus: + description: The status of the degradation update. enum: - - teams - example: teams + - investigating + - identified + - monitoring type: string x-enum-varnames: - - TEAMS - IncidentTeamCreateAttributes: - description: The incident team's attributes for a create request. + - INVESTIGATING + - IDENTIFIED + - MONITORING + DegradationUpdateDataAttributesComponentsAffectedItems: + description: A component affected by a degradation update. properties: + id: + description: The ID of the affected component. + example: '' + type: string name: - description: Name of the incident team. - example: team name + description: The name of the affected component. + readOnly: true type: string + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' required: - - name + - id + - status type: object - IncidentTeamUpdateAttributes: - description: The incident team's attributes for an update request. + DegradationUpdateDataRelationshipsUser: + description: A user relationship of a degradation update. properties: - name: - description: Name of the incident team. - example: team name - type: string + data: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsUserData' required: - - name + - data type: object - CaseObjectAttributes: - additionalProperties: - items: - type: string - type: array - description: The definition of `CaseObjectAttributes` object. + DegradationUpdateDataRelationshipsDegradation: + description: The degradation relationship of a degradation update. + properties: + data: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsDegradationData' + required: + - data type: object - JiraIssue: - description: Jira issue attached to case - nullable: true + DegradationUpdateDataRelationshipsStatusPage: + description: The status page relationship of a degradation update. properties: - result: - $ref: '#/components/schemas/JiraIssueResult' - status: - $ref: '#/components/schemas/Case3rdPartyTicketStatus' - readOnly: true + data: + $ref: '#/components/schemas/DegradationUpdateDataRelationshipsStatusPageData' + required: + - data type: object - CasePriority: - default: NOT_DEFINED - description: Case priority - enum: - - NOT_DEFINED - - P1 - - P2 - - P3 - - P4 - - P5 - example: NOT_DEFINED - type: string - x-enum-varnames: - - NOT_DEFINED - - P1 - - P2 - - P3 - - P4 - - P5 - ServiceNowTicket: - description: ServiceNow ticket attached to case - nullable: true + MaintenanceTemplateDataRelationshipsCreatedByUser: + description: The Datadog user who created the maintenance template. properties: - result: - $ref: '#/components/schemas/ServiceNowTicketResult' - status: - $ref: '#/components/schemas/Case3rdPartyTicketStatus' - readOnly: true + data: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationshipsCreatedByUserData' + required: + - data type: object - CaseStatus: - description: Case status - enum: - - OPEN - - IN_PROGRESS - - CLOSED - example: OPEN - type: string - x-enum-varnames: - - OPEN - - IN_PROGRESS - - CLOSED - CaseType: - description: Case type - enum: - - STANDARD - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - NullableUserRelationship: - description: Relationship to user. - nullable: true + MaintenanceTemplateDataRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the maintenance template. + properties: + data: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationshipsLastModifiedByUserData' + required: + - data + type: object + MaintenanceTemplateDataRelationshipsStatusPage: + description: The status page the maintenance template belongs to. + properties: + data: + $ref: '#/components/schemas/MaintenanceTemplateDataRelationshipsStatusPageData' + required: + - data + type: object + CreateMaintenanceRequestDataAttributesComponentsAffectedItems: + description: A component affected by a maintenance. + properties: + id: + description: The ID of the component. Must be a component of type `component`. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: '#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus' + required: + - id + - status + type: object + CreateMaintenanceRequestDataRelationshipsTemplate: + description: The template used to create the maintenance. properties: data: - $ref: '#/components/schemas/NullableUserRelationshipData' + $ref: '#/components/schemas/CreateMaintenanceRequestDataRelationshipsTemplateData' required: - data type: object - ProjectRelationship: - description: Relationship to project + CreateBackfilledMaintenanceRequestDataAttributesUpdatesItems: + description: A backfilled maintenance update entry. + properties: + components_affected: + description: The components affected. + items: + $ref: '#/components/schemas/CreateMaintenanceRequestDataAttributesComponentsAffectedItems' + type: array + description: + description: A description of the update. + example: '' + type: string + started_at: + description: Timestamp of when the update occurred. + example: '' + format: date-time + type: string + status: + $ref: '#/components/schemas/CreateMaintenanceRequestDataAttributesUpdatesItemsStatus' + required: + - description + - started_at + - status + type: object + CreateBackfilledMaintenanceRequestDataRelationshipsTemplate: + description: The template used to create the backfilled maintenance. properties: data: - $ref: '#/components/schemas/ProjectRelationshipData' + $ref: '#/components/schemas/CreateBackfilledMaintenanceRequestDataRelationshipsTemplateData' required: - data type: object - RelationshipToTeamLinks: - description: Relationship between a team and a team link + PatchMaintenanceRequestDataAttributesComponentsAffectedItems: + description: A component affected by a maintenance. properties: - data: - description: Related team links - items: - $ref: '#/components/schemas/RelationshipToTeamLinkData' - type: array - links: - $ref: '#/components/schemas/TeamRelationshipsLinks' + id: + description: The ID of the component. Must be a component of type `component`. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + name: + description: The name of the component. + readOnly: true + type: string + status: + $ref: '#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus' + required: + - id + - status type: object - UsersRelationship: - description: Relationship to users. + PatchMaintenanceRequestDataRelationshipsTemplate: + description: The template used to create the maintenance. properties: data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/UserRelationshipData' - type: array + $ref: '#/components/schemas/PatchMaintenanceRequestDataRelationshipsTemplateData' required: - data type: object - DowntimeDisplayTimezone: - default: UTC - description: >- - The timezone in which to display the downtime's start and end times in - Datadog applications. This is not used - - as an offset for scheduling. - example: America/New_York - nullable: true - type: string - DowntimeMessage: - description: >- - A message to include with notifications for this downtime. Email - notifications can be sent to specific users - - by using the same `@username` notation as events. - example: Message about the downtime - nullable: true - type: string - DowntimeMonitorIdentifier: - description: Monitor identifier for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeMonitorIdentifierId' - - $ref: '#/components/schemas/DowntimeMonitorIdentifierTags' - DowntimeMuteFirstRecoveryNotification: - description: If the first recovery notification during a downtime should be muted. - example: false - type: boolean - DowntimeNotifyEndStates: - description: >- - States that will trigger a monitor notification when the - `notify_end_types` action occurs. - example: - - alert - - warn - items: - $ref: '#/components/schemas/DowntimeNotifyEndStateTypes' - type: array - DowntimeNotifyEndTypes: - description: >- - Actions that will trigger a monitor notification if the downtime is in - the `notify_end_types` state. - example: - - canceled - - expired - items: - $ref: '#/components/schemas/DowntimeNotifyEndStateActions' - type: array - DowntimeScheduleResponse: - description: >- - The schedule that defines when the monitor starts, stops, and recurs. - There are two types of schedules: - - one-time and recurring. Recurring schedules may have up to five - RRULE-based recurrences. If no schedules are - - provided, the downtime will begin immediately and never end. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesResponse' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeResponse' - DowntimeScope: - description: >- - The scope to which the downtime applies. Must follow the [common search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - example: env:(staging OR prod) AND datacenter:us-east-1 - type: string - DowntimeStatus: - description: The current status of the downtime. + MaintenanceUpdateDataAttributesStatus: + description: The status of the maintenance update. enum: - - active - - canceled - - ended - scheduled - example: active + - in_progress + - completed + - canceled type: string x-enum-varnames: - - ACTIVE - - CANCELED - - ENDED - SCHEDULED - DowntimeRelationshipsCreatedBy: - description: The user who created the downtime. + - IN_PROGRESS + - COMPLETED + - CANCELED + MaintenanceUpdateDataRelationshipsUser: + description: A user relationship of a maintenance update. properties: data: - $ref: '#/components/schemas/DowntimeRelationshipsCreatedByData' + $ref: '#/components/schemas/MaintenanceUpdateDataRelationshipsUserData' + required: + - data type: object - DowntimeRelationshipsMonitor: - description: The monitor identified by the downtime. + MaintenanceUpdateDataRelationshipsMaintenance: + description: The parent maintenance of the update. properties: data: - $ref: '#/components/schemas/DowntimeRelationshipsMonitorData' + $ref: '#/components/schemas/MaintenanceUpdateDataRelationshipsMaintenanceData' + required: + - data type: object - UserAttributes: - description: Attributes of user object returned by the API. + SLOTimeSliceCondition: + description: |- + The time-slice condition, composed of 3 parts: 1. the metric timeseries query, 2. the comparator, + and 3. the threshold. Optionally, a fourth part, the query interval, can be provided. + example: + comparator: < + query: + formulas: + - formula: query2/query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{*} by {env}.as_count() + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.errors{*} by {env}.as_count() + threshold: 5 + properties: + comparator: + $ref: '#/components/schemas/SLOTimeSliceComparator' + query: + $ref: '#/components/schemas/SLOTimeSliceQuery' + query_interval_seconds: + $ref: '#/components/schemas/SLOTimeSliceInterval' + threshold: + description: The threshold value to which each SLI value will be compared. + example: 5 + format: double + type: number + required: + - comparator + - threshold + - query + type: object + SLOCountDefinition: + description: |- + A count-based (metric) SLI specification, composed of three parts: the good events formula, + the bad or total events formula, and the underlying queries. + Exactly one of `total_events_formula` or `bad_events_formula` must be provided. + example: + bad_events_formula: query2 + good_events_formula: query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count() + additionalProperties: false + properties: + good_events_formula: + $ref: '#/components/schemas/SLOFormula' + queries: + example: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count() + items: + $ref: '#/components/schemas/SLODataSourceQueryDefinition' + minItems: 1 + type: array + total_events_formula: + $ref: '#/components/schemas/SLOFormula' + description: The total events formula. Bad events queries can be defined using the `bad_events_formula` field as an alternative. Only one of `total_events_formula` or `bad_events_formula` must be provided. + bad_events_formula: + $ref: '#/components/schemas/SLOFormula' + description: The bad events formula (recommended). Total events queries can be defined using the `total_events_formula` field as an alternative. Only one of `total_events_formula` or `bad_events_formula` must be provided. + required: + - good_events_formula + - total_events_formula + - queries + - bad_events_formula + type: object + SLOCorrectionCategory: + description: Category the SLO correction belongs to. + enum: + - Scheduled Maintenance + - Outside Business Hours + - Deployment + - Other + example: Scheduled Maintenance + type: string + x-enum-varnames: + - SCHEDULED_MAINTENANCE + - OUTSIDE_BUSINESS_HOURS + - DEPLOYMENT + - OTHER + SLOCorrectionResponseAttributesModifier: + description: Modifier of the object. + nullable: true properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean email: - description: Email of the user. + description: Email of the Modifier. type: string handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time + description: Handle of the Modifier. type: string name: - description: Name of the user. - nullable: true - type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true + description: Name of the Modifier. type: string - verified: - description: Whether the user is verified. - type: boolean type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. + SearchSLOResponseDataAttributesFacets: + description: Facets properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' + all_tags: + description: All tags associated with an SLO. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString' + type: array + creator_name: + description: Creator of an SLO. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString' + type: array + env_tags: + description: Tags with the `env` tag key. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString' + type: array + service_tags: + description: Tags with the `service` tag key. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString' + type: array + slo_type: + description: Type of SLO. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectInt' + type: array + target: + description: SLO Target + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectInt' + type: array + team_tags: + description: Tags with the `team` tag key. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString' + type: array + timeframe: + description: Timeframes of SLOs. + items: + $ref: '#/components/schemas/SearchSLOResponseDataAttributesFacetsObjectString' + type: array type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - DowntimeMonitorIncludedAttributes: - description: Attributes of the monitor identified by the downtime. + SearchServiceLevelObjective: + description: A service level objective data container. properties: - name: - description: The name of the monitor identified by the downtime. - example: A monitor name + data: + $ref: '#/components/schemas/SearchServiceLevelObjectiveData' + type: object + SLOErrorBudgetRemainingData: + additionalProperties: + description: Remaining error budget. + format: double + type: number + description: A mapping of threshold `timeframe` to the remaining error budget. + example: + 7d: 100 + type: object + SLOHistoryResponseErrorWithType: + description: An object describing the error with error type and error message. + properties: + error_message: + description: A message with more details about the error. + example: '' type: string + error_type: + description: Type of the error. + example: '' + type: string + required: + - error_type + - error_message type: object - DowntimeIncludedMonitorType: - default: monitors - description: Monitor resource type. - enum: - - monitors - example: monitors - type: string - x-enum-varnames: - - MONITORS - DowntimeScheduleCreateRequest: - description: Schedule for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesCreateRequest' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' - DowntimeScheduleUpdateRequest: - description: Schedule for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesUpdateRequest' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' - IssuesSearchRequestDataAttributesOrderBy: - description: The attribute to sort the search results by. - enum: - - TOTAL_COUNT - - FIRST_SEEN - - IMPACTED_SESSIONS - - PRIORITY - example: IMPACTED_SESSIONS - type: string - x-enum-varnames: - - TOTAL_COUNT - - FIRST_SEEN - - IMPACTED_SESSIONS - - PRIORITY - IssuesSearchRequestDataAttributesPersona: - description: Persona for the search. Either track(s) or persona(s) must be specified. + SLOHistoryMetricsSeries: + description: |- + A representation of `metric` based SLO timeseries for the provided queries. + This is the same response type from `batch_query` endpoint. + properties: + count: + description: Count of submitted metrics. + example: 0 + format: int64 + type: integer + metadata: + $ref: '#/components/schemas/SLOHistoryMetricsSeriesMetadata' + sum: + description: Total sum of the query. + example: 0 + format: double + type: number + values: + description: The query values for each metric. + example: [] + items: + description: A metric name and its value. + format: double + type: number + type: array + required: + - count + - sum + - values + type: object + MonitorAlertTriggerAttributes: + description: Attributes for a monitor alert trigger. + properties: + event_id: + description: The event ID associated with the monitor alert. + example: '1234567890123456789' + type: string + event_ts: + description: The timestamp of the event in Unix milliseconds. + example: 1700000000000 + format: int64 + type: integer + monitor_id: + description: The monitor ID that triggered the alert. + example: 12345678 + format: int64 + type: integer + required: + - monitor_id + - event_id + - event_ts + type: object + TriggerType: + description: The type of trigger for the investigation. enum: - - ALL - - BROWSER - - MOBILE - - BACKEND - example: BACKEND + - monitor_alert_trigger + example: monitor_alert_trigger type: string x-enum-varnames: - - ALL - - BROWSER - - MOBILE - - BACKEND - IssuesSearchRequestDataAttributesTrack: - description: >- - Track of the events to query. Either track(s) or persona(s) must be - specified. + - MONITOR_ALERT_TRIGGER + JiraIssueResult: + description: Jira issue information + properties: + issue_id: + description: Jira issue ID + type: string + issue_key: + description: Jira issue key + type: string + issue_url: + description: Jira issue URL + type: string + project_key: + description: Jira project key + type: string + type: object + Case3rdPartyTicketStatus: + default: IN_PROGRESS + description: Case status enum: - - trace - - logs - - rum - example: trace + - IN_PROGRESS + - COMPLETED + - FAILED + example: COMPLETED + readOnly: true type: string x-enum-varnames: - - TRACE - - LOGS - - RUM - IssuesSearchResultIssueRelationship: - description: Relationship between the search result and the corresponding issue. + - IN_PROGRESS + - COMPLETED + - FAILED + ServiceNowTicketResult: + description: ServiceNow ticket information properties: - data: - $ref: '#/components/schemas/IssueReference' + sys_target_link: + description: Link to the Incident created on ServiceNow + type: string + type: object + NullableUserRelationshipData: + description: Relationship to user object. + nullable: true + properties: + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/UserResourceType' required: - - data + - id + - type type: object - IssueUserAttributes: - description: Object containing the information of a user. + CaseCountGroupValue: + description: A single value within a count group, representing the number of cases with that specific field value. properties: - email: - description: Email of the user. - example: user@company.com + count: + description: Count of cases for this value. + example: 42 + format: int64 + type: integer + value: + description: The group value. + example: OPEN type: string - handle: - description: Handle of the user. - example: User Handle + required: + - value + - count + type: object + ProjectColumnsConfigColumnsItems: + description: Configuration for a single column in a project board view. + properties: + sort: + $ref: '#/components/schemas/ProjectColumnsConfigColumnsItemsSort' + sort_field: + description: The field used to sort items in this column. type: string - name: - description: Name of the user. - example: User Name + type: + description: The type of column. type: string type: object - IssueUserType: - description: Type of the object - enum: - - user - example: user - type: string - x-enum-varnames: - - USER - IssueTeamAttributes: - description: Object containing the information of a team. + AutoCloseInactiveCases: + description: Auto-close inactive cases settings. properties: - handle: - description: The team's identifier. - example: team-handle + enabled: + description: Whether auto-close is enabled. + type: boolean + max_inactive_time_in_secs: + description: Maximum inactive time in seconds before auto-closing. + format: int64 + type: integer + type: object + AutoTransitionAssignedCases: + description: Auto-transition assigned cases settings. + properties: + auto_transition_assigned_cases_on_self_assigned: + description: Whether to auto-transition cases when self-assigned. + type: boolean + type: object + IntegrationIncident: + description: Incident integration settings. + properties: + auto_escalation_query: + description: Query for auto-escalation. type: string - name: - description: The name of the team. - example: Team Name + default_incident_commander: + description: Default incident commander. type: string - summary: - description: A brief summary of the team, derived from its description. - example: This is a team. + enabled: + description: Whether incident integration is enabled. + type: boolean + field_mappings: + description: List of mappings between incident fields and case fields. + items: + $ref: '#/components/schemas/IntegrationIncidentFieldMappingsItems' + type: array + incident_type: + description: Incident type. type: string + severity_config: + $ref: '#/components/schemas/IntegrationIncidentSeverityConfig' type: object - IssueTeamType: - description: Type of the object. - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - IssueLanguage: - description: Programming language associated with the issue. - enum: - - BRIGHTSCRIPT - - C - - C_PLUS_PLUS - - C_SHARP - - CLOJURE - - DOT_NET - - ELIXIR - - ERLANG - - GO - - GROOVY - - HASKELL - - HCL - - JAVA - - JAVASCRIPT - - JVM - - KOTLIN - - OBJECTIVE_C - - PERL - - PHP - - PYTHON - - RUBY - - RUST - - SCALA - - SWIFT - - TERRAFORM - - TYPESCRIPT - - UNKNOWN - example: PYTHON - type: string - x-enum-varnames: - - BRIGHTSCRIPT - - C - - C_PLUS_PLUS - - C_SHARP - - CLOJURE - - DOT_NET - - ELIXIR - - ERLANG - - GO - - GROOVY - - HASKELL - - HCL - - JAVA - - JAVASCRIPT - - JVM - - KOTLIN - - OBJECTIVE_C - - PERL - - PHP - - PYTHON - - RUBY - - RUST - - SCALA - - SWIFT - - TERRAFORM - - TYPESCRIPT - - UNKNOWN - IssuePlatform: - description: Platform associated with the issue. - enum: - - ANDROID - - BACKEND - - BROWSER - - FLUTTER - - IOS - - REACT_NATIVE - - ROKU - - UNKNOWN - example: BACKEND - type: string - x-enum-varnames: - - ANDROID - - BACKEND - - BROWSER - - FLUTTER - - IOS - - REACT_NATIVE - - ROKU - - UNKNOWN - IssueState: - description: State of the issue - enum: - - OPEN - - ACKNOWLEDGED - - RESOLVED - - IGNORED - - EXCLUDED - example: RESOLVED - type: string - x-enum-varnames: - - OPEN - - ACKNOWLEDGED - - RESOLVED - - IGNORED - - EXCLUDED - IssueAssigneeRelationship: - description: Relationship between the issue and assignee. + IntegrationJira: + description: Jira integration settings. + properties: + auto_creation: + $ref: '#/components/schemas/IntegrationJiraAutoCreation' + enabled: + description: Whether Jira integration is enabled. + type: boolean + metadata: + $ref: '#/components/schemas/IntegrationJiraMetadata' + sync: + $ref: '#/components/schemas/IntegrationJiraSync' + type: object + IntegrationMonitor: + description: Monitor integration settings. + properties: + auto_resolve_enabled: + description: Whether auto-resolve is enabled. + type: boolean + case_type_id: + description: Case type ID for monitor integration. + type: string + enabled: + description: Whether monitor integration is enabled. + type: boolean + handle: + description: Monitor handle. + type: string + type: object + IntegrationOnCall: + description: On-Call integration settings. properties: - data: - $ref: '#/components/schemas/IssueUserReference' - required: - - data + auto_assign_on_call: + description: Whether to auto-assign on-call. + type: boolean + enabled: + description: Whether On-Call integration is enabled. + type: boolean + escalation_queries: + description: List of escalation queries for routing cases to on-call responders. + items: + $ref: '#/components/schemas/IntegrationOnCallEscalationQueriesItems' + type: array type: object - IssueCaseRelationship: - description: Relationship between the issue and case. + IntegrationServiceNow: + description: ServiceNow integration settings. properties: - data: - $ref: '#/components/schemas/IssueCaseReference' - required: - - data + assignment_group: + description: Assignment group. + type: string + auto_creation: + $ref: '#/components/schemas/IntegrationServiceNowAutoCreation' + enabled: + description: Whether ServiceNow integration is enabled. + type: boolean + instance_name: + description: ServiceNow instance name. + type: string + sync_config: + $ref: '#/components/schemas/IntegrationServiceNowSyncConfig' type: object - IssueTeamOwnersRelationship: - description: Relationship between the issue and teams. + ProjectNotificationSettings: + description: Project notification settings. properties: - data: - description: Array of teams that are owners of the issue. + destinations: + description: Notification destinations (1=email, 2=slack, 3=in-app). items: - $ref: '#/components/schemas/IssueTeamReference' + description: Notification channel identifier (1=email, 2=slack, 3=in-app). + format: int64 + type: integer type: array + enabled: + description: Whether notifications are enabled. + type: boolean + notify_on_case_assignment: + description: Whether to send a notification when a case is assigned. + type: boolean + notify_on_case_closed: + description: Whether to send a notification when a case is closed. + type: boolean + notify_on_case_comment: + description: Whether to send a notification when a comment is added to a case. + type: boolean + notify_on_case_comment_mention: + description: Whether to send a notification when a user is mentioned in a case comment. + type: boolean + notify_on_case_priority_change: + description: Whether to send a notification when a case's priority changes. + type: boolean + notify_on_case_status_change: + description: Whether to send a notification when a case's status changes. + type: boolean + notify_on_case_unassignment: + description: Whether to send a notification when a case is unassigned. + type: boolean + type: object + RelationshipToTeamLinkData: + description: Relationship between a link and a team + properties: + id: + description: The team link's identifier + example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + type: string + type: + $ref: '#/components/schemas/TeamLinkType' required: - - data + - id + - type type: object - IssueCaseAttributes: - description: Object containing the information of a case. + TeamRelationshipsLinks: + description: Links attributes. properties: - archived_at: - description: Timestamp of when the case was archived. - example: '2025-01-01T00:00:00Z' - format: date-time + related: + description: Related link. + example: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links type: string - closed_at: - description: Timestamp of when the case was closed. - example: '2025-01-01T00:00:00Z' - format: date-time + type: object + UserRelationshipData: + description: Relationship to user object. + properties: + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-0000-000000000000 type: string - created_at: - description: Timestamp of when the case was created. - example: '2025-01-01T00:00:00Z' - format: date-time + type: + $ref: '#/components/schemas/UserResourceType' + required: + - id + - type + type: object + CaseNotificationRuleRecipientData: + description: Recipient data + properties: + channel: + description: Slack channel name type: string - creation_source: - description: Source of the case creation. - example: ERROR_TRACKING + channel_id: + description: Slack channel ID type: string - description: - description: Description of the case. + channel_name: + description: Microsoft Teams channel name type: string - due_date: - description: Due date of the case. - example: '2025-01-01' + connector_name: + description: Microsoft Teams connector name type: string - insights: - description: Insights of the case. - items: - $ref: '#/components/schemas/IssueCaseInsight' - type: array - jira_issue: - $ref: '#/components/schemas/IssueCaseJiraIssue' - key: - description: Key of the case. - example: ET-123 + email: + description: Email address type: string - modified_at: - description: Timestamp of when the case was last modified. - example: '2025-01-01T00:00:00Z' - format: date-time + name: + description: HTTP webhook name type: string - priority: - $ref: '#/components/schemas/CasePriority' - status: - $ref: '#/components/schemas/CaseStatus' - title: - description: Title of the case. - example: 'Error: HTTP error' + service_name: + description: PagerDuty service name type: string - type: - description: Type of the case. - example: ERROR_TRACKING_ISSUE + team_id: + description: Microsoft Teams team ID + type: string + team_name: + description: Microsoft Teams team name + type: string + tenant_id: + description: Microsoft Teams tenant ID + type: string + tenant_name: + description: Microsoft Teams tenant name + type: string + workspace: + description: Slack workspace name + type: string + workspace_id: + description: Slack workspace ID type: string type: object - IssueCaseRelationships: - description: Resources related to a case. - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - created_by: - $ref: '#/components/schemas/NullableUserRelationship' - modified_by: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - type: object - IssueCaseResourceType: - description: Type of the object. - enum: - - case - example: case - type: string - x-enum-varnames: - - CASE - EventAttributes: - description: Object description of attributes from your event. + CaseNotificationRuleTriggerData: + description: Trigger data properties: - aggregation_key: - description: Aggregation key of the event. + change_type: + description: Change type (added, removed, changed) type: string - date_happened: - description: >- - POSIX timestamp of the event. Must be sent as an integer (no - quotation marks). - - Limited to events no older than 18 hours. - format: int64 - type: integer - device_name: - description: A device name. + field: + description: Field name for attribute value changed trigger type: string - duration: - description: >- - The duration between the triggering of the event and its recovery in - nanoseconds. - format: int64 - type: integer - event_object: - description: The event title. - example: Did you hear the news today? + from_status: + description: Status ID to transition from type: string - evt: - $ref: '#/components/schemas/Event' - hostname: - description: |- - Host name to associate with the event. - Any tags associated with the host are also applied to this event. + from_status_name: + description: Status name to transition from type: string - monitor: - $ref: '#/components/schemas/MonitorType' - monitor_groups: - description: List of groups referred to in the event. - items: - description: Group referred to in the event. - type: string - nullable: true - type: array - monitor_id: - description: >- - ID of the monitor that triggered the event. When an event isn't - related to a monitor, this field is empty. - format: int64 - nullable: true - type: integer - priority: - $ref: '#/components/schemas/EventPriority' - related_event_id: - description: Related event ID. - format: int64 - type: integer - service: - description: Service that triggered the event. - example: datadog-api + to_status: + description: Status ID to transition to type: string - source_type_name: - description: >- - The type of event being posted. - - For example, `nagios`, `hudson`, `jenkins`, `my_apps`, `chef`, - `puppet`, `git` or `bitbucket`. - - The list of standard source attribute values is [available - here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). + to_status_name: + description: Status name to transition to type: string - sourcecategory: - description: >- - Identifier for the source of the event, such as a monitor alert, an - externally-submitted event, or an integration. + type: object + AutomationRuleActionData: + description: Configuration for the action to execute, dependent on the action type. + properties: + agent_type: + description: The type of AI agent to assign. Required when the action type is `ASSIGN_AGENT`. type: string - status: - $ref: '#/components/schemas/EventStatusType' - tags: - description: A list of tags to apply to the event. - example: - - environment:test - items: - description: A tag. - type: string - type: array - timestamp: - description: POSIX timestamp of your event in milliseconds. - example: 1652274265000 - format: int64 - type: integer - title: - description: The event title. - example: Oh boy! + assigned_agent_id: + description: The identifier of the AI agent to assign to the case. Required when the action type is `ASSIGN_AGENT`. + type: string + handle: + description: The handle of the Datadog workflow to execute. Required when the action type is `EXECUTE_WORKFLOW`. + example: workflow-handle-123 type: string type: object - EventPayloadAttributes: - description: >- - JSON object for category-specific attributes. Schema is different per - event category. - oneOf: - - $ref: '#/components/schemas/ChangeEventCustomAttributes' - - $ref: '#/components/schemas/AlertEventCustomAttributes' - EventCategory: - description: Event category identifying the type of event. - enum: - - change - - alert - example: change - type: string - x-enum-varnames: - - CHANGE - - ALERT - EventPayloadIntegrationId: - description: Integration ID sourced from integration manifests. + AutomationRuleActionType: + description: The type of automated action to perform when the rule triggers. `EXECUTE_WORKFLOW` runs a Datadog workflow; `ASSIGN_AGENT` assigns an AI agent to the case. enum: - - custom-events - example: custom-events + - EXECUTE_WORKFLOW + - ASSIGN_AGENT + example: EXECUTE_WORKFLOW type: string x-enum-varnames: - - CUSTOM_EVENTS - EventCreateResponseAttributesAttributes: - description: JSON object for category-specific attributes. - properties: - evt: - $ref: '#/components/schemas/EventCreateResponseAttributesAttributesEvt' - type: object - V2EventAttributesAttributes: - description: JSON object for category-specific attributes. - oneOf: - - $ref: '#/components/schemas/ChangeEventAttributes' - - $ref: '#/components/schemas/AlertEventAttributes' - IncidentFieldAttributes: - description: >- - Dynamic fields for which selections can be made, with field names as - keys. - oneOf: - - $ref: '#/components/schemas/IncidentFieldAttributesSingleValue' - - $ref: '#/components/schemas/IncidentFieldAttributesMultipleValue' - IncidentNonDatadogCreator: - description: Incident's non Datadog creator. - nullable: true + - EXECUTE_WORKFLOW + - ASSIGN_AGENT + AutomationRuleTriggerData: + description: Additional configuration for the trigger, dependent on the trigger type. For `STATUS_TRANSITIONED` triggers, specify `from_status_name` and `to_status_name`. For `ATTRIBUTE_VALUE_CHANGED` triggers, specify `field` and `change_type`. properties: - image_48_px: - description: Non Datadog creator `48px` image. + approval_type: + description: The approval outcome to match. Used with `CASE_REVIEW_APPROVED` triggers. type: string - name: - description: Non Datadog creator name. + change_type: + description: 'The kind of attribute change to match. Allowed values: `VALUE_ADDED`, `VALUE_DELETED`, `ANY_CHANGES`. Used with `ATTRIBUTE_VALUE_CHANGED` triggers.' + type: string + field: + description: The case attribute field name to monitor for changes. Used with `ATTRIBUTE_VALUE_CHANGED` triggers. + type: string + from_status_name: + description: The originating status name. Used with `STATUS_TRANSITIONED` triggers to match transitions from this status. + type: string + to_status_name: + description: The destination status name. Used with `STATUS_TRANSITIONED` triggers to match transitions to this status. type: string type: object - IncidentNotificationHandle: - description: A notification handle that will be notified at incident creation. + AutomationRuleTriggerType: + description: The case event that activates the automation rule. + enum: + - CASE_CREATED + - STATUS_TRANSITIONED + - ATTRIBUTE_VALUE_CHANGED + - EVENT_CORRELATION_SIGNAL_CORRELATED + - CASE_REVIEW_APPROVED + - COMMENT_ADDED + example: CASE_CREATED + type: string + x-enum-varnames: + - CASE_CREATED + - STATUS_TRANSITIONED + - ATTRIBUTE_VALUE_CHANGED + - EVENT_CORRELATION_SIGNAL_CORRELATED + - CASE_REVIEW_APPROVED + - COMMENT_ADDED + CustomAttributeSelectOption: + description: A selectable option for a SELECT-type custom attribute. properties: - display_name: - description: The name of the notified handle. - example: Jane Doe + value: + description: Option value. + example: us-east-1 type: string - handle: - description: >- - The handle used for the notification. This includes an email - address, Slack channel, or workflow. - example: '@test.user@test.com' + required: + - value + type: object + TimelineCellAuthorUser: + description: A user who authored a timeline cell. + properties: + content: + $ref: '#/components/schemas/TimelineCellAuthorUserContent' + type: + $ref: '#/components/schemas/TimelineCellAuthorUserType' + type: object + TimelineCellContentComment: + description: The content of a comment timeline cell. + properties: + message: + description: The text content of the comment. Supports Markdown formatting. type: string type: object - IncidentSeverity: - description: The incident severity. + CustomAttributeStringValue: + description: A string value for a TEXT, URL, or SELECT-type custom attribute. + type: string + CustomAttributeMultiStringValue: + description: An array of string values for a multi-value TEXT, URL, or SELECT-type custom attribute. + items: + description: TEXT/URL/NUMBER/SELECT Value + type: string + type: array + CustomAttributeNumberValue: + description: A numeric value for a NUMBER-type custom attribute. + format: double + type: number + CustomAttributeMultiNumberValue: + description: An array of numeric values for a multi-value NUMBER-type custom attribute. + items: + description: NUMBER value + format: double + type: number + type: array + CaseInsightType: + description: The type of Datadog resource linked to the case as contextual evidence. Each type corresponds to a different Datadog product signal (for example, a security finding, a monitor alert, or an incident). enum: - - UNKNOWN - - SEV-0 - - SEV-1 - - SEV-2 - - SEV-3 - - SEV-4 - - SEV-5 - example: UNKNOWN + - SECURITY_SIGNAL + - MONITOR + - EVENT_CORRELATION + - ERROR_TRACKING + - CLOUD_COST_RECOMMENDATION + - INCIDENT + - SENSITIVE_DATA_SCANNER_ISSUE + - EVENT + - WATCHDOG_STORY + - WIDGET + - SECURITY_FINDING + - INSIGHT_SCORECARD_CAMPAIGN + - RESOURCE_POLICY + - APM_RECOMMENDATION + - SCM_URL + - PROFILING_DOWNSIZING_EXPERIMENT + example: SECURITY_SIGNAL type: string x-enum-varnames: - - UNKNOWN - - SEV_0 - - SEV_1 - - SEV_2 - - SEV_3 - - SEV_4 - - SEV_5 - RelationshipToIncidentAttachment: - description: A relationship reference for attachments. + - SECURITY_SIGNAL + - MONITOR + - EVENT_CORRELATION + - ERROR_TRACKING + - CLOUD_COST_RECOMMENDATION + - INCIDENT + - SENSITIVE_DATA_SCANNER_ISSUE + - EVENT + - WATCHDOG_STORY + - WIDGET + - SECURITY_FINDING + - INSIGHT_SCORECARD_CAMPAIGN + - RESOURCE_POLICY + - APM_RECOMMENDATION + - SCM_URL + - PROFILING_DOWNSIZING_EXPERIMENT + ChangeRequestDecisionRelationshipData: + description: Change request decision relationship data. properties: - data: - description: An array of incident attachments. - items: - $ref: '#/components/schemas/RelationshipToIncidentAttachmentData' - type: array + id: + description: The decision UUID. + example: decision-id-0 + type: string + type: + $ref: '#/components/schemas/ChangeRequestDecisionResourceType' required: - - data + - id + - type type: object - NullableRelationshipToUser: - description: Relationship to user. + ChangeRequestUserRelationshipData: + description: User relationship data. nullable: true properties: - data: - $ref: '#/components/schemas/NullableRelationshipToUserData' + id: + description: The user UUID. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + description: The user resource type. + example: user + type: string required: - - data + - id + - type type: object - RelationshipToUser: - description: Relationship to user. + ChangeRequestIncludedUserAttributes: + description: Attributes of an included user. properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' + email: + description: The email of the user. + example: john.doe@example.com + type: string + handle: + description: The handle of the user. + example: john.doe@example.com + type: string + name: + description: The name of the user. + example: John Doe + type: string required: - - data + - name + - email + - handle type: object - RelationshipToIncidentImpacts: - description: Relationship to impacts. + ChangeRequestDecisionResponseAttributes: + description: Attributes of a change request decision in a response. properties: - data: - description: An array of incident impacts. - items: - $ref: '#/components/schemas/RelationshipToIncidentImpactData' - type: array + change_request_status: + $ref: '#/components/schemas/ChangeRequestDecisionStatusType' + decided_at: + description: Timestamp of when the decision was made. + example: '2024-01-02T00:00:00Z' + format: date-time + type: string + decision_reason: + description: The reason for the decision. + example: LGTM + type: string + deleted_at: + description: Timestamp of when the decision was deleted. + example: '0001-01-01T00:00:00Z' + format: date-time + type: string + request_reason: + description: The reason for requesting the decision. + example: Please review this change + type: string + requested_at: + description: Timestamp of when the decision was requested. + example: '2024-01-01T00:00:00Z' + format: date-time + type: string required: - - data + - change_request_status + - request_reason + - decision_reason + - requested_at + - decided_at + - deleted_at type: object - RelationshipToIncidentIntegrationMetadatas: - description: A relationship reference for multiple integration metadata objects. - example: - data: - - id: 00000000-abcd-0005-0000-000000000000 - type: incident_integrations - - id: 00000000-abcd-0006-0000-000000000000 - type: incident_integrations + ChangeRequestDecisionRelationships: + description: Relationships of a change request decision. properties: - data: - description: Integration metadata relationship array - example: - - id: 00000000-abcd-0003-0000-000000000000 - type: incident_integrations - - id: 00000000-abcd-0004-0000-000000000000 - type: incident_integrations - items: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadataData' - type: array - required: - - data - type: object - RelationshipToIncidentResponders: - description: Relationship to incident responders. + modified_by: + $ref: '#/components/schemas/ChangeRequestUserRelationship' + requested_by_user: + $ref: '#/components/schemas/ChangeRequestUserRelationship' + requested_user: + $ref: '#/components/schemas/ChangeRequestUserRelationship' + required: + - requested_user + - requested_by_user + - modified_by + type: object + ChangeRequestDecisionStatusType: + description: The status of a change request decision. + enum: + - REQUESTED + - APPROVED + - DECLINED + example: REQUESTED + type: string + x-enum-varnames: + - REQUESTED + - APPROVED + - DECLINED + DowntimeMonitorIdentifierId: + additionalProperties: {} + description: Object of the monitor identifier. properties: - data: - description: An array of incident responders. - items: - $ref: '#/components/schemas/RelationshipToIncidentResponderData' - type: array + monitor_id: + description: ID of the monitor to prevent notifications. + example: 123 + format: int64 + type: integer required: - - data + - monitor_id type: object - RelationshipToIncidentUserDefinedFields: - description: Relationship to incident user defined fields. + DowntimeMonitorIdentifierTags: + additionalProperties: {} + description: Object of the monitor tags. properties: - data: - description: An array of user defined fields. + monitor_tags: + description: |- + A list of monitor tags. For example, tags that are applied directly to monitors, + not tags that are used in monitor queries (which are filtered by the scope parameter), to which the downtime applies. + The resulting downtime applies to monitors that match **all** provided monitor tags. Setting `monitor_tags` + to `[*]` configures the downtime to mute all monitors for the given scope. + example: + - service:postgres + - team:frontend items: - $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFieldData' + description: A list of monitor tags. + example: service:postgres + type: string + minItems: 1 type: array required: - - data - type: object - IncidentUserAttributes: - description: Attributes of user object returned by the API. - properties: - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - name: - description: Name of the user. - nullable: true - type: string - uuid: - description: UUID of the user. - type: string + - monitor_tags type: object - IncidentTimelineCellCreateAttributes: - description: The timeline cell's attributes for a create request. - oneOf: - - $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributes' - IncidentNotificationRuleConditions: - description: The conditions that trigger this notification rule. - example: - - field: severity - values: - - SEV-1 - - SEV-2 - items: - $ref: '#/components/schemas/IncidentNotificationRuleConditionsItems' - type: array - IncidentNotificationRuleHandles: - description: The notification handles (targets) for this rule. - example: - - '@team-email@company.com' - - '@slack-channel' - items: - description: A notification handle (email, Slack channel, etc.). - type: string - type: array - IncidentNotificationRuleRenotifyOn: - description: List of incident fields that trigger re-notification when changed. - example: - - status - - severity - items: - description: An incident field name. - type: string - type: array - IncidentNotificationRuleAttributesVisibility: - description: The visibility of the notification rule. + DowntimeNotifyEndStateTypes: + description: State that will trigger a monitor notification when the `notify_end_types` action occurs. enum: - - all - - organization - - private - example: organization + - alert + - no data + - warn + example: alert type: string x-enum-varnames: - - ALL - - ORGANIZATION - - PRIVATE - RelationshipToIncidentType: - description: Relationship to an incident type. + - ALERT + - NO_DATA + - WARN + DowntimeNotifyEndStateActions: + description: Action that will trigger a monitor notification if the downtime is in the `notify_end_types` state. + enum: + - canceled + - expired + example: canceled + type: string + x-enum-varnames: + - CANCELED + - EXPIRED + DowntimeScheduleRecurrencesResponse: + description: A recurring downtime schedule definition. properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentTypeData' + current_downtime: + $ref: '#/components/schemas/DowntimeScheduleCurrentDowntimeResponse' + recurrences: + description: A list of downtime recurrences. + items: + $ref: '#/components/schemas/DowntimeScheduleRecurrenceResponse' + maxItems: 5 + minItems: 1 + type: array + timezone: + default: UTC + description: |- + The timezone in which to schedule the downtime. This affects recurring start and end dates. + Must match `display_timezone`. + example: America/New_York + type: string required: - - data + - recurrences type: object - RelationshipToIncidentNotificationTemplate: - description: A relationship reference to a notification template. + DowntimeScheduleOneTimeResponse: + description: A one-time downtime definition. properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplateData' + end: + description: ISO-8601 Datetime to end the downtime. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true + type: string + start: + description: ISO-8601 Datetime to start the downtime. + example: '2020-01-02T03:04:00.000Z' + format: date-time + type: string required: - - data + - start type: object - IncidentNotificationRuleCreateAttributesVisibility: - description: The visibility of the notification rule. - enum: - - all - - organization - - private - example: organization - type: string - x-enum-varnames: - - ALL - - ORGANIZATION - - PRIVATE - GoogleMeetConfigurationReference: - description: A reference to a Google Meet Configuration resource. + DowntimeRelationshipsCreatedByData: + description: Data for the user who created the downtime. nullable: true properties: - data: - $ref: '#/components/schemas/GoogleMeetConfigurationReferenceData' - required: - - data + id: + description: User ID of the downtime creator. + example: 00000000-0000-1234-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/UsersType' type: object - MicrosoftTeamsConfigurationReference: - description: A reference to a Microsoft Teams Configuration resource. + DowntimeRelationshipsMonitorData: + description: Data for the monitor. nullable: true properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsConfigurationReferenceData' - required: - - data + id: + description: Monitor ID of the downtime. + example: '12345' + type: string + type: + $ref: '#/components/schemas/DowntimeIncludedMonitorType' type: object - ZoomConfigurationReference: - description: A reference to a Zoom configuration resource. - nullable: true + RelationshipToOrganization: + description: Relationship to an organization. properties: data: - $ref: '#/components/schemas/ZoomConfigurationReferenceData' + $ref: '#/components/schemas/RelationshipToOrganizationData' required: - data type: object - IncidentSearchResponseFacetsData: - description: Facet data for incidents returned by a search query. + RelationshipToOrganizations: + description: Relationship to organizations. properties: - commander: - description: Facet data for incident commander users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - created_by: - description: Facet data for incident creator users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - fields: - description: Facet data for incident property fields. - items: - $ref: '#/components/schemas/IncidentSearchResponsePropertyFieldFacetData' - type: array - impact: - description: Facet data for incident impact attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - last_modified_by: - description: Facet data for incident last modified by users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - postmortem: - description: Facet data for incident postmortem existence. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - responder: - description: Facet data for incident responder users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - severity: - description: Facet data for incident severity attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - state: - description: Facet data for incident state attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - time_to_repair: - description: Facet data for incident time to repair metrics. - items: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' - type: array - time_to_resolve: - description: Facet data for incident time to resolve metrics. + data: + description: Relationships to organization objects. + example: [] items: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' + $ref: '#/components/schemas/RelationshipToOrganizationData' type: array - type: object - IncidentSearchResponseIncidentsData: - description: Incident returned by the search. - properties: - data: - $ref: '#/components/schemas/IncidentResponseData' required: - data type: object - RelationshipToIncidentPostmortem: - description: A relationship reference for postmortems. - example: - data: - id: 00000000-0000-abcd-3000-000000000000 - type: incident_postmortems + RelationshipToUsers: + description: Relationship to users. properties: data: - $ref: '#/components/schemas/RelationshipToIncidentPostmortemData' - required: - - data - type: object - IncidentAttachmentPostmortemAttributes: - description: The attributes object for a postmortem attachment. - properties: - attachment: - $ref: >- - #/components/schemas/IncidentAttachmentsPostmortemAttributesAttachmentObject - attachment_type: - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttachmentType' - required: - - attachment_type - - attachment - type: object - IncidentAttachmentLinkAttributes: - description: The attributes object for a link attachment. - properties: - attachment: - $ref: >- - #/components/schemas/IncidentAttachmentLinkAttributesAttachmentObject - attachment_type: - $ref: '#/components/schemas/IncidentAttachmentLinkAttachmentType' - modified: - description: Timestamp when the incident attachment link was last modified. - format: date-time - readOnly: true - type: string - required: - - attachment_type - - attachment - type: object - IncidentIntegrationMetadataMetadata: - description: Incident integration metadata's metadata attribute. - oneOf: - - $ref: '#/components/schemas/SlackIntegrationMetadata' - - $ref: '#/components/schemas/JiraIntegrationMetadata' - - $ref: '#/components/schemas/MSTeamsIntegrationMetadata' - IncidentTodoAssigneeArray: - description: Array of todo assignees. - example: - - '@test.user@test.com' - items: - $ref: '#/components/schemas/IncidentTodoAssignee' - type: array - EscalationPolicyCreateRequestDataAttributesStepsItems: - description: >- - Defines a single escalation step within an escalation policy creation - request. Contains assignment strategy, escalation timeout, and a list of - targets. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Defines how many seconds to wait before escalating to the next step. - example: 3600 - format: int64 - type: integer - targets: - description: Specifies the collection of escalation targets for this step. - example: - - users + description: Relationships to user objects. + example: [] items: - $ref: '#/components/schemas/EscalationPolicyStepTarget' + $ref: '#/components/schemas/RelationshipToUserData' type: array required: - - targets + - data type: object - DataRelationshipsTeams: - description: Associates teams with this schedule in a data structure. + RelationshipToRoles: + description: Relationship to roles. properties: data: - description: An array of team references for this schedule. + description: An array containing type and the unique identifier of a role. items: - $ref: '#/components/schemas/DataRelationshipsTeamsDataItems' + $ref: '#/components/schemas/RelationshipToRoleData' type: array type: object - EscalationPolicyDataRelationshipsSteps: - description: >- - Defines the relationship to a collection of steps within an escalation - policy. Contains an array of step data references. + DowntimeScheduleRecurrencesCreateRequest: + description: A recurring downtime schedule definition. properties: - data: - description: >- - An array of references to the steps defined in this escalation - policy. + recurrences: + description: A list of downtime recurrences. items: - $ref: >- - #/components/schemas/EscalationPolicyDataRelationshipsStepsDataItems + $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' type: array + timezone: + default: UTC + description: The timezone in which to schedule the downtime. + example: America/New_York + type: string + required: + - recurrences type: object - TeamReferenceAttributes: - description: >- - Encapsulates the basic attributes of a Team reference, such as name, - handle, and an optional avatar or description. + DowntimeScheduleOneTimeCreateUpdateRequest: + additionalProperties: false + description: A one-time downtime definition. properties: - avatar: - description: URL or reference for the team's avatar (if available). - type: string - description: - description: A short text describing the team. - type: string - handle: - description: A unique handle/slug for the team. + end: + description: |- + ISO-8601 Datetime to end the downtime. Must include a UTC offset of zero. If not provided, the + downtime continues forever. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true type: string - name: - description: The full, human-readable name of the team. + start: + description: |- + ISO-8601 Datetime to start the downtime. Must include a UTC offset of zero. If not provided, the + downtime starts the moment it is created. + example: '2020-01-02T03:04:00.000Z' + format: date-time + nullable: true type: string type: object - TeamReferenceType: - default: teams - description: Teams resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - EscalationPolicyStepAttributes: - description: >- - Defines attributes for an escalation policy step, such as assignment - strategy and escalation timeout. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: >- - Specifies how many seconds to wait before escalating to the next - step. - format: int64 - type: integer + DowntimeScheduleRecurrencesUpdateRequest: + additionalProperties: false + description: A recurring downtime schedule definition. + properties: + recurrences: + description: A list of downtime recurrences. + items: + $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' + type: array + timezone: + default: UTC + description: The timezone in which to schedule the downtime. + example: America/New_York + type: string type: object - EscalationPolicyStepRelationships: - description: Represents the relationship of an escalation policy step to its targets. + IssueReference: + description: The issue the search result corresponds to. properties: - targets: - $ref: '#/components/schemas/EscalationTargets' + id: + description: Issue identifier. + example: c1726a66-1f64-11ee-b338-da7ad0900002 + type: string + type: + $ref: '#/components/schemas/IssueType' + required: + - id + - type type: object - EscalationPolicyStepType: - default: steps - description: Indicates that the resource is of type `steps`. - enum: - - steps - example: steps - type: string - x-enum-varnames: - - STEPS - EscalationPolicyUserAttributes: - description: >- - Provides basic user information for an escalation policy, including a - name and email address. + IssueUserReference: + description: The user the issue is assigned to. properties: - email: - description: The user's email address. - example: jane.doe@example.com + id: + description: User identifier. + example: 87cb11a0-278c-440a-99fe-701223c80296 type: string - name: - description: The user's name. - example: Jane Doe + type: + $ref: '#/components/schemas/IssueUserType' + required: + - id + - type + type: object + IssueCaseReference: + description: The case the issue is attached to. + properties: + id: + description: Case identifier. + example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 type: string - status: - $ref: '#/components/schemas/UserAttributesStatus' + type: + $ref: '#/components/schemas/IssueCaseResourceType' + required: + - id + - type type: object - EscalationPolicyUserType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - EscalationPolicyUpdateRequestDataAttributesStepsItems: - description: >- - Defines a single escalation step within an escalation policy update - request. Contains assignment strategy, escalation timeout, an optional - step ID, and a list of targets. + IssueTeamReference: + description: A team that owns the issue. properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Defines how many seconds to wait before escalating to the next step. - example: 3600 - format: int64 - type: integer id: - description: Specifies the unique identifier of this step. - example: 00000000-aba1-0000-0000-000000000000 + description: Team identifier. + example: 221b0179-6447-4d03-91c3-3ca98bf60e8a type: string - targets: - description: Specifies the collection of escalation targets for this step. - items: - $ref: '#/components/schemas/EscalationPolicyStepTarget' - type: array + type: + $ref: '#/components/schemas/IssueTeamType' required: - - targets + - id + - type type: object - CreatePageRequestDataAttributesTarget: - description: Information about the target to notify (such as a team or user). + IssueCaseInsight: + description: Insight of the case. properties: - identifier: - description: Identifier for the target (for example, team handle or user ID). + ref: + description: Reference of the insight. + example: /error-tracking?issueId=2841440d-e780-4fe2-96cd-6a8c1d194da5 + type: string + resource_id: + description: Insight identifier. + example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 type: string type: - $ref: '#/components/schemas/OnCallPageTargetType' + description: Type of the insight. + example: ERROR_TRACKING + type: string type: object - PageUrgency: - default: high - description: On-Call Page urgency level. - enum: - - low - - high - example: high - type: string - x-enum-varnames: - - LOW - - HIGH - ScheduleCreateRequestDataAttributesLayersItems: - description: >- - Describes a schedule layer, including rotation intervals, members, - restrictions, and timeline settings. + IssueCaseJiraIssue: + description: Jira issue of the case. properties: - effective_date: - description: The date/time when this layer becomes active (in ISO 8601). - example: '2025-01-01T00:00:00Z' - format: date-time + error_message: + description: Error message set when the Jira issue creation fails. + example: '' type: string - end_date: - description: >- - The date/time after which this layer no longer applies (in ISO - 8601). - format: date-time + result: + $ref: '#/components/schemas/IssueCaseJiraIssueResult' + status: + description: Creation status of the Jira issue. + example: COMPLETED + type: string + type: object + IssueCaseLinearIssue: + description: Linear issue of the case. + properties: + error_message: + description: Error message set when the Linear issue creation fails. + example: '' + type: string + result: + $ref: '#/components/schemas/IssueCaseLinearIssueResult' + status: + description: Creation status of the Linear issue. + example: COMPLETED + type: string + type: object + Event: + description: The metadata associated with a request. + properties: + id: + description: Event ID. + example: '6509751066204996294' type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - members: - description: A list of members who participate in this layer's rotation. - items: - $ref: >- - #/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems - type: array name: - description: The name of this layer. - example: Primary On-Call Layer + description: The event name. type: string - restrictions: - description: >- - Zero or more time-based restrictions (for example, only weekdays, - during business hours). - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time when the rotation for this layer starts (in ISO 8601). - example: '2025-01-01T00:00:00Z' - format: date-time + source_id: + description: Event source ID. + example: 36 + format: int64 + type: integer + type: + description: Event type. + example: error_tracking_alert type: string - required: - - name - - interval - - rotation_start - - effective_date - - members type: object - ScheduleDataRelationshipsLayers: - description: Associates layers with this schedule in a data structure. + MonitorType: + description: Attributes from the monitor that triggered the event. + nullable: true properties: - data: - description: An array of layer references for this schedule. + created_at: + description: The POSIX timestamp of the monitor's creation in nanoseconds. + example: 1646318692000 + format: int64 + type: integer + group_status: + description: Monitor group status used when there is no `result_groups`. + format: int32 + maximum: 2147483647 + type: integer + groups: + description: Groups to which the monitor belongs. items: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItems' + description: A group. + type: string type: array - type: object - LayerAttributes: - description: >- - Describes key properties of a Layer, including rotation details, name, - start/end times, and any restrictions. - properties: - effective_date: - description: When the layer becomes active (ISO 8601). - format: date-time - type: string - end_date: - description: When the layer ceases to be active (ISO 8601). - format: date-time + id: + description: The monitor ID. + format: int64 + type: integer + message: + description: The monitor message. type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' + modified: + description: The monitor's last-modified timestamp. + format: int64 + type: integer name: - description: The name of this layer. - example: Weekend Layer + description: The monitor name. type: string - restrictions: - description: >- - An optional list of time restrictions for when this layer is in - effect. + query: + description: The query that triggers the alert. + type: string + tags: + description: A list of tags attached to the monitor. + example: + - environment:test items: - $ref: '#/components/schemas/TimeRestriction' + description: A tag. + type: string type: array - rotation_start: - description: The date/time when the rotation starts (ISO 8601). - format: date-time + templated_name: + description: The templated name of the monitor before resolving any template variables. + type: string + type: + description: The monitor type. type: string type: object - LayerRelationships: - description: >- - Holds references to objects related to the Layer entity, such as its - members. - properties: - members: - $ref: '#/components/schemas/LayerRelationshipsMembers' - type: object - LayerType: - default: layers - description: Layers resource type. - enum: - - layers - example: layers - type: string - x-enum-varnames: - - LAYERS - ScheduleMemberRelationships: - description: >- - Defines relationships for a schedule member, primarily referencing a - single user. - properties: - user: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUser' - type: object - ScheduleMemberType: - default: members - description: Schedule Members resource type. + EventPriority: + description: The priority of the event's monitor. For example, `normal` or `low`. enum: - - members - example: members + - normal + - low + example: normal + nullable: true type: string x-enum-varnames: - - MEMBERS - ScheduleUserAttributes: - description: >- - Provides basic user information for a schedule, including a name and - email address. - properties: - email: - description: The user's email address. - example: jane.doe@example.com - type: string - name: - description: The user's name. - example: Jane Doe - type: string - status: - $ref: '#/components/schemas/UserAttributesStatus' - type: object - ScheduleUserType: - default: users - description: Users resource type. + - NORMAL + - LOW + EventStatusType: + description: |- + If an alert event is enabled, its status is one of the following: + `failure`, `error`, `warning`, `info`, `success`, `user_update`, + `recommendation`, or `snapshot`. enum: - - users - example: users + - failure + - error + - warning + - info + - success + - user_update + - recommendation + - snapshot + example: info type: string x-enum-varnames: - - USERS - ScheduleUpdateRequestDataAttributesLayersItems: - description: >- - Represents a layer within a schedule update, including rotation details, - members, - - and optional restrictions. + - FAILURE + - ERROR + - WARNING + - INFO + - SUCCESS + - USER_UPDATE + - RECOMMENDATION + - SNAPSHOT + ChangeEventCustomAttributes: + additionalProperties: false + description: Change event attributes. properties: - effective_date: - description: When this updated layer takes effect (ISO 8601 format). - example: '2025-02-03T05:00:00Z' - format: date-time - type: string - end_date: - description: When this updated layer should stop being active (ISO 8601 format). - example: '2025-12-31T00:00:00Z' - format: date-time - type: string - id: - description: A unique identifier for the layer being updated. - example: 00000000-0000-0000-0000-000000000001 - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - members: - description: The members assigned to this layer. - items: - $ref: >- - #/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems - type: array - name: - description: The name for this layer (for example, "Secondary Coverage"). - example: Primary On-Call Layer - type: string - restrictions: - description: Any time restrictions that define when this layer is active. + author: + $ref: '#/components/schemas/ChangeEventCustomAttributesAuthor' + change_metadata: + additionalProperties: {} + description: Free form JSON object with information related to the `change` event. Supports up to 100 properties per object and a maximum nesting depth of 10 levels. + example: + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username + resource_link: datadog.com/feature/fallback_payments_test + type: object + changed_resource: + $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResource' + impacted_resources: + description: |- + A list of resources impacted by this change. It is recommended to provide an impacted resource to display + the change event at the correct location. Only resources of type `service` are supported. Maximum of 100 impacted resources allowed. + example: + - name: payments_api + type: service items: - $ref: '#/components/schemas/TimeRestriction' + $ref: '#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItems' + maxItems: 100 type: array - rotation_start: - description: The date/time at which the rotation begins (ISO 8601 format). - example: '2025-02-01T00:00:00Z' - format: date-time - type: string + new_value: + additionalProperties: {} + description: Free form JSON object representing the new state of the changed resource. + example: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + type: object + prev_value: + additionalProperties: {} + description: Free form JSON object representing the previous state of the changed resource. + example: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + type: object required: - - effective_date - - interval - - members - - name - - rotation_start + - changed_resource type: object - ShiftDataRelationshipsUser: - description: >- - Defines the relationship between a shift and the user who is working - that shift. + AlertEventCustomAttributes: + additionalProperties: false + description: Alert event attributes. properties: - data: - $ref: '#/components/schemas/ShiftDataRelationshipsUserData' + custom: + $ref: '#/components/schemas/AlertEventCustomAttributesCustom' + links: + $ref: '#/components/schemas/AlertEventCustomAttributesLinks' + priority: + $ref: '#/components/schemas/AlertEventCustomAttributesPriority' + status: + $ref: '#/components/schemas/AlertEventCustomAttributesStatus' required: - - data + - status type: object - TeamOnCallRespondersDataRelationshipsEscalations: - description: >- - Defines the escalation policy steps linked to the team's on-call - configuration. + EventCreateResponseAttributesAttributesEvt: + description: JSON object of event system attributes. properties: - data: - description: Array of escalation step references. + id: + deprecated: true + description: Event identifier. This field is deprecated and will be removed in a future version. Use the `uid` field instead. + type: string + uid: + description: A unique identifier for the event. You can use this identifier to query or reference the event. + type: string + type: object + ChangeEventAttributes: + description: Change event attributes. + properties: + aggregation_key: + $ref: '#/components/schemas/V2EventAggregationKey' + author: + $ref: '#/components/schemas/ChangeEventAttributesAuthor' + change_metadata: + description: JSON object of change metadata. (opaque JSON object) + example: + dd: + team: datadog_team + user_email: datadog@datadog.com + user_id: datadog_user_id + user_name: datadog_username + type: string + changed_resource: + $ref: '#/components/schemas/ChangeEventAttributesChangedResource' + evt: + $ref: '#/components/schemas/EventSystemAttributes' + impacted_resources: + description: A list of resources impacted by this change. + example: + - name: service-name + type: service items: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItems + $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItem' type: array + new_value: + description: The new state of the changed resource. (opaque JSON object) + example: + enabled: true + percentage: 50% + rule: + datacenter: devcycle.us1.prod + type: string + prev_value: + description: The previous state of the changed resource. (opaque JSON object) + example: + enabled: true + percentage: 10% + rule: + datacenter: devcycle.us1.prod + type: string + service: + $ref: '#/components/schemas/V2EventService' + timestamp: + $ref: '#/components/schemas/V2EventTimestamp' + title: + $ref: '#/components/schemas/V2EventTitle' type: object - TeamOnCallRespondersDataRelationshipsResponders: - description: Defines the list of users assigned as on-call responders for the team. + AlertEventAttributes: + description: Alert event attributes. properties: - data: - description: Array of user references associated as responders. + aggregation_key: + $ref: '#/components/schemas/V2EventAggregationKey' + custom: + description: JSON object of custom attributes. (opaque JSON object) + example: {} + type: string + evt: + $ref: '#/components/schemas/EventSystemAttributes' + links: + description: The links related to the event. + example: + - category: runbook + title: Runbook Link + url: https://app.datadoghq.com/runbook items: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItems + $ref: '#/components/schemas/AlertEventAttributesLinksItem' type: array + priority: + $ref: '#/components/schemas/AlertEventAttributesPriority' + service: + $ref: '#/components/schemas/V2EventService' + status: + $ref: '#/components/schemas/AlertEventAttributesStatus' + timestamp: + $ref: '#/components/schemas/V2EventTimestamp' + title: + $ref: '#/components/schemas/V2EventTitle' type: object - EscalationRelationships: - description: >- - Contains the relationships of an escalation object, including its - responders. + FormUiDefinitionUiTheme: + description: The visual theme applied to the form. properties: - responders: - $ref: '#/components/schemas/EscalationRelationshipsResponders' + primaryColor: + $ref: '#/components/schemas/FormUiDefinitionUiThemePrimaryColor' type: object - EscalationType: - default: escalation_policy_steps - description: >- - Represents the resource type for individual steps in an escalation - policy used during incident response. + LatestVersionMatchPolicy: + description: The policy for matching the latest form version during an upsert operation. enum: - - escalation_policy_steps - example: escalation_policy_steps + - none + - if_etag_match + example: none type: string x-enum-varnames: - - ESCALATION_POLICY_STEPS - TeamRoutingRulesDataRelationshipsRules: - description: Holds references to a set of routing rules in a relationship. + - NONE + - IF_ETAG_MATCH + IncidentFieldAttributesSingleValue: + description: A field with a single value selected. properties: - data: - description: >- - An array of references to the routing rules associated with this - team. - items: - $ref: >- - #/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItems - type: array + type: + $ref: '#/components/schemas/IncidentFieldAttributesSingleValueType' + value: + description: The single value selected for this field. + example: SEV-1 + nullable: true + type: string type: object - RoutingRuleAttributes: - description: >- - Defines the configurable attributes of a routing rule, such as actions, - query, time restriction, and urgency. + IncidentFieldAttributesMultipleValue: + description: A field with potentially multiple values selected. properties: - actions: - description: >- - Specifies the list of actions to perform when the routing rule - matches. + type: + $ref: '#/components/schemas/IncidentFieldAttributesValueType' + value: + description: The multiple values selected for this field. + example: + - '1.0' + - '1.1' items: - $ref: '#/components/schemas/RoutingRuleAction' - type: array - query: - description: Defines the query or condition that triggers this routing rule. - type: string - time_restriction: - $ref: '#/components/schemas/TimeRestrictions' + description: A value which has been selected for the parent field. + example: '1.1' + type: string nullable: true - urgency: - $ref: '#/components/schemas/Urgency' + type: array type: object - RoutingRuleRelationships: - description: >- - Specifies relationships for a routing rule, linking to associated policy - resources. + RelationshipToIncidentAttachmentData: + description: The attachment relationship data. properties: - policy: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicy' + id: + description: A unique identifier that represents the attachment. + example: 00000000-0000-abcd-1000-000000000000 + type: string + type: + $ref: '#/components/schemas/IncidentAttachmentType' + required: + - id + - type type: object - RoutingRuleType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - TeamRoutingRulesRequestRule: - description: >- - Defines an individual routing rule item that contains the rule data for - the request. + NullableRelationshipToUserData: + description: Relationship to user object. + nullable: true properties: - actions: - description: >- - Specifies the list of actions to perform when the routing rule is - matched. - items: - $ref: '#/components/schemas/RoutingRuleAction' - type: array - policy_id: - description: Identifies the policy to be applied when this routing rule matches. - type: string - query: - description: Defines the query or condition that triggers this routing rule. + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-0000-000000000000 type: string - time_restriction: - $ref: '#/components/schemas/TimeRestrictions' - urgency: - $ref: '#/components/schemas/Urgency' + type: + $ref: '#/components/schemas/UsersType' + required: + - id + - type type: object - ServiceDefinitionMeta: - description: Metadata about a service definition. + RelationshipToUserData: + description: Relationship to user object. properties: - github-html-url: - description: GitHub HTML URL. - type: string - ingested-schema-version: - description: Ingestion schema version. - type: string - ingestion-source: - description: Ingestion source of the service definition. - type: string - last-modified-time: - description: Last modified time of the service definition. - type: string - origin: - description: User defined origin of the service definition. - type: string - origin-detail: - description: User defined origin's detail of the service definition. + id: + description: A unique identifier that represents the user. + example: 00000000-0000-0000-2345-000000000000 type: string - warnings: - description: A list of schema validation warnings. - items: - $ref: '#/components/schemas/ServiceDefinitionMetaWarnings' - type: array + type: + $ref: '#/components/schemas/UsersType' + required: + - id + - type type: object - ServiceDefinitionSchema: - description: Service definition schema. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV1' - - $ref: '#/components/schemas/ServiceDefinitionV2' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot2' - ServiceDefinitionV2Dot2Opsgenie: - description: Opsgenie integration for the service. + RelationshipToIncidentImpactData: + description: Relationship to impact object. properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: >- - https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 + id: + description: A unique identifier that represents the impact. + example: 00000000-0000-0000-2345-000000000000 type: string + type: + $ref: '#/components/schemas/IncidentImpactsType' required: - - service-url + - id + - type type: object - ServiceDefinitionV2Dot2Pagerduty: - description: PagerDuty integration for the service. + RelationshipToIncidentIntegrationMetadataData: + description: A relationship reference for an integration metadata object. + example: + id: 00000000-abcd-0002-0000-000000000000 + type: incident_integrations properties: - service-url: - description: PagerDuty service url. - example: https://my-org.pagerduty.com/service-directory/PMyService + id: + description: A unique identifier that represents the integration metadata. + example: 00000000-abcd-0001-0000-000000000000 type: string + type: + $ref: '#/components/schemas/IncidentIntegrationMetadataType' + required: + - id + - type type: object - ServiceDefinitionV2Dot1Email: - description: Service owner's email. + RelationshipToIncidentResponderData: + description: Relationship to impact object. properties: - contact: - description: Contact value. - example: contact@datadoghq.com + id: + description: A unique identifier that represents the responder. + example: 00000000-0000-0000-2345-000000000000 type: string - name: - description: Contact email. - example: Team Email + type: + $ref: '#/components/schemas/IncidentRespondersType' + required: + - id + - type + type: object + RelationshipToIncidentUserDefinedFieldData: + description: Relationship to impact object. + properties: + id: + description: A unique identifier that represents the responder. + example: 00000000-0000-0000-2345-000000000000 type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1EmailType' + $ref: '#/components/schemas/IncidentUserDefinedFieldType' required: + - id - type - - contact type: object - ServiceDefinitionV2Dot1Slack: - description: Service owner's Slack channel. + IncidentTimelineCellMarkdownCreateAttributes: + description: Timeline cell data for Markdown timeline cells for a create request. properties: - contact: - description: Slack Channel. - example: https://yourcompany.slack.com/archives/channel123 + cell_type: + $ref: '#/components/schemas/IncidentTimelineCellMarkdownContentType' + content: + $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributesContent' + important: + default: false + description: A flag indicating whether the timeline cell is important and should be highlighted. + example: false + type: boolean + required: + - content + - cell_type + type: object + IncidentHandleAttributesFieldsSeverity: + description: Severity level associated with an incident handle. + example: SEV-1 + type: string + IncidentHandleRelationshipData: + description: Relationship data for an incident handle, containing the ID and type of the related resource. + properties: + id: + description: The ID of the related resource + example: f7b538b1-ed7c-4e84-82de-fdf84a539d40 type: string - name: - description: Contact Slack. - example: Team Slack + type: + description: The type of the related resource + example: incident_types + type: string + required: + - id + - type + type: object + RelationshipToIncidentTypeData: + description: Relationship to incident type object. + properties: + id: + description: The incident type's ID. + example: 00000000-0000-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1SlackType' + $ref: '#/components/schemas/IncidentTypeType' required: + - id - type - - contact type: object - ServiceDefinitionV2Dot1MSTeams: - description: Service owner's Microsoft Teams. + IncidentNotificationRuleConditionsItems: + description: A condition that must be met to trigger the notification rule. properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam + field: + description: The incident field to evaluate + example: severity type: string - name: - description: Contact Microsoft Teams. - example: My team channel + values: + description: The value(s) to compare against. Multiple values are `ORed` together. + example: + - SEV-1 + - SEV-2 + items: + description: A value to compare against the incident field. + type: string + type: array + required: + - field + - values + type: object + RelationshipToIncidentNotificationTemplateData: + description: The notification template relationship data. + properties: + id: + description: The unique identifier of the notification template. + example: 00000000-0000-0000-0000-000000000001 + format: uuid type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeamsType' + $ref: '#/components/schemas/IncidentNotificationTemplateType' required: + - id - type - - contact type: object - ServiceDefinitionV2Dot1Opsgenie: - description: Opsgenie integration for the service. + PostmortemTemplateIncidentTypeRelationshipData: + description: Incident type relationship data. properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: >- - https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 + id: + description: The incident type identifier. + example: 00000000-0000-0000-0000-000000000009 + format: uuid + type: string + type: + description: The incident type resource type. + example: incident_types type: string required: - - service-url + - id + - type type: object - ServiceDefinitionV2Dot1Pagerduty: - description: PagerDuty integration for the service. + PostmortemTemplateUserRelationshipData: + description: User relationship data. properties: - service-url: - description: PagerDuty service url. - example: https://my-org.pagerduty.com/service-directory/PMyService + id: + description: The user identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + description: The user resource type. + example: users type: string + required: + - id + - type type: object - ServiceDefinitionV2Dot1LinkType: - description: Link type. + IncidentTypeSlugSource: + default: default + description: When set to `servicenow`, incidents will display the ServiceNow record ID instead of the public ID. If no ServiceNow integration exists, the public ID will be displayed. enum: - - doc - - repo - - runbook - - dashboard - - other - example: runbook + - default + - servicenow + example: default type: string x-enum-varnames: - - DOC - - REPO - - RUNBOOK - - DASHBOARD - - OTHER - ServiceDefinitionV2Email: - description: Service owner's email. + - DEFAULT + - SERVICENOW + GoogleMeetConfigurationReferenceData: + description: The Google Meet configuration relationship data object. + nullable: true properties: - contact: - description: Contact value. - example: contact@datadoghq.com - type: string - name: - description: Contact email. - example: Team Email + id: + description: The unique identifier of the Google Meet configuration. + example: 00000000-0000-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2EmailType' + description: The type of the Google Meet configuration. + example: google_meet_configurations + type: string required: + - id - type - - contact type: object - ServiceDefinitionV2Slack: - description: Service owner's Slack channel. + MicrosoftTeamsConfigurationReferenceData: + description: The Microsoft Teams configuration relationship data object. + nullable: true properties: - contact: - description: Slack Channel. - example: https://yourcompany.slack.com/archives/channel123 - type: string - name: - description: Contact Slack. - example: Team Slack + id: + description: The unique identifier of the Microsoft Teams configuration. + example: 00000000-0000-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2SlackType' + description: The type of the Microsoft Teams configuration. + example: microsoft_teams_configurations + type: string required: + - id - type - - contact type: object - ServiceDefinitionV2MSTeams: - description: Service owner's Microsoft Teams. + ZoomConfigurationReferenceData: + description: The Zoom configuration relationship data object. + nullable: true properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Microsoft Teams. - example: My team channel + id: + description: The unique identifier of the Zoom configuration. + example: 00000000-0000-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/ServiceDefinitionV2MSTeamsType' + description: The type of the Zoom configuration. + example: zoom_configurations + type: string required: + - id - type - - contact type: object - ServiceDefinitionV2Opsgenie: - description: Opsgenie integration for the service. + IncidentUserDefinedRoleIncidentTypeRelationshipData: + description: Data for the incident type relationship of a user-defined role. properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: >- - https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 + id: + description: The ID of the incident type. + example: 00000000-0000-0000-0000-000000000001 + format: uuid + type: string + type: + description: The type of the resource. + example: incident_types type: string required: - - service-url + - id + - type type: object - ServiceDefinitionV2Pagerduty: - description: PagerDuty service URL for the service. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - ServiceDefinitionV2LinkType: - description: Link type. - enum: - - doc - - wiki - - runbook - - url - - repo - - dashboard - - oncall - - code - - link - example: runbook - type: string - x-enum-varnames: - - DOC - - WIKI - - RUNBOOK - - URL - - REPO - - DASHBOARD - - ONCALL - - CODE - - LINK - SLOReportInterval: - description: The frequency at which report data is to be generated. - enum: - - daily - - weekly - - monthly - example: weekly - type: string - x-enum-varnames: - - DAILY - - WEEKLY - - MONTHLY - SLOReportStatus: - description: The status of the SLO report job. - enum: - - in_progress - - completed - - completed_with_errors - - failed - example: completed - type: string - x-enum-varnames: - - IN_PROGRESS - - COMPLETED - - COMPLETED_WITH_ERRORS - - FAILED - JiraIssueResult: - description: Jira issue information + IncidentImportFieldAttributesSingleValue: + additionalProperties: false + description: A field with a single value selected. properties: - issue_id: - description: Jira issue ID + value: + description: The single value selected for this field. + example: SEV-1 + nullable: true type: string - issue_key: - description: Jira issue key + type: object + IncidentImportFieldAttributesMultipleValue: + additionalProperties: false + description: A field with potentially multiple values selected. + properties: + value: + description: The multiple values selected for this field. + example: + - '1.0' + - '1.1' + items: + description: A value which has been selected for the parent field. + example: '1.1' + type: string + nullable: true + type: array + type: object + IncidentSearchResponseUserFacetData: + description: Facet data for user attributes of an incident. + properties: + count: + $ref: '#/components/schemas/IncidentSearchResponseFacetCount' + email: + description: Email of the user. + example: datadog.user@example.com type: string - issue_url: - description: Jira issue URL + handle: + description: Handle of the user. + example: '@datadog.user@example.com' type: string - project_key: - description: Jira project key + name: + description: Name of the user. + example: Datadog User + type: string + uuid: + description: ID of the user. + example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 type: string type: object - Case3rdPartyTicketStatus: - default: IN_PROGRESS - description: Case status - enum: - - IN_PROGRESS - - COMPLETED - - FAILED - example: COMPLETED - readOnly: true - type: string - x-enum-varnames: - - IN_PROGRESS - - COMPLETED - - FAILED - ServiceNowTicketResult: - description: ServiceNow ticket information + IncidentSearchResponsePropertyFieldFacetData: + description: Facet data for the incident property fields. + properties: + aggregates: + $ref: '#/components/schemas/IncidentSearchResponseNumericFacetDataAggregates' + facets: + description: Facet data for the property field of an incident. + items: + $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' + type: array + name: + description: Name of the incident property field. + example: Severity + type: string + required: + - facets + - name + type: object + IncidentSearchResponseFieldFacetData: + description: Facet value and number of occurrences for a property field of an incident. properties: - sys_target_link: - description: Link to the Incident created on ServiceNow + count: + $ref: '#/components/schemas/IncidentSearchResponseFacetCount' + name: + description: The facet value appearing in search results. + example: SEV-2 type: string type: object - NullableUserRelationshipData: - description: Relationship to user object. - nullable: true + IncidentSearchResponseNumericFacetData: + description: Facet data numeric attributes of an incident. properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 + aggregates: + $ref: '#/components/schemas/IncidentSearchResponseNumericFacetDataAggregates' + name: + description: Name of the incident property field. + example: time_to_repair type: string - type: - $ref: '#/components/schemas/UserResourceType' required: - - id - - type + - name + - aggregates type: object - ProjectRelationshipData: - description: Relationship to project object + RelationshipToIncidentPostmortemData: + description: The postmortem relationship data. + example: + id: 00000000-0000-abcd-2000-000000000000 + type: incident_postmortems properties: id: - description: A unique identifier that represents the project - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + description: A unique identifier that represents the postmortem. + example: 00000000-0000-abcd-1000-000000000000 type: string type: - $ref: '#/components/schemas/ProjectResourceType' + $ref: '#/components/schemas/IncidentPostmortemType' required: - id - type type: object - RelationshipToTeamLinkData: - description: Relationship between a link and a team + RelationshipToIncidentData: + description: Relationship to incident object. properties: id: - description: The team link's identifier - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 + description: A unique identifier that represents the incident. + example: 00000000-0000-0000-1234-000000000000 type: string type: - $ref: '#/components/schemas/TeamLinkType' + $ref: '#/components/schemas/IncidentType' required: - id - type type: object - TeamRelationshipsLinks: - description: Links attributes. + PostmortemCellAttributes: + description: Attributes of a postmortem cell properties: - related: - description: Related link. - example: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links - type: string + definition: + $ref: '#/components/schemas/PostmortemCellDefinition' type: object - UserRelationshipData: - description: Relationship to user object. + PostmortemCellType: + description: The postmortem cell resource type. + enum: + - markdown + example: markdown + type: string + x-enum-varnames: + - MARKDOWN + IncidentPageRoleType: + description: The type of incident role for a page. + enum: + - incident_user_defined_roles + - incident_reserved_roles + example: incident_user_defined_roles + type: string + x-enum-varnames: + - INCIDENT_USER_DEFINED_ROLES + - INCIDENT_RESERVED_ROLES + IncidentPageTargetType: + description: The type of target for a page request. + enum: + - team_handle + - team_uuid + - user_uuid + example: team_uuid + type: string + x-enum-varnames: + - TEAM_HANDLE + - TEAM_UUID + - USER_UUID + SlackIntegrationMetadata: + description: Incident integration metadata for the Slack integration. properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserResourceType' + channels: + description: Array of Slack channels in this integration metadata. + example: [] + items: + $ref: '#/components/schemas/SlackIntegrationMetadataChannelItem' + type: array required: - - id - - type + - channels type: object - DowntimeMonitorIdentifierId: - additionalProperties: {} - description: Object of the monitor identifier. + JiraIntegrationMetadata: + description: Incident integration metadata for the Jira integration. properties: - monitor_id: - description: ID of the monitor to prevent notifications. - example: 123 - format: int64 - type: integer + issues: + description: Array of Jira issues in this integration metadata. + example: [] + items: + $ref: '#/components/schemas/JiraIntegrationMetadataIssuesItem' + type: array required: - - monitor_id + - issues type: object - DowntimeMonitorIdentifierTags: - additionalProperties: {} - description: Object of the monitor tags. + MSTeamsIntegrationMetadata: + description: Incident integration metadata for the Microsoft Teams integration. properties: - monitor_tags: - description: >- - A list of monitor tags. For example, tags that are applied directly - to monitors, - - not tags that are used in monitor queries (which are filtered by the - scope parameter), to which the downtime applies. - - The resulting downtime applies to monitors that match **all** - provided monitor tags. Setting `monitor_tags` - - to `[*]` configures the downtime to mute all monitors for the given - scope. - example: - - service:postgres - - team:frontend + teams: + description: Array of Microsoft Teams in this integration metadata. + example: [] items: - description: A list of monitor tags. - example: service:postgres - type: string - minItems: 1 + $ref: '#/components/schemas/MSTeamsIntegrationMetadataTeamsItem' type: array required: - - monitor_tags + - teams type: object - DowntimeNotifyEndStateTypes: - description: >- - State that will trigger a monitor notification when the - `notify_end_types` action occurs. - enum: - - alert - - no data - - warn - example: alert - type: string - x-enum-varnames: - - ALERT - - NO_DATA - - WARN - DowntimeNotifyEndStateActions: - description: >- - Action that will trigger a monitor notification if the downtime is in - the `notify_end_types` state. - enum: - - canceled - - expired - example: canceled + IncidentTodoAssignee: + description: A todo assignee. + example: '@test.user@test.com' type: string - x-enum-varnames: - - CANCELED - - EXPIRED - DowntimeScheduleRecurrencesResponse: - description: A recurring downtime schedule definition. properties: - current_downtime: - $ref: '#/components/schemas/DowntimeScheduleCurrentDowntimeResponse' - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceResponse' - maxItems: 5 - minItems: 1 - type: array - timezone: - default: UTC - description: >- - The timezone in which to schedule the downtime. This affects - recurring start and end dates. - - Must match `display_timezone`. - example: America/New_York + icon: + description: URL for assignee's icon. + example: https://a.slack-edge.com/80588/img/slackbot_48.png + type: string + id: + description: Anonymous assignee's ID. + example: USLACKBOT + type: string + name: + description: Assignee's name. + example: Slackbot type: string + source: + $ref: '#/components/schemas/IncidentTodoAnonymousAssigneeSource' required: - - recurrences + - id + - icon + - name + - source + IncidentResponderRoleAssignmentRelationshipData: + description: A single role assignment relationship data object. + properties: + id: + description: The role assignment identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid + type: string + type: + description: The role assignment resource type. + example: incident_role_assignments + type: string + required: + - id + - type type: object - DowntimeScheduleOneTimeResponse: - description: A one-time downtime definition. + IncidentResponderUserRelationshipData: + description: A user relationship data object for creating a responder. properties: - end: - description: ISO-8601 Datetime to end the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true + id: + description: The user identifier. + example: 00000000-0000-0000-0000-000000000000 + format: uuid type: string - start: - description: ISO-8601 Datetime to start the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time + type: + description: The user resource type. + example: users type: string required: - - start + - id + - type type: object - DowntimeRelationshipsCreatedByData: - description: Data for the user who created the downtime. - nullable: true + EscalationPolicyStepAttributesAssignment: + description: Specifies how this escalation step will assign targets (example `default` or `round-robin`). + enum: + - default + - round-robin + type: string + x-enum-varnames: + - DEFAULT + - ROUND_ROBIN + EscalationPolicyStepTarget: + description: Defines a single escalation target within a step for an escalation policy creation request. Contains `id`, `type`, and optional `config`. properties: + config: + $ref: '#/components/schemas/EscalationPolicyStepTargetConfig' id: - description: User ID of the downtime creator. - example: 00000000-0000-1234-0000-000000000000 + description: Specifies the unique identifier for this target. + example: 00000000-aba1-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/UsersType' + $ref: '#/components/schemas/EscalationPolicyStepTargetType' type: object - DowntimeRelationshipsMonitorData: - description: Data for the monitor. - nullable: true + DataRelationshipsTeamsDataItems: + description: Relates a team to this schedule, identified by `id` and `type` (must be `teams`). properties: id: - description: Monitor ID of the downtime. - example: '12345' + description: The unique identifier of the team in this relationship. + example: 00000000-da3a-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/DowntimeIncludedMonitorType' + $ref: '#/components/schemas/DataRelationshipsTeamsDataItemsType' + required: + - type + - id type: object - RelationshipToOrganization: - description: Relationship to an organization. + EscalationPolicyDataRelationshipsStepsDataItems: + description: Defines a relationship to a single step within an escalation policy. Contains the step's `id` and `type`. properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' + id: + description: Specifies the unique identifier for the step resource. + example: 00000000-aba1-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/EscalationPolicyDataRelationshipsStepsDataItemsType' required: - - data + - type + - id type: object - RelationshipToOrganizations: - description: Relationship to organizations. + EscalationTargets: + description: A list of escalation targets for a step properties: data: - description: Relationships to organization objects. - example: [] + description: The `EscalationTargets` `data`. items: - $ref: '#/components/schemas/RelationshipToOrganizationData' + $ref: '#/components/schemas/EscalationTarget' type: array - required: - - data type: object - RelationshipToUsers: - description: Relationship to users. + UserAttributesStatus: + description: The user's status. + enum: + - active + - deactivated + - pending + type: string + x-enum-varnames: + - ACTIVE + - DEACTIVATED + - PENDING + ScheduleTargetPosition: + description: Specifies the position of a schedule target (example `previous`, `current`, or `next`). + enum: + - previous + - current + - next + example: previous + type: string + x-enum-varnames: + - PREVIOUS + - CURRENT + - NEXT + ConfiguredScheduleTargetRelationshipsSchedule: + description: Holds the schedule reference for a configured schedule target. properties: data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array + $ref: '#/components/schemas/ScheduleTarget' required: - data type: object - RelationshipToRoles: - description: Relationship to roles. + OnCallPageTargetType: + description: The kind of target, `team_id` | `team_handle` | `user_id`. + enum: + - team_id + - team_handle + - user_id + example: team_id + type: string + x-enum-varnames: + - TEAM_ID + - TEAM_HANDLE + - USER_ID + LayerAttributesInterval: + description: Defines how often the rotation repeats, using a combination of days and optional seconds. Should be at least 1 hour. properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array + days: + description: The number of days in each rotation cycle. + example: 1 + format: int32 + maximum: 400 + type: integer + seconds: + description: Any additional seconds for the rotation cycle (up to 30 days). + example: 300 + format: int64 + maximum: 2592000 + type: integer type: object - DowntimeScheduleRecurrencesCreateRequest: - description: A recurring downtime schedule definition. + ScheduleRequestDataAttributesLayersItemsMembersItems: + description: Defines a single member within a schedule layer, including the reference to the underlying user. properties: - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' - type: array - timezone: - default: UTC - description: The timezone in which to schedule the downtime. - example: America/New_York - type: string - required: - - recurrences + user: + $ref: '#/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItemsUser' type: object - DowntimeScheduleOneTimeCreateUpdateRequest: - additionalProperties: false - description: A one-time downtime definition. + TimeRestriction: + description: Defines a single time restriction rule with start and end times and the applicable weekdays. properties: - end: - description: >- - ISO-8601 Datetime to end the downtime. Must include a UTC offset of - zero. If not provided, the - - downtime continues forever. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true + end_day: + $ref: '#/components/schemas/Weekday' + end_time: + description: Specifies the ending time for this restriction. type: string - start: - description: >- - ISO-8601 Datetime to start the downtime. Must include a UTC offset - of zero. If not provided, the - - downtime starts the moment it is created. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true + start_day: + $ref: '#/components/schemas/Weekday' + start_time: + description: Specifies the starting time for this restriction. type: string type: object - DowntimeScheduleRecurrencesUpdateRequest: - additionalProperties: false - description: A recurring downtime schedule definition. + ScheduleDataRelationshipsLayersDataItems: + description: Relates a layer to this schedule, identified by `id` and `type` (must be `layers`). properties: - recurrences: - description: A list of downtime recurrences. + id: + description: The unique identifier of the layer in this relationship. + example: 00000000-0000-0000-0000-000000000001 + type: string + type: + $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItemsType' + required: + - type + - id + type: object + LayerRelationshipsMembers: + description: Holds an array of references to the members of a Layer, each containing member IDs. + properties: + data: + description: The list of members who belong to this layer. items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' + $ref: '#/components/schemas/LayerRelationshipsMembersDataItems' type: array - timezone: - default: UTC - description: The timezone in which to schedule the downtime. - example: America/New_York - type: string type: object - IssueReference: - description: The issue the search result corresponds to. + ScheduleMemberRelationshipsUser: + description: Wraps the user data reference for a schedule member. + properties: + data: + $ref: '#/components/schemas/ScheduleMemberRelationshipsUserData' + required: + - data + type: object + ShiftDataRelationshipsUserData: + description: Represents a reference to the user assigned to this shift, containing the user's ID and resource type. properties: id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 + description: Specifies the unique identifier of the user. + example: 00000000-0000-0000-0000-000000000000 type: string type: - $ref: '#/components/schemas/IssueType' + $ref: '#/components/schemas/ShiftDataRelationshipsUserDataType' required: - - id - type + - id type: object - IssueUserReference: - description: The user the issue is assigned to. + ScheduleOnCallRespondersDataRelationshipsRespondersDataItems: + description: Represents a reference to one position's (previous, current, or next) responder group. properties: id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 + description: Unique identifier of the responder group. + example: '' type: string type: - $ref: '#/components/schemas/IssueUserType' + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationshipsRespondersDataItemsType' required: - - id - type + - id type: object - IssueCaseReference: - description: The case the issue is attached to. + ScheduleOnCallRespondersDataRelationshipsScheduleData: + description: Represents a reference to the schedule this on-call responders lookup was performed for. properties: id: - description: Case identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 + description: Unique identifier of the schedule. + example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d type: string type: - $ref: '#/components/schemas/IssueCaseResourceType' + $ref: '#/components/schemas/ScheduleOnCallRespondersDataRelationshipsScheduleDataType' required: - - id - type + - id type: object - IssueTeamReference: - description: A team that owns the issue. + ScheduleOnCallResponderDataRelationshipsShifts: + description: Defines the list of shifts satisfying this responder group's position. Multiple shifts occur when a schedule has multiple concurrent on-call responders at that position. + properties: + data: + description: Array of references to the shifts included in the response. + items: + $ref: '#/components/schemas/ScheduleOnCallResponderDataRelationshipsShiftsDataItems' + type: array + type: object + TeamOnCallRespondersDataRelationshipsEscalationsDataItems: + description: Represents a link to a specific escalation policy step associated with the on-call team. properties: id: - description: Team identifier. - example: 221b0179-6447-4d03-91c3-3ca98bf60e8a + description: Unique identifier of the escalation step. + example: '' type: string type: - $ref: '#/components/schemas/IssueTeamType' + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType' required: - - id - type + - id type: object - IssueCaseInsight: - description: Insight of the case. + TeamOnCallRespondersDataRelationshipsRespondersDataItems: + description: Represents a user responder associated with the on-call team. properties: - ref: - description: Reference of the insight. - example: /error-tracking?issueId=2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - resource_id: - description: Insight identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 + id: + description: Unique identifier of the responder. + example: '' type: string type: - description: Type of the insight. - example: ERROR_TRACKING - type: string + $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItemsType' + required: + - type + - id type: object - IssueCaseJiraIssue: - description: Jira issue of the case. + EscalationRelationshipsResponders: + description: Lists the users involved in a specific step of the escalation policy. properties: - result: - $ref: '#/components/schemas/IssueCaseJiraIssueResult' - status: - description: Creation status of the Jira issue. - example: COMPLETED - type: string + data: + description: Array of user references assigned as responders for this escalation step. + items: + $ref: '#/components/schemas/EscalationRelationshipsRespondersDataItems' + type: array type: object - Event: - description: The metadata associated with a request. + TeamRoutingRulesDataRelationshipsRulesDataItems: + description: Defines a relationship item to link a routing rule by its ID and type. properties: id: - description: Event ID. - example: '6509751066204996294' + description: Specifies the unique identifier for the related routing rule. + example: '' type: string - name: - description: The event name. + type: + $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItemsType' + required: + - type + - id + type: object + RoutingRuleAction: + description: Defines an action that is executed when a routing rule matches certain criteria. + properties: + channel: + description: The channel ID. + example: CHANNEL type: string - source_id: - description: Event source ID. - example: 36 - format: int64 - type: integer type: - description: Event type. - example: error_tracking_alert + $ref: '#/components/schemas/SendSlackMessageActionType' + workspace: + description: The workspace ID. + example: WORKSPACE + type: string + team: + description: The team ID. + example: TEAM type: string - type: object - MonitorType: - description: Attributes from the monitor that triggered the event. - nullable: true - properties: - created_at: - description: The POSIX timestamp of the monitor's creation in nanoseconds. - example: 1646318692000 - format: int64 - type: integer - group_status: - description: Monitor group status used when there is no `result_groups`. - format: int32 - maximum: 2147483647 - type: integer - groups: - description: Groups to which the monitor belongs. - items: - description: A group. - type: string - type: array - id: - description: The monitor ID. - format: int64 - type: integer - message: - description: The monitor message. + tenant: + description: The tenant ID. + example: TENANT type: string - modified: - description: The monitor's last-modified timestamp. + handle: + description: The handle of the Workflow Automation to trigger. + example: my-workflow-handle + type: string + ack_timeout_minutes: + description: The number of minutes before an acknowledged page is re-triggered. + example: 30 format: int64 type: integer - name: - description: The monitor name. - type: string - query: - description: The query that triggers the alert. + policy_id: + description: The ID of the escalation policy to route to. + example: 00000000-0000-0000-0000-000000000000 type: string - tags: - description: A list of tags attached to the monitor. - example: - - environment:test + support_hours: + $ref: '#/components/schemas/RoutingRuleEscalationPolicyActionSupportHours' + urgency: + $ref: '#/components/schemas/Urgency' + required: + - type + - channel + - workspace + - tenant + - team + - handle + - policy_id + type: object + TimeRestrictions: + description: Time restrictions during which the routing rule is active. Outside of these hours, the rule does not match and routing continues to subsequent rules. This is mutually exclusive with the action-level `support_hours` field. + properties: + restrictions: + description: Defines the list of time-based restrictions. items: - description: A tag. - type: string + $ref: '#/components/schemas/TimeRestriction' type: array - templated_name: - description: >- - The templated name of the monitor before resolving any template - variables. - type: string - type: - description: The monitor type. + time_zone: + description: Specifies the time zone applicable to the restrictions. + example: '' type: string + required: + - time_zone + - restrictions type: object - EventPriority: - description: The priority of the event's monitor. For example, `normal` or `low`. + Urgency: + description: Specifies the level of urgency for a routing rule (low, high, or dynamic). enum: - - normal - low - example: normal - nullable: true + - high + - dynamic + example: low type: string x-enum-varnames: - - NORMAL - LOW - EventStatusType: - description: |- - If an alert event is enabled, its status is one of the following: - `failure`, `error`, `warning`, `info`, `success`, `user_update`, - `recommendation`, or `snapshot`. - enum: - - failure - - error - - warning - - info - - success - - user_update - - recommendation - - snapshot - example: info - type: string - x-enum-varnames: - - FAILURE - - ERROR - - WARNING - - INFO - - SUCCESS - - USER_UPDATE - - RECOMMENDATION - - SNAPSHOT - ChangeEventCustomAttributes: - additionalProperties: false - description: Change event attributes. - properties: - author: - $ref: '#/components/schemas/ChangeEventCustomAttributesAuthor' - change_metadata: - additionalProperties: {} - description: >- - Free form JSON object with information related to the `change` - event. Supports up to 100 properties per object and a maximum - nesting depth of 10 levels. - example: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - resource_link: datadog.com/feature/fallback_payments_test - type: object - changed_resource: - $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResource' - impacted_resources: - description: >- - A list of resources impacted by this change. It is recommended to - provide an impacted resource to display - - the change event at the correct location. Only resources of type - `service` are supported. Maximum of 100 impacted resources allowed. - example: - - name: payments_api - type: service - items: - $ref: >- - #/components/schemas/ChangeEventCustomAttributesImpactedResourcesItems - maxItems: 100 - type: array - new_value: - additionalProperties: {} - description: >- - Free form JSON object representing the new state of the changed - resource. - example: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - type: object - prev_value: - additionalProperties: {} - description: >- - Free form JSON object representing the previous state of the changed - resource. - example: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - type: object - required: - - changed_resource - type: object - AlertEventCustomAttributes: - additionalProperties: false - description: Alert event attributes. + - HIGH + - DYNAMIC + RoutingRuleRelationshipsPolicy: + description: Defines the relationship that links a routing rule to a policy. properties: - custom: - $ref: '#/components/schemas/AlertEventCustomAttributesCustom' - links: - $ref: '#/components/schemas/AlertEventCustomAttributesLinks' - priority: - $ref: '#/components/schemas/AlertEventCustomAttributesPriority' - status: - $ref: '#/components/schemas/AlertEventCustomAttributesStatus' - required: - - status + data: + $ref: '#/components/schemas/RoutingRuleRelationshipsPolicyData' + nullable: true type: object - EventCreateResponseAttributesAttributesEvt: - description: JSON object of event system attributes. + NotificationChannelPhoneConfig: + description: Phone notification channel configuration properties: - id: - deprecated: true - description: >- - Event identifier. This field is deprecated and will be removed in a - future version. Use the `uid` field instead. + formatted_number: + description: The formatted international version of Number (e.g. +33 7 1 23 45 67). + example: '' type: string - uid: - description: >- - A unique identifier for the event. You can use this identifier to - query or reference the event. + number: + description: The E-164 formatted phone number (e.g. +3371234567) + example: '' + type: string + region: + description: The ISO 3166-1 alpha-2 two-letter country code. + example: '' + type: string + sms_subscribed_at: + description: If present, the date the user subscribed this number to SMS messages + format: date-time + nullable: true type: string + type: + $ref: '#/components/schemas/NotificationChannelPhoneConfigType' + verified: + description: Indicates whether this phone has been verified by the user in Datadog On-Call + example: false + type: boolean + required: + - type + - number + - formatted_number + - region + - verified type: object - ChangeEventAttributes: - description: Change event attributes. + NotificationChannelEmailConfig: + description: Email notification channel configuration properties: - aggregation_key: - $ref: '#/components/schemas/V2EventAggregationKey' - author: - $ref: '#/components/schemas/ChangeEventAttributesAuthor' - change_metadata: - description: JSON object of change metadata. - example: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - type: object - changed_resource: - $ref: '#/components/schemas/ChangeEventAttributesChangedResource' - evt: - $ref: '#/components/schemas/EventSystemAttributes' - impacted_resources: - description: A list of resources impacted by this change. + address: + description: The e-mail address to be notified + example: '' + type: string + formats: + description: Preferred content formats for notifications. example: - - name: service-name - type: service + - html items: - $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItem' + $ref: '#/components/schemas/NotificationChannelEmailFormatType' type: array - new_value: - description: The new state of the changed resource. - example: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - type: object - prev_value: - description: The previous state of the changed resource. - example: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - type: object - service: - $ref: '#/components/schemas/V2EventService' - timestamp: - $ref: '#/components/schemas/V2EventTimestamp' - title: - $ref: '#/components/schemas/V2EventTitle' + type: + $ref: '#/components/schemas/NotificationChannelEmailConfigType' + required: + - type + - address + - formats type: object - AlertEventAttributes: - description: Alert event attributes. + NotificationChannelPushConfig: + description: Push notification channel configuration + properties: + application_name: + description: The name of the application used to receive push notifications + example: '' + type: string + device_name: + description: The name of the mobile device being used + example: '' + type: string + type: + $ref: '#/components/schemas/NotificationChannelPushConfigType' + required: + - type + - device_name + - application_name + type: object + CreatePhoneNotificationChannelConfig: + description: Configuration to create a phone notification channel + properties: + number: + description: The E-164 formatted phone number (e.g. +3371234567) + example: '' + type: string + type: + $ref: '#/components/schemas/NotificationChannelPhoneConfigType' + required: + - type + - number + type: object + CreateEmailNotificationChannelConfig: + description: Configuration to create an e-mail notification channel properties: - aggregation_key: - $ref: '#/components/schemas/V2EventAggregationKey' - custom: - description: JSON object of custom attributes. - example: {} - type: object - evt: - $ref: '#/components/schemas/EventSystemAttributes' - links: - description: The links related to the event. + address: + description: The e-mail address to be notified + example: '' + type: string + formats: + description: Preferred content formats for notifications. example: - - category: runbook - title: Runbook Link - url: https://app.datadoghq.com/runbook + - html items: - $ref: '#/components/schemas/AlertEventAttributesLinksItem' + $ref: '#/components/schemas/NotificationChannelEmailFormatType' type: array - priority: - $ref: '#/components/schemas/AlertEventAttributesPriority' - service: - $ref: '#/components/schemas/V2EventService' - status: - $ref: '#/components/schemas/AlertEventAttributesStatus' - timestamp: - $ref: '#/components/schemas/V2EventTimestamp' - title: - $ref: '#/components/schemas/V2EventTitle' + type: + $ref: '#/components/schemas/NotificationChannelEmailConfigType' + required: + - type + - address + - formats type: object - IncidentFieldAttributesSingleValue: - description: A field with a single value selected. + OnCallPhoneNotificationRuleSettings: + description: Configuration for using a phone notification channel in a notification rule properties: + method: + $ref: '#/components/schemas/OnCallPhoneNotificationRuleMethod' type: - $ref: '#/components/schemas/IncidentFieldAttributesSingleValueType' - value: - description: The single value selected for this field. - example: SEV-1 - nullable: true - type: string + $ref: '#/components/schemas/NotificationChannelPhoneConfigType' + required: + - type + - method type: object - IncidentFieldAttributesMultipleValue: - description: A field with potentially multiple values selected. + OnCallNotificationRuleChannelRelationshipData: + description: Channel relationship data for creating a notification rule properties: + id: + description: ID of the notification channel + type: string type: - $ref: '#/components/schemas/IncidentFieldAttributesValueType' - value: - description: The multiple values selected for this field. + $ref: '#/components/schemas/NotificationChannelType' + type: object + ServiceDefinitionMetaWarnings: + description: Schema validation warnings. + properties: + instance-location: + description: The warning instance location. + type: string + keyword-location: + description: The warning keyword location. + type: string + message: + description: The warning message. + type: string + type: object + ServiceDefinitionV1: + deprecated: true + description: Deprecated - Service definition V1 for providing additional service metadata and integrations. + properties: + contact: + $ref: '#/components/schemas/ServiceDefinitionV1Contact' + extensions: + additionalProperties: {} + description: Extensions to V1 schema. example: - - '1.0' - - '1.1' + myorg/extension: extensionValue + type: object + external-resources: + description: A list of external links related to the services. items: - description: A value which has been selected for the parent field. - example: '1.1' + $ref: '#/components/schemas/ServiceDefinitionV1Resource' + type: array + info: + $ref: '#/components/schemas/ServiceDefinitionV1Info' + integrations: + $ref: '#/components/schemas/ServiceDefinitionV1Integrations' + org: + $ref: '#/components/schemas/ServiceDefinitionV1Org' + schema-version: + $ref: '#/components/schemas/ServiceDefinitionV1Version' + tags: + description: A set of custom tags. + example: + - my:tag + - service:tag + items: + description: A custom tag string in `key:value` format. type: string - nullable: true type: array + required: + - schema-version + - info type: object - RelationshipToIncidentAttachmentData: - description: The attachment relationship data. + ServiceDefinitionV2Dot2OpsgenieRegion: + description: Opsgenie instance region. + enum: + - US + - EU + example: US + type: string + x-enum-varnames: + - US + - EU + ServiceDefinitionV2Dot1EmailType: + description: Contact type. + enum: + - email + example: email + type: string + x-enum-varnames: + - EMAIL + ServiceDefinitionV2Dot1SlackType: + description: Contact type. + enum: + - slack + example: slack + type: string + x-enum-varnames: + - SLACK + ServiceDefinitionV2Dot1MSTeamsType: + description: Contact type. + enum: + - microsoft-teams + example: microsoft-teams + type: string + x-enum-varnames: + - MICROSOFT_TEAMS + ServiceDefinitionV2Dot1OpsgenieRegion: + description: Opsgenie instance region. + enum: + - US + - EU + example: US + type: string + x-enum-varnames: + - US + - EU + ServiceDefinitionV2EmailType: + description: Contact type. + enum: + - email + example: email + type: string + x-enum-varnames: + - EMAIL + ServiceDefinitionV2SlackType: + description: Contact type. + enum: + - slack + example: slack + type: string + x-enum-varnames: + - SLACK + ServiceDefinitionV2MSTeamsType: + description: Contact type. + enum: + - microsoft-teams + example: microsoft-teams + type: string + x-enum-varnames: + - MICROSOFT_TEAMS + ServiceDefinitionV2OpsgenieRegion: + description: Opsgenie instance region. + enum: + - US + - EU + example: US + type: string + x-enum-varnames: + - US + - EU + StatusPageDataAttributesComponentsItemsComponentsItems: + description: A grouped component within a status page component group. properties: id: - description: A unique identifier that represents the attachment. - example: 00000000-0000-abcd-1000-000000000000 + description: The ID of the component. + format: uuid + type: string + name: + description: The name of the component. type: string + position: + description: The zero-indexed position of the component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' type: - $ref: '#/components/schemas/IncidentAttachmentType' + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType' + type: object + StatusPagesComponentGroupAttributesComponentsItemsStatus: + description: The status of the component. + enum: + - operational + - degraded + - partial_outage + - major_outage + - maintenance + readOnly: true + type: string + x-enum-varnames: + - OPERATIONAL + - DEGRADED + - PARTIAL_OUTAGE + - MAJOR_OUTAGE + - MAINTENANCE + StatusPageDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the status page. + properties: + id: + description: The ID of the Datadog user who created the status page. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' required: - - id - type + - id type: object - NullableRelationshipToUserData: - description: Relationship to user object. - nullable: true + StatusPageDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the status page. properties: id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 + description: The ID of the Datadog user who last modified the status page. + example: '' type: string type: - $ref: '#/components/schemas/UsersType' + $ref: '#/components/schemas/StatusPagesUserType' required: - - id - type + - id type: object - RelationshipToUserData: - description: Relationship to user object. + CreateStatusPageRequestDataAttributesComponentsItemsComponentsItems: + description: A grouped component to be created within a status page component group. properties: id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 + description: The ID of the grouped component. + format: uuid + readOnly: true type: string + name: + description: The name of the grouped component. + type: string + position: + description: The zero-indexed position of the grouped component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' type: - $ref: '#/components/schemas/UsersType' + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType' + type: object + DegradationDataAttributesSourceType: + description: The type of the source. + enum: + - incident + example: incident + type: string + x-enum-varnames: + - INCIDENT + DegradationDataAttributesUpdatesItemsComponentsAffectedItems: + description: A component affected at the time of a degradation update. + properties: + id: + description: Identifier of the component affected at the time of the update. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + name: + description: The name of the component affected at the time of the update. + readOnly: true + type: string + status: + $ref: '#/components/schemas/StatusPagesComponentDataAttributesStatus' + description: The status of the component affected at the time of the update. required: - id - - type + - status type: object - RelationshipToIncidentImpactData: - description: Relationship to impact object. + DegradationDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the degradation. properties: id: - description: A unique identifier that represents the impact. - example: 00000000-0000-0000-2345-000000000000 + description: The ID of the Datadog user who created the degradation. + example: '' type: string type: - $ref: '#/components/schemas/IncidentImpactsType' + $ref: '#/components/schemas/StatusPagesUserType' required: + - type - id + type: object + DegradationDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the degradation. + properties: + id: + description: The ID of the Datadog user who last modified the degradation. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: - type + - id type: object - RelationshipToIncidentIntegrationMetadataData: - description: A relationship reference for an integration metadata object. - example: - id: 00000000-abcd-0002-0000-000000000000 - type: incident_integrations + DegradationDataRelationshipsStatusPageData: + description: The data object identifying the status page the degradation belongs to. properties: id: - description: A unique identifier that represents the integration metadata. - example: 00000000-abcd-0001-0000-000000000000 + description: The ID of the status page. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' + $ref: '#/components/schemas/StatusPageDataType' required: - - id - type + - id type: object - RelationshipToIncidentResponderData: - description: Relationship to impact object. + DegradationDataRelationshipsTemplateData: + description: The data object identifying the template the degradation was created from. properties: id: - description: A unique identifier that represents the responder. - example: 00000000-0000-0000-2345-000000000000 + description: The ID of the degradation template. + example: '' type: string type: - $ref: '#/components/schemas/IncidentRespondersType' + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' required: - - id - type + - id type: object - RelationshipToIncidentUserDefinedFieldData: - description: Relationship to impact object. + StatusPageAsIncludedAttributesComponentsItems: + description: A component displayed on an included status page. properties: + components: + description: If the component is of type `group`, the components within the group. + items: + $ref: '#/components/schemas/StatusPageAsIncludedAttributesComponentsItemsComponentsItems' + type: array id: - description: A unique identifier that represents the responder. - example: 00000000-0000-0000-2345-000000000000 + description: The ID of the component. + format: uuid + readOnly: true + type: string + name: + description: The name of the component. type: string + position: + description: The zero-indexed position of the component. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' type: - $ref: '#/components/schemas/IncidentUserDefinedFieldType' - required: - - id - - type + $ref: '#/components/schemas/CreateComponentRequestDataAttributesType' type: object - IncidentTimelineCellMarkdownCreateAttributes: - description: Timeline cell data for Markdown timeline cells for a create request. + StatusPageAsIncludedRelationshipsCreatedByUser: + description: The Datadog user who created the status page. properties: - cell_type: - $ref: '#/components/schemas/IncidentTimelineCellMarkdownContentType' - content: - $ref: >- - #/components/schemas/IncidentTimelineCellMarkdownCreateAttributesContent - important: - default: false - description: >- - A flag indicating whether the timeline cell is important and should - be highlighted. - example: false - type: boolean + data: + $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsCreatedByUserData' required: - - content - - cell_type + - data type: object - IncidentNotificationRuleConditionsItems: - description: A condition that must be met to trigger the notification rule. + StatusPageAsIncludedRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the status page. properties: - field: - description: The incident field to evaluate - example: severity - type: string - values: - description: >- - The value(s) to compare against. Multiple values are `ORed` - together. - example: - - SEV-1 - - SEV-2 - items: - type: string - type: array + data: + $ref: '#/components/schemas/StatusPageAsIncludedRelationshipsLastModifiedByUserData' required: - - field - - values + - data type: object - RelationshipToIncidentTypeData: - description: Relationship to incident type object. + PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus: + description: The status of the component. + enum: + - operational + - maintenance + example: operational + type: string + x-enum-varnames: + - OPERATIONAL + - MAINTENANCE + MaintenanceDataAttributesUpdatesItemsComponentsAffectedItems: + description: A component affected at the time of a maintenance update. properties: id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 + description: Identifier of the component affected at the time of the update. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string - type: - $ref: '#/components/schemas/IncidentTypeType' + name: + description: The name of the component affected at the time of the update. + readOnly: true + type: string + status: + $ref: '#/components/schemas/PatchMaintenanceRequestDataAttributesComponentsAffectedItemsStatus' + description: The status of the component affected at the time of the update. required: - id - - type + - status type: object - RelationshipToIncidentNotificationTemplateData: - description: The notification template relationship data. + MaintenanceDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the maintenance. properties: id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 + description: The ID of the Datadog user who created the maintenance. + example: '' format: uuid type: string type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' + $ref: '#/components/schemas/StatusPagesUserType' required: - - id - type + - id type: object - GoogleMeetConfigurationReferenceData: - description: The Google Meet configuration relationship data object. - nullable: true + MaintenanceDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the maintenance. properties: id: - description: The unique identifier of the Google Meet configuration. - example: 00000000-0000-0000-0000-000000000000 + description: The ID of the Datadog user who last modified the maintenance. + example: '' + format: uuid type: string type: - description: The type of the Google Meet configuration. - example: google_meet_configurations - type: string + $ref: '#/components/schemas/StatusPagesUserType' required: - - id - type + - id type: object - MicrosoftTeamsConfigurationReferenceData: - description: The Microsoft Teams configuration relationship data object. - nullable: true + MaintenanceDataRelationshipsStatusPageData: + description: The data object identifying the status page associated with a maintenance. properties: id: - description: The unique identifier of the Microsoft Teams configuration. - example: 00000000-0000-0000-0000-000000000000 + description: The ID of the status page. + example: '' + format: uuid type: string type: - description: The type of the Microsoft Teams configuration. - example: microsoft_teams_configurations - type: string + $ref: '#/components/schemas/StatusPageDataType' required: - - id - type + - id type: object - ZoomConfigurationReferenceData: - description: The Zoom configuration relationship data object. - nullable: true + MaintenanceDataRelationshipsTemplateData: + description: The data object identifying the template the maintenance was created from. properties: id: - description: The unique identifier of the Zoom configuration. - example: 00000000-0000-0000-0000-000000000000 + description: The ID of the maintenance template. + example: '' type: string type: - description: The type of the Zoom configuration. - example: zoom_configurations - type: string + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' required: - - id - type + - id type: object - IncidentSearchResponseUserFacetData: - description: Facet data for user attributes of an incident. - properties: - count: - $ref: '#/components/schemas/IncidentSearchResponseFacetCount' - email: - description: Email of the user. - example: datadog.user@example.com - type: string - handle: - description: Handle of the user. - example: '@datadog.user@example.com' - type: string - name: - description: Name of the user. - example: Datadog User - type: string - uuid: - description: ID of the user. - example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 - type: string - type: object - IncidentSearchResponsePropertyFieldFacetData: - description: Facet data for the incident property fields. + StatusPagesComponentGroupAttributesComponentsItemsType: + description: The type of the component. + enum: + - component + example: component + type: string + x-enum-varnames: + - COMPONENT + StatusPagesComponentDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the component. properties: - aggregates: - $ref: >- - #/components/schemas/IncidentSearchResponseNumericFacetDataAggregates - facets: - description: Facet data for the property field of an incident. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - name: - description: Name of the incident property field. - example: Severity + id: + description: The ID of the Datadog user who created the component. + example: '' type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' required: - - facets - - name + - type + - id type: object - IncidentSearchResponseFieldFacetData: - description: >- - Facet value and number of occurrences for a property field of an - incident. + StatusPagesComponentDataRelationshipsGroupData: + description: The data object identifying the group the component belongs to. + nullable: true properties: - count: - $ref: '#/components/schemas/IncidentSearchResponseFacetCount' - name: - description: The facet value appearing in search results. - example: SEV-2 + id: + description: The ID of the group the component belongs to. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' + required: + - type + - id type: object - IncidentSearchResponseNumericFacetData: - description: Facet data numeric attributes of an incident. + StatusPagesComponentDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the component. properties: - aggregates: - $ref: >- - #/components/schemas/IncidentSearchResponseNumericFacetDataAggregates - name: - description: Name of the incident property field. - example: time_to_repair + id: + description: The ID of the Datadog user who last modified the component. + example: '' type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' required: - - name - - aggregates + - type + - id type: object - RelationshipToIncidentPostmortemData: - description: The postmortem relationship data. - example: - id: 00000000-0000-abcd-2000-000000000000 - type: incident_postmortems + StatusPagesComponentDataRelationshipsStatusPageData: + description: The data object identifying the status page the component belongs to. properties: id: - description: A unique identifier that represents the postmortem. - example: 00000000-0000-abcd-1000-000000000000 + description: The ID of the status page the component belongs to. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid type: string type: - $ref: '#/components/schemas/IncidentPostmortemType' + $ref: '#/components/schemas/StatusPageDataType' required: - - id - type + - id type: object - IncidentAttachmentsPostmortemAttributesAttachmentObject: - description: The postmortem attachment. + StatusPagesComponentGroupAttributesComponentsItems: + description: A component within a component group. properties: - documentUrl: - description: The URL of this notebook attachment. - example: https://app.datadoghq.com/notebook/123 + id: + description: The ID of the grouped component. + format: uuid + readOnly: true type: string - title: - description: The title of this postmortem attachment. - example: Postmortem IR-123 + name: + description: The name of the grouped component. type: string - required: - - documentUrl - - title + position: + description: The zero-indexed position of the grouped component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' + type: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType' type: object - IncidentAttachmentPostmortemAttachmentType: - default: postmortem - description: The type of postmortem attachment attributes. - enum: - - postmortem - example: postmortem - type: string - x-enum-varnames: - - POSTMORTEM - IncidentAttachmentLinkAttributesAttachmentObject: - description: The link attachment. + StatusPagesComponentGroupRelationshipsCreatedByUser: + description: The Datadog user who created the component group. properties: - documentUrl: - description: The URL of this link attachment. - example: https://www.example.com/webstore-failure-runbook - type: string - title: - description: The title of this link attachment. - example: Runbook for webstore service failures - type: string + data: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsCreatedByUserData' required: - - documentUrl - - title + - data type: object - IncidentAttachmentLinkAttachmentType: - default: link - description: The type of link attachment attributes. - enum: - - link - example: link - type: string - x-enum-varnames: - - LINK - SlackIntegrationMetadata: - description: Incident integration metadata for the Slack integration. + StatusPagesComponentGroupRelationshipsGroup: + description: The group the component group belongs to. properties: - channels: - description: Array of Slack channels in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/SlackIntegrationMetadataChannelItem' - type: array + data: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsGroupData' required: - - channels + - data type: object - JiraIntegrationMetadata: - description: Incident integration metadata for the Jira integration. + StatusPagesComponentGroupRelationshipsLastModifiedByUser: + description: The Datadog user who last modified the component group. properties: - issues: - description: Array of Jira issues in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/JiraIntegrationMetadataIssuesItem' - type: array + data: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsLastModifiedByUserData' required: - - issues + - data type: object - MSTeamsIntegrationMetadata: - description: Incident integration metadata for the Microsoft Teams integration. + StatusPagesComponentGroupRelationshipsStatusPage: + description: The status page the component group belongs to. + properties: + data: + $ref: '#/components/schemas/StatusPagesComponentGroupRelationshipsStatusPageData' + required: + - data + type: object + CreateComponentRequestDataRelationshipsGroupData: + description: The data object identifying the group to create the component within. + nullable: true properties: - teams: - description: Array of Microsoft Teams in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/MSTeamsIntegrationMetadataTeamsItem' - type: array + id: + description: The ID of the group. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' required: - - teams + - type + - id type: object - IncidentTodoAssignee: - description: A todo assignee. - example: '@test.user@test.com' - oneOf: - - $ref: '#/components/schemas/IncidentTodoAssigneeHandle' - - $ref: '#/components/schemas/IncidentTodoAnonymousAssignee' - EscalationPolicyStepAttributesAssignment: - description: >- - Specifies how this escalation step will assign targets (example - `default` or `round-robin`). + PatchDegradationTemplateRequestDataAttributesComponentsAffectedItemsStatus: + description: The status of the component. enum: - - default - - round-robin + - operational + - degraded + - partial_outage + - major_outage + example: operational type: string x-enum-varnames: - - DEFAULT - - ROUND_ROBIN - EscalationPolicyStepTarget: - description: >- - Defines a single escalation target within a step for an escalation - policy creation request. Contains `id` and `type`. + - OPERATIONAL + - DEGRADED + - PARTIAL_OUTAGE + - MAJOR_OUTAGE + DegradationTemplateDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the degradation template. properties: id: - description: Specifies the unique identifier for this target. - example: 00000000-aba1-0000-0000-000000000000 + description: The ID of the Datadog user who created the degradation template. + example: '' type: string type: - $ref: '#/components/schemas/EscalationPolicyStepTargetType' + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id type: object - DataRelationshipsTeamsDataItems: - description: >- - Relates a team to this schedule, identified by `id` and `type` (must be - `teams`). + DegradationTemplateDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the degradation template. properties: id: - description: The unique identifier of the team in this relationship. - example: 00000000-da3a-0000-0000-000000000000 + description: The ID of the Datadog user who last modified the degradation template. + example: '' type: string type: - $ref: '#/components/schemas/DataRelationshipsTeamsDataItemsType' + $ref: '#/components/schemas/StatusPagesUserType' required: - type - id type: object - EscalationPolicyDataRelationshipsStepsDataItems: - description: >- - Defines a relationship to a single step within an escalation policy. - Contains the step's `id` and `type`. + DegradationTemplateDataRelationshipsStatusPageData: + description: The data object identifying the status page associated with a degradation template. properties: id: - description: Specifies the unique identifier for the step resource. - example: 00000000-aba1-0000-0000-000000000000 + description: The ID of the status page. + example: '' type: string type: - $ref: >- - #/components/schemas/EscalationPolicyDataRelationshipsStepsDataItemsType + $ref: '#/components/schemas/StatusPageDataType' required: - type - id type: object - EscalationTargets: - description: A list of escalation targets for a step + CreateDegradationRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the degradation. properties: - data: - description: The `EscalationTargets` `data`. - items: - $ref: '#/components/schemas/EscalationTarget' - type: array + id: + description: The ID of the degradation template. + example: '' + type: string + type: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' + required: + - type + - id type: object - UserAttributesStatus: - description: The user's status. - enum: - - active - - deactivated - - pending - type: string - x-enum-varnames: - - ACTIVE - - DEACTIVATED - - PENDING - OnCallPageTargetType: - description: The kind of target, `team_id` | `team_handle` | `user_id`. - enum: - - team_id - - team_handle - - user_id - example: team_id - type: string - x-enum-varnames: - - TEAM_ID - - TEAM_HANDLE - - USER_ID - LayerAttributesInterval: - description: >- - Defines how often the rotation repeats, using a combination of days and - optional seconds. Should be at least 1 hour. + CreateBackfilledDegradationRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the backfilled degradation. properties: - days: - description: The number of days in each rotation cycle. - example: 1 - format: int32 - maximum: 400 - type: integer - seconds: - description: Any additional seconds for the rotation cycle (up to 30 days). - example: 300 - format: int64 - maximum: 2592000 - type: integer + id: + description: The ID of the degradation template. + example: '' + type: string + type: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' + required: + - type + - id type: object - ScheduleRequestDataAttributesLayersItemsMembersItems: - description: >- - Defines a single member within a schedule layer, including the reference - to the underlying user. + PatchDegradationRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the degradation. properties: - user: - $ref: >- - #/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItemsUser + id: + description: The ID of the degradation template. + example: '' + type: string + type: + $ref: '#/components/schemas/PatchDegradationTemplateRequestDataType' + required: + - type + - id type: object - TimeRestriction: - description: >- - Defines a single time restriction rule with start and end times and the - applicable weekdays. + DegradationUpdateDataRelationshipsUserData: + description: A Datadog user linked to a degradation update. properties: - end_day: - $ref: '#/components/schemas/Weekday' - end_time: - description: Specifies the ending time for this restriction. + id: + description: The ID of the user. + example: '' type: string - start_day: - $ref: '#/components/schemas/Weekday' - start_time: - description: Specifies the starting time for this restriction. + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id + type: object + DegradationUpdateDataRelationshipsDegradationData: + description: The degradation linked to a degradation update. + properties: + id: + description: The ID of the degradation. + example: '' type: string + type: + $ref: '#/components/schemas/PatchDegradationRequestDataType' + required: + - type + - id type: object - ScheduleDataRelationshipsLayersDataItems: - description: >- - Relates a layer to this schedule, identified by `id` and `type` (must be - `layers`). + DegradationUpdateDataRelationshipsStatusPageData: + description: The status page linked to a degradation update. properties: id: - description: The unique identifier of the layer in this relationship. - example: 00000000-0000-0000-0000-000000000001 + description: The ID of the status page. + example: '' type: string type: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItemsType' + $ref: '#/components/schemas/StatusPageDataType' required: - type - id type: object - LayerRelationshipsMembers: - description: >- - Holds an array of references to the members of a Layer, each containing - member IDs. + MaintenanceTemplateDataRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the maintenance template. properties: - data: - description: The list of members who belong to this layer. - items: - $ref: '#/components/schemas/LayerRelationshipsMembersDataItems' - type: array + id: + description: The ID of the Datadog user who created the maintenance template. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id type: object - ScheduleMemberRelationshipsUser: - description: Wraps the user data reference for a schedule member. + MaintenanceTemplateDataRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the maintenance template. properties: - data: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUserData' + id: + description: The ID of the Datadog user who last modified the maintenance template. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' required: - - data + - type + - id type: object - ShiftDataRelationshipsUserData: - description: >- - Represents a reference to the user assigned to this shift, containing - the user's ID and resource type. + MaintenanceTemplateDataRelationshipsStatusPageData: + description: The data object identifying the status page associated with a maintenance template. properties: id: - description: Specifies the unique identifier of the user. - example: 00000000-0000-0000-0000-000000000000 + description: The ID of the status page. + example: '' type: string type: - $ref: '#/components/schemas/ShiftDataRelationshipsUserDataType' + $ref: '#/components/schemas/StatusPageDataType' required: - type - id type: object - TeamOnCallRespondersDataRelationshipsEscalationsDataItems: - description: >- - Represents a link to a specific escalation policy step associated with - the on-call team. + CreateMaintenanceRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the maintenance. properties: id: - description: Unique identifier of the escalation step. + description: The ID of the maintenance template. example: '' type: string type: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' required: - type - id type: object - TeamOnCallRespondersDataRelationshipsRespondersDataItems: - description: Represents a user responder associated with the on-call team. + CreateMaintenanceRequestDataAttributesUpdatesItemsStatus: + description: The status of a maintenance update. + enum: + - in_progress + - completed + example: in_progress + type: string + x-enum-varnames: + - IN_PROGRESS + - COMPLETED + CreateBackfilledMaintenanceRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the backfilled maintenance. properties: id: - description: Unique identifier of the responder. + description: The ID of the maintenance template. example: '' type: string type: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItemsType + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' required: - type - id type: object - EscalationRelationshipsResponders: - description: Lists the users involved in a specific step of the escalation policy. + PatchMaintenanceRequestDataRelationshipsTemplateData: + description: The data object identifying the template used to create the maintenance. properties: - data: - description: >- - Array of user references assigned as responders for this escalation - step. - items: - $ref: '#/components/schemas/EscalationRelationshipsRespondersDataItems' - type: array + id: + description: The ID of the maintenance template. + example: '' + type: string + type: + $ref: '#/components/schemas/PatchMaintenanceTemplateRequestDataType' + required: + - type + - id type: object - TeamRoutingRulesDataRelationshipsRulesDataItems: - description: Defines a relationship item to link a routing rule by its ID and type. + MaintenanceUpdateDataRelationshipsUserData: + description: The data object identifying a Datadog user linked to a maintenance update. properties: id: - description: Specifies the unique identifier for the related routing rule. + description: The ID of the Datadog user. example: '' + format: uuid type: string type: - $ref: >- - #/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItemsType + $ref: '#/components/schemas/StatusPagesUserType' required: - type - id type: object - RoutingRuleAction: - description: >- - Defines an action that is executed when a routing rule matches certain - criteria. - oneOf: - - $ref: '#/components/schemas/SendSlackMessageAction' - - $ref: '#/components/schemas/SendTeamsMessageAction' - TimeRestrictions: - description: >- - Holds time zone information and a list of time restrictions for a - routing rule. + MaintenanceUpdateDataRelationshipsMaintenanceData: + description: The maintenance linked to a maintenance update. properties: - restrictions: - description: Defines the list of time-based restrictions. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - time_zone: - description: Specifies the time zone applicable to the restrictions. + id: + description: The ID of the maintenance. example: '' + format: uuid type: string + type: + $ref: '#/components/schemas/PatchMaintenanceRequestDataType' required: - - time_zone - - restrictions + - type + - id type: object - Urgency: - description: >- - Specifies the level of urgency for a routing rule (low, high, or - dynamic). + SLOTimeSliceComparator: + description: The comparator used to compare the SLI value to the threshold. enum: - - low - - high - - dynamic - example: low + - '>' + - '>=' + - < + - <= + example: '>' type: string x-enum-varnames: - - LOW - - HIGH - - DYNAMIC - RoutingRuleRelationshipsPolicy: - description: Defines the relationship that links a routing rule to a policy. + - GREATER + - GREATER_EQUAL + - LESS + - LESS_EQUAL + SLOTimeSliceQuery: + description: The queries and formula used to calculate the SLI value. + example: + formulas: + - formula: query2/query1 + queries: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{*} by {env}.as_count() + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.errors{*} by {env}.as_count() + properties: + formulas: + description: A list that contains exactly one formula, as only a single formula may be used in a time-slice SLO. + example: + - formula: query1 - default_zero(query2) + items: + $ref: '#/components/schemas/SLOFormula' + maxItems: 1 + minItems: 1 + type: array + queries: + description: A list of queries that are used to calculate the SLI value. + example: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{*} by {env}.as_count() + items: + $ref: '#/components/schemas/SLODataSourceQueryDefinition' + type: array + required: + - formulas + - queries + type: object + SLOTimeSliceInterval: + description: |- + The interval used when querying data, which defines the size of a time slice. + Two values are allowed: 60 (1 minute) and 300 (5 minutes). + If not provided, the value defaults to 300 (5 minutes). + enum: + - 60 + - 300 + example: 300 + format: int32 + type: integer + x-enum-varnames: + - ONE_MINUTE + - FIVE_MINUTES + SLOCountDefinitionWithTotalEventsFormula: + additionalProperties: false + description: SLO count definition using a total events formula alongside a good events formula. properties: - data: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicyData' - nullable: true + good_events_formula: + $ref: '#/components/schemas/SLOFormula' + queries: + example: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count() + items: + $ref: '#/components/schemas/SLODataSourceQueryDefinition' + minItems: 1 + type: array + total_events_formula: + $ref: '#/components/schemas/SLOFormula' + description: The total events formula. Bad events queries can be defined using the `bad_events_formula` field as an alternative. Only one of `total_events_formula` or `bad_events_formula` must be provided. + required: + - good_events_formula + - total_events_formula + - queries + type: object + SLOCountDefinitionWithBadEventsFormula: + additionalProperties: false + description: SLO count definition using a bad events formula alongside a good events formula. + properties: + bad_events_formula: + $ref: '#/components/schemas/SLOFormula' + description: The bad events formula (recommended). Total events queries can be defined using the `total_events_formula` field as an alternative. Only one of `total_events_formula` or `bad_events_formula` must be provided. + good_events_formula: + $ref: '#/components/schemas/SLOFormula' + queries: + example: + - data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{!http.status_code:500} by {env}.as_count() + - data_source: metrics + name: query2 + query: sum:trace.servlet.request.hits{http.status_code:500} by {env}.as_count() + items: + $ref: '#/components/schemas/SLODataSourceQueryDefinition' + minItems: 1 + type: array + required: + - good_events_formula + - bad_events_formula + - queries + type: object + SearchSLOResponseDataAttributesFacetsObjectString: + description: Facet + properties: + count: + description: Count + format: int64 + type: integer + name: + description: Facet + type: string type: object - ServiceDefinitionMetaWarnings: - description: Schema validation warnings. + SearchSLOResponseDataAttributesFacetsObjectInt: + description: Facet properties: - instance-location: - description: The warning instance location. - type: string - keyword-location: - description: The warning keyword location. + count: + description: Count + format: int64 + type: integer + name: + description: Facet + format: double + type: number + type: object + SearchServiceLevelObjectiveData: + description: A service level objective ID and attributes. + properties: + attributes: + $ref: '#/components/schemas/SearchServiceLevelObjectiveAttributes' + id: + description: |- + A unique identifier for the service level objective object. + + Always included in service level objective responses. + readOnly: true type: string - message: - description: The warning message. + type: + description: The type of the object, must be `slo`. type: string type: object - ServiceDefinitionV1: - deprecated: true - description: >- - Deprecated - Service definition V1 for providing additional service - metadata and integrations. + SLOHistoryMetricsSeriesMetadata: + description: Query metadata. + example: {} properties: - contact: - $ref: '#/components/schemas/ServiceDefinitionV1Contact' - extensions: - additionalProperties: {} - description: Extensions to V1 schema. - example: - myorg/extension: extensionValue - type: object - external-resources: - description: A list of external links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV1Resource' - type: array - info: - $ref: '#/components/schemas/ServiceDefinitionV1Info' - integrations: - $ref: '#/components/schemas/ServiceDefinitionV1Integrations' - org: - $ref: '#/components/schemas/ServiceDefinitionV1Org' - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV1Version' - tags: - description: A set of custom tags. + aggr: + deprecated: true + description: Query aggregator function. + type: string + expression: + deprecated: true + description: Query expression. + type: string + metric: + deprecated: true + description: Query metric used. + type: string + query_index: + deprecated: true + description: Query index from original combined query. + format: int64 + type: integer + scope: + deprecated: true + description: Query scope. + type: string + unit: + description: |- + An array of metric units that contains up to two unit objects. + For example, bytes represents one unit object and bytes per second represents two unit objects. + If a metric query only has one unit object, the second array element is null. example: - - my:tag - - service:tag + - family: bytes + id: 2 + name: byte + plural: bytes + scale_factor: 1 + short_name: B + - null items: - type: string + $ref: '#/components/schemas/SLOHistoryMetricsSeriesMetadataUnit' + nullable: true type: array - required: - - schema-version - - info type: object - ServiceDefinitionV2Dot2OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2Dot1EmailType: - description: Contact type. - enum: - - email - example: email - type: string - x-enum-varnames: - - EMAIL - ServiceDefinitionV2Dot1SlackType: - description: Contact type. - enum: - - slack - example: slack - type: string - x-enum-varnames: - - SLACK - ServiceDefinitionV2Dot1MSTeamsType: - description: Contact type. - enum: - - microsoft-teams - example: microsoft-teams - type: string - x-enum-varnames: - - MICROSOFT_TEAMS - ServiceDefinitionV2Dot1OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2EmailType: - description: Contact type. - enum: - - email - example: email - type: string - x-enum-varnames: - - EMAIL - ServiceDefinitionV2SlackType: - description: Contact type. - enum: - - slack - example: slack - type: string - x-enum-varnames: - - SLACK - ServiceDefinitionV2MSTeamsType: - description: Contact type. - enum: - - microsoft-teams - example: microsoft-teams - type: string - x-enum-varnames: - - MICROSOFT_TEAMS - ServiceDefinitionV2OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU UserResourceType: default: user description: User resource type. @@ -12878,6 +41096,96 @@ components: type: string x-enum-varnames: - USER + ProjectColumnsConfigColumnsItemsSort: + description: Sort configuration for a project board column. + properties: + ascending: + description: Whether to sort in ascending order. + type: boolean + priority: + description: The sort priority order for this column. + format: int64 + type: integer + type: object + IntegrationIncidentFieldMappingsItems: + description: Mapping between an incident user-defined field and a case field. + properties: + case_field: + description: The case field to map the incident field value to. + type: string + incident_user_defined_field_id: + description: The identifier of the incident user-defined field to map from. + type: string + type: object + IntegrationIncidentSeverityConfig: + description: Severity configuration for mapping incident priorities to case priorities. + properties: + priority_mapping: + additionalProperties: + type: string + description: Mapping of incident severity values to case priority values. + type: object + type: object + IntegrationJiraAutoCreation: + description: Auto-creation settings for Jira issues from cases. + properties: + enabled: + description: Whether automatic Jira issue creation is enabled. + type: boolean + type: object + IntegrationJiraMetadata: + description: Metadata for connecting a case management project to a Jira project. + properties: + account_id: + description: The Jira account identifier. + type: string + issue_type_id: + description: The Jira issue type identifier to use when creating issues. + type: string + project_id: + description: The Jira project identifier to associate with this case project. + type: string + type: object + IntegrationJiraSync: + description: Synchronization configuration for Jira integration. + properties: + enabled: + description: Whether Jira field synchronization is enabled. + type: boolean + properties: + $ref: '#/components/schemas/IntegrationJiraSyncProperties' + type: object + IntegrationOnCallEscalationQueriesItems: + description: An On-Call escalation query entry used to route cases to on-call responders. + properties: + enabled: + description: Whether this escalation query is enabled. + type: boolean + id: + description: Unique identifier of the escalation query. + type: string + query: + description: The query used to match cases for escalation. + type: string + target: + $ref: '#/components/schemas/IntegrationOnCallEscalationQueriesItemsTarget' + type: object + IntegrationServiceNowAutoCreation: + description: Auto-creation settings for ServiceNow incidents from cases. + properties: + enabled: + description: Whether automatic ServiceNow incident creation is enabled. + type: boolean + type: object + IntegrationServiceNowSyncConfig: + description: Synchronization configuration for ServiceNow integration. + properties: + enabled: + description: Whether ServiceNow synchronization is enabled. + type: boolean + properties: + $ref: '#/components/schemas/IntegrationServiceNowSyncConfig139772721534496' + type: object TeamLinkType: default: team_links description: Team link type @@ -12887,14 +41195,34 @@ components: type: string x-enum-varnames: - TEAM_LINKS + TimelineCellAuthorUserContent: + description: Profile information for the user who authored the timeline cell. + properties: + email: + description: The email address of the user. + type: string + handle: + description: The Datadog handle of the user. + type: string + id: + description: The UUID of the user. + type: string + name: + description: The display name of the user. + type: string + type: object + TimelineCellAuthorUserType: + description: The type of timeline cell author. Currently only `USER` is supported. + enum: + - USER + example: USER + type: string + x-enum-varnames: + - USER DowntimeScheduleCurrentDowntimeResponse: - description: >- - The most recent actual start and end dates for a recurring downtime. For - a canceled downtime, - - this is the previously occurring downtime. For active downtimes, this is - the ongoing downtime, and for scheduled - + description: |- + The most recent actual start and end dates for a recurring downtime. For a canceled downtime, + this is the previously occurring downtime. For active downtimes, this is the ongoing downtime, and for scheduled downtimes it is the upcoming downtime. properties: end: @@ -12917,10 +41245,8 @@ components: rrule: $ref: '#/components/schemas/DowntimeScheduleRecurrenceRrule' start: - description: >- - ISO-8601 Datetime to start the downtime. Must not include a UTC - offset. If not provided, the - + description: |- + ISO-8601 Datetime to start the downtime. Must not include a UTC offset. If not provided, the downtime starts the moment it is created. example: 2020-01-02T03:04 type: string @@ -12957,10 +41283,8 @@ components: rrule: $ref: '#/components/schemas/DowntimeScheduleRecurrenceRrule' start: - description: >- - ISO-8601 Datetime to start the downtime. Must not include a UTC - offset. If not provided, the - + description: |- + ISO-8601 Datetime to start the downtime. Must not include a UTC offset. If not provided, the downtime starts the moment it is created. example: 2020-01-02T03:04 nullable: true @@ -12972,6 +41296,10 @@ components: IssueCaseJiraIssueResult: description: Contains the identifiers and URL for a successfully created Jira issue. properties: + account_id: + description: Jira account identifier. + example: abcd1234-5678-90ab-cdef-1234567890ab + type: string issue_id: description: Jira issue identifier. example: '1904866' @@ -12984,21 +41312,45 @@ components: description: Jira issue URL. example: https://your-jira-instance.atlassian.net/browse/ET-123 type: string + project_id: + description: Jira project identifier. + example: '10001' + type: string project_key: description: Jira project key. example: ET type: string type: object + IssueCaseLinearIssueResult: + description: Contains the identifiers and URL for a successfully created Linear issue. + properties: + account_id: + description: Linear account identifier. + example: abcd1234-5678-90ab-cdef-1234567890ab + type: string + issue_id: + description: Linear issue identifier. + example: a1b2c3d4-5678-90ab-cdef-1234567890ab + type: string + issue_key: + description: Linear issue key. + example: ENG-123 + type: string + issue_url: + description: Linear issue URL. + example: https://linear.app/your-workspace/issue/ENG-123 + type: string + team_id: + description: Linear team identifier. + example: f1e2d3c4-5678-90ab-cdef-1234567890ab + type: string + type: object ChangeEventCustomAttributesAuthor: additionalProperties: false - description: >- - The entity that made the change. Optional, if provided it must include - `type` and `name`. + description: The entity that made the change. Optional, if provided it must include `type` and `name`. properties: name: - description: >- - The name of the user or system that made the change. Limited to 128 - characters. + description: The name of the user or system that made the change. Limited to 128 characters. example: example@datadog.com maxLength: 128 minLength: 1 @@ -13014,12 +41366,11 @@ components: description: A uniquely identified resource. properties: name: - description: >- - The name of the resource that was changed. Limited to 128 - characters. + description: The name of the resource that was changed. Limited to 128 characters. Must contain at least one non-whitespace character. example: fallback_payments_test maxLength: 128 minLength: 1 + pattern: .*\S.* type: string type: $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResourceType' @@ -13038,17 +41389,14 @@ components: minLength: 1 type: string type: - $ref: >- - #/components/schemas/ChangeEventCustomAttributesImpactedResourcesItemsType + $ref: '#/components/schemas/ChangeEventCustomAttributesImpactedResourcesItemsType' required: - type - name type: object AlertEventCustomAttributesCustom: additionalProperties: {} - description: >- - Free form JSON object for arbitrary data. Supports up to 100 properties - per object and a maximum nesting depth of 10 levels. + description: Free form JSON object for arbitrary data. Supports up to 100 properties per object and a maximum nesting depth of 10 levels. example: {} type: object AlertEventCustomAttributesLinks: @@ -13116,9 +41464,7 @@ components: category: $ref: '#/components/schemas/EventSystemAttributesCategory' id: - description: >- - Event identifier. This field is deprecated and will be removed in a - future version. Use the `uid` field instead. + description: Event identifier. This field is deprecated and will be removed in a future version. Use the `uid` field instead. type: string integration_id: $ref: '#/components/schemas/EventSystemAttributesIntegrationId' @@ -13127,9 +41473,7 @@ components: format: int64 type: integer uid: - description: >- - A unique identifier for the event. You can use this identifier to - query or reference the event. + description: A unique identifier for the event. You can use this identifier to query or reference the event. type: string type: object ChangeEventAttributesImpactedResourcesItem: @@ -13194,6 +41538,29 @@ components: - WARN - ERROR - OK + FormUiDefinitionUiThemePrimaryColor: + description: The primary color of the form theme. + enum: + - gray + - red + - orange + - yellow + - green + - light-blue + - dark-blue + - magenta + - indigo + type: string + x-enum-varnames: + - GRAY + - RED + - ORANGE + - YELLOW + - GREEN + - LIGHT_BLUE + - DARK_BLUE + - MAGENTA + - INDIGO IncidentFieldAttributesSingleValueType: default: dropdown description: Type of the single value field definitions. @@ -13236,14 +41603,6 @@ components: type: string x-enum-varnames: - INCIDENT_RESPONDERS - IncidentUserDefinedFieldType: - description: The incident user defined fields type. - enum: - - user_defined_field - example: user_defined_field - type: string - x-enum-varnames: - - USER_DEFINED_FIELD IncidentTimelineCellMarkdownContentType: default: markdown description: Type of the Markdown timeline cell. @@ -13293,6 +41652,16 @@ components: type: string x-enum-varnames: - INCIDENT_POSTMORTEMS + PostmortemCellDefinition: + description: Definition of a postmortem cell + properties: + content: + description: The content of the cell in markdown format + example: |- + ## Incident Summary + This incident was caused by... + type: string + type: object SlackIntegrationMetadataChannelItem: description: Item in the Slack integration metadata channel array. properties: @@ -13361,8 +41730,7 @@ components: type: string redirect_url: description: URL redirecting to the Microsoft Teams channel. - example: >- - https://teams.microsoft.com/l/channel/19%3Aabc00abcdef00a0abcdef0abcdef0a%40thread.tacv2/conversations?groupId=12345678-abcd-dcba-abcd-1234567890ab&tenantId=00000000-abcd-0005-0000-000000000000 + example: https://teams.microsoft.com/l/channel/19%3Aabc00abcdef00a0abcdef0abcdef0a%40thread.tacv2/conversations?groupId=12345678-abcd-dcba-abcd-1234567890ab&tenantId=00000000-abcd-0005-0000-000000000000 type: string required: - ms_tenant_id @@ -13397,10 +41765,14 @@ components: - name - source type: object + EscalationPolicyStepTargetConfig: + description: Configuration for an escalation target, such as schedule position. + properties: + schedule: + $ref: '#/components/schemas/EscalationPolicyStepTargetConfigSchedule' + type: object EscalationPolicyStepTargetType: - description: >- - Specifies the type of escalation target (example `users`, `schedules`, - or `teams`). + description: Specifies the type of escalation target (example `users`, `schedules`, or `teams`). enum: - users - schedules @@ -13430,15 +41802,33 @@ components: x-enum-varnames: - STEPS EscalationTarget: - description: Represents an escalation target, which can be a team, user, or schedule. - oneOf: - - $ref: '#/components/schemas/TeamTarget' - - $ref: '#/components/schemas/UserTarget' - - $ref: '#/components/schemas/ScheduleTarget' + description: Represents an escalation target, which can be a team, user, schedule, or configured schedule target. + properties: + id: + description: Specifies the unique identifier of the team resource. + example: 00000000-aba1-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/TeamTargetType' + required: + - type + - id + type: object + ScheduleTarget: + description: Represents a schedule target for an escalation policy step, including its ID and resource type. This is a shortcut for a configured schedule target with position set to 'current'. + properties: + id: + description: Specifies the unique identifier of the schedule resource. + example: 00000000-aba1-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ScheduleTargetType' + required: + - type + - id + type: object ScheduleRequestDataAttributesLayersItemsMembersItemsUser: - description: >- - Identifies the user participating in this layer as a single object with - an `id`. + description: Identifies the user participating in this layer as a single object with an `id`. properties: id: description: The user's ID. @@ -13474,10 +41864,8 @@ components: x-enum-varnames: - LAYERS LayerRelationshipsMembersDataItems: - description: >- - Represents a single member object in a layer's `members` array, - referencing - + description: |- + Represents a single member object in a layer's `members` array, referencing a unique Datadog user ID. properties: id: @@ -13491,9 +41879,7 @@ components: - id type: object ScheduleMemberRelationshipsUserData: - description: >- - Points to the user data associated with this schedule member, including - an ID and type. + description: Points to the user data associated with this schedule member, including an ID and type. properties: id: description: The user's unique identifier. @@ -13514,11 +41900,40 @@ components: type: string x-enum-varnames: - USERS + ScheduleOnCallRespondersDataRelationshipsRespondersDataItemsType: + default: schedule_oncall_responder + description: Identifies the resource type for a responder group linked to a schedule's on-call responders lookup. + enum: + - schedule_oncall_responder + example: schedule_oncall_responder + type: string + x-enum-varnames: + - SCHEDULE_ONCALL_RESPONDER + ScheduleOnCallRespondersDataRelationshipsScheduleDataType: + default: schedules + description: Identifies the resource type for the schedule associated with this on-call responders lookup. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES + ScheduleOnCallResponderDataRelationshipsShiftsDataItems: + description: Represents a reference to one of the shifts satisfying this responder group's position. + properties: + id: + description: Unique identifier of the shift. + example: 00000000-0000-0000-0000-000000000000 + type: string + type: + $ref: '#/components/schemas/ScheduleOnCallResponderDataRelationshipsShiftsDataItemsType' + required: + - type + - id + type: object TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType: default: escalation_policy_steps - description: >- - Identifies the resource type for escalation policy steps linked to a - team's on-call configuration. + description: Identifies the resource type for escalation policy steps linked to a team's on-call configuration. enum: - escalation_policy_steps example: escalation_policy_steps @@ -13527,9 +41942,7 @@ components: - ESCALATION_POLICY_STEPS TeamOnCallRespondersDataRelationshipsRespondersDataItemsType: default: users - description: >- - Identifies the resource type for individual user entities associated - with on-call response. + description: Identifies the resource type for individual user entities associated with on-call response. enum: - users example: users @@ -13599,10 +42012,43 @@ components: - tenant - team type: object + TriggerWorkflowAutomationAction: + description: Triggers a Workflow Automation. + properties: + handle: + description: The handle of the Workflow Automation to trigger. + example: my-workflow-handle + type: string + type: + $ref: '#/components/schemas/TriggerWorkflowAutomationActionType' + required: + - type + - handle + type: object + RoutingRuleEscalationPolicyAction: + description: Triggers an escalation policy. + properties: + ack_timeout_minutes: + description: The number of minutes before an acknowledged page is re-triggered. + example: 30 + format: int64 + type: integer + policy_id: + description: The ID of the escalation policy to route to. + example: 00000000-0000-0000-0000-000000000000 + type: string + support_hours: + $ref: '#/components/schemas/RoutingRuleEscalationPolicyActionSupportHours' + type: + $ref: '#/components/schemas/RoutingRuleEscalationPolicyActionType' + urgency: + $ref: '#/components/schemas/Urgency' + required: + - type + - policy_id + type: object RoutingRuleRelationshipsPolicyData: - description: >- - Represents the policy data reference, containing the policy's ID and - resource type. + description: Represents the policy data reference, containing the policy's ID and resource type. properties: id: description: Specifies the unique identifier of the policy. @@ -13614,6 +42060,54 @@ components: - type - id type: object + NotificationChannelPhoneConfigType: + default: phone + description: Indicates that the notification channel is a phone + enum: + - phone + example: phone + type: string + x-enum-varnames: + - PHONE + NotificationChannelEmailFormatType: + default: html + description: Specifies the format of the e-mail that is sent for On-Call notifications + enum: + - html + - text + example: html + type: string + x-enum-varnames: + - HTML + - TEXT + NotificationChannelEmailConfigType: + default: email + description: Indicates that the notification channel is an e-mail address + enum: + - email + example: email + type: string + x-enum-varnames: + - EMAIL + NotificationChannelPushConfigType: + default: push + description: Indicates that the notification channel is a mobile device for push notifications + enum: + - push + example: push + type: string + x-enum-varnames: + - PUSH + OnCallPhoneNotificationRuleMethod: + description: Specifies the method in which a phone is used in a notification rule + enum: + - sms + - voice + example: sms + type: string + x-enum-varnames: + - SMS + - VOICE ServiceDefinitionV1Contact: description: Contact information about the service. properties: @@ -13648,9 +42142,7 @@ components: description: Basic information about a service. properties: dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. + description: Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. example: myservice type: string description: @@ -13695,29 +42187,346 @@ components: type: string x-enum-varnames: - V1 + StatusPageAsIncludedAttributesComponentsItemsComponentsItems: + description: A grouped component within a status page component group. + properties: + id: + description: The ID of the grouped component. + format: uuid + readOnly: true + type: string + name: + description: The name of the grouped component. + type: string + position: + description: The zero-indexed position of the grouped component. Relative to the other components in the group. + format: int64 + type: integer + status: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsStatus' + type: + $ref: '#/components/schemas/StatusPagesComponentGroupAttributesComponentsItemsType' + type: object + StatusPageAsIncludedRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the status page. + properties: + id: + description: The ID of the Datadog user who created the status page. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id + type: object + StatusPageAsIncludedRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the status page. + properties: + id: + description: The ID of the Datadog user who last modified the status page. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsCreatedByUserData: + description: The data object identifying the Datadog user who created the component group. + properties: + id: + description: The ID of the Datadog user who created the component group. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsGroupData: + description: The data object identifying the parent group of a component group. + nullable: true + properties: + id: + description: The ID of the parent group. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPagesComponentGroupType' + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsLastModifiedByUserData: + description: The data object identifying the Datadog user who last modified the component group. + properties: + id: + description: The ID of the Datadog user who last modified the component group. + example: '' + type: string + type: + $ref: '#/components/schemas/StatusPagesUserType' + required: + - type + - id + type: object + StatusPagesComponentGroupRelationshipsStatusPageData: + description: The data object identifying the status page the component group belongs to. + properties: + id: + description: The ID of the status page. + example: 1234abcd-12ab-34cd-56ef-123456abcdef + format: uuid + type: string + type: + $ref: '#/components/schemas/StatusPageDataType' + required: + - type + - id + type: object + SLOFormula: + description: A formula that specifies how to combine the results of multiple queries. + example: + formula: query1 - default_zero(query2) + properties: + formula: + description: The formula string, which is an expression involving named queries. + example: query1 - default_zero(query2) + type: string + required: + - formula + type: object + SLODataSourceQueryDefinition: + description: A formula and function query. + example: + data_source: metrics + name: query1 + query: sum:trace.servlet.request.hits{*} by {env}.as_count() + properties: + aggregator: + $ref: '#/components/schemas/FormulaAndFunctionMetricAggregation' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionMetricDataSource' + name: + description: Name of the query for use in formulas. + example: my_query + type: string + query: + description: Metrics query definition. + example: avg:system.cpu.user{*} + type: string + semantic_mode: + $ref: '#/components/schemas/FormulaAndFunctionMetricSemanticMode' + required: + - data_source + - query + - name + type: object + SearchServiceLevelObjectiveAttributes: + description: |- + A service level objective object includes a service level indicator, thresholds + for one or more timeframes, and metadata (`name`, `description`, and `tags`). + properties: + all_tags: + description: |- + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + example: + - env:prod + - app:core + items: + description: A tag associated with the service level objective. + type: string + type: array + created_at: + description: |- + Creation timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + creator: + $ref: '#/components/schemas/SLOCreator' + description: + description: |- + A user-defined description of the service level objective. + + Always included in service level objective responses (but may be `null`). + Optional in create/update requests. + nullable: true + type: string + env_tags: + description: Tags with the `env` tag key. + items: + description: A tag with the `env` tag key. + type: string + type: array + groups: + description: |- + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + Included in service level objective responses if it is not empty. + example: + - env:prod + - role:mysql + items: + description: A group name, for instance `env:prod`. + type: string + nullable: true + type: array + modified_at: + description: |- + Modification timestamp (UNIX time in seconds) + + Always included in service level objective responses. + format: int64 + readOnly: true + type: integer + monitor_ids: + description: |- + A list of monitor ids that defines the scope of a monitor service level + objective. + items: + description: A monitor ID. + format: int64 + type: integer + nullable: true + type: array + name: + description: The name of the service level objective object. + example: Custom Metric SLO + type: string + overall_status: + description: calculated status and error budget remaining. + items: + $ref: '#/components/schemas/SLOOverallStatuses' + type: array + query: + $ref: '#/components/schemas/SearchSLOQuery' + service_tags: + description: Tags with the `service` tag key. + items: + description: A tag with the `service` tag key. + type: string + type: array + slo_type: + $ref: '#/components/schemas/SLOType' + status: + $ref: '#/components/schemas/SLOStatus' + team_tags: + description: Tags with the `team` tag key. + items: + description: A tag with the `team` tag key. + type: string + type: array + thresholds: + description: |- + The thresholds (timeframes and associated targets) for this service level + objective object. + example: + - target: 95 + target_display: '95' + timeframe: 7d + - target: 95 + target_display: '95' + timeframe: 30d + warning: 97 + warning_display: '97' + items: + $ref: '#/components/schemas/SearchSLOThreshold' + type: array + type: object + SLOHistoryMetricsSeriesMetadataUnit: + description: An Object of metric units. + nullable: true + properties: + family: + description: The family of metric unit, for example `bytes` is the family for `kibibyte`, `byte`, and `bit` units. + type: string + id: + description: The ID of the metric unit. + format: int64 + type: integer + name: + description: The unit of the metric, for instance `byte`. + type: string + plural: + description: The plural Unit of metric, for instance `bytes`. + nullable: true + type: string + scale_factor: + description: The scale factor of metric unit, for instance `1.0`. + format: double + type: number + short_name: + description: A shorter and abbreviated version of the metric unit, for instance `B`. + nullable: true + type: string + type: object + IntegrationJiraSyncProperties: + description: Field synchronization properties for Jira integration. + properties: + assignee: + $ref: '#/components/schemas/SyncProperty' + comments: + $ref: '#/components/schemas/SyncProperty' + custom_fields: + additionalProperties: + $ref: '#/components/schemas/IntegrationJiraSyncPropertiesCustomFieldsAdditionalProperties' + description: Map of custom field identifiers to their sync configurations. + type: object + description: + $ref: '#/components/schemas/SyncProperty' + due_date: + $ref: '#/components/schemas/IntegrationJiraSyncDueDate' + priority: + $ref: '#/components/schemas/SyncPropertyWithMapping' + status: + $ref: '#/components/schemas/SyncPropertyWithMapping' + title: + $ref: '#/components/schemas/SyncProperty' + type: object + IntegrationOnCallEscalationQueriesItemsTarget: + description: The target recipient for an On-Call escalation query. + properties: + dynamic_team_paging: + description: Whether to use dynamic team paging for escalation. + type: boolean + team_id: + description: The identifier of the team to escalate to. + type: string + user_id: + description: The identifier of the user to escalate to. + type: string + type: object + IntegrationServiceNowSyncConfig139772721534496: + description: Field-level synchronization properties for ServiceNow integration. + properties: + comments: + $ref: '#/components/schemas/SyncProperty' + priority: + $ref: '#/components/schemas/IntegrationServiceNowSyncConfigPriority' + status: + $ref: '#/components/schemas/SyncPropertyWithMapping' + type: object DowntimeScheduleRecurrenceDuration: - description: >- - The length of the downtime. Must begin with an integer and end with one - of 'm', 'h', d', or 'w'. + description: The length of the downtime. Must begin with an integer and end with one of 'm', 'h', d', or 'w'. example: 123d type: string DowntimeScheduleRecurrenceRrule: - description: >- + description: |- The `RRULE` standard for defining recurring events. + For example, to have a recurring event on the first day of each month, set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` to `1`. + Most common `rrule` options from the [iCalendar Spec](https://tools.ietf.org/html/rfc5545) are supported. - For example, to have a recurring event on the first day of each month, - set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` - to `1`. - - Most common `rrule` options from the [iCalendar - Spec](https://tools.ietf.org/html/rfc5545) are supported. - - - **Note**: Attributes specifying the duration in `RRULE` are not - supported (for example, `DTSTART`, `DTEND`, `DURATION`). - - More examples available in this [downtime - guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api). + **Note**: Attributes specifying the duration in `RRULE` are not supported (for example, `DTSTART`, `DTEND`, `DURATION`). + More examples available in this [downtime guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api). example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 type: string OrganizationsType: @@ -13863,10 +42672,14 @@ components: x-enum-varnames: - SLACK - MICROSOFT_TEAMS + EscalationPolicyStepTargetConfigSchedule: + description: Schedule-specific configuration for an escalation target. + properties: + position: + $ref: '#/components/schemas/ScheduleTargetPosition' + type: object TeamTarget: - description: >- - Represents a team target for an escalation policy step, including the - team's ID and resource type. + description: Represents a team target for an escalation policy step, including the team's ID and resource type. properties: id: description: Specifies the unique identifier of the team resource. @@ -13879,9 +42692,7 @@ components: - id type: object UserTarget: - description: >- - Represents a user target for an escalation policy step, including the - user's ID and resource type. + description: Represents a user target for an escalation policy step, including the user's ID and resource type. properties: id: description: Specifies the unique identifier of the user resource. @@ -13893,21 +42704,28 @@ components: - type - id type: object - ScheduleTarget: - description: >- - Represents a schedule target for an escalation policy step, including - its ID and resource type. + ConfiguredScheduleTarget: + description: Relationship reference to a configured schedule target. properties: id: - description: Specifies the unique identifier of the schedule resource. - example: 00000000-aba1-0000-0000-000000000000 + description: Specifies the unique identifier of the configured schedule target. + example: 00000000-aba1-0000-0000-000000000000_previous type: string type: - $ref: '#/components/schemas/ScheduleTargetType' + $ref: '#/components/schemas/ConfiguredScheduleTargetType' required: - type - id type: object + ScheduleTargetType: + default: schedules + description: Indicates that the resource is of type `schedules`. + enum: + - schedules + example: schedules + type: string + x-enum-varnames: + - SCHEDULES LayerRelationshipsMembersDataItemsType: default: members description: Members resource type. @@ -13926,11 +42744,18 @@ components: type: string x-enum-varnames: - USERS + ScheduleOnCallResponderDataRelationshipsShiftsDataItemsType: + default: shifts + description: Indicates that the related resource is of type `shifts`. + enum: + - shifts + example: shifts + type: string + x-enum-varnames: + - SHIFTS EscalationRelationshipsRespondersDataItemsType: default: users - description: >- - Represents the resource type for users assigned as responders in an - escalation step. + description: Represents the resource type for users assigned as responders in an escalation step. enum: - users example: users @@ -13955,6 +42780,39 @@ components: type: string x-enum-varnames: - SEND_TEAMS_MESSAGE + TriggerWorkflowAutomationActionType: + default: workflow + description: Indicates that the action triggers a Workflow Automation. + enum: + - workflow + example: workflow + type: string + x-enum-varnames: + - TRIGGER_WORKFLOW_AUTOMATION + RoutingRuleEscalationPolicyActionSupportHours: + description: Support hours during which the escalation policy will be executed. Outside of these hours, the escalation policy will be on hold and triggered once the next support hours window starts. This is mutually exclusive with the top-level `time_restriction` field on the routing rule. + properties: + restrictions: + description: The list of support hours time windows. + items: + $ref: '#/components/schemas/TimeRestriction' + type: array + time_zone: + description: The time zone in which the support hours are expressed. + example: '' + type: string + required: + - time_zone + type: object + RoutingRuleEscalationPolicyActionType: + default: escalation_policy + description: Indicates that the action pages an escalation policy. This action can be set once per routing rule item, and is mutually exclusive with the top-level `policy_id` field on the routing rule. + enum: + - escalation_policy + example: escalation_policy + type: string + x-enum-varnames: + - ESCALATION_POLICY RoutingRuleRelationshipsPolicyDataType: default: policies description: Indicates that the resource is of type 'policies'. @@ -13992,18 +42850,274 @@ components: description: PagerDuty service URL for the service. example: https://my-org.pagerduty.com/service-directory/PMyService type: string + FormulaAndFunctionMetricQueryDefinition: + description: A formula and functions metrics query. + example: + data_source: metrics + name: my_query + query: avg:system.cpu.user{*} + properties: + aggregator: + $ref: '#/components/schemas/FormulaAndFunctionMetricAggregation' + cross_org_uuids: + $ref: '#/components/schemas/CrossOrgUuidsV1' + data_source: + $ref: '#/components/schemas/FormulaAndFunctionMetricDataSource' + name: + description: Name of the query for use in formulas. + example: my_query + type: string + query: + description: Metrics query definition. + example: avg:system.cpu.user{*} + type: string + semantic_mode: + $ref: '#/components/schemas/FormulaAndFunctionMetricSemanticMode' + required: + - data_source + - query + - name + type: object + SLOCreator: + description: The creator of the SLO + nullable: true + properties: + email: + description: Email of the creator. + type: string + id: + description: User ID of the creator. + format: int64 + type: integer + name: + description: Name of the creator. + nullable: true + type: string + type: object + SLOOverallStatuses: + description: Overall status of the SLO by timeframes. + properties: + error: + description: Error message if SLO status or error budget could not be calculated. + nullable: true + type: string + error_budget_remaining: + description: Remaining error budget of the SLO in percentage. + example: 100 + format: double + nullable: true + type: number + indexed_at: + description: |- + timestamp (UNIX time in seconds) of when the SLO status and error budget + were calculated. + example: 1662496260 + format: int64 + type: integer + raw_error_budget_remaining: + $ref: '#/components/schemas/SLORawErrorBudgetRemaining' + span_precision: + description: The amount of decimal places the SLI value is accurate to. + example: 2 + format: int64 + nullable: true + type: integer + state: + $ref: '#/components/schemas/SLOState' + status: + description: The status of the SLO. + example: 100 + format: double + nullable: true + type: number + target: + description: The target of the SLO. + example: 99 + format: double + type: number + timeframe: + $ref: '#/components/schemas/SLOTimeframe' + type: object + SearchSLOQuery: + description: |- + A metric-based SLO. **Required if type is `metric`**. Note that Datadog only allows the sum by aggregator + to be used because this will sum up all request counts instead of averaging them, or taking the max or + min of all of those requests. + nullable: true + properties: + denominator: + description: A Datadog metric query for total (valid) events. + example: sum:my.custom.metric{*}.as_count() + type: string + metrics: + description: |- + Metric names used in the query's numerator and denominator. + This field will return null and will be implemented in the next version of this endpoint. + example: + - my.custom.metric + - my.other.custom.metric + items: + description: Metric name. + type: string + nullable: true + type: array + numerator: + description: A Datadog metric query for good events. + example: sum:my.custom.metric{type:good}.as_count() + type: string + type: object + SLOStatus: + description: Status of the SLO's primary timeframe. + properties: + calculation_error: + description: Error message if SLO status or error budget could not be calculated. + nullable: true + type: string + error_budget_remaining: + description: Remaining error budget of the SLO in percentage. + example: 100 + format: double + nullable: true + type: number + indexed_at: + description: |- + timestamp (UNIX time in seconds) of when the SLO status and error budget + were calculated. + example: 1662496260 + format: int64 + type: integer + raw_error_budget_remaining: + $ref: '#/components/schemas/SLORawErrorBudgetRemaining' + sli: + description: The current service level indicator (SLI) of the SLO, also known as 'status'. This is a percentage value from 0-100 (inclusive). + example: 100 + format: double + nullable: true + type: number + span_precision: + description: The number of decimal places the SLI value is accurate to. + example: 2 + format: int64 + nullable: true + type: integer + state: + $ref: '#/components/schemas/SLOState' + type: object + SearchSLOThreshold: + description: SLO thresholds (target and optionally warning) for a single time window. + properties: + target: + description: |- + The target value for the service level indicator within the corresponding + timeframe. + example: 99.9 + format: double + type: number + target_display: + description: |- + A string representation of the target that indicates its precision. + It uses trailing zeros to show significant decimal places (for example `98.00`). + + Always included in service level objective responses. Ignored in + create/update requests. + example: '99.9' + type: string + timeframe: + $ref: '#/components/schemas/SearchSLOTimeframe' + warning: + description: The warning value for the service level objective. + example: 90 + format: double + nullable: true + type: number + warning_display: + description: |- + A string representation of the warning target (see the description of + the `target_display` field for details). + + Included in service level objective responses if a warning target exists. + Ignored in create/update requests. + example: '90.0' + nullable: true + type: string + required: + - timeframe + - target + type: object + SyncProperty: + description: Sync property configuration. + properties: + sync_type: + description: The direction and type of synchronization for this property. + type: string + type: object + IntegrationJiraSyncPropertiesCustomFieldsAdditionalProperties: + description: Synchronization configuration for a Jira custom field. + properties: + sync_type: + description: The type of synchronization to apply for this custom field. + type: string + value: + $ref: '#/components/schemas/AnyValue' + type: object + IntegrationJiraSyncDueDate: + description: Due date synchronization configuration for Jira integration. + properties: + jira_field_id: + description: The Jira field identifier used to store the due date. + type: string + sync_type: + description: The type of synchronization to apply for the due date field. + type: string + type: object + SyncPropertyWithMapping: + description: Sync property with mapping configuration. + properties: + mapping: + additionalProperties: + type: string + description: Map of source values to destination values for synchronization. + type: object + name_mapping: + additionalProperties: + type: string + description: Map of source names to display names used during synchronization. + type: object + sync_type: + description: The direction and type of synchronization for this property. + type: string + type: object + IntegrationServiceNowSyncConfigPriority: + description: Priority synchronization configuration for ServiceNow integration. + properties: + impact_mapping: + additionalProperties: + type: string + description: Mapping of case priority values to ServiceNow impact values. + type: object + sync_type: + description: The type of synchronization to apply for priority. + type: string + urgency_mapping: + additionalProperties: + type: string + description: Mapping of case priority values to ServiceNow urgency values. + type: object + type: object AlertEventCustomAttributesLinksItemsCategory: description: The category of the link. enum: - runbook - documentation - dashboard + - resource example: runbook type: string x-enum-varnames: - RUNBOOK - DOCUMENTATION - DASHBOARD + - RESOURCE TeamTargetType: default: teams description: Indicates that the resource is of type `teams`. @@ -14022,16 +43136,135 @@ components: type: string x-enum-varnames: - USERS - ScheduleTargetType: - default: schedules - description: Indicates that the resource is of type `schedules`. + FormulaAndFunctionMetricAggregation: + description: The aggregation methods available for metrics queries. enum: - - schedules - example: schedules + - avg + - min + - max + - sum + - last + - area + - l2norm + - percentile + example: avg type: string x-enum-varnames: - - SCHEDULES + - AVG + - MIN + - MAX + - SUM + - LAST + - AREA + - L2NORM + - PERCENTILE + CrossOrgUuidsV1: + description: The source organization UUID for cross organization queries. Feature in Private Beta. + example: + - 6434abde-xxxx-yyyy-zzzz-da7ad0900001 + items: + description: The source organization UUID. + example: 6434abde-xxxx-yyyy-zzzz-da7ad0900001 + type: string + maxItems: 1 + type: array + FormulaAndFunctionMetricDataSource: + description: Data source for metrics queries. + enum: + - metrics + example: metrics + type: string + x-enum-varnames: + - METRICS + FormulaAndFunctionMetricSemanticMode: + description: Semantic mode for metrics queries. This determines how metrics from different sources are combined or displayed. + enum: + - combined + - native + example: combined + type: string + x-enum-varnames: + - COMBINED + - NATIVE + SLORawErrorBudgetRemaining: + description: Error budget remaining for an SLO. + nullable: true + properties: + unit: + description: Error budget remaining unit. + example: requests + type: string + value: + description: Error budget remaining value. + example: 60 + format: double + type: number + type: object + SLOState: + description: State of the SLO. + enum: + - breached + - warning + - ok + - no_data + example: ok + type: string + x-enum-varnames: + - BREACHED + - WARNING + - OK + - NO_DATA + SearchSLOTimeframe: + description: The SLO time window options. + enum: + - 7d + - 30d + - 90d + example: 30d + type: string + x-enum-varnames: + - SEVEN_DAYS + - THIRTY_DAYS + - NINETY_DAYS + AnyValue: + description: Represents any valid JSON value. + nullable: true + type: object + format: double + additionalProperties: {} + items: + $ref: '#/components/schemas/AnyValueItem' + AnyValueString: + description: A scalar value represented as a string. + type: string + AnyValueNumber: + description: A scalar numeric value. + format: double + type: number + AnyValueObject: + additionalProperties: {} + description: An arbitrary object value with additional properties. + type: object + AnyValueArray: + description: An array of arbitrary values. + items: + $ref: '#/components/schemas/AnyValueItem' + type: array + AnyValueBoolean: + description: A scalar boolean value. + type: boolean + AnyValueItem: + description: A single item in an array of arbitrary values, which can be a string, number, object, or boolean. + type: string + format: double + additionalProperties: {} responses: + TooManyRequestsResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Too many requests BadRequestResponse: content: application/json: @@ -14056,12 +43289,6 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Not Found - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests NotAuthorizedResponse: content: application/json: @@ -14076,7 +43303,7 @@ components: description: Conflict parameters: PageSize: - description: Size for a given page. The maximum allowed value is 100. + description: Number of items to return per page. The maximum allowed value is 100. in: query name: page[size] required: false @@ -14101,20 +43328,108 @@ components: name: sort[field] required: false schema: - $ref: '#/components/schemas/CaseSortableField' - ProjectIDPathParameter: - description: Project UUID - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + $ref: '#/components/schemas/CaseSortableField' + LinkIDPathParameter: + description: The UUID of the case link. + in: path + name: link_id + required: true + schema: + example: 804cd682-55f6-4541-ab00-b608b282ea7d + type: string + ProjectIDPathParameter: + description: Project UUID. + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: project_id + required: true + schema: + type: string + NotificationRuleIDPathParameter: + description: Notification Rule UUID + example: e555e290-ed65-49bd-ae18-8acbfcf18db7 + in: path + name: notification_rule_id + required: true + schema: + type: string + RuleIDPathParameter: + description: The UUID of the automation rule. + example: e6773723-fe58-49ff-9975-dff00f14e28d + in: path + name: rule_id + required: true + schema: + type: string + CaseTypeIDPathParameter: + description: The UUID of the case type. + example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de505 + in: path + name: case_type_id + required: true + schema: + type: string + CaseCustomAttributeIDPathParameter: + description: Case Custom attribute's UUID + example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de505 + in: path + name: custom_attribute_id + required: true + schema: + type: string + ViewIDPathParameter: + description: The UUID of the case view. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + in: path + name: view_id + required: true + schema: + type: string + CaseIDPathParameter: + description: Case's UUID or key + example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 + in: path + name: case_id + required: true + schema: + type: string + CellIDPathParameter: + description: The UUID of the timeline cell (comment) to update. + example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 + in: path + name: cell_id + required: true + schema: + type: string + CaseCustomAttributeKeyPathParameter: + description: Case Custom attribute's key + example: aws_region + in: path + name: custom_attribute_key + required: true + schema: + type: string + UserUUIDPathParameter: + description: The UUID of the user to add or remove as a watcher. + example: 8146583c-0b5f-11ec-abf8-da7ad0900001 in: path - name: project_id + name: user_uuid required: true schema: type: string - CaseIDPathParameter: - description: Case's UUID or key - example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 + ChangeRequestIDPathParameter: + description: The identifier of the change request. + example: CHM-1234 in: path - name: case_id + name: change_request_id + required: true + schema: + type: string + ChangeRequestDecisionIDPathParameter: + description: The identifier of the change request decision. + example: decision-id-0 + in: path + name: decision_id required: true schema: type: string @@ -14129,9 +43444,7 @@ components: format: int64 type: integer SearchIssuesIncludeQueryParameter: - description: >- - Comma-separated list of relationship objects that should be included in - the response. + description: Comma-separated list of relationship objects that should be included in the response. Possible values are `issue`, `issue.assignee`, `issue.case`, and `issue.team_owners`. explode: false in: query name: include @@ -14149,9 +43462,7 @@ components: schema: type: string GetIssueIncludeQueryParameter: - description: >- - Comma-separated list of relationship objects that should be included in - the response. + description: Comma-separated list of relationship objects that should be included in the response. Possible values are `assignee`, `case`, and `team_owners`. explode: false in: query name: include @@ -14161,9 +43472,7 @@ components: $ref: '#/components/schemas/GetIssueIncludeQueryParameterItem' type: array IncidentIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. + description: Specifies which types of related objects should be included in the response. explode: false in: query name: include @@ -14172,11 +43481,32 @@ components: items: $ref: '#/components/schemas/IncidentRelatedObject' type: array + IncidentGoogleChatConfigurationIDPathParameter: + description: The UUID of the Google Chat configuration. + in: path + name: id + required: true + schema: + format: uuid + type: string + IncidentGoogleMeetConfigurationIDPathParameter: + description: The UUID of the Google Meet configuration. + in: path + name: id + required: true + schema: + format: uuid + type: string + IncidentImpactFieldIDPathParameter: + description: The UUID of the impact field. + in: path + name: field_id + required: true + schema: + format: uuid + type: string IncidentNotificationRuleIncludeQueryParameter: - description: > - Comma-separated list of resources to include. Supported values: - `created_by_user`, `last_modified_by_user`, `incident_type`, - `notification_template` + description: 'Comma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template`' explode: false in: query name: include @@ -14204,9 +43534,7 @@ components: format: uuid type: string IncidentNotificationTemplateIncludeQueryParameter: - description: > - Comma-separated list of relationships to include. Supported values: - `created_by_user`, `last_modified_by_user`, `incident_type` + description: 'Comma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`' explode: false in: query name: include @@ -14223,6 +43551,39 @@ components: example: 00000000-0000-0000-0000-000000000001 format: uuid type: string + PostmortemTemplateFilterIncidentTypeParameter: + description: Filter postmortem templates by the associated incident type ID. + in: query + name: filter[incident-type] + required: false + schema: + format: uuid + type: string + PostmortemTemplateSortParameter: + description: The attribute to sort results by. Prefix with `-` for descending order. + in: query + name: sort + required: false + schema: + default: created_at + example: '-created_at' + type: string + PostmortemTemplateIdParameter: + description: The ID of the postmortem template. + example: 00000000-0000-0000-0000-000000000000 + in: path + name: template_id + required: true + schema: + type: string + IncidentRuleIDPathParameter: + description: The UUID of the incident rule. + in: path + name: rule_id + required: true + schema: + format: uuid + type: string IncidentTypeIncludeDeletedParameter: description: Include deleted incident types in the response. in: query @@ -14237,23 +43598,52 @@ components: required: true schema: type: string + IncidentOrgSettingsTypeIDPathParameter: + description: The UUID of the incident type. + in: path + name: incident_type_id + required: true + schema: + format: uuid + type: string + IncidentUserDefinedFieldIDPathParameter: + description: The ID of the incident user-defined field. + in: path + name: field_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000000 + type: string + IncidentUserDefinedRoleIDPathParameter: + description: The UUID of the incident user-defined role. + in: path + name: role_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000002 + format: uuid + type: string + IncidentImportIncludeQueryParameter: + description: Specifies which related object types to include in the response when importing an incident. + explode: false + in: query + name: include + required: false + schema: + items: + $ref: '#/components/schemas/IncidentImportRelatedObject' + type: array IncidentSearchIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. + description: Specifies which types of related objects should be included in the response. in: query name: include required: false schema: $ref: '#/components/schemas/IncidentRelatedObject' IncidentSearchQueryQueryParameter: - description: >- - Specifies which incidents should be returned. The query can contain any - number of incident facets - - joined by `ANDs`, along with multiple values for each of those facets - joined by `OR`s. For - + description: |- + Specifies which incidents should be returned. The query can contain any number of incident facets + joined by `ANDs`, along with multiple values for each of those facets joined by `OR`s. For example: `state:active AND severity:(SEV-2 OR SEV-1)`. explode: false in: query @@ -14276,26 +43666,40 @@ components: required: true schema: type: string - IncidentAttachmentIncludeQueryParameter: - description: Specifies which types of related objects are included in the response. + AttachmentIncludeQueryParameter: + description: 'Resource to include in the response. Supported value: `last_modified_by_user`.' explode: false in: query name: include required: false schema: - items: - $ref: '#/components/schemas/IncidentAttachmentRelatedObject' - type: array - IncidentAttachmentFilterQueryParameter: - description: Specifies which types of attachments are included in the response. + example: last_modified_by_user + type: string + AttachmentIDPathParameter: + description: The ID of the attachment. + in: path + name: attachment_id + required: true + schema: + example: 00000000-0000-0000-0000-000000000001 + type: string + IncidentImpactIncludeQueryParameter: + description: Specifies which related resources should be included in the response. explode: false in: query - name: filter[attachment_type] + name: include required: false schema: items: - $ref: '#/components/schemas/IncidentAttachmentAttachmentType' + $ref: '#/components/schemas/IncidentImpactRelatedObject' type: array + IncidentImpactIDPathParameter: + description: The UUID of the incident impact. + in: path + name: impact_id + required: true + schema: + type: string IncidentIntegrationMetadataIDPathParameter: description: The UUID of the incident integration metadata. in: path @@ -14310,22 +43714,29 @@ components: required: true schema: type: string - IncidentServiceIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. - in: query - name: include - required: false + IncidentResponderIDPathParameter: + description: The UUID of the incident responder. + in: path + name: responder_id + required: true schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentServiceSearchQueryParameter: - description: A search query that filters services by name. - in: query - name: filter - required: false + format: uuid + type: string + IncidentTimestampOverrideIDPathParameter: + description: The UUID of the timestamp override. + in: path + name: id + required: true + schema: + format: uuid + type: string + MaintenanceWindowIDPathParameter: + description: The UUID of the maintenance window. + example: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + in: path + name: maintenance_window_id + required: true schema: - example: ExampleServiceName type: string SchemaVersion: description: The schema version desired in the response. @@ -14342,1037 +43753,4039 @@ components: schema: example: my-service type: string - IncidentServiceIDPathParameter: - description: The ID of the incident service. + ReportID: + description: The ID of the report job. in: path - name: service_id + name: report_id required: true schema: type: string - ReportID: - description: The ID of the report job. + SloID: + description: The ID of the SLO. in: path - name: report_id + name: slo_id required: true schema: + example: 00000000-0000-0000-0000-000000000000 type: string - IncidentTeamIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. + FromTimestamp: + description: The starting timestamp for the SLO status query in epoch seconds. in: query - name: include - required: false + name: from_ts + required: true schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentTeamSearchQueryParameter: - description: A search query that filters teams by name. + example: 1690901870 + format: int64 + type: integer + ToTimestamp: + description: The ending timestamp for the SLO status query in epoch seconds. in: query - name: filter - required: false - schema: - example: ExampleTeamName - type: string - IncidentTeamIDPathParameter: - description: The ID of the incident team. - in: path - name: team_id + name: to_ts required: true schema: - type: string + example: 1706803070 + format: int64 + type: integer + DisableCorrections: + description: Whether to exclude correction windows from the SLO status calculation. Defaults to false. + in: query + name: disable_corrections + required: false + schema: + default: false + example: false + type: boolean x-stackQL-resources: + bits_ai_investigations: + id: datadog.service_management.bits_ai_investigations + name: bits_ai_investigations + title: Bits Ai Investigations + methods: + list_investigations: + operation: + $ref: '#/paths/~1api~1v2~1bits-ai~1investigations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 100 + skip: + paramName: page[offset] + trigger_investigation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1bits-ai~1investigations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_investigation: + operation: + $ref: '#/paths/~1api~1v2~1bits-ai~1investigations~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/bits_ai_investigations/methods/get_investigation' + - $ref: '#/components/x-stackQL-resources/bits_ai_investigations/methods/list_investigations' + insert: + - $ref: '#/components/x-stackQL-resources/bits_ai_investigations/methods/trigger_investigation' + update: [] + delete: [] + replace: [] cases: id: datadog.service_management.cases name: cases title: Cases methods: - search_cases: + search_cases: + operation: + $ref: '#/paths/~1api~1v2~1cases/get' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + aggregate_cases: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + bulk_update_cases: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1bulk/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_case_link: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1link/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_case_link: + operation: + $ref: '#/paths/~1api~1v2~1cases~1link~1{link_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + archive_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1archive/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + assign_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1assign/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_attributes: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1attributes/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_case_description: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1description/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_case_due_date: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1due_date/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_priority: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1priority/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_case_resolved_reason: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1resolved_reason/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_status: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1status/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_case_title: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1title/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + unarchive_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1unarchive/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + unassign_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1unassign/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/cases/methods/get_case' + insert: + - $ref: '#/components/x-stackQL-resources/cases/methods/create_case' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/cases/methods/delete_case_link' + replace: [] + case_counts: + id: datadog.service_management.case_counts + name: case_counts + title: Case Counts + methods: + count_cases: + operation: + $ref: '#/paths/~1api~1v2~1cases~1count/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_counts/methods/count_cases' + insert: [] + update: [] + delete: [] + replace: [] + case_links: + id: datadog.service_management.case_links + name: case_links + title: Case Links + methods: + list_case_links: + operation: + $ref: '#/paths/~1api~1v2~1cases~1link/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_links/methods/list_case_links' + insert: [] + update: [] + delete: [] + replace: [] + projects: + id: datadog.service_management.projects + name: projects + title: Projects + methods: + get_projects: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_project: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/projects/methods/get_project' + - $ref: '#/components/x-stackQL-resources/projects/methods/get_projects' + insert: + - $ref: '#/components/x-stackQL-resources/projects/methods/create_project' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/projects/methods/delete_project' + replace: [] + case_project_favorites: + id: datadog.service_management.case_project_favorites + name: case_project_favorites + title: Case Project Favorites + methods: + list_user_case_project_favorites: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1favorites/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + unfavorite_case_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1favorites/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + favorite_case_project: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1favorites/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_project_favorites/methods/list_user_case_project_favorites' + insert: + - $ref: '#/components/x-stackQL-resources/case_project_favorites/methods/favorite_case_project' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_project_favorites/methods/unfavorite_case_project' + replace: [] + case_projects: + id: datadog.service_management.case_projects + name: case_projects + title: Case Projects + methods: + update_project: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/case_projects/methods/update_project' + delete: [] + replace: [] + case_project_notification_rules: + id: datadog.service_management.case_project_notification_rules + name: case_project_notification_rules + title: Case Project Notification Rules + methods: + get_project_notification_rules: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1notification_rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_project_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1notification_rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_project_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1notification_rules~1{notification_rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_project_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1notification_rules~1{notification_rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_project_notification_rules/methods/get_project_notification_rules' + insert: + - $ref: '#/components/x-stackQL-resources/case_project_notification_rules/methods/create_project_notification_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_project_notification_rules/methods/delete_project_notification_rule' + replace: + - $ref: '#/components/x-stackQL-resources/case_project_notification_rules/methods/update_project_notification_rule' + case_project_rules: + id: datadog.service_management.case_project_rules + name: case_project_rules + title: Case Project Rules + methods: + list_case_automation_rules: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_case_automation_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_case_automation_rule: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_case_automation_rule: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_case_automation_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules~1{rule_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + disable_case_automation_rule: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules~1{rule_id}~1disable/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + enable_case_automation_rule: + operation: + $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}~1rules~1{rule_id}~1enable/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_project_rules/methods/get_case_automation_rule' + - $ref: '#/components/x-stackQL-resources/case_project_rules/methods/list_case_automation_rules' + insert: + - $ref: '#/components/x-stackQL-resources/case_project_rules/methods/create_case_automation_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_project_rules/methods/delete_case_automation_rule' + replace: + - $ref: '#/components/x-stackQL-resources/case_project_rules/methods/update_case_automation_rule' + case_types: + id: datadog.service_management.case_types + name: case_types + title: Case Types + methods: + get_all_case_types: + operation: + $ref: '#/paths/~1api~1v2~1cases~1types/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_case_type: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1types/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_case_type: + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1{case_type_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_case_type: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1{case_type_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_types/methods/get_all_case_types' + insert: + - $ref: '#/components/x-stackQL-resources/case_types/methods/create_case_type' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_types/methods/delete_case_type' + replace: + - $ref: '#/components/x-stackQL-resources/case_types/methods/update_case_type' + case_type_custom_attributes: + id: datadog.service_management.case_type_custom_attributes + name: case_type_custom_attributes + title: Case Type Custom Attributes + methods: + get_all_custom_attributes: + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1custom_attributes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + get_all_custom_attribute_configs_by_case_type: + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1{case_type_id}~1custom_attributes/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_custom_attribute_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1{case_type_id}~1custom_attributes/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_custom_attribute_config: + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1{case_type_id}~1custom_attributes~1{custom_attribute_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_custom_attribute_config: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1types~1{case_type_id}~1custom_attributes~1{custom_attribute_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_type_custom_attributes/methods/get_all_custom_attribute_configs_by_case_type' + - $ref: '#/components/x-stackQL-resources/case_type_custom_attributes/methods/get_all_custom_attributes' + insert: + - $ref: '#/components/x-stackQL-resources/case_type_custom_attributes/methods/create_custom_attribute_config' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_type_custom_attributes/methods/delete_custom_attribute_config' + replace: + - $ref: '#/components/x-stackQL-resources/case_type_custom_attributes/methods/update_custom_attribute_config' + case_views: + id: datadog.service_management.case_views + name: case_views + title: Case Views + methods: + list_case_views: + operation: + $ref: '#/paths/~1api~1v2~1cases~1views/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_case_view: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1views/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_case_view: + operation: + $ref: '#/paths/~1api~1v2~1cases~1views~1{view_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_case_view: + operation: + $ref: '#/paths/~1api~1v2~1cases~1views~1{view_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_case_view: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1views~1{view_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_views/methods/get_case_view' + - $ref: '#/components/x-stackQL-resources/case_views/methods/list_case_views' + insert: + - $ref: '#/components/x-stackQL-resources/case_views/methods/create_case_view' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_views/methods/delete_case_view' + replace: + - $ref: '#/components/x-stackQL-resources/case_views/methods/update_case_view' + case_comments: + id: datadog.service_management.case_comments + name: case_comments + title: Case Comments + methods: + comment_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1comment/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_case_comment: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1comment~1{cell_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_case_comment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1comment~1{cell_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/case_comments/methods/comment_case' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_comments/methods/delete_case_comment' + replace: + - $ref: '#/components/x-stackQL-resources/case_comments/methods/update_case_comment' + case_custom_attributes: + id: datadog.service_management.case_custom_attributes + name: case_custom_attributes + title: Case Custom Attributes + methods: + delete_case_custom_attribute: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1custom_attributes~1{custom_attribute_key}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_case_custom_attribute: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1custom_attributes~1{custom_attribute_key}/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/case_custom_attributes/methods/update_case_custom_attribute' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_custom_attributes/methods/delete_case_custom_attribute' + replace: [] + case_insights: + id: datadog.service_management.case_insights + name: case_insights + title: Case Insights + methods: + remove_case_insights: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1insights/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + add_case_insights: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1insights/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_insights/methods/remove_case_insights' + replace: + - $ref: '#/components/x-stackQL-resources/case_insights/methods/add_case_insights' + case_relationship_incidents: + id: datadog.service_management.case_relationship_incidents + name: case_relationship_incidents + title: Case Relationship Incidents + methods: + link_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1incidents/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/case_relationship_incidents/methods/link_incident' + update: [] + delete: [] + replace: [] + case_relationship_jira_issues: + id: datadog.service_management.case_relationship_jira_issues + name: case_relationship_jira_issues + title: Case Relationship Jira Issues + methods: + unlink_jira_issue: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1jira_issues/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + link_jira_issue_to_case: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1jira_issues/patch' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + create_case_jira_issue: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1jira_issues/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/case_relationship_jira_issues/methods/create_case_jira_issue' + update: + - $ref: '#/components/x-stackQL-resources/case_relationship_jira_issues/methods/link_jira_issue_to_case' + delete: + - $ref: '#/components/x-stackQL-resources/case_relationship_jira_issues/methods/unlink_jira_issue' + replace: [] + case_relationship_notebooks: + id: datadog.service_management.case_relationship_notebooks + name: case_relationship_notebooks + title: Case Relationship Notebooks + methods: + create_case_notebook: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1notebook/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/case_relationship_notebooks/methods/create_case_notebook' + update: [] + delete: [] + replace: [] + case_relationship_projects: + id: datadog.service_management.case_relationship_projects + name: case_relationship_projects + title: Case Relationship Projects + methods: + move_case_to_project: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1project/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/case_relationship_projects/methods/move_case_to_project' + delete: [] + replace: [] + case_relationship_servicenow_tickets: + id: datadog.service_management.case_relationship_servicenow_tickets + name: case_relationship_servicenow_tickets + title: Case Relationship Servicenow Tickets + methods: + create_case_service_now_ticket: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1relationships~1servicenow_tickets/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/case_relationship_servicenow_tickets/methods/create_case_service_now_ticket' + update: [] + delete: [] + replace: [] + case_timelines: + id: datadog.service_management.case_timelines + name: case_timelines + title: Case Timelines + methods: + list_case_timeline: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1timelines/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_timelines/methods/list_case_timeline' + insert: [] + update: [] + delete: [] + replace: [] + case_watchers: + id: datadog.service_management.case_watchers + name: case_watchers + title: Case Watchers + methods: + list_case_watchers: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1watchers/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + unwatch_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1watchers~1{user_uuid}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + watch_case: + operation: + $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1watchers~1{user_uuid}/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/case_watchers/methods/list_case_watchers' + insert: + - $ref: '#/components/x-stackQL-resources/case_watchers/methods/watch_case' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/case_watchers/methods/unwatch_case' + replace: [] + change_requests: + id: datadog.service_management.change_requests + name: change_requests + title: Change Requests + methods: + create_change_request: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1change-management~1change-request/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + get_change_request: + operation: + $ref: '#/paths/~1api~1v2~1change-management~1change-request~1{change_request_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_change_request: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1change-management~1change-request~1{change_request_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/change_requests/methods/get_change_request' + insert: + - $ref: '#/components/x-stackQL-resources/change_requests/methods/create_change_request' + update: + - $ref: '#/components/x-stackQL-resources/change_requests/methods/update_change_request' + delete: [] + replace: [] + change_request_branches: + id: datadog.service_management.change_request_branches + name: change_request_branches + title: Change Request Branches + methods: + create_change_request_branch: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1change-management~1change-request~1{change_request_id}~1branch/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/change_request_branches/methods/create_change_request_branch' + update: [] + delete: [] + replace: [] + change_change_request_decisions: + id: datadog.service_management.change_change_request_decisions + name: change_change_request_decisions + title: Change Change Request Decisions + methods: + delete_change_request_decision: + operation: + $ref: '#/paths/~1api~1v2~1change-management~1change-request~1{change_request_id}~1decisions~1{decision_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_change_request_decision: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1change-management~1change-request~1{change_request_id}~1decisions~1{decision_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/change_change_request_decisions/methods/update_change_request_decision' + delete: + - $ref: '#/components/x-stackQL-resources/change_change_request_decisions/methods/delete_change_request_decision' + replace: [] + downtimes: + id: datadog.service_management.downtimes + name: downtimes + title: Downtimes + methods: + list_downtimes: + operation: + $ref: '#/paths/~1api~1v2~1downtime/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_downtime: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1downtime/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + cancel_downtime: + operation: + $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_downtime: + operation: + $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_downtime: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/downtimes/methods/get_downtime' + - $ref: '#/components/x-stackQL-resources/downtimes/methods/list_downtimes' + insert: + - $ref: '#/components/x-stackQL-resources/downtimes/methods/create_downtime' + update: + - $ref: '#/components/x-stackQL-resources/downtimes/methods/update_downtime' + delete: + - $ref: '#/components/x-stackQL-resources/downtimes/methods/cancel_downtime' + replace: [] + issues: + id: datadog.service_management.issues + name: issues + title: Issues + methods: + search_issues: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_issue: + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_issue_assignee: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1assignee/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + update_issue_state: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1state/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/issues/methods/get_issue' + insert: + - $ref: '#/components/x-stackQL-resources/issues/methods/search_issues' + update: [] + delete: [] + replace: [] + error_tracking_issues: + id: datadog.service_management.error_tracking_issues + name: error_tracking_issues + title: Error Tracking Issues + methods: + delete_issue_assignee: + operation: + $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1assignee/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/error_tracking_issues/methods/delete_issue_assignee' + replace: [] + events: + id: datadog.service_management.events + name: events + title: Events + methods: + list_events: + operation: + $ref: '#/paths/~1api~1v2~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + create_event: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1events/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + search_events: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_event: + operation: + $ref: '#/paths/~1api~1v2~1events~1{event_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/events/methods/get_event' + - $ref: '#/components/x-stackQL-resources/events/methods/list_events' + insert: + - $ref: '#/components/x-stackQL-resources/events/methods/create_event' + update: [] + delete: [] + replace: [] + forms: + id: datadog.service_management.forms + name: forms + title: Forms + methods: + list_forms: + operation: + $ref: '#/paths/~1api~1v2~1forms/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_form: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_and_publish_form: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms~1create_and_publish/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_form: + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_form: + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_form: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + clone_form: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}~1clone/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + publish_form: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}~1publish/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/forms/methods/get_form' + - $ref: '#/components/x-stackQL-resources/forms/methods/list_forms' + insert: + - $ref: '#/components/x-stackQL-resources/forms/methods/create_form' + update: + - $ref: '#/components/x-stackQL-resources/forms/methods/update_form' + delete: + - $ref: '#/components/x-stackQL-resources/forms/methods/delete_form' + replace: [] + form_versions: + id: datadog.service_management.form_versions + name: form_versions + title: Form Versions + methods: + upsert_form_version: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}~1versions/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + upsert_and_publish_form_version: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1forms~1{form_id}~1versions~1upsert_and_publish/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/form_versions/methods/upsert_form_version' + update: [] + delete: [] + replace: [] + incidents: + id: datadog.service_management.incidents + name: incidents + title: Incidents + methods: + list_incidents: + operation: + $ref: '#/paths/~1api~1v2~1incidents/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + skip: + paramName: page[offset] + create_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + import_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1import/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + search_incidents: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1search/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + skip: + paramName: page[offset] + delete_incident: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incidents/methods/get_incident' + - $ref: '#/components/x-stackQL-resources/incidents/methods/list_incidents' + - $ref: '#/components/x-stackQL-resources/incidents/methods/search_incidents' + insert: + - $ref: '#/components/x-stackQL-resources/incidents/methods/create_incident' + update: + - $ref: '#/components/x-stackQL-resources/incidents/methods/update_incident' + delete: + - $ref: '#/components/x-stackQL-resources/incidents/methods/delete_incident' + replace: [] + incident_global_incident_handles: + id: datadog.service_management.incident_global_incident_handles + name: incident_global_incident_handles + title: Incident Global Incident Handles + methods: + delete_global_incident_handle: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1global~1incident-handles/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + list_global_incident_handles: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1global~1incident-handles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_global_incident_handle: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1global~1incident-handles/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + update_global_incident_handle: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1global~1incident-handles/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_global_incident_handles/methods/list_global_incident_handles' + insert: + - $ref: '#/components/x-stackQL-resources/incident_global_incident_handles/methods/create_global_incident_handle' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_global_incident_handles/methods/delete_global_incident_handle' + replace: + - $ref: '#/components/x-stackQL-resources/incident_global_incident_handles/methods/update_global_incident_handle' + incident_global_settings: + id: datadog.service_management.incident_global_settings + name: incident_global_settings + title: Incident Global Settings + methods: + get_global_incident_settings: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1global~1settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_global_incident_settings: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1global~1settings/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_global_settings/methods/get_global_incident_settings' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/incident_global_settings/methods/update_global_incident_settings' + delete: [] + replace: [] + incident_google_chat_configurations: + id: datadog.service_management.incident_google_chat_configurations + name: incident_google_chat_configurations + title: Incident Google Chat Configurations + methods: + create_incident_google_chat_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1google-chat-configurations/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + update_incident_google_chat_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1google-chat-configurations~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_google_chat_configurations/methods/create_incident_google_chat_configuration' + update: + - $ref: '#/components/x-stackQL-resources/incident_google_chat_configurations/methods/update_incident_google_chat_configuration' + delete: [] + replace: [] + incident_google_meet_configurations: + id: datadog.service_management.incident_google_meet_configurations + name: incident_google_meet_configurations + title: Incident Google Meet Configurations + methods: + create_incident_google_meet_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1google-meet-configurations/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + update_incident_google_meet_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1google-meet-configurations~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_google_meet_configurations/methods/create_incident_google_meet_configuration' + update: + - $ref: '#/components/x-stackQL-resources/incident_google_meet_configurations/methods/update_incident_google_meet_configuration' + delete: [] + replace: [] + incident_impact_fields: + id: datadog.service_management.incident_impact_fields + name: incident_impact_fields + title: Incident Impact Fields + methods: + list_incident_impact_fields: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1impact-fields/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_impact_field: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1impact-fields/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_impact_field: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1impact-fields~1{field_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_incident_impact_field: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1impact-fields~1{field_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_impact_fields/methods/list_incident_impact_fields' + insert: + - $ref: '#/components/x-stackQL-resources/incident_impact_fields/methods/create_incident_impact_field' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_impact_fields/methods/delete_incident_impact_field' + replace: + - $ref: '#/components/x-stackQL-resources/incident_impact_fields/methods/update_incident_impact_field' + incident_notification_rules: + id: datadog.service_management.incident_notification_rules + name: incident_notification_rules + title: Incident Notification Rules + methods: + list_incident_notification_rules: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_notification_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_notification_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_notification_rules/methods/get_incident_notification_rule' + - $ref: '#/components/x-stackQL-resources/incident_notification_rules/methods/list_incident_notification_rules' + insert: + - $ref: '#/components/x-stackQL-resources/incident_notification_rules/methods/create_incident_notification_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_notification_rules/methods/delete_incident_notification_rule' + replace: + - $ref: '#/components/x-stackQL-resources/incident_notification_rules/methods/update_incident_notification_rule' + incident_notification_templates: + id: datadog.service_management.incident_notification_templates + name: incident_notification_templates + title: Incident Notification Templates + methods: + list_incident_notification_templates: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_notification_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_notification_template: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_notification_template: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_notification_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_notification_templates/methods/get_incident_notification_template' + - $ref: '#/components/x-stackQL-resources/incident_notification_templates/methods/list_incident_notification_templates' + insert: + - $ref: '#/components/x-stackQL-resources/incident_notification_templates/methods/create_incident_notification_template' + update: + - $ref: '#/components/x-stackQL-resources/incident_notification_templates/methods/update_incident_notification_template' + delete: + - $ref: '#/components/x-stackQL-resources/incident_notification_templates/methods/delete_incident_notification_template' + replace: [] + incident_postmortem_templates: + id: datadog.service_management.incident_postmortem_templates + name: incident_postmortem_templates + title: Incident Postmortem Templates + methods: + list_incident_postmortem_templates: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1postmortem-templates/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_postmortem_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1postmortem-templates/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_postmortem_template: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1postmortem-templates~1{template_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_postmortem_template: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1postmortem-templates~1{template_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_postmortem_template: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1postmortem-templates~1{template_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_postmortem_templates/methods/get_incident_postmortem_template' + - $ref: '#/components/x-stackQL-resources/incident_postmortem_templates/methods/list_incident_postmortem_templates' + insert: + - $ref: '#/components/x-stackQL-resources/incident_postmortem_templates/methods/create_incident_postmortem_template' + update: + - $ref: '#/components/x-stackQL-resources/incident_postmortem_templates/methods/update_incident_postmortem_template' + delete: + - $ref: '#/components/x-stackQL-resources/incident_postmortem_templates/methods/delete_incident_postmortem_template' + replace: [] + incident_rules: + id: datadog.service_management.incident_rules + name: incident_rules + title: Incident Rules + methods: + list_incident_rules: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1rules~1{rule_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_rule: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1rules~1{rule_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1rules~1{rule_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_rules/methods/get_incident_rule' + - $ref: '#/components/x-stackQL-resources/incident_rules/methods/list_incident_rules' + insert: + - $ref: '#/components/x-stackQL-resources/incident_rules/methods/create_incident_rule' + update: + - $ref: '#/components/x-stackQL-resources/incident_rules/methods/update_incident_rule' + delete: + - $ref: '#/components/x-stackQL-resources/incident_rules/methods/delete_incident_rule' + replace: [] + incident_types: + id: datadog.service_management.incident_types + name: incident_types + title: Incident Types + methods: + list_incident_types: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_type: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_type: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_type: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_type: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_types/methods/get_incident_type' + - $ref: '#/components/x-stackQL-resources/incident_types/methods/list_incident_types' + insert: + - $ref: '#/components/x-stackQL-resources/incident_types/methods/create_incident_type' + update: + - $ref: '#/components/x-stackQL-resources/incident_types/methods/update_incident_type' + delete: + - $ref: '#/components/x-stackQL-resources/incident_types/methods/delete_incident_type' + replace: [] + incident_type_org_settings: + id: datadog.service_management.incident_type_org_settings + name: incident_type_org_settings + title: Incident Type Org Settings + methods: + list_org_settings: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types~1org-settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + skip: + paramName: page[offset] + get_org_settings_by_incident_type: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}~1org-settings/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_type_org_settings/methods/get_org_settings_by_incident_type' + - $ref: '#/components/x-stackQL-resources/incident_type_org_settings/methods/list_org_settings' + insert: [] + update: [] + delete: [] + replace: [] + incident_user_defined_fields: + id: datadog.service_management.incident_user_defined_fields + name: incident_user_defined_fields + title: Incident User Defined Fields + methods: + list_incident_user_defined_fields: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-fields/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_incident_user_defined_field: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-fields/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_user_defined_field: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-fields~1{field_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_user_defined_field: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-fields~1{field_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_user_defined_field: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-fields~1{field_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_fields/methods/get_incident_user_defined_field' + - $ref: '#/components/x-stackQL-resources/incident_user_defined_fields/methods/list_incident_user_defined_fields' + insert: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_fields/methods/create_incident_user_defined_field' + update: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_fields/methods/update_incident_user_defined_field' + delete: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_fields/methods/delete_incident_user_defined_field' + replace: [] + incident_user_defined_roles: + id: datadog.service_management.incident_user_defined_roles + name: incident_user_defined_roles + title: Incident User Defined Roles + methods: + list_incident_user_defined_roles: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-roles/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_user_defined_role: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-roles/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_user_defined_role: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-roles~1{role_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_user_defined_role: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-roles~1{role_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_user_defined_role: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1config~1user-defined-roles~1{role_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_roles/methods/get_incident_user_defined_role' + - $ref: '#/components/x-stackQL-resources/incident_user_defined_roles/methods/list_incident_user_defined_roles' + insert: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_roles/methods/create_incident_user_defined_role' + update: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_roles/methods/update_incident_user_defined_role' + delete: + - $ref: '#/components/x-stackQL-resources/incident_user_defined_roles/methods/delete_incident_user_defined_role' + replace: [] + incident_ai_postmortems: + id: datadog.service_management.incident_ai_postmortems + name: incident_ai_postmortems + title: Incident Ai Postmortems + methods: + get_incident_aipostmortem: operation: - $ref: '#/paths/~1api~1v2~1cases/get' + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1ai~1postmortem/post' response: mediaType: application/json openAPIDocKey: '200' - create_case: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_ai_postmortems/methods/get_incident_aipostmortem' + update: [] + delete: [] + replace: [] + incident_attachments: + id: datadog.service_management.incident_attachments + name: incident_attachments + title: Incident Attachments + methods: + list_incident_attachments: operation: - $ref: '#/paths/~1api~1v2~1cases/post' + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_attachment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/post' response: mediaType: application/json openAPIDocKey: '201' - get_case: + request: + nativeCasing: camel + delete_incident_attachment: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments~1{attachment_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_incident_attachment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments~1{attachment_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_attachments/methods/list_incident_attachments' + insert: + - $ref: '#/components/x-stackQL-resources/incident_attachments/methods/create_incident_attachment' + update: + - $ref: '#/components/x-stackQL-resources/incident_attachments/methods/update_incident_attachment' + delete: + - $ref: '#/components/x-stackQL-resources/incident_attachments/methods/delete_incident_attachment' + replace: [] + incident_attachment_postmortems: + id: datadog.service_management.incident_attachment_postmortems + name: incident_attachment_postmortems + title: Incident Attachment Postmortems + methods: + create_incident_postmortem_attachment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments~1postmortems/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_attachment_postmortems/methods/create_incident_postmortem_attachment' + update: [] + delete: [] + replace: [] + incident_case_pages: + id: datadog.service_management.incident_case_pages + name: incident_case_pages + title: Incident Case Pages + methods: + create_page_from_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1cases~1page/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_case_pages/methods/create_page_from_incident' + update: [] + delete: [] + replace: [] + incident_configurations: + id: datadog.service_management.incident_configurations + name: incident_configurations + title: Incident Configurations + methods: + update_incident_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1configurations/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + create_incident_configuration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1configurations/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_configurations/methods/create_incident_configuration' + update: + - $ref: '#/components/x-stackQL-resources/incident_configurations/methods/update_incident_configuration' + delete: [] + replace: [] + incident_impacts: + id: datadog.service_management.incident_impacts + name: incident_impacts + title: Incident Impacts + methods: + list_incident_impacts: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1impacts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_impact: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1impacts/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_impact: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1impacts~1{impact_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + patch_incident_impact: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1impacts~1{impact_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_impacts/methods/list_incident_impacts' + insert: + - $ref: '#/components/x-stackQL-resources/incident_impacts/methods/create_incident_impact' + update: + - $ref: '#/components/x-stackQL-resources/incident_impacts/methods/patch_incident_impact' + delete: + - $ref: '#/components/x-stackQL-resources/incident_impacts/methods/delete_incident_impact' + replace: [] + incident_pages: + id: datadog.service_management.incident_pages + name: incident_pages + title: Incident Pages + methods: + create_on_call_page_from_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1page/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + link_page_to_incident: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1pages~1link/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_pages/methods/create_on_call_page_from_incident' + update: [] + delete: [] + replace: [] + incident_integrations: + id: datadog.service_management.incident_integrations + name: incident_integrations + title: Incident Integrations + methods: + list_incident_integrations: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_integration: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_integration: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_integration: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_integrations/methods/get_incident_integration' + - $ref: '#/components/x-stackQL-resources/incident_integrations/methods/list_incident_integrations' + insert: + - $ref: '#/components/x-stackQL-resources/incident_integrations/methods/create_incident_integration' + update: + - $ref: '#/components/x-stackQL-resources/incident_integrations/methods/update_incident_integration' + delete: + - $ref: '#/components/x-stackQL-resources/incident_integrations/methods/delete_incident_integration' + replace: [] + incident_todos: + id: datadog.service_management.incident_todos + name: incident_todos + title: Incident Todos + methods: + list_incident_todos: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_todo: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_todo: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_todo: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_incident_todo: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_todos/methods/get_incident_todo' + - $ref: '#/components/x-stackQL-resources/incident_todos/methods/list_incident_todos' + insert: + - $ref: '#/components/x-stackQL-resources/incident_todos/methods/create_incident_todo' + update: + - $ref: '#/components/x-stackQL-resources/incident_todos/methods/update_incident_todo' + delete: + - $ref: '#/components/x-stackQL-resources/incident_todos/methods/delete_incident_todo' + replace: [] + incident_responders: + id: datadog.service_management.incident_responders + name: incident_responders + title: Incident Responders + methods: + list_incident_responders: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1responders/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_incident_responder: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1responders/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_incident_responder: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1responders~1{responder_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_incident_responder: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1responders~1{responder_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_responders/methods/get_incident_responder' + - $ref: '#/components/x-stackQL-resources/incident_responders/methods/list_incident_responders' + insert: + - $ref: '#/components/x-stackQL-resources/incident_responders/methods/create_incident_responder' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/incident_responders/methods/delete_incident_responder' + replace: [] + incident_servicenow_records: + id: datadog.service_management.incident_servicenow_records + name: incident_servicenow_records + title: Incident Servicenow Records + methods: + create_incident_service_now_record: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1servicenow-records/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/incident_servicenow_records/methods/create_incident_service_now_record' + update: [] + delete: [] + replace: [] + incident_timestamp_overrides: + id: datadog.service_management.incident_timestamp_overrides + name: incident_timestamp_overrides + title: Incident Timestamp Overrides + methods: + list_timestamp_overrides: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1timestamp-overrides/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_timestamp_override: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1timestamp-overrides/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_timestamp_override: + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1timestamp-overrides~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_timestamp_override: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1timestamp-overrides~1{id}/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/incident_timestamp_overrides/methods/list_timestamp_overrides' + insert: + - $ref: '#/components/x-stackQL-resources/incident_timestamp_overrides/methods/create_timestamp_override' + update: + - $ref: '#/components/x-stackQL-resources/incident_timestamp_overrides/methods/update_timestamp_override' + delete: + - $ref: '#/components/x-stackQL-resources/incident_timestamp_overrides/methods/delete_timestamp_override' + replace: [] + maintenance_windows: + id: datadog.service_management.maintenance_windows + name: maintenance_windows + title: Maintenance Windows + methods: + list_maintenance_windows: operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}/get' + $ref: '#/paths/~1api~1v2~1maintenance_windows/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - archive_case: + request: + nativeCasing: camel + create_maintenance_window: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1archive/post' + $ref: '#/paths/~1api~1v2~1maintenance_windows/post' response: mediaType: application/json - openAPIDocKey: '200' - assign_case: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_maintenance_window: operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1assign/post' + $ref: '#/paths/~1api~1v2~1maintenance_windows~1{maintenance_window_id}/delete' response: mediaType: application/json - openAPIDocKey: '200' - update_attributes: + openAPIDocKey: '204' + request: + nativeCasing: camel + update_maintenance_window: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1attributes/post' + $ref: '#/paths/~1api~1v2~1maintenance_windows~1{maintenance_window_id}/put' response: mediaType: application/json openAPIDocKey: '200' - update_priority: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/maintenance_windows/methods/list_maintenance_windows' + insert: + - $ref: '#/components/x-stackQL-resources/maintenance_windows/methods/create_maintenance_window' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/maintenance_windows/methods/delete_maintenance_window' + replace: + - $ref: '#/components/x-stackQL-resources/maintenance_windows/methods/update_maintenance_window' + on_call_escalation_policies: + id: datadog.service_management.on_call_escalation_policies + name: on_call_escalation_policies + title: On Call Escalation Policies + methods: + create_on_call_escalation_policy: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1priority/post' + $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies/post' response: mediaType: application/json - openAPIDocKey: '200' - update_status: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_on_call_escalation_policy: operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1status/post' + $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/delete' response: mediaType: application/json - openAPIDocKey: '200' - unarchive_case: + openAPIDocKey: '204' + request: + nativeCasing: camel + get_on_call_escalation_policy: operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1unarchive/post' + $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/get' response: mediaType: application/json openAPIDocKey: '200' - unassign_case: + objectKey: $.data + request: + nativeCasing: camel + update_on_call_escalation_policy: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cases~1{case_id}~1unassign/post' + $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/cases/methods/get_case' + - $ref: '#/components/x-stackQL-resources/on_call_escalation_policies/methods/get_on_call_escalation_policy' insert: - - $ref: '#/components/x-stackQL-resources/cases/methods/create_case' + - $ref: '#/components/x-stackQL-resources/on_call_escalation_policies/methods/create_on_call_escalation_policy' update: [] - delete: [] - replace: [] - projects: - id: datadog.service_management.projects - name: projects - title: Projects + delete: + - $ref: '#/components/x-stackQL-resources/on_call_escalation_policies/methods/delete_on_call_escalation_policy' + replace: + - $ref: '#/components/x-stackQL-resources/on_call_escalation_policies/methods/update_on_call_escalation_policy' + on_call_page: + id: datadog.service_management.on_call_page + name: on_call_page + title: On Call Page methods: - get_projects: + create_on_call_page: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1cases~1projects/get' + $ref: '#/paths/~1api~1v2~1on-call~1pages/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_project: + request: + nativeCasing: camel + acknowledge_on_call_page: operation: - $ref: '#/paths/~1api~1v2~1cases~1projects/post' + $ref: '#/paths/~1api~1v2~1on-call~1pages~1{page_id}~1acknowledge/post' response: mediaType: application/json - openAPIDocKey: '201' - delete_project: + openAPIDocKey: '202' + request: + nativeCasing: camel + escalate_on_call_page: operation: - $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/delete' + $ref: '#/paths/~1api~1v2~1on-call~1pages~1{page_id}~1escalate/post' response: mediaType: application/json - openAPIDocKey: '204' - get_project: + openAPIDocKey: '202' + request: + nativeCasing: camel + resolve_on_call_page: operation: - $ref: '#/paths/~1api~1v2~1cases~1projects~1{project_id}/get' + $ref: '#/paths/~1api~1v2~1on-call~1pages~1{page_id}~1resolve/post' response: mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data + openAPIDocKey: '202' + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: '#/components/x-stackQL-resources/projects/methods/get_project' - - $ref: '#/components/x-stackQL-resources/projects/methods/get_projects' + select: [] insert: - - $ref: '#/components/x-stackQL-resources/projects/methods/create_project' + - $ref: '#/components/x-stackQL-resources/on_call_page/methods/create_on_call_page' update: [] - delete: - - $ref: '#/components/x-stackQL-resources/projects/methods/delete_project' + delete: [] replace: [] - downtimes: - id: datadog.service_management.downtimes - name: downtimes - title: Downtimes + on_call_schedule: + id: datadog.service_management.on_call_schedule + name: on_call_schedule + title: On Call Schedule methods: - list_downtimes: - operation: - $ref: '#/paths/~1api~1v2~1downtime/get' - response: - mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - create_downtime: + create_on_call_schedule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1downtime/post' + $ref: '#/paths/~1api~1v2~1on-call~1schedules/post' response: mediaType: application/json - openAPIDocKey: '200' - cancel_downtime: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_on_call_schedule: operation: - $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/delete' + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_downtime: + request: + nativeCasing: camel + get_on_call_schedule: operation: - $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/get' + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_downtime: + request: + nativeCasing: camel + update_on_call_schedule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1downtime~1{downtime_id}/patch' + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/downtimes/methods/get_downtime' - - $ref: '#/components/x-stackQL-resources/downtimes/methods/list_downtimes' + - $ref: '#/components/x-stackQL-resources/on_call_schedule/methods/get_on_call_schedule' insert: - - $ref: '#/components/x-stackQL-resources/downtimes/methods/create_downtime' - update: - - $ref: '#/components/x-stackQL-resources/downtimes/methods/update_downtime' + - $ref: '#/components/x-stackQL-resources/on_call_schedule/methods/create_on_call_schedule' + update: [] delete: - - $ref: '#/components/x-stackQL-resources/downtimes/methods/cancel_downtime' - replace: [] - issues: - id: datadog.service_management.issues - name: issues - title: Issues + - $ref: '#/components/x-stackQL-resources/on_call_schedule/methods/delete_on_call_schedule' + replace: + - $ref: '#/components/x-stackQL-resources/on_call_schedule/methods/update_on_call_schedule' + on_call_schedule_responders: + id: datadog.service_management.on_call_schedule_responders + name: on_call_schedule_responders + title: On Call Schedule Responders methods: - search_issues: + get_schedule_on_call_responders: operation: - $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1search/post' + $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}~1responders/get' response: mediaType: application/json openAPIDocKey: '200' - get_issue: + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/on_call_schedule_responders/methods/get_schedule_on_call_responders' + insert: [] + update: [] + delete: [] + replace: [] + team_on_call_users: + id: datadog.service_management.team_on_call_users + name: team_on_call_users + title: Team On Call Users + methods: + get_team_on_call_users: operation: - $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}/get' + $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1on-call/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_issue_assignee: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/team_on_call_users/methods/get_team_on_call_users' + insert: [] + update: [] + delete: [] + replace: [] + on_call_team_routing_rules: + id: datadog.service_management.on_call_team_routing_rules + name: on_call_team_routing_rules + title: On Call Team Routing Rules + methods: + get_on_call_team_routing_rules: operation: - $ref: >- - #/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1assignee/put + $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1routing-rules/get' response: mediaType: application/json openAPIDocKey: '200' - update_issue_state: + objectKey: $.data + request: + nativeCasing: camel + set_on_call_team_routing_rules: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1error-tracking~1issues~1{issue_id}~1state/put' + $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1routing-rules/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/issues/methods/get_issue' - insert: - - $ref: '#/components/x-stackQL-resources/issues/methods/search_issues' + - $ref: '#/components/x-stackQL-resources/on_call_team_routing_rules/methods/get_on_call_team_routing_rules' + insert: [] update: [] delete: [] - replace: [] - events: - id: datadog.service_management.events - name: events - title: Events + replace: + - $ref: '#/components/x-stackQL-resources/on_call_team_routing_rules/methods/set_on_call_team_routing_rules' + on_call_user_notification_channels: + id: datadog.service_management.on_call_user_notification_channels + name: on_call_user_notification_channels + title: On Call User Notification Channels methods: - list_events: + list_user_notification_channels: operation: - $ref: '#/paths/~1api~1v2~1events/get' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-channels/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_event: + request: + nativeCasing: camel + create_user_notification_channel: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1events/post' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-channels/post' response: mediaType: application/json - openAPIDocKey: '202' - search_events: + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_user_notification_channel: operation: - $ref: '#/paths/~1api~1v2~1events~1search/post' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-channels~1{channel_id}/delete' response: mediaType: application/json - openAPIDocKey: '200' - get_event: + openAPIDocKey: '204' + request: + nativeCasing: camel + get_user_notification_channel: operation: - $ref: '#/paths/~1api~1v2~1events~1{event_id}/get' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-channels~1{channel_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/events/methods/get_event' - - $ref: '#/components/x-stackQL-resources/events/methods/list_events' + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_channels/methods/get_user_notification_channel' + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_channels/methods/list_user_notification_channels' insert: - - $ref: '#/components/x-stackQL-resources/events/methods/create_event' - - $ref: '#/components/x-stackQL-resources/events/methods/search_events' + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_channels/methods/create_user_notification_channel' update: [] - delete: [] + delete: + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_channels/methods/delete_user_notification_channel' replace: [] - incidents: - id: datadog.service_management.incidents - name: incidents - title: Incidents + on_call_user_notification_rules: + id: datadog.service_management.on_call_user_notification_rules + name: on_call_user_notification_rules + title: On Call User Notification Rules methods: - list_incidents: + list_user_notification_rules: operation: - $ref: '#/paths/~1api~1v2~1incidents/get' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-rules/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_incident: + request: + nativeCasing: camel + create_user_notification_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1incidents/post' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-rules/post' response: mediaType: application/json openAPIDocKey: '201' - search_incidents: - operation: - $ref: '#/paths/~1api~1v2~1incidents~1search/get' - response: - mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - delete_incident: + request: + nativeCasing: camel + delete_user_notification_rule: operation: - $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/delete' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-rules~1{rule_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_incident: + request: + nativeCasing: camel + get_user_notification_rule: operation: - $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/get' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-rules~1{rule_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident: + request: + nativeCasing: camel + update_user_notification_rule: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}/patch' + $ref: '#/paths/~1api~1v2~1on-call~1users~1{user_id}~1notification-rules~1{rule_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: '#/components/x-stackQL-resources/incidents/methods/get_incident' - - $ref: '#/components/x-stackQL-resources/incidents/methods/list_incidents' - - $ref: >- - #/components/x-stackQL-resources/incidents/methods/search_incidents + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_rules/methods/get_user_notification_rule' + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_rules/methods/list_user_notification_rules' insert: - - $ref: '#/components/x-stackQL-resources/incidents/methods/create_incident' - update: - - $ref: '#/components/x-stackQL-resources/incidents/methods/update_incident' + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_rules/methods/create_user_notification_rule' + update: [] delete: - - $ref: '#/components/x-stackQL-resources/incidents/methods/delete_incident' - replace: [] - incident_notification_rules: - id: datadog.service_management.incident_notification_rules - name: incident_notification_rules - title: Incident Notification Rules + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_rules/methods/delete_user_notification_rule' + replace: + - $ref: '#/components/x-stackQL-resources/on_call_user_notification_rules/methods/update_user_notification_rule' + service_definitions: + id: datadog.service_management.service_definitions + name: service_definitions + title: Service Definitions methods: - list_incident_notification_rules: + list_service_definitions: operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules/get' + $ref: '#/paths/~1api~1v2~1services~1definitions/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_incident_notification_rule: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + create_or_update_service_definitions: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules/post' + $ref: '#/paths/~1api~1v2~1services~1definitions/post' response: mediaType: application/json - openAPIDocKey: '201' - delete_incident_notification_rule: + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_service_definition: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/delete + $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_incident_notification_rule: + request: + nativeCasing: camel + get_service_definition: operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/get' + $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_notification_rule: + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/service_definitions/methods/get_service_definition' + - $ref: '#/components/x-stackQL-resources/service_definitions/methods/list_service_definitions' + insert: + - $ref: '#/components/x-stackQL-resources/service_definitions/methods/create_or_update_service_definitions' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/service_definitions/methods/delete_service_definition' + replace: [] + slo_statuses: + id: datadog.service_management.slo_statuses + name: slo_statuses + title: Slo Statuses + methods: + get_slo_status: operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-rules~1{id}/put' + $ref: '#/paths/~1api~1v2~1slo~1{slo_id}~1status/get' response: mediaType: application/json openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_rules/methods/get_incident_notification_rule - - $ref: >- - #/components/x-stackQL-resources/incident_notification_rules/methods/list_incident_notification_rules - insert: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_rules/methods/create_incident_notification_rule + - $ref: '#/components/x-stackQL-resources/slo_statuses/methods/get_slo_status' + insert: [] update: [] - delete: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_rules/methods/delete_incident_notification_rule - replace: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_rules/methods/update_incident_notification_rule - incident_notification_templates: - id: datadog.service_management.incident_notification_templates - name: incident_notification_templates - title: Incident Notification Templates + delete: [] + replace: [] + statuspages: + id: datadog.service_management.statuspages + name: statuspages + title: Statuspages methods: - list_incident_notification_templates: + list_status_pages: operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates/get' + $ref: '#/paths/~1api~1v2~1statuspages/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_incident_notification_template: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_status_page: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1notification-templates/post' + $ref: '#/paths/~1api~1v2~1statuspages/post' response: mediaType: application/json openAPIDocKey: '201' - delete_incident_notification_template: + request: + nativeCasing: camel + delete_status_page: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/delete + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_incident_notification_template: + request: + nativeCasing: camel + get_status_page: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/get + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_notification_template: + request: + nativeCasing: camel + update_status_page: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1notification-templates~1{id}/patch + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + publish_status_page: + operation: + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1publish/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + unpublish_status_page: + operation: + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1unpublish/post' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_templates/methods/get_incident_notification_template - - $ref: >- - #/components/x-stackQL-resources/incident_notification_templates/methods/list_incident_notification_templates + - $ref: '#/components/x-stackQL-resources/statuspages/methods/get_status_page' + - $ref: '#/components/x-stackQL-resources/statuspages/methods/list_status_pages' insert: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_templates/methods/create_incident_notification_template + - $ref: '#/components/x-stackQL-resources/statuspages/methods/create_status_page' update: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_templates/methods/update_incident_notification_template + - $ref: '#/components/x-stackQL-resources/statuspages/methods/update_status_page' delete: - - $ref: >- - #/components/x-stackQL-resources/incident_notification_templates/methods/delete_incident_notification_template + - $ref: '#/components/x-stackQL-resources/statuspages/methods/delete_status_page' replace: [] - incident_types: - id: datadog.service_management.incident_types - name: incident_types - title: Incident Types + statuspage_degradations: + id: datadog.service_management.statuspage_degradations + name: statuspage_degradations + title: Statuspage Degradations methods: - list_incident_types: + list_degradations: operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1types/get' + $ref: '#/paths/~1api~1v2~1statuspages~1degradations/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_incident_type: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_degradation: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1incidents~1config~1types/post' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations/post' response: mediaType: application/json openAPIDocKey: '201' - delete_incident_type: + request: + nativeCasing: camel + delete_degradation: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/delete + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations~1{degradation_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_incident_type: + request: + nativeCasing: camel + get_degradation: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/get + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations~1{degradation_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_type: + request: + nativeCasing: camel + update_degradation: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1config~1types~1{incident_type_id}/patch + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations~1{degradation_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_types/methods/get_incident_type - - $ref: >- - #/components/x-stackQL-resources/incident_types/methods/list_incident_types + - $ref: '#/components/x-stackQL-resources/statuspage_degradations/methods/get_degradation' + - $ref: '#/components/x-stackQL-resources/statuspage_degradations/methods/list_degradations' insert: - - $ref: >- - #/components/x-stackQL-resources/incident_types/methods/create_incident_type + - $ref: '#/components/x-stackQL-resources/statuspage_degradations/methods/create_degradation' update: - - $ref: >- - #/components/x-stackQL-resources/incident_types/methods/update_incident_type + - $ref: '#/components/x-stackQL-resources/statuspage_degradations/methods/update_degradation' delete: - - $ref: >- - #/components/x-stackQL-resources/incident_types/methods/delete_incident_type + - $ref: '#/components/x-stackQL-resources/statuspage_degradations/methods/delete_degradation' replace: [] - incident_attachments: - id: datadog.service_management.incident_attachments - name: incident_attachments - title: Incident Attachments + statuspage_maintenances: + id: datadog.service_management.statuspage_maintenances + name: statuspage_maintenances + title: Statuspage Maintenances methods: - list_incident_attachments: + list_maintenances: operation: - $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/get' + $ref: '#/paths/~1api~1v2~1statuspages~1maintenances/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[limit] + skip: + paramName: page[offset] + create_maintenance: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenances/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + get_maintenance: + operation: + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenances~1{maintenance_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_attachments: + request: + nativeCasing: camel + update_maintenance: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1incidents~1{incident_id}~1attachments/patch' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenances~1{maintenance_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_attachments/methods/list_incident_attachments - insert: [] + - $ref: '#/components/x-stackQL-resources/statuspage_maintenances/methods/get_maintenance' + - $ref: '#/components/x-stackQL-resources/statuspage_maintenances/methods/list_maintenances' + insert: + - $ref: '#/components/x-stackQL-resources/statuspage_maintenances/methods/create_maintenance' update: - - $ref: >- - #/components/x-stackQL-resources/incident_attachments/methods/update_incident_attachments + - $ref: '#/components/x-stackQL-resources/statuspage_maintenances/methods/update_maintenance' delete: [] replace: [] - incident_integrations: - id: datadog.service_management.incident_integrations - name: incident_integrations - title: Incident Integrations + statuspage_components: + id: datadog.service_management.statuspage_components + name: statuspage_components + title: Statuspage Components methods: - list_incident_integrations: + list_components: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations/get + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1components/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_incident_integration: + request: + nativeCasing: camel + create_component: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations/post + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1components/post' response: mediaType: application/json openAPIDocKey: '201' - delete_incident_integration: + request: + nativeCasing: camel + delete_component: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/delete + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1components~1{component_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_incident_integration: + request: + nativeCasing: camel + get_component: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/get + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1components~1{component_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_integration: + request: + nativeCasing: camel + update_component: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1integrations~1{integration_metadata_id}/patch + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1components~1{component_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_integrations/methods/get_incident_integration - - $ref: >- - #/components/x-stackQL-resources/incident_integrations/methods/list_incident_integrations + - $ref: '#/components/x-stackQL-resources/statuspage_components/methods/get_component' + - $ref: '#/components/x-stackQL-resources/statuspage_components/methods/list_components' insert: - - $ref: >- - #/components/x-stackQL-resources/incident_integrations/methods/create_incident_integration + - $ref: '#/components/x-stackQL-resources/statuspage_components/methods/create_component' update: - - $ref: >- - #/components/x-stackQL-resources/incident_integrations/methods/update_incident_integration + - $ref: '#/components/x-stackQL-resources/statuspage_components/methods/update_component' delete: - - $ref: >- - #/components/x-stackQL-resources/incident_integrations/methods/delete_incident_integration + - $ref: '#/components/x-stackQL-resources/statuspage_components/methods/delete_component' replace: [] - incident_todos: - id: datadog.service_management.incident_todos - name: incident_todos - title: Incident Todos + statuspage_degradation_templates: + id: datadog.service_management.statuspage_degradation_templates + name: statuspage_degradation_templates + title: Statuspage Degradation Templates methods: - list_incident_todos: + list_degradation_templates: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos/get + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradation_templates/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_incident_todo: + request: + nativeCasing: camel + create_degradation_template: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos/post + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradation_templates/post' response: mediaType: application/json openAPIDocKey: '201' - delete_incident_todo: + request: + nativeCasing: camel + delete_degradation_template: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/delete + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradation_templates~1{template_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_incident_todo: + request: + nativeCasing: camel + get_degradation_template: operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/get + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradation_templates~1{template_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_todo: + request: + nativeCasing: camel + update_degradation_template: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: >- - #/paths/~1api~1v2~1incidents~1{incident_id}~1relationships~1todos~1{todo_id}/patch + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradation_templates~1{template_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_todos/methods/get_incident_todo - - $ref: >- - #/components/x-stackQL-resources/incident_todos/methods/list_incident_todos + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_templates/methods/get_degradation_template' + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_templates/methods/list_degradation_templates' insert: - - $ref: >- - #/components/x-stackQL-resources/incident_todos/methods/create_incident_todo + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_templates/methods/create_degradation_template' update: - - $ref: >- - #/components/x-stackQL-resources/incident_todos/methods/update_incident_todo + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_templates/methods/update_degradation_template' delete: - - $ref: >- - #/components/x-stackQL-resources/incident_todos/methods/delete_incident_todo + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_templates/methods/delete_degradation_template' replace: [] - on_call_escalation_policies: - id: datadog.service_management.on_call_escalation_policies - name: on_call_escalation_policies - title: On Call Escalation Policies + statuspage_degradation_backfills: + id: datadog.service_management.statuspage_degradation_backfills + name: statuspage_degradation_backfills + title: Statuspage Degradation Backfills methods: - create_on_call_escalation_policy: + create_backfilled_degradation: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies/post' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations~1backfill/post' response: mediaType: application/json openAPIDocKey: '201' - delete_on_call_escalation_policy: + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_backfills/methods/create_backfilled_degradation' + update: [] + delete: [] + replace: [] + statuspage_degradation_updates: + id: datadog.service_management.statuspage_degradation_updates + name: statuspage_degradation_updates + title: Statuspage Degradation Updates + methods: + soft_delete_degradation_update: operation: - $ref: >- - #/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/delete + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations~1{degradation_id}~1updates~1{update_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_on_call_escalation_policy: - operation: - $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/get' - response: - mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data - update_on_call_escalation_policy: + request: + nativeCasing: camel + edit_degradation_update: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1escalation-policies~1{policy_id}/put' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1degradations~1{degradation_id}~1updates~1{update_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/on_call_escalation_policies/methods/get_on_call_escalation_policy - insert: - - $ref: >- - #/components/x-stackQL-resources/on_call_escalation_policies/methods/create_on_call_escalation_policy - update: [] + select: [] + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_updates/methods/edit_degradation_update' delete: - - $ref: >- - #/components/x-stackQL-resources/on_call_escalation_policies/methods/delete_on_call_escalation_policy - replace: - - $ref: >- - #/components/x-stackQL-resources/on_call_escalation_policies/methods/update_on_call_escalation_policy - on_call_page: - id: datadog.service_management.on_call_page - name: on_call_page - title: On Call Page + - $ref: '#/components/x-stackQL-resources/statuspage_degradation_updates/methods/soft_delete_degradation_update' + replace: [] + statuspage_maintenance_templates: + id: datadog.service_management.statuspage_maintenance_templates + name: statuspage_maintenance_templates + title: Statuspage Maintenance Templates methods: - create_on_call_page: + list_maintenance_templates: operation: - $ref: '#/paths/~1api~1v2~1on-call~1pages/post' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenance_templates/get' response: mediaType: application/json openAPIDocKey: '200' - acknowledge_on_call_page: - operation: - $ref: '#/paths/~1api~1v2~1on-call~1pages~1{page_id}~1acknowledge/post' - response: - mediaType: application/json - openAPIDocKey: '202' - escalate_on_call_page: - operation: - $ref: '#/paths/~1api~1v2~1on-call~1pages~1{page_id}~1escalate/post' - response: - mediaType: application/json - openAPIDocKey: '202' - resolve_on_call_page: - operation: - $ref: '#/paths/~1api~1v2~1on-call~1pages~1{page_id}~1resolve/post' - response: - mediaType: application/json - openAPIDocKey: '202' - sqlVerbs: - select: [] - insert: - - $ref: >- - #/components/x-stackQL-resources/on_call_page/methods/create_on_call_page - update: [] - delete: [] - replace: [] - on_call_schedule: - id: datadog.service_management.on_call_schedule - name: on_call_schedule - title: On Call Schedule - methods: - create_on_call_schedule: + objectKey: $.data + request: + nativeCasing: camel + create_maintenance_template: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1schedules/post' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenance_templates/post' response: mediaType: application/json openAPIDocKey: '201' - delete_on_call_schedule: + request: + nativeCasing: camel + delete_maintenance_template: operation: - $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/delete' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenance_templates~1{template_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_on_call_schedule: + request: + nativeCasing: camel + get_maintenance_template: operation: - $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/get' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenance_templates~1{template_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_on_call_schedule: + request: + nativeCasing: camel + update_maintenance_template: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}/put' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenance_templates~1{template_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/on_call_schedule/methods/get_on_call_schedule + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_templates/methods/get_maintenance_template' + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_templates/methods/list_maintenance_templates' insert: - - $ref: >- - #/components/x-stackQL-resources/on_call_schedule/methods/create_on_call_schedule - update: [] + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_templates/methods/create_maintenance_template' + update: + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_templates/methods/update_maintenance_template' delete: - - $ref: >- - #/components/x-stackQL-resources/on_call_schedule/methods/delete_on_call_schedule - replace: - - $ref: >- - #/components/x-stackQL-resources/on_call_schedule/methods/update_on_call_schedule - on_call_user_schedule: - id: datadog.service_management.on_call_user_schedule - name: on_call_user_schedule - title: On Call User Schedule + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_templates/methods/delete_maintenance_template' + replace: [] + statuspage_maintenance_backfills: + id: datadog.service_management.statuspage_maintenance_backfills + name: statuspage_maintenance_backfills + title: Statuspage Maintenance Backfills methods: - get_schedule_on_call_user: + create_backfilled_maintenance: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1schedules~1{schedule_id}~1on-call/get' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenances~1backfill/post' response: mediaType: application/json - openAPIDocKey: '200' - objectKey: $.data + openAPIDocKey: '201' + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/on_call_user_schedule/methods/get_schedule_on_call_user - insert: [] + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_backfills/methods/create_backfilled_maintenance' update: [] delete: [] replace: [] - team_on_call_users: - id: datadog.service_management.team_on_call_users - name: team_on_call_users - title: Team On Call Users + statuspage_maintenance_updates: + id: datadog.service_management.statuspage_maintenance_updates + name: statuspage_maintenance_updates + title: Statuspage Maintenance Updates methods: - get_team_on_call_users: + patch_maintenance_update: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1on-call/get' + $ref: '#/paths/~1api~1v2~1statuspages~1{page_id}~1maintenances~1{maintenance_id}~1updates~1{update_id}/patch' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/team_on_call_users/methods/get_team_on_call_users + select: [] insert: [] - update: [] + update: + - $ref: '#/components/x-stackQL-resources/statuspage_maintenance_updates/methods/patch_maintenance_update' delete: [] replace: [] - on_call_team_routing_rules: - id: datadog.service_management.on_call_team_routing_rules - name: on_call_team_routing_rules - title: On Call Team Routing Rules + slos: + id: datadog.service_management.slos + name: slos + title: Slos methods: - get_on_call_team_routing_rules: + list_slos: operation: - $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1routing-rules/get' + $ref: '#/paths/~1api~1v1~1slo/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - set_on_call_team_routing_rules: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + skip: + paramName: offset + create_slo: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1on-call~1teams~1{team_id}~1routing-rules/put' + $ref: '#/paths/~1api~1v1~1slo/post' response: mediaType: application/json openAPIDocKey: '200' - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/on_call_team_routing_rules/methods/get_on_call_team_routing_rules - insert: [] - update: [] - delete: [] - replace: - - $ref: >- - #/components/x-stackQL-resources/on_call_team_routing_rules/methods/set_on_call_team_routing_rules - incident_services: - id: datadog.service_management.incident_services - name: incident_services - title: Incident Services - methods: - list_incident_services: + request: + nativeCasing: camel + delete_slotimeframe_in_bulk: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1services/get' + $ref: '#/paths/~1api~1v1~1slo~1bulk_delete/post' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_incident_service: + request: + nativeCasing: camel + check_can_delete_slo: operation: - $ref: '#/paths/~1api~1v2~1services/post' + $ref: '#/paths/~1api~1v1~1slo~1can_delete/get' response: mediaType: application/json - openAPIDocKey: '201' - delete_incident_service: + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + delete_slo: operation: - $ref: '#/paths/~1api~1v2~1services~1{service_id}/delete' + $ref: '#/paths/~1api~1v1~1slo~1{slo_id}/delete' response: mediaType: application/json - openAPIDocKey: '204' - get_incident_service: + openAPIDocKey: '200' + request: + nativeCasing: camel + get_slo: operation: - $ref: '#/paths/~1api~1v2~1services~1{service_id}/get' + $ref: '#/paths/~1api~1v1~1slo~1{slo_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_service: + request: + nativeCasing: camel + update_slo: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1services~1{service_id}/patch' + $ref: '#/paths/~1api~1v1~1slo~1{slo_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_services/methods/get_incident_service - - $ref: >- - #/components/x-stackQL-resources/incident_services/methods/list_incident_services + - $ref: '#/components/x-stackQL-resources/slos/methods/get_slo' + - $ref: '#/components/x-stackQL-resources/slos/methods/list_slos' + - $ref: '#/components/x-stackQL-resources/slos/methods/check_can_delete_slo' insert: - - $ref: >- - #/components/x-stackQL-resources/incident_services/methods/create_incident_service - update: - - $ref: >- - #/components/x-stackQL-resources/incident_services/methods/update_incident_service + - $ref: '#/components/x-stackQL-resources/slos/methods/create_slo' + update: [] delete: - - $ref: >- - #/components/x-stackQL-resources/incident_services/methods/delete_incident_service - replace: [] - service_definitions: - id: datadog.service_management.service_definitions - name: service_definitions - title: Service Definitions + - $ref: '#/components/x-stackQL-resources/slos/methods/delete_slo' + replace: + - $ref: '#/components/x-stackQL-resources/slos/methods/update_slo' + slo_corrections: + id: datadog.service_management.slo_corrections + name: slo_corrections + title: Slo Corrections methods: - list_service_definitions: + list_slocorrection: operation: - $ref: '#/paths/~1api~1v2~1services~1definitions/get' + $ref: '#/paths/~1api~1v1~1slo~1correction/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - create_or_update_service_definitions: + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + skip: + paramName: offset + create_slocorrection: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1services~1definitions/post' + $ref: '#/paths/~1api~1v1~1slo~1correction/post' response: mediaType: application/json openAPIDocKey: '200' - delete_service_definition: + request: + nativeCasing: camel + delete_slocorrection: operation: - $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/delete' + $ref: '#/paths/~1api~1v1~1slo~1correction~1{slo_correction_id}/delete' response: mediaType: application/json openAPIDocKey: '204' - get_service_definition: + request: + nativeCasing: camel + get_slocorrection: operation: - $ref: '#/paths/~1api~1v2~1services~1definitions~1{service_name}/get' + $ref: '#/paths/~1api~1v1~1slo~1correction~1{slo_correction_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/service_definitions/methods/get_service_definition - - $ref: >- - #/components/x-stackQL-resources/service_definitions/methods/list_service_definitions - insert: - - $ref: >- - #/components/x-stackQL-resources/service_definitions/methods/create_or_update_service_definitions - update: [] - delete: - - $ref: >- - #/components/x-stackQL-resources/service_definitions/methods/delete_service_definition - replace: [] - slo_report_job: - id: datadog.service_management.slo_report_job - name: slo_report_job - title: Slo Report Job - methods: - create_sloreport_job: + request: + nativeCasing: camel + update_slocorrection: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1slo~1report/post' + $ref: '#/paths/~1api~1v1~1slo~1correction~1{slo_correction_id}/patch' response: mediaType: application/json openAPIDocKey: '200' - get_sloreport: - operation: - $ref: '#/paths/~1api~1v2~1slo~1report~1{report_id}~1download/get' - response: - mediaType: text/csv - openAPIDocKey: '200' - get_sloreport_job_status: + request: + nativeCasing: camel + get_slocorrections: operation: - $ref: '#/paths/~1api~1v2~1slo~1report~1{report_id}~1status/get' + $ref: '#/paths/~1api~1v1~1slo~1{slo_id}~1corrections/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/slo_report_job/methods/get_sloreport_job_status + - $ref: '#/components/x-stackQL-resources/slo_corrections/methods/get_slocorrection' + - $ref: '#/components/x-stackQL-resources/slo_corrections/methods/get_slocorrections' + - $ref: '#/components/x-stackQL-resources/slo_corrections/methods/list_slocorrection' insert: - - $ref: >- - #/components/x-stackQL-resources/slo_report_job/methods/create_sloreport_job - update: [] - delete: [] + - $ref: '#/components/x-stackQL-resources/slo_corrections/methods/create_slocorrection' + update: + - $ref: '#/components/x-stackQL-resources/slo_corrections/methods/update_slocorrection' + delete: + - $ref: '#/components/x-stackQL-resources/slo_corrections/methods/delete_slocorrection' replace: [] - incident_teams: - id: datadog.service_management.incident_teams - name: incident_teams - title: Incident Teams + slo_search_results: + id: datadog.service_management.slo_search_results + name: slo_search_results + title: Slo Search Results methods: - list_incident_teams: + search_slo: operation: - $ref: '#/paths/~1api~1v2~1teams/get' + $ref: '#/paths/~1api~1v1~1slo~1search/get' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - create_incident_team: - operation: - $ref: '#/paths/~1api~1v2~1teams/post' - response: - mediaType: application/json - openAPIDocKey: '201' - delete_incident_team: - operation: - $ref: '#/paths/~1api~1v2~1teams~1{team_id}/delete' - response: - mediaType: application/json - openAPIDocKey: '204' - get_incident_team: + objectKey: $.data.attributes.slos + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/slo_search_results/methods/search_slo' + insert: [] + update: [] + delete: [] + replace: [] + slo_history: + id: datadog.service_management.slo_history + name: slo_history + title: Slo History + methods: + get_slohistory: operation: - $ref: '#/paths/~1api~1v2~1teams~1{team_id}/get' + $ref: '#/paths/~1api~1v1~1slo~1{slo_id}~1history/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data - update_incident_team: - operation: - $ref: '#/paths/~1api~1v2~1teams~1{team_id}/patch' - response: - mediaType: application/json - openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/incident_teams/methods/get_incident_team - - $ref: >- - #/components/x-stackQL-resources/incident_teams/methods/list_incident_teams - insert: - - $ref: >- - #/components/x-stackQL-resources/incident_teams/methods/create_incident_team - update: - - $ref: >- - #/components/x-stackQL-resources/incident_teams/methods/update_incident_team - delete: - - $ref: >- - #/components/x-stackQL-resources/incident_teams/methods/delete_incident_team + - $ref: '#/components/x-stackQL-resources/slo_history/methods/get_slohistory' + insert: [] + update: [] + delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/openapi/src/datadog/v00.00.00000/services/software_delivery.yaml b/provider-dev/openapi/src/datadog/v00.00.00000/services/software_delivery.yaml index 4949c57..9b2ba4a 100644 --- a/provider-dev/openapi/src/datadog/v00.00.00000/services/software_delivery.yaml +++ b/provider-dev/openapi/src/datadog/v00.00.00000/services/software_delivery.yaml @@ -4,24 +4,161 @@ info: description: datadog software_delivery API version: '1.0' paths: + /api/v2/ci/github/accounts: + get: + description: |- + Retrieve the list of GitHub accounts (organizations or users) available to this Datadog organization + through its GitHub App installation, along with each account's and repository's CI Visibility opt-in status. + operationId: ListCIAppGitHubAccounts + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + account: datadog + enabled: true + host: github.com + repo_count: 2 + repositories: + - enabled: true + name: shopist + - enabled: false + name: dd-source + id: github.com/datadog + type: ci_github_account + schema: + $ref: '#/components/schemas/CIAppGitHubAccountsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - integrations_read + summary: List GitHub CI Visibility status + tags: + - CI Visibility GitHub Accounts + x-permission: + operator: OR + permissions: + - integrations_read + patch: + description: |- + Enable or disable CI Visibility for a GitHub account, one of its repositories, or both in the same request. + The account (and, optionally, repository) are identified by name. Account-level and repository-level + changes are independent and may both be supplied in the same request. At least one of `enabled` or + `repository.enabled` must be provided. If the account name matches installations on more than one host, + `host` must be supplied to disambiguate, otherwise a 409 is returned. Returns a 404 if the CI Visibility + GitHub integration is not enabled for this organization, or if the given account or repository cannot be + found by name. + operationId: UpdateCIAppGitHubAccount + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + account: datadog + enabled: true + host: github.com + repository: + enabled: true + name: shopist + type: ci_github_account + schema: + $ref: '#/components/schemas/CIAppGitHubAccountUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + account: datadog + enabled: true + host: github.com + repo_count: 2 + repositories: + - enabled: true + name: shopist + - enabled: false + name: dd-source + id: github.com/datadog + type: ci_github_account + schema: + $ref: '#/components/schemas/CIAppGitHubAccountResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '409': + $ref: '#/components/responses/ConflictResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - ci_provider_settings_write + summary: Update GitHub CI Visibility status + tags: + - CI Visibility GitHub Accounts + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - ci_provider_settings_write /api/v2/ci/pipeline: post: - description: >- - Send your pipeline event to your Datadog platform over HTTP. For details - about how pipeline executions are modeled and what execution types we - support, see [Pipeline Data Model And Execution - Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/). - + description: |- + Send your pipeline event to your Datadog platform over HTTP. For details about how pipeline executions are modeled and what execution types we support, see [Pipeline Data Model And Execution Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/). Multiple events can be sent in an array (up to 1000). - - Pipeline events can be submitted with a timestamp that is up to 18 hours - in the past. + Pipeline events can be submitted with a timestamp that is up to 18 hours in the past. + The duration between the event start and end times cannot exceed 1 year. operationId: CreateCIAppPipelineEvent requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + resource: + end: '2024-11-25T20:08:11.018Z' + git: + author_email: john.doe@email.com + repository_url: https://github.com/organization/example-repository + sha: 7f263865994b76066c4612fd1965215e7dcb4cd2 + level: pipeline + name: Deploy to AWS + partial_retry: false + start: '2024-11-25T20:06:41.018Z' + status: success + unique_id: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a + url: https://my-ci-provider.example/pipelines/my-pipeline/run/1 + type: cipipeline_resource_request schema: $ref: '#/components/schemas/CIAppCreatePipelineEventRequest' required: true @@ -29,8 +166,12 @@ paths: '202': content: application/json: + examples: + default: + value: {} schema: - type: object + type: string + description: (opaque JSON object) description: Request accepted for processing '400': content: @@ -88,13 +229,34 @@ paths: x-codegen-request-body-name: body /api/v2/ci/pipelines/analytics/aggregate: post: - description: >- - Use this API endpoint to aggregate CI Visibility pipeline events into - buckets of computed metrics and timeseries. + description: Use this API endpoint to aggregate CI Visibility pipeline events into buckets of computed metrics and timeseries. operationId: AggregateCIAppPipelineEvents requestBody: content: application/json: + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: '@duration' + type: timeseries + filter: + from: now-15m + query: '@ci.provider.name:github AND @ci.status:error' + to: now + group_by: + - facet: '@ci.status' + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT schema: $ref: '#/components/schemas/CIAppPipelinesAggregateRequest' required: true @@ -102,6 +264,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + buckets: + - by: + '@ci.status': error + computes: + pc90: + - time: '2020-06-08T11:55:00.123Z' + value: 2345 schema: $ref: '#/components/schemas/CIAppPipelinesAnalyticsAggregateResponse' description: OK @@ -126,13 +299,9 @@ paths: - ci_visibility_read /api/v2/ci/pipelines/events: get: - description: >- - List endpoint returns CI Visibility pipeline events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - + description: |- + List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). Use this endpoint to see your latest pipeline events. operationId: ListCIAppPipelineEvents @@ -167,8 +336,7 @@ paths: schema: $ref: '#/components/schemas/CIAppSort' - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== in: query name: page[cursor] required: false @@ -188,6 +356,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: [] + meta: + page: {} schema: $ref: '#/components/schemas/CIAppPipelineEventsResponse' description: OK @@ -216,19 +390,28 @@ paths: - ci_visibility_read /api/v2/ci/pipelines/events/search: post: - description: >- - List endpoint returns CI Visibility pipeline events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - + description: |- + List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). Use this endpoint to build complex events filtering and search. operationId: SearchCIAppPipelineEvents requestBody: content: application/json: + examples: + default: + value: + filter: + from: now-15m + query: '@ci.provider.name:github AND @ci.status:error' + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp schema: $ref: '#/components/schemas/CIAppPipelineEventsRequest' required: false @@ -236,6 +419,22 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + attributes: + duration: 2345 + ci_level: pipeline + tags: + - team:backend + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: cipipeline + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done schema: $ref: '#/components/schemas/CIAppPipelineEventsResponse' description: OK @@ -263,15 +462,346 @@ paths: operator: OR permissions: - ci_visibility_read + /api/v2/ci/test-optimization/settings/policies: + patch: + description: |- + Partially update Flaky Tests Management repository-level policies for the given repository. + Only provided policy blocks are updated; omitted blocks are left unchanged. + operationId: UpdateFlakyTestsManagementPolicies + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + attempt_to_fix: + retries: 3 + disabled: + enabled: false + quarantined: + auto_quarantine_rule: + enabled: true + window_seconds: 3600 + branch_rule: + branches: + - main + enabled: true + excluded_branches: [] + excluded_test_services: [] + enabled: true + failure_rate_rule: + branches: + - main + enabled: true + min_runs: 10 + threshold: 0.5 + repository_id: github.com/example-org/example-repo + type: test_optimization_update_flaky_tests_management_policies_request + schema: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesUpdateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + repository_id: github.com/datadog/test-service + id: github.com/datadog/test-service + type: test_optimization_flaky_tests_management_policies + schema: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_settings_write + summary: Update Flaky Tests Management policies + tags: + - Test Optimization + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_settings_write + post: + description: Retrieve Flaky Tests Management repository-level policies for the given repository. + operationId: GetFlakyTestsManagementPolicies + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + repository_id: github.com/example-org/example-repo + type: test_optimization_get_flaky_tests_management_policies_request + schema: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesGetRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + repository_id: github.com/datadog/test-service + id: github.com/datadog/test-service + type: test_optimization_flaky_tests_management_policies + schema: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_read + summary: Get Flaky Tests Management policies + tags: + - Test Optimization + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_read + /api/v2/ci/test-optimization/settings/service: + delete: + description: Delete Test Optimization settings for a specific service identified by repository, service name, and environment. + operationId: DeleteTestOptimizationServiceSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + env: prod + repository_id: github.com/datadog/test-service + service_name: test-service + type: test_optimization_delete_service_settings_request + schema: + $ref: '#/components/schemas/TestOptimizationDeleteServiceSettingsRequest' + required: true + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_settings_write + summary: Delete Test Optimization service settings + tags: + - Test Optimization + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_settings_write + patch: + description: |- + Partially update Test Optimization settings for a specific service identified by repository, service name, and environment. + Only provided fields are updated; setting a field to `null` is a no-op. + To reset a setting to inherit from the repository level, use the corresponding `_inherit` field. + The `pr_comments_enabled` field is ignored as it cannot be overridden at the service level. + operationId: UpdateTestOptimizationServiceSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + env: prod + repository_id: github.com/datadog/test-service + service_name: test-service + test_impact_analysis_enabled_inherit: true + type: test_optimization_update_service_settings_request + schema: + $ref: '#/components/schemas/TestOptimizationUpdateServiceSettingsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_test_retries_enabled: false + auto_test_retries_enabled_is_overridden: false + code_coverage_enabled: false + code_coverage_enabled_is_overridden: false + early_flake_detection_enabled: false + early_flake_detection_enabled_is_overridden: false + env: prod + failed_test_replay_enabled: false + failed_test_replay_enabled_is_overridden: false + pr_comments_enabled: false + repository_id: github.com/datadog/test-service + service_name: test-service + test_impact_analysis_enabled: true + test_impact_analysis_enabled_is_overridden: true + id: 9b8a7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d + type: test_optimization_service_settings + schema: + $ref: '#/components/schemas/TestOptimizationServiceSettingsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_settings_write + summary: Update Test Optimization service settings + tags: + - Test Optimization + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_settings_write + post: + description: Retrieve Test Optimization settings for a specific service identified by repository, service name, and environment. + operationId: GetTestOptimizationServiceSettings + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + env: prod + repository_id: github.com/datadog/test-service + service_name: test-service + type: test_optimization_get_service_settings_request + schema: + $ref: '#/components/schemas/TestOptimizationGetServiceSettingsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + auto_test_retries_enabled: false + auto_test_retries_enabled_is_overridden: false + code_coverage_enabled: false + code_coverage_enabled_is_overridden: false + early_flake_detection_enabled: false + early_flake_detection_enabled_is_overridden: false + env: prod + failed_test_replay_enabled: false + failed_test_replay_enabled_is_overridden: false + pr_comments_enabled: false + repository_id: github.com/datadog/test-service + service_name: test-service + test_impact_analysis_enabled: true + test_impact_analysis_enabled_is_overridden: true + id: 9b8a7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d + type: test_optimization_service_settings + schema: + $ref: '#/components/schemas/TestOptimizationServiceSettingsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_read + summary: Get Test Optimization service settings + tags: + - Test Optimization + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_read /api/v2/ci/tests/analytics/aggregate: post: - description: >- - The API endpoint to aggregate CI Visibility test events into buckets of - computed metrics and timeseries. + description: The API endpoint to aggregate CI Visibility test events into buckets of computed metrics and timeseries. operationId: AggregateCIAppTestEvents requestBody: content: application/json: + examples: + default: + value: + compute: + - aggregation: pc90 + interval: 5m + metric: '@duration' + type: timeseries + filter: + from: now-15m + query: '@test.service:web-tests AND @test.status:fail' + to: now + group_by: + - facet: '@test.service' + histogram: + interval: 10 + max: 100 + min: 50 + sort: + aggregation: count + order: asc + options: + timezone: GMT schema: $ref: '#/components/schemas/CIAppTestsAggregateRequest' required: true @@ -279,6 +809,17 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + buckets: + - by: + '@test.service': web-tests + computes: + pc90: + - time: '2020-06-08T11:55:00.123Z' + value: 2345 schema: $ref: '#/components/schemas/CIAppTestsAnalyticsAggregateResponse' description: OK @@ -306,13 +847,9 @@ paths: - test_optimization_read /api/v2/ci/tests/events: get: - description: >- - List endpoint returns CI Visibility test events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - + description: |- + List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). Use this endpoint to see your latest test events. operationId: ListCIAppTestEvents @@ -347,8 +884,7 @@ paths: schema: $ref: '#/components/schemas/CIAppSort' - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== in: query name: page[cursor] required: false @@ -368,6 +904,12 @@ paths: '200': content: application/json: + examples: + default: + value: + data: [] + meta: + page: {} schema: $ref: '#/components/schemas/CIAppTestEventsResponse' description: OK @@ -399,19 +941,28 @@ paths: - test_optimization_read /api/v2/ci/tests/events/search: post: - description: >- - List endpoint returns CI Visibility test events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - + description: |- + List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). + [Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). Use this endpoint to build complex events filtering and search. operationId: SearchCIAppTestEvents requestBody: content: application/json: + examples: + default: + value: + filter: + from: now-15m + query: '@test.service:web-tests AND @test.status:fail' + to: now + options: + timezone: GMT + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: timestamp schema: $ref: '#/components/schemas/CIAppTestEventsRequest' required: false @@ -419,6 +970,24 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + attributes: + duration: 2345 + tags: + - team:backend + test_level: test + id: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: citest + links: + next: https://app.datadoghq.com/api/v2/ci/tests/events?page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + meta: + elapsed: 132 + request_id: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + status: done schema: $ref: '#/components/schemas/CIAppTestEventsResponse' description: OK @@ -449,223 +1018,491 @@ paths: permissions: - ci_visibility_read - test_optimization_read - /api/v2/dora/deployment: + /api/v2/code-coverage/branch/summary: post: - description: >- - Use this API endpoint to provide data about deployments for DORA - metrics. - - - This is necessary for: - - - Deployment Frequency - - - Change Lead Time - - - Change Failure Rate - operationId: CreateDORADeployment + description: |- + Retrieve aggregated code coverage statistics for a specific branch in a repository. + This endpoint provides overall coverage metrics as well as breakdowns by service + and code owner. + operationId: GetCodeCoverageBranchSummary requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + branch: prod + repository_url: https://github.com/datadog/test-service + type: ci_app_coverage_branch_summary_request schema: - $ref: '#/components/schemas/DORADeploymentRequest' + $ref: '#/components/schemas/BranchCoverageSummaryRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + evaluated_flags_count: 8 + evaluated_reports_count: 12 + patch_coverage: 70.1 + total_coverage: 82.4 + id: ZGQxMjM0NV9tYWluXzE3MDk1NjQwMDA= + type: ci_app_coverage_summary schema: - $ref: '#/components/schemas/DORADeploymentResponse' + $ref: '#/components/schemas/CoverageSummaryResponse' description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentResponse' - description: OK - but delayed due to incident '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal server error security: - apiKeyAuth: [] - summary: Send a deployment event for DORA Metrics + appKeyAuth: [] + - AuthZ: + - code_coverage_read + summary: Get code coverage summary for a branch tags: - - DORA Metrics + - Code Coverage x-codegen-request-body-name: body - /api/v2/dora/deployments: + x-permission: + operator: OR + permissions: + - code_coverage_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/code-coverage/commit/summary: post: - description: Use this API endpoint to get a list of deployment events. - operationId: ListDORADeployments + description: |- + Retrieve aggregated code coverage statistics for a specific commit in a repository. + This endpoint provides overall coverage metrics as well as breakdowns by service + and code owner. + + The commit SHA must be a 40-character hexadecimal string (SHA-1 hash). + operationId: GetCodeCoverageCommitSummary requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/datadog/test-service + type: ci_app_coverage_commit_summary_request schema: - $ref: '#/components/schemas/DORAListDeploymentsRequest' + $ref: '#/components/schemas/CommitCoverageSummaryRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + evaluated_flags_count: 8 + evaluated_reports_count: 12 + patch_coverage: 70.1 + total_coverage: 82.4 + id: ZGQxMjM0NV9tYWluXzE3MDk1NjQwMDA= + type: ci_app_coverage_summary schema: - $ref: '#/components/schemas/DORAListResponse' + $ref: '#/components/schemas/CoverageSummaryResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/responses/BadRequestResponse' '403': $ref: '#/components/responses/NotAuthorizedResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Internal server error security: - apiKeyAuth: [] appKeyAuth: [] - summary: Get a list of deployment events + - AuthZ: + - code_coverage_read + summary: Get code coverage summary for a commit tags: - - DORA Metrics + - Code Coverage x-codegen-request-body-name: body x-permission: operator: OR permissions: - - dora_metrics_read - /api/v2/dora/deployments/{deployment_id}: + - code_coverage_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates: get: - description: Use this API endpoint to get a deployment event. - operationId: GetDORADeployment + description: |- + Returns a paginated list of all deployment gates for the organization. + Use `page[cursor]` and `page[size]` query parameters to paginate through results. + operationId: ListDeploymentGates parameters: - - description: The ID of the deployment event. - in: path - name: deployment_id - required: true + - description: Cursor for pagination. Use the `meta.page.next_cursor` value from the previous response. + in: query + name: page[cursor] + required: false schema: type: string + - description: Number of results per page. Defaults to 50. Must be between 1 and 1000. + in: query + name: page[size] + required: false + schema: + default: 50 + format: int64 + maximum: 1000 + minimum: 1 + type: integer responses: '200': content: application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + id: 00000000-0000-0000-0000-000000000004 + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000003 + type: deployment_gate + meta: + page: + size: 50 schema: - $ref: '#/components/schemas/DORAFetchResponse' + $ref: '#/components/schemas/DeploymentGatesListResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error security: - apiKeyAuth: [] - - appKeyAuth: [] - summary: Get a deployment event + appKeyAuth: [] + summary: Get all deployment gates tags: - - DORA Metrics - x-codegen-request-body-name: body + - Deployment Gates x-permission: operator: OR permissions: - - dora_metrics_read - /api/v2/dora/failure: + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: |- - Use this API endpoint to provide failure data for DORA metrics. - - This is necessary for: - - Change Failure Rate - - Time to Restore - operationId: CreateDORAFailure + description: Endpoint to create a deployment gate. + operationId: CreateDeploymentGate requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + env: production + identifier: pre + service: my-service + type: deployment_gate schema: - $ref: '#/components/schemas/DORAFailureRequest' + $ref: '#/components/schemas/CreateDeploymentGateParams' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + handle: example-handle + id: 00000000-0000-0000-0000-000000000002 + name: Example Name + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000001 + type: deployment_gate schema: - $ref: '#/components/schemas/DORAFailureResponse' + $ref: '#/components/schemas/DeploymentGateResponse' description: OK - '202': + '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - but delayed due to incident - '400': + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create deployment gate + tags: + - Deployment Gates + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates/{gate_id}/rules: + get: + description: Endpoint to get rules for a deployment gate. + operationId: GetDeploymentGateRules + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + responses: + '200': content: application/json: + examples: + default: + value: + data: + attributes: + rules: + - created_at: '2024-01-01T00:00:00+00:00' + created_by: + id: 00000000-0000-0000-0000-000000000012 + dry_run: false + gate_id: abc-123 + name: My deployment rule + options: null + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000011 + type: list_deployment_rules schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/DeploymentGateRulesResponse' + description: OK + '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error security: - apiKeyAuth: [] - summary: Send a failure event for DORA Metrics + appKeyAuth: [] + summary: Get rules for a deployment gate tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/dora/failures: + - Deployment Gates + x-permission: + operator: OR + permissions: + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). post: - description: Use this API endpoint to get a list of failure events. - operationId: ListDORAFailures + description: Endpoint to create a deployment rule. A gate for the rule must already exist. + operationId: CreateDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + name: My deployment rule + options: + - resource1 + - resource2 + type: faulty_deployment_detection + type: deployment_rule schema: - $ref: '#/components/schemas/DORAListFailuresRequest' + $ref: '#/components/schemas/CreateDeploymentRuleParams' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + handle: test-user + id: 00000000-0000-0000-0000-000000000010 + name: Test User + dry_run: false + gate_id: abc-123 + name: My deployment rule + options: null + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000009 + type: deployment_rule schema: - $ref: '#/components/schemas/DORAListResponse' + $ref: '#/components/schemas/DeploymentRuleResponse' description: OK '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create deployment rule + tags: + - Deployment Gates + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates/{gate_id}/rules/{id}: + delete: + description: Endpoint to delete a deployment rule. + operationId: DeleteDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + - description: The ID of the deployment rule. + in: path + name: id + required: true + schema: + type: string + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/HTTPCDGatesNotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error security: - apiKeyAuth: [] appKeyAuth: [] - summary: Get a list of failure events + summary: Delete deployment rule tags: - - DORA Metrics - x-codegen-request-body-name: body + - Deployment Gates x-permission: operator: OR permissions: - - dora_metrics_read - /api/v2/dora/failures/{failure_id}: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). get: - description: Use this API endpoint to get a failure event. - operationId: GetDORAFailure + description: Endpoint to get a deployment rule. + operationId: GetDeploymentRule parameters: - - description: The ID of the failure event. + - description: The ID of the deployment gate. in: path - name: failure_id + name: gate_id + required: true + schema: + type: string + - description: The ID of the deployment rule. + in: path + name: id required: true schema: type: string @@ -673,2087 +1510,9418 @@ paths: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + id: 00000000-0000-0000-0000-000000000014 + dry_run: false + gate_id: abc-123 + name: My deployment rule + options: null + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000013 + type: deployment_rule schema: - $ref: '#/components/schemas/DORAFetchResponse' + $ref: '#/components/schemas/DeploymentRuleResponse' description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/HTTPCDRulesNotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error security: - apiKeyAuth: [] - - appKeyAuth: [] - summary: Get a failure event + appKeyAuth: [] + summary: Get deployment rule tags: - - DORA Metrics - x-codegen-request-body-name: body + - Deployment Gates x-permission: operator: OR permissions: - - dora_metrics_read - /api/v2/dora/incident: - post: - deprecated: true - description: >- - **Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` - instead. - - - Use this API endpoint to provide failure data for DORA metrics. - - - This is necessary for: - - - Change Failure Rate - - - Time to Restore - operationId: CreateDORAIncident + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Endpoint to update a deployment rule. + operationId: UpdateDeploymentRule + parameters: + - description: The ID of the deployment gate. + in: path + name: gate_id + required: true + schema: + type: string + - description: The ID of the deployment rule. + in: path + name: id + required: true + schema: + type: string requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + name: Updated deployment rule + options: + - resource1 + - resource2 + type: deployment_rule schema: - $ref: '#/components/schemas/DORAFailureRequest' + $ref: '#/components/schemas/UpdateDeploymentRuleParams' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + id: 00000000-0000-0000-0000-000000000016 + dry_run: false + gate_id: abc-123 + name: Updated deployment rule + options: + - resource1 + type: faulty_deployment_detection + id: 00000000-0000-0000-0000-000000000015 + type: deployment_rule schema: - $ref: '#/components/schemas/DORAFailureResponse' + $ref: '#/components/schemas/DeploymentRuleResponse' description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - but delayed due to incident '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/HTTPCDRulesNotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update deployment rule + tags: + - Deployment Gates + x-permission: + operator: OR + permissions: + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployment_gates/{id}: + delete: + description: Endpoint to delete a deployment gate. Rules associated with the gate are also deleted. + operationId: DeleteDeploymentGate + parameters: + - description: The ID of the deployment gate. + in: path + name: id + required: true + schema: + type: string + responses: + '204': + description: No Content + '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - $ref: '#/components/responses/NotAuthorizedResponse' + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/HTTPCDGatesNotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error security: - apiKeyAuth: [] - summary: Send an incident event for DORA Metrics + appKeyAuth: [] + summary: Delete deployment gate tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/workflows: - post: - description: >- - Create a new workflow, returning the workflow ID. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateWorkflow - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateWorkflowRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateWorkflowResponse' - description: Successfully created a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Create a Workflow - tags: - - Workflow Automation + - Deployment Gates x-permission: operator: OR permissions: - - workflows_write - /api/v2/workflows/{workflow_id}: - delete: - description: >- - Delete a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteWorkflow + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + get: + description: Endpoint to get a deployment gate. + operationId: GetDeploymentGate parameters: - - $ref: '#/components/parameters/WorkflowId' + - description: The ID of the deployment gate. + in: path + name: id + required: true + schema: + type: string responses: - '204': - description: Successfully deleted a workflow. - '403': + '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + id: 00000000-0000-0000-0000-000000000006 + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000005 + type: deployment_gate schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden + $ref: '#/components/schemas/DeploymentGateResponse' + description: OK + '400': + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found + $ref: '#/components/responses/HTTPCDGatesNotFoundResponse' '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Delete an existing Workflow + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get deployment gate tags: - - Workflow Automation + - Deployment Gates x-permission: operator: OR permissions: - - workflows_write - get: - description: >- - Get a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetWorkflow + - deployment_gates_read + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + put: + description: Endpoint to update a deployment gate. + operationId: UpdateDeploymentGate parameters: - - $ref: '#/components/parameters/WorkflowId' + - description: The ID of the deployment gate. + in: path + name: id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + id: 12345678-1234-1234-1234-123456789012 + type: deployment_gate + schema: + $ref: '#/components/schemas/UpdateDeploymentGateParams' + required: true responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + created_by: + id: 00000000-0000-0000-0000-000000000008 + dry_run: false + env: production + identifier: pre + service: my-service + id: 00000000-0000-0000-0000-000000000007 + type: deployment_gate schema: - $ref: '#/components/schemas/GetWorkflowResponse' - description: Successfully got a workflow. + $ref: '#/components/schemas/DeploymentGateResponse' + description: OK '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found + $ref: '#/components/responses/HTTPCDGatesNotFoundResponse' '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Get an existing Workflow + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update deployment gate tags: - - Workflow Automation + - Deployment Gates x-permission: operator: OR permissions: - - workflows_read - patch: - description: >- - Update a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UpdateWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' + - deployment_gates_write + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployments/gates/evaluation: + post: + description: |- + Triggers an asynchronous deployment gate evaluation for the given service and environment. + Returns an evaluation ID that can be used to poll for the result via the + `GET /api/v2/deployments/gates/evaluation/{id}` endpoint. + + When the `configuration` attribute is provided, rules are evaluated inline from that configuration + and no pre-configured gate is required. When `configuration` is omitted, rules are resolved from the + gate pre-configured for the given service and environment through the Datadog UI, API, or Terraform. + operationId: TriggerDeploymentGatesEvaluation requestBody: content: application/json: + examples: + default: + summary: Evaluate a preconfigured gate + value: + data: + attributes: + env: staging + identifier: pre-deploy + primary_tag: region:us-east-1 + service: transaction-backend + version: v1.2.3 + type: deployment_gates_evaluation_request + with-configuration: + summary: Evaluate with inline rule configuration + value: + data: + attributes: + configuration: + dry_run: false + rules: + - dry_run: false + name: error rate monitors + options: + duration: 300 + query: service:transaction-backend env:production + type: monitor + - dry_run: false + name: apm faulty deployment + options: + duration: 900 + excluded_resources: + - GET /healthcheck + type: faulty_deployment_detection + env: production + service: transaction-backend + version: 1.2.3 + type: deployment_gates_evaluation_request schema: - $ref: '#/components/schemas/UpdateWorkflowRequest' + $ref: '#/components/schemas/DeploymentGatesEvaluationRequest' required: true responses: - '200': + '202': content: application/json: + examples: + default: + value: + data: + attributes: + evaluation_id: 00000000-0000-0000-0000-000000000001 + id: 00000000-0000-0000-0000-000000000001 + type: deployment_gates_evaluation_response schema: - $ref: '#/components/schemas/UpdateWorkflowResponse' - description: Successfully updated a workflow. + $ref: '#/components/schemas/DeploymentGatesEvaluationResponse' + description: Accepted '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden + $ref: '#/components/responses/ForbiddenResponse' '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found + $ref: '#/components/responses/HTTPCDGatesNotFoundResponse' '429': + $ref: '#/components/responses/TooManyRequestsResponse' + '500': content: application/json: schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Update an existing Workflow + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Trigger a deployment gate evaluation tags: - - Workflow Automation + - Deployment Gates x-permission: operator: OR permissions: - - workflows_write - /api/v2/workflows/{workflow_id}/instances: + - deployment_gates_evaluate + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/deployments/gates/evaluation/{id}: get: - description: >- - List all instances of a given workflow. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: ListWorkflowInstances + description: |- + Retrieves the result of a deployment gate evaluation by its evaluation ID. + If the evaluation is still in progress, `data.attributes.gate_status` will be `in_progress`; + continue polling until it returns `pass` or `fail`. + Polling every 10-20 seconds is recommended. + The endpoint may return a 404 if called too soon after triggering; retry after a few seconds. + operationId: GetDeploymentGatesEvaluationResult parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' + - description: The evaluation ID returned by the trigger endpoint. + in: path + name: id + required: true + schema: + format: uuid + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + dry_run: false + evaluation_id: 00000000-0000-0000-0000-000000000001 + evaluation_url: https://app.datadoghq.com/ci/deployment-gates/evaluations?index=cdgates&query=level%3Agate+%40evaluation_id%3A00000000-0000-0000-0000-000000000001 + gate_id: 00000000-0000-0000-0000-000000000001 + gate_status: pass + rules: [] + id: 00000000-0000-0000-0000-000000000001 + type: deployment_gates_evaluation_result_response schema: - $ref: '#/components/schemas/WorkflowListInstancesResponse' + $ref: '#/components/schemas/DeploymentGatesEvaluationResultResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/responses/HTTPCDGatesBadRequestResponse' + '401': + $ref: '#/components/responses/UnauthorizedResponse' '403': $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/HTTPCDGatesNotFoundResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' + '500': + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCIAppErrors' + description: Internal Server Error security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - workflows_read - summary: List workflow instances + summary: Get a deployment gate evaluation result tags: - - Workflow Automation + - Deployment Gates x-permission: operator: OR permissions: - - workflows_read + - deployment_gates_evaluate + x-unstable: |- + **Note**: This endpoint is in preview and may be subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + /api/v2/dora/deployment: post: - description: >- - Execute the given workflow. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' + description: |- + Use this API endpoint to provide deployment data. + + This is necessary for: + - Deployment Frequency + - Change Lead Time + - Change Failure Rate + - Failed Deployment Recovery Time + operationId: CreateDORADeployment requestBody: content: application/json: + examples: + default: + value: + data: + attributes: + custom_tags: + - language:java + - department:engineering + env: staging + finished_at: 1693491984000000000 + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + service: test-service + started_at: 1693491974000000000 + team: backend + version: v1.12.07 schema: - $ref: '#/components/schemas/WorkflowInstanceCreateRequest' + $ref: '#/components/schemas/DORADeploymentRequest' required: true responses: '200': content: application/json: + examples: + default: + value: + data: + id: 4242fcdd31586083 + type: dora_deployment schema: - $ref: '#/components/schemas/WorkflowInstanceCreateResponse' - description: Created + $ref: '#/components/schemas/DORADeploymentResponse' + description: OK + '202': + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586083 + type: dora_deployment + schema: + $ref: '#/components/schemas/DORADeploymentResponse' + description: OK - but delayed due to incident '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_run - summary: Execute a workflow + summary: Send a deployment event tags: - - Workflow Automation + - DORA Metrics x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - workflows_run - /api/v2/workflows/{workflow_id}/instances/{instance_id}: - get: - description: >- - Get a specific execution of a given workflow. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetWorkflowInstance + /api/v2/dora/deployment/{deployment_id}: + delete: + description: Use this API endpoint to delete a deployment event. + operationId: DeleteDORADeployment parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/InstanceId' + - description: The ID of the deployment event to delete. + in: path + name: deployment_id + required: true + schema: + type: string responses: - '200': + '202': + description: Accepted + '400': content: application/json: schema: - $ref: '#/components/schemas/WorklflowGetInstanceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' security: - apiKeyAuth: [] appKeyAuth: [] - - AuthZ: - - workflows_read - summary: Get a workflow instance + summary: Delete a deployment event tags: - - Workflow Automation + - DORA Metrics x-permission: operator: OR permissions: - - workflows_read - /api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel: - put: - description: >- - Cancels a specific execution of a given workflow. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CancelWorkflowInstance + - dora_metrics_write + /api/v2/dora/deployments: + patch: + description: Update a deployment's change failure status, identifying the deployment by its service, environment, and version instead of its ID. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. If multiple deployments match the given service, environment, and version, the most recently finished one is updated. + operationId: PatchDORADeploymentByVersion + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_failure: true + env: production + service: my-service + version: v1.2.3 + type: dora_deployment_patch_request + schema: + $ref: '#/components/schemas/DORADeploymentPatchByVersionRequest' + required: true + responses: + '202': + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a deployment event by version + tags: + - DORA Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_write + x-unstable: |- + **Note**: This endpoint is in preview and is subject to change. + If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/). + post: + description: Use this API endpoint to get a list of deployment events. + operationId: ListDORADeployments + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: '2025-01-01T00:00:00Z' + limit: 100 + query: service:(test-service OR api-service) env:production team:backend + sort: '-finished_at' + to: '2025-01-31T23:59:59Z' + type: dora_deployments_list_request + schema: + $ref: '#/components/schemas/DORAListDeploymentsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + env: production + finished_at: '2023-08-31T14:26:24Z' + service: test-service + started_at: '2023-08-31T14:26:14Z' + team: backend + id: abc-123 + type: dora_deployment + schema: + $ref: '#/components/schemas/DORADeploymentsListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a list of deployment events + tags: + - DORA Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + /api/v2/dora/deployments/{deployment_id}: + get: + description: Use this API endpoint to get a deployment event. + operationId: GetDORADeployment parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/InstanceId' + - description: The ID of the deployment event. + in: path + name: deployment_id + required: true + schema: + type: string responses: '200': content: application/json: + examples: + default: + value: + data: + attributes: + env: production + finished_at: '2023-08-31T14:26:24Z' + service: test-service + started_at: '2023-08-31T14:26:14Z' + team: backend + id: abc-123 + type: dora_deployment schema: - $ref: '#/components/schemas/WorklflowCancelInstanceResponse' + $ref: '#/components/schemas/DORADeploymentFetchResponse' description: OK '400': - $ref: '#/components/responses/BadRequestResponse' + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' + $ref: '#/components/responses/NotAuthorizedResponse' '429': $ref: '#/components/responses/TooManyRequestsResponse' - summary: Cancel a workflow instance + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a deployment event tags: - - Workflow Automation + - DORA Metrics + x-codegen-request-body-name: body x-permission: operator: OR permissions: - - workflows_run -components: - schemas: - CIAppCreatePipelineEventRequest: - description: Request object. - properties: - data: - $ref: >- - #/components/schemas/CIAppCreatePipelineEventRequestDataSingleOrArray + - dora_metrics_read + patch: + description: Update a deployment's change failure status. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. + operationId: PatchDORADeployment + parameters: + - description: The ID of the deployment event. + in: path + name: deployment_id + required: true + schema: + type: string + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + change_failure: true + remediation: + id: eG42zNIkVjM + type: rollback + id: z_RwVLi7v4Y + type: dora_deployment_patch_request + schema: + $ref: '#/components/schemas/DORADeploymentPatchRequest' + required: true + responses: + '202': + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Patch a deployment event + tags: + - DORA Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_write + /api/v2/dora/failure: + post: + description: |- + Use this API endpoint to provide incident data for DORA Metrics. + Note that change failure rate and failed deployment recovery time are computed from change failures detected on deployments, not from incident events sent through this endpoint. + Tracking incidents gives a side-by-side view of how failed deployments translate into real-world incidents, including their severity and frequency. + operationId: CreateDORAFailure + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: + - language:java + - department:engineering + env: staging + finished_at: 1693491984000000000 + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + name: Webserver is down failing all requests. + services: + - test-service + severity: High + started_at: 1693491974000000000 + team: backend + version: v1.12.07 + schema: + $ref: '#/components/schemas/DORAFailureRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: '#/components/schemas/DORAFailureResponse' + description: OK + '202': + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: '#/components/schemas/DORAFailureResponse' + description: OK - but delayed due to incident + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Send an incident event + tags: + - DORA Metrics + x-codegen-request-body-name: body + /api/v2/dora/failure/{failure_id}: + delete: + description: Use this API endpoint to delete an incident event. + operationId: DeleteDORAFailure + parameters: + - description: The ID of the incident event to delete. + in: path + name: failure_id + required: true + schema: + type: string + responses: + '202': + description: Accepted + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an incident event + tags: + - DORA Metrics + x-permission: + operator: OR + permissions: + - dora_metrics_write + /api/v2/dora/failures: + post: + description: Use this API endpoint to get a list of incident events. + operationId: ListDORAFailures + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + from: '2025-01-01T00:00:00Z' + limit: 100 + query: severity:(SEV-1 OR SEV-2) env:production team:backend + sort: '-started_at' + to: '2025-01-31T23:59:59Z' + type: dora_failures_list_request + schema: + $ref: '#/components/schemas/DORAListFailuresRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + env: production + name: Database outage + services: + - test-service + severity: SEV-1 + started_at: '2023-08-31T14:29:34Z' + team: backend + id: abc-123 + type: dora_failure + schema: + $ref: '#/components/schemas/DORAFailuresListResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a list of incident events + tags: + - DORA Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + /api/v2/dora/failures/{failure_id}: + get: + description: Use this API endpoint to get an incident event. + operationId: GetDORAFailure + parameters: + - description: The ID of the incident event. + in: path + name: failure_id + required: true + schema: + type: string + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + env: production + name: Database outage + services: + - test-service + severity: SEV-1 + started_at: '2023-08-31T14:29:34Z' + team: backend + id: abc-123 + type: dora_failure + schema: + $ref: '#/components/schemas/DORAFailureFetchResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get an incident event + tags: + - DORA Metrics + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - dora_metrics_read + /api/v2/dora/incident: + post: + deprecated: true + description: |- + **Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` instead. + + Use this API endpoint to provide incident data. + Tracking incidents gives a side-by-side view of how failed deployments translate into real-world incidents. + operationId: CreateDORAIncident + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + custom_tags: + - language:java + - department:engineering + env: staging + finished_at: 1693491984000000000 + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + name: Webserver is down failing all requests. + services: + - test-service + severity: High + started_at: 1693491974000000000 + team: backend + version: v1.12.07 + schema: + $ref: '#/components/schemas/DORAFailureRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: '#/components/schemas/DORAFailureResponse' + description: OK + '202': + content: + application/json: + examples: + default: + value: + data: + id: 4242fcdd31586085 + type: dora_failure + schema: + $ref: '#/components/schemas/DORAFailureResponse' + description: OK - but delayed due to incident + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad Request + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + summary: Send an incident event (legacy) + tags: + - DORA Metrics + x-codegen-request-body-name: body + /api/v2/feature-flags: + get: + description: |- + Returns a list of feature flags for the organization. + Supports filtering by key and archived status. + operationId: ListFeatureFlags + parameters: + - description: Filter feature flags by key (partial matching). + example: flag-search-term + in: query + name: key + schema: + type: string + - description: Filter by archived status. + example: false + in: query + name: is_archived + schema: + type: boolean + - description: Maximum number of results to return. + example: 10 + in: query + name: limit + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Number of results to skip. + example: 0 + in: query + name: offset + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/ListFeatureFlagsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List feature flags + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_read + - feature_flag_environment_config_read + post: + description: Creates a new feature flag with variants. + operationId: CreateFeatureFlag + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + default_variant_key: variant-a + description: A sample feature flag + enabled: true + key: feature-flag-abc123 + name: Feature Flag ABC 123 + variants: + - description: Variant A + key: variant-a + - description: Variant B + key: variant-b + type: feature-flags + schema: + $ref: '#/components/schemas/CreateFeatureFlagRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: '2024-01-01T00:00:00+00:00' + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000002 + key: variant-a + name: Variant A + value: 'true' + - id: 00000000-0000-0000-0000-000000000003 + key: variant-b + name: Variant B + value: 'false' + id: 00000000-0000-0000-0000-000000000001 + type: feature-flags + schema: + $ref: '#/components/schemas/FeatureFlagResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/environments: + get: + description: |- + Returns a list of environments for the organization. + Supports filtering by name, key, and DD_ENV. + operationId: ListFeatureFlagsEnvironments + parameters: + - description: Filter environments by name (partial matching). + example: env-search-term + in: query + name: name + schema: + type: string + - description: Filter environments by key (partial matching). + example: env-partial + in: query + name: key + schema: + type: string + - description: Filter environments by queries that contain the provided DD_ENV value. + example: staging + in: query + name: dd_env + schema: + type: string + - description: Maximum number of results to return. + example: 10 + in: query + name: limit + schema: + default: 100 + format: int64 + maximum: 1000 + minimum: 1 + type: integer + - description: Number of results to skip. + example: 0 + in: query + name: offset + schema: + default: 0 + format: int64 + minimum: 0 + type: integer + responses: + '200': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/ListEnvironmentsResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: List environments + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_read + post: + description: Creates a new environment for organizing feature flags. + operationId: CreateFeatureFlagsEnvironment + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: staging-environment + queries: + - staging + - canary + type: environments + schema: + $ref: '#/components/schemas/CreateEnvironmentRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + is_production: false + key: staging-environment + name: staging-environment + queries: + - staging + require_feature_flag_approval: false + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000017 + type: environments + schema: + $ref: '#/components/schemas/EnvironmentResponse' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_write + /api/v2/feature-flags/environments/{environment_id}: + delete: + description: Deletes an environment. This operation cannot be undone. + operationId: DeleteFeatureFlagsEnvironment + parameters: + - $ref: '#/components/parameters/environment_id' + responses: + '204': + description: No Content + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_write + get: + description: Returns the details of a specific environment. + operationId: GetFeatureFlagsEnvironment + parameters: + - $ref: '#/components/parameters/environment_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + is_production: false + key: staging-environment + name: staging-environment + queries: + - staging + require_feature_flag_approval: false + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000018 + type: environments + schema: + $ref: '#/components/schemas/EnvironmentResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_read + put: + description: |- + Updates an existing environment's metadata such as + name and description. + operationId: UpdateFeatureFlagsEnvironment + parameters: + - $ref: '#/components/parameters/environment_id' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: production-environment + queries: + - production + - prod-us + type: environments + schema: + $ref: '#/components/schemas/UpdateEnvironmentRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + is_production: false + key: production-environment + name: production-environment + queries: + - production + require_feature_flag_approval: false + updated_at: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000019 + type: environments + schema: + $ref: '#/components/schemas/EnvironmentResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_environment_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/pause: + post: + description: Pauses a progressive rollout while preserving rollout state. + operationId: PauseExposureSchedule + parameters: + - $ref: '#/components/parameters/exposure_schedule_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + absolute_start_time: '2025-06-13T12:00:00Z' + allocation_id: 550e8400-e29b-41d4-a716-446655440020 + control_variant_id: 550e8400-e29b-41d4-a716-446655440012 + created_at: '2024-01-01T12:00:00Z' + guardrail_triggered_action: null + guardrail_triggers: [] + id: 550e8400-e29b-41d4-a716-446655440010 + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: UNIFORM_INTERVALS + rollout_steps: [] + updated_at: '2024-01-01T12:00:00Z' + schema: + $ref: '#/components/schemas/AllocationExposureScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Pause a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/resume: + post: + description: Resumes progression for a previously paused progressive rollout. + operationId: ResumeExposureSchedule + parameters: + - $ref: '#/components/parameters/exposure_schedule_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + absolute_start_time: '2025-06-13T12:00:00Z' + allocation_id: 550e8400-e29b-41d4-a716-446655440020 + control_variant_id: 550e8400-e29b-41d4-a716-446655440012 + created_at: '2024-01-01T12:00:00Z' + guardrail_triggered_action: null + guardrail_triggers: [] + id: 550e8400-e29b-41d4-a716-446655440010 + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: UNIFORM_INTERVALS + rollout_steps: [] + updated_at: '2024-01-01T12:00:00Z' + schema: + $ref: '#/components/schemas/AllocationExposureScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Resume a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/start: + post: + description: Starts a progressive rollout and begins progression. + operationId: StartExposureSchedule + parameters: + - $ref: '#/components/parameters/exposure_schedule_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + absolute_start_time: '2025-06-13T12:00:00Z' + allocation_id: 550e8400-e29b-41d4-a716-446655440020 + control_variant_id: 550e8400-e29b-41d4-a716-446655440012 + created_at: '2024-01-01T12:00:00Z' + guardrail_triggered_action: null + guardrail_triggers: [] + id: 550e8400-e29b-41d4-a716-446655440010 + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: UNIFORM_INTERVALS + rollout_steps: [] + updated_at: '2024-01-01T12:00:00Z' + schema: + $ref: '#/components/schemas/AllocationExposureScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Start a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/exposure-schedules/{exposure_schedule_id}/stop: + post: + description: Stops a progressive rollout and marks it as aborted. + operationId: StopExposureSchedule + parameters: + - $ref: '#/components/parameters/exposure_schedule_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + absolute_start_time: '2025-06-13T12:00:00Z' + allocation_id: 550e8400-e29b-41d4-a716-446655440020 + control_variant_id: 550e8400-e29b-41d4-a716-446655440012 + created_at: '2024-01-01T12:00:00Z' + guardrail_triggered_action: null + guardrail_triggers: [] + id: 550e8400-e29b-41d4-a716-446655440010 + rollout_options: + autostart: false + selection_interval_ms: 3600000 + strategy: UNIFORM_INTERVALS + rollout_steps: [] + updated_at: '2024-01-01T12:00:00Z' + schema: + $ref: '#/components/schemas/AllocationExposureScheduleResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Stop a progressive rollout + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/{feature_flag_id}: + get: + description: |- + Returns the details of a specific feature flag + including variants and environment status. + operationId: GetFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: '2024-01-01T00:00:00+00:00' + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000005 + key: variant-a + name: Variant A + value: 'true' + - id: 00000000-0000-0000-0000-000000000006 + key: variant-b + name: Variant B + value: 'false' + id: 00000000-0000-0000-0000-000000000004 + type: feature-flags + schema: + $ref: '#/components/schemas/FeatureFlagResponse' + description: OK + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Get a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_read + - feature_flag_environment_config_read + put: + description: |- + Updates an existing feature flag's metadata such as + name and description. Does not modify targeting rules or allocations. + operationId: UpdateFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: Updated description for the feature flag + enabled: true + name: Updated Feature Flag XYZ789 + type: feature-flags + schema: + $ref: '#/components/schemas/UpdateFeatureFlagRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: '2024-01-01T00:00:00+00:00' + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000008 + key: variant-a + name: Variant A + value: 'true' + - id: 00000000-0000-0000-0000-000000000009 + key: variant-b + name: Variant B + value: 'false' + id: 00000000-0000-0000-0000-000000000007 + type: feature-flags + schema: + $ref: '#/components/schemas/FeatureFlagResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/archive: + post: + description: |- + Archives a feature flag. Archived flags are + hidden from the main list but remain accessible and can be unarchived. + operationId: ArchiveFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: A sample feature flag + key: feature-flag-abc123 + name: Feature Flag ABC 123 + updated_at: '2024-01-01T00:00:00+00:00' + value_type: BOOLEAN + variants: + - id: 00000000-0000-0000-0000-000000000011 + key: variant-a + name: Variant A + value: 'true' + - id: 00000000-0000-0000-0000-000000000012 + key: variant-b + name: Variant B + value: 'false' + id: 00000000-0000-0000-0000-000000000010 + type: feature-flags + schema: + $ref: '#/components/schemas/FeatureFlagResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Archive a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/allocations: + post: + description: Creates a new targeting rule (allocation) for a specific feature flag in a specific environment. + operationId: CreateAllocationsForFeatureFlagInEnvironment + parameters: + - $ref: '#/components/parameters/feature_flag_id' + - $ref: '#/components/parameters/environment_id' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: prod-rollout + name: Production Rollout + type: FEATURE_GATE + variant_weights: + - value: 50 + variant_id: 550e8400-e29b-41d4-a716-446655440001 + - value: 50 + variant_id: 550e8400-e29b-41d4-a716-446655440002 + type: allocations + schema: + $ref: '#/components/schemas/CreateAllocationsRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T12:00:00Z' + environment_ids: + - 550e8400-e29b-41d4-a716-446655440001 + guardrail_metrics: [] + id: 550e8400-e29b-41d4-a716-446655440020 + key: prod-rollout + name: Production Rollout + order_position: 0 + targeting_rules: [] + type: FEATURE_GATE + updated_at: '2024-01-01T12:00:00Z' + variant_weights: + - value: 50 + variant_id: 550e8400-e29b-41d4-a716-446655440001 + id: 550e8400-e29b-41d4-a716-446655440020 + type: allocations + schema: + $ref: '#/components/schemas/AllocationResponse' + description: Created + '202': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + environment_ids: + - abc-123 + guardrail_metrics: [] + id: 00000000-0000-0000-0000-000000000016 + key: prod-rollout + name: Production Rollout + order_position: 0 + targeting_rules: [] + type: FEATURE_GATE + updated_at: '2024-01-01T00:00:00+00:00' + variant_weights: + - value: 50 + variant_id: abc-123 + id: 00000000-0000-0000-0000-000000000015 + type: allocations + schema: + $ref: '#/components/schemas/AllocationResponse' + description: Accepted - Approval required for this change + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Create targeting rules for a flag env + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + put: + description: |- + Updates targeting rules (allocations) for a specific feature flag in a specific environment. + This operation replaces the existing allocation set with the request payload. + operationId: UpdateAllocationsForFeatureFlagInEnvironment + parameters: + - $ref: '#/components/parameters/feature_flag_id' + - $ref: '#/components/parameters/environment_id' + requestBody: + content: + application/json: + examples: + default: + value: + data: + - attributes: + key: prod-rollout + name: Production Rollout + type: FEATURE_GATE + variant_weights: + - value: 50 + variant_id: 550e8400-e29b-41d4-a716-446655440001 + - value: 50 + variant_id: 550e8400-e29b-41d4-a716-446655440002 + type: allocations + schema: + $ref: '#/components/schemas/OverwriteAllocationsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + created_at: '2024-01-01T12:00:00Z' + environment_ids: + - 550e8400-e29b-41d4-a716-446655440001 + guardrail_metrics: [] + id: 550e8400-e29b-41d4-a716-446655440020 + key: prod-rollout + name: Production Rollout + order_position: 0 + targeting_rules: [] + type: FEATURE_GATE + updated_at: '2024-01-01T12:00:00Z' + variant_weights: + - value: 50 + variant_id: 550e8400-e29b-41d4-a716-446655440001 + id: 550e8400-e29b-41d4-a716-446655440020 + type: allocations + schema: + $ref: '#/components/schemas/ListAllocationsResponse' + description: OK + '202': + content: + application/json: + examples: + default: + value: + data: [] + schema: + $ref: '#/components/schemas/ListAllocationsResponse' + description: Accepted - Approval required for this change + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update targeting rules for a flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/disable: + post: + description: Disable a feature flag in a specific environment. + operationId: DisableFeatureFlagEnvironment + parameters: + - $ref: '#/components/parameters/feature_flag_id' + - $ref: '#/components/parameters/environment_id' + responses: + '200': + description: OK + '202': + description: Accepted - Approval required for this change + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Disable a feature flag in an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/environments/{environment_id}/enable: + post: + description: Enable a feature flag in a specific environment. + operationId: EnableFeatureFlagEnvironment + parameters: + - $ref: '#/components/parameters/feature_flag_id' + - $ref: '#/components/parameters/environment_id' + responses: + '200': + description: OK + '202': + description: Accepted - Approval required for this change + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Enable a feature flag in an environment + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/unarchive: + post: + description: |- + Unarchives a previously archived feature flag, + making it visible in the main list again. + operationId: UnarchiveFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + description: This is an example feature flag + distribution_channel: ALL + key: feature-flag-abc123 + name: Feature Flag ABC123 + require_approval: false + tags: [] + updated_at: '2024-01-01T00:00:00+00:00' + value_type: boolean + variants: + - id: 00000000-0000-0000-0000-000000000014 + key: variant-abc123 + name: Variant ABC123 + value: 'true' + id: 00000000-0000-0000-0000-000000000013 + type: feature-flags + schema: + $ref: '#/components/schemas/FeatureFlagResponse' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Unarchive a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + - feature_flag_environment_config_read + /api/v2/feature-flags/{feature_flag_id}/variants: + post: + description: |- + Adds a single new variant to an existing feature flag. This endpoint is + additive-only: it never modifies existing variants. A request whose `key` + already exists on the flag is rejected with `409 Conflict`; a `value` + whose type does not match the flag's `value_type` is rejected with `400`. + The server generates the variant UUID and returns it in the response body; + callers (for example, the flag-migration tool) need this UUID to reference + the new variant in subsequent allocation syncs. + operationId: CreateVariantForFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + key: dark + name: Dark Theme + value: dark + type: variants + schema: + $ref: '#/components/schemas/CreateVariant' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: dark + name: Dark Theme + updated_at: '2024-01-01T00:00:00+00:00' + value: dark + id: 550e8400-e29b-41d4-a716-446655440002 + type: variants + schema: + $ref: '#/components/schemas/Variant' + description: Created + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict - A variant with this key already exists on the flag. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Add a variant to a feature flag + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/feature-flags/{feature_flag_id}/variants/{variant_id}: + delete: + description: |- + Deletes a variant from a feature flag. + + When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of deleting the variant immediately. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`. + operationId: DeleteVariantFromFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + - $ref: '#/components/parameters/variant_id' + responses: + '204': + description: No Content + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict - A pending suggestion already exists for this property. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Delete a variant + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + put: + description: |- + Updates the name and value of an existing variant on a feature flag. + + When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of applying the change immediately. Use the returned suggestion `id` to approve or reject the change. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`. + operationId: UpdateVariantForFeatureFlag + parameters: + - $ref: '#/components/parameters/feature_flag_id' + - $ref: '#/components/parameters/variant_id' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Dark Theme Updated + value: dark_v2 + id: 550e8400-e29b-41d4-a716-446655440002 + type: variants + schema: + $ref: '#/components/schemas/UpdateVariantRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + created_at: '2024-01-01T00:00:00+00:00' + key: dark + name: Dark Theme Updated + updated_at: '2024-06-01T00:00:00+00:00' + value: dark_v2 + id: 550e8400-e29b-41d4-a716-446655440002 + type: variants + schema: + $ref: '#/components/schemas/Variant' + description: OK + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Bad Request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found + '409': + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict - A pending suggestion already exists for this property. + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + summary: Update a variant + tags: + - Feature Flags + x-permission: + operator: AND + permissions: + - feature_flag_config_write + /api/v2/test/flaky-test-management/tests: + patch: + description: Update the state of multiple flaky tests in Flaky Test Management. + operationId: UpdateFlakyTests + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + tests: + - id: 4eb1887a8adb1847 + new_state: active + type: update_flaky_test_state_request + schema: + $ref: '#/components/schemas/UpdateFlakyTestsRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + has_errors: false + results: + - id: 4eb1887a8adb1847 + success: true + id: abc-123 + type: update_flaky_test_state_response + schema: + $ref: '#/components/schemas/UpdateFlakyTestsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_write + summary: Update flaky test states + tags: + - Test Optimization + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - test_optimization_write + post: + description: |- + List endpoint returning flaky tests from Flaky Test Management. Results are paginated. + + The response includes comprehensive test information including: + - Test identification and metadata (module, suite, name) + - Flaky state and categorization + - First and last flake occurrences (timestamp, branch, commit SHA) + - Test execution statistics from the last 7 days (failure rate) + - Pipeline impact metrics (failed pipelines count, total lost time) + - Complete status change history (optional, ordered from most recent to oldest) + + Set `include_history` to `true` in the request to receive the status change history for each test. + History is disabled by default for better performance. + + Results support filtering by various facets including service, environment, repository, branch, and test state. + operationId: SearchFlakyTests + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + filter: + query: flaky_test_state:active @git.repository.id_v2:"github.com/datadog/test-service" + page: + cursor: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + limit: 25 + sort: failure_rate + type: search_flaky_tests_request + schema: + $ref: '#/components/schemas/FlakyTestsSearchRequest' + required: false + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + envs: + - prod + flaky_state: active + module: TestModule + name: TestName + services: + - test-service + suite: TestSuite + id: 4eb1887a8adb1847 + type: flaky_test + meta: + pagination: + next_page: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + schema: + $ref: '#/components/schemas/FlakyTestsSearchResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/NotAuthorizedResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - test_optimization_read + summary: Search flaky tests + tags: + - Test Optimization + x-codegen-request-body-name: body + x-pagination: + cursorParam: body.data.attributes.page.cursor + cursorPath: meta.pagination.next_page + limitParam: body.data.attributes.page.limit + resultsPath: data + x-permission: + operator: OR + permissions: + - test_optimization_read + /api/v2/workflows: + get: + description: List all workflows in your organization. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: ListWorkflows + parameters: + - description: The maximum number of workflows to return per page. + example: 50 + in: query + name: limit + required: false + schema: + default: 50 + format: int64 + type: integer + - description: The page number to return, starting from 0. + example: 0 + in: query + name: page + required: false + schema: + default: 0 + format: int64 + type: integer + - description: The sort order for the returned workflows. Provide a comma-separated list of fields, each optionally prefixed with `-` for descending order. Supported fields are `name`, `createdAt`, `updatedAt`, `creatorName`, `ownerName`, and `lastExecutedAt`. + example: '-updatedAt' + in: query + name: sort + required: false + schema: + type: string + - description: A search query used to filter the returned workflows. The query performs a case-insensitive substring match against each workflow's name, creator name, and handle. If the query contains a colon (for example, `team:infra`), the query is treated as a `key:value` tag filter. + example: deploy + in: query + name: filter[query] + required: false + schema: + type: string + - description: Filters the returned workflows by one or more trigger types, such as `monitor`, `schedule`, or `githubWebhook`. To specify the multiple types, repeat this parameter. + example: + - monitor + explode: true + in: query + name: filter[triggerIds] + required: false + schema: + items: + type: string + type: array + - description: Whether to include unpublished workflows in the response. + in: query + name: filter[includeUnpublished] + required: false + schema: + default: false + type: boolean + - description: Whether to include the full spec of each workflow in the response. When `false` (the default), each workflow's `spec` is returned as `null`. + in: query + name: filter[includeSpecs] + required: false + schema: + default: false + type: boolean + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - attributes: + createdAt: '2024-01-01T00:00:00+00:00' + description: A sample workflow. + name: Example Workflow + published: true + spec: {} + tags: + - team:infra + updatedAt: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000002 + relationships: + creator: + data: + id: 00000000-0000-0000-0000-000000000009 + type: users + owner: + data: + id: 00000000-0000-0000-0000-000000000009 + type: users + type: workflows + meta: + page: + totalCount: 1 + totalFilteredCount: 1 + schema: + $ref: '#/components/schemas/ListWorkflowsResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: List workflows + tags: + - Workflow Automation + x-pagination: + limitParam: limit + pageParam: page + pageStart: 0 + resultsPath: data + x-permission: + operator: OR + permissions: + - workflows_read + post: + description: Create a new workflow, returning the workflow ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CreateWorkflow + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A sample workflow. + name: Example Workflow + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + 'y': -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: Example annotation. + connectionEnvs: + - connections: + - connectionId: e1e64943-c7c5-4487-aece-25aaec7d3aad + label: INTEGRATION_DATADOG + env: default + handle: my-handle + inputSchema: + parameters: + - defaultValue: default + name: input + type: STRING + outputSchema: + parameters: + - name: output + type: ARRAY_OBJECT + value: '{{ Steps.Step1 }}' + steps: + - actionId: com.datadoghq.dd.monitor.listMonitors + connectionLabel: INTEGRATION_DATADOG + name: Step1 + outboundEdges: + - branchName: main + nextStepName: Step2 + parameters: + - name: tags + value: service:monitoring + - actionId: com.datadoghq.core.noop + name: Step2 + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: 3600s + startStepNames: + - Step1 + - githubWebhookTrigger: {} + startStepNames: + - Step1 + tags: + - team:infra + - service:monitoring + type: workflows + schema: + $ref: '#/components/schemas/CreateWorkflowRequest' + required: true + responses: + '201': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Example Workflow + spec: {} + id: 00000000-0000-0000-0000-000000000001 + type: workflows + schema: + $ref: '#/components/schemas/CreateWorkflowResponse' + description: Successfully created a workflow. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too many requests + summary: Create a Workflow + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_write + /api/v2/workflows/{workflow_id}: + delete: + description: Delete a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: DeleteWorkflow + parameters: + - $ref: '#/components/parameters/WorkflowId' + responses: + '204': + description: Successfully deleted a workflow. + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too many requests + summary: Delete an existing Workflow + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_write + get: + description: Get a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: GetWorkflow + parameters: + - $ref: '#/components/parameters/WorkflowId' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + createdAt: '2024-01-01T00:00:00+00:00' + description: A sample workflow. + name: Example Workflow + published: true + spec: {} + tags: + - team:infra + updatedAt: '2024-01-01T00:00:00+00:00' + id: 00000000-0000-0000-0000-000000000002 + type: workflows + schema: + $ref: '#/components/schemas/GetWorkflowResponse' + description: Successfully got a workflow. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too many requests + summary: Get an existing Workflow + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_read + patch: + description: Update a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: UpdateWorkflow + parameters: + - $ref: '#/components/parameters/WorkflowId' + requestBody: + content: + application/json: + examples: + default: + value: + data: + attributes: + description: A sample workflow. + name: Example Workflow + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + 'y': -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: Example annotation. + connectionEnvs: + - connections: + - connectionId: e1e64943-c7c5-4487-aece-25aaec7d3aad + label: INTEGRATION_DATADOG + env: default + handle: my-handle + inputSchema: + parameters: + - defaultValue: default + name: input + type: STRING + outputSchema: + parameters: + - name: output + type: ARRAY_OBJECT + value: '{{ Steps.Step1 }}' + steps: + - actionId: com.datadoghq.dd.monitor.listMonitors + connectionLabel: INTEGRATION_DATADOG + name: Step1 + outboundEdges: + - branchName: main + nextStepName: Step2 + parameters: + - name: tags + value: service:monitoring + - actionId: com.datadoghq.core.noop + name: Step2 + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: 3600s + startStepNames: + - Step1 + - githubWebhookTrigger: {} + startStepNames: + - Step1 + tags: + - team:infra + - service:monitoring + id: 22222222-2222-2222-2222-222222222222 + type: workflows + schema: + $ref: '#/components/schemas/UpdateWorkflowRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + name: Example Workflow + id: 00000000-0000-0000-0000-000000000003 + type: workflows + schema: + $ref: '#/components/schemas/UpdateWorkflowResponse' + description: Successfully updated a workflow. + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Bad request + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Forbidden + '404': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Not found + '429': + content: + application/json: + schema: + $ref: '#/components/schemas/JSONAPIErrorResponse' + description: Too many requests + summary: Update an existing Workflow + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_write + /api/v2/workflows/{workflow_id}/instances: + get: + description: List all instances of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: ListWorkflowInstances + parameters: + - $ref: '#/components/parameters/WorkflowId' + - $ref: '#/components/parameters/PageSize' + - $ref: '#/components/parameters/PageNumber' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + - id: 00000000-0000-0000-0000-000000000004 + meta: + page: + totalCount: 1 + schema: + $ref: '#/components/schemas/WorkflowListInstancesResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - workflows_read + summary: List workflow instances + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_read + post: + description: Execute the given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CreateWorkflowInstance + parameters: + - $ref: '#/components/parameters/WorkflowId' + requestBody: + content: + application/json: + examples: + default: + value: + meta: + payload: + input: value + schema: + $ref: '#/components/schemas/WorkflowInstanceCreateRequest' + required: true + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000005 + schema: + $ref: '#/components/schemas/WorkflowInstanceCreateResponse' + description: Created + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - workflows_run + summary: Execute a workflow + tags: + - Workflow Automation + x-codegen-request-body-name: body + x-permission: + operator: OR + permissions: + - workflows_run + /api/v2/workflows/{workflow_id}/instances/{instance_id}: + get: + description: Get a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: GetWorkflowInstance + parameters: + - $ref: '#/components/parameters/WorkflowId' + - $ref: '#/components/parameters/InstanceId' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + attributes: + id: 00000000-0000-0000-0000-000000000006 + schema: + $ref: '#/components/schemas/WorklflowGetInstanceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + security: + - apiKeyAuth: [] + appKeyAuth: [] + - AuthZ: + - workflows_read + summary: Get a workflow instance + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_read + /api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel: + put: + description: Cancels a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + operationId: CancelWorkflowInstance + parameters: + - $ref: '#/components/parameters/WorkflowId' + - $ref: '#/components/parameters/InstanceId' + responses: + '200': + content: + application/json: + examples: + default: + value: + data: + id: 00000000-0000-0000-0000-000000000007 + schema: + $ref: '#/components/schemas/WorklflowCancelInstanceResponse' + description: OK + '400': + $ref: '#/components/responses/BadRequestResponse' + '403': + $ref: '#/components/responses/ForbiddenResponse' + '404': + $ref: '#/components/responses/NotFoundResponse' + '429': + $ref: '#/components/responses/TooManyRequestsResponse' + summary: Cancel a workflow instance + tags: + - Workflow Automation + x-permission: + operator: OR + permissions: + - workflows_run +components: + schemas: + CIAppGitHubAccountsResponse: + description: Response object containing a list of GitHub accounts and their CI Visibility opt-in status. + properties: + data: + items: + $ref: '#/components/schemas/CIAppGitHubAccountData' + type: array + required: + - data + type: object + CIAppGitHubAccountUpdateRequest: + description: Request object for updating a GitHub account's CI Visibility opt-in status. + properties: + data: + $ref: '#/components/schemas/CIAppGitHubAccountUpdateRequestData' + required: + - data + type: object + CIAppGitHubAccountResponse: + description: Response object containing a single GitHub account's CI Visibility opt-in status. + properties: + data: + $ref: '#/components/schemas/CIAppGitHubAccountData' + required: + - data + type: object + CIAppCreatePipelineEventRequest: + description: Request object. + properties: + data: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataSingleOrArray' + type: object + HTTPCIAppErrors: + description: Errors occurred. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/HTTPCIAppError' + type: array + type: object + CIAppPipelinesAggregateRequest: + description: The object sent with the request to retrieve aggregation buckets of pipeline events from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: '#/components/schemas/CIAppCompute' + type: array + filter: + $ref: '#/components/schemas/CIAppPipelinesQueryFilter' + group_by: + description: The rules for the group-by. + items: + $ref: '#/components/schemas/CIAppPipelinesGroupBy' + type: array + options: + $ref: '#/components/schemas/CIAppQueryOptions' + type: object + CIAppPipelinesAnalyticsAggregateResponse: + description: The response object for the pipeline events aggregate API endpoint. + properties: + data: + $ref: '#/components/schemas/CIAppPipelinesAggregationBucketsResponse' + links: + $ref: '#/components/schemas/CIAppResponseLinks' + meta: + $ref: '#/components/schemas/CIAppResponseMetadata' + type: object + CIAppSort: + description: Sort parameters when querying events. + enum: + - timestamp + - '-timestamp' + type: string + x-enum-varnames: + - TIMESTAMP_ASCENDING + - TIMESTAMP_DESCENDING + CIAppPipelineEventsResponse: + description: Response object with all pipeline events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: '#/components/schemas/CIAppPipelineEvent' + type: array + links: + $ref: '#/components/schemas/CIAppResponseLinks' + meta: + $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' + type: object + CIAppPipelineEventsRequest: + description: The request for a pipelines search. + properties: + filter: + $ref: '#/components/schemas/CIAppPipelinesQueryFilter' + options: + $ref: '#/components/schemas/CIAppQueryOptions' + page: + $ref: '#/components/schemas/CIAppQueryPageOptions' + sort: + $ref: '#/components/schemas/CIAppSort' + type: object + TestOptimizationFlakyTestsManagementPoliciesUpdateRequest: + description: Request object for updating Flaky Tests Management policies. + properties: + data: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData' + required: + - data + type: object + TestOptimizationFlakyTestsManagementPoliciesResponse: + description: Response object containing Flaky Tests Management policies for a repository. + properties: + data: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesData' + type: object + TestOptimizationFlakyTestsManagementPoliciesGetRequest: + description: Request object for getting Flaky Tests Management policies. + properties: + data: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesGetRequestData' + required: + - data + type: object + TestOptimizationDeleteServiceSettingsRequest: + description: Request object for deleting Test Optimization service settings. + properties: + data: + $ref: '#/components/schemas/TestOptimizationDeleteServiceSettingsRequestData' + required: + - data + type: object + TestOptimizationUpdateServiceSettingsRequest: + description: Request object for updating Test Optimization service settings. + properties: + data: + $ref: '#/components/schemas/TestOptimizationUpdateServiceSettingsRequestData' + required: + - data + type: object + TestOptimizationServiceSettingsResponse: + description: Response object containing Test Optimization service settings. + properties: + data: + $ref: '#/components/schemas/TestOptimizationServiceSettingsData' + type: object + TestOptimizationGetServiceSettingsRequest: + description: Request object for getting Test Optimization service settings. + properties: + data: + $ref: '#/components/schemas/TestOptimizationGetServiceSettingsRequestData' + required: + - data + type: object + CIAppTestsAggregateRequest: + description: The object sent with the request to retrieve aggregation buckets of test events from your organization. + properties: + compute: + description: The list of metrics or timeseries to compute for the retrieved buckets. + items: + $ref: '#/components/schemas/CIAppCompute' + type: array + filter: + $ref: '#/components/schemas/CIAppTestsQueryFilter' + group_by: + description: The rules for the group-by. + items: + $ref: '#/components/schemas/CIAppTestsGroupBy' + type: array + options: + $ref: '#/components/schemas/CIAppQueryOptions' + type: object + CIAppTestsAnalyticsAggregateResponse: + description: The response object for the test events aggregate API endpoint. + properties: + data: + $ref: '#/components/schemas/CIAppTestsAggregationBucketsResponse' + links: + $ref: '#/components/schemas/CIAppResponseLinks' + meta: + $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' + type: object + CIAppTestEventsResponse: + description: Response object with all test events matching the request and pagination information. + properties: + data: + description: Array of events matching the request. + items: + $ref: '#/components/schemas/CIAppTestEvent' + type: array + links: + $ref: '#/components/schemas/CIAppResponseLinks' + meta: + $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' + type: object + CIAppTestEventsRequest: + description: The request for a tests search. + properties: + filter: + $ref: '#/components/schemas/CIAppTestsQueryFilter' + options: + $ref: '#/components/schemas/CIAppQueryOptions' + page: + $ref: '#/components/schemas/CIAppQueryPageOptions' + sort: + $ref: '#/components/schemas/CIAppSort' + type: object + BranchCoverageSummaryRequest: + description: Request object for getting code coverage summary for a branch. + properties: + data: + $ref: '#/components/schemas/BranchCoverageSummaryRequestData' + required: + - data + type: object + CoverageSummaryResponse: + description: Response object containing code coverage summary. + properties: + data: + $ref: '#/components/schemas/CoverageSummaryData' + type: object + APIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + example: + - Bad Request + items: + description: A list of items. + example: Bad Request + type: string + type: array + required: + - errors + type: object + CommitCoverageSummaryRequest: + description: Request object for getting code coverage summary for a commit. + properties: + data: + $ref: '#/components/schemas/CommitCoverageSummaryRequestData' + required: + - data + type: object + DeploymentGatesListResponse: + description: Response containing a paginated list of deployment gates. + properties: + data: + description: Array of deployment gates. + items: + $ref: '#/components/schemas/DeploymentGateResponseData' + type: array + meta: + $ref: '#/components/schemas/DeploymentGatesListResponseMeta' + type: object + CreateDeploymentGateParams: + description: Parameters for creating a deployment gate. + properties: + data: + $ref: '#/components/schemas/CreateDeploymentGateParamsData' + required: + - data + type: object + DeploymentGateResponse: + description: Response for a deployment gate. + properties: + data: + $ref: '#/components/schemas/DeploymentGateResponseData' + type: object + DeploymentGateRulesResponse: + description: Response for a deployment gate rules. + properties: + data: + $ref: '#/components/schemas/ListDeploymentRuleResponseData' + type: object + CreateDeploymentRuleParams: + description: Parameters for creating a deployment rule. + properties: + data: + $ref: '#/components/schemas/CreateDeploymentRuleParamsData' + type: object + DeploymentRuleResponse: + description: Response for a deployment rule. + properties: + data: + $ref: '#/components/schemas/DeploymentRuleResponseData' + type: object + UpdateDeploymentRuleParams: + description: Parameters for updating a deployment rule. + properties: + data: + $ref: '#/components/schemas/UpdateDeploymentRuleParamsData' + required: + - data + type: object + UpdateDeploymentGateParams: + description: Parameters for updating a deployment gate. + properties: + data: + $ref: '#/components/schemas/UpdateDeploymentGateParamsData' + required: + - data + type: object + DeploymentGatesEvaluationRequest: + description: Request body for triggering a deployment gate evaluation. + properties: + data: + $ref: '#/components/schemas/DeploymentGatesEvaluationRequestData' + required: + - data + type: object + DeploymentGatesEvaluationResponse: + description: Response for a deployment gate evaluation request. + properties: + data: + $ref: '#/components/schemas/DeploymentGatesEvaluationResponseData' + type: object + DeploymentGatesEvaluationResultResponse: + description: Response containing the result of a deployment gate evaluation. + properties: + data: + $ref: '#/components/schemas/DeploymentGatesEvaluationResultResponseData' + type: object + DORADeploymentRequest: + description: Request to create a DORA deployment event. + properties: + data: + $ref: '#/components/schemas/DORADeploymentRequestData' + required: + - data + type: object + DORADeploymentResponse: + description: Response after receiving a DORA deployment event. + properties: + data: + $ref: '#/components/schemas/DORADeploymentResponseData' + required: + - data + type: object + JSONAPIErrorResponse: + description: API error response. + properties: + errors: + description: A list of errors. + items: + $ref: '#/components/schemas/JSONAPIErrorItem' + type: array + required: + - errors + type: object + DORADeploymentPatchByVersionRequest: + description: Request to patch a DORA deployment event identified by service, environment, and version. + example: + data: + attributes: + change_failure: true + env: production + remediation: + type: rollback + version: v1.2.2 + service: my-service + version: v1.2.3 + type: dora_deployment_patch_request + properties: + data: + $ref: '#/components/schemas/DORADeploymentPatchByVersionRequestData' + required: + - data + type: object + DORAListDeploymentsRequest: + description: Request to get a list of deployments. + example: + data: + attributes: + from: '2025-01-01T00:00:00Z' + limit: 100 + query: service:(shopist OR api-service) env:production team:backend + sort: '-finished_at' + to: '2025-01-31T23:59:59Z' + type: dora_deployments_list_request + properties: + data: + $ref: '#/components/schemas/DORAListDeploymentsRequestData' + required: + - data + type: object + DORADeploymentsListResponse: + description: Response for the list deployments endpoint. + example: + data: + - attributes: + custom_tags: + - language:java + - department:engineering + - region:us-east-1 + env: production + finished_at: '2023-08-31T14:26:24Z' + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_id: github.com/organization/example-repository + service: shopist + started_at: '2023-08-31T14:26:14Z' + team: backend + version: v1.12.07 + id: 4242fcdd31586083 + type: dora_deployment + - attributes: + custom_tags: + - language:go + - department:platform + env: production + finished_at: '2023-08-31T14:28:04Z' + git: + commit_sha: 77bdc9350f2cc9b250b69abddab733dd55e1a599 + repository_id: github.com/organization/api-service + service: api-service + started_at: '2023-08-31T14:27:54Z' + team: backend + version: v2.1.0 + id: 4242fcdd31586084 + type: dora_deployment + properties: + data: + description: The list of DORA deployment events. + items: + $ref: '#/components/schemas/DORADeploymentObject' + type: array + type: object + DORADeploymentFetchResponse: + description: Response for fetching a single deployment event. + properties: + data: + $ref: '#/components/schemas/DORADeploymentObject' + type: object + DORADeploymentPatchRequest: + description: Request to patch a DORA deployment event. + example: + data: + attributes: + change_failure: true + remediation: + id: eG42zNIkVjM + type: rollback + id: z_RwVLi7v4Y + type: dora_deployment_patch_request + properties: + data: + $ref: '#/components/schemas/DORADeploymentPatchRequestData' + required: + - data + type: object + DORAFailureRequest: + description: Request to create a DORA incident event. + properties: + data: + $ref: '#/components/schemas/DORAFailureRequestData' + required: + - data + type: object + DORAFailureResponse: + description: Response after receiving a DORA incident event. + properties: + data: + $ref: '#/components/schemas/DORAFailureResponseData' + required: + - data + type: object + DORAListFailuresRequest: + description: Request to get a list of incidents. + example: + data: + attributes: + from: '2025-01-01T00:00:00Z' + limit: 100 + query: severity:(SEV-1 OR SEV-2) env:production team:backend + sort: '-started_at' + to: '2025-01-31T23:59:59Z' + type: dora_failures_list_request + properties: + data: + $ref: '#/components/schemas/DORAListFailuresRequestData' + required: + - data + type: object + DORAFailuresListResponse: + description: Response for the list incidents endpoint. + example: + data: + - attributes: + custom_tags: + - incident_type:database + - department:engineering + env: production + finished_at: '2023-08-31T14:31:14Z' + name: Database outage + services: + - shopist + severity: SEV-1 + started_at: '2023-08-31T14:29:34Z' + team: backend + id: 4242fcdd31586085 + type: dora_incident + - attributes: + custom_tags: + - incident_type:service_down + - department:platform + env: production + finished_at: '2023-08-31T14:34:34Z' + name: API service outage + services: + - api-service + - payment-service + severity: SEV-2 + started_at: '2023-08-31T14:32:54Z' + team: backend + id: 4242fcdd31586086 + type: dora_incident + properties: + data: + description: The list of DORA incident events. + items: + $ref: '#/components/schemas/DORAIncidentObject' + type: array + type: object + DORAFailureFetchResponse: + description: Response for fetching a single incident event. + properties: + data: + $ref: '#/components/schemas/DORAIncidentObject' + type: object + ListFeatureFlagsResponse: + description: Response containing a list of feature flags. + properties: + data: + description: List of feature flags. + items: + $ref: '#/components/schemas/FeatureFlagListItem' + type: array + meta: + $ref: '#/components/schemas/FeatureFlagsPaginationMeta' + required: + - data + type: object + CreateFeatureFlagRequest: + description: Request to create a new feature flag. + properties: + data: + $ref: '#/components/schemas/CreateFeatureFlagData' + required: + - data + type: object + FeatureFlagResponse: + description: Response containing a feature flag. + properties: + data: + $ref: '#/components/schemas/FeatureFlag' + required: + - data + type: object + ListEnvironmentsResponse: + description: Response containing a list of environments. + properties: + data: + description: List of environments. + items: + $ref: '#/components/schemas/Environment' + type: array + meta: + $ref: '#/components/schemas/EnvironmentsPaginationMeta' + required: + - data + type: object + CreateEnvironmentRequest: + description: Request to create a new environment. + properties: + data: + $ref: '#/components/schemas/CreateEnvironmentData' + required: + - data + type: object + EnvironmentResponse: + description: Response containing an environment. + properties: + data: + $ref: '#/components/schemas/Environment' + required: + - data + type: object + UpdateEnvironmentRequest: + description: Request to update an environment. + properties: + data: + $ref: '#/components/schemas/UpdateEnvironmentData' + required: + - data + type: object + AllocationExposureScheduleResponse: + description: Response containing a progressive rollout schedule. + properties: + data: + $ref: '#/components/schemas/AllocationExposureScheduleData' + required: + - data + type: object + UpdateFeatureFlagRequest: + description: Request to update a feature flag. + properties: + data: + $ref: '#/components/schemas/UpdateFeatureFlagData' + required: + - data + type: object + CreateAllocationsRequest: + description: Request to create targeting rules (allocations) for a feature flag in an environment. + properties: + data: + $ref: '#/components/schemas/AllocationDataRequest' + required: + - data + type: object + AllocationResponse: + description: Response containing a single targeting rule (allocation). + properties: + data: + $ref: '#/components/schemas/AllocationDataResponse' + required: + - data + type: object + OverwriteAllocationsRequest: + description: Request to overwrite targeting rules (allocations) for a feature flag in an environment. + properties: + data: + description: Targeting rules (allocations) to replace existing ones with. + items: + $ref: '#/components/schemas/AllocationDataRequest' + type: array + required: + - data + type: object + ListAllocationsResponse: + description: Response containing a list of targeting rules (allocations). + properties: + data: + description: List of targeting rules (allocations). + items: + $ref: '#/components/schemas/AllocationDataResponse' + description: Allocation item. + type: array + required: + - data + type: object + CreateVariant: + description: Request to create a variant. + properties: + key: + description: The unique key of the variant. + example: variant-abc123 + type: string + name: + description: The name of the variant. + example: Variant ABC123 + type: string + value: + description: The value of the variant as a string. + example: 'true' + type: string + required: + - key + - name + - value + type: object + Variant: + description: A variant of a feature flag. + properties: + created_at: + description: The timestamp when the variant was created. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + id: + description: The unique identifier of the variant. + example: 550e8400-e29b-41d4-a716-446655440002 + format: uuid + type: string + key: + description: The unique key of the variant. + example: variant-abc123 + type: string + name: + description: The name of the variant. + example: Variant ABC123 + type: string + updated_at: + description: The timestamp when the variant was last updated. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + value: + description: The value of the variant as a string. + example: 'true' + type: string + required: + - id + - key + - name + - value + type: object + UpdateVariantRequest: + description: Request to update an existing variant's name and value. + properties: + name: + description: The display name of the variant. + example: Variant ABC123 Updated + type: string + value: + description: The value of the variant as a string. + example: new_value + type: string + type: object + UpdateFlakyTestsRequest: + description: Request to update the state of multiple flaky tests. + properties: + data: + $ref: '#/components/schemas/UpdateFlakyTestsRequestData' + required: + - data + type: object + UpdateFlakyTestsResponse: + description: Response object for updating flaky test states. + properties: + data: + $ref: '#/components/schemas/UpdateFlakyTestsResponseData' + type: object + FlakyTestsSearchRequest: + description: The request for a flaky tests search. + properties: + data: + $ref: '#/components/schemas/FlakyTestsSearchRequestData' + type: object + FlakyTestsSearchResponse: + description: Response object with flaky tests matching the search request. + properties: + data: + description: Array of flaky tests matching the request. + items: + $ref: '#/components/schemas/FlakyTest' + type: array + meta: + $ref: '#/components/schemas/FlakyTestsSearchResponseMeta' + type: object + ListWorkflowsResponse: + description: The response object for a listing workflows request. + properties: + data: + description: A list of workflows. + items: + $ref: '#/components/schemas/WorkflowListItem' + type: array + meta: + $ref: '#/components/schemas/ListWorkflowsResponseMeta' + type: object + CreateWorkflowRequest: + description: A request object for creating a new workflow. + example: + data: + attributes: + description: A sample workflow. + name: Example Workflow + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + 'y': -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: Example annotation. + connectionEnvs: + - connections: + - connectionId: e1e64943-c7c5-4487-aece-25aaec7d3aad + label: INTEGRATION_DATADOG + env: default + handle: my-handle + inputSchema: + parameters: + - defaultValue: default + name: input + type: STRING + outputSchema: + parameters: + - name: output + type: ARRAY_OBJECT + value: '{{ Steps.Step1 }}' + steps: + - actionId: com.datadoghq.dd.monitor.listMonitors + connectionLabel: INTEGRATION_DATADOG + name: Step1 + outboundEdges: + - branchName: main + nextStepName: Step2 + parameters: + - name: tags + value: service:monitoring + - actionId: com.datadoghq.core.noop + name: Step2 + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: 3600s + startStepNames: + - Step1 + - githubWebhookTrigger: {} + startStepNames: + - Step1 + tags: + - team:infra + - service:monitoring + - foo:bar + type: workflows + properties: + data: + $ref: '#/components/schemas/WorkflowData' + required: + - data + type: object + CreateWorkflowResponse: + description: The response object after creating a new workflow. + properties: + data: + $ref: '#/components/schemas/WorkflowData' + required: + - data + type: object + GetWorkflowResponse: + description: The response object after getting a workflow. + properties: + data: + $ref: '#/components/schemas/WorkflowData' + type: object + UpdateWorkflowRequest: + description: A request object for updating an existing workflow. + example: + data: + attributes: + description: A sample workflow. + name: Example Workflow + published: true + spec: + annotations: + - display: + bounds: + height: 150 + width: 300 + x: -375 + 'y': -0.5 + id: 99999999-9999-9999-9999-999999999999 + markdownTextAnnotation: + text: Example annotation. + connectionEnvs: + - connections: + - connectionId: e1e64943-c7c5-4487-aece-25aaec7d3aad + label: INTEGRATION_DATADOG + env: default + handle: my-handle + inputSchema: + parameters: + - defaultValue: default + name: input + type: STRING + outputSchema: + parameters: + - name: output + type: ARRAY_OBJECT + value: '{{ Steps.Step1 }}' + steps: + - actionId: com.datadoghq.dd.monitor.listMonitors + connectionLabel: INTEGRATION_DATADOG + name: Step1 + outboundEdges: + - branchName: main + nextStepName: Step2 + parameters: + - name: tags + value: service:monitoring + - actionId: com.datadoghq.core.noop + name: Step2 + triggers: + - monitorTrigger: + rateLimit: + count: 1 + interval: 3600s + startStepNames: + - Step1 + - githubWebhookTrigger: {} + startStepNames: + - Step1 + tags: + - team:infra + - service:monitoring + - foo:bar + id: 22222222-2222-2222-2222-222222222222 + type: workflows + properties: + data: + $ref: '#/components/schemas/WorkflowDataUpdate' + required: + - data + type: object + UpdateWorkflowResponse: + description: The response object after updating a workflow. + properties: + data: + $ref: '#/components/schemas/WorkflowDataUpdate' + type: object + WorkflowListInstancesResponse: + additionalProperties: {} + description: Response returned when listing workflow instances. + properties: + data: + description: A list of workflow instances. + items: + $ref: '#/components/schemas/WorkflowInstanceListItem' + type: array + meta: + $ref: '#/components/schemas/WorkflowListInstancesResponseMeta' + type: object + WorkflowInstanceCreateRequest: + description: Request used to create a workflow instance. + properties: + meta: + $ref: '#/components/schemas/WorkflowInstanceCreateMeta' + type: object + WorkflowInstanceCreateResponse: + additionalProperties: {} + description: Response returned upon successful workflow instance creation. + properties: + data: + $ref: '#/components/schemas/WorkflowInstanceCreateResponseData' + type: object + WorklflowGetInstanceResponse: + additionalProperties: {} + description: The state of the given workflow instance. + properties: + data: + $ref: '#/components/schemas/WorklflowGetInstanceResponseData' + type: object + WorklflowCancelInstanceResponse: + description: Information about the canceled instance. + properties: + data: + $ref: '#/components/schemas/WorklflowCancelInstanceResponseData' + type: object + CIAppGitHubAccountData: + description: Data object for a GitHub account. + properties: + attributes: + $ref: '#/components/schemas/CIAppGitHubAccountAttributes' + id: + description: |- + The account's unique identifier, in the form `/` + (for example `github.com/datadog`). + example: github.com/datadog + type: string + type: + $ref: '#/components/schemas/CIAppGitHubAccountType' + required: + - id + - type + - attributes + type: object + CIAppGitHubAccountUpdateRequestData: + description: Data object for updating a GitHub account's CI Visibility opt-in status. + properties: + attributes: + $ref: '#/components/schemas/CIAppGitHubAccountUpdateRequestAttributes' + type: + $ref: '#/components/schemas/CIAppGitHubAccountType' + required: + - type + - attributes + type: object + CIAppCreatePipelineEventRequestDataSingleOrArray: + description: Data of the pipeline events to create. + properties: + attributes: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributes' + type: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataType' + type: object + items: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' + HTTPCIAppError: + description: List of errors. + properties: + detail: + description: Error message. + example: Malformed payload + type: string + status: + description: Error code. + example: '400' + type: string + title: + description: Error title. + example: Bad Request + type: string + type: object + CIAppCompute: + description: A compute rule to compute metrics or timeseries. + properties: + aggregation: + $ref: '#/components/schemas/CIAppAggregationFunction' + interval: + description: |- + The time buckets' size (only used for type=timeseries) + Defaults to a resolution of 150 points. + example: 5m + type: string + metric: + description: The metric to use. + example: '@duration' + type: string + type: + $ref: '#/components/schemas/CIAppComputeType' + required: + - aggregation + type: object + CIAppPipelinesQueryFilter: + description: The search and filter query settings. + properties: + from: + default: now-15m + description: The minimum time for the requested events; supports date, math, and regular timestamps (in milliseconds). + example: now-15m + type: string + query: + default: '*' + description: The search query following the CI Visibility Explorer search syntax. + example: '@ci.provider.name:github AND @ci.status:error' + type: string + to: + default: now + description: The maximum time for the requested events, supports date, math, and regular timestamps (in milliseconds). + example: now + type: string + type: object + CIAppPipelinesGroupBy: + description: A group-by rule. + properties: + facet: + description: The name of the facet to use (required). + example: '@ci.status' + type: string + histogram: + $ref: '#/components/schemas/CIAppGroupByHistogram' + limit: + default: 10 + description: The maximum buckets to return for this group-by. + format: int64 + type: integer + missing: + $ref: '#/components/schemas/CIAppGroupByMissing' + sort: + $ref: '#/components/schemas/CIAppAggregateSort' + total: + $ref: '#/components/schemas/CIAppGroupByTotal' + required: + - facet + type: object + CIAppQueryOptions: + description: |- + Global query options that are used during the query. + Only supply timezone or time offset, not both. Otherwise, the query fails. + properties: + time_offset: + description: The time offset (in seconds) to apply to the query. + format: int64 + type: integer + timezone: + default: UTC + description: The timezone can be specified as GMT, UTC, an offset from UTC (like UTC+1), or as a Timezone Database identifier (like America/New_York). + example: GMT + type: string + type: object + CIAppPipelinesAggregationBucketsResponse: + description: The query results. + properties: + buckets: + description: The list of matching buckets, one item per bucket. + items: + $ref: '#/components/schemas/CIAppPipelinesBucketResponse' + type: array + type: object + CIAppResponseLinks: + description: Links attributes. + properties: + next: + description: |- + Link for the next set of results. The request can also be made using the + POST endpoint. + example: https://app.datadoghq.com/api/v2/ci/tests/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + CIAppResponseMetadata: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + request_id: + description: The identifier of the request. + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + $ref: '#/components/schemas/CIAppResponseStatus' + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: '#/components/schemas/CIAppWarning' + type: array + type: object + CIAppPipelineEvent: + description: Object description of a pipeline event after being processed and stored by Datadog. + properties: + attributes: + $ref: '#/components/schemas/CIAppPipelineEventAttributes' + id: + description: Unique ID of the event. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/CIAppPipelineEventTypeName' + type: object + CIAppResponseMetadataWithPagination: + description: The metadata associated with a request. + properties: + elapsed: + description: The time elapsed in milliseconds. + example: 132 + format: int64 + type: integer + page: + $ref: '#/components/schemas/CIAppResponsePage' + request_id: + description: The identifier of the request. + example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + type: string + status: + $ref: '#/components/schemas/CIAppResponseStatus' + warnings: + description: |- + A list of warnings (non-fatal errors) encountered. Partial results may return if + warnings are present in the response. + items: + $ref: '#/components/schemas/CIAppWarning' + type: array + type: object + CIAppQueryPageOptions: + description: Paging attributes for listing events. + properties: + cursor: + description: List following results with a cursor provided in the previous query. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 25 + format: int32 + maximum: 1000 + type: integer + type: object + TestOptimizationFlakyTestsManagementPoliciesUpdateRequestData: + description: Data object for update Flaky Tests Management policies request. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes' + type: + $ref: '#/components/schemas/TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType' + required: + - type + - attributes + type: object + TestOptimizationFlakyTestsManagementPoliciesData: + description: Data object for Flaky Tests Management policies response. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAttributes' + id: + description: The repository identifier used as the resource ID. + example: github.com/datadog/shopist + type: string + type: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesType' + type: object + TestOptimizationFlakyTestsManagementPoliciesGetRequestData: + description: Data object for get Flaky Tests Management policies request. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesGetRequestAttributes' + type: + $ref: '#/components/schemas/TestOptimizationGetFlakyTestsManagementPoliciesRequestDataType' + required: + - type + - attributes + type: object + TestOptimizationDeleteServiceSettingsRequestData: + description: Data object for delete service settings request. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationDeleteServiceSettingsRequestAttributes' + type: + $ref: '#/components/schemas/TestOptimizationDeleteServiceSettingsRequestDataType' + required: + - type + - attributes + type: object + TestOptimizationUpdateServiceSettingsRequestData: + description: Data object for update service settings request. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationUpdateServiceSettingsRequestAttributes' + type: + $ref: '#/components/schemas/TestOptimizationUpdateServiceSettingsRequestDataType' + required: + - type + - attributes + type: object + TestOptimizationServiceSettingsData: + description: Data object for Test Optimization service settings response. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationServiceSettingsAttributes' + id: + description: Unique identifier for the service settings. + example: 9b8a7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d + type: string + type: + $ref: '#/components/schemas/TestOptimizationServiceSettingsType' + type: object + TestOptimizationGetServiceSettingsRequestData: + description: Data object for get service settings request. + properties: + attributes: + $ref: '#/components/schemas/TestOptimizationGetServiceSettingsRequestAttributes' + type: + $ref: '#/components/schemas/TestOptimizationGetServiceSettingsRequestDataType' + required: + - type + - attributes + type: object + CIAppTestsQueryFilter: + description: The search and filter query settings. + properties: + from: + default: now-15m + description: The minimum time for the requested events; supports date, math, and regular timestamps (in milliseconds). + example: now-15m + type: string + query: + default: '*' + description: The search query following the CI Visibility Explorer search syntax. + example: '@test.service:web-ui-tests AND @test.status:fail' + type: string + to: + default: now + description: The maximum time for the requested events, supports date, math, and regular timestamps (in milliseconds). + example: now + type: string + type: object + CIAppTestsGroupBy: + description: A group-by rule. + properties: + facet: + description: The name of the facet to use (required). + example: '@test.service' + type: string + histogram: + $ref: '#/components/schemas/CIAppGroupByHistogram' + limit: + default: 10 + description: The maximum buckets to return for this group-by. + format: int64 + type: integer + missing: + $ref: '#/components/schemas/CIAppGroupByMissing' + sort: + $ref: '#/components/schemas/CIAppAggregateSort' + total: + $ref: '#/components/schemas/CIAppGroupByTotal' + required: + - facet + type: object + CIAppTestsAggregationBucketsResponse: + description: The query results. + properties: + buckets: + description: The list of matching buckets, one item per bucket. + items: + $ref: '#/components/schemas/CIAppTestsBucketResponse' + type: array + type: object + CIAppTestEvent: + description: Object description of test event after being processed and stored by Datadog. + properties: + attributes: + $ref: '#/components/schemas/CIAppEventAttributes' + id: + description: Unique ID of the event. + example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + type: string + type: + $ref: '#/components/schemas/CIAppTestEventTypeName' + type: object + BranchCoverageSummaryRequestData: + description: Data object for branch summary request. + properties: + attributes: + $ref: '#/components/schemas/BranchCoverageSummaryRequestAttributes' + type: + $ref: '#/components/schemas/BranchCoverageSummaryRequestType' + required: + - type + - attributes + type: object + CoverageSummaryData: + description: Data object for coverage summary response. + properties: + attributes: + $ref: '#/components/schemas/CoverageSummaryAttributes' + id: + description: Unique identifier for the coverage summary (base64-hashed). + example: ZGQxMjM0NV9tYWluXzE3MDk1NjQwMDA= + type: string + type: + $ref: '#/components/schemas/CoverageSummaryType' + type: object + CommitCoverageSummaryRequestData: + description: Data object for commit summary request. + properties: + attributes: + $ref: '#/components/schemas/CommitCoverageSummaryRequestAttributes' + type: + $ref: '#/components/schemas/CommitCoverageSummaryRequestType' + required: + - type + - attributes + type: object + DeploymentGateResponseData: + description: Data for a deployment gate. + properties: + attributes: + $ref: '#/components/schemas/DeploymentGateResponseDataAttributes' + id: + description: Unique identifier of the deployment gate. + example: 1111-2222-3333-4444-555566667777 + type: string + type: + $ref: '#/components/schemas/DeploymentGateDataType' + required: + - type + - attributes + - id + type: object + DeploymentGatesListResponseMeta: + description: Metadata for a list of deployment gates response. + properties: + page: + $ref: '#/components/schemas/DeploymentGatesListResponseMetaPage' + type: object + HTTPCDGatesBadRequestResponse: + description: Bad request. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/HTTPCIAppError' + type: array + type: object + CreateDeploymentGateParamsData: + description: Parameters for creating a deployment gate. + properties: + attributes: + $ref: '#/components/schemas/CreateDeploymentGateParamsDataAttributes' + type: + $ref: '#/components/schemas/DeploymentGateDataType' + required: + - type + - attributes + type: object + ListDeploymentRuleResponseData: + description: Data for a list of deployment rules. + properties: + attributes: + $ref: '#/components/schemas/ListDeploymentRulesResponseDataAttributes' + id: + description: Unique identifier of the deployment rule. + example: 1111-2222-3333-4444-555566667777 + type: string + type: + $ref: '#/components/schemas/ListDeploymentRulesDataType' + required: + - type + - attributes + - id + type: object + CreateDeploymentRuleParamsData: + description: Parameters for creating a deployment rule. + properties: + attributes: + $ref: '#/components/schemas/CreateDeploymentRuleParamsDataAttributes' + type: + $ref: '#/components/schemas/DeploymentRuleDataType' + required: + - type + - attributes + type: object + DeploymentRuleResponseData: + description: Data for a deployment rule. + properties: + attributes: + $ref: '#/components/schemas/DeploymentRuleResponseDataAttributes' + id: + description: Unique identifier of the deployment rule. + example: 1111-2222-3333-4444-555566667777 + type: string + type: + $ref: '#/components/schemas/DeploymentRuleDataType' + required: + - type + - attributes + - id + type: object + HTTPCDGatesNotFoundResponse: + description: Deployment gate not found. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/HTTPCIAppError' + type: array + type: object + HTTPCDRulesNotFoundResponse: + description: Deployment rule not found. + properties: + errors: + description: Structured errors. + items: + $ref: '#/components/schemas/HTTPCIAppError' + type: array + type: object + UpdateDeploymentRuleParamsData: + description: Parameters for updating a deployment rule. + properties: + attributes: + $ref: '#/components/schemas/UpdateDeploymentRuleParamsDataAttributes' + type: + $ref: '#/components/schemas/DeploymentRuleDataType' + required: + - type + - attributes + type: object + UpdateDeploymentGateParamsData: + description: Parameters for updating a deployment gate. + properties: + attributes: + $ref: '#/components/schemas/UpdateDeploymentGateParamsDataAttributes' + id: + description: Unique identifier of the deployment gate. + example: 12345678-1234-1234-1234-123456789012 + type: string + type: + $ref: '#/components/schemas/DeploymentGateDataType' + required: + - type + - id + - attributes + type: object + DeploymentGatesEvaluationRequestData: + description: Data for a deployment gate evaluation request. + properties: + attributes: + $ref: '#/components/schemas/DeploymentGatesEvaluationRequestAttributes' + type: + $ref: '#/components/schemas/DeploymentGatesEvaluationRequestDataType' + required: + - type + - attributes + type: object + DeploymentGatesEvaluationResponseData: + description: Data for a deployment gate evaluation response. + properties: + attributes: + $ref: '#/components/schemas/DeploymentGatesEvaluationResponseAttributes' + id: + description: The unique identifier of the evaluation response. + example: e9d2f04f-4f4b-494b-86e5-52f03e10c8e9 + format: uuid + type: string + type: + $ref: '#/components/schemas/DeploymentGatesEvaluationResponseDataType' + required: + - type + - attributes + - id + type: object + DeploymentGatesEvaluationResultResponseData: + description: Data for a deployment gate evaluation result response. + properties: + attributes: + $ref: '#/components/schemas/DeploymentGatesEvaluationResultResponseAttributes' + id: + description: The unique identifier of the evaluation. + example: e9d2f04f-4f4b-494b-86e5-52f03e10c8e9 + type: string + type: + $ref: '#/components/schemas/DeploymentGatesEvaluationResultResponseDataType' + required: + - type + - attributes + - id + type: object + DORADeploymentRequestData: + description: The JSON:API data. + properties: + attributes: + $ref: '#/components/schemas/DORADeploymentRequestAttributes' + required: + - attributes + type: object + DORADeploymentResponseData: + description: The JSON:API data. + properties: + id: + description: The ID of the received DORA deployment event. + example: 4242fcdd31586083 + type: string + type: + $ref: '#/components/schemas/DORADeploymentType' + required: + - id + type: object + JSONAPIErrorItem: + description: API error response body + properties: + detail: + description: A human-readable explanation specific to this occurrence of the error. + example: Missing required attribute in body + type: string + meta: + additionalProperties: {} + description: Non-standard meta-information about the error + type: object + source: + $ref: '#/components/schemas/JSONAPIErrorItemSource' + status: + description: Status code of the response. + example: '400' + type: string + title: + description: Short human-readable summary of the error. + example: Bad Request + type: string + type: object + DORADeploymentPatchByVersionRequestData: + description: The JSON:API data for patching a deployment identified by service, environment, and version. + properties: + attributes: + $ref: '#/components/schemas/DORADeploymentPatchByVersionRequestAttributes' + type: + $ref: '#/components/schemas/DORADeploymentPatchRequestDataType' + required: + - type + - attributes + type: object + DORAListDeploymentsRequestData: + description: The JSON:API data. + example: + attributes: + from: '2025-01-15T08:00:00Z' + limit: 200 + query: env:production service:payment-service version:*v2* + sort: '-finished_at' + to: '2025-01-15T18:00:00Z' + type: dora_deployments_list_request + properties: + attributes: + $ref: '#/components/schemas/DORAListDeploymentsRequestAttributes' + type: + $ref: '#/components/schemas/DORAListDeploymentsRequestDataType' + required: + - attributes + type: object + DORADeploymentObject: + description: A DORA deployment event. + example: + attributes: + custom_tags: + - language:java + - department:engineering + - region:us-east-1 + env: production + finished_at: '2023-08-31T14:26:24Z' + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_id: github.com/organization/example-repository + service: shopist + started_at: '2023-08-31T14:26:14Z' + team: backend + version: v1.12.07 + id: 4242fcdd31586083 + type: dora_deployment + properties: + attributes: + $ref: '#/components/schemas/DORADeploymentObjectAttributes' + id: + description: The ID of the deployment event. + type: string + type: + $ref: '#/components/schemas/DORADeploymentType' + type: object + DORADeploymentPatchRequestData: + description: The JSON:API data for patching a deployment. + example: + attributes: + change_failure: true + remediation: + id: eG42zNIkVjM + type: rollback + id: z_RwVLi7v4Y + type: dora_deployment_patch_request + properties: + attributes: + $ref: '#/components/schemas/DORADeploymentPatchRequestAttributes' + id: + description: The ID of the deployment to patch. + example: z_RwVLi7v4Y + type: string + type: + $ref: '#/components/schemas/DORADeploymentPatchRequestDataType' + required: + - type + - id + - attributes + type: object + DORAFailureRequestData: + description: The JSON:API data. + properties: + attributes: + $ref: '#/components/schemas/DORAFailureRequestAttributes' + required: + - attributes + type: object + DORAFailureResponseData: + description: Response after receiving a DORA incident event. + properties: + id: + description: The ID of the received DORA incident event. + example: 4242fcdd31586083 + type: string + type: + $ref: '#/components/schemas/DORAFailureType' + required: + - id + type: object + DORAListFailuresRequestData: + description: The JSON:API data. + example: + attributes: + from: '2025-01-15T00:00:00Z' + limit: 200 + query: severity:SEV-1 service:(api-service OR payment-service) env:production + sort: '-finished_at' + to: '2025-01-15T23:59:59Z' + type: dora_failures_list_request + properties: + attributes: + $ref: '#/components/schemas/DORAListFailuresRequestAttributes' + type: + $ref: '#/components/schemas/DORAListFailuresRequestDataType' + required: + - attributes + type: object + DORAIncidentObject: + description: A DORA incident event. + example: + attributes: + custom_tags: + - incident_type:database + - department:engineering + env: production + finished_at: '2023-08-31T14:31:14Z' + git: + commit_sha: 66adc9350f2cc9b250b69abddab733dd55e1a588 + repository_url: https://github.com/organization/example-repository + name: Database outage + services: + - shopist + severity: SEV-1 + started_at: '2023-08-31T14:29:34Z' + team: backend + id: 4242fcdd31586085 + type: dora_incident + properties: + attributes: + $ref: '#/components/schemas/DORAIncidentObjectAttributes' + id: + description: The ID of the incident event. + type: string + type: + $ref: '#/components/schemas/DORAFailureType' + type: object + FeatureFlagListItem: + description: A feature flag resource for list responses. + properties: + attributes: + $ref: '#/components/schemas/FeatureFlagListItemAttributes' + id: + description: The unique identifier of the feature flag. + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string + type: + $ref: '#/components/schemas/CreateFeatureFlagDataType' + required: + - id + - type + - attributes + type: object + FeatureFlagsPaginationMeta: + description: Pagination metadata for feature flags. + properties: + page: + $ref: '#/components/schemas/FeatureFlagsPaginationMetaPage' + type: object + CreateFeatureFlagData: + description: Data for creating a new feature flag. + properties: + attributes: + $ref: '#/components/schemas/CreateFeatureFlagAttributes' + type: + $ref: '#/components/schemas/CreateFeatureFlagDataType' + required: + - type + - attributes + type: object + FeatureFlag: + description: A feature flag resource. + properties: + attributes: + $ref: '#/components/schemas/FeatureFlagAttributes' + id: + description: The unique identifier of the feature flag. + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string + type: + $ref: '#/components/schemas/CreateFeatureFlagDataType' + required: + - id + - type + - attributes + type: object + Environment: + description: A feature flag environment resource. + properties: + attributes: + $ref: '#/components/schemas/EnvironmentAttributes' + id: + description: The unique identifier of the environment. + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid + type: string + type: + $ref: '#/components/schemas/CreateEnvironmentDataType' + required: + - id + - type + - attributes + type: object + EnvironmentsPaginationMeta: + description: Pagination metadata for environments. + properties: + page: + $ref: '#/components/schemas/EnvironmentsPaginationMetaPage' + type: object + CreateEnvironmentData: + description: Data for creating a new environment. + properties: + attributes: + $ref: '#/components/schemas/CreateEnvironmentAttributes' + type: + $ref: '#/components/schemas/CreateEnvironmentDataType' + required: + - type + - attributes + type: object + UpdateEnvironmentData: + description: Data for updating an environment. + properties: + attributes: + $ref: '#/components/schemas/UpdateEnvironmentAttributes' + type: + $ref: '#/components/schemas/UpdateEnvironmentDataType' + required: + - type + - attributes + type: object + AllocationExposureScheduleData: + description: Data wrapper for progressive rollout schedule responses. + properties: + attributes: + $ref: '#/components/schemas/AllocationExposureSchedule' + id: + description: The unique identifier of the progressive rollout. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + type: + $ref: '#/components/schemas/AllocationExposureScheduleDataType' + required: + - id + - type + - attributes + type: object + UpdateFeatureFlagData: + description: Data for updating a feature flag. + properties: + attributes: + $ref: '#/components/schemas/UpdateFeatureFlagAttributes' + type: + $ref: '#/components/schemas/UpdateFeatureFlagDataType' + required: + - type + - attributes + type: object + AllocationDataRequest: + description: Data wrapper for allocation request payloads. + properties: + attributes: + $ref: '#/components/schemas/UpsertAllocationRequest' + type: + $ref: '#/components/schemas/AllocationDataType' + required: + - type + - attributes + type: object + AllocationDataResponse: + description: Data wrapper for targeting rule allocation responses. + properties: + attributes: + $ref: '#/components/schemas/Allocation' + id: + description: The unique identifier of the targeting rule allocation. + example: 550e8400-e29b-41d4-a716-446655440020 + format: uuid + type: string + type: + $ref: '#/components/schemas/AllocationDataType' + required: + - id + - type + - attributes + type: object + UpdateFlakyTestsRequestData: + description: The JSON:API data for updating flaky test states. + properties: + attributes: + $ref: '#/components/schemas/UpdateFlakyTestsRequestAttributes' + type: + $ref: '#/components/schemas/UpdateFlakyTestsRequestDataType' + required: + - type + - attributes + type: object + UpdateFlakyTestsResponseData: + description: Summary of the update operations. Tells whether a test succeeded or failed to be updated. + properties: + attributes: + $ref: '#/components/schemas/UpdateFlakyTestsResponseAttributes' + id: + description: The ID of the response. + type: string + type: + $ref: '#/components/schemas/UpdateFlakyTestsResponseDataType' + type: object + FlakyTestsSearchRequestData: + description: The JSON:API data for flaky tests search request. + properties: + attributes: + $ref: '#/components/schemas/FlakyTestsSearchRequestAttributes' + type: + $ref: '#/components/schemas/FlakyTestsSearchRequestDataType' + type: object + FlakyTest: + description: A flaky test object. + properties: + attributes: + $ref: '#/components/schemas/FlakyTestAttributes' + id: + description: |- + Test's ID. This ID is the hash of the test's Fully Qualified Name and Git repository ID. It is the + value of the `@test.fingerprint_fqn` facet on test events, which you can search on in the Test + Optimization Explorer to locate a specific test. To filter search results by this ID, use the + `fingerprint_fqn` search key. + type: string + type: + $ref: '#/components/schemas/FlakyTestType' + type: object + FlakyTestsSearchResponseMeta: + description: Metadata for the flaky tests search response. + properties: + pagination: + $ref: '#/components/schemas/FlakyTestsPagination' + type: object + WorkflowListItem: + description: A workflow returned by the list workflows endpoint. + properties: + attributes: + $ref: '#/components/schemas/WorkflowListItemAttributes' + id: + description: The workflow identifier. + readOnly: true + type: string + relationships: + $ref: '#/components/schemas/WorkflowDataRelationships' + type: + $ref: '#/components/schemas/WorkflowDataType' + required: + - type + - attributes + type: object + ListWorkflowsResponseMeta: + description: Metadata for a List Workflows response. + properties: + page: + $ref: '#/components/schemas/ListWorkflowsResponseMetaPage' + type: object + WorkflowData: + description: Data related to the workflow. + properties: + attributes: + $ref: '#/components/schemas/WorkflowDataAttributes' + id: + description: The workflow identifier + readOnly: true + type: string + relationships: + $ref: '#/components/schemas/WorkflowDataRelationships' + type: + $ref: '#/components/schemas/WorkflowDataType' + required: + - type + - attributes + type: object + WorkflowDataUpdate: + description: Data related to the workflow being updated. + properties: + attributes: + $ref: '#/components/schemas/WorkflowDataUpdateAttributes' + id: + description: The workflow identifier + type: string + relationships: + $ref: '#/components/schemas/WorkflowDataRelationships' + type: + $ref: '#/components/schemas/WorkflowDataType' + required: + - type + - attributes + type: object + WorkflowInstanceListItem: + additionalProperties: {} + description: An item in the workflow instances list. + properties: + id: + description: The ID of the workflow instance + type: string + type: object + WorkflowListInstancesResponseMeta: + additionalProperties: {} + description: Metadata about the instances list + properties: + page: + $ref: '#/components/schemas/WorkflowListInstancesResponseMetaPage' + type: object + WorkflowInstanceCreateMeta: + description: Additional information for creating a workflow instance. + properties: + payload: + additionalProperties: {} + description: The input parameters to the workflow. + type: object + type: object + WorkflowInstanceCreateResponseData: + additionalProperties: {} + description: Data about the created workflow instance. + properties: + id: + description: The ID of the workflow execution. It can be used to fetch the execution status. + type: string + type: object + WorklflowGetInstanceResponseData: + additionalProperties: {} + description: The data of the instance response. + properties: + attributes: + $ref: '#/components/schemas/WorklflowGetInstanceResponseDataAttributes' + type: object + WorklflowCancelInstanceResponseData: + description: Data about the canceled instance. + properties: + id: + description: The id of the canceled instance + type: string + type: object + CIAppGitHubAccountAttributes: + description: Attributes describing a GitHub account's CI Visibility opt-in status. + properties: + account: + description: The GitHub account (organization or user) name. + example: datadog + type: string + enabled: + description: Whether CI Visibility is enabled at the account level. + example: true + type: boolean + host: + description: The GitHub host (`github.com` or a GitHub Enterprise Server (GHES) hostname) this account belongs to. + example: github.com + type: string + repo_count: + description: The number of repositories known for this account. + example: 12 + format: int64 + type: integer + repositories: + description: The repositories belonging to this account, with their individual opt-in status. + items: + $ref: '#/components/schemas/CIAppGitHubAccountRepository' + type: array + type: object + CIAppGitHubAccountType: + description: |- + JSON:API type for the GitHub account resource. + The value must always be `ci_github_account`. + enum: + - ci_github_account + example: ci_github_account + type: string + x-enum-varnames: + - CI_GITHUB_ACCOUNT + CIAppGitHubAccountUpdateRequestAttributes: + description: |- + Attributes for updating a GitHub account's CI Visibility opt-in status. + At least one of `enabled` or `repository.enabled` must be provided. + properties: + account: + description: The GitHub account (organization or user) name to update, identified by name. + example: datadog + minLength: 1 + type: string + enabled: + description: Whether to enable or disable CI Visibility at the account level. + example: true + type: boolean + host: + description: |- + The GitHub host (`github.com` or a GHES hostname) the account belongs to. Required to disambiguate + when the same account name exists on more than one host. + example: github.com + type: string + repository: + $ref: '#/components/schemas/CIAppGitHubAccountUpdateRequestRepository' + required: + - account + type: object + CIAppCreatePipelineEventRequestData: + description: Data of the pipeline event to create. + properties: + attributes: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributes' + type: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataType' + type: object + CIAppCreatePipelineEventRequestDataArray: + description: Array of pipeline events to create in batch. + items: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' + type: array + CIAppAggregationFunction: + description: An aggregation function. + enum: + - count + - cardinality + - pc75 + - pc90 + - pc95 + - pc98 + - pc99 + - sum + - min + - max + - avg + - median + - latest + - earliest + - most_frequent + - delta + example: pc90 + type: string + x-enum-varnames: + - COUNT + - CARDINALITY + - PERCENTILE_75 + - PERCENTILE_90 + - PERCENTILE_95 + - PERCENTILE_98 + - PERCENTILE_99 + - SUM + - MIN + - MAX + - AVG + - MEDIAN + - LATEST + - EARLIEST + - MOST_FREQUENT + - DELTA + CIAppComputeType: + default: total + description: The type of compute. + enum: + - timeseries + - total + type: string + x-enum-varnames: + - TIMESERIES + - TOTAL + CIAppGroupByHistogram: + description: |- + Used to perform a histogram computation (only for measure facets). + At most, 100 buckets are allowed, the number of buckets is `(max - min)/interval`. + properties: + interval: + description: The bin size of the histogram buckets. + example: 10 + format: double + type: number + max: + description: |- + The maximum value for the measure used in the histogram + (values greater than this one are filtered out). + example: 100 + format: double + type: number + min: + description: |- + The minimum value for the measure used in the histogram + (values smaller than this one are filtered out). + example: 50 + format: double + type: number + required: + - interval + - min + - max + type: object + CIAppGroupByMissing: + description: The value to use for logs that don't have the facet used to group-by. + type: string + format: double + CIAppAggregateSort: + description: A sort rule. The `aggregation` field is required when `type` is `measure`. + example: + aggregation: count + order: asc + properties: + aggregation: + $ref: '#/components/schemas/CIAppAggregationFunction' + metric: + description: The metric to sort by (only used for `type=measure`). + example: '@duration' + type: string + order: + $ref: '#/components/schemas/CIAppSortOrder' + type: + $ref: '#/components/schemas/CIAppAggregateSortType' + type: object + CIAppGroupByTotal: + default: false + description: A resulting object to put the given computes in over all the matching records. + type: boolean + format: double + CIAppPipelinesBucketResponse: + description: Bucket values. + properties: + by: + additionalProperties: + description: The values for each group-by. + description: The key-value pairs for each group-by. + example: + '@ci.provider.name': gitlab + '@ci.status': success + type: object + computes: + $ref: '#/components/schemas/CIAppComputes' + type: object + CIAppResponseStatus: + description: The status of the response. + enum: + - done + - timeout + example: done + type: string + x-enum-varnames: + - DONE + - TIMEOUT + CIAppWarning: + description: A warning message indicating something that went wrong with the query. + properties: + code: + description: A unique code for this type of warning. + example: unknown_index + type: string + detail: + description: A detailed explanation of this specific warning. + example: 'indexes: foo, bar' + type: string + title: + description: A short human-readable summary of the warning. + example: One or several indexes are missing or invalid, results hold data from the other indexes + type: string + type: object + CIAppPipelineEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from CI Visibility pipeline events. + example: + customAttribute: 123 + duration: 2345 + type: object + ci_level: + $ref: '#/components/schemas/CIAppPipelineLevel' + tags: + $ref: '#/components/schemas/TagsEventAttribute' + type: object + CIAppPipelineEventTypeName: + description: Type of the event. + enum: + - cipipeline + example: cipipeline + type: string + x-enum-varnames: + - CIPIPELINE + CIAppResponsePage: + description: Paging attributes. + properties: + after: + description: The cursor to use to get the next results, if any. To make the next request, use the same parameters with the addition of `page[cursor]`. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + type: object + TestOptimizationFlakyTestsManagementPoliciesUpdateRequestAttributes: + description: |- + Attributes for updating Flaky Tests Management policies. + Only provided policy blocks are updated; omitted blocks are left unchanged. + properties: + attempt_to_fix: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAttemptToFix' + disabled: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabled' + quarantined: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesQuarantined' + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + required: + - repository_id + type: object + TestOptimizationUpdateFlakyTestsManagementPoliciesRequestDataType: + description: |- + JSON:API type for update Flaky Tests Management policies request. + The value must always be `test_optimization_update_flaky_tests_management_policies_request`. + enum: + - test_optimization_update_flaky_tests_management_policies_request + example: test_optimization_update_flaky_tests_management_policies_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_UPDATE_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST + TestOptimizationFlakyTestsManagementPoliciesAttributes: + description: Attributes of the Flaky Tests Management policies for a repository. + properties: + attempt_to_fix: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAttemptToFix' + disabled: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabled' + quarantined: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesQuarantined' + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + type: string + type: object + TestOptimizationFlakyTestsManagementPoliciesType: + description: |- + JSON:API type for Flaky Tests Management policies response. + The value must always be `test_optimization_flaky_tests_management_policies`. + enum: + - test_optimization_flaky_tests_management_policies + example: test_optimization_flaky_tests_management_policies + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_FLAKY_TESTS_MANAGEMENT_POLICIES + TestOptimizationFlakyTestsManagementPoliciesGetRequestAttributes: + description: Attributes for requesting Flaky Tests Management policies. + properties: + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + required: + - repository_id + type: object + TestOptimizationGetFlakyTestsManagementPoliciesRequestDataType: + description: |- + JSON:API type for get Flaky Tests Management policies request. + The value must always be `test_optimization_get_flaky_tests_management_policies_request`. + enum: + - test_optimization_get_flaky_tests_management_policies_request + example: test_optimization_get_flaky_tests_management_policies_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_GET_FLAKY_TESTS_MANAGEMENT_POLICIES_REQUEST + TestOptimizationDeleteServiceSettingsRequestAttributes: + description: Attributes for deleting Test Optimization service settings. + properties: + env: + description: The environment name. If omitted, defaults to `none`. + example: prod + type: string + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + service_name: + description: The service name. + example: shopist + minLength: 1 + type: string + required: + - repository_id + - service_name + type: object + TestOptimizationDeleteServiceSettingsRequestDataType: + description: |- + JSON:API type for delete service settings request. + The value must always be `test_optimization_delete_service_settings_request`. + enum: + - test_optimization_delete_service_settings_request + example: test_optimization_delete_service_settings_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_DELETE_SERVICE_SETTINGS_REQUEST + TestOptimizationUpdateServiceSettingsRequestAttributes: + description: |- + Attributes for updating Test Optimization service settings. + All non-required fields are optional; only provided fields will be updated. + Setting a field to `null` is a no-op. To reset a setting to inherit from the repository level, use the corresponding `_inherit` field. + properties: + auto_test_retries_enabled: + description: Whether Auto Test Retries are enabled for this service. Setting to `null` is a no-op; use `auto_test_retries_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + auto_test_retries_enabled_inherit: + description: When `true`, resets the Auto Test Retries setting to inherit from the repository level. + example: false + type: boolean + code_coverage_enabled: + description: Whether Code Coverage is enabled for this service. Setting to `null` is a no-op; use `code_coverage_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + code_coverage_enabled_inherit: + description: When `true`, resets the Code Coverage setting to inherit from the repository level. + example: false + type: boolean + early_flake_detection_enabled: + description: Whether Early Flake Detection is enabled for this service. Setting to `null` is a no-op; use `early_flake_detection_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + early_flake_detection_enabled_inherit: + description: When `true`, resets the Early Flake Detection setting to inherit from the repository level. + example: false + type: boolean + env: + description: The environment name. If omitted, defaults to `none`. + example: prod + type: string + failed_test_replay_enabled: + description: Whether Failed Test Replay is enabled for this service. Setting to `null` is a no-op; use `failed_test_replay_enabled_inherit` to reset to repository-level inheritance. + example: false + type: boolean + failed_test_replay_enabled_inherit: + description: When `true`, resets the Failed Test Replay setting to inherit from the repository level. + example: false + type: boolean + pr_comments_enabled: + description: This field is ignored. PR Comments cannot be overridden at the service level. + example: false + type: boolean + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + service_name: + description: The service name. + example: shopist + minLength: 1 + type: string + test_impact_analysis_enabled: + description: Whether Test Impact Analysis is enabled for this service. Setting to `null` is a no-op; use `test_impact_analysis_enabled_inherit` to reset to repository-level inheritance. + example: true + type: boolean + test_impact_analysis_enabled_inherit: + description: When `true`, resets the Test Impact Analysis setting to inherit from the repository level. + example: true + type: boolean + required: + - repository_id + - service_name + type: object + TestOptimizationUpdateServiceSettingsRequestDataType: + description: |- + JSON:API type for update service settings request. + The value must always be `test_optimization_update_service_settings_request`. + enum: + - test_optimization_update_service_settings_request + example: test_optimization_update_service_settings_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_UPDATE_SERVICE_SETTINGS_REQUEST + TestOptimizationServiceSettingsAttributes: + description: Attributes for Test Optimization service settings. + properties: + auto_test_retries_enabled: + description: Whether Auto Test Retries are enabled for this service. + example: false + type: boolean + auto_test_retries_enabled_is_overridden: + description: Whether the Auto Test Retries setting is overridden at the service level. + example: false + type: boolean + code_coverage_enabled: + description: Whether Code Coverage is enabled for this service. + example: false + type: boolean + code_coverage_enabled_is_overridden: + description: Whether the Code Coverage setting is overridden at the service level. + example: false + type: boolean + early_flake_detection_enabled: + description: Whether Early Flake Detection is enabled for this service. + example: false + type: boolean + early_flake_detection_enabled_is_overridden: + description: Whether the Early Flake Detection setting is overridden at the service level. + example: false + type: boolean + env: + description: The environment name. + example: prod + type: string + failed_test_replay_enabled: + description: Whether Failed Test Replay is enabled for this service. + example: false + type: boolean + failed_test_replay_enabled_is_overridden: + description: Whether the Failed Test Replay setting is overridden at the service level. + example: false + type: boolean + pr_comments_enabled: + description: Whether PR Comments are enabled. This value reflects the repository-level setting and cannot be overridden at the service level. + example: false + type: boolean + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + type: string + service_name: + description: The service name. + example: shopist + type: string + test_impact_analysis_enabled: + description: Whether Test Impact Analysis is enabled for this service. + example: true + type: boolean + test_impact_analysis_enabled_is_overridden: + description: Whether the Test Impact Analysis setting is overridden at the service level. + example: true + type: boolean + type: object + TestOptimizationServiceSettingsType: + description: |- + JSON:API type for service settings response. + The value must always be `test_optimization_service_settings`. + enum: + - test_optimization_service_settings + example: test_optimization_service_settings + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_SERVICE_SETTINGS + TestOptimizationGetServiceSettingsRequestAttributes: + description: Attributes for requesting Test Optimization service settings. + properties: + env: + description: The environment name. If omitted, defaults to `none`. + example: prod + type: string + repository_id: + description: The repository identifier. + example: github.com/datadog/shopist + minLength: 1 + type: string + service_name: + description: The service name. + example: shopist + minLength: 1 + type: string + required: + - repository_id + - service_name + type: object + TestOptimizationGetServiceSettingsRequestDataType: + description: |- + JSON:API type for get service settings request. + The value must always be `test_optimization_get_service_settings_request`. + enum: + - test_optimization_get_service_settings_request + example: test_optimization_get_service_settings_request + type: string + x-enum-varnames: + - TEST_OPTIMIZATION_GET_SERVICE_SETTINGS_REQUEST + CIAppTestsBucketResponse: + description: Bucket values. + properties: + by: + additionalProperties: + description: The values for each group-by. + description: The key-value pairs for each group-by. + example: + '@test.service': web-ui-tests + '@test.status': skip + type: object + computes: + $ref: '#/components/schemas/CIAppComputes' + type: object + CIAppEventAttributes: + description: JSON object containing all event attributes and their associated values. + properties: + attributes: + additionalProperties: {} + description: JSON object of attributes from CI Visibility test events. + example: + customAttribute: 123 + duration: 2345 + type: object + tags: + $ref: '#/components/schemas/TagsEventAttribute' + test_level: + $ref: '#/components/schemas/CIAppTestLevel' + type: object + CIAppTestEventTypeName: + description: Type of the event. + enum: + - citest + example: citest + type: string + x-enum-varnames: + - CITEST + BranchCoverageSummaryRequestAttributes: + description: Attributes for requesting code coverage summary for a branch. + properties: + branch: + description: The branch name. + example: prod + minLength: 1 + type: string + repository_id: + deprecated: true + description: 'Deprecated: use `repository_url` instead. The repository URL.' + example: github.com/datadog/shopist + minLength: 1 + type: string + repository_url: + description: The repository URL. Accepts a full URL with or without a scheme (for example, `https://github.com/org/repo` or `github.com/org/repo`). + example: https://github.com/datadog/shopist + minLength: 1 + type: string + required: + - branch + type: object + BranchCoverageSummaryRequestType: + description: JSON:API type for branch coverage summary request. The value must always be `ci_app_coverage_branch_summary_request`. + enum: + - ci_app_coverage_branch_summary_request + example: ci_app_coverage_branch_summary_request + type: string + x-enum-varnames: + - CI_APP_COVERAGE_BRANCH_SUMMARY_REQUEST + CoverageSummaryAttributes: + description: Attributes object for code coverage summary response. + properties: + codeowners: + additionalProperties: + $ref: '#/components/schemas/CoverageSummaryCodeownerStats' + description: Coverage statistics broken down by code owner. + nullable: true + type: object + evaluated_flags_count: + description: Total number of coverage flags evaluated. + example: 8 + format: int64 + type: integer + evaluated_reports_count: + description: Total number of coverage reports evaluated. + example: 12 + format: int64 + type: integer + patch_coverage: + description: Overall patch coverage percentage. + example: 70.1 + format: double + nullable: true + type: number + services: + additionalProperties: + $ref: '#/components/schemas/CoverageSummaryServiceStats' + description: Coverage statistics broken down by service. + nullable: true + type: object + total_coverage: + description: Overall total coverage percentage. + example: 82.4 + format: double + nullable: true + type: number + type: object + CoverageSummaryType: + description: JSON:API type for coverage summary response. The value must always be `ci_app_coverage_summary`. + enum: + - ci_app_coverage_summary + example: ci_app_coverage_summary + type: string + x-enum-varnames: + - CI_APP_COVERAGE_SUMMARY + CommitCoverageSummaryRequestAttributes: + description: Attributes for requesting code coverage summary for a commit. + properties: + commit_sha: + description: The commit SHA (40-character hexadecimal string). + example: 66adc9350f2cc9b250b69abddab733dd55e1a588 + pattern: ^[a-fA-F0-9]{40}$ + type: string + repository_id: + deprecated: true + description: 'Deprecated: use `repository_url` instead. The repository URL.' + example: github.com/datadog/shopist + minLength: 1 + type: string + repository_url: + description: The repository URL. Accepts a full URL with or without a scheme (for example, `https://github.com/org/repo` or `github.com/org/repo`). + example: https://github.com/datadog/shopist + minLength: 1 + type: string + required: + - commit_sha + type: object + CommitCoverageSummaryRequestType: + description: JSON:API type for commit coverage summary request. The value must always be `ci_app_coverage_commit_summary_request`. + enum: + - ci_app_coverage_commit_summary_request + example: ci_app_coverage_commit_summary_request + type: string + x-enum-varnames: + - CI_APP_COVERAGE_COMMIT_SUMMARY_REQUEST + DeploymentGateResponseDataAttributes: + description: Basic information about a deployment gate. + properties: + created_at: + description: The timestamp when the deployment gate was created. + example: '2021-01-01T00:00:00Z' + format: date-time + type: string + created_by: + $ref: '#/components/schemas/DeploymentGateResponseDataAttributesCreatedBy' + dry_run: + description: Whether this gate is run in dry-run mode. + example: false + type: boolean + env: + description: The environment of the deployment gate. + example: production + type: string + identifier: + description: The identifier of the deployment gate. + example: pre + type: string + service: + description: The service of the deployment gate. + example: my-service + type: string + updated_at: + description: The timestamp when the deployment gate was last updated. + example: '2021-01-01T00:00:00Z' + format: date-time + type: string + updated_by: + $ref: '#/components/schemas/DeploymentGateResponseDataAttributesUpdatedBy' + required: + - created_at + - created_by + - dry_run + - env + - identifier + - service + type: object + DeploymentGateDataType: + description: Deployment gate resource type. + enum: + - deployment_gate + example: deployment_gate + type: string + x-enum-varnames: + - DEPLOYMENT_GATE + DeploymentGatesListResponseMetaPage: + description: Pagination information for a list of deployment gates. + properties: + cursor: + description: The cursor used for the current page. + type: string + next_cursor: + description: The cursor to use to fetch the next page. This is absent when there are no more pages. + type: string + size: + default: 50 + description: The number of results per page. + format: int64 + maximum: 1000 + minimum: 1 + type: integer + type: object + CreateDeploymentGateParamsDataAttributes: + description: Parameters for creating a deployment gate. + properties: + dry_run: + default: false + description: Whether this gate is run in dry-run mode. + example: false + type: boolean + env: + description: The environment of the deployment gate. + example: production + type: string + identifier: + default: default + description: The identifier of the deployment gate. + example: pre + type: string + service: + description: The service of the deployment gate. + example: my-service + type: string + required: + - env + - service + type: object + ListDeploymentRulesResponseDataAttributes: + description: Attributes of the response for listing deployment rules. + properties: + rules: + description: The list of deployment rules. + items: + $ref: '#/components/schemas/DeploymentRuleResponseDataAttributes' + type: array + type: object + ListDeploymentRulesDataType: + description: List deployment rule resource type. + enum: + - list_deployment_rules + example: list_deployment_rules + type: string + x-enum-varnames: + - LIST_DEPLOYMENT_RULES + CreateDeploymentRuleParamsDataAttributes: + description: Parameters for creating a deployment rule. + properties: + dry_run: + default: false + description: Whether this rule is run in dry-run mode. + example: false + type: boolean + name: + description: The name of the deployment rule. + example: My deployment rule + type: string + options: + $ref: '#/components/schemas/DeploymentRulesOptions' + type: + description: The type of the deployment rule (faulty_deployment_detection or monitor). + example: faulty_deployment_detection + type: string + required: + - name + - options + - type + type: object + DeploymentRuleDataType: + description: Deployment rule resource type. + enum: + - deployment_rule + example: deployment_rule + type: string + x-enum-varnames: + - DEPLOYMENT_RULE + DeploymentRuleResponseDataAttributes: + description: Basic information about a deployment rule. + properties: + created_at: + description: The timestamp when the deployment rule was created. + example: '2021-01-01T00:00:00Z' + format: date-time + type: string + created_by: + $ref: '#/components/schemas/DeploymentRuleResponseDataAttributesCreatedBy' + dry_run: + description: Whether this rule is run in dry-run mode. + example: false + type: boolean + gate_id: + description: The ID of the deployment gate. + example: 1111-2222-3333-4444-555566667777 + type: string + name: + description: The name of the deployment rule. + example: My deployment rule + type: string + options: + $ref: '#/components/schemas/DeploymentRulesOptions' + type: + $ref: '#/components/schemas/DeploymentRuleResponseDataAttributesType' + updated_at: + description: The timestamp when the deployment rule was last updated. + format: date-time + type: string + updated_by: + $ref: '#/components/schemas/DeploymentRuleResponseDataAttributesUpdatedBy' + required: + - created_at + - created_by + - dry_run + - gate_id + - name + - options + - type + type: object + UpdateDeploymentRuleParamsDataAttributes: + description: Parameters for updating a deployment rule. + properties: + dry_run: + description: Whether to run this rule in dry-run mode. + example: false + type: boolean + name: + description: The name of the deployment rule. + example: Updated deployment rule + type: string + options: + $ref: '#/components/schemas/DeploymentRulesOptions' + required: + - dry_run + - name + - options + type: object + UpdateDeploymentGateParamsDataAttributes: + description: Attributes for updating a deployment gate. + properties: + dry_run: + description: Whether to run in dry-run mode. + example: false + type: boolean + required: + - dry_run + type: object + DeploymentGatesEvaluationRequestAttributes: + description: |- + Attributes for a deployment gate evaluation request. + When `configuration` is provided, rules are evaluated inline from that configuration. + When omitted, rules are resolved from the preconfigured gate for the given service and environment. + properties: + configuration: + $ref: '#/components/schemas/DeploymentGatesEvaluationConfiguration' + env: + description: The environment of the deployment. + example: staging + type: string + identifier: + default: default + description: The identifier of the deployment gate. Defaults to "default". + example: pre-deploy + type: string + primary_tag: + description: A primary tag to scope APM Faulty Deployment Detection rules. + example: region:us-east-1 + type: string + service: + description: The service being deployed. + example: transaction-backend + type: string + version: + description: The version of the deployment. Required for APM Faulty Deployment Detection rules. + example: v1.2.3 + type: string + required: + - env + - service + type: object + DeploymentGatesEvaluationRequestDataType: + default: deployment_gates_evaluation_request + description: JSON:API type for a deployment gate evaluation request. + enum: + - deployment_gates_evaluation_request + example: deployment_gates_evaluation_request + type: string + x-enum-varnames: + - DEPLOYMENT_GATES_EVALUATION_REQUEST + DeploymentGatesEvaluationResponseAttributes: + description: Attributes for a deployment gate evaluation response. + properties: + evaluation_id: + description: The unique identifier of the gate evaluation. + example: e9d2f04f-4f4b-494b-86e5-52f03e10c8e9 + type: string + required: + - evaluation_id + type: object + DeploymentGatesEvaluationResponseDataType: + default: deployment_gates_evaluation_response + description: JSON:API type for a deployment gate evaluation response. + enum: + - deployment_gates_evaluation_response + example: deployment_gates_evaluation_response + type: string + x-enum-varnames: + - DEPLOYMENT_GATES_EVALUATION_RESPONSE + DeploymentGatesEvaluationResultResponseAttributes: + description: Attributes for a deployment gate evaluation result response. + properties: + dry_run: + description: Whether the gate was evaluated in dry-run mode. + example: false + type: boolean + evaluation_id: + description: The unique identifier of the gate evaluation. + example: e9d2f04f-4f4b-494b-86e5-52f03e10c8e9 + type: string + evaluation_url: + description: A URL to view the evaluation details in the Datadog UI. + example: https://app.datadoghq.com/ci/deployment-gates/evaluations?index=cdgates&query=level%3Agate+%40evaluation_id%3Ae9d2f04f-4f4b-494b-86e5-52f03e10c8e9 + type: string + gate_id: + description: The unique identifier of the deployment gate. + example: e140302e-0cba-40d2-978c-6780647f8f1c + format: uuid + type: string + gate_status: + $ref: '#/components/schemas/DeploymentGatesEvaluationResultResponseAttributesGateStatus' + rules: + description: The results of individual rule evaluations. + items: + $ref: '#/components/schemas/DeploymentGatesRuleResponse' + type: array + required: + - dry_run + - evaluation_id + - evaluation_url + - gate_id + - gate_status + - rules + type: object + DeploymentGatesEvaluationResultResponseDataType: + default: deployment_gates_evaluation_result_response + description: JSON:API type for a deployment gate evaluation result response. + enum: + - deployment_gates_evaluation_result_response + example: deployment_gates_evaluation_result_response + type: string + x-enum-varnames: + - DEPLOYMENT_GATES_EVALUATION_RESULT_RESPONSE + DORADeploymentRequestAttributes: + description: Attributes to create a DORA deployment event. + properties: + custom_tags: + $ref: '#/components/schemas/DORACustomTags' + env: + description: Environment name to where the service was deployed. + example: staging + type: string + finished_at: + description: Unix timestamp when the deployment finished. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491984000000000 + format: int64 + type: integer + git: + $ref: '#/components/schemas/DORAGitInfo' + id: + description: Deployment ID. Must be 16-128 characters and contain only alphanumeric characters, hyphens, underscores, periods, and colons (a-z, A-Z, 0-9, -, _, ., :). + type: string + service: + description: Service name. + example: shopist + type: string + started_at: + description: Unix timestamp when the deployment started. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491974000000000 + format: int64 + type: integer + team: + description: Name of the team owning the deployed service. If not provided, this is automatically populated with the team associated with the service in the Service Catalog. + example: backend + type: string + version: + description: Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). + example: v1.12.07 + type: string + required: + - service + - started_at + - finished_at + type: object + DORADeploymentType: + default: dora_deployment + description: JSON:API type for DORA deployment events. + enum: + - dora_deployment + example: dora_deployment + type: string + x-enum-varnames: + - DORA_DEPLOYMENT + JSONAPIErrorItemSource: + description: References to the source of the error. + properties: + header: + description: A string indicating the name of a single request header which caused the error. + example: Authorization + type: string + parameter: + description: A string indicating which URI query parameter caused the error. + example: limit + type: string + pointer: + description: A JSON pointer to the value in the request document that caused the error. + example: /data/attributes/title + type: string + type: object + DORADeploymentPatchByVersionRequestAttributes: + description: Attributes for patching a DORA deployment event identified by service, environment, and version. + properties: + change_failure: + description: Indicates whether the deployment resulted in a change failure. + example: true + type: boolean + env: + description: The environment the deployment was performed in. + example: prod + type: string + remediation: + $ref: '#/components/schemas/DORADeploymentPatchByVersionRemediation' + service: + description: The name of the service that was deployed. + example: my-service + type: string + version: + description: The version deployed. This can be seen in the Service Catalog or in the APM Deployment Tracking. + example: v1.2.3 + type: string + required: + - service + - env + - version + - change_failure + type: object + DORADeploymentPatchRequestDataType: + default: dora_deployment_patch_request + description: JSON:API type for DORA deployment patch request. + enum: + - dora_deployment_patch_request + example: dora_deployment_patch_request + type: string + x-enum-varnames: + - DORA_DEPLOYMENT_PATCH_REQUEST + DORAListDeploymentsRequestAttributes: + description: Attributes to get a list of deployments. + properties: + from: + description: Minimum timestamp for requested events. + example: '2025-01-01T00:00:00Z' + format: date-time + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 500 + format: int32 + maximum: 1000 + type: integer + query: + description: Search query with event platform syntax. + example: service:(shopist OR api-service OR payment-service) env:(production OR staging) team:(backend OR platform) + type: string + sort: + description: Sort order (prefixed with `-` for descending). + example: '-finished_at' + type: string + to: + description: Maximum timestamp for requested events. + example: '2025-01-31T23:59:59Z' + format: date-time + type: string + type: object + DORAListDeploymentsRequestDataType: + default: dora_deployments_list_request + description: The definition of `DORAListDeploymentsRequestDataType` object. + enum: + - dora_deployments_list_request + example: dora_deployments_list_request + type: string + x-enum-varnames: + - DORA_DEPLOYMENTS_LIST_REQUEST + DORADeploymentObjectAttributes: + description: The attributes of the deployment event. + properties: + custom_tags: + $ref: '#/components/schemas/DORACustomTags' + env: + description: Environment name to where the service was deployed. + example: production + type: string + finished_at: + description: The time when the deployment finished. + example: '2023-08-31T14:26:24Z' + format: date-time + type: string + git: + $ref: '#/components/schemas/DORAGitInfoResponse' + service: + description: Service name. + example: shopist + type: string + started_at: + description: The time when the deployment started. + example: '2023-08-31T14:26:14Z' + format: date-time + type: string + team: + description: Name of the team owning the deployed service. + example: backend + type: string + version: + description: Version to correlate with APM Deployment Tracking. + example: v1.12.07 + type: string + required: + - service + - started_at type: object - HTTPCIAppErrors: - description: Errors occurred. + DORADeploymentPatchRequestAttributes: + description: Attributes for patching a DORA deployment event. properties: - errors: - description: Structured errors. - items: - $ref: '#/components/schemas/HTTPCIAppError' - type: array + change_failure: + description: Indicates whether the deployment resulted in a change failure. + example: true + type: boolean + remediation: + $ref: '#/components/schemas/DORADeploymentPatchRemediation' type: object - CIAppPipelinesAggregateRequest: - description: >- - The object sent with the request to retrieve aggregation buckets of - pipeline events from your organization. + DORAFailureRequestAttributes: + description: Attributes to create a DORA incident event. properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/CIAppCompute' - type: array - filter: - $ref: '#/components/schemas/CIAppPipelinesQueryFilter' - group_by: - description: The rules for the group-by. + custom_tags: + $ref: '#/components/schemas/DORACustomTags' + env: + description: Environment name that was impacted by the incident. + example: staging + type: string + finished_at: + description: Unix timestamp when the incident finished. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491984000000000 + format: int64 + type: integer + git: + $ref: '#/components/schemas/DORAGitInfo' + id: + description: Incident ID. Must be 16-128 characters and contain only alphanumeric characters, hyphens, underscores, periods, and colons (a-z, A-Z, 0-9, -, _, ., :). + type: string + name: + description: Incident name. + example: Webserver is down failing all requests. + type: string + services: + description: Service names impacted by the incident. If possible, use names registered in the Service Catalog. Required when the team field is not provided. + example: + - shopist items: - $ref: '#/components/schemas/CIAppPipelinesGroupBy' + description: A service name impacted by the incident. + type: string type: array - options: - $ref: '#/components/schemas/CIAppQueryOptions' + severity: + description: Incident severity. + example: High + type: string + started_at: + description: Unix timestamp when the incident started. It must be in nanoseconds, milliseconds, or seconds. + example: 1693491974000000000 + format: int64 + type: integer + team: + description: Name of the team owning the services impacted. If possible, use team handles registered in Datadog. Required when the services field is not provided. + example: backend + type: string + version: + description: Version to correlate with [APM Deployment Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). + example: v1.12.07 + type: string + required: + - started_at type: object - CIAppPipelinesAnalyticsAggregateResponse: - description: The response object for the pipeline events aggregate API endpoint. + DORAFailureType: + default: dora_failure + description: JSON:API type for DORA incident events. + enum: + - dora_failure + example: dora_failure + type: string + x-enum-varnames: + - DORA_FAILURE + DORAListFailuresRequestAttributes: + description: Attributes to get a list of incidents. properties: - data: - $ref: '#/components/schemas/CIAppPipelinesAggregationBucketsResponse' - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadata' + from: + description: Minimum timestamp for requested events. + example: '2025-01-01T00:00:00Z' + format: date-time + type: string + limit: + default: 10 + description: Maximum number of events in the response. + example: 500 + format: int32 + maximum: 1000 + type: integer + query: + description: Search query with event platform syntax. + example: severity:(SEV-1 OR SEV-2) env:(production OR staging) service:(shopist OR api-service OR payment-service) team:(backend OR platform OR payments) + type: string + sort: + description: Sort order (prefixed with `-` for descending). + example: '-started_at' + type: string + to: + description: Maximum timestamp for requested events. + example: '2025-01-31T23:59:59Z' + format: date-time + type: string type: object - CIAppSort: - description: Sort parameters when querying events. + DORAListFailuresRequestDataType: + default: dora_failures_list_request + description: The definition of `DORAListFailuresRequestDataType` object. enum: - - timestamp - - '-timestamp' + - dora_failures_list_request + example: dora_failures_list_request type: string x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - CIAppPipelineEventsResponse: - description: >- - Response object with all pipeline events matching the request and - pagination information. + - DORA_FAILURES_LIST_REQUEST + DORAIncidentObjectAttributes: + description: The attributes of the incident event. properties: - data: - description: Array of events matching the request. + custom_tags: + $ref: '#/components/schemas/DORACustomTags' + env: + description: Environment name that was impacted by the incident. + example: production + type: string + finished_at: + description: The time when the incident finished. + example: '2023-08-31T14:26:24Z' + format: date-time + type: string + git: + $ref: '#/components/schemas/DORAGitInfo' + name: + description: Incident name. + example: Database outage + type: string + services: + description: Service names impacted by the incident. + example: + - shopist items: - $ref: '#/components/schemas/CIAppPipelineEvent' + description: A service name impacted by the incident. + type: string type: array - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppPipelineEventsRequest: - description: The request for a pipelines search. - properties: - filter: - $ref: '#/components/schemas/CIAppPipelinesQueryFilter' - options: - $ref: '#/components/schemas/CIAppQueryOptions' - page: - $ref: '#/components/schemas/CIAppQueryPageOptions' - sort: - $ref: '#/components/schemas/CIAppSort' + severity: + description: Incident severity. + example: SEV-1 + type: string + started_at: + description: The time when the incident started. + example: '2023-08-31T14:26:14Z' + format: date-time + type: string + team: + description: Name of the team owning the services impacted. + example: backend + type: string + version: + description: Version to correlate with APM Deployment Tracking. + example: v1.12.07 + type: string type: object - CIAppTestsAggregateRequest: - description: >- - The object sent with the request to retrieve aggregation buckets of test - events from your organization. + FeatureFlagListItemAttributes: + description: Attributes of a feature flag in list responses. properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. + archived_at: + description: The timestamp when the feature flag was archived. + example: '2023-01-01T00:00:00Z' + format: date-time + nullable: true + type: string + created_at: + description: The timestamp when the feature flag was created. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + created_by: + description: The ID of the user who created the feature flag. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + description: + description: The description of the feature flag. + example: This is an example feature flag for demonstration + type: string + distribution_channel: + description: Distribution channel for the feature flag. + example: ALL + type: string + feature_flag_environments: + description: Environment-specific settings for the feature flag. items: - $ref: '#/components/schemas/CIAppCompute' + $ref: '#/components/schemas/FeatureFlagEnvironmentListItem' type: array - filter: - $ref: '#/components/schemas/CIAppTestsQueryFilter' - group_by: - description: The rules for the group-by. + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + key: + description: The unique key of the feature flag. + example: feature-flag-abc123 + type: string + last_updated_by: + description: The ID of the user who last updated the feature flag. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + name: + description: The name of the feature flag. + example: Feature Flag ABC123 + type: string + require_approval: + description: Indicates whether this feature flag requires approval for changes. + example: false + type: boolean + staleness_status: + description: Indicates the staleness status of the feature flag. + example: ACTIVE + type: string + tags: + description: Tags associated with the feature flag. + example: [] items: - $ref: '#/components/schemas/CIAppTestsGroupBy' + description: A tag associated with the feature flag. + type: string type: array - options: - $ref: '#/components/schemas/CIAppQueryOptions' - type: object - CIAppTestsAnalyticsAggregateResponse: - description: The response object for the test events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/CIAppTestsAggregationBucketsResponse' - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppTestEventsResponse: - description: >- - Response object with all test events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. + updated_at: + description: The timestamp when the feature flag was last updated. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + value_type: + $ref: '#/components/schemas/ValueType' + variants: + description: The variants of the feature flag. items: - $ref: '#/components/schemas/CIAppTestEvent' + $ref: '#/components/schemas/Variant' type: array - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppTestEventsRequest: - description: The request for a tests search. - properties: - filter: - $ref: '#/components/schemas/CIAppTestsQueryFilter' - options: - $ref: '#/components/schemas/CIAppQueryOptions' - page: - $ref: '#/components/schemas/CIAppQueryPageOptions' - sort: - $ref: '#/components/schemas/CIAppSort' - type: object - DORADeploymentRequest: - description: Request to create a DORA deployment event. - properties: - data: - $ref: '#/components/schemas/DORADeploymentRequestData' required: - - data + - key + - name + - description + - value_type + - variants type: object - DORADeploymentResponse: - description: Response after receiving a DORA deployment event. + CreateFeatureFlagDataType: + description: The resource type. + enum: + - feature-flags + example: feature-flags + type: string + x-enum-varnames: + - FEATURE_FLAGS + FeatureFlagsPaginationMetaPage: + description: Pagination metadata for feature flags list responses. properties: - data: - $ref: '#/components/schemas/DORADeploymentResponseData' - required: - - data + total_count: + description: Total number of items. + example: 100 + format: int64 + type: integer + total_filtered_count: + description: Total number of items matching the filter. + example: 25 + format: int64 + type: integer type: object - JSONAPIErrorResponse: - description: API error response. + CreateFeatureFlagAttributes: + description: Attributes for creating a new feature flag. properties: - errors: - description: A list of errors. + default_variant_key: + description: The key of the default variant. + example: variant-abc123 + nullable: true + type: string + description: + description: The description of the feature flag. + example: This is an example feature flag for demonstration + type: string + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + key: + description: The unique key of the feature flag. + example: feature-flag-abc123 + type: string + name: + description: The name of the feature flag. + example: Feature Flag ABC123 + type: string + value_type: + $ref: '#/components/schemas/ValueType' + variants: + description: The variants of the feature flag. items: - $ref: '#/components/schemas/JSONAPIErrorItem' + $ref: '#/components/schemas/CreateVariant' type: array required: - - errors + - key + - name + - description + - value_type + - variants type: object - DORAListDeploymentsRequest: - description: Request to get a list of deployments. + FeatureFlagAttributes: + description: Attributes of a feature flag. properties: - data: - $ref: '#/components/schemas/DORAListDeploymentsRequestData' + archived_at: + description: The timestamp when the feature flag was archived. + example: '2023-01-01T00:00:00Z' + format: date-time + nullable: true + type: string + created_at: + description: The timestamp when the feature flag was created. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + created_by: + description: The ID of the user who created the feature flag. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + description: + description: The description of the feature flag. + example: This is an example feature flag for demonstration + type: string + distribution_channel: + description: Distribution channel for the feature flag. + example: ALL + type: string + feature_flag_environments: + description: Environment-specific settings for the feature flag. + items: + $ref: '#/components/schemas/FeatureFlagEnvironment' + type: array + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + key: + description: The unique key of the feature flag. + example: feature-flag-abc123 + type: string + last_updated_by: + description: The ID of the user who last updated the feature flag. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + name: + description: The name of the feature flag. + example: Feature Flag ABC123 + type: string + require_approval: + description: Indicates whether this feature flag requires approval for changes. + example: false + type: boolean + staleness_status: + description: Indicates the whether a feature flag is stale or not. + example: ACTIVE + type: string + tags: + description: Tags associated with the feature flag. + example: [] + items: + description: A tag associated with the feature flag. + type: string + type: array + updated_at: + description: The timestamp when the feature flag was last updated. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + value_type: + $ref: '#/components/schemas/ValueType' + variants: + description: The variants of the feature flag. + items: + $ref: '#/components/schemas/Variant' + type: array required: - - data + - key + - name + - description + - value_type + - variants type: object - DORAListResponse: - description: Response for the DORA list endpoints. + EnvironmentAttributes: + description: Attributes of an environment. properties: - data: - description: The list of DORA events. + created_at: + description: The timestamp when the environment was created. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + description: + description: The description of the environment. + example: Test environment XYZ789 + nullable: true + type: string + is_production: + description: Indicates whether this is a production environment. + example: false + type: boolean + key: + description: The unique key of the environment. + example: env-search-term + type: string + name: + description: The name of the environment. + example: env-search-term + type: string + queries: + description: List of queries to define the environment scope. + example: + - staging + - test items: - $ref: '#/components/schemas/DORAEvent' + description: A query string used to match the environment scope. + type: string + minItems: 1 type: array + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + updated_at: + description: The timestamp when the environment was last updated. + example: '2023-01-01T00:00:00Z' + format: date-time + type: string + required: + - name type: object - DORAFetchResponse: - description: Response for the DORA fetch endpoints. + CreateEnvironmentDataType: + description: The resource type. + enum: + - environments + example: environments + type: string + x-enum-varnames: + - ENVIRONMENTS + EnvironmentsPaginationMetaPage: + description: Pagination metadata for environments list responses. properties: - data: - $ref: '#/components/schemas/DORAEvent' + total_count: + description: Total number of items. + example: 10 + format: int64 + type: integer + total_filtered_count: + description: Total number of items matching the filter. + example: 5 + format: int64 + type: integer type: object - DORAFailureRequest: - description: Request to create a DORA failure event. + CreateEnvironmentAttributes: + description: Attributes for creating a new environment. properties: - data: - $ref: '#/components/schemas/DORAFailureRequestData' + is_production: + default: false + description: Indicates whether this is a production environment. + example: false + type: boolean + name: + description: The name of the environment. + example: env-search-term + type: string + queries: + description: List of queries to define the environment scope. + example: + - staging + - test + items: + description: A query string used to match the environment scope. + type: string + minItems: 1 + type: array + require_feature_flag_approval: + default: false + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean required: - - data + - name + - queries type: object - DORAFailureResponse: - description: Response after receiving a DORA failure event. + UpdateEnvironmentAttributes: + description: Attributes for updating an environment. properties: - data: - $ref: '#/components/schemas/DORAFailureResponseData' - required: - - data + is_production: + description: Indicates whether this is a production environment. + example: false + type: boolean + name: + description: The name of the environment. + example: Environment XYZ789 + type: string + queries: + description: List of queries to define the environment scope. + example: + - staging + - test + items: + description: A query string used to match the environment scope. + type: string + minItems: 1 + type: array + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: true + type: boolean type: object - DORAListFailuresRequest: - description: Request to get a list of failures. + UpdateEnvironmentDataType: + description: The resource type. + enum: + - environments + example: environments + type: string + x-enum-varnames: + - ENVIRONMENTS + AllocationExposureSchedule: + description: Progressive release details for a targeting rule allocation. properties: - data: - $ref: '#/components/schemas/DORAListFailuresRequestData' + absolute_start_time: + description: The absolute UTC start time for this schedule. + example: '2025-06-13T12:00:00Z' + format: date-time + nullable: true + type: string + allocation_id: + description: The targeting rule allocation ID this progressive rollout belongs to. + example: 550e8400-e29b-41d4-a716-446655440020 + format: uuid + type: string + control_variant_id: + description: The control variant ID used for experiment comparisons. + example: 550e8400-e29b-41d4-a716-446655440012 + nullable: true + type: string + created_at: + description: The timestamp when the schedule was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + guardrail_triggered_action: + description: Last guardrail action triggered for this schedule. + example: PAUSE + nullable: true + type: string + guardrail_triggers: + description: Guardrail trigger records for this schedule. + items: + $ref: '#/components/schemas/AllocationExposureGuardrailTrigger' + type: array + id: + description: The unique identifier of the progressive rollout. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + rollout_options: + $ref: '#/components/schemas/RolloutOptions' + rollout_steps: + description: Ordered progression steps for exposure. + items: + $ref: '#/components/schemas/AllocationExposureRolloutStep' + type: array + updated_at: + description: The timestamp when the schedule was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string required: - - data + - allocation_id + - rollout_options + - rollout_steps + - guardrail_triggers + - created_at + - updated_at + type: object + AllocationExposureScheduleDataType: + description: The resource type for progressive rollout schedules. + enum: + - allocation_exposure_schedules + example: allocation_exposure_schedules + type: string + x-enum-varnames: + - ALLOCATION_EXPOSURE_SCHEDULES + UpdateFeatureFlagAttributes: + description: Attributes for updating a feature flag. + properties: + description: + description: The description of the feature flag. + example: Updated description for feature flag XYZ789 + type: string + json_schema: + description: JSON schema for validation when value_type is JSON. + example: '{"type": "object", "properties": {"enabled": {"type": "boolean"}}}' + nullable: true + type: string + name: + description: The name of the feature flag. + example: Updated Feature Flag XYZ789 + type: string type: object - CreateWorkflowRequest: - description: A request object for creating a new workflow. - example: - data: - attributes: - description: A sample workflow. - name: Example Workflow - published: true - spec: - annotations: - - display: - bounds: - height: 150 - width: 300 - x: -375 - 'y': -0.5 - id: 99999999-9999-9999-9999-999999999999 - markdownTextAnnotation: - text: Example annotation. - connectionEnvs: - - connections: - - connectionId: 11111111-1111-1111-1111-111111111111 - label: INTEGRATION_DATADOG - env: default - handle: my-handle - inputSchema: - parameters: - - defaultValue: default - name: input - type: STRING - outputSchema: - parameters: - - name: output - type: ARRAY_OBJECT - value: '{{ Steps.Step1 }}' - steps: - - actionId: com.datadoghq.dd.monitor.listMonitors - connectionLabel: INTEGRATION_DATADOG - name: Step1 - outboundEdges: - - branchName: main - nextStepName: Step2 - parameters: - - name: tags - value: service:monitoring - - actionId: com.datadoghq.core.noop - name: Step2 - triggers: - - monitorTrigger: - rateLimit: - count: 1 - interval: 3600s - startStepNames: - - Step1 - - githubWebhookTrigger: {} - startStepNames: - - Step1 - tags: - - team:infra - - service:monitoring - - foo:bar - type: workflows + UpdateFeatureFlagDataType: + description: The resource type. + enum: + - feature-flags + example: feature-flags + type: string + x-enum-varnames: + - FEATURE_FLAGS + UpsertAllocationRequest: + description: Request to create or update a targeting rule (allocation) for a feature flag environment. properties: - data: - $ref: '#/components/schemas/WorkflowData' + experiment_id: + description: The experiment ID for experiment-linked allocations. + example: 550e8400-e29b-41d4-a716-446655440030 + nullable: true + type: string + exposure_schedule: + $ref: '#/components/schemas/ExposureScheduleRequest' + guardrail_metrics: + description: Guardrail metrics used to monitor and auto-pause or abort. + items: + $ref: '#/components/schemas/GuardrailMetricRequest' + type: array + id: + description: The unique identifier of the targeting rule allocation. + example: 550e8400-e29b-41d4-a716-446655440020 + format: uuid + type: string + key: + description: The unique key of the targeting rule allocation. + example: prod-rollout + type: string + name: + description: The display name of the targeting rule. + example: Production Rollout + type: string + targeting_rules: + description: Targeting rules that determine audience eligibility. + items: + $ref: '#/components/schemas/TargetingRuleRequest' + type: array + type: + $ref: '#/components/schemas/AllocationType' + variant_weights: + description: Variant distribution weights. + items: + $ref: '#/components/schemas/VariantWeightRequest' + type: array required: - - data + - name + - key + - type type: object - CreateWorkflowResponse: - description: The response object after creating a new workflow. + AllocationDataType: + description: The resource type. + enum: + - allocations + example: allocations + type: string + x-enum-varnames: + - ALLOCATIONS + Allocation: + description: Targeting rule (allocation) details for a feature flag environment. properties: - data: - $ref: '#/components/schemas/WorkflowData' + created_at: + description: The timestamp when the targeting rule allocation was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + environment_ids: + description: Environment IDs associated with this targeting rule allocation. + example: + - 550e8400-e29b-41d4-a716-446655440001 + items: + description: Environment ID linked to this targeting rule allocation. + format: uuid + type: string + type: array + experiment_id: + description: The experiment ID linked to this targeting rule allocation. + example: 550e8400-e29b-41d4-a716-446655440030 + nullable: true + type: string + exposure_schedule: + $ref: '#/components/schemas/AllocationExposureSchedule' + guardrail_metrics: + description: Guardrail metrics associated with this targeting rule allocation. + items: + $ref: '#/components/schemas/GuardrailMetric' + type: array + id: + description: The unique identifier of the targeting rule allocation. + example: 550e8400-e29b-41d4-a716-446655440020 + format: uuid + type: string + key: + description: The unique key of the targeting rule allocation. + example: prod-rollout + type: string + name: + description: The display name of the targeting rule. + example: Production Rollout + type: string + order_position: + description: Sort order position within the environment. + example: 0 + format: int64 + type: integer + targeting_rules: + description: Conditions associated with this targeting rule allocation. + items: + $ref: '#/components/schemas/TargetingRule' + type: array + type: + $ref: '#/components/schemas/AllocationType' + updated_at: + description: The timestamp when the targeting rule allocation was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + variant_weights: + description: Weighted variant assignments for this targeting rule allocation. + items: + $ref: '#/components/schemas/VariantWeight' + type: array required: - - data + - name + - key + - targeting_rules + - variant_weights + - order_position + - environment_ids + - type + - guardrail_metrics + - created_at + - updated_at type: object - GetWorkflowResponse: - description: The response object after getting a workflow. + UpdateFlakyTestsRequestAttributes: + description: Attributes for updating flaky test states. properties: - data: - $ref: '#/components/schemas/WorkflowData' + tests: + description: List of flaky tests to update. + items: + $ref: '#/components/schemas/UpdateFlakyTestsRequestTest' + type: array + required: + - tests type: object - UpdateWorkflowRequest: - description: A request object for updating an existing workflow. - example: - data: - attributes: - description: A sample workflow. - name: Example Workflow - published: true - spec: - annotations: - - display: - bounds: - height: 150 - width: 300 - x: -375 - 'y': -0.5 - id: 99999999-9999-9999-9999-999999999999 - markdownTextAnnotation: - text: Example annotation. - connectionEnvs: - - connections: - - connectionId: 11111111-1111-1111-1111-111111111111 - label: INTEGRATION_DATADOG - env: default - handle: my-handle - inputSchema: - parameters: - - defaultValue: default - name: input - type: STRING - outputSchema: - parameters: - - name: output - type: ARRAY_OBJECT - value: '{{ Steps.Step1 }}' - steps: - - actionId: com.datadoghq.dd.monitor.listMonitors - connectionLabel: INTEGRATION_DATADOG - name: Step1 - outboundEdges: - - branchName: main - nextStepName: Step2 - parameters: - - name: tags - value: service:monitoring - - actionId: com.datadoghq.core.noop - name: Step2 - triggers: - - monitorTrigger: - rateLimit: - count: 1 - interval: 3600s - startStepNames: - - Step1 - - githubWebhookTrigger: {} - startStepNames: - - Step1 - tags: - - team:infra - - service:monitoring - - foo:bar - id: 22222222-2222-2222-2222-222222222222 - type: workflows + UpdateFlakyTestsRequestDataType: + description: The definition of `UpdateFlakyTestsRequestDataType` object. + enum: + - update_flaky_test_state_request + example: update_flaky_test_state_request + type: string + x-enum-varnames: + - UPDATE_FLAKY_TEST_STATE_REQUEST + UpdateFlakyTestsResponseAttributes: + description: Attributes for the update flaky test state response. properties: - data: - $ref: '#/components/schemas/WorkflowDataUpdate' + has_errors: + description: '`True` if any errors occurred during the update operations. `False` if all tests succeeded to be updated.' + example: true + type: boolean + results: + description: Results of the update operation for each test. + items: + $ref: '#/components/schemas/UpdateFlakyTestsResponseResult' + type: array required: - - data + - has_errors + - results type: object - UpdateWorkflowResponse: - description: The response object after updating a workflow. + UpdateFlakyTestsResponseDataType: + description: The definition of `UpdateFlakyTestsResponseDataType` object. + enum: + - update_flaky_test_state_response + type: string + x-enum-varnames: + - UPDATE_FLAKY_TEST_STATE_RESPONSE + FlakyTestsSearchRequestAttributes: + description: Attributes for the flaky tests search request. properties: - data: - $ref: '#/components/schemas/WorkflowDataUpdate' + filter: + $ref: '#/components/schemas/FlakyTestsSearchFilter' + page: + $ref: '#/components/schemas/FlakyTestsSearchPageOptions' + sort: + $ref: '#/components/schemas/FlakyTestsSearchSort' type: object - WorkflowListInstancesResponse: - additionalProperties: {} - description: Response returned when listing workflow instances. + FlakyTestsSearchRequestDataType: + description: The definition of `FlakyTestsSearchRequestDataType` object. + enum: + - search_flaky_tests_request + type: string + x-enum-varnames: + - SEARCH_FLAKY_TESTS_REQUEST + FlakyTestAttributes: + description: Attributes of a flaky test. properties: - data: - description: A list of workflow instances. + attempt_to_fix_id: + description: |- + Unique identifier for the attempt to fix this flaky test. Use this ID in the Git commit message in order to trigger the attempt to fix workflow. + + When the workflow is triggered the test is automatically retried by the tracer a certain number of configurable times. When all retries pass, the test is automatically marked as fixed in Flaky Test Management. + Test runs are tagged with @test.test_management.attempt_to_fix_passed and @test.test_management.is_attempt_to_fix when the attempt to fix workflow is triggered. + example: I42TEO + type: string + codeowners: + description: The name of the test's code owners as inferred from the repository configuration. + example: + - '@foo' + - '@bar' items: - $ref: '#/components/schemas/WorkflowInstanceListItem' + description: A code owner of the test as inferred from the repository configuration. + type: string type: array - meta: - $ref: '#/components/schemas/WorkflowListInstancesResponseMeta' + envs: + description: List of environments where this test has been flaky. + example: prod + items: + description: An environment name where this test has been flaky. + type: string + type: array + first_flaked_branch: + description: The branch name where the test exhibited flakiness for the first time. + example: main + type: string + first_flaked_sha: + description: The commit SHA where the test exhibited flakiness for the first time. + example: 0c6be03165b7f7ffe96e076ffb29afb2825616c3 + type: string + first_flaked_ts: + description: Unix timestamp when the test exhibited flakiness for the first time. + example: 1757688149 + format: int64 + type: integer + flaky_category: + description: The category of a flaky test. + example: Timeout + nullable: true + type: string + flaky_state: + $ref: '#/components/schemas/FlakyTestAttributesFlakyState' + history: + description: |- + Chronological history of status changes for this flaky test, ordered from most recent to oldest. + Includes state transitions like new -> quarantined -> fixed, along with the associated commit SHA when available. + example: + - commit_sha: abc123def456 + policy_id: ftm_policy.quarantine.failure_rate + policy_meta: + config: + failure_rate: 0.1 + required_runs: 100 + failure_rate: 0.25 + total_runs: 200 + status: quarantined + timestamp: 1704067200000 + - commit_sha: '' + policy_id: unknown + policy_meta: null + status: new + timestamp: 1703980800000 + items: + $ref: '#/components/schemas/FlakyTestHistory' + type: array + impact_level: + $ref: '#/components/schemas/FlakyTestImpactLevel' + nullable: true + impact_score: + description: A score from 0 to 1 indicating the impact of this flaky test, based on factors such as how often it fails and how many pipelines it affects. + example: 0.78 + format: double + maximum: 1 + minimum: 0 + nullable: true + type: number + last_flaked_branch: + description: The branch name where the test exhibited flakiness for the last time. + example: main + type: string + last_flaked_sha: + description: The commit SHA where the test exhibited flakiness for the last time. + example: 0c6be03165b7f7ffe96e076ffb29afb2825616c3 + type: string + last_flaked_ts: + description: Unix timestamp when the test exhibited flakiness for the last time. + example: 1757688149 + format: int64 + type: integer + module: + description: |- + The name of the test module. The definition of module changes slightly per language: + - In .NET, a test module groups every test that is run under the same unit test project. + - In Swift, a test module groups every test that is run for a given bundle. + - In JavaScript, the test modules map one-to-one to test sessions. + - In Java, a test module groups every test that is run by the same Maven Surefire/Failsafe or Gradle Test task execution. + - In Python, a test module groups every test that is run under the same `.py` file as part of a test suite, which is typically managed by a framework like `unittest` or `pytest`. + - In Ruby, a test module groups every test that is run within the same test file, which is typically managed by a framework like `RSpec` or `Minitest`. + example: TestModule + nullable: true + type: string + name: + description: The test name. A concise name for a test case. Defined in the test itself. + example: TestName + type: string + pipeline_stats: + $ref: '#/components/schemas/FlakyTestPipelineStats' + nullable: true + services: + description: |- + List of test service names where this test has been flaky. + + A test service is a group of tests associated with a project or repository. It contains all the individual tests for your code, optionally organized into test suites, which are like folders for your tests. + example: + - foo + - bar + items: + description: A test service name where this test has been flaky. + type: string + type: array + suite: + description: The name of the test suite. A group of tests exercising the same unit of code depending on your language and testing framework. + example: TestSuite + type: string + test_run_metadata: + $ref: '#/components/schemas/FlakyTestRunMetadata' + test_stats: + $ref: '#/components/schemas/FlakyTestStats' type: object - WorkflowInstanceCreateRequest: - description: Request used to create a workflow instance. + FlakyTestType: + description: The type of the flaky test from Flaky Test Management. + enum: + - flaky_test + type: string + x-enum-varnames: + - FLAKY_TEST + FlakyTestsPagination: + description: Pagination metadata for flaky tests. properties: - meta: - $ref: '#/components/schemas/WorkflowInstanceCreateMeta' + next_page: + description: Cursor for the next page of results. + nullable: true + type: string type: object - WorkflowInstanceCreateResponse: - additionalProperties: {} - description: Response returned upon successful workflow instance creation. + WorkflowListItemAttributes: + description: Attributes of a workflow returned in a list response. properties: - data: - $ref: '#/components/schemas/WorkflowInstanceCreateResponseData' + createdAt: + description: When the workflow was created. + format: date-time + readOnly: true + type: string + description: + description: Description of the workflow. + type: string + name: + description: Name of the workflow. + example: My Workflow + type: string + published: + description: Whether the workflow is published. Unpublished workflows can only be run manually. Automatic triggers such as Schedule do not fire until the workflow is published. + type: boolean + spec: + $ref: '#/components/schemas/Spec' + nullable: true + tags: + description: Tags of the workflow. + items: + description: A tag string in `key:value` format. + type: string + type: array + updatedAt: + description: When the workflow was last updated. + format: date-time + readOnly: true + type: string + required: + - name type: object - WorklflowGetInstanceResponse: - additionalProperties: {} - description: The state of the given workflow instance. + WorkflowDataRelationships: + description: The definition of `WorkflowDataRelationships` object. properties: - data: - $ref: '#/components/schemas/WorklflowGetInstanceResponseData' + creator: + $ref: '#/components/schemas/WorkflowUserRelationship' + owner: + $ref: '#/components/schemas/WorkflowUserRelationship' + readOnly: true type: object - WorklflowCancelInstanceResponse: - description: Information about the canceled instance. + WorkflowDataType: + description: The definition of `WorkflowDataType` object. + enum: + - workflows + example: workflows + type: string + x-enum-varnames: + - WORKFLOWS + ListWorkflowsResponseMetaPage: + description: Pagination metadata for a List Workflows response. properties: - data: - $ref: '#/components/schemas/WorklflowCancelInstanceResponseData' + totalCount: + description: The total number of workflows in the organization. + format: int64 + type: integer + totalFilteredCount: + description: The total number of workflows matching the applied filters. + format: int64 + type: integer type: object - CIAppCreatePipelineEventRequestDataSingleOrArray: - description: Data of the pipeline events to create. - oneOf: - - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' - - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataArray' - HTTPCIAppError: - description: List of errors. + WorkflowDataAttributes: + description: The definition of `WorkflowDataAttributes` object. properties: - detail: - description: Error message. - example: Malformed payload + createdAt: + description: When the workflow was created. + format: date-time + readOnly: true type: string - status: - description: Error code. - example: '400' + description: + description: Description of the workflow. type: string - title: - description: Error title. - example: Bad Request + name: + description: Name of the workflow. + example: '' type: string - type: object - CIAppCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/CIAppAggregationFunction' - interval: - description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points. - example: 5m + published: + description: Set the workflow to published or unpublished. Workflows in an unpublished state will only be executable via manual runs. Automatic triggers such as Schedule will not execute the workflow until it is published. + type: boolean + spec: + $ref: '#/components/schemas/Spec' + tags: + description: Tags of the workflow. + items: + description: A tag string in `key:value` format. + type: string + type: array + updatedAt: + description: When the workflow was last updated. + format: date-time + readOnly: true type: string - metric: - description: The metric to use. - example: '@duration' + webhookSecret: + description: If a Webhook trigger is defined on this workflow, a webhookSecret is required and should be provided here. type: string - type: - $ref: '#/components/schemas/CIAppComputeType' + writeOnly: true required: - - aggregation + - name + - spec type: object - CIAppPipelinesQueryFilter: - description: The search and filter query settings. + WorkflowDataUpdateAttributes: + description: The definition of `WorkflowDataUpdateAttributes` object. properties: - from: - default: now-15m - description: >- - The minimum time for the requested events; supports date, math, and - regular timestamps (in milliseconds). - example: now-15m + createdAt: + description: When the workflow was created. + format: date-time + readOnly: true type: string - query: - default: '*' - description: The search query following the CI Visibility Explorer search syntax. - example: '@ci.provider.name:github AND @ci.status:error' + description: + description: Description of the workflow. type: string - to: - default: now - description: >- - The maximum time for the requested events, supports date, math, and - regular timestamps (in milliseconds). - example: now + name: + description: Name of the workflow. type: string - type: object - CIAppPipelinesGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@ci.status' + published: + description: Set the workflow to published or unpublished. Workflows in an unpublished state will only be executable via manual runs. Automatic triggers such as Schedule will not execute the workflow until it is published. + type: boolean + spec: + $ref: '#/components/schemas/Spec' + tags: + description: Tags of the workflow. + items: + description: A tag string in `key:value` format. + type: string + type: array + updatedAt: + description: When the workflow was last updated. + format: date-time + readOnly: true type: string - histogram: - $ref: '#/components/schemas/CIAppGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/CIAppGroupByMissing' - sort: - $ref: '#/components/schemas/CIAppAggregateSort' - total: - $ref: '#/components/schemas/CIAppGroupByTotal' - required: - - facet + webhookSecret: + description: If a Webhook trigger is defined on this workflow, a webhookSecret is required and should be provided here. + type: string + writeOnly: true type: object - CIAppQueryOptions: - description: >- - Global query options that are used during the query. - - Only supply timezone or time offset, not both. Otherwise, the query - fails. + WorkflowListInstancesResponseMetaPage: + additionalProperties: {} + description: Page information for the list instances response. properties: - time_offset: - description: The time offset (in seconds) to apply to the query. + totalCount: + description: The total count of items. format: int64 type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - CIAppPipelinesAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/CIAppPipelinesBucketResponse' - type: array type: object - CIAppResponseLinks: - description: Links attributes. + WorklflowGetInstanceResponseDataAttributes: + additionalProperties: {} + description: The attributes of the instance response data. properties: - next: - description: >- - Link for the next set of results. The request can also be made using - the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/ci/tests/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + id: + description: The id of the instance. type: string type: object - CIAppResponseMetadata: - description: The metadata associated with a request. + CIAppGitHubAccountRepository: + description: A GitHub repository within a GitHub account, and its CI Visibility opt-in status. properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + enabled: + description: Whether CI Visibility is enabled for this repository. + example: true + type: boolean + name: + description: The repository name. + example: shopist type: string - status: - $ref: '#/components/schemas/CIAppResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. - items: - $ref: '#/components/schemas/CIAppWarning' - type: array type: object - APIErrorResponse: - description: API error response. + CIAppGitHubAccountUpdateRequestRepository: + description: Repository-level opt-in change to apply, identified by name. properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array + enabled: + description: Whether to enable or disable CI Visibility for this repository. + example: true + type: boolean + name: + description: The repository name to update. + example: shopist + minLength: 1 + type: string required: - - errors + - name + - enabled type: object - CIAppPipelineEvent: - description: >- - Object description of a pipeline event after being processed and stored - by Datadog. + CIAppCreatePipelineEventRequestAttributes: + description: Attributes of the pipeline event to create. properties: - attributes: - $ref: '#/components/schemas/CIAppPipelineEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + env: + description: The Datadog environment. type: string - type: - $ref: '#/components/schemas/CIAppPipelineEventTypeName' - type: object - CIAppResponseMetadataWithPagination: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/CIAppResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR + provider_name: + description: The name of the CI provider. By default, this is "custom". type: string - status: - $ref: '#/components/schemas/CIAppResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. - items: - $ref: '#/components/schemas/CIAppWarning' - type: array + resource: + $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributesResource' + service: + description: If the CI provider is SaaS, use this to differentiate between instances. + type: string + required: + - resource type: object - CIAppQueryPageOptions: - description: Paging attributes for listing events. + CIAppCreatePipelineEventRequestDataType: + default: cipipeline_resource_request + description: Type of the event. + enum: + - cipipeline_resource_request + example: cipipeline_resource_request + type: string + x-enum-varnames: + - CIPIPELINE_RESOURCE_REQUEST + CIAppGroupByMissingString: + description: The missing value to use if there is a string valued facet. + type: string + CIAppGroupByMissingNumber: + description: The missing value to use if there is a number valued facet. + format: double + type: number + CIAppSortOrder: + description: The order to use, ascending or descending. + enum: + - asc + - desc + example: asc + type: string + x-enum-varnames: + - ASCENDING + - DESCENDING + CIAppAggregateSortType: + default: alphabetical + description: The type of sorting algorithm. + enum: + - alphabetical + - measure + type: string + x-enum-varnames: + - ALPHABETICAL + - MEASURE + CIAppGroupByTotalBoolean: + description: If set to true, creates an additional bucket labeled "$facet_total". + type: boolean + CIAppGroupByTotalString: + description: A string to use as the key value for the total bucket. + type: string + CIAppGroupByTotalNumber: + description: A number to use as the key value for the total bucket. + format: double + type: number + CIAppComputes: + additionalProperties: + $ref: '#/components/schemas/CIAppAggregateBucketValue' + description: A map of the metric name to value for regular compute, or a list of values for a timeseries. + type: object + CIAppPipelineLevel: + description: Pipeline execution level. + enum: + - pipeline + - stage + - job + - step + - custom + example: pipeline + type: string + x-enum-varnames: + - PIPELINE + - STAGE + - JOB + - STEP + - CUSTOM + TagsEventAttribute: + description: Array of tags associated with your event. + example: + - team:A + items: + description: Tag associated with your event. + type: string + type: array + TestOptimizationFlakyTestsManagementPoliciesAttemptToFix: + description: Configuration for the attempt-to-fix Flaky Tests Management policy. properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 + retries: + description: Number of retries when attempting to fix a flaky test. Must be greater than 0. + example: 3 + format: int64 type: integer type: object - CIAppTestsQueryFilter: - description: The search and filter query settings. + TestOptimizationFlakyTestsManagementPoliciesDisabled: + description: Configuration for the disabled Flaky Tests Management policy. properties: - from: - default: now-15m - description: >- - The minimum time for the requested events; supports date, math, and - regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the CI Visibility Explorer search syntax. - example: '@test.service:web-ui-tests AND @test.status:fail' - type: string - to: - default: now - description: >- - The maximum time for the requested events, supports date, math, and - regular timestamps (in milliseconds). - example: now - type: string + auto_disable_rule: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule' + branch_rule: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesBranchRule' + enabled: + description: Whether the disabled policy is enabled. + example: false + type: boolean + failure_rate_rule: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule' + type: object + TestOptimizationFlakyTestsManagementPoliciesQuarantined: + description: Configuration for the quarantined Flaky Tests Management policy. + properties: + auto_quarantine_rule: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule' + branch_rule: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesBranchRule' + enabled: + description: Whether the quarantined policy is enabled. + example: true + type: boolean + failure_rate_rule: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule' type: object - CIAppTestsGroupBy: - description: A group-by rule. + CIAppTestLevel: + description: Test run level. + enum: + - session + - module + - suite + - test + example: test + type: string + x-enum-varnames: + - SESSION + - MODULE + - SUITE + - TEST + CoverageSummaryCodeownerStats: + description: Coverage statistics for a specific code owner. properties: - facet: - description: The name of the facet to use (required). - example: '@test.service' - type: string - histogram: - $ref: '#/components/schemas/CIAppGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. + evaluated_flags_count: + description: Number of coverage flags evaluated for the code owner. + example: 2 format: int64 type: integer - missing: - $ref: '#/components/schemas/CIAppGroupByMissing' - sort: - $ref: '#/components/schemas/CIAppAggregateSort' - total: - $ref: '#/components/schemas/CIAppGroupByTotal' - required: - - facet + evaluated_reports_count: + description: Number of coverage reports evaluated for the code owner. + example: 4 + format: int64 + type: integer + patch_coverage: + description: Patch coverage percentage for the code owner. + example: 75.2 + format: double + nullable: true + type: number + total_coverage: + description: Total coverage percentage for the code owner. + example: 88.7 + format: double + nullable: true + type: number type: object - CIAppTestsAggregationBucketsResponse: - description: The query results. + CoverageSummaryServiceStats: + description: Coverage statistics for a specific service. properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/CIAppTestsBucketResponse' - type: array + evaluated_flags_count: + description: Number of coverage flags evaluated for the service. + example: 3 + format: int64 + type: integer + evaluated_reports_count: + description: Number of coverage reports evaluated for the service. + example: 5 + format: int64 + type: integer + patch_coverage: + description: Patch coverage percentage for the service. + example: 72.3 + format: double + nullable: true + type: number + total_coverage: + description: Total coverage percentage for the service. + example: 85.5 + format: double + nullable: true + type: number type: object - CIAppTestEvent: - description: >- - Object description of test event after being processed and stored by - Datadog. + DeploymentGateResponseDataAttributesCreatedBy: + description: Information about the user who created the deployment gate. properties: - attributes: - $ref: '#/components/schemas/CIAppEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA + handle: + description: The handle of the user who created the deployment rule. + example: test-user type: string - type: - $ref: '#/components/schemas/CIAppTestEventTypeName' - type: object - DORADeploymentRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORADeploymentRequestAttributes' - required: - - attributes - type: object - DORADeploymentResponseData: - description: The JSON:API data. - properties: id: - description: The ID of the received DORA deployment event. - example: 4242fcdd31586083 + description: The ID of the user who created the deployment rule. + example: 1111-2222-3333-4444-555566667777 + type: string + name: + description: The name of the user who created the deployment rule. + example: Test User type: string - type: - $ref: '#/components/schemas/DORADeploymentType' required: - id type: object - JSONAPIErrorItem: - description: API error response body + DeploymentGateResponseDataAttributesUpdatedBy: + description: Information about the user who updated the deployment gate. properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body + handle: + description: The handle of the user who updated the deployment rule. + example: test-user type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' + id: + description: The ID of the user who updated the deployment rule. + example: 1111-2222-3333-4444-555566667777 type: string - title: - description: Short human-readable summary of the error. - example: Bad Request + name: + description: The name of the user who updated the deployment rule. + example: Test User type: string - type: object - DORAListDeploymentsRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAListDeploymentsRequestAttributes' - type: - $ref: '#/components/schemas/DORAListDeploymentsRequestDataType' required: - - attributes + - id type: object - DORAEvent: - description: A DORA event. + DeploymentRulesOptions: + description: Options for deployment rule response representing either faulty deployment detection or monitor options. + additionalProperties: false properties: - attributes: - description: The attributes of the event. - type: object - id: - description: The ID of the event. - type: string - type: - description: The type of the event. + allowed_resources: + description: Resources to include in faulty deployment detection. Mutually exclusive with `excluded_resources`. + example: + - resource1 + - resource2 + items: + description: A resource name to include in faulty deployment detection. + type: string + type: array + duration: + description: The duration for faulty deployment detection. + example: 3600 + format: int64 + type: integer + excluded_resources: + description: Resources to exclude from faulty deployment detection. + example: + - resource1 + - resource2 + items: + description: A resource name to exclude from faulty deployment detection. + type: string + type: array + query: + description: Monitors that match this query are evaluated. + example: service:my-service env:prod type: string type: object - DORAFailureRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAFailureRequestAttributes' required: - - attributes - type: object - DORAFailureResponseData: - description: Response after receiving a DORA failure event. + - query + DeploymentRuleResponseDataAttributesCreatedBy: + description: Information about the user who created the deployment rule. properties: + handle: + description: The handle of the user who created the deployment rule. + example: test-user + type: string id: - description: The ID of the received DORA failure event. - example: 4242fcdd31586083 + description: The ID of the user who created the deployment rule. + example: 1111-2222-3333-4444-555566667777 + type: string + name: + description: The name of the user who created the deployment rule. + example: Test User type: string - type: - $ref: '#/components/schemas/DORAFailureType' required: - id type: object - DORAListFailuresRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAListFailuresRequestAttributes' - type: - $ref: '#/components/schemas/DORAListFailuresRequestDataType' - required: - - attributes - type: object - WorkflowData: - description: Data related to the workflow. + DeploymentRuleResponseDataAttributesType: + description: The type of the deployment rule. + enum: + - faulty_deployment_detection + - monitor + example: faulty_deployment_detection + type: string + x-enum-varnames: + - FAULTY_DEPLOYMENT_DETECTION + - MONITOR + DeploymentRuleResponseDataAttributesUpdatedBy: + description: Information about the user who updated the deployment rule. properties: - attributes: - $ref: '#/components/schemas/WorkflowDataAttributes' + handle: + description: The handle of the user who updated the deployment rule. + example: test-user + type: string id: - description: The workflow identifier - readOnly: true + description: The ID of the user who updated the deployment rule. + example: 1111-2222-3333-4444-555566667777 + type: string + name: + description: The name of the user who updated the deployment rule. + example: Test User type: string - relationships: - $ref: '#/components/schemas/WorkflowDataRelationships' - type: - $ref: '#/components/schemas/WorkflowDataType' required: - - type - - attributes + - id type: object - WorkflowDataUpdate: - description: Data related to the workflow being updated. + DeploymentGatesEvaluationConfiguration: + description: |- + Inline rule definitions for a deployment gate evaluation. When provided, rules are evaluated + directly from this configuration instead of using the preconfigured gate rules. + At least one rule is required. properties: - attributes: - $ref: '#/components/schemas/WorkflowDataUpdateAttributes' - id: - description: The workflow identifier - type: string - relationships: - $ref: '#/components/schemas/WorkflowDataRelationships' - type: - $ref: '#/components/schemas/WorkflowDataType' + dry_run: + description: Gate-level dry run. When enabled, the rules are evaluated normally but the gate always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + rules: + description: The list of rules to evaluate. At least one rule is required. + items: + $ref: '#/components/schemas/DeploymentGatesEvaluationRule' + minItems: 1 + type: array required: - - type - - attributes + - rules type: object - WorkflowInstanceListItem: - additionalProperties: {} - description: An item in the workflow instances list. - properties: - id: - description: The ID of the workflow instance + DeploymentGatesEvaluationResultResponseAttributesGateStatus: + description: |- + The overall status of the gate evaluation. + - `in_progress`: The evaluation is still running. + - `pass`: All rules passed successfully and the deployment is allowed to proceed. + - `fail`: One or more rules did not pass; the deployment should not proceed. + enum: + - in_progress + - pass + - fail + example: pass + type: string + x-enum-varnames: + - IN_PROGRESS + - PASS + - FAIL + DeploymentGatesRuleResponse: + description: The result of a single rule evaluation. + properties: + dry_run: + description: Whether this rule was evaluated in dry-run mode. + example: false + type: boolean + name: + description: The name of the rule. + example: Check service monitors type: string + reason: + description: The reason for the rule result, if applicable. + example: One or more monitors in ALERT state + type: string + status: + $ref: '#/components/schemas/DeploymentGatesEvaluationResultResponseAttributesGateStatus' type: object - WorkflowListInstancesResponseMeta: - additionalProperties: {} - description: Metadata about the instances list - properties: - page: - $ref: '#/components/schemas/WorkflowListInstancesResponseMetaPage' - type: object - WorkflowInstanceCreateMeta: - description: Additional information for creating a workflow instance. + DORACustomTags: + description: A list of user-defined tags. The tags must follow the `key:value` pattern. Up to 100 may be added per event. + example: + - language:java + - department:engineering + items: + description: Tags in the form of `key:value`. + type: string + nullable: true + type: array + DORAGitInfo: + description: Git info for DORA Metrics events. properties: - payload: - additionalProperties: {} - description: The input parameters to the workflow. - type: object + commit_sha: + $ref: '#/components/schemas/GitCommitSHA' + repository_url: + $ref: '#/components/schemas/GitRepositoryURL' + required: + - repository_url + - commit_sha type: object - WorkflowInstanceCreateResponseData: - additionalProperties: {} - description: Data about the created workflow instance. + DORADeploymentPatchByVersionRemediation: + description: Remediation details for the deployment. Optional, but required to calculate failed deployment recovery time. Specify either `id` or `version` to identify the remediation deployment, but not both. + additionalProperties: false properties: id: - description: >- - The ID of the workflow execution. It can be used to fetch the - execution status. + description: The ID of the remediation deployment. + example: eG42zNIkVjM + type: string + type: + $ref: '#/components/schemas/DORADeploymentPatchRemediationType' + version: + description: The version of the remediation deployment. + example: v1.2.4 type: string + required: + - id + - type + - version type: object - WorklflowGetInstanceResponseData: - additionalProperties: {} - description: The data of the instance response. + DORAGitInfoResponse: + description: Git info returned by DORA Metrics events. properties: - attributes: - $ref: '#/components/schemas/WorklflowGetInstanceResponseDataAttributes' + commit_sha: + $ref: '#/components/schemas/GitCommitSHA' + repository_id: + $ref: '#/components/schemas/GitRepositoryID' + required: + - repository_id + - commit_sha type: object - WorklflowCancelInstanceResponseData: - description: Data about the canceled instance. + DORADeploymentPatchRemediation: + description: Remediation details for the deployment. Optional, but required to calculate failed deployment recovery time. Specify either `id` or `version` to identify the remediation deployment, but not both. properties: id: - description: The id of the canceled instance + description: The ID of the remediation deployment. Use this or `version` to identify the remediation deployment, but not both. + example: eG42zNIkVjM + type: string + type: + $ref: '#/components/schemas/DORADeploymentPatchRemediationType' + version: + description: The version of the remediation deployment, matched against the same service and environment as the failed deployment. Use this or `id` to identify the remediation deployment, but not both. + example: v1.2.4 type: string type: object - CIAppCreatePipelineEventRequestData: - description: Data of the pipeline event to create. + FeatureFlagEnvironmentListItem: + description: Environment-specific settings for a feature flag in list responses. properties: - attributes: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributes' - type: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataType' + default_allocation_key: + description: The allocation key used for the default variant. + example: allocation-default-123abc + type: string + default_variant_id: + description: The ID of the default variant for this environment. + example: 550e8400-e29b-41d4-a716-446655440002 + nullable: true + type: string + environment_id: + description: The ID of the environment. + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid + type: string + environment_name: + description: The name of the environment. + example: env-search-term + type: string + environment_queries: + description: Queries that target this environment. + example: + - test-feature-flag + - env-search-term + items: + description: A query string targeting the environment. + type: string + type: array + is_production: + description: Indicates whether the environment is production. + example: false + type: boolean + override_allocation_key: + description: The allocation key used for the override variant. + example: allocation-override-123abc + type: string + override_variant_id: + description: The ID of the override variant for this environment. + example: 550e8400-e29b-41d4-a716-446655440003 + nullable: true + type: string + pending_suggestion_id: + description: Pending suggestion identifier, if approval is required. + example: 550e8400-e29b-41d4-a716-446655440099 + nullable: true + type: string + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + status: + $ref: '#/components/schemas/FeatureFlagStatus' + required: + - environment_id + - status type: object - CIAppCreatePipelineEventRequestDataArray: - description: Array of pipeline events to create in batch. - items: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' - type: array - CIAppAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - - latest - - earliest - - most_frequent - - delta - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - - LATEST - - EARLIEST - - MOST_FREQUENT - - DELTA - CIAppComputeType: - default: total - description: The type of compute. + ValueType: + description: The type of values for the feature flag variants. enum: - - timeseries - - total + - BOOLEAN + - INTEGER + - NUMERIC + - STRING + - JSON + example: BOOLEAN type: string x-enum-varnames: - - TIMESERIES - - TOTAL - CIAppGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - At most, 100 buckets are allowed, the number of buckets is `(max - - min)/interval`. + - BOOLEAN + - INTEGER + - NUMERIC + - STRING + - JSON + FeatureFlagEnvironment: + description: Environment-specific settings for a feature flag. properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out). - example: 100 - format: double - type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out). - example: 50 - format: double - type: number + allocations: + additionalProperties: {} + description: Allocation metadata for this environment. + nullable: true + type: object + default_allocation_key: + description: The allocation key used for the default variant. + example: allocation-default-123abc + type: string + default_variant_id: + description: The ID of the default variant for this environment. + example: 550e8400-e29b-41d4-a716-446655440002 + nullable: true + type: string + environment_id: + description: The ID of the environment. + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid + type: string + environment_name: + description: The name of the environment. + example: env-search-term + type: string + environment_queries: + description: Queries that target this environment. + example: + - test-feature-flag + - env-search-term + items: + description: A query string targeting the environment. + type: string + type: array + is_production: + description: Indicates whether the environment is production. + example: false + type: boolean + override_allocation_key: + description: The allocation key used for the override variant. + example: allocation-override-123abc + type: string + override_variant_id: + description: The ID of the override variant for this environment. + example: 550e8400-e29b-41d4-a716-446655440003 + nullable: true + type: string + pending_suggestion_id: + description: Pending suggestion identifier, if approval is required. + example: 550e8400-e29b-41d4-a716-446655440099 + nullable: true + type: string + require_feature_flag_approval: + description: Indicates whether feature flag changes require approval in this environment. + example: false + type: boolean + status: + $ref: '#/components/schemas/FeatureFlagStatus' required: - - interval - - min - - max + - environment_id + - status type: object - CIAppGroupByMissing: - description: The value to use for logs that don't have the facet used to group-by. - oneOf: - - $ref: '#/components/schemas/CIAppGroupByMissingString' - - $ref: '#/components/schemas/CIAppGroupByMissingNumber' - CIAppAggregateSort: - description: >- - A sort rule. The `aggregation` field is required when `type` is - `measure`. - example: - aggregation: count - order: asc + AllocationExposureGuardrailTrigger: + description: Guardrail trigger details for a progressive rollout. properties: - aggregation: - $ref: '#/components/schemas/CIAppAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' + allocation_exposure_schedule_id: + description: The progressive rollout ID this trigger belongs to. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid type: string - order: - $ref: '#/components/schemas/CIAppSortOrder' - type: - $ref: '#/components/schemas/CIAppAggregateSortType' + created_at: + description: The timestamp when this trigger was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + flagging_variant_id: + description: The variant ID that triggered this event. + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid + type: string + id: + description: The unique identifier of the guardrail trigger. + example: 550e8400-e29b-41d4-a716-446655440080 + format: uuid + type: string + metric_id: + description: The metric ID associated with the trigger. + example: metric-error-rate + type: string + triggered_action: + description: The action that was triggered. + example: PAUSE + type: string + updated_at: + description: The timestamp when this trigger was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + required: + - id + - allocation_exposure_schedule_id + - flagging_variant_id + - metric_id + - triggered_action + - created_at + - updated_at + type: object + RolloutOptions: + description: Applied progression options for a progressive rollout. + properties: + autostart: + description: Whether the schedule starts automatically. + example: false + type: boolean + selection_interval_ms: + description: Interval in milliseconds for uniform interval strategies. + example: 3600000 + format: int64 + type: integer + strategy: + $ref: '#/components/schemas/RolloutStrategy' + required: + - strategy + - autostart + - selection_interval_ms type: object - CIAppGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/CIAppGroupByTotalBoolean' - - $ref: '#/components/schemas/CIAppGroupByTotalString' - - $ref: '#/components/schemas/CIAppGroupByTotalNumber' - CIAppPipelinesBucketResponse: - description: Bucket values. + AllocationExposureRolloutStep: + description: Exposure progression step details. properties: - by: - additionalProperties: - description: The values for each group-by. - description: The key-value pairs for each group-by. - example: - '@ci.provider.name': gitlab - '@ci.status': success - type: object - computes: - $ref: '#/components/schemas/CIAppComputes' + allocation_exposure_schedule_id: + description: The progressive rollout ID this step belongs to. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + created_at: + description: The timestamp when the progression step was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + exposure_ratio: + description: The exposure ratio for this step. + example: 0.1 + format: double + maximum: 1 + minimum: 0 + type: number + grouped_step_index: + description: Logical index grouping related steps. + example: 0 + format: int64 + minimum: 0 + type: integer + id: + description: The unique identifier of the progression step. + example: 550e8400-e29b-41d4-a716-446655440040 + format: uuid + type: string + interval_ms: + description: Step duration in milliseconds. + example: 3600000 + format: int64 + nullable: true + type: integer + is_pause_record: + description: Whether this step represents a pause record. + example: false + type: boolean + order_position: + description: Sort order for the progression step. + example: 0 + format: int64 + type: integer + updated_at: + description: The timestamp when the progression step was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + required: + - id + - allocation_exposure_schedule_id + - order_position + - exposure_ratio + - is_pause_record + - grouped_step_index + - created_at + - updated_at + type: object + ExposureScheduleRequest: + description: Progressive release request payload. + properties: + absolute_start_time: + description: The absolute UTC start time for this schedule. + example: '2025-06-13T12:00:00Z' + format: date-time + nullable: true + type: string + control_variant_id: + description: The control variant ID used for experiment comparisons. + example: 550e8400-e29b-41d4-a716-446655440012 + nullable: true + type: string + control_variant_key: + description: The control variant key used during creation workflows. + example: control + nullable: true + type: string + id: + description: The unique identifier of the progressive rollout. + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + rollout_options: + $ref: '#/components/schemas/RolloutOptionsRequest' + rollout_steps: + description: Ordered progression steps for exposure. + items: + $ref: '#/components/schemas/ExposureRolloutStepRequest' + minItems: 1 + type: array + required: + - rollout_options + - rollout_steps type: object - CIAppResponseStatus: - description: The status of the response. + GuardrailMetricRequest: + description: Guardrail metric request payload. + properties: + metric_id: + description: The metric ID to monitor. + example: metric-error-rate + type: string + trigger_action: + $ref: '#/components/schemas/GuardrailTriggerAction' + required: + - metric_id + - trigger_action + type: object + TargetingRuleRequest: + description: Targeting rule request payload. + properties: + conditions: + description: Conditions that must match for this rule. + items: + $ref: '#/components/schemas/ConditionRequest' + minItems: 1 + type: array + required: + - conditions + type: object + AllocationType: + description: The type of targeting rule (called allocation in the API model). enum: - - done - - timeout - example: done + - FEATURE_GATE + - CANARY + example: FEATURE_GATE type: string x-enum-varnames: - - DONE - - TIMEOUT - CIAppWarning: - description: A warning message indicating something that went wrong with the query. + - FEATURE_GATE + - CANARY + VariantWeightRequest: + description: Variant weight request payload. properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' + value: + description: The percentage weight for this variant. + example: 50 + format: double + type: number + variant_id: + description: The variant ID to assign weight to. + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes + variant_key: + description: The variant key to assign weight to. + example: control type: string + required: + - value type: object - CIAppPipelineEventAttributes: - description: JSON object containing all event attributes and their associated values. + GuardrailMetric: + description: Guardrail metric details. properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from CI Visibility pipeline events. - example: - customAttribute: 123 - duration: 2345 - type: object - ci_level: - $ref: '#/components/schemas/CIAppPipelineLevel' - tags: - $ref: '#/components/schemas/TagsEventAttribute' + metric_id: + description: The metric ID to monitor. + example: metric-error-rate + type: string + trigger_action: + $ref: '#/components/schemas/GuardrailTriggerAction' + triggered_by: + description: The signal or system that triggered the action. + example: guardrail_monitor + nullable: true + type: string + required: + - metric_id + - trigger_action type: object - CIAppPipelineEventTypeName: - description: Type of the event. - enum: - - cipipeline - example: cipipeline - type: string - x-enum-varnames: - - CIPIPELINE - CIAppResponsePage: - description: Paging attributes. + TargetingRule: + description: Targeting rule details. properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of - `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + conditions: + description: Conditions evaluated by this targeting rule. + items: + $ref: '#/components/schemas/Condition' + type: array + created_at: + description: The timestamp when the targeting rule was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + id: + description: The unique identifier of the targeting rule. + example: 550e8400-e29b-41d4-a716-446655440060 + format: uuid + type: string + updated_at: + description: The timestamp when the targeting rule was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time type: string + required: + - id + - conditions + - created_at + - updated_at type: object - CIAppTestsBucketResponse: - description: Bucket values. + VariantWeight: + description: Variant weight details. properties: - by: - additionalProperties: - description: The values for each group-by. - description: The key-value pairs for each group-by. - example: - '@test.service': web-ui-tests - '@test.status': skip - type: object - computes: - $ref: '#/components/schemas/CIAppComputes' + created_at: + description: The timestamp when the variant weight was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + id: + description: Unique identifier of the variant weight assignment. + example: 59061199-e2ff-46e9-8b40-2193e3b21687 + format: uuid + type: string + updated_at: + description: The timestamp when the variant weight was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + value: + description: The percentage weight for the variant. + example: 50 + format: double + type: number + variant: + $ref: '#/components/schemas/Variant' + variant_id: + description: The variant ID. + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid + type: string + required: + - variant_id + - value type: object - CIAppEventAttributes: - description: JSON object containing all event attributes and their associated values. + UpdateFlakyTestsRequestTest: + description: Details of what tests to update and their new attributes. properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from CI Visibility test events. - example: - customAttribute: 123 - duration: 2345 - type: object - tags: - $ref: '#/components/schemas/TagsEventAttribute' - test_level: - $ref: '#/components/schemas/CIAppTestLevel' + id: + description: |- + The ID of the flaky test. This is the same ID returned by the Search flaky tests endpoint and is the + value of the `@test.fingerprint_fqn` facet on test events. You can find it by searching on + `@test.fingerprint_fqn` in the Test Optimization Explorer, or by filtering the Search flaky tests + endpoint with the `fingerprint_fqn` key. + example: 4eb1887a8adb1847 + type: string + new_state: + $ref: '#/components/schemas/UpdateFlakyTestsRequestTestNewState' + required: + - id + - new_state type: object - CIAppTestEventTypeName: - description: Type of the event. - enum: - - citest - example: citest - type: string - x-enum-varnames: - - CITEST - DORADeploymentRequestAttributes: - description: Attributes to create a DORA deployment event. + UpdateFlakyTestsResponseResult: + description: Result of updating a single flaky test state. properties: - custom_tags: - $ref: '#/components/schemas/DORACustomTags' - env: - description: Environment name to where the service was deployed. - example: staging + error: + description: Error message if the update failed. type: string - finished_at: - description: >- - Unix timestamp when the deployment finished. It must be in - nanoseconds, milliseconds, or seconds, and it should not be older - than 1 hour. - example: 1693491984000000000 - format: int64 - type: integer - git: - $ref: '#/components/schemas/DORAGitInfo' id: - description: Deployment ID. + description: |- + The ID of the flaky test from the request. This is the value of the `@test.fingerprint_fqn` facet + on test events, the same ID accepted by the update request and returned by the Search flaky tests + endpoint. + example: 4eb1887a8adb1847 type: string - service: - description: Service name. - example: shopist + success: + description: '`True` if the update was successful, `False` if there were any errors.' + example: false + type: boolean + required: + - id + - success + type: object + FlakyTestsSearchFilter: + description: Search filter settings. + properties: + include_history: + default: false + description: |- + Whether to include the status change history for each flaky test in the response. + When set to true, each test will include a `history` array with chronological status changes. + Defaults to false. + example: true + type: boolean + query: + default: '*' + description: |- + Search query following log syntax used to filter flaky tests, same as on Flaky Tests Management UI. The supported search keys are: + - `flaky_test_state` + - `flaky_test_category` + - `@test.name` + - `@test.suite` + - `@test.module` + - `@test.service` + - `@git.repository.id_v2` + - `@git.branch` + - `@test.codeowners` + - `env` + - `fingerprint_fqn` + + Use `fingerprint_fqn` to filter by a test's stable Fingerprint FQN (the same value as the test's `id`). + example: flaky_test_state:active @git.repository.id_v2:"github.com/datadog/shopist" type: string - started_at: - description: >- - Unix timestamp when the deployment started. It must be in - nanoseconds, milliseconds, or seconds. - example: 1693491974000000000 + type: object + FlakyTestsSearchPageOptions: + description: Pagination attributes for listing flaky tests. + properties: + cursor: + description: List following results with a cursor provided in the previous request. + example: eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== + type: string + limit: + default: 10 + description: Maximum number of flaky tests in the response. + example: 25 format: int64 + maximum: 1000 + minimum: 1 type: integer - team: - description: >- - Name of the team owning the deployed service. If not provided, this - is automatically populated with the team associated with the service - in the Service Catalog. - example: backend + type: object + FlakyTestsSearchSort: + description: Parameter for sorting flaky test results. The default sort is by ascending Fully Qualified Name (FQN). The FQN is the concatenation of the test module, suite, and name. + enum: + - fqn + - '-fqn' + - first_flaked + - '-first_flaked' + - last_flaked + - '-last_flaked' + - failure_rate + - '-failure_rate' + - pipelines_failed + - '-pipelines_failed' + - pipelines_duration_lost + - '-pipelines_duration_lost' + example: failure_rate + type: string + x-enum-varnames: + - FQN_ASCENDING + - FQN_DESCENDING + - FIRST_FLAKED_ASCENDING + - FIRST_FLAKED_DESCENDING + - LAST_FLAKED_ASCENDING + - LAST_FLAKED_DESCENDING + - FAILURE_RATE_ASCENDING + - FAILURE_RATE_DESCENDING + - PIPELINES_FAILED_ASCENDING + - PIPELINES_FAILED_DESCENDING + - PIPELINES_DURATION_LOST_ASCENDING + - PIPELINES_DURATION_LOST_DESCENDING + FlakyTestAttributesFlakyState: + description: The current state of the flaky test. + enum: + - active + - fixed + - quarantined + - disabled + example: active + type: string + x-enum-varnames: + - ACTIVE + - FIXED + - QUARANTINED + - DISABLED + FlakyTestHistory: + description: A single history entry representing a status change for a flaky test. + properties: + commit_sha: + description: The commit SHA associated with this status change. Will be an empty string if the commit SHA is not available. + example: abc123def456 type: string - version: - description: >- - Version to correlate with [APM Deployment - Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). - example: v1.12.07 + policy_id: + $ref: '#/components/schemas/FlakyTestHistoryPolicyId' + policy_meta: + $ref: '#/components/schemas/FlakyTestHistoryPolicyMeta' + nullable: true + status: + description: The test status at this point in history. + example: quarantined type: string + timestamp: + description: Unix timestamp in milliseconds when this status change occurred. + example: 1704067200000 + format: int64 + type: integer required: - - service - - started_at - - finished_at + - status + - commit_sha + - timestamp type: object - DORADeploymentType: - default: dora_deployment - description: JSON:API type for DORA deployment events. + FlakyTestImpactLevel: + description: The impact level of the flaky test, derived from its impact score. enum: - - dora_deployment - example: dora_deployment + - low + - medium + - high + example: medium type: string x-enum-varnames: - - DORA_DEPLOYMENT - JSONAPIErrorItemSource: - description: References to the source of the error. + - LOW + - MEDIUM + - HIGH + FlakyTestPipelineStats: + description: CI pipeline related statistics for the flaky test. This information is only available if test runs are associated with CI pipeline events from CI Visibility. + properties: + failed_pipelines: + description: The number of pipelines that failed due to this test for the past 7 days. This is computed as the sum of failed CI pipeline events associated with test runs where the flaky test failed. + example: 319 + format: int64 + nullable: true + type: integer + total_lost_time_ms: + description: The total time lost by CI pipelines due to this flaky test in milliseconds. This is computed as the sum of the duration of failed CI pipeline events associated with test runs where the flaky test failed. + example: 1527550000 + format: int64 + nullable: true + type: integer + type: object + FlakyTestRunMetadata: + description: Metadata about the latest failed test run of the flaky test. properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization + duration_ms: + description: The duration of the test run in milliseconds. + example: 27398 + format: int64 + nullable: true + type: integer + error_message: + description: The error message from the test failure. + example: Expecting actual not to be empty + nullable: true type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit + error_stack: + description: The stack trace from the test failure. + example: |- + Traceback (most recent call last): + File "test_foo.py", line 10, in test_foo + assert actual == expected + AssertionError: Expecting actual not to be empty + nullable: true type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title + source_end: + description: The line number where the test ends in the source file. + example: 20 + format: int64 + nullable: true + type: integer + source_file: + description: The source file where the test is defined. + example: test_foo.py + nullable: true + type: string + source_start: + description: The line number where the test starts in the source file. + example: 10 + format: int64 + nullable: true + type: integer + type: object + FlakyTestStats: + description: Test statistics for the flaky test. + properties: + failure_rate_pct: + description: The failure rate percentage of the test for the past 7 days. This is the number of failed test runs divided by the total number of test runs (excluding skipped test runs). + example: 0.1 + format: double + nullable: true + type: number + type: object + Spec: + description: A complete Workflow Automation definition, including its triggers, steps, and connections. + properties: + annotations: + description: Up to 100 text annotations displayed on the workflow canvas. + items: + $ref: '#/components/schemas/Annotation' + maxItems: 100 + type: array + connectionEnvs: + description: A list of connections or connection groups used in the workflow. + items: + $ref: '#/components/schemas/ConnectionEnv' + type: array + handle: + description: Unique identifier used to trigger workflows automatically in Datadog. type: string + inputSchema: + $ref: '#/components/schemas/InputSchema' + outputSchema: + $ref: '#/components/schemas/OutputSchema' + steps: + description: A `Step` is a sub-component of a workflow. Each `Step` performs an action. + items: + $ref: '#/components/schemas/Step' + type: array + triggers: + description: The list of triggers that activate this workflow. At least one trigger is required, and each trigger type may appear at most once. + items: + $ref: '#/components/schemas/Trigger' + type: array + type: object + WorkflowUserRelationship: + description: The definition of `WorkflowUserRelationship` object. + properties: + data: + $ref: '#/components/schemas/WorkflowUserRelationshipData' type: object - DORAListDeploymentsRequestAttributes: - description: Attributes to get a list of deployments. + CIAppCreatePipelineEventRequestAttributesResource: + description: Details of the CI pipeline event. + example: Details TBD properties: - from: - description: Minimum timestamp for requested events. + end: + description: Time when the pipeline run finished. It cannot be older than 18 hours in the past from the current time. The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' format: date-time type: string - limit: - default: 10 - description: Maximum number of events in the response. - format: int32 - maximum: 1000 - type: integer - query: - description: Search query with event platform syntax. - type: string - sort: - description: Sort order (prefixed with `-` for descending). - type: string - to: - description: Maximum timestamp for requested events. - format: date-time + error: + $ref: '#/components/schemas/CIAppCIError' + git: + $ref: '#/components/schemas/CIAppGitInfo' + is_manual: + description: Whether or not the pipeline was triggered manually by the user. + example: false + nullable: true + type: boolean + is_resumed: + description: Whether or not the pipeline was resumed after being blocked. + example: false + nullable: true + type: boolean + level: + $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' + metrics: + $ref: '#/components/schemas/CIAppPipelineEventMetrics' + name: + description: Name of the pipeline. All pipeline runs for the builds should have the same name. + example: Deploy to AWS type: string - type: object - DORAListDeploymentsRequestDataType: - description: The definition of `DORAListDeploymentsRequestDataType` object. - enum: - - dora_deployments_list_request - type: string - x-enum-varnames: - - DORA_DEPLOYMENTS_LIST_REQUEST - DORAFailureRequestAttributes: - description: Attributes to create a DORA failure event. - properties: - custom_tags: - $ref: '#/components/schemas/DORACustomTags' - env: - description: Environment name that was impacted by the failure. - example: staging + node: + $ref: '#/components/schemas/CIAppHostInfo' + parameters: + $ref: '#/components/schemas/CIAppPipelineEventParameters' + parent_pipeline: + $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' + partial_retry: + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one + which only runs a subset of the original jobs. + example: false + type: boolean + pipeline_id: + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. + example: '#023' type: string - finished_at: - description: >- - Unix timestamp when the failure finished. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491984000000000 + previous_attempt: + $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 format: int64 + minimum: 0 + nullable: true type: integer - git: - $ref: '#/components/schemas/DORAGitInfo' - id: - description: >- - Failure ID. Must have at least 16 characters. Required to update a - previously sent failure. + start: + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time type: string - name: - description: Failure name. - example: Webserver is down failing all requests. + status: + $ref: '#/components/schemas/CIAppPipelineEventPipelineStatus' + tags: + $ref: '#/components/schemas/CIAppPipelineEventTags' + unique_id: + description: |- + UUID of the pipeline run. The ID has to be unique across retries and pipelines, + including partial retries. + example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a type: string - services: - description: >- - Service names impacted by the failure. If possible, use names - registered in the Service Catalog. Required when the team field is - not provided. + url: + description: The URL to look at the pipeline in the CI provider UI. + example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 + type: string + dependencies: + description: A list of stage IDs that this stage depends on. example: - - shopist + - f7e6a006-a029-46c3-b0cc-742c9d7d363b + - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe items: + description: A list of stage IDs. type: string + nullable: true type: array - severity: - description: Failure severity. - example: High + id: + description: UUID for the stage. It has to be unique at least in the pipeline scope. + example: 562bdbbb-7cab-48c8-851c-b24ca14628bf type: string - started_at: - description: >- - Unix timestamp when the failure started. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491974000000000 - format: int64 - type: integer - team: - description: >- - Name of the team owning the services impacted. If possible, use team - handles registered in Datadog. Required when the services field is - not provided. - example: backend + pipeline_name: + description: The parent pipeline name. + example: Build type: string - version: - description: >- - Version to correlate with [APM Deployment - Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). - example: v1.12.07 + pipeline_unique_id: + description: The parent pipeline UUID. + example: 76b572af-a078-42b2-a08a-cc28f98b944f type: string - required: - - started_at - type: object - DORAFailureType: - default: dora_failure - description: JSON:API type for DORA failure events. - enum: - - dora_failure - example: dora_failure - type: string - x-enum-varnames: - - DORA_FAILURE - DORAListFailuresRequestAttributes: - description: Attributes to get a list of failures. - properties: - from: - description: Minimum timestamp for requested events. - format: date-time + stage_id: + description: The parent stage UUID (if applicable). + nullable: true type: string - limit: - default: 10 - description: Maximum number of events in the response. - format: int32 - maximum: 1000 - type: integer - query: - description: Search query with event platform syntax. + stage_name: + description: The parent stage name (if applicable). + nullable: true type: string - sort: - description: Sort order (prefixed with `-` for descending). + job_id: + description: The parent job UUID (if applicable). + nullable: true type: string - to: - description: Maximum timestamp for requested events. - format: date-time + job_name: + description: The parent job name (if applicable). + nullable: true type: string + required: + - level + - unique_id + - name + - url + - start + - end + - status + - partial_retry + - id + - pipeline_unique_id + - pipeline_name type: object - DORAListFailuresRequestDataType: - description: The definition of `DORAListFailuresRequestDataType` object. - enum: - - dora_failures_list_request + CIAppAggregateBucketValue: + description: A bucket value, can either be a timeseries or a single value. type: string - x-enum-varnames: - - DORA_FAILURES_LIST_REQUEST - WorkflowDataAttributes: - description: The definition of `WorkflowDataAttributes` object. + format: double + items: + $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseriesPoint' + x-generate-alias-as-model: true + TestOptimizationFlakyTestsManagementPoliciesAutoDisableRule: + description: Automatic disable triggering rule based on a time window and test status. properties: - createdAt: - description: When the workflow was created. - format: date-time - readOnly: true - type: string - description: - description: Description of the workflow. - type: string - name: - description: Name of the workflow. - example: '' - type: string - published: - description: >- - Set the workflow to published or unpublished. Workflows in an - unpublished state will only be executable via manual runs. Automatic - triggers such as Schedule will not execute the workflow until it is - published. + enabled: + description: Whether this auto-disable rule is enabled. + example: false type: boolean - spec: - $ref: '#/components/schemas/Spec' - tags: - description: Tags of the workflow. + status: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabledStatus' + window_seconds: + description: Time window in seconds over which flakiness is evaluated. Must be greater than 0. + example: 3600 + format: int64 + type: integer + type: object + TestOptimizationFlakyTestsManagementPoliciesBranchRule: + description: Branch filtering rule for a Flaky Tests Management policy. + properties: + branches: + description: List of branches to which the policy applies. + example: + - main items: + description: A branch name. + type: string + type: array + enabled: + description: Whether this branch rule is enabled. + example: true + type: boolean + excluded_branches: + description: List of branches excluded from the policy. + example: [] + items: + description: A branch name. + type: string + type: array + excluded_test_services: + description: List of test services excluded from the policy. + example: [] + items: + description: A test service name. type: string type: array - updatedAt: - description: When the workflow was last updated. - format: date-time - readOnly: true - type: string - webhookSecret: - description: >- - If a Webhook trigger is defined on this workflow, a webhookSecret is - required and should be provided here. - type: string - writeOnly: true - required: - - name - - spec type: object - WorkflowDataRelationships: - description: The definition of `WorkflowDataRelationships` object. + TestOptimizationFlakyTestsManagementPoliciesDisabledFailureRateRule: + description: Failure-rate-based rule for the disabled policy. properties: - creator: - $ref: '#/components/schemas/WorkflowUserRelationship' - owner: - $ref: '#/components/schemas/WorkflowUserRelationship' - readOnly: true + branches: + description: List of branches to which this rule applies. + example: [] + items: + description: A branch name. + type: string + type: array + enabled: + description: Whether this failure rate rule is enabled. + example: false + type: boolean + min_runs: + description: Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0. + example: 10 + format: int64 + type: integer + status: + $ref: '#/components/schemas/TestOptimizationFlakyTestsManagementPoliciesDisabledStatus' + threshold: + description: Failure rate threshold (0.0–1.0) above which the rule triggers. + example: 0.5 + format: double + type: number + type: object + TestOptimizationFlakyTestsManagementPoliciesAutoQuarantineRule: + description: Automatic quarantine triggering rule based on a time window. + properties: + enabled: + description: Whether this auto-quarantine rule is enabled. + example: true + type: boolean + window_seconds: + description: Time window in seconds over which flakiness is evaluated. Must be greater than 0. + example: 3600 + format: int64 + type: integer type: object - WorkflowDataType: - description: The definition of `WorkflowDataType` object. - enum: - - workflows - example: workflows - type: string - x-enum-varnames: - - WORKFLOWS - WorkflowDataUpdateAttributes: - description: The definition of `WorkflowDataUpdateAttributes` object. + TestOptimizationFlakyTestsManagementPoliciesQuarantinedFailureRateRule: + description: Failure-rate-based rule for the quarantined policy. properties: - createdAt: - description: When the workflow was created. - format: date-time - readOnly: true - type: string - description: - description: Description of the workflow. - type: string - name: - description: Name of the workflow. - type: string - published: - description: >- - Set the workflow to published or unpublished. Workflows in an - unpublished state will only be executable via manual runs. Automatic - triggers such as Schedule will not execute the workflow until it is - published. + branches: + description: List of branches to which this rule applies. + example: + - main + items: + description: A branch name. + type: string + type: array + enabled: + description: Whether this failure rate rule is enabled. + example: true type: boolean - spec: - $ref: '#/components/schemas/Spec' - tags: - description: Tags of the workflow. + min_runs: + description: Minimum number of runs required before the rule is evaluated. Must be greater than or equal to 0. + example: 10 + format: int64 + type: integer + threshold: + description: Failure rate threshold (0.0–1.0) above which the rule triggers. + example: 0.5 + format: double + type: number + type: object + DeploymentRuleOptionsFaultyDeploymentDetection: + additionalProperties: false + description: Faulty deployment detection options for deployment rules. + properties: + allowed_resources: + description: Resources to include in faulty deployment detection. Mutually exclusive with `excluded_resources`. + example: + - resource1 + - resource2 items: + description: A resource name to include in faulty deployment detection. + type: string + type: array + duration: + description: The duration for faulty deployment detection. + example: 3600 + format: int64 + type: integer + excluded_resources: + description: Resources to exclude from faulty deployment detection. + example: + - resource1 + - resource2 + items: + description: A resource name to exclude from faulty deployment detection. type: string type: array - updatedAt: - description: When the workflow was last updated. - format: date-time - readOnly: true - type: string - webhookSecret: - description: >- - If a Webhook trigger is defined on this workflow, a webhookSecret is - required and should be provided here. - type: string - writeOnly: true type: object - WorkflowListInstancesResponseMetaPage: - additionalProperties: {} - description: Page information for the list instances response. + DeploymentRuleOptionsMonitor: + additionalProperties: false + description: Monitor options for deployment rules. properties: - totalCount: - description: The total count of items. + duration: + description: Seconds the monitor needs to stay in OK status for the rule to pass. + example: 3600 format: int64 type: integer + query: + description: Monitors that match this query are evaluated. + example: service:my-service env:prod + type: string + required: + - query + type: object + DeploymentGatesEvaluationRule: + description: A rule to evaluate as part of a deployment gate evaluation. + discriminator: + mapping: + faulty_deployment_detection: '#/components/schemas/DeploymentGatesFDDRule' + monitor: '#/components/schemas/DeploymentGatesMonitorRule' + propertyName: type + properties: + dry_run: + description: Rule-level dry run. When enabled, the rule is evaluated normally but always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + name: + description: Human-readable name for this rule. + example: error rate monitors + type: string + options: + $ref: '#/components/schemas/DeploymentGatesMonitorRuleOptions' + type: + $ref: '#/components/schemas/DeploymentGatesMonitorRuleType' + required: + - type + - name type: object - WorklflowGetInstanceResponseDataAttributes: - additionalProperties: {} - description: The attributes of the instance response data. + GitCommitSHA: + description: Git Commit SHA. + example: 66adc9350f2cc9b250b69abddab733dd55e1a588 + pattern: ^[a-fA-F0-9]{40,}$ + type: string + GitRepositoryURL: + description: Git Repository URL + example: https://github.com/organization/example-repository + type: string + DORADeploymentPatchByVersionRemediationByID: + additionalProperties: false + description: Remediation details identified by the ID of the remediation deployment. properties: id: - description: The id of the instance. + description: The ID of the remediation deployment. + example: eG42zNIkVjM type: string + type: + $ref: '#/components/schemas/DORADeploymentPatchRemediationType' + required: + - id + - type type: object - CIAppCreatePipelineEventRequestAttributes: - description: Attributes of the pipeline event to create. + DORADeploymentPatchByVersionRemediationByVersion: + additionalProperties: false + description: Remediation details identified by the version of the remediation deployment, matched against the same service and environment as the failed deployment. properties: - env: - description: The Datadog environment. - type: string - provider_name: - description: The name of the CI provider. By default, this is "custom". - type: string - resource: - $ref: >- - #/components/schemas/CIAppCreatePipelineEventRequestAttributesResource - service: - description: >- - If the CI provider is SaaS, use this to differentiate between - instances. + type: + $ref: '#/components/schemas/DORADeploymentPatchRemediationType' + version: + description: The version of the remediation deployment. + example: v1.2.4 type: string required: - - resource + - version + - type type: object - CIAppCreatePipelineEventRequestDataType: - default: cipipeline_resource_request - description: Type of the event. - enum: - - cipipeline_resource_request - example: cipipeline_resource_request - type: string - x-enum-varnames: - - CIPIPELINE_RESOURCE_REQUEST - CIAppGroupByMissingString: - description: The missing value to use if there is a string valued facet. - type: string - CIAppGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - CIAppSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc + GitRepositoryID: + description: Git Repository ID + example: github.com/organization/example-repository type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - CIAppAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. + DORADeploymentPatchRemediationType: + description: The type of remediation action taken. Required when the failed deployment must be linked to a remediation deployment. enum: - - alphabetical - - measure + - rollback + - rollforward + example: rollback type: string x-enum-varnames: - - ALPHABETICAL - - MEASURE - CIAppGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - CIAppGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - CIAppGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - CIAppComputes: - additionalProperties: - $ref: '#/components/schemas/CIAppAggregateBucketValue' - description: >- - A map of the metric name to value for regular compute, or a list of - values for a timeseries. - type: object - CIAppPipelineLevel: - description: Pipeline execution level. + - ROLLBACK + - ROLLFORWARD + FeatureFlagStatus: + description: The status of a feature flag in an environment. enum: - - pipeline - - stage - - job - - step - - custom - example: pipeline + - ENABLED + - DISABLED + example: ENABLED type: string x-enum-varnames: - - PIPELINE - - STAGE - - JOB - - STEP - - CUSTOM - TagsEventAttribute: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - CIAppTestLevel: - description: Test run level. + - ENABLED + - DISABLED + RolloutStrategy: + description: The progression strategy used by a progressive rollout. enum: - - session - - module - - suite - - test - example: test + - UNIFORM_INTERVALS + - NO_ROLLOUT + example: UNIFORM_INTERVALS type: string x-enum-varnames: - - SESSION - - MODULE - - SUITE - - TEST - DORACustomTags: - description: >- - A list of user-defined tags. The tags must follow the `key:value` - pattern. Up to 100 may be added per event. - example: - - language:java - - department:engineering - items: - description: Tags in the form of `key:value`. - type: string - nullable: true - type: array - DORAGitInfo: - description: Git info for DORA Metrics events. + - UNIFORM_INTERVALS + - NO_ROLLOUT + RolloutOptionsRequest: + description: Rollout options request payload. properties: - commit_sha: - $ref: '#/components/schemas/GitCommitSHA' - repository_url: - $ref: '#/components/schemas/GitRepositoryURL' + autostart: + description: Whether the schedule should begin automatically. + example: false + nullable: true + type: boolean + selection_interval_ms: + description: Interval in milliseconds for uniform interval strategies. + example: 3600000 + format: int64 + type: integer + strategy: + $ref: '#/components/schemas/RolloutStrategy' required: - - repository_url - - commit_sha + - strategy type: object - Spec: - description: The spec defines what the workflow does. + ExposureRolloutStepRequest: + description: Rollout step request payload. properties: - annotations: - description: >- - A list of annotations used in the workflow. These are like sticky - notes for your workflow! - items: - $ref: '#/components/schemas/Annotation' - type: array - connectionEnvs: - description: A list of connections or connection groups used in the workflow. - items: - $ref: '#/components/schemas/ConnectionEnv' - type: array - handle: - description: >- - Unique identifier used to trigger workflows automatically in - Datadog. + exposure_ratio: + description: The exposure ratio for this step. + example: 0.5 + format: double + maximum: 1 + minimum: 0 + type: number + grouped_step_index: + description: Logical index grouping related steps. + example: 1 + format: int64 + minimum: 0 + type: integer + id: + description: The unique identifier of the progression step. + example: 550e8400-e29b-41d4-a716-446655440040 + format: uuid type: string - inputSchema: - $ref: '#/components/schemas/InputSchema' - outputSchema: - $ref: '#/components/schemas/OutputSchema' - steps: - description: >- - A `Step` is a sub-component of a workflow. Each `Step` performs an - action. + interval_ms: + description: Step duration in milliseconds. + example: 3600000 + format: int64 + nullable: true + type: integer + is_pause_record: + description: Whether this step represents a pause record. + example: false + type: boolean + required: + - exposure_ratio + - is_pause_record + - grouped_step_index + type: object + GuardrailTriggerAction: + description: Action to perform when a guardrail threshold is triggered. + enum: + - PAUSE + - ABORT + example: PAUSE + type: string + x-enum-varnames: + - PAUSE + - ABORT + ConditionRequest: + description: |- + Condition request payload for targeting rules. A condition is either an inline + predicate with `operator`, `attribute`, and `value`, or a reference to a + saved filter with `saved_filter_id`. The two shapes are mutually exclusive. + properties: + attribute: + description: The user or request attribute to evaluate. Required for inline conditions; omit when `saved_filter_id` is set. + example: user_tier + type: string + operator: + $ref: '#/components/schemas/ConditionOperator' + saved_filter_id: + description: |- + The ID of a saved filter to reference as this condition. Mutually exclusive + with `operator`, `attribute`, and `value`. When set, the saved filter's + targeting rules are evaluated in place of an inline predicate. + example: 550e8400-e29b-41d4-a716-446655440090 + format: uuid + type: string + value: + description: Values used by the selected operator. Required for inline conditions; omit when `saved_filter_id` is set. + example: + - premium + - enterprise items: - $ref: '#/components/schemas/Step' + description: Target value for the selected operator. + type: string type: array - triggers: - description: >- - The list of triggers that activate this workflow. At least one - trigger is required, and each trigger type may appear at most once. + type: object + Condition: + description: |- + Targeting condition details. A condition is either an inline + predicate with `operator`, `attribute`, and `value`, or a reference to a + saved filter with `saved_filter_id`. The inline fields are omitted for saved-filter + references. + properties: + attribute: + description: The user or request attribute to evaluate. Omitted for saved-filter references. + example: country + type: string + created_at: + description: The timestamp when the condition was created. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + id: + description: The unique identifier of the condition. + example: 550e8400-e29b-41d4-a716-446655440070 + format: uuid + type: string + operator: + $ref: '#/components/schemas/ConditionOperator' + saved_filter_id: + description: The ID of the saved filter referenced by this condition, or null for inline conditions. + example: 550e8400-e29b-41d4-a716-446655440090 + format: uuid + nullable: true + type: string + updated_at: + description: The timestamp when the condition was last updated. + example: '2024-01-01T12:00:00Z' + format: date-time + type: string + value: + description: Values used by the selected operator. Omitted for saved-filter references. + example: + - US + - CA items: - $ref: '#/components/schemas/Trigger' + description: Target value for the selected operator. + type: string type: array + required: + - id + - created_at + - updated_at type: object - WorkflowUserRelationship: - description: The definition of `WorkflowUserRelationship` object. - properties: - data: - $ref: '#/components/schemas/WorkflowUserRelationshipData' - type: object - CIAppCreatePipelineEventRequestAttributesResource: - description: Details of the CI pipeline event. - example: Details TBD - oneOf: - - $ref: '#/components/schemas/CIAppPipelineEventPipeline' - - $ref: '#/components/schemas/CIAppPipelineEventStage' - - $ref: '#/components/schemas/CIAppPipelineEventJob' - - $ref: '#/components/schemas/CIAppPipelineEventStep' - CIAppAggregateBucketValue: - description: A bucket value, can either be a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/CIAppAggregateBucketValueSingleString' - - $ref: '#/components/schemas/CIAppAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseries' - GitCommitSHA: - description: Git Commit SHA. - example: 66adc9350f2cc9b250b69abddab733dd55e1a588 - pattern: ^[a-fA-F0-9]{40,}$ + UpdateFlakyTestsRequestTestNewState: + description: The new state to set for the flaky test. + enum: + - active + - quarantined + - disabled + - fixed + example: active type: string - GitRepositoryURL: - description: Git Repository URL - example: https://github.com/organization/example-repository + x-enum-varnames: + - ACTIVE + - QUARANTINED + - DISABLED + - FIXED + FlakyTestHistoryPolicyId: + description: The policy that triggered this status change. + enum: + - ftm_policy.manual + - ftm_policy.fixed + - ftm_policy.disable.failure_rate + - ftm_policy.disable.branch_flake + - ftm_policy.disable.days_active + - ftm_policy.quarantine.failure_rate + - ftm_policy.quarantine.branch_flake + - ftm_policy.quarantine.days_active + - unknown + example: ftm_policy.quarantine.failure_rate + nullable: false type: string + x-enum-varnames: + - MANUAL + - FIXED + - DISABLE_FAILURE_RATE + - DISABLE_BRANCH_FLAKE + - DISABLE_DAYS_ACTIVE + - QUARANTINE_FAILURE_RATE + - QUARANTINE_BRANCH_FLAKE + - QUARANTINE_DAYS_ACTIVE + - UNKNOWN + FlakyTestHistoryPolicyMeta: + description: Metadata about the policy that triggered this status change. + properties: + branches: + description: Branches where the test was flaky at the time of the status change. + example: + - main + - develop + items: + type: string + nullable: true + type: array + config: + $ref: '#/components/schemas/FlakyTestHistoryPolicyMetaConfig' + nullable: true + days_active: + description: The number of days the test has been active at the time of the status change. + example: 15 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + days_without_flake: + description: The number of days since the test last exhibited flakiness. + example: 30 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + failure_rate: + description: The failure rate of the test at the time of the status change. + example: 0.25 + format: double + maximum: 1 + minimum: 0 + nullable: true + type: number + state: + description: The previous state of the test. + example: quarantined + nullable: true + type: string + total_runs: + description: The total number of test runs at the time of the status change. + example: 200 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + type: object Annotation: - description: >- - A list of annotations used in the workflow. These are like sticky notes - for your workflow! + description: A text annotation displayed on the workflow canvas. properties: display: $ref: '#/components/schemas/AnnotationDisplay' id: - description: The `Annotation` `id`. + description: The unique identifier of this annotation within the workflow. example: '' + minLength: 1 type: string markdownTextAnnotation: $ref: '#/components/schemas/AnnotationMarkdownTextAnnotation' @@ -2781,9 +10949,7 @@ components: - env type: object InputSchema: - description: >- - A list of input parameters for the workflow. These can be used as - dynamic runtime values in your workflow. + description: A list of input parameters for the workflow. Input parameters are available under the `Trigger` object and can be referenced in workflow steps using `{{ Trigger. }}`. properties: parameters: description: The `InputSchema` `parameters`. @@ -2806,6 +10972,7 @@ components: actionId: description: The unique identifier of an action. example: '' + minLength: 1 type: string completionGate: $ref: '#/components/schemas/CompletionGate' @@ -2822,9 +10989,10 @@ components: name: description: Name of the step. example: '' + minLength: 1 type: string outboundEdges: - description: A list of subsequent actions to run. + description: A list of subsequent actions to run. This list is empty for a terminal step. items: $ref: '#/components/schemas/OutboundEdge' type: array @@ -2841,23 +11009,80 @@ components: type: object Trigger: description: One of the triggers that can start the execution of a workflow. - oneOf: - - $ref: '#/components/schemas/APITriggerWrapper' - - $ref: '#/components/schemas/AppTriggerWrapper' - - $ref: '#/components/schemas/CaseTriggerWrapper' - - $ref: '#/components/schemas/ChangeEventTriggerWrapper' - - $ref: '#/components/schemas/DatabaseMonitoringTriggerWrapper' - - $ref: '#/components/schemas/DashboardTriggerWrapper' - - $ref: '#/components/schemas/GithubWebhookTriggerWrapper' - - $ref: '#/components/schemas/IncidentTriggerWrapper' - - $ref: '#/components/schemas/MonitorTriggerWrapper' - - $ref: '#/components/schemas/NotebookTriggerWrapper' - - $ref: '#/components/schemas/ScheduleTriggerWrapper' - - $ref: '#/components/schemas/SecurityTriggerWrapper' - - $ref: '#/components/schemas/SelfServiceTriggerWrapper' - - $ref: '#/components/schemas/SlackTriggerWrapper' - - $ref: '#/components/schemas/SoftwareCatalogTriggerWrapper' - - $ref: '#/components/schemas/WorkflowTriggerWrapper' + properties: + agentTrigger: + $ref: '#/components/schemas/AgentTrigger' + startStepNames: + $ref: '#/components/schemas/StartStepNames' + apiTrigger: + $ref: '#/components/schemas/APITrigger' + appTrigger: + description: Trigger a workflow from an App. (opaque JSON object) + type: string + caseTrigger: + $ref: '#/components/schemas/CaseTrigger' + changeEventTrigger: + description: Trigger a workflow from a Change Event. (opaque JSON object) + type: string + databaseMonitoringTrigger: + description: Trigger a workflow from Database Monitoring. (opaque JSON object) + type: string + datastoreTrigger: + $ref: '#/components/schemas/DatastoreTrigger' + dashboardTrigger: + description: Trigger a workflow from a Dashboard. (opaque JSON object) + type: string + formTrigger: + $ref: '#/components/schemas/FormTrigger' + githubWebhookTrigger: + $ref: '#/components/schemas/GithubWebhookTrigger' + incidentTrigger: + $ref: '#/components/schemas/IncidentTrigger' + monitorTrigger: + $ref: '#/components/schemas/MonitorTrigger' + notebookTrigger: + description: Trigger a workflow from a Notebook. (opaque JSON object) + type: string + onCallTrigger: + $ref: '#/components/schemas/OnCallTrigger' + scheduleTrigger: + $ref: '#/components/schemas/ScheduleTrigger' + securityTrigger: + $ref: '#/components/schemas/SecurityTrigger' + selfServiceTrigger: + description: Trigger a workflow from Self Service. (opaque JSON object) + type: string + slackTrigger: + description: Trigger a workflow from Slack. The workflow must be published. (opaque JSON object) + type: string + softwareCatalogTrigger: + description: Trigger a workflow from Software Catalog. (opaque JSON object) + type: string + workflowTrigger: + description: Trigger a workflow from the Datadog UI. When present, this must be the workflow's only trigger. (opaque JSON object) + type: string + required: + - agentTrigger + - apiTrigger + - appTrigger + - caseTrigger + - changeEventTrigger + - databaseMonitoringTrigger + - datastoreTrigger + - dashboardTrigger + - formTrigger + - githubWebhookTrigger + - incidentTrigger + - monitorTrigger + - notebookTrigger + - onCallTrigger + - scheduleTrigger + - securityTrigger + - selfServiceTrigger + - slackTrigger + - softwareCatalogTrigger + - workflowTrigger + type: object WorkflowUserRelationshipData: description: The definition of `WorkflowUserRelationshipData` object. properties: @@ -2873,9 +11098,90 @@ components: type: object CIAppPipelineEventPipeline: description: Details of the top level pipeline, build, or workflow of your CI. - oneOf: - - $ref: '#/components/schemas/CIAppPipelineEventFinishedPipeline' - - $ref: '#/components/schemas/CIAppPipelineEventInProgressPipeline' + properties: + end: + description: Time when the pipeline run finished. It cannot be older than 18 hours in the past from the current time. The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time + type: string + error: + $ref: '#/components/schemas/CIAppCIError' + git: + $ref: '#/components/schemas/CIAppGitInfo' + is_manual: + description: Whether or not the pipeline was triggered manually by the user. + example: false + nullable: true + type: boolean + is_resumed: + description: Whether or not the pipeline was resumed after being blocked. + example: false + nullable: true + type: boolean + level: + $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' + metrics: + $ref: '#/components/schemas/CIAppPipelineEventMetrics' + name: + description: Name of the pipeline. All pipeline runs for the builds should have the same name. + example: Deploy to AWS + type: string + node: + $ref: '#/components/schemas/CIAppHostInfo' + parameters: + $ref: '#/components/schemas/CIAppPipelineEventParameters' + parent_pipeline: + $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' + partial_retry: + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one + which only runs a subset of the original jobs. + example: false + type: boolean + pipeline_id: + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. + example: '#023' + type: string + previous_attempt: + $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + start: + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time + type: string + status: + $ref: '#/components/schemas/CIAppPipelineEventPipelineStatus' + tags: + $ref: '#/components/schemas/CIAppPipelineEventTags' + unique_id: + description: |- + UUID of the pipeline run. The ID has to be unique across retries and pipelines, + including partial retries. + example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a + type: string + url: + description: The URL to look at the pipeline in the CI provider UI. + example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 + type: string + required: + - level + - unique_id + - name + - url + - start + - end + - status + - partial_retry + type: object CIAppPipelineEventStage: description: Details of a CI stage. properties: @@ -2899,9 +11205,7 @@ components: git: $ref: '#/components/schemas/CIAppGitInfo' id: - description: >- - UUID for the stage. It has to be unique at least in the pipeline - scope. + description: UUID for the stage. It has to be unique at least in the pipeline scope. example: 562bdbbb-7cab-48c8-851c-b24ca14628bf type: string level: @@ -2932,9 +11236,7 @@ components: nullable: true type: integer start: - description: >- - Time when the stage run started (it should not include any queue - time). The time format must be RFC3339. + description: Time when the stage run started (it should not include any queue time). The time format must be RFC3339. example: '2023-05-31T15:30:00Z' format: date-time type: string @@ -2975,9 +11277,7 @@ components: git: $ref: '#/components/schemas/CIAppGitInfo' id: - description: >- - The UUID for the job. It has to be unique within each pipeline - execution. + description: The UUID for the job. It has to be unique within each pipeline execution. example: c865bad4-de82-44b8-ade7-2c987528eb54 type: string level: @@ -3016,9 +11316,9 @@ components: nullable: true type: string start: - description: >- - Time when the job run instance started (it should not include any - queue time). The time format must be RFC3339. + description: |- + Time when the job run instance started (it should not include any queue time). + The time format must be RFC3339. example: '2023-05-31T15:30:00Z' format: date-time type: string @@ -3054,9 +11354,7 @@ components: git: $ref: '#/components/schemas/CIAppGitInfo' id: - description: >- - UUID for the step. It has to be unique within each pipeline - execution. + description: UUID for the step. It has to be unique within each pipeline execution. example: c2d517a8-4f3a-4b41-b4ae-69df0c864c79 type: string job_id: @@ -3108,40 +11406,172 @@ components: description: The URL to look at the step in the CI provider UI. nullable: true type: string - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - end + - status + type: object + CIAppAggregateBucketValueSingleString: + description: A single string value. + type: string + CIAppAggregateBucketValueSingleNumber: + description: A single number value. + format: double + type: number + CIAppAggregateBucketValueTimeseries: + description: A timeseries array. + items: + $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseriesPoint' + type: array + x-generate-alias-as-model: true + TestOptimizationFlakyTestsManagementPoliciesDisabledStatus: + description: |- + Test status that the disable policy applies to. + Must be either `active` or `quarantined`. + enum: + - active + - quarantined + example: active + type: string + x-enum-varnames: + - ACTIVE + - QUARANTINED + DeploymentGatesMonitorRule: + description: A monitor rule to evaluate as part of a deployment gate evaluation. + properties: + dry_run: + description: Rule-level dry run. When enabled, the rule is evaluated normally but always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + name: + description: Human-readable name for this rule. + example: error rate monitors + type: string + options: + $ref: '#/components/schemas/DeploymentGatesMonitorRuleOptions' + type: + $ref: '#/components/schemas/DeploymentGatesMonitorRuleType' + required: + - type + - name + type: object + DeploymentGatesFDDRule: + description: A faulty deployment detection rule to evaluate as part of a deployment gate evaluation. + properties: + dry_run: + description: Rule-level dry run. When enabled, the rule is evaluated normally but it always returns `pass`. The real result is visible in the Datadog UI. + example: false + type: boolean + name: + description: Human-readable name for this rule. + example: apm faulty deployment + type: string + options: + $ref: '#/components/schemas/DeploymentGatesFDDRuleOptions' + type: + $ref: '#/components/schemas/DeploymentGatesFDDRuleType' + required: + - type + - name + type: object + ConditionOperator: + description: The operator used in a targeting condition. + enum: + - LT + - LTE + - GT + - GTE + - MATCHES + - NOT_MATCHES + - ONE_OF + - NOT_ONE_OF + - IS_NULL + - EQUALS + example: ONE_OF + type: string + x-enum-varnames: + - LT + - LTE + - GT + - GTE + - MATCHES + - NOT_MATCHES + - ONE_OF + - NOT_ONE_OF + - IS_NULL + - EQUALS + FlakyTestHistoryPolicyMetaConfig: + description: Configuration parameters of the policy that triggered this status change. + properties: + branches: + description: The branches considered by the policy. + example: + - main + items: + type: string + nullable: true + type: array + days_active: + description: The number of days a test must have been active for the policy to trigger. + example: 30 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + failure_rate: + description: The failure rate threshold for the policy to trigger. + example: 0.7 + format: double + maximum: 1 + minimum: 0 + nullable: true + type: number + forget_branches: + description: Branches excluded from the policy evaluation. + example: + - release + items: + type: string + nullable: true + type: array + required_runs: + description: The minimum number of test runs required for the policy to trigger. + example: 100 + format: int32 + maximum: 2147483647 + nullable: true + type: integer + state: + description: The target state the policy transitions the test from. + example: quarantined + nullable: true + type: string + test_services: + description: Test services excluded from the policy evaluation. + example: + - my-service + items: + type: string + nullable: true + type: array type: object - CIAppAggregateBucketValueSingleString: - description: A single string value. - type: string - CIAppAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - CIAppAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true AnnotationDisplay: - description: The definition of `AnnotationDisplay` object. + description: The annotation's position and size on the workflow canvas. properties: bounds: $ref: '#/components/schemas/AnnotationDisplayBounds' type: object AnnotationMarkdownTextAnnotation: - description: The definition of `AnnotationMarkdownTextAnnotation` object. + description: Markdown content displayed in an annotation. properties: text: - description: The `markdownTextAnnotation` `text`. + description: The annotation's Markdown content. + maxLength: 3000 type: string type: object ConnectionGroup: @@ -3160,6 +11590,7 @@ components: example: - '' items: + description: A tag string in `key:value` format. type: string type: array required: @@ -3193,6 +11624,11 @@ components: InputSchemaParameters: description: The definition of `InputSchemaParameters` object. properties: + allowExtraValues: + description: The `InputSchemaParameters` `allowExtraValues`. + type: boolean + allowedValues: + description: The `InputSchemaParameters` `allowedValues`. defaultValue: description: The `InputSchemaParameters` `defaultValue`. description: @@ -3204,6 +11640,7 @@ components: name: description: The `InputSchemaParameters` `name`. example: '' + minLength: 1 type: string type: $ref: '#/components/schemas/InputSchemaParametersType' @@ -3235,6 +11672,7 @@ components: - type type: object CompletionGate: + additionalProperties: false description: Used to create conditions before running subsequent actions. properties: completionCondition: @@ -3246,12 +11684,15 @@ components: - retryStrategy type: object StepDisplay: - description: The definition of `StepDisplay` object. + description: |- + The position of a step on the workflow canvas. Omit `display` from every step to use + automatic layout, or provide it for every step to preserve a manual layout. properties: bounds: $ref: '#/components/schemas/StepDisplayBounds' type: object ErrorHandler: + additionalProperties: false description: Used to handle errors in an action. properties: fallbackStepName: @@ -3269,11 +11710,13 @@ components: properties: branchName: description: The `OutboundEdge` `branchName`. - example: '' + example: main + minLength: 1 type: string nextStepName: description: The `OutboundEdge` `nextStepName`. - example: '' + example: Step2 + minLength: 1 type: string required: - nextStepName @@ -3285,6 +11728,7 @@ components: name: description: The `Parameter` `name`. example: '' + minLength: 1 type: string value: description: The `Parameter` `value`. @@ -3293,6 +11737,7 @@ components: - value type: object ReadinessGate: + additionalProperties: false description: Used to merge multiple branches into a single branch. properties: thresholdType: @@ -3300,6 +11745,16 @@ components: required: - thresholdType type: object + AgentTriggerWrapper: + description: Schema for an agent-based trigger. + properties: + agentTrigger: + $ref: '#/components/schemas/AgentTrigger' + startStepNames: + $ref: '#/components/schemas/StartStepNames' + required: + - agentTrigger + type: object APITriggerWrapper: description: Schema for an API-based trigger. properties: @@ -3314,8 +11769,8 @@ components: description: Schema for an App-based trigger. properties: appTrigger: - description: Trigger a workflow from an App. - type: object + description: Trigger a workflow from an App. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: @@ -3335,8 +11790,8 @@ components: description: Schema for a Change Event-based trigger. properties: changeEventTrigger: - description: Trigger a workflow from a Change Event. - type: object + description: Trigger a workflow from a Change Event. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: @@ -3346,24 +11801,44 @@ components: description: Schema for a Database Monitoring-based trigger. properties: databaseMonitoringTrigger: - description: Trigger a workflow from Database Monitoring. - type: object + description: Trigger a workflow from Database Monitoring. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: - databaseMonitoringTrigger type: object + DatastoreTriggerWrapper: + description: Schema for a Datastore-based trigger. + properties: + datastoreTrigger: + $ref: '#/components/schemas/DatastoreTrigger' + startStepNames: + $ref: '#/components/schemas/StartStepNames' + required: + - datastoreTrigger + type: object DashboardTriggerWrapper: description: Schema for a Dashboard-based trigger. properties: dashboardTrigger: - description: Trigger a workflow from a Dashboard. - type: object + description: Trigger a workflow from a Dashboard. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: - dashboardTrigger type: object + FormTriggerWrapper: + description: Schema for a Form-based trigger. + properties: + formTrigger: + $ref: '#/components/schemas/FormTrigger' + startStepNames: + $ref: '#/components/schemas/StartStepNames' + required: + - formTrigger + type: object GithubWebhookTriggerWrapper: description: Schema for a GitHub webhook-based trigger. properties: @@ -3398,13 +11873,23 @@ components: description: Schema for a Notebook-based trigger. properties: notebookTrigger: - description: Trigger a workflow from a Notebook. - type: object + description: Trigger a workflow from a Notebook. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: - notebookTrigger type: object + OnCallTriggerWrapper: + description: Schema for an On-Call-based trigger. + properties: + onCallTrigger: + $ref: '#/components/schemas/OnCallTrigger' + startStepNames: + $ref: '#/components/schemas/StartStepNames' + required: + - onCallTrigger + type: object ScheduleTriggerWrapper: description: Schema for a Schedule-based trigger. properties: @@ -3429,8 +11914,8 @@ components: description: Schema for a Self Service-based trigger. properties: selfServiceTrigger: - description: Trigger a workflow from Self Service. - type: object + description: Trigger a workflow from Self Service. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: @@ -3440,8 +11925,8 @@ components: description: Schema for a Slack-based trigger. properties: slackTrigger: - description: Trigger a workflow from Slack. The workflow must be published. - type: object + description: Trigger a workflow from Slack. The workflow must be published. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: @@ -3451,8 +11936,8 @@ components: description: Schema for a Software Catalog-based trigger. properties: softwareCatalogTrigger: - description: Trigger a workflow from Software Catalog. - type: object + description: Trigger a workflow from Software Catalog. (opaque JSON object) + type: string startStepNames: $ref: '#/components/schemas/StartStepNames' required: @@ -3464,10 +11949,8 @@ components: startStepNames: $ref: '#/components/schemas/StartStepNames' workflowTrigger: - description: >- - Trigger a workflow from the Datadog UI. Only required if no other - trigger exists. - type: object + description: Trigger a workflow from the Datadog UI. When present, this must be the workflow's only trigger. (opaque JSON object) + type: string required: - workflowTrigger type: object @@ -3483,10 +11966,7 @@ components: description: Details of a finished pipeline. properties: end: - description: >- - Time when the pipeline run finished. It cannot be older than 18 - hours in the past from the current time. The time format must be - RFC3339. + description: Time when the pipeline run finished. It cannot be older than 18 hours in the past from the current time. The time format must be RFC3339. example: '2023-05-31T15:30:00Z' format: date-time type: string @@ -3509,9 +11989,7 @@ components: metrics: $ref: '#/components/schemas/CIAppPipelineEventMetrics' name: - description: >- - Name of the pipeline. All pipeline runs for the builds should have - the same name. + description: Name of the pipeline. All pipeline runs for the builds should have the same name. example: Deploy to AWS type: string node: @@ -3521,20 +11999,15 @@ components: parent_pipeline: $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' partial_retry: - description: >- - Whether or not the pipeline was a partial retry of a previous - attempt. A partial retry is one - + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one which only runs a subset of the original jobs. example: false type: boolean pipeline_id: - description: >- - Any ID used in the provider to identify the pipeline run even if it - is not unique across retries. - - If the `pipeline_id` is unique, then both `unique_id` and - `pipeline_id` can be set to the same value. + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. example: '#023' type: string previous_attempt: @@ -3547,9 +12020,7 @@ components: nullable: true type: integer start: - description: >- - Time when the pipeline run started (it should not include any queue - time). The time format must be RFC3339. + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. example: '2023-05-31T15:30:00Z' format: date-time type: string @@ -3558,10 +12029,8 @@ components: tags: $ref: '#/components/schemas/CIAppPipelineEventTags' unique_id: - description: >- - UUID of the pipeline run. The ID has to be unique across retries and - pipelines, - + description: |- + UUID of the pipeline run. The ID has to be unique across retries and pipelines, including partial retries. example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a type: string @@ -3601,9 +12070,7 @@ components: metrics: $ref: '#/components/schemas/CIAppPipelineEventMetrics' name: - description: >- - Name of the pipeline. All pipeline runs for the builds should have - the same name. + description: Name of the pipeline. All pipeline runs for the builds should have the same name. example: Deploy to AWS type: string node: @@ -3613,20 +12080,15 @@ components: parent_pipeline: $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' partial_retry: - description: >- - Whether or not the pipeline was a partial retry of a previous - attempt. A partial retry is one - + description: |- + Whether or not the pipeline was a partial retry of a previous attempt. A partial retry is one which only runs a subset of the original jobs. example: false type: boolean pipeline_id: - description: >- - Any ID used in the provider to identify the pipeline run even if it - is not unique across retries. - - If the `pipeline_id` is unique, then both `unique_id` and - `pipeline_id` can be set to the same value. + description: |- + Any ID used in the provider to identify the pipeline run even if it is not unique across retries. + If the `pipeline_id` is unique, then both `unique_id` and `pipeline_id` can be set to the same value. example: '#023' type: string previous_attempt: @@ -3639,9 +12101,7 @@ components: nullable: true type: integer start: - description: >- - Time when the pipeline run started (it should not include any queue - time). The time format must be RFC3339. + description: Time when the pipeline run started (it should not include any queue time). The time format must be RFC3339. example: '2023-05-31T15:30:00Z' format: date-time type: string @@ -3650,9 +12110,7 @@ components: tags: $ref: '#/components/schemas/CIAppPipelineEventTags' unique_id: - description: >- - UUID of the pipeline run. The ID has to be the same as the finished - pipeline. + description: UUID of the pipeline run. The ID has to be the same as the finished pipeline. example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a type: string url: @@ -3690,10 +12148,8 @@ components: type: string type: object CIAppGitInfo: - description: >- - If pipelines are triggered due to actions to a Git repository, then all - payloads must contain this. - + description: |- + If pipelines are triggered due to actions to a Git repository, then all payloads must contain this. Note that either `tag` or `branch` has to be provided, but not both. nullable: true properties: @@ -3769,9 +12225,7 @@ components: x-enum-varnames: - STAGE CIAppPipelineEventMetrics: - description: >- - A list of user-defined metrics. The metrics must follow the `key:value` - pattern and the value must be numeric. + description: A list of user-defined metrics. The metrics must follow the `key:value` pattern and the value must be numeric. example: - bundle_size:370 - build_time:50021 @@ -3781,9 +12235,7 @@ components: nullable: true type: array CIAppHostInfo: - description: >- - Contains information of the host running the pipeline, stage, job, or - step. + description: Contains information of the host running the pipeline, stage, job, or step. nullable: true properties: hostname: @@ -3796,75 +12248,217 @@ components: - ubuntu-18.04 - n2.large items: + description: A label used to select or identify the node. type: string type: array name: description: Name for the host. type: string - workspace: - description: The path where the code is checked out. - example: /home/workspace/code/my-repo + workspace: + description: The path where the code is checked out. + example: /home/workspace/code/my-repo + type: string + type: object + CIAppPipelineEventParameters: + additionalProperties: + type: string + description: A map of key-value parameters or environment variables that were defined for the pipeline. + example: + LOG_LEVEL: debug + nullable: true + type: object + CIAppPipelineEventStageStatus: + description: The final status of the stage. + enum: + - success + - error + - canceled + - skipped + example: success + type: string + x-enum-varnames: + - SUCCESS + - ERROR + - CANCELED + - SKIPPED + CIAppPipelineEventTags: + description: A list of user-defined tags. The tags must follow the `key:value` pattern. + example: + - team:backend + - type:deployment + items: + description: Tags in the form of `key:value`. + type: string + nullable: true + type: array + CIAppPipelineEventFinishedJob: + description: Details of a finished CI job. + properties: + dependencies: + description: A list of job IDs that this job depends on. + example: + - f7e6a006-a029-46c3-b0cc-742c9d7d363b + - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe + items: + description: A list of job IDs. + type: string + nullable: true + type: array + end: + description: Time when the job run finished. The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time + type: string + error: + $ref: '#/components/schemas/CIAppCIError' + git: + $ref: '#/components/schemas/CIAppGitInfo' + id: + description: The UUID for the job. It has to be unique within each pipeline execution. + example: c865bad4-de82-44b8-ade7-2c987528eb54 + type: string + level: + $ref: '#/components/schemas/CIAppPipelineEventJobLevel' + metrics: + $ref: '#/components/schemas/CIAppPipelineEventMetrics' + name: + description: The name for the job. + example: test + type: string + node: + $ref: '#/components/schemas/CIAppHostInfo' + parameters: + $ref: '#/components/schemas/CIAppPipelineEventParameters' + pipeline_name: + description: The parent pipeline name. + example: Build + type: string + pipeline_unique_id: + description: The parent pipeline UUID. + example: 76b572af-a078-42b2-a08a-cc28f98b944f + type: string + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + stage_id: + description: The parent stage UUID (if applicable). + nullable: true + type: string + stage_name: + description: The parent stage name (if applicable). + nullable: true + type: string + start: + description: |- + Time when the job run instance started (it should not include any queue time). + The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time + type: string + status: + $ref: '#/components/schemas/CIAppPipelineEventJobStatus' + tags: + $ref: '#/components/schemas/CIAppPipelineEventTags' + url: + description: The URL to look at the job in the CI provider UI. + example: https://ci-platform.com/job/your-job-name/build/123 + type: string + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - end + - status + - url + type: object + CIAppPipelineEventInProgressJob: + description: Details of a running CI job. + properties: + dependencies: + description: A list of job IDs that this job depends on. + example: + - f7e6a006-a029-46c3-b0cc-742c9d7d363b + - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe + items: + description: A list of job IDs. + type: string + nullable: true + type: array + error: + $ref: '#/components/schemas/CIAppCIError' + git: + $ref: '#/components/schemas/CIAppGitInfo' + id: + description: The UUID for the job. It must match the ID of the corresponding finished job. + example: c865bad4-de82-44b8-ade7-2c987528eb54 + type: string + level: + $ref: '#/components/schemas/CIAppPipelineEventJobLevel' + metrics: + $ref: '#/components/schemas/CIAppPipelineEventMetrics' + name: + description: The name for the job. + example: test + type: string + node: + $ref: '#/components/schemas/CIAppHostInfo' + parameters: + $ref: '#/components/schemas/CIAppPipelineEventParameters' + pipeline_name: + description: The parent pipeline name. + example: Build + type: string + pipeline_unique_id: + description: The parent pipeline UUID. + example: 76b572af-a078-42b2-a08a-cc28f98b944f + type: string + queue_time: + description: The queue time in milliseconds, if applicable. + example: 1004 + format: int64 + minimum: 0 + nullable: true + type: integer + stage_id: + description: The parent stage UUID (if applicable). + nullable: true + type: string + stage_name: + description: The parent stage name (if applicable). + nullable: true + type: string + start: + description: |- + Time when the job run instance started (it should not include any queue time). + The time format must be RFC3339. + example: '2023-05-31T15:30:00Z' + format: date-time type: string + status: + $ref: '#/components/schemas/CIAppPipelineEventJobInProgressStatus' + tags: + $ref: '#/components/schemas/CIAppPipelineEventTags' + url: + description: The URL to look at the job in the CI provider UI. + example: https://ci-platform.com/job/your-job-name/build/123 + type: string + required: + - level + - id + - name + - pipeline_unique_id + - pipeline_name + - start + - status + - url type: object - CIAppPipelineEventParameters: - additionalProperties: - type: string - description: >- - A map of key-value parameters or environment variables that were defined - for the pipeline. - example: - LOG_LEVEL: debug - nullable: true - type: object - CIAppPipelineEventStageStatus: - description: The final status of the stage. - enum: - - success - - error - - canceled - - skipped - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - CIAppPipelineEventTags: - description: >- - A list of user-defined tags. The tags must follow the `key:value` - pattern. - example: - - team:backend - - type:deployment - items: - description: Tags in the form of `key:value`. - type: string - nullable: true - type: array - CIAppPipelineEventJobLevel: - default: job - description: Used to distinguish between pipelines, stages, jobs, and steps. - enum: - - job - example: job - type: string - x-enum-varnames: - - JOB - CIAppPipelineEventJobStatus: - description: The final status of the job. - enum: - - success - - error - - canceled - - skipped - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED CIAppPipelineEventStepLevel: default: step description: Used to distinguish between pipelines, stages, jobs and steps. @@ -3898,23 +12492,79 @@ components: format: double type: number type: object + DeploymentGatesMonitorRuleOptions: + description: Options for a `monitor` rule. + properties: + duration: + description: Evaluation window in seconds. Maximum 7200 (2 hours). + example: 300 + format: int64 + maximum: 7200 + type: integer + query: + description: Monitor search query. + example: service:transaction-backend env:production + type: string + required: + - query + type: object + DeploymentGatesMonitorRuleType: + description: The type identifier for a monitor rule. + enum: + - monitor + example: monitor + type: string + x-enum-varnames: + - MONITOR + DeploymentGatesFDDRuleOptions: + description: Options for a `faulty_deployment_detection` rule. + properties: + allowed_resources: + description: APM resource names to include in analysis. Mutually exclusive with `excluded_resources`. + example: + - GET /healthcheck + items: + type: string + type: array + duration: + description: Evaluation window in seconds. Maximum 7200 (2 hours). + example: 900 + format: int64 + maximum: 7200 + type: integer + excluded_resources: + description: APM resource names to exclude from analysis. + example: + - GET /healthcheck + items: + type: string + type: array + type: object + DeploymentGatesFDDRuleType: + description: The type identifier for a faulty deployment detection rule. + enum: + - faulty_deployment_detection + example: faulty_deployment_detection + type: string + x-enum-varnames: + - FAULTY_DEPLOYMENT_DETECTION AnnotationDisplayBounds: - description: The definition of `AnnotationDisplayBounds` object. + description: Canvas coordinates and dimensions for an annotation on the workflow canvas. properties: height: - description: The `bounds` `height`. + description: The annotation's height on the canvas. format: double type: number width: - description: The `bounds` `width`. + description: The annotation's width on the canvas. format: double type: number x: - description: The `bounds` `x`. + description: The annotation's horizontal canvas coordinate. format: double type: number 'y': - description: The `bounds` `y`. + description: The annotation's vertical canvas coordinate. format: double type: number type: object @@ -3963,6 +12613,7 @@ components: - ARRAY_BOOLEAN - ARRAY_OBJECT CompletionCondition: + additionalProperties: false description: The definition of `CompletionCondition` object. properties: operand1: @@ -3976,6 +12627,7 @@ components: - operator type: object RetryStrategy: + additionalProperties: false description: The definition of `RetryStrategy` object. properties: kind: @@ -3984,6 +12636,7 @@ components: $ref: '#/components/schemas/RetryStrategyLinear' required: - kind + - linear type: object StepDisplayBounds: description: The definition of `StepDisplayBounds` object. @@ -4007,52 +12660,67 @@ components: x-enum-varnames: - ANY - ALL - APITrigger: - description: Trigger a workflow from an API request. The workflow must be published. + AgentTrigger: + description: Trigger a workflow from an agent via the MCP execute tool. Workflow can be executed from Bits Chat, Bits Agent Builder, Claude Code, Codex, Cursor, and any other coding agent using the Datadog MCP. properties: rateLimit: $ref: '#/components/schemas/TriggerRateLimit' type: object StartStepNames: - description: A list of steps that run first after a trigger fires. + description: Names of existing workflow steps that run first after a trigger fires. example: - '' items: description: The `StartStepNames` `items`. + minLength: 1 type: string type: array + APITrigger: + description: Trigger a workflow from an API request. The workflow must be published. + properties: + rateLimit: + $ref: '#/components/schemas/TriggerRateLimit' + type: object CaseTrigger: - description: >- - Trigger a workflow from a Case. For automatic triggering a handle must - be configured and the workflow must be published. + description: Trigger a workflow from a Case. For automatic triggering a handle must be configured and the workflow must be published. + properties: + rateLimit: + $ref: '#/components/schemas/TriggerRateLimit' + type: object + DatastoreTrigger: + description: Trigger a workflow from a Datastore. For automatic triggering a handle must be configured and the workflow must be published. properties: rateLimit: $ref: '#/components/schemas/TriggerRateLimit' type: object + FormTrigger: + description: Trigger a workflow from a Form. + properties: + formId: + description: The form UUID. + example: '' + type: string + type: object GithubWebhookTrigger: - description: >- - Trigger a workflow from a GitHub webhook. To trigger a workflow from - GitHub, you must set a `webhookSecret`. In your GitHub Webhook Settings, - set the Payload URL to - "base_url"/api/v2/workflows/"workflow_id"/webhook?orgId="org_id", select - application/json for the content type, and be highly recommend enabling - SSL verification for security. The workflow must be published. + description: Trigger a workflow from a GitHub webhook. To trigger a workflow from GitHub, you must set a `webhookSecret`. In your GitHub Webhook Settings, set the Payload URL to "base_url"/api/v2/workflows/"workflow_id"/webhook?orgId="org_id", select application/json for the content type, and be highly recommend enabling SSL verification for security. The workflow must be published. properties: rateLimit: $ref: '#/components/schemas/TriggerRateLimit' type: object IncidentTrigger: - description: >- - Trigger a workflow from an Incident. For automatic triggering a handle - must be configured and the workflow must be published. + description: Trigger a workflow from an Incident. For automatic triggering a handle must be configured and the workflow must be published. properties: rateLimit: $ref: '#/components/schemas/TriggerRateLimit' type: object MonitorTrigger: - description: >- - Trigger a workflow from a Monitor. For automatic triggering a handle - must be configured and the workflow must be published. + description: Trigger a workflow from a Monitor. For automatic triggering a handle must be configured and the workflow must be published. + properties: + rateLimit: + $ref: '#/components/schemas/TriggerRateLimit' + type: object + OnCallTrigger: + description: Trigger a workflow from an On-Call Page or On-Call Handover. For automatic triggering a handle must be configured and the workflow must be published. properties: rateLimit: $ref: '#/components/schemas/TriggerRateLimit' @@ -4060,6 +12728,8 @@ components: ScheduleTrigger: description: Trigger a workflow from a Schedule. The workflow must be published. properties: + overlapBehavior: + $ref: '#/components/schemas/ScheduleTriggerOverlapBehavior' rruleExpression: description: Recurrence rule expression for scheduling. example: '' @@ -4068,10 +12738,7 @@ components: - rruleExpression type: object SecurityTrigger: - description: >- - Trigger a workflow from a Security Signal or Finding. For automatic - triggering a handle must be configured and the workflow must be - published. + description: Trigger a workflow from a Security Signal or Finding. For automatic triggering a handle must be configured and the workflow must be published. properties: rateLimit: $ref: '#/components/schemas/TriggerRateLimit' @@ -4086,9 +12753,7 @@ components: x-enum-varnames: - PIPELINE CIAppPipelineEventParentPipeline: - description: >- - If the pipeline is triggered as child of another pipeline, this should - contain the details of the parent pipeline. + description: If the pipeline is triggered as child of another pipeline, this should contain the details of the parent pipeline. nullable: true properties: id: @@ -4103,9 +12768,7 @@ components: - id type: object CIAppPipelineEventPreviousPipeline: - description: >- - If the pipeline is a retry, this should contain the details of the - previous attempt. + description: If the pipeline is a retry, this should contain the details of the previous attempt. nullable: true properties: id: @@ -4144,9 +12807,7 @@ components: x-enum-varnames: - RUNNING CIAppCIErrorDomain: - description: >- - Error category used to differentiate between issues related to the - developer or provider environments. + description: Error category used to differentiate between issues related to the developer or provider environments. enum: - provider - user @@ -4156,6 +12817,37 @@ components: - PROVIDER - USER - UNKNOWN + CIAppPipelineEventJobLevel: + default: job + description: Used to distinguish between pipelines, stages, jobs, and steps. + enum: + - job + example: job + type: string + x-enum-varnames: + - JOB + CIAppPipelineEventJobStatus: + description: The final status of the job. + enum: + - success + - error + - canceled + - skipped + example: success + type: string + x-enum-varnames: + - SUCCESS + - ERROR + - CANCELED + - SKIPPED + CIAppPipelineEventJobInProgressStatus: + description: The in-progress status of the job. + enum: + - running + example: running + type: string + x-enum-varnames: + - RUNNING CompletionConditionOperator: description: The definition of `CompletionConditionOperator` object. enum: @@ -4195,19 +12887,21 @@ components: x-enum-varnames: - RETRY_STRATEGY_LINEAR RetryStrategyLinear: + additionalProperties: false description: The definition of `RetryStrategyLinear` object. properties: interval: - description: >- - The `RetryStrategyLinear` `interval`. The expected format is the - number of seconds ending with an s. For example, 1 day is 86400s + description: The `RetryStrategyLinear` `interval`. The expected format is the number of seconds ending with an s. For example, 1 day is 86400s example: '' + pattern: ^[1-9][0-9]*s$ type: string maxRetries: description: The `RetryStrategyLinear` `maxRetries`. example: 0 - format: double - type: number + format: int32 + maximum: 2147483647 + minimum: 0 + type: integer required: - interval - maxRetries @@ -4220,11 +12914,20 @@ components: format: int64 type: integer interval: - description: >- - The `TriggerRateLimit` `interval`. The expected format is the number - of seconds ending with an s. For example, 1 day is 86400s + description: The `TriggerRateLimit` `interval`. The expected format is the number of seconds ending with an s. For example, 1 day is 86400s type: string type: object + ScheduleTriggerOverlapBehavior: + default: EXCLUSIVE_RUN + description: Controls whether a scheduled workflow run may start while another instance is still running. + enum: + - EXCLUSIVE_RUN + - OVERLAP_ALLOWED + example: EXCLUSIVE_RUN + type: string + x-enum-varnames: + - EXCLUSIVE_RUN + - OVERLAP_ALLOWED responses: BadRequestResponse: content: @@ -4238,25 +12941,91 @@ components: schema: $ref: '#/components/schemas/APIErrorResponse' description: Not Authorized + NotFoundResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Not Found TooManyRequestsResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Too many requests + ConflictResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Conflict + HTTPCDGatesBadRequestResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCDGatesBadRequestResponse' + description: Bad request. + UnauthorizedResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/APIErrorResponse' + description: Unauthorized ForbiddenResponse: content: application/json: schema: $ref: '#/components/schemas/APIErrorResponse' description: Forbidden - NotFoundResponse: + HTTPCDGatesNotFoundResponse: content: application/json: schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found + $ref: '#/components/schemas/HTTPCDGatesNotFoundResponse' + description: Deployment gate not found. + HTTPCDRulesNotFoundResponse: + content: + application/json: + schema: + $ref: '#/components/schemas/HTTPCDRulesNotFoundResponse' + description: Deployment rule not found. parameters: + environment_id: + description: The ID of the environment. + in: path + name: environment_id + required: true + schema: + example: 550e8400-e29b-41d4-a716-446655440001 + format: uuid + type: string + exposure_schedule_id: + description: The ID of the exposure schedule. + in: path + name: exposure_schedule_id + required: true + schema: + example: 550e8400-e29b-41d4-a716-446655440010 + format: uuid + type: string + feature_flag_id: + description: The ID of the feature flag. + in: path + name: feature_flag_id + required: true + schema: + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string + variant_id: + description: The ID of the variant. + in: path + name: variant_id + required: true + schema: + example: 550e8400-e29b-41d4-a716-446655440002 + format: uuid + type: string WorkflowId: description: The ID of the workflow. in: path @@ -4265,7 +13034,7 @@ components: schema: type: string PageSize: - description: Size for a given page. The maximum allowed value is 100. + description: Number of items to return per page. The maximum allowed value is 100. in: query name: page[size] required: false @@ -4292,45 +13061,184 @@ components: schema: type: string x-stackQL-resources: + ci_github_accounts: + id: datadog.software_delivery.ci_github_accounts + name: ci_github_accounts + title: Ci Github Accounts + methods: + list_ciapp_git_hub_accounts: + operation: + $ref: '#/paths/~1api~1v2~1ci~1github~1accounts/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_ciapp_git_hub_account: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ci~1github~1accounts/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ci_github_accounts/methods/list_ciapp_git_hub_accounts' + insert: [] + update: + - $ref: '#/components/x-stackQL-resources/ci_github_accounts/methods/update_ciapp_git_hub_account' + delete: [] + replace: [] ci_app_pipeline_events: id: datadog.software_delivery.ci_app_pipeline_events name: ci_app_pipeline_events title: Ci App Pipeline Events methods: create_ciapp_pipeline_event: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1ci~1pipeline/post' response: mediaType: application/json openAPIDocKey: '202' + request: + nativeCasing: camel aggregate_ciapp_pipeline_events: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1analytics~1aggregate/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + list_ciapp_pipeline_events: + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 + search_ciapp_pipeline_events: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events~1search/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ci_app_pipeline_events/methods/list_ciapp_pipeline_events' + insert: + - $ref: '#/components/x-stackQL-resources/ci_app_pipeline_events/methods/create_ciapp_pipeline_event' + update: [] + delete: [] + replace: [] + ci_test_optimization_setting_policies: + id: datadog.software_delivery.ci_test_optimization_setting_policies + name: ci_test_optimization_setting_policies + title: Ci Test Optimization Setting Policies + methods: + update_flaky_tests_management_policies: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ci~1test-optimization~1settings~1policies/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + get_flaky_tests_management_policies: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1ci~1test-optimization~1settings~1policies/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/ci_test_optimization_setting_policies/methods/get_flaky_tests_management_policies' + update: + - $ref: '#/components/x-stackQL-resources/ci_test_optimization_setting_policies/methods/update_flaky_tests_management_policies' + delete: [] + replace: [] + ci_test_optimization_setting_services: + id: datadog.software_delivery.ci_test_optimization_setting_services + name: ci_test_optimization_setting_services + title: Ci Test Optimization Setting Services + methods: + delete_test_optimization_service_settings: operation: - $ref: '#/paths/~1api~1v2~1ci~1pipelines~1analytics~1aggregate/post' + $ref: '#/paths/~1api~1v2~1ci~1test-optimization~1settings~1service/delete' response: mediaType: application/json - openAPIDocKey: '200' - list_ciapp_pipeline_events: + openAPIDocKey: '204' + request: + nativeCasing: camel + update_test_optimization_service_settings: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events/get' + $ref: '#/paths/~1api~1v2~1ci~1test-optimization~1settings~1service/patch' response: mediaType: application/json openAPIDocKey: '200' - objectKey: $.data - search_ciapp_pipeline_events: + request: + nativeCasing: camel + get_test_optimization_service_settings: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1ci~1pipelines~1events~1search/post' + $ref: '#/paths/~1api~1v2~1ci~1test-optimization~1settings~1service/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: - select: - - $ref: >- - #/components/x-stackQL-resources/ci_app_pipeline_events/methods/list_ciapp_pipeline_events + select: [] insert: - - $ref: >- - #/components/x-stackQL-resources/ci_app_pipeline_events/methods/create_ciapp_pipeline_event - update: [] - delete: [] + - $ref: '#/components/x-stackQL-resources/ci_test_optimization_setting_services/methods/get_test_optimization_service_settings' + update: + - $ref: '#/components/x-stackQL-resources/ci_test_optimization_setting_services/methods/update_test_optimization_service_settings' + delete: + - $ref: '#/components/x-stackQL-resources/ci_test_optimization_setting_services/methods/delete_test_optimization_service_settings' replace: [] ci_app_test_events: id: datadog.software_delivery.ci_app_test_events @@ -4338,11 +13246,16 @@ components: title: Ci App Test Events methods: aggregate_ciapp_test_events: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1ci~1tests~1analytics~1aggregate/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel list_ciapp_test_events: operation: $ref: '#/paths/~1api~1v2~1ci~1tests~1events/get' @@ -4350,19 +13263,245 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + pagination: + requestToken: + key: page[cursor] + location: query + responseToken: + key: $.meta.page.after + location: body + queryParamPushdown: + top: + paramName: page[limit] + maxValue: 1000 search_ciapp_test_events: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1ci~1tests~1events~1search/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/ci_app_test_events/methods/list_ciapp_test_events' + insert: + - $ref: '#/components/x-stackQL-resources/ci_app_test_events/methods/search_ciapp_test_events' + update: [] + delete: [] + replace: [] + code_coverage_branch_summaries: + id: datadog.software_delivery.code_coverage_branch_summaries + name: code_coverage_branch_summaries + title: Code Coverage Branch Summaries + methods: + get_code_coverage_branch_summary: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1code-coverage~1branch~1summary/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + code_coverage_commit_summaries: + id: datadog.software_delivery.code_coverage_commit_summaries + name: code_coverage_commit_summaries + title: Code Coverage Commit Summaries + methods: + get_code_coverage_commit_summary: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1code-coverage~1commit~1summary/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] + update: [] + delete: [] + replace: [] + deployment_gates: + id: datadog.software_delivery.deployment_gates + name: deployment_gates + title: Deployment Gates + methods: + list_deployment_gates: + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] + maxValue: 1000 + create_deployment_gate: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_deployment_gate: + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_deployment_gate: + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_deployment_gate: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/deployment_gates/methods/get_deployment_gate' + - $ref: '#/components/x-stackQL-resources/deployment_gates/methods/list_deployment_gates' + insert: + - $ref: '#/components/x-stackQL-resources/deployment_gates/methods/create_deployment_gate' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/deployment_gates/methods/delete_deployment_gate' + replace: + - $ref: '#/components/x-stackQL-resources/deployment_gates/methods/update_deployment_gate' + deployment_gate_rules: + id: datadog.software_delivery.deployment_gate_rules + name: deployment_gate_rules + title: Deployment Gate Rules + methods: + get_deployment_gate_rules: + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{gate_id}~1rules/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + create_deployment_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{gate_id}~1rules/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + delete_deployment_rule: + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{gate_id}~1rules~1{id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_deployment_rule: + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{gate_id}~1rules~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_deployment_rule: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1deployment_gates~1{gate_id}~1rules~1{id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/ci_app_test_events/methods/list_ciapp_test_events + - $ref: '#/components/x-stackQL-resources/deployment_gate_rules/methods/get_deployment_rule' + - $ref: '#/components/x-stackQL-resources/deployment_gate_rules/methods/get_deployment_gate_rules' insert: - - $ref: >- - #/components/x-stackQL-resources/ci_app_test_events/methods/search_ciapp_test_events + - $ref: '#/components/x-stackQL-resources/deployment_gate_rules/methods/create_deployment_rule' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/deployment_gate_rules/methods/delete_deployment_rule' + replace: + - $ref: '#/components/x-stackQL-resources/deployment_gate_rules/methods/update_deployment_rule' + deployment_gate_evaluations: + id: datadog.software_delivery.deployment_gate_evaluations + name: deployment_gate_evaluations + title: Deployment Gate Evaluations + methods: + trigger_deployment_gates_evaluation: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1deployments~1gates~1evaluation/post' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + get_deployment_gates_evaluation_result: + operation: + $ref: '#/paths/~1api~1v2~1deployments~1gates~1evaluation~1{id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/deployment_gate_evaluations/methods/get_deployment_gates_evaluation_result' + insert: [] update: [] delete: [] replace: [] @@ -4372,17 +13511,46 @@ components: title: Dora Deployments methods: create_doradeployment: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1dora~1deployment/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + delete_doradeployment: + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployment~1{deployment_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel + patch_doradeployment_by_version: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployments/patch' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel list_doradeployments: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1dora~1deployments/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel get_doradeployment: operation: $ref: '#/paths/~1api~1v2~1dora~1deployments~1{deployment_id}/get' @@ -4390,17 +13558,30 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + patch_doradeployment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1dora~1deployments~1{deployment_id}/patch' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/dora_deployments/methods/get_doradeployment - - $ref: >- - #/components/x-stackQL-resources/dora_deployments/methods/list_doradeployments + - $ref: '#/components/x-stackQL-resources/dora_deployments/methods/get_doradeployment' + - $ref: '#/components/x-stackQL-resources/dora_deployments/methods/list_doradeployments' insert: - - $ref: >- - #/components/x-stackQL-resources/dora_deployments/methods/create_doradeployment - update: [] - delete: [] + - $ref: '#/components/x-stackQL-resources/dora_deployments/methods/create_doradeployment' + update: + - $ref: '#/components/x-stackQL-resources/dora_deployments/methods/patch_doradeployment' + - $ref: '#/components/x-stackQL-resources/dora_deployments/methods/patch_doradeployment_by_version' + delete: + - $ref: '#/components/x-stackQL-resources/dora_deployments/methods/delete_doradeployment' replace: [] dora_failures: id: datadog.software_delivery.dora_failures @@ -4408,17 +13589,35 @@ components: title: Dora Failures methods: create_dorafailure: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1dora~1failure/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel + delete_dorafailure: + operation: + $ref: '#/paths/~1api~1v2~1dora~1failure~1{failure_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '202' + request: + nativeCasing: camel list_dorafailures: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1dora~1failures/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel get_dorafailure: operation: $ref: '#/paths/~1api~1v2~1dora~1failures~1{failure_id}/get' @@ -4426,35 +13625,338 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/dora_failures/methods/get_dorafailure' + - $ref: '#/components/x-stackQL-resources/dora_failures/methods/list_dorafailures' + insert: + - $ref: '#/components/x-stackQL-resources/dora_failures/methods/create_dorafailure' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/dora_failures/methods/delete_dorafailure' + replace: [] + feature_flags: + id: datadog.software_delivery.feature_flags + name: feature_flags + title: Feature Flags + methods: + list_feature_flags: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 1000 + skip: + paramName: offset + create_feature_flag: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + get_feature_flag: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_feature_flag: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + archive_feature_flag: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1archive/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + unarchive_feature_flag: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1unarchive/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: + - $ref: '#/components/x-stackQL-resources/feature_flags/methods/get_feature_flag' + - $ref: '#/components/x-stackQL-resources/feature_flags/methods/list_feature_flags' + insert: + - $ref: '#/components/x-stackQL-resources/feature_flags/methods/create_feature_flag' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/feature_flags/methods/update_feature_flag' + feature_flag_environments: + id: datadog.software_delivery.feature_flag_environments + name: feature_flag_environments + title: Feature Flag Environments + methods: + list_feature_flags_environments: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1environments/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit + maxValue: 1000 + skip: + paramName: offset + create_feature_flags_environment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1environments/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_feature_flags_environment: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1environments~1{environment_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + get_feature_flags_environment: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1environments~1{environment_id}/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + update_feature_flags_environment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1environments~1{environment_id}/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + disable_feature_flag_environment: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1environments~1{environment_id}~1disable/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + enable_feature_flag_environment: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1environments~1{environment_id}~1enable/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/dora_failures/methods/get_dorafailure - - $ref: >- - #/components/x-stackQL-resources/dora_failures/methods/list_dorafailures + - $ref: '#/components/x-stackQL-resources/feature_flag_environments/methods/get_feature_flags_environment' + - $ref: '#/components/x-stackQL-resources/feature_flag_environments/methods/list_feature_flags_environments' insert: - - $ref: >- - #/components/x-stackQL-resources/dora_failures/methods/create_dorafailure + - $ref: '#/components/x-stackQL-resources/feature_flag_environments/methods/create_feature_flags_environment' + update: [] + delete: + - $ref: '#/components/x-stackQL-resources/feature_flag_environments/methods/delete_feature_flags_environment' + replace: + - $ref: '#/components/x-stackQL-resources/feature_flag_environments/methods/update_feature_flags_environment' + feature_flag_exposure_schedules: + id: datadog.software_delivery.feature_flag_exposure_schedules + name: feature_flag_exposure_schedules + title: Feature Flag Exposure Schedules + methods: + pause_exposure_schedule: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1exposure-schedules~1{exposure_schedule_id}~1pause/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + resume_exposure_schedule: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1exposure-schedules~1{exposure_schedule_id}~1resume/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + start_exposure_schedule: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1exposure-schedules~1{exposure_schedule_id}~1start/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + stop_exposure_schedule: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1exposure-schedules~1{exposure_schedule_id}~1stop/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: [] update: [] delete: [] replace: [] - dora_incidents: - id: datadog.software_delivery.dora_incidents - name: dora_incidents - title: Dora Incidents + feature_flag_environment_allocations: + id: datadog.software_delivery.feature_flag_environment_allocations + name: feature_flag_environment_allocations + title: Feature Flag Environment Allocations + methods: + create_allocations_for_feature_flag_in_environment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1environments~1{environment_id}~1allocations/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + update_allocations_for_feature_flag_in_environment: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1environments~1{environment_id}~1allocations/put' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/feature_flag_environment_allocations/methods/create_allocations_for_feature_flag_in_environment' + update: [] + delete: [] + replace: + - $ref: '#/components/x-stackQL-resources/feature_flag_environment_allocations/methods/update_allocations_for_feature_flag_in_environment' + feature_flag_variants: + id: datadog.software_delivery.feature_flag_variants + name: feature_flag_variants + title: Feature Flag Variants methods: - create_doraincident: + create_variant_for_feature_flag: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1variants/post' + response: + mediaType: application/json + openAPIDocKey: '201' + request: + nativeCasing: camel + delete_variant_from_feature_flag: + operation: + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1variants~1{variant_id}/delete' + response: + mediaType: application/json + openAPIDocKey: '204' + request: + nativeCasing: camel + update_variant_for_feature_flag: + config: + requestBodyTranslate: + algorithm: naive operation: - $ref: '#/paths/~1api~1v2~1dora~1incident/post' + $ref: '#/paths/~1api~1v2~1feature-flags~1{feature_flag_id}~1variants~1{variant_id}/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: [] insert: - - $ref: >- - #/components/x-stackQL-resources/dora_incidents/methods/create_doraincident + - $ref: '#/components/x-stackQL-resources/feature_flag_variants/methods/create_variant_for_feature_flag' update: [] + delete: + - $ref: '#/components/x-stackQL-resources/feature_flag_variants/methods/delete_variant_from_feature_flag' + replace: + - $ref: '#/components/x-stackQL-resources/feature_flag_variants/methods/update_variant_for_feature_flag' + flaky_tests: + id: datadog.software_delivery.flaky_tests + name: flaky_tests + title: Flaky Tests + methods: + update_flaky_tests: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1test~1flaky-test-management~1tests/patch' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + search_flaky_tests: + config: + requestBodyTranslate: + algorithm: naive + operation: + $ref: '#/paths/~1api~1v2~1test~1flaky-test-management~1tests/post' + response: + mediaType: application/json + openAPIDocKey: '200' + request: + nativeCasing: camel + sqlVerbs: + select: [] + insert: + - $ref: '#/components/x-stackQL-resources/flaky_tests/methods/search_flaky_tests' + update: + - $ref: '#/components/x-stackQL-resources/flaky_tests/methods/update_flaky_tests' delete: [] replace: [] workflows: @@ -4462,18 +13964,38 @@ components: name: workflows title: Workflows methods: + list_workflows: + operation: + $ref: '#/paths/~1api~1v2~1workflows/get' + response: + mediaType: application/json + openAPIDocKey: '200' + objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: limit create_workflow: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1workflows/post' response: mediaType: application/json openAPIDocKey: '201' + request: + nativeCasing: camel delete_workflow: operation: $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}/delete' response: mediaType: application/json openAPIDocKey: '204' + request: + nativeCasing: camel get_workflow: operation: $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}/get' @@ -4481,15 +14003,23 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel update_workflow: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}/patch' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - $ref: '#/components/x-stackQL-resources/workflows/methods/get_workflow' + - $ref: '#/components/x-stackQL-resources/workflows/methods/list_workflows' insert: - $ref: '#/components/x-stackQL-resources/workflows/methods/create_workflow' update: @@ -4509,42 +14039,53 @@ components: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel + config: + queryParamPushdown: + top: + paramName: page[size] create_workflow_instance: + config: + requestBodyTranslate: + algorithm: naive operation: $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}~1instances/post' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel get_workflow_instance: operation: - $ref: >- - #/paths/~1api~1v2~1workflows~1{workflow_id}~1instances~1{instance_id}/get + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}~1instances~1{instance_id}/get' response: mediaType: application/json openAPIDocKey: '200' objectKey: $.data + request: + nativeCasing: camel cancel_workflow_instance: operation: - $ref: >- - #/paths/~1api~1v2~1workflows~1{workflow_id}~1instances~1{instance_id}~1cancel/put + $ref: '#/paths/~1api~1v2~1workflows~1{workflow_id}~1instances~1{instance_id}~1cancel/put' response: mediaType: application/json openAPIDocKey: '200' + request: + nativeCasing: camel sqlVerbs: select: - - $ref: >- - #/components/x-stackQL-resources/workflow_instances/methods/get_workflow_instance - - $ref: >- - #/components/x-stackQL-resources/workflow_instances/methods/list_workflow_instances + - $ref: '#/components/x-stackQL-resources/workflow_instances/methods/get_workflow_instance' + - $ref: '#/components/x-stackQL-resources/workflow_instances/methods/list_workflow_instances' insert: - - $ref: >- - #/components/x-stackQL-resources/workflow_instances/methods/create_workflow_instance + - $ref: '#/components/x-stackQL-resources/workflow_instances/methods/create_workflow_instance' update: [] delete: [] replace: [] servers: - - url: >- - https://{region:^(?:[^\:/]+(?:\:[0-9]+)?|[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+(?:\:[0-9]+)?)$}/ + - url: https://api.{site:.+} variables: - region: + site: default: datadoghq.com + description: The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. + x-stackQL-envVar: DD_SITE diff --git a/provider-dev/scripts/fix_broken_links.sh b/provider-dev/scripts/fix_broken_links.sh deleted file mode 100644 index 34570c3..0000000 --- a/provider-dev/scripts/fix_broken_links.sh +++ /dev/null @@ -1,4 +0,0 @@ -# fix relative broken links in generated markdown files -sed -i 's|(#pagination)||g' "provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml" -sed -i 's|(#filtering)||g' "provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml" -sed -i 's|(#metadata)||g' "provider-dev/openapi/src/datadog/v00.00.00000/services/security.yaml" \ No newline at end of file diff --git a/provider-dev/scripts/map_operations.mjs b/provider-dev/scripts/map_operations.mjs new file mode 100644 index 0000000..be72542 --- /dev/null +++ b/provider-dev/scripts/map_operations.mjs @@ -0,0 +1,788 @@ +#!/usr/bin/env node + +// Fills in stackql_resource_name, stackql_method_name, stackql_verb and +// stackql_object_key for the rows of provider-dev/config/all_services.csv +// that provider-utils `analyze` left unmapped after a spec refresh, prunes +// rows whose operation no longer exists upstream, validates the whole +// mapping, and writes provider-dev/config/operation_inventory.csv (one row +// per operation with version, deprecation, pagination, envelope and skip +// reason metadata). +// +// The CSV is the durable record of the operation -> resource/method/verb +// mapping: `analyze` keys existing rows on filename::operationId and never +// changes them, so a resource never silently moves between releases. Only +// rows with an empty stackql_resource_name are mapped here, by the rules +// below (plus the explicit OVERRIDES table); CORRECTIONS re-map a few +// previously mapped rows whose original mapping was wrong. Deterministic and +// re-runnable; review the CSV diff after running. +// +// Mapping conventions for new operations: +// resource __..._, +// where prefix replaces the root path segment per +// service_names.json rootPrefixes (empty when the root restates +// the service); trailing action segments (search, validate, +// clone, cancel, ...) name EXEC methods on the parent resource +// method the snake_case operationId (formatted_op_id column) - the +// convention of the previously published mapping +// verb GET -> select, POST -> insert (or exec on an action segment), +// PUT -> replace (or exec), PATCH -> update (or exec), +// DELETE -> delete +// objectKey x-pagination.resultsPath when the vendor declares one, +// otherwise $.data for the JSON:API envelope, $. for a +// single-array v1 envelope, empty for bare arrays and objects +// skipped deprecated operations, v1 operations superseded by the v2 +// operation of the same name (x-stackql-superseded-by-v2 from +// merge_specs.mjs), multipart/form-data uploads, and non-JSON +// responses (CSV, zip, octet-stream, yaml) - reason-coded in +// the inventory and marked skip_this_resource in the CSV +// +// Usage: npm run map-operations [-- --dry-run] + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import yaml from 'js-yaml'; +import pluralize from 'pluralize'; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..'); +const sourceDir = path.join(repoRoot, 'provider-dev', 'source'); +const configDir = path.join(repoRoot, 'provider-dev', 'config'); +const csvPath = path.join(configDir, 'all_services.csv'); +const inventoryPath = path.join(configDir, 'operation_inventory.csv'); +const reportPath = path.join(repoRoot, 'provider-dev', 'build', 'mapping_report.txt'); +const serviceNames = JSON.parse(fs.readFileSync(path.join(configDir, 'service_names.json'), 'utf8')); +const dryRun = process.argv.includes('--dry-run'); +const HTTP_VERBS = ['get', 'post', 'put', 'patch', 'delete']; + +// --------------------------------------------------------------------------- +// Rules +// --------------------------------------------------------------------------- + +// A trailing static segment in this set on a POST/PUT/PATCH names an action +// on the parent resource (EXEC), not a create/replace/update of an entity. +const ACTION_SEGMENTS = new Set([ + 'search', 'validate', 'validation', 'clone', 'cancel', 'sync', 'batch', 'bulk', 'bulk_delete', 'bulk_update', + 'upload', 'download', 'trigger', 'acknowledge', 'escalate', 'resolve', 'restore', 'publish', 'unpublish', + 'run', 'execute', 'estimate', 'query', 'aggregate', 'analytics', 'mute', 'unmute', 'assign', 'unassign', + 'assignee', 'reorder', 'order', 'refresh', 'generate', 'test', 'evaluate', 'evaluation', 'check', 'check_async', + 'services_async', 'submit', 'print', 'fetch', 'import', 'export', 'move', 'archive', 'unarchive', 'enable', + 'disable', 'activate', 'deactivate', 'convert', 'invite', 'revoke', 'regenerate', 'retry', 'replay', 'promote', + 'apply', 'preview', 'share', 'unshare', 'star', 'unstar', 'list', 'scalar', 'timeseries', 'facet_info', + 'create_and_publish', 'count', 'summary', 'send', 'resend', 'reset', 'rotate', 'approve', 'reject', 'close', + 'reopen', 'rerun', 'start', 'stop', 'pause', 'resume', 'abort', 'dismiss', 'snooze', 'link', 'unlink', 'attach', + 'detach', 'merge', 'copy', 'duplicate', 'join', 'leave', 'subscribe', 'unsubscribe', 'confirm', 'verify', + 'lookup', 'compute', 'calculate', 'render', 'simulate', 'dry_run', 'poll', 'commit', 'rollback', 'finalize', + 'complete', 'expire', 'tabular', 'aggregation', 'translate', 'diff', 'compare', 'impersonate', + 'generate_new_external_id', 'recover', 'reactivate', 'suspend', 'deprecate', 'undeprecate', 'downgrade', + 'upgrade', 'flush', 'reindex', 'rebuild', 'scan', 'rows', 'batch_rows', 'get_widgets', 'facet_keys', + 'facet_values', 'facets', 'set', 'unset', 'ack', 'rename', 'transfer', 'exclude', 'include', 'bypass', + 'filter', 'filtering', 'lock', 'unlock', 'convert_to_monitor', 'available_namespace_rules', + 'ratelimit', 'recompute', 'transform', 'invoke', 'flag', 'unflag', 'watch', 'unwatch', 'history', + 'add', 'remove', 'reverse', 'validate_existing', 'evaluation_run', 'annotate', 'delete', 'update', + 'state', 'assignee', 'mitigate', 'revert', 'upsert_and_publish', 'add_to_incident', 'send_notification_preview', + 'simple_search', 'configure', 'toggle', 'analyze', 'get_asts', 'register', 'resolve_vulnerable_symbols', + 'title', 'description', 'due_date', 'resolved_reason', 'priority', 'status', 'batch_update', 'bulk_states', + 'validate_query', 'validate_ccm_config', 'metric_name_filter_preview' +]); +// On a GET a trailing `list` / `search` / `latest` segment is a read of the parent collection +const GET_TRAILING = new Set(['list', 'search', 'latest']); +// Structural path segments that never contribute to a resource name unless +// they are the last static segment (/logs/config/archives -> archives, +// /integration/oci/products -> oci_products) +const IGNORED_SEGMENTS = new Set(['products', 'config', 'configuration']); +// Deprecated operations are skipped uniformly, except where the vendor's +// stated successor is not a SELECT-able read (a POST search replacing a GET +// list): those stay mapped until the operation is actually sunset. +const KEEP_DEPRECATED = new Set(['ListVulnerabilities']); +// Tokens pluralize must never singularize / pluralize (acronyms and mass nouns) +for (const word of ['aws', 'gcp', 'oci', 'dns', 'sts', 'analytics', 'metadata', 'series', 'data', 'apm', 'rum', 'csm', + 'siem', 'sca', 'ndm', 'spa', 'ci', 'iam', 'waf', 'asm', 'cws', 'sso', 'saml', 'oauth2', 'idp', 'ccm', 'ms', 'hamr', + 'llm', 'ai', 'dora', 'ddsql', 'usage', 'timeseries', 'scalar', 'sbom', 'ddos']) { + pluralize.addUncountableRule(word); +} + +// Explicit resource / method / verb / objectKey overrides for new operations +// where the mechanical derivation reads poorly. Matched on (verb-optional, +// normalized path with params collapsed to {}). First match wins. +const OVERRIDES = [ + // IP ranges: a single GET on the API root of ip-ranges. + { re: /^\/$/, resource: 'ip_ranges' }, + // key validation reads (distinct resources - identical signatures otherwise) + { re: /^\/api\/v2\/validate$/, resource: 'api_key_validation' }, + { re: /^\/api\/v2\/validate_keys$/, resource: 'key_validation' }, + { re: /^\/api\/v2\/current_user$/, resource: 'current_user' }, + { re: /^\/api\/v2\/oauth2\/register$/, resource: 'oauth2_clients', sqlVerb: 'exec' }, + // v1 hosts + { re: /^\/api\/v1\/hosts$/, resource: 'hosts' }, + { re: /^\/api\/v1\/hosts\/totals$/, resource: 'host_totals' }, + { re: /^\/api\/v1\/host\/\{\}\/mute$/, resource: 'hosts', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/host\/\{\}\/unmute$/, resource: 'hosts', sqlVerb: 'exec' }, + // v1 host tags: /api/v1/tags/hosts[/{host_name}] + { re: /^\/api\/v1\/tags\/hosts(\/\{\})?$/, resource: 'host_tags' }, + // v1 metrics + { re: /^\/api\/v1\/metrics$/, resource: 'active_metrics' }, + { re: /^\/api\/v1\/metrics\/\{\}$/, resource: 'metric_metadata' }, + { re: /^\/api\/v1\/query$/, resource: 'timeseries_query', method: 'query_metrics' }, + { re: /^\/api\/v1\/series$/, resource: 'series', method: 'submit_metrics_v1', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/distribution_points$/, resource: 'distribution_points', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/series$/, resource: 'series', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/query\/scalar$/, resource: 'scalar_query', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/query\/timeseries$/, resource: 'timeseries_query', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/search$/, resource: 'active_metrics' }, + // v1 graph snapshot + { re: /^\/api\/v1\/graph\/snapshot$/, resource: 'graph_snapshots' }, + // v1 monitors: /api/v1/monitor + { re: /^\/api\/v1\/monitor(\/\{\})?$/, resource: 'monitors' }, + // search reads return a different envelope from the list and share its + // (empty) required-parameter signature - dedicated resources + { re: /^\/api\/v1\/monitor\/search$/, resource: 'monitor_search_results', sqlVerb: 'select', objectKey: '$.monitors' }, + { re: /^\/api\/v1\/monitor\/groups\/search$/, resource: 'monitor_group_search_results', sqlVerb: 'select', objectKey: '$.groups' }, + { re: /^\/api\/v1\/monitor\/can_delete$/, resource: 'monitors' }, + { re: /^\/api\/v1\/monitor\/validate$/, resource: 'monitors', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/monitor\/\{\}\/validate$/, resource: 'monitors', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/monitor\/\{\}\/downtimes$/, resource: 'monitor_downtimes' }, + { re: /^\/api\/v2\/monitor\/\{\}\/downtime_matches$/, resource: 'monitor_downtime_matches' }, + // v1 service checks + { re: /^\/api\/v1\/check_run$/, resource: 'service_checks', sqlVerb: 'exec' }, + // v1 dashboards + { re: /^\/api\/v1\/dashboard(\/\{\})?$/, resource: 'dashboards' }, + { re: /^\/api\/v1\/dashboard\/public(\/\{\})?$/, resource: 'shared_dashboards' }, + { re: /^\/api\/v1\/dashboard\/public\/\{\}\/invitation$/, resource: 'shared_dashboard_invitations' }, + { re: /^\/api\/v2\/dashboard\/\{\}\/shared$/, resource: 'shared_dashboards' }, + { re: /^\/api\/v2\/dashboards(\/\{\})?\/usage$/, resource: 'dashboard_usage' }, + { re: /^\/api\/v2\/reporting\/print$/, resource: 'reports', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/dashboard\/lists\/manual(\/\{\})?$/, resource: 'dashboard_lists' }, + { re: /^\/api\/v2\/dashboard\/lists\/manual\/\{\}\/dashboards$/, resource: 'dashboard_list_items' }, + { re: /^\/api\/v2\/dashboard\/public\/\{\}\/embed(\/\{\})?$/, resource: 'shared_dashboard_embeds' }, + { re: /^\/api\/v2\/dashboard\/sharing\/\{\}$/, resource: 'dashboard_sharing_configs' }, + { re: /^\/api\/v2\/dashboards\/search$/, resource: 'dashboards', method: 'search_dashboards_v2', sqlVerb: 'select', objectKey: '$.data' }, + { re: /^\/api\/v2\/dashboards\/\{\}\/exec$/, resource: 'dashboards', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/snapshot$/, resource: 'graph_snapshots', sqlVerb: 'exec' }, + // v1 notebooks + { re: /^\/api\/v1\/notebooks(\/\{\})?$/, resource: 'notebooks' }, + // v1 slo + { re: /^\/api\/v1\/slo(\/\{\})?$/, resource: 'slos' }, + { re: /^\/api\/v1\/slo\/search$/, resource: 'slo_search_results', sqlVerb: 'select', objectKey: '$.data.attributes.slos' }, + { re: /^\/api\/v1\/slo\/can_delete$/, resource: 'slos' }, + { re: /^\/api\/v1\/slo\/bulk_delete$/, resource: 'slos', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/slo\/\{\}\/history$/, resource: 'slo_history' }, + { re: /^\/api\/v1\/slo\/\{\}\/corrections$/, resource: 'slo_corrections' }, + { re: /^\/api\/v1\/slo\/correction(\/\{\})?$/, resource: 'slo_corrections' }, + // v1 synthetics + { re: /^\/api\/v1\/synthetics\/tests$/, resource: 'synthetics_tests' }, + { re: /^\/api\/v1\/synthetics\/tests\/\{\}$/, resource: 'synthetics_tests' }, + { re: /^\/api\/v1\/synthetics\/tests\/api(\/\{\})?$/, resource: 'synthetics_api_tests' }, + { re: /^\/api\/v1\/synthetics\/tests\/browser(\/\{\})?$/, resource: 'synthetics_browser_tests' }, + { re: /^\/api\/v1\/synthetics\/tests\/mobile(\/\{\})?$/, resource: 'synthetics_mobile_tests' }, + { re: /^\/api\/v1\/synthetics\/tests\/trigger(\/ci)?$/, resource: 'synthetics_tests', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/synthetics\/tests\/delete$/, resource: 'synthetics_tests', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/synthetics\/tests\/search$/, resource: 'synthetics_test_search_results', sqlVerb: 'select', objectKey: '$.tests' }, + { re: /^\/api\/v1\/synthetics\/tests\/\{\}\/results(\/\{\})?$/, resource: 'synthetics_api_test_results' }, + { re: /^\/api\/v1\/synthetics\/tests\/browser\/\{\}\/results(\/\{\})?$/, resource: 'synthetics_browser_test_results' }, + { re: /^\/api\/v1\/synthetics\/tests\/\{\}\/status$/, resource: 'synthetics_tests', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/synthetics\/tests\/\{\}\/(cancel|.*)$/, resource: 'synthetics_tests' }, + { re: /^\/api\/v1\/synthetics\/locations$/, resource: 'synthetics_locations' }, + { re: /^\/api\/v1\/synthetics\/private-locations(\/\{\})?$/, resource: 'synthetics_private_locations' }, + { re: /^\/api\/v1\/synthetics\/settings\/default_locations$/, resource: 'synthetics_default_locations' }, + { re: /^\/api\/v1\/synthetics\/variables(\/\{\})?$/, resource: 'synthetics_global_variables' }, + { re: /^\/api\/v1\/synthetics\/ci$/, resource: 'synthetics_tests', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/synthetics\/tests\/uptimes$/, resource: 'synthetics_test_uptimes', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/synthetics\/settings\/on_demand_concurrency_cap$/, resource: 'on_demand_concurrency_cap' }, + { re: /^\/api\/v2\/synthetics\/global_variables(\/\{\})?$/, resource: 'synthetics_global_variables_v2' }, + { re: /^\/api\/v2\/synthetics\/tests\/fast\/\{\}$/, resource: 'synthetics_fast_test_results' }, + { re: /^\/api\/v2\/synthetics\/tests\/network(\/\{\})?$/, resource: 'synthetics_network_tests' }, + { re: /^\/api\/v2\/synthetics\/tests\/(\{\}\/)?files\//, resource: 'synthetics_test_files', sqlVerb: 'exec' }, + // v1 logs config + { re: /^\/api\/v1\/logs\/config\/indexes(\/\{\})?$/, resource: 'indexes' }, + { re: /^\/api\/v1\/logs\/config\/index-order$/, resource: 'index_order' }, + { re: /^\/api\/v1\/logs\/config\/pipelines(\/\{\})?$/, resource: 'pipelines' }, + { re: /^\/api\/v1\/logs\/config\/pipeline-order$/, resource: 'pipeline_order' }, + { re: /^\/api\/v1\/logs-queries\/list$/, resource: 'logs', method: 'list_logs_v1', sqlVerb: 'exec' }, + // v1 integrations + { re: /^\/api\/v1\/integration\/azure$/, resource: 'azure_accounts' }, + { re: /^\/api\/v1\/integration\/azure\/host_filters$/, resource: 'azure_host_filters' }, + { re: /^\/api\/v1\/integration\/pagerduty\/configuration\/services(\/\{\})?$/, resource: 'pagerduty_services' }, + { re: /^\/api\/v1\/integration\/slack\/configuration\/accounts\/\{\}\/channels(\/\{\})?$/, resource: 'slack_channels' }, + { re: /^\/api\/v1\/integration\/webhooks\/configuration\/webhooks(\/\{\})?$/, resource: 'webhooks' }, + { re: /^\/api\/v1\/integration\/webhooks\/configuration\/custom-variables(\/\{\})?$/, resource: 'webhook_custom_variables' }, + { re: /^\/api\/v2\/integration\/webhooks\/configuration\/auth-method$/, resource: 'webhook_auth_methods' }, + { re: /^\/api\/v2\/integration\/webhooks\/configuration\/auth-method\/oauth2-client-credentials(\/\{\})?$/, resource: 'webhook_oauth2_client_credentials' }, + { re: /^\/api\/v2\/integration\/oci\/products$/, resource: 'oci_products' }, + // v1 organizations + { re: /^\/api\/v1\/org$/, resource: 'orgs' }, + // GET /api/v1/org/{public_id} wraps the organization as {org: {...}} + { re: /^\/api\/v1\/org\/\{\}$/, resource: 'orgs', objectKey: '$.org' }, + { re: /^\/api\/v1\/org\/\{\}\/downgrade$/, resource: 'orgs', sqlVerb: 'exec' }, + { re: /^\/api\/v1\/org\/\{\}\/idp_metadata$/, resource: 'orgs', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/org\/\{\}\/hierarchy$/, resource: 'org_hierarchies' }, + { re: /^\/api\/v2\/org\/\{\}\/customer_org$/, resource: 'customer_orgs' }, + { re: /^\/api\/v2\/global_orgs$/, resource: 'global_orgs' }, + { re: /^\/api\/v1\/application_key$/, resource: 'application_keys', method: 'create_application_key_v1' }, + // v1 usage (non-deprecated) + { re: /^\/api\/v1\/usage\/summary$/, resource: 'usage_summary' }, + { re: /^\/api\/v1\/usage\/top_avg_metrics$/, resource: 'usage_top_avg_metrics' }, + { re: /^\/api\/v1\/usage\/billable-summary$/, resource: 'usage_billable_summary' }, + { re: /^\/api\/v1\/usage\/([a-z_-]+)$/, resource: (m) => `usage_${m[1].replace(/-/g, '_')}` }, + // v1 security signals (non-superseded) + { re: /^\/api\/v1\/security_analytics\/signals$/, resource: 'monitoring_signals', method: 'list_security_monitoring_signals_v1' }, + // v2 organization surface + { re: /^\/api\/v2\/anonymize_users$/, resource: 'users', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/login\/org_configs\/max_session_duration$/, resource: 'login_configs' }, + { re: /^\/api\/v2\/hamr$/, resource: 'hamr_connections' }, + { re: /^\/api\/v2\/seats\/users$/, resource: 'seat_assignments' }, + { re: /^\/api\/v2\/oauth2\/\.well-known\/sites$/, resource: 'oauth2_well_known_sites' }, + { re: /^\/api\/v2\/oauth2\/clients\/\{\}\/scopes_restriction$/, resource: 'oauth2_client_scopes_restrictions' }, + { re: /^\/api\/v2\/governance\/config$/, resource: 'governance_configs' }, + { re: /^\/api\/v2\/team-hierarchy-links(\/\{\})?$/, resource: 'team_hierarchy_links' }, + { re: /^\/api\/v2\/users\/\{\}\/memberships$/, resource: 'user_team_memberships' }, + // v2 metrics + { re: /^\/api\/v2\/metrics\/config\/bulk-tags$/, resource: 'bulk_tag_configurations' }, + { re: /^\/api\/v2\/metrics\/\{\}\/assets$/, resource: 'related_assets' }, + { re: /^\/api\/v2\/metrics\/\{\}\/estimate$/, resource: 'tag_cardinality_estimates' }, + { re: /^\/api\/v2\/ddsql\/query\/tabular$/, resource: 'ddsql_queries', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/ddsql\/query\/tabular\/fetch$/, resource: 'ddsql_queries', sqlVerb: 'exec' }, + // v2 cloud costs + { re: /^\/api\/v2\/cost\/commitments\/commitment-list$/, resource: 'commitments' }, + { re: /^\/api\/v2\/cost\/tag_descriptions\/\{\}\/generate$/, resource: 'tag_descriptions', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/tags\/enrichment(\/\{\})?$/, resource: 'tag_pipeline_rulesets' }, + { re: /^\/api\/v2\/tags\/enrichment\/reorder$/, resource: 'tag_pipeline_rulesets', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/tags\/enrichment\/status$/, resource: 'tag_pipeline_ruleset_statuses' }, + { re: /^\/api\/v2\/tags\/enrichment\/validate-query$/, resource: 'tag_pipeline_rulesets', sqlVerb: 'exec' }, + // v2 infrastructure + { re: /^\/api\/v2\/cloudinventoryservice\/syncconfigs(\/\{\})?$/, resource: 'storage_management_configs' }, + { re: /^\/api\/v2\/network-health-insights$/, resource: 'network_health_insights' }, + // v2 llm observability + { re: /^\/api\/v2\/llm-obs\/v1\/evals$/, resource: 'evaluations', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/llm-obs\/v1\/spans$/, resource: 'spans', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/llm-obs\/v1\/experimentation\//, resource: 'experiments', sqlVerb: 'exec' }, + // apm + { re: /^\/api\/v2\/scorecard\/scorecards$/, resource: 'scorecards' }, + // v2 service management + { re: /^\/api\/v2\/bits-ai\/investigations(\/\{\})?$/, resource: 'bits_ai_investigations' }, + { re: /^\/api\/v2\/slo\/report$/, resource: 'slo_report_job' }, + { re: /^\/api\/v2\/change-management\/change-request(\/\{\})?$/, resource: 'change_requests' }, + { re: /^\/api\/v2\/change-management\/change-request\/\{\}\/branch$/, resource: 'change_request_branches' }, + // v2 software delivery + { re: /^\/api\/v2\/deployments\/gates\/evaluation(\/\{\})?$/, resource: 'deployment_gate_evaluations' }, + { re: /^\/api\/v2\/test\/flaky-test-management\/tests$/, resource: 'flaky_tests' }, + { re: /^\/api\/v2\/code-coverage\/branch\/summary$/, resource: 'code_coverage_branch_summaries', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/code-coverage\/commit\/summary$/, resource: 'code_coverage_commit_summaries', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/ci\/pipeline$/, resource: 'ci_app_pipeline_events', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/ci\/pipelines\/events\/search$/, resource: 'ci_app_pipeline_events', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/ci\/tests\/events\/search$/, resource: 'ci_app_test_events', sqlVerb: 'exec' }, + // v2 security + { re: /^\/api\/v2\/security\/cloud_workload\/policy\/download$/, resource: 'cloud_workload_security_policies' }, + // /api/v2/security/findings (Code Security findings) would share `findings` + // with /api/v2/posture_management/findings (CSPM) - same list signature + { re: /^\/api\/v2\/security\/findings$/, resource: 'security_findings' }, + { re: /^\/api\/v2\/security\/findings\/(search|assignee)$/, resource: 'security_findings', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/integration\/aws\/validate_ccm_config$/, resource: 'aws_accounts', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/catalog\/entity\/preview$/, resource: 'catalog_entities', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/llm-obs\/v1\/topic-discovery-configs\/latest$/, resource: 'topic_discovery_latest_configs' }, + { re: /^\/api\/v2\/security\/asm\/services\/\{\}$/, resource: 'application_security_services' }, + { re: /^\/api\/v2\/compliance_findings\/rule_based_view$/, resource: 'compliance_findings' }, + { re: /^\/api\/v2\/security_monitoring\/terraform\//, resource: 'monitoring_terraform_resources' }, + { re: /^\/api\/v2\/static-analysis\/static-analysis-server\/node-types$/, resource: 'static_analysis_server' }, + { re: /^\/api\/v2\/static-analysis\/static-analysis-server\//, resource: 'static_analysis_server', sqlVerb: 'exec' }, + { re: /entra_id\/azure_app_registrations/, resource: 'monitoring_entra_id_azure_app_registrations' }, + // v2 apm + { re: /^\/api\/v2\/trace\/\{\}$/, resource: 'traces' }, + { re: /^\/api\/v2\/pruned_trace\/\{\}$/, resource: 'pruned_traces' }, + // v2 integrations + { re: /^\/api\/v2\/idp\/entity_integrations\/\{\}$/, resource: 'entity_integration_configs' }, + { re: /^\/api\/v2\/cloud_auth\/aws\/persona_mapping(\/\{\})?$/, resource: 'aws_persona_mappings' }, + { re: /^\/api\/v2\/integration\/aws\/generate_new_external_id$/, resource: 'aws_external_ids', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/reference-tables\/queries\/batch-rows$/, resource: 'reference_table_rows', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/reference-tables\/tables(\/\{\})?$/, resource: 'reference_tables' }, + { re: /^\/api\/v2\/reference-tables\/tables\/\{\}\/rows$/, resource: 'reference_table_rows' }, + { re: /^\/api\/v2\/reference-tables\/uploads(\/\{\})?$/, resource: 'reference_table_uploads' }, + // v2 digital experience + { re: /^\/api\/v2\/prodlytics$/, resource: 'product_analytics_events', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/sourcemaps$/, resource: 'sourcemaps' }, + { re: /^\/api\/v2\/sourcemaps\/list$/, resource: 'sourcemaps' }, + { re: /^\/api\/v2\/sourcemaps\/restore$/, resource: 'sourcemaps', sqlVerb: 'exec' }, + // v2 logs + { re: /^\/api\/v2\/obs-pipelines\/pipelines\/validate$/, resource: 'observability_pipelines', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/obs-pipelines\/pipelines(\/\{\})?$/, resource: 'observability_pipelines' }, + { re: /^\/api\/v2\/logs$/, resource: 'logs', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/logs\/events\/search$/, resource: 'logs', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/logs\/analytics\/aggregate$/, resource: 'logs', sqlVerb: 'exec' }, + // v2 events + { re: /^\/api\/v2\/events$/, resource: 'events' }, + { re: /^\/api\/v2\/events\/search$/, resource: 'events', sqlVerb: 'exec' }, + // remote config products: drop the product family segment + { re: /^\/api\/v2\/remote_config\/products\/obs_pipelines\/pipelines(\/\{\})?$/, resource: 'observability_pipelines' }, + { re: /^\/api\/v2\/remote_config\/products\/obs_pipelines\/pipelines\/validate$/, resource: 'observability_pipelines', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/remote_config\/products\/cws\/agent_rules(\/\{\})?$/, resource: 'csm_threats_agent_rules' }, + { re: /^\/api\/v2\/remote_config\/products\/cws\/policy(\/\{\})?$/, resource: 'csm_threats_agent_policies' }, + { re: /^\/api\/v2\/remote_config\/products\/cws\/policy\/download$/, resource: 'csm_threats_agent_policies', sqlVerb: 'exec' }, + { re: /^\/api\/v2\/remote_config\/products\/asm\/waf\/custom_rules(\/\{\})?$/, resource: 'waf_custom_rules' }, + { re: /^\/api\/v2\/remote_config\/products\/asm\/waf\/exclusion_filters(\/\{\})?$/, resource: 'waf_exclusion_filters' }, + { re: /^\/api\/v2\/remote_config\/products\/asm\/waf\/policies(\/\{\})?$/, resource: 'waf_policies' } +]; + +// Corrections to rows that were already mapped in the published CSV. These +// are the only edits ever made to existing rows; each entry names the +// operationId and the fields to replace. +const CORRECTIONS = { + // DELETE /api/v2/roles/{role_id}/users was mapped to role_permissions + RemoveUserFromRole: { resource: 'role_users' }, + // POST search / submit endpoints were mapped as INSERT alongside the real + // create of the same resource (identical signatures - unreachable) + ListLogs: { sqlVerb: 'exec' }, + SubmitLog: { sqlVerb: 'exec' }, + SearchEvents: { sqlVerb: 'exec' }, +}; + +// --------------------------------------------------------------------------- +// Helpers +// --------------------------------------------------------------------------- + +function snake(seg) { + return String(seg).replace(/([a-z0-9])([A-Z])/g, '$1_$2').replace(/[-. ]/g, '_').toLowerCase(); +} +function normalizePath(pathKey) { + return pathKey.replace(/\{[^}]+\}/g, '{}'); +} +function pathParams(pathKey) { + return (pathKey.match(/\{[^}]+\}/g) || []).map((s) => s.slice(1, -1)); +} +function makeResolver(spec) { + return function resolve(node, depth = 0) { + if (!node || depth > 12) return node; + if (node.$ref) { + const parts = node.$ref.replace(/^#\//, '').split('/'); + let cur = spec; + for (const p of parts) cur = cur?.[p]; + return resolve(cur, depth + 1); + } + return node; + }; +} +function success2xx(op) { + const codes = Object.keys(op.responses || {}).filter((c) => /^2/.test(c)).sort(); + for (const code of codes) { + const content = op.responses[code].content || {}; + const jsonType = Object.keys(content).find((m) => /json/.test(m)); + if (jsonType) return { code, schema: content[jsonType].schema || null, mediaTypes: Object.keys(content) }; + if (Object.keys(content).length > 0) return { code, schema: null, mediaTypes: Object.keys(content) }; + } + return { code: codes[0] || null, schema: null, mediaTypes: [] }; +} +// Response envelope classification: +// data-array / data-object - the v2 JSON:API envelope {data: [...]} / {data: {...}} +// single-array: - a v1 envelope with exactly one array property +// bare-array - a top-level JSON array (v1 monitors, hosts, ...) +// multi-array / object - several arrays, or a plain object: one row +// non-json / none - no JSON body +function classifyEnvelope(op, resolve) { + const { schema, mediaTypes } = success2xx(op); + if (!schema) return { envelope: mediaTypes.length ? 'non-json' : 'none', key: '', mediaTypes }; + const s = resolve(schema); + if (!s) return { envelope: 'object', key: '', mediaTypes }; + if (s.type === 'array') return { envelope: 'bare-array', key: '', mediaTypes }; + const props = s.properties || {}; + if ('data' in props) { + const d = resolve(props.data); + return { envelope: d?.type === 'array' ? 'data-array' : 'data-object', key: '$.data', mediaTypes }; + } + // only arrays of objects count as a collection envelope - an entity with a + // single scalar array property (tags: [...]) is a row in its own right + const arrays = Object.entries(props).filter(([, v]) => { + const a = resolve(v); + if (a?.type !== 'array') return false; + const items = resolve(a.items); + return !!(items?.properties && Object.keys(items.properties).length > 0); + }); + if (arrays.length === 1) return { envelope: `single-array:${arrays[0][0]}`, key: `$.${arrays[0][0]}`, mediaTypes }; + if (arrays.length > 1) return { envelope: 'multi-array', key: '', mediaTypes }; + return { envelope: 'object', key: '', mediaTypes }; +} +function requestMediaTypes(op) { + return Object.keys(op.requestBody?.content || {}); +} +// Whether a SELECT over this operation would project any columns: the +// success schema, narrowed by the objectKey path (array items unwrapped), +// must resolve to an object with properties. Reads with an empty or opaque +// schema (a handful of RUM replay and SCA endpoints) are mapped as EXEC +// methods instead - DESCRIBE would otherwise return no columns. +function hasColumns(op, resolve, objectKey) { + const { schema } = success2xx(op); + let s = resolve(schema); + if (!s) return false; + const steps = objectKey ? objectKey.replace(/^\$\.?/, '').split('.').filter(Boolean) : []; + for (const step of steps) { + s = resolve(s?.properties?.[step]); + if (!s) return false; + } + if (s.type === 'array') s = resolve(s.items); + return !!(s && typeof s === 'object' && s.properties && Object.keys(s.properties).length > 0); +} +function skipReason(op) { + if (op.deprecated && !KEEP_DEPRECATED.has(op.operationId)) return 'deprecated'; + if (op['x-stackql-superseded-by-v2']) return 'superseded_by_v2'; + const req = requestMediaTypes(op); + if (req.length > 0 && !req.some((m) => /json/.test(m))) return 'multipart_request'; + const { schema, mediaTypes } = success2xx(op); + if (!schema && mediaTypes.length > 0) return 'non_json_response'; + return ''; +} + +// --------------------------------------------------------------------------- +// Resource / verb derivation for new operations +// --------------------------------------------------------------------------- + +function rootPrefix(root, service) { + if (root in serviceNames.rootPrefixes) return serviceNames.rootPrefixes[root]; + const r = snake(root); + if (r === service || pluralize(r) === service || r === pluralize.singular(service)) return ''; + return pluralize.singular(r); +} + +function derive(service, pathKey, verb) { + const m = pathKey.match(/^\/api\/(?:v1|v2|unstable)\/(.*)$/); + const segs = (m ? m[1] : pathKey.replace(/^\//, '')).split('/').filter(Boolean); + const root = segs[0] || ''; + const prefix = rootPrefix(root, service); + // an inner API version segment (/llm-obs/v1/prompts, /llm-obs/v3/experiments) + // is dropped from the name; versions above v1 become a resource suffix + let versionSuffix = ''; + let statics = segs.slice(1).filter((s) => !s.startsWith('{')).map(snake); + statics = statics.filter((s) => { + if (!/^v\d+$/.test(s)) return true; + if (s !== 'v1') versionSuffix = `_${s}`; + return false; + }); + // structural segments contribute nothing unless they end the path + statics = statics.filter((s, i) => i === statics.length - 1 || !IGNORED_SEGMENTS.has(s)); + // collapse an immediately repeated segment (organizations/{id}/organization_handles) + statics = statics.filter((s, i) => i === 0 || pluralize.singular(s) !== pluralize.singular(statics[i - 1])); + let sqlVerb = { get: 'select', delete: 'delete', post: 'insert', put: 'replace', patch: 'update' }[verb]; + if (verb === 'get') { + while (statics.length && GET_TRAILING.has(statics[statics.length - 1])) statics.pop(); + } else { + let stripped = false; + while (statics.length && ACTION_SEGMENTS.has(statics[statics.length - 1])) { statics.pop(); stripped = true; } + if (stripped && verb !== 'delete') sqlVerb = 'exec'; + } + let resource; + if (statics.length === 0) resource = pluralize(prefix || snake(root)); + else resource = [prefix, ...statics.slice(0, -1).map((s) => pluralize.singular(s)), pluralize(statics[statics.length - 1])].filter(Boolean).join('_'); + return { resource: resource + versionSuffix, sqlVerb }; +} + +function mapNew(service, pathKey, verb, op, resolve, formattedOpId) { + const skip = skipReason(op); + if (skip) return { resource: 'skip_this_resource', method: '', sqlVerb: '', objectKey: '', skip, mappedBy: 'skip' }; + const norm = normalizePath(pathKey); + let { resource, sqlVerb } = derive(service, pathKey, verb); + let method = formattedOpId; + let mappedBy = 'rule'; + let objectKeyOverride = null; + for (const rule of OVERRIDES) { + if (rule.verb && rule.verb !== verb) continue; + const mm = norm.match(rule.re); + if (!mm) continue; + if (rule.resource) resource = typeof rule.resource === 'function' ? rule.resource(mm) : rule.resource; + if (rule.method) method = rule.method; + if (rule.sqlVerb) sqlVerb = rule.sqlVerb; + if (rule.objectKey !== undefined) objectKeyOverride = rule.objectKey; + mappedBy = 'override'; + break; + } + let objectKey = ''; + if (verb === 'get') { + const pag = op['x-pagination']; + const { key, envelope } = classifyEnvelope(op, resolve); + // an entity read (path ends in a parameter) is one row; a v1 entity that + // embeds an object array (a dashboard's widgets) must not be exploded + const entityRead = /\}$/.test(pathKey) && envelope.startsWith('single-array'); + objectKey = objectKeyOverride ?? (pag?.resultsPath ? `$.${pag.resultsPath}` : entityRead ? '' : key); + if (sqlVerb === 'select' && !hasColumns(op, resolve, objectKey)) { + if (objectKey && hasColumns(op, resolve, '')) { + // a single scalar array ({metrics: [...]}, {tags: [...]}): project + // the envelope itself as the row, with the array as a JSON column + objectKey = ''; + mappedBy = 'rule:envelope_row'; + } else { + sqlVerb = 'exec'; + objectKey = ''; + mappedBy = 'rule:no_columns'; + } + } + } + return { resource, method, sqlVerb, objectKey, skip: '', mappedBy }; +} + +// --------------------------------------------------------------------------- +// CSV utilities (RFC 4180, preserves column order) +// --------------------------------------------------------------------------- + +function parseCsv(text) { + const rows = []; + let row = [], field = '', inQuotes = false; + for (let i = 0; i < text.length; i++) { + const c = text[i]; + if (inQuotes) { + if (c === '"') { + if (text[i + 1] === '"') { field += '"'; i++; } else { inQuotes = false; } + } else { field += c; } + } else if (c === '"') { + inQuotes = true; + } else if (c === ',') { + row.push(field); field = ''; + } else if (c === '\n' || c === '\r') { + if (c === '\r' && text[i + 1] === '\n') i++; + row.push(field); field = ''; + if (row.length > 1 || row[0] !== '') rows.push(row); + row = []; + } else { field += c; } + } + if (field !== '' || row.length > 0) { row.push(field); rows.push(row); } + return rows; +} +function csvField(v) { + v = v === undefined || v === null ? '' : String(v); + return /[",\n\r]/.test(v) ? `"${v.replace(/"/g, '""')}"` : v; +} + +// --------------------------------------------------------------------------- +// Index the split service specs +// --------------------------------------------------------------------------- + +const ops = new Map(); // `${filename}::${path}::${verb}` -> { op, pathItem, resolve, service } +const opsById = new Map(); // `${filename}::${operationId}` -> { key, pathKey, verb } +const specFiles = fs.readdirSync(sourceDir).filter((f) => f.endsWith('.yaml')).sort(); +if (specFiles.length === 0) { + console.error(`Error: no service specs in ${sourceDir} - run make split normalize first`); + process.exit(1); +} +for (const filename of specFiles) { + const spec = yaml.load(fs.readFileSync(path.join(sourceDir, filename), 'utf8')); + const resolve = makeResolver(spec); + const service = filename.replace(/\.yaml$/, ''); + for (const [pathKey, pathItem] of Object.entries(spec.paths || {})) { + for (const verb of HTTP_VERBS) { + if (!pathItem[verb]) continue; + ops.set(`${filename}::${pathKey}::${verb}`, { op: pathItem[verb], pathItem, resolve, service }); + if (pathItem[verb].operationId) opsById.set(`${filename}::${pathItem[verb].operationId}`, { key: `${filename}::${pathKey}::${verb}`, pathKey, verb }); + } + } +} + +// --------------------------------------------------------------------------- +// Map +// --------------------------------------------------------------------------- + +const rawRows = parseCsv(fs.readFileSync(csvPath, 'utf8')); +const header = rawRows[0]; +const col = Object.fromEntries(header.map((h, i) => [h, i])); +for (const required of ['filename', 'path', 'verb', 'operationId', 'formatted_op_id', 'stackql_resource_name', 'stackql_method_name', 'stackql_verb', 'stackql_object_key']) { + if (!(required in col)) { + console.error(`Missing expected CSV column: ${required}`); + process.exit(1); + } +} +// analyze re-emits a `skip_this_resource` row (empty method / verb) as an +// unmapped row on every run, so an operation can appear twice: keep one row +// per filename::path::verb, preferring the row that carries a mapping +const rowByKey = new Map(); +let duplicates = 0; +for (const row of rawRows.slice(1)) { + const key = `${row[col.filename]}::${row[col.path]}::${row[col.verb]}`; + const existing = rowByKey.get(key); + if (!existing) { rowByKey.set(key, row); continue; } + duplicates++; + if (!existing[col.stackql_resource_name] && row[col.stackql_resource_name]) rowByKey.set(key, row); +} +const rows = [header, ...rowByKey.values()]; +if (duplicates) console.log(`deduplicated ${duplicates} repeated CSV row(s)`); + +const errors = []; +const warnings = []; +const stats = { existing: 0, corrected: 0, rule: 0, override: 0, skipped: 0, pruned: 0, resynced: 0 }; +const skipsByReason = {}; +const report = []; +const kept = [rows[0]]; +const seenKeys = new Set(); +const meta = new Map(); // row -> { mappedBy, skip } + +for (const row of rows.slice(1)) { + const filename = row[col.filename], pathKey = row[col.path], verb = row[col.verb]; + const key = `${filename}::${pathKey}::${verb}`; + let entry = ops.get(key); + // a row is stale when its path/verb is gone, or now belongs to a different + // operationId (the vendor re-homed the path) + if (entry && row[col.operationId] && entry.op.operationId !== row[col.operationId]) entry = null; + if (!entry) { + // analyze keeps the stale path/verb for an already-mapped operationId + // whose path moved upstream - resync the row in place + const moved = opsById.get(`${filename}::${row[col.operationId]}`); + if (moved && !seenKeys.has(moved.key)) { + report.push(`RESYNC ${filename} ${row[col.operationId]}: ${verb} ${pathKey} -> ${moved.verb} ${moved.pathKey}`); + row[col.path] = moved.pathKey; + row[col.verb] = moved.verb; + entry = ops.get(moved.key); + stats.resynced++; + } else { + stats.pruned++; + report.push(`PRUNED ${filename} ${verb} ${pathKey} (${row[col.operationId]}) - no longer in the spec`); + continue; + } + } + seenKeys.add(`${filename}::${row[col.path]}::${row[col.verb]}`); + const { op, resolve, service } = entry; + const opId = row[col.operationId]; + if (row[col.stackql_resource_name]) { + let mappedBy = 'csv'; + const fix = CORRECTIONS[opId]; + if (fix) { + if (fix.resource) row[col.stackql_resource_name] = fix.resource; + if (fix.method) row[col.stackql_method_name] = fix.method; + if (fix.sqlVerb) row[col.stackql_verb] = fix.sqlVerb; + if (fix.objectKey !== undefined) row[col.stackql_object_key] = fix.objectKey; + mappedBy = 'correction'; + stats.corrected++; + } + // a previously mapped operation that upstream has since deprecated is + // retired here as well, so the skip policy is uniform across releases + const skip = skipReason(op); + if (skip && row[col.stackql_resource_name] !== 'skip_this_resource') { + report.push(`RETIRED ${filename} ${verb} ${pathKey} (${opId}) - ${skip}; was ${row[col.stackql_resource_name]}.${row[col.stackql_method_name]}`); + row[col.stackql_resource_name] = 'skip_this_resource'; + row[col.stackql_method_name] = ''; + row[col.stackql_verb] = ''; + row[col.stackql_object_key] = ''; + mappedBy = 'skip'; + } + if (row[col.stackql_resource_name] === 'skip_this_resource') { + stats.skipped++; + skipsByReason[skip || 'previously_skipped'] = (skipsByReason[skip || 'previously_skipped'] || 0) + 1; + meta.set(row, { mappedBy: 'skip', skip: skip || 'previously_skipped' }); + } else { + stats.existing++; + meta.set(row, { mappedBy, skip: '' }); + } + kept.push(row); + continue; + } + const m = mapNew(service, pathKey, verb, op, resolve, row[col.formatted_op_id]); + row[col.stackql_resource_name] = m.resource; + row[col.stackql_method_name] = m.method; + row[col.stackql_verb] = m.sqlVerb; + row[col.stackql_object_key] = m.objectKey; + meta.set(row, { mappedBy: m.mappedBy, skip: m.skip }); + if (m.skip) { + stats.skipped++; + skipsByReason[m.skip] = (skipsByReason[m.skip] || 0) + 1; + report.push(`SKIP ${service} ${verb} ${pathKey} (${opId}) - ${m.skip}`); + } else { + stats[m.mappedBy.startsWith('rule') ? 'rule' : m.mappedBy]++; + report.push(`NEW ${service}.${m.resource}.${m.method} [${m.sqlVerb}${m.objectKey ? ' ' + m.objectKey : ''}] <- ${verb} ${pathKey}${m.mappedBy === 'rule' ? '' : ` (${m.mappedBy})`}`); + } + kept.push(row); +} + +for (const key of ops.keys()) { + if (!seenKeys.has(key)) errors.push(`in spec but not in CSV (run generate-mappings first): ${key}`); +} + +// --------------------------------------------------------------------------- +// Consistency checks +// --------------------------------------------------------------------------- + +const methodSeen = new Map(); +const sigSeen = new Map(); +const resourceVerbs = new Map(); +for (const row of kept.slice(1)) { + const resource = row[col.stackql_resource_name]; + if (!resource || resource === 'skip_this_resource') continue; + if (!/^[a-z][a-z0-9_]*$/.test(resource)) errors.push(`invalid resource name '${resource}' for ${row[col.filename]} ${row[col.verb]} ${row[col.path]}`); + if (!/^[a-z][a-z0-9_]*$/.test(row[col.stackql_method_name])) errors.push(`invalid method name '${row[col.stackql_method_name]}' for ${row[col.filename]} ${row[col.verb]} ${row[col.path]}`); + if (!['select', 'insert', 'update', 'replace', 'delete', 'exec'].includes(row[col.stackql_verb])) errors.push(`invalid verb '${row[col.stackql_verb]}' for ${row[col.filename]} ${row[col.verb]} ${row[col.path]}`); + const service = row[col.filename].replace(/\.yaml$/, ''); + const methodKey = `${service}.${resource}.${row[col.stackql_method_name]}`; + if (methodSeen.has(methodKey)) errors.push(`duplicate method ${methodKey} (${methodSeen.get(methodKey)} and ${row[col.path]}:${row[col.verb]})`); + methodSeen.set(methodKey, `${row[col.path]}:${row[col.verb]}`); + const rk = `${service}.${resource}`; + if (!resourceVerbs.has(rk)) resourceVerbs.set(rk, new Set()); + resourceVerbs.get(rk).add(row[col.stackql_verb]); + const sqlVerb = row[col.stackql_verb]; + if (sqlVerb === 'exec') continue; + const entry = ops.get(`${row[col.filename]}::${row[col.path]}::${row[col.verb]}`); + const requiredQuery = [...(entry?.pathItem?.parameters || []), ...(entry?.op.parameters || [])] + .map((p) => entry.resolve(p)) + .filter((p) => p && p.in === 'query' && p.required) + .map((p) => p.name); + const sig = [...pathParams(row[col.path]), ...requiredQuery].sort().join(','); + const sigKey = `${service}.${resource}.${sqlVerb}::${sig}`; + if (sigSeen.has(sigKey)) warnings.push(`signature clash on ${service}.${resource} ${sqlVerb} [${sig}]: ${sigSeen.get(sigKey)} and ${row[col.stackql_method_name]} (the first listed wins at runtime)`); + else sigSeen.set(sigKey, row[col.stackql_method_name]); +} +const nonSelectable = [...resourceVerbs.entries()].filter(([, v]) => !v.has('select')).map(([k]) => k); + +// --------------------------------------------------------------------------- +// Write +// --------------------------------------------------------------------------- + +fs.mkdirSync(path.dirname(reportPath), { recursive: true }); +const resourcesByService = new Map(); +for (const row of kept.slice(1)) { + const resource = row[col.stackql_resource_name]; + if (!resource || resource === 'skip_this_resource') continue; + const service = row[col.filename].replace(/\.yaml$/, ''); + if (!resourcesByService.has(service)) resourcesByService.set(service, new Map()); + const r = resourcesByService.get(service); + if (!r.has(resource)) r.set(resource, { n: 0, isNew: true }); + r.get(resource).n++; + if (meta.get(row)?.mappedBy === 'csv' || meta.get(row)?.mappedBy === 'correction') r.get(resource).isNew = false; +} +const summaryLines = []; +for (const [service, r] of [...resourcesByService.entries()].sort()) { + summaryLines.push(` ${service} (${r.size}): ${[...r.entries()].sort().map(([k, v]) => `${k}${v.isNew ? '*' : ''}(${v.n})`).join(', ')}`); +} +report.push('', 'Resources per service (* = resource introduced by this mapping run):', ...summaryLines); +report.push('', `Non-selectable resources (${nonSelectable.length}): ${nonSelectable.sort().join(', ')}`); +if (warnings.length) report.push('', `Warnings (${warnings.length}):`, ...warnings.map((w) => ` ${w}`)); +fs.writeFileSync(reportPath, report.join('\n') + '\n'); + +if (errors.length > 0) { + console.error(`FAILED with ${errors.length} error(s), nothing written (report: ${path.relative(repoRoot, reportPath)}):`); + for (const e of errors.slice(0, 80)) console.error(` ${e}`); + process.exit(1); +} + +const verbCounts = {}; +for (const row of kept.slice(1)) { + const v = row[col.stackql_verb]; + if (v) verbCounts[v] = (verbCounts[v] || 0) + 1; +} +console.log(`Mapped ${kept.length - 1} operations: ${stats.existing} kept from the CSV (${stats.resynced} resynced to a moved path), ${stats.corrected} corrected, ${stats.rule} new by rule, ${stats.override} new by override, ${stats.skipped} skipped (${Object.entries(skipsByReason).map(([k, v]) => `${k}: ${v}`).join(', ')}); ${stats.pruned} stale rows pruned`); +console.log(`Verbs: ${Object.entries(verbCounts).sort().map(([k, v]) => `${k} ${v}`).join(', ')}`); +console.log(`Resources: ${[...resourcesByService.values()].reduce((a, r) => a + r.size, 0)} across ${resourcesByService.size} services; ${nonSelectable.length} non-selectable; ${warnings.length} signature warning(s)`); +console.log(`Report: ${path.relative(repoRoot, reportPath)}`); +if (dryRun) { + console.log('dry run - CSV and inventory not written'); + process.exit(0); +} + +fs.writeFileSync(csvPath, kept.map((r) => r.map(csvField).join(',')).join('\n') + '\n'); + +// operation inventory +const invHeader = ['service', 'api_version', 'path', 'verb', 'operationId', 'tags', 'stackql_resource_name', 'stackql_method_name', 'stackql_verb', 'stackql_object_key', 'mapped_by', 'skip_reason', 'deprecated', 'unstable', 'sunset', 'terraform_resource', 'pagination', 'envelope', 'request_media_types', 'response_media_types', 'summary']; +const inv = [invHeader]; +for (const row of kept.slice(1)) { + const entry = ops.get(`${row[col.filename]}::${row[col.path]}::${row[col.verb]}`); + const { op, resolve, service } = entry; + const { envelope, mediaTypes } = classifyEnvelope(op, resolve); + const mm = meta.get(row) || {}; + inv.push([ + service, op['x-stackql-api-version'] || '', row[col.path], row[col.verb], row[col.operationId], (op.tags || []).join('; '), + row[col.stackql_resource_name], row[col.stackql_method_name], row[col.stackql_verb], row[col.stackql_object_key], + mm.mappedBy || '', mm.skip || '', op.deprecated ? 'true' : '', op['x-unstable'] ? 'true' : '', op['x-sunset'] || '', + op['x-terraform-resource'] || '', op['x-pagination'] ? JSON.stringify(op['x-pagination']) : '', envelope, + requestMediaTypes(op).join('; '), mediaTypes.join('; '), (op.summary || '').replace(/\s+/g, ' ').trim() + ]); +} +fs.writeFileSync(inventoryPath, inv.map((r) => r.map(csvField).join(',')).join('\n') + '\n'); +console.log(`Wrote ${path.relative(repoRoot, csvPath)} and ${path.relative(repoRoot, inventoryPath)}`); diff --git a/provider-dev/scripts/merge_specs.mjs b/provider-dev/scripts/merge_specs.mjs new file mode 100644 index 0000000..61c5bb8 --- /dev/null +++ b/provider-dev/scripts/merge_specs.mjs @@ -0,0 +1,183 @@ +#!/usr/bin/env node + +// Merges the pinned Datadog v1 and v2 OpenAPI specs (provider-dev/downloaded/) +// into one document, provider-dev/build/datadog-openapi.yaml, for the split +// step. Deterministic; validates and fails without writing. +// +// What the merge does: +// - paths: the union (v1 lives under /api/v1/, v2 under /api/v2/ and +// /api/unstable/, so path keys never collide) +// - operationIds: 39 v1 operations reuse a v2 operationId (users, keys, +// downtimes, events, AWS/GCP integration, ...). Every one of them is a +// v1 endpoint superseded by the v2 endpoint of the same name, so the v1 +// operation is renamed with a V1 suffix (operationIds must be unique per +// service spec - the mapping CSV is keyed on them) and tagged +// x-stackql-superseded-by-v2 with the v2 operationId; map_operations.mjs +// skips it with that reason +// - components: v1 schema/parameter/response names that collide with a +// different v2 definition are renamed with a V1 suffix (and every v1 +// $ref rewritten); identical definitions are shared +// - securitySchemes and tags: the union +// - operation-level servers (the intake and On-Call paging hosts) are +// recorded as x-stackql-servers on the operation because the normalize +// step strips non-root servers; post_process.mjs reinstates them as +// path-level servers on the generated spec +// - every operation is tagged x-stackql-api-version: v1 | v2 | unstable +// +// Usage: node provider-dev/scripts/merge_specs.mjs [--out FILE] + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import yaml from 'js-yaml'; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..'); +const downloadDir = path.join(repoRoot, 'provider-dev', 'downloaded'); +const outArg = process.argv.indexOf('--out'); +const outPath = outArg !== -1 ? path.resolve(process.argv[outArg + 1]) : path.join(repoRoot, 'provider-dev', 'build', 'datadog-openapi.yaml'); +const VERBS = ['get', 'post', 'put', 'patch', 'delete']; +const COMPONENT_TYPES = ['schemas', 'parameters', 'responses', 'requestBodies', 'headers', 'examples', 'securitySchemes']; + +function load(v) { + const file = path.join(downloadDir, `${v}-openapi.yaml`); + if (!fs.existsSync(file)) { + console.error(`Error: ${file} not found - run npm run fetch-spec first`); + process.exit(1); + } + return yaml.load(fs.readFileSync(file, 'utf8')); +} + +const v1 = load('v1'); +const v2 = load('v2'); +const errors = []; + +// ---------------------------------------------------------------- opIds +const v2Ids = new Set(); +for (const item of Object.values(v2.paths)) for (const verb of VERBS) if (item[verb]?.operationId) v2Ids.add(item[verb].operationId); +let renamedOps = 0; +for (const [p, item] of Object.entries(v1.paths)) { + for (const verb of VERBS) { + const op = item[verb]; + if (!op) continue; + if (!op.operationId) errors.push(`v1 ${verb} ${p} has no operationId`); + else if (v2Ids.has(op.operationId)) { + op['x-stackql-superseded-by-v2'] = op.operationId; + op.operationId = `${op.operationId}V1`; + renamedOps++; + } + } +} + +// ------------------------------------------------------------ components +function sortKeys(x) { + if (Array.isArray(x)) return x.map(sortKeys); + if (x && typeof x === 'object') return Object.fromEntries(Object.keys(x).sort().map((k) => [k, sortKeys(x[k])])); + return x; +} +function stableEqual(a, b) { + return JSON.stringify(sortKeys(a)) === JSON.stringify(sortKeys(b)); +} +const renames = new Map(); // '#/components//' -> renamed ref +let renamedComponents = 0; +for (const type of COMPONENT_TYPES) { + const a = v1.components?.[type] || {}; + const b = v2.components?.[type] || {}; + for (const name of Object.keys(a)) { + if (!(name in b)) continue; + if (stableEqual(a[name], b[name])) continue; + // AuthZ differs only by its scope list; v2 carries the superset + if (type === 'securitySchemes') continue; + let target = `${name}V1`; + let i = 1; + while (target in b || (target in a && target !== name)) target = `${name}V1_${++i}`; + renames.set(`#/components/${type}/${name}`, `#/components/${type}/${target}`); + a[target] = a[name]; + delete a[name]; + renamedComponents++; + } +} +function rewriteRefs(node) { + if (Array.isArray(node)) { for (const x of node) rewriteRefs(x); return; } + if (!node || typeof node !== 'object') return; + if (typeof node.$ref === 'string' && renames.has(node.$ref)) node.$ref = renames.get(node.$ref); + for (const v of Object.values(node)) rewriteRefs(v); +} +rewriteRefs(v1); + +// ------------------------------------------------------------------ merge +const merged = { + openapi: v2.openapi, + info: { + title: 'Datadog API Collection', + description: 'Datadog v1 and v2 REST APIs merged for the StackQL datadog provider.', + version: v2.info?.version || '1.0' + }, + servers: v2.servers, + security: v2.security, + tags: [], + paths: {}, + components: {} +}; +const tagNames = new Set(); +for (const t of [...(v2.tags || []), ...(v1.tags || [])]) { + if (tagNames.has(t.name)) continue; + tagNames.add(t.name); + merged.tags.push(t); +} +let opServersRecorded = 0; +function addPaths(spec, version) { + for (const [p, item] of Object.entries(spec.paths)) { + if (merged.paths[p]) { errors.push(`path collision ${p}`); continue; } + const pathServers = item.servers; + for (const verb of VERBS) { + const op = item[verb]; + if (!op) continue; + op['x-stackql-api-version'] = p.startsWith('/api/unstable/') ? 'unstable' : version; + const servers = op.servers || pathServers; + if (servers) { op['x-stackql-servers'] = servers; opServersRecorded++; } + } + merged.paths[p] = item; + } +} +addPaths(v2, 'v2'); +addPaths(v1, 'v1'); +for (const type of COMPONENT_TYPES) { + const out = { ...(v2.components?.[type] || {}) }; + for (const [name, def] of Object.entries(v1.components?.[type] || {})) if (!(name in out)) out[name] = def; + if (Object.keys(out).length > 0) merged.components[type] = out; +} + +// ------------------------------------------------------------- validate +const ids = new Set(); +let ops = 0; +for (const [p, item] of Object.entries(merged.paths)) { + for (const verb of VERBS) { + const op = item[verb]; + if (!op) continue; + ops++; + if (ids.has(op.operationId)) errors.push(`duplicate operationId ${op.operationId} at ${verb} ${p}`); + ids.add(op.operationId); + } +} +const known = new Set(); +for (const type of COMPONENT_TYPES) for (const name of Object.keys(merged.components[type] || {})) known.add(`#/components/${type}/${name}`); +function checkRefs(node, where) { + if (Array.isArray(node)) { node.forEach((x, i) => checkRefs(x, `${where}[${i}]`)); return; } + if (!node || typeof node !== 'object') return; + if (typeof node.$ref === 'string' && node.$ref.startsWith('#/components/') && !known.has(node.$ref)) errors.push(`dangling $ref ${node.$ref} at ${where}`); + for (const [k, v] of Object.entries(node)) checkRefs(v, `${where}.${k}`); +} +checkRefs(merged.paths, 'paths'); +checkRefs(merged.components, 'components'); + +if (errors.length > 0) { + console.error(`FAILED with ${errors.length} error(s), nothing written:`); + for (const e of errors.slice(0, 50)) console.error(` ${e}`); + process.exit(1); +} +fs.mkdirSync(path.dirname(outPath), { recursive: true }); +fs.writeFileSync(outPath, yaml.dump(merged, { lineWidth: -1, noRefs: true })); +console.log(`merged ${Object.keys(merged.paths).length} paths / ${ops} operations into ${path.relative(repoRoot, outPath)}`); +console.log(` v1 operationIds renamed with V1 suffix (superseded by v2): ${renamedOps}`); +console.log(` v1 components renamed with V1 suffix (definition differs from v2): ${renamedComponents}`); +console.log(` operation-level servers recorded as x-stackql-servers: ${opServersRecorded}`); diff --git a/provider-dev/scripts/post_normalize.mjs b/provider-dev/scripts/post_normalize.mjs new file mode 100644 index 0000000..6ef6772 --- /dev/null +++ b/provider-dev/scripts/post_normalize.mjs @@ -0,0 +1,97 @@ +#!/usr/bin/env node +// post_normalize.mjs +// +// Reverts the bare-array envelope that `@stackql/provider-utils` normalize +// (pass 1f, "wrapBareArrayResponses") applies to every operation whose 2xx +// response is a top-level `type: array`. +// +// Why this is needed for GitHub: +// +// 1. GitHub operationIds are `tag/op-id` (e.g. `issues/list-suggestions`). +// Normalize derives the wrapper key and the wrapper schema name from the +// operationId, producing `objectKey: $.issues/list_suggestions` and +// `$ref: '#/components/schemas/Issues/list-suggestionsResponse'`. The +// slash breaks both the JSONPath and the JSON pointer, so the generated +// provider would not resolve. +// 2. stackql iterates bare-array JSON responses natively. The published +// github provider has always shipped ~260 bare-array list endpoints +// (repos, issues, contributors, releases, ...) with no objectKey and no +// transform, and they work. The golang-template transform the wrap +// emits adds runtime cost and risk for no functional gain here. +// +// The revert is exact: the synthesised wrapper schema holds the original +// array schema under `properties[]`, so we put that back as the +// response schema, delete the wrapper schema, and drop the marker. The pass +// is idempotent - re-running on already-unwrapped specs is a no-op. +// +// Usage: node provider-dev/scripts/post_normalize.mjs [--api-dir provider-dev/source] [--verbose] + +import { readdirSync, readFileSync, writeFileSync } from 'fs'; +import { join, extname, resolve } from 'path'; +import yaml from 'js-yaml'; + +const MARKER = 'x-stackql-bare-array-wrap'; +const OPS = new Set(['get', 'put', 'post', 'delete', 'patch', 'head', 'options', 'trace']); + +function getArg(flag, fallback) { + const i = process.argv.indexOf(flag); + if (i === -1) return fallback; + return process.argv[i + 1] ?? fallback; +} + +const apiDir = resolve(getArg('--api-dir', 'provider-dev/source')); +const verbose = process.argv.includes('--verbose'); + +let filesTouched = 0; +let unwrapped = 0; +const problems = []; + +for (const f of readdirSync(apiDir)) { + const ext = extname(f).toLowerCase(); + if (ext !== '.yaml' && ext !== '.yml') continue; + const full = join(apiDir, f); + const doc = yaml.load(readFileSync(full, 'utf8')); + if (!doc || typeof doc !== 'object' || !doc.paths) continue; + + let changed = false; + const schemas = doc.components?.schemas ?? {}; + + for (const [p, pathItem] of Object.entries(doc.paths)) { + if (!pathItem || typeof pathItem !== 'object') continue; + for (const [verb, op] of Object.entries(pathItem)) { + if (!OPS.has(verb) || !op || typeof op !== 'object') continue; + const wrap = op[MARKER]; + if (!wrap || typeof wrap !== 'object') continue; + + const { wrapperKey, wrapperName, mediaType } = wrap; + const wrapper = schemas[wrapperName]; + const original = wrapper?.properties?.[wrapperKey]; + if (!original) { + problems.push(`${f} ${verb.toUpperCase()} ${p}: wrapper schema '${wrapperName}' / key '${wrapperKey}' not found`); + continue; + } + + // Restore the bare array schema on every 2xx response that refs the wrapper. + for (const [code, resp] of Object.entries(op.responses ?? {})) { + if (!/^2\d\d$/.test(code)) continue; + const mt = resp?.content?.[mediaType]; + if (mt?.schema?.$ref === `#/components/schemas/${wrapperName}`) { + mt.schema = original; + } + } + delete schemas[wrapperName]; + delete op[MARKER]; + unwrapped++; + changed = true; + if (verbose) console.log(`unwrapped ${f} ${verb.toUpperCase()} ${p} (${wrapperKey})`); + } + } + + if (changed) { + writeFileSync(full, yaml.dump(doc, { lineWidth: -1, noRefs: true })); + filesTouched++; + } +} + +console.log(JSON.stringify({ apiDir, filesTouched, unwrapped, problems }, null, 2)); +if (problems.length) process.exit(1); diff --git a/provider-dev/scripts/post_process.mjs b/provider-dev/scripts/post_process.mjs new file mode 100644 index 0000000..e9e9772 --- /dev/null +++ b/provider-dev/scripts/post_process.mjs @@ -0,0 +1,199 @@ +#!/usr/bin/env node + +// Post-generation fixes for things provider-utils `generate` cannot express. +// Idempotent; re-run after every generate. Validates and fails without +// writing. +// +// 1. Cursor pagination. Datadog declares its pagination dialect per +// operation with the vendor `x-pagination` extension. any-sdk can follow +// the cursor dialects (query-string cursor param, next cursor in the +// response body), so every such GET method gets a method-level +// config.pagination block: requestToken = the cursor query param, +// responseToken = the JSONPath of the next cursor. The page-number and +// offset dialects (page[number]/page[size], page[offset]/page[limit], +// start/count) carry no next-page token in the response and are left as +// plain query parameters usable in the WHERE clause; LIMIT / OFFSET +// pushdown (2) covers the common case of bounding the first page. +// Body-cursor dialects (POST .../search with page.cursor in the body) +// are EXEC methods and are not paginated. +// +// 2. Query parameter pushdown. Every GET method with a vendor limit +// parameter (x-pagination.limitParam, or a `page[limit]` / `page[size]` / +// `limit` / `count` / `page_size` query parameter) gets +// config.queryParamPushdown.top so a SQL LIMIT is sent as that parameter +// (bounded by the parameter's schema maximum); the offset dialects get +// config.queryParamPushdown.skip for OFFSET. Datadog's filter[...] query +// parameters are already addressable directly as WHERE keys (they are +// declared query parameters), so no filter pushdown config is needed; +// any-sdk renders only the OData filter syntax in any case. +// +// 3. snake_case surface. `request.nativeCasing: camel` on every method, +// paired with `snake_case_aliases: true` on the provider config: the +// Datadog wire is snake_case almost everywhere, but the 17 camelCase +// query parameters (filterBy, includeDiscovered, filter[widgetType], ...) +// and ~500 camelCase schema properties resolve from snake_case SQL keys, +// and SELECT / DESCRIBE present snake aliases. Names already containing +// an underscore are unchanged. The aws / azure / clickhouse precedent. +// +// 4. Path-level servers. Nine operations address a different host than the +// API: the log, event and product-analytics intake endpoints +// (http-intake.logs., event-management-intake., +// browser-intake-), the On-Call paging endpoints +// (navy.oncall.datadoghq.com) and the IP ranges document +// (ip-ranges.). merge_specs.mjs recorded the vendor's +// operation-level servers as x-stackql-servers (the normalize step strips +// non-root servers); here they are reinstated as path-level servers with +// the `site` variable carrying x-stackQL-envVar: DD_SITE like the +// document-level server, and the markers are removed. +// +// 5. Marker cleanup: x-stackql-api-version, x-stackql-superseded-by-v2 and +// x-stackql-servers are build-time metadata and are stripped from the +// published specs. +// +// Usage: node provider-dev/scripts/post_process.mjs + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import yaml from 'js-yaml'; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..'); +const servicesDir = path.join(repoRoot, 'provider-dev', 'openapi', 'src', 'datadog', 'v00.00.00000', 'services'); +const serversTemplate = JSON.parse(fs.readFileSync(path.join(repoRoot, 'provider-dev', 'config', 'servers.json'), 'utf8')); +const SITE_ENV_VAR = serversTemplate[0].variables.site['x-stackQL-envVar']; +const HTTP_VERBS = ['get', 'post', 'put', 'patch', 'delete']; +const LIMIT_PARAMS = ['page[limit]', 'page[size]', 'limit', 'count', 'page_size', 'per_page']; +const OFFSET_PARAMS = ['page[offset]', 'offset', 'start']; + +if (!fs.existsSync(servicesDir)) { + console.error(`Error: ${servicesDir} not found - run the generate step first`); + process.exit(1); +} + +function makeResolver(spec) { + return function resolve(node, depth = 0) { + if (!node || depth > 12) return node; + if (node.$ref) { + const parts = node.$ref.replace(/^#\//, '').split('/'); + let cur = spec; + for (const p of parts) cur = cur?.[p]; + return resolve(cur, depth + 1); + } + return node; + }; +} + +function decodePointer(ref) { + // '#/paths/~1api~1v2~1monitor/get' -> ['/api/v2/monitor', 'get'] + const m = ref.match(/^#\/paths\/(.*)\/(get|post|put|patch|delete)$/); + if (!m) return null; + return [m[1].replace(/~1/g, '/').replace(/~0/g, '~'), m[2]]; +} + +const errors = []; +const stats = { methods: 0, cased: 0, cursorPaginated: 0, top: 0, skip: 0, pathServers: 0, markersStripped: 0 }; +const docs = new Map(); + +for (const f of fs.readdirSync(servicesDir).filter((x) => x.endsWith('.yaml')).sort()) { + const doc = yaml.load(fs.readFileSync(path.join(servicesDir, f), 'utf8')); + const resolve = makeResolver(doc); + const resources = doc.components?.['x-stackQL-resources'] || {}; + if (Object.keys(resources).length === 0) errors.push(`${f}: no x-stackQL-resources`); + if (JSON.stringify(doc.servers) !== JSON.stringify(serversTemplate)) errors.push(`${f}: document-level servers differ from provider-dev/config/servers.json`); + + for (const [resName, res] of Object.entries(resources)) { + for (const [methodName, method] of Object.entries(res.methods || {})) { + stats.methods++; + // 3. snake_case surface + method.request = { ...(method.request || {}), nativeCasing: 'camel' }; + stats.cased++; + + const ptr = decodePointer(method.operation?.$ref || ''); + if (!ptr) { errors.push(`${f}: ${resName}.${methodName} has no resolvable operation $ref`); continue; } + const [pathKey, verb] = ptr; + const op = doc.paths?.[pathKey]?.[verb]; + if (!op) { errors.push(`${f}: ${resName}.${methodName} -> ${verb} ${pathKey} not found in paths`); continue; } + if (verb !== 'get') continue; + + const params = [...(doc.paths[pathKey].parameters || []), ...(op.parameters || [])].map((p) => resolve(p)).filter((p) => p && p.in === 'query'); + const byName = Object.fromEntries(params.map((p) => [p.name, p])); + const pag = op['x-pagination']; + const config = { ...(method.config || {}) }; + + // 1. cursor pagination + if (pag?.cursorParam && pag?.cursorPath && byName[pag.cursorParam]) { + config.pagination = { + requestToken: { key: pag.cursorParam, location: 'query' }, + responseToken: { key: `$.${pag.cursorPath}`, location: 'body' } + }; + stats.cursorPaginated++; + } + + // 2. LIMIT / OFFSET pushdown + const limitName = (pag?.limitParam && byName[pag.limitParam]) ? pag.limitParam : LIMIT_PARAMS.find((n) => byName[n]); + if (limitName) { + const schema = resolve(byName[limitName].schema) || {}; + const top = { paramName: limitName }; + if (Number.isFinite(schema.maximum)) top.maxValue = schema.maximum; + config.queryParamPushdown = { ...(config.queryParamPushdown || {}), top }; + stats.top++; + const offsetName = (pag?.pageOffsetParam && byName[pag.pageOffsetParam]) ? pag.pageOffsetParam : OFFSET_PARAMS.find((n) => byName[n]); + if (offsetName && !pag?.cursorParam) { + config.queryParamPushdown.skip = { paramName: offsetName }; + stats.skip++; + } + } + if (Object.keys(config).length > 0) method.config = config; + } + } + + // 4. path-level servers, 5. marker cleanup + for (const [pathKey, item] of Object.entries(doc.paths || {})) { + for (const verb of HTTP_VERBS) { + const op = item[verb]; + if (!op) continue; + const servers = op['x-stackql-servers']; + if (servers) { + // Only the first vendor server is kept: the alternates + // ({protocol}://{name}) put a variable in the scheme, which the + // any-sdk router cannot host-match. Every variable other than `site` + // (the intake subdomain) is pre-substituted with its default, and + // `site` carries the same `.+` host regex as the document server - + // gorilla/mux host variables default to [^.]+ and would never match + // a dotted site value. + const rebased = servers.slice(0, 1).map((s) => { + let url = s.url; + const out = { url, variables: {} }; + for (const [name, v] of Object.entries(s.variables || {})) { + if (name !== 'site') { + url = url.split(`{${name}}`).join(v.default); + continue; + } + url = url.replace('{site}', '{site:.+}'); + out.variables.site = { default: v.default, description: v.description }; + if (Array.isArray(v.enum) && v.enum.includes('datadoghq.com')) out.variables.site['x-stackQL-envVar'] = SITE_ENV_VAR; + } + out.url = url; + if (Object.keys(out.variables).length === 0) delete out.variables; + if (/\{[^}]*\}/.test(out.url.replace('{site:.+}', ''))) errors.push(`${f}: unresolved server variable in ${out.url} on ${pathKey}`); + return out; + }); + if (item.servers && JSON.stringify(item.servers) !== JSON.stringify(rebased)) errors.push(`${f}: conflicting operation-level servers on ${pathKey}`); + item.servers = rebased; + stats.pathServers++; + } + for (const marker of ['x-stackql-servers', 'x-stackql-api-version', 'x-stackql-superseded-by-v2']) { + if (marker in op) { delete op[marker]; stats.markersStripped++; } + } + } + } + docs.set(f, doc); +} + +if (errors.length > 0) { + console.error(`FAILED with ${errors.length} error(s), nothing written:`); + for (const e of errors.slice(0, 50)) console.error(` ${e}`); + process.exit(1); +} +for (const [f, doc] of docs) fs.writeFileSync(path.join(servicesDir, f), yaml.dump(doc, { lineWidth: -1, noRefs: true })); +console.log(`post_process: ${docs.size} services, ${stats.methods} methods - request.nativeCasing: camel on ${stats.cased}; cursor pagination on ${stats.cursorPaginated} GET methods; LIMIT pushdown (top) on ${stats.top}, OFFSET pushdown (skip) on ${stats.skip}; ${stats.pathServers} path-level server overrides (site -> ${SITE_ENV_VAR}); ${stats.markersStripped} build markers stripped`); diff --git a/provider-dev/scripts/pre_normalize.mjs b/provider-dev/scripts/pre_normalize.mjs new file mode 100644 index 0000000..7d63248 --- /dev/null +++ b/provider-dev/scripts/pre_normalize.mjs @@ -0,0 +1,56 @@ +#!/usr/bin/env node + +// Datadog-specific spec adjustments applied to the split service specs before +// the generic provider-utils normalize pass. Idempotent. +// +// 1. Request bodies declared only as `text/json` (the v1 metrics and +// distribution-point submission endpoints) are re-keyed to +// `application/json` - the same JSON body, and the media type stackql's +// request builder emits. Datadog accepts application/json on both. +// 2. Success responses declared as `application/json;datetime-format=rfc3339` +// (v1 usage, v2 events and RUM) are re-keyed to `application/json` so the +// generated method's response mediaType is the plain JSON type stackql +// matches on; the wire response is unchanged. +// +// Usage: node provider-dev/scripts/pre_normalize.mjs [--api-dir provider-dev/source] + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import yaml from 'js-yaml'; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..'); +const argIdx = process.argv.indexOf('--api-dir'); +const apiDir = argIdx !== -1 ? path.resolve(process.argv[argIdx + 1]) : path.join(repoRoot, 'provider-dev', 'source'); +const VERBS = ['get', 'post', 'put', 'patch', 'delete']; + +function rekey(content, from, to) { + if (!content || !(from in content)) return 0; + if (!(to in content)) content[to] = content[from]; + delete content[from]; + return 1; +} + +let files = 0, requests = 0, responses = 0; +for (const f of fs.readdirSync(apiDir).filter((x) => x.endsWith('.yaml')).sort()) { + const full = path.join(apiDir, f); + const doc = yaml.load(fs.readFileSync(full, 'utf8')); + let changed = 0; + for (const item of Object.values(doc.paths || {})) { + for (const verb of VERBS) { + const op = item[verb]; + if (!op) continue; + const n = rekey(op.requestBody?.content, 'text/json', 'application/json'); + requests += n; changed += n; + for (const resp of Object.values(op.responses || {})) { + const m = rekey(resp.content, 'application/json;datetime-format=rfc3339', 'application/json'); + responses += m; changed += m; + } + } + } + if (changed) { + fs.writeFileSync(full, yaml.dump(doc, { lineWidth: -1, noRefs: true })); + files++; + } +} +console.log(`pre_normalize: ${files} file(s) rewritten - ${requests} text/json request bodies and ${responses} datetime-format response media types re-keyed to application/json`); diff --git a/provider-dev/scripts/record_spec_pin.mjs b/provider-dev/scripts/record_spec_pin.mjs new file mode 100644 index 0000000..ffade74 --- /dev/null +++ b/provider-dev/scripts/record_spec_pin.mjs @@ -0,0 +1,57 @@ +#!/usr/bin/env node + +// Companion to bin/fetch-spec.sh: verifies the freshly downloaded v1 and v2 +// specs against provider-dev/config/spec_pin.json (sha256 of each file), or +// rewrites the pin and the snapshots when UPDATE=true. Reports each spec's +// path and operation counts so a refresh is visible in the build log. +// Fails without writing anything when the pin does not match and UPDATE is +// not set. + +import fs from 'fs'; +import path from 'path'; +import crypto from 'crypto'; +import yaml from 'js-yaml'; + +const { UPDATE, TMP_DIR, DOWNLOAD_DIR, PIN_FILE, BASE_URL } = process.env; +const update = UPDATE === 'true'; +const VERBS = ['get', 'post', 'put', 'patch', 'delete']; + +const pin = fs.existsSync(PIN_FILE) ? JSON.parse(fs.readFileSync(PIN_FILE, 'utf8')) : { specs: {} }; +const next = { source: BASE_URL, fetched: new Date().toISOString().slice(0, 10), specs: {} }; +const drift = []; + +for (const v of ['v1', 'v2']) { + const file = `${v}-openapi.yaml`; + const buf = fs.readFileSync(path.join(TMP_DIR, file)); + const sha256 = crypto.createHash('sha256').update(buf).digest('hex'); + const spec = yaml.load(buf.toString('utf8')); + if (!spec?.openapi || !spec.paths) { + console.error(`Error: ${file} does not parse as an OpenAPI document`); + process.exit(1); + } + let operations = 0; + for (const item of Object.values(spec.paths)) for (const verb of VERBS) if (item[verb]) operations++; + next.specs[v] = { file, sha256, paths: Object.keys(spec.paths).length, operations, openapi: spec.openapi }; + console.log(` ${v}: openapi ${spec.openapi}, ${Object.keys(spec.paths).length} paths, ${operations} operations, sha256 ${sha256.slice(0, 12)}`); + const pinned = pin.specs?.[v]; + if (!pinned) drift.push(`${v}: no pin recorded`); + else if (pinned.sha256 !== sha256) drift.push(`${v}: pinned ${pinned.sha256.slice(0, 12)} (${pinned.paths} paths, ${pinned.operations} operations) != upstream ${sha256.slice(0, 12)} (${next.specs[v].paths} paths, ${operations} operations)`); +} + +if (drift.length > 0 && !update) { + console.error('Upstream spec drift detected (nothing written):'); + for (const d of drift) console.error(` ${d}`); + console.error("Run 'npm run fetch-spec -- --update' (make refresh-spec) to accept the change and review the diff."); + process.exit(1); +} + +if (drift.length === 0 && pin.specs?.v1 && pin.specs?.v2) { + console.log(`Specs match the pin recorded ${pin.fetched} - snapshots unchanged.`); + process.exit(0); +} + +for (const v of ['v1', 'v2']) { + fs.copyFileSync(path.join(TMP_DIR, next.specs[v].file), path.join(DOWNLOAD_DIR, next.specs[v].file)); +} +fs.writeFileSync(PIN_FILE, JSON.stringify(next, null, 2) + '\n'); +console.log(`Snapshots written to ${DOWNLOAD_DIR}, pin recorded in ${PIN_FILE}`); diff --git a/provider-dev/scripts/service_discriminator.mjs b/provider-dev/scripts/service_discriminator.mjs new file mode 100644 index 0000000..7918c05 --- /dev/null +++ b/provider-dev/scripts/service_discriminator.mjs @@ -0,0 +1,34 @@ +// Service discriminator for `provider-dev-utils split --svc-discriminator function`. +// Resolves every operation path of the merged Datadog spec to a service name +// using provider-dev/config/service_names.json (ordered path rules, then the +// first path segment after /api/{v1,v2,unstable}/). An operation with no +// rule throws, which fails the split - extend service_names.json rather than +// letting a new API family land in a default bucket. + +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; + +const configPath = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', 'config', 'service_names.json'); +const config = JSON.parse(fs.readFileSync(configPath, 'utf8')); +const rules = config.rules.map((r) => ({ re: new RegExp(r.pathRegex), service: r.service })); + +export function rootSegment(pathKey) { + const m = pathKey.match(/^\/api\/(?:v1|v2|unstable)\/([^/]+)/); + return m ? m[1] : null; +} + +export function resolveService(pathKey) { + for (const rule of rules) if (rule.re.test(pathKey)) return rule.service; + const root = rootSegment(pathKey); + if (root && config.segments[root]) return config.segments[root]; + return null; +} + +export default function datadogServiceDiscriminator(pathKey) { + const service = resolveService(pathKey); + if (!service) { + throw new Error(`no service rule for path ${pathKey} - add it to provider-dev/config/service_names.json`); + } + return service; +} diff --git a/provider-dev/source/actions.yaml b/provider-dev/source/actions.yaml deleted file mode 100644 index 5e6d771..0000000 --- a/provider-dev/source/actions.yaml +++ /dev/null @@ -1,3645 +0,0 @@ -openapi: 3.0.0 -info: - title: actions API - description: datadog actions API - version: '1.0' -paths: - /api/v2/actions-datastores: - get: - description: Lists all datastores for the organization. - operationId: ListDatastores - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatastoreArray' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List datastores - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_read - post: - description: Creates a new datastore. - operationId: CreateDatastore - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppsDatastoreRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppsDatastoreResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_manage - /api/v2/actions-datastores/{datastore_id}: - delete: - description: Deletes a datastore by its unique identifier. - operationId: DeleteDatastore - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - responses: - '200': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_manage - get: - description: Retrieves a specific datastore by its ID. - operationId: GetDatastore - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Datastore' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_read - patch: - description: Updates an existing datastore's attributes. - operationId: UpdateDatastore - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppsDatastoreRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Datastore' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update datastore - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_manage - /api/v2/actions-datastores/{datastore_id}/items: - delete: - description: Deletes an item from a datastore by its key. - operationId: DeleteDatastoreItem - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsDatastoreItemRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsDatastoreItemResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete datastore item - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_write - get: - description: >- - Lists items from a datastore. You can filter the results by specifying - either an item key or a filter query parameter, but not both at the same - time. Supports server-side pagination for large datasets. - operationId: ListDatastoreItems - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - - description: >- - Optional query filter to search items using the [logs search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - in: query - name: filter - schema: - type: string - - description: >- - Optional primary key value to retrieve a specific item. Cannot be - used together with the filter parameter. - in: query - name: item_key - schema: - maxLength: 256 - type: string - - description: >- - Optional field to limit the number of items to return per page for - pagination. Up to 100 items can be returned per page. - in: query - name: page[limit] - schema: - format: int64 - maximum: 100 - minimum: 1 - type: integer - - description: >- - Optional field to offset the number of items to skip from the - beginning of the result set for pagination. - in: query - name: page[offset] - schema: - format: int64 - type: integer - - description: >- - Optional field to sort results by. Prefix with '-' for descending - order (e.g., '-created_at'). - in: query - name: sort - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ItemApiPayloadArray' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List datastore items - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_read - patch: - description: Partially updates an item in a datastore by its key. - operationId: UpdateDatastoreItem - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ItemApiPayload' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update datastore item - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_write - /api/v2/actions-datastores/{datastore_id}/items/bulk: - post: - description: >- - Creates or replaces multiple items in a datastore by their keys in a - single operation. - operationId: BulkWriteDatastoreItems - parameters: - - description: The unique identifier of the datastore to retrieve. - in: path - name: datastore_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PutAppsDatastoreItemResponseArray' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Bulk write datastore items - tags: - - Actions Datastores - x-permission: - operator: OR - permissions: - - apps_datastore_write - /api/v2/actions/app_key_registrations: - get: - description: List App Key Registrations - operationId: ListAppKeyRegistrations - parameters: - - description: The number of App Key Registrations to return per page. - in: query - name: page[size] - required: false - schema: - format: int64 - type: integer - - description: The page number to return. - in: query - name: page[number] - required: false - schema: - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAppKeyRegistrationsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: List App Key Registrations - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - org_app_keys_read - /api/v2/actions/app_key_registrations/{app_key_id}: - delete: - description: Unregister an App Key - operationId: UnregisterAppKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyId' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Unregister an App Key - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - user_access_manage - - user_app_keys - - service_account_write - get: - description: Get an existing App Key Registration - operationId: GetAppKeyRegistration - parameters: - - $ref: '#/components/parameters/ApplicationKeyId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetAppKeyRegistrationResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Get an existing App Key Registration - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - org_app_keys_read - put: - description: Register a new App Key - operationId: RegisterAppKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyId' - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RegisterAppKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Register a new App Key - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - user_access_manage - - user_app_keys - - service_account_write - /api/v2/actions/connections: - post: - description: >- - Create a new Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - operationId: CreateActionConnection - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateActionConnectionRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateActionConnectionResponse' - description: Successfully created Action Connection - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Create a new Action Connection - tags: - - Action Connection - /api/v2/actions/connections/{connection_id}: - delete: - description: >- - Delete an existing Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteActionConnection - parameters: - - $ref: '#/components/parameters/ConnectionId' - responses: - '204': - description: The resource was deleted successfully. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Delete an existing Action Connection - tags: - - Action Connection - x-permission: - operator: OR - permissions: - - connection_write - get: - description: >- - Get an existing Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - operationId: GetActionConnection - parameters: - - $ref: '#/components/parameters/ConnectionId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetActionConnectionResponse' - description: Successfully get Action Connection - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Get an existing Action Connection - tags: - - Action Connection - patch: - description: >- - Update an existing Action Connection. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - operationId: UpdateActionConnection - parameters: - - $ref: '#/components/parameters/ConnectionId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateActionConnectionRequest' - description: Update an existing Action Connection request body - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateActionConnectionResponse' - description: Successfully updated Action Connection - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Request - summary: Update an existing Action Connection - tags: - - Action Connection -components: - schemas: - DatastoreArray: - description: A collection of datastores returned by list operations. - properties: - data: - description: >- - An array of datastore objects containing their configurations and - metadata. - items: - $ref: '#/components/schemas/DatastoreData' - type: array - required: - - data - type: object - CreateAppsDatastoreRequest: - description: >- - Request to create a new datastore with specified configuration and - metadata. - properties: - data: - $ref: '#/components/schemas/CreateAppsDatastoreRequestData' - type: object - CreateAppsDatastoreResponse: - description: >- - Response after successfully creating a new datastore, containing the - datastore's assigned ID. - properties: - data: - $ref: '#/components/schemas/CreateAppsDatastoreResponseData' - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - Datastore: - description: A datastore's complete configuration and metadata. - properties: - data: - $ref: '#/components/schemas/DatastoreData' - type: object - UpdateAppsDatastoreRequest: - description: >- - Request to update a datastore's configuration such as its name or - description. - properties: - data: - $ref: '#/components/schemas/UpdateAppsDatastoreRequestData' - type: object - DeleteAppsDatastoreItemRequest: - description: Request to delete a specific item from a datastore by its primary key. - properties: - data: - $ref: '#/components/schemas/DeleteAppsDatastoreItemRequestData' - type: object - DeleteAppsDatastoreItemResponse: - description: Response from successfully deleting a datastore item. - properties: - data: - $ref: '#/components/schemas/DeleteAppsDatastoreItemResponseData' - type: object - ItemApiPayloadArray: - description: A collection of datastore items with pagination and schema metadata. - properties: - data: - description: An array of datastore items with their content and metadata. - items: - $ref: '#/components/schemas/ItemApiPayloadData' - maxItems: 100 - type: array - meta: - $ref: '#/components/schemas/ItemApiPayloadMeta' - description: >- - Metadata about the included items, including pagination info and - datastore schema. - required: - - data - type: object - UpdateAppsDatastoreItemRequest: - description: Request to update specific fields on an existing datastore item. - properties: - data: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestData' - type: object - ItemApiPayload: - description: A single datastore item with its content and metadata. - properties: - data: - $ref: '#/components/schemas/ItemApiPayloadData' - type: object - BulkPutAppsDatastoreItemsRequest: - description: Request to insert multiple items into a datastore in a single operation. - properties: - data: - $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequestData' - type: object - PutAppsDatastoreItemResponseArray: - description: >- - Response after successfully inserting multiple items into a datastore, - containing the identifiers of the created items. - properties: - data: - description: >- - An array of data objects containing the identifiers of the - successfully inserted items. - items: - $ref: '#/components/schemas/PutAppsDatastoreItemResponseData' - maxItems: 100 - type: array - required: - - data - type: object - ListAppKeyRegistrationsResponse: - description: A paginated list of app key registrations. - properties: - data: - description: An array of app key registrations. - items: - $ref: '#/components/schemas/AppKeyRegistrationData' - type: array - meta: - $ref: '#/components/schemas/ListAppKeyRegistrationsResponseMeta' - type: object - GetAppKeyRegistrationResponse: - description: The response object after getting an app key registration. - properties: - data: - $ref: '#/components/schemas/AppKeyRegistrationData' - type: object - RegisterAppKeyResponse: - description: The response object after creating an app key registration. - properties: - data: - $ref: '#/components/schemas/AppKeyRegistrationData' - type: object - CreateActionConnectionRequest: - description: Request used to create an action connection. - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - required: - - data - type: object - CreateActionConnectionResponse: - description: The response for a created connection - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - type: object - GetActionConnectionResponse: - description: The response for found connection - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - type: object - UpdateActionConnectionRequest: - description: Request used to update an action connection. - properties: - data: - $ref: '#/components/schemas/ActionConnectionDataUpdate' - required: - - data - type: object - UpdateActionConnectionResponse: - description: The response for an updated connection. - properties: - data: - $ref: '#/components/schemas/ActionConnectionData' - type: object - DatastoreData: - description: >- - Core information about a datastore, including its unique identifier and - attributes. - properties: - attributes: - $ref: '#/components/schemas/DatastoreDataAttributes' - id: - description: The unique identifier of the datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - CreateAppsDatastoreRequestData: - description: >- - Data wrapper containing the configuration needed to create a new - datastore. - properties: - attributes: - $ref: '#/components/schemas/CreateAppsDatastoreRequestDataAttributes' - id: - description: >- - Optional ID for the new datastore. If not provided, one will be - generated automatically. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - CreateAppsDatastoreResponseData: - description: The newly created datastore's data. - properties: - id: - description: The unique identifier assigned to the newly created datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - UpdateAppsDatastoreRequestData: - description: >- - Data wrapper containing the datastore identifier and the attributes to - update. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppsDatastoreRequestDataAttributes' - id: - description: The unique identifier of the datastore to update. - type: string - type: - $ref: '#/components/schemas/DatastoreDataType' - required: - - type - type: object - DeleteAppsDatastoreItemRequestData: - description: >- - Data wrapper containing the information needed to identify and delete a - specific datastore item. - properties: - attributes: - $ref: '#/components/schemas/DeleteAppsDatastoreItemRequestDataAttributes' - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - DeleteAppsDatastoreItemResponseData: - description: >- - Data containing the identifier of the datastore item that was - successfully deleted. - properties: - id: - description: The unique identifier of the item that was deleted. - type: string - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - ItemApiPayloadData: - description: Core data and metadata for a single datastore item. - properties: - attributes: - $ref: '#/components/schemas/ItemApiPayloadDataAttributes' - id: - description: The unique identifier of the datastore. - type: string - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - ItemApiPayloadMeta: - description: >- - Additional metadata about a collection of datastore items, including - pagination and schema information. - properties: - page: - $ref: '#/components/schemas/ItemApiPayloadMetaPage' - schema: - $ref: '#/components/schemas/ItemApiPayloadMetaSchema' - type: object - UpdateAppsDatastoreItemRequestData: - description: >- - Data wrapper containing the item identifier and the changes to apply - during the update operation. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataAttributes' - id: - description: The unique identifier of the datastore item. - type: string - type: - $ref: '#/components/schemas/UpdateAppsDatastoreItemRequestDataType' - required: - - type - type: object - BulkPutAppsDatastoreItemsRequestData: - description: >- - Data wrapper containing the items to insert and their configuration for - the bulk insert operation. - properties: - attributes: - $ref: '#/components/schemas/BulkPutAppsDatastoreItemsRequestDataAttributes' - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - PutAppsDatastoreItemResponseData: - description: >- - Data containing the identifier of a single item that was successfully - inserted into the datastore. - properties: - id: - description: The unique identifier assigned to the inserted item. - type: string - type: - $ref: '#/components/schemas/DatastoreItemsDataType' - required: - - type - type: object - AppKeyRegistrationData: - description: Data related to the app key registration. - properties: - id: - description: The app key registration identifier - format: uuid - readOnly: true - type: string - type: - $ref: '#/components/schemas/AppKeyRegistrationDataType' - required: - - type - type: object - ListAppKeyRegistrationsResponseMeta: - description: The definition of `ListAppKeyRegistrationsResponseMeta` object. - properties: - total: - description: The total number of app key registrations. - example: 1 - format: int64 - type: integer - total_filtered: - description: >- - The total number of app key registrations that match the specified - filters. - example: 1 - format: int64 - type: integer - type: object - ActionConnectionData: - description: Data related to the connection. - properties: - attributes: - $ref: '#/components/schemas/ActionConnectionAttributes' - id: - description: The connection identifier - readOnly: true - type: string - type: - $ref: '#/components/schemas/ActionConnectionDataType' - required: - - type - - attributes - type: object - ActionConnectionDataUpdate: - description: Data related to the connection update. - properties: - attributes: - $ref: '#/components/schemas/ActionConnectionAttributesUpdate' - type: - $ref: '#/components/schemas/ActionConnectionDataType' - required: - - type - - attributes - type: object - DatastoreDataAttributes: - description: Detailed information about a datastore. - properties: - created_at: - description: Timestamp when the datastore was created. - format: date-time - type: string - creator_user_id: - description: The numeric ID of the user who created the datastore. - format: int64 - type: integer - creator_user_uuid: - description: The UUID of the user who created the datastore. - type: string - description: - description: A human-readable description about the datastore. - type: string - modified_at: - description: Timestamp when the datastore was last modified. - format: date-time - type: string - name: - description: The display name of the datastore. - type: string - org_id: - description: The ID of the organization that owns this datastore. - format: int64 - type: integer - primary_column_name: - $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' - primary_key_generation_strategy: - $ref: '#/components/schemas/DatastorePrimaryKeyGenerationStrategy' - type: object - DatastoreDataType: - default: datastores - description: The resource type for datastores. - enum: - - datastores - example: datastores - type: string - x-enum-varnames: - - DATASTORES - CreateAppsDatastoreRequestDataAttributes: - description: Configuration and metadata to create a new datastore. - properties: - description: - description: A human-readable description about the datastore. - type: string - name: - description: The display name for the new datastore. - example: datastore-name - type: string - org_access: - $ref: >- - #/components/schemas/CreateAppsDatastoreRequestDataAttributesOrgAccess - primary_column_name: - $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' - primary_key_generation_strategy: - $ref: '#/components/schemas/DatastorePrimaryKeyGenerationStrategy' - required: - - name - - primary_column_name - type: object - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - UpdateAppsDatastoreRequestDataAttributes: - description: Attributes that can be updated on a datastore. - properties: - description: - description: A human-readable description about the datastore. - type: string - name: - description: The display name of the datastore. - type: string - type: object - DeleteAppsDatastoreItemRequestDataAttributes: - description: Attributes specifying which datastore item to delete by its primary key. - properties: - id: - description: Optional unique identifier of the item to delete. - example: a7656bcc-51d4-4884-adf7-4d0d9a3e0633 - type: string - item_key: - description: >- - The primary key value that identifies the item to delete. Cannot - exceed 256 characters. - example: primaryKey - maxLength: 256 - type: string - required: - - item_key - type: object - DatastoreItemsDataType: - default: items - description: The resource type for datastore items. - enum: - - items - example: items - type: string - x-enum-varnames: - - ITEMS - ItemApiPayloadDataAttributes: - description: Metadata and content of a datastore item. - properties: - created_at: - description: Timestamp when the item was first created. - format: date-time - type: string - modified_at: - description: Timestamp when the item was last modified. - format: date-time - type: string - org_id: - description: The ID of the organization that owns this item. - format: int64 - type: integer - primary_column_name: - $ref: '#/components/schemas/DatastoreAttributesPrimaryColumnName' - signature: - description: A unique signature identifying this item version. - type: string - store_id: - description: The unique identifier of the datastore containing this item. - type: string - value: - $ref: '#/components/schemas/ItemApiPayloadDataAttributesValue' - type: object - ItemApiPayloadMetaPage: - description: Pagination information for a collection of datastore items. - properties: - hasMore: - description: Whether there are additional pages of items beyond the current page. - type: boolean - totalCount: - description: The total number of items in the datastore, ignoring any filters. - format: int64 - type: integer - totalFilteredCount: - description: The total number of items that match the current filter criteria. - format: int64 - type: integer - type: object - ItemApiPayloadMetaSchema: - description: >- - Schema information about the datastore, including its primary key and - field definitions. - properties: - fields: - description: An array describing the columns available in this datastore. - items: - $ref: '#/components/schemas/ItemApiPayloadMetaSchemaField' - type: array - primary_key: - description: The name of the primary key column for this datastore. - type: string - type: object - UpdateAppsDatastoreItemRequestDataAttributes: - description: >- - Attributes for updating a datastore item, including the item key and - changes to apply. - properties: - id: - description: The unique identifier of the item being updated. - type: string - item_changes: - $ref: >- - #/components/schemas/UpdateAppsDatastoreItemRequestDataAttributesItemChanges - item_key: - description: >- - The primary key that identifies the item to update. Cannot exceed - 256 characters. - example: '' - maxLength: 256 - type: string - required: - - item_changes - - item_key - type: object - UpdateAppsDatastoreItemRequestDataType: - default: items - description: The resource type for datastore items. - enum: - - items - example: items - type: string - x-enum-varnames: - - ITEMS - BulkPutAppsDatastoreItemsRequestDataAttributes: - description: Configuration for bulk inserting multiple items into a datastore. - properties: - conflict_mode: - $ref: '#/components/schemas/DatastoreItemConflictMode' - values: - $ref: '#/components/schemas/DatastoreItemValues' - required: - - values - type: object - AppKeyRegistrationDataType: - description: The definition of `AppKeyRegistrationDataType` object. - enum: - - app_key_registration - example: app_key_registration - type: string - x-enum-varnames: - - APP_KEY_REGISTRATION - ActionConnectionAttributes: - description: The definition of `ActionConnectionAttributes` object. - properties: - integration: - $ref: '#/components/schemas/ActionConnectionIntegration' - name: - description: Name of the connection - example: My AWS Connection - type: string - required: - - name - - integration - type: object - ActionConnectionDataType: - description: The definition of `ActionConnectionDataType` object. - enum: - - action_connection - example: action_connection - type: string - x-enum-varnames: - - ACTION_CONNECTION - ActionConnectionAttributesUpdate: - description: The definition of `ActionConnectionAttributesUpdate` object. - properties: - integration: - $ref: '#/components/schemas/ActionConnectionIntegrationUpdate' - name: - description: Name of the connection - example: My AWS Connection - type: string - type: object - DatastoreAttributesPrimaryColumnName: - description: >- - The name of the primary key column for this datastore. Primary column - names: - - Must abide by both [PostgreSQL naming conventions](https://www.postgresql.org/docs/7.0/syntax525.htm) - - Cannot exceed 63 characters - example: '' - maxLength: 63 - type: string - DatastorePrimaryKeyGenerationStrategy: - description: >- - Can be set to `uuid` to automatically generate primary keys when new - items are added. Default value is `none`, which requires you to supply a - primary key for each new item. - enum: - - none - - uuid - type: string - x-enum-varnames: - - NONE - - UUID - CreateAppsDatastoreRequestDataAttributesOrgAccess: - description: >- - The organization access level for the datastore. For example, - 'contributor'. - enum: - - contributor - - viewer - - manager - type: string - x-enum-varnames: - - CONTRIBUTOR - - VIEWER - - MANAGER - ItemApiPayloadDataAttributesValue: - additionalProperties: {} - description: The data content (as key-value pairs) of a datastore item. - type: object - ItemApiPayloadMetaSchemaField: - description: Information about a specific column in the datastore schema. - properties: - name: - description: The name of this column in the datastore. - example: '' - type: string - type: - description: >- - The data type of this column. For example, 'string', 'number', or - 'boolean'. - example: '' - type: string - required: - - name - - type - type: object - UpdateAppsDatastoreItemRequestDataAttributesItemChanges: - description: Changes to apply to a datastore item using set operations. - properties: - ops_set: - additionalProperties: {} - description: >- - Set operation that contains key-value pairs to set on the datastore - item. - type: object - type: object - DatastoreItemConflictMode: - description: >- - How to handle conflicts when inserting items that already exist in the - datastore. - enum: - - fail_on_conflict - - overwrite_on_conflict - example: overwrite_on_conflict - type: string - x-enum-varnames: - - FAIL_ON_CONFLICT - - OVERWRITE_ON_CONFLICT - DatastoreItemValues: - description: >- - An array of items to add to the datastore, where each item is a set of - key-value pairs representing the item's data. Up to 100 items can be - updated in a single request. - example: - - data: example data - key: value - - data: example data2 - key: value2 - items: - additionalProperties: {} - description: >- - A single item's data as key-value pairs. Key names cannot exceed 63 - characters. - type: object - maxItems: 100 - type: array - ActionConnectionIntegration: - description: The definition of `ActionConnectionIntegration` object. - oneOf: - - $ref: '#/components/schemas/AWSIntegration' - - $ref: '#/components/schemas/AnthropicIntegration' - - $ref: '#/components/schemas/AsanaIntegration' - - $ref: '#/components/schemas/AzureIntegration' - - $ref: '#/components/schemas/CircleCIIntegration' - - $ref: '#/components/schemas/ClickupIntegration' - - $ref: '#/components/schemas/CloudflareIntegration' - - $ref: '#/components/schemas/ConfigCatIntegration' - - $ref: '#/components/schemas/DatadogIntegration' - - $ref: '#/components/schemas/FastlyIntegration' - - $ref: '#/components/schemas/FreshserviceIntegration' - - $ref: '#/components/schemas/GCPIntegration' - - $ref: '#/components/schemas/GeminiIntegration' - - $ref: '#/components/schemas/GitlabIntegration' - - $ref: '#/components/schemas/GreyNoiseIntegration' - - $ref: '#/components/schemas/HTTPIntegration' - - $ref: '#/components/schemas/LaunchDarklyIntegration' - - $ref: '#/components/schemas/NotionIntegration' - - $ref: '#/components/schemas/OktaIntegration' - - $ref: '#/components/schemas/OpenAIIntegration' - - $ref: '#/components/schemas/ServiceNowIntegration' - - $ref: '#/components/schemas/SplitIntegration' - - $ref: '#/components/schemas/StatsigIntegration' - - $ref: '#/components/schemas/VirusTotalIntegration' - ActionConnectionIntegrationUpdate: - description: The definition of `ActionConnectionIntegrationUpdate` object. - oneOf: - - $ref: '#/components/schemas/AWSIntegrationUpdate' - - $ref: '#/components/schemas/AnthropicIntegrationUpdate' - - $ref: '#/components/schemas/AsanaIntegrationUpdate' - - $ref: '#/components/schemas/AzureIntegrationUpdate' - - $ref: '#/components/schemas/CircleCIIntegrationUpdate' - - $ref: '#/components/schemas/ClickupIntegrationUpdate' - - $ref: '#/components/schemas/CloudflareIntegrationUpdate' - - $ref: '#/components/schemas/ConfigCatIntegrationUpdate' - - $ref: '#/components/schemas/DatadogIntegrationUpdate' - - $ref: '#/components/schemas/FastlyIntegrationUpdate' - - $ref: '#/components/schemas/FreshserviceIntegrationUpdate' - - $ref: '#/components/schemas/GCPIntegrationUpdate' - - $ref: '#/components/schemas/GeminiIntegrationUpdate' - - $ref: '#/components/schemas/GitlabIntegrationUpdate' - - $ref: '#/components/schemas/GreyNoiseIntegrationUpdate' - - $ref: '#/components/schemas/HTTPIntegrationUpdate' - - $ref: '#/components/schemas/LaunchDarklyIntegrationUpdate' - - $ref: '#/components/schemas/NotionIntegrationUpdate' - - $ref: '#/components/schemas/OktaIntegrationUpdate' - - $ref: '#/components/schemas/OpenAIIntegrationUpdate' - - $ref: '#/components/schemas/ServiceNowIntegrationUpdate' - - $ref: '#/components/schemas/SplitIntegrationUpdate' - - $ref: '#/components/schemas/StatsigIntegrationUpdate' - - $ref: '#/components/schemas/VirusTotalIntegrationUpdate' - AWSIntegration: - description: The definition of `AWSIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AWSCredentials' - type: - $ref: '#/components/schemas/AWSIntegrationType' - required: - - type - - credentials - type: object - AnthropicIntegration: - description: The definition of the `AnthropicIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AnthropicCredentials' - type: - $ref: '#/components/schemas/AnthropicIntegrationType' - required: - - type - - credentials - type: object - AsanaIntegration: - description: The definition of the `AsanaIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AsanaCredentials' - type: - $ref: '#/components/schemas/AsanaIntegrationType' - required: - - type - - credentials - type: object - AzureIntegration: - description: The definition of the `AzureIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/AzureCredentials' - type: - $ref: '#/components/schemas/AzureIntegrationType' - required: - - type - - credentials - type: object - CircleCIIntegration: - description: The definition of the `CircleCIIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/CircleCICredentials' - type: - $ref: '#/components/schemas/CircleCIIntegrationType' - required: - - type - - credentials - type: object - ClickupIntegration: - description: The definition of the `ClickupIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/ClickupCredentials' - type: - $ref: '#/components/schemas/ClickupIntegrationType' - required: - - type - - credentials - type: object - CloudflareIntegration: - description: The definition of the `CloudflareIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/CloudflareCredentials' - type: - $ref: '#/components/schemas/CloudflareIntegrationType' - required: - - type - - credentials - type: object - ConfigCatIntegration: - description: The definition of the `ConfigCatIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/ConfigCatCredentials' - type: - $ref: '#/components/schemas/ConfigCatIntegrationType' - required: - - type - - credentials - type: object - DatadogIntegration: - description: The definition of the `DatadogIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/DatadogCredentials' - type: - $ref: '#/components/schemas/DatadogIntegrationType' - required: - - type - - credentials - type: object - FastlyIntegration: - description: The definition of the `FastlyIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/FastlyCredentials' - type: - $ref: '#/components/schemas/FastlyIntegrationType' - required: - - type - - credentials - type: object - FreshserviceIntegration: - description: The definition of the `FreshserviceIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/FreshserviceCredentials' - type: - $ref: '#/components/schemas/FreshserviceIntegrationType' - required: - - type - - credentials - type: object - GCPIntegration: - description: The definition of the `GCPIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GCPCredentials' - type: - $ref: '#/components/schemas/GCPIntegrationType' - required: - - type - - credentials - type: object - GeminiIntegration: - description: The definition of the `GeminiIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GeminiCredentials' - type: - $ref: '#/components/schemas/GeminiIntegrationType' - required: - - type - - credentials - type: object - GitlabIntegration: - description: The definition of the `GitlabIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GitlabCredentials' - type: - $ref: '#/components/schemas/GitlabIntegrationType' - required: - - type - - credentials - type: object - GreyNoiseIntegration: - description: The definition of the `GreyNoiseIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/GreyNoiseCredentials' - type: - $ref: '#/components/schemas/GreyNoiseIntegrationType' - required: - - type - - credentials - type: object - HTTPIntegration: - description: The definition of `HTTPIntegration` object. - properties: - base_url: - description: Base HTTP url for the integration - example: http://datadoghq.com - type: string - credentials: - $ref: '#/components/schemas/HTTPCredentials' - type: - $ref: '#/components/schemas/HTTPIntegrationType' - required: - - type - - base_url - - credentials - type: object - LaunchDarklyIntegration: - description: The definition of the `LaunchDarklyIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/LaunchDarklyCredentials' - type: - $ref: '#/components/schemas/LaunchDarklyIntegrationType' - required: - - type - - credentials - type: object - NotionIntegration: - description: The definition of the `NotionIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/NotionCredentials' - type: - $ref: '#/components/schemas/NotionIntegrationType' - required: - - type - - credentials - type: object - OktaIntegration: - description: The definition of the `OktaIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/OktaCredentials' - type: - $ref: '#/components/schemas/OktaIntegrationType' - required: - - type - - credentials - type: object - OpenAIIntegration: - description: The definition of the `OpenAIIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/OpenAICredentials' - type: - $ref: '#/components/schemas/OpenAIIntegrationType' - required: - - type - - credentials - type: object - ServiceNowIntegration: - description: The definition of the `ServiceNowIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/ServiceNowCredentials' - type: - $ref: '#/components/schemas/ServiceNowIntegrationType' - required: - - type - - credentials - type: object - SplitIntegration: - description: The definition of the `SplitIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/SplitCredentials' - type: - $ref: '#/components/schemas/SplitIntegrationType' - required: - - type - - credentials - type: object - StatsigIntegration: - description: The definition of the `StatsigIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/StatsigCredentials' - type: - $ref: '#/components/schemas/StatsigIntegrationType' - required: - - type - - credentials - type: object - VirusTotalIntegration: - description: The definition of the `VirusTotalIntegration` object. - properties: - credentials: - $ref: '#/components/schemas/VirusTotalCredentials' - type: - $ref: '#/components/schemas/VirusTotalIntegrationType' - required: - - type - - credentials - type: object - AWSIntegrationUpdate: - description: The definition of `AWSIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AWSCredentialsUpdate' - type: - $ref: '#/components/schemas/AWSIntegrationType' - required: - - type - type: object - AnthropicIntegrationUpdate: - description: The definition of the `AnthropicIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AnthropicCredentialsUpdate' - type: - $ref: '#/components/schemas/AnthropicIntegrationType' - required: - - type - type: object - AsanaIntegrationUpdate: - description: The definition of the `AsanaIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AsanaCredentialsUpdate' - type: - $ref: '#/components/schemas/AsanaIntegrationType' - required: - - type - type: object - AzureIntegrationUpdate: - description: The definition of the `AzureIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/AzureCredentialsUpdate' - type: - $ref: '#/components/schemas/AzureIntegrationType' - required: - - type - type: object - CircleCIIntegrationUpdate: - description: The definition of the `CircleCIIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/CircleCICredentialsUpdate' - type: - $ref: '#/components/schemas/CircleCIIntegrationType' - required: - - type - type: object - ClickupIntegrationUpdate: - description: The definition of the `ClickupIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/ClickupCredentialsUpdate' - type: - $ref: '#/components/schemas/ClickupIntegrationType' - required: - - type - type: object - CloudflareIntegrationUpdate: - description: The definition of the `CloudflareIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/CloudflareCredentialsUpdate' - type: - $ref: '#/components/schemas/CloudflareIntegrationType' - required: - - type - type: object - ConfigCatIntegrationUpdate: - description: The definition of the `ConfigCatIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/ConfigCatCredentialsUpdate' - type: - $ref: '#/components/schemas/ConfigCatIntegrationType' - required: - - type - type: object - DatadogIntegrationUpdate: - description: The definition of the `DatadogIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/DatadogCredentialsUpdate' - type: - $ref: '#/components/schemas/DatadogIntegrationType' - required: - - type - type: object - FastlyIntegrationUpdate: - description: The definition of the `FastlyIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/FastlyCredentialsUpdate' - type: - $ref: '#/components/schemas/FastlyIntegrationType' - required: - - type - type: object - FreshserviceIntegrationUpdate: - description: The definition of the `FreshserviceIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/FreshserviceCredentialsUpdate' - type: - $ref: '#/components/schemas/FreshserviceIntegrationType' - required: - - type - type: object - GCPIntegrationUpdate: - description: The definition of the `GCPIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GCPCredentialsUpdate' - type: - $ref: '#/components/schemas/GCPIntegrationType' - required: - - type - type: object - GeminiIntegrationUpdate: - description: The definition of the `GeminiIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GeminiCredentialsUpdate' - type: - $ref: '#/components/schemas/GeminiIntegrationType' - required: - - type - type: object - GitlabIntegrationUpdate: - description: The definition of the `GitlabIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GitlabCredentialsUpdate' - type: - $ref: '#/components/schemas/GitlabIntegrationType' - required: - - type - type: object - GreyNoiseIntegrationUpdate: - description: The definition of the `GreyNoiseIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/GreyNoiseCredentialsUpdate' - type: - $ref: '#/components/schemas/GreyNoiseIntegrationType' - required: - - type - type: object - HTTPIntegrationUpdate: - description: The definition of `HTTPIntegrationUpdate` object. - properties: - base_url: - description: Base HTTP url for the integration - example: http://datadoghq.com - type: string - credentials: - $ref: '#/components/schemas/HTTPCredentialsUpdate' - type: - $ref: '#/components/schemas/HTTPIntegrationType' - required: - - type - type: object - LaunchDarklyIntegrationUpdate: - description: The definition of the `LaunchDarklyIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/LaunchDarklyCredentialsUpdate' - type: - $ref: '#/components/schemas/LaunchDarklyIntegrationType' - required: - - type - type: object - NotionIntegrationUpdate: - description: The definition of the `NotionIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/NotionCredentialsUpdate' - type: - $ref: '#/components/schemas/NotionIntegrationType' - required: - - type - type: object - OktaIntegrationUpdate: - description: The definition of the `OktaIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/OktaCredentialsUpdate' - type: - $ref: '#/components/schemas/OktaIntegrationType' - required: - - type - type: object - OpenAIIntegrationUpdate: - description: The definition of the `OpenAIIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/OpenAICredentialsUpdate' - type: - $ref: '#/components/schemas/OpenAIIntegrationType' - required: - - type - type: object - ServiceNowIntegrationUpdate: - description: The definition of the `ServiceNowIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/ServiceNowCredentialsUpdate' - type: - $ref: '#/components/schemas/ServiceNowIntegrationType' - required: - - type - type: object - SplitIntegrationUpdate: - description: The definition of the `SplitIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/SplitCredentialsUpdate' - type: - $ref: '#/components/schemas/SplitIntegrationType' - required: - - type - type: object - StatsigIntegrationUpdate: - description: The definition of the `StatsigIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/StatsigCredentialsUpdate' - type: - $ref: '#/components/schemas/StatsigIntegrationType' - required: - - type - type: object - VirusTotalIntegrationUpdate: - description: The definition of the `VirusTotalIntegrationUpdate` object. - properties: - credentials: - $ref: '#/components/schemas/VirusTotalCredentialsUpdate' - type: - $ref: '#/components/schemas/VirusTotalIntegrationType' - required: - - type - type: object - AWSCredentials: - description: The definition of `AWSCredentials` object. - oneOf: - - $ref: '#/components/schemas/AWSAssumeRole' - AWSIntegrationType: - description: The definition of `AWSIntegrationType` object. - enum: - - AWS - example: AWS - type: string - x-enum-varnames: - - AWS - AnthropicCredentials: - description: The definition of the `AnthropicCredentials` object. - oneOf: - - $ref: '#/components/schemas/AnthropicAPIKey' - AnthropicIntegrationType: - description: The definition of the `AnthropicIntegrationType` object. - enum: - - Anthropic - example: Anthropic - type: string - x-enum-varnames: - - ANTHROPIC - AsanaCredentials: - description: The definition of the `AsanaCredentials` object. - oneOf: - - $ref: '#/components/schemas/AsanaAccessToken' - AsanaIntegrationType: - description: The definition of the `AsanaIntegrationType` object. - enum: - - Asana - example: Asana - type: string - x-enum-varnames: - - ASANA - AzureCredentials: - description: The definition of the `AzureCredentials` object. - oneOf: - - $ref: '#/components/schemas/AzureTenant' - AzureIntegrationType: - description: The definition of the `AzureIntegrationType` object. - enum: - - Azure - example: Azure - type: string - x-enum-varnames: - - AZURE - CircleCICredentials: - description: The definition of the `CircleCICredentials` object. - oneOf: - - $ref: '#/components/schemas/CircleCIAPIKey' - CircleCIIntegrationType: - description: The definition of the `CircleCIIntegrationType` object. - enum: - - CircleCI - example: CircleCI - type: string - x-enum-varnames: - - CIRCLECI - ClickupCredentials: - description: The definition of the `ClickupCredentials` object. - oneOf: - - $ref: '#/components/schemas/ClickupAPIKey' - ClickupIntegrationType: - description: The definition of the `ClickupIntegrationType` object. - enum: - - Clickup - example: Clickup - type: string - x-enum-varnames: - - CLICKUP - CloudflareCredentials: - description: The definition of the `CloudflareCredentials` object. - oneOf: - - $ref: '#/components/schemas/CloudflareAPIToken' - - $ref: '#/components/schemas/CloudflareGlobalAPIToken' - CloudflareIntegrationType: - description: The definition of the `CloudflareIntegrationType` object. - enum: - - Cloudflare - example: Cloudflare - type: string - x-enum-varnames: - - CLOUDFLARE - ConfigCatCredentials: - description: The definition of the `ConfigCatCredentials` object. - oneOf: - - $ref: '#/components/schemas/ConfigCatSDKKey' - ConfigCatIntegrationType: - description: The definition of the `ConfigCatIntegrationType` object. - enum: - - ConfigCat - example: ConfigCat - type: string - x-enum-varnames: - - CONFIGCAT - DatadogCredentials: - description: The definition of the `DatadogCredentials` object. - oneOf: - - $ref: '#/components/schemas/DatadogAPIKey' - DatadogIntegrationType: - description: The definition of the `DatadogIntegrationType` object. - enum: - - Datadog - example: Datadog - type: string - x-enum-varnames: - - DATADOG - FastlyCredentials: - description: The definition of the `FastlyCredentials` object. - oneOf: - - $ref: '#/components/schemas/FastlyAPIKey' - FastlyIntegrationType: - description: The definition of the `FastlyIntegrationType` object. - enum: - - Fastly - example: Fastly - type: string - x-enum-varnames: - - FASTLY - FreshserviceCredentials: - description: The definition of the `FreshserviceCredentials` object. - oneOf: - - $ref: '#/components/schemas/FreshserviceAPIKey' - FreshserviceIntegrationType: - description: The definition of the `FreshserviceIntegrationType` object. - enum: - - Freshservice - example: Freshservice - type: string - x-enum-varnames: - - FRESHSERVICE - GCPCredentials: - description: The definition of the `GCPCredentials` object. - oneOf: - - $ref: '#/components/schemas/GCPServiceAccount' - GCPIntegrationType: - description: The definition of the `GCPIntegrationType` object. - enum: - - GCP - example: GCP - type: string - x-enum-varnames: - - GCP - GeminiCredentials: - description: The definition of the `GeminiCredentials` object. - oneOf: - - $ref: '#/components/schemas/GeminiAPIKey' - GeminiIntegrationType: - description: The definition of the `GeminiIntegrationType` object. - enum: - - Gemini - example: Gemini - type: string - x-enum-varnames: - - GEMINI - GitlabCredentials: - description: The definition of the `GitlabCredentials` object. - oneOf: - - $ref: '#/components/schemas/GitlabAPIKey' - GitlabIntegrationType: - description: The definition of the `GitlabIntegrationType` object. - enum: - - Gitlab - example: Gitlab - type: string - x-enum-varnames: - - GITLAB - GreyNoiseCredentials: - description: The definition of the `GreyNoiseCredentials` object. - oneOf: - - $ref: '#/components/schemas/GreyNoiseAPIKey' - GreyNoiseIntegrationType: - description: The definition of the `GreyNoiseIntegrationType` object. - enum: - - GreyNoise - example: GreyNoise - type: string - x-enum-varnames: - - GREYNOISE - HTTPCredentials: - description: The definition of `HTTPCredentials` object. - oneOf: - - $ref: '#/components/schemas/HTTPTokenAuth' - HTTPIntegrationType: - description: The definition of `HTTPIntegrationType` object. - enum: - - HTTP - example: HTTP - type: string - x-enum-varnames: - - HTTP - LaunchDarklyCredentials: - description: The definition of the `LaunchDarklyCredentials` object. - oneOf: - - $ref: '#/components/schemas/LaunchDarklyAPIKey' - LaunchDarklyIntegrationType: - description: The definition of the `LaunchDarklyIntegrationType` object. - enum: - - LaunchDarkly - example: LaunchDarkly - type: string - x-enum-varnames: - - LAUNCHDARKLY - NotionCredentials: - description: The definition of the `NotionCredentials` object. - oneOf: - - $ref: '#/components/schemas/NotionAPIKey' - NotionIntegrationType: - description: The definition of the `NotionIntegrationType` object. - enum: - - Notion - example: Notion - type: string - x-enum-varnames: - - NOTION - OktaCredentials: - description: The definition of the `OktaCredentials` object. - oneOf: - - $ref: '#/components/schemas/OktaAPIToken' - OktaIntegrationType: - description: The definition of the `OktaIntegrationType` object. - enum: - - Okta - example: Okta - type: string - x-enum-varnames: - - OKTA - OpenAICredentials: - description: The definition of the `OpenAICredentials` object. - oneOf: - - $ref: '#/components/schemas/OpenAIAPIKey' - OpenAIIntegrationType: - description: The definition of the `OpenAIIntegrationType` object. - enum: - - OpenAI - example: OpenAI - type: string - x-enum-varnames: - - OPENAI - ServiceNowCredentials: - description: The definition of the `ServiceNowCredentials` object. - oneOf: - - $ref: '#/components/schemas/ServiceNowBasicAuth' - ServiceNowIntegrationType: - description: The definition of the `ServiceNowIntegrationType` object. - enum: - - ServiceNow - example: ServiceNow - type: string - x-enum-varnames: - - SERVICENOW - SplitCredentials: - description: The definition of the `SplitCredentials` object. - oneOf: - - $ref: '#/components/schemas/SplitAPIKey' - SplitIntegrationType: - description: The definition of the `SplitIntegrationType` object. - enum: - - Split - example: Split - type: string - x-enum-varnames: - - SPLIT - StatsigCredentials: - description: The definition of the `StatsigCredentials` object. - oneOf: - - $ref: '#/components/schemas/StatsigAPIKey' - StatsigIntegrationType: - description: The definition of the `StatsigIntegrationType` object. - enum: - - Statsig - example: Statsig - type: string - x-enum-varnames: - - STATSIG - VirusTotalCredentials: - description: The definition of the `VirusTotalCredentials` object. - oneOf: - - $ref: '#/components/schemas/VirusTotalAPIKey' - VirusTotalIntegrationType: - description: The definition of the `VirusTotalIntegrationType` object. - enum: - - VirusTotal - example: VirusTotal - type: string - x-enum-varnames: - - VIRUSTOTAL - AWSCredentialsUpdate: - description: The definition of `AWSCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AWSAssumeRoleUpdate' - AnthropicCredentialsUpdate: - description: The definition of the `AnthropicCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AnthropicAPIKeyUpdate' - AsanaCredentialsUpdate: - description: The definition of the `AsanaCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AsanaAccessTokenUpdate' - AzureCredentialsUpdate: - description: The definition of the `AzureCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/AzureTenantUpdate' - CircleCICredentialsUpdate: - description: The definition of the `CircleCICredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/CircleCIAPIKeyUpdate' - ClickupCredentialsUpdate: - description: The definition of the `ClickupCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ClickupAPIKeyUpdate' - CloudflareCredentialsUpdate: - description: The definition of the `CloudflareCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/CloudflareAPITokenUpdate' - - $ref: '#/components/schemas/CloudflareGlobalAPITokenUpdate' - ConfigCatCredentialsUpdate: - description: The definition of the `ConfigCatCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ConfigCatSDKKeyUpdate' - DatadogCredentialsUpdate: - description: The definition of the `DatadogCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/DatadogAPIKeyUpdate' - FastlyCredentialsUpdate: - description: The definition of the `FastlyCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/FastlyAPIKeyUpdate' - FreshserviceCredentialsUpdate: - description: The definition of the `FreshserviceCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/FreshserviceAPIKeyUpdate' - GCPCredentialsUpdate: - description: The definition of the `GCPCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GCPServiceAccountUpdate' - GeminiCredentialsUpdate: - description: The definition of the `GeminiCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GeminiAPIKeyUpdate' - GitlabCredentialsUpdate: - description: The definition of the `GitlabCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GitlabAPIKeyUpdate' - GreyNoiseCredentialsUpdate: - description: The definition of the `GreyNoiseCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/GreyNoiseAPIKeyUpdate' - HTTPCredentialsUpdate: - description: The definition of `HTTPCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/HTTPTokenAuthUpdate' - LaunchDarklyCredentialsUpdate: - description: The definition of the `LaunchDarklyCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/LaunchDarklyAPIKeyUpdate' - NotionCredentialsUpdate: - description: The definition of the `NotionCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/NotionAPIKeyUpdate' - OktaCredentialsUpdate: - description: The definition of the `OktaCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/OktaAPITokenUpdate' - OpenAICredentialsUpdate: - description: The definition of the `OpenAICredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/OpenAIAPIKeyUpdate' - ServiceNowCredentialsUpdate: - description: The definition of the `ServiceNowCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/ServiceNowBasicAuthUpdate' - SplitCredentialsUpdate: - description: The definition of the `SplitCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/SplitAPIKeyUpdate' - StatsigCredentialsUpdate: - description: The definition of the `StatsigCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/StatsigAPIKeyUpdate' - VirusTotalCredentialsUpdate: - description: The definition of the `VirusTotalCredentialsUpdate` object. - oneOf: - - $ref: '#/components/schemas/VirusTotalAPIKeyUpdate' - AWSAssumeRole: - description: The definition of `AWSAssumeRole` object. - properties: - account_id: - description: AWS account the connection is created for - example: '111222333444' - pattern: ^\d{12}$ - type: string - external_id: - description: >- - External ID used to scope which connection can be used to assume the - role - example: 33a1011635c44b38a064cf14e82e1d8f - readOnly: true - type: string - principal_id: - description: AWS account that will assume the role - example: '123456789012' - readOnly: true - type: string - role: - description: Role to assume - example: my-role - type: string - type: - $ref: '#/components/schemas/AWSAssumeRoleType' - required: - - type - - account_id - - role - type: object - AnthropicAPIKey: - description: The definition of the `AnthropicAPIKey` object. - properties: - api_token: - description: The `AnthropicAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/AnthropicAPIKeyType' - required: - - type - - api_token - type: object - AsanaAccessToken: - description: The definition of the `AsanaAccessToken` object. - properties: - access_token: - description: The `AsanaAccessToken` `access_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/AsanaAccessTokenType' - required: - - type - - access_token - type: object - AzureTenant: - description: The definition of the `AzureTenant` object. - properties: - app_client_id: - description: >- - The Client ID, also known as the Application ID in Azure, is a - unique identifier for an application. It's used to identify the - application during the authentication process. Your Application - (client) ID is listed in the application's overview page. You can - navigate to your application via the Azure Directory. - example: '' - type: string - client_secret: - description: >- - The Client Secret is a confidential piece of information known only - to the application and Azure AD. It's used to prove the - application's identity. Your Client Secret is available from the - application’s secrets page. You can navigate to your application via - the Azure Directory. - example: '' - type: string - custom_scopes: - description: >- - If provided, the custom scope to be requested from Microsoft when - acquiring an OAuth 2 access token. This custom scope is used only in - conjunction with the HTTP action. A resource's scope is constructed - by using the identifier URI for the resource and .default, separated - by a forward slash (/) as follows:{identifierURI}/.default. - type: string - tenant_id: - description: >- - The Tenant ID, also known as the Directory ID in Azure, is a unique - identifier that represents an Azure AD instance. Your Tenant ID - (Directory ID) is listed in your Active Directory overview page - under the 'Tenant information' section. - example: '' - type: string - type: - $ref: '#/components/schemas/AzureTenantType' - required: - - type - - tenant_id - - app_client_id - - client_secret - type: object - CircleCIAPIKey: - description: The definition of the `CircleCIAPIKey` object. - properties: - api_token: - description: The `CircleCIAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/CircleCIAPIKeyType' - required: - - type - - api_token - type: object - ClickupAPIKey: - description: The definition of the `ClickupAPIKey` object. - properties: - api_token: - description: The `ClickupAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/ClickupAPIKeyType' - required: - - type - - api_token - type: object - CloudflareAPIToken: - description: The definition of the `CloudflareAPIToken` object. - properties: - api_token: - description: The `CloudflareAPIToken` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/CloudflareAPITokenType' - required: - - type - - api_token - type: object - CloudflareGlobalAPIToken: - description: The definition of the `CloudflareGlobalAPIToken` object. - properties: - auth_email: - description: The `CloudflareGlobalAPIToken` `auth_email`. - example: '' - type: string - global_api_key: - description: The `CloudflareGlobalAPIToken` `global_api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/CloudflareGlobalAPITokenType' - required: - - type - - auth_email - - global_api_key - type: object - ConfigCatSDKKey: - description: The definition of the `ConfigCatSDKKey` object. - properties: - api_password: - description: The `ConfigCatSDKKey` `api_password`. - example: '' - type: string - api_username: - description: The `ConfigCatSDKKey` `api_username`. - example: '' - type: string - sdk_key: - description: The `ConfigCatSDKKey` `sdk_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/ConfigCatSDKKeyType' - required: - - type - - sdk_key - - api_username - - api_password - type: object - DatadogAPIKey: - description: The definition of the `DatadogAPIKey` object. - properties: - api_key: - description: The `DatadogAPIKey` `api_key`. - example: '' - type: string - app_key: - description: The `DatadogAPIKey` `app_key`. - example: '' - type: string - datacenter: - description: The `DatadogAPIKey` `datacenter`. - example: '' - type: string - subdomain: - description: >- - Custom subdomain used for Datadog URLs generated with this - Connection. For example, if this org uses - `https://acme.datadoghq.com` to access Datadog, set this field to - `acme`. If this field is omitted, generated URLs will use the - default site URL for its datacenter (see - [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). - type: string - type: - $ref: '#/components/schemas/DatadogAPIKeyType' - required: - - type - - datacenter - - api_key - - app_key - type: object - FastlyAPIKey: - description: The definition of the `FastlyAPIKey` object. - properties: - api_key: - description: The `FastlyAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/FastlyAPIKeyType' - required: - - type - - api_key - type: object - FreshserviceAPIKey: - description: The definition of the `FreshserviceAPIKey` object. - properties: - api_key: - description: The `FreshserviceAPIKey` `api_key`. - example: '' - type: string - domain: - description: The `FreshserviceAPIKey` `domain`. - example: '' - type: string - type: - $ref: '#/components/schemas/FreshserviceAPIKeyType' - required: - - type - - domain - - api_key - type: object - GCPServiceAccount: - description: The definition of the `GCPServiceAccount` object. - properties: - private_key: - description: The `GCPServiceAccount` `private_key`. - example: '' - type: string - service_account_email: - description: The `GCPServiceAccount` `service_account_email`. - example: '' - type: string - type: - $ref: '#/components/schemas/GCPServiceAccountCredentialType' - required: - - type - - service_account_email - - private_key - type: object - GeminiAPIKey: - description: The definition of the `GeminiAPIKey` object. - properties: - api_key: - description: The `GeminiAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/GeminiAPIKeyType' - required: - - type - - api_key - type: object - GitlabAPIKey: - description: The definition of the `GitlabAPIKey` object. - properties: - api_token: - description: The `GitlabAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/GitlabAPIKeyType' - required: - - type - - api_token - type: object - GreyNoiseAPIKey: - description: The definition of the `GreyNoiseAPIKey` object. - properties: - api_key: - description: The `GreyNoiseAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/GreyNoiseAPIKeyType' - required: - - type - - api_key - type: object - HTTPTokenAuth: - description: The definition of `HTTPTokenAuth` object. - properties: - body: - $ref: '#/components/schemas/HTTPBody' - headers: - description: The `HTTPTokenAuth` `headers`. - items: - $ref: '#/components/schemas/HTTPHeader' - type: array - tokens: - description: The `HTTPTokenAuth` `tokens`. - items: - $ref: '#/components/schemas/HTTPToken' - type: array - type: - $ref: '#/components/schemas/HTTPTokenAuthType' - url_parameters: - description: The `HTTPTokenAuth` `url_parameters`. - items: - $ref: '#/components/schemas/UrlParam' - type: array - required: - - type - type: object - LaunchDarklyAPIKey: - description: The definition of the `LaunchDarklyAPIKey` object. - properties: - api_token: - description: The `LaunchDarklyAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/LaunchDarklyAPIKeyType' - required: - - type - - api_token - type: object - NotionAPIKey: - description: The definition of the `NotionAPIKey` object. - properties: - api_token: - description: The `NotionAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/NotionAPIKeyType' - required: - - type - - api_token - type: object - OktaAPIToken: - description: The definition of the `OktaAPIToken` object. - properties: - api_token: - description: The `OktaAPIToken` `api_token`. - example: '' - type: string - domain: - description: The `OktaAPIToken` `domain`. - example: '' - type: string - type: - $ref: '#/components/schemas/OktaAPITokenType' - required: - - type - - domain - - api_token - type: object - OpenAIAPIKey: - description: The definition of the `OpenAIAPIKey` object. - properties: - api_token: - description: The `OpenAIAPIKey` `api_token`. - example: '' - type: string - type: - $ref: '#/components/schemas/OpenAIAPIKeyType' - required: - - type - - api_token - type: object - ServiceNowBasicAuth: - description: The definition of the `ServiceNowBasicAuth` object. - properties: - instance: - description: The `ServiceNowBasicAuth` `instance`. - example: '' - type: string - password: - description: The `ServiceNowBasicAuth` `password`. - example: '' - type: string - type: - $ref: '#/components/schemas/ServiceNowBasicAuthType' - username: - description: The `ServiceNowBasicAuth` `username`. - example: '' - type: string - required: - - type - - instance - - username - - password - type: object - SplitAPIKey: - description: The definition of the `SplitAPIKey` object. - properties: - api_key: - description: The `SplitAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/SplitAPIKeyType' - required: - - type - - api_key - type: object - StatsigAPIKey: - description: The definition of the `StatsigAPIKey` object. - properties: - api_key: - description: The `StatsigAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/StatsigAPIKeyType' - required: - - type - - api_key - type: object - VirusTotalAPIKey: - description: The definition of the `VirusTotalAPIKey` object. - properties: - api_key: - description: The `VirusTotalAPIKey` `api_key`. - example: '' - type: string - type: - $ref: '#/components/schemas/VirusTotalAPIKeyType' - required: - - type - - api_key - type: object - AWSAssumeRoleUpdate: - description: The definition of `AWSAssumeRoleUpdate` object. - properties: - account_id: - description: AWS account the connection is created for - example: '111222333444' - pattern: ^\d{12}$ - type: string - generate_new_external_id: - description: The `AWSAssumeRoleUpdate` `generate_new_external_id`. - type: boolean - role: - description: Role to assume - example: my-role - type: string - type: - $ref: '#/components/schemas/AWSAssumeRoleType' - required: - - type - type: object - AnthropicAPIKeyUpdate: - description: The definition of the `AnthropicAPIKey` object. - properties: - api_token: - description: The `AnthropicAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/AnthropicAPIKeyType' - required: - - type - type: object - AsanaAccessTokenUpdate: - description: The definition of the `AsanaAccessToken` object. - properties: - access_token: - description: The `AsanaAccessTokenUpdate` `access_token`. - type: string - type: - $ref: '#/components/schemas/AsanaAccessTokenType' - required: - - type - type: object - AzureTenantUpdate: - description: The definition of the `AzureTenant` object. - properties: - app_client_id: - description: >- - The Client ID, also known as the Application ID in Azure, is a - unique identifier for an application. It's used to identify the - application during the authentication process. Your Application - (client) ID is listed in the application's overview page. You can - navigate to your application via the Azure Directory. - type: string - client_secret: - description: >- - The Client Secret is a confidential piece of information known only - to the application and Azure AD. It's used to prove the - application's identity. Your Client Secret is available from the - application’s secrets page. You can navigate to your application via - the Azure Directory. - type: string - custom_scopes: - description: >- - If provided, the custom scope to be requested from Microsoft when - acquiring an OAuth 2 access token. This custom scope is used only in - conjunction with the HTTP action. A resource's scope is constructed - by using the identifier URI for the resource and .default, separated - by a forward slash (/) as follows:{identifierURI}/.default. - type: string - tenant_id: - description: >- - The Tenant ID, also known as the Directory ID in Azure, is a unique - identifier that represents an Azure AD instance. Your Tenant ID - (Directory ID) is listed in your Active Directory overview page - under the 'Tenant information' section. - type: string - type: - $ref: '#/components/schemas/AzureTenantType' - required: - - type - type: object - CircleCIAPIKeyUpdate: - description: The definition of the `CircleCIAPIKey` object. - properties: - api_token: - description: The `CircleCIAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/CircleCIAPIKeyType' - required: - - type - type: object - ClickupAPIKeyUpdate: - description: The definition of the `ClickupAPIKey` object. - properties: - api_token: - description: The `ClickupAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/ClickupAPIKeyType' - required: - - type - type: object - CloudflareAPITokenUpdate: - description: The definition of the `CloudflareAPIToken` object. - properties: - api_token: - description: The `CloudflareAPITokenUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/CloudflareAPITokenType' - required: - - type - type: object - CloudflareGlobalAPITokenUpdate: - description: The definition of the `CloudflareGlobalAPIToken` object. - properties: - auth_email: - description: The `CloudflareGlobalAPITokenUpdate` `auth_email`. - type: string - global_api_key: - description: The `CloudflareGlobalAPITokenUpdate` `global_api_key`. - type: string - type: - $ref: '#/components/schemas/CloudflareGlobalAPITokenType' - required: - - type - type: object - ConfigCatSDKKeyUpdate: - description: The definition of the `ConfigCatSDKKey` object. - properties: - api_password: - description: The `ConfigCatSDKKeyUpdate` `api_password`. - type: string - api_username: - description: The `ConfigCatSDKKeyUpdate` `api_username`. - type: string - sdk_key: - description: The `ConfigCatSDKKeyUpdate` `sdk_key`. - type: string - type: - $ref: '#/components/schemas/ConfigCatSDKKeyType' - required: - - type - type: object - DatadogAPIKeyUpdate: - description: The definition of the `DatadogAPIKey` object. - properties: - api_key: - description: The `DatadogAPIKeyUpdate` `api_key`. - type: string - app_key: - description: The `DatadogAPIKeyUpdate` `app_key`. - type: string - datacenter: - description: The `DatadogAPIKeyUpdate` `datacenter`. - type: string - subdomain: - description: >- - Custom subdomain used for Datadog URLs generated with this - Connection. For example, if this org uses - `https://acme.datadoghq.com` to access Datadog, set this field to - `acme`. If this field is omitted, generated URLs will use the - default site URL for its datacenter (see - [https://docs.datadoghq.com/getting_started/site](https://docs.datadoghq.com/getting_started/site)). - type: string - type: - $ref: '#/components/schemas/DatadogAPIKeyType' - required: - - type - type: object - FastlyAPIKeyUpdate: - description: The definition of the `FastlyAPIKey` object. - properties: - api_key: - description: The `FastlyAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/FastlyAPIKeyType' - required: - - type - type: object - FreshserviceAPIKeyUpdate: - description: The definition of the `FreshserviceAPIKey` object. - properties: - api_key: - description: The `FreshserviceAPIKeyUpdate` `api_key`. - type: string - domain: - description: The `FreshserviceAPIKeyUpdate` `domain`. - type: string - type: - $ref: '#/components/schemas/FreshserviceAPIKeyType' - required: - - type - type: object - GCPServiceAccountUpdate: - description: The definition of the `GCPServiceAccount` object. - properties: - private_key: - description: The `GCPServiceAccountUpdate` `private_key`. - type: string - service_account_email: - description: The `GCPServiceAccountUpdate` `service_account_email`. - type: string - type: - $ref: '#/components/schemas/GCPServiceAccountCredentialType' - required: - - type - type: object - GeminiAPIKeyUpdate: - description: The definition of the `GeminiAPIKey` object. - properties: - api_key: - description: The `GeminiAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/GeminiAPIKeyType' - required: - - type - type: object - GitlabAPIKeyUpdate: - description: The definition of the `GitlabAPIKey` object. - properties: - api_token: - description: The `GitlabAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/GitlabAPIKeyType' - required: - - type - type: object - GreyNoiseAPIKeyUpdate: - description: The definition of the `GreyNoiseAPIKey` object. - properties: - api_key: - description: The `GreyNoiseAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/GreyNoiseAPIKeyType' - required: - - type - type: object - HTTPTokenAuthUpdate: - description: The definition of `HTTPTokenAuthUpdate` object. - properties: - body: - $ref: '#/components/schemas/HTTPBody' - headers: - description: The `HTTPTokenAuthUpdate` `headers`. - items: - $ref: '#/components/schemas/HTTPHeaderUpdate' - type: array - tokens: - description: The `HTTPTokenAuthUpdate` `tokens`. - items: - $ref: '#/components/schemas/HTTPTokenUpdate' - type: array - type: - $ref: '#/components/schemas/HTTPTokenAuthType' - url_parameters: - description: The `HTTPTokenAuthUpdate` `url_parameters`. - items: - $ref: '#/components/schemas/UrlParamUpdate' - type: array - required: - - type - type: object - LaunchDarklyAPIKeyUpdate: - description: The definition of the `LaunchDarklyAPIKey` object. - properties: - api_token: - description: The `LaunchDarklyAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/LaunchDarklyAPIKeyType' - required: - - type - type: object - NotionAPIKeyUpdate: - description: The definition of the `NotionAPIKey` object. - properties: - api_token: - description: The `NotionAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/NotionAPIKeyType' - required: - - type - type: object - OktaAPITokenUpdate: - description: The definition of the `OktaAPIToken` object. - properties: - api_token: - description: The `OktaAPITokenUpdate` `api_token`. - type: string - domain: - description: The `OktaAPITokenUpdate` `domain`. - type: string - type: - $ref: '#/components/schemas/OktaAPITokenType' - required: - - type - type: object - OpenAIAPIKeyUpdate: - description: The definition of the `OpenAIAPIKey` object. - properties: - api_token: - description: The `OpenAIAPIKeyUpdate` `api_token`. - type: string - type: - $ref: '#/components/schemas/OpenAIAPIKeyType' - required: - - type - type: object - ServiceNowBasicAuthUpdate: - description: The definition of the `ServiceNowBasicAuth` object. - properties: - instance: - description: The `ServiceNowBasicAuthUpdate` `instance`. - type: string - password: - description: The `ServiceNowBasicAuthUpdate` `password`. - type: string - type: - $ref: '#/components/schemas/ServiceNowBasicAuthType' - username: - description: The `ServiceNowBasicAuthUpdate` `username`. - type: string - required: - - type - type: object - SplitAPIKeyUpdate: - description: The definition of the `SplitAPIKey` object. - properties: - api_key: - description: The `SplitAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/SplitAPIKeyType' - required: - - type - type: object - StatsigAPIKeyUpdate: - description: The definition of the `StatsigAPIKey` object. - properties: - api_key: - description: The `StatsigAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/StatsigAPIKeyType' - required: - - type - type: object - VirusTotalAPIKeyUpdate: - description: The definition of the `VirusTotalAPIKey` object. - properties: - api_key: - description: The `VirusTotalAPIKeyUpdate` `api_key`. - type: string - type: - $ref: '#/components/schemas/VirusTotalAPIKeyType' - required: - - type - type: object - AWSAssumeRoleType: - description: The definition of `AWSAssumeRoleType` object. - enum: - - AWSAssumeRole - example: AWSAssumeRole - type: string - x-enum-varnames: - - AWSASSUMEROLE - AnthropicAPIKeyType: - description: The definition of the `AnthropicAPIKey` object. - enum: - - AnthropicAPIKey - example: AnthropicAPIKey - type: string - x-enum-varnames: - - ANTHROPICAPIKEY - AsanaAccessTokenType: - description: The definition of the `AsanaAccessToken` object. - enum: - - AsanaAccessToken - example: AsanaAccessToken - type: string - x-enum-varnames: - - ASANAACCESSTOKEN - AzureTenantType: - description: The definition of the `AzureTenant` object. - enum: - - AzureTenant - example: AzureTenant - type: string - x-enum-varnames: - - AZURETENANT - CircleCIAPIKeyType: - description: The definition of the `CircleCIAPIKey` object. - enum: - - CircleCIAPIKey - example: CircleCIAPIKey - type: string - x-enum-varnames: - - CIRCLECIAPIKEY - ClickupAPIKeyType: - description: The definition of the `ClickupAPIKey` object. - enum: - - ClickupAPIKey - example: ClickupAPIKey - type: string - x-enum-varnames: - - CLICKUPAPIKEY - CloudflareAPITokenType: - description: The definition of the `CloudflareAPIToken` object. - enum: - - CloudflareAPIToken - example: CloudflareAPIToken - type: string - x-enum-varnames: - - CLOUDFLAREAPITOKEN - CloudflareGlobalAPITokenType: - description: The definition of the `CloudflareGlobalAPIToken` object. - enum: - - CloudflareGlobalAPIToken - example: CloudflareGlobalAPIToken - type: string - x-enum-varnames: - - CLOUDFLAREGLOBALAPITOKEN - ConfigCatSDKKeyType: - description: The definition of the `ConfigCatSDKKey` object. - enum: - - ConfigCatSDKKey - example: ConfigCatSDKKey - type: string - x-enum-varnames: - - CONFIGCATSDKKEY - DatadogAPIKeyType: - description: The definition of the `DatadogAPIKey` object. - enum: - - DatadogAPIKey - example: DatadogAPIKey - type: string - x-enum-varnames: - - DATADOGAPIKEY - FastlyAPIKeyType: - description: The definition of the `FastlyAPIKey` object. - enum: - - FastlyAPIKey - example: FastlyAPIKey - type: string - x-enum-varnames: - - FASTLYAPIKEY - FreshserviceAPIKeyType: - description: The definition of the `FreshserviceAPIKey` object. - enum: - - FreshserviceAPIKey - example: FreshserviceAPIKey - type: string - x-enum-varnames: - - FRESHSERVICEAPIKEY - GCPServiceAccountCredentialType: - description: The definition of the `GCPServiceAccount` object. - enum: - - GCPServiceAccount - example: GCPServiceAccount - type: string - x-enum-varnames: - - GCPSERVICEACCOUNT - GeminiAPIKeyType: - description: The definition of the `GeminiAPIKey` object. - enum: - - GeminiAPIKey - example: GeminiAPIKey - type: string - x-enum-varnames: - - GEMINIAPIKEY - GitlabAPIKeyType: - description: The definition of the `GitlabAPIKey` object. - enum: - - GitlabAPIKey - example: GitlabAPIKey - type: string - x-enum-varnames: - - GITLABAPIKEY - GreyNoiseAPIKeyType: - description: The definition of the `GreyNoiseAPIKey` object. - enum: - - GreyNoiseAPIKey - example: GreyNoiseAPIKey - type: string - x-enum-varnames: - - GREYNOISEAPIKEY - HTTPBody: - description: The definition of `HTTPBody` object. - properties: - content: - description: Serialized body content - example: '{"some-json": "with-value"}' - type: string - content_type: - description: Content type of the body - example: application/json - type: string - type: object - HTTPHeader: - description: The definition of `HTTPHeader` object. - properties: - name: - description: The `HTTPHeader` `name`. - example: MyHttpHeader - pattern: ^[A-Za-z][A-Za-z\\d\\-\\_]*$ - type: string - value: - description: The `HTTPHeader` `value`. - example: Some header value - type: string - required: - - name - - value - type: object - HTTPToken: - description: The definition of `HTTPToken` object. - properties: - name: - description: The `HTTPToken` `name`. - example: MyToken - pattern: ^[A-Za-z][A-Za-z\\d]*$ - type: string - type: - $ref: '#/components/schemas/TokenType' - value: - description: The `HTTPToken` `value`. - example: Some Token Value - type: string - required: - - name - - value - - type - type: object - HTTPTokenAuthType: - description: The definition of `HTTPTokenAuthType` object. - enum: - - HTTPTokenAuth - example: HTTPTokenAuth - type: string - x-enum-varnames: - - HTTPTOKENAUTH - UrlParam: - description: The definition of `UrlParam` object. - properties: - name: - $ref: '#/components/schemas/TokenName' - example: MyUrlParameter - value: - description: The `UrlParam` `value`. - example: Some Url Parameter value - type: string - required: - - name - - value - type: object - LaunchDarklyAPIKeyType: - description: The definition of the `LaunchDarklyAPIKey` object. - enum: - - LaunchDarklyAPIKey - example: LaunchDarklyAPIKey - type: string - x-enum-varnames: - - LAUNCHDARKLYAPIKEY - NotionAPIKeyType: - description: The definition of the `NotionAPIKey` object. - enum: - - NotionAPIKey - example: NotionAPIKey - type: string - x-enum-varnames: - - NOTIONAPIKEY - OktaAPITokenType: - description: The definition of the `OktaAPIToken` object. - enum: - - OktaAPIToken - example: OktaAPIToken - type: string - x-enum-varnames: - - OKTAAPITOKEN - OpenAIAPIKeyType: - description: The definition of the `OpenAIAPIKey` object. - enum: - - OpenAIAPIKey - example: OpenAIAPIKey - type: string - x-enum-varnames: - - OPENAIAPIKEY - ServiceNowBasicAuthType: - description: The definition of the `ServiceNowBasicAuth` object. - enum: - - ServiceNowBasicAuth - example: ServiceNowBasicAuth - type: string - x-enum-varnames: - - SERVICENOWBASICAUTH - SplitAPIKeyType: - description: The definition of the `SplitAPIKey` object. - enum: - - SplitAPIKey - example: SplitAPIKey - type: string - x-enum-varnames: - - SPLITAPIKEY - StatsigAPIKeyType: - description: The definition of the `StatsigAPIKey` object. - enum: - - StatsigAPIKey - example: StatsigAPIKey - type: string - x-enum-varnames: - - STATSIGAPIKEY - VirusTotalAPIKeyType: - description: The definition of the `VirusTotalAPIKey` object. - enum: - - VirusTotalAPIKey - example: VirusTotalAPIKey - type: string - x-enum-varnames: - - VIRUSTOTALAPIKEY - HTTPHeaderUpdate: - description: The definition of `HTTPHeaderUpdate` object. - properties: - deleted: - description: Should the header be deleted. - type: boolean - name: - description: The `HTTPHeaderUpdate` `name`. - example: MyHttpHeader - pattern: ^[A-Za-z][A-Za-z\\d\\-\\_]*$ - type: string - value: - description: The `HTTPHeaderUpdate` `value`. - example: Updated Header Value - type: string - required: - - name - type: object - HTTPTokenUpdate: - description: The definition of `HTTPTokenUpdate` object. - properties: - deleted: - description: Should the header be deleted. - type: boolean - name: - description: The `HTTPToken` `name`. - example: MyToken - pattern: ^[A-Za-z][A-Za-z\\d]*$ - type: string - type: - $ref: '#/components/schemas/TokenType' - value: - description: The `HTTPToken` `value`. - example: Some Token Value - type: string - required: - - name - - type - - value - type: object - UrlParamUpdate: - description: The definition of `UrlParamUpdate` object. - properties: - deleted: - description: Should the header be deleted. - type: boolean - name: - $ref: '#/components/schemas/TokenName' - example: MyUrlParameter - value: - description: The `UrlParamUpdate` `value`. - example: Some Url Parameter value - type: string - required: - - name - type: object - TokenType: - description: The definition of `TokenType` object. - enum: - - SECRET - example: SECRET - type: string - x-enum-varnames: - - SECRET - TokenName: - description: Name for tokens. - example: MyTokenName - pattern: ^[A-Za-z][A-Za-z\\d]*$ - type: string - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - parameters: - ApplicationKeyId: - description: The ID of the app key - in: path - name: app_key_id - required: true - schema: - type: string - ConnectionId: - description: The ID of the action connection - in: path - name: connection_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/apm.yaml b/provider-dev/source/apm.yaml deleted file mode 100644 index 359e05d..0000000 --- a/provider-dev/source/apm.yaml +++ /dev/null @@ -1,1888 +0,0 @@ -openapi: 3.0.0 -info: - title: apm API - description: datadog apm API - version: '1.0' -paths: - /api/v2/apm/config/metrics: - get: - description: Get the list of configured span-based metrics with their definitions. - operationId: ListSpansMetrics - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all span-based metrics - tags: - - Spans Metrics - x-permission: - operator: OR - permissions: - - apm_read - post: - description: >- - Create a metric based on your ingested spans in your organization. - - Returns the span-based metric object from the request body when the - request is successful. - operationId: CreateSpansMetric - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricCreateRequest' - description: The definition of the new span-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a span-based metric - tags: - - Spans Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_generate_metrics - /api/v2/apm/config/metrics/{metric_id}: - delete: - description: Delete a specific span-based metric from your organization. - operationId: DeleteSpansMetric - parameters: - - $ref: '#/components/parameters/SpansMetricIDParameter' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a span-based metric - tags: - - Spans Metrics - x-permission: - operator: OR - permissions: - - apm_generate_metrics - get: - description: Get a specific span-based metric from your organization. - operationId: GetSpansMetric - parameters: - - $ref: '#/components/parameters/SpansMetricIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a span-based metric - tags: - - Spans Metrics - x-permission: - operator: OR - permissions: - - apm_read - patch: - description: >- - Update a specific span-based metric from your organization. - - Returns the span-based metric object from the request body when the - request is successful. - operationId: UpdateSpansMetric - parameters: - - $ref: '#/components/parameters/SpansMetricIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricUpdateRequest' - description: New definition of the span-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a span-based metric - tags: - - Spans Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_generate_metrics - /api/v2/apm/config/retention-filters: - get: - description: Get the list of APM retention filters. - operationId: ListApmRetentionFilters - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all APM retention filters - tags: - - APM Retention Filters - x-permission: - operator: OR - permissions: - - apm_retention_filter_read - - apm_pipelines_read - post: - description: >- - Create a retention filter to index spans in your organization. - - Returns the retention filter definition when the request is successful. - - - Default filters with types spans-errors-sampling-processor and - spans-appsec-sampling-processor cannot be created. - operationId: CreateApmRetentionFilter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterCreateRequest' - description: The definition of the new retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterCreateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a retention filter - tags: - - APM Retention Filters - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - /api/v2/apm/config/retention-filters-execution-order: - put: - description: Re-order the execution order of retention filters. - operationId: ReorderApmRetentionFilters - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ReorderRetentionFiltersRequest' - description: The list of retention filters in the new order. - required: true - responses: - '200': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Re-order retention filters - tags: - - APM Retention Filters - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - /api/v2/apm/config/retention-filters/{filter_id}: - delete: - description: >- - Delete a specific retention filter from your organization. - - - Default filters with types spans-errors-sampling-processor and - spans-appsec-sampling-processor cannot be deleted. - operationId: DeleteApmRetentionFilter - parameters: - - $ref: '#/components/parameters/RetentionFilterIdParam' - responses: - '200': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a retention filter - tags: - - APM Retention Filters - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - get: - description: Get an APM retention filter. - operationId: GetApmRetentionFilter - parameters: - - $ref: '#/components/parameters/RetentionFilterIdParam' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a given APM retention filter - tags: - - APM Retention Filters - x-permission: - operator: OR - permissions: - - apm_retention_filter_read - - apm_pipelines_read - put: - description: >- - Update a retention filter from your organization. - - - Default filters (filters with types spans-errors-sampling-processor and - spans-appsec-sampling-processor) cannot be renamed or removed. - operationId: UpdateApmRetentionFilter - parameters: - - $ref: '#/components/parameters/RetentionFilterIdParam' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterUpdateRequest' - description: The updated definition of the retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RetentionFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a retention filter - tags: - - APM Retention Filters - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_retention_filter_write - - apm_pipelines_write - /api/v2/scorecard/outcomes: - get: - description: Fetches all rule outcomes. - operationId: ListScorecardOutcomes - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - description: Include related rule details in the response. - in: query - name: include - required: false - schema: - example: rule - type: string - - description: Return only specified values in the outcome attributes. - in: query - name: fields[outcome] - required: false - schema: - example: state, service_name - type: string - - description: Return only specified values in the included rule details. - in: query - name: fields[rule] - required: false - schema: - example: name - type: string - - description: Filter the outcomes on a specific service name. - in: query - name: filter[outcome][service_name] - required: false - schema: - example: web-store - type: string - - description: Filter the outcomes by a specific state. - in: query - name: filter[outcome][state] - required: false - schema: - example: fail - type: string - - description: Filter outcomes on whether a rule is enabled/disabled. - in: query - name: filter[rule][enabled] - required: false - schema: - example: true - type: boolean - - description: Filter outcomes based on rule ID. - in: query - name: filter[rule][id] - required: false - schema: - example: f4485c79-0762-449c-96cf-c31e54a659f6 - type: string - - description: Filter outcomes based on rule name. - in: query - name: filter[rule][name] - required: false - schema: - example: SLOs Defined - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OutcomesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: List all rule outcomes - tags: - - Service Scorecards - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Updates multiple scorecard rule outcomes in a single batched request. - operationId: UpdateScorecardOutcomesAsync - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateOutcomesAsyncRequest' - description: Set of scorecard outcomes. - required: true - responses: - '202': - description: Accepted - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Update Scorecard outcomes asynchronously - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/scorecard/outcomes/batch: - post: - description: Sets multiple service-rule outcomes in a single batched request. - operationId: CreateScorecardOutcomesBatch - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OutcomesBatchRequest' - description: Set of scorecard outcomes. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OutcomesBatchResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create outcomes batch - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/scorecard/rules: - get: - description: Fetch all rules. - operationId: ListScorecardRules - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - description: Include related scorecard details in the response. - in: query - name: include - required: false - schema: - example: scorecard - type: string - - description: Filter the rules on a rule ID. - in: query - name: filter[rule][id] - required: false - schema: - example: 37d2f990-c885-4972-949b-8b798213a166 - type: string - - description: Filter for enabled rules only. - in: query - name: filter[rule][enabled] - required: false - schema: - example: true - type: boolean - - description: Filter for custom rules only. - in: query - name: filter[rule][custom] - required: false - schema: - example: true - type: boolean - - description: Filter rules on the rule name. - in: query - name: filter[rule][name] - required: false - schema: - example: Code Repos Defined - type: string - - description: Filter rules on the rule description. - in: query - name: filter[rule][description] - required: false - schema: - example: Identifying - type: string - - description: Return only specific fields in the response for rule attributes. - in: query - name: fields[rule] - required: false - schema: - example: name, description - type: string - - description: >- - Return only specific fields in the included response for scorecard - attributes. - in: query - name: fields[scorecard] - required: false - schema: - example: name - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListRulesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: List all rules - tags: - - Service Scorecards - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Creates a new rule. - operationId: CreateScorecardRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateRuleRequest' - description: Rule attributes. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateRuleResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create a new rule - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/scorecard/rules/{rule_id}: - delete: - description: Deletes a single rule. - operationId: DeleteScorecardRule - parameters: - - $ref: '#/components/parameters/RuleId' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a rule - tags: - - Service Scorecards - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - put: - description: Updates an existing rule. - operationId: UpdateScorecardRule - parameters: - - $ref: '#/components/parameters/RuleId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateRuleRequest' - description: Rule attributes. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateRuleResponse' - description: Rule updated successfully - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Update an existing rule - tags: - - Service Scorecards - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). -components: - schemas: - SpansMetricsResponse: - description: All the available span-based metric objects. - properties: - data: - description: A list of span-based metric objects. - items: - $ref: '#/components/schemas/SpansMetricResponseData' - type: array - type: object - SpansMetricCreateRequest: - description: The new span-based metric body. - properties: - data: - $ref: '#/components/schemas/SpansMetricCreateData' - required: - - data - type: object - SpansMetricResponse: - description: The span-based metric object. - properties: - data: - $ref: '#/components/schemas/SpansMetricResponseData' - type: object - SpansMetricUpdateRequest: - description: The new span-based metric body. - properties: - data: - $ref: '#/components/schemas/SpansMetricUpdateData' - required: - - data - type: object - RetentionFiltersResponse: - description: An ordered list of retention filters. - properties: - data: - description: A list of retention filters objects. - items: - $ref: '#/components/schemas/RetentionFilterAll' - type: array - required: - - data - type: object - RetentionFilterCreateRequest: - description: The body of the retention filter to be created. - properties: - data: - $ref: '#/components/schemas/RetentionFilterCreateData' - required: - - data - type: object - RetentionFilterCreateResponse: - description: The retention filters definition. - properties: - data: - $ref: '#/components/schemas/RetentionFilter' - type: object - ReorderRetentionFiltersRequest: - description: A list of retention filters to reorder. - properties: - data: - description: A list of retention filters objects. - items: - $ref: '#/components/schemas/RetentionFilterWithoutAttributes' - type: array - required: - - data - type: object - RetentionFilterResponse: - description: The retention filters definition. - properties: - data: - $ref: '#/components/schemas/RetentionFilterAll' - type: object - RetentionFilterUpdateRequest: - description: The body of the retention filter to be updated. - properties: - data: - $ref: '#/components/schemas/RetentionFilterUpdateData' - required: - - data - type: object - OutcomesResponse: - description: Scorecard outcomes - the result of a rule for a service. - properties: - data: - $ref: '#/components/schemas/OutcomesResponseData' - included: - $ref: '#/components/schemas/OutcomesResponseIncluded' - links: - $ref: '#/components/schemas/OutcomesResponseLinks' - type: object - UpdateOutcomesAsyncRequest: - description: Scorecard outcomes batch request. - properties: - data: - $ref: '#/components/schemas/UpdateOutcomesAsyncRequestData' - type: object - OutcomesBatchRequest: - description: Scorecard outcomes batch request. - properties: - data: - $ref: '#/components/schemas/OutcomesBatchRequestData' - type: object - OutcomesBatchResponse: - description: Scorecard outcomes batch response. - properties: - data: - $ref: '#/components/schemas/OutcomesBatchResponseData' - meta: - $ref: '#/components/schemas/OutcomesBatchResponseMeta' - required: - - data - - meta - type: object - ListRulesResponse: - description: Scorecard rules response. - properties: - data: - $ref: '#/components/schemas/ListRulesResponseData' - links: - $ref: '#/components/schemas/ListRulesResponseLinks' - type: object - CreateRuleRequest: - description: Scorecard create rule request. - properties: - data: - $ref: '#/components/schemas/CreateRuleRequestData' - type: object - CreateRuleResponse: - description: Created rule in response. - properties: - data: - $ref: '#/components/schemas/CreateRuleResponseData' - type: object - UpdateRuleRequest: - description: Request to update a scorecard rule. - properties: - data: - $ref: '#/components/schemas/UpdateRuleRequestData' - type: object - UpdateRuleResponse: - description: The response from a rule update request. - properties: - data: - $ref: '#/components/schemas/UpdateRuleResponseData' - type: object - SpansMetricResponseData: - description: The span-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/SpansMetricResponseAttributes' - id: - $ref: '#/components/schemas/SpansMetricID' - type: - $ref: '#/components/schemas/SpansMetricType' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - SpansMetricCreateData: - description: The new span-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/SpansMetricCreateAttributes' - id: - $ref: '#/components/schemas/SpansMetricID' - type: - $ref: '#/components/schemas/SpansMetricType' - required: - - id - - type - - attributes - type: object - SpansMetricUpdateData: - description: The new span-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/SpansMetricUpdateAttributes' - type: - $ref: '#/components/schemas/SpansMetricType' - required: - - type - - attributes - type: object - RetentionFilterAll: - description: The definition of the retention filter. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterAllAttributes' - id: - description: The ID of the retention filter. - example: 7RBOb7dLSYWI01yc3pIH8w - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - type - - attributes - type: object - RetentionFilterCreateData: - description: The body of the retention filter to be created. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterCreateAttributes' - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - attributes - - type - type: object - RetentionFilter: - description: The definition of the retention filter. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterAttributes' - id: - description: The ID of the retention filter. - example: 7RBOb7dLSYWI01yc3pIH8w - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - type - - attributes - type: object - RetentionFilterWithoutAttributes: - description: The retention filter object . - properties: - id: - description: The ID of the retention filter. - example: 7RBOb7dLSYWI01yc3pIH8w - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - type - type: object - RetentionFilterUpdateData: - description: The body of the retention filter to be updated. - properties: - attributes: - $ref: '#/components/schemas/RetentionFilterUpdateAttributes' - id: - description: The ID of the retention filter. - example: retention-filter-id - type: string - type: - $ref: '#/components/schemas/ApmRetentionFilterType' - required: - - id - - attributes - - type - type: object - OutcomesResponseData: - description: List of rule outcomes. - items: - $ref: '#/components/schemas/OutcomesResponseDataItem' - type: array - OutcomesResponseIncluded: - description: Array of rule details. - items: - $ref: '#/components/schemas/OutcomesResponseIncludedItem' - type: array - OutcomesResponseLinks: - description: Links attributes. - properties: - next: - description: Link for the next set of results. - example: >- - /api/v2/scorecard/outcomes?include=rule&page%5Blimit%5D=100&page%5Boffset%5D=100 - type: string - type: object - UpdateOutcomesAsyncRequestData: - description: Scorecard outcomes batch request data. - properties: - attributes: - $ref: '#/components/schemas/UpdateOutcomesAsyncAttributes' - type: - $ref: '#/components/schemas/UpdateOutcomesAsyncType' - type: object - OutcomesBatchRequestData: - description: Scorecard outcomes batch request data. - properties: - attributes: - $ref: '#/components/schemas/OutcomesBatchAttributes' - type: - $ref: '#/components/schemas/OutcomesBatchType' - type: object - OutcomesBatchResponseData: - description: List of rule outcomes which were affected during the bulk operation. - items: - $ref: '#/components/schemas/OutcomesResponseDataItem' - type: array - OutcomesBatchResponseMeta: - description: Metadata pertaining to the bulk operation. - properties: - total_received: - description: >- - Total number of scorecard results received during the bulk - operation. - format: int64 - type: integer - total_updated: - description: >- - Total number of scorecard results modified during the bulk - operation. - format: int64 - type: integer - type: object - ListRulesResponseData: - description: Array of rule details. - items: - $ref: '#/components/schemas/ListRulesResponseDataItem' - type: array - ListRulesResponseLinks: - description: Links attributes. - properties: - next: - description: Link for the next set of rules. - example: >- - /api/v2/scorecard/rules?page%5Blimit%5D=2&page%5Boffset%5D=2&page%5Bsize%5D=2 - type: string - type: object - CreateRuleRequestData: - description: Scorecard create rule request data. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - type: - $ref: '#/components/schemas/RuleType' - type: object - CreateRuleResponseData: - description: Create rule response data. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - relationships: - $ref: '#/components/schemas/RelationshipToRule' - type: - $ref: '#/components/schemas/RuleType' - type: object - UpdateRuleRequestData: - description: Data for the request to update a scorecard rule. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - type: - $ref: '#/components/schemas/RuleType' - type: object - UpdateRuleResponseData: - description: The data for a rule update response. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - relationships: - $ref: '#/components/schemas/RelationshipToRule' - type: - $ref: '#/components/schemas/RuleType' - type: object - SpansMetricResponseAttributes: - description: The object describing a Datadog span-based metric. - properties: - compute: - $ref: '#/components/schemas/SpansMetricResponseCompute' - filter: - $ref: '#/components/schemas/SpansMetricResponseFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansMetricResponseGroupBy' - type: array - type: object - SpansMetricID: - description: The name of the span-based metric. - example: my.metric - type: string - SpansMetricType: - default: spans_metrics - description: The type of resource. The value should always be spans_metrics. - enum: - - spans_metrics - example: spans_metrics - type: string - x-enum-varnames: - - SPANS_METRICS - SpansMetricCreateAttributes: - description: The object describing the Datadog span-based metric to create. - properties: - compute: - $ref: '#/components/schemas/SpansMetricCompute' - filter: - $ref: '#/components/schemas/SpansMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansMetricGroupBy' - type: array - required: - - compute - type: object - SpansMetricUpdateAttributes: - description: The span-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/SpansMetricUpdateCompute' - filter: - $ref: '#/components/schemas/SpansMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansMetricGroupBy' - type: array - type: object - RetentionFilterAllAttributes: - description: The attributes of the retention filter. - properties: - created_at: - description: The creation timestamp of the retention filter. - format: int64 - type: integer - created_by: - description: The creator of the retention filter. - type: string - editable: - description: Shows whether the filter can be edited. - example: true - type: boolean - enabled: - description: The status of the retention filter (Enabled/Disabled). - example: true - type: boolean - execution_order: - description: The execution order of the retention filter. - format: int64 - type: integer - filter: - $ref: '#/components/schemas/SpansFilter' - filter_type: - $ref: '#/components/schemas/RetentionFilterAllType' - modified_at: - description: The modification timestamp of the retention filter. - format: int64 - type: integer - modified_by: - description: The modifier of the retention filter. - type: string - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: |- - Sample rate to apply to spans going through this retention filter. - A value of 1.0 keeps all spans matching the query. - example: 1 - format: double - type: number - trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - - A value of 1.0 keeps all traces with spans matching the query. - example: 1 - format: double - type: number - type: object - ApmRetentionFilterType: - default: apm_retention_filter - description: The type of the resource. - enum: - - apm_retention_filter - example: apm_retention_filter - type: string - x-enum-varnames: - - apm_retention_filter - RetentionFilterCreateAttributes: - description: >- - The object describing the configuration of the retention filter to - create/update. - properties: - enabled: - description: Enable/Disable the retention filter. - example: true - type: boolean - filter: - $ref: '#/components/schemas/SpansFilterCreate' - filter_type: - $ref: '#/components/schemas/RetentionFilterType' - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: |- - Sample rate to apply to spans going through this retention filter. - A value of 1.0 keeps all spans matching the query. - example: 1 - format: double - type: number - trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - - A value of 1.0 keeps all traces with spans matching the query. - example: 1 - format: double - type: number - required: - - name - - filter - - enabled - - filter_type - - rate - type: object - RetentionFilterAttributes: - description: The attributes of the retention filter. - properties: - created_at: - description: The creation timestamp of the retention filter. - format: int64 - type: integer - created_by: - description: The creator of the retention filter. - type: string - editable: - description: Shows whether the filter can be edited. - example: true - type: boolean - enabled: - description: The status of the retention filter (Enabled/Disabled). - example: true - type: boolean - execution_order: - description: The execution order of the retention filter. - format: int64 - type: integer - filter: - $ref: '#/components/schemas/SpansFilter' - filter_type: - $ref: '#/components/schemas/RetentionFilterType' - modified_at: - description: The modification timestamp of the retention filter. - format: int64 - type: integer - modified_by: - description: The modifier of the retention filter. - type: string - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: |- - Sample rate to apply to spans going through this retention filter. - A value of 1.0 keeps all spans matching the query. - example: 1 - format: double - type: number - trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - - A value of 1.0 keeps all traces with spans matching the query. - example: 1 - format: double - type: number - type: object - RetentionFilterUpdateAttributes: - description: >- - The object describing the configuration of the retention filter to - create/update. - properties: - enabled: - description: Enable/Disable the retention filter. - example: true - type: boolean - filter: - $ref: '#/components/schemas/SpansFilterCreate' - filter_type: - $ref: '#/components/schemas/RetentionFilterAllType' - name: - description: The name of the retention filter. - example: my retention filter - type: string - rate: - description: |- - Sample rate to apply to spans going through this retention filter. - A value of 1.0 keeps all spans matching the query. - example: 1 - format: double - type: number - trace_rate: - description: >- - Sample rate to apply to traces containing spans going through this - retention filter. - - A value of 1.0 keeps all traces with spans matching the query. - example: 1 - format: double - type: number - required: - - name - - filter - - enabled - - filter_type - - rate - type: object - OutcomesResponseDataItem: - description: A single rule outcome. - properties: - attributes: - $ref: '#/components/schemas/OutcomesBatchResponseAttributes' - id: - description: The unique ID for a rule outcome. - type: string - relationships: - $ref: '#/components/schemas/RuleOutcomeRelationships' - type: - $ref: '#/components/schemas/OutcomeType' - type: object - OutcomesResponseIncludedItem: - description: Attributes of the included rule. - properties: - attributes: - $ref: '#/components/schemas/OutcomesResponseIncludedRuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - type: - $ref: '#/components/schemas/RuleType' - type: object - UpdateOutcomesAsyncAttributes: - description: The JSON:API attributes for a batched set of scorecard outcomes. - properties: - results: - description: Set of scorecard outcomes to update asynchronously. - items: - $ref: '#/components/schemas/UpdateOutcomesAsyncRequestItem' - type: array - type: object - UpdateOutcomesAsyncType: - default: batched-outcome - description: The JSON:API type for scorecard outcomes. - enum: - - batched-outcome - example: batched-outcome - type: string - x-enum-varnames: - - BATCHED_OUTCOME - OutcomesBatchAttributes: - description: The JSON:API attributes for a batched set of scorecard outcomes. - properties: - results: - description: Set of scorecard outcomes to update. - items: - $ref: '#/components/schemas/OutcomesBatchRequestItem' - type: array - type: object - OutcomesBatchType: - default: batched-outcome - description: The JSON:API type for scorecard outcomes. - enum: - - batched-outcome - example: batched-outcome - type: string - x-enum-varnames: - - BATCHED_OUTCOME - ListRulesResponseDataItem: - description: Rule details. - properties: - attributes: - $ref: '#/components/schemas/RuleAttributes' - id: - $ref: '#/components/schemas/RuleId' - relationships: - $ref: '#/components/schemas/RelationshipToRule' - type: - $ref: '#/components/schemas/RuleType' - type: object - RuleAttributes: - description: Details of a rule. - properties: - category: - deprecated: true - description: The scorecard name to which this rule must belong. - type: string - created_at: - description: Creation time of the rule outcome. - format: date-time - type: string - custom: - description: Defines if the rule is a custom rule. - type: boolean - description: - description: Explanation of the rule. - type: string - enabled: - description: If enabled, the rule is calculated as part of the score. - example: true - type: boolean - level: - $ref: '#/components/schemas/RuleLevel' - modified_at: - description: Time of the last rule outcome modification. - format: date-time - type: string - name: - description: Name of the rule. - example: Team Defined - type: string - owner: - description: Owner of the rule. - type: string - scorecard_name: - description: The scorecard name to which this rule must belong. - example: Deployments automated via Deployment Trains - type: string - type: object - RuleType: - default: rule - description: The JSON:API type for scorecard rules. - enum: - - rule - example: rule - type: string - x-enum-varnames: - - RULE - RuleId: - description: The unique ID for a scorecard rule. - example: q8MQxk8TCqrHnWkx - type: string - RelationshipToRule: - description: Scorecard create rule response relationship. - properties: - scorecard: - $ref: '#/components/schemas/RelationshipToRuleData' - type: object - SpansMetricResponseCompute: - description: The compute rule to compute the span-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/SpansMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' - path: - description: >- - The path to the value the span-based metric will aggregate on (only - used if the aggregation type is a "distribution"). - example: '@duration' - type: string - type: object - SpansMetricResponseFilter: - description: >- - The span-based metric filter. Spans matching this filter will be - aggregated in this metric. - properties: - query: - description: The search query - following the span search syntax. - example: '@http.status_code:200 service:my-service' - type: string - type: object - SpansMetricResponseGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the span-based metric will be aggregated over. - example: resource_name - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. - example: resource_name - type: string - type: object - SpansMetricCompute: - description: The compute rule to compute the span-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/SpansMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' - path: - description: >- - The path to the value the span-based metric will aggregate on (only - used if the aggregation type is a "distribution"). - example: '@duration' - type: string - required: - - aggregation_type - type: object - SpansMetricFilter: - description: >- - The span-based metric filter. Spans matching this filter will be - aggregated in this metric. - properties: - query: - default: '*' - description: The search query - following the span search syntax. - example: '@http.status_code:200 service:my-service' - type: string - type: object - SpansMetricGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the span-based metric will be aggregated over. - example: resource_name - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. - example: resource_name - type: string - required: - - path - type: object - SpansMetricUpdateCompute: - description: The compute rule to compute the span-based metric. - properties: - include_percentiles: - $ref: '#/components/schemas/SpansMetricComputeIncludePercentiles' - type: object - SpansFilter: - description: The spans filter used to index spans. - properties: - query: - description: >- - The search query - following the [span search - syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). - example: '@http.status_code:200 service:my-service' - type: string - type: object - RetentionFilterAllType: - default: spans-sampling-processor - description: The type of retention filter. - enum: - - spans-sampling-processor - - spans-errors-sampling-processor - - spans-appsec-sampling-processor - example: spans-sampling-processor - type: string - x-enum-varnames: - - SPANS_SAMPLING_PROCESSOR - - SPANS_ERRORS_SAMPLING_PROCESSOR - - SPANS_APPSEC_SAMPLING_PROCESSOR - SpansFilterCreate: - description: The spans filter. Spans matching this filter will be indexed and stored. - properties: - query: - description: >- - The search query - following the [span search - syntax](https://docs.datadoghq.com/tracing/trace_explorer/query_syntax/). - example: '@http.status_code:200 service:my-service' - type: string - required: - - query - type: object - RetentionFilterType: - default: spans-sampling-processor - description: >- - The type of retention filter. The value should always be - spans-sampling-processor. - enum: - - spans-sampling-processor - example: spans-sampling-processor - type: string - x-enum-varnames: - - SPANS_SAMPLING_PROCESSOR - OutcomesBatchResponseAttributes: - description: The JSON:API attributes for an outcome. - properties: - created_at: - description: Creation time of the rule outcome. - format: date-time - type: string - modified_at: - description: Time of last rule outcome modification. - format: date-time - type: string - remarks: - description: >- - Any remarks regarding the scorecard rule's evaluation, and supports - HTML hyperlinks. - example: 'See: Services' - type: string - service_name: - description: The unique name for a service in the catalog. - example: my-service - type: string - state: - $ref: '#/components/schemas/State' - type: object - RuleOutcomeRelationships: - description: The JSON:API relationship to a scorecard rule. - properties: - rule: - $ref: '#/components/schemas/RelationshipToOutcome' - type: object - OutcomeType: - default: outcome - description: The JSON:API type for an outcome. - enum: - - outcome - example: outcome - type: string - x-enum-varnames: - - OUTCOME - OutcomesResponseIncludedRuleAttributes: - description: Details of a rule. - properties: - name: - description: Name of the rule. - example: Team Defined - type: string - scorecard_name: - description: The scorecard name to which this rule must belong. - example: Observability Best Practices - type: string - type: object - UpdateOutcomesAsyncRequestItem: - description: Scorecard outcome for a single entity and rule. - properties: - entity_reference: - $ref: '#/components/schemas/EntityReference' - remarks: - description: >- - Any remarks regarding the scorecard rule's evaluation. Supports HTML - hyperlinks. - example: 'See: Services' - type: string - rule_id: - $ref: '#/components/schemas/RuleId' - state: - $ref: '#/components/schemas/State' - required: - - rule_id - - entity_reference - - state - type: object - OutcomesBatchRequestItem: - description: >- - Scorecard outcome for a specific rule, for a given service within a - batched update. - properties: - remarks: - description: >- - Any remarks regarding the scorecard rule's evaluation, and supports - HTML hyperlinks. - example: 'See: Services' - type: string - rule_id: - $ref: '#/components/schemas/RuleId' - service_name: - description: The unique name for a service in the catalog. - example: my-service - type: string - state: - $ref: '#/components/schemas/State' - required: - - rule_id - - service_name - - state - type: object - RuleLevel: - description: The maturity level of the rule (1, 2, or 3). - example: 2 - format: int32 - maximum: 3 - minimum: 1 - type: integer - RelationshipToRuleData: - description: Relationship data for a rule. - properties: - data: - $ref: '#/components/schemas/RelationshipToRuleDataObject' - type: object - SpansMetricComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - SpansMetricComputeIncludePercentiles: - description: >- - Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when the `aggregation_type` is `distribution`. - example: false - type: boolean - State: - description: The state of the rule evaluation. - enum: - - pass - - fail - - skip - example: pass - type: string - x-enum-varnames: - - PASS - - FAIL - - SKIP - RelationshipToOutcome: - description: The JSON:API relationship to a scorecard outcome. - properties: - data: - $ref: '#/components/schemas/RelationshipToOutcomeData' - type: object - EntityReference: - description: The unique reference for an IDP entity. - example: service:my-service - type: string - RelationshipToRuleDataObject: - description: Rule relationship data. - properties: - id: - description: The unique ID for a scorecard. - example: q8MQxk8TCqrHnWkp - type: string - type: - $ref: '#/components/schemas/ScorecardType' - type: object - RelationshipToOutcomeData: - description: >- - The JSON:API relationship to an outcome, which returns the related rule - id. - properties: - id: - $ref: '#/components/schemas/RuleId' - type: - $ref: '#/components/schemas/RuleType' - type: object - ScorecardType: - default: scorecard - description: The JSON:API type for scorecard. - enum: - - scorecard - example: scorecard - type: string - x-enum-varnames: - - SCORECARD - responses: - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - parameters: - SpansMetricIDParameter: - description: The name of the span-based metric. - in: path - name: metric_id - required: true - schema: - type: string - RetentionFilterIdParam: - description: The ID of the retention filter. - in: path - name: filter_id - required: true - schema: - type: string - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageOffset: - description: Specific offset to use as the beginning of the returned page. - in: query - name: page[offset] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - RuleId: - description: The ID of the rule. - in: path - name: rule_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/catalog.yaml b/provider-dev/source/catalog.yaml deleted file mode 100644 index 64db6d4..0000000 --- a/provider-dev/source/catalog.yaml +++ /dev/null @@ -1,2244 +0,0 @@ -openapi: 3.0.0 -info: - title: catalog API - description: datadog catalog API - version: '1.0' -paths: - /api/v2/apicatalog/api: - get: - deprecated: true - description: List APIs and their IDs. - operationId: ListAPIs - parameters: - - description: Filter APIs by name - in: query - name: query - required: false - schema: - example: payments - type: string - - description: Number of items per page. - in: query - name: page[limit] - required: false - schema: - default: 20 - format: int64 - minimum: 1 - type: integer - - description: Offset for pagination. - in: query - name: page[offset] - required: false - schema: - default: 0 - format: int64 - minimum: 0 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAPIsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_read - summary: List APIs - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_read - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apicatalog/api/{id}: - delete: - deprecated: true - description: Delete a specific API by ID. - operationId: DeleteOpenAPI - parameters: - - description: ID of the API to delete - in: path - name: id - required: true - schema: - $ref: '#/components/schemas/ApiID' - responses: - '204': - description: API deleted successfully - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: API not found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_write - summary: Delete an API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apicatalog/api/{id}/openapi: - get: - deprecated: true - description: >- - Retrieve information about a specific API in - [OpenAPI](https://spec.openapis.org/oas/latest.html) format file. - operationId: GetOpenAPI - parameters: - - description: ID of the API to retrieve - in: path - name: id - required: true - schema: - $ref: '#/components/schemas/ApiID' - responses: - '200': - content: - multipart/form-data: - schema: - format: binary - type: string - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: API not found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_read - summary: Get an API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_read - x-unstable: '**Note**: This endpoint is deprecated.' - put: - deprecated: true - description: > - Update information about a specific API. The given content will replace - all API content of the given ID. - - The ID is returned by the create API, or can be found in the URL in the - API catalog UI. - operationId: UpdateOpenAPI - parameters: - - description: ID of the API to modify - in: path - name: id - required: true - schema: - $ref: '#/components/schemas/ApiID' - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/OpenAPIFile' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateOpenAPIResponse' - description: API updated successfully - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: API not found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_write - summary: Update an API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/apicatalog/openapi: - post: - deprecated: true - description: > - Create a new API from the - [OpenAPI](https://spec.openapis.org/oas/latest.html) specification - given. - - See the [API Catalog - documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) for - additional - - information about the possible metadata. - - It returns the created API ID. - operationId: CreateOpenAPI - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/OpenAPIFile' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateOpenAPIResponse' - description: API created successfully - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_api_catalog_write - summary: Create a new API - tags: - - API Management - x-permission: - operator: OR - permissions: - - apm_api_catalog_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/catalog/entity: - get: - description: Get a list of entities from Software Catalog. - operationId: ListCatalogEntity - parameters: - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of entities in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - type: integer - - $ref: '#/components/parameters/FilterByID' - - $ref: '#/components/parameters/FilterByRef' - - $ref: '#/components/parameters/FilterByName' - - $ref: '#/components/parameters/FilterByKind' - - $ref: '#/components/parameters/FilterByOwner' - - $ref: '#/components/parameters/FilterByRelationType' - - $ref: '#/components/parameters/FilterByExcludeSnapshot' - - $ref: '#/components/parameters/Include' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListEntityCatalogResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a list of entities - tags: - - Software Catalog - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - post: - description: Create or update entities in Software Catalog. - operationId: UpsertCatalogEntity - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogEntityRequest' - description: Entity YAML or JSON. - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogEntityResponse' - description: ACCEPTED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create or update entities - tags: - - Software Catalog - x-codegen-request-body-name: body - /api/v2/catalog/entity/{entity_id}: - delete: - description: Delete a single entity in Software Catalog. - operationId: DeleteCatalogEntity - parameters: - - $ref: '#/components/parameters/EntityID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a single entity - tags: - - Software Catalog - /api/v2/catalog/kind: - get: - description: Get a list of entity kinds from Software Catalog. - operationId: ListCatalogKind - parameters: - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of kinds in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - type: integer - - $ref: '#/components/parameters/FilterByID' - - $ref: '#/components/parameters/FilterByName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListKindCatalogResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a list of entity kinds - tags: - - Software Catalog - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - post: - description: Create or update kinds in Software Catalog. - operationId: UpsertCatalogKind - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogKindRequest' - description: Kind YAML or JSON. - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/UpsertCatalogKindResponse' - description: ACCEPTED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create or update kinds - tags: - - Software Catalog - x-codegen-request-body-name: body - /api/v2/catalog/kind/{kind_id}: - delete: - description: Delete a single kind in Software Catalog. - operationId: DeleteCatalogKind - parameters: - - $ref: '#/components/parameters/KindID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a single kind - tags: - - Software Catalog - /api/v2/catalog/relation: - get: - description: Get a list of entity relations from Software Catalog. - operationId: ListCatalogRelation - parameters: - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of relations in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - type: integer - - $ref: '#/components/parameters/FilterRelationByType' - - $ref: '#/components/parameters/FilterRelationByFromRef' - - $ref: '#/components/parameters/FilterRelationByToRef' - - $ref: '#/components/parameters/RelationInclude' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListRelationCatalogResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a list of entity relations - tags: - - Software Catalog - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data -components: - schemas: - ListAPIsResponse: - description: Response for `ListAPIs`. - properties: - data: - description: List of API items. - items: - $ref: '#/components/schemas/ListAPIsResponseData' - type: array - meta: - $ref: '#/components/schemas/ListAPIsResponseMeta' - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - ApiID: - description: API identifier. - example: 90646597-5fdb-4a17-a240-647003f8c028 - format: uuid - type: string - OpenAPIFile: - description: Object for API data in an `OpenAPI` format as a file. - properties: - openapi_spec_file: - description: Binary `OpenAPI` spec file - format: binary - type: string - type: object - UpdateOpenAPIResponse: - description: Response for `UpdateOpenAPI`. - properties: - data: - $ref: '#/components/schemas/UpdateOpenAPIResponseData' - type: object - CreateOpenAPIResponse: - description: Response for `CreateOpenAPI` operation. - properties: - data: - $ref: '#/components/schemas/CreateOpenAPIResponseData' - type: object - ListEntityCatalogResponse: - description: List entity response. - properties: - data: - $ref: '#/components/schemas/EntityResponseData' - included: - $ref: '#/components/schemas/ListEntityCatalogResponseIncluded' - links: - $ref: '#/components/schemas/ListEntityCatalogResponseLinks' - meta: - $ref: '#/components/schemas/EntityResponseMeta' - type: object - UpsertCatalogEntityRequest: - description: Create or update entity request. - oneOf: - - $ref: '#/components/schemas/EntityV3' - - $ref: '#/components/schemas/EntityRaw' - UpsertCatalogEntityResponse: - description: Upsert entity response. - properties: - data: - $ref: '#/components/schemas/EntityResponseData' - included: - $ref: '#/components/schemas/UpsertCatalogEntityResponseIncluded' - meta: - $ref: '#/components/schemas/EntityResponseMeta' - type: object - ListKindCatalogResponse: - description: List kind response. - properties: - data: - $ref: '#/components/schemas/KindResponseData' - meta: - $ref: '#/components/schemas/KindResponseMeta' - type: object - UpsertCatalogKindRequest: - description: Create or update kind request. - oneOf: - - $ref: '#/components/schemas/KindObj' - - $ref: '#/components/schemas/KindRaw' - UpsertCatalogKindResponse: - description: Upsert kind response. - properties: - data: - $ref: '#/components/schemas/KindResponseData' - meta: - $ref: '#/components/schemas/KindResponseMeta' - type: object - ListRelationCatalogResponse: - description: List entity relation response. - properties: - data: - $ref: '#/components/schemas/RelationResponseData' - included: - $ref: '#/components/schemas/ListRelationCatalogResponseIncluded' - links: - $ref: '#/components/schemas/ListRelationCatalogResponseLinks' - meta: - $ref: '#/components/schemas/RelationResponseMeta' - type: object - ListAPIsResponseData: - description: Data envelope for `ListAPIsResponse`. - properties: - attributes: - $ref: '#/components/schemas/ListAPIsResponseDataAttributes' - id: - $ref: '#/components/schemas/ApiID' - type: object - ListAPIsResponseMeta: - description: Metadata for `ListAPIsResponse`. - properties: - pagination: - $ref: '#/components/schemas/ListAPIsResponseMetaPagination' - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - UpdateOpenAPIResponseData: - description: Data envelope for `UpdateOpenAPIResponse`. - properties: - attributes: - $ref: '#/components/schemas/UpdateOpenAPIResponseAttributes' - id: - $ref: '#/components/schemas/ApiID' - type: object - CreateOpenAPIResponseData: - description: Data envelope for `CreateOpenAPIResponse`. - properties: - attributes: - $ref: '#/components/schemas/CreateOpenAPIResponseAttributes' - id: - $ref: '#/components/schemas/ApiID' - type: object - RelationType: - description: Supported relation types. - enum: - - RelationTypeOwns - - RelationTypeOwnedBy - - RelationTypeDependsOn - - RelationTypeDependencyOf - - RelationTypePartsOf - - RelationTypeHasPart - - RelationTypeOtherOwns - - RelationTypeOtherOwnedBy - - RelationTypeImplementedBy - - RelationTypeImplements - type: string - x-enum-varnames: - - RELATIONTYPEOWNS - - RELATIONTYPEOWNEDBY - - RELATIONTYPEDEPENDSON - - RELATIONTYPEDEPENDENCYOF - - RELATIONTYPEPARTSOF - - RELATIONTYPEHASPART - - RELATIONTYPEOTHEROWNS - - RELATIONTYPEOTHEROWNEDBY - - RELATIONTYPEIMPLEMENTEDBY - - RELATIONTYPEIMPLEMENTS - IncludeType: - description: Supported include types. - enum: - - schema - - raw_schema - - oncall - - incident - - relation - type: string - x-enum-varnames: - - SCHEMA - - RAW_SCHEMA - - ONCALL - - INCIDENT - - RELATION - EntityResponseData: - description: List of entity data. - items: - $ref: '#/components/schemas/EntityData' - type: array - ListEntityCatalogResponseIncluded: - description: List entity response included. - items: - $ref: '#/components/schemas/ListEntityCatalogResponseIncludedItem' - type: array - ListEntityCatalogResponseLinks: - description: List entity response links. - properties: - next: - description: Next link. - type: string - previous: - description: Previous link. - type: string - self: - description: Current link. - type: string - type: object - EntityResponseMeta: - description: Entity metadata. - properties: - count: - description: Total entities count. - format: int64 - type: integer - includeCount: - description: Total included data count. - format: int64 - type: integer - type: object - EntityV3: - description: Entity schema v3. - oneOf: - - $ref: '#/components/schemas/EntityV3Service' - - $ref: '#/components/schemas/EntityV3Datastore' - - $ref: '#/components/schemas/EntityV3Queue' - - $ref: '#/components/schemas/EntityV3System' - - $ref: '#/components/schemas/EntityV3API' - EntityRaw: - description: Entity definition in raw JSON or YAML representation. - example: | - apiVersion: v3 - kind: service - metadata: - name: myservice - type: string - UpsertCatalogEntityResponseIncluded: - description: Upsert entity response included. - items: - $ref: '#/components/schemas/UpsertCatalogEntityResponseIncludedItem' - type: array - KindResponseData: - description: List of kind responses. - items: - $ref: '#/components/schemas/KindData' - type: array - KindResponseMeta: - description: Kind response metadata. - properties: - count: - description: Total kinds count. - format: int64 - type: integer - type: object - KindObj: - description: Schema for kind. - properties: - description: - description: Short description of the kind. - type: string - displayName: - description: >- - The display name of the kind. Automatically generated if not - provided. - type: string - kind: - description: >- - The name of the kind to create or update. This must be in kebab-case - format. - example: my-job - type: string - required: - - kind - type: object - KindRaw: - description: Kind definition in raw JSON or YAML representation. - example: | - kind: service - displayName: Service - description: A service entity in the catalog. - type: string - RelationIncludeType: - description: Supported include types for relations. - enum: - - entity - - schema - type: string - x-enum-varnames: - - ENTITY - - SCHEMA - RelationResponseData: - description: Array of relation responses - items: - $ref: '#/components/schemas/RelationResponse' - type: array - ListRelationCatalogResponseIncluded: - description: List relation response included entities. - items: - $ref: '#/components/schemas/EntityData' - type: array - ListRelationCatalogResponseLinks: - description: List relation response links. - properties: - next: - description: Next link. - example: >- - /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=2 - type: string - previous: - description: Previous link. - type: string - self: - description: Current link. - example: >- - /api/v2/catalog/relation?filter[from_ref]=service:service-catalog&include=entity&page[limit]=2&page[offset]=0 - type: string - type: object - RelationResponseMeta: - description: Relation response metadata. - properties: - count: - description: Total relations count. - format: int64 - type: integer - includeCount: - description: Total included data count. - format: int64 - type: integer - type: object - ListAPIsResponseDataAttributes: - description: Attributes for `ListAPIsResponseData`. - properties: - name: - description: API name. - example: Payments API - type: string - type: object - ListAPIsResponseMetaPagination: - description: Pagination metadata information for `ListAPIsResponse`. - properties: - limit: - description: Number of items in the current page. - example: 20 - format: int64 - type: integer - offset: - description: Offset for pagination. - example: 0 - format: int64 - type: integer - total_count: - description: Total number of items. - example: 35 - format: int64 - type: integer - type: object - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - UpdateOpenAPIResponseAttributes: - description: Attributes for `UpdateOpenAPI`. - properties: - failed_endpoints: - description: List of endpoints which couldn't be parsed. - items: - $ref: '#/components/schemas/OpenAPIEndpoint' - type: array - type: object - CreateOpenAPIResponseAttributes: - description: Attributes for `CreateOpenAPI`. - properties: - failed_endpoints: - description: List of endpoints which couldn't be parsed. - items: - $ref: '#/components/schemas/OpenAPIEndpoint' - type: array - type: object - EntityData: - description: Entity data. - properties: - attributes: - $ref: '#/components/schemas/EntityAttributes' - id: - description: Entity ID. - type: string - meta: - $ref: '#/components/schemas/EntityMeta' - relationships: - $ref: '#/components/schemas/EntityRelationships' - type: - description: Entity. - type: string - type: object - ListEntityCatalogResponseIncludedItem: - description: List entity response included item. - oneOf: - - $ref: '#/components/schemas/EntityResponseIncludedSchema' - - $ref: '#/components/schemas/EntityResponseIncludedRawSchema' - - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntity' - - $ref: '#/components/schemas/EntityResponseIncludedOncall' - - $ref: '#/components/schemas/EntityResponseIncludedIncident' - EntityV3Service: - additionalProperties: false - description: Schema for service entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3ServiceDatadog' - extensions: - additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3ServiceKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3ServiceSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3Datastore: - additionalProperties: false - description: Schema for datastore entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3DatastoreDatadog' - extensions: - additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3DatastoreKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3DatastoreSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3Queue: - additionalProperties: false - description: Schema for queue entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3QueueDatadog' - extensions: - additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3QueueKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3QueueSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3System: - additionalProperties: false - description: Schema for system entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3SystemDatadog' - extensions: - additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3SystemKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3SystemSpec' - required: - - apiVersion - - kind - - metadata - type: object - EntityV3API: - additionalProperties: false - description: Schema for API entities. - properties: - apiVersion: - $ref: '#/components/schemas/EntityV3APIVersion' - datadog: - $ref: '#/components/schemas/EntityV3APIDatadog' - extensions: - additionalProperties: {} - description: >- - Custom extensions. This is the free-formed field to send client-side - metadata. No Datadog features are affected by this field. - type: object - integrations: - $ref: '#/components/schemas/EntityV3Integrations' - kind: - $ref: '#/components/schemas/EntityV3APIKind' - metadata: - $ref: '#/components/schemas/EntityV3Metadata' - spec: - $ref: '#/components/schemas/EntityV3APISpec' - required: - - apiVersion - - kind - - metadata - type: object - UpsertCatalogEntityResponseIncludedItem: - description: Upsert entity response included item. - oneOf: - - $ref: '#/components/schemas/EntityResponseIncludedSchema' - KindData: - description: >- - Schema that defines the structure of a Kind object in the Software - Catalog. - properties: - attributes: - $ref: '#/components/schemas/KindAttributes' - id: - description: >- - A read-only globally unique identifier for the entity generated by - Datadog. User supplied values are ignored. - example: 4b163705-23c0-4573-b2fb-f6cea2163fcb - minLength: 1 - type: string - meta: - $ref: '#/components/schemas/KindMetadata' - type: - description: Kind. - type: string - type: object - RelationResponse: - description: Relation response data. - properties: - attributes: - $ref: '#/components/schemas/RelationAttributes' - id: - description: Relation ID. - type: string - meta: - $ref: '#/components/schemas/RelationMeta' - relationships: - $ref: '#/components/schemas/RelationRelationships' - subtype: - description: Relation subtype. - type: string - type: - $ref: '#/components/schemas/RelationResponseType' - type: object - OpenAPIEndpoint: - description: Endpoint info extracted from an `OpenAPI` specification. - properties: - method: - description: The endpoint method. - type: string - path: - description: The endpoint path. - type: string - type: object - EntityAttributes: - description: Entity attributes. - properties: - apiVersion: - description: The API version. - type: string - description: - description: The description. - type: string - displayName: - description: The display name. - type: string - kind: - description: The kind. - type: string - name: - description: The name. - type: string - namespace: - description: The namespace. - type: string - owner: - description: The owner. - type: string - tags: - description: The tags. - items: - type: string - type: array - type: object - EntityMeta: - description: Entity metadata. - properties: - createdAt: - description: The creation time. - type: string - ingestionSource: - description: The ingestion source. - type: string - modifiedAt: - description: The modification time. - type: string - origin: - description: The origin. - type: string - type: object - EntityRelationships: - description: Entity relationships. - properties: - incidents: - $ref: '#/components/schemas/EntityToIncidents' - oncall: - $ref: '#/components/schemas/EntityToOncalls' - rawSchema: - $ref: '#/components/schemas/EntityToRawSchema' - relatedEntities: - $ref: '#/components/schemas/EntityToRelatedEntities' - schema: - $ref: '#/components/schemas/EntityToSchema' - type: object - EntityResponseIncludedSchema: - description: Included detail entity schema. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedSchemaAttributes' - id: - description: Entity ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedSchemaType' - type: object - EntityResponseIncludedRawSchema: - description: Included raw schema. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRawSchemaAttributes' - id: - description: Raw schema ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedRawSchemaType' - type: object - EntityResponseIncludedRelatedEntity: - description: Included related entity. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityAttributes' - id: - description: Entity UUID. - type: string - meta: - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityMeta' - type: - $ref: '#/components/schemas/EntityResponseIncludedRelatedEntityType' - type: object - EntityResponseIncludedOncall: - description: Included oncall. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRelatedOncallAttributes' - id: - description: Oncall ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedOncallType' - type: object - EntityResponseIncludedIncident: - description: Included incident. - properties: - attributes: - $ref: '#/components/schemas/EntityResponseIncludedRelatedIncidentAttributes' - id: - description: Incident ID. - type: string - type: - $ref: '#/components/schemas/EntityResponseIncludedIncidentType' - type: object - EntityV3APIVersion: - description: >- - The version of the schema data that was used to populate this entity's - data. This could be via the API, Terraform, or YAML file in a - repository. The field is known as schema-version in the previous - version. - enum: - - v3 - - v2.2 - - v2.1 - - v2 - example: v3 - type: string - x-enum-varnames: - - V3 - - V2_2 - - V2_1 - - V2 - EntityV3ServiceDatadog: - additionalProperties: false - description: Datadog product integrations for the service entity. - properties: - codeLocations: - $ref: '#/components/schemas/EntityV3DatadogCodeLocations' - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - pipelines: - $ref: '#/components/schemas/EntityV3DatadogPipelines' - type: object - EntityV3Integrations: - additionalProperties: false - description: A base schema for defining third-party integrations. - properties: - opsgenie: - $ref: '#/components/schemas/EntityV3DatadogIntegrationOpsgenie' - pagerduty: - $ref: '#/components/schemas/EntityV3DatadogIntegrationPagerduty' - type: object - EntityV3ServiceKind: - description: The definition of Entity V3 Service Kind object. - enum: - - service - example: service - type: string - x-enum-varnames: - - SERVICE - EntityV3Metadata: - additionalProperties: false - description: The definition of Entity V3 Metadata object. - properties: - additionalOwners: - additionalProperties: false - description: The additional owners of the entity, usually a team. - items: - $ref: '#/components/schemas/EntityV3MetadataAdditionalOwnersItems' - type: array - contacts: - additionalProperties: false - description: A list of contacts for the entity. - items: - $ref: '#/components/schemas/EntityV3MetadataContactsItems' - type: array - description: - description: >- - Short description of the entity. The UI can leverage the description - for display. - type: string - displayName: - description: >- - User friendly name of the entity. The UI can leverage the display - name for display. - type: string - id: - description: >- - A read-only globally unique identifier for the entity generated by - Datadog. User supplied values are ignored. - example: 4b163705-23c0-4573-b2fb-f6cea2163fcb - minLength: 1 - type: string - inheritFrom: - description: The entity reference from which to inherit metadata - example: application:default/myapp - type: string - links: - additionalProperties: false - description: A list of links for the entity. - items: - $ref: '#/components/schemas/EntityV3MetadataLinksItems' - type: array - managed: - additionalProperties: {} - description: >- - A read-only set of Datadog managed attributes generated by Datadog. - User supplied values are ignored. - type: object - name: - description: Unique name given to an entity under the kind/namespace. - example: myService - minLength: 1 - type: string - namespace: - description: >- - Namespace is a part of unique identifier. It has a default value of - 'default'. - example: default - minLength: 1 - type: string - owner: - description: The owner of the entity, usually a team. - type: string - tags: - description: A set of custom tags. - example: - - this:tag - - that:tag - items: - type: string - type: array - required: - - name - type: object - EntityV3ServiceSpec: - additionalProperties: false - description: The definition of Entity V3 Service Spec object. - properties: - componentOf: - description: A list of components the service is a part of - items: - type: string - type: array - dependsOn: - description: A list of components the service depends on. - items: - type: string - type: array - languages: - description: The service's programming language. - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the component. - minLength: 1 - type: string - tier: - description: The importance of the component. - minLength: 1 - type: string - type: - description: The type of service. - type: string - type: object - EntityV3DatastoreDatadog: - additionalProperties: false - description: Datadog product integrations for the datastore entity. - properties: - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - type: object - EntityV3DatastoreKind: - description: The definition of Entity V3 Datastore Kind object. - enum: - - datastore - example: datastore - type: string - x-enum-varnames: - - DATASTORE - EntityV3DatastoreSpec: - additionalProperties: false - description: The definition of Entity V3 Datastore Spec object. - properties: - componentOf: - description: A list of components the datastore is a part of - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the datastore. - minLength: 1 - type: string - tier: - description: The importance of the datastore. - minLength: 1 - type: string - type: - description: The type of datastore. - type: string - type: object - EntityV3QueueDatadog: - additionalProperties: false - description: Datadog product integrations for the datastore entity. - properties: - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - type: object - EntityV3QueueKind: - description: The definition of Entity V3 Queue Kind object. - enum: - - queue - example: queue - type: string - x-enum-varnames: - - QUEUE - EntityV3QueueSpec: - additionalProperties: false - description: The definition of Entity V3 Queue Spec object. - properties: - componentOf: - description: A list of components the queue is a part of - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the queue. - minLength: 1 - type: string - tier: - description: The importance of the queue. - minLength: 1 - type: string - type: - description: The type of queue. - type: string - type: object - EntityV3SystemDatadog: - additionalProperties: false - description: Datadog product integrations for the service entity. - properties: - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - pipelines: - $ref: '#/components/schemas/EntityV3DatadogPipelines' - type: object - EntityV3SystemKind: - description: The definition of Entity V3 System Kind object. - enum: - - system - example: system - type: string - x-enum-varnames: - - SYSTEM - EntityV3SystemSpec: - additionalProperties: false - description: The definition of Entity V3 System Spec object. - properties: - components: - description: A list of components belongs to the system. - items: - type: string - type: array - lifecycle: - description: The lifecycle state of the component. - minLength: 1 - type: string - tier: - description: An entity reference to the owner of the component. - minLength: 1 - type: string - type: object - EntityV3APIDatadog: - additionalProperties: false - description: Datadog product integrations for the API entity. - properties: - codeLocations: - $ref: '#/components/schemas/EntityV3DatadogCodeLocations' - events: - $ref: '#/components/schemas/EntityV3DatadogEvents' - logs: - $ref: '#/components/schemas/EntityV3DatadogLogs' - performanceData: - $ref: '#/components/schemas/EntityV3DatadogPerformance' - pipelines: - $ref: '#/components/schemas/EntityV3DatadogPipelines' - type: object - EntityV3APIKind: - description: The definition of Entity V3 API Kind object. - enum: - - api - example: api - type: string - x-enum-varnames: - - API - EntityV3APISpec: - additionalProperties: false - description: The definition of Entity V3 API Spec object. - properties: - implementedBy: - description: Services which implemented the API. - items: - type: string - type: array - interface: - $ref: '#/components/schemas/EntityV3APISpecInterface' - lifecycle: - description: The lifecycle state of the component. - minLength: 1 - type: string - tier: - description: The importance of the component. - minLength: 1 - type: string - type: - description: The type of API. - type: string - type: object - KindAttributes: - description: Kind attributes. - properties: - description: - description: Short description of the kind. - type: string - displayName: - description: User friendly name of the kind. - type: string - name: - description: The kind name. - example: my-job - minLength: 1 - type: string - type: object - KindMetadata: - description: Kind metadata. - properties: - createdAt: - description: The creation time. - type: string - modifiedAt: - description: The modification time. - type: string - type: object - RelationAttributes: - description: Relation attributes. - properties: - from: - $ref: '#/components/schemas/RelationEntity' - to: - $ref: '#/components/schemas/RelationEntity' - type: - $ref: '#/components/schemas/RelationType' - type: object - RelationMeta: - description: Relation metadata. - properties: - createdAt: - description: Relation creation time. - format: date-time - type: string - definedBy: - description: Relation defined by. - type: string - modifiedAt: - description: Relation modification time. - format: date-time - type: string - source: - description: Relation source. - type: string - type: object - RelationRelationships: - description: Relation relationships. - properties: - fromEntity: - $ref: '#/components/schemas/RelationToEntity' - toEntity: - $ref: '#/components/schemas/RelationToEntity' - type: object - RelationResponseType: - description: Relation type. - enum: - - relation - type: string - x-enum-varnames: - - RELATION - EntityToIncidents: - description: Entity to incidents relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipArray' - type: object - EntityToOncalls: - description: Entity to oncalls relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipArray' - type: object - EntityToRawSchema: - description: Entity to raw schema relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipItem' - type: object - EntityToRelatedEntities: - description: Entity to related entities relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipArray' - type: object - EntityToSchema: - description: Entity to detail schema relationship. - properties: - data: - $ref: '#/components/schemas/RelationshipItem' - type: object - EntityResponseIncludedSchemaAttributes: - description: Included schema. - properties: - schema: - $ref: '#/components/schemas/EntityV3' - type: object - EntityResponseIncludedSchemaType: - description: Schema type. - enum: - - schema - type: string - x-enum-varnames: - - SCHEMA - EntityResponseIncludedRawSchemaAttributes: - description: Included raw schema attributes. - properties: - rawSchema: - description: Schema from user input in base64 encoding. - type: string - type: object - EntityResponseIncludedRawSchemaType: - description: Raw schema type. - enum: - - rawSchema - type: string - x-enum-varnames: - - RAW_SCHEMA - EntityResponseIncludedRelatedEntityAttributes: - description: Related entity attributes. - properties: - kind: - description: Entity kind. - type: string - name: - description: Entity name. - type: string - namespace: - description: Entity namespace. - type: string - type: - description: Entity relation type to the associated entity. - type: string - type: object - EntityResponseIncludedRelatedEntityMeta: - description: Included related entity meta. - properties: - createdAt: - description: Entity creation time. - format: date-time - type: string - defined_by: - description: Entity relation defined by. - type: string - modifiedAt: - description: Entity modification time. - format: date-time - type: string - source: - description: Entity relation source. - type: string - type: object - EntityResponseIncludedRelatedEntityType: - description: Related entity. - enum: - - relatedEntity - type: string - x-enum-varnames: - - RELATED_ENTITY - EntityResponseIncludedRelatedOncallAttributes: - description: Included related oncall attributes. - properties: - escalations: - $ref: '#/components/schemas/EntityResponseIncludedRelatedOncallEscalations' - provider: - description: Oncall provider. - type: string - type: object - EntityResponseIncludedOncallType: - description: Oncall type. - enum: - - oncall - type: string - x-enum-varnames: - - ONCALL - EntityResponseIncludedRelatedIncidentAttributes: - description: Incident attributes. - properties: - createdAt: - description: Incident creation time. - format: date-time - type: string - htmlURL: - description: Incident URL. - type: string - provider: - description: Incident provider. - type: string - status: - description: Incident status. - type: string - title: - description: Incident title. - type: string - type: object - EntityResponseIncludedIncidentType: - description: Incident description. - enum: - - incident - type: string - x-enum-varnames: - - INCIDENT - EntityV3DatadogCodeLocations: - additionalProperties: false - description: Schema for mapping source code locations to an entity. - items: - $ref: '#/components/schemas/EntityV3DatadogCodeLocationItem' - type: array - EntityV3DatadogEvents: - additionalProperties: false - description: Events associations. - items: - $ref: '#/components/schemas/EntityV3DatadogEventItem' - type: array - EntityV3DatadogLogs: - additionalProperties: false - description: Logs association. - items: - $ref: '#/components/schemas/EntityV3DatadogLogItem' - type: array - EntityV3DatadogPerformance: - additionalProperties: false - description: Performance stats association. - properties: - tags: - description: >- - A list of APM entity tags that associates the APM Stats data with - the entity. - items: - type: string - type: array - type: object - EntityV3DatadogPipelines: - additionalProperties: false - description: CI Pipelines association. - properties: - fingerprints: - description: >- - A list of CI Fingerprints that associate CI Pipelines with the - entity. - items: - type: string - type: array - type: object - EntityV3DatadogIntegrationOpsgenie: - additionalProperties: false - description: An Opsgenie integration schema. - properties: - region: - description: The region for the Opsgenie integration. - minLength: 1 - type: string - serviceURL: - description: The service URL for the Opsgenie integration. - example: https://www.opsgenie.com/service/shopping-cart - minLength: 1 - type: string - required: - - serviceURL - type: object - EntityV3DatadogIntegrationPagerduty: - additionalProperties: false - description: A PagerDuty integration schema. - properties: - serviceURL: - description: The service URL for the PagerDuty integration. - example: https://www.pagerduty.com/service-directory/Pshopping-cart - minLength: 1 - type: string - required: - - serviceURL - type: object - EntityV3MetadataAdditionalOwnersItems: - description: The definition of Entity V3 Metadata Additional Owners Items object. - properties: - name: - description: Team name. - example: '' - type: string - type: - description: Team type. - type: string - required: - - name - type: object - EntityV3MetadataContactsItems: - additionalProperties: false - description: The definition of Entity V3 Metadata Contacts Items object. - properties: - contact: - description: Contact value. - example: https://slack/ - type: string - name: - description: Contact name. - minLength: 2 - type: string - type: - description: Contact type. - example: slack - type: string - required: - - type - - contact - type: object - EntityV3MetadataLinksItems: - additionalProperties: false - description: The definition of Entity V3 Metadata Links Items object. - properties: - name: - description: Link name. - example: mylink - type: string - provider: - description: Link provider. - type: string - type: - default: other - description: Link type. - example: link - type: string - url: - description: Link URL. - example: https://mylink - type: string - required: - - name - - type - - url - type: object - EntityV3APISpecInterface: - additionalProperties: false - description: The API definition. - oneOf: - - $ref: '#/components/schemas/EntityV3APISpecInterfaceFileRef' - - $ref: '#/components/schemas/EntityV3APISpecInterfaceDefinition' - RelationEntity: - description: Relation entity reference. - properties: - kind: - description: Entity kind. - type: string - name: - description: Entity name. - type: string - namespace: - description: Entity namespace. - type: string - type: object - RelationToEntity: - description: Relation to entity. - properties: - data: - $ref: '#/components/schemas/RelationshipItem' - meta: - $ref: '#/components/schemas/EntityMeta' - type: object - RelationshipArray: - description: Relationships. - items: - $ref: '#/components/schemas/RelationshipItem' - type: array - RelationshipItem: - description: Relationship entry. - properties: - id: - description: Associated data ID. - type: string - type: - description: Relationship type. - type: string - type: object - EntityResponseIncludedRelatedOncallEscalations: - description: Oncall escalations. - items: - $ref: '#/components/schemas/EntityResponseIncludedRelatedOncallEscalationItem' - type: array - EntityV3DatadogCodeLocationItem: - additionalProperties: false - description: Code location item. - properties: - paths: - description: The paths (glob) to the source code of the service. - items: - type: string - type: array - repositoryURL: - description: The repository path of the source code of the entity. - type: string - type: object - EntityV3DatadogEventItem: - additionalProperties: false - description: Events association item. - properties: - name: - description: The name of the query. - type: string - query: - description: The query to run. - type: string - type: object - EntityV3DatadogLogItem: - additionalProperties: false - description: Log association item. - properties: - name: - description: The name of the query. - type: string - query: - description: The query to run. - type: string - type: object - EntityV3APISpecInterfaceFileRef: - additionalProperties: false - description: The definition of `EntityV3APISpecInterfaceFileRef` object. - properties: - fileRef: - description: The reference to the API definition file. - type: string - type: object - EntityV3APISpecInterfaceDefinition: - additionalProperties: false - description: The definition of `EntityV3APISpecInterfaceDefinition` object. - properties: - definition: - description: The API definition. - type: object - type: object - EntityResponseIncludedRelatedOncallEscalationItem: - description: Oncall escalation. - properties: - email: - description: Oncall email. - type: string - escalationLevel: - description: Oncall level. - format: int64 - type: integer - name: - description: Oncall name. - type: string - type: object - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - parameters: - PageOffset: - description: Specific offset to use as the beginning of the returned page. - in: query - name: page[offset] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - FilterByID: - description: Filter entities by UUID. - explode: true - in: query - name: filter[id] - required: false - schema: - type: string - FilterByRef: - description: Filter entities by reference - example: service:shopping-cart - explode: true - in: query - name: filter[ref] - required: false - schema: - type: string - FilterByName: - description: Filter entities by name. - explode: true - in: query - name: filter[name] - required: false - schema: - type: string - FilterByKind: - description: Filter entities by kind. - explode: true - in: query - name: filter[kind] - required: false - schema: - type: string - FilterByOwner: - description: Filter entities by owner. - explode: true - in: query - name: filter[owner] - required: false - schema: - type: string - FilterByRelationType: - description: Filter entities by relation type. - explode: true - in: query - name: filter[relation][type] - required: false - schema: - $ref: '#/components/schemas/RelationType' - FilterByExcludeSnapshot: - description: Filter entities by excluding snapshotted entities. - in: query - name: filter[exclude_snapshot] - required: false - schema: - type: string - Include: - description: Include relationship data. - explode: true - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncludeType' - EntityID: - description: UUID or Entity Ref. - in: path - name: entity_id - required: true - schema: - example: service:myservice - type: string - KindID: - description: Entity kind. - in: path - name: kind_id - required: true - schema: - example: my-job - type: string - FilterRelationByType: - description: Filter relations by type. - explode: true - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/RelationType' - FilterRelationByFromRef: - description: Filter relations by the reference of the first entity in the relation. - example: service:shopping-cart - explode: true - in: query - name: filter[from_ref] - required: false - schema: - type: string - FilterRelationByToRef: - description: Filter relations by the reference of the second entity in the relation. - example: service:shopping-cart - explode: true - in: query - name: filter[to_ref] - required: false - schema: - type: string - RelationInclude: - description: Include relationship data. - explode: true - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/RelationIncludeType' -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/cloud_costs.yaml b/provider-dev/source/cloud_costs.yaml deleted file mode 100644 index f0aeac9..0000000 --- a/provider-dev/source/cloud_costs.yaml +++ /dev/null @@ -1,2278 +0,0 @@ -openapi: 3.0.0 -info: - title: cloud_costs API - description: datadog cloud_costs API - version: '1.0' -paths: - /api/v2/cost/aws_cur_config: - get: - description: List the AWS CUR configs. - operationId: ListCostAWSCURConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management AWS CUR configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an AWS CUR config. - operationId: CreateCostAWSCURConfig - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigPostRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management AWS CUR config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/aws_cur_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management Account. - operationId: DeleteCostAWSCURConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management AWS CUR config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: >- - Update the status (active/archived) and/or account filtering - configuration of an AWS CUR config. - operationId: UpdateCostAWSCURConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigPatchRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsCURConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management AWS CUR config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/azure_uc_config: - get: - description: List the Azure configs. - operationId: ListCostAzureUCConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management Azure configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an Azure config. - operationId: CreateCostAzureUCConfigs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPostRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPairsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management Azure configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/azure_uc_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management Account. - operationId: DeleteCostAzureUCConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management Azure config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: Update the status of an Azure config (active/archived). - operationId: UpdateCostAzureUCConfigs - parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPatchRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AzureUCConfigPairsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management Azure config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/budget: - put: - description: Create a new budget or update an existing one. - operationId: UpsertBudget - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetWithEntries' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetWithEntries' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create or update a budget - tags: - - Cloud Cost Management - /api/v2/cost/budget/{budget_id}: - delete: - description: Delete a budget. - operationId: DeleteBudget - parameters: - - $ref: '#/components/parameters/BudgetID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete a budget - tags: - - Cloud Cost Management - get: - description: Get a budget. - operationId: GetBudget - parameters: - - $ref: '#/components/parameters/BudgetID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetWithEntries' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: Get a budget - tags: - - Cloud Cost Management - /api/v2/cost/budgets: - get: - description: List budgets. - operationId: ListBudgets - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BudgetArray' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List budgets - tags: - - Cloud Cost Management - /api/v2/cost/custom_costs: - get: - description: List the Custom Costs files. - operationId: ListCustomCostsFiles - parameters: - - description: Page number for pagination - in: query - name: page[number] - schema: - format: int64 - type: integer - - description: Page size for pagination - in: query - name: page[size] - schema: - default: 100 - format: int64 - type: integer - - description: Filter by file status - in: query - name: filter[status] - schema: - type: string - - description: Sort key with optional descending prefix - in: query - name: sort - schema: - default: created_at - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileListResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Custom Costs files - tags: - - Cloud Cost Management - put: - description: Upload a Custom Costs file. - operationId: UploadCustomCostsFile - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileUploadRequest' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileUploadResponse' - description: Accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Upload Custom Costs file - tags: - - Cloud Cost Management - /api/v2/cost/custom_costs/{file_id}: - delete: - description: Delete the specified Custom Costs file. - operationId: DeleteCustomCostsFile - parameters: - - $ref: '#/components/parameters/FileID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Custom Costs file - tags: - - Cloud Cost Management - get: - description: Fetch the specified Custom Costs file. - operationId: GetCustomCostsFile - parameters: - - $ref: '#/components/parameters/FileID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomCostsFileGetResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: Get Custom Costs file - tags: - - Cloud Cost Management - /api/v2/cost/gcp_uc_config: - get: - description: List the GCP Usage Cost configs. - operationId: ListCostGCPUsageCostConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_read - summary: List Cloud Cost Management GCP Usage Cost configs - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_read - post: - description: Create a Cloud Cost Management account for an GCP Usage Cost config. - operationId: CreateCostGCPUsageCostConfig - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Create Cloud Cost Management GCP Usage Cost config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost/gcp_uc_config/{cloud_account_id}: - delete: - description: Archive a Cloud Cost Management account. - operationId: DeleteCostGCPUsageCostConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - responses: - '204': - description: No Content - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Delete Cloud Cost Management GCP Usage Cost config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - patch: - description: Update the status of an GCP Usage Cost config (active/archived). - operationId: UpdateCostGCPUsageCostConfig - parameters: - - $ref: '#/components/parameters/CloudAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPUsageCostConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cloud_cost_management_write - summary: Update Cloud Cost Management GCP Usage Cost config - tags: - - Cloud Cost Management - x-permission: - operator: OR - permissions: - - cloud_cost_management_write - /api/v2/cost_by_tag/active_billing_dimensions: - get: - description: >- - Get active billing dimensions for cost attribution. Cost data for a - given month becomes available no later than the 19th of the following - month. - operationId: GetActiveBillingDimensions - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/ActiveBillingDimensionsResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get active billing dimensions for cost attribution - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/cost_by_tag/monthly_cost_attribution: - get: - description: >- - Get monthly cost attribution by tag across multi-org and single root-org - accounts. - - Cost Attribution data for a given month becomes available no later than - the 19th of the following month. - - This API endpoint is paginated. To make sure you receive all records, - check if the value of `next_record_id` is - - set in the response. If it is, make another request and pass - `next_record_id` as a parameter. - - Pseudo code example: - - ``` - - response := GetMonthlyCostAttribution(start_month, end_month) - - cursor := response.metadata.pagination.next_record_id - - WHILE cursor != null BEGIN - sleep(5 seconds) # Avoid running into rate limit - response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor) - cursor := response.metadata.pagination.next_record_id - END - - ``` - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - This endpoint is not available in the Government (US1-FED) site. - operationId: GetMonthlyCostAttribution - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning in this month. - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: >- - Comma-separated list specifying cost types (e.g., - `_on_demand_cost`, - `_committed_cost`, - `_total_cost`) and the - - proportions (`_percentage_in_org`, - `_percentage_in_account`). Use `*` to retrieve - all fields. - - Example: - `infra_host_on_demand_cost,infra_host_percentage_in_account` - - To obtain the complete list of active billing dimensions that can be - used to replace - - `` in the field names, make a request to the [Get - active billing dimensions - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution). - in: query - name: fields - required: true - schema: - type: string - - description: 'The direction to sort by: `[desc, asc]`.' - in: query - name: sort_direction - required: false - schema: - $ref: '#/components/schemas/SortDirection' - - description: >- - The billing dimension to sort by. Always sorted by total cost. - Example: `infra_host`. - in: query - name: sort_name - required: false - schema: - type: string - - description: >- - Comma separated list of tag keys used to group cost. If no value is - provided the cost will not be broken down by tags. - - To see which tags are available, look for the value of - `tag_config_source` in the API response. - in: query - name: tag_breakdown_keys - required: false - schema: - type: string - - description: >- - List following results with a next_record_id provided in the - previous query. - in: query - name: next_record_id - required: false - schema: - type: string - - description: Include child org cost in the response. Defaults to `true`. - in: query - name: include_descendants - required: false - schema: - default: true - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/MonthlyCostAttributionResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get Monthly Cost Attribution - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read -components: - schemas: - AwsCURConfigsResponse: - description: List of AWS CUR configs. - properties: - data: - description: An AWS CUR config. - items: - $ref: '#/components/schemas/AwsCURConfig' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - AwsCURConfigPostRequest: - description: AWS CUR config Post Request. - properties: - data: - $ref: '#/components/schemas/AwsCURConfigPostData' - required: - - data - type: object - AwsCURConfigResponse: - description: Response of AWS CUR config. - properties: - data: - $ref: '#/components/schemas/AwsCURConfig' - type: object - AwsCURConfigPatchRequest: - description: AWS CUR config Patch Request. - properties: - data: - $ref: '#/components/schemas/AwsCURConfigPatchData' - required: - - data - type: object - AzureUCConfigsResponse: - description: List of Azure accounts with configs. - properties: - data: - description: An Azure config pair. - items: - $ref: '#/components/schemas/AzureUCConfigPair' - type: array - type: object - AzureUCConfigPostRequest: - description: Azure config Post Request. - properties: - data: - $ref: '#/components/schemas/AzureUCConfigPostData' - required: - - data - type: object - AzureUCConfigPairsResponse: - description: Response of Azure config pair. - properties: - data: - $ref: '#/components/schemas/AzureUCConfigPair' - type: object - AzureUCConfigPatchRequest: - description: Azure config Patch Request. - properties: - data: - $ref: '#/components/schemas/AzureUCConfigPatchData' - required: - - data - type: object - BudgetWithEntries: - description: The definition of the `BudgetWithEntries` object. - properties: - data: - $ref: '#/components/schemas/BudgetWithEntriesData' - type: object - BudgetArray: - description: An array of budgets. - example: - data: - - attributes: - created_at: 1741011342772 - created_by: user1 - end_month: 202502 - metrics_query: aws.cost.amortized{service:ec2} by {service} - name: my budget - org_id: 123 - start_month: 202501 - total_amount: 1000 - updated_at: 1741011342772 - updated_by: user2 - id: 00000000-0a0a-0a0a-aaa0-00000000000a - type: budget - properties: - data: - description: The `BudgetArray` `data`. - items: - $ref: '#/components/schemas/Budget' - type: array - type: object - CustomCostsFileListResponse: - description: Response for List Custom Costs files. - properties: - data: - description: List of Custom Costs files. - items: - $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' - type: array - meta: - $ref: '#/components/schemas/CustomCostListResponseMeta' - type: object - CustomCostsFileUploadRequest: - description: Request for uploading a Custom Costs file. - items: - $ref: '#/components/schemas/CustomCostsFileLineItem' - type: array - CustomCostsFileUploadResponse: - description: Response for Uploaded Custom Costs files. - properties: - data: - $ref: '#/components/schemas/CustomCostsFileMetadataHighLevel' - meta: - $ref: '#/components/schemas/CustomCostUploadResponseMeta' - type: object - CustomCostsFileGetResponse: - description: Response for Get Custom Costs files. - properties: - data: - $ref: '#/components/schemas/CustomCostsFileMetadataWithContentHighLevel' - meta: - $ref: '#/components/schemas/CustomCostGetResponseMeta' - type: object - GCPUsageCostConfigsResponse: - description: List of GCP Usage Cost configs. - properties: - data: - description: A GCP Usage Cost config. - items: - $ref: '#/components/schemas/GCPUsageCostConfig' - type: array - type: object - GCPUsageCostConfigPostRequest: - description: GCP Usage Cost config post request. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfigPostData' - required: - - data - type: object - GCPUsageCostConfigResponse: - description: Response of GCP Usage Cost config. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfig' - type: object - GCPUsageCostConfigPatchRequest: - description: GCP Usage Cost config patch request. - properties: - data: - $ref: '#/components/schemas/GCPUsageCostConfigPatchData' - required: - - data - type: object - ActiveBillingDimensionsResponse: - description: Active billing dimensions response. - properties: - data: - $ref: '#/components/schemas/ActiveBillingDimensionsBody' - type: object - SortDirection: - default: desc - description: The direction to sort by. - enum: - - desc - - asc - type: string - x-enum-varnames: - - DESC - - ASC - MonthlyCostAttributionResponse: - description: Response containing the monthly cost attribution by tag(s). - properties: - data: - description: Response containing cost attribution. - items: - $ref: '#/components/schemas/MonthlyCostAttributionBody' - type: array - meta: - $ref: '#/components/schemas/MonthlyCostAttributionMeta' - type: object - AwsCURConfig: - description: AWS CUR config. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigAttributes' - id: - description: The ID of the AWS CUR config. - type: string - type: - $ref: '#/components/schemas/AwsCURConfigType' - required: - - attributes - - type - type: object - AwsCURConfigPostData: - description: AWS CUR config Post data. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/AwsCURConfigPostRequestType' - required: - - attributes - - type - type: object - AwsCURConfigPatchData: - description: AWS CUR config Patch data. - properties: - attributes: - $ref: '#/components/schemas/AwsCURConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/AwsCURConfigPatchRequestType' - required: - - attributes - - type - type: object - AzureUCConfigPair: - description: Azure config pair. - properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPairAttributes' - id: - description: The ID of Cloud Cost Management account. - type: string - type: - $ref: '#/components/schemas/AzureUCConfigPairType' - required: - - attributes - - type - type: object - AzureUCConfigPostData: - description: Azure config Post data. - properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/AzureUCConfigPostRequestType' - required: - - attributes - - type - type: object - AzureUCConfigPatchData: - description: Azure config Patch data. - properties: - attributes: - $ref: '#/components/schemas/AzureUCConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/AzureUCConfigPatchRequestType' - required: - - attributes - - type - type: object - BudgetWithEntriesData: - description: A budget and all its entries. - properties: - attributes: - $ref: '#/components/schemas/BudgetAttributes' - id: - description: The `BudgetWithEntriesData` `id`. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - type: - description: The type of the object, must be `budget`. - type: string - type: object - Budget: - description: A budget. - properties: - attributes: - $ref: '#/components/schemas/BudgetAttributes' - id: - description: The id of the budget. - type: string - type: - description: The type of the object, must be `budget`. - type: string - type: object - CustomCostsFileMetadataHighLevel: - description: JSON API format for a Custom Costs file. - properties: - attributes: - $ref: '#/components/schemas/CustomCostsFileMetadata' - id: - description: ID of the Custom Costs metadata. - type: string - type: - description: Type of the Custom Costs file metadata. - type: string - type: object - CustomCostListResponseMeta: - description: Meta for the response from the List Custom Costs endpoints. - properties: - total_filtered_count: - description: >- - Number of Custom Costs files returned by the List Custom Costs - endpoint - format: int64 - type: integer - version: - description: Version of Custom Costs file - type: string - type: object - CustomCostsFileLineItem: - description: Line item details from a Custom Costs file. - properties: - BilledCost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - BillingCurrency: - description: Currency used in the Custom Costs file. - example: USD - type: string - ChargeDescription: - description: Description for the line item cost. - example: Monthly usage charge for my service - type: string - ChargePeriodEnd: - description: End date of the usage charge. - example: '2023-02-28' - pattern: ^\d{4}-\d{2}-\d{2}$ - type: string - ChargePeriodStart: - description: Start date of the usage charge. - example: '2023-02-01' - pattern: ^\d{4}-\d{2}-\d{2}$ - type: string - ProviderName: - description: Name of the provider for the line item. - type: string - Tags: - additionalProperties: - type: string - description: Additional tags for the line item. - type: object - type: object - CustomCostUploadResponseMeta: - description: Meta for the response from the Upload Custom Costs endpoints. - properties: - version: - description: Version of Custom Costs file - type: string - type: object - CustomCostsFileMetadataWithContentHighLevel: - description: JSON API format of for a Custom Costs file with content. - properties: - attributes: - $ref: '#/components/schemas/CustomCostsFileMetadataWithContent' - id: - description: ID of the Custom Costs metadata. - type: string - type: - description: Type of the Custom Costs file metadata. - type: string - type: object - CustomCostGetResponseMeta: - description: Meta for the response from the Get Custom Costs endpoints. - properties: - version: - description: Version of Custom Costs file - type: string - type: object - GCPUsageCostConfig: - description: GCP Usage Cost config. - properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigAttributes' - id: - description: The ID of the GCP Usage Cost config. - type: string - type: - $ref: '#/components/schemas/GCPUsageCostConfigType' - required: - - attributes - - type - type: object - GCPUsageCostConfigPostData: - description: GCP Usage Cost config post data. - properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequestAttributes' - type: - $ref: '#/components/schemas/GCPUsageCostConfigPostRequestType' - required: - - attributes - - type - type: object - GCPUsageCostConfigPatchData: - description: GCP Usage Cost config patch data. - properties: - attributes: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestAttributes' - type: - $ref: '#/components/schemas/GCPUsageCostConfigPatchRequestType' - required: - - attributes - - type - type: object - ActiveBillingDimensionsBody: - description: Active billing dimensions data. - properties: - attributes: - $ref: '#/components/schemas/ActiveBillingDimensionsAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/ActiveBillingDimensionsType' - type: object - MonthlyCostAttributionBody: - description: Cost data. - properties: - attributes: - $ref: '#/components/schemas/MonthlyCostAttributionAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/CostAttributionType' - type: object - MonthlyCostAttributionMeta: - description: The object containing document metadata. - properties: - aggregates: - $ref: '#/components/schemas/CostAttributionAggregates' - pagination: - $ref: '#/components/schemas/MonthlyCostAttributionPagination' - type: object - AwsCURConfigAttributes: - description: Attributes for An AWS CUR config. - properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - account_id: - description: The AWS account ID. - example: '123456789123' - type: string - bucket_name: - description: The AWS bucket name used to store the Cost and Usage Report. - example: dd-cost-bucket - type: string - bucket_region: - description: The region the bucket is located in. - example: us-east-1 - type: string - created_at: - description: The timestamp when the AWS CUR config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - error_messages: - description: The error messages for the AWS CUR config. - items: - type: string - type: array - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - report_name: - description: The name of the Cost and Usage Report. - example: dd-report-name - type: string - report_prefix: - description: The report prefix used for the Cost and Usage Report. - example: dd-report-prefix - type: string - status: - description: The status of the AWS CUR. - example: active - type: string - status_updated_at: - description: The timestamp when the AWS CUR config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - updated_at: - description: The timestamp when the AWS CUR config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - required: - - account_id - - bucket_name - - bucket_region - - report_name - - report_prefix - - status - type: object - AwsCURConfigType: - default: aws_cur_config - description: Type of AWS CUR config. - enum: - - aws_cur_config - example: aws_cur_config - type: string - x-enum-varnames: - - AWS_CUR_CONFIG - AwsCURConfigPostRequestAttributes: - description: Attributes for AWS CUR config Post Request. - properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - account_id: - description: The AWS account ID. - example: '123456789123' - type: string - bucket_name: - description: The AWS bucket name used to store the Cost and Usage Report. - example: dd-cost-bucket - type: string - bucket_region: - description: The region the bucket is located in. - example: us-east-1 - type: string - months: - description: The month of the report. - format: int32 - maximum: 36 - type: integer - report_name: - description: The name of the Cost and Usage Report. - example: dd-report-name - type: string - report_prefix: - description: The report prefix used for the Cost and Usage Report. - example: dd-report-prefix - type: string - required: - - account_id - - bucket_name - - report_name - - report_prefix - type: object - AwsCURConfigPostRequestType: - default: aws_cur_config_post_request - description: Type of AWS CUR config Post Request. - enum: - - aws_cur_config_post_request - example: aws_cur_config_post_request - type: string - x-enum-varnames: - - AWS_CUR_CONFIG_POST_REQUEST - AwsCURConfigPatchRequestAttributes: - description: Attributes for AWS CUR config Patch Request. - properties: - account_filters: - $ref: '#/components/schemas/AccountFilteringConfig' - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - type: object - AwsCURConfigPatchRequestType: - default: aws_cur_config_patch_request - description: Type of AWS CUR config Patch Request. - enum: - - aws_cur_config_patch_request - example: aws_cur_config_patch_request - type: string - x-enum-varnames: - - AWS_CUR_CONFIG_PATCH_REQUEST - AzureUCConfigPairAttributes: - description: Attributes for Azure config pair. - properties: - configs: - description: An Azure config. - items: - $ref: '#/components/schemas/AzureUCConfig' - type: array - id: - description: The ID of the Azure config pair. - type: string - required: - - configs - type: object - AzureUCConfigPairType: - default: azure_uc_configs - description: Type of Azure config pair. - enum: - - azure_uc_configs - example: azure_uc_configs - type: string - x-enum-varnames: - - AZURE_UC_CONFIGS - AzureUCConfigPostRequestAttributes: - description: Attributes for Azure config Post Request. - properties: - account_id: - description: The tenant ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - actual_bill_config: - $ref: '#/components/schemas/BillConfig' - amortized_bill_config: - $ref: '#/components/schemas/BillConfig' - client_id: - description: The client ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - type: boolean - scope: - description: The scope of your observed subscription. - example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 - type: string - required: - - account_id - - actual_bill_config - - amortized_bill_config - - client_id - - scope - type: object - AzureUCConfigPostRequestType: - default: azure_uc_config_post_request - description: Type of Azure config Post Request. - enum: - - azure_uc_config_post_request - example: azure_uc_config_post_request - type: string - x-enum-varnames: - - AZURE_UC_CONFIG_POST_REQUEST - AzureUCConfigPatchRequestAttributes: - description: Attributes for Azure config Patch Request. - properties: - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - required: - - is_enabled - type: object - AzureUCConfigPatchRequestType: - default: azure_uc_config_patch_request - description: Type of Azure config Patch Request. - enum: - - azure_uc_config_patch_request - example: azure_uc_config_patch_request - type: string - x-enum-varnames: - - AZURE_UC_CONFIG_PATCH_REQUEST - BudgetAttributes: - description: The attributes of a budget. - properties: - created_at: - description: The timestamp when the budget was created. - example: 1738258683590 - format: int64 - type: integer - created_by: - description: The id of the user that created the budget. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - end_month: - description: The month when the budget ends. - example: 202502 - format: int64 - type: integer - entries: - description: The entries of the budget. - items: - $ref: '#/components/schemas/BudgetEntry' - type: array - metrics_query: - description: The cost query used to track against the budget. - example: aws.cost.amortized{service:ec2} by {service} - type: string - name: - description: The name of the budget. - example: my budget - type: string - org_id: - description: The id of the org the budget belongs to. - example: 123 - format: int64 - type: integer - start_month: - description: The month when the budget starts. - example: 202501 - format: int64 - type: integer - total_amount: - description: The sum of all budget entries' amounts. - example: 1000 - format: double - type: number - updated_at: - description: The timestamp when the budget was last updated. - example: 1738258683590 - format: int64 - type: integer - updated_by: - description: The id of the user that created the budget. - example: 00000000-0a0a-0a0a-aaa0-00000000000a - type: string - type: object - CustomCostsFileMetadata: - description: Schema of a Custom Costs metadata. - properties: - billed_cost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - billing_currency: - description: Currency used in the Custom Costs file. - example: USD - type: string - charge_period: - $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' - name: - description: Name of the Custom Costs file. - example: my_file.json - type: string - provider_names: - description: Providers contained in the Custom Costs file. - items: - description: Name of the provider. - example: my_provider - type: string - type: array - status: - description: Status of the Custom Costs file. - example: active - type: string - uploaded_at: - description: >- - Timestamp, in millisecond, of the upload time of the Custom Costs - file. - example: 1704067200000 - format: double - type: number - uploaded_by: - $ref: '#/components/schemas/CustomCostsUser' - type: object - CustomCostsFileMetadataWithContent: - description: Schema of a cost file's metadata. - properties: - billed_cost: - description: Total cost in the cost file. - example: 100.5 - format: double - type: number - billing_currency: - description: Currency used in the Custom Costs file. - example: USD - type: string - charge_period: - $ref: '#/components/schemas/CustomCostsFileUsageChargePeriod' - content: - description: Detail of the line items from the Custom Costs file. - items: - $ref: '#/components/schemas/CustomCostsFileLineItem' - type: array - name: - description: Name of the Custom Costs file. - example: my_file.json - type: string - provider_names: - description: Providers contained in the Custom Costs file. - items: - description: Name of a provider. - example: my_provider - type: string - type: array - status: - description: Status of the Custom Costs file. - example: active - type: string - uploaded_at: - description: >- - Timestamp in millisecond of the upload time of the Custom Costs - file. - example: 1704067200000 - format: double - type: number - uploaded_by: - $ref: '#/components/schemas/CustomCostsUser' - type: object - GCPUsageCostConfigAttributes: - description: Attributes for a GCP Usage Cost config. - properties: - account_id: - description: The GCP account ID. - example: 123456_A123BC_12AB34 - type: string - bucket_name: - description: The GCP bucket name used to store the Usage Cost export. - example: dd-cost-bucket - type: string - created_at: - description: The timestamp when the GCP Usage Cost config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - dataset: - description: The export dataset name used for the GCP Usage Cost Report. - example: billing - type: string - error_messages: - description: The error messages for the GCP Usage Cost config. - items: - type: string - nullable: true - type: array - export_prefix: - description: The export prefix used for the GCP Usage Cost Report. - example: datadog_cloud_cost_usage_export - type: string - export_project_name: - description: The name of the GCP Usage Cost Report. - example: dd-cloud-cost-report - type: string - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - project_id: - description: The `project_id` of the GCP Usage Cost report. - example: my-project-123 - type: string - service_account: - description: The unique GCP service account email. - example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com - type: string - status: - description: The status of the GCP Usage Cost config. - example: active - type: string - status_updated_at: - description: The timestamp when the GCP Usage Cost config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - updated_at: - description: The timestamp when the GCP Usage Cost config status was updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - required: - - account_id - - bucket_name - - dataset - - export_prefix - - export_project_name - - service_account - - status - type: object - GCPUsageCostConfigType: - default: gcp_uc_config - description: Type of GCP Usage Cost config. - enum: - - gcp_uc_config - example: gcp_uc_config - type: string - x-enum-varnames: - - GCP_UC_CONFIG - GCPUsageCostConfigPostRequestAttributes: - description: Attributes for GCP Usage Cost config post request. - properties: - billing_account_id: - description: The GCP account ID. - example: 123456_A123BC_12AB34 - type: string - bucket_name: - description: The GCP bucket name used to store the Usage Cost export. - example: dd-cost-bucket - type: string - export_dataset_name: - description: The export dataset name used for the GCP Usage Cost report. - example: billing - type: string - export_prefix: - description: The export prefix used for the GCP Usage Cost report. - example: datadog_cloud_cost_usage_export - type: string - export_project_name: - description: The name of the GCP Usage Cost report. - example: dd-cloud-cost-report - type: string - service_account: - description: The unique GCP service account email. - example: dd-ccm-gcp-integration@my-environment.iam.gserviceaccount.com - type: string - required: - - billing_account_id - - bucket_name - - export_project_name - - export_dataset_name - - service_account - type: object - GCPUsageCostConfigPostRequestType: - default: gcp_uc_config_post_request - description: Type of GCP Usage Cost config post request. - enum: - - gcp_uc_config_post_request - example: gcp_usage_cost_config_post_request - type: string - x-enum-varnames: - - GCP_USAGE_COST_CONFIG_POST_REQUEST - GCPUsageCostConfigPatchRequestAttributes: - description: Attributes for GCP Usage Cost config patch request. - properties: - is_enabled: - description: Whether or not the Cloud Cost Management account is enabled. - example: true - type: boolean - required: - - is_enabled - type: object - GCPUsageCostConfigPatchRequestType: - default: gcp_uc_config_patch_request - description: Type of GCP Usage Cost config patch request. - enum: - - gcp_uc_config_patch_request - example: gcp_uc_config_patch_request - type: string - x-enum-varnames: - - GCP_USAGE_COST_CONFIG_PATCH_REQUEST - ActiveBillingDimensionsAttributes: - description: List of active billing dimensions. - properties: - month: - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: - `[YYYY-MM-DDThh]`. - format: date-time - type: string - values: - description: >- - List of active billing dimensions. Example: `[infra_host, apm_host, - serverless_infra]`. - items: - description: A given billing dimension in a list. - example: infra_host - type: string - type: array - type: object - ActiveBillingDimensionsType: - default: billing_dimensions - description: Type of active billing dimensions data. - enum: - - billing_dimensions - type: string - x-enum-varnames: - - BILLING_DIMENSIONS - MonthlyCostAttributionAttributes: - description: Cost Attribution by Tag for a given organization. - properties: - month: - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: - `[YYYY-MM-DDThh]`. - format: date-time - type: string - org_name: - description: The name of the organization. - type: string - public_id: - description: The organization public ID. - type: string - tag_config_source: - description: >- - The source of the cost attribution tag configuration and the - selected tags in the format `::://////`. - type: string - tags: - $ref: '#/components/schemas/CostAttributionTagNames' - updated_at: - description: >- - Shows the most recent hour in the current months for all - organizations for which all costs were calculated. - type: string - values: - description: >- - Fields in Cost Attribution by tag(s). Example: - `infra_host_on_demand_cost`, `infra_host_committed_cost`, - `infra_host_total_cost`, `infra_host_percentage_in_org`, - `infra_host_percentage_in_account`. - type: object - type: object - CostAttributionType: - default: cost_by_tag - description: Type of cost attribution data. - enum: - - cost_by_tag - example: cost_by_tag - type: string - x-enum-varnames: - - COST_BY_TAG - CostAttributionAggregates: - description: An array of available aggregates. - items: - $ref: '#/components/schemas/CostAttributionAggregatesBody' - type: array - MonthlyCostAttributionPagination: - description: The metadata for the current pagination. - properties: - next_record_id: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of the - `next_record_id`. - nullable: true - type: string - type: object - AccountFilteringConfig: - description: The account filtering configuration. - properties: - excluded_accounts: - description: >- - The AWS account IDs to be excluded from your billing dataset. This - field is used when `include_new_accounts` is `true`. - example: - - '123456789123' - - '123456789143' - items: - type: string - type: array - include_new_accounts: - description: >- - Whether or not to automatically include new member accounts by - default in your billing dataset. - example: true - type: boolean - included_accounts: - description: >- - The AWS account IDs to be included in your billing dataset. This - field is used when `include_new_accounts` is `false`. - example: - - '123456789123' - - '123456789143' - items: - type: string - type: array - type: object - AzureUCConfig: - description: Azure config. - properties: - account_id: - description: The tenant ID of the azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - client_id: - description: The client ID of the Azure account. - example: 1234abcd-1234-abcd-1234-1234abcd1234 - type: string - created_at: - description: The timestamp when the Azure config was created. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - dataset_type: - description: The dataset type of the Azure config. - example: actual - type: string - error_messages: - description: The error messages for the Azure config. - items: - type: string - type: array - export_name: - description: The name of the configured Azure Export. - example: dd-actual-export - type: string - export_path: - description: The path where the Azure Export is saved. - example: dd-export-path - type: string - id: - description: The ID of the Azure config. - type: string - months: - deprecated: true - description: The number of months the report has been backfilled. - format: int32 - maximum: 36 - type: integer - scope: - description: The scope of your observed subscription. - example: /subscriptions/1234abcd-1234-abcd-1234-1234abcd1234 - type: string - status: - description: The status of the Azure config. - example: active - type: string - status_updated_at: - description: The timestamp when the Azure config status was last updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - storage_account: - description: The name of the storage account where the Azure Export is saved. - example: dd-storage-account - type: string - storage_container: - description: The name of the storage container where the Azure Export is saved. - example: dd-storage-container - type: string - updated_at: - description: The timestamp when the Azure config was last updated. - pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$ - type: string - required: - - account_id - - client_id - - dataset_type - - export_name - - export_path - - scope - - status - - storage_account - - storage_container - type: object - BillConfig: - description: Bill config. - properties: - export_name: - description: The name of the configured Azure Export. - example: dd-actual-export - type: string - export_path: - description: The path where the Azure Export is saved. - example: dd-export-path - type: string - storage_account: - description: The name of the storage account where the Azure Export is saved. - example: dd-storage-account - type: string - storage_container: - description: The name of the storage container where the Azure Export is saved. - example: dd-storage-container - type: string - required: - - export_name - - export_path - - storage_account - - storage_container - type: object - BudgetEntry: - description: The entry of a budget. - properties: - amount: - description: The `amount` of the budget entry. - example: 500 - format: double - type: number - month: - description: The `month` of the budget entry. - example: 202501 - format: int64 - type: integer - tag_filters: - description: The `tag_filters` of the budget entry. - items: - $ref: '#/components/schemas/TagFilter' - type: array - type: object - CustomCostsFileUsageChargePeriod: - description: Usage charge period of a Custom Costs file. - properties: - end: - description: End of the usage of the Custom Costs file. - example: 1706745600000 - format: double - type: number - start: - description: Start of the usage of the Custom Costs file. - example: 1704067200000 - format: double - type: number - type: object - CustomCostsUser: - description: Metadata of the user that has uploaded the Custom Costs file. - properties: - email: - description: The name of the Custom Costs file. - example: email.test@datadohq.com - type: string - icon: - description: The name of the Custom Costs file. - example: icon.png - type: string - name: - description: Name of the user. - example: Test User - type: string - type: object - CostAttributionTagNames: - additionalProperties: - description: >- - A list of values that are associated with each tag key. - - - An empty list means the resource use wasn't tagged with the - respective tag. - - - Multiple values means the respective tag was applied multiple times - on the resource. - - - An `` value means the resource was tagged with the respective - tag but did not have a value. - items: - description: A given tag in a list. - example: datadog-integrations-lab - type: string - type: array - description: >- - Tag keys and values. - - A `null` value here means that the requested tag breakdown cannot be - applied because it does not match the [tags - - configured for usage - attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). - - In this scenario the API returns the total cost, not broken down by - tags. - nullable: true - type: object - CostAttributionAggregatesBody: - description: The object containing the aggregates. - properties: - agg_type: - description: The aggregate type. - example: sum - type: string - field: - description: The field. - example: infra_host_committed_cost - type: string - value: - description: The value for a given field. - format: double - type: number - type: object - TagFilter: - description: Tag filter for the budget's entries. - properties: - tag_key: - description: The key of the tag. - example: service - type: string - tag_value: - description: The value of the tag. - example: ec2 - type: string - type: object - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - parameters: - CloudAccountID: - description: Cloud Account id. - in: path - name: cloud_account_id - required: true - schema: - format: int64 - type: integer - BudgetID: - description: Budget id. - in: path - name: budget_id - required: true - schema: - type: string - FileID: - description: File ID. - in: path - name: file_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/dashboards.yaml b/provider-dev/source/dashboards.yaml deleted file mode 100644 index f7063d7..0000000 --- a/provider-dev/source/dashboards.yaml +++ /dev/null @@ -1,1226 +0,0 @@ -openapi: 3.0.0 -info: - title: dashboards API - description: datadog dashboards API - version: '1.0' -paths: - /api/v2/dashboard/lists/manual/{dashboard_list_id}/dashboards: - delete: - description: Delete dashboards from an existing dashboard list. - operationId: DeleteDashboardListItems - parameters: - - description: ID of the dashboard list to delete items from. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListDeleteItemsRequest' - description: Dashboards to delete from the dashboard list. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListDeleteItemsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete items from a dashboard list - tags: - - Dashboard Lists - x-codegen-request-body-name: body - get: - description: Fetch the dashboard list’s dashboard definitions. - operationId: GetDashboardListItems - parameters: - - description: ID of the dashboard list to get items from. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListItems' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_read - summary: Get items of a Dashboard List - tags: - - Dashboard Lists - x-permission: - operator: OR - permissions: - - dashboards_read - post: - description: Add dashboards to an existing dashboard list. - operationId: CreateDashboardListItems - parameters: - - description: ID of the dashboard list to add items to. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListAddItemsRequest' - description: Dashboards to add to the dashboard list. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListAddItemsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Items to a Dashboard List - tags: - - Dashboard Lists - x-codegen-request-body-name: body - put: - description: Update dashboards of an existing dashboard list. - operationId: UpdateDashboardListItems - parameters: - - description: ID of the dashboard list to update items from. - in: path - name: dashboard_list_id - required: true - schema: - format: int64 - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListUpdateItemsRequest' - description: New dashboards of the dashboard list. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DashboardListUpdateItemsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update items of a dashboard list - tags: - - Dashboard Lists - x-codegen-request-body-name: body - /api/v2/powerpacks: - get: - description: Get a list of all powerpacks. - operationId: ListPowerpacks - parameters: - - description: Maximum number of powerpacks in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 25 - format: int64 - maximum: 1000 - type: integer - - $ref: '#/components/parameters/PageOffset' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListPowerpacksResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_read - summary: Get all powerpacks - tags: - - Powerpack - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - dashboards_read - post: - description: Create a powerpack. - operationId: CreatePowerpack - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/Powerpack' - description: Create a powerpack request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PowerpackResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_write - summary: Create a new powerpack - tags: - - Powerpack - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dashboards_write - /api/v2/powerpacks/{powerpack_id}: - delete: - description: Delete a powerpack. - operationId: DeletePowerpack - parameters: - - description: Powerpack id - in: path - name: powerpack_id - required: true - schema: - type: string - responses: - '204': - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_write - summary: Delete a powerpack - tags: - - Powerpack - x-permission: - operator: OR - permissions: - - dashboards_write - get: - description: Get a powerpack. - operationId: GetPowerpack - parameters: - - description: ID of the powerpack. - in: path - name: powerpack_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PowerpackResponse' - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_read - summary: Get a Powerpack - tags: - - Powerpack - x-permission: - operator: OR - permissions: - - dashboards_read - patch: - description: Update a powerpack. - operationId: UpdatePowerpack - parameters: - - description: ID of the powerpack. - in: path - name: powerpack_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/Powerpack' - description: Update a powerpack request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PowerpackResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Powerpack Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - dashboards_write - summary: Update a powerpack - tags: - - Powerpack - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dashboards_write -components: - schemas: - DashboardListDeleteItemsRequest: - description: Request containing a list of dashboards to delete. - properties: - dashboards: - description: List of dashboards to delete from the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array - type: object - DashboardListDeleteItemsResponse: - description: Response containing a list of deleted dashboards. - properties: - deleted_dashboards_from_list: - description: List of dashboards deleted from the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - DashboardListItems: - description: Dashboards within a list. - properties: - dashboards: - description: List of dashboards in the dashboard list. - example: [] - items: - $ref: '#/components/schemas/DashboardListItem' - type: array - total: - description: Number of dashboards in the dashboard list. - format: int64 - readOnly: true - type: integer - required: - - dashboards - type: object - DashboardListAddItemsRequest: - description: Request containing a list of dashboards to add. - properties: - dashboards: - description: List of dashboards to add the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array - type: object - DashboardListAddItemsResponse: - description: Response containing a list of added dashboards. - properties: - added_dashboards_to_list: - description: List of dashboards added to the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array - type: object - DashboardListUpdateItemsRequest: - description: Request containing the list of dashboards to update to. - properties: - dashboards: - description: List of dashboards to update the dashboard list to. - items: - $ref: '#/components/schemas/DashboardListItemRequest' - type: array - type: object - DashboardListUpdateItemsResponse: - description: Response containing a list of updated dashboards. - properties: - dashboards: - description: List of dashboards in the dashboard list. - items: - $ref: '#/components/schemas/DashboardListItemResponse' - type: array - type: object - ListPowerpacksResponse: - description: Response object which includes all powerpack configurations. - properties: - data: - description: List of powerpack definitions. - items: - $ref: '#/components/schemas/PowerpackData' - type: array - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/User' - type: array - links: - $ref: '#/components/schemas/PowerpackResponseLinks' - meta: - $ref: '#/components/schemas/PowerpacksResponseMeta' - type: object - Powerpack: - description: >- - Powerpacks are templated groups of dashboard widgets you can save from - an existing dashboard and turn into reusable packs in the widget tray. - properties: - data: - $ref: '#/components/schemas/PowerpackData' - type: object - PowerpackResponse: - description: Response object which includes a single powerpack configuration. - properties: - data: - $ref: '#/components/schemas/PowerpackData' - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/User' - type: array - readOnly: true - type: object - DashboardListItemRequest: - description: A dashboard within a list. - properties: - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - type: string - type: - $ref: '#/components/schemas/DashboardType' - required: - - type - - id - type: object - DashboardListItemResponse: - description: A dashboard within a list. - properties: - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - readOnly: true - type: string - type: - $ref: '#/components/schemas/DashboardType' - required: - - type - - id - type: object - DashboardListItem: - description: A dashboard within a list. - properties: - author: - $ref: '#/components/schemas/Creator' - created: - description: Date of creation of the dashboard. - format: date-time - readOnly: true - type: string - icon: - description: URL to the icon of the dashboard. - nullable: true - readOnly: true - type: string - id: - description: ID of the dashboard. - example: q5j-nti-fv6 - type: string - integration_id: - description: The short name of the integration. - nullable: true - readOnly: true - type: string - is_favorite: - description: Whether or not the dashboard is in the favorites. - readOnly: true - type: boolean - is_read_only: - description: Whether or not the dashboard is read only. - readOnly: true - type: boolean - is_shared: - description: Whether the dashboard is publicly shared or not. - readOnly: true - type: boolean - modified: - description: Date of last edition of the dashboard. - format: date-time - readOnly: true - type: string - popularity: - description: Popularity of the dashboard. - format: int32 - maximum: 5 - readOnly: true - type: integer - tags: - description: List of team names representing ownership of a dashboard. - items: - description: The name of a Datadog team, formatted as `team:` - type: string - maxItems: 5 - nullable: true - readOnly: true - type: array - title: - description: Title of the dashboard. - readOnly: true - type: string - type: - $ref: '#/components/schemas/DashboardType' - url: - description: URL path to the dashboard. - readOnly: true - type: string - required: - - type - - id - type: object - PowerpackData: - description: Powerpack data object. - properties: - attributes: - $ref: '#/components/schemas/PowerpackAttributes' - id: - description: ID of the powerpack. - type: string - relationships: - $ref: '#/components/schemas/PowerpackRelationships' - type: - description: Type of widget, must be powerpack. - example: powerpack - type: string - type: object - User: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' - type: object - PowerpackResponseLinks: - description: Links attributes. - properties: - first: - description: Link to last page. - type: string - last: - description: Link to first page. - example: >- - https://app.datadoghq.com/api/v2/powerpacks?page[offset]=0&page[limit]=25 - nullable: true - type: string - next: - description: Link for the next set of results. - example: >- - https://app.datadoghq.com/api/v2/powerpacks?page[offset]=25&page[limit]=25 - type: string - prev: - description: Link for the previous set of results. - nullable: true - type: string - self: - description: Link to current page. - example: https://app.datadoghq.com/api/v2/powerpacks - type: string - type: object - PowerpacksResponseMeta: - description: Powerpack response metadata. - properties: - pagination: - $ref: '#/components/schemas/PowerpacksResponseMetaPagination' - type: object - DashboardType: - description: The type of the dashboard. - enum: - - custom_timeboard - - custom_screenboard - - integration_screenboard - - integration_timeboard - - host_timeboard - example: host_timeboard - type: string - x-enum-varnames: - - CUSTOM_TIMEBOARD - - CUSTOM_SCREENBOARD - - INTEGRATION_SCREENBOARD - - INTEGRATION_TIMEBOARD - - HOST_TIMEBOARD - Creator: - description: Creator of the object. - properties: - email: - description: Email of the creator. - type: string - handle: - description: Handle of the creator. - type: string - name: - description: Name of the creator. - nullable: true - type: string - type: object - PowerpackAttributes: - description: Powerpack attribute object. - properties: - description: - description: Description of this powerpack. - example: Powerpack for ABC - type: string - group_widget: - $ref: '#/components/schemas/PowerpackGroupWidget' - name: - description: Name of the powerpack. - example: Sample Powerpack - type: string - tags: - description: List of tags to identify this powerpack. - example: - - tag:foo1 - items: - maxLength: 80 - type: string - maxItems: 8 - type: array - template_variables: - description: List of template variables for this powerpack. - example: - - defaults: - - '*' - name: test - items: - $ref: '#/components/schemas/PowerpackTemplateVariable' - type: array - required: - - group_widget - - name - type: object - PowerpackRelationships: - description: Powerpack relationship object. - properties: - author: - $ref: '#/components/schemas/RelationshipToUser' - type: object - UserAttributes: - description: Attributes of user object returned by the API. - properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time - type: string - name: - description: Name of the user. - nullable: true - type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true - type: string - verified: - description: Whether the user is verified. - type: boolean - type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. - properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - PowerpacksResponseMetaPagination: - description: Powerpack response pagination metadata. - properties: - first_offset: - description: The first offset. - format: int64 - type: integer - last_offset: - description: The last offset. - format: int64 - nullable: true - type: integer - limit: - description: Pagination limit. - format: int64 - type: integer - next_offset: - description: The next offset. - format: int64 - type: integer - offset: - description: The offset. - format: int64 - type: integer - prev_offset: - description: The previous offset. - format: int64 - type: integer - total: - description: Total results. - format: int64 - type: integer - type: - description: Offset type. - type: string - type: object - PowerpackGroupWidget: - description: Powerpack group widget definition object. - properties: - definition: - $ref: '#/components/schemas/PowerpackGroupWidgetDefinition' - layout: - $ref: '#/components/schemas/PowerpackGroupWidgetLayout' - live_span: - $ref: '#/components/schemas/WidgetLiveSpan' - required: - - definition - type: object - PowerpackTemplateVariable: - description: Powerpack template variables. - properties: - available_values: - description: >- - The list of values that the template variable drop-down is limited - to. - example: - - my-host - - host1 - - host2 - items: - description: Template variable value. - type: string - nullable: true - type: array - defaults: - description: >- - One or many template variable default values within the saved view, - which are unioned together using `OR` if more than one is specified. - items: - description: One or many default values of the template variable. - minLength: 1 - type: string - type: array - name: - description: The name of the variable. - example: datacenter - type: string - prefix: - description: >- - The tag prefix associated with the variable. Only tags with this - prefix appear in the variable drop-down. - example: host - nullable: true - type: string - required: - - name - type: object - RelationshipToUser: - description: Relationship to user. - properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' - required: - - data - type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' - required: - - data - type: object - RelationshipToOrganizations: - description: Relationship to organizations. - properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array - required: - - data - type: object - RelationshipToUsers: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array - required: - - data - type: object - RelationshipToRoles: - description: Relationship to roles. - properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array - type: object - PowerpackGroupWidgetDefinition: - description: Powerpack group widget object. - properties: - layout_type: - description: Layout type of widgets. - example: ordered - type: string - show_title: - description: >- - Boolean indicating whether powerpack group title should be visible - or not. - example: true - type: boolean - title: - description: Name for the group widget. - example: Sample Powerpack - type: string - type: - description: Type of widget, must be group. - example: group - type: string - widgets: - description: Widgets inside the powerpack. - example: - - definition: - content: example - type: note - layout: - height: 5 - width: 10 - x: 0 - 'y': 0 - items: - $ref: '#/components/schemas/PowerpackInnerWidgets' - type: array - required: - - widgets - - layout_type - - type - type: object - PowerpackGroupWidgetLayout: - description: Powerpack group widget layout. - properties: - height: - description: The height of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - width: - description: The width of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - x: - description: >- - The position of the widget on the x (horizontal) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - 'y': - description: >- - The position of the widget on the y (vertical) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - required: - - x - - 'y' - - width - - height - type: object - WidgetLiveSpan: - description: The available timeframes depend on the widget you are using. - enum: - - 1m - - 5m - - 10m - - 15m - - 30m - - 1h - - 4h - - 1d - - 2d - - 1w - - 1mo - - 3mo - - 6mo - - 1y - - alert - example: 5m - type: string - x-enum-varnames: - - PAST_ONE_MINUTE - - PAST_FIVE_MINUTES - - PAST_TEN_MINUTES - - PAST_FIFTEEN_MINUTES - - PAST_THIRTY_MINUTES - - PAST_ONE_HOUR - - PAST_FOUR_HOURS - - PAST_ONE_DAY - - PAST_TWO_DAYS - - PAST_ONE_WEEK - - PAST_ONE_MONTH - - PAST_THREE_MONTHS - - PAST_SIX_MONTHS - - PAST_ONE_YEAR - - ALERT - RelationshipToUserData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - RelationshipToOrganizationData: - description: Relationship to organization object. - properties: - id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - id - - type - type: object - RelationshipToRoleData: - description: Relationship to role object. - properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - type: - $ref: '#/components/schemas/RolesType' - type: object - PowerpackInnerWidgets: - description: Powerpack group widget definition of individual widgets. - properties: - definition: - additionalProperties: {} - description: Information about widget. - example: - definition: - content: example - type: note - type: object - layout: - $ref: '#/components/schemas/PowerpackInnerWidgetLayout' - required: - - definition - type: object - OrganizationsType: - default: orgs - description: Organizations resource type. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - RolesType: - default: roles - description: Roles type. - enum: - - roles - example: roles - type: string - x-enum-varnames: - - ROLES - PowerpackInnerWidgetLayout: - description: Powerpack inner widget layout. - properties: - height: - description: The height of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - width: - description: The width of the widget. Should be a non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - x: - description: >- - The position of the widget on the x (horizontal) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - 'y': - description: >- - The position of the widget on the y (vertical) axis. Should be a - non-negative integer. - example: 0 - format: int64 - minimum: 0 - type: integer - required: - - x - - 'y' - - width - - height - type: object - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - parameters: - PageOffset: - description: Specific offset to use as the beginning of the returned page. - in: query - name: page[offset] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/digital_experience.yaml b/provider-dev/source/digital_experience.yaml deleted file mode 100644 index 20df846..0000000 --- a/provider-dev/source/digital_experience.yaml +++ /dev/null @@ -1,2071 +0,0 @@ -openapi: 3.0.0 -info: - title: digital_experience API - description: datadog digital_experience API - version: '1.0' -paths: - /api/v2/rum/analytics/aggregate: - post: - description: >- - The API endpoint to aggregate RUM events into buckets of computed - metrics and timeseries. - operationId: AggregateRUMEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMAnalyticsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Aggregate RUM events - tags: - - RUM - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - rum_apps_read - /api/v2/rum/applications: - get: - description: List all the RUM applications in your organization. - operationId: GetRUMApplications - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationsResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all the RUM applications - tags: - - RUM - x-permission: - operator: OR - permissions: - - rum_apps_read - post: - description: Create a new RUM application in your organization. - operationId: CreateRUMApplication - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new RUM application - tags: - - RUM - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - rum_apps_write - /api/v2/rum/applications/{app_id}/relationships/retention_filters: - patch: - description: >- - Order RUM retention filters for a RUM application. - - Returns RUM retention filter objects without attributes from the request - body when the request is successful. - operationId: OrderRetentionFilters - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFiltersOrderRequest' - description: New definition of the RUM retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFiltersOrderResponse' - description: Ordered - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Order RUM retention filters - tags: - - Rum Retention Filters - x-codegen-request-body-name: body - /api/v2/rum/applications/{app_id}/retention_filters: - get: - description: Get the list of RUM retention filters for a RUM application. - operationId: ListRetentionFilters - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all RUM retention filters - tags: - - Rum Retention Filters - post: - description: >- - Create a RUM retention filter for a RUM application. - - Returns RUM retention filter objects from the request body when the - request is successful. - operationId: CreateRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterCreateRequest' - description: The definition of the new RUM retention filter. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a RUM retention filter - tags: - - Rum Retention Filters - x-codegen-request-body-name: body - /api/v2/rum/applications/{app_id}/retention_filters/{rf_id}: - delete: - description: Delete a RUM retention filter for a RUM application. - operationId: DeleteRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a RUM retention filter - tags: - - Rum Retention Filters - get: - description: Get a RUM retention filter for a RUM application. - operationId: GetRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a RUM retention filter - tags: - - Rum Retention Filters - patch: - description: >- - Update a RUM retention filter for a RUM application. - - Returns RUM retention filter objects from the request body when the - request is successful. - operationId: UpdateRetentionFilter - parameters: - - $ref: '#/components/parameters/RumApplicationIDParameter' - - $ref: '#/components/parameters/RumRetentionFilterIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterUpdateRequest' - description: New definition of the RUM retention filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumRetentionFilterResponse' - description: Updated - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a RUM retention filter - tags: - - Rum Retention Filters - x-codegen-request-body-name: body - /api/v2/rum/applications/{id}: - delete: - description: Delete an existing RUM application in your organization. - operationId: DeleteRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: No Content - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a RUM application - tags: - - RUM - x-permission: - operator: OR - permissions: - - rum_apps_write - get: - description: Get the RUM application with given ID in your organization. - operationId: GetRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a RUM application - tags: - - RUM - x-permission: - operator: OR - permissions: - - rum_apps_read - patch: - description: Update the RUM application with given ID in your organization. - operationId: UpdateRUMApplication - parameters: - - description: RUM application ID. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMApplicationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a RUM application - tags: - - RUM - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - rum_apps_write - /api/v2/rum/config/metrics: - get: - description: Get the list of configured rum-based metrics with their definitions. - operationId: ListRumMetrics - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all rum-based metrics - tags: - - Rum Metrics - post: - description: >- - Create a metric based on your organization's RUM data. - - Returns the rum-based metric object from the request body when the - request is successful. - operationId: CreateRumMetric - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricCreateRequest' - description: The definition of the new rum-based metric. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a rum-based metric - tags: - - Rum Metrics - x-codegen-request-body-name: body - /api/v2/rum/config/metrics/{metric_id}: - delete: - description: Delete a specific rum-based metric from your organization. - operationId: DeleteRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a rum-based metric - tags: - - Rum Metrics - get: - description: Get a specific rum-based metric from your organization. - operationId: GetRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a rum-based metric - tags: - - Rum Metrics - patch: - description: >- - Update a specific rum-based metric from your organization. - - Returns the rum-based metric object from the request body when the - request is successful. - operationId: UpdateRumMetric - parameters: - - $ref: '#/components/parameters/RumMetricIDParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricUpdateRequest' - description: New definition of the rum-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RumMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a rum-based metric - tags: - - Rum Metrics - x-codegen-request-body-name: body - /api/v2/rum/events: - get: - description: >- - List endpoint returns events that match a RUM search query. - - [Results are paginated][1]. - - - Use this endpoint to see your latest RUM events. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - operationId: ListRUMEvents - parameters: - - description: Search query following RUM syntax. - example: '@type:session @application_id:xxxx' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/RUMSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of RUM events - tags: - - RUM - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - rum_apps_read - /api/v2/rum/events/search: - post: - description: >- - List endpoint returns RUM events that match a RUM search query. - - [Results are paginated][1]. - - - Use this endpoint to build complex RUM events filtering and search. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - operationId: SearchRUMEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RUMSearchEventsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RUMEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search RUM events - tags: - - RUM - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - rum_apps_read -components: - schemas: - RUMAggregateRequest: - description: >- - The object sent with the request to retrieve aggregation buckets of RUM - events from your organization. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/RUMCompute' - type: array - filter: - $ref: '#/components/schemas/RUMQueryFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RUMGroupBy' - type: array - options: - $ref: '#/components/schemas/RUMQueryOptions' - page: - $ref: '#/components/schemas/RUMQueryPageOptions' - type: object - RUMAnalyticsAggregateResponse: - description: The response object for the RUM events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/RUMAggregationBucketsResponse' - links: - $ref: '#/components/schemas/RUMResponseLinks' - meta: - $ref: '#/components/schemas/RUMResponseMetadata' - type: object - RUMApplicationsResponse: - description: RUM applications response. - properties: - data: - description: RUM applications array response. - items: - $ref: '#/components/schemas/RUMApplicationList' - type: array - type: object - RUMApplicationCreateRequest: - description: RUM application creation request attributes. - properties: - data: - $ref: '#/components/schemas/RUMApplicationCreate' - required: - - data - type: object - RUMApplicationResponse: - description: RUM application response. - properties: - data: - $ref: '#/components/schemas/RUMApplication' - type: object - RumRetentionFiltersOrderRequest: - description: >- - The list of RUM retention filter IDs along with their corresponding type - to reorder. - - All retention filter IDs should be included in the list created for a - RUM application. - properties: - data: - description: A list of RUM retention filter IDs along with type. - items: - $ref: '#/components/schemas/RumRetentionFiltersOrderData' - type: array - type: object - RumRetentionFiltersOrderResponse: - description: The list of RUM retention filter IDs along with type. - properties: - data: - description: A list of RUM retention filter IDs along with type. - items: - $ref: '#/components/schemas/RumRetentionFiltersOrderData' - type: array - type: object - RumRetentionFiltersResponse: - description: All RUM retention filters for a RUM application. - properties: - data: - description: A list of RUM retention filters. - items: - $ref: '#/components/schemas/RumRetentionFilterData' - type: array - type: object - RumRetentionFilterCreateRequest: - description: The RUM retention filter body to create. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterCreateData' - required: - - data - type: object - RumRetentionFilterResponse: - description: The RUM retention filter object. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterData' - type: object - RumRetentionFilterUpdateRequest: - description: The RUM retention filter body to update. - properties: - data: - $ref: '#/components/schemas/RumRetentionFilterUpdateData' - required: - - data - type: object - RUMApplicationUpdateRequest: - description: RUM application update request. - properties: - data: - $ref: '#/components/schemas/RUMApplicationUpdate' - required: - - data - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - RumMetricsResponse: - description: All the available rum-based metric objects. - properties: - data: - description: A list of rum-based metric objects. - items: - $ref: '#/components/schemas/RumMetricResponseData' - type: array - type: object - RumMetricCreateRequest: - description: The new rum-based metric body. - properties: - data: - $ref: '#/components/schemas/RumMetricCreateData' - required: - - data - type: object - RumMetricResponse: - description: The rum-based metric object. - properties: - data: - $ref: '#/components/schemas/RumMetricResponseData' - type: object - RumMetricUpdateRequest: - description: The new rum-based metric body. - properties: - data: - $ref: '#/components/schemas/RumMetricUpdateData' - required: - - data - type: object - RUMSort: - description: Sort parameters when querying events. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - RUMEventsResponse: - description: >- - Response object with all events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/RUMEvent' - type: array - links: - $ref: '#/components/schemas/RUMResponseLinks' - meta: - $ref: '#/components/schemas/RUMResponseMetadata' - type: object - RUMSearchEventsRequest: - description: The request for a RUM events list. - properties: - filter: - $ref: '#/components/schemas/RUMQueryFilter' - options: - $ref: '#/components/schemas/RUMQueryOptions' - page: - $ref: '#/components/schemas/RUMQueryPageOptions' - sort: - $ref: '#/components/schemas/RUMSort' - type: object - RUMCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/RUMAggregationFunction' - interval: - description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points. - example: 5m - type: string - metric: - description: The metric to use. - example: '@duration' - type: string - type: - $ref: '#/components/schemas/RUMComputeType' - required: - - aggregation - type: object - RUMQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: >- - The minimum time for the requested events; supports date (in [ISO - 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, - hours, minutes, and the `Z` UTC indicator - seconds and fractional - seconds are optional), math, and regular timestamps (in - milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the RUM search syntax. - example: '@type:session AND @session.type:user' - type: string - to: - default: now - description: >- - The maximum time for the requested events; supports date (in [ISO - 8601](https://www.w3.org/TR/NOTE-datetime) format with full date, - hours, minutes, and the `Z` UTC indicator - seconds and fractional - seconds are optional), math, and regular timestamps (in - milliseconds). - example: now - type: string - type: object - RUMGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@view.time_spent' - type: string - histogram: - $ref: '#/components/schemas/RUMGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/RUMGroupByMissing' - sort: - $ref: '#/components/schemas/RUMAggregateSort' - total: - $ref: '#/components/schemas/RUMGroupByTotal' - required: - - facet - type: object - RUMQueryOptions: - description: >- - Global query options that are used during the query. - - Note: Only supply timezone or time offset, not both. Otherwise, the - query fails. - properties: - time_offset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - RUMQueryPageOptions: - description: Paging attributes for listing events. - properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - RUMAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/RUMBucketResponse' - type: array - type: object - RUMResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/rum/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - RUMResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/RUMResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/RUMResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. - items: - $ref: '#/components/schemas/RUMWarning' - type: array - type: object - RUMApplicationList: - description: RUM application list. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationListAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - type: - $ref: '#/components/schemas/RUMApplicationListType' - required: - - attributes - - type - type: object - RUMApplicationCreate: - description: RUM application creation. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationCreateAttributes' - type: - $ref: '#/components/schemas/RUMApplicationCreateType' - required: - - attributes - - type - type: object - RUMApplication: - description: RUM application. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - type: - $ref: '#/components/schemas/RUMApplicationType' - required: - - attributes - - id - - type - type: object - RumRetentionFiltersOrderData: - description: The RUM retention filter data for ordering. - properties: - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - id - - type - type: object - RumRetentionFilterData: - description: The RUM retention filter. - properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterAttributes' - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - type: object - RumRetentionFilterCreateData: - description: The new RUM retention filter properties to create. - properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterCreateAttributes' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - type - - attributes - type: object - RumRetentionFilterUpdateData: - description: The new RUM retention filter properties to update. - properties: - attributes: - $ref: '#/components/schemas/RumRetentionFilterUpdateAttributes' - id: - $ref: '#/components/schemas/RumRetentionFilterID' - type: - $ref: '#/components/schemas/RumRetentionFilterType' - required: - - id - - type - - attributes - type: object - RUMApplicationUpdate: - description: RUM application update. - properties: - attributes: - $ref: '#/components/schemas/RUMApplicationUpdateAttributes' - id: - description: RUM application ID. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - type: - $ref: '#/components/schemas/RUMApplicationUpdateType' - required: - - id - - type - type: object - RumMetricResponseData: - description: The rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricResponseAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' - type: object - RumMetricCreateData: - description: The new rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricCreateAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' - required: - - id - - type - - attributes - type: object - RumMetricUpdateData: - description: The new rum-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/RumMetricUpdateAttributes' - id: - $ref: '#/components/schemas/RumMetricID' - type: - $ref: '#/components/schemas/RumMetricType' - required: - - type - - attributes - type: object - RUMEvent: - description: >- - Object description of a RUM event after being processed and stored by - Datadog. - properties: - attributes: - $ref: '#/components/schemas/RUMEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/RUMEventType' - type: object - RUMAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - RUMComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - RUMGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - Note: At most 100 buckets are allowed, the number of buckets is (max - - min)/interval. - properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out). - example: 100 - format: double - type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out). - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - RUMGroupByMissing: - description: The value to use for logs that don't have the facet used to group by. - oneOf: - - $ref: '#/components/schemas/RUMGroupByMissingString' - - $ref: '#/components/schemas/RUMGroupByMissingNumber' - RUMAggregateSort: - description: A sort rule. - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/RUMAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' - type: string - order: - $ref: '#/components/schemas/RUMSortOrder' - type: - $ref: '#/components/schemas/RUMAggregateSortType' - type: object - RUMGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/RUMGroupByTotalBoolean' - - $ref: '#/components/schemas/RUMGroupByTotalString' - - $ref: '#/components/schemas/RUMGroupByTotalNumber' - RUMBucketResponse: - description: Bucket values. - properties: - by: - additionalProperties: - description: The values for each group-by. - type: string - description: The key-value pairs for each group-by. - example: - '@session.type': user - '@type': view - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/RUMAggregateBucketValue' - description: >- - A map of the metric name to value for regular compute, or a list of - values for a timeseries. - type: object - type: object - RUMResponsePage: - description: Paging attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of - `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - RUMResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - RUMWarning: - description: A warning message indicating something that went wrong with the query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - RUMApplicationListAttributes: - description: RUM application list attributes. - properties: - application_id: - description: ID of the RUM application. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - created_at: - description: Timestamp in ms of the creation date. - example: 1659479836169 - format: int64 - type: integer - created_by_handle: - description: Handle of the creator user. - example: john.doe - type: string - hash: - description: Hash of the RUM application. Optional. - type: string - is_active: - description: Indicates if the RUM application is active. - example: true - type: boolean - name: - description: Name of the RUM application. - example: my_rum_application - type: string - org_id: - description: Org ID of the RUM application. - example: 999 - format: int32 - maximum: 2147483647 - type: integer - product_scales: - $ref: '#/components/schemas/RUMProductScales' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - updated_at: - description: Timestamp in ms of the last update date. - example: 1659479836169 - format: int64 - type: integer - updated_by_handle: - description: Handle of the updater user. - example: jane.doe - type: string - required: - - application_id - - created_at - - created_by_handle - - name - - org_id - - type - - updated_at - - updated_by_handle - type: object - RUMApplicationListType: - default: rum_application - description: RUM application list type. - enum: - - rum_application - example: rum_application - type: string - x-enum-varnames: - - RUM_APPLICATION - RUMApplicationCreateAttributes: - description: RUM application creation attributes. - properties: - name: - description: Name of the RUM application. - example: my_new_rum_application - type: string - product_analytics_retention_state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - rum_event_processing_state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - required: - - name - type: object - RUMApplicationCreateType: - default: rum_application_create - description: RUM application creation type. - enum: - - rum_application_create - example: rum_application_create - type: string - x-enum-varnames: - - RUM_APPLICATION_CREATE - RUMApplicationAttributes: - description: RUM application attributes. - properties: - application_id: - description: ID of the RUM application. - example: abcd1234-0000-0000-abcd-1234abcd5678 - type: string - client_token: - description: Client token of the RUM application. - example: abcd1234efgh5678ijkl90abcd1234efgh0 - type: string - created_at: - description: Timestamp in ms of the creation date. - example: 1659479836169 - format: int64 - type: integer - created_by_handle: - description: Handle of the creator user. - example: john.doe - type: string - hash: - description: Hash of the RUM application. Optional. - type: string - is_active: - description: Indicates if the RUM application is active. - example: true - type: boolean - name: - description: Name of the RUM application. - example: my_rum_application - type: string - org_id: - description: Org ID of the RUM application. - example: 999 - format: int32 - maximum: 2147483647 - type: integer - product_scales: - $ref: '#/components/schemas/RUMProductScales' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - updated_at: - description: Timestamp in ms of the last update date. - example: 1659479836169 - format: int64 - type: integer - updated_by_handle: - description: Handle of the updater user. - example: jane.doe - type: string - required: - - application_id - - client_token - - created_at - - created_by_handle - - name - - org_id - - type - - updated_at - - updated_by_handle - type: object - RUMApplicationType: - default: rum_application - description: RUM application response type. - enum: - - rum_application - example: rum_application - type: string - x-enum-varnames: - - RUM_APPLICATION - RumRetentionFilterID: - description: ID of retention filter in UUID. - example: 051601eb-54a0-abc0-03f9-cc02efa18892 - type: string - RumRetentionFilterType: - default: retention_filters - description: The type of the resource. The value should always be retention_filters. - enum: - - retention_filters - example: retention_filters - type: string - x-enum-varnames: - - RETENTION_FILTERS - RumRetentionFilterAttributes: - description: The object describing attributes of a RUM retention filter. - properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' - name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' - type: object - RumRetentionFilterCreateAttributes: - description: The object describing attributes of a RUM retention filter to create. - properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' - name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' - required: - - event_type - - name - - sample_rate - type: object - RumRetentionFilterUpdateAttributes: - description: The object describing attributes of a RUM retention filter to update. - properties: - enabled: - $ref: '#/components/schemas/RumRetentionFilterEnabled' - event_type: - $ref: '#/components/schemas/RumRetentionFilterEventType' - name: - $ref: '#/components/schemas/RunRetentionFilterName' - query: - $ref: '#/components/schemas/RumRetentionFilterQuery' - sample_rate: - $ref: '#/components/schemas/RumRetentionFilterSampleRate' - type: object - RUMApplicationUpdateAttributes: - description: RUM application update attributes. - properties: - name: - description: Name of the RUM application. - example: updated_name_for_my_existing_rum_application - type: string - product_analytics_retention_state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - rum_event_processing_state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: - description: >- - Type of the RUM application. Supported values are `browser`, `ios`, - `android`, `react-native`, `flutter`, `roku`, `electron`, `unity`, - `kotlin-multiplatform`. - example: browser - type: string - type: object - RUMApplicationUpdateType: - default: rum_application_update - description: RUM application update type. - enum: - - rum_application_update - example: rum_application_update - type: string - x-enum-varnames: - - RUM_APPLICATION_UPDATE - RumMetricResponseAttributes: - description: The object describing a Datadog rum-based metric. - properties: - compute: - $ref: '#/components/schemas/RumMetricResponseCompute' - event_type: - $ref: '#/components/schemas/RumMetricEventType' - filter: - $ref: '#/components/schemas/RumMetricResponseFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricResponseGroupBy' - type: array - uniqueness: - $ref: '#/components/schemas/RumMetricResponseUniqueness' - type: object - RumMetricID: - description: The name of the rum-based metric. - example: rum.sessions.webui.count - type: string - RumMetricType: - default: rum_metrics - description: The type of the resource. The value should always be rum_metrics. - enum: - - rum_metrics - example: rum_metrics - type: string - x-enum-varnames: - - RUM_METRICS - RumMetricCreateAttributes: - description: The object describing the Datadog rum-based metric to create. - properties: - compute: - $ref: '#/components/schemas/RumMetricCompute' - event_type: - $ref: '#/components/schemas/RumMetricEventType' - filter: - $ref: '#/components/schemas/RumMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricGroupBy' - type: array - uniqueness: - $ref: '#/components/schemas/RumMetricUniqueness' - required: - - event_type - - compute - type: object - RumMetricUpdateAttributes: - description: The rum-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/RumMetricUpdateCompute' - filter: - $ref: '#/components/schemas/RumMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/RumMetricGroupBy' - type: array - type: object - RUMEventAttributes: - description: JSON object containing all event attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from RUM events. - example: - customAttribute: 123 - duration: 2345 - type: object - service: - description: >- - The name of the application or service generating RUM events. - - It is used to switch from RUM to APM, so make sure you define the - same - - value when you use both products. - example: web-app - type: string - tags: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - timestamp: - description: Timestamp of your event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - RUMEventType: - default: rum - description: Type of the event. - enum: - - rum - example: rum - type: string - x-enum-varnames: - - RUM - RUMGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - RUMGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - RUMSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - RUMAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - RUMGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - RUMGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - RUMGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - RUMAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/RUMAggregateBucketValueSingleString' - - $ref: '#/components/schemas/RUMAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/RUMAggregateBucketValueTimeseries' - RUMProductScales: - description: Product Scales configuration for the RUM application. - properties: - product_analytics_retention_scale: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionScale' - rum_event_processing_scale: - $ref: '#/components/schemas/RUMEventProcessingScale' - type: object - RUMProductAnalyticsRetentionState: - description: >- - Controls the retention policy for Product Analytics data derived from - RUM events. - enum: - - MAX - - NONE - example: MAX - type: string - x-enum-descriptions: - - >- - Store Product Analytics data for the maximum available retention - period - - Do not store Product Analytics data - x-enum-varnames: - - MAX - - NONE - RUMEventProcessingState: - description: >- - Configures which RUM events are processed and stored for the - application. - enum: - - ALL - - ERROR_FOCUSED_MODE - - NONE - example: ALL - type: string - x-enum-descriptions: - - >- - Process and store all RUM events (sessions, views, actions, resources, - errors) - - Process and store only error events and related critical events - - Disable RUM event processing—no events are stored - x-enum-varnames: - - ALL - - ERROR_FOCUSED_MODE - - NONE - RumRetentionFilterEnabled: - description: Whether the retention filter is enabled. - example: true - type: boolean - RumRetentionFilterEventType: - description: The type of RUM events to filter on. - enum: - - session - - view - - action - - error - - resource - - long_task - - vital - example: session - type: string - x-enum-varnames: - - SESSION - - VIEW - - ACTION - - ERROR - - RESOURCE - - LONG_TASK - - VITAL - RunRetentionFilterName: - description: The name of a RUM retention filter. - example: Retention filter for session - type: string - RumRetentionFilterQuery: - description: The query string for a RUM retention filter. - example: '@session.has_replay:true' - type: string - RumRetentionFilterSampleRate: - description: The sample rate for a RUM retention filter, between 0 and 100. - example: 25 - format: int64 - maximum: 100 - minimum: 0 - type: integer - RumMetricResponseCompute: - description: The compute rule to compute the rum-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/RumMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - path: - description: |- - The path to the value the rum-based metric will aggregate on. - Only present when `aggregation_type` is `distribution`. - example: '@duration' - type: string - type: object - RumMetricEventType: - description: The type of RUM events to filter on. - enum: - - session - - view - - action - - error - - resource - - long_task - - vital - example: session - type: string - x-enum-varnames: - - SESSION - - VIEW - - ACTION - - ERROR - - RESOURCE - - LONG_TASK - - VITAL - RumMetricResponseFilter: - description: >- - The rum-based metric filter. RUM events matching this filter will be - aggregated in this metric. - properties: - query: - description: The search query - following the RUM search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - type: object - RumMetricResponseGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the rum-based metric will be aggregated over. - example: '@http.status_code' - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, `path` is - used as the tag name. - example: status_code - type: string - type: object - RumMetricResponseUniqueness: - description: >- - The rule to count updatable events. Is only set if `event_type` is - `session` or `view`. - properties: - when: - $ref: '#/components/schemas/RumMetricUniquenessWhen' - type: object - RumMetricCompute: - description: The compute rule to compute the rum-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/RumMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - path: - description: |- - The path to the value the rum-based metric will aggregate on. - Only present when `aggregation_type` is `distribution`. - example: '@duration' - type: string - required: - - aggregation_type - type: object - RumMetricFilter: - description: >- - The rum-based metric filter. Events matching this filter will be - aggregated in this metric. - properties: - query: - default: '*' - description: The search query - following the RUM search syntax. - example: '@service:web-ui: ' - type: string - required: - - query - type: object - RumMetricGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the rum-based metric will be aggregated over. - example: '@browser.name' - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, `path` is - used as the tag name. - example: browser_name - type: string - required: - - path - type: object - RumMetricUniqueness: - description: >- - The rule to count updatable events. Is only set if `event_type` is - `sessions` or `views`. - properties: - when: - $ref: '#/components/schemas/RumMetricUniquenessWhen' - required: - - when - type: object - RumMetricUpdateCompute: - description: The compute rule to compute the rum-based metric. - properties: - include_percentiles: - $ref: '#/components/schemas/RumMetricComputeIncludePercentiles' - type: object - RUMAggregateBucketValueSingleString: - description: A single string value. - type: string - RUMAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - RUMAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/RUMAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - RUMProductAnalyticsRetentionScale: - description: Product Analytics retention scale configuration. - properties: - last_modified_at: - description: Timestamp in milliseconds when this scale was last modified. - example: 1747922145974 - format: int64 - type: integer - state: - $ref: '#/components/schemas/RUMProductAnalyticsRetentionState' - type: object - RUMEventProcessingScale: - description: RUM event processing scale configuration. - properties: - last_modified_at: - description: Timestamp in milliseconds when this scale was last modified. - example: 1721897494108 - format: int64 - type: integer - state: - $ref: '#/components/schemas/RUMEventProcessingState' - type: object - RumMetricComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - RumMetricComputeIncludePercentiles: - description: >- - Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when `aggregation_type` is `distribution`. - example: true - type: boolean - RumMetricUniquenessWhen: - description: >- - When to count updatable events. `match` when the event is first seen, or - `end` when the event is complete. - enum: - - match - - end - example: match - type: string - x-enum-varnames: - - WHEN_MATCH - - WHEN_END - RUMAggregateBucketValueTimeseriesPoint: - description: A timeseries point. - properties: - time: - description: The time value for this point. - example: '2020-06-08T11:55:00.123Z' - format: date-time - type: string - value: - description: The value for this point. - example: 19 - format: double - type: number - type: object - responses: - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - parameters: - RumApplicationIDParameter: - description: RUM application ID. - in: path - name: app_id - required: true - schema: - type: string - RumRetentionFilterIDParameter: - description: Retention filter ID. - in: path - name: rf_id - required: true - schema: - type: string - RumMetricIDParameter: - description: The name of the rum-based metric. - in: path - name: metric_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/infrastructure.yaml b/provider-dev/source/infrastructure.yaml deleted file mode 100644 index 050cb5a..0000000 --- a/provider-dev/source/infrastructure.yaml +++ /dev/null @@ -1,3889 +0,0 @@ -openapi: 3.0.0 -info: - title: infrastructure API - description: datadog infrastructure API - version: '1.0' -paths: - /api/v2/app-builder/apps: - delete: - description: >- - Delete multiple apps in a single request from a list of app IDs. This - API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteApps - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Multiple Apps - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - get: - description: >- - List all apps, with optional filters and sorting. This endpoint is - paginated. Only basic app information such as the app ID, name, and - description is returned by this endpoint. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: ListApps - parameters: - - description: The number of apps to return per page. - in: query - name: limit - required: false - schema: - format: int64 - type: integer - - description: The page number to return. - in: query - name: page - required: false - schema: - format: int64 - type: integer - - description: Filter apps by the app creator. Usually the user's email. - in: query - name: filter[user_name] - required: false - schema: - type: string - - description: Filter apps by the app creator's UUID. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: query - name: filter[user_uuid] - required: false - schema: - format: uuid - type: string - - description: Filter by app name. - in: query - name: filter[name] - required: false - schema: - type: string - - description: Filter apps by the app name or the app creator. - in: query - name: filter[query] - required: false - schema: - type: string - - description: Filter apps by whether they are published. - in: query - name: filter[deployed] - required: false - schema: - type: boolean - - description: Filter apps by tags. - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Filter apps by whether you have added them to your favorites. - in: query - name: filter[favorite] - required: false - schema: - type: boolean - - description: Filter apps by whether they are enabled for self-service. - in: query - name: filter[self_service] - required: false - schema: - type: boolean - - description: The fields and direction to sort apps by. - explode: false - in: query - name: sort - required: false - schema: - items: - $ref: '#/components/schemas/AppsSortField' - type: array - style: form - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAppsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Apps - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_run - post: - description: >- - Create a new app, returning the app ID. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateApp - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateAppResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create App - tags: - - App Builder - x-permission: - operator: AND - permissions: - - apps_write - - connections_resolve - - workflows_run - /api/v2/app-builder/apps/{app_id}: - delete: - description: >- - Delete a single app. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteApp - parameters: - - description: The ID of the app to delete. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '410': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Gone - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete App - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - get: - description: >- - Get the full definition of an app. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetApp - parameters: - - description: The ID of the app to retrieve. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - - description: >- - The version number of the app to retrieve. If not specified, the - latest version is returned. Version numbers start at 1 and increment - with each update. The special values `latest` and `deployed` can be - used to retrieve the latest version or the published version, - respectively. - in: query - name: version - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '410': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Gone - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get App - tags: - - App Builder - x-permission: - operator: AND - permissions: - - apps_run - - connections_read - patch: - description: >- - Update an existing app. This creates a new version of the app. This API - requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UpdateApp - parameters: - - description: The ID of the app to update. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update App - tags: - - App Builder - x-permission: - operator: AND - permissions: - - apps_write - - connections_resolve - - workflows_run - /api/v2/app-builder/apps/{app_id}/deployment: - delete: - description: >- - Unpublish an app, removing the live version of the app. Unpublishing - creates a new instance of a `deployment` object on the app, with a nil - `app_version_id` (`00000000-0000-0000-0000-000000000000`). The app can - still be updated and published again in the future. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UnpublishApp - parameters: - - description: The ID of the app to unpublish. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UnpublishAppResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Unpublish App - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - post: - description: >- - Publish an app for use by other users. To ensure the app is accessible - to the correct users, you also need to set a [Restriction - Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on - the app if a policy does not yet exist. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: PublishApp - parameters: - - description: The ID of the app to publish. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - in: path - name: app_id - required: true - schema: - format: uuid - type: string - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/PublishAppResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Publish App - tags: - - App Builder - x-permission: - operator: OR - permissions: - - apps_write - /api/v2/container_images: - get: - description: Get all Container Images for your organization. - operationId: ListContainerImages - parameters: - - description: Comma-separated list of tags to filter Container Images by. - example: short_image:redis,status:running - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Comma-separated list of tags to group Container Images by. - example: registry,image_tags - in: query - name: group_by - required: false - schema: - type: string - - description: Attribute to sort Container Images by. - example: container_count - in: query - name: sort - required: false - schema: - type: string - - description: Maximum number of results returned. - in: query - name: page[size] - required: false - schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.pagination.next_cursor`. - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ContainerImagesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get all Container Images - tags: - - Container Images - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/containers: - get: - description: Get all containers for your organization. - operationId: ListContainers - parameters: - - description: Comma-separated list of tags to filter containers by. - example: env:prod,short_image:cassandra - in: query - name: filter[tags] - required: false - schema: - type: string - - description: Comma-separated list of tags to group containers by. - example: datacenter,cluster - in: query - name: group_by - required: false - schema: - type: string - - description: Attribute to sort containers by. - example: started_at - in: query - name: sort - required: false - schema: - type: string - - description: Maximum number of results returned. - in: query - name: page[size] - required: false - schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.pagination.next_cursor`. - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ContainersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get All Containers - tags: - - Containers - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/ndm/devices: - get: - description: Get the list of devices. - operationId: ListDevices - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: The field to sort the devices by. - example: status - in: query - name: sort - required: false - schema: - type: string - - description: Filter devices by tag. - example: status:ok - in: query - name: filter[tag] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListDevicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of devices - tags: - - Network Device Monitoring - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - /api/v2/ndm/devices/{device_id}: - get: - description: Get the device details. - operationId: GetDevice - parameters: - - description: The id of the device to fetch. - example: example:1.2.3.4 - in: path - name: device_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetDeviceResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the device details - tags: - - Network Device Monitoring - /api/v2/ndm/interfaces: - get: - description: Get the list of interfaces of the device. - operationId: GetInterfaces - parameters: - - description: The ID of the device to get interfaces from. - example: example:1.2.3.4 - in: query - name: device_id - required: true - schema: - type: string - - description: Whether to get the IP addresses of the interfaces. - example: true - in: query - name: get_ip_addresses - required: false - schema: - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetInterfacesResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of interfaces of the device - tags: - - Network Device Monitoring - /api/v2/ndm/tags/devices/{device_id}: - get: - description: Get the list of tags for a device. - operationId: ListDeviceUserTags - parameters: - - description: The id of the device to fetch tags for. - example: example:1.2.3.4 - in: path - name: device_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the list of tags for a device - tags: - - Network Device Monitoring - patch: - description: Update the tags for a device. - operationId: UpdateDeviceUserTags - parameters: - - description: The id of the device to update tags for. - example: example:1.2.3.4 - in: path - name: device_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListTagsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update the tags for a device - tags: - - Network Device Monitoring - /api/v2/network/connections/aggregate: - get: - description: Get all aggregated connections. - operationId: GetAggregatedConnections - parameters: - - description: >- - Unix timestamp (number of seconds since epoch) of the start of the - query window. If not provided, the start of the query window is 15 - minutes before the `to` timestamp. If neither `from` nor `to` are - provided, the query window is `[now - 15m, now]`. - in: query - name: from - schema: - format: int64 - type: integer - - description: >- - Unix timestamp (number of seconds since epoch) of the end of the - query window. If not provided, the end of the query window is the - current time. If neither `from` nor `to` are provided, the query - window is `[now - 15m, now]`. - in: query - name: to - schema: - format: int64 - type: integer - - description: >- - Comma-separated list of fields to group connections by. The maximum - number of group_by(s) is 10. - in: query - name: group_by - schema: - type: string - - description: Comma-separated list of tags to filter connections by. - in: query - name: tags - schema: - type: string - - description: >- - The number of connections to be returned. The maximum value is 7500. - The default is 100. - in: query - name: limit - schema: - default: 100 - format: int32 - maximum: 7500 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all aggregated connections - tags: - - Cloud Network Monitoring - /api/v2/network/dns/aggregate: - get: - description: Get all aggregated DNS traffic. - operationId: GetAggregatedDns - parameters: - - description: >- - Unix timestamp (number of seconds since epoch) of the start of the - query window. If not provided, the start of the query window is 15 - minutes before the `to` timestamp. If neither `from` nor `to` are - provided, the query window is `[now - 15m, now]`. - in: query - name: from - schema: - format: int64 - type: integer - - description: >- - Unix timestamp (number of seconds since epoch) of the end of the - query window. If not provided, the end of the query window is the - current time. If neither `from` nor `to` are provided, the query - window is `[now - 15m, now]`. - in: query - name: to - schema: - format: int64 - type: integer - - description: >- - Comma-separated list of fields to group DNS traffic by. The server - side defaults to `network.dns_query` if unspecified. - `server_ungrouped` may be used if groups are not desired. The - maximum number of group_by(s) is 10. - in: query - name: group_by - schema: - type: string - - description: Comma-separated list of tags to filter DNS traffic by. - in: query - name: tags - schema: - type: string - - description: >- - The number of aggregated DNS entries to be returned. The maximum - value is 7500. The default is 100. - in: query - name: limit - schema: - default: 100 - format: int32 - maximum: 7500 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SingleAggregatedDnsResponseArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all aggregated DNS traffic - tags: - - Cloud Network Monitoring - /api/v2/processes: - get: - description: Get all processes for your organization. - operationId: ListProcesses - parameters: - - description: String to search processes by. - in: query - name: search - required: false - schema: - type: string - - description: Comma-separated list of tags to filter processes by. - example: account:prod,user:admin - in: query - name: tags - required: false - schema: - type: string - - description: >- - Unix timestamp (number of seconds since epoch) of the start of the - query window. - - If not provided, the start of the query window will be 15 minutes - before the `to` timestamp. If neither - - `from` nor `to` are provided, the query window will be `[now - 15m, - now]`. - in: query - name: from - required: false - schema: - format: int64 - type: integer - - description: >- - Unix timestamp (number of seconds since epoch) of the end of the - query window. - - If not provided, the end of the query window will be 15 minutes - after the `from` timestamp. If neither - - `from` nor `to` are provided, the query window will be `[now - 15m, - now]`. - in: query - name: to - required: false - schema: - format: int64 - type: integer - - description: Maximum number of results returned. - in: query - name: page[limit] - required: false - schema: - default: 1000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.page.after`. - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProcessSummariesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get all processes - tags: - - Processes - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OPEN - permissions: [] - /api/v2/spa/recommendations/{service}/{shard}: - get: - description: >- - Retrieve resource recommendations for a Spark job. The caller (Spark - Gateway or DJM UI) provides a service name and shard identifier, and SPA - returns structured recommendations for driver and executor resources. - operationId: GetSPARecommendations - parameters: - - description: >- - The shard tag for a spark job, which differentiates jobs within the - same service that have different resource needs - in: path - name: shard - required: true - schema: - type: string - - description: The service name for a spark job - in: path - name: service - required: true - schema: - type: string - responses: - '200': - content: - application/json: - example: - data: - attributes: - driver: - estimation: - cpu: - max: 1500 - p75: 1000 - p95: 1200 - ephemeral_storage: 896 - heap: 6144 - memory: 7168 - overhead: 1024 - executor: - estimation: - cpu: - max: 2000 - p75: 1200 - p95: 1500 - ephemeral_storage: 512 - heap: 3072 - memory: 4096 - overhead: 1024 - id: dedupeactivecontexts:adp_dedupeactivecontexts_org2 - type: recommendation - schema: - $ref: '#/components/schemas/RecommendationDocument' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get SPA Recommendations - tags: - - Spa - x-unstable: >- - **Note**: This endpoint is in public beta and may change in the future. - It is not yet recommended for production use. -components: - schemas: - DeleteAppsRequest: - description: A request object for deleting multiple apps by ID. - example: - data: - - id: aea2ed17-b45f-40d0-ba59-c86b7972c901 - type: appDefinitions - - id: f69bb8be-6168-4fe7-a30d-370256b6504a - type: appDefinitions - - id: ab1ed73e-13ad-4426-b0df-a0ff8876a088 - type: appDefinitions - properties: - data: - description: An array of objects containing the IDs of the apps to delete. - items: - $ref: '#/components/schemas/DeleteAppsRequestDataItems' - type: array - type: object - DeleteAppsResponse: - description: The response object after multiple apps are successfully deleted. - properties: - data: - description: An array of objects containing the IDs of the deleted apps. - items: - $ref: '#/components/schemas/DeleteAppsResponseDataItems' - type: array - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - AppsSortField: - description: The field and direction to sort apps by - enum: - - name - - created_at - - updated_at - - user_name - - '-name' - - '-created_at' - - '-updated_at' - - '-user_name' - example: '-created_at' - type: string - x-enum-varnames: - - NAME - - CREATED_AT - - UPDATED_AT - - USER_NAME - - NAME_DESC - - CREATED_AT_DESC - - UPDATED_AT_DESC - - USER_NAME_DESC - ListAppsResponse: - description: A paginated list of apps matching the specified filters and sorting. - properties: - data: - description: An array of app definitions. - items: - $ref: '#/components/schemas/ListAppsResponseDataItems' - type: array - included: - description: Data on the version of the app that was published. - items: - $ref: '#/components/schemas/Deployment' - type: array - meta: - $ref: '#/components/schemas/ListAppsResponseMeta' - type: object - CreateAppRequest: - description: A request object for creating a new app. - example: - data: - attributes: - components: - - events: [] - name: grid0 - properties: - children: - - events: [] - name: gridCell0 - properties: - children: - - events: [] - name: calloutValue0 - properties: - isDisabled: false - isLoading: false - isVisible: true - label: CPU Usage - size: sm - style: vivid_yellow - unit: kB - value: '42' - type: calloutValue - isVisible: 'true' - layout: - default: - height: 8 - width: 2 - x: 0 - 'y': 0 - type: gridCell - type: grid - description: This is a simple example app - name: Example App - queries: [] - rootInstanceName: grid0 - type: appDefinitions - properties: - data: - $ref: '#/components/schemas/CreateAppRequestData' - type: object - CreateAppResponse: - description: >- - The response object after a new app is successfully created, with the - app ID. - properties: - data: - $ref: '#/components/schemas/CreateAppResponseData' - type: object - DeleteAppResponse: - description: The response object after an app is successfully deleted. - properties: - data: - $ref: '#/components/schemas/DeleteAppResponseData' - type: object - GetAppResponse: - description: The full app definition response object. - properties: - data: - $ref: '#/components/schemas/GetAppResponseData' - included: - description: Data on the version of the app that was published. - items: - $ref: '#/components/schemas/Deployment' - type: array - meta: - $ref: '#/components/schemas/AppMeta' - relationship: - $ref: '#/components/schemas/AppRelationship' - type: object - UpdateAppRequest: - description: A request object for updating an existing app. - example: - data: - attributes: - components: - - events: [] - name: grid0 - properties: - children: - - events: [] - name: gridCell0 - properties: - children: - - events: [] - name: calloutValue0 - properties: - isDisabled: false - isLoading: false - isVisible: true - label: CPU Usage - size: sm - style: vivid_yellow - unit: kB - value: '42' - type: calloutValue - isVisible: 'true' - layout: - default: - height: 8 - width: 2 - x: 0 - 'y': 0 - type: gridCell - type: grid - description: This is a simple example app - name: Example App - queries: [] - rootInstanceName: grid0 - id: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5 - type: appDefinitions - properties: - data: - $ref: '#/components/schemas/UpdateAppRequestData' - type: object - UpdateAppResponse: - description: The response object after an app is successfully updated. - properties: - data: - $ref: '#/components/schemas/UpdateAppResponseData' - included: - description: Data on the version of the app that was published. - items: - $ref: '#/components/schemas/Deployment' - type: array - meta: - $ref: '#/components/schemas/AppMeta' - relationship: - $ref: '#/components/schemas/AppRelationship' - type: object - UnpublishAppResponse: - description: The response object after an app is successfully unpublished. - properties: - data: - $ref: '#/components/schemas/Deployment' - type: object - PublishAppResponse: - description: The response object after an app is successfully published. - properties: - data: - $ref: '#/components/schemas/Deployment' - type: object - ContainerImagesResponse: - description: List of Container Images. - properties: - data: - description: Array of Container Image objects. - items: - $ref: '#/components/schemas/ContainerImageItem' - type: array - links: - $ref: '#/components/schemas/ContainerImagesResponseLinks' - meta: - $ref: '#/components/schemas/ContainerImageMeta' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - ContainersResponse: - description: List of containers. - properties: - data: - description: Array of Container objects. - items: - $ref: '#/components/schemas/ContainerItem' - type: array - links: - $ref: '#/components/schemas/ContainersResponseLinks' - meta: - $ref: '#/components/schemas/ContainerMeta' - type: object - ListDevicesResponse: - description: List devices response. - properties: - data: - description: The list devices response data. - items: - $ref: '#/components/schemas/DevicesListData' - type: array - meta: - $ref: '#/components/schemas/ListDevicesResponseMetadata' - type: object - GetDeviceResponse: - description: The `GetDevice` operation's response. - properties: - data: - $ref: '#/components/schemas/GetDeviceData' - type: object - GetInterfacesResponse: - description: The `GetInterfaces` operation's response. - properties: - data: - description: Get Interfaces response - items: - $ref: '#/components/schemas/GetInterfacesData' - type: array - type: object - ListTagsResponse: - description: List tags response. - properties: - data: - $ref: '#/components/schemas/ListTagsResponseData' - type: object - SingleAggregatedConnectionResponseArray: - description: List of aggregated connections. - example: - data: - - attributes: - bytes_sent_by_client: 100 - bytes_sent_by_server: 200 - group_bys: - client_team: - - networks - server_service: - - hucklebuck - packets_sent_by_client: 10 - packets_sent_by_server: 20 - rtt_micro_seconds: 800 - tcp_closed_connections: 30 - tcp_established_connections: 40 - tcp_refusals: 7 - tcp_resets: 5 - tcp_retransmits: 30 - tcp_timeouts: 6 - id: client_team:networks, server_service:hucklebuck - type: aggregated_connection - properties: - data: - description: Array of aggregated connection objects. - items: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseData' - type: array - type: object - SingleAggregatedDnsResponseArray: - description: List of aggregated DNS flows. - example: - data: - - attributes: - group_bys: - - key: client_service - value: example-service - - key: network.dns_query - value: example.com - metrics: - - key: dns_total_requests - value: 100 - - key: dns_failures - value: 7 - - key: dns_successful_responses - value: 93 - - key: dns_failed_responses - value: 5 - - key: dns_timeouts - value: 2 - - key: dns_responses.nxdomain - value: 1 - - key: dns_responses.servfail - value: 1 - - key: dns_responses.other - value: 3 - - key: dns_success_latency_percentile - value: 50 - - key: dns_failure_latency_percentile - value: 75 - id: client_service:example-service,network.dns_query:example.com - type: aggregated_dns - properties: - data: - description: Array of aggregated DNS objects. - items: - $ref: '#/components/schemas/SingleAggregatedDnsResponseData' - type: array - type: object - ProcessSummariesResponse: - description: List of process summaries. - properties: - data: - description: Array of process summary objects. - items: - $ref: '#/components/schemas/ProcessSummary' - type: array - meta: - $ref: '#/components/schemas/ProcessSummariesMeta' - type: object - RecommendationDocument: - description: >- - JSON:API document containing a single Recommendation resource. Returned - by SPA when the Spark Gateway requests recommendations. - properties: - data: - $ref: '#/components/schemas/RecommendationData' - required: - - data - type: object - DeleteAppsRequestDataItems: - description: An object containing the ID of an app to delete. - properties: - id: - description: The ID of the app to delete. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - DeleteAppsResponseDataItems: - description: An object containing the ID of a deleted app. - properties: - id: - description: The ID of the deleted app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - ListAppsResponseDataItems: - description: >- - An app definition object. This contains only basic information about the - app such as ID, name, and tags. - properties: - attributes: - $ref: '#/components/schemas/ListAppsResponseDataItemsAttributes' - id: - description: The ID of the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - meta: - $ref: '#/components/schemas/AppMeta' - relationships: - $ref: '#/components/schemas/ListAppsResponseDataItemsRelationships' - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - - attributes - type: object - Deployment: - description: The version of the app that was published. - properties: - attributes: - $ref: '#/components/schemas/DeploymentAttributes' - id: - description: The deployment ID. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - meta: - $ref: '#/components/schemas/DeploymentMetadata' - type: - $ref: '#/components/schemas/AppDeploymentType' - type: object - ListAppsResponseMeta: - description: Pagination metadata. - properties: - page: - $ref: '#/components/schemas/ListAppsResponseMetaPage' - type: object - CreateAppRequestData: - description: The data object containing the app definition. - properties: - attributes: - $ref: '#/components/schemas/CreateAppRequestDataAttributes' - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - type - type: object - CreateAppResponseData: - description: The data object containing the app ID. - properties: - id: - description: The ID of the created app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - DeleteAppResponseData: - description: The definition of `DeleteAppResponseData` object. - properties: - id: - description: The ID of the deleted app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - type: object - GetAppResponseData: - description: The data object containing the app definition. - properties: - attributes: - $ref: '#/components/schemas/GetAppResponseDataAttributes' - id: - description: The ID of the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - - attributes - type: object - AppMeta: - description: Metadata of an app. - properties: - created_at: - description: Timestamp of when the app was created. - format: date-time - type: string - deleted_at: - description: Timestamp of when the app was deleted. - format: date-time - type: string - org_id: - description: The Datadog organization ID that owns the app. - format: int64 - type: integer - updated_at: - description: Timestamp of when the app was last updated. - format: date-time - type: string - updated_since_deployment: - description: >- - Whether the app was updated since it was last published. Published - apps are pinned to a specific version and do not automatically - update when the app is updated. - type: boolean - user_id: - description: The ID of the user who created the app. - format: int64 - type: integer - user_name: - description: The name (or email address) of the user who created the app. - type: string - user_uuid: - description: The UUID of the user who created the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - version: - description: >- - The version number of the app. This starts at 1 and increments with - each update. - format: int64 - type: integer - type: object - AppRelationship: - description: The app's publication relationship and custom connections. - properties: - connections: - description: Array of custom connections used by the app. - items: - $ref: '#/components/schemas/CustomConnection' - type: array - deployment: - $ref: '#/components/schemas/DeploymentRelationship' - type: object - UpdateAppRequestData: - description: >- - The data object containing the new app definition. Any fields not - included in the request remain unchanged. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppRequestDataAttributes' - id: - description: >- - The ID of the app to update. The app ID must match the ID in the URL - path. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - type - type: object - UpdateAppResponseData: - description: The data object containing the updated app definition. - properties: - attributes: - $ref: '#/components/schemas/UpdateAppResponseDataAttributes' - id: - description: The ID of the updated app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDefinitionType' - required: - - id - - type - - attributes - type: object - ContainerImageItem: - description: Possible Container Image models. - oneOf: - - $ref: '#/components/schemas/ContainerImage' - - $ref: '#/components/schemas/ContainerImageGroup' - ContainerImagesResponseLinks: - description: Pagination links. - properties: - first: - description: Link to the first page. - type: string - last: - description: Link to the last page. - nullable: true - type: string - next: - description: Link to the next page. - nullable: true - type: string - prev: - description: Link to previous page. - nullable: true - type: string - self: - description: Link to current page. - type: string - type: object - ContainerImageMeta: - description: Response metadata object. - properties: - pagination: - $ref: '#/components/schemas/ContainerImageMetaPage' - type: object - ContainerItem: - description: Possible Container models. - oneOf: - - $ref: '#/components/schemas/Container' - - $ref: '#/components/schemas/ContainerGroup' - ContainersResponseLinks: - description: Pagination links. - properties: - first: - description: Link to the first page. - type: string - last: - description: Link to the last page. - nullable: true - type: string - next: - description: Link to the next page. - nullable: true - type: string - prev: - description: Link to previous page. - nullable: true - type: string - self: - description: Link to current page. - type: string - type: object - ContainerMeta: - description: Response metadata object. - properties: - pagination: - $ref: '#/components/schemas/ContainerMetaPage' - type: object - DevicesListData: - description: The devices list data - properties: - attributes: - $ref: '#/components/schemas/DeviceAttributes' - id: - description: The device ID - example: example:1.2.3.4 - type: string - type: - description: The type of the resource. The value should always be device. - type: string - type: object - ListDevicesResponseMetadata: - description: Object describing meta attributes of response. - properties: - page: - $ref: '#/components/schemas/ListDevicesResponseMetadataPage' - type: object - GetDeviceData: - description: Get device response data. - properties: - attributes: - $ref: '#/components/schemas/GetDeviceAttributes' - id: - description: The device ID - example: example:1.2.3.4 - type: string - type: - description: The type of the resource. The value should always be device. - type: string - type: object - GetInterfacesData: - description: The interfaces list data - properties: - attributes: - $ref: '#/components/schemas/InterfaceAttributes' - id: - description: The interface ID - example: example:1.2.3.4:99 - type: string - type: - description: The type of the resource. The value should always be interface. - type: string - type: object - ListTagsResponseData: - description: The list tags response data. - properties: - attributes: - $ref: '#/components/schemas/ListTagsResponseDataAttributes' - id: - description: The device ID - example: example:1.2.3.4 - type: string - type: - description: The type of the resource. The value should always be tags. - type: string - type: object - SingleAggregatedConnectionResponseData: - description: Object describing an aggregated connection. - properties: - attributes: - $ref: >- - #/components/schemas/SingleAggregatedConnectionResponseDataAttributes - id: - description: >- - A unique identifier for the aggregated connection based on the group - by values. - type: string - type: - $ref: '#/components/schemas/SingleAggregatedConnectionResponseDataType' - type: object - SingleAggregatedDnsResponseData: - description: Object describing an aggregated DNS flow. - properties: - attributes: - $ref: '#/components/schemas/SingleAggregatedDnsResponseDataAttributes' - id: - description: >- - A unique identifier for the aggregated DNS traffic based on the - group by values. - type: string - type: - $ref: '#/components/schemas/SingleAggregatedDnsResponseDataType' - type: object - ProcessSummary: - description: Process summary object. - properties: - attributes: - $ref: '#/components/schemas/ProcessSummaryAttributes' - id: - description: Process ID. - type: string - type: - $ref: '#/components/schemas/ProcessSummaryType' - type: object - ProcessSummariesMeta: - description: Response metadata object. - properties: - page: - $ref: '#/components/schemas/ProcessSummariesMetaPage' - type: object - RecommendationData: - description: >- - JSON:API resource object for SPA Recommendation. Includes type, optional - ID, and resource attributes with structured recommendations. - properties: - attributes: - $ref: '#/components/schemas/RecommendationAttributes' - id: - description: Resource identifier for the recommendation. Optional in responses. - type: string - type: - $ref: '#/components/schemas/RecommendationType' - required: - - type - - attributes - type: object - AppDefinitionType: - default: appDefinitions - description: The app definition type. - enum: - - appDefinitions - example: appDefinitions - type: string - x-enum-varnames: - - APPDEFINITIONS - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - ListAppsResponseDataItemsAttributes: - description: Basic information about the app such as name, description, and tags. - properties: - description: - description: A human-readable description for the app. - type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean - name: - description: The name of the app. - type: string - selfService: - description: Whether the app is enabled for use in the Datadog self-service hub. - type: boolean - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - ListAppsResponseDataItemsRelationships: - description: The app's publication information. - properties: - deployment: - $ref: '#/components/schemas/DeploymentRelationship' - type: object - DeploymentAttributes: - description: The attributes object containing the version ID of the published app. - properties: - app_version_id: - description: >- - The version ID of the app that was published. For an unpublished - app, this is always the nil UUID - (`00000000-0000-0000-0000-000000000000`). - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: object - DeploymentMetadata: - description: Metadata object containing the publication creation information. - properties: - created_at: - description: Timestamp of when the app was published. - format: date-time - type: string - user_id: - description: The ID of the user who published the app. - format: int64 - type: integer - user_name: - description: The name (or email address) of the user who published the app. - type: string - user_uuid: - description: The UUID of the user who published the app. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: object - AppDeploymentType: - default: deployment - description: The deployment type. - enum: - - deployment - example: deployment - type: string - x-enum-varnames: - - DEPLOYMENT - ListAppsResponseMetaPage: - description: Information on the total number of apps, to be used for pagination. - properties: - totalCount: - description: >- - The total number of apps under the Datadog organization, - disregarding any filters applied. - format: int64 - type: integer - totalFilteredCount: - description: The total number of apps that match the specified filters. - format: int64 - type: integer - type: object - CreateAppRequestDataAttributes: - description: App definition attributes such as name, description, and components. - properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: A human-readable description for the app. - type: string - name: - description: The name of the app. - type: string - queries: - description: >- - An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: >- - The name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - GetAppResponseDataAttributes: - description: >- - The app definition attributes, such as name, description, and - components. - properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: A human-readable description for the app. - type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean - name: - description: The name of the app. - type: string - queries: - description: >- - An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: >- - The name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - CustomConnection: - description: A custom connection used by an app. - properties: - attributes: - $ref: '#/components/schemas/CustomConnectionAttributes' - id: - description: The ID of the custom connection. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/CustomConnectionType' - type: object - DeploymentRelationship: - description: Information pointing to the app's publication status. - properties: - data: - $ref: '#/components/schemas/DeploymentRelationshipData' - meta: - $ref: '#/components/schemas/DeploymentMetadata' - type: object - UpdateAppRequestDataAttributes: - description: >- - App definition attributes to be updated, such as name, description, and - components. - properties: - components: - description: >- - The new UI components that make up the app. If this field is set, - all existing components are replaced with the new components under - this field. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: The new human-readable description for the app. - type: string - name: - description: The new name of the app. - type: string - queries: - description: >- - The new array of queries, such as external actions and state - variables, that the app uses. If this field is set, all existing - queries are replaced with the new queries under this field. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: >- - The new name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: >- - The new list of tags for the app, which can be used to filter apps. - If this field is set, any existing tags not included in the request - are removed. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - UpdateAppResponseDataAttributes: - description: >- - The updated app definition attributes, such as name, description, and - components. - properties: - components: - description: The UI components that make up the app. - items: - $ref: '#/components/schemas/ComponentGrid' - type: array - description: - description: The human-readable description for the app. - type: string - favorite: - description: Whether the app is marked as a favorite by the current user. - type: boolean - name: - description: The name of the app. - type: string - queries: - description: >- - An array of queries, such as external actions and state variables, - that the app uses. - items: - $ref: '#/components/schemas/Query' - type: array - rootInstanceName: - description: >- - The name of the root component of the app. This must be a `grid` - component that contains all other components. - type: string - tags: - description: A list of tags for the app, which can be used to filter apps. - example: - - service:webshop-backend - - team:webshop - items: - description: An individual tag for the app. - type: string - type: array - type: object - ContainerImage: - description: Container Image object. - properties: - attributes: - $ref: '#/components/schemas/ContainerImageAttributes' - id: - description: Container Image ID. - type: string - type: - $ref: '#/components/schemas/ContainerImageType' - type: object - ContainerImageGroup: - description: Container Image Group object. - properties: - attributes: - $ref: '#/components/schemas/ContainerImageGroupAttributes' - id: - description: Container Image Group ID. - type: string - relationships: - $ref: '#/components/schemas/ContainerImageGroupRelationships' - type: - $ref: '#/components/schemas/ContainerImageGroupType' - type: object - ContainerImageMetaPage: - description: Paging attributes. - properties: - cursor: - description: The cursor used to get the current results, if any. - type: string - limit: - description: Number of results returned - format: int32 - maximum: 10000 - minimum: 0 - type: integer - next_cursor: - description: The cursor used to get the next results, if any. - type: string - prev_cursor: - description: The cursor used to get the previous results, if any. - nullable: true - type: string - total: - description: Total number of records that match the query. - format: int64 - type: integer - type: - $ref: '#/components/schemas/ContainerImageMetaPageType' - type: object - Container: - description: Container object. - properties: - attributes: - $ref: '#/components/schemas/ContainerAttributes' - id: - description: Container ID. - type: string - type: - $ref: '#/components/schemas/ContainerType' - type: object - ContainerGroup: - description: Container group object. - properties: - attributes: - $ref: '#/components/schemas/ContainerGroupAttributes' - id: - description: Container Group ID. - type: string - relationships: - $ref: '#/components/schemas/ContainerGroupRelationships' - type: - $ref: '#/components/schemas/ContainerGroupType' - type: object - ContainerMetaPage: - description: Paging attributes. - properties: - cursor: - description: The cursor used to get the current results, if any. - type: string - limit: - description: Number of results returned - format: int32 - maximum: 10000 - minimum: 0 - type: integer - next_cursor: - description: The cursor used to get the next results, if any. - type: string - prev_cursor: - description: The cursor used to get the previous results, if any. - nullable: true - type: string - total: - description: Total number of records that match the query. - format: int64 - type: integer - type: - $ref: '#/components/schemas/ContainerMetaPageType' - type: object - DeviceAttributes: - description: The device attributes - properties: - description: - description: The device description - example: a device monitored with NDM - type: string - device_type: - description: The device type - example: other - type: string - integration: - description: The device integration - example: snmp - type: string - interface_statuses: - $ref: '#/components/schemas/DeviceAttributesInterfaceStatuses' - ip_address: - description: The device IP address - example: 1.2.3.4 - type: string - location: - description: The device location - example: paris - type: string - model: - description: The device model - example: xx-123 - type: string - name: - description: The device name - example: example device - type: string - os_hostname: - description: The device OS hostname - type: string - os_name: - description: The device OS name - example: example OS - type: string - os_version: - description: The device OS version - example: 1.0.2 - type: string - ping_status: - description: The device ping status - example: unmonitored - type: string - product_name: - description: The device product name - example: example device - type: string - serial_number: - description: The device serial number - example: X12345 - type: string - status: - description: The device SNMP status - example: ok - type: string - subnet: - description: The device subnet - example: 1.2.3.4/24 - type: string - sys_object_id: - description: The device `sys_object_id` - example: 1.3.6.1.4.1.99999 - type: string - tags: - description: The list of device tags - example: - - device_ip:1.2.3.4 - - device_id:example:1.2.3.4 - items: - type: string - type: array - vendor: - description: The device vendor - example: example vendor - type: string - version: - description: The device version - example: 1.2.3 - type: string - type: object - ListDevicesResponseMetadataPage: - description: Pagination object. - properties: - total_filtered_count: - description: Total count of devices matched by the filter. - example: 1 - format: int64 - type: integer - type: object - GetDeviceAttributes: - description: The device attributes - properties: - description: - description: A description of the device. - example: a device monitored with NDM - type: string - device_type: - description: The type of the device. - example: other - type: string - integration: - description: The integration of the device. - example: snmp - type: string - ip_address: - description: The IP address of the device. - example: 1.2.3.4 - type: string - location: - description: The location of the device. - example: paris - type: string - model: - description: The model of the device. - example: xx-123 - type: string - name: - description: The name of the device. - example: example device - type: string - os_hostname: - description: The operating system hostname of the device. - example: 1.0.2 - type: string - os_name: - description: The operating system name of the device. - example: example OS - type: string - os_version: - description: The operating system version of the device. - example: 1.0.2 - type: string - ping_status: - description: The ping status of the device. - example: unmonitored - type: string - product_name: - description: The product name of the device. - example: example device - type: string - serial_number: - description: The serial number of the device. - example: X12345 - type: string - status: - description: The status of the device. - example: ok - type: string - subnet: - description: The subnet of the device. - example: 1.2.3.4/24 - type: string - sys_object_id: - description: The device `sys_object_id`. - example: 1.3.6.1.4.1.99999 - type: string - tags: - description: A list of tags associated with the device. - example: - - device_ip:1.2.3.4 - - device_id:example:1.2.3.4 - items: - type: string - type: array - vendor: - description: The vendor of the device. - example: example vendor - type: string - version: - description: The version of the device. - example: 1.2.3 - type: string - type: object - InterfaceAttributes: - description: The interface attributes - properties: - alias: - description: The interface alias - example: interface_0 - type: string - description: - description: The interface description - example: a network interface - type: string - index: - description: The interface index - example: 0 - format: int64 - type: integer - ip_addresses: - description: The interface IP addresses - example: - - 1.1.1.1 - - 1.1.1.2 - items: - type: string - type: array - mac_address: - description: The interface MAC address - example: '00:00:00:00:00:00' - type: string - name: - description: The interface name - example: if0 - type: string - status: - $ref: '#/components/schemas/InterfaceAttributesStatus' - type: object - ListTagsResponseDataAttributes: - description: The definition of ListTagsResponseDataAttributes object. - properties: - tags: - description: The list of tags - example: - - tag:test - - tag:testbis - items: - type: string - type: array - type: object - SingleAggregatedConnectionResponseDataAttributes: - description: Attributes for an aggregated connection. - properties: - bytes_sent_by_client: - description: The total number of bytes sent by the client over the given period. - format: int64 - type: integer - bytes_sent_by_server: - description: The total number of bytes sent by the server over the given period. - format: int64 - type: integer - group_bys: - additionalProperties: - description: The values for each group by. - items: - type: string - type: array - description: The key, value pairs for each group by. - type: object - packets_sent_by_client: - description: >- - The total number of packets sent by the client over the given - period. - format: int64 - type: integer - packets_sent_by_server: - description: >- - The total number of packets sent by the server over the given - period. - format: int64 - type: integer - rtt_micro_seconds: - description: >- - Measured as TCP smoothed round trip time in microseconds (the time - between a TCP frame being sent and acknowledged). - format: int64 - type: integer - tcp_closed_connections: - description: >- - The number of TCP connections in a closed state. Measured in - connections per second from the client. - format: int64 - type: integer - tcp_established_connections: - description: >- - The number of TCP connections in an established state. Measured in - connections per second from the client. - format: int64 - type: integer - tcp_refusals: - description: >- - The number of TCP connections that were refused by the server. - Typically this indicates an attempt to connect to an IP/port that is - not receiving connections, or a firewall/security misconfiguration. - format: int64 - type: integer - tcp_resets: - description: The number of TCP connections that were reset by the server. - format: int64 - type: integer - tcp_retransmits: - description: >- - TCP Retransmits represent detected failures that are retransmitted - to ensure delivery. Measured in count of retransmits from the - client. - format: int64 - type: integer - tcp_timeouts: - description: >- - The number of TCP connections that timed out from the perspective of - the operating system. This can indicate general connectivity and - latency issues. - format: int64 - type: integer - type: object - SingleAggregatedConnectionResponseDataType: - default: aggregated_connection - description: Aggregated connection resource type. - enum: - - aggregated_connection - type: string - x-enum-varnames: - - AGGREGATED_CONNECTION - SingleAggregatedDnsResponseDataAttributes: - description: Attributes for an aggregated DNS flow. - properties: - group_bys: - description: The key, value pairs for each group by. - items: - $ref: >- - #/components/schemas/SingleAggregatedDnsResponseDataAttributesGroupByItems - type: array - metrics: - description: Metrics associated with an aggregated DNS flow. - items: - $ref: >- - #/components/schemas/SingleAggregatedDnsResponseDataAttributesMetricsItems - type: array - type: object - SingleAggregatedDnsResponseDataType: - default: aggregated_dns - description: Aggregated DNS resource type. - enum: - - aggregated_dns - type: string - x-enum-varnames: - - AGGREGATED_DNS - ProcessSummaryAttributes: - description: Attributes for a process summary. - properties: - cmdline: - description: Process command line. - type: string - host: - description: Host running the process. - type: string - pid: - description: Process ID. - format: int64 - type: integer - ppid: - description: Parent process ID. - format: int64 - type: integer - start: - description: Time the process was started. - type: string - tags: - description: List of tags associated with the process. - items: - description: A tag associated with the process. - type: string - type: array - timestamp: - description: Time the process was seen. - type: string - user: - description: Process owner. - type: string - type: object - ProcessSummaryType: - default: process - description: Type of process summary. - enum: - - process - example: process - type: string - x-enum-varnames: - - PROCESS - ProcessSummariesMetaPage: - description: Paging attributes. - properties: - after: - description: >- - The cursor used to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: 911abf1204838d9cdfcb9a96d0b6a1bd03e1b514074f1ce1737c4cbd - type: string - size: - description: Number of results returned. - format: int32 - maximum: 10000 - minimum: 0 - type: integer - type: object - RecommendationAttributes: - description: >- - Attributes of the SPA Recommendation resource. Contains recommendations - for both driver and executor components. - properties: - driver: - $ref: '#/components/schemas/ComponentRecommendation' - executor: - $ref: '#/components/schemas/ComponentRecommendation' - required: - - driver - - executor - type: object - RecommendationType: - default: recommendation - description: >- - JSON:API resource type for Spark Pod Autosizing recommendations. - Identifies the Recommendation resource returned by SPA. - enum: - - recommendation - example: recommendation - type: string - x-enum-varnames: - - RECOMMENDATION - ComponentGrid: - description: >- - A grid component. The grid component is the root canvas for an app and - contains all other components. - properties: - events: - description: Events to listen for on the grid component. - items: - $ref: '#/components/schemas/AppBuilderEvent' - type: array - id: - description: >- - The ID of the grid component. This property is deprecated; use - `name` to identify individual components instead. - type: string - name: - description: >- - A unique identifier for this grid component. This name is also - visible in the app editor. - example: '' - type: string - properties: - $ref: '#/components/schemas/ComponentGridProperties' - type: - $ref: '#/components/schemas/ComponentGridType' - required: - - name - - type - - properties - type: object - Query: - description: >- - A data query used by an app. This can take the form of an external - action, a data transformation, or a state variable. - oneOf: - - $ref: '#/components/schemas/ActionQuery' - - $ref: '#/components/schemas/DataTransform' - - $ref: '#/components/schemas/StateVariable' - CustomConnectionAttributes: - description: The custom connection attributes. - properties: - name: - description: The name of the custom connection. - type: string - onPremRunner: - $ref: '#/components/schemas/CustomConnectionAttributesOnPremRunner' - type: object - CustomConnectionType: - default: custom_connections - description: The custom connection type. - enum: - - custom_connections - example: custom_connections - type: string - x-enum-varnames: - - CUSTOM_CONNECTIONS - DeploymentRelationshipData: - description: Data object containing the deployment ID. - properties: - id: - description: The deployment ID. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - type: - $ref: '#/components/schemas/AppDeploymentType' - type: object - ContainerImageAttributes: - description: Attributes for a Container Image. - properties: - container_count: - description: Number of containers running the image. - format: int64 - type: integer - image_flavors: - description: |- - List of platform-specific images associated with the image record. - The list contains more than 1 entry for multi-architecture images. - items: - $ref: '#/components/schemas/ContainerImageFlavor' - type: array - image_tags: - description: List of image tags associated with the Container Image. - items: - description: An image tag associated with the Container Image. - type: string - type: array - images_built_at: - description: |- - List of build times associated with the Container Image. - The list contains more than 1 entry for multi-architecture images. - items: - description: Time the platform-specific Container Image was built. - type: string - type: array - name: - description: Name of the Container Image. - type: string - os_architectures: - description: >- - List of Operating System architectures supported by the Container - Image. - items: - description: Operating System architecture supported by the Container Image. - example: amd64 - type: string - type: array - os_names: - description: List of Operating System names supported by the Container Image. - items: - description: Operating System supported by the Container Image. - example: linux - type: string - type: array - os_versions: - description: List of Operating System versions supported by the Container Image. - items: - description: Operating System version supported by the Container Image. - type: string - type: array - published_at: - description: Time the image was pushed to the container registry. - type: string - registry: - description: Registry the Container Image was pushed to. - type: string - repo_digest: - description: Digest of the compressed image manifest. - type: string - repository: - description: Repository where the Container Image is stored in. - type: string - short_image: - description: Short version of the Container Image name. - type: string - sizes: - description: >- - List of size for each platform-specific image associated with the - image record. - - The list contains more than 1 entry for multi-architecture images. - items: - description: Size of the platform-specific Container Image. - format: int64 - type: integer - type: array - sources: - description: List of sources where the Container Image was collected from. - items: - description: Source where the Container Image was collected from. - type: string - type: array - tags: - description: List of tags associated with the Container Image. - items: - description: A tag associated with the Container Image. - type: string - type: array - vulnerability_count: - $ref: '#/components/schemas/ContainerImageVulnerabilities' - type: object - ContainerImageType: - default: container_image - description: Type of Container Image. - enum: - - container_image - example: container_image - type: string - x-enum-varnames: - - CONTAINER_IMAGE - ContainerImageGroupAttributes: - description: Attributes for a Container Image Group. - properties: - count: - description: Number of Container Images in the group. - format: int64 - type: integer - name: - description: Name of the Container Image group. - type: string - tags: - description: Tags from the group name parsed in key/value format. - type: object - type: object - ContainerImageGroupRelationships: - description: Relationships inside a Container Image Group. - properties: - container_images: - $ref: '#/components/schemas/ContainerImageGroupImagesRelationshipsLink' - type: object - ContainerImageGroupType: - default: container_image_group - description: Type of Container Image Group. - enum: - - container_image_group - example: container_image_group - type: string - x-enum-varnames: - - CONTAINER_IMAGE_GROUP - ContainerImageMetaPageType: - default: cursor_limit - description: Type of Container Image pagination. - enum: - - cursor_limit - example: cursor_limit - type: string - x-enum-varnames: - - CURSOR_LIMIT - ContainerAttributes: - description: Attributes for a container. - properties: - container_id: - description: The ID of the container. - type: string - created_at: - description: Time the container was created. - type: string - host: - description: Hostname of the host running the container. - type: string - image_digest: - description: Digest of the compressed image manifest. - nullable: true - type: string - image_name: - description: Name of the associated container image. - type: string - image_tags: - description: List of image tags associated with the container image. - items: - type: string - nullable: true - type: array - name: - description: Name of the container. - type: string - started_at: - description: Time the container was started. - type: string - state: - description: State of the container. This depends on the container runtime. - type: string - tags: - description: List of tags associated with the container. - items: - type: string - type: array - type: object - ContainerType: - default: container - description: Type of container. - enum: - - container - example: container - type: string - x-enum-varnames: - - CONTAINER - ContainerGroupAttributes: - description: Attributes for a container group. - properties: - count: - description: Number of containers in the group. - format: int64 - type: integer - tags: - description: Tags from the group name parsed in key/value format. - type: object - type: object - ContainerGroupRelationships: - description: Relationships to containers inside a container group. - properties: - containers: - $ref: '#/components/schemas/ContainerGroupRelationshipsLink' - type: object - ContainerGroupType: - default: container_group - description: Type of container group. - enum: - - container_group - example: container_group - type: string - x-enum-varnames: - - CONTAINER_GROUP - ContainerMetaPageType: - default: cursor_limit - description: Type of Container pagination. - enum: - - cursor_limit - example: cursor_limit - type: string - x-enum-varnames: - - CURSOR_LIMIT - DeviceAttributesInterfaceStatuses: - description: Count of the device interfaces by status - example: - down: 1 - 'off': 2 - up: 12 - warning: 5 - properties: - down: - description: The number of interfaces that are down - format: int64 - type: integer - 'off': - description: The number of interfaces that are off - format: int64 - type: integer - up: - description: The number of interfaces that are up - format: int64 - type: integer - warning: - description: The number of interfaces that are in a warning state - format: int64 - type: integer - type: object - InterfaceAttributesStatus: - description: The interface status - enum: - - up - - down - - warning - - 'off' - example: up - type: string - x-enum-varnames: - - UP - - DOWN - - WARNING - - 'OFF' - SingleAggregatedDnsResponseDataAttributesGroupByItems: - description: Attributes associated with a group by - properties: - key: - description: The group by key. - type: string - value: - description: The group by value. - type: string - type: object - SingleAggregatedDnsResponseDataAttributesMetricsItems: - description: Metrics associated with an aggregated DNS flow. - properties: - key: - $ref: '#/components/schemas/DnsMetricKey' - value: - description: The metric value. - format: int64 - type: integer - type: object - ComponentRecommendation: - description: >- - Resource recommendation for a single Spark component (driver or - executor). Contains estimation data used to patch Spark job specs. - properties: - estimation: - $ref: '#/components/schemas/Estimation' - required: - - estimation - type: object - AppBuilderEvent: - additionalProperties: {} - description: An event on a UI component that triggers a response or action in an app. - properties: - name: - $ref: '#/components/schemas/AppBuilderEventName' - type: - $ref: '#/components/schemas/AppBuilderEventType' - type: object - ComponentGridProperties: - description: Properties of a grid component. - properties: - backgroundColor: - default: default - description: The background color of the grid. - type: string - children: - description: The child components of the grid. - items: - $ref: '#/components/schemas/Component' - type: array - isVisible: - $ref: '#/components/schemas/ComponentGridPropertiesIsVisible' - type: object - ComponentGridType: - default: grid - description: The grid component type. - enum: - - grid - example: grid - type: string - x-enum-varnames: - - GRID - ActionQuery: - description: >- - An action query. This query type is used to trigger an action, such as - sending a HTTP request. - properties: - events: - description: Events to listen for downstream of the action query. - items: - $ref: '#/components/schemas/AppBuilderEvent' - type: array - id: - description: The ID of the action query. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - name: - description: >- - A unique identifier for this action query. This name is also used to - access the query's result throughout the app. - example: fetchPendingOrders - type: string - properties: - $ref: '#/components/schemas/ActionQueryProperties' - type: - $ref: '#/components/schemas/ActionQueryType' - required: - - id - - name - - type - - properties - type: object - DataTransform: - description: >- - A data transformer, which is custom JavaScript code that executes and - transforms data when its inputs change. - properties: - id: - description: The ID of the data transformer. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - name: - description: >- - A unique identifier for this data transformer. This name is also - used to access the transformer's result throughout the app. - example: combineTwoOrders - type: string - properties: - $ref: '#/components/schemas/DataTransformProperties' - type: - $ref: '#/components/schemas/DataTransformType' - required: - - id - - name - - type - - properties - type: object - StateVariable: - description: A variable, which can be set and read by other components in the app. - properties: - id: - description: The ID of the state variable. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - name: - description: >- - A unique identifier for this state variable. This name is also used - to access the variable's value throughout the app. - example: ordersToSubmit - type: string - properties: - $ref: '#/components/schemas/StateVariableProperties' - type: - $ref: '#/components/schemas/StateVariableType' - required: - - id - - name - - type - - properties - type: object - CustomConnectionAttributesOnPremRunner: - description: >- - Information about the Private Action Runner used by the custom - connection, if the custom connection is associated with a Private Action - Runner. - properties: - id: - description: The Private Action Runner ID. - type: string - url: - description: The URL of the Private Action Runner. - type: string - type: object - ContainerImageFlavor: - description: Container Image breakdown by supported platform. - properties: - built_at: - description: Time the platform-specific Container Image was built. - type: string - os_architecture: - description: Operating System architecture supported by the Container Image. - type: string - os_name: - description: Operating System name supported by the Container Image. - type: string - os_version: - description: Operating System version supported by the Container Image. - type: string - size: - description: Size of the platform-specific Container Image. - format: int64 - type: integer - type: object - ContainerImageVulnerabilities: - description: Vulnerability counts associated with the Container Image. - properties: - asset_id: - description: ID of the Container Image. - type: string - critical: - description: Number of vulnerabilities with CVSS Critical severity. - format: int64 - type: integer - high: - description: Number of vulnerabilities with CVSS High severity. - format: int64 - type: integer - low: - description: Number of vulnerabilities with CVSS Low severity. - format: int64 - type: integer - medium: - description: Number of vulnerabilities with CVSS Medium severity. - format: int64 - type: integer - none: - description: Number of vulnerabilities with CVSS None severity. - format: int64 - type: integer - unknown: - description: Number of vulnerabilities with an unknown CVSS severity. - format: int64 - type: integer - type: object - ContainerImageGroupImagesRelationshipsLink: - description: Relationships to Container Images inside a Container Image Group. - properties: - data: - $ref: '#/components/schemas/ContainerImageGroupRelationshipsData' - links: - $ref: '#/components/schemas/ContainerImageGroupRelationshipsLinks' - type: object - ContainerGroupRelationshipsLink: - description: Relationships to Containers inside a Container Group. - properties: - data: - $ref: '#/components/schemas/ContainerGroupRelationshipsData' - links: - $ref: '#/components/schemas/ContainerGroupRelationshipsLinks' - type: object - DnsMetricKey: - description: The metric key for DNS metrics. - enum: - - dns_total_requests - - dns_failures - - dns_successful_responses - - dns_failed_responses - - dns_timeouts - - dns_responses.nxdomain - - dns_responses.servfail - - dns_responses.other - - dns_success_latency_percentile - - dns_failure_latency_percentile - type: string - x-enum-descriptions: - - The total number of DNS requests made by the client. - - The total number of timeouts and errors in DNS requests. - - The total number of successful DNS responses. - - The total number of failed DNS responses. - - The total number of DNS timeouts. - - The total number of DNS responses with the NXDOMAIN error code. - - The total number of DNS responses with the SERVFAIL error code. - - The total number of DNS responses with other error codes. - - The latency percentile for successful DNS responses. - - The latency percentile for failed DNS responses. - x-enum-varnames: - - DNS_TOTAL_REQUESTS - - DNS_FAILURES - - DNS_SUCCESSFUL_RESPONSES - - DNS_FAILED_RESPONSES - - DNS_TIMEOUTS - - DNS_RESPONSES_NXDOMAIN - - DNS_RESPONSES_SERVFAIL - - DNS_RESPONSES_OTHER - - DNS_SUCCESS_LATENCY_PERCENTILE - - DNS_FAILURE_LATENCY_PERCENTILE - Estimation: - description: >- - Recommended resource values for a Spark driver or executor, derived from - recent real usage metrics. Used by SPA to propose more efficient pod - sizing. - properties: - cpu: - $ref: '#/components/schemas/Cpu' - ephemeral_storage: - description: >- - Recommended ephemeral storage allocation (in MiB). Derived from job - temporary storage patterns. - format: int64 - type: integer - heap: - description: Recommended JVM heap size (in MiB). - format: int64 - type: integer - memory: - description: >- - Recommended total memory allocation (in MiB). Includes both heap and - overhead. - format: int64 - type: integer - overhead: - description: Recommended JVM overhead (in MiB). Computed as total memory - heap. - format: int64 - type: integer - type: object - AppBuilderEventName: - description: The triggering action for the event. - enum: - - pageChange - - tableRowClick - - _tableRowButtonClick - - change - - submit - - click - - toggleOpen - - close - - open - - executionFinished - example: click - type: string - x-enum-varnames: - - PAGECHANGE - - TABLEROWCLICK - - TABLEROWBUTTONCLICK - - CHANGE - - SUBMIT - - CLICK - - TOGGLEOPEN - - CLOSE - - OPEN - - EXECUTIONFINISHED - AppBuilderEventType: - description: The response to the event. - enum: - - custom - - setComponentState - - triggerQuery - - openModal - - closeModal - - openUrl - - downloadFile - - setStateVariableValue - example: triggerQuery - type: string - x-enum-varnames: - - CUSTOM - - SETCOMPONENTSTATE - - TRIGGERQUERY - - OPENMODAL - - CLOSEMODAL - - OPENURL - - DOWNLOADFILE - - SETSTATEVARIABLEVALUE - Component: - description: >- - [Definition of a UI component in the - app](https://docs.datadoghq.com/service_management/app_builder/components/) - properties: - events: - description: Events to listen for on the UI component. - items: - $ref: '#/components/schemas/AppBuilderEvent' - type: array - id: - description: >- - The ID of the UI component. This property is deprecated; use `name` - to identify individual components instead. - nullable: true - type: string - name: - description: >- - A unique identifier for this UI component. This name is also visible - in the app editor. - example: '' - type: string - properties: - $ref: '#/components/schemas/ComponentProperties' - type: - $ref: '#/components/schemas/ComponentType' - required: - - name - - type - - properties - type: object - ComponentGridPropertiesIsVisible: - description: >- - Whether the grid component and its children are visible. If a string, it - must be a valid JavaScript expression that evaluates to a boolean. - oneOf: - - type: string - - default: true - type: boolean - ActionQueryProperties: - description: The properties of the action query. - properties: - condition: - $ref: '#/components/schemas/ActionQueryCondition' - debounceInMs: - $ref: '#/components/schemas/ActionQueryDebounceInMs' - mockedOutputs: - $ref: '#/components/schemas/ActionQueryMockedOutputs' - onlyTriggerManually: - $ref: '#/components/schemas/ActionQueryOnlyTriggerManually' - outputs: - description: >- - The post-query transformation function, which is a JavaScript - function that changes the query's `.outputs` property after the - query's execution. - example: ${((outputs) => {return outputs.body.data})(self.rawOutputs)} - type: string - pollingIntervalInMs: - $ref: '#/components/schemas/ActionQueryPollingIntervalInMs' - requiresConfirmation: - $ref: '#/components/schemas/ActionQueryRequiresConfirmation' - showToastOnError: - $ref: '#/components/schemas/ActionQueryShowToastOnError' - spec: - $ref: '#/components/schemas/ActionQuerySpec' - required: - - spec - type: object - ActionQueryType: - default: action - description: The action query type. - enum: - - action - example: action - type: string - x-enum-varnames: - - ACTION - DataTransformProperties: - description: The properties of the data transformer. - properties: - outputs: - description: A JavaScript function that returns the transformed data. - example: |- - ${(() => {return { - allItems: [...fetchOrder1.outputs.items, ...fetchOrder2.outputs.items], - }})()} - type: string - type: object - DataTransformType: - default: dataTransform - description: The data transform type. - enum: - - dataTransform - example: dataTransform - type: string - x-enum-varnames: - - DATATRANSFORM - StateVariableProperties: - description: The properties of the state variable. - properties: - defaultValue: - description: The default value of the state variable. - example: ${['order_3145', 'order_4920']} - type: object - StateVariableType: - default: stateVariable - description: The state variable type. - enum: - - stateVariable - example: stateVariable - type: string - x-enum-varnames: - - STATEVARIABLE - ContainerImageGroupRelationshipsData: - description: Links data. - items: - description: A link data. - type: string - type: array - ContainerImageGroupRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Link to related Container Images. - type: string - type: object - ContainerGroupRelationshipsData: - description: Links data. - items: - description: A link data. - type: string - type: array - ContainerGroupRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Link to related containers. - type: string - type: object - Cpu: - description: >- - CPU usage statistics derived from historical Spark job metrics. Provides - multiple estimates so users can choose between conservative and - cost-saving risk profiles. - properties: - max: - description: >- - Maximum CPU usage observed for the job, expressed in millicores. - This represents the upper bound of usage. - format: int64 - type: integer - p75: - description: >- - 75th percentile of CPU usage (millicores). Represents a cost-saving - configuration while covering most workloads. - format: int64 - type: integer - p95: - description: >- - 95th percentile of CPU usage (millicores). Balances performance and - cost, providing a safer margin than p75. - format: int64 - type: integer - type: object - x-model-simple-name: SpaCpu - ComponentProperties: - additionalProperties: {} - description: >- - Properties of a UI component. Different component types can have their - own additional unique properties. See the [components - documentation](https://docs.datadoghq.com/service_management/app_builder/components/) - for more detail on each component type and its properties. - properties: - children: - description: The child components of the UI component. - items: - $ref: '#/components/schemas/Component' - type: array - isVisible: - $ref: '#/components/schemas/ComponentPropertiesIsVisible' - type: object - ComponentType: - description: The UI component type. - enum: - - table - - textInput - - textArea - - button - - text - - select - - modal - - schemaForm - - checkbox - - tabs - - vegaChart - - radioButtons - - numberInput - - fileInput - - jsonInput - - gridCell - - dateRangePicker - - search - - container - - calloutValue - example: text - type: string - x-enum-varnames: - - TABLE - - TEXTINPUT - - TEXTAREA - - BUTTON - - TEXT - - SELECT - - MODAL - - SCHEMAFORM - - CHECKBOX - - TABS - - VEGACHART - - RADIOBUTTONS - - NUMBERINPUT - - FILEINPUT - - JSONINPUT - - GRIDCELL - - DATERANGEPICKER - - SEARCH - - CONTAINER - - CALLOUTVALUE - ActionQueryCondition: - description: >- - Whether to run this query. If specified, the query will only run if this - condition evaluates to `true` in JavaScript and all other conditions are - also met. - oneOf: - - type: boolean - - example: ${true} - type: string - ActionQueryDebounceInMs: - description: >- - The minimum time in milliseconds that must pass before the query can be - triggered again. This is useful for preventing accidental double-clicks - from triggering the query multiple times. - oneOf: - - example: 310.5 - format: double - type: number - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a number. - example: ${1000} - type: string - ActionQueryMockedOutputs: - description: >- - The mocked outputs of the action query. This is useful for testing the - app without actually running the action. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQueryMockedOutputsObject' - ActionQueryOnlyTriggerManually: - description: >- - Determines when this query is executed. If set to `false`, the query - will run when the app loads and whenever any query arguments change. If - set to `true`, the query will only run when manually triggered from - elsewhere in the app. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string - ActionQueryPollingIntervalInMs: - description: >- - If specified, the app will poll the query at the specified interval in - milliseconds. The minimum polling interval is 15 seconds. The query will - only poll when the app's browser tab is active. - oneOf: - - example: 30000 - format: double - minimum: 15000 - type: number - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a number. - example: ${15000} - type: string - ActionQueryRequiresConfirmation: - description: Whether to prompt the user to confirm this query before it runs. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string - ActionQueryShowToastOnError: - description: Whether to display a toast to the user when the query returns an error. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string - ActionQuerySpec: - description: The definition of the action query. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQuerySpecObject' - ComponentPropertiesIsVisible: - description: >- - Whether the UI component is visible. If this is a string, it must be a - valid JavaScript expression that evaluates to a boolean. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string - ActionQueryMockedOutputsObject: - description: The mocked outputs of the action query. - properties: - enabled: - $ref: '#/components/schemas/ActionQueryMockedOutputsEnabled' - outputs: - description: The mocked outputs of the action query, serialized as JSON. - example: '{"status": "success"}' - type: string - required: - - enabled - type: object - ActionQuerySpecObject: - description: The action query spec object. - properties: - connectionGroup: - $ref: '#/components/schemas/ActionQuerySpecConnectionGroup' - connectionId: - description: The ID of the custom connection to use for this action query. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - type: string - fqn: - description: The fully qualified name of the action type. - example: com.datadoghq.http.request - type: string - inputs: - $ref: '#/components/schemas/ActionQuerySpecInputs' - required: - - fqn - type: object - ActionQueryMockedOutputsEnabled: - description: Whether to enable the mocked outputs for testing. - oneOf: - - type: boolean - - description: >- - If this is a string, it must be a valid JavaScript expression that - evaluates to a boolean. - example: ${true} - type: string - ActionQuerySpecConnectionGroup: - description: The connection group to use for an action query. - properties: - id: - description: The ID of the connection group. - example: 65bb1f25-52e1-4510-9f8d-22d1516ed693 - format: uuid - type: string - tags: - description: The tags of the connection group. - items: - type: string - type: array - type: object - ActionQuerySpecInputs: - description: >- - The inputs to the action query. These are the values that are passed to - the action when it is triggered. - oneOf: - - type: string - - $ref: '#/components/schemas/ActionQuerySpecInput' - ActionQuerySpecInput: - additionalProperties: {} - description: >- - The inputs to the action query. See the [Actions - Catalog](https://docs.datadoghq.com/actions/actions_catalog/) for more - detail on each action and its inputs. - type: object - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - parameters: - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/integrations.yaml b/provider-dev/source/integrations.yaml deleted file mode 100644 index 674a7ef..0000000 --- a/provider-dev/source/integrations.yaml +++ /dev/null @@ -1,4414 +0,0 @@ -openapi: 3.0.0 -info: - title: integrations API - description: datadog integrations API - version: '1.0' -paths: - /api/v2/integration/aws/accounts: - get: - description: Get a list of AWS Account Integration Configs. - operationId: ListAWSAccounts - parameters: - - description: >- - Optional query parameter to filter accounts by AWS Account ID. If - not provided, all accounts are returned. - example: '123456789012' - in: query - name: aws_account_id - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountsResponse' - description: AWS Accounts List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all AWS integrations - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - post: - description: Create a new AWS Account Integration Config. - operationId: CreateAWSAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an AWS integration - tags: - - AWS Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - aws_configurations_manage - /api/v2/integration/aws/accounts/{aws_account_config_id}: - delete: - description: Delete an AWS Account Integration Config by config ID. - operationId: DeleteAWSAccount - parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an AWS integration - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configurations_manage - get: - description: Get an AWS Account Integration Config by config ID. - operationId: GetAWSAccount - parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an AWS integration by config ID - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - patch: - description: Update an AWS Account Integration Config by config ID. - operationId: UpdateAWSAccount - parameters: - - $ref: '#/components/parameters/AWSAccountConfigIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSAccountResponse' - description: AWS Account object - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update an AWS integration - tags: - - AWS Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - aws_configuration_edit - /api/v2/integration/aws/available_namespaces: - get: - description: >- - Get a list of available AWS CloudWatch namespaces that can send metrics - to Datadog. - operationId: ListAWSNamespaces - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSNamespacesResponse' - description: AWS Namespaces List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List available namespaces - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - /api/v2/integration/aws/generate_new_external_id: - post: - description: Generate a new external ID for AWS role-based authentication. - operationId: CreateNewAWSExternalID - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSNewExternalIDResponse' - description: AWS External ID object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Generate a new external ID - tags: - - AWS Integration - x-permission: - operator: OR - permissions: - - aws_configuration_edit - /api/v2/integration/aws/iam_permissions: - get: - description: Get all AWS IAM permissions required for the AWS integration. - operationId: GetAWSIntegrationIAMPermissions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponse' - description: AWS IAM Permissions object - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS integration IAM permissions - tags: - - AWS Integration - /api/v2/integration/aws/logs/services: - get: - description: Get a list of AWS services that can send logs to Datadog. - operationId: ListAWSLogsServices - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AWSLogsServicesResponse' - description: AWS Logs Services List object - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get list of AWS log ready services - tags: - - AWS Logs Integration - x-permission: - operator: OR - permissions: - - aws_configuration_read - /api/v2/integration/gcp/accounts: - get: - description: >- - List all GCP STS-enabled service accounts configured in your Datadog - account. - operationId: ListGCPSTSAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all GCP STS-enabled service accounts - tags: - - GCP Integration - x-permission: - operator: OR - permissions: - - gcp_configuration_read - post: - description: Create a new entry within Datadog for your STS enabled service account. - operationId: CreateGCPSTSAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new entry for your service account - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configurations_manage - /api/v2/integration/gcp/accounts/{account_id}: - delete: - description: Delete an STS enabled GCP account from within Datadog. - operationId: DeleteGCPSTSAccount - parameters: - - $ref: '#/components/parameters/GCPSTSServiceAccountID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an STS enabled GCP Account - tags: - - GCP Integration - x-permission: - operator: OR - permissions: - - gcp_configurations_manage - patch: - description: Update an STS enabled service account. - operationId: UpdateGCPSTSAccount - parameters: - - $ref: '#/components/parameters/GCPSTSServiceAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSServiceAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update STS Service Account - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_edit - /api/v2/integration/gcp/sts_delegate: - get: - description: >- - List your Datadog-GCP STS delegate account configured in your Datadog - account. - operationId: GetGCPSTSDelegate - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List delegate account - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_read - post: - description: Create a Datadog GCP principal. - operationId: MakeGCPSTSDelegate - requestBody: - content: - application/json: - schema: - example: {} - type: object - description: Create a delegate service account within Datadog. - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GCPSTSDelegateAccountResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Datadog GCP principal - tags: - - GCP Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - gcp_configuration_edit - /api/v2/integration/ms-teams/configuration/channel/{tenant_name}/{team_name}/{channel_name}: - get: - description: >- - Get the tenant, team, and channel ID of a channel in the Datadog - Microsoft Teams integration. - operationId: GetChannelByName - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantNamePathParameter' - - $ref: '#/components/parameters/MicrosoftTeamsTeamNamePathParameter' - - $ref: '#/components/parameters/MicrosoftTeamsChannelNamePathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsGetChannelByNameResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get channel information by name - tags: - - Microsoft Teams Integration - /api/v2/integration/ms-teams/configuration/tenant-based-handles: - get: - description: >- - Get a list of all tenant-based handles from the Datadog Microsoft Teams - integration. - operationId: ListTenantBasedHandles - parameters: - - $ref: '#/components/parameters/MicrosoftTeamsTenantIDQueryParameter' - - $ref: '#/components/parameters/MicrosoftTeamsHandleNameQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandlesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all tenant-based handles - tags: - - Microsoft Teams Integration - post: - description: Create a tenant-based handle in the Datadog Microsoft Teams integration. - operationId: CreateTenantBasedHandle - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsCreateTenantBasedHandleRequest - description: Tenant-based handle payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create tenant-based handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/tenant-based-handles/{handle_id}: - delete: - description: >- - Delete a tenant-based handle from the Datadog Microsoft Teams - integration. - operationId: DeleteTenantBasedHandle - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete tenant-based handle - tags: - - Microsoft Teams Integration - get: - description: >- - Get the tenant, team, and channel information of a tenant-based handle - from the Datadog Microsoft Teams integration. - operationId: GetTenantBasedHandle - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get tenant-based handle information - tags: - - Microsoft Teams Integration - patch: - description: >- - Update a tenant-based handle from the Datadog Microsoft Teams - integration. - operationId: UpdateTenantBasedHandle - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsTenantBasedHandleIDPathParameter - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequest - description: Tenant-based handle payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update tenant-based handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/workflows-webhook-handles: - get: - description: >- - Get a list of all Workflows webhook handles from the Datadog Microsoft - Teams integration. - operationId: ListWorkflowsWebhookHandles - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandlesResponse - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workflows webhook handles - tags: - - Microsoft Teams Integration - post: - description: >- - Create a Workflows webhook handle in the Datadog Microsoft Teams - integration. - operationId: CreateWorkflowsWebhookHandle - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsCreateWorkflowsWebhookHandleRequest - description: Workflows Webhook handle payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Workflows webhook handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/ms-teams/configuration/workflows-webhook-handles/{handle_id}: - delete: - description: >- - Delete a Workflows webhook handle from the Datadog Microsoft Teams - integration. - operationId: DeleteWorkflowsWebhookHandle - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Workflows webhook handle - tags: - - Microsoft Teams Integration - get: - description: >- - Get the name of a Workflows webhook handle from the Datadog Microsoft - Teams integration. - operationId: GetWorkflowsWebhookHandle - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Workflows webhook handle information - tags: - - Microsoft Teams Integration - patch: - description: >- - Update a Workflows webhook handle from the Datadog Microsoft Teams - integration. - operationId: UpdateWorkflowsWebhookHandle - parameters: - - $ref: >- - #/components/parameters/MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest - description: Workflows Webhook handle payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponse - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '412': - $ref: '#/components/responses/PreconditionFailedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Workflows webhook handle - tags: - - Microsoft Teams Integration - x-codegen-request-body-name: body - /api/v2/integration/opsgenie/services: - get: - description: Get a list of all services from the Datadog Opsgenie integration. - operationId: ListOpsgenieServices - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServicesResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all service objects - tags: - - Opsgenie Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a new service object in the Opsgenie integration. - operationId: CreateOpsgenieService - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceCreateRequest' - description: Opsgenie service payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new service object - tags: - - Opsgenie Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integration/opsgenie/services/{integration_service_id}: - delete: - description: Delete a single service object in the Datadog Opsgenie integration. - operationId: DeleteOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a single service object - tags: - - Opsgenie Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a single service from the Datadog Opsgenie integration. - operationId: GetOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a single service object - tags: - - Opsgenie Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a single service object in the Datadog Opsgenie integration. - operationId: UpdateOpsgenieService - parameters: - - $ref: '#/components/parameters/OpsgenieServiceIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceUpdateRequest' - description: Opsgenie service payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OpsgenieServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a single service object - tags: - - Opsgenie Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/cloudflare/accounts: - get: - description: List Cloudflare accounts. - operationId: ListCloudflareAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Cloudflare accounts - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Cloudflare account. - operationId: CreateCloudflareAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Cloudflare account - tags: - - Cloudflare Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/cloudflare/accounts/{account_id}: - delete: - description: Delete a Cloudflare account. - operationId: DeleteCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Cloudflare account - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Cloudflare account. - operationId: GetCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Cloudflare account - tags: - - Cloudflare Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Cloudflare account. - operationId: UpdateCloudflareAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudflareAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Cloudflare account - tags: - - Cloudflare Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts: - get: - description: List Confluent accounts. - operationId: ListConfluentAccount - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Confluent accounts - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Confluent account. - operationId: CreateConfluentAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountCreateRequest' - description: Confluent payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}: - delete: - description: Delete a Confluent account with the provided account ID. - operationId: DeleteConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get the Confluent account with the provided account ID. - operationId: GetConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update the Confluent account with the provided account ID. - operationId: UpdateConfluentAccount - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountUpdateRequest' - description: Confluent payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources: - get: - description: >- - Get a Confluent resource for the account associated with the provided - ID. - operationId: ListConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourcesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Confluent Account resources - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: >- - Create a Confluent resource for the account associated with the provided - ID. - operationId: CreateConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceRequest' - description: Confluent payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add resource to Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/confluent-cloud/accounts/{account_id}/resources/{resource_id}: - delete: - description: >- - Delete a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: DeleteConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete resource from Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: >- - Get a Confluent resource with the provided resource id for the account - associated with the provided account ID. - operationId: GetConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get resource from Confluent account - tags: - - Confluent Cloud - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: >- - Update a Confluent resource with the provided resource id for the - account associated with the provided account ID. - operationId: UpdateConfluentResource - parameters: - - $ref: '#/components/parameters/ConfluentAccountID' - - $ref: '#/components/parameters/ConfluentResourceID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceRequest' - description: Confluent payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ConfluentResourceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update resource in Confluent account - tags: - - Confluent Cloud - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts: - get: - description: List Fastly accounts. - operationId: ListFastlyAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Fastly accounts - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Fastly account. - operationId: CreateFastlyAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Fastly account - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}: - delete: - description: Delete a Fastly account. - operationId: DeleteFastlyAccount - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Fastly account - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Fastly account. - operationId: GetFastlyAccount - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Fastly account - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Fastly account. - operationId: UpdateFastlyAccount - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Fastly account - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}/services: - get: - description: List Fastly services for an account. - operationId: ListFastlyServices - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Fastly services - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create a Fastly service for an account. - operationId: CreateFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Fastly service - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/fastly/accounts/{account_id}/services/{service_id}: - delete: - description: Delete a Fastly service for an account. - operationId: DeleteFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Fastly service - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get a Fastly service for an account. - operationId: GetFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Fastly service - tags: - - Fastly Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update a Fastly service for an account. - operationId: UpdateFastlyService - parameters: - - $ref: '#/components/parameters/FastlyAccountID' - - $ref: '#/components/parameters/FastlyServiceID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/FastlyServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Fastly service - tags: - - Fastly Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/okta/accounts: - get: - description: List Okta accounts. - operationId: ListOktaAccounts - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Okta accounts - tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - integrations_read - post: - description: Create an Okta account. - operationId: CreateOktaAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Add Okta account - tags: - - Okta Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations - /api/v2/integrations/okta/accounts/{account_id}: - delete: - description: Delete an Okta account. - operationId: DeleteOktaAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Okta account - tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - manage_integrations - get: - description: Get an Okta account. - operationId: GetOktaAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get Okta account - tags: - - Okta Integration - x-permission: - operator: OR - permissions: - - integrations_read - patch: - description: Update an Okta account. - operationId: UpdateOktaAccount - parameters: - - description: None - in: path - name: account_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OktaAccountResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Okta account - tags: - - Okta Integration - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - manage_integrations -components: - schemas: - AWSAccountsResponse: - description: AWS Accounts response body. - properties: - data: - description: List of AWS Account Integration Configs. - items: - $ref: '#/components/schemas/AWSAccountResponseData' - type: array - required: - - data - type: object - AWSAccountCreateRequest: - description: AWS Account Create Request body. - properties: - data: - $ref: '#/components/schemas/AWSAccountCreateRequestData' - required: - - data - type: object - AWSAccountResponse: - description: AWS Account response body. - properties: - data: - $ref: '#/components/schemas/AWSAccountResponseData' - required: - - data - type: object - AWSAccountUpdateRequest: - description: AWS Account Update Request body. - properties: - data: - $ref: '#/components/schemas/AWSAccountUpdateRequestData' - required: - - data - type: object - AWSNamespacesResponse: - description: AWS Namespaces response body. - properties: - data: - $ref: '#/components/schemas/AWSNamespacesResponseData' - required: - - data - type: object - AWSNewExternalIDResponse: - description: AWS External ID response body. - properties: - data: - $ref: '#/components/schemas/AWSNewExternalIDResponseData' - required: - - data - type: object - AWSIntegrationIamPermissionsResponse: - description: AWS Integration IAM Permissions response body. - properties: - data: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseData' - required: - - data - type: object - AWSLogsServicesResponse: - description: AWS Logs Services response body - properties: - data: - $ref: '#/components/schemas/AWSLogsServicesResponseData' - required: - - data - type: object - GCPSTSServiceAccountsResponse: - description: Object containing all your STS enabled accounts. - properties: - data: - description: Array of GCP STS enabled service accounts. - items: - $ref: '#/components/schemas/GCPSTSServiceAccount' - type: array - type: object - GCPSTSServiceAccountCreateRequest: - description: Data on your newly generated service account. - properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccountData' - type: object - GCPSTSServiceAccountResponse: - description: The account creation response. - properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccount' - type: object - GCPSTSServiceAccountUpdateRequest: - description: Service account info. - properties: - data: - $ref: '#/components/schemas/GCPSTSServiceAccountUpdateRequestData' - type: object - GCPSTSDelegateAccountResponse: - description: Your delegate service account response data. - properties: - data: - $ref: '#/components/schemas/GCPSTSDelegateAccount' - type: object - MicrosoftTeamsGetChannelByNameResponse: - description: Response with channel, team, and tenant ID information. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseData' - type: object - MicrosoftTeamsTenantBasedHandlesResponse: - description: Response with a list of tenant-based handles. - properties: - data: - description: An array of tenant-based handles. - example: - - attributes: - channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 - channelName: General - name: general-handle - teamId: 00000000-0000-0000-0000-000000000000 - teamName: Example Team - tenantId: 00000000-0000-0000-0000-000000000001 - tenantName: Company, Inc. - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: ms-teams-tenant-based-handle-info - - attributes: - channelId: 19:b41k24b14bn1nwffkernfkwrnfneubgk1@thread.tacv2 - channelName: General2 - name: general-handle-2 - teamId: 00000000-0000-0000-0000-000000000002 - teamName: Example Team 2 - tenantId: 00000000-0000-0000-0000-000000000003 - tenantName: Company, Inc. - id: 596da4af-0563-4097-90ff-07230c3f9db4 - type: ms-teams-tenant-based-handle-info - items: - $ref: >- - #/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseData - type: array - required: - - data - type: object - MicrosoftTeamsCreateTenantBasedHandleRequest: - description: Create tenant-based handle request. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleRequestData' - required: - - data - type: object - MicrosoftTeamsTenantBasedHandleResponse: - description: Response of a tenant-based handle. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleResponseData' - required: - - data - type: object - MicrosoftTeamsUpdateTenantBasedHandleRequest: - description: Update tenant-based handle request. - properties: - data: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateTenantBasedHandleRequestData - required: - - data - type: object - MicrosoftTeamsWorkflowsWebhookHandlesResponse: - description: Response with a list of Workflows webhook handles. - properties: - data: - description: An array of Workflows webhook handles. - example: - - attributes: - name: general-handle - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: workflows-webhook-handle - - attributes: - name: general-handle-2 - id: 596da4af-0563-4097-90ff-07230c3f9db4 - type: workflows-webhook-handle - items: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData - type: array - required: - - data - type: object - MicrosoftTeamsCreateWorkflowsWebhookHandleRequest: - description: Create Workflows webhook handle request. - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestData' - required: - - data - type: object - MicrosoftTeamsWorkflowsWebhookHandleResponse: - description: Response of a Workflows webhook handle. - properties: - data: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleResponseData - required: - - data - type: object - MicrosoftTeamsUpdateWorkflowsWebhookHandleRequest: - description: Update Workflows webhook handle request. - properties: - data: - $ref: >- - #/components/schemas/MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData - required: - - data - type: object - OpsgenieServicesResponse: - description: Response with a list of Opsgenie services. - properties: - data: - description: An array of Opsgenie services. - example: - - attributes: - custom_url: null - name: fake-opsgenie-service-name - region: us - id: 596da4af-0563-4097-90ff-07230c3f9db3 - type: opsgenie-service - - attributes: - custom_url: null - name: fake-opsgenie-service-name-2 - region: eu - id: 0d2937f1-b561-44fa-914a-99910f848014 - type: opsgenie-service - items: - $ref: '#/components/schemas/OpsgenieServiceResponseData' - type: array - required: - - data - type: object - OpsgenieServiceCreateRequest: - description: Create request for an Opsgenie service. - properties: - data: - $ref: '#/components/schemas/OpsgenieServiceCreateData' - required: - - data - type: object - OpsgenieServiceResponse: - description: Response of an Opsgenie service. - properties: - data: - $ref: '#/components/schemas/OpsgenieServiceResponseData' - required: - - data - type: object - OpsgenieServiceUpdateRequest: - description: Update request for an Opsgenie service. - properties: - data: - $ref: '#/components/schemas/OpsgenieServiceUpdateData' - required: - - data - type: object - CloudflareAccountsResponse: - description: The expected response schema when getting Cloudflare accounts. - properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/CloudflareAccountResponseData' - type: array - type: object - CloudflareAccountCreateRequest: - description: Payload schema when adding a Cloudflare account. - properties: - data: - $ref: '#/components/schemas/CloudflareAccountCreateRequestData' - required: - - data - type: object - CloudflareAccountResponse: - description: The expected response schema when getting a Cloudflare account. - properties: - data: - $ref: '#/components/schemas/CloudflareAccountResponseData' - type: object - CloudflareAccountUpdateRequest: - description: Payload schema when updating a Cloudflare account. - properties: - data: - $ref: '#/components/schemas/CloudflareAccountUpdateRequestData' - required: - - data - type: object - ConfluentAccountsResponse: - description: Confluent account returned by the API. - properties: - data: - description: The Confluent account. - items: - $ref: '#/components/schemas/ConfluentAccountResponseData' - type: array - type: object - ConfluentAccountCreateRequest: - description: Payload schema when adding a Confluent account. - properties: - data: - $ref: '#/components/schemas/ConfluentAccountCreateRequestData' - required: - - data - type: object - ConfluentAccountResponse: - description: The expected response schema when getting a Confluent account. - properties: - data: - $ref: '#/components/schemas/ConfluentAccountResponseData' - type: object - ConfluentAccountUpdateRequest: - description: The JSON:API request for updating a Confluent account. - properties: - data: - $ref: '#/components/schemas/ConfluentAccountUpdateRequestData' - required: - - data - type: object - ConfluentResourcesResponse: - description: Response schema when interacting with a list of Confluent resources. - properties: - data: - description: The JSON:API data attribute. - items: - $ref: '#/components/schemas/ConfluentResourceResponseData' - type: array - type: object - ConfluentResourceRequest: - description: The JSON:API request for updating a Confluent resource. - properties: - data: - $ref: '#/components/schemas/ConfluentResourceRequestData' - required: - - data - type: object - ConfluentResourceResponse: - description: Response schema when interacting with a Confluent resource. - properties: - data: - $ref: '#/components/schemas/ConfluentResourceResponseData' - type: object - FastlyAccountsResponse: - description: The expected response schema when getting Fastly accounts. - properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/FastlyAccountResponseData' - type: array - type: object - FastlyAccountCreateRequest: - description: Payload schema when adding a Fastly account. - properties: - data: - $ref: '#/components/schemas/FastlyAccountCreateRequestData' - required: - - data - type: object - FastlyAccountResponse: - description: The expected response schema when getting a Fastly account. - properties: - data: - $ref: '#/components/schemas/FastlyAccountResponseData' - type: object - FastlyAccountUpdateRequest: - description: Payload schema when updating a Fastly account. - properties: - data: - $ref: '#/components/schemas/FastlyAccountUpdateRequestData' - required: - - data - type: object - FastlyServicesResponse: - description: The expected response schema when getting Fastly services. - properties: - data: - description: The JSON:API data schema. - items: - $ref: '#/components/schemas/FastlyServiceData' - type: array - type: object - FastlyServiceRequest: - description: Payload schema for Fastly service requests. - properties: - data: - $ref: '#/components/schemas/FastlyServiceData' - required: - - data - type: object - FastlyServiceResponse: - description: The expected response schema when getting a Fastly service. - properties: - data: - $ref: '#/components/schemas/FastlyServiceData' - type: object - OktaAccountsResponse: - description: The expected response schema when getting Okta accounts. - properties: - data: - description: List of Okta accounts. - items: - $ref: '#/components/schemas/OktaAccountResponseData' - type: array - type: object - OktaAccountRequest: - description: Request object for an Okta account. - properties: - data: - $ref: '#/components/schemas/OktaAccount' - required: - - data - type: object - OktaAccountResponse: - description: Response object for an Okta account. - properties: - data: - $ref: '#/components/schemas/OktaAccount' - type: object - OktaAccountUpdateRequest: - description: Payload schema when updating an Okta account. - properties: - data: - $ref: '#/components/schemas/OktaAccountUpdateRequestData' - required: - - data - type: object - AWSAccountResponseData: - description: AWS Account response data. - properties: - attributes: - $ref: '#/components/schemas/AWSAccountResponseAttributes' - id: - $ref: '#/components/schemas/AWSAccountConfigID' - type: - $ref: '#/components/schemas/AWSAccountType' - required: - - id - - type - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - AWSAccountCreateRequestData: - description: AWS Account Create Request data. - properties: - attributes: - $ref: '#/components/schemas/AWSAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/AWSAccountType' - required: - - attributes - - type - type: object - AWSAccountUpdateRequestData: - description: AWS Account Update Request data. - properties: - attributes: - $ref: '#/components/schemas/AWSAccountUpdateRequestAttributes' - id: - $ref: '#/components/schemas/AWSAccountConfigID' - type: - $ref: '#/components/schemas/AWSAccountType' - required: - - attributes - - type - type: object - AWSNamespacesResponseData: - description: AWS Namespaces response data. - properties: - attributes: - $ref: '#/components/schemas/AWSNamespacesResponseAttributes' - id: - default: namespaces - description: The `AWSNamespacesResponseData` `id`. - example: namespaces - type: string - type: - $ref: '#/components/schemas/AWSNamespacesResponseDataType' - required: - - id - - type - type: object - AWSNewExternalIDResponseData: - description: AWS External ID response body. - properties: - attributes: - $ref: '#/components/schemas/AWSNewExternalIDResponseAttributes' - id: - default: external_id - description: The `AWSNewExternalIDResponseData` `id`. - example: external_id - type: string - type: - $ref: '#/components/schemas/AWSNewExternalIDResponseDataType' - required: - - id - - type - type: object - AWSIntegrationIamPermissionsResponseData: - description: AWS Integration IAM Permissions response data. - properties: - attributes: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseAttributes' - id: - default: permissions - description: The `AWSIntegrationIamPermissionsResponseData` `id`. - example: permissions - type: string - type: - $ref: '#/components/schemas/AWSIntegrationIamPermissionsResponseDataType' - type: object - AWSLogsServicesResponseData: - description: AWS Logs Services response body - properties: - attributes: - $ref: '#/components/schemas/AWSLogsServicesResponseAttributes' - id: - default: logs_services - description: The `AWSLogsServicesResponseData` `id`. - example: logs_services - type: string - type: - $ref: '#/components/schemas/AWSLogsServicesResponseDataType' - required: - - id - - type - type: object - GCPSTSServiceAccount: - description: Info on your service account. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - id: - description: Your service account's unique ID. - example: d291291f-12c2-22g4-j290-123456678897 - type: string - meta: - $ref: '#/components/schemas/GCPServiceAccountMeta' - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSServiceAccountData: - description: Additional metadata on your generated service account. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSServiceAccountUpdateRequestData: - description: Data on your service account. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSServiceAccountAttributes' - id: - description: Your service account's unique ID. - example: d291291f-12c2-22g4-j290-123456678897 - type: string - type: - $ref: '#/components/schemas/GCPServiceAccountType' - type: object - GCPSTSDelegateAccount: - description: Datadog principal service account info. - properties: - attributes: - $ref: '#/components/schemas/GCPSTSDelegateAccountAttributes' - id: - description: The ID of the delegate service account. - example: >- - ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com - type: string - type: - $ref: '#/components/schemas/GCPSTSDelegateAccountType' - type: object - MicrosoftTeamsChannelInfoResponseData: - description: Channel data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoResponseAttributes' - id: - description: The ID of the channel. - example: 19:b41k24b14bn1nwffkernfkwrnfneubgkr@thread.tacv2 - maxLength: 255 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsChannelInfoType' - type: object - MicrosoftTeamsTenantBasedHandleInfoResponseData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsTenantBasedHandleInfoResponseAttributes - id: - description: The ID of the tenant-based handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleInfoType' - type: object - MicrosoftTeamsTenantBasedHandleRequestData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsTenantBasedHandleRequestAttributes - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsTenantBasedHandleResponseData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' - id: - description: The ID of the tenant-based handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - type: object - MicrosoftTeamsUpdateTenantBasedHandleRequestData: - description: Tenant-based handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsTenantBasedHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsWorkflowsWebhookHandleResponseData: - description: Workflows Webhook handle data from a response. - properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookResponseAttributes - id: - description: The ID of the Workflows webhook handle. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - type: object - MicrosoftTeamsWorkflowsWebhookHandleRequestData: - description: Workflows Webhook handle data from a response. - properties: - attributes: - $ref: >- - #/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - required: - - type - - attributes - type: object - MicrosoftTeamsUpdateWorkflowsWebhookHandleRequestData: - description: Workflows Webhook handle data from a response. - properties: - attributes: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleAttributes' - type: - $ref: '#/components/schemas/MicrosoftTeamsWorkflowsWebhookHandleType' - required: - - type - - attributes - type: object - OpsgenieServiceResponseData: - description: Opsgenie service data from a response. - properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceResponseAttributes' - id: - description: The ID of the Opsgenie service. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - id - - type - - attributes - type: object - OpsgenieServiceCreateData: - description: Opsgenie service data for a create request. - properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceCreateAttributes' - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - type - - attributes - type: object - OpsgenieServiceUpdateData: - description: Opsgenie service for an update request. - properties: - attributes: - $ref: '#/components/schemas/OpsgenieServiceUpdateAttributes' - id: - description: The ID of the Opsgenie service. - example: 596da4af-0563-4097-90ff-07230c3f9db3 - maxLength: 100 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/OpsgenieServiceType' - required: - - id - - type - - attributes - type: object - CloudflareAccountResponseData: - description: Data object of a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountResponseAttributes' - id: - description: The ID of the Cloudflare account, a hash of the account name. - example: c1a8e059bfd1e911cf10b626340c9a54 - type: string - type: - $ref: '#/components/schemas/CloudflareAccountType' - required: - - attributes - - id - - type - type: object - CloudflareAccountCreateRequestData: - description: Data object for creating a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/CloudflareAccountType' - required: - - attributes - - type - type: object - CloudflareAccountUpdateRequestData: - description: Data object for updating a Cloudflare account. - properties: - attributes: - $ref: '#/components/schemas/CloudflareAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/CloudflareAccountType' - type: object - ConfluentAccountResponseData: - description: An API key and API secret pair that represents a Confluent account. - properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountResponseAttributes' - id: - description: A randomly generated ID associated with a Confluent account. - example: account_id_abc123 - type: string - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - id - - type - type: object - ConfluentAccountCreateRequestData: - description: The data body for adding a Confluent account. - properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - type - type: object - ConfluentAccountUpdateRequestData: - description: Data object for updating a Confluent account. - properties: - attributes: - $ref: '#/components/schemas/ConfluentAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/ConfluentAccountType' - required: - - attributes - - type - type: object - ConfluentResourceResponseData: - description: Confluent Cloud resource data. - properties: - attributes: - $ref: '#/components/schemas/ConfluentResourceResponseAttributes' - id: - description: The ID associated with the Confluent resource. - example: resource_id_abc123 - type: string - type: - $ref: '#/components/schemas/ConfluentResourceType' - required: - - attributes - - type - - id - type: object - ConfluentResourceRequestData: - description: JSON:API request for updating a Confluent resource. - properties: - attributes: - $ref: '#/components/schemas/ConfluentResourceRequestAttributes' - id: - description: The ID associated with a Confluent resource. - example: resource-id-123 - type: string - type: - $ref: '#/components/schemas/ConfluentResourceType' - required: - - attributes - - type - - id - type: object - FastlyAccountResponseData: - description: Data object of a Fastly account. - properties: - attributes: - $ref: '#/components/schemas/FastlyAccounResponseAttributes' - id: - description: The ID of the Fastly account, a hash of the account name. - example: abc123 - type: string - type: - $ref: '#/components/schemas/FastlyAccountType' - required: - - attributes - - id - - type - type: object - FastlyAccountCreateRequestData: - description: Data object for creating a Fastly account. - properties: - attributes: - $ref: '#/components/schemas/FastlyAccountCreateRequestAttributes' - type: - $ref: '#/components/schemas/FastlyAccountType' - required: - - attributes - - type - type: object - FastlyAccountUpdateRequestData: - description: Data object for updating a Fastly account. - properties: - attributes: - $ref: '#/components/schemas/FastlyAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/FastlyAccountType' - type: object - FastlyServiceData: - description: Data object for Fastly service requests. - properties: - attributes: - $ref: '#/components/schemas/FastlyServiceAttributes' - id: - description: The ID of the Fastly service. - example: abc123 - type: string - type: - $ref: '#/components/schemas/FastlyServiceType' - required: - - id - - type - type: object - OktaAccountResponseData: - description: Data object of an Okta account - properties: - attributes: - $ref: '#/components/schemas/OktaAccountAttributes' - id: - description: The ID of the Okta account, a UUID hash of the account name. - example: f749daaf-682e-4208-a38d-c9b43162c609 - type: string - type: - $ref: '#/components/schemas/OktaAccountType' - required: - - attributes - - id - - type - type: object - OktaAccount: - description: Schema for an Okta account. - properties: - attributes: - $ref: '#/components/schemas/OktaAccountAttributes' - id: - description: The ID of the Okta account, a UUID hash of the account name. - example: f749daaf-682e-4208-a38d-c9b43162c609 - type: string - type: - $ref: '#/components/schemas/OktaAccountType' - required: - - attributes - - type - type: object - OktaAccountUpdateRequestData: - description: Data object for updating an Okta account. - properties: - attributes: - $ref: '#/components/schemas/OktaAccountUpdateRequestAttributes' - type: - $ref: '#/components/schemas/OktaAccountType' - type: object - AWSAccountResponseAttributes: - description: AWS Account response attributes. - properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - created_at: - description: Timestamp of when the account integration was created. - format: date-time - readOnly: true - type: string - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - modified_at: - description: Timestamp of when the account integration was updated. - format: date-time - readOnly: true - type: string - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id - type: object - AWSAccountConfigID: - description: >- - Unique Datadog ID of the AWS Account Integration Config. - - To get the config ID for an account, use the [List all AWS - integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) - - endpoint and query by AWS Account ID. - example: 00000000-abcd-0001-0000-000000000000 - type: string - AWSAccountType: - default: account - description: AWS Account resource type. - enum: - - account - example: account - type: string - x-enum-varnames: - - ACCOUNT - AWSAccountCreateRequestAttributes: - description: The AWS Account Integration Config to be created. - properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id - - aws_partition - - auth_config - type: object - AWSAccountUpdateRequestAttributes: - description: The AWS Account Integration Config to be updated. - properties: - account_tags: - $ref: '#/components/schemas/AWSAccountTags' - auth_config: - $ref: '#/components/schemas/AWSAuthConfig' - aws_account_id: - $ref: '#/components/schemas/AWSAccountID' - aws_partition: - $ref: '#/components/schemas/AWSAccountPartition' - aws_regions: - $ref: '#/components/schemas/AWSRegions' - logs_config: - $ref: '#/components/schemas/AWSLogsConfig' - metrics_config: - $ref: '#/components/schemas/AWSMetricsConfig' - resources_config: - $ref: '#/components/schemas/AWSResourcesConfig' - traces_config: - $ref: '#/components/schemas/AWSTracesConfig' - required: - - aws_account_id - type: object - AWSNamespacesResponseAttributes: - description: AWS Namespaces response attributes. - properties: - namespaces: - description: AWS CloudWatch namespace. - example: - - AWS/ApiGateway - items: - example: AWS/ApiGateway - type: string - type: array - required: - - namespaces - type: object - AWSNamespacesResponseDataType: - default: namespaces - description: The `AWSNamespacesResponseData` `type`. - enum: - - namespaces - example: namespaces - type: string - x-enum-varnames: - - NAMESPACES - AWSNewExternalIDResponseAttributes: - description: AWS External ID response body. - properties: - external_id: - description: AWS IAM External ID for associated role. - example: acb8f6b8a844443dbb726d07dcb1a870 - type: string - required: - - external_id - type: object - AWSNewExternalIDResponseDataType: - default: external_id - description: The `AWSNewExternalIDResponseData` `type`. - enum: - - external_id - example: external_id - type: string - x-enum-varnames: - - EXTERNAL_ID - AWSIntegrationIamPermissionsResponseAttributes: - description: AWS Integration IAM Permissions response attributes. - properties: - permissions: - description: List of AWS IAM permissions required for the integration. - example: - - account:GetContactInformation - - amplify:ListApps - - amplify:ListArtifacts - - amplify:ListBackendEnvironments - - amplify:ListBranches - items: - example: account:GetContactInformation - type: string - type: array - required: - - permissions - type: object - AWSIntegrationIamPermissionsResponseDataType: - default: permissions - description: The `AWSIntegrationIamPermissionsResponseData` `type`. - enum: - - permissions - example: permissions - type: string - x-enum-varnames: - - PERMISSIONS - AWSLogsServicesResponseAttributes: - description: AWS Logs Services response body - properties: - logs_services: - description: List of AWS services that can send logs to Datadog - example: - - s3 - items: - example: s3 - type: string - type: array - required: - - logs_services - type: object - AWSLogsServicesResponseDataType: - default: logs_services - description: The `AWSLogsServicesResponseData` `type`. - enum: - - logs_services - example: logs_services - type: string - x-enum-varnames: - - LOGS_SERVICES - GCPSTSServiceAccountAttributes: - description: Attributes associated with your service account. - properties: - account_tags: - description: >- - Tags to be associated with GCP metrics and service checks from your - account. - items: - description: Account Level Tag - type: string - type: array - automute: - description: Silence monitors for expected GCE instance shutdowns. - type: boolean - client_email: - description: Your service account email address. - example: datadog-service-account@test-project.iam.gserviceaccount.com - type: string - cloud_run_revision_filters: - deprecated: true - description: >- - List of filters to limit the Cloud Run revisions that are pulled - into Datadog by using tags. - - Only Cloud Run revision resources that apply to specified filters - are imported into Datadog. - - **Note:** This field is deprecated. Instead, use - `monitored_resource_configs` with `type=cloud_run_revision` - example: - - $KEY:$VALUE - items: - description: Cloud Run revision filters - type: string - type: array - host_filters: - deprecated: true - description: >- - List of filters to limit the VM instances that are pulled into - Datadog by using tags. - - Only VM instance resources that apply to specified filters are - imported into Datadog. - - **Note:** This field is deprecated. Instead, use - `monitored_resource_configs` with `type=gce_instance` - example: - - $KEY:$VALUE - items: - description: VM instance filters - type: string - type: array - is_cspm_enabled: - description: >- - When enabled, Datadog will activate the Cloud Security Monitoring - product for this service account. Note: This requires - resource_collection_enabled to be set to true. - type: boolean - is_per_project_quota_enabled: - default: false - description: >- - When enabled, Datadog applies the `X-Goog-User-Project` header, - attributing Google Cloud billing and quota usage to the project - being monitored rather than the default service account project. - example: true - type: boolean - is_resource_change_collection_enabled: - default: false - description: >- - When enabled, Datadog scans for all resource change data in your - Google Cloud environment. - example: true - type: boolean - is_security_command_center_enabled: - default: false - description: >- - When enabled, Datadog will attempt to collect Security Command - Center Findings. Note: This requires additional permissions on the - service account. - example: true - type: boolean - metric_namespace_configs: - description: Configurations for GCP metric namespaces. - example: - - disabled: true - id: aiplatform - items: - $ref: '#/components/schemas/GCPMetricNamespaceConfig' - type: array - monitored_resource_configs: - description: Configurations for GCP monitored resources. - example: - - filters: - - $KEY:$VALUE - type: gce_instance - items: - $ref: '#/components/schemas/GCPMonitoredResourceConfig' - type: array - resource_collection_enabled: - description: >- - When enabled, Datadog scans for all resources in your GCP - environment. - type: boolean - type: object - GCPServiceAccountMeta: - description: Additional information related to your service account. - properties: - accessible_projects: - description: The current list of projects accessible from your service account. - items: - description: List of GCP projects. - type: string - type: array - type: object - GCPServiceAccountType: - default: gcp_service_account - description: The type of account. - enum: - - gcp_service_account - example: gcp_service_account - type: string - x-enum-varnames: - - GCP_SERVICE_ACCOUNT - GCPSTSDelegateAccountAttributes: - description: Your delegate account attributes. - properties: - delegate_account_email: - description: Your organization's Datadog principal email address. - example: >- - ddgci-1a19n28hb1a812221893@datadog-gci-sts-us5-prod.iam.gserviceaccount.com - type: string - type: object - GCPSTSDelegateAccountType: - default: gcp_sts_delegate - description: The type of account. - enum: - - gcp_sts_delegate - example: gcp_sts_delegate - type: string - x-enum-varnames: - - GCP_STS_DELEGATE - MicrosoftTeamsChannelInfoResponseAttributes: - description: Channel attributes. - properties: - is_primary: - description: Indicates if this is the primary channel. - example: true - maxLength: 255 - type: boolean - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - type: object - MicrosoftTeamsChannelInfoType: - default: ms-teams-channel-info - description: Channel info resource type. - enum: - - ms-teams-channel-info - example: ms-teams-channel-info - type: string - x-enum-varnames: - - MS_TEAMS_CHANNEL_INFO - MicrosoftTeamsTenantBasedHandleInfoResponseAttributes: - description: Tenant-based handle attributes. - properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - channel_name: - description: Channel name. - example: fake-channel-name - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - team_name: - description: Team name. - example: fake-team-name - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - tenant_name: - description: Tenant name. - example: fake-tenant-name - maxLength: 255 - type: string - type: object - MicrosoftTeamsTenantBasedHandleInfoType: - default: ms-teams-tenant-based-handle-info - description: Tenant-based handle resource type. - enum: - - ms-teams-tenant-based-handle-info - example: ms-teams-tenant-based-handle-info - type: string - x-enum-varnames: - - MS_TEAMS_TENANT_BASED_HANDLE_INFO - MicrosoftTeamsTenantBasedHandleRequestAttributes: - description: Tenant-based handle attributes. - properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - required: - - name - - channel_id - - team_id - - tenant_id - type: object - MicrosoftTeamsTenantBasedHandleType: - default: tenant-based-handle - description: Specifies the tenant-based handle resource type. - enum: - - tenant-based-handle - example: tenant-based-handle - type: string - x-enum-varnames: - - TENANT_BASED_HANDLE - MicrosoftTeamsTenantBasedHandleAttributes: - description: Tenant-based handle attributes. - properties: - channel_id: - description: Channel id. - example: fake-channel-id - maxLength: 255 - type: string - name: - description: Tenant-based handle name. - example: fake-handle-name - maxLength: 255 - type: string - team_id: - description: Team id. - example: 00000000-0000-0000-0000-000000000000 - maxLength: 255 - type: string - tenant_id: - description: Tenant id. - example: 00000000-0000-0000-0000-000000000001 - maxLength: 255 - type: string - type: object - MicrosoftTeamsWorkflowsWebhookResponseAttributes: - description: Workflows Webhook handle attributes. - properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - type: object - MicrosoftTeamsWorkflowsWebhookHandleType: - default: workflows-webhook-handle - description: Specifies the Workflows webhook handle resource type. - enum: - - workflows-webhook-handle - example: workflows-webhook-handle - type: string - x-enum-varnames: - - WORKFLOWS_WEBHOOK_HANDLE - MicrosoftTeamsWorkflowsWebhookHandleRequestAttributes: - description: Workflows Webhook handle attributes. - properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - url: - description: Workflows Webhook URL. - example: https://fake.url.com - maxLength: 255 - type: string - required: - - name - - url - type: object - MicrosoftTeamsWorkflowsWebhookHandleAttributes: - description: Workflows Webhook handle attributes. - properties: - name: - description: Workflows Webhook handle name. - example: fake-handle-name - maxLength: 255 - type: string - url: - description: Workflows Webhook URL. - example: https://fake.url.com - maxLength: 255 - type: string - type: object - OpsgenieServiceResponseAttributes: - description: The attributes from an Opsgenie service response. - properties: - custom_url: - description: The custom URL for a custom region. - example: null - nullable: true - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' - type: object - OpsgenieServiceType: - default: opsgenie-service - description: Opsgenie service resource type. - enum: - - opsgenie-service - example: opsgenie-service - type: string - x-enum-varnames: - - OPSGENIE_SERVICE - OpsgenieServiceCreateAttributes: - description: The Opsgenie service attributes for a create request. - properties: - custom_url: - description: The custom URL for a custom region. - example: https://example.com - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - opsgenie_api_key: - description: The Opsgenie API key for your Opsgenie service. - example: 00000000-0000-0000-0000-000000000000 - type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' - required: - - name - - opsgenie_api_key - - region - type: object - OpsgenieServiceUpdateAttributes: - description: The Opsgenie service attributes for an update request. - properties: - custom_url: - description: The custom URL for a custom region. - example: https://example.com - nullable: true - type: string - name: - description: The name for the Opsgenie service. - example: fake-opsgenie-service-name - maxLength: 100 - type: string - opsgenie_api_key: - description: The Opsgenie API key for your Opsgenie service. - example: 00000000-0000-0000-0000-000000000000 - type: string - region: - $ref: '#/components/schemas/OpsgenieServiceRegionType' - type: object - CloudflareAccountResponseAttributes: - description: Attributes object of a Cloudflare account. - properties: - email: - description: The email associated with the Cloudflare account. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - example: test-name - type: string - resources: - description: >- - An allowlist of resources, such as `web`, `dns`, `lb` (load - balancer), `worker`, that restricts pulling metrics from those - resources. - example: - - web - - dns - - lb - - worker - items: - type: string - type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 - items: - type: string - type: array - required: - - name - type: object - CloudflareAccountType: - default: cloudflare-accounts - description: The JSON:API type for this API. Should always be `cloudflare-accounts`. - enum: - - cloudflare-accounts - example: cloudflare-accounts - type: string - x-enum-varnames: - - CLOUDFLARE_ACCOUNTS - CloudflareAccountCreateRequestAttributes: - description: Attributes object for creating a Cloudflare account. - properties: - api_key: - description: The API key (or token) for the Cloudflare account. - example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - type: string - email: - description: >- - The email associated with the Cloudflare account. If an API key is - provided (and not a token), this field is also required. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - example: test-name - type: string - resources: - description: >- - An allowlist of resources to restrict pulling metrics for including - `'web', 'dns', 'lb' (load balancer), 'worker'`. - example: - - web - - dns - - lb - - worker - items: - type: string - type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 - items: - type: string - type: array - required: - - api_key - - name - type: object - CloudflareAccountUpdateRequestAttributes: - description: Attributes object for updating a Cloudflare account. - properties: - api_key: - description: The API key of the Cloudflare account. - example: a94a8fe5ccb19ba61c4c0873d391e987982fbbd3 - type: string - email: - description: >- - The email associated with the Cloudflare account. If an API key is - provided (and not a token), this field is also required. - example: test-email@example.com - type: string - name: - description: The name of the Cloudflare account. - type: string - resources: - description: >- - An allowlist of resources to restrict pulling metrics for including - `'web', 'dns', 'lb' (load balancer), 'worker'`. - example: - - web - - dns - - lb - - worker - items: - type: string - type: array - zones: - description: An allowlist of zones to restrict pulling metrics for. - example: - - zone_id_1 - - zone_id_2 - items: - type: string - type: array - required: - - api_key - type: object - ConfluentAccountResponseAttributes: - description: The attributes of a Confluent account. - properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - resources: - description: A list of Confluent resources associated with the Confluent account. - items: - $ref: '#/components/schemas/ConfluentResourceResponseAttributes' - type: array - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - api_key - type: object - ConfluentAccountType: - default: confluent-cloud-accounts - description: >- - The JSON:API type for this API. Should always be - `confluent-cloud-accounts`. - enum: - - confluent-cloud-accounts - example: confluent-cloud-accounts - type: string - x-enum-varnames: - - CONFLUENT_CLOUD_ACCOUNTS - ConfluentAccountCreateRequestAttributes: - description: Attributes associated with the account creation request. - properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - api_secret: - description: The API secret associated with your Confluent account. - example: test-api-secret-123 - type: string - resources: - description: A list of Confluent resources associated with the Confluent account. - items: - $ref: '#/components/schemas/ConfluentAccountResourceAttributes' - type: array - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - api_key - - api_secret - type: object - ConfluentAccountUpdateRequestAttributes: - description: Attributes object for updating a Confluent account. - properties: - api_key: - description: The API key associated with your Confluent account. - example: TESTAPIKEY123 - type: string - api_secret: - description: The API secret associated with your Confluent account. - example: test-api-secret-123 - type: string - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - api_key - - api_secret - type: object - ConfluentResourceResponseAttributes: - description: Model representation of a Confluent Cloud resource. - properties: - enable_custom_metrics: - default: false - description: >- - Enable the `custom.consumer_lag_offset` metric, which contains extra - metric tags. - example: false - type: boolean - id: - description: The ID associated with the Confluent resource. - example: resource_id_abc123 - type: string - resource_type: - description: >- - The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type - type: object - ConfluentResourceType: - default: confluent-cloud-resources - description: The JSON:API type for this request. - enum: - - confluent-cloud-resources - example: confluent-cloud-resources - type: string - x-enum-varnames: - - CONFLUENT_CLOUD_RESOURCES - ConfluentResourceRequestAttributes: - description: Attributes object for updating a Confluent resource. - properties: - enable_custom_metrics: - default: false - description: >- - Enable the `custom.consumer_lag_offset` metric, which contains extra - metric tags. - example: false - type: boolean - resource_type: - description: >- - The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type - type: object - FastlyAccounResponseAttributes: - description: Attributes object of a Fastly account. - properties: - name: - description: The name of the Fastly account. - example: test-name - type: string - services: - description: A list of services belonging to the parent account. - items: - $ref: '#/components/schemas/FastlyService' - type: array - required: - - name - type: object - FastlyAccountType: - default: fastly-accounts - description: The JSON:API type for this API. Should always be `fastly-accounts`. - enum: - - fastly-accounts - example: fastly-accounts - type: string - x-enum-varnames: - - FASTLY_ACCOUNTS - FastlyAccountCreateRequestAttributes: - description: Attributes object for creating a Fastly account. - properties: - api_key: - description: The API key for the Fastly account. - example: ABCDEFG123 - type: string - name: - description: The name of the Fastly account. - example: test-name - type: string - services: - description: A list of services belonging to the parent account. - items: - $ref: '#/components/schemas/FastlyService' - type: array - required: - - api_key - - name - type: object - FastlyAccountUpdateRequestAttributes: - description: Attributes object for updating a Fastly account. - properties: - api_key: - description: The API key of the Fastly account. - example: ABCDEFG123 - type: string - name: - description: The name of the Fastly account. - type: string - type: object - FastlyServiceAttributes: - description: Attributes object for Fastly service requests. - properties: - tags: - description: A list of tags for the Fastly service. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - type: object - FastlyServiceType: - default: fastly-services - description: The JSON:API type for this API. Should always be `fastly-services`. - enum: - - fastly-services - example: fastly-services - type: string - x-enum-varnames: - - FASTLY_SERVICES - OktaAccountAttributes: - description: Attributes object for an Okta account. - properties: - api_key: - description: The API key of the Okta account. - type: string - writeOnly: true - auth_method: - description: The authorization method for an Okta account. - example: oauth - type: string - client_id: - description: The Client ID of an Okta app integration. - type: string - client_secret: - description: The client secret of an Okta app integration. - type: string - writeOnly: true - domain: - description: The domain of the Okta account. - example: https://example.okta.com/ - type: string - name: - description: The name of the Okta account. - example: Okta-Prod - type: string - required: - - auth_method - - domain - - name - type: object - OktaAccountType: - default: okta-accounts - description: Account type for an Okta account. - enum: - - okta-accounts - example: okta-accounts - type: string - x-enum-varnames: - - OKTA_ACCOUNTS - OktaAccountUpdateRequestAttributes: - description: Attributes object for updating an Okta account. - properties: - api_key: - description: The API key of the Okta account. - type: string - writeOnly: true - auth_method: - description: The authorization method for an Okta account. - example: oauth - type: string - client_id: - description: The Client ID of an Okta app integration. - type: string - client_secret: - description: The client secret of an Okta app integration. - type: string - writeOnly: true - domain: - description: The domain associated with an Okta account. - example: https://dev-test.okta.com/ - type: string - required: - - auth_method - - domain - type: object - AWSAccountTags: - description: >- - Tags to apply to all hosts and metrics reporting for this account. - Defaults to `[]`. - items: - description: Tag in the form `key:value`. - example: env:prod - type: string - nullable: true - type: array - AWSAuthConfig: - description: AWS Authentication config. - oneOf: - - $ref: '#/components/schemas/AWSAuthConfigKeys' - - $ref: '#/components/schemas/AWSAuthConfigRole' - AWSAccountID: - description: AWS Account ID. - example: '123456789012' - type: string - AWSAccountPartition: - description: >- - AWS partition your AWS account is scoped to. Defaults to `aws`. - - See - [Partitions](https://docs.aws.amazon.com/whitepapers/latest/aws-fault-isolation-boundaries/partitions.html) - in the AWS documentation for more information. - enum: - - aws - - aws-cn - - aws-us-gov - example: aws - type: string - x-enum-varnames: - - AWS - - AWS_CN - - AWS_US_GOV - AWSRegions: - description: AWS Regions to collect data from. Defaults to `include_all`. - oneOf: - - $ref: '#/components/schemas/AWSRegionsIncludeAll' - - $ref: '#/components/schemas/AWSRegionsIncludeOnly' - AWSLogsConfig: - description: AWS Logs Collection config. - properties: - lambda_forwarder: - $ref: '#/components/schemas/AWSLambdaForwarderConfig' - type: object - AWSMetricsConfig: - description: AWS Metrics Collection config. - properties: - automute_enabled: - description: Enable EC2 automute for AWS metrics. Defaults to `true`. - example: true - type: boolean - collect_cloudwatch_alarms: - description: Enable CloudWatch alarms collection. Defaults to `false`. - example: false - type: boolean - collect_custom_metrics: - description: Enable custom metrics collection. Defaults to `false`. - example: false - type: boolean - enabled: - description: Enable AWS metrics collection. Defaults to `true`. - example: true - type: boolean - namespace_filters: - $ref: '#/components/schemas/AWSNamespaceFilters' - tag_filters: - description: AWS Metrics collection tag filters list. Defaults to `[]`. - items: - $ref: '#/components/schemas/AWSNamespaceTagFilter' - type: array - type: object - AWSResourcesConfig: - description: AWS Resources Collection config. - properties: - cloud_security_posture_management_collection: - description: >- - Enable Cloud Security Management to scan AWS resources for - vulnerabilities, misconfigurations, identity risks, and compliance - violations. Defaults to `false`. Requires `extended_collection` to - be set to `true`. - example: false - type: boolean - extended_collection: - description: >- - Whether Datadog collects additional attributes and configuration - information about the resources in your AWS account. Defaults to - `true`. Required for `cloud_security_posture_management_collection`. - example: true - type: boolean - type: object - AWSTracesConfig: - description: AWS Traces Collection config. - properties: - xray_services: - $ref: '#/components/schemas/XRayServicesList' - type: object - GCPMetricNamespaceConfig: - description: Configuration for a GCP metric namespace. - properties: - disabled: - default: false - description: >- - When disabled, Datadog does not collect metrics that are related to - this GCP metric namespace. - example: true - type: boolean - id: - description: The id of the GCP metric namespace. - example: aiplatform - type: string - type: object - GCPMonitoredResourceConfig: - description: Configuration for a GCP monitored resource. - properties: - filters: - description: >- - List of filters to limit the monitored resources that are pulled - into Datadog by using tags. - - Only monitored resources that apply to specified filters are - imported into Datadog. - example: - - $KEY:$VALUE - items: - description: A monitored resource filter - type: string - type: array - type: - $ref: '#/components/schemas/GCPMonitoredResourceConfigType' - type: object - OpsgenieServiceRegionType: - description: The region for the Opsgenie service. - enum: - - us - - eu - - custom - example: us - type: string - x-enum-varnames: - - US - - EU - - CUSTOM - ConfluentAccountResourceAttributes: - description: Attributes object for updating a Confluent resource. - properties: - enable_custom_metrics: - default: false - description: >- - Enable the `custom.consumer_lag_offset` metric, which contains extra - metric tags. - example: false - type: boolean - id: - description: The ID associated with a Confluent resource. - example: resource-id-123 - type: string - resource_type: - description: >- - The resource type of the Resource. Can be `kafka`, `connector`, - `ksql`, or `schema_registry`. - example: kafka - type: string - tags: - description: >- - A list of strings representing tags. Can be a single key, or - key-value pairs separated by a colon. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - resource_type - type: object - FastlyService: - description: The schema representation of a Fastly service. - properties: - id: - description: The ID of the Fastly service - example: 6abc7de6893AbcDe9fghIj - type: string - tags: - description: A list of tags for the Fastly service. - example: - - myTag - - myTag2:myValue - items: - type: string - type: array - required: - - id - type: object - AWSAuthConfigKeys: - description: >- - AWS Authentication config to integrate your account using an access key - pair. - properties: - access_key_id: - description: AWS Access Key ID. - example: AKIAIOSFODNN7EXAMPLE - type: string - secret_access_key: - description: AWS Secret Access Key. - example: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY - minLength: 1 - type: string - writeOnly: true - required: - - access_key_id - type: object - AWSAuthConfigRole: - description: AWS Authentication config to integrate your account using an IAM role. - properties: - external_id: - description: AWS IAM External ID for associated role. - type: string - role_name: - description: AWS IAM Role name. - example: DatadogIntegrationRole - maxLength: 576 - minLength: 1 - type: string - required: - - role_name - type: object - AWSRegionsIncludeAll: - description: Include all regions. Defaults to `true`. - properties: - include_all: - description: Include all regions. - example: true - type: boolean - required: - - include_all - type: object - AWSRegionsIncludeOnly: - description: Include only these regions. - properties: - include_only: - description: Include only these regions. - example: - - us-east-1 - items: - example: us-east-1 - type: string - type: array - required: - - include_only - type: object - AWSLambdaForwarderConfig: - description: >- - Log Autosubscription configuration for Datadog Forwarder Lambda - functions. Automatically set up triggers for existing - - and new logs for some services, ensuring no logs from new resources are - missed and saving time spent on manual configuration. - properties: - lambdas: - description: >- - List of Datadog Lambda Log Forwarder ARNs in your AWS account. - Defaults to `[]`. - items: - example: >- - arn:aws:lambda:us-east-1:123456789012:function:DatadogLambdaLogForwarder - type: string - type: array - log_source_config: - $ref: '#/components/schemas/AWSLambdaForwarderConfigLogSourceConfig' - sources: - description: >- - List of service IDs set to enable automatic log collection. Discover - the list of available services with the - - [Get list of AWS log ready - services](https://docs.datadoghq.com/api/latest/aws-logs-integration/#get-list-of-aws-log-ready-services) - endpoint. - items: - example: s3 - type: string - type: array - type: object - AWSNamespaceFilters: - description: AWS Metrics namespace filters. Defaults to `exclude_only`. - oneOf: - - $ref: '#/components/schemas/AWSNamespaceFiltersExcludeOnly' - - $ref: '#/components/schemas/AWSNamespaceFiltersIncludeOnly' - AWSNamespaceTagFilter: - description: >- - AWS Metrics Collection tag filters list. Defaults to `[]`. - - The array of custom AWS resource tags (in the form `key:value`) defines - a filter that Datadog uses when collecting metrics from a specified - service. - - Wildcards, such as `?` (match a single character) and `*` (match - multiple characters), and exclusion using `!` before the tag are - supported. - - For EC2, only hosts that match one of the defined tags will be imported - into Datadog. The rest will be ignored. - - For example, `env:production,instance-type:c?.*,!region:us-east-1`. - properties: - namespace: - description: >- - The AWS service for which the tag filters defined in `tags` will be - applied. - example: AWS/EC2 - type: string - tags: - description: >- - The AWS resource tags to filter on for the service specified by - `namespace`. - items: - description: Tag in the form `key:value`. - example: datadog:true - type: string - nullable: true - type: array - type: object - XRayServicesList: - description: AWS X-Ray services to collect traces from. Defaults to `include_only`. - oneOf: - - $ref: '#/components/schemas/XRayServicesIncludeAll' - - $ref: '#/components/schemas/XRayServicesIncludeOnly' - GCPMonitoredResourceConfigType: - description: >- - The GCP monitored resource type. Only a subset of resource types are - supported. - enum: - - cloud_function - - cloud_run_revision - - gce_instance - example: gce_instance - type: string - x-enum-varnames: - - CLOUD_FUNCTION - - CLOUD_RUN_REVISION - - GCE_INSTANCE - AWSLambdaForwarderConfigLogSourceConfig: - description: Log source configuration. - properties: - tag_filters: - description: List of AWS log source tag filters. Defaults to `[]`. - items: - $ref: '#/components/schemas/AWSLogSourceTagFilter' - type: array - type: object - AWSNamespaceFiltersExcludeOnly: - description: >- - Exclude only these namespaces from metrics collection. Defaults to - `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. - - `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by - default to reduce your AWS CloudWatch costs from `GetMetricData` API - calls. - properties: - exclude_only: - description: >- - Exclude only these namespaces from metrics collection. Defaults to - `["AWS/SQS", "AWS/ElasticMapReduce", "AWS/Usage"]`. - - `AWS/SQS`, `AWS/ElasticMapReduce`, and `AWS/Usage` are excluded by - default to reduce your AWS CloudWatch costs from `GetMetricData` API - calls. - example: - - AWS/SQS - - AWS/ElasticMapReduce - - AWS/Usage - items: - example: AWS/SQS - type: string - type: array - required: - - exclude_only - type: object - AWSNamespaceFiltersIncludeOnly: - description: Include only these namespaces. - properties: - include_only: - description: Include only these namespaces. - example: - - AWS/EC2 - items: - example: AWS/EC2 - type: string - type: array - required: - - include_only - type: object - XRayServicesIncludeAll: - description: Include all services. - properties: - include_all: - description: Include all services. - example: false - type: boolean - required: - - include_all - type: object - XRayServicesIncludeOnly: - description: Include only these services. Defaults to `[]`. - nullable: true - properties: - include_only: - description: Include only these services. - example: - - AWS/AppSync - items: - example: AWS/AppSync - type: string - type: array - required: - - include_only - type: object - AWSLogSourceTagFilter: - description: >- - AWS log source tag filter list. Defaults to `[]`. - - Array of log source to AWS resource tag mappings. Each mapping contains - a log source and its associated AWS resource tags (in `key:value` - format) used to filter logs submitted to Datadog. - - Tag filters are applied for tags on the AWS resource emitting logs; tags - associated with the log storage entity (such as a CloudWatch Log Group - or S3 Bucket) are not considered. - - For more information on resource tag filter syntax, [see AWS resource - exclusion](https://docs.datadoghq.com/account_management/billing/aws/#aws-resource-exclusion) - in the AWS integration billing page. - properties: - source: - description: >- - The AWS log source to which the tag filters defined in `tags` are - applied. - example: s3 - type: string - tags: - description: >- - The AWS resource tags to filter on for the log source specified by - `source`. - items: - description: Tag in the form `key:value`. - example: env:prod - type: string - nullable: true - type: array - type: object - responses: - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - UnauthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unauthorized - PreconditionFailedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Failed Precondition - parameters: - AWSAccountConfigIDPathParameter: - description: >- - Unique Datadog ID of the AWS Account Integration Config. To get the - config ID for an account, use the - - [List all AWS - integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) - endpoint and query by AWS Account ID. - in: path - name: aws_account_config_id - required: true - schema: - type: string - GCPSTSServiceAccountID: - description: Your GCP STS enabled service account's unique ID. - in: path - name: account_id - required: true - schema: - type: string - MicrosoftTeamsTenantNamePathParameter: - description: Your tenant name. - in: path - name: tenant_name - required: true - schema: - type: string - MicrosoftTeamsTeamNamePathParameter: - description: Your team name. - in: path - name: team_name - required: true - schema: - type: string - MicrosoftTeamsChannelNamePathParameter: - description: Your channel name. - in: path - name: channel_name - required: true - schema: - type: string - MicrosoftTeamsTenantIDQueryParameter: - description: Your tenant id. - in: query - name: tenant_id - required: false - schema: - type: string - MicrosoftTeamsHandleNameQueryParameter: - description: Your tenant-based handle name. - in: query - name: name - required: false - schema: - type: string - MicrosoftTeamsTenantBasedHandleIDPathParameter: - description: Your tenant-based handle id. - in: path - name: handle_id - required: true - schema: - type: string - MicrosoftTeamsWorkflowsWebhookHandleNameQueryParameter: - description: Your Workflows webhook handle name. - in: query - name: name - required: false - schema: - type: string - MicrosoftTeamsWorkflowsWebhookHandleIDPathParameter: - description: Your Workflows webhook handle id. - in: path - name: handle_id - required: true - schema: - type: string - OpsgenieServiceIDPathParameter: - description: The UUID of the service. - in: path - name: integration_service_id - required: true - schema: - type: string - ConfluentAccountID: - description: Confluent Account ID. - in: path - name: account_id - required: true - schema: - type: string - ConfluentResourceID: - description: Confluent Account Resource ID. - in: path - name: resource_id - required: true - schema: - type: string - FastlyAccountID: - description: Fastly Account id. - in: path - name: account_id - required: true - schema: - type: string - FastlyServiceID: - description: Fastly Service ID. - in: path - name: service_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/logs.yaml b/provider-dev/source/logs.yaml deleted file mode 100644 index 614fe7e..0000000 --- a/provider-dev/source/logs.yaml +++ /dev/null @@ -1,3443 +0,0 @@ -openapi: 3.0.0 -info: - title: logs API - description: datadog logs API - version: '1.0' -paths: - /api/v2/logs: - post: - description: >- - Send your logs to your Datadog platform over HTTP. Limits per HTTP - request are: - - - - Maximum content size per payload (uncompressed): 5MB - - - Maximum size for a single log: 1MB - - - Maximum array size if sending multiple logs in an array: 1000 entries - - - Any log exceeding 1MB is accepted and truncated by Datadog: - - - For a single log request, the API truncates the log at 1MB and returns - a 2xx. - - - For a multi-logs request, the API processes all logs, truncates only - logs larger than 1MB, and returns a 2xx. - - - Datadog recommends sending your logs compressed. - - Add the `Content-Encoding: gzip` header to the request when sending - compressed logs. - - Log events can be submitted with a timestamp that is up to 18 hours in - the past. - - - The status codes answered by the HTTP API are: - - - 202: Accepted: the request has been accepted for processing - - - 400: Bad request (likely an issue in the payload formatting) - - - 401: Unauthorized (likely a missing API Key) - - - 403: Permission issue (likely using an invalid API Key) - - - 408: Request Timeout, request should be retried after some time - - - 413: Payload too large (batch is above 5MB uncompressed) - - - 429: Too Many Requests, request should be retried after some time - - - 500: Internal Server Error, the server encountered an unexpected - condition that prevented it from fulfilling the request, request should - be retried after some time - - - 503: Service Unavailable, the server is not ready to handle the - request probably because it is overloaded, request should be retried - after some time - operationId: SubmitLog - parameters: - - description: HTTP header used to compress the media-type. - in: header - name: Content-Encoding - required: false - schema: - $ref: '#/components/schemas/ContentEncoding' - - description: >- - Log tags can be passed as query parameters with `text/plain` content - type. - example: env:prod,user:my-user - in: query - name: ddtags - required: false - schema: - type: string - requestBody: - content: - application/json: - examples: - multi-json-messages: - description: Pass multiple log objects at once. - summary: Multi JSON Messages - value: - - ddsource: nginx - ddtags: env:staging,version:5.1 - hostname: i-012345678 - message: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - service: payment - - ddsource: nginx - ddtags: env:staging,version:5.1 - hostname: i-012345679 - message: 2019-11-19T14:37:58,995 INFO [process.name][20081] World - service: payment - simple-json-message: - description: >- - Log attributes can be passed as `key:value` pairs in valid - JSON messages. - summary: Simple JSON Message - value: - ddsource: nginx - ddtags: env:staging,version:5.1 - hostname: i-012345678 - message: >- - 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - World - service: payment - schema: - $ref: '#/components/schemas/HTTPLog' - application/logplex-1: - examples: - multi-raw-message: - description: Submit log messages. - summary: Multi Logplex Messages - value: |- - 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - 2019-11-19T14:37:58,995 INFO [process.name][20081] World - simple-logplex-message: - description: Submit log string. - summary: Simple Logplex Message - value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - schema: - type: string - text/plain: - examples: - multi-raw-message: - description: Submit log string. - summary: Multi Raw Messages - value: | - 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello - 2019-11-19T14:37:58,995 INFO [process.name][20081] World - simple-raw-message: - description: >- - Submit log string. Log attributes can be passed as query - parameters in the URL. This enables the addition of tags or - the source by using the `ddtags` and `ddsource` parameters: - `?host=my-hostname&service=my-service&ddsource=my-source&ddtags=env:prod,user:my-user`. - summary: Simple Raw Message - value: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - schema: - type: string - description: Log to send (JSON format). - required: true - responses: - '202': - content: - application/json: - schema: - type: object - description: Request accepted for processing (always 202 empty JSON). - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Bad Request - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Unauthorized - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Forbidden - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Request Timeout - '413': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Payload Too Large - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Too Many Requests - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Internal Server Error - '503': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPLogErrors' - description: Service Unavailable - security: - - apiKeyAuth: [] - servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: http-intake.logs - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: http-intake.logs.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: http-intake.logs - description: The subdomain where the API is deployed. - summary: Send logs - tags: - - Logs - x-codegen-request-body-name: body - /api/v2/logs/analytics/aggregate: - post: - description: >- - The API endpoint to aggregate events into buckets and compute metrics - and timeseries. - operationId: AggregateLogs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Aggregate events - tags: - - Logs - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_read_data - /api/v2/logs/config/archive-order: - get: - description: |- - Get the current order of your archives. - This endpoint takes no JSON arguments. - operationId: GetLogsArchiveOrder - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveOrder' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get archive order - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_read_config - put: - description: >- - Update the order of your archives. Since logs are processed - sequentially, reordering an archive may change - - the structure and content of the data processed by other archives. - - - **Note**: Using the `PUT` method updates your archive's order by - replacing the current order - - with the new one. - operationId: UpdateLogsArchiveOrder - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveOrder' - description: An object containing the new ordered list of archive IDs. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveOrder' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update archive order - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/archives: - get: - description: Get the list of configured logs archives with their definitions. - operationId: ListLogsArchives - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchives' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all archives - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_read_archives - post: - description: Create an archive in your organization. - operationId: CreateLogsArchive - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveCreateRequest' - description: The definition of the new archive. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchive' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/archives/{archive_id}: - delete: - description: Delete a given archive from your organization. - operationId: DeleteLogsArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an archive - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_write_archives - get: - description: Get a specific archive from your organization. - operationId: GetLogsArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchive' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an archive - tags: - - Logs Archives - x-permission: - operator: OR - permissions: - - logs_read_archives - put: - description: >- - Update a given archive configuration. - - - **Note**: Using this method updates your archive configuration by - **replacing** - - your current configuration with the new one sent to your Datadog - organization. - operationId: UpdateLogsArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchiveCreateRequest' - description: New definition of the archive. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsArchive' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/archives/{archive_id}/readers: - delete: - description: >- - Removes a role from an archive. ([Roles - API](https://docs.datadoghq.com/api/v2/roles/)) - operationId: RemoveRoleFromArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToRole' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Revoke role from an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - get: - description: Returns all read roles a given archive is restricted to. - operationId: ListArchiveReadRoles - parameters: - - $ref: '#/components/parameters/ArchiveID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RolesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List read roles for an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_read_config - post: - description: >- - Adds a read role to an archive. ([Roles - API](https://docs.datadoghq.com/api/v2/roles/)) - operationId: AddReadRoleToArchive - parameters: - - $ref: '#/components/parameters/ArchiveID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToRole' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Grant role to an archive - tags: - - Logs Archives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_archives - /api/v2/logs/config/custom-destinations: - get: - description: >- - Get the list of configured custom destinations in your organization with - their definitions. - operationId: ListLogsCustomDestinations - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all custom destinations - tags: - - Logs Custom Destinations - x-permission: - operator: OR - permissions: - - logs_read_config - - logs_read_data - post: - description: Create a custom destination in your organization. - operationId: CreateLogsCustomDestination - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationCreateRequest' - description: The definition of the new custom destination. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a custom destination - tags: - - Logs Custom Destinations - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_forwarding_rules - /api/v2/logs/config/custom-destinations/{custom_destination_id}: - delete: - description: Delete a specific custom destination in your organization. - operationId: DeleteLogsCustomDestination - parameters: - - $ref: '#/components/parameters/CustomDestinationId' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a custom destination - tags: - - Logs Custom Destinations - x-permission: - operator: OR - permissions: - - logs_write_forwarding_rules - get: - description: Get a specific custom destination in your organization. - operationId: GetLogsCustomDestination - parameters: - - $ref: '#/components/parameters/CustomDestinationId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a custom destination - tags: - - Logs Custom Destinations - x-permission: - operator: OR - permissions: - - logs_read_config - - logs_read_data - patch: - description: >- - Update the given fields of a specific custom destination in your - organization. - operationId: UpdateLogsCustomDestination - parameters: - - $ref: '#/components/parameters/CustomDestinationId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationUpdateRequest' - description: New definition of the custom destination's fields. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CustomDestinationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a custom destination - tags: - - Logs Custom Destinations - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_write_forwarding_rules - /api/v2/logs/config/metrics: - get: - description: Get the list of configured log-based metrics with their definitions. - operationId: ListLogsMetrics - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all log-based metrics - tags: - - Logs Metrics - x-permission: - operator: OR - permissions: - - logs_read_config - post: - description: >- - Create a metric based on your ingested logs in your organization. - - Returns the log-based metric object from the request body when the - request is successful. - operationId: CreateLogsMetric - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricCreateRequest' - description: The definition of the new log-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a log-based metric - tags: - - Logs Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_generate_metrics - /api/v2/logs/config/metrics/{metric_id}: - delete: - description: Delete a specific log-based metric from your organization. - operationId: DeleteLogsMetric - parameters: - - $ref: '#/components/parameters/MetricID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a log-based metric - tags: - - Logs Metrics - x-permission: - operator: OR - permissions: - - logs_generate_metrics - get: - description: Get a specific log-based metric from your organization. - operationId: GetLogsMetric - parameters: - - $ref: '#/components/parameters/MetricID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a log-based metric - tags: - - Logs Metrics - x-permission: - operator: OR - permissions: - - logs_read_config - patch: - description: >- - Update a specific log-based metric from your organization. - - Returns the log-based metric object from the request body when the - request is successful. - operationId: UpdateLogsMetric - parameters: - - $ref: '#/components/parameters/MetricID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricUpdateRequest' - description: New definition of the log-based metric. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsMetricResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a log-based metric - tags: - - Logs Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - logs_generate_metrics - /api/v2/logs/events: - get: - description: >- - List endpoint returns logs that match a log search query. - - [Results are paginated][1]. - - - Use this endpoint to search and filter your logs. - - - **If you are considering archiving logs for your organization, - - consider use of the Datadog archive capabilities instead of the log list - API. - - See [Datadog Logs Archive documentation][2].** - - - [1]: /logs/guide/collect-multiple-logs-with-pagination - - [2]: https://docs.datadoghq.com/logs/archives - operationId: ListLogsGet - parameters: - - description: Search query following logs syntax. - example: '@datacenter:us @role:db' - in: query - name: filter[query] - required: false - schema: - type: string - - description: |- - For customers with multiple indexes, the indexes to search. - Defaults to '*' which means all indexes - example: - - main - - web - explode: false - in: query - name: filter[indexes] - required: false - schema: - items: - description: The name of a log index. - type: string - type: array - - description: Minimum timestamp for requested logs. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested logs. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Specifies the storage type to be used - example: indexes - in: query - name: filter[storage_tier] - required: false - schema: - $ref: '#/components/schemas/LogsStorageTier' - - description: Order of logs in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/LogsSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of logs in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search logs (GET) - tags: - - Logs - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - logs_read_data - /api/v2/logs/events/search: - post: - description: >- - List endpoint returns logs that match a log search query. - - [Results are paginated][1]. - - - Use this endpoint to search and filter your logs. - - - **If you are considering archiving logs for your organization, - - consider use of the Datadog archive capabilities instead of the log list - API. - - See [Datadog Logs Archive documentation][2].** - - - [1]: /logs/guide/collect-multiple-logs-with-pagination - - [2]: https://docs.datadoghq.com/logs/archives - operationId: ListLogs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/LogsListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/LogsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search logs (POST) - tags: - - Logs - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - logs_read_data -components: - schemas: - ContentEncoding: - description: HTTP header used to compress the media-type. - enum: - - identity - - gzip - - deflate - type: string - x-enum-varnames: - - IDENTITY - - GZIP - - DEFLATE - HTTPLog: - description: Structured log message. - items: - $ref: '#/components/schemas/HTTPLogItem' - type: array - HTTPLogErrors: - description: Invalid query performed. - properties: - errors: - description: Structured errors. - items: - $ref: '#/components/schemas/HTTPLogError' - type: array - type: object - LogsAggregateRequest: - description: >- - The object sent with the request to retrieve a list of logs from your - organization. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/LogsCompute' - type: array - filter: - $ref: '#/components/schemas/LogsQueryFilter' - group_by: - description: The rules for the group by - items: - $ref: '#/components/schemas/LogsGroupBy' - type: array - options: - $ref: '#/components/schemas/LogsQueryOptions' - page: - $ref: '#/components/schemas/LogsAggregateRequestPage' - type: object - LogsAggregateResponse: - description: The response object for the logs aggregate API endpoint - properties: - data: - $ref: '#/components/schemas/LogsAggregateResponseData' - meta: - $ref: '#/components/schemas/LogsResponseMetadata' - type: object - LogsArchiveOrder: - description: A ordered list of archive IDs. - properties: - data: - $ref: '#/components/schemas/LogsArchiveOrderDefinition' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - LogsArchives: - description: The available archives. - properties: - data: - description: A list of archives. - items: - $ref: '#/components/schemas/LogsArchiveDefinition' - type: array - type: object - LogsArchiveCreateRequest: - description: The logs archive. - properties: - data: - $ref: '#/components/schemas/LogsArchiveCreateRequestDefinition' - type: object - LogsArchive: - description: The logs archive. - properties: - data: - $ref: '#/components/schemas/LogsArchiveDefinition' - type: object - RelationshipToRole: - description: Relationship to role. - properties: - data: - $ref: '#/components/schemas/RelationshipToRoleData' - type: object - RolesResponse: - description: Response containing information about multiple roles. - properties: - data: - description: Array of returned roles. - items: - $ref: '#/components/schemas/Role' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - CustomDestinationsResponse: - description: The available custom destinations. - properties: - data: - description: A list of custom destinations. - items: - $ref: '#/components/schemas/CustomDestinationResponseDefinition' - type: array - type: object - CustomDestinationCreateRequest: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationCreateRequestDefinition' - type: object - CustomDestinationResponse: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationResponseDefinition' - type: object - CustomDestinationUpdateRequest: - description: The custom destination. - properties: - data: - $ref: '#/components/schemas/CustomDestinationUpdateRequestDefinition' - type: object - LogsMetricsResponse: - description: All the available log-based metric objects. - properties: - data: - description: A list of log-based metric objects. - items: - $ref: '#/components/schemas/LogsMetricResponseData' - type: array - type: object - LogsMetricCreateRequest: - description: The new log-based metric body. - properties: - data: - $ref: '#/components/schemas/LogsMetricCreateData' - required: - - data - type: object - LogsMetricResponse: - description: The log-based metric object. - properties: - data: - $ref: '#/components/schemas/LogsMetricResponseData' - type: object - LogsMetricUpdateRequest: - description: The new log-based metric body. - properties: - data: - $ref: '#/components/schemas/LogsMetricUpdateData' - required: - - data - type: object - LogsStorageTier: - default: indexes - description: Specifies storage type as indexes, online-archives or flex - enum: - - indexes - - online-archives - - flex - example: indexes - type: string - x-enum-varnames: - - INDEXES - - ONLINE_ARCHIVES - - FLEX - LogsSort: - description: Sort parameters when querying logs. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - LogsListResponse: - description: >- - Response object with all logs matching the request and pagination - information. - properties: - data: - description: Array of logs matching the request. - items: - $ref: '#/components/schemas/Log' - type: array - links: - $ref: '#/components/schemas/LogsListResponseLinks' - meta: - $ref: '#/components/schemas/LogsResponseMetadata' - type: object - LogsListRequest: - description: The request for a logs list. - properties: - filter: - $ref: '#/components/schemas/LogsQueryFilter' - options: - $ref: '#/components/schemas/LogsQueryOptions' - page: - $ref: '#/components/schemas/LogsListRequestPage' - sort: - $ref: '#/components/schemas/LogsSort' - type: object - HTTPLogItem: - additionalProperties: - description: Additional log attributes. - description: Logs that are sent over HTTP. - properties: - ddsource: - description: >- - The integration name associated with your log: the technology from - which the log originated. - - When it matches an integration name, Datadog automatically installs - the corresponding parsers and facets. - - See [reserved - attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). - example: nginx - type: string - ddtags: - description: Tags associated with your logs. - example: env:staging,version:5.1 - type: string - hostname: - description: The name of the originating host of the log. - example: i-012345678 - type: string - message: - description: >- - The message [reserved - attribute](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes) - - of your log. By default, Datadog ingests the value of the message - attribute as the body of the log entry. - - That value is then highlighted and displayed in the Logstream, where - it is indexed for full text search. - example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - type: string - service: - description: >- - The name of the application or service generating the log events. - - It is used to switch from Logs to APM, so make sure you define the - same value when you use both products. - - See [reserved - attributes](https://docs.datadoghq.com/logs/log_configuration/attributes_naming_convention/#reserved-attributes). - example: payment - type: string - required: - - message - type: object - HTTPLogError: - description: List of errors. - properties: - detail: - description: Error message. - example: Malformed payload - type: string - status: - description: Error code. - example: '400' - type: string - title: - description: Error title. - example: Bad Request - type: string - type: object - LogsCompute: - description: A compute rule to compute metrics or timeseries - properties: - aggregation: - $ref: '#/components/schemas/LogsAggregationFunction' - interval: - description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points - example: 5m - type: string - metric: - description: The metric to use - example: '@duration' - type: string - type: - $ref: '#/components/schemas/LogsComputeType' - required: - - aggregation - type: object - LogsQueryFilter: - description: The search and filter query settings - properties: - from: - default: now-15m - description: >- - The minimum time for the requested logs, supports date math and - regular timestamps (milliseconds). - example: now-15m - type: string - indexes: - default: - - '*' - description: >- - For customers with multiple indexes, the indexes to search. Defaults - to ['*'] which means all indexes. - example: - - main - - web - items: - description: The name of a log index. - type: string - type: array - query: - default: '*' - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - storage_tier: - $ref: '#/components/schemas/LogsStorageTier' - to: - default: now - description: >- - The maximum time for the requested logs, supports date math and - regular timestamps (milliseconds). - example: now - type: string - type: object - LogsGroupBy: - description: A group by rule - properties: - facet: - description: The name of the facet to use (required) - example: host - type: string - histogram: - $ref: '#/components/schemas/LogsGroupByHistogram' - limit: - default: 10 - description: >- - The maximum buckets to return for this group by. Note: at most 10000 - buckets are allowed. - - If grouping by multiple facets, the product of limits must not - exceed 10000. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/LogsGroupByMissing' - sort: - $ref: '#/components/schemas/LogsAggregateSort' - total: - $ref: '#/components/schemas/LogsGroupByTotal' - required: - - facet - type: object - LogsQueryOptions: - deprecated: true - description: >- - Global query options that are used during the query. - - Note: These fields are currently deprecated and do not affect the query - results. - properties: - timeOffset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - LogsAggregateRequestPage: - description: Paging settings - properties: - cursor: - description: >- - The returned paging point to use to get the next results. Note: at - most 1000 results can be paged. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - LogsAggregateResponseData: - description: The query results - properties: - buckets: - description: The list of matching buckets, one item per bucket - items: - $ref: '#/components/schemas/LogsAggregateBucket' - type: array - type: object - LogsResponseMetadata: - description: The metadata associated with a request - properties: - elapsed: - description: The time elapsed in milliseconds - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/LogsResponseMetadataPage' - request_id: - description: The identifier of the request - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/LogsAggregateResponseStatus' - warnings: - description: >- - A list of warnings (non fatal errors) encountered, partial results - might be returned if - - warnings are present in the response. - items: - $ref: '#/components/schemas/LogsWarning' - type: array - type: object - LogsArchiveOrderDefinition: - description: The definition of an archive order. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveOrderAttributes' - type: - $ref: '#/components/schemas/LogsArchiveOrderDefinitionType' - required: - - type - - attributes - type: object - LogsArchiveDefinition: - description: The definition of an archive. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveAttributes' - id: - description: The archive ID. - example: a2zcMylnM4OCHpYusxIi3g - readOnly: true - type: string - type: - default: archives - description: The type of the resource. The value should always be archives. - example: archives - readOnly: true - type: string - required: - - type - type: object - LogsArchiveCreateRequestDefinition: - description: The definition of an archive. - properties: - attributes: - $ref: '#/components/schemas/LogsArchiveCreateRequestAttributes' - type: - default: archives - description: The type of the resource. The value should always be archives. - example: archives - type: string - required: - - type - type: object - RelationshipToRoleData: - description: Relationship to role object. - properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - type: - $ref: '#/components/schemas/RolesType' - type: object - Role: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - ResponseMetaAttributes: - description: Object describing meta attributes of response. - properties: - page: - $ref: '#/components/schemas/Pagination' - type: object - CustomDestinationResponseDefinition: - description: The definition of a custom destination. - properties: - attributes: - $ref: '#/components/schemas/CustomDestinationResponseAttributes' - id: - description: The custom destination ID. - example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 - readOnly: true - type: string - type: - $ref: '#/components/schemas/CustomDestinationType' - type: object - CustomDestinationCreateRequestDefinition: - description: The definition of a custom destination. - properties: - attributes: - $ref: '#/components/schemas/CustomDestinationCreateRequestAttributes' - type: - $ref: '#/components/schemas/CustomDestinationType' - required: - - type - - attributes - type: object - CustomDestinationUpdateRequestDefinition: - description: The definition of a custom destination. - properties: - attributes: - $ref: '#/components/schemas/CustomDestinationUpdateRequestAttributes' - id: - description: The custom destination ID. - example: be5d7a69-d0c8-4d4d-8ee8-bba292d98139 - type: string - type: - $ref: '#/components/schemas/CustomDestinationType' - required: - - type - - id - type: object - LogsMetricResponseData: - description: The log-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/LogsMetricResponseAttributes' - id: - $ref: '#/components/schemas/LogsMetricID' - type: - $ref: '#/components/schemas/LogsMetricType' - type: object - LogsMetricCreateData: - description: The new log-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/LogsMetricCreateAttributes' - id: - $ref: '#/components/schemas/LogsMetricID' - type: - $ref: '#/components/schemas/LogsMetricType' - required: - - id - - type - - attributes - type: object - LogsMetricUpdateData: - description: The new log-based metric properties. - properties: - attributes: - $ref: '#/components/schemas/LogsMetricUpdateAttributes' - type: - $ref: '#/components/schemas/LogsMetricType' - required: - - type - - attributes - type: object - Log: - description: Object description of a log after being processed and stored by Datadog. - properties: - attributes: - $ref: '#/components/schemas/LogAttributes' - id: - description: Unique ID of the Log. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/LogType' - type: object - LogsListResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/logs/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - LogsListRequestPage: - description: Paging attributes for listing logs. - properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of logs in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - LogsAggregationFunction: - description: An aggregation function - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - LogsComputeType: - default: total - description: The type of compute - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - LogsGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - Note: at most 100 buckets are allowed, the number of buckets is (max - - min)/interval. - properties: - interval: - description: The bin size of the histogram buckets - example: 10 - format: double - type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out) - example: 100 - format: double - type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out) - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - LogsGroupByMissing: - description: The value to use for logs that don't have the facet used to group by - oneOf: - - $ref: '#/components/schemas/LogsGroupByMissingString' - - $ref: '#/components/schemas/LogsGroupByMissingNumber' - LogsAggregateSort: - description: A sort rule - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/LogsAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`) - example: '@duration' - type: string - order: - $ref: '#/components/schemas/LogsSortOrder' - type: - $ref: '#/components/schemas/LogsAggregateSortType' - type: object - LogsGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/LogsGroupByTotalBoolean' - - $ref: '#/components/schemas/LogsGroupByTotalString' - - $ref: '#/components/schemas/LogsGroupByTotalNumber' - LogsAggregateBucket: - description: A bucket values - properties: - by: - additionalProperties: - description: The values for each group by - description: The key, value pairs for each group by - example: - '@state': success - '@version': abc - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/LogsAggregateBucketValue' - description: >- - A map of the metric name -> value for regular compute or list of - values for a timeseries - type: object - type: object - LogsResponseMetadataPage: - description: Paging attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - LogsAggregateResponseStatus: - description: The status of the response - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - LogsWarning: - description: A warning message indicating something that went wrong with the query - properties: - code: - description: A unique code for this type of warning - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - LogsArchiveOrderAttributes: - description: The attributes associated with the archive order. - properties: - archive_ids: - description: >- - An ordered array of `` strings, the order of archive IDs - in the array - - define the overall archives order for Datadog. - example: - - a2zcMylnM4OCHpYusxIi1g - - a2zcMylnM4OCHpYusxIi2g - - a2zcMylnM4OCHpYusxIi3g - items: - description: A given archive ID. - type: string - type: array - required: - - archive_ids - type: object - LogsArchiveOrderDefinitionType: - default: archive_order - description: Type of the archive order definition. - enum: - - archive_order - example: archive_order - type: string - x-enum-varnames: - - ARCHIVE_ORDER - LogsArchiveAttributes: - description: The attributes associated with the archive. - properties: - destination: - $ref: '#/components/schemas/LogsArchiveDestination' - include_tags: - default: false - description: >- - To store the tags in the archive, set the value "true". - - If it is set to "false", the tags will be deleted when the logs are - sent to the archive. - example: false - type: boolean - name: - description: The archive name. - example: Nginx Archive - type: string - query: - description: >- - The archive query/filter. Logs matching this query are included in - the archive. - example: source:nginx - type: string - rehydration_max_scan_size_in_gb: - description: Maximum scan size for rehydration from this archive. - example: 100 - format: int64 - nullable: true - type: integer - rehydration_tags: - description: An array of tags to add to rehydrated logs from an archive. - example: - - team:intake - - team:app - items: - description: A given tag in the `:` format. - type: string - type: array - state: - $ref: '#/components/schemas/LogsArchiveState' - required: - - name - - query - - destination - type: object - LogsArchiveCreateRequestAttributes: - description: The attributes associated with the archive. - properties: - destination: - $ref: '#/components/schemas/LogsArchiveCreateRequestDestination' - include_tags: - default: false - description: >- - To store the tags in the archive, set the value "true". - - If it is set to "false", the tags will be deleted when the logs are - sent to the archive. - example: false - type: boolean - name: - description: The archive name. - example: Nginx Archive - type: string - query: - description: >- - The archive query/filter. Logs matching this query are included in - the archive. - example: source:nginx - type: string - rehydration_max_scan_size_in_gb: - description: Maximum scan size for rehydration from this archive. - example: 100 - format: int64 - nullable: true - type: integer - rehydration_tags: - description: An array of tags to add to rehydrated logs from an archive. - example: - - team:intake - - team:app - items: - description: A given tag in the `:` format. - type: string - type: array - required: - - name - - query - - destination - type: object - RolesType: - default: roles - description: Roles type. - enum: - - roles - example: roles - type: string - x-enum-varnames: - - ROLES - RoleAttributes: - description: Attributes of the role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: >- - The name of the role. The name is neither unique nor a stable - identifier of the role. - type: string - user_count: - description: Number of users with that role. - format: int64 - readOnly: true - type: integer - type: object - RoleResponseRelationships: - description: Relationships of the role object returned by the API. - properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' - type: object - Pagination: - description: Pagination object. - properties: - total_count: - description: Total count. - format: int64 - type: integer - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - CustomDestinationResponseAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: >- - Whether logs matching this custom destination should be forwarded or - not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: >- - List of [keys of - tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be filtered. - - - An empty list represents no restriction is in place and either all - or no tags will be - - forwarded depending on `forward_tags_restriction_list_type` - parameter. - example: - - datacenter - - host - items: - description: >- - The [key part of a - tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: >- - #/components/schemas/CustomDestinationAttributeTagsRestrictionListType - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationResponseForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: >- - The custom destination query filter. Logs matching this query are - forwarded to the destination. - example: source:nginx - type: string - type: object - CustomDestinationType: - default: custom_destination - description: >- - The type of the resource. The value should always be - `custom_destination`. - enum: - - custom_destination - example: custom_destination - type: string - x-enum-varnames: - - CUSTOM_DESTINATION - CustomDestinationCreateRequestAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: >- - Whether logs matching this custom destination should be forwarded or - not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: >- - List of [keys of - tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be filtered. - - - An empty list represents no restriction is in place and either all - or no tags will be - - forwarded depending on `forward_tags_restriction_list_type` - parameter. - example: - - datacenter - - host - items: - description: >- - The [key part of a - tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: >- - #/components/schemas/CustomDestinationAttributeTagsRestrictionListType - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: >- - The custom destination query and filter. Logs matching this query - are forwarded to the destination. - example: source:nginx - type: string - required: - - name - - forwarder_destination - type: object - CustomDestinationUpdateRequestAttributes: - description: The attributes associated with the custom destination. - properties: - enabled: - default: true - description: >- - Whether logs matching this custom destination should be forwarded or - not. - example: true - type: boolean - forward_tags: - default: true - description: Whether tags from the forwarded logs should be forwarded or not. - example: true - type: boolean - forward_tags_restriction_list: - default: [] - description: >- - List of [keys of - tags](https://docs.datadoghq.com/getting_started/tagging/#define-tags) - to be restricted from being forwarded. - - An empty list represents no restriction is in place and either all - or no tags will be forwarded depending on - `forward_tags_restriction_list_type` parameter. - example: - - datacenter - - host - items: - description: >- - The [key part of a - tag](https://docs.datadoghq.com/getting_started/tagging/#define-tags). - type: string - maxItems: 10 - minItems: 0 - type: array - forward_tags_restriction_list_type: - $ref: >- - #/components/schemas/CustomDestinationAttributeTagsRestrictionListType - forwarder_destination: - $ref: '#/components/schemas/CustomDestinationForwardDestination' - name: - description: The custom destination name. - example: Nginx logs - type: string - query: - default: '' - description: >- - The custom destination query and filter. Logs matching this query - are forwarded to the destination. - example: source:nginx - type: string - type: object - LogsMetricResponseAttributes: - description: The object describing a Datadog log-based metric. - properties: - compute: - $ref: '#/components/schemas/LogsMetricResponseCompute' - filter: - $ref: '#/components/schemas/LogsMetricResponseFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricResponseGroupBy' - type: array - type: object - LogsMetricID: - description: The name of the log-based metric. - example: logs.page.load.count - type: string - LogsMetricType: - default: logs_metrics - description: The type of the resource. The value should always be logs_metrics. - enum: - - logs_metrics - example: logs_metrics - type: string - x-enum-varnames: - - LOGS_METRICS - LogsMetricCreateAttributes: - description: The object describing the Datadog log-based metric to create. - properties: - compute: - $ref: '#/components/schemas/LogsMetricCompute' - filter: - $ref: '#/components/schemas/LogsMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricGroupBy' - type: array - required: - - compute - type: object - LogsMetricUpdateAttributes: - description: The log-based metric properties that will be updated. - properties: - compute: - $ref: '#/components/schemas/LogsMetricUpdateCompute' - filter: - $ref: '#/components/schemas/LogsMetricFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/LogsMetricGroupBy' - type: array - type: object - LogAttributes: - description: JSON object containing all log attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from your log. - example: - customAttribute: 123 - duration: 2345 - type: object - host: - description: Name of the machine from where the logs are being sent. - example: i-0123 - type: string - message: - description: >- - The message [reserved - attribute](https://docs.datadoghq.com/logs/log_collection/#reserved-attributes) - - of your log. By default, Datadog ingests the value of the message - attribute as the body of the log entry. - - That value is then highlighted and displayed in the Logstream, where - it is indexed for full text search. - example: Host connected to remote - type: string - service: - description: >- - The name of the application or service generating the log events. - - It is used to switch from Logs to APM, so make sure you define the - same - - value when you use both products. - example: agent - type: string - status: - description: Status of the message associated with your log. - example: INFO - type: string - tags: - description: Array of tags associated with your log. - example: - - team:A - items: - description: Tag associated with your log. - type: string - type: array - timestamp: - description: Timestamp of your log. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - LogType: - default: log - description: Type of the event. - enum: - - log - example: log - type: string - x-enum-varnames: - - LOG - LogsGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - LogsGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - LogsSortOrder: - description: The order to use, ascending or descending - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - LogsAggregateSortType: - default: alphabetical - description: The type of sorting algorithm - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - LogsGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total" - type: boolean - LogsGroupByTotalString: - description: A string to use as the key value for the total bucket - type: string - LogsGroupByTotalNumber: - description: A number to use as the key value for the total bucket - format: double - type: number - LogsAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value - oneOf: - - $ref: '#/components/schemas/LogsAggregateBucketValueSingleString' - - $ref: '#/components/schemas/LogsAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/LogsAggregateBucketValueTimeseries' - LogsArchiveDestination: - description: An archive's destination. - nullable: true - oneOf: - - $ref: '#/components/schemas/LogsArchiveDestinationAzure' - - $ref: '#/components/schemas/LogsArchiveDestinationGCS' - - $ref: '#/components/schemas/LogsArchiveDestinationS3' - type: object - LogsArchiveState: - description: The state of the archive. - enum: - - UNKNOWN - - WORKING - - FAILING - - WORKING_AUTH_LEGACY - example: WORKING - type: string - x-enum-varnames: - - UNKNOWN - - WORKING - - FAILING - - WORKING_AUTH_LEGACY - LogsArchiveCreateRequestDestination: - description: An archive's destination. - oneOf: - - $ref: '#/components/schemas/LogsArchiveDestinationAzure' - - $ref: '#/components/schemas/LogsArchiveDestinationGCS' - - $ref: '#/components/schemas/LogsArchiveDestinationS3' - RelationshipToPermissions: - description: Relationship to multiple permissions objects. - properties: - data: - description: Relationships to permission objects. - items: - $ref: '#/components/schemas/RelationshipToPermissionData' - type: array - type: object - CustomDestinationAttributeTagsRestrictionListType: - default: ALLOW_LIST - description: >- - How `forward_tags_restriction_list` parameter should be interpreted. - - If `ALLOW_LIST`, then only tags whose keys on the forwarded logs match - the ones on the restriction list - - are forwarded. - - - `BLOCK_LIST` works the opposite way. It does not forward the tags - matching the ones on the list. - enum: - - ALLOW_LIST - - BLOCK_LIST - example: ALLOW_LIST - type: string - x-enum-varnames: - - ALLOW_LIST - - BLOCK_LIST - CustomDestinationResponseForwardDestination: - description: A custom destination's location to forward logs. - oneOf: - - $ref: '#/components/schemas/CustomDestinationResponseForwardDestinationHttp' - - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationSplunk - - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationElasticsearch - - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinel - CustomDestinationForwardDestination: - description: A custom destination's location to forward logs. - oneOf: - - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttp' - - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunk' - - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationElasticsearch - - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinel - LogsMetricResponseCompute: - description: The compute rule to compute the log-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/LogsMetricResponseComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - path: - description: >- - The path to the value the log-based metric will aggregate on (only - used if the aggregation type is a "distribution"). - example: '@duration' - type: string - type: object - LogsMetricResponseFilter: - description: >- - The log-based metric filter. Logs matching this filter will be - aggregated in this metric. - properties: - query: - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - type: object - LogsMetricResponseGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the log-based metric will be aggregated over. - example: '@http.status_code' - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. - example: status_code - type: string - type: object - LogsMetricCompute: - description: The compute rule to compute the log-based metric. - properties: - aggregation_type: - $ref: '#/components/schemas/LogsMetricComputeAggregationType' - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - path: - description: >- - The path to the value the log-based metric will aggregate on (only - used if the aggregation type is a "distribution"). - example: '@duration' - type: string - required: - - aggregation_type - type: object - LogsMetricFilter: - description: >- - The log-based metric filter. Logs matching this filter will be - aggregated in this metric. - properties: - query: - default: '*' - description: The search query - following the log search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - type: object - LogsMetricGroupBy: - description: A group by rule. - properties: - path: - description: The path to the value the log-based metric will be aggregated over. - example: '@http.status_code' - type: string - tag_name: - description: >- - Eventual name of the tag that gets created. By default, the path - attribute is used as the tag name. - example: status_code - type: string - required: - - path - type: object - LogsMetricUpdateCompute: - description: The compute rule to compute the log-based metric. - properties: - include_percentiles: - $ref: '#/components/schemas/LogsMetricComputeIncludePercentiles' - type: object - LogsAggregateBucketValueSingleString: - description: A single string value - type: string - LogsAggregateBucketValueSingleNumber: - description: A single number value - format: double - type: number - LogsAggregateBucketValueTimeseries: - description: A timeseries array - items: - $ref: '#/components/schemas/LogsAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - LogsArchiveDestinationAzure: - description: The Azure archive destination. - properties: - container: - description: The container where the archive will be stored. - example: container-name - type: string - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationAzure' - path: - description: The archive path. - type: string - region: - description: The region where the archive will be stored. - type: string - storage_account: - description: The associated storage account. - example: account-name - type: string - type: - $ref: '#/components/schemas/LogsArchiveDestinationAzureType' - required: - - storage_account - - container - - integration - - type - type: object - LogsArchiveDestinationGCS: - description: The GCS archive destination. - properties: - bucket: - description: The bucket where the archive will be stored. - example: bucket-name - type: string - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationGCS' - path: - description: The archive path. - type: string - type: - $ref: '#/components/schemas/LogsArchiveDestinationGCSType' - required: - - bucket - - integration - - type - type: object - LogsArchiveDestinationS3: - description: The S3 archive destination. - properties: - bucket: - description: The bucket where the archive will be stored. - example: bucket-name - type: string - encryption: - $ref: '#/components/schemas/LogsArchiveEncryptionS3' - integration: - $ref: '#/components/schemas/LogsArchiveIntegrationS3' - path: - description: The archive path. - type: string - storage_class: - $ref: '#/components/schemas/LogsArchiveStorageClassS3Type' - type: - $ref: '#/components/schemas/LogsArchiveDestinationS3Type' - required: - - bucket - - integration - - type - type: object - RelationshipToPermissionData: - description: Relationship to permission object. - properties: - id: - description: ID of the permission. - type: string - type: - $ref: '#/components/schemas/PermissionsType' - type: object - CustomDestinationResponseForwardDestinationHttp: - description: The HTTP destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationResponseHttpDestinationAuth' - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationHttpType - required: - - type - - endpoint - - auth - type: object - CustomDestinationResponseForwardDestinationSplunk: - description: The Splunk HTTP Event Collector (HEC) destination. - properties: - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationSplunkType - required: - - type - - endpoint - type: object - CustomDestinationResponseForwardDestinationElasticsearch: - description: The Elasticsearch destination. - properties: - auth: - $ref: >- - #/components/schemas/CustomDestinationResponseElasticsearchDestinationAuth - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - index_name: - description: >- - Name of the Elasticsearch index (must follow [Elasticsearch's - criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). - example: nginx-logs - type: string - index_rotation: - description: >- - Date pattern with US locale and UTC timezone to be appended to the - index name after adding `-` - - (that is, `${index_name}-${indexPattern}`). - - You can customize the index rotation naming pattern by choosing one - of these options: - - - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: - `2022-10-19-09`) - - - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) - - - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) - - - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) - - - If this field is missing or is blank, it means that the index name - will always be the same - - (that is, no rotation). - example: yyyy-MM-dd - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationElasticsearchType - required: - - type - - endpoint - - auth - - index_name - type: object - CustomDestinationResponseForwardDestinationMicrosoftSentinel: - description: The Microsoft Sentinel destination. - properties: - client_id: - description: Client ID from the Datadog Azure integration. - example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 - type: string - data_collection_endpoint: - description: Azure data collection endpoint. - example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com - type: string - data_collection_rule_id: - description: Azure data collection rule ID. - example: dcr-000a00a000a00000a000000aa000a0aa - type: string - stream_name: - description: Azure stream name. - example: Custom-MyTable - type: string - writeOnly: true - tenant_id: - description: Tenant ID from the Datadog Azure integration. - example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseForwardDestinationMicrosoftSentinelType - required: - - type - - tenant_id - - client_id - - data_collection_endpoint - - data_collection_rule_id - - stream_name - type: object - CustomDestinationForwardDestinationHttp: - description: The HTTP destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuth' - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationHttpType' - required: - - type - - endpoint - - auth - type: object - CustomDestinationForwardDestinationSplunk: - description: The Splunk HTTP Event Collector (HEC) destination. - properties: - access_token: - description: >- - Access token of the Splunk HTTP Event Collector. This field is not - returned by the API. - example: splunk_access_token - type: string - writeOnly: true - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - type: - $ref: '#/components/schemas/CustomDestinationForwardDestinationSplunkType' - required: - - type - - endpoint - - access_token - type: object - CustomDestinationForwardDestinationElasticsearch: - description: The Elasticsearch destination. - properties: - auth: - $ref: '#/components/schemas/CustomDestinationElasticsearchDestinationAuth' - endpoint: - description: >- - The destination for which logs will be forwarded to. - - Must have HTTPS scheme and forwarding back to Datadog is not - allowed. - example: https://example.com - type: string - index_name: - description: >- - Name of the Elasticsearch index (must follow [Elasticsearch's - criteria](https://www.elastic.co/guide/en/elasticsearch/reference/8.11/indices-create-index.html#indices-create-api-path-params)). - example: nginx-logs - type: string - index_rotation: - description: >- - Date pattern with US locale and UTC timezone to be appended to the - index name after adding `-` - - (that is, `${index_name}-${indexPattern}`). - - You can customize the index rotation naming pattern by choosing one - of these options: - - - Hourly: `yyyy-MM-dd-HH` (as an example, it would render: - `2022-10-19-09`) - - - Daily: `yyyy-MM-dd` (as an example, it would render: `2022-10-19`) - - - Weekly: `yyyy-'W'ww` (as an example, it would render: `2022-W42`) - - - Monthly: `yyyy-MM` (as an example, it would render: `2022-10`) - - - If this field is missing or is blank, it means that the index name - will always be the same - - (that is, no rotation). - example: yyyy-MM-dd - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationElasticsearchType - required: - - type - - endpoint - - auth - - index_name - type: object - CustomDestinationForwardDestinationMicrosoftSentinel: - description: The Microsoft Sentinel destination. - properties: - client_id: - description: Client ID from the Datadog Azure integration. - example: 9a2f4d83-2b5e-429e-a35a-2b3c4182db71 - type: string - data_collection_endpoint: - description: Azure data collection endpoint. - example: https://my-dce-5kyl.eastus-1.ingest.monitor.azure.com - type: string - data_collection_rule_id: - description: Azure data collection rule ID. - example: dcr-000a00a000a00000a000000aa000a0aa - type: string - stream_name: - description: Azure stream name. - example: Custom-MyTable - type: string - writeOnly: true - tenant_id: - description: Tenant ID from the Datadog Azure integration. - example: f3c9a8a1-4c2e-4d2e-b911-9f3c28c3c8b2 - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationForwardDestinationMicrosoftSentinelType - required: - - type - - tenant_id - - client_id - - data_collection_endpoint - - data_collection_rule_id - - stream_name - type: object - LogsMetricResponseComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - LogsMetricComputeIncludePercentiles: - description: >- - Toggle to include or exclude percentile aggregations for distribution - metrics. - - Only present when the `aggregation_type` is `distribution`. - example: true - type: boolean - LogsMetricComputeAggregationType: - description: The type of aggregation to use. - enum: - - count - - distribution - example: distribution - type: string - x-enum-varnames: - - COUNT - - DISTRIBUTION - LogsAggregateBucketValueTimeseriesPoint: - description: A timeseries point - properties: - time: - description: The time value for this point - example: '2020-06-08T11:55:00Z' - type: string - value: - description: The value for this point - example: 19 - format: double - type: number - type: object - LogsArchiveIntegrationAzure: - description: The Azure archive's integration destination. - properties: - client_id: - description: A client ID. - example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa - type: string - tenant_id: - description: A tenant ID. - example: aaaaaaaa-1a1a-1a1a-1a1a-aaaaaaaaaaaa - type: string - required: - - tenant_id - - client_id - type: object - LogsArchiveDestinationAzureType: - default: azure - description: Type of the Azure archive destination. - enum: - - azure - example: azure - type: string - x-enum-varnames: - - AZURE - LogsArchiveIntegrationGCS: - description: The GCS archive's integration destination. - properties: - client_email: - description: A client email. - example: youremail@example.com - type: string - project_id: - description: A project ID. - example: project-id - type: string - required: - - client_email - type: object - LogsArchiveDestinationGCSType: - default: gcs - description: Type of the GCS archive destination. - enum: - - gcs - example: gcs - type: string - x-enum-varnames: - - GCS - LogsArchiveEncryptionS3: - description: The S3 encryption settings. - properties: - key: - description: An Amazon Resource Name (ARN) used to identify an AWS KMS key. - example: arn:aws:kms:us-east-1:012345678901:key/DatadogIntegrationRoleKms - type: string - type: - $ref: '#/components/schemas/LogsArchiveEncryptionS3Type' - required: - - type - type: object - LogsArchiveIntegrationS3: - description: The S3 Archive's integration destination. - properties: - account_id: - description: The account ID for the integration. - example: '123456789012' - type: string - role_name: - description: The path of the integration. - example: role-name - type: string - required: - - role_name - - account_id - type: object - LogsArchiveStorageClassS3Type: - default: STANDARD - description: The storage class where the archive will be stored. - enum: - - STANDARD - - STANDARD_IA - - ONEZONE_IA - - INTELLIGENT_TIERING - - GLACIER_IR - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - STANDARD_IA - - ONEZONE_IA - - INTELLIGENT_TIERING - - GLACIER_IR - LogsArchiveDestinationS3Type: - default: s3 - description: Type of the S3 archive destination. - enum: - - s3 - example: s3 - type: string - x-enum-varnames: - - S3 - PermissionsType: - default: permissions - description: Permissions resource type. - enum: - - permissions - example: permissions - type: string - x-enum-varnames: - - PERMISSIONS - CustomDestinationResponseHttpDestinationAuth: - description: Authentication method of the HTTP requests. - oneOf: - - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthBasic - - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeader - CustomDestinationResponseForwardDestinationHttpType: - default: http - description: Type of the HTTP destination. - enum: - - http - example: http - type: string - x-enum-varnames: - - HTTP - CustomDestinationResponseForwardDestinationSplunkType: - default: splunk_hec - description: Type of the Splunk HTTP Event Collector (HEC) destination. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - CustomDestinationResponseElasticsearchDestinationAuth: - additionalProperties: - description: Basic access authentication. - description: Basic access authentication. - type: object - CustomDestinationResponseForwardDestinationElasticsearchType: - default: elasticsearch - description: Type of the Elasticsearch destination. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - CustomDestinationResponseForwardDestinationMicrosoftSentinelType: - default: microsoft_sentinel - description: Type of the Microsoft Sentinel destination. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - CustomDestinationHttpDestinationAuth: - description: Authentication method of the HTTP requests. - oneOf: - - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasic' - - $ref: >- - #/components/schemas/CustomDestinationHttpDestinationAuthCustomHeader - CustomDestinationForwardDestinationHttpType: - default: http - description: Type of the HTTP destination. - enum: - - http - example: http - type: string - x-enum-varnames: - - HTTP - CustomDestinationForwardDestinationSplunkType: - default: splunk_hec - description: Type of the Splunk HTTP Event Collector (HEC) destination. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - CustomDestinationElasticsearchDestinationAuth: - description: Basic access authentication. - properties: - password: - description: >- - The password of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-password - type: string - writeOnly: true - username: - description: >- - The username of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-username - type: string - writeOnly: true - required: - - username - - password - type: object - CustomDestinationForwardDestinationElasticsearchType: - default: elasticsearch - description: Type of the Elasticsearch destination. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - CustomDestinationForwardDestinationMicrosoftSentinelType: - default: microsoft_sentinel - description: Type of the Microsoft Sentinel destination. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - LogsArchiveEncryptionS3Type: - description: Type of S3 encryption for a destination. - enum: - - NO_OVERRIDE - - SSE_S3 - - SSE_KMS - example: SSE_S3 - type: string - x-enum-varnames: - - NO_OVERRIDE - - SSE_S3 - - SSE_KMS - CustomDestinationResponseHttpDestinationAuthBasic: - description: Basic access authentication. - properties: - type: - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthBasicType - required: - - type - type: object - CustomDestinationResponseHttpDestinationAuthCustomHeader: - description: Custom header access authentication. - properties: - header_name: - description: The header name of the authentication. - example: CUSTOM-HEADER-NAME - type: string - type: - $ref: >- - #/components/schemas/CustomDestinationResponseHttpDestinationAuthCustomHeaderType - required: - - type - - header_name - type: object - CustomDestinationHttpDestinationAuthBasic: - description: Basic access authentication. - properties: - password: - description: >- - The password of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-password - type: string - writeOnly: true - type: - $ref: '#/components/schemas/CustomDestinationHttpDestinationAuthBasicType' - username: - description: >- - The username of the authentication. This field is not returned by - the API. - example: datadog-custom-destination-username - type: string - writeOnly: true - required: - - type - - username - - password - type: object - CustomDestinationHttpDestinationAuthCustomHeader: - description: Custom header access authentication. - properties: - header_name: - description: The header name of the authentication. - example: CUSTOM-HEADER-NAME - type: string - header_value: - description: >- - The header value of the authentication. This field is not returned - by the API. - example: CUSTOM-HEADER-AUTHENTICATION-VALUE - type: string - writeOnly: true - type: - $ref: >- - #/components/schemas/CustomDestinationHttpDestinationAuthCustomHeaderType - required: - - type - - header_name - - header_value - type: object - CustomDestinationResponseHttpDestinationAuthBasicType: - default: basic - description: Type of the basic access authentication. - enum: - - basic - example: basic - type: string - x-enum-varnames: - - BASIC - CustomDestinationResponseHttpDestinationAuthCustomHeaderType: - default: custom_header - description: Type of the custom header access authentication. - enum: - - custom_header - example: custom_header - type: string - x-enum-varnames: - - CUSTOM_HEADER - CustomDestinationHttpDestinationAuthBasicType: - default: basic - description: Type of the basic access authentication. - enum: - - basic - example: basic - type: string - x-enum-varnames: - - BASIC - CustomDestinationHttpDestinationAuthCustomHeaderType: - default: custom_header - description: Type of the custom header access authentication. - enum: - - custom_header - example: custom_header - type: string - x-enum-varnames: - - CUSTOM_HEADER - responses: - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - parameters: - ArchiveID: - description: The ID of the archive. - in: path - name: archive_id - required: true - schema: - type: string - CustomDestinationId: - description: The ID of the custom destination. - in: path - name: custom_destination_id - required: true - schema: - type: string - MetricID: - description: The name of the log-based metric. - in: path - name: metric_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/metrics.yaml b/provider-dev/source/metrics.yaml deleted file mode 100644 index 4d9da02..0000000 --- a/provider-dev/source/metrics.yaml +++ /dev/null @@ -1,4404 +0,0 @@ -openapi: 3.0.0 -info: - title: metrics API - description: datadog metrics API - version: '1.0' -paths: - /api/v2/datasets: - get: - description: Get all datasets that have been configured for an organization. - operationId: GetAllDatasets - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseMulti' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get all datasets - tags: - - Datasets - x-permission: - operator: OR - permissions: - - user_access_read - x-unstable: |- - **Note: Data Access is in preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/).** - post: - description: Create a dataset with the configurations in the request. - operationId: CreateDataset - requestBody: - content: - application/json: - example: - data: - attributes: - name: Test RUM Dataset - principals: - - role:94172442-be03-11e9-a77a-3b7612558ac1 - product_filters: - - filters: - - '@application.id:application_123' - product: rum - type: dataset - schema: - $ref: '#/components/schemas/DatasetCreateRequest' - description: Dataset payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseSingle' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create a dataset - tags: - - Datasets - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - x-unstable: |- - **Note: Data Access is in preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/).** - /api/v2/datasets/{dataset_id}: - delete: - description: Deletes the dataset associated with the ID. - operationId: DeleteDataset - parameters: - - $ref: '#/components/parameters/DatasetID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Delete a dataset - tags: - - Datasets - x-permission: - operator: OR - permissions: - - user_access_manage - x-unstable: |- - **Note: Data Access is in preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/).** - get: - description: Retrieves the dataset associated with the ID. - operationId: GetDataset - parameters: - - $ref: '#/components/parameters/DatasetID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseSingle' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a single dataset by ID - tags: - - Datasets - x-permission: - operator: OPEN - permissions: [] - x-unstable: |- - **Note: Data Access is in preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/).** - put: - description: Edits the dataset associated with the ID. - operationId: UpdateDataset - parameters: - - $ref: '#/components/parameters/DatasetID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetUpdateRequest' - description: Dataset payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DatasetResponseSingle' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Edit a dataset - tags: - - Datasets - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - x-unstable: |- - **Note: Data Access is in preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/).** - /api/v2/metrics: - get: - description: >- - Returns all metrics that can be configured in the Metrics Summary page - or with Metrics without Limits™ (matching additional filters if - specified). - - Optionally, paginate by using the `page[cursor]` and/or `page[size]` - query parameters. - - To fetch the first page, pass in a query parameter with either a valid - `page[size]` or an empty cursor like `page[cursor]=`. To fetch the next - page, pass in the `next_cursor` value from the response as the new - `page[cursor]` value. - - Once the `meta.pagination.next_cursor` value is null, all pages have - been retrieved. - operationId: ListTagConfigurations - parameters: - - description: Filter custom metrics that have configured tags. - example: true - in: query - name: filter[configured] - required: false - schema: - type: boolean - - description: Filter tag configurations by configured tags. - example: app - in: query - name: filter[tags_configured] - required: false - schema: - description: Tag keys to filter by. - type: string - - description: Filter metrics by metric type. - in: query - name: filter[metric_type] - required: false - schema: - $ref: '#/components/schemas/MetricTagConfigurationMetricTypeCategory' - - description: |- - Filter distributions with additional percentile - aggregations enabled or disabled. - example: true - in: query - name: filter[include_percentiles] - required: false - schema: - type: boolean - - description: >- - (Preview) Filter custom metrics that have or have not been queried - in the specified window[seconds]. - - If no window is provided or the window is less than 2 hours, a - default of 2 hours will be applied. - example: true - in: query - name: filter[queried] - required: false - schema: - type: boolean - - description: >- - Filter metrics that have been submitted with the given tags. - Supports boolean and wildcard expressions. - - Can only be combined with the filter[queried] filter. - example: env IN (staging,test) AND service:web - in: query - name: filter[tags] - required: false - schema: - type: string - - description: >- - (Preview) Filter metrics that are used in dashboards, monitors, - notebooks, SLOs. - example: true - in: query - name: filter[related_assets] - required: false - schema: - type: boolean - - description: >- - The number of seconds of look back (from now) to apply to a - filter[tag] or filter[queried] query. - - Default value is 3600 (1 hour), maximum value is 2,592,000 (30 - days). - example: 3600 - in: query - name: window[seconds] - required: false - schema: - format: int64 - type: integer - - description: Maximum number of results returned. - in: query - name: page[size] - required: false - schema: - default: 10000 - format: int32 - maximum: 10000 - minimum: 1 - type: integer - - description: >- - String to query the next page of results. - - This key is provided with each valid response from the API in - `meta.pagination.next_cursor`. - - Once the `meta.pagination.next_cursor` key is null, all pages have - been retrieved. - in: query - name: page[cursor] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricsAndMetricTagConfigurationsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - metrics_read - summary: Get a list of metrics - tags: - - Metrics - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.pagination.next_cursor - limitParam: page[size] - resultsPath: data - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/config/bulk-tags: - delete: - description: >- - Delete all custom lists of queryable tag keys for a set of existing - count, gauge, rate, and distribution metrics. - - Metrics are selected by passing a metric name prefix. - - Results can be sent to a set of account email addresses, just like the - same operation in the Datadog web app. - - Can only be used with application keys of users with the `Manage Tags - for Metrics` permission. - operationId: DeleteBulkTagsMetricsConfiguration - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigDeleteRequest' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigResponse' - description: Accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Delete tags for multiple metrics - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - post: - description: >- - Create and define a list of queryable tag keys for a set of existing - count, gauge, rate, and distribution metrics. - - Metrics are selected by passing a metric name prefix. Use the Delete - method of this API path to remove tag configurations. - - Results can be sent to a set of account email addresses, just like the - same operation in the Datadog web app. - - If multiple calls include the same metric, the last configuration - applied (not by submit order) is used, do not - - expect deterministic ordering of concurrent calls. The - `exclude_tags_mode` value will set all metrics that match the prefix to - - the same exclusion state, metric tag configurations do not support mixed - inclusion and exclusion for tags on the same metric. - - Can only be used with application keys of users with the `Manage Tags - for Metrics` permission. - operationId: CreateBulkTagsMetricsConfiguration - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigCreateRequest' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricBulkTagConfigResponse' - description: Accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Configure tags for multiple metrics - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - /api/v2/metrics/{metric_name}/active-configurations: - get: - description: >- - List tags and aggregations that are actively queried on dashboards, - notebooks, monitors, the Metrics Explorer, and using the API for a given - metric name. - operationId: ListActiveMetricConfigurations - parameters: - - $ref: '#/components/parameters/MetricName' - - description: >- - The number of seconds of look back (from now). - - Default value is 604,800 (1 week), minimum value is 7200 (2 hours), - maximum value is 2,630,000 (1 month). - example: 7200 - in: query - name: window[seconds] - required: false - schema: - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/MetricSuggestedTagsAndAggregationsResponse - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: List active tags and aggregations - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/{metric_name}/all-tags: - get: - description: >- - View indexed tag key-value pairs for a given metric name over the - previous hour. - operationId: ListTagsByMetricName - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricAllTagsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - metrics_read - summary: List tags by metric name - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/{metric_name}/assets: - get: - description: >- - Returns dashboards, monitors, notebooks, and SLOs that a metric is - stored in, if any. Updated every 24 hours. - operationId: ListMetricAssets - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricAssetsResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Related Assets to a Metric - tags: - - Metrics - /api/v2/metrics/{metric_name}/estimate: - get: - description: >- - Returns the estimated cardinality for a metric with a given tag, - percentile and number of aggregations configuration using Metrics - without Limits™. - operationId: EstimateMetricsOutputSeries - parameters: - - $ref: '#/components/parameters/MetricName' - - description: Filtered tag keys that the metric is configured to query with. - example: app,host - in: query - name: filter[groups] - required: false - schema: - type: string - - description: >- - The number of hours of look back (from now) to estimate cardinality - with. If unspecified, it defaults to 0 hours. - example: 49 - in: query - name: filter[hours_ago] - required: false - schema: - format: int32 - maximum: 2147483647 - minimum: 49 - type: integer - - description: Deprecated. Number of aggregations has no impact on volume. - example: 1 - in: query - name: filter[num_aggregations] - required: false - schema: - format: int32 - maximum: 9 - type: integer - - description: >- - A boolean, for distribution metrics only, to estimate cardinality if - the metric includes additional percentile aggregators. - example: true - in: query - name: filter[pct] - required: false - schema: - type: boolean - - description: >- - A window, in hours, from the look back to estimate cardinality with. - The minimum and default is 1 hour. - example: 6 - in: query - name: filter[timespan_h] - required: false - schema: - format: int32 - maximum: 2147483647 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricEstimateResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Tag Configuration Cardinality Estimator - tags: - - Metrics - x-permission: - operator: OPEN - permissions: [] - /api/v2/metrics/{metric_name}/tag-cardinalities: - get: - description: Returns the cardinality details of tags for a specific metric. - operationId: GetMetricTagCardinalityDetails - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagCardinalitiesResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too Many Requests - summary: Get tag key cardinality details - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - /api/v2/metrics/{metric_name}/tags: - delete: - description: |- - Deletes a metric's tag configuration. Can only be used with application - keys from users with the `Manage Tags for Metrics` permission. - operationId: DeleteTagConfiguration - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Delete a tag configuration - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metric_tags_write - get: - description: Returns the tag configuration for the given metric name. - operationId: ListTagConfigurationByName - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: Success - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - metrics_read - summary: List tag configuration by name - tags: - - Metrics - x-permission: - operator: OR - permissions: - - metrics_read - patch: - description: >- - Update the tag configuration of a metric or percentile aggregations of a - distribution metric or custom aggregations - - of a count, rate, or gauge metric. By setting `exclude_tags_mode` to - true the behavior is changed - - from an allow-list to a deny-list, and tags in the defined list will not - be queryable. - - Can only be used with application keys from users with the `Manage Tags - for Metrics` permission. This endpoint requires - - a tag configuration to be created first. - operationId: UpdateTagConfiguration - parameters: - - $ref: '#/components/parameters/MetricName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Update a tag configuration - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - post: - description: >- - Create and define a list of queryable tag keys for an existing - count/gauge/rate/distribution metric. - - Optionally, include percentile aggregations on any distribution metric. - By setting `exclude_tags_mode` - - to true, the behavior is changed from an allow-list to a deny-list, and - tags in the defined list are - - not queryable. Can only be used with application keys of users with the - `Manage Tags for Metrics` - - permission. - operationId: CreateTagConfiguration - parameters: - - $ref: '#/components/parameters/MetricName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricTagConfigurationResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: Create a tag configuration - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - metric_tags_write - /api/v2/metrics/{metric_name}/volumes: - get: - description: >- - View distinct metrics volumes for the given metric name. - - - Custom metrics generated in-app from other products will return `null` - for ingested volumes. - operationId: ListVolumesByMetricName - parameters: - - $ref: '#/components/parameters/MetricName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MetricVolumesResponse' - description: Success - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too Many Requests - summary: List distinct metric volumes by metric name - tags: - - Metrics - x-permission: - operator: OPEN - permissions: [] - /api/v2/query/scalar: - post: - description: >- - Query scalar values (as seen on Query Value, Table, and Toplist - widgets). - - Multiple data sources are supported with the ability to - - process the data using formulas and functions. - operationId: QueryScalarData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScalarFormulaQueryRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ScalarFormulaQueryResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - timeseries_query - summary: Query scalar data across multiple products - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - timeseries_query - /api/v2/query/timeseries: - post: - description: |- - Query timeseries data across various data sources and - process the data by applying formulas and functions. - operationId: QueryTimeseriesData - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TimeseriesFormulaQueryRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TimeseriesFormulaQueryResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - timeseries_query - summary: Query timeseries data across multiple products - tags: - - Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - timeseries_query - /api/v2/series: - post: - description: >- - The metrics end-point allows you to post time-series data that can be - graphed on Datadog’s dashboards. - - The maximum payload size is 500 kilobytes (512000 bytes). Compressed - payloads must have a decompressed size of less than 5 megabytes (5242880 - bytes). - - - If you’re submitting metrics directly to the Datadog API without using - DogStatsD, expect: - - - - 64 bits for the timestamp - - - 64 bits for the value - - - 20 bytes for the metric names - - - 50 bytes for the timeseries - - - The full payload is approximately 100 bytes. - - - Host name is one of the resources in the Resources field. - operationId: SubmitMetrics - parameters: - - description: HTTP header used to compress the media-type. - in: header - name: Content-Encoding - required: false - schema: - $ref: '#/components/schemas/MetricContentEncoding' - requestBody: - content: - application/json: - examples: - dynamic-points: - description: >- - Post time-series data that can be graphed on Datadog’s - dashboards. - externalValue: examples/metrics/dynamic-points.json.sh - summary: Dynamic Points - x-variables: - NOW: $(date +%s) - schema: - $ref: '#/components/schemas/MetricPayload' - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/IntakePayloadAccepted' - description: Payload accepted - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Request timeout - '413': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Payload too large - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Submit metrics - tags: - - Metrics - x-codegen-request-body-name: body - /api/v2/spans/analytics/aggregate: - post: - description: >- - The API endpoint to aggregate spans into buckets and compute metrics and - timeseries. - - This endpoint is rate limited to `300` requests per hour. - operationId: AggregateSpans - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Aggregate spans - tags: - - Spans - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_read - /api/v2/spans/events: - get: - description: |- - List endpoint returns spans that match a span search query. - [Results are paginated][1]. - - Use this endpoint to see your latest spans. - This endpoint is rate limited to `300` requests per hour. - - [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api - operationId: ListSpansGet - parameters: - - description: Search query following spans syntax. - example: '@datacenter:us @role:db' - in: query - name: filter[query] - required: false - schema: - type: string - - description: >- - Minimum timestamp for requested spans. Supports date-time ISO8601, - date math, and regular timestamps (milliseconds). - example: '2023-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - type: string - - description: >- - Maximum timestamp for requested spans. Supports date-time ISO8601, - date math, and regular timestamps (milliseconds). - example: '2023-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - type: string - - description: Order of spans in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/SpansSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of spans in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansListResponse' - description: OK - '400': - $ref: '#/components/responses/SpansBadRequestResponse' - '403': - $ref: '#/components/responses/SpansForbiddenResponse' - '422': - $ref: '#/components/responses/SpansUnprocessableEntityResponse' - '429': - $ref: '#/components/responses/SpansTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Get a list of spans - tags: - - Spans - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - /api/v2/spans/events/search: - post: - description: |- - List endpoint returns spans that match a span search query. - [Results are paginated][1]. - - Use this endpoint to build complex spans filtering and search. - This endpoint is rate limited to `300` requests per hour. - - [1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api - operationId: ListSpans - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SpansListRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SpansListResponse' - description: OK - '400': - $ref: '#/components/responses/SpansBadRequestResponse' - '403': - $ref: '#/components/responses/SpansForbiddenResponse' - '422': - $ref: '#/components/responses/SpansUnprocessableEntityResponse' - '429': - $ref: '#/components/responses/SpansTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_read - summary: Search spans - tags: - - Spans - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.data.attributes.page.cursor - cursorPath: meta.page.after - limitParam: body.data.attributes.page.limit - resultsPath: data -components: - schemas: - DatasetResponseMulti: - description: Response containing a list of datasets. - properties: - data: - description: The list of datasets returned in response. - items: - $ref: '#/components/schemas/DatasetResponse' - type: array - type: object - DatasetCreateRequest: - description: Create request for a dataset. - properties: - data: - $ref: '#/components/schemas/DatasetRequest' - required: - - data - type: object - DatasetResponseSingle: - description: Response containing a single dataset object. - properties: - data: - $ref: '#/components/schemas/DatasetResponse' - type: object - DatasetUpdateRequest: - description: Edit request for a dataset. - properties: - data: - $ref: '#/components/schemas/DatasetRequest' - required: - - data - type: object - MetricTagConfigurationMetricTypeCategory: - default: distribution - description: The metric's type category. - enum: - - non_distribution - - distribution - example: distribution - type: string - x-enum-varnames: - - NON_DISTRIBUTION - - DISTRIBUTION - MetricsAndMetricTagConfigurationsResponse: - description: Response object that includes metrics and metric tag configurations. - properties: - data: - description: Array of metrics and metric tag configurations. - items: - $ref: '#/components/schemas/MetricsAndMetricTagConfigurations' - type: array - links: - $ref: '#/components/schemas/MetricsListResponseLinks' - meta: - $ref: '#/components/schemas/MetricPaginationMeta' - readOnly: true - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - MetricBulkTagConfigDeleteRequest: - description: Wrapper object for a single bulk tag deletion request. - properties: - data: - $ref: '#/components/schemas/MetricBulkTagConfigDelete' - required: - - data - type: object - MetricBulkTagConfigResponse: - description: Wrapper for a single bulk tag configuration status response. - properties: - data: - $ref: '#/components/schemas/MetricBulkTagConfigStatus' - type: object - MetricBulkTagConfigCreateRequest: - description: Wrapper object for a single bulk tag configuration request. - properties: - data: - $ref: '#/components/schemas/MetricBulkTagConfigCreate' - required: - - data - type: object - MetricSuggestedTagsAndAggregationsResponse: - description: >- - Response object that includes a single metric's actively queried tags - and aggregations. - properties: - data: - $ref: '#/components/schemas/MetricSuggestedTagsAndAggregations' - readOnly: true - type: object - MetricAllTagsResponse: - description: Response object that includes a single metric's indexed tags. - properties: - data: - $ref: '#/components/schemas/MetricAllTags' - readOnly: true - type: object - MetricAssetsResponse: - description: >- - Response object that includes related dashboards, monitors, notebooks, - and SLOs. - properties: - data: - $ref: '#/components/schemas/MetricAssetResponseData' - included: - description: Array of objects related to the metric assets. - items: - $ref: '#/components/schemas/MetricAssetResponseIncluded' - type: array - type: object - MetricEstimateResponse: - description: Response object that includes metric cardinality estimates. - properties: - data: - $ref: '#/components/schemas/MetricEstimate' - type: object - MetricTagCardinalitiesResponse: - description: > - Response object that includes an array of objects representing the - cardinality details of a metric's tags. - properties: - data: - $ref: '#/components/schemas/MetricTagCardinalitiesData' - meta: - $ref: '#/components/schemas/MetricTagCardinalitiesMeta' - readOnly: true - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - MetricTagConfigurationResponse: - description: Response object which includes a single metric's tag configuration. - properties: - data: - $ref: '#/components/schemas/MetricTagConfiguration' - readOnly: true - type: object - MetricTagConfigurationUpdateRequest: - description: >- - Request object that includes the metric that you would like to edit the - tag configuration on. - properties: - data: - $ref: '#/components/schemas/MetricTagConfigurationUpdateData' - required: - - data - type: object - MetricTagConfigurationCreateRequest: - description: >- - Request object that includes the metric that you would like to configure - tags for. - properties: - data: - $ref: '#/components/schemas/MetricTagConfigurationCreateData' - required: - - data - type: object - MetricVolumesResponse: - description: Response object which includes a single metric's volume. - properties: - data: - $ref: '#/components/schemas/MetricVolumes' - readOnly: true - type: object - ScalarFormulaQueryRequest: - description: A wrapper request around one scalar query to be executed. - properties: - data: - $ref: '#/components/schemas/ScalarFormulaRequest' - required: - - data - type: object - ScalarFormulaQueryResponse: - description: A message containing one or more responses to scalar queries. - properties: - data: - $ref: '#/components/schemas/ScalarResponse' - errors: - description: An error generated when processing a request. - type: string - type: object - TimeseriesFormulaQueryRequest: - description: A request wrapper around a single timeseries query to be executed. - properties: - data: - $ref: '#/components/schemas/TimeseriesFormulaRequest' - required: - - data - type: object - TimeseriesFormulaQueryResponse: - description: >- - A message containing one response to a timeseries query made with - timeseries formula query request. - properties: - data: - $ref: '#/components/schemas/TimeseriesResponse' - errors: - description: The error generated by the request. - type: string - type: object - MetricContentEncoding: - default: deflate - description: HTTP header used to compress the media-type. - enum: - - deflate - - zstd1 - - gzip - example: deflate - type: string - x-enum-varnames: - - DEFLATE - - ZSTD1 - - GZIP - MetricPayload: - description: The metrics' payload. - properties: - series: - description: A list of timeseries to submit to Datadog. - example: - - metric: system.load.1 - points: - - timestamp: 1475317847 - value: 0.7 - resources: - - name: dummyhost - type: host - items: - $ref: '#/components/schemas/MetricSeries' - type: array - required: - - series - type: object - IntakePayloadAccepted: - description: The payload accepted for intake. - properties: - errors: - description: A list of errors. - items: - description: An empty error list. - type: string - type: array - type: object - SpansAggregateRequest: - description: >- - The object sent with the request to retrieve a list of aggregated spans - from your organization. - properties: - data: - $ref: '#/components/schemas/SpansAggregateData' - type: object - SpansAggregateResponse: - description: The response object for the spans aggregate API endpoint. - properties: - data: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/SpansAggregateBucket' - type: array - meta: - $ref: '#/components/schemas/SpansAggregateResponseMetadata' - type: object - SpansSort: - description: Sort parameters when querying spans. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - SpansListResponse: - description: >- - Response object with all spans matching the request and pagination - information. - properties: - data: - description: Array of spans matching the request. - items: - $ref: '#/components/schemas/Span' - type: array - links: - $ref: '#/components/schemas/SpansListResponseLinks' - meta: - $ref: '#/components/schemas/SpansListResponseMetadata' - type: object - SpansListRequest: - description: The request for a spans list. - properties: - data: - $ref: '#/components/schemas/SpansListRequestData' - type: object - DatasetResponse: - description: |- - **Datasets Object Constraints** - - **Tag Limit per Dataset**: - - Each restricted dataset supports a maximum of 10 key:value pairs per product. - - - **Tag Key Rules per Telemetry Type**: - - Only one tag key or attribute may be used to define access within a single telemetry type. - - The same or different tag key may be used across different telemetry types. - - - **Tag Value Uniqueness**: - - Tag values must be unique within a single dataset. - - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. - properties: - attributes: - $ref: '#/components/schemas/DatasetAttributesResponse' - id: - description: Unique identifier for the dataset. - example: 123e4567-e89b-12d3-a456-426614174000 - type: string - type: - $ref: '#/components/schemas/DatasetType' - type: object - DatasetRequest: - description: |- - **Datasets Object Constraints** - - **Tag limit per dataset**: - - Each restricted dataset supports a maximum of 10 key:value pairs per product. - - - **Tag key rules per telemetry type**: - - Only one tag key or attribute may be used to define access within a single telemetry type. - - The same or different tag key may be used across different telemetry types. - - - **Tag value uniqueness**: - - Tag values must be unique within a single dataset. - - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. - properties: - attributes: - $ref: '#/components/schemas/DatasetAttributesRequest' - type: - $ref: '#/components/schemas/DatasetType' - required: - - type - - attributes - type: object - MetricsAndMetricTagConfigurations: - description: Object for a metrics and metric tag configurations. - oneOf: - - $ref: '#/components/schemas/Metric' - - $ref: '#/components/schemas/MetricTagConfiguration' - MetricsListResponseLinks: - description: >- - Pagination links. Only present if pagination query parameters were - provided. - properties: - first: - description: Link to the first page. - type: string - last: - description: Link to the last page. - nullable: true - type: string - next: - description: Link to the next page. - nullable: true - type: string - prev: - description: Link to previous page. - nullable: true - type: string - self: - description: Link to current page. - type: string - type: object - MetricPaginationMeta: - description: Response metadata object. - properties: - pagination: - $ref: '#/components/schemas/MetricMetaPage' - type: object - MetricBulkTagConfigDelete: - description: >- - Request object to bulk delete all tag configurations for metrics - matching the given prefix. - properties: - attributes: - $ref: '#/components/schemas/MetricBulkTagConfigDeleteAttributes' - id: - $ref: '#/components/schemas/MetricBulkTagConfigNamePrefix' - type: - $ref: '#/components/schemas/MetricBulkConfigureTagsType' - required: - - id - - type - type: object - MetricBulkTagConfigStatus: - description: |- - The status of a request to bulk configure metric tags. - It contains the fields from the original request for reference. - properties: - attributes: - $ref: '#/components/schemas/MetricBulkTagConfigStatusAttributes' - id: - $ref: '#/components/schemas/MetricBulkTagConfigNamePrefix' - type: - $ref: '#/components/schemas/MetricBulkConfigureTagsType' - required: - - id - - type - type: object - MetricBulkTagConfigCreate: - description: >- - Request object to bulk configure tags for metrics matching the given - prefix. - properties: - attributes: - $ref: '#/components/schemas/MetricBulkTagConfigCreateAttributes' - id: - $ref: '#/components/schemas/MetricBulkTagConfigNamePrefix' - type: - $ref: '#/components/schemas/MetricBulkConfigureTagsType' - required: - - id - - type - type: object - MetricSuggestedTagsAndAggregations: - description: Object for a single metric's actively queried tags and aggregations. - properties: - attributes: - $ref: '#/components/schemas/MetricSuggestedTagsAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricActiveConfigurationType' - type: object - MetricAllTags: - description: Object for a single metric's indexed tags. - properties: - attributes: - $ref: '#/components/schemas/MetricAllTagsAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricType' - type: object - MetricAssetResponseData: - description: Metric assets response data. - properties: - id: - $ref: '#/components/schemas/MetricName' - relationships: - $ref: '#/components/schemas/MetricAssetResponseRelationships' - type: - $ref: '#/components/schemas/MetricType' - required: - - id - - type - type: object - MetricAssetResponseIncluded: - description: List of included assets with full set of attributes. - oneOf: - - $ref: '#/components/schemas/MetricDashboardAsset' - - $ref: '#/components/schemas/MetricMonitorAsset' - - $ref: '#/components/schemas/MetricNotebookAsset' - - $ref: '#/components/schemas/MetricSLOAsset' - MetricEstimate: - description: Object for a metric cardinality estimate. - properties: - attributes: - $ref: '#/components/schemas/MetricEstimateAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricEstimateResourceType' - type: object - MetricTagCardinalitiesData: - description: A list of tag cardinalities associated with the given metric. - items: - $ref: '#/components/schemas/MetricTagCardinality' - type: array - MetricTagCardinalitiesMeta: - description: Response metadata object. - properties: - metric_name: - description: | - The name of metric for which the tag cardinalities are returned. - This matches the metric name provided in the request. - type: string - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - MetricTagConfiguration: - description: Object for a single metric tag configuration. - example: - attributes: - aggregations: - - space: avg - time: avg - created_at: '2020-03-25T09:48:37.463835Z' - metric_type: gauge - modified_at: '2020-04-25T09:48:37.463835Z' - tags: - - app - - datacenter - id: http.request.latency - type: manage_tags - properties: - attributes: - $ref: '#/components/schemas/MetricTagConfigurationAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricTagConfigurationType' - type: object - MetricTagConfigurationUpdateData: - description: Object for a single tag configuration to be edited. - example: - attributes: - group_by: - - app - - datacenter - include_percentiles: false - id: http.endpoint.request - type: manage_tags - properties: - attributes: - $ref: '#/components/schemas/MetricTagConfigurationUpdateAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricTagConfigurationType' - required: - - id - - type - type: object - MetricTagConfigurationCreateData: - description: Object for a single metric to be configure tags on. - example: - attributes: - include_percentiles: false - metric_type: distribution - tags: - - app - - datacenter - id: http.endpoint.request - type: manage_tags - properties: - attributes: - $ref: '#/components/schemas/MetricTagConfigurationCreateAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricTagConfigurationType' - required: - - id - - type - type: object - MetricVolumes: - description: Possible response objects for a metric's volume. - oneOf: - - $ref: '#/components/schemas/MetricDistinctVolume' - - $ref: '#/components/schemas/MetricIngestedIndexedVolume' - ScalarFormulaRequest: - description: A single scalar query to be executed. - properties: - attributes: - $ref: '#/components/schemas/ScalarFormulaRequestAttributes' - type: - $ref: '#/components/schemas/ScalarFormulaRequestType' - required: - - type - - attributes - type: object - ScalarResponse: - description: A message containing the response to a scalar query. - properties: - attributes: - $ref: '#/components/schemas/ScalarFormulaResponseAtrributes' - type: - $ref: '#/components/schemas/ScalarFormulaResponseType' - type: object - TimeseriesFormulaRequest: - description: A single timeseries query to be executed. - properties: - attributes: - $ref: '#/components/schemas/TimeseriesFormulaRequestAttributes' - type: - $ref: '#/components/schemas/TimeseriesFormulaRequestType' - required: - - type - - attributes - type: object - TimeseriesResponse: - description: A message containing the response to a timeseries query. - properties: - attributes: - $ref: '#/components/schemas/TimeseriesResponseAttributes' - type: - $ref: '#/components/schemas/TimeseriesFormulaResponseType' - type: object - MetricSeries: - description: >- - A metric to submit to Datadog. - - See [Datadog - metrics](https://docs.datadoghq.com/developers/metrics/#custom-metrics-properties). - properties: - interval: - description: >- - If the type of the metric is rate or count, define the corresponding - interval in seconds. - example: 20 - format: int64 - type: integer - metadata: - $ref: '#/components/schemas/MetricMetadata' - metric: - description: The name of the timeseries. - example: system.load.1 - type: string - points: - description: >- - Points relating to a metric. All points must be objects with - timestamp and a scalar value (cannot be a string). Timestamps should - be in POSIX time in seconds, and cannot be more than ten minutes in - the future or more than one hour in the past. - example: - - timestamp: 1575317847 - value: 0.5 - items: - $ref: '#/components/schemas/MetricPoint' - type: array - resources: - description: A list of resources to associate with this metric. - items: - $ref: '#/components/schemas/MetricResource' - type: array - source_type_name: - description: The source type name. - example: datadog - type: string - tags: - description: A list of tags associated with the metric. - example: - - environment:test - items: - description: Individual tags. - type: string - type: array - type: - $ref: '#/components/schemas/MetricIntakeType' - unit: - description: The unit of point value. - example: second - type: string - required: - - metric - - points - type: object - SpansAggregateData: - description: The object containing the query content. - properties: - attributes: - $ref: '#/components/schemas/SpansAggregateRequestAttributes' - type: - $ref: '#/components/schemas/SpansAggregateRequestType' - type: object - SpansAggregateBucket: - description: Spans aggregate. - properties: - attributes: - $ref: '#/components/schemas/SpansAggregateBucketAttributes' - id: - description: ID of the spans aggregate. - type: string - type: - $ref: '#/components/schemas/SpansAggregateBucketType' - type: object - SpansAggregateResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/SpansAggregateResponseStatus' - warnings: - description: >- - A list of warnings (non fatal errors) encountered, partial results - might be returned if - - warnings are present in the response. - items: - $ref: '#/components/schemas/SpansWarning' - type: array - type: object - Span: - description: >- - Object description of a spans after being processed and stored by - Datadog. - properties: - attributes: - $ref: '#/components/schemas/SpansAttributes' - id: - description: Unique ID of the Span. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/SpansType' - type: object - SpansListResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/spans/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SpansListResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/SpansResponseMetadataPage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/SpansAggregateResponseStatus' - warnings: - description: >- - A list of warnings (non fatal errors) encountered, partial results - might be returned if - - warnings are present in the response. - items: - $ref: '#/components/schemas/SpansWarning' - type: array - type: object - SpansListRequestData: - description: The object containing the query content. - properties: - attributes: - $ref: '#/components/schemas/SpansListRequestAttributes' - type: - $ref: '#/components/schemas/SpansListRequestType' - type: object - DatasetAttributesResponse: - description: Dataset metadata and configuration(s). - properties: - created_at: - description: Timestamp when the dataset was created. - format: date-time - nullable: true - type: string - created_by: - description: Unique ID of the user who created the dataset. - format: uuid - type: string - name: - description: Name of the dataset. - example: Security Audit Dataset - type: string - principals: - description: >- - List of access principals, formatted as `principal_type:id`. - Principal can be 'team' or 'role'. - example: - - role:86245fce-0a4e-11f0-92bd-da7ad0900002 - items: - example: role:86245fce-0a4e-11f0-92bd-da7ad0900002 - type: string - type: array - product_filters: - description: List of product-specific filters. - items: - $ref: '#/components/schemas/FiltersPerProduct' - type: array - type: object - DatasetType: - default: dataset - description: Resource type, always set to `dataset`. - enum: - - dataset - example: dataset - type: string - x-enum-varnames: - - DATASET - DatasetAttributesRequest: - description: Dataset metadata and configurations. - properties: - name: - description: Name of the dataset. - example: Security Audit Dataset - type: string - principals: - description: >- - List of access principals, formatted as `principal_type:id`. - Principal can be 'team' or 'role'. - example: - - role:94172442-be03-11e9-a77a-3b7612558ac1 - items: - example: role:94172442-be03-11e9-a77a-3b7612558ac1 - type: string - type: array - product_filters: - description: List of product-specific filters. - items: - $ref: '#/components/schemas/FiltersPerProduct' - type: array - required: - - name - - product_filters - - principals - type: object - Metric: - description: Object for a single metric tag configuration. - example: - id: metric.foo.bar - type: metrics - properties: - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricType' - type: object - MetricMetaPage: - description: >- - Paging attributes. Only present if pagination query parameters were - provided. - properties: - cursor: - description: The cursor used to get the current results, if any. - nullable: true - type: string - limit: - description: Number of results returned - format: int32 - maximum: 20000 - minimum: 0 - type: integer - next_cursor: - description: The cursor used to get the next results, if any. - nullable: true - type: string - type: - $ref: '#/components/schemas/MetricMetaPageType' - type: object - MetricBulkTagConfigDeleteAttributes: - description: Optional parameters for bulk deleting metric tag configurations. - properties: - emails: - $ref: '#/components/schemas/MetricBulkTagConfigEmailList' - type: object - MetricBulkTagConfigNamePrefix: - description: A text prefix to match against metric names. - example: kafka.lag - type: string - MetricBulkConfigureTagsType: - default: metric_bulk_configure_tags - description: The metric bulk configure tags resource. - enum: - - metric_bulk_configure_tags - example: metric_bulk_configure_tags - type: string - x-enum-varnames: - - BULK_MANAGE_TAGS - MetricBulkTagConfigStatusAttributes: - description: Optional attributes for the status of a bulk tag configuration request. - properties: - emails: - $ref: '#/components/schemas/MetricBulkTagConfigEmailList' - exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - type: boolean - status: - description: The status of the request. - example: Accepted - type: string - tags: - $ref: '#/components/schemas/MetricBulkTagConfigTagNameList' - type: object - MetricBulkTagConfigCreateAttributes: - description: Optional parameters for bulk creating metric tag configurations. - properties: - emails: - $ref: '#/components/schemas/MetricBulkTagConfigEmailList' - exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - - Defaults to false. - type: boolean - include_actively_queried_tags_window: - description: |- - When provided, all tags that have been actively queried are - configured (and, therefore, remain queryable) for each metric that - matches the given prefix. Minimum value is 1 second, and maximum - value is 7,776,000 seconds (90 days). - format: double - maximum: 7776000 - minimum: 1 - type: number - override_existing_configurations: - description: |- - When set to true, the configuration overrides any existing - configurations for the given metric with the new set of tags in this - configuration request. If false, old configurations are kept and - are merged with the set of tags in this configuration request. - Defaults to true. - type: boolean - tags: - $ref: '#/components/schemas/MetricBulkTagConfigTagNameList' - type: object - MetricSuggestedTagsAttributes: - description: >- - Object containing the definition of a metric's actively queried tags and - aggregations. - properties: - active_aggregations: - $ref: '#/components/schemas/MetricSuggestedAggregations' - active_tags: - description: List of tag keys that have been actively queried. - example: - - app - - datacenter - items: - description: Actively queried tag keys. - type: string - type: array - type: object - MetricName: - description: The metric name for this resource. - example: test.metric.latency - type: string - MetricActiveConfigurationType: - default: actively_queried_configurations - description: The metric actively queried configuration resource type. - enum: - - actively_queried_configurations - example: actively_queried_configurations - type: string - x-enum-varnames: - - ACTIVELY_QUERIED_CONFIGURATIONS - MetricAllTagsAttributes: - description: Object containing the definition of a metric's tags. - properties: - tags: - description: List of indexed tag value pairs. - example: - - sport:golf - - sport:football - - animal:dog - items: - description: Tag key-value pairs. - type: string - type: array - type: object - MetricType: - default: metrics - description: The metric resource type. - enum: - - metrics - example: metrics - type: string - x-enum-varnames: - - METRICS - MetricAssetResponseRelationships: - description: Relationships to assets related to the metric. - properties: - dashboards: - $ref: '#/components/schemas/MetricAssetDashboardRelationships' - monitors: - $ref: '#/components/schemas/MetricAssetMonitorRelationships' - notebooks: - $ref: '#/components/schemas/MetricAssetNotebookRelationships' - slos: - $ref: '#/components/schemas/MetricAssetSLORelationships' - type: object - MetricDashboardAsset: - description: A dashboard object with title and popularity. - properties: - attributes: - $ref: '#/components/schemas/MetricDashboardAttributes' - id: - $ref: '#/components/schemas/MetricDashboardID' - type: - $ref: '#/components/schemas/MetricDashboardType' - required: - - id - - type - type: object - MetricMonitorAsset: - description: A monitor object with title. - properties: - attributes: - $ref: '#/components/schemas/MetricAssetAttributes' - id: - $ref: '#/components/schemas/MetricMonitorID' - type: - $ref: '#/components/schemas/MetricMonitorType' - required: - - id - - type - type: object - MetricNotebookAsset: - description: A notebook object with title. - properties: - attributes: - $ref: '#/components/schemas/MetricAssetAttributes' - id: - $ref: '#/components/schemas/MetricNotebookID' - type: - $ref: '#/components/schemas/MetricNotebookType' - required: - - id - - type - type: object - MetricSLOAsset: - description: A SLO object with title. - properties: - attributes: - $ref: '#/components/schemas/MetricAssetAttributes' - id: - $ref: '#/components/schemas/MetricSLOID' - type: - $ref: '#/components/schemas/MetricSLOType' - required: - - id - - type - type: object - MetricEstimateAttributes: - description: Object containing the definition of a metric estimate attribute. - properties: - estimate_type: - $ref: '#/components/schemas/MetricEstimateType' - estimated_at: - description: Timestamp when the cardinality estimate was requested. - example: '2022-04-27T09:48:37.463835Z' - format: date-time - type: string - estimated_output_series: - description: >- - Estimated cardinality of the metric based on the queried - configuration. - example: 50 - format: int64 - type: integer - type: object - MetricEstimateResourceType: - default: metric_cardinality_estimate - description: The metric estimate resource type. - enum: - - metric_cardinality_estimate - example: metric_cardinality_estimate - type: string - x-enum-varnames: - - METRIC_CARDINALITY_ESTIMATE - MetricTagCardinality: - description: >- - Object containing metadata and attributes related to a specific tag key - associated with the metric. - example: - attributes: - cardinality_delta: 25 - id: http.request.latency - type: tag_cardinality - properties: - attributes: - $ref: '#/components/schemas/MetricTagCardinalityAttributes' - id: - description: The name of the tag key. - type: string - type: - default: tag_cardinality - description: This describes the endpoint action. - type: string - type: object - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - MetricTagConfigurationAttributes: - description: >- - Object containing the definition of a metric tag configuration - attributes. - properties: - aggregations: - $ref: '#/components/schemas/MetricCustomAggregations' - created_at: - description: Timestamp when the tag configuration was created. - example: '2020-03-25T09:48:37.463835Z' - format: date-time - type: string - exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - - Defaults to false. Requires `tags` property. - type: boolean - include_percentiles: - description: >- - Toggle to include or exclude percentile aggregations for - distribution metrics. - - Only present when the `metric_type` is `distribution`. - example: true - type: boolean - metric_type: - $ref: '#/components/schemas/MetricTagConfigurationMetricTypes' - modified_at: - description: Timestamp when the tag configuration was last modified. - example: '2020-03-25T09:48:37.463835Z' - format: date-time - type: string - tags: - description: List of tag keys on which to group. - example: - - app - - datacenter - items: - description: Tag keys to group by. - type: string - type: array - type: object - MetricTagConfigurationType: - default: manage_tags - description: The metric tag configuration resource type. - enum: - - manage_tags - example: manage_tags - type: string - x-enum-varnames: - - MANAGE_TAGS - MetricTagConfigurationUpdateAttributes: - description: >- - Object containing the definition of a metric tag configuration to be - updated. - properties: - aggregations: - $ref: '#/components/schemas/MetricCustomAggregations' - exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - - Defaults to false. Requires `tags` property. - type: boolean - include_percentiles: - description: >- - Toggle to include/exclude percentiles for a distribution metric. - - Defaults to false. Can only be applied to metrics that have a - `metric_type` of `distribution`. - example: true - type: boolean - tags: - default: [] - description: A list of tag keys that will be queryable for your metric. - example: - - app - - datacenter - items: - description: Tag keys to group by. - type: string - type: array - type: object - MetricTagConfigurationCreateAttributes: - description: >- - Object containing the definition of a metric tag configuration to be - created. - properties: - aggregations: - $ref: '#/components/schemas/MetricCustomAggregations' - exclude_tags_mode: - description: >- - When set to true, the configuration will exclude the configured tags - and include any other submitted tags. - - When set to false, the configuration will include the configured - tags and exclude any other submitted tags. - - Defaults to false. Requires `tags` property. - type: boolean - include_percentiles: - description: >- - Toggle to include/exclude percentiles for a distribution metric. - - Defaults to false. Can only be applied to metrics that have a - `metric_type` of `distribution`. - example: true - type: boolean - metric_type: - $ref: '#/components/schemas/MetricTagConfigurationMetricTypes' - tags: - default: [] - description: A list of tag keys that will be queryable for your metric. - example: - - app - - datacenter - items: - description: Tag keys to group by. - type: string - type: array - required: - - tags - - metric_type - type: object - MetricDistinctVolume: - description: Object for a single metric's distinct volume. - properties: - attributes: - $ref: '#/components/schemas/MetricDistinctVolumeAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricDistinctVolumeType' - type: object - MetricIngestedIndexedVolume: - description: Object for a single metric's ingested and indexed volume. - properties: - attributes: - $ref: '#/components/schemas/MetricIngestedIndexedVolumeAttributes' - id: - $ref: '#/components/schemas/MetricName' - type: - $ref: '#/components/schemas/MetricIngestedIndexedVolumeType' - type: object - ScalarFormulaRequestAttributes: - description: The object describing a scalar formula request. - properties: - formulas: - description: List of formulas to be calculated and returned as responses. - items: - $ref: '#/components/schemas/QueryFormula' - type: array - from: - description: >- - Start date (inclusive) of the query in milliseconds since the Unix - epoch. - example: 1568899800000 - format: int64 - type: integer - queries: - $ref: '#/components/schemas/ScalarFormulaRequestQueries' - to: - description: >- - End date (exclusive) of the query in milliseconds since the Unix - epoch. - example: 1568923200000 - format: int64 - type: integer - required: - - to - - from - - queries - type: object - ScalarFormulaRequestType: - default: scalar_request - description: The type of the resource. The value should always be scalar_request. - enum: - - scalar_request - example: scalar_request - type: string - x-enum-varnames: - - SCALAR_REQUEST - ScalarFormulaResponseAtrributes: - description: The object describing a scalar response. - properties: - columns: - description: >- - List of response columns, each corresponding to an individual - formula or query in the request and with values in parallel arrays - matching the series list. - items: - $ref: '#/components/schemas/ScalarColumn' - type: array - type: object - ScalarFormulaResponseType: - default: scalar_response - description: The type of the resource. The value should always be scalar_response. - enum: - - scalar_response - example: scalar_response - type: string - x-enum-varnames: - - SCALAR_RESPONSE - TimeseriesFormulaRequestAttributes: - description: The object describing a timeseries formula request. - properties: - formulas: - description: List of formulas to be calculated and returned as responses. - items: - $ref: '#/components/schemas/QueryFormula' - type: array - from: - description: >- - Start date (inclusive) of the query in milliseconds since the Unix - epoch. - example: 1568899800000 - format: int64 - type: integer - interval: - description: |- - A time interval in milliseconds. - May be overridden by a larger interval if the query would result in - too many points for the specified timeframe. - Defaults to a reasonable interval for the given timeframe. - example: 5000 - format: int64 - type: integer - queries: - $ref: '#/components/schemas/TimeseriesFormulaRequestQueries' - to: - description: >- - End date (exclusive) of the query in milliseconds since the Unix - epoch. - example: 1568923200000 - format: int64 - type: integer - required: - - to - - from - - queries - type: object - TimeseriesFormulaRequestType: - default: timeseries_request - description: The type of the resource. The value should always be timeseries_request. - enum: - - timeseries_request - example: timeseries_request - type: string - x-enum-varnames: - - TIMESERIES_REQUEST - TimeseriesResponseAttributes: - description: The object describing a timeseries response. - properties: - series: - $ref: '#/components/schemas/TimeseriesResponseSeriesList' - times: - $ref: '#/components/schemas/TimeseriesResponseTimes' - values: - $ref: '#/components/schemas/TimeseriesResponseValuesList' - type: object - TimeseriesFormulaResponseType: - default: timeseries_response - description: >- - The type of the resource. The value should always be - timeseries_response. - enum: - - timeseries_response - example: timeseries_response - type: string - x-enum-varnames: - - TIMESERIES_RESPONSE - MetricMetadata: - description: Metadata for the metric. - properties: - origin: - $ref: '#/components/schemas/MetricOrigin' - type: object - MetricPoint: - description: A point object is of the form `{POSIX_timestamp, numeric_value}`. - example: - timestamp: 1575317847 - value: 0.5 - properties: - timestamp: - description: >- - The timestamp should be in seconds and current. - - Current is defined as not more than 10 minutes in the future or more - than 1 hour in the past. - format: int64 - type: integer - value: - description: The numeric value format should be a 64bit float gauge-type value. - format: double - type: number - type: object - MetricResource: - description: Metric resource. - example: - name: dummyhost - type: host - properties: - name: - description: The name of the resource. - type: string - type: - description: The type of the resource. - type: string - type: object - MetricIntakeType: - description: >- - The type of metric. The available types are `0` (unspecified), `1` - (count), `2` (rate), and `3` (gauge). - enum: - - 0 - - 1 - - 2 - - 3 - format: int32 - type: integer - x-enum-varnames: - - UNSPECIFIED - - COUNT - - RATE - - GAUGE - SpansAggregateRequestAttributes: - description: The object containing all the query parameters. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/SpansCompute' - type: array - filter: - $ref: '#/components/schemas/SpansQueryFilter' - group_by: - description: The rules for the group by. - items: - $ref: '#/components/schemas/SpansGroupBy' - type: array - options: - $ref: '#/components/schemas/SpansQueryOptions' - type: object - SpansAggregateRequestType: - default: aggregate_request - description: The type of resource. The value should always be aggregate_request. - enum: - - aggregate_request - example: aggregate_request - type: string - x-enum-varnames: - - AGGREGATE_REQUEST - SpansAggregateBucketAttributes: - description: A bucket values. - properties: - by: - additionalProperties: - description: The values for each group by. - description: The key, value pairs for each group by. - example: - '@state': success - '@version': abc - type: object - compute: - description: The compute data. - type: object - computes: - additionalProperties: - $ref: '#/components/schemas/SpansAggregateBucketValue' - description: >- - A map of the metric name -> value for regular compute or list of - values for a timeseries. - type: object - type: object - SpansAggregateBucketType: - description: The spans aggregate bucket type. - enum: - - bucket - example: bucket - type: string - x-enum-varnames: - - BUCKET - SpansAggregateResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - SpansWarning: - description: A warning message indicating something that went wrong with the query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - SpansAttributes: - description: JSON object containing all span attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from your span. - example: - customAttribute: 123 - duration: 2345 - type: object - custom: - additionalProperties: {} - description: JSON object of custom spans data. - type: object - end_timestamp: - description: End timestamp of your span. - example: '2023-01-02T09:42:36.420Z' - format: date-time - type: string - env: - description: Name of the environment from where the spans are being sent. - example: prod - type: string - host: - description: Name of the machine from where the spans are being sent. - example: i-0123 - type: string - ingestion_reason: - description: The reason why the span was ingested. - example: rule - type: string - parent_id: - description: Id of the span that's parent of this span. - example: '0' - type: string - resource_hash: - description: Unique identifier of the resource. - example: a12345678b91c23d - type: string - resource_name: - description: The name of the resource. - example: agent - type: string - retained_by: - description: The reason why the span was indexed. - example: retention_filter - type: string - service: - description: >- - The name of the application or service generating the span events. - - It is used to switch from APM to Logs, so make sure you define the - same - - value when you use both products. - example: agent - type: string - single_span: - description: >- - Whether or not the span was collected as a stand-alone span. Always - associated to "single_span" ingestion_reason if true. - example: true - type: boolean - span_id: - description: Id of the span. - example: '1234567890987654321' - type: string - start_timestamp: - description: Start timestamp of your span. - example: '2023-01-02T09:42:36.320Z' - format: date-time - type: string - tags: - description: Array of tags associated with your span. - example: - - team:A - items: - description: Tag associated with your span. - type: string - type: array - trace_id: - description: Id of the trace to which the span belongs. - example: '1234567890987654321' - type: string - type: - description: The type of the span. - example: web - type: string - type: object - SpansType: - default: spans - description: Type of the span. - enum: - - spans - example: spans - type: string - x-enum-varnames: - - SPANS - SpansResponseMetadataPage: - description: Paging attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SpansListRequestAttributes: - description: The object containing all the query parameters. - properties: - filter: - $ref: '#/components/schemas/SpansQueryFilter' - options: - $ref: '#/components/schemas/SpansQueryOptions' - page: - $ref: '#/components/schemas/SpansListRequestPage' - sort: - $ref: '#/components/schemas/SpansSort' - type: object - SpansListRequestType: - default: search_request - description: The type of resource. The value should always be search_request. - enum: - - search_request - example: search_request - type: string - x-enum-varnames: - - SEARCH_REQUEST - FiltersPerProduct: - description: Product-specific filters for the dataset. - properties: - filters: - description: >- - Defines the list of tag-based filters used to restrict access to - telemetry data for a specific product. - - These filters act as access control rules. Each filter must follow - the tag query syntax used by - - Datadog (such as `@tag.key:value`), and only one tag or attribute - may be used to define the access strategy - - per telemetry type. - example: - - '@application.id:ABCD' - items: - example: '@application.id:ABCD' - type: string - type: array - product: - description: >- - Name of the product the dataset is for. Possible values are 'apm', - 'rum', - - 'metrics', 'logs', 'error_tracking', and 'cloud_cost'. - example: logs - type: string - required: - - product - - filters - type: object - MetricMetaPageType: - default: cursor_limit - description: Type of metric pagination. - enum: - - cursor_limit - example: cursor_limit - type: string - x-enum-varnames: - - CURSOR_LIMIT - MetricBulkTagConfigEmailList: - description: A list of account emails to notify when the configuration is applied. - example: - - sue@example.com - - bob@example.com - items: - description: An email address. - type: string - type: array - MetricBulkTagConfigTagNameList: - description: A list of tag names to apply to the configuration. - example: - - host - - pod_name - - is_shadow - items: - description: A metric tag name. - maxLength: 200 - pattern: ^[A-Za-z][A-Za-z0-9\.\-\_:\/]*$ - type: string - type: array - MetricSuggestedAggregations: - description: List of aggregation combinations that have been actively queried. - example: - - space: sum - time: sum - - space: sum - time: count - items: - $ref: '#/components/schemas/MetricCustomAggregation' - type: array - MetricAssetDashboardRelationships: - description: >- - An object containing the list of dashboards that can be referenced in - the `included` data. - properties: - data: - description: A list of dashboards that can be referenced in the `included` data. - items: - $ref: '#/components/schemas/MetricAssetDashboardRelationship' - type: array - type: object - MetricAssetMonitorRelationships: - description: >- - A object containing the list of monitors that can be referenced in the - `included` data. - properties: - data: - description: A list of monitors that can be referenced in the `included` data. - items: - $ref: '#/components/schemas/MetricAssetMonitorRelationship' - type: array - type: object - MetricAssetNotebookRelationships: - description: >- - An object containing the list of notebooks that can be referenced in the - `included` data. - properties: - data: - description: A list of notebooks that can be referenced in the `included` data. - items: - $ref: '#/components/schemas/MetricAssetNotebookRelationship' - type: array - type: object - MetricAssetSLORelationships: - description: >- - An object containing a list of SLOs that can be referenced in the - `included` data. - properties: - data: - description: A list of SLOs that can be referenced in the `included` data. - items: - $ref: '#/components/schemas/MetricAssetSLORelationship' - type: array - type: object - MetricDashboardAttributes: - description: >- - Attributes related to the dashboard, including title, popularity, and - url. - properties: - popularity: - description: Value from 0 to 5 that ranks popularity of the dashboard. - format: double - maximum: 5 - minimum: 0 - type: number - tags: - description: List of tag keys used in the asset. - example: - - env - - service - - host - - datacenter - items: - description: Tag key used in assets. - type: string - type: array - title: - description: Title of the asset. - type: string - url: - description: URL path of the asset. - type: string - type: object - MetricDashboardID: - description: The related dashboard's ID. - example: xxx-yyy-zzz - type: string - MetricDashboardType: - description: Dashboard resource type. - enum: - - dashboards - example: dashboards - type: string - x-enum-varnames: - - DASHBOARDS - MetricAssetAttributes: - description: Assets related to the object, including title, url, and tags. - properties: - tags: - description: List of tag keys used in the asset. - example: - - env - - service - - host - - datacenter - items: - description: Tag key used in assets. - type: string - type: array - title: - description: Title of the asset. - type: string - url: - description: URL path of the asset. - type: string - type: object - MetricMonitorID: - description: The related monitor's ID. - example: '1775073' - type: string - MetricMonitorType: - description: Monitor resource type. - enum: - - monitors - example: monitors - type: string - x-enum-varnames: - - MONITORS - MetricNotebookID: - description: The related notebook's ID. - example: '12345' - type: string - MetricNotebookType: - description: Notebook resource type. - enum: - - notebooks - example: notebooks - type: string - x-enum-varnames: - - NOTEBOOKS - MetricSLOID: - description: The SLO ID. - example: 9ffef113b389520db54391d67d652dfb - type: string - MetricSLOType: - description: SLO resource type. - enum: - - slos - example: slos - type: string - x-enum-varnames: - - SLOS - MetricEstimateType: - default: count_or_gauge - description: >- - Estimate type based on the queried configuration. By default, - `count_or_gauge` is returned. `distribution` is returned for - distribution metrics without percentiles enabled. Lastly, `percentile` - is returned if `filter[pct]=true` is queried with a distribution metric. - enum: - - count_or_gauge - - distribution - - percentile - example: distribution - type: string - x-enum-varnames: - - COUNT_OR_GAUGE - - DISTRIBUTION - - PERCENTILE - MetricTagCardinalityAttributes: - description: An object containing properties related to the tag key - properties: - cardinality_delta: - description: This describes the recent change in the tag keys cardinality - format: int64 - type: integer - type: object - MetricCustomAggregations: - description: >- - Deprecated. You no longer need to configure specific time and space - aggregations for Metrics Without Limits. - example: - - space: sum - time: sum - - space: sum - time: count - items: - $ref: '#/components/schemas/MetricCustomAggregation' - type: array - MetricTagConfigurationMetricTypes: - default: gauge - description: The metric's type. - enum: - - gauge - - count - - rate - - distribution - example: count - type: string - x-enum-varnames: - - GAUGE - - COUNT - - RATE - - DISTRIBUTION - MetricDistinctVolumeAttributes: - description: Object containing the definition of a metric's distinct volume. - properties: - distinct_volume: - description: Distinct volume for the given metric. - example: 10 - format: int64 - type: integer - type: object - MetricDistinctVolumeType: - default: distinct_metric_volumes - description: The metric distinct volume type. - enum: - - distinct_metric_volumes - example: distinct_metric_volumes - type: string - x-enum-varnames: - - DISTINCT_METRIC_VOLUMES - MetricIngestedIndexedVolumeAttributes: - description: >- - Object containing the definition of a metric's ingested and indexed - volume. - properties: - indexed_volume: - description: Indexed volume for the given metric. - example: 10 - format: int64 - type: integer - ingested_volume: - description: Ingested volume for the given metric. - example: 20 - format: int64 - type: integer - type: object - MetricIngestedIndexedVolumeType: - default: metric_volumes - description: The metric ingested and indexed volume type. - enum: - - metric_volumes - example: metric_volumes - type: string - x-enum-varnames: - - METRIC_VOLUMES - QueryFormula: - description: A formula for calculation based on one or more queries. - properties: - formula: - description: >- - Formula string, referencing one or more queries with their name - property. - example: a+b - type: string - limit: - $ref: '#/components/schemas/FormulaLimit' - required: - - formula - type: object - ScalarFormulaRequestQueries: - description: List of queries to be run and used as inputs to the formulas. - example: - - aggregator: avg - data_source: metrics - query: avg:system.cpu.user{*} by {env} - items: - $ref: '#/components/schemas/ScalarQuery' - type: array - ScalarColumn: - description: A single column in a scalar query response. - oneOf: - - $ref: '#/components/schemas/GroupScalarColumn' - - $ref: '#/components/schemas/DataScalarColumn' - TimeseriesFormulaRequestQueries: - description: List of queries to be run and used as inputs to the formulas. - example: - - data_source: metrics - query: avg:system.cpu.user{*} by {env} - items: - $ref: '#/components/schemas/TimeseriesQuery' - type: array - TimeseriesResponseSeriesList: - description: >- - Array of response series. The index here corresponds to the index in the - `formulas` or `queries` array from the request. - items: - $ref: '#/components/schemas/TimeseriesResponseSeries' - type: array - TimeseriesResponseTimes: - description: Array of times, 1-1 match with individual values arrays. - items: - description: Start date (inclusive) of the query in seconds since the Unix epoch. - example: 1568899800000 - format: int64 - type: integer - type: array - TimeseriesResponseValuesList: - description: >- - Array of value-arrays. The index here corresponds to the index in the - `formulas` or `queries` array from the request. - items: - $ref: '#/components/schemas/TimeseriesResponseValues' - type: array - MetricOrigin: - description: Metric origin information. - properties: - metric_type: - default: 0 - description: The origin metric type code - format: int32 - maximum: 1000 - type: integer - product: - default: 0 - description: The origin product code - format: int32 - maximum: 1000 - type: integer - service: - default: 0 - description: The origin service code - format: int32 - maximum: 1000 - type: integer - type: object - SpansCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/SpansAggregationFunction' - interval: - description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points. - example: 5m - type: string - metric: - description: The metric to use. - example: '@duration' - type: string - type: - $ref: '#/components/schemas/SpansComputeType' - required: - - aggregation - type: object - SpansQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: >- - The minimum time for the requested spans, supports date-time - ISO8601, date math, and regular timestamps (milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query - following the span search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - to: - default: now - description: >- - The maximum time for the requested spans, supports date-time - ISO8601, date math, and regular timestamps (milliseconds). - example: now - type: string - type: object - SpansGroupBy: - description: A group by rule. - properties: - facet: - description: The name of the facet to use (required). - example: host - type: string - histogram: - $ref: '#/components/schemas/SpansGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/SpansGroupByMissing' - sort: - $ref: '#/components/schemas/SpansAggregateSort' - total: - $ref: '#/components/schemas/SpansGroupByTotal' - required: - - facet - type: object - SpansQueryOptions: - description: >- - Global query options that are used during the query. - - Note: You should only supply timezone or time offset but not both - otherwise the query will fail. - properties: - timeOffset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - SpansAggregateBucketValue: - description: A bucket value, can be either a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/SpansAggregateBucketValueSingleString' - - $ref: '#/components/schemas/SpansAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/SpansAggregateBucketValueTimeseries' - SpansListRequestPage: - description: Paging attributes for listing spans. - properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of spans in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - MetricCustomAggregation: - description: A time and space aggregation combination for use in query. - example: - space: sum - time: sum - properties: - space: - $ref: '#/components/schemas/MetricCustomSpaceAggregation' - time: - $ref: '#/components/schemas/MetricCustomTimeAggregation' - required: - - time - - space - type: object - MetricAssetDashboardRelationship: - description: >- - An object of type `dashboard` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricDashboardID' - type: - $ref: '#/components/schemas/MetricDashboardType' - type: object - MetricAssetMonitorRelationship: - description: >- - An object of type `monitor` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricMonitorID' - type: - $ref: '#/components/schemas/MetricMonitorType' - type: object - MetricAssetNotebookRelationship: - description: >- - An object of type `notebook` that can be referenced in the `included` - data. - properties: - id: - $ref: '#/components/schemas/MetricNotebookID' - type: - $ref: '#/components/schemas/MetricNotebookType' - type: object - MetricAssetSLORelationship: - description: An object of type `slos` that can be referenced in the `included` data. - properties: - id: - $ref: '#/components/schemas/MetricSLOID' - type: - $ref: '#/components/schemas/MetricSLOType' - type: object - FormulaLimit: - description: >- - Message for specifying limits to the number of values returned by a - query. - - This limit is only for scalar queries and has no effect on timeseries - queries. - properties: - count: - description: The number of results to which to limit. - example: 10 - format: int32 - maximum: 2147483647 - type: integer - order: - $ref: '#/components/schemas/QuerySortOrder' - type: object - ScalarQuery: - description: An individual scalar query to one of the basic Datadog data sources. - example: - aggregator: avg - data_source: metrics - query: avg:system.cpu.user{*} by {env} - oneOf: - - $ref: '#/components/schemas/MetricsScalarQuery' - - $ref: '#/components/schemas/EventsScalarQuery' - GroupScalarColumn: - description: A column containing the tag keys and values in a group. - properties: - name: - description: The name of the tag key or group. - example: env - type: string - type: - $ref: '#/components/schemas/ScalarColumnTypeGroup' - values: - description: >- - The array of tag values for each group found for the results of the - formulas or queries. - example: - - - production - - - staging - items: - description: An individual tag value for a given group column. - items: - description: One tag value within a values array. - example: production - type: string - type: array - type: array - type: object - DataScalarColumn: - description: A column containing the numerical results for a formula or query. - properties: - meta: - $ref: '#/components/schemas/ScalarMeta' - name: - description: The name referencing the formula or query for this column. - example: a - type: string - type: - $ref: '#/components/schemas/ScalarColumnTypeNumber' - values: - description: The array of numerical values for one formula or query. - example: - - 0.5 - items: - description: An individual value for a given column and group-by. - example: 0.5 - format: double - nullable: true - type: number - type: array - type: object - TimeseriesQuery: - description: An individual timeseries query to one of the basic Datadog data sources. - example: - data_source: metrics - query: avg:system.cpu.user{*} by {env} - oneOf: - - $ref: '#/components/schemas/MetricsTimeseriesQuery' - - $ref: '#/components/schemas/EventsTimeseriesQuery' - TimeseriesResponseSeries: - description: '' - properties: - group_tags: - $ref: '#/components/schemas/GroupTags' - query_index: - description: >- - The index of the query in the "formulas" array (or "queries" array - if no "formulas" was specified). - example: 0 - format: int32 - maximum: 2147483647 - type: integer - unit: - description: >- - Detailed information about the unit. - - The first element describes the "primary unit" (for example, `bytes` - in `bytes per second`). - - The second element describes the "per unit" (for example, `second` - in `bytes per second`). - - If the second element is not present, the API returns null. - items: - $ref: '#/components/schemas/Unit' - nullable: true - type: array - type: object - TimeseriesResponseValues: - description: Array of values for an individual formula or query. - example: - - 1575317847 - - 0.5 - items: - description: An individual value for a given time. - format: double - nullable: true - type: number - type: array - SpansAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - SpansComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - SpansGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - Note: At most 100 buckets are allowed, the number of buckets is (max - - min)/interval. - properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out). - example: 100 - format: double - type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out). - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - SpansGroupByMissing: - description: The value to use for spans that don't have the facet used to group by. - oneOf: - - $ref: '#/components/schemas/SpansGroupByMissingString' - - $ref: '#/components/schemas/SpansGroupByMissingNumber' - SpansAggregateSort: - description: A sort rule. - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/SpansAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' - type: string - order: - $ref: '#/components/schemas/SpansSortOrder' - type: - $ref: '#/components/schemas/SpansAggregateSortType' - type: object - SpansGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/SpansGroupByTotalBoolean' - - $ref: '#/components/schemas/SpansGroupByTotalString' - - $ref: '#/components/schemas/SpansGroupByTotalNumber' - SpansAggregateBucketValueSingleString: - description: A single string value. - type: string - SpansAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - SpansAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/SpansAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - MetricCustomSpaceAggregation: - description: A space aggregation for use in query. - enum: - - avg - - max - - min - - sum - example: sum - type: string - x-enum-varnames: - - AVG - - MAX - - MIN - - SUM - MetricCustomTimeAggregation: - description: A time aggregation for use in query. - enum: - - avg - - count - - max - - min - - sum - example: sum - type: string - x-enum-varnames: - - AVG - - COUNT - - MAX - - MIN - - SUM - QuerySortOrder: - default: desc - description: Direction of sort. - enum: - - asc - - desc - type: string - x-enum-varnames: - - ASC - - DESC - MetricsScalarQuery: - description: An individual scalar metrics query. - properties: - aggregator: - $ref: '#/components/schemas/MetricsAggregator' - data_source: - $ref: '#/components/schemas/MetricsDataSource' - name: - description: The variable name for use in formulas. - type: string - query: - description: A classic metrics query string. - example: avg:system.cpu.user{*} by {env} - type: string - required: - - data_source - - query - - aggregator - type: object - EventsScalarQuery: - description: An individual scalar events query. - properties: - compute: - $ref: '#/components/schemas/EventsCompute' - data_source: - $ref: '#/components/schemas/EventsDataSource' - group_by: - $ref: '#/components/schemas/EventsQueryGroupBys' - indexes: - description: The indexes in which to search. - example: - - main - items: - description: The unique index name. - example: main - type: string - type: array - name: - description: The variable name for use in formulas. - type: string - search: - $ref: '#/components/schemas/EventsSearch' - required: - - data_source - - compute - type: object - ScalarColumnTypeGroup: - default: group - description: The type of column present for groups. - enum: - - group - example: group - type: string - x-enum-varnames: - - GROUP - ScalarMeta: - description: Metadata for the resulting numerical values. - properties: - unit: - description: >- - Detailed information about the unit. - - First element describes the "primary unit" (for example, `bytes` in - `bytes per second`). - - The second element describes the "per unit" (for example, `second` - in `bytes per second`). - - If the second element is not present, the API returns null. - items: - $ref: '#/components/schemas/Unit' - nullable: true - type: array - type: object - ScalarColumnTypeNumber: - default: number - description: The type of column present for numbers. - enum: - - number - example: number - type: string - x-enum-varnames: - - NUMBER - MetricsTimeseriesQuery: - description: An individual timeseries metrics query. - properties: - data_source: - $ref: '#/components/schemas/MetricsDataSource' - name: - description: The variable name for use in formulas. - type: string - query: - description: A classic metrics query string. - example: avg:system.cpu.user{*} by {env} - type: string - required: - - data_source - - query - type: object - EventsTimeseriesQuery: - description: An individual timeseries events query. - properties: - compute: - $ref: '#/components/schemas/EventsCompute' - data_source: - $ref: '#/components/schemas/EventsDataSource' - group_by: - $ref: '#/components/schemas/EventsQueryGroupBys' - indexes: - description: The indexes in which to search. - example: - - main - items: - description: The unique index name. - example: main - type: string - type: array - name: - description: The variable name for use in formulas. - type: string - search: - $ref: '#/components/schemas/EventsSearch' - required: - - data_source - - compute - type: object - GroupTags: - description: List of tags that apply to a single response value. - items: - description: A single tag that applies to a single response value. - example: env:production - type: string - type: array - Unit: - description: >- - Object containing the metric unit family, scale factor, name, and short - name. - nullable: true - properties: - family: - description: >- - Unit family, allows for conversion between units of the same family, - for scaling. - example: time - type: string - name: - description: Unit name - example: minute - type: string - plural: - description: Plural form of the unit name. - example: minutes - type: string - scale_factor: - description: Factor for scaling between units of the same family. - example: 60 - format: double - type: number - short_name: - description: Abbreviation of the unit. - example: min - type: string - type: object - SpansGroupByMissingString: - description: The missing value to use if there is string valued facet. - type: string - SpansGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - SpansSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - SpansAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - SpansGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - SpansGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - SpansGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - SpansAggregateBucketValueTimeseriesPoint: - description: A timeseries point. - properties: - time: - description: The time value for this point. - example: '2023-06-08T11:55:00Z' - type: string - value: - description: The value for this point. - example: 19 - format: double - type: number - type: object - MetricsAggregator: - default: avg - description: The type of aggregation that can be performed on metrics-based queries. - enum: - - avg - - min - - max - - sum - - last - - percentile - - mean - - l2norm - - area - example: avg - type: string - x-enum-varnames: - - AVG - - MIN - - MAX - - SUM - - LAST - - PERCENTILE - - MEAN - - L2NORM - - AREA - MetricsDataSource: - default: metrics - description: A data source that is powered by the Metrics platform. - enum: - - metrics - - cloud_cost - example: metrics - type: string - x-enum-varnames: - - METRICS - - CLOUD_COST - EventsCompute: - description: The instructions for what to compute for this query. - properties: - aggregation: - $ref: '#/components/schemas/EventsAggregation' - interval: - description: Interval for compute in milliseconds. - example: 60000 - format: int64 - type: integer - metric: - description: The "measure" attribute on which to perform the computation. - type: string - required: - - aggregation - type: object - EventsDataSource: - default: logs - description: A data source that is powered by the Events Platform. - enum: - - logs - - rum - - dora - example: logs - type: string - x-enum-varnames: - - LOGS - - RUM - - DORA - EventsQueryGroupBys: - description: The list of facets on which to split results. - items: - $ref: '#/components/schemas/EventsGroupBy' - type: array - EventsSearch: - description: Configuration of the search/filter for an events query. - properties: - query: - description: The search/filter string for an events query. - example: status:warn service:foo - type: string - type: object - EventsAggregation: - default: count - description: The type of aggregation that can be performed on events-based queries. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - example: count - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PC75 - - PC90 - - PC95 - - PC98 - - PC99 - - SUM - - MIN - - MAX - - AVG - EventsGroupBy: - description: A dimension on which to split a query's results. - properties: - facet: - description: The facet by which to split groups. - example: '@error.type' - type: string - limit: - default: 10 - description: >- - The maximum buckets to return for this group by. Note: at most 10000 - buckets are allowed. - - If grouping by multiple facets, the product of limits must not - exceed 10000. - example: 10 - format: int32 - maximum: 10000 - type: integer - sort: - $ref: '#/components/schemas/EventsGroupBySort' - required: - - facet - type: object - EventsGroupBySort: - description: The dimension by which to sort a query's results. - properties: - aggregation: - $ref: '#/components/schemas/EventsAggregation' - metric: - description: >- - The metric's calculated value which should be used to define the - sort order of a query's results. - example: '@duration' - type: string - order: - $ref: '#/components/schemas/QuerySortOrder' - type: - $ref: '#/components/schemas/EventsSortType' - required: - - aggregation - type: object - EventsSortType: - description: The type of sort to use on the calculated value. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - responses: - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - UnauthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unauthorized - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - SpansBadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request. - SpansForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied.' - SpansUnprocessableEntityResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Unprocessable Entity. - SpansTooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Too many requests: The rate limit set by the API has been exceeded.' - parameters: - DatasetID: - description: The ID of a defined dataset. - example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1 - in: path - name: dataset_id - required: true - schema: - type: string - MetricName: - description: The name of the metric. - example: dist.http.endpoint.request - in: path - name: metric_name - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/monitoring.yaml b/provider-dev/source/monitoring.yaml deleted file mode 100644 index 8aac6df..0000000 --- a/provider-dev/source/monitoring.yaml +++ /dev/null @@ -1,1890 +0,0 @@ -openapi: 3.0.0 -info: - title: monitoring API - description: datadog monitoring API - version: '1.0' -paths: - /api/v2/monitor/notification_rule: - get: - description: Returns a list of all monitor notification rules. - operationId: GetMonitorNotificationRules - parameters: - - description: >- - The page to start paginating from. If `page` is not specified, the - argument defaults to the first page. - in: query - name: page - required: false - schema: - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: >- - The number of rules to return per page. If `per_page` is not - specified, the argument defaults to 100. - in: query - name: per_page - required: false - schema: - format: int32 - maximum: 1000 - minimum: 1 - type: integer - - description: >- - String for sort order, composed of field and sort order separated by - a colon, for example `name:asc`. Supported sort directions: `asc`, - `desc`. Supported fields: `name`, `created_at`. - in: query - name: sort - required: false - schema: - type: string - - description: >- - JSON-encoded filter object. Supported keys: - - * `text`: Free-text query matched against rule name, tags, and - recipients. - - * `tags`: Array of strings. Return rules that have any of these - tags. - - * `recipients`: Array of strings. Return rules that have any of - these recipients. - example: >- - {"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]} - in: query - name: filters - required: false - schema: - type: string - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - - path is `created_by`. - in: query - name: include - required: false - schema: - example: created_by - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleListResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get all monitor notification rules - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - post: - description: Creates a monitor notification rule. - operationId: CreateMonitorNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleCreateRequest' - description: Request body to create a monitor notification rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a monitor notification rule - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/notification_rule/{rule_id}: - delete: - description: Deletes a monitor notification rule by `rule_id`. - operationId: DeleteMonitorNotificationRule - parameters: - - description: ID of the monitor notification rule to delete. - in: path - name: rule_id - required: true - schema: - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a monitor notification rule - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - get: - description: Returns a monitor notification rule by `rule_id`. - operationId: GetMonitorNotificationRule - parameters: - - description: ID of the monitor notification rule to fetch. - in: path - name: rule_id - required: true - schema: - type: string - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - - path is `created_by`. - in: query - name: include - required: false - schema: - example: created_by - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get a monitor notification rule - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - patch: - description: Updates a monitor notification rule by `rule_id`. - operationId: UpdateMonitorNotificationRule - parameters: - - description: ID of the monitor notification rule to update. - in: path - name: rule_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequest' - description: Request body to update the monitor notification rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorNotificationRuleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a monitor notification rule - tags: - - Monitors - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/policy: - get: - description: Get all monitor configuration policies. - operationId: ListMonitorConfigPolicies - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyListResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get all monitor configuration policies - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - post: - description: Create a monitor configuration policy. - operationId: CreateMonitorConfigPolicy - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyCreateRequest' - description: Create a monitor configuration policy request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a monitor configuration policy - tags: - - Monitors - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/policy/{policy_id}: - delete: - description: Delete a monitor configuration policy. - operationId: DeleteMonitorConfigPolicy - parameters: - - description: ID of the monitor configuration policy. - in: path - name: policy_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a monitor configuration policy - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - get: - description: Get a monitor configuration policy by `policy_id`. - operationId: GetMonitorConfigPolicy - parameters: - - description: ID of the monitor configuration policy. - in: path - name: policy_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get a monitor configuration policy - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - patch: - description: Edit a monitor configuration policy. - operationId: UpdateMonitorConfigPolicy - parameters: - - description: ID of the monitor configuration policy. - in: path - name: policy_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyEditRequest' - description: Description of the update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorConfigPolicyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit a monitor configuration policy - tags: - - Monitors - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - /api/v2/monitor/template: - get: - description: Retrieve all monitor user templates. - operationId: ListMonitorUserTemplates - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateListResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get all monitor user templates - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: Create a new monitor user template. - operationId: CreateMonitorUserTemplate - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateCreateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/monitor/template/validate: - post: - description: Validate the structure and content of a monitor user template. - operationId: ValidateMonitorUserTemplate - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateCreateRequest' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/monitor/template/{template_id}: - delete: - description: Delete an existing monitor user template by its ID. - operationId: DeleteMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - type: string - responses: - '204': - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - get: - description: Retrieve a monitor user template by its ID. - operationId: GetMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - - description: >- - Whether to include all versions of the template in the response in - the versions field. - example: false - in: query - name: with_all_versions - required: false - schema: - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateResponse' - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_read - summary: Get a monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitors_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - put: - description: Creates a new version of an existing monitor user template. - operationId: UpdateMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a monitor user template to a new version - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/monitor/template/{template_id}/validate: - post: - description: >- - Validate the structure and content of an existing monitor user template - being updated to a new version. - operationId: ValidateExistingMonitorUserTemplate - parameters: - - description: ID of the monitor user template. - in: path - name: template_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorUserTemplateUpdateRequest' - required: true - responses: - '204': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate an existing monitor user template - tags: - - Monitors - x-permission: - operator: OR - permissions: - - monitor_config_policy_write - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/monitor/{monitor_id}/downtime_matches: - get: - description: Get all active downtimes for the specified monitor. - operationId: ListMonitorDowntimes - parameters: - - description: The id of the monitor. - in: path - name: monitor_id - required: true - schema: - format: int64 - type: integer - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of downtimes in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 30 - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/MonitorDowntimeMatchResponse' - description: OK - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Monitor Not Found error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Get active downtimes for a monitor - tags: - - Downtimes - x-codegen-request-body-name: body - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/synthetics/settings/on_demand_concurrency_cap: - get: - description: Get the on-demand concurrency cap. - operationId: GetOnDemandConcurrencyCap - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the on-demand concurrency cap - tags: - - Synthetics - x-permission: - operator: OR - permissions: - - billing_read - post: - description: Save new value for on-demand concurrency cap. - operationId: SetOnDemandConcurrencyCap - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' - description: . - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OnDemandConcurrencyCapResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Save new value for on-demand concurrency cap - tags: - - Synthetics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - billing_edit -components: - schemas: - MonitorNotificationRuleListResponse: - description: Response for retrieving all monitor notification rules. - properties: - data: - description: A list of monitor notification rules. - items: - $ref: '#/components/schemas/MonitorNotificationRuleData' - type: array - included: - description: Array of objects related to the monitor notification rules. - items: - $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - MonitorNotificationRuleCreateRequest: - description: Request for creating a monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleCreateRequestData' - required: - - data - type: object - MonitorNotificationRuleResponse: - description: A monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleData' - included: - description: >- - Array of objects related to the monitor notification rule that the - user requested. - items: - $ref: '#/components/schemas/MonitorNotificationRuleResponseIncludedItem' - type: array - type: object - MonitorNotificationRuleUpdateRequest: - description: Request for updating a monitor notification rule. - properties: - data: - $ref: '#/components/schemas/MonitorNotificationRuleUpdateRequestData' - required: - - data - type: object - MonitorConfigPolicyListResponse: - description: Response for retrieving all monitor configuration policies. - properties: - data: - description: An array of monitor configuration policies. - items: - $ref: '#/components/schemas/MonitorConfigPolicyResponseData' - type: array - type: object - MonitorConfigPolicyCreateRequest: - description: Request for creating a monitor configuration policy. - properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyCreateData' - required: - - data - type: object - MonitorConfigPolicyResponse: - description: Response for retrieving a monitor configuration policy. - properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyResponseData' - type: object - MonitorConfigPolicyEditRequest: - description: Request for editing a monitor configuration policy. - properties: - data: - $ref: '#/components/schemas/MonitorConfigPolicyEditData' - required: - - data - type: object - MonitorUserTemplateListResponse: - description: Response for retrieving all monitor user templates. - properties: - data: - description: An array of monitor user templates. - items: - $ref: '#/components/schemas/MonitorUserTemplateResponseData' - type: array - type: object - MonitorUserTemplateCreateRequest: - description: Request for creating a monitor user template. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateCreateData' - required: - - data - type: object - MonitorUserTemplateCreateResponse: - description: Response for creating a monitor user template. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateResponseData' - type: object - MonitorUserTemplateResponse: - description: Response for retrieving a monitor user template. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateResponseDataWithVersions' - type: object - MonitorUserTemplateUpdateRequest: - description: Request for creating a new monitor user template version. - properties: - data: - $ref: '#/components/schemas/MonitorUserTemplateUpdateData' - required: - - data - type: object - MonitorDowntimeMatchResponse: - description: Response for retrieving all downtime matches for a monitor. - properties: - data: - description: An array of downtime matches. - items: - $ref: '#/components/schemas/MonitorDowntimeMatchResponseData' - type: array - meta: - $ref: '#/components/schemas/DowntimeMeta' - type: object - OnDemandConcurrencyCapResponse: - description: On-demand concurrency cap response. - properties: - data: - $ref: '#/components/schemas/OnDemandConcurrencyCap' - type: object - OnDemandConcurrencyCapAttributes: - description: On-demand concurrency cap attributes. - properties: - on_demand_concurrency_cap: - description: Value of the on-demand concurrency cap. - format: double - type: number - type: object - MonitorNotificationRuleData: - description: Monitor notification rule data. - properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleResponseAttributes' - id: - $ref: '#/components/schemas/MonitorNotificationRuleId' - relationships: - $ref: '#/components/schemas/MonitorNotificationRuleRelationships' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - type: object - MonitorNotificationRuleResponseIncludedItem: - description: An object related to a monitor notification rule. - oneOf: - - $ref: '#/components/schemas/User' - MonitorNotificationRuleCreateRequestData: - description: Object to create a monitor notification rule. - properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleAttributes' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - required: - - attributes - type: object - MonitorNotificationRuleUpdateRequestData: - description: Object to update a monitor notification rule. - properties: - attributes: - $ref: '#/components/schemas/MonitorNotificationRuleAttributes' - id: - $ref: '#/components/schemas/MonitorNotificationRuleId' - type: - $ref: '#/components/schemas/MonitorNotificationRuleResourceType' - required: - - id - - attributes - type: object - MonitorConfigPolicyResponseData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeResponse' - id: - description: ID of this monitor configuration policy. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - type: object - MonitorConfigPolicyCreateData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeCreateRequest' - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - required: - - type - - attributes - type: object - MonitorConfigPolicyEditData: - description: A monitor configuration policy data. - properties: - attributes: - $ref: '#/components/schemas/MonitorConfigPolicyAttributeEditRequest' - id: - description: ID of this monitor configuration policy. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/MonitorConfigPolicyResourceType' - required: - - id - - type - - attributes - type: object - MonitorUserTemplateResponseData: - description: Monitor user template list response data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateResponseAttributes' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - type: object - MonitorUserTemplateCreateData: - description: Monitor user template data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - required: - - type - - attributes - type: object - MonitorUserTemplateResponseDataWithVersions: - description: Monitor user template data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplate' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - type: object - MonitorUserTemplateUpdateData: - description: Monitor user template data. - properties: - attributes: - $ref: '#/components/schemas/MonitorUserTemplateRequestAttributes' - id: - $ref: '#/components/schemas/MonitorUserTemplateId' - type: - $ref: '#/components/schemas/MonitorUserTemplateResourceType' - required: - - id - - type - - attributes - type: object - MonitorDowntimeMatchResponseData: - description: A downtime match. - properties: - attributes: - $ref: '#/components/schemas/MonitorDowntimeMatchResponseAttributes' - id: - description: The downtime ID. - example: 00000000-0000-1234-0000-000000000000 - nullable: true - type: string - type: - $ref: '#/components/schemas/MonitorDowntimeMatchResourceType' - type: object - DowntimeMeta: - description: Pagination metadata returned by the API. - properties: - page: - $ref: '#/components/schemas/DowntimeMetaPage' - type: object - OnDemandConcurrencyCap: - description: On-demand concurrency cap. - properties: - attributes: - $ref: '#/components/schemas/OnDemandConcurrencyCapAttributes' - type: - $ref: '#/components/schemas/OnDemandConcurrencyCapType' - type: object - MonitorNotificationRuleResponseAttributes: - additionalProperties: {} - description: Attributes of the monitor notification rule. - properties: - created: - description: Creation time of the monitor notification rule. - example: '2020-01-02T03:04:00.000Z' - format: date-time - type: string - filter: - $ref: '#/components/schemas/MonitorNotificationRuleFilter' - modified: - description: Time the monitor notification rule was last modified. - example: '2020-01-02T03:04:00.000Z' - format: date-time - type: string - name: - $ref: '#/components/schemas/MonitorNotificationRuleName' - recipients: - $ref: '#/components/schemas/MonitorNotificationRuleRecipients' - type: object - MonitorNotificationRuleId: - description: The ID of the monitor notification rule. - example: 00000000-0000-1234-0000-000000000000 - type: string - MonitorNotificationRuleRelationships: - description: All relationships associated with monitor notification rule. - properties: - created_by: - $ref: '#/components/schemas/MonitorNotificationRuleRelationshipsCreatedBy' - type: object - MonitorNotificationRuleResourceType: - default: monitor-notification-rule - description: Monitor notification rule resource type. - enum: - - monitor-notification-rule - example: monitor-notification-rule - type: string - x-enum-varnames: - - MONITOR_NOTIFICATION_RULE - User: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' - type: object - MonitorNotificationRuleAttributes: - additionalProperties: false - description: Attributes of the monitor notification rule. - properties: - filter: - $ref: '#/components/schemas/MonitorNotificationRuleFilter' - name: - $ref: '#/components/schemas/MonitorNotificationRuleName' - recipients: - $ref: '#/components/schemas/MonitorNotificationRuleRecipients' - required: - - name - - recipients - type: object - MonitorConfigPolicyAttributeResponse: - description: Policy and policy type for a monitor configuration policy. - properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicy' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - type: object - MonitorConfigPolicyResourceType: - default: monitor-config-policy - description: Monitor configuration policy resource type. - enum: - - monitor-config-policy - example: monitor-config-policy - type: string - x-enum-varnames: - - MONITOR_CONFIG_POLICY - MonitorConfigPolicyAttributeCreateRequest: - description: Policy and policy type for a monitor configuration policy. - properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicyCreateRequest' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - required: - - policy_type - - policy - type: object - MonitorConfigPolicyAttributeEditRequest: - description: Policy and policy type for a monitor configuration policy. - properties: - policy: - $ref: '#/components/schemas/MonitorConfigPolicyPolicy' - policy_type: - $ref: '#/components/schemas/MonitorConfigPolicyType' - required: - - policy_type - - policy - type: object - MonitorUserTemplateResponseAttributes: - additionalProperties: {} - description: Attributes for a monitor user template. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - modified: - $ref: '#/components/schemas/MonitorUserTemplateModified' - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - type: object - MonitorUserTemplateId: - description: The unique identifier. - example: 00000000-0000-1234-0000-000000000000 - type: string - MonitorUserTemplateResourceType: - default: monitor-user-template - description: Monitor user template resource type. - enum: - - monitor-user-template - example: monitor-user-template - type: string - x-enum-varnames: - - MONITOR_USER_TEMPLATE - MonitorUserTemplateRequestAttributes: - additionalProperties: false - description: Attributes for a monitor user template. - properties: - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - required: - - title - - monitor_definition - - tags - type: object - MonitorUserTemplate: - additionalProperties: {} - description: A monitor user template object. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - modified: - $ref: '#/components/schemas/MonitorUserTemplateModified' - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - versions: - description: All versions of the monitor user template. - items: - $ref: '#/components/schemas/SimpleMonitorUserTemplate' - type: array - type: object - MonitorDowntimeMatchResponseAttributes: - description: Downtime match details. - properties: - end: - description: The end of the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true - type: string - groups: - description: An array of groups associated with the downtime. - example: - - service:postgres - - team:frontend - items: - description: An array of groups. - example: service:postgres - type: string - type: array - scope: - $ref: '#/components/schemas/DowntimeScope' - start: - description: The start of the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - type: string - type: object - MonitorDowntimeMatchResourceType: - default: downtime_match - description: Monitor Downtime Match resource type. - enum: - - downtime_match - example: downtime_match - type: string - x-enum-varnames: - - DOWNTIME_MATCH - DowntimeMetaPage: - description: Object containing the total filtered count. - properties: - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - OnDemandConcurrencyCapType: - description: On-demand concurrency cap type. - enum: - - on_demand_concurrency_cap - type: string - x-enum-varnames: - - ON_DEMAND_CONCURRENCY_CAP - MonitorNotificationRuleFilter: - description: Filter used to associate the notification rule with monitors. - oneOf: - - $ref: '#/components/schemas/MonitorNotificationRuleFilterTags' - MonitorNotificationRuleName: - description: The name of the monitor notification rule. - example: A notification rule name - maxLength: 1000 - minLength: 1 - type: string - MonitorNotificationRuleRecipients: - description: >- - A list of recipients to notify. Uses the same format as the monitor - `message` field. Must not start with an '@'. - example: - - slack-test-channel - - jira-test - items: - description: individual recipient. - maxLength: 255 - type: string - maxItems: 20 - minItems: 1 - type: array - uniqueItems: true - MonitorNotificationRuleRelationshipsCreatedBy: - description: The user who created the monitor notification rule. - properties: - data: - $ref: >- - #/components/schemas/MonitorNotificationRuleRelationshipsCreatedByData - type: object - UserAttributes: - description: Attributes of user object returned by the API. - properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time - type: string - name: - description: Name of the user. - nullable: true - type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true - type: string - verified: - description: Whether the user is verified. - type: boolean - type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. - properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - MonitorConfigPolicyPolicy: - description: Configuration for the policy. - oneOf: - - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicy' - MonitorConfigPolicyType: - default: tag - description: The monitor configuration policy type. - enum: - - tag - example: tag - type: string - x-enum-varnames: - - TAG - MonitorConfigPolicyPolicyCreateRequest: - description: Configuration for the policy. - oneOf: - - $ref: '#/components/schemas/MonitorConfigPolicyTagPolicyCreateRequest' - MonitorUserTemplateCreated: - description: The created timestamp of the template. - example: '2024-01-02T03:04:23.274966+00:00' - format: date-time - readOnly: true - type: string - MonitorUserTemplateDescription: - description: A brief description of the monitor user template. - example: This is a template for monitoring user activity. - nullable: true - type: string - MonitorUserTemplateModified: - description: The last modified timestamp. When the template version was created. - example: '2024-02-02T03:04:23.274966+00:00' - format: date-time - readOnly: true - type: string - MonitorUserTemplateTags: - description: The definition of `MonitorUserTemplateTags` object. - example: - - product:Our Custom App - - integration:Azure - items: - description: >- - Tags associated with the monitor user template. Must be key value. - Only 'product' and 'integration' keys are - - allowed. The value is the name of the category to display the template - under. Integrations can be filtered out in the UI. - - (Review note: This modeling of 'categories' is subject to change.) - example: us-east1 - minLength: 1 - type: string - uniqueItems: true - type: array - MonitorUserTemplateTemplateVariables: - description: The definition of `MonitorUserTemplateTemplateVariables` object. - items: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariablesItems' - type: array - MonitorUserTemplateTitle: - description: The title of the monitor user template. - example: Postgres CPU Monitor - type: string - MonitorUserTemplateVersion: - description: The version of the monitor user template. - example: 0 - format: int64 - nullable: true - readOnly: true - type: integer - SimpleMonitorUserTemplate: - description: A simplified version of a monitor user template. - properties: - created: - $ref: '#/components/schemas/MonitorUserTemplateCreated' - description: - $ref: '#/components/schemas/MonitorUserTemplateDescription' - id: - description: >- - The unique identifier. The initial version will match the template - ID. - example: 00000000-0000-1234-0000-000000000000 - type: string - monitor_definition: - additionalProperties: {} - description: >- - A valid monitor definition in the same format as the [V1 Monitor - API](https://docs.datadoghq.com/api/latest/monitors/#create-a-monitor). - example: - message: You may need to add web hosts if this is consistently high. - name: Bytes received on host0 - query: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100 - type: query alert - type: object - tags: - $ref: '#/components/schemas/MonitorUserTemplateTags' - template_variables: - $ref: '#/components/schemas/MonitorUserTemplateTemplateVariables' - title: - $ref: '#/components/schemas/MonitorUserTemplateTitle' - version: - $ref: '#/components/schemas/MonitorUserTemplateVersion' - type: object - DowntimeScope: - description: >- - The scope to which the downtime applies. Must follow the [common search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - example: env:(staging OR prod) AND datacenter:us-east-1 - type: string - MonitorNotificationRuleFilterTags: - additionalProperties: false - description: Filter monitors by tags. Monitors must match all tags. - properties: - tags: - description: A list of monitor tags. - example: - - team:product - - host:abc - items: - maxLength: 255 - type: string - maxItems: 20 - minItems: 1 - type: array - uniqueItems: true - required: - - tags - type: object - MonitorNotificationRuleRelationshipsCreatedByData: - description: Data for the user who created the monitor notification rule. - nullable: true - properties: - id: - description: User ID of the monitor notification rule creator. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' - required: - - data - type: object - RelationshipToOrganizations: - description: Relationship to organizations. - properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array - required: - - data - type: object - RelationshipToUsers: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array - required: - - data - type: object - RelationshipToRoles: - description: Relationship to roles. - properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array - type: object - MonitorConfigPolicyTagPolicy: - description: Tag attributes of a monitor configuration policy. - properties: - tag_key: - description: The key of the tag. - example: datacenter - maxLength: 255 - type: string - tag_key_required: - description: If a tag key is required for monitor creation. - example: true - type: boolean - valid_tag_values: - description: Valid values for the tag. - example: - - prod - - staging - items: - maxLength: 255 - type: string - type: array - type: object - MonitorConfigPolicyTagPolicyCreateRequest: - description: Tag attributes of a monitor configuration policy. - properties: - tag_key: - description: The key of the tag. - example: datacenter - maxLength: 255 - type: string - tag_key_required: - description: If a tag key is required for monitor creation. - example: true - type: boolean - valid_tag_values: - description: Valid values for the tag. - example: - - prod - - staging - items: - maxLength: 255 - type: string - type: array - required: - - tag_key - - tag_key_required - - valid_tag_values - type: object - MonitorUserTemplateTemplateVariablesItems: - additionalProperties: false - description: >- - List of objects representing template variables on the monitor which can - have selectable values. - properties: - available_values: - description: Available values for the variable. - example: - - value1 - - value2 - items: - minLength: 1 - type: string - uniqueItems: true - type: array - defaults: - description: Default values of the template variable. - example: - - defaultValue - items: - minLength: 0 - type: string - uniqueItems: true - type: array - name: - description: The name of the template variable. - example: regionName - type: string - tag_key: - description: >- - The tag key associated with the variable. This works the same as - dashboard template variables. - example: datacenter - type: string - required: - - name - type: object - RelationshipToOrganizationData: - description: Relationship to organization object. - properties: - id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - id - - type - type: object - RelationshipToUserData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - RelationshipToRoleData: - description: Relationship to role object. - properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - type: - $ref: '#/components/schemas/RolesType' - type: object - OrganizationsType: - default: orgs - description: Organizations resource type. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - RolesType: - default: roles - description: Roles type. - enum: - - roles - example: roles - type: string - x-enum-varnames: - - ROLES - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - parameters: - PageOffset: - description: Specific offset to use as the beginning of the returned page. - in: query - name: page[offset] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/organization.yaml b/provider-dev/source/organization.yaml deleted file mode 100644 index 91545c6..0000000 --- a/provider-dev/source/organization.yaml +++ /dev/null @@ -1,9357 +0,0 @@ -openapi: 3.0.0 -info: - title: organization API - description: datadog organization API - version: '1.0' -paths: - /api/v2/api_keys: - get: - description: List all API keys available for your account. - operationId: ListAPIKeys - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/APIKeysSortParameter' - - $ref: '#/components/parameters/APIKeyFilterParameter' - - $ref: '#/components/parameters/APIKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/APIKeyFilterCreatedAtEndParameter' - - $ref: '#/components/parameters/APIKeyFilterModifiedAtStartParameter' - - $ref: '#/components/parameters/APIKeyFilterModifiedAtEndParameter' - - $ref: '#/components/parameters/APIKeyIncludeParameter' - - $ref: '#/components/parameters/APIKeyReadConfigReadEnabledParameter' - - $ref: '#/components/parameters/APIKeyCategoryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all API keys - tags: - - Key Management - x-permission: - operator: OR - permissions: - - api_keys_read - post: - description: Create an API key. - operationId: CreateAPIKey - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an API key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - api_keys_write - /api/v2/api_keys/{api_key_id}: - delete: - description: Delete an API key. - operationId: DeleteAPIKey - parameters: - - $ref: '#/components/parameters/APIKeyId' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an API key - tags: - - Key Management - x-permission: - operator: OR - permissions: - - api_keys_delete - get: - description: Get an API key. - operationId: GetAPIKey - parameters: - - $ref: '#/components/parameters/APIKeyId' - - $ref: '#/components/parameters/APIKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get API key - tags: - - Key Management - x-permission: - operator: OR - permissions: - - api_keys_read - patch: - description: Update an API key. - operationId: UpdateAPIKey - parameters: - - $ref: '#/components/parameters/APIKeyId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/APIKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an API key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - api_keys_write - /api/v2/application_keys: - get: - description: List all application keys available for your org - operationId: ListApplicationKeys - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' - - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all application keys - tags: - - Key Management - x-permission: - operator: OR - permissions: - - org_app_keys_read - /api/v2/application_keys/{app_key_id}: - delete: - description: Delete an application key - operationId: DeleteApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_app_keys_write - get: - description: Get an application key for your org. - operationId: GetApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an application key - tags: - - Key Management - x-permission: - operator: OR - permissions: - - org_app_keys_read - patch: - description: Edit an application key - operationId: UpdateApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_app_keys_write - /api/v2/audit/events: - get: - description: >- - List endpoint returns events that match a Audit Logs search query. - - [Results are paginated][1]. - - - Use this endpoint to see your latest Audit Logs events. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - operationId: ListAuditLogs - parameters: - - description: Search query following Audit Logs syntax. - example: '@type:session @application_id:xxxx' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/AuditLogsSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuditLogsEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of Audit Logs events - tags: - - Audit - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - audit_logs_read - /api/v2/audit/events/search: - post: - description: >- - List endpoint returns Audit Logs events that match an Audit search - query. - - [Results are paginated][1]. - - - Use this endpoint to build complex Audit Logs events filtering and - search. - - - [1]: - https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - operationId: SearchAuditLogs - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AuditLogsSearchEventsRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuditLogsEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search Audit Logs events - tags: - - Audit - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - audit_logs_read - /api/v2/authn_mappings: - get: - description: List all AuthN Mappings in the org. - operationId: ListAuthNMappings - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: Sort AuthN Mappings depending on the given field. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/AuthNMappingsSort' - - description: Filter all mappings by the given string. - in: query - name: filter - required: false - schema: - type: string - - description: >- - Filter by mapping resource type. Defaults to "role" if not - specified. - in: query - name: resource_type - schema: - $ref: '#/components/schemas/AuthNMappingResourceType' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all AuthN Mappings - tags: - - AuthN Mappings - x-permission: - operator: OR - permissions: - - user_access_read - post: - description: Create an AuthN Mapping. - operationId: CreateAuthNMapping - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an AuthN Mapping - tags: - - AuthN Mappings - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/authn_mappings/{authn_mapping_id}: - delete: - description: Delete an AuthN Mapping specified by AuthN Mapping UUID. - operationId: DeleteAuthNMapping - parameters: - - $ref: '#/components/parameters/AuthNMappingID' - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an AuthN Mapping - tags: - - AuthN Mappings - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Get an AuthN Mapping specified by the AuthN Mapping UUID. - operationId: GetAuthNMapping - parameters: - - $ref: '#/components/parameters/AuthNMappingID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get an AuthN Mapping by UUID - tags: - - AuthN Mappings - x-permission: - operator: OR - permissions: - - user_access_read - patch: - description: Edit an AuthN Mapping. - operationId: UpdateAuthNMapping - parameters: - - $ref: '#/components/parameters/AuthNMappingID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AuthNMappingResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an AuthN Mapping - tags: - - AuthN Mappings - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/current_user/application_keys: - get: - description: List all application keys available for current user - operationId: ListCurrentUserApplicationKeys - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' - - $ref: '#/components/parameters/ApplicationKeyIncludeParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all application keys owned by current user - tags: - - Key Management - x-permission: - operator: OR - permissions: - - user_app_keys - post: - description: Create an application key for current user - operationId: CreateCurrentUserApplicationKey - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an application key for current user - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_app_keys - /api/v2/current_user/application_keys/{app_key_id}: - delete: - description: Delete an application key owned by current user - operationId: DeleteCurrentUserApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key owned by current user - tags: - - Key Management - x-permission: - operator: OR - permissions: - - user_app_keys - get: - description: Get an application key owned by current user - operationId: GetCurrentUserApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get one application key owned by current user - tags: - - Key Management - x-permission: - operator: OR - permissions: - - user_app_keys - patch: - description: Edit an application key owned by current user - operationId: UpdateCurrentUserApplicationKey - parameters: - - $ref: '#/components/parameters/ApplicationKeyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key owned by current user - tags: - - Key Management - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_app_keys - /api/v2/deletion/data/{product}: - post: - description: >- - Creates a data deletion request by providing a query and a timeframe - targeting the proper data. - operationId: CreateDataDeletionRequest - parameters: - - $ref: '#/components/parameters/ProductName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateDataDeletionRequestBody' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateDataDeletionResponseBody' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Precondition failed error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal server error - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Creates a data deletion request - tags: - - Data Deletion - x-permission: - operator: OR - permissions: - - rum_delete_data - - logs_delete_data - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/deletion/requests: - get: - description: >- - Gets a list of data deletion requests based on several filter - parameters. - operationId: GetDataDeletionRequests - parameters: - - description: >- - The next page of the previous search. If the next_page parameter is - included, the rest of the query elements are ignored. - example: cGFnZTI= - in: query - name: next_page - required: false - schema: - type: string - - description: Retrieve only the requests related to the given product. - example: logs - in: query - name: product - required: false - schema: - type: string - - description: Retrieve only the requests that matches the given query. - example: service:xyz host:abc - in: query - name: query - required: false - schema: - type: string - - description: Retrieve only the requests with the given status. - example: pending - in: query - name: status - required: false - schema: - type: string - - description: Sets the page size of the search. - example: '50' - in: query - name: page_size - required: false - schema: - default: 50 - format: int64 - maximum: 50 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetDataDeletionsResponseBody' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal server error - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Gets a list of data deletion requests - tags: - - Data Deletion - x-permission: - operator: OR - permissions: - - rum_delete_data - - logs_delete_data - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/deletion/requests/{id}/cancel: - put: - description: Cancels a data deletion request by providing its ID. - operationId: CancelDataDeletionRequest - parameters: - - $ref: '#/components/parameters/RequestId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CancelDataDeletionResponseBody' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '412': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Precondition failed error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal server error - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Cancels a data deletion request - tags: - - Data Deletion - x-permission: - operator: OR - permissions: - - rum_delete_data - - logs_delete_data - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/domain_allowlist: - get: - description: Get the domain allowlist for an organization. - operationId: GetDomainAllowlist - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DomainAllowlistResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - - AuthZ: - - monitors_write - summary: Get Domain Allowlist - tags: - - Domain Allowlist - x-permission: - operator: OR - permissions: - - org_management - - monitors_write - - generate_dashboard_reports - - generate_log_reports - - manage_log_reports - patch: - description: Update the domain allowlist for an organization. - operationId: PatchDomainAllowlist - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DomainAllowlistRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DomainAllowlistResponse' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - - AuthZ: - - monitors_write - summary: Sets Domain Allowlist - tags: - - Domain Allowlist - x-permission: - operator: OR - permissions: - - org_management - - monitors_write - - generate_dashboard_reports - - generate_log_reports - - manage_log_reports - /api/v2/ip_allowlist: - get: - description: Returns the IP allowlist and its enabled or disabled state. - operationId: GetIPAllowlist - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - summary: Get IP Allowlist - tags: - - IP Allowlist - x-permission: - operator: OR - permissions: - - org_management - patch: - description: Edit the entries in the IP allowlist, and enable or disable it. - operationId: UpdateIPAllowlist - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IPAllowlistResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_management - summary: Update IP Allowlist - tags: - - IP Allowlist - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_management - /api/v2/org_configs: - get: - description: Returns all Org Configs (name, description, and value). - operationId: ListOrgConfigs - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Org Configs - tags: - - Organizations - x-permission: - operator: OPEN - permissions: [] - /api/v2/org_configs/{org_config_name}: - get: - description: Return the name, description, and value of a specific Org Config. - operationId: GetOrgConfig - parameters: - - $ref: '#/components/parameters/OrgConfigName' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigGetResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a specific Org Config value - tags: - - Organizations - x-permission: - operator: OPEN - permissions: [] - patch: - description: Update the value of a specific Org Config. - operationId: UpdateOrgConfig - parameters: - - $ref: '#/components/parameters/OrgConfigName' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigWriteRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConfigGetResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a specific Org Config - tags: - - Organizations - x-permission: - operator: OR - permissions: - - org_management - /api/v2/org_connections: - get: - description: Returns a list of org connections. - operationId: ListOrgConnections - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionListResponse' - description: OK - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_read - summary: List Org Connections - tags: - - Org Connections - x-permission: - operator: OR - permissions: - - org_connections_read - post: - description: Create a new org connection between the current org and a target org. - operationId: CreateOrgConnections - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Create Org Connection - tags: - - Org Connections - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_connections_write - /api/v2/org_connections/{connection_id}: - delete: - description: Delete an existing org connection. - operationId: DeleteOrgConnections - parameters: - - $ref: '#/components/parameters/OrgConnectionId' - responses: - '200': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Delete Org Connection - tags: - - Org Connections - x-permission: - operator: OR - permissions: - - org_connections_write - patch: - description: Update an existing org connection. - operationId: UpdateOrgConnections - parameters: - - $ref: '#/components/parameters/OrgConnectionId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/OrgConnectionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - org_connections_write - summary: Update Org Connection - tags: - - Org Connections - x-permission: - operator: OR - permissions: - - org_connections_write - /api/v2/permissions: - get: - description: Returns a list of all permissions, including name, description, and ID. - operationId: ListPermissions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List permissions - tags: - - Roles - x-permission: - operator: OR - permissions: - - user_access_read - /api/v2/restriction_policy/{resource_id}: - delete: - description: Deletes the restriction policy associated with a specified resource. - operationId: DeleteRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete a restriction policy - tags: - - Restriction Policies - x-permission: - operator: OPEN - permissions: [] - get: - description: Retrieves the restriction policy associated with a specified resource. - operationId: GetRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get a restriction policy - tags: - - Restriction Policies - x-permission: - operator: OPEN - permissions: [] - post: - description: |- - Updates the restriction policy associated with a resource. - - #### Supported resources - Restriction policies can be applied to the following resources: - - Dashboards: `dashboard` - - Integration Services: `integration-service` - - Integration Webhooks: `integration-webhook` - - Notebooks: `notebook` - - Powerpacks: `powerpack` - - Reference Tables: `reference-table` - - Security Rules: `security-rule` - - Service Level Objectives: `slo` - - Synthetic Global Variables: `synthetics-global-variable` - - Synthetic Tests: `synthetics-test` - - Synthetic Private Locations: `synthetics-private-location` - - Monitors: `monitor` - - Workflows: `workflow` - - App Builder Apps: `app-builder-app` - - Connections: `connection` - - Connection Groups: `connection-group` - - RUM Applications: `rum-application` - - Cross Org Connections: `cross-org-connection` - - Spreadsheets: `spreadsheet` - - On-Call Schedules: `on-call-schedule` - - On-Call Escalation Policies: `on-call-escalation-policy` - - On-Call Team Routing Rules: `on-call-team-routing-rules` - - #### Supported relations for resources - Resource Type | Supported Relations - ----------------------------|-------------------------- - Dashboards | `viewer`, `editor` - Integration Services | `viewer`, `editor` - Integration Webhooks | `viewer`, `editor` - Notebooks | `viewer`, `editor` - Powerpacks | `viewer`, `editor` - Security Rules | `viewer`, `editor` - Service Level Objectives | `viewer`, `editor` - Synthetic Global Variables | `viewer`, `editor` - Synthetic Tests | `viewer`, `editor` - Synthetic Private Locations | `viewer`, `editor` - Monitors | `viewer`, `editor` - Reference Tables | `viewer`, `editor` - Workflows | `viewer`, `runner`, `editor` - App Builder Apps | `viewer`, `editor` - Connections | `viewer`, `resolver`, `editor` - Connection Groups | `viewer`, `editor` - RUM Application | `viewer`, `editor` - Cross Org Connections | `viewer`, `editor` - Spreadsheets | `viewer`, `editor` - On-Call Schedules | `viewer`, `overrider`, `editor` - On-Call Escalation Policies | `viewer`, `editor` - On-Call Team Routing Rules | `viewer`, `editor` - operationId: UpdateRestrictionPolicy - parameters: - - $ref: '#/components/parameters/ResourceID' - - description: >- - Allows admins (users with the `user_access_manage` permission) to - remove their own access from the resource if set to `true`. By - default, this is set to `false`, preventing admins from locking - themselves out. - in: query - name: allow_self_lockout - required: false - schema: - type: boolean - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyUpdateRequest' - description: Restriction policy payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RestrictionPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Update a restriction policy - tags: - - Restriction Policies - x-codegen-request-body-name: body - x-permission: - operator: OPEN - permissions: [] - /api/v2/roles: - get: - description: Returns all roles, including their names and their unique identifiers. - operationId: ListRoles - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: >- - Sort roles depending on the given field. Sort order is **ascending** - by default. - - Sort order is **descending** if the field is prefixed by a negative - sign, for example: - - `sort=-name`. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/RolesSort' - - description: Filter all roles by the given string. - in: query - name: filter - required: false - schema: - type: string - - description: Filter all roles by the given list of role IDs. - in: query - name: filter[id] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RolesResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List roles - tags: - - Roles - x-permission: - operator: OR - permissions: - - user_access_read - post: - description: Create a new role for your organization. - operationId: CreateRole - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCreateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}: - delete: - description: Disables a role. - operationId: DeleteRole - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Delete role - tags: - - Roles - x-codegen-request-body-name: body - get: - description: Get a role in the organization specified by the role’s `role_id`. - operationId: GetRole - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a role - tags: - - Roles - x-codegen-request-body-name: body - patch: - description: >- - Edit a role. Can only be used with application keys belonging to - administrators. - operationId: UpdateRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Update a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}/clone: - post: - description: Clone an existing role - operationId: CloneRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RoleCloneRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/RoleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Create a new role by cloning an existing role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}/permissions: - delete: - description: Removes a permission from a role. - operationId: RemovePermissionFromRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToPermission' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Revoke permission - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Returns a list of all permissions for a single role. - operationId: ListRolePermissions - parameters: - - $ref: '#/components/parameters/RoleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List permissions for a role - tags: - - Roles - x-codegen-request-body-name: body - post: - description: Adds a permission to a role. - operationId: AddPermissionToRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToPermission' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Grant permission to a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/roles/{role_id}/users: - delete: - description: Removes a user from a role. - operationId: RemoveUserFromRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToUser' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Remove a user from a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - get: - description: Gets all users of a role. - operationId: ListRoleUsers - parameters: - - $ref: '#/components/parameters/RoleID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: >- - User attribute to order results by. Sort order is **ascending** by - default. - - Sort order is **descending** if the field is prefixed by a negative - sign, - - for example `sort=-name`. Options: `name`, `email`, `status`. - in: query - name: sort - required: false - schema: - default: name - type: string - - description: Filter all users by the given string. Defaults to no filtering. - in: query - name: filter - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get all users of a role - tags: - - Roles - post: - description: Adds a user to a role. - operationId: AddUserToRole - parameters: - - $ref: '#/components/parameters/RoleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RelationshipToUser' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Add a user to a role - tags: - - Roles - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - /api/v2/saml_configurations/idp_metadata: - post: - description: >- - Endpoint for uploading IdP metadata for SAML setup. - - - Use this endpoint to upload or replace IdP metadata for SAML login - configuration. - operationId: UploadIdPMetadata - requestBody: - content: - multipart/form-data: - schema: - $ref: '#/components/schemas/IdPMetadataFormData' - required: true - responses: - '200': - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Upload IdP metadata - tags: - - Organizations - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - org_management - /api/v2/service_accounts: - post: - description: Create a service account for your organization. - operationId: CreateServiceAccount - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceAccountCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a service account - tags: - - Service Accounts - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - service_account_write - /api/v2/service_accounts/{service_account_id}/application_keys: - get: - description: List all application keys available for this service account. - operationId: ListServiceAccountApplicationKeys - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/ApplicationKeysSortParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtStartParameter' - - $ref: '#/components/parameters/ApplicationKeyFilterCreatedAtEndParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationKeysResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List application keys for this service account - tags: - - Service Accounts - x-permission: - operator: OR - permissions: - - service_account_write - post: - description: Create an application key for this service account. - operationId: CreateServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyResponse' - description: Created - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create an application key for this service account - tags: - - Service Accounts - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - service_account_write - /api/v2/service_accounts/{service_account_id}/application_keys/{app_key_id}: - delete: - description: Delete an application key owned by this service account. - operationId: DeleteServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '204': - description: No Content - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete an application key for this service account - tags: - - Service Accounts - x-permission: - operator: OR - permissions: - - service_account_write - get: - description: Get an application key owned by this service account. - operationId: GetServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PartialApplicationKeyResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get one application key for this service account - tags: - - Service Accounts - x-permission: - operator: OR - permissions: - - service_account_write - patch: - description: Edit an application key owned by this service account. - operationId: UpdateServiceAccountApplicationKey - parameters: - - $ref: '#/components/parameters/ServiceAccountID' - - $ref: '#/components/parameters/ApplicationKeyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationKeyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PartialApplicationKeyResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Edit an application key for this service account - tags: - - Service Accounts - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - service_account_write - /api/v2/team: - get: - description: >- - Get all teams. - - Can be used to search for teams using the `filter[keyword]` and - `filter[me]` query parameters. - operationId: ListTeams - parameters: - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/PageSize' - - description: Specifies the order of the returned teams - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/ListTeamsSort' - - description: >- - Included related resources optionally requested. Allowed enum - values: `team_links, user_team_permissions` - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/ListTeamsInclude' - type: array - - description: Search query. Can be team name, team handle, or email of team member - in: query - name: filter[keyword] - required: false - schema: - type: string - - description: When true, only returns teams the current user belongs to - in: query - name: filter[me] - required: false - schema: - type: boolean - - description: List of fields that need to be fetched. - explode: false - in: query - name: fields[team] - required: false - schema: - items: - $ref: '#/components/schemas/TeamsField' - type: array - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get all teams - tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - teams_read - post: - description: >- - Create a new team. - - User IDs passed through the `users` relationship field are added to the - team. - operationId: CreateTeam - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamResponse' - description: CREATED - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - - teams_manage - summary: Create a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - teams_read - - teams_manage - /api/v2/team/sync: - post: - description: >- - This endpoint attempts to link your existing Datadog teams with GitHub - teams by matching their names. - - It evaluates all current Datadog teams and compares them against teams - in the GitHub organization - - connected to your Datadog account, based on Datadog Team handle and - GitHub Team slug - - (lowercased and kebab-cased). - - - This operation is read-only on the GitHub side, no teams will be - modified or created. - - - [A GitHub organization must be connected to your Datadog - account](https://docs.datadoghq.com/integrations/github/), - - and the GitHub App integrated with Datadog must have the `Members Read` - permission. Matching is performed by comparing the Datadog team handle - to the GitHub team slug - - using a normalized exact match; case is ignored and spaces are removed. - No modifications are made - - to teams in GitHub. This will not create new Teams in Datadog. - operationId: SyncTeams - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamSyncRequest' - required: true - responses: - '200': - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Internal Server Error - Unexpected error during linking. - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_manage - summary: Link Teams with GitHub Teams - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - teams_manage - x-unstable: >- - **Note**: This endpoint is in Preview. To request access, fill out this - [form](https://www.datadoghq.com/product-preview/github-integration-for-teams/). - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/team/{super_team_id}/member_teams: - get: - description: Get all member teams. - operationId: ListMemberTeams - parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: List of fields that need to be fetched. - explode: false - in: query - name: fields[team] - required: false - schema: - items: - $ref: '#/components/schemas/TeamsField' - type: array - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get all member teams - tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - teams_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - post: - description: >- - Add a member team. - - Adds the team given by the `id` in the body as a member team of the - super team. - operationId: AddMemberTeam - parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AddMemberTeamRequest' - required: true - responses: - '204': - description: Added - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Add a member team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/team/{super_team_id}/member_teams/{member_team_id}: - delete: - description: Remove a super team's member team identified by `member_team_id`. - operationId: RemoveMemberTeam - parameters: - - description: None - in: path - name: super_team_id - required: true - schema: - type: string - - description: None - in: path - name: member_team_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a member team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - x-unstable: |- - **Note**: This endpoint is in Preview. If you have any feedback, - contact [Datadog support](https://docs.datadoghq.com/help/). - /api/v2/team/{team_id}: - delete: - description: Remove a team using the team's `id`. - operationId: DeleteTeam - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - - teams_manage - summary: Remove a team - tags: - - Teams - x-permission: - operator: AND - permissions: - - teams_read - - teams_manage - get: - description: Get a single team using the team's `id`. - operationId: GetTeam - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - patch: - description: >- - Update a team using the team's `id`. - - If the `team_links` relationship is present, the associated links are - updated to be in the order they appear in the array, and any existing - team links not present are removed. - operationId: UpdateTeam - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/links: - get: - description: Get all links for a given team. - operationId: GetTeamLinks - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinksResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get links for a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - post: - description: Add a new link to a team. - operationId: CreateTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Create a team link - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/links/{link_id}: - delete: - description: Remove a link from a team. - operationId: DeleteTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a team link - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - get: - description: Get a single link for a team. - operationId: GetTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get a team link - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - patch: - description: Update a team link. - operationId: UpdateTeamLink - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: link_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamLinkResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a team link - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/memberships: - get: - description: Get a paginated list of members for a team - operationId: GetTeamMemberships - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: Specifies the order of returned team memberships - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/GetTeamMembershipsSort' - - description: Search query, can be user email or name - in: query - name: filter[keyword] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamsResponse' - description: Represents a user's association to a team - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get team memberships - tags: - - Teams - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - teams_read - post: - description: Add a user to a team. - operationId: CreateTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamResponse' - description: Represents a user's association to a team - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Add a user to a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/memberships/{user_id}: - delete: - description: Remove a user from a team. - operationId: DeleteTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: user_id - required: true - schema: - type: string - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Remove a user from a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - patch: - description: Update a user's membership attributes on a team. - operationId: UpdateTeamMembership - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: user_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamResponse' - description: Represents a user's association to a team - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update a user's membership attributes on a team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/permission-settings: - get: - description: Get all permission settings for a given team. - operationId: GetTeamPermissionSettings - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamPermissionSettingsResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get permission settings for a team - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/team/{team_id}/permission-settings/{action}: - put: - description: Update a team permission setting for a given team. - operationId: UpdateTeamPermissionSetting - parameters: - - description: None - in: path - name: team_id - required: true - schema: - type: string - - description: None - in: path - name: action - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamPermissionSettingUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamPermissionSettingResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Update permission setting for team - tags: - - Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - teams_read - /api/v2/usage/application_security: - get: - deprecated: true - description: >- - Get hourly usage for application security . - - **Note:** This endpoint has been deprecated. Hourly usage data for all - products is now available in the [Get hourly usage by product family - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - operationId: GetUsageApplicationSecurityMonitoring - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour. - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour. - in: query - name: end_hr - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: >- - #/components/schemas/UsageApplicationSecurityMonitoringResponse - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for application security - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/billing_dimension_mapping: - get: - description: >- - Get a mapping of billing dimensions to the corresponding keys for the - supported usage metering public API endpoints. - - Mapping data is updated on a monthly cadence. - - - This endpoint is only accessible to [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetBillingDimensionMapping - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, and for mappings beginning this - month. Defaults to the current month. - in: query - name: filter[month] - required: false - schema: - format: date-time - type: string - - description: >- - String to specify whether to retrieve active billing dimension - mappings for the contract or for all available mappings. Allowed - views have the string `active` or `all`. Defaults to `active`. - in: query - name: filter[view] - required: false - schema: - default: active - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/BillingDimensionsMappingResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get billing dimension mapping for usage endpoints - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/cost_by_org: - get: - deprecated: true - description: >- - Get cost across multi-org account. - - Cost by org data for a given month becomes available no later than the - 16th of the following month. - - **Note:** This endpoint has been deprecated. Please use the new endpoint - - [`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account) - - instead. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetCostByOrg - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning this month. - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get cost across multi-org account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/usage/estimated_cost: - get: - description: >- - Get estimated cost across multi-org and single root-org accounts. - - Estimated cost data is only available for the current month and previous - month - - and is delayed by up to 72 hours from when it was incurred. - - To access historical costs prior to this, use the `/historical_cost` - endpoint. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetEstimatedCostByOrg - parameters: - - description: >- - String to specify whether cost is broken down at a parent-org level - or at the sub-org level. Available views are `summary` and - `sub-org`. Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning this month. **Either start_month or start_date should - be specified, but not both.** (start_month cannot go beyond two - months in the past). Provide an `end_month` to view month-over-month - cost. - in: query - name: start_month - required: false - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for - cost beginning this day. **Either start_month or start_date should - be specified, but not both.** (start_date cannot go beyond two - months in the past). Provide an `end_date` to view day-over-day - cumulative cost. - in: query - name: start_date - required: false - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for - cost ending this day. - in: query - name: end_date - required: false - schema: - format: date-time - type: string - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to `false`. - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get estimated cost across your account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/usage/historical_cost: - get: - description: >- - Get historical cost across multi-org and single root-org accounts. - - Cost data for a given month becomes available no later than the 16th of - the following month. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetHistoricalCostByOrg - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost beginning this month. - in: query - name: start_month - required: true - schema: - format: date-time - type: string - - description: >- - String to specify whether cost is broken down at a parent-org level - or at the sub-org level. Available views are `summary` and - `sub-org`. Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for - cost ending this month. - in: query - name: end_month - required: false - schema: - format: date-time - type: string - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to `false`. - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/CostByOrgResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get historical cost across your account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/usage/hourly_usage: - get: - description: Get hourly usage by product family. - operationId: GetHourlyUsage - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] - for usage beginning at this hour. - in: query - name: filter[timestamp][start] - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] - for usage ending **before** this hour. - in: query - name: filter[timestamp][end] - required: false - schema: - format: date-time - type: string - - description: >- - Comma separated list of product families to retrieve. Available - families are `all`, `analyzed_logs`, - - `application_security`, `audit_trail`, `serverless`, `ci_app`, - `cloud_cost_management`, `cloud_siem`, - - `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, - `custom_events`, `cws`, `dbm`, `error_tracking`, - - `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, - `indexed_spans`, `ingested_spans`, `iot`, - - `lambda_traced_invocations`, `llm_observability`, `logs`, - `network_flows`, `network_hosts`, `network_monitoring`, - - `observability_pipelines`, `online_archive`, `profiling`, - `product_analytics`, `rum`, `rum_browser_sessions`, - - `rum_mobile_sessions`, `sds`, `snmp`, `software_delivery`, - `synthetics_api`, `synthetics_browser`, - - `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, - `vuln_management` and `workflow_executions`. - - The following product family has been **deprecated**: `audit_logs`. - in: query - name: filter[product_families] - required: true - schema: - type: string - - description: Include child org usage in the response. Defaults to false. - in: query - name: filter[include_descendants] - required: false - schema: - default: false - type: boolean - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to false. - in: query - name: filter[include_connected_accounts] - required: false - schema: - default: false - type: boolean - - description: >- - Include breakdown of usage by subcategories where applicable (for - product family logs only). Defaults to false. - in: query - name: filter[include_breakdown] - required: false - schema: - default: false - type: boolean - - description: >- - Comma separated list of product family versions to use in the format - `product_family:version`. For example, - - `infra_hosts:1.0.0`. If this parameter is not used, the API will use - the latest version of each requested - - product family. Currently all families have one version `1.0.0`. - in: query - name: filter[versions] - required: false - schema: - type: string - - description: >- - Maximum number of results to return (between 1 and 500) - defaults - to 500 if limit not specified. - in: query - name: page[limit] - required: false - schema: - default: 500 - format: int32 - maximum: 500 - minimum: 1 - type: integer - - description: >- - List following results with a next_record_id provided in the - previous query. - in: query - name: page[next_record_id] - required: false - schema: - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/HourlyUsageResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage by product family - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/lambda_traced_invocations: - get: - deprecated: true - description: >- - Get hourly usage for Lambda traced invocations. - - **Note:** This endpoint has been deprecated.. Hourly usage data for all - products is now available in the [Get hourly usage by product family - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - operationId: GetUsageLambdaTracedInvocations - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour. - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour. - in: query - name: end_hr - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/UsageLambdaTracedInvocationsResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for Lambda traced invocations - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/observability_pipelines: - get: - deprecated: true - description: >- - Get hourly usage for observability pipelines. - - **Note:** This endpoint has been deprecated. Hourly usage data for all - products is now available in the [Get hourly usage by product family - API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - operationId: GetUsageObservabilityPipelines - parameters: - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage beginning at this hour. - in: query - name: start_hr - required: true - schema: - format: date-time - type: string - - description: >- - Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` - for usage ending - - **before** this hour. - in: query - name: end_hr - required: false - schema: - format: date-time - type: string - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/UsageObservabilityPipelinesResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - summary: Get hourly usage for observability pipelines - tags: - - Usage Metering - x-permission: - operator: OR - permissions: - - usage_read - /api/v2/usage/projected_cost: - get: - description: >- - Get projected cost across multi-org and single root-org accounts. - - Projected cost data is only available for the current month and becomes - available around the 12th of the month. - - - This endpoint is only accessible for [parent-level - organizations](https://docs.datadoghq.com/account_management/multi_organization/). - operationId: GetProjectedCost - parameters: - - description: >- - String to specify whether cost is broken down at a parent-org level - or at the sub-org level. Available views are `summary` and - `sub-org`. Defaults to `summary`. - in: query - name: view - required: false - schema: - type: string - - description: >- - Boolean to specify whether to include accounts connected to the - current account as partner customers in the Datadog partner network - program. Defaults to `false`. - in: query - name: include_connected_accounts - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/ProjectedCostResponse' - description: OK - '400': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - User is not authorized - '429': - content: - application/json;datetime-format=rfc3339: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - usage_read - - billing_read - summary: Get projected cost across your account - tags: - - Usage Metering - x-permission: - operator: AND - permissions: - - usage_read - - billing_read - /api/v2/user_invitations: - post: - description: >- - Sends emails to one or more users inviting them to join the - organization. - operationId: SendInvitations - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserInvitationsRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserInvitationsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Send invitation emails - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_invite - /api/v2/user_invitations/{user_invitation_uuid}: - get: - description: Returns a single user invitation by its UUID. - operationId: GetInvitation - parameters: - - description: The UUID of the user invitation. - in: path - name: user_invitation_uuid - required: true - schema: - example: 00000000-0000-0000-3456-000000000000 - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserInvitationResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Get a user invitation - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_invite - /api/v2/users: - get: - description: |- - Get the list of all users in the organization. This list includes - all users even if they are deactivated or unverified. - operationId: ListUsers - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: >- - User attribute to order results by. Sort order is ascending by - default. - - Sort order is descending if the field - - is prefixed by a negative sign, for example `sort=-name`. Options: - `name`, - - `modified_at`, `user_count`. - in: query - name: sort - required: false - schema: - default: name - example: name - type: string - - description: 'Direction of sort. Options: `asc`, `desc`.' - in: query - name: sort_dir - required: false - schema: - $ref: '#/components/schemas/QuerySortOrder' - - description: Filter all users by the given string. Defaults to no filtering. - in: query - name: filter - required: false - schema: - type: string - - description: >- - Filter on status attribute. - - Comma separated list, with possible values `Active`, `Pending`, and - `Disabled`. - - Defaults to no filtering. - in: query - name: filter[status] - required: false - schema: - example: Active - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UsersResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: List all users - tags: - - Users - x-codegen-request-body-name: body - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - user_access_read - post: - description: Create a user for your organization. - operationId: CreateUser - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_invite - summary: Create a user - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_invite - /api/v2/users/{user_id}: - delete: - description: |- - Disable a user. Can only be used with an application key belonging - to an administrator user. - operationId: DisableUser - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Disable a user - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - - service_account_write - get: - description: Get a user in the organization specified by the user’s `user_id`. - operationId: GetUser - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get user details - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_read - patch: - description: |- - Edit a user. Can only be used with an application key belonging - to an administrator user. - operationId: UpdateUser - parameters: - - $ref: '#/components/parameters/UserID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UserUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unprocessable Entity - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_manage - summary: Update a user - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_manage - - service_account_write - /api/v2/users/{user_id}/orgs: - get: - description: >- - Get a user organization. Returns the user information and all - organizations - - joined by this user. - operationId: ListUserOrganizations - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get a user organization - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OPEN - permissions: [] - /api/v2/users/{user_id}/permissions: - get: - description: |- - Get a user permission set. Returns a list of the user’s permissions - granted by the associated user's roles. - operationId: ListUserPermissions - parameters: - - $ref: '#/components/parameters/UserID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PermissionsResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication error - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - user_access_read - summary: Get a user permissions - tags: - - Users - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - user_access_read - /api/v2/users/{user_uuid}/memberships: - get: - description: Get a list of memberships for a user - operationId: GetUserMemberships - parameters: - - description: None - in: path - name: user_uuid - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UserTeamsResponse' - description: Represents a user's association to a team - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - teams_read - summary: Get user memberships - tags: - - Teams - x-permission: - operator: OR - permissions: - - teams_read -components: - schemas: - APIKeysResponse: - description: Response for a list of API keys. - properties: - data: - description: Array of API keys. - items: - $ref: '#/components/schemas/PartialAPIKey' - type: array - included: - description: Array of objects related to the API key. - items: - $ref: '#/components/schemas/APIKeyResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/APIKeysResponseMeta' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - APIKeyCreateRequest: - description: Request used to create an API key. - properties: - data: - $ref: '#/components/schemas/APIKeyCreateData' - required: - - data - type: object - APIKeyResponse: - description: Response for retrieving an API key. - properties: - data: - $ref: '#/components/schemas/FullAPIKey' - included: - description: Array of objects related to the API key. - items: - $ref: '#/components/schemas/APIKeyResponseIncludedItem' - type: array - type: object - APIKeyUpdateRequest: - description: Request used to update an API key. - properties: - data: - $ref: '#/components/schemas/APIKeyUpdateData' - required: - - data - type: object - ListApplicationKeysResponse: - description: Response for a list of application keys. - properties: - data: - description: Array of application keys. - items: - $ref: '#/components/schemas/PartialApplicationKey' - type: array - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/ApplicationKeyResponseMeta' - type: object - ApplicationKeyResponse: - description: Response for retrieving an application key. - properties: - data: - $ref: '#/components/schemas/FullApplicationKey' - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - type: object - ApplicationKeyUpdateRequest: - description: Request used to update an application key. - properties: - data: - $ref: '#/components/schemas/ApplicationKeyUpdateData' - required: - - data - type: object - AuditLogsSort: - description: Sort parameters when querying events. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - AuditLogsEventsResponse: - description: >- - Response object with all events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/AuditLogsEvent' - type: array - links: - $ref: '#/components/schemas/AuditLogsResponseLinks' - meta: - $ref: '#/components/schemas/AuditLogsResponseMetadata' - type: object - AuditLogsSearchEventsRequest: - description: The request for a Audit Logs events list. - properties: - filter: - $ref: '#/components/schemas/AuditLogsQueryFilter' - options: - $ref: '#/components/schemas/AuditLogsQueryOptions' - page: - $ref: '#/components/schemas/AuditLogsQueryPageOptions' - sort: - $ref: '#/components/schemas/AuditLogsSort' - type: object - AuthNMappingsSort: - description: Sorting options for AuthN Mappings. - enum: - - created_at - - '-created_at' - - role_id - - '-role_id' - - saml_assertion_attribute_id - - '-saml_assertion_attribute_id' - - role.name - - '-role.name' - - saml_assertion_attribute.attribute_key - - '-saml_assertion_attribute.attribute_key' - - saml_assertion_attribute.attribute_value - - '-saml_assertion_attribute.attribute_value' - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - ROLE_ID_ASCENDING - - ROLE_ID_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_ID_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_ID_DESCENDING - - ROLE_NAME_ASCENDING - - ROLE_NAME_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_KEY_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_KEY_DESCENDING - - SAML_ASSERTION_ATTRIBUTE_VALUE_ASCENDING - - SAML_ASSERTION_ATTRIBUTE_VALUE_DESCENDING - AuthNMappingResourceType: - description: The type of resource being mapped to. - enum: - - role - - team - type: string - x-enum-varnames: - - ROLE - - TEAM - AuthNMappingsResponse: - description: Array of AuthN Mappings response. - properties: - data: - description: Array of returned AuthN Mappings. - items: - $ref: '#/components/schemas/AuthNMapping' - type: array - included: - description: Included data in the AuthN Mapping response. - items: - $ref: '#/components/schemas/AuthNMappingIncluded' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - AuthNMappingCreateRequest: - description: Request for creating an AuthN Mapping. - properties: - data: - $ref: '#/components/schemas/AuthNMappingCreateData' - required: - - data - type: object - AuthNMappingResponse: - description: AuthN Mapping response from the API. - properties: - data: - $ref: '#/components/schemas/AuthNMapping' - included: - description: Included data in the AuthN Mapping response. - items: - $ref: '#/components/schemas/AuthNMappingIncluded' - type: array - type: object - AuthNMappingUpdateRequest: - description: Request to update an AuthN Mapping. - properties: - data: - $ref: '#/components/schemas/AuthNMappingUpdateData' - required: - - data - type: object - ApplicationKeyCreateRequest: - description: Request used to create an application key. - properties: - data: - $ref: '#/components/schemas/ApplicationKeyCreateData' - required: - - data - type: object - CreateDataDeletionRequestBody: - description: Object needed to create a data deletion request. - properties: - data: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyData' - required: - - data - type: object - CreateDataDeletionResponseBody: - description: The response from the create data deletion request endpoint. - properties: - data: - $ref: '#/components/schemas/DataDeletionResponseItem' - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' - type: object - GetDataDeletionsResponseBody: - description: The response from the get data deletion requests endpoint. - properties: - data: - description: The list of data deletion requests that matches the query. - items: - $ref: '#/components/schemas/DataDeletionResponseItem' - type: array - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' - type: object - CancelDataDeletionResponseBody: - description: The response from the cancel data deletion request endpoint. - properties: - data: - $ref: '#/components/schemas/DataDeletionResponseItem' - meta: - $ref: '#/components/schemas/DataDeletionResponseMeta' - type: object - DomainAllowlistResponse: - description: Response containing information about the email domain allowlist. - properties: - data: - $ref: '#/components/schemas/DomainAllowlistResponseData' - type: object - DomainAllowlistRequest: - description: Request containing the desired email domain allowlist configuration. - properties: - data: - $ref: '#/components/schemas/DomainAllowlist' - required: - - data - type: object - IPAllowlistResponse: - description: Response containing information about the IP allowlist. - properties: - data: - $ref: '#/components/schemas/IPAllowlistData' - type: object - IPAllowlistUpdateRequest: - description: Update the IP allowlist. - properties: - data: - $ref: '#/components/schemas/IPAllowlistData' - required: - - data - type: object - OrgConfigListResponse: - description: A response with multiple Org Configs. - properties: - data: - description: An array of Org Configs. - items: - $ref: '#/components/schemas/OrgConfigRead' - type: array - required: - - data - type: object - OrgConfigGetResponse: - description: A response with a single Org Config. - properties: - data: - $ref: '#/components/schemas/OrgConfigRead' - required: - - data - type: object - OrgConfigWriteRequest: - description: A request to update an Org Config. - properties: - data: - $ref: '#/components/schemas/OrgConfigWrite' - required: - - data - type: object - OrgConnectionListResponse: - description: Response containing a list of org connections. - properties: - data: - description: List of org connections. - items: - $ref: '#/components/schemas/OrgConnection' - type: array - meta: - $ref: '#/components/schemas/OrgConnectionListResponseMeta' - required: - - data - type: object - OrgConnectionCreateRequest: - description: Request to create an org connection. - properties: - data: - $ref: '#/components/schemas/OrgConnectionCreate' - required: - - data - type: object - OrgConnectionResponse: - description: Response containing a single org connection. - properties: - data: - $ref: '#/components/schemas/OrgConnection' - required: - - data - type: object - OrgConnectionUpdateRequest: - description: Request to update an org connection. - properties: - data: - $ref: '#/components/schemas/OrgConnectionUpdate' - required: - - data - type: object - PermissionsResponse: - description: Payload with API-returned permissions. - properties: - data: - description: Array of permissions. - items: - $ref: '#/components/schemas/Permission' - type: array - type: object - RestrictionPolicyResponse: - description: Response containing information about a single restriction policy. - properties: - data: - $ref: '#/components/schemas/RestrictionPolicy' - required: - - data - type: object - RestrictionPolicyUpdateRequest: - description: Update request for a restriction policy. - properties: - data: - $ref: '#/components/schemas/RestrictionPolicy' - required: - - data - type: object - RolesSort: - default: name - description: Sorting options for roles. - enum: - - name - - '-name' - - modified_at - - '-modified_at' - - user_count - - '-user_count' - type: string - x-enum-varnames: - - NAME_ASCENDING - - NAME_DESCENDING - - MODIFIED_AT_ASCENDING - - MODIFIED_AT_DESCENDING - - USER_COUNT_ASCENDING - - USER_COUNT_DESCENDING - RolesResponse: - description: Response containing information about multiple roles. - properties: - data: - description: Array of returned roles. - items: - $ref: '#/components/schemas/Role' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - RoleCreateRequest: - description: Create a role. - properties: - data: - $ref: '#/components/schemas/RoleCreateData' - required: - - data - type: object - RoleCreateResponse: - description: Response containing information about a created role. - properties: - data: - $ref: '#/components/schemas/RoleCreateResponseData' - type: object - RoleResponse: - description: Response containing information about a single role. - properties: - data: - $ref: '#/components/schemas/Role' - type: object - RoleUpdateRequest: - description: Update a role. - properties: - data: - $ref: '#/components/schemas/RoleUpdateData' - required: - - data - type: object - RoleUpdateResponse: - description: Response containing information about an updated role. - properties: - data: - $ref: '#/components/schemas/RoleUpdateResponseData' - type: object - RoleCloneRequest: - description: Request to create a role by cloning an existing role. - properties: - data: - $ref: '#/components/schemas/RoleClone' - required: - - data - type: object - RelationshipToPermission: - description: Relationship to a permissions object. - properties: - data: - $ref: '#/components/schemas/RelationshipToPermissionData' - type: object - RelationshipToUser: - description: Relationship to user. - properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' - required: - - data - type: object - UsersResponse: - description: Response containing information about multiple users. - properties: - data: - description: Array of returned users. - items: - $ref: '#/components/schemas/User' - type: array - included: - description: Array of objects related to the users. - items: - $ref: '#/components/schemas/UserResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - readOnly: true - type: object - IdPMetadataFormData: - description: The form data submitted to upload IdP metadata - properties: - idp_file: - description: The IdP metadata XML file - format: binary - type: string - x-mimetype: application/xml - type: object - ServiceAccountCreateRequest: - description: Create a service account. - properties: - data: - $ref: '#/components/schemas/ServiceAccountCreateData' - required: - - data - type: object - UserResponse: - description: Response containing information about a single user. - properties: - data: - $ref: '#/components/schemas/User' - included: - description: Array of objects related to the user. - items: - $ref: '#/components/schemas/UserResponseIncludedItem' - type: array - type: object - PartialApplicationKeyResponse: - description: Response for retrieving a partial application key. - properties: - data: - $ref: '#/components/schemas/PartialApplicationKey' - included: - description: Array of objects related to the application key. - items: - $ref: '#/components/schemas/ApplicationKeyResponseIncludedItem' - type: array - type: object - ListTeamsSort: - description: Specifies the order of the returned teams - enum: - - name - - '-name' - - user_count - - '-user_count' - type: string - x-enum-varnames: - - NAME - - _NAME - - USER_COUNT - - _USER_COUNT - ListTeamsInclude: - description: Included related resources optionally requested. - enum: - - team_links - - user_team_permissions - type: string - x-enum-varnames: - - TEAM_LINKS - - USER_TEAM_PERMISSIONS - TeamsField: - description: Supported teams field. - enum: - - id - - name - - handle - - summary - - description - - avatar - - banner - - visible_modules - - hidden_modules - - created_at - - modified_at - - user_count - - link_count - - team_links - - user_team_permissions - type: string - x-enum-varnames: - - ID - - NAME - - HANDLE - - SUMMARY - - DESCRIPTION - - AVATAR - - BANNER - - VISIBLE_MODULES - - HIDDEN_MODULES - - CREATED_AT - - MODIFIED_AT - - USER_COUNT - - LINK_COUNT - - TEAM_LINKS - - USER_TEAM_PERMISSIONS - TeamsResponse: - description: Response with multiple teams - properties: - data: - description: Teams response data - items: - $ref: '#/components/schemas/Team' - type: array - included: - description: Resources related to the team - items: - $ref: '#/components/schemas/TeamIncluded' - type: array - links: - $ref: '#/components/schemas/TeamsResponseLinks' - meta: - $ref: '#/components/schemas/TeamsResponseMeta' - type: object - TeamCreateRequest: - description: Request to create a team - properties: - data: - $ref: '#/components/schemas/TeamCreate' - required: - - data - type: object - TeamResponse: - description: Response with a team - properties: - data: - $ref: '#/components/schemas/Team' - type: object - TeamSyncRequest: - description: Team sync request. - example: - data: - attributes: - source: github - type: link - type: team_sync_bulk - properties: - data: - $ref: '#/components/schemas/TeamSyncData' - required: - - data - type: object - AddMemberTeamRequest: - description: Request to add a member team to super team's hierarchy - properties: - data: - $ref: '#/components/schemas/MemberTeam' - required: - - data - type: object - TeamUpdateRequest: - description: Team update request - properties: - data: - $ref: '#/components/schemas/TeamUpdate' - required: - - data - type: object - TeamLinksResponse: - description: Team links response - properties: - data: - description: Team links response data - items: - $ref: '#/components/schemas/TeamLink' - type: array - type: object - TeamLinkCreateRequest: - description: Team link create request - properties: - data: - $ref: '#/components/schemas/TeamLinkCreate' - required: - - data - type: object - TeamLinkResponse: - description: Team link response - properties: - data: - $ref: '#/components/schemas/TeamLink' - type: object - GetTeamMembershipsSort: - description: Specifies the order of returned team memberships - enum: - - manager_name - - '-manager_name' - - name - - '-name' - - handle - - '-handle' - - email - - '-email' - type: string - x-enum-varnames: - - MANAGER_NAME - - _MANAGER_NAME - - NAME - - _NAME - - HANDLE - - _HANDLE - - EMAIL - - _EMAIL - UserTeamsResponse: - description: Team memberships response - properties: - data: - description: Team memberships response data - items: - $ref: '#/components/schemas/UserTeam' - type: array - included: - description: Resources related to the team memberships - items: - $ref: '#/components/schemas/UserTeamIncluded' - type: array - links: - $ref: '#/components/schemas/TeamsResponseLinks' - meta: - $ref: '#/components/schemas/TeamsResponseMeta' - type: object - UserTeamRequest: - description: Team membership request - properties: - data: - $ref: '#/components/schemas/UserTeamCreate' - required: - - data - type: object - UserTeamResponse: - description: Team membership response - properties: - data: - $ref: '#/components/schemas/UserTeam' - included: - description: Resources related to the team memberships - items: - $ref: '#/components/schemas/UserTeamIncluded' - type: array - type: object - UserTeamUpdateRequest: - description: Team membership request - properties: - data: - $ref: '#/components/schemas/UserTeamUpdate' - required: - - data - type: object - TeamPermissionSettingsResponse: - description: Team permission settings response - properties: - data: - description: Team permission settings response data - items: - $ref: '#/components/schemas/TeamPermissionSetting' - type: array - type: object - TeamPermissionSettingUpdateRequest: - description: Team permission setting update request - properties: - data: - $ref: '#/components/schemas/TeamPermissionSettingUpdate' - required: - - data - type: object - TeamPermissionSettingResponse: - description: Team permission setting response - properties: - data: - $ref: '#/components/schemas/TeamPermissionSetting' - type: object - UsageApplicationSecurityMonitoringResponse: - description: Application Security Monitoring usage response. - properties: - data: - description: Response containing Application Security Monitoring usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array - type: object - BillingDimensionsMappingResponse: - description: Billing dimensions mapping response. - properties: - data: - $ref: '#/components/schemas/BillingDimensionsMappingBody' - type: object - CostByOrgResponse: - description: Chargeback Summary response. - properties: - data: - description: Response containing Chargeback Summary. - items: - $ref: '#/components/schemas/CostByOrg' - type: array - type: object - HourlyUsageResponse: - description: Hourly usage response. - properties: - data: - description: Response containing hourly usage. - items: - $ref: '#/components/schemas/HourlyUsage' - type: array - meta: - $ref: '#/components/schemas/HourlyUsageMetadata' - type: object - UsageLambdaTracedInvocationsResponse: - description: Lambda Traced Invocations usage response. - properties: - data: - description: Response containing Lambda Traced Invocations usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array - type: object - UsageObservabilityPipelinesResponse: - description: Observability Pipelines usage response. - properties: - data: - description: Response containing Observability Pipelines usage. - items: - $ref: '#/components/schemas/UsageDataObject' - type: array - type: object - ProjectedCostResponse: - description: Projected Cost response. - properties: - data: - description: Response containing Projected Cost. - items: - $ref: '#/components/schemas/ProjectedCost' - type: array - type: object - UserInvitationsRequest: - description: Object to invite users to join the organization. - properties: - data: - description: List of user invitations. - example: [] - items: - $ref: '#/components/schemas/UserInvitationData' - type: array - required: - - data - type: object - UserInvitationsResponse: - description: User invitations as returned by the API. - properties: - data: - description: Array of user invitations. - items: - $ref: '#/components/schemas/UserInvitationResponseData' - type: array - type: object - UserInvitationResponse: - description: User invitation as returned by the API. - properties: - data: - $ref: '#/components/schemas/UserInvitationResponseData' - type: object - QuerySortOrder: - default: desc - description: Direction of sort. - enum: - - asc - - desc - type: string - x-enum-varnames: - - ASC - - DESC - UserCreateRequest: - description: Create a user. - properties: - data: - $ref: '#/components/schemas/UserCreateData' - required: - - data - type: object - UserUpdateRequest: - description: Update a user. - properties: - data: - $ref: '#/components/schemas/UserUpdateData' - required: - - data - type: object - APIKeysSort: - default: name - description: Sorting options - enum: - - created_at - - '-created_at' - - last4 - - '-last4' - - modified_at - - '-modified_at' - - name - - '-name' - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - LAST4_ASCENDING - - LAST4_DESCENDING - - MODIFIED_AT_ASCENDING - - MODIFIED_AT_DESCENDING - - NAME_ASCENDING - - NAME_DESCENDING - PartialAPIKey: - description: Partial Datadog API key. - properties: - attributes: - $ref: '#/components/schemas/PartialAPIKeyAttributes' - id: - description: ID of the API key. - type: string - relationships: - $ref: '#/components/schemas/APIKeyRelationships' - type: - $ref: '#/components/schemas/APIKeysType' - type: object - APIKeyResponseIncludedItem: - description: An object related to an API key. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/LeakedKey' - APIKeysResponseMeta: - description: Additional information related to api keys response. - properties: - max_allowed: - description: Max allowed number of API keys. - format: int64 - type: integer - page: - $ref: '#/components/schemas/APIKeysResponseMetaPage' - type: object - APIKeyCreateData: - description: Object used to create an API key. - properties: - attributes: - $ref: '#/components/schemas/APIKeyCreateAttributes' - type: - $ref: '#/components/schemas/APIKeysType' - required: - - attributes - - type - type: object - FullAPIKey: - description: Datadog API key. - properties: - attributes: - $ref: '#/components/schemas/FullAPIKeyAttributes' - id: - description: ID of the API key. - type: string - relationships: - $ref: '#/components/schemas/APIKeyRelationships' - type: - $ref: '#/components/schemas/APIKeysType' - type: object - APIKeyUpdateData: - description: Object used to update an API key. - properties: - attributes: - $ref: '#/components/schemas/APIKeyUpdateAttributes' - id: - description: ID of the API key. - example: 00112233-4455-6677-8899-aabbccddeeff - type: string - type: - $ref: '#/components/schemas/APIKeysType' - required: - - attributes - - id - - type - type: object - ApplicationKeysSort: - default: name - description: Sorting options - enum: - - created_at - - '-created_at' - - last4 - - '-last4' - - name - - '-name' - type: string - x-enum-varnames: - - CREATED_AT_ASCENDING - - CREATED_AT_DESCENDING - - LAST4_ASCENDING - - LAST4_DESCENDING - - NAME_ASCENDING - - NAME_DESCENDING - PartialApplicationKey: - description: Partial Datadog application key. - properties: - attributes: - $ref: '#/components/schemas/PartialApplicationKeyAttributes' - id: - description: ID of the application key. - type: string - relationships: - $ref: '#/components/schemas/ApplicationKeyRelationships' - type: - $ref: '#/components/schemas/ApplicationKeysType' - type: object - ApplicationKeyResponseIncludedItem: - description: An object related to an application key. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Role' - - $ref: '#/components/schemas/LeakedKey' - ApplicationKeyResponseMeta: - description: Additional information related to the application key response. - properties: - max_allowed_per_user: - description: Max allowed number of application keys per user. - format: int64 - type: integer - page: - $ref: '#/components/schemas/ApplicationKeyResponseMetaPage' - type: object - FullApplicationKey: - description: Datadog application key. - properties: - attributes: - $ref: '#/components/schemas/FullApplicationKeyAttributes' - id: - description: ID of the application key. - type: string - relationships: - $ref: '#/components/schemas/ApplicationKeyRelationships' - type: - $ref: '#/components/schemas/ApplicationKeysType' - type: object - ApplicationKeyUpdateData: - description: Object used to update an application key. - properties: - attributes: - $ref: '#/components/schemas/ApplicationKeyUpdateAttributes' - id: - description: ID of the application key. - example: 00112233-4455-6677-8899-aabbccddeeff - type: string - type: - $ref: '#/components/schemas/ApplicationKeysType' - required: - - attributes - - id - - type - type: object - AuditLogsEvent: - description: >- - Object description of an Audit Logs event after it is processed and - stored by Datadog. - properties: - attributes: - $ref: '#/components/schemas/AuditLogsEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/AuditLogsEventType' - type: object - AuditLogsResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/audit/event?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - AuditLogsResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: Time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/AuditLogsResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/AuditLogsResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. - items: - $ref: '#/components/schemas/AuditLogsWarning' - type: array - type: object - AuditLogsQueryFilter: - description: Search and filter query settings. - properties: - from: - default: now-15m - description: >- - Minimum time for the requested events. Supports date, math, and - regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: Search query following the Audit Logs search syntax. - example: '@type:session AND @session.type:user' - type: string - to: - default: now - description: >- - Maximum time for the requested events. Supports date, math, and - regular timestamps (in milliseconds). - example: now - type: string - type: object - AuditLogsQueryOptions: - description: >- - Global query options that are used during the query. - - Note: Specify either timezone or time offset, not both. Otherwise, the - query fails. - properties: - time_offset: - description: Time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - AuditLogsQueryPageOptions: - description: Paging attributes for listing events. - properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - AuthNMapping: - description: The AuthN Mapping object returned by API. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingAttributes' - id: - description: ID of the AuthN Mapping. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/AuthNMappingRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - id - - type - type: object - AuthNMappingIncluded: - description: Included data in the AuthN Mapping response. - oneOf: - - $ref: '#/components/schemas/SAMLAssertionAttribute' - - $ref: '#/components/schemas/Role' - - $ref: '#/components/schemas/AuthNMappingTeam' - ResponseMetaAttributes: - description: Object describing meta attributes of response. - properties: - page: - $ref: '#/components/schemas/Pagination' - type: object - AuthNMappingCreateData: - description: Data for creating an AuthN Mapping. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingCreateAttributes' - relationships: - $ref: '#/components/schemas/AuthNMappingCreateRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - type - type: object - AuthNMappingUpdateData: - description: Data for updating an AuthN Mapping. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingUpdateAttributes' - id: - description: ID of the AuthN Mapping. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/AuthNMappingUpdateRelationships' - type: - $ref: '#/components/schemas/AuthNMappingsType' - required: - - id - - type - type: object - ApplicationKeyCreateData: - description: Object used to create an application key. - properties: - attributes: - $ref: '#/components/schemas/ApplicationKeyCreateAttributes' - type: - $ref: '#/components/schemas/ApplicationKeysType' - required: - - attributes - - type - type: object - CreateDataDeletionRequestBodyData: - description: Data needed to create a data deletion request. - properties: - attributes: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyAttributes' - type: - $ref: '#/components/schemas/CreateDataDeletionRequestBodyDataType' - required: - - attributes - - type - type: object - DataDeletionResponseItem: - description: The created data deletion request information. - properties: - attributes: - $ref: '#/components/schemas/DataDeletionResponseItemAttributes' - id: - description: The ID of the created data deletion request. - example: '1' - type: string - type: - description: The type of the request created. - example: deletion_request - type: string - required: - - id - - type - - attributes - type: object - DataDeletionResponseMeta: - description: The metadata of the data deletion response. - properties: - count_product: - additionalProperties: - format: int64 - type: integer - description: The total deletion requests created by product. - example: - logs: 8 - rum: 7 - type: object - count_status: - additionalProperties: - format: int64 - type: integer - description: The total deletion requests created by status. - example: - completed: 10 - pending: 5 - type: object - next_page: - description: >- - The next page when searching deletion requests created in the - current organization. - example: cGFnZTI= - type: string - product: - description: The product of the deletion request. - example: logs - type: string - request_status: - description: The status of the executed request. - example: canceled - type: string - type: object - DomainAllowlistResponseData: - description: The email domain allowlist response for an org. - properties: - attributes: - $ref: '#/components/schemas/DomainAllowlistResponseDataAttributes' - id: - description: The unique identifier of the org. - nullable: true - type: string - type: - $ref: '#/components/schemas/DomainAllowlistType' - required: - - type - type: object - DomainAllowlist: - description: The email domain allowlist for an org. - properties: - attributes: - $ref: '#/components/schemas/DomainAllowlistAttributes' - id: - description: The unique identifier of the org. - nullable: true - type: string - type: - $ref: '#/components/schemas/DomainAllowlistType' - required: - - type - type: object - IPAllowlistData: - description: IP allowlist data. - properties: - attributes: - $ref: '#/components/schemas/IPAllowlistAttributes' - id: - description: The unique identifier of the org. - type: string - type: - $ref: '#/components/schemas/IPAllowlistType' - required: - - type - type: object - OrgConfigRead: - description: A single Org Config. - properties: - attributes: - $ref: '#/components/schemas/OrgConfigReadAttributes' - id: - description: A unique identifier for an Org Config. - example: abcd1234 - type: string - type: - $ref: '#/components/schemas/OrgConfigType' - required: - - id - - type - - attributes - type: object - OrgConfigWrite: - description: An Org Config write operation. - properties: - attributes: - $ref: '#/components/schemas/OrgConfigWriteAttributes' - type: - $ref: '#/components/schemas/OrgConfigType' - required: - - type - - attributes - type: object - OrgConnection: - description: An org connection. - properties: - attributes: - $ref: '#/components/schemas/OrgConnectionAttributes' - id: - description: The unique identifier of the org connection. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - relationships: - $ref: '#/components/schemas/OrgConnectionRelationships' - type: - $ref: '#/components/schemas/OrgConnectionType' - required: - - id - - type - - attributes - - relationships - type: object - OrgConnectionListResponseMeta: - description: Pagination metadata. - properties: - page: - $ref: '#/components/schemas/OrgConnectionListResponseMetaPage' - type: object - OrgConnectionCreate: - description: Org connection creation data. - properties: - attributes: - $ref: '#/components/schemas/OrgConnectionCreateAttributes' - relationships: - $ref: '#/components/schemas/OrgConnectionCreateRelationships' - type: - $ref: '#/components/schemas/OrgConnectionType' - required: - - type - - attributes - - relationships - type: object - OrgConnectionUpdate: - description: Org connection update data. - properties: - attributes: - $ref: '#/components/schemas/OrgConnectionUpdateAttributes' - id: - description: The unique identifier of the org connection. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - type: - $ref: '#/components/schemas/OrgConnectionType' - required: - - type - - id - - attributes - type: object - Permission: - description: Permission object. - properties: - attributes: - $ref: '#/components/schemas/PermissionAttributes' - id: - description: ID of the permission. - type: string - type: - $ref: '#/components/schemas/PermissionsType' - required: - - type - type: object - RestrictionPolicy: - description: Restriction policy object. - properties: - attributes: - $ref: '#/components/schemas/RestrictionPolicyAttributes' - id: - description: >- - The identifier, always equivalent to the value specified in the - `resource_id` path parameter. - example: dashboard:abc-def-ghi - type: string - type: - $ref: '#/components/schemas/RestrictionPolicyType' - required: - - type - - id - - attributes - type: object - Role: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - RoleCreateData: - description: Data related to the creation of a role. - properties: - attributes: - $ref: '#/components/schemas/RoleCreateAttributes' - relationships: - $ref: '#/components/schemas/RoleRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - attributes - type: object - RoleCreateResponseData: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleCreateAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - RoleUpdateData: - description: Data related to the update of a role. - properties: - attributes: - $ref: '#/components/schemas/RoleUpdateAttributes' - id: - description: The unique identifier of the role. - example: 00000000-0000-1111-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/RoleRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - attributes - - type - - id - type: object - RoleUpdateResponseData: - description: Role object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/RoleUpdateAttributes' - id: - description: The unique identifier of the role. - type: string - relationships: - $ref: '#/components/schemas/RoleResponseRelationships' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - type: object - RoleClone: - description: Data for the clone role request. - properties: - attributes: - $ref: '#/components/schemas/RoleCloneAttributes' - type: - $ref: '#/components/schemas/RolesType' - required: - - type - - attributes - type: object - RelationshipToPermissionData: - description: Relationship to permission object. - properties: - id: - description: ID of the permission. - type: string - type: - $ref: '#/components/schemas/PermissionsType' - type: object - RelationshipToUserData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - User: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' - type: object - UserResponseIncludedItem: - description: An object related to a user. - oneOf: - - $ref: '#/components/schemas/Organization' - - $ref: '#/components/schemas/Permission' - - $ref: '#/components/schemas/Role' - ServiceAccountCreateData: - description: Object to create a service account User. - properties: - attributes: - $ref: '#/components/schemas/ServiceAccountCreateAttributes' - relationships: - $ref: '#/components/schemas/UserRelationships' - type: - $ref: '#/components/schemas/UsersType' - required: - - attributes - - type - type: object - Team: - description: A team - properties: - attributes: - $ref: '#/components/schemas/TeamAttributes' - id: - description: The team's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/TeamRelationships' - type: - $ref: '#/components/schemas/TeamType' - required: - - attributes - - id - - type - type: object - TeamIncluded: - description: Included resources related to the team - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/TeamLink' - - $ref: '#/components/schemas/UserTeamPermission' - TeamsResponseLinks: - description: Teams response links. - properties: - first: - description: First link. - type: string - last: - description: Last link. - nullable: true - type: string - next: - description: Next link. - type: string - prev: - description: Previous link. - nullable: true - type: string - self: - description: Current link. - type: string - type: object - TeamsResponseMeta: - description: Teams response metadata. - properties: - pagination: - $ref: '#/components/schemas/TeamsResponseMetaPagination' - type: object - TeamCreate: - description: Team create - properties: - attributes: - $ref: '#/components/schemas/TeamCreateAttributes' - relationships: - $ref: '#/components/schemas/TeamCreateRelationships' - type: - $ref: '#/components/schemas/TeamType' - required: - - attributes - - type - type: object - TeamSyncData: - description: Team sync data. - properties: - attributes: - $ref: '#/components/schemas/TeamSyncAttributes' - type: - $ref: '#/components/schemas/TeamSyncBulkType' - required: - - attributes - - type - type: object - MemberTeam: - description: A member team - properties: - id: - description: The member team's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/MemberTeamType' - required: - - id - - type - type: object - TeamUpdate: - description: Team update request - properties: - attributes: - $ref: '#/components/schemas/TeamUpdateAttributes' - relationships: - $ref: '#/components/schemas/TeamUpdateRelationships' - type: - $ref: '#/components/schemas/TeamType' - required: - - attributes - - type - type: object - TeamLink: - description: Team link - properties: - attributes: - $ref: '#/components/schemas/TeamLinkAttributes' - id: - description: The team link's identifier - example: b8626d7e-cedd-11eb-abf5-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - attributes - - id - - type - type: object - TeamLinkCreate: - description: Team link create - properties: - attributes: - $ref: '#/components/schemas/TeamLinkAttributes' - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - attributes - - type - type: object - UserTeam: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - id: - description: The ID of a user's relationship with a team - example: TeamMembership-aeadc05e-98a8-11ec-ac2c-da7ad0900001-38835 - type: string - relationships: - $ref: '#/components/schemas/UserTeamRelationships' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - id - - type - type: object - UserTeamIncluded: - description: Included resources related to the team membership - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Team' - UserTeamCreate: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - relationships: - $ref: '#/components/schemas/UserTeamRelationships' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - type - type: object - UserTeamUpdate: - description: A user's relationship with a team - properties: - attributes: - $ref: '#/components/schemas/UserTeamAttributes' - type: - $ref: '#/components/schemas/UserTeamType' - required: - - type - type: object - TeamPermissionSetting: - description: Team permission setting - properties: - attributes: - $ref: '#/components/schemas/TeamPermissionSettingAttributes' - id: - description: The team permission setting's identifier - example: TeamPermission-aeadc05e-98a8-11ec-ac2c-da7ad0900001-edit - type: string - type: - $ref: '#/components/schemas/TeamPermissionSettingType' - required: - - id - - type - type: object - TeamPermissionSettingUpdate: - description: Team permission setting update - properties: - attributes: - $ref: '#/components/schemas/TeamPermissionSettingUpdateAttributes' - type: - $ref: '#/components/schemas/TeamPermissionSettingType' - required: - - type - type: object - UsageDataObject: - description: Usage data. - properties: - attributes: - $ref: '#/components/schemas/UsageAttributesObject' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/UsageTimeSeriesType' - type: object - BillingDimensionsMappingBody: - description: Billing dimensions mapping data. - items: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItem' - type: array - CostByOrg: - description: Cost data. - properties: - attributes: - $ref: '#/components/schemas/CostByOrgAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/CostByOrgType' - type: object - HourlyUsage: - description: Hourly usage for a product family for an org. - properties: - attributes: - $ref: '#/components/schemas/HourlyUsageAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/UsageTimeSeriesType' - type: object - HourlyUsageMetadata: - description: The object containing document metadata. - properties: - pagination: - $ref: '#/components/schemas/HourlyUsagePagination' - type: object - ProjectedCost: - description: Projected Cost data. - properties: - attributes: - $ref: '#/components/schemas/ProjectedCostAttributes' - id: - description: Unique ID of the response. - type: string - type: - $ref: '#/components/schemas/ProjectedCostType' - type: object - UserInvitationData: - description: Object to create a user invitation. - properties: - relationships: - $ref: '#/components/schemas/UserInvitationRelationships' - type: - $ref: '#/components/schemas/UserInvitationsType' - required: - - type - - relationships - type: object - UserInvitationResponseData: - description: Object of a user invitation returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserInvitationDataAttributes' - id: - description: ID of the user invitation. - type: string - relationships: - $ref: '#/components/schemas/UserInvitationRelationships' - type: - $ref: '#/components/schemas/UserInvitationsType' - type: object - UserCreateData: - description: Object to create a user. - properties: - attributes: - $ref: '#/components/schemas/UserCreateAttributes' - relationships: - $ref: '#/components/schemas/UserRelationships' - type: - $ref: '#/components/schemas/UsersType' - required: - - attributes - - type - type: object - UserUpdateData: - description: Object to update a user. - properties: - attributes: - $ref: '#/components/schemas/UserUpdateAttributes' - id: - description: ID of the user. - example: 00000000-0000-feed-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - attributes - - type - - id - type: object - PartialAPIKeyAttributes: - description: Attributes of a partial API key. - properties: - category: - description: The category of the API key. - type: string - created_at: - description: Creation date of the API key. - example: '2020-11-23T10:00:00.000Z' - readOnly: true - type: string - last4: - description: The last four characters of the API key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - modified_at: - description: Date the API key was last modified. - example: '2020-11-23T10:00:00.000Z' - readOnly: true - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The remote config read enabled status. - type: boolean - type: object - APIKeyRelationships: - description: Resources related to the API key. - properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - modified_by: - $ref: '#/components/schemas/NullableRelationshipToUser' - type: object - APIKeysType: - default: api_keys - description: API Keys resource type. - enum: - - api_keys - example: api_keys - type: string - x-enum-varnames: - - API_KEYS - LeakedKey: - description: The definition of LeakedKey object. - properties: - attributes: - $ref: '#/components/schemas/LeakedKeyAttributes' - id: - description: The LeakedKey id. - example: id - type: string - type: - $ref: '#/components/schemas/LeakedKeyType' - required: - - attributes - - id - - type - type: object - APIKeysResponseMetaPage: - description: Additional information related to the API keys response. - properties: - total_filtered_count: - description: Total filtered application key count. - format: int64 - type: integer - type: object - APIKeyCreateAttributes: - description: Attributes used to create an API Key. - properties: - category: - description: The APIKeyCreateAttributes category. - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The APIKeyCreateAttributes remote_config_read_enabled. - type: boolean - required: - - name - type: object - FullAPIKeyAttributes: - description: Attributes of a full API key. - properties: - category: - description: The category of the API key. - type: string - created_at: - description: Creation date of the API key. - example: '2020-11-23T10:00:00.000Z' - format: date-time - readOnly: true - type: string - key: - description: The API key. - readOnly: true - type: string - last4: - description: The last four characters of the API key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - modified_at: - description: Date the API key was last modified. - example: '2020-11-23T10:00:00.000Z' - format: date-time - readOnly: true - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The remote config read enabled status. - type: boolean - type: object - APIKeyUpdateAttributes: - description: Attributes used to update an API Key. - properties: - category: - description: The APIKeyUpdateAttributes category. - type: string - name: - description: Name of the API key. - example: API Key for submitting metrics - type: string - remote_config_read_enabled: - description: The APIKeyUpdateAttributes remote_config_read_enabled. - type: boolean - required: - - name - type: object - PartialApplicationKeyAttributes: - description: Attributes of a partial application key. - properties: - created_at: - description: Creation date of the application key. - example: '2020-11-23T10:00:00.000Z' - readOnly: true - type: string - last4: - description: The last four characters of the application key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - type: object - ApplicationKeyRelationships: - description: Resources related to the application key. - properties: - owned_by: - $ref: '#/components/schemas/RelationshipToUser' - type: object - ApplicationKeysType: - default: application_keys - description: Application Keys resource type. - enum: - - application_keys - example: application_keys - type: string - x-enum-varnames: - - APPLICATION_KEYS - ApplicationKeyResponseMetaPage: - description: Additional information related to the application key response. - properties: - total_filtered_count: - description: Total filtered application key count. - format: int64 - type: integer - type: object - FullApplicationKeyAttributes: - description: Attributes of a full application key. - properties: - created_at: - description: Creation date of the application key. - example: '2020-11-23T10:00:00.000Z' - format: date-time - readOnly: true - type: string - key: - description: The application key. - readOnly: true - type: string - last4: - description: The last four characters of the application key. - example: abcd - maxLength: 4 - minLength: 4 - readOnly: true - type: string - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - type: object - ApplicationKeyUpdateAttributes: - description: Attributes used to update an application Key. - properties: - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - type: object - AuditLogsEventAttributes: - description: JSON object containing all event attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from Audit Logs events. - example: - customAttribute: 123 - duration: 2345 - type: object - message: - description: Message of the event. - type: string - service: - description: >- - Name of the application or service generating Audit Logs events. - - This name is used to correlate Audit Logs to APM, so make sure you - specify the same - - value when you use both products. - example: web-app - type: string - tags: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - timestamp: - description: Timestamp of your event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - AuditLogsEventType: - default: audit - description: Type of the event. - enum: - - audit - example: audit - type: string - x-enum-varnames: - - Audit - AuditLogsResponsePage: - description: Paging attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of - `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - AuditLogsResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - AuditLogsWarning: - description: Warning message indicating something that went wrong with the query. - properties: - code: - description: Unique code for this type of warning. - example: unknown_index - type: string - detail: - description: Detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: Short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - AuthNMappingAttributes: - description: Attributes of AuthN Mapping. - properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of - type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development - type: string - created_at: - description: Creation time of the AuthN Mapping. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last AuthN Mapping modification. - format: date-time - readOnly: true - type: string - saml_assertion_attribute_id: - description: The ID of the SAML assertion attribute. - example: '0' - type: string - type: object - AuthNMappingRelationships: - description: All relationships associated with AuthN Mapping. - properties: - role: - $ref: '#/components/schemas/RelationshipToRole' - saml_assertion_attribute: - $ref: '#/components/schemas/RelationshipToSAMLAssertionAttribute' - team: - $ref: '#/components/schemas/RelationshipToTeam' - type: object - AuthNMappingsType: - default: authn_mappings - description: AuthN Mappings resource type. - enum: - - authn_mappings - example: authn_mappings - type: string - x-enum-varnames: - - AUTHN_MAPPINGS - SAMLAssertionAttribute: - description: SAML assertion attribute. - properties: - attributes: - $ref: '#/components/schemas/SAMLAssertionAttributeAttributes' - id: - description: The ID of the SAML assertion attribute. - example: '0' - type: string - type: - $ref: '#/components/schemas/SAMLAssertionAttributesType' - required: - - id - - type - type: object - AuthNMappingTeam: - description: Team. - properties: - attributes: - $ref: '#/components/schemas/AuthNMappingTeamAttributes' - id: - description: The ID of the Team. - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamType' - type: object - Pagination: - description: Pagination object. - properties: - total_count: - description: Total count. - format: int64 - type: integer - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - AuthNMappingCreateAttributes: - description: Key/Value pair of attributes used for create request. - properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of - type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development - type: string - type: object - AuthNMappingCreateRelationships: - description: Relationship of AuthN Mapping create object to a Role or Team. - oneOf: - - $ref: '#/components/schemas/AuthNMappingRelationshipToRole' - - $ref: '#/components/schemas/AuthNMappingRelationshipToTeam' - AuthNMappingUpdateAttributes: - description: Key/Value pair of attributes used for update request. - properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of - type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development - type: string - type: object - AuthNMappingUpdateRelationships: - description: Relationship of AuthN Mapping update object to a Role or Team. - oneOf: - - $ref: '#/components/schemas/AuthNMappingRelationshipToRole' - - $ref: '#/components/schemas/AuthNMappingRelationshipToTeam' - ApplicationKeyCreateAttributes: - description: Attributes used to create an application Key. - properties: - name: - description: Name of the application key. - example: Application Key for managing dashboards - type: string - scopes: - description: Array of scopes to grant the application key. - example: - - dashboards_read - - dashboards_write - - dashboards_public_share - items: - description: Name of scope. - type: string - nullable: true - type: array - required: - - name - type: object - CreateDataDeletionRequestBodyAttributes: - description: Attributes for creating a data deletion request. - properties: - from: - description: Start of requested time window, milliseconds since Unix epoch. - example: 1672527600000 - format: int64 - type: integer - indexes: - description: >- - List of indexes for the search. If not provided, the search is - performed in all indexes. - example: - - test-index - - test-index-2 - items: - description: Individual index. - type: string - type: array - query: - additionalProperties: - type: string - description: Query for creating a data deletion request. - example: - host: abc - service: xyz - type: object - to: - description: End of requested time window, milliseconds since Unix epoch. - example: 1704063600000 - format: int64 - type: integer - required: - - query - - from - - to - type: object - CreateDataDeletionRequestBodyDataType: - description: The deletion request type. - enum: - - create_deletion_req - example: create_deletion_req - type: string - x-enum-varnames: - - CREATE_DELETION_REQ - DataDeletionResponseItemAttributes: - description: Deletion attribute for data deletion response. - properties: - created_at: - description: Creation time of the deletion request. - example: '2024-01-01T00:00:00.000000Z' - type: string - created_by: - description: User who created the deletion request. - example: test.user@datadoghq.com - type: string - from_time: - description: Start of requested time window, milliseconds since Unix epoch. - example: 1672527600000 - format: int64 - type: integer - indexes: - description: >- - List of indexes for the search. If not provided, the search is - performed in all indexes. - example: - - test-index - - test-index-2 - items: - description: Individual index. - type: string - type: array - is_created: - description: >- - Whether the deletion request is fully created or not. It can take - several minutes to fully create a deletion request depending on the - target query and timeframe. - example: true - type: boolean - org_id: - description: Organization ID. - example: 321813 - format: int64 - type: integer - product: - description: Product name. - example: logs - type: string - query: - description: Query for creating a data deletion request. - example: service:xyz host:abc - type: string - starting_at: - description: Starting time of the process to delete the requested data. - example: '2024-01-01T02:00:00.000000Z' - type: string - status: - description: Status of the deletion request. - example: pending - type: string - to_time: - description: End of requested time window, milliseconds since Unix epoch. - example: 1704063600000 - format: int64 - type: integer - total_unrestricted: - description: >- - Total number of elements to be deleted. Only the data accessible to - the current user that matches the query and timeframe provided will - be deleted. - example: 100 - format: int64 - type: integer - updated_at: - description: Update time of the deletion request. - example: '2024-01-01T00:00:00.000000Z' - type: string - required: - - created_at - - created_by - - from_time - - is_created - - org_id - - product - - query - - starting_at - - status - - to_time - - total_unrestricted - - updated_at - type: object - DomainAllowlistResponseDataAttributes: - description: The details of the email domain allowlist. - properties: - domains: - description: The list of domains in the email domain allowlist. - items: - type: string - type: array - enabled: - description: Whether the email domain allowlist is enabled for the org. - type: boolean - type: object - DomainAllowlistType: - default: domain_allowlist - description: Email domain allowlist allowlist type. - enum: - - domain_allowlist - example: domain_allowlist - type: string - x-enum-varnames: - - DOMAIN_ALLOWLIST - DomainAllowlistAttributes: - description: The details of the email domain allowlist. - properties: - domains: - description: The list of domains in the email domain allowlist. - items: - type: string - type: array - enabled: - description: Whether the email domain allowlist is enabled for the org. - type: boolean - type: object - IPAllowlistAttributes: - description: Attributes of the IP allowlist. - properties: - enabled: - description: Whether the IP allowlist logic is enabled or not. - type: boolean - entries: - description: Array of entries in the IP allowlist. - items: - $ref: '#/components/schemas/IPAllowlistEntry' - type: array - type: object - IPAllowlistType: - default: ip_allowlist - description: IP allowlist type. - enum: - - ip_allowlist - example: ip_allowlist - type: string - x-enum-varnames: - - IP_ALLOWLIST - OrgConfigReadAttributes: - description: Readable attributes of an Org Config. - properties: - description: - description: The description of an Org Config. - example: Frobulate the turbo encabulator manifold - type: string - modified_at: - description: The timestamp of the last Org Config update (if any). - format: date-time - nullable: true - type: string - name: - description: The machine-friendly name of an Org Config. - example: monitor_timezone - type: string - value: - description: The value of an Org Config. - value_type: - description: The type of an Org Config value. - example: bool - type: string - required: - - name - - description - - value_type - - value - type: object - OrgConfigType: - description: Data type of an Org Config. - enum: - - org_configs - example: org_configs - type: string - x-enum-varnames: - - ORG_CONFIGS - OrgConfigWriteAttributes: - description: Writable attributes of an Org Config. - properties: - value: - description: The value of an Org Config. - required: - - value - type: object - OrgConnectionAttributes: - description: Org connection attributes. - properties: - connection_types: - description: List of connection types. - example: - - logs - - metrics - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - type: array - created_at: - description: Timestamp when the connection was created. - example: '2023-01-01T12:00:00Z' - format: date-time - type: string - required: - - connection_types - - created_at - type: object - OrgConnectionRelationships: - description: Related organizations and user. - properties: - created_by: - $ref: '#/components/schemas/OrgConnectionUserRelationship' - sink_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - source_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - type: object - OrgConnectionType: - description: Org connection type. - enum: - - org_connection - example: org_connection - type: string - x-enum-varnames: - - ORG_CONNECTION - OrgConnectionListResponseMetaPage: - description: Page information. - properties: - total_count: - description: Total number of org connections. - example: 0 - format: int64 - type: integer - total_filtered_count: - description: Total number of org connections matching the filter. - example: 0 - format: int64 - type: integer - type: object - OrgConnectionCreateAttributes: - description: Attributes for creating an org connection. - properties: - connection_types: - description: List of connection types to establish. - example: - - logs - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - minItems: 1 - type: array - required: - - connection_types - type: object - OrgConnectionCreateRelationships: - description: Relationships for org connection creation. - properties: - sink_org: - $ref: '#/components/schemas/OrgConnectionOrgRelationship' - required: - - sink_org - type: object - OrgConnectionUpdateAttributes: - description: Attributes for updating an org connection. - properties: - connection_types: - description: Updated list of connection types. - example: - - logs - - metrics - items: - $ref: '#/components/schemas/OrgConnectionTypeEnum' - minItems: 1 - type: array - required: - - connection_types - type: object - PermissionAttributes: - description: Attributes of a permission. - properties: - created: - description: Creation time of the permission. - format: date-time - type: string - description: - description: Description of the permission. - type: string - display_name: - description: Displayed name for the permission. - type: string - display_type: - description: Display type. - type: string - group_name: - description: Name of the permission group. - type: string - name: - description: Name of the permission. - type: string - restricted: - description: Whether or not the permission is restricted. - type: boolean - type: object - PermissionsType: - default: permissions - description: Permissions resource type. - enum: - - permissions - example: permissions - type: string - x-enum-varnames: - - PERMISSIONS - RestrictionPolicyAttributes: - description: Restriction policy attributes. - example: - bindings: [] - properties: - bindings: - description: An array of bindings. - items: - $ref: '#/components/schemas/RestrictionPolicyBinding' - type: array - required: - - bindings - type: object - RestrictionPolicyType: - default: restriction_policy - description: Restriction policy type. - enum: - - restriction_policy - example: restriction_policy - type: string - x-enum-varnames: - - RESTRICTION_POLICY - RoleAttributes: - description: Attributes of the role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: >- - The name of the role. The name is neither unique nor a stable - identifier of the role. - type: string - user_count: - description: Number of users with that role. - format: int64 - readOnly: true - type: integer - type: object - RoleResponseRelationships: - description: Relationships of the role object returned by the API. - properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' - type: object - RolesType: - default: roles - description: Roles type. - enum: - - roles - example: roles - type: string - x-enum-varnames: - - ROLES - RoleCreateAttributes: - description: Attributes of the created role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: Name of the role. - example: developers - type: string - required: - - name - type: object - RoleRelationships: - description: Relationships of the role object. - properties: - permissions: - $ref: '#/components/schemas/RelationshipToPermissions' - type: object - RoleUpdateAttributes: - description: Attributes of the role. - properties: - created_at: - description: Creation time of the role. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last role modification. - format: date-time - readOnly: true - type: string - name: - description: Name of the role. - type: string - user_count: - description: The user count. - format: int32 - maximum: 2147483647 - type: integer - type: object - RoleCloneAttributes: - description: Attributes required to create a new role by cloning an existing one. - properties: - name: - description: Name of the new role that is cloned. - example: cloned-role - type: string - required: - - name - type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - UserAttributes: - description: Attributes of user object returned by the API. - properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time - type: string - name: - description: Name of the user. - nullable: true - type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true - type: string - verified: - description: Whether the user is verified. - type: boolean - type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. - properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - Organization: - description: Organization object. - properties: - attributes: - $ref: '#/components/schemas/OrganizationAttributes' - id: - description: ID of the organization. - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - type - type: object - ServiceAccountCreateAttributes: - description: Attributes of the created user. - properties: - email: - description: The email of the user. - example: jane.doe@example.com - type: string - name: - description: The name of the user. - type: string - service_account: - description: Whether the user is a service account. Must be true. - example: true - type: boolean - title: - description: The title of the user. - type: string - required: - - email - - service_account - type: object - UserRelationships: - description: Relationships of the user object. - properties: - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - TeamAttributes: - description: Team attributes - properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - created_at: - description: Creation date of the team - format: date-time - type: string - description: - description: Free-form markdown description/content for the team's homepage - nullable: true - type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - link_count: - description: The number of links belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - modified_at: - description: Modification date of the team - format: date-time - type: string - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - summary: - description: A brief summary of the team, derived from the `description` - maxLength: 120 - nullable: true - type: string - user_count: - description: The number of users belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array - required: - - handle - - name - type: object - TeamRelationships: - description: Resources related to a team - properties: - team_links: - $ref: '#/components/schemas/RelationshipToTeamLinks' - user_team_permissions: - $ref: '#/components/schemas/RelationshipToUserTeamPermission' - type: object - TeamType: - default: team - description: Team type - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - UserTeamPermission: - description: A user's permissions for a given team - properties: - attributes: - $ref: '#/components/schemas/UserTeamPermissionAttributes' - id: - description: The user team permission's identifier - example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 - type: string - type: - $ref: '#/components/schemas/UserTeamPermissionType' - required: - - id - - type - type: object - TeamsResponseMetaPagination: - description: Teams response metadata. - properties: - first_offset: - description: The first offset. - format: int64 - type: integer - last_offset: - description: The last offset. - format: int64 - type: integer - limit: - description: Pagination limit. - format: int64 - type: integer - next_offset: - description: The next offset. - format: int64 - type: integer - offset: - description: The offset. - format: int64 - type: integer - prev_offset: - description: The previous offset. - format: int64 - type: integer - total: - description: Total results. - format: int64 - type: integer - type: - description: Offset type. - type: string - type: object - TeamCreateAttributes: - description: Team creation attributes - properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - description: - description: Free-form markdown description/content for the team's homepage - type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array - required: - - handle - - name - type: object - TeamCreateRelationships: - description: Relationships formed with the team on creation - properties: - users: - $ref: '#/components/schemas/RelationshipToUsers' - type: object - TeamSyncAttributes: - description: Team sync attributes. - properties: - source: - $ref: '#/components/schemas/TeamSyncAttributesSource' - type: - $ref: '#/components/schemas/TeamSyncAttributesType' - required: - - source - - type - type: object - TeamSyncBulkType: - description: Team sync bulk type. - enum: - - team_sync_bulk - example: team_sync_bulk - type: string - x-enum-varnames: - - TEAM_SYNC_BULK - MemberTeamType: - default: member_teams - description: Member team type - enum: - - member_teams - example: member_teams - type: string - x-enum-varnames: - - MEMBER_TEAMS - TeamUpdateAttributes: - description: Team update attributes - properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - description: - description: Free-form markdown description/content for the team's homepage - type: string - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - hidden_modules: - description: Collection of hidden modules for the team - items: - description: String identifier of the module - type: string - type: array - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - visible_modules: - description: Collection of visible modules for the team - items: - description: String identifier of the module - type: string - type: array - required: - - handle - - name - type: object - TeamUpdateRelationships: - description: Team update relationships - properties: - team_links: - $ref: '#/components/schemas/RelationshipToTeamLinks' - type: object - TeamLinkAttributes: - description: Team link attributes - properties: - label: - description: The link's label - example: Link label - maxLength: 256 - type: string - position: - description: The link's position, used to sort links for the team - format: int32 - maximum: 2147483647 - type: integer - team_id: - description: ID of the team the link is associated with - readOnly: true - type: string - url: - description: The URL for the link - example: https://example.com - type: string - required: - - label - - url - type: object - TeamLinkType: - default: team_links - description: Team link type - enum: - - team_links - example: team_links - type: string - x-enum-varnames: - - TEAM_LINKS - UserTeamAttributes: - description: Team membership attributes - properties: - provisioned_by: - description: >- - The mechanism responsible for provisioning the team relationship. - - Possible values: null for added by a user, "service_account" if - added by a service account, and "saml_mapping" if provisioned via - SAML mapping. - nullable: true - readOnly: true - type: string - provisioned_by_id: - description: >- - UUID of the User or Service Account who provisioned this team - membership, or null if provisioned via SAML mapping. - nullable: true - readOnly: true - type: string - role: - $ref: '#/components/schemas/UserTeamRole' - type: object - UserTeamRelationships: - description: Relationship between membership and a user - properties: - team: - $ref: '#/components/schemas/RelationshipToUserTeamTeam' - user: - $ref: '#/components/schemas/RelationshipToUserTeamUser' - type: object - UserTeamType: - default: team_memberships - description: Team membership type - enum: - - team_memberships - example: team_memberships - type: string - x-enum-varnames: - - TEAM_MEMBERSHIPS - TeamPermissionSettingAttributes: - description: Team permission setting attributes - properties: - action: - $ref: '#/components/schemas/TeamPermissionSettingSerializerAction' - editable: - description: >- - Whether or not the permission setting is editable by the current - user - readOnly: true - type: boolean - options: - $ref: '#/components/schemas/TeamPermissionSettingValues' - title: - description: The team permission name - readOnly: true - type: string - value: - $ref: '#/components/schemas/TeamPermissionSettingValue' - type: object - TeamPermissionSettingType: - default: team_permission_settings - description: Team permission setting type - enum: - - team_permission_settings - example: team_permission_settings - type: string - x-enum-varnames: - - TEAM_PERMISSION_SETTINGS - TeamPermissionSettingUpdateAttributes: - description: Team permission setting update attributes - properties: - value: - $ref: '#/components/schemas/TeamPermissionSettingValue' - type: object - UsageAttributesObject: - description: Usage attributes data. - properties: - org_name: - description: The organization name. - type: string - product_family: - description: The product for which usage is being reported. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs to. - type: string - timeseries: - description: List of usage data reported for each requested hour. - items: - $ref: '#/components/schemas/UsageTimeSeriesObject' - type: array - usage_type: - $ref: '#/components/schemas/HourlyUsageType' - type: object - UsageTimeSeriesType: - default: usage_timeseries - description: Type of usage data. - enum: - - usage_timeseries - example: usage_timeseries - type: string - x-enum-varnames: - - USAGE_TIMESERIES - BillingDimensionsMappingBodyItem: - description: The mapping data for each billing dimension. - properties: - attributes: - $ref: '#/components/schemas/BillingDimensionsMappingBodyItemAttributes' - id: - description: ID of the billing dimension. - type: string - type: - $ref: '#/components/schemas/ActiveBillingDimensionsType' - type: object - CostByOrgAttributes: - description: Cost attributes data. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - charges: - description: List of charges data reported for the requested month. - items: - $ref: '#/components/schemas/ChargebackBreakdown' - type: array - date: - description: The month requested. - format: date-time - type: string - org_name: - description: The organization name. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs to. - type: string - total_cost: - description: The total cost of products for the month. - format: double - type: number - type: object - CostByOrgType: - default: cost_by_org - description: Type of cost data. - enum: - - cost_by_org - example: cost_by_org - type: string - x-enum-varnames: - - COST_BY_ORG - HourlyUsageAttributes: - description: >- - Attributes of hourly usage for a product family for an org for a time - period. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - measurements: - description: >- - List of the measured usage values for the product family for the org - for the time period. - items: - $ref: '#/components/schemas/HourlyUsageMeasurement' - type: array - org_name: - description: The organization name. - type: string - product_family: - description: The product for which usage is being reported. - type: string - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs to. - type: string - timestamp: - description: Datetime in ISO-8601 format, UTC. The hour for the usage. - format: date-time - type: string - type: object - HourlyUsagePagination: - description: The metadata for the current pagination. - properties: - next_record_id: - description: >- - The cursor to get the next results (if any). To make the next - request, use the same parameters and add `next_record_id`. - nullable: true - type: string - type: object - ProjectedCostAttributes: - description: Projected Cost attributes data. - properties: - account_name: - description: The account name. - type: string - account_public_id: - description: The account public ID. - type: string - charges: - description: List of charges data reported for the requested month. - items: - $ref: '#/components/schemas/ChargebackBreakdown' - type: array - date: - description: The month requested. - format: date-time - type: string - org_name: - description: The organization name. - type: string - projected_total_cost: - description: The total projected cost of products for the month. - format: double - type: number - public_id: - description: The organization public ID. - type: string - region: - description: The region of the Datadog instance that the organization belongs to. - type: string - type: object - ProjectedCostType: - default: projected_cost - description: Type of cost data. - enum: - - projected_cost - example: projected_cost - type: string - x-enum-varnames: - - PROJECt_COST - UserInvitationRelationships: - description: Relationships data for user invitation. - properties: - user: - $ref: '#/components/schemas/RelationshipToUser' - required: - - user - type: object - UserInvitationsType: - default: user_invitations - description: User invitations type. - enum: - - user_invitations - example: user_invitations - type: string - x-enum-varnames: - - USER_INVITATIONS - UserInvitationDataAttributes: - description: Attributes of a user invitation. - properties: - created_at: - description: Creation time of the user invitation. - format: date-time - type: string - expires_at: - description: Time of invitation expiration. - format: date-time - type: string - invite_type: - description: Type of invitation. - type: string - uuid: - description: UUID of the user invitation. - type: string - type: object - UserCreateAttributes: - description: Attributes of the created user. - properties: - email: - description: The email of the user. - example: jane.doe@example.com - type: string - name: - description: The name of the user. - type: string - title: - description: The title of the user. - type: string - required: - - email - type: object - UserUpdateAttributes: - description: Attributes of the edited user. - properties: - disabled: - description: If the user is enabled or disabled. - type: boolean - email: - description: The email of the user. - type: string - name: - description: The name of the user. - type: string - type: object - NullableRelationshipToUser: - description: Relationship to user. - nullable: true - properties: - data: - $ref: '#/components/schemas/NullableRelationshipToUserData' - required: - - data - type: object - LeakedKeyAttributes: - description: The definition of LeakedKeyAttributes object. - properties: - date: - description: The LeakedKeyAttributes date. - example: '2017-07-21T17:32:28Z' - format: date-time - type: string - leak_source: - description: The LeakedKeyAttributes leak_source. - type: string - required: - - date - type: object - LeakedKeyType: - default: leaked_keys - description: The definition of LeakedKeyType object. - enum: - - leaked_keys - example: leaked_keys - type: string - x-enum-varnames: - - LEAKED_KEYS - RelationshipToRole: - description: Relationship to role. - properties: - data: - $ref: '#/components/schemas/RelationshipToRoleData' - type: object - RelationshipToSAMLAssertionAttribute: - description: AuthN Mapping relationship to SAML Assertion Attribute. - properties: - data: - $ref: '#/components/schemas/RelationshipToSAMLAssertionAttributeData' - required: - - data - type: object - RelationshipToTeam: - description: Relationship to team. - properties: - data: - $ref: '#/components/schemas/RelationshipToTeamData' - type: object - SAMLAssertionAttributeAttributes: - description: Key/Value pair of attributes used in SAML assertion attributes. - properties: - attribute_key: - description: >- - Key portion of a key/value pair of the attribute sent from the - Identity Provider. - example: member-of - type: string - attribute_value: - description: >- - Value portion of a key/value pair of the attribute sent from the - Identity Provider. - example: Development - type: string - type: object - SAMLAssertionAttributesType: - default: saml_assertion_attributes - description: SAML assertion attributes resource type. - enum: - - saml_assertion_attributes - example: saml_assertion_attributes - type: string - x-enum-varnames: - - SAML_ASSERTION_ATTRIBUTES - AuthNMappingTeamAttributes: - description: Team attributes. - properties: - avatar: - description: >- - Unicode representation of the avatar for the team, limited to a - single grapheme - example: 🥑 - nullable: true - type: string - banner: - description: Banner selection for the team - format: int64 - nullable: true - type: integer - handle: - description: The team's identifier - example: example-team - maxLength: 195 - type: string - link_count: - description: The number of links belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - name: - description: The name of the team - example: Example Team - maxLength: 200 - type: string - summary: - description: A brief summary of the team, derived from the `description` - maxLength: 120 - nullable: true - type: string - user_count: - description: The number of users belonging to the team - format: int32 - maximum: 2147483647 - readOnly: true - type: integer - type: object - AuthNMappingRelationshipToRole: - description: Relationship of AuthN Mapping to a Role. - properties: - role: - $ref: '#/components/schemas/RelationshipToRole' - required: - - role - type: object - AuthNMappingRelationshipToTeam: - description: Relationship of AuthN Mapping to a Team. - properties: - team: - $ref: '#/components/schemas/RelationshipToTeam' - required: - - team - type: object - IPAllowlistEntry: - description: IP allowlist entry object. - properties: - data: - $ref: '#/components/schemas/IPAllowlistEntryData' - required: - - data - type: object - OrgConnectionTypeEnum: - description: Available connection types between organizations. - enum: - - logs - - metrics - example: logs - type: string - x-enum-varnames: - - LOGS - - METRICS - OrgConnectionUserRelationship: - description: User relationship. - properties: - data: - $ref: '#/components/schemas/OrgConnectionUserRelationshipData' - type: object - OrgConnectionOrgRelationship: - description: Org relationship. - properties: - data: - $ref: '#/components/schemas/OrgConnectionOrgRelationshipData' - type: object - RestrictionPolicyBinding: - description: Specifies which principals are associated with a relation. - properties: - principals: - description: >- - An array of principals. A principal is a subject or group of - subjects. - - Each principal is formatted as `type:id`. Supported types: `role`, - `team`, `user`, and `org`. - - The org ID can be obtained through the api/v2/current_user API. - - The user principal type accepts service account IDs. - example: - - role:00000000-0000-1111-0000-000000000000 - items: - description: >- - Subject or group of subjects. Each principal is formatted as - `type:id`. - - Supported types: `role`, `team`, `user`, and `org`. - - The org ID can be obtained through the api/v2/current_user API. - - The user principal type accepts service account IDs. - type: string - type: array - relation: - description: The role/level of access. - example: editor - type: string - required: - - relation - - principals - type: object - RelationshipToPermissions: - description: Relationship to multiple permissions objects. - properties: - data: - description: Relationships to permission objects. - items: - $ref: '#/components/schemas/RelationshipToPermissionData' - type: array - type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' - required: - - data - type: object - RelationshipToOrganizations: - description: Relationship to organizations. - properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array - required: - - data - type: object - RelationshipToUsers: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array - required: - - data - type: object - RelationshipToRoles: - description: Relationship to roles. - properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array - type: object - OrganizationAttributes: - description: Attributes of the organization. - properties: - created_at: - description: Creation time of the organization. - format: date-time - type: string - description: - description: Description of the organization. - type: string - disabled: - description: Whether or not the organization is disabled. - type: boolean - modified_at: - description: Time of last organization modification. - format: date-time - type: string - name: - description: Name of the organization. - type: string - public_id: - description: Public ID of the organization. - type: string - sharing: - description: Sharing type of the organization. - type: string - url: - description: URL of the site that this organization exists at. - type: string - type: object - OrganizationsType: - default: orgs - description: Organizations resource type. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - RelationshipToTeamLinks: - description: Relationship between a team and a team link - properties: - data: - description: Related team links - items: - $ref: '#/components/schemas/RelationshipToTeamLinkData' - type: array - links: - $ref: '#/components/schemas/TeamRelationshipsLinks' - type: object - RelationshipToUserTeamPermission: - description: Relationship between a user team permission and a team - properties: - data: - $ref: '#/components/schemas/RelationshipToUserTeamPermissionData' - links: - $ref: '#/components/schemas/TeamRelationshipsLinks' - type: object - UserTeamPermissionAttributes: - description: User team permission attributes - properties: - permissions: - description: >- - Object of team permission actions and boolean values that a logged - in user can perform on this team. - readOnly: true - type: object - type: object - UserTeamPermissionType: - default: user_team_permissions - description: User team permission type - enum: - - user_team_permissions - example: user_team_permissions - type: string - x-enum-varnames: - - USER_TEAM_PERMISSIONS - TeamSyncAttributesSource: - description: >- - The external source platform for team synchronization. Only "github" is - supported. - enum: - - github - example: github - type: string - x-enum-varnames: - - GITHUB - TeamSyncAttributesType: - description: >- - The type of synchronization operation. Only "link" is supported, which - links existing teams by matching names. - enum: - - link - example: link - type: string - x-enum-varnames: - - LINK - UserTeamRole: - description: The user's role within the team - enum: - - admin - nullable: true - type: string - x-enum-varnames: - - ADMIN - RelationshipToUserTeamTeam: - description: Relationship between team membership and team - properties: - data: - $ref: '#/components/schemas/RelationshipToUserTeamTeamData' - required: - - data - type: object - RelationshipToUserTeamUser: - description: Relationship between team membership and user - properties: - data: - $ref: '#/components/schemas/RelationshipToUserTeamUserData' - required: - - data - type: object - TeamPermissionSettingSerializerAction: - description: The identifier for the action - enum: - - manage_membership - - edit - readOnly: true - type: string - x-enum-varnames: - - MANAGE_MEMBERSHIP - - EDIT - TeamPermissionSettingValues: - description: Possible values for action - items: - $ref: '#/components/schemas/TeamPermissionSettingValue' - readOnly: true - type: array - TeamPermissionSettingValue: - description: What type of user is allowed to perform the specified action - enum: - - admins - - members - - organization - - user_access_manage - - teams_manage - type: string - x-enum-varnames: - - ADMINS - - MEMBERS - - ORGANIZATION - - USER_ACCESS_MANAGE - - TEAMS_MANAGE - UsageTimeSeriesObject: - description: Usage timeseries data. - properties: - timestamp: - description: Datetime in ISO-8601 format, UTC. The hour for the usage. - format: date-time - type: string - value: - description: >- - Contains the number measured for the given usage_type during the - hour. - format: int64 - nullable: true - type: integer - type: object - HourlyUsageType: - description: Usage type that is being measured. - enum: - - app_sec_host_count - - observability_pipelines_bytes_processed - - lambda_traced_invocations_count - example: observability_pipelines_bytes_processed - type: string - x-enum-varnames: - - APP_SEC_HOST_COUNT - - OBSERVABILITY_PIPELINES_BYTES_PROCESSSED - - LAMBDA_TRACED_INVOCATIONS_COUNT - BillingDimensionsMappingBodyItemAttributes: - description: Mapping of billing dimensions to endpoint keys. - properties: - endpoints: - description: >- - List of supported endpoints with their keys mapped to the - billing_dimension. - items: - $ref: >- - #/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItems - type: array - in_app_label: - description: Label used for the billing dimension in the Plan & Usage charts. - example: APM Hosts - type: string - timestamp: - description: >- - Month in ISO-8601 format, UTC, and precise to the second: - `[YYYY-MM-DDThh:mm:ss]`. - format: date-time - type: string - type: object - ActiveBillingDimensionsType: - default: billing_dimensions - description: Type of active billing dimensions data. - enum: - - billing_dimensions - type: string - x-enum-varnames: - - BILLING_DIMENSIONS - ChargebackBreakdown: - description: Charges breakdown. - properties: - charge_type: - description: The type of charge for a particular product. - example: on_demand - type: string - cost: - description: >- - The cost for a particular product and charge type during a given - month. - format: double - type: number - product_name: - description: The product for which cost is being reported. - example: infra_host - type: string - type: object - HourlyUsageMeasurement: - description: Usage amount for a given usage type. - properties: - usage_type: - description: Type of usage. - type: string - value: - description: >- - Contains the number measured for the given usage_type during the - hour. - format: int64 - nullable: true - type: integer - type: object - NullableRelationshipToUserData: - description: Relationship to user object. - nullable: true - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - RelationshipToRoleData: - description: Relationship to role object. - properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - type: - $ref: '#/components/schemas/RolesType' - type: object - RelationshipToSAMLAssertionAttributeData: - description: Data of AuthN Mapping relationship to SAML Assertion Attribute. - properties: - id: - description: The ID of the SAML assertion attribute. - example: '0' - type: string - type: - $ref: '#/components/schemas/SAMLAssertionAttributesType' - required: - - id - - type - type: object - RelationshipToTeamData: - description: Relationship to Team object. - properties: - id: - description: The unique identifier of the team. - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamType' - type: object - IPAllowlistEntryData: - description: Data of the IP allowlist entry object. - properties: - attributes: - $ref: '#/components/schemas/IPAllowlistEntryAttributes' - id: - description: The unique identifier of the IP allowlist entry. - type: string - type: - $ref: '#/components/schemas/IPAllowlistEntryType' - required: - - type - type: object - OrgConnectionUserRelationshipData: - description: The data for a user relationship. - properties: - id: - description: User UUID. - example: usr123abc456 - type: string - name: - description: User name. - example: John Doe - type: string - type: - $ref: '#/components/schemas/OrgConnectionUserRelationshipDataType' - type: object - OrgConnectionOrgRelationshipData: - description: The definition of `OrgConnectionOrgRelationshipData` object. - properties: - id: - description: Org UUID. - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - type: string - name: - description: Org name. - example: Example Org - type: string - type: - $ref: '#/components/schemas/OrgConnectionOrgRelationshipDataType' - type: object - RelationshipToOrganizationData: - description: Relationship to organization object. - properties: - id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - id - - type - type: object - RelationshipToTeamLinkData: - description: Relationship between a link and a team - properties: - id: - description: The team link's identifier - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - id - - type - type: object - TeamRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Related link. - example: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links - type: string - type: object - RelationshipToUserTeamPermissionData: - description: Related user team permission data - properties: - id: - description: The ID of the user team permission - example: UserTeamPermissions-aeadc05e-98a8-11ec-ac2c-da7ad0900001-416595 - type: string - type: - $ref: '#/components/schemas/UserTeamPermissionType' - required: - - id - - type - type: object - RelationshipToUserTeamTeamData: - description: The team associated with the membership - properties: - id: - description: The ID of the team associated with the membership - example: d7e15d9d-d346-43da-81d8-3d9e71d9a5e9 - type: string - type: - $ref: '#/components/schemas/UserTeamTeamType' - required: - - id - - type - type: object - RelationshipToUserTeamUserData: - description: A user's relationship with a team - properties: - id: - description: The ID of the user associated with the team - example: b8626d7e-cedd-11eb-abf5-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/UserTeamUserType' - required: - - id - - type - type: object - BillingDimensionsMappingBodyItemAttributesEndpointsItems: - description: An endpoint's keys mapped to the billing_dimension. - properties: - id: - description: The URL for the endpoint. - example: api/v1/usage/billable-summary - type: string - keys: - description: The billing dimension. - example: - - apm_host_top99p - - apm_host_sum - items: - example: apm_host_top99p - type: string - type: array - status: - $ref: >- - #/components/schemas/BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus - type: object - IPAllowlistEntryAttributes: - description: Attributes of the IP allowlist entry. - properties: - cidr_block: - description: The CIDR block describing the IP range of the entry. - type: string - created_at: - description: Creation time of the entry. - format: date-time - readOnly: true - type: string - modified_at: - description: Time of last entry modification. - format: date-time - readOnly: true - type: string - note: - description: A note describing the IP allowlist entry. - type: string - type: object - IPAllowlistEntryType: - default: ip_allowlist_entry - description: IP allowlist Entry type. - enum: - - ip_allowlist_entry - example: ip_allowlist_entry - type: string - x-enum-varnames: - - IP_ALLOWLIST_ENTRY - OrgConnectionUserRelationshipDataType: - description: The type of the user relationship. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - OrgConnectionOrgRelationshipDataType: - description: The type of the organization relationship. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - UserTeamTeamType: - default: team - description: User team team type - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - UserTeamUserType: - default: users - description: User team user type - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - BillingDimensionsMappingBodyItemAttributesEndpointsItemsStatus: - description: Denotes whether mapping keys were available for this endpoint. - enum: - - OK - - NOT_FOUND - type: string - x-enum-varnames: - - OK - - NOT_FOUND - responses: - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - UnauthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unauthorized - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - parameters: - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - APIKeysSortParameter: - description: |- - API key attribute used to sort results. Sort order is ascending - by default. In order to specify a descending sort, prefix the - attribute with a minus sign. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/APIKeysSort' - APIKeyFilterParameter: - description: Filter API keys by the specified string. - in: query - name: filter - required: false - schema: - type: string - APIKeyFilterCreatedAtStartParameter: - description: Only include API keys created on or after the specified date. - in: query - name: filter[created_at][start] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterCreatedAtEndParameter: - description: Only include API keys created on or before the specified date. - in: query - name: filter[created_at][end] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterModifiedAtStartParameter: - description: Only include API keys modified on or after the specified date. - in: query - name: filter[modified_at][start] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyFilterModifiedAtEndParameter: - description: Only include API keys modified on or before the specified date. - in: query - name: filter[modified_at][end] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - APIKeyIncludeParameter: - description: >- - Comma separated list of resource paths for related resources to include - in the response. Supported resource paths are `created_by` and - `modified_by`. - in: query - name: include - required: false - schema: - example: created_by,modified_by - type: string - APIKeyReadConfigReadEnabledParameter: - description: Filter API keys by remote config read enabled status. - in: query - name: filter[remote_config_read_enabled] - required: false - schema: - type: boolean - APIKeyCategoryParameter: - description: Filter API keys by category. - in: query - name: filter[category] - required: false - schema: - type: string - APIKeyId: - description: The ID of the API key. - in: path - name: api_key_id - required: true - schema: - type: string - ApplicationKeysSortParameter: - description: |- - Application key attribute used to sort results. Sort order is ascending - by default. In order to specify a descending sort, prefix the - attribute with a minus sign. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/ApplicationKeysSort' - ApplicationKeyFilterParameter: - description: Filter application keys by the specified string. - in: query - name: filter - required: false - schema: - type: string - ApplicationKeyFilterCreatedAtStartParameter: - description: Only include application keys created on or after the specified date. - in: query - name: filter[created_at][start] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - ApplicationKeyFilterCreatedAtEndParameter: - description: Only include application keys created on or before the specified date. - in: query - name: filter[created_at][end] - required: false - schema: - example: '2020-11-24T18:46:21+00:00' - type: string - ApplicationKeyIncludeParameter: - description: >- - Resource path for related resources to include in the response. Only - `owned_by` is supported. - in: query - name: include - required: false - schema: - example: owned_by - type: string - ApplicationKeyID: - description: The ID of the application key. - in: path - name: app_key_id - required: true - schema: - type: string - AuthNMappingID: - description: The UUID of the AuthN Mapping. - in: path - name: authn_mapping_id - required: true - schema: - type: string - ProductName: - description: Name of the product to be deleted, either `logs` or `rum`. - in: path - name: product - required: true - schema: - type: string - RequestId: - description: ID of the deletion request. - in: path - name: id - required: true - schema: - type: string - OrgConfigName: - description: The name of an Org Config. - in: path - name: org_config_name - required: true - schema: - example: monitor_timezone - type: string - OrgConnectionId: - description: The unique identifier of the org connection. - in: path - name: connection_id - required: true - schema: - example: f9ec96b0-8c8a-4b0a-9b0a-1b2c3d4e5f6a - format: uuid - type: string - ResourceID: - description: >- - Identifier, formatted as `type:id`. Supported types: `dashboard`, - `integration-service`, `integration-webhook`, `notebook`, - `reference-table`, `security-rule`, `slo`, `workflow`, - `app-builder-app`, `connection`, `connection-group`, `rum-application`, - `cross-org-connection`, `spreadsheet`, `on-call-schedule`, - `on-call-escalation-policy`, `on-call-team-routing-rules. - example: dashboard:abc-def-ghi - in: path - name: resource_id - required: true - schema: - type: string - RoleID: - description: The unique identifier of the role. - in: path - name: role_id - required: true - schema: - type: string - ServiceAccountID: - description: The ID of the service account. - in: path - name: service_account_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - UserID: - description: The ID of the user. - in: path - name: user_id - required: true - schema: - example: 00000000-0000-9999-0000-000000000000 - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/remote_config.yaml b/provider-dev/source/remote_config.yaml deleted file mode 100644 index dadc2a3..0000000 --- a/provider-dev/source/remote_config.yaml +++ /dev/null @@ -1,6510 +0,0 @@ -openapi: 3.0.0 -info: - title: remote_config API - description: datadog remote_config API - version: '1.0' -paths: - /api/v2/remote_config/products/asm/waf/custom_rules: - get: - description: Retrieve a list of WAF custom rule. - operationId: ListApplicationSecurityWAFCustomRules - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleListResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all WAF custom rules - tags: - - Application Security - post: - description: Create a new WAF custom rule with the given parameters. - operationId: CreateApplicationSecurityWafCustomRule - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleCreateRequest - description: The definition of the new WAF Custom Rule. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a WAF custom rule - tags: - - Application Security - x-codegen-request-body-name: body - /api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}: - delete: - description: Delete a specific WAF custom rule. - operationId: DeleteApplicationSecurityWafCustomRule - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafCustomRuleIDParam' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a WAF Custom Rule - tags: - - Application Security - x-terraform-resource: appsec_waf_custom_rule - get: - description: Retrieve a WAF custom rule by ID. - operationId: GetApplicationSecurityWafCustomRule - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafCustomRuleIDParam' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a WAF custom rule - tags: - - Application Security - x-terraform-resource: appsec_waf_custom_rule - put: - description: |- - Update a specific WAF custom Rule. - Returns the Custom Rule object when the request is successful. - operationId: UpdateApplicationSecurityWafCustomRule - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafCustomRuleIDParam' - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleUpdateRequest - description: New definition of the WAF Custom Rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a WAF Custom Rule - tags: - - Application Security - x-codegen-request-body-name: body - x-terraform-resource: appsec_waf_custom_rule - /api/v2/remote_config/products/asm/waf/exclusion_filters: - get: - description: Retrieve a list of WAF exclusion filters. - operationId: ListApplicationSecurityWafExclusionFilters - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFiltersResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List all WAF exclusion filters - tags: - - Application Security - x-permission: - operator: AND - permissions: - - appsec_protect_read - x-terraform-resource: appsec_waf_exclusion_filter - post: - description: >- - Create a new WAF exclusion filter with the given parameters. - - - A request matched by an exclusion filter will be ignored by the - Application Security WAF product. - - Go to https://app.datadoghq.com/security/appsec/passlist to review - existing exclusion filters (also called passlist entries). - operationId: CreateApplicationSecurityWafExclusionFilter - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterCreateRequest - description: The definition of the new WAF exclusion filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterResponse - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a WAF exclusion filter - tags: - - Application Security - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - appsec_protect_write - x-terraform-resource: appsec_waf_exclusion_filter - /api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id}: - delete: - description: Delete a specific WAF exclusion filter using its identifier. - operationId: DeleteApplicationSecurityWafExclusionFilter - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafExclusionFilterID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a WAF exclusion filter - tags: - - Application Security - x-permission: - operator: AND - permissions: - - appsec_protect_write - x-terraform-resource: appsec_waf_exclusion_filter - get: - description: Retrieve a specific WAF exclusion filter using its identifier. - operationId: GetApplicationSecurityWafExclusionFilter - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafExclusionFilterID' - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a WAF exclusion filter - tags: - - Application Security - x-permission: - operator: AND - permissions: - - appsec_protect_read - x-terraform-resource: appsec_waf_exclusion_filter - put: - description: |- - Update a specific WAF exclusion filter using its identifier. - Returns the exclusion filter object when the request is successful. - operationId: UpdateApplicationSecurityWafExclusionFilter - parameters: - - $ref: '#/components/parameters/ApplicationSecurityWafExclusionFilterID' - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterUpdateRequest - description: The exclusion filter to update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterResponse - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a WAF exclusion filter - tags: - - Application Security - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - appsec_protect_write - x-terraform-resource: appsec_waf_exclusion_filter - /api/v2/remote_config/products/cws/agent_rules: - get: - description: >- - Get the list of Workload Protection agent rules. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: ListCSMThreatsAgentRules - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentRulesListResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection agent rules - tags: - - CSM Threats - post: - description: >- - Create a new Workload Protection agent rule with the given parameters. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: CreateCSMThreatsAgentRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' - description: The definition of the new agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection agent rule - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/cws/agent_rules/{agent_rule_id}: - delete: - description: >- - Delete a specific Workload Protection agent rule. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: DeleteCSMThreatsAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection agent rule - tags: - - CSM Threats - get: - description: >- - Get the details of a specific Workload Protection agent rule. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: GetCSMThreatsAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection agent rule - tags: - - CSM Threats - patch: - description: >- - Update a specific Workload Protection Agent rule. - - Returns the agent rule object when the request is successful. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: UpdateCSMThreatsAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - - $ref: '#/components/parameters/CloudWorkloadSecurityQueryAgentPolicyID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' - description: New definition of the agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection agent rule - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/cws/policy: - get: - description: >- - Get the list of Workload Protection policies. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: ListCSMThreatsAgentPolicies - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPoliciesListResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection policies - tags: - - CSM Threats - post: - description: >- - Create a new Workload Protection policy with the given parameters. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: CreateCSMThreatsAgentPolicy - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyCreateRequest - description: The definition of the new Agent policy - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection policy - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/cws/policy/download: - get: - description: >- - The download endpoint generates a Workload Protection policy file from - your currently active - - Workload Protection agent rules, and downloads them as a `.policy` file. - This file can then be deployed to - - your agents to update the policy running in your environment. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: DownloadCSMThreatsPolicy - responses: - '200': - content: - application/zip: - schema: - format: binary - type: string - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Download the Workload Protection policy - tags: - - CSM Threats - /api/v2/remote_config/products/cws/policy/{policy_id}: - delete: - description: >- - Delete a specific Workload Protection policy. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: DeleteCSMThreatsAgentPolicy - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' - responses: - '202': - description: OK - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection policy - tags: - - CSM Threats - get: - description: >- - Get the details of a specific Workload Protection policy. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: GetCSMThreatsAgentPolicy - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection policy - tags: - - CSM Threats - patch: - description: >- - Update a specific Workload Protection policy. - - Returns the policy object when the request is successful. - - - **Note**: This endpoint is not available for the Government (US1-FED) - site. Please reference the (US1-FED) specific resource below. - operationId: UpdateCSMThreatsAgentPolicy - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityPathAgentPolicyID' - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateRequest - description: New definition of the Agent policy - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection policy - tags: - - CSM Threats - x-codegen-request-body-name: body - /api/v2/remote_config/products/obs_pipelines/pipelines: - get: - description: Retrieve a list of pipelines. - operationId: ListPipelines - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListPipelinesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List pipelines - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - post: - description: Create a new pipeline. - operationId: CreatePipeline - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipelineSpec' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a new pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_deploy - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - /api/v2/remote_config/products/obs_pipelines/pipelines/validate: - post: - description: > - Validates a pipeline configuration without creating or updating any - resources. - - Returns a list of validation errors, if any. - operationId: ValidatePipeline - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipelineSpec' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ValidationResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Validate an observability pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - /api/v2/remote_config/products/obs_pipelines/pipelines/{pipeline_id}: - delete: - description: Delete a pipeline. - operationId: DeletePipeline - parameters: - - description: The ID of the pipeline to delete. - in: path - name: pipeline_id - required: true - schema: - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '409': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_delete - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - get: - description: Get a specific pipeline by its ID. - operationId: GetPipeline - parameters: - - description: The ID of the pipeline to retrieve. - in: path - name: pipeline_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a specific pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_read - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. - put: - description: Update a pipeline. - operationId: UpdatePipeline - parameters: - - description: The ID of the pipeline to update. - in: path - name: pipeline_id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ObservabilityPipeline' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a pipeline - tags: - - Observability Pipelines - x-permission: - operator: OR - permissions: - - observability_pipelines_deploy - x-unstable: >- - **Note**: This endpoint is in Preview. Fill out this - [form](https://www.datadoghq.com/product-preview/observability-pipelines-api-and-terraform-support/) - to request access. -components: - schemas: - ApplicationSecurityWafCustomRuleListResponse: - description: Response object that includes a list of WAF custom rules. - properties: - data: - description: The WAF custom rule data. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleData' - type: array - type: object - ApplicationSecurityWafCustomRuleCreateRequest: - description: Request object that includes the custom rule to create. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCreateData' - required: - - data - type: object - ApplicationSecurityWafCustomRuleResponse: - description: Response object that includes a single WAF custom rule. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleData' - type: object - ApplicationSecurityWafCustomRuleUpdateRequest: - description: Request object that includes the Custom Rule to update. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleUpdateData' - required: - - data - type: object - ApplicationSecurityWafExclusionFiltersResponse: - description: Response object for multiple WAF exclusion filters. - properties: - data: - description: A list of WAF exclusion filters. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResource' - type: array - type: object - ApplicationSecurityWafExclusionFilterCreateRequest: - description: Request object for creating a single WAF exclusion filter. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterCreateData' - required: - - data - type: object - ApplicationSecurityWafExclusionFilterResponse: - description: Response object for a single WAF exclusion filter. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterResource' - type: object - ApplicationSecurityWafExclusionFilterUpdateRequest: - description: Request object for updating a single WAF exclusion filter. - properties: - data: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterUpdateData' - required: - - data - type: object - CloudWorkloadSecurityAgentRulesListResponse: - description: Response object that includes a list of Agent rule - properties: - data: - description: A list of Agent rules objects - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: array - type: object - CloudWorkloadSecurityAgentRuleCreateRequest: - description: Request object that includes the Agent rule to create - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateData' - required: - - data - type: object - CloudWorkloadSecurityAgentRuleResponse: - description: Response object that includes an Agent rule - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: object - CloudWorkloadSecurityAgentRuleUpdateRequest: - description: >- - Request object that includes the Agent rule with the attributes to - update - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData' - required: - - data - type: object - CloudWorkloadSecurityAgentPoliciesListResponse: - description: Response object that includes a list of Agent policies - properties: - data: - description: A list of Agent policy objects - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyData' - type: array - type: object - CloudWorkloadSecurityAgentPolicyCreateRequest: - description: Request object that includes the Agent policy to create - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyCreateData' - required: - - data - type: object - CloudWorkloadSecurityAgentPolicyResponse: - description: Response object that includes an Agent policy - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyData' - type: object - CloudWorkloadSecurityAgentPolicyUpdateRequest: - description: >- - Request object that includes the Agent policy with the attributes to - update - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateData' - required: - - data - type: object - ListPipelinesResponse: - description: >- - Represents the response payload containing a list of pipelines and - associated metadata. - properties: - data: - description: The `schema` `data`. - items: - $ref: '#/components/schemas/ObservabilityPipelineData' - type: array - meta: - $ref: '#/components/schemas/ListPipelinesResponseMeta' - required: - - data - type: object - ObservabilityPipelineSpec: - description: >- - Input schema representing an observability pipeline configuration. Used - in create and validate requests. - properties: - data: - $ref: '#/components/schemas/ObservabilityPipelineSpecData' - required: - - data - type: object - ObservabilityPipeline: - description: Top-level schema representing a pipeline. - properties: - data: - $ref: '#/components/schemas/ObservabilityPipelineData' - required: - - data - type: object - ValidationResponse: - description: Response containing validation errors. - example: - errors: - - meta: - field: region - id: datadog-agent-source - message: Field 'region' is required - title: Field 'region' is required - properties: - errors: - description: The `ValidationResponse` `errors`. - items: - $ref: '#/components/schemas/ValidationError' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - ApplicationSecurityWafCustomRuleData: - description: Object for a single WAF custom rule. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAttributes' - id: - description: The ID of the custom rule. - example: 2857c47d-1e3a-4300-8b2f-dc24089c084b - readOnly: true - type: string - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - type: object - ApplicationSecurityWafCustomRuleCreateData: - description: Object for a single WAF custom rule. - properties: - attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleCreateAttributes - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - required: - - attributes - - type - type: object - ApplicationSecurityWafCustomRuleUpdateData: - description: Object for a single WAF Custom Rule. - properties: - attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleUpdateAttributes - type: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleType' - required: - - attributes - - type - type: object - ApplicationSecurityWafExclusionFilterResource: - description: A JSON:API resource for an WAF exclusion filter. - properties: - attributes: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterAttributes' - id: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterID' - type: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' - type: object - ApplicationSecurityWafExclusionFilterCreateData: - description: Object for creating a single WAF exclusion filter. - properties: - attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterCreateAttributes - type: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' - required: - - attributes - - type - type: object - ApplicationSecurityWafExclusionFilterUpdateData: - description: Object for updating a single WAF exclusion filter. - properties: - attributes: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterUpdateAttributes - type: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentRuleData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAttributes' - id: - description: The ID of the Agent rule - example: 3dd-0uc-h1s - type: string - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - type: object - CloudWorkloadSecurityAgentRuleCreateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentRuleUpdateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes' - id: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleID' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentPolicyData: - description: Object for a single Agent policy - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyAttributes' - id: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - type: string - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' - type: object - CloudWorkloadSecurityAgentPolicyCreateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyCreateAttributes - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentPolicyUpdateData: - description: Object for a single Agent policy - properties: - attributes: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyUpdateAttributes - id: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyID' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentPolicyType' - required: - - attributes - - type - type: object - ObservabilityPipelineData: - description: Contains the pipeline’s ID, type, and configuration attributes. - properties: - attributes: - $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' - id: - description: Unique identifier for the pipeline. - example: 3fa85f64-5717-4562-b3fc-2c963f66afa6 - type: string - type: - default: pipelines - description: >- - The resource type identifier. For pipeline resources, this should - always be set to `pipelines`. - example: pipelines - type: string - required: - - id - - type - - attributes - type: object - ListPipelinesResponseMeta: - description: Metadata about the response. - properties: - totalCount: - description: The total number of pipelines. - example: 42 - format: int64 - type: integer - type: object - ObservabilityPipelineSpecData: - description: Contains the the pipeline configuration. - properties: - attributes: - $ref: '#/components/schemas/ObservabilityPipelineDataAttributes' - type: - default: pipelines - description: >- - The resource type identifier. For pipeline resources, this should - always be set to `pipelines`. - example: pipelines - type: string - required: - - type - - attributes - type: object - ValidationError: - description: >- - Represents a single validation error, including a human-readable title - and metadata. - properties: - meta: - $ref: '#/components/schemas/ValidationErrorMeta' - title: - description: A short, human-readable summary of the error. - example: Field 'region' is required - type: string - required: - - title - - meta - type: object - ApplicationSecurityWafCustomRuleAttributes: - description: A WAF custom rule. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAction' - blocking: - description: Indicates whether the WAF custom rule will block the request. - example: false - type: boolean - conditions: - description: >- - Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - - rule to trigger. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' - type: array - enabled: - description: Indicates whether the WAF custom rule is enabled. - example: false - type: boolean - metadata: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleMetadata' - name: - description: The Name of the WAF custom rule. - example: Block request from bad useragent - type: string - path_glob: - description: The path glob for the WAF custom rule. - example: /api/search/* - type: string - scope: - description: The scope of the WAF custom rule. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleScope' - type: array - tags: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTags' - required: - - enabled - - blocking - - name - - tags - - conditions - type: object - ApplicationSecurityWafCustomRuleType: - default: custom_rule - description: The type of the resource. The value should always be `custom_rule`. - enum: - - custom_rule - example: custom_rule - type: string - x-enum-varnames: - - CUSTOM_RULE - ApplicationSecurityWafCustomRuleCreateAttributes: - description: Create a new WAF custom rule. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAction' - blocking: - description: Indicates whether the WAF custom rule will block the request. - example: false - type: boolean - conditions: - description: >- - Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - - rule to trigger - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' - type: array - enabled: - description: Indicates whether the WAF custom rule is enabled. - example: false - type: boolean - name: - description: The Name of the WAF custom rule. - example: Block request from a bad useragent - type: string - path_glob: - description: The path glob for the WAF custom rule. - example: /api/search/* - type: string - scope: - description: The scope of the WAF custom rule. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleScope' - type: array - tags: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTags' - required: - - enabled - - blocking - - name - - tags - - conditions - type: object - ApplicationSecurityWafCustomRuleUpdateAttributes: - description: Update a WAF custom rule. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleAction' - blocking: - description: Indicates whether the WAF custom rule will block the request. - example: false - type: boolean - conditions: - description: >- - Conditions for which the WAF Custom Rule will triggers, all - conditions needs to match in order for the WAF - - rule to trigger. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleCondition' - type: array - enabled: - description: Indicates whether the WAF custom rule is enabled. - example: false - type: boolean - name: - description: The Name of the WAF custom rule. - example: Block request from bad useragent - type: string - path_glob: - description: The path glob for the WAF custom rule. - example: /api/search/* - type: string - scope: - description: The scope of the WAF custom rule. - items: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleScope' - type: array - tags: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTags' - required: - - enabled - - blocking - - name - - tags - - conditions - type: object - ApplicationSecurityWafExclusionFilterAttributes: - description: Attributes describing a WAF exclusion filter. - properties: - description: - description: A description for the exclusion filter. - example: Exclude false positives on a path - type: string - enabled: - description: Indicates whether the exclusion filter is enabled. - example: true - type: boolean - event_query: - description: >- - The event query matched by the legacy exclusion filter. Cannot be - created nor updated. - type: string - ip_list: - description: >- - The client IP addresses matched by the exclusion filter (CIDR - notation is supported). - items: - example: 198.51.100.72 - type: string - type: array - metadata: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterMetadata' - on_match: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' - parameters: - description: >- - A list of parameters matched by the exclusion filter in the HTTP - query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. - items: - example: list.search.query - type: string - type: array - path_glob: - description: The HTTP path glob expression matched by the exclusion filter. - example: /accounts/* - type: string - rules_target: - description: The WAF rules targeted by the exclusion filter. - items: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget - type: array - scope: - description: The services where the exclusion filter is deployed. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' - type: array - search_query: - description: >- - Generated event search query for traces matching the exclusion - filter. - readOnly: true - type: string - type: object - ApplicationSecurityWafExclusionFilterID: - description: The identifier of the WAF exclusion filter. - example: 3dd-0uc-h1s - readOnly: true - type: string - ApplicationSecurityWafExclusionFilterType: - default: exclusion_filter - description: Type of the resource. The value should always be `exclusion_filter`. - enum: - - exclusion_filter - example: exclusion_filter - type: string - x-enum-varnames: - - EXCLUSION_FILTER - ApplicationSecurityWafExclusionFilterCreateAttributes: - description: Attributes for creating a WAF exclusion filter. - properties: - description: - description: A description for the exclusion filter. - example: Exclude false positives on a path - type: string - enabled: - description: Indicates whether the exclusion filter is enabled. - example: true - type: boolean - ip_list: - description: >- - The client IP addresses matched by the exclusion filter (CIDR - notation is supported). - items: - example: 198.51.100.72 - type: string - type: array - on_match: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' - parameters: - description: >- - A list of parameters matched by the exclusion filter in the HTTP - query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. - items: - example: list.search.query - type: string - type: array - path_glob: - description: The HTTP path glob expression matched by the exclusion filter. - example: /accounts/* - type: string - rules_target: - description: The WAF rules targeted by the exclusion filter. - items: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget - type: array - scope: - description: The services where the exclusion filter is deployed. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' - type: array - required: - - description - - enabled - type: object - ApplicationSecurityWafExclusionFilterUpdateAttributes: - description: Attributes for updating a WAF exclusion filter. - properties: - description: - description: A description for the exclusion filter. - example: Exclude false positives on a path - type: string - enabled: - description: Indicates whether the exclusion filter is enabled. - example: true - type: boolean - ip_list: - description: >- - The client IP addresses matched by the exclusion filter (CIDR - notation is supported). - items: - example: 198.51.100.72 - type: string - type: array - on_match: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterOnMatch' - parameters: - description: >- - A list of parameters matched by the exclusion filter in the HTTP - query string and HTTP request body. Nested parameters can be matched - by joining fields with a dot character. - items: - example: list.search.query - type: string - type: array - path_glob: - description: The HTTP path glob expression matched by the exclusion filter. - example: /accounts/* - type: string - rules_target: - description: The WAF rules targeted by the exclusion filter. - items: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTarget - type: array - scope: - description: The services where the exclusion filter is deployed. - items: - $ref: '#/components/schemas/ApplicationSecurityWafExclusionFilterScope' - type: array - required: - - description - - enabled - type: object - CloudWorkloadSecurityAgentRuleAttributes: - description: A Cloud Workload Security Agent rule returned by the API - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - agentConstraint: - description: The version of the Agent - type: string - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - category: - description: The category of the Agent rule - example: Process Activity - type: string - creationAuthorUuId: - description: The ID of the user who created the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - creationDate: - description: When the Agent rule was created, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - creator: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreatorAttributes' - defaultRule: - description: Whether the rule is included by default - example: false - type: boolean - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on - items: - type: string - type: array - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - name: - description: The name of the Agent rule - example: my_agent_rule - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - updateAuthorUuId: - description: The ID of the user who updated the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - updateDate: - description: Timestamp in milliseconds when the Agent rule was last updated - example: 1624366480320 - format: int64 - type: integer - updatedAt: - description: When the Agent rule was last updated, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - updater: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdaterAttributes' - version: - description: The version of the Agent rule - example: 23 - format: int64 - type: integer - type: object - CloudWorkloadSecurityAgentRuleType: - default: agent_rule - description: The type of the resource, must always be `agent_rule` - enum: - - agent_rule - example: agent_rule - type: string - x-enum-varnames: - - AGENT_RULE - CloudWorkloadSecurityAgentRuleCreateAttributes: - description: Create a new Cloud Workload Security Agent rule. - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - description: - description: The description of the Agent rule. - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule. - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on - items: - type: string - type: array - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - name: - description: The name of the Agent rule. - example: my_agent_rule - type: string - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - required: - - name - - expression - type: object - CloudWorkloadSecurityAgentRuleUpdateAttributes: - description: Update an existing Cloud Workload Security Agent rule - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" - type: string - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - type: object - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3dd-0uc-h1s - type: string - CloudWorkloadSecurityAgentPolicyAttributes: - description: A Cloud Workload Security Agent policy returned by the API - properties: - blockingRulesCount: - description: The number of rules with the blocking feature in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - datadogManaged: - description: Whether the policy is managed by Datadog - example: false - type: boolean - description: - description: The description of the policy - example: My agent policy - type: string - disabledRulesCount: - description: The number of rules that are disabled in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - enabled: - description: Whether the Agent policy is enabled - example: true - type: boolean - hostTags: - description: The host tags defining where this policy is deployed - items: - type: string - type: array - hostTagsLists: - description: >- - The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR - items: - items: - type: string - type: array - type: array - monitoringRulesCount: - description: The number of rules in the monitoring state in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - name: - description: The name of the policy - example: my_agent_policy - type: string - policyVersion: - description: The version of the policy - example: '1' - type: string - priority: - description: The priority of the policy - example: 10 - format: int64 - type: integer - ruleCount: - description: The number of rules in this policy - example: 100 - format: int32 - maximum: 2147483647 - type: integer - updateDate: - description: Timestamp in milliseconds when the policy was last updated - example: 1624366480320 - format: int64 - type: integer - updatedAt: - description: When the policy was last updated, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - updater: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentPolicyUpdaterAttributes - type: object - CloudWorkloadSecurityAgentPolicyType: - default: policy - description: The type of the resource, must always be `policy` - enum: - - policy - example: policy - type: string - x-enum-varnames: - - POLICY - CloudWorkloadSecurityAgentPolicyCreateAttributes: - description: Create a new Cloud Workload Security Agent policy - properties: - description: - description: The description of the policy - example: My agent policy - type: string - enabled: - description: Whether the policy is enabled - example: true - type: boolean - hostTags: - description: The host tags defining where this policy is deployed - items: - type: string - type: array - hostTagsLists: - description: >- - The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR - items: - items: - type: string - type: array - type: array - name: - description: The name of the policy - example: my_agent_policy - type: string - required: - - name - type: object - CloudWorkloadSecurityAgentPolicyUpdateAttributes: - description: Update an existing Cloud Workload Security Agent policy - properties: - description: - description: The description of the policy - example: My agent policy - type: string - enabled: - description: Whether the policy is enabled - example: true - type: boolean - hostTags: - description: The host tags defining where this policy is deployed - items: - type: string - type: array - hostTagsLists: - description: >- - The host tags defining where this policy is deployed, the inner - values are linked with AND, the outer values are linked with OR - items: - items: - type: string - type: array - type: array - name: - description: The name of the policy - example: my_agent_policy - type: string - type: object - CloudWorkloadSecurityAgentPolicyID: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - type: string - ObservabilityPipelineDataAttributes: - description: >- - Defines the pipeline’s name and its components (sources, processors, and - destinations). - properties: - config: - $ref: '#/components/schemas/ObservabilityPipelineConfig' - name: - description: Name of the pipeline. - example: Main Observability Pipeline - type: string - required: - - name - - config - type: object - ValidationErrorMeta: - description: >- - Describes additional metadata for validation errors, including field - names and error messages. - properties: - field: - description: The field name that caused the error. - example: region - type: string - id: - description: The ID of the component in which the error occurred. - example: datadog-agent-source - type: string - message: - description: The detailed error message. - example: Field 'region' is required - type: string - required: - - message - type: object - ApplicationSecurityWafCustomRuleAction: - description: The definition of `ApplicationSecurityWafCustomRuleAction` object. - properties: - action: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleActionAction' - parameters: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleActionParameters - type: object - ApplicationSecurityWafCustomRuleCondition: - description: One condition of the WAF Custom Rule. - properties: - operator: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionOperator - parameters: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionParameters - required: - - operator - - parameters - type: object - ApplicationSecurityWafCustomRuleMetadata: - description: Metadata associated with the WAF Custom Rule. - properties: - added_at: - description: The date and time the WAF custom rule was created. - example: '2021-01-01T00:00:00Z' - format: date-time - type: string - added_by: - description: The handle of the user who created the WAF custom rule. - example: john.doe@datadoghq.com - type: string - added_by_name: - description: The name of the user who created the WAF custom rule. - example: John Doe - type: string - modified_at: - description: The date and time the WAF custom rule was last updated. - example: '2021-01-01T00:00:00Z' - format: date-time - type: string - modified_by: - description: The handle of the user who last updated the WAF custom rule. - example: john.doe@datadoghq.com - type: string - modified_by_name: - description: The name of the user who last updated the WAF custom rule. - example: John Doe - type: string - readOnly: true - type: object - ApplicationSecurityWafCustomRuleScope: - description: The scope of the WAF custom rule. - properties: - env: - description: The environment scope for the WAF custom rule. - example: prod - type: string - service: - description: The service scope for the WAF custom rule. - example: billing-service - type: string - required: - - service - - env - type: object - ApplicationSecurityWafCustomRuleTags: - additionalProperties: - type: string - description: >- - Tags associated with the WAF Custom Rule. The concatenation of category - and type will form the security - - activity field associated with the traces. - maxProperties: 32 - properties: - category: - $ref: '#/components/schemas/ApplicationSecurityWafCustomRuleTagsCategory' - type: - description: >- - The type of the WAF rule, associated with the category will form the - security activity. - example: users.login.success - type: string - required: - - category - - type - type: object - ApplicationSecurityWafExclusionFilterMetadata: - description: Extra information about the exclusion filter. - properties: - added_at: - description: The creation date of the exclusion filter. - format: date-time - type: string - added_by: - description: The handle of the user who created the exclusion filter. - type: string - added_by_name: - description: The name of the user who created the exclusion filter. - type: string - modified_at: - description: The last modification date of the exclusion filter. - format: date-time - type: string - modified_by: - description: The handle of the user who last modified the exclusion filter. - type: string - modified_by_name: - description: The name of the user who last modified the exclusion filter. - type: string - readOnly: true - type: object - ApplicationSecurityWafExclusionFilterOnMatch: - description: >- - The action taken when the exclusion filter matches. When set to - `monitor`, security traces are emitted but the requests are not blocked. - By default, security traces are not emitted and the requests are not - blocked. - enum: - - monitor - type: string - x-enum-varnames: - - MONITOR - ApplicationSecurityWafExclusionFilterRulesTarget: - description: Target WAF rules based either on an identifier or tags. - properties: - rule_id: - description: Target a single WAF rule based on its identifier. - example: dog-913-009 - type: string - tags: - $ref: >- - #/components/schemas/ApplicationSecurityWafExclusionFilterRulesTargetTags - type: object - ApplicationSecurityWafExclusionFilterScope: - description: Deploy on services based on their environment and/or service name. - properties: - env: - description: Deploy on this environment. - example: www - type: string - service: - description: Deploy on this service. - example: prod - type: string - type: object - CloudWorkloadSecurityAgentRuleActions: - description: The array of actions the rule can perform if triggered - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' - nullable: true - type: array - CloudWorkloadSecurityAgentRuleCreatorAttributes: - description: The attributes of the user who created the Agent rule - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - CloudWorkloadSecurityAgentRuleUpdaterAttributes: - description: The attributes of the user who last updated the Agent rule - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - CloudWorkloadSecurityAgentPolicyUpdaterAttributes: - description: The attributes of the user who last updated the policy - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - ObservabilityPipelineConfig: - description: >- - Specifies the pipeline's configuration, including its sources, - processors, and destinations. - properties: - destinations: - description: A list of destination components where processed logs are sent. - example: - - id: datadog-logs-destination - inputs: - - filter-processor - type: datadog_logs - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigDestinationItem' - type: array - processors: - description: A list of processors that transform or enrich log data. - example: - - id: filter-processor - include: service:my-service - inputs: - - datadog-agent-source - type: filter - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigProcessorItem' - type: array - sources: - description: A list of configured data sources for the pipeline. - example: - - id: datadog-agent-source - type: datadog_agent - items: - $ref: '#/components/schemas/ObservabilityPipelineConfigSourceItem' - type: array - required: - - sources - - destinations - type: object - ApplicationSecurityWafCustomRuleActionAction: - default: block_request - description: >- - Override the default action to take when the WAF custom rule would - block. - enum: - - redirect_request - - block_request - example: block_request - type: string - x-enum-varnames: - - REDIRECT_REQUEST - - BLOCK_REQUEST - ApplicationSecurityWafCustomRuleActionParameters: - description: >- - The definition of `ApplicationSecurityWafCustomRuleActionParameters` - object. - properties: - location: - description: The location to redirect to when the WAF custom rule triggers. - example: /blocking - type: string - status_code: - default: 403 - description: The status code to return when the WAF custom rule triggers. - example: 403 - format: int64 - type: integer - type: object - ApplicationSecurityWafCustomRuleConditionOperator: - description: Operator to use for the WAF Condition. - enum: - - match_regex - - '!match_regex' - - phrase_match - - '!phrase_match' - - is_xss - - is_sqli - - exact_match - - '!exact_match' - - ip_match - - '!ip_match' - - capture_data - example: match_regex - type: string - x-enum-varnames: - - MATCH_REGEX - - NOT_MATCH_REGEX - - PHRASE_MATCH - - NOT_PHRASE_MATCH - - IS_XSS - - IS_SQLI - - EXACT_MATCH - - NOT_EXACT_MATCH - - IP_MATCH - - NOT_IP_MATCH - - CAPTURE_DATA - ApplicationSecurityWafCustomRuleConditionParameters: - description: The scope of the WAF custom rule. - properties: - data: - description: >- - Identifier of a list of data from the denylist. Can only be used as - substitution from the list parameter. - example: blocked_users - type: string - inputs: - description: >- - List of inputs on which at least one should match with the given - operator. - items: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionInput - type: array - list: - description: >- - List of value to use with the condition. Only used with the - phrase_match, !phrase_match, exact_match and - - !exact_match operator. - items: - type: string - type: array - options: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionOptions - regex: - description: >- - Regex to use with the condition. Only used with match_regex and - !match_regex operator. - example: path.* - type: string - value: - description: >- - Store the captured value in the specified tag name. Only used with - the capture_data operator. - example: custom_tag - type: string - required: - - inputs - type: object - ApplicationSecurityWafCustomRuleTagsCategory: - description: >- - The category of the WAF Rule, can be either `business_logic`, - `attack_attempt` or `security_response`. - enum: - - attack_attempt - - business_logic - - security_response - example: business_logic - type: string - x-enum-varnames: - - ATTACK_ATTEMPT - - BUSINESS_LOGIC - - SECURITY_RESPONSE - ApplicationSecurityWafExclusionFilterRulesTargetTags: - additionalProperties: - type: string - description: Target multiple WAF rules based on their tags. - properties: - category: - description: The category of the targeted WAF rules. - example: attack_attempt - type: string - type: - description: The type of the targeted WAF rules. - example: lfi - type: string - type: object - CloudWorkloadSecurityAgentRuleAction: - description: The action the rule can perform if triggered - properties: - filter: - description: SECL expression used to target the container to apply the action on - type: string - hash: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionHash' - kill: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleKill' - metadata: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionMetadata' - set: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSet' - type: object - ObservabilityPipelineConfigDestinationItem: - description: A destination for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestination' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3Destination' - - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestination - - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestination' - - $ref: '#/components/schemas/ObservabilityPipelineElasticsearchDestination' - - $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestination' - - $ref: '#/components/schemas/AzureStorageDestination' - - $ref: '#/components/schemas/MicrosoftSentinelDestination' - - $ref: '#/components/schemas/ObservabilityPipelineGoogleChronicleDestination' - - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestination' - - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestination' - - $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestination' - - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestination - - $ref: '#/components/schemas/ObservabilityPipelineSocketDestination' - - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestination - - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestination - ObservabilityPipelineConfigProcessorItem: - description: A processor for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineFilterProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineGenerateMetricsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineSampleProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessor' - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessor - - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessor' - - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessor' - ObservabilityPipelineConfigSourceItem: - description: A data source for the pipeline. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineKafkaSource' - - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSource' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSource' - - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSource' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3Source' - - $ref: '#/components/schemas/ObservabilityPipelineFluentdSource' - - $ref: '#/components/schemas/ObservabilityPipelineFluentBitSource' - - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSource' - - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSource' - - $ref: '#/components/schemas/ObservabilityPipelineRsyslogSource' - - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSource' - - $ref: '#/components/schemas/ObservabilityPipelineAmazonDataFirehoseSource' - - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSource' - - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSource' - - $ref: '#/components/schemas/ObservabilityPipelineLogstashSource' - - $ref: '#/components/schemas/ObservabilityPipelineSocketSource' - ApplicationSecurityWafCustomRuleConditionInput: - description: Input from the request on which the condition should apply. - properties: - address: - $ref: >- - #/components/schemas/ApplicationSecurityWafCustomRuleConditionInputAddress - key_path: - description: Specific path for the input. - items: - type: string - type: array - required: - - address - type: object - ApplicationSecurityWafCustomRuleConditionOptions: - description: Options for the operator of this condition. - properties: - case_sensitive: - default: false - description: Evaluate the value as case sensitive. - type: boolean - min_length: - default: 0 - description: >- - Only evaluate this condition if the value has a minimum amount of - characters. - format: int64 - type: integer - type: object - CloudWorkloadSecurityAgentRuleActionHash: - additionalProperties: {} - description: An empty object indicating the hash action - type: object - CloudWorkloadSecurityAgentRuleKill: - description: Kill system call applied on the container matching the rule - properties: - signal: - description: Supported signals for the kill system call - type: string - type: object - CloudWorkloadSecurityAgentRuleActionMetadata: - description: The metadata action applied on the scope matching the rule - properties: - image_tag: - description: The image tag of the metadata action - type: string - service: - description: The service of the metadata action - type: string - short_image: - description: The short image of the metadata action - type: string - type: object - CloudWorkloadSecurityAgentRuleActionSet: - description: The set action applied on the scope matching the rule - properties: - append: - description: Whether the value should be appended to the field - type: boolean - field: - description: The field of the set action - type: string - name: - description: The name of the set action - type: string - scope: - description: The scope of the set action - type: string - size: - description: The size of the set action - format: int64 - type: integer - ttl: - description: The time to live of the set action - format: int64 - type: integer - value: - description: The value of the set action - type: string - type: object - ObservabilityPipelineDatadogLogsDestination: - description: The `datadog_logs` destination forwards logs to Datadog Log Management. - properties: - id: - description: The unique identifier for this component. - example: datadog-logs-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogLogsDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineAmazonS3Destination: - description: >- - The `amazon_s3` destination sends your logs in Datadog-rehydratable - format to an Amazon S3 bucket for archiving. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - bucket: - description: S3 bucket name. - example: error-logs - type: string - id: - description: Unique identifier for the destination component. - example: amazon-s3-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - key_prefix: - description: Optional prefix for object keys. - type: string - region: - description: AWS region of the S3 bucket. - example: us-east-1 - type: string - storage_class: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonS3DestinationStorageClass - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3DestinationType' - required: - - id - - type - - inputs - - bucket - - region - - storage_class - type: object - ObservabilityPipelineGoogleCloudStorageDestination: - description: > - The `google_cloud_storage` destination stores logs in a Google Cloud - Storage (GCS) bucket. - - It requires a bucket name, GCP authentication, and metadata fields. - properties: - acl: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationAcl - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - bucket: - description: Name of the GCS bucket. - example: error-logs - type: string - id: - description: Unique identifier for the destination component. - example: gcs-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - key_prefix: - description: Optional prefix for object keys within the GCS bucket. - type: string - metadata: - description: Custom metadata to attach to each object uploaded to the GCS bucket. - items: - $ref: '#/components/schemas/ObservabilityPipelineMetadataEntry' - type: array - storage_class: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationStorageClass - type: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleCloudStorageDestinationType - required: - - id - - type - - inputs - - bucket - - auth - - storage_class - - acl - type: object - ObservabilityPipelineSplunkHecDestination: - description: > - The `splunk_hec` destination forwards logs to Splunk using the HTTP - Event Collector (HEC). - properties: - auto_extract_timestamp: - description: > - If `true`, Splunk tries to extract timestamps from incoming log - events. - - If `false`, Splunk assigns the time the event was received. - example: true - type: boolean - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineSplunkHecDestinationEncoding - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: splunk-hec-destination - type: string - index: - description: Optional name of the Splunk index where logs are written. - example: main - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - sourcetype: - description: The Splunk sourcetype to assign to log events. - example: custom_sourcetype - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineSumoLogicDestination: - description: The `sumo_logic` destination forwards logs to Sumo Logic. - properties: - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineSumoLogicDestinationEncoding - header_custom_fields: - description: A list of custom headers to include in the request to Sumo Logic. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem - type: array - header_host_name: - description: Optional override for the host name header. - example: host-123 - type: string - header_source_category: - description: Optional override for the source category header. - example: source-category - type: string - header_source_name: - description: Optional override for the source name header. - example: source-name - type: string - id: - description: The unique identifier for this component. - example: sumo-logic-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineElasticsearchDestination: - description: The `elasticsearch` destination writes logs to an Elasticsearch cluster. - properties: - api_version: - $ref: >- - #/components/schemas/ObservabilityPipelineElasticsearchDestinationApiVersion - bulk_index: - description: The index to write logs to in Elasticsearch. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: elasticsearch-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineElasticsearchDestinationType - required: - - id - - type - - inputs - type: object - ObservabilityPipelineRsyslogDestination: - description: >- - The `rsyslog` destination forwards logs to an external `rsyslog` server - over TCP or UDP using the syslog protocol. - properties: - id: - description: The unique identifier for this component. - example: rsyslog-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - keepalive: - description: Optional socket keepalive duration in milliseconds. - example: 60000 - format: int64 - minimum: 0 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineRsyslogDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineSyslogNgDestination: - description: >- - The `syslog_ng` destination forwards logs to an external `syslog-ng` - server over TCP or UDP using the syslog protocol. - properties: - id: - description: The unique identifier for this component. - example: syslog-ng-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - keepalive: - description: Optional socket keepalive duration in milliseconds. - example: 60000 - format: int64 - minimum: 0 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgDestinationType' - required: - - id - - type - - inputs - type: object - AzureStorageDestination: - description: >- - The `azure_storage` destination forwards logs to an Azure Blob Storage - container. - properties: - blob_prefix: - description: Optional prefix for blobs written to the container. - example: logs/ - type: string - container_name: - description: The name of the Azure Blob Storage container to store logs in. - example: my-log-container - type: string - id: - description: The unique identifier for this component. - example: azure-storage-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - processor-id - items: - type: string - type: array - type: - $ref: '#/components/schemas/AzureStorageDestinationType' - required: - - id - - type - - inputs - - container_name - type: object - MicrosoftSentinelDestination: - description: >- - The `microsoft_sentinel` destination forwards logs to Microsoft - Sentinel. - properties: - client_id: - description: Azure AD client ID used for authentication. - example: a1b2c3d4-5678-90ab-cdef-1234567890ab - type: string - dcr_immutable_id: - description: The immutable ID of the Data Collection Rule (DCR). - example: dcr-uuid-1234 - type: string - id: - description: The unique identifier for this component. - example: sentinel-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - table: - description: The name of the Log Analytics table where logs are sent. - example: CustomLogsTable - type: string - tenant_id: - description: Azure AD tenant ID. - example: abcdef12-3456-7890-abcd-ef1234567890 - type: string - type: - $ref: '#/components/schemas/MicrosoftSentinelDestinationType' - required: - - id - - type - - inputs - - client_id - - tenant_id - - dcr_immutable_id - - table - type: object - ObservabilityPipelineGoogleChronicleDestination: - description: The `google_chronicle` destination sends logs to Google Chronicle. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - customer_id: - description: The Google Chronicle customer ID. - example: abcdefg123456789 - type: string - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleChronicleDestinationEncoding - id: - description: The unique identifier for this component. - example: google-chronicle-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - parse-json-processor - items: - type: string - type: array - log_type: - description: The log type metadata associated with the Chronicle destination. - example: nginx_logs - type: string - type: - $ref: >- - #/components/schemas/ObservabilityPipelineGoogleChronicleDestinationType - required: - - id - - type - - inputs - - auth - - customer_id - type: object - ObservabilityPipelineNewRelicDestination: - description: The `new_relic` destination sends logs to the New Relic platform. - properties: - id: - description: The unique identifier for this component. - example: new-relic-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - parse-json-processor - items: - type: string - type: array - region: - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationRegion' - type: - $ref: '#/components/schemas/ObservabilityPipelineNewRelicDestinationType' - required: - - id - - type - - inputs - - region - type: object - ObservabilityPipelineSentinelOneDestination: - description: The `sentinel_one` destination sends logs to SentinelOne. - properties: - id: - description: The unique identifier for this component. - example: sentinelone-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - region: - $ref: >- - #/components/schemas/ObservabilityPipelineSentinelOneDestinationRegion - type: - $ref: '#/components/schemas/ObservabilityPipelineSentinelOneDestinationType' - required: - - id - - type - - inputs - - region - type: object - ObservabilityPipelineOpenSearchDestination: - description: The `opensearch` destination writes logs to an OpenSearch cluster. - properties: - bulk_index: - description: The index to write logs to. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: opensearch-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineOpenSearchDestinationType' - required: - - id - - type - - inputs - type: object - ObservabilityPipelineAmazonOpenSearchDestination: - description: The `amazon_opensearch` destination writes logs to Amazon OpenSearch. - properties: - auth: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuth - bulk_index: - description: The index to write logs to. - example: logs-index - type: string - id: - description: The unique identifier for this component. - example: elasticsearch-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationType - required: - - id - - type - - inputs - - auth - type: object - ObservabilityPipelineSocketDestination: - description: | - The `socket` destination sends logs over TCP or UDP to a remote server. - properties: - encoding: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationEncoding' - framing: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationFraming' - id: - description: The unique identifier for this component. - example: socket-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - description: TLS configuration. Relevant only when `mode` is `tcp`. - type: - $ref: '#/components/schemas/ObservabilityPipelineSocketDestinationType' - required: - - id - - type - - inputs - - encoding - - framing - - mode - type: object - ObservabilityPipelineAmazonSecurityLakeDestination: - description: > - The `amazon_security_lake` destination sends your logs to Amazon - Security Lake. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - bucket: - description: Name of the Amazon S3 bucket in Security Lake (3-63 characters). - example: security-lake-bucket - type: string - custom_source_name: - description: Custom source name for the logs in Security Lake. - example: my-custom-source - type: string - id: - description: Unique identifier for the destination component. - example: amazon-security-lake-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - region: - description: AWS region of the S3 bucket. - example: us-east-1 - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonSecurityLakeDestinationType - required: - - id - - type - - inputs - - bucket - - region - - custom_source_name - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestination: - description: >- - The `crowdstrike_next_gen_siem` destination forwards logs to CrowdStrike - Next Gen SIEM. - properties: - compression: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding - id: - description: The unique identifier for this component. - example: crowdstrike-ngsiem-destination - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - filter-processor - items: - type: string - type: array - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType - required: - - id - - type - - inputs - - encoding - type: object - ObservabilityPipelineFilterProcessor: - description: >- - The `filter` processor allows conditional processing of logs based on a - Datadog search query. Logs that match the `include` query are passed - through; others are discarded. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: filter-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs should pass - through the filter. Logs that match this query continue to - downstream components; others are dropped. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineFilterProcessorType' - required: - - id - - type - - include - - inputs - type: object - ObservabilityPipelineParseJSONProcessor: - description: >- - The `parse_json` processor extracts JSON from a specified field and - flattens it into the event. This is useful when logs contain embedded - JSON as a string. - properties: - field: - description: The name of the log field that contains a JSON string. - example: message - type: string - id: - description: >- - A unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: parse-json-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineParseJSONProcessorType' - required: - - id - - type - - include - - field - - inputs - type: object - ObservabilityPipelineQuotaProcessor: - description: >- - The Quota Processor measures logging traffic for logs that match a - specified filter. When the configured daily quota is met, the processor - can drop or alert. - properties: - drop_events: - description: >- - If set to `true`, logs that matched the quota filter and sent after - the quota has been met are dropped; only logs that did not match the - filter query continue through the pipeline. - example: false - type: boolean - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: quota-processor - type: string - ignore_when_missing_partitions: - description: >- - If `true`, the processor skips quota checks when partition fields - are missing from the logs. - type: boolean - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - limit: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' - name: - description: Name of the quota. - example: MyQuota - type: string - overflow_action: - $ref: >- - #/components/schemas/ObservabilityPipelineQuotaProcessorOverflowAction - overrides: - description: >- - A list of alternate quota rules that apply to specific sets of - events, identified by matching field values. Each override can - define a custom limit. - items: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorOverride' - type: array - partition_fields: - description: >- - A list of fields used to segment log traffic for quota enforcement. - Quotas are tracked independently by unique combinations of these - field values. - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorType' - required: - - id - - type - - include - - name - - drop_events - - limit - - inputs - type: object - ObservabilityPipelineAddFieldsProcessor: - description: The `add_fields` processor adds static key-value fields to logs. - properties: - fields: - description: >- - A list of static fields (key-value pairs) that is added to each log - event processed by this component. - items: - $ref: '#/components/schemas/ObservabilityPipelineFieldValue' - type: array - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: add-fields-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAddFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineRemoveFieldsProcessor: - description: The `remove_fields` processor deletes specified fields from logs. - properties: - fields: - description: A list of field names to be removed from each log event. - example: - - field1 - - field2 - items: - type: string - type: array - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: remove-fields-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: The `PipelineRemoveFieldsProcessor` `inputs`. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineRemoveFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineRenameFieldsProcessor: - description: The `rename_fields` processor changes field names. - properties: - fields: - description: >- - A list of rename rules specifying which fields to rename in the - event, what to rename them to, and whether to preserve the original - fields. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineRenameFieldsProcessorField - type: array - id: - description: >- - A unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: rename-fields-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineRenameFieldsProcessorType' - required: - - id - - type - - include - - fields - - inputs - type: object - ObservabilityPipelineGenerateMetricsProcessor: - description: > - The `generate_datadog_metrics` processor creates custom metrics from - logs and sends them to Datadog. - - Metrics can be counters, gauges, or distributions and optionally grouped - by log fields. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline. - example: generate-metrics-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - processor. - example: - - source-id - items: - type: string - type: array - metrics: - description: Configuration for generating individual metrics. - items: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetric' - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineGenerateMetricsProcessorType - required: - - id - - type - - inputs - - include - - metrics - type: object - ObservabilityPipelineSampleProcessor: - description: >- - The `sample` processor allows probabilistic sampling of logs at a fixed - rate. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: sample-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - percentage: - description: The percentage of logs to sample. - example: 10 - format: double - type: number - rate: - description: Number of events to sample (1 in N). - example: 10 - format: int64 - minimum: 1 - type: integer - type: - $ref: '#/components/schemas/ObservabilityPipelineSampleProcessorType' - required: - - id - - type - - include - - inputs - type: object - ObservabilityPipelineParseGrokProcessor: - description: >- - The `parse_grok` processor extracts structured fields from unstructured - log messages using Grok patterns. - properties: - disable_library_rules: - default: false - description: >- - If set to `true`, disables the default Grok rules provided by - Datadog. - example: true - type: boolean - id: - description: A unique identifier for this processor. - example: parse-grok-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - rules: - description: >- - The list of Grok parsing rules. If multiple matching rules are - provided, they are evaluated in order. The first successful match is - applied. - items: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorRule' - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineParseGrokProcessorType' - required: - - id - - type - - include - - inputs - - rules - type: object - ObservabilityPipelineSensitiveDataScannerProcessor: - description: >- - The `sensitive_data_scanner` processor detects and optionally redacts - sensitive data in log events. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: sensitive-scanner - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: source:prod - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - parse-json-processor - items: - type: string - type: array - rules: - description: >- - A list of rules for identifying and acting on sensitive data - patterns. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorRule - type: array - type: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorType - required: - - id - - type - - include - - inputs - - rules - type: object - ObservabilityPipelineOcsfMapperProcessor: - description: >- - The `ocsf_mapper` processor transforms logs into the OCSF schema using a - predefined mapping configuration. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline. - example: ocsf-mapper-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - processor. - example: - - filter-processor - items: - type: string - type: array - mappings: - description: A list of mapping rules to convert events to the OCSF format. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineOcsfMapperProcessorMapping - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineOcsfMapperProcessorType' - required: - - id - - type - - include - - inputs - - mappings - type: object - ObservabilityPipelineAddEnvVarsProcessor: - description: >- - The `add_env_vars` processor adds environment variable values to log - events. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - processor in the pipeline. - example: add-env-vars-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - datadog-agent-source - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineAddEnvVarsProcessorType' - variables: - description: A list of environment variable mappings to apply to log fields. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineAddEnvVarsProcessorVariable - type: array - required: - - id - - type - - include - - inputs - - variables - type: object - ObservabilityPipelineDedupeProcessor: - description: The `dedupe` processor removes duplicate fields in log events. - properties: - fields: - description: A list of log field paths to check for duplicates. - example: - - log.message - - log.error - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: dedupe-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - parse-json-processor - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorMode' - type: - $ref: '#/components/schemas/ObservabilityPipelineDedupeProcessorType' - required: - - id - - type - - include - - inputs - - fields - - mode - type: object - ObservabilityPipelineEnrichmentTableProcessor: - description: >- - The `enrichment_table` processor enriches logs using a static CSV file - or GeoIP database. - properties: - file: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableFile' - geoip: - $ref: '#/components/schemas/ObservabilityPipelineEnrichmentTableGeoIp' - id: - description: The unique identifier for this processor. - example: enrichment-table-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: source:my-source - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - add-fields-processor - items: - type: string - type: array - target: - description: Path where enrichment results should be stored in the log. - example: enriched.geoip - type: string - type: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableProcessorType - required: - - id - - type - - include - - inputs - - target - type: object - ObservabilityPipelineReduceProcessor: - description: >- - The `reduce` processor aggregates and merges logs based on matching keys - and merge strategies. - properties: - group_by: - description: A list of fields used to group log events for merging. - example: - - log.user.id - - log.device.id - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: reduce-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: env:prod - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - parse-json-processor - items: - type: string - type: array - merge_strategies: - description: >- - List of merge strategies defining how values from grouped events - should be combined. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategy - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineReduceProcessorType' - required: - - id - - type - - include - - inputs - - group_by - - merge_strategies - type: object - ObservabilityPipelineThrottleProcessor: - description: >- - The `throttle` processor limits the number of events that pass through - over a given time window. - properties: - group_by: - description: >- - Optional list of fields used to group events before the threshold - has been reached. - example: - - log.user.id - items: - type: string - type: array - id: - description: The unique identifier for this processor. - example: throttle-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: env:prod - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - datadog-agent-source - items: - type: string - type: array - threshold: - description: >- - the number of events allowed in a given time window. Events sent - after the threshold has been reached, are dropped. - example: 1000 - format: int64 - type: integer - type: - $ref: '#/components/schemas/ObservabilityPipelineThrottleProcessorType' - window: - description: The time window in seconds over which the threshold applies. - example: 60 - format: double - type: number - required: - - id - - type - - include - - inputs - - threshold - - window - type: object - ObservabilityPipelineCustomProcessor: - description: >- - The `custom_processor` processor transforms events using [Vector Remap - Language (VRL)](https://vector.dev/docs/reference/vrl/) scripts with - advanced filtering capabilities. - properties: - id: - description: The unique identifier for this processor. - example: remap-vrl-processor - type: string - include: - default: '*' - description: >- - A Datadog search query used to determine which logs this processor - targets. This field should always be set to `*` for the - custom_processor processor. - example: '*' - type: string - inputs: - description: >- - A list of component IDs whose output is used as the input for this - processor. - example: - - datadog-agent-source - items: - type: string - type: array - remaps: - description: Array of VRL remap rules. - items: - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorRemap' - minItems: 1 - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineCustomProcessorType' - required: - - id - - type - - include - - remaps - - inputs - type: object - ObservabilityPipelineDatadogTagsProcessor: - description: >- - The `datadog_tags` processor includes or excludes specific Datadog tags - in your logs. - properties: - action: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorAction' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: datadog-tags-processor - type: string - include: - description: >- - A Datadog search query used to determine which logs this processor - targets. - example: service:my-service - type: string - inputs: - description: >- - A list of component IDs whose output is used as the `input` for this - component. - example: - - datadog-agent-source - items: - type: string - type: array - keys: - description: A list of tag keys. - example: - - env - - service - - version - items: - type: string - type: array - mode: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorMode' - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogTagsProcessorType' - required: - - id - - type - - include - - mode - - action - - keys - - inputs - type: object - ObservabilityPipelineKafkaSource: - description: The `kafka` source ingests data from Apache Kafka topics. - properties: - group_id: - description: Consumer group ID used by the Kafka client. - example: consumer-group-0 - type: string - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: kafka-source - type: string - librdkafka_options: - description: >- - Optional list of advanced Kafka client configuration options, - defined as key-value pairs. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineKafkaSourceLibrdkafkaOption - type: array - sasl: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceSasl' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - topics: - description: >- - A list of Kafka topic names to subscribe to. The source ingests - messages from each topic specified. - example: - - topic1 - - topic2 - items: - type: string - type: array - type: - $ref: '#/components/schemas/ObservabilityPipelineKafkaSourceType' - required: - - id - - type - - group_id - - topics - type: object - ObservabilityPipelineDatadogAgentSource: - description: The `datadog_agent` source collects logs from the Datadog Agent. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: datadog-agent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineDatadogAgentSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSplunkTcpSource: - description: > - The `splunk_tcp` source receives logs from a Splunk Universal Forwarder - over TCP. - - TLS is supported for secure transmission. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: splunk-tcp-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkTcpSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSplunkHecSource: - description: > - The `splunk_hec` source implements the Splunk HTTP Event Collector (HEC) - API. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: splunk-hec-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSplunkHecSourceType' - required: - - id - - type - type: object - ObservabilityPipelineAmazonS3Source: - description: | - The `amazon_s3` source ingests logs from an Amazon S3 bucket. - It supports AWS authentication and TLS encryption. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: aws-s3-source - type: string - region: - description: AWS region where the S3 bucket resides. - example: us-east-1 - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineAmazonS3SourceType' - required: - - id - - type - - region - type: object - ObservabilityPipelineFluentdSource: - description: The `fluentd` source ingests logs from a Fluentd-compatible service. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: fluent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineFluentdSourceType' - required: - - id - - type - type: object - ObservabilityPipelineFluentBitSource: - description: The `fluent_bit` source ingests logs from Fluent Bit. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (for example, as the - `input` to downstream components). - example: fluent-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineFluentBitSourceType' - required: - - id - - type - type: object - ObservabilityPipelineHttpServerSource: - description: >- - The `http_server` source collects logs over HTTP POST from external - services. - properties: - auth_strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineHttpServerSourceAuthStrategy - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: Unique ID for the HTTP server source. - example: http-server-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineHttpServerSourceType' - required: - - id - - type - - auth_strategy - - decoding - type: object - ObservabilityPipelineSumoLogicSource: - description: The `sumo_logic` source receives logs from Sumo Logic collectors. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: sumo-logic-source - type: string - type: - $ref: '#/components/schemas/ObservabilityPipelineSumoLogicSourceType' - required: - - id - - type - type: object - ObservabilityPipelineRsyslogSource: - description: >- - The `rsyslog` source listens for logs over TCP or UDP from an `rsyslog` - server using the syslog protocol. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: rsyslog-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineRsyslogSourceType' - required: - - id - - type - - mode - type: object - ObservabilityPipelineSyslogNgSource: - description: >- - The `syslog_ng` source listens for logs over TCP or UDP from a - `syslog-ng` server using the syslog protocol. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: syslog-ng-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSyslogSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineSyslogNgSourceType' - required: - - id - - type - - mode - type: object - ObservabilityPipelineAmazonDataFirehoseSource: - description: The `amazon_data_firehose` source ingests logs from AWS Data Firehose. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineAwsAuth' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: amazon-firehose-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonDataFirehoseSourceType - required: - - id - - type - type: object - ObservabilityPipelineGooglePubSubSource: - description: >- - The `google_pubsub` source ingests logs from a Google Cloud Pub/Sub - subscription. - properties: - auth: - $ref: '#/components/schemas/ObservabilityPipelineGcpAuth' - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: google-pubsub-source - type: string - project: - description: The GCP project ID that owns the Pub/Sub subscription. - example: my-gcp-project - type: string - subscription: - description: The Pub/Sub subscription name from which messages are consumed. - example: logs-subscription - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineGooglePubSubSourceType' - required: - - id - - type - - auth - - decoding - - project - - subscription - type: object - ObservabilityPipelineHttpClientSource: - description: >- - The `http_client` source scrapes logs from HTTP endpoints at regular - intervals. - properties: - auth_strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineHttpClientSourceAuthStrategy - decoding: - $ref: '#/components/schemas/ObservabilityPipelineDecoding' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: http-client-source - type: string - scrape_interval_secs: - description: The interval (in seconds) between HTTP scrape requests. - example: 60 - format: int64 - type: integer - scrape_timeout_secs: - description: The timeout (in seconds) for each scrape request. - example: 10 - format: int64 - type: integer - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineHttpClientSourceType' - required: - - id - - type - - decoding - type: object - ObservabilityPipelineLogstashSource: - description: The `logstash` source ingests logs from a Logstash forwarder. - properties: - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: logstash-source - type: string - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - type: - $ref: '#/components/schemas/ObservabilityPipelineLogstashSourceType' - required: - - id - - type - type: object - ObservabilityPipelineSocketSource: - description: | - The `socket` source ingests logs over TCP or UDP. - properties: - framing: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFraming' - id: - description: >- - The unique identifier for this component. Used to reference this - component in other parts of the pipeline (e.g., as input to - downstream components). - example: socket-source - type: string - mode: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceMode' - tls: - $ref: '#/components/schemas/ObservabilityPipelineTls' - description: TLS configuration. Relevant only when `mode` is `tcp`. - type: - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceType' - required: - - id - - type - - mode - - framing - type: object - ApplicationSecurityWafCustomRuleConditionInputAddress: - description: Input from the request on which the condition should apply. - enum: - - server.db.statement - - server.io.fs.file - - server.io.net.url - - server.sys.shell.cmd - - server.request.method - - server.request.uri.raw - - server.request.path_params - - server.request.query - - server.request.headers.no_cookies - - server.request.cookies - - server.request.trailers - - server.request.body - - server.response.status - - server.response.headers.no_cookies - - server.response.trailers - - grpc.server.request.metadata - - grpc.server.request.message - - grpc.server.method - - graphql.server.all_resolvers - - usr.id - - http.client_ip - example: server.db.statement - type: string - x-enum-varnames: - - SERVER_DB_STATEMENT - - SERVER_IO_FS_FILE - - SERVER_IO_NET_URL - - SERVER_SYS_SHELL_CMD - - SERVER_REQUEST_METHOD - - SERVER_REQUEST_URI_RAW - - SERVER_REQUEST_PATH_PARAMS - - SERVER_REQUEST_QUERY - - SERVER_REQUEST_HEADERS_NO_COOKIES - - SERVER_REQUEST_COOKIES - - SERVER_REQUEST_TRAILERS - - SERVER_REQUEST_BODY - - SERVER_RESPONSE_STATUS - - SERVER_RESPONSE_HEADERS_NO_COOKIES - - SERVER_RESPONSE_TRAILERS - - GRPC_SERVER_REQUEST_METADATA - - GRPC_SERVER_REQUEST_MESSAGE - - GRPC_SERVER_METHOD - - GRAPHQL_SERVER_ALL_RESOLVERS - - USR_ID - - HTTP_CLIENT_IP - ObservabilityPipelineDatadogLogsDestinationType: - default: datadog_logs - description: The destination type. The value should always be `datadog_logs`. - enum: - - datadog_logs - example: datadog_logs - type: string - x-enum-varnames: - - DATADOG_LOGS - ObservabilityPipelineAwsAuth: - description: > - AWS authentication credentials used for accessing AWS services such as - S3. - - If omitted, the system’s default credentials are used (for example, the - IAM role and environment variables). - properties: - assume_role: - description: The Amazon Resource Name (ARN) of the role to assume. - type: string - external_id: - description: A unique identifier for cross-account role assumption. - type: string - session_name: - description: >- - A session identifier used for logging and tracing the assumed role - session. - type: string - type: object - ObservabilityPipelineAmazonS3DestinationStorageClass: - description: S3 storage class. - enum: - - STANDARD - - REDUCED_REDUNDANCY - - INTELLIGENT_TIERING - - STANDARD_IA - - EXPRESS_ONEZONE - - ONEZONE_IA - - GLACIER - - GLACIER_IR - - DEEP_ARCHIVE - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - REDUCED_REDUNDANCY - - INTELLIGENT_TIERING - - STANDARD_IA - - EXPRESS_ONEZONE - - ONEZONE_IA - - GLACIER - - GLACIER_IR - - DEEP_ARCHIVE - ObservabilityPipelineTls: - description: >- - Configuration for enabling TLS encryption between the pipeline component - and external services. - properties: - ca_file: - description: >- - Path to the Certificate Authority (CA) file used to validate the - server’s TLS certificate. - type: string - crt_file: - description: >- - Path to the TLS client certificate file used to authenticate the - pipeline component with upstream or downstream services. - example: /path/to/cert.crt - type: string - key_file: - description: >- - Path to the private key file associated with the TLS client - certificate. Used for mutual TLS authentication. - type: string - required: - - crt_file - type: object - ObservabilityPipelineAmazonS3DestinationType: - default: amazon_s3 - description: The destination type. Always `amazon_s3`. - enum: - - amazon_s3 - example: amazon_s3 - type: string - x-enum-varnames: - - AMAZON_S3 - ObservabilityPipelineGoogleCloudStorageDestinationAcl: - description: Access control list setting for objects written to the bucket. - enum: - - private - - project-private - - public-read - - authenticated-read - - bucket-owner-read - - bucket-owner-full-control - example: private - type: string - x-enum-varnames: - - PRIVATE - - PROJECTNOT_PRIVATE - - PUBLICNOT_READ - - AUTHENTICATEDNOT_READ - - BUCKETNOT_OWNERNOT_READ - - BUCKETNOT_OWNERNOT_FULLNOT_CONTROL - ObservabilityPipelineGcpAuth: - description: | - GCP credentials used to authenticate with Google Cloud Storage. - properties: - credentials_file: - description: Path to the GCP service account key file. - example: /var/secrets/gcp-credentials.json - type: string - required: - - credentials_file - type: object - ObservabilityPipelineMetadataEntry: - description: A custom metadata entry. - properties: - name: - description: The metadata key. - example: environment - type: string - value: - description: The metadata value. - example: production - type: string - required: - - name - - value - type: object - ObservabilityPipelineGoogleCloudStorageDestinationStorageClass: - description: Storage class used for objects stored in GCS. - enum: - - STANDARD - - NEARLINE - - COLDLINE - - ARCHIVE - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - - NEARLINE - - COLDLINE - - ARCHIVE - ObservabilityPipelineGoogleCloudStorageDestinationType: - default: google_cloud_storage - description: The destination type. Always `google_cloud_storage`. - enum: - - google_cloud_storage - example: google_cloud_storage - type: string - x-enum-varnames: - - GOOGLE_CLOUD_STORAGE - ObservabilityPipelineSplunkHecDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineSplunkHecDestinationType: - default: splunk_hec - description: The destination type. Always `splunk_hec`. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - ObservabilityPipelineSumoLogicDestinationEncoding: - description: The output encoding format. - enum: - - json - - raw_message - - logfmt - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - - LOGFMT - ObservabilityPipelineSumoLogicDestinationHeaderCustomFieldsItem: - description: Single key-value pair used as a custom log header for Sumo Logic. - properties: - name: - description: The header field name. - example: X-Sumo-Category - type: string - value: - description: The header field value. - example: my-app-logs - type: string - required: - - name - - value - type: object - ObservabilityPipelineSumoLogicDestinationType: - default: sumo_logic - description: The destination type. The value should always be `sumo_logic`. - enum: - - sumo_logic - example: sumo_logic - type: string - x-enum-varnames: - - SUMO_LOGIC - ObservabilityPipelineElasticsearchDestinationApiVersion: - description: The Elasticsearch API version to use. Set to `auto` to auto-detect. - enum: - - auto - - v6 - - v7 - - v8 - example: auto - type: string - x-enum-varnames: - - AUTO - - V6 - - V7 - - V8 - ObservabilityPipelineElasticsearchDestinationType: - default: elasticsearch - description: The destination type. The value should always be `elasticsearch`. - enum: - - elasticsearch - example: elasticsearch - type: string - x-enum-varnames: - - ELASTICSEARCH - ObservabilityPipelineRsyslogDestinationType: - default: rsyslog - description: The destination type. The value should always be `rsyslog`. - enum: - - rsyslog - example: rsyslog - type: string - x-enum-varnames: - - RSYSLOG - ObservabilityPipelineSyslogNgDestinationType: - default: syslog_ng - description: The destination type. The value should always be `syslog_ng`. - enum: - - syslog_ng - example: syslog_ng - type: string - x-enum-varnames: - - SYSLOG_NG - AzureStorageDestinationType: - default: azure_storage - description: The destination type. The value should always be `azure_storage`. - enum: - - azure_storage - example: azure_storage - type: string - x-enum-varnames: - - AZURE_STORAGE - MicrosoftSentinelDestinationType: - default: microsoft_sentinel - description: The destination type. The value should always be `microsoft_sentinel`. - enum: - - microsoft_sentinel - example: microsoft_sentinel - type: string - x-enum-varnames: - - MICROSOFT_SENTINEL - ObservabilityPipelineGoogleChronicleDestinationEncoding: - description: The encoding format for the logs sent to Chronicle. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineGoogleChronicleDestinationType: - default: google_chronicle - description: The destination type. The value should always be `google_chronicle`. - enum: - - google_chronicle - example: google_chronicle - type: string - x-enum-varnames: - - GOOGLE_CHRONICLE - ObservabilityPipelineNewRelicDestinationRegion: - description: The New Relic region. - enum: - - us - - eu - example: us - type: string - x-enum-varnames: - - US - - EU - ObservabilityPipelineNewRelicDestinationType: - default: new_relic - description: The destination type. The value should always be `new_relic`. - enum: - - new_relic - example: new_relic - type: string - x-enum-varnames: - - NEW_RELIC - ObservabilityPipelineSentinelOneDestinationRegion: - description: The SentinelOne region to send logs to. - enum: - - us - - eu - - ca - - data_set_us - example: us - type: string - x-enum-varnames: - - US - - EU - - CA - - DATA_SET_US - ObservabilityPipelineSentinelOneDestinationType: - default: sentinel_one - description: The destination type. The value should always be `sentinel_one`. - enum: - - sentinel_one - example: sentinel_one - type: string - x-enum-varnames: - - SENTINEL_ONE - ObservabilityPipelineOpenSearchDestinationType: - default: opensearch - description: The destination type. The value should always be `opensearch`. - enum: - - opensearch - example: opensearch - type: string - x-enum-varnames: - - OPENSEARCH - ObservabilityPipelineAmazonOpenSearchDestinationAuth: - description: > - Authentication settings for the Amazon OpenSearch destination. - - The `strategy` field determines whether basic or AWS-based - authentication is used. - properties: - assume_role: - description: The ARN of the role to assume (used with `aws` strategy). - type: string - aws_region: - description: AWS region - type: string - external_id: - description: External ID for the assumed role (used with `aws` strategy). - type: string - session_name: - description: Session name for the assumed role (used with `aws` strategy). - type: string - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy - required: - - strategy - type: object - ObservabilityPipelineAmazonOpenSearchDestinationType: - default: amazon_opensearch - description: The destination type. The value should always be `amazon_opensearch`. - enum: - - amazon_opensearch - example: amazon_opensearch - type: string - x-enum-varnames: - - AMAZON_OPENSEARCH - ObservabilityPipelineSocketDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineSocketDestinationFraming: - description: Framing method configuration. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimited - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingBytes - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimited - ObservabilityPipelineSocketDestinationMode: - description: Protocol used to send logs. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineSocketDestinationType: - default: socket - description: The destination type. The value should always be `socket`. - enum: - - socket - example: socket - type: string - x-enum-varnames: - - SOCKET - ObservabilityPipelineAmazonSecurityLakeDestinationType: - default: amazon_security_lake - description: The destination type. Always `amazon_security_lake`. - enum: - - amazon_security_lake - example: amazon_security_lake - type: string - x-enum-varnames: - - AMAZON_SECURITY_LAKE - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompression: - description: Compression configuration for log events. - properties: - algorithm: - $ref: >- - #/components/schemas/ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm - level: - description: Compression level. - example: 6 - format: int64 - type: integer - required: - - algorithm - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationEncoding: - description: Encoding format for log events. - enum: - - json - - raw_message - example: json - type: string - x-enum-varnames: - - JSON - - RAW_MESSAGE - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationType: - default: crowdstrike_next_gen_siem - description: >- - The destination type. The value should always be - `crowdstrike_next_gen_siem`. - enum: - - crowdstrike_next_gen_siem - example: crowdstrike_next_gen_siem - type: string - x-enum-varnames: - - CROWDSTRIKE_NEXT_GEN_SIEM - ObservabilityPipelineFilterProcessorType: - default: filter - description: The processor type. The value should always be `filter`. - enum: - - filter - example: filter - type: string - x-enum-varnames: - - FILTER - ObservabilityPipelineParseJSONProcessorType: - default: parse_json - description: The processor type. The value should always be `parse_json`. - enum: - - parse_json - example: parse_json - type: string - x-enum-varnames: - - PARSE_JSON - ObservabilityPipelineQuotaProcessorLimit: - description: >- - The maximum amount of data or number of events allowed before the quota - is enforced. Can be specified in bytes or events. - properties: - enforce: - $ref: >- - #/components/schemas/ObservabilityPipelineQuotaProcessorLimitEnforceType - limit: - description: The limit for quota enforcement. - example: 1000 - format: int64 - type: integer - required: - - enforce - - limit - type: object - ObservabilityPipelineQuotaProcessorOverflowAction: - description: | - The action to take when the quota is exceeded. Options: - - `drop`: Drop the event. - - `no_action`: Let the event pass through. - - `overflow_routing`: Route to an overflow destination. - enum: - - drop - - no_action - - overflow_routing - example: drop - type: string - x-enum-varnames: - - DROP - - NO_ACTION - - OVERFLOW_ROUTING - ObservabilityPipelineQuotaProcessorOverride: - description: >- - Defines a custom quota limit that applies to specific log events based - on matching field values. - properties: - fields: - description: >- - A list of field matchers used to apply a specific override. If an - event matches all listed key-value pairs, the corresponding override - limit is enforced. - items: - $ref: '#/components/schemas/ObservabilityPipelineFieldValue' - type: array - limit: - $ref: '#/components/schemas/ObservabilityPipelineQuotaProcessorLimit' - required: - - fields - - limit - type: object - ObservabilityPipelineQuotaProcessorType: - default: quota - description: The processor type. The value should always be `quota`. - enum: - - quota - example: quota - type: string - x-enum-varnames: - - QUOTA - ObservabilityPipelineFieldValue: - description: Represents a static key-value pair used in various processors. - properties: - name: - description: The field name. - example: field_name - type: string - value: - description: The field value. - example: field_value - type: string - required: - - name - - value - type: object - ObservabilityPipelineAddFieldsProcessorType: - default: add_fields - description: The processor type. The value should always be `add_fields`. - enum: - - add_fields - example: add_fields - type: string - x-enum-varnames: - - ADD_FIELDS - ObservabilityPipelineRemoveFieldsProcessorType: - default: remove_fields - description: The processor type. The value should always be `remove_fields`. - enum: - - remove_fields - example: remove_fields - type: string - x-enum-varnames: - - REMOVE_FIELDS - ObservabilityPipelineRenameFieldsProcessorField: - description: Defines how to rename a field in log events. - properties: - destination: - description: The field name to assign the renamed value to. - example: destination_field - type: string - preserve_source: - description: >- - Indicates whether the original field, that is received from the - source, should be kept (`true`) or removed (`false`) after renaming. - example: false - type: boolean - source: - description: The original field name in the log event that should be renamed. - example: source_field - type: string - required: - - source - - destination - - preserve_source - type: object - ObservabilityPipelineRenameFieldsProcessorType: - default: rename_fields - description: The processor type. The value should always be `rename_fields`. - enum: - - rename_fields - example: rename_fields - type: string - x-enum-varnames: - - RENAME_FIELDS - ObservabilityPipelineGeneratedMetric: - description: > - Defines a log-based custom metric, including its name, type, filter, - value computation strategy, - - and optional grouping fields. - properties: - group_by: - description: Optional fields used to group the metric series. - example: - - service - - env - items: - type: string - type: array - include: - description: Datadog filter query to match logs for metric generation. - example: service:billing - type: string - metric_type: - $ref: '#/components/schemas/ObservabilityPipelineGeneratedMetricMetricType' - name: - description: Name of the custom metric to be created. - example: logs.processed - type: string - value: - $ref: '#/components/schemas/ObservabilityPipelineMetricValue' - required: - - name - - include - - metric_type - - value - type: object - ObservabilityPipelineGenerateMetricsProcessorType: - default: generate_datadog_metrics - description: The processor type. Always `generate_datadog_metrics`. - enum: - - generate_datadog_metrics - example: generate_datadog_metrics - type: string - x-enum-varnames: - - GENERATE_DATADOG_METRICS - ObservabilityPipelineSampleProcessorType: - default: sample - description: The processor type. The value should always be `sample`. - enum: - - sample - example: sample - type: string - x-enum-varnames: - - SAMPLE - ObservabilityPipelineParseGrokProcessorRule: - description: > - A Grok parsing rule used in the `parse_grok` processor. Each rule - defines how to extract structured fields - - from a specific log field using Grok patterns. - properties: - match_rules: - description: > - A list of Grok parsing rules that define how to extract fields from - the source field. - - Each rule must contain a name and a valid Grok pattern. - example: - - name: MyParsingRule - rule: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' - items: - $ref: >- - #/components/schemas/ObservabilityPipelineParseGrokProcessorRuleMatchRule - type: array - source: - description: The name of the field in the log event to apply the Grok rules to. - example: message - type: string - support_rules: - description: > - A list of Grok helper rules that can be referenced by the parsing - rules. - example: - - name: user - rule: '%{word:user.name}' - items: - $ref: >- - #/components/schemas/ObservabilityPipelineParseGrokProcessorRuleSupportRule - type: array - required: - - source - - match_rules - type: object - ObservabilityPipelineParseGrokProcessorType: - default: parse_grok - description: The processor type. The value should always be `parse_grok`. - enum: - - parse_grok - example: parse_grok - type: string - x-enum-varnames: - - PARSE_GROK - ObservabilityPipelineSensitiveDataScannerProcessorRule: - description: >- - Defines a rule for detecting sensitive data, including matching pattern, - scope, and the action to take. - properties: - keyword_options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions - name: - description: A name identifying the rule. - example: Redact Credit Card Numbers - type: string - on_match: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorAction - pattern: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorPattern - scope: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScope - tags: - description: Tags assigned to this rule for filtering and classification. - example: - - pii - - ccn - items: - type: string - type: array - required: - - name - - tags - - pattern - - scope - - on_match - type: object - ObservabilityPipelineSensitiveDataScannerProcessorType: - default: sensitive_data_scanner - description: The processor type. The value should always be `sensitive_data_scanner`. - enum: - - sensitive_data_scanner - example: sensitive_data_scanner - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER - ObservabilityPipelineOcsfMapperProcessorMapping: - description: >- - Defines how specific events are transformed to OCSF using a mapping - configuration. - properties: - include: - description: >- - A Datadog search query used to select the logs that this mapping - should apply to. - example: service:my-service - type: string - mapping: - $ref: >- - #/components/schemas/ObservabilityPipelineOcsfMapperProcessorMappingMapping - required: - - include - - mapping - type: object - ObservabilityPipelineOcsfMapperProcessorType: - default: ocsf_mapper - description: The processor type. The value should always be `ocsf_mapper`. - enum: - - ocsf_mapper - example: ocsf_mapper - type: string - x-enum-varnames: - - OCSF_MAPPER - ObservabilityPipelineAddEnvVarsProcessorType: - default: add_env_vars - description: The processor type. The value should always be `add_env_vars`. - enum: - - add_env_vars - example: add_env_vars - type: string - x-enum-varnames: - - ADD_ENV_VARS - ObservabilityPipelineAddEnvVarsProcessorVariable: - description: Defines a mapping between an environment variable and a log field. - properties: - field: - description: The target field in the log event. - example: log.environment.region - type: string - name: - description: The name of the environment variable to read. - example: AWS_REGION - type: string - required: - - field - - name - type: object - ObservabilityPipelineDedupeProcessorMode: - description: The deduplication mode to apply to the fields. - enum: - - match - - ignore - example: match - type: string - x-enum-varnames: - - MATCH - - IGNORE - ObservabilityPipelineDedupeProcessorType: - default: dedupe - description: The processor type. The value should always be `dedupe`. - enum: - - dedupe - example: dedupe - type: string - x-enum-varnames: - - DEDUPE - ObservabilityPipelineEnrichmentTableFile: - description: Defines a static enrichment table loaded from a CSV file. - properties: - encoding: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileEncoding - key: - description: Key fields used to look up enrichment values. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItems - type: array - path: - description: Path to the CSV file. - example: /etc/enrichment/lookup.csv - type: string - schema: - description: Schema defining column names and their types. - items: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItems - type: array - required: - - encoding - - key - - path - - schema - type: object - ObservabilityPipelineEnrichmentTableGeoIp: - description: Uses a GeoIP database to enrich logs based on an IP field. - properties: - key_field: - description: Path to the IP field in the log. - example: log.source.ip - type: string - locale: - description: Locale used to resolve geographical names. - example: en - type: string - path: - description: Path to the GeoIP database file. - example: /etc/geoip/GeoLite2-City.mmdb - type: string - required: - - key_field - - locale - - path - type: object - ObservabilityPipelineEnrichmentTableProcessorType: - default: enrichment_table - description: The processor type. The value should always be `enrichment_table`. - enum: - - enrichment_table - example: enrichment_table - type: string - x-enum-varnames: - - ENRICHMENT_TABLE - ObservabilityPipelineReduceProcessorMergeStrategy: - description: Defines how a specific field should be merged across grouped events. - properties: - path: - description: The field path in the log event. - example: log.user.roles - type: string - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineReduceProcessorMergeStrategyStrategy - required: - - path - - strategy - type: object - ObservabilityPipelineReduceProcessorType: - default: reduce - description: The processor type. The value should always be `reduce`. - enum: - - reduce - example: reduce - type: string - x-enum-varnames: - - REDUCE - ObservabilityPipelineThrottleProcessorType: - default: throttle - description: The processor type. The value should always be `throttle`. - enum: - - throttle - example: throttle - type: string - x-enum-varnames: - - THROTTLE - ObservabilityPipelineCustomProcessorRemap: - description: >- - Defines a single VRL remap rule with its own filtering and - transformation logic. - properties: - drop_on_error: - description: Whether to drop events that caused errors during processing. - example: false - type: boolean - enabled: - description: Whether this remap rule is enabled. - example: true - type: boolean - include: - description: >- - A Datadog search query used to filter events for this specific remap - rule. - example: service:web - type: string - name: - description: A descriptive name for this remap rule. - example: Parse JSON from message field - type: string - source: - description: The VRL script source code that defines the processing logic. - example: . = parse_json!(.message) - type: string - required: - - include - - name - - source - - enabled - - drop_on_error - type: object - ObservabilityPipelineCustomProcessorType: - default: custom_processor - description: The processor type. The value should always be `custom_processor`. - enum: - - custom_processor - example: custom_processor - type: string - x-enum-varnames: - - CUSTOM_PROCESSOR - ObservabilityPipelineDatadogTagsProcessorAction: - description: The action to take on tags with matching keys. - enum: - - include - - exclude - example: include - type: string - x-enum-varnames: - - INCLUDE - - EXCLUDE - ObservabilityPipelineDatadogTagsProcessorMode: - description: The processing mode. - enum: - - filter - example: filter - type: string - x-enum-varnames: - - FILTER - ObservabilityPipelineDatadogTagsProcessorType: - default: datadog_tags - description: The processor type. The value should always be `datadog_tags`. - enum: - - datadog_tags - example: datadog_tags - type: string - x-enum-varnames: - - DATADOG_TAGS - ObservabilityPipelineKafkaSourceLibrdkafkaOption: - description: >- - Represents a key-value pair used to configure low-level `librdkafka` - client options for Kafka sources, such as timeouts, buffer sizes, and - security settings. - properties: - name: - description: The name of the `librdkafka` configuration option to set. - example: fetch.message.max.bytes - type: string - value: - description: >- - The value assigned to the specified `librdkafka` configuration - option. - example: '1048576' - type: string - required: - - name - - value - type: object - ObservabilityPipelineKafkaSourceSasl: - description: Specifies the SASL mechanism for authenticating with a Kafka cluster. - properties: - mechanism: - $ref: >- - #/components/schemas/ObservabilityPipelinePipelineKafkaSourceSaslMechanism - type: object - ObservabilityPipelineKafkaSourceType: - default: kafka - description: The source type. The value should always be `kafka`. - enum: - - kafka - example: kafka - type: string - x-enum-varnames: - - KAFKA - ObservabilityPipelineDatadogAgentSourceType: - default: datadog_agent - description: The source type. The value should always be `datadog_agent`. - enum: - - datadog_agent - example: datadog_agent - type: string - x-enum-varnames: - - DATADOG_AGENT - ObservabilityPipelineSplunkTcpSourceType: - default: splunk_tcp - description: The source type. Always `splunk_tcp`. - enum: - - splunk_tcp - example: splunk_tcp - type: string - x-enum-varnames: - - SPLUNK_TCP - ObservabilityPipelineSplunkHecSourceType: - default: splunk_hec - description: The source type. Always `splunk_hec`. - enum: - - splunk_hec - example: splunk_hec - type: string - x-enum-varnames: - - SPLUNK_HEC - ObservabilityPipelineAmazonS3SourceType: - default: amazon_s3 - description: The source type. Always `amazon_s3`. - enum: - - amazon_s3 - example: amazon_s3 - type: string - x-enum-varnames: - - AMAZON_S3 - ObservabilityPipelineFluentdSourceType: - default: fluentd - description: The source type. The value should always be `fluentd. - enum: - - fluentd - example: fluentd - type: string - x-enum-varnames: - - FLUENTD - ObservabilityPipelineFluentBitSourceType: - default: fluent_bit - description: The source type. The value should always be `fluent_bit`. - enum: - - fluent_bit - example: fluent_bit - type: string - x-enum-varnames: - - FLUENT_BIT - ObservabilityPipelineHttpServerSourceAuthStrategy: - description: HTTP authentication method. - enum: - - none - - plain - example: plain - type: string - x-enum-varnames: - - NONE - - PLAIN - ObservabilityPipelineDecoding: - description: The decoding format used to interpret incoming logs. - enum: - - bytes - - gelf - - json - - syslog - example: json - type: string - x-enum-varnames: - - DECODE_BYTES - - DECODE_GELF - - DECODE_JSON - - DECODE_SYSLOG - ObservabilityPipelineHttpServerSourceType: - default: http_server - description: The source type. The value should always be `http_server`. - enum: - - http_server - example: http_server - type: string - x-enum-varnames: - - HTTP_SERVER - ObservabilityPipelineSumoLogicSourceType: - default: sumo_logic - description: The source type. The value should always be `sumo_logic`. - enum: - - sumo_logic - example: sumo_logic - type: string - x-enum-varnames: - - SUMO_LOGIC - ObservabilityPipelineSyslogSourceMode: - description: Protocol used by the syslog source to receive messages. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineRsyslogSourceType: - default: rsyslog - description: The source type. The value should always be `rsyslog`. - enum: - - rsyslog - example: rsyslog - type: string - x-enum-varnames: - - RSYSLOG - ObservabilityPipelineSyslogNgSourceType: - default: syslog_ng - description: The source type. The value should always be `syslog_ng`. - enum: - - syslog_ng - example: syslog_ng - type: string - x-enum-varnames: - - SYSLOG_NG - ObservabilityPipelineAmazonDataFirehoseSourceType: - default: amazon_data_firehose - description: The source type. The value should always be `amazon_data_firehose`. - enum: - - amazon_data_firehose - example: amazon_data_firehose - type: string - x-enum-varnames: - - AMAZON_DATA_FIREHOSE - ObservabilityPipelineGooglePubSubSourceType: - default: google_pubsub - description: The source type. The value should always be `google_pubsub`. - enum: - - google_pubsub - example: google_pubsub - type: string - x-enum-varnames: - - GOOGLE_PUBSUB - ObservabilityPipelineHttpClientSourceAuthStrategy: - description: Optional authentication strategy for HTTP requests. - enum: - - basic - - bearer - example: basic - type: string - x-enum-varnames: - - BASIC - - BEARER - ObservabilityPipelineHttpClientSourceType: - default: http_client - description: The source type. The value should always be `http_client`. - enum: - - http_client - example: http_client - type: string - x-enum-varnames: - - HTTP_CLIENT - ObservabilityPipelineLogstashSourceType: - default: logstash - description: The source type. The value should always be `logstash`. - enum: - - logstash - example: logstash - type: string - x-enum-varnames: - - LOGSTASH - ObservabilityPipelineSocketSourceFraming: - description: Framing method configuration for the socket source. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimited - - $ref: '#/components/schemas/ObservabilityPipelineSocketSourceFramingBytes' - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimited - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCounting - - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelf - ObservabilityPipelineSocketSourceMode: - description: Protocol used to receive logs. - enum: - - tcp - - udp - example: tcp - type: string - x-enum-varnames: - - TCP - - UDP - ObservabilityPipelineSocketSourceType: - default: socket - description: The source type. The value should always be `socket`. - enum: - - socket - example: socket - type: string - x-enum-varnames: - - SOCKET - ObservabilityPipelineAmazonOpenSearchDestinationAuthStrategy: - description: The authentication strategy to use. - enum: - - basic - - aws - example: aws - type: string - x-enum-varnames: - - BASIC - - AWS - ObservabilityPipelineSocketDestinationFramingNewlineDelimited: - description: Each log event is delimited by a newline character. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingBytes: - description: Event data is not delimited at all. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingBytesMethod - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingCharacterDelimited: - description: Each log event is separated using the specified delimiter character. - properties: - delimiter: - description: A single ASCII character used as a delimiter. - example: '|' - maxLength: 1 - minLength: 1 - type: string - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod - required: - - method - - delimiter - type: object - ObservabilityPipelineCrowdStrikeNextGenSiemDestinationCompressionAlgorithm: - description: Compression algorithm for log events. - enum: - - gzip - - zlib - example: gzip - type: string - x-enum-varnames: - - GZIP - - ZLIB - ObservabilityPipelineQuotaProcessorLimitEnforceType: - description: Unit for quota enforcement in bytes for data size or events for count. - enum: - - bytes - - events - example: bytes - type: string - x-enum-varnames: - - BYTES - - EVENTS - ObservabilityPipelineGeneratedMetricMetricType: - description: Type of metric to create. - enum: - - count - - gauge - - distribution - example: count - type: string - x-enum-varnames: - - COUNT - - GAUGE - - DISTRIBUTION - ObservabilityPipelineMetricValue: - description: Specifies how the value of the generated metric is computed. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOne - - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByField - ObservabilityPipelineParseGrokProcessorRuleMatchRule: - description: > - Defines a Grok parsing rule, which extracts structured fields from log - content using named Grok patterns. - - Each rule must have a unique name and a valid Datadog Grok pattern that - will be applied to the source field. - properties: - name: - description: The name of the rule. - example: MyParsingRule - type: string - rule: - description: The definition of the Grok rule. - example: '%{word:user} connected on %{date("MM/dd/yyyy"):date}' - type: string - required: - - name - - rule - type: object - ObservabilityPipelineParseGrokProcessorRuleSupportRule: - description: The Grok helper rule referenced in the parsing rules. - properties: - name: - description: The name of the Grok helper rule. - example: user - type: string - rule: - description: The definition of the Grok helper rule. - example: ' %{word:user.name}' - type: string - required: - - name - - rule - type: object - ObservabilityPipelineSensitiveDataScannerProcessorKeywordOptions: - description: >- - Configuration for keywords used to reinforce sensitive data pattern - detection. - properties: - keywords: - description: A list of keywords to match near the sensitive pattern. - example: - - ssn - - card - - account - items: - type: string - type: array - proximity: - description: >- - Maximum number of tokens between a keyword and a sensitive value - match. - example: 5 - format: int64 - type: integer - required: - - keywords - - proximity - type: object - ObservabilityPipelineSensitiveDataScannerProcessorAction: - description: Defines what action to take when sensitive data is matched. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedact - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHash - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact - ObservabilityPipelineSensitiveDataScannerProcessorPattern: - description: >- - Pattern detection configuration for identifying sensitive data using - either a custom regex or a library reference. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern - ObservabilityPipelineSensitiveDataScannerProcessorScope: - description: >- - Determines which parts of the log the pattern-matching rule should be - applied to. - oneOf: - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude - - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAll - ObservabilityPipelineOcsfMapperProcessorMappingMapping: - description: >- - Defines a single mapping rule for transforming logs into the OCSF - schema. - oneOf: - - $ref: '#/components/schemas/ObservabilityPipelineOcsfMappingLibrary' - ObservabilityPipelineEnrichmentTableFileEncoding: - description: File encoding format. - properties: - delimiter: - description: The `encoding` `delimiter`. - example: ',' - type: string - includes_headers: - description: The `encoding` `includes_headers`. - example: true - type: boolean - type: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileEncodingType - required: - - type - - delimiter - - includes_headers - type: object - ObservabilityPipelineEnrichmentTableFileKeyItems: - description: >- - Defines how to map log fields to enrichment table columns during - lookups. - properties: - column: - description: The `items` `column`. - example: user_id - type: string - comparison: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileKeyItemsComparison - field: - description: The `items` `field`. - example: log.user.id - type: string - required: - - column - - comparison - - field - type: object - ObservabilityPipelineEnrichmentTableFileSchemaItems: - description: Describes a single column and its type in an enrichment table schema. - properties: - column: - description: The `items` `column`. - example: region - type: string - type: - $ref: >- - #/components/schemas/ObservabilityPipelineEnrichmentTableFileSchemaItemsType - required: - - column - - type - type: object - ObservabilityPipelineReduceProcessorMergeStrategyStrategy: - description: The merge strategy to apply. - enum: - - discard - - retain - - sum - - max - - min - - array - - concat - - concat_newline - - concat_raw - - shortest_array - - longest_array - - flat_unique - example: flat_unique - type: string - x-enum-varnames: - - DISCARD - - RETAIN - - SUM - - MAX - - MIN - - ARRAY - - CONCAT - - CONCAT_NEWLINE - - CONCAT_RAW - - SHORTEST_ARRAY - - LONGEST_ARRAY - - FLAT_UNIQUE - ObservabilityPipelinePipelineKafkaSourceSaslMechanism: - description: SASL mechanism used for Kafka authentication. - enum: - - PLAIN - - SCRAM-SHA-256 - - SCRAM-SHA-512 - type: string - x-enum-varnames: - - PLAIN - - SCRAMNOT_SHANOT_256 - - SCRAMNOT_SHANOT_512 - ObservabilityPipelineSocketSourceFramingNewlineDelimited: - description: Byte frames which are delimited by a newline character. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingBytes: - description: >- - Byte frames are passed through as-is according to the underlying I/O - boundaries (for example, split between messages or stream segments). - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingBytesMethod - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingCharacterDelimited: - description: Byte frames which are delimited by a chosen character. - properties: - delimiter: - description: A single ASCII character used to delimit events. - example: '|' - maxLength: 1 - minLength: 1 - type: string - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod - required: - - method - - delimiter - type: object - ObservabilityPipelineSocketSourceFramingOctetCounting: - description: Byte frames according to the octet counting format as per RFC6587. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingOctetCountingMethod - required: - - method - type: object - ObservabilityPipelineSocketSourceFramingChunkedGelf: - description: Byte frames which are chunked GELF messages. - properties: - method: - $ref: >- - #/components/schemas/ObservabilityPipelineSocketSourceFramingChunkedGelfMethod - required: - - method - type: object - ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod: - description: >- - The definition of - `ObservabilityPipelineSocketDestinationFramingNewlineDelimitedMethod` - object. - enum: - - newline_delimited - example: newline_delimited - type: string - x-enum-varnames: - - NEWLINE_DELIMITED - ObservabilityPipelineSocketDestinationFramingBytesMethod: - description: >- - The definition of - `ObservabilityPipelineSocketDestinationFramingBytesMethod` object. - enum: - - bytes - example: bytes - type: string - x-enum-varnames: - - BYTES - ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod: - description: >- - The definition of - `ObservabilityPipelineSocketDestinationFramingCharacterDelimitedMethod` - object. - enum: - - character_delimited - example: character_delimited - type: string - x-enum-varnames: - - CHARACTER_DELIMITED - ObservabilityPipelineGeneratedMetricIncrementByOne: - description: >- - Strategy that increments a generated metric by one for each matching - event. - properties: - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByOneStrategy - required: - - strategy - type: object - ObservabilityPipelineGeneratedMetricIncrementByField: - description: >- - Strategy that increments a generated metric based on the value of a log - field. - properties: - field: - description: >- - Name of the log field containing the numeric value to increment the - metric by. - example: errors - type: string - strategy: - $ref: >- - #/components/schemas/ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy - required: - - strategy - - field - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionRedact: - description: Configuration for completely redacting matched sensitive data. - properties: - action: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions - required: - - action - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionHash: - description: Configuration for hashing matched sensitive values. - properties: - action: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction - options: - description: >- - The `ObservabilityPipelineSensitiveDataScannerProcessorActionHash` - `options`. - type: object - required: - - action - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedact: - description: Configuration for partially redacting matched sensitive data. - properties: - action: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions - required: - - action - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPattern: - description: >- - Defines a custom regex-based pattern for identifying sensitive data in - logs. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions - type: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType - required: - - type - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPattern: - description: >- - Specifies a pattern from Datadog’s sensitive data detection library to - match known sensitive data types. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions - type: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType - required: - - type - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeInclude: - description: Includes only specific fields for sensitive data scanning. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions - target: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget - required: - - target - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeExclude: - description: Excludes specific fields from sensitive data scanning. - properties: - options: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions - target: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget - required: - - target - - options - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeAll: - description: Applies scanning across all available fields. - properties: - target: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget - required: - - target - type: object - ObservabilityPipelineOcsfMappingLibrary: - description: Predefined library mappings for common log formats. - enum: - - CloudTrail Account Change - - GCP Cloud Audit CreateBucket - - GCP Cloud Audit CreateSink - - GCP Cloud Audit SetIamPolicy - - GCP Cloud Audit UpdateSink - - Github Audit Log API Activity - - Google Workspace Admin Audit addPrivilege - - Microsoft 365 Defender Incident - - Microsoft 365 Defender UserLoggedIn - - Okta System Log Authentication - - Palo Alto Networks Firewall Traffic - example: CloudTrail Account Change - type: string - x-enum-varnames: - - CLOUDTRAIL_ACCOUNT_CHANGE - - GCP_CLOUD_AUDIT_CREATEBUCKET - - GCP_CLOUD_AUDIT_CREATESINK - - GCP_CLOUD_AUDIT_SETIAMPOLICY - - GCP_CLOUD_AUDIT_UPDATESINK - - GITHUB_AUDIT_LOG_API_ACTIVITY - - GOOGLE_WORKSPACE_ADMIN_AUDIT_ADDPRIVILEGE - - MICROSOFT_365_DEFENDER_INCIDENT - - MICROSOFT_365_DEFENDER_USERLOGGEDIN - - OKTA_SYSTEM_LOG_AUTHENTICATION - - PALO_ALTO_NETWORKS_FIREWALL_TRAFFIC - ObservabilityPipelineEnrichmentTableFileEncodingType: - description: Specifies the encoding format (e.g., CSV) used for enrichment tables. - enum: - - csv - example: csv - type: string - x-enum-varnames: - - CSV - ObservabilityPipelineEnrichmentTableFileKeyItemsComparison: - description: Defines how to compare key fields for enrichment table lookups. - enum: - - equals - example: equals - type: string - x-enum-varnames: - - EQUALS - ObservabilityPipelineEnrichmentTableFileSchemaItemsType: - description: Declares allowed data types for enrichment table columns. - enum: - - string - - boolean - - integer - - float - - date - - timestamp - example: string - type: string - x-enum-varnames: - - STRING - - BOOLEAN - - INTEGER - - FLOAT - - DATE - - TIMESTAMP - ObservabilityPipelineSocketSourceFramingNewlineDelimitedMethod: - description: Byte frames which are delimited by a newline character. - enum: - - newline_delimited - example: newline_delimited - type: string - x-enum-varnames: - - NEWLINE_DELIMITED - ObservabilityPipelineSocketSourceFramingBytesMethod: - description: >- - Byte frames are passed through as-is according to the underlying I/O - boundaries (for example, split between messages or stream segments). - enum: - - bytes - example: bytes - type: string - x-enum-varnames: - - BYTES - ObservabilityPipelineSocketSourceFramingCharacterDelimitedMethod: - description: Byte frames which are delimited by a chosen character. - enum: - - character_delimited - example: character_delimited - type: string - x-enum-varnames: - - CHARACTER_DELIMITED - ObservabilityPipelineSocketSourceFramingOctetCountingMethod: - description: Byte frames according to the octet counting format as per RFC6587. - enum: - - octet_counting - example: octet_counting - type: string - x-enum-varnames: - - OCTET_COUNTING - ObservabilityPipelineSocketSourceFramingChunkedGelfMethod: - description: Byte frames which are chunked GELF messages. - enum: - - chunked_gelf - example: chunked_gelf - type: string - x-enum-varnames: - - CHUNKED_GELF - ObservabilityPipelineGeneratedMetricIncrementByOneStrategy: - description: Increments the metric by 1 for each matching event. - enum: - - increment_by_one - example: increment_by_one - type: string - x-enum-varnames: - - INCREMENT_BY_ONE - ObservabilityPipelineGeneratedMetricIncrementByFieldStrategy: - description: Uses a numeric field in the log event as the metric increment. - enum: - - increment_by_field - example: increment_by_field - type: string - x-enum-varnames: - - INCREMENT_BY_FIELD - ObservabilityPipelineSensitiveDataScannerProcessorActionRedactAction: - description: >- - Action type that completely replaces the matched sensitive data with a - fixed replacement string to remove all visibility. - enum: - - redact - example: redact - type: string - x-enum-varnames: - - REDACT - ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions: - description: Configuration for fully redacting sensitive data. - properties: - replace: - description: >- - The - `ObservabilityPipelineSensitiveDataScannerProcessorActionRedactOptions` - `replace`. - example: '***' - type: string - required: - - replace - type: object - ObservabilityPipelineSensitiveDataScannerProcessorActionHashAction: - description: >- - Action type that replaces the matched sensitive data with a hashed - representation, preserving structure while securing content. - enum: - - hash - example: hash - type: string - x-enum-varnames: - - HASH - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactAction: - description: >- - Action type that redacts part of the sensitive data while preserving a - configurable number of characters, typically used for masking purposes - (e.g., show last 4 digits of a credit card). - enum: - - partial_redact - example: partial_redact - type: string - x-enum-varnames: - - PARTIAL_REDACT - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions: - description: >- - Controls how partial redaction is applied, including character count and - direction. - properties: - characters: - description: >- - The - `ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptions` - `characters`. - example: 4 - format: int64 - type: integer - direction: - $ref: >- - #/components/schemas/ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection - required: - - characters - - direction - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternOptions: - description: Options for defining a custom regex pattern. - properties: - rule: - description: >- - A regular expression used to detect sensitive values. Must be a - valid regex. - example: \b\d{16}\b - type: string - required: - - rule - type: object - ObservabilityPipelineSensitiveDataScannerProcessorCustomPatternType: - description: Indicates a custom regular expression is used for matching. - enum: - - custom - example: custom - type: string - x-enum-varnames: - - CUSTOM - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternOptions: - description: >- - Options for selecting a predefined library pattern and enabling keyword - support. - properties: - id: - description: >- - Identifier for a predefined pattern from the sensitive data scanner - pattern library. - example: credit_card - type: string - use_recommended_keywords: - description: Whether to augment the pattern with recommended keywords (optional). - type: boolean - required: - - id - type: object - ObservabilityPipelineSensitiveDataScannerProcessorLibraryPatternType: - description: Indicates that a predefined library pattern is used. - enum: - - library - example: library - type: string - x-enum-varnames: - - LIBRARY - ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions: - description: Fields to which the scope rule applies. - properties: - fields: - description: >- - The `ObservabilityPipelineSensitiveDataScannerProcessorScopeOptions` - `fields`. - example: - - '' - items: - type: string - type: array - required: - - fields - type: object - ObservabilityPipelineSensitiveDataScannerProcessorScopeIncludeTarget: - description: Applies the rule only to included fields. - enum: - - include - example: include - type: string - x-enum-varnames: - - INCLUDE - ObservabilityPipelineSensitiveDataScannerProcessorScopeExcludeTarget: - description: Excludes specific fields from processing. - enum: - - exclude - example: exclude - type: string - x-enum-varnames: - - EXCLUDE - ObservabilityPipelineSensitiveDataScannerProcessorScopeAllTarget: - description: Applies the rule to all fields. - enum: - - all - example: all - type: string - x-enum-varnames: - - ALL - ObservabilityPipelineSensitiveDataScannerProcessorActionPartialRedactOptionsDirection: - description: >- - Indicates whether to redact characters from the first or last part of - the matched value. - enum: - - first - - last - example: last - type: string - x-enum-varnames: - - FIRST - - LAST - responses: - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ConcurrentModificationResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Concurrent Modification - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - parameters: - ApplicationSecurityWafCustomRuleIDParam: - description: The ID of the custom rule. - example: 3b5-v82-ns6 - in: path - name: custom_rule_id - required: true - schema: - type: string - ApplicationSecurityWafExclusionFilterID: - description: The identifier of the WAF exclusion filter. - example: 3b5-v82-ns6 - in: path - name: exclusion_filter_id - required: true - schema: - type: string - CloudWorkloadSecurityQueryAgentPolicyID: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - in: query - name: policy_id - required: false - schema: - type: string - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3b5-v82-ns6 - in: path - name: agent_rule_id - required: true - schema: - type: string - CloudWorkloadSecurityPathAgentPolicyID: - description: The ID of the Agent policy - example: 6517fcc1-cec7-4394-a655-8d6e9d085255 - in: path - name: policy_id - required: true - schema: - type: string - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/security.yaml b/provider-dev/source/security.yaml deleted file mode 100644 index cf135e5..0000000 --- a/provider-dev/source/security.yaml +++ /dev/null @@ -1,11685 +0,0 @@ -openapi: 3.0.0 -info: - title: security API - description: datadog security API - version: '1.0' -paths: - /api/v2/agentless_scanning/accounts/aws: - get: - description: Fetches the scan options configured for AWS accounts. - operationId: ListAwsScanOptions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List AWS Scan Options - tags: - - Agentless Scanning - post: - description: Activate Agentless scan options for an AWS account. - operationId: CreateAwsScanOptions - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsCreateRequest' - description: The definition of the new scan options. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsResponse' - description: Agentless scan options enabled successfully. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Post AWS Scan Options - tags: - - Agentless Scanning - x-codegen-request-body-name: body - /api/v2/agentless_scanning/accounts/aws/{account_id}: - delete: - description: Delete Agentless scan options for an AWS account. - operationId: DeleteAwsScanOptions - parameters: - - $ref: '#/components/parameters/AwsAccountId' - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete AWS Scan Options - tags: - - Agentless Scanning - get: - description: Fetches the Agentless scan options for an activated account. - operationId: GetAwsScanOptions - parameters: - - $ref: '#/components/parameters/AwsAccountId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS scan options - tags: - - Agentless Scanning - patch: - description: Update the Agentless scan options for an activated account. - operationId: UpdateAwsScanOptions - parameters: - - $ref: '#/components/parameters/AwsAccountId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsScanOptionsUpdateRequest' - description: New definition of the scan options. - required: true - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Patch AWS Scan Options - tags: - - Agentless Scanning - x-codegen-request-body-name: body - /api/v2/agentless_scanning/ondemand/aws: - get: - description: Fetches the most recent 1000 AWS on demand tasks. - operationId: ListAwsOnDemandTasks - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandListResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS On Demand tasks - tags: - - Agentless Scanning - x-permission: - operator: OR - permissions: - - security_monitoring_findings_read - post: - description: >- - Trigger the scan of an AWS resource with a high priority. Agentless - scanning must be activated for the AWS account containing the resource - to scan. - operationId: CreateAwsOnDemandTask - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandCreateRequest' - description: The definition of the on demand task. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandResponse' - description: AWS on demand task created successfully. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Post an AWS on demand task - tags: - - Agentless Scanning - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_findings_write - /api/v2/agentless_scanning/ondemand/aws/{task_id}: - get: - description: Fetch the data of a specific on demand task. - operationId: GetAwsOnDemandTask - parameters: - - $ref: '#/components/parameters/OnDemandTaskId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/AwsOnDemandResponse' - description: OK. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get AWS On Demand task by id - tags: - - Agentless Scanning - x-permission: - operator: OR - permissions: - - security_monitoring_findings_read - /api/v2/cloud_security_management/custom_frameworks: - post: - description: Create a custom framework. - operationId: CreateCustomFramework - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateCustomFrameworkRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Create a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - /api/v2/cloud_security_management/custom_frameworks/{handle}/{version}: - delete: - description: Delete a custom framework. - operationId: DeleteCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DeleteCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Delete a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - get: - description: Get a custom framework. - operationId: GetCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - put: - description: Update a custom framework. - operationId: UpdateCustomFramework - parameters: - - $ref: '#/components/parameters/CustomFrameworkHandle' - - $ref: '#/components/parameters/CustomFrameworkVersion' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCustomFrameworkRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCustomFrameworkResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - '500': - $ref: '#/components/responses/BadRequestResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - - security_monitoring_rules_write - summary: Update a custom framework - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - security_monitoring_rules_read - - security_monitoring_rules_write - /api/v2/cloud_security_management/resource_filters: - get: - description: List resource filters. - operationId: GetResourceEvaluationFilters - parameters: - - $ref: '#/components/parameters/ResourceFilterProvider' - - $ref: '#/components/parameters/ResourceFilterAccountID' - - $ref: '#/components/parameters/SkipCache' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetResourceEvaluationFiltersResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: List resource filters - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - put: - description: Update resource filters. - operationId: UpdateResourceEvaluationFilters - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Update resource filters - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/csm/onboarding/agents: - get: - description: Get the list of all CSM Agents running on your hosts and containers. - operationId: ListAllCSMAgents - parameters: - - description: The page index for pagination (zero-based). - in: query - name: page - required: false - schema: - example: 2 - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of items to include in a single page. - in: query - name: size - required: false - schema: - example: 12 - format: int32 - maximum: 100 - minimum: 0 - type: integer - - description: >- - A search query string to filter results (for example, - `hostname:COMP-T2H4J27423`). - in: query - name: query - required: false - schema: - example: hostname:COMP-T2H4J27423 - type: string - - description: >- - The sort direction for results. Use `asc` for ascending or `desc` - for descending. - in: query - name: order_direction - required: false - schema: - $ref: '#/components/schemas/OrderDirection' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmAgentsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all CSM Agents - tags: - - CSM Agents - /api/v2/csm/onboarding/coverage_analysis/cloud_accounts: - get: - description: |- - Get the CSM Coverage Analysis of your Cloud Accounts. - This is calculated based on the number of your Cloud Accounts that are - scanned for security issues. - operationId: GetCSMCloudAccountsCoverageAnalysis - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Cloud Accounts Coverage Analysis - tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/coverage_analysis/hosts_and_containers: - get: - description: |- - Get the CSM Coverage Analysis of your Hosts and Containers. - This is calculated based on the number of agents running on your Hosts - and Containers with CSM feature(s) enabled. - operationId: GetCSMHostsAndContainersCoverageAnalysis - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/CsmHostsAndContainersCoverageAnalysisResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Hosts and Containers Coverage Analysis - tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/coverage_analysis/serverless: - get: - description: >- - Get the CSM Coverage Analysis of your Serverless Resources. - - This is calculated based on the number of agents running on your - Serverless - - Resources with CSM feature(s) enabled. - operationId: GetCSMServerlessCoverageAnalysis - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get the CSM Serverless Coverage Analysis - tags: - - CSM Coverage Analysis - /api/v2/csm/onboarding/serverless/agents: - get: - description: >- - Get the list of all CSM Serverless Agents running on your hosts and - containers. - operationId: ListAllCSMServerlessAgents - parameters: - - description: The page index for pagination (zero-based). - in: query - name: page - required: false - schema: - example: 2 - format: int32 - maximum: 1000000 - minimum: 0 - type: integer - - description: The number of items to include in a single page. - in: query - name: size - required: false - schema: - example: 12 - format: int32 - maximum: 100 - minimum: 0 - type: integer - - description: >- - A search query string to filter results (for example, - `hostname:COMP-T2H4J27423`). - in: query - name: query - required: false - schema: - example: hostname:COMP-T2H4J27423 - type: string - - description: >- - The sort direction for results. Use `asc` for ascending or `desc` - for descending. - in: query - name: order_direction - required: false - schema: - $ref: '#/components/schemas/OrderDirection' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CsmAgentsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all CSM Serverless Agents - tags: - - CSM Agents - /api/v2/posture_management/findings: - get: - description: > - Get a list of findings. These include both misconfigurations and - identity risks. - - - **Note**: To filter and return only identity risks, add the following - query parameter: `?filter[tags]=dd_rule_type:ciem` - - - ### Filtering - - - Filters can be applied by appending query parameters to the URL. - - - Using a single filter: `?filter[attribute_key]=attribute_value` - - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...` - - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2` - - Here, `attribute_key` can be any of the filter keys described further - below. - - - Query parameters of type `integer` support comparison operators (`>`, - `>=`, `<`, `<=`). This is particularly useful when filtering by - `evaluation_changed_at` or `resource_discovery_timestamp`. For example: - `?filter[evaluation_changed_at]=>20123123121`. - - - You can also use the negation operator on strings. For example, use - `filter[resource_type]=-aws*` to filter for any non-AWS resources. - - - The operator must come after the equal sign. For example, to filter with - the `>=` operator, add the operator after the equal sign: - `filter[evaluation_changed_at]=>=1678809373257`. - - - Query parameters must be only among the documented ones and with values - of correct types. Duplicated query parameters (e.g. - `filter[status]=low&filter[status]=info`) are not allowed. - - - ### Additional extension fields - - - Additional extension fields are available for some findings. - - - The data is available when you include the query parameter - `?detailed_findings=true` in the request. - - - The following fields are available for findings: - - - `external_id`: The resource external ID related to the finding. - - - `description`: The description and remediation steps for the finding. - - - `datadog_link`: The Datadog relative link for the finding. - - - `ip_addresses`: The list of private IP addresses for the resource - related to the finding. - - - ### Response - - - The response includes an array of finding objects, pagination metadata, - and a count of items that match the query. - - - Each finding object contains the following: - - - - The finding ID that can be used in a `GetFinding` request to retrieve - the full finding details. - - - Core attributes, including status, evaluation, high-level resource - details, muted state, and rule details. - - - `evaluation_changed_at` and `resource_discovery_date` time stamps. - - - An array of associated tags. - operationId: ListFindings - parameters: - - description: Limit the number of findings returned. Must be <= 1000. - example: 50 - in: query - name: page[limit] - required: false - schema: - default: 100 - format: int64 - maximum: 1000 - minimum: 1 - type: integer - - description: Return findings for a given snapshot of time (Unix ms). - example: 1678721573794 - in: query - name: snapshot_timestamp - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Return the next page of findings pointed to by the cursor. - example: >- - eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Return findings that have these associated tags (repeatable). - example: >- - filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999 - in: query - name: filter[tags] - required: false - schema: - type: string - - description: >- - Return findings that have changed from pass to fail or vice versa on - a specified date (Unix ms) or date range (using comparison - operators). - example: '>=1678721573794' - in: query - name: filter[evaluation_changed_at] - required: false - schema: - type: string - - description: >- - Set to `true` to return findings that are muted. Set to `false` to - return unmuted findings. - in: query - name: filter[muted] - required: false - schema: - type: boolean - - description: Return findings for the specified rule ID. - in: query - name: filter[rule_id] - required: false - schema: - type: string - - description: Return findings for the specified rule. - in: query - name: filter[rule_name] - required: false - schema: - type: string - - description: Return only findings for the specified resource type. - in: query - name: filter[resource_type] - required: false - schema: - type: string - - description: Return only findings for the specified resource id. - in: query - name: filter[@resource_id] - required: false - schema: - type: string - - description: >- - Return findings that were found on a specified date (Unix ms) or - date range (using comparison operators). - example: '>=1678721573794' - in: query - name: filter[discovery_timestamp] - required: false - schema: - type: string - - description: Return only `pass` or `fail` findings. - example: pass - in: query - name: filter[evaluation] - required: false - schema: - $ref: '#/components/schemas/FindingEvaluation' - - description: Return only findings with the specified status. - example: critical - in: query - name: filter[status] - required: false - schema: - $ref: '#/components/schemas/FindingStatus' - - description: >- - Return findings that match the selected vulnerability types - (repeatable). - example: - - misconfiguration - explode: true - in: query - name: filter[vulnerability_type] - required: false - schema: - items: - $ref: '#/components/schemas/FindingVulnerabilityType' - type: array - - description: Return additional fields for some findings. - example: - - true - in: query - name: detailed_findings - required: false - schema: - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListFindingsResponse' - description: OK - '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_findings_read - summary: List findings - tags: - - Security Monitoring - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.cursor - limitParam: page[limit] - resultsPath: data - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Mute or unmute findings. - operationId: MuteFindings - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/BulkMuteFindingsRequest' - description: > - ### Attributes - - - All findings are updated with the same attributes. The request body - must include at least two attributes: `muted` and `reason`. - - The allowed reasons depend on whether the finding is being muted or - unmuted: - - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `ACCEPTED_RISK`, `OTHER`. - - To unmute a finding : `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, `OTHER`. - - ### Meta - - - The request body must include a list of the finding IDs to be updated. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/BulkMuteFindingsResponse' - description: OK - '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '422': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Invalid Request: The server understands the request syntax but - cannot process it due to invalid data. - '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Mute or unmute a batch of findings - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/posture_management/findings/{finding_id}: - get: - description: Returns a single finding with message and resource configuration. - operationId: GetFinding - parameters: - - description: The ID of the finding. - in: path - name: finding_id - required: true - schema: - type: string - - description: Return the finding for a given snapshot of time (Unix ms). - example: 1678721573794 - in: query - name: snapshot_timestamp - required: false - schema: - format: int64 - minimum: 1 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetFindingResponse' - description: OK - '400': - $ref: '#/components/responses/FindingsBadRequestResponse' - '403': - $ref: '#/components/responses/FindingsForbiddenResponse' - '404': - $ref: '#/components/responses/FindingsNotFoundResponse' - '429': - $ref: '#/components/responses/FindingsTooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_findings_read - summary: Get a finding - tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/security/assets: - get: - description: > - Get a list of vulnerable assets. - - - ### Pagination - - - Please review the [Pagination section for the "List - Vulnerabilities"](#pagination) endpoint. - - - ### Filtering - - - Please review the [Filtering section for the "List - Vulnerabilities"](#filtering) endpoint. - - - ### Metadata - - - Please review the [Metadata section for the "List - Vulnerabilities"](#metadata) endpoint. - operationId: ListVulnerableAssets - parameters: - - description: >- - Its value must come from the `links` section of the response of the - first request. Do not manually edit it. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: >- - The page number to be retrieved. It should be equal or greater than - `1` - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Filter by name. - example: datadog-agent - in: query - name: filter[name] - required: false - schema: - type: string - - description: Filter by type. - example: Host - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: >- - Filter by the first version of the asset since it has been - vulnerable. - example: v1.15.1 - in: query - name: filter[version.first] - required: false - schema: - type: string - - description: Filter by the last detected version of the asset. - example: v1.15.1 - in: query - name: filter[version.last] - required: false - schema: - type: string - - description: Filter by the repository url associated to the asset. - example: github.com/DataDog/datadog-agent.git - in: query - name: filter[repository_url] - required: false - schema: - type: string - - description: Filter whether the asset is in production or not. - example: false - in: query - name: filter[risks.in_production] - required: false - schema: - type: boolean - - description: Filter whether the asset (Service) is under attack or not. - example: false - in: query - name: filter[risks.under_attack] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) is publicly accessible or not. - example: false - in: query - name: filter[risks.is_publicly_accessible] - required: false - schema: - type: boolean - - description: Filter whether the asset (Host) has privileged access or not. - example: false - in: query - name: filter[risks.has_privileged_access] - required: false - schema: - type: boolean - - description: >- - Filter whether the asset (Host) has access to sensitive data or - not. - example: false - in: query - name: filter[risks.has_access_to_sensitive_data] - required: false - schema: - type: boolean - - description: Filter by environment. - example: staging - in: query - name: filter[environments] - required: false - schema: - type: string - - description: Filter by teams. - example: compute - in: query - name: filter[teams] - required: false - schema: - type: string - - description: Filter by architecture. - example: arm64 - in: query - name: filter[arch] - required: false - schema: - type: string - - description: Filter by operating system name. - example: ubuntu - in: query - name: filter[operating_system.name] - required: false - schema: - type: string - - description: Filter by operating system version. - example: '24.04' - in: query - name: filter[operating_system.version] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListVulnerableAssetsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: There is no request associated with the provided token.' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List vulnerable assets - tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/cloud_workload/policy/download: - get: - description: >- - The download endpoint generates a Workload Protection policy file from - your currently active - - Workload Protection agent rules, and downloads them as a `.policy` file. - This file can then be deployed to - - your agents to update the policy running in your environment. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: DownloadCloudWorkloadPolicyFile - responses: - '200': - content: - application/yaml: - schema: - format: binary - type: string - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Download the Workload Protection policy (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_read - /api/v2/security/sboms: - get: - description: >- - Get a list of assets SBOMs for an organization. - - - ### Pagination - - - Please review the [Pagination section](#pagination) for the "List - Vulnerabilities" endpoint. - - - ### Filtering - - - Please review the [Filtering section](#filtering) for the "List - Vulnerabilities" endpoint. - - - ### Metadata - - - Please review the [Metadata section](#metadata) for the "List - Vulnerabilities" endpoint. - operationId: ListAssetsSBOMs - parameters: - - description: >- - Its value must come from the `links` section of the response of the - first request. Do not manually edit it. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: >- - The page number to be retrieved. It should be equal to or greater - than 1. - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: The type of the assets for the SBOM request. - example: Repository - in: query - name: filter[asset_type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: The name of the asset for the SBOM request. - example: github.com/datadog/datadog-agent - in: query - name: filter[asset_name] - required: false - schema: - type: string - - description: The name of the component that is a dependency of an asset. - example: opentelemetry-api - in: query - name: filter[package_name] - required: false - schema: - type: string - - description: The version of the component that is a dependency of an asset. - example: 1.33.1 - in: query - name: filter[package_version] - required: false - schema: - type: string - - description: >- - The software license name of the component that is a dependency of - an asset. - example: Apache-2.0 - in: query - name: filter[license_name] - required: false - schema: - type: string - - description: >- - The software license type of the component that is a dependency of - an asset. - example: network_strong_copyleft - in: query - name: filter[license_type] - required: false - schema: - $ref: '#/components/schemas/SBOMComponentLicenseType' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListAssetsSBOMsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: asset not found' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List assets SBOMs - tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/sboms/{asset_type}: - get: - description: | - Get a single SBOM related to an asset by its type and name. - operationId: GetSBOM - parameters: - - description: The type of the asset for the SBOM request. - example: Repository - in: path - name: asset_type - required: true - schema: - $ref: '#/components/schemas/AssetType' - - description: The name of the asset for the SBOM request. - example: github.com/datadog/datadog-agent - in: query - name: filter[asset_name] - required: true - schema: - type: string - - description: >- - The container image `repo_digest` for the SBOM request. When the - requested asset type is 'Image', this filter is mandatory. - example: >- - sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - in: query - name: filter[repo_digest] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetSBOMResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: asset not found' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get SBOM - tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/signals/notification_rules: - get: - description: Returns the list of notification rules for security signals. - operationId: GetSignalNotificationRules - responses: - '200': - $ref: '#/components/responses/NotificationRulesList' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get the list of signal-based notification rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - post: - description: >- - Create a new notification rule for security signals and return the - created rule. - operationId: CreateSignalNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateNotificationRuleParameters' - description: > - The body of the create notification rule request is composed of the - rule type and the rule attributes: - - the rule name, the selectors, the notification targets, and the rule - enabled status. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Successfully created the notification rule. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Create a new signal-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/signals/notification_rules/{id}: - delete: - description: Delete a notification rule for security signals. - operationId: DeleteSignalNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: Rule successfully deleted. - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Delete a signal-based notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - get: - description: Get the details of a notification rule for security signals. - operationId: GetSignalNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule details. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get details of a signal-based notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - patch: - description: >- - Partially update the notification rule. All fields are optional; if a - field is not provided, it is not updated. - operationId: PatchSignalNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchNotificationRuleParameters' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule successfully patched. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - $ref: '#/components/responses/UnprocessableEntityResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Patch a signal-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/vulnerabilities: - get: - description: > - Get a list of vulnerabilities. - - - ### Pagination - - - Pagination is enabled by default in both `vulnerabilities` and `assets`. - The size of the page varies depending on the endpoint and cannot be - modified. To automate the request of the next page, you can use the - links section in the response. - - - This endpoint will return paginated responses. The pages are stored in - the links section of the response: - - - ```JSON - - { - "data": [...], - "meta": {...}, - "links": { - "self": "https://.../api/v2/security/vulnerabilities", - "first": "https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc", - "last": "https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc", - "next": "https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc" - } - } - - ``` - - - - - `links.previous` is empty if the first page is requested. - - - `links.next` is empty if the last page is requested. - - - #### Token - - - Vulnerabilities can be created, updated or deleted at any point in time. - - - Upon the first request, a token is created to ensure consistency across - subsequent paginated requests. - - - A token is valid only for 24 hours. - - - #### First request - - - We consider a request to be the first request when there is no - `page[token]` parameter. - - - The response of this first request contains the newly created token in - the `links` section. - - - This token can then be used in the subsequent paginated requests. - - - #### Subsequent requests - - - Any request containing valid `page[token]` and `page[number]` parameters - will be considered a subsequent request. - - - If the `token` is invalid, a `404` response will be returned. - - - If the page `number` is invalid, a `400` response will be returned. - - - ### Filtering - - - The request can include some filter parameters to filter the data to be - retrieved. The format of the filter parameters follows the [JSON:API - format](https://jsonapi.org/format/#fetching-filtering): - `filter[$prop_name]`, where `prop_name` is the property name in the - entity being filtered by. - - - All filters can include multiple values, where data will be filtered - with an OR clause: `filter[title]=Title1,Title2` will filter all - vulnerabilities where title is equal to `Title1` OR `Title2`. - - - String filters are case sensitive. - - - Boolean filters accept `true` or `false` as values. - - - Number filters must include an operator as a second filter input: - `filter[$prop_name][$operator]`. For example, for the vulnerabilities - endpoint: `filter[cvss.base.score][lte]=8`. - - - Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and - `gte` (>=). - - - ### Metadata - - - Following [JSON:API format](https://jsonapi.org/format/#document-meta), - object including non-standard meta-information. - - - This endpoint includes the meta member in the response. For more details - on each of the properties included in this section, check the endpoints - response tables. - - - ```JSON - - { - "data": [...], - "meta": { - "total": 1500, - "count": 18732, - "token": "some_token" - }, - "links": {...} - } - - ``` - operationId: ListVulnerabilities - parameters: - - description: >- - Its value must come from the `links` section of the response of the - first request. Do not manually edit it. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - in: query - name: page[token] - required: false - schema: - type: string - - description: >- - The page number to be retrieved. It should be equal or greater than - `1` - example: 1 - in: query - name: page[number] - required: false - schema: - format: int64 - minimum: 1 - type: integer - - description: Filter by vulnerability type. - example: WeakCipher - in: query - name: filter[type] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityType' - - description: >- - Filter by vulnerability base (i.e. from the original advisory) - severity score. - example: 5.5 - in: query - name: filter[cvss.base.score][`$op`] - required: false - schema: - format: double - maximum: 10 - minimum: 0 - type: number - - description: Filter by vulnerability base severity. - example: Medium - in: query - name: filter[cvss.base.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by vulnerability base CVSS vector. - example: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H - in: query - name: filter[cvss.base.vector] - required: false - schema: - type: string - - description: Filter by vulnerability Datadog severity score. - example: 4.3 - in: query - name: filter[cvss.datadog.score][`$op`] - required: false - schema: - format: double - maximum: 10 - minimum: 0 - type: number - - description: Filter by vulnerability Datadog severity. - example: Medium - in: query - name: filter[cvss.datadog.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by vulnerability Datadog CVSS vector. - example: >- - CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H/E:U/RL:X/RC:X/CR:X/IR:X/AR:X/MAV:L/MAC:H/MPR:L/MUI:N/MS:U/MC:N/MI:N/MA:H - in: query - name: filter[cvss.datadog.vector] - required: false - schema: - type: string - - description: Filter by the status of the vulnerability. - example: Open - in: query - name: filter[status] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityStatus' - - description: Filter by the tool of the vulnerability. - example: SCA - in: query - name: filter[tool] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityTool' - - description: Filter by library name. - example: linux-aws-5.15 - in: query - name: filter[library.name] - required: false - schema: - type: string - - description: Filter by library version. - example: 5.15.0 - in: query - name: filter[library.version] - required: false - schema: - type: string - - description: Filter by advisory ID. - example: TRIVY-CVE-2023-0615 - in: query - name: filter[advisory_id] - required: false - schema: - type: string - - description: Filter by exploitation probability. - example: false - in: query - name: filter[risks.exploitation_probability] - required: false - schema: - type: boolean - - description: Filter by POC exploit availability. - example: false - in: query - name: filter[risks.poc_exploit_available] - required: false - schema: - type: boolean - - description: Filter by public exploit availability. - example: false - in: query - name: filter[risks.exploit_available] - required: false - schema: - type: boolean - - description: >- - Filter by vulnerability [EPSS](https://www.first.org/epss/) severity - score. - example: 0.00042 - in: query - name: filter[risks.epss.score][`$op`] - required: false - schema: - format: double - maximum: 1 - minimum: 0 - type: number - - description: >- - Filter by vulnerability [EPSS](https://www.first.org/epss/) - severity. - example: Low - in: query - name: filter[risks.epss.severity] - required: false - schema: - $ref: '#/components/schemas/VulnerabilitySeverity' - - description: Filter by language. - example: ubuntu - in: query - name: filter[language] - required: false - schema: - type: string - - description: Filter by ecosystem. - example: Deb - in: query - name: filter[ecosystem] - required: false - schema: - $ref: '#/components/schemas/VulnerabilityEcosystem' - - description: Filter by vulnerability location. - example: com.example.Class:100 - in: query - name: filter[code_location.location] - required: false - schema: - type: string - - description: Filter by vulnerability file path. - example: src/Class.java:100 - in: query - name: filter[code_location.file_path] - required: false - schema: - type: string - - description: Filter by method. - example: FooBar - in: query - name: filter[code_location.method] - required: false - schema: - type: string - - description: Filter by fix availability. - example: false - in: query - name: filter[fix_available] - required: false - schema: - type: boolean - - description: >- - Filter by vulnerability `repo_digest` (when the vulnerability is - related to `Image` asset). - example: >- - sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - in: query - name: filter[repo_digests] - required: false - schema: - type: string - - description: Filter by origin. - example: agentless-scanner - in: query - name: filter[origin] - required: false - schema: - type: string - - description: Filter by asset name. - example: datadog-agent - in: query - name: filter[asset.name] - required: false - schema: - type: string - - description: Filter by asset type. - example: Host - in: query - name: filter[asset.type] - required: false - schema: - $ref: '#/components/schemas/AssetType' - - description: >- - Filter by the first version of the asset this vulnerability has been - detected on. - example: v1.15.1 - in: query - name: filter[asset.version.first] - required: false - schema: - type: string - - description: >- - Filter by the last version of the asset this vulnerability has been - detected on. - example: v1.15.1 - in: query - name: filter[asset.version.last] - required: false - schema: - type: string - - description: Filter by the repository url associated to the asset. - example: github.com/DataDog/datadog-agent.git - in: query - name: filter[asset.repository_url] - required: false - schema: - type: string - - description: Filter whether the asset is in production or not. - example: false - in: query - name: filter[asset.risks.in_production] - required: false - schema: - type: boolean - - description: Filter whether the asset is under attack or not. - example: false - in: query - name: filter[asset.risks.under_attack] - required: false - schema: - type: boolean - - description: Filter whether the asset is publicly accessible or not. - example: false - in: query - name: filter[asset.risks.is_publicly_accessible] - required: false - schema: - type: boolean - - description: Filter whether the asset is publicly accessible or not. - example: false - in: query - name: filter[asset.risks.has_privileged_access] - required: false - schema: - type: boolean - - description: Filter whether the asset has access to sensitive data or not. - example: false - in: query - name: filter[asset.risks.has_access_to_sensitive_data] - required: false - schema: - type: boolean - - description: Filter by asset environments. - example: staging - in: query - name: filter[asset.environments] - required: false - schema: - type: string - - description: Filter by asset teams. - example: compute - in: query - name: filter[asset.teams] - required: false - schema: - type: string - - description: Filter by asset architecture. - example: arm64 - in: query - name: filter[asset.arch] - required: false - schema: - type: string - - description: Filter by asset operating system name. - example: ubuntu - in: query - name: filter[asset.operating_system.name] - required: false - schema: - type: string - - description: Filter by asset operating system version. - example: '24.04' - in: query - name: filter[asset.operating_system.version] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListVulnerabilitiesResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad request: The server cannot process the request due to invalid - syntax in the request. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not found: There is no request associated with the provided token.' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: List vulnerabilities - tags: - - Security Monitoring - x-unstable: >- - **Note**: This endpoint is a private preview. - - If you are interested in accessing this API, [fill out this - form](https://forms.gle/kMYC1sDr6WDUBDsx9). - /api/v2/security/vulnerabilities/notification_rules: - get: - description: Returns the list of notification rules for security vulnerabilities. - operationId: GetVulnerabilityNotificationRules - responses: - '200': - $ref: '#/components/responses/NotificationRulesList' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get the list of vulnerability notification rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - post: - description: >- - Create a new notification rule for security vulnerabilities and return - the created rule. - operationId: CreateVulnerabilityNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateNotificationRuleParameters' - description: > - The body of the create notification rule request is composed of the - rule type and the rule attributes: - - the rule name, the selectors, the notification targets, and the rule - enabled status. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Successfully created the notification rule. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Create a new vulnerability-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security/vulnerabilities/notification_rules/{id}: - delete: - description: Delete a notification rule for security vulnerabilities. - operationId: DeleteVulnerabilityNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '204': - description: Rule successfully deleted. - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Delete a vulnerability-based notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - get: - description: Get the details of a notification rule for security vulnerabilities. - operationId: GetVulnerabilityNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule details. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get details of a vulnerability notification rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_read - patch: - description: >- - Partially update the notification rule. All fields are optional; if a - field is not provided, it is not updated. - operationId: PatchVulnerabilityNotificationRule - parameters: - - description: ID of the notification rule. - in: path - name: id - required: true - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchNotificationRuleParameters' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/NotificationRuleResponse' - description: Notification rule successfully patched. - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '422': - $ref: '#/components/responses/UnprocessableEntityResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Patch a vulnerability-based notification rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_notification_profiles_write - /api/v2/security_monitoring/cloud_workload_security/agent_rules: - get: - description: >- - Get the list of agent rules. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: ListCloudWorkloadSecurityAgentRules - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/CloudWorkloadSecurityAgentRulesListResponse - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get all Workload Protection agent rules (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_read - post: - description: >- - Create a new agent rule with the given parameters. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: CreateCloudWorkloadSecurityAgentRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateRequest' - description: The definition of the new agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write - /api/v2/security_monitoring/cloud_workload_security/agent_rules/{agent_rule_id}: - delete: - description: >- - Delete a specific agent rule. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: DeleteCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write - get: - description: >- - Get the details of a specific agent rule. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: GetCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_read - patch: - description: >- - Update a specific agent rule. - - Returns the agent rule object when the request is successful. - - - **Note**: This endpoint should only be used for the Government (US1-FED) - site. - operationId: UpdateCloudWorkloadSecurityAgentRule - parameters: - - $ref: '#/components/parameters/CloudWorkloadSecurityAgentRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateRequest' - description: New definition of the agent rule - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update a Workload Protection agent rule (US1-FED) - tags: - - CSM Threats - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_cws_agent_rules_write - /api/v2/security_monitoring/configuration/security_filters: - get: - description: Get the list of configured security filters with their definitions. - operationId: ListSecurityFilters - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFiltersResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: Get all security filters - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - post: - description: >- - Create a security filter. - - - See the [security filter - guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) - - for more examples. - operationId: CreateSecurityFilter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterCreateRequest' - description: The definition of the new security filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Create a security filter - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/security_monitoring/configuration/security_filters/{security_filter_id}: - delete: - description: Delete a specific security filter. - operationId: DeleteSecurityFilter - parameters: - - $ref: '#/components/parameters/SecurityFilterID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Delete a security filter - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - get: - description: >- - Get the details of a specific security filter. - - - See the [security filter - guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/) - - for more examples. - operationId: GetSecurityFilter - parameters: - - $ref: '#/components/parameters/SecurityFilterID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_read - summary: Get a security filter - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_filters_read - patch: - description: |- - Update a specific security filter. - Returns the security filter object when the request is successful. - operationId: UpdateSecurityFilter - parameters: - - $ref: '#/components/parameters/SecurityFilterID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterUpdateRequest' - description: New definition of the security filter. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityFilterResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_filters_write - summary: Update a security filter - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_filters_write - /api/v2/security_monitoring/configuration/suppressions: - get: - description: Get the list of all suppression rules. - operationId: ListSecurityMonitoringSuppressions - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get all suppression rules - tags: - - Security Monitoring - post: - description: Create a new suppression rule. - operationId: CreateSecurityMonitoringSuppression - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' - description: The definition of the new suppression rule. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Create a suppression rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - /api/v2/security_monitoring/configuration/suppressions/rules: - post: - description: Get the list of suppressions that would affect a rule. - operationId: GetSuppressionsAffectingFutureRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get suppressions affecting future rule - tags: - - Security Monitoring - /api/v2/security_monitoring/configuration/suppressions/rules/{rule_id}: - get: - description: >- - Get the list of suppressions that affect a specific existing rule by its - ID. - operationId: GetSuppressionsAffectingRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionsResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get suppressions affecting a specific rule - tags: - - Security Monitoring - /api/v2/security_monitoring/configuration/suppressions/validation: - post: - description: Validate a suppression rule. - operationId: ValidateSecurityMonitoringSuppression - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateRequest' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Validate a suppression rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_suppressions_write - /api/v2/security_monitoring/configuration/suppressions/{suppression_id}: - delete: - description: Delete a specific suppression rule. - operationId: DeleteSecurityMonitoringSuppression - parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Delete a suppression rule - tags: - - Security Monitoring - get: - description: Get the details of a specific suppression rule. - operationId: GetSecurityMonitoringSuppression - parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_read - summary: Get a suppression rule - tags: - - Security Monitoring - patch: - description: Update a specific suppression rule. - operationId: UpdateSecurityMonitoringSuppression - parameters: - - $ref: '#/components/parameters/SecurityMonitoringSuppressionID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateRequest' - description: New definition of the suppression rule. Supports partial updates. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSuppressionResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConcurrentModificationResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_suppressions_write - summary: Update a suppression rule - tags: - - Security Monitoring - /api/v2/security_monitoring/rules: - get: - description: List rules. - operationId: ListSecurityMonitoringRules - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringListRulesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: List rules - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - post: - description: Create a detection rule. - operationId: CreateSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleCreatePayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Create a detection rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/convert: - post: - description: >- - Convert a rule that doesn't (yet) exist from JSON to Terraform for - datadog provider - - resource datadog_security_monitoring_rule. - operationId: ConvertSecurityMonitoringRuleFromJSONToTerraform - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertPayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Convert a rule from JSON to Terraform - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/test: - post: - description: Test a rule. - operationId: TestSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Test a rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/validation: - post: - description: Validate a detection rule. - operationId: ValidateSecurityMonitoringRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleValidatePayload' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Validate a detection rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}: - delete: - description: Delete an existing rule. Default rules cannot be deleted. - operationId: DeleteSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '204': - description: OK - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Delete an existing rule - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - get: - description: Get a rule's details. - operationId: GetSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a rule's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - put: - description: >- - Update an existing rule. When updating `cases`, `queries` or `options`, - the whole field - - must be included. For example, when modifying a query all queries must - be included. - - Default rules can only be updated to be enabled, to change - notifications, or to update - - the tags (default tags cannot be removed). - operationId: UpdateSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleUpdatePayload' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Update an existing rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}/convert: - get: - description: |- - Convert an existing rule from JSON to Terraform for datadog provider - resource datadog_security_monitoring_rule. - operationId: ConvertExistingSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleConvertResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Convert an existing rule from JSON to Terraform - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - /api/v2/security_monitoring/rules/{rule_id}/test: - post: - description: Test an existing rule. - operationId: TestExistingSecurityMonitoringRule - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringRuleTestResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Test an existing rule - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - /api/v2/security_monitoring/rules/{rule_id}/version_history: - get: - description: Get a rule's version history. - operationId: GetRuleVersionHistory - parameters: - - $ref: '#/components/parameters/SecurityMonitoringRuleID' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetRuleVersionHistoryResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a rule's version history - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - x-unstable: '**Note**: This endpoint is in beta and may be subject to changes.' - /api/v2/security_monitoring/signals: - get: - description: >- - The list endpoint returns security signals that match a search query. - - Both this endpoint and the POST endpoint can be used interchangeably - when listing - - security signals. - operationId: ListSecurityMonitoringSignals - parameters: - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a quick list of security signals - tags: - - Security Monitoring - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/search: - post: - description: >- - Returns security signals that match a search query. - - Both this endpoint and the GET endpoint can be used interchangeably for - listing - - security signals. - operationId: SearchSecurityMonitoringSignals - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a list of security signals - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/{signal_id}: - get: - description: Get a signal's details. - operationId: GetSecurityMonitoringSignal - parameters: - - $ref: '#/components/parameters/SignalID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalResponse' - description: OK - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a signal's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - /api/v2/security_monitoring/signals/{signal_id}/assignee: - patch: - description: Modify the triage assignee of a security signal. - operationId: EditSecurityMonitoringSignalAssignee - parameters: - - $ref: '#/components/parameters/SignalID' - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalAssigneeUpdateRequest - description: Attributes describing the signal update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalTriageUpdateResponse - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Modify the triage assignee of a security signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - /api/v2/security_monitoring/signals/{signal_id}/incidents: - patch: - description: Change the related incidents for a security signal. - operationId: EditSecurityMonitoringSignalIncidents - parameters: - - $ref: '#/components/parameters/SignalID' - requestBody: - content: - application/json: - schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalIncidentsUpdateRequest - description: Attributes describing the signal update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalTriageUpdateResponse - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Change the related incidents of a security signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - /api/v2/security_monitoring/signals/{signal_id}/state: - patch: - description: Change the triage state of a security signal. - operationId: EditSecurityMonitoringSignalState - parameters: - - $ref: '#/components/parameters/SignalID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateRequest' - description: Attributes describing the signal update. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/SecurityMonitoringSignalTriageUpdateResponse - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Change the triage state of a security signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - /api/v2/sensitive-data-scanner/config: - get: - description: List all the Scanning groups in your organization. - operationId: ListScanningGroups - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List Scanning Groups - tags: - - Sensitive Data Scanner - x-permission: - operator: OR - permissions: - - data_scanner_read - patch: - description: Reorder the list of groups. - operationId: ReorderScanningGroups - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerConfigRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerReorderGroupsResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Reorder Groups - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/groups: - post: - description: >- - Create a scanning group. - - The request MAY include a configuration relationship. - - A rules relationship can be omitted entirely, but if it is included it - MUST be - - null or an empty array (rules cannot be created at the same time). - - The new group will be ordered last within the configuration. - operationId: CreateScanningGroup - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerCreateGroupResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Scanning Group - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/groups/{group_id}: - delete: - description: Delete a given group. - operationId: DeleteScanningGroup - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerGroupID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupDeleteResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Scanning Group - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - patch: - description: >- - Update a group, including the order of the rules. - - Rules within the group are reordered by including a rules relationship. - If the rules - - relationship is present, its data section MUST contain linkages for all - of the rules - - currently in the group, and MUST NOT contain any others. - operationId: UpdateScanningGroup - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerGroupID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Scanning Group - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/rules: - post: - description: >- - Create a scanning rule in a sensitive data scanner group, ordered last. - - The posted rule MUST include a group relationship. - - It MUST include either a standard_pattern relationship or a regex - attribute, but not both. - - If included_attributes is empty or missing, we will scan all attributes - except - - excluded_attributes. If both are missing, we will scan the whole event. - operationId: CreateScanningRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerCreateRuleResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/rules/{rule_id}: - delete: - description: Delete a given rule. - operationId: DeleteScanningRule - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleDeleteResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Delete Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - patch: - description: >- - Update a scanning rule. - - The request body MUST NOT include a standard_pattern relationship, as - that relationship - - is non-editable. Trying to edit the regex attribute of a rule with a - standard_pattern - - relationship will also result in an error. - operationId: UpdateScanningRule - parameters: - - $ref: '#/components/parameters/SensitiveDataScannerRuleID' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdateResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Update Scanning Rule - tags: - - Sensitive Data Scanner - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - data_scanner_write - /api/v2/sensitive-data-scanner/config/standard-patterns: - get: - description: Returns all standard patterns. - operationId: ListStandardPatterns - responses: - '200': - content: - application/json: - schema: - $ref: >- - #/components/schemas/SensitiveDataScannerStandardPatternsResponseData - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Authentication Error - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: List standard patterns - tags: - - Sensitive Data Scanner - x-permission: - operator: OR - permissions: - - data_scanner_read - /api/v2/siem-historical-detections/histsignals: - get: - description: List hist signals. - operationId: ListSecurityMonitoringHistsignals - parameters: - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: List hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/histsignals/search: - get: - description: Search hist signals. - operationId: SearchSecurityMonitoringHistsignals - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Search hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/histsignals/{histsignal_id}: - get: - description: Get a hist signal's details. - operationId: GetSecurityMonitoringHistsignal - parameters: - - $ref: '#/components/parameters/HistoricalSignalID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a hist signal's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs: - get: - description: List historical jobs. - operationId: ListHistoricalJobs - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - description: The order of the jobs in results. - example: status - in: query - name: sort - required: false - schema: - type: string - - description: Query used to filter items from the fetched list. - example: security:attack status:high - in: query - name: filter[query] - required: false - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListHistoricalJobsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: List historical jobs - tags: - - Security Monitoring - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - post: - description: Run a historical job. - operationId: RunHistoricalJob - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/RunHistoricalJobRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/JobCreateResponse' - description: Status created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Run a historical job - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/signal_convert: - post: - description: Convert a job result to a signal. - operationId: ConvertJobResultToSignal - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ConvertJobResultsToSignalsRequest' - required: true - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Convert a job result to a signal - tags: - - Security Monitoring - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - security_monitoring_signals_write - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/{job_id}: - delete: - description: Delete an existing job. - operationId: DeleteHistoricalJob - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete an existing job - tags: - - Security Monitoring - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - get: - description: Get a job's details. - operationId: GetHistoricalJob - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/HistoricalJobResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_read - summary: Get a job's details - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/{job_id}/cancel: - patch: - description: Cancel a historical job. - operationId: CancelHistoricalJob - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/ConcurrentModificationResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_rules_write - summary: Cancel a historical job - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_rules_write - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. - /api/v2/siem-historical-detections/jobs/{job_id}/histsignals: - get: - description: Get a job's hist signals. - operationId: GetSecurityMonitoringHistsignalsByJobId - parameters: - - $ref: '#/components/parameters/HistoricalJobID' - - $ref: '#/components/parameters/QueryFilterSearch' - - $ref: '#/components/parameters/QueryFilterFrom' - - $ref: '#/components/parameters/QueryFilterTo' - - $ref: '#/components/parameters/QuerySort' - - $ref: '#/components/parameters/QueryPageCursor' - - $ref: '#/components/parameters/QueryPageLimit' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - security_monitoring_signals_read - summary: Get a job's hist signals - tags: - - Security Monitoring - x-permission: - operator: OR - permissions: - - security_monitoring_signals_read - x-unstable: |- - **Note**: This endpoint is in beta and may be subject to changes. - Please check the documentation regularly for updates. -components: - schemas: - AwsScanOptionsListResponse: - description: Response object that includes a list of AWS scan options. - properties: - data: - description: A list of AWS scan options. - items: - $ref: '#/components/schemas/AwsScanOptionsData' - type: array - type: object - AwsScanOptionsCreateRequest: - description: Request object that includes the scan options to create. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsCreateData' - required: - - data - type: object - AwsScanOptionsResponse: - description: Response object that includes the scan options of an AWS account. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsData' - type: object - AwsScanOptionsUpdateRequest: - description: Request object that includes the scan options to update. - properties: - data: - $ref: '#/components/schemas/AwsScanOptionsUpdateData' - required: - - data - type: object - AwsOnDemandListResponse: - description: Response object that includes a list of AWS on demand tasks. - properties: - data: - description: A list of on demand tasks. - items: - $ref: '#/components/schemas/AwsOnDemandData' - type: array - type: object - AwsOnDemandCreateRequest: - description: Request object that includes the on demand task to submit. - properties: - data: - $ref: '#/components/schemas/AwsOnDemandCreateData' - required: - - data - type: object - AwsOnDemandResponse: - description: Response object that includes an AWS on demand task. - properties: - data: - $ref: '#/components/schemas/AwsOnDemandData' - type: object - CreateCustomFrameworkRequest: - description: Request object to create a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkData' - required: - - data - type: object - CreateCustomFrameworkResponse: - description: Response object to create a custom framework. - properties: - data: - $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' - required: - - data - type: object - DeleteCustomFrameworkResponse: - description: Response object to delete a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkMetadata' - required: - - data - type: object - GetCustomFrameworkResponse: - description: Response object to get a custom framework. - properties: - data: - $ref: '#/components/schemas/FullCustomFrameworkData' - required: - - data - type: object - UpdateCustomFrameworkRequest: - description: Request object to update a custom framework. - properties: - data: - $ref: '#/components/schemas/CustomFrameworkData' - required: - - data - type: object - UpdateCustomFrameworkResponse: - description: Response object to update a custom framework. - properties: - data: - $ref: '#/components/schemas/FrameworkHandleAndVersionResponseData' - required: - - data - type: object - GetResourceEvaluationFiltersResponse: - description: The definition of `GetResourceEvaluationFiltersResponse` object. - properties: - data: - $ref: '#/components/schemas/GetResourceEvaluationFiltersResponseData' - required: - - data - type: object - UpdateResourceEvaluationFiltersRequest: - description: Request object to update a resource filter. - properties: - data: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersRequestData' - required: - - data - type: object - UpdateResourceEvaluationFiltersResponse: - description: The definition of `UpdateResourceEvaluationFiltersResponse` object. - properties: - data: - $ref: '#/components/schemas/UpdateResourceEvaluationFiltersResponseData' - required: - - data - type: object - OrderDirection: - description: The sort direction for results. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASC - - DESC - CsmAgentsResponse: - description: Response object that includes a list of CSM Agents. - properties: - data: - description: A list of Agents. - items: - $ref: '#/components/schemas/CsmAgentData' - type: array - meta: - $ref: '#/components/schemas/CSMAgentsMetadata' - type: object - CsmCloudAccountsCoverageAnalysisResponse: - description: CSM Cloud Accounts Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisData' - type: object - CsmHostsAndContainersCoverageAnalysisResponse: - description: CSM Hosts and Containers Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisData' - type: object - CsmServerlessCoverageAnalysisResponse: - description: CSM Serverless Resources Coverage Analysis response. - properties: - data: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisData' - type: object - FindingEvaluation: - description: The evaluation of the finding. - enum: - - pass - - fail - example: pass - type: string - x-enum-varnames: - - PASS - - FAIL - FindingStatus: - description: The status of the finding. - enum: - - critical - - high - - medium - - low - - info - example: critical - type: string - x-enum-varnames: - - CRITICAL - - HIGH - - MEDIUM - - LOW - - INFO - FindingVulnerabilityType: - description: The vulnerability type of the finding. - enum: - - misconfiguration - - attack_path - - identity_risk - - api_security - example: misconfiguration - type: string - x-enum-varnames: - - MISCONFIGURATION - - ATTACK_PATH - - IDENTITY_RISK - - API_SECURITY - ListFindingsResponse: - description: The expected response schema when listing findings. - properties: - data: - $ref: '#/components/schemas/ListFindingsData' - meta: - $ref: '#/components/schemas/ListFindingsMeta' - required: - - data - - meta - type: object - BulkMuteFindingsRequest: - description: The new bulk mute finding request. - properties: - data: - $ref: '#/components/schemas/BulkMuteFindingsRequestData' - required: - - data - type: object - BulkMuteFindingsResponse: - description: The expected response schema. - properties: - data: - $ref: '#/components/schemas/BulkMuteFindingsResponseData' - required: - - data - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - GetFindingResponse: - description: The expected response schema when getting a finding. - properties: - data: - $ref: '#/components/schemas/DetailedFinding' - required: - - data - type: object - AssetType: - description: The asset type - enum: - - Repository - - Service - - Host - - HostImage - - Image - example: Repository - type: string - x-enum-varnames: - - REPOSITORY - - SERVICE - - HOST - - HOSTIMAGE - - IMAGE - ListVulnerableAssetsResponse: - description: The expected response schema when listing vulnerable assets. - properties: - data: - description: List of vulnerable assets. - items: - $ref: '#/components/schemas/Asset' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data - type: object - SBOMComponentLicenseType: - description: The SBOM component license type. - enum: - - network_strong_copyleft - - non_standard_copyleft - - other_non_free - - other_non_standard - - permissive - - public_domain - - strong_copyleft - - weak_copyleft - example: application - type: string - x-enum-varnames: - - NETWORK_STRONG_COPYLEFT - - NON_STANDARD_COPYLEFT - - OTHER_NON_FREE - - OTHER_NON_STANDARD - - PERMISSIVE - - PUBLIC_DOMAIN - - STRONG_COPYLEFT - - WEAK_COPYLEFT - ListAssetsSBOMsResponse: - description: The expected response schema when listing assets SBOMs. - properties: - data: - description: List of assets SBOMs. - items: - $ref: '#/components/schemas/SBOM' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data - type: object - GetSBOMResponse: - description: The expected response schema when getting an SBOM. - properties: - data: - $ref: '#/components/schemas/SBOM' - required: - - data - type: object - CreateNotificationRuleParameters: - description: Body of the notification rule create request. - properties: - data: - $ref: '#/components/schemas/CreateNotificationRuleParametersData' - type: object - NotificationRuleResponse: - description: Response object which includes a notification rule. - properties: - data: - $ref: '#/components/schemas/NotificationRule' - type: object - PatchNotificationRuleParameters: - description: Body of the notification rule patch request. - properties: - data: - $ref: '#/components/schemas/PatchNotificationRuleParametersData' - type: object - VulnerabilityType: - description: The vulnerability type. - enum: - - AdminConsoleActive - - CodeInjection - - CommandInjection - - ComponentWithKnownVulnerability - - DangerousWorkflows - - DefaultAppDeployed - - DefaultHtmlEscapeInvalid - - DirectoryListingLeak - - EmailHtmlInjection - - EndOfLife - - HardcodedPassword - - HardcodedSecret - - HeaderInjection - - HstsHeaderMissing - - InsecureAuthProtocol - - InsecureCookie - - InsecureJspLayout - - LdapInjection - - MaliciousPackage - - MandatoryRemediation - - NoHttpOnlyCookie - - NoSameSiteCookie - - NoSqlMongoDbInjection - - PathTraversal - - ReflectionInjection - - RiskyLicense - - SessionRewriting - - SessionTimeout - - SqlInjection - - Ssrf - - StackTraceLeak - - TrustBoundaryViolation - - Unmaintained - - UntrustedDeserialization - - UnvalidatedRedirect - - VerbTampering - - WeakCipher - - WeakHash - - WeakRandomness - - XContentTypeHeaderMissing - - XPathInjection - - Xss - example: WeakCipher - type: string - x-enum-varnames: - - ADMIN_CONSOLE_ACTIVE - - CODE_INJECTION - - COMMAND_INJECTION - - COMPONENT_WITH_KNOWN_VULNERABILITY - - DANGEROUS_WORKFLOWS - - DEFAULT_APP_DEPLOYED - - DEFAULT_HTML_ESCAPE_INVALID - - DIRECTORY_LISTING_LEAK - - EMAIL_HTML_INJECTION - - END_OF_LIFE - - HARDCODED_PASSWORD - - HARDCODED_SECRET - - HEADER_INJECTION - - HSTS_HEADER_MISSING - - INSECURE_AUTH_PROTOCOL - - INSECURE_COOKIE - - INSECURE_JSP_LAYOUT - - LDAP_INJECTION - - MALICIOUS_PACKAGE - - MANDATORY_REMEDIATION - - NO_HTTP_ONLY_COOKIE - - NO_SAME_SITE_COOKIE - - NO_SQL_MONGO_DB_INJECTION - - PATH_TRAVERSAL - - REFLECTION_INJECTION - - RISKY_LICENSE - - SESSION_REWRITING - - SESSION_TIMEOUT - - SQL_INJECTION - - SSRF - - STACK_TRACE_LEAK - - TRUST_BOUNDARY_VIOLATION - - UNMAINTAINED - - UNTRUSTED_DESERIALIZATION - - UNVALIDATED_REDIRECT - - VERB_TAMPERING - - WEAK_CIPHER - - WEAK_HASH - - WEAK_RANDOMNESS - - X_CONTENT_TYPE_HEADER_MISSING - - X_PATH_INJECTION - - XSS - VulnerabilitySeverity: - description: The vulnerability severity. - enum: - - Unknown - - None - - Low - - Medium - - High - - Critical - example: Medium - type: string - x-enum-varnames: - - UNKNOWN - - NONE - - LOW - - MEDIUM - - HIGH - - CRITICAL - VulnerabilityStatus: - description: The vulnerability status. - enum: - - Open - - Muted - - Remediated - - InProgress - - AutoClosed - example: Open - type: string - x-enum-varnames: - - OPEN - - MUTED - - REMEDIATED - - INPROGRESS - - AUTOCLOSED - VulnerabilityTool: - description: The vulnerability tool. - enum: - - IAST - - SCA - - Infra - example: SCA - type: string - x-enum-varnames: - - IAST - - SCA - - INFRA - VulnerabilityEcosystem: - description: The related vulnerability asset ecosystem. - enum: - - PyPI - - Maven - - NuGet - - Npm - - RubyGems - - Go - - Packagist - - Ddeb - - Rpm - - Apk - - Windows - type: string - x-enum-varnames: - - PYPI - - MAVEN - - NUGET - - NPM - - RUBY_GEMS - - GO - - PACKAGIST - - D_DEB - - RPM - - APK - - WINDOWS - ListVulnerabilitiesResponse: - description: The expected response schema when listing vulnerabilities. - properties: - data: - description: List of vulnerabilities. - items: - $ref: '#/components/schemas/Vulnerability' - type: array - links: - $ref: '#/components/schemas/Links' - meta: - $ref: '#/components/schemas/Metadata' - required: - - data - type: object - CloudWorkloadSecurityAgentRulesListResponse: - description: Response object that includes a list of Agent rule - properties: - data: - description: A list of Agent rules objects - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: array - type: object - CloudWorkloadSecurityAgentRuleCreateRequest: - description: Request object that includes the Agent rule to create - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateData' - required: - - data - type: object - CloudWorkloadSecurityAgentRuleResponse: - description: Response object that includes an Agent rule - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleData' - type: object - CloudWorkloadSecurityAgentRuleUpdateRequest: - description: >- - Request object that includes the Agent rule with the attributes to - update - properties: - data: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateData' - required: - - data - type: object - SecurityFiltersResponse: - description: All the available security filters objects. - properties: - data: - description: A list of security filters objects. - items: - $ref: '#/components/schemas/SecurityFilter' - type: array - meta: - $ref: '#/components/schemas/SecurityFilterMeta' - type: object - SecurityFilterCreateRequest: - description: >- - Request object that includes the security filter that you would like to - create. - properties: - data: - $ref: '#/components/schemas/SecurityFilterCreateData' - required: - - data - type: object - SecurityFilterResponse: - description: Response object which includes a single security filter. - properties: - data: - $ref: '#/components/schemas/SecurityFilter' - meta: - $ref: '#/components/schemas/SecurityFilterMeta' - type: object - SecurityFilterUpdateRequest: - description: The new security filter body. - properties: - data: - $ref: '#/components/schemas/SecurityFilterUpdateData' - required: - - data - type: object - SecurityMonitoringSuppressionsResponse: - description: Response object containing the available suppression rules. - properties: - data: - description: A list of suppressions objects. - items: - $ref: '#/components/schemas/SecurityMonitoringSuppression' - type: array - type: object - SecurityMonitoringSuppressionCreateRequest: - description: >- - Request object that includes the suppression rule that you would like to - create. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateData' - required: - - data - type: object - SecurityMonitoringSuppressionResponse: - description: Response object containing a single suppression rule. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppression' - type: object - SecurityMonitoringRuleCreatePayload: - description: Create a new rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleCreatePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleCreatePayload' - - $ref: '#/components/schemas/CloudConfigurationRuleCreatePayload' - SecurityMonitoringSuppressionUpdateRequest: - description: Request object containing the fields to update on the suppression rule. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateData' - required: - - data - type: object - SecurityMonitoringListRulesResponse: - description: List of rules. - properties: - data: - description: Array containing the list of rules. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - type: array - meta: - $ref: '#/components/schemas/ResponseMetaAttributes' - type: object - SecurityMonitoringRuleResponse: - description: Create a new rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleResponse' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponse' - SecurityMonitoringRuleConvertPayload: - description: Convert a rule from JSON to Terraform. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRulePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRulePayload' - SecurityMonitoringRuleConvertResponse: - description: Result of the convert rule request containing Terraform content. - properties: - ruleId: - description: the ID of the rule. - type: string - terraformContent: - description: Terraform string as a result of converting the rule from JSON. - type: string - type: object - SecurityMonitoringRuleTestRequest: - description: >- - Test the rule queries of a rule (rule property is ignored when applied - to an existing rule) - properties: - rule: - $ref: '#/components/schemas/SecurityMonitoringRuleTestPayload' - ruleQueryPayloads: - description: Data payloads used to test rules query with the expected result. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayload' - type: array - type: object - SecurityMonitoringRuleTestResponse: - description: Result of the test of the rule queries. - properties: - results: - description: >- - Assert results are returned in the same order as the rule query - payloads. - - For each payload, it returns True if the result matched the expected - result, - - False otherwise. - items: - type: boolean - type: array - type: object - SecurityMonitoringRuleValidatePayload: - description: Validate a rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRulePayload' - - $ref: '#/components/schemas/SecurityMonitoringSignalRulePayload' - - $ref: '#/components/schemas/CloudConfigurationRulePayload' - SecurityMonitoringRuleUpdatePayload: - description: Update an existing rule. - properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - customMessage: - description: >- - Custom/Overridden Message for generated signals (used in case of - Default rule update). - type: string - customName: - description: Custom/Overridden name (used in case of Default rule update). - type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: Name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' - type: array - version: - description: The version of the rule being updated. - example: 1 - format: int32 - maximum: 2147483647 - type: integer - type: object - GetRuleVersionHistoryResponse: - description: Response for getting the rule version history. - properties: - data: - $ref: '#/components/schemas/GetRuleVersionHistoryData' - type: object - SecurityMonitoringSignalsListResponse: - description: |- - The response object with all security signals matching the request - and pagination information. - properties: - data: - description: An array of security signals matching the request. - items: - $ref: '#/components/schemas/SecurityMonitoringSignal' - type: array - links: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseLinks' - meta: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMeta' - type: object - SecurityMonitoringSignalListRequest: - description: The request for a security signal list. - properties: - filter: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequestFilter' - page: - $ref: '#/components/schemas/SecurityMonitoringSignalListRequestPage' - sort: - $ref: '#/components/schemas/SecurityMonitoringSignalsSort' - type: object - SecurityMonitoringSignalResponse: - description: Security Signal response data object. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignal' - type: object - SecurityMonitoringSignalAssigneeUpdateRequest: - description: >- - Request body for changing the assignee of a given security monitoring - signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalAssigneeUpdateData' - required: - - data - type: object - SecurityMonitoringSignalTriageUpdateResponse: - description: >- - The response returned after all triage operations, containing the - updated signal triage data. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageUpdateData' - required: - - data - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - SecurityMonitoringSignalIncidentsUpdateRequest: - description: >- - Request body for changing the related incidents of a given security - monitoring signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentsUpdateData' - required: - - data - type: object - SecurityMonitoringSignalStateUpdateRequest: - description: >- - Request body for changing the state of a given security monitoring - signal. - properties: - data: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateData' - required: - - data - type: object - SensitiveDataScannerGetConfigResponse: - description: Get all groups response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigResponseData' - included: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedArray' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMeta' - type: object - SensitiveDataScannerConfigRequest: - description: Group reorder request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerReorderConfig' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerReorderGroupsResponse: - description: Group reorder response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMeta' - type: object - SensitiveDataScannerGroupCreateRequest: - description: Create group request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupCreate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerCreateGroupResponse: - description: Create group response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupResponse' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerGroupDeleteRequest: - description: Delete group request. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - meta - type: object - SensitiveDataScannerGroupDeleteResponse: - description: Delete group response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerGroupUpdateRequest: - description: Update group request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroupUpdate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerGroupUpdateResponse: - description: Update group response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerRuleCreateRequest: - description: Create rule request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleCreate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerCreateRuleResponse: - description: Create rule response. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleResponse' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerRuleDeleteRequest: - description: Delete rule request. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - meta - type: object - SensitiveDataScannerRuleDeleteResponse: - description: Delete rule response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerRuleUpdateRequest: - description: Update rule request. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerRuleUpdate' - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - required: - - data - - meta - type: object - SensitiveDataScannerRuleUpdateResponse: - description: Update rule response. - properties: - meta: - $ref: '#/components/schemas/SensitiveDataScannerMetaVersionOnly' - type: object - SensitiveDataScannerStandardPatternsResponseData: - description: List Standard patterns response data. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponse' - type: object - ListHistoricalJobsResponse: - description: List of historical jobs. - properties: - data: - description: Array containing the list of historical jobs. - items: - $ref: '#/components/schemas/HistoricalJobResponseData' - type: array - meta: - $ref: '#/components/schemas/HistoricalJobListMeta' - type: object - RunHistoricalJobRequest: - description: Run a historical job request. - properties: - data: - $ref: '#/components/schemas/RunHistoricalJobRequestData' - type: object - JobCreateResponse: - description: Run a historical job response. - properties: - data: - $ref: '#/components/schemas/JobCreateResponseData' - type: object - ConvertJobResultsToSignalsRequest: - description: Request for converting historical job results to signals. - properties: - data: - $ref: '#/components/schemas/ConvertJobResultsToSignalsData' - type: object - HistoricalJobResponse: - description: Historical job response. - properties: - data: - $ref: '#/components/schemas/HistoricalJobResponseData' - type: object - AwsScanOptionsData: - description: Single AWS Scan Options entry. - properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsAttributes' - id: - description: The ID of the AWS account. - example: '184366314700' - type: string - type: - $ref: '#/components/schemas/AwsScanOptionsType' - type: object - AwsScanOptionsCreateData: - description: Object for the scan options of a single AWS account. - properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsCreateAttributes' - id: - $ref: '#/components/schemas/AwsAccountId' - type: - $ref: '#/components/schemas/AwsScanOptionsType' - required: - - id - - type - - attributes - type: object - AwsScanOptionsUpdateData: - description: Object for the scan options of a single AWS account. - properties: - attributes: - $ref: '#/components/schemas/AwsScanOptionsUpdateAttributes' - id: - $ref: '#/components/schemas/AwsAccountId' - type: - $ref: '#/components/schemas/AwsScanOptionsType' - required: - - id - - type - - attributes - type: object - AwsOnDemandData: - description: Single AWS on demand task. - properties: - attributes: - $ref: '#/components/schemas/AwsOnDemandAttributes' - id: - description: The UUID of the task. - example: 6d09294c-9ad9-42fd-a759-a0c1599b4828 - type: string - type: - $ref: '#/components/schemas/AwsOnDemandType' - type: object - AwsOnDemandCreateData: - description: Object for a single AWS on demand task. - properties: - attributes: - $ref: '#/components/schemas/AwsOnDemandCreateAttributes' - type: - $ref: '#/components/schemas/AwsOnDemandType' - required: - - type - - attributes - type: object - CustomFrameworkData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkDataAttributes' - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - type - - attributes - type: object - FrameworkHandleAndVersionResponseData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkDataHandleAndVersion' - id: - description: The ID of the custom framework. - example: handle-version - type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - id - - type - - attributes - type: object - CustomFrameworkMetadata: - description: Metadata for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/CustomFrameworkWithoutRequirements' - id: - description: The ID of the custom framework. - example: handle-version - type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - type: object - FullCustomFrameworkData: - description: Contains type and attributes for custom frameworks. - properties: - attributes: - $ref: '#/components/schemas/FullCustomFrameworkDataAttributes' - id: - description: The ID of the custom framework. - example: handle-version - type: string - type: - $ref: '#/components/schemas/CustomFrameworkType' - required: - - id - - type - - attributes - type: object - GetResourceEvaluationFiltersResponseData: - description: The definition of `GetResourceFilterResponseData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `data` `id`. - example: csm_resource_filter - type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - type: object - UpdateResourceEvaluationFiltersRequestData: - description: The definition of `UpdateResourceFilterRequestData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `UpdateResourceEvaluationFiltersRequestData` `id`. - example: csm_resource_filter - type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - required: - - attributes - - type - type: object - UpdateResourceEvaluationFiltersResponseData: - description: The definition of `UpdateResourceFilterResponseData` object. - properties: - attributes: - $ref: '#/components/schemas/ResourceFilterAttributes' - id: - description: The `data` `id`. - example: csm_resource_filter - type: string - type: - $ref: '#/components/schemas/ResourceFilterRequestType' - required: - - attributes - - type - type: object - CsmAgentData: - description: Single Agent Data. - properties: - attributes: - $ref: '#/components/schemas/CsmAgentsAttributes' - id: - description: The ID of the Agent. - example: fffffc5505f6a006fdf7cf5aae053653 - type: string - type: - $ref: '#/components/schemas/CSMAgentsType' - type: object - CSMAgentsMetadata: - description: Metadata related to the paginated response. - properties: - page_index: - description: The index of the current page in the paginated results. - example: 0 - format: int64 - type: integer - page_size: - description: The number of items per page in the paginated results. - example: 10 - format: int64 - type: integer - total_filtered: - description: Total number of items that match the filter criteria. - example: 128697 - format: int64 - type: integer - type: object - CsmCloudAccountsCoverageAnalysisData: - description: CSM Cloud Accounts Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmCloudAccountsCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_cloud_accounts_coverage_analysis_response_public_v0 - description: >- - The type of the resource. The value should always be - `get_cloud_accounts_coverage_analysis_response_public_v0`. - example: get_cloud_accounts_coverage_analysis_response_public_v0 - type: string - type: object - CsmHostsAndContainersCoverageAnalysisData: - description: CSM Hosts and Containers Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmHostsAndContainersCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_hosts_and_containers_coverage_analysis_response_public_v0 - description: >- - The type of the resource. The value should always be - `get_hosts_and_containers_coverage_analysis_response_public_v0`. - example: get_hosts_and_containers_coverage_analysis_response_public_v0 - type: string - type: object - CsmServerlessCoverageAnalysisData: - description: CSM Serverless Resources Coverage Analysis data. - properties: - attributes: - $ref: '#/components/schemas/CsmServerlessCoverageAnalysisAttributes' - id: - description: The ID of your organization. - example: 66b3c6b5-5c9a-457e-b1c3-f247ca23afa3 - type: string - type: - default: get_serverless_coverage_analysis_response_public_v0 - description: >- - The type of the resource. The value should always be - `get_serverless_coverage_analysis_response_public_v0`. - example: get_serverless_coverage_analysis_response_public_v0 - type: string - type: object - ListFindingsData: - description: Array of findings. - items: - $ref: '#/components/schemas/Finding' - type: array - ListFindingsMeta: - additionalProperties: false - description: Metadata for pagination. - properties: - page: - $ref: '#/components/schemas/ListFindingsPage' - snapshot_timestamp: - description: The point in time corresponding to the listed findings. - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - type: object - BulkMuteFindingsRequestData: - description: Data object containing the new bulk mute properties of the finding. - properties: - attributes: - $ref: '#/components/schemas/BulkMuteFindingsRequestAttributes' - id: - description: UUID to identify the request - example: dbe5f567-192b-4404-b908-29b70e1c9f76 - type: string - meta: - $ref: '#/components/schemas/BulkMuteFindingsRequestMeta' - type: - $ref: '#/components/schemas/FindingType' - required: - - id - - type - - attributes - - meta - type: object - BulkMuteFindingsResponseData: - description: Data object containing the ID of the request that was updated. - properties: - id: - description: UUID used to identify the request - example: 93bfeb70-af47-424d-908a-948d3f08e37f - type: string - type: - $ref: '#/components/schemas/FindingType' - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - DetailedFinding: - description: A single finding with with message and resource configuration. - properties: - attributes: - $ref: '#/components/schemas/DetailedFindingAttributes' - id: - $ref: '#/components/schemas/FindingID' - type: - $ref: '#/components/schemas/DetailedFindingType' - type: object - Asset: - description: A single vulnerable asset - properties: - attributes: - $ref: '#/components/schemas/AssetAttributes' - id: - description: The unique ID for this asset. - example: Repository|github.com/DataDog/datadog-agent.git - type: string - type: - $ref: '#/components/schemas/AssetEntityType' - required: - - id - - type - - attributes - type: object - Links: - description: The JSON:API links related to pagination. - properties: - first: - description: First page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=1&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - last: - description: Last page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=15&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - next: - description: Next page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=16&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - previous: - description: Previous page link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?page%5Bnumber%5D=14&page%5Btoken%5D=b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - self: - description: Request link. - example: >- - https://api.datadoghq.com/api/v2/security/vulnerabilities?filter%5Btool%5D=Infra - type: string - required: - - self - - first - - last - type: object - Metadata: - description: The metadata related to this request. - properties: - count: - description: Number of entities included in the response. - example: 150 - format: int64 - type: integer - token: - description: The token that identifies the request. - example: >- - b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4 - type: string - total: - description: Total number of entities across all pages. - example: 152431 - format: int64 - type: integer - required: - - count - - total - - token - type: object - SBOM: - description: A single SBOM - properties: - attributes: - $ref: '#/components/schemas/SBOMAttributes' - id: - description: >- - The unique ID for this SBOM (it is equivalent to the `asset_name` or - `asset_name@repo_digest` (Image) - example: github.com/datadog/datadog-agent - type: string - type: - $ref: '#/components/schemas/SBOMType' - type: object - NotificationRule: - description: > - Notification rules allow full control over notifications generated by - the various Datadog security products. - - They allow users to define the conditions under which a notification - should be generated (based on rule severities, - - rule types, rule tags, and so on), and the targets to notify. - - A notification rule is composed of a rule ID, a rule type, and the rule - attributes. All fields are required. - properties: - attributes: - $ref: '#/components/schemas/NotificationRuleAttributes' - id: - $ref: '#/components/schemas/ID' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - id - - type - type: object - CreateNotificationRuleParametersData: - description: >- - Data of the notification rule create request: the rule type, and the - rule attributes. All fields are required. - properties: - attributes: - $ref: '#/components/schemas/CreateNotificationRuleParametersDataAttributes' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - type - type: object - PatchNotificationRuleParametersData: - description: >- - Data of the notification rule patch request: the rule ID, the rule type, - and the rule attributes. All fields are required. - properties: - attributes: - $ref: '#/components/schemas/PatchNotificationRuleParametersDataAttributes' - id: - $ref: '#/components/schemas/ID' - type: - $ref: '#/components/schemas/NotificationRulesType' - required: - - attributes - - id - - type - type: object - Vulnerability: - description: A single vulnerability - properties: - attributes: - $ref: '#/components/schemas/VulnerabilityAttributes' - id: - description: The unique ID for this vulnerability. - example: 3ecdfea798f2ce8f6e964805a344945f - type: string - relationships: - $ref: '#/components/schemas/VulnerabilityRelationships' - type: - $ref: '#/components/schemas/VulnerabilitiesType' - required: - - id - - type - - attributes - - relationships - type: object - CloudWorkloadSecurityAgentRuleData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAttributes' - id: - description: The ID of the Agent rule - example: 3dd-0uc-h1s - type: string - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - type: object - CloudWorkloadSecurityAgentRuleCreateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreateAttributes' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - CloudWorkloadSecurityAgentRuleUpdateData: - description: Object for a single Agent rule - properties: - attributes: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdateAttributes' - id: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleID' - type: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleType' - required: - - attributes - - type - type: object - SecurityFilter: - description: The security filter's properties. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterAttributes' - id: - $ref: '#/components/schemas/SecurityFilterID' - type: - $ref: '#/components/schemas/SecurityFilterType' - type: object - SecurityFilterMeta: - description: Optional metadata associated to the response. - properties: - warning: - description: A warning message. - example: >- - All the security filters are disabled. As a result, no logs are - being analyzed. - type: string - type: object - SecurityFilterCreateData: - description: Object for a single security filter. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterCreateAttributes' - type: - $ref: '#/components/schemas/SecurityFilterType' - required: - - type - - attributes - type: object - SecurityFilterUpdateData: - description: The new security filter properties. - properties: - attributes: - $ref: '#/components/schemas/SecurityFilterUpdateAttributes' - type: - $ref: '#/components/schemas/SecurityFilterType' - required: - - type - - attributes - type: object - SecurityMonitoringSuppression: - description: The suppression rule's properties. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionAttributes' - id: - $ref: '#/components/schemas/SecurityMonitoringSuppressionID' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' - type: object - SecurityMonitoringSuppressionCreateData: - description: Object for a single suppression rule. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionCreateAttributes' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' - required: - - type - - attributes - type: object - SecurityMonitoringStandardRuleCreatePayload: - description: Create a new rule. - properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringSignalRuleCreatePayload: - description: Create a new signal correlation rule. - properties: - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting signals which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - type: array - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - CloudConfigurationRuleCreatePayload: - description: Create a new cloud configuration rule. - properties: - cases: - description: > - Description of generated findings and signals (severity and channels - to be notified in case of a signal). Must contain exactly one item. - items: - $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - filters: - description: >- - Additional queries to filter matched events before they are - processed. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message in markdown format for generated findings and signals. - example: | - #Description - Explanation of the rule. - - #Remediation - How to fix the security issue. - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/CloudConfigurationRuleOptions' - tags: - description: Tags for generated findings and signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/CloudConfigurationRuleType' - required: - - name - - isEnabled - - options - - complianceSignalOptions - - cases - - message - type: object - SecurityMonitoringSuppressionUpdateData: - description: The new suppression properties; partial updates are supported. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSuppressionUpdateAttributes' - type: - $ref: '#/components/schemas/SecurityMonitoringSuppressionType' - required: - - type - - attributes - type: object - ResponseMetaAttributes: - description: Object describing meta attributes of response. - properties: - page: - $ref: '#/components/schemas/Pagination' - type: object - SecurityMonitoringStandardRuleResponse: - description: Rule. - properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - createdAt: - description: When the rule was created, timestamp in milliseconds. - format: int64 - type: integer - creationAuthorId: - description: User ID of the user who created the rule. - format: int64 - type: integer - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - defaultTags: - description: Default Tags for default rules (included in tags) - example: - - security:attacks - items: - description: Default Tag. - type: string - type: array - deprecationDate: - description: When the rule will be deprecated, timestamp in milliseconds. - format: int64 - type: integer - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - type: boolean - id: - description: The ID of the rule. - type: string - isDefault: - description: Whether the rule is included by default. - type: boolean - isDeleted: - description: Whether the rule has been deleted. - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: The name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCase' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeRead' - updateAuthorId: - description: User ID of the user who updated the rule. - format: int64 - type: integer - updatedAt: - description: The date the rule was last updated, in milliseconds. - format: int64 - type: integer - version: - description: The version of the rule. - format: int64 - type: integer - type: object - SecurityMonitoringSignalRuleResponse: - description: Rule. - properties: - cases: - description: Cases for generating signals. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCase' - type: array - createdAt: - description: When the rule was created, timestamp in milliseconds. - format: int64 - type: integer - creationAuthorId: - description: User ID of the user who created the rule. - format: int64 - type: integer - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - deprecationDate: - description: When the rule will be deprecated, timestamp in milliseconds. - format: int64 - type: integer - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - type: boolean - id: - description: The ID of the rule. - type: string - isDefault: - description: Whether the rule is included by default. - type: boolean - isDeleted: - description: Whether the rule has been deleted. - type: boolean - isEnabled: - description: Whether the rule is enabled. - type: boolean - message: - description: Message for generated signals. - type: string - name: - description: The name of the rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleResponseQuery' - type: array - tags: - description: Tags for generated signals. - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - updateAuthorId: - description: User ID of the user who updated the rule. - format: int64 - type: integer - version: - description: The version of the rule. - format: int64 - type: integer - type: object - SecurityMonitoringStandardRulePayload: - description: The payload of a rule. - properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeCreate' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringSignalRulePayload: - description: The payload of a signal correlation rule. - properties: - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting signals which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - type: array - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringSignalRuleType' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringRuleTestPayload: - description: Test a rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleTestPayload' - SecurityMonitoringRuleQueryPayload: - description: Payload to test a rule query with the expected result. - properties: - expectedResult: - description: Expected result of the test. - example: true - type: boolean - index: - description: Index of the query under test. - example: 0 - format: int64 - minimum: 0 - type: integer - payload: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryPayloadData' - type: object - CloudConfigurationRulePayload: - description: The payload of a cloud configuration rule. - properties: - cases: - description: > - Description of generated findings and signals (severity and channels - to be notified in case of a signal). Must contain exactly one item. - items: - $ref: '#/components/schemas/CloudConfigurationRuleCaseCreate' - type: array - complianceSignalOptions: - $ref: '#/components/schemas/CloudConfigurationRuleComplianceSignalOptions' - customMessage: - description: >- - Custom/Overridden message for generated signals (used in case of - Default rule update). - type: string - customName: - description: >- - Custom/Overridden name of the rule (used in case of Default rule - update). - type: string - filters: - description: >- - Additional queries to filter matched events before they are - processed. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message in markdown format for generated findings and signals. - example: | - #Description - Explanation of the rule. - - #Remediation - How to fix the security issue. - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/CloudConfigurationRuleOptions' - tags: - description: Tags for generated findings and signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - type: - $ref: '#/components/schemas/CloudConfigurationRuleType' - required: - - name - - isEnabled - - options - - complianceSignalOptions - - cases - - message - type: object - CalculatedField: - description: Calculated field. - properties: - expression: - description: Expression. - example: '@request_end_timestamp - @request_start_timestamp' - type: string - name: - description: Field name. - example: response_time - type: string - required: - - name - - expression - type: object - SecurityMonitoringRuleCase: - description: Case when signal is generated. - properties: - actions: - description: Action to perform for each rule case. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' - type: array - condition: - description: >- - A rule case contains logical operations (`>`,`>=`, `&&`, `||`) to - determine if a signal should be generated - - based on the event counts in the previously defined queries. - type: string - customStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - type: object - CloudConfigurationRuleComplianceSignalOptions: - description: >- - How to generate compliance signals. Useful for cloud_configuration rules - only. - properties: - defaultActivationStatus: - description: The default activation status. - nullable: true - type: boolean - defaultGroupByFields: - description: The default group by fields. - items: - type: string - nullable: true - type: array - userActivationStatus: - description: Whether signals will be sent. - nullable: true - type: boolean - userGroupByFields: - description: Fields to use to group findings by when sending signals. - items: - type: string - nullable: true - type: array - type: object - SecurityMonitoringFilter: - description: The rule's suppression filter. - properties: - action: - $ref: '#/components/schemas/SecurityMonitoringFilterAction' - query: - description: Query for selecting logs to apply the filtering action. - type: string - type: object - SecurityMonitoringRuleOptions: - description: Options. - properties: - complianceRuleOptions: - $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' - decreaseCriticalityBasedOnEnv: - $ref: >- - #/components/schemas/SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv - detectionMethod: - $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' - evaluationWindow: - $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' - hardcodedEvaluatorType: - $ref: '#/components/schemas/SecurityMonitoringRuleHardcodedEvaluatorType' - impossibleTravelOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions' - keepAlive: - $ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive' - maxSignalDuration: - $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' - newValueOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' - thirdPartyRuleOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' - type: object - SecurityMonitoringRuleQuery: - description: Query for matching rule. - oneOf: - - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - - $ref: '#/components/schemas/SecurityMonitoringSignalRuleQuery' - SecurityMonitoringReferenceTable: - description: Reference tables used in the queries. - properties: - checkPresence: - description: Whether to include or exclude the matched values. - type: boolean - columnName: - description: The name of the column in the reference table. - type: string - logFieldPath: - description: The field in the log to match against the reference table. - type: string - ruleQueryName: - description: The name of the query to apply the reference table to. - type: string - tableName: - description: The name of the reference table. - type: string - type: object - SecurityMonitoringSchedulingOptions: - description: >- - Options for scheduled rules. When this field is present, the rule runs - based on the schedule. When absent, it runs real-time on ingested logs. - nullable: true - properties: - rrule: - description: >- - Schedule for the rule queries, written in RRULE syntax. See - [RFC](https://icalendar.org/iCalendar-RFC-5545/3-8-5-3-recurrence-rule.html) - for syntax reference. - example: FREQ=HOURLY;INTERVAL=1; - type: string - start: - description: Start date for the schedule, in ISO 8601 format without timezone. - example: '2025-07-14T12:00:00' - type: string - timezone: - description: >- - Time zone of the start date, in the [tz - database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones) - format. - example: America/New_York - type: string - type: object - SecurityMonitoringThirdPartyRuleCase: - description: Case when signal is generated by a third party rule. - properties: - customStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - query: - description: A query to map a third party event to this case. - type: string - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - type: object - GetRuleVersionHistoryData: - description: Data for the rule version history. - properties: - attributes: - $ref: '#/components/schemas/RuleVersionHistory' - id: - description: ID of the rule. - type: string - type: - $ref: '#/components/schemas/GetRuleVersionHistoryDataType' - type: object - SecurityMonitoringSignalsSort: - description: The sort parameters used for querying security signals. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - SecurityMonitoringSignal: - description: Object description of a security signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalAttributes' - id: - description: The unique ID of the security signal. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/SecurityMonitoringSignalType' - type: object - SecurityMonitoringSignalsListResponseLinks: - description: Links attributes. - properties: - next: - description: >- - The link for the next set of results. **Note**: The request can also - be made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/security_monitoring/signals?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SecurityMonitoringSignalsListResponseMeta: - description: Meta attributes. - properties: - page: - $ref: '#/components/schemas/SecurityMonitoringSignalsListResponseMetaPage' - type: object - SecurityMonitoringSignalListRequestFilter: - description: Search filters for listing security signals. - properties: - from: - description: The minimum timestamp for requested security signals. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - query: - description: Search query for listing security signals. - example: security:attack status:high - type: string - to: - description: The maximum timestamp for requested security signals. - example: '2019-01-03T09:42:36.320Z' - format: date-time - type: string - type: object - SecurityMonitoringSignalListRequestPage: - description: The paging attributes for listing security signals. - properties: - cursor: - description: A list of results using the cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: The maximum number of security signals in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - SecurityMonitoringSignalAssigneeUpdateData: - description: Data containing the patch for changing the assignee of a signal. - properties: - attributes: - $ref: >- - #/components/schemas/SecurityMonitoringSignalAssigneeUpdateAttributes - required: - - attributes - type: object - SecurityMonitoringSignalTriageUpdateData: - description: Data containing the updated triage attributes of the signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalTriageAttributes' - id: - description: The unique ID of the security signal. - type: string - type: - $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' - type: object - SecurityMonitoringSignalIncidentsUpdateData: - description: >- - Data containing the patch for changing the related incidents of a - signal. - properties: - attributes: - $ref: >- - #/components/schemas/SecurityMonitoringSignalIncidentsUpdateAttributes - required: - - attributes - type: object - SecurityMonitoringSignalStateUpdateData: - description: Data containing the patch for changing the state of a signal. - properties: - attributes: - $ref: '#/components/schemas/SecurityMonitoringSignalStateUpdateAttributes' - id: - description: The unique ID of the security signal. - type: - $ref: '#/components/schemas/SecurityMonitoringSignalMetadataType' - required: - - attributes - type: object - SensitiveDataScannerGetConfigResponseData: - description: Response data related to the scanning groups. - properties: - attributes: - additionalProperties: {} - description: Attributes of the Sensitive Data configuration. - type: object - id: - description: ID of the configuration. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' - type: object - SensitiveDataScannerGetConfigIncludedArray: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/SensitiveDataScannerGetConfigIncludedItem' - type: array - SensitiveDataScannerMeta: - description: Meta response containing information about the API. - properties: - count_limit: - description: Maximum number of scanning rules allowed for the org. - format: int64 - type: integer - group_count_limit: - description: Maximum number of scanning groups allowed for the org. - format: int64 - type: integer - has_highlight_enabled: - default: true - deprecated: true - description: >- - (Deprecated) Whether or not scanned events are highlighted in Logs - or RUM for the org. - type: boolean - has_multi_pass_enabled: - deprecated: true - description: (Deprecated) Whether or not scanned events have multi-pass enabled. - type: boolean - is_pci_compliant: - description: >- - Whether or not the org is compliant to the payment card industry - standard. - type: boolean - version: - description: Version of the API. - example: 0 - format: int64 - minimum: 0 - type: integer - type: object - SensitiveDataScannerReorderConfig: - description: Data related to the reordering of scanning groups. - properties: - id: - description: ID of the configuration. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' - type: object - SensitiveDataScannerMetaVersionOnly: - description: Meta payload containing information about the API. - properties: - version: - description: Version of the API (optional). - example: 0 - format: int64 - minimum: 0 - type: integer - type: object - SensitiveDataScannerGroupCreate: - description: Data related to the creation of a group. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - required: - - type - - attributes - type: object - SensitiveDataScannerGroupResponse: - description: Response data related to the creation of a group. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerGroupUpdate: - description: Data related to the update of a group. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerRuleCreate: - description: Data related to the creation of a rule. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - required: - - type - - attributes - - relationships - type: object - SensitiveDataScannerRuleResponse: - description: Response data related to the creation of a rule. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerRuleUpdate: - description: Data related to the update of a rule. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerStandardPatternsResponse: - description: List Standard patterns response. - items: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternsResponseItem' - type: array - HistoricalJobResponseData: - description: Historical job response data. - properties: - attributes: - $ref: '#/components/schemas/HistoricalJobResponseAttributes' - id: - description: ID of the job. - type: string - type: - $ref: '#/components/schemas/HistoricalJobDataType' - type: object - HistoricalJobListMeta: - description: Metadata about the list of jobs. - properties: - totalCount: - description: Number of jobs in the list. - format: int32 - maximum: 2147483647 - type: integer - type: object - RunHistoricalJobRequestData: - description: Data for running a historical job request. - properties: - attributes: - $ref: '#/components/schemas/RunHistoricalJobRequestAttributes' - type: - $ref: '#/components/schemas/RunHistoricalJobRequestDataType' - type: object - JobCreateResponseData: - description: The definition of `JobCreateResponseData` object. - properties: - id: - description: ID of the created job. - type: string - type: - $ref: '#/components/schemas/HistoricalJobDataType' - type: object - ConvertJobResultsToSignalsData: - description: Data for converting historical job results to signals. - properties: - attributes: - $ref: '#/components/schemas/ConvertJobResultsToSignalsAttributes' - type: - $ref: '#/components/schemas/ConvertJobResultsToSignalsDataType' - type: object - AwsScanOptionsAttributes: - description: Attributes for the AWS scan options. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - type: object - AwsScanOptionsType: - default: aws_scan_options - description: The type of the resource. The value should always be `aws_scan_options`. - enum: - - aws_scan_options - example: aws_scan_options - type: string - x-enum-varnames: - - AWS_SCAN_OPTIONS - AwsScanOptionsCreateAttributes: - description: Attributes for the AWS scan options to create. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - required: - - lambda - - sensitive_data - - vuln_containers_os - - vuln_host_os - type: object - AwsAccountId: - description: The ID of the AWS account. - example: '123456789012' - type: string - AwsScanOptionsUpdateAttributes: - description: Attributes for the AWS scan options to update. - properties: - lambda: - description: Indicates if scanning of Lambda functions is enabled. - example: true - type: boolean - sensitive_data: - description: Indicates if scanning for sensitive data is enabled. - example: false - type: boolean - vuln_containers_os: - description: Indicates if scanning for vulnerabilities in containers is enabled. - example: true - type: boolean - vuln_host_os: - description: Indicates if scanning for vulnerabilities in hosts is enabled. - example: true - type: boolean - type: object - AwsOnDemandAttributes: - description: Attributes for the AWS on demand task. - properties: - arn: - description: The arn of the resource to scan. - example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba - type: string - assigned_at: - description: >- - Specifies the assignment timestamp if the task has been already - assigned to a scanner. - example: '2025-02-11T18:25:04.550564Z' - type: string - created_at: - description: The task submission timestamp. - example: '2025-02-11T18:13:24.576915Z' - type: string - status: - description: >- - Indicates the status of the task. - - QUEUED: the task has been submitted successfully and the resource - has not been assigned to a scanner yet. - - ASSIGNED: the task has been assigned. - - ABORTED: the scan has been aborted after a period of time due to - technical reasons, such as resource not found, insufficient - permissions, or the absence of a configured scanner. - example: QUEUED - type: string - type: object - AwsOnDemandType: - default: aws_resource - description: >- - The type of the on demand task. The value should always be - `aws_resource`. - enum: - - aws_resource - example: aws_resource - type: string - x-enum-varnames: - - AWS_RESOURCE - AwsOnDemandCreateAttributes: - description: Attributes for the AWS on demand task. - properties: - arn: - description: >- - The arn of the resource to scan. Agentless supports the scan of EC2 - instances, lambda functions, AMI, ECR, RDS and S3 buckets. - example: arn:aws:ec2:us-east-1:727000456123:instance/i-0eabb50529b67a1ba - type: string - required: - - arn - type: object - CustomFrameworkDataAttributes: - description: Framework Data Attributes. - properties: - description: - description: Framework Description - type: string - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - type: string - name: - description: Framework Name - example: security-framework - type: string - requirements: - description: Framework Requirements - items: - $ref: '#/components/schemas/CustomFrameworkRequirement' - type: array - version: - description: Framework Version - example: '2' - type: string - required: - - handle - - version - - name - - requirements - type: object - CustomFrameworkType: - default: custom_framework - description: The type of the resource. The value must be `custom_framework`. - enum: - - custom_framework - example: custom_framework - type: string - x-enum-varnames: - - CUSTOM_FRAMEWORK - CustomFrameworkDataHandleAndVersion: - description: Framework Handle and Version. - properties: - handle: - description: Framework Handle - example: sec2 - type: string - version: - description: Framework Version - example: '2' - type: string - type: object - CustomFrameworkWithoutRequirements: - description: Framework without requirements. - properties: - description: - description: Framework Description - example: this is a security description - type: string - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - example: https://example.com/icon.png - type: string - name: - description: Framework Name - example: security-framework - type: string - version: - description: Framework Version - example: '2' - type: string - required: - - handle - - version - - name - type: object - FullCustomFrameworkDataAttributes: - description: Full Framework Data Attributes. - properties: - handle: - description: Framework Handle - example: sec2 - type: string - icon_url: - description: Framework Icon URL - example: https://example.com/icon.png - type: string - name: - description: Framework Name - example: security-framework - type: string - requirements: - description: Framework Requirements - items: - $ref: '#/components/schemas/CustomFrameworkRequirement' - type: array - version: - description: Framework Version - example: '2' - type: string - required: - - handle - - version - - name - - requirements - type: object - ResourceFilterAttributes: - description: Attributes of a resource filter. - example: - aws: - '123456789': - - environment:production - - team:devops - azure: - sub-001: - - app:frontend - gcp: - project-abc: - - region:us-central1 - properties: - cloud_provider: - additionalProperties: - additionalProperties: - items: - description: Tag filter in format "key:value" - example: environment:production - type: string - type: array - type: object - description: >- - A map of cloud provider names (e.g., "aws", "gcp", "azure") to a map - of account/resource IDs and their associated tag filters. - type: object - uuid: - description: The UUID of the resource filter. - type: string - required: - - cloud_provider - type: object - ResourceFilterRequestType: - description: Constant string to identify the request type. - enum: - - csm_resource_filter - example: csm_resource_filter - type: string - x-enum-varnames: - - CSM_RESOURCE_FILTER - CsmAgentsAttributes: - description: A CSM Agent returned by the API. - properties: - agent_version: - description: Version of the Datadog Agent. - type: string - aws_fargate: - description: AWS Fargate details. - type: string - cluster_name: - description: List of cluster names associated with the Agent. - items: - type: string - type: array - datadog_agent: - description: Unique identifier for the Datadog Agent. - type: string - ecs_fargate_task_arn: - description: ARN of the ECS Fargate task. - type: string - envs: - description: List of environments associated with the Agent. - items: - type: string - nullable: true - type: array - host_id: - description: ID of the host. - format: int64 - type: integer - hostname: - description: Name of the host. - type: string - install_method_installer_version: - description: Version of the installer used for installing the Datadog Agent. - type: string - install_method_tool: - description: Tool used for installing the Datadog Agent. - type: string - is_csm_vm_containers_enabled: - description: Indicates if CSM VM Containers is enabled. - nullable: true - type: boolean - is_csm_vm_hosts_enabled: - description: Indicates if CSM VM Hosts is enabled. - nullable: true - type: boolean - is_cspm_enabled: - description: Indicates if CSPM is enabled. - nullable: true - type: boolean - is_cws_enabled: - description: Indicates if CWS is enabled. - nullable: true - type: boolean - is_cws_remote_configuration_enabled: - description: Indicates if CWS Remote Configuration is enabled. - nullable: true - type: boolean - is_remote_configuration_enabled: - description: Indicates if Remote Configuration is enabled. - nullable: true - type: boolean - os: - description: Operating system of the host. - type: string - type: object - CSMAgentsType: - default: datadog_agent - description: The type of the resource. The value should always be `datadog_agent`. - enum: - - datadog_agent - example: datadog_agent - type: string - x-enum-varnames: - - DATADOG_AGENT - CsmCloudAccountsCoverageAnalysisAttributes: - description: CSM Cloud Accounts Coverage Analysis attributes. - properties: - aws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - azure_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - gcp_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - CsmHostsAndContainersCoverageAnalysisAttributes: - description: CSM Hosts and Containers Coverage Analysis attributes. - properties: - cspm_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - cws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - vm_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - CsmServerlessCoverageAnalysisAttributes: - description: CSM Serverless Resources Coverage Analysis attributes. - properties: - cws_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - org_id: - description: The ID of your organization. - example: 123456 - format: int64 - type: integer - total_coverage: - $ref: '#/components/schemas/CsmCoverageAnalysis' - type: object - Finding: - description: A single finding without the message and resource configuration. - properties: - attributes: - $ref: '#/components/schemas/FindingAttributes' - id: - $ref: '#/components/schemas/FindingID' - type: - $ref: '#/components/schemas/FindingType' - type: object - ListFindingsPage: - additionalProperties: false - description: Pagination and findings count information. - properties: - cursor: - description: The cursor used to paginate requests. - example: >- - eyJhZnRlciI6IkFRQUFBWWJiaEJXQS1OY1dqUUFBQUFCQldXSmlhRUpYUVVGQlJFSktkbTlDTUdaWFRVbDNRVUUiLCJ2YWx1ZXMiOlsiY3JpdGljYWwiXX0= - type: string - total_filtered_count: - description: The total count of findings after the filter has been applied. - example: 213 - format: int64 - type: integer - type: object - BulkMuteFindingsRequestAttributes: - additionalProperties: false - description: The mute properties to be updated. - properties: - mute: - $ref: '#/components/schemas/BulkMuteFindingsRequestProperties' - required: - - mute - type: object - BulkMuteFindingsRequestMeta: - description: Meta object containing the findings to be updated. - properties: - findings: - description: Array of findings. - items: - $ref: '#/components/schemas/BulkMuteFindingsRequestMetaFindings' - type: array - type: object - FindingType: - default: finding - description: The JSON:API type for findings. - enum: - - finding - example: finding - type: string - x-enum-varnames: - - FINDING - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - DetailedFindingAttributes: - description: The JSON:API attributes of the detailed finding. - properties: - evaluation: - $ref: '#/components/schemas/FindingEvaluation' - evaluation_changed_at: - $ref: '#/components/schemas/FindingEvaluationChangedAt' - message: - description: The remediation message for this finding. - example: >- - ## Remediation - - - ### From the console - - - 1. Go to Storage Account - - 2. For each Storage Account, navigate to Data Protection - - 3. Select Set soft delete enabled and enter the number of days to - retain soft deleted data. - type: string - mute: - $ref: '#/components/schemas/FindingMute' - resource: - $ref: '#/components/schemas/FindingResource' - resource_configuration: - description: The resource configuration for this finding. - type: object - resource_discovery_date: - $ref: '#/components/schemas/FindingResourceDiscoveryDate' - resource_type: - $ref: '#/components/schemas/FindingResourceType' - rule: - $ref: '#/components/schemas/FindingRule' - status: - $ref: '#/components/schemas/FindingStatus' - tags: - $ref: '#/components/schemas/FindingTags' - type: object - FindingID: - description: The unique ID for this finding. - example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw== - type: string - DetailedFindingType: - default: detailed_finding - description: >- - The JSON:API type for findings that have the message and resource - configuration. - enum: - - detailed_finding - example: detailed_finding - type: string - x-enum-varnames: - - DETAILED_FINDING - AssetAttributes: - description: The JSON:API attributes of the asset. - properties: - arch: - description: Asset architecture. - example: arm64 - type: string - environments: - description: List of environments where the asset is deployed. - example: - - staging - items: - example: staging - type: string - type: array - name: - description: Asset name. - example: github.com/DataDog/datadog-agent.git - type: string - operating_system: - $ref: '#/components/schemas/AssetOperatingSystem' - risks: - $ref: '#/components/schemas/AssetRisks' - teams: - description: List of teams that own the asset. - example: - - compute - items: - example: compute - type: string - type: array - type: - $ref: '#/components/schemas/AssetType' - version: - $ref: '#/components/schemas/AssetVersion' - required: - - name - - type - - risks - - environments - type: object - AssetEntityType: - description: The JSON:API type. - enum: - - assets - example: assets - type: string - x-enum-varnames: - - ASSETS - SBOMAttributes: - description: The JSON:API attributes of the SBOM. - properties: - bomFormat: - description: >- - Specifies the format of the BOM. This helps to identify the file as - CycloneDX since BOM do not have a filename convention nor does JSON - schema support namespaces. This value MUST be `CycloneDX`. - example: CycloneDX - type: string - components: - description: A list of software and hardware components. - items: - $ref: '#/components/schemas/SBOMComponent' - type: array - dependencies: - description: List of dependencies between components of the SBOM. - items: - $ref: '#/components/schemas/SBOMComponentDependency' - type: array - metadata: - $ref: '#/components/schemas/SBOMMetadata' - serialNumber: - description: >- - Every BOM generated has a unique serial number, even if the contents - of the BOM have not changed overt time. The serial number follows - [RFC-4122](https://datatracker.ietf.org/doc/html/rfc4122) - example: urn:uuid:f7119d2f-1vgh-24b5-91f0-12010db72da7 - type: string - specVersion: - $ref: '#/components/schemas/SpecVersion' - version: - description: It increments when a BOM is modified. The default value is 1. - example: 1 - format: int64 - type: integer - required: - - bomFormat - - specVersion - - components - - metadata - - serialNumber - - version - - dependencies - type: object - SBOMType: - description: The JSON:API type. - enum: - - sboms - example: sboms - type: string - x-enum-varnames: - - SBOMS - NotificationRuleAttributes: - description: Attributes of the notification rule. - properties: - created_at: - $ref: '#/components/schemas/Date' - created_by: - $ref: '#/components/schemas/RuleUser' - enabled: - $ref: '#/components/schemas/Enabled' - modified_at: - $ref: '#/components/schemas/Date' - modified_by: - $ref: '#/components/schemas/RuleUser' - name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - version: - $ref: '#/components/schemas/Version' - required: - - created_at - - created_by - - enabled - - modified_at - - modified_by - - name - - selectors - - targets - - version - type: object - ID: - description: The ID of a notification rule. - example: aaa-bbb-ccc - type: string - NotificationRulesType: - description: The rule type associated to notification rules. - enum: - - notification_rules - example: notification_rules - type: string - x-enum-varnames: - - NOTIFICATION_RULES - CreateNotificationRuleParametersDataAttributes: - description: Attributes of the notification rule create request. - properties: - enabled: - $ref: '#/components/schemas/Enabled' - name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - required: - - selectors - - name - - targets - type: object - PatchNotificationRuleParametersDataAttributes: - description: >- - Attributes of the notification rule patch request. It is required to - update the version of the rule when patching it. - properties: - enabled: - $ref: '#/components/schemas/Enabled' - name: - $ref: '#/components/schemas/RuleName' - selectors: - $ref: '#/components/schemas/Selectors' - targets: - $ref: '#/components/schemas/Targets' - time_aggregation: - $ref: '#/components/schemas/TimeAggregation' - version: - $ref: '#/components/schemas/Version' - type: object - VulnerabilityAttributes: - description: The JSON:API attributes of the vulnerability. - properties: - advisory_id: - description: Vulnerability advisory ID. - example: TRIVY-CVE-2023-0615 - type: string - code_location: - $ref: '#/components/schemas/CodeLocation' - cve_list: - description: Vulnerability CVE list. - example: - - CVE-2023-0615 - items: - example: CVE-2023-0615 - type: string - type: array - cvss: - $ref: '#/components/schemas/VulnerabilityCvss' - dependency_locations: - $ref: '#/components/schemas/VulnerabilityDependencyLocations' - description: - description: Vulnerability description. - example: >- - LDAP Injection is a security vulnerability that occurs when - untrusted user input is improperly handled and directly incorporated - into LDAP queries without appropriate sanitization or validation. - This vulnerability enables attackers to manipulate LDAP queries and - potentially gain unauthorized access, modify data, or extract - sensitive information from the directory server. By exploiting the - LDAP injection vulnerability, attackers can execute malicious - commands, bypass authentication mechanisms, and perform unauthorized - actions within the directory service. - type: string - ecosystem: - $ref: '#/components/schemas/VulnerabilityEcosystem' - exposure_time: - description: Vulnerability exposure time in seconds. - example: 5618604 - format: int64 - type: integer - first_detection: - description: >- - First detection of the vulnerability in [RFC - 3339](https://datatracker.ietf.org/doc/html/rfc3339) format - example: '2024-09-19T21:23:08.000Z' - type: string - fix_available: - description: Whether the vulnerability has a remediation or not. - example: false - type: boolean - language: - description: Vulnerability language. - example: ubuntu - type: string - last_detection: - description: >- - Last detection of the vulnerability in [RFC - 3339](https://datatracker.ietf.org/doc/html/rfc3339) format - example: '2024-09-01T21:23:08.000Z' - type: string - library: - $ref: '#/components/schemas/Library' - origin: - description: Vulnerability origin. - example: - - agentless-scanner - items: - example: agentless-scanner - type: string - type: array - remediations: - description: List of remediations. - items: - $ref: '#/components/schemas/Remediation' - type: array - repo_digests: - description: >- - Vulnerability `repo_digest` list (when the vulnerability is related - to `Image` asset). - items: - example: >- - sha256:0ae7da091191787229d321e3638e39c319a97d6e20f927d465b519d699215bf7 - type: string - type: array - risks: - $ref: '#/components/schemas/VulnerabilityRisks' - status: - $ref: '#/components/schemas/VulnerabilityStatus' - title: - description: Vulnerability title. - example: LDAP Injection - type: string - tool: - $ref: '#/components/schemas/VulnerabilityTool' - type: - $ref: '#/components/schemas/VulnerabilityType' - required: - - type - - cvss - - status - - tool - - title - - description - - cve_list - - risks - - language - - first_detection - - last_detection - - exposure_time - - remediations - - fix_available - - origin - type: object - VulnerabilityRelationships: - description: Related entities object. - properties: - affects: - $ref: '#/components/schemas/VulnerabilityRelationshipsAffects' - required: - - affects - type: object - VulnerabilitiesType: - description: The JSON:API type. - enum: - - vulnerabilities - example: vulnerabilities - type: string - x-enum-varnames: - - VULNERABILITIES - CloudWorkloadSecurityAgentRuleAttributes: - description: A Cloud Workload Security Agent rule returned by the API - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - agentConstraint: - description: The version of the Agent - type: string - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - category: - description: The category of the Agent rule - example: Process Activity - type: string - creationAuthorUuId: - description: The ID of the user who created the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - creationDate: - description: When the Agent rule was created, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - creator: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleCreatorAttributes' - defaultRule: - description: Whether the rule is included by default - example: false - type: boolean - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on - items: - type: string - type: array - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - name: - description: The name of the Agent rule - example: my_agent_rule - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - updateAuthorUuId: - description: The ID of the user who updated the rule - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - updateDate: - description: Timestamp in milliseconds when the Agent rule was last updated - example: 1624366480320 - format: int64 - type: integer - updatedAt: - description: When the Agent rule was last updated, timestamp in milliseconds - example: 1624366480320 - format: int64 - type: integer - updater: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleUpdaterAttributes' - version: - description: The version of the Agent rule - example: 23 - format: int64 - type: integer - type: object - CloudWorkloadSecurityAgentRuleType: - default: agent_rule - description: The type of the resource, must always be `agent_rule` - enum: - - agent_rule - example: agent_rule - type: string - x-enum-varnames: - - AGENT_RULE - CloudWorkloadSecurityAgentRuleCreateAttributes: - description: Create a new Cloud Workload Security Agent rule. - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - description: - description: The description of the Agent rule. - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule. - example: exec.file.name == "sh" - type: string - filters: - description: The platforms the Agent rule is supported on - items: - type: string - type: array - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - name: - description: The name of the Agent rule. - example: my_agent_rule - type: string - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - required: - - name - - expression - type: object - CloudWorkloadSecurityAgentRuleUpdateAttributes: - description: Update an existing Cloud Workload Security Agent rule - properties: - actions: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActions' - blocking: - description: The blocking policies that the rule belongs to - items: - type: string - type: array - description: - description: The description of the Agent rule - example: My Agent rule - type: string - disabled: - description: The disabled policies that the rule belongs to - items: - type: string - type: array - enabled: - description: Whether the Agent rule is enabled - example: true - type: boolean - expression: - description: The SECL expression of the Agent rule - example: exec.file.name == "sh" - type: string - monitoring: - description: The monitoring policies that the rule belongs to - items: - type: string - type: array - policy_id: - description: The ID of the policy where the Agent rule is saved - example: a8c8e364-6556-434d-b798-a4c23de29c0b - type: string - product_tags: - description: The list of product tags associated with the rule - items: - type: string - type: array - type: object - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3dd-0uc-h1s - type: string - SecurityFilterAttributes: - description: The object describing a security filter. - properties: - exclusion_filters: - description: The list of exclusion filters applied in this security filter. - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilterResponse' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_builtin: - description: Whether the security filter is the built-in filter. - example: false - type: boolean - is_enabled: - description: Whether the security filter is enabled. - example: false - type: boolean - name: - description: The security filter name. - example: Custom security filter - type: string - query: - description: >- - The security filter query. Logs accepted by this query will be - accepted by this filter. - example: service:api - type: string - version: - description: The version of the security filter. - example: 1 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityFilterID: - description: The ID of the security filter. - example: 3dd-0uc-h1s - type: string - SecurityFilterType: - default: security_filters - description: The type of the resource. The value should always be `security_filters`. - enum: - - security_filters - example: security_filters - type: string - x-enum-varnames: - - SECURITY_FILTERS - SecurityFilterCreateAttributes: - description: Object containing the attributes of the security filter to be created. - properties: - exclusion_filters: - description: Exclusion filters to exclude some logs from the security filter. - example: - - name: Exclude staging - query: source:staging - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilter' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_enabled: - description: Whether the security filter is enabled. - example: true - type: boolean - name: - description: The name of the security filter. - example: Custom security filter - type: string - query: - description: The query of the security filter. - example: service:api - type: string - required: - - name - - query - - exclusion_filters - - filtered_data_type - - is_enabled - type: object - SecurityFilterUpdateAttributes: - description: The security filters properties to be updated. - properties: - exclusion_filters: - description: Exclusion filters to exclude some logs from the security filter. - example: [] - items: - $ref: '#/components/schemas/SecurityFilterExclusionFilter' - type: array - filtered_data_type: - $ref: '#/components/schemas/SecurityFilterFilteredDataType' - is_enabled: - description: Whether the security filter is enabled. - example: true - type: boolean - name: - description: The name of the security filter. - example: Custom security filter - type: string - query: - description: The query of the security filter. - example: service:api - type: string - version: - description: The version of the security filter to update. - example: 1 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityMonitoringSuppressionAttributes: - description: The attributes of the suppression rule. - properties: - creation_date: - description: >- - A Unix millisecond timestamp given the creation date of the - suppression rule. - format: int64 - type: integer - creator: - $ref: '#/components/schemas/SecurityMonitoringUser' - data_exclusion_query: - description: >- - An exclusion query on the input data of the security rules, which - could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any - detection rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. - type: string - editable: - description: Whether the suppression rule is editable. - example: true - type: boolean - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: >- - A Unix millisecond timestamp giving an expiration date for the - suppression rule. After this date, it won't suppress signals - anymore. - example: 1703187336000 - format: int64 - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: >- - The rule query of the suppression rule, with the same syntax as the - search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string - start_date: - description: >- - A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. - example: 1703187336000 - format: int64 - type: integer - suppression_query: - description: >- - The suppression query of the suppression rule. If a signal matches - this query, it is suppressed and not triggered. Same syntax as the - queries to search signals in the signal explorer. - example: env:staging status:low - type: string - update_date: - description: >- - A Unix millisecond timestamp given the update date of the - suppression rule. - format: int64 - type: integer - updater: - $ref: '#/components/schemas/SecurityMonitoringUser' - version: - description: >- - The version of the suppression rule; it starts at 1, and is - incremented at each update. - example: 42 - format: int32 - maximum: 2147483647 - type: integer - type: object - SecurityMonitoringSuppressionID: - description: The ID of the suppression rule. - example: 3dd-0uc-h1s - type: string - SecurityMonitoringSuppressionType: - default: suppressions - description: The type of the resource. The value should always be `suppressions`. - enum: - - suppressions - example: suppressions - type: string - x-enum-varnames: - - SUPPRESSIONS - SecurityMonitoringSuppressionCreateAttributes: - description: Object containing the attributes of the suppression rule to be created. - properties: - data_exclusion_query: - description: >- - An exclusion query on the input data of the security rules, which - could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any - detection rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. - type: string - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: >- - A Unix millisecond timestamp giving an expiration date for the - suppression rule. After this date, it won't suppress signals - anymore. - example: 1703187336000 - format: int64 - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: >- - The rule query of the suppression rule, with the same syntax as the - search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string - start_date: - description: >- - A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. - example: 1703187336000 - format: int64 - type: integer - suppression_query: - description: >- - The suppression query of the suppression rule. If a signal matches - this query, it is suppressed and is not triggered. It uses the same - syntax as the queries to search signals in the Signals Explorer. - example: env:staging status:low - type: string - required: - - name - - enabled - - rule_query - type: object - SecurityMonitoringRuleCaseCreate: - description: Case when signal is generated. - properties: - actions: - description: Action to perform for each rule case. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseAction' - type: array - condition: - description: >- - A case contains logical operations (`>`,`>=`, `&&`, `||`) to - determine if a signal should be generated - - based on the event counts in the previously defined queries. - type: string - name: - description: Name of the case. - type: string - notifications: - description: Notification targets. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - SecurityMonitoringStandardRuleQuery: - description: Query for matching rule. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - customQueryExtension: - description: Query extension to append to the logs query. - example: a > 3 - type: string - dataSource: - $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - hasOptionalGroupByFields: - default: false - description: >- - When false, events without a group-by value are ignored by the rule. - When true, events with missing group-by fields are processed with - `N/A`, replacing the missing values. - example: false - type: boolean - index: - description: >- - **This field is currently unstable and might be removed in a minor - version upgrade.** - - The index to run the query on, if the `dataSource` is `logs`. Only - used for scheduled rules - in other words, when the - `schedulingOptions` field is present in the rule payload. - type: string - metric: - deprecated: true - description: >- - (Deprecated) The target field to aggregate over when using the sum - or max - - aggregations. `metrics` field should be used instead. - type: string - metrics: - description: >- - Group of target fields to aggregate over when using the sum, max, - geo data, or new value aggregations. The sum, max, and geo data - aggregations only accept one value in this list, whereas the new - value aggregation accepts up to five values. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - query: - description: Query to run on logs. - example: a > 3 - type: string - type: object - SecurityMonitoringThirdPartyRuleCaseCreate: - description: Case when a signal is generated by a third party rule. - properties: - name: - description: Name of the case. - type: string - notifications: - description: Notification targets for each case. - items: - description: Notification. - type: string - type: array - query: - description: A query to map a third party event to this case. - type: string - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - SecurityMonitoringRuleTypeCreate: - description: The rule type. - enum: - - api_security - - application_security - - log_detection - - workload_security - type: string - x-enum-varnames: - - API_SECURITY - - APPLICATION_SECURITY - - LOG_DETECTION - - WORKLOAD_SECURITY - SecurityMonitoringSignalRuleQuery: - description: Query for matching rule on signals. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - correlatedByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - correlatedQueryIndex: - description: Index of the rule query used to retrieve the correlated field. - format: int32 - maximum: 9 - type: integer - metrics: - description: Group of target fields to aggregate over. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - ruleId: - description: Rule ID to match on signals. - example: org-ru1-e1d - type: string - required: - - ruleId - type: object - SecurityMonitoringSignalRuleType: - description: The rule type. - enum: - - signal_correlation - type: string - x-enum-varnames: - - SIGNAL_CORRELATION - CloudConfigurationRuleCaseCreate: - description: Description of signals. - properties: - notifications: - description: Notification targets for each rule case. - items: - description: Notification. - type: string - type: array - status: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - status - type: object - CloudConfigurationRuleOptions: - description: Options on cloud configuration rules. - properties: - complianceRuleOptions: - $ref: '#/components/schemas/CloudConfigurationComplianceRuleOptions' - required: - - complianceRuleOptions - type: object - CloudConfigurationRuleType: - description: The rule type. - enum: - - cloud_configuration - type: string - x-enum-varnames: - - CLOUD_CONFIGURATION - SecurityMonitoringSuppressionUpdateAttributes: - description: The suppression rule properties to be updated. - properties: - data_exclusion_query: - description: >- - An exclusion query on the input data of the security rules, which - could be logs, Agent events, or other types of data based on the - security rule. Events matching this query are ignored by any - detection rules referenced in the suppression rule. - example: source:cloudtrail account_id:12345 - type: string - description: - description: A description for the suppression rule. - example: This rule suppresses low-severity signals in staging environments. - type: string - enabled: - description: Whether the suppression rule is enabled. - example: true - type: boolean - expiration_date: - description: >- - A Unix millisecond timestamp giving an expiration date for the - suppression rule. After this date, it won't suppress signals - anymore. If unset, the expiration date of the suppression rule is - left untouched. If set to `null`, the expiration date is removed. - example: 1703187336000 - format: int64 - nullable: true - type: integer - name: - description: The name of the suppression rule. - example: Custom suppression - type: string - rule_query: - description: >- - The rule query of the suppression rule, with the same syntax as the - search bar for detection rules. - example: type:log_detection source:cloudtrail - type: string - start_date: - description: >- - A Unix millisecond timestamp giving the start date for the - suppression rule. After this date, it starts suppressing signals. If - unset, the start date of the suppression rule is left untouched. If - set to `null`, the start date is removed. - example: 1703187336000 - format: int64 - nullable: true - type: integer - suppression_query: - description: >- - The suppression query of the suppression rule. If a signal matches - this query, it is suppressed and not triggered. Same syntax as the - queries to search signals in the signal explorer. - example: env:staging status:low - type: string - version: - description: >- - The current version of the suppression. This is optional, but it can - help prevent concurrent modifications. - format: int32 - maximum: 2147483647 - type: integer - type: object - Pagination: - description: Pagination object. - properties: - total_count: - description: Total count. - format: int64 - type: integer - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - SecurityMonitoringRuleTypeRead: - description: The rule type. - enum: - - log_detection - - infrastructure_configuration - - workload_security - - cloud_configuration - - application_security - - api_security - type: string - x-enum-varnames: - - LOG_DETECTION - - INFRASTRUCTURE_CONFIGURATION - - WORKLOAD_SECURITY - - CLOUD_CONFIGURATION - - APPLICATION_SECURITY - - API_SECURITY - SecurityMonitoringSignalRuleResponseQuery: - description: Query for matching rule on signals. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - correlatedByFields: - description: Fields to correlate by. - items: - description: Field. - type: string - type: array - correlatedQueryIndex: - description: Index of the rule query used to retrieve the correlated field. - format: int32 - maximum: 9 - type: integer - defaultRuleId: - description: Default Rule ID to match on signals. - example: d3f-ru1-e1d - type: string - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - metrics: - description: Group of target fields to aggregate over. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - ruleId: - description: Rule ID to match on signals. - example: org-ru1-e1d - type: string - type: object - SecurityMonitoringStandardRuleTestPayload: - description: The payload of a rule to test - properties: - calculatedFields: - description: >- - Calculated fields. Only allowed for scheduled rules - in other - words, when schedulingOptions is also defined. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases for generating signals. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - filters: - description: >- - Additional queries to filter matched events before they are - processed. This field is deprecated for log detection, signal - correlation, and workload security rules. - items: - $ref: '#/components/schemas/SecurityMonitoringFilter' - type: array - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - hasExtendedTitle: - description: >- - Whether the notifications include the triggering group-by values in - their title. - example: true - type: boolean - isEnabled: - description: Whether the rule is enabled. - example: true - type: boolean - message: - description: Message for generated signals. - example: '' - type: string - name: - description: The name of the rule. - example: My security monitoring rule. - type: string - options: - $ref: '#/components/schemas/SecurityMonitoringRuleOptions' - queries: - description: Queries for selecting logs which are part of the rule. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringStandardRuleQuery' - type: array - referenceTables: - description: Reference tables for the rule. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - schedulingOptions: - $ref: '#/components/schemas/SecurityMonitoringSchedulingOptions' - tags: - description: Tags for generated signals. - example: - - env:prod - - team:security - items: - description: Tag. - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating signals from third-party rules. Only available - for third-party rules. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - type: - $ref: '#/components/schemas/SecurityMonitoringRuleTypeTest' - required: - - name - - isEnabled - - queries - - options - - cases - - message - type: object - SecurityMonitoringRuleQueryPayloadData: - additionalProperties: {} - description: Payload used to test the rule query. - properties: - ddsource: - description: Source of the payload. - example: nginx - type: string - ddtags: - description: Tags associated with your data. - example: env:staging,version:5.1 - type: string - hostname: - description: The name of the originating host of the log. - example: i-012345678 - type: string - message: - description: The message of the payload. - example: 2019-11-19T14:37:58,995 INFO [process.name][20081] Hello World - type: string - service: - description: The name of the application or service generating the data. - example: payment - type: string - type: object - SecurityMonitoringRuleCaseAction: - description: >- - Action to perform when a signal is triggered. Only available for - Application Security rule type. - properties: - options: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionOptions' - type: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseActionType' - type: object - SecurityMonitoringRuleSeverity: - description: Severity of the Security Signal. - enum: - - info - - low - - medium - - high - - critical - example: critical - type: string - x-enum-varnames: - - INFO - - LOW - - MEDIUM - - HIGH - - CRITICAL - SecurityMonitoringFilterAction: - description: The type of filtering action. - enum: - - require - - suppress - type: string - x-enum-varnames: - - REQUIRE - - SUPPRESS - CloudConfigurationComplianceRuleOptions: - additionalProperties: {} - description: > - Options for cloud_configuration rules. - - Fields `resourceType` and `regoRule` are mandatory when managing custom - `cloud_configuration` rules. - properties: - complexRule: - description: > - Whether the rule is a complex one. - - Must be set to true if `regoRule.resourceTypes` contains more than - one item. Defaults to false. - type: boolean - regoRule: - $ref: '#/components/schemas/CloudConfigurationRegoRule' - resourceType: - description: > - Main resource type to be checked by the rule. It should be specified - again in `regoRule.resourceTypes`. - example: aws_acm - type: string - type: object - SecurityMonitoringRuleDecreaseCriticalityBasedOnEnv: - description: >- - If true, signals in non-production environments have a lower severity - than what is defined by the rule case, which can reduce signal noise. - - The severity is decreased by one level: `CRITICAL` in production becomes - `HIGH` in non-production, `HIGH` becomes `MEDIUM` and so on. `INFO` - remains `INFO`. - - The decrement is applied when the environment tag of the signal starts - with `staging`, `test` or `dev`. - example: false - type: boolean - SecurityMonitoringRuleDetectionMethod: - description: The detection method. - enum: - - threshold - - new_value - - anomaly_detection - - impossible_travel - - hardcoded - - third_party - - anomaly_threshold - type: string - x-enum-varnames: - - THRESHOLD - - NEW_VALUE - - ANOMALY_DETECTION - - IMPOSSIBLE_TRAVEL - - HARDCODED - - THIRD_PARTY - - ANOMALY_THRESHOLD - SecurityMonitoringRuleEvaluationWindow: - description: >- - A time window is specified to match when at least one of the cases - matches true. This is a sliding window - - and evaluates in real time. For third party detection method, this field - is not used. - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleHardcodedEvaluatorType: - description: Hardcoded evaluator type. - enum: - - log4shell - type: string - x-enum-varnames: - - LOG4SHELL - SecurityMonitoringRuleImpossibleTravelOptions: - description: Options on impossible travel detection method. - properties: - baselineUserLocations: - $ref: >- - #/components/schemas/SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations - type: object - SecurityMonitoringRuleKeepAlive: - description: >- - Once a signal is generated, the signal will remain "open" if a case is - matched at least once within - - this keep alive window. For third party detection method, this field is - not used. - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleMaxSignalDuration: - description: >- - A signal will "close" regardless of the query being matched once the - time exceeds the maximum duration. - - This time is calculated from the first seen timestamp. - enum: - - 0 - - 60 - - 300 - - 600 - - 900 - - 1800 - - 3600 - - 7200 - - 10800 - - 21600 - - 43200 - - 86400 - format: int32 - type: integer - x-enum-varnames: - - ZERO_MINUTES - - ONE_MINUTE - - FIVE_MINUTES - - TEN_MINUTES - - FIFTEEN_MINUTES - - THIRTY_MINUTES - - ONE_HOUR - - TWO_HOURS - - THREE_HOURS - - SIX_HOURS - - TWELVE_HOURS - - ONE_DAY - SecurityMonitoringRuleNewValueOptions: - description: Options on new value detection method. - properties: - forgetAfter: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsForgetAfter - learningDuration: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningDuration - learningMethod: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningMethod - learningThreshold: - $ref: >- - #/components/schemas/SecurityMonitoringRuleNewValueOptionsLearningThreshold - type: object - SecurityMonitoringRuleThirdPartyOptions: - description: Options on third party detection method. - properties: - defaultNotifications: - description: >- - Notification targets for the logs that do not correspond to any of - the cases. - items: - description: Notification. - type: string - type: array - defaultStatus: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - rootQueries: - description: >- - Queries to be combined with third party case queries. Each of them - can have different group by fields, to aggregate differently based - on the type of alert. - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRootQuery' - type: array - signalTitleTemplate: - description: >- - A template for the signal title; if omitted, the title is generated - based on the case name. - type: string - type: object - RuleVersionHistory: - description: Response object containing the version history of a rule. - properties: - count: - description: The number of rule versions. - format: int32 - maximum: 2147483647 - type: integer - data: - additionalProperties: - $ref: '#/components/schemas/RuleVersions' - description: A rule version with a list of updates. - description: The `RuleVersionHistory` `data`. - type: object - type: object - GetRuleVersionHistoryDataType: - description: Type of data. - enum: - - GetRuleVersionHistoryResponse - type: string - x-enum-varnames: - - GETRULEVERSIONHISTORYRESPONSE - SecurityMonitoringSignalAttributes: - additionalProperties: {} - description: |- - The object containing all signal attributes and their - associated values. - properties: - custom: - additionalProperties: {} - description: A JSON object of attributes in the security signal. - example: - workflow: - first_seen: '2020-06-23T14:46:01.000Z' - last_seen: '2020-06-23T14:46:49.000Z' - rule: - id: 0f5-e0c-805 - name: 'Brute Force Attack Grouped By User ' - version: 12 - type: object - message: - description: >- - The message in the security signal defined by the rule that - generated the signal. - example: Detect Account Take Over (ATO) through brute force attempts - type: string - tags: - description: An array of tags associated with the security signal. - example: - - security:attack - - technique:T1110-brute-force - items: - description: The tag associated with the security signal. - type: string - type: array - timestamp: - description: The timestamp of the security signal. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - SecurityMonitoringSignalType: - default: signal - description: The type of event. - enum: - - signal - example: signal - type: string - x-enum-varnames: - - SIGNAL - SecurityMonitoringSignalsListResponseMetaPage: - description: Paging attributes. - properties: - after: - description: >- - The cursor used to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - SecurityMonitoringSignalAssigneeUpdateAttributes: - description: Attributes describing the new assignee of a security signal. - properties: - assignee: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - assignee - type: object - SecurityMonitoringSignalTriageAttributes: - description: >- - Attributes describing a triage state update operation over a security - signal. - properties: - archive_comment: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' - archive_comment_timestamp: - description: Timestamp of the last edit to the comment. - format: int64 - minimum: 0 - type: integer - archive_comment_user: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - archive_reason: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' - assignee: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - incident_ids: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' - state: - $ref: '#/components/schemas/SecurityMonitoringSignalState' - state_update_timestamp: - description: Timestamp of the last update to the signal state. - format: int64 - minimum: 0 - type: integer - state_update_user: - $ref: '#/components/schemas/SecurityMonitoringTriageUser' - required: - - assignee - - state - - incident_ids - type: object - SecurityMonitoringSignalMetadataType: - default: signal_metadata - description: The type of event. - enum: - - signal_metadata - example: signal_metadata - type: string - x-enum-varnames: - - SIGNAL_METADATA - SecurityMonitoringSignalIncidentsUpdateAttributes: - description: >- - Attributes describing the new list of related signals for a security - signal. - properties: - incident_ids: - $ref: '#/components/schemas/SecurityMonitoringSignalIncidentIds' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - incident_ids - type: object - SecurityMonitoringSignalStateUpdateAttributes: - description: Attributes describing the change of state of a security signal. - properties: - archive_comment: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveComment' - archive_reason: - $ref: '#/components/schemas/SecurityMonitoringSignalArchiveReason' - state: - $ref: '#/components/schemas/SecurityMonitoringSignalState' - version: - $ref: '#/components/schemas/SecurityMonitoringSignalVersion' - required: - - state - type: object - SensitiveDataScannerConfigurationRelationships: - description: Relationships of the configuration. - properties: - groups: - $ref: '#/components/schemas/SensitiveDataScannerGroupList' - type: object - SensitiveDataScannerConfigurationType: - default: sensitive_data_scanner_configuration - description: Sensitive Data Scanner configuration type. - enum: - - sensitive_data_scanner_configuration - example: sensitive_data_scanner_configuration - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_CONFIGURATIONS - SensitiveDataScannerGetConfigIncludedItem: - description: An object related to the configuration. - oneOf: - - $ref: '#/components/schemas/SensitiveDataScannerRuleIncludedItem' - - $ref: '#/components/schemas/SensitiveDataScannerGroupIncludedItem' - SensitiveDataScannerGroupAttributes: - description: Attributes of the Sensitive Data Scanner group. - properties: - description: - description: Description of the group. - type: string - filter: - $ref: '#/components/schemas/SensitiveDataScannerFilter' - is_enabled: - description: Whether or not the group is enabled. - type: boolean - name: - description: Name of the group. - type: string - product_list: - description: List of products the scanning group applies. - items: - $ref: '#/components/schemas/SensitiveDataScannerProduct' - type: array - samplings: - description: List of sampling rates per product type. - items: - $ref: '#/components/schemas/SensitiveDataScannerSamplings' - type: array - type: object - SensitiveDataScannerGroupRelationships: - description: Relationships of the group. - properties: - configuration: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationData' - rules: - $ref: '#/components/schemas/SensitiveDataScannerRuleData' - type: object - SensitiveDataScannerGroupType: - default: sensitive_data_scanner_group - description: Sensitive Data Scanner group type. - enum: - - sensitive_data_scanner_group - example: sensitive_data_scanner_group - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_GROUP - SensitiveDataScannerRuleAttributes: - description: Attributes of the Sensitive Data Scanner rule. - properties: - description: - description: Description of the rule. - type: string - excluded_namespaces: - description: >- - Attributes excluded from the scan. If namespaces is provided, it has - to be a sub-path of the namespaces array. - example: - - admin.name - items: - type: string - type: array - included_keyword_configuration: - $ref: >- - #/components/schemas/SensitiveDataScannerIncludedKeywordConfiguration - is_enabled: - description: Whether or not the rule is enabled. - type: boolean - name: - description: Name of the rule. - type: string - namespaces: - description: >- - Attributes included in the scan. If namespaces is empty or missing, - all attributes except excluded_namespaces are scanned. - - If both are missing the whole event is scanned. - example: - - admin - items: - type: string - type: array - pattern: - description: Not included if there is a relationship to a standard pattern. - type: string - priority: - description: Integer from 1 (high) to 5 (low) indicating rule issue severity. - format: int64 - maximum: 5 - minimum: 1 - type: integer - tags: - description: List of tags. - items: - type: string - type: array - text_replacement: - $ref: '#/components/schemas/SensitiveDataScannerTextReplacement' - type: object - SensitiveDataScannerRuleRelationships: - description: Relationships of a scanning rule. - properties: - group: - $ref: '#/components/schemas/SensitiveDataScannerGroupData' - standard_pattern: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternData' - type: object - SensitiveDataScannerRuleType: - default: sensitive_data_scanner_rule - description: Sensitive Data Scanner rule type. - enum: - - sensitive_data_scanner_rule - example: sensitive_data_scanner_rule - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_RULE - SensitiveDataScannerStandardPatternsResponseItem: - description: Standard pattern item. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternAttributes' - id: - description: ID of the standard pattern. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternType' - type: object - HistoricalJobResponseAttributes: - description: Historical job attributes. - properties: - createdAt: - description: Time when the job was created. - type: string - createdByHandle: - description: The handle of the user who created the job. - type: string - createdByName: - description: The name of the user who created the job. - type: string - createdFromRuleId: - description: >- - ID of the rule used to create the job (if it is created from a - rule). - type: string - jobDefinition: - $ref: '#/components/schemas/JobDefinition' - jobName: - description: Job name. - type: string - jobStatus: - description: Job status. - type: string - modifiedAt: - description: Last modification time of the job. - type: string - type: object - HistoricalJobDataType: - description: Type of payload. - enum: - - historicalDetectionsJob - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOB - RunHistoricalJobRequestAttributes: - description: Run a historical job request. - properties: - fromRule: - $ref: '#/components/schemas/JobDefinitionFromRule' - id: - description: Request ID. - type: string - jobDefinition: - $ref: '#/components/schemas/JobDefinition' - type: object - RunHistoricalJobRequestDataType: - description: Type of data. - enum: - - historicalDetectionsJobCreate - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOBCREATE - ConvertJobResultsToSignalsAttributes: - description: Attributes for converting historical job results to signals. - properties: - id: - description: Request ID. - type: string - jobResultIds: - description: Job result IDs. - example: - - '' - items: - type: string - type: array - notifications: - description: Notifications sent. - example: - - '' - items: - type: string - type: array - signalMessage: - description: Message of generated signals. - example: A large number of failed login attempts. - type: string - signalSeverity: - $ref: '#/components/schemas/SecurityMonitoringRuleSeverity' - required: - - jobResultIds - - signalSeverity - - signalMessage - - notifications - type: object - ConvertJobResultsToSignalsDataType: - description: Type of payload. - enum: - - historicalDetectionsJobResultSignalConversion - type: string - x-enum-varnames: - - HISTORICALDETECTIONSJOBRESULTSIGNALCONVERSION - CustomFrameworkRequirement: - description: Framework Requirement. - properties: - controls: - description: Requirement Controls. - items: - $ref: '#/components/schemas/CustomFrameworkControl' - type: array - name: - description: Requirement Name. - example: criteria - type: string - required: - - name - - controls - type: object - CsmCoverageAnalysis: - description: CSM Coverage Analysis. - properties: - configured_resources_count: - description: The number of fully configured resources. - example: 8 - format: int64 - type: integer - coverage: - description: The coverage percentage. - example: 0.8 - format: double - type: number - partially_configured_resources_count: - description: The number of partially configured resources. - example: 0 - format: int64 - type: integer - total_resources_count: - description: The total number of resources. - example: 10 - format: int64 - type: integer - type: object - FindingAttributes: - description: The JSON:API attributes of the finding. - properties: - datadog_link: - $ref: '#/components/schemas/FindingDatadogLink' - description: - $ref: '#/components/schemas/FindingDescription' - evaluation: - $ref: '#/components/schemas/FindingEvaluation' - evaluation_changed_at: - $ref: '#/components/schemas/FindingEvaluationChangedAt' - external_id: - $ref: '#/components/schemas/FindingExternalId' - mute: - $ref: '#/components/schemas/FindingMute' - resource: - $ref: '#/components/schemas/FindingResource' - resource_discovery_date: - $ref: '#/components/schemas/FindingResourceDiscoveryDate' - resource_type: - $ref: '#/components/schemas/FindingResourceType' - rule: - $ref: '#/components/schemas/FindingRule' - status: - $ref: '#/components/schemas/FindingStatus' - tags: - $ref: '#/components/schemas/FindingTags' - vulnerability_type: - $ref: '#/components/schemas/FindingVulnerabilityType' - type: object - BulkMuteFindingsRequestProperties: - additionalProperties: false - description: Object containing the new mute properties of the findings. - properties: - description: - description: >- - Additional information about the reason why those findings are muted - or unmuted. This field has a maximum limit of 280 characters. - type: string - expiration_date: - description: > - The expiration date of the mute or unmute action (Unix ms). It must - be set to a value greater than the current timestamp. - - If this field is not provided, the finding will be muted or unmuted - indefinitely, which is equivalent to setting the expiration date to - 9999999999999. - example: 1778721573794 - format: int64 - type: integer - muted: - description: Whether those findings should be muted or unmuted. - example: true - type: boolean - reason: - $ref: '#/components/schemas/FindingMuteReason' - required: - - muted - - reason - type: object - BulkMuteFindingsRequestMetaFindings: - description: Finding object containing the finding information. - properties: - finding_id: - $ref: '#/components/schemas/FindingID' - type: object - FindingEvaluationChangedAt: - description: The date on which the evaluation for this finding changed (Unix ms). - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - FindingMute: - additionalProperties: false - description: Information about the mute status of this finding. - properties: - description: - description: >- - Additional information about the reason why this finding is muted or - unmuted. - example: To be resolved later - type: string - expiration_date: - description: The expiration date of the mute or unmute action (Unix ms). - example: 1778721573794 - format: int64 - type: integer - muted: - description: Whether this finding is muted or unmuted. - example: true - type: boolean - reason: - $ref: '#/components/schemas/FindingMuteReason' - start_date: - description: The start of the mute period. - example: 1678721573794 - format: int64 - type: integer - uuid: - description: The ID of the user who muted or unmuted this finding. - example: e51c9744-d158-11ec-ad23-da7ad0900002 - type: string - type: object - FindingResource: - description: The resource name of this finding. - example: my_resource_name - type: string - FindingResourceDiscoveryDate: - description: The date on which the resource was discovered (Unix ms). - example: 1678721573794 - format: int64 - minimum: 1 - type: integer - FindingResourceType: - description: The resource type of this finding. - example: azure_storage_account - type: string - FindingRule: - additionalProperties: false - description: The rule that triggered this finding. - properties: - id: - description: The ID of the rule that triggered this finding. - example: dv2-jzf-41i - type: string - name: - description: The name of the rule that triggered this finding. - example: Soft delete is enabled for Azure Storage - type: string - type: object - FindingTags: - description: The tags associated with this finding. - example: - - cloud_provider:aws - - myTag:myValue - items: - description: The list of tags. - type: string - type: array - AssetOperatingSystem: - description: Asset operating system. - properties: - description: - description: Operating system version. - example: '24.04' - type: string - name: - description: Operating system name. - example: ubuntu - type: string - required: - - name - type: object - AssetRisks: - description: Asset risks. - properties: - has_access_to_sensitive_data: - description: Whether the asset has access to sensitive data or not. - example: false - type: boolean - has_privileged_access: - description: Whether the asset has privileged access or not. - example: false - type: boolean - in_production: - description: Whether the asset is in production or not. - example: false - type: boolean - is_publicly_accessible: - description: Whether the asset is publicly accessible or not. - example: false - type: boolean - under_attack: - description: Whether the asset is under attack or not. - example: false - type: boolean - required: - - in_production - type: object - AssetVersion: - description: Asset version. - properties: - first: - description: Asset first version. - example: _latest - type: string - last: - description: Asset last version. - example: _latest - type: string - type: object - SBOMComponent: - description: Software or hardware component. - properties: - bom-ref: - description: >- - An optional identifier that can be used to reference the component - elsewhere in the BOM. - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - licenses: - description: The software licenses of the SBOM component. - items: - $ref: '#/components/schemas/SBOMComponentLicense' - type: array - name: - description: >- - The name of the component. This will often be a shortened, single - name of the component. - example: google.golang.org/grpc - type: string - properties: - description: The custom properties of the component of the SBOM. - items: - $ref: '#/components/schemas/SBOMComponentProperty' - type: array - purl: - description: >- - Specifies the package-url (purl). The purl, if specified, MUST be - valid and conform to the - [specification](https://github.com/package-url/purl-spec). - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - supplier: - $ref: '#/components/schemas/SBOMComponentSupplier' - type: - $ref: '#/components/schemas/SBOMComponentType' - version: - description: The component version. - example: 1.68.1 - type: string - required: - - type - - name - - version - - supplier - type: object - SBOMComponentDependency: - description: The dependencies of a component of the SBOM. - properties: - dependsOn: - description: The components that are dependencies of the ref component. - items: - example: pkg:golang/google.golang.org/grpc@1.68.1 - type: string - required: - - ref - - dependsOn - type: array - ref: - description: The identifier for the related component. - example: Repository|github.com/datadog/datadog-agent - type: string - type: object - SBOMMetadata: - description: Provides additional information about a BOM. - properties: - authors: - description: List of authors of the SBOM. - items: - $ref: '#/components/schemas/SBOMMetadataAuthor' - type: array - component: - $ref: '#/components/schemas/SBOMMetadataComponent' - timestamp: - description: The timestamp of the SBOM creation. - example: '2025-07-08T07:24:53Z' - type: string - type: object - SpecVersion: - description: The version of the CycloneDX specification a BOM conforms to. - enum: - - '1.0' - - '1.1' - - '1.2' - - '1.3' - - '1.4' - - '1.5' - example: '1.5' - type: string - x-enum-varnames: - - ONE_ZERO - - ONE_ONE - - ONE_TWO - - ONE_THREE - - ONE_FOUR - - ONE_FIVE - Date: - description: Date as Unix timestamp in milliseconds. - example: 1722439510282 - format: int64 - type: integer - RuleUser: - description: User creating or modifying a rule. - properties: - handle: - description: The user handle. - example: john.doe@domain.com - type: string - name: - description: The user name. - example: John Doe - type: string - type: object - Enabled: - description: Field used to enable or disable the rule. - example: true - type: boolean - RuleName: - description: Name of the notification rule. - example: Rule 1 - type: string - Selectors: - description: >- - Selectors are used to filter security issues for which notifications - should be generated. - - Users can specify rule severities, rule types, a query to filter - security issues on tags and attributes, and the trigger source. - - Only the trigger_source field is required. - properties: - query: - $ref: '#/components/schemas/NotificationRuleQuery' - rule_types: - $ref: '#/components/schemas/RuleTypes' - severities: - description: The security rules severities to consider. - items: - $ref: '#/components/schemas/RuleSeverity' - type: array - trigger_source: - $ref: '#/components/schemas/TriggerSource' - required: - - trigger_source - type: object - Targets: - description: >- - List of recipients to notify when a notification rule is triggered. Many - different target types are supported, - - such as email addresses, Slack channels, and PagerDuty services. - - The appropriate integrations need to be properly configured to send - notifications to the specified targets. - example: - - '@john.doe@email.com' - items: - description: Recipients to notify. - type: string - type: array - TimeAggregation: - description: >- - Time aggregation period (in seconds) is used to aggregate the results of - the notification rule evaluation. - - Results are aggregated over a selected time frame using a rolling - window, which updates with each new evaluation. - - Notifications are only sent for new issues discovered during the window. - - Time aggregation is only available for vulnerability-based notification - rules. When omitted or set to 0, no aggregation - - is done. - example: 86400 - format: int64 - type: integer - Version: - description: >- - Version of the notification rule. It is updated when the rule is - modified. - example: 1 - format: int64 - type: integer - CodeLocation: - description: Code vulnerability location. - properties: - file_path: - description: Vulnerability location file path. - example: src/Class.java:100 - type: string - location: - description: Vulnerability extracted location. - example: com.example.Class:100 - type: string - method: - description: Vulnerability location method. - example: FooBar - type: string - required: - - location - type: object - VulnerabilityCvss: - description: Vulnerability severities. - properties: - base: - $ref: '#/components/schemas/CVSS' - datadog: - $ref: '#/components/schemas/CVSS' - required: - - base - - datadog - type: object - VulnerabilityDependencyLocations: - description: Static library vulnerability location. - properties: - block: - $ref: '#/components/schemas/DependencyLocation' - name: - $ref: '#/components/schemas/DependencyLocation' - version: - $ref: '#/components/schemas/DependencyLocation' - required: - - block - type: object - Library: - description: Vulnerability library. - properties: - name: - description: Vulnerability library name. - example: linux-aws-5.15 - type: string - version: - description: Vulnerability library version. - example: 5.15.0 - type: string - required: - - name - type: object - Remediation: - description: Vulnerability remediation. - properties: - auto_solvable: - description: >- - Whether the vulnerability can be resolved when recompiling the - package or not. - example: false - type: boolean - avoided_advisories: - description: Avoided advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - fixed_advisories: - description: Remediation fixed advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - library_name: - description: Library name remediating the vulnerability. - example: stdlib - type: string - library_version: - description: Library version remediating the vulnerability. - example: Upgrade to a version >= 1.20.0 - type: string - new_advisories: - description: New advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - remaining_advisories: - description: Remaining advisories. - items: - $ref: '#/components/schemas/Advisory' - type: array - type: - description: Remediation type. - example: text - type: string - required: - - type - - library_name - - library_version - - auto_solvable - - fixed_advisories - - remaining_advisories - - new_advisories - - avoided_advisories - type: object - VulnerabilityRisks: - description: Vulnerability risks. - properties: - epss: - $ref: '#/components/schemas/EPSS' - exploit_available: - description: Vulnerability public exploit availability. - example: false - type: boolean - exploit_sources: - description: Vulnerability exploit sources. - example: - - NIST - items: - example: NIST - type: string - type: array - exploitation_probability: - description: Vulnerability exploitation probability. - example: false - type: boolean - poc_exploit_available: - description: Vulnerability POC exploit availability. - example: false - type: boolean - required: - - exploitation_probability - - poc_exploit_available - - exploit_available - - exploit_sources - type: object - VulnerabilityRelationshipsAffects: - description: Relationship type. - properties: - data: - $ref: '#/components/schemas/VulnerabilityRelationshipsAffectsData' - required: - - data - type: object - CloudWorkloadSecurityAgentRuleActions: - description: The array of actions the rule can perform if triggered - items: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleAction' - nullable: true - type: array - CloudWorkloadSecurityAgentRuleCreatorAttributes: - description: The attributes of the user who created the Agent rule - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - CloudWorkloadSecurityAgentRuleUpdaterAttributes: - description: The attributes of the user who last updated the Agent rule - properties: - handle: - description: The handle of the user - example: datadog.user@example.com - type: string - name: - description: The name of the user - example: Datadog User - nullable: true - type: string - type: object - SecurityFilterExclusionFilterResponse: - description: A single exclusion filter. - properties: - name: - description: The exclusion filter name. - example: Exclude staging - type: string - query: - description: The exclusion filter query. - example: source:staging - type: string - type: object - SecurityFilterFilteredDataType: - description: The filtered data type. - enum: - - logs - example: logs - type: string - x-enum-varnames: - - LOGS - SecurityFilterExclusionFilter: - description: Exclusion filter for the security filter. - example: - name: Exclude staging - query: source:staging - properties: - name: - description: Exclusion filter name. - example: Exclude staging - type: string - query: - description: >- - Exclusion filter query. Logs that match this query are excluded from - the security filter. - example: source:staging - type: string - required: - - name - - query - type: object - SecurityMonitoringUser: - description: A user. - properties: - handle: - description: The handle of the user. - example: john.doe@datadoghq.com - type: string - name: - description: The name of the user. - example: John Doe - nullable: true - type: string - type: object - SecurityMonitoringRuleQueryAggregation: - description: The aggregation type. - enum: - - count - - cardinality - - sum - - max - - new_value - - geo_data - - event_count - - none - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - SUM - - MAX - - NEW_VALUE - - GEO_DATA - - EVENT_COUNT - - NONE - SecurityMonitoringStandardDataSource: - default: logs - description: Source of events, either logs, audit trail, or Datadog events. - enum: - - logs - - audit - - app_sec_spans - - spans - - security_runtime - - network - - events - example: logs - type: string - x-enum-varnames: - - LOGS - - AUDIT - - APP_SEC_SPANS - - SPANS - - SECURITY_RUNTIME - - NETWORK - - EVENTS - SecurityMonitoringRuleTypeTest: - description: The rule type. - enum: - - log_detection - type: string - x-enum-varnames: - - LOG_DETECTION - SecurityMonitoringRuleCaseActionOptions: - additionalProperties: {} - description: Options for the rule action - properties: - duration: - description: Duration of the action in seconds. 0 indicates no expiration. - example: 0 - format: int64 - minimum: 0 - type: integer - flaggedIPType: - $ref: >- - #/components/schemas/SecurityMonitoringRuleCaseActionOptionsFlaggedIPType - userBehaviorName: - $ref: >- - #/components/schemas/SecurityMonitoringRuleCaseActionOptionsUserBehaviorName - type: object - SecurityMonitoringRuleCaseActionType: - description: The action type. - enum: - - block_ip - - block_user - - user_behavior - - flag_ip - type: string - x-enum-varnames: - - BLOCK_IP - - BLOCK_USER - - USER_BEHAVIOR - - FLAG_IP - CloudConfigurationRegoRule: - description: Rule details. - properties: - policy: - description: >- - The policy written in `rego`, see: - https://www.openpolicyagent.org/docs/latest/policy-language/ - example: | - package datadog - - import data.datadog.output as dd_output - import future.keywords.contains - import future.keywords.if - import future.keywords.in - - eval(resource) = "skip" if { - # Logic that evaluates to true if the resource should be skipped - true - } else = "pass" { - # Logic that evaluates to true if the resource is compliant - true - } else = "fail" { - # Logic that evaluates to true if the resource is not compliant - true - } - - # This part remains unchanged for all rules - results contains result if { - some resource in input.resources[input.main_resource_type] - result := dd_output.format(resource, eval(resource)) - } - type: string - resourceTypes: - description: >- - List of resource types that will be evaluated upon. Must have at - least one element. - example: - - gcp_iam_service_account - - gcp_iam_policy - items: - type: string - type: array - required: - - policy - - resourceTypes - type: object - SecurityMonitoringRuleImpossibleTravelOptionsBaselineUserLocations: - description: >- - If true, signals are suppressed for the first 24 hours. In that time, - Datadog learns the user's regular - - access locations. This can be helpful to reduce noise and infer VPN - usage or credentialed API access. - example: true - type: boolean - SecurityMonitoringRuleNewValueOptionsForgetAfter: - description: The duration in days after which a learned value is forgotten. - enum: - - 1 - - 2 - - 7 - - 14 - - 21 - - 28 - format: int32 - type: integer - x-enum-varnames: - - ONE_DAY - - TWO_DAYS - - ONE_WEEK - - TWO_WEEKS - - THREE_WEEKS - - FOUR_WEEKS - SecurityMonitoringRuleNewValueOptionsLearningDuration: - default: 0 - description: >- - The duration in days during which values are learned, and after which - signals will be generated for values that - - weren't learned. If set to 0, a signal will be generated for all new - values after the first value is learned. - enum: - - 0 - - 1 - - 7 - format: int32 - type: integer - x-enum-varnames: - - ZERO_DAYS - - ONE_DAY - - SEVEN_DAYS - SecurityMonitoringRuleNewValueOptionsLearningMethod: - default: duration - description: >- - The learning method used to determine when signals should be generated - for values that weren't learned. - enum: - - duration - - threshold - type: string - x-enum-varnames: - - DURATION - - THRESHOLD - SecurityMonitoringRuleNewValueOptionsLearningThreshold: - default: 0 - description: >- - A number of occurrences after which signals will be generated for values - that weren't learned. - enum: - - 0 - - 1 - format: int32 - type: integer - x-enum-varnames: - - ZERO_OCCURRENCES - - ONE_OCCURRENCE - SecurityMonitoringThirdPartyRootQuery: - description: A query to be combined with the third party case query. - properties: - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - query: - description: Query to run on logs. - example: source:cloudtrail - type: string - type: object - RuleVersions: - description: A rule version with a list of updates. - properties: - changes: - description: A list of changes. - items: - $ref: '#/components/schemas/RuleVersionUpdate' - type: array - rule: - $ref: '#/components/schemas/SecurityMonitoringRuleResponse' - type: object - SecurityMonitoringTriageUser: - description: Object representing a given user entity. - properties: - handle: - description: The handle for this user account. - type: string - icon: - description: Gravatar icon associated to the user. - example: /path/to/matching/gravatar/icon - readOnly: true - type: string - id: - description: Numerical ID assigned by Datadog to this user account. - format: int64 - type: integer - name: - description: The name for this user account. - nullable: true - type: string - uuid: - description: UUID assigned by Datadog to this user account. - example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 - type: string - required: - - uuid - type: object - SecurityMonitoringSignalVersion: - description: >- - Version of the updated signal. If server side version is higher, update - will be rejected. - format: int64 - type: integer - SecurityMonitoringSignalArchiveComment: - description: Optional comment to display on archived signals. - type: string - SecurityMonitoringSignalArchiveReason: - description: Reason a signal is archived. - enum: - - none - - false_positive - - testing_or_maintenance - - investigated_case_opened - - other - type: string - x-enum-varnames: - - NONE - - FALSE_POSITIVE - - TESTING_OR_MAINTENANCE - - INVESTIGATED_CASE_OPENED - - OTHER - SecurityMonitoringSignalIncidentIds: - description: Array of incidents that are associated with this signal. - example: - - 2066 - items: - description: >- - Public ID attribute of the incident that is associated with the - signal. - example: 2066 - format: int64 - type: integer - type: array - SecurityMonitoringSignalState: - description: The new triage state of the signal. - enum: - - open - - archived - - under_review - example: open - type: string - x-enum-varnames: - - OPEN - - ARCHIVED - - UNDER_REVIEW - SensitiveDataScannerGroupList: - description: List of groups, ordered. - properties: - data: - description: List of groups. The order is important. - items: - $ref: '#/components/schemas/SensitiveDataScannerGroupItem' - type: array - type: object - SensitiveDataScannerRuleIncludedItem: - description: A Scanning Rule included item. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerRuleAttributes' - id: - description: ID of the rule. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerRuleRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerGroupIncludedItem: - description: A Scanning Group included item. - properties: - attributes: - $ref: '#/components/schemas/SensitiveDataScannerGroupAttributes' - id: - description: ID of the group. - type: string - relationships: - $ref: '#/components/schemas/SensitiveDataScannerGroupRelationships' - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerFilter: - description: Filter for the Scanning Group. - properties: - query: - description: Query to filter the events. - type: string - type: object - SensitiveDataScannerProduct: - default: logs - description: Datadog product onto which Sensitive Data Scanner can be activated. - enum: - - logs - - rum - - events - - apm - type: string - x-enum-varnames: - - LOGS - - RUM - - EVENTS - - APM - SensitiveDataScannerSamplings: - description: Sampling configurations for the Scanning Group. - properties: - product: - $ref: '#/components/schemas/SensitiveDataScannerProduct' - rate: - description: Rate at which data in product type will be scanned, as a percentage. - example: 100 - format: double - maximum: 100 - minimum: 0 - type: number - type: object - SensitiveDataScannerConfigurationData: - description: A Sensitive Data Scanner configuration data. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerConfiguration' - type: object - SensitiveDataScannerRuleData: - description: Rules included in the group. - properties: - data: - description: Rules included in the group. The order is important. - items: - $ref: '#/components/schemas/SensitiveDataScannerRule' - type: array - type: object - SensitiveDataScannerIncludedKeywordConfiguration: - description: >- - Object defining a set of keywords and a number of characters that help - reduce noise. - - You can provide a list of keywords you would like to check within a - defined proximity of the matching pattern. - - If any of the keywords are found within the proximity check, the match - is kept. - - If none are found, the match is discarded. - properties: - character_count: - description: >- - The number of characters behind a match detected by Sensitive Data - Scanner to look for the keywords defined. - - `character_count` should be greater than the maximum length of a - keyword defined for a rule. - example: 30 - format: int64 - maximum: 50 - minimum: 1 - type: integer - keywords: - description: >- - Keyword list that will be checked during scanning in order to - validate a match. - - The number of keywords in the list must be less than or equal to 30. - example: - - credit card - - cc - items: - type: string - type: array - use_recommended_keywords: - description: >- - Should the rule use the underlying standard pattern keyword - configuration. If set to `true`, the rule must be tied - - to a standard pattern. If set to `false`, the specified keywords and - `character_count` are applied. - type: boolean - required: - - keywords - - character_count - type: object - SensitiveDataScannerTextReplacement: - description: Object describing how the scanned event will be replaced. - properties: - number_of_chars: - description: |- - Required if type == 'partial_replacement_from_beginning' - or 'partial_replacement_from_end'. It must be > 0. - format: int64 - minimum: 0 - type: integer - replacement_string: - description: Required if type == 'replacement_string'. - type: string - should_save_match: - description: >- - Only valid when type == `replacement_string`. When enabled, matches - can be unmasked in logs by users with ‘Data Scanner Unmask’ - permission. As a security best practice, avoid masking for - highly-sensitive, long-lived data. - type: boolean - type: - $ref: '#/components/schemas/SensitiveDataScannerTextReplacementType' - type: object - SensitiveDataScannerGroupData: - description: A scanning group data. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerGroup' - type: object - SensitiveDataScannerStandardPatternData: - description: A standard pattern. - properties: - data: - $ref: '#/components/schemas/SensitiveDataScannerStandardPattern' - type: object - SensitiveDataScannerStandardPatternAttributes: - description: Attributes of the Sensitive Data Scanner standard pattern. - properties: - description: - description: Description of the standard pattern. - type: string - included_keywords: - description: List of included keywords. - items: - type: string - type: array - name: - description: Name of the standard pattern. - type: string - pattern: - deprecated: true - description: >- - (Deprecated) Regex to match, optionally documented for older - standard rules. Refer to the `description` field to understand what - the rule does. - type: string - priority: - description: >- - Integer from 1 (high) to 5 (low) indicating standard pattern issue - severity. - format: int64 - maximum: 5 - minimum: 1 - type: integer - tags: - description: List of tags. - items: - type: string - type: array - type: object - SensitiveDataScannerStandardPatternType: - default: sensitive_data_scanner_standard_pattern - description: Sensitive Data Scanner standard pattern type. - enum: - - sensitive_data_scanner_standard_pattern - example: sensitive_data_scanner_standard_pattern - type: string - x-enum-varnames: - - SENSITIVE_DATA_SCANNER_STANDARD_PATTERN - JobDefinition: - description: Definition of a historical job. - properties: - calculatedFields: - description: Calculated fields. - items: - $ref: '#/components/schemas/CalculatedField' - type: array - cases: - description: Cases used for generating job results. - items: - $ref: '#/components/schemas/SecurityMonitoringRuleCaseCreate' - type: array - from: - description: Starting time of data analyzed by the job. - example: 1729843470000 - format: int64 - type: integer - groupSignalsBy: - description: >- - Additional grouping to perform on top of the existing groups in the - query section. Must be a subset of the existing groups. - example: - - service - items: - description: Field to group by. - type: string - type: array - index: - description: Index used to load the data. - example: cloud_siem - type: string - message: - description: Message for generated results. - example: A large number of failed login attempts. - type: string - name: - description: Job name. - example: Excessive number of failed attempts. - type: string - options: - $ref: '#/components/schemas/HistoricalJobOptions' - queries: - description: Queries for selecting logs analyzed by the job. - items: - $ref: '#/components/schemas/HistoricalJobQuery' - type: array - referenceTables: - description: Reference tables used in the queries. - items: - $ref: '#/components/schemas/SecurityMonitoringReferenceTable' - type: array - tags: - description: Tags for generated signals. - items: - type: string - type: array - thirdPartyCases: - description: >- - Cases for generating results from third-party detection method. Only - available for third-party detection method. - example: [] - items: - $ref: '#/components/schemas/SecurityMonitoringThirdPartyRuleCaseCreate' - type: array - to: - description: Ending time of data analyzed by the job. - example: 1729847070000 - format: int64 - type: integer - type: - description: Job type. - type: string - required: - - from - - to - - index - - name - - cases - - queries - - message - type: object - JobDefinitionFromRule: - description: Definition of a historical job based on a security monitoring rule. - properties: - from: - description: Starting time of data analyzed by the job. - example: 1729843470000 - format: int64 - type: integer - id: - description: ID of the detection rule used to create the job. - example: abc-def-ghi - type: string - index: - description: Index used to load the data. - example: cloud_siem - type: string - notifications: - description: Notifications sent when the job is completed. - example: - - '@sns-cloudtrail-results' - items: - type: string - type: array - to: - description: Ending time of data analyzed by the job. - example: 1729847070000 - format: int64 - type: integer - required: - - id - - from - - to - - index - type: object - CustomFrameworkControl: - description: Framework Control. - properties: - name: - description: Control Name. - example: A1.2 - type: string - rules_id: - description: Rule IDs. - example: - - '["def-000-abc"]' - items: - type: string - type: array - required: - - name - - rules_id - type: object - FindingDatadogLink: - description: The Datadog relative link for this finding. - example: >- - /security/compliance?panels=cpfinding%7Cevent%7CruleId%3Adef-000-u5t%7CresourceId%3Ae8c9ab7c52ebd7bf2fdb4db641082d7d%7CtabId%3Aoverview - type: string - FindingDescription: - description: The description and remediation steps for this finding. - example: >- - ## Remediation - - - 1. In the console, go to **Storage Account**. - - 2. For each Storage Account, navigate to **Data Protection**. - - 3. Select **Set soft delete enabled** and enter the number of days to - retain soft deleted data. - type: string - FindingExternalId: - description: The cloud-based ID for the resource related to the finding. - example: arn:aws:s3:::my-example-bucket - type: string - FindingMuteReason: - description: The reason why this finding is muted or unmuted. - enum: - - PENDING_FIX - - FALSE_POSITIVE - - ACCEPTED_RISK - - NO_PENDING_FIX - - HUMAN_ERROR - - NO_LONGER_ACCEPTED_RISK - - OTHER - example: ACCEPTED_RISK - type: string - x-enum-varnames: - - PENDING_FIX - - FALSE_POSITIVE - - ACCEPTED_RISK - - NO_PENDING_FIX - - HUMAN_ERROR - - NO_LONGER_ACCEPTED_RISK - - OTHER - SBOMComponentLicense: - description: The software license of the component of the SBOM. - properties: - license: - $ref: '#/components/schemas/SBOMComponentLicenseLicense' - required: - - license - type: object - SBOMComponentProperty: - description: The custom property of the component of the SBOM. - properties: - name: - description: The name of the custom property of the component of the SBOM. - example: license_type - type: string - value: - description: The value of the custom property of the component of the SBOM. - example: permissive - type: string - required: - - name - - value - type: object - SBOMComponentSupplier: - description: The supplier of the component. - properties: - name: - description: Identifier of the supplier of the component. - example: https://go.dev - type: string - required: - - name - type: object - SBOMComponentType: - description: The SBOM component type - enum: - - application - - container - - data - - device - - device-driver - - file - - firmware - - framework - - library - - machine-learning-model - - operating-system - - platform - example: application - type: string - x-enum-varnames: - - APPLICATION - - CONTAINER - - DATA - - DEVICE - - DEVICE_DRIVER - - FILE - - FIRMWARE - - FRAMEWORK - - LIBRARY - - MACHINE_LEARNING_MODEL - - OPERATING_SYSTEM - - PLATFORM - SBOMMetadataAuthor: - description: Author of the SBOM. - properties: - name: - description: The identifier of the Author of the SBOM. - example: Datadog, Inc. - type: string - type: object - SBOMMetadataComponent: - description: The component that the BOM describes. - properties: - name: - description: >- - The name of the component. This will often be a shortened, single - name of the component. - example: github.com/datadog/datadog-agent - type: string - type: - description: Specifies the type of the component. - example: application - type: string - type: object - NotificationRuleQuery: - description: >- - The query is composed of one or several key:value pairs, which can be - used to filter security issues on tags and attributes. - example: (source:production_service OR env:prod) - type: string - RuleTypes: - description: Security rule types used as filters in security rules. - example: - - misconfiguration - - attack_path - items: - $ref: '#/components/schemas/RuleTypesItems' - type: array - RuleSeverity: - description: Severity of a security rule. - enum: - - critical - - high - - medium - - low - - unknown - - info - example: critical - type: string - x-enum-varnames: - - CRITICAL - - HIGH - - MEDIUM - - LOW - - UNKNOWN - - INFO - TriggerSource: - description: >- - The type of security issues on which the rule applies. Notification - rules based on security signals need to use the trigger source - "security_signals", - - while notification rules based on security vulnerabilities need to use - the trigger source "security_findings". - enum: - - security_findings - - security_signals - example: security_findings - type: string - x-enum-varnames: - - SECURITY_FINDINGS - - SECURITY_SIGNALS - CVSS: - description: Vulnerability severity. - properties: - score: - description: Vulnerability severity score. - example: 4.5 - format: double - type: number - severity: - $ref: '#/components/schemas/VulnerabilitySeverity' - vector: - description: Vulnerability CVSS vector. - example: CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H - type: string - required: - - score - - severity - - vector - type: object - DependencyLocation: - description: Static library vulnerability location. - properties: - column_end: - description: Location column end. - example: 140 - format: int64 - type: integer - column_start: - description: Location column start. - example: 5 - format: int64 - type: integer - file_name: - description: Location file name. - example: src/go.mod - type: string - line_end: - description: Location line end. - example: 10 - format: int64 - type: integer - line_start: - description: Location line start. - example: 1 - format: int64 - type: integer - required: - - file_name - - line_start - - line_end - - column_start - - column_end - type: object - Advisory: - description: Advisory. - properties: - base_severity: - description: Advisory base severity. - example: Critical - type: string - id: - description: Advisory id. - example: GHSA-4wrc-f8pq-fpqp - type: string - severity: - description: Advisory Datadog severity. - example: Medium - type: string - required: - - id - - base_severity - type: object - EPSS: - description: Vulnerability EPSS severity. - properties: - score: - description: Vulnerability EPSS severity score. - example: 0.2 - format: double - type: number - severity: - $ref: '#/components/schemas/VulnerabilitySeverity' - required: - - score - - severity - type: object - VulnerabilityRelationshipsAffectsData: - description: Asset affected by this vulnerability. - properties: - id: - description: The unique ID for this related asset. - example: Repository|github.com/DataDog/datadog-agent.git - type: string - type: - $ref: '#/components/schemas/AssetEntityType' - required: - - id - - type - type: object - CloudWorkloadSecurityAgentRuleAction: - description: The action the rule can perform if triggered - properties: - filter: - description: SECL expression used to target the container to apply the action on - type: string - hash: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionHash' - kill: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleKill' - metadata: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionMetadata' - set: - $ref: '#/components/schemas/CloudWorkloadSecurityAgentRuleActionSet' - type: object - SecurityMonitoringRuleCaseActionOptionsFlaggedIPType: - description: >- - Used with the case action of type 'flag_ip'. The value specified in this - field is applied as a flag to the IP addresses. - enum: - - SUSPICIOUS - - FLAGGED - example: FLAGGED - type: string - x-enum-varnames: - - SUSPICIOUS - - FLAGGED - SecurityMonitoringRuleCaseActionOptionsUserBehaviorName: - description: >- - Used with the case action of type 'user_behavior'. The value specified - in this field is applied as a risk tag to all users affected by the - rule. - type: string - RuleVersionUpdate: - description: A change in a rule version. - properties: - change: - description: The new value of the field. - example: cloud_provider:aws - type: string - field: - description: The field that was changed. - example: Tags - type: string - type: - $ref: '#/components/schemas/RuleVersionUpdateType' - type: object - SensitiveDataScannerGroupItem: - description: Data related to a Sensitive Data Scanner Group. - properties: - id: - description: ID of the group. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerConfiguration: - description: A Sensitive Data Scanner configuration. - properties: - id: - description: ID of the configuration. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerConfigurationType' - type: object - SensitiveDataScannerRule: - description: Rule item included in the group. - properties: - id: - description: ID of the rule. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerRuleType' - type: object - SensitiveDataScannerTextReplacementType: - default: none - description: >- - Type of the replacement text. None means no replacement. - - hash means the data will be stubbed. replacement_string means that - - one can chose a text to replace the data. - partial_replacement_from_beginning - - allows a user to partially replace the data from the beginning, and - - partial_replacement_from_end on the other hand, allows to replace data - from - - the end. - enum: - - none - - hash - - replacement_string - - partial_replacement_from_beginning - - partial_replacement_from_end - type: string - x-enum-varnames: - - NONE - - HASH - - REPLACEMENT_STRING - - PARTIAL_REPLACEMENT_FROM_BEGINNING - - PARTIAL_REPLACEMENT_FROM_END - SensitiveDataScannerGroup: - description: A scanning group. - properties: - id: - description: ID of the group. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerGroupType' - type: object - SensitiveDataScannerStandardPattern: - description: Data containing the standard pattern id. - properties: - id: - description: ID of the standard pattern. - type: string - type: - $ref: '#/components/schemas/SensitiveDataScannerStandardPatternType' - type: object - HistoricalJobOptions: - description: Job options. - properties: - detectionMethod: - $ref: '#/components/schemas/SecurityMonitoringRuleDetectionMethod' - evaluationWindow: - $ref: '#/components/schemas/SecurityMonitoringRuleEvaluationWindow' - impossibleTravelOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleImpossibleTravelOptions' - keepAlive: - $ref: '#/components/schemas/SecurityMonitoringRuleKeepAlive' - maxSignalDuration: - $ref: '#/components/schemas/SecurityMonitoringRuleMaxSignalDuration' - newValueOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleNewValueOptions' - thirdPartyRuleOptions: - $ref: '#/components/schemas/SecurityMonitoringRuleThirdPartyOptions' - type: object - HistoricalJobQuery: - description: Query for selecting logs analyzed by the historical job. - properties: - aggregation: - $ref: '#/components/schemas/SecurityMonitoringRuleQueryAggregation' - dataSource: - $ref: '#/components/schemas/SecurityMonitoringStandardDataSource' - distinctFields: - description: Field for which the cardinality is measured. Sent as an array. - items: - description: Field. - type: string - type: array - groupByFields: - description: Fields to group by. - items: - description: Field. - type: string - type: array - hasOptionalGroupByFields: - default: false - description: >- - When false, events without a group-by value are ignored by the - query. When true, events with missing group-by fields are processed - with `N/A`, replacing the missing values. - example: false - type: boolean - metrics: - description: >- - Group of target fields to aggregate over when using the sum, max, - geo data, or new value aggregations. The sum, max, and geo data - aggregations only accept one value in this list, whereas the new - value aggregation accepts up to five values. - items: - description: Field. - type: string - type: array - name: - description: Name of the query. - type: string - query: - description: Query to run on logs. - example: a > 3 - type: string - type: object - SBOMComponentLicenseLicense: - description: The software license of the component of the SBOM. - properties: - name: - description: The name of the software license of the component of the SBOM. - example: MIT - type: string - required: - - name - type: object - RuleTypesItems: - description: >- - Security rule type which can be used in security rules. - - Signal-based notification rules can filter signals based on rule types - application_security, log_detection, - - workload_security, signal_correlation, cloud_configuration and - infrastructure_configuration. - - Vulnerability-based notification rules can filter vulnerabilities based - on rule types application_code_vulnerability, - - application_library_vulnerability, attack_path, - container_image_vulnerability, identity_risk, misconfiguration, - api_security, host_vulnerability and iac_misconfiguration. - enum: - - application_security - - log_detection - - workload_security - - signal_correlation - - cloud_configuration - - infrastructure_configuration - - application_code_vulnerability - - application_library_vulnerability - - attack_path - - container_image_vulnerability - - identity_risk - - misconfiguration - - api_security - - host_vulnerability - - iac_misconfiguration - type: string - x-enum-varnames: - - APPLICATION_SECURITY - - LOG_DETECTION - - WORKLOAD_SECURITY - - SIGNAL_CORRELATION - - CLOUD_CONFIGURATION - - INFRASTRUCTURE_CONFIGURATION - - APPLICATION_CODE_VULNERABILITY - - APPLICATION_LIBRARY_VULNERABILITY - - ATTACK_PATH - - CONTAINER_IMAGE_VULNERABILITY - - IDENTITY_RISK - - MISCONFIGURATION - - API_SECURITY - - HOST_VULNERABILITY - - IAC_MISCONFIGURATION - CloudWorkloadSecurityAgentRuleActionHash: - additionalProperties: {} - description: An empty object indicating the hash action - type: object - CloudWorkloadSecurityAgentRuleKill: - description: Kill system call applied on the container matching the rule - properties: - signal: - description: Supported signals for the kill system call - type: string - type: object - CloudWorkloadSecurityAgentRuleActionMetadata: - description: The metadata action applied on the scope matching the rule - properties: - image_tag: - description: The image tag of the metadata action - type: string - service: - description: The service of the metadata action - type: string - short_image: - description: The short image of the metadata action - type: string - type: object - CloudWorkloadSecurityAgentRuleActionSet: - description: The set action applied on the scope matching the rule - properties: - append: - description: Whether the value should be appended to the field - type: boolean - field: - description: The field of the set action - type: string - name: - description: The name of the set action - type: string - scope: - description: The scope of the set action - type: string - size: - description: The size of the set action - format: int64 - type: integer - ttl: - description: The time to live of the set action - format: int64 - type: integer - value: - description: The value of the set action - type: string - type: object - RuleVersionUpdateType: - description: The type of change. - enum: - - create - - update - - delete - type: string - x-enum-varnames: - - CREATE - - UPDATE - - DELETE - responses: - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - FindingsBadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: >- - Bad Request: The server cannot process the request due to invalid syntax - in the request. - FindingsForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Forbidden: Access denied' - FindingsNotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Not Found: The requested finding cannot be found.' - FindingsTooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: 'Too many requests: The rate limit set by the API has been exceeded.' - NotificationRulesList: - content: - application/json: - schema: - properties: - data: - items: - $ref: '#/components/schemas/NotificationRule' - type: array - type: object - description: The list of notification rules. - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - UnprocessableEntityResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: The server cannot process the request because it contains invalid data. - ConcurrentModificationResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Concurrent Modification - parameters: - AwsAccountId: - description: The ID of an AWS account. - example: '123456789012' - in: path - name: account_id - required: true - schema: - type: string - OnDemandTaskId: - description: The UUID of the task. - example: 6d09294c-9ad9-42fd-a759-a0c1599b4828 - in: path - name: task_id - required: true - schema: - type: string - CustomFrameworkHandle: - description: The framework handle - in: path - name: handle - required: true - schema: - type: string - CustomFrameworkVersion: - description: The framework version - in: path - name: version - required: true - schema: - type: string - ResourceFilterProvider: - description: Filter resource filters by cloud provider (e.g. aws, gcp, azure). - in: query - name: cloud_provider - required: false - schema: - type: string - ResourceFilterAccountID: - description: >- - Filter resource filters by cloud provider account ID. This parameter is - only valid when provider is specified. - in: query - name: account_id - required: false - schema: - type: string - SkipCache: - description: Skip cache for resource filters. - in: query - name: skip_cache - required: false - schema: - type: boolean - CloudWorkloadSecurityAgentRuleID: - description: The ID of the Agent rule - example: 3b5-v82-ns6 - in: path - name: agent_rule_id - required: true - schema: - type: string - SecurityFilterID: - description: The ID of the security filter. - in: path - name: security_filter_id - required: true - schema: - type: string - SecurityMonitoringRuleID: - description: The ID of the rule. - in: path - name: rule_id - required: true - schema: - type: string - SecurityMonitoringSuppressionID: - description: The ID of the suppression rule - in: path - name: suppression_id - required: true - schema: - type: string - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - QueryFilterSearch: - description: The search query for security signals. - example: security:attack status:high - in: query - name: filter[query] - required: false - schema: - type: string - QueryFilterFrom: - description: The minimum timestamp for requested security signals. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - QueryFilterTo: - description: The maximum timestamp for requested security signals. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - QuerySort: - description: The order of the security signals in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/SecurityMonitoringSignalsSort' - QueryPageCursor: - description: A list of results using the cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - QueryPageLimit: - description: The maximum number of security signals in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - SignalID: - description: The ID of the signal. - in: path - name: signal_id - required: true - schema: - type: string - SensitiveDataScannerGroupID: - description: The ID of a group of rules. - in: path - name: group_id - required: true - schema: - type: string - SensitiveDataScannerRuleID: - description: The ID of the rule. - in: path - name: rule_id - required: true - schema: - type: string - HistoricalSignalID: - description: The ID of the historical signal. - in: path - name: histsignal_id - required: true - schema: - type: string - HistoricalJobID: - description: The ID of the job. - in: path - name: job_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/service_management.yaml b/provider-dev/source/service_management.yaml deleted file mode 100644 index 55712ad..0000000 --- a/provider-dev/source/service_management.yaml +++ /dev/null @@ -1,14415 +0,0 @@ -openapi: 3.0.0 -info: - title: service_management API - description: datadog service_management API - version: '1.0' -paths: - /api/v2/cases: - get: - description: Search cases. - operationId: SearchCases - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/CaseSortableFieldParameter' - - description: Search query - in: query - name: filter - required: false - schema: - example: status:open (team:case-management OR team:event-management) - type: string - - description: Specify if order is ascending or not - in: query - name: sort[asc] - required: false - schema: - default: false - type: boolean - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CasesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Search cases - tags: - - Case Management - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - post: - description: Create a Case - operationId: CreateCase - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseCreateRequest' - description: Case payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create a case - tags: - - Case Management - /api/v2/cases/projects: - get: - description: Get all projects. - operationId: GetProjects - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get all projects - tags: - - Case Management - post: - description: Create a project. - operationId: CreateProject - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectCreateRequest' - description: Project payload - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Create a project - tags: - - Case Management - /api/v2/cases/projects/{project_id}: - delete: - description: Remove a project using the project's `id`. - operationId: DeleteProject - parameters: - - $ref: '#/components/parameters/ProjectIDPathParameter' - responses: - '204': - description: No Content - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: API error response - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Remove a project - tags: - - Case Management - get: - description: Get the details of a project by `project_id`. - operationId: GetProject - parameters: - - $ref: '#/components/parameters/ProjectIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ProjectResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get the details of a project - tags: - - Case Management - /api/v2/cases/{case_id}: - get: - description: Get the details of case by `case_id` - operationId: GetCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_read - summary: Get the details of a case - tags: - - Case Management - /api/v2/cases/{case_id}/archive: - post: - description: Archive case - operationId: ArchiveCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Archive case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Archive case - tags: - - Case Management - /api/v2/cases/{case_id}/assign: - post: - description: Assign case to a user - operationId: AssignCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseAssignRequest' - description: Assign case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Assign case - tags: - - Case Management - /api/v2/cases/{case_id}/attributes: - post: - description: Update case attributes - operationId: UpdateAttributes - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdateAttributesRequest' - description: Case attributes update payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case attributes - tags: - - Case Management - /api/v2/cases/{case_id}/priority: - post: - description: Update case priority - operationId: UpdatePriority - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdatePriorityRequest' - description: Case priority update payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case priority - tags: - - Case Management - /api/v2/cases/{case_id}/status: - post: - description: Update case status - operationId: UpdateStatus - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseUpdateStatusRequest' - description: Case status update payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Update case status - tags: - - Case Management - /api/v2/cases/{case_id}/unarchive: - post: - description: Unarchive case - operationId: UnarchiveCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Unarchive case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Unarchive case - tags: - - Case Management - /api/v2/cases/{case_id}/unassign: - post: - description: Unassign case - operationId: UnassignCase - parameters: - - $ref: '#/components/parameters/CaseIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CaseEmptyRequest' - description: Unassign case payload - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CaseResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - cases_write - summary: Unassign case - tags: - - Case Management - /api/v2/downtime: - get: - description: Get all scheduled downtimes. - operationId: ListDowntimes - parameters: - - description: Only return downtimes that are active when the request is made. - in: query - name: current_only - required: false - schema: - type: boolean - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - - paths are `created_by` and `monitor`. - in: query - name: include - required: false - schema: - example: created_by,monitor - type: string - - $ref: '#/components/parameters/PageOffset' - - description: Maximum number of downtimes in the response. - example: 100 - in: query - name: page[limit] - required: false - schema: - default: 30 - format: int64 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ListDowntimesResponse' - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Get all downtimes - tags: - - Downtimes - x-pagination: - limitParam: page[limit] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - monitors_downtime - post: - description: Schedule a downtime. - operationId: CreateDowntime - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeCreateRequest' - description: Schedule a downtime request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Schedule a downtime - tags: - - Downtimes - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/downtime/{downtime_id}: - delete: - description: >- - Cancel a downtime. - - - **Note**: Downtimes canceled through the API are no longer active, but - are retained for approximately two days before being permanently - removed. The downtime may still appear in search results until it is - permanently removed. - operationId: CancelDowntime - parameters: - - description: ID of the downtime to cancel. - in: path - name: downtime_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - responses: - '204': - description: OK - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Downtime not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Cancel a downtime - tags: - - Downtimes - x-permission: - operator: OR - permissions: - - monitors_downtime - get: - description: Get downtime detail by `downtime_id`. - operationId: GetDowntime - parameters: - - description: ID of the downtime to fetch. - in: path - name: downtime_id - required: true - schema: - example: 00000000-0000-1234-0000-000000000000 - type: string - - description: >- - Comma-separated list of resource paths for related resources to - include in the response. Supported resource - - paths are `created_by` and `monitor`. - in: query - name: include - required: false - schema: - example: created_by,monitor - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Get a downtime - tags: - - Downtimes - x-permission: - operator: OR - permissions: - - monitors_downtime - patch: - description: Update a downtime by `downtime_id`. - operationId: UpdateDowntime - parameters: - - description: ID of the downtime to update. - in: path - name: downtime_id - required: true - schema: - example: 00e000000-0000-1234-0000-000000000000 - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeUpdateRequest' - description: Update a downtime request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DowntimeResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Downtime not found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - monitors_downtime - summary: Update a downtime - tags: - - Downtimes - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - monitors_downtime - /api/v2/error-tracking/issues/search: - post: - description: >- - Search issues endpoint allows you to programmatically search for issues - within your organization. This endpoint returns a list of issues that - match a given search query, following the event search syntax. The - search results are limited to a maximum of 100 issues per request. - operationId: SearchIssues - parameters: - - $ref: '#/components/parameters/SearchIssuesIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssuesSearchRequest' - description: Search issues request payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssuesSearchResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - summary: Search error tracking issues - tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}: - get: - description: >- - Retrieve the full details for a specific error tracking issue, including - attributes and relationships. - operationId: GetIssue - parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - - $ref: '#/components/parameters/GetIssueIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssueResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - summary: Get the details of an error tracking issue - tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}/assignee: - put: - description: Update the assignee of an issue by `issue_id`. - operationId: UpdateIssueAssignee - parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssueUpdateAssigneeRequest' - description: Update issue assignee request payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssueResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - - error_tracking_write - - cases_read - - cases_write - summary: Update the assignee of an issue - tags: - - Error Tracking - /api/v2/error-tracking/issues/{issue_id}/state: - put: - description: >- - Update the state of an issue by `issue_id`. Use this endpoint to move an - issue between states such as `OPEN`, `RESOLVED`, or `IGNORED`. - operationId: UpdateIssueState - parameters: - - $ref: '#/components/parameters/IssueIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IssueUpdateStateRequest' - description: Update issue state request payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IssueResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - error_tracking_read - - error_tracking_write - summary: Update the state of an issue - tags: - - Error Tracking - /api/v2/events: - get: - description: >- - List endpoint returns events that match an events search query. - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest events. - operationId: ListEvents - parameters: - - description: Search query following events syntax. - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events, in milliseconds. - in: query - name: filter[from] - required: false - schema: - type: string - - description: Maximum timestamp for requested events, in milliseconds. - in: query - name: filter[to] - required: false - schema: - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/EventsSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - events_read - summary: Get a list of events - tags: - - Events - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - events_read - post: - description: >- - This endpoint allows you to publish events. - - - **Note:** To utilize this endpoint with our client libraries, please - ensure you are using the latest version released on or after July 1, - 2025. Earlier versions do not support this functionality. - - - ✅ **Only events with the `change` or `alert` category** are in General - Availability. For change events, see [Change - Tracking](https://docs.datadoghq.com/change_tracking) for more details. - - - ❌ For use cases involving other event categories, use the V1 endpoint or - reach out to [support](https://www.datadoghq.com/support/). - - - ❌ Notifications are not yet supported for events sent to this endpoint. - Use the V1 endpoint for notification functionality. - operationId: CreateEvent - requestBody: - content: - application/json: - examples: - json-request-body: - value: - data: - attributes: - aggregation_key: aggregation_key_123 - attributes: - author: - name: example@datadog.com - type: user - change_metadata: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - resource_link: datadog.com/feature/fallback_payments_test - changed_resource: - name: fallback_payments_test - type: feature_flag - impacted_resources: - - name: payments_api - type: service - new_value: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - prev_value: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - category: change - integration_id: custom-events - message: payment_processed feature flag has been enabled - tags: - - env:api_client_test - timestamp: '2020-01-01T01:30:15.010000Z' - title: payment_processed feature flag updated - type: event - schema: - $ref: '#/components/schemas/EventCreateRequestPayload' - description: Event creation request payload. - required: true - responses: - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/EventCreateResponsePayload' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: event-management-intake - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: event-management-intake.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: event-management-intake - description: The subdomain where the API is deployed. - summary: Post an event - tags: - - Events - x-codegen-request-body-name: body - /api/v2/events/search: - post: - description: >- - List endpoint returns events that match an events search query. - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search. - operationId: SearchEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EventsListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Search events - tags: - - Events - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - events_read - /api/v2/events/{event_id}: - get: - description: Get the details of an event by `event_id`. - operationId: GetEvent - parameters: - - description: The UID of the event. - in: path - name: event_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/V2EventResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - events_read - summary: Get an event - tags: - - Events - x-permission: - operator: OR - permissions: - - events_read - /api/v2/incidents: - get: - description: Get all incidents for the user's organization. - operationId: ListIncidents - parameters: - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of incidents - tags: - - Incidents - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Create an incident. - operationId: CreateIncident - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentCreateRequest' - description: Incident payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-rules: - get: - description: >- - Lists all notification rules for the organization. Optionally filter by - incident type. - operationId: ListIncidentNotificationRules - parameters: - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRuleArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_read - summary: List incident notification rules - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Creates a new notification rule. - operationId: CreateIncidentNotificationRule - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateIncidentNotificationRuleRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Create an incident notification rule - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-rules/{id}: - delete: - description: Deletes a notification rule by its ID. - operationId: DeleteIncidentNotificationRule - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Delete an incident notification rule - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Retrieves a specific notification rule by its ID. - operationId: GetIncidentNotificationRule - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_read - summary: Get an incident notification rule - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - put: - description: Updates an existing notification rule with a complete replacement. - operationId: UpdateIncidentNotificationRule - parameters: - - $ref: '#/components/parameters/IncidentNotificationRuleIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationRuleIncludeQueryParameter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PutIncidentNotificationRuleRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationRule' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Update an incident notification rule - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-templates: - get: - description: Lists all notification templates. Optionally filter by incident type. - operationId: ListIncidentNotificationTemplates - parameters: - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncidentTypeFilterQueryParameter - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplateArray' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_read - summary: List incident notification templates - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Creates a new notification template. - operationId: CreateIncidentNotificationTemplate - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateIncidentNotificationTemplateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Create incident notification template - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/notification-templates/{id}: - delete: - description: Deletes a notification template by its ID. - operationId: DeleteIncidentNotificationTemplate - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter - responses: - '204': - description: No Content - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Delete a notification template - tags: - - Incidents - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Retrieves a specific notification template by its ID. - operationId: GetIncidentNotificationTemplate - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_read - summary: Get incident notification template - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_settings_read - - incident_write - - incident_read - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Updates an existing notification template's attributes. - operationId: UpdateIncidentNotificationTemplate - parameters: - - $ref: '#/components/parameters/IncidentNotificationTemplateIDPathParameter' - - $ref: >- - #/components/parameters/IncidentNotificationTemplateIncludeQueryParameter - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchIncidentNotificationTemplateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentNotificationTemplate' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_notification_settings_write - summary: Update incident notification template - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: AND - permissions: - - incident_notification_settings_write - x-unstable: >- - **Note**: This endpoint is in Preview. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/types: - get: - description: Get all incident types. - operationId: ListIncidentTypes - parameters: - - $ref: '#/components/parameters/IncidentTypeIncludeDeletedParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of incident types - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Create an incident type. - operationId: CreateIncidentType - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeCreateRequest' - description: Incident type payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Create an incident type - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/config/types/{incident_type_id}: - delete: - description: Delete an incident type. - operationId: DeleteIncidentType - parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Delete an incident type - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get incident type details. - operationId: GetIncidentType - parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get incident type details - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Update an incident type. - operationId: UpdateIncidentType - parameters: - - $ref: '#/components/parameters/IncidentTypeIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypePatchRequest' - description: Incident type payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTypeResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an incident type - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/search: - get: - description: Search for incidents matching a certain query. - operationId: SearchIncidents - parameters: - - $ref: '#/components/parameters/IncidentSearchIncludeQueryParameter' - - $ref: '#/components/parameters/IncidentSearchQueryQueryParameter' - - $ref: '#/components/parameters/IncidentSearchSortQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentSearchResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Search for incidents - tags: - - Incidents - x-pagination: - limitParam: page[size] - pageOffsetParam: page[offset] - resultsPath: data.attributes.incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}: - delete: - description: Deletes an existing incident from the users organization. - operationId: DeleteIncident - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Delete an existing incident - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get the details of an incident by `incident_id`. - operationId: GetIncident - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get the details of an incident - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: >- - Updates an incident. Provide only the attributes that should be updated - as this request is a partial update. - operationId: UpdateIncident - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentUpdateRequest' - description: Incident Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Update an existing incident - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/attachments: - get: - description: Get all attachments for a given incident. - operationId: ListIncidentAttachments - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentAttachmentIncludeQueryParameter' - - $ref: '#/components/parameters/IncidentAttachmentFilterQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentAttachmentsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Get a list of attachments - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: >- - The bulk update endpoint for creating, updating, and deleting - attachments for a given incident. - operationId: UpdateIncidentAttachments - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentAttachmentIncludeQueryParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentAttachmentUpdateRequest' - description: Incident Attachment Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentAttachmentUpdateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Create, update, and delete incident attachments - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/integrations: - get: - description: Get all integration metadata for an incident. - operationId: ListIncidentIntegrations - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of an incident's integration metadata - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Create an incident integration metadata. - operationId: CreateIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataCreateRequest' - description: Incident integration metadata payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident integration metadata - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/integrations/{integration_metadata_id}: - delete: - description: Delete an incident integration metadata. - operationId: DeleteIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Delete an incident integration metadata - tags: - - Incidents - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get incident integration metadata details. - operationId: GetIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get incident integration metadata details - tags: - - Incidents - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Update an existing incident integration metadata. - operationId: UpdateIncidentIntegration - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentIntegrationMetadataIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataPatchRequest' - description: Incident integration metadata payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Update an existing incident integration metadata - tags: - - Incidents - x-codegen-request-body-name: body - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/todos: - get: - description: Get all todos for an incident. - operationId: ListIncidentTodos - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoListResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of an incident's todos - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - post: - description: Create an incident todo. - operationId: CreateIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoCreateRequest' - description: Incident todo payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Create an incident todo - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/incidents/{incident_id}/relationships/todos/{todo_id}: - delete: - description: Delete an incident todo. - operationId: DeleteIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Delete an incident todo - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - get: - description: Get incident todo details. - operationId: GetIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get incident todo details - tags: - - Incidents - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - patch: - description: Update an incident todo. - operationId: UpdateIncidentTodo - parameters: - - $ref: '#/components/parameters/IncidentIDPathParameter' - - $ref: '#/components/parameters/IncidentTodoIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoPatchRequest' - description: Incident todo payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTodoResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_write - summary: Update an incident todo - tags: - - Incidents - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_write - x-unstable: >- - **Note**: This endpoint is in public beta. - - If you have any feedback, contact [Datadog - support](https://docs.datadoghq.com/help/). - /api/v2/on-call/escalation-policies: - post: - description: Create a new On-Call escalation policy - operationId: CreateOnCallEscalationPolicy - parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`. - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicyCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicy' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Create On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/escalation-policies/{policy_id}: - delete: - description: Delete an On-Call escalation policy - operationId: DeleteOnCallEscalationPolicy - parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - responses: - '204': - description: No Content - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - get: - description: Get an On-Call escalation policy - operationId: GetOnCallEscalationPolicy - parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`. - in: query - name: include - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicy' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Update an On-Call escalation policy - operationId: UpdateOnCallEscalationPolicy - parameters: - - description: The ID of the escalation policy - in: path - name: policy_id - required: true - schema: - example: a3000000-0000-0000-0000-000000000000 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `steps`, `steps.targets`. - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicyUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/EscalationPolicy' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Update On-Call escalation policy - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/pages: - post: - description: | - Trigger a new On-Call Page. - operationId: CreateOnCallPage - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreatePageRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CreatePageResponse' - description: OK. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Create On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/acknowledge: - post: - description: | - Acknowledges an On-Call Page. - operationId: AcknowledgeOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Acknowledge On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/escalate: - post: - description: | - Escalates an On-Call Page. - operationId: EscalateOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Escalate On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/pages/{page_id}/resolve: - post: - description: | - Resolves an On-Call Page. - operationId: ResolveOnCallPage - parameters: - - description: The page ID. - in: path - name: page_id - required: true - schema: - example: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - format: uuid - type: string - responses: - '202': - description: Accepted. - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - servers: - - url: https://{site} - variables: - site: - default: navy.oncall.datadoghq.com - description: The globally available endpoint for On-Call. - enum: - - lava.oncall.datadoghq.com - - saffron.oncall.datadoghq.com - - navy.oncall.datadoghq.com - - coral.oncall.datadoghq.com - - teal.oncall.datadoghq.com - - beige.oncall.datadoghq.eu - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. - summary: Resolve On-Call Page - tags: - - On-Call Paging - /api/v2/on-call/schedules: - post: - description: Create a new On-Call schedule - operationId: CreateOnCallSchedule - parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, - `layers.members.user`. - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScheduleCreateRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Create On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/schedules/{schedule_id}: - delete: - description: Delete an On-Call schedule - operationId: DeleteOnCallSchedule - parameters: - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - responses: - '204': - description: No Content - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Delete On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - get: - description: Get an On-Call schedule - operationId: GetOnCallSchedule - parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, - `layers.members.user`. - in: query - name: include - schema: - type: string - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: OK - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Update a new On-Call schedule - operationId: UpdateOnCallSchedule - parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `teams`, `layers`, `layers.members`, - `layers.members.user`. - in: query - name: include - schema: - type: string - - description: The ID of the schedule - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ScheduleUpdateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Schedule' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Update On-Call schedule - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/on-call/schedules/{schedule_id}/on-call: - get: - description: >- - Retrieves the user who is on-call for the specified schedule at a given - time. - operationId: GetScheduleOnCallUser - parameters: - - description: >- - Specifies related resources to include in the response as a - comma-separated list. Allowed value: `user`. - in: query - name: include - schema: - type: string - - description: The ID of the schedule. - in: path - name: schedule_id - required: true - schema: - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - - description: >- - Retrieves the on-call user at the given timestamp (ISO-8601). - Defaults to the current time if omitted." - in: query - name: filter[at_ts] - schema: - example: '2025-05-07T02:53:01Z' - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/Shift' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get the schedule on-call user - tags: - - On-Call - /api/v2/on-call/teams/{team_id}/on-call: - get: - description: Get a team's on-call users at a given time - operationId: GetTeamOnCallUsers - parameters: - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `responders`, `escalations`, - `escalations.responders`. - in: query - name: include - schema: - type: string - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamOnCallResponders' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get team on-call users - tags: - - On-Call - /api/v2/on-call/teams/{team_id}/routing-rules: - get: - description: Get a team's On-Call routing rules - operationId: GetOnCallTeamRoutingRules - parameters: - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `rules`, `rules.policy`. - in: query - name: include - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamRoutingRules' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Get On-Call team routing rules - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_read - put: - description: Set a team's On-Call routing rules - operationId: SetOnCallTeamRoutingRules - parameters: - - description: The team ID - in: path - name: team_id - required: true - schema: - example: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: string - - description: >- - Comma-separated list of included relationships to be returned. - Allowed values: `rules`, `rules.policy`. - in: query - name: include - schema: - type: string - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/TeamRoutingRulesRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/TeamRoutingRules' - description: OK - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: [] - summary: Set On-Call team routing rules - tags: - - On-Call - x-permission: - operator: AND - permissions: - - on_call_write - /api/v2/services: - get: - deprecated: true - description: >- - Get all incident services uploaded for the requesting user's - organization. If the `include[users]` query parameter is provided, the - included attribute will contain the users related to these incident - services. - operationId: ListIncidentServices - parameters: - - $ref: '#/components/parameters/IncidentServiceIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - $ref: '#/components/parameters/IncidentServiceSearchQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServicesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of all incident services - tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated.' - post: - deprecated: true - description: Creates a new incident service. - operationId: CreateIncidentService - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceCreateRequest' - description: Incident Service Payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Create a new incident service - tags: - - Incident Services - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/services/definitions: - get: - description: Get a list of all service definitions from the Datadog Service Catalog. - operationId: ListServiceDefinitions - parameters: - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - - $ref: '#/components/parameters/SchemaVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionsListResponse' - description: OK - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get all service definitions - tags: - - Service Definition - x-pagination: - limitParam: page[size] - pageParam: page[number] - resultsPath: data - x-permission: - operator: OR - permissions: - - apm_service_catalog_read - post: - description: Create or update service definition in the Datadog Service Catalog. - operationId: CreateOrUpdateServiceDefinitions - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionsCreateRequest' - description: Service Definition YAML/JSON. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionCreateResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Create or update service definition - tags: - - Service Definition - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - apm_service_catalog_write - /api/v2/services/definitions/{service_name}: - delete: - description: Delete a single service definition in the Datadog Service Catalog. - operationId: DeleteServiceDefinition - parameters: - - $ref: '#/components/parameters/ServiceName' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_write - summary: Delete a single service definition - tags: - - Service Definition - x-permission: - operator: OR - permissions: - - apm_service_catalog_write - get: - description: Get a single service definition from the Datadog Service Catalog. - operationId: GetServiceDefinition - parameters: - - $ref: '#/components/parameters/ServiceName' - - $ref: '#/components/parameters/SchemaVersion' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/ServiceDefinitionGetResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '409': - $ref: '#/components/responses/ConflictResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - apm_service_catalog_read - summary: Get a single service definition - tags: - - Service Definition - x-permission: - operator: OR - permissions: - - apm_service_catalog_read - /api/v2/services/{service_id}: - delete: - deprecated: true - description: Deletes an existing incident service. - operationId: DeleteIncidentService - parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Delete an existing incident service - tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - get: - deprecated: true - description: >- - Get details of an incident service. If the `include[users]` query - parameter is provided, - - the included attribute will contain the users related to these incident - services. - operationId: GetIncidentService - parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - - $ref: '#/components/parameters/IncidentServiceIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get details of an incident service - tags: - - Incident Services - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: '**Note**: This endpoint is deprecated.' - patch: - deprecated: true - description: >- - Updates an existing incident service. Only provide the attributes which - should be updated as this request is a partial update. - operationId: UpdateIncidentService - parameters: - - $ref: '#/components/parameters/IncidentServiceIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceUpdateRequest' - description: Incident Service Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentServiceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an existing incident service - tags: - - Incident Services - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: '**Note**: This endpoint is deprecated.' - /api/v2/slo/report: - post: - description: >- - Create a job to generate an SLO report. The report job is processed - asynchronously and eventually results in a CSV report being available - for download. - - - Check the status of the job and download the CSV report using the - returned `report_id`. - operationId: CreateSLOReportJob - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/SloReportCreateRequest' - description: Create SLO report job request body. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SLOReportPostResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Create a new SLO report - tags: - - Service Level Objectives - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - slos_read - x-unstable: >- - **Note**: This feature is in private beta. To request access, use the - request access form in the [Service Level - Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs. - /api/v2/slo/report/{report_id}/download: - get: - description: >- - Download an SLO report. This can only be performed after the report job - has completed. - - - Reports are not guaranteed to exist indefinitely. Datadog recommends - that you download the report as soon as it is available. - operationId: GetSLOReport - parameters: - - $ref: '#/components/parameters/ReportID' - responses: - '200': - content: - text/csv: - schema: - type: string - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Get SLO report - tags: - - Service Level Objectives - x-unstable: >- - **Note**: This feature is in private beta. To request access, use the - request access form in the [Service Level - Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs. - /api/v2/slo/report/{report_id}/status: - get: - description: Get the status of the SLO report job. - operationId: GetSLOReportJobStatus - parameters: - - $ref: '#/components/parameters/ReportID' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/SLOReportStatusGetResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - slos_read - summary: Get SLO report status - tags: - - Service Level Objectives - x-unstable: >- - **Note**: This feature is in private beta. To request access, use the - request access form in the [Service Level - Objectives](https://docs.datadoghq.com/service_management/service_level_objectives/#slo-csv-export) - docs. - /api/v2/teams: - get: - deprecated: true - description: >- - Get all incident teams for the requesting user's organization. If the - `include[users]` query parameter is provided, the included attribute - will contain the users related to these incident teams. - operationId: ListIncidentTeams - parameters: - - $ref: '#/components/parameters/IncidentTeamIncludeQueryParameter' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageOffset' - - $ref: '#/components/parameters/IncidentTeamSearchQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get a list of all incident teams - tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - post: - deprecated: true - description: Creates a new incident team. - operationId: CreateIncidentTeam - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamCreateRequest' - description: Incident Team Payload. - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: CREATED - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Create a new incident team - tags: - - Incident Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - /api/v2/teams/{team_id}: - delete: - deprecated: true - description: Deletes an existing incident team. - operationId: DeleteIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - responses: - '204': - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Delete an existing incident team - tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - get: - deprecated: true - description: >- - Get details of an incident team. If the `include[users]` query parameter - is provided, - - the included attribute will contain the users related to these incident - teams. - operationId: GetIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - - $ref: '#/components/parameters/IncidentTeamIncludeQueryParameter' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_read - summary: Get details of an incident team - tags: - - Incident Teams - x-permission: - operator: OR - permissions: - - incident_read - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). - patch: - deprecated: true - description: >- - Updates an existing incident team. Only provide the attributes which - should be updated as this request is a partial update. - operationId: UpdateIncidentTeam - parameters: - - $ref: '#/components/parameters/IncidentTeamIDPathParameter' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamUpdateRequest' - description: Incident Team Payload. - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/IncidentTeamResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '401': - $ref: '#/components/responses/UnauthorizedResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - incident_settings_write - summary: Update an existing incident team - tags: - - Incident Teams - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - incident_settings_write - x-unstable: >- - **Note**: This endpoint is deprecated. See the [Teams API - endpoints](https://docs.datadoghq.com/api/latest/teams/). -components: - schemas: - CasesResponse: - description: Response with cases - properties: - data: - description: Cases response data - items: - $ref: '#/components/schemas/Case' - type: array - meta: - $ref: '#/components/schemas/CasesResponseMeta' - type: object - CaseCreateRequest: - description: Case create request - properties: - data: - $ref: '#/components/schemas/CaseCreate' - required: - - data - type: object - CaseResponse: - description: Case response - properties: - data: - $ref: '#/components/schemas/Case' - type: object - ProjectsResponse: - description: Response with projects - properties: - data: - description: Projects response data - items: - $ref: '#/components/schemas/Project' - type: array - type: object - ProjectCreateRequest: - description: Project create request - properties: - data: - $ref: '#/components/schemas/ProjectCreate' - required: - - data - type: object - ProjectResponse: - description: Project response - properties: - data: - $ref: '#/components/schemas/Project' - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - CaseEmptyRequest: - description: Case empty request - properties: - data: - $ref: '#/components/schemas/CaseEmpty' - required: - - data - type: object - CaseAssignRequest: - description: Case assign request - properties: - data: - $ref: '#/components/schemas/CaseAssign' - required: - - data - type: object - CaseUpdateAttributesRequest: - description: Case update attributes request - properties: - data: - $ref: '#/components/schemas/CaseUpdateAttributes' - required: - - data - type: object - CaseUpdatePriorityRequest: - description: Case update priority request - properties: - data: - $ref: '#/components/schemas/CaseUpdatePriority' - required: - - data - type: object - CaseUpdateStatusRequest: - description: Case update status request - properties: - data: - $ref: '#/components/schemas/CaseUpdateStatus' - required: - - data - type: object - ListDowntimesResponse: - description: Response for retrieving all downtimes. - properties: - data: - description: An array of downtimes. - items: - $ref: '#/components/schemas/DowntimeResponseData' - type: array - included: - description: Array of objects related to the downtimes. - items: - $ref: '#/components/schemas/DowntimeResponseIncludedItem' - type: array - meta: - $ref: '#/components/schemas/DowntimeMeta' - type: object - DowntimeCreateRequest: - description: Request for creating a downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeCreateRequestData' - required: - - data - type: object - DowntimeResponse: - description: |- - Downtiming gives you greater control over monitor notifications by - allowing you to globally exclude scopes from alerting. - Downtime settings, which can be scheduled with start and end times, - prevent all alerting related to specified Datadog tags. - properties: - data: - $ref: '#/components/schemas/DowntimeResponseData' - included: - description: Array of objects related to the downtime that the user requested. - items: - $ref: '#/components/schemas/DowntimeResponseIncludedItem' - type: array - type: object - DowntimeUpdateRequest: - description: Request for editing a downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeUpdateRequestData' - required: - - data - type: object - IssuesSearchRequest: - description: Search issues request payload. - properties: - data: - $ref: '#/components/schemas/IssuesSearchRequestData' - required: - - data - type: object - IssuesSearchResponse: - description: Search issues response payload. - properties: - data: - description: Array of results matching the search query. - items: - $ref: '#/components/schemas/IssuesSearchResult' - type: array - included: - description: Array of resources related to the search results. - items: - $ref: '#/components/schemas/IssuesSearchResultIncluded' - type: array - type: object - IssueResponse: - description: Response containing error tracking issue data. - properties: - data: - $ref: '#/components/schemas/Issue' - included: - description: Array of resources related to the issue. - items: - $ref: '#/components/schemas/IssueIncluded' - type: array - type: object - IssueUpdateAssigneeRequest: - description: Update issue assignee request payload. - properties: - data: - $ref: '#/components/schemas/IssueUpdateAssigneeRequestData' - required: - - data - type: object - IssueUpdateStateRequest: - description: Update issue state request payload. - properties: - data: - $ref: '#/components/schemas/IssueUpdateStateRequestData' - required: - - data - type: object - EventsSort: - description: The sort parameters when querying events. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - EventsListResponse: - description: >- - The response object with all events matching the request and pagination - information. - properties: - data: - description: An array of events matching the request. - items: - $ref: '#/components/schemas/EventResponse' - type: array - links: - $ref: '#/components/schemas/EventsListResponseLinks' - meta: - $ref: '#/components/schemas/EventsResponseMetadata' - type: object - EventCreateRequestPayload: - description: Payload for creating an event. - properties: - data: - $ref: '#/components/schemas/EventCreateRequest' - required: - - data - type: object - EventCreateResponsePayload: - description: Event creation response. - properties: - data: - $ref: '#/components/schemas/EventCreateResponse' - links: - $ref: '#/components/schemas/EventCreateResponsePayloadLinks' - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - EventsListRequest: - description: >- - The object sent with the request to retrieve a list of events from your - organization. - properties: - filter: - $ref: '#/components/schemas/EventsQueryFilter' - options: - $ref: '#/components/schemas/EventsQueryOptions' - page: - $ref: '#/components/schemas/EventsRequestPage' - sort: - $ref: '#/components/schemas/EventsSort' - type: object - V2EventResponse: - description: Get an event response. - properties: - data: - $ref: '#/components/schemas/V2Event' - type: object - IncidentsResponse: - description: Response with a list of incidents. - properties: - data: - description: An array of incidents. - example: - - attributes: - created: '2020-04-21T15:34:08.627205+00:00' - creation_idempotency_key: null - customer_impact_duration: 0 - customer_impact_end: null - customer_impact_scope: null - customer_impact_start: null - customer_impacted: false - detected: '2020-04-14T00:00:00+00:00' - incident_type_uuid: 00000000-0000-0000-0000-000000000001 - modified: '2020-09-17T14:16:58.696424+00:00' - public_id: 1 - resolved: null - severity: SEV-1 - time_to_detect: 0 - time_to_internal_response: 0 - time_to_repair: 0 - time_to_resolve: 0 - title: Example Incident - id: 00000000-aaaa-0000-0000-000000000000 - relationships: - attachments: - data: - - id: 00000000-9999-0000-0000-000000000000 - type: incident_attachments - - id: 00000000-1234-0000-0000-000000000000 - type: incident_attachments - commander_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - created_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - integrations: - data: - - id: 00000000-0000-0000-4444-000000000000 - type: incident_integrations - - id: 00000000-0000-0000-5555-000000000000 - type: incident_integrations - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incidents - - attributes: - created: '2020-04-21T15:34:08.627205+00:00' - creation_idempotency_key: null - customer_impact_duration: 0 - customer_impact_end: null - customer_impact_scope: null - customer_impact_start: null - customer_impacted: false - detected: '2020-04-14T00:00:00+00:00' - incident_type_uuid: 00000000-0000-0000-0000-000000000002 - modified: '2020-09-17T14:16:58.696424+00:00' - public_id: 2 - resolved: null - severity: SEV-5 - time_to_detect: 0 - time_to_internal_response: 0 - time_to_repair: 0 - time_to_resolve: 0 - title: Example Incident 2 - id: 00000000-1111-0000-0000-000000000000 - relationships: - attachments: - data: - - id: 00000000-9999-0000-0000-000000000000 - type: incident_attachments - commander_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - created_by_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - integrations: - data: - - id: 00000000-0000-0000-0001-000000000000 - type: incident_integrations - - id: 00000000-0000-0000-0002-000000000000 - type: incident_integrations - last_modified_by_user: - data: - id: 00000000-aaaa-0000-0000-000000000000 - type: users - type: incidents - items: - $ref: '#/components/schemas/IncidentResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentCreateRequest: - description: Create request for an incident. - properties: - data: - $ref: '#/components/schemas/IncidentCreateData' - required: - - data - type: object - IncidentResponse: - description: Response with an incident. - properties: - data: - $ref: '#/components/schemas/IncidentResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - required: - - data - type: object - IncidentNotificationRuleArray: - description: Response with notification rules. - properties: - data: - description: The `NotificationRuleArray` `data`. - items: - $ref: '#/components/schemas/IncidentNotificationRuleResponseData' - type: array - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' - type: array - meta: - $ref: '#/components/schemas/IncidentNotificationRuleArrayMeta' - required: - - data - type: object - CreateIncidentNotificationRuleRequest: - description: Create request for a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleCreateData' - required: - - data - type: object - IncidentNotificationRule: - description: Response with a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleResponseData' - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationRuleIncludedItems' - type: array - required: - - data - type: object - PutIncidentNotificationRuleRequest: - description: Put request for a notification rule. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationRuleUpdateData' - required: - - data - type: object - IncidentNotificationTemplateArray: - description: Response with notification templates. - properties: - data: - description: The `NotificationTemplateArray` `data`. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' - type: array - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' - type: array - meta: - $ref: '#/components/schemas/IncidentNotificationTemplateArrayMeta' - required: - - data - type: object - CreateIncidentNotificationTemplateRequest: - description: Create request for a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateData' - required: - - data - type: object - IncidentNotificationTemplate: - description: Response with a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateResponseData' - included: - description: Related objects that are included in the response. - items: - $ref: '#/components/schemas/IncidentNotificationTemplateIncludedItems' - type: array - required: - - data - type: object - PatchIncidentNotificationTemplateRequest: - description: Update request for a notification template. - properties: - data: - $ref: '#/components/schemas/IncidentNotificationTemplateUpdateData' - required: - - data - type: object - IncidentTypeListResponse: - description: Response with a list of incident types. - properties: - data: - description: An array of incident type objects. - items: - $ref: '#/components/schemas/IncidentTypeObject' - type: array - required: - - data - type: object - IncidentTypeCreateRequest: - description: Create request for an incident type. - properties: - data: - $ref: '#/components/schemas/IncidentTypeCreateData' - required: - - data - type: object - IncidentTypeResponse: - description: Incident type response data. - properties: - data: - $ref: '#/components/schemas/IncidentTypeObject' - required: - - data - type: object - IncidentTypePatchRequest: - description: Patch request for an incident type. - properties: - data: - $ref: '#/components/schemas/IncidentTypePatchData' - required: - - data - type: object - IncidentSearchResponse: - description: Response with incidents and facets. - properties: - data: - $ref: '#/components/schemas/IncidentSearchResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentSearchResponseMeta' - required: - - data - type: object - IncidentUpdateRequest: - description: Update request for an incident. - properties: - data: - $ref: '#/components/schemas/IncidentUpdateData' - required: - - data - type: object - IncidentAttachmentsResponse: - description: The response object containing an incident's attachments. - properties: - data: - description: An array of incident attachments. - example: - - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentAttachmentsResponseIncludedItem' - type: array - required: - - data - type: object - IncidentAttachmentUpdateRequest: - description: The update request for an incident's attachments. - properties: - data: - description: >- - An array of incident attachments. An attachment object without an - "id" key indicates that you want to - - create that attachment. An attachment object without an "attributes" - key indicates that you want to - - delete that attachment. An attachment object with both the "id" key - and a populated "attributes" object - - indicates that you want to update that attachment. - example: - - attributes: - attachment: - documentUrl: https://app.datadoghq.com/notebook/123 - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - type: incident_attachments - - attributes: - attachment: - documentUrl: https://www.example.com/webstore-failure-runbook - title: Runbook for webstore service failures - attachment_type: link - type: incident_attachments - - id: 00000000-abcd-0003-0000-000000000000 - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentUpdateData' - type: array - required: - - data - type: object - IncidentAttachmentUpdateResponse: - description: >- - The response object containing the created or updated incident - attachments. - properties: - data: - description: >- - An array of incident attachments. Only the attachments that were - created or updated by the request are - - returned. - example: - - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - items: - $ref: '#/components/schemas/IncidentAttachmentData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentAttachmentsResponseIncludedItem' - type: array - required: - - data - type: object - IncidentIntegrationMetadataListResponse: - description: Response with a list of incident integration metadata. - properties: - data: - description: An array of incident integration metadata. - items: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: >- - #/components/schemas/IncidentIntegrationMetadataResponseIncludedItem - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentIntegrationMetadataCreateRequest: - description: Create request for an incident integration metadata. - properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataCreateData' - required: - - data - type: object - IncidentIntegrationMetadataResponse: - description: Response with an incident integration metadata. - properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: >- - #/components/schemas/IncidentIntegrationMetadataResponseIncludedItem - readOnly: true - type: array - required: - - data - type: object - IncidentIntegrationMetadataPatchRequest: - description: Patch request for an incident integration metadata. - properties: - data: - $ref: '#/components/schemas/IncidentIntegrationMetadataPatchData' - required: - - data - type: object - IncidentTodoListResponse: - description: Response with a list of incident todos. - properties: - data: - description: An array of incident todos. - items: - $ref: '#/components/schemas/IncidentTodoResponseData' - type: array - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentTodoCreateRequest: - description: Create request for an incident todo. - properties: - data: - $ref: '#/components/schemas/IncidentTodoCreateData' - required: - - data - type: object - IncidentTodoResponse: - description: Response with an incident todo. - properties: - data: - $ref: '#/components/schemas/IncidentTodoResponseData' - included: - description: Included related resources that the user requested. - items: - $ref: '#/components/schemas/IncidentTodoResponseIncludedItem' - readOnly: true - type: array - required: - - data - type: object - IncidentTodoPatchRequest: - description: Patch request for an incident todo. - properties: - data: - $ref: '#/components/schemas/IncidentTodoPatchData' - required: - - data - type: object - EscalationPolicyCreateRequest: - description: >- - Represents a request to create a new escalation policy, including the - policy data. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: true - retries: 2 - steps: - - assignment: default - escalate_after_seconds: 3600 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - - assignment: round-robin - escalate_after_seconds: 3600 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-abb1-0000-0000-000000000000 - type: users - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - properties: - data: - $ref: '#/components/schemas/EscalationPolicyCreateRequestData' - required: - - data - type: object - EscalationPolicy: - description: >- - Represents a complete escalation policy response, including policy data - and optionally included related resources. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: true - retries: 2 - id: 00000000-aba1-0000-0000-000000000000 - relationships: - steps: - data: - - id: 00000000-aba1-0000-0000-000000000000 - type: steps - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - included: - - attributes: - avatar: '' - description: Team 1 description - handle: team1 - name: Team 1 - id: 00000000-da3a-0000-0000-000000000000 - type: teams - - attributes: - assignment: default - escalate_after_seconds: 3600 - id: 00000000-aba1-0000-0000-000000000000 - relationships: - targets: - data: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - type: steps - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - - id: 00000000-aba3-0000-0000-000000000000 - type: teams - properties: - data: - $ref: '#/components/schemas/EscalationPolicyData' - included: - description: >- - Provides any included related resources, such as steps or targets, - returned with the policy. - items: - $ref: '#/components/schemas/EscalationPolicyIncluded' - type: array - type: object - EscalationPolicyUpdateRequest: - description: >- - Represents a request to update an existing escalation policy, including - the updated policy data. - example: - data: - attributes: - name: Escalation Policy 1 - resolve_page_on_policy_end: false - retries: 2 - steps: - - assignment: default - escalate_after_seconds: 3600 - id: 00000000-aba1-0000-0000-000000000000 - targets: - - id: 00000000-aba1-0000-0000-000000000000 - type: users - - id: 00000000-aba2-0000-0000-000000000000 - type: schedules - id: a3000000-0000-0000-0000-000000000000 - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: policies - properties: - data: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestData' - required: - - data - type: object - CreatePageRequest: - description: Full request to trigger an On-Call Page. - example: - data: - attributes: - description: Page details. - tags: - - service:test - target: - identifier: my-team - type: team_handle - title: Page title - urgency: low - type: pages - properties: - data: - $ref: '#/components/schemas/CreatePageRequestData' - type: object - CreatePageResponse: - description: The full response object after creating a new On-Call Page. - example: - data: - id: 15e74b8b-f865-48d0-bcc5-453323ed2c8f - type: pages - properties: - data: - $ref: '#/components/schemas/CreatePageResponseData' - type: object - ScheduleCreateRequest: - description: >- - The top-level request body for schedule creation, wrapping a `data` - object. - example: - data: - attributes: - layers: - - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - days: 1 - members: - - user: - id: 00000000-aba1-0000-0000-000000000000 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - rotation_start: '2025-02-01T00:00:00Z' - name: On-Call Schedule - time_zone: America/New_York - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - properties: - data: - $ref: '#/components/schemas/ScheduleCreateRequestData' - required: - - data - type: object - Schedule: - description: >- - Top-level container for a schedule object, including both the `data` - payload and any related `included` resources (such as teams, layers, or - members). - example: - data: - attributes: - name: On-Call Schedule - time_zone: America/New_York - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - relationships: - layers: - data: - - id: 00000000-0000-0000-0000-000000000001 - type: layers - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - included: - - attributes: - avatar: '' - description: Team 1 description - handle: team1 - name: Team 1 - id: 00000000-da3a-0000-0000-000000000000 - type: teams - - attributes: - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - days: 1 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - rotation_start: '2025-02-01T00:00:00Z' - id: 00000000-0000-0000-0000-000000000001 - relationships: - members: - data: - - id: 00000000-0000-0000-0000-000000000002 - type: members - type: layers - - id: 00000000-0000-0000-0000-000000000002 - relationships: - user: - data: - id: 00000000-aba1-0000-0000-000000000000 - type: users - type: members - - attributes: - email: foo@bar.com - name: User 1 - id: 00000000-aba1-0000-0000-000000000000 - type: users - properties: - data: - $ref: '#/components/schemas/ScheduleData' - included: - description: >- - Any additional resources related to this schedule, such as teams and - layers. - items: - $ref: '#/components/schemas/ScheduleDataIncludedItem' - type: array - type: object - ScheduleUpdateRequest: - description: >- - A top-level wrapper for a schedule update request, referring to the - `data` object with the new details. - example: - data: - attributes: - layers: - - effective_date: '2025-02-03T05:00:00Z' - end_date: '2025-12-31T00:00:00Z' - interval: - seconds: 3600 - members: - - user: - id: 00000000-aba1-0000-0000-000000000000 - name: Layer 1 - restrictions: - - end_day: friday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - rotation_start: '2025-02-01T00:00:00Z' - name: On-Call Schedule Updated - time_zone: America/New_York - id: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - relationships: - teams: - data: - - id: 00000000-da3a-0000-0000-000000000000 - type: teams - type: schedules - properties: - data: - $ref: '#/components/schemas/ScheduleUpdateRequestData' - required: - - data - type: object - Shift: - description: An on-call shift with its associated data and relationships. - example: - data: - attributes: - end: '2025-05-07T03:53:01.206662873Z' - start: '2025-05-07T02:53:01.206662814Z' - id: 00000000-0000-0000-0000-000000000000 - relationships: - user: - data: - id: 00000000-aba1-0000-0000-000000000000 - type: users - type: shifts - included: - - attributes: - email: foo@bar.com - name: User 1 - status: '' - id: 00000000-aba1-0000-0000-000000000000 - type: users - properties: - data: - $ref: '#/components/schemas/ShiftData' - nullable: true - included: - description: The `Shift` `included`. - items: - $ref: '#/components/schemas/ShiftIncluded' - type: array - type: object - TeamOnCallResponders: - description: Root object representing a team's on-call responder configuration. - example: - data: - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - relationships: - escalations: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: escalation_policy_steps - responders: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - type: team_oncall_responders - included: - - attributes: - email: test@test.com - name: Test User - status: active - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - relationships: - responders: - data: - - id: 111ee23r-aaaaa-aaaa-aaww-1234wertsd23 - type: users - type: escalation_policy_steps - properties: - data: - $ref: '#/components/schemas/TeamOnCallRespondersData' - included: - description: The `TeamOnCallResponders` `included`. - items: - $ref: '#/components/schemas/TeamOnCallRespondersIncluded' - type: array - type: object - TeamRoutingRules: - description: >- - Represents a complete set of team routing rules, including data and - optionally included related resources. - example: - data: - id: 27590dae-47be-4a7d-9abf-8f4e45124020 - relationships: - rules: - data: - - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - type: team_routing_rules - - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - type: team_routing_rules - type: team_routing_rules - included: - - attributes: - actions: null - query: tags.service:test - time_restriction: - restrictions: - - end_day: monday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - - end_day: tuesday - end_time: '17:00:00' - start_day: tuesday - start_time: '09:00:00' - time_zone: '' - urgency: high - id: 03aff2d6-6cbf-496c-997f-a857bbe9a94a - relationships: - policy: - data: null - type: team_routing_rules - properties: - data: - $ref: '#/components/schemas/TeamRoutingRulesData' - included: - description: Provides related routing rules or other included resources. - items: - $ref: '#/components/schemas/TeamRoutingRulesIncluded' - type: array - type: object - TeamRoutingRulesRequest: - description: >- - Represents a request to create or update team routing rules, including - the data payload. - example: - data: - attributes: - rules: - - actions: null - policy_id: '' - query: tags.service:test - time_restriction: - restrictions: - - end_day: monday - end_time: '17:00:00' - start_day: monday - start_time: '09:00:00' - - end_day: tuesday - end_time: '17:00:00' - start_day: tuesday - start_time: '09:00:00' - time_zone: '' - urgency: high - - actions: - - channel: channel - type: send_slack_message - workspace: workspace - policy_id: fad4eee1-13f5-40d8-886b-4e56d8d5d1c6 - query: '' - time_restriction: null - urgency: low - id: 27590dae-47be-4a7d-9abf-8f4e45124020 - type: team_routing_rules - properties: - data: - $ref: '#/components/schemas/TeamRoutingRulesRequestData' - type: object - IncidentServicesResponse: - description: Response with a list of incident service payloads. - properties: - data: - description: An array of incident services. - example: - - id: 00000000-0000-0000-0000-000000000000 - type: services - items: - $ref: '#/components/schemas/IncidentServiceResponseData' - type: array - included: - description: Included related resources which the user requested. - items: - $ref: '#/components/schemas/IncidentServiceIncludedItems' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentServiceCreateRequest: - description: Create request with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceCreateData' - required: - - data - type: object - IncidentServiceResponse: - description: Response with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceResponseData' - included: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/IncidentServiceIncludedItems' - readOnly: true - type: array - required: - - data - type: object - ServiceDefinitionsListResponse: - description: Create service definitions response. - properties: - data: - description: Data representing service definitions. - items: - $ref: '#/components/schemas/ServiceDefinitionData' - type: array - type: object - ServiceDefinitionsCreateRequest: - description: Create service definitions request. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Dot2' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1' - - $ref: '#/components/schemas/ServiceDefinitionV2' - - $ref: '#/components/schemas/ServiceDefinitionRaw' - ServiceDefinitionCreateResponse: - description: Create service definitions response. - properties: - data: - description: Create service definitions response payload. - items: - $ref: '#/components/schemas/ServiceDefinitionData' - type: array - type: object - ServiceDefinitionGetResponse: - description: Get service definition response. - properties: - data: - $ref: '#/components/schemas/ServiceDefinitionData' - type: object - IncidentServiceUpdateRequest: - description: Update request with an incident service payload. - properties: - data: - $ref: '#/components/schemas/IncidentServiceUpdateData' - required: - - data - type: object - SloReportCreateRequest: - description: The SLO report request body. - properties: - data: - $ref: '#/components/schemas/SloReportCreateRequestData' - required: - - data - type: object - SLOReportPostResponse: - description: The SLO report response. - properties: - data: - $ref: '#/components/schemas/SLOReportPostResponseData' - type: object - SLOReportStatusGetResponse: - description: The SLO report status response. - properties: - data: - $ref: '#/components/schemas/SLOReportStatusGetResponseData' - type: object - IncidentTeamsResponse: - description: Response with a list of incident team payloads. - properties: - data: - description: An array of incident teams. - example: - - attributes: - name: team name - id: 00000000-7ea3-0000-0000-000000000000 - type: teams - items: - $ref: '#/components/schemas/IncidentTeamResponseData' - type: array - included: - description: Included related resources which the user requested. - items: - $ref: '#/components/schemas/IncidentTeamIncludedItems' - readOnly: true - type: array - meta: - $ref: '#/components/schemas/IncidentResponseMeta' - required: - - data - type: object - IncidentTeamCreateRequest: - description: Create request with an incident team payload. - properties: - data: - $ref: '#/components/schemas/IncidentTeamCreateData' - required: - - data - type: object - IncidentTeamResponse: - description: Response with an incident team payload. - properties: - data: - $ref: '#/components/schemas/IncidentTeamResponseData' - included: - description: Included objects from relationships. - items: - $ref: '#/components/schemas/IncidentTeamIncludedItems' - readOnly: true - type: array - required: - - data - type: object - IncidentTeamUpdateRequest: - description: Update request with an incident team payload. - properties: - data: - $ref: '#/components/schemas/IncidentTeamUpdateData' - required: - - data - type: object - CaseSortableField: - description: Case field that can be sorted on - enum: - - created_at - - priority - - status - example: created_at - type: string - x-enum-varnames: - - CREATED_AT - - PRIORITY - - STATUS - Case: - description: A case - properties: - attributes: - $ref: '#/components/schemas/CaseAttributes' - id: - description: Case's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/CaseRelationships' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - id - - type - - attributes - type: object - CasesResponseMeta: - description: Cases response metadata - properties: - page: - $ref: '#/components/schemas/CasesResponseMetaPagination' - type: object - CaseCreate: - description: Case creation data - properties: - attributes: - $ref: '#/components/schemas/CaseCreateAttributes' - relationships: - $ref: '#/components/schemas/CaseCreateRelationships' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - Project: - description: A Project - properties: - attributes: - $ref: '#/components/schemas/ProjectAttributes' - id: - description: The Project's identifier - example: aeadc05e-98a8-11ec-ac2c-da7ad0900001 - type: string - relationships: - $ref: '#/components/schemas/ProjectRelationships' - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - id - - type - - attributes - type: object - ProjectCreate: - description: Project create - properties: - attributes: - $ref: '#/components/schemas/ProjectCreateAttributes' - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - attributes - - type - type: object - CaseEmpty: - description: Case empty request data - properties: - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - type - type: object - CaseAssign: - description: Case assign - properties: - attributes: - $ref: '#/components/schemas/CaseAssignAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseUpdateAttributes: - description: Case update attributes - properties: - attributes: - $ref: '#/components/schemas/CaseUpdateAttributesAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseUpdatePriority: - description: Case priority status - properties: - attributes: - $ref: '#/components/schemas/CaseUpdatePriorityAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - CaseUpdateStatus: - description: Case update status - properties: - attributes: - $ref: '#/components/schemas/CaseUpdateStatusAttributes' - type: - $ref: '#/components/schemas/CaseResourceType' - required: - - attributes - - type - type: object - DowntimeResponseData: - description: Downtime data. - properties: - attributes: - $ref: '#/components/schemas/DowntimeResponseAttributes' - id: - description: The downtime ID. - example: 00000000-0000-1234-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/DowntimeRelationships' - type: - $ref: '#/components/schemas/DowntimeResourceType' - type: object - DowntimeResponseIncludedItem: - description: An object related to a downtime. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/DowntimeMonitorIncludedItem' - DowntimeMeta: - description: Pagination metadata returned by the API. - properties: - page: - $ref: '#/components/schemas/DowntimeMetaPage' - type: object - DowntimeCreateRequestData: - description: Object to create a downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeCreateRequestAttributes' - type: - $ref: '#/components/schemas/DowntimeResourceType' - required: - - type - - attributes - type: object - DowntimeUpdateRequestData: - description: Object to update a downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeUpdateRequestAttributes' - id: - description: ID of this downtime. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/DowntimeResourceType' - required: - - id - - type - - attributes - type: object - SearchIssuesIncludeQueryParameterItem: - description: Relationship object that should be included in the search response. - enum: - - issue - - issue.assignee - - issue.case - - issue.team_owners - example: issue.case - type: string - x-enum-varnames: - - ISSUE - - ISSUE_ASSIGNEE - - ISSUE_CASE - - ISSUE_TEAM_OWNERS - IssuesSearchRequestData: - description: Search issues request. - properties: - attributes: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributes' - type: - $ref: '#/components/schemas/IssuesSearchRequestDataType' - required: - - type - - attributes - type: object - IssuesSearchResult: - description: Result matching the search query. - properties: - attributes: - $ref: '#/components/schemas/IssuesSearchResultAttributes' - id: - description: Search result identifier (matches the nested issue's identifier). - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - relationships: - $ref: '#/components/schemas/IssuesSearchResultRelationships' - type: - $ref: '#/components/schemas/IssuesSearchResultType' - required: - - id - - type - - attributes - type: object - IssuesSearchResultIncluded: - description: >- - An array of related resources, returned when the `include` query - parameter is used. - oneOf: - - $ref: '#/components/schemas/Issue' - - $ref: '#/components/schemas/Case' - - $ref: '#/components/schemas/IssueUser' - - $ref: '#/components/schemas/IssueTeam' - GetIssueIncludeQueryParameterItem: - description: Relationship object that should be included in the response. - enum: - - assignee - - case - - team_owners - example: case - type: string - x-enum-varnames: - - ASSIGNEE - - CASE - - TEAM_OWNERS - Issue: - description: The issue matching the request. - properties: - attributes: - $ref: '#/components/schemas/IssueAttributes' - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - relationships: - $ref: '#/components/schemas/IssueRelationships' - type: - $ref: '#/components/schemas/IssueType' - required: - - id - - type - - attributes - type: object - IssueIncluded: - description: >- - An array of related resources, returned when the `include` query - parameter is used. - oneOf: - - $ref: '#/components/schemas/IssueCase' - - $ref: '#/components/schemas/IssueUser' - - $ref: '#/components/schemas/IssueTeam' - IssueUpdateAssigneeRequestData: - description: Update issue assignee request. - properties: - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUpdateAssigneeRequestDataType' - required: - - id - - type - type: object - IssueUpdateStateRequestData: - description: Update issue state request. - properties: - attributes: - $ref: '#/components/schemas/IssueUpdateStateRequestDataAttributes' - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - type: - $ref: '#/components/schemas/IssueUpdateStateRequestDataType' - required: - - id - - type - - attributes - type: object - EventResponse: - description: >- - The object description of an event after being processed and stored by - Datadog. - properties: - attributes: - $ref: '#/components/schemas/EventResponseAttributes' - id: - description: the unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/EventType' - type: object - EventsListResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. Note that the request can also be - made using the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - EventsResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/EventsResponseMetadataPage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - description: The request status. - example: done - type: string - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - might be returned if - - warnings are present in the response. - items: - $ref: '#/components/schemas/EventsWarning' - type: array - type: object - EventCreateRequest: - description: An event object. - properties: - attributes: - $ref: '#/components/schemas/EventPayload' - type: - $ref: '#/components/schemas/EventCreateRequestType' - required: - - type - - attributes - type: object - EventCreateResponse: - description: Event object. - properties: - attributes: - $ref: '#/components/schemas/EventCreateResponseAttributes' - type: - description: Entity type. - example: event - type: string - type: object - EventCreateResponsePayloadLinks: - description: Links to the event. - properties: - self: - description: >- - The URL of the event. This link is only functional when using the - default subdomain. - type: string - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - EventsQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: >- - The minimum time for the requested events. Supports date math and - regular timestamps in milliseconds. - example: now-15m - type: string - query: - default: '*' - description: The search query following the event search syntax. - example: service:web* AND @http.status_code:[200 TO 299] - type: string - to: - default: now - description: >- - The maximum time for the requested events. Supports date math and - regular timestamps in milliseconds. - example: now - type: string - type: object - EventsQueryOptions: - description: >- - The global query options that are used. Either provide a timezone or a - time offset but not both, - - otherwise the query fails. - properties: - timeOffset: - description: The time offset to apply to the query in seconds. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - EventsRequestPage: - description: Pagination settings. - properties: - cursor: - description: The returned paging point to use to get the next results. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: The maximum number of logs in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - V2Event: - description: An event object. - properties: - attributes: - $ref: '#/components/schemas/V2EventAttributes' - id: - description: The event's ID. - example: '' - type: string - type: - description: Entity type. - example: event - type: string - type: object - IncidentRelatedObject: - description: Object related to an incident. - enum: - - users - - attachments - type: string - x-enum-varnames: - - USERS - - ATTACHMENTS - IncidentResponseData: - description: Incident data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentResponseAttributes' - id: - description: The incident's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentResponseRelationships' - type: - $ref: '#/components/schemas/IncidentType' - required: - - id - - type - type: object - IncidentResponseIncludedItem: - description: An object related to an incident that is included in the response. - oneOf: - - $ref: '#/components/schemas/IncidentUserData' - - $ref: '#/components/schemas/IncidentAttachmentData' - IncidentResponseMeta: - description: The metadata object containing pagination metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentResponseMetaPagination' - readOnly: true - type: object - IncidentCreateData: - description: Incident data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentCreateRelationships' - type: - $ref: '#/components/schemas/IncidentType' - required: - - type - - attributes - type: object - IncidentNotificationRuleResponseData: - description: Notification rule data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleAttributes' - id: - description: The unique identifier of the notification rule. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - id - - type - type: object - IncidentNotificationRuleIncludedItems: - description: Objects related to a notification rule. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/IncidentTypeObject' - - $ref: '#/components/schemas/IncidentNotificationTemplateObject' - IncidentNotificationRuleArrayMeta: - description: Response metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentNotificationRuleArrayMetaPage' - type: object - IncidentNotificationRuleCreateData: - description: Notification rule data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - type - - attributes - type: object - IncidentNotificationRuleUpdateData: - description: Notification rule data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationRuleCreateAttributes' - id: - description: The unique identifier of the notification rule. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationRuleCreateDataRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationRuleType' - required: - - id - - type - - attributes - type: object - IncidentNotificationTemplateResponseData: - description: Notification template data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - IncidentNotificationTemplateIncludedItems: - description: Objects related to a notification template. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/IncidentTypeObject' - IncidentNotificationTemplateArrayMeta: - description: Response metadata. - properties: - page: - $ref: '#/components/schemas/IncidentNotificationTemplateArrayMetaPage' - type: object - IncidentNotificationTemplateCreateData: - description: Notification template data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateCreateAttributes' - relationships: - $ref: >- - #/components/schemas/IncidentNotificationTemplateCreateDataRelationships - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - type - - attributes - type: object - IncidentNotificationTemplateUpdateData: - description: Notification template data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateUpdateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - IncidentTypeObject: - description: Incident type response data. - properties: - attributes: - $ref: '#/components/schemas/IncidentTypeAttributes' - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTypeRelationships' - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type - type: object - IncidentTypeCreateData: - description: Incident type data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTypeAttributes' - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - type - - attributes - type: object - IncidentTypePatchData: - description: Incident type data for a patch request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTypeUpdateAttributes' - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type - - attributes - type: object - IncidentSearchSortOrder: - description: The ways searched incidents can be sorted. - enum: - - created - - '-created' - type: string - x-enum-varnames: - - CREATED_ASCENDING - - CREATED_DESCENDING - IncidentSearchResponseData: - description: Data returned by an incident search. - properties: - attributes: - $ref: '#/components/schemas/IncidentSearchResponseAttributes' - type: - $ref: '#/components/schemas/IncidentSearchResultsType' - type: object - IncidentSearchResponseMeta: - description: The metadata object containing pagination metadata. - properties: - pagination: - $ref: '#/components/schemas/IncidentResponseMetaPagination' - readOnly: true - type: object - IncidentUpdateData: - description: Incident data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentUpdateAttributes' - id: - description: The incident's ID. - example: 00000000-0000-0000-4567-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentUpdateRelationships' - type: - $ref: '#/components/schemas/IncidentType' - required: - - id - - type - type: object - IncidentAttachmentRelatedObject: - description: The object related to an incident attachment. - enum: - - users - type: string - x-enum-varnames: - - USERS - IncidentAttachmentAttachmentType: - description: The type of the incident attachment attributes. - enum: - - link - - postmortem - example: link - type: string - x-enum-varnames: - - LINK - - POSTMORTEM - IncidentAttachmentData: - description: A single incident attachment. - example: - attributes: - attachment: - documentUrl: '' - title: Postmortem IR-123 - attachment_type: postmortem - id: 00000000-abcd-0002-0000-000000000000 - relationships: - last_modified_by_user: - data: - id: 00000000-0000-0000-cccc-000000000000 - type: users - type: incident_attachments - properties: - attributes: - $ref: '#/components/schemas/IncidentAttachmentAttributes' - id: - description: A unique identifier that represents the incident attachment. - example: 00000000-abcd-0001-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentAttachmentRelationships' - type: - $ref: '#/components/schemas/IncidentAttachmentType' - required: - - type - - attributes - - id - - relationships - type: object - IncidentAttachmentsResponseIncludedItem: - description: An object related to an attachment that is included in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentAttachmentUpdateData: - description: A single incident attachment. - properties: - attributes: - $ref: '#/components/schemas/IncidentAttachmentUpdateAttributes' - id: - description: A unique identifier that represents the incident attachment. - example: 00000000-abcd-0001-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentAttachmentType' - required: - - type - type: object - IncidentIntegrationMetadataResponseData: - description: Incident integration metadata from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - id: - description: The incident integration metadata's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentIntegrationRelationships' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - id - - type - type: object - IncidentIntegrationMetadataResponseIncludedItem: - description: >- - An object related to an incident integration metadata that is included - in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentIntegrationMetadataCreateData: - description: Incident integration metadata data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - type - - attributes - type: object - IncidentIntegrationMetadataPatchData: - description: Incident integration metadata data for a patch request. - properties: - attributes: - $ref: '#/components/schemas/IncidentIntegrationMetadataAttributes' - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - type - - attributes - type: object - IncidentTodoResponseData: - description: Incident todo response data. - properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - id: - description: The incident todo's ID. - example: 00000000-0000-0000-1234-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTodoRelationships' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - id - - type - type: object - IncidentTodoResponseIncludedItem: - description: An object related to an incident todo that is included in the response. - oneOf: - - $ref: '#/components/schemas/User' - IncidentTodoCreateData: - description: Incident todo data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - type - - attributes - type: object - IncidentTodoPatchData: - description: Incident todo data for a patch request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTodoAttributes' - type: - $ref: '#/components/schemas/IncidentTodoType' - required: - - type - - attributes - type: object - EscalationPolicyCreateRequestData: - description: >- - Represents the data for creating an escalation policy, including its - attributes, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataAttributes' - relationships: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyCreateRequestDataType' - required: - - type - - attributes - type: object - EscalationPolicyData: - description: >- - Represents the data for a single escalation policy, including its - attributes, ID, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyDataAttributes' - id: - description: Specifies the unique identifier of the escalation policy. - example: ab000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyDataType' - required: - - type - type: object - EscalationPolicyIncluded: - description: >- - Represents included related resources when retrieving an escalation - policy, such as teams, steps, or targets. - oneOf: - - $ref: '#/components/schemas/TeamReference' - - $ref: '#/components/schemas/EscalationPolicyStep' - - $ref: '#/components/schemas/EscalationPolicyUser' - - $ref: '#/components/schemas/ScheduleData' - EscalationPolicyUpdateRequestData: - description: >- - Represents the data for updating an existing escalation policy, - including its ID, attributes, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataAttributes' - id: - description: >- - Specifies the unique identifier of the escalation policy being - updated. - example: 00000000-aba1-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyUpdateRequestDataType' - required: - - type - - id - - attributes - type: object - CreatePageRequestData: - description: The main request body, including attributes and resource type. - properties: - attributes: - $ref: '#/components/schemas/CreatePageRequestDataAttributes' - type: - $ref: '#/components/schemas/CreatePageRequestDataType' - required: - - type - type: object - CreatePageResponseData: - description: The information returned after successfully creating a page. - properties: - id: - description: The unique ID of the created page. - type: string - type: - $ref: '#/components/schemas/CreatePageResponseDataType' - required: - - type - type: object - ScheduleCreateRequestData: - description: >- - The core data wrapper for creating a schedule, encompassing attributes, - relationships, and the resource type. - properties: - attributes: - $ref: '#/components/schemas/ScheduleCreateRequestDataAttributes' - relationships: - $ref: '#/components/schemas/ScheduleCreateRequestDataRelationships' - type: - $ref: '#/components/schemas/ScheduleCreateRequestDataType' - required: - - type - - attributes - type: object - ScheduleData: - description: >- - Represents the primary data object for a schedule, linking attributes - and relationships. - properties: - attributes: - $ref: '#/components/schemas/ScheduleDataAttributes' - id: - description: The schedule's unique identifier. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/ScheduleDataRelationships' - type: - $ref: '#/components/schemas/ScheduleDataType' - required: - - type - type: object - ScheduleDataIncludedItem: - description: >- - Any additional resources related to this schedule, such as teams and - layers. - oneOf: - - $ref: '#/components/schemas/TeamReference' - - $ref: '#/components/schemas/Layer' - - $ref: '#/components/schemas/ScheduleMember' - - $ref: '#/components/schemas/ScheduleUser' - ScheduleUpdateRequestData: - description: >- - Contains all data needed to update an existing schedule, including its - attributes (such as name and time zone) and any relationships to teams. - properties: - attributes: - $ref: '#/components/schemas/ScheduleUpdateRequestDataAttributes' - id: - description: The ID of the schedule to be updated. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - relationships: - $ref: '#/components/schemas/ScheduleUpdateRequestDataRelationships' - type: - $ref: '#/components/schemas/ScheduleUpdateRequestDataType' - required: - - type - - id - - attributes - type: object - ShiftData: - description: Data for an on-call shift. - properties: - attributes: - $ref: '#/components/schemas/ShiftDataAttributes' - id: - description: The `ShiftData` `id`. - type: string - relationships: - $ref: '#/components/schemas/ShiftDataRelationships' - type: - $ref: '#/components/schemas/ShiftDataType' - required: - - type - type: object - ShiftIncluded: - description: Included data for shift operations. - oneOf: - - $ref: '#/components/schemas/ScheduleUser' - TeamOnCallRespondersData: - description: >- - Defines the main on-call responder object for a team, including - relationships and metadata. - properties: - id: - description: Unique identifier of the on-call responder configuration. - type: string - relationships: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationships' - type: - $ref: '#/components/schemas/TeamOnCallRespondersDataType' - required: - - type - type: object - TeamOnCallRespondersIncluded: - description: >- - Represents an union of related resources included in the response, such - as users and escalation steps. - oneOf: - - $ref: '#/components/schemas/User' - - $ref: '#/components/schemas/Escalation' - TeamRoutingRulesData: - description: >- - Represents the top-level data object for team routing rules, containing - the ID, relationships, and resource type. - properties: - id: - description: Specifies the unique identifier of this team routing rules record. - type: string - relationships: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationships' - type: - $ref: '#/components/schemas/TeamRoutingRulesDataType' - required: - - type - type: object - TeamRoutingRulesIncluded: - description: >- - Represents additional included resources for team routing rules, such as - associated routing rules. - oneOf: - - $ref: '#/components/schemas/RoutingRule' - TeamRoutingRulesRequestData: - description: >- - Holds the data necessary to create or update team routing rules, - including attributes, ID, and resource type. - properties: - attributes: - $ref: '#/components/schemas/TeamRoutingRulesRequestDataAttributes' - id: - description: Specifies the unique identifier for this set of team routing rules. - type: string - type: - $ref: '#/components/schemas/TeamRoutingRulesRequestDataType' - required: - - type - type: object - IncidentServiceResponseData: - description: Incident Service data from responses. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceResponseAttributes' - id: - description: The incident service's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - id - - type - type: object - IncidentServiceIncludedItems: - description: >- - An object related to an incident service which is present in the - included payload. - oneOf: - - $ref: '#/components/schemas/User' - IncidentServiceCreateData: - description: Incident Service payload for create requests. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - type - type: object - ServiceDefinitionSchemaVersions: - description: Schema versions - enum: - - v1 - - v2 - - v2.1 - - v2.2 - type: string - x-enum-varnames: - - V1 - - V2 - - V2_1 - - V2_2 - ServiceDefinitionData: - description: Service definition data. - properties: - attributes: - $ref: '#/components/schemas/ServiceDefinitionDataAttributes' - id: - description: Service definition id. - type: string - type: - description: Service definition type. - type: string - type: object - ServiceDefinitionV2Dot2: - description: Service definition v2.2 for providing service metadata and integrations. - properties: - application: - description: >- - Identifier for a group of related services serving a product - feature, which the service is a part of. - example: my-app - type: string - ci-pipeline-fingerprints: - description: A set of CI fingerprints. - example: - - j88xdEy0J5lc - - eZ7LMljCk8vo - items: - type: string - type: array - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Contact' - type: array - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: my-service - type: string - description: - description: A short description of the service. - example: My service description - type: string - extensions: - additionalProperties: {} - description: Extensions to v2.2 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Integrations' - languages: - description: >- - The service's programming language. Datadog recognizes the following - languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, - and `c++`. - example: - - dotnet - - go - - java - - js - - php - - python - - ruby - - c++ - items: - type: string - type: array - lifecycle: - description: The current life cycle phase of the service. - example: sandbox - type: string - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Link' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - team: - description: >- - Team that owns the service. It is used to locate a team defined in - Datadog Teams if it exists. - example: my-team - type: string - tier: - description: Importance of the service. - example: High - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Type' - required: - - schema-version - - dd-service - type: object - ServiceDefinitionV2Dot1: - description: Service definition v2.1 for providing service metadata and integrations. - properties: - application: - description: >- - Identifier for a group of related services serving a product - feature, which the service is a part of. - example: my-app - type: string - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Contact' - type: array - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: my-service - type: string - description: - description: A short description of the service. - example: My service description - type: string - extensions: - additionalProperties: {} - description: Extensions to v2.1 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Integrations' - lifecycle: - description: The current life cycle phase of the service. - example: sandbox - type: string - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Link' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - team: - description: >- - Team that owns the service. It is used to locate a team defined in - Datadog Teams if it exists. - example: my-team - type: string - tier: - description: Importance of the service. - example: High - type: string - required: - - schema-version - - dd-service - type: object - ServiceDefinitionV2: - description: Service definition V2 for providing service metadata and integrations. - properties: - contacts: - description: A list of contacts related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Contact' - type: array - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: my-service - type: string - dd-team: - description: >- - Experimental feature. A Team handle that matches a Team in the - Datadog Teams product. - example: my-team - type: string - docs: - description: A list of documentation related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Doc' - type: array - extensions: - additionalProperties: {} - description: Extensions to V2 schema. - example: - myorg/extension: extensionValue - type: object - integrations: - $ref: '#/components/schemas/ServiceDefinitionV2Integrations' - links: - description: A list of links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Link' - type: array - repos: - description: A list of code repositories related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV2Repo' - type: array - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV2Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - team: - description: Team that owns the service. - example: my-team - type: string - required: - - schema-version - - dd-service - type: object - ServiceDefinitionRaw: - description: Service Definition in raw JSON/YAML representation. - example: | - --- - schema-version: v2 - dd-service: my-service - type: string - IncidentServiceUpdateData: - description: Incident Service payload for update requests. - properties: - attributes: - $ref: '#/components/schemas/IncidentServiceUpdateAttributes' - id: - description: The incident service's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentServiceRelationships' - type: - $ref: '#/components/schemas/IncidentServiceType' - required: - - type - type: object - SloReportCreateRequestData: - description: The data portion of the SLO report request. - properties: - attributes: - $ref: '#/components/schemas/SloReportCreateRequestAttributes' - required: - - attributes - type: object - SLOReportPostResponseData: - description: The data portion of the SLO report response. - properties: - id: - description: The ID of the report job. - example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 - type: string - type: - description: The type of ID. - example: report_id - type: string - type: object - SLOReportStatusGetResponseData: - description: The data portion of the SLO report status response. - properties: - attributes: - $ref: '#/components/schemas/SLOReportStatusGetResponseAttributes' - id: - description: The ID of the report job. - example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3 - type: string - type: - description: The type of ID. - example: report_id - type: string - type: object - IncidentTeamResponseData: - description: Incident Team data from a response. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamResponseAttributes' - id: - description: The incident team's ID. - example: 00000000-7ea3-0000-000a-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' - type: object - IncidentTeamIncludedItems: - description: >- - An object related to an incident team which is present in the included - payload. - oneOf: - - $ref: '#/components/schemas/User' - IncidentTeamCreateData: - description: Incident Team data for a create request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamCreateAttributes' - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' - required: - - type - type: object - IncidentTeamUpdateData: - description: Incident Team data for an update request. - properties: - attributes: - $ref: '#/components/schemas/IncidentTeamUpdateAttributes' - id: - description: The incident team's ID. - example: 00000000-7ea3-0000-0001-000000000000 - type: string - relationships: - $ref: '#/components/schemas/IncidentTeamRelationships' - type: - $ref: '#/components/schemas/IncidentTeamType' - required: - - type - type: object - CaseAttributes: - description: Case resource attributes - properties: - archived_at: - description: Timestamp of when the case was archived - format: date-time - nullable: true - readOnly: true - type: string - attributes: - $ref: '#/components/schemas/CaseObjectAttributes' - closed_at: - description: Timestamp of when the case was closed - format: date-time - nullable: true - readOnly: true - type: string - created_at: - description: Timestamp of when the case was created - format: date-time - readOnly: true - type: string - description: - description: Description - type: string - jira_issue: - $ref: '#/components/schemas/JiraIssue' - key: - description: Key - example: CASEM-4523 - type: string - modified_at: - description: Timestamp of when the case was last modified - format: date-time - nullable: true - readOnly: true - type: string - priority: - $ref: '#/components/schemas/CasePriority' - service_now_ticket: - $ref: '#/components/schemas/ServiceNowTicket' - status: - $ref: '#/components/schemas/CaseStatus' - title: - description: Title - example: Memory leak investigation on API - type: string - type: - $ref: '#/components/schemas/CaseType' - type: object - CaseRelationships: - description: Resources related to a case - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - created_by: - $ref: '#/components/schemas/NullableUserRelationship' - modified_by: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - type: object - CaseResourceType: - default: case - description: Case resource type - enum: - - case - example: case - type: string - x-enum-varnames: - - CASE - CasesResponseMetaPagination: - description: Pagination metadata - properties: - current: - description: Current page number - format: int64 - type: integer - size: - description: Number of cases in current page - format: int64 - type: integer - total: - description: Total number of pages - format: int64 - type: integer - type: object - CaseCreateAttributes: - description: Case creation attributes - properties: - description: - description: Description - type: string - priority: - $ref: '#/components/schemas/CasePriority' - title: - description: Title - example: Security breach investigation - type: string - type: - $ref: '#/components/schemas/CaseType' - required: - - title - - type - type: object - CaseCreateRelationships: - description: Relationships formed with the case on creation - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - required: - - project - type: object - ProjectAttributes: - description: Project attributes - properties: - key: - description: The project's key - example: CASEM - type: string - name: - description: Project's name - type: string - type: object - ProjectRelationships: - description: Project relationships - properties: - member_team: - $ref: '#/components/schemas/RelationshipToTeamLinks' - member_user: - $ref: '#/components/schemas/UsersRelationship' - type: object - ProjectResourceType: - default: project - description: Project resource type - enum: - - project - example: project - type: string - x-enum-varnames: - - PROJECT - ProjectCreateAttributes: - description: Project creation attributes - properties: - key: - description: Project's key. Cannot be "CASE" - example: SEC - type: string - name: - description: name - example: Security Investigation - type: string - required: - - name - - key - type: object - CaseAssignAttributes: - description: Case assign attributes - properties: - assignee_id: - description: Assignee's UUID - example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 - type: string - required: - - assignee_id - type: object - CaseUpdateAttributesAttributes: - description: Case update attributes attributes - properties: - attributes: - $ref: '#/components/schemas/CaseObjectAttributes' - required: - - attributes - type: object - CaseUpdatePriorityAttributes: - description: Case update priority attributes - properties: - priority: - $ref: '#/components/schemas/CasePriority' - required: - - priority - type: object - CaseUpdateStatusAttributes: - description: Case update status attributes - properties: - status: - $ref: '#/components/schemas/CaseStatus' - required: - - status - type: object - DowntimeResponseAttributes: - description: Downtime details. - properties: - canceled: - description: Time that the downtime was canceled. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - nullable: true - type: string - created: - description: Creation time of the downtime. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - type: string - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - modified: - description: Time that the downtime was last modified. - example: 2020-01-02T03:04:05.282979+0000 - format: date-time - type: string - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleResponse' - scope: - $ref: '#/components/schemas/DowntimeScope' - status: - $ref: '#/components/schemas/DowntimeStatus' - type: object - DowntimeRelationships: - description: All relationships associated with downtime. - properties: - created_by: - $ref: '#/components/schemas/DowntimeRelationshipsCreatedBy' - monitor: - $ref: '#/components/schemas/DowntimeRelationshipsMonitor' - type: object - DowntimeResourceType: - default: downtime - description: Downtime resource type. - enum: - - downtime - example: downtime - type: string - x-enum-varnames: - - DOWNTIME - User: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/UserAttributes' - id: - description: ID of the user. - type: string - relationships: - $ref: '#/components/schemas/UserResponseRelationships' - type: - $ref: '#/components/schemas/UsersType' - type: object - DowntimeMonitorIncludedItem: - description: Information about the monitor identified by the downtime. - properties: - attributes: - $ref: '#/components/schemas/DowntimeMonitorIncludedAttributes' - id: - description: ID of the monitor identified by the downtime. - example: 12345 - format: int64 - type: integer - type: - $ref: '#/components/schemas/DowntimeIncludedMonitorType' - type: object - DowntimeMetaPage: - description: Object containing the total filtered count. - properties: - total_filtered_count: - description: Total count of elements matched by the filter. - format: int64 - type: integer - type: object - DowntimeCreateRequestAttributes: - description: Downtime details. - properties: - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleCreateRequest' - scope: - $ref: '#/components/schemas/DowntimeScope' - required: - - scope - - monitor_identifier - type: object - DowntimeUpdateRequestAttributes: - description: Attributes of the downtime to update. - properties: - display_timezone: - $ref: '#/components/schemas/DowntimeDisplayTimezone' - message: - $ref: '#/components/schemas/DowntimeMessage' - monitor_identifier: - $ref: '#/components/schemas/DowntimeMonitorIdentifier' - mute_first_recovery_notification: - $ref: '#/components/schemas/DowntimeMuteFirstRecoveryNotification' - notify_end_states: - $ref: '#/components/schemas/DowntimeNotifyEndStates' - notify_end_types: - $ref: '#/components/schemas/DowntimeNotifyEndTypes' - schedule: - $ref: '#/components/schemas/DowntimeScheduleUpdateRequest' - scope: - $ref: '#/components/schemas/DowntimeScope' - type: object - IssuesSearchRequestDataAttributes: - description: Object describing a search issue request. - properties: - from: - description: >- - Start date (inclusive) of the query in milliseconds since the Unix - epoch. - example: 1671612804000 - format: int64 - type: integer - order_by: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesOrderBy' - persona: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesPersona' - query: - description: Search query following the event search syntax. - example: service:orders-* AND @language:go - type: string - to: - description: >- - End date (exclusive) of the query in milliseconds since the Unix - epoch. - example: 1671620004000 - format: int64 - type: integer - track: - $ref: '#/components/schemas/IssuesSearchRequestDataAttributesTrack' - required: - - query - - from - - to - type: object - IssuesSearchRequestDataType: - description: Type of the object. - enum: - - search_request - example: search_request - type: string - x-enum-varnames: - - SEARCH_REQUEST - IssuesSearchResultAttributes: - description: Object containing the information of a search result. - properties: - impacted_sessions: - description: >- - Count of sessions impacted by the issue over the queried time - window. - example: 12 - format: int64 - type: integer - impacted_users: - description: Count of users impacted by the issue over the queried time window. - example: 4 - format: int64 - type: integer - total_count: - description: >- - Total count of errors that match the issue over the queried time - window. - example: 82 - format: int64 - type: integer - type: object - IssuesSearchResultRelationships: - description: Relationships between the search result and other resources. - properties: - issue: - $ref: '#/components/schemas/IssuesSearchResultIssueRelationship' - type: object - IssuesSearchResultType: - description: Type of the object. - enum: - - error_tracking_search_result - example: error_tracking_search_result - type: string - x-enum-varnames: - - ERROR_TRACKING_SEARCH_RESULT - IssueUser: - description: The user to whom the issue is assigned. - properties: - attributes: - $ref: '#/components/schemas/IssueUserAttributes' - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUserType' - required: - - id - - type - - attributes - type: object - IssueTeam: - description: A team that owns an issue. - properties: - attributes: - $ref: '#/components/schemas/IssueTeamAttributes' - id: - description: Team identifier. - example: 221b0179-6447-4d03-91c3-3ca98bf60e8a - type: string - type: - $ref: '#/components/schemas/IssueTeamType' - required: - - id - - type - - attributes - type: object - IssueAttributes: - description: Object containing the information of an issue. - properties: - error_message: - description: Error message associated with the issue. - example: object of type 'NoneType' has no len() - type: string - error_type: - description: Type of the error that matches the issue. - example: builtins.TypeError - type: string - file_path: - description: Path of the file where the issue occurred. - example: /django-email/conduit/apps/core/utils.py - type: string - first_seen: - description: >- - Timestamp of the first seen error in milliseconds since the Unix - epoch. - example: 1671612804001 - format: int64 - type: integer - first_seen_version: - description: >- - The application version (for example, git commit hash) where the - issue was first observed. - example: aaf65cd0 - type: string - function_name: - description: Name of the function where the issue occurred. - example: filter_forbidden_tags - type: string - is_crash: - description: Error is a crash. - example: false - type: boolean - languages: - description: Array of programming languages associated with the issue. - example: - - PYTHON - - GO - items: - $ref: '#/components/schemas/IssueLanguage' - type: array - last_seen: - description: >- - Timestamp of the last seen error in milliseconds since the Unix - epoch. - example: 1671620003100 - format: int64 - type: integer - last_seen_version: - description: >- - The application version (for example, git commit hash) where the - issue was last observed. - example: b6199f80 - type: string - platform: - $ref: '#/components/schemas/IssuePlatform' - service: - description: Service name. - example: email-api-py - type: string - state: - $ref: '#/components/schemas/IssueState' - type: object - IssueRelationships: - description: Relationship between the issue and an assignee, case and/or teams. - properties: - assignee: - $ref: '#/components/schemas/IssueAssigneeRelationship' - case: - $ref: '#/components/schemas/IssueCaseRelationship' - team_owners: - $ref: '#/components/schemas/IssueTeamOwnersRelationship' - type: object - IssueType: - description: Type of the object. - enum: - - issue - example: issue - type: string - x-enum-varnames: - - ISSUE - IssueCase: - description: The case attached to the issue. - properties: - attributes: - $ref: '#/components/schemas/IssueCaseAttributes' - id: - description: Case identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - relationships: - $ref: '#/components/schemas/IssueCaseRelationships' - type: - $ref: '#/components/schemas/IssueCaseResourceType' - required: - - id - - type - - attributes - type: object - IssueUpdateAssigneeRequestDataType: - description: Type of the object. - enum: - - assignee - example: assignee - type: string - x-enum-varnames: - - ASSIGNEE - IssueUpdateStateRequestDataAttributes: - description: Object describing an issue state update request. - properties: - state: - $ref: '#/components/schemas/IssueState' - required: - - state - type: object - IssueUpdateStateRequestDataType: - description: Type of the object. - enum: - - error_tracking_issue - example: error_tracking_issue - type: string - x-enum-varnames: - - ERROR_TRACKING_ISSUE - EventResponseAttributes: - description: The object description of an event response attribute. - properties: - attributes: - $ref: '#/components/schemas/EventAttributes' - message: - description: The message of the event. - type: string - tags: - description: An array of tags associated with the event. - example: - - team:A - items: - description: The tag associated with the event. - type: string - type: array - timestamp: - description: The timestamp of the event. - example: '2019-01-02T09:42:36.320Z' - format: date-time - type: string - type: object - EventType: - default: event - description: Type of the event. - enum: - - event - example: event - type: string - x-enum-varnames: - - EVENT - EventsResponseMetadataPage: - description: Pagination attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same - - parameters with the addition of the `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - EventsWarning: - description: A warning message indicating something is wrong with the query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid. Results hold data - from the other indexes. - type: string - type: object - EventPayload: - additionalProperties: false - description: Event attributes. - properties: - aggregation_key: - description: >- - A string used for aggregation when - [correlating](https://docs.datadoghq.com/service_management/events/correlation/) - events. If you specify a key, events are deduplicated to alerts - based on this key. Limited to 100 characters. - example: aggregation_key_123 - maxLength: 100 - minLength: 1 - type: string - attributes: - $ref: '#/components/schemas/EventPayloadAttributes' - category: - $ref: '#/components/schemas/EventCategory' - integration_id: - $ref: '#/components/schemas/EventPayloadIntegrationId' - message: - description: >- - Free formed text associated with the event. It's suggested to use - `data.attributes.attributes.custom` for well-structured attributes. - Limited to 4000 characters. - example: payment_processed feature flag has been enabled - maxLength: 4000 - minLength: 1 - type: string - tags: - description: >- - A list of tags associated with the event. Maximum of 100 tags - allowed. - - Refer to [Tags - docs](https://docs.datadoghq.com/getting_started/tagging/). - example: - - env:api_client_test - items: - description: A tag. - maxLength: 200 - minLength: 1 - type: string - maxItems: 100 - minItems: 1 - type: array - timestamp: - description: >- - Timestamp when the event occurred. Must follow [ISO - 8601](https://www.iso.org/iso-8601-date-and-time-format.html) - format. - - For example `"2017-01-15T01:30:15.010000Z"`. - - Defaults to the timestamp of receipt. Limited to values no older - than 18 hours. - type: string - title: - description: The title of the event. Limited to 500 characters. - example: payment_processed feature flag updated - maxLength: 500 - minLength: 1 - type: string - required: - - title - - category - - attributes - type: object - EventCreateRequestType: - description: Entity type. - enum: - - event - example: event - type: string - x-enum-varnames: - - EVENT - EventCreateResponseAttributes: - description: Event attributes. - properties: - attributes: - $ref: '#/components/schemas/EventCreateResponseAttributesAttributes' - type: object - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - V2EventAttributes: - description: Event attributes. - properties: - attributes: - $ref: '#/components/schemas/V2EventAttributesAttributes' - message: - description: Free-form text associated with the event. - example: The event message - type: string - tags: - description: A list of tags associated with the event. - example: - - env:api_client_test - items: - description: A tag. - type: string - type: array - timestamp: - description: Timestamp when the event occurred. - example: '2017-01-15T01:30:15.010000Z' - type: string - type: object - IncidentResponseAttributes: - description: The incident's attributes from a response. - properties: - archived: - description: Timestamp of when the incident was archived. - format: date-time - nullable: true - readOnly: true - type: string - case_id: - description: The incident case id. - format: int64 - nullable: true - type: integer - created: - description: Timestamp when the incident was created. - format: date-time - readOnly: true - type: string - customer_impact_duration: - description: >- - Length of the incident's customer impact in seconds. - - Equals the difference between `customer_impact_start` and - `customer_impact_end`. - format: int64 - readOnly: true - type: integer - customer_impact_end: - description: Timestamp when customers were no longer impacted by the incident. - format: date-time - nullable: true - type: string - customer_impact_scope: - description: A summary of the impact customers experienced during the incident. - example: An example customer impact scope - nullable: true - type: string - customer_impact_start: - description: Timestamp when customers began being impacted by the incident. - format: date-time - nullable: true - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - detected: - description: Timestamp when the incident was detected. - format: date-time - nullable: true - type: string - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: A condensed view of the user-defined fields attached to incidents. - example: - severity: - type: dropdown - value: SEV-5 - type: object - incident_type_uuid: - description: A unique identifier that represents an incident type. - example: 00000000-0000-0000-0000-000000000000 - type: string - is_test: - description: A flag indicating whether the incident is a test incident. - example: false - type: boolean - modified: - description: Timestamp when the incident was last modified. - format: date-time - readOnly: true - type: string - non_datadog_creator: - $ref: '#/components/schemas/IncidentNonDatadogCreator' - notification_handles: - description: >- - Notification handles that will be notified of the incident during - update. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' - items: - $ref: '#/components/schemas/IncidentNotificationHandle' - nullable: true - type: array - public_id: - description: The monotonically increasing integer ID for the incident. - example: 1 - format: int64 - type: integer - resolved: - description: >- - Timestamp when the incident's state was last changed from active or - stable to resolved or completed. - format: date-time - nullable: true - type: string - severity: - $ref: '#/components/schemas/IncidentSeverity' - state: - description: The state incident. - nullable: true - type: string - time_to_detect: - description: >- - The amount of time in seconds to detect the incident. - - Equals the difference between `customer_impact_start` and - `detected`. - format: int64 - readOnly: true - type: integer - time_to_internal_response: - description: >- - The amount of time in seconds to call incident after detection. - Equals the difference of `detected` and `created`. - format: int64 - readOnly: true - type: integer - time_to_repair: - description: >- - The amount of time in seconds to resolve customer impact after - detecting the issue. Equals the difference between - `customer_impact_end` and `detected`. - format: int64 - readOnly: true - type: integer - time_to_resolve: - description: >- - The amount of time in seconds to resolve the incident after it was - created. Equals the difference between `created` and `resolved`. - format: int64 - readOnly: true - type: integer - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - visibility: - description: The incident visibility status. - nullable: true - type: string - required: - - title - type: object - IncidentResponseRelationships: - description: The incident's relationships from a response. - properties: - attachments: - $ref: '#/components/schemas/RelationshipToIncidentAttachment' - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - impacts: - $ref: '#/components/schemas/RelationshipToIncidentImpacts' - integrations: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - responders: - $ref: '#/components/schemas/RelationshipToIncidentResponders' - user_defined_fields: - $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFields' - type: object - IncidentType: - default: incidents - description: Incident resource type. - enum: - - incidents - example: incidents - type: string - x-enum-varnames: - - INCIDENTS - IncidentUserData: - description: User object returned by the API. - properties: - attributes: - $ref: '#/components/schemas/IncidentUserAttributes' - id: - description: ID of the user. - type: string - type: - $ref: '#/components/schemas/UsersType' - type: object - IncidentResponseMetaPagination: - description: Pagination properties. - properties: - next_offset: - description: >- - The index of the first element in the next page of results. Equal to - page size added to the current offset. - example: 1000 - format: int64 - type: integer - offset: - description: The index of the first element in the results. - example: 10 - format: int64 - type: integer - size: - description: Maximum size of pages to return. - example: 1000 - format: int64 - type: integer - type: object - IncidentCreateAttributes: - description: The incident's attributes for a create request. - properties: - customer_impact_scope: - description: >- - Required if `customer_impacted:"true"`. A summary of the impact - customers experienced during the incident. - example: Example customer impact scope - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: >- - A condensed view of the user-defined fields for which to create - initial selections. - example: - severity: - type: dropdown - value: SEV-5 - type: object - incident_type_uuid: - description: >- - A unique identifier that represents an incident type. The default - incident type will be used if this property is not provided. - example: 00000000-0000-0000-0000-000000000000 - type: string - initial_cells: - description: >- - An array of initial timeline cells to be placed at the beginning of - the incident timeline. - items: - $ref: '#/components/schemas/IncidentTimelineCellCreateAttributes' - type: array - is_test: - description: A flag indicating whether the incident is a test incident. - example: false - type: boolean - notification_handles: - description: >- - Notification handles that will be notified of the incident at - creation. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' - items: - $ref: '#/components/schemas/IncidentNotificationHandle' - type: array - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - required: - - title - - customer_impacted - type: object - IncidentCreateRelationships: - description: >- - The relationships the incident will have with other resources once - created. - properties: - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - required: - - commander_user - type: object - IncidentNotificationRuleAttributes: - description: The notification rule's attributes. - properties: - conditions: - $ref: '#/components/schemas/IncidentNotificationRuleConditions' - created: - description: Timestamp when the notification rule was created. - example: '2025-01-15T10:30:00Z' - format: date-time - readOnly: true - type: string - enabled: - description: Whether the notification rule is enabled. - example: true - type: boolean - handles: - $ref: '#/components/schemas/IncidentNotificationRuleHandles' - modified: - description: Timestamp when the notification rule was last modified. - example: '2025-01-15T14:45:00Z' - format: date-time - readOnly: true - type: string - renotify_on: - $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' - trigger: - description: The trigger event for this notification rule. - example: incident_created_trigger - type: string - visibility: - $ref: '#/components/schemas/IncidentNotificationRuleAttributesVisibility' - required: - - conditions - - handles - - visibility - - trigger - - enabled - - created - - modified - type: object - IncidentNotificationRuleRelationships: - description: The notification rule's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - notification_template: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' - type: object - IncidentNotificationRuleType: - description: Notification rules resource type. - enum: - - incident_notification_rules - example: incident_notification_rules - type: string - x-enum-varnames: - - INCIDENT_NOTIFICATION_RULES - IncidentNotificationTemplateObject: - description: A notification template object for inclusion in other resources. - properties: - attributes: - $ref: '#/components/schemas/IncidentNotificationTemplateAttributes' - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - relationships: - $ref: '#/components/schemas/IncidentNotificationTemplateRelationships' - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - IncidentNotificationRuleArrayMetaPage: - description: Pagination metadata. - properties: - next_offset: - description: The offset for the next page of results. - example: 15 - format: int64 - type: integer - offset: - description: The current offset in the results. - example: 0 - format: int64 - type: integer - size: - description: The number of results returned per page. - example: 15 - format: int64 - type: integer - type: object - IncidentNotificationRuleCreateAttributes: - description: The attributes for creating a notification rule. - properties: - conditions: - $ref: '#/components/schemas/IncidentNotificationRuleConditions' - enabled: - default: false - description: Whether the notification rule is enabled. - example: true - type: boolean - handles: - $ref: '#/components/schemas/IncidentNotificationRuleHandles' - renotify_on: - $ref: '#/components/schemas/IncidentNotificationRuleRenotifyOn' - trigger: - description: The trigger event for this notification rule. - example: incident_created_trigger - type: string - visibility: - $ref: >- - #/components/schemas/IncidentNotificationRuleCreateAttributesVisibility - required: - - conditions - - handles - - trigger - type: object - IncidentNotificationRuleCreateDataRelationships: - description: The definition of `NotificationRuleCreateDataRelationships` object. - properties: - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - notification_template: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplate' - type: object - IncidentNotificationTemplateAttributes: - description: The notification template's attributes. - properties: - category: - description: The category of the notification template. - example: alert - type: string - content: - description: The content body of the notification template. - example: |- - An incident has been declared. - - Title: {{incident.title}} - Severity: {{incident.severity}} - Affected Services: {{incident.services}} - Status: {{incident.state}} - - Please join the incident channel for updates. - type: string - created: - description: Timestamp when the notification template was created. - example: '2025-01-15T10:30:00Z' - format: date-time - readOnly: true - type: string - modified: - description: Timestamp when the notification template was last modified. - example: '2025-01-15T14:45:00Z' - format: date-time - readOnly: true - type: string - name: - description: The name of the notification template. - example: Incident Alert Template - type: string - subject: - description: The subject line of the notification template. - example: '{{incident.severity}} Incident: {{incident.title}}' - type: string - required: - - name - - subject - - content - - category - - created - - modified - type: object - IncidentNotificationTemplateRelationships: - description: The notification template's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentNotificationTemplateType: - description: Notification templates resource type. - enum: - - notification_templates - example: notification_templates - type: string - x-enum-varnames: - - NOTIFICATION_TEMPLATES - IncidentNotificationTemplateArrayMetaPage: - description: Pagination metadata. - properties: - total_count: - description: Total number of notification templates. - example: 42 - format: int64 - type: integer - total_filtered_count: - description: Total number of notification templates matching the filter. - example: 15 - format: int64 - type: integer - type: object - IncidentNotificationTemplateCreateAttributes: - description: The attributes for creating a notification template. - properties: - category: - description: The category of the notification template. - example: alert - type: string - content: - description: The content body of the notification template. - example: |- - An incident has been declared. - - Title: {{incident.title}} - Severity: {{incident.severity}} - Affected Services: {{incident.services}} - Status: {{incident.state}} - - Please join the incident channel for updates. - type: string - name: - description: The name of the notification template. - example: Incident Alert Template - type: string - subject: - description: The subject line of the notification template. - example: '{{incident.severity}} Incident: {{incident.title}}' - type: string - required: - - name - - subject - - content - - category - type: object - IncidentNotificationTemplateCreateDataRelationships: - description: The definition of `NotificationTemplateCreateDataRelationships` object. - properties: - incident_type: - $ref: '#/components/schemas/RelationshipToIncidentType' - type: object - IncidentNotificationTemplateUpdateAttributes: - description: The attributes to update on a notification template. - properties: - category: - description: The category of the notification template. - example: update - type: string - content: - description: The content body of the notification template. - example: |- - Incident Status Update: - - Title: {{incident.title}} - New Status: {{incident.state}} - Severity: {{incident.severity}} - Services: {{incident.services}} - Commander: {{incident.commander}} - - For more details, visit the incident page. - type: string - name: - description: The name of the notification template. - example: Incident Status Update Template - type: string - subject: - description: The subject line of the notification template. - example: 'Incident Update: {{incident.title}} - {{incident.state}}' - type: string - type: object - IncidentTypeAttributes: - description: Incident type's attributes. - properties: - createdAt: - description: Timestamp when the incident type was created. - format: date-time - readOnly: true - type: string - createdBy: - description: >- - A unique identifier that represents the user that created the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - description: - description: Text that describes the incident type. - example: >- - Any incidents that harm (or have the potential to) the - confidentiality, integrity, or availability of our data. - type: string - is_default: - default: false - description: >- - If true, this incident type will be used as the default incident - type if a type is not specified during the creation of incident - resources. - example: false - type: boolean - lastModifiedBy: - description: >- - A unique identifier that represents the user that last modified the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - modifiedAt: - description: Timestamp when the incident type was last modified. - format: date-time - readOnly: true - type: string - name: - description: The name of the incident type. - example: Security Incident - type: string - prefix: - description: >- - The string that will be prepended to the incident title across the - Datadog app. - example: IR - readOnly: true - type: string - required: - - name - type: object - IncidentTypeRelationships: - additionalProperties: {} - description: The incident type's resource relationships. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - google_meet_configuration: - $ref: '#/components/schemas/GoogleMeetConfigurationReference' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - microsoft_teams_configuration: - $ref: '#/components/schemas/MicrosoftTeamsConfigurationReference' - zoom_configuration: - $ref: '#/components/schemas/ZoomConfigurationReference' - type: object - IncidentTypeType: - default: incident_types - description: Incident type resource type. - enum: - - incident_types - example: incident_types - type: string - x-enum-varnames: - - INCIDENT_TYPES - IncidentTypeUpdateAttributes: - description: Incident type's attributes for updates. - properties: - createdAt: - description: Timestamp when the incident type was created. - format: date-time - readOnly: true - type: string - createdBy: - description: >- - A unique identifier that represents the user that created the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - description: - description: Text that describes the incident type. - example: >- - Any incidents that harm (or have the potential to) the - confidentiality, integrity, or availability of our data. Note: This - will notify the security team. - type: string - is_default: - description: >- - When true, this incident type will be used as the default type when - an incident type is not specified. - example: false - type: boolean - lastModifiedBy: - description: >- - A unique identifier that represents the user that last modified the - incident type. - example: 00000000-0000-0000-0000-000000000000 - readOnly: true - type: string - modifiedAt: - description: Timestamp when the incident type was last modified. - format: date-time - readOnly: true - type: string - name: - description: The name of the incident type. - example: Security Incident - type: string - prefix: - description: >- - The string that will be prepended to the incident title across the - Datadog app. - example: IR - readOnly: true - type: string - type: object - IncidentSearchResponseAttributes: - description: Attributes returned by an incident search. - properties: - facets: - $ref: '#/components/schemas/IncidentSearchResponseFacetsData' - incidents: - description: Incidents returned by the search. - items: - $ref: '#/components/schemas/IncidentSearchResponseIncidentsData' - type: array - total: - description: Number of incidents returned by the search. - example: 10 - format: int32 - maximum: 2147483647 - type: integer - required: - - facets - - incidents - - total - type: object - IncidentSearchResultsType: - default: incidents_search_results - description: Incident search result type. - enum: - - incidents_search_results - example: incidents_search_results - type: string - x-enum-varnames: - - INCIDENTS_SEARCH_RESULTS - IncidentUpdateAttributes: - description: The incident's attributes for an update request. - properties: - customer_impact_end: - description: Timestamp when customers were no longer impacted by the incident. - format: date-time - nullable: true - type: string - customer_impact_scope: - description: A summary of the impact customers experienced during the incident. - example: Example customer impact scope - type: string - customer_impact_start: - description: Timestamp when customers began being impacted by the incident. - format: date-time - nullable: true - type: string - customer_impacted: - description: A flag indicating whether the incident caused customer impact. - example: false - type: boolean - detected: - description: Timestamp when the incident was detected. - format: date-time - nullable: true - type: string - fields: - additionalProperties: - $ref: '#/components/schemas/IncidentFieldAttributes' - description: >- - A condensed view of the user-defined fields for which to update - selections. - example: - severity: - type: dropdown - value: SEV-5 - type: object - notification_handles: - description: >- - Notification handles that will be notified of the incident during - update. - example: - - display_name: Jane Doe - handle: '@user@email.com' - - display_name: Slack Channel - handle: '@slack-channel' - - display_name: Incident Workflow - handle: '@workflow-from-incident' - items: - $ref: '#/components/schemas/IncidentNotificationHandle' - type: array - title: - description: The title of the incident, which summarizes what happened. - example: A test incident title - type: string - type: object - IncidentUpdateRelationships: - description: The incident's relationships for an update request. - properties: - commander_user: - $ref: '#/components/schemas/NullableRelationshipToUser' - integrations: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadatas' - postmortem: - $ref: '#/components/schemas/RelationshipToIncidentPostmortem' - type: object - IncidentAttachmentAttributes: - description: The attributes object for an attachment. - oneOf: - - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' - - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' - IncidentAttachmentRelationships: - description: The incident attachment's relationships. - properties: - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentAttachmentType: - default: incident_attachments - description: The incident attachment resource type. - enum: - - incident_attachments - example: incident_attachments - type: string - x-enum-varnames: - - INCIDENT_ATTACHMENTS - IncidentAttachmentUpdateAttributes: - description: Incident attachment attributes. - oneOf: - - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttributes' - - $ref: '#/components/schemas/IncidentAttachmentLinkAttributes' - IncidentIntegrationMetadataAttributes: - description: Incident integration metadata's attributes for a create request. - properties: - created: - description: Timestamp when the incident todo was created. - format: date-time - readOnly: true - type: string - incident_id: - description: UUID of the incident this integration metadata is connected to. - example: 00000000-aaaa-0000-0000-000000000000 - type: string - integration_type: - description: >- - A number indicating the type of integration this metadata is for. 1 - indicates Slack; - - 8 indicates Jira. - example: 1 - format: int32 - maximum: 9 - type: integer - metadata: - $ref: '#/components/schemas/IncidentIntegrationMetadataMetadata' - modified: - description: Timestamp when the incident todo was last modified. - format: date-time - readOnly: true - type: string - status: - description: >- - A number indicating the status of this integration metadata. 0 - indicates unknown; - - 1 indicates pending; 2 indicates complete; 3 indicates manually - created; - - 4 indicates manually updated; 5 indicates failed. - format: int32 - maximum: 5 - type: integer - required: - - integration_type - - metadata - type: object - IncidentIntegrationRelationships: - description: The incident's integration relationships from a response. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentIntegrationMetadataType: - default: incident_integrations - description: Integration metadata resource type. - enum: - - incident_integrations - example: incident_integrations - type: string - x-enum-varnames: - - INCIDENT_INTEGRATIONS - IncidentTodoAttributes: - description: Incident todo's attributes. - properties: - assignees: - $ref: '#/components/schemas/IncidentTodoAssigneeArray' - completed: - description: Timestamp when the todo was completed. - example: '2023-03-06T22:00:00.000000+00:00' - nullable: true - type: string - content: - description: The follow-up task's content. - example: Restore lost data. - type: string - created: - description: Timestamp when the incident todo was created. - format: date-time - readOnly: true - type: string - due_date: - description: Timestamp when the todo should be completed by. - example: '2023-07-10T05:00:00.000000+00:00' - nullable: true - type: string - incident_id: - description: UUID of the incident this todo is connected to. - example: 00000000-aaaa-0000-0000-000000000000 - type: string - modified: - description: Timestamp when the incident todo was last modified. - format: date-time - readOnly: true - type: string - required: - - content - - assignees - type: object - IncidentTodoRelationships: - description: The incident's relationships from a response. - properties: - created_by_user: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by_user: - $ref: '#/components/schemas/RelationshipToUser' - type: object - IncidentTodoType: - default: incident_todos - description: Todo resource type. - enum: - - incident_todos - example: incident_todos - type: string - x-enum-varnames: - - INCIDENT_TODOS - EscalationPolicyCreateRequestDataAttributes: - description: >- - Defines the attributes for creating an escalation policy, including its - description, name, resolution behavior, retries, and steps. - properties: - name: - description: Specifies the name for the new escalation policy. - example: On-Call Escalation Policy - type: string - resolve_page_on_policy_end: - description: >- - Indicates whether the page is automatically resolved when the policy - ends. - type: boolean - retries: - description: >- - Specifies how many times the escalation sequence is retried if there - is no response. - format: int64 - type: integer - steps: - description: >- - A list of escalation steps, each defining assignment, escalation - timeout, and targets for the new policy. - items: - $ref: >- - #/components/schemas/EscalationPolicyCreateRequestDataAttributesStepsItems - type: array - required: - - name - - steps - type: object - EscalationPolicyCreateRequestDataRelationships: - description: >- - Represents relationships in an escalation policy creation request, - including references to teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - EscalationPolicyCreateRequestDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - EscalationPolicyDataAttributes: - description: >- - Defines the main attributes of an escalation policy, such as its name - and behavior on policy end. - properties: - name: - description: Specifies the name of the escalation policy. - example: On-Call Escalation Policy - type: string - resolve_page_on_policy_end: - description: >- - Indicates whether the page is automatically resolved when the policy - ends. - type: boolean - retries: - description: >- - Specifies how many times the escalation sequence is retried if there - is no response. - format: int64 - type: integer - required: - - name - type: object - EscalationPolicyDataRelationships: - description: >- - Represents the relationships for an escalation policy, including - references to steps and teams. - properties: - steps: - $ref: '#/components/schemas/EscalationPolicyDataRelationshipsSteps' - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - required: - - steps - type: object - EscalationPolicyDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - TeamReference: - description: >- - Provides a reference to a team, including ID, type, and basic - attributes/relationships. - properties: - attributes: - $ref: '#/components/schemas/TeamReferenceAttributes' - id: - description: The team's unique identifier. - type: string - type: - $ref: '#/components/schemas/TeamReferenceType' - required: - - type - type: object - EscalationPolicyStep: - description: >- - Represents a single step in an escalation policy, including its - attributes, relationships, and resource type. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyStepAttributes' - id: - description: Specifies the unique identifier of this escalation policy step. - type: string - relationships: - $ref: '#/components/schemas/EscalationPolicyStepRelationships' - type: - $ref: '#/components/schemas/EscalationPolicyStepType' - required: - - type - type: object - EscalationPolicyUser: - description: >- - Represents a user object in the context of an escalation policy, - including their `id`, type, and basic attributes. - properties: - attributes: - $ref: '#/components/schemas/EscalationPolicyUserAttributes' - id: - description: The unique user identifier. - type: string - type: - $ref: '#/components/schemas/EscalationPolicyUserType' - required: - - type - type: object - EscalationPolicyUpdateRequestDataAttributes: - description: >- - Defines the attributes that can be updated for an escalation policy, - such as description, name, resolution behavior, retries, and steps. - properties: - name: - description: Specifies the name of the escalation policy. - example: On-Call Escalation Policy - type: string - resolve_page_on_policy_end: - description: >- - Indicates whether the page is automatically resolved when the policy - ends. - type: boolean - retries: - description: >- - Specifies how many times the escalation sequence is retried if there - is no response. - format: int64 - type: integer - steps: - description: >- - A list of escalation steps, each defining assignment, escalation - timeout, and targets. - items: - $ref: >- - #/components/schemas/EscalationPolicyUpdateRequestDataAttributesStepsItems - type: array - required: - - name - - steps - type: object - EscalationPolicyUpdateRequestDataRelationships: - description: >- - Represents relationships in an escalation policy update request, - including references to teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - EscalationPolicyUpdateRequestDataType: - default: policies - description: Indicates that the resource is of type `policies`. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - CreatePageRequestDataAttributes: - description: Details about the On-Call Page you want to create. - properties: - description: - description: A short summary of the issue or context. - type: string - tags: - description: Tags to help categorize or filter the page. - items: - type: string - type: array - target: - $ref: '#/components/schemas/CreatePageRequestDataAttributesTarget' - title: - description: The title of the page. - example: 'Service: Test is down' - type: string - urgency: - $ref: '#/components/schemas/PageUrgency' - required: - - target - - title - - urgency - type: object - CreatePageRequestDataType: - default: pages - description: The type of resource used when creating an On-Call Page. - enum: - - pages - example: pages - type: string - x-enum-varnames: - - PAGES - CreatePageResponseDataType: - default: pages - description: The type of resource used when creating an On-Call Page. - enum: - - pages - example: pages - type: string - x-enum-varnames: - - PAGES - ScheduleCreateRequestDataAttributes: - description: >- - Describes the main attributes for creating a new schedule, including - name, layers, and time zone. - properties: - layers: - description: >- - The layers of On-Call coverage that define rotation intervals and - restrictions. - items: - $ref: >- - #/components/schemas/ScheduleCreateRequestDataAttributesLayersItems - type: array - name: - description: A human-readable name for the new schedule. - example: Team A On-Call - type: string - time_zone: - description: The time zone in which the schedule is defined. - example: America/New_York - type: string - required: - - name - - time_zone - - layers - type: object - ScheduleCreateRequestDataRelationships: - description: >- - Gathers relationship objects for the schedule creation request, - including the teams to associate. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleCreateRequestDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ScheduleDataAttributes: - description: >- - Provides core properties of a schedule object such as its name and time - zone. - properties: - name: - description: A short name for the schedule. - example: Primary On-Call - type: string - time_zone: - description: The time zone in which this schedule operates. - example: America/New_York - type: string - type: object - ScheduleDataRelationships: - description: >- - Groups the relationships for a schedule object, referencing layers and - teams. - properties: - layers: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayers' - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - Layer: - description: >- - Encapsulates a layer resource, holding attributes like rotation details, - plus relationships to the members covering that layer. - properties: - attributes: - $ref: '#/components/schemas/LayerAttributes' - id: - description: A unique identifier for this layer. - type: string - relationships: - $ref: '#/components/schemas/LayerRelationships' - type: - $ref: '#/components/schemas/LayerType' - required: - - type - type: object - ScheduleMember: - description: >- - Represents a single member entry in a schedule, referencing a specific - user. - properties: - id: - description: The unique identifier for this schedule member. - type: string - relationships: - $ref: '#/components/schemas/ScheduleMemberRelationships' - type: - $ref: '#/components/schemas/ScheduleMemberType' - required: - - type - type: object - ScheduleUser: - description: >- - Represents a user object in the context of a schedule, including their - `id`, type, and basic attributes. - properties: - attributes: - $ref: '#/components/schemas/ScheduleUserAttributes' - id: - description: The unique user identifier. - type: string - type: - $ref: '#/components/schemas/ScheduleUserType' - required: - - type - type: object - ScheduleUpdateRequestDataAttributes: - description: >- - Defines the updatable attributes for a schedule, such as name, time - zone, and layers. - properties: - layers: - description: The updated list of layers (rotations) for this schedule. - items: - $ref: >- - #/components/schemas/ScheduleUpdateRequestDataAttributesLayersItems - type: array - name: - description: A short name for the schedule. - example: Primary On-Call - type: string - time_zone: - description: The time zone used when interpreting rotation times. - example: America/New_York - type: string - required: - - name - - time_zone - - layers - type: object - ScheduleUpdateRequestDataRelationships: - description: >- - Houses relationships for the schedule update, typically referencing - teams. - properties: - teams: - $ref: '#/components/schemas/DataRelationshipsTeams' - type: object - ScheduleUpdateRequestDataType: - default: schedules - description: Schedules resource type. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - ShiftDataAttributes: - description: Attributes for an on-call shift. - properties: - end: - description: The end time of the shift. - format: date-time - type: string - start: - description: The start time of the shift. - format: date-time - type: string - type: object - ShiftDataRelationships: - description: Relationships for an on-call shift. - properties: - user: - $ref: '#/components/schemas/ShiftDataRelationshipsUser' - type: object - ShiftDataType: - default: shifts - description: Indicates that the resource is of type 'shifts'. - enum: - - shifts - example: shifts - type: string - x-enum-varnames: - - SHIFTS - TeamOnCallRespondersDataRelationships: - description: >- - Relationship objects linked to a team's on-call responder configuration, - including escalations and responders. - properties: - escalations: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsEscalations - responders: - $ref: '#/components/schemas/TeamOnCallRespondersDataRelationshipsResponders' - type: object - TeamOnCallRespondersDataType: - default: team_oncall_responders - description: >- - Represents the resource type for a group of users assigned to handle - on-call duties within a team. - enum: - - team_oncall_responders - example: team_oncall_responders - type: string - x-enum-varnames: - - TEAM_ONCALL_RESPONDERS - Escalation: - description: Represents an escalation policy step. - properties: - id: - description: Unique identifier of the escalation step. - type: string - relationships: - $ref: '#/components/schemas/EscalationRelationships' - type: - $ref: '#/components/schemas/EscalationType' - required: - - type - type: object - TeamRoutingRulesDataRelationships: - description: >- - Specifies relationships for team routing rules, including rule - references. - properties: - rules: - $ref: '#/components/schemas/TeamRoutingRulesDataRelationshipsRules' - type: object - TeamRoutingRulesDataType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - RoutingRule: - description: >- - Represents a routing rule, including its attributes, relationships, and - unique identifier. - properties: - attributes: - $ref: '#/components/schemas/RoutingRuleAttributes' - id: - description: Specifies the unique identifier of this routing rule. - type: string - relationships: - $ref: '#/components/schemas/RoutingRuleRelationships' - type: - $ref: '#/components/schemas/RoutingRuleType' - required: - - type - type: object - TeamRoutingRulesRequestDataAttributes: - description: >- - Represents the attributes of a request to update or create team routing - rules. - properties: - rules: - description: >- - A list of routing rule items that define how incoming pages should - be handled. - items: - $ref: '#/components/schemas/TeamRoutingRulesRequestRule' - type: array - type: object - TeamRoutingRulesRequestDataType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - IncidentServiceResponseAttributes: - description: The incident service's attributes from a response. - properties: - created: - description: Timestamp of when the incident service was created. - format: date-time - readOnly: true - type: string - modified: - description: Timestamp of when the incident service was modified. - format: date-time - readOnly: true - type: string - name: - description: Name of the incident service. - example: service name - type: string - type: object - IncidentServiceRelationships: - description: The incident service's relationships. - properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by: - $ref: '#/components/schemas/RelationshipToUser' - readOnly: true - type: object - IncidentServiceType: - default: services - description: Incident service resource type. - enum: - - services - example: services - type: string - x-enum-varnames: - - SERVICES - IncidentServiceCreateAttributes: - description: The incident service's attributes for a create request. - properties: - name: - description: Name of the incident service. - example: an example service name - type: string - required: - - name - type: object - ServiceDefinitionDataAttributes: - description: Service definition attributes. - properties: - meta: - $ref: '#/components/schemas/ServiceDefinitionMeta' - schema: - $ref: '#/components/schemas/ServiceDefinitionSchema' - type: object - ServiceDefinitionV2Dot2Contact: - description: Service owner's contacts information. - properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Name. - example: My team channel - type: string - type: - description: >- - Contact type. Datadog recognizes the following types: `email`, - `slack`, and `microsoft-teams`. - example: slack - type: string - required: - - type - - contact - type: object - ServiceDefinitionV2Dot2Integrations: - description: Third party integrations that Datadog supports. - properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2Pagerduty' - type: object - ServiceDefinitionV2Dot2Link: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - provider: - description: Link provider. - example: Github - type: string - type: - description: >- - Link type. Datadog recognizes the following types: `runbook`, `doc`, - `repo`, `dashboard`, and `other`. - example: runbook - type: string - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV2Dot2Version: - default: v2.2 - description: Schema version being used. - enum: - - v2.2 - example: v2.2 - type: string - x-enum-varnames: - - V2_2 - ServiceDefinitionV2Dot2Type: - description: The type of service. - example: web - type: string - ServiceDefinitionV2Dot1Contact: - description: Service owner's contacts information. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Email' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Slack' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeams' - ServiceDefinitionV2Dot1Integrations: - description: Third party integrations that Datadog supports. - properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1Pagerduty' - type: object - ServiceDefinitionV2Dot1Link: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - provider: - description: Link provider. - example: Github - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1LinkType' - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV2Dot1Version: - default: v2.1 - description: Schema version being used. - enum: - - v2.1 - example: v2.1 - type: string - x-enum-varnames: - - V2_1 - ServiceDefinitionV2Contact: - description: Service owner's contacts information. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV2Email' - - $ref: '#/components/schemas/ServiceDefinitionV2Slack' - - $ref: '#/components/schemas/ServiceDefinitionV2MSTeams' - ServiceDefinitionV2Doc: - description: Service documents. - properties: - name: - description: Document name. - example: Architecture - type: string - provider: - description: Document provider. - example: google drive - type: string - url: - description: Document URL. - example: https://gdrive/mydoc - type: string - required: - - name - - url - type: object - ServiceDefinitionV2Integrations: - description: Third party integrations that Datadog supports. - properties: - opsgenie: - $ref: '#/components/schemas/ServiceDefinitionV2Opsgenie' - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV2Pagerduty' - type: object - ServiceDefinitionV2Link: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2LinkType' - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV2Repo: - description: Service code repositories. - properties: - name: - description: Repository name. - example: Source Code - type: string - provider: - description: Repository provider. - example: GitHub - type: string - url: - description: Repository URL. - example: https://github.com/DataDog/schema - type: string - required: - - name - - url - type: object - ServiceDefinitionV2Version: - default: v2 - description: Schema version being used. - enum: - - v2 - example: v2 - type: string - x-enum-varnames: - - V2 - IncidentServiceUpdateAttributes: - description: The incident service's attributes for an update request. - properties: - name: - description: Name of the incident service. - example: an example service name - type: string - required: - - name - type: object - SloReportCreateRequestAttributes: - description: The attributes portion of the SLO report request. - properties: - from_ts: - description: The `from` timestamp for the report in epoch seconds. - example: 1690901870 - format: int64 - type: integer - interval: - $ref: '#/components/schemas/SLOReportInterval' - query: - description: >- - The query string used to filter SLO results. Some examples of - queries include `service:` and `slo-name`. - example: slo_type:metric - type: string - timezone: - description: >- - The timezone used to determine the start and end of each interval. - For example, weekly intervals start at 12am on Sunday in the - specified timezone. - example: America/New_York - type: string - to_ts: - description: The `to` timestamp for the report in epoch seconds. - example: 1706803070 - format: int64 - type: integer - required: - - query - - from_ts - - to_ts - type: object - SLOReportStatusGetResponseAttributes: - description: The attributes portion of the SLO report status response. - properties: - status: - $ref: '#/components/schemas/SLOReportStatus' - type: object - IncidentTeamResponseAttributes: - description: The incident team's attributes from a response. - properties: - created: - description: Timestamp of when the incident team was created. - format: date-time - readOnly: true - type: string - modified: - description: Timestamp of when the incident team was modified. - format: date-time - readOnly: true - type: string - name: - description: Name of the incident team. - example: team name - type: string - type: object - IncidentTeamRelationships: - description: The incident team's relationships. - properties: - created_by: - $ref: '#/components/schemas/RelationshipToUser' - last_modified_by: - $ref: '#/components/schemas/RelationshipToUser' - readOnly: true - type: object - IncidentTeamType: - default: teams - description: Incident Team resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - IncidentTeamCreateAttributes: - description: The incident team's attributes for a create request. - properties: - name: - description: Name of the incident team. - example: team name - type: string - required: - - name - type: object - IncidentTeamUpdateAttributes: - description: The incident team's attributes for an update request. - properties: - name: - description: Name of the incident team. - example: team name - type: string - required: - - name - type: object - CaseObjectAttributes: - additionalProperties: - items: - type: string - type: array - description: The definition of `CaseObjectAttributes` object. - type: object - JiraIssue: - description: Jira issue attached to case - nullable: true - properties: - result: - $ref: '#/components/schemas/JiraIssueResult' - status: - $ref: '#/components/schemas/Case3rdPartyTicketStatus' - readOnly: true - type: object - CasePriority: - default: NOT_DEFINED - description: Case priority - enum: - - NOT_DEFINED - - P1 - - P2 - - P3 - - P4 - - P5 - example: NOT_DEFINED - type: string - x-enum-varnames: - - NOT_DEFINED - - P1 - - P2 - - P3 - - P4 - - P5 - ServiceNowTicket: - description: ServiceNow ticket attached to case - nullable: true - properties: - result: - $ref: '#/components/schemas/ServiceNowTicketResult' - status: - $ref: '#/components/schemas/Case3rdPartyTicketStatus' - readOnly: true - type: object - CaseStatus: - description: Case status - enum: - - OPEN - - IN_PROGRESS - - CLOSED - example: OPEN - type: string - x-enum-varnames: - - OPEN - - IN_PROGRESS - - CLOSED - CaseType: - description: Case type - enum: - - STANDARD - example: STANDARD - type: string - x-enum-varnames: - - STANDARD - NullableUserRelationship: - description: Relationship to user. - nullable: true - properties: - data: - $ref: '#/components/schemas/NullableUserRelationshipData' - required: - - data - type: object - ProjectRelationship: - description: Relationship to project - properties: - data: - $ref: '#/components/schemas/ProjectRelationshipData' - required: - - data - type: object - RelationshipToTeamLinks: - description: Relationship between a team and a team link - properties: - data: - description: Related team links - items: - $ref: '#/components/schemas/RelationshipToTeamLinkData' - type: array - links: - $ref: '#/components/schemas/TeamRelationshipsLinks' - type: object - UsersRelationship: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/UserRelationshipData' - type: array - required: - - data - type: object - DowntimeDisplayTimezone: - default: UTC - description: >- - The timezone in which to display the downtime's start and end times in - Datadog applications. This is not used - - as an offset for scheduling. - example: America/New_York - nullable: true - type: string - DowntimeMessage: - description: >- - A message to include with notifications for this downtime. Email - notifications can be sent to specific users - - by using the same `@username` notation as events. - example: Message about the downtime - nullable: true - type: string - DowntimeMonitorIdentifier: - description: Monitor identifier for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeMonitorIdentifierId' - - $ref: '#/components/schemas/DowntimeMonitorIdentifierTags' - DowntimeMuteFirstRecoveryNotification: - description: If the first recovery notification during a downtime should be muted. - example: false - type: boolean - DowntimeNotifyEndStates: - description: >- - States that will trigger a monitor notification when the - `notify_end_types` action occurs. - example: - - alert - - warn - items: - $ref: '#/components/schemas/DowntimeNotifyEndStateTypes' - type: array - DowntimeNotifyEndTypes: - description: >- - Actions that will trigger a monitor notification if the downtime is in - the `notify_end_types` state. - example: - - canceled - - expired - items: - $ref: '#/components/schemas/DowntimeNotifyEndStateActions' - type: array - DowntimeScheduleResponse: - description: >- - The schedule that defines when the monitor starts, stops, and recurs. - There are two types of schedules: - - one-time and recurring. Recurring schedules may have up to five - RRULE-based recurrences. If no schedules are - - provided, the downtime will begin immediately and never end. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesResponse' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeResponse' - DowntimeScope: - description: >- - The scope to which the downtime applies. Must follow the [common search - syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). - example: env:(staging OR prod) AND datacenter:us-east-1 - type: string - DowntimeStatus: - description: The current status of the downtime. - enum: - - active - - canceled - - ended - - scheduled - example: active - type: string - x-enum-varnames: - - ACTIVE - - CANCELED - - ENDED - - SCHEDULED - DowntimeRelationshipsCreatedBy: - description: The user who created the downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeRelationshipsCreatedByData' - type: object - DowntimeRelationshipsMonitor: - description: The monitor identified by the downtime. - properties: - data: - $ref: '#/components/schemas/DowntimeRelationshipsMonitorData' - type: object - UserAttributes: - description: Attributes of user object returned by the API. - properties: - created_at: - description: Creation time of the user. - format: date-time - type: string - disabled: - description: Whether the user is disabled. - type: boolean - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - mfa_enabled: - description: If user has MFA enabled. - readOnly: true - type: boolean - modified_at: - description: Time that the user was last modified. - format: date-time - type: string - name: - description: Name of the user. - nullable: true - type: string - service_account: - description: Whether the user is a service account. - type: boolean - status: - description: Status of the user. - type: string - title: - description: Title of the user. - nullable: true - type: string - verified: - description: Whether the user is verified. - type: boolean - type: object - UserResponseRelationships: - description: Relationships of the user object returned by the API. - properties: - org: - $ref: '#/components/schemas/RelationshipToOrganization' - other_orgs: - $ref: '#/components/schemas/RelationshipToOrganizations' - other_users: - $ref: '#/components/schemas/RelationshipToUsers' - roles: - $ref: '#/components/schemas/RelationshipToRoles' - type: object - UsersType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - DowntimeMonitorIncludedAttributes: - description: Attributes of the monitor identified by the downtime. - properties: - name: - description: The name of the monitor identified by the downtime. - example: A monitor name - type: string - type: object - DowntimeIncludedMonitorType: - default: monitors - description: Monitor resource type. - enum: - - monitors - example: monitors - type: string - x-enum-varnames: - - MONITORS - DowntimeScheduleCreateRequest: - description: Schedule for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesCreateRequest' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' - DowntimeScheduleUpdateRequest: - description: Schedule for the downtime. - oneOf: - - $ref: '#/components/schemas/DowntimeScheduleRecurrencesUpdateRequest' - - $ref: '#/components/schemas/DowntimeScheduleOneTimeCreateUpdateRequest' - IssuesSearchRequestDataAttributesOrderBy: - description: The attribute to sort the search results by. - enum: - - TOTAL_COUNT - - FIRST_SEEN - - IMPACTED_SESSIONS - - PRIORITY - example: IMPACTED_SESSIONS - type: string - x-enum-varnames: - - TOTAL_COUNT - - FIRST_SEEN - - IMPACTED_SESSIONS - - PRIORITY - IssuesSearchRequestDataAttributesPersona: - description: Persona for the search. Either track(s) or persona(s) must be specified. - enum: - - ALL - - BROWSER - - MOBILE - - BACKEND - example: BACKEND - type: string - x-enum-varnames: - - ALL - - BROWSER - - MOBILE - - BACKEND - IssuesSearchRequestDataAttributesTrack: - description: >- - Track of the events to query. Either track(s) or persona(s) must be - specified. - enum: - - trace - - logs - - rum - example: trace - type: string - x-enum-varnames: - - TRACE - - LOGS - - RUM - IssuesSearchResultIssueRelationship: - description: Relationship between the search result and the corresponding issue. - properties: - data: - $ref: '#/components/schemas/IssueReference' - required: - - data - type: object - IssueUserAttributes: - description: Object containing the information of a user. - properties: - email: - description: Email of the user. - example: user@company.com - type: string - handle: - description: Handle of the user. - example: User Handle - type: string - name: - description: Name of the user. - example: User Name - type: string - type: object - IssueUserType: - description: Type of the object - enum: - - user - example: user - type: string - x-enum-varnames: - - USER - IssueTeamAttributes: - description: Object containing the information of a team. - properties: - handle: - description: The team's identifier. - example: team-handle - type: string - name: - description: The name of the team. - example: Team Name - type: string - summary: - description: A brief summary of the team, derived from its description. - example: This is a team. - type: string - type: object - IssueTeamType: - description: Type of the object. - enum: - - team - example: team - type: string - x-enum-varnames: - - TEAM - IssueLanguage: - description: Programming language associated with the issue. - enum: - - BRIGHTSCRIPT - - C - - C_PLUS_PLUS - - C_SHARP - - CLOJURE - - DOT_NET - - ELIXIR - - ERLANG - - GO - - GROOVY - - HASKELL - - HCL - - JAVA - - JAVASCRIPT - - JVM - - KOTLIN - - OBJECTIVE_C - - PERL - - PHP - - PYTHON - - RUBY - - RUST - - SCALA - - SWIFT - - TERRAFORM - - TYPESCRIPT - - UNKNOWN - example: PYTHON - type: string - x-enum-varnames: - - BRIGHTSCRIPT - - C - - C_PLUS_PLUS - - C_SHARP - - CLOJURE - - DOT_NET - - ELIXIR - - ERLANG - - GO - - GROOVY - - HASKELL - - HCL - - JAVA - - JAVASCRIPT - - JVM - - KOTLIN - - OBJECTIVE_C - - PERL - - PHP - - PYTHON - - RUBY - - RUST - - SCALA - - SWIFT - - TERRAFORM - - TYPESCRIPT - - UNKNOWN - IssuePlatform: - description: Platform associated with the issue. - enum: - - ANDROID - - BACKEND - - BROWSER - - FLUTTER - - IOS - - REACT_NATIVE - - ROKU - - UNKNOWN - example: BACKEND - type: string - x-enum-varnames: - - ANDROID - - BACKEND - - BROWSER - - FLUTTER - - IOS - - REACT_NATIVE - - ROKU - - UNKNOWN - IssueState: - description: State of the issue - enum: - - OPEN - - ACKNOWLEDGED - - RESOLVED - - IGNORED - - EXCLUDED - example: RESOLVED - type: string - x-enum-varnames: - - OPEN - - ACKNOWLEDGED - - RESOLVED - - IGNORED - - EXCLUDED - IssueAssigneeRelationship: - description: Relationship between the issue and assignee. - properties: - data: - $ref: '#/components/schemas/IssueUserReference' - required: - - data - type: object - IssueCaseRelationship: - description: Relationship between the issue and case. - properties: - data: - $ref: '#/components/schemas/IssueCaseReference' - required: - - data - type: object - IssueTeamOwnersRelationship: - description: Relationship between the issue and teams. - properties: - data: - description: Array of teams that are owners of the issue. - items: - $ref: '#/components/schemas/IssueTeamReference' - type: array - required: - - data - type: object - IssueCaseAttributes: - description: Object containing the information of a case. - properties: - archived_at: - description: Timestamp of when the case was archived. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - closed_at: - description: Timestamp of when the case was closed. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - created_at: - description: Timestamp of when the case was created. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - creation_source: - description: Source of the case creation. - example: ERROR_TRACKING - type: string - description: - description: Description of the case. - type: string - due_date: - description: Due date of the case. - example: '2025-01-01' - type: string - insights: - description: Insights of the case. - items: - $ref: '#/components/schemas/IssueCaseInsight' - type: array - jira_issue: - $ref: '#/components/schemas/IssueCaseJiraIssue' - key: - description: Key of the case. - example: ET-123 - type: string - modified_at: - description: Timestamp of when the case was last modified. - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - priority: - $ref: '#/components/schemas/CasePriority' - status: - $ref: '#/components/schemas/CaseStatus' - title: - description: Title of the case. - example: 'Error: HTTP error' - type: string - type: - description: Type of the case. - example: ERROR_TRACKING_ISSUE - type: string - type: object - IssueCaseRelationships: - description: Resources related to a case. - properties: - assignee: - $ref: '#/components/schemas/NullableUserRelationship' - created_by: - $ref: '#/components/schemas/NullableUserRelationship' - modified_by: - $ref: '#/components/schemas/NullableUserRelationship' - project: - $ref: '#/components/schemas/ProjectRelationship' - type: object - IssueCaseResourceType: - description: Type of the object. - enum: - - case - example: case - type: string - x-enum-varnames: - - CASE - EventAttributes: - description: Object description of attributes from your event. - properties: - aggregation_key: - description: Aggregation key of the event. - type: string - date_happened: - description: >- - POSIX timestamp of the event. Must be sent as an integer (no - quotation marks). - - Limited to events no older than 18 hours. - format: int64 - type: integer - device_name: - description: A device name. - type: string - duration: - description: >- - The duration between the triggering of the event and its recovery in - nanoseconds. - format: int64 - type: integer - event_object: - description: The event title. - example: Did you hear the news today? - type: string - evt: - $ref: '#/components/schemas/Event' - hostname: - description: |- - Host name to associate with the event. - Any tags associated with the host are also applied to this event. - type: string - monitor: - $ref: '#/components/schemas/MonitorType' - monitor_groups: - description: List of groups referred to in the event. - items: - description: Group referred to in the event. - type: string - nullable: true - type: array - monitor_id: - description: >- - ID of the monitor that triggered the event. When an event isn't - related to a monitor, this field is empty. - format: int64 - nullable: true - type: integer - priority: - $ref: '#/components/schemas/EventPriority' - related_event_id: - description: Related event ID. - format: int64 - type: integer - service: - description: Service that triggered the event. - example: datadog-api - type: string - source_type_name: - description: >- - The type of event being posted. - - For example, `nagios`, `hudson`, `jenkins`, `my_apps`, `chef`, - `puppet`, `git` or `bitbucket`. - - The list of standard source attribute values is [available - here](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). - type: string - sourcecategory: - description: >- - Identifier for the source of the event, such as a monitor alert, an - externally-submitted event, or an integration. - type: string - status: - $ref: '#/components/schemas/EventStatusType' - tags: - description: A list of tags to apply to the event. - example: - - environment:test - items: - description: A tag. - type: string - type: array - timestamp: - description: POSIX timestamp of your event in milliseconds. - example: 1652274265000 - format: int64 - type: integer - title: - description: The event title. - example: Oh boy! - type: string - type: object - EventPayloadAttributes: - description: >- - JSON object for category-specific attributes. Schema is different per - event category. - oneOf: - - $ref: '#/components/schemas/ChangeEventCustomAttributes' - - $ref: '#/components/schemas/AlertEventCustomAttributes' - EventCategory: - description: Event category identifying the type of event. - enum: - - change - - alert - example: change - type: string - x-enum-varnames: - - CHANGE - - ALERT - EventPayloadIntegrationId: - description: Integration ID sourced from integration manifests. - enum: - - custom-events - example: custom-events - type: string - x-enum-varnames: - - CUSTOM_EVENTS - EventCreateResponseAttributesAttributes: - description: JSON object for category-specific attributes. - properties: - evt: - $ref: '#/components/schemas/EventCreateResponseAttributesAttributesEvt' - type: object - V2EventAttributesAttributes: - description: JSON object for category-specific attributes. - oneOf: - - $ref: '#/components/schemas/ChangeEventAttributes' - - $ref: '#/components/schemas/AlertEventAttributes' - IncidentFieldAttributes: - description: >- - Dynamic fields for which selections can be made, with field names as - keys. - oneOf: - - $ref: '#/components/schemas/IncidentFieldAttributesSingleValue' - - $ref: '#/components/schemas/IncidentFieldAttributesMultipleValue' - IncidentNonDatadogCreator: - description: Incident's non Datadog creator. - nullable: true - properties: - image_48_px: - description: Non Datadog creator `48px` image. - type: string - name: - description: Non Datadog creator name. - type: string - type: object - IncidentNotificationHandle: - description: A notification handle that will be notified at incident creation. - properties: - display_name: - description: The name of the notified handle. - example: Jane Doe - type: string - handle: - description: >- - The handle used for the notification. This includes an email - address, Slack channel, or workflow. - example: '@test.user@test.com' - type: string - type: object - IncidentSeverity: - description: The incident severity. - enum: - - UNKNOWN - - SEV-0 - - SEV-1 - - SEV-2 - - SEV-3 - - SEV-4 - - SEV-5 - example: UNKNOWN - type: string - x-enum-varnames: - - UNKNOWN - - SEV_0 - - SEV_1 - - SEV_2 - - SEV_3 - - SEV_4 - - SEV_5 - RelationshipToIncidentAttachment: - description: A relationship reference for attachments. - properties: - data: - description: An array of incident attachments. - items: - $ref: '#/components/schemas/RelationshipToIncidentAttachmentData' - type: array - required: - - data - type: object - NullableRelationshipToUser: - description: Relationship to user. - nullable: true - properties: - data: - $ref: '#/components/schemas/NullableRelationshipToUserData' - required: - - data - type: object - RelationshipToUser: - description: Relationship to user. - properties: - data: - $ref: '#/components/schemas/RelationshipToUserData' - required: - - data - type: object - RelationshipToIncidentImpacts: - description: Relationship to impacts. - properties: - data: - description: An array of incident impacts. - items: - $ref: '#/components/schemas/RelationshipToIncidentImpactData' - type: array - required: - - data - type: object - RelationshipToIncidentIntegrationMetadatas: - description: A relationship reference for multiple integration metadata objects. - example: - data: - - id: 00000000-abcd-0005-0000-000000000000 - type: incident_integrations - - id: 00000000-abcd-0006-0000-000000000000 - type: incident_integrations - properties: - data: - description: Integration metadata relationship array - example: - - id: 00000000-abcd-0003-0000-000000000000 - type: incident_integrations - - id: 00000000-abcd-0004-0000-000000000000 - type: incident_integrations - items: - $ref: '#/components/schemas/RelationshipToIncidentIntegrationMetadataData' - type: array - required: - - data - type: object - RelationshipToIncidentResponders: - description: Relationship to incident responders. - properties: - data: - description: An array of incident responders. - items: - $ref: '#/components/schemas/RelationshipToIncidentResponderData' - type: array - required: - - data - type: object - RelationshipToIncidentUserDefinedFields: - description: Relationship to incident user defined fields. - properties: - data: - description: An array of user defined fields. - items: - $ref: '#/components/schemas/RelationshipToIncidentUserDefinedFieldData' - type: array - required: - - data - type: object - IncidentUserAttributes: - description: Attributes of user object returned by the API. - properties: - email: - description: Email of the user. - type: string - handle: - description: Handle of the user. - type: string - icon: - description: URL of the user's icon. - type: string - name: - description: Name of the user. - nullable: true - type: string - uuid: - description: UUID of the user. - type: string - type: object - IncidentTimelineCellCreateAttributes: - description: The timeline cell's attributes for a create request. - oneOf: - - $ref: '#/components/schemas/IncidentTimelineCellMarkdownCreateAttributes' - IncidentNotificationRuleConditions: - description: The conditions that trigger this notification rule. - example: - - field: severity - values: - - SEV-1 - - SEV-2 - items: - $ref: '#/components/schemas/IncidentNotificationRuleConditionsItems' - type: array - IncidentNotificationRuleHandles: - description: The notification handles (targets) for this rule. - example: - - '@team-email@company.com' - - '@slack-channel' - items: - description: A notification handle (email, Slack channel, etc.). - type: string - type: array - IncidentNotificationRuleRenotifyOn: - description: List of incident fields that trigger re-notification when changed. - example: - - status - - severity - items: - description: An incident field name. - type: string - type: array - IncidentNotificationRuleAttributesVisibility: - description: The visibility of the notification rule. - enum: - - all - - organization - - private - example: organization - type: string - x-enum-varnames: - - ALL - - ORGANIZATION - - PRIVATE - RelationshipToIncidentType: - description: Relationship to an incident type. - properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentTypeData' - required: - - data - type: object - RelationshipToIncidentNotificationTemplate: - description: A relationship reference to a notification template. - properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentNotificationTemplateData' - required: - - data - type: object - IncidentNotificationRuleCreateAttributesVisibility: - description: The visibility of the notification rule. - enum: - - all - - organization - - private - example: organization - type: string - x-enum-varnames: - - ALL - - ORGANIZATION - - PRIVATE - GoogleMeetConfigurationReference: - description: A reference to a Google Meet Configuration resource. - nullable: true - properties: - data: - $ref: '#/components/schemas/GoogleMeetConfigurationReferenceData' - required: - - data - type: object - MicrosoftTeamsConfigurationReference: - description: A reference to a Microsoft Teams Configuration resource. - nullable: true - properties: - data: - $ref: '#/components/schemas/MicrosoftTeamsConfigurationReferenceData' - required: - - data - type: object - ZoomConfigurationReference: - description: A reference to a Zoom configuration resource. - nullable: true - properties: - data: - $ref: '#/components/schemas/ZoomConfigurationReferenceData' - required: - - data - type: object - IncidentSearchResponseFacetsData: - description: Facet data for incidents returned by a search query. - properties: - commander: - description: Facet data for incident commander users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - created_by: - description: Facet data for incident creator users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - fields: - description: Facet data for incident property fields. - items: - $ref: '#/components/schemas/IncidentSearchResponsePropertyFieldFacetData' - type: array - impact: - description: Facet data for incident impact attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - last_modified_by: - description: Facet data for incident last modified by users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - postmortem: - description: Facet data for incident postmortem existence. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - responder: - description: Facet data for incident responder users. - items: - $ref: '#/components/schemas/IncidentSearchResponseUserFacetData' - type: array - severity: - description: Facet data for incident severity attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - state: - description: Facet data for incident state attributes. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - time_to_repair: - description: Facet data for incident time to repair metrics. - items: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' - type: array - time_to_resolve: - description: Facet data for incident time to resolve metrics. - items: - $ref: '#/components/schemas/IncidentSearchResponseNumericFacetData' - type: array - type: object - IncidentSearchResponseIncidentsData: - description: Incident returned by the search. - properties: - data: - $ref: '#/components/schemas/IncidentResponseData' - required: - - data - type: object - RelationshipToIncidentPostmortem: - description: A relationship reference for postmortems. - example: - data: - id: 00000000-0000-abcd-3000-000000000000 - type: incident_postmortems - properties: - data: - $ref: '#/components/schemas/RelationshipToIncidentPostmortemData' - required: - - data - type: object - IncidentAttachmentPostmortemAttributes: - description: The attributes object for a postmortem attachment. - properties: - attachment: - $ref: >- - #/components/schemas/IncidentAttachmentsPostmortemAttributesAttachmentObject - attachment_type: - $ref: '#/components/schemas/IncidentAttachmentPostmortemAttachmentType' - required: - - attachment_type - - attachment - type: object - IncidentAttachmentLinkAttributes: - description: The attributes object for a link attachment. - properties: - attachment: - $ref: >- - #/components/schemas/IncidentAttachmentLinkAttributesAttachmentObject - attachment_type: - $ref: '#/components/schemas/IncidentAttachmentLinkAttachmentType' - modified: - description: Timestamp when the incident attachment link was last modified. - format: date-time - readOnly: true - type: string - required: - - attachment_type - - attachment - type: object - IncidentIntegrationMetadataMetadata: - description: Incident integration metadata's metadata attribute. - oneOf: - - $ref: '#/components/schemas/SlackIntegrationMetadata' - - $ref: '#/components/schemas/JiraIntegrationMetadata' - - $ref: '#/components/schemas/MSTeamsIntegrationMetadata' - IncidentTodoAssigneeArray: - description: Array of todo assignees. - example: - - '@test.user@test.com' - items: - $ref: '#/components/schemas/IncidentTodoAssignee' - type: array - EscalationPolicyCreateRequestDataAttributesStepsItems: - description: >- - Defines a single escalation step within an escalation policy creation - request. Contains assignment strategy, escalation timeout, and a list of - targets. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Defines how many seconds to wait before escalating to the next step. - example: 3600 - format: int64 - type: integer - targets: - description: Specifies the collection of escalation targets for this step. - example: - - users - items: - $ref: '#/components/schemas/EscalationPolicyStepTarget' - type: array - required: - - targets - type: object - DataRelationshipsTeams: - description: Associates teams with this schedule in a data structure. - properties: - data: - description: An array of team references for this schedule. - items: - $ref: '#/components/schemas/DataRelationshipsTeamsDataItems' - type: array - type: object - EscalationPolicyDataRelationshipsSteps: - description: >- - Defines the relationship to a collection of steps within an escalation - policy. Contains an array of step data references. - properties: - data: - description: >- - An array of references to the steps defined in this escalation - policy. - items: - $ref: >- - #/components/schemas/EscalationPolicyDataRelationshipsStepsDataItems - type: array - type: object - TeamReferenceAttributes: - description: >- - Encapsulates the basic attributes of a Team reference, such as name, - handle, and an optional avatar or description. - properties: - avatar: - description: URL or reference for the team's avatar (if available). - type: string - description: - description: A short text describing the team. - type: string - handle: - description: A unique handle/slug for the team. - type: string - name: - description: The full, human-readable name of the team. - type: string - type: object - TeamReferenceType: - default: teams - description: Teams resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - EscalationPolicyStepAttributes: - description: >- - Defines attributes for an escalation policy step, such as assignment - strategy and escalation timeout. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: >- - Specifies how many seconds to wait before escalating to the next - step. - format: int64 - type: integer - type: object - EscalationPolicyStepRelationships: - description: Represents the relationship of an escalation policy step to its targets. - properties: - targets: - $ref: '#/components/schemas/EscalationTargets' - type: object - EscalationPolicyStepType: - default: steps - description: Indicates that the resource is of type `steps`. - enum: - - steps - example: steps - type: string - x-enum-varnames: - - STEPS - EscalationPolicyUserAttributes: - description: >- - Provides basic user information for an escalation policy, including a - name and email address. - properties: - email: - description: The user's email address. - example: jane.doe@example.com - type: string - name: - description: The user's name. - example: Jane Doe - type: string - status: - $ref: '#/components/schemas/UserAttributesStatus' - type: object - EscalationPolicyUserType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - EscalationPolicyUpdateRequestDataAttributesStepsItems: - description: >- - Defines a single escalation step within an escalation policy update - request. Contains assignment strategy, escalation timeout, an optional - step ID, and a list of targets. - properties: - assignment: - $ref: '#/components/schemas/EscalationPolicyStepAttributesAssignment' - escalate_after_seconds: - description: Defines how many seconds to wait before escalating to the next step. - example: 3600 - format: int64 - type: integer - id: - description: Specifies the unique identifier of this step. - example: 00000000-aba1-0000-0000-000000000000 - type: string - targets: - description: Specifies the collection of escalation targets for this step. - items: - $ref: '#/components/schemas/EscalationPolicyStepTarget' - type: array - required: - - targets - type: object - CreatePageRequestDataAttributesTarget: - description: Information about the target to notify (such as a team or user). - properties: - identifier: - description: Identifier for the target (for example, team handle or user ID). - type: string - type: - $ref: '#/components/schemas/OnCallPageTargetType' - type: object - PageUrgency: - default: high - description: On-Call Page urgency level. - enum: - - low - - high - example: high - type: string - x-enum-varnames: - - LOW - - HIGH - ScheduleCreateRequestDataAttributesLayersItems: - description: >- - Describes a schedule layer, including rotation intervals, members, - restrictions, and timeline settings. - properties: - effective_date: - description: The date/time when this layer becomes active (in ISO 8601). - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - end_date: - description: >- - The date/time after which this layer no longer applies (in ISO - 8601). - format: date-time - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - members: - description: A list of members who participate in this layer's rotation. - items: - $ref: >- - #/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems - type: array - name: - description: The name of this layer. - example: Primary On-Call Layer - type: string - restrictions: - description: >- - Zero or more time-based restrictions (for example, only weekdays, - during business hours). - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time when the rotation for this layer starts (in ISO 8601). - example: '2025-01-01T00:00:00Z' - format: date-time - type: string - required: - - name - - interval - - rotation_start - - effective_date - - members - type: object - ScheduleDataRelationshipsLayers: - description: Associates layers with this schedule in a data structure. - properties: - data: - description: An array of layer references for this schedule. - items: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItems' - type: array - type: object - LayerAttributes: - description: >- - Describes key properties of a Layer, including rotation details, name, - start/end times, and any restrictions. - properties: - effective_date: - description: When the layer becomes active (ISO 8601). - format: date-time - type: string - end_date: - description: When the layer ceases to be active (ISO 8601). - format: date-time - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - name: - description: The name of this layer. - example: Weekend Layer - type: string - restrictions: - description: >- - An optional list of time restrictions for when this layer is in - effect. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time when the rotation starts (ISO 8601). - format: date-time - type: string - type: object - LayerRelationships: - description: >- - Holds references to objects related to the Layer entity, such as its - members. - properties: - members: - $ref: '#/components/schemas/LayerRelationshipsMembers' - type: object - LayerType: - default: layers - description: Layers resource type. - enum: - - layers - example: layers - type: string - x-enum-varnames: - - LAYERS - ScheduleMemberRelationships: - description: >- - Defines relationships for a schedule member, primarily referencing a - single user. - properties: - user: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUser' - type: object - ScheduleMemberType: - default: members - description: Schedule Members resource type. - enum: - - members - example: members - type: string - x-enum-varnames: - - MEMBERS - ScheduleUserAttributes: - description: >- - Provides basic user information for a schedule, including a name and - email address. - properties: - email: - description: The user's email address. - example: jane.doe@example.com - type: string - name: - description: The user's name. - example: Jane Doe - type: string - status: - $ref: '#/components/schemas/UserAttributesStatus' - type: object - ScheduleUserType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - ScheduleUpdateRequestDataAttributesLayersItems: - description: >- - Represents a layer within a schedule update, including rotation details, - members, - - and optional restrictions. - properties: - effective_date: - description: When this updated layer takes effect (ISO 8601 format). - example: '2025-02-03T05:00:00Z' - format: date-time - type: string - end_date: - description: When this updated layer should stop being active (ISO 8601 format). - example: '2025-12-31T00:00:00Z' - format: date-time - type: string - id: - description: A unique identifier for the layer being updated. - example: 00000000-0000-0000-0000-000000000001 - type: string - interval: - $ref: '#/components/schemas/LayerAttributesInterval' - members: - description: The members assigned to this layer. - items: - $ref: >- - #/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItems - type: array - name: - description: The name for this layer (for example, "Secondary Coverage"). - example: Primary On-Call Layer - type: string - restrictions: - description: Any time restrictions that define when this layer is active. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - rotation_start: - description: The date/time at which the rotation begins (ISO 8601 format). - example: '2025-02-01T00:00:00Z' - format: date-time - type: string - required: - - effective_date - - interval - - members - - name - - rotation_start - type: object - ShiftDataRelationshipsUser: - description: >- - Defines the relationship between a shift and the user who is working - that shift. - properties: - data: - $ref: '#/components/schemas/ShiftDataRelationshipsUserData' - required: - - data - type: object - TeamOnCallRespondersDataRelationshipsEscalations: - description: >- - Defines the escalation policy steps linked to the team's on-call - configuration. - properties: - data: - description: Array of escalation step references. - items: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItems - type: array - type: object - TeamOnCallRespondersDataRelationshipsResponders: - description: Defines the list of users assigned as on-call responders for the team. - properties: - data: - description: Array of user references associated as responders. - items: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItems - type: array - type: object - EscalationRelationships: - description: >- - Contains the relationships of an escalation object, including its - responders. - properties: - responders: - $ref: '#/components/schemas/EscalationRelationshipsResponders' - type: object - EscalationType: - default: escalation_policy_steps - description: >- - Represents the resource type for individual steps in an escalation - policy used during incident response. - enum: - - escalation_policy_steps - example: escalation_policy_steps - type: string - x-enum-varnames: - - ESCALATION_POLICY_STEPS - TeamRoutingRulesDataRelationshipsRules: - description: Holds references to a set of routing rules in a relationship. - properties: - data: - description: >- - An array of references to the routing rules associated with this - team. - items: - $ref: >- - #/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItems - type: array - type: object - RoutingRuleAttributes: - description: >- - Defines the configurable attributes of a routing rule, such as actions, - query, time restriction, and urgency. - properties: - actions: - description: >- - Specifies the list of actions to perform when the routing rule - matches. - items: - $ref: '#/components/schemas/RoutingRuleAction' - type: array - query: - description: Defines the query or condition that triggers this routing rule. - type: string - time_restriction: - $ref: '#/components/schemas/TimeRestrictions' - nullable: true - urgency: - $ref: '#/components/schemas/Urgency' - type: object - RoutingRuleRelationships: - description: >- - Specifies relationships for a routing rule, linking to associated policy - resources. - properties: - policy: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicy' - type: object - RoutingRuleType: - default: team_routing_rules - description: Team routing rules resource type. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - TeamRoutingRulesRequestRule: - description: >- - Defines an individual routing rule item that contains the rule data for - the request. - properties: - actions: - description: >- - Specifies the list of actions to perform when the routing rule is - matched. - items: - $ref: '#/components/schemas/RoutingRuleAction' - type: array - policy_id: - description: Identifies the policy to be applied when this routing rule matches. - type: string - query: - description: Defines the query or condition that triggers this routing rule. - type: string - time_restriction: - $ref: '#/components/schemas/TimeRestrictions' - urgency: - $ref: '#/components/schemas/Urgency' - type: object - ServiceDefinitionMeta: - description: Metadata about a service definition. - properties: - github-html-url: - description: GitHub HTML URL. - type: string - ingested-schema-version: - description: Ingestion schema version. - type: string - ingestion-source: - description: Ingestion source of the service definition. - type: string - last-modified-time: - description: Last modified time of the service definition. - type: string - origin: - description: User defined origin of the service definition. - type: string - origin-detail: - description: User defined origin's detail of the service definition. - type: string - warnings: - description: A list of schema validation warnings. - items: - $ref: '#/components/schemas/ServiceDefinitionMetaWarnings' - type: array - type: object - ServiceDefinitionSchema: - description: Service definition schema. - oneOf: - - $ref: '#/components/schemas/ServiceDefinitionV1' - - $ref: '#/components/schemas/ServiceDefinitionV2' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot1' - - $ref: '#/components/schemas/ServiceDefinitionV2Dot2' - ServiceDefinitionV2Dot2Opsgenie: - description: Opsgenie integration for the service. - properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2Dot2OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: >- - https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 - type: string - required: - - service-url - type: object - ServiceDefinitionV2Dot2Pagerduty: - description: PagerDuty integration for the service. - properties: - service-url: - description: PagerDuty service url. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - type: object - ServiceDefinitionV2Dot1Email: - description: Service owner's email. - properties: - contact: - description: Contact value. - example: contact@datadoghq.com - type: string - name: - description: Contact email. - example: Team Email - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1EmailType' - required: - - type - - contact - type: object - ServiceDefinitionV2Dot1Slack: - description: Service owner's Slack channel. - properties: - contact: - description: Slack Channel. - example: https://yourcompany.slack.com/archives/channel123 - type: string - name: - description: Contact Slack. - example: Team Slack - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1SlackType' - required: - - type - - contact - type: object - ServiceDefinitionV2Dot1MSTeams: - description: Service owner's Microsoft Teams. - properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Microsoft Teams. - example: My team channel - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1MSTeamsType' - required: - - type - - contact - type: object - ServiceDefinitionV2Dot1Opsgenie: - description: Opsgenie integration for the service. - properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2Dot1OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: >- - https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 - type: string - required: - - service-url - type: object - ServiceDefinitionV2Dot1Pagerduty: - description: PagerDuty integration for the service. - properties: - service-url: - description: PagerDuty service url. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - type: object - ServiceDefinitionV2Dot1LinkType: - description: Link type. - enum: - - doc - - repo - - runbook - - dashboard - - other - example: runbook - type: string - x-enum-varnames: - - DOC - - REPO - - RUNBOOK - - DASHBOARD - - OTHER - ServiceDefinitionV2Email: - description: Service owner's email. - properties: - contact: - description: Contact value. - example: contact@datadoghq.com - type: string - name: - description: Contact email. - example: Team Email - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2EmailType' - required: - - type - - contact - type: object - ServiceDefinitionV2Slack: - description: Service owner's Slack channel. - properties: - contact: - description: Slack Channel. - example: https://yourcompany.slack.com/archives/channel123 - type: string - name: - description: Contact Slack. - example: Team Slack - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2SlackType' - required: - - type - - contact - type: object - ServiceDefinitionV2MSTeams: - description: Service owner's Microsoft Teams. - properties: - contact: - description: Contact value. - example: https://teams.microsoft.com/myteam - type: string - name: - description: Contact Microsoft Teams. - example: My team channel - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV2MSTeamsType' - required: - - type - - contact - type: object - ServiceDefinitionV2Opsgenie: - description: Opsgenie integration for the service. - properties: - region: - $ref: '#/components/schemas/ServiceDefinitionV2OpsgenieRegion' - service-url: - description: Opsgenie service url. - example: >- - https://my-org.opsgenie.com/service/123e4567-e89b-12d3-a456-426614174000 - type: string - required: - - service-url - type: object - ServiceDefinitionV2Pagerduty: - description: PagerDuty service URL for the service. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - ServiceDefinitionV2LinkType: - description: Link type. - enum: - - doc - - wiki - - runbook - - url - - repo - - dashboard - - oncall - - code - - link - example: runbook - type: string - x-enum-varnames: - - DOC - - WIKI - - RUNBOOK - - URL - - REPO - - DASHBOARD - - ONCALL - - CODE - - LINK - SLOReportInterval: - description: The frequency at which report data is to be generated. - enum: - - daily - - weekly - - monthly - example: weekly - type: string - x-enum-varnames: - - DAILY - - WEEKLY - - MONTHLY - SLOReportStatus: - description: The status of the SLO report job. - enum: - - in_progress - - completed - - completed_with_errors - - failed - example: completed - type: string - x-enum-varnames: - - IN_PROGRESS - - COMPLETED - - COMPLETED_WITH_ERRORS - - FAILED - JiraIssueResult: - description: Jira issue information - properties: - issue_id: - description: Jira issue ID - type: string - issue_key: - description: Jira issue key - type: string - issue_url: - description: Jira issue URL - type: string - project_key: - description: Jira project key - type: string - type: object - Case3rdPartyTicketStatus: - default: IN_PROGRESS - description: Case status - enum: - - IN_PROGRESS - - COMPLETED - - FAILED - example: COMPLETED - readOnly: true - type: string - x-enum-varnames: - - IN_PROGRESS - - COMPLETED - - FAILED - ServiceNowTicketResult: - description: ServiceNow ticket information - properties: - sys_target_link: - description: Link to the Incident created on ServiceNow - type: string - type: object - NullableUserRelationshipData: - description: Relationship to user object. - nullable: true - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserResourceType' - required: - - id - - type - type: object - ProjectRelationshipData: - description: Relationship to project object - properties: - id: - description: A unique identifier that represents the project - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 - type: string - type: - $ref: '#/components/schemas/ProjectResourceType' - required: - - id - - type - type: object - RelationshipToTeamLinkData: - description: Relationship between a link and a team - properties: - id: - description: The team link's identifier - example: f9bb8444-af7f-11ec-ac2c-da7ad0900001 - type: string - type: - $ref: '#/components/schemas/TeamLinkType' - required: - - id - - type - type: object - TeamRelationshipsLinks: - description: Links attributes. - properties: - related: - description: Related link. - example: /api/v2/team/c75a4a8e-20c7-11ee-a3a5-da7ad0900002/links - type: string - type: object - UserRelationshipData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserResourceType' - required: - - id - - type - type: object - DowntimeMonitorIdentifierId: - additionalProperties: {} - description: Object of the monitor identifier. - properties: - monitor_id: - description: ID of the monitor to prevent notifications. - example: 123 - format: int64 - type: integer - required: - - monitor_id - type: object - DowntimeMonitorIdentifierTags: - additionalProperties: {} - description: Object of the monitor tags. - properties: - monitor_tags: - description: >- - A list of monitor tags. For example, tags that are applied directly - to monitors, - - not tags that are used in monitor queries (which are filtered by the - scope parameter), to which the downtime applies. - - The resulting downtime applies to monitors that match **all** - provided monitor tags. Setting `monitor_tags` - - to `[*]` configures the downtime to mute all monitors for the given - scope. - example: - - service:postgres - - team:frontend - items: - description: A list of monitor tags. - example: service:postgres - type: string - minItems: 1 - type: array - required: - - monitor_tags - type: object - DowntimeNotifyEndStateTypes: - description: >- - State that will trigger a monitor notification when the - `notify_end_types` action occurs. - enum: - - alert - - no data - - warn - example: alert - type: string - x-enum-varnames: - - ALERT - - NO_DATA - - WARN - DowntimeNotifyEndStateActions: - description: >- - Action that will trigger a monitor notification if the downtime is in - the `notify_end_types` state. - enum: - - canceled - - expired - example: canceled - type: string - x-enum-varnames: - - CANCELED - - EXPIRED - DowntimeScheduleRecurrencesResponse: - description: A recurring downtime schedule definition. - properties: - current_downtime: - $ref: '#/components/schemas/DowntimeScheduleCurrentDowntimeResponse' - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceResponse' - maxItems: 5 - minItems: 1 - type: array - timezone: - default: UTC - description: >- - The timezone in which to schedule the downtime. This affects - recurring start and end dates. - - Must match `display_timezone`. - example: America/New_York - type: string - required: - - recurrences - type: object - DowntimeScheduleOneTimeResponse: - description: A one-time downtime definition. - properties: - end: - description: ISO-8601 Datetime to end the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true - type: string - start: - description: ISO-8601 Datetime to start the downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - type: string - required: - - start - type: object - DowntimeRelationshipsCreatedByData: - description: Data for the user who created the downtime. - nullable: true - properties: - id: - description: User ID of the downtime creator. - example: 00000000-0000-1234-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - type: object - DowntimeRelationshipsMonitorData: - description: Data for the monitor. - nullable: true - properties: - id: - description: Monitor ID of the downtime. - example: '12345' - type: string - type: - $ref: '#/components/schemas/DowntimeIncludedMonitorType' - type: object - RelationshipToOrganization: - description: Relationship to an organization. - properties: - data: - $ref: '#/components/schemas/RelationshipToOrganizationData' - required: - - data - type: object - RelationshipToOrganizations: - description: Relationship to organizations. - properties: - data: - description: Relationships to organization objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToOrganizationData' - type: array - required: - - data - type: object - RelationshipToUsers: - description: Relationship to users. - properties: - data: - description: Relationships to user objects. - example: [] - items: - $ref: '#/components/schemas/RelationshipToUserData' - type: array - required: - - data - type: object - RelationshipToRoles: - description: Relationship to roles. - properties: - data: - description: An array containing type and the unique identifier of a role. - items: - $ref: '#/components/schemas/RelationshipToRoleData' - type: array - type: object - DowntimeScheduleRecurrencesCreateRequest: - description: A recurring downtime schedule definition. - properties: - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' - type: array - timezone: - default: UTC - description: The timezone in which to schedule the downtime. - example: America/New_York - type: string - required: - - recurrences - type: object - DowntimeScheduleOneTimeCreateUpdateRequest: - additionalProperties: false - description: A one-time downtime definition. - properties: - end: - description: >- - ISO-8601 Datetime to end the downtime. Must include a UTC offset of - zero. If not provided, the - - downtime continues forever. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true - type: string - start: - description: >- - ISO-8601 Datetime to start the downtime. Must include a UTC offset - of zero. If not provided, the - - downtime starts the moment it is created. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true - type: string - type: object - DowntimeScheduleRecurrencesUpdateRequest: - additionalProperties: false - description: A recurring downtime schedule definition. - properties: - recurrences: - description: A list of downtime recurrences. - items: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceCreateUpdateRequest' - type: array - timezone: - default: UTC - description: The timezone in which to schedule the downtime. - example: America/New_York - type: string - type: object - IssueReference: - description: The issue the search result corresponds to. - properties: - id: - description: Issue identifier. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - type: string - type: - $ref: '#/components/schemas/IssueType' - required: - - id - - type - type: object - IssueUserReference: - description: The user the issue is assigned to. - properties: - id: - description: User identifier. - example: 87cb11a0-278c-440a-99fe-701223c80296 - type: string - type: - $ref: '#/components/schemas/IssueUserType' - required: - - id - - type - type: object - IssueCaseReference: - description: The case the issue is attached to. - properties: - id: - description: Case identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - type: - $ref: '#/components/schemas/IssueCaseResourceType' - required: - - id - - type - type: object - IssueTeamReference: - description: A team that owns the issue. - properties: - id: - description: Team identifier. - example: 221b0179-6447-4d03-91c3-3ca98bf60e8a - type: string - type: - $ref: '#/components/schemas/IssueTeamType' - required: - - id - - type - type: object - IssueCaseInsight: - description: Insight of the case. - properties: - ref: - description: Reference of the insight. - example: /error-tracking?issueId=2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - resource_id: - description: Insight identifier. - example: 2841440d-e780-4fe2-96cd-6a8c1d194da5 - type: string - type: - description: Type of the insight. - example: ERROR_TRACKING - type: string - type: object - IssueCaseJiraIssue: - description: Jira issue of the case. - properties: - result: - $ref: '#/components/schemas/IssueCaseJiraIssueResult' - status: - description: Creation status of the Jira issue. - example: COMPLETED - type: string - type: object - Event: - description: The metadata associated with a request. - properties: - id: - description: Event ID. - example: '6509751066204996294' - type: string - name: - description: The event name. - type: string - source_id: - description: Event source ID. - example: 36 - format: int64 - type: integer - type: - description: Event type. - example: error_tracking_alert - type: string - type: object - MonitorType: - description: Attributes from the monitor that triggered the event. - nullable: true - properties: - created_at: - description: The POSIX timestamp of the monitor's creation in nanoseconds. - example: 1646318692000 - format: int64 - type: integer - group_status: - description: Monitor group status used when there is no `result_groups`. - format: int32 - maximum: 2147483647 - type: integer - groups: - description: Groups to which the monitor belongs. - items: - description: A group. - type: string - type: array - id: - description: The monitor ID. - format: int64 - type: integer - message: - description: The monitor message. - type: string - modified: - description: The monitor's last-modified timestamp. - format: int64 - type: integer - name: - description: The monitor name. - type: string - query: - description: The query that triggers the alert. - type: string - tags: - description: A list of tags attached to the monitor. - example: - - environment:test - items: - description: A tag. - type: string - type: array - templated_name: - description: >- - The templated name of the monitor before resolving any template - variables. - type: string - type: - description: The monitor type. - type: string - type: object - EventPriority: - description: The priority of the event's monitor. For example, `normal` or `low`. - enum: - - normal - - low - example: normal - nullable: true - type: string - x-enum-varnames: - - NORMAL - - LOW - EventStatusType: - description: |- - If an alert event is enabled, its status is one of the following: - `failure`, `error`, `warning`, `info`, `success`, `user_update`, - `recommendation`, or `snapshot`. - enum: - - failure - - error - - warning - - info - - success - - user_update - - recommendation - - snapshot - example: info - type: string - x-enum-varnames: - - FAILURE - - ERROR - - WARNING - - INFO - - SUCCESS - - USER_UPDATE - - RECOMMENDATION - - SNAPSHOT - ChangeEventCustomAttributes: - additionalProperties: false - description: Change event attributes. - properties: - author: - $ref: '#/components/schemas/ChangeEventCustomAttributesAuthor' - change_metadata: - additionalProperties: {} - description: >- - Free form JSON object with information related to the `change` - event. Supports up to 100 properties per object and a maximum - nesting depth of 10 levels. - example: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - resource_link: datadog.com/feature/fallback_payments_test - type: object - changed_resource: - $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResource' - impacted_resources: - description: >- - A list of resources impacted by this change. It is recommended to - provide an impacted resource to display - - the change event at the correct location. Only resources of type - `service` are supported. Maximum of 100 impacted resources allowed. - example: - - name: payments_api - type: service - items: - $ref: >- - #/components/schemas/ChangeEventCustomAttributesImpactedResourcesItems - maxItems: 100 - type: array - new_value: - additionalProperties: {} - description: >- - Free form JSON object representing the new state of the changed - resource. - example: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - type: object - prev_value: - additionalProperties: {} - description: >- - Free form JSON object representing the previous state of the changed - resource. - example: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - type: object - required: - - changed_resource - type: object - AlertEventCustomAttributes: - additionalProperties: false - description: Alert event attributes. - properties: - custom: - $ref: '#/components/schemas/AlertEventCustomAttributesCustom' - links: - $ref: '#/components/schemas/AlertEventCustomAttributesLinks' - priority: - $ref: '#/components/schemas/AlertEventCustomAttributesPriority' - status: - $ref: '#/components/schemas/AlertEventCustomAttributesStatus' - required: - - status - type: object - EventCreateResponseAttributesAttributesEvt: - description: JSON object of event system attributes. - properties: - id: - deprecated: true - description: >- - Event identifier. This field is deprecated and will be removed in a - future version. Use the `uid` field instead. - type: string - uid: - description: >- - A unique identifier for the event. You can use this identifier to - query or reference the event. - type: string - type: object - ChangeEventAttributes: - description: Change event attributes. - properties: - aggregation_key: - $ref: '#/components/schemas/V2EventAggregationKey' - author: - $ref: '#/components/schemas/ChangeEventAttributesAuthor' - change_metadata: - description: JSON object of change metadata. - example: - dd: - team: datadog_team - user_email: datadog@datadog.com - user_id: datadog_user_id - user_name: datadog_username - type: object - changed_resource: - $ref: '#/components/schemas/ChangeEventAttributesChangedResource' - evt: - $ref: '#/components/schemas/EventSystemAttributes' - impacted_resources: - description: A list of resources impacted by this change. - example: - - name: service-name - type: service - items: - $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItem' - type: array - new_value: - description: The new state of the changed resource. - example: - enabled: true - percentage: 50% - rule: - datacenter: devcycle.us1.prod - type: object - prev_value: - description: The previous state of the changed resource. - example: - enabled: true - percentage: 10% - rule: - datacenter: devcycle.us1.prod - type: object - service: - $ref: '#/components/schemas/V2EventService' - timestamp: - $ref: '#/components/schemas/V2EventTimestamp' - title: - $ref: '#/components/schemas/V2EventTitle' - type: object - AlertEventAttributes: - description: Alert event attributes. - properties: - aggregation_key: - $ref: '#/components/schemas/V2EventAggregationKey' - custom: - description: JSON object of custom attributes. - example: {} - type: object - evt: - $ref: '#/components/schemas/EventSystemAttributes' - links: - description: The links related to the event. - example: - - category: runbook - title: Runbook Link - url: https://app.datadoghq.com/runbook - items: - $ref: '#/components/schemas/AlertEventAttributesLinksItem' - type: array - priority: - $ref: '#/components/schemas/AlertEventAttributesPriority' - service: - $ref: '#/components/schemas/V2EventService' - status: - $ref: '#/components/schemas/AlertEventAttributesStatus' - timestamp: - $ref: '#/components/schemas/V2EventTimestamp' - title: - $ref: '#/components/schemas/V2EventTitle' - type: object - IncidentFieldAttributesSingleValue: - description: A field with a single value selected. - properties: - type: - $ref: '#/components/schemas/IncidentFieldAttributesSingleValueType' - value: - description: The single value selected for this field. - example: SEV-1 - nullable: true - type: string - type: object - IncidentFieldAttributesMultipleValue: - description: A field with potentially multiple values selected. - properties: - type: - $ref: '#/components/schemas/IncidentFieldAttributesValueType' - value: - description: The multiple values selected for this field. - example: - - '1.0' - - '1.1' - items: - description: A value which has been selected for the parent field. - example: '1.1' - type: string - nullable: true - type: array - type: object - RelationshipToIncidentAttachmentData: - description: The attachment relationship data. - properties: - id: - description: A unique identifier that represents the attachment. - example: 00000000-0000-abcd-1000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentAttachmentType' - required: - - id - - type - type: object - NullableRelationshipToUserData: - description: Relationship to user object. - nullable: true - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - RelationshipToUserData: - description: Relationship to user object. - properties: - id: - description: A unique identifier that represents the user. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/UsersType' - required: - - id - - type - type: object - RelationshipToIncidentImpactData: - description: Relationship to impact object. - properties: - id: - description: A unique identifier that represents the impact. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentImpactsType' - required: - - id - - type - type: object - RelationshipToIncidentIntegrationMetadataData: - description: A relationship reference for an integration metadata object. - example: - id: 00000000-abcd-0002-0000-000000000000 - type: incident_integrations - properties: - id: - description: A unique identifier that represents the integration metadata. - example: 00000000-abcd-0001-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentIntegrationMetadataType' - required: - - id - - type - type: object - RelationshipToIncidentResponderData: - description: Relationship to impact object. - properties: - id: - description: A unique identifier that represents the responder. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentRespondersType' - required: - - id - - type - type: object - RelationshipToIncidentUserDefinedFieldData: - description: Relationship to impact object. - properties: - id: - description: A unique identifier that represents the responder. - example: 00000000-0000-0000-2345-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentUserDefinedFieldType' - required: - - id - - type - type: object - IncidentTimelineCellMarkdownCreateAttributes: - description: Timeline cell data for Markdown timeline cells for a create request. - properties: - cell_type: - $ref: '#/components/schemas/IncidentTimelineCellMarkdownContentType' - content: - $ref: >- - #/components/schemas/IncidentTimelineCellMarkdownCreateAttributesContent - important: - default: false - description: >- - A flag indicating whether the timeline cell is important and should - be highlighted. - example: false - type: boolean - required: - - content - - cell_type - type: object - IncidentNotificationRuleConditionsItems: - description: A condition that must be met to trigger the notification rule. - properties: - field: - description: The incident field to evaluate - example: severity - type: string - values: - description: >- - The value(s) to compare against. Multiple values are `ORed` - together. - example: - - SEV-1 - - SEV-2 - items: - type: string - type: array - required: - - field - - values - type: object - RelationshipToIncidentTypeData: - description: Relationship to incident type object. - properties: - id: - description: The incident type's ID. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentTypeType' - required: - - id - - type - type: object - RelationshipToIncidentNotificationTemplateData: - description: The notification template relationship data. - properties: - id: - description: The unique identifier of the notification template. - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - type: - $ref: '#/components/schemas/IncidentNotificationTemplateType' - required: - - id - - type - type: object - GoogleMeetConfigurationReferenceData: - description: The Google Meet configuration relationship data object. - nullable: true - properties: - id: - description: The unique identifier of the Google Meet configuration. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - description: The type of the Google Meet configuration. - example: google_meet_configurations - type: string - required: - - id - - type - type: object - MicrosoftTeamsConfigurationReferenceData: - description: The Microsoft Teams configuration relationship data object. - nullable: true - properties: - id: - description: The unique identifier of the Microsoft Teams configuration. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - description: The type of the Microsoft Teams configuration. - example: microsoft_teams_configurations - type: string - required: - - id - - type - type: object - ZoomConfigurationReferenceData: - description: The Zoom configuration relationship data object. - nullable: true - properties: - id: - description: The unique identifier of the Zoom configuration. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - description: The type of the Zoom configuration. - example: zoom_configurations - type: string - required: - - id - - type - type: object - IncidentSearchResponseUserFacetData: - description: Facet data for user attributes of an incident. - properties: - count: - $ref: '#/components/schemas/IncidentSearchResponseFacetCount' - email: - description: Email of the user. - example: datadog.user@example.com - type: string - handle: - description: Handle of the user. - example: '@datadog.user@example.com' - type: string - name: - description: Name of the user. - example: Datadog User - type: string - uuid: - description: ID of the user. - example: 773b045d-ccf8-4808-bd3b-955ef6a8c940 - type: string - type: object - IncidentSearchResponsePropertyFieldFacetData: - description: Facet data for the incident property fields. - properties: - aggregates: - $ref: >- - #/components/schemas/IncidentSearchResponseNumericFacetDataAggregates - facets: - description: Facet data for the property field of an incident. - items: - $ref: '#/components/schemas/IncidentSearchResponseFieldFacetData' - type: array - name: - description: Name of the incident property field. - example: Severity - type: string - required: - - facets - - name - type: object - IncidentSearchResponseFieldFacetData: - description: >- - Facet value and number of occurrences for a property field of an - incident. - properties: - count: - $ref: '#/components/schemas/IncidentSearchResponseFacetCount' - name: - description: The facet value appearing in search results. - example: SEV-2 - type: string - type: object - IncidentSearchResponseNumericFacetData: - description: Facet data numeric attributes of an incident. - properties: - aggregates: - $ref: >- - #/components/schemas/IncidentSearchResponseNumericFacetDataAggregates - name: - description: Name of the incident property field. - example: time_to_repair - type: string - required: - - name - - aggregates - type: object - RelationshipToIncidentPostmortemData: - description: The postmortem relationship data. - example: - id: 00000000-0000-abcd-2000-000000000000 - type: incident_postmortems - properties: - id: - description: A unique identifier that represents the postmortem. - example: 00000000-0000-abcd-1000-000000000000 - type: string - type: - $ref: '#/components/schemas/IncidentPostmortemType' - required: - - id - - type - type: object - IncidentAttachmentsPostmortemAttributesAttachmentObject: - description: The postmortem attachment. - properties: - documentUrl: - description: The URL of this notebook attachment. - example: https://app.datadoghq.com/notebook/123 - type: string - title: - description: The title of this postmortem attachment. - example: Postmortem IR-123 - type: string - required: - - documentUrl - - title - type: object - IncidentAttachmentPostmortemAttachmentType: - default: postmortem - description: The type of postmortem attachment attributes. - enum: - - postmortem - example: postmortem - type: string - x-enum-varnames: - - POSTMORTEM - IncidentAttachmentLinkAttributesAttachmentObject: - description: The link attachment. - properties: - documentUrl: - description: The URL of this link attachment. - example: https://www.example.com/webstore-failure-runbook - type: string - title: - description: The title of this link attachment. - example: Runbook for webstore service failures - type: string - required: - - documentUrl - - title - type: object - IncidentAttachmentLinkAttachmentType: - default: link - description: The type of link attachment attributes. - enum: - - link - example: link - type: string - x-enum-varnames: - - LINK - SlackIntegrationMetadata: - description: Incident integration metadata for the Slack integration. - properties: - channels: - description: Array of Slack channels in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/SlackIntegrationMetadataChannelItem' - type: array - required: - - channels - type: object - JiraIntegrationMetadata: - description: Incident integration metadata for the Jira integration. - properties: - issues: - description: Array of Jira issues in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/JiraIntegrationMetadataIssuesItem' - type: array - required: - - issues - type: object - MSTeamsIntegrationMetadata: - description: Incident integration metadata for the Microsoft Teams integration. - properties: - teams: - description: Array of Microsoft Teams in this integration metadata. - example: [] - items: - $ref: '#/components/schemas/MSTeamsIntegrationMetadataTeamsItem' - type: array - required: - - teams - type: object - IncidentTodoAssignee: - description: A todo assignee. - example: '@test.user@test.com' - oneOf: - - $ref: '#/components/schemas/IncidentTodoAssigneeHandle' - - $ref: '#/components/schemas/IncidentTodoAnonymousAssignee' - EscalationPolicyStepAttributesAssignment: - description: >- - Specifies how this escalation step will assign targets (example - `default` or `round-robin`). - enum: - - default - - round-robin - type: string - x-enum-varnames: - - DEFAULT - - ROUND_ROBIN - EscalationPolicyStepTarget: - description: >- - Defines a single escalation target within a step for an escalation - policy creation request. Contains `id` and `type`. - properties: - id: - description: Specifies the unique identifier for this target. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/EscalationPolicyStepTargetType' - type: object - DataRelationshipsTeamsDataItems: - description: >- - Relates a team to this schedule, identified by `id` and `type` (must be - `teams`). - properties: - id: - description: The unique identifier of the team in this relationship. - example: 00000000-da3a-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/DataRelationshipsTeamsDataItemsType' - required: - - type - - id - type: object - EscalationPolicyDataRelationshipsStepsDataItems: - description: >- - Defines a relationship to a single step within an escalation policy. - Contains the step's `id` and `type`. - properties: - id: - description: Specifies the unique identifier for the step resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: >- - #/components/schemas/EscalationPolicyDataRelationshipsStepsDataItemsType - required: - - type - - id - type: object - EscalationTargets: - description: A list of escalation targets for a step - properties: - data: - description: The `EscalationTargets` `data`. - items: - $ref: '#/components/schemas/EscalationTarget' - type: array - type: object - UserAttributesStatus: - description: The user's status. - enum: - - active - - deactivated - - pending - type: string - x-enum-varnames: - - ACTIVE - - DEACTIVATED - - PENDING - OnCallPageTargetType: - description: The kind of target, `team_id` | `team_handle` | `user_id`. - enum: - - team_id - - team_handle - - user_id - example: team_id - type: string - x-enum-varnames: - - TEAM_ID - - TEAM_HANDLE - - USER_ID - LayerAttributesInterval: - description: >- - Defines how often the rotation repeats, using a combination of days and - optional seconds. Should be at least 1 hour. - properties: - days: - description: The number of days in each rotation cycle. - example: 1 - format: int32 - maximum: 400 - type: integer - seconds: - description: Any additional seconds for the rotation cycle (up to 30 days). - example: 300 - format: int64 - maximum: 2592000 - type: integer - type: object - ScheduleRequestDataAttributesLayersItemsMembersItems: - description: >- - Defines a single member within a schedule layer, including the reference - to the underlying user. - properties: - user: - $ref: >- - #/components/schemas/ScheduleRequestDataAttributesLayersItemsMembersItemsUser - type: object - TimeRestriction: - description: >- - Defines a single time restriction rule with start and end times and the - applicable weekdays. - properties: - end_day: - $ref: '#/components/schemas/Weekday' - end_time: - description: Specifies the ending time for this restriction. - type: string - start_day: - $ref: '#/components/schemas/Weekday' - start_time: - description: Specifies the starting time for this restriction. - type: string - type: object - ScheduleDataRelationshipsLayersDataItems: - description: >- - Relates a layer to this schedule, identified by `id` and `type` (must be - `layers`). - properties: - id: - description: The unique identifier of the layer in this relationship. - example: 00000000-0000-0000-0000-000000000001 - type: string - type: - $ref: '#/components/schemas/ScheduleDataRelationshipsLayersDataItemsType' - required: - - type - - id - type: object - LayerRelationshipsMembers: - description: >- - Holds an array of references to the members of a Layer, each containing - member IDs. - properties: - data: - description: The list of members who belong to this layer. - items: - $ref: '#/components/schemas/LayerRelationshipsMembersDataItems' - type: array - type: object - ScheduleMemberRelationshipsUser: - description: Wraps the user data reference for a schedule member. - properties: - data: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUserData' - required: - - data - type: object - ShiftDataRelationshipsUserData: - description: >- - Represents a reference to the user assigned to this shift, containing - the user's ID and resource type. - properties: - id: - description: Specifies the unique identifier of the user. - example: 00000000-0000-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/ShiftDataRelationshipsUserDataType' - required: - - type - - id - type: object - TeamOnCallRespondersDataRelationshipsEscalationsDataItems: - description: >- - Represents a link to a specific escalation policy step associated with - the on-call team. - properties: - id: - description: Unique identifier of the escalation step. - example: '' - type: string - type: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType - required: - - type - - id - type: object - TeamOnCallRespondersDataRelationshipsRespondersDataItems: - description: Represents a user responder associated with the on-call team. - properties: - id: - description: Unique identifier of the responder. - example: '' - type: string - type: - $ref: >- - #/components/schemas/TeamOnCallRespondersDataRelationshipsRespondersDataItemsType - required: - - type - - id - type: object - EscalationRelationshipsResponders: - description: Lists the users involved in a specific step of the escalation policy. - properties: - data: - description: >- - Array of user references assigned as responders for this escalation - step. - items: - $ref: '#/components/schemas/EscalationRelationshipsRespondersDataItems' - type: array - type: object - TeamRoutingRulesDataRelationshipsRulesDataItems: - description: Defines a relationship item to link a routing rule by its ID and type. - properties: - id: - description: Specifies the unique identifier for the related routing rule. - example: '' - type: string - type: - $ref: >- - #/components/schemas/TeamRoutingRulesDataRelationshipsRulesDataItemsType - required: - - type - - id - type: object - RoutingRuleAction: - description: >- - Defines an action that is executed when a routing rule matches certain - criteria. - oneOf: - - $ref: '#/components/schemas/SendSlackMessageAction' - - $ref: '#/components/schemas/SendTeamsMessageAction' - TimeRestrictions: - description: >- - Holds time zone information and a list of time restrictions for a - routing rule. - properties: - restrictions: - description: Defines the list of time-based restrictions. - items: - $ref: '#/components/schemas/TimeRestriction' - type: array - time_zone: - description: Specifies the time zone applicable to the restrictions. - example: '' - type: string - required: - - time_zone - - restrictions - type: object - Urgency: - description: >- - Specifies the level of urgency for a routing rule (low, high, or - dynamic). - enum: - - low - - high - - dynamic - example: low - type: string - x-enum-varnames: - - LOW - - HIGH - - DYNAMIC - RoutingRuleRelationshipsPolicy: - description: Defines the relationship that links a routing rule to a policy. - properties: - data: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicyData' - nullable: true - type: object - ServiceDefinitionMetaWarnings: - description: Schema validation warnings. - properties: - instance-location: - description: The warning instance location. - type: string - keyword-location: - description: The warning keyword location. - type: string - message: - description: The warning message. - type: string - type: object - ServiceDefinitionV1: - deprecated: true - description: >- - Deprecated - Service definition V1 for providing additional service - metadata and integrations. - properties: - contact: - $ref: '#/components/schemas/ServiceDefinitionV1Contact' - extensions: - additionalProperties: {} - description: Extensions to V1 schema. - example: - myorg/extension: extensionValue - type: object - external-resources: - description: A list of external links related to the services. - items: - $ref: '#/components/schemas/ServiceDefinitionV1Resource' - type: array - info: - $ref: '#/components/schemas/ServiceDefinitionV1Info' - integrations: - $ref: '#/components/schemas/ServiceDefinitionV1Integrations' - org: - $ref: '#/components/schemas/ServiceDefinitionV1Org' - schema-version: - $ref: '#/components/schemas/ServiceDefinitionV1Version' - tags: - description: A set of custom tags. - example: - - my:tag - - service:tag - items: - type: string - type: array - required: - - schema-version - - info - type: object - ServiceDefinitionV2Dot2OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2Dot1EmailType: - description: Contact type. - enum: - - email - example: email - type: string - x-enum-varnames: - - EMAIL - ServiceDefinitionV2Dot1SlackType: - description: Contact type. - enum: - - slack - example: slack - type: string - x-enum-varnames: - - SLACK - ServiceDefinitionV2Dot1MSTeamsType: - description: Contact type. - enum: - - microsoft-teams - example: microsoft-teams - type: string - x-enum-varnames: - - MICROSOFT_TEAMS - ServiceDefinitionV2Dot1OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - ServiceDefinitionV2EmailType: - description: Contact type. - enum: - - email - example: email - type: string - x-enum-varnames: - - EMAIL - ServiceDefinitionV2SlackType: - description: Contact type. - enum: - - slack - example: slack - type: string - x-enum-varnames: - - SLACK - ServiceDefinitionV2MSTeamsType: - description: Contact type. - enum: - - microsoft-teams - example: microsoft-teams - type: string - x-enum-varnames: - - MICROSOFT_TEAMS - ServiceDefinitionV2OpsgenieRegion: - description: Opsgenie instance region. - enum: - - US - - EU - example: US - type: string - x-enum-varnames: - - US - - EU - UserResourceType: - default: user - description: User resource type. - enum: - - user - example: user - type: string - x-enum-varnames: - - USER - TeamLinkType: - default: team_links - description: Team link type - enum: - - team_links - example: team_links - type: string - x-enum-varnames: - - TEAM_LINKS - DowntimeScheduleCurrentDowntimeResponse: - description: >- - The most recent actual start and end dates for a recurring downtime. For - a canceled downtime, - - this is the previously occurring downtime. For active downtimes, this is - the ongoing downtime, and for scheduled - - downtimes it is the upcoming downtime. - properties: - end: - description: The end of the current downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - nullable: true - type: string - start: - description: The start of the current downtime. - example: '2020-01-02T03:04:00.000Z' - format: date-time - type: string - type: object - DowntimeScheduleRecurrenceResponse: - description: An RRULE-based recurring downtime. - properties: - duration: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceDuration' - rrule: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceRrule' - start: - description: >- - ISO-8601 Datetime to start the downtime. Must not include a UTC - offset. If not provided, the - - downtime starts the moment it is created. - example: 2020-01-02T03:04 - type: string - type: object - RelationshipToOrganizationData: - description: Relationship to organization object. - properties: - id: - description: ID of the organization. - example: 00000000-0000-beef-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/OrganizationsType' - required: - - id - - type - type: object - RelationshipToRoleData: - description: Relationship to role object. - properties: - id: - description: The unique identifier of the role. - example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d - type: string - type: - $ref: '#/components/schemas/RolesType' - type: object - DowntimeScheduleRecurrenceCreateUpdateRequest: - additionalProperties: {} - description: An object defining the recurrence of the downtime. - properties: - duration: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceDuration' - rrule: - $ref: '#/components/schemas/DowntimeScheduleRecurrenceRrule' - start: - description: >- - ISO-8601 Datetime to start the downtime. Must not include a UTC - offset. If not provided, the - - downtime starts the moment it is created. - example: 2020-01-02T03:04 - nullable: true - type: string - required: - - duration - - rrule - type: object - IssueCaseJiraIssueResult: - description: Contains the identifiers and URL for a successfully created Jira issue. - properties: - issue_id: - description: Jira issue identifier. - example: '1904866' - type: string - issue_key: - description: Jira issue key. - example: ET-123 - type: string - issue_url: - description: Jira issue URL. - example: https://your-jira-instance.atlassian.net/browse/ET-123 - type: string - project_key: - description: Jira project key. - example: ET - type: string - type: object - ChangeEventCustomAttributesAuthor: - additionalProperties: false - description: >- - The entity that made the change. Optional, if provided it must include - `type` and `name`. - properties: - name: - description: >- - The name of the user or system that made the change. Limited to 128 - characters. - example: example@datadog.com - maxLength: 128 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/ChangeEventCustomAttributesAuthorType' - required: - - name - - type - type: object - ChangeEventCustomAttributesChangedResource: - additionalProperties: false - description: A uniquely identified resource. - properties: - name: - description: >- - The name of the resource that was changed. Limited to 128 - characters. - example: fallback_payments_test - maxLength: 128 - minLength: 1 - type: string - type: - $ref: '#/components/schemas/ChangeEventCustomAttributesChangedResourceType' - required: - - type - - name - type: object - ChangeEventCustomAttributesImpactedResourcesItems: - additionalProperties: false - description: Object representing a uniquely identified resource. - properties: - name: - description: The name of the impacted resource. Limited to 128 characters. - example: payments_api - maxLength: 128 - minLength: 1 - type: string - type: - $ref: >- - #/components/schemas/ChangeEventCustomAttributesImpactedResourcesItemsType - required: - - type - - name - type: object - AlertEventCustomAttributesCustom: - additionalProperties: {} - description: >- - Free form JSON object for arbitrary data. Supports up to 100 properties - per object and a maximum nesting depth of 10 levels. - example: {} - type: object - AlertEventCustomAttributesLinks: - description: The links related to the event. Maximum of 20 links allowed. - items: - $ref: '#/components/schemas/AlertEventCustomAttributesLinksItems' - maxItems: 20 - minItems: 1 - type: array - AlertEventCustomAttributesPriority: - default: '5' - description: The priority of the alert. - enum: - - '1' - - '2' - - '3' - - '4' - - '5' - example: '5' - type: string - x-enum-varnames: - - PRIORITY_ONE - - PRIORITY_TWO - - PRIORITY_THREE - - PRIORITY_FOUR - - PRIORITY_FIVE - AlertEventCustomAttributesStatus: - description: The status of the alert. - enum: - - warn - - error - - ok - example: warn - type: string - x-enum-varnames: - - WARN - - ERROR - - OK - V2EventAggregationKey: - description: Aggregation key of the event. - example: aggregation-key - type: string - ChangeEventAttributesAuthor: - description: The entity that made the change. - properties: - name: - description: The name of the user or system that made the change. - example: example@datadog.com - type: string - type: - $ref: '#/components/schemas/ChangeEventAttributesAuthorType' - type: object - ChangeEventAttributesChangedResource: - description: A uniquely identified resource. - properties: - name: - description: The name of the changed resource. - type: string - type: - $ref: '#/components/schemas/ChangeEventAttributesChangedResourceType' - type: object - EventSystemAttributes: - description: JSON object of event system attributes. - properties: - category: - $ref: '#/components/schemas/EventSystemAttributesCategory' - id: - description: >- - Event identifier. This field is deprecated and will be removed in a - future version. Use the `uid` field instead. - type: string - integration_id: - $ref: '#/components/schemas/EventSystemAttributesIntegrationId' - source_id: - description: The source type ID of the event. - format: int64 - type: integer - uid: - description: >- - A unique identifier for the event. You can use this identifier to - query or reference the event. - type: string - type: object - ChangeEventAttributesImpactedResourcesItem: - description: A uniquely identified resource. - properties: - name: - description: The name of the impacted resource. - type: string - type: - $ref: '#/components/schemas/ChangeEventAttributesImpactedResourcesItemType' - type: object - V2EventService: - description: Service that triggered the event. - example: service-name - type: string - V2EventTimestamp: - description: POSIX timestamp of the event. - example: 175019386627 - format: int64 - type: integer - V2EventTitle: - description: The title of the event. - example: The event title - type: string - AlertEventAttributesLinksItem: - description: A link. - properties: - category: - $ref: '#/components/schemas/AlertEventAttributesLinksItemCategory' - title: - description: The display text of the link. - type: string - url: - description: The URL of the link. - type: string - type: object - AlertEventAttributesPriority: - description: The priority of the alert. - enum: - - '1' - - '2' - - '3' - - '4' - - '5' - example: '5' - type: string - x-enum-varnames: - - PRIORITY_ONE - - PRIORITY_TWO - - PRIORITY_THREE - - PRIORITY_FOUR - - PRIORITY_FIVE - AlertEventAttributesStatus: - description: The status of the alert. - enum: - - warn - - error - - ok - example: error - type: string - x-enum-varnames: - - WARN - - ERROR - - OK - IncidentFieldAttributesSingleValueType: - default: dropdown - description: Type of the single value field definitions. - enum: - - dropdown - - textbox - example: dropdown - type: string - x-enum-varnames: - - DROPDOWN - - TEXTBOX - IncidentFieldAttributesValueType: - default: multiselect - description: Type of the multiple value field definitions. - enum: - - multiselect - - textarray - - metrictag - - autocomplete - example: multiselect - type: string - x-enum-varnames: - - MULTISELECT - - TEXTARRAY - - METRICTAG - - AUTOCOMPLETE - IncidentImpactsType: - description: The incident impacts type. - enum: - - incident_impacts - example: incident_impacts - type: string - x-enum-varnames: - - INCIDENT_IMPACTS - IncidentRespondersType: - description: The incident responders type. - enum: - - incident_responders - example: incident_responders - type: string - x-enum-varnames: - - INCIDENT_RESPONDERS - IncidentUserDefinedFieldType: - description: The incident user defined fields type. - enum: - - user_defined_field - example: user_defined_field - type: string - x-enum-varnames: - - USER_DEFINED_FIELD - IncidentTimelineCellMarkdownContentType: - default: markdown - description: Type of the Markdown timeline cell. - enum: - - markdown - example: markdown - type: string - x-enum-varnames: - - MARKDOWN - IncidentTimelineCellMarkdownCreateAttributesContent: - description: The Markdown timeline cell contents. - properties: - content: - description: The Markdown content of the cell. - example: An example timeline cell message. - nullable: false - type: string - type: object - IncidentSearchResponseFacetCount: - description: Count of the facet value appearing in search results. - example: 5 - format: int32 - maximum: 2147483647 - type: integer - IncidentSearchResponseNumericFacetDataAggregates: - description: Aggregate information for numeric incident data. - properties: - max: - description: Maximum value of the numeric aggregates. - example: 1234 - format: double - nullable: true - type: number - min: - description: Minimum value of the numeric aggregates. - example: 20 - format: double - nullable: true - type: number - type: object - IncidentPostmortemType: - default: incident_postmortems - description: Incident postmortem resource type. - enum: - - incident_postmortems - example: incident_postmortems - type: string - x-enum-varnames: - - INCIDENT_POSTMORTEMS - SlackIntegrationMetadataChannelItem: - description: Item in the Slack integration metadata channel array. - properties: - channel_id: - description: Slack channel ID. - example: C0123456789 - type: string - channel_name: - description: Name of the Slack channel. - example: '#example-channel-name' - type: string - redirect_url: - description: URL redirecting to the Slack channel. - example: https://slack.com/app_redirect?channel=C0123456789&team=T01234567 - type: string - team_id: - description: Slack team ID. - example: T01234567 - type: string - required: - - channel_id - - channel_name - - redirect_url - type: object - JiraIntegrationMetadataIssuesItem: - description: Item in the Jira integration metadata issue array. - properties: - account: - description: URL of issue's Jira account. - example: https://example.atlassian.net - type: string - issue_key: - description: Jira issue's issue key. - example: PROJ-123 - type: string - issuetype_id: - description: Jira issue's issue type. - example: '1000' - type: string - project_key: - description: Jira issue's project keys. - example: PROJ - type: string - redirect_url: - description: URL redirecting to the Jira issue. - example: https://example.atlassian.net/browse/PROJ-123 - type: string - required: - - project_key - - account - type: object - MSTeamsIntegrationMetadataTeamsItem: - description: Item in the Microsoft Teams integration metadata teams array. - properties: - ms_channel_id: - description: Microsoft Teams channel ID. - example: 19:abc00abcdef00a0abcdef0abcdef0a@thread.tacv2 - type: string - ms_channel_name: - description: Microsoft Teams channel name. - example: incident-0001-example - type: string - ms_tenant_id: - description: Microsoft Teams tenant ID. - example: 00000000-abcd-0005-0000-000000000000 - type: string - redirect_url: - description: URL redirecting to the Microsoft Teams channel. - example: >- - https://teams.microsoft.com/l/channel/19%3Aabc00abcdef00a0abcdef0abcdef0a%40thread.tacv2/conversations?groupId=12345678-abcd-dcba-abcd-1234567890ab&tenantId=00000000-abcd-0005-0000-000000000000 - type: string - required: - - ms_tenant_id - - ms_channel_id - - ms_channel_name - - redirect_url - type: object - IncidentTodoAssigneeHandle: - description: Assignee's @-handle. - example: '@test.user@test.com' - type: string - IncidentTodoAnonymousAssignee: - description: Anonymous assignee entity. - properties: - icon: - description: URL for assignee's icon. - example: https://a.slack-edge.com/80588/img/slackbot_48.png - type: string - id: - description: Anonymous assignee's ID. - example: USLACKBOT - type: string - name: - description: Assignee's name. - example: Slackbot - type: string - source: - $ref: '#/components/schemas/IncidentTodoAnonymousAssigneeSource' - required: - - id - - icon - - name - - source - type: object - EscalationPolicyStepTargetType: - description: >- - Specifies the type of escalation target (example `users`, `schedules`, - or `teams`). - enum: - - users - - schedules - - teams - example: users - type: string - x-enum-varnames: - - USERS - - SCHEDULES - - TEAMS - DataRelationshipsTeamsDataItemsType: - default: teams - description: Teams resource type. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - EscalationPolicyDataRelationshipsStepsDataItemsType: - default: steps - description: Indicates that the resource is of type `steps`. - enum: - - steps - example: steps - type: string - x-enum-varnames: - - STEPS - EscalationTarget: - description: Represents an escalation target, which can be a team, user, or schedule. - oneOf: - - $ref: '#/components/schemas/TeamTarget' - - $ref: '#/components/schemas/UserTarget' - - $ref: '#/components/schemas/ScheduleTarget' - ScheduleRequestDataAttributesLayersItemsMembersItemsUser: - description: >- - Identifies the user participating in this layer as a single object with - an `id`. - properties: - id: - description: The user's ID. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: object - Weekday: - description: A day of the week. - enum: - - monday - - tuesday - - wednesday - - thursday - - friday - - saturday - - sunday - type: string - x-enum-varnames: - - MONDAY - - TUESDAY - - WEDNESDAY - - THURSDAY - - FRIDAY - - SATURDAY - - SUNDAY - ScheduleDataRelationshipsLayersDataItemsType: - default: layers - description: Layers resource type. - enum: - - layers - example: layers - type: string - x-enum-varnames: - - LAYERS - LayerRelationshipsMembersDataItems: - description: >- - Represents a single member object in a layer's `members` array, - referencing - - a unique Datadog user ID. - properties: - id: - description: The unique user ID of the layer member. - example: 00000000-0000-0000-0000-000000000002 - type: string - type: - $ref: '#/components/schemas/LayerRelationshipsMembersDataItemsType' - required: - - type - - id - type: object - ScheduleMemberRelationshipsUserData: - description: >- - Points to the user data associated with this schedule member, including - an ID and type. - properties: - id: - description: The user's unique identifier. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/ScheduleMemberRelationshipsUserDataType' - required: - - type - - id - type: object - ShiftDataRelationshipsUserDataType: - default: users - description: Indicates that the related resource is of type 'users'. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - TeamOnCallRespondersDataRelationshipsEscalationsDataItemsType: - default: escalation_policy_steps - description: >- - Identifies the resource type for escalation policy steps linked to a - team's on-call configuration. - enum: - - escalation_policy_steps - example: escalation_policy_steps - type: string - x-enum-varnames: - - ESCALATION_POLICY_STEPS - TeamOnCallRespondersDataRelationshipsRespondersDataItemsType: - default: users - description: >- - Identifies the resource type for individual user entities associated - with on-call response. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - EscalationRelationshipsRespondersDataItems: - description: Represents a user assigned to an escalation step. - properties: - id: - description: Unique identifier of the user assigned to the escalation step. - example: '' - type: string - type: - $ref: '#/components/schemas/EscalationRelationshipsRespondersDataItemsType' - required: - - type - - id - type: object - TeamRoutingRulesDataRelationshipsRulesDataItemsType: - default: team_routing_rules - description: Indicates that the resource is of type 'team_routing_rules'. - enum: - - team_routing_rules - example: team_routing_rules - type: string - x-enum-varnames: - - TEAM_ROUTING_RULES - SendSlackMessageAction: - description: Sends a message to a Slack channel. - properties: - channel: - description: The channel ID. - example: CHANNEL - type: string - type: - $ref: '#/components/schemas/SendSlackMessageActionType' - workspace: - description: The workspace ID. - example: WORKSPACE - type: string - required: - - type - - channel - - workspace - type: object - SendTeamsMessageAction: - description: Sends a message to a Microsoft Teams channel. - properties: - channel: - description: The channel ID. - example: CHANNEL - type: string - team: - description: The team ID. - example: TEAM - type: string - tenant: - description: The tenant ID. - example: TENANT - type: string - type: - $ref: '#/components/schemas/SendTeamsMessageActionType' - required: - - type - - channel - - tenant - - team - type: object - RoutingRuleRelationshipsPolicyData: - description: >- - Represents the policy data reference, containing the policy's ID and - resource type. - properties: - id: - description: Specifies the unique identifier of the policy. - example: '' - type: string - type: - $ref: '#/components/schemas/RoutingRuleRelationshipsPolicyDataType' - required: - - type - - id - type: object - ServiceDefinitionV1Contact: - description: Contact information about the service. - properties: - email: - description: Service owner’s email. - example: contact@datadoghq.com - type: string - slack: - description: Service owner’s Slack channel. - example: https://yourcompany.slack.com/archives/channel123 - type: string - type: object - ServiceDefinitionV1Resource: - description: Service's external links. - properties: - name: - description: Link name. - example: Runbook - type: string - type: - $ref: '#/components/schemas/ServiceDefinitionV1ResourceType' - url: - description: Link URL. - example: https://my-runbook - type: string - required: - - name - - type - - url - type: object - ServiceDefinitionV1Info: - description: Basic information about a service. - properties: - dd-service: - description: >- - Unique identifier of the service. Must be unique across all services - and is used to match with a service in Datadog. - example: myservice - type: string - description: - description: A short description of the service. - example: A shopping cart service - type: string - display-name: - description: A friendly name of the service. - example: My Service - type: string - service-tier: - description: Service tier. - example: Tier 1 - type: string - required: - - dd-service - type: object - ServiceDefinitionV1Integrations: - description: Third party integrations that Datadog supports. - properties: - pagerduty: - $ref: '#/components/schemas/ServiceDefinitionV1Pagerduty' - type: object - ServiceDefinitionV1Org: - description: Org related information about the service. - properties: - application: - description: App feature this service supports. - example: E-Commerce - type: string - team: - description: Team that owns the service. - example: my-team - type: string - type: object - ServiceDefinitionV1Version: - default: v1 - description: Schema version being used. - enum: - - v1 - example: v1 - type: string - x-enum-varnames: - - V1 - DowntimeScheduleRecurrenceDuration: - description: >- - The length of the downtime. Must begin with an integer and end with one - of 'm', 'h', d', or 'w'. - example: 123d - type: string - DowntimeScheduleRecurrenceRrule: - description: >- - The `RRULE` standard for defining recurring events. - - For example, to have a recurring event on the first day of each month, - set the type to `rrule` and set the `FREQ` to `MONTHLY` and `BYMONTHDAY` - to `1`. - - Most common `rrule` options from the [iCalendar - Spec](https://tools.ietf.org/html/rfc5545) are supported. - - - **Note**: Attributes specifying the duration in `RRULE` are not - supported (for example, `DTSTART`, `DTEND`, `DURATION`). - - More examples available in this [downtime - guide](https://docs.datadoghq.com/monitors/guide/suppress-alert-with-downtimes/?tab=api). - example: FREQ=MONTHLY;BYSETPOS=3;BYDAY=WE;INTERVAL=1 - type: string - OrganizationsType: - default: orgs - description: Organizations resource type. - enum: - - orgs - example: orgs - type: string - x-enum-varnames: - - ORGS - RolesType: - default: roles - description: Roles type. - enum: - - roles - example: roles - type: string - x-enum-varnames: - - ROLES - ChangeEventCustomAttributesAuthorType: - description: Author's type. - enum: - - user - - system - - api - - automation - example: user - type: string - x-enum-varnames: - - USER - - SYSTEM - - API - - AUTOMATION - ChangeEventCustomAttributesChangedResourceType: - description: The type of the resource that was changed. - enum: - - feature_flag - - configuration - example: feature_flag - type: string - x-enum-varnames: - - FEATURE_FLAG - - CONFIGURATION - ChangeEventCustomAttributesImpactedResourcesItemsType: - description: The type of the impacted resource. - enum: - - service - example: service - type: string - x-enum-varnames: - - SERVICE - AlertEventCustomAttributesLinksItems: - additionalProperties: false - description: A link. - properties: - category: - $ref: '#/components/schemas/AlertEventCustomAttributesLinksItemsCategory' - title: - description: The display text of the link. Limited to 300 characters. - example: Runbook Link - maxLength: 300 - minLength: 1 - type: string - url: - description: The URL of the link. Limited to 2048 characters. - example: https://app.datadoghq.com/runbook - maxLength: 2048 - minLength: 1 - type: string - required: - - url - - category - type: object - ChangeEventAttributesAuthorType: - description: The type of the author. - enum: - - user - - system - - api - - automation - example: user - type: string - x-enum-varnames: - - USER - - SYSTEM - - API - - AUTOMATION - ChangeEventAttributesChangedResourceType: - description: The type of the changed resource. - enum: - - feature_flag - - configuration - example: feature_flag - type: string - x-enum-varnames: - - FEATURE_FLAG - - CONFIGURATION - EventSystemAttributesCategory: - description: Event category identifying the type of event. - enum: - - change - - alert - example: change - type: string - x-enum-varnames: - - CHANGE - - ALERT - EventSystemAttributesIntegrationId: - description: Integration ID sourced from integration manifests. - enum: - - custom-events - example: custom-events - type: string - x-enum-varnames: - - CUSTOM_EVENTS - ChangeEventAttributesImpactedResourcesItemType: - description: The type of the impacted resource. - enum: - - service - type: string - x-enum-varnames: - - SERVICE - AlertEventAttributesLinksItemCategory: - description: The category of the link. - enum: - - runbook - - documentation - - dashboard - type: string - x-enum-varnames: - - RUNBOOK - - DOCUMENTATION - - DASHBOARD - IncidentTodoAnonymousAssigneeSource: - default: slack - description: The source of the anonymous assignee. - enum: - - slack - - microsoft_teams - example: slack - type: string - x-enum-varnames: - - SLACK - - MICROSOFT_TEAMS - TeamTarget: - description: >- - Represents a team target for an escalation policy step, including the - team's ID and resource type. - properties: - id: - description: Specifies the unique identifier of the team resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/TeamTargetType' - required: - - type - - id - type: object - UserTarget: - description: >- - Represents a user target for an escalation policy step, including the - user's ID and resource type. - properties: - id: - description: Specifies the unique identifier of the user resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/UserTargetType' - required: - - type - - id - type: object - ScheduleTarget: - description: >- - Represents a schedule target for an escalation policy step, including - its ID and resource type. - properties: - id: - description: Specifies the unique identifier of the schedule resource. - example: 00000000-aba1-0000-0000-000000000000 - type: string - type: - $ref: '#/components/schemas/ScheduleTargetType' - required: - - type - - id - type: object - LayerRelationshipsMembersDataItemsType: - default: members - description: Members resource type. - enum: - - members - example: members - type: string - x-enum-varnames: - - MEMBERS - ScheduleMemberRelationshipsUserDataType: - default: users - description: Users resource type. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - EscalationRelationshipsRespondersDataItemsType: - default: users - description: >- - Represents the resource type for users assigned as responders in an - escalation step. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - SendSlackMessageActionType: - default: send_slack_message - description: Indicates that the action is a send Slack message action. - enum: - - send_slack_message - example: send_slack_message - type: string - x-enum-varnames: - - SEND_SLACK_MESSAGE - SendTeamsMessageActionType: - default: send_teams_message - description: Indicates that the action is a send Microsoft Teams message action. - enum: - - send_teams_message - example: send_teams_message - type: string - x-enum-varnames: - - SEND_TEAMS_MESSAGE - RoutingRuleRelationshipsPolicyDataType: - default: policies - description: Indicates that the resource is of type 'policies'. - enum: - - policies - example: policies - type: string - x-enum-varnames: - - POLICIES - ServiceDefinitionV1ResourceType: - description: Link type. - enum: - - doc - - wiki - - runbook - - url - - repo - - dashboard - - oncall - - code - - link - example: runbook - type: string - x-enum-varnames: - - DOC - - WIKI - - RUNBOOK - - URL - - REPO - - DASHBOARD - - ONCALL - - CODE - - LINK - ServiceDefinitionV1Pagerduty: - description: PagerDuty service URL for the service. - example: https://my-org.pagerduty.com/service-directory/PMyService - type: string - AlertEventCustomAttributesLinksItemsCategory: - description: The category of the link. - enum: - - runbook - - documentation - - dashboard - example: runbook - type: string - x-enum-varnames: - - RUNBOOK - - DOCUMENTATION - - DASHBOARD - TeamTargetType: - default: teams - description: Indicates that the resource is of type `teams`. - enum: - - teams - example: teams - type: string - x-enum-varnames: - - TEAMS - UserTargetType: - default: users - description: Indicates that the resource is of type `users`. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - ScheduleTargetType: - default: schedules - description: Indicates that the resource is of type `schedules`. - enum: - - schedules - example: schedules - type: string - x-enum-varnames: - - SCHEDULES - responses: - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - UnauthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Unauthorized - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - ConflictResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Conflict - parameters: - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - CaseSortableFieldParameter: - description: Specify which field to sort - in: query - name: sort[field] - required: false - schema: - $ref: '#/components/schemas/CaseSortableField' - ProjectIDPathParameter: - description: Project UUID - example: e555e290-ed65-49bd-ae18-8acbfcf18db7 - in: path - name: project_id - required: true - schema: - type: string - CaseIDPathParameter: - description: Case's UUID or key - example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504 - in: path - name: case_id - required: true - schema: - type: string - PageOffset: - description: Specific offset to use as the beginning of the returned page. - in: query - name: page[offset] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - SearchIssuesIncludeQueryParameter: - description: >- - Comma-separated list of relationship objects that should be included in - the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/SearchIssuesIncludeQueryParameterItem' - type: array - IssueIDPathParameter: - description: The identifier of the issue. - example: c1726a66-1f64-11ee-b338-da7ad0900002 - in: path - name: issue_id - required: true - schema: - type: string - GetIssueIncludeQueryParameter: - description: >- - Comma-separated list of relationship objects that should be included in - the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/GetIssueIncludeQueryParameterItem' - type: array - IncidentIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/IncidentRelatedObject' - type: array - IncidentNotificationRuleIncludeQueryParameter: - description: > - Comma-separated list of resources to include. Supported values: - `created_by_user`, `last_modified_by_user`, `incident_type`, - `notification_template` - explode: false - in: query - name: include - required: false - schema: - example: created_by_user,incident_type,notification_template - type: string - IncidentNotificationRuleIDPathParameter: - description: The ID of the notification rule. - in: path - name: id - required: true - schema: - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - IncidentNotificationTemplateIncidentTypeFilterQueryParameter: - description: Optional incident type ID filter. - explode: false - in: query - name: filter[incident-type] - required: false - schema: - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - IncidentNotificationTemplateIncludeQueryParameter: - description: > - Comma-separated list of relationships to include. Supported values: - `created_by_user`, `last_modified_by_user`, `incident_type` - explode: false - in: query - name: include - required: false - schema: - example: created_by_user,incident_type - type: string - IncidentNotificationTemplateIDPathParameter: - description: The ID of the notification template. - in: path - name: id - required: true - schema: - example: 00000000-0000-0000-0000-000000000001 - format: uuid - type: string - IncidentTypeIncludeDeletedParameter: - description: Include deleted incident types in the response. - in: query - name: include_deleted - schema: - default: false - type: boolean - IncidentTypeIDPathParameter: - description: The UUID of the incident type. - in: path - name: incident_type_id - required: true - schema: - type: string - IncidentSearchIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentSearchQueryQueryParameter: - description: >- - Specifies which incidents should be returned. The query can contain any - number of incident facets - - joined by `ANDs`, along with multiple values for each of those facets - joined by `OR`s. For - - example: `state:active AND severity:(SEV-2 OR SEV-1)`. - explode: false - in: query - name: query - required: true - schema: - type: string - IncidentSearchSortQueryParameter: - description: Specifies the order of returned incidents. - explode: false - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/IncidentSearchSortOrder' - IncidentIDPathParameter: - description: The UUID of the incident. - in: path - name: incident_id - required: true - schema: - type: string - IncidentAttachmentIncludeQueryParameter: - description: Specifies which types of related objects are included in the response. - explode: false - in: query - name: include - required: false - schema: - items: - $ref: '#/components/schemas/IncidentAttachmentRelatedObject' - type: array - IncidentAttachmentFilterQueryParameter: - description: Specifies which types of attachments are included in the response. - explode: false - in: query - name: filter[attachment_type] - required: false - schema: - items: - $ref: '#/components/schemas/IncidentAttachmentAttachmentType' - type: array - IncidentIntegrationMetadataIDPathParameter: - description: The UUID of the incident integration metadata. - in: path - name: integration_metadata_id - required: true - schema: - type: string - IncidentTodoIDPathParameter: - description: The UUID of the incident todo. - in: path - name: todo_id - required: true - schema: - type: string - IncidentServiceIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentServiceSearchQueryParameter: - description: A search query that filters services by name. - in: query - name: filter - required: false - schema: - example: ExampleServiceName - type: string - SchemaVersion: - description: The schema version desired in the response. - in: query - name: schema_version - required: false - schema: - $ref: '#/components/schemas/ServiceDefinitionSchemaVersions' - ServiceName: - description: The name of the service. - in: path - name: service_name - required: true - schema: - example: my-service - type: string - IncidentServiceIDPathParameter: - description: The ID of the incident service. - in: path - name: service_id - required: true - schema: - type: string - ReportID: - description: The ID of the report job. - in: path - name: report_id - required: true - schema: - type: string - IncidentTeamIncludeQueryParameter: - description: >- - Specifies which types of related objects should be included in the - response. - in: query - name: include - required: false - schema: - $ref: '#/components/schemas/IncidentRelatedObject' - IncidentTeamSearchQueryParameter: - description: A search query that filters teams by name. - in: query - name: filter - required: false - schema: - example: ExampleTeamName - type: string - IncidentTeamIDPathParameter: - description: The ID of the incident team. - in: path - name: team_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/provider-dev/source/software_delivery.yaml b/provider-dev/source/software_delivery.yaml deleted file mode 100644 index f4bd675..0000000 --- a/provider-dev/source/software_delivery.yaml +++ /dev/null @@ -1,4326 +0,0 @@ -openapi: 3.0.0 -info: - title: software_delivery API - description: datadog software_delivery API - version: '1.0' -paths: - /api/v2/ci/pipeline: - post: - description: >- - Send your pipeline event to your Datadog platform over HTTP. For details - about how pipeline executions are modeled and what execution types we - support, see [Pipeline Data Model And Execution - Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/). - - - Multiple events can be sent in an array (up to 1000). - - - Pipeline events can be submitted with a timestamp that is up to 18 hours - in the past. - operationId: CreateCIAppPipelineEvent - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequest' - required: true - responses: - '202': - content: - application/json: - schema: - type: object - description: Request accepted for processing - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Bad Request - '401': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Unauthorized - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Forbidden - '408': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Request Timeout - '413': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Payload Too Large - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Too Many Requests - '500': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Internal Server Error - '503': - content: - application/json: - schema: - $ref: '#/components/schemas/HTTPCIAppErrors' - description: Service Unavailable - security: - - apiKeyAuth: [] - summary: Send pipeline event - tags: - - CI Visibility Pipelines - x-codegen-request-body-name: body - /api/v2/ci/pipelines/analytics/aggregate: - post: - description: >- - Use this API endpoint to aggregate CI Visibility pipeline events into - buckets of computed metrics and timeseries. - operationId: AggregateCIAppPipelineEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelinesAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelinesAnalyticsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - summary: Aggregate pipelines events - tags: - - CI Visibility Pipelines - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - ci_visibility_read - /api/v2/ci/pipelines/events: - get: - description: >- - List endpoint returns CI Visibility pipeline events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest pipeline events. - operationId: ListCIAppPipelineEvents - parameters: - - description: Search query following log syntax. - example: '@ci.provider.name:github @ci.pipeline.name:Pull Request Labeler' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/CIAppSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelineEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - summary: Get a list of pipelines events - tags: - - CI Visibility Pipelines - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - /api/v2/ci/pipelines/events/search: - post: - description: >- - List endpoint returns CI Visibility pipeline events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search. - operationId: SearchCIAppPipelineEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelineEventsRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppPipelineEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - summary: Search pipelines events - tags: - - CI Visibility Pipelines - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - /api/v2/ci/tests/analytics/aggregate: - post: - description: >- - The API endpoint to aggregate CI Visibility test events into buckets of - computed metrics and timeseries. - operationId: AggregateCIAppTestEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestsAggregateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestsAnalyticsAggregateResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - - AuthZ: - - test_optimization_read - summary: Aggregate tests events - tags: - - CI Visibility Tests - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - ci_visibility_read - - test_optimization_read - /api/v2/ci/tests/events: - get: - description: >- - List endpoint returns CI Visibility test events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to see your latest test events. - operationId: ListCIAppTestEvents - parameters: - - description: Search query following log syntax. - example: '@test.name:test_foo @test.suite:github.com/DataDog/dd-go/model' - in: query - name: filter[query] - required: false - schema: - type: string - - description: Minimum timestamp for requested events. - example: '2019-01-02T09:42:36.320Z' - in: query - name: filter[from] - required: false - schema: - format: date-time - type: string - - description: Maximum timestamp for requested events. - example: '2019-01-03T09:42:36.320Z' - in: query - name: filter[to] - required: false - schema: - format: date-time - type: string - - description: Order of events in results. - in: query - name: sort - required: false - schema: - $ref: '#/components/schemas/CIAppSort' - - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - in: query - name: page[cursor] - required: false - schema: - type: string - - description: Maximum number of events in the response. - example: 25 - in: query - name: page[limit] - required: false - schema: - default: 10 - format: int32 - maximum: 1000 - type: integer - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - - AuthZ: - - test_optimization_read - summary: Get a list of tests events - tags: - - CI Visibility Tests - x-pagination: - cursorParam: page[cursor] - cursorPath: meta.page.after - limitParam: page[limit] - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - - test_optimization_read - /api/v2/ci/tests/events/search: - post: - description: >- - List endpoint returns CI Visibility test events that match a [search - query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/). - - [Results are paginated similarly to - logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination). - - - Use this endpoint to build complex events filtering and search. - operationId: SearchCIAppTestEvents - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestEventsRequest' - required: false - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/CIAppTestEventsResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - ci_visibility_read - - AuthZ: - - test_optimization_read - summary: Search tests events - tags: - - CI Visibility Tests - x-codegen-request-body-name: body - x-pagination: - cursorParam: body.page.cursor - cursorPath: meta.page.after - limitParam: body.page.limit - resultsPath: data - x-permission: - operator: OR - permissions: - - ci_visibility_read - - test_optimization_read - /api/v2/dora/deployment: - post: - description: >- - Use this API endpoint to provide data about deployments for DORA - metrics. - - - This is necessary for: - - - Deployment Frequency - - - Change Lead Time - - - Change Failure Rate - operationId: CreateDORADeployment - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentResponse' - description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORADeploymentResponse' - description: OK - but delayed due to incident - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Send a deployment event for DORA Metrics - tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/dora/deployments: - post: - description: Use this API endpoint to get a list of deployment events. - operationId: ListDORADeployments - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListDeploymentsRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get a list of deployment events - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/deployments/{deployment_id}: - get: - description: Use this API endpoint to get a deployment event. - operationId: GetDORADeployment - parameters: - - description: The ID of the deployment event. - in: path - name: deployment_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFetchResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - - appKeyAuth: [] - summary: Get a deployment event - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/failure: - post: - description: |- - Use this API endpoint to provide failure data for DORA metrics. - - This is necessary for: - - Change Failure Rate - - Time to Restore - operationId: CreateDORAFailure - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - but delayed due to incident - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Send a failure event for DORA Metrics - tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/dora/failures: - post: - description: Use this API endpoint to get a list of failure events. - operationId: ListDORAFailures - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListFailuresRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAListResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - summary: Get a list of failure events - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/failures/{failure_id}: - get: - description: Use this API endpoint to get a failure event. - operationId: GetDORAFailure - parameters: - - description: The ID of the failure event. - in: path - name: failure_id - required: true - schema: - type: string - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFetchResponse' - description: OK - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - - appKeyAuth: [] - summary: Get a failure event - tags: - - DORA Metrics - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - dora_metrics_read - /api/v2/dora/incident: - post: - deprecated: true - description: >- - **Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` - instead. - - - Use this API endpoint to provide failure data for DORA metrics. - - - This is necessary for: - - - Change Failure Rate - - - Time to Restore - operationId: CreateDORAIncident - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - '202': - content: - application/json: - schema: - $ref: '#/components/schemas/DORAFailureResponse' - description: OK - but delayed due to incident - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad Request - '403': - $ref: '#/components/responses/NotAuthorizedResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - summary: Send an incident event for DORA Metrics - tags: - - DORA Metrics - x-codegen-request-body-name: body - /api/v2/workflows: - post: - description: >- - Create a new workflow, returning the workflow ID. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateWorkflow - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/CreateWorkflowRequest' - required: true - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/CreateWorkflowResponse' - description: Successfully created a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Create a Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_write - /api/v2/workflows/{workflow_id}: - delete: - description: >- - Delete a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: DeleteWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' - responses: - '204': - description: Successfully deleted a workflow. - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Delete an existing Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_write - get: - description: >- - Get a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/GetWorkflowResponse' - description: Successfully got a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Get an existing Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_read - patch: - description: >- - Update a workflow by ID. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: UpdateWorkflow - parameters: - - $ref: '#/components/parameters/WorkflowId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateWorkflowRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateWorkflowResponse' - description: Successfully updated a workflow. - '400': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Bad request - '403': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Forbidden - '404': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Not found - '429': - content: - application/json: - schema: - $ref: '#/components/schemas/JSONAPIErrorResponse' - description: Too many requests - summary: Update an existing Workflow - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_write - /api/v2/workflows/{workflow_id}/instances: - get: - description: >- - List all instances of a given workflow. This API requires a [registered - application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: ListWorkflowInstances - parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/PageSize' - - $ref: '#/components/parameters/PageNumber' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorkflowListInstancesResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_read - summary: List workflow instances - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_read - post: - description: >- - Execute the given workflow. This API requires a [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CreateWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/WorkflowInstanceCreateRequest' - required: true - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorkflowInstanceCreateResponse' - description: Created - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_run - summary: Execute a workflow - tags: - - Workflow Automation - x-codegen-request-body-name: body - x-permission: - operator: OR - permissions: - - workflows_run - /api/v2/workflows/{workflow_id}/instances/{instance_id}: - get: - description: >- - Get a specific execution of a given workflow. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: GetWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/InstanceId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorklflowGetInstanceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - security: - - apiKeyAuth: [] - appKeyAuth: [] - - AuthZ: - - workflows_read - summary: Get a workflow instance - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_read - /api/v2/workflows/{workflow_id}/instances/{instance_id}/cancel: - put: - description: >- - Cancels a specific execution of a given workflow. This API requires a - [registered application - key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - Alternatively, you can configure these permissions [in the - UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - operationId: CancelWorkflowInstance - parameters: - - $ref: '#/components/parameters/WorkflowId' - - $ref: '#/components/parameters/InstanceId' - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/WorklflowCancelInstanceResponse' - description: OK - '400': - $ref: '#/components/responses/BadRequestResponse' - '403': - $ref: '#/components/responses/ForbiddenResponse' - '404': - $ref: '#/components/responses/NotFoundResponse' - '429': - $ref: '#/components/responses/TooManyRequestsResponse' - summary: Cancel a workflow instance - tags: - - Workflow Automation - x-permission: - operator: OR - permissions: - - workflows_run -components: - schemas: - CIAppCreatePipelineEventRequest: - description: Request object. - properties: - data: - $ref: >- - #/components/schemas/CIAppCreatePipelineEventRequestDataSingleOrArray - type: object - HTTPCIAppErrors: - description: Errors occurred. - properties: - errors: - description: Structured errors. - items: - $ref: '#/components/schemas/HTTPCIAppError' - type: array - type: object - CIAppPipelinesAggregateRequest: - description: >- - The object sent with the request to retrieve aggregation buckets of - pipeline events from your organization. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/CIAppCompute' - type: array - filter: - $ref: '#/components/schemas/CIAppPipelinesQueryFilter' - group_by: - description: The rules for the group-by. - items: - $ref: '#/components/schemas/CIAppPipelinesGroupBy' - type: array - options: - $ref: '#/components/schemas/CIAppQueryOptions' - type: object - CIAppPipelinesAnalyticsAggregateResponse: - description: The response object for the pipeline events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/CIAppPipelinesAggregationBucketsResponse' - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadata' - type: object - CIAppSort: - description: Sort parameters when querying events. - enum: - - timestamp - - '-timestamp' - type: string - x-enum-varnames: - - TIMESTAMP_ASCENDING - - TIMESTAMP_DESCENDING - CIAppPipelineEventsResponse: - description: >- - Response object with all pipeline events matching the request and - pagination information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/CIAppPipelineEvent' - type: array - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppPipelineEventsRequest: - description: The request for a pipelines search. - properties: - filter: - $ref: '#/components/schemas/CIAppPipelinesQueryFilter' - options: - $ref: '#/components/schemas/CIAppQueryOptions' - page: - $ref: '#/components/schemas/CIAppQueryPageOptions' - sort: - $ref: '#/components/schemas/CIAppSort' - type: object - CIAppTestsAggregateRequest: - description: >- - The object sent with the request to retrieve aggregation buckets of test - events from your organization. - properties: - compute: - description: >- - The list of metrics or timeseries to compute for the retrieved - buckets. - items: - $ref: '#/components/schemas/CIAppCompute' - type: array - filter: - $ref: '#/components/schemas/CIAppTestsQueryFilter' - group_by: - description: The rules for the group-by. - items: - $ref: '#/components/schemas/CIAppTestsGroupBy' - type: array - options: - $ref: '#/components/schemas/CIAppQueryOptions' - type: object - CIAppTestsAnalyticsAggregateResponse: - description: The response object for the test events aggregate API endpoint. - properties: - data: - $ref: '#/components/schemas/CIAppTestsAggregationBucketsResponse' - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppTestEventsResponse: - description: >- - Response object with all test events matching the request and pagination - information. - properties: - data: - description: Array of events matching the request. - items: - $ref: '#/components/schemas/CIAppTestEvent' - type: array - links: - $ref: '#/components/schemas/CIAppResponseLinks' - meta: - $ref: '#/components/schemas/CIAppResponseMetadataWithPagination' - type: object - CIAppTestEventsRequest: - description: The request for a tests search. - properties: - filter: - $ref: '#/components/schemas/CIAppTestsQueryFilter' - options: - $ref: '#/components/schemas/CIAppQueryOptions' - page: - $ref: '#/components/schemas/CIAppQueryPageOptions' - sort: - $ref: '#/components/schemas/CIAppSort' - type: object - DORADeploymentRequest: - description: Request to create a DORA deployment event. - properties: - data: - $ref: '#/components/schemas/DORADeploymentRequestData' - required: - - data - type: object - DORADeploymentResponse: - description: Response after receiving a DORA deployment event. - properties: - data: - $ref: '#/components/schemas/DORADeploymentResponseData' - required: - - data - type: object - JSONAPIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - items: - $ref: '#/components/schemas/JSONAPIErrorItem' - type: array - required: - - errors - type: object - DORAListDeploymentsRequest: - description: Request to get a list of deployments. - properties: - data: - $ref: '#/components/schemas/DORAListDeploymentsRequestData' - required: - - data - type: object - DORAListResponse: - description: Response for the DORA list endpoints. - properties: - data: - description: The list of DORA events. - items: - $ref: '#/components/schemas/DORAEvent' - type: array - type: object - DORAFetchResponse: - description: Response for the DORA fetch endpoints. - properties: - data: - $ref: '#/components/schemas/DORAEvent' - type: object - DORAFailureRequest: - description: Request to create a DORA failure event. - properties: - data: - $ref: '#/components/schemas/DORAFailureRequestData' - required: - - data - type: object - DORAFailureResponse: - description: Response after receiving a DORA failure event. - properties: - data: - $ref: '#/components/schemas/DORAFailureResponseData' - required: - - data - type: object - DORAListFailuresRequest: - description: Request to get a list of failures. - properties: - data: - $ref: '#/components/schemas/DORAListFailuresRequestData' - required: - - data - type: object - CreateWorkflowRequest: - description: A request object for creating a new workflow. - example: - data: - attributes: - description: A sample workflow. - name: Example Workflow - published: true - spec: - annotations: - - display: - bounds: - height: 150 - width: 300 - x: -375 - 'y': -0.5 - id: 99999999-9999-9999-9999-999999999999 - markdownTextAnnotation: - text: Example annotation. - connectionEnvs: - - connections: - - connectionId: 11111111-1111-1111-1111-111111111111 - label: INTEGRATION_DATADOG - env: default - handle: my-handle - inputSchema: - parameters: - - defaultValue: default - name: input - type: STRING - outputSchema: - parameters: - - name: output - type: ARRAY_OBJECT - value: '{{ Steps.Step1 }}' - steps: - - actionId: com.datadoghq.dd.monitor.listMonitors - connectionLabel: INTEGRATION_DATADOG - name: Step1 - outboundEdges: - - branchName: main - nextStepName: Step2 - parameters: - - name: tags - value: service:monitoring - - actionId: com.datadoghq.core.noop - name: Step2 - triggers: - - monitorTrigger: - rateLimit: - count: 1 - interval: 3600s - startStepNames: - - Step1 - - githubWebhookTrigger: {} - startStepNames: - - Step1 - tags: - - team:infra - - service:monitoring - - foo:bar - type: workflows - properties: - data: - $ref: '#/components/schemas/WorkflowData' - required: - - data - type: object - CreateWorkflowResponse: - description: The response object after creating a new workflow. - properties: - data: - $ref: '#/components/schemas/WorkflowData' - required: - - data - type: object - GetWorkflowResponse: - description: The response object after getting a workflow. - properties: - data: - $ref: '#/components/schemas/WorkflowData' - type: object - UpdateWorkflowRequest: - description: A request object for updating an existing workflow. - example: - data: - attributes: - description: A sample workflow. - name: Example Workflow - published: true - spec: - annotations: - - display: - bounds: - height: 150 - width: 300 - x: -375 - 'y': -0.5 - id: 99999999-9999-9999-9999-999999999999 - markdownTextAnnotation: - text: Example annotation. - connectionEnvs: - - connections: - - connectionId: 11111111-1111-1111-1111-111111111111 - label: INTEGRATION_DATADOG - env: default - handle: my-handle - inputSchema: - parameters: - - defaultValue: default - name: input - type: STRING - outputSchema: - parameters: - - name: output - type: ARRAY_OBJECT - value: '{{ Steps.Step1 }}' - steps: - - actionId: com.datadoghq.dd.monitor.listMonitors - connectionLabel: INTEGRATION_DATADOG - name: Step1 - outboundEdges: - - branchName: main - nextStepName: Step2 - parameters: - - name: tags - value: service:monitoring - - actionId: com.datadoghq.core.noop - name: Step2 - triggers: - - monitorTrigger: - rateLimit: - count: 1 - interval: 3600s - startStepNames: - - Step1 - - githubWebhookTrigger: {} - startStepNames: - - Step1 - tags: - - team:infra - - service:monitoring - - foo:bar - id: 22222222-2222-2222-2222-222222222222 - type: workflows - properties: - data: - $ref: '#/components/schemas/WorkflowDataUpdate' - required: - - data - type: object - UpdateWorkflowResponse: - description: The response object after updating a workflow. - properties: - data: - $ref: '#/components/schemas/WorkflowDataUpdate' - type: object - WorkflowListInstancesResponse: - additionalProperties: {} - description: Response returned when listing workflow instances. - properties: - data: - description: A list of workflow instances. - items: - $ref: '#/components/schemas/WorkflowInstanceListItem' - type: array - meta: - $ref: '#/components/schemas/WorkflowListInstancesResponseMeta' - type: object - WorkflowInstanceCreateRequest: - description: Request used to create a workflow instance. - properties: - meta: - $ref: '#/components/schemas/WorkflowInstanceCreateMeta' - type: object - WorkflowInstanceCreateResponse: - additionalProperties: {} - description: Response returned upon successful workflow instance creation. - properties: - data: - $ref: '#/components/schemas/WorkflowInstanceCreateResponseData' - type: object - WorklflowGetInstanceResponse: - additionalProperties: {} - description: The state of the given workflow instance. - properties: - data: - $ref: '#/components/schemas/WorklflowGetInstanceResponseData' - type: object - WorklflowCancelInstanceResponse: - description: Information about the canceled instance. - properties: - data: - $ref: '#/components/schemas/WorklflowCancelInstanceResponseData' - type: object - CIAppCreatePipelineEventRequestDataSingleOrArray: - description: Data of the pipeline events to create. - oneOf: - - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' - - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataArray' - HTTPCIAppError: - description: List of errors. - properties: - detail: - description: Error message. - example: Malformed payload - type: string - status: - description: Error code. - example: '400' - type: string - title: - description: Error title. - example: Bad Request - type: string - type: object - CIAppCompute: - description: A compute rule to compute metrics or timeseries. - properties: - aggregation: - $ref: '#/components/schemas/CIAppAggregationFunction' - interval: - description: |- - The time buckets' size (only used for type=timeseries) - Defaults to a resolution of 150 points. - example: 5m - type: string - metric: - description: The metric to use. - example: '@duration' - type: string - type: - $ref: '#/components/schemas/CIAppComputeType' - required: - - aggregation - type: object - CIAppPipelinesQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: >- - The minimum time for the requested events; supports date, math, and - regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the CI Visibility Explorer search syntax. - example: '@ci.provider.name:github AND @ci.status:error' - type: string - to: - default: now - description: >- - The maximum time for the requested events, supports date, math, and - regular timestamps (in milliseconds). - example: now - type: string - type: object - CIAppPipelinesGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@ci.status' - type: string - histogram: - $ref: '#/components/schemas/CIAppGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/CIAppGroupByMissing' - sort: - $ref: '#/components/schemas/CIAppAggregateSort' - total: - $ref: '#/components/schemas/CIAppGroupByTotal' - required: - - facet - type: object - CIAppQueryOptions: - description: >- - Global query options that are used during the query. - - Only supply timezone or time offset, not both. Otherwise, the query - fails. - properties: - time_offset: - description: The time offset (in seconds) to apply to the query. - format: int64 - type: integer - timezone: - default: UTC - description: >- - The timezone can be specified as GMT, UTC, an offset from UTC (like - UTC+1), or as a Timezone Database identifier (like - America/New_York). - example: GMT - type: string - type: object - CIAppPipelinesAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/CIAppPipelinesBucketResponse' - type: array - type: object - CIAppResponseLinks: - description: Links attributes. - properties: - next: - description: >- - Link for the next set of results. The request can also be made using - the - - POST endpoint. - example: >- - https://app.datadoghq.com/api/v2/ci/tests/events?filter[query]=foo&page[cursor]=eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - CIAppResponseMetadata: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/CIAppResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. - items: - $ref: '#/components/schemas/CIAppWarning' - type: array - type: object - APIErrorResponse: - description: API error response. - properties: - errors: - description: A list of errors. - example: - - Bad Request - items: - description: A list of items. - example: Bad Request - type: string - type: array - required: - - errors - type: object - CIAppPipelineEvent: - description: >- - Object description of a pipeline event after being processed and stored - by Datadog. - properties: - attributes: - $ref: '#/components/schemas/CIAppPipelineEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/CIAppPipelineEventTypeName' - type: object - CIAppResponseMetadataWithPagination: - description: The metadata associated with a request. - properties: - elapsed: - description: The time elapsed in milliseconds. - example: 132 - format: int64 - type: integer - page: - $ref: '#/components/schemas/CIAppResponsePage' - request_id: - description: The identifier of the request. - example: MWlFUjVaWGZTTTZPYzM0VXp1OXU2d3xLSVpEMjZKQ0VKUTI0dEYtM3RSOFVR - type: string - status: - $ref: '#/components/schemas/CIAppResponseStatus' - warnings: - description: >- - A list of warnings (non-fatal errors) encountered. Partial results - may return if - - warnings are present in the response. - items: - $ref: '#/components/schemas/CIAppWarning' - type: array - type: object - CIAppQueryPageOptions: - description: Paging attributes for listing events. - properties: - cursor: - description: List following results with a cursor provided in the previous query. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - limit: - default: 10 - description: Maximum number of events in the response. - example: 25 - format: int32 - maximum: 1000 - type: integer - type: object - CIAppTestsQueryFilter: - description: The search and filter query settings. - properties: - from: - default: now-15m - description: >- - The minimum time for the requested events; supports date, math, and - regular timestamps (in milliseconds). - example: now-15m - type: string - query: - default: '*' - description: The search query following the CI Visibility Explorer search syntax. - example: '@test.service:web-ui-tests AND @test.status:fail' - type: string - to: - default: now - description: >- - The maximum time for the requested events, supports date, math, and - regular timestamps (in milliseconds). - example: now - type: string - type: object - CIAppTestsGroupBy: - description: A group-by rule. - properties: - facet: - description: The name of the facet to use (required). - example: '@test.service' - type: string - histogram: - $ref: '#/components/schemas/CIAppGroupByHistogram' - limit: - default: 10 - description: The maximum buckets to return for this group-by. - format: int64 - type: integer - missing: - $ref: '#/components/schemas/CIAppGroupByMissing' - sort: - $ref: '#/components/schemas/CIAppAggregateSort' - total: - $ref: '#/components/schemas/CIAppGroupByTotal' - required: - - facet - type: object - CIAppTestsAggregationBucketsResponse: - description: The query results. - properties: - buckets: - description: The list of matching buckets, one item per bucket. - items: - $ref: '#/components/schemas/CIAppTestsBucketResponse' - type: array - type: object - CIAppTestEvent: - description: >- - Object description of test event after being processed and stored by - Datadog. - properties: - attributes: - $ref: '#/components/schemas/CIAppEventAttributes' - id: - description: Unique ID of the event. - example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA - type: string - type: - $ref: '#/components/schemas/CIAppTestEventTypeName' - type: object - DORADeploymentRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORADeploymentRequestAttributes' - required: - - attributes - type: object - DORADeploymentResponseData: - description: The JSON:API data. - properties: - id: - description: The ID of the received DORA deployment event. - example: 4242fcdd31586083 - type: string - type: - $ref: '#/components/schemas/DORADeploymentType' - required: - - id - type: object - JSONAPIErrorItem: - description: API error response body - properties: - detail: - description: >- - A human-readable explanation specific to this occurrence of the - error. - example: Missing required attribute in body - type: string - meta: - additionalProperties: {} - description: Non-standard meta-information about the error - type: object - source: - $ref: '#/components/schemas/JSONAPIErrorItemSource' - status: - description: Status code of the response. - example: '400' - type: string - title: - description: Short human-readable summary of the error. - example: Bad Request - type: string - type: object - DORAListDeploymentsRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAListDeploymentsRequestAttributes' - type: - $ref: '#/components/schemas/DORAListDeploymentsRequestDataType' - required: - - attributes - type: object - DORAEvent: - description: A DORA event. - properties: - attributes: - description: The attributes of the event. - type: object - id: - description: The ID of the event. - type: string - type: - description: The type of the event. - type: string - type: object - DORAFailureRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAFailureRequestAttributes' - required: - - attributes - type: object - DORAFailureResponseData: - description: Response after receiving a DORA failure event. - properties: - id: - description: The ID of the received DORA failure event. - example: 4242fcdd31586083 - type: string - type: - $ref: '#/components/schemas/DORAFailureType' - required: - - id - type: object - DORAListFailuresRequestData: - description: The JSON:API data. - properties: - attributes: - $ref: '#/components/schemas/DORAListFailuresRequestAttributes' - type: - $ref: '#/components/schemas/DORAListFailuresRequestDataType' - required: - - attributes - type: object - WorkflowData: - description: Data related to the workflow. - properties: - attributes: - $ref: '#/components/schemas/WorkflowDataAttributes' - id: - description: The workflow identifier - readOnly: true - type: string - relationships: - $ref: '#/components/schemas/WorkflowDataRelationships' - type: - $ref: '#/components/schemas/WorkflowDataType' - required: - - type - - attributes - type: object - WorkflowDataUpdate: - description: Data related to the workflow being updated. - properties: - attributes: - $ref: '#/components/schemas/WorkflowDataUpdateAttributes' - id: - description: The workflow identifier - type: string - relationships: - $ref: '#/components/schemas/WorkflowDataRelationships' - type: - $ref: '#/components/schemas/WorkflowDataType' - required: - - type - - attributes - type: object - WorkflowInstanceListItem: - additionalProperties: {} - description: An item in the workflow instances list. - properties: - id: - description: The ID of the workflow instance - type: string - type: object - WorkflowListInstancesResponseMeta: - additionalProperties: {} - description: Metadata about the instances list - properties: - page: - $ref: '#/components/schemas/WorkflowListInstancesResponseMetaPage' - type: object - WorkflowInstanceCreateMeta: - description: Additional information for creating a workflow instance. - properties: - payload: - additionalProperties: {} - description: The input parameters to the workflow. - type: object - type: object - WorkflowInstanceCreateResponseData: - additionalProperties: {} - description: Data about the created workflow instance. - properties: - id: - description: >- - The ID of the workflow execution. It can be used to fetch the - execution status. - type: string - type: object - WorklflowGetInstanceResponseData: - additionalProperties: {} - description: The data of the instance response. - properties: - attributes: - $ref: '#/components/schemas/WorklflowGetInstanceResponseDataAttributes' - type: object - WorklflowCancelInstanceResponseData: - description: Data about the canceled instance. - properties: - id: - description: The id of the canceled instance - type: string - type: object - CIAppCreatePipelineEventRequestData: - description: Data of the pipeline event to create. - properties: - attributes: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestAttributes' - type: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestDataType' - type: object - CIAppCreatePipelineEventRequestDataArray: - description: Array of pipeline events to create in batch. - items: - $ref: '#/components/schemas/CIAppCreatePipelineEventRequestData' - type: array - CIAppAggregationFunction: - description: An aggregation function. - enum: - - count - - cardinality - - pc75 - - pc90 - - pc95 - - pc98 - - pc99 - - sum - - min - - max - - avg - - median - - latest - - earliest - - most_frequent - - delta - example: pc90 - type: string - x-enum-varnames: - - COUNT - - CARDINALITY - - PERCENTILE_75 - - PERCENTILE_90 - - PERCENTILE_95 - - PERCENTILE_98 - - PERCENTILE_99 - - SUM - - MIN - - MAX - - AVG - - MEDIAN - - LATEST - - EARLIEST - - MOST_FREQUENT - - DELTA - CIAppComputeType: - default: total - description: The type of compute. - enum: - - timeseries - - total - type: string - x-enum-varnames: - - TIMESERIES - - TOTAL - CIAppGroupByHistogram: - description: >- - Used to perform a histogram computation (only for measure facets). - - At most, 100 buckets are allowed, the number of buckets is `(max - - min)/interval`. - properties: - interval: - description: The bin size of the histogram buckets. - example: 10 - format: double - type: number - max: - description: |- - The maximum value for the measure used in the histogram - (values greater than this one are filtered out). - example: 100 - format: double - type: number - min: - description: |- - The minimum value for the measure used in the histogram - (values smaller than this one are filtered out). - example: 50 - format: double - type: number - required: - - interval - - min - - max - type: object - CIAppGroupByMissing: - description: The value to use for logs that don't have the facet used to group-by. - oneOf: - - $ref: '#/components/schemas/CIAppGroupByMissingString' - - $ref: '#/components/schemas/CIAppGroupByMissingNumber' - CIAppAggregateSort: - description: >- - A sort rule. The `aggregation` field is required when `type` is - `measure`. - example: - aggregation: count - order: asc - properties: - aggregation: - $ref: '#/components/schemas/CIAppAggregationFunction' - metric: - description: The metric to sort by (only used for `type=measure`). - example: '@duration' - type: string - order: - $ref: '#/components/schemas/CIAppSortOrder' - type: - $ref: '#/components/schemas/CIAppAggregateSortType' - type: object - CIAppGroupByTotal: - default: false - description: >- - A resulting object to put the given computes in over all the matching - records. - oneOf: - - $ref: '#/components/schemas/CIAppGroupByTotalBoolean' - - $ref: '#/components/schemas/CIAppGroupByTotalString' - - $ref: '#/components/schemas/CIAppGroupByTotalNumber' - CIAppPipelinesBucketResponse: - description: Bucket values. - properties: - by: - additionalProperties: - description: The values for each group-by. - description: The key-value pairs for each group-by. - example: - '@ci.provider.name': gitlab - '@ci.status': success - type: object - computes: - $ref: '#/components/schemas/CIAppComputes' - type: object - CIAppResponseStatus: - description: The status of the response. - enum: - - done - - timeout - example: done - type: string - x-enum-varnames: - - DONE - - TIMEOUT - CIAppWarning: - description: A warning message indicating something that went wrong with the query. - properties: - code: - description: A unique code for this type of warning. - example: unknown_index - type: string - detail: - description: A detailed explanation of this specific warning. - example: 'indexes: foo, bar' - type: string - title: - description: A short human-readable summary of the warning. - example: >- - One or several indexes are missing or invalid, results hold data - from the other indexes - type: string - type: object - CIAppPipelineEventAttributes: - description: JSON object containing all event attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from CI Visibility pipeline events. - example: - customAttribute: 123 - duration: 2345 - type: object - ci_level: - $ref: '#/components/schemas/CIAppPipelineLevel' - tags: - $ref: '#/components/schemas/TagsEventAttribute' - type: object - CIAppPipelineEventTypeName: - description: Type of the event. - enum: - - cipipeline - example: cipipeline - type: string - x-enum-varnames: - - CIPIPELINE - CIAppResponsePage: - description: Paging attributes. - properties: - after: - description: >- - The cursor to use to get the next results, if any. To make the next - request, use the same parameters with the addition of - `page[cursor]`. - example: >- - eyJzdGFydEF0IjoiQVFBQUFYS2tMS3pPbm40NGV3QUFBQUJCV0V0clRFdDZVbG8zY3pCRmNsbHJiVmxDWlEifQ== - type: string - type: object - CIAppTestsBucketResponse: - description: Bucket values. - properties: - by: - additionalProperties: - description: The values for each group-by. - description: The key-value pairs for each group-by. - example: - '@test.service': web-ui-tests - '@test.status': skip - type: object - computes: - $ref: '#/components/schemas/CIAppComputes' - type: object - CIAppEventAttributes: - description: JSON object containing all event attributes and their associated values. - properties: - attributes: - additionalProperties: {} - description: JSON object of attributes from CI Visibility test events. - example: - customAttribute: 123 - duration: 2345 - type: object - tags: - $ref: '#/components/schemas/TagsEventAttribute' - test_level: - $ref: '#/components/schemas/CIAppTestLevel' - type: object - CIAppTestEventTypeName: - description: Type of the event. - enum: - - citest - example: citest - type: string - x-enum-varnames: - - CITEST - DORADeploymentRequestAttributes: - description: Attributes to create a DORA deployment event. - properties: - custom_tags: - $ref: '#/components/schemas/DORACustomTags' - env: - description: Environment name to where the service was deployed. - example: staging - type: string - finished_at: - description: >- - Unix timestamp when the deployment finished. It must be in - nanoseconds, milliseconds, or seconds, and it should not be older - than 1 hour. - example: 1693491984000000000 - format: int64 - type: integer - git: - $ref: '#/components/schemas/DORAGitInfo' - id: - description: Deployment ID. - type: string - service: - description: Service name. - example: shopist - type: string - started_at: - description: >- - Unix timestamp when the deployment started. It must be in - nanoseconds, milliseconds, or seconds. - example: 1693491974000000000 - format: int64 - type: integer - team: - description: >- - Name of the team owning the deployed service. If not provided, this - is automatically populated with the team associated with the service - in the Service Catalog. - example: backend - type: string - version: - description: >- - Version to correlate with [APM Deployment - Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). - example: v1.12.07 - type: string - required: - - service - - started_at - - finished_at - type: object - DORADeploymentType: - default: dora_deployment - description: JSON:API type for DORA deployment events. - enum: - - dora_deployment - example: dora_deployment - type: string - x-enum-varnames: - - DORA_DEPLOYMENT - JSONAPIErrorItemSource: - description: References to the source of the error. - properties: - header: - description: >- - A string indicating the name of a single request header which caused - the error. - example: Authorization - type: string - parameter: - description: A string indicating which URI query parameter caused the error. - example: limit - type: string - pointer: - description: >- - A JSON pointer to the value in the request document that caused the - error. - example: /data/attributes/title - type: string - type: object - DORAListDeploymentsRequestAttributes: - description: Attributes to get a list of deployments. - properties: - from: - description: Minimum timestamp for requested events. - format: date-time - type: string - limit: - default: 10 - description: Maximum number of events in the response. - format: int32 - maximum: 1000 - type: integer - query: - description: Search query with event platform syntax. - type: string - sort: - description: Sort order (prefixed with `-` for descending). - type: string - to: - description: Maximum timestamp for requested events. - format: date-time - type: string - type: object - DORAListDeploymentsRequestDataType: - description: The definition of `DORAListDeploymentsRequestDataType` object. - enum: - - dora_deployments_list_request - type: string - x-enum-varnames: - - DORA_DEPLOYMENTS_LIST_REQUEST - DORAFailureRequestAttributes: - description: Attributes to create a DORA failure event. - properties: - custom_tags: - $ref: '#/components/schemas/DORACustomTags' - env: - description: Environment name that was impacted by the failure. - example: staging - type: string - finished_at: - description: >- - Unix timestamp when the failure finished. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491984000000000 - format: int64 - type: integer - git: - $ref: '#/components/schemas/DORAGitInfo' - id: - description: >- - Failure ID. Must have at least 16 characters. Required to update a - previously sent failure. - type: string - name: - description: Failure name. - example: Webserver is down failing all requests. - type: string - services: - description: >- - Service names impacted by the failure. If possible, use names - registered in the Service Catalog. Required when the team field is - not provided. - example: - - shopist - items: - type: string - type: array - severity: - description: Failure severity. - example: High - type: string - started_at: - description: >- - Unix timestamp when the failure started. It must be in nanoseconds, - milliseconds, or seconds. - example: 1693491974000000000 - format: int64 - type: integer - team: - description: >- - Name of the team owning the services impacted. If possible, use team - handles registered in Datadog. Required when the services field is - not provided. - example: backend - type: string - version: - description: >- - Version to correlate with [APM Deployment - Tracking](https://docs.datadoghq.com/tracing/services/deployment_tracking/). - example: v1.12.07 - type: string - required: - - started_at - type: object - DORAFailureType: - default: dora_failure - description: JSON:API type for DORA failure events. - enum: - - dora_failure - example: dora_failure - type: string - x-enum-varnames: - - DORA_FAILURE - DORAListFailuresRequestAttributes: - description: Attributes to get a list of failures. - properties: - from: - description: Minimum timestamp for requested events. - format: date-time - type: string - limit: - default: 10 - description: Maximum number of events in the response. - format: int32 - maximum: 1000 - type: integer - query: - description: Search query with event platform syntax. - type: string - sort: - description: Sort order (prefixed with `-` for descending). - type: string - to: - description: Maximum timestamp for requested events. - format: date-time - type: string - type: object - DORAListFailuresRequestDataType: - description: The definition of `DORAListFailuresRequestDataType` object. - enum: - - dora_failures_list_request - type: string - x-enum-varnames: - - DORA_FAILURES_LIST_REQUEST - WorkflowDataAttributes: - description: The definition of `WorkflowDataAttributes` object. - properties: - createdAt: - description: When the workflow was created. - format: date-time - readOnly: true - type: string - description: - description: Description of the workflow. - type: string - name: - description: Name of the workflow. - example: '' - type: string - published: - description: >- - Set the workflow to published or unpublished. Workflows in an - unpublished state will only be executable via manual runs. Automatic - triggers such as Schedule will not execute the workflow until it is - published. - type: boolean - spec: - $ref: '#/components/schemas/Spec' - tags: - description: Tags of the workflow. - items: - type: string - type: array - updatedAt: - description: When the workflow was last updated. - format: date-time - readOnly: true - type: string - webhookSecret: - description: >- - If a Webhook trigger is defined on this workflow, a webhookSecret is - required and should be provided here. - type: string - writeOnly: true - required: - - name - - spec - type: object - WorkflowDataRelationships: - description: The definition of `WorkflowDataRelationships` object. - properties: - creator: - $ref: '#/components/schemas/WorkflowUserRelationship' - owner: - $ref: '#/components/schemas/WorkflowUserRelationship' - readOnly: true - type: object - WorkflowDataType: - description: The definition of `WorkflowDataType` object. - enum: - - workflows - example: workflows - type: string - x-enum-varnames: - - WORKFLOWS - WorkflowDataUpdateAttributes: - description: The definition of `WorkflowDataUpdateAttributes` object. - properties: - createdAt: - description: When the workflow was created. - format: date-time - readOnly: true - type: string - description: - description: Description of the workflow. - type: string - name: - description: Name of the workflow. - type: string - published: - description: >- - Set the workflow to published or unpublished. Workflows in an - unpublished state will only be executable via manual runs. Automatic - triggers such as Schedule will not execute the workflow until it is - published. - type: boolean - spec: - $ref: '#/components/schemas/Spec' - tags: - description: Tags of the workflow. - items: - type: string - type: array - updatedAt: - description: When the workflow was last updated. - format: date-time - readOnly: true - type: string - webhookSecret: - description: >- - If a Webhook trigger is defined on this workflow, a webhookSecret is - required and should be provided here. - type: string - writeOnly: true - type: object - WorkflowListInstancesResponseMetaPage: - additionalProperties: {} - description: Page information for the list instances response. - properties: - totalCount: - description: The total count of items. - format: int64 - type: integer - type: object - WorklflowGetInstanceResponseDataAttributes: - additionalProperties: {} - description: The attributes of the instance response data. - properties: - id: - description: The id of the instance. - type: string - type: object - CIAppCreatePipelineEventRequestAttributes: - description: Attributes of the pipeline event to create. - properties: - env: - description: The Datadog environment. - type: string - provider_name: - description: The name of the CI provider. By default, this is "custom". - type: string - resource: - $ref: >- - #/components/schemas/CIAppCreatePipelineEventRequestAttributesResource - service: - description: >- - If the CI provider is SaaS, use this to differentiate between - instances. - type: string - required: - - resource - type: object - CIAppCreatePipelineEventRequestDataType: - default: cipipeline_resource_request - description: Type of the event. - enum: - - cipipeline_resource_request - example: cipipeline_resource_request - type: string - x-enum-varnames: - - CIPIPELINE_RESOURCE_REQUEST - CIAppGroupByMissingString: - description: The missing value to use if there is a string valued facet. - type: string - CIAppGroupByMissingNumber: - description: The missing value to use if there is a number valued facet. - format: double - type: number - CIAppSortOrder: - description: The order to use, ascending or descending. - enum: - - asc - - desc - example: asc - type: string - x-enum-varnames: - - ASCENDING - - DESCENDING - CIAppAggregateSortType: - default: alphabetical - description: The type of sorting algorithm. - enum: - - alphabetical - - measure - type: string - x-enum-varnames: - - ALPHABETICAL - - MEASURE - CIAppGroupByTotalBoolean: - description: If set to true, creates an additional bucket labeled "$facet_total". - type: boolean - CIAppGroupByTotalString: - description: A string to use as the key value for the total bucket. - type: string - CIAppGroupByTotalNumber: - description: A number to use as the key value for the total bucket. - format: double - type: number - CIAppComputes: - additionalProperties: - $ref: '#/components/schemas/CIAppAggregateBucketValue' - description: >- - A map of the metric name to value for regular compute, or a list of - values for a timeseries. - type: object - CIAppPipelineLevel: - description: Pipeline execution level. - enum: - - pipeline - - stage - - job - - step - - custom - example: pipeline - type: string - x-enum-varnames: - - PIPELINE - - STAGE - - JOB - - STEP - - CUSTOM - TagsEventAttribute: - description: Array of tags associated with your event. - example: - - team:A - items: - description: Tag associated with your event. - type: string - type: array - CIAppTestLevel: - description: Test run level. - enum: - - session - - module - - suite - - test - example: test - type: string - x-enum-varnames: - - SESSION - - MODULE - - SUITE - - TEST - DORACustomTags: - description: >- - A list of user-defined tags. The tags must follow the `key:value` - pattern. Up to 100 may be added per event. - example: - - language:java - - department:engineering - items: - description: Tags in the form of `key:value`. - type: string - nullable: true - type: array - DORAGitInfo: - description: Git info for DORA Metrics events. - properties: - commit_sha: - $ref: '#/components/schemas/GitCommitSHA' - repository_url: - $ref: '#/components/schemas/GitRepositoryURL' - required: - - repository_url - - commit_sha - type: object - Spec: - description: The spec defines what the workflow does. - properties: - annotations: - description: >- - A list of annotations used in the workflow. These are like sticky - notes for your workflow! - items: - $ref: '#/components/schemas/Annotation' - type: array - connectionEnvs: - description: A list of connections or connection groups used in the workflow. - items: - $ref: '#/components/schemas/ConnectionEnv' - type: array - handle: - description: >- - Unique identifier used to trigger workflows automatically in - Datadog. - type: string - inputSchema: - $ref: '#/components/schemas/InputSchema' - outputSchema: - $ref: '#/components/schemas/OutputSchema' - steps: - description: >- - A `Step` is a sub-component of a workflow. Each `Step` performs an - action. - items: - $ref: '#/components/schemas/Step' - type: array - triggers: - description: >- - The list of triggers that activate this workflow. At least one - trigger is required, and each trigger type may appear at most once. - items: - $ref: '#/components/schemas/Trigger' - type: array - type: object - WorkflowUserRelationship: - description: The definition of `WorkflowUserRelationship` object. - properties: - data: - $ref: '#/components/schemas/WorkflowUserRelationshipData' - type: object - CIAppCreatePipelineEventRequestAttributesResource: - description: Details of the CI pipeline event. - example: Details TBD - oneOf: - - $ref: '#/components/schemas/CIAppPipelineEventPipeline' - - $ref: '#/components/schemas/CIAppPipelineEventStage' - - $ref: '#/components/schemas/CIAppPipelineEventJob' - - $ref: '#/components/schemas/CIAppPipelineEventStep' - CIAppAggregateBucketValue: - description: A bucket value, can either be a timeseries or a single value. - oneOf: - - $ref: '#/components/schemas/CIAppAggregateBucketValueSingleString' - - $ref: '#/components/schemas/CIAppAggregateBucketValueSingleNumber' - - $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseries' - GitCommitSHA: - description: Git Commit SHA. - example: 66adc9350f2cc9b250b69abddab733dd55e1a588 - pattern: ^[a-fA-F0-9]{40,}$ - type: string - GitRepositoryURL: - description: Git Repository URL - example: https://github.com/organization/example-repository - type: string - Annotation: - description: >- - A list of annotations used in the workflow. These are like sticky notes - for your workflow! - properties: - display: - $ref: '#/components/schemas/AnnotationDisplay' - id: - description: The `Annotation` `id`. - example: '' - type: string - markdownTextAnnotation: - $ref: '#/components/schemas/AnnotationMarkdownTextAnnotation' - required: - - id - - display - - markdownTextAnnotation - type: object - ConnectionEnv: - description: A list of connections or connection groups used in the workflow. - properties: - connectionGroups: - description: The `ConnectionEnv` `connectionGroups`. - items: - $ref: '#/components/schemas/ConnectionGroup' - type: array - connections: - description: The `ConnectionEnv` `connections`. - items: - $ref: '#/components/schemas/Connection' - type: array - env: - $ref: '#/components/schemas/ConnectionEnvEnv' - required: - - env - type: object - InputSchema: - description: >- - A list of input parameters for the workflow. These can be used as - dynamic runtime values in your workflow. - properties: - parameters: - description: The `InputSchema` `parameters`. - items: - $ref: '#/components/schemas/InputSchemaParameters' - type: array - type: object - OutputSchema: - description: A list of output parameters for the workflow. - properties: - parameters: - description: The `OutputSchema` `parameters`. - items: - $ref: '#/components/schemas/OutputSchemaParameters' - type: array - type: object - Step: - description: A Step is a sub-component of a workflow. Each Step performs an action. - properties: - actionId: - description: The unique identifier of an action. - example: '' - type: string - completionGate: - $ref: '#/components/schemas/CompletionGate' - connectionLabel: - description: The unique identifier of a connection defined in the spec. - type: string - display: - $ref: '#/components/schemas/StepDisplay' - errorHandlers: - description: The `Step` `errorHandlers`. - items: - $ref: '#/components/schemas/ErrorHandler' - type: array - name: - description: Name of the step. - example: '' - type: string - outboundEdges: - description: A list of subsequent actions to run. - items: - $ref: '#/components/schemas/OutboundEdge' - type: array - parameters: - description: A list of inputs for an action. - items: - $ref: '#/components/schemas/Parameter' - type: array - readinessGate: - $ref: '#/components/schemas/ReadinessGate' - required: - - name - - actionId - type: object - Trigger: - description: One of the triggers that can start the execution of a workflow. - oneOf: - - $ref: '#/components/schemas/APITriggerWrapper' - - $ref: '#/components/schemas/AppTriggerWrapper' - - $ref: '#/components/schemas/CaseTriggerWrapper' - - $ref: '#/components/schemas/ChangeEventTriggerWrapper' - - $ref: '#/components/schemas/DatabaseMonitoringTriggerWrapper' - - $ref: '#/components/schemas/DashboardTriggerWrapper' - - $ref: '#/components/schemas/GithubWebhookTriggerWrapper' - - $ref: '#/components/schemas/IncidentTriggerWrapper' - - $ref: '#/components/schemas/MonitorTriggerWrapper' - - $ref: '#/components/schemas/NotebookTriggerWrapper' - - $ref: '#/components/schemas/ScheduleTriggerWrapper' - - $ref: '#/components/schemas/SecurityTriggerWrapper' - - $ref: '#/components/schemas/SelfServiceTriggerWrapper' - - $ref: '#/components/schemas/SlackTriggerWrapper' - - $ref: '#/components/schemas/SoftwareCatalogTriggerWrapper' - - $ref: '#/components/schemas/WorkflowTriggerWrapper' - WorkflowUserRelationshipData: - description: The definition of `WorkflowUserRelationshipData` object. - properties: - id: - description: The user identifier - example: '' - type: string - type: - $ref: '#/components/schemas/WorkflowUserRelationshipType' - required: - - type - - id - type: object - CIAppPipelineEventPipeline: - description: Details of the top level pipeline, build, or workflow of your CI. - oneOf: - - $ref: '#/components/schemas/CIAppPipelineEventFinishedPipeline' - - $ref: '#/components/schemas/CIAppPipelineEventInProgressPipeline' - CIAppPipelineEventStage: - description: Details of a CI stage. - properties: - dependencies: - description: A list of stage IDs that this stage depends on. - example: - - f7e6a006-a029-46c3-b0cc-742c9d7d363b - - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe - items: - description: A list of stage IDs. - type: string - nullable: true - type: array - end: - description: Time when the stage run finished. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - id: - description: >- - UUID for the stage. It has to be unique at least in the pipeline - scope. - example: 562bdbbb-7cab-48c8-851c-b24ca14628bf - type: string - level: - $ref: '#/components/schemas/CIAppPipelineEventStageLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: The name for the stage. - example: build - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - pipeline_name: - description: The parent pipeline name. - example: Build - type: string - pipeline_unique_id: - description: The parent pipeline UUID. - example: 76b572af-a078-42b2-a08a-cc28f98b944f - type: string - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - start: - description: >- - Time when the stage run started (it should not include any queue - time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventStageStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status - type: object - CIAppPipelineEventJob: - description: Details of a CI job. - properties: - dependencies: - description: A list of job IDs that this job depends on. - example: - - f7e6a006-a029-46c3-b0cc-742c9d7d363b - - c8a69849-3c3b-4721-8b33-3e8ec2df1ebe - items: - description: A list of job IDs. - type: string - nullable: true - type: array - end: - description: Time when the job run finished. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - id: - description: >- - The UUID for the job. It has to be unique within each pipeline - execution. - example: c865bad4-de82-44b8-ade7-2c987528eb54 - type: string - level: - $ref: '#/components/schemas/CIAppPipelineEventJobLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: The name for the job. - example: test - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - pipeline_name: - description: The parent pipeline name. - example: Build - type: string - pipeline_unique_id: - description: The parent pipeline UUID. - example: 76b572af-a078-42b2-a08a-cc28f98b944f - type: string - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - stage_id: - description: The parent stage UUID (if applicable). - nullable: true - type: string - stage_name: - description: The parent stage name (if applicable). - nullable: true - type: string - start: - description: >- - Time when the job run instance started (it should not include any - queue time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventJobStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - url: - description: The URL to look at the job in the CI provider UI. - example: https://ci-platform.com/job/your-job-name/build/123 - type: string - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status - - url - type: object - CIAppPipelineEventStep: - description: Details of a CI step. - properties: - end: - description: Time when the step run finished. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - id: - description: >- - UUID for the step. It has to be unique within each pipeline - execution. - example: c2d517a8-4f3a-4b41-b4ae-69df0c864c79 - type: string - job_id: - description: The parent job UUID (if applicable). - nullable: true - type: string - job_name: - description: The parent job name (if applicable). - nullable: true - type: string - level: - $ref: '#/components/schemas/CIAppPipelineEventStepLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: The name for the step. - example: test-server - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - pipeline_name: - description: The parent pipeline name. - example: Build - type: string - pipeline_unique_id: - description: The parent pipeline UUID. - example: 76b572af-a078-42b2-a08a-cc28f98b944f - type: string - stage_id: - description: The parent stage UUID (if applicable). - nullable: true - type: string - stage_name: - description: The parent stage name (if applicable). - nullable: true - type: string - start: - description: Time when the step run started. The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventStepStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - url: - description: The URL to look at the step in the CI provider UI. - nullable: true - type: string - required: - - level - - id - - name - - pipeline_unique_id - - pipeline_name - - start - - end - - status - type: object - CIAppAggregateBucketValueSingleString: - description: A single string value. - type: string - CIAppAggregateBucketValueSingleNumber: - description: A single number value. - format: double - type: number - CIAppAggregateBucketValueTimeseries: - description: A timeseries array. - items: - $ref: '#/components/schemas/CIAppAggregateBucketValueTimeseriesPoint' - type: array - x-generate-alias-as-model: true - AnnotationDisplay: - description: The definition of `AnnotationDisplay` object. - properties: - bounds: - $ref: '#/components/schemas/AnnotationDisplayBounds' - type: object - AnnotationMarkdownTextAnnotation: - description: The definition of `AnnotationMarkdownTextAnnotation` object. - properties: - text: - description: The `markdownTextAnnotation` `text`. - type: string - type: object - ConnectionGroup: - description: The definition of `ConnectionGroup` object. - properties: - connectionGroupId: - description: The `ConnectionGroup` `connectionGroupId`. - example: '' - type: string - label: - description: The `ConnectionGroup` `label`. - example: '' - type: string - tags: - description: The `ConnectionGroup` `tags`. - example: - - '' - items: - type: string - type: array - required: - - connectionGroupId - - label - - tags - type: object - Connection: - description: The definition of `Connection` object. - properties: - connectionId: - description: The `Connection` `connectionId`. - example: '' - type: string - label: - description: The `Connection` `label`. - example: '' - type: string - required: - - connectionId - - label - type: object - ConnectionEnvEnv: - description: The definition of `ConnectionEnvEnv` object. - enum: - - default - example: default - type: string - x-enum-varnames: - - DEFAULT - InputSchemaParameters: - description: The definition of `InputSchemaParameters` object. - properties: - defaultValue: - description: The `InputSchemaParameters` `defaultValue`. - description: - description: The `InputSchemaParameters` `description`. - type: string - label: - description: The `InputSchemaParameters` `label`. - type: string - name: - description: The `InputSchemaParameters` `name`. - example: '' - type: string - type: - $ref: '#/components/schemas/InputSchemaParametersType' - required: - - name - - type - type: object - OutputSchemaParameters: - description: The definition of `OutputSchemaParameters` object. - properties: - defaultValue: - description: The `OutputSchemaParameters` `defaultValue`. - description: - description: The `OutputSchemaParameters` `description`. - type: string - label: - description: The `OutputSchemaParameters` `label`. - type: string - name: - description: The `OutputSchemaParameters` `name`. - example: '' - type: string - type: - $ref: '#/components/schemas/OutputSchemaParametersType' - value: - description: The `OutputSchemaParameters` `value`. - required: - - name - - type - type: object - CompletionGate: - description: Used to create conditions before running subsequent actions. - properties: - completionCondition: - $ref: '#/components/schemas/CompletionCondition' - retryStrategy: - $ref: '#/components/schemas/RetryStrategy' - required: - - completionCondition - - retryStrategy - type: object - StepDisplay: - description: The definition of `StepDisplay` object. - properties: - bounds: - $ref: '#/components/schemas/StepDisplayBounds' - type: object - ErrorHandler: - description: Used to handle errors in an action. - properties: - fallbackStepName: - description: The `ErrorHandler` `fallbackStepName`. - example: '' - type: string - retryStrategy: - $ref: '#/components/schemas/RetryStrategy' - required: - - retryStrategy - - fallbackStepName - type: object - OutboundEdge: - description: The definition of `OutboundEdge` object. - properties: - branchName: - description: The `OutboundEdge` `branchName`. - example: '' - type: string - nextStepName: - description: The `OutboundEdge` `nextStepName`. - example: '' - type: string - required: - - nextStepName - - branchName - type: object - Parameter: - description: The definition of `Parameter` object. - properties: - name: - description: The `Parameter` `name`. - example: '' - type: string - value: - description: The `Parameter` `value`. - required: - - name - - value - type: object - ReadinessGate: - description: Used to merge multiple branches into a single branch. - properties: - thresholdType: - $ref: '#/components/schemas/ReadinessGateThresholdType' - required: - - thresholdType - type: object - APITriggerWrapper: - description: Schema for an API-based trigger. - properties: - apiTrigger: - $ref: '#/components/schemas/APITrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - apiTrigger - type: object - AppTriggerWrapper: - description: Schema for an App-based trigger. - properties: - appTrigger: - description: Trigger a workflow from an App. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - appTrigger - type: object - CaseTriggerWrapper: - description: Schema for a Case-based trigger. - properties: - caseTrigger: - $ref: '#/components/schemas/CaseTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - caseTrigger - type: object - ChangeEventTriggerWrapper: - description: Schema for a Change Event-based trigger. - properties: - changeEventTrigger: - description: Trigger a workflow from a Change Event. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - changeEventTrigger - type: object - DatabaseMonitoringTriggerWrapper: - description: Schema for a Database Monitoring-based trigger. - properties: - databaseMonitoringTrigger: - description: Trigger a workflow from Database Monitoring. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - databaseMonitoringTrigger - type: object - DashboardTriggerWrapper: - description: Schema for a Dashboard-based trigger. - properties: - dashboardTrigger: - description: Trigger a workflow from a Dashboard. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - dashboardTrigger - type: object - GithubWebhookTriggerWrapper: - description: Schema for a GitHub webhook-based trigger. - properties: - githubWebhookTrigger: - $ref: '#/components/schemas/GithubWebhookTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - githubWebhookTrigger - type: object - IncidentTriggerWrapper: - description: Schema for an Incident-based trigger. - properties: - incidentTrigger: - $ref: '#/components/schemas/IncidentTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - incidentTrigger - type: object - MonitorTriggerWrapper: - description: Schema for a Monitor-based trigger. - properties: - monitorTrigger: - $ref: '#/components/schemas/MonitorTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - monitorTrigger - type: object - NotebookTriggerWrapper: - description: Schema for a Notebook-based trigger. - properties: - notebookTrigger: - description: Trigger a workflow from a Notebook. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - notebookTrigger - type: object - ScheduleTriggerWrapper: - description: Schema for a Schedule-based trigger. - properties: - scheduleTrigger: - $ref: '#/components/schemas/ScheduleTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - scheduleTrigger - type: object - SecurityTriggerWrapper: - description: Schema for a Security-based trigger. - properties: - securityTrigger: - $ref: '#/components/schemas/SecurityTrigger' - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - securityTrigger - type: object - SelfServiceTriggerWrapper: - description: Schema for a Self Service-based trigger. - properties: - selfServiceTrigger: - description: Trigger a workflow from Self Service. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - selfServiceTrigger - type: object - SlackTriggerWrapper: - description: Schema for a Slack-based trigger. - properties: - slackTrigger: - description: Trigger a workflow from Slack. The workflow must be published. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - slackTrigger - type: object - SoftwareCatalogTriggerWrapper: - description: Schema for a Software Catalog-based trigger. - properties: - softwareCatalogTrigger: - description: Trigger a workflow from Software Catalog. - type: object - startStepNames: - $ref: '#/components/schemas/StartStepNames' - required: - - softwareCatalogTrigger - type: object - WorkflowTriggerWrapper: - description: Schema for a Workflow-based trigger. - properties: - startStepNames: - $ref: '#/components/schemas/StartStepNames' - workflowTrigger: - description: >- - Trigger a workflow from the Datadog UI. Only required if no other - trigger exists. - type: object - required: - - workflowTrigger - type: object - WorkflowUserRelationshipType: - description: The definition of `WorkflowUserRelationshipType` object. - enum: - - users - example: users - type: string - x-enum-varnames: - - USERS - CIAppPipelineEventFinishedPipeline: - description: Details of a finished pipeline. - properties: - end: - description: >- - Time when the pipeline run finished. It cannot be older than 18 - hours in the past from the current time. The time format must be - RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - is_manual: - description: Whether or not the pipeline was triggered manually by the user. - example: false - nullable: true - type: boolean - is_resumed: - description: Whether or not the pipeline was resumed after being blocked. - example: false - nullable: true - type: boolean - level: - $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: >- - Name of the pipeline. All pipeline runs for the builds should have - the same name. - example: Deploy to AWS - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - parent_pipeline: - $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' - partial_retry: - description: >- - Whether or not the pipeline was a partial retry of a previous - attempt. A partial retry is one - - which only runs a subset of the original jobs. - example: false - type: boolean - pipeline_id: - description: >- - Any ID used in the provider to identify the pipeline run even if it - is not unique across retries. - - If the `pipeline_id` is unique, then both `unique_id` and - `pipeline_id` can be set to the same value. - example: '#023' - type: string - previous_attempt: - $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - start: - description: >- - Time when the pipeline run started (it should not include any queue - time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventPipelineStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - unique_id: - description: >- - UUID of the pipeline run. The ID has to be unique across retries and - pipelines, - - including partial retries. - example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 - type: string - required: - - level - - unique_id - - name - - url - - start - - end - - status - - partial_retry - type: object - CIAppPipelineEventInProgressPipeline: - description: Details of a running pipeline. - properties: - error: - $ref: '#/components/schemas/CIAppCIError' - git: - $ref: '#/components/schemas/CIAppGitInfo' - is_manual: - description: Whether or not the pipeline was triggered manually by the user. - example: false - nullable: true - type: boolean - is_resumed: - description: Whether or not the pipeline was resumed after being blocked. - example: false - nullable: true - type: boolean - level: - $ref: '#/components/schemas/CIAppPipelineEventPipelineLevel' - metrics: - $ref: '#/components/schemas/CIAppPipelineEventMetrics' - name: - description: >- - Name of the pipeline. All pipeline runs for the builds should have - the same name. - example: Deploy to AWS - type: string - node: - $ref: '#/components/schemas/CIAppHostInfo' - parameters: - $ref: '#/components/schemas/CIAppPipelineEventParameters' - parent_pipeline: - $ref: '#/components/schemas/CIAppPipelineEventParentPipeline' - partial_retry: - description: >- - Whether or not the pipeline was a partial retry of a previous - attempt. A partial retry is one - - which only runs a subset of the original jobs. - example: false - type: boolean - pipeline_id: - description: >- - Any ID used in the provider to identify the pipeline run even if it - is not unique across retries. - - If the `pipeline_id` is unique, then both `unique_id` and - `pipeline_id` can be set to the same value. - example: '#023' - type: string - previous_attempt: - $ref: '#/components/schemas/CIAppPipelineEventPreviousPipeline' - queue_time: - description: The queue time in milliseconds, if applicable. - example: 1004 - format: int64 - minimum: 0 - nullable: true - type: integer - start: - description: >- - Time when the pipeline run started (it should not include any queue - time). The time format must be RFC3339. - example: '2023-05-31T15:30:00Z' - format: date-time - type: string - status: - $ref: '#/components/schemas/CIAppPipelineEventPipelineInProgressStatus' - tags: - $ref: '#/components/schemas/CIAppPipelineEventTags' - unique_id: - description: >- - UUID of the pipeline run. The ID has to be the same as the finished - pipeline. - example: 3eacb6f3-ff04-4e10-8a9c-46e6d054024a - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://my-ci-provider.example/pipelines/my-pipeline/run/1 - type: string - required: - - level - - unique_id - - name - - url - - start - - status - - partial_retry - type: object - CIAppCIError: - description: Contains information of the CI error. - nullable: true - properties: - domain: - $ref: '#/components/schemas/CIAppCIErrorDomain' - message: - description: Error message. - maxLength: 5000 - nullable: true - type: string - stack: - description: The stack trace of the reported errors. - nullable: true - type: string - type: - description: Short description of the error type. - maxLength: 100 - nullable: true - type: string - type: object - CIAppGitInfo: - description: >- - If pipelines are triggered due to actions to a Git repository, then all - payloads must contain this. - - Note that either `tag` or `branch` has to be provided, but not both. - nullable: true - properties: - author_email: - description: The commit author email. - example: author@example.com - type: string - author_name: - description: The commit author name. - example: John Doe - nullable: true - type: string - author_time: - description: The commit author timestamp in RFC3339 format. - example: '2023-05-31T15:30:00Z' - nullable: true - type: string - branch: - description: The branch name (if a tag use the tag parameter). - example: feature-1 - nullable: true - type: string - commit_time: - description: The commit timestamp in RFC3339 format. - example: '2023-05-31T15:30:00Z' - nullable: true - type: string - committer_email: - description: The committer email. - example: committer@example.com - nullable: true - type: string - committer_name: - description: The committer name. - nullable: true - type: string - default_branch: - description: The Git repository's default branch. - example: main - nullable: true - type: string - message: - description: The commit message. - example: Instrumenting tests with CI Visibility. - nullable: true - type: string - repository_url: - description: The URL of the repository. - example: https://github.com/username/repository - type: string - sha: - description: The git commit SHA. - example: da39a3ee5e6b4b0d3255bfef95601890afd80709 - pattern: ^[a-fA-F0-9]{40}$ - type: string - tag: - description: The tag name (if a branch use the branch parameter). - example: v1.0.0 - nullable: true - type: string - required: - - repository_url - - sha - - author_email - type: object - CIAppPipelineEventStageLevel: - default: stage - description: Used to distinguish between pipelines, stages, jobs and steps. - enum: - - stage - example: stage - type: string - x-enum-varnames: - - STAGE - CIAppPipelineEventMetrics: - description: >- - A list of user-defined metrics. The metrics must follow the `key:value` - pattern and the value must be numeric. - example: - - bundle_size:370 - - build_time:50021 - items: - description: Metrics in the form of `key:value`. The value needs to be numeric. - type: string - nullable: true - type: array - CIAppHostInfo: - description: >- - Contains information of the host running the pipeline, stage, job, or - step. - nullable: true - properties: - hostname: - description: FQDN of the host. - example: www.example.com - type: string - labels: - description: A list of labels used to select or identify the node. - example: - - ubuntu-18.04 - - n2.large - items: - type: string - type: array - name: - description: Name for the host. - type: string - workspace: - description: The path where the code is checked out. - example: /home/workspace/code/my-repo - type: string - type: object - CIAppPipelineEventParameters: - additionalProperties: - type: string - description: >- - A map of key-value parameters or environment variables that were defined - for the pipeline. - example: - LOG_LEVEL: debug - nullable: true - type: object - CIAppPipelineEventStageStatus: - description: The final status of the stage. - enum: - - success - - error - - canceled - - skipped - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - CIAppPipelineEventTags: - description: >- - A list of user-defined tags. The tags must follow the `key:value` - pattern. - example: - - team:backend - - type:deployment - items: - description: Tags in the form of `key:value`. - type: string - nullable: true - type: array - CIAppPipelineEventJobLevel: - default: job - description: Used to distinguish between pipelines, stages, jobs, and steps. - enum: - - job - example: job - type: string - x-enum-varnames: - - JOB - CIAppPipelineEventJobStatus: - description: The final status of the job. - enum: - - success - - error - - canceled - - skipped - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - CIAppPipelineEventStepLevel: - default: step - description: Used to distinguish between pipelines, stages, jobs and steps. - enum: - - step - example: step - type: string - x-enum-varnames: - - STEP - CIAppPipelineEventStepStatus: - description: The final status of the step. - enum: - - success - - error - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - CIAppAggregateBucketValueTimeseriesPoint: - description: A timeseries point. - properties: - time: - description: The time value for this point. - example: '2020-06-08T11:55:00.123Z' - format: date-time - type: string - value: - description: The value for this point. - example: 19 - format: double - type: number - type: object - AnnotationDisplayBounds: - description: The definition of `AnnotationDisplayBounds` object. - properties: - height: - description: The `bounds` `height`. - format: double - type: number - width: - description: The `bounds` `width`. - format: double - type: number - x: - description: The `bounds` `x`. - format: double - type: number - 'y': - description: The `bounds` `y`. - format: double - type: number - type: object - InputSchemaParametersType: - description: The definition of `InputSchemaParametersType` object. - enum: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - example: STRING - type: string - x-enum-varnames: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - OutputSchemaParametersType: - description: The definition of `OutputSchemaParametersType` object. - enum: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - example: STRING - type: string - x-enum-varnames: - - STRING - - NUMBER - - BOOLEAN - - OBJECT - - ARRAY_STRING - - ARRAY_NUMBER - - ARRAY_BOOLEAN - - ARRAY_OBJECT - CompletionCondition: - description: The definition of `CompletionCondition` object. - properties: - operand1: - description: The `CompletionCondition` `operand1`. - operand2: - description: The `CompletionCondition` `operand2`. - operator: - $ref: '#/components/schemas/CompletionConditionOperator' - required: - - operand1 - - operator - type: object - RetryStrategy: - description: The definition of `RetryStrategy` object. - properties: - kind: - $ref: '#/components/schemas/RetryStrategyKind' - linear: - $ref: '#/components/schemas/RetryStrategyLinear' - required: - - kind - type: object - StepDisplayBounds: - description: The definition of `StepDisplayBounds` object. - properties: - x: - description: The `bounds` `x`. - format: double - type: number - 'y': - description: The `bounds` `y`. - format: double - type: number - type: object - ReadinessGateThresholdType: - description: The definition of `ReadinessGateThresholdType` object. - enum: - - ANY - - ALL - example: ANY - type: string - x-enum-varnames: - - ANY - - ALL - APITrigger: - description: Trigger a workflow from an API request. The workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - StartStepNames: - description: A list of steps that run first after a trigger fires. - example: - - '' - items: - description: The `StartStepNames` `items`. - type: string - type: array - CaseTrigger: - description: >- - Trigger a workflow from a Case. For automatic triggering a handle must - be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - GithubWebhookTrigger: - description: >- - Trigger a workflow from a GitHub webhook. To trigger a workflow from - GitHub, you must set a `webhookSecret`. In your GitHub Webhook Settings, - set the Payload URL to - "base_url"/api/v2/workflows/"workflow_id"/webhook?orgId="org_id", select - application/json for the content type, and be highly recommend enabling - SSL verification for security. The workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - IncidentTrigger: - description: >- - Trigger a workflow from an Incident. For automatic triggering a handle - must be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - MonitorTrigger: - description: >- - Trigger a workflow from a Monitor. For automatic triggering a handle - must be configured and the workflow must be published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - ScheduleTrigger: - description: Trigger a workflow from a Schedule. The workflow must be published. - properties: - rruleExpression: - description: Recurrence rule expression for scheduling. - example: '' - type: string - required: - - rruleExpression - type: object - SecurityTrigger: - description: >- - Trigger a workflow from a Security Signal or Finding. For automatic - triggering a handle must be configured and the workflow must be - published. - properties: - rateLimit: - $ref: '#/components/schemas/TriggerRateLimit' - type: object - CIAppPipelineEventPipelineLevel: - default: pipeline - description: Used to distinguish between pipelines, stages, jobs, and steps. - enum: - - pipeline - example: pipeline - type: string - x-enum-varnames: - - PIPELINE - CIAppPipelineEventParentPipeline: - description: >- - If the pipeline is triggered as child of another pipeline, this should - contain the details of the parent pipeline. - nullable: true - properties: - id: - description: UUID of a pipeline. - example: 93bfeb70-af47-424d-908a-948d3f08e37f - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://ci-platform.com/pipelines/123456789 - type: string - required: - - id - type: object - CIAppPipelineEventPreviousPipeline: - description: >- - If the pipeline is a retry, this should contain the details of the - previous attempt. - nullable: true - properties: - id: - description: UUID of a pipeline. - example: 93bfeb70-af47-424d-908a-948d3f08e37f - type: string - url: - description: The URL to look at the pipeline in the CI provider UI. - example: https://ci-platform.com/pipelines/123456789 - type: string - required: - - id - type: object - CIAppPipelineEventPipelineStatus: - description: The final status of the pipeline. - enum: - - success - - error - - canceled - - skipped - - blocked - example: success - type: string - x-enum-varnames: - - SUCCESS - - ERROR - - CANCELED - - SKIPPED - - BLOCKED - CIAppPipelineEventPipelineInProgressStatus: - description: The in progress status of the pipeline. - enum: - - running - example: running - type: string - x-enum-varnames: - - RUNNING - CIAppCIErrorDomain: - description: >- - Error category used to differentiate between issues related to the - developer or provider environments. - enum: - - provider - - user - - unknown - type: string - x-enum-varnames: - - PROVIDER - - USER - - UNKNOWN - CompletionConditionOperator: - description: The definition of `CompletionConditionOperator` object. - enum: - - OPERATOR_EQUAL - - OPERATOR_NOT_EQUAL - - OPERATOR_GREATER_THAN - - OPERATOR_LESS_THAN - - OPERATOR_GREATER_THAN_OR_EQUAL_TO - - OPERATOR_LESS_THAN_OR_EQUAL_TO - - OPERATOR_CONTAINS - - OPERATOR_DOES_NOT_CONTAIN - - OPERATOR_IS_NULL - - OPERATOR_IS_NOT_NULL - - OPERATOR_IS_EMPTY - - OPERATOR_IS_NOT_EMPTY - example: OPERATOR_EQUAL - type: string - x-enum-varnames: - - OPERATOR_EQUAL - - OPERATOR_NOT_EQUAL - - OPERATOR_GREATER_THAN - - OPERATOR_LESS_THAN - - OPERATOR_GREATER_THAN_OR_EQUAL_TO - - OPERATOR_LESS_THAN_OR_EQUAL_TO - - OPERATOR_CONTAINS - - OPERATOR_DOES_NOT_CONTAIN - - OPERATOR_IS_NULL - - OPERATOR_IS_NOT_NULL - - OPERATOR_IS_EMPTY - - OPERATOR_IS_NOT_EMPTY - RetryStrategyKind: - description: The definition of `RetryStrategyKind` object. - enum: - - RETRY_STRATEGY_LINEAR - example: RETRY_STRATEGY_LINEAR - type: string - x-enum-varnames: - - RETRY_STRATEGY_LINEAR - RetryStrategyLinear: - description: The definition of `RetryStrategyLinear` object. - properties: - interval: - description: >- - The `RetryStrategyLinear` `interval`. The expected format is the - number of seconds ending with an s. For example, 1 day is 86400s - example: '' - type: string - maxRetries: - description: The `RetryStrategyLinear` `maxRetries`. - example: 0 - format: double - type: number - required: - - interval - - maxRetries - type: object - TriggerRateLimit: - description: Defines a rate limit for a trigger. - properties: - count: - description: The `TriggerRateLimit` `count`. - format: int64 - type: integer - interval: - description: >- - The `TriggerRateLimit` `interval`. The expected format is the number - of seconds ending with an s. For example, 1 day is 86400s - type: string - type: object - responses: - BadRequestResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Bad Request - NotAuthorizedResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Authorized - TooManyRequestsResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Too many requests - ForbiddenResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Forbidden - NotFoundResponse: - content: - application/json: - schema: - $ref: '#/components/schemas/APIErrorResponse' - description: Not Found - parameters: - WorkflowId: - description: The ID of the workflow. - in: path - name: workflow_id - required: true - schema: - type: string - PageSize: - description: Size for a given page. The maximum allowed value is 100. - in: query - name: page[size] - required: false - schema: - default: 10 - example: 10 - format: int64 - type: integer - PageNumber: - description: Specific page number to return. - in: query - name: page[number] - required: false - schema: - default: 0 - example: 0 - format: int64 - type: integer - InstanceId: - description: The ID of the workflow instance. - in: path - name: instance_id - required: true - schema: - type: string -servers: - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: The regional site for Datadog customers. - enum: - - datadoghq.com - - us3.datadoghq.com - - us5.datadoghq.com - - ap1.datadoghq.com - - ap2.datadoghq.com - - datadoghq.eu - - ddog-gov.com - subdomain: - default: api - description: The subdomain where the API is deployed. - - url: '{protocol}://{name}' - variables: - name: - default: api.datadoghq.com - description: Full site DNS name. - protocol: - default: https - description: The protocol for accessing the API. - - url: https://{subdomain}.{site} - variables: - site: - default: datadoghq.com - description: Any Datadog deployment. - subdomain: - default: api - description: The subdomain where the API is deployed. diff --git a/tests/offline_validation.mjs b/tests/offline_validation.mjs new file mode 100644 index 0000000..0f3a28a --- /dev/null +++ b/tests/offline_validation.mjs @@ -0,0 +1,150 @@ +#!/usr/bin/env node + +// Quick offline validation of the generated provider against the local file +// registry - no network, no server. Runs SHOW SERVICES / SHOW RESOURCES / +// SHOW METHODS and DESCRIBE EXTENDED over representative resources and +// asserts the service split, the verb mapping conventions, the snake_case +// surface, the cursor pagination and LIMIT pushdown config, and the DD_SITE +// server variable. Exit 1 on any failure. +// +// Usage: node tests/offline_validation.mjs +// Binary resolution: $STACKQL, ./stackql(.exe), then PATH. + +import { spawn } from 'child_process'; +import fs from 'fs'; +import path from 'path'; +import { fileURLToPath } from 'url'; +import yaml from 'js-yaml'; + +const repoRoot = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..'); +const regPath = path.join(repoRoot, 'provider-dev', 'openapi').replace(/\\/g, '/'); +const registry = JSON.stringify({ url: `file://${regPath}`, localDocRoot: regPath, verifyConfig: { nopVerify: true } }); +const servicesDir = path.join(repoRoot, 'provider-dev', 'openapi', 'src', 'datadog', 'v00.00.00000', 'services'); + +function findBinary() { + if (process.env.STACKQL && fs.existsSync(process.env.STACKQL)) return process.env.STACKQL; + for (const name of ['stackql', 'stackql.exe']) { + const local = path.join(repoRoot, name); + if (fs.existsSync(local)) return local; + } + return 'stackql'; // PATH +} +const bin = findBinary(); + +function runSql(sql, envOverrides = {}) { + return new Promise((resolve) => { + const env = { ...process.env, ...envOverrides }; + for (const [k, v] of Object.entries(envOverrides)) if (v === undefined) delete env[k]; + const child = spawn(bin, [`--registry=${registry}`, 'exec', sql, '--output', 'json'], { cwd: repoRoot, env }); + let stdout = '', stderr = ''; + child.stdout.on('data', (d) => (stdout += d)); + child.stderr.on('data', (d) => (stderr += d)); + child.on('close', (code) => { + let rows = []; + try { rows = JSON.parse(stdout) ?? []; } catch { rows = []; } + resolve({ code, rows, stdout, stderr }); + }); + child.on('error', (err) => resolve({ code: -1, rows: [], stdout: '', stderr: String(err) })); + }); +} + +const results = []; +function check(name, cond, note = '') { + results.push({ name, pass: !!cond, note }); + console.log(` ${cond ? 'PASS' : 'FAIL'} ${name}${cond ? '' : ` [${String(note).slice(0, 200)}]`}`); +} + +const EXPECTED_SERVICES = ['actions', 'apm', 'catalog', 'cloud_costs', 'dashboards', 'digital_experience', 'fleet', 'infrastructure', + 'integrations', 'llm_observability', 'logs', 'metrics', 'monitoring', 'organization', 'remote_config', 'security', + 'service_management', 'software_delivery']; +// a representative subset per service - resources that must be present +const EXPECTED_RESOURCES = { + monitoring: ['monitors', 'monitor_search_results', 'downtimes_matches_placeholder'].slice(0, 2).concat(['synthetics_tests', 'synthetics_api_tests', 'synthetics_browser_tests', 'synthetics_private_locations', 'synthetics_global_variables', 'config_policies', 'notification_rules', 'service_checks']), + dashboards: ['dashboards', 'dashboard_lists', 'dashboard_list_items', 'powerpacks', 'notebooks', 'shared_dashboards', 'graph_snapshots'], + organization: ['users', 'roles', 'role_permissions', 'role_users', 'api_keys', 'application_keys', 'service_accounts', 'teams', 'team_memberships', 'audit_logs', 'orgs', 'ip_ranges', 'usage_summary', 'hourly_usage', 'api_key_validation', 'current_user'], + service_management: ['incidents', 'slos', 'slo_corrections', 'slo_search_results', 'downtimes', 'events', 'cases', 'on_call_escalation_policies', 'service_definitions'], + logs: ['logs', 'indexes', 'pipelines', 'archives', 'metrics', 'observability_pipelines', 'restriction_queries'], + metrics: ['metrics', 'active_metrics', 'metric_metadata', 'timeseries_query', 'tag_configurations', 'volumes'], + infrastructure: ['hosts', 'host_totals', 'host_tags', 'containers', 'processes', 'devices'], + integrations: ['aws_accounts', 'azure_accounts', 'gcp_accounts', 'webhooks', 'pagerduty_services', 'slack_channels', 'reference_tables'], + security: ['monitoring_rules', 'monitoring_signals', 'findings', 'security_findings', 'vulnerabilities', 'monitoring_suppressions'], + cloud_costs: ['budgets', 'aws_configs', 'azure_configs', 'gcp_configs', 'tag_pipeline_rulesets'], + fleet: ['agents', 'deployments', 'schedules'], + llm_observability: ['projects', 'prompts', 'experiments', 'datasets'] +}; + +console.log(`stackql: ${bin}`); +let r = await runSql('SHOW SERVICES IN datadog'); +check(`SHOW SERVICES (${EXPECTED_SERVICES.length})`, r.rows.length === EXPECTED_SERVICES.length && EXPECTED_SERVICES.every((s) => r.rows.some((x) => x.name === s)), r.stderr || JSON.stringify(r.rows.map((x) => x.name))); + +for (const [svc, expected] of Object.entries(EXPECTED_RESOURCES)) { + r = await runSql(`SHOW RESOURCES IN datadog.${svc}`); + const names = new Set(r.rows.map((x) => x.name)); + const missing = expected.filter((e) => !names.has(e) && e !== 'downtimes_matches_placeholder'); + check(`SHOW RESOURCES IN datadog.${svc} contains ${expected.length} representative resources (${r.rows.length} total)`, r.rows.length > 0 && missing.length === 0, r.stderr || `missing: ${missing.join(', ')}`); +} + +// monitors (v1): verbs and the snake_case surface +r = await runSql('SHOW METHODS IN datadog.monitoring.monitors'); +const byName = Object.fromEntries(r.rows.map((m) => [m.MethodName, m])); +check('monitoring.monitors verbs (list/get -> SELECT, create -> INSERT, update -> REPLACE, delete -> DELETE, validate -> EXEC)', + byName.list_monitors?.SQLVerb === 'SELECT' && byName.get_monitor?.SQLVerb === 'SELECT' && byName.create_monitor?.SQLVerb === 'INSERT' && byName.update_monitor?.SQLVerb === 'REPLACE' && byName.delete_monitor?.SQLVerb === 'DELETE' && byName.validate_monitor?.SQLVerb === 'EXEC', + JSON.stringify(Object.fromEntries(Object.entries(byName).map(([k, v]) => [k, v.SQLVerb])))); +check('monitoring.monitors.get_monitor requires monitor_id', String(byName.get_monitor?.RequiredParams || '').includes('monitor_id'), JSON.stringify(byName.get_monitor)); +r = await runSql('DESCRIBE EXTENDED datadog.monitoring.monitors'); +const monCols = r.rows.map((c) => c.name); +check('DESCRIBE monitoring.monitors has the v1 monitor columns (id, name, query, type, overall_state, tags)', ['id', 'name', 'query', 'type', 'overall_state', 'tags', 'options'].every((c) => monCols.includes(c)), JSON.stringify(monCols)); + +// users (v2 JSON:API): $.data projection +r = await runSql('DESCRIBE EXTENDED datadog.organization.users'); +const userCols = r.rows.map((c) => c.name); +check('DESCRIBE organization.users projects the JSON:API row (id, type, attributes, relationships)', ['id', 'type', 'attributes', 'relationships'].every((c) => userCols.includes(c)) && !userCols.includes('data'), JSON.stringify(userCols)); + +// audit logs: cursor pagination + LIMIT pushdown land on the list method +r = await runSql('SHOW METHODS IN datadog.organization.audit_logs'); +check('organization.audit_logs list -> SELECT, search (POST) -> EXEC', r.rows.some((m) => m.MethodName === 'list_audit_logs' && m.SQLVerb === 'SELECT') && r.rows.some((m) => m.MethodName === 'search_audit_logs' && m.SQLVerb === 'EXEC'), JSON.stringify(r.rows)); + +// dashboards (v1): bare-array list unwrapped, single-array envelope keyed +r = await runSql('DESCRIBE EXTENDED datadog.dashboards.dashboards'); +const dashCols = r.rows.map((c) => c.name); +check('DESCRIBE dashboards.dashboards has id, title, layout_type, url', ['id', 'title', 'layout_type', 'url'].every((c) => dashCols.includes(c)), JSON.stringify(dashCols)); + +// hosts (v1): list + totals resources, mute/unmute as EXEC +r = await runSql('SHOW METHODS IN datadog.infrastructure.hosts'); +check('infrastructure.hosts list -> SELECT, mute/unmute -> EXEC', r.rows.some((m) => m.MethodName === 'list_hosts' && m.SQLVerb === 'SELECT') && r.rows.some((m) => m.MethodName === 'mute_host' && m.SQLVerb === 'EXEC') && r.rows.some((m) => m.MethodName === 'unmute_host' && m.SQLVerb === 'EXEC'), JSON.stringify(r.rows)); + +// roles: role_users carries both add and remove +r = await runSql('SHOW METHODS IN datadog.organization.role_users'); +check('organization.role_users: list -> SELECT, add -> INSERT, remove -> DELETE (RemoveUserFromRole corrected from role_permissions)', r.rows.some((m) => m.MethodName === 'list_role_users' && m.SQLVerb === 'SELECT') && r.rows.some((m) => m.MethodName === 'add_user_to_role' && m.SQLVerb === 'INSERT') && r.rows.some((m) => m.MethodName === 'remove_user_from_role' && m.SQLVerb === 'DELETE'), JSON.stringify(r.rows)); + +// spec-level assertions on the generated documents +let cursor = 0, top = 0, cased = 0, methods = 0, pathServers = 0, markers = 0; +const provider = yaml.load(fs.readFileSync(path.join(servicesDir, '..', 'provider.yaml'), 'utf8')); +check('provider.yaml: custom two-header auth (DD-API-KEY from DD_API_KEY, DD-APPLICATION-KEY from DD_APP_KEY) and snake_case_aliases', provider.config?.auth?.credentialsenvvar === 'DD_API_KEY' && provider.config?.auth?.successor?.credentialsenvvar === 'DD_APP_KEY' && provider.config?.snake_case_aliases === true, JSON.stringify(provider.config)); +check('provider.yaml lists the 18 services', Object.keys(provider.providerServices || {}).length === 18, JSON.stringify(Object.keys(provider.providerServices || {}))); +for (const f of fs.readdirSync(servicesDir).filter((x) => x.endsWith('.yaml'))) { + const doc = yaml.load(fs.readFileSync(path.join(servicesDir, f), 'utf8')); + const site = doc.servers?.[0]?.variables?.site; + check(`${f}: document server is https://api.{site:.+} with x-stackQL-envVar DD_SITE and default datadoghq.com`, doc.servers?.[0]?.url === 'https://api.{site:.+}' && site?.['x-stackQL-envVar'] === 'DD_SITE' && site?.default === 'datadoghq.com', JSON.stringify(doc.servers)); + for (const res of Object.values(doc.components?.['x-stackQL-resources'] || {})) { + for (const m of Object.values(res.methods || {})) { + methods++; + if (m.request?.nativeCasing === 'camel') cased++; + if (m.config?.pagination?.requestToken?.key === 'page[cursor]' && String(m.config.pagination.responseToken?.key).startsWith('$.meta.')) cursor++; + if (m.config?.queryParamPushdown?.top?.paramName) top++; + } + } + for (const item of Object.values(doc.paths || {})) { + if (item.servers) pathServers++; + for (const op of Object.values(item)) if (op && typeof op === 'object') for (const k of Object.keys(op)) if (k.startsWith('x-stackql-')) markers++; + } +} +check(`request.nativeCasing: camel on every method (${cased}/${methods})`, methods > 1500 && cased === methods, `${cased}/${methods}`); +check(`cursor pagination configured on the page[cursor] reads (${cursor} >= 15)`, cursor >= 15, String(cursor)); +check(`LIMIT pushdown (queryParamPushdown.top) on the limit-bearing reads (${top} >= 150)`, top >= 150, String(top)); +check(`path-level servers on the intake / On-Call / ip-ranges operations (${pathServers} == 9)`, pathServers === 9, String(pathServers)); +check('no x-stackql-* build markers left in the published specs', markers === 0, String(markers)); + +const failed = results.filter((x) => !x.pass); +console.log(`\n${results.length - failed.length}/${results.length} passed`); +if (failed.length) process.exit(1); diff --git a/tests/smoke_test.py b/tests/smoke_test.py new file mode 100644 index 0000000..e1bb8b3 --- /dev/null +++ b/tests/smoke_test.py @@ -0,0 +1,397 @@ +#!/usr/bin/env python3 +"""pystackql smoke test for the datadog stackql provider. + +Exercises the resources a Datadog user is most likely to touch first - the +same surface the Terraform provider documents in its examples - against a +real Datadog organization: + + read smokes users, roles, API keys, the current user, organizations, the + audit log (cursor pagination), IP ranges (a path-level server), + monitors, dashboards, hosts, SLOs, synthetics tests, log indexes + and active metrics + write smokes a monitor (INSERT / SELECT / REPLACE / EXEC validate / DELETE), + a dashboard (INSERT / SELECT / DELETE), a v2 downtime + (INSERT / SELECT / DELETE), a role (INSERT / SELECT / UPDATE / + DELETE) and an API key (INSERT / SELECT / UPDATE / DELETE) + +Cost: every object created here is free on any Datadog plan (monitors, +dashboards, downtimes, roles and keys are not metered), no data is ingested +(no metric, log or event submission, no synthetics runs), and the whole run +is well under 100 API calls - the budget is effectively zero. Everything +created is named `stackql-smoke-` and deleted within the run; the +script sweeps stackql-smoke-* breadcrumbs from previous runs first. + +Credentials and the target site come from the environment, exactly as the +provider itself reads them (make smoke sources .env): + + export DD_API_KEY=... # DD-API-KEY header + export DD_APP_KEY=... # DD-APPLICATION-KEY header + export DD_SITE=datadoghq.com # optional; resolves the {site} server + # variable (x-stackQL-envVar), e.g. + # datadoghq.eu, us5.datadoghq.com + +Never run this against a production organization you cannot afford to +create test monitors in. + +Usage: + pip install pystackql + python tests/smoke_test.py # local provider (provider-dev/openapi) + python tests/smoke_test.py --live # published provider from the stackql registry + python tests/smoke_test.py --read-only # read smokes only, no writes + python tests/smoke_test.py --cleanup-only # sweep stackql-smoke-* breadcrumbs and exit +""" + +from __future__ import annotations + +import argparse +import json +import os +import re +import sys +import time +from pathlib import Path + +BASE_DIR = Path(__file__).resolve().parents[1] +SMOKE_PREFIX = "stackql-smoke-" +INTER_REQUEST_DELAY_S = 0.3 # courtesy pacing; Datadog rate limits are per-endpoint and generous +# x-stackQL-envVar server variable resolution (DD_SITE) landed in stackql +# v0.10.601 (any-sdk v0.5.4-alpha01). pystackql manages its own stackql +# binary, so the harness upgrades it when older. +MIN_STACKQL_VERSION = (0, 10, 601) + +ERROR_RE = re.compile( + r"http response status code: [45]|over HTTP error|error assembling|" + r"cannot find matching operation|FindRoute|no matching operation|" + r"cannot find any viable servers|parser error|panic|sql packet preparation error|" + r"no request body for operation|schema unsuitable|Forbidden|Unauthorized", + re.I, +) +RATE_LIMIT_RE = re.compile(r"status code: 429|rate limit", re.I) + + +class Smoke: + def __init__(self, args: argparse.Namespace) -> None: + self.args = args + self.stamp = str(int(time.time()))[-6:] + self.name = f"{SMOKE_PREFIX}{self.stamp}" + self.results: list[tuple[str, str, str]] = [] + self.requests = 0 + + for var in ("DD_API_KEY", "DD_APP_KEY"): + if not os.environ.get(var): + sys.exit(f"{var} is not set - see the module docstring") + # a trailing CR from a CRLF .env silently breaks the auth headers + for var in ("DD_API_KEY", "DD_APP_KEY", "DD_SITE"): + if os.environ.get(var): + os.environ[var] = os.environ[var].strip() + + from pystackql import StackQL + + if args.live: + self.sq = StackQL(output="dict") + else: + reg_path = (BASE_DIR / "provider-dev" / "openapi").resolve() + reg_url = "file://" + reg_path.as_posix() + self.sq = StackQL(output="dict", custom_registry=reg_url) + # pystackql only serialises {"url": ...}; a local file registry + # additionally needs localDocRoot + nopVerify - patch the exec + # params in place (compact JSON, shell-quoted). + full = json.dumps( + {"url": reg_url, "localDocRoot": reg_path.as_posix(), "verifyConfig": {"nopVerify": True}}, + separators=(",", ":"), + ) + if sys.platform.startswith("win"): + quoted = '"' + full.replace('"', '\\"') + '"' + else: + import shlex + quoted = shlex.quote(full) + params = self.sq.local_query_executor.params + for i, p in enumerate(params): + if p == "--registry": + params[i + 1] = quoted + break + self.ensure_stackql_version() + if args.live: + # the published provider must be present in the registry cache + self.q("REGISTRY PULL datadog") + + def ensure_stackql_version(self) -> None: + def parse(v: str) -> tuple[int, ...]: + return tuple(int(x) for x in re.findall(r"\d+", str(v))[:3]) + + current = parse(getattr(self.sq, "version", "") or "") + if current and current >= MIN_STACKQL_VERSION: + return + print(f"stackql {self.sq.version} at {self.sq.bin_path} is older than " + f"v{'.'.join(map(str, MIN_STACKQL_VERSION))} (x-stackQL-envVar support) - upgrading pystackql's binary") + self.sq.upgrade(showprogress=False) + if parse(self.sq.version) < MIN_STACKQL_VERSION: + sys.exit(f"stackql {self.sq.version} is still too old after upgrade") + + # ------------------------------------------------------------------ core + def q(self, sql: str): + if self.requests: + time.sleep(INTER_REQUEST_DELAY_S) + self.requests += 1 + try: + head = sql.lstrip().upper() + if head.startswith(("SELECT", "SHOW", "DESCRIBE")) or "RETURNING" in head: + out = self.sq.execute(sql) + else: + out = self.sq.executeStmt(sql) + except Exception as exc: # noqa: BLE001 + return [], str(exc) + text = json.dumps(out, default=str) + if RATE_LIMIT_RE.search(text): + return out if isinstance(out, list) else [out], "RATE LIMITED (429): " + text + if ERROR_RE.search(text): + return out if isinstance(out, list) else [out], text + if isinstance(out, list) and out and isinstance(out[0], dict) and "error" in out[0]: + return out, text + return out if isinstance(out, list) else [out], None + + def step(self, name: str, sql: str, expect_rows: bool = False, contains: str | None = None): + rows, err = self.q(sql) + if err: + self.results.append((name, "FAIL", err[:200])) + print(f" FAIL {name} [{err[:140]}]") + return None + blob = json.dumps(rows, default=str) + if expect_rows and not rows: + self.results.append((name, "FAIL", "expected rows, got none")) + print(f" FAIL {name} [no rows]") + return None + if contains and contains not in blob: + self.results.append((name, "FAIL", f"'{contains}' not in result")) + print(f" FAIL {name} ['{contains}' not in {blob[:100]}]") + return None + self.results.append((name, "PASS", "")) + print(f" PASS {name}") + return rows + + def record(self, name: str, ok: bool, note: str = "") -> None: + self.results.append((name, "PASS" if ok else "FAIL", note)) + print(f" {'PASS' if ok else 'FAIL'} {name}{'' if ok else ' [' + note[:120] + ']'}") + + @staticmethod + def attr(row: dict, key: str): + attrs = row.get("attributes") + if isinstance(attrs, str): + try: + attrs = json.loads(attrs) + except ValueError: + return None + return (attrs or {}).get(key) + + # ------------------------------------------------------- breadcrumb sweep + def cleanup_breadcrumbs(self) -> None: + print("== breadcrumb sweep ==") + rows, err = self.q("SELECT id, name FROM datadog.monitoring.monitors") + if err: + print(f" WARN monitor sweep failed: {err[:120]}") + for r in rows or []: + if str(r.get("name", "")).startswith(SMOKE_PREFIX): + print(f" sweeping monitor {r['name']}") + self.q(f"DELETE FROM datadog.monitoring.monitors WHERE monitor_id = {r['id']}") + rows, err = self.q("SELECT id, title FROM datadog.dashboards.dashboards") + if err: + print(f" WARN dashboard sweep failed: {err[:120]}") + for r in rows or []: + if str(r.get("title", "")).startswith(SMOKE_PREFIX): + print(f" sweeping dashboard {r['title']}") + self.q(f"DELETE FROM datadog.dashboards.dashboards WHERE dashboard_id = '{r['id']}'") + rows, err = self.q("SELECT id, attributes FROM datadog.service_management.downtimes") + if err: + print(f" WARN downtime sweep failed: {err[:120]}") + for r in rows or []: + if str(self.attr(r, "message") or "").startswith(SMOKE_PREFIX) and self.attr(r, "status") != "canceled": + print(f" sweeping downtime {r['id']}") + self.q(f"DELETE FROM datadog.service_management.downtimes WHERE downtime_id = '{r['id']}'") + rows, err = self.q("SELECT id, attributes FROM datadog.organization.roles") + if err: + print(f" WARN role sweep failed: {err[:120]}") + for r in rows or []: + if str(self.attr(r, "name") or "").startswith(SMOKE_PREFIX): + print(f" sweeping role {self.attr(r, 'name')}") + self.q(f"DELETE FROM datadog.organization.roles WHERE role_id = '{r['id']}'") + rows, err = self.q("SELECT id, attributes FROM datadog.organization.api_keys") + if err: + print(f" WARN api key sweep failed: {err[:120]}") + for r in rows or []: + if str(self.attr(r, "name") or "").startswith(SMOKE_PREFIX): + print(f" sweeping api key {self.attr(r, 'name')}") + self.q(f"DELETE FROM datadog.organization.api_keys WHERE api_key_id = '{r['id']}'") + + # -------------------------------------------------------------- read path + def read_smokes(self) -> None: + print("== read smokes ==") + self.step("show services", "SHOW SERVICES IN datadog", expect_rows=True, contains="monitoring") + self.step("users (v2 JSON:API, $.data)", + "SELECT id, json_extract(attributes, '$.email') AS email, json_extract(attributes, '$.status') AS status FROM datadog.organization.users", + expect_rows=True) + self.step("current user", "SELECT id, json_extract(attributes, '$.email') AS email FROM datadog.organization.current_user", expect_rows=True) + self.step("roles", "SELECT id, json_extract(attributes, '$.name') AS name FROM datadog.organization.roles", expect_rows=True, contains="Datadog Admin Role") + self.step("api keys", "SELECT id, json_extract(attributes, '$.name') AS name FROM datadog.organization.api_keys", expect_rows=True) + self.step("application keys (current user)", "SELECT id, json_extract(attributes, '$.name') AS name FROM datadog.organization.current_user_application_keys") + self.step("audit log (cursor pagination, filter[from] pushed as a query param)", + "SELECT id, json_extract(attributes, '$.timestamp') AS ts FROM datadog.organization.audit_logs WHERE \"filter[from]\" = 'now-1h'") + self.step("ip ranges (path-level server ip-ranges.)", "SELECT version, modified FROM datadog.organization.ip_ranges", expect_rows=True) + self.step("monitors (v1 bare-array list)", "SELECT id, name, type, overall_state FROM datadog.monitoring.monitors") + self.step("dashboards (v1 single-array envelope)", "SELECT id, title, layout_type FROM datadog.dashboards.dashboards") + self.step("hosts (v1 $.host_list)", "SELECT host_name, up, last_reported_time FROM datadog.infrastructure.hosts") + self.step("host totals", "SELECT total_up, total_active FROM datadog.infrastructure.host_totals", expect_rows=True) + self.step("slos", "SELECT id, name, type FROM datadog.service_management.slos") + self.step("synthetics tests", "SELECT public_id, name, type, status FROM datadog.monitoring.synthetics_tests") + self.step("synthetics locations", "SELECT id, name FROM datadog.monitoring.synthetics_locations", expect_rows=True) + self.step("log indexes", "SELECT name, num_retention_days FROM datadog.logs.indexes") + self.step("active metrics (from is a required query param)", + f"SELECT metrics FROM datadog.metrics.active_metrics WHERE \"from\" = {int(time.time()) - 3600}", expect_rows=True) + self.step("usage summary (v1, month-scoped)", + f"SELECT date, infra_host_top99p, apm_host_top99p FROM datadog.organization.usage_summary WHERE start_month = '{time.strftime('%Y-%m')}'", expect_rows=True) + self.step("LIMIT pushdown (page[size]=2 on the users list)", + "SELECT id FROM datadog.organization.users LIMIT 2") + + # ------------------------------------------------------------- write path + def monitor_lifecycle(self) -> None: + name = self.name + print(f"== monitor lifecycle ({name}) ==") + self.step("monitor EXEC validate", + f"EXEC datadog.monitoring.monitors.validate_monitor @type = 'metric alert', @query = 'avg(last_5m):avg:system.cpu.user{{*}} > 90', @name = '{name}'") + rows = self.step("monitor INSERT (v1, naive body translate)", + f"INSERT INTO datadog.monitoring.monitors (name, type, query, message, tags) " + f"SELECT '{name}', 'metric alert', 'avg(last_5m):avg:system.cpu.user{{*}} > 90', 'stackql smoke test - safe to delete', '[\"smoke:stackql\"]'") + rows, err = self.q("SELECT id, name FROM datadog.monitoring.monitors") + mon = next((r for r in rows or [] if r.get("name") == name), None) + self.record("monitor visible after INSERT", mon is not None, err or "not found in list") + if not mon: + return + mid = mon["id"] + self.step("monitor get (WHERE monitor_id)", f"SELECT name, type, query FROM datadog.monitoring.monitors WHERE monitor_id = {mid}", expect_rows=True, contains=name) + self.step("monitor search (v1 search envelope $.monitors)", f"SELECT id, name FROM datadog.monitoring.monitor_search_results WHERE query = 'title:\"{name}\"'") + self.step("monitor REPLACE (v1 PUT)", + f"REPLACE datadog.monitoring.monitors SET name = '{name}', type = 'metric alert', query = 'avg(last_5m):avg:system.cpu.user{{*}} > 95', message = 'updated by stackql smoke' WHERE monitor_id = {mid}") + self.step("monitor reflects REPLACE", f"SELECT query FROM datadog.monitoring.monitors WHERE monitor_id = {mid}", expect_rows=True, contains="> 95") + self.step("monitor DELETE", f"DELETE FROM datadog.monitoring.monitors WHERE monitor_id = {mid}") + rows, err = self.q("SELECT id FROM datadog.monitoring.monitors") + self.record("monitor gone after DELETE", not err and all(str(r.get("id")) != str(mid) for r in rows), err or "") + + def dashboard_lifecycle(self) -> None: + name = self.name + print(f"== dashboard lifecycle ({name}) ==") + widgets = json.dumps([{"definition": {"type": "note", "content": "stackql smoke test - safe to delete"}}]) + self.step("dashboard INSERT (v1)", + f"INSERT INTO datadog.dashboards.dashboards (title, layout_type, widgets, description) " + f"SELECT '{name}', 'ordered', '{widgets}', 'stackql smoke test'") + rows, err = self.q("SELECT id, title FROM datadog.dashboards.dashboards") + dash = next((r for r in rows or [] if r.get("title") == name), None) + self.record("dashboard visible after INSERT", dash is not None, err or "not found in list") + if not dash: + return + did = dash["id"] + self.step("dashboard get", f"SELECT title, layout_type, widgets FROM datadog.dashboards.dashboards WHERE dashboard_id = '{did}'", expect_rows=True, contains="note") + self.step("dashboard DELETE", f"DELETE FROM datadog.dashboards.dashboards WHERE dashboard_id = '{did}'") + rows, err = self.q("SELECT id FROM datadog.dashboards.dashboards") + self.record("dashboard gone after DELETE", not err and all(r.get("id") != did for r in rows), err or "") + + def downtime_lifecycle(self) -> None: + name = self.name + print(f"== downtime lifecycle ({name}) ==") + start = int(time.time()) + 3600 + body = json.dumps({ + "type": "downtime", + "attributes": { + "message": f"{name} stackql smoke test - safe to delete", + "monitor_identifier": {"monitor_tags": ["smoke:stackql"]}, + "scope": "env:stackql-smoke", + "schedule": {"start": time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime(start)), + "end": time.strftime("%Y-%m-%dT%H:%M:%SZ", time.gmtime(start + 3600))}, + }, + }) + self.step("downtime INSERT (v2 JSON:API body as the data column)", + f"INSERT INTO datadog.service_management.downtimes (data) SELECT '{body}'") + rows, err = self.q("SELECT id, attributes FROM datadog.service_management.downtimes") + dt = next((r for r in rows or [] if str(self.attr(r, "message") or "").startswith(name)), None) + self.record("downtime visible after INSERT", dt is not None, err or "not found in list") + if not dt: + return + dtid = dt["id"] + self.step("downtime get", f"SELECT id, json_extract(attributes, '$.scope') AS scope FROM datadog.service_management.downtimes WHERE downtime_id = '{dtid}'", expect_rows=True, contains="env:stackql-smoke") + self.step("downtime DELETE (cancel)", f"DELETE FROM datadog.service_management.downtimes WHERE downtime_id = '{dtid}'") + + def role_lifecycle(self) -> None: + name = self.name + print(f"== role lifecycle ({name}) ==") + body = json.dumps({"type": "roles", "attributes": {"name": name}}) + self.step("role INSERT", f"INSERT INTO datadog.organization.roles (data) SELECT '{body}'") + rows, err = self.q("SELECT id, attributes FROM datadog.organization.roles") + role = next((r for r in rows or [] if self.attr(r, "name") == name), None) + self.record("role visible after INSERT", role is not None, err or "not found in list") + if not role: + return + rid = role["id"] + self.step("role get", f"SELECT id, json_extract(attributes, '$.name') AS name FROM datadog.organization.roles WHERE role_id = '{rid}'", expect_rows=True, contains=name) + upd = json.dumps({"id": rid, "type": "roles", "attributes": {"name": f"{name}-renamed"}}) + self.step("role UPDATE (PATCH)", f"UPDATE datadog.organization.roles SET data = '{upd}' WHERE role_id = '{rid}'") + self.step("role reflects UPDATE", f"SELECT json_extract(attributes, '$.name') AS name FROM datadog.organization.roles WHERE role_id = '{rid}'", expect_rows=True, contains=f"{name}-renamed") + self.step("role permissions (list)", f"SELECT id, json_extract(attributes, '$.name') AS name FROM datadog.organization.role_permissions WHERE role_id = '{rid}'") + self.step("role DELETE", f"DELETE FROM datadog.organization.roles WHERE role_id = '{rid}'") + rows, err = self.q("SELECT id FROM datadog.organization.roles") + self.record("role gone after DELETE", not err and all(r.get("id") != rid for r in rows), err or "") + + def api_key_lifecycle(self) -> None: + name = self.name + print(f"== API key lifecycle ({name}) ==") + body = json.dumps({"type": "api_keys", "attributes": {"name": name}}) + self.step("api key INSERT", f"INSERT INTO datadog.organization.api_keys (data) SELECT '{body}'") + rows, err = self.q("SELECT id, attributes FROM datadog.organization.api_keys") + key = next((r for r in rows or [] if self.attr(r, "name") == name), None) + self.record("api key visible after INSERT", key is not None, err or "not found in list") + if not key: + return + kid = key["id"] + upd = json.dumps({"id": kid, "type": "api_keys", "attributes": {"name": f"{name}-renamed"}}) + self.step("api key UPDATE (PATCH)", f"UPDATE datadog.organization.api_keys SET data = '{upd}' WHERE api_key_id = '{kid}'") + self.step("api key reflects UPDATE", f"SELECT json_extract(attributes, '$.name') AS name FROM datadog.organization.api_keys WHERE api_key_id = '{kid}'", expect_rows=True, contains=f"{name}-renamed") + self.step("api key DELETE", f"DELETE FROM datadog.organization.api_keys WHERE api_key_id = '{kid}'") + rows, err = self.q("SELECT id FROM datadog.organization.api_keys") + self.record("api key gone after DELETE", not err and all(r.get("id") != kid for r in rows), err or "") + + # ---------------------------------------------------------------- summary + def summary(self) -> int: + print("\n== summary ==") + counts = {"PASS": 0, "FAIL": 0} + for name, status, note in self.results: + counts[status] = counts.get(status, 0) + 1 + if status != "PASS": + print(f" {status:5s} {name} [{note[:110]}]") + target = "published provider (registry)" if self.args.live else "local provider (provider-dev/openapi)" + print(f" {counts['PASS']} passed, {counts['FAIL']} failed; {self.requests} statements against the {target}") + return 1 if counts["FAIL"] else 0 + + +def main() -> int: + ap = argparse.ArgumentParser(description="datadog provider smoke test") + ap.add_argument("--live", action="store_true", + help="run against the published datadog provider from the stackql registry instead of provider-dev/openapi") + ap.add_argument("--cleanup-only", action="store_true", help="sweep stackql-smoke-* objects and exit") + ap.add_argument("--read-only", action="store_true", help="read smokes only, no writes") + args = ap.parse_args() + + smoke = Smoke(args) + print(f"datadog smoke test target={'live' if args.live else 'local'} site={os.environ.get('DD_SITE') or 'datadoghq.com (default)'} " + f"name={smoke.name} stackql={smoke.sq.version}") + smoke.cleanup_breadcrumbs() + if args.cleanup_only: + return 0 + smoke.read_smokes() + if not args.read_only: + smoke.monitor_lifecycle() + smoke.dashboard_lifecycle() + smoke.downtime_lifecycle() + smoke.role_lifecycle() + smoke.api_key_lifecycle() + return smoke.summary() + + +if __name__ == "__main__": + sys.exit(main()) diff --git a/website/.gitignore b/website/.gitignore index b2d6de3..dc32d51 100644 --- a/website/.gitignore +++ b/website/.gitignore @@ -18,3 +18,6 @@ npm-debug.log* yarn-debug.log* yarn-error.log* + +# vendored shared docusaurus config (cloned at build time) +.shared-config diff --git a/website/docs/index.md b/website/docs/index.md index e4a7a43..ede6208 100644 --- a/website/docs/index.md +++ b/website/docs/index.md @@ -10,7 +10,7 @@ keywords: - cloud inventory description: Query, monitor, and manage Datadog resources using SQL custom_edit_url: null -image: /img/providers/datadog/stackql-datadog-provider-featured-image.png +image: /img/stackql-datadog-provider-featured-image.png id: 'provider-intro' --- @@ -20,55 +20,246 @@ Monitoring, alerting and reporting platform for cloud platforms and applications :::info[Provider Summary] -total services: __16__ -total resources: __187__ +total services: __18__ +total resources: __615__ ::: -See also: -[[` SHOW `]](https://stackql.io/docs/language-spec/show) [[` DESCRIBE `]](https://stackql.io/docs/language-spec/describe) [[` REGISTRY `]](https://stackql.io/docs/language-spec/registry) -* * * - -## Installation - -To pull the latest version of the `datadog` provider, run the following command: - -```bash -REGISTRY PULL datadog; -``` -> To view previous provider versions or to pull a specific provider version, see [here](https://stackql.io/docs/language-spec/registry). - -## Authentication - -The following system environment variables are used for authentication by default: - -- - Datadog API key (see Datadog API Key Documentation) -- - Datadog Application Key (see Datadog Application Key Documentation) - -These variables are sourced at runtime (from the local machine or as CI variables/secrets). - -
- -Using different environment variables - -To use different environment variables (instead of the defaults), use the `--auth` flag of the `stackql` program. For example: - -```bash - -AUTH='{ "datadog": { "type": "custom", "location": "header", "name": "DD-API-KEY", "credentialsenvvar": "YOUR_DD_API_KEY_VAR", "successor": { "type": "custom", "location": "header", "name": "DD-APPLICATION-KEY", "credentialsenvvar": "YOUR_DD_APP_KEY_VAR" }}}' -stackql shell --auth="${AUTH}" - -``` -or using PowerShell: - -```powershell - -$Auth = "{ 'datadog': { 'type': 'custom', 'location': 'header', 'name': 'DD-API-KEY', 'credentialsenvvar': 'YOUR_DD_API_KEY_VAR', 'successor': { 'type': 'custom', 'location': 'header', 'name': 'DD-APPLICATION-KEY', 'credentialsenvvar': 'YOUR_DD_APP_KEY_VAR' }}}" -stackql.exe shell --auth=$Auth - -``` +See also: +[[` SHOW `]](https://stackql.io/docs/language-spec/show) [[` DESCRIBE `]](https://stackql.io/docs/language-spec/describe) [[` REGISTRY `]](https://stackql.io/docs/language-spec/registry) +* * * + +## Installation + +To pull the latest version of the `datadog` provider, run the following command: + +```bash +REGISTRY PULL datadog; +``` +> To view previous provider versions or to pull a specific provider version, see [here](https://stackql.io/docs/language-spec/registry). + +## Authentication + +The following system environment variables are used for authentication by default (the same variables the Datadog Terraform provider and the official API clients read): + +- - Datadog API key, sent as the DD-API-KEY header (see API keys) +- - Datadog application key, sent as the DD-APPLICATION-KEY header (see application keys) + +These variables are sourced at runtime (from the local machine or as CI variables/secrets). The application key's scopes determine which resources are readable and writable. + +
+ +Using different environment variables + +To use different environment variables (instead of the defaults), use the `--auth` flag of the `stackql` program. For example: + +```bash + +AUTH='{ "datadog": { "type": "custom", "location": "header", "name": "DD-API-KEY", "credentialsenvvar": "YOUR_DD_API_KEY_VAR", "successor": { "type": "custom", "location": "header", "name": "DD-APPLICATION-KEY", "credentialsenvvar": "YOUR_DD_APP_KEY_VAR" }}}' +stackql shell --auth="${AUTH}" + +``` +or using PowerShell: + +```powershell + +$Auth = "{ 'datadog': { 'type': 'custom', 'location': 'header', 'name': 'DD-API-KEY', 'credentialsenvvar': 'YOUR_DD_API_KEY_VAR', 'successor': { 'type': 'custom', 'location': 'header', 'name': 'DD-APPLICATION-KEY', 'credentialsenvvar': 'YOUR_DD_APP_KEY_VAR' }}}" +stackql.exe shell --auth=$Auth + +```
+## Datadog site (region) + +Every request goes to `https://api.{site}`. The `site` server variable defaults to `datadoghq.com` (US1) and is resolved from the environment variable when it is set - the same convention as the Datadog Agent and API clients: + +```bash +export DD_SITE=datadoghq.eu # EU1; also us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, ddog-gov.com +``` + +A `WHERE site = '...'` predicate on any query overrides the environment for that statement, so one session can address organizations on different sites. Queries never need a `site` predicate otherwise; the parameter is omitted from the examples in this documentation for that reason. + +## Provider scope + +The provider merges the Datadog v1 and v2 REST APIs into 18 services (`monitoring`, `dashboards`, `organization`, `logs`, `metrics`, `security`, `service_management`, `integrations`, ...). Resources from the v2 API return the JSON:API row shape - `id`, `type`, `attributes` and `relationships` columns - so attributes are addressed with `json_extract`; v1 resources (monitors, dashboards, hosts, SLOs, synthetics, log indexes and pipelines) return flat columns. Column and parameter names are snake_case; the handful of camelCase wire names are aliased. + +List operations with cursor pagination (`page[cursor]`) are traversed automatically; a SQL `LIMIT` is pushed to the API's page size parameter. Query parameters such as `filter[query]`, `filter[from]` or `tags` are used directly as `WHERE` predicates. + +## Monitors + +Every monitor with its state - the first query most teams run: + +```sql +SELECT id, name, type, overall_state, tags +FROM datadog.monitoring.monitors; +``` + +Only alerting monitors, using the API's own filter: + +```sql +SELECT id, name, overall_state +FROM datadog.monitoring.monitors +WHERE group_states = 'alert'; +``` + +Search monitors with the monitor search syntax: + +```sql +SELECT id, name, status, type +FROM datadog.monitoring.monitor_search_results +WHERE query = 'type:metric status:alert'; +``` + +## Users, roles and keys + +User audit with status and login method: + +```sql +SELECT + id, + json_extract(attributes, '$.email') AS email, + json_extract(attributes, '$.status') AS status, + json_extract(attributes, '$.disabled') AS disabled, + json_extract(attributes, '$.created_at') AS created_at +FROM datadog.organization.users; +``` + +Roles, and the users assigned to a role: + +```sql +SELECT id, json_extract(attributes, '$.name') AS name, json_extract(attributes, '$.user_count') AS user_count +FROM datadog.organization.roles; + +SELECT id, json_extract(attributes, '$.email') AS email +FROM datadog.organization.role_users +WHERE role_id = 'a633c0c8-91b4-11f0-a729-da7ad0900010'; +``` + +API keys by age - rotate the old ones: + +```sql +SELECT + id, + json_extract(attributes, '$.name') AS name, + json_extract(attributes, '$.created_at') AS created_at, + json_extract(attributes, '$.last4') AS last4 +FROM datadog.organization.api_keys +ORDER BY created_at; +``` + +## Dashboards and SLOs + +```sql +SELECT id, title, layout_type, author_handle, modified_at +FROM datadog.dashboards.dashboards; + +SELECT id, name, type, json_extract(thresholds, '$[0].target') AS target +FROM datadog.service_management.slos; +``` + +## Infrastructure + +Hosts reporting to Datadog, with their apps and mute state: + +```sql +SELECT host_name, up, is_muted, apps, last_reported_time +FROM datadog.infrastructure.hosts; + +SELECT total_up, total_active +FROM datadog.infrastructure.host_totals; +``` + +Active metrics reported in the last hour (`from` is a required Unix timestamp): + +```sql +SELECT metrics +FROM datadog.metrics.active_metrics +WHERE "from" = strftime('%s', 'now') - 3600; +``` + +## Logs, audit and usage + +Log indexes and their retention: + +```sql +SELECT name, num_retention_days, daily_limit +FROM datadog.logs.indexes; +``` + +Audit events for the last day - cursor-paginated, the time window pushed down as `filter[from]`: + +```sql +SELECT + id, + json_extract(attributes, '$.timestamp') AS timestamp, + json_extract(attributes, '$.attributes.action') AS action, + json_extract(attributes, '$.attributes.evt.name') AS event +FROM datadog.organization.audit_logs +WHERE "filter[from]" = 'now-1d'; +``` + +Usage summary for a month: + +```sql +SELECT date, infra_host_top99p, apm_host_top99p, logs_ingested_bytes_sum +FROM datadog.organization.usage_summary +WHERE start_month = '2026-08'; +``` + +## Provision, mutate and tear down + +Mutations use the same SQL grammar. A v1 resource (monitor) takes its fields as columns; a v2 resource (role, API key, downtime) takes the JSON:API `data` document. A monitor end to end: + +```sql +-- create +INSERT INTO datadog.monitoring.monitors (name, type, query, message, tags) +SELECT 'High CPU on web hosts', + 'metric alert', + 'avg(last_5m):avg:system.cpu.user{env:prod} by {host} > 90', + 'CPU above 90% on {{host.name}} @slack-ops', + '["team:web", "managed-by:stackql"]'; + +-- validate a definition without creating it +EXEC datadog.monitoring.monitors.validate_monitor + @type = 'metric alert', + @query = 'avg(last_5m):avg:system.cpu.user{env:prod} > 90', + @name = 'High CPU on web hosts'; + +-- replace the definition (the v1 monitor API updates with PUT) +REPLACE datadog.monitoring.monitors +SET name = 'High CPU on web hosts', type = 'metric alert', + query = 'avg(last_5m):avg:system.cpu.user{env:prod} by {host} > 95' +WHERE monitor_id = 12345678; + +-- remove it +DELETE FROM datadog.monitoring.monitors +WHERE monitor_id = 12345678; +``` + +A role (v2) end to end: + +```sql +INSERT INTO datadog.organization.roles (data) +SELECT '{"type": "roles", "attributes": {"name": "read-only-auditors"}}'; + +UPDATE datadog.organization.roles +SET data = '{"id": "", "type": "roles", "attributes": {"name": "auditors"}}' +WHERE role_id = ''; + +DELETE FROM datadog.organization.roles +WHERE role_id = ''; +``` + +Schedule a downtime for a scope: + +```sql +INSERT INTO datadog.service_management.downtimes (data) +SELECT '{"type": "downtime", "attributes": {"message": "release window", "scope": "env:prod", + "monitor_identifier": {"monitor_tags": ["team:web"]}, + "schedule": {"start": "2026-09-01T22:00:00Z", "end": "2026-09-01T23:00:00Z"}}}'; +``` + + ## Services
@@ -78,10 +269,12 @@ stackql.exe shell --auth=$Auth cloud_costs
dashboards
digital_experience
+fleet
infrastructure
integrations
+llm_observability
logs
metrics
monitoring
diff --git a/website/docs/services/actions/actions_datastore_items/index.md b/website/docs/services/actions/actions_datastore_items/index.md new file mode 100644 index 0000000..2c506be --- /dev/null +++ b/website/docs/services/actions/actions_datastore_items/index.md @@ -0,0 +1,107 @@ +--- +title: actions_datastore_items +hide_title: false +hide_table_of_contents: false +keywords: + - actions_datastore_items + - actions + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an actions_datastore_items resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
datastore_idDeletes multiple items from a datastore by their keys in a single operation.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the datastore.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `DELETE` examples + + + + +Deletes multiple items from a datastore by their keys in a single operation. + +```sql +DELETE FROM datadog.actions.actions_datastore_items +WHERE datastore_id = '{{ datastore_id }}' --required +; +``` + + diff --git a/website/docs/services/actions/app_key_registrations/index.md b/website/docs/services/actions/app_key_registrations/index.md index 819cd9f..733e55f 100644 --- a/website/docs/services/actions/app_key_registrations/index.md +++ b/website/docs/services/actions/app_key_registrations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an app_key_registrations r ## Overview - +
Nameapp_key_registrations
Name
TypeResource
Id
@@ -57,7 +58,7 @@ The following fields are returned by `SELECT` queries: string - The definition of `AppKeyRegistrationDataType` object. (example: app_key_registration) + The definition of `AppKeyRegistrationDataType` object. (app_key_registration) (example: app_key_registration) @@ -81,7 +82,7 @@ The following fields are returned by `SELECT` queries: string - The definition of `AppKeyRegistrationDataType` object. (example: app_key_registration) + The definition of `AppKeyRegistrationDataType` object. (app_key_registration) (example: app_key_registration) @@ -106,28 +107,28 @@ The following methods are available for this resource: - app_key_id, region + app_key_id Get an existing App Key Registration - region + page[size], page[number] List App Key Registrations - app_key_id, region + app_key_id Unregister an App Key - app_key_id, region + app_key_id Register a new App Key @@ -152,10 +153,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the app key - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -189,7 +190,6 @@ id, type FROM datadog.actions.app_key_registrations WHERE app_key_id = '{{ app_key_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -202,8 +202,7 @@ SELECT id, type FROM datadog.actions.app_key_registrations -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' ; ``` @@ -213,6 +212,8 @@ AND page[number] = '{{ page[number] }}' ## Lifecycle Methods +EXEC variables use wire (API) names. + @@ -237,8 +237,7 @@ Register a new App Key ```sql EXEC datadog.actions.app_key_registrations.register_app_key -@app_key_id='{{ app_key_id }}' --required, -@region='{{ region }}' --required +@app_key_id='{{ app_key_id }}' --required ; ``` diff --git a/website/docs/services/actions/connections/index.md b/website/docs/services/actions/connections/index.md index bee8177..1805e38 100644 --- a/website/docs/services/actions/connections/index.md +++ b/website/docs/services/actions/connections/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a connections resource. ## Overview - +
Nameconnections
Name
TypeResource
Id
@@ -63,7 +64,7 @@ Successfully get Action Connection string - The definition of `ActionConnectionDataType` object. (example: action_connection) + The definition of `ActionConnectionDataType` object. (action_connection) (example: action_connection) @@ -88,30 +89,30 @@ The following methods are available for this resource: - connection_id, region + connection_id - Get an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + Get an existing Action Connection. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - region, data__data + data - Create a new Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + Create a new Action Connection. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - connection_id, region, data__data + connection_id, data - Update an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). + Update an existing Action Connection. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). - connection_id, region + connection_id - Delete an existing Action Connection. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Delete an existing Action Connection. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). @@ -134,10 +135,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the action connection - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -161,7 +162,6 @@ attributes, type FROM datadog.actions.connections WHERE connection_id = '{{ connection_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -183,12 +183,10 @@ Create a new Action Connection. This API requires a [registered application key] ```sql INSERT INTO datadog.actions.connections ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -196,18 +194,30 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: connections props: - - name: region - value: string - description: Required parameter for the connections resource. - name: data - value: object description: | Data related to the connection. -``` + value: + attributes: + integration: + credentials: + account_id: "{{ account_id }}" + external_id: "{{ external_id }}" + principal_id: "{{ principal_id }}" + role: "{{ role }}" + type: "{{ type }}" + type: "{{ type }}" + base_url: "{{ base_url }}" + name: "{{ name }}" + tags: + - "{{ tags }}" + id: "{{ id }}" + type: "{{ type }}" +`} +
@@ -227,11 +237,10 @@ Update an existing Action Connection. This API requires a [registered applicatio ```sql UPDATE datadog.actions.connections SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE connection_id = '{{ connection_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -254,7 +263,6 @@ Delete an existing Action Connection. This API requires a [registered applicatio ```sql DELETE FROM datadog.actions.connections WHERE connection_id = '{{ connection_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/actions/datastore_items/index.md b/website/docs/services/actions/datastore_items/index.md index 5ae148b..b77e691 100644 --- a/website/docs/services/actions/datastore_items/index.md +++ b/website/docs/services/actions/datastore_items/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a datastore_items resource ## Overview - +
Namedatastore_items
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The resource type for datastore items. (default: items, example: items) + The resource type for datastore items. (items) (default: items, example: items) @@ -86,28 +87,28 @@ The following methods are available for this resource: - datastore_id, region + datastore_id filter, item_key, page[limit], page[offset], sort Lists items from a datastore. You can filter the results by specifying either an item key or a filter query parameter, but not both at the same time. Supports server-side pagination for large datasets. - datastore_id, region + datastore_id Creates or replaces multiple items in a datastore by their keys in a single operation. - datastore_id, region + datastore_id Partially updates an item in a datastore by its key. - datastore_id, region + datastore_id Deletes an item from a datastore by its key. @@ -132,15 +133,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The unique identifier of the datastore to retrieve. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. string - Optional query filter to search items using the [logs search syntax](https://docs.datadoghq.com/logs/explorer/search_syntax/). + Optional query filter to search items using the [logs search syntax](https:​//docs.datadoghq.com/logs/explorer/search_syntax/). @@ -184,7 +185,6 @@ attributes, type FROM datadog.actions.datastore_items WHERE datastore_id = '{{ datastore_id }}' -- required -AND region = '{{ region }}' -- required AND filter = '{{ filter }}' AND item_key = '{{ item_key }}' AND page[limit] = '{{ page[limit] }}' @@ -211,14 +211,12 @@ Creates or replaces multiple items in a datastore by their keys in a single oper ```sql INSERT INTO datadog.actions.datastore_items ( -data__data, -datastore_id, -region +data, +datastore_id ) SELECT '{{ data }}', -'{{ datastore_id }}', -'{{ region }}' +'{{ datastore_id }}' RETURNING data ; @@ -226,21 +224,22 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: datastore_items props: - name: datastore_id - value: string - description: Required parameter for the datastore_items resource. - - name: region - value: string + value: "{{ datastore_id }}" description: Required parameter for the datastore_items resource. - name: data - value: object description: | Data wrapper containing the items to insert and their configuration for the bulk insert operation. -``` + value: + attributes: + conflict_mode: "{{ conflict_mode }}" + values: "{{ values }}" + type: "{{ type }}" +`} + @@ -260,10 +259,9 @@ Partially updates an item in a datastore by its key. ```sql UPDATE datadog.actions.datastore_items SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE datastore_id = '{{ datastore_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -286,7 +284,6 @@ Deletes an item from a datastore by its key. ```sql DELETE FROM datadog.actions.datastore_items WHERE datastore_id = '{{ datastore_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/actions/datastores/index.md b/website/docs/services/actions/datastores/index.md index a88088a..1828946 100644 --- a/website/docs/services/actions/datastores/index.md +++ b/website/docs/services/actions/datastores/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a datastores resource. ## Overview - +
Namedatastores
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The resource type for datastores. (default: datastores, example: datastores) + The resource type for datastores. (datastores) (default: datastores, example: datastores) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The resource type for datastores. (default: datastores, example: datastores) + The resource type for datastores. (datastores) (default: datastores, example: datastores) @@ -116,35 +117,35 @@ The following methods are available for this resource: - datastore_id, region + datastore_id Retrieves a specific datastore by its ID. - region + Lists all datastores for the organization. - region + Creates a new datastore. - datastore_id, region + datastore_id Updates an existing datastore's attributes. - datastore_id, region + datastore_id Deletes a datastore by its unique identifier. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The unique identifier of the datastore to retrieve. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.actions.datastores WHERE datastore_id = '{{ datastore_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.actions.datastores -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Creates a new datastore. ```sql INSERT INTO datadog.actions.datastores ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -246,18 +243,23 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: datastores props: - - name: region - value: string - description: Required parameter for the datastores resource. - name: data - value: object description: | Data wrapper containing the configuration needed to create a new datastore. -``` + value: + attributes: + description: "{{ description }}" + name: "{{ name }}" + org_access: "{{ org_access }}" + primary_column_name: "{{ primary_column_name }}" + primary_key_generation_strategy: "{{ primary_key_generation_strategy }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -277,10 +279,9 @@ Updates an existing datastore's attributes. ```sql UPDATE datadog.actions.datastores SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE datastore_id = '{{ datastore_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -303,7 +304,6 @@ Deletes a datastore by its unique identifier. ```sql DELETE FROM datadog.actions.datastores WHERE datastore_id = '{{ datastore_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/actions/execution_policies/index.md b/website/docs/services/actions/execution_policies/index.md new file mode 100644 index 0000000..4a734e1 --- /dev/null +++ b/website/docs/services/actions/execution_policies/index.md @@ -0,0 +1,373 @@ +--- +title: execution_policies +hide_title: false +hide_table_of_contents: false +keywords: + - execution_policies + - actions + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an execution_policies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the execution policy. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
objectAn execution policy.
stringThe type of the resource. The value should always be `execution_policy`. (execution_policy) (default: execution_policy, example: execution_policy)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the execution policy. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
objectAn execution policy.
stringThe type of the resource. The value should always be `execution_policy`. (execution_policy) (default: execution_policy, example: execution_policy)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
policy_idRetrieve an existing execution policy by ID.
page[size], page[number], filter[name], filter[ids], filter[integration], filter[effects], filter[creator_ids], sortRetrieve a list of execution policies for the current organization.
dataCreate a new execution policy.
policy_id, dataUpdate an existing execution policy.<br />Returns the execution policy object when the request is successful.
policy_idDelete a specific execution policy.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the execution policy. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayFilter execution policies by a list of creator IDs. (example: [3fa85f64-5717-4562-b3fc-2c963f66afa6])
arrayFilter execution policies by a list of effects. (example: [allow])
arrayFilter execution policies by a list of IDs. (example: [3fa85f64-5717-4562-b3fc-2c963f66afa6])
arrayFilter execution policies by a list of integrations. (example: [INTEGRATION_SCRIPT])
stringFilter execution policies by name. (example: Block prod restarts)
integer (int32)The page number to return. (example: 0)
integer (int32)The number of execution policies to return per page. (example: 100)
arrayThe sort order for the results. Prefix a field with `-` to sort in descending order. Valid fields are `name`, `effect`, `integration`, `created_at`, and `updated_at`. (example: [-created_at])
+ +## `SELECT` examples + + + + +Retrieve an existing execution policy by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.actions.execution_policies +WHERE policy_id = '{{ policy_id }}' -- required +; +``` + + + +Retrieve a list of execution policies for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.actions.execution_policies +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND filter[name] = '{{ filter[name] }}' +AND filter[ids] = '{{ filter[ids] }}' +AND filter[integration] = '{{ filter[integration] }}' +AND filter[effects] = '{{ filter[effects] }}' +AND filter[creator_ids] = '{{ filter[creator_ids] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new execution policy. + +```sql +INSERT INTO datadog.actions.execution_policies ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: execution_policies + props: + - name: data + description: | + Object for a single execution policy. + value: + attributes: + action_pattern: + action_fqns: + - "{{ action_fqns }}" + integration: "{{ integration }}" + effect: "{{ effect }}" + name: "{{ name }}" + scope: + kubernetes: + rules: + - target_namespaces: "{{ target_namespaces }}" + remote_action_rshell: + rules: + - access: "{{ access }}" + target_paths: "{{ target_paths }}" + scripts: + rules: + - target_script_names: "{{ target_script_names }}" + targets: + - agent_tags: "{{ agent_tags }}" + name: "{{ name }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing execution policy.<br />Returns the execution policy object when the request is successful. + +```sql +REPLACE datadog.actions.execution_policies +SET +data = '{{ data }}' +WHERE +policy_id = '{{ policy_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a specific execution policy. + +```sql +DELETE FROM datadog.actions.execution_policies +WHERE policy_id = '{{ policy_id }}' --required +; +``` + + diff --git a/website/docs/services/actions/index.md b/website/docs/services/actions/index.md index eb2621f..706eca7 100644 --- a/website/docs/services/actions/index.md +++ b/website/docs/services/actions/index.md @@ -18,18 +18,20 @@ actions service documentation. :::info[Service Summary] -total resources: __4__ +total resources: __6__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/apm/index.md b/website/docs/services/apm/index.md index 669140f..e6f7e90 100644 --- a/website/docs/services/apm/index.md +++ b/website/docs/services/apm/index.md @@ -18,18 +18,24 @@ apm service documentation. :::info[Service Summary] -total resources: __4__ +total resources: __10__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/apm/pruned_traces/index.md b/website/docs/services/apm/pruned_traces/index.md new file mode 100644 index 0000000..67fc1d8 --- /dev/null +++ b/website/docs/services/apm/pruned_traces/index.md @@ -0,0 +1,187 @@ +--- +title: pruned_traces +hide_title: false +hide_table_of_contents: false +keywords: + - pruned_traces + - apm + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a pruned_traces resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe full 128-bit trace ID, encoded as a 32-character hexadecimal string. (example: 0000000000000000abc1230000000000)
objectThe attributes of a pruned trace returned by the Get pruned trace by ID endpoint.
stringThe type of the pruned trace resource. The value is always `pruned_trace`. (pruned_trace) (example: pruned_trace)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
trace_idexpand_span_id, time_hint, force_source, include_path, tag_include, tag_exclude, only_service_entry_spansRetrieve a pruned, hierarchical view of an APM trace by its trace ID.<br />The trace is summarized as a tree of spans rooted at the trace root and reduced in size<br />to keep rendering large traces in the UI practical.<br />This endpoint is rate limited to `60` requests per minute per organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe trace ID. Accepts either a 32-character hexadecimal string (128-bit trace ID) or a decimal string of up to 39 digits. (example: 0000000000000000abc1230000000000)
integer (int64)Span ID to expand and preserve in the pruned tree even when its branch would normally be summarized. (example: 9876543210987655000)
stringForce the trace to be loaded from a specific source. When unset, the API picks the source automatically. (example: driveline)
arrayRestrict the pruned tree to spans matching the given `key:value` pairs. Values may be passed as repeated query parameters. (example: [service:web-store])
booleanWhen set to `true`, only service entry spans are included in the pruned tree. (example: false)
arrayRegex patterns of tag keys whose values must be excluded from the pruned spans. Values may be passed as repeated query parameters. (example: [^_dd\.])
arrayRegex patterns of tag keys whose values must be included in the pruned spans. Values may be passed as repeated query parameters. (example: [^http\.])
integer (int32)Optional Unix time hint, in seconds, used to optimize the lookup of the trace in long-term storage. (example: 1716800000)
+ +## `SELECT` examples + + + + +Retrieve a pruned, hierarchical view of an APM trace by its trace ID.<br />The trace is summarized as a tree of spans rooted at the trace root and reduced in size<br />to keep rendering large traces in the UI practical.<br />This endpoint is rate limited to `60` requests per minute per organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.pruned_traces +WHERE trace_id = '{{ trace_id }}' -- required +AND expand_span_id = '{{ expand_span_id }}' +AND time_hint = '{{ time_hint }}' +AND force_source = '{{ force_source }}' +AND include_path = '{{ include_path }}' +AND tag_include = '{{ tag_include }}' +AND tag_exclude = '{{ tag_exclude }}' +AND only_service_entry_spans = '{{ only_service_entry_spans }}' +; +``` + + diff --git a/website/docs/services/apm/retention_filters/index.md b/website/docs/services/apm/retention_filters/index.md index 47e867d..70e9bab 100644 --- a/website/docs/services/apm/retention_filters/index.md +++ b/website/docs/services/apm/retention_filters/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a retention_filters resour ## Overview - +
Nameretention_filters
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. (default: apm_retention_filter, example: apm_retention_filter) + The type of the resource. (apm_retention_filter) (default: apm_retention_filter, example: apm_retention_filter) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. (default: apm_retention_filter, example: apm_retention_filter) + The type of the resource. (apm_retention_filter) (default: apm_retention_filter, example: apm_retention_filter) @@ -116,42 +117,42 @@ The following methods are available for this resource: - filter_id, region + filter_id Get an APM retention filter. - region + Get the list of APM retention filters. - region, data__data + data - Create a retention filter to index spans in your organization.
Returns the retention filter definition when the request is successful.

Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. + Create a retention filter to index spans in your organization.<br />Returns the retention filter definition when the request is successful.<br /><br />Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. - filter_id, region, data__data + filter_id, data - Update a retention filter from your organization.

Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) cannot be renamed or removed. + Update a retention filter from your organization.<br /><br />Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) cannot be renamed or removed. - filter_id, region + filter_id - Delete a specific retention filter from your organization.

Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted. + Delete a specific retention filter from your organization.<br /><br />Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted. - region, data + data Re-order the execution order of retention filters. @@ -176,10 +177,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the retention filter. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -204,7 +205,6 @@ attributes, type FROM datadog.apm.retention_filters WHERE filter_id = '{{ filter_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -218,7 +218,6 @@ id, attributes, type FROM datadog.apm.retention_filters -WHERE region = '{{ region }}' -- required ; ``` @@ -236,16 +235,14 @@ WHERE region = '{{ region }}' -- required > -Create a retention filter to index spans in your organization.
Returns the retention filter definition when the request is successful.

Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. +Create a retention filter to index spans in your organization.<br />Returns the retention filter definition when the request is successful.<br /><br />Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be created. ```sql INSERT INTO datadog.apm.retention_filters ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -253,18 +250,24 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: retention_filters props: - - name: region - value: string - description: Required parameter for the retention_filters resource. - name: data - value: object description: | The body of the retention filter to be created. -``` + value: + attributes: + enabled: {{ enabled }} + filter: + query: "{{ query }}" + filter_type: "{{ filter_type }}" + name: "{{ name }}" + rate: {{ rate }} + trace_rate: {{ trace_rate }} + type: "{{ type }}" +`} + @@ -279,16 +282,15 @@ data > -Update a retention filter from your organization.

Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) cannot be renamed or removed. +Update a retention filter from your organization.<br /><br />Default filters (filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor) cannot be renamed or removed. ```sql REPLACE datadog.apm.retention_filters SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE filter_id = '{{ filter_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -306,12 +308,11 @@ data; > -Delete a specific retention filter from your organization.

Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted. +Delete a specific retention filter from your organization.<br /><br />Default filters with types spans-errors-sampling-processor and spans-appsec-sampling-processor cannot be deleted. ```sql DELETE FROM datadog.apm.retention_filters WHERE filter_id = '{{ filter_id }}' --required -AND region = '{{ region }}' --required ; ```
@@ -320,6 +321,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + scorecard_campaigns resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the campaign. (example: c10ODp0VCrrIpXmz)
objectCampaign attributes.
stringThe JSON:API type for campaigns. (campaign) (example: campaign)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the campaign. (example: c10ODp0VCrrIpXmz)
objectCampaign attributes.
stringThe JSON:API type for campaigns. (campaign) (example: campaign)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
campaign_idinclude, include_metaFetches a single campaign by ID or key.
page[limit], page[offset], filter[campaign][name], filter[campaign][status], filter[campaign][owner]Fetches all scorecard campaigns.
dataCreates a new scorecard campaign.
campaign_id, dataUpdates an existing campaign.
campaign_idDeletes a single campaign by ID or key.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCampaign ID or key.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter campaigns by name (full-text search).
stringFilter campaigns by owner UUID.
stringFilter campaigns by status.
stringInclude related data (for example, scores).
booleanInclude metadata (entity and rule counts).
integer (int64)Maximum number of campaigns to return.
integer (int64)Offset for pagination.
+ +## `SELECT` examples + + + + +Fetches a single campaign by ID or key. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.scorecard_campaigns +WHERE campaign_id = '{{ campaign_id }}' -- required +AND include = '{{ include }}' +AND include_meta = '{{ include_meta }}' +; +``` + + + +Fetches all scorecard campaigns. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.scorecard_campaigns +WHERE page[limit] = '{{ page[limit] }}' +AND page[offset] = '{{ page[offset] }}' +AND filter[campaign][name] = '{{ filter[campaign][name] }}' +AND filter[campaign][status] = '{{ filter[campaign][status] }}' +AND filter[campaign][owner] = '{{ filter[campaign][owner] }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new scorecard campaign. + +```sql +INSERT INTO datadog.apm.scorecard_campaigns ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: scorecard_campaigns + props: + - name: data + description: | + Data for creating a new campaign. + value: + attributes: + description: "{{ description }}" + due_date: "{{ due_date }}" + entity_scope: "{{ entity_scope }}" + guidance: "{{ guidance }}" + key: "{{ key }}" + name: "{{ name }}" + owner_id: "{{ owner_id }}" + rule_ids: + - "{{ rule_ids }}" + start_date: "{{ start_date }}" + status: "{{ status }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates an existing campaign. + +```sql +REPLACE datadog.apm.scorecard_campaigns +SET +data = '{{ data }}' +WHERE +campaign_id = '{{ campaign_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Deletes a single campaign by ID or key. + +```sql +DELETE FROM datadog.apm.scorecard_campaigns +WHERE campaign_id = '{{ campaign_id }}' --required +; +``` + + diff --git a/website/docs/services/apm/scorecard_outcomes/index.md b/website/docs/services/apm/scorecard_outcomes/index.md index 7554622..fa7ce24 100644 --- a/website/docs/services/apm/scorecard_outcomes/index.md +++ b/website/docs/services/apm/scorecard_outcomes/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a scorecard_outcomes resou ## Overview - +
Namescorecard_outcomes
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for an outcome. (default: outcome, example: outcome) + The JSON:API type for an outcome. (outcome) (default: outcome, example: outcome) @@ -91,21 +92,14 @@ The following methods are available for this resource: - region + page[size], page[offset], include, fields[outcome], fields[rule], filter[outcome][service_name], filter[outcome][state], filter[rule][enabled], filter[rule][id], filter[rule][name] Fetches all rule outcomes. - + - region - Sets multiple service-rule outcomes in a single batched request. - - - - - region Updates multiple scorecard rule outcomes in a single batched request. @@ -125,10 +119,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -143,17 +137,17 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Filter the outcomes on a specific service name. + Filter outcomes on a specific service name. string - Filter the outcomes by a specific state. + Filter outcomes by a specific state. boolean - Filter outcomes on whether a rule is enabled/disabled. + Filter outcomes based on whether a rule is enabled or disabled. @@ -178,7 +172,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -202,8 +196,7 @@ attributes, relationships, type FROM datadog.apm.scorecard_outcomes -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[offset] = '{{ page[offset] }}' AND include = '{{ include }}' AND fields[outcome] = '{{ fields[outcome] }}' @@ -222,68 +215,42 @@ AND filter[rule][name] = '{{ filter[rule][name] }}' ## `INSERT` examples - + -Sets multiple service-rule outcomes in a single batched request. +Updates multiple scorecard rule outcomes in a single batched request. ```sql INSERT INTO datadog.apm.scorecard_outcomes ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' -RETURNING -data, -meta +'{{ data }}' ; ``` -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: scorecard_outcomes props: - - name: region - value: string - description: Required parameter for the scorecard_outcomes resource. - name: data - value: object description: | Scorecard outcomes batch request data. -``` - - - + value: + attributes: + results: + - entity_reference: "{{ entity_reference }}" + remarks: "{{ remarks }}" + rule_id: "{{ rule_id }}" + state: "{{ state }}" + type: "{{ type }}" +`} -## Lifecycle Methods - - - - -Updates multiple scorecard rule outcomes in a single batched request. - -```sql -EXEC datadog.apm.scorecard_outcomes.update_scorecard_outcomes_async -@region='{{ region }}' --required -@@json= -'{ -"data": "{{ data }}" -}' -; -``` diff --git a/website/docs/services/apm/scorecard_rules/index.md b/website/docs/services/apm/scorecard_rules/index.md index fdcc11f..ebe3d3a 100644 --- a/website/docs/services/apm/scorecard_rules/index.md +++ b/website/docs/services/apm/scorecard_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a scorecard_rules resource ## Overview - +
Namescorecard_rules
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for scorecard rules. (default: rule, example: rule) + The JSON:API type for scorecard rules. (rule) (default: rule, example: rule) @@ -91,28 +92,28 @@ The following methods are available for this resource: - region + page[size], page[offset], include, filter[rule][id], filter[rule][enabled], filter[rule][custom], filter[rule][name], filter[rule][description], fields[rule], fields[scorecard] Fetch all rules. - region + Creates a new rule. - rule_id, region + rule_id Updates an existing rule. - rule_id, region + rule_id Deletes a single rule. @@ -132,16 +133,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the rule. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string @@ -190,7 +191,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -214,8 +215,7 @@ attributes, relationships, type FROM datadog.apm.scorecard_rules -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[offset] = '{{ page[offset] }}' AND include = '{{ include }}' AND filter[rule][id] = '{{ filter[rule][id] }}' @@ -246,12 +246,10 @@ Creates a new rule. ```sql INSERT INTO datadog.apm.scorecard_rules ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -259,18 +257,24 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: scorecard_rules props: - - name: region - value: string - description: Required parameter for the scorecard_rules resource. - name: data - value: object description: | Scorecard create rule request data. -``` + value: + attributes: + description: "{{ description }}" + enabled: {{ enabled }} + level: {{ level }} + name: "{{ name }}" + owner: "{{ owner }}" + scope_query: "{{ scope_query }}" + scorecard_name: "{{ scorecard_name }}" + type: "{{ type }}" +`} + @@ -290,10 +294,9 @@ Updates an existing rule. ```sql REPLACE datadog.apm.scorecard_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -316,7 +319,6 @@ Deletes a single rule. ```sql DELETE FROM datadog.apm.scorecard_rules WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/apm/scorecard_scores/index.md b/website/docs/services/apm/scorecard_scores/index.md new file mode 100644 index 0000000..dcceb6f --- /dev/null +++ b/website/docs/services/apm/scorecard_scores/index.md @@ -0,0 +1,205 @@ +--- +title: scorecard_scores +hide_title: false +hide_table_of_contents: false +keywords: + - scorecard_scores + - apm + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scorecard_scores resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the entity or resource being scored. (example: )
objectAttributes of a scorecard score.
objectRelationships for a scorecard score, depending on the aggregation type.
stringThe JSON:API resource type. (score) (default: score, example: score)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
aggregationfilter[rule][id], filter[rule][name], filter[rule][level], filter[rule][scorecard_id], filter[rule][is_custom], filter[rule][is_enabled], sort, page[offset], page[limit]Returns a list of scorecard scores for each aggregation type, with score breakdowns.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe type of scores being requested.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter scores by rule ID(s), comma-separated.
booleanFilter scores to show only custom rules.
booleanFilter scores to show only enabled rules.
stringFilter scores by rule level(s), comma-separated.
stringFilter scores by rule name.
stringFilter scores by scorecard ID(s), comma-separated.
integer (int64)Number of scores to return. Max is 1000.
integer (int64)Offset for pagination.
stringSort scores by field. Use a hyphen prefix for descending order. Options: score, numerator, denominator, total_pass, total_fail, total_skip, total_no_data.
+ +## `SELECT` examples + + + + +Returns a list of scorecard scores for each aggregation type, with score breakdowns. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.apm.scorecard_scores +WHERE aggregation = '{{ aggregation }}' -- required +AND filter[rule][id] = '{{ filter[rule][id] }}' +AND filter[rule][name] = '{{ filter[rule][name] }}' +AND filter[rule][level] = '{{ filter[rule][level] }}' +AND filter[rule][scorecard_id] = '{{ filter[rule][scorecard_id] }}' +AND filter[rule][is_custom] = '{{ filter[rule][is_custom] }}' +AND filter[rule][is_enabled] = '{{ filter[rule][is_enabled] }}' +AND sort = '{{ sort }}' +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + diff --git a/website/docs/services/apm/scorecards/index.md b/website/docs/services/apm/scorecards/index.md new file mode 100644 index 0000000..1b12977 --- /dev/null +++ b/website/docs/services/apm/scorecards/index.md @@ -0,0 +1,169 @@ +--- +title: scorecards +hide_title: false +hide_table_of_contents: false +keywords: + - scorecards + - apm + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scorecards resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the scorecard. (example: q8MQxk8TCqrHnWkx)
objectScorecard attributes.
stringThe JSON:API type for scorecard list. (scorecard) (example: scorecard)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page[offset], page[size], filter[scorecard][id], filter[scorecard][name], filter[scorecard][description]Fetches all scorecards.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter by scorecard description (partial match).
stringFilter by scorecard ID.
stringFilter by scorecard name (partial match).
integer (int64)Offset for pagination.
integer (int64)Maximum number of scorecards to return.
+ +## `SELECT` examples + + + + +Fetches all scorecards. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.scorecards +WHERE page[offset] = '{{ page[offset] }}' +AND page[size] = '{{ page[size] }}' +AND filter[scorecard][id] = '{{ filter[scorecard][id] }}' +AND filter[scorecard][name] = '{{ filter[scorecard][name] }}' +AND filter[scorecard][description] = '{{ filter[scorecard][description] }}' +; +``` + + diff --git a/website/docs/services/apm/services/index.md b/website/docs/services/apm/services/index.md new file mode 100644 index 0000000..e43a341 --- /dev/null +++ b/website/docs/services/apm/services/index.md @@ -0,0 +1,145 @@ +--- +title: services +hide_title: false +hide_table_of_contents: false +keywords: + - services + - apm + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a services resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the service.
objectAttributes of a service list entry, containing metadata and a list of service names.
stringServices list resource type. (services_list) (default: services_list, example: services_list)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[env]
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringFilter services by environment. Can be set to `*` to return all services across all environments.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.services +WHERE filter[env] = '{{ filter[env] }}' -- required +; +``` + + diff --git a/website/docs/services/apm/spans_metrics/index.md b/website/docs/services/apm/spans_metrics/index.md index d565967..8c7abfa 100644 --- a/website/docs/services/apm/spans_metrics/index.md +++ b/website/docs/services/apm/spans_metrics/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a spans_metrics resource. ## Overview - +
Namespans_metrics
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of resource. The value should always be spans_metrics. (default: spans_metrics, example: spans_metrics) + The type of resource. The value should always be spans_metrics. (spans_metrics) (default: spans_metrics, example: spans_metrics) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of resource. The value should always be spans_metrics. (default: spans_metrics, example: spans_metrics) + The type of resource. The value should always be spans_metrics. (spans_metrics) (default: spans_metrics, example: spans_metrics) @@ -116,35 +117,35 @@ The following methods are available for this resource: - metric_id, region + metric_id Get a specific span-based metric from your organization. - region + Get the list of configured span-based metrics with their definitions. - region, data__data + data - Create a metric based on your ingested spans in your organization.
Returns the span-based metric object from the request body when the request is successful. + Create a metric based on your ingested spans in your organization.<br />Returns the span-based metric object from the request body when the request is successful. - metric_id, region, data__data + metric_id, data - Update a specific span-based metric from your organization.
Returns the span-based metric object from the request body when the request is successful. + Update a specific span-based metric from your organization.<br />Returns the span-based metric object from the request body when the request is successful. - metric_id, region + metric_id Delete a specific span-based metric from your organization. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the span-based metric. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.apm.spans_metrics WHERE metric_id = '{{ metric_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.apm.spans_metrics -WHERE region = '{{ region }}' -- required ; ``` @@ -229,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a metric based on your ingested spans in your organization.
Returns the span-based metric object from the request body when the request is successful. +Create a metric based on your ingested spans in your organization.<br />Returns the span-based metric object from the request body when the request is successful. ```sql INSERT INTO datadog.apm.spans_metrics ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,27 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: spans_metrics props: - - name: region - value: string - description: Required parameter for the spans_metrics resource. - name: data - value: object description: | The new span-based metric properties. -``` + value: + attributes: + compute: + aggregation_type: "{{ aggregation_type }}" + include_percentiles: {{ include_percentiles }} + path: "{{ path }}" + filter: + query: "{{ query }}" + group_by: + - path: "{{ path }}" + tag_name: "{{ tag_name }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -272,16 +278,15 @@ data > -Update a specific span-based metric from your organization.
Returns the span-based metric object from the request body when the request is successful. +Update a specific span-based metric from your organization.<br />Returns the span-based metric object from the request body when the request is successful. ```sql UPDATE datadog.apm.spans_metrics SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE metric_id = '{{ metric_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +309,6 @@ Delete a specific span-based metric from your organization. ```sql DELETE FROM datadog.apm.spans_metrics WHERE metric_id = '{{ metric_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/apm/traces/index.md b/website/docs/services/apm/traces/index.md new file mode 100644 index 0000000..02ac570 --- /dev/null +++ b/website/docs/services/apm/traces/index.md @@ -0,0 +1,151 @@ +--- +title: traces +hide_title: false +hide_table_of_contents: false +keywords: + - traces + - apm + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a traces resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe full 128-bit trace ID, encoded as a 32-character hexadecimal string. (example: 0000000000000000abc1230000000000)
objectThe attributes of a trace returned by the Get trace by ID endpoint.
stringThe type of the trace resource. The value is always `trace`. (trace) (example: trace)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
trace_idinclude_fieldsRetrieve a full APM trace by its trace ID, including every span in the trace.<br />Traces are returned from live storage when available and fall back to longer-term storage.<br />This endpoint is rate limited to `60` requests per minute per organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe trace ID. Accepts either a 32-character hexadecimal string (128-bit trace ID) or a decimal string of up to 39 digits. (example: 0000000000000000abc1230000000000)
arrayList of span fields to include in the response. When omitted, every available field is returned. Values may be passed as repeated query parameters or as a single comma-separated value. (example: [service, resource_name])
+ +## `SELECT` examples + + + + +Retrieve a full APM trace by its trace ID, including every span in the trace.<br />Traces are returned from live storage when available and fall back to longer-term storage.<br />This endpoint is rate limited to `60` requests per minute per organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.apm.traces +WHERE trace_id = '{{ trace_id }}' -- required +AND include_fields = '{{ include_fields }}' +; +``` + + diff --git a/website/docs/services/catalog/apis/index.md b/website/docs/services/catalog/apis/index.md deleted file mode 100644 index 20e2076..0000000 --- a/website/docs/services/catalog/apis/index.md +++ /dev/null @@ -1,298 +0,0 @@ ---- -title: apis -hide_title: false -hide_table_of_contents: false -keywords: - - apis - - catalog - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists an apis resource. - -## Overview - - - - -
Nameapis
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string (uuid)API identifier. (example: 90646597-5fdb-4a17-a240-647003f8c028)
objectAttributes for `ListAPIsResponseData`.
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
regionquery, page[limit], page[offset]List APIs and their IDs.
regionCreate a new API from the [OpenAPI](https://spec.openapis.org/oas/latest.html) specification given.
See the [API Catalog documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) for additional
information about the possible metadata.
It returns the created API ID.
id, regionUpdate information about a specific API. The given content will replace all API content of the given ID.
The ID is returned by the create API, or can be found in the URL in the API catalog UI.
id, regionDelete a specific API by ID.
id, regionRetrieve information about a specific API in [OpenAPI](https://spec.openapis.org/oas/latest.html) format file.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string (uuid)ID of the API to retrieve
string(default: datadoghq.com)
integer (int64)Number of items per page.
integer (int64)Offset for pagination.
stringFilter APIs by name
- -## `SELECT` examples - - - - -List APIs and their IDs. - -```sql -SELECT -id, -attributes -FROM datadog.catalog.apis -WHERE region = '{{ region }}' -- required -AND query = '{{ query }}' -AND page[limit] = '{{ page[limit] }}' -AND page[offset] = '{{ page[offset] }}' -; -``` - - - - -## `INSERT` examples - - - - -Create a new API from the [OpenAPI](https://spec.openapis.org/oas/latest.html) specification given.
See the [API Catalog documentation](https://docs.datadoghq.com/api_catalog/add_metadata/) for additional
information about the possible metadata.
It returns the created API ID.
- -```sql -INSERT INTO datadog.catalog.apis ( -data__openapi_spec_file, -region -) -SELECT -'{{ openapi_spec_file }}', -'{{ region }}' -RETURNING -data -; -``` -
- - -```yaml -# Description fields are for documentation purposes -- name: apis - props: - - name: region - value: string - description: Required parameter for the apis resource. - - name: openapi_spec_file - value: string - description: | - Binary `OpenAPI` spec file -``` - -
- - -## `REPLACE` examples - - - - -Update information about a specific API. The given content will replace all API content of the given ID.
The ID is returned by the create API, or can be found in the URL in the API catalog UI.
- -```sql -REPLACE datadog.catalog.apis -SET -data__openapi_spec_file = '{{ openapi_spec_file }}' -WHERE -id = '{{ id }}' --required -AND region = '{{ region }}' --required -RETURNING -data; -``` -
-
- - -## `DELETE` examples - - - - -Delete a specific API by ID. - -```sql -DELETE FROM datadog.catalog.apis -WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required -; -``` - - - - -## Lifecycle Methods - - - - -Retrieve information about a specific API in [OpenAPI](https://spec.openapis.org/oas/latest.html) format file. - -```sql -EXEC datadog.catalog.apis.get_open_api -@id='{{ id }}' --required, -@region='{{ region }}' --required -; -``` - - diff --git a/website/docs/services/catalog/catalog_entities/index.md b/website/docs/services/catalog/catalog_entities/index.md index 90e5dfd..bbf6f32 100644 --- a/website/docs/services/catalog/catalog_entities/index.md +++ b/website/docs/services/catalog/catalog_entities/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a catalog_entities resourc ## Overview - +
Namecatalog_entities
Name
TypeResource
Id
@@ -96,24 +97,31 @@ The following methods are available for this resource: - region - page[offset], page[limit], filter[id], filter[ref], filter[name], filter[kind], filter[owner], filter[relation][type], filter[exclude_snapshot], include + + page[offset], page[limit], filter[id], filter[ref], filter[name], filter[kind], filter[owner], filter[relation][type], filter[exclude_snapshot], include, include_discovered Get a list of entities from Software Catalog. - region + api_version, kind, metadata Create or update entities in Software Catalog. - entity_id, region + entity_id Delete a single entity in Software Catalog. + + + + + + + @@ -135,10 +143,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string UUID or Entity Ref. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -180,6 +188,11 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Include relationship data. + + + boolean + If true, includes discovered services from APM and USM that do not have entity definitions. (wire: includeDiscovered) + integer (int64) @@ -213,8 +226,7 @@ meta, relationships, type FROM datadog.catalog.catalog_entities -WHERE region = '{{ region }}' -- required -AND page[offset] = '{{ page[offset] }}' +WHERE page[offset] = '{{ page[offset] }}' AND page[limit] = '{{ page[limit] }}' AND filter[id] = '{{ filter[id] }}' AND filter[ref] = '{{ filter[ref] }}' @@ -224,6 +236,7 @@ AND filter[owner] = '{{ filter[owner] }}' AND filter[relation][type] = '{{ filter[relation][type] }}' AND filter[exclude_snapshot] = '{{ filter[exclude_snapshot] }}' AND include = '{{ include }}' +AND include_discovered = '{{ include_discovered }}' ; ``` @@ -245,10 +258,22 @@ Create or update entities in Software Catalog. ```sql INSERT INTO datadog.catalog.catalog_entities ( -region +api_version, +datadog, +extensions, +integrations, +kind, +metadata, +spec ) SELECT -'{{ region }}' +'{{ api_version }}' /* required */, +'{{ datadog }}', +'{{ extensions }}', +'{{ integrations }}', +'{{ kind }}' /* required */, +'{{ metadata }}' /* required */, +'{{ spec }}' RETURNING data, included, @@ -258,14 +283,92 @@ meta -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: catalog_entities props: - - name: region - value: string - description: Required parameter for the catalog_entities resource. -``` + - name: api_version + value: "{{ api_version }}" + description: | + The version of the schema data that was used to populate this entity's data. This could be via the API, Terraform, or YAML file in a repository. The field is known as schema-version in the previous version. + valid_values: ['v3', 'v2.2', 'v2.1', 'v2'] + - name: datadog + description: | + Datadog product integrations for the service entity. + value: + codeLocations: + - paths: "{{ paths }}" + repositoryURL: "{{ repositoryURL }}" + events: + - name: "{{ name }}" + query: "{{ query }}" + logs: + - name: "{{ name }}" + query: "{{ query }}" + performanceData: + tags: + - "{{ tags }}" + pipelines: + fingerprints: + - "{{ fingerprints }}" + - name: extensions + value: "{{ extensions }}" + description: | + Custom extensions. This is the free-formed field to send client-side metadata. No Datadog features are affected by this field. + - name: integrations + description: | + A base schema for defining third-party integrations. + value: + opsgenie: + region: "{{ region }}" + serviceURL: "{{ serviceURL }}" + pagerduty: + serviceURL: "{{ serviceURL }}" + - name: kind + value: "{{ kind }}" + description: | + The definition of Entity V3 Service Kind object. + valid_values: ['service'] + - name: metadata + description: | + The definition of Entity V3 Metadata object. + value: + additionalOwners: + - name: "{{ name }}" + type: "{{ type }}" + contacts: + - contact: "{{ contact }}" + name: "{{ name }}" + type: "{{ type }}" + description: "{{ description }}" + displayName: "{{ displayName }}" + id: "{{ id }}" + inheritFrom: "{{ inheritFrom }}" + links: + - name: "{{ name }}" + provider: "{{ provider }}" + type: "{{ type }}" + url: "{{ url }}" + managed: "{{ managed }}" + name: "{{ name }}" + namespace: "{{ namespace }}" + owner: "{{ owner }}" + tags: + - "{{ tags }}" + - name: spec + description: | + The definition of Entity V3 Service Spec object. + value: + componentOf: + - "{{ componentOf }}" + dependsOn: + - "{{ dependsOn }}" + languages: + - "{{ languages }}" + lifecycle: "{{ lifecycle }}" + tier: "{{ tier }}" + type: "{{ type }}" +`} + @@ -285,7 +388,28 @@ Delete a single entity in Software Catalog. ```sql DELETE FROM datadog.catalog.catalog_entities WHERE entity_id = '{{ entity_id }}' --required -AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Accepted + +```sql +EXEC datadog.catalog.catalog_entities.preview_catalog_entities ; ``` diff --git a/website/docs/services/catalog/catalog_kinds/index.md b/website/docs/services/catalog/catalog_kinds/index.md index a4a5971..34e2dd6 100644 --- a/website/docs/services/catalog/catalog_kinds/index.md +++ b/website/docs/services/catalog/catalog_kinds/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a catalog_kinds resource. ## Overview - +
Namecatalog_kinds
Name
TypeResource
Id
@@ -91,21 +92,21 @@ The following methods are available for this resource: - region + page[offset], page[limit], filter[id], filter[name] Get a list of entity kinds from Software Catalog. - region, data__kind + kind Create or update kinds in Software Catalog. - kind_id, region + kind_id Delete a single kind in Software Catalog. @@ -130,10 +131,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Entity kind. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -177,8 +178,7 @@ attributes, meta, type FROM datadog.catalog.catalog_kinds -WHERE region = '{{ region }}' -- required -AND page[offset] = '{{ page[offset] }}' +WHERE page[offset] = '{{ page[offset] }}' AND page[limit] = '{{ page[limit] }}' AND filter[id] = '{{ filter[id] }}' AND filter[name] = '{{ filter[name] }}' @@ -203,16 +203,14 @@ Create or update kinds in Software Catalog. ```sql INSERT INTO datadog.catalog.catalog_kinds ( -data__description, -data__displayName, -data__kind, -region +description, +display_name, +kind ) SELECT '{{ description }}', -'{{ displayName }}', -'{{ kind }}' /* required */, -'{{ region }}' +'{{ display_name }}', +'{{ kind }}' /* required */ RETURNING data, meta @@ -221,26 +219,23 @@ meta -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: catalog_kinds props: - - name: region - value: string - description: Required parameter for the catalog_kinds resource. - name: description - value: string + value: "{{ description }}" description: | Short description of the kind. - - name: displayName - value: string + - name: display_name + value: "{{ display_name }}" description: | The display name of the kind. Automatically generated if not provided. - name: kind - value: string + value: "{{ kind }}" description: | The name of the kind to create or update. This must be in kebab-case format. -``` +`} +
@@ -260,7 +255,6 @@ Delete a single kind in Software Catalog. ```sql DELETE FROM datadog.catalog.catalog_kinds WHERE kind_id = '{{ kind_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/catalog/catalog_relations/index.md b/website/docs/services/catalog/catalog_relations/index.md index 87983cb..9ea77a3 100644 --- a/website/docs/services/catalog/catalog_relations/index.md +++ b/website/docs/services/catalog/catalog_relations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a catalog_relations resour ## Overview - +
Namecatalog_relations
Name
TypeResource
Id
@@ -76,7 +77,7 @@ The following fields are returned by `SELECT` queries: string - Relation type. + Relation type. (relation) @@ -101,8 +102,8 @@ The following methods are available for this resource: - region - page[offset], page[limit], filter[type], filter[from_ref], filter[to_ref], include + + page[offset], page[limit], filter[type], filter[from_ref], filter[to_ref], include, include_discovered Get a list of entity relations from Software Catalog. @@ -121,10 +122,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -146,6 +147,11 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Include relationship data. + + + boolean + If true, includes relationships discovered by APM and USM. (wire: includeDiscovered) + integer (int64) @@ -180,13 +186,13 @@ relationships, subtype, type FROM datadog.catalog.catalog_relations -WHERE region = '{{ region }}' -- required -AND page[offset] = '{{ page[offset] }}' +WHERE page[offset] = '{{ page[offset] }}' AND page[limit] = '{{ page[limit] }}' AND filter[type] = '{{ filter[type] }}' AND filter[from_ref] = '{{ filter[from_ref] }}' AND filter[to_ref] = '{{ filter[to_ref] }}' AND include = '{{ include }}' +AND include_discovered = '{{ include_discovered }}' ; ``` diff --git a/website/docs/services/catalog/index.md b/website/docs/services/catalog/index.md index d852bd5..6538412 100644 --- a/website/docs/services/catalog/index.md +++ b/website/docs/services/catalog/index.md @@ -18,18 +18,17 @@ catalog service documentation. :::info[Service Summary] -total resources: __4__ +total resources: __3__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/cloud_costs/account_filters/index.md b/website/docs/services/cloud_costs/account_filters/index.md new file mode 100644 index 0000000..e1ace4e --- /dev/null +++ b/website/docs/services/cloud_costs/account_filters/index.md @@ -0,0 +1,178 @@ +--- +title: account_filters +hide_title: false +hide_table_of_contents: false +keywords: + - account_filters + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an account_filters resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the cloud account. (example: 123456789123)
objectAttributes for the account filters of a cloud account.
stringType of account filters. (account_filters) (default: account_filters, example: account_filters)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
cloud_account_idGet the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds).
cloud_account_id, dataUpdate the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Cloud Account id.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds). + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.account_filters +WHERE cloud_account_id = '{{ cloud_account_id }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Update the account filters for a cloud account (AWS CUR 1.0/2.0, OCI, and other clouds). + +```sql +UPDATE datadog.cloud_costs.account_filters +SET +data = '{{ data }}' +WHERE +cloud_account_id = '{{ cloud_account_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/cloud_costs/active_billing_dimensions/index.md b/website/docs/services/cloud_costs/active_billing_dimensions/index.md index d0563d3..db2d1af 100644 --- a/website/docs/services/cloud_costs/active_billing_dimensions/index.md +++ b/website/docs/services/cloud_costs/active_billing_dimensions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an active_billing_dimensions -Nameactive_billing_dimensions +Name TypeResource Id @@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of active billing dimensions data. (default: billing_dimensions) + Type of active billing dimensions data. (billing_dimensions) (default: billing_dimensions) @@ -86,7 +87,7 @@ The following methods are available for this resource: - region + Get active billing dimensions for cost attribution. Cost data for a given month becomes available no later than the 19th of the following month. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -132,7 +133,6 @@ id, attributes, type FROM datadog.cloud_costs.active_billing_dimensions -WHERE region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/cloud_costs/anomalies/index.md b/website/docs/services/cloud_costs/anomalies/index.md new file mode 100644 index 0000000..bdbf626 --- /dev/null +++ b/website/docs/services/cloud_costs/anomalies/index.md @@ -0,0 +1,262 @@ +--- +title: anomalies +hide_title: false +hide_table_of_contents: false +keywords: + - anomalies + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an anomalies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the anomaly. (example: b0a6aaa9-3c4c-48cb-9447-a0d1338b3e09)
objectA single detected Cloud Cost Management anomaly.
stringType of the cost anomalies collection resource. Must be `anomalies`. (anomalies) (default: anomalies, example: anomalies)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringStatic identifier of the cost anomalies collection resource. (example: anomalies)
objectCost anomaly results and aggregated totals for the queried window.
stringType of the cost anomalies collection resource. Must be `anomalies`. (anomalies) (default: anomalies, example: anomalies)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
anomaly_idGet a detected Cloud Cost Management anomaly by UUID.
start, end, filter, min_anomalous_threshold, min_cost_threshold, dismissal_cause, order_by, order, limit, offset, provider_idsList detected Cloud Cost Management anomalies for the organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the cost anomaly.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter by resolution state. Use `none` for unresolved anomalies, `all` or `*` for resolved anomalies, or a comma-separated list of causes.
integer (int64)End time as Unix milliseconds. Defaults to the end of the latest stable seven-day window.
stringOptional JSON object mapping cost tag keys to allowed values, for example `{"team":["payments"],"env":["prod"]}`. Filters match anomaly dimensions or correlated tags.
integer (int64)Maximum number of anomalies to return. Defaults to `200`.
stringMinimum absolute anomalous cost change to include. Numeric value; defaults to `1`.
stringMinimum absolute actual cost to include. Numeric value; defaults to `0`.
integer (int64)Pagination offset. Defaults to `0`.
stringSort direction. One of `asc` or `desc`. Defaults to `desc`.
stringSort field. One of `start_date`, `end_date`, `duration`, `max_cost`, `anomalous_cost`, or `dismissal_date`. Defaults to `anomalous_cost`.
arrayOptional repeated cloud or SaaS provider filters, such as `aws`, `gcp`, `azure`, `Oracle`, `datadog`, `OpenAI`, or `Anthropic`.
integer (int64)Start time as Unix milliseconds. Defaults to the start of the latest stable seven-day window.
+ +## `SELECT` examples + + + + +Get a detected Cloud Cost Management anomaly by UUID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.anomalies +WHERE anomaly_id = '{{ anomaly_id }}' -- required +; +``` + + + +List detected Cloud Cost Management anomalies for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.anomalies +WHERE start = '{{ start }}' +AND end = '{{ end }}' +AND filter = '{{ filter }}' +AND min_anomalous_threshold = '{{ min_anomalous_threshold }}' +AND min_cost_threshold = '{{ min_cost_threshold }}' +AND dismissal_cause = '{{ dismissal_cause }}' +AND order_by = '{{ order_by }}' +AND order = '{{ order }}' +AND limit = '{{ limit }}' +AND offset = '{{ offset }}' +AND provider_ids = '{{ provider_ids }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/arbitrary_rule_statuses/index.md b/website/docs/services/cloud_costs/arbitrary_rule_statuses/index.md new file mode 100644 index 0000000..bb52b57 --- /dev/null +++ b/website/docs/services/cloud_costs/arbitrary_rule_statuses/index.md @@ -0,0 +1,139 @@ +--- +title: arbitrary_rule_statuses +hide_title: false +hide_table_of_contents: false +keywords: + - arbitrary_rule_statuses + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an arbitrary_rule_statuses resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the custom allocation rule. (example: 123)
objectProcessing status for a custom allocation rule.
stringCustom allocation rule status resource type. (arbitrary_rule_status) (default: arbitrary_rule_status, example: arbitrary_rule_status)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List the processing status of all custom allocation rules. Returns only the ID and processing status for each rule.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List the processing status of all custom allocation rules. Returns only the ID and processing status for each rule. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.arbitrary_rule_statuses +; +``` + + diff --git a/website/docs/services/cloud_costs/arbitrary_rules/index.md b/website/docs/services/cloud_costs/arbitrary_rules/index.md new file mode 100644 index 0000000..bb21a38 --- /dev/null +++ b/website/docs/services/cloud_costs/arbitrary_rules/index.md @@ -0,0 +1,376 @@ +--- +title: arbitrary_rules +hide_title: false +hide_table_of_contents: false +keywords: + - arbitrary_rules + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an arbitrary_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `ArbitraryRuleResponseData` `id`.
objectThe definition of `ArbitraryRuleResponseDataAttributes` object.
stringArbitrary rule resource type. (arbitrary_rule) (default: arbitrary_rule, example: arbitrary_rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `ArbitraryRuleResponseData` `id`.
objectThe definition of `ArbitraryRuleResponseDataAttributes` object.
stringArbitrary rule resource type. (arbitrary_rule) (default: arbitrary_rule, example: arbitrary_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet a specific custom allocation rule - Retrieve a specific custom allocation rule by its ID
List all custom allocation rules - Retrieve a list of all custom allocation rules for the organization
Create a new custom allocation rule with the specified filters and allocation strategy.<br /><br />**Strategy Methods:**<br />- **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters.<br />- **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys.<br />- **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations).<br /><br />**Filter Conditions:**<br />- Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like"<br />- Use **values** for multi-value conditions: "in", "not in"<br />- Cannot use both value and values simultaneously.<br /><br />**Supported operators**: is, is not, contains, in, not in, =, !=, like, not like
rule_idUpdate an existing custom allocation rule with new filters and allocation strategy.<br /><br />**Strategy Methods:**<br />- **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters.<br />- **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys.<br />- **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations).<br />- **USAGE_METRIC**: Allocates based on usage metrics (implementation varies).<br /><br />**Filter Conditions:**<br />- Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like"<br />- Use **values** for multi-value conditions: "in", "not in"<br />- Cannot use both value and values simultaneously.<br /><br />**Supported operators**: is, is not, contains, in, not in, =, !=, like, not like
rule_idDelete a custom allocation rule - Delete an existing custom allocation rule by its ID
dataReorder custom allocation rules - Change the execution order of custom allocation rules.<br /><br />**Important**: You must provide the **complete list** of all rule IDs in the desired execution order. The API will reorder ALL rules according to the provided sequence.<br /><br />Rules are executed in the order specified, with lower indices (earlier in the array) having higher priority.<br /><br />**Example**: If you have rules with IDs [123, 456, 789] and want to change order from 123→456→789 to 456→123→789, send: [{"id": "456"}, {"id": "123"}, {"id": "789"}]
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The unique identifier of the custom allocation rule
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific custom allocation rule - Retrieve a specific custom allocation rule by its ID + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.arbitrary_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + + +List all custom allocation rules - Retrieve a list of all custom allocation rules for the organization + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.arbitrary_rules +; +``` + + + + +## `INSERT` examples + + + + +Create a new custom allocation rule with the specified filters and allocation strategy.<br /><br />**Strategy Methods:**<br />- **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters.<br />- **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys.<br />- **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations).<br /><br />**Filter Conditions:**<br />- Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like"<br />- Use **values** for multi-value conditions: "in", "not in"<br />- Cannot use both value and values simultaneously.<br /><br />**Supported operators**: is, is not, contains, in, not in, =, !=, like, not like + +```sql +INSERT INTO datadog.cloud_costs.arbitrary_rules ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: arbitrary_rules + props: + - name: data + description: | + The definition of \`ArbitraryCostUpsertRequestData\` object. + value: + attributes: + costs_to_allocate: + - condition: "{{ condition }}" + tag: "{{ tag }}" + value: "{{ value }}" + values: "{{ values }}" + enabled: {{ enabled }} + order_id: {{ order_id }} + provider: + - "{{ provider }}" + rejected: {{ rejected }} + rule_name: "{{ rule_name }}" + strategy: + allocated_by: + - allocated_tags: "{{ allocated_tags }}" + percentage: {{ percentage }} + allocated_by_filters: + - condition: "{{ condition }}" + tag: "{{ tag }}" + value: "{{ value }}" + values: "{{ values }}" + allocated_by_tag_keys: + - "{{ allocated_by_tag_keys }}" + based_on_costs: + - condition: "{{ condition }}" + tag: "{{ tag }}" + value: "{{ value }}" + values: "{{ values }}" + based_on_timeseries: "{{ based_on_timeseries }}" + evaluate_grouped_by_filters: + - condition: "{{ condition }}" + tag: "{{ tag }}" + value: "{{ value }}" + values: "{{ values }}" + evaluate_grouped_by_tag_keys: + - "{{ evaluate_grouped_by_tag_keys }}" + granularity: "{{ granularity }}" + method: "{{ method }}" + type: "{{ type }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing custom allocation rule with new filters and allocation strategy.<br /><br />**Strategy Methods:**<br />- **PROPORTIONAL/EVEN**: Allocates costs proportionally/evenly based on existing costs. Requires: granularity, allocated_by_tag_keys. Optional: based_on_costs, allocated_by_filters, evaluate_grouped_by_tag_keys, evaluate_grouped_by_filters.<br />- **PROPORTIONAL_TIMESERIES/EVEN_TIMESERIES**: Allocates based on timeseries data. Requires: granularity, based_on_timeseries. Optional: evaluate_grouped_by_tag_keys.<br />- **PERCENT**: Allocates fixed percentages to specific tags. Requires: allocated_by (array of percentage allocations).<br />- **USAGE_METRIC**: Allocates based on usage metrics (implementation varies).<br /><br />**Filter Conditions:**<br />- Use **value** for single-value conditions: "is", "is not", "contains", "=", "!=", "like", "not like"<br />- Use **values** for multi-value conditions: "in", "not in"<br />- Cannot use both value and values simultaneously.<br /><br />**Supported operators**: is, is not, contains, in, not in, =, !=, like, not like + +```sql +UPDATE datadog.cloud_costs.arbitrary_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a custom allocation rule - Delete an existing custom allocation rule by its ID + +```sql +DELETE FROM datadog.cloud_costs.arbitrary_rules +WHERE rule_id = '{{ rule_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Reorder custom allocation rules - Change the execution order of custom allocation rules.<br /><br />**Important**: You must provide the **complete list** of all rule IDs in the desired execution order. The API will reorder ALL rules according to the provided sequence.<br /><br />Rules are executed in the order specified, with lower indices (earlier in the array) having higher priority.<br /><br />**Example**: If you have rules with IDs [123, 456, 789] and want to change order from 123→456→789 to 456→123→789, send: [{"id": "456"}, {"id": "123"}, {"id": "789"}] + +```sql +EXEC datadog.cloud_costs.arbitrary_rules.reorder_custom_allocation_rules +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/cloud_costs/aws_configs/index.md b/website/docs/services/cloud_costs/aws_configs/index.md index 122122a..748c37a 100644 --- a/website/docs/services/cloud_costs/aws_configs/index.md +++ b/website/docs/services/cloud_costs/aws_configs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_configs resource. ## Overview - +
Nameaws_configs
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of AWS CUR config. (default: aws_cur_config, example: aws_cur_config) + Type of AWS CUR config. (aws_cur_config) (default: aws_cur_config, example: aws_cur_config) @@ -86,28 +87,28 @@ The following methods are available for this resource: - region + List the AWS CUR configs. - region, data__data + data Create a Cloud Cost Management account for an AWS CUR config. - cloud_account_id, region, data__data + cloud_account_id, data Update the status (active/archived) and/or account filtering configuration of an AWS CUR config. - cloud_account_id, region + cloud_account_id Archive a Cloud Cost Management Account. @@ -132,10 +133,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) Cloud Account id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -158,7 +159,6 @@ id, attributes, type FROM datadog.cloud_costs.aws_configs -WHERE region = '{{ region }}' -- required ; ``` @@ -180,12 +180,10 @@ Create a Cloud Cost Management account for an AWS CUR config. ```sql INSERT INTO datadog.cloud_costs.aws_configs ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -193,18 +191,29 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: aws_configs props: - - name: region - value: string - description: Required parameter for the aws_configs resource. - name: data - value: object description: | AWS CUR config Post data. -``` + value: + attributes: + account_filters: + excluded_accounts: + - "{{ excluded_accounts }}" + include_new_accounts: {{ include_new_accounts }} + included_accounts: + - "{{ included_accounts }}" + account_id: "{{ account_id }}" + bucket_name: "{{ bucket_name }}" + bucket_region: "{{ bucket_region }}" + months: {{ months }} + report_name: "{{ report_name }}" + report_prefix: "{{ report_prefix }}" + type: "{{ type }}" +`} + @@ -224,11 +233,10 @@ Update the status (active/archived) and/or account filtering configuration of an ```sql UPDATE datadog.cloud_costs.aws_configs SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE cloud_account_id = '{{ cloud_account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -251,7 +259,6 @@ Archive a Cloud Cost Management Account. ```sql DELETE FROM datadog.cloud_costs.aws_configs WHERE cloud_account_id = '{{ cloud_account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/cloud_costs/aws_cur_configs/index.md b/website/docs/services/cloud_costs/aws_cur_configs/index.md new file mode 100644 index 0000000..a54763a --- /dev/null +++ b/website/docs/services/cloud_costs/aws_cur_configs/index.md @@ -0,0 +1,145 @@ +--- +title: aws_cur_configs +hide_title: false +hide_table_of_contents: false +keywords: + - aws_cur_configs + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_cur_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `AwsCurConfigResponseData` `id`.
objectThe definition of `AwsCurConfigResponseDataAttributes` object.
stringAWS CUR config resource type. (aws_cur_config) (default: aws_cur_config, example: aws_cur_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
cloud_account_idGet a specific AWS CUR config.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The unique identifier of the cloud account
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific AWS CUR config. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.aws_cur_configs +WHERE cloud_account_id = '{{ cloud_account_id }}' -- required +; +``` + + diff --git a/website/docs/services/cloud_costs/azure_configs/index.md b/website/docs/services/cloud_costs/azure_configs/index.md index d6d2c2e..5486496 100644 --- a/website/docs/services/cloud_costs/azure_configs/index.md +++ b/website/docs/services/cloud_costs/azure_configs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an azure_configs resource. ## Overview - +
Nameazure_configs
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of Azure config pair. (default: azure_uc_configs, example: azure_uc_configs) + Type of Azure config pair. (azure_uc_configs) (default: azure_uc_configs, example: azure_uc_configs) @@ -86,28 +87,28 @@ The following methods are available for this resource: - region + List the Azure configs. - region, data__data + data Create a Cloud Cost Management account for an Azure config. - cloud_account_id, region, data__data + cloud_account_id, data Update the status of an Azure config (active/archived). - cloud_account_id, region + cloud_account_id Archive a Cloud Cost Management Account. @@ -132,10 +133,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) Cloud Account id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -158,7 +159,6 @@ id, attributes, type FROM datadog.cloud_costs.azure_configs -WHERE region = '{{ region }}' -- required ; ``` @@ -180,12 +180,10 @@ Create a Cloud Cost Management account for an Azure config. ```sql INSERT INTO datadog.cloud_costs.azure_configs ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -193,18 +191,30 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: azure_configs props: - - name: region - value: string - description: Required parameter for the azure_configs resource. - name: data - value: object description: | Azure config Post data. -``` + value: + attributes: + account_id: "{{ account_id }}" + actual_bill_config: + export_name: "{{ export_name }}" + export_path: "{{ export_path }}" + storage_account: "{{ storage_account }}" + storage_container: "{{ storage_container }}" + amortized_bill_config: + export_name: "{{ export_name }}" + export_path: "{{ export_path }}" + storage_account: "{{ storage_account }}" + storage_container: "{{ storage_container }}" + client_id: "{{ client_id }}" + scope: "{{ scope }}" + type: "{{ type }}" +`} + @@ -224,11 +234,10 @@ Update the status of an Azure config (active/archived). ```sql UPDATE datadog.cloud_costs.azure_configs SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE cloud_account_id = '{{ cloud_account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -251,7 +260,6 @@ Archive a Cloud Cost Management Account. ```sql DELETE FROM datadog.cloud_costs.azure_configs WHERE cloud_account_id = '{{ cloud_account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/cloud_costs/azure_uc_configs/index.md b/website/docs/services/cloud_costs/azure_uc_configs/index.md new file mode 100644 index 0000000..ff1366b --- /dev/null +++ b/website/docs/services/cloud_costs/azure_uc_configs/index.md @@ -0,0 +1,145 @@ +--- +title: azure_uc_configs +hide_title: false +hide_table_of_contents: false +keywords: + - azure_uc_configs + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an azure_uc_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `UCConfigPairData` `id`.
objectThe definition of `UCConfigPairDataAttributes` object.
stringAzure UC configs resource type. (azure_uc_configs) (default: azure_uc_configs, example: azure_uc_configs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
cloud_account_idGet a specific Azure config.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The unique identifier of the cloud account
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific Azure config. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.azure_uc_configs +WHERE cloud_account_id = '{{ cloud_account_id }}' -- required +; +``` + + diff --git a/website/docs/services/organization/idp_metadata/index.md b/website/docs/services/cloud_costs/budget_csvs/index.md similarity index 56% rename from website/docs/services/organization/idp_metadata/index.md rename to website/docs/services/cloud_costs/budget_csvs/index.md index dd35d25..22b25b3 100644 --- a/website/docs/services/organization/idp_metadata/index.md +++ b/website/docs/services/cloud_costs/budget_csvs/index.md @@ -1,10 +1,10 @@ --- -title: idp_metadata +title: budget_csvs hide_title: false hide_table_of_contents: false keywords: - - idp_metadata - - organization + - budget_csvs + - cloud_costs - datadog - infrastructure-as-code - configuration-as-data @@ -15,16 +15,17 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -Creates, updates, deletes, gets or lists an idp_metadata resource. +Creates, updates, deletes, gets or lists a budget_csvs resource. ## Overview - + - +
Nameidp_metadata
Name
TypeResource
Id
Id
## Fields @@ -50,11 +51,11 @@ The following methods are available for this resource: - + - region - Endpoint for uploading IdP metadata for SAML setup.

Use this endpoint to upload or replace IdP metadata for SAML login configuration. + + @@ -72,33 +73,30 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. ## Lifecycle Methods +EXEC variables use wire (API) names. + - + -Endpoint for uploading IdP metadata for SAML setup.

Use this endpoint to upload or replace IdP metadata for SAML login configuration. +OK ```sql -EXEC datadog.organization.idp_metadata.upload_id_pmetadata -@region='{{ region }}' --required -@@json= -'{ -"idp_file": "{{ idp_file }}" -}' +EXEC datadog.cloud_costs.budget_csvs.validate_csv_budget ; ```
diff --git a/website/docs/services/cloud_costs/budget_custom_forecasts/index.md b/website/docs/services/cloud_costs/budget_custom_forecasts/index.md new file mode 100644 index 0000000..0e7aaae --- /dev/null +++ b/website/docs/services/cloud_costs/budget_custom_forecasts/index.md @@ -0,0 +1,205 @@ +--- +title: budget_custom_forecasts +hide_title: false +hide_table_of_contents: false +keywords: + - budget_custom_forecasts + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a budget_custom_forecasts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the custom forecast. (example: 11111111-1111-1111-1111-111111111111)
objectAttributes of a custom forecast.
stringThe type of the custom forecast resource. Must be `custom_forecast`. (custom_forecast) (default: custom_forecast, example: custom_forecast)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
budget_idGet the custom forecast for a budget.
dataCreate or replace the custom forecast for an existing budget.<br />Pass an empty `entries` list to delete the custom forecast for the budget.
budget_idDelete the custom forecast for a budget.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringBudget id.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the custom forecast for a budget. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.budget_custom_forecasts +WHERE budget_id = '{{ budget_id }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Create or replace the custom forecast for an existing budget.<br />Pass an empty `entries` list to delete the custom forecast for the budget. + +```sql +REPLACE datadog.cloud_costs.budget_custom_forecasts +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete the custom forecast for a budget. + +```sql +DELETE FROM datadog.cloud_costs.budget_custom_forecasts +WHERE budget_id = '{{ budget_id }}' --required +; +``` + + diff --git a/website/docs/services/cloud_costs/budgets/index.md b/website/docs/services/cloud_costs/budgets/index.md index a70b052..092b35a 100644 --- a/website/docs/services/cloud_costs/budgets/index.md +++ b/website/docs/services/cloud_costs/budgets/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a budgets resource. ## Overview - +
Namebudgets
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the object, must be `budget`. + The type of the object, must be `budget`. (example: ) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the object, must be `budget`. + The type of the object, must be `budget`. (example: ) @@ -116,30 +117,37 @@ The following methods are available for this resource: - budget_id, region - - Get a budget. + budget_id + actual, forecast, start, end + Get a budget by ID. Pass `actual=true` or `forecast=true` to include cost data in the response. Use `start` and `end` (millisecond epochs, both required) to set the cost window. When `forecast=true`, each entry also includes `ootb_forecast` (the ML forecast before overrides) and `custom_forecast` (`null` if no override is set, a number if one is). - region + List budgets. - region + Create a new budget or update an existing one. - budget_id, region + budget_id + + Delete a budget + + + + + - Delete a budget. + Validate a budget configuration without creating or modifying it @@ -162,10 +170,30 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Budget id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + boolean + When `true`, includes actual cost data in the response. + + + + integer (int64) + End of the cost window in milliseconds since epoch. Must be used together with `start`. + + + + boolean + When `true`, includes forecast cost data in the response, including `ootb_forecast` and `custom_forecast` per entry. + + + + integer (int64) + Start of the cost window in milliseconds since epoch. Must be used together with `end`. @@ -181,7 +209,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a budget. +Get a budget by ID. Pass `actual=true` or `forecast=true` to include cost data in the response. Use `start` and `end` (millisecond epochs, both required) to set the cost window. When `forecast=true`, each entry also includes `ootb_forecast` (the ML forecast before overrides) and `custom_forecast` (`null` if no override is set, a number if one is). ```sql SELECT @@ -190,7 +218,10 @@ attributes, type FROM datadog.cloud_costs.budgets WHERE budget_id = '{{ budget_id }}' -- required -AND region = '{{ region }}' -- required +AND actual = '{{ actual }}' +AND forecast = '{{ forecast }}' +AND start = '{{ start }}' +AND end = '{{ end }}' ; ``` @@ -204,7 +235,6 @@ id, attributes, type FROM datadog.cloud_costs.budgets -WHERE region = '{{ region }}' -- required ; ```
@@ -226,9 +256,8 @@ Create a new budget or update an existing one. ```sql REPLACE datadog.cloud_costs.budgets SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE -region = '{{ region }}' --required RETURNING data; ``` @@ -246,12 +275,37 @@ data; > -Delete a budget. +Delete a budget ```sql DELETE FROM datadog.cloud_costs.budgets WHERE budget_id = '{{ budget_id }}' --required -AND region = '{{ region }}' --required +; +``` + +
+ + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Validate a budget configuration without creating or modifying it + +```sql +EXEC datadog.cloud_costs.budgets.validate_budget +@@json= +'{ +"data": "{{ data }}" +}' ; ``` diff --git a/website/docs/services/cloud_costs/commitment_coverage_scalar/index.md b/website/docs/services/cloud_costs/commitment_coverage_scalar/index.md new file mode 100644 index 0000000..61e6ebc --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_coverage_scalar/index.md @@ -0,0 +1,175 @@ +--- +title: commitment_coverage_scalar +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_coverage_scalar + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_coverage_scalar resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe column name. (example: utilization)
objectMetadata for a scalar column, including unit information.
stringThe column type. "group" for dimension columns, "number" for metric columns. (group, number) (example: group)
arrayValues for a scalar column. Arrays of strings for group columns, numbers for value columns.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_byGet scalar coverage metrics for cloud commitment programs, including hours and cost coverage percentages.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get scalar coverage metrics for cloud commitment programs, including hours and cost coverage percentages. + +```sql +SELECT +name, +meta, +type, +values +FROM datadog.cloud_costs.commitment_coverage_scalar +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitment_coverage_timeseries/index.md b/website/docs/services/cloud_costs/commitment_coverage_timeseries/index.md new file mode 100644 index 0000000..cfc03e8 --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_coverage_timeseries/index.md @@ -0,0 +1,163 @@ +--- +title: commitment_coverage_timeseries +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_coverage_timeseries + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_coverage_timeseries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectA timeseries metric containing timestamps, series values, and optional unit metadata.
objectA timeseries metric containing timestamps, series values, and optional unit metadata.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_byGet timeseries coverage metrics for cloud commitment programs, broken down by coverage type (Reserved Instances, Savings Plans, On-Demand, and Spot) for both hours and cost.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get timeseries coverage metrics for cloud commitment programs, broken down by coverage type (Reserved Instances, Savings Plans, On-Demand, and Spot) for both hours and cost. + +```sql +SELECT +cost, +hours +FROM datadog.cloud_costs.commitment_coverage_timeseries +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitment_on_demand_hot_spot_scalar/index.md b/website/docs/services/cloud_costs/commitment_on_demand_hot_spot_scalar/index.md new file mode 100644 index 0000000..140a885 --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_on_demand_hot_spot_scalar/index.md @@ -0,0 +1,169 @@ +--- +title: commitment_on_demand_hot_spot_scalar +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_on_demand_hot_spot_scalar + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_on_demand_hot_spot_scalar resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayArray of scalar columns in the response.
objectMetadata for the on-demand hot-spots scalar response.
arrayArray of scalar columns in the response.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_byGet scalar on-demand hot-spots data for cloud commitment programs, showing per-dimension breakdowns of on-demand spending with coverage metrics and potential savings.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get scalar on-demand hot-spots data for cloud commitment programs, showing per-dimension breakdowns of on-demand spending with coverage metrics and potential savings. + +```sql +SELECT +columns, +meta, +total +FROM datadog.cloud_costs.commitment_on_demand_hot_spot_scalar +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitment_saving_scalar/index.md b/website/docs/services/cloud_costs/commitment_saving_scalar/index.md new file mode 100644 index 0000000..5b7d01e --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_saving_scalar/index.md @@ -0,0 +1,175 @@ +--- +title: commitment_saving_scalar +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_saving_scalar + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_saving_scalar resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe column name. (example: utilization)
objectMetadata for a scalar column, including unit information.
stringThe column type. "group" for dimension columns, "number" for metric columns. (group, number) (example: group)
arrayValues for a scalar column. Arrays of strings for group columns, numbers for value columns.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_byGet scalar savings metrics for cloud commitment programs, including realized savings and effective savings rate.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get scalar savings metrics for cloud commitment programs, including realized savings and effective savings rate. + +```sql +SELECT +name, +meta, +type, +values +FROM datadog.cloud_costs.commitment_saving_scalar +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitment_saving_timeseries/index.md b/website/docs/services/cloud_costs/commitment_saving_timeseries/index.md new file mode 100644 index 0000000..4081a59 --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_saving_timeseries/index.md @@ -0,0 +1,175 @@ +--- +title: commitment_saving_timeseries +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_saving_timeseries + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_saving_timeseries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectA timeseries metric containing timestamps, series values, and optional unit metadata.
objectA timeseries metric containing timestamps, series values, and optional unit metadata.
objectA timeseries metric containing timestamps, series values, and optional unit metadata.
objectA timeseries metric containing timestamps, series values, and optional unit metadata.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_byGet timeseries savings metrics for cloud commitment programs, including actual cost, on-demand equivalent cost, realized savings, and effective savings rate over time.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get timeseries savings metrics for cloud commitment programs, including actual cost, on-demand equivalent cost, realized savings, and effective savings rate over time. + +```sql +SELECT +actual_cost, +effective_savings_rate, +on_demand_equivalent_cost, +realized_savings +FROM datadog.cloud_costs.commitment_saving_timeseries +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitment_utilization_scalar/index.md b/website/docs/services/cloud_costs/commitment_utilization_scalar/index.md new file mode 100644 index 0000000..98ee24b --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_utilization_scalar/index.md @@ -0,0 +1,169 @@ +--- +title: commitment_utilization_scalar +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_utilization_scalar + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_utilization_scalar resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayArray of scalar columns in the response.
arrayArray of per-product utilization breakdown entries.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_by, commitment_typeGet scalar utilization metrics for cloud commitment programs, including utilization percentage and unused cost.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringType of commitment to query. ri for Reserved Instances, sp for Savings Plans. Defaults to ri. (wire: commitmentType)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get scalar utilization metrics for cloud commitment programs, including utilization percentage and unused cost. + +```sql +SELECT +columns, +product_breakdown +FROM datadog.cloud_costs.commitment_utilization_scalar +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +AND commitment_type = '{{ commitment_type }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitment_utilization_timeseries/index.md b/website/docs/services/cloud_costs/commitment_utilization_timeseries/index.md new file mode 100644 index 0000000..ebec377 --- /dev/null +++ b/website/docs/services/cloud_costs/commitment_utilization_timeseries/index.md @@ -0,0 +1,175 @@ +--- +title: commitment_utilization_timeseries +hide_title: false +hide_table_of_contents: false +keywords: + - commitment_utilization_timeseries + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitment_utilization_timeseries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectTimeseries data as a map of series names to their corresponding value arrays.
arrayUnix timestamps in seconds for the timeseries data points.
objectUnit metadata for a numeric metric.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_by, commitment_typeGet timeseries utilization metrics for cloud commitment programs, including used and unused cost series over time.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringType of commitment to query. ri for Reserved Instances, sp for Savings Plans. Defaults to ri. (wire: commitmentType)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get timeseries utilization metrics for cloud commitment programs, including used and unused cost series over time. + +```sql +SELECT +series, +times, +unit +FROM datadog.cloud_costs.commitment_utilization_timeseries +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +AND commitment_type = '{{ commitment_type }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/commitments/index.md b/website/docs/services/cloud_costs/commitments/index.md new file mode 100644 index 0000000..963e9c5 --- /dev/null +++ b/website/docs/services/cloud_costs/commitments/index.md @@ -0,0 +1,283 @@ +--- +title: commitments +hide_title: false +hide_table_of_contents: false +keywords: + - commitments + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a commitments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the Reserved Instance. (example: ri-0123456789abcdef0)
stringThe display name of the Azure reservation. (example: my-vm-reservation)
stringThe availability zone of the reservation. (example: us-east-1a)
stringThe cache engine type of the Reserved Instance. (example: Redis)
number (double)The hourly committed spend for the Savings Plan.
stringThe database engine of the Reserved Instance. (example: MySQL)
stringThe expiration date of the commitment. (example: 2025-12-31T00:00:00Z)
stringThe EC2 instance type. (example: m5.xlarge)
booleanWhether the Reserved Instance is Multi-AZ.
stringThe Azure meter sub-category for the reservation. (example: D4s v3)
number (double)The number of Normalized Capacity Units.
number (double)The number of reserved instances.
stringThe offering class of the Reserved Instance. (example: standard)
stringThe operating system of the Reserved Instance. (example: Linux)
stringThe payment option for the Reserved Instance. (example: All Upfront)
stringThe AWS region of the Reserved Instance. (example: us-east-1)
stringThe Savings Plan type. (example: ComputeSavingsPlans)
stringThe start date of the commitment. (example: 2023-01-01T00:00:00Z)
stringStatus of an Azure VM Reserved Instance. (running, expired, cancelled) (example: running)
number (double)The term length in years.
number (double)The utilization percentage of the commitment.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
provider, product, start, endfilter_by, commitment_typeGet a list of individual cloud commitments (Reserved Instances or Savings Plans) with their utilization details. The response schema varies based on the provider, product, and commitment type.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the query time range in Unix milliseconds. (example: 1696118400000)
stringCloud product identifier (for example, ec2, rds, virtualmachines). (example: ec2)
stringCloud provider for commitment programs (aws or azure).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the query time range in Unix milliseconds. (example: 1693526400000)
stringType of commitment to query. ri for Reserved Instances, sp for Savings Plans. Defaults to ri. (wire: commitmentType)
stringOptional filter expression to narrow down results. (wire: filterBy)
+ +## `SELECT` examples + + + + +Get a list of individual cloud commitments (Reserved Instances or Savings Plans) with their utilization details. The response schema varies based on the provider, product, and commitment type. + +```sql +SELECT +commitment_id, +benefit_name, +availability_zone, +cache_engine, +committed_spend_per_hour, +database_engine, +expiration_date, +instance_type, +is_multi_az, +meter_sub_category, +number_of_nfus, +number_of_reservations, +offering_class, +operating_system, +purchase_option, +region, +savings_plan_type, +start_date, +status, +term_length, +utilization +FROM datadog.cloud_costs.commitments +WHERE provider = '{{ provider }}' -- required +AND product = '{{ product }}' -- required +AND start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND filter_by = '{{ filter_by }}' +AND commitment_type = '{{ commitment_type }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/costs_files/index.md b/website/docs/services/cloud_costs/costs_files/index.md index 4a3fcdc..18c4465 100644 --- a/website/docs/services/cloud_costs/costs_files/index.md +++ b/website/docs/services/cloud_costs/costs_files/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a costs_files resource. ## Overview - +
Namecosts_files
Name
TypeResource
Id
@@ -116,28 +117,28 @@ The following methods are available for this resource: - file_id, region + file_id Fetch the specified Custom Costs file. - region - page[number], page[size], filter[status], sort + + page[number], page[size], filter[status], filter[name], filter[provider], sort List the Custom Costs files. - file_id, region + file_id Delete the specified Custom Costs file. - region + Upload a Custom Costs file. @@ -162,10 +163,20 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string File ID. - - + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + string - (default: datadoghq.com) + Filter files by name with case-insensitive substring matching. + + + + array + Filter by provider. @@ -210,7 +221,6 @@ attributes, type FROM datadog.cloud_costs.costs_files WHERE file_id = '{{ file_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -224,10 +234,11 @@ id, attributes, type FROM datadog.cloud_costs.costs_files -WHERE region = '{{ region }}' -- required -AND page[number] = '{{ page[number] }}' +WHERE page[number] = '{{ page[number] }}' AND page[size] = '{{ page[size] }}' AND filter[status] = '{{ filter[status] }}' +AND filter[name] = '{{ filter[name] }}' +AND filter[provider] = '{{ filter[provider] }}' AND sort = '{{ sort }}' ; ``` @@ -250,7 +261,6 @@ Delete the specified Custom Costs file. ```sql DELETE FROM datadog.cloud_costs.costs_files WHERE file_id = '{{ file_id }}' --required -AND region = '{{ region }}' --required ; ``` @@ -259,6 +269,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + diff --git a/website/docs/services/cloud_costs/gcp_configs/index.md b/website/docs/services/cloud_costs/gcp_configs/index.md index f41fb00..a308e8b 100644 --- a/website/docs/services/cloud_costs/gcp_configs/index.md +++ b/website/docs/services/cloud_costs/gcp_configs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a gcp_configs resource. ## Overview - +
Namegcp_configs
Name
TypeResource
Id
@@ -51,17 +52,17 @@ The following fields are returned by `SELECT` queries: string - The ID of the GCP Usage Cost config. + The ID of the Google Cloud Usage Cost config. object - Attributes for a GCP Usage Cost config. + Attributes for a Google Cloud Usage Cost config. string - Type of GCP Usage Cost config. (default: gcp_uc_config, example: gcp_uc_config) + Type of Google Cloud Usage Cost config. (gcp_uc_config) (default: gcp_uc_config, example: gcp_uc_config) @@ -86,28 +87,28 @@ The following methods are available for this resource: - region - List the GCP Usage Cost configs. + + List the Google Cloud Usage Cost configs. - region, data__data + data - Create a Cloud Cost Management account for an GCP Usage Cost config. + Create a Cloud Cost Management account for an Google Cloud Usage Cost config. - cloud_account_id, region, data__data + cloud_account_id, data - Update the status of an GCP Usage Cost config (active/archived). + Update the status of an Google Cloud Usage Cost config (active/archived). - cloud_account_id, region + cloud_account_id Archive a Cloud Cost Management account. @@ -132,10 +133,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) Cloud Account id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -150,7 +151,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List the GCP Usage Cost configs. +List the Google Cloud Usage Cost configs. ```sql SELECT @@ -158,7 +159,6 @@ id, attributes, type FROM datadog.cloud_costs.gcp_configs -WHERE region = '{{ region }}' -- required ; ``` @@ -176,16 +176,14 @@ WHERE region = '{{ region }}' -- required > -Create a Cloud Cost Management account for an GCP Usage Cost config. +Create a Cloud Cost Management account for an Google Cloud Usage Cost config. ```sql INSERT INTO datadog.cloud_costs.gcp_configs ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -193,18 +191,23 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: gcp_configs props: - - name: region - value: string - description: Required parameter for the gcp_configs resource. - name: data - value: object description: | - GCP Usage Cost config post data. -``` + Google Cloud Usage Cost config post data. + value: + attributes: + billing_account_id: "{{ billing_account_id }}" + bucket_name: "{{ bucket_name }}" + export_dataset_name: "{{ export_dataset_name }}" + export_prefix: "{{ export_prefix }}" + export_project_name: "{{ export_project_name }}" + service_account: "{{ service_account }}" + type: "{{ type }}" +`} +
@@ -219,16 +222,15 @@ data > -Update the status of an GCP Usage Cost config (active/archived). +Update the status of an Google Cloud Usage Cost config (active/archived). ```sql UPDATE datadog.cloud_costs.gcp_configs SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE cloud_account_id = '{{ cloud_account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -251,7 +253,6 @@ Archive a Cloud Cost Management account. ```sql DELETE FROM datadog.cloud_costs.gcp_configs WHERE cloud_account_id = '{{ cloud_account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/cloud_costs/gcp_uc_configs/index.md b/website/docs/services/cloud_costs/gcp_uc_configs/index.md new file mode 100644 index 0000000..a51f919 --- /dev/null +++ b/website/docs/services/cloud_costs/gcp_uc_configs/index.md @@ -0,0 +1,145 @@ +--- +title: gcp_uc_configs +hide_title: false +hide_table_of_contents: false +keywords: + - gcp_uc_configs + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a gcp_uc_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `GcpUcConfigResponseData` `id`.
objectThe definition of `GcpUcConfigResponseDataAttributes` object.
stringGoogle Cloud Usage Cost config resource type. (gcp_uc_config) (default: gcp_uc_config, example: gcp_uc_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
cloud_account_idGet a specific Google Cloud Usage Cost config.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The unique identifier of the cloud account
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific Google Cloud Usage Cost config. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.gcp_uc_configs +WHERE cloud_account_id = '{{ cloud_account_id }}' -- required +; +``` + + diff --git a/website/docs/services/cloud_costs/index.md b/website/docs/services/cloud_costs/index.md index 3eeb555..7a6b91c 100644 --- a/website/docs/services/cloud_costs/index.md +++ b/website/docs/services/cloud_costs/index.md @@ -18,21 +18,51 @@ cloud_costs service documentation. :::info[Service Summary] -total resources: __7__ +total resources: __37__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/cloud_costs/monthly_cost_attribution/index.md b/website/docs/services/cloud_costs/monthly_cost_attribution/index.md index e7488f3..0f843dc 100644 --- a/website/docs/services/cloud_costs/monthly_cost_attribution/index.md +++ b/website/docs/services/cloud_costs/monthly_cost_attribution/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a monthly_cost_attribution ## Overview - +
Namemonthly_cost_attribution
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of cost attribution data. (default: cost_by_tag, example: cost_by_tag) + Type of cost attribution data. (cost_by_tag) (default: cost_by_tag, example: cost_by_tag) @@ -86,9 +87,9 @@ The following methods are available for this resource: - start_month, fields, region + start_month, fields end_month, sort_direction, sort_name, tag_breakdown_keys, next_record_id, include_descendants - Get monthly cost attribution by tag across multi-org and single root-org accounts.
Cost Attribution data for a given month becomes available no later than the 19th of the following month.
This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is
set in the response. If it is, make another request and pass `next_record_id` as a parameter.
Pseudo code example:
```
response := GetMonthlyCostAttribution(start_month, end_month)
cursor := response.metadata.pagination.next_record_id
WHILE cursor != null BEGIN
sleep(5 seconds) # Avoid running into rate limit
response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor)
cursor := response.metadata.pagination.next_record_id
END
```

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). This endpoint is not available in the Government (US1-FED) site. + Get monthly cost attribution by tag across multi-org and single root-org accounts.<br />Cost Attribution data for a given month becomes available no later than the 19th of the following month.<br />This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is<br />set in the response. If it is, make another request and pass `next_record_id` as a parameter.<br />Pseudo code example:<br />```<br />response := GetMonthlyCostAttribution(start_month, end_month)<br />cursor := response.metadata.pagination.next_record_id<br />WHILE cursor != null BEGIN<br /> sleep(5 seconds) # Avoid running into rate limit<br /> response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor)<br /> cursor := response.metadata.pagination.next_record_id<br />END<br />```<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). This endpoint is not available in the Government (US1-FED) site. @@ -109,22 +110,22 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Comma-separated list specifying cost types (e.g., `_on_demand_cost`, `_committed_cost`, `_total_cost`) and the proportions (`_percentage_in_org`, `_percentage_in_account`). Use `*` to retrieve all fields. Example: `infra_host_on_demand_cost,infra_host_percentage_in_account` To obtain the complete list of active billing dimensions that can be used to replace `` in the field names, make a request to the [Get active billing dimensions API](https://docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution). + Comma-separated list specifying cost types (e.g., `<billing_dimension>_on_demand_cost`, `<billing_dimension>_committed_cost`, `<billing_dimension>_total_cost`) and the proportions (`<billing_dimension>_percentage_in_org`, `<billing_dimension>_percentage_in_account`). Use `*` to retrieve all fields. Example: `infra_host_on_demand_cost,infra_host_percentage_in_account` To obtain the complete list of active billing dimensions that can be used to replace <billing_dimension> in the field names, make a request to the [Get active billing dimensions API](https:​//docs.datadoghq.com/api/latest/usage-metering/#get-active-billing-dimensions-for-cost-attribution). - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. string (date-time) - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning in this month. + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning in this month. string (date-time) - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month. + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month. @@ -139,7 +140,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - The direction to sort by: `[desc, asc]`. + The direction to sort by: `[desc, asc]`. @@ -164,7 +165,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get monthly cost attribution by tag across multi-org and single root-org accounts.
Cost Attribution data for a given month becomes available no later than the 19th of the following month.
This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is
set in the response. If it is, make another request and pass `next_record_id` as a parameter.
Pseudo code example:
```
response := GetMonthlyCostAttribution(start_month, end_month)
cursor := response.metadata.pagination.next_record_id
WHILE cursor != null BEGIN
sleep(5 seconds) # Avoid running into rate limit
response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor)
cursor := response.metadata.pagination.next_record_id
END
```

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). This endpoint is not available in the Government (US1-FED) site. +Get monthly cost attribution by tag across multi-org and single root-org accounts.<br />Cost Attribution data for a given month becomes available no later than the 19th of the following month.<br />This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is<br />set in the response. If it is, make another request and pass `next_record_id` as a parameter.<br />Pseudo code example:<br />```<br />response := GetMonthlyCostAttribution(start_month, end_month)<br />cursor := response.metadata.pagination.next_record_id<br />WHILE cursor != null BEGIN<br /> sleep(5 seconds) # Avoid running into rate limit<br /> response := GetMonthlyCostAttribution(start_month, end_month, next_record_id=cursor)<br /> cursor := response.metadata.pagination.next_record_id<br />END<br />```<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). This endpoint is not available in the Government (US1-FED) site. ```sql SELECT @@ -174,7 +175,6 @@ type FROM datadog.cloud_costs.monthly_cost_attribution WHERE start_month = '{{ start_month }}' -- required AND fields = '{{ fields }}' -- required -AND region = '{{ region }}' -- required AND end_month = '{{ end_month }}' AND sort_direction = '{{ sort_direction }}' AND sort_name = '{{ sort_name }}' diff --git a/website/docs/services/cloud_costs/oci_configs/index.md b/website/docs/services/cloud_costs/oci_configs/index.md new file mode 100644 index 0000000..38086f4 --- /dev/null +++ b/website/docs/services/cloud_costs/oci_configs/index.md @@ -0,0 +1,139 @@ +--- +title: oci_configs +hide_title: false +hide_table_of_contents: false +keywords: + - oci_configs + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an oci_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the OCI config. (example: 1)
objectAttributes for an OCI config.
stringType of OCI config. (oci_config) (default: oci_config, example: oci_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List the OCI configs.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List the OCI configs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.oci_configs +; +``` + + diff --git a/website/docs/services/cloud_costs/recommendations/index.md b/website/docs/services/cloud_costs/recommendations/index.md new file mode 100644 index 0000000..0a885c9 --- /dev/null +++ b/website/docs/services/cloud_costs/recommendations/index.md @@ -0,0 +1,157 @@ +--- +title: recommendations +hide_title: false +hide_table_of_contents: false +keywords: + - recommendations + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a recommendations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page[size], page[token]List cost recommendations matching a filter, with pagination and sorting.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringNumber of results per page (1–10000).
stringPagination token from a previous response.
+ +## `INSERT` examples + + + + +List cost recommendations matching a filter, with pagination and sorting. + +```sql +INSERT INTO datadog.cloud_costs.recommendations ( +filter, +sort, +view, +page[size], +page[token] +) +SELECT +'{{ filter }}', +'{{ sort }}', +'{{ view }}', +'{{ page[size] }}', +'{{ page[token] }}' +RETURNING +data, +meta +; +``` + + + +{`# Description fields are for documentation purposes +- name: recommendations + props: + - name: filter + value: "{{ filter }}" + description: | + Filter expression applied to the recommendations. + - name: sort + description: | + Ordered list of sort clauses applied to the result set. + value: + - expression: "{{ expression }}" + order: "{{ order }}" + - name: view + value: "{{ view }}" + description: | + Active view name (for example, \`active\`, \`dismissed\`, \`open\`, \`in-progress\`, or \`completed\`). + - name: page[size] + value: "{{ page[size] }}" + description: Number of results per page (1–10000). + description: Number of results per page (1–10000). + - name: page[token] + value: "{{ page[token] }}" + description: Pagination token from a previous response. + description: Pagination token from a previous response. +`} + + + diff --git a/website/docs/services/cloud_costs/tag_descriptions/index.md b/website/docs/services/cloud_costs/tag_descriptions/index.md new file mode 100644 index 0000000..03ca44c --- /dev/null +++ b/website/docs/services/cloud_costs/tag_descriptions/index.md @@ -0,0 +1,298 @@ +--- +title: tag_descriptions +hide_title: false +hide_table_of_contents: false +keywords: + - tag_descriptions + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_descriptions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringStable identifier of the tag description. Equals the tag key when the description is the cross-cloud default; encodes both the cloud and the tag key when the description is cloud-specific. (example: account_id)
objectHuman-readable description and metadata attached to a Cloud Cost Management tag key, optionally scoped to a single cloud provider.
stringType of the Cloud Cost Management tag description resource. (cost_tag_description) (default: cost_tag_description, example: cost_tag_description)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringStable identifier of the tag description. Equals the tag key when the description is the cross-cloud default; encodes both the cloud and the tag key when the description is cloud-specific. (example: account_id)
objectHuman-readable description and metadata attached to a Cloud Cost Management tag key, optionally scoped to a single cloud provider.
stringType of the Cloud Cost Management tag description resource. (cost_tag_description) (default: cost_tag_description, example: cost_tag_description)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
tag_keyfilter[cloud]Get the Cloud Cost Management description for a single tag key. Use `filter[cloud]` to scope the lookup to a specific cloud provider; when omitted, the response resolves the description in fallback order (cloud-specific organization override, then cloudless organization default, then Datadog's global default).
filter[cloud]List Cloud Cost Management tag key descriptions for the organization. Use `filter[cloud]` to scope the result to a single cloud provider; when omitted, both cross-cloud defaults and cloud-specific descriptions are returned.
tag_key, dataCreate or update a Cloud Cost Management tag key description. The new description and optional cloud scoping are supplied in the request body. Omit `cloud` to set a cross-cloud default for the tag key.
tag_keycloudDelete a Cloud Cost Management tag key description. When `cloud` is omitted, deletes every description for the tag key, falling back to Datadog's global default when available. When `cloud` is provided, deletes only the description scoped to that cloud provider.
tag_keyUse AI to draft a Cloud Cost Management tag key description based on associated cost data. The generated description is returned in the response and is not persisted by this endpoint; follow up with `UpsertCostTagDescriptionByKey` to save it.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe tag key to generate an AI description for.
stringCloud provider to scope the deletion to (for example, `aws`). Omit to delete every description for the tag key.
stringFilter descriptions to a specific cloud provider (for example, `aws`). Omit to return descriptions across all clouds.
+ +## `SELECT` examples + + + + +Get the Cloud Cost Management description for a single tag key. Use `filter[cloud]` to scope the lookup to a specific cloud provider; when omitted, the response resolves the description in fallback order (cloud-specific organization override, then cloudless organization default, then Datadog's global default). + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_descriptions +WHERE tag_key = '{{ tag_key }}' -- required +AND filter[cloud] = '{{ filter[cloud] }}' +; +``` + + + +List Cloud Cost Management tag key descriptions for the organization. Use `filter[cloud]` to scope the result to a single cloud provider; when omitted, both cross-cloud defaults and cloud-specific descriptions are returned. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_descriptions +WHERE filter[cloud] = '{{ filter[cloud] }}' +; +``` + + + + +## `REPLACE` examples + + + + +Create or update a Cloud Cost Management tag key description. The new description and optional cloud scoping are supplied in the request body. Omit `cloud` to set a cross-cloud default for the tag key. + +```sql +REPLACE datadog.cloud_costs.tag_descriptions +SET +data = '{{ data }}' +WHERE +tag_key = '{{ tag_key }}' --required +AND data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete a Cloud Cost Management tag key description. When `cloud` is omitted, deletes every description for the tag key, falling back to Datadog's global default when available. When `cloud` is provided, deletes only the description scoped to that cloud provider. + +```sql +DELETE FROM datadog.cloud_costs.tag_descriptions +WHERE tag_key = '{{ tag_key }}' --required +AND cloud = '{{ cloud }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Use AI to draft a Cloud Cost Management tag key description based on associated cost data. The generated description is returned in the response and is not persisted by this endpoint; follow up with `UpsertCostTagDescriptionByKey` to save it. + +```sql +EXEC datadog.cloud_costs.tag_descriptions.generate_cost_tag_description_by_key +@tag_key='{{ tag_key }}' --required +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_keys/index.md b/website/docs/services/cloud_costs/tag_keys/index.md new file mode 100644 index 0000000..30e5175 --- /dev/null +++ b/website/docs/services/cloud_costs/tag_keys/index.md @@ -0,0 +1,215 @@ +--- +title: tag_keys +hide_title: false +hide_table_of_contents: false +keywords: + - tag_keys + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_keys resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe tag key identifier. (example: providername)
objectAttributes of a Cloud Cost Management tag key.
stringType of the Cloud Cost Management tag key resource. (cost_tag_key) (default: cost_tag_key, example: cost_tag_key)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe tag key identifier. (example: providername)
objectAttributes of a Cloud Cost Management tag key.
stringType of the Cloud Cost Management tag key resource. (cost_tag_key) (default: cost_tag_key, example: cost_tag_key)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
tag_keyfilter[metric], page[size]Get details for a specific Cloud Cost Management tag key, including example tag values and description.
filter[metric], filter[tags]List Cloud Cost Management tag keys.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe Cloud Cost Management tag key. Tag keys can contain forward slashes (for example, `kubernetes/instance`).
stringThe Cloud Cost Management metric to scope the tag keys to. When omitted, returns tag keys across all metrics.
arrayFilter to return only tag keys that appear with the given `key:value` tag values. For example, `filter[tags]=providername:aws` returns tag keys found on the same cost data, such as `is_aws_ec2_compute` and `aws_instance_type`.
integer (int32)Controls the size of the internal tag value search scope. This does **not** restrict the number of example tag values returned in the response. Defaults to 50, maximum 10000.
+ +## `SELECT` examples + + + + +Get details for a specific Cloud Cost Management tag key, including example tag values and description. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_keys +WHERE tag_key = '{{ tag_key }}' -- required +AND filter[metric] = '{{ filter[metric] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + + +List Cloud Cost Management tag keys. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_keys +WHERE filter[metric] = '{{ filter[metric] }}' +AND filter[tags] = '{{ filter[tags] }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_metadata/index.md b/website/docs/services/cloud_costs/tag_metadata/index.md new file mode 100644 index 0000000..22ca68d --- /dev/null +++ b/website/docs/services/cloud_costs/tag_metadata/index.md @@ -0,0 +1,169 @@ +--- +title: tag_metadata +hide_title: false +hide_table_of_contents: false +keywords: + - tag_metadata + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_metadata resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA composite identifier of the form `tag_key:metric` for monthly roll-ups, or `tag_key:metric:YYYY-MM-DD` when `filter[daily]=true`. (example: env:aws.cost.net.amortized)
objectAttributes of a Cloud Cost Management tag key metadata entry.
stringType of the Cloud Cost Management tag key metadata resource. (cost_tag_key_metadata) (default: cost_tag_key_metadata, example: cost_tag_key_metadata)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[month]filter[provider], filter[metric], filter[tag_key], filter[daily]List Cloud Cost Management tag key metadata, including row counts, cost covered, cardinality, and a sample of top tag values per cloud account. Use `filter[daily]=true` to return daily rows instead of the default monthly roll-up.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe month to scope the query to, in `YYYY-MM` format. (example: 2026-02)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringWhen `true`, return one row per day with the day in the `date` attribute. Defaults to the monthly roll-up when omitted.
stringFilter results to a specific Cloud Cost Management metric (for example, `aws.cost.net.amortized`). When omitted, every available metric for the requested period is returned.
stringFilter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive.
stringRestrict results to a single tag key.
+ +## `SELECT` examples + + + + +List Cloud Cost Management tag key metadata, including row counts, cost covered, cardinality, and a sample of top tag values per cloud account. Use `filter[daily]=true` to return daily rows instead of the default monthly roll-up. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_metadata +WHERE filter[month] = '{{ filter[month] }}' -- required +AND filter[provider] = '{{ filter[provider] }}' +AND filter[metric] = '{{ filter[metric] }}' +AND filter[tag_key] = '{{ filter[tag_key] }}' +AND filter[daily] = '{{ filter[daily] }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_metadatum_currencies/index.md b/website/docs/services/cloud_costs/tag_metadatum_currencies/index.md new file mode 100644 index 0000000..715aacc --- /dev/null +++ b/website/docs/services/cloud_costs/tag_metadatum_currencies/index.md @@ -0,0 +1,145 @@ +--- +title: tag_metadatum_currencies +hide_title: false +hide_table_of_contents: false +keywords: + - tag_metadatum_currencies + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_metadatum_currencies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe currency code (for example, `USD`). (example: USD)
stringType of the Cloud Cost Management billing currency resource. (cost_currency) (default: cost_currency, example: cost_currency)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[month]filter[provider]Get the dominant billing currency observed in Cloud Cost Management data for the requested period. The response wraps the currency in a JSON:API `data` array containing at most one entry; the array is empty when no currency data is available.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe month to scope the query to, in `YYYY-MM` format. (example: 2026-02)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive.
+ +## `SELECT` examples + + + + +Get the dominant billing currency observed in Cloud Cost Management data for the requested period. The response wraps the currency in a JSON:API `data` array containing at most one entry; the array is empty when no currency data is available. + +```sql +SELECT +id, +type +FROM datadog.cloud_costs.tag_metadatum_currencies +WHERE filter[month] = '{{ filter[month] }}' -- required +AND filter[provider] = '{{ filter[provider] }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_metadatum_metrics/index.md b/website/docs/services/cloud_costs/tag_metadatum_metrics/index.md new file mode 100644 index 0000000..cabaf05 --- /dev/null +++ b/website/docs/services/cloud_costs/tag_metadatum_metrics/index.md @@ -0,0 +1,145 @@ +--- +title: tag_metadatum_metrics +hide_title: false +hide_table_of_contents: false +keywords: + - tag_metadatum_metrics + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_metadatum_metrics resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name, for example `aws.cost.net.amortized`. (example: aws.cost.net.amortized)
stringType of the Cloud Cost Management available metric resource. (cost_metric) (default: cost_metric, example: cost_metric)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[month]filter[provider]List Cloud Cost Management metrics that have data for the requested period.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe month to scope the query to, in `YYYY-MM` format. (example: 2026-02)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive.
+ +## `SELECT` examples + + + + +List Cloud Cost Management metrics that have data for the requested period. + +```sql +SELECT +id, +type +FROM datadog.cloud_costs.tag_metadatum_metrics +WHERE filter[month] = '{{ filter[month] }}' -- required +AND filter[provider] = '{{ filter[provider] }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_metadatum_months/index.md b/website/docs/services/cloud_costs/tag_metadatum_months/index.md new file mode 100644 index 0000000..ff12a9e --- /dev/null +++ b/website/docs/services/cloud_costs/tag_metadatum_months/index.md @@ -0,0 +1,139 @@ +--- +title: tag_metadatum_months +hide_title: false +hide_table_of_contents: false +keywords: + - tag_metadatum_months + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_metadatum_months resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe month, in `YYYY-MM` format. (example: 2026-04)
stringType of the Cloud Cost Management tag metadata month resource. (cost_tag_metadata_month) (default: cost_tag_metadata_month, example: cost_tag_metadata_month)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[provider]List months that have Cloud Cost Management tag metadata for a given provider,<br />ordered most-recent first. The response is capped at 36 months.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringProvider to scope the query to. Use the value of the `providername` tag in CCM (for example, `aws`, `azure`, `gcp`, `Oracle`, `Confluent Cloud`, `Snowflake`). For costs uploaded through the Custom Costs API, use `custom`. Values are case-sensitive. (example: aws)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List months that have Cloud Cost Management tag metadata for a given provider,<br />ordered most-recent first. The response is capped at 36 months. + +```sql +SELECT +id, +type +FROM datadog.cloud_costs.tag_metadatum_months +WHERE filter[provider] = '{{ filter[provider] }}' -- required +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_metadatum_orchestrators/index.md b/website/docs/services/cloud_costs/tag_metadatum_orchestrators/index.md new file mode 100644 index 0000000..86daa85 --- /dev/null +++ b/website/docs/services/cloud_costs/tag_metadatum_orchestrators/index.md @@ -0,0 +1,145 @@ +--- +title: tag_metadatum_orchestrators +hide_title: false +hide_table_of_contents: false +keywords: + - tag_metadatum_orchestrators + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_metadatum_orchestrators resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe orchestrator name, for example `kubernetes` or `ecs`. (example: kubernetes)
stringType of the Cloud Cost Management orchestrator resource. (cost_orchestrator) (default: cost_orchestrator, example: cost_orchestrator)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[month]filter[provider]List container orchestrators (for example, `kubernetes`, `ecs`) detected in Cloud Cost Management data for the requested period.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe month to scope the query to, in `YYYY-MM` format. (example: 2026-02)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive.
+ +## `SELECT` examples + + + + +List container orchestrators (for example, `kubernetes`, `ecs`) detected in Cloud Cost Management data for the requested period. + +```sql +SELECT +id, +type +FROM datadog.cloud_costs.tag_metadatum_orchestrators +WHERE filter[month] = '{{ filter[month] }}' -- required +AND filter[provider] = '{{ filter[provider] }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_metadatum_tag_sources/index.md b/website/docs/services/cloud_costs/tag_metadatum_tag_sources/index.md new file mode 100644 index 0000000..0f34258 --- /dev/null +++ b/website/docs/services/cloud_costs/tag_metadatum_tag_sources/index.md @@ -0,0 +1,157 @@ +--- +title: tag_metadatum_tag_sources +hide_title: false +hide_table_of_contents: false +keywords: + - tag_metadatum_tag_sources + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_metadatum_tag_sources resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe tag key identifier. Equal to the empty-tag sentinel `__empty_tag_key__` when the tag key is empty. (example: env)
objectAttributes of a Cloud Cost Management tag source.
stringType of the Cloud Cost Management tag source resource. (cost_tag_key_source) (default: cost_tag_key_source, example: cost_tag_key_source)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[month]filter[provider], filter[metric]List Cloud Cost Management tag keys observed for the requested period, along with the origin sources that produced them (for example, `aws-user-defined`, `custom`).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe month to scope the query to, in `YYYY-MM` format. (example: 2026-02)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter results to tag keys that have data for a specific Cloud Cost Management metric (for example, `aws.cost.net.amortized`). When omitted, all tag keys for the requested period are returned.
stringFilter results to a specific provider. Common cloud values are `aws`, `azure`, `gcp`, `Oracle` (OCI), and `custom`. SaaS billing integrations (for example, `Snowflake`, `MongoDB`, `Databricks`) are also accepted using their display-name string. Values are case-sensitive.
+ +## `SELECT` examples + + + + +List Cloud Cost Management tag keys observed for the requested period, along with the origin sources that produced them (for example, `aws-user-defined`, `custom`). + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_metadatum_tag_sources +WHERE filter[month] = '{{ filter[month] }}' -- required +AND filter[provider] = '{{ filter[provider] }}' +AND filter[metric] = '{{ filter[metric] }}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_pipeline_ruleset_statuses/index.md b/website/docs/services/cloud_costs/tag_pipeline_ruleset_statuses/index.md new file mode 100644 index 0000000..5aed4d8 --- /dev/null +++ b/website/docs/services/cloud_costs/tag_pipeline_ruleset_statuses/index.md @@ -0,0 +1,139 @@ +--- +title: tag_pipeline_ruleset_statuses +hide_title: false +hide_table_of_contents: false +keywords: + - tag_pipeline_ruleset_statuses + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_pipeline_ruleset_statuses resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the ruleset. (example: 55ef2385-9ae1-4410-90c4-5ac1b60fec10)
objectProcessing status for a tag pipeline ruleset.
stringRuleset status resource type. (ruleset_status) (default: ruleset_status, example: ruleset_status)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List the processing status of all tag pipeline rulesets. Returns only the ID and processing status for each ruleset.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List the processing status of all tag pipeline rulesets. Returns only the ID and processing status for each ruleset. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_pipeline_ruleset_statuses +; +``` + + diff --git a/website/docs/services/cloud_costs/tag_pipeline_rulesets/index.md b/website/docs/services/cloud_costs/tag_pipeline_rulesets/index.md new file mode 100644 index 0000000..efa6728 --- /dev/null +++ b/website/docs/services/cloud_costs/tag_pipeline_rulesets/index.md @@ -0,0 +1,388 @@ +--- +title: tag_pipeline_rulesets +hide_title: false +hide_table_of_contents: false +keywords: + - tag_pipeline_rulesets + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_pipeline_rulesets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `RulesetRespData` `id`.
objectThe definition of `RulesetRespDataAttributes` object.
stringRuleset resource type. (ruleset) (default: ruleset, example: ruleset)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `RulesetRespData` `id`.
objectThe definition of `RulesetRespDataAttributes` object.
stringRuleset resource type. (ruleset) (default: ruleset, example: ruleset)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_idGet a specific tag pipeline ruleset - Retrieve a specific tag pipeline ruleset by its ID
List all tag pipeline rulesets - Retrieve a list of all tag pipeline rulesets for the organization
Create a new tag pipeline ruleset with the specified rules and configuration
ruleset_idUpdate a tag pipeline ruleset - Update an existing tag pipeline ruleset with new rules and configuration
ruleset_idDelete a tag pipeline ruleset - Delete an existing tag pipeline ruleset by its ID
dataReorder tag pipeline rulesets - Change the execution order of tag pipeline rulesets
Validate a tag pipeline query - Validate the syntax and structure of a tag pipeline query
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the ruleset
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific tag pipeline ruleset - Retrieve a specific tag pipeline ruleset by its ID + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_pipeline_rulesets +WHERE ruleset_id = '{{ ruleset_id }}' -- required +; +``` + + + +List all tag pipeline rulesets - Retrieve a list of all tag pipeline rulesets for the organization + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tag_pipeline_rulesets +; +``` + + + + +## `INSERT` examples + + + + +Create a new tag pipeline ruleset with the specified rules and configuration + +```sql +INSERT INTO datadog.cloud_costs.tag_pipeline_rulesets ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: tag_pipeline_rulesets + props: + - name: data + description: | + The definition of \`CreateRulesetRequestData\` object. + value: + attributes: + enabled: {{ enabled }} + rules: + - enabled: {{ enabled }} + mapping: + destination_key: "{{ destination_key }}" + if_not_exists: {{ if_not_exists }} + if_tag_exists: "{{ if_tag_exists }}" + source_keys: + - "{{ source_keys }}" + metadata: "{{ metadata }}" + name: "{{ name }}" + query: + addition: + key: "{{ key }}" + value: "{{ value }}" + case_insensitivity: {{ case_insensitivity }} + if_not_exists: {{ if_not_exists }} + if_tag_exists: "{{ if_tag_exists }}" + query: "{{ query }}" + reference_table: + case_insensitivity: {{ case_insensitivity }} + field_pairs: + - input_column: "{{ input_column }}" + output_key: "{{ output_key }}" + if_not_exists: {{ if_not_exists }} + if_tag_exists: "{{ if_tag_exists }}" + source_keys: + - "{{ source_keys }}" + table_name: "{{ table_name }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a tag pipeline ruleset - Update an existing tag pipeline ruleset with new rules and configuration + +```sql +UPDATE datadog.cloud_costs.tag_pipeline_rulesets +SET +data = '{{ data }}' +WHERE +ruleset_id = '{{ ruleset_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a tag pipeline ruleset - Delete an existing tag pipeline ruleset by its ID + +```sql +DELETE FROM datadog.cloud_costs.tag_pipeline_rulesets +WHERE ruleset_id = '{{ ruleset_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Reorder tag pipeline rulesets - Change the execution order of tag pipeline rulesets + +```sql +EXEC datadog.cloud_costs.tag_pipeline_rulesets.reorder_tag_pipelines_rulesets +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Validate a tag pipeline query - Validate the syntax and structure of a tag pipeline query + +```sql +EXEC datadog.cloud_costs.tag_pipeline_rulesets.validate_query +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/cloud_costs/tags/index.md b/website/docs/services/cloud_costs/tags/index.md new file mode 100644 index 0000000..8f22771 --- /dev/null +++ b/website/docs/services/cloud_costs/tags/index.md @@ -0,0 +1,169 @@ +--- +title: tags +hide_title: false +hide_table_of_contents: false +keywords: + - tags + - cloud_costs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tags resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe tag identifier, equal to its `key:value` representation. (example: providername:aws)
objectAttributes of a Cloud Cost Management tag.
stringType of the Cloud Cost Management tag resource. (cost_tag) (default: cost_tag, example: cost_tag)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[metric], filter[match], filter[tags], filter[tag_keys], page[size]List Cloud Cost Management tags for a given metric.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA substring used to filter the returned tags by name.
stringThe Cloud Cost Management metric to scope the tags to. When omitted, returns tags across all metrics.
arrayRestrict the returned tags to those whose key matches one of the given tag keys.
arrayFilter to return only tags that appear with the given `key:value` tag values. For example, `filter[tags]=providername:aws` returns tags found on the same cost data, such as `aws_instance_type:t3.micro` and `aws_instance_type:m5.large`.
integer (int32)Controls the size of the internal tag search scope. This does **not** restrict the number of tags returned in the response. Defaults to 50, maximum 10000.
+ +## `SELECT` examples + + + + +List Cloud Cost Management tags for a given metric. + +```sql +SELECT +id, +attributes, +type +FROM datadog.cloud_costs.tags +WHERE filter[metric] = '{{ filter[metric] }}' +AND filter[match] = '{{ filter[match] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND filter[tag_keys] = '{{ filter[tag_keys] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + diff --git a/website/docs/services/dashboards/annotation_pages/index.md b/website/docs/services/dashboards/annotation_pages/index.md new file mode 100644 index 0000000..68f15dd --- /dev/null +++ b/website/docs/services/dashboards/annotation_pages/index.md @@ -0,0 +1,157 @@ +--- +title: annotation_pages +hide_title: false +hide_table_of_contents: false +keywords: + - annotation_pages + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotation_pages resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the page, prefixed with the page type and joined by a colon (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). (example: dashboard:abc-def-xyz)
objectAttributes of the annotations on a page.
stringPage annotations resource type. (page_annotations) (example: page_annotations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, start_time, end_timeReturns all annotations on a specific page for a given time window, grouped by widget.<br />Unlike `ListAnnotations`, this endpoint returns a single structured object with annotations<br />indexed by their ID and a widget-to-annotation mapping for easy UI rendering.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)End of the time window in milliseconds since the Unix epoch. (example: 1704153600000)
stringThe ID of the page, prefixed with the page type and joined by a colon (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). (example: dashboard:abc-def-xyz)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the time window in milliseconds since the Unix epoch. (example: 1704067200000)
+ +## `SELECT` examples + + + + +Returns all annotations on a specific page for a given time window, grouped by widget.<br />Unlike `ListAnnotations`, this endpoint returns a single structured object with annotations<br />indexed by their ID and a widget-to-annotation mapping for easy UI rendering. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.annotation_pages +WHERE page_id = '{{ page_id }}' -- required +AND start_time = '{{ start_time }}' -- required +AND end_time = '{{ end_time }}' -- required +; +``` + + diff --git a/website/docs/services/dashboards/annotations/index.md b/website/docs/services/dashboards/annotations/index.md new file mode 100644 index 0000000..f257baa --- /dev/null +++ b/website/docs/services/dashboards/annotations/index.md @@ -0,0 +1,285 @@ +--- +title: annotations +hide_title: false +hide_table_of_contents: false +keywords: + - annotations + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier of the annotation. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an annotation returned in a response.
stringAnnotation resource type. (annotation) (example: annotation)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, start_time, end_timewidget_idReturns a flat list of annotations matching the given page, time window, and optional widget filter.
dataCreates a new annotation on a dashboard or notebook page.<br />Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`.<br />Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`).
annotation_id, dataUpdates an existing annotation.<br />Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`.<br />Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`).
annotation_idDeletes an existing annotation by ID.<br />Returns `204 No Content` if the annotation does not exist (idempotent).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the annotation. (example: 00000000-0000-0000-0000-000000000000)
integer (int64)End of the time window in milliseconds since the Unix epoch. (example: 1704153600000)
stringID of the page to list annotations for, prefixed with the page type and joined by a colon (for example, `dashboard:abc-def-xyz` or `notebook:1234567890`). (example: dashboard:abc-def-xyz)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Start of the time window in milliseconds since the Unix epoch. (example: 1704067200000)
stringOptional widget ID to restrict results to annotations on a specific widget.
+ +## `SELECT` examples + + + + +Returns a flat list of annotations matching the given page, time window, and optional widget filter. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.annotations +WHERE page_id = '{{ page_id }}' -- required +AND start_time = '{{ start_time }}' -- required +AND end_time = '{{ end_time }}' -- required +AND widget_id = '{{ widget_id }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new annotation on a dashboard or notebook page.<br />Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`.<br />Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`). + +```sql +INSERT INTO datadog.dashboards.annotations ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: annotations + props: + - name: data + description: | + Data for creating an annotation. + value: + attributes: + color: "{{ color }}" + description: "{{ description }}" + end_time: {{ end_time }} + page_id: "{{ page_id }}" + start_time: {{ start_time }} + type: "{{ type }}" + widget_ids: + - "{{ widget_ids }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates an existing annotation.<br />Valid `color` values: `gray`, `blue`, `purple`, `green`, `yellow`, `red`.<br />Valid `type` values: `pointInTime` (marks a single moment) or `timeRegion` (spans a range and requires `end_time`). + +```sql +REPLACE datadog.dashboards.annotations +SET +data = '{{ data }}' +WHERE +annotation_id = '{{ annotation_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Deletes an existing annotation by ID.<br />Returns `204 No Content` if the annotation does not exist (idempotent). + +```sql +DELETE FROM datadog.dashboards.annotations +WHERE annotation_id = '{{ annotation_id }}' --required +; +``` + + diff --git a/website/docs/services/dashboards/dashboard_list_items/index.md b/website/docs/services/dashboards/dashboard_list_items/index.md index 18dec49..65cd830 100644 --- a/website/docs/services/dashboards/dashboard_list_items/index.md +++ b/website/docs/services/dashboards/dashboard_list_items/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a dashboard_list_items res ## Overview - +
Namedashboard_list_items
Name
TypeResource
Id
@@ -111,7 +112,7 @@ The following fields are returned by `SELECT` queries: string - The type of the dashboard. (example: host_timeboard) + The type of the dashboard. (custom_timeboard, custom_screenboard, integration_screenboard, integration_timeboard, host_timeboard) (example: host_timeboard) @@ -141,28 +142,28 @@ The following methods are available for this resource: - dashboard_list_id, region + dashboard_list_id Fetch the dashboard list’s dashboard definitions. - dashboard_list_id, region + dashboard_list_id Add dashboards to an existing dashboard list. - dashboard_list_id, region + dashboard_list_id Update dashboards of an existing dashboard list. - dashboard_list_id, region + dashboard_list_id Delete dashboards from an existing dashboard list. @@ -187,10 +188,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) ID of the dashboard list to delete items from. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -225,7 +226,6 @@ type, url FROM datadog.dashboards.dashboard_list_items WHERE dashboard_list_id = '{{ dashboard_list_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -247,14 +247,12 @@ Add dashboards to an existing dashboard list. ```sql INSERT INTO datadog.dashboards.dashboard_list_items ( -data__dashboards, -dashboard_list_id, -region +dashboards, +dashboard_list_id ) SELECT '{{ dashboards }}', -'{{ dashboard_list_id }}', -'{{ region }}' +'{{ dashboard_list_id }}' RETURNING added_dashboards_to_list ; @@ -262,21 +260,20 @@ added_dashboards_to_list -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: dashboard_list_items props: - name: dashboard_list_id - value: integer (int64) - description: Required parameter for the dashboard_list_items resource. - - name: region - value: string + value: "{{ dashboard_list_id }}" description: Required parameter for the dashboard_list_items resource. - name: dashboards - value: array description: | List of dashboards to add the dashboard list. -``` + value: + - id: "{{ id }}" + type: "{{ type }}" +`} +
@@ -296,10 +293,9 @@ Update dashboards of an existing dashboard list. ```sql REPLACE datadog.dashboards.dashboard_list_items SET -data__dashboards = '{{ dashboards }}' +dashboards = '{{ dashboards }}' WHERE dashboard_list_id = '{{ dashboard_list_id }}' --required -AND region = '{{ region }}' --required RETURNING dashboards; ``` @@ -322,7 +318,6 @@ Delete dashboards from an existing dashboard list. ```sql DELETE FROM datadog.dashboards.dashboard_list_items WHERE dashboard_list_id = '{{ dashboard_list_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/dashboards/dashboard_lists/index.md b/website/docs/services/dashboards/dashboard_lists/index.md new file mode 100644 index 0000000..9e41bdf --- /dev/null +++ b/website/docs/services/dashboards/dashboard_lists/index.md @@ -0,0 +1,377 @@ +--- +title: dashboard_lists +hide_title: false +hide_table_of_contents: false +keywords: + - dashboard_lists + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dashboard_lists resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the dashboard list.
stringThe name of the dashboard list. (example: My Dashboard)
objectObject describing the creator of the shared element.
string (date-time)Date of creation of the dashboard list.
integer (int64)The number of dashboards in the list.
booleanWhether or not the list is in the favorites.
string (date-time)Date of last edition of the dashboard list.
stringThe type of dashboard list. (example: manual_dashboard_list)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the dashboard list.
stringThe name of the dashboard list. (example: My Dashboard)
objectObject describing the creator of the shared element.
string (date-time)Date of creation of the dashboard list.
integer (int64)The number of dashboards in the list.
booleanWhether or not the list is in the favorites.
string (date-time)Date of last edition of the dashboard list.
stringThe type of dashboard list. (example: manual_dashboard_list)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
list_idFetch an existing dashboard list's definition.
Fetch all of your existing dashboard list definitions.
nameCreate an empty dashboard list.
list_id, nameUpdate the name of a dashboard list.
list_idDelete a dashboard list.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)ID of the dashboard list to delete.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Fetch an existing dashboard list's definition. + +```sql +SELECT +id, +name, +author, +created, +dashboard_count, +is_favorite, +modified, +type +FROM datadog.dashboards.dashboard_lists +WHERE list_id = '{{ list_id }}' -- required +; +``` + + + +Fetch all of your existing dashboard list definitions. + +```sql +SELECT +id, +name, +author, +created, +dashboard_count, +is_favorite, +modified, +type +FROM datadog.dashboards.dashboard_lists +; +``` + + + + +## `INSERT` examples + + + + +Create an empty dashboard list. + +```sql +INSERT INTO datadog.dashboards.dashboard_lists ( +name +) +SELECT +'{{ name }}' /* required */ +RETURNING +id, +name, +author, +created, +dashboard_count, +is_favorite, +modified, +type +; +``` + + + +{`# Description fields are for documentation purposes +- name: dashboard_lists + props: + - name: name + value: "{{ name }}" + description: | + The name of the dashboard list. +`} + + + + + +## `REPLACE` examples + + + + +Update the name of a dashboard list. + +```sql +REPLACE datadog.dashboards.dashboard_lists +SET +name = '{{ name }}' +WHERE +list_id = '{{ list_id }}' --required +AND name = '{{ name }}' --required +RETURNING +id, +name, +author, +created, +dashboard_count, +is_favorite, +modified, +type; +``` + + + + +## `DELETE` examples + + + + +Delete a dashboard list. + +```sql +DELETE FROM datadog.dashboards.dashboard_lists +WHERE list_id = '{{ list_id }}' --required +; +``` + + diff --git a/website/docs/services/dashboards/dashboard_usage/index.md b/website/docs/services/dashboards/dashboard_usage/index.md new file mode 100644 index 0000000..cb31bab --- /dev/null +++ b/website/docs/services/dashboards/dashboard_usage/index.md @@ -0,0 +1,220 @@ +--- +title: dashboard_usage +hide_title: false +hide_table_of_contents: false +keywords: + - dashboard_usage + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dashboard_usage resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe dashboard ID. (example: q5j-nti-fv6)
objectUsage statistics for a dashboard. The `viewer` field and all view-count fields (`total_views`, `viewed_at`, `total_views_by_type`) are populated only when Real User Monitoring (RUM) is active for the org.
stringThe type of the resource. Always `dashboards-usages`. (dashboards-usages) (default: dashboards-usages, example: dashboards-usages)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe dashboard ID. (example: q5j-nti-fv6)
objectUsage statistics for a dashboard. The `viewer` field and all view-count fields (`total_views`, `viewed_at`, `total_views_by_type`) are populated only when Real User Monitoring (RUM) is active for the org.
stringThe type of the resource. Always `dashboards-usages`. (dashboards-usages) (default: dashboards-usages, example: dashboards-usages)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dashboard_idGet usage statistics for a single dashboard. The response includes view counts, the most recent view and edit times, widget counts, and the dashboard quality score. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included.
page[limit], page[offset], filter[edited_before], filter[viewed_before]Get paginated usage statistics for every dashboard in the caller's organization. Use `page[limit]` and `page[offset]` to walk the result set. Use `filter[edited_before]` or `filter[viewed_before]` to narrow results by edit or view date. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the dashboard.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringReturn only dashboards whose last edit (`edited_at`) is strictly before this ISO 8601 timestamp (`edited_at < value`; boundary matches are excluded). Must include a timezone offset (for example, `Z` or `+00:00`); naive timestamps return HTTP 400.
stringReturn only dashboards whose most recent view (`viewed_at`) is strictly before this ISO 8601 timestamp, including dashboards that have never been viewed. Must include a timezone offset; naive timestamps return HTTP 400. Orgs without Real User Monitoring (RUM) will see all dashboards returned by this filter.
integer (int64)Maximum number of dashboards to return per page. Server-side maximum is 500; values above 500 return a 400 Bad Request.
integer (int64)Zero-based offset into the result set.
+ +## `SELECT` examples + + + + +Get usage statistics for a single dashboard. The response includes view counts, the most recent view and edit times, widget counts, and the dashboard quality score. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.dashboard_usage +WHERE dashboard_id = '{{ dashboard_id }}' -- required +; +``` + + + +Get paginated usage statistics for every dashboard in the caller's organization. Use `page[limit]` and `page[offset]` to walk the result set. Use `filter[edited_before]` or `filter[viewed_before]` to narrow results by edit or view date. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM. **View counts are refreshed once per day** and **only reflect views recorded starting January 2025**; views prior to that date are not included. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.dashboard_usage +WHERE page[limit] = '{{ page[limit] }}' +AND page[offset] = '{{ page[offset] }}' +AND filter[edited_before] = '{{ filter[edited_before] }}' +AND filter[viewed_before] = '{{ filter[viewed_before] }}' +; +``` + + diff --git a/website/docs/services/dashboards/dashboards/index.md b/website/docs/services/dashboards/dashboards/index.md new file mode 100644 index 0000000..c0c121e --- /dev/null +++ b/website/docs/services/dashboards/dashboards/index.md @@ -0,0 +1,1570 @@ +--- +title: dashboards +hide_title: false +hide_table_of_contents: false +keywords: + - dashboards + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dashboards resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the dashboard. (example: 123-abc-456)
stringName of the dashboard author. (example: John Doe)
stringIdentifier of the dashboard author. (example: test@datadoghq.com)
string (date-time)Creation date of the dashboard.
objectThe default timeframe applied when opening the dashboard. Set to `null` to clear.
stringDescription of the dashboard.
booleanWhether this dashboard is read-only. If True, only the author and admins can make changes to it. This property is deprecated; please use the [Restriction Policies API](https:​//docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards.
stringLayout type of the dashboard. (ordered, free) (example: ordered)
string (date-time)Modification date of the dashboard.
arrayList of handles of users to notify when changes are made to this dashboard.
stringReflow type for a **new dashboard layout** dashboard. Set this only when layout type is 'ordered'. If set to 'fixed', the dashboard expects all widgets to have a layout, and if it's set to 'auto', widgets should not have layouts. (auto, fixed)
arrayA list of role identifiers. Only the author and users associated with at least one of these roles can edit this dashboard.
arrayList of tabs for organizing dashboard widgets into groups.
arrayList of team names representing ownership of a dashboard.
arrayArray of template variables saved views.
arrayList of template variables for this dashboard.
stringTitle of the dashboard. (example: )
stringThe URL of the dashboard. (example: /dashboard/123-abc-456/example-dashboard-title)
arrayList of widgets to display on the dashboard.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringDashboard identifier.
stringIdentifier of the dashboard author.
string (date-time)Creation date of the dashboard.
stringDescription of the dashboard.
booleanWhether this dashboard is read-only. If True, only the author and admins can make changes to it. This property is deprecated; please use the [Restriction Policies API](https:​//docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards.
stringLayout type of the dashboard. (ordered, free) (example: ordered)
string (date-time)Modification date of the dashboard.
stringTitle of the dashboard.
stringURL of the dashboard.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dashboard_idGet a dashboard using the specified ID.
filter[shared], filter[deleted], count, startGet all dashboards.<br /><br />**Note**: This query will only return custom created or cloned dashboards.<br />This query will not return preset dashboards.
title, layout_type, widgetsCreate a dashboard using the specified options. When defining queries in your widgets, take note of which queries should have the `as_count()` or `as_rate()` modifiers appended.<br />Refer to the following [documentation](https:​//docs.datadoghq.com/developers/metrics/type_modifiers/?tab=count#in-application-modifiers) for more information on these modifiers.
dataRestore dashboards using the specified IDs. If there are any failures, no dashboards will be restored (partial success is not allowed).
dashboard_id, title, layout_type, widgetsUpdate a dashboard using the specified ID.
dashboard_idDelete a dashboard using the specified ID.
Delete dashboards using the specified IDs. If there are any failures, no dashboards will be deleted (partial success is not allowed).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the dashboard.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The maximum number of dashboards returned in the list.
booleanWhen `true`, this query returns only deleted custom-created or cloned dashboards. This parameter is incompatible with `filter[shared]`.
booleanWhen `true`, this query only returns shared custom created or cloned dashboards.
integer (int64)The specific offset to use as the beginning of the returned response.
+ +## `SELECT` examples + + + + +Get a dashboard using the specified ID. + +```sql +SELECT +id, +author_name, +author_handle, +created_at, +default_timeframe, +description, +is_read_only, +layout_type, +modified_at, +notify_list, +reflow_type, +restricted_roles, +tabs, +tags, +template_variable_presets, +template_variables, +title, +url, +widgets +FROM datadog.dashboards.dashboards +WHERE dashboard_id = '{{ dashboard_id }}' -- required +; +``` + + + +Get all dashboards.<br /><br />**Note**: This query will only return custom created or cloned dashboards.<br />This query will not return preset dashboards. + +```sql +SELECT +id, +author_handle, +created_at, +description, +is_read_only, +layout_type, +modified_at, +title, +url +FROM datadog.dashboards.dashboards +WHERE filter[shared] = '{{ filter[shared] }}' +AND filter[deleted] = '{{ filter[deleted] }}' +AND count = '{{ count }}' +AND start = '{{ start }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a dashboard using the specified options. When defining queries in your widgets, take note of which queries should have the `as_count()` or `as_rate()` modifiers appended.<br />Refer to the following [documentation](https:​//docs.datadoghq.com/developers/metrics/type_modifiers/?tab=count#in-application-modifiers) for more information on these modifiers. + +```sql +INSERT INTO datadog.dashboards.dashboards ( +default_timeframe, +description, +is_read_only, +layout_type, +notify_list, +reflow_type, +restricted_roles, +tabs, +tags, +template_variable_presets, +template_variables, +title, +widgets +) +SELECT +'{{ default_timeframe }}', +'{{ description }}', +{{ is_read_only }}, +'{{ layout_type }}' /* required */, +'{{ notify_list }}', +'{{ reflow_type }}', +'{{ restricted_roles }}', +'{{ tabs }}', +'{{ tags }}', +'{{ template_variable_presets }}', +'{{ template_variables }}', +'{{ title }}' /* required */, +'{{ widgets }}' /* required */ +RETURNING +id, +author_name, +author_handle, +created_at, +default_timeframe, +description, +is_read_only, +layout_type, +modified_at, +notify_list, +reflow_type, +restricted_roles, +tabs, +tags, +template_variable_presets, +template_variables, +title, +url, +widgets +; +``` + + + +{`# Description fields are for documentation purposes +- name: dashboards + props: + - name: default_timeframe + description: | + The default timeframe applied when opening the dashboard. Set to \`null\` to clear. + value: + type: "{{ type }}" + unit: "{{ unit }}" + value: {{ value }} + from: {{ from }} + to: {{ to }} + - name: description + value: "{{ description }}" + description: | + Description of the dashboard. + - name: is_read_only + value: {{ is_read_only }} + description: | + Whether this dashboard is read-only. If True, only the author and admins can make changes to it. + This property is deprecated; please use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) instead to manage write authorization for individual dashboards. + - name: layout_type + value: "{{ layout_type }}" + description: | + Layout type of the dashboard. + valid_values: ['ordered', 'free'] + - name: notify_list + value: + - "{{ notify_list }}" + description: | + List of handles of users to notify when changes are made to this dashboard. + - name: reflow_type + value: "{{ reflow_type }}" + description: | + Reflow type for a **new dashboard layout** dashboard. Set this only when layout type is 'ordered'. + If set to 'fixed', the dashboard expects all widgets to have a layout, and if it's set to 'auto', + widgets should not have layouts. + valid_values: ['auto', 'fixed'] + - name: restricted_roles + value: + - "{{ restricted_roles }}" + description: | + A list of role identifiers. Only the author and users associated with at least one of these roles can edit this dashboard. + - name: tabs + description: | + List of tabs for organizing dashboard widgets into groups. + value: + - id: "{{ id }}" + name: "{{ name }}" + widget_ids: "{{ widget_ids }}" + - name: tags + value: + - "{{ tags }}" + description: | + List of team names representing ownership of a dashboard. + - name: template_variable_presets + description: | + Array of template variables saved views. + value: + - name: "{{ name }}" + template_variables: "{{ template_variables }}" + - name: template_variables + description: | + List of template variables for this dashboard. + value: + - available_values: "{{ available_values }}" + default: "{{ default }}" + defaults: "{{ defaults }}" + name: "{{ name }}" + prefix: "{{ prefix }}" + type: "{{ type }}" + - name: title + value: "{{ title }}" + description: | + Title of the dashboard. + - name: widgets + description: | + List of widgets to display on the dashboard. + value: + - definition: + alert_id: "{{ alert_id }}" + description: "{{ description }}" + time: + hide_incomplete_cost_data: {{ hide_incomplete_cost_data }} + live_span: "{{ live_span }}" + type: "{{ type }}" + unit: "{{ unit }}" + value: {{ value }} + from: {{ from }} + to: {{ to }} + title: "{{ title }}" + title_align: "{{ title_align }}" + title_size: "{{ title_size }}" + type: "{{ type }}" + viz_type: "{{ viz_type }}" + precision: {{ precision }} + text_align: "{{ text_align }}" + unit: "{{ unit }}" + custom_links: + - is_hidden: {{ is_hidden }} + label: "{{ label }}" + link: "{{ link }}" + override_label: "{{ override_label }}" + requests: + - apm_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + audit_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + conditional_formats: "{{ conditional_formats }}" + event_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + formulas: "{{ formulas }}" + log_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + network_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + process_query: + filter_by: + - "{{ filter_by }}" + limit: {{ limit }} + metric: "{{ metric }}" + search_by: "{{ search_by }}" + profile_metrics_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + q: "{{ q }}" + queries: "{{ queries }}" + response_format: "{{ response_format }}" + rum_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + security_query: + compute: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + order: "{{ order }}" + index: "{{ index }}" + multi_compute: + - aggregation: "{{ aggregation }}" + facet: "{{ facet }}" + interval: {{ interval }} + search: + query: "{{ query }}" + sort: + count: {{ count }} + order_by: + - index: {{ index }} + order: "{{ order }}" + type: "{{ type }}" + name: "{{ name }}" + style: + line_type: "{{ line_type }}" + line_width: "{{ line_width }}" + order_by: "{{ order_by }}" + palette: "{{ palette }}" + style: + display: + legend: "{{ legend }}" + type: "{{ type }}" + palette: "{{ palette }}" + scaling: "{{ scaling }}" + check: "{{ check }}" + group: "{{ group }}" + group_by: + - "{{ group_by }}" + grouping: "{{ grouping }}" + tags: + - "{{ tags }}" + legend_size: "{{ legend_size }}" + markers: + - display_type: "{{ display_type }}" + label: "{{ label }}" + time: "{{ time }}" + value: "{{ value }}" + show_legend: {{ show_legend }} + xaxis: + include_zero: {{ include_zero }} + max: "{{ max }}" + min: "{{ min }}" + num_buckets: {{ num_buckets }} + scale: "{{ scale }}" + yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + event_size: "{{ event_size }}" + query: "{{ query }}" + tags_execution: "{{ tags_execution }}" + background_color: "{{ background_color }}" + color: "{{ color }}" + font_size: "{{ font_size }}" + text: "{{ text }}" + grouped_display: "{{ grouped_display }}" + view: + focus: "{{ focus }}" + banner_img: "{{ banner_img }}" + layout_type: "{{ layout_type }}" + show_title: {{ show_title }} + widgets: + - definition: + alert_id: "{{ alert_id }}" + description: "{{ description }}" + time: + hide_incomplete_cost_data: {{ hide_incomplete_cost_data }} + live_span: "{{ live_span }}" + type: "{{ type }}" + unit: "{{ unit }}" + value: {{ value }} + from: {{ from }} + to: {{ to }} + title: "{{ title }}" + title_align: "{{ title_align }}" + title_size: "{{ title_size }}" + type: "{{ type }}" + viz_type: "{{ viz_type }}" + precision: {{ precision }} + text_align: "{{ text_align }}" + unit: "{{ unit }}" + custom_links: + - is_hidden: {{ is_hidden }} + label: "{{ label }}" + link: "{{ link }}" + override_label: "{{ override_label }}" + requests: + - apm_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + audit_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + conditional_formats: "{{ conditional_formats }}" + event_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + formulas: "{{ formulas }}" + log_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + network_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + process_query: + filter_by: "{{ filter_by }}" + limit: {{ limit }} + metric: "{{ metric }}" + search_by: "{{ search_by }}" + profile_metrics_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + q: "{{ q }}" + queries: "{{ queries }}" + response_format: "{{ response_format }}" + rum_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + security_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + sort: + count: {{ count }} + order_by: "{{ order_by }}" + style: + line_type: "{{ line_type }}" + line_width: "{{ line_width }}" + order_by: "{{ order_by }}" + palette: "{{ palette }}" + style: + display: "{{ display }}" + palette: "{{ palette }}" + scaling: "{{ scaling }}" + check: "{{ check }}" + group: "{{ group }}" + group_by: + - "{{ group_by }}" + grouping: "{{ grouping }}" + tags: + - "{{ tags }}" + legend_size: "{{ legend_size }}" + markers: + - display_type: "{{ display_type }}" + label: "{{ label }}" + time: "{{ time }}" + value: "{{ value }}" + show_legend: {{ show_legend }} + xaxis: + include_zero: {{ include_zero }} + max: "{{ max }}" + min: "{{ min }}" + num_buckets: {{ num_buckets }} + scale: "{{ scale }}" + yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + event_size: "{{ event_size }}" + query: "{{ query }}" + tags_execution: "{{ tags_execution }}" + background_color: "{{ background_color }}" + color: "{{ color }}" + font_size: "{{ font_size }}" + text: "{{ text }}" + grouped_display: "{{ grouped_display }}" + view: + focus: "{{ focus }}" + banner_img: "{{ banner_img }}" + layout_type: "{{ layout_type }}" + show_title: {{ show_title }} + widgets: + - definition: + alert_id: "{{ alert_id }}" + description: "{{ description }}" + time: "{{ time }}" + title: "{{ title }}" + title_align: "{{ title_align }}" + title_size: "{{ title_size }}" + type: "{{ type }}" + viz_type: "{{ viz_type }}" + precision: {{ precision }} + text_align: "{{ text_align }}" + unit: "{{ unit }}" + custom_links: "{{ custom_links }}" + requests: "{{ requests }}" + style: "{{ style }}" + check: "{{ check }}" + group: "{{ group }}" + group_by: "{{ group_by }}" + grouping: "{{ grouping }}" + tags: "{{ tags }}" + legend_size: "{{ legend_size }}" + markers: "{{ markers }}" + show_legend: {{ show_legend }} + xaxis: "{{ xaxis }}" + yaxis: "{{ yaxis }}" + event_size: "{{ event_size }}" + query: "{{ query }}" + tags_execution: "{{ tags_execution }}" + background_color: "{{ background_color }}" + color: "{{ color }}" + font_size: "{{ font_size }}" + text: "{{ text }}" + grouped_display: "{{ grouped_display }}" + view: "{{ view }}" + banner_img: "{{ banner_img }}" + layout_type: "{{ layout_type }}" + show_title: {{ show_title }} + widgets: "{{ widgets }}" + events: "{{ events }}" + no_group_hosts: {{ no_group_hosts }} + no_metric_hosts: {{ no_metric_hosts }} + node_type: "{{ node_type }}" + notes: "{{ notes }}" + scope: "{{ scope }}" + url: "{{ url }}" + has_background: {{ has_background }} + has_border: {{ has_border }} + horizontal_align: "{{ horizontal_align }}" + margin: "{{ margin }}" + sizing: "{{ sizing }}" + url_dark_theme: "{{ url_dark_theme }}" + vertical_align: "{{ vertical_align }}" + columns: "{{ columns }}" + indexes: "{{ indexes }}" + logset: "{{ logset }}" + message_display: "{{ message_display }}" + show_date_column: {{ show_date_column }} + show_message_column: {{ show_message_column }} + sort: "{{ sort }}" + color_preference: "{{ color_preference }}" + count: {{ count }} + display_format: "{{ display_format }}" + hide_zero_counts: {{ hide_zero_counts }} + show_last_triggered: {{ show_last_triggered }} + show_priority: {{ show_priority }} + start: {{ start }} + summary_type: "{{ summary_type }}" + content: "{{ content }}" + has_padding: {{ has_padding }} + show_tick: {{ show_tick }} + tick_edge: "{{ tick_edge }}" + tick_pos: "{{ tick_pos }}" + powerpack_id: "{{ powerpack_id }}" + template_variables: "{{ template_variables }}" + legend: "{{ legend }}" + autoscale: {{ autoscale }} + custom_unit: "{{ custom_unit }}" + timeseries_background: "{{ timeseries_background }}" + inputs: "{{ inputs }}" + workflow_id: "{{ workflow_id }}" + additional_query_filters: "{{ additional_query_filters }}" + global_time_target: "{{ global_time_target }}" + show_error_budget: {{ show_error_budget }} + slo_id: "{{ slo_id }}" + time_windows: "{{ time_windows }}" + view_mode: "{{ view_mode }}" + view_type: "{{ view_type }}" + color_by_groups: "{{ color_by_groups }}" + show_other_links: {{ show_other_links }} + sort_nodes: {{ sort_nodes }} + filters: "{{ filters }}" + service: "{{ service }}" + env: "{{ env }}" + show_breakdown: {{ show_breakdown }} + show_distribution: {{ show_distribution }} + show_errors: {{ show_errors }} + show_hits: {{ show_hits }} + show_latency: {{ show_latency }} + show_resource_list: {{ show_resource_list }} + size_format: "{{ size_format }}" + span_name: "{{ span_name }}" + has_uniform_y_axes: {{ has_uniform_y_axes }} + size: "{{ size }}" + source_widget_definition: "{{ source_widget_definition }}" + split_config: "{{ split_config }}" + hide_total: {{ hide_total }} + has_search_bar: "{{ has_search_bar }}" + legend_columns: "{{ legend_columns }}" + legend_layout: "{{ legend_layout }}" + right_yaxis: "{{ right_yaxis }}" + color_by: "{{ color_by }}" + size_by: "{{ size_by }}" + specification: "{{ specification }}" + id: {{ id }} + layout: + height: {{ height }} + is_column_break: {{ is_column_break }} + width: {{ width }} + x: {{ x }} + y: {{ y }} + events: + - q: "{{ q }}" + tags_execution: "{{ tags_execution }}" + no_group_hosts: {{ no_group_hosts }} + no_metric_hosts: {{ no_metric_hosts }} + node_type: "{{ node_type }}" + notes: "{{ notes }}" + scope: + - "{{ scope }}" + url: "{{ url }}" + has_background: {{ has_background }} + has_border: {{ has_border }} + horizontal_align: "{{ horizontal_align }}" + margin: "{{ margin }}" + sizing: "{{ sizing }}" + url_dark_theme: "{{ url_dark_theme }}" + vertical_align: "{{ vertical_align }}" + columns: + - "{{ columns }}" + indexes: + - "{{ indexes }}" + logset: "{{ logset }}" + message_display: "{{ message_display }}" + show_date_column: {{ show_date_column }} + show_message_column: {{ show_message_column }} + sort: + column: "{{ column }}" + order: "{{ order }}" + color_preference: "{{ color_preference }}" + count: {{ count }} + display_format: "{{ display_format }}" + hide_zero_counts: {{ hide_zero_counts }} + show_last_triggered: {{ show_last_triggered }} + show_priority: {{ show_priority }} + start: {{ start }} + summary_type: "{{ summary_type }}" + content: "{{ content }}" + has_padding: {{ has_padding }} + show_tick: {{ show_tick }} + tick_edge: "{{ tick_edge }}" + tick_pos: "{{ tick_pos }}" + powerpack_id: "{{ powerpack_id }}" + template_variables: + controlled_by_powerpack: "{{ controlled_by_powerpack }}" + controlled_externally: "{{ controlled_externally }}" + legend: + type: "{{ type }}" + autoscale: {{ autoscale }} + custom_unit: "{{ custom_unit }}" + timeseries_background: + type: "{{ type }}" + yaxis: "{{ yaxis }}" + inputs: + - name: "{{ name }}" + value: "{{ value }}" + workflow_id: "{{ workflow_id }}" + additional_query_filters: "{{ additional_query_filters }}" + global_time_target: "{{ global_time_target }}" + show_error_budget: {{ show_error_budget }} + slo_id: "{{ slo_id }}" + time_windows: + - "{{ time_windows }}" + view_mode: "{{ view_mode }}" + view_type: "{{ view_type }}" + color_by_groups: + - "{{ color_by_groups }}" + show_other_links: {{ show_other_links }} + sort_nodes: {{ sort_nodes }} + filters: + - "{{ filters }}" + service: "{{ service }}" + env: "{{ env }}" + show_breakdown: {{ show_breakdown }} + show_distribution: {{ show_distribution }} + show_errors: {{ show_errors }} + show_hits: {{ show_hits }} + show_latency: {{ show_latency }} + show_resource_list: {{ show_resource_list }} + size_format: "{{ size_format }}" + span_name: "{{ span_name }}" + has_uniform_y_axes: {{ has_uniform_y_axes }} + size: "{{ size }}" + source_widget_definition: + custom_links: "{{ custom_links }}" + description: "{{ description }}" + requests: "{{ requests }}" + style: "{{ style }}" + time: "{{ time }}" + title: "{{ title }}" + title_align: "{{ title_align }}" + title_size: "{{ title_size }}" + type: "{{ type }}" + view: "{{ view }}" + autoscale: {{ autoscale }} + custom_unit: "{{ custom_unit }}" + precision: {{ precision }} + text_align: "{{ text_align }}" + timeseries_background: "{{ timeseries_background }}" + color_by_groups: "{{ color_by_groups }}" + xaxis: "{{ xaxis }}" + yaxis: "{{ yaxis }}" + hide_total: {{ hide_total }} + legend: "{{ legend }}" + has_search_bar: "{{ has_search_bar }}" + events: "{{ events }}" + legend_columns: "{{ legend_columns }}" + legend_layout: "{{ legend_layout }}" + legend_size: "{{ legend_size }}" + markers: "{{ markers }}" + right_yaxis: "{{ right_yaxis }}" + show_legend: {{ show_legend }} + color_by: "{{ color_by }}" + group_by: "{{ group_by }}" + size_by: "{{ size_by }}" + split_config: + limit: {{ limit }} + sort: "{{ sort }}" + split_dimensions: "{{ split_dimensions }}" + static_splits: "{{ static_splits }}" + hide_total: {{ hide_total }} + has_search_bar: "{{ has_search_bar }}" + legend_columns: + - "{{ legend_columns }}" + legend_layout: "{{ legend_layout }}" + right_yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + color_by: "{{ color_by }}" + size_by: "{{ size_by }}" + specification: + contents: "{{ contents }}" + type: "{{ type }}" + id: {{ id }} + layout: + height: {{ height }} + is_column_break: {{ is_column_break }} + width: {{ width }} + x: {{ x }} + y: {{ y }} + events: + - q: "{{ q }}" + tags_execution: "{{ tags_execution }}" + no_group_hosts: {{ no_group_hosts }} + no_metric_hosts: {{ no_metric_hosts }} + node_type: "{{ node_type }}" + notes: "{{ notes }}" + scope: + - "{{ scope }}" + url: "{{ url }}" + has_background: {{ has_background }} + has_border: {{ has_border }} + horizontal_align: "{{ horizontal_align }}" + margin: "{{ margin }}" + sizing: "{{ sizing }}" + url_dark_theme: "{{ url_dark_theme }}" + vertical_align: "{{ vertical_align }}" + columns: + - "{{ columns }}" + indexes: + - "{{ indexes }}" + logset: "{{ logset }}" + message_display: "{{ message_display }}" + show_date_column: {{ show_date_column }} + show_message_column: {{ show_message_column }} + sort: + column: "{{ column }}" + order: "{{ order }}" + color_preference: "{{ color_preference }}" + count: {{ count }} + display_format: "{{ display_format }}" + hide_zero_counts: {{ hide_zero_counts }} + show_last_triggered: {{ show_last_triggered }} + show_priority: {{ show_priority }} + start: {{ start }} + summary_type: "{{ summary_type }}" + content: "{{ content }}" + has_padding: {{ has_padding }} + show_tick: {{ show_tick }} + tick_edge: "{{ tick_edge }}" + tick_pos: "{{ tick_pos }}" + powerpack_id: "{{ powerpack_id }}" + template_variables: + controlled_by_powerpack: + - name: "{{ name }}" + prefix: "{{ prefix }}" + values: "{{ values }}" + controlled_externally: + - name: "{{ name }}" + prefix: "{{ prefix }}" + values: "{{ values }}" + legend: + type: "{{ type }}" + autoscale: {{ autoscale }} + custom_unit: "{{ custom_unit }}" + timeseries_background: + type: "{{ type }}" + yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + inputs: + - name: "{{ name }}" + value: "{{ value }}" + workflow_id: "{{ workflow_id }}" + additional_query_filters: "{{ additional_query_filters }}" + global_time_target: "{{ global_time_target }}" + show_error_budget: {{ show_error_budget }} + slo_id: "{{ slo_id }}" + time_windows: + - "{{ time_windows }}" + view_mode: "{{ view_mode }}" + view_type: "{{ view_type }}" + color_by_groups: + - "{{ color_by_groups }}" + show_other_links: {{ show_other_links }} + sort_nodes: {{ sort_nodes }} + filters: + - "{{ filters }}" + service: "{{ service }}" + env: "{{ env }}" + show_breakdown: {{ show_breakdown }} + show_distribution: {{ show_distribution }} + show_errors: {{ show_errors }} + show_hits: {{ show_hits }} + show_latency: {{ show_latency }} + show_resource_list: {{ show_resource_list }} + size_format: "{{ size_format }}" + span_name: "{{ span_name }}" + has_uniform_y_axes: {{ has_uniform_y_axes }} + size: "{{ size }}" + source_widget_definition: + custom_links: + - is_hidden: {{ is_hidden }} + label: "{{ label }}" + link: "{{ link }}" + override_label: "{{ override_label }}" + description: "{{ description }}" + requests: + - apm_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + audit_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + conditional_formats: "{{ conditional_formats }}" + event_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + formulas: "{{ formulas }}" + log_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + network_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + process_query: + filter_by: "{{ filter_by }}" + limit: {{ limit }} + metric: "{{ metric }}" + search_by: "{{ search_by }}" + profile_metrics_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + q: "{{ q }}" + queries: "{{ queries }}" + response_format: "{{ response_format }}" + rum_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + security_query: + compute: "{{ compute }}" + group_by: "{{ group_by }}" + index: "{{ index }}" + multi_compute: "{{ multi_compute }}" + search: "{{ search }}" + sort: + count: {{ count }} + order_by: "{{ order_by }}" + style: + line_type: "{{ line_type }}" + line_width: "{{ line_width }}" + order_by: "{{ order_by }}" + palette: "{{ palette }}" + style: + display: + legend: "{{ legend }}" + type: "{{ type }}" + palette: "{{ palette }}" + scaling: "{{ scaling }}" + time: + hide_incomplete_cost_data: {{ hide_incomplete_cost_data }} + live_span: "{{ live_span }}" + type: "{{ type }}" + unit: "{{ unit }}" + value: {{ value }} + from: {{ from }} + to: {{ to }} + title: "{{ title }}" + title_align: "{{ title_align }}" + title_size: "{{ title_size }}" + type: "{{ type }}" + view: + focus: "{{ focus }}" + autoscale: {{ autoscale }} + custom_unit: "{{ custom_unit }}" + precision: {{ precision }} + text_align: "{{ text_align }}" + timeseries_background: + type: "{{ type }}" + yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + color_by_groups: + - "{{ color_by_groups }}" + xaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + hide_total: {{ hide_total }} + legend: + type: "{{ type }}" + hide_percent: {{ hide_percent }} + hide_value: {{ hide_value }} + has_search_bar: "{{ has_search_bar }}" + events: + - q: "{{ q }}" + tags_execution: "{{ tags_execution }}" + legend_columns: + - "{{ legend_columns }}" + legend_layout: "{{ legend_layout }}" + legend_size: "{{ legend_size }}" + markers: + - display_type: "{{ display_type }}" + label: "{{ label }}" + time: "{{ time }}" + value: "{{ value }}" + right_yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + show_legend: {{ show_legend }} + color_by: "{{ color_by }}" + group_by: "{{ group_by }}" + size_by: "{{ size_by }}" + split_config: + limit: {{ limit }} + sort: + compute: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + order: "{{ order }}" + split_dimensions: + - one_graph_per: "{{ one_graph_per }}" + static_splits: + - "{{ static_splits }}" + hide_total: {{ hide_total }} + has_search_bar: "{{ has_search_bar }}" + legend_columns: + - "{{ legend_columns }}" + legend_layout: "{{ legend_layout }}" + right_yaxis: + include_zero: {{ include_zero }} + label: "{{ label }}" + max: "{{ max }}" + min: "{{ min }}" + scale: "{{ scale }}" + color_by: "{{ color_by }}" + size_by: "{{ size_by }}" + specification: + contents: "{{ contents }}" + type: "{{ type }}" + id: {{ id }} + layout: + height: {{ height }} + is_column_break: {{ is_column_break }} + width: {{ width }} + x: {{ x }} + y: {{ y }} +`} + + + + + +## `UPDATE` examples + + + + +Restore dashboards using the specified IDs. If there are any failures, no dashboards will be restored (partial success is not allowed). + +```sql +UPDATE datadog.dashboards.dashboards +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required; +``` + + + + +## `REPLACE` examples + + + + +Update a dashboard using the specified ID. + +```sql +REPLACE datadog.dashboards.dashboards +SET +default_timeframe = '{{ default_timeframe }}', +description = '{{ description }}', +is_read_only = {{ is_read_only }}, +layout_type = '{{ layout_type }}', +notify_list = '{{ notify_list }}', +reflow_type = '{{ reflow_type }}', +restricted_roles = '{{ restricted_roles }}', +tabs = '{{ tabs }}', +tags = '{{ tags }}', +template_variable_presets = '{{ template_variable_presets }}', +template_variables = '{{ template_variables }}', +title = '{{ title }}', +widgets = '{{ widgets }}' +WHERE +dashboard_id = '{{ dashboard_id }}' --required +AND title = '{{ title }}' --required +AND layout_type = '{{ layout_type }}' --required +AND widgets = '{{ widgets }}' --required +RETURNING +id, +author_name, +author_handle, +created_at, +default_timeframe, +description, +is_read_only, +layout_type, +modified_at, +notify_list, +reflow_type, +restricted_roles, +tabs, +tags, +template_variable_presets, +template_variables, +title, +url, +widgets; +``` + + + + +## `DELETE` examples + + + + +Delete a dashboard using the specified ID. + +```sql +DELETE FROM datadog.dashboards.dashboards +WHERE dashboard_id = '{{ dashboard_id }}' --required +; +``` + + + +Delete dashboards using the specified IDs. If there are any failures, no dashboards will be deleted (partial success is not allowed). + +```sql +DELETE FROM datadog.dashboards.dashboards +; +``` + + diff --git a/website/docs/services/dashboards/graph_snapshots/index.md b/website/docs/services/dashboards/graph_snapshots/index.md new file mode 100644 index 0000000..d8160d7 --- /dev/null +++ b/website/docs/services/dashboards/graph_snapshots/index.md @@ -0,0 +1,220 @@ +--- +title: graph_snapshots +hide_title: false +hide_table_of_contents: false +keywords: + - graph_snapshots + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a graph_snapshots resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA JSON document defining the graph. `graph_def` can be used instead of `metric_query`. The JSON document uses the [grammar defined here](https:​//docs.datadoghq.com/graphing/graphing_json/#grammar) and should be formatted to a single line then URL encoded.
stringThe metric query. One of `metric_query` or `graph_def` is required.
stringURL of your [graph snapshot](https:​//docs.datadoghq.com/metrics/explorer/#snapshot). (example: https:​//app.datadoghq.com/s/f12345678/aaa-bbb-ccc)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
start, endmetric_query, event_query, graph_def, title, height, widthTake graph snapshots. Snapshots are PNG images generated by rendering a specified widget in a web page and capturing it once the data is available. The image is then uploaded to cloud storage.<br /><br />**Note**: When a snapshot is created, there is some delay before it is available.
dataCreate a snapshot of a graph widget. The snapshot is rendered asynchronously; the returned URL can be polled until the image is ready.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The POSIX timestamp of the end of the query in seconds.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The POSIX timestamp of the start of the query in seconds.
stringA query that adds event bands to the graph.
stringA JSON document defining the graph. `graph_def` can be used instead of `metric_query`. The JSON document uses the [grammar defined here](https:​//docs.datadoghq.com/graphing/graphing_json/#grammar) and should be formatted to a single line then URL encoded.
integer (int64)The height of the graph. If no height is specified, the graph's original height is used.
stringThe metric query.
stringA title for the graph. If no title is specified, the graph does not have a title.
integer (int64)The width of the graph. If no width is specified, the graph's original width is used.
+ +## `SELECT` examples + + + + +Take graph snapshots. Snapshots are PNG images generated by rendering a specified widget in a web page and capturing it once the data is available. The image is then uploaded to cloud storage.<br /><br />**Note**: When a snapshot is created, there is some delay before it is available. + +```sql +SELECT +graph_def, +metric_query, +snapshot_url +FROM datadog.dashboards.graph_snapshots +WHERE start = '{{ start }}' -- required +AND end = '{{ end }}' -- required +AND metric_query = '{{ metric_query }}' +AND event_query = '{{ event_query }}' +AND graph_def = '{{ graph_def }}' +AND title = '{{ title }}' +AND height = '{{ height }}' +AND width = '{{ width }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Create a snapshot of a graph widget. The snapshot is rendered asynchronously; the returned URL can be polled until the image is ready. + +```sql +EXEC datadog.dashboards.graph_snapshots.create_snapshot +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/dashboards/index.md b/website/docs/services/dashboards/index.md index a15a14c..455b5dd 100644 --- a/website/docs/services/dashboards/index.md +++ b/website/docs/services/dashboards/index.md @@ -18,16 +18,30 @@ dashboards service documentation. :::info[Service Summary] -total resources: __2__ +total resources: __16__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/dashboards/notebooks/index.md b/website/docs/services/dashboards/notebooks/index.md new file mode 100644 index 0000000..dc59e31 --- /dev/null +++ b/website/docs/services/dashboards/notebooks/index.md @@ -0,0 +1,407 @@ +--- +title: notebooks +hide_title: false +hide_table_of_contents: false +keywords: + - notebooks + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a notebooks resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Unique notebook ID, assigned when you create the notebook.
objectThe attributes of a notebook.
stringType of the Notebook resource. (notebooks) (default: notebooks, example: notebooks)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Unique notebook ID, assigned when you create the notebook.
objectThe attributes of a notebook in get all response.
stringType of the Notebook resource. (notebooks) (default: notebooks, example: notebooks)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
notebook_idGet a notebook using the specified notebook ID.
author_handle, exclude_author_handle, start, count, sort_field, sort_dir, query, include_cells, is_template, typeGet all notebooks. This can also be used to search for notebooks with a particular `query` in the notebook<br />`name` or author `handle`.
dataCreate a notebook using the specified options.
notebook_id, dataUpdate a notebook using the specified ID.
notebook_idDelete a notebook using the specified ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Unique ID, assigned when you create the notebook.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringReturn notebooks created by the given `author_handle`.
integer (int64)The number of notebooks to be returned.
stringReturn notebooks not created by the given `author_handle`.
booleanValue of `false` excludes the `cells` and global `time` for each notebook.
booleanTrue value returns only template notebooks. Default is false (returns only non-template notebooks).
stringReturn only notebooks with `query` string in notebook name or author handle.
stringSort by direction `asc` or `desc`.
stringSort by field `modified`, `name`, or `created`.
integer (int64)The index of the first notebook you want returned.
stringIf type is provided, returns only notebooks with that metadata type. Default does not have type filtering.
+ +## `SELECT` examples + + + + +Get a notebook using the specified notebook ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.notebooks +WHERE notebook_id = '{{ notebook_id }}' -- required +; +``` + + + +Get all notebooks. This can also be used to search for notebooks with a particular `query` in the notebook<br />`name` or author `handle`. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.notebooks +WHERE author_handle = '{{ author_handle }}' +AND exclude_author_handle = '{{ exclude_author_handle }}' +AND start = '{{ start }}' +AND count = '{{ count }}' +AND sort_field = '{{ sort_field }}' +AND sort_dir = '{{ sort_dir }}' +AND query = '{{ query }}' +AND include_cells = '{{ include_cells }}' +AND is_template = '{{ is_template }}' +AND type = '{{ type }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a notebook using the specified options. + +```sql +INSERT INTO datadog.dashboards.notebooks ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: notebooks + props: + - name: data + description: | + The data for a notebook create request. + value: + attributes: + cells: + - attributes: + definition: + text: "{{ text }}" + type: "{{ type }}" + graph_size: "{{ graph_size }}" + split_by: + keys: "{{ keys }}" + tags: "{{ tags }}" + time: + live_span: "{{ live_span }}" + end: "{{ end }}" + live: {{ live }} + start: "{{ start }}" + type: "{{ type }}" + metadata: + is_template: {{ is_template }} + take_snapshots: {{ take_snapshots }} + type: "{{ type }}" + name: "{{ name }}" + status: "{{ status }}" + template_variables: + - available_values: "{{ available_values }}" + available_values_query: + data_source: "{{ data_source }}" + group_by: + - facet: "{{ facet }}" + search: + query: "{{ query }}" + query: "{{ query }}" + data_source_mappings: "{{ data_source_mappings }}" + default: "{{ default }}" + defaults: "{{ defaults }}" + name: "{{ name }}" + placement: "{{ placement }}" + prefix: "{{ prefix }}" + type: "{{ type }}" + time: + live_span: "{{ live_span }}" + end: "{{ end }}" + live: {{ live }} + start: "{{ start }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a notebook using the specified ID. + +```sql +REPLACE datadog.dashboards.notebooks +SET +data = '{{ data }}' +WHERE +notebook_id = '{{ notebook_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a notebook using the specified ID. + +```sql +DELETE FROM datadog.dashboards.notebooks +WHERE notebook_id = '{{ notebook_id }}' --required +; +``` + + diff --git a/website/docs/services/dashboards/powerpacks/index.md b/website/docs/services/dashboards/powerpacks/index.md index cfa2c3f..5ca42b9 100644 --- a/website/docs/services/dashboards/powerpacks/index.md +++ b/website/docs/services/dashboards/powerpacks/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a powerpacks resource. ## Overview - +
Namepowerpacks
Name
TypeResource
Id
@@ -126,35 +127,35 @@ The following methods are available for this resource: - powerpack_id, region + powerpack_id Get a powerpack. - region + page[limit], page[offset] Get a list of all powerpacks. - region + Create a powerpack. - powerpack_id, region + powerpack_id Update a powerpack. - powerpack_id, region + powerpack_id Delete a powerpack. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Powerpack id - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -218,7 +219,6 @@ relationships, type FROM datadog.dashboards.powerpacks WHERE powerpack_id = '{{ powerpack_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -233,8 +233,7 @@ attributes, relationships, type FROM datadog.dashboards.powerpacks -WHERE region = '{{ region }}' -- required -AND page[limit] = '{{ page[limit] }}' +WHERE page[limit] = '{{ page[limit] }}' AND page[offset] = '{{ page[offset] }}' ; ``` @@ -257,12 +256,10 @@ Create a powerpack. ```sql INSERT INTO datadog.dashboards.powerpacks ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data, included @@ -271,18 +268,51 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: powerpacks props: - - name: region - value: string - description: Required parameter for the powerpacks resource. - name: data - value: object description: | Powerpack data object. -``` + value: + attributes: + description: "{{ description }}" + group_widget: + definition: + layout_type: "{{ layout_type }}" + show_title: {{ show_title }} + title: "{{ title }}" + type: "{{ type }}" + widgets: + - definition: "{{ definition }}" + layout: + height: {{ height }} + width: {{ width }} + x: {{ x }} + y: {{ y }} + layout: + height: {{ height }} + width: {{ width }} + x: {{ x }} + y: {{ y }} + live_span: "{{ live_span }}" + name: "{{ name }}" + tags: + - "{{ tags }}" + template_variables: + - available_values: "{{ available_values }}" + defaults: "{{ defaults }}" + name: "{{ name }}" + prefix: "{{ prefix }}" + id: "{{ id }}" + relationships: + author: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -302,10 +332,9 @@ Update a powerpack. ```sql UPDATE datadog.dashboards.powerpacks SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE powerpack_id = '{{ powerpack_id }}' --required -AND region = '{{ region }}' --required RETURNING data, included; @@ -329,7 +358,6 @@ Delete a powerpack. ```sql DELETE FROM datadog.dashboards.powerpacks WHERE powerpack_id = '{{ powerpack_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/dashboards/report_dataset_schedules/index.md b/website/docs/services/dashboards/report_dataset_schedules/index.md new file mode 100644 index 0000000..c5b3759 --- /dev/null +++ b/website/docs/services/dashboards/report_dataset_schedules/index.md @@ -0,0 +1,151 @@ +--- +title: report_dataset_schedules +hide_title: false +hide_table_of_contents: false +keywords: + - report_dataset_schedules + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a report_dataset_schedules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the dataset report schedule. (example: e1234567-1234-1234-1234-123456789012)
objectThe configuration and derived state of a report schedule for a published dataset.
objectRelationships for the report schedule.
stringJSON:API resource type for report schedules. (schedule) (example: schedule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataset_idRetrieve all report schedules for a given published dataset.<br />Returns report schedules belonging to the authenticated user's organization that target the specified dataset.<br />Requires the `generate_log_reports` or `manage_log_reports` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the published dataset to retrieve report schedules for. (example: MW5vdGVib29rX2NlbGw6ZDI0ZTM2MWMtZDFlNC00NDYwLWIyOWUtNTg3YTczMzA3MDFm)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve all report schedules for a given published dataset.<br />Returns report schedules belonging to the authenticated user's organization that target the specified dataset.<br />Requires the `generate_log_reports` or `manage_log_reports` permission. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.report_dataset_schedules +WHERE dataset_id = '{{ dataset_id }}' -- required +; +``` + + diff --git a/website/docs/services/dashboards/report_schedules/index.md b/website/docs/services/dashboards/report_schedules/index.md new file mode 100644 index 0000000..aff9b71 --- /dev/null +++ b/website/docs/services/dashboards/report_schedules/index.md @@ -0,0 +1,466 @@ +--- +title: report_schedules +hide_title: false +hide_table_of_contents: false +keywords: + - report_schedules + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a report_schedules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the report schedule. (example: 11111111-2222-3333-4444-555555555555)
objectThe configuration and derived state of a report schedule in a list response.
objectRelationships for a report schedule in a list response.
stringJSON:API resource type for report schedules. (schedule) (example: schedule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the report schedule. (example: 11111111-2222-3333-4444-555555555555)
objectThe configuration and derived state of a report schedule.
objectRelationships for the report schedule.
stringJSON:API resource type for report schedules. (schedule) (example: schedule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the report schedule. (example: 11111111-2222-3333-4444-555555555555)
objectThe configuration and derived state of a report schedule in a list response.
objectRelationships for a report schedule in a list response.
stringJSON:API resource type for report schedules. (schedule) (example: schedule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_type, resource_idGet all report schedules that target a dashboard or integration dashboard resource.<br />Requires a reporting read permission appropriate to the targeted resource type.
schedule_uuidGet a report schedule by its unique identifier.<br />Requires a reporting read permission appropriate to the targeted resource type.
page[limit], page[offset], filter[title], filter[author_uuid], filter[recipients]List dashboard and integration dashboard report schedules for the organization.<br />The response is paginated and can be filtered by title, author UUID, or recipients.<br />Requires the `generate_dashboard_reports` permission.
dataCreate a new scheduled report. A schedule renders a dashboard or integration dashboard<br />on a recurring cadence and delivers it to the configured recipients over email, Slack,<br />or Microsoft Teams.<br />Requires the `generate_dashboard_reports` permission.
schedule_uuid, dataUpdate an existing scheduled report by its identifier. The editable attributes<br />are replaced with the supplied values; the targeted resource (`resource_id` and<br />`resource_type`) cannot be changed after creation.<br />Requires the `generate_dashboard_reports` permission and schedule ownership.
schedule_uuidDelete a report schedule by its unique identifier. The response returns the deleted schedule.<br />Requires a reporting write permission appropriate to the targeted resource type and schedule ownership.
schedule_uuid, dataActivate or pause a report schedule by setting its status to `active` or `inactive`.<br />Requires a reporting write permission appropriate to the targeted resource type and schedule ownership.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the resource to fetch report schedules for. (example: abc-def-ghi)
stringThe type of resource to fetch report schedules for.
string (uuid)The unique identifier of the report schedule to toggle. (example: 11111111-2222-3333-4444-555555555555)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)Filter schedules by author UUID. (example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee)
stringFilter schedules by a comma-separated list of recipients. (example: user@example.com,team@example.com)
stringFilter schedules by report title. (example: Weekly)
integer (int64)The maximum number of schedules to return. The maximum value is 50. (example: 25)
integer (int64)The offset from which to start returning schedules. (example: 0)
+ +## `SELECT` examples + + + + +Get all report schedules that target a dashboard or integration dashboard resource.<br />Requires a reporting read permission appropriate to the targeted resource type. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.report_schedules +WHERE resource_type = '{{ resource_type }}' -- required +AND resource_id = '{{ resource_id }}' -- required +; +``` + + + +Get a report schedule by its unique identifier.<br />Requires a reporting read permission appropriate to the targeted resource type. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.report_schedules +WHERE schedule_uuid = '{{ schedule_uuid }}' -- required +; +``` + + + +List dashboard and integration dashboard report schedules for the organization.<br />The response is paginated and can be filtered by title, author UUID, or recipients.<br />Requires the `generate_dashboard_reports` permission. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.report_schedules +WHERE page[limit] = '{{ page[limit] }}' +AND page[offset] = '{{ page[offset] }}' +AND filter[title] = '{{ filter[title] }}' +AND filter[author_uuid] = '{{ filter[author_uuid] }}' +AND filter[recipients] = '{{ filter[recipients] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new scheduled report. A schedule renders a dashboard or integration dashboard<br />on a recurring cadence and delivers it to the configured recipients over email, Slack,<br />or Microsoft Teams.<br />Requires the `generate_dashboard_reports` permission. + +```sql +INSERT INTO datadog.dashboards.report_schedules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: report_schedules + props: + - name: data + description: | + The JSON:API data object for a report schedule creation request. + value: + attributes: + delivery_format: "{{ delivery_format }}" + description: "{{ description }}" + recipients: + - "{{ recipients }}" + resource_id: "{{ resource_id }}" + resource_type: "{{ resource_type }}" + rrule: "{{ rrule }}" + tab_id: "{{ tab_id }}" + template_variables: + - name: "{{ name }}" + values: "{{ values }}" + timeframe: "{{ timeframe }}" + timezone: "{{ timezone }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing scheduled report by its identifier. The editable attributes<br />are replaced with the supplied values; the targeted resource (`resource_id` and<br />`resource_type`) cannot be changed after creation.<br />Requires the `generate_dashboard_reports` permission and schedule ownership. + +```sql +UPDATE datadog.dashboards.report_schedules +SET +data = '{{ data }}' +WHERE +schedule_uuid = '{{ schedule_uuid }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a report schedule by its unique identifier. The response returns the deleted schedule.<br />Requires a reporting write permission appropriate to the targeted resource type and schedule ownership. + +```sql +DELETE FROM datadog.dashboards.report_schedules +WHERE schedule_uuid = '{{ schedule_uuid }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Activate or pause a report schedule by setting its status to `active` or `inactive`.<br />Requires a reporting write permission appropriate to the targeted resource type and schedule ownership. + +```sql +EXEC datadog.dashboards.report_schedules.toggle_report_schedule +@schedule_uuid='{{ schedule_uuid }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/dashboards/reports/index.md b/website/docs/services/dashboards/reports/index.md new file mode 100644 index 0000000..3888f34 --- /dev/null +++ b/website/docs/services/dashboards/reports/index.md @@ -0,0 +1,107 @@ +--- +title: reports +hide_title: false +hide_table_of_contents: false +keywords: + - reports + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a reports resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataInitiate a one-off, print-only report for a dashboard or integration dashboard.<br />The report is rendered as a PDF and made available for download through the URL returned in the response.<br />Requires a reporting permission appropriate to the targeted resource type.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Initiate a one-off, print-only report for a dashboard or integration dashboard.<br />The report is rendered as a PDF and made available for download through the URL returned in the response.<br />Requires a reporting permission appropriate to the targeted resource type. + +```sql +EXEC datadog.dashboards.reports.print_report +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/dashboards/shared_dashboard_invitations/index.md b/website/docs/services/dashboards/shared_dashboard_invitations/index.md new file mode 100644 index 0000000..152d3a5 --- /dev/null +++ b/website/docs/services/dashboards/shared_dashboard_invitations/index.md @@ -0,0 +1,239 @@ +--- +title: shared_dashboard_invitations +hide_title: false +hide_table_of_contents: false +keywords: + - shared_dashboard_invitations + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a shared_dashboard_invitations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectAttributes of the shared dashboard invitation
stringType for shared dashboard invitation request body. (public_dashboard_invitation) (example: public_dashboard_invitation)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
tokenpage_size, page_numberDescribe the invitations that exist for the given shared dashboard (paginated).
token, dataSend emails to specified email addresses containing links to access a given authenticated shared dashboard. Email addresses must already belong to the authenticated shared dashboard's share_list.
tokenRevoke previously sent invitation emails and active sessions used to access a given shared dashboard for specific email addresses.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe token of the shared dashboard.
integer (int64)The page to access (base 0).
integer (int64)The number of records to return in a single request.
+ +## `SELECT` examples + + + + +Describe the invitations that exist for the given shared dashboard (paginated). + +```sql +SELECT +attributes, +type +FROM datadog.dashboards.shared_dashboard_invitations +WHERE token = '{{ token }}' -- required +AND page_size = '{{ page_size }}' +AND page_number = '{{ page_number }}' +; +``` + + + + +## `INSERT` examples + + + + +Send emails to specified email addresses containing links to access a given authenticated shared dashboard. Email addresses must already belong to the authenticated shared dashboard's share_list. + +```sql +INSERT INTO datadog.dashboards.shared_dashboard_invitations ( +data, +token +) +SELECT +'{{ data }}' /* required */, +'{{ token }}' +RETURNING +data, +meta +; +``` + + + +{`# Description fields are for documentation purposes +- name: shared_dashboard_invitations + props: + - name: token + value: "{{ token }}" + description: Required parameter for the shared_dashboard_invitations resource. + - name: data + description: | + An object or list of objects containing the information for an invitation to a shared dashboard. + value: + attributes: + created_at: "{{ created_at }}" + email: "{{ email }}" + has_session: {{ has_session }} + invitation_expiry: "{{ invitation_expiry }}" + session_expiry: "{{ session_expiry }}" + share_token: "{{ share_token }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Revoke previously sent invitation emails and active sessions used to access a given shared dashboard for specific email addresses. + +```sql +DELETE FROM datadog.dashboards.shared_dashboard_invitations +WHERE token = '{{ token }}' --required +; +``` + + diff --git a/website/docs/services/dashboards/shared_dashboards/index.md b/website/docs/services/dashboards/shared_dashboards/index.md new file mode 100644 index 0000000..5a6cb61 --- /dev/null +++ b/website/docs/services/dashboards/shared_dashboards/index.md @@ -0,0 +1,536 @@ +--- +title: shared_dashboards +hide_title: false +hide_table_of_contents: false +keywords: + - shared_dashboards + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a shared_dashboards resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the shared dashboard. (example: 12345)
objectAttributes of a shared dashboard response.
objectRelationships of a shared dashboard.
stringShared dashboard resource type. (shared_dashboard) (default: shared_dashboard, example: shared_dashboard)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the dashboard to share. (example: 123-abc-456)
objectUser who shared the dashboard.
string (date-time)Date the dashboard was shared.
stringThe type of the associated private dashboard. (custom_timeboard, custom_screenboard) (example: custom_timeboard)
arrayThe `SharedDashboard` `embeddable_domains`.
string (date-time)The time when an OPEN shared dashboard becomes publicly unavailable.
objectObject containing the live span selection for the dashboard.
booleanWhether to allow viewers to select a different global time setting for the shared dashboard.
arrayThe `SharedDashboard` `invitees`.
string (date-time)The last time the shared dashboard was accessed. Null if never accessed.
stringURL of the shared dashboard.
arrayList of objects representing template variables on the shared dashboard which can have selectable values.
arrayList of email addresses that can receive an invitation to access to the shared dashboard.
stringType of sharing access (either open to anyone who has the public URL or invite-only). (open, invite, embed)
stringActive means the dashboard is publicly available. Paused means the dashboard is not publicly available. (active, paused) (example: active)
stringTitle of the shared dashboard.
stringA unique token assigned to the shared dashboard.
objectThe viewing preferences for a shared dashboard.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dashboard_idRetrieve shared dashboards associated with the specified dashboard.
tokenFetch an existing shared dashboard's sharing metadata associated with the specified token.
dashboard_id, dashboard_typeShare a specified private dashboard, generating a URL at which it can be publicly viewed.
tokenUpdate a shared dashboard associated with the specified token.
tokenRevoke the public URL for a dashboard (rendering it private) associated with the specified token.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the dashboard.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe token of the shared dashboard.
+ +## `SELECT` examples + + + + +Retrieve shared dashboards associated with the specified dashboard. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.shared_dashboards +WHERE dashboard_id = '{{ dashboard_id }}' -- required +; +``` + + + +Fetch an existing shared dashboard's sharing metadata associated with the specified token. + +```sql +SELECT +dashboard_id, +author, +created, +dashboard_type, +embeddable_domains, +expiration, +global_time, +global_time_selectable_enabled, +invitees, +last_accessed, +public_url, +selectable_template_vars, +share_list, +share_type, +status, +title, +token, +viewing_preferences +FROM datadog.dashboards.shared_dashboards +WHERE token = '{{ token }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Share a specified private dashboard, generating a URL at which it can be publicly viewed. + +```sql +INSERT INTO datadog.dashboards.shared_dashboards ( +dashboard_id, +dashboard_type, +embeddable_domains, +expiration, +global_time, +global_time_selectable_enabled, +invitees, +selectable_template_vars, +share_list, +share_type, +status, +title, +viewing_preferences +) +SELECT +'{{ dashboard_id }}' /* required */, +'{{ dashboard_type }}' /* required */, +'{{ embeddable_domains }}', +'{{ expiration }}', +'{{ global_time }}', +{{ global_time_selectable_enabled }}, +'{{ invitees }}', +'{{ selectable_template_vars }}', +'{{ share_list }}', +'{{ share_type }}', +'{{ status }}', +'{{ title }}', +'{{ viewing_preferences }}' +RETURNING +dashboard_id, +author, +created, +dashboard_type, +embeddable_domains, +expiration, +global_time, +global_time_selectable_enabled, +invitees, +last_accessed, +public_url, +selectable_template_vars, +share_list, +share_type, +status, +title, +token, +viewing_preferences +; +``` + + + +{`# Description fields are for documentation purposes +- name: shared_dashboards + props: + - name: dashboard_id + value: "{{ dashboard_id }}" + description: | + ID of the dashboard to share. + - name: dashboard_type + value: "{{ dashboard_type }}" + description: | + The type of the associated private dashboard. + valid_values: ['custom_timeboard', 'custom_screenboard'] + - name: embeddable_domains + value: + - "{{ embeddable_domains }}" + description: | + The \`SharedDashboard\` \`embeddable_domains\`. + - name: expiration + value: "{{ expiration }}" + description: | + The time when an OPEN shared dashboard becomes publicly unavailable. + - name: global_time + description: | + Object containing the live span selection for the dashboard. + value: + live_span: "{{ live_span }}" + - name: global_time_selectable_enabled + value: {{ global_time_selectable_enabled }} + description: | + Whether to allow viewers to select a different global time setting for the shared dashboard. + - name: invitees + description: | + The \`SharedDashboard\` \`invitees\`. + value: + - access_expiration: "{{ access_expiration }}" + created_at: "{{ created_at }}" + email: "{{ email }}" + - name: selectable_template_vars + description: | + List of objects representing template variables on the shared dashboard which can have selectable values. + value: + - default_value: "{{ default_value }}" + name: "{{ name }}" + prefix: "{{ prefix }}" + type: "{{ type }}" + visible_tags: "{{ visible_tags }}" + - name: share_list + value: + - "{{ share_list }}" + description: | + List of email addresses that can receive an invitation to access to the shared dashboard. + - name: share_type + value: "{{ share_type }}" + description: | + Type of sharing access (either open to anyone who has the public URL or invite-only). + valid_values: ['open', 'invite', 'embed'] + - name: status + value: "{{ status }}" + description: | + Active means the dashboard is publicly available. Paused means the dashboard is not publicly available. + valid_values: ['active', 'paused'] + - name: title + value: "{{ title }}" + description: | + Title of the shared dashboard. + - name: viewing_preferences + description: | + The viewing preferences for a shared dashboard. + value: + high_density: {{ high_density }} + theme: "{{ theme }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a shared dashboard associated with the specified token. + +```sql +REPLACE datadog.dashboards.shared_dashboards +SET +embeddable_domains = '{{ embeddable_domains }}', +expiration = '{{ expiration }}', +global_time = '{{ global_time }}', +global_time_selectable_enabled = {{ global_time_selectable_enabled }}, +invitees = '{{ invitees }}', +selectable_template_vars = '{{ selectable_template_vars }}', +share_list = '{{ share_list }}', +share_type = '{{ share_type }}', +status = '{{ status }}', +title = '{{ title }}', +viewing_preferences = '{{ viewing_preferences }}' +WHERE +token = '{{ token }}' --required +RETURNING +dashboard_id, +author, +created, +dashboard_type, +embeddable_domains, +expiration, +global_time, +global_time_selectable_enabled, +invitees, +last_accessed, +public_url, +selectable_template_vars, +share_list, +share_type, +status, +title, +token, +viewing_preferences; +``` + + + + +## `DELETE` examples + + + + +Revoke the public URL for a dashboard (rendering it private) associated with the specified token. + +```sql +DELETE FROM datadog.dashboards.shared_dashboards +WHERE token = '{{ token }}' --required +; +``` + + diff --git a/website/docs/services/dashboards/shared_secure_embeds/index.md b/website/docs/services/dashboards/shared_secure_embeds/index.md new file mode 100644 index 0000000..e824930 --- /dev/null +++ b/website/docs/services/dashboards/shared_secure_embeds/index.md @@ -0,0 +1,280 @@ +--- +title: shared_secure_embeds +hide_title: false +hide_table_of_contents: false +keywords: + - shared_secure_embeds + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a shared_secure_embeds resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringInternal share ID. (example: 12345)
objectAttributes of an existing secure embed shared dashboard.
stringResource type for secure embed get responses. (secure_embed_get_response) (example: secure_embed_get_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dashboard_id, tokenRetrieve an existing secure embed configuration for a dashboard.
dashboard_id, dataCreate a secure embed share for a dashboard. The response includes a one-time `credential` used for HMAC-SHA256 signing. Store it securely — it cannot be retrieved again.
dashboard_id, token, dataPartially update a secure embed configuration. All fields are optional (PATCH semantics).
dashboard_id, tokenDelete a secure embed share for a dashboard.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the dashboard. (example: abc-def-ghi)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe share token identifying the secure embed. (example: s3cur3t0k3n-abcdef123456)
+ +## `SELECT` examples + + + + +Retrieve an existing secure embed configuration for a dashboard. + +```sql +SELECT +id, +attributes, +type +FROM datadog.dashboards.shared_secure_embeds +WHERE dashboard_id = '{{ dashboard_id }}' -- required +AND token = '{{ token }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a secure embed share for a dashboard. The response includes a one-time `credential` used for HMAC-SHA256 signing. Store it securely — it cannot be retrieved again. + +```sql +INSERT INTO datadog.dashboards.shared_secure_embeds ( +data, +dashboard_id +) +SELECT +'{{ data }}' /* required */, +'{{ dashboard_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: shared_secure_embeds + props: + - name: dashboard_id + value: "{{ dashboard_id }}" + description: Required parameter for the shared_secure_embeds resource. + - name: data + description: | + Data object for creating a secure embed. + value: + attributes: + global_time: + live_span: "{{ live_span }}" + global_time_selectable: {{ global_time_selectable }} + selectable_template_vars: + - default_values: "{{ default_values }}" + name: "{{ name }}" + prefix: "{{ prefix }}" + visible_tags: "{{ visible_tags }}" + status: "{{ status }}" + title: "{{ title }}" + viewing_preferences: + high_density: {{ high_density }} + theme: "{{ theme }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update a secure embed configuration. All fields are optional (PATCH semantics). + +```sql +UPDATE datadog.dashboards.shared_secure_embeds +SET +data = '{{ data }}' +WHERE +dashboard_id = '{{ dashboard_id }}' --required +AND token = '{{ token }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a secure embed share for a dashboard. + +```sql +DELETE FROM datadog.dashboards.shared_secure_embeds +WHERE dashboard_id = '{{ dashboard_id }}' --required +AND token = '{{ token }}' --required +; +``` + + diff --git a/website/docs/services/dashboards/widgets/index.md b/website/docs/services/dashboards/widgets/index.md new file mode 100644 index 0000000..da38681 --- /dev/null +++ b/website/docs/services/dashboards/widgets/index.md @@ -0,0 +1,386 @@ +--- +title: widgets +hide_title: false +hide_table_of_contents: false +keywords: + - widgets + - dashboards + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a widgets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the widget. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
objectAttributes of a widget resource.
objectRelationships of the widget resource.
stringWidgets resource type. (example: widgets)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the widget. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
objectAttributes of a widget resource.
objectRelationships of the widget resource.
stringWidgets resource type. (example: widgets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
experience_type, uuidRetrieve a widget by its UUID for a given experience type.
experience_typefilter[widget_type], filter[creator_handle], filter[is_favorited], filter[title], filter[tags], sort, page[number], page[size]Search and list widgets for a given experience type, with filtering, sorting, and pagination.<br /><br />**Response meta** carries totals scoped to the current filter:<br />- `filtered_total` — widgets matching the filter.<br />- `created_by_you_total` — among the matches, how many the current user created.<br />- `favorited_by_you_total` — among the matches, how many the current user has favorited.<br />- `created_by_anyone_total` — total widgets in the experience type, ignoring filters.<br /><br />Each returned widget includes `is_favorited` reflecting the current user's favorite status.<br />Favoriting itself is performed through the shared favorites API, not this endpoint.
experience_type, dataCreate a new widget for a given experience type.
experience_type, uuid, dataUpdate a widget by its UUID for a given experience type. This performs a full replacement of the widget definition.
experience_type, uuidSoft-delete a widget by its UUID for a given experience type.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe experience type for the widget.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The UUID of the widget.
stringFilter widgets by the email handle of the creator. (wire: filter[creatorHandle])
booleanFilter to only widgets favorited by the current user. (wire: filter[isFavorited])
stringFilter widgets by tags. Format as bracket-delimited CSV, e.g. `[tag1,tag2]`.
stringFilter widgets by title (substring match).
stringFilter widgets by widget type. (wire: filter[widgetType])
integer (int64)Page number for pagination (0-indexed).
integer (int64)Number of widgets per page.
stringSort field for the results. **`title`, `created_at`, `modified_at`** — both ascending and descending are supported. Use the bare field name for ascending (e.g. `sort=title`) or prefix with `-` for descending (e.g. `sort=-modified_at`). **`is_favorited`** — returns favorites-first ordering (favorited widgets first, then the rest). Direction is fixed; the `-` prefix is ignored for this field.
+ +## `SELECT` examples + + + + +Retrieve a widget by its UUID for a given experience type. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.widgets +WHERE experience_type = '{{ experience_type }}' -- required +AND uuid = '{{ uuid }}' -- required +; +``` + + + +Search and list widgets for a given experience type, with filtering, sorting, and pagination.<br /><br />**Response meta** carries totals scoped to the current filter:<br />- `filtered_total` — widgets matching the filter.<br />- `created_by_you_total` — among the matches, how many the current user created.<br />- `favorited_by_you_total` — among the matches, how many the current user has favorited.<br />- `created_by_anyone_total` — total widgets in the experience type, ignoring filters.<br /><br />Each returned widget includes `is_favorited` reflecting the current user's favorite status.<br />Favoriting itself is performed through the shared favorites API, not this endpoint. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.dashboards.widgets +WHERE experience_type = '{{ experience_type }}' -- required +AND filter[widget_type] = '{{ filter[widget_type] }}' +AND filter[creator_handle] = '{{ filter[creator_handle] }}' +AND filter[is_favorited] = '{{ filter[is_favorited] }}' +AND filter[title] = '{{ filter[title] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND sort = '{{ sort }}' +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new widget for a given experience type. + +```sql +INSERT INTO datadog.dashboards.widgets ( +data, +experience_type +) +SELECT +'{{ data }}' /* required */, +'{{ experience_type }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: widgets + props: + - name: experience_type + value: "{{ experience_type }}" + description: Required parameter for the widgets resource. + - name: data + description: | + Data for creating or updating a widget. + value: + attributes: + definition: + title: "{{ title }}" + type: "{{ type }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a widget by its UUID for a given experience type. This performs a full replacement of the widget definition. + +```sql +REPLACE datadog.dashboards.widgets +SET +data = '{{ data }}' +WHERE +experience_type = '{{ experience_type }}' --required +AND uuid = '{{ uuid }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Soft-delete a widget by its UUID for a given experience type. + +```sql +DELETE FROM datadog.dashboards.widgets +WHERE experience_type = '{{ experience_type }}' --required +AND uuid = '{{ uuid }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/index.md b/website/docs/services/digital_experience/index.md index 21b5663..49afb89 100644 --- a/website/docs/services/digital_experience/index.md +++ b/website/docs/services/digital_experience/index.md @@ -18,18 +18,52 @@ digital_experience service documentation. :::info[Service Summary] -total resources: __4__ +total resources: __38__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/digital_experience/product_analytics/index.md b/website/docs/services/digital_experience/product_analytics/index.md new file mode 100644 index 0000000..6116710 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics/index.md @@ -0,0 +1,149 @@ +--- +title: product_analytics +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataList the individual event records matching an analytics query.<br />Use `columns` to choose the attributes returned on each row, `sort` to order the rows,<br />and `limit` to cap how many are returned.
dataCompute scalar analytics results for Product Analytics data.<br />Returns aggregated values (counts, averages, percentiles) optionally grouped by facets.
dataCompute timeseries analytics results for Product Analytics data.<br />Returns time-bucketed values for charts and trend analysis.<br />The `compute.interval` field (milliseconds) is required for time bucketing.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +List the individual event records matching an analytics query.<br />Use `columns` to choose the attributes returned on each row, `sort` to order the rows,<br />and `limit` to cap how many are returned. + +```sql +EXEC datadog.digital_experience.product_analytics.query_product_analytics_list +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Compute scalar analytics results for Product Analytics data.<br />Returns aggregated values (counts, averages, percentiles) optionally grouped by facets. + +```sql +EXEC datadog.digital_experience.product_analytics.query_product_analytics_scalar +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Compute timeseries analytics results for Product Analytics data.<br />Returns time-bucketed values for charts and trend analysis.<br />The `compute.interval` field (milliseconds) is required for time bucketing. + +```sql +EXEC datadog.digital_experience.product_analytics.query_product_analytics_timeseries +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_accounts/index.md b/website/docs/services/digital_experience/product_analytics_accounts/index.md new file mode 100644 index 0000000..d16777d --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_accounts/index.md @@ -0,0 +1,128 @@ +--- +title: product_analytics_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_accounts + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get facet information for account attributes including possible values and counts
Query accounts with flexible filtering by account properties
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Get facet information for account attributes including possible values and counts + +```sql +EXEC datadog.digital_experience.product_analytics_accounts.get_account_facet_info +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Query accounts with flexible filtering by account properties + +```sql +EXEC datadog.digital_experience.product_analytics_accounts.query_accounts +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_events/index.md b/website/docs/services/digital_experience/product_analytics_events/index.md new file mode 100644 index 0000000..a44b942 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_events/index.md @@ -0,0 +1,112 @@ +--- +title: product_analytics_events +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_events + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_events resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
application, event, typeSend server-side events to Product Analytics. Server-side events are retained for 15 months.<br /><br />Server-Side events in Product Analytics are helpful for tracking events that occur on the server,<br />as opposed to client-side events, which are captured by Real User Monitoring (RUM) SDKs.<br />This allows for a more comprehensive view of the user journey by including actions that happen on the server.<br />Typical examples could be `checkout.completed` or `payment.processed`.<br /><br />Ingested server-side events are integrated into Product Analytics to allow users to select and filter<br />these events in the event picker, similar to how views or actions are handled.<br /><br />**Requirements:**<br />- At least one of `usr`, `account`, or `session` must be provided with a valid ID.<br />- The `application.id` must reference a Product Analytics-enabled application.<br /><br />**Custom Attributes:**<br />Any additional fields in the payload are flattened and searchable as facets.<br />For example, a payload with `{"customer": {"tier": "premium"}}` is searchable with<br />the syntax `@customer.tier:premium` in Datadog.<br /><br />The status codes answered by the HTTP API are:<br />- 202: Accepted: The request has been accepted for processing<br />- 400: Bad request (likely an issue in the payload formatting)<br />- 401: Unauthorized (likely a missing API Key)<br />- 403: Permission issue (likely using an invalid API Key)<br />- 408: Request Timeout, request should be retried after some time<br />- 413: Payload too large (batch is above 5MB uncompressed)<br />- 429: Too Many Requests, request should be retried after some time<br />- 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time<br />- 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Send server-side events to Product Analytics. Server-side events are retained for 15 months.<br /><br />Server-Side events in Product Analytics are helpful for tracking events that occur on the server,<br />as opposed to client-side events, which are captured by Real User Monitoring (RUM) SDKs.<br />This allows for a more comprehensive view of the user journey by including actions that happen on the server.<br />Typical examples could be `checkout.completed` or `payment.processed`.<br /><br />Ingested server-side events are integrated into Product Analytics to allow users to select and filter<br />these events in the event picker, similar to how views or actions are handled.<br /><br />**Requirements:**<br />- At least one of `usr`, `account`, or `session` must be provided with a valid ID.<br />- The `application.id` must reference a Product Analytics-enabled application.<br /><br />**Custom Attributes:**<br />Any additional fields in the payload are flattened and searchable as facets.<br />For example, a payload with `{"customer": {"tier": "premium"}}` is searchable with<br />the syntax `@customer.tier:premium` in Datadog.<br /><br />The status codes answered by the HTTP API are:<br />- 202: Accepted: The request has been accepted for processing<br />- 400: Bad request (likely an issue in the payload formatting)<br />- 401: Unauthorized (likely a missing API Key)<br />- 403: Permission issue (likely using an invalid API Key)<br />- 408: Request Timeout, request should be retried after some time<br />- 413: Payload too large (batch is above 5MB uncompressed)<br />- 429: Too Many Requests, request should be retried after some time<br />- 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time<br />- 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time + +```sql +EXEC datadog.digital_experience.product_analytics_events.submit_product_analytics_event +@@json= +'{ +"account": "{{ account }}", +"application": "{{ application }}", +"event": "{{ event }}", +"session": "{{ session }}", +"type": "{{ type }}", +"usr": "{{ usr }}" +}' +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_journey_funnels/index.md b/website/docs/services/digital_experience/product_analytics_journey_funnels/index.md new file mode 100644 index 0000000..9bbe456 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_journey_funnels/index.md @@ -0,0 +1,155 @@ +--- +title: product_analytics_journey_funnels +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_journey_funnels + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_journey_funnels resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCompute a funnel over an ordered sequence of Product Analytics events.<br />Returns the per-step conversion counts, conversion rates, and elapsed times,<br />optionally segmented by group-by facets.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Compute a funnel over an ordered sequence of Product Analytics events.<br />Returns the per-step conversion counts, conversion rates, and elapsed times,<br />optionally segmented by group-by facets. + +```sql +INSERT INTO datadog.digital_experience.product_analytics_journey_funnels ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: product_analytics_journey_funnels + props: + - name: data + description: | + The single JSON:API resource carrying a funnel query. Its attributes hold the time window to + query and the journey whose step-to-step conversion should be measured. + value: + attributes: + exclude_anonymous_traffic: {{ exclude_anonymous_traffic }} + from: {{ from }} + query: + compute: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + should_exclude_missing: {{ should_exclude_missing }} + sort: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + order: "{{ order }}" + source: "{{ source }}" + target: + type: "{{ type }}" + value: "{{ value }}" + end: "{{ end }}" + start: "{{ start }}" + value_filters: "{{ value_filters }}" + search: + expression: "{{ expression }}" + filters: + audience_filters: "{{ audience_filters }}" + graph_filters: "{{ graph_filters }}" + string_filter: "{{ string_filter }}" + join_keys: + primary: "{{ primary }}" + secondary: "{{ secondary }}" + node_objects: "{{ node_objects }}" + to: {{ to }} + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/product_analytics_journeys/index.md b/website/docs/services/digital_experience/product_analytics_journeys/index.md new file mode 100644 index 0000000..345b36e --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_journeys/index.md @@ -0,0 +1,149 @@ +--- +title: product_analytics_journeys +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_journeys + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_journeys resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataReturn the individual sessions that reached, or dropped off at, a given step of the journey.<br />Each row contains the identity join key, the event timestamp, and the columns requested<br />in `entity_columns`.
dataCompute scalar results for a journey query, such as the conversion count,<br />the conversion rate, or the time to convert, optionally segmented by group-by facets.
dataCompute timeseries results for a journey query.<br />Returns one series per group-by combination, bucketed by the requested interval.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Return the individual sessions that reached, or dropped off at, a given step of the journey.<br />Each row contains the identity join key, the event timestamp, and the columns requested<br />in `entity_columns`. + +```sql +EXEC datadog.digital_experience.product_analytics_journeys.query_product_analytics_journey_list +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Compute scalar results for a journey query, such as the conversion count,<br />the conversion rate, or the time to convert, optionally segmented by group-by facets. + +```sql +EXEC datadog.digital_experience.product_analytics_journeys.query_product_analytics_journey_scalar +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Compute timeseries results for a journey query.<br />Returns one series per group-by combination, bucketed by the requested interval. + +```sql +EXEC datadog.digital_experience.product_analytics_journeys.query_product_analytics_journey_timeseries +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_mapping_connections/index.md b/website/docs/services/digital_experience/product_analytics_mapping_connections/index.md new file mode 100644 index 0000000..6b2a288 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_mapping_connections/index.md @@ -0,0 +1,274 @@ +--- +title: product_analytics_mapping_connections +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_mapping_connections + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_mapping_connections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successful response with list of connections + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the list connections response resource.
objectAttributes of the list connections response, containing the collection of data source connections.
stringList connections response resource type. (list_connections_response) (default: list_connections_response, example: list_connections_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
entityList all data connections for an entity
entityCreate a new data connection and its fields for an entity
entityUpdate an existing data connection by adding, updating, or deleting fields
id, entityDelete an existing data connection for an entity
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe entity for which to delete the connection
stringThe connection ID to delete
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all data connections for an entity + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.product_analytics_mapping_connections +WHERE entity = '{{ entity }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new data connection and its fields for an entity + +```sql +INSERT INTO datadog.digital_experience.product_analytics_mapping_connections ( +data, +entity +) +SELECT +'{{ data }}', +'{{ entity }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: product_analytics_mapping_connections + props: + - name: entity + value: "{{ entity }}" + description: Required parameter for the product_analytics_mapping_connections resource. + - name: data + description: | + The data object containing the resource type and attributes for creating a new connection. + value: + attributes: + fields: + - description: "{{ description }}" + display_name: "{{ display_name }}" + groups: "{{ groups }}" + id: "{{ id }}" + source_name: "{{ source_name }}" + type: "{{ type }}" + join_attribute: "{{ join_attribute }}" + join_type: "{{ join_type }}" + metadata: "{{ metadata }}" + type: "{{ type }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing data connection by adding, updating, or deleting fields + +```sql +REPLACE datadog.digital_experience.product_analytics_mapping_connections +SET +data = '{{ data }}' +WHERE +entity = '{{ entity }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete an existing data connection for an entity + +```sql +DELETE FROM datadog.digital_experience.product_analytics_mapping_connections +WHERE id = '{{ id }}' --required +AND entity = '{{ entity }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_mappings/index.md b/website/docs/services/digital_experience/product_analytics_mappings/index.md new file mode 100644 index 0000000..4e045f1 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_mappings/index.md @@ -0,0 +1,147 @@ +--- +title: product_analytics_mappings +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_mappings + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_mappings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successful response with entity mapping configuration + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the get mapping response resource.
objectAttributes of the get mapping response, containing the list of configured entity attributes.
stringGet mappings response resource type. (get_mappings_response) (default: get_mappings_response, example: get_mappings_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
entityGet entity mapping configuration including all available attributes and their properties
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe entity for which to get the mapping
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get entity mapping configuration including all available attributes and their properties + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.product_analytics_mappings +WHERE entity = '{{ entity }}' -- required +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_retention_grids/index.md b/website/docs/services/digital_experience/product_analytics_retention_grids/index.md new file mode 100644 index 0000000..838d738 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_retention_grids/index.md @@ -0,0 +1,163 @@ +--- +title: product_analytics_retention_grids +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_retention_grids + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_retention_grids resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCompute a retention grid, showing how much of each cohort came back over each subsequent period.<br />Rows are cohorts, columns are return periods, and each cell holds the count and rate of entities that returned.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Compute a retention grid, showing how much of each cohort came back over each subsequent period.<br />Rows are cohorts, columns are return periods, and each cell holds the count and rate of entities that returned. + +```sql +INSERT INTO datadog.digital_experience.product_analytics_retention_grids ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: product_analytics_retention_grids + props: + - name: data + description: | + The single JSON:API resource carrying a retention grid query. Its attributes hold the time + window to query and the cohort and return criteria that define the grid. + value: + attributes: + exclude_anonymous_traffic: {{ exclude_anonymous_traffic }} + from: {{ from }} + query: + computation_scope: + target: + type: "{{ type }}" + value: {{ value }} + type: "{{ type }}" + cohort_target: + type: "{{ type }}" + value: {{ value }} + return_period_target: + type: "{{ type }}" + value: {{ value }} + compute: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + should_exclude_missing: {{ should_exclude_missing }} + sort: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + order: "{{ order }}" + source: "{{ source }}" + target: "{{ target }}" + search: + cohort_criteria: + base_query: "{{ base_query }}" + time_interval: "{{ time_interval }}" + filters: + audience_filters: "{{ audience_filters }}" + string_filter: "{{ string_filter }}" + retention_entity: "{{ retention_entity }}" + return_condition: "{{ return_condition }}" + return_criteria: + base_query: "{{ base_query }}" + time_interval: "{{ time_interval }}" + to: {{ to }} + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/product_analytics_retentions/index.md b/website/docs/services/digital_experience/product_analytics_retentions/index.md new file mode 100644 index 0000000..600d873 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_retentions/index.md @@ -0,0 +1,149 @@ +--- +title: product_analytics_retentions +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_retentions + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_retentions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataList the individual users or accounts counted in one cell of the retention grid.<br />Set `computation_scope` to the cohort and return period you want to examine.
dataCompute retention as a single value per group, suitable for a query value or top list widget.
dataCompute retention as a series of values over time, using the same query definition as the<br />retention grid.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +List the individual users or accounts counted in one cell of the retention grid.<br />Set `computation_scope` to the cohort and return period you want to examine. + +```sql +EXEC datadog.digital_experience.product_analytics_retentions.query_product_analytics_retention_list +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Compute retention as a single value per group, suitable for a query value or top list widget. + +```sql +EXEC datadog.digital_experience.product_analytics_retentions.query_product_analytics_retention_scalar +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Compute retention as a series of values over time, using the same query definition as the<br />retention grid. + +```sql +EXEC datadog.digital_experience.product_analytics_retentions.query_product_analytics_retention_timeseries +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/digital_experience/product_analytics_sankeys/index.md b/website/docs/services/digital_experience/product_analytics_sankeys/index.md new file mode 100644 index 0000000..fc699b8 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_sankeys/index.md @@ -0,0 +1,148 @@ +--- +title: product_analytics_sankeys +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_sankeys + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_sankeys resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCompute a Sankey diagram of how sessions flow between the values of two facets,<br />showing where users continue and where they drop off at each step.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Compute a Sankey diagram of how sessions flow between the values of two facets,<br />showing where users continue and where they drop off at each step. + +```sql +INSERT INTO datadog.digital_experience.product_analytics_sankeys ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: product_analytics_sankeys + props: + - name: data + description: | + The single JSON:API resource carrying a Sankey query. Its attributes hold the time window to + query, the search that selects the sessions, and the definition of the diagram to build. + value: + attributes: + definition: + entries_per_step: {{ entries_per_step }} + number_of_steps: {{ number_of_steps }} + source: "{{ source }}" + target: "{{ target }}" + search: + audience_filters: + accounts: + - name: "{{ name }}" + query: "{{ query }}" + formula: "{{ formula }}" + segments: + - name: "{{ name }}" + segment_id: "{{ segment_id }}" + users: + - name: "{{ name }}" + query: "{{ query }}" + join_keys: + primary: "{{ primary }}" + secondary: + - "{{ secondary }}" + query: "{{ query }}" + time: + from: {{ from }} + to: {{ to }} + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/product_analytics_user_event_filtered_queries/index.md b/website/docs/services/digital_experience/product_analytics_user_event_filtered_queries/index.md new file mode 100644 index 0000000..01af194 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_user_event_filtered_queries/index.md @@ -0,0 +1,133 @@ +--- +title: product_analytics_user_event_filtered_queries +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_user_event_filtered_queries + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_user_event_filtered_queries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Query users filtered by both user properties and event platform data
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Query users filtered by both user properties and event platform data + +```sql +INSERT INTO datadog.digital_experience.product_analytics_user_event_filtered_queries ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: product_analytics_user_event_filtered_queries + props: + - name: data + description: | + The data object containing the resource type and attributes for querying event-filtered users. + value: + attributes: + event_query: + query: "{{ query }}" + time_frame: + end: {{ end }} + start: {{ start }} + include_row_count: {{ include_row_count }} + limit: {{ limit }} + query: "{{ query }}" + select_columns: + - "{{ select_columns }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/product_analytics_users/index.md b/website/docs/services/digital_experience/product_analytics_users/index.md new file mode 100644 index 0000000..3d9fe10 --- /dev/null +++ b/website/docs/services/digital_experience/product_analytics_users/index.md @@ -0,0 +1,128 @@ +--- +title: product_analytics_users +hide_title: false +hide_table_of_contents: false +keywords: + - product_analytics_users + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a product_analytics_users resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get facet information for user attributes including possible values and counts
Query users with flexible filtering by user properties, with optional wildcard search
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Get facet information for user attributes including possible values and counts + +```sql +EXEC datadog.digital_experience.product_analytics_users.get_user_facet_info +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Query users with flexible filtering by user properties, with optional wildcard search + +```sql +EXEC datadog.digital_experience.product_analytics_users.query_users +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/digital_experience/replay_heatmap_snapshots/index.md b/website/docs/services/digital_experience/replay_heatmap_snapshots/index.md new file mode 100644 index 0000000..55a5c04 --- /dev/null +++ b/website/docs/services/digital_experience/replay_heatmap_snapshots/index.md @@ -0,0 +1,286 @@ +--- +title: replay_heatmap_snapshots +hide_title: false +hide_table_of_contents: false +keywords: + - replay_heatmap_snapshots + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a replay_heatmap_snapshots resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the heatmap snapshot.
objectAttributes of a heatmap snapshot, including view context, device information, and audit metadata.
stringSnapshots resource type. (snapshots) (default: snapshots, example: snapshots)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[view_name]filter[device_type], page[limit], filter[application_id]List heatmap snapshots.
dataCreate a heatmap snapshot.
snapshot_id, dataUpdate a heatmap snapshot.
snapshot_idDelete a heatmap snapshot.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringView name to filter snapshots.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringUnique identifier of the heatmap snapshot.
stringFilter by application ID.
stringDevice type to filter snapshots.
integer (int64)Maximum number of snapshots to return.
+ +## `SELECT` examples + + + + +List heatmap snapshots. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.replay_heatmap_snapshots +WHERE filter[view_name] = '{{ filter[view_name] }}' -- required +AND filter[device_type] = '{{ filter[device_type] }}' +AND page[limit] = '{{ page[limit] }}' +AND filter[application_id] = '{{ filter[application_id] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a heatmap snapshot. + +```sql +INSERT INTO datadog.digital_experience.replay_heatmap_snapshots ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: replay_heatmap_snapshots + props: + - name: data + description: | + Data object for a heatmap snapshot creation request, containing the resource type and attributes. + value: + attributes: + application_id: "{{ application_id }}" + device_type: "{{ device_type }}" + event_id: "{{ event_id }}" + is_device_type_selected_by_user: {{ is_device_type_selected_by_user }} + session_id: "{{ session_id }}" + snapshot_name: "{{ snapshot_name }}" + start: {{ start }} + view_id: "{{ view_id }}" + view_name: "{{ view_name }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a heatmap snapshot. + +```sql +UPDATE datadog.digital_experience.replay_heatmap_snapshots +SET +data = '{{ data }}' +WHERE +snapshot_id = '{{ snapshot_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a heatmap snapshot. + +```sql +DELETE FROM datadog.digital_experience.replay_heatmap_snapshots +WHERE snapshot_id = '{{ snapshot_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_application_retention_filter_exclusions/index.md b/website/docs/services/digital_experience/rum_application_retention_filter_exclusions/index.md new file mode 100644 index 0000000..627a14b --- /dev/null +++ b/website/docs/services/digital_experience/rum_application_retention_filter_exclusions/index.md @@ -0,0 +1,335 @@ +--- +title: rum_application_retention_filter_exclusions +hide_title: false +hide_table_of_contents: false +keywords: + - rum_application_retention_filter_exclusions + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_application_retention_filter_exclusions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the exclusion filter. (example: 051601eb-54a0-abc0-03f9-cc02efa18892)
objectThe attributes of an exclusion filter.
objectMetadata about the exclusion filter.
stringThe resource type. The value must be `exclusion_filters`. (exclusion_filters) (default: exclusion_filters, example: exclusion_filters)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the exclusion filter. (example: 051601eb-54a0-abc0-03f9-cc02efa18892)
objectThe attributes of an exclusion filter.
objectMetadata about the exclusion filter.
stringThe resource type. The value must be `exclusion_filters`. (exclusion_filters) (default: exclusion_filters, example: exclusion_filters)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_id, ef_idGet a single exclusion filter for a RUM application.
app_idGet the list of exclusion filters for a RUM application.<br />The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) is always returned first.
app_id, dataCreate an exclusion filter for a RUM application.<br />Returns the created exclusion filter when the request is successful.
app_id, ef_id, dataUpdate an exclusion filter for a RUM application.<br />For the built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`), only `enabled` can be<br />updated; `name`, `event_type`, and `query` must be omitted.<br />Returns the updated exclusion filter when the request is successful.
app_id, ef_idDelete an exclusion filter for a RUM application.<br />The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) cannot be deleted;<br />attempting to do so returns a `405 Method Not Allowed` response.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRUM application ID.
stringExclusion filter ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a single exclusion filter for a RUM application. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.digital_experience.rum_application_retention_filter_exclusions +WHERE app_id = '{{ app_id }}' -- required +AND ef_id = '{{ ef_id }}' -- required +; +``` + + + +Get the list of exclusion filters for a RUM application.<br />The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) is always returned first. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.digital_experience.rum_application_retention_filter_exclusions +WHERE app_id = '{{ app_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create an exclusion filter for a RUM application.<br />Returns the created exclusion filter when the request is successful. + +```sql +INSERT INTO datadog.digital_experience.rum_application_retention_filter_exclusions ( +data, +app_id +) +SELECT +'{{ data }}' /* required */, +'{{ app_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_application_retention_filter_exclusions + props: + - name: app_id + value: "{{ app_id }}" + description: Required parameter for the rum_application_retention_filter_exclusions resource. + - name: data + description: | + The new exclusion filter properties to create. + value: + attributes: + enabled: {{ enabled }} + event_type: "{{ event_type }}" + name: "{{ name }}" + query: "{{ query }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an exclusion filter for a RUM application.<br />For the built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`), only `enabled` can be<br />updated; `name`, `event_type`, and `query` must be omitted.<br />Returns the updated exclusion filter when the request is successful. + +```sql +UPDATE datadog.digital_experience.rum_application_retention_filter_exclusions +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required +AND ef_id = '{{ ef_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an exclusion filter for a RUM application.<br />The built-in Error Tracking exclusion filter (`error_tracking_exclusion_filter`) cannot be deleted;<br />attempting to do so returns a `405 Method Not Allowed` response. + +```sql +DELETE FROM datadog.digital_experience.rum_application_retention_filter_exclusions +WHERE app_id = '{{ app_id }}' --required +AND ef_id = '{{ ef_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_application_retention_filter_permanents/index.md b/website/docs/services/digital_experience/rum_application_retention_filter_permanents/index.md new file mode 100644 index 0000000..2cdd8fb --- /dev/null +++ b/website/docs/services/digital_experience/rum_application_retention_filter_permanents/index.md @@ -0,0 +1,237 @@ +--- +title: rum_application_retention_filter_permanents +hide_title: false +hide_table_of_contents: false +keywords: + - rum_application_retention_filter_permanents + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_application_retention_filter_permanents resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of a permanent RUM retention filter. (rum_apm_flat_sampling, synthetics_sessions, forced_replay_sessions) (example: synthetics_sessions)
objectThe attributes of a permanent RUM retention filter.
stringThe type of the resource. The value should always be `permanent_retention_filters`. (permanent_retention_filters) (default: permanent_retention_filters, example: permanent_retention_filters)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of a permanent RUM retention filter. (rum_apm_flat_sampling, synthetics_sessions, forced_replay_sessions) (example: synthetics_sessions)
objectThe attributes of a permanent RUM retention filter.
stringThe type of the resource. The value should always be `permanent_retention_filters`. (permanent_retention_filters) (default: permanent_retention_filters, example: permanent_retention_filters)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_id, permanent_rf_idGet a permanent RUM retention filter for a RUM application by its identifier.
app_idGet the list of permanent RUM retention filters for a RUM application.<br />Permanent retention filters are predefined filters that cannot be created or deleted.<br />For each filter, the `editability` block indicates which cross-product fields can be updated.
app_id, permanent_rf_id, dataUpdate the cross-product sampling configuration of a permanent RUM retention filter for a RUM application.<br />Only fields marked as editable in the `editability` block of the filter can be updated.<br />Updating a non-editable field returns a `400` response.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRUM application ID.
stringThe identifier of the permanent RUM retention filter.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a permanent RUM retention filter for a RUM application by its identifier. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_application_retention_filter_permanents +WHERE app_id = '{{ app_id }}' -- required +AND permanent_rf_id = '{{ permanent_rf_id }}' -- required +; +``` + + + +Get the list of permanent RUM retention filters for a RUM application.<br />Permanent retention filters are predefined filters that cannot be created or deleted.<br />For each filter, the `editability` block indicates which cross-product fields can be updated. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_application_retention_filter_permanents +WHERE app_id = '{{ app_id }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Update the cross-product sampling configuration of a permanent RUM retention filter for a RUM application.<br />Only fields marked as editable in the `editability` block of the filter can be updated.<br />Updating a non-editable field returns a `400` response. + +```sql +UPDATE datadog.digital_experience.rum_application_retention_filter_permanents +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required +AND permanent_rf_id = '{{ permanent_rf_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/digital_experience/rum_applications/index.md b/website/docs/services/digital_experience/rum_applications/index.md index 9761058..15ae839 100644 --- a/website/docs/services/digital_experience/rum_applications/index.md +++ b/website/docs/services/digital_experience/rum_applications/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a rum_applications resourc ## Overview - +
Namerum_applications
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - RUM application response type. (default: rum_application, example: rum_application) + RUM application response type. (rum_application) (default: rum_application, example: rum_application) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - RUM application list type. (default: rum_application, example: rum_application) + RUM application list type. (rum_application) (default: rum_application, example: rum_application) @@ -116,35 +117,35 @@ The following methods are available for this resource: - id, region + id Get the RUM application with given ID in your organization. - region + List all the RUM applications in your organization. - region, data__data + data Create a new RUM application in your organization. - id, region, data__data + id, data Update the RUM application with given ID in your organization. - id, region + id Delete an existing RUM application in your organization. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string RUM application ID. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.digital_experience.rum_applications WHERE id = '{{ id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.digital_experience.rum_applications -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a new RUM application in your organization. ```sql INSERT INTO datadog.digital_experience.rum_applications ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,21 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: rum_applications props: - - name: region - value: string - description: Required parameter for the rum_applications resource. - name: data - value: object description: | RUM application creation. -``` + value: + attributes: + name: "{{ name }}" + product_analytics_retention_state: "{{ product_analytics_retention_state }}" + rum_event_processing_state: "{{ rum_event_processing_state }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -277,11 +277,10 @@ Update the RUM application with given ID in your organization. ```sql UPDATE datadog.digital_experience.rum_applications SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +303,6 @@ Delete an existing RUM application in your organization. ```sql DELETE FROM datadog.digital_experience.rum_applications WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/digital_experience/rum_configs/index.md b/website/docs/services/digital_experience/rum_configs/index.md new file mode 100644 index 0000000..085bc71 --- /dev/null +++ b/website/docs/services/digital_experience/rum_configs/index.md @@ -0,0 +1,220 @@ +--- +title: rum_configs +hide_title: false +hide_table_of_contents: false +keywords: + - rum_configs + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe organization ID associated with the RUM configuration. (example: 1234)
objectAttributes of the RUM configuration.
stringThe type of the resource. The value should always be `rum_config`. (rum_config) (default: rum_config, example: rum_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the RUM configuration for your organization.
dataCreate the RUM configuration for your organization.<br />Returns the RUM configuration object from the request body when the request is successful.
dataUpdate the RUM configuration for your organization.<br />Returns the RUM configuration object from the request body when the request is successful.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the RUM configuration for your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_configs +; +``` + + + + +## `INSERT` examples + + + + +Create the RUM configuration for your organization.<br />Returns the RUM configuration object from the request body when the request is successful. + +```sql +INSERT INTO datadog.digital_experience.rum_configs ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_configs + props: + - name: data + description: | + Object describing the RUM configuration to create. + value: + attributes: + enforced_application_tags: {{ enforced_application_tags }} + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the RUM configuration for your organization.<br />Returns the RUM configuration object from the request body when the request is successful. + +```sql +UPDATE datadog.digital_experience.rum_configs +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/digital_experience/rum_events/index.md b/website/docs/services/digital_experience/rum_events/index.md index 73155d0..29ec873 100644 --- a/website/docs/services/digital_experience/rum_events/index.md +++ b/website/docs/services/digital_experience/rum_events/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a rum_events resource. ## Overview - +
Namerum_events
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of the event. (default: rum, example: rum) + Type of the event. (rum) (default: rum, example: rum) @@ -86,23 +87,23 @@ The following methods are available for this resource: - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - List endpoint returns events that match a RUM search query.
[Results are paginated][1].

Use this endpoint to see your latest RUM events.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + List endpoint returns events that match a RUM search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to see your latest RUM events.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - region + The API endpoint to aggregate RUM events into buckets of computed metrics and timeseries. - region - List endpoint returns RUM events that match a RUM search query.
[Results are paginated][1].

Use this endpoint to build complex RUM events filtering and search.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + + List endpoint returns RUM events that match a RUM search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to build complex RUM events filtering and search.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination @@ -120,10 +121,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -168,7 +169,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List endpoint returns events that match a RUM search query.
[Results are paginated][1].

Use this endpoint to see your latest RUM events.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination +List endpoint returns events that match a RUM search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to see your latest RUM events.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination ```sql SELECT @@ -176,8 +177,7 @@ id, attributes, type FROM datadog.digital_experience.rum_events -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -191,6 +191,8 @@ AND page[limit] = '{{ page[limit] }}' ## Lifecycle Methods +EXEC variables use wire (API) names. + rum_metrics
resource. ## Overview - +
Namerum_metrics
Name
TypeResource
Id
@@ -52,17 +53,17 @@ The following fields are returned by `SELECT` queries: string - The name of the rum-based metric. (example: rum.sessions.webui.count) + The name of the RUM-based metric. (example: rum.sessions.webui.count) object - The object describing a Datadog rum-based metric. + The object describing a Datadog RUM-based metric. string - The type of the resource. The value should always be rum_metrics. (default: rum_metrics, example: rum_metrics) + The type of the resource. The value should always be rum_metrics. (rum_metrics) (default: rum_metrics, example: rum_metrics) @@ -81,17 +82,17 @@ The following fields are returned by `SELECT` queries: string - The name of the rum-based metric. (example: rum.sessions.webui.count) + The name of the RUM-based metric. (example: rum.sessions.webui.count) object - The object describing a Datadog rum-based metric. + The object describing a Datadog RUM-based metric. string - The type of the resource. The value should always be rum_metrics. (default: rum_metrics, example: rum_metrics) + The type of the resource. The value should always be rum_metrics. (rum_metrics) (default: rum_metrics, example: rum_metrics) @@ -116,37 +117,37 @@ The following methods are available for this resource: - metric_id, region + metric_id - Get a specific rum-based metric from your organization. + Get a specific RUM-based metric from your organization. - region - Get the list of configured rum-based metrics with their definitions. + + Get the list of configured RUM-based metrics with their definitions. - region, data__data + data - Create a metric based on your organization's RUM data.
Returns the rum-based metric object from the request body when the request is successful. + Create a metric based on your organization's RUM data.<br />Returns the RUM-based metric object from the request body when the request is successful. - metric_id, region, data__data + metric_id, data - Update a specific rum-based metric from your organization.
Returns the rum-based metric object from the request body when the request is successful. + Update a specific RUM-based metric from your organization.<br />Returns the RUM-based metric object from the request body when the request is successful. - metric_id, region + metric_id - Delete a specific rum-based metric from your organization. + Delete a specific RUM-based metric from your organization. @@ -167,12 +168,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - The name of the rum-based metric. + The name of the RUM-based metric. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -188,7 +189,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a specific rum-based metric from your organization. +Get a specific RUM-based metric from your organization. ```sql SELECT @@ -197,13 +198,12 @@ attributes, type FROM datadog.digital_experience.rum_metrics WHERE metric_id = '{{ metric_id }}' -- required -AND region = '{{ region }}' -- required ; ``` -Get the list of configured rum-based metrics with their definitions. +Get the list of configured RUM-based metrics with their definitions. ```sql SELECT @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.digital_experience.rum_metrics -WHERE region = '{{ region }}' -- required ; ``` @@ -229,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a metric based on your organization's RUM data.
Returns the rum-based metric object from the request body when the request is successful. +Create a metric based on your organization's RUM data.<br />Returns the RUM-based metric object from the request body when the request is successful. ```sql INSERT INTO datadog.digital_experience.rum_metrics ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,30 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: rum_metrics props: - - name: region - value: string - description: Required parameter for the rum_metrics resource. - name: data - value: object description: | - The new rum-based metric properties. -``` + The new RUM-based metric properties. + value: + attributes: + compute: + aggregation_type: "{{ aggregation_type }}" + include_percentiles: {{ include_percentiles }} + path: "{{ path }}" + event_type: "{{ event_type }}" + filter: + query: "{{ query }}" + group_by: + - path: "{{ path }}" + tag_name: "{{ tag_name }}" + uniqueness: + when: "{{ when }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -272,16 +281,15 @@ data > -Update a specific rum-based metric from your organization.
Returns the rum-based metric object from the request body when the request is successful. +Update a specific RUM-based metric from your organization.<br />Returns the RUM-based metric object from the request body when the request is successful. ```sql UPDATE datadog.digital_experience.rum_metrics SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE metric_id = '{{ metric_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -299,12 +307,11 @@ data; > -Delete a specific rum-based metric from your organization. +Delete a specific RUM-based metric from your organization. ```sql DELETE FROM datadog.digital_experience.rum_metrics WHERE metric_id = '{{ metric_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/digital_experience/rum_operation_by_names/index.md b/website/docs/services/digital_experience/rum_operation_by_names/index.md new file mode 100644 index 0000000..337f580 --- /dev/null +++ b/website/docs/services/digital_experience/rum_operation_by_names/index.md @@ -0,0 +1,145 @@ +--- +title: rum_operation_by_names +hide_title: false +hide_table_of_contents: false +keywords: + - rum_operation_by_names + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_operation_by_names resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the RUM operation. (example: abc12345-1234-5678-abcd-ef1234567890)
objectAttributes of a RUM operation response.
stringThe JSON:API type for RUM operation resources. (operations) (example: operations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
nameRetrieve a specific RUM operation by its unique name.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique name of the RUM operation.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve a specific RUM operation by its unique name. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_operation_by_names +WHERE name = '{{ name }}' -- required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_operation_strong_links/index.md b/website/docs/services/digital_experience/rum_operation_strong_links/index.md new file mode 100644 index 0000000..3c7ce28 --- /dev/null +++ b/website/docs/services/digital_experience/rum_operation_strong_links/index.md @@ -0,0 +1,292 @@ +--- +title: rum_operation_strong_links +hide_title: false +hide_table_of_contents: false +keywords: + - rum_operation_strong_links + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_operation_strong_links resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the strong link, formatted as `<operation_id>:<feature_id>`. (example: abc12345-1234-5678-abcd-ef1234567890:feature-123)
objectAttributes of a RUM operation strong link response.
stringThe JSON:API type for RUM operation strong link resources. (strong_links) (example: strong_links)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
operation_id, feature_id, page[offset], page[limit]List strong links between RUM operations and features. A strong link confirms that a feature<br />belongs to an operation. Provide `operation_id`, `feature_id`, or both to filter results;<br />at least one is required.
dataCreate a strong link between a RUM operation and a feature, confirming that the feature<br />belongs to the operation. The operation can be identified by `operation_id` or `operation_name`;<br />if `operation_name` does not match an existing operation, a stub operation is created.
rum_operation_id, feature_id, dataUpdate the status of a strong link between a RUM operation and a feature.
rum_operation_id, feature_idDelete the strong link between a RUM operation and a feature.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the feature.
stringThe unique identifier of the RUM operation.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter strong links by feature ID.
stringFilter strong links by RUM operation ID.
integer (int64)Number of items per page. Maximum of 200.
integer (int64)Offset for pagination.
+ +## `SELECT` examples + + + + +List strong links between RUM operations and features. A strong link confirms that a feature<br />belongs to an operation. Provide `operation_id`, `feature_id`, or both to filter results;<br />at least one is required. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_operation_strong_links +WHERE operation_id = '{{ operation_id }}' +AND feature_id = '{{ feature_id }}' +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a strong link between a RUM operation and a feature, confirming that the feature<br />belongs to the operation. The operation can be identified by `operation_id` or `operation_name`;<br />if `operation_name` does not match an existing operation, a stub operation is created. + +```sql +INSERT INTO datadog.digital_experience.rum_operation_strong_links ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_operation_strong_links + props: + - name: data + description: | + The data object for creating a RUM operation strong link. + value: + attributes: + application_id: "{{ application_id }}" + description: "{{ description }}" + feature_id: "{{ feature_id }}" + operation_id: "{{ operation_id }}" + operation_name: "{{ operation_name }}" + status: "{{ status }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update the status of a strong link between a RUM operation and a feature. + +```sql +REPLACE datadog.digital_experience.rum_operation_strong_links +SET +data = '{{ data }}' +WHERE +rum_operation_id = '{{ rum_operation_id }}' --required +AND feature_id = '{{ feature_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete the strong link between a RUM operation and a feature. + +```sql +DELETE FROM datadog.digital_experience.rum_operation_strong_links +WHERE rum_operation_id = '{{ rum_operation_id }}' --required +AND feature_id = '{{ feature_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_operations/index.md b/website/docs/services/digital_experience/rum_operations/index.md new file mode 100644 index 0000000..793be3b --- /dev/null +++ b/website/docs/services/digital_experience/rum_operations/index.md @@ -0,0 +1,366 @@ +--- +title: rum_operations +hide_title: false +hide_table_of_contents: false +keywords: + - rum_operations + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_operations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the RUM operation. (example: abc12345-1234-5678-abcd-ef1234567890)
objectAttributes of a RUM operation response.
stringThe JSON:API type for RUM operation resources. (operations) (example: operations)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the RUM operation. (example: abc12345-1234-5678-abcd-ef1234567890)
objectAttributes of a RUM operation response.
stringThe JSON:API type for RUM operation resources. (operations) (example: operations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rum_operation_idRetrieve a specific RUM operation by its unique identifier.
query, page[offset], page[limit], creator, team, feature_id, application_idSearch RUM operations for your organization. Supports filtering by query, creator, team, feature, and application.
dataCreate a new RUM operation, defining the journey used to detect it from RUM events.
rum_operation_id, dataUpdate an existing RUM operation. Fields omitted from the request body keep their existing value,<br />with the exception of `journey_rum`, which is required and fully replaced on every update.
rum_operation_idDelete a RUM operation.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the RUM operation to delete.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)Filter operations by RUM application ID.
stringFilter operations by the email of their creator.
stringFilter operations by feature ID. Accepts a comma-separated list of feature IDs.
integer (int64)Number of items per page. Maximum of 100.
integer (int64)Offset for pagination.
stringA search query to filter operations by name.
stringFilter operations by team. Accepts a comma-separated list of teams.
+ +## `SELECT` examples + + + + +Retrieve a specific RUM operation by its unique identifier. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_operations +WHERE rum_operation_id = '{{ rum_operation_id }}' -- required +; +``` + + + +Search RUM operations for your organization. Supports filtering by query, creator, team, feature, and application. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_operations +WHERE query = '{{ query }}' +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND creator = '{{ creator }}' +AND team = '{{ team }}' +AND feature_id = '{{ feature_id }}' +AND application_id = '{{ application_id }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new RUM operation, defining the journey used to detect it from RUM events. + +```sql +INSERT INTO datadog.digital_experience.rum_operations ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_operations + props: + - name: data + description: | + The data object for creating a RUM operation. + value: + attributes: + application_id: "{{ application_id }}" + category: "{{ category }}" + description: "{{ description }}" + display_name: "{{ display_name }}" + feature_ids: + - "{{ feature_ids }}" + journey_rum: + rum_steps: + - composite: + composite_rule_id: "{{ composite_rule_id }}" + config_version: "{{ config_version }}" + kind: "{{ kind }}" + max_window_ms: {{ max_window_ms }} + predicates: "{{ predicates }}" + nodes: "{{ nodes }}" + type: "{{ type }}" + name: "{{ name }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing RUM operation. Fields omitted from the request body keep their existing value,<br />with the exception of `journey_rum`, which is required and fully replaced on every update. + +```sql +REPLACE datadog.digital_experience.rum_operations +SET +data = '{{ data }}' +WHERE +rum_operation_id = '{{ rum_operation_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a RUM operation. + +```sql +DELETE FROM datadog.digital_experience.rum_operations +WHERE rum_operation_id = '{{ rum_operation_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_query_insight_aggregated_long_tasks/index.md b/website/docs/services/digital_experience/rum_query_insight_aggregated_long_tasks/index.md new file mode 100644 index 0000000..4c2f80b --- /dev/null +++ b/website/docs/services/digital_experience/rum_query_insight_aggregated_long_tasks/index.md @@ -0,0 +1,132 @@ +--- +title: rum_query_insight_aggregated_long_tasks +hide_title: false +hide_table_of_contents: false +keywords: + - rum_query_insight_aggregated_long_tasks + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_query_insight_aggregated_long_tasks resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataGet aggregated long task data for a RUM view, grouped by invoker type and sampled across multiple view instances.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Get aggregated long task data for a RUM view, grouped by invoker type and sampled across multiple view instances. + +```sql +INSERT INTO datadog.digital_experience.rum_query_insight_aggregated_long_tasks ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_query_insight_aggregated_long_tasks + props: + - name: data + description: | + Data envelope for an aggregated long tasks request. + value: + attributes: + application_id: "{{ application_id }}" + criteria: + max: {{ max }} + metric: "{{ metric }}" + min: {{ min }} + filter: "{{ filter }}" + from: {{ from }} + sample_size: {{ sample_size }} + to: {{ to }} + view_name: "{{ view_name }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/rum_query_insight_aggregated_signals_problems/index.md b/website/docs/services/digital_experience/rum_query_insight_aggregated_signals_problems/index.md new file mode 100644 index 0000000..aa0731e --- /dev/null +++ b/website/docs/services/digital_experience/rum_query_insight_aggregated_signals_problems/index.md @@ -0,0 +1,134 @@ +--- +title: rum_query_insight_aggregated_signals_problems +hide_title: false +hide_table_of_contents: false +keywords: + - rum_query_insight_aggregated_signals_problems + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_query_insight_aggregated_signals_problems resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataGet aggregated performance signals and problem detections for a RUM view, sampled across multiple view instances.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Get aggregated performance signals and problem detections for a RUM view, sampled across multiple view instances. + +```sql +INSERT INTO datadog.digital_experience.rum_query_insight_aggregated_signals_problems ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_query_insight_aggregated_signals_problems + props: + - name: data + description: | + Data envelope for an aggregated signals and problems request. + value: + attributes: + application_id: "{{ application_id }}" + criteria: + max: {{ max }} + metric: "{{ metric }}" + min: {{ min }} + detection_types: + - "{{ detection_types }}" + filter: "{{ filter }}" + from: {{ from }} + sample_size: {{ sample_size }} + to: {{ to }} + view_name: "{{ view_name }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/rum_query_insight_aggregated_waterfalls/index.md b/website/docs/services/digital_experience/rum_query_insight_aggregated_waterfalls/index.md new file mode 100644 index 0000000..905663e --- /dev/null +++ b/website/docs/services/digital_experience/rum_query_insight_aggregated_waterfalls/index.md @@ -0,0 +1,133 @@ +--- +title: rum_query_insight_aggregated_waterfalls +hide_title: false +hide_table_of_contents: false +keywords: + - rum_query_insight_aggregated_waterfalls + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_query_insight_aggregated_waterfalls resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataGet aggregated network resource waterfall data for a RUM view, sampled across multiple view instances.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Get aggregated network resource waterfall data for a RUM view, sampled across multiple view instances. + +```sql +INSERT INTO datadog.digital_experience.rum_query_insight_aggregated_waterfalls ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_query_insight_aggregated_waterfalls + props: + - name: data + description: | + Data envelope for an aggregated waterfall request. + value: + attributes: + application_id: "{{ application_id }}" + criteria: + max: {{ max }} + metric: "{{ metric }}" + min: {{ min }} + filter: "{{ filter }}" + from: {{ from }} + include_global_appearance: {{ include_global_appearance }} + sample_size: {{ sample_size }} + to: {{ to }} + view_name: "{{ view_name }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/rum_replay_playlist_sessions/index.md b/website/docs/services/digital_experience/rum_replay_playlist_sessions/index.md new file mode 100644 index 0000000..9492528 --- /dev/null +++ b/website/docs/services/digital_experience/rum_replay_playlist_sessions/index.md @@ -0,0 +1,254 @@ +--- +title: rum_replay_playlist_sessions +hide_title: false +hide_table_of_contents: false +keywords: + - rum_replay_playlist_sessions + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_replay_playlist_sessions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the RUM replay session.
objectAttributes of a session within a playlist, including the session event data and its replay track.
stringRum replay session resource type. (rum_replay_session) (default: rum_replay_session, example: rum_replay_session)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
playlist_idpage[number], page[size]List sessions in a playlist.
ts, playlist_id, session_iddata_sourceAdd a session to a playlist.
playlist_id, session_idRemove a session from a playlist.
playlist_idRemove sessions from a playlist.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Unique identifier of the playlist.
stringUnique identifier of the session.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Server-side timestamp in milliseconds.
stringData source type. Valid values: 'rum' or 'product_analytics'. Defaults to 'rum'.
integer (int64)Page number for pagination (0-indexed).
integer (int64)Number of items per page.
+ +## `SELECT` examples + + + + +List sessions in a playlist. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_replay_playlist_sessions +WHERE playlist_id = '{{ playlist_id }}' -- required +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + + + +## `REPLACE` examples + + + + +Add a session to a playlist. + +```sql +REPLACE datadog.digital_experience.rum_replay_playlist_sessions +SET +-- No updatable properties +WHERE +ts = '{{ ts }}' --required +AND playlist_id = '{{ playlist_id }}' --required +AND session_id = '{{ session_id }}' --required +AND data_source = '{{ data_source}}' +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Remove a session from a playlist. + +```sql +DELETE FROM datadog.digital_experience.rum_replay_playlist_sessions +WHERE playlist_id = '{{ playlist_id }}' --required +AND session_id = '{{ session_id }}' --required +; +``` + + + +Remove sessions from a playlist. + +```sql +DELETE FROM datadog.digital_experience.rum_replay_playlist_sessions +WHERE playlist_id = '{{ playlist_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_replay_playlists/index.md b/website/docs/services/digital_experience/rum_replay_playlists/index.md new file mode 100644 index 0000000..c78d93c --- /dev/null +++ b/website/docs/services/digital_experience/rum_replay_playlists/index.md @@ -0,0 +1,341 @@ +--- +title: rum_replay_playlists +hide_title: false +hide_table_of_contents: false +keywords: + - rum_replay_playlists + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_replay_playlists resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the playlist.
objectAttributes of a RUM replay playlist, including its name, description, session count, and audit timestamps.
stringRum replay playlist resource type. (rum_replay_playlist) (default: rum_replay_playlist, example: rum_replay_playlist)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the playlist.
objectAttributes of a RUM replay playlist, including its name, description, session count, and audit timestamps.
stringRum replay playlist resource type. (rum_replay_playlist) (default: rum_replay_playlist, example: rum_replay_playlist)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
playlist_idGet a playlist.
filter[created_by_uuid], filter[query], page[number], page[size]List playlists.
dataCreate a playlist.
playlist_id, dataUpdate a playlist.
playlist_idDelete a playlist.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Unique identifier of the playlist.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter playlists by the UUID of the user who created them.
stringSearch query to filter playlists by name.
integer (int64)Page number for pagination (0-indexed).
integer (int64)Number of items per page.
+ +## `SELECT` examples + + + + +Get a playlist. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_replay_playlists +WHERE playlist_id = '{{ playlist_id }}' -- required +; +``` + + + +List playlists. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_replay_playlists +WHERE filter[created_by_uuid] = '{{ filter[created_by_uuid] }}' +AND filter[query] = '{{ filter[query] }}' +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a playlist. + +```sql +INSERT INTO datadog.digital_experience.rum_replay_playlists ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_replay_playlists + props: + - name: data + description: | + Data object representing a RUM replay playlist, including its identifier, type, and attributes. + value: + attributes: + created_at: "{{ created_at }}" + created_by: + handle: "{{ handle }}" + icon: "{{ icon }}" + id: "{{ id }}" + name: "{{ name }}" + uuid: "{{ uuid }}" + description: "{{ description }}" + name: "{{ name }}" + session_count: {{ session_count }} + updated_at: "{{ updated_at }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a playlist. + +```sql +REPLACE datadog.digital_experience.rum_replay_playlists +SET +data = '{{ data }}' +WHERE +playlist_id = '{{ playlist_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a playlist. + +```sql +DELETE FROM datadog.digital_experience.rum_replay_playlists +WHERE playlist_id = '{{ playlist_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_replay_session_view_segments/index.md b/website/docs/services/digital_experience/rum_replay_session_view_segments/index.md new file mode 100644 index 0000000..f561f74 --- /dev/null +++ b/website/docs/services/digital_experience/rum_replay_session_view_segments/index.md @@ -0,0 +1,139 @@ +--- +title: rum_replay_session_view_segments +hide_title: false +hide_table_of_contents: false +keywords: + - rum_replay_session_view_segments + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_replay_session_view_segments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
view_id, session_idsource, ts, max_list_size, pagingGet segments for a view.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the session.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringUnique identifier of the view.
integer (int64)Maximum size in bytes for the segment list.
stringPaging token for pagination.
stringStorage source: 'event_platform' or 'blob'.
integer (int64)Server-side timestamp in milliseconds.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Get segments for a view. + +```sql +EXEC datadog.digital_experience.rum_replay_session_view_segments.get_segments +@view_id='{{ view_id }}' --required, +@session_id='{{ session_id }}' --required, +@source='{{ source }}', +@ts='{{ ts }}', +@max_list_size='{{ max_list_size }}', +@paging='{{ paging }}' +; +``` + + diff --git a/website/docs/services/digital_experience/rum_replay_session_watchers/index.md b/website/docs/services/digital_experience/rum_replay_session_watchers/index.md new file mode 100644 index 0000000..36f421b --- /dev/null +++ b/website/docs/services/digital_experience/rum_replay_session_watchers/index.md @@ -0,0 +1,157 @@ +--- +title: rum_replay_session_watchers +hide_title: false +hide_table_of_contents: false +keywords: + - rum_replay_session_watchers + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_replay_session_watchers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the watcher user.
objectAttributes of a user who has watched a RUM replay session, including contact information and watch statistics.
stringRum replay watcher resource type. (rum_replay_watcher) (default: rum_replay_watcher, example: rum_replay_watcher)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
session_idpage[size], page[number]List session watchers.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the session.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Page number for pagination (0-indexed).
integer (int64)Number of items per page.
+ +## `SELECT` examples + + + + +List session watchers. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_replay_session_watchers +WHERE session_id = '{{ session_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + diff --git a/website/docs/services/digital_experience/rum_replay_session_watches/index.md b/website/docs/services/digital_experience/rum_replay_session_watches/index.md new file mode 100644 index 0000000..31471ca --- /dev/null +++ b/website/docs/services/digital_experience/rum_replay_session_watches/index.md @@ -0,0 +1,165 @@ +--- +title: rum_replay_session_watches +hide_title: false +hide_table_of_contents: false +keywords: + - rum_replay_session_watches + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_replay_session_watches resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
session_id, dataRecord a session watch.
session_idDelete session watch history.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the session.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Record a session watch. + +```sql +INSERT INTO datadog.digital_experience.rum_replay_session_watches ( +data, +session_id +) +SELECT +'{{ data }}' /* required */, +'{{ session_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_replay_session_watches + props: + - name: session_id + value: "{{ session_id }}" + description: Required parameter for the rum_replay_session_watches resource. + - name: data + description: | + Data object representing a session watch record, including its identifier, type, and attributes. + value: + attributes: + application_id: "{{ application_id }}" + data_source: "{{ data_source }}" + event_id: "{{ event_id }}" + timestamp: "{{ timestamp }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete session watch history. + +```sql +DELETE FROM datadog.digital_experience.rum_replay_session_watches +WHERE session_id = '{{ session_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_replay_viewership_history_sessions/index.md b/website/docs/services/digital_experience/rum_replay_viewership_history_sessions/index.md new file mode 100644 index 0000000..56ec338 --- /dev/null +++ b/website/docs/services/digital_experience/rum_replay_viewership_history_sessions/index.md @@ -0,0 +1,181 @@ +--- +title: rum_replay_viewership_history_sessions +hide_title: false +hide_table_of_contents: false +keywords: + - rum_replay_viewership_history_sessions + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_replay_viewership_history_sessions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the RUM replay session.
objectAttributes of a viewership history session entry, capturing when it was last watched and the associated event data.
stringRum replay session resource type. (rum_replay_session) (default: rum_replay_session, example: rum_replay_session)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[watched_at][start], page[number], filter[created_by], filter[watched_at][end], filter[session_ids], page[size], filter[application_id]List watched sessions.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter by application ID.
stringFilter by user UUID. Defaults to current user if not specified.
stringComma-separated list of session IDs to filter by.
integer (int64)End timestamp in milliseconds for watched_at filter.
integer (int64)Start timestamp in milliseconds for watched_at filter.
integer (int64)Page number for pagination (0-indexed).
integer (int64)Number of items per page.
+ +## `SELECT` examples + + + + +List watched sessions. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_replay_viewership_history_sessions +WHERE filter[watched_at][start] = '{{ filter[watched_at][start] }}' +AND page[number] = '{{ page[number] }}' +AND filter[created_by] = '{{ filter[created_by] }}' +AND filter[watched_at][end] = '{{ filter[watched_at][end] }}' +AND filter[session_ids] = '{{ filter[session_ids] }}' +AND page[size] = '{{ page[size] }}' +AND filter[application_id] = '{{ filter[application_id] }}' +; +``` + + diff --git a/website/docs/services/digital_experience/rum_retention_filters/index.md b/website/docs/services/digital_experience/rum_retention_filters/index.md index d818032..a6cd493 100644 --- a/website/docs/services/digital_experience/rum_retention_filters/index.md +++ b/website/docs/services/digital_experience/rum_retention_filters/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a rum_retention_filters re ## Overview - +
Namerum_retention_filters
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be retention_filters. (default: retention_filters, example: retention_filters) + The type of the resource. The value should always be retention_filters. (retention_filters) (default: retention_filters, example: retention_filters) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be retention_filters. (default: retention_filters, example: retention_filters) + The type of the resource. The value should always be retention_filters. (retention_filters) (default: retention_filters, example: retention_filters) @@ -116,44 +117,44 @@ The following methods are available for this resource: - app_id, rf_id, region + app_id, rf_id Get a RUM retention filter for a RUM application. - app_id, region + app_id Get the list of RUM retention filters for a RUM application. - app_id, region, data__data + app_id, data - Create a RUM retention filter for a RUM application.
Returns RUM retention filter objects from the request body when the request is successful. + Create a RUM retention filter for a RUM application.<br />Returns RUM retention filter objects from the request body when the request is successful. - app_id, rf_id, region, data__data + app_id, rf_id, data - Update a RUM retention filter for a RUM application.
Returns RUM retention filter objects from the request body when the request is successful. + Update a RUM retention filter for a RUM application.<br />Returns RUM retention filter objects from the request body when the request is successful. - app_id, rf_id, region + app_id, rf_id Delete a RUM retention filter for a RUM application. - app_id, region + app_id - Order RUM retention filters for a RUM application.
Returns RUM retention filter objects without attributes from the request body when the request is successful. + Order RUM retention filters for a RUM application.<br />Returns RUM retention filter objects without attributes from the request body when the request is successful. @@ -176,16 +177,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string RUM application ID. - - - string - (default: datadoghq.com) - string Retention filter ID. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -210,7 +211,6 @@ type FROM datadog.digital_experience.rum_retention_filters WHERE app_id = '{{ app_id }}' -- required AND rf_id = '{{ rf_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -225,7 +225,6 @@ attributes, type FROM datadog.digital_experience.rum_retention_filters WHERE app_id = '{{ app_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -243,18 +242,16 @@ AND region = '{{ region }}' -- required > -Create a RUM retention filter for a RUM application.
Returns RUM retention filter objects from the request body when the request is successful. +Create a RUM retention filter for a RUM application.<br />Returns RUM retention filter objects from the request body when the request is successful. ```sql INSERT INTO datadog.digital_experience.rum_retention_filters ( -data__data, -app_id, -region +data, +app_id ) SELECT '{{ data }}' /* required */, -'{{ app_id }}', -'{{ region }}' +'{{ app_id }}' RETURNING data ; @@ -262,21 +259,28 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: rum_retention_filters props: - name: app_id - value: string - description: Required parameter for the rum_retention_filters resource. - - name: region - value: string + value: "{{ app_id }}" description: Required parameter for the rum_retention_filters resource. - name: data - value: object description: | The new RUM retention filter properties to create. -``` + value: + attributes: + cross_product_sampling: + trace_enabled: {{ trace_enabled }} + trace_sample_rate: {{ trace_sample_rate }} + enabled: {{ enabled }} + event_type: "{{ event_type }}" + name: "{{ name }}" + query: "{{ query }}" + sample_rate: {{ sample_rate }} + type: "{{ type }}" +`} + @@ -291,17 +295,16 @@ data > -Update a RUM retention filter for a RUM application.
Returns RUM retention filter objects from the request body when the request is successful. +Update a RUM retention filter for a RUM application.<br />Returns RUM retention filter objects from the request body when the request is successful. ```sql UPDATE datadog.digital_experience.rum_retention_filters SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE app_id = '{{ app_id }}' --required AND rf_id = '{{ rf_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -325,7 +328,6 @@ Delete a RUM retention filter for a RUM application. DELETE FROM datadog.digital_experience.rum_retention_filters WHERE app_id = '{{ app_id }}' --required AND rf_id = '{{ rf_id }}' --required -AND region = '{{ region }}' --required ; ```
@@ -334,6 +336,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + -Order RUM retention filters for a RUM application.
Returns RUM retention filter objects without attributes from the request body when the request is successful. +Order RUM retention filters for a RUM application.<br />Returns RUM retention filter objects without attributes from the request body when the request is successful. ```sql EXEC datadog.digital_experience.rum_retention_filters.order_retention_filters @app_id='{{ app_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" diff --git a/website/docs/services/digital_experience/rum_retention_quotas/index.md b/website/docs/services/digital_experience/rum_retention_quotas/index.md new file mode 100644 index 0000000..e28f424 --- /dev/null +++ b/website/docs/services/digital_experience/rum_retention_quotas/index.md @@ -0,0 +1,214 @@ +--- +title: rum_retention_quotas +hide_title: false +hide_table_of_contents: false +keywords: + - rum_retention_quotas + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_retention_quotas resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the scope the retention quota configuration applies to. (example: cd73a516-a481-4af5-8352-9b577465c77b)
objectThe RUM retention quota configuration properties.
stringThe type of the resource, always `rum_quota_config`. (rum_quota_config) (default: rum_quota_config, example: rum_quota_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
scope_type, scope_idGet the RUM retention quota configuration for a given scope.
scope_type, scope_id, dataCreate or update the RUM retention quota configuration for a given scope.<br />Returns the retention quota configuration object when the request is successful.
scope_type, scope_idDelete the RUM retention quota configuration for a given scope.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the scope the retention quota configuration applies to. For the `application` scope, this is the RUM application ID.
stringThe type of scope the retention quota configuration applies to. `application` is the only supported scope type.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the RUM retention quota configuration for a given scope. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_retention_quotas +WHERE scope_type = '{{ scope_type }}' -- required +AND scope_id = '{{ scope_id }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Create or update the RUM retention quota configuration for a given scope.<br />Returns the retention quota configuration object when the request is successful. + +```sql +REPLACE datadog.digital_experience.rum_retention_quotas +SET +data = '{{ data }}' +WHERE +scope_type = '{{ scope_type }}' --required +AND scope_id = '{{ scope_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete the RUM retention quota configuration for a given scope. + +```sql +DELETE FROM datadog.digital_experience.rum_retention_quotas +WHERE scope_type = '{{ scope_type }}' --required +AND scope_id = '{{ scope_id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_teams_ownership_mapping_operations/index.md b/website/docs/services/digital_experience/rum_teams_ownership_mapping_operations/index.md new file mode 100644 index 0000000..1d56415 --- /dev/null +++ b/website/docs/services/digital_experience/rum_teams_ownership_mapping_operations/index.md @@ -0,0 +1,133 @@ +--- +title: rum_teams_ownership_mapping_operations +hide_title: false +hide_table_of_contents: false +keywords: + - rum_teams_ownership_mapping_operations + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_teams_ownership_mapping_operations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
atomic:operationsAdd and remove teams ownership mappings for your organization in a single atomic request, following<br />the JSON:API [atomic operations extension](https:​//jsonapi.org/ext/atomic/).<br />Operations are applied together: if any operation is invalid, none of the operations are applied.<br />Add operations are processed before remove operations, so results may not appear in the same<br />order as the request.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Add and remove teams ownership mappings for your organization in a single atomic request, following<br />the JSON:API [atomic operations extension](https:​//jsonapi.org/ext/atomic/).<br />Operations are applied together: if any operation is invalid, none of the operations are applied.<br />Add operations are processed before remove operations, so results may not appear in the same<br />order as the request. + +```sql +INSERT INTO datadog.digital_experience.rum_teams_ownership_mapping_operations ( +atomic:operations +) +SELECT +'{{ atomic:operations }}' /* required */ +RETURNING +atomic:results, +errors +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_teams_ownership_mapping_operations + props: + - name: atomic:operations + description: | + The list of add and remove operations to apply atomically. + value: + - data: + attributes: + application_id: "{{ application_id }}" + match_type: "{{ match_type }}" + service: "{{ service }}" + team_handle: "{{ team_handle }}" + view_name: "{{ view_name }}" + type: "{{ type }}" + op: "{{ op }}" + ref: + id: "{{ id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/rum_teams_ownership_mappings/index.md b/website/docs/services/digital_experience/rum_teams_ownership_mappings/index.md new file mode 100644 index 0000000..73645a8 --- /dev/null +++ b/website/docs/services/digital_experience/rum_teams_ownership_mappings/index.md @@ -0,0 +1,301 @@ +--- +title: rum_teams_ownership_mappings +hide_title: false +hide_table_of_contents: false +keywords: + - rum_teams_ownership_mappings + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_teams_ownership_mappings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the teams ownership mapping. (example: 123)
objectThe attributes of a teams ownership mapping.
stringThe type of the resource. The value should always be teams_ownership_mappings. (teams_ownership_mappings) (default: teams_ownership_mappings, example: teams_ownership_mappings)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the teams ownership mapping. (example: 123)
objectThe attributes of a teams ownership mapping.
stringThe type of the resource. The value should always be teams_ownership_mappings. (teams_ownership_mappings) (default: teams_ownership_mappings, example: teams_ownership_mappings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idGet a specific teams ownership mapping from your organization.
filter[view_name], filter[team_handle], filter[application_id], filter[service]Get the list of teams ownership mappings for your organization, optionally filtered.
dataCreate a teams ownership mapping for your organization.<br />Returns the teams ownership mapping object from the request body when the request is successful.
idDelete a specific teams ownership mapping from your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the teams ownership mapping.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayFilter mappings by RUM application ID. Each value must be a valid UUID.
arrayFilter mappings by RUM application service name.
arrayFilter mappings by owning team handle.
arrayFilter mappings by RUM view name.
+ +## `SELECT` examples + + + + +Get a specific teams ownership mapping from your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_teams_ownership_mappings +WHERE id = '{{ id }}' -- required +; +``` + + + +Get the list of teams ownership mappings for your organization, optionally filtered. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_teams_ownership_mappings +WHERE filter[view_name] = '{{ filter[view_name] }}' +AND filter[team_handle] = '{{ filter[team_handle] }}' +AND filter[application_id] = '{{ filter[application_id] }}' +AND filter[service] = '{{ filter[service] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a teams ownership mapping for your organization.<br />Returns the teams ownership mapping object from the request body when the request is successful. + +```sql +INSERT INTO datadog.digital_experience.rum_teams_ownership_mappings ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: rum_teams_ownership_mappings + props: + - name: data + description: | + The JSON:API data envelope for a teams ownership mapping create request. + value: + attributes: + application_id: "{{ application_id }}" + match_type: "{{ match_type }}" + service: "{{ service }}" + team_handle: "{{ team_handle }}" + view_name: "{{ view_name }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete a specific teams ownership mapping from your organization. + +```sql +DELETE FROM datadog.digital_experience.rum_teams_ownership_mappings +WHERE id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/digital_experience/rum_teams_ownership_rules/index.md b/website/docs/services/digital_experience/rum_teams_ownership_rules/index.md new file mode 100644 index 0000000..6e2f6fa --- /dev/null +++ b/website/docs/services/digital_experience/rum_teams_ownership_rules/index.md @@ -0,0 +1,163 @@ +--- +title: rum_teams_ownership_rules +hide_title: false +hide_table_of_contents: false +keywords: + - rum_teams_ownership_rules + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_teams_ownership_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA deterministic identifier derived from the rule's grouping key. This ID cannot be used to delete the rule directly; delete individual mappings using the `mapping_id` under `teams` instead. (example: 3b1e2f7a9c4d6e8f0a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f)
objectThe attributes of a teams ownership rule.
stringThe type of the resource. The value should always be teams_ownership_grouped_mappings. (teams_ownership_grouped_mappings) (default: teams_ownership_grouped_mappings, example: teams_ownership_grouped_mappings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[view_name], filter[team_handle], filter[application_id], filter[service]Get the list of teams ownership rules for your organization, optionally filtered.<br />Rules group the underlying mappings by `view_name`, `application_id`, `service`, and `match_type`,<br />collapsing every team that owns the same view into a single entry.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayFilter mappings by RUM application ID. Each value must be a valid UUID.
arrayFilter mappings by RUM application service name.
arrayFilter mappings by owning team handle.
arrayFilter mappings by RUM view name.
+ +## `SELECT` examples + + + + +Get the list of teams ownership rules for your organization, optionally filtered.<br />Rules group the underlying mappings by `view_name`, `application_id`, `service`, and `match_type`,<br />collapsing every team that owns the same view into a single entry. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.rum_teams_ownership_rules +WHERE filter[view_name] = '{{ filter[view_name] }}' +AND filter[team_handle] = '{{ filter[team_handle] }}' +AND filter[application_id] = '{{ filter[application_id] }}' +AND filter[service] = '{{ filter[service] }}' +; +``` + + diff --git a/website/docs/services/digital_experience/sourcemap_service_repository_infos/index.md b/website/docs/services/digital_experience/sourcemap_service_repository_infos/index.md new file mode 100644 index 0000000..1d6f10f --- /dev/null +++ b/website/docs/services/digital_experience/sourcemap_service_repository_infos/index.md @@ -0,0 +1,124 @@ +--- +title: sourcemap_service_repository_infos +hide_title: false +hide_table_of_contents: false +keywords: + - sourcemap_service_repository_infos + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sourcemap_service_repository_infos resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataReturns the repository URL and commit SHA associated with a given service and version.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Returns the repository URL and commit SHA associated with a given service and version. + +```sql +INSERT INTO datadog.digital_experience.sourcemap_service_repository_infos ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: sourcemap_service_repository_infos + props: + - name: data + description: | + Data object for the service repository info request. + value: + attributes: + service: "{{ service }}" + version: "{{ version }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/digital_experience/sourcemaps/index.md b/website/docs/services/digital_experience/sourcemaps/index.md new file mode 100644 index 0000000..45b3239 --- /dev/null +++ b/website/docs/services/digital_experience/sourcemaps/index.md @@ -0,0 +1,440 @@ +--- +title: sourcemaps +hide_title: false +hide_table_of_contents: false +keywords: + - sourcemaps + - digital_experience + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sourcemaps resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the source map file, typically the path to the file. (example: path/to/sourcemap.js.map)
objectAttributes of a JavaScript source map file.
stringThe resource type for source map file objects. (sourcemap_files) (example: sourcemap_files)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the source map. (example: 5)
objectAttributes of a JavaScript source map.
stringThe resource type for source map objects. (sourcemaps) (example: sourcemaps)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filename, service, versionRetrieves the content of a specific JavaScript source map file by its<br />filename, service name, and version.
mapkind, page[size], page[number], filter[service], filter[version], filter[variant], filter[id], filter[build_id], filter[uuid], filter[platform], filter[build_number], filter[bundle_name], filter[arch], filter[symbol_source], filter[origin], filter[origin_version], filter[filename], filter[debug_id], filter[gnu_build_id], filter[go_build_id], filter[file_hash]Retrieves a paginated list of source maps matching the specified filter criteria.
mapkind, dry_runfilter[service], filter[version], filter[variant], filter[id], filter[build_id], filter[uuid], filter[platform], filter[build_number], filter[bundle_name], filter[arch], filter[symbol_source], filter[origin], filter[origin_version], filter[filename], filter[debug_id], filter[gnu_build_id], filter[go_build_id], filter[file_hash]Deletes source maps matching the specified filter criteria. Supports<br />dry-run mode to preview which source maps would be deleted without<br />performing the actual deletion.
mapkind, dry_runfilter[service], filter[version], filter[variant], filter[id], filter[build_id], filter[uuid], filter[platform], filter[build_number], filter[bundle_name], filter[arch], filter[symbol_source], filter[origin], filter[origin_version], filter[filename], filter[debug_id], filter[gnu_build_id], filter[go_build_id], filter[file_hash]Restores previously deleted source maps matching the specified filter<br />criteria. Supports dry-run mode to preview which source maps would be<br />restored without performing the actual restoration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
booleanWhen set to `true`, returns the source maps that would be restored without performing the actual restoration. When set to `false`, performs the restoration.
stringThe path to the source map file.
stringThe type of source map. Valid values are `js`, `jvm`, `ios`, `react`, `flutter`, `elf`, `ndk`, `il2cpp`.
stringThe service name associated with the source map.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe version of the service associated with the source map.
arrayFilter by architecture values (multiple values allowed). Supported for `flutter`, `elf`, and `ndk`.
arrayFilter by build ID values (multiple values allowed). Supported for `jvm`, `ndk`, and `il2cpp`.
arrayFilter by build number values (multiple values allowed). Supported for `react`.
arrayFilter by bundle name values (multiple values allowed). Supported for `react`.
stringFilter by debug ID (single value). Supported for `react`.
stringFilter by file hash (single value). Supported for `elf`.
stringFilter by filename (single value). Supported for `js`, `elf`, and `ndk`.
stringFilter by GNU build ID (single value). Supported for `elf`.
stringFilter by Go build ID (single value). Supported for `elf`.
arrayFilter by source map ID values (multiple values allowed). Supported for all map kinds.
arrayFilter by origin values (multiple values allowed). Supported for `elf`.
arrayFilter by origin version values (multiple values allowed). Supported for `elf`.
arrayFilter by platform values (multiple values allowed). Supported for `react`.
arrayFilter by service names (multiple values allowed). Required for `js`, `jvm`, `react`, and `flutter` map kinds.
arrayFilter by symbol source values (multiple values allowed). Supported for `elf`.
arrayFilter by UUID values (multiple values allowed). Supported for `ios`.
arrayFilter by variant values (multiple values allowed). Supported for `jvm`.
arrayFilter by version values (multiple values allowed, maximum 10). Required for `js`, `jvm`, `react`, and `flutter` map kinds.
stringThe type of source map. Defaults to `js`.
integer (int64)The page number to retrieve, starting from 1.
integer (int64)The number of results to return per page. Must be at least 1.
+ +## `SELECT` examples + + + + +Retrieves the content of a specific JavaScript source map file by its<br />filename, service name, and version. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.sourcemaps +WHERE filename = '{{ filename }}' -- required +AND service = '{{ service }}' -- required +AND version = '{{ version }}' -- required +; +``` + + + +Retrieves a paginated list of source maps matching the specified filter criteria. + +```sql +SELECT +id, +attributes, +type +FROM datadog.digital_experience.sourcemaps +WHERE mapkind = '{{ mapkind }}' +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND filter[service] = '{{ filter[service] }}' +AND filter[version] = '{{ filter[version] }}' +AND filter[variant] = '{{ filter[variant] }}' +AND filter[id] = '{{ filter[id] }}' +AND filter[build_id] = '{{ filter[build_id] }}' +AND filter[uuid] = '{{ filter[uuid] }}' +AND filter[platform] = '{{ filter[platform] }}' +AND filter[build_number] = '{{ filter[build_number] }}' +AND filter[bundle_name] = '{{ filter[bundle_name] }}' +AND filter[arch] = '{{ filter[arch] }}' +AND filter[symbol_source] = '{{ filter[symbol_source] }}' +AND filter[origin] = '{{ filter[origin] }}' +AND filter[origin_version] = '{{ filter[origin_version] }}' +AND filter[filename] = '{{ filter[filename] }}' +AND filter[debug_id] = '{{ filter[debug_id] }}' +AND filter[gnu_build_id] = '{{ filter[gnu_build_id] }}' +AND filter[go_build_id] = '{{ filter[go_build_id] }}' +AND filter[file_hash] = '{{ filter[file_hash] }}' +; +``` + + + + +## `DELETE` examples + + + + +Deletes source maps matching the specified filter criteria. Supports<br />dry-run mode to preview which source maps would be deleted without<br />performing the actual deletion. + +```sql +DELETE FROM datadog.digital_experience.sourcemaps +WHERE mapkind = '{{ mapkind }}' --required +AND dry_run = '{{ dry_run }}' --required +AND filter[service] = '{{ filter[service] }}' +AND filter[version] = '{{ filter[version] }}' +AND filter[variant] = '{{ filter[variant] }}' +AND filter[id] = '{{ filter[id] }}' +AND filter[build_id] = '{{ filter[build_id] }}' +AND filter[uuid] = '{{ filter[uuid] }}' +AND filter[platform] = '{{ filter[platform] }}' +AND filter[build_number] = '{{ filter[build_number] }}' +AND filter[bundle_name] = '{{ filter[bundle_name] }}' +AND filter[arch] = '{{ filter[arch] }}' +AND filter[symbol_source] = '{{ filter[symbol_source] }}' +AND filter[origin] = '{{ filter[origin] }}' +AND filter[origin_version] = '{{ filter[origin_version] }}' +AND filter[filename] = '{{ filter[filename] }}' +AND filter[debug_id] = '{{ filter[debug_id] }}' +AND filter[gnu_build_id] = '{{ filter[gnu_build_id] }}' +AND filter[go_build_id] = '{{ filter[go_build_id] }}' +AND filter[file_hash] = '{{ filter[file_hash] }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Restores previously deleted source maps matching the specified filter<br />criteria. Supports dry-run mode to preview which source maps would be<br />restored without performing the actual restoration. + +```sql +EXEC datadog.digital_experience.sourcemaps.restore_sourcemaps +@mapkind='{{ mapkind }}' --required, +@dry_run='{{ dry_run }}' --required, +@filter[service]='{{ filter[service] }}', +@filter[version]='{{ filter[version] }}', +@filter[variant]='{{ filter[variant] }}', +@filter[id]='{{ filter[id] }}', +@filter[build_id]='{{ filter[build_id] }}', +@filter[uuid]='{{ filter[uuid] }}', +@filter[platform]='{{ filter[platform] }}', +@filter[build_number]='{{ filter[build_number] }}', +@filter[bundle_name]='{{ filter[bundle_name] }}', +@filter[arch]='{{ filter[arch] }}', +@filter[symbol_source]='{{ filter[symbol_source] }}', +@filter[origin]='{{ filter[origin] }}', +@filter[origin_version]='{{ filter[origin_version] }}', +@filter[filename]='{{ filter[filename] }}', +@filter[debug_id]='{{ filter[debug_id] }}', +@filter[gnu_build_id]='{{ filter[gnu_build_id] }}', +@filter[go_build_id]='{{ filter[go_build_id] }}', +@filter[file_hash]='{{ filter[file_hash] }}' +; +``` + + diff --git a/website/docs/services/fleet/agent_tracers/index.md b/website/docs/services/fleet/agent_tracers/index.md new file mode 100644 index 0000000..c7fb653 --- /dev/null +++ b/website/docs/services/fleet/agent_tracers/index.md @@ -0,0 +1,169 @@ +--- +title: agent_tracers +hide_title: false +hide_table_of_contents: false +keywords: + - agent_tracers + - fleet + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an agent_tracers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringStatus identifier. (example: done)
objectAttributes of the fleet tracers response containing the list of tracers.
stringResource type. (example: status)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
agent_keypage_number, page_size, sort_attribute, sort_descendingRetrieve a paginated list of tracers for a specific agent.<br /><br />This endpoint returns tracers associated with a given agent key, identified by the<br />agent's hostname. Use this to discover telemetry-derived service names for a particular host.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier (agent key) for the Datadog Agent.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Page number for pagination (starts at 0).
integer (int64)Number of results per page (must be greater than 0 and less than or equal to 100).
stringAttribute to sort by.
booleanSort order (true for descending, false for ascending).
+ +## `SELECT` examples + + + + +Retrieve a paginated list of tracers for a specific agent.<br /><br />This endpoint returns tracers associated with a given agent key, identified by the<br />agent's hostname. Use this to discover telemetry-derived service names for a particular host. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.agent_tracers +WHERE agent_key = '{{ agent_key }}' -- required +AND page_number = '{{ page_number }}' +AND page_size = '{{ page_size }}' +AND sort_attribute = '{{ sort_attribute }}' +AND sort_descending = '{{ sort_descending }}' +; +``` + + diff --git a/website/docs/services/fleet/agent_versions/index.md b/website/docs/services/fleet/agent_versions/index.md new file mode 100644 index 0000000..31fdbae --- /dev/null +++ b/website/docs/services/fleet/agent_versions/index.md @@ -0,0 +1,139 @@ +--- +title: agent_versions +hide_title: false +hide_table_of_contents: false +keywords: + - agent_versions + - fleet + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an agent_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe agent version string used as the unique identifier. (example: 7.81.1)
objectAttributes of an available Datadog Agent version.
stringThe type of the agent version resource. (agent_version) (default: agent_version, example: agent_version)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the list of Datadog Agent versions available for deployment.<br /><br />Returns `200` with an empty `data` array if the Agent package exists in the catalog<br />but has no available versions, and `404` only if the Agent package itself is absent<br />from the catalog.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the list of Datadog Agent versions available for deployment.<br /><br />Returns `200` with an empty `data` array if the Agent package exists in the catalog<br />but has no available versions, and `404` only if the Agent package itself is absent<br />from the catalog. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.agent_versions +; +``` + + diff --git a/website/docs/services/fleet/agents/index.md b/website/docs/services/fleet/agents/index.md new file mode 100644 index 0000000..1523c31 --- /dev/null +++ b/website/docs/services/fleet/agents/index.md @@ -0,0 +1,238 @@ +--- +title: agents +hide_title: false +hide_table_of_contents: false +keywords: + - agents + - fleet + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an agents resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique agent key identifier. (example: a1b2c3d4e5f67890a1b2c3d4e5f67890)
objectAttributes for the v2 agent detail response.
stringThe type of the agent resource. (agent) (default: agent, example: agent)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique agent key identifier. (example: my-agent-hostname)
objectAttributes of a Datadog Agent in the v2 list response.
stringThe type of the agent resource. (agent) (default: agent, example: agent)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
agent_keyincludeRetrieve detailed information about a specific Datadog Agent.<br /><br />By default, only `agent_infos` is returned. Use the `include` query parameter to<br />request additional data: `integrations` and/or `configuration_files`.
page_number, page_size, filter, tags, sort_attribute, sort_descendingRetrieve a paginated list of Datadog Agents.<br /><br />Returns agents with support for pagination, sorting, and filtering.<br />Use `page_number` and `page_size` to navigate pages, `filter` to narrow by field values,<br />and `tags` to filter by agent tags.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier (Agent key) for the Datadog Agent. Must be a 32-character lowercase hexadecimal string. (example: a1b2c3d4e5f67890a1b2c3d4e5f67890)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter string to narrow down agent results. (example: hostname:my-hostname OR env:dev)
stringComma-separated list of additional fields to include in the response. Valid values are `integrations` and `configuration_files`. Omitting this parameter returns only `agent_infos`. Unrecognized values are silently ignored rather than causing an error. (example: integrations,configuration_files)
integer (int64)Page number for pagination, starting at 0.
integer (int64)Number of agents to return per page. Maximum value is 100. Defaults to 10.
stringAgent attribute to sort results by. Must be a supported attribute name; unsupported values return a 400 error.
booleanSet to `true` to sort results in descending order. Defaults to ascending.
stringComma-separated list of tag keys to select which tags are included in each agent's `tags` attribute. Does not filter which agents are returned.
+ +## `SELECT` examples + + + + +Retrieve detailed information about a specific Datadog Agent.<br /><br />By default, only `agent_infos` is returned. Use the `include` query parameter to<br />request additional data: `integrations` and/or `configuration_files`. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.agents +WHERE agent_key = '{{ agent_key }}' -- required +AND include = '{{ include }}' +; +``` + + + +Retrieve a paginated list of Datadog Agents.<br /><br />Returns agents with support for pagination, sorting, and filtering.<br />Use `page_number` and `page_size` to navigate pages, `filter` to narrow by field values,<br />and `tags` to filter by agent tags. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.agents +WHERE page_number = '{{ page_number }}' +AND page_size = '{{ page_size }}' +AND filter = '{{ filter }}' +AND tags = '{{ tags }}' +AND sort_attribute = '{{ sort_attribute }}' +AND sort_descending = '{{ sort_descending }}' +; +``` + + diff --git a/website/docs/services/fleet/deployments/index.md b/website/docs/services/fleet/deployments/index.md new file mode 100644 index 0000000..68c304b --- /dev/null +++ b/website/docs/services/fleet/deployments/index.md @@ -0,0 +1,298 @@ +--- +title: deployments +hide_title: false +hide_table_of_contents: false +keywords: + - deployments + - fleet + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a deployments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the deployment. (example: k7Q-3mX-p9Z)
objectAttributes of a deployment detail response.
stringThe type of deployment resource. (deployment) (default: deployment, example: deployment)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the deployment. (example: k7Q-3mX-p9Z)
objectAttributes of a deployment in the v2 API response.
stringThe type of deployment resource. (deployment) (default: deployment, example: deployment)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
deployment_idRetrieve detailed information about a specific deployment, including its current status,<br />configuration operations, and per-host execution status.<br /><br />Returns a 404 if no deployment matches the given ID or if you do not have access to it.
page_size, page_number, sort, ascending, filterRetrieve a paginated list of all deployments for fleet automation.
dataCreate a new deployment to apply configuration changes<br />to a fleet of hosts matching the specified filter query.<br /><br />This endpoint supports two types of configuration operations:<br />- `merge-patch`: Merges the provided patch data with the existing configuration file,<br /> creating the file if it doesn't exist.<br />- `delete`: Removes the specified configuration file from the target hosts.<br /><br />You can optionally use `target_packages` to apply the configuration change only to specific package versions.<br /><br />The deployment is created and started automatically. You can specify multiple configuration<br />operations to execute in order on each target host. Use the filter query to target<br />specific hosts using the Datadog query syntax.<br /><br />Set `dry_run` to `true` to validate the configuration and resolve target hosts and packages without deploying anything. A dry run returns a 200 with the validation result instead of creating and starting a deployment.<br /><br />Returns a 400 if `filter_query` or `config_operations` is missing, a target package is missing a name or version or cannot be resolved, the configuration fails validation, or the filter query does not match any host eligible for the deployment.
dataCreate and immediately start a new package upgrade<br />on hosts matching the specified filter query.<br /><br />This endpoint allows you to upgrade the Datadog Agent to a specific version<br />on hosts matching the specified filter query.<br /><br />The deployment is created and started automatically. The system:<br />1. Identifies all hosts matching the filter query.<br />2. Validates that the specified version is available.<br />3. Begins rolling out the package upgrade to the target hosts.<br /><br />Returns a 400 if `filter_query` or `target_packages` is missing, a target package is missing a name or version, or the filter query does not match any host eligible for the upgrade. Returns a 409 if a conflicting upgrade is already running on one or more target hosts.
deployment_idCancel an active deployment and stop all pending operations.<br />When you cancel a deployment:<br />- All pending operations on hosts that haven't started yet are stopped.<br />- Operations currently in progress on hosts may complete or be interrupted, depending on their current status.<br />- Configuration changes or package upgrades already applied to hosts are not rolled back.<br /><br />After cancellation, you can view the final state of the deployment using the GET endpoint to see which hosts<br />were successfully updated before the cancellation.<br /><br />Only deployments with a `pending` or `running` status can be canceled. Returns a 400 if the deployment is not in a cancelable status. Returns a 404 if no deployment matches the specified ID or if you do not have access to it.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the deployment to cancel. (example: k7Q-3mX-p9Z)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanSet to `true` to sort in ascending order. This setting has no effect unless `sort` is also set. Defaults to descending order.
stringQuery used to filter deployments. Uses the Datadog query syntax. Filtering on an unsupported field returns a 400 error. For example: - `status:failed` or `status:done_with_errors`: deployments that need investigation. - `status:running`: deployments currently in flight. - `update_type:update_package` or `update_type:update_config_operations`: deployments of a given type. (example: status:failed)
integer (int64)Page number for pagination, starting at 0.
integer (int64)Number of deployments to return per page. Maximum value is 100.
stringField to sort results by (for example, `start_date`). Must be a supported field name; unsupported values return a 400 error.
+ +## `SELECT` examples + + + + +Retrieve detailed information about a specific deployment, including its current status,<br />configuration operations, and per-host execution status.<br /><br />Returns a 404 if no deployment matches the given ID or if you do not have access to it. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.deployments +WHERE deployment_id = '{{ deployment_id }}' -- required +; +``` + + + +Retrieve a paginated list of all deployments for fleet automation. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.deployments +WHERE page_size = '{{ page_size }}' +AND page_number = '{{ page_number }}' +AND sort = '{{ sort }}' +AND ascending = '{{ ascending }}' +AND filter = '{{ filter }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Create a new deployment to apply configuration changes<br />to a fleet of hosts matching the specified filter query.<br /><br />This endpoint supports two types of configuration operations:<br />- `merge-patch`: Merges the provided patch data with the existing configuration file,<br /> creating the file if it doesn't exist.<br />- `delete`: Removes the specified configuration file from the target hosts.<br /><br />You can optionally use `target_packages` to apply the configuration change only to specific package versions.<br /><br />The deployment is created and started automatically. You can specify multiple configuration<br />operations to execute in order on each target host. Use the filter query to target<br />specific hosts using the Datadog query syntax.<br /><br />Set `dry_run` to `true` to validate the configuration and resolve target hosts and packages without deploying anything. A dry run returns a 200 with the validation result instead of creating and starting a deployment.<br /><br />Returns a 400 if `filter_query` or `config_operations` is missing, a target package is missing a name or version or cannot be resolved, the configuration fails validation, or the filter query does not match any host eligible for the deployment. + +```sql +EXEC datadog.fleet.deployments.create_fleet_deployment_configure_v2 +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Create and immediately start a new package upgrade<br />on hosts matching the specified filter query.<br /><br />This endpoint allows you to upgrade the Datadog Agent to a specific version<br />on hosts matching the specified filter query.<br /><br />The deployment is created and started automatically. The system:<br />1. Identifies all hosts matching the filter query.<br />2. Validates that the specified version is available.<br />3. Begins rolling out the package upgrade to the target hosts.<br /><br />Returns a 400 if `filter_query` or `target_packages` is missing, a target package is missing a name or version, or the filter query does not match any host eligible for the upgrade. Returns a 409 if a conflicting upgrade is already running on one or more target hosts. + +```sql +EXEC datadog.fleet.deployments.create_fleet_deployment_upgrade_v2 +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Cancel an active deployment and stop all pending operations.<br />When you cancel a deployment:<br />- All pending operations on hosts that haven't started yet are stopped.<br />- Operations currently in progress on hosts may complete or be interrupted, depending on their current status.<br />- Configuration changes or package upgrades already applied to hosts are not rolled back.<br /><br />After cancellation, you can view the final state of the deployment using the GET endpoint to see which hosts<br />were successfully updated before the cancellation.<br /><br />Only deployments with a `pending` or `running` status can be canceled. Returns a 400 if the deployment is not in a cancelable status. Returns a 404 if no deployment matches the specified ID or if you do not have access to it. + +```sql +EXEC datadog.fleet.deployments.cancel_fleet_deployment_v2 +@deployment_id='{{ deployment_id }}' --required +; +``` + + diff --git a/website/docs/services/fleet/index.md b/website/docs/services/fleet/index.md new file mode 100644 index 0000000..f9401ca --- /dev/null +++ b/website/docs/services/fleet/index.md @@ -0,0 +1,37 @@ +--- +title: fleet +hide_title: false +hide_table_of_contents: false +keywords: + - fleet + - datadog + - stackql + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +fleet service documentation. + +:::info[Service Summary] + +total resources: __6__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/fleet/schedules/index.md b/website/docs/services/fleet/schedules/index.md new file mode 100644 index 0000000..6d29c91 --- /dev/null +++ b/website/docs/services/fleet/schedules/index.md @@ -0,0 +1,345 @@ +--- +title: schedules +hide_title: false +hide_table_of_contents: false +keywords: + - schedules + - fleet + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a schedules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the schedule. (example: abc-def-ghi-123)
objectAttributes of a fleet schedule in the v2 API response.
stringThe type of schedule resource. (schedule) (default: schedule, example: schedule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the schedule. (example: abc-def-ghi-123)
objectAttributes of a fleet schedule in the v2 API response.
stringThe type of schedule resource. (schedule) (default: schedule, example: schedule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idRetrieve detailed information about a specific schedule by its unique identifier.
Retrieve all upgrade schedules for the organization.<br /><br />Schedules automate package upgrades by defining maintenance windows and recurrence rules.<br />Each schedule automatically creates deployments based on its configuration.
dataCreate a new schedule for automated package upgrades.<br /><br />Schedules define when and how often to automatically deploy package upgrades to a fleet<br />of hosts. Each schedule includes:<br />- A filter query to select target hosts<br />- A recurrence rule defining maintenance windows<br />- A version strategy (e.g., always latest, or N versions behind latest)<br /><br />When the schedule triggers during a maintenance window, it automatically creates a<br />deployment that upgrades the Datadog Agent to the specified version on all matching hosts.
id, dataPartially update a schedule by providing only the fields you want to change.<br /><br />This endpoint allows you to modify specific attributes of a schedule without<br />affecting other fields. Common use cases include:<br />- Changing the schedule status between active and inactive<br />- Updating the maintenance window times<br />- Modifying the filter query to target different hosts<br />- Adjusting the version strategy<br /><br />Only include the fields you want to update in the request body. All fields<br />are optional in a PATCH request.
idDelete a schedule permanently.<br /><br />When you delete a schedule:<br />- The schedule is permanently removed and will no longer create deployments<br />- Any deployments already created by this schedule are not affected<br />- This action cannot be undone<br /><br />If you want to temporarily stop a schedule from creating deployments, consider<br />updating its status to "inactive" instead of deleting it.
idManually trigger a schedule to immediately create and start a deployment.<br /><br />This endpoint allows you to manually initiate a deployment using the schedule's<br />configuration, without waiting for the next scheduled maintenance window. This is<br />useful for:<br />- Testing a schedule before it runs automatically<br />- Performing an emergency update outside the regular maintenance window<br />- Creating an ad-hoc deployment with the same settings as a schedule<br /><br />The deployment is created immediately with:<br />- The same filter query as the schedule<br />- The package version determined by the schedule's version strategy<br />- All matching hosts as targets<br /><br />The manually triggered deployment is independent of the schedule and does not<br />affect the schedule's normal recurrence pattern.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the schedule to trigger. (example: abc-def-ghi-123)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve detailed information about a specific schedule by its unique identifier. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.schedules +WHERE id = '{{ id }}' -- required +; +``` + + + +Retrieve all upgrade schedules for the organization.<br /><br />Schedules automate package upgrades by defining maintenance windows and recurrence rules.<br />Each schedule automatically creates deployments based on its configuration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.schedules +; +``` + + + + +## `INSERT` examples + + + + +Create a new schedule for automated package upgrades.<br /><br />Schedules define when and how often to automatically deploy package upgrades to a fleet<br />of hosts. Each schedule includes:<br />- A filter query to select target hosts<br />- A recurrence rule defining maintenance windows<br />- A version strategy (e.g., always latest, or N versions behind latest)<br /><br />When the schedule triggers during a maintenance window, it automatically creates a<br />deployment that upgrades the Datadog Agent to the specified version on all matching hosts. + +```sql +INSERT INTO datadog.fleet.schedules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: schedules + props: + - name: data + description: | + Data for creating a new schedule. + value: + attributes: + name: "{{ name }}" + query: "{{ query }}" + rule: + days_of_week: + - "{{ days_of_week }}" + maintenance_window_duration: {{ maintenance_window_duration }} + start_maintenance_window: "{{ start_maintenance_window }}" + timezone: "{{ timezone }}" + status: "{{ status }}" + version_to_latest: {{ version_to_latest }} + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update a schedule by providing only the fields you want to change.<br /><br />This endpoint allows you to modify specific attributes of a schedule without<br />affecting other fields. Common use cases include:<br />- Changing the schedule status between active and inactive<br />- Updating the maintenance window times<br />- Modifying the filter query to target different hosts<br />- Adjusting the version strategy<br /><br />Only include the fields you want to update in the request body. All fields<br />are optional in a PATCH request. + +```sql +UPDATE datadog.fleet.schedules +SET +data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a schedule permanently.<br /><br />When you delete a schedule:<br />- The schedule is permanently removed and will no longer create deployments<br />- Any deployments already created by this schedule are not affected<br />- This action cannot be undone<br /><br />If you want to temporarily stop a schedule from creating deployments, consider<br />updating its status to "inactive" instead of deleting it. + +```sql +DELETE FROM datadog.fleet.schedules +WHERE id = '{{ id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Manually trigger a schedule to immediately create and start a deployment.<br /><br />This endpoint allows you to manually initiate a deployment using the schedule's<br />configuration, without waiting for the next scheduled maintenance window. This is<br />useful for:<br />- Testing a schedule before it runs automatically<br />- Performing an emergency update outside the regular maintenance window<br />- Creating an ad-hoc deployment with the same settings as a schedule<br /><br />The deployment is created immediately with:<br />- The same filter query as the schedule<br />- The package version determined by the schedule's version strategy<br />- All matching hosts as targets<br /><br />The manually triggered deployment is independent of the schedule and does not<br />affect the schedule's normal recurrence pattern. + +```sql +EXEC datadog.fleet.schedules.trigger_fleet_schedule +@id='{{ id }}' --required +; +``` + + diff --git a/website/docs/services/fleet/tracers/index.md b/website/docs/services/fleet/tracers/index.md new file mode 100644 index 0000000..3e21dde --- /dev/null +++ b/website/docs/services/fleet/tracers/index.md @@ -0,0 +1,169 @@ +--- +title: tracers +hide_title: false +hide_table_of_contents: false +keywords: + - tracers + - fleet + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tracers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringStatus identifier. (example: done)
objectAttributes of the fleet tracers response containing the list of tracers.
stringResource type. (example: status)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_number, page_size, sort_attribute, sort_descending, filterRetrieve a paginated list of all fleet tracers.<br /><br />This endpoint returns telemetry-derived service names from the SDK telemetry pipeline.<br />These names may differ from span-derived names in APM and are useful for querying<br />service library configurations.<br />Use the `page_number` and `page_size` query parameters to paginate through results.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter string for narrowing down tracer results. (example: hostname:my-host OR env:prod)
integer (int64)Page number for pagination (starts at 0).
integer (int64)Number of results per page (must be greater than 0 and less than or equal to 100).
stringAttribute to sort by.
booleanSort order (true for descending, false for ascending).
+ +## `SELECT` examples + + + + +Retrieve a paginated list of all fleet tracers.<br /><br />This endpoint returns telemetry-derived service names from the SDK telemetry pipeline.<br />These names may differ from span-derived names in APM and are useful for querying<br />service library configurations.<br />Use the `page_number` and `page_size` query parameters to paginate through results. + +```sql +SELECT +id, +attributes, +type +FROM datadog.fleet.tracers +WHERE page_number = '{{ page_number }}' +AND page_size = '{{ page_size }}' +AND sort_attribute = '{{ sort_attribute }}' +AND sort_descending = '{{ sort_descending }}' +AND filter = '{{ filter }}' +; +``` + + diff --git a/website/docs/services/infrastructure/aggregated_connections/index.md b/website/docs/services/infrastructure/aggregated_connections/index.md index dea30f5..0311d8c 100644 --- a/website/docs/services/infrastructure/aggregated_connections/index.md +++ b/website/docs/services/infrastructure/aggregated_connections/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aggregated_connections ## Overview - +
Nameaggregated_connections
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Aggregated connection resource type. (default: aggregated_connection) + Aggregated connection resource type. (aggregated_connection) (default: aggregated_connection) @@ -86,8 +87,8 @@ The following methods are available for this resource: - region - from, to, group_by, tags, limit + + from, to, group_by, tags, query, limit Get all aggregated connections. @@ -106,15 +107,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. integer (int64) - Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. @@ -126,6 +127,11 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int32) The number of connections to be returned. The maximum value is 7500. The default is 100. + + + string + Free-form search query using AND/OR/NOT operators, wildcards, and parentheses. When provided, takes precedence over the `tags` parameter. (example: (client_team:networks OR client_team:platform) AND server_service:hucklebuck) + string @@ -134,7 +140,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. @@ -157,11 +163,11 @@ id, attributes, type FROM datadog.infrastructure.aggregated_connections -WHERE region = '{{ region }}' -- required -AND from = '{{ from }}' +WHERE from = '{{ from }}' AND to = '{{ to }}' AND group_by = '{{ group_by }}' AND tags = '{{ tags }}' +AND query = '{{ query }}' AND limit = '{{ limit }}' ; ``` diff --git a/website/docs/services/infrastructure/aggregated_dns/index.md b/website/docs/services/infrastructure/aggregated_dns/index.md index 728c1cd..505f3f4 100644 --- a/website/docs/services/infrastructure/aggregated_dns/index.md +++ b/website/docs/services/infrastructure/aggregated_dns/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aggregated_dns resource ## Overview - +
Nameaggregated_dns
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Aggregated DNS resource type. (default: aggregated_dns) + Aggregated DNS resource type. (aggregated_dns) (default: aggregated_dns) @@ -86,8 +87,8 @@ The following methods are available for this resource: - region - from, to, group_by, tags, limit + + from, to, group_by, tags, query, limit Get all aggregated DNS traffic. @@ -106,15 +107,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. integer (int64) - Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window is 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. @@ -126,6 +127,11 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int32) The number of aggregated DNS entries to be returned. The maximum value is 7500. The default is 100. + + + string + Free-form search query using AND/OR/NOT operators, wildcards, and parentheses. When provided, takes precedence over the `tags` parameter. (example: (client_team:networks OR client_team:platform) AND server_service:hucklebuck) + string @@ -134,7 +140,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. + Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window is the current time. If neither `from` nor `to` are provided, the query window is `[now - 15m, now]`. @@ -157,11 +163,11 @@ id, attributes, type FROM datadog.infrastructure.aggregated_dns -WHERE region = '{{ region }}' -- required -AND from = '{{ from }}' +WHERE from = '{{ from }}' AND to = '{{ to }}' AND group_by = '{{ group_by }}' AND tags = '{{ tags }}' +AND query = '{{ query }}' AND limit = '{{ limit }}' ; ``` diff --git a/website/docs/services/infrastructure/app_builder_app_favorites/index.md b/website/docs/services/infrastructure/app_builder_app_favorites/index.md new file mode 100644 index 0000000..e65c6a4 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_favorites/index.md @@ -0,0 +1,109 @@ +--- +title: app_builder_app_favorites +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_favorites + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_favorites resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_idAdd or remove an app from the current user's favorites. Favorited apps can be filtered for using the `filter[favorite]` query parameter on the [List Apps](https:​//docs.datadoghq.com/api/latest/app-builder/#list-apps) endpoint.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Add or remove an app from the current user's favorites. Favorited apps can be filtered for using the `filter[favorite]` query parameter on the [List Apps](https://docs.datadoghq.com/api/latest/app-builder/#list-apps) endpoint. + +```sql +UPDATE datadog.infrastructure.app_builder_app_favorites +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_app_protection_levels/index.md b/website/docs/services/infrastructure/app_builder_app_protection_levels/index.md new file mode 100644 index 0000000..5227aed --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_protection_levels/index.md @@ -0,0 +1,114 @@ +--- +title: app_builder_app_protection_levels +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_protection_levels + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_protection_levels resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_idUpdate the publication protection level of an app. When set to `approval_required`, future publishes must go through an approval workflow before going live.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Update the publication protection level of an app. When set to `approval_required`, future publishes must go through an approval workflow before going live. + +```sql +UPDATE datadog.infrastructure.app_builder_app_protection_levels +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required +RETURNING +data, +included, +meta, +relationship; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_app_publish_requests/index.md b/website/docs/services/infrastructure/app_builder_app_publish_requests/index.md new file mode 100644 index 0000000..4bc1d03 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_publish_requests/index.md @@ -0,0 +1,134 @@ +--- +title: app_builder_app_publish_requests +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_publish_requests + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_publish_requests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_idCreate a publish request to ask for approval to publish an app whose protection level is `approval_required`. Publishing happens automatically once the request is approved by a user with the appropriate permissions.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a publish request to ask for approval to publish an app whose protection level is `approval_required`. Publishing happens automatically once the request is approved by a user with the appropriate permissions. + +```sql +INSERT INTO datadog.infrastructure.app_builder_app_publish_requests ( +data, +app_id +) +SELECT +'{{ data }}', +'{{ app_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: app_builder_app_publish_requests + props: + - name: app_id + value: "{{ app_id }}" + description: Required parameter for the app_builder_app_publish_requests resource. + - name: data + description: | + Data for creating a publish request. + value: + attributes: + description: "{{ description }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/infrastructure/app_builder_app_self_services/index.md b/website/docs/services/infrastructure/app_builder_app_self_services/index.md new file mode 100644 index 0000000..b5e73a0 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_self_services/index.md @@ -0,0 +1,109 @@ +--- +title: app_builder_app_self_services +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_self_services + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_self_services resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_idEnable or disable self-service for an app. Self-service apps can be discovered and run by users in your organization without explicit access being granted.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Enable or disable self-service for an app. Self-service apps can be discovered and run by users in your organization without explicit access being granted. + +```sql +UPDATE datadog.infrastructure.app_builder_app_self_services +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_app_tags/index.md b/website/docs/services/infrastructure/app_builder_app_tags/index.md new file mode 100644 index 0000000..37b0fd6 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_tags/index.md @@ -0,0 +1,109 @@ +--- +title: app_builder_app_tags +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_tags + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_tags resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_idReplace the tags on an app. The provided list overwrites the existing tags entirely; tags not present in the request body are removed.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Replace the tags on an app. The provided list overwrites the existing tags entirely; tags not present in the request body are removed. + +```sql +UPDATE datadog.infrastructure.app_builder_app_tags +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_app_version_names/index.md b/website/docs/services/infrastructure/app_builder_app_version_names/index.md new file mode 100644 index 0000000..1ab21a1 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_version_names/index.md @@ -0,0 +1,115 @@ +--- +title: app_builder_app_version_names +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_version_names + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_version_names resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_id, versionAssign a human-readable name to a specific version of an app. The version is selected through the `version` query parameter.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe version number of the app to name. The special values `latest` and `deployed` can also be used to target the latest or currently published version. (example: 3)
+ +## `UPDATE` examples + + + + +Assign a human-readable name to a specific version of an app. The version is selected through the `version` query parameter. + +```sql +UPDATE datadog.infrastructure.app_builder_app_version_names +SET +data = '{{ data }}' +WHERE +app_id = '{{ app_id }}' --required +AND version = '{{ version }}' --required; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_app_versions/index.md b/website/docs/services/infrastructure/app_builder_app_versions/index.md new file mode 100644 index 0000000..80a684f --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_app_versions/index.md @@ -0,0 +1,157 @@ +--- +title: app_builder_app_versions +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_app_versions + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_app_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app version. (example: 9e20cbaf-68da-45a6-9ccf-54193ac29fa5)
objectAttributes describing an app version.
stringThe app-version resource type. (appVersions) (default: appVersions, example: appVersions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_idlimit, pageList the versions of an app. This endpoint is paginated.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The number of versions to return per page.
integer (int64)The page number to return.
+ +## `SELECT` examples + + + + +List the versions of an app. This endpoint is paginated. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.app_builder_app_versions +WHERE app_id = '{{ app_id }}' -- required +AND limit = '{{ limit }}' +AND page = '{{ page }}' +; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_apps/index.md b/website/docs/services/infrastructure/app_builder_apps/index.md new file mode 100644 index 0000000..ba95f1c --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_apps/index.md @@ -0,0 +1,115 @@ +--- +title: app_builder_apps +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_apps + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_apps resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
app_id, versionRevert an app to a previous version. The version to revert to is selected through the `version` query parameter. The reverted version becomes the new latest version of the app.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the app. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe version number of the app to revert to. Cannot be `latest`. The special value `deployed` can be used to revert to the currently published version. (example: 2)
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Revert an app to a previous version. The version to revert to is selected through the `version` query parameter. The reverted version becomes the new latest version of the app. + +```sql +EXEC datadog.infrastructure.app_builder_apps.revert_app +@app_id='{{ app_id }}' --required, +@version='{{ version }}' --required +; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_blueprint_integration_ids/index.md b/website/docs/services/infrastructure/app_builder_blueprint_integration_ids/index.md new file mode 100644 index 0000000..d04b597 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_blueprint_integration_ids/index.md @@ -0,0 +1,145 @@ +--- +title: app_builder_blueprint_integration_ids +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_blueprint_integration_ids + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_blueprint_integration_ids resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the blueprint. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
objectThe attributes of a blueprint resource.
stringThe resource type for a blueprint. (blueprint) (example: blueprint)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration_idList app blueprints associated with a specific integration ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe integration ID to filter blueprints by. (example: aws)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List app blueprints associated with a specific integration ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.app_builder_blueprint_integration_ids +WHERE integration_id = '{{ integration_id }}' -- required +; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_blueprint_slugs/index.md b/website/docs/services/infrastructure/app_builder_blueprint_slugs/index.md new file mode 100644 index 0000000..bb6af82 --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_blueprint_slugs/index.md @@ -0,0 +1,145 @@ +--- +title: app_builder_blueprint_slugs +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_blueprint_slugs + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_blueprint_slugs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the blueprint. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
objectThe attributes of a blueprint resource.
stringThe resource type for a blueprint. (blueprint) (example: blueprint)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
slugsRetrieve app blueprints by their slugs.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA comma-separated list of blueprint slugs. (example: aws-service-manager)
+ +## `SELECT` examples + + + + +Retrieve app blueprints by their slugs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.app_builder_blueprint_slugs +WHERE slugs = '{{ slugs }}' -- required +; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_blueprints/index.md b/website/docs/services/infrastructure/app_builder_blueprints/index.md new file mode 100644 index 0000000..788dd1c --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_blueprints/index.md @@ -0,0 +1,208 @@ +--- +title: app_builder_blueprints +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_blueprints + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_blueprints resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the blueprint. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
objectThe attributes of a blueprint resource.
stringThe resource type for a blueprint. (blueprint) (example: blueprint)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the blueprint. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
objectThe attributes of a blueprint metadata resource.
stringThe resource type for a blueprint. (blueprint) (example: blueprint)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
blueprint_idRetrieve an app blueprint by its ID.
limit, pageList available app blueprints.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the blueprint to retrieve. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The number of blueprints to return per page. Defaults to 10. Maximum is 100.
integer (int64)The page of results to return. Starts at 0.
+ +## `SELECT` examples + + + + +Retrieve an app blueprint by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.app_builder_blueprints +WHERE blueprint_id = '{{ blueprint_id }}' -- required +; +``` + + + +List available app blueprints. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.app_builder_blueprints +WHERE limit = '{{ limit }}' +AND page = '{{ page }}' +; +``` + + diff --git a/website/docs/services/infrastructure/app_builder_tags/index.md b/website/docs/services/infrastructure/app_builder_tags/index.md new file mode 100644 index 0000000..3d379ef --- /dev/null +++ b/website/docs/services/infrastructure/app_builder_tags/index.md @@ -0,0 +1,133 @@ +--- +title: app_builder_tags +hide_title: false +hide_table_of_contents: false +keywords: + - app_builder_tags + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an app_builder_tags resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the tag. (example: production)
stringThe resource type for a tag. (tag) (example: tag)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all tags associated with the authenticated user's apps.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all tags associated with the authenticated user's apps. + +```sql +SELECT +id, +type +FROM datadog.infrastructure.app_builder_tags +; +``` + + diff --git a/website/docs/services/infrastructure/apps/index.md b/website/docs/services/infrastructure/apps/index.md index 47aeb53..e26d644 100644 --- a/website/docs/services/infrastructure/apps/index.md +++ b/website/docs/services/infrastructure/apps/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an apps resource. ## Overview - +
Nameapps
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The app definition type. (default: appDefinitions, example: appDefinitions) + The app definition type. (appDefinitions) (default: appDefinitions, example: appDefinitions) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - The app definition type. (default: appDefinitions, example: appDefinitions) + The app definition type. (appDefinitions) (default: appDefinitions, example: appDefinitions) @@ -126,58 +127,58 @@ The following methods are available for this resource: - app_id, region + app_id version - Get the full definition of an app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Get the full definition of an app. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - region + limit, page, filter[user_name], filter[user_uuid], filter[name], filter[query], filter[deployed], filter[tags], filter[favorite], filter[self_service], sort - List all apps, with optional filters and sorting. This endpoint is paginated. Only basic app information such as the app ID, name, and description is returned by this endpoint. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + List all apps, with optional filters and sorting. This endpoint is paginated. Only basic app information such as the app ID, name, and description is returned by this endpoint. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - region - Create a new app, returning the app ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + + Create a new app, returning the app ID. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - app_id, region + app_id - Update an existing app. This creates a new version of the app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Update an existing app. This creates a new version of the app. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - app_id, region + app_id - Delete a single app. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Delete a single app. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - region - Delete multiple apps in a single request from a list of app IDs. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + + Delete multiple apps in a single request from a list of app IDs. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - app_id, region + app_id - Unpublish an app, removing the live version of the app. Unpublishing creates a new instance of a `deployment` object on the app, with a nil `app_version_id` (`00000000-0000-0000-0000-000000000000`). The app can still be updated and published again in the future. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Unpublish an app, removing the live version of the app. Unpublishing creates a new instance of a `deployment` object on the app, with a nil `app_version_id` (`00000000-0000-0000-0000-000000000000`). The app can still be updated and published again in the future. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - app_id, region + app_id - Publish an app for use by other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https://docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Publish an app for use by other users. To ensure the app is accessible to the correct users, you also need to set a [Restriction Policy](https:​//docs.datadoghq.com/api/latest/restriction-policies/) on the app if a policy does not yet exist. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). @@ -200,10 +201,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string (uuid) The ID of the app to publish. (example: 65bb1f25-52e1-4510-9f8d-22d1516ed693) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -288,7 +289,6 @@ attributes, type FROM datadog.infrastructure.apps WHERE app_id = '{{ app_id }}' -- required -AND region = '{{ region }}' -- required AND version = '{{ version }}' ; ``` @@ -305,8 +305,7 @@ meta, relationships, type FROM datadog.infrastructure.apps -WHERE region = '{{ region }}' -- required -AND limit = '{{ limit }}' +WHERE limit = '{{ limit }}' AND page = '{{ page }}' AND filter[user_name] = '{{ filter[user_name] }}' AND filter[user_uuid] = '{{ filter[user_uuid] }}' @@ -338,12 +337,10 @@ Create a new app, returning the app ID. This API requires a [registered applicat ```sql INSERT INTO datadog.infrastructure.apps ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -351,18 +348,53 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: apps props: - - name: region - value: string - description: Required parameter for the apps resource. - name: data - value: object description: | The data object containing the app definition. -``` + value: + attributes: + components: + - events: "{{ events }}" + id: "{{ id }}" + name: "{{ name }}" + properties: + backgroundColor: "{{ backgroundColor }}" + children: + - events: "{{ events }}" + id: "{{ id }}" + name: "{{ name }}" + properties: + children: "{{ children }}" + isVisible: {{ isVisible }} + type: "{{ type }}" + isVisible: "{{ isVisible }}" + type: "{{ type }}" + description: "{{ description }}" + name: "{{ name }}" + queries: + - events: "{{ events }}" + id: "{{ id }}" + name: "{{ name }}" + properties: + condition: {{ condition }} + debounceInMs: {{ debounceInMs }} + mockedOutputs: "{{ mockedOutputs }}" + onlyTriggerManually: {{ onlyTriggerManually }} + outputs: "{{ outputs }}" + pollingIntervalInMs: {{ pollingIntervalInMs }} + requiresConfirmation: {{ requiresConfirmation }} + showToastOnError: {{ showToastOnError }} + spec: "{{ spec }}" + type: "{{ type }}" + rootInstanceName: "{{ rootInstanceName }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} +
@@ -382,10 +414,9 @@ Update an existing app. This creates a new version of the app. This API requires ```sql UPDATE datadog.infrastructure.apps SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE app_id = '{{ app_id }}' --required -AND region = '{{ region }}' --required RETURNING data, included, @@ -412,7 +443,6 @@ Delete a single app. This API requires a [registered application key](https://do ```sql DELETE FROM datadog.infrastructure.apps WHERE app_id = '{{ app_id }}' --required -AND region = '{{ region }}' --required ; ``` @@ -422,7 +452,6 @@ Delete multiple apps in a single request from a list of app IDs. This API requir ```sql DELETE FROM datadog.infrastructure.apps -WHERE region = '{{ region }}' --required ; ``` @@ -431,6 +460,8 @@ WHERE region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + @@ -455,8 +485,7 @@ Publish an app for use by other users. To ensure the app is accessible to the co ```sql EXEC datadog.infrastructure.apps.publish_app -@app_id='{{ app_id }}' --required, -@region='{{ region }}' --required +@app_id='{{ app_id }}' --required ; ``` diff --git a/website/docs/services/infrastructure/container_images/index.md b/website/docs/services/infrastructure/container_images/index.md index eeffff0..754de8b 100644 --- a/website/docs/services/infrastructure/container_images/index.md +++ b/website/docs/services/infrastructure/container_images/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a container_images resourc ## Overview - +
Namecontainer_images
Name
TypeResource
Id
@@ -48,6 +49,26 @@ The following fields are returned by `SELECT` queries: + + + string + Container Image ID. + + + + object + Attributes for a Container Image. + + + + object + Relationships inside a Container Image Group. + + + + string + Type of Container Image. (container_image) (default: container_image, example: container_image) + @@ -71,9 +92,9 @@ The following methods are available for this resource: - region + filter[tags], group_by, sort, page[size], page[cursor] - Get all Container Images for your organization. + Get all Container Images for your organization.<br />**Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https:​//docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. @@ -91,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -134,14 +155,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get all Container Images for your organization. +Get all Container Images for your organization.<br />**Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https:​//docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. ```sql SELECT -* +id, +attributes, +relationships, +type FROM datadog.infrastructure.container_images -WHERE region = '{{ region }}' -- required -AND filter[tags] = '{{ filter[tags] }}' +WHERE filter[tags] = '{{ filter[tags] }}' AND group_by = '{{ group_by }}' AND sort = '{{ sort }}' AND page[size] = '{{ page[size] }}' diff --git a/website/docs/services/infrastructure/containers/index.md b/website/docs/services/infrastructure/containers/index.md index a46a618..4f320d8 100644 --- a/website/docs/services/infrastructure/containers/index.md +++ b/website/docs/services/infrastructure/containers/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a containers resource. ## Overview - +
Namecontainers
Name
TypeResource
Id
@@ -48,6 +49,26 @@ The following fields are returned by `SELECT` queries: + + + string + Container ID. + + + + object + Attributes for a container. + + + + object + Relationships to containers inside a container group. + + + + string + Type of container. (container) (default: container, example: container) +
@@ -71,7 +92,7 @@ The following methods are available for this resource: - region + filter[tags], group_by, sort, page[size], page[cursor] Get all containers for your organization. @@ -91,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -138,10 +159,12 @@ Get all containers for your organization. ```sql SELECT -* +id, +attributes, +relationships, +type FROM datadog.infrastructure.containers -WHERE region = '{{ region }}' -- required -AND filter[tags] = '{{ filter[tags] }}' +WHERE filter[tags] = '{{ filter[tags] }}' AND group_by = '{{ group_by }}' AND sort = '{{ sort }}' AND page[size] = '{{ page[size] }}' diff --git a/website/docs/services/infrastructure/device_interfaces/index.md b/website/docs/services/infrastructure/device_interfaces/index.md index d52368a..a9144ce 100644 --- a/website/docs/services/infrastructure/device_interfaces/index.md +++ b/website/docs/services/infrastructure/device_interfaces/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a device_interfaces resour ## Overview - +
Namedevice_interfaces
Name
TypeResource
Id
@@ -86,7 +87,7 @@ The following methods are available for this resource: - device_id, region + device_id get_ip_addresses Get the list of interfaces of the device. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the device to get interfaces from. (example: example:1.2.3.4) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -143,7 +144,6 @@ attributes, type FROM datadog.infrastructure.device_interfaces WHERE device_id = '{{ device_id }}' -- required -AND region = '{{ region }}' -- required AND get_ip_addresses = '{{ get_ip_addresses }}' ; ``` diff --git a/website/docs/services/infrastructure/device_user_tags/index.md b/website/docs/services/infrastructure/device_user_tags/index.md index 234f24c..9088902 100644 --- a/website/docs/services/infrastructure/device_user_tags/index.md +++ b/website/docs/services/infrastructure/device_user_tags/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a device_user_tags resourc ## Overview - +
Namedevice_user_tags
Name
TypeResource
Id
@@ -86,14 +87,14 @@ The following methods are available for this resource: - device_id, region + device_id Get the list of tags for a device. - device_id, region + device_id Update the tags for a device. @@ -118,10 +119,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The id of the device to update tags for. (example: example:1.2.3.4) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -145,7 +146,6 @@ attributes, type FROM datadog.infrastructure.device_user_tags WHERE device_id = '{{ device_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -167,10 +167,9 @@ Update the tags for a device. ```sql UPDATE datadog.infrastructure.device_user_tags SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE device_id = '{{ device_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` diff --git a/website/docs/services/infrastructure/devices/index.md b/website/docs/services/infrastructure/devices/index.md index 3080d3a..360f301 100644 --- a/website/docs/services/infrastructure/devices/index.md +++ b/website/docs/services/infrastructure/devices/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a devices resource. ## Overview - +
Namedevices
Name
TypeResource
Id
@@ -116,14 +117,14 @@ The following methods are available for this resource: - device_id, region + device_id Get the device details. - region + page[size], page[number], sort, filter[tag] Get the list of devices. @@ -148,10 +149,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The id of the device to fetch. (example: example:1.2.3.4) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -161,17 +162,17 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Specific page number to return. + Specific page number to return. Defaults to 0. integer (int64) - Size for a given page. The maximum allowed value is 100. + Size for a given page. The maximum allowed value is 500. Defaults to 50. string - The field to sort the devices by. (example: status) + The field to sort the devices by. Defaults to `name`. (example: status) @@ -196,7 +197,6 @@ attributes, type FROM datadog.infrastructure.devices WHERE device_id = '{{ device_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -210,8 +210,7 @@ id, attributes, type FROM datadog.infrastructure.devices -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter[tag] = '{{ filter[tag] }}' diff --git a/website/docs/services/infrastructure/host_tags/index.md b/website/docs/services/infrastructure/host_tags/index.md new file mode 100644 index 0000000..6022340 --- /dev/null +++ b/website/docs/services/infrastructure/host_tags/index.md @@ -0,0 +1,314 @@ +--- +title: host_tags +hide_title: false +hide_table_of_contents: false +keywords: + - host_tags + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a host_tags resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour host name. (example: test.host)
arrayA list of tags associated with a host.
+
+ + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectA mapping of tags to host names
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
host_namesourceReturn the list of tags that apply to a given host.
sourceReturns a mapping of tags to hosts. For each tag, the response returns a list of host names that contain this tag. There is a restriction of 10k total host names from the org that can be attached to tags and returned.
host_namesourceThis endpoint allows you to add new tags to a host,<br />optionally specifying what source these tags come from. If tags already exist, appends new tags to the tag list. If no source is specified, defaults to "user".
host_namesourceThis endpoint allows you to update/replace all tags in<br />an integration source with those supplied in the request.
host_namesourceThis endpoint allows you to remove all tags<br />for a single host. If no source is specified, only deletes from the source "User".
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringSpecified host name to delete tags
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringSource of the tags to be deleted. [Complete list of source attribute values](https:​//docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags.
+ +## `SELECT` examples + + + + +Return the list of tags that apply to a given host. + +```sql +SELECT +host, +tags +FROM datadog.infrastructure.host_tags +WHERE host_name = '{{ host_name }}' -- required +AND source = '{{ source }}' +; +``` + + + +Returns a mapping of tags to hosts. For each tag, the response returns a list of host names that contain this tag. There is a restriction of 10k total host names from the org that can be attached to tags and returned. + +```sql +SELECT +tags +FROM datadog.infrastructure.host_tags +WHERE source = '{{ source }}' +; +``` + + + + +## `INSERT` examples + + + + +This endpoint allows you to add new tags to a host,<br />optionally specifying what source these tags come from. If tags already exist, appends new tags to the tag list. If no source is specified, defaults to "user". + +```sql +INSERT INTO datadog.infrastructure.host_tags ( +host, +tags, +host_name, +source +) +SELECT +'{{ host }}', +'{{ tags }}', +'{{ host_name }}', +'{{ source }}' +RETURNING +host, +tags +; +``` + + + +{`# Description fields are for documentation purposes +- name: host_tags + props: + - name: host_name + value: "{{ host_name }}" + description: Required parameter for the host_tags resource. + - name: host + value: "{{ host }}" + description: | + Your host name. + - name: tags + value: + - "{{ tags }}" + description: | + A list of tags associated with a host. + - name: source + value: "{{ source }}" + description: Source to add tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. If no source is specified, defaults to "user". (example: chef) + description: Source to add tags. [Complete list of source attribute values](https://docs.datadoghq.com/integrations/faq/list-of-api-source-attribute-value). Use "user" source for custom-defined tags. If no source is specified, defaults to "user". (example: chef) +`} + + + + + +## `REPLACE` examples + + + + +This endpoint allows you to update/replace all tags in<br />an integration source with those supplied in the request. + +```sql +REPLACE datadog.infrastructure.host_tags +SET +host = '{{ host }}', +tags = '{{ tags }}' +WHERE +host_name = '{{ host_name }}' --required +AND source = '{{ source}}' +RETURNING +host, +tags; +``` + + + + +## `DELETE` examples + + + + +This endpoint allows you to remove all tags<br />for a single host. If no source is specified, only deletes from the source "User". + +```sql +DELETE FROM datadog.infrastructure.host_tags +WHERE host_name = '{{ host_name }}' --required +AND source = '{{ source }}' +; +``` + + diff --git a/website/docs/services/infrastructure/host_totals/index.md b/website/docs/services/infrastructure/host_totals/index.md new file mode 100644 index 0000000..1d53ea1 --- /dev/null +++ b/website/docs/services/infrastructure/host_totals/index.md @@ -0,0 +1,139 @@ +--- +title: host_totals +hide_title: false +hide_table_of_contents: false +keywords: + - host_totals + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a host_totals resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Total number of active host (UP and ???) reporting to Datadog.
integer (int64)Number of host that are UP and reporting to Datadog.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
fromThis endpoint returns the total number of active and up hosts in your Datadog account.<br />Active means the host has reported in the past hour, and up means it has reported in the past two hours.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Number of seconds from which you want to get total number of active hosts.
+ +## `SELECT` examples + + + + +This endpoint returns the total number of active and up hosts in your Datadog account.<br />Active means the host has reported in the past hour, and up means it has reported in the past two hours. + +```sql +SELECT +total_active, +total_up +FROM datadog.infrastructure.host_totals +WHERE from = '{{ from }}' +; +``` + + diff --git a/website/docs/services/infrastructure/hosts/index.md b/website/docs/services/infrastructure/hosts/index.md new file mode 100644 index 0000000..e2c4a35 --- /dev/null +++ b/website/docs/services/infrastructure/hosts/index.md @@ -0,0 +1,312 @@ +--- +title: hosts +hide_title: false +hide_table_of_contents: false +keywords: + - hosts + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a hosts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The host ID.
stringThe host name. (example: i-hostname)
stringAWS name of your host. (example: mycoolhost-1)
stringThe host name. (example: i-deadbeef)
arrayHost aliases collected by Datadog.
arrayThe Datadog integrations reporting metrics for the host.
booleanIf a host is muted or unmuted.
integer (int64)Last time the host reported a metric data point.
objectMetadata associated with your host.
objectHost Metrics collected.
integer (int64)Timeout of the mute applied to your host.
arraySource or cloud provider associated with your host.
objectList of tags for each source (AWS, Datadog Agent, Chef..).
booleanDisplays UP when the expected metrics are received and displays `???` if no metrics are received.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter, sort_field, sort_dir, start, count, from, include_muted_hosts_data, include_hosts_metadataThis endpoint allows searching for hosts by name, alias, or tag.<br />Hosts live within the past 3 hours are included by default.<br />Retention is 7 days.<br />Results are paginated with a max of 1000 results at a time.<br />**Note:** If the host is an Amazon EC2 instance, `id` is replaced with `aws_id` in the response.<br />**Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https:​//docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint.
host_nameMute a host. **Note:** This creates a [Downtime V2](https:​//docs.datadoghq.com/api/latest/downtimes/#schedule-a-downtime) for the host.
host_nameUnmutes a host. This endpoint takes no JSON arguments.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the host to unmute.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Number of hosts to return. Max 1000.
stringString to filter search results.
integer (int64)Number of seconds since UNIX epoch from which you want to search your hosts.
booleanInclude additional metadata about the hosts (agent_version, machine, platform, processor, etc.).
booleanInclude information on the muted status of hosts and when the mute expires.
stringDirection of sort. Options include `asc` and `desc`.
stringSort hosts by this field.
integer (int64)Specify the starting point for the host search results. For example, if you set `count` to 100 and the first 100 results have already been returned, you can set `start` to `101` to get the next 100 results.
+ +## `SELECT` examples + + + + +This endpoint allows searching for hosts by name, alias, or tag.<br />Hosts live within the past 3 hours are included by default.<br />Retention is 7 days.<br />Results are paginated with a max of 1000 results at a time.<br />**Note:** If the host is an Amazon EC2 instance, `id` is replaced with `aws_id` in the response.<br />**Note**: To enrich the data returned by this endpoint with security scans, see the new [api/v2/security/scanned-assets-metadata](https:​//docs.datadoghq.com/api/latest/security-monitoring/#list-scanned-assets-metadata) endpoint. + +```sql +SELECT +id, +name, +aws_name, +host_name, +aliases, +apps, +is_muted, +last_reported_time, +meta, +metrics, +mute_timeout, +sources, +tags_by_source, +up +FROM datadog.infrastructure.hosts +WHERE filter = '{{ filter }}' +AND sort_field = '{{ sort_field }}' +AND sort_dir = '{{ sort_dir }}' +AND start = '{{ start }}' +AND count = '{{ count }}' +AND from = '{{ from }}' +AND include_muted_hosts_data = '{{ include_muted_hosts_data }}' +AND include_hosts_metadata = '{{ include_hosts_metadata }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Mute a host. **Note:** This creates a [Downtime V2](https://docs.datadoghq.com/api/latest/downtimes/#schedule-a-downtime) for the host. + +```sql +EXEC datadog.infrastructure.hosts.mute_host +@host_name='{{ host_name }}' --required, +@@json= +'{ +"end": {{ end }}, +"message": "{{ message }}", +"override": {{ override }} +}' +; +``` + + + +Unmutes a host. This endpoint takes no JSON arguments. + +```sql +EXEC datadog.infrastructure.hosts.unmute_host +@host_name='{{ host_name }}' --required +; +``` + + diff --git a/website/docs/services/infrastructure/index.md b/website/docs/services/infrastructure/index.md index e185b84..b28ebd2 100644 --- a/website/docs/services/infrastructure/index.md +++ b/website/docs/services/infrastructure/index.md @@ -18,7 +18,7 @@ infrastructure service documentation. :::info[Service Summary] -total resources: __10__ +total resources: __28__ ::: @@ -27,15 +27,33 @@ total resources: __10__
\ No newline at end of file diff --git a/website/docs/services/infrastructure/ndm_tag_interfaces/index.md b/website/docs/services/infrastructure/ndm_tag_interfaces/index.md new file mode 100644 index 0000000..eae4aad --- /dev/null +++ b/website/docs/services/infrastructure/ndm_tag_interfaces/index.md @@ -0,0 +1,177 @@ +--- +title: ndm_tag_interfaces +hide_title: false +hide_table_of_contents: false +keywords: + - ndm_tag_interfaces + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ndm_tag_interfaces resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe interface ID (example: example:1.2.3.4:1)
objectThe definition of ListTagsResponseDataAttributes object.
stringThe type of the resource. The value should always be tags.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
interface_idReturns the tags associated with the specified interface.
interface_idUpdates the tags associated with the specified interface.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the interface for which to update tags. (example: example:1.2.3.4:1)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Returns the tags associated with the specified interface. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.ndm_tag_interfaces +WHERE interface_id = '{{ interface_id }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Updates the tags associated with the specified interface. + +```sql +UPDATE datadog.infrastructure.ndm_tag_interfaces +SET +data = '{{ data }}' +WHERE +interface_id = '{{ interface_id }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/infrastructure/network_health_insights/index.md b/website/docs/services/infrastructure/network_health_insights/index.md new file mode 100644 index 0000000..18f3691 --- /dev/null +++ b/website/docs/services/infrastructure/network_health_insights/index.md @@ -0,0 +1,151 @@ +--- +title: network_health_insights +hide_title: false +hide_table_of_contents: false +keywords: + - network_health_insights + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a network_health_insights resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for this network health insight. (example: example-insight-id)
objectDetailed attributes of a network health insight.
stringThe resource type for network health insights. Always `network-health-insights`. (network-health-insights) (default: network-health-insights, example: network-health-insights)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
from, toReturn network health insights for the organization within the given time window.<br />Insights are produced by analyzing DNS failures pre-classified by `network-dns-logger`,<br />TLS certificate metrics, and denied security group connections. Each insight<br />identifies the client and server services involved, the type of issue, and the<br />magnitude of the failure observed during the query window.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringUnix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window will be 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. (example: 1716800000)
stringUnix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window will be the current time. If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. (example: 1716800900)
+ +## `SELECT` examples + + + + +Return network health insights for the organization within the given time window.<br />Insights are produced by analyzing DNS failures pre-classified by `network-dns-logger`,<br />TLS certificate metrics, and denied security group connections. Each insight<br />identifies the client and server services involved, the type of issue, and the<br />magnitude of the failure observed during the query window. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.network_health_insights +WHERE from = '{{ from }}' +AND to = '{{ to }}' +; +``` + + diff --git a/website/docs/services/infrastructure/processes/index.md b/website/docs/services/infrastructure/processes/index.md index ca0895b..4413bde 100644 --- a/website/docs/services/infrastructure/processes/index.md +++ b/website/docs/services/infrastructure/processes/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a processes resource. ## Overview - +
Nameprocesses
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of process summary. (default: process, example: process) + Type of process summary. (process) (default: process, example: process) @@ -86,7 +87,7 @@ The following methods are available for this resource: - region + search, tags, from, to, page[limit], page[cursor] Get all processes for your organization. @@ -106,15 +107,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. integer (int64) - Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window will be 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + Unix timestamp (number of seconds since epoch) of the start of the query window. If not provided, the start of the query window will be 15 minutes before the `to` timestamp. If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. @@ -139,7 +140,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window will be 15 minutes after the `from` timestamp. If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. + Unix timestamp (number of seconds since epoch) of the end of the query window. If not provided, the end of the query window will be 15 minutes after the `from` timestamp. If neither `from` nor `to` are provided, the query window will be `[now - 15m, now]`. @@ -162,8 +163,7 @@ id, attributes, type FROM datadog.infrastructure.processes -WHERE region = '{{ region }}' -- required -AND search = '{{ search }}' +WHERE search = '{{ search }}' AND tags = '{{ tags }}' AND from = '{{ from }}' AND to = '{{ to }}' diff --git a/website/docs/services/infrastructure/spa_recommendations/index.md b/website/docs/services/infrastructure/spa_recommendations/index.md index 67f747b..be250c4 100644 --- a/website/docs/services/infrastructure/spa_recommendations/index.md +++ b/website/docs/services/infrastructure/spa_recommendations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a spa_recommendations reso ## Overview - +
Namespa_recommendations
Name
TypeResource
Id
@@ -32,11 +33,41 @@ Creates, updates, deletes, gets or lists a spa_recommendations reso The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringResource identifier for the recommendation. Optional in responses.
objectAttributes of the SPA Recommendation resource. Contains recommendations for both driver and executor components.
stringJSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. (recommendation) (default: recommendation, example: recommendation)
+
@@ -61,7 +92,7 @@ The following fields are returned by `SELECT` queries: - +
stringJSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. (default: recommendation, example: recommendation)JSON:API resource type for Spark Pod Autosizing recommendations. Identifies the Recommendation resource returned by SPA. (recommendation) (default: recommendation, example: recommendation)
@@ -83,12 +114,19 @@ The following methods are available for this resource: + + + + shard, service + bypass_cache + This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. + - shard, service, region - - Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. + service + bypass_cache + This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results. @@ -106,35 +144,41 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string - The service name for a spark job + The service name for a spark job. string The shard tag for a spark job, which differentiates jobs within the same service that have different resource needs + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + string + The recommendation service should not use its metrics cache. + ## `SELECT` examples - + -Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. +This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and shard identifier, and SPA returns structured recommendations for driver and executor resources. ```sql SELECT @@ -144,7 +188,22 @@ type FROM datadog.infrastructure.spa_recommendations WHERE shard = '{{ shard }}' -- required AND service = '{{ service }}' -- required -AND region = '{{ region }}' -- required +AND bypass_cache = '{{ bypass_cache }}' +; +``` + + + +This endpoint is currently experimental and restricted to Datadog internal use only. Retrieve resource recommendations for a Spark job. The caller (Spark Gateway or DJM UI) provides a service name and SPA returns structured recommendations for driver and executor resources. The version with a shard should be preferred, where possible, as it gives more accurate results. + +```sql +SELECT +id, +attributes, +type +FROM datadog.infrastructure.spa_recommendations +WHERE service = '{{ service }}' -- required +AND bypass_cache = '{{ bypass_cache }}' ; ``` diff --git a/website/docs/services/infrastructure/storage_management_configs/index.md b/website/docs/services/infrastructure/storage_management_configs/index.md new file mode 100644 index 0000000..3c6a16e --- /dev/null +++ b/website/docs/services/infrastructure/storage_management_configs/index.md @@ -0,0 +1,139 @@ +--- +title: storage_management_configs +hide_title: false +hide_table_of_contents: false +keywords: + - storage_management_configs + - infrastructure + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a storage_management_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataEnable Storage Management for an S3 bucket, GCS bucket, or Azure container by registering the destination that holds its inventory reports. Set `data.id` to the cloud provider (`aws`, `gcp`, or `azure`) and provide the matching settings under data.attributes. Calling this endpoint with the same provider replaces the existing configuration.
idDelete a Storage Management configuration by its unique identifier. Deleting a configuration stops inventory file synchronization for the associated cloud account.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the Storage Management configuration. (example: abc123)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `REPLACE` examples + + + + +Enable Storage Management for an S3 bucket, GCS bucket, or Azure container by registering the destination that holds its inventory reports. Set `data.id` to the cloud provider (`aws`, `gcp`, or `azure`) and provide the matching settings under data.attributes. Calling this endpoint with the same provider replaces the existing configuration. + +```sql +REPLACE datadog.infrastructure.storage_management_configs +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a Storage Management configuration by its unique identifier. Deleting a configuration stops inventory file synchronization for the associated cloud account. + +```sql +DELETE FROM datadog.infrastructure.storage_management_configs +WHERE id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/aws_account_ccm_configs/index.md b/website/docs/services/integrations/aws_account_ccm_configs/index.md new file mode 100644 index 0000000..e30bb32 --- /dev/null +++ b/website/docs/services/integrations/aws_account_ccm_configs/index.md @@ -0,0 +1,268 @@ +--- +title: aws_account_ccm_configs +hide_title: false +hide_table_of_contents: false +keywords: + - aws_account_ccm_configs + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_account_ccm_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS CCM Config object + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. (example: 00000000-abcd-0001-0000-000000000000)
objectAWS CCM Config response attributes.
stringAWS CCM Config resource type. (ccm_config) (default: ccm_config, example: ccm_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
aws_account_config_idGet the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID.
aws_account_config_id, dataCreate the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID.
aws_account_config_id, dataUpdate the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID.
aws_account_config_idDelete the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_account_ccm_configs +WHERE aws_account_config_id = '{{ aws_account_config_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID. + +```sql +INSERT INTO datadog.integrations.aws_account_ccm_configs ( +data, +aws_account_config_id +) +SELECT +'{{ data }}' /* required */, +'{{ aws_account_config_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: aws_account_ccm_configs + props: + - name: aws_account_config_id + value: "{{ aws_account_config_id }}" + description: Required parameter for the aws_account_ccm_configs resource. + - name: data + description: | + AWS CCM Config Create/Update Request data. + value: + attributes: + ccm_config: + data_export_configs: + - bucket_name: "{{ bucket_name }}" + bucket_region: "{{ bucket_region }}" + report_name: "{{ report_name }}" + report_prefix: "{{ report_prefix }}" + report_type: "{{ report_type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID. + +```sql +UPDATE datadog.integrations.aws_account_ccm_configs +SET +data = '{{ data }}' +WHERE +aws_account_config_id = '{{ aws_account_config_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete the Cloud Cost Management config for an AWS Account Integration Config using Cost and Usage Report<br />(CUR) 2.0 by config ID. + +```sql +DELETE FROM datadog.integrations.aws_account_ccm_configs +WHERE aws_account_config_id = '{{ aws_account_config_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/aws_account_metric_name_filter_previews/index.md b/website/docs/services/integrations/aws_account_metric_name_filter_previews/index.md new file mode 100644 index 0000000..bd18d9b --- /dev/null +++ b/website/docs/services/integrations/aws_account_metric_name_filter_previews/index.md @@ -0,0 +1,147 @@ +--- +title: aws_account_metric_name_filter_previews +hide_title: false +hide_table_of_contents: false +keywords: + - aws_account_metric_name_filter_previews + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_account_metric_name_filter_previews resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS metric name filter preview result + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. (example: 00000000-abcd-0001-0000-000000000000)
objectAWS metric name filter preview response attributes.
stringThe `AWSMetricNameFilterPreviewResponseData` `type`. (metric_name_filter_preview) (default: metric_name_filter_preview, example: metric_name_filter_preview)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
aws_account_config_idPreview which collected CloudWatch metrics would be filtered by the account's saved metric name filters.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Preview which collected CloudWatch metrics would be filtered by the account's saved metric name filters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_account_metric_name_filter_previews +WHERE aws_account_config_id = '{{ aws_account_config_id }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/aws_accounts/index.md b/website/docs/services/integrations/aws_accounts/index.md index b141eea..14b0760 100644 --- a/website/docs/services/integrations/aws_accounts/index.md +++ b/website/docs/services/integrations/aws_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_accounts resource. ## Overview - +
Nameaws_accounts
Name
TypeResource
Id
@@ -54,7 +55,7 @@ AWS Account object string - Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. (example: 00000000-abcd-0001-0000-000000000000) + Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. (example: 00000000-abcd-0001-0000-000000000000) @@ -64,7 +65,7 @@ AWS Account object string - AWS Account resource type. (default: account, example: account) + AWS Account resource type. (account) (default: account, example: account) @@ -85,7 +86,7 @@ AWS Accounts List object string - Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. (example: 00000000-abcd-0001-0000-000000000000) + Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. (example: 00000000-abcd-0001-0000-000000000000) @@ -95,7 +96,7 @@ AWS Accounts List object string - AWS Account resource type. (default: account, example: account) + AWS Account resource type. (account) (default: account, example: account) @@ -120,45 +121,59 @@ The following methods are available for this resource: - aws_account_config_id, region + aws_account_config_id Get an AWS Account Integration Config by config ID. - region + aws_account_id Get a list of AWS Account Integration Configs. - region, data__data + data Create a new AWS Account Integration Config. - aws_account_config_id, region, data__data + aws_account_config_id, data Update an AWS Account Integration Config by config ID. - aws_account_config_id, region + aws_account_config_id Delete an AWS Account Integration Config by config ID. + + + + aws_account_config_id, data + + Preview which collected CloudWatch metrics would be filtered by the supplied metric name filters.<br />The filters are not persisted. + - region + Generate a new external ID for AWS role-based authentication. + + + + data + + Validate a Cloud Cost Management config for an AWS account using Cost and Usage Report<br />(CUR) 2.0 against Datadog's ingest requirements without persisting it. + @@ -178,12 +193,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https://docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. + Unique Datadog ID of the AWS Account Integration Config. To get the config ID for an account, use the [List all AWS integrations](https:​//docs.datadoghq.com/api/latest/aws-integration/#list-all-aws-integrations) endpoint and query by AWS Account ID. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -213,7 +228,6 @@ attributes, type FROM datadog.integrations.aws_accounts WHERE aws_account_config_id = '{{ aws_account_config_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -227,8 +241,7 @@ id, attributes, type FROM datadog.integrations.aws_accounts -WHERE region = '{{ region }}' -- required -AND aws_account_id = '{{ aws_account_id }}' +WHERE aws_account_id = '{{ aws_account_id }}' ; ```
@@ -250,12 +263,10 @@ Create a new AWS Account Integration Config. ```sql INSERT INTO datadog.integrations.aws_accounts ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -263,18 +274,63 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: aws_accounts props: - - name: region - value: string - description: Required parameter for the aws_accounts resource. - name: data - value: object description: | AWS Account Create Request data. -``` + value: + attributes: + account_tags: + - "{{ account_tags }}" + auth_config: + access_key_id: "{{ access_key_id }}" + secret_access_key: "{{ secret_access_key }}" + external_id: "{{ external_id }}" + role_name: "{{ role_name }}" + aws_account_id: "{{ aws_account_id }}" + aws_partition: "{{ aws_partition }}" + aws_regions: + include_all: {{ include_all }} + include_only: + - "{{ include_only }}" + logs_config: + lambda_forwarder: + lambdas: + - "{{ lambdas }}" + log_source_config: + tag_filters: "{{ tag_filters }}" + sources: + - "{{ sources }}" + metrics_config: + automute_enabled: {{ automute_enabled }} + collect_cloudwatch_alarms: {{ collect_cloudwatch_alarms }} + collect_custom_metrics: {{ collect_custom_metrics }} + enabled: {{ enabled }} + metric_name_filters: + - include_only: "{{ include_only }}" + namespace: "{{ namespace }}" + exclude_only: "{{ exclude_only }}" + namespace_filters: + exclude_only: + - "{{ exclude_only }}" + include_only: + - "{{ include_only }}" + tag_filters: + - namespace: "{{ namespace }}" + tags: "{{ tags }}" + resources_config: + cloud_security_posture_management_collection: {{ cloud_security_posture_management_collection }} + extended_collection: {{ extended_collection }} + traces_config: + xray_services: + include_all: {{ include_all }} + include_only: + - "{{ include_only }}" + type: "{{ type }}" +`} +
@@ -294,11 +350,10 @@ Update an AWS Account Integration Config by config ID. ```sql UPDATE datadog.integrations.aws_accounts SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE aws_account_config_id = '{{ aws_account_config_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -321,7 +376,6 @@ Delete an AWS Account Integration Config by config ID. ```sql DELETE FROM datadog.integrations.aws_accounts WHERE aws_account_config_id = '{{ aws_account_config_id }}' --required -AND region = '{{ region }}' --required ; ``` @@ -330,19 +384,49 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + + + +Preview which collected CloudWatch metrics would be filtered by the supplied metric name filters.<br />The filters are not persisted. + +```sql +EXEC datadog.integrations.aws_accounts.preview_awsmetric_name_filter +@aws_account_config_id='{{ aws_account_config_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + Generate a new external ID for AWS role-based authentication. ```sql EXEC datadog.integrations.aws_accounts.create_new_awsexternal_id -@region='{{ region }}' --required +; +``` + + + +Validate a Cloud Cost Management config for an AWS account using Cost and Usage Report<br />(CUR) 2.0 against Datadog's ingest requirements without persisting it. + +```sql +EXEC datadog.integrations.aws_accounts.validate_awsccmconfig +@@json= +'{ +"data": "{{ data }}" +}' ; ``` diff --git a/website/docs/services/integrations/aws_event_bridges/index.md b/website/docs/services/integrations/aws_event_bridges/index.md new file mode 100644 index 0000000..2208572 --- /dev/null +++ b/website/docs/services/integrations/aws_event_bridges/index.md @@ -0,0 +1,220 @@ +--- +title: aws_event_bridges +hide_title: false +hide_table_of_contents: false +keywords: + - aws_event_bridges + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_event_bridges resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Amazon EventBridge sources list. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Amazon EventBridge list response data. (default: get_event_bridge, example: get_event_bridge)
objectAn object describing the EventBridge configuration for multiple accounts.
stringAmazon EventBridge resource type. (event_bridge) (default: event_bridge, example: event_bridge)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all Amazon EventBridge sources.
dataCreate an Amazon EventBridge source.
Delete an Amazon EventBridge source.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all Amazon EventBridge sources. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_event_bridges +; +``` + + + + +## `INSERT` examples + + + + +Create an Amazon EventBridge source. + +```sql +INSERT INTO datadog.integrations.aws_event_bridges ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: aws_event_bridges + props: + - name: data + description: | + Amazon EventBridge create request data. + value: + attributes: + account_id: "{{ account_id }}" + create_event_bus: {{ create_event_bus }} + event_generator_name: "{{ event_generator_name }}" + region: "{{ region }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete an Amazon EventBridge source. + +```sql +DELETE FROM datadog.integrations.aws_event_bridges +; +``` + + diff --git a/website/docs/services/integrations/aws_iam_permission_resource_collections/index.md b/website/docs/services/integrations/aws_iam_permission_resource_collections/index.md new file mode 100644 index 0000000..a012bfe --- /dev/null +++ b/website/docs/services/integrations/aws_iam_permission_resource_collections/index.md @@ -0,0 +1,141 @@ +--- +title: aws_iam_permission_resource_collections +hide_title: false +hide_table_of_contents: false +keywords: + - aws_iam_permission_resource_collections + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_iam_permission_resource_collections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS integration resource collection IAM permissions. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `AWSIntegrationIamPermissionsResponseData` `id`. (default: permissions, example: permissions)
objectAWS Integration IAM Permissions response attributes.
stringThe `AWSIntegrationIamPermissionsResponseData` `type`. (permissions) (default: permissions, example: permissions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all resource collection AWS IAM permissions required for the AWS integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all resource collection AWS IAM permissions required for the AWS integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_iam_permission_resource_collections +; +``` + + diff --git a/website/docs/services/integrations/aws_iam_permission_standards/index.md b/website/docs/services/integrations/aws_iam_permission_standards/index.md new file mode 100644 index 0000000..e68423e --- /dev/null +++ b/website/docs/services/integrations/aws_iam_permission_standards/index.md @@ -0,0 +1,141 @@ +--- +title: aws_iam_permission_standards +hide_title: false +hide_table_of_contents: false +keywords: + - aws_iam_permission_standards + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_iam_permission_standards resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +AWS integration standard IAM permissions. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `AWSIntegrationIamPermissionsResponseData` `id`. (default: permissions, example: permissions)
objectAWS Integration IAM Permissions response attributes.
stringThe `AWSIntegrationIamPermissionsResponseData` `type`. (permissions) (default: permissions, example: permissions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all standard AWS IAM permissions required for the AWS integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all standard AWS IAM permissions required for the AWS integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_iam_permission_standards +; +``` + + diff --git a/website/docs/services/integrations/aws_iam_permissions/index.md b/website/docs/services/integrations/aws_iam_permissions/index.md index fb4ece0..634fd15 100644 --- a/website/docs/services/integrations/aws_iam_permissions/index.md +++ b/website/docs/services/integrations/aws_iam_permissions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_iam_permissions res ## Overview - +
Nameaws_iam_permissions
Name
TypeResource
Id
@@ -63,7 +64,7 @@ AWS IAM Permissions object string - The `AWSIntegrationIamPermissionsResponseData` `type`. (default: permissions, example: permissions) + The `AWSIntegrationIamPermissionsResponseData` `type`. (permissions) (default: permissions, example: permissions) @@ -88,7 +89,7 @@ The following methods are available for this resource: - region + Get all AWS IAM permissions required for the AWS integration. @@ -108,10 +109,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -134,7 +135,6 @@ id, attributes, type FROM datadog.integrations.aws_iam_permissions -WHERE region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/integrations/aws_logs_services/index.md b/website/docs/services/integrations/aws_logs_services/index.md index d0761be..f627765 100644 --- a/website/docs/services/integrations/aws_logs_services/index.md +++ b/website/docs/services/integrations/aws_logs_services/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_logs_services resou ## Overview - +
Nameaws_logs_services
Name
TypeResource
Id
@@ -63,7 +64,7 @@ AWS Logs Services List object string - The `AWSLogsServicesResponseData` `type`. (default: logs_services, example: logs_services) + The `AWSLogsServicesResponseData` `type`. (logs_services) (default: logs_services, example: logs_services) @@ -88,7 +89,7 @@ The following methods are available for this resource: - region + Get a list of AWS services that can send logs to Datadog. @@ -108,10 +109,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -134,7 +135,6 @@ id, attributes, type FROM datadog.integrations.aws_logs_services -WHERE region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/integrations/aws_namespaces/index.md b/website/docs/services/integrations/aws_namespaces/index.md index 53ed5aa..4389bfc 100644 --- a/website/docs/services/integrations/aws_namespaces/index.md +++ b/website/docs/services/integrations/aws_namespaces/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_namespaces resource ## Overview - +
Nameaws_namespaces
Name
TypeResource
Id
@@ -63,7 +64,7 @@ AWS Namespaces List object string - The `AWSNamespacesResponseData` `type`. (default: namespaces, example: namespaces) + The `AWSNamespacesResponseData` `type`. (namespaces) (default: namespaces, example: namespaces) @@ -88,7 +89,7 @@ The following methods are available for this resource: - region + Get a list of available AWS CloudWatch namespaces that can send metrics to Datadog. @@ -108,10 +109,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -134,7 +135,6 @@ id, attributes, type FROM datadog.integrations.aws_namespaces -WHERE region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/integrations/aws_persona_mappings/index.md b/website/docs/services/integrations/aws_persona_mappings/index.md new file mode 100644 index 0000000..92f07f9 --- /dev/null +++ b/website/docs/services/integrations/aws_persona_mappings/index.md @@ -0,0 +1,274 @@ +--- +title: aws_persona_mappings +hide_title: false +hide_table_of_contents: false +keywords: + - aws_persona_mappings + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an aws_persona_mappings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the persona mapping (example: c5c758c6-18c2-4484-ae3f-46b84128404a)
objectAttributes for AWS cloud authentication persona mapping response
stringType identifier for AWS cloud authentication persona mapping (aws_cloud_auth_config) (example: aws_cloud_auth_config)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the persona mapping (example: c5c758c6-18c2-4484-ae3f-46b84128404a)
objectAttributes for AWS cloud authentication persona mapping response
stringType identifier for AWS cloud authentication persona mapping (aws_cloud_auth_config) (example: aws_cloud_auth_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
persona_mapping_idGet a specific AWS cloud authentication persona mapping by ID. This endpoint retrieves a single configured persona mapping that associates an AWS IAM principal with a Datadog user.
List all AWS cloud authentication persona mappings. This endpoint retrieves all configured persona mappings that associate AWS IAM principals with Datadog users.
dataCreate an AWS cloud authentication persona mapping. This endpoint associates an AWS IAM principal with a Datadog user.
persona_mapping_idDelete an AWS cloud authentication persona mapping by ID. This removes the association between an AWS IAM principal and a Datadog user.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the persona mapping (example: c5c758c6-18c2-4484-ae3f-46b84128404a)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific AWS cloud authentication persona mapping by ID. This endpoint retrieves a single configured persona mapping that associates an AWS IAM principal with a Datadog user. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_persona_mappings +WHERE persona_mapping_id = '{{ persona_mapping_id }}' -- required +; +``` + + + +List all AWS cloud authentication persona mappings. This endpoint retrieves all configured persona mappings that associate AWS IAM principals with Datadog users. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.aws_persona_mappings +; +``` + + + + +## `INSERT` examples + + + + +Create an AWS cloud authentication persona mapping. This endpoint associates an AWS IAM principal with a Datadog user. + +```sql +INSERT INTO datadog.integrations.aws_persona_mappings ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: aws_persona_mappings + props: + - name: data + description: | + Data for creating an AWS cloud authentication persona mapping + value: + attributes: + account_identifier: "{{ account_identifier }}" + arn_pattern: "{{ arn_pattern }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete an AWS cloud authentication persona mapping by ID. This removes the association between an AWS IAM principal and a Datadog user. + +```sql +DELETE FROM datadog.integrations.aws_persona_mappings +WHERE persona_mapping_id = '{{ persona_mapping_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/azure_accounts/index.md b/website/docs/services/integrations/azure_accounts/index.md new file mode 100644 index 0000000..64d105a --- /dev/null +++ b/website/docs/services/integrations/azure_accounts/index.md @@ -0,0 +1,454 @@ +--- +title: azure_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - azure_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an azure_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour Azure web application ID. (example: testc7f6-1234-5678-9101-3fcbf464test)
stringYour New Azure web application ID. (example: new1c7f6-1234-5678-9101-3fcbf464test)
stringYour New Azure Active Directory ID. (example: new1c44-1234-5678-9101-cc00736ftest)
stringYour Azure Active Directory ID. (example: testc44-1234-5678-9101-cc00736ftest)
stringLimit the Azure app service plans that are pulled into Datadog using tags. Only app service plans that match one of the defined tags are imported into Datadog. (example: key:value,filter:example)
booleanSilence monitors for expected Azure VM shutdowns.
stringYour Azure web application secret key. (example: TestingRh2nx664kUy5dIApvM54T4AtO)
stringLimit the Azure container apps that are pulled into Datadog using tags. Only container apps that match one of the defined tags are imported into Datadog. (example: key:value,filter:example)
booleanWhen enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration. Note: This requires resource_collection_enabled to be set to true.
booleanEnable custom metrics for your organization.
arrayErrors in your configuration.
stringLimit the Azure instances that are pulled into Datadog by using tags. Only hosts that match one of the defined tags are imported into Datadog. (example: key:value,filter:example)
booleanEnable Azure metrics for your organization.
booleanEnable Azure metrics for your organization for resource providers where no resource provider config is specified.
booleanWhen enabled, Datadog collects metadata and configuration info from cloud resources (compute instances, databases, load balancers, etc.) monitored by this app registration.
arrayConfiguration settings applied to resources from the specified Azure resource providers.
boolean(Preview) When enabled, Datadog authenticates with this app registration using federated workload identity credentials instead of a client secret.
booleanEnable azure.usage metrics for your organization.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all Datadog-Azure integrations configured in your Datadog account.
Create a Datadog-Azure integration.<br /><br />Using the `POST` method updates your integration configuration by adding your new<br />configuration to the existing one in your Datadog organization.<br /><br />Using the `PUT` method updates your integration configuration by replacing your<br />current configuration with the new one sent to your Datadog organization.
Update a Datadog-Azure integration. Requires an existing `tenant_name` and `client_id`.<br />Any other fields supplied will overwrite existing values. To overwrite `tenant_name` or `client_id`,<br />use `new_tenant_name` and `new_client_id`. To leave a field unchanged, do not supply that field in the payload.
Delete a given Datadog-Azure integration from your Datadog account.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all Datadog-Azure integrations configured in your Datadog account. + +```sql +SELECT +client_id, +new_client_id, +new_tenant_name, +tenant_name, +app_service_plan_filters, +automute, +client_secret, +container_app_filters, +cspm_enabled, +custom_metrics_enabled, +errors, +host_filters, +metrics_enabled, +metrics_enabled_default, +resource_collection_enabled, +resource_provider_configs, +secretless_auth_enabled, +usage_metrics_enabled +FROM datadog.integrations.azure_accounts +; +``` + + + + +## `INSERT` examples + + + + +Create a Datadog-Azure integration.<br /><br />Using the `POST` method updates your integration configuration by adding your new<br />configuration to the existing one in your Datadog organization.<br /><br />Using the `PUT` method updates your integration configuration by replacing your<br />current configuration with the new one sent to your Datadog organization. + +```sql +INSERT INTO datadog.integrations.azure_accounts ( +app_service_plan_filters, +automute, +client_id, +client_secret, +container_app_filters, +cspm_enabled, +custom_metrics_enabled, +errors, +host_filters, +metrics_enabled, +metrics_enabled_default, +new_client_id, +new_tenant_name, +resource_collection_enabled, +resource_provider_configs, +secretless_auth_enabled, +tenant_name, +usage_metrics_enabled +) +SELECT +'{{ app_service_plan_filters }}', +{{ automute }}, +'{{ client_id }}', +'{{ client_secret }}', +'{{ container_app_filters }}', +{{ cspm_enabled }}, +{{ custom_metrics_enabled }}, +'{{ errors }}', +'{{ host_filters }}', +{{ metrics_enabled }}, +{{ metrics_enabled_default }}, +'{{ new_client_id }}', +'{{ new_tenant_name }}', +{{ resource_collection_enabled }}, +'{{ resource_provider_configs }}', +{{ secretless_auth_enabled }}, +'{{ tenant_name }}', +{{ usage_metrics_enabled }} +; +``` + + + +{`# Description fields are for documentation purposes +- name: azure_accounts + props: + - name: app_service_plan_filters + value: "{{ app_service_plan_filters }}" + description: | + Limit the Azure app service plans that are pulled into Datadog using tags. + Only app service plans that match one of the defined tags are imported into Datadog. + - name: automute + value: {{ automute }} + description: | + Silence monitors for expected Azure VM shutdowns. + - name: client_id + value: "{{ client_id }}" + description: | + Your Azure web application ID. + - name: client_secret + value: "{{ client_secret }}" + description: | + Your Azure web application secret key. + - name: container_app_filters + value: "{{ container_app_filters }}" + description: | + Limit the Azure container apps that are pulled into Datadog using tags. + Only container apps that match one of the defined tags are imported into Datadog. + - name: cspm_enabled + value: {{ cspm_enabled }} + description: | + When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration. + Note: This requires resource_collection_enabled to be set to true. + - name: custom_metrics_enabled + value: {{ custom_metrics_enabled }} + description: | + Enable custom metrics for your organization. + - name: errors + value: + - "{{ errors }}" + description: | + Errors in your configuration. + - name: host_filters + value: "{{ host_filters }}" + description: | + Limit the Azure instances that are pulled into Datadog by using tags. + Only hosts that match one of the defined tags are imported into Datadog. + - name: metrics_enabled + value: {{ metrics_enabled }} + description: | + Enable Azure metrics for your organization. + - name: metrics_enabled_default + value: {{ metrics_enabled_default }} + description: | + Enable Azure metrics for your organization for resource providers where no resource provider config is specified. + - name: new_client_id + value: "{{ new_client_id }}" + description: | + Your New Azure web application ID. + - name: new_tenant_name + value: "{{ new_tenant_name }}" + description: | + Your New Azure Active Directory ID. + - name: resource_collection_enabled + value: {{ resource_collection_enabled }} + description: | + When enabled, Datadog collects metadata and configuration info from cloud resources (compute instances, databases, load balancers, etc.) monitored by this app registration. + - name: resource_provider_configs + description: | + Configuration settings applied to resources from the specified Azure resource providers. + value: + - metrics_enabled: {{ metrics_enabled }} + namespace: "{{ namespace }}" + - name: secretless_auth_enabled + value: {{ secretless_auth_enabled }} + description: | + (Preview) When enabled, Datadog authenticates with this app registration using federated workload identity credentials instead of a client secret. + - name: tenant_name + value: "{{ tenant_name }}" + description: | + Your Azure Active Directory ID. + - name: usage_metrics_enabled + value: {{ usage_metrics_enabled }} + description: | + Enable azure.usage metrics for your organization. +`} + + + + + +## `REPLACE` examples + + + + +Update a Datadog-Azure integration. Requires an existing `tenant_name` and `client_id`.<br />Any other fields supplied will overwrite existing values. To overwrite `tenant_name` or `client_id`,<br />use `new_tenant_name` and `new_client_id`. To leave a field unchanged, do not supply that field in the payload. + +```sql +REPLACE datadog.integrations.azure_accounts +SET +app_service_plan_filters = '{{ app_service_plan_filters }}', +automute = {{ automute }}, +client_id = '{{ client_id }}', +client_secret = '{{ client_secret }}', +container_app_filters = '{{ container_app_filters }}', +cspm_enabled = {{ cspm_enabled }}, +custom_metrics_enabled = {{ custom_metrics_enabled }}, +errors = '{{ errors }}', +host_filters = '{{ host_filters }}', +metrics_enabled = {{ metrics_enabled }}, +metrics_enabled_default = {{ metrics_enabled_default }}, +new_client_id = '{{ new_client_id }}', +new_tenant_name = '{{ new_tenant_name }}', +resource_collection_enabled = {{ resource_collection_enabled }}, +resource_provider_configs = '{{ resource_provider_configs }}', +secretless_auth_enabled = {{ secretless_auth_enabled }}, +tenant_name = '{{ tenant_name }}', +usage_metrics_enabled = {{ usage_metrics_enabled }}; +``` + + + + +## `DELETE` examples + + + + +Delete a given Datadog-Azure integration from your Datadog account. + +```sql +DELETE FROM datadog.integrations.azure_accounts +; +``` + + diff --git a/website/docs/services/integrations/azure_host_filters/index.md b/website/docs/services/integrations/azure_host_filters/index.md new file mode 100644 index 0000000..31b275c --- /dev/null +++ b/website/docs/services/integrations/azure_host_filters/index.md @@ -0,0 +1,227 @@ +--- +title: azure_host_filters +hide_title: false +hide_table_of_contents: false +keywords: + - azure_host_filters + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an azure_host_filters resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Update the defined list of host filters for a given Datadog-Azure integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Update the defined list of host filters for a given Datadog-Azure integration. + +```sql +INSERT INTO datadog.integrations.azure_host_filters ( +app_service_plan_filters, +automute, +client_id, +client_secret, +container_app_filters, +cspm_enabled, +custom_metrics_enabled, +errors, +host_filters, +metrics_enabled, +metrics_enabled_default, +new_client_id, +new_tenant_name, +resource_collection_enabled, +resource_provider_configs, +secretless_auth_enabled, +tenant_name, +usage_metrics_enabled +) +SELECT +'{{ app_service_plan_filters }}', +{{ automute }}, +'{{ client_id }}', +'{{ client_secret }}', +'{{ container_app_filters }}', +{{ cspm_enabled }}, +{{ custom_metrics_enabled }}, +'{{ errors }}', +'{{ host_filters }}', +{{ metrics_enabled }}, +{{ metrics_enabled_default }}, +'{{ new_client_id }}', +'{{ new_tenant_name }}', +{{ resource_collection_enabled }}, +'{{ resource_provider_configs }}', +{{ secretless_auth_enabled }}, +'{{ tenant_name }}', +{{ usage_metrics_enabled }} +; +``` + + + +{`# Description fields are for documentation purposes +- name: azure_host_filters + props: + - name: app_service_plan_filters + value: "{{ app_service_plan_filters }}" + description: | + Limit the Azure app service plans that are pulled into Datadog using tags. + Only app service plans that match one of the defined tags are imported into Datadog. + - name: automute + value: {{ automute }} + description: | + Silence monitors for expected Azure VM shutdowns. + - name: client_id + value: "{{ client_id }}" + description: | + Your Azure web application ID. + - name: client_secret + value: "{{ client_secret }}" + description: | + Your Azure web application secret key. + - name: container_app_filters + value: "{{ container_app_filters }}" + description: | + Limit the Azure container apps that are pulled into Datadog using tags. + Only container apps that match one of the defined tags are imported into Datadog. + - name: cspm_enabled + value: {{ cspm_enabled }} + description: | + When enabled, Datadog’s Cloud Security Management product scans resource configurations monitored by this app registration. + Note: This requires resource_collection_enabled to be set to true. + - name: custom_metrics_enabled + value: {{ custom_metrics_enabled }} + description: | + Enable custom metrics for your organization. + - name: errors + value: + - "{{ errors }}" + description: | + Errors in your configuration. + - name: host_filters + value: "{{ host_filters }}" + description: | + Limit the Azure instances that are pulled into Datadog by using tags. + Only hosts that match one of the defined tags are imported into Datadog. + - name: metrics_enabled + value: {{ metrics_enabled }} + description: | + Enable Azure metrics for your organization. + - name: metrics_enabled_default + value: {{ metrics_enabled_default }} + description: | + Enable Azure metrics for your organization for resource providers where no resource provider config is specified. + - name: new_client_id + value: "{{ new_client_id }}" + description: | + Your New Azure web application ID. + - name: new_tenant_name + value: "{{ new_tenant_name }}" + description: | + Your New Azure Active Directory ID. + - name: resource_collection_enabled + value: {{ resource_collection_enabled }} + description: | + When enabled, Datadog collects metadata and configuration info from cloud resources (compute instances, databases, load balancers, etc.) monitored by this app registration. + - name: resource_provider_configs + description: | + Configuration settings applied to resources from the specified Azure resource providers. + value: + - metrics_enabled: {{ metrics_enabled }} + namespace: "{{ namespace }}" + - name: secretless_auth_enabled + value: {{ secretless_auth_enabled }} + description: | + (Preview) When enabled, Datadog authenticates with this app registration using federated workload identity credentials instead of a client secret. + - name: tenant_name + value: "{{ tenant_name }}" + description: | + Your Azure Active Directory ID. + - name: usage_metrics_enabled + value: {{ usage_metrics_enabled }} + description: | + Enable azure.usage metrics for your organization. +`} + + + diff --git a/website/docs/services/integrations/cloudflare_accounts/index.md b/website/docs/services/integrations/cloudflare_accounts/index.md index 17d7d64..1da6390 100644 --- a/website/docs/services/integrations/cloudflare_accounts/index.md +++ b/website/docs/services/integrations/cloudflare_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a cloudflare_accounts reso ## Overview - +
Namecloudflare_accounts
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `cloudflare-accounts`. (default: cloudflare-accounts, example: cloudflare-accounts) + The JSON:API type for this API. Should always be `cloudflare-accounts`. (cloudflare-accounts) (default: cloudflare-accounts, example: cloudflare-accounts) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `cloudflare-accounts`. (default: cloudflare-accounts, example: cloudflare-accounts) + The JSON:API type for this API. Should always be `cloudflare-accounts`. (cloudflare-accounts) (default: cloudflare-accounts, example: cloudflare-accounts) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, region + account_id Get a Cloudflare account. - region + List Cloudflare accounts. - region, data__data + data Create a Cloudflare account. - account_id, region, data__data + account_id, data Update a Cloudflare account. - account_id, region + account_id Delete a Cloudflare account. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string None - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.integrations.cloudflare_accounts WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.integrations.cloudflare_accounts -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a Cloudflare account. ```sql INSERT INTO datadog.integrations.cloudflare_accounts ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,24 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: cloudflare_accounts props: - - name: region - value: string - description: Required parameter for the cloudflare_accounts resource. - name: data - value: object description: | Data object for creating a Cloudflare account. -``` + value: + attributes: + api_key: "{{ api_key }}" + email: "{{ email }}" + name: "{{ name }}" + resources: + - "{{ resources }}" + zones: + - "{{ zones }}" + type: "{{ type }}" +`} +
@@ -277,11 +280,10 @@ Update a Cloudflare account. ```sql UPDATE datadog.integrations.cloudflare_accounts SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +306,6 @@ Delete a Cloudflare account. ```sql DELETE FROM datadog.integrations.cloudflare_accounts WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/confluent_accounts/index.md b/website/docs/services/integrations/confluent_accounts/index.md index 932b2e4..0fb5f84 100644 --- a/website/docs/services/integrations/confluent_accounts/index.md +++ b/website/docs/services/integrations/confluent_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a confluent_accounts resou ## Overview - +
Nameconfluent_accounts
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `confluent-cloud-accounts`. (default: confluent-cloud-accounts, example: confluent-cloud-accounts) + The JSON:API type for this API. Should always be `confluent-cloud-accounts`. (confluent-cloud-accounts) (default: confluent-cloud-accounts, example: confluent-cloud-accounts) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `confluent-cloud-accounts`. (default: confluent-cloud-accounts, example: confluent-cloud-accounts) + The JSON:API type for this API. Should always be `confluent-cloud-accounts`. (confluent-cloud-accounts) (default: confluent-cloud-accounts, example: confluent-cloud-accounts) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, region + account_id Get the Confluent account with the provided account ID. - region + List Confluent accounts. - region, data__data + data Create a Confluent account. - account_id, region, data__data + account_id, data Update the Confluent account with the provided account ID. - account_id, region + account_id Delete a Confluent account with the provided account ID. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Confluent Account ID. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.integrations.confluent_accounts WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.integrations.confluent_accounts -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a Confluent account. ```sql INSERT INTO datadog.integrations.confluent_accounts ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,26 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: confluent_accounts props: - - name: region - value: string - description: Required parameter for the confluent_accounts resource. - name: data - value: object description: | The data body for adding a Confluent account. -``` + value: + attributes: + api_key: "{{ api_key }}" + api_secret: "{{ api_secret }}" + resources: + - enable_custom_metrics: {{ enable_custom_metrics }} + id: "{{ id }}" + resource_type: "{{ resource_type }}" + tags: "{{ tags }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + @@ -277,11 +282,10 @@ Update the Confluent account with the provided account ID. ```sql UPDATE datadog.integrations.confluent_accounts SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +308,6 @@ Delete a Confluent account with the provided account ID. ```sql DELETE FROM datadog.integrations.confluent_accounts WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/confluent_resources/index.md b/website/docs/services/integrations/confluent_resources/index.md index f1b885a..7325e7a 100644 --- a/website/docs/services/integrations/confluent_resources/index.md +++ b/website/docs/services/integrations/confluent_resources/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a confluent_resources reso ## Overview - +
Nameconfluent_resources
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this request. (default: confluent-cloud-resources, example: confluent-cloud-resources) + The JSON:API type for this request. (confluent-cloud-resources) (default: confluent-cloud-resources, example: confluent-cloud-resources) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this request. (default: confluent-cloud-resources, example: confluent-cloud-resources) + The JSON:API type for this request. (confluent-cloud-resources) (default: confluent-cloud-resources, example: confluent-cloud-resources) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, resource_id, region + account_id, resource_id Get a Confluent resource with the provided resource id for the account associated with the provided account ID. - account_id, region + account_id Get a Confluent resource for the account associated with the provided ID. - account_id, region, data__data + account_id, data Create a Confluent resource for the account associated with the provided ID. - account_id, resource_id, region, data__data + account_id, resource_id, data Update a Confluent resource with the provided resource id for the account associated with the provided account ID. - account_id, resource_id, region + account_id, resource_id Delete a Confluent resource with the provided resource id for the account associated with the provided account ID. @@ -169,16 +170,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Confluent Account ID. - - - string - (default: datadoghq.com) - string Confluent Account Resource ID. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -203,7 +204,6 @@ type FROM datadog.integrations.confluent_resources WHERE account_id = '{{ account_id }}' -- required AND resource_id = '{{ resource_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -218,7 +218,6 @@ attributes, type FROM datadog.integrations.confluent_resources WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -240,14 +239,12 @@ Create a Confluent resource for the account associated with the provided ID. ```sql INSERT INTO datadog.integrations.confluent_resources ( -data__data, -account_id, -region +data, +account_id ) SELECT '{{ data }}' /* required */, -'{{ account_id }}', -'{{ region }}' +'{{ account_id }}' RETURNING data ; @@ -255,21 +252,25 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: confluent_resources props: - name: account_id - value: string - description: Required parameter for the confluent_resources resource. - - name: region - value: string + value: "{{ account_id }}" description: Required parameter for the confluent_resources resource. - name: data - value: object description: | JSON:API request for updating a Confluent resource. -``` + value: + attributes: + enable_custom_metrics: {{ enable_custom_metrics }} + resource_type: "{{ resource_type }}" + tags: + - "{{ tags }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -289,12 +290,11 @@ Update a Confluent resource with the provided resource id for the account associ ```sql UPDATE datadog.integrations.confluent_resources SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required AND resource_id = '{{ resource_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -318,7 +318,6 @@ Delete a Confluent resource with the provided resource id for the account associ DELETE FROM datadog.integrations.confluent_resources WHERE account_id = '{{ account_id }}' --required AND resource_id = '{{ resource_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/elastic_cloud_accounts/index.md b/website/docs/services/integrations/elastic_cloud_accounts/index.md new file mode 100644 index 0000000..e9475ef --- /dev/null +++ b/website/docs/services/integrations/elastic_cloud_accounts/index.md @@ -0,0 +1,328 @@ +--- +title: elastic_cloud_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - elastic_cloud_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an elastic_cloud_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringServer-generated unique identifier of the Elastic Cloud integration account. (example: 953a0060-81ec-4221-aed4-d4733b59cd96)
objectAttributes of an Elastic Cloud integration account returned in responses.
stringThe type of the integration account resource. Always `integration-account`. (integration-account) (default: integration-account, example: integration-account)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringServer-generated unique identifier of the Elastic Cloud integration account. (example: 953a0060-81ec-4221-aed4-d4733b59cd96)
objectAttributes of an Elastic Cloud integration account returned in responses.
stringThe type of the integration account resource. Always `integration-account`. (integration-account) (default: integration-account, example: integration-account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_idGet an Elastic Cloud integration account.
List Elastic Cloud integration accounts.
dataCreate an Elastic Cloud integration account.
account_id, dataUpdate an Elastic Cloud integration account. Only the fields provided are changed.
account_idDelete an Elastic Cloud integration account.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the integration account.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get an Elastic Cloud integration account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.elastic_cloud_accounts +WHERE account_id = '{{ account_id }}' -- required +; +``` + + + +List Elastic Cloud integration accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.elastic_cloud_accounts +; +``` + + + + +## `INSERT` examples + + + + +Create an Elastic Cloud integration account. + +```sql +INSERT INTO datadog.integrations.elastic_cloud_accounts ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: elastic_cloud_accounts + props: + - name: data + description: | + Data envelope for creating an Elastic Cloud integration account. + value: + attributes: + authentication: + auth_type: "{{ auth_type }}" + password: "{{ password }}" + username: "{{ username }}" + dataflows: + elastic-cloud-detailed-index-stats: + enabled: {{ enabled }} + elastic-cloud-index-stats: + enabled: {{ enabled }} + elastic-cloud-pending-task-stats: + enabled: {{ enabled }} + elastic-cloud-primary-shard-graceful-timeout: + enabled: {{ enabled }} + elastic-cloud-primary-shard-stats: + enabled: {{ enabled }} + elastic-cloud-shard-allocation-stats: + enabled: {{ enabled }} + elastic-cloud-slm-stats: + enabled: {{ enabled }} + name: "{{ name }}" + settings: + tags: "{{ tags }}" + url: "{{ url }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an Elastic Cloud integration account. Only the fields provided are changed. + +```sql +UPDATE datadog.integrations.elastic_cloud_accounts +SET +data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an Elastic Cloud integration account. + +```sql +DELETE FROM datadog.integrations.elastic_cloud_accounts +WHERE account_id = '{{ account_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/entity_integration_configs/index.md b/website/docs/services/integrations/entity_integration_configs/index.md new file mode 100644 index 0000000..dada59a --- /dev/null +++ b/website/docs/services/integrations/entity_integration_configs/index.md @@ -0,0 +1,206 @@ +--- +title: entity_integration_configs +hide_title: false +hide_table_of_contents: false +keywords: + - entity_integration_configs + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an entity_integration_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the entity integration configuration. (example: 01HJABCD12345678ABCDEFGHIJ)
objectThe organization ID, integration identifier, and integration-specific configuration payload for an entity integration configuration.
stringJSON:API resource type for an entity integration configuration. Always `entity_integration_configs`. (entity_integration_configs) (default: entity_integration_configs, example: entity_integration_configs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration_idRetrieve the configuration currently stored for a given integration in the caller's organization.
integration_id, dataCreate or replace the configuration for a given integration in the caller's organization. The shape of `data.attributes.config` depends on the integration:<br /><br />- For `github`: `config` must contain an `enabled_repos` array of objects with `hostname`, `github_org_name`, and `repo_name`.<br />- For `jira`: `config` must contain an `enabled_projects` array of objects with `hostname`, `account_id`, and `project_key`.<br />- For `pagerduty`: `config` must contain an `accounts` array of objects with a required `enabled` boolean and an optional `subdomain` string.
integration_idDelete the configuration stored for a given integration in the caller's organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the integration whose configuration is being managed. Supported values are `github`, `jira`, and `pagerduty`.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the configuration currently stored for a given integration in the caller's organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.entity_integration_configs +WHERE integration_id = '{{ integration_id }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Create or replace the configuration for a given integration in the caller's organization. The shape of `data.attributes.config` depends on the integration:<br /><br />- For `github`: `config` must contain an `enabled_repos` array of objects with `hostname`, `github_org_name`, and `repo_name`.<br />- For `jira`: `config` must contain an `enabled_projects` array of objects with `hostname`, `account_id`, and `project_key`.<br />- For `pagerduty`: `config` must contain an `accounts` array of objects with a required `enabled` boolean and an optional `subdomain` string. + +```sql +REPLACE datadog.integrations.entity_integration_configs +SET +data = '{{ data }}' +WHERE +integration_id = '{{ integration_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete the configuration stored for a given integration in the caller's organization. + +```sql +DELETE FROM datadog.integrations.entity_integration_configs +WHERE integration_id = '{{ integration_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/fastly_accounts/index.md b/website/docs/services/integrations/fastly_accounts/index.md index e8f8ca9..702b614 100644 --- a/website/docs/services/integrations/fastly_accounts/index.md +++ b/website/docs/services/integrations/fastly_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a fastly_accounts resource ## Overview - +
Namefastly_accounts
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `fastly-accounts`. (default: fastly-accounts, example: fastly-accounts) + The JSON:API type for this API. Should always be `fastly-accounts`. (fastly-accounts) (default: fastly-accounts, example: fastly-accounts) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `fastly-accounts`. (default: fastly-accounts, example: fastly-accounts) + The JSON:API type for this API. Should always be `fastly-accounts`. (fastly-accounts) (default: fastly-accounts, example: fastly-accounts) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, region + account_id Get a Fastly account. - region + List Fastly accounts. - region, data__data + data Create a Fastly account. - account_id, region, data__data + account_id, data Update a Fastly account. - account_id, region + account_id Delete a Fastly account. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Fastly Account id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.integrations.fastly_accounts WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.integrations.fastly_accounts -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a Fastly account. ```sql INSERT INTO datadog.integrations.fastly_accounts ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,22 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: fastly_accounts props: - - name: region - value: string - description: Required parameter for the fastly_accounts resource. - name: data - value: object description: | Data object for creating a Fastly account. -``` + value: + attributes: + api_key: "{{ api_key }}" + name: "{{ name }}" + services: + - id: "{{ id }}" + tags: "{{ tags }}" + type: "{{ type }}" +`} + @@ -277,11 +278,10 @@ Update a Fastly account. ```sql UPDATE datadog.integrations.fastly_accounts SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +304,6 @@ Delete a Fastly account. ```sql DELETE FROM datadog.integrations.fastly_accounts WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/fastly_services/index.md b/website/docs/services/integrations/fastly_services/index.md index a9ab03f..5b92d2a 100644 --- a/website/docs/services/integrations/fastly_services/index.md +++ b/website/docs/services/integrations/fastly_services/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a fastly_services resource ## Overview - +
Namefastly_services
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `fastly-services`. (default: fastly-services, example: fastly-services) + The JSON:API type for this API. Should always be `fastly-services`. (fastly-services) (default: fastly-services, example: fastly-services) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for this API. Should always be `fastly-services`. (default: fastly-services, example: fastly-services) + The JSON:API type for this API. Should always be `fastly-services`. (fastly-services) (default: fastly-services, example: fastly-services) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, service_id, region + account_id, service_id Get a Fastly service for an account. - account_id, region + account_id List Fastly services for an account. - account_id, region, data__data + account_id, data Create a Fastly service for an account. - account_id, service_id, region, data__data + account_id, service_id, data Update a Fastly service for an account. - account_id, service_id, region + account_id, service_id Delete a Fastly service for an account. @@ -169,16 +170,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Fastly Account id. - - - string - (default: datadoghq.com) - string Fastly Service ID. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -203,7 +204,6 @@ type FROM datadog.integrations.fastly_services WHERE account_id = '{{ account_id }}' -- required AND service_id = '{{ service_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -218,7 +218,6 @@ attributes, type FROM datadog.integrations.fastly_services WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -240,14 +239,12 @@ Create a Fastly service for an account. ```sql INSERT INTO datadog.integrations.fastly_services ( -data__data, -account_id, -region +data, +account_id ) SELECT '{{ data }}' /* required */, -'{{ account_id }}', -'{{ region }}' +'{{ account_id }}' RETURNING data ; @@ -255,21 +252,23 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: fastly_services props: - name: account_id - value: string - description: Required parameter for the fastly_services resource. - - name: region - value: string + value: "{{ account_id }}" description: Required parameter for the fastly_services resource. - name: data - value: object description: | Data object for Fastly service requests. -``` + value: + attributes: + tags: + - "{{ tags }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -289,12 +288,11 @@ Update a Fastly service for an account. ```sql UPDATE datadog.integrations.fastly_services SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required AND service_id = '{{ service_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -318,7 +316,6 @@ Delete a Fastly service for an account. DELETE FROM datadog.integrations.fastly_services WHERE account_id = '{{ account_id }}' --required AND service_id = '{{ service_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/gcp_accounts/index.md b/website/docs/services/integrations/gcp_accounts/index.md index 5766c4c..963349e 100644 --- a/website/docs/services/integrations/gcp_accounts/index.md +++ b/website/docs/services/integrations/gcp_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a gcp_accounts resource. ## Overview - +
Namegcp_accounts
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - The type of account. (default: gcp_service_account, example: gcp_service_account) + The type of account. (gcp_service_account) (default: gcp_service_account, example: gcp_service_account) @@ -91,28 +92,28 @@ The following methods are available for this resource: - region + List all GCP STS-enabled service accounts configured in your Datadog account. - region + Create a new entry within Datadog for your STS enabled service account. - account_id, region + account_id Update an STS enabled service account. - account_id, region + account_id Delete an STS enabled GCP account from within Datadog. @@ -137,10 +138,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Your GCP STS enabled service account's unique ID. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -164,7 +165,6 @@ attributes, meta, type FROM datadog.integrations.gcp_accounts -WHERE region = '{{ region }}' -- required ; ``` @@ -186,12 +186,10 @@ Create a new entry within Datadog for your STS enabled service account. ```sql INSERT INTO datadog.integrations.gcp_accounts ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -199,18 +197,40 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: gcp_accounts props: - - name: region - value: string - description: Required parameter for the gcp_accounts resource. - name: data - value: object description: | Additional metadata on your generated service account. -``` + value: + attributes: + account_tags: + - "{{ account_tags }}" + automute: {{ automute }} + client_email: "{{ client_email }}" + cloud_run_revision_filters: + - "{{ cloud_run_revision_filters }}" + host_filters: + - "{{ host_filters }}" + is_cspm_enabled: {{ is_cspm_enabled }} + is_global_location_enabled: {{ is_global_location_enabled }} + is_per_project_quota_enabled: {{ is_per_project_quota_enabled }} + is_resource_change_collection_enabled: {{ is_resource_change_collection_enabled }} + is_security_command_center_enabled: {{ is_security_command_center_enabled }} + metric_namespace_configs: + - disabled: {{ disabled }} + filters: "{{ filters }}" + id: "{{ id }}" + monitored_resource_configs: + - filters: "{{ filters }}" + type: "{{ type }}" + region_filter_configs: + - "{{ region_filter_configs }}" + resource_collection_enabled: {{ resource_collection_enabled }} + type: "{{ type }}" +`} + @@ -230,10 +250,9 @@ Update an STS enabled service account. ```sql UPDATE datadog.integrations.gcp_accounts SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -256,7 +275,6 @@ Delete an STS enabled GCP account from within Datadog. ```sql DELETE FROM datadog.integrations.gcp_accounts WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/gcp_sts_delegate/index.md b/website/docs/services/integrations/gcp_sts_delegate/index.md index 96c7368..1393c43 100644 --- a/website/docs/services/integrations/gcp_sts_delegate/index.md +++ b/website/docs/services/integrations/gcp_sts_delegate/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a gcp_sts_delegate resourc ## Overview - +
Namegcp_sts_delegate
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The type of account. (default: gcp_sts_delegate, example: gcp_sts_delegate) + The type of account. (gcp_sts_delegate) (default: gcp_sts_delegate, example: gcp_sts_delegate) @@ -86,14 +87,14 @@ The following methods are available for this resource: - region + List your Datadog-GCP STS delegate account configured in your Datadog account. - region + Create a Datadog GCP principal. @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -139,7 +140,6 @@ id, attributes, type FROM datadog.integrations.gcp_sts_delegate -WHERE region = '{{ region }}' -- required ; ``` @@ -148,6 +148,8 @@ WHERE region = '{{ region }}' -- required ## Lifecycle Methods +EXEC variables use wire (API) names. + diff --git a/website/docs/services/integrations/google_chat_organization_app_named_spaces/index.md b/website/docs/services/integrations/google_chat_organization_app_named_spaces/index.md new file mode 100644 index 0000000..e9e01cd --- /dev/null +++ b/website/docs/services/integrations/google_chat_organization_app_named_spaces/index.md @@ -0,0 +1,151 @@ +--- +title: google_chat_organization_app_named_spaces +hide_title: false +hide_table_of_contents: false +keywords: + - google_chat_organization_app_named_spaces + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a google_chat_organization_app_named_spaces resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Google Chat space. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectGoogle Chat space attributes.
stringGoogle Chat space resource type. (google-chat-app-named-space) (default: google-chat-app-named-space, example: google-chat-app-named-space)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
domain_name, space_display_nameGet the resource name and organization binding ID of a space in the Datadog Google Chat integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Google Chat domain name.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe Google Chat space display name.
+ +## `SELECT` examples + + + + +Get the resource name and organization binding ID of a space in the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.google_chat_organization_app_named_spaces +WHERE domain_name = '{{ domain_name }}' -- required +AND space_display_name = '{{ space_display_name }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/google_chat_organization_delegated_users/index.md b/website/docs/services/integrations/google_chat_organization_delegated_users/index.md new file mode 100644 index 0000000..48fd90b --- /dev/null +++ b/website/docs/services/integrations/google_chat_organization_delegated_users/index.md @@ -0,0 +1,173 @@ +--- +title: google_chat_organization_delegated_users +hide_title: false +hide_table_of_contents: false +keywords: + - google_chat_organization_delegated_users + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a google_chat_organization_delegated_users resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the delegated user. (example: 2b3c4d5e-6f78-9012-bcde-f23456789012)
objectGoogle Chat delegated user attributes.
stringGoogle Chat delegated user resource type. (google-chat-delegated-user) (default: google-chat-delegated-user, example: google-chat-delegated-user)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
organization_binding_idGet the delegated user for a Google Chat organization binding in the Datadog Google Chat integration.
organization_binding_idDelete the delegated user for a Google Chat organization binding from the Datadog Google Chat integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour organization binding ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the delegated user for a Google Chat organization binding in the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.google_chat_organization_delegated_users +WHERE organization_binding_id = '{{ organization_binding_id }}' -- required +; +``` + + + + +## `DELETE` examples + + + + +Delete the delegated user for a Google Chat organization binding from the Datadog Google Chat integration. + +```sql +DELETE FROM datadog.integrations.google_chat_organization_delegated_users +WHERE organization_binding_id = '{{ organization_binding_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/google_chat_organization_organization_handles/index.md b/website/docs/services/integrations/google_chat_organization_organization_handles/index.md new file mode 100644 index 0000000..9e9a11c --- /dev/null +++ b/website/docs/services/integrations/google_chat_organization_organization_handles/index.md @@ -0,0 +1,330 @@ +--- +title: google_chat_organization_organization_handles +hide_title: false +hide_table_of_contents: false +keywords: + - google_chat_organization_organization_handles + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a google_chat_organization_organization_handles resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the organization handle. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectOrganization handle attributes.
stringOrganization handle resource type. (google-chat-organization-handle) (default: google-chat-organization-handle, example: google-chat-organization-handle)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the organization handle. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectOrganization handle attributes.
stringOrganization handle resource type. (google-chat-organization-handle) (default: google-chat-organization-handle, example: google-chat-organization-handle)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
organization_binding_id, handle_idGet an organization handle from the Datadog Google Chat integration.
organization_binding_idGet a list of all organization handles from the Datadog Google Chat integration.
organization_binding_id, type, dataCreate an organization handle in the Datadog Google Chat integration.
organization_binding_id, handle_id, type, dataUpdate an organization handle from the Datadog Google Chat integration.
organization_binding_id, handle_idDelete an organization handle from the Datadog Google Chat integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour organization handle ID.
stringYour organization binding ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get an organization handle from the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.google_chat_organization_organization_handles +WHERE organization_binding_id = '{{ organization_binding_id }}' -- required +AND handle_id = '{{ handle_id }}' -- required +; +``` + + + +Get a list of all organization handles from the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.google_chat_organization_organization_handles +WHERE organization_binding_id = '{{ organization_binding_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create an organization handle in the Datadog Google Chat integration. + +```sql +INSERT INTO datadog.integrations.google_chat_organization_organization_handles ( +data, +type, +organization_binding_id +) +SELECT +'{{ data }}' /* required */, +'{{ type }}' /* required */, +'{{ organization_binding_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: google_chat_organization_organization_handles + props: + - name: organization_binding_id + value: "{{ organization_binding_id }}" + description: Required parameter for the google_chat_organization_organization_handles resource. + - name: data + description: | + Organization handle data for a create request. + value: + attributes: + name: "{{ name }}" + space_resource_name: "{{ space_resource_name }}" + - name: type + value: "{{ type }}" + description: | + Organization handle resource type. + valid_values: ['google-chat-organization-handle'] + default: google-chat-organization-handle +`} + + + + + +## `UPDATE` examples + + + + +Update an organization handle from the Datadog Google Chat integration. + +```sql +UPDATE datadog.integrations.google_chat_organization_organization_handles +SET +data = '{{ data }}', +type = '{{ type }}' +WHERE +organization_binding_id = '{{ organization_binding_id }}' --required +AND handle_id = '{{ handle_id }}' --required +AND type = '{{ type }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an organization handle from the Datadog Google Chat integration. + +```sql +DELETE FROM datadog.integrations.google_chat_organization_organization_handles +WHERE organization_binding_id = '{{ organization_binding_id }}' --required +AND handle_id = '{{ handle_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/google_chat_organization_target_audiences/index.md b/website/docs/services/integrations/google_chat_organization_target_audiences/index.md new file mode 100644 index 0000000..c7559e3 --- /dev/null +++ b/website/docs/services/integrations/google_chat_organization_target_audiences/index.md @@ -0,0 +1,321 @@ +--- +title: google_chat_organization_target_audiences +hide_title: false +hide_table_of_contents: false +keywords: + - google_chat_organization_target_audiences + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a google_chat_organization_target_audiences resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the target audience. (example: 1f3e5ce6-944a-4075-97ae-105b5920b5cb)
objectGoogle Chat target audience attributes.
stringGoogle Chat target audience resource type. (google-chat-target-audience) (default: google-chat-target-audience, example: google-chat-target-audience)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the target audience. (example: 1f3e5ce6-944a-4075-97ae-105b5920b5cb)
objectGoogle Chat target audience attributes.
stringGoogle Chat target audience resource type. (google-chat-target-audience) (default: google-chat-target-audience, example: google-chat-target-audience)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
organization_binding_id, target_audience_idGet a target audience for a Google Chat organization binding in the Datadog Google Chat integration.
organization_binding_idGet a list of all target audiences for a Google Chat organization binding in the Datadog Google Chat integration.
organization_binding_id, dataCreate a target audience for a Google Chat organization binding in the Datadog Google Chat integration.
organization_binding_id, target_audience_id, dataUpdate a target audience for a Google Chat organization binding in the Datadog Google Chat integration.
organization_binding_id, target_audience_idDelete a target audience from a Google Chat organization binding in the Datadog Google Chat integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour organization binding ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringYour target audience ID.
+ +## `SELECT` examples + + + + +Get a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.google_chat_organization_target_audiences +WHERE organization_binding_id = '{{ organization_binding_id }}' -- required +AND target_audience_id = '{{ target_audience_id }}' -- required +; +``` + + + +Get a list of all target audiences for a Google Chat organization binding in the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.google_chat_organization_target_audiences +WHERE organization_binding_id = '{{ organization_binding_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + +```sql +INSERT INTO datadog.integrations.google_chat_organization_target_audiences ( +data, +organization_binding_id +) +SELECT +'{{ data }}' /* required */, +'{{ organization_binding_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: google_chat_organization_target_audiences + props: + - name: organization_binding_id + value: "{{ organization_binding_id }}" + description: Required parameter for the google_chat_organization_target_audiences resource. + - name: data + description: | + Data for a create target audience request. + value: + attributes: + audience_id: "{{ audience_id }}" + audience_name: "{{ audience_name }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a target audience for a Google Chat organization binding in the Datadog Google Chat integration. + +```sql +UPDATE datadog.integrations.google_chat_organization_target_audiences +SET +data = '{{ data }}' +WHERE +organization_binding_id = '{{ organization_binding_id }}' --required +AND target_audience_id = '{{ target_audience_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a target audience from a Google Chat organization binding in the Datadog Google Chat integration. + +```sql +DELETE FROM datadog.integrations.google_chat_organization_target_audiences +WHERE organization_binding_id = '{{ organization_binding_id }}' --required +AND target_audience_id = '{{ target_audience_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/google_chat_organizations/index.md b/website/docs/services/integrations/google_chat_organizations/index.md new file mode 100644 index 0000000..cd5d820 --- /dev/null +++ b/website/docs/services/integrations/google_chat_organizations/index.md @@ -0,0 +1,236 @@ +--- +title: google_chat_organizations +hide_title: false +hide_table_of_contents: false +keywords: + - google_chat_organizations + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a google_chat_organizations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Google Chat organization binding. (example: 5ce87709-a12f-4086-fcc8-147045b73a19)
objectGoogle Chat organization attributes.
objectGoogle Chat organization relationships.
stringGoogle Chat organization resource type. (google-chat-organization) (default: google-chat-organization, example: google-chat-organization)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Google Chat organization binding. (example: 5ce87709-a12f-4086-fcc8-147045b73a19)
objectGoogle Chat organization attributes.
objectGoogle Chat organization relationships.
stringGoogle Chat organization resource type. (google-chat-organization) (default: google-chat-organization, example: google-chat-organization)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
organization_binding_idGet a Google Chat organization binding from the Datadog Google Chat integration.
Get a list of all Google Chat organization bindings in the Datadog Google Chat integration.
organization_binding_idDelete a Google Chat organization binding from the Datadog Google Chat integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour organization binding ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a Google Chat organization binding from the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.integrations.google_chat_organizations +WHERE organization_binding_id = '{{ organization_binding_id }}' -- required +; +``` + + + +Get a list of all Google Chat organization bindings in the Datadog Google Chat integration. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.integrations.google_chat_organizations +; +``` + + + + +## `DELETE` examples + + + + +Delete a Google Chat organization binding from the Datadog Google Chat integration. + +```sql +DELETE FROM datadog.integrations.google_chat_organizations +WHERE organization_binding_id = '{{ organization_binding_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/index.md b/website/docs/services/integrations/index.md index 1cf58c9..3d81f8a 100644 --- a/website/docs/services/integrations/index.md +++ b/website/docs/services/integrations/index.md @@ -18,30 +18,73 @@ integrations service documentation. :::info[Service Summary] -total resources: __16__ +total resources: __59__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/integrations/integrations/index.md b/website/docs/services/integrations/integrations/index.md new file mode 100644 index 0000000..e1deaf4 --- /dev/null +++ b/website/docs/services/integrations/integrations/index.md @@ -0,0 +1,147 @@ +--- +title: integrations +hide_title: false +hide_table_of_contents: false +keywords: + - integrations + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an integrations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successful Response. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the integration. (example: calico)
objectAttributes for an integration.
objectLinks for the integration resource.
stringIntegration resource type. (integration) (default: integration, example: integration)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Successful Response. + +```sql +SELECT +id, +attributes, +links, +type +FROM datadog.integrations.integrations +; +``` + + diff --git a/website/docs/services/integrations/jira_accounts/index.md b/website/docs/services/integrations/jira_accounts/index.md new file mode 100644 index 0000000..e1f1ab0 --- /dev/null +++ b/website/docs/services/integrations/jira_accounts/index.md @@ -0,0 +1,172 @@ +--- +title: jira_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - jira_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a jira_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the Jira account (example: account-1)
objectAttributes of a Jira account
stringType identifier for Jira account resources (jira-account) (example: jira-account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all Jira accounts for the organization.
account_idDelete a Jira account by ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the Jira account to delete (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all Jira accounts for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.jira_accounts +; +``` + + + + +## `DELETE` examples + + + + +Delete a Jira account by ID. + +```sql +DELETE FROM datadog.integrations.jira_accounts +WHERE account_id = '{{ account_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/jira_issue_templates/index.md b/website/docs/services/integrations/jira_issue_templates/index.md new file mode 100644 index 0000000..bc0910a --- /dev/null +++ b/website/docs/services/integrations/jira_issue_templates/index.md @@ -0,0 +1,325 @@ +--- +title: jira_issue_templates +hide_title: false +hide_table_of_contents: false +keywords: + - jira_issue_templates + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a jira_issue_templates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the Jira issue template (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a Jira issue template
objectRelationships of a Jira issue template
stringType identifier for Jira issue template resources (jira-issue-template) (example: jira-issue-template)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the Jira issue template (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a Jira issue template
objectRelationships of a Jira issue template
stringType identifier for Jira issue template resources (jira-issue-template) (example: jira-issue-template)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
issue_template_idGet a Jira issue template by ID.
Get all Jira issue templates for the organization.
Create a new Jira issue template.
issue_template_id, dataUpdate a Jira issue template by ID.
issue_template_idDelete a Jira issue template by ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the Jira issue template to delete (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a Jira issue template by ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.integrations.jira_issue_templates +WHERE issue_template_id = '{{ issue_template_id }}' -- required +; +``` + + + +Get all Jira issue templates for the organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.integrations.jira_issue_templates +; +``` + + + + +## `INSERT` examples + + + + +Create a new Jira issue template. + +```sql +INSERT INTO datadog.integrations.jira_issue_templates ( +data +) +SELECT +'{{ data }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: jira_issue_templates + props: + - name: data + description: | + Data object for creating a Jira issue template + value: + attributes: + fields: "{{ fields }}" + issue_type_id: "{{ issue_type_id }}" + jira-account: + id: "{{ id }}" + name: "{{ name }}" + project_id: "{{ project_id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a Jira issue template by ID. + +```sql +UPDATE datadog.integrations.jira_issue_templates +SET +data = '{{ data }}' +WHERE +issue_template_id = '{{ issue_template_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a Jira issue template by ID. + +```sql +DELETE FROM datadog.integrations.jira_issue_templates +WHERE issue_template_id = '{{ issue_template_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/ms_team_user_bindings/index.md b/website/docs/services/integrations/ms_team_user_bindings/index.md new file mode 100644 index 0000000..0a9440a --- /dev/null +++ b/website/docs/services/integrations/ms_team_user_bindings/index.md @@ -0,0 +1,107 @@ +--- +title: ms_team_user_bindings +hide_title: false +hide_table_of_contents: false +keywords: + - ms_team_user_bindings + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ms_team_user_bindings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
tenant_idDelete the user binding for a given tenant from the Datadog Microsoft Teams integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringYour tenant id.
+ +## `DELETE` examples + + + + +Delete the user binding for a given tenant from the Datadog Microsoft Teams integration. + +```sql +DELETE FROM datadog.integrations.ms_team_user_bindings +WHERE tenant_id = '{{ tenant_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/ms_teams_channels/index.md b/website/docs/services/integrations/ms_teams_channels/index.md index 3e0a058..7ee9f0b 100644 --- a/website/docs/services/integrations/ms_teams_channels/index.md +++ b/website/docs/services/integrations/ms_teams_channels/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a ms_teams_channels resour ## Overview - +
Namems_teams_channels
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Channel info resource type. (default: ms-teams-channel-info, example: ms-teams-channel-info) + Channel info resource type. (ms-teams-channel-info) (default: ms-teams-channel-info, example: ms-teams-channel-info) @@ -86,7 +87,7 @@ The following methods are available for this resource: - tenant_name, team_name, channel_name, region + tenant_name, team_name, channel_name Get the tenant, team, and channel ID of a channel in the Datadog Microsoft Teams integration. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Your channel name. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -150,7 +151,6 @@ FROM datadog.integrations.ms_teams_channels WHERE tenant_name = '{{ tenant_name }}' -- required AND team_name = '{{ team_name }}' -- required AND channel_name = '{{ channel_name }}' -- required -AND region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/integrations/ms_teams_tenant_based_handles/index.md b/website/docs/services/integrations/ms_teams_tenant_based_handles/index.md index 5d11397..2268dc7 100644 --- a/website/docs/services/integrations/ms_teams_tenant_based_handles/index.md +++ b/website/docs/services/integrations/ms_teams_tenant_based_handles/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a ms_teams_tenant_based_handles -Namems_teams_tenant_based_handles +Name TypeResource Id @@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Specifies the tenant-based handle resource type. (default: tenant-based-handle, example: tenant-based-handle) + Specifies the tenant-based handle resource type. (tenant-based-handle) (default: tenant-based-handle, example: tenant-based-handle) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Tenant-based handle resource type. (default: ms-teams-tenant-based-handle-info, example: ms-teams-tenant-based-handle-info) + Tenant-based handle resource type. (ms-teams-tenant-based-handle-info) (default: ms-teams-tenant-based-handle-info, example: ms-teams-tenant-based-handle-info) @@ -116,35 +117,35 @@ The following methods are available for this resource: - handle_id, region + handle_id Get the tenant, team, and channel information of a tenant-based handle from the Datadog Microsoft Teams integration. - region + tenant_id, name Get a list of all tenant-based handles from the Datadog Microsoft Teams integration. - region, data__data + data Create a tenant-based handle in the Datadog Microsoft Teams integration. - handle_id, region, data__data + handle_id, data Update a tenant-based handle from the Datadog Microsoft Teams integration. - handle_id, region + handle_id Delete a tenant-based handle from the Datadog Microsoft Teams integration. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Your tenant-based handle id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -207,7 +208,6 @@ attributes, type FROM datadog.integrations.ms_teams_tenant_based_handles WHERE handle_id = '{{ handle_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -221,8 +221,7 @@ id, attributes, type FROM datadog.integrations.ms_teams_tenant_based_handles -WHERE region = '{{ region }}' -- required -AND tenant_id = '{{ tenant_id }}' +WHERE tenant_id = '{{ tenant_id }}' AND name = '{{ name }}' ; ``` @@ -245,12 +244,10 @@ Create a tenant-based handle in the Datadog Microsoft Teams integration. ```sql INSERT INTO datadog.integrations.ms_teams_tenant_based_handles ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -258,18 +255,21 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: ms_teams_tenant_based_handles props: - - name: region - value: string - description: Required parameter for the ms_teams_tenant_based_handles resource. - name: data - value: object description: | Tenant-based handle data from a response. -``` + value: + attributes: + channel_id: "{{ channel_id }}" + name: "{{ name }}" + team_id: "{{ team_id }}" + tenant_id: "{{ tenant_id }}" + type: "{{ type }}" +`} +
@@ -289,11 +289,10 @@ Update a tenant-based handle from the Datadog Microsoft Teams integration. ```sql UPDATE datadog.integrations.ms_teams_tenant_based_handles SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE handle_id = '{{ handle_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -316,7 +315,6 @@ Delete a tenant-based handle from the Datadog Microsoft Teams integration. ```sql DELETE FROM datadog.integrations.ms_teams_tenant_based_handles WHERE handle_id = '{{ handle_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/ms_teams_workflows_webhook_handles/index.md b/website/docs/services/integrations/ms_teams_workflows_webhook_handles/index.md index e12607f..5061498 100644 --- a/website/docs/services/integrations/ms_teams_workflows_webhook_handles/index.md +++ b/website/docs/services/integrations/ms_teams_workflows_webhook_handles/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a ms_teams_workflows_webhook_hand ## Overview - +
Namems_teams_workflows_webhook_handles
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Specifies the Workflows webhook handle resource type. (default: workflows-webhook-handle, example: workflows-webhook-handle) + Specifies the Workflows webhook handle resource type. (workflows-webhook-handle) (default: workflows-webhook-handle, example: workflows-webhook-handle) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Specifies the Workflows webhook handle resource type. (default: workflows-webhook-handle, example: workflows-webhook-handle) + Specifies the Workflows webhook handle resource type. (workflows-webhook-handle) (default: workflows-webhook-handle, example: workflows-webhook-handle) @@ -116,35 +117,35 @@ The following methods are available for this resource: - handle_id, region + handle_id Get the name of a Workflows webhook handle from the Datadog Microsoft Teams integration. - region + name Get a list of all Workflows webhook handles from the Datadog Microsoft Teams integration. - region, data__data + data Create a Workflows webhook handle in the Datadog Microsoft Teams integration. - handle_id, region, data__data + handle_id, data Update a Workflows webhook handle from the Datadog Microsoft Teams integration. - handle_id, region + handle_id Delete a Workflows webhook handle from the Datadog Microsoft Teams integration. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Your Workflows webhook handle id. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -202,7 +203,6 @@ attributes, type FROM datadog.integrations.ms_teams_workflows_webhook_handles WHERE handle_id = '{{ handle_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -216,8 +216,7 @@ id, attributes, type FROM datadog.integrations.ms_teams_workflows_webhook_handles -WHERE region = '{{ region }}' -- required -AND name = '{{ name }}' +WHERE name = '{{ name }}' ; ``` @@ -239,12 +238,10 @@ Create a Workflows webhook handle in the Datadog Microsoft Teams integration. ```sql INSERT INTO datadog.integrations.ms_teams_workflows_webhook_handles ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -252,18 +249,19 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: ms_teams_workflows_webhook_handles props: - - name: region - value: string - description: Required parameter for the ms_teams_workflows_webhook_handles resource. - name: data - value: object description: | Workflows Webhook handle data from a response. -``` + value: + attributes: + name: "{{ name }}" + url: "{{ url }}" + type: "{{ type }}" +`} + @@ -283,11 +281,10 @@ Update a Workflows webhook handle from the Datadog Microsoft Teams integration. ```sql UPDATE datadog.integrations.ms_teams_workflows_webhook_handles SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE handle_id = '{{ handle_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -310,7 +307,6 @@ Delete a Workflows webhook handle from the Datadog Microsoft Teams integration. ```sql DELETE FROM datadog.integrations.ms_teams_workflows_webhook_handles WHERE handle_id = '{{ handle_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/oci_products/index.md b/website/docs/services/integrations/oci_products/index.md new file mode 100644 index 0000000..ae3a0d8 --- /dev/null +++ b/website/docs/services/integrations/oci_products/index.md @@ -0,0 +1,145 @@ +--- +title: oci_products +hide_title: false +hide_table_of_contents: false +keywords: + - oci_products + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an oci_products resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe OCID of the OCI tenancy.
objectAttributes of an OCI tenancy product resource, containing the list of available products and their enablement status.
stringOCI tenancy product resource type. (oci_tenancy_product) (default: oci_tenancy_product, example: oci_tenancy_product)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
product_keysLists the products for a given tenancy. Returns the enabled/disabled status of Datadog products (such as Cloud Security Posture Management) for specific OCI tenancies.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringComma-separated list of product keys to filter by. (wire: productKeys)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Lists the products for a given tenancy. Returns the enabled/disabled status of Datadog products (such as Cloud Security Posture Management) for specific OCI tenancies. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.oci_products +WHERE product_keys = '{{ product_keys }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/oci_tenancies/index.md b/website/docs/services/integrations/oci_tenancies/index.md new file mode 100644 index 0000000..f0061ec --- /dev/null +++ b/website/docs/services/integrations/oci_tenancies/index.md @@ -0,0 +1,335 @@ +--- +title: oci_tenancies +hide_title: false +hide_table_of_contents: false +keywords: + - oci_tenancies + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an oci_tenancies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe OCID of the OCI tenancy.
objectAttributes of an OCI tenancy integration configuration, including authentication details, region settings, and collection options.
stringOCI tenancy resource type. (oci_tenancy) (default: oci_tenancy, example: oci_tenancy)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe OCID of the OCI tenancy.
objectAttributes of an OCI tenancy integration configuration, including authentication details, region settings, and collection options.
stringOCI tenancy resource type. (oci_tenancy) (default: oci_tenancy, example: oci_tenancy)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
tenancy_ocidGet a single tenancy config object by its OCID. Returns detailed configuration including authentication credentials, enabled services, region settings, and collection preferences.
Get a list of all configured OCI tenancy integrations. Returns basic information about each tenancy including authentication credentials, region settings, and collection preferences for metrics, logs, and resources.
dataCreate a new tenancy config to establish monitoring and data collection from your OCI environment. Requires OCI authentication credentials and tenancy details. Warning: Datadog recommends interacting with this endpoint only through the Datadog web UI to ensure all necessary OCI resources have been created and configured properly.
tenancy_ocid, dataUpdate an existing tenancy config. You can modify authentication credentials, enable/disable collection types, update service filters, and change region settings. Warning: We recommend using the Datadog web UI to avoid unintended update effects.
tenancy_ocidDelete an existing tenancy config. This will stop all data collection from the specified OCI tenancy and remove the stored configuration. This operation cannot be undone.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe OCID of the tenancy config to delete.
+ +## `SELECT` examples + + + + +Get a single tenancy config object by its OCID. Returns detailed configuration including authentication credentials, enabled services, region settings, and collection preferences. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.oci_tenancies +WHERE tenancy_ocid = '{{ tenancy_ocid }}' -- required +; +``` + + + +Get a list of all configured OCI tenancy integrations. Returns basic information about each tenancy including authentication credentials, region settings, and collection preferences for metrics, logs, and resources. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.oci_tenancies +; +``` + + + + +## `INSERT` examples + + + + +Create a new tenancy config to establish monitoring and data collection from your OCI environment. Requires OCI authentication credentials and tenancy details. Warning: Datadog recommends interacting with this endpoint only through the Datadog web UI to ensure all necessary OCI resources have been created and configured properly. + +```sql +INSERT INTO datadog.integrations.oci_tenancies ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: oci_tenancies + props: + - name: data + description: | + The data object for creating a new OCI tenancy integration configuration, including the tenancy ID, type, and configuration attributes. + value: + attributes: + auth_credentials: + fingerprint: "{{ fingerprint }}" + private_key: "{{ private_key }}" + config_version: {{ config_version }} + cost_collection_enabled: {{ cost_collection_enabled }} + dd_compartment_id: "{{ dd_compartment_id }}" + dd_stack_id: "{{ dd_stack_id }}" + home_region: "{{ home_region }}" + logs_config: + compartment_tag_filters: + - "{{ compartment_tag_filters }}" + enabled: {{ enabled }} + enabled_services: + - "{{ enabled_services }}" + metrics_config: + compartment_tag_filters: + - "{{ compartment_tag_filters }}" + enabled: {{ enabled }} + excluded_services: + - "{{ excluded_services }}" + regions_config: + available: + - "{{ available }}" + disabled: + - "{{ disabled }}" + enabled: + - "{{ enabled }}" + resource_collection_enabled: {{ resource_collection_enabled }} + user_ocid: "{{ user_ocid }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing tenancy config. You can modify authentication credentials, enable/disable collection types, update service filters, and change region settings. Warning: We recommend using the Datadog web UI to avoid unintended update effects. + +```sql +UPDATE datadog.integrations.oci_tenancies +SET +data = '{{ data }}' +WHERE +tenancy_ocid = '{{ tenancy_ocid }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an existing tenancy config. This will stop all data collection from the specified OCI tenancy and remove the stored configuration. This operation cannot be undone. + +```sql +DELETE FROM datadog.integrations.oci_tenancies +WHERE tenancy_ocid = '{{ tenancy_ocid }}' --required +; +``` + + diff --git a/website/docs/services/integrations/okta_accounts/index.md b/website/docs/services/integrations/okta_accounts/index.md index a9bffeb..464eff0 100644 --- a/website/docs/services/integrations/okta_accounts/index.md +++ b/website/docs/services/integrations/okta_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an okta_accounts resource. ## Overview - +
Nameokta_accounts
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Account type for an Okta account. (default: okta-accounts, example: okta-accounts) + Account type for an Okta account. (okta-accounts) (default: okta-accounts, example: okta-accounts) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Account type for an Okta account. (default: okta-accounts, example: okta-accounts) + Account type for an Okta account. (okta-accounts) (default: okta-accounts, example: okta-accounts) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, region + account_id Get an Okta account. - region + List Okta accounts. - region, data__data + data Create an Okta account. - account_id, region, data__data + account_id, data Update an Okta account. - account_id, region + account_id Delete an Okta account. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string None - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.integrations.okta_accounts WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.integrations.okta_accounts -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create an Okta account. ```sql INSERT INTO datadog.integrations.okta_accounts ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,24 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: okta_accounts props: - - name: region - value: string - description: Required parameter for the okta_accounts resource. - name: data - value: object description: | Schema for an Okta account. -``` + value: + attributes: + api_key: "{{ api_key }}" + auth_method: "{{ auth_method }}" + client_id: "{{ client_id }}" + client_secret: "{{ client_secret }}" + domain: "{{ domain }}" + name: "{{ name }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -277,11 +280,10 @@ Update an Okta account. ```sql UPDATE datadog.integrations.okta_accounts SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +306,6 @@ Delete an Okta account. ```sql DELETE FROM datadog.integrations.okta_accounts WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/opsgenie_accounts/index.md b/website/docs/services/integrations/opsgenie_accounts/index.md new file mode 100644 index 0000000..a91be58 --- /dev/null +++ b/website/docs/services/integrations/opsgenie_accounts/index.md @@ -0,0 +1,255 @@ +--- +title: opsgenie_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - opsgenie_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an opsgenie_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Opsgenie account. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectThe attributes from an Opsgenie account response.
stringOpsgenie account resource type. (opsgenie-account) (default: opsgenie-account, example: opsgenie-account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get a list of all Opsgenie accounts from the Datadog Opsgenie integration.
dataCreate a new Opsgenie account in the Datadog Opsgenie integration.
account_id, dataUpdate a single Opsgenie account in the Datadog Opsgenie integration.
account_idDelete a single Opsgenie account from the Datadog Opsgenie integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the Opsgenie account.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a list of all Opsgenie accounts from the Datadog Opsgenie integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.opsgenie_accounts +; +``` + + + + +## `INSERT` examples + + + + +Create a new Opsgenie account in the Datadog Opsgenie integration. + +```sql +INSERT INTO datadog.integrations.opsgenie_accounts ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: opsgenie_accounts + props: + - name: data + description: | + Opsgenie account data for a create request. + value: + attributes: + api_key: "{{ api_key }}" + region: "{{ region }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a single Opsgenie account in the Datadog Opsgenie integration. + +```sql +UPDATE datadog.integrations.opsgenie_accounts +SET +data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a single Opsgenie account from the Datadog Opsgenie integration. + +```sql +DELETE FROM datadog.integrations.opsgenie_accounts +WHERE account_id = '{{ account_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/opsgenie_services/index.md b/website/docs/services/integrations/opsgenie_services/index.md index 2514db7..1f7557e 100644 --- a/website/docs/services/integrations/opsgenie_services/index.md +++ b/website/docs/services/integrations/opsgenie_services/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an opsgenie_services resou ## Overview - +
Nameopsgenie_services
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Opsgenie service resource type. (default: opsgenie-service, example: opsgenie-service) + Opsgenie service resource type. (opsgenie-service) (default: opsgenie-service, example: opsgenie-service) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Opsgenie service resource type. (default: opsgenie-service, example: opsgenie-service) + Opsgenie service resource type. (opsgenie-service) (default: opsgenie-service, example: opsgenie-service) @@ -116,35 +117,35 @@ The following methods are available for this resource: - integration_service_id, region + integration_service_id Get a single service from the Datadog Opsgenie integration. - region + Get a list of all services from the Datadog Opsgenie integration. - region, data__data + data Create a new service object in the Opsgenie integration. - integration_service_id, region, data__data + integration_service_id, data Update a single service object in the Datadog Opsgenie integration. - integration_service_id, region + integration_service_id Delete a single service object in the Datadog Opsgenie integration. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The UUID of the service. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.integrations.opsgenie_services WHERE integration_service_id = '{{ integration_service_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.integrations.opsgenie_services -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a new service object in the Opsgenie integration. ```sql INSERT INTO datadog.integrations.opsgenie_services ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,21 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: opsgenie_services props: - - name: region - value: string - description: Required parameter for the opsgenie_services resource. - name: data - value: object description: | Opsgenie service data for a create request. -``` + value: + attributes: + custom_url: "{{ custom_url }}" + name: "{{ name }}" + opsgenie_api_key: "{{ opsgenie_api_key }}" + region: "{{ region }}" + type: "{{ type }}" +`} + @@ -277,11 +277,10 @@ Update a single service object in the Datadog Opsgenie integration. ```sql UPDATE datadog.integrations.opsgenie_services SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE integration_service_id = '{{ integration_service_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +303,6 @@ Delete a single service object in the Datadog Opsgenie integration. ```sql DELETE FROM datadog.integrations.opsgenie_services WHERE integration_service_id = '{{ integration_service_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/integrations/pagerduty_services/index.md b/website/docs/services/integrations/pagerduty_services/index.md new file mode 100644 index 0000000..52d08b2 --- /dev/null +++ b/website/docs/services/integrations/pagerduty_services/index.md @@ -0,0 +1,244 @@ +--- +title: pagerduty_services +hide_title: false +hide_table_of_contents: false +keywords: + - pagerduty_services + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a pagerduty_services resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour service name associated service key in PagerDuty. (example: )
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
service_nameGet service name in the Datadog-PagerDuty integration.
service_name, service_keyCreate a new service object in the PagerDuty integration.
service_name, service_keyUpdate a single service object in the Datadog-PagerDuty integration.
service_nameDelete a single service object in the Datadog-PagerDuty integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe service name
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get service name in the Datadog-PagerDuty integration. + +```sql +SELECT +service_name +FROM datadog.integrations.pagerduty_services +WHERE service_name = '{{ service_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new service object in the PagerDuty integration. + +```sql +INSERT INTO datadog.integrations.pagerduty_services ( +service_key, +service_name +) +SELECT +'{{ service_key }}' /* required */, +'{{ service_name }}' /* required */ +RETURNING +service_name +; +``` + + + +{`# Description fields are for documentation purposes +- name: pagerduty_services + props: + - name: service_key + value: "{{ service_key }}" + description: | + Your service key in PagerDuty. + - name: service_name + value: "{{ service_name }}" + description: | + Your service name associated with a service key in PagerDuty. +`} + + + + + +## `REPLACE` examples + + + + +Update a single service object in the Datadog-PagerDuty integration. + +```sql +REPLACE datadog.integrations.pagerduty_services +SET +service_key = '{{ service_key }}' +WHERE +service_name = '{{ service_name }}' --required +AND service_key = '{{ service_key }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete a single service object in the Datadog-PagerDuty integration. + +```sql +DELETE FROM datadog.integrations.pagerduty_services +WHERE service_name = '{{ service_name }}' --required +; +``` + + diff --git a/website/docs/services/integrations/reference_table_rows/index.md b/website/docs/services/integrations/reference_table_rows/index.md new file mode 100644 index 0000000..94e2921 --- /dev/null +++ b/website/docs/services/integrations/reference_table_rows/index.md @@ -0,0 +1,300 @@ +--- +title: reference_table_rows +hide_title: false +hide_table_of_contents: false +keywords: + - reference_table_rows + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a reference_table_rows resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Some or all requested rows were found. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRow identifier, corresponding to the primary key value.
objectColumn values for this row in the reference table.
stringRow resource type. (row) (default: row, example: row)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRow identifier, corresponding to the primary key value.
objectColumn values for this row in the reference table.
stringRow resource type. (row) (default: row, example: row)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id, row_idGet reference table rows by their primary key values.
idpage[limit], page[continuation_token]List all rows in a reference table using cursor-based pagination. Pass the `page[continuation_token]` from the previous response to fetch the next page on the same consistent snapshot. Returns 400 for tables with more than 10,000,000 rows.
idDelete multiple rows from a Reference Table by their primary key values.
Batch query reference table rows by their primary key values. Returns only found rows in the included array.
id, dataCreate or update rows in a Reference Table by their primary key values. If a row with the specified primary key exists, it is updated; otherwise, a new row is created.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the reference table to upsert rows into
arrayList of row IDs (primary key values) to retrieve from the reference table. (example: [row1, row2])
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOpaque cursor from the previous response's next link. Pass this to retrieve the next page on the same consistent snapshot. (example: eyJzaWQiOjEyMzQ1LCJwayI6ImV4YW1wbGVfcGsifQ==)
integer (int64)Number of rows to return per page. Defaults to 100, maximum is 1000. (example: 100)
+ +## `SELECT` examples + + + + +Get reference table rows by their primary key values. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.reference_table_rows +WHERE id = '{{ id }}' -- required +AND row_id = '{{ row_id }}' -- required +; +``` + + + +List all rows in a reference table using cursor-based pagination. Pass the `page[continuation_token]` from the previous response to fetch the next page on the same consistent snapshot. Returns 400 for tables with more than 10,000,000 rows. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.reference_table_rows +WHERE id = '{{ id }}' -- required +AND page[limit] = '{{ page[limit] }}' +AND page[continuation_token] = '{{ page[continuation_token] }}' +; +``` + + + + +## `DELETE` examples + + + + +Delete multiple rows from a Reference Table by their primary key values. + +```sql +DELETE FROM datadog.integrations.reference_table_rows +WHERE id = '{{ id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Batch query reference table rows by their primary key values. Returns only found rows in the included array. + +```sql +EXEC datadog.integrations.reference_table_rows.batch_rows_query +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Create or update rows in a Reference Table by their primary key values. If a row with the specified primary key exists, it is updated; otherwise, a new row is created. + +```sql +EXEC datadog.integrations.reference_table_rows.upsert_rows +@id='{{ id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/integrations/reference_table_uploads/index.md b/website/docs/services/integrations/reference_table_uploads/index.md new file mode 100644 index 0000000..7883c9c --- /dev/null +++ b/website/docs/services/integrations/reference_table_uploads/index.md @@ -0,0 +1,127 @@ +--- +title: reference_table_uploads +hide_title: false +hide_table_of_contents: false +keywords: + - reference_table_uploads + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a reference_table_uploads resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Create a reference table upload for bulk data ingestion
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a reference table upload for bulk data ingestion + +```sql +INSERT INTO datadog.integrations.reference_table_uploads ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: reference_table_uploads + props: + - name: data + description: | + Request data for creating an upload for a file to be ingested into a reference table. + value: + attributes: + headers: + - "{{ headers }}" + part_count: {{ part_count }} + part_size: {{ part_size }} + table_name: "{{ table_name }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/integrations/reference_tables/index.md b/website/docs/services/integrations/reference_tables/index.md new file mode 100644 index 0000000..8736204 --- /dev/null +++ b/website/docs/services/integrations/reference_tables/index.md @@ -0,0 +1,368 @@ +--- +title: reference_tables +hide_title: false +hide_table_of_contents: false +keywords: + - reference_tables + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a reference_tables resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the reference table.
objectAttributes that define the reference table's configuration and properties.
stringReference table resource type. (reference_table) (default: reference_table, example: reference_table)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the reference table.
objectAttributes that define the reference table's configuration and properties.
stringReference table resource type. (reference_table) (default: reference_table, example: reference_table)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idGet a reference table by ID
page[limit], page[offset], sort, filter[status], filter[table_name][exact], filter[table_name][contains]List all reference tables in this organization.
Creates a reference table. You can provide data in two ways:<br />1. Call POST /api/v2/reference-tables/upload to get an upload ID. Then, PUT the CSV data<br /> (not the file itself) in chunks to each URL in the request body. Finally, call this<br /> POST endpoint with `upload_id` in `file_metadata`.<br />2. Provide `access_details` in `file_metadata` pointing to a CSV file in cloud storage.
idUpdate a reference table by ID. You can update the table's data, description, and tags. Note: The source type cannot be changed after table creation. For data updates: For existing tables of type `source:LOCAL_FILE`, call POST api/v2/reference-tables/uploads first to get an upload ID, then PUT chunks of CSV data to each provided URL, and finally call this PATCH endpoint with the upload_id in file_metadata. For existing tables with `source:` types of `S3`, `GCS`, or `AZURE`, provide updated access_details in file_metadata pointing to a CSV file in the same type of cloud storage.
idDelete a reference table by ID
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the reference table to delete
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter by table status. (example: DONE)
stringFilter by table name containing substring. (example: user)
stringFilter by exact table name match. (example: my_reference_table)
integer (int64)Number of tables to return. (example: 15)
integer (int64)Number of tables to skip for pagination. (example: 0)
stringSort field and direction for the list of reference tables. Use field name for ascending, prefix with "-" for descending. (example: -updated_at)
+ +## `SELECT` examples + + + + +Get a reference table by ID + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.reference_tables +WHERE id = '{{ id }}' -- required +; +``` + + + +List all reference tables in this organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.reference_tables +WHERE page[limit] = '{{ page[limit] }}' +AND page[offset] = '{{ page[offset] }}' +AND sort = '{{ sort }}' +AND filter[status] = '{{ filter[status] }}' +AND filter[table_name][exact] = '{{ filter[table_name][exact] }}' +AND filter[table_name][contains] = '{{ filter[table_name][contains] }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a reference table. You can provide data in two ways:<br />1. Call POST /api/v2/reference-tables/upload to get an upload ID. Then, PUT the CSV data<br /> (not the file itself) in chunks to each URL in the request body. Finally, call this<br /> POST endpoint with `upload_id` in `file_metadata`.<br />2. Provide `access_details` in `file_metadata` pointing to a CSV file in cloud storage. + +```sql +INSERT INTO datadog.integrations.reference_tables ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: reference_tables + props: + - name: data + description: | + The data object containing the table definition. + value: + attributes: + description: "{{ description }}" + file_metadata: + access_details: + aws_detail: + aws_account_id: "{{ aws_account_id }}" + aws_bucket_name: "{{ aws_bucket_name }}" + file_path: "{{ file_path }}" + azure_detail: + azure_client_id: "{{ azure_client_id }}" + azure_container_name: "{{ azure_container_name }}" + azure_storage_account_name: "{{ azure_storage_account_name }}" + azure_tenant_id: "{{ azure_tenant_id }}" + file_path: "{{ file_path }}" + gcp_detail: + file_path: "{{ file_path }}" + gcp_bucket_name: "{{ gcp_bucket_name }}" + gcp_project_id: "{{ gcp_project_id }}" + gcp_service_account_email: "{{ gcp_service_account_email }}" + sync_enabled: {{ sync_enabled }} + upload_id: "{{ upload_id }}" + schema: + fields: + - name: "{{ name }}" + type: "{{ type }}" + primary_keys: + - "{{ primary_keys }}" + source: "{{ source }}" + table_name: "{{ table_name }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a reference table by ID. You can update the table's data, description, and tags. Note: The source type cannot be changed after table creation. For data updates: For existing tables of type `source:LOCAL_FILE`, call POST api/v2/reference-tables/uploads first to get an upload ID, then PUT chunks of CSV data to each provided URL, and finally call this PATCH endpoint with the upload_id in file_metadata. For existing tables with `source:` types of `S3`, `GCS`, or `AZURE`, provide updated access_details in file_metadata pointing to a CSV file in the same type of cloud storage. + +```sql +UPDATE datadog.integrations.reference_tables +SET +data = '{{ data }}' +WHERE +id = '{{ id }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete a reference table by ID + +```sql +DELETE FROM datadog.integrations.reference_tables +WHERE id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/salesforce_incident_incident_templates/index.md b/website/docs/services/integrations/salesforce_incident_incident_templates/index.md new file mode 100644 index 0000000..a061a94 --- /dev/null +++ b/website/docs/services/integrations/salesforce_incident_incident_templates/index.md @@ -0,0 +1,259 @@ +--- +title: salesforce_incident_incident_templates +hide_title: false +hide_table_of_contents: false +keywords: + - salesforce_incident_incident_templates + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a salesforce_incident_incident_templates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Salesforce incident template. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectSalesforce incident template attributes returned by the API.
stringSalesforce incident template resource type. (salesforce-incidents-incident-template) (default: salesforce-incidents-incident-template, example: salesforce-incidents-incident-template)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all Salesforce incident templates configured for your organization.
dataCreate a new Salesforce incident template for your organization. Template<br />names must be unique within an organization.
incident_template_id, dataUpdate a single Salesforce incident template in your organization.
incident_template_idDelete a single Salesforce incident template from your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Salesforce incident template.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all Salesforce incident templates configured for your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.salesforce_incident_incident_templates +; +``` + + + + +## `INSERT` examples + + + + +Create a new Salesforce incident template for your organization. Template<br />names must be unique within an organization. + +```sql +INSERT INTO datadog.integrations.salesforce_incident_incident_templates ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: salesforce_incident_incident_templates + props: + - name: data + description: | + Salesforce incident template data for a create request. + value: + attributes: + description: "{{ description }}" + name: "{{ name }}" + owner_id: "{{ owner_id }}" + priority: "{{ priority }}" + salesforce_org_id: "{{ salesforce_org_id }}" + subject: "{{ subject }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a single Salesforce incident template in your organization. + +```sql +UPDATE datadog.integrations.salesforce_incident_incident_templates +SET +data = '{{ data }}' +WHERE +incident_template_id = '{{ incident_template_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a single Salesforce incident template from your organization. + +```sql +DELETE FROM datadog.integrations.salesforce_incident_incident_templates +WHERE incident_template_id = '{{ incident_template_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/salesforce_incident_organizations/index.md b/website/docs/services/integrations/salesforce_incident_organizations/index.md new file mode 100644 index 0000000..7390237 --- /dev/null +++ b/website/docs/services/integrations/salesforce_incident_organizations/index.md @@ -0,0 +1,172 @@ +--- +title: salesforce_incident_organizations +hide_title: false +hide_table_of_contents: false +keywords: + - salesforce_incident_organizations + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a salesforce_incident_organizations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog-assigned ID of the connected Salesforce organization. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectAttributes of a Salesforce organization connected to the Datadog Salesforce integration.
stringSalesforce organization resource type. (salesforce-incidents-org) (default: salesforce-incidents-org, example: salesforce-incidents-org)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all Salesforce organizations connected to your Datadog organization<br />through the Salesforce integration. Salesforce organizations are connected<br />through the OAuth setup flow in the Datadog Salesforce integration page.
salesforce_org_idDisconnect a Salesforce organization from your Datadog organization.<br />This also deletes any incident templates referencing the organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog-assigned ID of the connected Salesforce organization.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all Salesforce organizations connected to your Datadog organization<br />through the Salesforce integration. Salesforce organizations are connected<br />through the OAuth setup flow in the Datadog Salesforce integration page. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.salesforce_incident_organizations +; +``` + + + + +## `DELETE` examples + + + + +Disconnect a Salesforce organization from your Datadog organization.<br />This also deletes any incident templates referencing the organization. + +```sql +DELETE FROM datadog.integrations.salesforce_incident_organizations +WHERE salesforce_org_id = '{{ salesforce_org_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/servicenow_assignment_groups/index.md b/website/docs/services/integrations/servicenow_assignment_groups/index.md new file mode 100644 index 0000000..8b4cf64 --- /dev/null +++ b/website/docs/services/integrations/servicenow_assignment_groups/index.md @@ -0,0 +1,145 @@ +--- +title: servicenow_assignment_groups +hide_title: false +hide_table_of_contents: false +keywords: + - servicenow_assignment_groups + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a servicenow_assignment_groups resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the ServiceNow assignment group (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a ServiceNow assignment group
stringType identifier for ServiceNow assignment group resources (assignment_groups) (example: assignment_groups)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
instance_idGet all assignment groups for a ServiceNow instance.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the ServiceNow instance (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all assignment groups for a ServiceNow instance. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.servicenow_assignment_groups +WHERE instance_id = '{{ instance_id }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/servicenow_business_services/index.md b/website/docs/services/integrations/servicenow_business_services/index.md new file mode 100644 index 0000000..cedc5fb --- /dev/null +++ b/website/docs/services/integrations/servicenow_business_services/index.md @@ -0,0 +1,145 @@ +--- +title: servicenow_business_services +hide_title: false +hide_table_of_contents: false +keywords: + - servicenow_business_services + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a servicenow_business_services resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the ServiceNow business service (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a ServiceNow business service
stringType identifier for ServiceNow business service resources (business_services) (example: business_services)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
instance_idGet all business services for a ServiceNow instance.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the ServiceNow instance (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all business services for a ServiceNow instance. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.servicenow_business_services +WHERE instance_id = '{{ instance_id }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/servicenow_handles/index.md b/website/docs/services/integrations/servicenow_handles/index.md new file mode 100644 index 0000000..09f7df9 --- /dev/null +++ b/website/docs/services/integrations/servicenow_handles/index.md @@ -0,0 +1,312 @@ +--- +title: servicenow_handles +hide_title: false +hide_table_of_contents: false +keywords: + - servicenow_handles + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a servicenow_handles resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the ServiceNow template (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a ServiceNow template
stringType identifier for ServiceNow template resources (servicenow_templates) (example: servicenow_templates)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the ServiceNow template (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a ServiceNow template
stringType identifier for ServiceNow template resources (servicenow_templates) (example: servicenow_templates)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
template_idGet a ServiceNow template by ID.
Get all ServiceNow templates for the organization.
dataCreate a new ServiceNow template.
template_id, dataUpdate a ServiceNow template by ID.
template_idDelete a ServiceNow template by ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The ID of the ServiceNow template to delete (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
+ +## `SELECT` examples + + + + +Get a ServiceNow template by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.servicenow_handles +WHERE template_id = '{{ template_id }}' -- required +; +``` + + + +Get all ServiceNow templates for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.servicenow_handles +; +``` + + + + +## `INSERT` examples + + + + +Create a new ServiceNow template. + +```sql +INSERT INTO datadog.integrations.servicenow_handles ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: servicenow_handles + props: + - name: data + description: | + Data object for creating a ServiceNow template + value: + attributes: + assignment_group_id: "{{ assignment_group_id }}" + business_service_id: "{{ business_service_id }}" + fields_mapping: "{{ fields_mapping }}" + handle_name: "{{ handle_name }}" + instance_id: "{{ instance_id }}" + servicenow_tablename: "{{ servicenow_tablename }}" + user_id: "{{ user_id }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a ServiceNow template by ID. + +```sql +REPLACE datadog.integrations.servicenow_handles +SET +data = '{{ data }}' +WHERE +template_id = '{{ template_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a ServiceNow template by ID. + +```sql +DELETE FROM datadog.integrations.servicenow_handles +WHERE template_id = '{{ template_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/servicenow_instances/index.md b/website/docs/services/integrations/servicenow_instances/index.md new file mode 100644 index 0000000..230dae0 --- /dev/null +++ b/website/docs/services/integrations/servicenow_instances/index.md @@ -0,0 +1,139 @@ +--- +title: servicenow_instances +hide_title: false +hide_table_of_contents: false +keywords: + - servicenow_instances + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a servicenow_instances resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the ServiceNow instance (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a ServiceNow instance
stringType identifier for ServiceNow instance resources (instance) (example: instance)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all ServiceNow instances for the organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all ServiceNow instances for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.servicenow_instances +; +``` + + diff --git a/website/docs/services/integrations/servicenow_users/index.md b/website/docs/services/integrations/servicenow_users/index.md new file mode 100644 index 0000000..c97641c --- /dev/null +++ b/website/docs/services/integrations/servicenow_users/index.md @@ -0,0 +1,145 @@ +--- +title: servicenow_users +hide_title: false +hide_table_of_contents: false +keywords: + - servicenow_users + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a servicenow_users resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Unique identifier for the ServiceNow user (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
objectAttributes of a ServiceNow user
stringType identifier for ServiceNow user resources (users) (example: users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
instance_idGet all users for a ServiceNow instance.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the ServiceNow instance (example: 65b3341b-0680-47f9-a6d4-134db45c603e)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all users for a ServiceNow instance. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.servicenow_users +WHERE instance_id = '{{ instance_id }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/slack_channels/index.md b/website/docs/services/integrations/slack_channels/index.md new file mode 100644 index 0000000..7f695a0 --- /dev/null +++ b/website/docs/services/integrations/slack_channels/index.md @@ -0,0 +1,318 @@ +--- +title: slack_channels +hide_title: false +hide_table_of_contents: false +keywords: + - slack_channels + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slack_channels resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour channel name. (example: #general)
objectConfiguration options for what is shown in an alert event message.
+
+ + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour channel name. (example: #general)
objectConfiguration options for what is shown in an alert event message.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_name, channel_nameGet a channel configured for your Datadog-Slack integration.
account_nameGet a list of all channels configured for your Datadog-Slack integration.
account_nameAdd a channel to your Datadog-Slack integration.
account_name, channel_nameUpdate a channel used in your Datadog-Slack integration.
account_name, channel_nameRemove a channel from your Datadog-Slack integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringYour Slack account name.
stringThe name of the Slack channel being operated on.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a channel configured for your Datadog-Slack integration. + +```sql +SELECT +name, +display +FROM datadog.integrations.slack_channels +WHERE account_name = '{{ account_name }}' -- required +AND channel_name = '{{ channel_name }}' -- required +; +``` + + + +Get a list of all channels configured for your Datadog-Slack integration. + +```sql +SELECT +name, +display +FROM datadog.integrations.slack_channels +WHERE account_name = '{{ account_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Add a channel to your Datadog-Slack integration. + +```sql +INSERT INTO datadog.integrations.slack_channels ( +display, +name, +account_name +) +SELECT +'{{ display }}', +'{{ name }}', +'{{ account_name }}' +RETURNING +name, +display +; +``` + + + +{`# Description fields are for documentation purposes +- name: slack_channels + props: + - name: account_name + value: "{{ account_name }}" + description: Required parameter for the slack_channels resource. + - name: display + description: | + Configuration options for what is shown in an alert event message. + value: + message: {{ message }} + mute_buttons: {{ mute_buttons }} + notified: {{ notified }} + snapshot: {{ snapshot }} + tags: {{ tags }} + - name: name + value: "{{ name }}" + description: | + Your channel name. +`} + + + + + +## `UPDATE` examples + + + + +Update a channel used in your Datadog-Slack integration. + +```sql +UPDATE datadog.integrations.slack_channels +SET +display = '{{ display }}', +name = '{{ name }}' +WHERE +account_name = '{{ account_name }}' --required +AND channel_name = '{{ channel_name }}' --required +RETURNING +name, +display; +``` + + + + +## `DELETE` examples + + + + +Remove a channel from your Datadog-Slack integration. + +```sql +DELETE FROM datadog.integrations.slack_channels +WHERE account_name = '{{ account_name }}' --required +AND channel_name = '{{ channel_name }}' --required +; +``` + + diff --git a/website/docs/services/integrations/slack_user_bindings/index.md b/website/docs/services/integrations/slack_user_bindings/index.md new file mode 100644 index 0000000..48dc133 --- /dev/null +++ b/website/docs/services/integrations/slack_user_bindings/index.md @@ -0,0 +1,139 @@ +--- +title: slack_user_bindings +hide_title: false +hide_table_of_contents: false +keywords: + - slack_user_bindings + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slack_user_bindings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Slack team ID. (example: T01234567)
stringSlack user binding resource type. (team_id) (default: team_id, example: team_id)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_uuidList all Slack user bindings for a given Datadog user from the Datadog Slack integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The UUID of the Datadog user to list Slack bindings for.
+ +## `SELECT` examples + + + + +List all Slack user bindings for a given Datadog user from the Datadog Slack integration. + +```sql +SELECT +id, +type +FROM datadog.integrations.slack_user_bindings +WHERE user_uuid = '{{ user_uuid }}' -- required +; +``` + + diff --git a/website/docs/services/integrations/statuspage_accounts/index.md b/website/docs/services/integrations/statuspage_accounts/index.md new file mode 100644 index 0000000..aa51f37 --- /dev/null +++ b/website/docs/services/integrations/statuspage_accounts/index.md @@ -0,0 +1,241 @@ +--- +title: statuspage_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectThe attributes from a Statuspage account response.
stringStatuspage account resource type. (statuspage-account) (default: statuspage-account, example: statuspage-account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the Statuspage account configured for your organization.
dataCreate a Statuspage account for your organization. Only one Statuspage<br />account can be configured per organization.
dataUpdate the Statuspage account configured for your organization.
Delete the Statuspage account configured for your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the Statuspage account configured for your organization. + +```sql +SELECT +attributes, +type +FROM datadog.integrations.statuspage_accounts +; +``` + + + + +## `INSERT` examples + + + + +Create a Statuspage account for your organization. Only one Statuspage<br />account can be configured per organization. + +```sql +INSERT INTO datadog.integrations.statuspage_accounts ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_accounts + props: + - name: data + description: | + Statuspage account data for a create request. + value: + attributes: + api_key: "{{ api_key }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the Statuspage account configured for your organization. + +```sql +UPDATE datadog.integrations.statuspage_accounts +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete the Statuspage account configured for your organization. + +```sql +DELETE FROM datadog.integrations.statuspage_accounts +; +``` + + diff --git a/website/docs/services/integrations/statuspage_url_settings/index.md b/website/docs/services/integrations/statuspage_url_settings/index.md new file mode 100644 index 0000000..c143f33 --- /dev/null +++ b/website/docs/services/integrations/statuspage_url_settings/index.md @@ -0,0 +1,255 @@ +--- +title: statuspage_url_settings +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_url_settings + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_url_settings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Statuspage URL setting. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectThe attributes from a Statuspage URL setting response.
stringStatuspage URL setting resource type. (statuspage-url-setting) (default: statuspage-url-setting, example: statuspage-url-setting)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all Statuspage URL settings configured for your organization.
dataCreate a Statuspage URL setting for your organization.
statuspage_url_setting_id, dataUpdate a single Statuspage URL setting in your organization.
statuspage_url_setting_idDelete a single Statuspage URL setting from your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe UUID of the Statuspage URL setting.
+ +## `SELECT` examples + + + + +Get all Statuspage URL settings configured for your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.statuspage_url_settings +; +``` + + + + +## `INSERT` examples + + + + +Create a Statuspage URL setting for your organization. + +```sql +INSERT INTO datadog.integrations.statuspage_url_settings ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_url_settings + props: + - name: data + description: | + Statuspage URL setting data for a create request. + value: + attributes: + custom_tags: "{{ custom_tags }}" + url: "{{ url }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a single Statuspage URL setting in your organization. + +```sql +UPDATE datadog.integrations.statuspage_url_settings +SET +data = '{{ data }}' +WHERE +statuspage_url_setting_id = '{{ statuspage_url_setting_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a single Statuspage URL setting from your organization. + +```sql +DELETE FROM datadog.integrations.statuspage_url_settings +WHERE statuspage_url_setting_id = '{{ statuspage_url_setting_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/twilio_accounts/index.md b/website/docs/services/integrations/twilio_accounts/index.md new file mode 100644 index 0000000..bac632c --- /dev/null +++ b/website/docs/services/integrations/twilio_accounts/index.md @@ -0,0 +1,324 @@ +--- +title: twilio_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - twilio_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a twilio_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringServer-generated unique identifier of the Twilio integration account. (example: 953a0060-81ec-4221-aed4-d4733b59cd96)
objectAttributes of a Twilio integration account returned in responses.
stringThe type of the integration account resource. Always `integration-account`. (integration-account) (default: integration-account, example: integration-account)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringServer-generated unique identifier of the Twilio integration account. (example: 953a0060-81ec-4221-aed4-d4733b59cd96)
objectAttributes of a Twilio integration account returned in responses.
stringThe type of the integration account resource. Always `integration-account`. (integration-account) (default: integration-account, example: integration-account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
account_idGet a Twilio integration account.
List Twilio integration accounts.
dataCreate a Twilio integration account.
account_id, dataUpdate a Twilio integration account. Only the fields provided are changed.
account_idDelete a Twilio integration account.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the integration account.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a Twilio integration account. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.twilio_accounts +WHERE account_id = '{{ account_id }}' -- required +; +``` + + + +List Twilio integration accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.twilio_accounts +; +``` + + + + +## `INSERT` examples + + + + +Create a Twilio integration account. + +```sql +INSERT INTO datadog.integrations.twilio_accounts ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: twilio_accounts + props: + - name: data + description: | + Data envelope for creating a Twilio integration account. + value: + attributes: + authentication: + auth_type: "{{ auth_type }}" + password: "{{ password }}" + username: "{{ username }}" + dataflows: + twilio-alerts-logs: + enabled: {{ enabled }} + twilio-call-summaries-logs: + enabled: {{ enabled }} + twilio-cloud-cost-metrics: + enabled: {{ enabled }} + twilio-events-logs: + enabled: {{ enabled }} + twilio-messages-logs: + enabled: {{ enabled }} + name: "{{ name }}" + settings: + account_sid: "{{ account_sid }}" + censor_logs: {{ censor_logs }} + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a Twilio integration account. Only the fields provided are changed. + +```sql +UPDATE datadog.integrations.twilio_accounts +SET +data = '{{ data }}' +WHERE +account_id = '{{ account_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a Twilio integration account. + +```sql +DELETE FROM datadog.integrations.twilio_accounts +WHERE account_id = '{{ account_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/web_integration_accounts/index.md b/website/docs/services/integrations/web_integration_accounts/index.md new file mode 100644 index 0000000..ce4fe95 --- /dev/null +++ b/website/docs/services/integrations/web_integration_accounts/index.md @@ -0,0 +1,322 @@ +--- +title: web_integration_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - web_integration_accounts + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a web_integration_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the web integration account. (example: abc123def456)
objectAttributes object of a web integration account. Secrets are never returned.
stringAccount resource type. (Account) (default: Account, example: Account)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the web integration account. (example: abc123def456)
objectAttributes object of a web integration account. Secrets are never returned.
stringAccount resource type. (Account) (default: Account, example: Account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration_name, account_idGet a single account for a given web integration.
integration_nameList accounts for a given web integration.
integration_name, dataCreate a new account for a given web integration.
integration_name, account_id, dataUpdate an existing account for a given web integration.
integration_name, account_idDelete an account for a given web integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the web integration account.
stringThe name of the integration (for example, `databricks`).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a single account for a given web integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.web_integration_accounts +WHERE integration_name = '{{ integration_name }}' -- required +AND account_id = '{{ account_id }}' -- required +; +``` + + + +List accounts for a given web integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.web_integration_accounts +WHERE integration_name = '{{ integration_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new account for a given web integration. + +```sql +INSERT INTO datadog.integrations.web_integration_accounts ( +data, +integration_name +) +SELECT +'{{ data }}' /* required */, +'{{ integration_name }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: web_integration_accounts + props: + - name: integration_name + value: "{{ integration_name }}" + description: Required parameter for the web_integration_accounts resource. + - name: data + description: | + Data object for creating a web integration account. + value: + attributes: + name: "{{ name }}" + secrets: "{{ secrets }}" + settings: "{{ settings }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing account for a given web integration. + +```sql +UPDATE datadog.integrations.web_integration_accounts +SET +data = '{{ data }}' +WHERE +integration_name = '{{ integration_name }}' --required +AND account_id = '{{ account_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an account for a given web integration. + +```sql +DELETE FROM datadog.integrations.web_integration_accounts +WHERE integration_name = '{{ integration_name }}' --required +AND account_id = '{{ account_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/webhook_auth_methods/index.md b/website/docs/services/integrations/webhook_auth_methods/index.md new file mode 100644 index 0000000..7a00029 --- /dev/null +++ b/website/docs/services/integrations/webhook_auth_methods/index.md @@ -0,0 +1,151 @@ +--- +title: webhook_auth_methods +hide_title: false +hide_table_of_contents: false +keywords: + - webhook_auth_methods + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a webhook_auth_methods resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the auth method. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectAttributes of a webhooks auth method.
objectRelationships of a webhooks auth method to its protocol-specific resource.
stringWebhooks auth method resource type. (webhooks-auth-method) (default: webhooks-auth-method, example: webhooks-auth-method)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
includeGet a list of all auth methods configured for the Webhooks integration in<br />your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated list of relationships to include in the response.
+ +## `SELECT` examples + + + + +Get a list of all auth methods configured for the Webhooks integration in<br />your organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.integrations.webhook_auth_methods +WHERE include = '{{ include }}' +; +``` + + diff --git a/website/docs/services/integrations/webhook_custom_variables/index.md b/website/docs/services/integrations/webhook_custom_variables/index.md new file mode 100644 index 0000000..731c122 --- /dev/null +++ b/website/docs/services/integrations/webhook_custom_variables/index.md @@ -0,0 +1,270 @@ +--- +title: webhook_custom_variables +hide_title: false +hide_table_of_contents: false +keywords: + - webhook_custom_variables + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a webhook_custom_variables resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the variable. It corresponds with <CUSTOM_VARIABLE_NAME>. It must only contains upper-case characters, integers or underscores. (example: CUSTOM_VARIABLE_NAME)
booleanMake custom variable is secret or not. If the custom variable is secret, the value is not returned in the response payload.
stringValue of the custom variable. It won't be returned if the variable is secret. (example: CUSTOM_VARIABLE_VALUE)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
custom_variable_nameShows the content of the custom variable with the name <CUSTOM_VARIABLE_NAME>.<br /><br />If the custom variable is secret, the value does not return in the<br />response payload.
name, value, is_secretCreates an endpoint with the name <CUSTOM_VARIABLE_NAME>.
custom_variable_nameUpdates the endpoint with the name <CUSTOM_VARIABLE_NAME>.
custom_variable_nameDeletes the endpoint with the name <CUSTOM_VARIABLE_NAME>.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the custom variable.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Shows the content of the custom variable with the name <CUSTOM_VARIABLE_NAME>.<br /><br />If the custom variable is secret, the value does not return in the<br />response payload. + +```sql +SELECT +name, +is_secret, +value +FROM datadog.integrations.webhook_custom_variables +WHERE custom_variable_name = '{{ custom_variable_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Creates an endpoint with the name <CUSTOM_VARIABLE_NAME>. + +```sql +INSERT INTO datadog.integrations.webhook_custom_variables ( +is_secret, +name, +value +) +SELECT +{{ is_secret }} /* required */, +'{{ name }}' /* required */, +'{{ value }}' /* required */ +RETURNING +name, +is_secret, +value +; +``` + + + +{`# Description fields are for documentation purposes +- name: webhook_custom_variables + props: + - name: is_secret + value: {{ is_secret }} + description: | + Make custom variable is secret or not. + If the custom variable is secret, the value is not returned in the response payload. + - name: name + value: "{{ name }}" + description: | + The name of the variable. It corresponds with \`\`. + - name: value + value: "{{ value }}" + description: | + Value of the custom variable. +`} + + + + + +## `REPLACE` examples + + + + +Updates the endpoint with the name <CUSTOM_VARIABLE_NAME>. + +```sql +REPLACE datadog.integrations.webhook_custom_variables +SET +is_secret = {{ is_secret }}, +name = '{{ name }}', +value = '{{ value }}' +WHERE +custom_variable_name = '{{ custom_variable_name }}' --required +RETURNING +name, +is_secret, +value; +``` + + + + +## `DELETE` examples + + + + +Deletes the endpoint with the name <CUSTOM_VARIABLE_NAME>. + +```sql +DELETE FROM datadog.integrations.webhook_custom_variables +WHERE custom_variable_name = '{{ custom_variable_name }}' --required +; +``` + + diff --git a/website/docs/services/integrations/webhook_oauth2_client_credentials/index.md b/website/docs/services/integrations/webhook_oauth2_client_credentials/index.md new file mode 100644 index 0000000..3d6aef7 --- /dev/null +++ b/website/docs/services/integrations/webhook_oauth2_client_credentials/index.md @@ -0,0 +1,260 @@ +--- +title: webhook_oauth2_client_credentials +hide_title: false +hide_table_of_contents: false +keywords: + - webhook_oauth2_client_credentials + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a webhook_oauth2_client_credentials resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the OAuth2 client credentials auth method. (example: 596da4af-0563-4097-90ff-07230c3f9db3)
objectOAuth2 client credentials attributes returned by the API. The `client_secret` is never echoed.
stringOAuth2 client credentials resource type. (webhooks-auth-method-oauth2-client-credentials) (default: webhooks-auth-method-oauth2-client-credentials, example: webhooks-auth-method-oauth2-client-credentials)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
auth_method_idGet a single OAuth2 client credentials auth method by ID.
dataCreate a new OAuth2 client credentials auth method for the Webhooks<br />integration. The `client_secret` is stored securely and never returned.
auth_method_id, dataUpdate an existing OAuth2 client credentials auth method.
auth_method_idDelete an OAuth2 client credentials auth method by ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the auth method.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a single OAuth2 client credentials auth method by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.integrations.webhook_oauth2_client_credentials +WHERE auth_method_id = '{{ auth_method_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new OAuth2 client credentials auth method for the Webhooks<br />integration. The `client_secret` is stored securely and never returned. + +```sql +INSERT INTO datadog.integrations.webhook_oauth2_client_credentials ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: webhook_oauth2_client_credentials + props: + - name: data + description: | + OAuth2 client credentials data for a create request. + value: + attributes: + access_token_url: "{{ access_token_url }}" + audience: "{{ audience }}" + client_id: "{{ client_id }}" + client_secret: "{{ client_secret }}" + name: "{{ name }}" + scope: "{{ scope }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing OAuth2 client credentials auth method. + +```sql +UPDATE datadog.integrations.webhook_oauth2_client_credentials +SET +data = '{{ data }}' +WHERE +auth_method_id = '{{ auth_method_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an OAuth2 client credentials auth method by ID. + +```sql +DELETE FROM datadog.integrations.webhook_oauth2_client_credentials +WHERE auth_method_id = '{{ auth_method_id }}' --required +; +``` + + diff --git a/website/docs/services/integrations/webhooks/index.md b/website/docs/services/integrations/webhooks/index.md new file mode 100644 index 0000000..1a88849 --- /dev/null +++ b/website/docs/services/integrations/webhooks/index.md @@ -0,0 +1,307 @@ +--- +title: webhooks +hide_title: false +hide_table_of_contents: false +keywords: + - webhooks + - integrations + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a webhooks resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the webhook. It corresponds with <WEBHOOK_NAME>. Learn more on how to use it in [monitor notifications](https:​//docs.datadoghq.com/monitors/notify). (example: WEBHOOK_NAME)
stringIf `null`, uses no header. If given a JSON payload, these will be headers attached to your webhook.
stringEncoding type. Can be given either `json` or `form`. (json, form) (default: json)
stringIf `null`, uses the default payload. If given a JSON payload, the webhook returns the payload specified by the given payload. [Webhooks variable usage](https:​//docs.datadoghq.com/integrations/webhooks/#usage).
stringURL of the webhook. (example: https:​//example.com/webhook)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
webhook_nameGets the content of the webhook with the name <WEBHOOK_NAME>.
name, urlCreates an endpoint with the name <WEBHOOK_NAME>.
webhook_nameUpdates the endpoint with the name <WEBHOOK_NAME>.
webhook_nameDeletes the endpoint with the name `<WEBHOOK NAME>`. This action cannot be undone.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe name of the webhook.
+ +## `SELECT` examples + + + + +Gets the content of the webhook with the name <WEBHOOK_NAME>. + +```sql +SELECT +name, +custom_headers, +encode_as, +payload, +url +FROM datadog.integrations.webhooks +WHERE webhook_name = '{{ webhook_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Creates an endpoint with the name <WEBHOOK_NAME>. + +```sql +INSERT INTO datadog.integrations.webhooks ( +custom_headers, +encode_as, +name, +payload, +url +) +SELECT +'{{ custom_headers }}', +'{{ encode_as }}', +'{{ name }}' /* required */, +'{{ payload }}', +'{{ url }}' /* required */ +RETURNING +name, +custom_headers, +encode_as, +payload, +url +; +``` + + + +{`# Description fields are for documentation purposes +- name: webhooks + props: + - name: custom_headers + value: "{{ custom_headers }}" + description: | + If \`null\`, uses no header. + If given a JSON payload, these will be headers attached to your webhook. + - name: encode_as + value: "{{ encode_as }}" + description: | + Encoding type. Can be given either \`json\` or \`form\`. + valid_values: ['json', 'form'] + default: json + - name: name + value: "{{ name }}" + description: | + The name of the webhook. It corresponds with \`\`. + Learn more on how to use it in + [monitor notifications](https://docs.datadoghq.com/monitors/notify). + - name: payload + value: "{{ payload }}" + description: | + If \`null\`, uses the default payload. + If given a JSON payload, the webhook returns the payload + specified by the given payload. + [Webhooks variable usage](https://docs.datadoghq.com/integrations/webhooks/#usage). + - name: url + value: "{{ url }}" + description: | + URL of the webhook. +`} + + + + + +## `REPLACE` examples + + + + +Updates the endpoint with the name <WEBHOOK_NAME>. + +```sql +REPLACE datadog.integrations.webhooks +SET +custom_headers = '{{ custom_headers }}', +encode_as = '{{ encode_as }}', +name = '{{ name }}', +payload = '{{ payload }}', +url = '{{ url }}' +WHERE +webhook_name = '{{ webhook_name }}' --required +RETURNING +name, +custom_headers, +encode_as, +payload, +url; +``` + + + + +## `DELETE` examples + + + + +Deletes the endpoint with the name `<WEBHOOK NAME>`. This action cannot be undone. + +```sql +DELETE FROM datadog.integrations.webhooks +WHERE webhook_name = '{{ webhook_name }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/annotated_interactions/index.md b/website/docs/services/llm_observability/annotated_interactions/index.md new file mode 100644 index 0000000..a99f3c1 --- /dev/null +++ b/website/docs/services/llm_observability/annotated_interactions/index.md @@ -0,0 +1,157 @@ +--- +title: annotated_interactions +hide_title: false +hide_table_of_contents: false +keywords: + - annotated_interactions + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotated_interactions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringOpaque identifier for the response object. (example: trace-query)
objectAttributes of the cross-queue annotated interactions response.
stringResource type for cross-queue annotated interactions lookup. (annotated_interactions_by_trace) (example: annotated_interactions_by_trace)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
content_idsoffset, limitReturns annotated interactions across all annotation queues for the given content IDs.<br />Results include queue metadata (ID and name) for each interaction.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayOne or more content IDs to retrieve annotated interactions for. At least one is required. (wire: contentIds)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int32)Maximum number of results to return. Must be > 0. Defaults to 100.
integer (int32)Pagination offset. Must be >= 0. Defaults to 0.
+ +## `SELECT` examples + + + + +Returns annotated interactions across all annotation queues for the given content IDs.<br />Results include queue metadata (ID and name) for each interaction. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.annotated_interactions +WHERE content_ids = '{{ content_ids }}' -- required +AND offset = '{{ offset }}' +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/llm_observability/annotation_queue_annotated_interactions/index.md b/website/docs/services/llm_observability/annotation_queue_annotated_interactions/index.md new file mode 100644 index 0000000..9c02c8d --- /dev/null +++ b/website/docs/services/llm_observability/annotation_queue_annotated_interactions/index.md @@ -0,0 +1,145 @@ +--- +title: annotation_queue_annotated_interactions +hide_title: false +hide_table_of_contents: false +keywords: + - annotation_queue_annotated_interactions + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotation_queue_annotated_interactions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe annotation queue ID. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes containing the list of annotated interactions.
stringResource type for annotated interactions. (annotated_interactions) (example: annotated_interactions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
queue_idRetrieve all interactions (traces and sessions) and their annotations for a given annotation queue.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability annotation queue. (example: 00000000-0000-0000-0000-000000000001)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve all interactions (traces and sessions) and their annotations for a given annotation queue. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.annotation_queue_annotated_interactions +WHERE queue_id = '{{ queue_id }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/annotation_queue_annotations/index.md b/website/docs/services/llm_observability/annotation_queue_annotations/index.md new file mode 100644 index 0000000..d2f4c91 --- /dev/null +++ b/website/docs/services/llm_observability/annotation_queue_annotations/index.md @@ -0,0 +1,169 @@ +--- +title: annotation_queue_annotations +hide_title: false +hide_table_of_contents: false +keywords: + - annotation_queue_annotations + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotation_queue_annotations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
queue_id, dataCreate or update annotations on interactions in a queue. Each annotation is matched<br />by `interaction_id` and the requesting user's identity.<br />Results and errors in the response are linked to request items by `interaction_id`.<br />Errors for individual items are returned in the `errors` field without blocking the rest of the batch.
queue_id, dataDelete one or more annotations from an annotation queue.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability annotation queue. (example: 00000000-0000-0000-0000-000000000001)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create or update annotations on interactions in a queue. Each annotation is matched<br />by `interaction_id` and the requesting user's identity.<br />Results and errors in the response are linked to request items by `interaction_id`.<br />Errors for individual items are returned in the `errors` field without blocking the rest of the batch. + +```sql +INSERT INTO datadog.llm_observability.annotation_queue_annotations ( +data, +queue_id +) +SELECT +'{{ data }}' /* required */, +'{{ queue_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: annotation_queue_annotations + props: + - name: queue_id + value: "{{ queue_id }}" + description: Required parameter for the annotation_queue_annotations resource. + - name: data + description: | + Data object for creating or updating annotations. + value: + attributes: + annotations: + - interaction_id: "{{ interaction_id }}" + label_values: "{{ label_values }}" + type: "{{ type }}" +`} + + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Delete one or more annotations from an annotation queue. + +```sql +EXEC datadog.llm_observability.annotation_queue_annotations.delete_llmobs_annotations +@queue_id='{{ queue_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/annotation_queue_interactions/index.md b/website/docs/services/llm_observability/annotation_queue_interactions/index.md new file mode 100644 index 0000000..0b9901e --- /dev/null +++ b/website/docs/services/llm_observability/annotation_queue_interactions/index.md @@ -0,0 +1,170 @@ +--- +title: annotation_queue_interactions +hide_title: false +hide_table_of_contents: false +keywords: + - annotation_queue_interactions + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotation_queue_interactions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
queue_id, dataAdd one or more interactions to an annotation queue. At least one<br />interaction must be provided. Each interaction has a `type`:<br /><br />- `trace`, `experiment_trace`, `session`: `content_id` references the<br /> upstream entity; the server fetches the actual content.<br />- `display_block`: omit `content_id` and provide the rendered content<br /> in `display_block`. The server generates `content_id` as a<br /> deterministic hash of the block list.<br /><br />Items of different types can be mixed in a single request.
queue_id, dataDelete one or more interactions from an annotation queue.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability annotation queue. (example: 00000000-0000-0000-0000-000000000001)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Add one or more interactions to an annotation queue. At least one<br />interaction must be provided. Each interaction has a `type`:<br /><br />- `trace`, `experiment_trace`, `session`: `content_id` references the<br /> upstream entity; the server fetches the actual content.<br />- `display_block`: omit `content_id` and provide the rendered content<br /> in `display_block`. The server generates `content_id` as a<br /> deterministic hash of the block list.<br /><br />Items of different types can be mixed in a single request. + +```sql +INSERT INTO datadog.llm_observability.annotation_queue_interactions ( +data, +queue_id +) +SELECT +'{{ data }}' /* required */, +'{{ queue_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: annotation_queue_interactions + props: + - name: queue_id + value: "{{ queue_id }}" + description: Required parameter for the annotation_queue_interactions resource. + - name: data + description: | + Data object for adding interactions to an annotation queue. + value: + attributes: + interactions: + - content_id: "{{ content_id }}" + type: "{{ type }}" + display_block: "{{ display_block }}" + type: "{{ type }}" +`} + + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Delete one or more interactions from an annotation queue. + +```sql +EXEC datadog.llm_observability.annotation_queue_interactions.delete_llmobs_annotation_queue_interactions +@queue_id='{{ queue_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/annotation_queue_label_schemas/index.md b/website/docs/services/llm_observability/annotation_queue_label_schemas/index.md new file mode 100644 index 0000000..9d9db61 --- /dev/null +++ b/website/docs/services/llm_observability/annotation_queue_label_schemas/index.md @@ -0,0 +1,178 @@ +--- +title: annotation_queue_label_schemas +hide_title: false +hide_table_of_contents: false +keywords: + - annotation_queue_label_schemas + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotation_queue_label_schemas resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the annotation queue. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of an annotation queue label schema.
stringResource type of an Agent Observability annotation queue. (queues) (example: queues)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
queue_idRetrieve the label schema for a given annotation queue.
queue_id, dataCreate or replace the label schema for a given annotation queue.<br />The label schema defines the labels annotators can apply to interactions in the queue.<br />Label names must be unique within the queue and match the pattern `^[a-zA-Z0-9_-]+$`.<br />Each label must have a valid type: score, categorical, boolean, or text.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability annotation queue. (example: 00000000-0000-0000-0000-000000000001)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the label schema for a given annotation queue. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.annotation_queue_label_schemas +WHERE queue_id = '{{ queue_id }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Create or replace the label schema for a given annotation queue.<br />The label schema defines the labels annotators can apply to interactions in the queue.<br />Label names must be unique within the queue and match the pattern `^[a-zA-Z0-9_-]+$`.<br />Each label must have a valid type: score, categorical, boolean, or text. + +```sql +REPLACE datadog.llm_observability.annotation_queue_label_schemas +SET +data = '{{ data }}' +WHERE +queue_id = '{{ queue_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/llm_observability/annotation_queues/index.md b/website/docs/services/llm_observability/annotation_queues/index.md new file mode 100644 index 0000000..4e9d1fb --- /dev/null +++ b/website/docs/services/llm_observability/annotation_queues/index.md @@ -0,0 +1,282 @@ +--- +title: annotation_queues +hide_title: false +hide_table_of_contents: false +keywords: + - annotation_queues + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an annotation_queues resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the annotation queue. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of an Agent Observability annotation queue.
stringResource type of an Agent Observability annotation queue. (queues) (example: queues)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, queue_idsList annotation queues. Optionally filter by project ID or queue IDs. These parameters are mutually exclusive.<br />If neither is provided, all queues in the organization are returned.
dataCreate an annotation queue. The `name` and `project_id` fields are required.<br />An optional `annotation_schema` can be provided to define the labels for the queue.<br />Fields such as `created_by`, `owned_by`, `created_at`, `modified_by`,<br />and `modified_at` are inferred by the backend.
queue_id, dataPartially update an annotation queue. The `name`, `description`, and `annotation_schema` fields can be updated.
queue_idDelete an annotation queue by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability annotation queue. (example: 00000000-0000-0000-0000-000000000001)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter annotation queues by project ID. Cannot be used together with `queueIds`. (wire: projectId)
arrayFilter annotation queues by queue IDs (comma-separated). Cannot be used together with `projectId`. (wire: queueIds)
+ +## `SELECT` examples + + + + +List annotation queues. Optionally filter by project ID or queue IDs. These parameters are mutually exclusive.<br />If neither is provided, all queues in the organization are returned. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.annotation_queues +WHERE project_id = '{{ project_id }}' +AND queue_ids = '{{ queue_ids }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an annotation queue. The `name` and `project_id` fields are required.<br />An optional `annotation_schema` can be provided to define the labels for the queue.<br />Fields such as `created_by`, `owned_by`, `created_at`, `modified_by`,<br />and `modified_at` are inferred by the backend. + +```sql +INSERT INTO datadog.llm_observability.annotation_queues ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: annotation_queues + props: + - name: data + description: | + Data object for creating an Agent Observability annotation queue. + value: + attributes: + annotation_schema: + label_schemas: + - description: "{{ description }}" + has_assessment: {{ has_assessment }} + has_reasoning: {{ has_reasoning }} + id: "{{ id }}" + is_assessment: {{ is_assessment }} + is_integer: {{ is_integer }} + is_required: {{ is_required }} + max: {{ max }} + min: {{ min }} + name: "{{ name }}" + type: "{{ type }}" + values: "{{ values }}" + description: "{{ description }}" + name: "{{ name }}" + project_id: "{{ project_id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update an annotation queue. The `name`, `description`, and `annotation_schema` fields can be updated. + +```sql +UPDATE datadog.llm_observability.annotation_queues +SET +data = '{{ data }}' +WHERE +queue_id = '{{ queue_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an annotation queue by its ID. + +```sql +DELETE FROM datadog.llm_observability.annotation_queues +WHERE queue_id = '{{ queue_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/dataset_draft_states/index.md b/website/docs/services/llm_observability/dataset_draft_states/index.md new file mode 100644 index 0000000..901be20 --- /dev/null +++ b/website/docs/services/llm_observability/dataset_draft_states/index.md @@ -0,0 +1,201 @@ +--- +title: dataset_draft_states +hide_title: false +hide_table_of_contents: false +keywords: + - dataset_draft_states + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dataset_draft_states resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the dataset draft state. Matches the dataset ID. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
objectAttributes of an Agent Observability dataset draft state.
stringResource type of an Agent Observability dataset draft state. (draft_state_data) (example: draft_state_data)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, dataset_idRetrieve the draft state of a dataset, including whether it is currently locked for editing and which user holds the lock.
project_id, dataset_idAcquire the draft lock on a dataset for the calling user. The lock prevents other users from concurrently editing the dataset draft.
project_id, dataset_idRelease the draft lock on a dataset held by the calling user, allowing other users to edit the dataset draft.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability dataset. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
stringThe ID of the Agent Observability project. (example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the draft state of a dataset, including whether it is currently locked for editing and which user holds the lock. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.dataset_draft_states +WHERE project_id = '{{ project_id }}' -- required +AND dataset_id = '{{ dataset_id }}' -- required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Acquire the draft lock on a dataset for the calling user. The lock prevents other users from concurrently editing the dataset draft. + +```sql +EXEC datadog.llm_observability.dataset_draft_states.lock_llmobs_dataset_draft_state +@project_id='{{ project_id }}' --required, +@dataset_id='{{ dataset_id }}' --required +; +``` + + + +Release the draft lock on a dataset held by the calling user, allowing other users to edit the dataset draft. + +```sql +EXEC datadog.llm_observability.dataset_draft_states.unlock_llmobs_dataset_draft_state +@project_id='{{ project_id }}' --required, +@dataset_id='{{ dataset_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/dataset_records/index.md b/website/docs/services/llm_observability/dataset_records/index.md new file mode 100644 index 0000000..4fd89cc --- /dev/null +++ b/website/docs/services/llm_observability/dataset_records/index.md @@ -0,0 +1,325 @@ +--- +title: dataset_records +hide_title: false +hide_table_of_contents: false +keywords: + - dataset_records + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dataset_records resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the record. (example: rec-7c3f5a1b-9e2d-4f8a-b1c6-3d7e9f0a2b4c)
stringIdentifier of the dataset this record belongs to. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
string (date-time)Timestamp when the record was created. (example: 2024-01-15T10:30:00Z)
object (double)Represents any valid JSON value.
object (double)Represents any valid JSON value.
objectArbitrary metadata associated with the record.
string (date-time)Timestamp when the record was last updated. (example: 2024-01-15T10:30:00Z)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, dataset_idfilter[version], page[cursor], page[limit]List all records in an Agent Observability dataset, sorted by creation date, newest first.
project_id, dataset_id, dataAppend one or more records to an Agent Observability dataset.
project_id, dataset_id, dataUpdate one or more existing records in an Agent Observability dataset.
project_id, dataset_id, dataDelete one or more records from an Agent Observability dataset.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability dataset. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
stringThe ID of the Agent Observability project. (example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Retrieve records from a specific dataset version. Defaults to the current version.
stringUse the Pagination cursor to retrieve the next page of results.
integer (int64)Maximum number of results to return per page.
+ +## `SELECT` examples + + + + +List all records in an Agent Observability dataset, sorted by creation date, newest first. + +```sql +SELECT +id, +dataset_id, +created_at, +expected_output, +input, +metadata, +updated_at +FROM datadog.llm_observability.dataset_records +WHERE project_id = '{{ project_id }}' -- required +AND dataset_id = '{{ dataset_id }}' -- required +AND filter[version] = '{{ filter[version] }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Append one or more records to an Agent Observability dataset. + +```sql +INSERT INTO datadog.llm_observability.dataset_records ( +data, +project_id, +dataset_id +) +SELECT +'{{ data }}' /* required */, +'{{ project_id }}', +'{{ dataset_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: dataset_records + props: + - name: project_id + value: "{{ project_id }}" + description: Required parameter for the dataset_records resource. + - name: dataset_id + value: "{{ dataset_id }}" + description: Required parameter for the dataset_records resource. + - name: data + description: | + Data object for appending records to an Agent Observability dataset. + value: + attributes: + deduplicate: {{ deduplicate }} + records: + - expected_output: "{{ expected_output }}" + input: "{{ input }}" + metadata: "{{ metadata }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update one or more existing records in an Agent Observability dataset. + +```sql +UPDATE datadog.llm_observability.dataset_records +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +AND dataset_id = '{{ dataset_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Delete one or more records from an Agent Observability dataset. + +```sql +EXEC datadog.llm_observability.dataset_records.delete_llmobs_dataset_records +@project_id='{{ project_id }}' --required, +@dataset_id='{{ dataset_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/dataset_versions/index.md b/website/docs/services/llm_observability/dataset_versions/index.md new file mode 100644 index 0000000..7480a0e --- /dev/null +++ b/website/docs/services/llm_observability/dataset_versions/index.md @@ -0,0 +1,151 @@ +--- +title: dataset_versions +hide_title: false +hide_table_of_contents: false +keywords: + - dataset_versions + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a dataset_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the dataset version. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
objectAttributes of an Agent Observability dataset version.
stringResource type of an Agent Observability dataset version. (dataset_version) (example: dataset_version)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, dataset_idList the active versions of a dataset. A version is created each time a dataset is referenced by an experiment run.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability dataset. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
stringThe ID of the Agent Observability project. (example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List the active versions of a dataset. A version is created each time a dataset is referenced by an experiment run. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.dataset_versions +WHERE project_id = '{{ project_id }}' -- required +AND dataset_id = '{{ dataset_id }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/datasets/index.md b/website/docs/services/llm_observability/datasets/index.md new file mode 100644 index 0000000..0a32240 --- /dev/null +++ b/website/docs/services/llm_observability/datasets/index.md @@ -0,0 +1,367 @@ +--- +title: datasets +hide_title: false +hide_table_of_contents: false +keywords: + - datasets + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a datasets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the dataset. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
objectAttributes of an Agent Observability dataset.
stringResource type of an Agent Observability dataset. (datasets) (example: datasets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_idfilter[name], filter[id], page[cursor], page[limit]List all Agent Observability datasets for a project, sorted by creation date, newest first.
project_id, dataCreate a new Agent Observability dataset within the specified project.
project_id, dataset_id, dataPartially update an existing Agent Observability dataset within the specified project.
project_id, dataDelete one or more Agent Observability datasets within the specified project.
project_id, dataset_id, dataInsert, update, and delete records in a single dataset operation. By default, a new dataset version is created when the batch is applied.
project_id, dataset_id, dataClone a dataset, copying its current records into a new dataset within the same project.
project_id, dataset_id, dataRestore a dataset to a previous version. The dataset's current version is bumped, and its records are replaced with the records from the specified prior version.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability dataset. (example: 9f64e5c7-dc5a-45c8-a17c-1b85f0bec97d)
stringThe ID of the Agent Observability project. (example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter datasets by dataset ID.
stringFilter datasets by name.
stringUse the Pagination cursor to retrieve the next page of results.
integer (int64)Maximum number of results to return per page.
+ +## `SELECT` examples + + + + +List all Agent Observability datasets for a project, sorted by creation date, newest first. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.datasets +WHERE project_id = '{{ project_id }}' -- required +AND filter[name] = '{{ filter[name] }}' +AND filter[id] = '{{ filter[id] }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new Agent Observability dataset within the specified project. + +```sql +INSERT INTO datadog.llm_observability.datasets ( +data, +project_id +) +SELECT +'{{ data }}' /* required */, +'{{ project_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: datasets + props: + - name: project_id + value: "{{ project_id }}" + description: Required parameter for the datasets resource. + - name: data + description: | + Data object for creating an Agent Observability dataset. + value: + attributes: + description: "{{ description }}" + metadata: "{{ metadata }}" + name: "{{ name }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update an existing Agent Observability dataset within the specified project. + +```sql +UPDATE datadog.llm_observability.datasets +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +AND dataset_id = '{{ dataset_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Delete one or more Agent Observability datasets within the specified project. + +```sql +EXEC datadog.llm_observability.datasets.delete_llmobs_datasets +@project_id='{{ project_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Insert, update, and delete records in a single dataset operation. By default, a new dataset version is created when the batch is applied. + +```sql +EXEC datadog.llm_observability.datasets.batch_update_llmobs_dataset +@project_id='{{ project_id }}' --required, +@dataset_id='{{ dataset_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Clone a dataset, copying its current records into a new dataset within the same project. + +```sql +EXEC datadog.llm_observability.datasets.clone_llmobs_dataset +@project_id='{{ project_id }}' --required, +@dataset_id='{{ dataset_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Restore a dataset to a previous version. The dataset's current version is bumped, and its records are replaced with the records from the specified prior version. + +```sql +EXEC datadog.llm_observability.datasets.restore_llmobs_dataset_version +@project_id='{{ project_id }}' --required, +@dataset_id='{{ dataset_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/evaluator_customs/index.md b/website/docs/services/llm_observability/evaluator_customs/index.md new file mode 100644 index 0000000..8ef3aa5 --- /dev/null +++ b/website/docs/services/llm_observability/evaluator_customs/index.md @@ -0,0 +1,255 @@ +--- +title: evaluator_customs +hide_title: false +hide_table_of_contents: false +keywords: + - evaluator_customs + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an evaluator_customs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique name identifier of the evaluator configuration. (example: my-custom-evaluator)
objectAttributes of a custom Agent Observability evaluator configuration.
stringType of the custom Agent Observability evaluator configuration resource. (evaluator_config) (example: evaluator_config)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique name identifier of the evaluator configuration. (example: my-custom-evaluator)
objectAttributes of a custom Agent Observability evaluator configuration.
stringType of the custom Agent Observability evaluator configuration resource. (evaluator_config) (example: evaluator_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
eval_nameRetrieve a custom Agent Observability evaluator configuration by its name.
List all custom Agent Observability evaluator configurations for the organization.
eval_name, dataCreate or update a custom Agent Observability evaluator configuration by its name.
eval_nameDelete a custom Agent Observability evaluator configuration by its name.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the custom Agent Observability evaluator configuration. (example: my-custom-evaluator)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve a custom Agent Observability evaluator configuration by its name. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.evaluator_customs +WHERE eval_name = '{{ eval_name }}' -- required +; +``` + + + +List all custom Agent Observability evaluator configurations for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.evaluator_customs +; +``` + + + + +## `REPLACE` examples + + + + +Create or update a custom Agent Observability evaluator configuration by its name. + +```sql +REPLACE datadog.llm_observability.evaluator_customs +SET +data = '{{ data }}' +WHERE +eval_name = '{{ eval_name }}' --required +AND data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete a custom Agent Observability evaluator configuration by its name. + +```sql +DELETE FROM datadog.llm_observability.evaluator_customs +WHERE eval_name = '{{ eval_name }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/experiment_events/index.md b/website/docs/services/llm_observability/experiment_events/index.md new file mode 100644 index 0000000..bb141a1 --- /dev/null +++ b/website/docs/services/llm_observability/experiment_events/index.md @@ -0,0 +1,163 @@ +--- +title: experiment_events +hide_title: false +hide_table_of_contents: false +keywords: + - experiment_events + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an experiment_events resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
experiment_id, dataPush spans and metrics for an Agent Observability experiment.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability experiment. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Push spans and metrics for an Agent Observability experiment. + +```sql +INSERT INTO datadog.llm_observability.experiment_events ( +data, +experiment_id +) +SELECT +'{{ data }}' /* required */, +'{{ experiment_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: experiment_events + props: + - name: experiment_id + value: "{{ experiment_id }}" + description: Required parameter for the experiment_events resource. + - name: data + description: | + Data object for pushing experiment events. + value: + attributes: + metrics: + - assessment: "{{ assessment }}" + boolean_value: {{ boolean_value }} + categorical_value: "{{ categorical_value }}" + error: + message: "{{ message }}" + json_value: "{{ json_value }}" + label: "{{ label }}" + metadata: "{{ metadata }}" + metric_type: "{{ metric_type }}" + reasoning: "{{ reasoning }}" + score_value: {{ score_value }} + span_id: "{{ span_id }}" + tags: "{{ tags }}" + timestamp_ms: {{ timestamp_ms }} + spans: + - dataset_id: "{{ dataset_id }}" + duration: {{ duration }} + meta: + error: + message: "{{ message }}" + stack: "{{ stack }}" + type: "{{ type }}" + expected_output: "{{ expected_output }}" + input: "{{ input }}" + output: "{{ output }}" + name: "{{ name }}" + project_id: "{{ project_id }}" + span_id: "{{ span_id }}" + start_ns: {{ start_ns }} + status: "{{ status }}" + tags: "{{ tags }}" + trace_id: "{{ trace_id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/llm_observability/experiment_events_v3/index.md b/website/docs/services/llm_observability/experiment_events_v3/index.md new file mode 100644 index 0000000..0ce01a3 --- /dev/null +++ b/website/docs/services/llm_observability/experiment_events_v3/index.md @@ -0,0 +1,157 @@ +--- +title: experiment_events_v3 +hide_title: false +hide_table_of_contents: false +keywords: + - experiment_events_v3 + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an experiment_events_v3 resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIdentifier for this events resource. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
objectAttributes of an experiment events response.
stringResource type for an experiment events collection. (experiment_events) (example: experiment_events)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
experiment_idpage[limit], page[cursor]Retrieve spans and experiment-level summary metrics for a given experiment with cursor-based pagination.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability experiment. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOpaque cursor from a previous response to fetch the next page of results.
integer (int64)Maximum number of spans to return per page. Defaults to 5000.
+ +## `SELECT` examples + + + + +Retrieve spans and experiment-level summary metrics for a given experiment with cursor-based pagination. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.experiment_events_v3 +WHERE experiment_id = '{{ experiment_id }}' -- required +AND page[limit] = '{{ page[limit] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` + + diff --git a/website/docs/services/llm_observability/experiments/index.md b/website/docs/services/llm_observability/experiments/index.md new file mode 100644 index 0000000..3149629 --- /dev/null +++ b/website/docs/services/llm_observability/experiments/index.md @@ -0,0 +1,403 @@ +--- +title: experiments +hide_title: false +hide_table_of_contents: false +keywords: + - experiments + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an experiments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the experiment. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
objectAttributes of an Agent Observability experiment.
stringResource type of an Agent Observability experiment. (experiments) (example: experiments)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[project_id], filter[dataset_id], filter[id], filter[name], filter[experiment], filter[metadata], filter[parent_experiment_id], filter[is_deleted], include[user_data], include[dataset_names], page[cursor], page[limit]List all Agent Observability experiments sorted by creation date, newest first.
dataCreate a new Agent Observability experiment.
experiment_id, dataPartially update an existing Agent Observability experiment.
dataExecute an analytics aggregation over Agent Observability experimentation data.<br />Use this endpoint to compute metrics (for example average eval scores) grouped by fields such as `span_id` or `experiment_id`.<br /><br />At least one `compute` definition and one `index` must be provided.
dataSearch across Agent Observability experimentation entities — projects, datasets, dataset records, experiments, and experiment runs — using cursor-based pagination.<br /><br />The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided.<br /><br />Returns `200 OK` when all results fit in a single page. Returns `206 Partial Content` with a cursor in `meta.after` when additional pages are available.
dataSearch across Agent Observability experimentation entities using offset-based (page-number) pagination.<br />Use this endpoint when you need total page count or want to navigate to a specific page number.<br /><br />The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided.
dataDelete one or more Agent Observability experiments.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability experiment. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter experiments by dataset ID.
stringFilter by logical experiment name. This is the `name` field set when creating an experiment through `POST /experiments`. Returns all experiment runs that share the same name, enabling cross-commit and cross-branch comparisons.
stringFilter experiments by experiment ID. Can be specified multiple times.
booleanWhen `true`, return only soft-deleted experiments. Defaults to `false`.
stringFilter by JSONB metadata containment. Provide a JSON object string where experiments whose metadata contains all specified key-value pairs are returned. For example: `{"commit":"abc123","branch":"main"}`.
stringFilter experiments by their exact run name.
stringFilter experiments by the ID of their parent (baseline) experiment. Returns all experiments that were run against the given baseline. Can be specified multiple times.
stringFilter experiments by project ID. Required if `filter[dataset_id]` is not provided.
booleanWhen `true`, enrich each experiment with its dataset name in the `dataset_name` field.
booleanWhen `true`, enrich each experiment with its author's user data in the `author` field.
stringUse the pagination cursor returned in `meta.after` to retrieve the next page of results.
integer (int64)Maximum number of results to return per page. Values above 5000 are clamped to 5000. Defaults to 5000.
+ +## `SELECT` examples + + + + +List all Agent Observability experiments sorted by creation date, newest first. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.experiments +WHERE filter[project_id] = '{{ filter[project_id] }}' +AND filter[dataset_id] = '{{ filter[dataset_id] }}' +AND filter[id] = '{{ filter[id] }}' +AND filter[name] = '{{ filter[name] }}' +AND filter[experiment] = '{{ filter[experiment] }}' +AND filter[metadata] = '{{ filter[metadata] }}' +AND filter[parent_experiment_id] = '{{ filter[parent_experiment_id] }}' +AND filter[is_deleted] = '{{ filter[is_deleted] }}' +AND include[user_data] = '{{ include[user_data] }}' +AND include[dataset_names] = '{{ include[dataset_names] }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new Agent Observability experiment. + +```sql +INSERT INTO datadog.llm_observability.experiments ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: experiments + props: + - name: data + description: | + Data object for creating an Agent Observability experiment. + value: + attributes: + config: "{{ config }}" + dataset_id: "{{ dataset_id }}" + dataset_version: {{ dataset_version }} + description: "{{ description }}" + ensure_unique: {{ ensure_unique }} + metadata: "{{ metadata }}" + name: "{{ name }}" + parent_experiment_id: "{{ parent_experiment_id }}" + project_id: "{{ project_id }}" + run_count: {{ run_count }} + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update an existing Agent Observability experiment. + +```sql +UPDATE datadog.llm_observability.experiments +SET +data = '{{ data }}' +WHERE +experiment_id = '{{ experiment_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Execute an analytics aggregation over Agent Observability experimentation data.<br />Use this endpoint to compute metrics (for example average eval scores) grouped by fields such as `span_id` or `experiment_id`.<br /><br />At least one `compute` definition and one `index` must be provided. + +```sql +EXEC datadog.llm_observability.experiments.aggregate_llmobs_experimentation +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Search across Agent Observability experimentation entities — projects, datasets, dataset records, experiments, and experiment runs — using cursor-based pagination.<br /><br />The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided.<br /><br />Returns `200 OK` when all results fit in a single page. Returns `206 Partial Content` with a cursor in `meta.after` when additional pages are available. + +```sql +EXEC datadog.llm_observability.experiments.search_llmobs_experimentation +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Search across Agent Observability experimentation entities using offset-based (page-number) pagination.<br />Use this endpoint when you need total page count or want to navigate to a specific page number.<br /><br />The `filter.scope` field controls which entity types are returned. At least one valid scope must be provided. + +```sql +EXEC datadog.llm_observability.experiments.simple_search_llmobs_experimentation +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Delete one or more Agent Observability experiments. + +```sql +EXEC datadog.llm_observability.experiments.delete_llmobs_experiments +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/index.md b/website/docs/services/llm_observability/index.md new file mode 100644 index 0000000..1b0bf40 --- /dev/null +++ b/website/docs/services/llm_observability/index.md @@ -0,0 +1,68 @@ +--- +title: llm_observability +hide_title: false +hide_table_of_contents: false +keywords: + - llm_observability + - datadog + - stackql + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +llm_observability service documentation. + +:::info[Service Summary] + +total resources: __37__ + +::: + +## Resources + \ No newline at end of file diff --git a/website/docs/services/llm_observability/integration_accounts/index.md b/website/docs/services/llm_observability/integration_accounts/index.md new file mode 100644 index 0000000..2673153 --- /dev/null +++ b/website/docs/services/llm_observability/integration_accounts/index.md @@ -0,0 +1,169 @@ +--- +title: integration_accounts +hide_title: false +hide_table_of_contents: false +keywords: + - integration_accounts + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an integration_accounts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the integration account. (example: account-abc123)
stringProvider-specific account identifier. (example: org-XYZ123)
stringHuman-readable name for the integration account. (example: Production OpenAI)
stringProvider region associated with the account, if applicable. (example: us-east-1)
objectAzure OpenAI-specific metadata for an integration account or inference request.
stringThe name of the LLM provider integration. (example: openai)
objectVertex AI-specific metadata for an integration account or inference request.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integrationRetrieve the list of configured accounts for the specified LLM provider integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the LLM integration.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the list of configured accounts for the specified LLM provider integration. + +```sql +SELECT +id, +account_id, +account_name, +account_region, +azure_openai_metadata, +integration, +vertex_ai_metadata +FROM datadog.llm_observability.integration_accounts +WHERE integration = '{{ integration }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/integration_inferences/index.md b/website/docs/services/llm_observability/integration_inferences/index.md new file mode 100644 index 0000000..3c7c57b --- /dev/null +++ b/website/docs/services/llm_observability/integration_inferences/index.md @@ -0,0 +1,272 @@ +--- +title: integration_inferences +hide_title: false +hide_table_of_contents: false +keywords: + - integration_inferences + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an integration_inferences resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration, account_id, model_id, messagesRun an LLM inference request through the specified integration and account, returning the model response and token usage.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the integration account. (example: account-abc123)
stringThe name of the LLM integration.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Run an LLM inference request through the specified integration and account, returning the model response and token usage. + +```sql +INSERT INTO datadog.llm_observability.integration_inferences ( +anthropic_metadata, +azure_openai_metadata, +bedrock_metadata, +frequency_penalty, +json_schema, +max_completion_tokens, +max_tokens, +messages, +model_id, +openai_metadata, +presence_penalty, +temperature, +tools, +top_k, +top_p, +vertex_ai_metadata, +integration, +account_id +) +SELECT +'{{ anthropic_metadata }}', +'{{ azure_openai_metadata }}', +'{{ bedrock_metadata }}', +{{ frequency_penalty }}, +'{{ json_schema }}', +{{ max_completion_tokens }}, +{{ max_tokens }}, +'{{ messages }}' /* required */, +'{{ model_id }}' /* required */, +'{{ openai_metadata }}', +{{ presence_penalty }}, +{{ temperature }}, +'{{ tools }}', +{{ top_k }}, +{{ top_p }}, +'{{ vertex_ai_metadata }}', +'{{ integration }}', +'{{ account_id }}' +RETURNING +model_id, +anthropic_metadata, +azure_openai_metadata, +bedrock_metadata, +error_response, +frequency_penalty, +json_schema, +max_completion_tokens, +max_tokens, +messages, +openai_metadata, +presence_penalty, +response, +temperature, +tools, +top_k, +top_p, +vertex_ai_metadata +; +``` + + + +{`# Description fields are for documentation purposes +- name: integration_inferences + props: + - name: integration + value: "{{ integration }}" + description: Required parameter for the integration_inferences resource. + - name: account_id + value: "{{ account_id }}" + description: Required parameter for the integration_inferences resource. + - name: anthropic_metadata + description: | + Anthropic-specific metadata for an inference request. + value: + effort: "{{ effort }}" + thinking: + budget_tokens: {{ budget_tokens }} + type: "{{ type }}" + - name: azure_openai_metadata + description: | + Azure OpenAI-specific metadata for an integration account or inference request. + value: + deployment_id: "{{ deployment_id }}" + model_version: "{{ model_version }}" + resource_name: "{{ resource_name }}" + - name: bedrock_metadata + description: | + Amazon Bedrock-specific metadata for an inference request. + value: + region: "{{ region }}" + - name: frequency_penalty + value: {{ frequency_penalty }} + description: | + Penalty for token frequency to reduce repetition. + - name: json_schema + value: "{{ json_schema }}" + description: | + JSON schema for structured output, if supported by the model. + - name: max_completion_tokens + value: {{ max_completion_tokens }} + description: | + Maximum number of completion tokens to generate (alternative to max_tokens for some providers). + - name: max_tokens + value: {{ max_tokens }} + description: | + Maximum number of tokens to generate. + - name: messages + description: | + List of messages in an inference conversation. + value: + - content: "{{ content }}" + contents: "{{ contents }}" + id: "{{ id }}" + role: "{{ role }}" + tool_calls: "{{ tool_calls }}" + tool_results: "{{ tool_results }}" + - name: model_id + value: "{{ model_id }}" + description: | + The model identifier to use for inference. + - name: openai_metadata + description: | + OpenAI-specific metadata for an inference request. + value: + reasoning_effort: "{{ reasoning_effort }}" + reasoning_summary: "{{ reasoning_summary }}" + - name: presence_penalty + value: {{ presence_penalty }} + description: | + Penalty for token presence to encourage topic diversity. + - name: temperature + value: {{ temperature }} + description: | + Sampling temperature between 0 and 2. Higher values produce more random output. + - name: tools + description: | + List of tools available to the model. + value: + - function: + description: "{{ description }}" + name: "{{ name }}" + parameters: "{{ parameters }}" + type: "{{ type }}" + - name: top_k + value: {{ top_k }} + description: | + Top-K sampling parameter. + - name: top_p + value: {{ top_p }} + description: | + Nucleus sampling probability mass. + - name: vertex_ai_metadata + description: | + Vertex AI-specific metadata for an integration account or inference request. + value: + location: "{{ location }}" + project: "{{ project }}" + project_ids: + - "{{ project_ids }}" +`} + + + diff --git a/website/docs/services/llm_observability/integration_models/index.md b/website/docs/services/llm_observability/integration_models/index.md new file mode 100644 index 0000000..555d065 --- /dev/null +++ b/website/docs/services/llm_observability/integration_models/index.md @@ -0,0 +1,193 @@ +--- +title: integration_models +hide_title: false +hide_table_of_contents: false +keywords: + - integration_models + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an integration_models resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the model entry. (example: gpt-4o)
stringProvider-specific model identifier used in inference calls. (example: gpt-4o)
stringHuman-readable name of the LLM provider integration. (example: OpenAI)
stringHuman-readable model name. (example: GPT-4o)
stringHuman-readable name of the underlying model provider. (example: OpenAI)
booleanWhether the account has access to this model.
stringThe name of the LLM provider integration. (example: openai)
booleanWhether the model supports structured output via JSON schema.
stringThe underlying model provider. (example: openai)
objectMap of region-specific model ID prefix overrides.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration, account_idRetrieve the list of models available for the specified LLM provider integration and account.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the integration account. (example: account-abc123)
stringThe name of the LLM integration.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the list of models available for the specified LLM provider integration and account. + +```sql +SELECT +id, +model_id, +integration_display_name, +model_display_name, +provider_display_name, +has_access, +integration, +json_schema, +provider, +region_prefix_overrides +FROM datadog.llm_observability.integration_models +WHERE integration = '{{ integration }}' -- required +AND account_id = '{{ account_id }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_facet_keys/index.md b/website/docs/services/llm_observability/model_lab_facet_keys/index.md new file mode 100644 index 0000000..9e3dca0 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_facet_keys/index.md @@ -0,0 +1,145 @@ +--- +title: model_lab_facet_keys +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_facet_keys + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_facet_keys resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the facet keys resource. (example: 1)
objectAvailable facet key names for filtering resources.
stringThe JSON:API type for a facet keys resource. (facet_keys) (example: facet_keys)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[project_id]List all available facet keys for filtering Model Lab runs.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Filter by project ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all available facet keys for filtering Model Lab runs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_facet_keys +WHERE filter[project_id] = '{{ filter[project_id] }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_facet_values/index.md b/website/docs/services/llm_observability/model_lab_facet_values/index.md new file mode 100644 index 0000000..5b2d65b --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_facet_values/index.md @@ -0,0 +1,157 @@ +--- +title: model_lab_facet_values +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_facet_values + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_facet_values resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the facet values resource. (example: 1)
objectAvailable values for a specific facet key.
stringThe JSON:API type for a facet values resource. (facet_values) (example: facet_values)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[project_id], facet_type, facet_nameList available facet values for a specific run facet key.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringFacet name.
stringFacet type. Valid values: parameter, attribute, tag, metric.
integer (int64)Filter by project ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List available facet values for a specific run facet key. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_facet_values +WHERE filter[project_id] = '{{ filter[project_id] }}' -- required +AND facet_type = '{{ facet_type }}' -- required +AND facet_name = '{{ facet_name }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_project_artifacts/index.md b/website/docs/services/llm_observability/model_lab_project_artifacts/index.md new file mode 100644 index 0000000..023f863 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_project_artifacts/index.md @@ -0,0 +1,145 @@ +--- +title: model_lab_project_artifacts +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_project_artifacts + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_project_artifacts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the project artifacts resource. (example: 1)
objectArtifact listing for a Model Lab project.
stringThe JSON:API type for a project artifacts resource. (project_files) (example: project_files)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_idList all artifact files for a specific Model Lab project.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the Model Lab project.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all artifact files for a specific Model Lab project. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_project_artifacts +WHERE project_id = '{{ project_id }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_project_facet_keys/index.md b/website/docs/services/llm_observability/model_lab_project_facet_keys/index.md new file mode 100644 index 0000000..5c09091 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_project_facet_keys/index.md @@ -0,0 +1,139 @@ +--- +title: model_lab_project_facet_keys +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_project_facet_keys + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_project_facet_keys resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the facet keys resource. (example: 1)
objectAvailable facet key names for filtering resources.
stringThe JSON:API type for a facet keys resource. (facet_keys) (example: facet_keys)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all available facet keys for filtering Model Lab projects.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all available facet keys for filtering Model Lab projects. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_project_facet_keys +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_project_facet_values/index.md b/website/docs/services/llm_observability/model_lab_project_facet_values/index.md new file mode 100644 index 0000000..53416c7 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_project_facet_values/index.md @@ -0,0 +1,151 @@ +--- +title: model_lab_project_facet_values +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_project_facet_values + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_project_facet_values resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the facet values resource. (example: 1)
objectAvailable values for a specific facet key.
stringThe JSON:API type for a facet values resource. (facet_values) (example: facet_values)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
facet_type, facet_nameList available facet values for a specific project facet key.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringFacet name.
stringFacet type. Valid values: tag.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List available facet values for a specific project facet key. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_project_facet_values +WHERE facet_type = '{{ facet_type }}' -- required +AND facet_name = '{{ facet_name }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_projects/index.md b/website/docs/services/llm_observability/model_lab_projects/index.md new file mode 100644 index 0000000..72ad2a3 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_projects/index.md @@ -0,0 +1,290 @@ +--- +title: model_lab_projects +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_projects + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_projects resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the project. (example: 2)
objectAttributes of a Model Lab project.
stringThe JSON:API type for a Model Lab project resource. (projects) (example: projects)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the project. (example: 2)
objectAttributes of a Model Lab project.
stringThe JSON:API type for a Model Lab project resource. (projects) (example: projects)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_idGet a single Model Lab project by its ID.
filter, filter[owner_id], filter[tags], sort, page[size], page[number]List all Model Lab projects for the current organization.
project_idRemove the star from a Model Lab project for the current user.
project_idStar a Model Lab project for the current user.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the Model Lab project.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringText search filter for project name or description.
string (uuid)Filter by owner UUID.
stringFilter by tags. Format: key:value,key2:value2.
integer (int64)Page number (1-indexed).
integer (int64)Number of items per page. Maximum is 100.
stringSort field. Valid values: name, created_at, updated_at. Prefix with '-' for descending order (e.g., -updated_at).
+ +## `SELECT` examples + + + + +Get a single Model Lab project by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_projects +WHERE project_id = '{{ project_id }}' -- required +; +``` + + + +List all Model Lab projects for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_projects +WHERE filter = '{{ filter }}' +AND filter[owner_id] = '{{ filter[owner_id] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND sort = '{{ sort }}' +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `DELETE` examples + + + + +Remove the star from a Model Lab project for the current user. + +```sql +DELETE FROM datadog.llm_observability.model_lab_projects +WHERE project_id = '{{ project_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Star a Model Lab project for the current user. + +```sql +EXEC datadog.llm_observability.model_lab_projects.star_model_lab_project +@project_id='{{ project_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_run_artifacts/index.md b/website/docs/services/llm_observability/model_lab_run_artifacts/index.md new file mode 100644 index 0000000..694e4e1 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_run_artifacts/index.md @@ -0,0 +1,151 @@ +--- +title: model_lab_run_artifacts +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_run_artifacts + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_run_artifacts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the artifacts resource. (example: 42)
objectArtifact listing for a Model Lab run.
stringThe JSON:API type for a run artifacts resource. (artifacts) (example: artifacts)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
run_idpathList artifact files for a specific Model Lab run.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the Model Lab run.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOptional subdirectory path within the run's artifacts.
+ +## `SELECT` examples + + + + +List artifact files for a specific Model Lab run. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_run_artifacts +WHERE run_id = '{{ run_id }}' -- required +AND path = '{{ path }}' +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_run_pins/index.md b/website/docs/services/llm_observability/model_lab_run_pins/index.md new file mode 100644 index 0000000..3d6b1cb --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_run_pins/index.md @@ -0,0 +1,150 @@ +--- +title: model_lab_run_pins +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_run_pins + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_run_pins resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
run_idPin a Model Lab run for the current user.
run_idRemove the pin from a Model Lab run for the current user.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the Model Lab run.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Pin a Model Lab run for the current user. + +```sql +INSERT INTO datadog.llm_observability.model_lab_run_pins ( +run_id +) +SELECT +'{{ run_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: model_lab_run_pins + props: + - name: run_id + value: "{{ run_id }}" + description: Required parameter for the model_lab_run_pins resource. +`} + + + + + +## `DELETE` examples + + + + +Remove the pin from a Model Lab run for the current user. + +```sql +DELETE FROM datadog.llm_observability.model_lab_run_pins +WHERE run_id = '{{ run_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/model_lab_runs/index.md b/website/docs/services/llm_observability/model_lab_runs/index.md new file mode 100644 index 0000000..ef30bb6 --- /dev/null +++ b/website/docs/services/llm_observability/model_lab_runs/index.md @@ -0,0 +1,308 @@ +--- +title: model_lab_runs +hide_title: false +hide_table_of_contents: false +keywords: + - model_lab_runs + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a model_lab_runs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the run. (example: 42)
objectAttributes of a Model Lab run.
stringThe JSON:API type for a Model Lab run resource. (runs) (example: runs)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the run. (example: 42)
objectAttributes of a Model Lab run.
stringThe JSON:API type for a Model Lab run resource. (runs) (example: runs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
run_idGet a single Model Lab run by its ID.
filter[id], filter, filter[owner_id], filter[status], filter[project_id], filter[tags], filter[params], filter[parent_run_id], pinned_first, include_pinned, include_descendant_matches, sort, page[size], page[number]List all Model Lab runs for the current organization.
run_idDelete a Model Lab run by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the Model Lab run.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringText search filter for run name or description.
stringFilter by run ID(s). Comma-separated list for multiple IDs.
stringFilter by owner UUID.
stringFilter by params. Format: key:value,key2:>0.5,key3:true.
stringFilter by parent run ID. Use 'null' to return only root runs (runs with no parent).
integer (int64)Filter by project ID.
stringFilter by run status. Valid values: pending, running, completed, failed, killed, unresponsive, paused.
stringFilter by tags. Format: key:value,key2:value2.
booleanWhen true, also return runs whose descendants match the active filters. The descendant_match field in each result indicates whether the run was included via a descendant match.
booleanInclude all runs pinned by the current user, regardless of other filters.
integer (int64)Page number (1-indexed).
integer (int64)Number of items per page. Maximum is 100.
booleanSort pinned runs before non-pinned runs. Pinned runs are ordered by pin time descending.
stringSort field. Valid values: name, created_at, updated_at, duration. Prefix with '-' for descending order (e.g., -updated_at).
+ +## `SELECT` examples + + + + +Get a single Model Lab run by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_runs +WHERE run_id = '{{ run_id }}' -- required +; +``` + + + +List all Model Lab runs for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.model_lab_runs +WHERE filter[id] = '{{ filter[id] }}' +AND filter = '{{ filter }}' +AND filter[owner_id] = '{{ filter[owner_id] }}' +AND filter[status] = '{{ filter[status] }}' +AND filter[project_id] = '{{ filter[project_id] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND filter[params] = '{{ filter[params] }}' +AND filter[parent_run_id] = '{{ filter[parent_run_id] }}' +AND pinned_first = '{{ pinned_first }}' +AND include_pinned = '{{ include_pinned }}' +AND include_descendant_matches = '{{ include_descendant_matches }}' +AND sort = '{{ sort }}' +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `DELETE` examples + + + + +Delete a Model Lab run by its ID. + +```sql +DELETE FROM datadog.llm_observability.model_lab_runs +WHERE run_id = '{{ run_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/projects/index.md b/website/docs/services/llm_observability/projects/index.md new file mode 100644 index 0000000..4e64275 --- /dev/null +++ b/website/docs/services/llm_observability/projects/index.md @@ -0,0 +1,284 @@ +--- +title: projects +hide_title: false +hide_table_of_contents: false +keywords: + - projects + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a projects resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the project. (example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751)
objectAttributes of an Agent Observability project.
stringResource type of an Agent Observability project. (projects) (example: projects)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[id], filter[name], page[cursor], page[limit]List all Agent Observability projects sorted by creation date, newest first.
dataCreate a new Agent Observability project. Returns the existing project if a name conflict occurs.
project_id, dataPartially update an existing Agent Observability project.
dataDelete one or more Agent Observability projects.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the Agent Observability project. (example: a33671aa-24fd-4dcd-9b33-a8ec7dde7751)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter projects by project ID.
stringFilter projects by name.
stringUse the Pagination cursor to retrieve the next page of results.
integer (int64)Maximum number of results to return per page.
+ +## `SELECT` examples + + + + +List all Agent Observability projects sorted by creation date, newest first. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.projects +WHERE filter[id] = '{{ filter[id] }}' +AND filter[name] = '{{ filter[name] }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new Agent Observability project. Returns the existing project if a name conflict occurs. + +```sql +INSERT INTO datadog.llm_observability.projects ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: projects + props: + - name: data + description: | + Data object for creating an Agent Observability project. + value: + attributes: + description: "{{ description }}" + name: "{{ name }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update an existing Agent Observability project. + +```sql +UPDATE datadog.llm_observability.projects +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Delete one or more Agent Observability projects. + +```sql +EXEC datadog.llm_observability.projects.delete_llmobs_projects +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/prompt_versions/index.md b/website/docs/services/llm_observability/prompt_versions/index.md new file mode 100644 index 0000000..189edbf --- /dev/null +++ b/website/docs/services/llm_observability/prompt_versions/index.md @@ -0,0 +1,297 @@ +--- +title: prompt_versions +hide_title: false +hide_table_of_contents: false +keywords: + - prompt_versions + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a prompt_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the prompt version. (example: d83ab666-61cc-5545-a83b-2424bb85467b)
objectAttributes of a specific version of an Agent Observability prompt.
stringResource type of an Agent Observability prompt version. (prompt-template-versions) (example: prompt-template-versions)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the prompt version. (example: d83ab666-61cc-5545-a83b-2424bb85467b)
objectAttributes of a prompt version returned in a list, excluding its template.
stringResource type of an Agent Observability prompt version. (prompt-template-versions) (example: prompt-template-versions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
prompt_id, versionGet the full template of a single, specific version of an Agent Observability prompt.
prompt_idList all versions of an Agent Observability prompt, ordered newest to oldest. If the prompt does not exist, is not registered, or is archived, the response contains an empty list.
prompt_id, dataCreate a new version of an existing Agent Observability prompt.
prompt_id, version, dataUpdate the description, the feature-flag environments, or both, for a specific version of an Agent Observability prompt.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe customer-provided identifier of the Agent Observability prompt. (example: customer-support-assistant)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The version number of the Agent Observability prompt. (example: 1)
+ +## `SELECT` examples + + + + +Get the full template of a single, specific version of an Agent Observability prompt. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.prompt_versions +WHERE prompt_id = '{{ prompt_id }}' -- required +AND version = '{{ version }}' -- required +; +``` + + + +List all versions of an Agent Observability prompt, ordered newest to oldest. If the prompt does not exist, is not registered, or is archived, the response contains an empty list. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.prompt_versions +WHERE prompt_id = '{{ prompt_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new version of an existing Agent Observability prompt. + +```sql +INSERT INTO datadog.llm_observability.prompt_versions ( +data, +prompt_id +) +SELECT +'{{ data }}' /* required */, +'{{ prompt_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: prompt_versions + props: + - name: prompt_id + value: "{{ prompt_id }}" + description: Required parameter for the prompt_versions resource. + - name: data + description: | + Data object for creating an Agent Observability prompt version. + value: + attributes: + description: "{{ description }}" + env_ids: + - "{{ env_ids }}" + labels: + - "{{ labels }}" + template: "{{ template }}" + user_version: "{{ user_version }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the description, the feature-flag environments, or both, for a specific version of an Agent Observability prompt. + +```sql +UPDATE datadog.llm_observability.prompt_versions +SET +data = '{{ data }}' +WHERE +prompt_id = '{{ prompt_id }}' --required +AND version = '{{ version }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/llm_observability/prompts/index.md b/website/docs/services/llm_observability/prompts/index.md new file mode 100644 index 0000000..bd4ed0c --- /dev/null +++ b/website/docs/services/llm_observability/prompts/index.md @@ -0,0 +1,326 @@ +--- +title: prompts +hide_title: false +hide_table_of_contents: false +keywords: + - prompts + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a prompts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the prompt. (example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb)
objectAttributes of a flattened prompt version returned for SDK consumption. Exactly one of `template` and `chat_template` is returned.
stringResource type of an Agent Observability prompt. (prompt-templates) (example: prompt-templates)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the prompt. (example: 4a1a28ff-8a25-5f0f-946f-f48264d772eb)
objectAttributes of an Agent Observability prompt registry entry.
stringResource type of an Agent Observability prompt. (prompt-templates) (example: prompt-templates)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
prompt_idlabelGet the latest version of an Agent Observability prompt by prompt ID.
filter[prompt_id]List all Agent Observability prompts in the prompt registry for the organization.
dataCreate a new prompt (and its first version) in the Agent Observability prompt registry.
prompt_id, dataUpdate the title, the description, or both, for an Agent Observability prompt.
prompt_idSoft-delete an Agent Observability prompt. The prompt's version rows are retained, but they are no longer accessible through the public prompt registry endpoints.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe customer-provided identifier of the Agent Observability prompt. (example: customer-support-assistant)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOptional filter for prompts by prompt ID. (example: customer-support-assistant)
string**Deprecated.** Optional label of the prompt version to return. Do not use this parameter for new integrations. If omitted, the latest version is returned. If the prompt has no labels, the latest version is returned even when a label is requested. If the prompt has labels but none match the requested label, a 404 response is returned.
+ +## `SELECT` examples + + + + +Get the latest version of an Agent Observability prompt by prompt ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.prompts +WHERE prompt_id = '{{ prompt_id }}' -- required +AND label = '{{ label }}' +; +``` + + + +List all Agent Observability prompts in the prompt registry for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.prompts +WHERE filter[prompt_id] = '{{ filter[prompt_id] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new prompt (and its first version) in the Agent Observability prompt registry. + +```sql +INSERT INTO datadog.llm_observability.prompts ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: prompts + props: + - name: data + description: | + Data object for creating an Agent Observability prompt. + value: + attributes: + description: "{{ description }}" + env_ids: + - "{{ env_ids }}" + labels: + - "{{ labels }}" + prompt_id: "{{ prompt_id }}" + template: "{{ template }}" + title: "{{ title }}" + user_version: "{{ user_version }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the title, the description, or both, for an Agent Observability prompt. + +```sql +UPDATE datadog.llm_observability.prompts +SET +data = '{{ data }}' +WHERE +prompt_id = '{{ prompt_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Soft-delete an Agent Observability prompt. The prompt's version rows are retained, but they are no longer accessible through the public prompt registry endpoints. + +```sql +DELETE FROM datadog.llm_observability.prompts +WHERE prompt_id = '{{ prompt_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/span_events/index.md b/website/docs/services/llm_observability/span_events/index.md new file mode 100644 index 0000000..f3848dd --- /dev/null +++ b/website/docs/services/llm_observability/span_events/index.md @@ -0,0 +1,244 @@ +--- +title: span_events +hide_title: false +hide_table_of_contents: false +keywords: + - span_events + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a span_events resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the span. (example: abc123def456)
objectAttributes of an Agent Observability span.
stringResource type for an Agent Observability span. (span) (example: span)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[from], filter[to], filter[query], filter[span_id], filter[trace_id], filter[span_kind], filter[span_name], filter[ml_app], page[limit], page[cursor], sort, include_attachmentsList Agent Observability spans matching the specified filters.
dataSearch Agent Observability spans using structured filters in the request body.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringStart of the time range. Accepts ISO 8601 or relative format (e.g., `now-15m`). Defaults to `now-15m`.
stringFilter by ML application name.
stringSearch query using Agent Observability query syntax. Supports attribute filters using the field:value syntax (e.g. session_id, trace_id, ml_app, meta.span.kind). When provided, structured field filters (`filter[span_id]`, `filter[trace_id]`, etc.) are ignored.
stringFilter by exact span ID.
stringFilter by span kind (e.g., llm, agent, tool, task, workflow).
stringFilter by span name.
stringEnd of the time range. Accepts ISO 8601 or relative format. Defaults to `now`.
stringFilter by exact trace ID.
booleanWhether to include attachment data in the response. Defaults to `true`.
stringCursor from the previous response to retrieve the next page.
integer (int64)Maximum number of spans to return. Defaults to `10`.
stringSort order for the results.
+ +## `SELECT` examples + + + + +List Agent Observability spans matching the specified filters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.span_events +WHERE filter[from] = '{{ filter[from] }}' +AND filter[to] = '{{ filter[to] }}' +AND filter[query] = '{{ filter[query] }}' +AND filter[span_id] = '{{ filter[span_id] }}' +AND filter[trace_id] = '{{ filter[trace_id] }}' +AND filter[span_kind] = '{{ filter[span_kind] }}' +AND filter[span_name] = '{{ filter[span_name] }}' +AND filter[ml_app] = '{{ filter[ml_app] }}' +AND page[limit] = '{{ page[limit] }}' +AND page[cursor] = '{{ page[cursor] }}' +AND sort = '{{ sort }}' +AND include_attachments = '{{ include_attachments }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Search Agent Observability spans using structured filters in the request body. + +```sql +EXEC datadog.llm_observability.span_events.search_llmobs_spans +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/llm_observability/topic_discovery_clustered_points/index.md b/website/docs/services/llm_observability/topic_discovery_clustered_points/index.md new file mode 100644 index 0000000..6eb5709 --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_clustered_points/index.md @@ -0,0 +1,157 @@ +--- +title: topic_discovery_clustered_points +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_clustered_points + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_clustered_points resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIdentifier of the topic the points belong to. (example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21)
objectAttributes of an Agent Observability patterns clustered points response.
stringResource type of an Agent Observability patterns clustered points response. (clustered_points_response) (example: clustered_points_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
topic_idpage_size, page_tokenList the data points grouped into a topic. For a parent topic, points from all<br />of its leaf topics are returned.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the topic to retrieve clustered points for. (example: 5c1fae90-2b6d-4e3a-9f12-7a0c4d8e6b21)
integer (int64)Maximum number of clustered points to return per page.
stringPagination token to retrieve the next page of clustered points.
+ +## `SELECT` examples + + + + +List the data points grouped into a topic. For a parent topic, points from all<br />of its leaf topics are returned. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_clustered_points +WHERE topic_id = '{{ topic_id }}' -- required +AND page_size = '{{ page_size }}' +AND page_token = '{{ page_token }}' +; +``` + + diff --git a/website/docs/services/llm_observability/topic_discovery_configs/index.md b/website/docs/services/llm_observability/topic_discovery_configs/index.md new file mode 100644 index 0000000..dae72af --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_configs/index.md @@ -0,0 +1,204 @@ +--- +title: topic_discovery_configs +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_configs + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIdentifier of the list response. (example: 1000000001)
objectAttributes of a list of Agent Observability patterns configurations.
stringResource type of a list of Agent Observability patterns configurations. (list_topic_discovery_configs_response) (example: list_topic_discovery_configs_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all patterns configurations for the organization.
dataCreate a new patterns configuration, or update an existing one when a configuration ID is provided.
config_idDelete a patterns configuration by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the patterns configuration. (example: a7c8d9e0-1234-5678-9abc-def012345678)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all patterns configurations for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_configs +; +``` + + + + +## `REPLACE` examples + + + + +Create a new patterns configuration, or update an existing one when a configuration ID is provided. + +```sql +REPLACE datadog.llm_observability.topic_discovery_configs +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a patterns configuration by its ID. + +```sql +DELETE FROM datadog.llm_observability.topic_discovery_configs +WHERE config_id = '{{ config_id }}' --required +; +``` + + diff --git a/website/docs/services/llm_observability/topic_discovery_latest_configs/index.md b/website/docs/services/llm_observability/topic_discovery_latest_configs/index.md new file mode 100644 index 0000000..7a7d3ce --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_latest_configs/index.md @@ -0,0 +1,139 @@ +--- +title: topic_discovery_latest_configs +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_latest_configs + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_latest_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the configuration. (example: a7c8d9e0-1234-5678-9abc-def012345678)
objectAttributes of an Agent Observability patterns configuration.
stringResource type of an Agent Observability patterns configuration. (topic_discovery_configs) (example: topic_discovery_configs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the patterns configuration for the organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the patterns configuration for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_latest_configs +; +``` + + diff --git a/website/docs/services/llm_observability/topic_discovery_run_statuses/index.md b/website/docs/services/llm_observability/topic_discovery_run_statuses/index.md new file mode 100644 index 0000000..02f7468 --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_run_statuses/index.md @@ -0,0 +1,145 @@ +--- +title: topic_discovery_run_statuses +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_run_statuses + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_run_statuses resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the patterns run. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
objectAttributes of an Agent Observability patterns run status.
stringResource type of an Agent Observability patterns run status. (topic_discovery_run_status) (example: topic_discovery_run_status)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
config_idRetrieve the status and step-by-step progress of the current or most recent<br />patterns run for a configuration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the patterns configuration. (example: a7c8d9e0-1234-5678-9abc-def012345678)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the status and step-by-step progress of the current or most recent<br />patterns run for a configuration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_run_statuses +WHERE config_id = '{{ config_id }}' -- required +; +``` + + diff --git a/website/docs/services/llm_observability/topic_discovery_runs/index.md b/website/docs/services/llm_observability/topic_discovery_runs/index.md new file mode 100644 index 0000000..c361b28 --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_runs/index.md @@ -0,0 +1,194 @@ +--- +title: topic_discovery_runs +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_runs + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_runs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIdentifier of the configuration the runs belong to. (example: a7c8d9e0-1234-5678-9abc-def012345678)
objectAttributes of an Agent Observability patterns runs response.
stringResource type of a list of Agent Observability patterns runs. (list_topic_discovery_runs_response) (example: list_topic_discovery_runs_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
config_idList the completed patterns runs for a configuration.
dataStart a patterns run for a given configuration. The run executes asynchronously.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the patterns configuration. (example: a7c8d9e0-1234-5678-9abc-def012345678)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List the completed patterns runs for a configuration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_runs +WHERE config_id = '{{ config_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Start a patterns run for a given configuration. The run executes asynchronously. + +```sql +INSERT INTO datadog.llm_observability.topic_discovery_runs ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: topic_discovery_runs + props: + - name: data + description: | + Data object for triggering an Agent Observability patterns run. + value: + attributes: + config_id: "{{ config_id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/llm_observability/topic_discovery_topic_with_cluster_points/index.md b/website/docs/services/llm_observability/topic_discovery_topic_with_cluster_points/index.md new file mode 100644 index 0000000..d17c8e3 --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_topic_with_cluster_points/index.md @@ -0,0 +1,157 @@ +--- +title: topic_discovery_topic_with_cluster_points +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_topic_with_cluster_points + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_topic_with_cluster_points resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIdentifier of the run the topics belong to. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
objectAttributes of an Agent Observability patterns topics-with-clustered-points response.
stringResource type of an Agent Observability patterns topics-with-clustered-points response. (get_topics_with_cluster_points_response) (example: get_topics_with_cluster_points_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
config_idrun_id, include_metricsList the topics discovered by a patterns run, with the clustered points attached<br />inline to each leaf topic. When no run is specified, the most recent completed<br />run is used.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the patterns configuration. (example: a7c8d9e0-1234-5678-9abc-def012345678)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanWhen true, enrich each clustered point with span metrics such as status, duration, token counts, estimated cost, and evaluations.
stringThe ID of a specific patterns run. Defaults to the most recent completed run. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
+ +## `SELECT` examples + + + + +List the topics discovered by a patterns run, with the clustered points attached<br />inline to each leaf topic. When no run is specified, the most recent completed<br />run is used. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_topic_with_cluster_points +WHERE config_id = '{{ config_id }}' -- required +AND run_id = '{{ run_id }}' +AND include_metrics = '{{ include_metrics }}' +; +``` + + diff --git a/website/docs/services/llm_observability/topic_discovery_topics/index.md b/website/docs/services/llm_observability/topic_discovery_topics/index.md new file mode 100644 index 0000000..5f13684 --- /dev/null +++ b/website/docs/services/llm_observability/topic_discovery_topics/index.md @@ -0,0 +1,151 @@ +--- +title: topic_discovery_topics +hide_title: false +hide_table_of_contents: false +keywords: + - topic_discovery_topics + - llm_observability + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a topic_discovery_topics resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringIdentifier of the run the topics belong to. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
objectAttributes of an Agent Observability patterns topics response.
stringResource type of an Agent Observability patterns topics response. (get_topics_response) (example: get_topics_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
config_idrun_idList the topics discovered by a patterns run. When no run is specified,<br />the most recent completed run is used.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the patterns configuration. (example: a7c8d9e0-1234-5678-9abc-def012345678)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of a specific patterns run. Defaults to the most recent completed run. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
+ +## `SELECT` examples + + + + +List the topics discovered by a patterns run. When no run is specified,<br />the most recent completed run is used. + +```sql +SELECT +id, +attributes, +type +FROM datadog.llm_observability.topic_discovery_topics +WHERE config_id = '{{ config_id }}' -- required +AND run_id = '{{ run_id }}' +; +``` + + diff --git a/website/docs/services/logs/archive_order/index.md b/website/docs/services/logs/archive_order/index.md index d2c8cfb..10f17f4 100644 --- a/website/docs/services/logs/archive_order/index.md +++ b/website/docs/services/logs/archive_order/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an archive_order resource. ## Overview - +
Namearchive_order
Name
TypeResource
Id
@@ -56,7 +57,7 @@ The following fields are returned by `SELECT` queries: string - Type of the archive order definition. (default: archive_order, example: archive_order) + Type of the archive order definition. (archive_order) (default: archive_order, example: archive_order) @@ -81,16 +82,16 @@ The following methods are available for this resource: - region - Get the current order of your archives.
This endpoint takes no JSON arguments. + + Get the current order of your archives.<br />This endpoint takes no JSON arguments. - region - Update the order of your archives. Since logs are processed sequentially, reordering an archive may change
the structure and content of the data processed by other archives.

**Note**: Using the `PUT` method updates your archive's order by replacing the current order
with the new one. + + Update the order of your archives. Since logs are processed sequentially, reordering an archive may change<br />the structure and content of the data processed by other archives.<br /><br />**Note**: Using the `PUT` method updates your archive's order by replacing the current order<br />with the new one. @@ -108,10 +109,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -126,14 +127,13 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the current order of your archives.
This endpoint takes no JSON arguments. +Get the current order of your archives.<br />This endpoint takes no JSON arguments. ```sql SELECT attributes, type FROM datadog.logs.archive_order -WHERE region = '{{ region }}' -- required ; ```
@@ -150,14 +150,13 @@ WHERE region = '{{ region }}' -- required > -Update the order of your archives. Since logs are processed sequentially, reordering an archive may change
the structure and content of the data processed by other archives.

**Note**: Using the `PUT` method updates your archive's order by replacing the current order
with the new one. +Update the order of your archives. Since logs are processed sequentially, reordering an archive may change<br />the structure and content of the data processed by other archives.<br /><br />**Note**: Using the `PUT` method updates your archive's order by replacing the current order<br />with the new one. ```sql REPLACE datadog.logs.archive_order SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE -region = '{{ region }}' --required RETURNING data; ``` diff --git a/website/docs/services/logs/archive_read_roles/index.md b/website/docs/services/logs/archive_read_roles/index.md index f921fa6..35ee63a 100644 --- a/website/docs/services/logs/archive_read_roles/index.md +++ b/website/docs/services/logs/archive_read_roles/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an archive_read_roles reso ## Overview - +
Namearchive_read_roles
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Roles type. (default: roles, example: roles) + Roles type. (roles) (default: roles, example: roles) @@ -91,23 +92,23 @@ The following methods are available for this resource: - archive_id, region + archive_id Returns all read roles a given archive is restricted to. - archive_id, region + archive_id - Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + Adds a read role to an archive. ([Roles API](https:​//docs.datadoghq.com/api/v2/roles/)) - archive_id, region + archive_id - Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/roles/)) + Removes a role from an archive. ([Roles API](https:​//docs.datadoghq.com/api/v2/roles/)) @@ -130,10 +131,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the archive. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -158,7 +159,6 @@ relationships, type FROM datadog.logs.archive_read_roles WHERE archive_id = '{{ archive_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -180,34 +180,31 @@ Adds a read role to an archive. ([Roles API](https://docs.datadoghq.com/api/v2/r ```sql INSERT INTO datadog.logs.archive_read_roles ( -data__data, -archive_id, -region +data, +archive_id ) SELECT '{{ data }}', -'{{ archive_id }}', -'{{ region }}' +'{{ archive_id }}' ; ``` -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: archive_read_roles props: - name: archive_id - value: string - description: Required parameter for the archive_read_roles resource. - - name: region - value: string + value: "{{ archive_id }}" description: Required parameter for the archive_read_roles resource. - name: data - value: object description: | Relationship to role object. -``` + value: + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -227,7 +224,6 @@ Removes a role from an archive. ([Roles API](https://docs.datadoghq.com/api/v2/r ```sql DELETE FROM datadog.logs.archive_read_roles WHERE archive_id = '{{ archive_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/logs/archives/index.md b/website/docs/services/logs/archives/index.md index d9c769a..b7444d0 100644 --- a/website/docs/services/logs/archives/index.md +++ b/website/docs/services/logs/archives/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an archives resource. ## Overview - +
Namearchives
Name
TypeResource
Id
@@ -116,35 +117,35 @@ The following methods are available for this resource: - archive_id, region + archive_id Get a specific archive from your organization. - region + Get the list of configured logs archives with their definitions. - region + Create an archive in your organization. - archive_id, region + archive_id - Update a given archive configuration.

**Note**: Using this method updates your archive configuration by **replacing**
your current configuration with the new one sent to your Datadog organization. + Update a given archive configuration.<br /><br />**Note**: Using this method updates your archive configuration by **replacing**<br />your current configuration with the new one sent to your Datadog organization. - archive_id, region + archive_id Delete a given archive from your organization. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the archive. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.logs.archives WHERE archive_id = '{{ archive_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.logs.archives -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create an archive in your organization. ```sql INSERT INTO datadog.logs.archives ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -246,18 +243,42 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: archives props: - - name: region - value: string - description: Required parameter for the archives resource. - name: data - value: object description: | The definition of an archive. -``` + value: + attributes: + compression_method: "{{ compression_method }}" + destination: + container: "{{ container }}" + integration: + client_id: "{{ client_id }}" + tenant_id: "{{ tenant_id }}" + path: "{{ path }}" + region: "{{ region }}" + storage_account: "{{ storage_account }}" + type: "{{ type }}" + bucket: "{{ bucket }}" + encryption: + key: "{{ key }}" + type: "{{ type }}" + storage_class: "{{ storage_class }}" + include_tags: {{ include_tags }} + lookup_attributes: + - "{{ lookup_attributes }}" + name: "{{ name }}" + partitioning_attributes: + - "{{ partitioning_attributes }}" + query: "{{ query }}" + rehydration_max_scan_size_in_gb: {{ rehydration_max_scan_size_in_gb }} + rehydration_tags: + - "{{ rehydration_tags }}" + type: "{{ type }}" +`} + @@ -272,15 +293,14 @@ data > -Update a given archive configuration.

**Note**: Using this method updates your archive configuration by **replacing**
your current configuration with the new one sent to your Datadog organization. +Update a given archive configuration.<br /><br />**Note**: Using this method updates your archive configuration by **replacing**<br />your current configuration with the new one sent to your Datadog organization. ```sql REPLACE datadog.logs.archives SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE archive_id = '{{ archive_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -303,7 +323,6 @@ Delete a given archive from your organization. ```sql DELETE FROM datadog.logs.archives WHERE archive_id = '{{ archive_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/logs/custom_destinations/index.md b/website/docs/services/logs/custom_destinations/index.md index e70fb08..0f1e925 100644 --- a/website/docs/services/logs/custom_destinations/index.md +++ b/website/docs/services/logs/custom_destinations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a custom_destinations reso ## Overview - +
Namecustom_destinations
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `custom_destination`. (default: custom_destination, example: custom_destination) + The type of the resource. The value should always be `custom_destination`. (custom_destination) (default: custom_destination, example: custom_destination) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `custom_destination`. (default: custom_destination, example: custom_destination) + The type of the resource. The value should always be `custom_destination`. (custom_destination) (default: custom_destination, example: custom_destination) @@ -116,35 +117,35 @@ The following methods are available for this resource: - custom_destination_id, region + custom_destination_id Get a specific custom destination in your organization. - region + Get the list of configured custom destinations in your organization with their definitions. - region + Create a custom destination in your organization. - custom_destination_id, region + custom_destination_id Update the given fields of a specific custom destination in your organization. - custom_destination_id, region + custom_destination_id Delete a specific custom destination in your organization. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the custom destination. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.logs.custom_destinations WHERE custom_destination_id = '{{ custom_destination_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.logs.custom_destinations -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a custom destination in your organization. ```sql INSERT INTO datadog.logs.custom_destinations ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -246,18 +243,42 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: custom_destinations props: - - name: region - value: string - description: Required parameter for the custom_destinations resource. - name: data - value: object description: | The definition of a custom destination. -``` + value: + attributes: + enabled: {{ enabled }} + forward_tags: {{ forward_tags }} + forward_tags_restriction_list: + - "{{ forward_tags_restriction_list }}" + forward_tags_restriction_list_type: "{{ forward_tags_restriction_list_type }}" + forwarder_destination: + auth: + password: "{{ password }}" + type: "{{ type }}" + username: "{{ username }}" + header_name: "{{ header_name }}" + header_value: "{{ header_value }}" + endpoint: "{{ endpoint }}" + type: "{{ type }}" + access_token: "{{ access_token }}" + sourcetype: "{{ sourcetype }}" + index_name: "{{ index_name }}" + index_rotation: "{{ index_rotation }}" + client_id: "{{ client_id }}" + data_collection_endpoint: "{{ data_collection_endpoint }}" + data_collection_rule_id: "{{ data_collection_rule_id }}" + stream_name: "{{ stream_name }}" + tenant_id: "{{ tenant_id }}" + name: "{{ name }}" + query: "{{ query }}" + type: "{{ type }}" +`} + @@ -277,10 +298,9 @@ Update the given fields of a specific custom destination in your organization. ```sql UPDATE datadog.logs.custom_destinations SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE custom_destination_id = '{{ custom_destination_id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -303,7 +323,6 @@ Delete a specific custom destination in your organization. ```sql DELETE FROM datadog.logs.custom_destinations WHERE custom_destination_id = '{{ custom_destination_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/logs/index.md b/website/docs/services/logs/index.md index 83158dd..09cb272 100644 --- a/website/docs/services/logs/index.md +++ b/website/docs/services/logs/index.md @@ -18,7 +18,7 @@ logs service documentation. :::info[Service Summary] -total resources: __6__ +total resources: __14__ ::: @@ -27,11 +27,19 @@ total resources: __6__
\ No newline at end of file diff --git a/website/docs/services/logs/index_order/index.md b/website/docs/services/logs/index_order/index.md new file mode 100644 index 0000000..83a922a --- /dev/null +++ b/website/docs/services/logs/index_order/index.md @@ -0,0 +1,159 @@ +--- +title: index_order +hide_title: false +hide_table_of_contents: false +keywords: + - index_order + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an index_order resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayArray of strings identifying by their name(s) the index(es) of your organization. Logs are tested against the query filter of each index one by one, following the order of the array. Logs are eventually stored in the first matching index.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the current order of your log indexes. This endpoint takes no JSON arguments.
index_namesThis endpoint updates the index order of your organization.<br />It returns the index order object passed in the request body when the request is successful.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the current order of your log indexes. This endpoint takes no JSON arguments. + +```sql +SELECT +index_names +FROM datadog.logs.index_order +; +``` + + + + +## `REPLACE` examples + + + + +This endpoint updates the index order of your organization.<br />It returns the index order object passed in the request body when the request is successful. + +```sql +REPLACE datadog.logs.index_order +SET +index_names = '{{ index_names }}' +WHERE +index_names = '{{ index_names }}' --required +RETURNING +index_names; +``` + + diff --git a/website/docs/services/logs/indexes/index.md b/website/docs/services/logs/indexes/index.md new file mode 100644 index 0000000..2c9daf3 --- /dev/null +++ b/website/docs/services/logs/indexes/index.md @@ -0,0 +1,477 @@ +--- +title: indexes +hide_title: false +hide_table_of_contents: false +keywords: + - indexes + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an indexes resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the index. (example: main)
integer (int64)The number of log events you can send in this index per day before you are rate-limited.
objectObject containing options to override the default daily limit reset time.
number (double)A percentage threshold of the daily quota at which a Datadog warning event is generated.
arrayAn array of exclusion objects. The logs are tested against the query of each filter, following the order of the array. Only the first matching active exclusion matters, others (if any) are ignored.
objectFilter for logs.
booleanA boolean stating if the index is rate limited, meaning more logs than the daily limit have been sent. Rate limit is reset every-day at 2pm UTC.
integer (int64)The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through `num_retention_days`, and then stored in Flex Tier until the number of days specified in `num_flex_logs_retention_days` is reached. The available values depend on retention plans specified in your organization's contract/subscriptions.
integer (int64)The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. The available values depend on retention plans specified in your organization's contract/subscriptions.
arrayA list of tags associated with the index. Tags must be in `key:value` format.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the index. (example: main)
integer (int64)The number of log events you can send in this index per day before you are rate-limited.
objectObject containing options to override the default daily limit reset time.
number (double)A percentage threshold of the daily quota at which a Datadog warning event is generated.
arrayAn array of exclusion objects. The logs are tested against the query of each filter, following the order of the array. Only the first matching active exclusion matters, others (if any) are ignored.
objectFilter for logs.
booleanA boolean stating if the index is rate limited, meaning more logs than the daily limit have been sent. Rate limit is reset every-day at 2pm UTC.
integer (int64)The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through `num_retention_days`, and then stored in Flex Tier until the number of days specified in `num_flex_logs_retention_days` is reached. The available values depend on retention plans specified in your organization's contract/subscriptions.
integer (int64)The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. The available values depend on retention plans specified in your organization's contract/subscriptions.
arrayA list of tags associated with the index. Tags must be in `key:value` format.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
nameGet one log index from your organization. This endpoint takes no JSON arguments.
The Index object describes the configuration of a log index.<br />This endpoint returns an array of the `LogIndex` objects of your organization.
name, filterCreates a new index. Returns the Index object passed in the request body when the request is successful.
name, filterUpdate an index as identified by its name.<br />Returns the Index object passed in the request body when the request is successful.<br /><br />Using the `PUT` method updates your index's configuration by **replacing**<br />your current configuration with the new one sent to your Datadog organization.
nameDelete an existing index from your organization. Index deletions are permanent and cannot be reverted.<br />You cannot recreate an index with the same name as deleted ones.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the log index.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get one log index from your organization. This endpoint takes no JSON arguments. + +```sql +SELECT +name, +daily_limit, +daily_limit_reset, +daily_limit_warning_threshold_percentage, +exclusion_filters, +filter, +is_rate_limited, +num_flex_logs_retention_days, +num_retention_days, +tags +FROM datadog.logs.indexes +WHERE name = '{{ name }}' -- required +; +``` + + + +The Index object describes the configuration of a log index.<br />This endpoint returns an array of the `LogIndex` objects of your organization. + +```sql +SELECT +name, +daily_limit, +daily_limit_reset, +daily_limit_warning_threshold_percentage, +exclusion_filters, +filter, +is_rate_limited, +num_flex_logs_retention_days, +num_retention_days, +tags +FROM datadog.logs.indexes +; +``` + + + + +## `INSERT` examples + + + + +Creates a new index. Returns the Index object passed in the request body when the request is successful. + +```sql +INSERT INTO datadog.logs.indexes ( +daily_limit, +daily_limit_reset, +daily_limit_warning_threshold_percentage, +exclusion_filters, +filter, +name, +num_flex_logs_retention_days, +num_retention_days, +tags +) +SELECT +{{ daily_limit }}, +'{{ daily_limit_reset }}', +{{ daily_limit_warning_threshold_percentage }}, +'{{ exclusion_filters }}', +'{{ filter }}' /* required */, +'{{ name }}' /* required */, +{{ num_flex_logs_retention_days }}, +{{ num_retention_days }}, +'{{ tags }}' +RETURNING +name, +daily_limit, +daily_limit_reset, +daily_limit_warning_threshold_percentage, +exclusion_filters, +filter, +is_rate_limited, +num_flex_logs_retention_days, +num_retention_days, +tags +; +``` + + + +{`# Description fields are for documentation purposes +- name: indexes + props: + - name: daily_limit + value: {{ daily_limit }} + description: | + The number of log events you can send in this index per day before you are rate-limited. + - name: daily_limit_reset + description: | + Object containing options to override the default daily limit reset time. + value: + reset_time: "{{ reset_time }}" + reset_utc_offset: "{{ reset_utc_offset }}" + - name: daily_limit_warning_threshold_percentage + value: {{ daily_limit_warning_threshold_percentage }} + description: | + A percentage threshold of the daily quota at which a Datadog warning event is generated. + - name: exclusion_filters + description: | + An array of exclusion objects. The logs are tested against the query of each filter, + following the order of the array. Only the first matching active exclusion matters, + others (if any) are ignored. + value: + - filter: + query: "{{ query }}" + sample_attribute: "{{ sample_attribute }}" + sample_rate: {{ sample_rate }} + is_enabled: {{ is_enabled }} + name: "{{ name }}" + - name: filter + description: | + Filter for logs. + value: + query: "{{ query }}" + - name: name + value: "{{ name }}" + description: | + The name of the index. + - name: num_flex_logs_retention_days + value: {{ num_flex_logs_retention_days }} + description: | + The total number of days logs are stored in Standard and Flex Tier before being deleted from the index. + If Standard Tier is enabled on this index, logs are first retained in Standard Tier for the number of days specified through \`num_retention_days\`, + and then stored in Flex Tier until the number of days specified in \`num_flex_logs_retention_days\` is reached. + The available values depend on retention plans specified in your organization's contract/subscriptions. + - name: num_retention_days + value: {{ num_retention_days }} + description: | + The number of days logs are stored in Standard Tier before aging into the Flex Tier or being deleted from the index. + The available values depend on retention plans specified in your organization's contract/subscriptions. + - name: tags + value: + - "{{ tags }}" + description: | + A list of tags associated with the index. Tags must be in \`key:value\` format. +`} + + + + + +## `REPLACE` examples + + + + +Update an index as identified by its name.<br />Returns the Index object passed in the request body when the request is successful.<br /><br />Using the `PUT` method updates your index's configuration by **replacing**<br />your current configuration with the new one sent to your Datadog organization. + +```sql +REPLACE datadog.logs.indexes +SET +daily_limit = {{ daily_limit }}, +daily_limit_reset = '{{ daily_limit_reset }}', +daily_limit_warning_threshold_percentage = {{ daily_limit_warning_threshold_percentage }}, +disable_daily_limit = {{ disable_daily_limit }}, +exclusion_filters = '{{ exclusion_filters }}', +filter = '{{ filter }}', +num_flex_logs_retention_days = {{ num_flex_logs_retention_days }}, +num_retention_days = {{ num_retention_days }}, +tags = '{{ tags }}' +WHERE +name = '{{ name }}' --required +AND filter = '{{ filter }}' --required +RETURNING +name, +daily_limit, +daily_limit_reset, +daily_limit_warning_threshold_percentage, +exclusion_filters, +filter, +is_rate_limited, +num_flex_logs_retention_days, +num_retention_days, +tags; +``` + + + + +## `DELETE` examples + + + + +Delete an existing index from your organization. Index deletions are permanent and cannot be reverted.<br />You cannot recreate an index with the same name as deleted ones. + +```sql +DELETE FROM datadog.logs.indexes +WHERE name = '{{ name }}' --required +; +``` + + diff --git a/website/docs/services/logs/logs/index.md b/website/docs/services/logs/logs/index.md index da185ad..8af6625 100644 --- a/website/docs/services/logs/logs/index.md +++ b/website/docs/services/logs/logs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a logs resource. ## Overview - +
Namelogs
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of the event. (default: log, example: log) + Type of the event. (log) (default: log, example: log) @@ -86,30 +87,30 @@ The following methods are available for this resource: - region + filter[query], filter[indexes], filter[from], filter[to], filter[storage_tier], sort, page[cursor], page[limit] - List endpoint returns logs that match a log search query.
[Results are paginated][1].

Use this endpoint to search and filter your logs.

**If you are considering archiving logs for your organization,
consider use of the Datadog archive capabilities instead of the log list API.
See [Datadog Logs Archive documentation][2].**

[1]: /logs/guide/collect-multiple-logs-with-pagination
[2]: https://docs.datadoghq.com/logs/archives + List endpoint returns logs that match a log search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to search and filter your logs.<br /><br />**If you are considering archiving logs for your organization,<br />consider use of the Datadog archive capabilities instead of the log list API.<br />See [Datadog Logs Archive documentation][2].**<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination<br />[2]: https:​//docs.datadoghq.com/logs/archives - - region + + Content-Encoding, ddtags - Send your logs to your Datadog platform over HTTP. Limits per HTTP request are:

- Maximum content size per payload (uncompressed): 5MB
- Maximum size for a single log: 1MB
- Maximum array size if sending multiple logs in an array: 1000 entries

Any log exceeding 1MB is accepted and truncated by Datadog:
- For a single log request, the API truncates the log at 1MB and returns a 2xx.
- For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx.

Datadog recommends sending your logs compressed.
Add the `Content-Encoding: gzip` header to the request when sending compressed logs.
Log events can be submitted with a timestamp that is up to 18 hours in the past.

The status codes answered by the HTTP API are:
- 202: Accepted: the request has been accepted for processing
- 400: Bad request (likely an issue in the payload formatting)
- 401: Unauthorized (likely a missing API Key)
- 403: Permission issue (likely using an invalid API Key)
- 408: Request Timeout, request should be retried after some time
- 413: Payload too large (batch is above 5MB uncompressed)
- 429: Too Many Requests, request should be retried after some time
- 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time
- 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time + Send your logs to your Datadog platform over HTTP. Limits per HTTP request are:<br /><br />- Maximum content size per payload (uncompressed): 5MB<br />- Maximum size for a single log: 1MB<br />- Maximum array size if sending multiple logs in an array: 1000 entries<br /><br />Any log exceeding 1MB is accepted and truncated by Datadog:<br />- For a single log request, the API truncates the log at 1MB and returns a 2xx.<br />- For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx.<br /><br />Datadog recommends sending your logs compressed.<br />Add the `Content-Encoding: gzip` header to the request when sending compressed logs.<br />Log events can be submitted with a timestamp that is up to 18 hours in the past.<br /><br />The status codes answered by the HTTP API are:<br />- 202: Accepted: the request has been accepted for processing<br />- 400: Bad request (likely an issue in the payload formatting)<br />- 401: Unauthorized (likely a missing API Key)<br />- 403: Permission issue (likely using an invalid API Key)<br />- 408: Request Timeout, request should be retried after some time<br />- 413: Payload too large (batch is above 5MB uncompressed)<br />- 429: Too Many Requests, request should be retried after some time<br />- 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time<br />- 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time - - - region + + - List endpoint returns logs that match a log search query.
[Results are paginated][1].

Use this endpoint to search and filter your logs.

**If you are considering archiving logs for your organization,
consider use of the Datadog archive capabilities instead of the log list API.
See [Datadog Logs Archive documentation][2].**

[1]: /logs/guide/collect-multiple-logs-with-pagination
[2]: https://docs.datadoghq.com/logs/archives + + The API endpoint to aggregate events into buckets and compute metrics and timeseries. - + - region - The API endpoint to aggregate events into buckets and compute metrics and timeseries. + + List endpoint returns logs that match a log search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to search and filter your logs.<br /><br />**If you are considering archiving logs for your organization,<br />consider use of the Datadog archive capabilities instead of the log list API.<br />See [Datadog Logs Archive documentation][2].**<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination<br />[2]: https:​//docs.datadoghq.com/logs/archives @@ -127,10 +128,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -150,7 +151,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# array - For customers with multiple indexes, the indexes to search. Defaults to '*' which means all indexes (example: [main, web]) + For customers with multiple indexes, the indexes to search. Defaults to '*' which means all indexes (example: [main, web]) @@ -195,7 +196,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List endpoint returns logs that match a log search query.
[Results are paginated][1].

Use this endpoint to search and filter your logs.

**If you are considering archiving logs for your organization,
consider use of the Datadog archive capabilities instead of the log list API.
See [Datadog Logs Archive documentation][2].**

[1]: /logs/guide/collect-multiple-logs-with-pagination
[2]: https://docs.datadoghq.com/logs/archives +List endpoint returns logs that match a log search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to search and filter your logs.<br /><br />**If you are considering archiving logs for your organization,<br />consider use of the Datadog archive capabilities instead of the log list API.<br />See [Datadog Logs Archive documentation][2].**<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination<br />[2]: https:​//docs.datadoghq.com/logs/archives ```sql SELECT @@ -203,8 +204,7 @@ id, attributes, type FROM datadog.logs.logs -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[indexes] = '{{ filter[indexes] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' @@ -218,111 +218,35 @@ AND page[limit] = '{{ page[limit] }}' -## `INSERT` examples +## Lifecycle Methods + +EXEC variables use wire (API) names. -Send your logs to your Datadog platform over HTTP. Limits per HTTP request are:

- Maximum content size per payload (uncompressed): 5MB
- Maximum size for a single log: 1MB
- Maximum array size if sending multiple logs in an array: 1000 entries

Any log exceeding 1MB is accepted and truncated by Datadog:
- For a single log request, the API truncates the log at 1MB and returns a 2xx.
- For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx.

Datadog recommends sending your logs compressed.
Add the `Content-Encoding: gzip` header to the request when sending compressed logs.
Log events can be submitted with a timestamp that is up to 18 hours in the past.

The status codes answered by the HTTP API are:
- 202: Accepted: the request has been accepted for processing
- 400: Bad request (likely an issue in the payload formatting)
- 401: Unauthorized (likely a missing API Key)
- 403: Permission issue (likely using an invalid API Key)
- 408: Request Timeout, request should be retried after some time
- 413: Payload too large (batch is above 5MB uncompressed)
- 429: Too Many Requests, request should be retried after some time
- 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time
- 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time +Send your logs to your Datadog platform over HTTP. Limits per HTTP request are:<br /><br />- Maximum content size per payload (uncompressed): 5MB<br />- Maximum size for a single log: 1MB<br />- Maximum array size if sending multiple logs in an array: 1000 entries<br /><br />Any log exceeding 1MB is accepted and truncated by Datadog:<br />- For a single log request, the API truncates the log at 1MB and returns a 2xx.<br />- For a multi-logs request, the API processes all logs, truncates only logs larger than 1MB, and returns a 2xx.<br /><br />Datadog recommends sending your logs compressed.<br />Add the `Content-Encoding: gzip` header to the request when sending compressed logs.<br />Log events can be submitted with a timestamp that is up to 18 hours in the past.<br /><br />The status codes answered by the HTTP API are:<br />- 202: Accepted: the request has been accepted for processing<br />- 400: Bad request (likely an issue in the payload formatting)<br />- 401: Unauthorized (likely a missing API Key)<br />- 403: Permission issue (likely using an invalid API Key)<br />- 408: Request Timeout, request should be retried after some time<br />- 413: Payload too large (batch is above 5MB uncompressed)<br />- 429: Too Many Requests, request should be retried after some time<br />- 500: Internal Server Error, the server encountered an unexpected condition that prevented it from fulfilling the request, request should be retried after some time<br />- 503: Service Unavailable, the server is not ready to handle the request probably because it is overloaded, request should be retried after some time ```sql -INSERT INTO datadog.logs.logs ( -region, -Content-Encoding, -ddtags -) -SELECT -'{{ region }}', -'{{ Content-Encoding }}', -'{{ ddtags }}' +EXEC datadog.logs.logs.submit_log +@Content-Encoding='{{ Content-Encoding }}', +@ddtags='{{ ddtags }}' ; ```
- - -List endpoint returns logs that match a log search query.
[Results are paginated][1].

Use this endpoint to search and filter your logs.

**If you are considering archiving logs for your organization,
consider use of the Datadog archive capabilities instead of the log list API.
See [Datadog Logs Archive documentation][2].**

[1]: /logs/guide/collect-multiple-logs-with-pagination
[2]: https://docs.datadoghq.com/logs/archives - -```sql -INSERT INTO datadog.logs.logs ( -data__filter, -data__options, -data__page, -data__sort, -region -) -SELECT -'{{ filter }}', -'{{ options }}', -'{{ page }}', -'{{ sort }}', -'{{ region }}' -RETURNING -data, -links, -meta -; -``` -
- - -```yaml -# Description fields are for documentation purposes -- name: logs - props: - - name: region - value: string - description: Required parameter for the logs resource. - - name: filter - value: object - description: | - The search and filter query settings - - name: options - value: object - description: | - Global query options that are used during the query. - Note: These fields are currently deprecated and do not affect the query results. - - name: page - value: object - description: | - Paging attributes for listing logs. - - name: sort - value: string - description: | - Sort parameters when querying logs. - valid_values: ['timestamp', '-timestamp'] - - name: Content-Encoding - value: string - description: HTTP header used to compress the media-type. - - name: ddtags - value: string - description: Log tags can be passed as query parameters with `text/plain` content type. (example: env:prod,user:my-user) -``` - -
- - -## Lifecycle Methods - - The API endpoint to aggregate events into buckets and compute metrics and timeseries. ```sql EXEC datadog.logs.logs.aggregate_logs -@region='{{ region }}' --required @@json= '{ "compute": "{{ compute }}", @@ -334,4 +258,20 @@ EXEC datadog.logs.logs.aggregate_logs ; ``` + + +List endpoint returns logs that match a log search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to search and filter your logs.<br /><br />**If you are considering archiving logs for your organization,<br />consider use of the Datadog archive capabilities instead of the log list API.<br />See [Datadog Logs Archive documentation][2].**<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination<br />[2]: https:​//docs.datadoghq.com/logs/archives + +```sql +EXEC datadog.logs.logs.list_logs +@@json= +'{ +"filter": "{{ filter }}", +"options": "{{ options }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; +``` + diff --git a/website/docs/services/logs/metrics/index.md b/website/docs/services/logs/metrics/index.md index af358f1..91fef73 100644 --- a/website/docs/services/logs/metrics/index.md +++ b/website/docs/services/logs/metrics/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a metrics resource. ## Overview - +
Namemetrics
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be logs_metrics. (default: logs_metrics, example: logs_metrics) + The type of the resource. The value should always be logs_metrics. (logs_metrics) (default: logs_metrics, example: logs_metrics) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be logs_metrics. (default: logs_metrics, example: logs_metrics) + The type of the resource. The value should always be logs_metrics. (logs_metrics) (default: logs_metrics, example: logs_metrics) @@ -116,35 +117,35 @@ The following methods are available for this resource: - metric_id, region + metric_id Get a specific log-based metric from your organization. - region + Get the list of configured log-based metrics with their definitions. - region, data__data + data - Create a metric based on your ingested logs in your organization.
Returns the log-based metric object from the request body when the request is successful. + Create a metric based on your ingested logs in your organization.<br />Returns the log-based metric object from the request body when the request is successful. - metric_id, region, data__data + metric_id, data - Update a specific log-based metric from your organization.
Returns the log-based metric object from the request body when the request is successful. + Update a specific log-based metric from your organization.<br />Returns the log-based metric object from the request body when the request is successful. - metric_id, region + metric_id Delete a specific log-based metric from your organization. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the log-based metric. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.logs.metrics WHERE metric_id = '{{ metric_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -211,7 +211,6 @@ id, attributes, type FROM datadog.logs.metrics -WHERE region = '{{ region }}' -- required ; ``` @@ -229,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a metric based on your ingested logs in your organization.
Returns the log-based metric object from the request body when the request is successful. +Create a metric based on your ingested logs in your organization.<br />Returns the log-based metric object from the request body when the request is successful. ```sql INSERT INTO datadog.logs.metrics ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,27 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: metrics props: - - name: region - value: string - description: Required parameter for the metrics resource. - name: data - value: object description: | The new log-based metric properties. -``` + value: + attributes: + compute: + aggregation_type: "{{ aggregation_type }}" + include_percentiles: {{ include_percentiles }} + path: "{{ path }}" + filter: + query: "{{ query }}" + group_by: + - path: "{{ path }}" + tag_name: "{{ tag_name }}" + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -272,16 +278,15 @@ data > -Update a specific log-based metric from your organization.
Returns the log-based metric object from the request body when the request is successful. +Update a specific log-based metric from your organization.<br />Returns the log-based metric object from the request body when the request is successful. ```sql UPDATE datadog.logs.metrics SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE metric_id = '{{ metric_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +309,6 @@ Delete a specific log-based metric from your organization. ```sql DELETE FROM datadog.logs.metrics WHERE metric_id = '{{ metric_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/logs/observability_pipelines/index.md b/website/docs/services/logs/observability_pipelines/index.md new file mode 100644 index 0000000..49c4c5a --- /dev/null +++ b/website/docs/services/logs/observability_pipelines/index.md @@ -0,0 +1,522 @@ +--- +title: observability_pipelines +hide_title: false +hide_table_of_contents: false +keywords: + - observability_pipelines + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an observability_pipelines resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the pipeline. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
objectDefines the pipeline’s name and its components (sources, processors, and destinations).
stringThe resource type identifier. For pipeline resources, this should always be set to `pipelines`. (default: pipelines, example: pipelines)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the pipeline. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
objectDefines the pipeline’s name and its components (sources, processors, and destinations).
stringThe resource type identifier. For pipeline resources, this should always be set to `pipelines`. (default: pipelines, example: pipelines)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
pipeline_idGet a specific pipeline by its ID.
page[size], page[number]Retrieve a list of pipelines.
dataCreate a new pipeline.
pipeline_id, dataUpdate a pipeline.
pipeline_idDelete a pipeline.
dataValidates a pipeline configuration without creating or updating any resources.<br />Returns a list of validation errors, if any.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the pipeline to delete.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a specific pipeline by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.observability_pipelines +WHERE pipeline_id = '{{ pipeline_id }}' -- required +; +``` + + + +Retrieve a list of pipelines. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.observability_pipelines +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new pipeline. + +```sql +INSERT INTO datadog.logs.observability_pipelines ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: observability_pipelines + props: + - name: data + description: | + Contains the the pipeline configuration. + value: + attributes: + config: + destinations: + - api_version: "{{ api_version }}" + auth: + password_key: "{{ password_key }}" + strategy: "{{ strategy }}" + username_key: "{{ username_key }}" + buffer: + max_size: {{ max_size }} + type: "{{ type }}" + when_full: "{{ when_full }}" + max_events: {{ max_events }} + bulk_index: "{{ bulk_index }}" + compression: + algorithm: "{{ algorithm }}" + level: {{ level }} + data_stream: + auto_routing: {{ auto_routing }} + dataset: "{{ dataset }}" + dtype: "{{ dtype }}" + namespace: "{{ namespace }}" + sync_fields: {{ sync_fields }} + endpoint_url_key: "{{ endpoint_url_key }}" + id: "{{ id }}" + id_key: "{{ id_key }}" + inputs: "{{ inputs }}" + pipeline: "{{ pipeline }}" + request_retry_partial: {{ request_retry_partial }} + tls: + ca_file: "{{ ca_file }}" + crt_file: "{{ crt_file }}" + key_file: "{{ key_file }}" + key_pass_key: "{{ key_pass_key }}" + type: "{{ type }}" + auth_strategy: "{{ auth_strategy }}" + custom_key: "{{ custom_key }}" + encoding: "{{ encoding }}" + password_key: "{{ password_key }}" + token_key: "{{ token_key }}" + uri_key: "{{ uri_key }}" + username_key: "{{ username_key }}" + bucket: "{{ bucket }}" + key_prefix: "{{ key_prefix }}" + region: "{{ region }}" + server_side_encryption: "{{ server_side_encryption }}" + ssekms_key_id: "{{ ssekms_key_id }}" + storage_class: "{{ storage_class }}" + batch_settings: + batch_size: {{ batch_size }} + timeout_secs: {{ timeout_secs }} + custom_source_name: "{{ custom_source_name }}" + blob_prefix: "{{ blob_prefix }}" + connection_string_key: "{{ connection_string_key }}" + container_name: "{{ container_name }}" + batch: + max_events: {{ max_events }} + timeout_secs: {{ timeout_secs }} + batch_encoding: + allow_nullable_fields: {{ allow_nullable_fields }} + codec: "{{ codec }}" + database: "{{ database }}" + date_time_best_effort: {{ date_time_best_effort }} + format: "{{ format }}" + skip_unknown_fields: {{ skip_unknown_fields }} + table: "{{ table }}" + routes: "{{ routes }}" + customer_id: "{{ customer_id }}" + log_type: "{{ log_type }}" + acl: "{{ acl }}" + metadata: "{{ metadata }}" + project: "{{ project }}" + topic: "{{ topic }}" + bootstrap_servers_key: "{{ bootstrap_servers_key }}" + headers_key: "{{ headers_key }}" + key_field: "{{ key_field }}" + librdkafka_options: "{{ librdkafka_options }}" + message_timeout_ms: {{ message_timeout_ms }} + rate_limit_duration_secs: {{ rate_limit_duration_secs }} + rate_limit_num: {{ rate_limit_num }} + sasl: + mechanism: "{{ mechanism }}" + password_key: "{{ password_key }}" + username_key: "{{ username_key }}" + socket_timeout_ms: {{ socket_timeout_ms }} + client_id: "{{ client_id }}" + client_secret_key: "{{ client_secret_key }}" + dce_uri_key: "{{ dce_uri_key }}" + dcr_immutable_id: "{{ dcr_immutable_id }}" + tenant_id: "{{ tenant_id }}" + account_id_key: "{{ account_id_key }}" + license_key_key: "{{ license_key_key }}" + keepalive: {{ keepalive }} + address_key: "{{ address_key }}" + framing: + method: "{{ method }}" + delimiter: "{{ delimiter }}" + mode: "{{ mode }}" + auto_extract_timestamp: {{ auto_extract_timestamp }} + index: "{{ index }}" + indexed_fields: "{{ indexed_fields }}" + sourcetype: "{{ sourcetype }}" + token_strategy: "{{ token_strategy }}" + header_custom_fields: "{{ header_custom_fields }}" + header_host_name: "{{ header_host_name }}" + header_source_category: "{{ header_source_category }}" + header_source_name: "{{ header_source_name }}" + ingestion_endpoint_key: "{{ ingestion_endpoint_key }}" + table_name: "{{ table_name }}" + unity_catalog_endpoint_key: "{{ unity_catalog_endpoint_key }}" + default_namespace: "{{ default_namespace }}" + source: "{{ source }}" + pipeline_type: "{{ pipeline_type }}" + processor_groups: + - display_name: "{{ display_name }}" + enabled: {{ enabled }} + id: "{{ id }}" + include: "{{ include }}" + inputs: "{{ inputs }}" + processors: "{{ processors }}" + processors: + - display_name: "{{ display_name }}" + enabled: {{ enabled }} + id: "{{ id }}" + include: "{{ include }}" + inputs: "{{ inputs }}" + processors: "{{ processors }}" + sources: + - address_key: "{{ address_key }}" + id: "{{ id }}" + tls: + ca_file: "{{ ca_file }}" + crt_file: "{{ crt_file }}" + key_file: "{{ key_file }}" + key_pass_key: "{{ key_pass_key }}" + type: "{{ type }}" + auth: + assume_role: "{{ assume_role }}" + external_id: "{{ external_id }}" + session_name: "{{ session_name }}" + compression: "{{ compression }}" + region: "{{ region }}" + url_key: "{{ url_key }}" + decoding: "{{ decoding }}" + project: "{{ project }}" + subscription: "{{ subscription }}" + auth_strategy: "{{ auth_strategy }}" + custom_key: "{{ custom_key }}" + endpoint_url_key: "{{ endpoint_url_key }}" + password_key: "{{ password_key }}" + scrape_interval_secs: {{ scrape_interval_secs }} + scrape_timeout_secs: {{ scrape_timeout_secs }} + token_key: "{{ token_key }}" + username_key: "{{ username_key }}" + valid_tokens: "{{ valid_tokens }}" + bootstrap_servers_key: "{{ bootstrap_servers_key }}" + group_id: "{{ group_id }}" + librdkafka_options: "{{ librdkafka_options }}" + sasl: + mechanism: "{{ mechanism }}" + password_key: "{{ password_key }}" + username_key: "{{ username_key }}" + topics: "{{ topics }}" + mode: "{{ mode }}" + framing: + method: "{{ method }}" + delimiter: "{{ delimiter }}" + store_hec_token: {{ store_hec_token }} + uri_key: "{{ uri_key }}" + grpc_address_key: "{{ grpc_address_key }}" + http_address_key: "{{ http_address_key }}" + use_legacy_search_syntax: {{ use_legacy_search_syntax }} + name: "{{ name }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a pipeline. + +```sql +REPLACE datadog.logs.observability_pipelines +SET +data = '{{ data }}' +WHERE +pipeline_id = '{{ pipeline_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a pipeline. + +```sql +DELETE FROM datadog.logs.observability_pipelines +WHERE pipeline_id = '{{ pipeline_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Validates a pipeline configuration without creating or updating any resources.<br />Returns a list of validation errors, if any. + +```sql +EXEC datadog.logs.observability_pipelines.validate_pipeline +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/logs/pipeline_order/index.md b/website/docs/services/logs/pipeline_order/index.md new file mode 100644 index 0000000..da87a7a --- /dev/null +++ b/website/docs/services/logs/pipeline_order/index.md @@ -0,0 +1,159 @@ +--- +title: pipeline_order +hide_title: false +hide_table_of_contents: false +keywords: + - pipeline_order + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a pipeline_order resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayOrdered Array of <PIPELINE_ID> strings, the order of pipeline IDs in the array define the overall Pipelines order for Datadog.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the current order of your pipelines.<br />This endpoint takes no JSON arguments.
pipeline_idsUpdate the order of your pipelines. Since logs are processed sequentially, reordering a pipeline may change<br />the structure and content of the data processed by other pipelines and their processors.<br /><br />**Note**: Using the `PUT` method updates your pipeline order by replacing your current order<br />with the new one sent to your Datadog organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the current order of your pipelines.<br />This endpoint takes no JSON arguments. + +```sql +SELECT +pipeline_ids +FROM datadog.logs.pipeline_order +; +``` + + + + +## `REPLACE` examples + + + + +Update the order of your pipelines. Since logs are processed sequentially, reordering a pipeline may change<br />the structure and content of the data processed by other pipelines and their processors.<br /><br />**Note**: Using the `PUT` method updates your pipeline order by replacing your current order<br />with the new one sent to your Datadog organization. + +```sql +REPLACE datadog.logs.pipeline_order +SET +pipeline_ids = '{{ pipeline_ids }}' +WHERE +pipeline_ids = '{{ pipeline_ids }}' --required +RETURNING +pipeline_ids; +``` + + diff --git a/website/docs/services/logs/pipelines/index.md b/website/docs/services/logs/pipelines/index.md new file mode 100644 index 0000000..daf1893 --- /dev/null +++ b/website/docs/services/logs/pipelines/index.md @@ -0,0 +1,477 @@ +--- +title: pipelines +hide_title: false +hide_table_of_contents: false +keywords: + - pipelines + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a pipelines resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the pipeline.
stringName of the pipeline. (example: )
stringA description of the pipeline.
objectFilter for logs.
booleanWhether or not the pipeline is enabled.
booleanWhether or not the pipeline can be edited.
arrayOrdered list of processors in this pipeline.
arrayA list of tags associated with the pipeline.
stringType of pipeline. (example: pipeline)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the pipeline.
stringName of the pipeline. (example: )
stringA description of the pipeline.
objectFilter for logs.
booleanWhether or not the pipeline is enabled.
booleanWhether or not the pipeline can be edited.
arrayOrdered list of processors in this pipeline.
arrayA list of tags associated with the pipeline.
stringType of pipeline. (example: pipeline)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
pipeline_idGet a specific pipeline from your organization.<br />This endpoint takes no JSON arguments.
Get all pipelines from your organization.<br />This endpoint takes no JSON arguments.
nameCreate a pipeline in your organization.
pipeline_id, nameUpdate a given pipeline configuration to change it’s processors or their order.<br /><br />**Note**: Using this method updates your pipeline configuration by **replacing**<br />your current configuration with the new one sent to your Datadog organization.
pipeline_idDelete a given pipeline from your organization.<br />This endpoint takes no JSON arguments.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the pipeline to delete.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a specific pipeline from your organization.<br />This endpoint takes no JSON arguments. + +```sql +SELECT +id, +name, +description, +filter, +is_enabled, +is_read_only, +processors, +tags, +type +FROM datadog.logs.pipelines +WHERE pipeline_id = '{{ pipeline_id }}' -- required +; +``` + + + +Get all pipelines from your organization.<br />This endpoint takes no JSON arguments. + +```sql +SELECT +id, +name, +description, +filter, +is_enabled, +is_read_only, +processors, +tags, +type +FROM datadog.logs.pipelines +; +``` + + + + +## `INSERT` examples + + + + +Create a pipeline in your organization. + +```sql +INSERT INTO datadog.logs.pipelines ( +description, +filter, +is_enabled, +name, +processors, +tags +) +SELECT +'{{ description }}', +'{{ filter }}', +{{ is_enabled }}, +'{{ name }}' /* required */, +'{{ processors }}', +'{{ tags }}' +RETURNING +id, +name, +description, +filter, +is_enabled, +is_read_only, +processors, +tags, +type +; +``` + + + +{`# Description fields are for documentation purposes +- name: pipelines + props: + - name: description + value: "{{ description }}" + description: | + A description of the pipeline. + - name: filter + description: | + Filter for logs. + value: + query: "{{ query }}" + - name: is_enabled + value: {{ is_enabled }} + description: | + Whether or not the pipeline is enabled. + - name: name + value: "{{ name }}" + description: | + Name of the pipeline. + - name: processors + description: | + Ordered list of processors in this pipeline. + value: + - grok: + match_rules: "{{ match_rules }}" + support_rules: "{{ support_rules }}" + is_enabled: {{ is_enabled }} + name: "{{ name }}" + samples: "{{ samples }}" + source: "{{ source }}" + type: "{{ type }}" + sources: "{{ sources }}" + override_on_conflict: {{ override_on_conflict }} + preserve_source: {{ preserve_source }} + source_type: "{{ source_type }}" + target: "{{ target }}" + target_format: "{{ target_format }}" + target_type: "{{ target_type }}" + normalize_ending_slashes: {{ normalize_ending_slashes }} + is_encoded: {{ is_encoded }} + categories: "{{ categories }}" + expression: "{{ expression }}" + is_replace_missing: {{ is_replace_missing }} + template: "{{ template }}" + description: "{{ description }}" + filter: + query: "{{ query }}" + processors: "{{ processors }}" + tags: "{{ tags }}" + default_lookup: "{{ default_lookup }}" + lookup_table: "{{ lookup_table }}" + lookup_enrichment_table: "{{ lookup_enrichment_table }}" + operation: + preserve_source: {{ preserve_source }} + source: "{{ source }}" + target: "{{ target }}" + type: "{{ type }}" + filter: "{{ filter }}" + value_to_extract: "{{ value_to_extract }}" + key_to_extract: "{{ key_to_extract }}" + override_on_conflict: {{ override_on_conflict }} + binary_to_text_encoding: "{{ binary_to_text_encoding }}" + input_representation: "{{ input_representation }}" + mappers: "{{ mappers }}" + schema: + class_name: "{{ class_name }}" + class_uid: {{ class_uid }} + profiles: + - "{{ profiles }}" + schema_type: "{{ schema_type }}" + version: "{{ version }}" + attribute_to_exclude: "{{ attribute_to_exclude }}" + - name: tags + value: + - "{{ tags }}" + description: | + A list of tags associated with the pipeline. +`} + + + + + +## `REPLACE` examples + + + + +Update a given pipeline configuration to change it’s processors or their order.<br /><br />**Note**: Using this method updates your pipeline configuration by **replacing**<br />your current configuration with the new one sent to your Datadog organization. + +```sql +REPLACE datadog.logs.pipelines +SET +description = '{{ description }}', +filter = '{{ filter }}', +is_enabled = {{ is_enabled }}, +name = '{{ name }}', +processors = '{{ processors }}', +tags = '{{ tags }}' +WHERE +pipeline_id = '{{ pipeline_id }}' --required +AND name = '{{ name }}' --required +RETURNING +id, +name, +description, +filter, +is_enabled, +is_read_only, +processors, +tags, +type; +``` + + + + +## `DELETE` examples + + + + +Delete a given pipeline from your organization.<br />This endpoint takes no JSON arguments. + +```sql +DELETE FROM datadog.logs.pipelines +WHERE pipeline_id = '{{ pipeline_id }}' --required +; +``` + + diff --git a/website/docs/services/logs/restriction_queries/index.md b/website/docs/services/logs/restriction_queries/index.md new file mode 100644 index 0000000..3d37dca --- /dev/null +++ b/website/docs/services/logs/restriction_queries/index.md @@ -0,0 +1,355 @@ +--- +title: restriction_queries +hide_title: false +hide_table_of_contents: false +keywords: + - restriction_queries + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a restriction_queries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the restriction query. (example: 79a0e60a-644a-11ea-ad29-43329f7f58b5)
objectAttributes of the restriction query.
objectRelationships of the user object.
stringRestriction query resource type. (logs_restriction_queries) (default: logs_restriction_queries, example: logs_restriction_queries)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the restriction query. (example: 79a0e60a-644a-11ea-ad29-43329f7f58b5)
objectAttributes of the restriction query.
stringRestriction queries type. (default: logs_restriction_queries, example: logs_restriction_queries)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
restriction_query_idGet a restriction query in the organization specified by the restriction query's `restriction_query_id`.
page[size], page[number]Returns all restriction queries, including their names and IDs.
Create a new restriction query for your organization.
restriction_query_idEdit a restriction query.
restriction_query_idReplace a restriction query.
restriction_query_idDeletes a restriction query.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the restriction query.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a restriction query in the organization specified by the restriction query's `restriction_query_id`. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.logs.restriction_queries +WHERE restriction_query_id = '{{ restriction_query_id }}' -- required +; +``` + + + +Returns all restriction queries, including their names and IDs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.restriction_queries +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new restriction query for your organization. + +```sql +INSERT INTO datadog.logs.restriction_queries ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: restriction_queries + props: + - name: data + description: | + Data related to the creation of a restriction query. + value: + attributes: + restriction_query: "{{ restriction_query }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Edit a restriction query. + +```sql +UPDATE datadog.logs.restriction_queries +SET +data = '{{ data }}' +WHERE +restriction_query_id = '{{ restriction_query_id }}' --required +RETURNING +data; +``` + + + + +## `REPLACE` examples + + + + +Replace a restriction query. + +```sql +REPLACE datadog.logs.restriction_queries +SET +data = '{{ data }}' +WHERE +restriction_query_id = '{{ restriction_query_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Deletes a restriction query. + +```sql +DELETE FROM datadog.logs.restriction_queries +WHERE restriction_query_id = '{{ restriction_query_id }}' --required +; +``` + + diff --git a/website/docs/services/logs/restriction_query_roles/index.md b/website/docs/services/logs/restriction_query_roles/index.md new file mode 100644 index 0000000..7555f75 --- /dev/null +++ b/website/docs/services/logs/restriction_query_roles/index.md @@ -0,0 +1,293 @@ +--- +title: restriction_query_roles +hide_title: false +hide_table_of_contents: false +keywords: + - restriction_query_roles + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a restriction_query_roles resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the restriction query. (example: 79a0e60a-644a-11ea-ad29-43329f7f58b5)
objectAttributes of the restriction query.
stringRestriction queries type. (default: logs_restriction_queries, example: logs_restriction_queries)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the role. (example: <ROLE_ID>)
objectAttributes of the role for a restriction query.
stringRoles type. (roles) (default: roles, example: roles)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
role_idGet restriction query for a given role.
restriction_query_idpage[size], page[number]Returns all roles that have a given restriction query.
restriction_query_idAdds a role to a restriction query.<br /><br />**Note**: This operation automatically grants the `logs_read_data` permission to the role if it doesn't already have it.
restriction_query_idRemoves a role from a restriction query.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the restriction query.
stringThe ID of the role.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get restriction query for a given role. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.restriction_query_roles +WHERE role_id = '{{ role_id }}' -- required +; +``` + + + +Returns all roles that have a given restriction query. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.restriction_query_roles +WHERE restriction_query_id = '{{ restriction_query_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Adds a role to a restriction query.<br /><br />**Note**: This operation automatically grants the `logs_read_data` permission to the role if it doesn't already have it. + +```sql +INSERT INTO datadog.logs.restriction_query_roles ( +data, +restriction_query_id +) +SELECT +'{{ data }}', +'{{ restriction_query_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: restriction_query_roles + props: + - name: restriction_query_id + value: "{{ restriction_query_id }}" + description: Required parameter for the restriction_query_roles resource. + - name: data + description: | + Relationship to role object. + value: + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Removes a role from a restriction query. + +```sql +DELETE FROM datadog.logs.restriction_query_roles +WHERE restriction_query_id = '{{ restriction_query_id }}' --required +; +``` + + diff --git a/website/docs/services/logs/restriction_query_users/index.md b/website/docs/services/logs/restriction_query_users/index.md new file mode 100644 index 0000000..c683b62 --- /dev/null +++ b/website/docs/services/logs/restriction_query_users/index.md @@ -0,0 +1,145 @@ +--- +title: restriction_query_users +hide_title: false +hide_table_of_contents: false +keywords: + - restriction_query_users + - logs + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a restriction_query_users resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the restriction query. (example: 79a0e60a-644a-11ea-ad29-43329f7f58b5)
objectAttributes of the restriction query.
stringRestriction queries type. (default: logs_restriction_queries, example: logs_restriction_queries)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_idGet all restriction queries for a given user.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the user.
+ +## `SELECT` examples + + + + +Get all restriction queries for a given user. + +```sql +SELECT +id, +attributes, +type +FROM datadog.logs.restriction_query_users +WHERE user_id = '{{ user_id }}' -- required +; +``` + + diff --git a/website/docs/services/metrics/active_metrics/index.md b/website/docs/services/metrics/active_metrics/index.md new file mode 100644 index 0000000..8ba7696 --- /dev/null +++ b/website/docs/services/metrics/active_metrics/index.md @@ -0,0 +1,151 @@ +--- +title: active_metrics +hide_title: false +hide_table_of_contents: false +keywords: + - active_metrics + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an active_metrics resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringTime when the metrics were active, seconds since the Unix epoch.
arrayList of metric names.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
fromhost, tag_filterGet the list of actively reporting metrics from a given time until now.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Seconds since the Unix epoch.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringHostname for filtering the list of metrics returned. If set, metrics retrieved are those with the corresponding hostname tag.
stringFilter metrics that have been submitted with the given tags. Supports boolean and wildcard expressions. Cannot be combined with other filters. (example: env IN (staging,test) AND service:web)
+ +## `SELECT` examples + + + + +Get the list of actively reporting metrics from a given time until now. + +```sql +SELECT +from, +metrics +FROM datadog.metrics.active_metrics +WHERE from = '{{ from }}' -- required +AND host = '{{ host }}' +AND tag_filter = '{{ tag_filter }}' +; +``` + + diff --git a/website/docs/services/metrics/active_tag_configurations/index.md b/website/docs/services/metrics/active_tag_configurations/index.md index f6ab581..d9b6d73 100644 --- a/website/docs/services/metrics/active_tag_configurations/index.md +++ b/website/docs/services/metrics/active_tag_configurations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an active_tag_configurations -Nameactive_tag_configurations +Name TypeResource Id @@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The metric actively queried configuration resource type. (default: actively_queried_configurations, example: actively_queried_configurations) + The metric actively queried configuration resource type. (actively_queried_configurations) (default: actively_queried_configurations, example: actively_queried_configurations) @@ -86,7 +87,7 @@ The following methods are available for this resource: - metric_name, region + metric_name window[seconds] List tags and aggregations that are actively queried on dashboards, notebooks, monitors, the Metrics Explorer, and using the API for a given metric name. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -143,7 +144,6 @@ attributes, type FROM datadog.metrics.active_tag_configurations WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required AND window[seconds] = '{{ window[seconds] }}' ; ``` diff --git a/website/docs/services/metrics/datasets/index.md b/website/docs/services/metrics/datasets/index.md index 57fd748..664c30e 100644 --- a/website/docs/services/metrics/datasets/index.md +++ b/website/docs/services/metrics/datasets/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a datasets resource. ## Overview - +
Namedatasets
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Resource type, always set to `dataset`. (default: dataset, example: dataset) + Resource type, always set to `dataset`. (dataset) (default: dataset, example: dataset) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Resource type, always set to `dataset`. (default: dataset, example: dataset) + Resource type, always set to `dataset`. (dataset) (default: dataset, example: dataset) @@ -116,35 +117,35 @@ The following methods are available for this resource: - dataset_id, region + dataset_id Retrieves the dataset associated with the ID. - region + Get all datasets that have been configured for an organization. - region, data__data + data Create a dataset with the configurations in the request. - dataset_id, region, data__data + dataset_id, data Edits the dataset associated with the ID. - dataset_id, region + dataset_id Deletes the dataset associated with the ID. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of a defined dataset. (example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.metrics.datasets WHERE dataset_id = '{{ dataset_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.metrics.datasets -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a dataset with the configurations in the request. ```sql INSERT INTO datadog.metrics.datasets ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,15 +243,10 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: datasets props: - - name: region - value: string - description: Required parameter for the datasets resource. - name: data - value: object description: | **Datasets Object Constraints** - **Tag limit per dataset**: @@ -265,7 +257,17 @@ data - **Tag value uniqueness**: - Tag values must be unique within a single dataset. - A tag value used in one dataset cannot be reused in another dataset of the same telemetry type. -``` + value: + attributes: + name: "{{ name }}" + principals: + - "{{ principals }}" + product_filters: + - filters: "{{ filters }}" + product: "{{ product }}" + type: "{{ type }}" +`} + @@ -285,11 +287,10 @@ Edits the dataset associated with the ID. ```sql REPLACE datadog.metrics.datasets SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE dataset_id = '{{ dataset_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -312,7 +313,6 @@ Deletes the dataset associated with the ID. ```sql DELETE FROM datadog.metrics.datasets WHERE dataset_id = '{{ dataset_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/metrics/ddsql_queries/index.md b/website/docs/services/metrics/ddsql_queries/index.md new file mode 100644 index 0000000..0bdeb1e --- /dev/null +++ b/website/docs/services/metrics/ddsql_queries/index.md @@ -0,0 +1,128 @@ +--- +title: ddsql_queries +hide_title: false +hide_table_of_contents: false +keywords: + - ddsql_queries + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ddsql_queries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataSubmit a DDSQL statement and return either a `running` state with an opaque `query_id`<br />for the client to poll, or a `completed` state with the column-major result set inlined<br />when the query finishes quickly enough to be served synchronously.
dataPoll a previously submitted DDSQL query for results. Pass the opaque `query_id` returned<br />by a prior `ExecuteDdsqlTabularQuery` (or by a prior `FetchDdsqlTabularQuery` that<br />returned `state: running`) and the server returns either a `running` state to poll again<br />or a `completed` state with the column-major result set inlined.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Submit a DDSQL statement and return either a `running` state with an opaque `query_id`<br />for the client to poll, or a `completed` state with the column-major result set inlined<br />when the query finishes quickly enough to be served synchronously. + +```sql +EXEC datadog.metrics.ddsql_queries.execute_ddsql_tabular_query +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Poll a previously submitted DDSQL query for results. Pass the opaque `query_id` returned<br />by a prior `ExecuteDdsqlTabularQuery` (or by a prior `FetchDdsqlTabularQuery` that<br />returned `state: running`) and the server returns either a `running` state to poll again<br />or a `completed` state with the column-major result set inlined. + +```sql +EXEC datadog.metrics.ddsql_queries.fetch_ddsql_tabular_query +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/metrics/distribution_points/index.md b/website/docs/services/metrics/distribution_points/index.md new file mode 100644 index 0000000..5270247 --- /dev/null +++ b/website/docs/services/metrics/distribution_points/index.md @@ -0,0 +1,113 @@ +--- +title: distribution_points +hide_title: false +hide_table_of_contents: false +keywords: + - distribution_points + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a distribution_points resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
seriesContent-EncodingThe distribution points end-point allows you to post distribution data that can be graphed on Datadog’s dashboards.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringHTTP header used to compress the media-type.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +The distribution points end-point allows you to post distribution data that can be graphed on Datadog’s dashboards. + +```sql +EXEC datadog.metrics.distribution_points.submit_distribution_points +@Content-Encoding='{{ Content-Encoding }}' +@@json= +'{ +"series": "{{ series }}" +}' +; +``` + + diff --git a/website/docs/services/metrics/historical_metrics_configurations/index.md b/website/docs/services/metrics/historical_metrics_configurations/index.md new file mode 100644 index 0000000..9e2d7ff --- /dev/null +++ b/website/docs/services/metrics/historical_metrics_configurations/index.md @@ -0,0 +1,221 @@ +--- +title: historical_metrics_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - historical_metrics_configurations + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a historical_metrics_configurations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name, used as the resource ID. (example: dd.test.metric)
objectAttributes of a historical metrics configuration.
stringThe historical metrics configuration resource type. (historical_metrics_configurations) (default: historical_metrics_configurations, example: historical_metrics_configurations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_nameGet the historical metrics ingestion configuration for a metric. Existence of the<br />resource means historical metrics ingestion is enabled; returns 404 when it is not<br />enabled for the metric.
dataEnable historical metrics ingestion (late data ingestion) for a metric. Idempotent:<br />enabling an already-enabled metric returns 200 instead of 201. Not supported for<br />distribution metrics, metrics with an existing tag configuration, or most standard<br />(non-custom) metrics.
metric_nameDisable historical metrics ingestion for a metric. Idempotent: always returns 204,<br />whether or not the configuration existed or the metric itself still exists, so that<br />Terraform destroy succeeds for a metric removed out-of-band.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the metric. (example: dist.http.endpoint.request)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the historical metrics ingestion configuration for a metric. Existence of the<br />resource means historical metrics ingestion is enabled; returns 404 when it is not<br />enabled for the metric. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.historical_metrics_configurations +WHERE metric_name = '{{ metric_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Enable historical metrics ingestion (late data ingestion) for a metric. Idempotent:<br />enabling an already-enabled metric returns 200 instead of 201. Not supported for<br />distribution metrics, metrics with an existing tag configuration, or most standard<br />(non-custom) metrics. + +```sql +INSERT INTO datadog.metrics.historical_metrics_configurations ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: historical_metrics_configurations + props: + - name: data + description: | + Data object for enabling historical metrics ingestion for a metric. + value: + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Disable historical metrics ingestion for a metric. Idempotent: always returns 204,<br />whether or not the configuration existed or the metric itself still exists, so that<br />Terraform destroy succeeds for a metric removed out-of-band. + +```sql +DELETE FROM datadog.metrics.historical_metrics_configurations +WHERE metric_name = '{{ metric_name }}' --required +; +``` + + diff --git a/website/docs/services/metrics/index.md b/website/docs/services/metrics/index.md index 48da231..ed69b02 100644 --- a/website/docs/services/metrics/index.md +++ b/website/docs/services/metrics/index.md @@ -18,24 +18,32 @@ metrics service documentation. :::info[Service Summary] -total resources: __10__ +total resources: __18__ ::: ## Resources \ No newline at end of file diff --git a/website/docs/services/metrics/metric_metadata/index.md b/website/docs/services/metrics/metric_metadata/index.md new file mode 100644 index 0000000..9044109 --- /dev/null +++ b/website/docs/services/metrics/metric_metadata/index.md @@ -0,0 +1,212 @@ +--- +title: metric_metadata +hide_title: false +hide_table_of_contents: false +keywords: + - metric_metadata + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a metric_metadata resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA more human-readable and abbreviated version of the metric name.
stringMetric description.
stringName of the integration that sent the metric if applicable.
stringPer unit of the metric such as `second` in `bytes per second`. (example: second)
integer (int64)StatsD flush interval of the metric in seconds if applicable.
stringMetric type such as `gauge` or `rate`. (example: count)
stringPrimary unit of the metric such as `byte` or `operation`. (example: byte)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_nameGet metadata about a specific metric.
metric_nameEdit metadata of a specific metric. Find out more about [supported types](https:​//docs.datadoghq.com/developers/metrics).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the metric for which to edit metadata.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get metadata about a specific metric. + +```sql +SELECT +short_name, +description, +integration, +per_unit, +statsd_interval, +type, +unit +FROM datadog.metrics.metric_metadata +WHERE metric_name = '{{ metric_name }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Edit metadata of a specific metric. Find out more about [supported types](https://docs.datadoghq.com/developers/metrics). + +```sql +REPLACE datadog.metrics.metric_metadata +SET +description = '{{ description }}', +per_unit = '{{ per_unit }}', +short_name = '{{ short_name }}', +statsd_interval = {{ statsd_interval }}, +type = '{{ type }}', +unit = '{{ unit }}' +WHERE +metric_name = '{{ metric_name }}' --required +RETURNING +short_name, +description, +integration, +per_unit, +statsd_interval, +type, +unit; +``` + + diff --git a/website/docs/services/metrics/metrics/index.md b/website/docs/services/metrics/metrics/index.md index 5df8894..1fc815b 100644 --- a/website/docs/services/metrics/metrics/index.md +++ b/website/docs/services/metrics/metrics/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a metrics resource. ## Overview - +
Namemetrics
Name
TypeResource
Id
@@ -52,23 +53,23 @@ The following methods are available for this resource: - region, data__series - Content-Encoding - The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards.
The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes).

If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect:

- 64 bits for the timestamp
- 64 bits for the value
- 20 bytes for the metric names
- 50 bytes for the timeseries
- The full payload is approximately 100 bytes.

Host name is one of the resources in the Resources field. + series + content-_encoding + The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards.<br />The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes).<br /><br />If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect:<br /><br />- 64 bits for the timestamp<br />- 64 bits for the value<br />- 20 bytes for the metric names<br />- 50 bytes for the timeseries<br />- The full payload is approximately 100 bytes.<br /><br />Host name is one of the resources in the Resources field. - region, data + data - Query scalar values (as seen on Query Value, Table, and Toplist widgets).
Multiple data sources are supported with the ability to
process the data using formulas and functions. + Query scalar values (as seen on Query Value, Table, and Toplist widgets).<br />Multiple data sources are supported with the ability to<br />process the data using formulas and functions. - region, data + data - Query timeseries data across various data sources and
process the data by applying formulas and functions. + Query timeseries data across various data sources and<br />process the data by applying formulas and functions. Datadog recommends<br />using this endpoint over the v1 `/api/v1/query` endpoint for querying<br />timeseries data. @@ -86,15 +87,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. - - + + string - HTTP header used to compress the media-type. + HTTP header used to compress the media-type. (wire: Content-Encoding) @@ -110,18 +111,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards.
The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes).

If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect:

- 64 bits for the timestamp
- 64 bits for the value
- 20 bytes for the metric names
- 50 bytes for the timeseries
- The full payload is approximately 100 bytes.

Host name is one of the resources in the Resources field. +The metrics end-point allows you to post time-series data that can be graphed on Datadog’s dashboards.<br />The maximum payload size is 500 kilobytes (512000 bytes). Compressed payloads must have a decompressed size of less than 5 megabytes (5242880 bytes).<br /><br />If you’re submitting metrics directly to the Datadog API without using DogStatsD, expect:<br /><br />- 64 bits for the timestamp<br />- 64 bits for the value<br />- 20 bytes for the metric names<br />- 50 bytes for the timeseries<br />- The full payload is approximately 100 bytes.<br /><br />Host name is one of the resources in the Resources field. ```sql INSERT INTO datadog.metrics.metrics ( -data__series, -region, -Content-Encoding +series, +content-_encoding ) SELECT '{{ series }}' /* required */, -'{{ region }}', -'{{ Content-Encoding }}' +'{{ content-_encoding }}' RETURNING errors ; @@ -129,27 +128,40 @@ errors
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: metrics props: - - name: region - value: string - description: Required parameter for the metrics resource. - name: series - value: array description: | A list of timeseries to submit to Datadog. - - name: Content-Encoding - value: string + value: + - interval: {{ interval }} + metadata: + origin: + metric_type: {{ metric_type }} + product: {{ product }} + service: {{ service }} + metric: "{{ metric }}" + points: "{{ points }}" + resources: "{{ resources }}" + source_type_name: "{{ source_type_name }}" + tags: "{{ tags }}" + type: {{ type }} + unit: "{{ unit }}" + - name: content-_encoding + value: "{{ content-_encoding }}" description: HTTP header used to compress the media-type. -``` + description: HTTP header used to compress the media-type. +`} + ## Lifecycle Methods +EXEC variables use wire (API) names. + -Query scalar values (as seen on Query Value, Table, and Toplist widgets).
Multiple data sources are supported with the ability to
process the data using formulas and functions. +Query scalar values (as seen on Query Value, Table, and Toplist widgets).<br />Multiple data sources are supported with the ability to<br />process the data using formulas and functions. ```sql EXEC datadog.metrics.metrics.query_scalar_data -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -173,11 +184,10 @@ EXEC datadog.metrics.metrics.query_scalar_data
-Query timeseries data across various data sources and
process the data by applying formulas and functions. +Query timeseries data across various data sources and<br />process the data by applying formulas and functions. Datadog recommends<br />using this endpoint over the v1 `/api/v1/query` endpoint for querying<br />timeseries data. ```sql EXEC datadog.metrics.metrics.query_timeseries_data -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" diff --git a/website/docs/services/metrics/metrics_output_series/index.md b/website/docs/services/metrics/metrics_output_series/index.md index d55827f..7dd5c0e 100644 --- a/website/docs/services/metrics/metrics_output_series/index.md +++ b/website/docs/services/metrics/metrics_output_series/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a metrics_output_series re ## Overview - +
Namemetrics_output_series
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The metric estimate resource type. (default: metric_cardinality_estimate, example: metric_cardinality_estimate) + The metric estimate resource type. (metric_cardinality_estimate) (default: metric_cardinality_estimate, example: metric_cardinality_estimate) @@ -86,8 +87,8 @@ The following methods are available for this resource: - metric_name, region - filter[groups], filter[hours_ago], filter[num_aggregations], filter[pct], filter[timespan_h] + metric_name + filter[groups], filter[exclude_tags_mode], filter[hours_ago], filter[num_aggregations], filter[pct], filter[timespan_h] Returns the estimated cardinality for a metric with a given tag, percentile and number of aggregations configuration using Metrics without Limits™. @@ -111,15 +112,20 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + boolean + When `true`, `filter[groups]` is treated as an exclude list instead of an include list. Defaults to `false`. (example: false) string - Filtered tag keys that the metric is configured to query with. (example: app,host) + Comma-separated list of tag keys that the metric is configured to query with. For example: `filter[groups]=app,host`. (example: app,host) @@ -134,7 +140,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# boolean - A boolean, for distribution metrics only, to estimate cardinality if the metric includes additional percentile aggregators. (example: true) + Deprecated. This query parameter has no effect on the estimate. (example: true) @@ -163,8 +169,8 @@ attributes, type FROM datadog.metrics.metrics_output_series WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required AND filter[groups] = '{{ filter[groups] }}' +AND filter[exclude_tags_mode] = '{{ filter[exclude_tags_mode] }}' AND filter[hours_ago] = '{{ filter[hours_ago] }}' AND filter[num_aggregations] = '{{ filter[num_aggregations] }}' AND filter[pct] = '{{ filter[pct] }}' diff --git a/website/docs/services/metrics/related_assets/index.md b/website/docs/services/metrics/related_assets/index.md index e60fc22..edaa7f6 100644 --- a/website/docs/services/metrics/related_assets/index.md +++ b/website/docs/services/metrics/related_assets/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a related_assets resource. ## Overview - +
Namerelated_assets
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The metric resource type. (default: metrics, example: metrics) + The metric resource type. (metrics) (default: metrics, example: metrics) @@ -86,7 +87,7 @@ The following methods are available for this resource: - metric_name, region + metric_name Returns dashboards, monitors, notebooks, and SLOs that a metric is stored in, if any. Updated every 24 hours. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -138,7 +139,6 @@ relationships, type FROM datadog.metrics.related_assets WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/metrics/spans/index.md b/website/docs/services/metrics/spans/index.md index c7ed4fb..e056514 100644 --- a/website/docs/services/metrics/spans/index.md +++ b/website/docs/services/metrics/spans/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a spans resource. ## Overview - +
Namespans
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of the span. (default: spans, example: spans) + Type of the span. (spans) (default: spans, example: spans) @@ -86,23 +87,23 @@ The following methods are available for this resource: - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - List endpoint returns spans that match a span search query.
[Results are paginated][1].

Use this endpoint to see your latest spans.
This endpoint is rate limited to `300` requests per hour.

[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api + List endpoint returns spans that match a span search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to see your latest spans.<br />This endpoint is rate limited to `300` requests per hour.<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api - region - List endpoint returns spans that match a span search query.
[Results are paginated][1].

Use this endpoint to build complex spans filtering and search.
This endpoint is rate limited to `300` requests per hour.

[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api + + List endpoint returns spans that match a span search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to build complex spans filtering and search.<br />This endpoint is rate limited to `300` requests per hour.<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api - region - The API endpoint to aggregate spans into buckets and compute metrics and timeseries.
This endpoint is rate limited to `300` requests per hour. + + The API endpoint to aggregate spans into buckets and compute metrics and timeseries.<br />This endpoint is rate limited to `300` requests per hour. @@ -120,10 +121,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -168,7 +169,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List endpoint returns spans that match a span search query.
[Results are paginated][1].

Use this endpoint to see your latest spans.
This endpoint is rate limited to `300` requests per hour.

[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api +List endpoint returns spans that match a span search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to see your latest spans.<br />This endpoint is rate limited to `300` requests per hour.<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api ```sql SELECT @@ -176,8 +177,7 @@ id, attributes, type FROM datadog.metrics.spans -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -200,16 +200,14 @@ AND page[limit] = '{{ page[limit] }}' > -List endpoint returns spans that match a span search query.
[Results are paginated][1].

Use this endpoint to build complex spans filtering and search.
This endpoint is rate limited to `300` requests per hour.

[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api +List endpoint returns spans that match a span search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to build complex spans filtering and search.<br />This endpoint is rate limited to `300` requests per hour.<br /><br />[1]: /logs/guide/collect-multiple-logs-with-pagination?tab=v2api ```sql INSERT INTO datadog.metrics.spans ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data, links, @@ -219,24 +217,36 @@ meta
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: spans props: - - name: region - value: string - description: Required parameter for the spans resource. - name: data - value: object description: | The object containing the query content. -``` + value: + attributes: + filter: + from: "{{ from }}" + query: "{{ query }}" + to: "{{ to }}" + options: + timeOffset: {{ timeOffset }} + timezone: "{{ timezone }}" + page: + cursor: "{{ cursor }}" + limit: {{ limit }} + sort: "{{ sort }}" + type: "{{ type }}" +`} +
## Lifecycle Methods +EXEC variables use wire (API) names. + -The API endpoint to aggregate spans into buckets and compute metrics and timeseries.
This endpoint is rate limited to `300` requests per hour. +The API endpoint to aggregate spans into buckets and compute metrics and timeseries.<br />This endpoint is rate limited to `300` requests per hour. ```sql EXEC datadog.metrics.spans.aggregate_spans -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" diff --git a/website/docs/services/metrics/tag_cardinality_details/index.md b/website/docs/services/metrics/tag_cardinality_details/index.md index 49f96bc..6abf1bf 100644 --- a/website/docs/services/metrics/tag_cardinality_details/index.md +++ b/website/docs/services/metrics/tag_cardinality_details/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a tag_cardinality_details ## Overview - +
Nametag_cardinality_details
Name
TypeResource
Id
@@ -86,7 +87,7 @@ The following methods are available for this resource: - metric_name, region + metric_name Returns the cardinality details of tags for a specific metric. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -138,7 +139,6 @@ attributes, type FROM datadog.metrics.tag_cardinality_details WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/metrics/tag_configurations/index.md b/website/docs/services/metrics/tag_configurations/index.md index 27233a6..765f02a 100644 --- a/website/docs/services/metrics/tag_configurations/index.md +++ b/website/docs/services/metrics/tag_configurations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a tag_configurations resou ## Overview - +
Nametag_configurations
Name
TypeResource
Id
@@ -59,10 +60,15 @@ The following fields are returned by `SELECT` queries: object Object containing the definition of a metric tag configuration attributes. + + + object + Relationships for a metric. + string - The metric tag configuration resource type. (default: manage_tags, example: manage_tags) + The metric tag configuration resource type. (manage_tags) (default: manage_tags, example: manage_tags) @@ -78,6 +84,26 @@ The following fields are returned by `SELECT` queries: + + + string + The metric name for this resource. (example: test.metric.latency) + + + + object + Object containing the definition of a metric tag configuration attributes. + + + + object + Relationships for a metric. + + + + string + The metric resource type. (metrics) (default: metrics, example: metrics) + @@ -101,51 +127,37 @@ The following methods are available for this resource: - metric_name, region + metric_name - Returns the tag configuration for the given metric name. + Returns the tag configuration for the given metric name.<br /><br />A metric may exist and submit data without having a tag configuration. If no tag configuration exists<br />for the metric, this endpoint returns `404 Not Found`. This response does not indicate that the metric<br />itself is missing. - region - filter[configured], filter[tags_configured], filter[metric_type], filter[include_percentiles], filter[queried], filter[tags], filter[related_assets], window[seconds], page[size], page[cursor] - Returns all metrics that can be configured in the Metrics Summary page or with Metrics without Limits™ (matching additional filters if specified).
Optionally, paginate by using the `page[cursor]` and/or `page[size]` query parameters.
To fetch the first page, pass in a query parameter with either a valid `page[size]` or an empty cursor like `page[cursor]=`. To fetch the next page, pass in the `next_cursor` value from the response as the new `page[cursor]` value.
Once the `meta.pagination.next_cursor` value is null, all pages have been retrieved. - - - - - metric_name, region, data__data - Create and define a list of queryable tag keys for an existing count/gauge/rate/distribution metric.
Optionally, include percentile aggregations on any distribution metric. By setting `exclude_tags_mode`
to true, the behavior is changed from an allow-list to a deny-list, and tags in the defined list are
not queryable. Can only be used with application keys of users with the `Manage Tags for Metrics`
permission. + filter[configured], filter[is_configurable], filter[tags_configured], filter[metric_type], filter[include_percentiles], filter[queried], filter[queried][window][seconds], filter[tags], filter[related_assets], include, sort, window[seconds], page[size], page[cursor] + Get a list of actively reporting metrics for your organization. Pagination is optional using the `page[cursor]` and `page[size]` query parameters.<br /><br />Query parameters use bracket notation (for example, `filter[tags]`, `filter[queried][window][seconds]`). Pass them as standard URL query strings, URL-encoding the brackets if your client does not handle them. For example: `GET /api/v2/metrics?filter[tags]=env:prod&window[seconds]=86400&page[size]=500`. - + - region, data__data + metric_name, data - Create and define a list of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics.
Metrics are selected by passing a metric name prefix. Use the Delete method of this API path to remove tag configurations.
Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app.
If multiple calls include the same metric, the last configuration applied (not by submit order) is used, do not
expect deterministic ordering of concurrent calls. The `exclude_tags_mode` value will set all metrics that match the prefix to
the same exclusion state, metric tag configurations do not support mixed inclusion and exclusion for tags on the same metric.
Can only be used with application keys of users with the `Manage Tags for Metrics` permission. + Create and define a list of queryable tag keys for an existing count/gauge/rate/distribution metric.<br />Optionally, include percentile aggregations on any distribution metric. By setting `exclude_tags_mode`<br />to true, the behavior is changed from an allow-list to a deny-list, and tags in the defined list are<br />not queryable. Can only be used with application keys of users with the `Manage Tags for Metrics`<br />permission. - metric_name, region, data__data + metric_name, data - Update the tag configuration of a metric or percentile aggregations of a distribution metric or custom aggregations
of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true the behavior is changed
from an allow-list to a deny-list, and tags in the defined list will not be queryable.
Can only be used with application keys from users with the `Manage Tags for Metrics` permission. This endpoint requires
a tag configuration to be created first. + Update the tag configuration of a metric or percentile aggregations of a distribution metric or custom aggregations<br />of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true the behavior is changed<br />from an allow-list to a deny-list, and tags in the defined list will not be queryable.<br />Can only be used with application keys from users with the `Manage Tags for Metrics` permission. This endpoint requires<br />a tag configuration to be created first. - metric_name, region + metric_name - Deletes a metric's tag configuration. Can only be used with application
keys from users with the `Manage Tags for Metrics` permission. - - - - - region - - Delete all custom lists of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics.
Metrics are selected by passing a metric name prefix.
Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app.
Can only be used with application keys of users with the `Manage Tags for Metrics` permission. + Deletes a metric's tag configuration. Can only be used with application<br />keys from users with the `Manage Tags for Metrics` permission.<br />Note: This operation is irreversible. @@ -168,60 +180,80 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. boolean - Filter custom metrics that have configured tags. (example: true) + Only return custom metrics that have been configured (`true`) or not configured (`false`) with Metrics Without Limits. (example: true) boolean - Filter distributions with additional percentile aggregations enabled or disabled. (example: true) + Only return distribution metrics that have percentile aggregations enabled (true) or disabled (false). (example: true) + + + + boolean + Only return metrics that are eligible (`true`) or ineligible (`false`) for configuration with Metrics Without Limits. (example: true) string - Filter metrics by metric type. + Only return metrics of the given metric type. boolean - (Preview) Filter custom metrics that have or have not been queried in the specified window[seconds]. If no window is provided or the window is less than 2 hours, a default of 2 hours will be applied. (example: true) + Only return metrics that have been queried (true) or not queried (false) in the look back window. Set the window with `filter[queried][window][seconds]`; if omitted, a default window is used. (example: true) + + + + integer (int64) + This parameter has no effect unless `filter[queried]` is also set. Only return metrics that have been queried or not queried in the specified window. The default value is 2,592,000 seconds (30 days), the maximum value is 15,552,000 seconds (180 days), and the minimum value is 1 second. For example: `filter[queried]=true&filter[queried][window][seconds]=604800`. (example: 15552000) boolean - (Preview) Filter metrics that are used in dashboards, monitors, notebooks, SLOs. (example: true) + Only return metrics that are used in at least one dashboard, monitor, notebook, or SLO. (example: true) string - Filter metrics that have been submitted with the given tags. Supports boolean and wildcard expressions. Can only be combined with the filter[queried] filter. (example: env IN (staging,test) AND service:web) + Only return metrics that were submitted with tags matching this expression. You can use AND, OR, IN, and wildcards. For example: `filter[tags]=env IN (staging,test) AND service:web*`. (example: env IN (staging,test) AND service:web*) string - Filter tag configurations by configured tags. (example: app) + Only return metrics that have the given tag key(s) in their Metrics Without Limits configuration (included or excluded). (example: app,env) + + + + string + Include related resources in the response. Set to `metric_volumes` to include indexed and ingested volume counts for each metric. (example: metric_volumes) string - String to query the next page of results. This key is provided with each valid response from the API in `meta.pagination.next_cursor`. Once the `meta.pagination.next_cursor` key is null, all pages have been retrieved. + Cursor for pagination. Use `page[size]` to opt-in to pagination and get the first page; for subsequent pages, use the value from `meta.pagination.next_cursor` in the response. Pagination is complete when `next_cursor` is null. integer (int32) - Maximum number of results returned. + Maximum number of results per page. Send `page[size]` on the first request to opt in to pagination. On each subsequent request, send `page[cursor]` set to the value of `meta.pagination.next_cursor` from the previous response. The default value is 10000, the maximum value is 10000, and the minimum value is 1. + + + + string + Sort results by metric volume. Prefix a key with `-` for descending order. Supported keys: `metric_volumes.indexed_volume`, `metric_volumes.ingested_volume`, `metric_volumes.indexed_volume_delta`, `metric_volumes.ingested_volume_delta`. Requires a paginated request (`page[size]` or `page[cursor]`). (example: -metric_volumes.indexed_volume) integer (int64) - The number of seconds of look back (from now) to apply to a filter[tag] or filter[queried] query. Default value is 3600 (1 hour), maximum value is 2,592,000 (30 days). (example: 3600) + Only return metrics that have been actively reporting in the specified window. The default value is 3600 seconds (1 hour), the maximum value is 2,592,000 seconds (30 days), and the minimum value is 1 second. (example: 3600) @@ -237,35 +269,41 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Returns the tag configuration for the given metric name. +Returns the tag configuration for the given metric name.<br /><br />A metric may exist and submit data without having a tag configuration. If no tag configuration exists<br />for the metric, this endpoint returns `404 Not Found`. This response does not indicate that the metric<br />itself is missing. ```sql SELECT id, attributes, +relationships, type FROM datadog.metrics.tag_configurations WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required ; ``` -Returns all metrics that can be configured in the Metrics Summary page or with Metrics without Limits™ (matching additional filters if specified).
Optionally, paginate by using the `page[cursor]` and/or `page[size]` query parameters.
To fetch the first page, pass in a query parameter with either a valid `page[size]` or an empty cursor like `page[cursor]=`. To fetch the next page, pass in the `next_cursor` value from the response as the new `page[cursor]` value.
Once the `meta.pagination.next_cursor` value is null, all pages have been retrieved. +Get a list of actively reporting metrics for your organization. Pagination is optional using the `page[cursor]` and `page[size]` query parameters.<br /><br />Query parameters use bracket notation (for example, `filter[tags]`, `filter[queried][window][seconds]`). Pass them as standard URL query strings, URL-encoding the brackets if your client does not handle them. For example: `GET /api/v2/metrics?filter[tags]=env:prod&window[seconds]=86400&page[size]=500`. ```sql SELECT -* +id, +attributes, +relationships, +type FROM datadog.metrics.tag_configurations -WHERE region = '{{ region }}' -- required -AND filter[configured] = '{{ filter[configured] }}' +WHERE filter[configured] = '{{ filter[configured] }}' +AND filter[is_configurable] = '{{ filter[is_configurable] }}' AND filter[tags_configured] = '{{ filter[tags_configured] }}' AND filter[metric_type] = '{{ filter[metric_type] }}' AND filter[include_percentiles] = '{{ filter[include_percentiles] }}' AND filter[queried] = '{{ filter[queried] }}' +AND filter[queried][window][seconds] = '{{ filter[queried][window][seconds] }}' AND filter[tags] = '{{ filter[tags] }}' AND filter[related_assets] = '{{ filter[related_assets] }}' +AND include = '{{ include }}' +AND sort = '{{ sort }}' AND window[seconds] = '{{ window[seconds] }}' AND page[size] = '{{ page[size] }}' AND page[cursor] = '{{ page[cursor] }}' @@ -281,41 +319,21 @@ AND page[cursor] = '{{ page[cursor] }}' defaultValue="create_tag_configuration" values={[ { label: 'create_tag_configuration', value: 'create_tag_configuration' }, - { label: 'create_bulk_tags_metrics_configuration', value: 'create_bulk_tags_metrics_configuration' }, { label: 'Manifest', value: 'manifest' } ]} > -Create and define a list of queryable tag keys for an existing count/gauge/rate/distribution metric.
Optionally, include percentile aggregations on any distribution metric. By setting `exclude_tags_mode`
to true, the behavior is changed from an allow-list to a deny-list, and tags in the defined list are
not queryable. Can only be used with application keys of users with the `Manage Tags for Metrics`
permission. +Create and define a list of queryable tag keys for an existing count/gauge/rate/distribution metric.<br />Optionally, include percentile aggregations on any distribution metric. By setting `exclude_tags_mode`<br />to true, the behavior is changed from an allow-list to a deny-list, and tags in the defined list are<br />not queryable. Can only be used with application keys of users with the `Manage Tags for Metrics`<br />permission. ```sql INSERT INTO datadog.metrics.tag_configurations ( -data__data, -metric_name, -region +data, +metric_name ) SELECT '{{ data }}' /* required */, -'{{ metric_name }}', -'{{ region }}' -RETURNING -data -; -``` -
- - -Create and define a list of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics.
Metrics are selected by passing a metric name prefix. Use the Delete method of this API path to remove tag configurations.
Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app.
If multiple calls include the same metric, the last configuration applied (not by submit order) is used, do not
expect deterministic ordering of concurrent calls. The `exclude_tags_mode` value will set all metrics that match the prefix to
the same exclusion state, metric tag configurations do not support mixed inclusion and exclusion for tags on the same metric.
Can only be used with application keys of users with the `Manage Tags for Metrics` permission. - -```sql -INSERT INTO datadog.metrics.tag_configurations ( -data__data, -region -) -SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ metric_name }}' RETURNING data ; @@ -323,21 +341,29 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: tag_configurations props: - name: metric_name - value: string - description: Required parameter for the tag_configurations resource. - - name: region - value: string + value: "{{ metric_name }}" description: Required parameter for the tag_configurations resource. - name: data - value: object description: | - Request object to bulk configure tags for metrics matching the given prefix. -``` + Object for a single metric to be configure tags on. + value: + attributes: + aggregations: + - space: "{{ space }}" + time: "{{ time }}" + exclude_tags_mode: {{ exclude_tags_mode }} + include_percentiles: {{ include_percentiles }} + metric_type: "{{ metric_type }}" + tags: + - "{{ tags }}" + id: "{{ id }}" + type: "{{ type }}" +`} +
@@ -352,16 +378,15 @@ data > -Update the tag configuration of a metric or percentile aggregations of a distribution metric or custom aggregations
of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true the behavior is changed
from an allow-list to a deny-list, and tags in the defined list will not be queryable.
Can only be used with application keys from users with the `Manage Tags for Metrics` permission. This endpoint requires
a tag configuration to be created first. +Update the tag configuration of a metric or percentile aggregations of a distribution metric or custom aggregations<br />of a count, rate, or gauge metric. By setting `exclude_tags_mode` to true the behavior is changed<br />from an allow-list to a deny-list, and tags in the defined list will not be queryable.<br />Can only be used with application keys from users with the `Manage Tags for Metrics` permission. This endpoint requires<br />a tag configuration to be created first. ```sql UPDATE datadog.metrics.tag_configurations SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE metric_name = '{{ metric_name }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -374,28 +399,16 @@ data; -Deletes a metric's tag configuration. Can only be used with application
keys from users with the `Manage Tags for Metrics` permission. +Deletes a metric's tag configuration. Can only be used with application<br />keys from users with the `Manage Tags for Metrics` permission.<br />Note: This operation is irreversible. ```sql DELETE FROM datadog.metrics.tag_configurations WHERE metric_name = '{{ metric_name }}' --required -AND region = '{{ region }}' --required -; -``` -
- - -Delete all custom lists of queryable tag keys for a set of existing count, gauge, rate, and distribution metrics.
Metrics are selected by passing a metric name prefix.
Results can be sent to a set of account email addresses, just like the same operation in the Datadog web app.
Can only be used with application keys of users with the `Manage Tags for Metrics` permission. - -```sql -DELETE FROM datadog.metrics.tag_configurations -WHERE region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/metrics/tag_indexing_rule_exemptions/index.md b/website/docs/services/metrics/tag_indexing_rule_exemptions/index.md new file mode 100644 index 0000000..08c997b --- /dev/null +++ b/website/docs/services/metrics/tag_indexing_rule_exemptions/index.md @@ -0,0 +1,227 @@ +--- +title: tag_indexing_rule_exemptions +hide_title: false +hide_table_of_contents: false +keywords: + - tag_indexing_rule_exemptions + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_indexing_rule_exemptions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe metric name, used as the resource ID. (example: dd.test.metric)
objectAttributes of a tag indexing rule exemption.
stringThe tag indexing rule exemption resource type. (tag_indexing_rule_exemptions) (default: tag_indexing_rule_exemptions, example: tag_indexing_rule_exemptions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
metric_nameReturns why a metric is excluded from tag indexing rules.<br />Returns 200 with `kind=exemption` when an explicit exemption exists, 200 with<br />`kind=legacy_tag_configuration` when the metric has a legacy tag configuration acting as an<br />implicit exclusion, or 404 when neither applies.
metric_name, dataExempt a metric from all tag indexing rules. The response includes the created<br />exemption resource. Requires the `Manage Tags for Metrics` permission.
metric_nameRemove a metric's exemption from tag indexing rules. Idempotent: returns 204 whether or not<br />an exemption existed. Any associated legacy tag configuration record is also removed.<br />Requires the `Manage Tags for Metrics` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the metric. (example: dist.http.endpoint.request)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Returns why a metric is excluded from tag indexing rules.<br />Returns 200 with `kind=exemption` when an explicit exemption exists, 200 with<br />`kind=legacy_tag_configuration` when the metric has a legacy tag configuration acting as an<br />implicit exclusion, or 404 when neither applies. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.tag_indexing_rule_exemptions +WHERE metric_name = '{{ metric_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Exempt a metric from all tag indexing rules. The response includes the created<br />exemption resource. Requires the `Manage Tags for Metrics` permission. + +```sql +INSERT INTO datadog.metrics.tag_indexing_rule_exemptions ( +data, +metric_name +) +SELECT +'{{ data }}' /* required */, +'{{ metric_name }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: tag_indexing_rule_exemptions + props: + - name: metric_name + value: "{{ metric_name }}" + description: Required parameter for the tag_indexing_rule_exemptions resource. + - name: data + description: | + Data object for creating a tag indexing rule exemption. + value: + attributes: + reason: "{{ reason }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Remove a metric's exemption from tag indexing rules. Idempotent: returns 204 whether or not<br />an exemption existed. Any associated legacy tag configuration record is also removed.<br />Requires the `Manage Tags for Metrics` permission. + +```sql +DELETE FROM datadog.metrics.tag_indexing_rule_exemptions +WHERE metric_name = '{{ metric_name }}' --required +; +``` + + diff --git a/website/docs/services/metrics/tag_indexing_rules/index.md b/website/docs/services/metrics/tag_indexing_rules/index.md new file mode 100644 index 0000000..f68d51b --- /dev/null +++ b/website/docs/services/metrics/tag_indexing_rules/index.md @@ -0,0 +1,437 @@ +--- +title: tag_indexing_rules +hide_title: false +hide_table_of_contents: false +keywords: + - tag_indexing_rules + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a tag_indexing_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier (UUID) of the tag indexing rule. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a tag indexing rule.
stringThe tag indexing rule resource type. (tag_indexing_rules) (default: tag_indexing_rules, example: tag_indexing_rules)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier (UUID) of the tag indexing rule. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a tag indexing rule.
stringThe tag indexing rule resource type. (tag_indexing_rules) (default: tag_indexing_rules, example: tag_indexing_rules)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier (UUID) of the tag indexing rule. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a tag indexing rule.
stringThe tag indexing rule resource type. (tag_indexing_rules) (default: tag_indexing_rules, example: tag_indexing_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idGet a single tag indexing rule by its UUID.
metric_nameList the tag indexing rules that apply to a given metric, sorted by `rule_order`.<br />Matching is performed server-side using each rule's `metric_name_matches` glob patterns.
page[limit], page[offset], searchList tag indexing rules for an org, sorted by `rule_order`, with offset/limit pagination.
dataCreate a tag indexing rule for the org. `rule_order` is assigned server-side as max+1<br />among existing rules; use the reorder endpoint to change the evaluation order.<br />Requires the `Manage Tags for Metrics` permission.
id, dataPartially update a tag indexing rule. Fields omitted from the request body are left unchanged.<br />Setting `rule_order` to a value already used by another rule returns 409; use the<br />reorder endpoint for atomic re-sequencing. Requires the `Manage Tags for Metrics` permission.
idSoft-delete a tag indexing rule. Idempotent: returns 204 whether the rule existed or was already deleted.<br />Remaining rules in the org are automatically re-sequenced to keep `rule_order` dense and 1-based.<br />Requires the `Manage Tags for Metrics` permission.
dataAtomically re-sequence the tag indexing rules for an org to match the supplied list of rule UUIDs.<br />The server assigns `rule_order` 1, 2, … matching each rule UUID by position in the list.<br />The UUIDs of all active rules must be provided; omitting any active rule UUID returns a 400 error.<br />Requires the `Manage Tags for Metrics` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the tag indexing rule. (example: 00000000-0000-0000-0000-000000000001)
stringThe name of the metric. (example: dist.http.endpoint.request)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Page size (1–1000, default 100).
integer (int64)Page offset from the start of the list (default 0).
+ +## `SELECT` examples + + + + +Get a single tag indexing rule by its UUID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.tag_indexing_rules +WHERE id = '{{ id }}' -- required +; +``` + + + +List the tag indexing rules that apply to a given metric, sorted by `rule_order`.<br />Matching is performed server-side using each rule's `metric_name_matches` glob patterns. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.tag_indexing_rules +WHERE metric_name = '{{ metric_name }}' -- required +; +``` + + + +List tag indexing rules for an org, sorted by `rule_order`, with offset/limit pagination. + +```sql +SELECT +id, +attributes, +type +FROM datadog.metrics.tag_indexing_rules +WHERE page[limit] = '{{ page[limit] }}' +AND page[offset] = '{{ page[offset] }}' +AND search = '{{ search }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a tag indexing rule for the org. `rule_order` is assigned server-side as max+1<br />among existing rules; use the reorder endpoint to change the evaluation order.<br />Requires the `Manage Tags for Metrics` permission. + +```sql +INSERT INTO datadog.metrics.tag_indexing_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: tag_indexing_rules + props: + - name: data + description: | + Data object for creating a tag indexing rule. + value: + attributes: + exclude_tags_mode: {{ exclude_tags_mode }} + ignored_metric_name_matches: + - "{{ ignored_metric_name_matches }}" + metric_name_matches: + - "{{ metric_name_matches }}" + name: "{{ name }}" + options: + data: + dynamic_tags: + exclude_not_queried_window_seconds: {{ exclude_not_queried_window_seconds }} + exclude_not_used_in_assets: {{ exclude_not_used_in_assets }} + queried_tags_window_seconds: {{ queried_tags_window_seconds }} + related_asset_tags: {{ related_asset_tags }} + manage_preexisting_metrics: {{ manage_preexisting_metrics }} + metric_match: + is_queried: {{ is_queried }} + not_queried: {{ not_queried }} + not_used_in_assets: {{ not_used_in_assets }} + queried_window_seconds: {{ queried_window_seconds }} + used_in_assets: {{ used_in_assets }} + override_previous_rules: {{ override_previous_rules }} + version: {{ version }} + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Partially update a tag indexing rule. Fields omitted from the request body are left unchanged.<br />Setting `rule_order` to a value already used by another rule returns 409; use the<br />reorder endpoint for atomic re-sequencing. Requires the `Manage Tags for Metrics` permission. + +```sql +REPLACE datadog.metrics.tag_indexing_rules +SET +data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Soft-delete a tag indexing rule. Idempotent: returns 204 whether the rule existed or was already deleted.<br />Remaining rules in the org are automatically re-sequenced to keep `rule_order` dense and 1-based.<br />Requires the `Manage Tags for Metrics` permission. + +```sql +DELETE FROM datadog.metrics.tag_indexing_rules +WHERE id = '{{ id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Atomically re-sequence the tag indexing rules for an org to match the supplied list of rule UUIDs.<br />The server assigns `rule_order` 1, 2, … matching each rule UUID by position in the list.<br />The UUIDs of all active rules must be provided; omitting any active rule UUID returns a 400 error.<br />Requires the `Manage Tags for Metrics` permission. + +```sql +EXEC datadog.metrics.tag_indexing_rules.reorder_tag_indexing_rules +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/metrics/tags/index.md b/website/docs/services/metrics/tags/index.md index c51693d..18774b3 100644 --- a/website/docs/services/metrics/tags/index.md +++ b/website/docs/services/metrics/tags/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a tags resource. ## Overview - +
Nametags
Name
TypeResource
Id
@@ -56,12 +57,12 @@ The following fields are returned by `SELECT` queries: object - Object containing the definition of a metric's tags. + Object containing the definition of a metric's indexed and ingested tags. string - The metric resource type. (default: metrics, example: metrics) + The metric resource type. (metrics) (default: metrics, example: metrics) @@ -86,9 +87,9 @@ The following methods are available for this resource: - metric_name, region - - View indexed tag key-value pairs for a given metric name over the previous hour. + metric_name + window[seconds], filter[tags], filter[match], filter[include_tag_values], filter[allow_partial], page[limit] + View indexed and ingested tags for a given metric name.<br />Results are filtered by the `window[seconds]` parameter, which defaults to 14400 (4 hours). @@ -111,10 +112,40 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + boolean + Whether to allow partial results. Defaults to false. (example: false) + + + + boolean + Whether to include tag values in the response. Defaults to true. (example: true) + + + + string + Filter returned tags to those matching a substring. For example, `filter[match]=env` returns tags like `env:prod`, `environment:staging`, etc. (example: env) + + + + string + Filter results to tags from data points that have the specified tags. For example, `filter[tags]=env:staging,host:123` returns tags only from data points with both `env:staging` and `host:123`. (example: env:staging,host:123) + + + + integer (int32) + Maximum number of results to return. (example: 1000) + + + + integer (int64) + The number of seconds of look back (from now) to query for tag data. Default value is 14400 (4 hours), minimum value is 14400 (4 hours). (example: 14400) @@ -129,7 +160,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -View indexed tag key-value pairs for a given metric name over the previous hour. +View indexed and ingested tags for a given metric name.<br />Results are filtered by the `window[seconds]` parameter, which defaults to 14400 (4 hours). ```sql SELECT @@ -138,7 +169,12 @@ attributes, type FROM datadog.metrics.tags WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required +AND window[seconds] = '{{ window[seconds] }}' +AND filter[tags] = '{{ filter[tags] }}' +AND filter[match] = '{{ filter[match] }}' +AND filter[include_tag_values] = '{{ filter[include_tag_values] }}' +AND filter[allow_partial] = '{{ filter[allow_partial] }}' +AND page[limit] = '{{ page[limit] }}' ; ``` diff --git a/website/docs/services/metrics/timeseries_query/index.md b/website/docs/services/metrics/timeseries_query/index.md new file mode 100644 index 0000000..65fdd24 --- /dev/null +++ b/website/docs/services/metrics/timeseries_query/index.md @@ -0,0 +1,217 @@ +--- +title: timeseries_query +hide_title: false +hide_table_of_contents: false +keywords: + - timeseries_query + - metrics + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a timeseries_query resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringDisplay name of the metric. (example: system.cpu.idle)
stringAggregation type. (example: avg)
integer (int64)End of the time window, milliseconds since Unix epoch.
stringMetric expression. (example: system.cpu.idle{host:foo,env:test})
integer (int64)Number of milliseconds between data samples.
integer (int64)Number of data samples.
stringMetric name. (example: system.cpu.idle)
arrayList of points of the timeseries in milliseconds.
integer (int64)The index of the series' query within the request.
stringMetric scope, comma separated list of tags. (example: host:foo,env:test)
integer (int64)Start of the time window, milliseconds since Unix epoch.
arrayUnique tags identifying this series.
arrayDetailed information about the metric unit. The first element describes the "primary unit" (for example, `bytes` in `bytes per second`). The second element describes the "per unit" (for example, `second` in `bytes per second`). If the second element is not present, the API returns null.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
from, to, queryQuery timeseries points. Datadog recommends using the v2<br />`/api/v2/query/timeseries` endpoint over this endpoint for<br />querying timeseries data.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Start of the queried time period, seconds since the Unix epoch.
stringQuery string.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)End of the queried time period, seconds since the Unix epoch.
+ +## `SELECT` examples + + + + +Query timeseries points. Datadog recommends using the v2<br />`/api/v2/query/timeseries` endpoint over this endpoint for<br />querying timeseries data. + +```sql +SELECT +display_name, +aggr, +end, +expression, +interval, +length, +metric, +pointlist, +query_index, +scope, +start, +tag_set, +unit +FROM datadog.metrics.timeseries_query +WHERE from = '{{ from }}' -- required +AND to = '{{ to }}' -- required +AND query = '{{ query }}' -- required +; +``` + + diff --git a/website/docs/services/metrics/volumes/index.md b/website/docs/services/metrics/volumes/index.md index 8e4aaeb..7724aab 100644 --- a/website/docs/services/metrics/volumes/index.md +++ b/website/docs/services/metrics/volumes/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a volumes resource. ## Overview - +
Namevolumes
Name
TypeResource
Id
@@ -48,6 +49,21 @@ The following fields are returned by `SELECT` queries: + + + string + The metric name for this resource. (example: test.metric.latency) + + + + object + Object containing the definition of a metric's distinct volume. + + + + string + The metric distinct volume type. (distinct_metric_volumes) (default: distinct_metric_volumes, example: distinct_metric_volumes) +
@@ -71,9 +87,9 @@ The following methods are available for this resource: - metric_name, region - - View distinct metrics volumes for the given metric name.

Custom metrics generated in-app from other products will return `null` for ingested volumes. + metric_name + window[seconds] + View hourly average cardinality for the given metric name over the look back period.<br />For Metric Name Pricing customers, view total point volume for the given metric name<br />over the look back period. @@ -96,10 +112,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the metric. (example: dist.http.endpoint.request) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + integer (int64) + The number of seconds of look back (from now). Default value is 3,600 (1 hour), maximum value is 2,592,000 (1 month). (example: 7200) @@ -114,14 +135,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -View distinct metrics volumes for the given metric name.

Custom metrics generated in-app from other products will return `null` for ingested volumes. +View hourly average cardinality for the given metric name over the look back period.<br />For Metric Name Pricing customers, view total point volume for the given metric name<br />over the look back period. ```sql SELECT -* +id, +attributes, +type FROM datadog.metrics.volumes WHERE metric_name = '{{ metric_name }}' -- required -AND region = '{{ region }}' -- required +AND window[seconds] = '{{ window[seconds] }}' ; ```
diff --git a/website/docs/services/monitoring/config_policies/index.md b/website/docs/services/monitoring/config_policies/index.md index 00b61a6..223aa99 100644 --- a/website/docs/services/monitoring/config_policies/index.md +++ b/website/docs/services/monitoring/config_policies/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a config_policies resource ## Overview - +
Nameconfig_policies
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Monitor configuration policy resource type. (default: monitor-config-policy, example: monitor-config-policy) + Monitor configuration policy resource type. (monitor-config-policy) (default: monitor-config-policy, example: monitor-config-policy) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Monitor configuration policy resource type. (default: monitor-config-policy, example: monitor-config-policy) + Monitor configuration policy resource type. (monitor-config-policy) (default: monitor-config-policy, example: monitor-config-policy) @@ -116,35 +117,35 @@ The following methods are available for this resource: - policy_id, region + policy_id Get a monitor configuration policy by `policy_id`. - region + Get all monitor configuration policies. - region, data__data + data Create a monitor configuration policy. - policy_id, region, data__data + policy_id, data Edit a monitor configuration policy. - policy_id, region + policy_id Delete a monitor configuration policy. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string ID of the monitor configuration policy. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.monitoring.config_policies WHERE policy_id = '{{ policy_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.monitoring.config_policies -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a monitor configuration policy. ```sql INSERT INTO datadog.monitoring.config_policies ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,23 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: config_policies props: - - name: region - value: string - description: Required parameter for the config_policies resource. - name: data - value: object description: | A monitor configuration policy data. -``` + value: + attributes: + policy: + tag_key: "{{ tag_key }}" + tag_key_required: {{ tag_key_required }} + valid_tag_values: + - "{{ valid_tag_values }}" + policy_type: "{{ policy_type }}" + type: "{{ type }}" +`} + @@ -277,11 +279,10 @@ Edit a monitor configuration policy. ```sql UPDATE datadog.monitoring.config_policies SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE policy_id = '{{ policy_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +305,6 @@ Delete a monitor configuration policy. ```sql DELETE FROM datadog.monitoring.config_policies WHERE policy_id = '{{ policy_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/monitoring/data_observability_monitor_run_statuses/index.md b/website/docs/services/monitoring/data_observability_monitor_run_statuses/index.md new file mode 100644 index 0000000..e15595d --- /dev/null +++ b/website/docs/services/monitoring/data_observability_monitor_run_statuses/index.md @@ -0,0 +1,145 @@ +--- +title: data_observability_monitor_run_statuses +hide_title: false +hide_table_of_contents: false +keywords: + - data_observability_monitor_run_statuses + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a data_observability_monitor_run_statuses resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the monitor run. (example: abc123def456)
objectThe attributes of a data observability monitor run status response.
stringThe JSON:API resource type for a data observability monitor run. (monitor_run) (default: monitor_run, example: monitor_run)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
run_idRetrieves the current status of a data observability monitor run. Poll this endpoint after triggering a run to determine when evaluation is complete.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the monitor run to retrieve status for. (example: abc123def456)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieves the current status of a data observability monitor run. Poll this endpoint after triggering a run to determine when evaluation is complete. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.data_observability_monitor_run_statuses +WHERE run_id = '{{ run_id }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/data_observability_monitors/index.md b/website/docs/services/monitoring/data_observability_monitors/index.md new file mode 100644 index 0000000..7243584 --- /dev/null +++ b/website/docs/services/monitoring/data_observability_monitors/index.md @@ -0,0 +1,109 @@ +--- +title: data_observability_monitors +hide_title: false +hide_table_of_contents: false +keywords: + - data_observability_monitors + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a data_observability_monitors resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
monitor_idManually triggers a run for a data observability monitor. Only monitors that are not scheduled (manually-runnable) can be triggered this way.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the data observability monitor to run. (example: 12345)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Manually triggers a run for a data observability monitor. Only monitors that are not scheduled (manually-runnable) can be triggered this way. + +```sql +EXEC datadog.monitoring.data_observability_monitors.run_data_observability_monitor +@monitor_id='{{ monitor_id }}' --required +; +``` + + diff --git a/website/docs/services/monitoring/downtimes/index.md b/website/docs/services/monitoring/downtimes/index.md index 0bd17b1..dc03f52 100644 --- a/website/docs/services/monitoring/downtimes/index.md +++ b/website/docs/services/monitoring/downtimes/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a downtimes resource. ## Overview - +
Namedowntimes
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Monitor Downtime Match resource type. (default: downtime_match, example: downtime_match) + Monitor Downtime Match resource type. (downtime_match) (default: downtime_match, example: downtime_match) @@ -86,7 +87,7 @@ The following methods are available for this resource: - monitor_id, region + monitor_id page[offset], page[limit] Get all active downtimes for the specified monitor. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) The id of the monitor. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -148,7 +149,6 @@ attributes, type FROM datadog.monitoring.downtimes WHERE monitor_id = '{{ monitor_id }}' -- required -AND region = '{{ region }}' -- required AND page[offset] = '{{ page[offset] }}' AND page[limit] = '{{ page[limit] }}' ; diff --git a/website/docs/services/monitoring/index.md b/website/docs/services/monitoring/index.md index c45af96..e427e32 100644 --- a/website/docs/services/monitoring/index.md +++ b/website/docs/services/monitoring/index.md @@ -18,7 +18,7 @@ monitoring service documentation. :::info[Service Summary] -total resources: __5__ +total resources: __39__ ::: @@ -26,11 +26,45 @@ total resources: __5__ \ No newline at end of file diff --git a/website/docs/services/monitoring/monitor_group_search_results/index.md b/website/docs/services/monitoring/monitor_group_search_results/index.md new file mode 100644 index 0000000..de0fffb --- /dev/null +++ b/website/docs/services/monitoring/monitor_group_search_results/index.md @@ -0,0 +1,187 @@ +--- +title: monitor_group_search_results +hide_title: false +hide_table_of_contents: false +keywords: + - monitor_group_search_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitor_group_search_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the monitor.
stringThe name of the monitor.
stringThe name of the group.
arrayThe list of tags of the monitor group.
integer (int64)Latest timestamp the monitor group was in NO_DATA state.
integer (int64)Latest timestamp the monitor group triggered.
stringThe different states your monitor can be in. (Alert, Ignored, No Data, OK, Skipped, Unknown, Warn)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
query, page, per_page, sortSearch and filter your monitor groups details.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Page to start paginating from.
integer (int64)Number of monitors to return per page.
stringAfter entering a search query on the [Triggered Monitors page][1], use the query parameter value in the URL of the page as a value for this parameter. For more information, see the [Manage Monitors documentation][2]. The query can contain any number of space-separated monitor attributes, for instance: `query="type:metric group_status:alert"`. [1]: https:​//app.datadoghq.com/monitors/triggered [2]: /monitors/manage/#triggered-monitors
stringString for sort order, composed of field and sort order separate by a comma, for example `name,asc`. Supported sort directions: `asc`, `desc`. Supported fields: * `name` * `status` * `tags`
+ +## `SELECT` examples + + + + +Search and filter your monitor groups details. + +```sql +SELECT +monitor_id, +monitor_name, +group, +group_tags, +last_nodata_ts, +last_triggered_ts, +status +FROM datadog.monitoring.monitor_group_search_results +WHERE query = '{{ query }}' +AND page = '{{ page }}' +AND per_page = '{{ per_page }}' +AND sort = '{{ sort }}' +; +``` + + diff --git a/website/docs/services/monitoring/monitor_search_results/index.md b/website/docs/services/monitoring/monitor_search_results/index.md new file mode 100644 index 0000000..ef31a44 --- /dev/null +++ b/website/docs/services/monitoring/monitor_search_results/index.md @@ -0,0 +1,229 @@ +--- +title: monitor_search_results +hide_title: false +hide_table_of_contents: false +keywords: + - monitor_search_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitor_search_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)ID of the monitor.
stringThe monitor name.
integer (int64)The ID of the organization.
stringClassification of the monitor.
objectObject describing the creator of the shared element.
integer (int64)Latest timestamp the monitor triggered.
arrayMetrics used by the monitor.
arrayThe notification triggered by the monitor.
arrayQuality issues detected with the monitor.
stringThe monitor query. (example: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100)
arrayThe scope(s) to which the downtime applies, for example `host:app2`. Provide multiple scopes as a comma-separated list, for example `env:dev,env:prod`. The resulting downtime applies to sources that matches ALL provided scopes (that is `env:dev AND env:prod`), NOT any of them.
stringThe different states your monitor can be in. (Alert, Ignored, No Data, OK, Skipped, Unknown, Warn)
arrayTags associated with the monitor.
stringThe type of the monitor. For more information about `type`, see the [monitor options](https:​//docs.datadoghq.com/monitors/guide/monitor_api_options/) docs. (composite, event alert, log alert, metric alert, process alert, query alert, rum alert, service check, synthetics alert, trace-analytics alert, slo alert, event-v2 alert, audit alert, ci-pipelines alert, ci-tests alert, error-tracking alert, database-monitoring alert, network-performance alert, cost alert, data-quality alert, network-path alert, data-jobs alert, llm-observability alert) (example: query alert)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
query, page, per_page, sortSearch and filter your monitors details.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Page to start paginating from.
integer (int64)Number of monitors to return per page.
stringAfter entering a search query in your [Manage Monitor page][1] use the query parameter value in the URL of the page as value for this parameter. Consult the dedicated [manage monitor documentation][2] page to learn more. The query can contain any number of space-separated monitor attributes, for instance `query="type:metric status:alert"`. [1]: https:​//app.datadoghq.com/monitors/manage [2]: /monitors/manage/#find-the-monitors
stringString for sort order, composed of field and sort order separate by a comma, for example `name,asc`. Supported sort directions: `asc`, `desc`. Supported fields: * `name` * `status` * `tags`
+ +## `SELECT` examples + + + + +Search and filter your monitors details. + +```sql +SELECT +id, +name, +org_id, +classification, +creator, +last_triggered_ts, +metrics, +notifications, +quality_issues, +query, +scopes, +status, +tags, +type +FROM datadog.monitoring.monitor_search_results +WHERE query = '{{ query }}' +AND page = '{{ page }}' +AND per_page = '{{ per_page }}' +AND sort = '{{ sort }}' +; +``` + + diff --git a/website/docs/services/monitoring/monitors/index.md b/website/docs/services/monitoring/monitors/index.md new file mode 100644 index 0000000..5a87b6e --- /dev/null +++ b/website/docs/services/monitoring/monitors/index.md @@ -0,0 +1,964 @@ +--- +title: monitors +hide_title: false +hide_table_of_contents: false +keywords: + - monitors + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitors resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)ID of this monitor.
stringThe monitor name. (example: My monitor)
arrayThe list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks).
string (date-time)Timestamp of the monitor creation.
objectObject describing the creator of the shared element.
string (date-time)Whether or not the monitor is deleted. (Always `null`)
stringIndicates whether the monitor is in a draft or published state. `draft`: The monitor appears as Draft and does not send notifications. `published`: The monitor is active and evaluates conditions and notify as configured. This field is in preview. The draft value is only available to customers with the feature enabled. (draft, published) (default: published)
arrayA list of active v1 downtimes that match this monitor.
stringA message to include with notifications for this monitor.
string (date-time)Last timestamp when the monitor was edited.
booleanWhether or not the monitor is broken down on different groups.
objectList of options associated with your monitor.
stringThe different states your monitor can be in. (Alert, Ignored, No Data, OK, Skipped, Unknown, Warn)
integer (int64)Integer from 1 (high) to 5 (low) indicating alert severity.
stringThe monitor query. (example: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100)
arrayA list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https:​//docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https:​//docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles.
objectWrapper object with the different monitor states.
arrayTags associated to your monitor.
stringThe type of the monitor. For more information about `type`, see the [monitor options](https:​//docs.datadoghq.com/monitors/guide/monitor_api_options/) docs. (composite, event alert, log alert, metric alert, process alert, query alert, rum alert, service check, synthetics alert, trace-analytics alert, slo alert, event-v2 alert, audit alert, ci-pipelines alert, ci-tests alert, error-tracking alert, database-monitoring alert, network-performance alert, cost alert, data-quality alert, network-path alert, data-jobs alert, llm-observability alert) (example: query alert)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)ID of this monitor.
stringThe monitor name. (example: My monitor)
arrayThe list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks).
string (date-time)Timestamp of the monitor creation.
objectObject describing the creator of the shared element.
string (date-time)Whether or not the monitor is deleted. (Always `null`)
stringIndicates whether the monitor is in a draft or published state. `draft`: The monitor appears as Draft and does not send notifications. `published`: The monitor is active and evaluates conditions and notify as configured. This field is in preview. The draft value is only available to customers with the feature enabled. (draft, published) (default: published)
arrayA list of active v1 downtimes that match this monitor.
stringA message to include with notifications for this monitor.
string (date-time)Last timestamp when the monitor was edited.
booleanWhether or not the monitor is broken down on different groups.
objectList of options associated with your monitor.
stringThe different states your monitor can be in. (Alert, Ignored, No Data, OK, Skipped, Unknown, Warn)
integer (int64)Integer from 1 (high) to 5 (low) indicating alert severity.
stringThe monitor query. (example: avg(last_5m):sum:system.net.bytes_rcvd{host:host0} > 100)
arrayA list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https:​//docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the `data.id` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https:​//docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles.
objectWrapper object with the different monitor states.
arrayTags associated to your monitor.
stringThe type of the monitor. For more information about `type`, see the [monitor options](https:​//docs.datadoghq.com/monitors/guide/monitor_api_options/) docs. (composite, event alert, log alert, metric alert, process alert, query alert, rum alert, service check, synthetics alert, trace-analytics alert, slo alert, event-v2 alert, audit alert, ci-pipelines alert, ci-tests alert, error-tracking alert, database-monitoring alert, network-performance alert, cost alert, data-quality alert, network-path alert, data-jobs alert, llm-observability alert) (example: query alert)
+
+ + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayAn array of Monitor IDs that can be safely deleted.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
monitor_idgroup_states, with_downtimes, with_assetsGet details about the specified monitor from your organization.
group_states, name, tags, monitor_tags, with_downtimes, id_offset, page, page_sizeGet all monitors from your organization.
monitor_idsCheck if the given monitors can be deleted.
type, queryCreate a monitor using the specified options.<br /><br />#### Monitor Types<br /><br />The type of monitor chosen from:<br /><br />- anomaly: `query alert`<br />- APM: `query alert` or `trace-analytics alert`<br />- composite: `composite`<br />- custom: `service check`<br />- forecast: `query alert`<br />- host: `service check`<br />- integration: `query alert` or `service check`<br />- live process: `process alert`<br />- logs: `log alert`<br />- metric: `query alert`<br />- network: `service check`<br />- outlier: `query alert`<br />- process: `service check`<br />- rum: `rum alert`<br />- SLO: `slo alert`<br />- watchdog: `event-v2 alert`<br />- event-v2: `event-v2 alert`<br />- audit: `audit alert`<br />- error-tracking: `error-tracking alert`<br />- database-monitoring: `database-monitoring alert`<br />- network-performance: `network-performance alert`<br />- cloud cost: `cost alert`<br />- network-path: `network-path alert`<br /><br />**Notes**:<br />- Synthetic monitors are created through the Synthetics API. See the [Synthetics API](https:​//docs.datadoghq.com/api/latest/synthetics/) documentation for more information.<br />- Log monitors require an unscoped App Key.<br /><br />#### Query Types<br /><br />##### Metric Alert Query<br /><br />Example: `time_aggr(time_window):space_aggr:metric{tags} [by {key}] operator #`<br /><br />- `time_aggr`: avg, sum, max, min, change, or pct_change<br />- `time_window`: `last_#m` (with `#` between 1 and 10080 depending on the monitor type) or `last_#h`(with `#` between 1 and 168 depending on the monitor type) or `last_1d`, or `last_1w`<br />- `space_aggr`: avg, sum, min, or max<br />- `tags`: one or more tags (comma-separated), or *<br />- `key`: a 'key' in key:value tag syntax; defines a separate alert for each tag in the group (multi-alert)<br />- `operator`: <, <=, >, >=, ==, or !=<br />- `#`: an integer or decimal number used to set the threshold<br /><br />To use a dynamic threshold on a metric monitor with a formula query, replace `#` with the `threshold` keyword<br />(for example, `... > threshold`) and provide the threshold as a query via `critical_query` on `options.thresholds`.<br />This feature is in preview.<br /><br />If you are using the `_change_` or `_pct_change_` time aggregator, instead use `change_aggr(time_aggr(time_window),<br />timeshift):space_aggr:metric{tags} [by {key}] operator #` with:<br /><br />- `change_aggr` change, pct_change<br />- `time_aggr` avg, sum, max, min [Learn more](https:​//docs.datadoghq.com/monitors/create/types/#define-the-conditions)<br />- `time_window` last\_#m (between 1 and 2880 depending on the monitor type), last\_#h (between 1 and 48 depending on the monitor type), or last_#d (1 or 2)<br />- `timeshift` #m_ago (5, 10, 15, or 30), #h_ago (1, 2, or 4), or 1d_ago<br /><br />Use this to create an outlier monitor using the following query:<br />`avg(last_30m):outliers(avg:system.cpu.user{role:es-events-data} by {host}, 'dbscan', 7) > 0`<br /><br />##### Service Check Query<br /><br />Example: `"check".over(tags).last(count).by(group).count_by_status()`<br /><br />- `check` name of the check, for example `datadog.agent.up`<br />- `tags` one or more quoted tags (comma-separated), or "*". for example: `.over("env:prod", "role:db")`; `over` cannot be blank.<br />- `count` must be at greater than or equal to your max threshold (defined in the `options`). It is limited to 100.<br />For example, if you've specified to notify on 1 critical, 3 ok, and 2 warn statuses, `count` should be at least 3.<br />- `group` must be specified for check monitors. Per-check grouping is already explicitly known for some service checks.<br />For example, Postgres integration monitors are tagged by `db`, `host`, and `port`, and Network monitors by `host`, `instance`, and `url`. See [Service Checks](https:​//docs.datadoghq.com/api/latest/service-checks/) documentation for more information.<br /><br />##### Event Alert Query<br /><br />**Note:** The Event Alert Query has been replaced by the Event V2 Alert Query. For more information, see the [Event Migration guide](https:​//docs.datadoghq.com/service_management/events/guides/migrating_to_new_events_features/).<br /><br />##### Event V2 Alert Query<br /><br />Example: `events(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### Process Alert Query<br /><br />Example: `processes(search).over(tags).rollup('count').last(timeframe) operator #`<br /><br />- `search` free text search string for querying processes.<br />Matching processes match results on the [Live Processes](https:​//docs.datadoghq.com/infrastructure/process/?tab=linuxwindows) page.<br />- `tags` one or more tags (comma-separated)<br />- `timeframe` the timeframe to roll up the counts. Examples: 10m, 4h. Supported timeframes: s, m, h and d<br />- `operator` <, <=, >, >=, ==, or !=<br />- `#` an integer or decimal number used to set the threshold<br /><br />##### Logs Alert Query<br /><br />Example: `logs(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `index_name` For multi-index organizations, the log index in which the request is performed.<br />- `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### Composite Query<br /><br />Example: `12345 && 67890`, where `12345` and `67890` are the IDs of non-composite monitors<br /><br />* `name` [*required*, *default* = **dynamic, based on query**]: The name of the alert.<br />* `message` [*required*, *default* = **dynamic, based on query**]: A message to include with notifications for this monitor.<br />Email notifications can be sent to specific users by using the same '@username' notation as events.<br />* `tags` [*optional*, *default* = **empty list**]: A list of tags to associate with your monitor.<br />When getting all monitor details via the API, use the `monitor_tags` argument to filter results by these tags.<br />It is only available via the API and isn't visible or editable in the Datadog UI.<br /><br />##### SLO Alert Query<br /><br />Example: `error_budget("slo_id").over("time_window") operator #`<br /><br />- `slo_id`: The alphanumeric SLO ID of the SLO you are configuring the alert for.<br />- `time_window`: The time window of the SLO target you wish to alert on. Valid options: `7d`, `30d`, `90d`.<br />- `operator`: `>=` or `>`<br /><br />##### Audit Alert Query<br /><br />Example: `audits(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### CI Pipelines Alert Query<br /><br />Example: `ci-pipelines(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### CI Tests Alert Query<br /><br />Example: `ci-tests(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### Error Tracking Alert Query<br /><br />"New issue" example: `error-tracking(query).source(issue_source).new().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #`<br />"High impact issue" example: `error-tracking(query).source(issue_source).impact().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `issue_source` The issue source - supports `all`, `browser`, `mobile` and `backend` and defaults to `all` if omitted.<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality` and defaults to `count` if omitted.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `group by` Comma-separated list of attributes to group by - should contain at least `issue.id`.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Database Monitoring Alert Query**<br /><br />Example: `database-monitoring(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Network Performance Alert Query**<br /><br />Example: `network-performance(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Cost Alert Query**<br /><br />Example: `formula(query).timeframe_type(time_window).function(parameter) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `timeframe_type` The timeframe type to evaluate the cost<br /> - for `forecast` supports `current`<br /> - for `change`, `anomaly`, `threshold` supports `last`<br />- `time_window` - supports daily roll-up e.g. `7d`<br />- `function` - [optional, defaults to `threshold` monitor if omitted] supports `change`, `anomaly`, `forecast`<br />- `parameter` Specify the parameter of the type<br /> - for `change`:<br /> - supports `relative`, `absolute`<br /> - [optional] supports `#`, where `#` is an integer or decimal number used to set the threshold<br /> - for `anomaly`:<br /> - supports `direction=both`, `direction=above`, `direction=below`<br /> - [optional] supports `threshold=#`, where `#` is an integer or decimal number used to set the threshold<br />- `operator`<br /> - for `threshold` supports `<`, `<=`, `>`, `>=`, `==`, or `!=`<br /> - for `change` supports `>`, `<`<br /> - for `anomaly` supports `>=`<br /> - for `forecast` supports `>`<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Network Path Alert Query**<br /><br />Example: `network-path(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `index_name` The data type to monitor on - supports `netpath-path` and `netpath-hop`.<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.
monitor_idEdit the specified monitor.
monitor_idforceDelete the specified monitor
type, queryValidate the monitor provided in the request.<br /><br />**Note**: Log monitors require an unscoped App Key and `logs_read_data` permission.
monitor_id, type, queryValidate the monitor provided in the request.<br /><br />**Note**: Log monitors require an unscoped App Key and `logs_read_data` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The ID of the monitor
arrayThe IDs of the monitor to check.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringDelete the monitor even if it's referenced by other resources (for example SLO, composite monitor).
stringWhen specified, shows additional information about the group states. Choose one or more from `all`, `alert`, `warn`, and `no data`.
integer (int64)Use this parameter for paginating through large sets of monitors. Start with a value of zero, make a request, set the value to the last ID of result set, and then repeat until the response is empty.
stringA comma separated list indicating what service and/or custom tags, if any, should be used to filter the list of monitors. Tags created in the Datadog UI automatically have the service key prepended. For example, `service:my-app`.
stringA string to filter monitors by name.
integer (int64)The page to start paginating from. If this argument is not specified, the request returns all monitors without pagination.
integer (int32)The number of monitors to return per page. If the page argument is not specified, the default behavior returns all monitors without a `page_size` limit. However, if page is specified and `page_size` is not, the argument defaults to 100.
stringA comma separated list indicating what tags, if any, should be used to filter the list of monitors by scope. For example, `host:host0`.
booleanIf this argument is set to `true`, the returned data includes all assets tied to this monitor.
booleanIf this argument is set to true, then the returned data includes all current active downtimes for each monitor.
+ +## `SELECT` examples + + + + +Get details about the specified monitor from your organization. + +```sql +SELECT +id, +name, +assets, +created, +creator, +deleted, +draft_status, +matching_downtimes, +message, +modified, +multi, +options, +overall_state, +priority, +query, +restricted_roles, +state, +tags, +type +FROM datadog.monitoring.monitors +WHERE monitor_id = '{{ monitor_id }}' -- required +AND group_states = '{{ group_states }}' +AND with_downtimes = '{{ with_downtimes }}' +AND with_assets = '{{ with_assets }}' +; +``` + + + +Get all monitors from your organization. + +```sql +SELECT +id, +name, +assets, +created, +creator, +deleted, +draft_status, +matching_downtimes, +message, +modified, +multi, +options, +overall_state, +priority, +query, +restricted_roles, +state, +tags, +type +FROM datadog.monitoring.monitors +WHERE group_states = '{{ group_states }}' +AND name = '{{ name }}' +AND tags = '{{ tags }}' +AND monitor_tags = '{{ monitor_tags }}' +AND with_downtimes = '{{ with_downtimes }}' +AND id_offset = '{{ id_offset }}' +AND page = '{{ page }}' +AND page_size = '{{ page_size }}' +; +``` + + + +Check if the given monitors can be deleted. + +```sql +SELECT +ok +FROM datadog.monitoring.monitors +WHERE monitor_ids = '{{ monitor_ids }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a monitor using the specified options.<br /><br />#### Monitor Types<br /><br />The type of monitor chosen from:<br /><br />- anomaly: `query alert`<br />- APM: `query alert` or `trace-analytics alert`<br />- composite: `composite`<br />- custom: `service check`<br />- forecast: `query alert`<br />- host: `service check`<br />- integration: `query alert` or `service check`<br />- live process: `process alert`<br />- logs: `log alert`<br />- metric: `query alert`<br />- network: `service check`<br />- outlier: `query alert`<br />- process: `service check`<br />- rum: `rum alert`<br />- SLO: `slo alert`<br />- watchdog: `event-v2 alert`<br />- event-v2: `event-v2 alert`<br />- audit: `audit alert`<br />- error-tracking: `error-tracking alert`<br />- database-monitoring: `database-monitoring alert`<br />- network-performance: `network-performance alert`<br />- cloud cost: `cost alert`<br />- network-path: `network-path alert`<br /><br />**Notes**:<br />- Synthetic monitors are created through the Synthetics API. See the [Synthetics API](https:​//docs.datadoghq.com/api/latest/synthetics/) documentation for more information.<br />- Log monitors require an unscoped App Key.<br /><br />#### Query Types<br /><br />##### Metric Alert Query<br /><br />Example: `time_aggr(time_window):space_aggr:metric{tags} [by {key}] operator #`<br /><br />- `time_aggr`: avg, sum, max, min, change, or pct_change<br />- `time_window`: `last_#m` (with `#` between 1 and 10080 depending on the monitor type) or `last_#h`(with `#` between 1 and 168 depending on the monitor type) or `last_1d`, or `last_1w`<br />- `space_aggr`: avg, sum, min, or max<br />- `tags`: one or more tags (comma-separated), or *<br />- `key`: a 'key' in key:value tag syntax; defines a separate alert for each tag in the group (multi-alert)<br />- `operator`: <, <=, >, >=, ==, or !=<br />- `#`: an integer or decimal number used to set the threshold<br /><br />To use a dynamic threshold on a metric monitor with a formula query, replace `#` with the `threshold` keyword<br />(for example, `... > threshold`) and provide the threshold as a query via `critical_query` on `options.thresholds`.<br />This feature is in preview.<br /><br />If you are using the `_change_` or `_pct_change_` time aggregator, instead use `change_aggr(time_aggr(time_window),<br />timeshift):space_aggr:metric{tags} [by {key}] operator #` with:<br /><br />- `change_aggr` change, pct_change<br />- `time_aggr` avg, sum, max, min [Learn more](https:​//docs.datadoghq.com/monitors/create/types/#define-the-conditions)<br />- `time_window` last\_#m (between 1 and 2880 depending on the monitor type), last\_#h (between 1 and 48 depending on the monitor type), or last_#d (1 or 2)<br />- `timeshift` #m_ago (5, 10, 15, or 30), #h_ago (1, 2, or 4), or 1d_ago<br /><br />Use this to create an outlier monitor using the following query:<br />`avg(last_30m):outliers(avg:system.cpu.user{role:es-events-data} by {host}, 'dbscan', 7) > 0`<br /><br />##### Service Check Query<br /><br />Example: `"check".over(tags).last(count).by(group).count_by_status()`<br /><br />- `check` name of the check, for example `datadog.agent.up`<br />- `tags` one or more quoted tags (comma-separated), or "*". for example: `.over("env:prod", "role:db")`; `over` cannot be blank.<br />- `count` must be at greater than or equal to your max threshold (defined in the `options`). It is limited to 100.<br />For example, if you've specified to notify on 1 critical, 3 ok, and 2 warn statuses, `count` should be at least 3.<br />- `group` must be specified for check monitors. Per-check grouping is already explicitly known for some service checks.<br />For example, Postgres integration monitors are tagged by `db`, `host`, and `port`, and Network monitors by `host`, `instance`, and `url`. See [Service Checks](https:​//docs.datadoghq.com/api/latest/service-checks/) documentation for more information.<br /><br />##### Event Alert Query<br /><br />**Note:** The Event Alert Query has been replaced by the Event V2 Alert Query. For more information, see the [Event Migration guide](https:​//docs.datadoghq.com/service_management/events/guides/migrating_to_new_events_features/).<br /><br />##### Event V2 Alert Query<br /><br />Example: `events(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### Process Alert Query<br /><br />Example: `processes(search).over(tags).rollup('count').last(timeframe) operator #`<br /><br />- `search` free text search string for querying processes.<br />Matching processes match results on the [Live Processes](https:​//docs.datadoghq.com/infrastructure/process/?tab=linuxwindows) page.<br />- `tags` one or more tags (comma-separated)<br />- `timeframe` the timeframe to roll up the counts. Examples: 10m, 4h. Supported timeframes: s, m, h and d<br />- `operator` <, <=, >, >=, ==, or !=<br />- `#` an integer or decimal number used to set the threshold<br /><br />##### Logs Alert Query<br /><br />Example: `logs(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `index_name` For multi-index organizations, the log index in which the request is performed.<br />- `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### Composite Query<br /><br />Example: `12345 && 67890`, where `12345` and `67890` are the IDs of non-composite monitors<br /><br />* `name` [*required*, *default* = **dynamic, based on query**]: The name of the alert.<br />* `message` [*required*, *default* = **dynamic, based on query**]: A message to include with notifications for this monitor.<br />Email notifications can be sent to specific users by using the same '@username' notation as events.<br />* `tags` [*optional*, *default* = **empty list**]: A list of tags to associate with your monitor.<br />When getting all monitor details via the API, use the `monitor_tags` argument to filter results by these tags.<br />It is only available via the API and isn't visible or editable in the Datadog UI.<br /><br />##### SLO Alert Query<br /><br />Example: `error_budget("slo_id").over("time_window") operator #`<br /><br />- `slo_id`: The alphanumeric SLO ID of the SLO you are configuring the alert for.<br />- `time_window`: The time window of the SLO target you wish to alert on. Valid options: `7d`, `30d`, `90d`.<br />- `operator`: `>=` or `>`<br /><br />##### Audit Alert Query<br /><br />Example: `audits(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg` and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### CI Pipelines Alert Query<br /><br />Example: `ci-pipelines(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### CI Tests Alert Query<br /><br />Example: `ci-tests(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />##### Error Tracking Alert Query<br /><br />"New issue" example: `error-tracking(query).source(issue_source).new().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #`<br />"High impact issue" example: `error-tracking(query).source(issue_source).impact().rollup(rollup_method[, measure]).by(group_by).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `issue_source` The issue source - supports `all`, `browser`, `mobile` and `backend` and defaults to `all` if omitted.<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality` and defaults to `count` if omitted.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `group by` Comma-separated list of attributes to group by - should contain at least `issue.id`.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Database Monitoring Alert Query**<br /><br />Example: `database-monitoring(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Network Performance Alert Query**<br /><br />Example: `network-performance(query).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Cost Alert Query**<br /><br />Example: `formula(query).timeframe_type(time_window).function(parameter) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `timeframe_type` The timeframe type to evaluate the cost<br /> - for `forecast` supports `current`<br /> - for `change`, `anomaly`, `threshold` supports `last`<br />- `time_window` - supports daily roll-up e.g. `7d`<br />- `function` - [optional, defaults to `threshold` monitor if omitted] supports `change`, `anomaly`, `forecast`<br />- `parameter` Specify the parameter of the type<br /> - for `change`:<br /> - supports `relative`, `absolute`<br /> - [optional] supports `#`, where `#` is an integer or decimal number used to set the threshold<br /> - for `anomaly`:<br /> - supports `direction=both`, `direction=above`, `direction=below`<br /> - [optional] supports `threshold=#`, where `#` is an integer or decimal number used to set the threshold<br />- `operator`<br /> - for `threshold` supports `<`, `<=`, `>`, `>=`, `==`, or `!=`<br /> - for `change` supports `>`, `<`<br /> - for `anomaly` supports `>=`<br /> - for `forecast` supports `>`<br />- `#` an integer or decimal number used to set the threshold.<br /><br />**Network Path Alert Query**<br /><br />Example: `network-path(query).index(index_name).rollup(rollup_method[, measure]).last(time_window) operator #`<br /><br />- `query` The search query - following the [Log search syntax](https:​//docs.datadoghq.com/logs/search_syntax/).<br />- `index_name` The data type to monitor on - supports `netpath-path` and `netpath-hop`.<br />- `rollup_method` The stats roll-up method - supports `count`, `avg`, and `cardinality`.<br />- `measure` For `avg` and cardinality `rollup_method` - specify the measure or the facet name you want to use.<br />- `time_window` #m (between 1 and 2880), #h (between 1 and 48).<br />- `operator` `<`, `<=`, `>`, `>=`, `==`, or `!=`.<br />- `#` an integer or decimal number used to set the threshold. + +```sql +INSERT INTO datadog.monitoring.monitors ( +assets, +draft_status, +matching_downtimes, +message, +name, +options, +priority, +query, +restricted_roles, +tags, +type +) +SELECT +'{{ assets }}', +'{{ draft_status }}', +'{{ matching_downtimes }}', +'{{ message }}', +'{{ name }}', +'{{ options }}', +{{ priority }}, +'{{ query }}' /* required */, +'{{ restricted_roles }}', +'{{ tags }}', +'{{ type }}' /* required */ +RETURNING +id, +name, +assets, +created, +creator, +deleted, +draft_status, +matching_downtimes, +message, +modified, +multi, +options, +overall_state, +priority, +query, +restricted_roles, +state, +tags, +type +; +``` + + + +{`# Description fields are for documentation purposes +- name: monitors + props: + - name: assets + description: | + The list of monitor assets tied to a monitor, which represents key links for users to take action on monitor alerts (for example, runbooks). + value: + - category: "{{ category }}" + name: "{{ name }}" + resource_key: "{{ resource_key }}" + resource_type: "{{ resource_type }}" + url: "{{ url }}" + - name: draft_status + value: "{{ draft_status }}" + description: | + Indicates whether the monitor is in a draft or published state. + \`draft\`: The monitor appears as Draft and does not send notifications. + \`published\`: The monitor is active and evaluates conditions and notify as configured. + This field is in preview. The draft value is only available to customers with the feature enabled. + valid_values: ['draft', 'published'] + default: published + - name: matching_downtimes + description: | + A list of active v1 downtimes that match this monitor. + value: + - end: {{ end }} + id: {{ id }} + scope: "{{ scope }}" + start: {{ start }} + - name: message + value: "{{ message }}" + description: | + A message to include with notifications for this monitor. + - name: name + value: "{{ name }}" + description: | + The monitor name. + - name: options + description: | + List of options associated with your monitor. + value: + aggregation: + group_by: "{{ group_by }}" + metric: "{{ metric }}" + type: "{{ type }}" + device_ids: + - "{{ device_ids }}" + enable_logs_sample: {{ enable_logs_sample }} + enable_samples: {{ enable_samples }} + escalation_message: "{{ escalation_message }}" + evaluation_delay: {{ evaluation_delay }} + group_retention_duration: "{{ group_retention_duration }}" + groupby_simple_monitor: {{ groupby_simple_monitor }} + include_tags: {{ include_tags }} + locked: {{ locked }} + min_failure_duration: {{ min_failure_duration }} + min_location_failed: {{ min_location_failed }} + new_group_delay: {{ new_group_delay }} + new_host_delay: {{ new_host_delay }} + no_data_timeframe: {{ no_data_timeframe }} + notification_preset_name: "{{ notification_preset_name }}" + notify_audit: {{ notify_audit }} + notify_by: + - "{{ notify_by }}" + notify_no_data: {{ notify_no_data }} + on_missing_data: "{{ on_missing_data }}" + renotify_interval: {{ renotify_interval }} + renotify_occurrences: {{ renotify_occurrences }} + renotify_statuses: + - "{{ renotify_statuses }}" + require_full_window: {{ require_full_window }} + scheduling_options: + custom_schedule: + recurrences: + - rrule: "{{ rrule }}" + start: "{{ start }}" + timezone: "{{ timezone }}" + evaluation_window: + day_starts: "{{ day_starts }}" + hour_starts: {{ hour_starts }} + month_starts: {{ month_starts }} + timezone: "{{ timezone }}" + silenced: "{{ silenced }}" + synthetics_check_id: "{{ synthetics_check_id }}" + threshold_windows: + recovery_window: "{{ recovery_window }}" + trigger_window: "{{ trigger_window }}" + thresholds: + critical: {{ critical }} + critical_query: "{{ critical_query }}" + critical_recovery: {{ critical_recovery }} + critical_recovery_query: "{{ critical_recovery_query }}" + ok: {{ ok }} + unknown: {{ unknown }} + warning: {{ warning }} + warning_recovery: {{ warning_recovery }} + timeout_h: {{ timeout_h }} + variables: + - compute: + aggregation: "{{ aggregation }}" + interval: {{ interval }} + metric: "{{ metric }}" + name: "{{ name }}" + source: "{{ source }}" + data_source: "{{ data_source }}" + group_by: "{{ group_by }}" + indexes: "{{ indexes }}" + name: "{{ name }}" + search: + query: "{{ query }}" + aggregator: "{{ aggregator }}" + query: "{{ query }}" + filter: "{{ filter }}" + measure: "{{ measure }}" + monitor_options: + crontab_override: "{{ crontab_override }}" + custom_sql: "{{ custom_sql }}" + custom_where: "{{ custom_where }}" + group_by_columns: + - "{{ group_by_columns }}" + model_type_override: "{{ model_type_override }}" + sensitivity: {{ sensitivity }} + schema_version: "{{ schema_version }}" + scope: "{{ scope }}" + job_type: "{{ job_type }}" + jobs_query: "{{ jobs_query }}" + query_dialect: "{{ query_dialect }}" + augment_query: + compute: + aggregation: "{{ aggregation }}" + interval: {{ interval }} + metric: "{{ metric }}" + name: "{{ name }}" + source: "{{ source }}" + data_source: "{{ data_source }}" + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + order: "{{ order }}" + source: "{{ source }}" + indexes: + - "{{ indexes }}" + name: "{{ name }}" + search: + query: "{{ query }}" + columns: + - alias: "{{ alias }}" + name: "{{ name }}" + query_filter: "{{ query_filter }}" + table_name: "{{ table_name }}" + base_query: + compute: + aggregation: "{{ aggregation }}" + interval: {{ interval }} + metric: "{{ metric }}" + name: "{{ name }}" + source: "{{ source }}" + data_source: "{{ data_source }}" + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + order: "{{ order }}" + source: "{{ source }}" + indexes: + - "{{ indexes }}" + name: "{{ name }}" + search: + query: "{{ query }}" + aggregator: "{{ aggregator }}" + query: "{{ query }}" + join_condition: + augment_attribute: "{{ augment_attribute }}" + base_attribute: "{{ base_attribute }}" + join_type: "{{ join_type }}" + filter_query: + compute: + aggregation: "{{ aggregation }}" + interval: {{ interval }} + metric: "{{ metric }}" + name: "{{ name }}" + source: "{{ source }}" + data_source: "{{ data_source }}" + group_by: + - facet: "{{ facet }}" + limit: {{ limit }} + sort: + aggregation: "{{ aggregation }}" + metric: "{{ metric }}" + order: "{{ order }}" + source: "{{ source }}" + indexes: + - "{{ indexes }}" + name: "{{ name }}" + search: + query: "{{ query }}" + columns: + - alias: "{{ alias }}" + name: "{{ name }}" + query_filter: "{{ query_filter }}" + table_name: "{{ table_name }}" + filters: "{{ filters }}" + - name: priority + value: {{ priority }} + description: | + Integer from 1 (high) to 5 (low) indicating alert severity. + - name: query + value: "{{ query }}" + description: | + The monitor query. + - name: restricted_roles + value: + - "{{ restricted_roles }}" + description: | + A list of unique role identifiers to define which roles are allowed to edit the monitor. The unique identifiers for all roles can be pulled from the [Roles API](https://docs.datadoghq.com/api/latest/roles/#list-roles) and are located in the \`data.id\` field. Editing a monitor includes any updates to the monitor configuration, monitor deletion, and muting of the monitor for any amount of time. You can use the [Restriction Policies API](https://docs.datadoghq.com/api/latest/restriction-policies/) to manage write authorization for individual monitors by teams and users, in addition to roles. + - name: tags + value: + - "{{ tags }}" + description: | + Tags associated to your monitor. + - name: type + value: "{{ type }}" + description: | + The type of the monitor. For more information about \`type\`, see the [monitor options](https://docs.datadoghq.com/monitors/guide/monitor_api_options/) docs. + valid_values: ['composite', 'event alert', 'log alert', 'metric alert', 'process alert', 'query alert', 'rum alert', 'service check', 'synthetics alert', 'trace-analytics alert', 'slo alert', 'event-v2 alert', 'audit alert', 'ci-pipelines alert', 'ci-tests alert', 'error-tracking alert', 'database-monitoring alert', 'network-performance alert', 'cost alert', 'data-quality alert', 'network-path alert', 'data-jobs alert', 'llm-observability alert'] +`} + + + + + +## `REPLACE` examples + + + + +Edit the specified monitor. + +```sql +REPLACE datadog.monitoring.monitors +SET +assets = '{{ assets }}', +draft_status = '{{ draft_status }}', +message = '{{ message }}', +name = '{{ name }}', +options = '{{ options }}', +priority = {{ priority }}, +query = '{{ query }}', +restricted_roles = '{{ restricted_roles }}', +tags = '{{ tags }}', +type = '{{ type }}' +WHERE +monitor_id = '{{ monitor_id }}' --required +RETURNING +id, +name, +assets, +created, +creator, +deleted, +draft_status, +matching_downtimes, +message, +modified, +multi, +options, +overall_state, +priority, +query, +restricted_roles, +state, +tags, +type; +``` + + + + +## `DELETE` examples + + + + +Delete the specified monitor + +```sql +DELETE FROM datadog.monitoring.monitors +WHERE monitor_id = '{{ monitor_id }}' --required +AND force = '{{ force }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Validate the monitor provided in the request.<br /><br />**Note**: Log monitors require an unscoped App Key and `logs_read_data` permission. + +```sql +EXEC datadog.monitoring.monitors.validate_monitor +@@json= +'{ +"assets": "{{ assets }}", +"draft_status": "{{ draft_status }}", +"matching_downtimes": "{{ matching_downtimes }}", +"message": "{{ message }}", +"name": "{{ name }}", +"options": "{{ options }}", +"priority": {{ priority }}, +"query": "{{ query }}", +"restricted_roles": "{{ restricted_roles }}", +"tags": "{{ tags }}", +"type": "{{ type }}" +}' +; +``` + + + +Validate the monitor provided in the request.<br /><br />**Note**: Log monitors require an unscoped App Key and `logs_read_data` permission. + +```sql +EXEC datadog.monitoring.monitors.validate_existing_monitor +@monitor_id='{{ monitor_id }}' --required, +@@json= +'{ +"assets": "{{ assets }}", +"draft_status": "{{ draft_status }}", +"matching_downtimes": "{{ matching_downtimes }}", +"message": "{{ message }}", +"name": "{{ name }}", +"options": "{{ options }}", +"priority": {{ priority }}, +"query": "{{ query }}", +"restricted_roles": "{{ restricted_roles }}", +"tags": "{{ tags }}", +"type": "{{ type }}" +}' +; +``` + + diff --git a/website/docs/services/monitoring/notification_rules/index.md b/website/docs/services/monitoring/notification_rules/index.md index 2575a17..a61c49c 100644 --- a/website/docs/services/monitoring/notification_rules/index.md +++ b/website/docs/services/monitoring/notification_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a notification_rules resou ## Overview - +
Namenotification_rules
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Monitor notification rule resource type. (default: monitor-notification-rule, example: monitor-notification-rule) + Monitor notification rule resource type. (monitor-notification-rule) (default: monitor-notification-rule, example: monitor-notification-rule) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Monitor notification rule resource type. (default: monitor-notification-rule, example: monitor-notification-rule) + Monitor notification rule resource type. (monitor-notification-rule) (default: monitor-notification-rule, example: monitor-notification-rule) @@ -126,35 +127,35 @@ The following methods are available for this resource: - rule_id, region + rule_id include Returns a monitor notification rule by `rule_id`. - region + page, per_page, sort, filters, include Returns a list of all monitor notification rules. - region, data__data + data Creates a monitor notification rule. - rule_id, region, data__data + rule_id, data Updates a monitor notification rule by `rule_id`. - rule_id, region + rule_id Deletes a monitor notification rule by `rule_id`. @@ -174,20 +175,20 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string ID of the monitor notification rule to delete. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string - JSON-encoded filter object. Supported keys: * `text`: Free-text query matched against rule name, tags, and recipients. * `tags`: Array of strings. Return rules that have any of these tags. * `recipients`: Array of strings. Return rules that have any of these recipients. (example: {"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]}) + JSON-encoded filter object. Supported keys: * `text`: Free-text query matched against rule name, tags, and recipients. * `tags`: Array of strings. Return rules that have any of these tags. * `recipients`: Array of strings. Return rules that have any of these recipients. (example: {"text":"error","tags":["env:prod","team:my-team"],"recipients":["slack-monitor-app","email@example.com"]}) @@ -233,7 +234,6 @@ relationships, type FROM datadog.monitoring.notification_rules WHERE rule_id = '{{ rule_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -249,8 +249,7 @@ attributes, relationships, type FROM datadog.monitoring.notification_rules -WHERE region = '{{ region }}' -- required -AND page = '{{ page }}' +WHERE page = '{{ page }}' AND per_page = '{{ per_page }}' AND sort = '{{ sort }}' AND filters = '{{ filters }}' @@ -276,12 +275,10 @@ Creates a monitor notification rule. ```sql INSERT INTO datadog.monitoring.notification_rules ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -290,18 +287,32 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: notification_rules props: - - name: region - value: string - description: Required parameter for the notification_rules resource. - name: data - value: object description: | Object to create a monitor notification rule. -``` + value: + attributes: + bundle_config: + duration: {{ duration }} + conditional_recipients: + conditions: + - recipients: "{{ recipients }}" + scope: "{{ scope }}" + fallback_recipients: + - "{{ fallback_recipients }}" + filter: + tags: + - "{{ tags }}" + scope: "{{ scope }}" + name: "{{ name }}" + recipients: + - "{{ recipients }}" + type: "{{ type }}" +`} + @@ -321,11 +332,10 @@ Updates a monitor notification rule by `rule_id`. ```sql UPDATE datadog.monitoring.notification_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -349,7 +359,6 @@ Deletes a monitor notification rule by `rule_id`. ```sql DELETE FROM datadog.monitoring.notification_rules WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/monitoring/on_demand_concurrency_cap/index.md b/website/docs/services/monitoring/on_demand_concurrency_cap/index.md index a30f81a..cef5cce 100644 --- a/website/docs/services/monitoring/on_demand_concurrency_cap/index.md +++ b/website/docs/services/monitoring/on_demand_concurrency_cap/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an on_demand_concurrency_cap -Nameon_demand_concurrency_cap +Name TypeResource Id @@ -56,7 +57,7 @@ The following fields are returned by `SELECT` queries: string - On-demand concurrency cap type. + On-demand concurrency cap type. (on_demand_concurrency_cap) @@ -81,14 +82,14 @@ The following methods are available for this resource: - region + Get the on-demand concurrency cap. - region + Save new value for on-demand concurrency cap. @@ -108,10 +109,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -133,7 +134,6 @@ SELECT attributes, type FROM datadog.monitoring.on_demand_concurrency_cap -WHERE region = '{{ region }}' -- required ; ``` @@ -155,12 +155,10 @@ Save new value for on-demand concurrency cap. ```sql INSERT INTO datadog.monitoring.on_demand_concurrency_cap ( -data__on_demand_concurrency_cap, -region +on_demand_concurrency_cap ) SELECT -{{ on_demand_concurrency_cap }}, -'{{ region }}' +{{ on_demand_concurrency_cap }} RETURNING data ; @@ -168,17 +166,14 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: on_demand_concurrency_cap props: - - name: region - value: string - description: Required parameter for the on_demand_concurrency_cap resource. - name: on_demand_concurrency_cap - value: number + value: {{ on_demand_concurrency_cap }} description: | Value of the on-demand concurrency cap. -``` +`} + diff --git a/website/docs/services/monitoring/service_checks/index.md b/website/docs/services/monitoring/service_checks/index.md new file mode 100644 index 0000000..8e7be89 --- /dev/null +++ b/website/docs/services/monitoring/service_checks/index.md @@ -0,0 +1,103 @@ +--- +title: service_checks +hide_title: false +hide_table_of_contents: false +keywords: + - service_checks + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a service_checks resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Submit a list of Service Checks.<br /><br />**Notes**:<br />- A valid API key is required.<br />- Service checks can be submitted up to 10 minutes in the past.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Submit a list of Service Checks.<br /><br />**Notes**:<br />- A valid API key is required.<br />- Service checks can be submitted up to 10 minutes in the past. + +```sql +EXEC datadog.monitoring.service_checks.submit_service_check +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_api_multistep_subtest_parents/index.md b/website/docs/services/monitoring/synthetics_api_multistep_subtest_parents/index.md new file mode 100644 index 0000000..0a04f09 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_api_multistep_subtest_parents/index.md @@ -0,0 +1,145 @@ +--- +title: synthetics_api_multistep_subtest_parents +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_api_multistep_subtest_parents + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_api_multistep_subtest_parents resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the parent test. (example: abc-def-123)
objectAttributes of a parent API multistep test.
stringType of the parent test resource. (parent_test) (default: parent_test, example: parent_test)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the list of API multistep tests that include a given subtest,<br />along with their monitor status.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the subtest.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of API multistep tests that include a given subtest,<br />along with their monitor status. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_api_multistep_subtest_parents +WHERE public_id = '{{ public_id }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_api_multistep_subtests/index.md b/website/docs/services/monitoring/synthetics_api_multistep_subtests/index.md new file mode 100644 index 0000000..d9d21b5 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_api_multistep_subtests/index.md @@ -0,0 +1,145 @@ +--- +title: synthetics_api_multistep_subtests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_api_multistep_subtests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_api_multistep_subtests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the subtest. (example: abc-def-123)
objectAttributes of a Synthetic API multistep subtest.
stringType of the subtest resource. (subtest) (default: subtest, example: subtest)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the list of API tests that can be added as subtests to a given API multistep test.<br />The current test is excluded from the list since a test cannot be a subtest of itself.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the API multistep test.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of API tests that can be added as subtests to a given API multistep test.<br />The current test is excluded from the list since a test cannot be a subtest of itself. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_api_multistep_subtests +WHERE public_id = '{{ public_id }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_api_test_results/index.md b/website/docs/services/monitoring/synthetics_api_test_results/index.md new file mode 100644 index 0000000..213be8c --- /dev/null +++ b/website/docs/services/monitoring/synthetics_api_test_results/index.md @@ -0,0 +1,257 @@ +--- +title: synthetics_api_test_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_api_test_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_api_test_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the API test result.
objectObject describing the API test configuration.
number (double)When the API test was conducted.
integer (int64)Version of the API test used.
stringLocations for which to query the API test results.
objectObject containing results for your Synthetic API test.
integer (int64)The status of your Synthetic monitor. * `O` for not triggered * `1` for triggered * `2` for no data (0, 1, 2)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the API test result.
number (double)Last time the API test was performed.
stringLocation from which the API test was performed.
objectResult of the last API test run.
integer (int64)The status of your Synthetic monitor. * `O` for not triggered * `1` for triggered * `2` for no data (0, 1, 2)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, result_idGet a specific full result from a given Synthetic API test.
public_idfrom_ts, to_ts, probe_dcGet the last 150 test results summaries for a given Synthetic API test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the test for which to search results for.
stringThe ID of the result to get.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Timestamp in milliseconds from which to start querying results.
arrayLocations for which to query results.
integer (int64)Timestamp in milliseconds up to which to query results.
+ +## `SELECT` examples + + + + +Get a specific full result from a given Synthetic API test. + +```sql +SELECT +result_id, +check, +check_time, +check_version, +probe_dc, +result, +status +FROM datadog.monitoring.synthetics_api_test_results +WHERE public_id = '{{ public_id }}' -- required +AND result_id = '{{ result_id }}' -- required +; +``` + + + +Get the last 150 test results summaries for a given Synthetic API test. + +```sql +SELECT +result_id, +check_time, +probe_dc, +result, +status +FROM datadog.monitoring.synthetics_api_test_results +WHERE public_id = '{{ public_id }}' -- required +AND from_ts = '{{ from_ts }}' +AND to_ts = '{{ to_ts }}' +AND probe_dc = '{{ probe_dc }}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_api_tests/index.md b/website/docs/services/monitoring/synthetics_api_tests/index.md new file mode 100644 index 0000000..f98c957 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_api_tests/index.md @@ -0,0 +1,604 @@ +--- +title: synthetics_api_tests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_api_tests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_api_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the test. (example: Example test name)
integer (int64)The associated monitor ID.
stringThe public ID for the test. (example: 123-abc-456)
objectConfiguration object for a Synthetic API test.
arrayArray of locations used to run the test.
stringNotification message associated with the test. (example: Notification message)
objectObject describing the extra options for a Synthetic test.
stringDefine whether you want to start (`live`) or pause (`paused`) a Synthetic test. (live, paused) (example: live)
stringThe subtype of the Synthetic API test, `http`, `ssl`, `tcp`, `dns`, `icmp`, `udp`, `websocket`, `grpc` or `multi`. (http, ssl, tcp, dns, multi, icmp, udp, websocket, grpc) (example: http)
arrayArray of tags attached to the test.
stringType of the Synthetic test, `api`. (api) (default: api, example: api)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the detailed configuration associated with<br />a Synthetic API test.
name, config, locations, options, type, messageCreate a Synthetic API test.
public_id, name, config, locations, options, type, messageEdit the configuration of a Synthetic API test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the test to get details from.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the detailed configuration associated with<br />a Synthetic API test. + +```sql +SELECT +name, +monitor_id, +public_id, +config, +locations, +message, +options, +status, +subtype, +tags, +type +FROM datadog.monitoring.synthetics_api_tests +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Synthetic API test. + +```sql +INSERT INTO datadog.monitoring.synthetics_api_tests ( +config, +locations, +message, +name, +options, +status, +subtype, +tags, +type +) +SELECT +'{{ config }}' /* required */, +'{{ locations }}' /* required */, +'{{ message }}' /* required */, +'{{ name }}' /* required */, +'{{ options }}' /* required */, +'{{ status }}', +'{{ subtype }}', +'{{ tags }}', +'{{ type }}' /* required */ +RETURNING +name, +monitor_id, +public_id, +config, +locations, +message, +options, +status, +subtype, +tags, +type +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_api_tests + props: + - name: config + description: | + Configuration object for a Synthetic API test. + value: + assertions: + - operator: "{{ operator }}" + property: "{{ property }}" + target: {{ target }} + timingsScope: "{{ timingsScope }}" + type: "{{ type }}" + code: "{{ code }}" + configVariables: + - example: "{{ example }}" + id: "{{ id }}" + name: "{{ name }}" + pattern: "{{ pattern }}" + secure: {{ secure }} + type: "{{ type }}" + request: + allow_insecure: {{ allow_insecure }} + basicAuth: + password: "{{ password }}" + type: "{{ type }}" + username: "{{ username }}" + accessKey: "{{ accessKey }}" + region: "{{ region }}" + secretKey: "{{ secretKey }}" + serviceName: "{{ serviceName }}" + sessionToken: "{{ sessionToken }}" + domain: "{{ domain }}" + workstation: "{{ workstation }}" + accessTokenUrl: "{{ accessTokenUrl }}" + audience: "{{ audience }}" + clientId: "{{ clientId }}" + clientSecret: "{{ clientSecret }}" + resource: "{{ resource }}" + scope: "{{ scope }}" + tokenApiAuthentication: "{{ tokenApiAuthentication }}" + addClaims: + exp: {{ exp }} + iat: {{ iat }} + algorithm: "{{ algorithm }}" + expiresIn: {{ expiresIn }} + header: "{{ header }}" + payload: "{{ payload }}" + secret: "{{ secret }}" + tokenPrefix: "{{ tokenPrefix }}" + body: "{{ body }}" + bodyType: "{{ bodyType }}" + callType: "{{ callType }}" + certificate: + cert: + content: "{{ content }}" + filename: "{{ filename }}" + updatedAt: "{{ updatedAt }}" + key: + content: "{{ content }}" + filename: "{{ filename }}" + updatedAt: "{{ updatedAt }}" + certificateDomains: + - "{{ certificateDomains }}" + checkCertificateRevocation: {{ checkCertificateRevocation }} + compressedJsonDescriptor: "{{ compressedJsonDescriptor }}" + compressedProtoFile: "{{ compressedProtoFile }}" + disableAiaIntermediateFetching: {{ disableAiaIntermediateFetching }} + dnsServer: "{{ dnsServer }}" + dnsServerPort: {{ dnsServerPort }} + files: + - bucketKey: "{{ bucketKey }}" + content: "{{ content }}" + encoding: "{{ encoding }}" + name: "{{ name }}" + originalFileName: "{{ originalFileName }}" + size: {{ size }} + type: "{{ type }}" + follow_redirects: {{ follow_redirects }} + form: "{{ form }}" + headers: "{{ headers }}" + host: "{{ host }}" + httpVersion: "{{ httpVersion }}" + ignore_certificate_validation: {{ ignore_certificate_validation }} + isMessageBase64Encoded: {{ isMessageBase64Encoded }} + mcpProtocolVersion: "{{ mcpProtocolVersion }}" + message: "{{ message }}" + metadata: "{{ metadata }}" + method: "{{ method }}" + noSavingResponseBody: {{ noSavingResponseBody }} + numberOfPackets: {{ numberOfPackets }} + persistCookies: {{ persistCookies }} + port: {{ port }} + proxy: + headers: "{{ headers }}" + url: "{{ url }}" + query: "{{ query }}" + servername: "{{ servername }}" + service: "{{ service }}" + shouldTrackHops: {{ shouldTrackHops }} + timeout: {{ timeout }} + toolArgs: "{{ toolArgs }}" + toolName: "{{ toolName }}" + url: "{{ url }}" + steps: + - allowFailure: {{ allowFailure }} + assertions: "{{ assertions }}" + exitIfSucceed: {{ exitIfSucceed }} + extractedValues: "{{ extractedValues }}" + extractedValuesFromScript: "{{ extractedValuesFromScript }}" + id: "{{ id }}" + isCritical: {{ isCritical }} + name: "{{ name }}" + request: + allow_insecure: {{ allow_insecure }} + basicAuth: + password: "{{ password }}" + type: "{{ type }}" + username: "{{ username }}" + accessKey: "{{ accessKey }}" + region: "{{ region }}" + secretKey: "{{ secretKey }}" + serviceName: "{{ serviceName }}" + sessionToken: "{{ sessionToken }}" + domain: "{{ domain }}" + workstation: "{{ workstation }}" + accessTokenUrl: "{{ accessTokenUrl }}" + audience: "{{ audience }}" + clientId: "{{ clientId }}" + clientSecret: "{{ clientSecret }}" + resource: "{{ resource }}" + scope: "{{ scope }}" + tokenApiAuthentication: "{{ tokenApiAuthentication }}" + addClaims: + exp: {{ exp }} + iat: {{ iat }} + algorithm: "{{ algorithm }}" + expiresIn: {{ expiresIn }} + header: "{{ header }}" + payload: "{{ payload }}" + secret: "{{ secret }}" + tokenPrefix: "{{ tokenPrefix }}" + body: "{{ body }}" + bodyType: "{{ bodyType }}" + callType: "{{ callType }}" + certificate: + cert: + content: "{{ content }}" + filename: "{{ filename }}" + updatedAt: "{{ updatedAt }}" + key: + content: "{{ content }}" + filename: "{{ filename }}" + updatedAt: "{{ updatedAt }}" + certificateDomains: + - "{{ certificateDomains }}" + checkCertificateRevocation: {{ checkCertificateRevocation }} + compressedJsonDescriptor: "{{ compressedJsonDescriptor }}" + compressedProtoFile: "{{ compressedProtoFile }}" + disableAiaIntermediateFetching: {{ disableAiaIntermediateFetching }} + dnsServer: "{{ dnsServer }}" + dnsServerPort: {{ dnsServerPort }} + files: + - bucketKey: "{{ bucketKey }}" + content: "{{ content }}" + encoding: "{{ encoding }}" + name: "{{ name }}" + originalFileName: "{{ originalFileName }}" + size: {{ size }} + type: "{{ type }}" + follow_redirects: {{ follow_redirects }} + form: "{{ form }}" + headers: "{{ headers }}" + host: "{{ host }}" + httpVersion: "{{ httpVersion }}" + ignore_certificate_validation: {{ ignore_certificate_validation }} + isMessageBase64Encoded: {{ isMessageBase64Encoded }} + mcpProtocolVersion: "{{ mcpProtocolVersion }}" + message: "{{ message }}" + metadata: "{{ metadata }}" + method: "{{ method }}" + noSavingResponseBody: {{ noSavingResponseBody }} + numberOfPackets: {{ numberOfPackets }} + persistCookies: {{ persistCookies }} + port: {{ port }} + proxy: + headers: "{{ headers }}" + url: "{{ url }}" + query: "{{ query }}" + servername: "{{ servername }}" + service: "{{ service }}" + shouldTrackHops: {{ shouldTrackHops }} + timeout: {{ timeout }} + toolArgs: "{{ toolArgs }}" + toolName: "{{ toolName }}" + url: "{{ url }}" + retry: + count: {{ count }} + interval: {{ interval }} + subtype: "{{ subtype }}" + value: {{ value }} + alwaysExecute: {{ alwaysExecute }} + subtestPublicId: "{{ subtestPublicId }}" + variablesFromScript: "{{ variablesFromScript }}" + - name: locations + value: + - "{{ locations }}" + description: | + Array of locations used to run the test. + - name: message + value: "{{ message }}" + description: | + Notification message associated with the test. + - name: name + value: "{{ name }}" + description: | + Name of the test. + - name: options + description: | + Object describing the extra options for a Synthetic test. + value: + accept_self_signed: {{ accept_self_signed }} + allow_insecure: {{ allow_insecure }} + blockedRequestPatterns: + - "{{ blockedRequestPatterns }}" + captureNetworkPayloads: {{ captureNetworkPayloads }} + checkCertificateRevocation: {{ checkCertificateRevocation }} + ci: + executionRule: "{{ executionRule }}" + device_ids: + - "{{ device_ids }}" + disableAiaIntermediateFetching: {{ disableAiaIntermediateFetching }} + disableCors: {{ disableCors }} + disableCsp: {{ disableCsp }} + enableProfiling: {{ enableProfiling }} + enableSecurityTesting: {{ enableSecurityTesting }} + follow_redirects: {{ follow_redirects }} + httpVersion: "{{ httpVersion }}" + ignoreServerCertificateError: {{ ignoreServerCertificateError }} + ignore_certificate_validation: {{ ignore_certificate_validation }} + initialNavigationTimeout: {{ initialNavigationTimeout }} + min_failure_duration: {{ min_failure_duration }} + min_location_failed: {{ min_location_failed }} + monitor_name: "{{ monitor_name }}" + monitor_options: + escalation_message: "{{ escalation_message }}" + notification_preset_name: "{{ notification_preset_name }}" + renotify_interval: {{ renotify_interval }} + renotify_occurrences: {{ renotify_occurrences }} + monitor_priority: {{ monitor_priority }} + noScreenshot: {{ noScreenshot }} + restricted_roles: + - "{{ restricted_roles }}" + retry: + count: {{ count }} + interval: {{ interval }} + rumSettings: + applicationId: "{{ applicationId }}" + clientTokenId: {{ clientTokenId }} + isEnabled: {{ isEnabled }} + scheduling: + timeframes: + - day: {{ day }} + from: "{{ from }}" + to: "{{ to }}" + timezone: "{{ timezone }}" + tick_every: {{ tick_every }} + - name: status + value: "{{ status }}" + description: | + Define whether you want to start (\`live\`) or pause (\`paused\`) a + Synthetic test. + valid_values: ['live', 'paused'] + - name: subtype + value: "{{ subtype }}" + description: | + The subtype of the Synthetic API test, \`http\`, \`ssl\`, \`tcp\`, + \`dns\`, \`icmp\`, \`udp\`, \`websocket\`, \`grpc\` or \`multi\`. + valid_values: ['http', 'ssl', 'tcp', 'dns', 'multi', 'icmp', 'udp', 'websocket', 'grpc'] + - name: tags + value: + - "{{ tags }}" + description: | + Array of tags attached to the test. + - name: type + value: "{{ type }}" + description: | + Type of the Synthetic test, \`api\`. + valid_values: ['api'] + default: api +`} + + + + + +## `REPLACE` examples + + + + +Edit the configuration of a Synthetic API test. + +```sql +REPLACE datadog.monitoring.synthetics_api_tests +SET +config = '{{ config }}', +locations = '{{ locations }}', +message = '{{ message }}', +name = '{{ name }}', +options = '{{ options }}', +status = '{{ status }}', +subtype = '{{ subtype }}', +tags = '{{ tags }}', +type = '{{ type }}' +WHERE +public_id = '{{ public_id }}' --required +AND name = '{{ name }}' --required +AND config = '{{ config }}' --required +AND locations = '{{ locations }}' --required +AND options = '{{ options }}' --required +AND type = '{{ type }}' --required +AND message = '{{ message }}' --required +RETURNING +name, +monitor_id, +public_id, +config, +locations, +message, +options, +status, +subtype, +tags, +type; +``` + + diff --git a/website/docs/services/monitoring/synthetics_browser_test_results/index.md b/website/docs/services/monitoring/synthetics_browser_test_results/index.md new file mode 100644 index 0000000..bbd14a4 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_browser_test_results/index.md @@ -0,0 +1,257 @@ +--- +title: synthetics_browser_test_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_browser_test_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_browser_test_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the browser test result.
objectObject describing the browser test configuration.
number (double)When the browser test was conducted.
integer (int64)Version of the browser test used.
stringLocation from which the browser test was performed.
objectObject containing results for your Synthetic browser test.
integer (int64)The status of your Synthetic monitor. * `O` for not triggered * `1` for triggered * `2` for no data (0, 1, 2)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the browser test result.
number (double)Last time the browser test was performed.
stringLocation from which the Browser test was performed.
objectObject with the result of the last browser test run.
integer (int64)The status of your Synthetic monitor. * `O` for not triggered * `1` for triggered * `2` for no data (0, 1, 2)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, result_idGet a specific full result from a given Synthetic browser test.
public_idfrom_ts, to_ts, probe_dcGet the last 150 test results summaries for a given Synthetic browser test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the browser test for which to search results for.
stringThe ID of the result to get.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Timestamp in milliseconds from which to start querying results.
arrayLocations for which to query results.
integer (int64)Timestamp in milliseconds up to which to query results.
+ +## `SELECT` examples + + + + +Get a specific full result from a given Synthetic browser test. + +```sql +SELECT +result_id, +check, +check_time, +check_version, +probe_dc, +result, +status +FROM datadog.monitoring.synthetics_browser_test_results +WHERE public_id = '{{ public_id }}' -- required +AND result_id = '{{ result_id }}' -- required +; +``` + + + +Get the last 150 test results summaries for a given Synthetic browser test. + +```sql +SELECT +result_id, +check_time, +probe_dc, +result, +status +FROM datadog.monitoring.synthetics_browser_test_results +WHERE public_id = '{{ public_id }}' -- required +AND from_ts = '{{ from_ts }}' +AND to_ts = '{{ to_ts }}' +AND probe_dc = '{{ probe_dc }}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_browser_tests/index.md b/website/docs/services/monitoring/synthetics_browser_tests/index.md new file mode 100644 index 0000000..849c1a2 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_browser_tests/index.md @@ -0,0 +1,520 @@ +--- +title: synthetics_browser_tests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_browser_tests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_browser_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the test. (example: Example test name)
integer (int64)The associated monitor ID.
stringThe public ID of the test.
objectConfiguration object for a Synthetic browser test.
arrayArray of locations used to run the test.
stringNotification message associated with the test. Message can either be text or an empty string. (example: )
objectObject describing the extra options for a Synthetic test.
stringDefine whether you want to start (`live`) or pause (`paused`) a Synthetic test. (live, paused) (example: live)
arrayArray of steps for the test.
arrayArray of tags attached to the test.
stringType of the Synthetic test, `browser`. (browser) (default: browser, example: browser)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the detailed configuration (including steps) associated with<br />a Synthetic browser test.
config, locations, name, options, type, messageCreate a Synthetic browser test.
public_id, config, locations, name, options, type, messageEdit the configuration of a Synthetic browser test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the test to edit.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the detailed configuration (including steps) associated with<br />a Synthetic browser test. + +```sql +SELECT +name, +monitor_id, +public_id, +config, +locations, +message, +options, +status, +steps, +tags, +type +FROM datadog.monitoring.synthetics_browser_tests +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Synthetic browser test. + +```sql +INSERT INTO datadog.monitoring.synthetics_browser_tests ( +config, +locations, +message, +name, +options, +status, +steps, +tags, +type +) +SELECT +'{{ config }}' /* required */, +'{{ locations }}' /* required */, +'{{ message }}' /* required */, +'{{ name }}' /* required */, +'{{ options }}' /* required */, +'{{ status }}', +'{{ steps }}', +'{{ tags }}', +'{{ type }}' /* required */ +RETURNING +name, +monitor_id, +public_id, +config, +locations, +message, +options, +status, +steps, +tags, +type +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_browser_tests + props: + - name: config + description: | + Configuration object for a Synthetic browser test. + value: + assertions: + - operator: "{{ operator }}" + property: "{{ property }}" + target: {{ target }} + timingsScope: "{{ timingsScope }}" + type: "{{ type }}" + code: "{{ code }}" + configVariables: + - example: "{{ example }}" + id: "{{ id }}" + name: "{{ name }}" + pattern: "{{ pattern }}" + secure: {{ secure }} + type: "{{ type }}" + request: + allow_insecure: {{ allow_insecure }} + basicAuth: + password: "{{ password }}" + type: "{{ type }}" + username: "{{ username }}" + accessKey: "{{ accessKey }}" + region: "{{ region }}" + secretKey: "{{ secretKey }}" + serviceName: "{{ serviceName }}" + sessionToken: "{{ sessionToken }}" + domain: "{{ domain }}" + workstation: "{{ workstation }}" + accessTokenUrl: "{{ accessTokenUrl }}" + audience: "{{ audience }}" + clientId: "{{ clientId }}" + clientSecret: "{{ clientSecret }}" + resource: "{{ resource }}" + scope: "{{ scope }}" + tokenApiAuthentication: "{{ tokenApiAuthentication }}" + addClaims: + exp: {{ exp }} + iat: {{ iat }} + algorithm: "{{ algorithm }}" + expiresIn: {{ expiresIn }} + header: "{{ header }}" + payload: "{{ payload }}" + secret: "{{ secret }}" + tokenPrefix: "{{ tokenPrefix }}" + body: "{{ body }}" + bodyType: "{{ bodyType }}" + callType: "{{ callType }}" + certificate: + cert: + content: "{{ content }}" + filename: "{{ filename }}" + updatedAt: "{{ updatedAt }}" + key: + content: "{{ content }}" + filename: "{{ filename }}" + updatedAt: "{{ updatedAt }}" + certificateDomains: + - "{{ certificateDomains }}" + checkCertificateRevocation: {{ checkCertificateRevocation }} + compressedJsonDescriptor: "{{ compressedJsonDescriptor }}" + compressedProtoFile: "{{ compressedProtoFile }}" + disableAiaIntermediateFetching: {{ disableAiaIntermediateFetching }} + dnsServer: "{{ dnsServer }}" + dnsServerPort: {{ dnsServerPort }} + files: + - bucketKey: "{{ bucketKey }}" + content: "{{ content }}" + encoding: "{{ encoding }}" + name: "{{ name }}" + originalFileName: "{{ originalFileName }}" + size: {{ size }} + type: "{{ type }}" + follow_redirects: {{ follow_redirects }} + form: "{{ form }}" + headers: "{{ headers }}" + host: "{{ host }}" + httpVersion: "{{ httpVersion }}" + ignore_certificate_validation: {{ ignore_certificate_validation }} + isMessageBase64Encoded: {{ isMessageBase64Encoded }} + mcpProtocolVersion: "{{ mcpProtocolVersion }}" + message: "{{ message }}" + metadata: "{{ metadata }}" + method: "{{ method }}" + noSavingResponseBody: {{ noSavingResponseBody }} + numberOfPackets: {{ numberOfPackets }} + persistCookies: {{ persistCookies }} + port: {{ port }} + proxy: + headers: "{{ headers }}" + url: "{{ url }}" + query: "{{ query }}" + servername: "{{ servername }}" + service: "{{ service }}" + shouldTrackHops: {{ shouldTrackHops }} + timeout: {{ timeout }} + toolArgs: "{{ toolArgs }}" + toolName: "{{ toolName }}" + url: "{{ url }}" + setCookie: "{{ setCookie }}" + variables: + - example: "{{ example }}" + id: "{{ id }}" + name: "{{ name }}" + pattern: "{{ pattern }}" + secure: {{ secure }} + type: "{{ type }}" + - name: locations + value: + - "{{ locations }}" + description: | + Array of locations used to run the test. + - name: message + value: "{{ message }}" + description: | + Notification message associated with the test. Message can either be text or an empty string. + - name: name + value: "{{ name }}" + description: | + Name of the test. + - name: options + description: | + Object describing the extra options for a Synthetic test. + value: + accept_self_signed: {{ accept_self_signed }} + allow_insecure: {{ allow_insecure }} + blockedRequestPatterns: + - "{{ blockedRequestPatterns }}" + captureNetworkPayloads: {{ captureNetworkPayloads }} + checkCertificateRevocation: {{ checkCertificateRevocation }} + ci: + executionRule: "{{ executionRule }}" + device_ids: + - "{{ device_ids }}" + disableAiaIntermediateFetching: {{ disableAiaIntermediateFetching }} + disableCors: {{ disableCors }} + disableCsp: {{ disableCsp }} + enableProfiling: {{ enableProfiling }} + enableSecurityTesting: {{ enableSecurityTesting }} + follow_redirects: {{ follow_redirects }} + httpVersion: "{{ httpVersion }}" + ignoreServerCertificateError: {{ ignoreServerCertificateError }} + ignore_certificate_validation: {{ ignore_certificate_validation }} + initialNavigationTimeout: {{ initialNavigationTimeout }} + min_failure_duration: {{ min_failure_duration }} + min_location_failed: {{ min_location_failed }} + monitor_name: "{{ monitor_name }}" + monitor_options: + escalation_message: "{{ escalation_message }}" + notification_preset_name: "{{ notification_preset_name }}" + renotify_interval: {{ renotify_interval }} + renotify_occurrences: {{ renotify_occurrences }} + monitor_priority: {{ monitor_priority }} + noScreenshot: {{ noScreenshot }} + restricted_roles: + - "{{ restricted_roles }}" + retry: + count: {{ count }} + interval: {{ interval }} + rumSettings: + applicationId: "{{ applicationId }}" + clientTokenId: {{ clientTokenId }} + isEnabled: {{ isEnabled }} + scheduling: + timeframes: + - day: {{ day }} + from: "{{ from }}" + to: "{{ to }}" + timezone: "{{ timezone }}" + tick_every: {{ tick_every }} + - name: status + value: "{{ status }}" + description: | + Define whether you want to start (\`live\`) or pause (\`paused\`) a + Synthetic test. + valid_values: ['live', 'paused'] + - name: steps + description: | + Array of steps for the test. + value: + - allowFailure: {{ allowFailure }} + alwaysExecute: {{ alwaysExecute }} + exitIfSucceed: {{ exitIfSucceed }} + isCritical: {{ isCritical }} + name: "{{ name }}" + noScreenshot: {{ noScreenshot }} + params: "{{ params }}" + public_id: "{{ public_id }}" + timeout: {{ timeout }} + type: "{{ type }}" + - name: tags + value: + - "{{ tags }}" + description: | + Array of tags attached to the test. + - name: type + value: "{{ type }}" + description: | + Type of the Synthetic test, \`browser\`. + valid_values: ['browser'] + default: browser +`} + + + + + +## `REPLACE` examples + + + + +Edit the configuration of a Synthetic browser test. + +```sql +REPLACE datadog.monitoring.synthetics_browser_tests +SET +config = '{{ config }}', +locations = '{{ locations }}', +message = '{{ message }}', +name = '{{ name }}', +options = '{{ options }}', +status = '{{ status }}', +steps = '{{ steps }}', +tags = '{{ tags }}', +type = '{{ type }}' +WHERE +public_id = '{{ public_id }}' --required +AND config = '{{ config }}' --required +AND locations = '{{ locations }}' --required +AND name = '{{ name }}' --required +AND options = '{{ options }}' --required +AND type = '{{ type }}' --required +AND message = '{{ message }}' --required +RETURNING +name, +monitor_id, +public_id, +config, +locations, +message, +options, +status, +steps, +tags, +type; +``` + + diff --git a/website/docs/services/monitoring/synthetics_ci_batches/index.md b/website/docs/services/monitoring/synthetics_ci_batches/index.md new file mode 100644 index 0000000..417f4d2 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_ci_batches/index.md @@ -0,0 +1,145 @@ +--- +title: synthetics_ci_batches +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_ci_batches + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_ci_batches resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectMetadata for the Synthetic tests run.
arrayList of results for the batch.
stringDetermines whether the batch has passed, failed, or is in progress. (passed, skipped, failed)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
batch_idGet a batch's updated details.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the batch.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a batch's updated details. + +```sql +SELECT +metadata, +results, +status +FROM datadog.monitoring.synthetics_ci_batches +WHERE batch_id = '{{ batch_id }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_default_locations/index.md b/website/docs/services/monitoring/synthetics_default_locations/index.md new file mode 100644 index 0000000..e9e9462 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_default_locations/index.md @@ -0,0 +1,127 @@ +--- +title: synthetics_default_locations +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_default_locations + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_default_locations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the default locations settings.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the default locations settings. + +```sql +SELECT +synthetics_default_location +FROM datadog.monitoring.synthetics_default_locations +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_downtime_tests/index.md b/website/docs/services/monitoring/synthetics_downtime_tests/index.md new file mode 100644 index 0000000..8819b14 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_downtime_tests/index.md @@ -0,0 +1,146 @@ +--- +title: synthetics_downtime_tests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_downtime_tests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_downtime_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
downtime_id, test_idAssociate a Synthetics test with a downtime.
downtime_id, test_idDisassociate a Synthetics test from a downtime.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the downtime.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe public ID of the Synthetics test to disassociate from the downtime.
+ +## `REPLACE` examples + + + + +Associate a Synthetics test with a downtime. + +```sql +REPLACE datadog.monitoring.synthetics_downtime_tests +SET +-- No updatable properties +WHERE +downtime_id = '{{ downtime_id }}' --required +AND test_id = '{{ test_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Disassociate a Synthetics test from a downtime. + +```sql +DELETE FROM datadog.monitoring.synthetics_downtime_tests +WHERE downtime_id = '{{ downtime_id }}' --required +AND test_id = '{{ test_id }}' --required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_downtimes/index.md b/website/docs/services/monitoring/synthetics_downtimes/index.md new file mode 100644 index 0000000..d886e45 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_downtimes/index.md @@ -0,0 +1,347 @@ +--- +title: synthetics_downtimes +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_downtimes + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_downtimes resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the downtime. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a Synthetics downtime response object.
stringThe resource type for a Synthetics downtime. (downtime) (example: downtime)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the downtime. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a Synthetics downtime response object.
stringThe resource type for a Synthetics downtime. (downtime) (example: downtime)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
downtime_idGet a Synthetics downtime by its ID.
filter[test_ids], filter[active]Get a list of all Synthetics downtimes for your organization.
dataCreate a new Synthetics downtime.
downtime_id, dataUpdate a Synthetics downtime by its ID.
downtime_idDelete a Synthetics downtime by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the downtime to delete.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringIf set to `true`, return only downtimes that are currently active.
stringComma-separated list of Synthetics test public IDs to filter downtimes by.
+ +## `SELECT` examples + + + + +Get a Synthetics downtime by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_downtimes +WHERE downtime_id = '{{ downtime_id }}' -- required +; +``` + + + +Get a list of all Synthetics downtimes for your organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_downtimes +WHERE filter[test_ids] = '{{ filter[test_ids] }}' +AND filter[active] = '{{ filter[active] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new Synthetics downtime. + +```sql +INSERT INTO datadog.monitoring.synthetics_downtimes ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_downtimes + props: + - name: data + description: | + The data object for a Synthetics downtime create or update request. + value: + attributes: + description: "{{ description }}" + isEnabled: {{ isEnabled }} + name: "{{ name }}" + tags: + - "{{ tags }}" + testIds: + - "{{ testIds }}" + timeSlots: + - duration: {{ duration }} + name: "{{ name }}" + recurrence: + end: + day: {{ day }} + hour: {{ hour }} + minute: {{ minute }} + month: {{ month }} + year: {{ year }} + frequency: "{{ frequency }}" + interval: {{ interval }} + weekdayPositions: + - {{ weekdayPositions }} + weekdays: + - "{{ weekdays }}" + start: + day: {{ day }} + hour: {{ hour }} + minute: {{ minute }} + month: {{ month }} + year: {{ year }} + timezone: "{{ timezone }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a Synthetics downtime by its ID. + +```sql +REPLACE datadog.monitoring.synthetics_downtimes +SET +data = '{{ data }}' +WHERE +downtime_id = '{{ downtime_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a Synthetics downtime by its ID. + +```sql +DELETE FROM datadog.monitoring.synthetics_downtimes +WHERE downtime_id = '{{ downtime_id }}' --required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_fast_test_results/index.md b/website/docs/services/monitoring/synthetics_fast_test_results/index.md new file mode 100644 index 0000000..9101795 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_fast_test_results/index.md @@ -0,0 +1,145 @@ +--- +title: synthetics_fast_test_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_fast_test_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_fast_test_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the fast test, used as the result identifier. (example: abc12345-1234-1234-1234-abc123456789)
objectAttributes of the fast test result.
stringJSON:API type for a fast test result. (result) (default: result, example: result)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
id
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the fast test to retrieve the result for.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_fast_test_results +WHERE id = '{{ id }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_global_variables/index.md b/website/docs/services/monitoring/synthetics_global_variables/index.md new file mode 100644 index 0000000..bfad717 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_global_variables/index.md @@ -0,0 +1,478 @@ +--- +title: synthetics_global_variables +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_global_variables + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_global_variables resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the global variable.
stringName of the global variable. Unique across Synthetic global variables. (example: MY_VARIABLE)
stringA Synthetic test ID to use as a test to generate the variable value. (example: abc-def-123)
objectAttributes of the global variable.
stringDescription of the global variable. (example: Example description)
booleanDetermines if the global variable is a FIDO variable.
booleanDetermines if the global variable is a TOTP/MFA variable.
objectParser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with `parse_test_public_id`.
arrayTags of the global variable.
objectValue of the global variable.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the global variable.
stringName of the global variable. Unique across Synthetic global variables. (example: MY_VARIABLE)
stringA Synthetic test ID to use as a test to generate the variable value. (example: abc-def-123)
objectAttributes of the global variable.
stringDescription of the global variable. (example: Example description)
booleanDetermines if the global variable is a FIDO variable.
booleanDetermines if the global variable is a TOTP/MFA variable.
objectParser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with `parse_test_public_id`.
arrayTags of the global variable.
objectValue of the global variable.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
variable_idGet the detailed configuration of a global variable.
Get the list of all Synthetic global variables.
description, name, tagsCreate a Synthetic global variable.
variable_id, description, name, tagsEdit a Synthetic global variable.
variable_idDelete a Synthetic global variable.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the global variable.
+ +## `SELECT` examples + + + + +Get the detailed configuration of a global variable. + +```sql +SELECT +id, +name, +parse_test_public_id, +attributes, +description, +is_fido, +is_totp, +parse_test_options, +tags, +value +FROM datadog.monitoring.synthetics_global_variables +WHERE variable_id = '{{ variable_id }}' -- required +; +``` + + + +Get the list of all Synthetic global variables. + +```sql +SELECT +id, +name, +parse_test_public_id, +attributes, +description, +is_fido, +is_totp, +parse_test_options, +tags, +value +FROM datadog.monitoring.synthetics_global_variables +; +``` + + + + +## `INSERT` examples + + + + +Create a Synthetic global variable. + +```sql +INSERT INTO datadog.monitoring.synthetics_global_variables ( +attributes, +description, +is_fido, +is_totp, +name, +parse_test_options, +parse_test_public_id, +tags, +value +) +SELECT +'{{ attributes }}', +'{{ description }}' /* required */, +{{ is_fido }}, +{{ is_totp }}, +'{{ name }}' /* required */, +'{{ parse_test_options }}', +'{{ parse_test_public_id }}', +'{{ tags }}' /* required */, +'{{ value }}' +RETURNING +id, +name, +parse_test_public_id, +attributes, +description, +is_fido, +is_totp, +parse_test_options, +tags, +value +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_global_variables + props: + - name: attributes + description: | + Attributes of the global variable. + value: + restricted_roles: + - "{{ restricted_roles }}" + - name: description + value: "{{ description }}" + description: | + Description of the global variable. + - name: is_fido + value: {{ is_fido }} + description: | + Determines if the global variable is a FIDO variable. + - name: is_totp + value: {{ is_totp }} + description: | + Determines if the global variable is a TOTP/MFA variable. + - name: name + value: "{{ name }}" + description: | + Name of the global variable. Unique across Synthetic global variables. + - name: parse_test_options + description: | + Parser options to use for retrieving a Synthetic global variable from a Synthetic test. Used in conjunction with \`parse_test_public_id\`. + value: + field: "{{ field }}" + localVariableName: "{{ localVariableName }}" + parser: + type: "{{ type }}" + value: "{{ value }}" + type: "{{ type }}" + - name: parse_test_public_id + value: "{{ parse_test_public_id }}" + description: | + A Synthetic test ID to use as a test to generate the variable value. + - name: tags + value: + - "{{ tags }}" + description: | + Tags of the global variable. + - name: value + description: | + Value of the global variable. + value: + options: + totp_parameters: + digits: {{ digits }} + refresh_interval: {{ refresh_interval }} + secure: {{ secure }} + value: "{{ value }}" +`} + + + + + +## `REPLACE` examples + + + + +Edit a Synthetic global variable. + +```sql +REPLACE datadog.monitoring.synthetics_global_variables +SET +attributes = '{{ attributes }}', +description = '{{ description }}', +is_fido = {{ is_fido }}, +is_totp = {{ is_totp }}, +name = '{{ name }}', +parse_test_options = '{{ parse_test_options }}', +parse_test_public_id = '{{ parse_test_public_id }}', +tags = '{{ tags }}', +value = '{{ value }}' +WHERE +variable_id = '{{ variable_id }}' --required +AND description = '{{ description }}' --required +AND name = '{{ name }}' --required +AND tags = '{{ tags }}' --required +RETURNING +id, +name, +parse_test_public_id, +attributes, +description, +is_fido, +is_totp, +parse_test_options, +tags, +value; +``` + + + + +## `DELETE` examples + + + + +Delete a Synthetic global variable. + +```sql +DELETE FROM datadog.monitoring.synthetics_global_variables +WHERE variable_id = '{{ variable_id }}' --required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_locations/index.md b/website/docs/services/monitoring/synthetics_locations/index.md new file mode 100644 index 0000000..6525e5b --- /dev/null +++ b/website/docs/services/monitoring/synthetics_locations/index.md @@ -0,0 +1,133 @@ +--- +title: synthetics_locations +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_locations + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_locations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the location.
stringName of the location.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the list of public and private locations available for Synthetic<br />tests. No arguments required.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of public and private locations available for Synthetic<br />tests. No arguments required. + +```sql +SELECT +id, +name +FROM datadog.monitoring.synthetics_locations +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_mobile_tests/index.md b/website/docs/services/monitoring/synthetics_mobile_tests/index.md new file mode 100644 index 0000000..e59df66 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_mobile_tests/index.md @@ -0,0 +1,442 @@ +--- +title: synthetics_mobile_tests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_mobile_tests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_mobile_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the test. (example: Example test name)
integer (int64)The associated monitor ID.
stringThe public ID of the test. (example: 123-abc-456)
objectConfiguration object for a Synthetic mobile test.
arrayArray with the different device IDs used to run the test.
stringNotification message associated with the test. (example: Notification message)
objectObject describing the extra options for a Synthetic test.
stringDefine whether you want to start (`live`) or pause (`paused`) a Synthetic test. (live, paused) (example: live)
arrayArray of steps for the test.
arrayArray of tags attached to the test.
stringType of the Synthetic test, `mobile`. (mobile) (default: mobile, example: mobile)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the detailed configuration associated with<br />a Synthetic mobile test.
config, name, options, type, messageCreate a Synthetic mobile test.
public_id, config, name, options, type, messageEdit the configuration of a Synthetic mobile test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the test to get details from.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the detailed configuration associated with<br />a Synthetic mobile test. + +```sql +SELECT +name, +monitor_id, +public_id, +config, +device_ids, +message, +options, +status, +steps, +tags, +type +FROM datadog.monitoring.synthetics_mobile_tests +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a Synthetic mobile test. + +```sql +INSERT INTO datadog.monitoring.synthetics_mobile_tests ( +config, +device_ids, +message, +name, +options, +status, +steps, +tags, +type +) +SELECT +'{{ config }}' /* required */, +'{{ device_ids }}', +'{{ message }}' /* required */, +'{{ name }}' /* required */, +'{{ options }}' /* required */, +'{{ status }}', +'{{ steps }}', +'{{ tags }}', +'{{ type }}' /* required */ +RETURNING +name, +monitor_id, +public_id, +config, +device_ids, +message, +options, +status, +steps, +tags, +type +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_mobile_tests + props: + - name: config + description: | + Configuration object for a Synthetic mobile test. + value: + initialApplicationArguments: "{{ initialApplicationArguments }}" + variables: + - example: "{{ example }}" + id: "{{ id }}" + name: "{{ name }}" + pattern: "{{ pattern }}" + secure: {{ secure }} + type: "{{ type }}" + - name: device_ids + value: + - "{{ device_ids }}" + description: | + Array with the different device IDs used to run the test. + - name: message + value: "{{ message }}" + description: | + Notification message associated with the test. + - name: name + value: "{{ name }}" + description: | + Name of the test. + - name: options + description: | + Object describing the extra options for a Synthetic test. + value: + allowApplicationCrash: {{ allowApplicationCrash }} + bindings: + - principals: "{{ principals }}" + relation: "{{ relation }}" + ci: + executionRule: "{{ executionRule }}" + defaultStepTimeout: {{ defaultStepTimeout }} + device_ids: + - "{{ device_ids }}" + disableAutoAcceptAlert: {{ disableAutoAcceptAlert }} + min_failure_duration: {{ min_failure_duration }} + mobileApplication: + applicationId: "{{ applicationId }}" + referenceId: "{{ referenceId }}" + referenceType: "{{ referenceType }}" + monitor_name: "{{ monitor_name }}" + monitor_options: + escalation_message: "{{ escalation_message }}" + notification_preset_name: "{{ notification_preset_name }}" + renotify_interval: {{ renotify_interval }} + renotify_occurrences: {{ renotify_occurrences }} + monitor_priority: {{ monitor_priority }} + noScreenshot: {{ noScreenshot }} + restricted_roles: + - "{{ restricted_roles }}" + retry: + count: {{ count }} + interval: {{ interval }} + scheduling: + timeframes: + - day: {{ day }} + from: "{{ from }}" + to: "{{ to }}" + timezone: "{{ timezone }}" + tick_every: {{ tick_every }} + verbosity: {{ verbosity }} + - name: status + value: "{{ status }}" + description: | + Define whether you want to start (\`live\`) or pause (\`paused\`) a + Synthetic test. + valid_values: ['live', 'paused'] + - name: steps + description: | + Array of steps for the test. + value: + - allowFailure: {{ allowFailure }} + hasNewStepElement: {{ hasNewStepElement }} + isCritical: {{ isCritical }} + name: "{{ name }}" + noScreenshot: {{ noScreenshot }} + params: + check: "{{ check }}" + delay: {{ delay }} + direction: "{{ direction }}" + element: + context: "{{ context }}" + contextType: "{{ contextType }}" + elementDescription: "{{ elementDescription }}" + multiLocator: "{{ multiLocator }}" + relativePosition: + x: {{ x }} + y: {{ y }} + textContent: "{{ textContent }}" + userLocator: + failTestOnCannotLocate: {{ failTestOnCannotLocate }} + values: + - type: "{{ type }}" + value: "{{ value }}" + viewName: "{{ viewName }}" + enabled: {{ enabled }} + maxScrolls: {{ maxScrolls }} + positions: + - x: {{ x }} + y: {{ y }} + subtestPublicId: "{{ subtestPublicId }}" + value: "{{ value }}" + variable: + example: "{{ example }}" + name: "{{ name }}" + withEnter: {{ withEnter }} + x: {{ x }} + y: {{ y }} + publicId: "{{ publicId }}" + timeout: {{ timeout }} + type: "{{ type }}" + - name: tags + value: + - "{{ tags }}" + description: | + Array of tags attached to the test. + - name: type + value: "{{ type }}" + description: | + Type of the Synthetic test, \`mobile\`. + valid_values: ['mobile'] + default: mobile +`} + + + + + +## `REPLACE` examples + + + + +Edit the configuration of a Synthetic mobile test. + +```sql +REPLACE datadog.monitoring.synthetics_mobile_tests +SET +config = '{{ config }}', +device_ids = '{{ device_ids }}', +message = '{{ message }}', +name = '{{ name }}', +options = '{{ options }}', +status = '{{ status }}', +steps = '{{ steps }}', +tags = '{{ tags }}', +type = '{{ type }}' +WHERE +public_id = '{{ public_id }}' --required +AND config = '{{ config }}' --required +AND name = '{{ name }}' --required +AND options = '{{ options }}' --required +AND type = '{{ type }}' --required +AND message = '{{ message }}' --required +RETURNING +name, +monitor_id, +public_id, +config, +device_ids, +message, +options, +status, +steps, +tags, +type; +``` + + diff --git a/website/docs/services/monitoring/synthetics_network_tests/index.md b/website/docs/services/monitoring/synthetics_network_tests/index.md new file mode 100644 index 0000000..758e9e2 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_network_tests/index.md @@ -0,0 +1,275 @@ +--- +title: synthetics_network_tests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_network_tests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_network_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Network Path test. (example: abc-def-123)
objectObject containing details about a Network Path test.
stringType of response, `network_test`. (network_test) (default: network_test, example: network_test)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id
data
public_id, data
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Network Path test to edit.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_network_tests +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +No description available. + +```sql +INSERT INTO datadog.monitoring.synthetics_network_tests ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_network_tests + props: + - name: data + description: | + Data object for creating or editing a Network Path test. + value: + attributes: + config: + assertions: + - operator: "{{ operator }}" + property: "{{ property }}" + target: {{ target }} + type: "{{ type }}" + request: + destination_service: "{{ destination_service }}" + e2e_queries: {{ e2e_queries }} + host: "{{ host }}" + max_ttl: {{ max_ttl }} + port: {{ port }} + source_service: "{{ source_service }}" + tcp_method: "{{ tcp_method }}" + timeout: {{ timeout }} + traceroute_queries: {{ traceroute_queries }} + locations: + - "{{ locations }}" + message: "{{ message }}" + monitor_id: {{ monitor_id }} + name: "{{ name }}" + options: + min_failure_duration: {{ min_failure_duration }} + min_location_failed: {{ min_location_failed }} + monitor_name: "{{ monitor_name }}" + monitor_options: + escalation_message: "{{ escalation_message }}" + notification_preset_name: "{{ notification_preset_name }}" + renotify_interval: {{ renotify_interval }} + renotify_occurrences: {{ renotify_occurrences }} + monitor_priority: {{ monitor_priority }} + restricted_roles: + - "{{ restricted_roles }}" + retry: + count: {{ count }} + interval: {{ interval }} + scheduling: + timeframes: + - day: {{ day }} + from: "{{ from }}" + to: "{{ to }}" + timezone: "{{ timezone }}" + tick_every: {{ tick_every }} + public_id: "{{ public_id }}" + status: "{{ status }}" + subtype: "{{ subtype }}" + tags: + - "{{ tags }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +No description available. + +```sql +REPLACE datadog.monitoring.synthetics_network_tests +SET +data = '{{ data }}' +WHERE +public_id = '{{ public_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/monitoring/synthetics_private_locations/index.md b/website/docs/services/monitoring/synthetics_private_locations/index.md new file mode 100644 index 0000000..401f8c6 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_private_locations/index.md @@ -0,0 +1,303 @@ +--- +title: synthetics_private_locations +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_private_locations + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_private_locations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the private location.
stringName of the private location. (example: New private location)
stringDescription of the private location. (example: Description of private location)
objectObject containing metadata about the private location.
objectSecrets for the private location. Only present in the response when creating the private location.
arrayArray of tags attached to the private location.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
location_idGet a Synthetic private location.
name, description, tagsCreate a new Synthetic private location.
location_id, name, description, tagsEdit a Synthetic private location.
location_idDelete a Synthetic private location.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the private location.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a Synthetic private location. + +```sql +SELECT +id, +name, +description, +metadata, +secrets, +tags +FROM datadog.monitoring.synthetics_private_locations +WHERE location_id = '{{ location_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new Synthetic private location. + +```sql +INSERT INTO datadog.monitoring.synthetics_private_locations ( +description, +metadata, +name, +tags +) +SELECT +'{{ description }}' /* required */, +'{{ metadata }}', +'{{ name }}' /* required */, +'{{ tags }}' /* required */ +RETURNING +config, +private_location, +result_encryption +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_private_locations + props: + - name: description + value: "{{ description }}" + description: | + Description of the private location. + - name: metadata + description: | + Object containing metadata about the private location. + value: + restricted_roles: + - "{{ restricted_roles }}" + - name: name + value: "{{ name }}" + description: | + Name of the private location. + - name: tags + value: + - "{{ tags }}" + description: | + Array of tags attached to the private location. +`} + + + + + +## `REPLACE` examples + + + + +Edit a Synthetic private location. + +```sql +REPLACE datadog.monitoring.synthetics_private_locations +SET +description = '{{ description }}', +metadata = '{{ metadata }}', +name = '{{ name }}', +tags = '{{ tags }}' +WHERE +location_id = '{{ location_id }}' --required +AND name = '{{ name }}' --required +AND description = '{{ description }}' --required +AND tags = '{{ tags }}' --required +RETURNING +id, +name, +description, +metadata, +secrets, +tags; +``` + + + + +## `DELETE` examples + + + + +Delete a Synthetic private location. + +```sql +DELETE FROM datadog.monitoring.synthetics_private_locations +WHERE location_id = '{{ location_id }}' --required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_suite_jsonpatches/index.md b/website/docs/services/monitoring/synthetics_suite_jsonpatches/index.md new file mode 100644 index 0000000..7207ec1 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_suite_jsonpatches/index.md @@ -0,0 +1,112 @@ +--- +title: synthetics_suite_jsonpatches +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_suite_jsonpatches + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_suite_jsonpatches resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, dataPatch a Synthetic test suite using JSON Patch (RFC 6902).<br />Use partial updates to modify only specific fields of a test suite.<br /><br />Common operations include:<br />- Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}`<br />- Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}`<br />- Remove fields: `{"op": "remove", "path": "/message"}`
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic test suite to patch.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Patch a Synthetic test suite using JSON Patch (RFC 6902).<br />Use partial updates to modify only specific fields of a test suite.<br /><br />Common operations include:<br />- Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}`<br />- Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}`<br />- Remove fields: `{"op": "remove", "path": "/message"}` + +```sql +UPDATE datadog.monitoring.synthetics_suite_jsonpatches +SET +data = '{{ data }}' +WHERE +public_id = '{{ public_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/monitoring/synthetics_suites/index.md b/website/docs/services/monitoring/synthetics_suites/index.md new file mode 100644 index 0000000..81730ae --- /dev/null +++ b/website/docs/services/monitoring/synthetics_suites/index.md @@ -0,0 +1,352 @@ +--- +title: synthetics_suites +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_suites + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_suites resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID for the suite. (example: 123-abc-456)
objectObject containing details about a Synthetic suite.
stringType for the Synthetics suites responses, `suites`. (suites) (default: suites, example: suites)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the suite search response data.
objectSynthetics suite search response data attributes
stringType for the Synthetics suites search response, `suites_search`. (suites_search) (default: suites_search, example: suites_search)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id
query, sort, facets_only, start, countSearch for test suites.
data
public_id, data
data
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the suite to edit.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The maximum number of results to return.
booleanIf true, return only facets instead of full test details.
stringThe search query.
stringThe sort order for the results (e.g., `name,asc` or `name,desc`).
integer (int64)The offset from which to start returning results.
+ +## `SELECT` examples + + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_suites +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + +Search for test suites. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_suites +WHERE query = '{{ query }}' +AND sort = '{{ sort }}' +AND facets_only = '{{ facets_only }}' +AND start = '{{ start }}' +AND count = '{{ count }}' +; +``` + + + + +## `INSERT` examples + + + + +No description available. + +```sql +INSERT INTO datadog.monitoring.synthetics_suites ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: synthetics_suites + props: + - name: data + description: | + Data object for creating or editing a Synthetic test suite. + value: + attributes: + message: "{{ message }}" + monitor_id: {{ monitor_id }} + name: "{{ name }}" + options: + alerting_threshold: {{ alerting_threshold }} + public_id: "{{ public_id }}" + tags: + - "{{ tags }}" + tests: + - alerting_criticality: "{{ alerting_criticality }}" + public_id: "{{ public_id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +No description available. + +```sql +REPLACE datadog.monitoring.synthetics_suites +SET +data = '{{ data }}' +WHERE +public_id = '{{ public_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +OK + +```sql +EXEC datadog.monitoring.synthetics_suites.delete_synthetics_suites +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_browser_results/index.md b/website/docs/services/monitoring/synthetics_test_browser_results/index.md new file mode 100644 index 0000000..ba32348 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_browser_results/index.md @@ -0,0 +1,263 @@ +--- +title: synthetics_test_browser_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_browser_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_browser_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe result ID. (example: 5158904793181869365)
objectAttributes of a Synthetic test result.
objectRelationships for a Synthetic test result.
stringType of the Synthetic test result resource, `result`. (result) (default: result, example: result)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe result ID. (example: 5158904793181869365)
objectAttributes of a Synthetic test result summary.
objectRelationships for a Synthetic test result.
stringType of the Synthetic test result summary resource, `result_summary`. (result_summary) (default: result_summary, example: result_summary)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, result_idevent_id, timestampGet a specific full result from a given Synthetic browser test.
public_idfrom_ts, to_ts, status, run_type, probe_dc, device_idGet the latest result summaries for a given Synthetic browser test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic browser test for which to search results.
stringThe ID of the result to get.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayDevice IDs for which to query results.
stringThe event ID used to look up the result in the event store.
integer (int64)Timestamp in milliseconds from which to start querying results.
arrayLocations for which to query results.
stringFilter results by run type. (wire: runType)
stringFilter results by status.
integer (int64)Timestamp in seconds to look up the result.
integer (int64)Timestamp in milliseconds up to which to query results.
+ +## `SELECT` examples + + + + +Get a specific full result from a given Synthetic browser test. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.synthetics_test_browser_results +WHERE public_id = '{{ public_id }}' -- required +AND result_id = '{{ result_id }}' -- required +AND event_id = '{{ event_id }}' +AND timestamp = '{{ timestamp }}' +; +``` + + + +Get the latest result summaries for a given Synthetic browser test. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.synthetics_test_browser_results +WHERE public_id = '{{ public_id }}' -- required +AND from_ts = '{{ from_ts }}' +AND to_ts = '{{ to_ts }}' +AND status = '{{ status }}' +AND run_type = '{{ run_type }}' +AND probe_dc = '{{ probe_dc }}' +AND device_id = '{{ device_id }}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_files/index.md b/website/docs/services/monitoring/synthetics_test_files/index.md new file mode 100644 index 0000000..602649c --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_files/index.md @@ -0,0 +1,183 @@ +--- +title: synthetics_test_files +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_files + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_files resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, bucketKeyGet a presigned URL to download a file attached to a Synthetic test.<br />The returned URL is temporary and expires after a short period.
public_id, bucketKeyPrefix, partsGet presigned URLs for uploading a file to a Synthetic test using multipart upload.<br />Returns the presigned URLs for each part along with the bucket key that references the file.
public_id, uploadId, keyAbort an in-progress multipart file upload for a Synthetic test. This cancels the upload<br />and releases any storage used by already-uploaded parts.
public_id, uploadId, key, partsComplete a multipart file upload for a Synthetic test. Call this endpoint after all parts<br />have been uploaded using the presigned URLs obtained from the multipart presigned URLs endpoint.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic test.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Get a presigned URL to download a file attached to a Synthetic test.<br />The returned URL is temporary and expires after a short period. + +```sql +EXEC datadog.monitoring.synthetics_test_files.get_test_file_download_url +@public_id='{{ public_id }}' --required, +@@json= +'{ +"bucketKey": "{{ bucketKey }}" +}' +; +``` + + + +Get presigned URLs for uploading a file to a Synthetic test using multipart upload.<br />Returns the presigned URLs for each part along with the bucket key that references the file. + +```sql +EXEC datadog.monitoring.synthetics_test_files.get_test_file_multipart_presigned_urls +@public_id='{{ public_id }}' --required, +@@json= +'{ +"bucketKeyPrefix": "{{ bucketKeyPrefix }}", +"parts": "{{ parts }}" +}' +; +``` + + + +Abort an in-progress multipart file upload for a Synthetic test. This cancels the upload<br />and releases any storage used by already-uploaded parts. + +```sql +EXEC datadog.monitoring.synthetics_test_files.abort_test_file_multipart_upload +@public_id='{{ public_id }}' --required, +@@json= +'{ +"key": "{{ key }}", +"uploadId": "{{ uploadId }}" +}' +; +``` + + + +Complete a multipart file upload for a Synthetic test. Call this endpoint after all parts<br />have been uploaded using the presigned URLs obtained from the multipart presigned URLs endpoint. + +```sql +EXEC datadog.monitoring.synthetics_test_files.complete_test_file_multipart_upload +@public_id='{{ public_id }}' --required, +@@json= +'{ +"key": "{{ key }}", +"parts": "{{ parts }}", +"uploadId": "{{ uploadId }}" +}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_parent_suites/index.md b/website/docs/services/monitoring/synthetics_test_parent_suites/index.md new file mode 100644 index 0000000..02e2b37 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_parent_suites/index.md @@ -0,0 +1,145 @@ +--- +title: synthetics_test_parent_suites +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_parent_suites + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_parent_suites resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the parent suite. (example: abc-def-123)
objectObject containing details about a parent suite of a Synthetic test.
stringType of the parent suite resource. (parent_suite) (default: parent_suite, example: parent_suite)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the list of parent suites and their status for a given Synthetic test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic test.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of parent suites and their status for a given Synthetic test. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_test_parent_suites +WHERE public_id = '{{ public_id }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_poll_results/index.md b/website/docs/services/monitoring/synthetics_test_poll_results/index.md new file mode 100644 index 0000000..074cb40 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_poll_results/index.md @@ -0,0 +1,151 @@ +--- +title: synthetics_test_poll_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_poll_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_poll_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe result ID. (example: 5158904793181869365)
objectAttributes of a Synthetic test result.
objectRelationships for a Synthetic test result.
stringType of the Synthetic test result resource, `result`. (result) (default: result, example: result)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
result_idsPoll for test results given a list of result IDs. This is typically used after<br />triggering tests with CI/CD to retrieve results once they are available.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA JSON-encoded array of result IDs to poll for. (example: ["id1","id2","id3"])
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Poll for test results given a list of result IDs. This is typically used after<br />triggering tests with CI/CD to retrieve results once they are available. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.synthetics_test_poll_results +WHERE result_ids = '{{ result_ids }}' -- required +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_results/index.md b/website/docs/services/monitoring/synthetics_test_results/index.md new file mode 100644 index 0000000..5c92798 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_results/index.md @@ -0,0 +1,263 @@ +--- +title: synthetics_test_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe result ID. (example: 5158904793181869365)
objectAttributes of a Synthetic test result.
objectRelationships for a Synthetic test result.
stringType of the Synthetic test result resource, `result`. (result) (default: result, example: result)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe result ID. (example: 5158904793181869365)
objectAttributes of a Synthetic test result summary.
objectRelationships for a Synthetic test result.
stringType of the Synthetic test result summary resource, `result_summary`. (result_summary) (default: result_summary, example: result_summary)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, result_idevent_id, timestampGet a specific full result from a given Synthetic test.
public_idfrom_ts, to_ts, status, run_type, probe_dc, device_idGet the latest result summaries for a given Synthetic test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic test for which to search results.
stringThe ID of the result to get.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayDevice IDs for which to query results.
stringThe event ID used to look up the result in the event store.
integer (int64)Timestamp in milliseconds from which to start querying results.
arrayLocations for which to query results.
stringFilter results by run type. (wire: runType)
stringFilter results by status.
integer (int64)Timestamp in seconds to look up the result.
integer (int64)Timestamp in milliseconds up to which to query results.
+ +## `SELECT` examples + + + + +Get a specific full result from a given Synthetic test. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.synthetics_test_results +WHERE public_id = '{{ public_id }}' -- required +AND result_id = '{{ result_id }}' -- required +AND event_id = '{{ event_id }}' +AND timestamp = '{{ timestamp }}' +; +``` + + + +Get the latest result summaries for a given Synthetic test. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.monitoring.synthetics_test_results +WHERE public_id = '{{ public_id }}' -- required +AND from_ts = '{{ from_ts }}' +AND to_ts = '{{ to_ts }}' +AND status = '{{ status }}' +AND run_type = '{{ run_type }}' +AND probe_dc = '{{ probe_dc }}' +AND device_id = '{{ device_id }}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_search_results/index.md b/website/docs/services/monitoring/synthetics_test_search_results/index.md new file mode 100644 index 0000000..93db0b2 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_search_results/index.md @@ -0,0 +1,231 @@ +--- +title: synthetics_test_search_results +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_search_results + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_search_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +OK - Returns the list of Synthetic tests matching the search. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the test.
integer (int64)The associated monitor ID.
stringThe test public ID.
objectConfiguration object for a Synthetic test.
objectObject describing the creator of the shared element.
arrayArray of locations used to run the test.
stringNotification message associated with the test.
objectObject describing the extra options for a Synthetic test.
stringDefine whether you want to start (`live`) or pause (`paused`) a Synthetic test. (live, paused) (example: live)
stringThe subtype of the Synthetic API test, `http`, `ssl`, `tcp`, `dns`, `icmp`, `udp`, `websocket`, `grpc` or `multi`. (http, ssl, tcp, dns, multi, icmp, udp, websocket, grpc) (example: http)
arrayArray of tags attached to the test.
stringType of the Synthetic test. (api, browser, mobile, network)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
text, include_full_config, facets_only, start, count, sortSearch for Synthetic tests.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The maximum number of results to return.
booleanIf true, return only facets instead of full test details.
booleanIf true, include the full configuration for each test in the response.
stringThe sort order for the results (e.g., `name,asc` or `name,desc`).
integer (int64)The offset from which to start returning results.
stringThe search query.
+ +## `SELECT` examples + + + + +Search for Synthetic tests. + +```sql +SELECT +name, +monitor_id, +public_id, +config, +creator, +locations, +message, +options, +status, +subtype, +tags, +type +FROM datadog.monitoring.synthetics_test_search_results +WHERE text = '{{ text }}' +AND include_full_config = '{{ include_full_config }}' +AND facets_only = '{{ facets_only }}' +AND start = '{{ start }}' +AND count = '{{ count }}' +AND sort = '{{ sort }}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_uptimes/index.md b/website/docs/services/monitoring/synthetics_test_uptimes/index.md new file mode 100644 index 0000000..4ed8d9d --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_uptimes/index.md @@ -0,0 +1,109 @@ +--- +title: synthetics_test_uptimes +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_uptimes + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_uptimes resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
from_ts, to_ts, public_idsFetch uptime for multiple Synthetic tests by ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Fetch uptime for multiple Synthetic tests by ID. + +```sql +EXEC datadog.monitoring.synthetics_test_uptimes.fetch_uptimes +@@json= +'{ +"from_ts": {{ from_ts }}, +"public_ids": "{{ public_ids }}", +"to_ts": {{ to_ts }} +}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_test_version_histories/index.md b/website/docs/services/monitoring/synthetics_test_version_histories/index.md new file mode 100644 index 0000000..c412c74 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_test_version_histories/index.md @@ -0,0 +1,227 @@ +--- +title: synthetics_test_version_histories +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_test_version_histories + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_test_version_histories resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUUID of the version record. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a specific Synthetic test version.
stringType of the version resource. (version) (default: version, example: version)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUUID of the version change record. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a version change record.
stringType of the version metadata resource. (version_metadata) (default: version_metadata, example: version_metadata)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_id, version_numberinclude_change_metadata, only_check_existenceGet a specific version of a Synthetic test by its version number.
public_idlast_version_number, limitGet the paginated version history for a Synthetic test.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic test.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The version number to retrieve.
booleanIf `true`, include change metadata in the response.
integer (int64)The version number of the last item from the previous page. Omit to get the first page.
integer (int64)Maximum number of version records to return per page.
booleanIf `true`, only check whether the version exists without returning its full payload. Returns an empty object if the version exists, or 404 if not.
+ +## `SELECT` examples + + + + +Get a specific version of a Synthetic test by its version number. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_test_version_histories +WHERE public_id = '{{ public_id }}' -- required +AND version_number = '{{ version_number }}' -- required +AND include_change_metadata = '{{ include_change_metadata }}' +AND only_check_existence = '{{ only_check_existence }}' +; +``` + + + +Get the paginated version history for a Synthetic test. + +```sql +SELECT +id, +attributes, +type +FROM datadog.monitoring.synthetics_test_version_histories +WHERE public_id = '{{ public_id }}' -- required +AND last_version_number = '{{ last_version_number }}' +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_tests/index.md b/website/docs/services/monitoring/synthetics_tests/index.md new file mode 100644 index 0000000..67cefa2 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_tests/index.md @@ -0,0 +1,481 @@ +--- +title: synthetics_tests +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_tests + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the test.
integer (int64)The associated monitor ID.
stringThe test public ID.
objectConfiguration object for a Synthetic test.
objectObject describing the creator of the shared element.
arrayArray of locations used to run the test.
stringNotification message associated with the test.
objectObject describing the extra options for a Synthetic test.
stringDefine whether you want to start (`live`) or pause (`paused`) a Synthetic test. (live, paused) (example: live)
stringThe subtype of the Synthetic API test, `http`, `ssl`, `tcp`, `dns`, `icmp`, `udp`, `websocket`, `grpc` or `multi`. (http, ssl, tcp, dns, multi, icmp, udp, websocket, grpc) (example: http)
arrayArray of tags attached to the test.
stringType of the Synthetic test. (api, browser, mobile, network)
+
+ + +OK - Returns the list of all Synthetic tests. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringName of the test.
integer (int64)The associated monitor ID.
stringThe test public ID.
objectConfiguration object for a Synthetic test.
objectObject describing the creator of the shared element.
arrayArray of locations used to run the test.
stringNotification message associated with the test.
objectObject describing the extra options for a Synthetic test.
stringDefine whether you want to start (`live`) or pause (`paused`) a Synthetic test. (live, paused) (example: live)
stringThe subtype of the Synthetic API test, `http`, `ssl`, `tcp`, `dns`, `icmp`, `udp`, `websocket`, `grpc` or `multi`. (http, ssl, tcp, dns, multi, icmp, udp, websocket, grpc) (example: http)
arrayArray of tags attached to the test.
stringType of the Synthetic test. (api, browser, mobile, network)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet the detailed configuration associated with a Synthetic test.
page_size, page_numberGet the list of all Synthetic tests.
public_idPatch the configuration of a Synthetic test with partial data.
data
Delete multiple Synthetic tests by ID.
testsTrigger a set of Synthetic tests.
Trigger a set of Synthetic tests for continuous integration.
public_idPause or start a Synthetic test by changing the status.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe public ID of the Synthetic test to update.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Used for pagination. Which page you want to retrieve. Starts at zero.
integer (int64)Used for pagination. The number of tests returned in the page.
+ +## `SELECT` examples + + + + +Get the detailed configuration associated with a Synthetic test. + +```sql +SELECT +name, +monitor_id, +public_id, +config, +creator, +locations, +message, +options, +status, +subtype, +tags, +type +FROM datadog.monitoring.synthetics_tests +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + +Get the list of all Synthetic tests. + +```sql +SELECT +name, +monitor_id, +public_id, +config, +creator, +locations, +message, +options, +status, +subtype, +tags, +type +FROM datadog.monitoring.synthetics_tests +WHERE page_size = '{{ page_size }}' +AND page_number = '{{ page_number }}' +; +``` + + + + +## `UPDATE` examples + + + + +Patch the configuration of a Synthetic test with partial data. + +```sql +UPDATE datadog.monitoring.synthetics_tests +SET +data = '{{ data }}' +WHERE +public_id = '{{ public_id }}' --required +RETURNING +name, +monitor_id, +public_id, +config, +creator, +locations, +message, +options, +status, +steps, +subtype, +tags, +type; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +OK + +```sql +EXEC datadog.monitoring.synthetics_tests.delete_synthetics_tests +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Delete multiple Synthetic tests by ID. + +```sql +EXEC datadog.monitoring.synthetics_tests.delete_tests +@@json= +'{ +"force_delete_dependencies": {{ force_delete_dependencies }}, +"public_ids": "{{ public_ids }}" +}' +; +``` + + + +Trigger a set of Synthetic tests. + +```sql +EXEC datadog.monitoring.synthetics_tests.trigger_tests +@@json= +'{ +"tests": "{{ tests }}" +}' +; +``` + + + +Trigger a set of Synthetic tests for continuous integration. + +```sql +EXEC datadog.monitoring.synthetics_tests.trigger_citests +@@json= +'{ +"tests": "{{ tests }}" +}' +; +``` + + + +Pause or start a Synthetic test by changing the status. + +```sql +EXEC datadog.monitoring.synthetics_tests.update_test_pause_status +@public_id='{{ public_id }}' --required, +@@json= +'{ +"new_status": "{{ new_status }}" +}' +; +``` + + diff --git a/website/docs/services/monitoring/synthetics_variable_jsonpatches/index.md b/website/docs/services/monitoring/synthetics_variable_jsonpatches/index.md new file mode 100644 index 0000000..896a197 --- /dev/null +++ b/website/docs/services/monitoring/synthetics_variable_jsonpatches/index.md @@ -0,0 +1,112 @@ +--- +title: synthetics_variable_jsonpatches +hide_title: false +hide_table_of_contents: false +keywords: + - synthetics_variable_jsonpatches + - monitoring + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a synthetics_variable_jsonpatches resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
variable_id, dataPatch a global variable using JSON Patch (RFC 6902).<br />This endpoint allows partial updates to a global variable by specifying only the fields to modify.<br /><br />Common operations include:<br />- Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}`<br />- Update nested values: `{"op": "replace", "path": "/value/value", "value": "new_value"}`<br />- Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}`<br />- Remove fields: `{"op": "remove", "path": "/description"}`
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the global variable.
+ +## `UPDATE` examples + + + + +Patch a global variable using JSON Patch (RFC 6902).<br />This endpoint allows partial updates to a global variable by specifying only the fields to modify.<br /><br />Common operations include:<br />- Replace field values: `{"op": "replace", "path": "/name", "value": "new_name"}`<br />- Update nested values: `{"op": "replace", "path": "/value/value", "value": "new_value"}`<br />- Add/update tags: `{"op": "add", "path": "/tags/-", "value": "new_tag"}`<br />- Remove fields: `{"op": "remove", "path": "/description"}` + +```sql +UPDATE datadog.monitoring.synthetics_variable_jsonpatches +SET +data = '{{ data }}' +WHERE +variable_id = '{{ variable_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/monitoring/user_templates/index.md b/website/docs/services/monitoring/user_templates/index.md index 6f57e2e..9dcc042 100644 --- a/website/docs/services/monitoring/user_templates/index.md +++ b/website/docs/services/monitoring/user_templates/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a user_templates resource. ## Overview - +
Nameuser_templates
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Monitor user template resource type. (default: monitor-user-template, example: monitor-user-template) + Monitor user template resource type. (monitor-user-template) (default: monitor-user-template, example: monitor-user-template) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Monitor user template resource type. (default: monitor-user-template, example: monitor-user-template) + Monitor user template resource type. (monitor-user-template) (default: monitor-user-template, example: monitor-user-template) @@ -116,49 +117,49 @@ The following methods are available for this resource: - template_id, region + template_id with_all_versions Retrieve a monitor user template by its ID. - region + Retrieve all monitor user templates. - region, data__data + data Create a new monitor user template. - template_id, region, data__data + template_id, data Creates a new version of an existing monitor user template. - template_id, region + template_id Delete an existing monitor user template by its ID. - region, data + data Validate the structure and content of a monitor user template. - template_id, region, data + template_id, data Validate the structure and content of an existing monitor user template being updated to a new version. @@ -178,10 +179,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -216,7 +217,6 @@ attributes, type FROM datadog.monitoring.user_templates WHERE template_id = '{{ template_id }}' -- required -AND region = '{{ region }}' -- required AND with_all_versions = '{{ with_all_versions }}' ; ``` @@ -231,7 +231,6 @@ id, attributes, type FROM datadog.monitoring.user_templates -WHERE region = '{{ region }}' -- required ; ``` @@ -253,12 +252,10 @@ Create a new monitor user template. ```sql INSERT INTO datadog.monitoring.user_templates ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -266,18 +263,27 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: user_templates props: - - name: region - value: string - description: Required parameter for the user_templates resource. - name: data - value: object description: | Monitor user template data. -``` + value: + attributes: + description: "{{ description }}" + monitor_definition: "{{ monitor_definition }}" + tags: + - "{{ tags }}" + template_variables: + - available_values: "{{ available_values }}" + defaults: "{{ defaults }}" + name: "{{ name }}" + tag_key: "{{ tag_key }}" + title: "{{ title }}" + type: "{{ type }}" +`} + @@ -297,11 +303,10 @@ Creates a new version of an existing monitor user template. ```sql REPLACE datadog.monitoring.user_templates SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE template_id = '{{ template_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -324,7 +329,6 @@ Delete an existing monitor user template by its ID. ```sql DELETE FROM datadog.monitoring.user_templates WHERE template_id = '{{ template_id }}' --required -AND region = '{{ region }}' --required ; ``` @@ -333,6 +337,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + api_key_validation
resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the organization associated with the API key. (example: 550e8400-e29b-41d4-a716-446655440000)
objectAttributes of the API key validation response.
stringResource type for the API key validation response. (validate_v2) (example: validate_v2)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Check if the API key is valid. Returns the organization UUID, API key ID, and associated scopes.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Check if the API key is valid. Returns the organization UUID, API key ID, and associated scopes. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.api_key_validation +; +``` + + diff --git a/website/docs/services/organization/api_keys/index.md b/website/docs/services/organization/api_keys/index.md index 48057e5..a3281cd 100644 --- a/website/docs/services/organization/api_keys/index.md +++ b/website/docs/services/organization/api_keys/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an api_keys resource. ## Overview - +
Nameapi_keys
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - API Keys resource type. (default: api_keys, example: api_keys) + API Keys resource type. (api_keys) (default: api_keys, example: api_keys) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - API Keys resource type. (default: api_keys, example: api_keys) + API Keys resource type. (api_keys) (default: api_keys, example: api_keys) @@ -126,35 +127,35 @@ The following methods are available for this resource: - api_key_id, region + api_key_id include Get an API key. - region + page[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end], filter[modified_at][start], filter[modified_at][end], include, filter[remote_config_read_enabled], filter[category] List all API keys available for your account. - region, data__data + data Create an API key. - api_key_id, region, data__data + api_key_id, data Update an API key. - api_key_id, region + api_key_id Delete an API key. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the API key. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -232,7 +233,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -263,7 +264,6 @@ relationships, type FROM datadog.organization.api_keys WHERE api_key_id = '{{ api_key_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -279,8 +279,7 @@ attributes, relationships, type FROM datadog.organization.api_keys -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter = '{{ filter }}' @@ -312,12 +311,10 @@ Create an API key. ```sql INSERT INTO datadog.organization.api_keys ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -326,18 +323,20 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: api_keys props: - - name: region - value: string - description: Required parameter for the api_keys resource. - name: data - value: object description: | Object used to create an API key. -``` + value: + attributes: + category: "{{ category }}" + name: "{{ name }}" + remote_config_read_enabled: {{ remote_config_read_enabled }} + type: "{{ type }}" +`} + @@ -357,11 +356,10 @@ Update an API key. ```sql UPDATE datadog.organization.api_keys SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE api_key_id = '{{ api_key_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -385,7 +383,6 @@ Delete an API key. ```sql DELETE FROM datadog.organization.api_keys WHERE api_key_id = '{{ api_key_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/application_keys/index.md b/website/docs/services/organization/application_keys/index.md index 51212b3..8a4b288 100644 --- a/website/docs/services/organization/application_keys/index.md +++ b/website/docs/services/organization/application_keys/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an application_keys resour ## Overview - +
Nameapplication_keys
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Application Keys resource type. (default: application_keys, example: application_keys) + Application Keys resource type. (application_keys) (default: application_keys, example: application_keys) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Application Keys resource type. (default: application_keys, example: application_keys) + Application Keys resource type. (application_keys) (default: application_keys, example: application_keys) @@ -126,28 +127,35 @@ The following methods are available for this resource: - app_key_id, region + app_key_id include Get an application key for your org. - region - page[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end], include + + page[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end], filter[owned_by], include List all application keys available for your org + + + + + + Create an application key with a given name.<br />This endpoint is disabled for organizations in [One-Time Read mode](https:​//docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode).<br /><br />**Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https:​//docs.datadoghq.com/api/latest/key-management/) endpoints instead. + - app_key_id, region, data__data + app_key_id, data Edit an application key - app_key_id, region + app_key_id Delete an application key @@ -172,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the application key. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -192,6 +200,11 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Only include application keys created on or after the specified date. + + + string + Filter application keys by owner ID. + string @@ -205,7 +218,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -236,7 +249,6 @@ relationships, type FROM datadog.organization.application_keys WHERE app_key_id = '{{ app_key_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -252,13 +264,13 @@ attributes, relationships, type FROM datadog.organization.application_keys -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter = '{{ filter }}' AND filter[created_at][start] = '{{ filter[created_at][start] }}' AND filter[created_at][end] = '{{ filter[created_at][end] }}' +AND filter[owned_by] = '{{ filter[owned_by] }}' AND include = '{{ include }}' ; ``` @@ -266,6 +278,45 @@ AND include = '{{ include }}' +## `INSERT` examples + + + + +Create an application key with a given name.<br />This endpoint is disabled for organizations in [One-Time Read mode](https:​//docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode).<br /><br />**Note**: This endpoint is disabled for the Government sites (US1-FED and US2-FED). Use the [V2 Key Management](https:​//docs.datadoghq.com/api/latest/key-management/) endpoints instead. + +```sql +INSERT INTO datadog.organization.application_keys ( +name +) +SELECT +'{{ name }}' +RETURNING +application_key +; +``` + + + +{`# Description fields are for documentation purposes +- name: application_keys + props: + - name: name + value: "{{ name }}" + description: | + Name of an application key. +`} + + + + + ## `UPDATE` examples diff --git a/website/docs/services/organization/audit_logs/index.md b/website/docs/services/organization/audit_logs/index.md index a854a74..0ea650b 100644 --- a/website/docs/services/organization/audit_logs/index.md +++ b/website/docs/services/organization/audit_logs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an audit_logs resource. ## Overview - +
Nameaudit_logs
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of the event. (default: audit, example: audit) + Type of the event. (audit) (default: audit, example: audit) @@ -86,16 +87,16 @@ The following methods are available for this resource: - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - List endpoint returns events that match a Audit Logs search query.
[Results are paginated][1].

Use this endpoint to see your latest Audit Logs events.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + List endpoint returns events that match a Audit Logs search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to see your latest Audit Logs events.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination - region - List endpoint returns Audit Logs events that match an Audit search query.
[Results are paginated][1].

Use this endpoint to build complex Audit Logs events filtering and search.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination + + List endpoint returns Audit Logs events that match an Audit search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to build complex Audit Logs events filtering and search.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -161,7 +162,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List endpoint returns events that match a Audit Logs search query.
[Results are paginated][1].

Use this endpoint to see your latest Audit Logs events.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination +List endpoint returns events that match a Audit Logs search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to see your latest Audit Logs events.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination ```sql SELECT @@ -169,8 +170,7 @@ id, attributes, type FROM datadog.organization.audit_logs -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -184,6 +184,8 @@ AND page[limit] = '{{ page[limit] }}' ## Lifecycle Methods +EXEC variables use wire (API) names. + -List endpoint returns Audit Logs events that match an Audit search query.
[Results are paginated][1].

Use this endpoint to build complex Audit Logs events filtering and search.

[1]: https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination +List endpoint returns Audit Logs events that match an Audit search query.<br />[Results are paginated][1].<br /><br />Use this endpoint to build complex Audit Logs events filtering and search.<br /><br />[1]: https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination ```sql EXEC datadog.organization.audit_logs.search_audit_logs -@region='{{ region }}' --required @@json= '{ "filter": "{{ filter }}", diff --git a/website/docs/services/organization/authn_mappings/index.md b/website/docs/services/organization/authn_mappings/index.md index 46cbfe2..a923e63 100644 --- a/website/docs/services/organization/authn_mappings/index.md +++ b/website/docs/services/organization/authn_mappings/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an authn_mappings resource ## Overview - +
Nameauthn_mappings
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - AuthN Mappings resource type. (default: authn_mappings, example: authn_mappings) + AuthN Mappings resource type. (authn_mappings) (default: authn_mappings, example: authn_mappings) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - AuthN Mappings resource type. (default: authn_mappings, example: authn_mappings) + AuthN Mappings resource type. (authn_mappings) (default: authn_mappings, example: authn_mappings) @@ -126,35 +127,35 @@ The following methods are available for this resource: - authn_mapping_id, region + authn_mapping_id Get an AuthN Mapping specified by the AuthN Mapping UUID. - region + page[size], page[number], sort, filter, resource_type List all AuthN Mappings in the org. - region, data__data + data Create an AuthN Mapping. - authn_mapping_id, region, data__data + authn_mapping_id, data Edit an AuthN Mapping. - authn_mapping_id, region + authn_mapping_id Delete an AuthN Mapping specified by AuthN Mapping UUID. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The UUID of the AuthN Mapping. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -233,7 +234,6 @@ relationships, type FROM datadog.organization.authn_mappings WHERE authn_mapping_id = '{{ authn_mapping_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -248,8 +248,7 @@ attributes, relationships, type FROM datadog.organization.authn_mappings -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter = '{{ filter }}' @@ -275,12 +274,10 @@ Create an AuthN Mapping. ```sql INSERT INTO datadog.organization.authn_mappings ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -289,18 +286,28 @@ included
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: authn_mappings props: - - name: region - value: string - description: Required parameter for the authn_mappings resource. - name: data - value: object description: | Data for creating an AuthN Mapping. -``` + value: + attributes: + attribute_key: "{{ attribute_key }}" + attribute_value: "{{ attribute_value }}" + relationships: + role: + data: + id: "{{ id }}" + type: "{{ type }}" + team: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} +
@@ -320,11 +327,10 @@ Edit an AuthN Mapping. ```sql UPDATE datadog.organization.authn_mappings SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE authn_mapping_id = '{{ authn_mapping_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -348,7 +354,6 @@ Delete an AuthN Mapping specified by AuthN Mapping UUID. ```sql DELETE FROM datadog.organization.authn_mappings WHERE authn_mapping_id = '{{ authn_mapping_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/billing_dimension_mapping/index.md b/website/docs/services/organization/billing_dimension_mapping/index.md index 683c86f..0649f81 100644 --- a/website/docs/services/organization/billing_dimension_mapping/index.md +++ b/website/docs/services/organization/billing_dimension_mapping/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a billing_dimension_mapping -Namebilling_dimension_mapping +Name TypeResource Id @@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of active billing dimensions data. (default: billing_dimensions) + Type of active billing dimensions data. (billing_dimensions) (default: billing_dimensions) @@ -86,9 +87,9 @@ The following methods are available for this resource: - region + filter[month], filter[view] - Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints.
Mapping data is updated on a monthly cadence.

This endpoint is only accessible to [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints.<br />Mapping data is updated on a monthly cadence.<br /><br />This endpoint is only accessible to [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -134,7 +135,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints.
Mapping data is updated on a monthly cadence.

This endpoint is only accessible to [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). +Get a mapping of billing dimensions to the corresponding keys for the supported usage metering public API endpoints.<br />Mapping data is updated on a monthly cadence.<br /><br />This endpoint is only accessible to [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). ```sql SELECT @@ -142,8 +143,7 @@ id, attributes, type FROM datadog.organization.billing_dimension_mapping -WHERE region = '{{ region }}' -- required -AND filter[month] = '{{ filter[month] }}' +WHERE filter[month] = '{{ filter[month] }}' AND filter[view] = '{{ filter[view] }}' ; ``` diff --git a/website/docs/services/organization/configs/index.md b/website/docs/services/organization/configs/index.md index df13a09..6409dec 100644 --- a/website/docs/services/organization/configs/index.md +++ b/website/docs/services/organization/configs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a configs resource. ## Overview - +
Nameconfigs
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Data type of an Org Config. (example: org_configs) + Data type of an Org Config. (org_configs) (example: org_configs) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Data type of an Org Config. (example: org_configs) + Data type of an Org Config. (org_configs) (example: org_configs) @@ -116,21 +117,21 @@ The following methods are available for this resource: - org_config_name, region + org_config_name Return the name, description, and value of a specific Org Config. - region + Returns all Org Configs (name, description, and value). - org_config_name, region, data__data + org_config_name, data Update the value of a specific Org Config. @@ -155,10 +156,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of an Org Config. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -183,7 +184,6 @@ attributes, type FROM datadog.organization.configs WHERE org_config_name = '{{ org_config_name }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -197,7 +197,6 @@ id, attributes, type FROM datadog.organization.configs -WHERE region = '{{ region }}' -- required ; ``` @@ -219,11 +218,10 @@ Update the value of a specific Org Config. ```sql UPDATE datadog.organization.configs SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE org_config_name = '{{ org_config_name }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` diff --git a/website/docs/services/organization/connections/index.md b/website/docs/services/organization/connections/index.md index f6f09ec..21dd3ab 100644 --- a/website/docs/services/organization/connections/index.md +++ b/website/docs/services/organization/connections/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a connections resource. ## Overview - +
Nameconnections
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Org connection type. (example: org_connection) + Org connection type. (org_connection) (example: org_connection) @@ -91,28 +92,28 @@ The following methods are available for this resource: - region + sink_org_id, source_org_id, limit, offset Returns a list of org connections. - region, data__data + data Create a new org connection between the current org and a target org. - connection_id, region, data__data + connection_id, data Update an existing org connection. - connection_id, region + connection_id Delete an existing org connection. @@ -137,10 +138,30 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string (uuid) The unique identifier of the org connection. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + integer (int64) + The limit of number of entries you want to return. Default is 1000. (example: 1000) + + + + integer (int64) + The pagination offset which you want to query from. Default is 0. (example: 0) + + + + string + The Org ID of the sink org. (example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1) + + + + string + The Org ID of the source org. (example: 0879ce27-29a1-481f-a12e-bc2a48ec9ae1) @@ -164,7 +185,10 @@ attributes, relationships, type FROM datadog.organization.connections -WHERE region = '{{ region }}' -- required +WHERE sink_org_id = '{{ sink_org_id }}' +AND source_org_id = '{{ source_org_id }}' +AND limit = '{{ limit }}' +AND offset = '{{ offset }}' ; ``` @@ -186,12 +210,10 @@ Create a new org connection between the current org and a target org. ```sql INSERT INTO datadog.organization.connections ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -199,18 +221,25 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: connections props: - - name: region - value: string - description: Required parameter for the connections resource. - name: data - value: object description: | Org connection creation data. -``` + value: + attributes: + connection_types: + - "{{ connection_types }}" + relationships: + sink_org: + data: + id: "{{ id }}" + name: "{{ name }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -230,11 +259,10 @@ Update an existing org connection. ```sql UPDATE datadog.organization.connections SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE connection_id = '{{ connection_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -257,7 +285,6 @@ Delete an existing org connection. ```sql DELETE FROM datadog.organization.connections WHERE connection_id = '{{ connection_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/cost_by_org/index.md b/website/docs/services/organization/cost_by_org/index.md deleted file mode 100644 index f073477..0000000 --- a/website/docs/services/organization/cost_by_org/index.md +++ /dev/null @@ -1,151 +0,0 @@ ---- -title: cost_by_org -hide_title: false -hide_table_of_contents: false -keywords: - - cost_by_org - - organization - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists a cost_by_org resource. - -## Overview - - - - -
Namecost_by_org
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringUnique ID of the response.
objectCost attributes data.
stringType of cost data. (default: cost_by_org, example: cost_by_org)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
start_month, regionend_monthGet cost across multi-org account.
Cost by org data for a given month becomes available no later than the 16th of the following month.
**Note:** This endpoint has been deprecated. Please use the new endpoint
[`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account)
instead.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/).
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month.
- -## `SELECT` examples - - - - -Get cost across multi-org account.
Cost by org data for a given month becomes available no later than the 16th of the following month.
**Note:** This endpoint has been deprecated. Please use the new endpoint
[`/historical_cost`](https://docs.datadoghq.com/api/latest/usage-metering/#get-historical-cost-across-your-account)
instead.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). - -```sql -SELECT -id, -attributes, -type -FROM datadog.organization.cost_by_org -WHERE start_month = '{{ start_month }}' -- required -AND region = '{{ region }}' -- required -AND end_month = '{{ end_month }}' -; -``` -
-
diff --git a/website/docs/services/organization/current_user/index.md b/website/docs/services/organization/current_user/index.md new file mode 100644 index 0000000..1874b6c --- /dev/null +++ b/website/docs/services/organization/current_user/index.md @@ -0,0 +1,178 @@ +--- +title: current_user +hide_title: false +hide_table_of_contents: false +keywords: + - current_user + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a current_user resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the user.
objectAttributes of user object returned by the API.
objectRelationships of the user object returned by the API.
stringUsers resource type. (users) (default: users, example: users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the user associated with the current authentication context.<br />The response includes the user's profile attributes (name, email, handle,<br />status, MFA state), along with related resources: the user's organization,<br />assigned roles with their granted permissions, and team-scoped roles.<br />No additional permissions are required beyond valid authentication.
dataEdit the profile of the currently authenticated user. Updatable fields<br />include `name`, `title`, `email`, and `disabled` status. The `id` field<br />in the request body must match the authenticated user's UUID; a mismatch<br />returns a 422 error. Email address changes are recorded in the audit trail.<br />Requires the `user_self_profile_write` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the user associated with the current authentication context.<br />The response includes the user's profile attributes (name, email, handle,<br />status, MFA state), along with related resources: the user's organization,<br />assigned roles with their granted permissions, and team-scoped roles.<br />No additional permissions are required beyond valid authentication. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.current_user +; +``` + + + + +## `UPDATE` examples + + + + +Edit the profile of the currently authenticated user. Updatable fields<br />include `name`, `title`, `email`, and `disabled` status. The `id` field<br />in the request body must match the authenticated user's UUID; a mismatch<br />returns a 422 error. Email address changes are recorded in the audit trail.<br />Requires the `user_self_profile_write` permission. + +```sql +UPDATE datadog.organization.current_user +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/organization/current_user_application_keys/index.md b/website/docs/services/organization/current_user_application_keys/index.md index 39a3d29..091f278 100644 --- a/website/docs/services/organization/current_user_application_keys/index.md +++ b/website/docs/services/organization/current_user_application_keys/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a current_user_application_keys -Namecurrent_user_application_keys +Name TypeResource Id @@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Application Keys resource type. (default: application_keys, example: application_keys) + Application Keys resource type. (application_keys) (default: application_keys, example: application_keys) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Application Keys resource type. (default: application_keys, example: application_keys) + Application Keys resource type. (application_keys) (default: application_keys, example: application_keys) @@ -126,35 +127,35 @@ The following methods are available for this resource: - app_key_id, region + app_key_id - Get an application key owned by current user + Get an application key owned by current user.<br />The `key` field is not returned for organizations in [One-Time Read mode](https:​//docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). - region + page[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end], include List all application keys available for current user - region, data__data + data Create an application key for current user - app_key_id, region, data__data + app_key_id, data - Edit an application key owned by current user + Edit an application key owned by current user.<br />The `key` field is not returned for organizations in [One-Time Read mode](https:​//docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). - app_key_id, region + app_key_id Delete an application key owned by current user @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the application key. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -212,7 +213,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -233,7 +234,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get an application key owned by current user +Get an application key owned by current user.<br />The `key` field is not returned for organizations in [One-Time Read mode](https:​//docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). ```sql SELECT @@ -243,7 +244,6 @@ relationships, type FROM datadog.organization.current_user_application_keys WHERE app_key_id = '{{ app_key_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -258,8 +258,7 @@ attributes, relationships, type FROM datadog.organization.current_user_application_keys -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter = '{{ filter }}' @@ -287,12 +286,10 @@ Create an application key for current user ```sql INSERT INTO datadog.organization.current_user_application_keys ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -301,18 +298,20 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: current_user_application_keys props: - - name: region - value: string - description: Required parameter for the current_user_application_keys resource. - name: data - value: object description: | Object used to create an application key. -``` + value: + attributes: + name: "{{ name }}" + scopes: + - "{{ scopes }}" + type: "{{ type }}" +`} + @@ -327,16 +326,15 @@ included > -Edit an application key owned by current user +Edit an application key owned by current user.<br />The `key` field is not returned for organizations in [One-Time Read mode](https:​//docs.datadoghq.com/account_management/api-app-keys/#one-time-read-mode). ```sql UPDATE datadog.organization.current_user_application_keys SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE app_key_id = '{{ app_key_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -360,7 +358,6 @@ Delete an application key owned by current user ```sql DELETE FROM datadog.organization.current_user_application_keys WHERE app_key_id = '{{ app_key_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/data_deletion_requests/index.md b/website/docs/services/organization/data_deletion_requests/index.md index 85bf58b..ce2f6b3 100644 --- a/website/docs/services/organization/data_deletion_requests/index.md +++ b/website/docs/services/organization/data_deletion_requests/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a data_deletion_requests r ## Overview - +
Namedata_deletion_requests
Name
TypeResource
Id
@@ -86,21 +87,21 @@ The following methods are available for this resource: - region + next_page, product, query, status, page_size Gets a list of data deletion requests based on several filter parameters. - product, region, data__data + product, data Creates a data deletion request by providing a query and a timeframe targeting the proper data. - id, region + id Cancels a data deletion request by providing its ID. @@ -128,12 +129,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Name of the product to be deleted, either `logs` or `rum`. + Name of the product to be deleted. Only `logs` is supported. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -181,8 +182,7 @@ id, attributes, type FROM datadog.organization.data_deletion_requests -WHERE region = '{{ region }}' -- required -AND next_page = '{{ next_page }}' +WHERE next_page = '{{ next_page }}' AND product = '{{ product }}' AND query = '{{ query }}' AND status = '{{ status }}' @@ -208,14 +208,12 @@ Creates a data deletion request by providing a query and a timeframe targeting t ```sql INSERT INTO datadog.organization.data_deletion_requests ( -data__data, -product, -region +data, +product ) SELECT '{{ data }}' /* required */, -'{{ product }}', -'{{ region }}' +'{{ product }}' RETURNING data, meta @@ -224,27 +222,34 @@ meta -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: data_deletion_requests props: - name: product - value: string - description: Required parameter for the data_deletion_requests resource. - - name: region - value: string + value: "{{ product }}" description: Required parameter for the data_deletion_requests resource. - name: data - value: object description: | Data needed to create a data deletion request. -``` + value: + attributes: + displayed_total: {{ displayed_total }} + from: {{ from }} + indexes: + - "{{ indexes }}" + query: "{{ query }}" + to: {{ to }} + type: "{{ type }}" +`} + ## Lifecycle Methods +EXEC variables use wire (API) names. + diff --git a/website/docs/services/organization/domain_allowlist/index.md b/website/docs/services/organization/domain_allowlist/index.md index d4c25a1..00674e9 100644 --- a/website/docs/services/organization/domain_allowlist/index.md +++ b/website/docs/services/organization/domain_allowlist/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a domain_allowlist resourc ## Overview - +
Namedomain_allowlist
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Email domain allowlist allowlist type. (default: domain_allowlist, example: domain_allowlist) + Email domain allowlist allowlist type. (domain_allowlist) (default: domain_allowlist, example: domain_allowlist) @@ -86,14 +87,14 @@ The following methods are available for this resource: - region + Get the domain allowlist for an organization. - region, data__data + data Update the domain allowlist for an organization. @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -139,7 +140,6 @@ id, attributes, type FROM datadog.organization.domain_allowlist -WHERE region = '{{ region }}' -- required ; ``` @@ -161,10 +161,9 @@ Update the domain allowlist for an organization. ```sql UPDATE datadog.organization.domain_allowlist SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE -region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +data = '{{ data }}' --required RETURNING data; ``` diff --git a/website/docs/services/organization/estimated_cost_by_org/index.md b/website/docs/services/organization/estimated_cost_by_org/index.md index d9aeda5..6a1af47 100644 --- a/website/docs/services/organization/estimated_cost_by_org/index.md +++ b/website/docs/services/organization/estimated_cost_by_org/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an estimated_cost_by_org r ## Overview - +
Nameestimated_cost_by_org
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of cost data. (default: cost_by_org, example: cost_by_org) + Type of cost data. (cost_by_org) (default: cost_by_org, example: cost_by_org) @@ -86,9 +87,9 @@ The following methods are available for this resource: - region - view, start_month, end_month, start_date, end_date, include_connected_accounts - Get estimated cost across multi-org and single root-org accounts.
Estimated cost data is only available for the current month and previous month
and is delayed by up to 72 hours from when it was incurred.
To access historical costs prior to this, use the `/historical_cost` endpoint.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + + view, start_month, end_month, start_date, end_date, cost_aggregation, include_connected_accounts + Get estimated cost across multi-org and single root-org accounts.<br />Estimated cost data is only available for the current month and previous month<br />and is delayed by up to 72 hours from when it was incurred.<br />To access historical costs prior to this, use the `/historical_cost` endpoint.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). @@ -106,35 +107,40 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + string + Controls how costs are aggregated when using `start_date`. The `cumulative` option returns month-to-date running totals. string (date-time) - Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost ending this day. + Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost ending this day. string (date-time) - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month. + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month. boolean - Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. string (date-time) - Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost beginning this day. **Either start_month or start_date should be specified, but not both.** (start_date cannot go beyond two months in the past). Provide an `end_date` to view day-over-day cumulative cost. + Datetime in ISO-8601 format, UTC, precise to day: `[YYYY-MM-DD]` for cost beginning this day. **Either start_month or start_date should be specified, but not both.** (start_date cannot go beyond two months in the past). Provide an `end_date` to view day-over-day cumulative cost. string (date-time) - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month. **Either start_month or start_date should be specified, but not both.** (start_month cannot go beyond two months in the past). Provide an `end_month` to view month-over-month cost. + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month. **Either start_month or start_date should be specified, but not both.** (start_month cannot go beyond two months in the past). Provide an `end_month` to view month-over-month cost. @@ -154,7 +160,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get estimated cost across multi-org and single root-org accounts.
Estimated cost data is only available for the current month and previous month
and is delayed by up to 72 hours from when it was incurred.
To access historical costs prior to this, use the `/historical_cost` endpoint.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). +Get estimated cost across multi-org and single root-org accounts.<br />Estimated cost data is only available for the current month and previous month<br />and is delayed by up to 72 hours from when it was incurred.<br />To access historical costs prior to this, use the `/historical_cost` endpoint.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). ```sql SELECT @@ -162,12 +168,12 @@ id, attributes, type FROM datadog.organization.estimated_cost_by_org -WHERE region = '{{ region }}' -- required -AND view = '{{ view }}' +WHERE view = '{{ view }}' AND start_month = '{{ start_month }}' AND end_month = '{{ end_month }}' AND start_date = '{{ start_date }}' AND end_date = '{{ end_date }}' +AND cost_aggregation = '{{ cost_aggregation }}' AND include_connected_accounts = '{{ include_connected_accounts }}' ; ``` diff --git a/website/docs/services/organization/global_orgs/index.md b/website/docs/services/organization/global_orgs/index.md new file mode 100644 index 0000000..ec50e2a --- /dev/null +++ b/website/docs/services/organization/global_orgs/index.md @@ -0,0 +1,151 @@ +--- +title: global_orgs +hide_title: false +hide_table_of_contents: false +keywords: + - global_orgs + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a global_orgs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectAttributes of an organization associated with the authenticated user.
stringThe resource type for global user organizations. (global_user_orgs) (example: global_user_orgs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_handlepage[limit], page[cursor]Returns organizations across regions for the authenticated user. The `user_handle` query parameter must match the authenticated user's handle.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe handle of the authenticated user.
stringString to query the next page of results. This key is provided with each valid response from the API in `meta.page.next_cursor`.
integer (int32)Maximum number of results returned.
+ +## `SELECT` examples + + + + +Returns organizations across regions for the authenticated user. The `user_handle` query parameter must match the authenticated user's handle. + +```sql +SELECT +attributes, +type +FROM datadog.organization.global_orgs +WHERE user_handle = '{{ user_handle }}' -- required +AND page[limit] = '{{ page[limit] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` + + diff --git a/website/docs/services/organization/governance_configs/index.md b/website/docs/services/organization/governance_configs/index.md new file mode 100644 index 0000000..cc433a4 --- /dev/null +++ b/website/docs/services/organization/governance_configs/index.md @@ -0,0 +1,139 @@ +--- +title: governance_configs +hide_title: false +hide_table_of_contents: false +keywords: + - governance_configs + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the organization the Governance Console configuration applies to. May be the nil UUID (`00000000-0000-0000-0000-000000000000`) when the configuration is not tied to a specific organization record. (example: 00000000-0000-0000-0000-000000000000)
objectThe attributes of a Governance Console configuration.
stringGovernance console config resource type. (governance_console_config) (example: governance_console_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the Governance Console configuration for the organization, including whether the<br />Console is enabled, whether assignment notifications are enabled, and whether usage<br />attribution is configured.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the Governance Console configuration for the organization, including whether the<br />Console is enabled, whether assignment notifications are enabled, and whether usage<br />attribution is configured. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_configs +; +``` + + diff --git a/website/docs/services/organization/governance_control_detections/index.md b/website/docs/services/organization/governance_control_detections/index.md new file mode 100644 index 0000000..af9781b --- /dev/null +++ b/website/docs/services/organization/governance_control_detections/index.md @@ -0,0 +1,175 @@ +--- +title: governance_control_detections +hide_title: false +hide_table_of_contents: false +keywords: + - governance_control_detections + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_control_detections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the detection. (example: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d)
objectThe attributes of a governance control detection.
stringGovernance control detection resource type. (governance_control_detection) (example: governance_control_detection)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
detection_typefilter[state], filter[query], sort, page[number], page[size]Retrieve the detections produced by the governance control with the given detection type.<br />Results can be filtered by state and free-text query, sorted, and paginated.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe detection type that identifies the control; for example, `unused_api_keys`. (example: unused_api_keys)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringRestrict the results to detections matching the given free-text query. (example: production)
stringRestrict the results to detections in the given state. (example: active)
integer (int64)The zero-based index of the page to return; the first page is 0. (example: 0)
integer (int64)The number of detections to return per page. (example: 50)
stringA comma-separated list of attributes to sort detections by. Prefix an attribute with `-` for descending order. The attributes available for sorting are `id`, `created_at`, `assigned_to`, `detection_type`, `display_name`, `exception_at`, `mitigate_after`, `mitigated_at`, `priority`, `resource_id`, and `state`. Defaults to `created_at,-id`. (example: -created_at,-id)
+ +## `SELECT` examples + + + + +Retrieve the detections produced by the governance control with the given detection type.<br />Results can be filtered by state and free-text query, sorted, and paginated. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_control_detections +WHERE detection_type = '{{ detection_type }}' -- required +AND filter[state] = '{{ filter[state] }}' +AND filter[query] = '{{ filter[query] }}' +AND sort = '{{ sort }}' +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + diff --git a/website/docs/services/organization/governance_control_notification_settings/index.md b/website/docs/services/organization/governance_control_notification_settings/index.md new file mode 100644 index 0000000..2f13ae3 --- /dev/null +++ b/website/docs/services/organization/governance_control_notification_settings/index.md @@ -0,0 +1,178 @@ +--- +title: governance_control_notification_settings +hide_title: false +hide_table_of_contents: false +keywords: + - governance_control_notification_settings + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_control_notification_settings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe detection type the notification settings apply to. (example: unused_api_keys)
objectThe attributes of a governance control's notification settings.
stringControl notification settings resource type. (control_notification_settings) (example: control_notification_settings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
detection_typeRetrieve the notification settings for the governance control with the given detection type,<br />including, for each supported event type, whether notifications are enabled and which<br />destinations receive them.
detection_type, dataReplace the notification settings for the governance control with the given detection type,<br />setting, for each supported event type, whether notifications are enabled and which<br />destinations receive them.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe detection type that identifies the control; for example, `unused_api_keys`. (example: unused_api_keys)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the notification settings for the governance control with the given detection type,<br />including, for each supported event type, whether notifications are enabled and which<br />destinations receive them. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_control_notification_settings +WHERE detection_type = '{{ detection_type }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Replace the notification settings for the governance control with the given detection type,<br />setting, for each supported event type, whether notifications are enabled and which<br />destinations receive them. + +```sql +REPLACE datadog.organization.governance_control_notification_settings +SET +data = '{{ data }}' +WHERE +detection_type = '{{ detection_type }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/governance_controls/index.md b/website/docs/services/organization/governance_controls/index.md new file mode 100644 index 0000000..05d4e00 --- /dev/null +++ b/website/docs/services/organization/governance_controls/index.md @@ -0,0 +1,229 @@ +--- +title: governance_controls +hide_title: false +hide_table_of_contents: false +keywords: + - governance_controls + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_controls resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe detection type that uniquely identifies the control. (example: unused_api_keys)
objectThe attributes of a governance control.
stringJSON:API resource type for a governance control. (governance_control) (example: governance_control)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe detection type that uniquely identifies the control. (example: unused_api_keys)
objectThe attributes of a governance control.
stringJSON:API resource type for a governance control. (governance_control) (example: governance_control)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
detection_typeRetrieve a single governance control by its detection type, including the organization's current<br />detection, notification, and mitigation configuration and detection counts.
Retrieve the list of governance controls configured for the organization. Each control pairs a<br />detection definition with the organization's current detection, notification, and mitigation<br />configuration, along with counts of active and mitigated detections.
detection_type, dataUpdate the detection, notification, and mitigation configuration of a governance control. Only<br />the attributes present in the request are modified. Changing the mitigation type or its<br />parameters may require additional permissions.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe detection type that identifies the control, for example `unused_api_keys`. (example: unused_api_keys)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve a single governance control by its detection type, including the organization's current<br />detection, notification, and mitigation configuration and detection counts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_controls +WHERE detection_type = '{{ detection_type }}' -- required +; +``` + + + +Retrieve the list of governance controls configured for the organization. Each control pairs a<br />detection definition with the organization's current detection, notification, and mitigation<br />configuration, along with counts of active and mitigated detections. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_controls +; +``` + + + + +## `UPDATE` examples + + + + +Update the detection, notification, and mitigation configuration of a governance control. Only<br />the attributes present in the request are modified. Changing the mitigation type or its<br />parameters may require additional permissions. + +```sql +UPDATE datadog.organization.governance_controls +SET +data = '{{ data }}' +WHERE +detection_type = '{{ detection_type }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/governance_detections/index.md b/website/docs/services/organization/governance_detections/index.md new file mode 100644 index 0000000..20b9066 --- /dev/null +++ b/website/docs/services/organization/governance_detections/index.md @@ -0,0 +1,211 @@ +--- +title: governance_detections +hide_title: false +hide_table_of_contents: false +keywords: + - governance_detections + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_detections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the detection. (example: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d)
objectThe attributes of a governance control detection.
stringGovernance control detection resource type. (governance_control_detection) (example: governance_control_detection)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
detection_idRetrieve a single governance detection by its unique identifier.
detection_id, dataUpdate a governance detection by its unique identifier. Only the attributes present in the<br />request are modified, allowing a detection to be acknowledged as an exception, reopened,<br />reassigned, or deferred for mitigation.
dataApply a mitigation to a set of governance detections of a given detection type. When the<br />mitigation type is omitted, the control's configured mitigation is used. The request is<br />accepted for asynchronous processing.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the detection. (example: 3f9b2c1a-8d4e-4a6b-9c2f-1e7d5a0b3c4d)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve a single governance detection by its unique identifier. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_detections +WHERE detection_id = '{{ detection_id }}' -- required +; +``` + + + + +## `UPDATE` examples + + + + +Update a governance detection by its unique identifier. Only the attributes present in the<br />request are modified, allowing a detection to be acknowledged as an exception, reopened,<br />reassigned, or deferred for mitigation. + +```sql +UPDATE datadog.organization.governance_detections +SET +data = '{{ data }}' +WHERE +detection_id = '{{ detection_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Apply a mitigation to a set of governance detections of a given detection type. When the<br />mitigation type is omitted, the control's configured mitigation is used. The request is<br />accepted for asynchronous processing. + +```sql +EXEC datadog.organization.governance_detections.mitigate_governance_detections +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/organization/governance_insights/index.md b/website/docs/services/organization/governance_insights/index.md new file mode 100644 index 0000000..25131bd --- /dev/null +++ b/website/docs/services/organization/governance_insights/index.md @@ -0,0 +1,145 @@ +--- +title: governance_insights +hide_title: false +hide_table_of_contents: false +keywords: + - governance_insights + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_insights resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the insight. (example: 498ee21f-8037-48b8-a961-a488692902f4)
objectThe attributes of a governance insight. Exactly one of `metric_query`, `event_query`, `usage_query`, `audit_query`, or `percentage_query` is populated, depending on the data source the insight is computed from; the rest are `null`.
stringJSON:API resource type for a governance insight. (insight) (example: insight)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[product]Retrieve the list of governance insights available to the organization. Each insight<br />reports the query used to compute it, so that the value can be computed client-side.<br />Insights can be filtered by product.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayRestrict the results to insights belonging to the given products. May be repeated to filter by multiple products. Matching is case-insensitive. (example: [Usage, Logs Settings])
+ +## `SELECT` examples + + + + +Retrieve the list of governance insights available to the organization. Each insight<br />reports the query used to compute it, so that the value can be computed client-side.<br />Insights can be filtered by product. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_insights +WHERE filter[product] = '{{ filter[product] }}' +; +``` + + diff --git a/website/docs/services/organization/governance_notification_settings/index.md b/website/docs/services/organization/governance_notification_settings/index.md new file mode 100644 index 0000000..30b52da --- /dev/null +++ b/website/docs/services/organization/governance_notification_settings/index.md @@ -0,0 +1,171 @@ +--- +title: governance_notification_settings +hide_title: false +hide_table_of_contents: false +keywords: + - governance_notification_settings + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_notification_settings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the organization the notification settings apply to. (example: 11111111-2222-3333-4444-555555555555)
objectThe attributes of the organization-wide governance notification settings.
stringGovernance notification settings resource type. (governance_notification_settings) (example: governance_notification_settings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the organization-wide governance notification settings, including whether users are<br />notified when detections are assigned to them.
dataUpdate the organization-wide governance notification settings. Only the attributes present in<br />the request are modified.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the organization-wide governance notification settings, including whether users are<br />notified when detections are assigned to them. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_notification_settings +; +``` + + + + +## `UPDATE` examples + + + + +Update the organization-wide governance notification settings. Only the attributes present in<br />the request are modified. + +```sql +UPDATE datadog.organization.governance_notification_settings +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/governance_tag_rule_scores/index.md b/website/docs/services/organization/governance_tag_rule_scores/index.md new file mode 100644 index 0000000..5b70ebb --- /dev/null +++ b/website/docs/services/organization/governance_tag_rule_scores/index.md @@ -0,0 +1,157 @@ +--- +title: governance_tag_rule_scores +hide_title: false +hide_table_of_contents: false +keywords: + - governance_tag_rule_scores + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_tag_rule_scores resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the compliance score resource. (example: 123-v1-1779315066097-1779401466097)
objectAttributes of a tag rule compliance score.
stringJSON:API resource type for a tag rule compliance score. (tag_rule_score) (example: tag_rule_score)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idts_start, ts_endRetrieve the compliance score for a single tag rule. The score is computed over the<br />requested time window (or a source-appropriate default) and represents the percentage of<br />telemetry within that window that conforms to the rule. A `null` score indicates that<br />no relevant telemetry was found.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the tag rule. (example: 123)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. (example: 1779401466097)
integer (int64)Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. (example: 1779315066097)
+ +## `SELECT` examples + + + + +Retrieve the compliance score for a single tag rule. The score is computed over the<br />requested time window (or a source-appropriate default) and represents the percentage of<br />telemetry within that window that conforms to the rule. A `null` score indicates that<br />no relevant telemetry was found. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.governance_tag_rule_scores +WHERE rule_id = '{{ rule_id }}' -- required +AND ts_start = '{{ ts_start }}' +AND ts_end = '{{ ts_end }}' +; +``` + + diff --git a/website/docs/services/organization/governance_tag_rules/index.md b/website/docs/services/organization/governance_tag_rules/index.md new file mode 100644 index 0000000..3d9d323 --- /dev/null +++ b/website/docs/services/organization/governance_tag_rules/index.md @@ -0,0 +1,374 @@ +--- +title: governance_tag_rules +hide_title: false +hide_table_of_contents: false +keywords: + - governance_tag_rules + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a governance_tag_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the tag rule. (example: 123)
objectThe attributes of a tag rule resource.
objectRelated resources for a tag rule. Only present when the corresponding `include` query parameter is supplied.
stringJSON:API resource type for a tag rule. (tag_rule) (example: tag_rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the tag rule. (example: 123)
objectThe attributes of a tag rule resource.
objectRelated resources for a tag rule. Only present when the corresponding `include` query parameter is supplied.
stringJSON:API resource type for a tag rule. (tag_rule) (example: tag_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idinclude, ts_start, ts_endRetrieve a single tag rule by ID. Optionally include the rule's current compliance<br />score via the `include=score` query parameter. Rules belonging to other organizations<br />cannot be retrieved.
include_disabled, include_deleted, include, filter[source], ts_start, ts_endRetrieve all tag rules for the organization. Optionally include disabled or deleted<br />rules, filter by telemetry source, and include each rule's current compliance score<br />via the `include=score` query parameter.
dataCreate a new tag rule for the organization. The caller's organization is derived from<br />the authenticated user; cross-organization creation is not supported. Fields such as<br />`rule_id`, `version`, and the timestamp/audit fields are assigned by the server.
rule_id, dataUpdate one or more attributes of an existing tag rule. Only the fields supplied in the<br />request body are modified; omitted fields retain their current values. The rule's<br />`source` cannot be changed after creation.
rule_idhard_deleteDelete a tag rule. By default the rule is soft-deleted so it can be recovered later<br />and so that historical score data remains queryable. Pass `hard_delete=true` to remove<br />the rule permanently.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the tag rule to delete. (example: 123)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringRestrict the result set to rules whose source matches the given value.
booleanWhether to permanently delete the rule instead of performing a soft delete. Defaults to `false`. (example: false)
stringComma-separated list of related resources to include alongside each rule in the response. Currently the only supported value is `score`.
booleanWhether to include rules that have been soft-deleted. Defaults to `false`. (example: false)
booleanWhether to include rules that are currently disabled. Defaults to `false`. (example: false)
integer (int64)End of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Must be in the past and greater than `ts_start`. (example: 1779401466097)
integer (int64)Start of the time window used for compliance score computation, as a Unix timestamp in milliseconds. Defaults to a recent window appropriate for the source. (example: 1779315066097)
+ +## `SELECT` examples + + + + +Retrieve a single tag rule by ID. Optionally include the rule's current compliance<br />score via the `include=score` query parameter. Rules belonging to other organizations<br />cannot be retrieved. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.governance_tag_rules +WHERE rule_id = '{{ rule_id }}' -- required +AND include = '{{ include }}' +AND ts_start = '{{ ts_start }}' +AND ts_end = '{{ ts_end }}' +; +``` + + + +Retrieve all tag rules for the organization. Optionally include disabled or deleted<br />rules, filter by telemetry source, and include each rule's current compliance score<br />via the `include=score` query parameter. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.governance_tag_rules +WHERE include_disabled = '{{ include_disabled }}' +AND include_deleted = '{{ include_deleted }}' +AND include = '{{ include }}' +AND filter[source] = '{{ filter[source] }}' +AND ts_start = '{{ ts_start }}' +AND ts_end = '{{ ts_end }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new tag rule for the organization. The caller's organization is derived from<br />the authenticated user; cross-organization creation is not supported. Fields such as<br />`rule_id`, `version`, and the timestamp/audit fields are assigned by the server. + +```sql +INSERT INTO datadog.organization.governance_tag_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: governance_tag_rules + props: + - name: data + description: | + Data object for creating a tag rule. + value: + attributes: + enabled: {{ enabled }} + name: "{{ name }}" + negated: {{ negated }} + required: {{ required }} + rule_type: "{{ rule_type }}" + scope: "{{ scope }}" + source: "{{ source }}" + tag_key: "{{ tag_key }}" + tag_value_patterns: + - "{{ tag_value_patterns }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update one or more attributes of an existing tag rule. Only the fields supplied in the<br />request body are modified; omitted fields retain their current values. The rule's<br />`source` cannot be changed after creation. + +```sql +UPDATE datadog.organization.governance_tag_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a tag rule. By default the rule is soft-deleted so it can be recovered later<br />and so that historical score data remains queryable. Pass `hard_delete=true` to remove<br />the rule permanently. + +```sql +DELETE FROM datadog.organization.governance_tag_rules +WHERE rule_id = '{{ rule_id }}' --required +AND hard_delete = '{{ hard_delete }}' +; +``` + + diff --git a/website/docs/services/organization/hamr_connections/index.md b/website/docs/services/organization/hamr_connections/index.md new file mode 100644 index 0000000..6a1eabf --- /dev/null +++ b/website/docs/services/organization/hamr_connections/index.md @@ -0,0 +1,194 @@ +--- +title: hamr_connections +hide_title: false +hide_table_of_contents: false +keywords: + - hamr_connections + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a hamr_connections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe organization UUID for this HAMR connection. (example: 550e8400-e29b-41d4-a716-446655440000)
objectAttributes of a HAMR organization connection response.
stringType of the HAMR organization connection resource. (hamr_org_connections) (example: hamr_org_connections)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the High Availability Multi-Region (HAMR) organization connection details for the authenticated organization.<br />This endpoint returns information about the HAMR connection configuration, including the target organization,<br />datacenter, status, and whether this is the primary or secondary organization in the HAMR relationship.
dataCreate or update the High Availability Multi-Region (HAMR) organization connection.<br />This endpoint allows you to configure the HAMR connection between the authenticated organization<br />and a target organization, including setting the connection status (ONBOARDING, PASSIVE, FAILOVER, ACTIVE, RECOVERY)
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the High Availability Multi-Region (HAMR) organization connection details for the authenticated organization.<br />This endpoint returns information about the HAMR connection configuration, including the target organization,<br />datacenter, status, and whether this is the primary or secondary organization in the HAMR relationship. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.hamr_connections +; +``` + + + + +## `INSERT` examples + + + + +Create or update the High Availability Multi-Region (HAMR) organization connection.<br />This endpoint allows you to configure the HAMR connection between the authenticated organization<br />and a target organization, including setting the connection status (ONBOARDING, PASSIVE, FAILOVER, ACTIVE, RECOVERY) + +```sql +INSERT INTO datadog.organization.hamr_connections ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: hamr_connections + props: + - name: data + description: | + Data object for a HAMR organization connection request. + value: + attributes: + hamr_status: {{ hamr_status }} + is_primary: {{ is_primary }} + modified_by: "{{ modified_by }}" + target_org_datacenter: "{{ target_org_datacenter }}" + target_org_name: "{{ target_org_name }}" + target_org_uuid: "{{ target_org_uuid }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/organization/historical_cost_by_org/index.md b/website/docs/services/organization/historical_cost_by_org/index.md index e2c1432..4dd9633 100644 --- a/website/docs/services/organization/historical_cost_by_org/index.md +++ b/website/docs/services/organization/historical_cost_by_org/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a historical_cost_by_org r ## Overview - +
Namehistorical_cost_by_org
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of cost data. (default: cost_by_org, example: cost_by_org) + Type of cost data. (cost_by_org) (default: cost_by_org, example: cost_by_org) @@ -86,9 +87,9 @@ The following methods are available for this resource: - start_month, region + start_month view, end_month, include_connected_accounts - Get historical cost across multi-org and single root-org accounts.
Cost data for a given month becomes available no later than the 16th of the following month.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + Get historical cost across multi-org and single root-org accounts.<br />Cost data for a given month becomes available no later than the 16th of the following month.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). @@ -106,25 +107,25 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. string (date-time) - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month. + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost beginning this month. string (date-time) - Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month. + Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for cost ending this month. boolean - Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. @@ -144,7 +145,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get historical cost across multi-org and single root-org accounts.
Cost data for a given month becomes available no later than the 16th of the following month.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). +Get historical cost across multi-org and single root-org accounts.<br />Cost data for a given month becomes available no later than the 16th of the following month.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). ```sql SELECT @@ -153,7 +154,6 @@ attributes, type FROM datadog.organization.historical_cost_by_org WHERE start_month = '{{ start_month }}' -- required -AND region = '{{ region }}' -- required AND view = '{{ view }}' AND end_month = '{{ end_month }}' AND include_connected_accounts = '{{ include_connected_accounts }}' diff --git a/website/docs/services/organization/hourly_usage/index.md b/website/docs/services/organization/hourly_usage/index.md index b94d06d..37d216a 100644 --- a/website/docs/services/organization/hourly_usage/index.md +++ b/website/docs/services/organization/hourly_usage/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an hourly_usage resource. ## Overview - +
Namehourly_usage
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of usage data. (default: usage_timeseries, example: usage_timeseries) + Type of usage data. (usage_timeseries) (default: usage_timeseries, example: usage_timeseries) @@ -86,7 +87,7 @@ The following methods are available for this resource: - filter[timestamp][start], filter[product_families], region + filter[timestamp][start], filter[product_families] filter[timestamp][end], filter[include_descendants], filter[include_connected_accounts], filter[include_breakdown], filter[versions], page[limit], page[next_record_id] Get hourly usage by product family. @@ -109,17 +110,17 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Comma separated list of product families to retrieve. Available families are `all`, `analyzed_logs`, `application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`, `cloud_siem`, `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`, `cws`, `dbm`, `error_tracking`, `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`, `iot`, `lambda_traced_invocations`, `llm_observability`, `logs`, `network_flows`, `network_hosts`, `network_monitoring`, `observability_pipelines`, `online_archive`, `profiling`, `product_analytics`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `snmp`, `software_delivery`, `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, `vuln_management` and `workflow_executions`. The following product family has been **deprecated**: `audit_logs`. + Comma separated list of product families to retrieve. Available families are `all`, `ai`, `analyzed_logs`, `application_performance_monitoring`, `application_security`, `audit_trail`, `bits_ai`, `serverless`, `ci_app`, `cloud_cost_management`, `cloud_siem`, `csm_container_enterprise`, `csm_host_enterprise`, `csm_host_pro`, `cspm`, `custom_events`, `cws`, `data_observability`, `dbm`, `digital_experience_management`, `error_tracking`, `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `infrastructure_monitoring`, `ingested_spans`, `iot`, `lambda_traced_invocations`, `llm_observability`, `log_management`, `logs`, `network_flows`, `network_hosts`, `network_monitoring`, `observability_pipelines`, `online_archive`, `platform_capabilities`, `product_analytics`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `security`, `snmp`, `software_delivery`, `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, `timeseries`, `vuln_management` and `workflow_executions`. The following product family has been **deprecated**: `audit_logs`. string (date-time) - Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour. + Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -139,7 +140,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string (date-time) - Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour. + Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour. @@ -179,7 +180,6 @@ type FROM datadog.organization.hourly_usage WHERE filter[timestamp][start] = '{{ filter[timestamp][start] }}' -- required AND filter[product_families] = '{{ filter[product_families] }}' -- required -AND region = '{{ region }}' -- required AND filter[timestamp][end] = '{{ filter[timestamp][end] }}' AND filter[include_descendants] = '{{ filter[include_descendants] }}' AND filter[include_connected_accounts] = '{{ filter[include_connected_accounts] }}' diff --git a/website/docs/services/organization/identity_provider_users/index.md b/website/docs/services/organization/identity_provider_users/index.md new file mode 100644 index 0000000..fe059e4 --- /dev/null +++ b/website/docs/services/organization/identity_provider_users/index.md @@ -0,0 +1,187 @@ +--- +title: identity_provider_users +hide_title: false +hide_table_of_contents: false +keywords: + - identity_provider_users + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an identity_provider_users resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the user.
objectAttributes of user object returned by the API.
objectRelationships of the user object returned by the API.
stringUsers resource type. (users) (default: users, example: users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idp_idpage[size], page[number], sort, sort_dir, filter, filter[status]Get all users in the organization whose login method has been overridden<br />to use the specified identity provider.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the identity provider.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter users by the given string. Defaults to no filtering.
stringFilter on status attribute. Comma-separated list, with possible values `Active`, `Pending`, and `Disabled`. Defaults to no filtering.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
stringUser attribute to order results by. Options include `email` and `name`.
stringDirection of sort. Options: `asc`, `desc`.
+ +## `SELECT` examples + + + + +Get all users in the organization whose login method has been overridden<br />to use the specified identity provider. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.identity_provider_users +WHERE idp_id = '{{ idp_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND sort_dir = '{{ sort_dir }}' +AND filter = '{{ filter }}' +AND filter[status] = '{{ filter[status] }}' +; +``` + + diff --git a/website/docs/services/organization/identity_providers/index.md b/website/docs/services/organization/identity_providers/index.md new file mode 100644 index 0000000..d9cd039 --- /dev/null +++ b/website/docs/services/organization/identity_providers/index.md @@ -0,0 +1,177 @@ +--- +title: identity_providers +hide_title: false +hide_table_of_contents: false +keywords: + - identity_providers + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an identity_providers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the identity provider. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of an organization identity provider.
stringThe resource type for identity providers. (identity_providers) (example: identity_providers)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all identity providers available for the current organization.
idp_id, dataEnable or disable an identity provider for the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the identity provider.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all identity providers available for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.identity_providers +; +``` + + + + +## `UPDATE` examples + + + + +Enable or disable an identity provider for the current organization. + +```sql +UPDATE datadog.organization.identity_providers +SET +data = '{{ data }}' +WHERE +idp_id = '{{ idp_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/organization/index.md b/website/docs/services/organization/index.md index 9ae1ffa..2844fba 100644 --- a/website/docs/services/organization/index.md +++ b/website/docs/services/organization/index.md @@ -18,13 +18,14 @@ organization service documentation. :::info[Service Summary] -total resources: __37__ +total resources: __85__ ::: ## Resources
diff --git a/website/docs/services/organization/invitations/index.md b/website/docs/services/organization/invitations/index.md index a0f4f8b..2650885 100644 --- a/website/docs/services/organization/invitations/index.md +++ b/website/docs/services/organization/invitations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an invitations resource. ## Overview - +
Nameinvitations
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - User invitations type. (default: user_invitations, example: user_invitations) + User invitations type. (user_invitations) (default: user_invitations, example: user_invitations) @@ -91,14 +92,14 @@ The following methods are available for this resource: - user_invitation_uuid, region + user_invitation_uuid Returns a single user invitation by its UUID. - region, data + data Sends emails to one or more users inviting them to join the organization. @@ -118,10 +119,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -151,7 +152,6 @@ relationships, type FROM datadog.organization.invitations WHERE user_invitation_uuid = '{{ user_invitation_uuid }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -160,6 +160,8 @@ AND region = '{{ region }}' -- required ## Lifecycle Methods +EXEC variables use wire (API) names. + ip_allowlist
resource. ## Overview - +
Nameip_allowlist
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - IP allowlist type. (default: ip_allowlist, example: ip_allowlist) + IP allowlist type. (ip_allowlist) (default: ip_allowlist, example: ip_allowlist) @@ -86,14 +87,14 @@ The following methods are available for this resource: - region + Returns the IP allowlist and its enabled or disabled state. - region, data__data + data Edit the entries in the IP allowlist, and enable or disable it. @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -139,7 +140,6 @@ id, attributes, type FROM datadog.organization.ip_allowlist -WHERE region = '{{ region }}' -- required ; ``` @@ -161,10 +161,9 @@ Edit the entries in the IP allowlist, and enable or disable it. ```sql UPDATE datadog.organization.ip_allowlist SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE -region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +data = '{{ data }}' --required RETURNING data; ``` diff --git a/website/docs/services/organization/ip_ranges/index.md b/website/docs/services/organization/ip_ranges/index.md new file mode 100644 index 0000000..8fe48da --- /dev/null +++ b/website/docs/services/organization/ip_ranges/index.md @@ -0,0 +1,199 @@ +--- +title: ip_ranges +hide_title: false +hide_table_of_contents: false +keywords: + - ip_ranges + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an ip_ranges resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectAvailable prefix information for the Agent endpoints.
objectAvailable prefix information for the API endpoints.
objectAvailable prefix information for the APM endpoints.
objectAvailable prefix information for all Datadog endpoints.
objectAvailable prefix information for the Logs endpoints.
stringDate when last updated, in the form `YYYY-MM-DD-hh-mm-ss`. (example: 2019-10-31-20-00-00)
objectAvailable prefix information for the Orchestrator endpoints.
objectAvailable prefix information for the Process endpoints.
objectAvailable prefix information for the Remote Configuration endpoints.
objectAvailable prefix information for the Synthetics endpoints.
objectAvailable prefix information for the Synthetics Private Locations endpoints.
integer (int64)Version of the IP list.
objectAvailable prefix information for the Webhook endpoints.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get information about Datadog IP ranges.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get information about Datadog IP ranges. + +```sql +SELECT +agents, +api, +apm, +global, +logs, +modified, +orchestrator, +process, +remote-configuration, +synthetics, +synthetics-private-locations, +version, +webhooks +FROM datadog.organization.ip_ranges +; +``` + + diff --git a/website/docs/services/organization/key_validation/index.md b/website/docs/services/organization/key_validation/index.md new file mode 100644 index 0000000..87df98c --- /dev/null +++ b/website/docs/services/organization/key_validation/index.md @@ -0,0 +1,127 @@ +--- +title: key_validation +hide_title: false +hide_table_of_contents: false +keywords: + - key_validation + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a key_validation resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringStatus of the validation. Always `ok` when both the API key and the application key are valid. (ok) (example: ok)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Check that the API key and application key used for the request are both valid.<br />Returns `{"status": "ok"}` on success, `401` or `403` otherwise. Useful as a<br />lightweight authentication probe before issuing other API calls that require<br />full credentials.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Check that the API key and application key used for the request are both valid.<br />Returns `{"status": "ok"}` on success, `401` or `403` otherwise. Useful as a<br />lightweight authentication probe before issuing other API calls that require<br />full credentials. + +```sql +SELECT +status +FROM datadog.organization.key_validation +; +``` + + diff --git a/website/docs/services/organization/lambda_traced_invocations_usage/index.md b/website/docs/services/organization/lambda_traced_invocations_usage/index.md deleted file mode 100644 index 992969b..0000000 --- a/website/docs/services/organization/lambda_traced_invocations_usage/index.md +++ /dev/null @@ -1,151 +0,0 @@ ---- -title: lambda_traced_invocations_usage -hide_title: false -hide_table_of_contents: false -keywords: - - lambda_traced_invocations_usage - - organization - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists a lambda_traced_invocations_usage resource. - -## Overview - - - - -
Namelambda_traced_invocations_usage
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringUnique ID of the response.
objectUsage attributes data.
stringType of usage data. (default: usage_timeseries, example: usage_timeseries)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
start_hr, regionend_hrGet hourly usage for Lambda traced invocations.
**Note:** This endpoint has been deprecated.. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family)
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending **before** this hour.
- -## `SELECT` examples - - - - -Get hourly usage for Lambda traced invocations.
**Note:** This endpoint has been deprecated.. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - -```sql -SELECT -id, -attributes, -type -FROM datadog.organization.lambda_traced_invocations_usage -WHERE start_hr = '{{ start_hr }}' -- required -AND region = '{{ region }}' -- required -AND end_hr = '{{ end_hr }}' -; -``` -
-
diff --git a/website/docs/services/organization/login_configs/index.md b/website/docs/services/organization/login_configs/index.md new file mode 100644 index 0000000..9e70c66 --- /dev/null +++ b/website/docs/services/organization/login_configs/index.md @@ -0,0 +1,104 @@ +--- +title: login_configs +hide_title: false +hide_table_of_contents: false +keywords: + - login_configs + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a login_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataUpdate the maximum session duration for the current organization.<br />The duration is specified in seconds.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `REPLACE` examples + + + + +Update the maximum session duration for the current organization.<br />The duration is specified in seconds. + +```sql +REPLACE datadog.organization.login_configs +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required; +``` + + diff --git a/website/docs/services/organization/oauth2_client_scopes_restrictions/index.md b/website/docs/services/organization/oauth2_client_scopes_restrictions/index.md new file mode 100644 index 0000000..fecf351 --- /dev/null +++ b/website/docs/services/organization/oauth2_client_scopes_restrictions/index.md @@ -0,0 +1,230 @@ +--- +title: oauth2_client_scopes_restrictions +hide_title: false +hide_table_of_contents: false +keywords: + - oauth2_client_scopes_restrictions + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an oauth2_client_scopes_restrictions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)UUID of the OAuth2 client this restriction applies to. (example: fafa8e1c-36a5-11f0-a83d-da7ad0900001)
objectAttributes of an OAuth2 client scopes restriction.
stringJSON:API resource type for an OAuth2 client scopes restriction. (scopes_restriction) (default: scopes_restriction, example: scopes_restriction)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
client_uuidGet the scopes restriction configured for the OAuth2 client.
client_uuid, dataCreate or update the scopes restriction configured for the OAuth2 client.
client_uuidDelete the scopes restriction configured for the OAuth2 client.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)UUID of the OAuth2 client.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the scopes restriction configured for the OAuth2 client. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.oauth2_client_scopes_restrictions +WHERE client_uuid = '{{ client_uuid }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create or update the scopes restriction configured for the OAuth2 client. + +```sql +INSERT INTO datadog.organization.oauth2_client_scopes_restrictions ( +data, +client_uuid +) +SELECT +'{{ data }}' /* required */, +'{{ client_uuid }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: oauth2_client_scopes_restrictions + props: + - name: client_uuid + value: "{{ client_uuid }}" + description: Required parameter for the oauth2_client_scopes_restrictions resource. + - name: data + description: | + Data object of an upsert OAuth2 scopes restriction request. + value: + attributes: + oidc_scopes: + - "{{ oidc_scopes }}" + permission_scopes: + - "{{ permission_scopes }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete the scopes restriction configured for the OAuth2 client. + +```sql +DELETE FROM datadog.organization.oauth2_client_scopes_restrictions +WHERE client_uuid = '{{ client_uuid }}' --required +; +``` + + diff --git a/website/docs/services/organization/oauth2_clients/index.md b/website/docs/services/organization/oauth2_clients/index.md new file mode 100644 index 0000000..8119277 --- /dev/null +++ b/website/docs/services/organization/oauth2_clients/index.md @@ -0,0 +1,117 @@ +--- +title: oauth2_clients +hide_title: false +hide_table_of_contents: false +keywords: + - oauth2_clients + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an oauth2_clients resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
client_name, redirect_urisRegister an OAuth2 client using the Dynamic Client Registration protocol defined in RFC 7591.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Register an OAuth2 client using the Dynamic Client Registration protocol defined in RFC 7591. + +```sql +EXEC datadog.organization.oauth2_clients.register_oauth_client +@@json= +'{ +"client_name": "{{ client_name }}", +"client_uri": "{{ client_uri }}", +"grant_types": "{{ grant_types }}", +"jwks_uri": "{{ jwks_uri }}", +"logo_uri": "{{ logo_uri }}", +"policy_uri": "{{ policy_uri }}", +"redirect_uris": "{{ redirect_uris }}", +"response_types": "{{ response_types }}", +"scope": "{{ scope }}", +"token_endpoint_auth_method": "{{ token_endpoint_auth_method }}", +"tos_uri": "{{ tos_uri }}" +}' +; +``` + + diff --git a/website/docs/services/organization/oauth2_well_known_sites/index.md b/website/docs/services/organization/oauth2_well_known_sites/index.md new file mode 100644 index 0000000..7c285c9 --- /dev/null +++ b/website/docs/services/organization/oauth2_well_known_sites/index.md @@ -0,0 +1,139 @@ +--- +title: oauth2_well_known_sites +hide_title: false +hide_table_of_contents: false +keywords: + - oauth2_well_known_sites + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an oauth2_well_known_sites resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringEnvironment identifier. (example: prod)
objectAttributes containing the list of public OAuth2 sites.
stringJSON:API resource type for OAuth2 well-known sites environment. (env) (default: env, example: env)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the list of public OAuth2 sites available for the current environment. This endpoint is used for OAuth2 discovery and returns sites where users can authenticate.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the list of public OAuth2 sites available for the current environment. This endpoint is used for OAuth2 discovery and returns sites where users can authenticate. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.oauth2_well_known_sites +; +``` + + diff --git a/website/docs/services/organization/observability_pipelines_usage/index.md b/website/docs/services/organization/observability_pipelines_usage/index.md deleted file mode 100644 index aa17b01..0000000 --- a/website/docs/services/organization/observability_pipelines_usage/index.md +++ /dev/null @@ -1,151 +0,0 @@ ---- -title: observability_pipelines_usage -hide_title: false -hide_table_of_contents: false -keywords: - - observability_pipelines_usage - - organization - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists an observability_pipelines_usage resource. - -## Overview - - - - -
Nameobservability_pipelines_usage
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringUnique ID of the response.
objectUsage attributes data.
stringType of usage data. (default: usage_timeseries, example: usage_timeseries)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
start_hr, regionend_hrGet hourly usage for observability pipelines.
**Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family)
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending **before** this hour.
- -## `SELECT` examples - - - - -Get hourly usage for observability pipelines.
**Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - -```sql -SELECT -id, -attributes, -type -FROM datadog.organization.observability_pipelines_usage -WHERE start_hr = '{{ start_hr }}' -- required -AND region = '{{ region }}' -- required -AND end_hr = '{{ end_hr }}' -; -``` -
-
diff --git a/website/docs/services/organization/org_authorized_client_user_authorized_clients/index.md b/website/docs/services/organization/org_authorized_client_user_authorized_clients/index.md new file mode 100644 index 0000000..c1fec47 --- /dev/null +++ b/website/docs/services/organization/org_authorized_client_user_authorized_clients/index.md @@ -0,0 +1,227 @@ +--- +title: org_authorized_client_user_authorized_clients +hide_title: false +hide_table_of_contents: false +keywords: + - org_authorized_client_user_authorized_clients + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_authorized_client_user_authorized_clients resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the user authorized client. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a user authorized client.
objectRelationships for a user authorized client.
stringThe resource type for user authorized clients. (user_authorized_clients) (example: user_authorized_clients)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_authorized_client_idpage[size], page[number], sort, filter[disabled], filter[user][name], filter[user][email], filter[user][disabled]Get a list of user authorizations for the specified OAuth2 client in the current organization.
org_authorized_client_id, user_authorized_client_idDisable a specific user authorization for the specified OAuth2 client in the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the org authorized client.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the user authorized client.
stringFilter results by the user authorization disabled status.
stringFilter results by whether the user is disabled.
stringFilter results by user email.
stringFilter results by user name.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
stringField to sort results by. Options: `user.name`, `user.email`, `oauth2_client.name`.
+ +## `SELECT` examples + + + + +Get a list of user authorizations for the specified OAuth2 client in the current organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_authorized_client_user_authorized_clients +WHERE org_authorized_client_id = '{{ org_authorized_client_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter[disabled] = '{{ filter[disabled] }}' +AND filter[user][name] = '{{ filter[user][name] }}' +AND filter[user][email] = '{{ filter[user][email] }}' +AND filter[user][disabled] = '{{ filter[user][disabled] }}' +; +``` + + + + +## `DELETE` examples + + + + +Disable a specific user authorization for the specified OAuth2 client in the current organization. + +```sql +DELETE FROM datadog.organization.org_authorized_client_user_authorized_clients +WHERE org_authorized_client_id = '{{ org_authorized_client_id }}' --required +AND user_authorized_client_id = '{{ user_authorized_client_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/org_authorized_client_users/index.md b/website/docs/services/organization/org_authorized_client_users/index.md new file mode 100644 index 0000000..9fe97de --- /dev/null +++ b/website/docs/services/organization/org_authorized_client_users/index.md @@ -0,0 +1,113 @@ +--- +title: org_authorized_client_users +hide_title: false +hide_table_of_contents: false +keywords: + - org_authorized_client_users + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_authorized_client_users resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_authorized_client_id, user_idDisable all authorizations for a specific user for the specified OAuth2 client in the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the org authorized client.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the user.
+ +## `DELETE` examples + + + + +Disable all authorizations for a specific user for the specified OAuth2 client in the current organization. + +```sql +DELETE FROM datadog.organization.org_authorized_client_users +WHERE org_authorized_client_id = '{{ org_authorized_client_id }}' --required +AND user_id = '{{ user_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/org_authorized_clients/index.md b/website/docs/services/organization/org_authorized_clients/index.md new file mode 100644 index 0000000..178f45c --- /dev/null +++ b/website/docs/services/organization/org_authorized_clients/index.md @@ -0,0 +1,324 @@ +--- +title: org_authorized_clients +hide_title: false +hide_table_of_contents: false +keywords: + - org_authorized_clients + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_authorized_clients resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the org authorized client. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of an org authorized client.
objectRelationships for an org authorized client.
stringThe resource type for org authorized clients. (org_authorized_clients) (example: org_authorized_clients)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the org authorized client. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of an org authorized client.
objectRelationships for an org authorized client.
stringThe resource type for org authorized clients. (org_authorized_clients) (example: org_authorized_clients)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_authorized_client_idinclude, filter[user_authorized_clients][disabled], filter[user_authorized_clients][user][disabled]Get a single OAuth2 client authorized for the current organization.
page[size], page[number], sort, filter, filter[oauth2_client][name], filter[disabled], includeGet a list of all OAuth2 clients authorized for the current organization.
org_authorized_client_id, dataEnable or disable an OAuth2 client authorization for the current organization.
org_authorized_client_idDisable an OAuth2 client authorization for the current organization, revoking access for all users.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the org authorized client.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter results by client name, app title, or app description.
stringFilter results by the org-level disabled status.
stringFilter results by the OAuth2 client name.
stringFilter included user authorized clients by disabled status.
stringFilter included user authorized clients by user disabled status.
stringComma-separated list of related resources to include. Options: `oauth2_client`, `oauth2_client.app`, `user_authorized_clients.user`.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
stringField to sort results by. Options include `oauth2_client.name`.
+ +## `SELECT` examples + + + + +Get a single OAuth2 client authorized for the current organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_authorized_clients +WHERE org_authorized_client_id = '{{ org_authorized_client_id }}' -- required +AND include = '{{ include }}' +AND filter[user_authorized_clients][disabled] = '{{ filter[user_authorized_clients][disabled] }}' +AND filter[user_authorized_clients][user][disabled] = '{{ filter[user_authorized_clients][user][disabled] }}' +; +``` + + + +Get a list of all OAuth2 clients authorized for the current organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_authorized_clients +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter = '{{ filter }}' +AND filter[oauth2_client][name] = '{{ filter[oauth2_client][name] }}' +AND filter[disabled] = '{{ filter[disabled] }}' +AND include = '{{ include }}' +; +``` + + + + +## `UPDATE` examples + + + + +Enable or disable an OAuth2 client authorization for the current organization. + +```sql +UPDATE datadog.organization.org_authorized_clients +SET +data = '{{ data }}' +WHERE +org_authorized_client_id = '{{ org_authorized_client_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Disable an OAuth2 client authorization for the current organization, revoking access for all users. + +```sql +DELETE FROM datadog.organization.org_authorized_clients +WHERE org_authorized_client_id = '{{ org_authorized_client_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/org_group_memberships/index.md b/website/docs/services/organization/org_group_memberships/index.md new file mode 100644 index 0000000..b598cac --- /dev/null +++ b/website/docs/services/organization/org_group_memberships/index.md @@ -0,0 +1,304 @@ +--- +title: org_group_memberships +hide_title: false +hide_table_of_contents: false +keywords: + - org_group_memberships + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_group_memberships resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group membership. (example: f1e2d3c4-b5a6-7890-1234-567890abcdef)
objectAttributes of an org group membership.
objectRelationships of an org group membership.
stringOrg group memberships resource type. (org_group_memberships) (example: org_group_memberships)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group membership. (example: f1e2d3c4-b5a6-7890-1234-567890abcdef)
objectAttributes of an org group membership.
objectRelationships of an org group membership.
stringOrg group memberships resource type. (org_group_memberships) (example: org_group_memberships)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_group_membership_idGet a specific organization group membership by its ID.
filter[org_group_id], filter[org_uuid], page[number], page[size], sortList organization group memberships. Filter by org group ID or org UUID. At least one of `filter[org_group_id]` or `filter[org_uuid]` must be provided. When filtering by org UUID, returns a single-item list with the membership for that org.
org_group_membership_id, dataMove an organization to a different org group by updating its membership.
dataMove a batch of organizations from one org group to another. This is an atomic operation. Maximum 100 orgs per request.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group membership.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)Filter memberships by org group ID. Required when `filter[org_uuid]` is not provided.
string (uuid)Filter memberships by org UUID. Returns a single-item list.
integer (int64)The page number to return.
integer (int64)The number of items per page. Maximum is 1000.
stringField to sort memberships by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`.
+ +## `SELECT` examples + + + + +Get a specific organization group membership by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_memberships +WHERE org_group_membership_id = '{{ org_group_membership_id }}' -- required +; +``` + + + +List organization group memberships. Filter by org group ID or org UUID. At least one of `filter[org_group_id]` or `filter[org_uuid]` must be provided. When filtering by org UUID, returns a single-item list with the membership for that org. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_memberships +WHERE filter[org_group_id] = '{{ filter[org_group_id] }}' +AND filter[org_uuid] = '{{ filter[org_uuid] }}' +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `UPDATE` examples + + + + +Move an organization to a different org group by updating its membership. + +```sql +UPDATE datadog.organization.org_group_memberships +SET +data = '{{ data }}' +WHERE +org_group_membership_id = '{{ org_group_membership_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Move a batch of organizations from one org group to another. This is an atomic operation. Maximum 100 orgs per request. + +```sql +EXEC datadog.organization.org_group_memberships.bulk_update_org_group_memberships +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/organization/org_group_policies/index.md b/website/docs/services/organization/org_group_policies/index.md new file mode 100644 index 0000000..7292f47 --- /dev/null +++ b/website/docs/services/organization/org_group_policies/index.md @@ -0,0 +1,356 @@ +--- +title: org_group_policies +hide_title: false +hide_table_of_contents: false +keywords: + - org_group_policies + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_group_policies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group policy. (example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789)
objectAttributes of an org group policy.
objectRelationships of an org group policy.
stringOrg group policies resource type. (org_group_policies) (example: org_group_policies)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group policy. (example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789)
objectAttributes of an org group policy.
objectRelationships of an org group policy.
stringOrg group policies resource type. (org_group_policies) (example: org_group_policies)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_group_policy_idGet a specific organization group policy by its ID.
filter[org_group_id]filter[policy_name], page[number], page[size], sortList policies for an organization group. Requires a filter on org group ID.
dataCreate a new policy for an organization group.
org_group_policy_id, dataUpdate an existing organization group policy.
org_group_policy_idDelete an organization group policy by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Filter policies by org group ID.
string (uuid)The ID of the org group policy.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter policies by policy name.
integer (int64)The page number to return.
integer (int64)The number of items per page. Maximum is 1000.
stringField to sort policies by. Supported values: `id`, `name`, `-id`, `-name`. Defaults to `id`.
+ +## `SELECT` examples + + + + +Get a specific organization group policy by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_policies +WHERE org_group_policy_id = '{{ org_group_policy_id }}' -- required +; +``` + + + +List policies for an organization group. Requires a filter on org group ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_policies +WHERE filter[org_group_id] = '{{ filter[org_group_id] }}' -- required +AND filter[policy_name] = '{{ filter[policy_name] }}' +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new policy for an organization group. + +```sql +INSERT INTO datadog.organization.org_group_policies ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: org_group_policies + props: + - name: data + description: | + Data for creating an org group policy. + value: + attributes: + content: "{{ content }}" + enforcement_tier: "{{ enforcement_tier }}" + policy_name: "{{ policy_name }}" + policy_type: "{{ policy_type }}" + relationships: + org_group: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing organization group policy. + +```sql +UPDATE datadog.organization.org_group_policies +SET +data = '{{ data }}' +WHERE +org_group_policy_id = '{{ org_group_policy_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an organization group policy by its ID. + +```sql +DELETE FROM datadog.organization.org_group_policies +WHERE org_group_policy_id = '{{ org_group_policy_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/org_group_policy_configs/index.md b/website/docs/services/organization/org_group_policy_configs/index.md new file mode 100644 index 0000000..2caba45 --- /dev/null +++ b/website/docs/services/organization/org_group_policy_configs/index.md @@ -0,0 +1,139 @@ +--- +title: org_group_policy_configs +hide_title: false +hide_table_of_contents: false +keywords: + - org_group_policy_configs + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_group_policy_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the policy config (uses the config name). (example: monitor_timezone)
objectAttributes of an org group policy config.
stringOrg group policy configs resource type. (org_group_policy_configs) (example: org_group_policy_configs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all org configs that are eligible to be used as organization group policies.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all org configs that are eligible to be used as organization group policies. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.org_group_policy_configs +; +``` + + diff --git a/website/docs/services/organization/org_group_policy_overrides/index.md b/website/docs/services/organization/org_group_policy_overrides/index.md new file mode 100644 index 0000000..629172a --- /dev/null +++ b/website/docs/services/organization/org_group_policy_overrides/index.md @@ -0,0 +1,358 @@ +--- +title: org_group_policy_overrides +hide_title: false +hide_table_of_contents: false +keywords: + - org_group_policy_overrides + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_group_policy_overrides resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the policy override. (example: 9f8e7d6c-5b4a-3210-fedc-ba0987654321)
objectAttributes of an org group policy override.
objectRelationships of an org group policy override.
stringOrg group policy overrides resource type. (org_group_policy_overrides) (example: org_group_policy_overrides)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the policy override. (example: 9f8e7d6c-5b4a-3210-fedc-ba0987654321)
objectAttributes of an org group policy override.
objectRelationships of an org group policy override.
stringOrg group policy overrides resource type. (org_group_policy_overrides) (example: org_group_policy_overrides)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_group_policy_override_idGet a specific organization group policy override by its ID.
filter[org_group_id]filter[policy_id], page[number], page[size], sortList policy overrides for an organization group. Requires a filter on org group ID. Optionally filter by policy ID.
dataCreate a new policy override for an organization within an org group.
org_group_policy_override_id, dataUpdate an existing organization group policy override.
org_group_policy_override_idDelete an organization group policy override by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Filter policy overrides by org group ID.
string (uuid)The ID of the org group policy override.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)Filter policy overrides by policy ID.
integer (int64)The page number to return.
integer (int64)The number of items per page. Maximum is 1000.
stringField to sort overrides by. Supported values: `id`, `org_uuid`, `-id`, `-org_uuid`. Defaults to `id`.
+ +## `SELECT` examples + + + + +Get a specific organization group policy override by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_policy_overrides +WHERE org_group_policy_override_id = '{{ org_group_policy_override_id }}' -- required +; +``` + + + +List policy overrides for an organization group. Requires a filter on org group ID. Optionally filter by policy ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_policy_overrides +WHERE filter[org_group_id] = '{{ filter[org_group_id] }}' -- required +AND filter[policy_id] = '{{ filter[policy_id] }}' +AND page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new policy override for an organization within an org group. + +```sql +INSERT INTO datadog.organization.org_group_policy_overrides ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: org_group_policy_overrides + props: + - name: data + description: | + Data for creating an org group policy override. + value: + attributes: + org_site: "{{ org_site }}" + org_uuid: "{{ org_uuid }}" + relationships: + org_group: + data: + id: "{{ id }}" + type: "{{ type }}" + org_group_policy: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing organization group policy override. + +```sql +UPDATE datadog.organization.org_group_policy_overrides +SET +data = '{{ data }}' +WHERE +org_group_policy_override_id = '{{ org_group_policy_override_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an organization group policy override by its ID. + +```sql +DELETE FROM datadog.organization.org_group_policy_overrides +WHERE org_group_policy_override_id = '{{ org_group_policy_override_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/org_group_policy_suggestions/index.md b/website/docs/services/organization/org_group_policy_suggestions/index.md new file mode 100644 index 0000000..69e60ef --- /dev/null +++ b/website/docs/services/organization/org_group_policy_suggestions/index.md @@ -0,0 +1,151 @@ +--- +title: org_group_policy_suggestions +hide_title: false +hide_table_of_contents: false +keywords: + - org_group_policy_suggestions + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_group_policy_suggestions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the org group policy suggestion. (example: 1a2b3c4d-5e6f-7890-abcd-ef0123456789)
objectAttributes of an org group policy suggestion.
objectRelationships of an org group policy suggestion.
stringOrg group policy suggestions resource type. (org_group_policy_suggestions) (example: org_group_policy_suggestions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[org_group_id]List suggested organization group policies. Requires a filter on org group ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)Filter policies by org group ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List suggested organization group policies. Requires a filter on org group ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.org_group_policy_suggestions +WHERE filter[org_group_id] = '{{ filter[org_group_id] }}' -- required +; +``` + + diff --git a/website/docs/services/organization/org_groups/index.md b/website/docs/services/organization/org_groups/index.md new file mode 100644 index 0000000..fb4f395 --- /dev/null +++ b/website/docs/services/organization/org_groups/index.md @@ -0,0 +1,324 @@ +--- +title: org_groups +hide_title: false +hide_table_of_contents: false +keywords: + - org_groups + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_groups resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group. (example: a1b2c3d4-e5f6-7890-abcd-ef0123456789)
objectAttributes of an org group.
stringOrg groups resource type. (org_groups) (example: org_groups)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group. (example: a1b2c3d4-e5f6-7890-abcd-ef0123456789)
objectAttributes of an org group.
stringOrg groups resource type. (org_groups) (example: org_groups)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
org_group_idGet a specific organization group by its ID.
page[number], page[size], sortList all organization groups that the requesting organization has access to.
dataCreate a new organization group.
org_group_id, dataUpdate the name of an existing organization group.
org_group_idDelete an organization group by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the org group.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The page number to return.
integer (int64)The number of items per page. Maximum is 1000.
stringField to sort org groups by. Supported values: `name`, `uuid`, `-name`, `-uuid`. Defaults to `uuid`.
+ +## `SELECT` examples + + + + +Get a specific organization group by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.org_groups +WHERE org_group_id = '{{ org_group_id }}' -- required +; +``` + + + +List all organization groups that the requesting organization has access to. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.org_groups +WHERE page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new organization group. + +```sql +INSERT INTO datadog.organization.org_groups ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: org_groups + props: + - name: data + description: | + Data for creating an org group. + value: + attributes: + name: "{{ name }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the name of an existing organization group. + +```sql +UPDATE datadog.organization.org_groups +SET +data = '{{ data }}' +WHERE +org_group_id = '{{ org_group_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an organization group by its ID. + +```sql +DELETE FROM datadog.organization.org_groups +WHERE org_group_id = '{{ org_group_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/org_saml_configurations/index.md b/website/docs/services/organization/org_saml_configurations/index.md new file mode 100644 index 0000000..b4e7d28 --- /dev/null +++ b/website/docs/services/organization/org_saml_configurations/index.md @@ -0,0 +1,104 @@ +--- +title: org_saml_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - org_saml_configurations + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an org_saml_configurations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataUpdate the SAML preferences for the current organization.<br /><br />Use this endpoint to set the just-in-time (JIT) provisioning domains and the default role<br />assigned to just-in-time provisioned users.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Update the SAML preferences for the current organization.<br /><br />Use this endpoint to set the just-in-time (JIT) provisioning domains and the default role<br />assigned to just-in-time provisioned users. + +```sql +UPDATE datadog.organization.org_saml_configurations +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required; +``` + + diff --git a/website/docs/services/organization/orgs/index.md b/website/docs/services/organization/orgs/index.md new file mode 100644 index 0000000..7f8d74b --- /dev/null +++ b/website/docs/services/organization/orgs/index.md @@ -0,0 +1,384 @@ +--- +title: orgs +hide_title: false +hide_table_of_contents: false +keywords: + - orgs + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an orgs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the child organization, limited to 32 characters. (example: New child org)
stringThe `public_id` of the organization you are operating within. (example: abcdef12345)
objectA JSON array of billing type.
stringDate of the organization creation. (example: 2019-09-26T17:28:28Z)
stringDescription of the organization. (example: some description)
objectA JSON array of settings.
objectSubscription definition.
booleanOnly available for MSP customers. Allows child organizations to be created on a trial plan.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the current organization. (example: 4dee724d-00cc-11ea-a77b-570c9d03c6c5)
objectRelationships of the managed organizations resource.
stringThe resource type for managed organizations. (managed_orgs) (example: managed_orgs)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
public_idGet organization information.
filter[name]Returns the current organization and its managed organizations in JSON:API format.
nameCreate a child organization.<br /><br />This endpoint requires the<br />[multi-organization account](https:​//docs.datadoghq.com/account_management/multi_organization/)<br />feature and must be enabled by<br />[contacting support](https:​//docs.datadoghq.com/help/).<br /><br />Once a new child organization is created, you can interact with it<br />by using the `org.public_id`, `api_key.key`, and<br />`application_key.hash` provided in the response.
public_idUpdate your organization.
dataDisable the Datadog organization associated with the authenticated user or API key.<br />The request body uses JSON:API format. If `org_uuid` is supplied, it must match<br />the authenticated org or the request is rejected. Successful calls disable the org<br />and return the resulting state from the downstream service. Requires the<br />`org_management` permission.
public_idOnly available for MSP customers. Removes a child organization from the hierarchy of the master organization and places the child organization on a 30-day trial.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `public_id` of the organization you are operating within.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter managed organizations by name. (example: My Child Org)
+ +## `SELECT` examples + + + + +Get organization information. + +```sql +SELECT +name, +public_id, +billing, +created, +description, +settings, +subscription, +trial +FROM datadog.organization.orgs +WHERE public_id = '{{ public_id }}' -- required +; +``` + + + +Returns the current organization and its managed organizations in JSON:API format. + +```sql +SELECT +id, +relationships, +type +FROM datadog.organization.orgs +WHERE filter[name] = '{{ filter[name] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a child organization.<br /><br />This endpoint requires the<br />[multi-organization account](https:​//docs.datadoghq.com/account_management/multi_organization/)<br />feature and must be enabled by<br />[contacting support](https:​//docs.datadoghq.com/help/).<br /><br />Once a new child organization is created, you can interact with it<br />by using the `org.public_id`, `api_key.key`, and<br />`application_key.hash` provided in the response. + +```sql +INSERT INTO datadog.organization.orgs ( +billing, +name, +subscription +) +SELECT +'{{ billing }}', +'{{ name }}' /* required */, +'{{ subscription }}' +RETURNING +api_key, +application_key, +org, +user +; +``` + + + +{`# Description fields are for documentation purposes +- name: orgs + props: + - name: billing + description: | + A JSON array of billing type. + value: + type: "{{ type }}" + - name: name + value: "{{ name }}" + description: | + The name of the new child-organization, limited to 32 characters. + - name: subscription + description: | + Subscription definition. + value: + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update your organization. + +```sql +REPLACE datadog.organization.orgs +SET +billing = '{{ billing }}', +description = '{{ description }}', +name = '{{ name }}', +public_id = '{{ public_id }}', +settings = '{{ settings }}', +subscription = '{{ subscription }}', +trial = {{ trial }} +WHERE +public_id = '{{ public_id }}' --required +RETURNING +org; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Disable the Datadog organization associated with the authenticated user or API key.<br />The request body uses JSON:API format. If `org_uuid` is supplied, it must match<br />the authenticated org or the request is rejected. Successful calls disable the org<br />and return the resulting state from the downstream service. Requires the<br />`org_management` permission. + +```sql +EXEC datadog.organization.orgs.disable_customer_org +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Only available for MSP customers. Removes a child organization from the hierarchy of the master organization and places the child organization on a 30-day trial. + +```sql +EXEC datadog.organization.orgs.downgrade_org +@public_id='{{ public_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/permissions/index.md b/website/docs/services/organization/permissions/index.md index 614f184..5f9780d 100644 --- a/website/docs/services/organization/permissions/index.md +++ b/website/docs/services/organization/permissions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a permissions resource. ## Overview - +
Namepermissions
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Permissions resource type. (default: permissions, example: permissions) + Permissions resource type. (permissions) (default: permissions, example: permissions) @@ -86,7 +87,7 @@ The following methods are available for this resource: - region + Returns a list of all permissions, including name, description, and ID. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -132,7 +133,6 @@ id, attributes, type FROM datadog.organization.permissions -WHERE region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/organization/personal_access_tokens/index.md b/website/docs/services/organization/personal_access_tokens/index.md new file mode 100644 index 0000000..8a4dd91 --- /dev/null +++ b/website/docs/services/organization/personal_access_tokens/index.md @@ -0,0 +1,351 @@ +--- +title: personal_access_tokens +hide_title: false +hide_table_of_contents: false +keywords: + - personal_access_tokens + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a personal_access_tokens resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the access token.
objectAttributes of an access token.
objectResources related to the access token.
stringPersonal access tokens resource type. (personal_access_tokens) (default: personal_access_tokens, example: personal_access_tokens)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the access token.
objectAttributes of an access token.
objectResources related to the access token entry in the mixed list response.
stringResource type returned by the access tokens list endpoint. Includes both personal and service access tokens. (personal_access_tokens, service_access_tokens) (example: personal_access_tokens)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
token_idGet a specific personal access token by its ID.
page[size], page[number], sort, filter, filter[owned_by]List all access tokens for the organization.
dataCreate a personal access token for the current user.
token_id, dataUpdate a specific personal access token.
token_idRevoke a specific personal access token.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the access token.
stringFilter access tokens by the specified string.
arrayFilter access tokens by the owner's ID. Supports multiple values.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
stringAccess token attribute used to sort results. Sort order is ascending by default. In order to specify a descending sort, prefix the attribute with a minus sign.
+ +## `SELECT` examples + + + + +Get a specific personal access token by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.personal_access_tokens +WHERE token_id = '{{ token_id }}' -- required +; +``` + + + +List all access tokens for the organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.personal_access_tokens +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter = '{{ filter }}' +AND filter[owned_by] = '{{ filter[owned_by] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a personal access token for the current user. + +```sql +INSERT INTO datadog.organization.personal_access_tokens ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: personal_access_tokens + props: + - name: data + description: | + Object used to create an access token. + value: + attributes: + expires_at: "{{ expires_at }}" + name: "{{ name }}" + scopes: + - "{{ scopes }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a specific personal access token. + +```sql +UPDATE datadog.organization.personal_access_tokens +SET +data = '{{ data }}' +WHERE +token_id = '{{ token_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Revoke a specific personal access token. + +```sql +DELETE FROM datadog.organization.personal_access_tokens +WHERE token_id = '{{ token_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/projected_cost/index.md b/website/docs/services/organization/projected_cost/index.md index 222489d..ec35c51 100644 --- a/website/docs/services/organization/projected_cost/index.md +++ b/website/docs/services/organization/projected_cost/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a projected_cost resource. ## Overview - +
Nameprojected_cost
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of cost data. (default: projected_cost, example: projected_cost) + Type of cost data. (projected_cost) (default: projected_cost, example: projected_cost) @@ -86,9 +87,9 @@ The following methods are available for this resource: - region + view, include_connected_accounts - Get projected cost across multi-org and single root-org accounts.
Projected cost data is only available for the current month and becomes available around the 12th of the month.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). + Get projected cost across multi-org and single root-org accounts.<br />Projected cost data is only available for the current month and becomes available around the 12th of the month.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). @@ -106,15 +107,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. boolean - Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. + Boolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`. @@ -134,7 +135,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get projected cost across multi-org and single root-org accounts.
Projected cost data is only available for the current month and becomes available around the 12th of the month.

This endpoint is only accessible for [parent-level organizations](https://docs.datadoghq.com/account_management/multi_organization/). +Get projected cost across multi-org and single root-org accounts.<br />Projected cost data is only available for the current month and becomes available around the 12th of the month.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). ```sql SELECT @@ -142,8 +143,7 @@ id, attributes, type FROM datadog.organization.projected_cost -WHERE region = '{{ region }}' -- required -AND view = '{{ view }}' +WHERE view = '{{ view }}' AND include_connected_accounts = '{{ include_connected_accounts }}' ; ``` diff --git a/website/docs/services/organization/restriction_policies/index.md b/website/docs/services/organization/restriction_policies/index.md index e7ccc4f..b1d0864 100644 --- a/website/docs/services/organization/restriction_policies/index.md +++ b/website/docs/services/organization/restriction_policies/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a restriction_policies res ## Overview - +
Namerestriction_policies
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Restriction policy type. (default: restriction_policy, example: restriction_policy) + Restriction policy type. (restriction_policy) (default: restriction_policy, example: restriction_policy) @@ -86,21 +87,21 @@ The following methods are available for this resource: - resource_id, region + resource_id Retrieves the restriction policy associated with a specified resource. - resource_id, region, data__data + resource_id, data allow_self_lockout - Updates the restriction policy associated with a resource.

#### Supported resources
Restriction policies can be applied to the following resources:
- Dashboards: `dashboard`
- Integration Services: `integration-service`
- Integration Webhooks: `integration-webhook`
- Notebooks: `notebook`
- Powerpacks: `powerpack`
- Reference Tables: `reference-table`
- Security Rules: `security-rule`
- Service Level Objectives: `slo`
- Synthetic Global Variables: `synthetics-global-variable`
- Synthetic Tests: `synthetics-test`
- Synthetic Private Locations: `synthetics-private-location`
- Monitors: `monitor`
- Workflows: `workflow`
- App Builder Apps: `app-builder-app`
- Connections: `connection`
- Connection Groups: `connection-group`
- RUM Applications: `rum-application`
- Cross Org Connections: `cross-org-connection`
- Spreadsheets: `spreadsheet`
- On-Call Schedules: `on-call-schedule`
- On-Call Escalation Policies: `on-call-escalation-policy`
- On-Call Team Routing Rules: `on-call-team-routing-rules`

#### Supported relations for resources
Resource Type | Supported Relations
----------------------------|--------------------------
Dashboards | `viewer`, `editor`
Integration Services | `viewer`, `editor`
Integration Webhooks | `viewer`, `editor`
Notebooks | `viewer`, `editor`
Powerpacks | `viewer`, `editor`
Security Rules | `viewer`, `editor`
Service Level Objectives | `viewer`, `editor`
Synthetic Global Variables | `viewer`, `editor`
Synthetic Tests | `viewer`, `editor`
Synthetic Private Locations | `viewer`, `editor`
Monitors | `viewer`, `editor`
Reference Tables | `viewer`, `editor`
Workflows | `viewer`, `runner`, `editor`
App Builder Apps | `viewer`, `editor`
Connections | `viewer`, `resolver`, `editor`
Connection Groups | `viewer`, `editor`
RUM Application | `viewer`, `editor`
Cross Org Connections | `viewer`, `editor`
Spreadsheets | `viewer`, `editor`
On-Call Schedules | `viewer`, `overrider`, `editor`
On-Call Escalation Policies | `viewer`, `editor`
On-Call Team Routing Rules | `viewer`, `editor` + Updates the restriction policy associated with a resource.<br /><br />#### Supported resources<br />Restriction policies can be applied to the following resources:<br />- Dashboards: `dashboard`<br />- Integration Services: `integration-service`<br />- Integration Webhooks: `integration-webhook`<br />- Notebooks: `notebook`<br />- Powerpacks: `powerpack`<br />- Reference Tables: `reference-table`<br />- Security Rules: `security-rule`<br />- Service Level Objectives: `slo`<br />- Synthetic Global Variables: `synthetics-global-variable`<br />- Synthetic Tests: `synthetics-test`<br />- Synthetic Private Locations: `synthetics-private-location`<br />- Monitors: `monitor`<br />- Workflows: `workflow`<br />- App Builder Apps: `app-builder-app`<br />- Connections: `connection`<br />- Connection Groups: `connection-group`<br />- RUM Applications: `rum-application`<br />- Cross Org Connections: `cross-org-connection`<br />- Spreadsheets: `spreadsheet`<br />- On-Call Schedules: `on-call-schedule`<br />- On-Call Escalation Policies: `on-call-escalation-policy`<br />- On-Call Team Routing Rules: `on-call-team-routing-rules`<br />- Logs Pipelines: `logs-pipeline`<br />- Case Management Projects: `case-management-project`<br />- Monitor Notification Rules: `monitor-notification-rule`<br />- Status Pages: `status-page`<br />- Feature Flags: `feature-flag`<br /><br />#### Supported relations for resources<br />Resource Type | Supported Relations<br />----------------------------|--------------------------<br />Dashboards | `viewer`, `editor`<br />Integration Services | `viewer`, `editor`<br />Integration Webhooks | `viewer`, `editor`<br />Notebooks | `viewer`, `editor`<br />Powerpacks | `viewer`, `editor`<br />Security Rules | `viewer`, `editor`<br />Service Level Objectives | `viewer`, `editor`<br />Synthetic Global Variables | `viewer`, `editor`<br />Synthetic Tests | `viewer`, `editor`<br />Synthetic Private Locations | `viewer`, `editor`<br />Monitors | `viewer`, `editor`<br />Reference Tables | `viewer`, `editor`<br />Workflows | `viewer`, `runner`, `editor`<br />App Builder Apps | `viewer`, `editor`<br />Connections | `viewer`, `resolver`, `editor`<br />Connection Groups | `viewer`, `editor`<br />RUM Application | `viewer`, `editor`<br />Cross Org Connections | `viewer`, `editor`<br />Spreadsheets | `viewer`, `editor`<br />On-Call Schedules | `viewer`, `overrider`, `editor`<br />On-Call Escalation Policies | `viewer`, `editor`<br />On-Call Team Routing Rules | `viewer`, `editor`<br />Logs Pipelines | `viewer`, `processors_editor`, `editor`<br />Case Management Projects | `viewer`, `contributor`, `manager`<br />Monitor Notification Rules | `viewer`, `editor`<br />Status Pages | `viewer`, `responder`, `manager`<br />Feature Flags | `viewer`, `contributor`, `editor` - resource_id, region + resource_id Deletes the restriction policy associated with a specified resource. @@ -120,15 +121,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string - Identifier, formatted as `type:id`. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, `reference-table`, `security-rule`, `slo`, `workflow`, `app-builder-app`, `connection`, `connection-group`, `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, `on-call-escalation-policy`, `on-call-team-routing-rules. (example: dashboard:abc-def-ghi) + Identifier, formatted as `type:id`. Supported types: `dashboard`, `integration-service`, `integration-webhook`, `notebook`, `powerpack`, `reference-table`, `security-rule`, `slo`, `synthetics-global-variable`, `synthetics-test`, `synthetics-private-location`, `monitor`, `workflow`, `app-builder-app`, `connection`, `connection-group`, `rum-application`, `cross-org-connection`, `spreadsheet`, `on-call-schedule`, `on-call-escalation-policy`, `on-call-team-routing-rules`, `logs-pipeline`, `case-management-project`, `monitor-notification-rule`, `status-page`, `feature-flag`. (example: dashboard:abc-def-ghi) + + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -157,7 +158,6 @@ attributes, type FROM datadog.organization.restriction_policies WHERE resource_id = '{{ resource_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -174,16 +174,15 @@ AND region = '{{ region }}' -- required > -Updates the restriction policy associated with a resource.

#### Supported resources
Restriction policies can be applied to the following resources:
- Dashboards: `dashboard`
- Integration Services: `integration-service`
- Integration Webhooks: `integration-webhook`
- Notebooks: `notebook`
- Powerpacks: `powerpack`
- Reference Tables: `reference-table`
- Security Rules: `security-rule`
- Service Level Objectives: `slo`
- Synthetic Global Variables: `synthetics-global-variable`
- Synthetic Tests: `synthetics-test`
- Synthetic Private Locations: `synthetics-private-location`
- Monitors: `monitor`
- Workflows: `workflow`
- App Builder Apps: `app-builder-app`
- Connections: `connection`
- Connection Groups: `connection-group`
- RUM Applications: `rum-application`
- Cross Org Connections: `cross-org-connection`
- Spreadsheets: `spreadsheet`
- On-Call Schedules: `on-call-schedule`
- On-Call Escalation Policies: `on-call-escalation-policy`
- On-Call Team Routing Rules: `on-call-team-routing-rules`

#### Supported relations for resources
Resource Type | Supported Relations
----------------------------|--------------------------
Dashboards | `viewer`, `editor`
Integration Services | `viewer`, `editor`
Integration Webhooks | `viewer`, `editor`
Notebooks | `viewer`, `editor`
Powerpacks | `viewer`, `editor`
Security Rules | `viewer`, `editor`
Service Level Objectives | `viewer`, `editor`
Synthetic Global Variables | `viewer`, `editor`
Synthetic Tests | `viewer`, `editor`
Synthetic Private Locations | `viewer`, `editor`
Monitors | `viewer`, `editor`
Reference Tables | `viewer`, `editor`
Workflows | `viewer`, `runner`, `editor`
App Builder Apps | `viewer`, `editor`
Connections | `viewer`, `resolver`, `editor`
Connection Groups | `viewer`, `editor`
RUM Application | `viewer`, `editor`
Cross Org Connections | `viewer`, `editor`
Spreadsheets | `viewer`, `editor`
On-Call Schedules | `viewer`, `overrider`, `editor`
On-Call Escalation Policies | `viewer`, `editor`
On-Call Team Routing Rules | `viewer`, `editor` +Updates the restriction policy associated with a resource.<br /><br />#### Supported resources<br />Restriction policies can be applied to the following resources:<br />- Dashboards: `dashboard`<br />- Integration Services: `integration-service`<br />- Integration Webhooks: `integration-webhook`<br />- Notebooks: `notebook`<br />- Powerpacks: `powerpack`<br />- Reference Tables: `reference-table`<br />- Security Rules: `security-rule`<br />- Service Level Objectives: `slo`<br />- Synthetic Global Variables: `synthetics-global-variable`<br />- Synthetic Tests: `synthetics-test`<br />- Synthetic Private Locations: `synthetics-private-location`<br />- Monitors: `monitor`<br />- Workflows: `workflow`<br />- App Builder Apps: `app-builder-app`<br />- Connections: `connection`<br />- Connection Groups: `connection-group`<br />- RUM Applications: `rum-application`<br />- Cross Org Connections: `cross-org-connection`<br />- Spreadsheets: `spreadsheet`<br />- On-Call Schedules: `on-call-schedule`<br />- On-Call Escalation Policies: `on-call-escalation-policy`<br />- On-Call Team Routing Rules: `on-call-team-routing-rules`<br />- Logs Pipelines: `logs-pipeline`<br />- Case Management Projects: `case-management-project`<br />- Monitor Notification Rules: `monitor-notification-rule`<br />- Status Pages: `status-page`<br />- Feature Flags: `feature-flag`<br /><br />#### Supported relations for resources<br />Resource Type | Supported Relations<br />----------------------------|--------------------------<br />Dashboards | `viewer`, `editor`<br />Integration Services | `viewer`, `editor`<br />Integration Webhooks | `viewer`, `editor`<br />Notebooks | `viewer`, `editor`<br />Powerpacks | `viewer`, `editor`<br />Security Rules | `viewer`, `editor`<br />Service Level Objectives | `viewer`, `editor`<br />Synthetic Global Variables | `viewer`, `editor`<br />Synthetic Tests | `viewer`, `editor`<br />Synthetic Private Locations | `viewer`, `editor`<br />Monitors | `viewer`, `editor`<br />Reference Tables | `viewer`, `editor`<br />Workflows | `viewer`, `runner`, `editor`<br />App Builder Apps | `viewer`, `editor`<br />Connections | `viewer`, `resolver`, `editor`<br />Connection Groups | `viewer`, `editor`<br />RUM Application | `viewer`, `editor`<br />Cross Org Connections | `viewer`, `editor`<br />Spreadsheets | `viewer`, `editor`<br />On-Call Schedules | `viewer`, `overrider`, `editor`<br />On-Call Escalation Policies | `viewer`, `editor`<br />On-Call Team Routing Rules | `viewer`, `editor`<br />Logs Pipelines | `viewer`, `processors_editor`, `editor`<br />Case Management Projects | `viewer`, `contributor`, `manager`<br />Monitor Notification Rules | `viewer`, `editor`<br />Status Pages | `viewer`, `responder`, `manager`<br />Feature Flags | `viewer`, `contributor`, `editor` ```sql REPLACE datadog.organization.restriction_policies SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE resource_id = '{{ resource_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND allow_self_lockout = {{ allow_self_lockout}} RETURNING data; @@ -207,7 +206,6 @@ Deletes the restriction policy associated with a specified resource. ```sql DELETE FROM datadog.organization.restriction_policies WHERE resource_id = '{{ resource_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/organization/role_permissions/index.md b/website/docs/services/organization/role_permissions/index.md index 4626ab4..ab746ed 100644 --- a/website/docs/services/organization/role_permissions/index.md +++ b/website/docs/services/organization/role_permissions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a role_permissions resourc ## Overview - +
Namerole_permissions
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Permissions resource type. (default: permissions, example: permissions) + Permissions resource type. (permissions) (default: permissions, example: permissions) @@ -86,31 +87,24 @@ The following methods are available for this resource: - role_id, region + role_id Returns a list of all permissions for a single role. - role_id, region + role_id Adds a permission to a role. - role_id, region + role_id Removes a permission from a role. - - - - role_id, region - - Removes a user from a role. - @@ -127,16 +121,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The unique identifier of the role. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -159,7 +153,6 @@ attributes, type FROM datadog.organization.role_permissions WHERE role_id = '{{ role_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -181,14 +174,12 @@ Adds a permission to a role. ```sql INSERT INTO datadog.organization.role_permissions ( -data__data, -role_id, -region +data, +role_id ) SELECT '{{ data }}', -'{{ role_id }}', -'{{ region }}' +'{{ role_id }}' RETURNING data ; @@ -196,21 +187,20 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: role_permissions props: - name: role_id - value: string - description: Required parameter for the role_permissions resource. - - name: region - value: string + value: "{{ role_id }}" description: Required parameter for the role_permissions resource. - name: data - value: object description: | Relationship to permission object. -``` + value: + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -220,8 +210,7 @@ data @@ -231,18 +220,6 @@ Removes a permission from a role. ```sql DELETE FROM datadog.organization.role_permissions WHERE role_id = '{{ role_id }}' --required -AND region = '{{ region }}' --required -; -``` - - - -Removes a user from a role. - -```sql -DELETE FROM datadog.organization.role_permissions -WHERE role_id = '{{ role_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/role_templates/index.md b/website/docs/services/organization/role_templates/index.md new file mode 100644 index 0000000..18a3a4f --- /dev/null +++ b/website/docs/services/organization/role_templates/index.md @@ -0,0 +1,139 @@ +--- +title: role_templates +hide_title: false +hide_table_of_contents: false +keywords: + - role_templates + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a role_templates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe `RoleTemplateData` `id`.
objectThe definition of `RoleTemplateDataAttributes` object.
stringRoles resource type. (roles) (default: roles, example: roles)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all role templates
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all role templates + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.role_templates +; +``` + + diff --git a/website/docs/services/organization/role_users/index.md b/website/docs/services/organization/role_users/index.md index 5843865..70a4686 100644 --- a/website/docs/services/organization/role_users/index.md +++ b/website/docs/services/organization/role_users/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a role_users resource. ## Overview - +
Namerole_users
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Users resource type. (default: users, example: users) + Users resource type. (users) (default: users, example: users) @@ -91,17 +92,24 @@ The following methods are available for this resource: - role_id, region + role_id page[size], page[number], sort, filter Gets all users of a role. - role_id, region, data__data + role_id, data Adds a user to a role. + + + + role_id + + Removes a user from a role. + @@ -118,16 +126,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The unique identifier of the role. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string @@ -141,7 +149,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -171,7 +179,6 @@ relationships, type FROM datadog.organization.role_users WHERE role_id = '{{ role_id }}' -- required -AND region = '{{ region }}' -- required AND page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' @@ -197,14 +204,12 @@ Adds a user to a role. ```sql INSERT INTO datadog.organization.role_users ( -data__data, -role_id, -region +data, +role_id ) SELECT '{{ data }}' /* required */, -'{{ role_id }}', -'{{ region }}' +'{{ role_id }}' RETURNING data, included, @@ -214,20 +219,40 @@ meta -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: role_users props: - name: role_id - value: string - description: Required parameter for the role_users resource. - - name: region - value: string + value: "{{ role_id }}" description: Required parameter for the role_users resource. - name: data - value: object description: | Relationship to user object. + value: + id: "{{ id }}" + type: "{{ type }}" +`} + + +
+ + +## `DELETE` examples + + + + +Removes a user from a role. + +```sql +DELETE FROM datadog.organization.role_users +WHERE role_id = '{{ role_id }}' --required +; ``` diff --git a/website/docs/services/organization/roles/index.md b/website/docs/services/organization/roles/index.md index dcd9c19..ba1735e 100644 --- a/website/docs/services/organization/roles/index.md +++ b/website/docs/services/organization/roles/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a roles resource. ## Overview - +
Nameroles
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Roles type. (default: roles, example: roles) + Roles type. (roles) (default: roles, example: roles) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Roles type. (default: roles, example: roles) + Roles type. (roles) (default: roles, example: roles) @@ -126,42 +127,42 @@ The following methods are available for this resource: - role_id, region + role_id Get a role in the organization specified by the role’s `role_id`. - region + page[size], page[number], sort, filter, filter[id] Returns all roles, including their names and their unique identifiers. - region, data__data + data - Create a new role for your organization. + Create a new role for your organization.<br /><br />The following read permissions are automatically added to every new role, even if they are not included in the request:<br /><br />- Dashboards Read<br />- Notebooks Read<br />- Monitors Read<br />- APM Read<br />- Vulnerability Management Read<br />- RUM Apps Read<br />- Incidents Read<br />- SLOs Read<br />- CI Visibility Read<br />- CD Visibility Read - role_id, region, data__data + role_id, data Edit a role. Can only be used with application keys belonging to administrators. - role_id, region + role_id Disables a role. - role_id, region, data + role_id, data Clone an existing role @@ -181,16 +182,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The unique identifier of the role. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string @@ -209,7 +210,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -240,7 +241,6 @@ relationships, type FROM datadog.organization.roles WHERE role_id = '{{ role_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -255,8 +255,7 @@ attributes, relationships, type FROM datadog.organization.roles -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter = '{{ filter }}' @@ -278,16 +277,14 @@ AND filter[id] = '{{ filter[id] }}' > -Create a new role for your organization. +Create a new role for your organization.<br /><br />The following read permissions are automatically added to every new role, even if they are not included in the request:<br /><br />- Dashboards Read<br />- Notebooks Read<br />- Monitors Read<br />- APM Read<br />- Vulnerability Management Read<br />- RUM Apps Read<br />- Incidents Read<br />- SLOs Read<br />- CI Visibility Read<br />- CD Visibility Read ```sql INSERT INTO datadog.organization.roles ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -295,18 +292,27 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: roles props: - - name: region - value: string - description: Required parameter for the roles resource. - name: data - value: object description: | Data related to the creation of a role. -``` + value: + attributes: + created_at: "{{ created_at }}" + modified_at: "{{ modified_at }}" + name: "{{ name }}" + receives_permissions_from: + - "{{ receives_permissions_from }}" + relationships: + permissions: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -326,11 +332,10 @@ Edit a role. Can only be used with application keys belonging to administrators. ```sql UPDATE datadog.organization.roles SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE role_id = '{{ role_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -353,7 +358,6 @@ Disables a role. ```sql DELETE FROM datadog.organization.roles WHERE role_id = '{{ role_id }}' --required -AND region = '{{ region }}' --required ; ``` @@ -362,6 +366,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + saml_configurations
resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the SAML configuration. (example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d)
objectAttributes of a SAML configuration.
objectRelationships of a SAML configuration.
stringSAML configurations resource type. (saml_configurations) (default: saml_configurations, example: saml_configurations)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the SAML configuration. (example: 3653d3c6-0c75-11ea-ad28-fb5701eabc7d)
objectAttributes of a SAML configuration.
objectRelationships of a SAML configuration.
stringSAML configurations resource type. (saml_configurations) (default: saml_configurations, example: saml_configurations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
saml_config_uuidGet a single SAML configuration for the current organization by its UUID.
Get the list of SAML configurations for the current organization. An organization has at most one SAML configuration.
saml_config_uuid, dataUpdate a single SAML configuration for the current organization.<br /><br />Use this endpoint to enable or disable identity-provider-initiated login, set the<br />just-in-time provisioning domains, and set the default role assigned to<br />just-in-time provisioned users. A default role is required to enable just-in-time provisioning.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the SAML configuration.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a single SAML configuration for the current organization by its UUID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.saml_configurations +WHERE saml_config_uuid = '{{ saml_config_uuid }}' -- required +; +``` + + + +Get the list of SAML configurations for the current organization. An organization has at most one SAML configuration. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.saml_configurations +; +``` + + + + +## `UPDATE` examples + + + + +Update a single SAML configuration for the current organization.<br /><br />Use this endpoint to enable or disable identity-provider-initiated login, set the<br />just-in-time provisioning domains, and set the default role assigned to<br />just-in-time provisioned users. A default role is required to enable just-in-time provisioning. + +```sql +UPDATE datadog.organization.saml_configurations +SET +data = '{{ data }}' +WHERE +saml_config_uuid = '{{ saml_config_uuid }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/organization/seat_assignments/index.md b/website/docs/services/organization/seat_assignments/index.md new file mode 100644 index 0000000..bca880c --- /dev/null +++ b/website/docs/services/organization/seat_assignments/index.md @@ -0,0 +1,236 @@ +--- +title: seat_assignments +hide_title: false +hide_table_of_contents: false +keywords: + - seat_assignments + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a seat_assignments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the seat user. (example: 00000000-0000-0000-0000-000000000000)
objectThe attributes of the seat user.
stringSeat users resource type. (seat-users) (default: seat-users, example: seat-users)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
product_codepage[limit], page[cursor]Get the list of users assigned seats for a product code.
Assign seats to users for a product code.
Unassign seats from users for a product code.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe product code for which to retrieve seat users.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringCursor for pagination.
integer (int64)Maximum number of results to return.
+ +## `SELECT` examples + + + + +Get the list of users assigned seats for a product code. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.seat_assignments +WHERE product_code = '{{ product_code }}' -- required +AND page[limit] = '{{ page[limit] }}' +AND page[cursor] = '{{ page[cursor] }}' +; +``` + + + + +## `INSERT` examples + + + + +Assign seats to users for a product code. + +```sql +INSERT INTO datadog.organization.seat_assignments ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: seat_assignments + props: + - name: data + description: | + The data for the assign seats user request. + value: + attributes: + product_code: "{{ product_code }}" + user_uuids: + - "{{ user_uuids }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Unassign seats from users for a product code. + +```sql +DELETE FROM datadog.organization.seat_assignments +; +``` + + diff --git a/website/docs/services/organization/service_account_access_tokens/index.md b/website/docs/services/organization/service_account_access_tokens/index.md new file mode 100644 index 0000000..7f63c51 --- /dev/null +++ b/website/docs/services/organization/service_account_access_tokens/index.md @@ -0,0 +1,359 @@ +--- +title: service_account_access_tokens +hide_title: false +hide_table_of_contents: false +keywords: + - service_account_access_tokens + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a service_account_access_tokens resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the access token.
objectAttributes of an access token.
objectResources related to the access token.
stringService access tokens resource type. (service_access_tokens) (default: service_access_tokens, example: service_access_tokens)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the access token.
objectAttributes of an access token.
objectResources related to the access token.
stringService access tokens resource type. (service_access_tokens) (default: service_access_tokens, example: service_access_tokens)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
service_account_id, token_idGet a specific access token for a service account by its ID.
service_account_idpage[size], page[number], sort, filterList all access tokens for a specific service account.
service_account_id, dataCreate an access token for a service account.
service_account_id, token_id, dataUpdate a specific access token for a service account.
service_account_id, token_idRevoke a specific access token for a service account.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the service account.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the access token.
stringFilter access tokens by the specified string.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
stringAccess token attribute used to sort results. Sort order is ascending by default. In order to specify a descending sort, prefix the attribute with a minus sign.
+ +## `SELECT` examples + + + + +Get a specific access token for a service account by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.service_account_access_tokens +WHERE service_account_id = '{{ service_account_id }}' -- required +AND token_id = '{{ token_id }}' -- required +; +``` + + + +List all access tokens for a specific service account. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.service_account_access_tokens +WHERE service_account_id = '{{ service_account_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter = '{{ filter }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an access token for a service account. + +```sql +INSERT INTO datadog.organization.service_account_access_tokens ( +data, +service_account_id +) +SELECT +'{{ data }}' /* required */, +'{{ service_account_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: service_account_access_tokens + props: + - name: service_account_id + value: "{{ service_account_id }}" + description: Required parameter for the service_account_access_tokens resource. + - name: data + description: | + Object used to create a service account access token. + value: + attributes: + expires_at: "{{ expires_at }}" + name: "{{ name }}" + scopes: + - "{{ scopes }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a specific access token for a service account. + +```sql +UPDATE datadog.organization.service_account_access_tokens +SET +data = '{{ data }}' +WHERE +service_account_id = '{{ service_account_id }}' --required +AND token_id = '{{ token_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Revoke a specific access token for a service account. + +```sql +DELETE FROM datadog.organization.service_account_access_tokens +WHERE service_account_id = '{{ service_account_id }}' --required +AND token_id = '{{ token_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/service_account_keys/index.md b/website/docs/services/organization/service_account_keys/index.md index 49e7402..059cb97 100644 --- a/website/docs/services/organization/service_account_keys/index.md +++ b/website/docs/services/organization/service_account_keys/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a service_account_keys res ## Overview - +
Nameservice_account_keys
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Application Keys resource type. (default: application_keys, example: application_keys) + Application Keys resource type. (application_keys) (default: application_keys, example: application_keys) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Application Keys resource type. (default: application_keys, example: application_keys) + Application Keys resource type. (application_keys) (default: application_keys, example: application_keys) @@ -126,35 +127,35 @@ The following methods are available for this resource: - service_account_id, app_key_id, region + service_account_id, app_key_id Get an application key owned by this service account. - service_account_id, region + service_account_id page[size], page[number], sort, filter, filter[created_at][start], filter[created_at][end] List all application keys available for this service account. - service_account_id, region, data__data + service_account_id, data Create an application key for this service account. - service_account_id, app_key_id, region, data__data + service_account_id, app_key_id, data Edit an application key owned by this service account. - service_account_id, app_key_id, region + service_account_id, app_key_id Delete an application key owned by this service account. @@ -179,16 +180,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the application key. - - - string - (default: datadoghq.com) - string The ID of the service account. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string @@ -212,7 +213,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -244,7 +245,6 @@ type FROM datadog.organization.service_account_keys WHERE service_account_id = '{{ service_account_id }}' -- required AND app_key_id = '{{ app_key_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -260,7 +260,6 @@ relationships, type FROM datadog.organization.service_account_keys WHERE service_account_id = '{{ service_account_id }}' -- required -AND region = '{{ region }}' -- required AND page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' @@ -288,14 +287,12 @@ Create an application key for this service account. ```sql INSERT INTO datadog.organization.service_account_keys ( -data__data, -service_account_id, -region +data, +service_account_id ) SELECT '{{ data }}' /* required */, -'{{ service_account_id }}', -'{{ region }}' +'{{ service_account_id }}' RETURNING data, included @@ -304,21 +301,23 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: service_account_keys props: - name: service_account_id - value: string - description: Required parameter for the service_account_keys resource. - - name: region - value: string + value: "{{ service_account_id }}" description: Required parameter for the service_account_keys resource. - name: data - value: object description: | Object used to create an application key. -``` + value: + attributes: + name: "{{ name }}" + scopes: + - "{{ scopes }}" + type: "{{ type }}" +`} + @@ -338,12 +337,11 @@ Edit an application key owned by this service account. ```sql UPDATE datadog.organization.service_account_keys SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE service_account_id = '{{ service_account_id }}' --required AND app_key_id = '{{ app_key_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -368,7 +366,6 @@ Delete an application key owned by this service account. DELETE FROM datadog.organization.service_account_keys WHERE service_account_id = '{{ service_account_id }}' --required AND app_key_id = '{{ app_key_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/service_accounts/index.md b/website/docs/services/organization/service_accounts/index.md index f518908..db739c9 100644 --- a/website/docs/services/organization/service_accounts/index.md +++ b/website/docs/services/organization/service_accounts/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a service_accounts resourc ## Overview - +
Nameservice_accounts
Name
TypeResource
Id
@@ -52,7 +53,7 @@ The following methods are available for this resource: - region, data__data + data Create a service account for your organization. @@ -72,10 +73,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -95,12 +96,10 @@ Create a service account for your organization. ```sql INSERT INTO datadog.organization.service_accounts ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -109,17 +108,25 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: service_accounts props: - - name: region - value: string - description: Required parameter for the service_accounts resource. - name: data - value: object description: | Object to create a service account User. -``` + value: + attributes: + email: "{{ email }}" + name: "{{ name }}" + service_account: {{ service_account }} + title: "{{ title }}" + relationships: + roles: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + diff --git a/website/docs/services/organization/team_connections/index.md b/website/docs/services/organization/team_connections/index.md new file mode 100644 index 0000000..fa1affa --- /dev/null +++ b/website/docs/services/organization/team_connections/index.md @@ -0,0 +1,268 @@ +--- +title: team_connections +hide_title: false +hide_table_of_contents: false +keywords: + - team_connections + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_connections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the team connection. (example: 12345678-1234-5678-9abc-123456789012)
objectAttributes of the team connection.
objectRelationships of the team connection.
stringTeam connection resource type. (team_connection) (default: team_connection, example: team_connection)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page[size], page[number], filter[sources], filter[team_ids], filter[connected_team_ids], filter[connection_ids]Returns all team connections.
dataCreate multiple team connections.
Delete multiple team connections.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayFilter team connections by connected team IDs from external systems.
arrayFilter team connections by connection IDs.
arrayFilter team connections by external source systems.
arrayFilter team connections by Datadog team IDs.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Returns all team connections. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.team_connections +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND filter[sources] = '{{ filter[sources] }}' +AND filter[team_ids] = '{{ filter[team_ids] }}' +AND filter[connected_team_ids] = '{{ filter[connected_team_ids] }}' +AND filter[connection_ids] = '{{ filter[connection_ids] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create multiple team connections. + +```sql +INSERT INTO datadog.organization.team_connections ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +meta +; +``` + + + +{`# Description fields are for documentation purposes +- name: team_connections + props: + - name: data + description: | + Array of team connections to create. + value: + - attributes: + managed_by: "{{ managed_by }}" + source: "{{ source }}" + relationships: + connected_team: + data: + id: "{{ id }}" + type: "{{ type }}" + team: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete multiple team connections. + +```sql +DELETE FROM datadog.organization.team_connections +; +``` + + diff --git a/website/docs/services/organization/team_hierarchy_links/index.md b/website/docs/services/organization/team_hierarchy_links/index.md new file mode 100644 index 0000000..778e486 --- /dev/null +++ b/website/docs/services/organization/team_hierarchy_links/index.md @@ -0,0 +1,318 @@ +--- +title: team_hierarchy_links +hide_title: false +hide_table_of_contents: false +keywords: + - team_hierarchy_links + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_hierarchy_links resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe team hierarchy link's identifier (example: b8626d7e-cedd-11eb-abf5-da7ad0900001)
objectTeam hierarchy link attributes
objectTeam hierarchy link relationships
stringTeam hierarchy link type (team_hierarchy_links) (default: team_hierarchy_links, example: team_hierarchy_links)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe team hierarchy link's identifier (example: b8626d7e-cedd-11eb-abf5-da7ad0900001)
objectTeam hierarchy link attributes
objectTeam hierarchy link relationships
stringTeam hierarchy link type (team_hierarchy_links) (default: team_hierarchy_links, example: team_hierarchy_links)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
link_idGet a single team hierarchy link for the given link_id.
page[number], page[size], filter[parent_team], filter[sub_team]List all team hierarchy links that match the provided filters.
dataCreate a new team hierarchy link between a parent team and a sub team.
link_idRemove a team hierarchy link by the given link_id.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter by parent team ID
stringFilter by sub team ID
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a single team hierarchy link for the given link_id. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.team_hierarchy_links +WHERE link_id = '{{ link_id }}' -- required +; +``` + + + +List all team hierarchy links that match the provided filters. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.team_hierarchy_links +WHERE page[number] = '{{ page[number] }}' +AND page[size] = '{{ page[size] }}' +AND filter[parent_team] = '{{ filter[parent_team] }}' +AND filter[sub_team] = '{{ filter[sub_team] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new team hierarchy link between a parent team and a sub team. + +```sql +INSERT INTO datadog.organization.team_hierarchy_links ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included, +links +; +``` + + + +{`# Description fields are for documentation purposes +- name: team_hierarchy_links + props: + - name: data + description: | + Data provided when creating a team hierarchy link + value: + relationships: + parent_team: + data: + id: "{{ id }}" + type: "{{ type }}" + sub_team: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Remove a team hierarchy link by the given link_id. + +```sql +DELETE FROM datadog.organization.team_hierarchy_links +WHERE link_id = '{{ link_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/team_links/index.md b/website/docs/services/organization/team_links/index.md index 9411ad0..8d34ede 100644 --- a/website/docs/services/organization/team_links/index.md +++ b/website/docs/services/organization/team_links/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a team_links resource. ## Overview - +
Nameteam_links
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Team link type (default: team_links, example: team_links) + Team link type (team_links) (default: team_links, example: team_links) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Team link type (default: team_links, example: team_links) + Team link type (team_links) (default: team_links, example: team_links) @@ -116,35 +117,35 @@ The following methods are available for this resource: - team_id, link_id, region + team_id, link_id Get a single link for a team. - team_id, region + team_id Get all links for a given team. - team_id, region, data__data + team_id, data Add a new link to a team. - team_id, link_id, region, data__data + team_id, link_id, data Update a team link. - team_id, link_id, region + team_id, link_id Remove a link from a team. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string None - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -203,7 +204,6 @@ type FROM datadog.organization.team_links WHERE team_id = '{{ team_id }}' -- required AND link_id = '{{ link_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -218,7 +218,6 @@ attributes, type FROM datadog.organization.team_links WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -240,14 +239,12 @@ Add a new link to a team. ```sql INSERT INTO datadog.organization.team_links ( -data__data, -team_id, -region +data, +team_id ) SELECT '{{ data }}' /* required */, -'{{ team_id }}', -'{{ region }}' +'{{ team_id }}' RETURNING data ; @@ -255,21 +252,24 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: team_links props: - name: team_id - value: string - description: Required parameter for the team_links resource. - - name: region - value: string + value: "{{ team_id }}" description: Required parameter for the team_links resource. - name: data - value: object description: | Team link create -``` + value: + attributes: + label: "{{ label }}" + position: {{ position }} + team_id: "{{ team_id }}" + url: "{{ url }}" + type: "{{ type }}" +`} + @@ -289,12 +289,11 @@ Update a team link. ```sql UPDATE datadog.organization.team_links SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE team_id = '{{ team_id }}' --required AND link_id = '{{ link_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -318,7 +317,6 @@ Remove a link from a team. DELETE FROM datadog.organization.team_links WHERE team_id = '{{ team_id }}' --required AND link_id = '{{ link_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/team_members/index.md b/website/docs/services/organization/team_members/index.md deleted file mode 100644 index 135fd63..0000000 --- a/website/docs/services/organization/team_members/index.md +++ /dev/null @@ -1,258 +0,0 @@ ---- -title: team_members -hide_title: false -hide_table_of_contents: false -keywords: - - team_members - - organization - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists a team_members resource. - -## Overview - - - - -
Nameteam_members
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe team's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectTeam attributes
objectResources related to a team
stringTeam type (default: team, example: team)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
super_team_id, regionpage[size], page[number], fields[team]Get all member teams.
super_team_id, region, data__dataAdd a member team.
Adds the team given by the `id` in the body as a member team of the super team.
super_team_id, member_team_id, regionRemove a super team's member team identified by `member_team_id`.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringNone
string(default: datadoghq.com)
stringNone
arrayList of fields that need to be fetched.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
- -## `SELECT` examples - - - - -Get all member teams. - -```sql -SELECT -id, -attributes, -relationships, -type -FROM datadog.organization.team_members -WHERE super_team_id = '{{ super_team_id }}' -- required -AND region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' -AND page[number] = '{{ page[number] }}' -AND fields[team] = '{{ fields[team] }}' -; -``` - - - - -## `INSERT` examples - - - - -Add a member team.
Adds the team given by the `id` in the body as a member team of the super team. - -```sql -INSERT INTO datadog.organization.team_members ( -data__data, -super_team_id, -region -) -SELECT -'{{ data }}' /* required */, -'{{ super_team_id }}', -'{{ region }}' -; -``` -
- - -```yaml -# Description fields are for documentation purposes -- name: team_members - props: - - name: super_team_id - value: string - description: Required parameter for the team_members resource. - - name: region - value: string - description: Required parameter for the team_members resource. - - name: data - value: object - description: | - A member team -``` - -
- - -## `DELETE` examples - - - - -Remove a super team's member team identified by `member_team_id`. - -```sql -DELETE FROM datadog.organization.team_members -WHERE super_team_id = '{{ super_team_id }}' --required -AND member_team_id = '{{ member_team_id }}' --required -AND region = '{{ region }}' --required -; -``` - - diff --git a/website/docs/services/organization/team_memberships/index.md b/website/docs/services/organization/team_memberships/index.md index 5173be8..816f000 100644 --- a/website/docs/services/organization/team_memberships/index.md +++ b/website/docs/services/organization/team_memberships/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a team_memberships resourc ## Overview - +
Nameteam_memberships
Name
TypeResource
Id
@@ -68,7 +69,7 @@ Represents a user's association to a team string - Team membership type (default: team_memberships, example: team_memberships) + Team membership type (team_memberships) (default: team_memberships, example: team_memberships) @@ -93,30 +94,30 @@ The following methods are available for this resource: - team_id, region + team_id page[size], page[number], sort, filter[keyword] Get a paginated list of members for a team - team_id, region, data__data + team_id, data - Add a user to a team. + Add a user to a team.<br /><br />**Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https:​//docs.datadoghq.com/account_management/teams/manage/#team-membership). - team_id, user_id, region, data__data + team_id, user_id, data - Update a user's membership attributes on a team. + Update a user's membership attributes on a team.<br /><br />**Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https:​//docs.datadoghq.com/account_management/teams/manage/#team-membership). - team_id, user_id, region + team_id, user_id - Remove a user from a team. + Remove a user from a team.<br /><br />**Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https:​//docs.datadoghq.com/account_management/teams/manage/#team-membership). @@ -134,10 +135,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -162,7 +163,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -192,7 +193,6 @@ relationships, type FROM datadog.organization.team_memberships WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required AND page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' @@ -214,18 +214,16 @@ AND filter[keyword] = '{{ filter[keyword] }}' > -Add a user to a team. +Add a user to a team.<br /><br />**Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https:​//docs.datadoghq.com/account_management/teams/manage/#team-membership). ```sql INSERT INTO datadog.organization.team_memberships ( -data__data, -team_id, -region +data, +team_id ) SELECT '{{ data }}' /* required */, -'{{ team_id }}', -'{{ region }}' +'{{ team_id }}' RETURNING data, included @@ -234,21 +232,32 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: team_memberships props: - name: team_id - value: string - description: Required parameter for the team_memberships resource. - - name: region - value: string + value: "{{ team_id }}" description: Required parameter for the team_memberships resource. - name: data - value: object description: | A user's relationship with a team -``` + value: + attributes: + provisioned_by: "{{ provisioned_by }}" + provisioned_by_id: "{{ provisioned_by_id }}" + role: "{{ role }}" + relationships: + team: + data: + id: "{{ id }}" + type: "{{ type }}" + user: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -263,17 +272,16 @@ included > -Update a user's membership attributes on a team. +Update a user's membership attributes on a team.<br /><br />**Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https:​//docs.datadoghq.com/account_management/teams/manage/#team-membership). ```sql UPDATE datadog.organization.team_memberships SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE team_id = '{{ team_id }}' --required AND user_id = '{{ user_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -292,13 +300,12 @@ included; > -Remove a user from a team. +Remove a user from a team.<br /><br />**Note**: Each team has a setting that determines who is allowed to modify membership of the team. The `user_access_manage` permission generally grants access to modify membership of any team. To get the full picture, see [Team Membership documentation](https:​//docs.datadoghq.com/account_management/teams/manage/#team-membership). ```sql DELETE FROM datadog.organization.team_memberships WHERE team_id = '{{ team_id }}' --required AND user_id = '{{ user_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/organization/team_notification_rules/index.md b/website/docs/services/organization/team_notification_rules/index.md new file mode 100644 index 0000000..da95564 --- /dev/null +++ b/website/docs/services/organization/team_notification_rules/index.md @@ -0,0 +1,329 @@ +--- +title: team_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - team_notification_rules + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_notification_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the team notification rule (example: b8626d7e-cedd-11eb-abf5-da7ad0900001)
objectTeam notification rule attributes
stringTeam notification rule type (team_notification_rules) (default: team_notification_rules, example: team_notification_rules)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the team notification rule (example: b8626d7e-cedd-11eb-abf5-da7ad0900001)
objectTeam notification rule attributes
stringTeam notification rule type (team_notification_rules) (default: team_notification_rules, example: team_notification_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, rule_id
team_id
team_id, data
team_id, rule_id, data
team_id, rule_id
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringNone
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringNone
+ +## `SELECT` examples + + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.team_notification_rules +WHERE team_id = '{{ team_id }}' -- required +AND rule_id = '{{ rule_id }}' -- required +; +``` + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.team_notification_rules +WHERE team_id = '{{ team_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +No description available. + +```sql +INSERT INTO datadog.organization.team_notification_rules ( +data, +team_id +) +SELECT +'{{ data }}' /* required */, +'{{ team_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: team_notification_rules + props: + - name: team_id + value: "{{ team_id }}" + description: Required parameter for the team_notification_rules resource. + - name: data + description: | + Team notification rule + value: + attributes: + email: + enabled: {{ enabled }} + ms_teams: + connector_name: "{{ connector_name }}" + pagerduty: + service_name: "{{ service_name }}" + slack: + channel: "{{ channel }}" + workspace: "{{ workspace }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +No description available. + +```sql +REPLACE datadog.organization.team_notification_rules +SET +data = '{{ data }}' +WHERE +team_id = '{{ team_id }}' --required +AND rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +No description available. + +```sql +DELETE FROM datadog.organization.team_notification_rules +WHERE team_id = '{{ team_id }}' --required +AND rule_id = '{{ rule_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/team_permission_settings/index.md b/website/docs/services/organization/team_permission_settings/index.md index a146d95..48684a8 100644 --- a/website/docs/services/organization/team_permission_settings/index.md +++ b/website/docs/services/organization/team_permission_settings/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a team_permission_settings ## Overview - +
Nameteam_permission_settings
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Team permission setting type (default: team_permission_settings, example: team_permission_settings) + Team permission setting type (team_permission_settings) (default: team_permission_settings, example: team_permission_settings) @@ -86,14 +87,14 @@ The following methods are available for this resource: - team_id, region + team_id Get all permission settings for a given team. - team_id, action, region, data__data + team_id, action, data Update a team permission setting for a given team. @@ -118,10 +119,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string None - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -150,7 +151,6 @@ attributes, type FROM datadog.organization.team_permission_settings WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -172,12 +172,11 @@ Update a team permission setting for a given team. ```sql REPLACE datadog.organization.team_permission_settings SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE team_id = '{{ team_id }}' --required AND action = '{{ action }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` diff --git a/website/docs/services/organization/team_syncs/index.md b/website/docs/services/organization/team_syncs/index.md new file mode 100644 index 0000000..d6291e2 --- /dev/null +++ b/website/docs/services/organization/team_syncs/index.md @@ -0,0 +1,145 @@ +--- +title: team_syncs +hide_title: false +hide_table_of_contents: false +keywords: + - team_syncs + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a team_syncs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe sync's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectTeam sync attributes.
stringTeam sync bulk type. (team_sync_bulk) (example: team_sync_bulk)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[source]Get all team synchronization configurations.<br />Returns a list of configurations used for linking or provisioning teams with external sources like GitHub.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringFilter by the external source platform for team synchronization
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all team synchronization configurations.<br />Returns a list of configurations used for linking or provisioning teams with external sources like GitHub. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.team_syncs +WHERE filter[source] = '{{ filter[source] }}' -- required +; +``` + + diff --git a/website/docs/services/organization/teams/index.md b/website/docs/services/organization/teams/index.md index 923de0f..a3aae8b 100644 --- a/website/docs/services/organization/teams/index.md +++ b/website/docs/services/organization/teams/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a teams resource. ## Overview - +
Nameteams
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Team type (default: team, example: team) + Team type (team) (default: team, example: team) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Team type (default: team, example: team) + Team type (team) (default: team, example: team) @@ -126,44 +127,44 @@ The following methods are available for this resource: - team_id, region + team_id Get a single team using the team's `id`. - region + page[number], page[size], sort, include, filter[keyword], filter[me], fields[team] - Get all teams.
Can be used to search for teams using the `filter[keyword]` and `filter[me]` query parameters. + Get all teams.<br />Can be used to search for teams using the `filter[keyword]` and `filter[me]` query parameters. - region, data__data + data - Create a new team.
User IDs passed through the `users` relationship field are added to the team. + Create a new team.<br />User IDs passed through the `users` relationship field are added to the team. - team_id, region, data__data + team_id, data - Update a team using the team's `id`.
If the `team_links` relationship is present, the associated links are updated to be in the order they appear in the array, and any existing team links not present are removed. + Update a team using the team's `id`.<br />If the `team_links` relationship is present, the associated links are updated to be in the order they appear in the array, and any existing team links not present are removed. - team_id, region + team_id Remove a team using the team's `id`. - region, data + data - This endpoint attempts to link your existing Datadog teams with GitHub teams by matching their names.
It evaluates all current Datadog teams and compares them against teams in the GitHub organization
connected to your Datadog account, based on Datadog Team handle and GitHub Team slug
(lowercased and kebab-cased).

This operation is read-only on the GitHub side, no teams will be modified or created.

[A GitHub organization must be connected to your Datadog account](https://docs.datadoghq.com/integrations/github/),
and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug
using a normalized exact match; case is ignored and spaces are removed. No modifications are made
to teams in GitHub. This will not create new Teams in Datadog. + This endpoint configures synchronization between your existing Datadog teams and GitHub teams by matching their names.<br />It evaluates all current Datadog teams and compares them against teams in the GitHub organization<br />connected to your Datadog account, based on Datadog Team handle and GitHub Team slug<br />(lowercased and kebab-cased).<br /><br />This operation is read-only on the GitHub side, no teams will be modified or created.<br /><br />Optionally, provide `selection_state` to limit synchronization<br />to specific teams or organizations and their subtrees, instead<br />of syncing all teams.<br /><br />[A GitHub organization must be connected to your Datadog account](https:​//docs.datadoghq.com/integrations/github/),<br />and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug<br />using a normalized exact match; case is ignored and spaces are removed. No modifications are made<br />to teams in GitHub. This only creates new teams in Datadog when type is set to `provision`. @@ -181,10 +182,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -219,7 +220,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -250,13 +251,12 @@ relationships, type FROM datadog.organization.teams WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required ; ``` -Get all teams.
Can be used to search for teams using the `filter[keyword]` and `filter[me]` query parameters. +Get all teams.<br />Can be used to search for teams using the `filter[keyword]` and `filter[me]` query parameters. ```sql SELECT @@ -265,8 +265,7 @@ attributes, relationships, type FROM datadog.organization.teams -WHERE region = '{{ region }}' -- required -AND page[number] = '{{ page[number] }}' +WHERE page[number] = '{{ page[number] }}' AND page[size] = '{{ page[size] }}' AND sort = '{{ sort }}' AND include = '{{ include }}' @@ -290,16 +289,14 @@ AND fields[team] = '{{ fields[team] }}' > -Create a new team.
User IDs passed through the `users` relationship field are added to the team. +Create a new team.<br />User IDs passed through the `users` relationship field are added to the team. ```sql INSERT INTO datadog.organization.teams ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -307,18 +304,31 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: teams props: - - name: region - value: string - description: Required parameter for the teams resource. - name: data - value: object description: | Team create -``` + value: + attributes: + avatar: "{{ avatar }}" + banner: {{ banner }} + description: "{{ description }}" + handle: "{{ handle }}" + hidden_modules: + - "{{ hidden_modules }}" + name: "{{ name }}" + visible_modules: + - "{{ visible_modules }}" + relationships: + users: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -333,16 +343,15 @@ data > -Update a team using the team's `id`.
If the `team_links` relationship is present, the associated links are updated to be in the order they appear in the array, and any existing team links not present are removed. +Update a team using the team's `id`.<br />If the `team_links` relationship is present, the associated links are updated to be in the order they appear in the array, and any existing team links not present are removed. ```sql UPDATE datadog.organization.teams SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE team_id = '{{ team_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -365,7 +374,6 @@ Remove a team using the team's `id`. ```sql DELETE FROM datadog.organization.teams WHERE team_id = '{{ team_id }}' --required -AND region = '{{ region }}' --required ; ```
@@ -374,6 +382,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + -This endpoint attempts to link your existing Datadog teams with GitHub teams by matching their names.
It evaluates all current Datadog teams and compares them against teams in the GitHub organization
connected to your Datadog account, based on Datadog Team handle and GitHub Team slug
(lowercased and kebab-cased).

This operation is read-only on the GitHub side, no teams will be modified or created.

[A GitHub organization must be connected to your Datadog account](https://docs.datadoghq.com/integrations/github/),
and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug
using a normalized exact match; case is ignored and spaces are removed. No modifications are made
to teams in GitHub. This will not create new Teams in Datadog. +This endpoint configures synchronization between your existing Datadog teams and GitHub teams by matching their names.<br />It evaluates all current Datadog teams and compares them against teams in the GitHub organization<br />connected to your Datadog account, based on Datadog Team handle and GitHub Team slug<br />(lowercased and kebab-cased).<br /><br />This operation is read-only on the GitHub side, no teams will be modified or created.<br /><br />Optionally, provide `selection_state` to limit synchronization<br />to specific teams or organizations and their subtrees, instead<br />of syncing all teams.<br /><br />[A GitHub organization must be connected to your Datadog account](https:​//docs.datadoghq.com/integrations/github/),<br />and the GitHub App integrated with Datadog must have the `Members Read` permission. Matching is performed by comparing the Datadog team handle to the GitHub team slug<br />using a normalized exact match; case is ignored and spaces are removed. No modifications are made<br />to teams in GitHub. This only creates new teams in Datadog when type is set to `provision`. ```sql EXEC datadog.organization.teams.sync_teams -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" diff --git a/website/docs/services/organization/usage_application_security_monitoring/index.md b/website/docs/services/organization/usage_application_security_monitoring/index.md deleted file mode 100644 index b089385..0000000 --- a/website/docs/services/organization/usage_application_security_monitoring/index.md +++ /dev/null @@ -1,151 +0,0 @@ ---- -title: usage_application_security_monitoring -hide_title: false -hide_table_of_contents: false -keywords: - - usage_application_security_monitoring - - organization - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists a usage_application_security_monitoring resource. - -## Overview - - - - -
Nameusage_application_security_monitoring
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringUnique ID of the response.
objectUsage attributes data.
stringType of usage data. (default: usage_timeseries, example: usage_timeseries)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
start_hr, regionend_hrGet hourly usage for application security .
**Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family)
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending **before** this hour.
- -## `SELECT` examples - - - - -Get hourly usage for application security .
**Note:** This endpoint has been deprecated. Hourly usage data for all products is now available in the [Get hourly usage by product family API](https://docs.datadoghq.com/api/latest/usage-metering/#get-hourly-usage-by-product-family) - -```sql -SELECT -id, -attributes, -type -FROM datadog.organization.usage_application_security_monitoring -WHERE start_hr = '{{ start_hr }}' -- required -AND region = '{{ region }}' -- required -AND end_hr = '{{ end_hr }}' -; -``` -
-
diff --git a/website/docs/services/organization/usage_billable_summary/index.md b/website/docs/services/organization/usage_billable_summary/index.md new file mode 100644 index 0000000..0c28cdd --- /dev/null +++ b/website/docs/services/organization/usage_billable_summary/index.md @@ -0,0 +1,199 @@ +--- +title: usage_billable_summary +hide_title: false +hide_table_of_contents: false +keywords: + - usage_billable_summary + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_billable_summary resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe account public ID.
stringThe organization public ID.
stringThe account name.
stringThe organization name.
stringThe billing plan (metadata). (Deprecated from June 2026)
string (date-time)Shows the last date of usage.
integer (int64)The number of organizations.
number (double)Shows usage aggregation for a billing period.
stringThe region of the organization.
string (date-time)Shows the first date of usage.
objectResponse with aggregated usage types.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
month, include_connected_accountsGet billable usage across your account.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanBoolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage starting this month.
+ +## `SELECT` examples + + + + +Get billable usage across your account.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). + +```sql +SELECT +account_public_id, +public_id, +account_name, +org_name, +billing_plan, +end_date, +num_orgs, +ratio_in_month, +region, +start_date, +usage +FROM datadog.organization.usage_billable_summary +WHERE month = '{{ month }}' +AND include_connected_accounts = '{{ include_connected_accounts }}' +; +``` + + diff --git a/website/docs/services/organization/usage_hourly_attribution/index.md b/website/docs/services/organization/usage_hourly_attribution/index.md new file mode 100644 index 0000000..1244410 --- /dev/null +++ b/website/docs/services/organization/usage_hourly_attribution/index.md @@ -0,0 +1,211 @@ +--- +title: usage_hourly_attribution +hide_title: false +hide_table_of_contents: false +keywords: + - usage_hourly_attribution + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_hourly_attribution resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe organization public ID.
stringThe name of the organization.
string (date-time)The hour for the usage.
stringThe region of the Datadog instance that the organization belongs to.
stringThe source of the usage attribution tag configuration and the selected tags in the format of `<source_org_name>:::<selected tag 1>///<selected tag 2>///<selected tag 3>`.
objectTag keys and values. A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags configured for usage attribution](https:​//docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). In this scenario the API returns the total usage, not broken down by tags.
number (double)Total product usage for the given tags within the hour.
stringShows the most recent hour in the current month for all organizations where usages are calculated.
stringSupported products for hourly usage attribution requests. Usage types are in the format `<usage_type>_usage`. To obtain the complete list of valid usage types, make a request to the [Get usage attribution types API](https:​//docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types). (api_usage, apm_fargate_usage, apm_host_usage, apm_usm_usage, appsec_fargate_usage, appsec_usage, asm_serverless_traced_invocations_usage, asm_serverless_traced_invocations_percentage, bits_ai_investigations_usage, browser_usage, ci_code_coverage_committers_percentage, ci_code_coverage_committers_usage, ci_pipeline_indexed_spans_usage, ci_test_indexed_spans_usage, ci_visibility_itr_usage, cloud_siem_usage, code_security_host_usage, container_excl_agent_usage, container_usage, cspm_containers_usage, cspm_hosts_usage, custom_event_usage, custom_ingested_timeseries_usage, custom_timeseries_usage, cws_containers_usage, cws_fargate_task_usage, cws_hosts_usage, data_jobs_monitoring_usage, data_stream_monitoring_usage, dbm_hosts_usage, dbm_queries_usage, error_tracking_usage, error_tracking_percentage, estimated_indexed_spans_usage, estimated_ingested_spans_usage, fargate_usage, flex_logs_starter, flex_stored_logs, functions_usage, incident_management_monthly_active_users_usage, indexed_spans_usage, infra_host_usage, infra_host_basic_usage, ingested_logs_bytes_usage, ingested_spans_bytes_usage, invocations_usage, lambda_traced_invocations_usage, llm_observability_usage, llm_spans_usage, logs_indexed_15day_usage, logs_indexed_180day_usage, logs_indexed_1day_usage, logs_indexed_30day_usage, logs_indexed_360day_usage, logs_indexed_3day_usage, logs_indexed_45day_usage, logs_indexed_60day_usage, logs_indexed_7day_usage, logs_indexed_90day_usage, logs_indexed_custom_retention_usage, mobile_app_testing_usage, ndm_netflow_usage, npm_host_usage, network_device_wireless_usage, obs_pipeline_bytes_usage, obs_pipelines_vcpu_usage, online_archive_usage, product_analytics_session_usage, profiled_container_usage, profiled_fargate_usage, profiled_host_usage, published_app, rum_browser_mobile_sessions_usage, rum_ingested_usage, rum_investigate_usage, rum_replay_sessions_usage, rum_session_replay_add_on_usage, sca_fargate_usage, sds_scanned_bytes_usage, serverless_apps_usage, serverless_apps_apm_usage, siem_12mo_retention_usage, siem_6mo_retention_usage, siem_analyzed_logs_add_on_usage, siem_ingested_bytes_usage, snmp_usage, universal_service_monitoring_usage, vuln_management_hosts_usage, workflow_executions_usage)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
start_hr, usage_typeend_hr, next_record_id, tag_breakdown_keys, include_descendantsGet hourly usage attribution. Multi-region data is available starting March 1, 2023.<br /><br />This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is<br />set in the response. If it is, make another request and pass `next_record_id` as a parameter.<br />Pseudo code example:<br /><br />```<br />response := GetHourlyUsageAttribution(start_month)<br />cursor := response.metadata.pagination.next_record_id<br />WHILE cursor != null BEGIN<br /> sleep(5 seconds) # Avoid running into rate limit<br /> response := GetHourlyUsageAttribution(start_month, next_record_id=cursor)<br /> cursor := response.metadata.pagination.next_record_id<br />END<br />```
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage beginning at this hour.
stringUsage type to retrieve. Usage types are in the format `<usage_type>_usage`. Example: `infra_host_usage` To obtain the complete list of active usage types that can be used to replace <usage_type> in the field names, make a request to the [Get usage attribution types API](https:​//docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types).
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]` for usage ending **before** this hour.
booleanInclude child org usage in the response. Defaults to `true`.
stringList following results with a next_record_id provided in the previous query.
stringComma separated list of tags used to group usage. If no value is provided the usage will not be broken down by tags. To see which tags are available, look for the value of `tag_config_source` in the API response.
+ +## `SELECT` examples + + + + +Get hourly usage attribution. Multi-region data is available starting March 1, 2023.<br /><br />This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is<br />set in the response. If it is, make another request and pass `next_record_id` as a parameter.<br />Pseudo code example:<br /><br />```<br />response := GetHourlyUsageAttribution(start_month)<br />cursor := response.metadata.pagination.next_record_id<br />WHILE cursor != null BEGIN<br /> sleep(5 seconds) # Avoid running into rate limit<br /> response := GetHourlyUsageAttribution(start_month, next_record_id=cursor)<br /> cursor := response.metadata.pagination.next_record_id<br />END<br />``` + +```sql +SELECT +public_id, +org_name, +hour, +region, +tag_config_source, +tags, +total_usage_sum, +updated_at, +usage_type +FROM datadog.organization.usage_hourly_attribution +WHERE start_hr = '{{ start_hr }}' -- required +AND usage_type = '{{ usage_type }}' -- required +AND end_hr = '{{ end_hr }}' +AND next_record_id = '{{ next_record_id }}' +AND tag_breakdown_keys = '{{ tag_breakdown_keys }}' +AND include_descendants = '{{ include_descendants }}' +; +``` + + diff --git a/website/docs/services/organization/usage_logs_by_index/index.md b/website/docs/services/organization/usage_logs_by_index/index.md new file mode 100644 index 0000000..4ad1dd5 --- /dev/null +++ b/website/docs/services/organization/usage_logs_by_index/index.md @@ -0,0 +1,181 @@ +--- +title: usage_logs_by_index +hide_title: false +hide_table_of_contents: false +keywords: + - usage_logs_by_index + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_logs_by_index resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe index ID for this usage.
stringThe organization public ID.
stringThe user specified name for this index ID.
stringThe organization name.
integer (int64)The total number of indexed logs for the queried hour.
string (date-time)The hour for the usage.
integer (int64)The retention period (in days) for this index ID.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
start_hrend_hr, index_nameGet hourly usage for logs by index.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.
string (date-time)Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.
arrayComma-separated list of log index names.
+ +## `SELECT` examples + + + + +Get hourly usage for logs by index. + +```sql +SELECT +index_id, +public_id, +index_name, +org_name, +event_count, +hour, +retention +FROM datadog.organization.usage_logs_by_index +WHERE start_hr = '{{ start_hr }}' -- required +AND end_hr = '{{ end_hr }}' +AND index_name = '{{ index_name }}' +; +``` + + diff --git a/website/docs/services/organization/usage_monthly_attribution/index.md b/website/docs/services/organization/usage_monthly_attribution/index.md new file mode 100644 index 0000000..c89a0aa --- /dev/null +++ b/website/docs/services/organization/usage_monthly_attribution/index.md @@ -0,0 +1,217 @@ +--- +title: usage_monthly_attribution +hide_title: false +hide_table_of_contents: false +keywords: + - usage_monthly_attribution + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_monthly_attribution resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe organization public ID.
stringThe name of the organization.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM].
stringThe region of the Datadog instance that the organization belongs to.
stringThe source of the usage attribution tag configuration and the selected tags in the format `<source_org_name>:::<selected tag 1>///<selected tag 2>///<selected tag 3>`.
objectTag keys and values. A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags configured for usage attribution](https:​//docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started). In this scenario the API returns the total usage, not broken down by tags.
string (date-time)Datetime of the most recent update to the usage values.
objectFields in Usage Summary by tag(s).
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
start_month, fieldsend_month, sort_direction, sort_name, tag_breakdown_keys, next_record_id, include_descendantsGet monthly usage attribution. Multi-region data is available starting March 1, 2023.<br /><br />This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is<br />set in the response. If it is, make another request and pass `next_record_id` as a parameter.<br />Pseudo code example:<br /><br />```<br />response := GetMonthlyUsageAttribution(start_month)<br />cursor := response.metadata.pagination.next_record_id<br />WHILE cursor != null BEGIN<br /> sleep(5 seconds) # Avoid running into rate limit<br /> response := GetMonthlyUsageAttribution(start_month, next_record_id=cursor)<br /> cursor := response.metadata.pagination.next_record_id<br />END<br />```
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringComma-separated list of usage types to return, or `*` for all usage types. Usage types are in the format `<usage_type>_usage` and `<usage_type>_percentage`. Example: `infra_host_usage,infra_host_percentage` To obtain the complete list of usage attribution types that can be used to replace <usage_type> in the field names, make a request to the [Get usage attribution types API](https:​//docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage beginning in this month. Maximum of 15 months ago.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage ending this month.
booleanInclude child org usage in the response. Defaults to `true`.
stringList following results with a next_record_id provided in the previous query.
stringThe direction to sort by: `[desc, asc]`.
stringThe field to sort by. Sort fields are in the format `<usage_type>_usage`. Example: `infra_host_usage` To obtain the complete list of usage attribution types that can be used to replace <usage_type> in the field names, make a request to the [Get usage attribution types API](https:​//docs.datadoghq.com/api/latest/usage-metering/#get-usage-attribution-types).
stringComma separated list of tag keys used to group usage. If no value is provided the usage will not be broken down by tags. To see which tags are available, look for the value of `tag_config_source` in the API response.
+ +## `SELECT` examples + + + + +Get monthly usage attribution. Multi-region data is available starting March 1, 2023.<br /><br />This API endpoint is paginated. To make sure you receive all records, check if the value of `next_record_id` is<br />set in the response. If it is, make another request and pass `next_record_id` as a parameter.<br />Pseudo code example:<br /><br />```<br />response := GetMonthlyUsageAttribution(start_month)<br />cursor := response.metadata.pagination.next_record_id<br />WHILE cursor != null BEGIN<br /> sleep(5 seconds) # Avoid running into rate limit<br /> response := GetMonthlyUsageAttribution(start_month, next_record_id=cursor)<br /> cursor := response.metadata.pagination.next_record_id<br />END<br />``` + +```sql +SELECT +public_id, +org_name, +month, +region, +tag_config_source, +tags, +updated_at, +values +FROM datadog.organization.usage_monthly_attribution +WHERE start_month = '{{ start_month }}' -- required +AND fields = '{{ fields }}' -- required +AND end_month = '{{ end_month }}' +AND sort_direction = '{{ sort_direction }}' +AND sort_name = '{{ sort_name }}' +AND tag_breakdown_keys = '{{ tag_breakdown_keys }}' +AND next_record_id = '{{ next_record_id }}' +AND include_descendants = '{{ include_descendants }}' +; +``` + + diff --git a/website/docs/services/organization/usage_summary/index.md b/website/docs/services/organization/usage_summary/index.md new file mode 100644 index 0000000..33e9037 --- /dev/null +++ b/website/docs/services/organization/usage_summary/index.md @@ -0,0 +1,1951 @@ +--- +title: usage_summary +hide_title: false +hide_table_of_contents: false +keywords: + - usage_summary + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_summary resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)Shows the 99th percentile of all agent hosts over all hours in the current date for all organizations.
integer (int64)Shows the sum of all AI credits used by Agent Builder over all hours in the current date for all organizations.
integer (int64)Shows the sum of all AI credits used by Bits AI Assistant over all hours in the current date for all organizations.
integer (int64)Shows the sum of all AI credits used by Bits AI Dev over all hours in the current date for all organizations.
integer (int64)Shows the sum of all AI credits used by Bits AI SRE over all hours in the current date for all organizations.
integer (int64)Shows the sum of all AI credits over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Azure app services using APM over all hours in the current date all organizations.
integer (int64)Shows the 99th percentile of all APM DevSecOps hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all distinct standalone Enterprise hosts over all hours in the current date for all organizations.
integer (int64)Shows the average of all APM ECS Fargate tasks over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct APM hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct standalone Pro hosts over all hours in the current date for all organizations.
integer (int64)Shows the average of all Application Security Monitoring ECS Fargate tasks over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Application Security Monitoring Serverless invocations over all hours in the current date for all organizations.
integer (int64)Shows the sum of audit logs lines indexed over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the number of organizations that had Audit Trail enabled in the current date.
integer (int64)Shows the sum of all Audit Trail event forwarding events over all hours in the current date for all organizations.
integer (int64)The average total count for Fargate Container Profiler over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all AWS hosts over all hours in the current date for all organizations.
integer (int64)Shows the average of the number of functions that executed 1 or more times each hour in the current date for all organizations.
integer (int64)Shows the sum of all AWS Lambda invocations over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Azure app services over all hours in the current date for all organizations.
integer (int64)Shows the sum of all log bytes ingested over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Bits AI Investigations over all hours in the current date for all organizations.
integer (int64)Shows the sum of all browser lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all browser replay sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all browser RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the last value of Anthropic cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of AWS cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of Azure cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of Confluent cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of Databricks cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of Elastic cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of Fastly cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of GCP cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of GitHub cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of MongoDB cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of OCI cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of OpenAI cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of Snowflake cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the last value of the amount of cloud spend monitored for Enterprise over all hours in the current date for all organizations.
integer (int64)Shows the last value of the amount of cloud spend monitored for Pro over all hours in the current date for all organizations.
integer (int64)Shows the last value of Twilio cloud spend monitored over all hours in the current date for all organizations.
integer (int64)Shows the sum of all CI pipeline indexed spans over all hours in the current month for all organizations.
integer (int64)Shows the sum of all CI test indexed spans over all hours in the current month for all organizations.
integer (int64)Shows the high-water mark of all CI visibility intelligent test runner committers over all hours in the current month for all organizations.
integer (int64)Shows the high-water mark of all CI visibility pipeline committers over all hours in the current month for all organizations.
integer (int64)Shows the high-water mark of all CI visibility test committers over all hours in the current month for all organizations.
integer (int64)Host count average of Cloud Cost Management for AWS for the given date and given organization.
integer (int64)Host count average of Cloud Cost Management for Azure for the given date and given organization.
integer (int64)Host count average of Cloud Cost Management for GCP for the given date and given organization.
integer (int64)Host count average of Cloud Cost Management for all cloud providers for the given date and given organization.
integer (int64)Average host count for Cloud Cost Management on OCI for the given date and organization.
integer (int64)Shows the sum of all Cloud Security Information and Event Management events over all hours in the current date for the given org.
integer (int64)Shows the sum of all Cloud SIEM Indexed Logs over all hours in the current date for the given org.
integer (int64)Shows the high-water mark of all Static Analysis committers over all hours in the current date for the given org.
integer (int64)Shows the high-water mark of all static Software Composition Analysis committers over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Code Security hosts over all hours in the current date for the given org.
integer (int64)Shows the average of all distinct containers over all hours in the current date for all organizations.
integer (int64)Shows the average of containers without the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the high-water mark of all distinct containers over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Cloud Security Management Enterprise compliance containers over all hours in the current date for the given org.
integer (int64)Shows the sum of all Cloud Security Management Enterprise Cloud Workload Security containers over all hours in the current date for the given org.
integer (int64)Shows the sum of all Cloud Security Management Enterprise containers over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise Azure app services hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise AWS hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise Azure hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise compliance hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise Cloud Workload Security hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise GCP hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise OCI hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Enterprise hosts over all hours in the current date for the given org.
integer (int64)Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro OCI hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro Azure app services hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro AWS hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro Azure hosts over all hours in the current date for all organizations.
integer (int64)Shows the average number of Cloud Security Management Pro containers over all hours in the current date for all organizations.
integer (int64)Shows the high-water mark of Cloud Security Management Pro containers over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro GCP hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro hosts over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Cloud Security Management Pro Agentless scanner hosts over all hours in the current date for all organizations.
integer (int64)Shows the average number of distinct custom metrics over all hours in the current date for all organizations.
integer (int64)Shows the average of all distinct Cloud Workload Security containers over all hours in the current date for all organizations.
integer (int64)Shows the average of all distinct Cloud Workload Security Fargate tasks over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Cloud Workload Security hosts over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Data Jobs Monitoring hosts over all hours in the current date for the given org.
integer (int64)Shows the sum of all Data Streams Monitoring hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Data Streams Monitoring hosts over all hours in the current date for all organizations.
string (date-time)The date for the usage.
integer (int64)Shows the 99th percentile of all Database Monitoring hosts over all hours in the current date for all organizations.
integer (int64)Shows the average of all normalized Database Monitoring queries over all hours in the current date for all organizations.
integer (int64)Shows the sum of all orchestrator job hours over all hours in the current date for all organizations.
integer (int64)Shows the sum of all ephemeral infrastructure hosts with the Datadog Agent over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts on Alibaba over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts on AWS over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts on Azure over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the sum of all ephemeral infrastructure hosts for Basic tier on vSphere over all hours in the current date for all organizations.
integer (int64)Shows the sum of all ephemeral infrastructure hosts for Basic tier over all hours in the current date for all organizations.
integer (int64)Shows the sum of all ephemeral infrastructure hosts for Enterprise over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts on GCP over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts on Heroku over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts with only Azure App Services over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts with only vSphere over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts for Pro over all hours in the current date for the given org.
integer (int64)Shows the sum of all ephemeral infrastructure hosts for Pro Plus over all hours in the current date for the given org.
integer (int64)Sum of all ephemeral infrastructure hosts for Proxmox over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Error Tracking APM error events over all hours in the current date for the given org.
integer (int64)Shows the sum of all Error Tracking error events over all hours in the current date for the given org.
integer (int64)Shows the sum of all Error Tracking events over all hours in the current date for the given org.
integer (int64)Shows the sum of all Error Tracking RUM error events over all hours in the current date for the given org.
integer (int64)Shows the sum of all Event Management correlated events over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Event Management correlated related events over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Event Management correlations over all hours in the current date for all organizations.
integer (int64)The average number of Profiling Fargate tasks over all hours in the current date for all organizations.
integer (int64)The average number of Profiling Fargate Elastic Kubernetes Service tasks over all hours in the current date for all organizations.
integer (int64)Shows the high-watermark of all Fargate tasks over all hours in the current date for all organizations.
integer (int64)Shows the average of all Fargate tasks over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Feature Flags Client-Side SDK config requests over all hours in the current date for all organizations.
integer (int64)Shows the average number of Flex Logs Compute Large Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Compute Medium Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Compute Small Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Compute Extra Large Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Compute Extra Small Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Starter Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Starter Storage Index Instances over all hours in the current date for the given org.
integer (int64)Shows the average number of Flex Logs Starter Storage Retention Adjustment Instances over all hours in the current date for the given org.
integer (int64)Shows the average of all Flex Stored Logs over all hours in the current date for the given org.
integer (int64)Shows the sum of all log bytes forwarded over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all GCP hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Heroku dynos over all hours in the current date for all organizations.
integer (int64)Shows the high-water mark of incident management monthly active users over all hours in the current date for all organizations.
integer (int64)Shows the high-water mark of Incident Management seats over all hours on the current date for all organizations.
integer (int64)Shows the sum of all log events indexed over all hours in the current date for all organizations.
integer (int64)Shows the sum of all indexed custom metrics points over all hours in the current date for all organizations.
integer (int64)Shows the average of all Infrastructure vCPU cores over all hours in the current date for all organizations.
integer (int64)Shows the average of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the average of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default basic Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the average of all default Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations.
integer (int64)Shows the average of all default Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations.
integer (int64)Shows the average of all default Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations.
integer (int64)Shows the average of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations.
integer (int64)Shows the average of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default basic Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations.
integer (int64)Shows the average of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations.
integer (int64)Shows the sum of all default Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations.
integer (int64)Shows the average of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the sum of all observed Infrastructure host vCPU cores reported by the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the average of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations.
integer (int64)Shows the sum of all observed Infrastructure host vCPU cores on AWS over all hours in the current date for all organizations.
integer (int64)Shows the average of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations.
integer (int64)Shows the sum of all observed Infrastructure host vCPU cores on Azure over all hours in the current date for all organizations.
integer (int64)Shows the average of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations.
integer (int64)Shows the sum of all observed Infrastructure host vCPU cores on GCP over all hours in the current date for all organizations.
integer (int64)Shows the average of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations.
integer (int64)Shows the sum of all observed Infrastructure host vCPU cores on Nutanix over all hours in the current date for all organizations.
integer (int64)Shows the average of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations.
integer (int64)Shows the sum of all observed Infrastructure host vCPU cores reported by OpenTelemetry over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Infrastructure vCPU cores over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Edge Devices Monitoring devices over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct infrastructure hosts for Basic tier with the Datadog Agent over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct infrastructure hosts for Basic tier on vSphere over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct infrastructure hosts for Basic tier over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct infrastructure hosts over all hours in the current date for all organizations.
integer (int64)Shows the average number of storage management objects over all hours in the current date for all organizations.
integer (int64)Shows the sum of all ingested custom metrics points over all hours in the current date for all organizations.
integer (int64)Shows the sum of all log bytes ingested over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Application Performance Monitoring IoT hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Application Performance Monitoring IoT hosts over all hours in the current date for all organizations.
integer (int64)Shows the sum of all IoT devices over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all IoT devices over all hours in the current date all organizations.
integer (int64)Shows the sum of all Agent Observability 15-day retention spans over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Agent Observability 30-day retention spans over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Agent Observability 60-day retention spans over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Agent Observability 90-day retention spans over all hours in the current date for all organizations.
integer (int64)Sum of all Agent observability minimum spend over all hours in the current date for all organizations.
integer (int64)Sum of all Agent observability sessions over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Logs Archive Search scanned data over all hours in the current date for all organizations.
integer (int64)Shows the sum of all custom metric names over all hours in the current date for all organizations.
integer (int64)Shows the sum of all mobile lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM sessions on Android over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM sessions on Flutter over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM sessions on iOS over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM sessions on React Native over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM sessions on Roku over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all Network Device Monitoring NetFlow events over all hours in the current date for the given org.
integer (int64)Shows the sum of all Network flows indexed over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the 99th percentile of all Network Device Monitoring wireless devices over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Network Path scheduled tests over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all distinct Cloud Network Monitoring hosts (formerly known as Network hosts) over all hours in the current date for all organizations.
integer (int64)Sum of all observability pipelines bytes processed over all hours in the current date for the given org.
integer (int64)Shows the sum of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all Oracle Cloud Infrastructure hosts over all hours in the current date for the given org.
integer (int64)Shows the high-water mark of On-Call seats over all hours in the current date for all organizations.
integer (int64)Sum of all online archived events over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of APM hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all hosts reported by the Datadog exporter for the OpenTelemetry Collector over all hours in the current date for all organizations.
arrayOrganizations associated with a user.
integer (int64)Sum of all product analytics sessions over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all profiled Azure app services over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all profiled hosts over all hours within the current date for all organizations.
integer (int64)Sum of all Proxmox hosts over all hours in the current date for all organizations.
integer (int64)99th percentile of all Proxmox hosts over all hours in the current date for all organizations.
integer (int64)Shows the high-water mark of all published applications over all hours in the current date for all organizations.
integer (int64)Shows the sum of all mobile sessions and all browser lite and legacy sessions over all hours in the current month for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the sum of all browser RUM legacy sessions over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all browser RUM lite sessions over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all browser RUM Session Replay counts over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Sum of all RUM indexed sessions over all hours in the current date for all organizations.
integer (int64)Sum of all RUM ingested sessions over all hours in the current date for all organizations.
integer (int64)Shows the sum of all RUM lite sessions (browser and mobile) over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM legacy sessions on Android over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM legacy Sessions on Flutter over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM legacy sessions on iOS over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM legacy sessions on React Native over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM legacy sessions on Roku over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM lite sessions on Android over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM lite sessions on Flutter over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM lite sessions on iOS over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM lite sessions on Kotlin Multiplatform over all hours within the current date for all organizations.
integer (int64)Shows the sum of all mobile RUM lite sessions on React Native over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM lite sessions on Roku over all hours within the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all mobile RUM lite sessions on Unity over all hours within the current date for all organizations.
integer (int64)Shows the sum of all mobile RUM replay sessions on Android over all hours within the current date for the given org.
integer (int64)Shows the sum of all mobile RUM replay sessions on iOS over all hours within the current date for the given org.
integer (int64)Shows the sum of all mobile RUM replay sessions on Kotlin Multiplatform over all hours within the current date for all organizations.
integer (int64)Shows the sum of all mobile RUM replay sessions on React Native over all hours within the current date for the given org.
integer (int64)Shows the sum of all RUM Session Replay counts over all hours in the current date for all organizations (To be introduced on October 1st, 2024).
integer (int64)Shows the sum of all browser RUM lite sessions over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Sum of all RUM session replay add-on sessions over all hours in the current date for all organizations.
integer (int64)Shows the sum of RUM sessions (browser and mobile) over all hours in the current date for all organizations.
integer (int64)Shows the sum of all browser and mobile RUM units over all hours in the current date for all organizations (To be deprecated on October 1st, 2024).
integer (int64)Shows the average of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org.
integer (int64)Shows the sum of the high-water marks of all Software Composition Analysis Fargate tasks over all hours in the current date for the given org.
integer (int64)Sum of all APM bytes scanned with sensitive data scanner over all hours in the current date for all organizations.
integer (int64)Sum of all event stream events bytes scanned with sensitive data scanner over all hours in the current date for all organizations.
integer (int64)Shows the sum of all bytes scanned of logs usage by the Sensitive Data Scanner over all hours in the current month for all organizations.
integer (int64)Sum of all RUM bytes scanned with sensitive data scanner over all hours in the current date for all organizations.
integer (int64)Shows the sum of all bytes scanned across all usage types by the Sensitive Data Scanner over all hours in the current month for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Azure App Service instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Function instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Azure Container App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Fargate Elastic Container Service tasks for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Function instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Google Cloud Platform Cloud Run instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for Google Kubernetes Engine Autopilot pods for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure App Service instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Function instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Azure Container App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Function instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Cloud Platform Cloud Run instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for Google Kubernetes Engine Autopilot pods for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps with Application Performance Monitoring excluding Fargate for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Azure Container App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Azure for the given date and given org.
integer (int64)Shows the average number of Serverless Apps for Azure Function App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Azure Web App instances for the current date for all organizations.
integer (int64)Shows the average number of DSM Fargate ECS tasks monitored under Serverless Apps DSM for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Elastic Container Service for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Elastic Kubernetes Service for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for Azure Container App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for Azure Function App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for Azure Web App instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Functions instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for Google Cloud Platform Cloud Run instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps excluding Fargate for Google Kubernetes Engine Autopilot pods for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Google Cloud Platform Cloud Functions instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Google Cloud Platform Cloud Run instances for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Google Cloud for the given date and given org.
integer (int64)Shows the average number of Serverless Apps for Google Kubernetes Engine Autopilot pods for the current date for all organizations.
integer (int64)Shows the average number of Serverless Apps for Azure and Google Cloud for the given date and given org.
integer (int64)Shows the sum of Cloud SIEM Indexed Logs (12-month retention) over all hours in the current date for the given org.
integer (int64)Shows the sum of Cloud SIEM Indexed Logs (6-month retention) over all hours in the current date for the given org.
integer (int64)Shows the sum of all log events analyzed by Cloud SIEM over all hours in the current date for the given org.
integer (int64)Shows the sum of all Network Device Monitoring devices over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Network Device Monitoring devices over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Synthetic browser tests over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Synthetic API tests over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Synthetic mobile application tests over all hours in the current date for all organizations.
integer (int64)Shows the high-water mark of used synthetics parallel testing slots over all hours in the current date for all organizations.
integer (int64)Shows the sum of all Indexed Spans indexed over all hours in the current date for all organizations.
integer (int64)Shows the sum of all ingested APM span bytes over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all universal service management hosts over all hours in the current date for the given org.
integer (int64)Shows the 99th percentile of all vSphere hosts over all hours in the current date for all organizations.
integer (int64)Shows the 99th percentile of all Application Vulnerability Management hosts over all hours in the current date for the given org.
integer (int64)Sum of all workflows executed over all hours in the current date for all organizations.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
start_monthend_month, include_org_details, include_connected_accountsGet all usage across your account.<br /><br />For SDK users only: all fields on `UsageSummaryResponse`, `UsageSummaryDate`, and<br />`UsageSummaryDateOrg` are accessible through each object's `additionalProperties` map.<br />Existing typed-field getters are unchanged. New billing dimensions will not have<br />typed-field getters. Use<br />[Get available fields for usage summary](https:​//docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/)<br />to enumerate every available key at each response level.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage beginning in this month. Maximum of 15 months ago.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: `[YYYY-MM]` for usage ending this month.
booleanBoolean to specify whether to include accounts connected to the current account as partner customers in the Datadog partner network program. Defaults to `false`.
booleanInclude usage summaries for each sub-org.
+ +## `SELECT` examples + + + + +Get all usage across your account.<br /><br />For SDK users only: all fields on `UsageSummaryResponse`, `UsageSummaryDate`, and<br />`UsageSummaryDateOrg` are accessible through each object's `additionalProperties` map.<br />Existing typed-field getters are unchanged. New billing dimensions will not have<br />typed-field getters. Use<br />[Get available fields for usage summary](https:​//docs.datadoghq.com/api/latest/usage-metering/get-available-fields-for-usage-summary/)<br />to enumerate every available key at each response level.<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/). + +```sql +SELECT +agent_host_top99p, +ai_credits_agent_builder_ai_credits_sum, +ai_credits_bits_assistant_ai_credits_sum, +ai_credits_bits_dev_ai_credits_sum, +ai_credits_bits_sre_ai_credits_sum, +ai_credits_sum, +apm_azure_app_service_host_top99p, +apm_devsecops_host_top99p, +apm_enterprise_standalone_hosts_top99p, +apm_fargate_count_avg, +apm_host_top99p, +apm_pro_standalone_hosts_top99p, +appsec_fargate_count_avg, +asm_serverless_sum, +audit_logs_lines_indexed_sum, +audit_trail_enabled_hwm, +audit_trail_event_forwarding_events_sum, +avg_profiled_fargate_tasks, +aws_host_top99p, +aws_lambda_func_count, +aws_lambda_invocations_sum, +azure_app_service_top99p, +billable_ingested_bytes_sum, +bits_ai_investigations_sum, +browser_rum_lite_session_count_sum, +browser_rum_replay_session_count_sum, +browser_rum_units_sum, +ccm_anthropic_spend_last, +ccm_aws_spend_last, +ccm_azure_spend_last, +ccm_confluent_spend_last, +ccm_databricks_spend_last, +ccm_elastic_spend_last, +ccm_fastly_spend_last, +ccm_gcp_spend_last, +ccm_github_spend_last, +ccm_mongodb_spend_last, +ccm_oci_spend_last, +ccm_openai_spend_last, +ccm_snowflake_spend_last, +ccm_spend_monitored_ent_last, +ccm_spend_monitored_pro_last, +ccm_twilio_spend_last, +ci_pipeline_indexed_spans_sum, +ci_test_indexed_spans_sum, +ci_visibility_itr_committers_hwm, +ci_visibility_pipeline_committers_hwm, +ci_visibility_test_committers_hwm, +cloud_cost_management_aws_host_count_avg, +cloud_cost_management_azure_host_count_avg, +cloud_cost_management_gcp_host_count_avg, +cloud_cost_management_host_count_avg, +cloud_cost_management_oci_host_count_avg, +cloud_siem_events_sum, +cloud_siem_indexed_logs_sum, +code_analysis_sa_committers_hwm, +code_analysis_sca_committers_hwm, +code_security_host_top99p, +container_avg, +container_excl_agent_avg, +container_hwm, +csm_container_enterprise_compliance_count_sum, +csm_container_enterprise_cws_count_sum, +csm_container_enterprise_total_count_sum, +csm_host_enterprise_aas_host_count_top99p, +csm_host_enterprise_aws_host_count_top99p, +csm_host_enterprise_azure_host_count_top99p, +csm_host_enterprise_compliance_host_count_top99p, +csm_host_enterprise_cws_host_count_top99p, +csm_host_enterprise_gcp_host_count_top99p, +csm_host_enterprise_oci_host_count_top99p, +csm_host_enterprise_total_host_count_top99p, +csm_host_pro_hosts_agentless_scanners_sum, +csm_host_pro_hosts_agentless_scanners_top99p, +csm_host_pro_oci_host_count_top99p, +cspm_aas_host_top99p, +cspm_aws_host_top99p, +cspm_azure_host_top99p, +cspm_container_avg, +cspm_container_hwm, +cspm_gcp_host_top99p, +cspm_host_top99p, +cspm_hosts_agentless_scanners_sum, +cspm_hosts_agentless_scanners_top99p, +custom_ts_avg, +cws_container_count_avg, +cws_fargate_task_avg, +cws_host_top99p, +data_jobs_monitoring_host_hr_sum, +data_stream_monitoring_host_count_sum, +data_stream_monitoring_host_count_top99p, +date, +dbm_host_top99p, +dbm_queries_count_avg, +do_jobs_monitoring_orchestrators_job_hours_sum, +eph_infra_host_agent_sum, +eph_infra_host_alibaba_sum, +eph_infra_host_aws_sum, +eph_infra_host_azure_sum, +eph_infra_host_basic_infra_basic_agent_sum, +eph_infra_host_basic_infra_basic_vsphere_sum, +eph_infra_host_basic_sum, +eph_infra_host_ent_sum, +eph_infra_host_gcp_sum, +eph_infra_host_heroku_sum, +eph_infra_host_only_aas_sum, +eph_infra_host_only_vsphere_sum, +eph_infra_host_opentelemetry_apm_sum, +eph_infra_host_opentelemetry_sum, +eph_infra_host_pro_sum, +eph_infra_host_proplus_sum, +eph_infra_host_proxmox_sum, +error_tracking_apm_error_events_sum, +error_tracking_error_events_sum, +error_tracking_events_sum, +error_tracking_rum_error_events_sum, +event_management_correlation_correlated_events_sum, +event_management_correlation_correlated_related_events_sum, +event_management_correlation_sum, +fargate_container_profiler_profiling_fargate_avg, +fargate_container_profiler_profiling_fargate_eks_avg, +fargate_tasks_count_avg, +fargate_tasks_count_hwm, +feature_flags_config_requests_sum, +flex_logs_compute_large_avg, +flex_logs_compute_medium_avg, +flex_logs_compute_small_avg, +flex_logs_compute_xlarge_avg, +flex_logs_compute_xsmall_avg, +flex_logs_starter_avg, +flex_logs_starter_storage_index_avg, +flex_logs_starter_storage_retention_adjustment_avg, +flex_stored_logs_avg, +forwarding_events_bytes_sum, +gcp_host_top99p, +heroku_host_top99p, +incident_management_monthly_active_users_hwm, +incident_management_seats_hwm, +indexed_events_count_sum, +indexed_points_sum, +infra_cpu_avg, +infra_cpu_default_infra_host_vcpu_agent_avg, +infra_cpu_default_infra_host_vcpu_agent_basic_avg, +infra_cpu_default_infra_host_vcpu_agent_basic_sum, +infra_cpu_default_infra_host_vcpu_agent_sum, +infra_cpu_default_infra_host_vcpu_aws_avg, +infra_cpu_default_infra_host_vcpu_aws_sum, +infra_cpu_default_infra_host_vcpu_azure_avg, +infra_cpu_default_infra_host_vcpu_azure_sum, +infra_cpu_default_infra_host_vcpu_gcp_avg, +infra_cpu_default_infra_host_vcpu_gcp_sum, +infra_cpu_default_infra_host_vcpu_nutanix_avg, +infra_cpu_default_infra_host_vcpu_nutanix_basic_avg, +infra_cpu_default_infra_host_vcpu_nutanix_basic_sum, +infra_cpu_default_infra_host_vcpu_nutanix_sum, +infra_cpu_default_infra_host_vcpu_opentelemetry_avg, +infra_cpu_default_infra_host_vcpu_opentelemetry_sum, +infra_cpu_observed_infra_host_vcpu_agent_avg, +infra_cpu_observed_infra_host_vcpu_agent_sum, +infra_cpu_observed_infra_host_vcpu_aws_avg, +infra_cpu_observed_infra_host_vcpu_aws_sum, +infra_cpu_observed_infra_host_vcpu_azure_avg, +infra_cpu_observed_infra_host_vcpu_azure_sum, +infra_cpu_observed_infra_host_vcpu_gcp_avg, +infra_cpu_observed_infra_host_vcpu_gcp_sum, +infra_cpu_observed_infra_host_vcpu_nutanix_avg, +infra_cpu_observed_infra_host_vcpu_nutanix_sum, +infra_cpu_observed_infra_host_vcpu_opentelemetry_avg, +infra_cpu_observed_infra_host_vcpu_opentelemetry_sum, +infra_cpu_sum, +infra_edge_monitoring_devices_top99p, +infra_host_basic_infra_basic_agent_top99p, +infra_host_basic_infra_basic_vsphere_top99p, +infra_host_basic_top99p, +infra_host_top99p, +infra_storage_mgmt_objects_count_avg, +ingest_points_sum, +ingested_events_bytes_sum, +iot_apm_host_sum, +iot_apm_host_top99p, +iot_device_sum, +iot_device_top99p, +llm_observability_15day_retention_spans_sum, +llm_observability_30day_retention_spans_sum, +llm_observability_60day_retention_spans_sum, +llm_observability_90day_retention_spans_sum, +llm_observability_min_spend_sum, +llm_observability_sum, +logs_archive_search_gb_scanned_sum, +metric_names_sum, +mobile_rum_lite_session_count_sum, +mobile_rum_session_count_android_sum, +mobile_rum_session_count_flutter_sum, +mobile_rum_session_count_ios_sum, +mobile_rum_session_count_reactnative_sum, +mobile_rum_session_count_roku_sum, +mobile_rum_session_count_sum, +mobile_rum_units_sum, +ndm_netflow_events_sum, +netflow_indexed_events_count_sum, +network_device_wireless_top99p, +network_path_sum, +npm_host_top99p, +observability_pipelines_bytes_processed_sum, +oci_host_sum, +oci_host_top99p, +on_call_seat_hwm, +online_archive_events_count_sum, +opentelemetry_apm_host_top99p, +opentelemetry_host_top99p, +orgs, +product_analytics_sum, +profiling_aas_count_top99p, +profiling_host_top99p, +proxmox_host_sum, +proxmox_host_top99p, +published_app_hwm, +rum_browser_and_mobile_session_count, +rum_browser_legacy_session_count_sum, +rum_browser_lite_session_count_sum, +rum_browser_replay_session_count_sum, +rum_indexed_sessions_sum, +rum_ingested_sessions_sum, +rum_lite_session_count_sum, +rum_mobile_legacy_session_count_android_sum, +rum_mobile_legacy_session_count_flutter_sum, +rum_mobile_legacy_session_count_ios_sum, +rum_mobile_legacy_session_count_reactnative_sum, +rum_mobile_legacy_session_count_roku_sum, +rum_mobile_lite_session_count_android_sum, +rum_mobile_lite_session_count_flutter_sum, +rum_mobile_lite_session_count_ios_sum, +rum_mobile_lite_session_count_kotlinmultiplatform_sum, +rum_mobile_lite_session_count_reactnative_sum, +rum_mobile_lite_session_count_roku_sum, +rum_mobile_lite_session_count_unity_sum, +rum_mobile_replay_session_count_android_sum, +rum_mobile_replay_session_count_ios_sum, +rum_mobile_replay_session_count_kotlinmultiplatform_sum, +rum_mobile_replay_session_count_reactnative_sum, +rum_replay_session_count_sum, +rum_session_count_sum, +rum_session_replay_add_on_sum, +rum_total_session_count_sum, +rum_units_sum, +sca_fargate_count_avg, +sca_fargate_count_hwm, +sds_apm_scanned_bytes_sum, +sds_events_scanned_bytes_sum, +sds_logs_scanned_bytes_sum, +sds_rum_scanned_bytes_sum, +sds_total_scanned_bytes_sum, +serverless_apps_apm_apm_azure_appservice_instances_avg, +serverless_apps_apm_apm_azure_azurefunction_instances_avg, +serverless_apps_apm_apm_azure_containerapp_instances_avg, +serverless_apps_apm_apm_fargate_ecs_tasks_avg, +serverless_apps_apm_apm_gcp_cloudfunction_instances_avg, +serverless_apps_apm_apm_gcp_cloudrun_instances_avg, +serverless_apps_apm_apm_gcp_gke_autopilot_pods_avg, +serverless_apps_apm_avg, +serverless_apps_apm_excl_fargate_apm_azure_appservice_instances_avg, +serverless_apps_apm_excl_fargate_apm_azure_azurefunction_instances_avg, +serverless_apps_apm_excl_fargate_apm_azure_containerapp_instances_avg, +serverless_apps_apm_excl_fargate_apm_gcp_cloudfunction_instances_avg, +serverless_apps_apm_excl_fargate_apm_gcp_cloudrun_instances_avg, +serverless_apps_apm_excl_fargate_apm_gcp_gke_autopilot_pods_avg, +serverless_apps_apm_excl_fargate_avg, +serverless_apps_azure_container_app_instances_avg, +serverless_apps_azure_count_avg, +serverless_apps_azure_function_app_instances_avg, +serverless_apps_azure_web_app_instances_avg, +serverless_apps_dsm_fargate_tasks_avg, +serverless_apps_ecs_avg, +serverless_apps_eks_avg, +serverless_apps_excl_fargate_avg, +serverless_apps_excl_fargate_azure_container_app_instances_avg, +serverless_apps_excl_fargate_azure_function_app_instances_avg, +serverless_apps_excl_fargate_azure_web_app_instances_avg, +serverless_apps_excl_fargate_google_cloud_functions_instances_avg, +serverless_apps_excl_fargate_google_cloud_run_instances_avg, +serverless_apps_excl_fargate_infra_gcp_gke_autopilot_pods_avg, +serverless_apps_google_cloud_functions_instances_avg, +serverless_apps_google_cloud_run_instances_avg, +serverless_apps_google_count_avg, +serverless_apps_infra_gcp_gke_autopilot_pods_avg, +serverless_apps_total_count_avg, +siem_12mo_retention_sum, +siem_6mo_retention_sum, +siem_analyzed_logs_add_on_count_sum, +snmp_device_count_sum, +snmp_device_count_top99p, +synthetics_browser_check_calls_count_sum, +synthetics_check_calls_count_sum, +synthetics_mobile_test_runs_sum, +synthetics_parallel_testing_max_slots_hwm, +trace_search_indexed_events_count_sum, +twol_ingested_events_bytes_sum, +universal_service_monitoring_host_top99p, +vsphere_host_top99p, +vuln_management_host_count_top99p, +workflow_executions_usage_sum +FROM datadog.organization.usage_summary +WHERE start_month = '{{ start_month }}' -- required +AND end_month = '{{ end_month }}' +AND include_org_details = '{{ include_org_details }}' +AND include_connected_accounts = '{{ include_connected_accounts }}' +; +``` + + diff --git a/website/docs/services/organization/usage_summary_available_fields/index.md b/website/docs/services/organization/usage_summary_available_fields/index.md new file mode 100644 index 0000000..e258a68 --- /dev/null +++ b/website/docs/services/organization/usage_summary_available_fields/index.md @@ -0,0 +1,141 @@ +--- +title: usage_summary_available_fields +hide_title: false +hide_table_of_contents: false +keywords: + - usage_summary_available_fields + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_summary_available_fields resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +OK. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier for the discovery scope. Always `"all"`. (example: all)
objectThe lists of field names returned by `GET /api/v1/usage/summary` at each of its three response levels. Each list contains every key the data endpoint emits—both typed fields declared in the OpenAPI spec and untyped keys exposed through `additionalProperties`.
stringType of available-fields data. (usage_summary_available_fields) (default: usage_summary_available_fields)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List the field names returned by `GET /api/v1/usage/summary` at each of its<br />three response levels. Each list contains every key the data endpoint<br />emits—both typed fields declared in the OpenAPI spec and untyped keys<br />exposed through `additionalProperties` (the latter used for billing<br />dimensions and usage types added after the v1 schema freeze).<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/).<br /><br />Go example:<br /><br />```go<br />fields, _, err := api.GetUsageSummaryAvailableFields(ctx)<br />attr := fields.Data.GetAttributes()<br /><br />// resp is the *UsageSummaryResponse returned by api.GetUsageSummary(ctx, ...)<br />// Layer 1: UsageSummaryResponse<br />for _, key := range attr.GetResponseFields() {<br /> if val, ok := resp.AdditionalProperties[key]; ok {<br /> fmt.Println(key, val.(json.Number))<br /> }<br />}<br />// Layer 2: UsageSummaryDate (per month)<br />for _, date := range resp.GetUsage() {<br /> for _, key := range attr.GetDateFields() {<br /> if val, ok := date.AdditionalProperties[key]; ok {<br /> fmt.Println(key, val.(json.Number))<br /> }<br /> }<br /> // Layer 3: UsageSummaryDateOrg (per org per month)<br /> for _, org := range date.GetOrgs() {<br /> for _, key := range attr.GetDateOrgFields() {<br /> if val, ok := org.AdditionalProperties[key]; ok {<br /> fmt.Println(key, val.(json.Number))<br /> }<br /> }<br /> }<br />}<br />```
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List the field names returned by `GET /api/v1/usage/summary` at each of its<br />three response levels. Each list contains every key the data endpoint<br />emits—both typed fields declared in the OpenAPI spec and untyped keys<br />exposed through `additionalProperties` (the latter used for billing<br />dimensions and usage types added after the v1 schema freeze).<br /><br />This endpoint is only accessible for [parent-level organizations](https:​//docs.datadoghq.com/account_management/multi_organization/).<br /><br />Go example:<br /><br />```go<br />fields, _, err := api.GetUsageSummaryAvailableFields(ctx)<br />attr := fields.Data.GetAttributes()<br /><br />// resp is the *UsageSummaryResponse returned by api.GetUsageSummary(ctx, ...)<br />// Layer 1: UsageSummaryResponse<br />for _, key := range attr.GetResponseFields() {<br /> if val, ok := resp.AdditionalProperties[key]; ok {<br /> fmt.Println(key, val.(json.Number))<br /> }<br />}<br />// Layer 2: UsageSummaryDate (per month)<br />for _, date := range resp.GetUsage() {<br /> for _, key := range attr.GetDateFields() {<br /> if val, ok := date.AdditionalProperties[key]; ok {<br /> fmt.Println(key, val.(json.Number))<br /> }<br /> }<br /> // Layer 3: UsageSummaryDateOrg (per org per month)<br /> for _, org := range date.GetOrgs() {<br /> for _, key := range attr.GetDateOrgFields() {<br /> if val, ok := org.AdditionalProperties[key]; ok {<br /> fmt.Println(key, val.(json.Number))<br /> }<br /> }<br /> }<br />}<br />``` + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.usage_summary_available_fields +; +``` + + diff --git a/website/docs/services/organization/usage_top_avg_metrics/index.md b/website/docs/services/organization/usage_top_avg_metrics/index.md new file mode 100644 index 0000000..b555bb6 --- /dev/null +++ b/website/docs/services/organization/usage_top_avg_metrics/index.md @@ -0,0 +1,175 @@ +--- +title: usage_top_avg_metrics +hide_title: false +hide_table_of_contents: false +keywords: + - usage_top_avg_metrics + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_top_avg_metrics resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringContains the custom metric name.
integer (int64)Average number of timeseries per hour in which the metric occurs.
integer (int64)Maximum number of timeseries per hour in which the metric occurs.
stringContains the metric category. (standard, custom)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
month, day, names, limit, next_record_idGet all [custom metrics](https:​//docs.datadoghq.com/developers/metrics/custom_metrics/) by hourly average. Use the month parameter to get a month-to-date data resolution or use the day parameter to get a daily resolution. One of the two is required, and only one of the two is allowed.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (date-time)Datetime in ISO-8601 format, UTC, precise to day: [YYYY-MM-DD] for usage beginning at this hour. (Either month or day should be specified, but not both)
integer (int32)Maximum number of results to return (between 1 and 5000) - defaults to 500 results if limit not specified.
string (date-time)Datetime in ISO-8601 format, UTC, precise to month: [YYYY-MM] for usage beginning at this hour. (Either month or day should be specified, but not both)
arrayComma-separated list of metric names.
stringList following results with a next_record_id provided in the previous query.
+ +## `SELECT` examples + + + + +Get all [custom metrics](https://docs.datadoghq.com/developers/metrics/custom_metrics/) by hourly average. Use the month parameter to get a month-to-date data resolution or use the day parameter to get a daily resolution. One of the two is required, and only one of the two is allowed. + +```sql +SELECT +metric_name, +avg_metric_hour, +max_metric_hour, +metric_category +FROM datadog.organization.usage_top_avg_metrics +WHERE month = '{{ month }}' +AND day = '{{ day }}' +AND names = '{{ names }}' +AND limit = '{{ limit }}' +AND next_record_id = '{{ next_record_id }}' +; +``` + + diff --git a/website/docs/services/organization/usage_usage_attribution_types/index.md b/website/docs/services/organization/usage_usage_attribution_types/index.md new file mode 100644 index 0000000..2d74a9b --- /dev/null +++ b/website/docs/services/organization/usage_usage_attribution_types/index.md @@ -0,0 +1,139 @@ +--- +title: usage_usage_attribution_types +hide_title: false +hide_table_of_contents: false +keywords: + - usage_usage_attribution_types + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a usage_usage_attribution_types resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique ID of the response.
objectList of usage attribution types.
stringType of usage attribution types data. (usage_attribution_types) (default: usage_attribution_types)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get usage attribution types.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get usage attribution types. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.usage_usage_attribution_types +; +``` + + diff --git a/website/docs/services/organization/user_authorized_client_clients/index.md b/website/docs/services/organization/user_authorized_client_clients/index.md new file mode 100644 index 0000000..cc1c962 --- /dev/null +++ b/website/docs/services/organization/user_authorized_client_clients/index.md @@ -0,0 +1,107 @@ +--- +title: user_authorized_client_clients +hide_title: false +hide_table_of_contents: false +keywords: + - user_authorized_client_clients + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_authorized_client_clients resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
client_idDisable all authorizations the current user has granted to the specified OAuth2 client.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the OAuth2 client.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `DELETE` examples + + + + +Disable all authorizations the current user has granted to the specified OAuth2 client. + +```sql +DELETE FROM datadog.organization.user_authorized_client_clients +WHERE client_id = '{{ client_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/user_authorized_clients/index.md b/website/docs/services/organization/user_authorized_clients/index.md new file mode 100644 index 0000000..896a4bb --- /dev/null +++ b/website/docs/services/organization/user_authorized_clients/index.md @@ -0,0 +1,266 @@ +--- +title: user_authorized_clients +hide_title: false +hide_table_of_contents: false +keywords: + - user_authorized_clients + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_authorized_clients resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the user authorized client. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a user authorized client.
objectRelationships for a user authorized client.
stringThe resource type for user authorized clients. (user_authorized_clients) (example: user_authorized_clients)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the user authorized client. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of a user authorized client.
objectRelationships for a user authorized client.
stringThe resource type for user authorized clients. (user_authorized_clients) (example: user_authorized_clients)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_authorized_client_idGet a single OAuth2 client authorization for the current user.
page[size], page[number], filter, filter[disabled], includeGet a list of all OAuth2 clients authorized by the current user.
user_authorized_client_idDisable the current user's authorization for the specified OAuth2 client.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the user authorized client.
stringFilter results by client name, app title, or app description.
stringFilter results by the user-level disabled status.
stringComma-separated list of related resources to include. Options: `oauth2_client`, `oauth2_client.app`.
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a single OAuth2 client authorization for the current user. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.user_authorized_clients +WHERE user_authorized_client_id = '{{ user_authorized_client_id }}' -- required +; +``` + + + +Get a list of all OAuth2 clients authorized by the current user. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.organization.user_authorized_clients +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND filter = '{{ filter }}' +AND filter[disabled] = '{{ filter[disabled] }}' +AND include = '{{ include }}' +; +``` + + + + +## `DELETE` examples + + + + +Disable the current user's authorization for the specified OAuth2 client. + +```sql +DELETE FROM datadog.organization.user_authorized_clients +WHERE user_authorized_client_id = '{{ user_authorized_client_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/user_identity_providers/index.md b/website/docs/services/organization/user_identity_providers/index.md new file mode 100644 index 0000000..92ebc07 --- /dev/null +++ b/website/docs/services/organization/user_identity_providers/index.md @@ -0,0 +1,145 @@ +--- +title: user_identity_providers +hide_title: false +hide_table_of_contents: false +keywords: + - user_identity_providers + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_identity_providers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the identity provider. (example: 00000000-0000-0000-0000-000000000001)
objectAttributes of an identity provider override for a user.
stringThe resource type for identity providers. (identity_providers) (example: identity_providers)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_idGet the identity provider overrides for a specific user in the organization.<br />When a user has no overrides set, they use the organization's default identity providers.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the user.
+ +## `SELECT` examples + + + + +Get the identity provider overrides for a specific user in the organization.<br />When a user has no overrides set, they use the organization's default identity providers. + +```sql +SELECT +id, +attributes, +type +FROM datadog.organization.user_identity_providers +WHERE user_id = '{{ user_id }}' -- required +; +``` + + diff --git a/website/docs/services/organization/user_invitations/index.md b/website/docs/services/organization/user_invitations/index.md new file mode 100644 index 0000000..9f116c5 --- /dev/null +++ b/website/docs/services/organization/user_invitations/index.md @@ -0,0 +1,107 @@ +--- +title: user_invitations +hide_title: false +hide_table_of_contents: false +keywords: + - user_invitations + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_invitations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_idCancel all pending invitations for a specified user.<br />Requires the `user_access_invite` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The UUID of the user whose pending invitations should be canceled.
+ +## `DELETE` examples + + + + +Cancel all pending invitations for a specified user.<br />Requires the `user_access_invite` permission. + +```sql +DELETE FROM datadog.organization.user_invitations +WHERE user_id = '{{ user_id }}' --required +; +``` + + diff --git a/website/docs/services/organization/user_organizations/index.md b/website/docs/services/organization/user_organizations/index.md index bb3d74a..cb4fb4b 100644 --- a/website/docs/services/organization/user_organizations/index.md +++ b/website/docs/services/organization/user_organizations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a user_organizations resou ## Overview - +
Nameuser_organizations
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Users resource type. (default: users, example: users) + Users resource type. (users) (default: users, example: users) @@ -91,9 +92,9 @@ The following methods are available for this resource: - user_id, region + user_id - Get a user organization. Returns the user information and all organizations
joined by this user. + Get a user organization. Returns the user information and all organizations<br />joined by this user. @@ -111,10 +112,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -134,7 +135,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a user organization. Returns the user information and all organizations
joined by this user. +Get a user organization. Returns the user information and all organizations<br />joined by this user. ```sql SELECT @@ -144,7 +145,6 @@ relationships, type FROM datadog.organization.user_organizations WHERE user_id = '{{ user_id }}' -- required -AND region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/organization/user_permissions/index.md b/website/docs/services/organization/user_permissions/index.md index 95ef099..8387646 100644 --- a/website/docs/services/organization/user_permissions/index.md +++ b/website/docs/services/organization/user_permissions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a user_permissions resourc ## Overview - +
Nameuser_permissions
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Permissions resource type. (default: permissions, example: permissions) + Permissions resource type. (permissions) (default: permissions, example: permissions) @@ -86,9 +87,9 @@ The following methods are available for this resource: - user_id, region + user_id - Get a user permission set. Returns a list of the user’s permissions
granted by the associated user's roles. + Get a user permission set. Returns a list of the user’s permissions<br />granted by the associated user's roles. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -129,7 +130,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a user permission set. Returns a list of the user’s permissions
granted by the associated user's roles. +Get a user permission set. Returns a list of the user’s permissions<br />granted by the associated user's roles. ```sql SELECT @@ -138,7 +139,6 @@ attributes, type FROM datadog.organization.user_permissions WHERE user_id = '{{ user_id }}' -- required -AND region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/organization/user_relationship_identity_providers/index.md b/website/docs/services/organization/user_relationship_identity_providers/index.md new file mode 100644 index 0000000..f987cce --- /dev/null +++ b/website/docs/services/organization/user_relationship_identity_providers/index.md @@ -0,0 +1,110 @@ +--- +title: user_relationship_identity_providers +hide_title: false +hide_table_of_contents: false +keywords: + - user_relationship_identity_providers + - organization + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a user_relationship_identity_providers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_id, dataSet the identity provider overrides for a specific user in the organization.<br />Pass an empty list to remove all overrides, reverting the user to the organization's<br />default identity providers.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the user.
+ +## `UPDATE` examples + + + + +Set the identity provider overrides for a specific user in the organization.<br />Pass an empty list to remove all overrides, reverting the user to the organization's<br />default identity providers. + +```sql +UPDATE datadog.organization.user_relationship_identity_providers +SET +data = '{{ data }}' +WHERE +user_id = '{{ user_id }}' --required +AND data = '{{ data }}' --required; +``` + + diff --git a/website/docs/services/organization/user_team_memberships/index.md b/website/docs/services/organization/user_team_memberships/index.md index efbb9de..2f660bf 100644 --- a/website/docs/services/organization/user_team_memberships/index.md +++ b/website/docs/services/organization/user_team_memberships/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a user_team_memberships re ## Overview - +
Nameuser_team_memberships
Name
TypeResource
Id
@@ -68,7 +69,7 @@ Represents a user's association to a team string - Team membership type (default: team_memberships, example: team_memberships) + Team membership type (team_memberships) (default: team_memberships, example: team_memberships) @@ -93,7 +94,7 @@ The following methods are available for this resource: - user_uuid, region + user_uuid Get a list of memberships for a user @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -146,7 +147,6 @@ relationships, type FROM datadog.organization.user_team_memberships WHERE user_uuid = '{{ user_uuid }}' -- required -AND region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/organization/users/index.md b/website/docs/services/organization/users/index.md index dea3f62..cd80cb9 100644 --- a/website/docs/services/organization/users/index.md +++ b/website/docs/services/organization/users/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a users resource. ## Overview - +
Nameusers
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Users resource type. (default: users, example: users) + Users resource type. (users) (default: users, example: users) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Users resource type. (default: users, example: users) + Users resource type. (users) (default: users, example: users) @@ -126,37 +127,44 @@ The following methods are available for this resource: - user_id, region + user_id Get a user in the organization specified by the user’s `user_id`. - region + page[size], page[number], sort, sort_dir, filter, filter[status] - Get the list of all users in the organization. This list includes
all users even if they are deactivated or unverified. + Get the list of all users in the organization. This list includes<br />all users even if they are deactivated or unverified. - region, data__data + data Create a user for your organization. - user_id, region, data__data + user_id, data - Edit a user. Can only be used with an application key belonging
to an administrator user. + Edit a user. Can only be used with an application key belonging<br />to an administrator user. + + + + + data + + Anonymize a list of users, removing their personal data. This operation is irreversible.<br />Requires the `user_access_manage` permission. - user_id, region + user_id - Disable a user. Can only be used with an application key belonging
to an administrator user. + Disable a user. Can only be used with an application key belonging<br />to an administrator user. @@ -174,10 +182,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -202,7 +210,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -238,13 +246,12 @@ relationships, type FROM datadog.organization.users WHERE user_id = '{{ user_id }}' -- required -AND region = '{{ region }}' -- required ; ```
-Get the list of all users in the organization. This list includes
all users even if they are deactivated or unverified. +Get the list of all users in the organization. This list includes<br />all users even if they are deactivated or unverified. ```sql SELECT @@ -253,8 +260,7 @@ attributes, relationships, type FROM datadog.organization.users -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND sort_dir = '{{ sort_dir }}' @@ -281,12 +287,10 @@ Create a user for your organization. ```sql INSERT INTO datadog.organization.users ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -295,18 +299,25 @@ included
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: users props: - - name: region - value: string - description: Required parameter for the users resource. - name: data - value: object description: | Object to create a user. -``` + value: + attributes: + email: "{{ email }}" + name: "{{ name }}" + title: "{{ title }}" + relationships: + roles: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -321,16 +332,15 @@ included > -Edit a user. Can only be used with an application key belonging
to an administrator user. +Edit a user. Can only be used with an application key belonging<br />to an administrator user. ```sql UPDATE datadog.organization.users SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE user_id = '{{ user_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -341,20 +351,35 @@ included; ## Lifecycle Methods +EXEC variables use wire (API) names. + + + +Anonymize a list of users, removing their personal data. This operation is irreversible.<br />Requires the `user_access_manage` permission. + +```sql +EXEC datadog.organization.users.anonymize_users +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + -Disable a user. Can only be used with an application key belonging
to an administrator user. +Disable a user. Can only be used with an application key belonging<br />to an administrator user. ```sql EXEC datadog.organization.users.disable_user -@user_id='{{ user_id }}' --required, -@region='{{ region }}' --required +@user_id='{{ user_id }}' --required ; ```
diff --git a/website/docs/services/remote_config/csm_threats_agent_policies/index.md b/website/docs/services/remote_config/csm_threats_agent_policies/index.md index 2d3f05f..7e1aab0 100644 --- a/website/docs/services/remote_config/csm_threats_agent_policies/index.md +++ b/website/docs/services/remote_config/csm_threats_agent_policies/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_threats_agent_policies -Namecsm_threats_agent_policies +Name TypeResource Id @@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource, must always be `policy` (default: policy, example: policy) + The type of the resource, must always be `policy` (policy) (default: policy, example: policy) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource, must always be `policy` (default: policy, example: policy) + The type of the resource, must always be `policy` (policy) (default: policy, example: policy) @@ -116,44 +117,37 @@ The following methods are available for this resource: - policy_id, region + policy_id - Get the details of a specific Workload Protection policy.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Get the details of a specific Workload Protection policy.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - region - Get the list of Workload Protection policies.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + + Get the list of Workload Protection policies.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - region, data__data + data - Create a new Workload Protection policy with the given parameters.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Create a new Workload Protection policy with the given parameters.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - policy_id, region, data__data + policy_id, data - Update a specific Workload Protection policy.
Returns the policy object when the request is successful.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Update a specific Workload Protection policy.<br />Returns the policy object when the request is successful.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - policy_id, region - - Delete a specific Workload Protection policy.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - - - - - region + policy_id - The download endpoint generates a Workload Protection policy file from your currently active
Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to
your agents to update the policy running in your environment.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Delete a specific Workload Protection policy.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. @@ -176,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the Agent policy (example: 6517fcc1-cec7-4394-a655-8d6e9d085255) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -195,7 +189,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the details of a specific Workload Protection policy.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Get the details of a specific Workload Protection policy.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql SELECT @@ -204,13 +198,12 @@ attributes, type FROM datadog.remote_config.csm_threats_agent_policies WHERE policy_id = '{{ policy_id }}' -- required -AND region = '{{ region }}' -- required ; ```
-Get the list of Workload Protection policies.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Get the list of Workload Protection policies.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql SELECT @@ -218,7 +211,6 @@ id, attributes, type FROM datadog.remote_config.csm_threats_agent_policies -WHERE region = '{{ region }}' -- required ; ```
@@ -236,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a new Workload Protection policy with the given parameters.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Create a new Workload Protection policy with the given parameters.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql INSERT INTO datadog.remote_config.csm_threats_agent_policies ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -253,18 +243,24 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: csm_threats_agent_policies props: - - name: region - value: string - description: Required parameter for the csm_threats_agent_policies resource. - name: data - value: object description: | Object for a single Agent rule -``` + value: + attributes: + description: "{{ description }}" + enabled: {{ enabled }} + hostTags: + - "{{ hostTags }}" + hostTagsLists: + - "{{ hostTagsLists }}" + name: "{{ name }}" + type: "{{ type }}" +`} +
@@ -279,16 +275,15 @@ data > -Update a specific Workload Protection policy.
Returns the policy object when the request is successful.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Update a specific Workload Protection policy.<br />Returns the policy object when the request is successful.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql UPDATE datadog.remote_config.csm_threats_agent_policies SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE policy_id = '{{ policy_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -306,33 +301,11 @@ data; > -Delete a specific Workload Protection policy.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Delete a specific Workload Protection policy.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql DELETE FROM datadog.remote_config.csm_threats_agent_policies WHERE policy_id = '{{ policy_id }}' --required -AND region = '{{ region }}' --required -; -``` -
- - - -## Lifecycle Methods - - - - -The download endpoint generates a Workload Protection policy file from your currently active
Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to
your agents to update the policy running in your environment.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - -```sql -EXEC datadog.remote_config.csm_threats_agent_policies.download_csmthreats_policy -@region='{{ region }}' --required ; ```
diff --git a/website/docs/services/remote_config/csm_threats_agent_rules/index.md b/website/docs/services/remote_config/csm_threats_agent_rules/index.md index 5251659..73968aa 100644 --- a/website/docs/services/remote_config/csm_threats_agent_rules/index.md +++ b/website/docs/services/remote_config/csm_threats_agent_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_threats_agent_rules ## Overview - +
Namecsm_threats_agent_rules
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule) + The type of the resource, must always be `agent_rule` (agent_rule) (default: agent_rule, example: agent_rule) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule) + The type of the resource, must always be `agent_rule` (agent_rule) (default: agent_rule, example: agent_rule) @@ -116,37 +117,37 @@ The following methods are available for this resource: - agent_rule_id, region + agent_rule_id policy_id - Get the details of a specific Workload Protection agent rule.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Get the details of a specific Workload Protection agent rule.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - region + policy_id - Get the list of Workload Protection agent rules.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Get the list of Workload Protection agent rules.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - region, data__data + data - Create a new Workload Protection agent rule with the given parameters.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Create a new Workload Protection agent rule with the given parameters.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - agent_rule_id, region, data__data + agent_rule_id, data policy_id - Update a specific Workload Protection Agent rule.
Returns the agent rule object when the request is successful.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Update a specific Workload Protection Agent rule.<br />Returns the agent rule object when the request is successful.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. - agent_rule_id, region + agent_rule_id policy_id - Delete a specific Workload Protection agent rule.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. + Delete a specific Workload Protection agent rule.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the Agent rule (example: 3b5-v82-ns6) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -193,7 +194,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the details of a specific Workload Protection agent rule.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Get the details of a specific Workload Protection agent rule.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql SELECT @@ -202,14 +203,13 @@ attributes, type FROM datadog.remote_config.csm_threats_agent_rules WHERE agent_rule_id = '{{ agent_rule_id }}' -- required -AND region = '{{ region }}' -- required AND policy_id = '{{ policy_id }}' ; ```
-Get the list of Workload Protection agent rules.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Get the list of Workload Protection agent rules.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql SELECT @@ -217,8 +217,7 @@ id, attributes, type FROM datadog.remote_config.csm_threats_agent_rules -WHERE region = '{{ region }}' -- required -AND policy_id = '{{ policy_id }}' +WHERE policy_id = '{{ policy_id }}' ; ```
@@ -236,16 +235,14 @@ AND policy_id = '{{ policy_id }}' > -Create a new Workload Protection agent rule with the given parameters.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Create a new Workload Protection agent rule with the given parameters.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql INSERT INTO datadog.remote_config.csm_threats_agent_rules ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -253,18 +250,55 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: csm_threats_agent_rules props: - - name: region - value: string - description: Required parameter for the csm_threats_agent_rules resource. - name: data - value: object description: | Object for a single Agent rule -``` + value: + attributes: + actions: + - filter: "{{ filter }}" + hash: + field: "{{ field }}" + kill: + signal: "{{ signal }}" + metadata: + image_tag: "{{ image_tag }}" + service: "{{ service }}" + short_image: "{{ short_image }}" + set: + append: {{ append }} + default_value: "{{ default_value }}" + expression: "{{ expression }}" + field: "{{ field }}" + inherited: {{ inherited }} + name: "{{ name }}" + scope: "{{ scope }}" + size: {{ size }} + ttl: {{ ttl }} + value: "{{ value }}" + agent_version: "{{ agent_version }}" + blocking: + - "{{ blocking }}" + description: "{{ description }}" + disabled: + - "{{ disabled }}" + enabled: {{ enabled }} + expression: "{{ expression }}" + filters: + - "{{ filters }}" + monitoring: + - "{{ monitoring }}" + name: "{{ name }}" + policy_id: "{{ policy_id }}" + product_tags: + - "{{ product_tags }}" + silent: {{ silent }} + type: "{{ type }}" +`} +
@@ -279,16 +313,15 @@ data > -Update a specific Workload Protection Agent rule.
Returns the agent rule object when the request is successful.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Update a specific Workload Protection Agent rule.<br />Returns the agent rule object when the request is successful.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql UPDATE datadog.remote_config.csm_threats_agent_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE agent_rule_id = '{{ agent_rule_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND policy_id = '{{ policy_id}}' RETURNING data; @@ -307,12 +340,11 @@ data; > -Delete a specific Workload Protection agent rule.

**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. +Delete a specific Workload Protection agent rule.<br /><br />**Note**: This endpoint is not available for the Government (US1-FED) site. Please reference the (US1-FED) specific resource below. ```sql DELETE FROM datadog.remote_config.csm_threats_agent_rules WHERE agent_rule_id = '{{ agent_rule_id }}' --required -AND region = '{{ region }}' --required AND policy_id = '{{ policy_id }}' ; ``` diff --git a/website/docs/services/remote_config/index.md b/website/docs/services/remote_config/index.md index 8386bf5..0cf4a24 100644 --- a/website/docs/services/remote_config/index.md +++ b/website/docs/services/remote_config/index.md @@ -18,7 +18,7 @@ remote_config service documentation. :::info[Service Summary] -total resources: __5__ +total resources: __6__ ::: @@ -27,10 +27,11 @@ total resources: __5__
\ No newline at end of file diff --git a/website/docs/services/remote_config/observability_pipelines/index.md b/website/docs/services/remote_config/observability_pipelines/index.md deleted file mode 100644 index fc28c38..0000000 --- a/website/docs/services/remote_config/observability_pipelines/index.md +++ /dev/null @@ -1,355 +0,0 @@ ---- -title: observability_pipelines -hide_title: false -hide_table_of_contents: false -keywords: - - observability_pipelines - - remote_config - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists an observability_pipelines resource. - -## Overview - - - - -
Nameobservability_pipelines
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringUnique identifier for the pipeline. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
objectDefines the pipeline’s name and its components (sources, processors, and destinations).
stringThe resource type identifier. For pipeline resources, this should always be set to `pipelines`. (default: pipelines, example: pipelines)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringUnique identifier for the pipeline. (example: 3fa85f64-5717-4562-b3fc-2c963f66afa6)
objectDefines the pipeline’s name and its components (sources, processors, and destinations).
stringThe resource type identifier. For pipeline resources, this should always be set to `pipelines`. (default: pipelines, example: pipelines)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
pipeline_id, regionGet a specific pipeline by its ID.
regionpage[size], page[number]Retrieve a list of pipelines.
region, data__dataCreate a new pipeline.
pipeline_id, region, data__dataUpdate a pipeline.
pipeline_id, regionDelete a pipeline.
region, dataValidates a pipeline configuration without creating or updating any resources.
Returns a list of validation errors, if any.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe ID of the pipeline to delete.
string(default: datadoghq.com)
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
- -## `SELECT` examples - - - - -Get a specific pipeline by its ID. - -```sql -SELECT -id, -attributes, -type -FROM datadog.remote_config.observability_pipelines -WHERE pipeline_id = '{{ pipeline_id }}' -- required -AND region = '{{ region }}' -- required -; -``` - - - -Retrieve a list of pipelines. - -```sql -SELECT -id, -attributes, -type -FROM datadog.remote_config.observability_pipelines -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' -AND page[number] = '{{ page[number] }}' -; -``` - - - - -## `INSERT` examples - - - - -Create a new pipeline. - -```sql -INSERT INTO datadog.remote_config.observability_pipelines ( -data__data, -region -) -SELECT -'{{ data }}' /* required */, -'{{ region }}' -RETURNING -data -; -``` - - - -```yaml -# Description fields are for documentation purposes -- name: observability_pipelines - props: - - name: region - value: string - description: Required parameter for the observability_pipelines resource. - - name: data - value: object - description: | - Contains the the pipeline configuration. -``` - - - - -## `REPLACE` examples - - - - -Update a pipeline. - -```sql -REPLACE datadog.remote_config.observability_pipelines -SET -data__data = '{{ data }}' -WHERE -pipeline_id = '{{ pipeline_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required -RETURNING -data; -``` - - - - -## `DELETE` examples - - - - -Delete a pipeline. - -```sql -DELETE FROM datadog.remote_config.observability_pipelines -WHERE pipeline_id = '{{ pipeline_id }}' --required -AND region = '{{ region }}' --required -; -``` - - - - -## Lifecycle Methods - - - - -Validates a pipeline configuration without creating or updating any resources.
Returns a list of validation errors, if any.
- -```sql -EXEC datadog.remote_config.observability_pipelines.validate_pipeline -@region='{{ region }}' --required -@@json= -'{ -"data": "{{ data }}" -}' -; -``` -
-
diff --git a/website/docs/services/remote_config/rum_configs/index.md b/website/docs/services/remote_config/rum_configs/index.md new file mode 100644 index 0000000..0746f3a --- /dev/null +++ b/website/docs/services/remote_config/rum_configs/index.md @@ -0,0 +1,184 @@ +--- +title: rum_configs +hide_title: false +hide_table_of_contents: false +keywords: + - rum_configs + - remote_config + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a rum_configs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the RUM SDK configuration. (example: abc12345-1234-5678-abcd-ef1234567890)
objectAttributes of the RUM SDK configuration.
objectMetadata associated with a RUM SDK configuration.
stringThe type of the resource. The value should always be `rum_sdk_config`. (rum_sdk_config) (default: rum_sdk_config, example: rum_sdk_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
config_idRetrieve a RUM SDK configuration by its identifier.
config_id, dataUpdate an existing RUM SDK configuration by its identifier.<br />Returns the updated configuration when successful.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the RUM SDK configuration. (example: abc12345-1234-5678-abcd-ef1234567890)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve a RUM SDK configuration by its identifier. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.remote_config.rum_configs +WHERE config_id = '{{ config_id }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Update an existing RUM SDK configuration by its identifier.<br />Returns the updated configuration when successful. + +```sql +REPLACE datadog.remote_config.rum_configs +SET +data = '{{ data }}' +WHERE +config_id = '{{ config_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/remote_config/waf_custom_rules/index.md b/website/docs/services/remote_config/waf_custom_rules/index.md index fa6c34b..08309f9 100644 --- a/website/docs/services/remote_config/waf_custom_rules/index.md +++ b/website/docs/services/remote_config/waf_custom_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a waf_custom_rules resourc ## Overview - +
Namewaf_custom_rules
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `custom_rule`. (default: custom_rule, example: custom_rule) + The type of the resource. The value should always be `custom_rule`. (custom_rule) (default: custom_rule, example: custom_rule) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `custom_rule`. (default: custom_rule, example: custom_rule) + The type of the resource. The value should always be `custom_rule`. (custom_rule) (default: custom_rule, example: custom_rule) @@ -116,35 +117,35 @@ The following methods are available for this resource: - custom_rule_id, region + custom_rule_id Retrieve a WAF custom rule by ID. - region + Retrieve a list of WAF custom rule. - region, data__data + data Create a new WAF custom rule with the given parameters. - custom_rule_id, region, data__data + custom_rule_id, data - Update a specific WAF custom Rule.
Returns the Custom Rule object when the request is successful. + Update a specific WAF custom Rule.<br />Returns the Custom Rule object when the request is successful. - custom_rule_id, region + custom_rule_id Delete a specific WAF custom rule. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the custom rule. (example: 3b5-v82-ns6) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.remote_config.waf_custom_rules WHERE custom_rule_id = '{{ custom_rule_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.remote_config.waf_custom_rules -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Create a new WAF custom rule with the given parameters. ```sql INSERT INTO datadog.remote_config.waf_custom_rules ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,47 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: waf_custom_rules props: - - name: region - value: string - description: Required parameter for the waf_custom_rules resource. - name: data - value: object description: | Object for a single WAF custom rule. -``` + value: + attributes: + action: + action: "{{ action }}" + parameters: + location: "{{ location }}" + status_code: {{ status_code }} + blocking: {{ blocking }} + conditions: + - operator: "{{ operator }}" + parameters: + data: "{{ data }}" + inputs: + - address: "{{ address }}" + key_path: "{{ key_path }}" + list: + - "{{ list }}" + options: + case_sensitive: {{ case_sensitive }} + min_length: {{ min_length }} + regex: "{{ regex }}" + type: "{{ type }}" + value: "{{ value }}" + enabled: {{ enabled }} + name: "{{ name }}" + path_glob: "{{ path_glob }}" + scope: + - env: "{{ env }}" + service: "{{ service }}" + tags: + category: "{{ category }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -272,16 +298,15 @@ data > -Update a specific WAF custom Rule.
Returns the Custom Rule object when the request is successful. +Update a specific WAF custom Rule.<br />Returns the Custom Rule object when the request is successful. ```sql REPLACE datadog.remote_config.waf_custom_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE custom_rule_id = '{{ custom_rule_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +329,6 @@ Delete a specific WAF custom rule. ```sql DELETE FROM datadog.remote_config.waf_custom_rules WHERE custom_rule_id = '{{ custom_rule_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/remote_config/waf_exclusion_filters/index.md b/website/docs/services/remote_config/waf_exclusion_filters/index.md index aec1275..d2ae699 100644 --- a/website/docs/services/remote_config/waf_exclusion_filters/index.md +++ b/website/docs/services/remote_config/waf_exclusion_filters/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a waf_exclusion_filters re ## Overview - +
Namewaf_exclusion_filters
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Type of the resource. The value should always be `exclusion_filter`. (default: exclusion_filter, example: exclusion_filter) + Type of the resource. The value should always be `exclusion_filter`. (exclusion_filter) (default: exclusion_filter, example: exclusion_filter) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Type of the resource. The value should always be `exclusion_filter`. (default: exclusion_filter, example: exclusion_filter) + Type of the resource. The value should always be `exclusion_filter`. (exclusion_filter) (default: exclusion_filter, example: exclusion_filter) @@ -116,35 +117,35 @@ The following methods are available for this resource: - exclusion_filter_id, region + exclusion_filter_id Retrieve a specific WAF exclusion filter using its identifier. - region + Retrieve a list of WAF exclusion filters. - region, data__data + data - Create a new WAF exclusion filter with the given parameters.

A request matched by an exclusion filter will be ignored by the Application Security WAF product.
Go to https://app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries). + Create a new WAF exclusion filter with the given parameters.<br /><br />A request matched by an exclusion filter will be ignored by the Application Security WAF product.<br />Go to https:​//app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries). - exclusion_filter_id, region, data__data + exclusion_filter_id, data - Update a specific WAF exclusion filter using its identifier.
Returns the exclusion filter object when the request is successful. + Update a specific WAF exclusion filter using its identifier.<br />Returns the exclusion filter object when the request is successful. - exclusion_filter_id, region + exclusion_filter_id Delete a specific WAF exclusion filter using its identifier. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The identifier of the WAF exclusion filter. (example: 3b5-v82-ns6) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.remote_config.waf_exclusion_filters WHERE exclusion_filter_id = '{{ exclusion_filter_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.remote_config.waf_exclusion_filters -WHERE region = '{{ region }}' -- required ; ``` @@ -229,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a new WAF exclusion filter with the given parameters.

A request matched by an exclusion filter will be ignored by the Application Security WAF product.
Go to https://app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries). +Create a new WAF exclusion filter with the given parameters.<br /><br />A request matched by an exclusion filter will be ignored by the Application Security WAF product.<br />Go to https:​//app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries). ```sql INSERT INTO datadog.remote_config.waf_exclusion_filters ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,33 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: waf_exclusion_filters props: - - name: region - value: string - description: Required parameter for the waf_exclusion_filters resource. - name: data - value: object description: | Object for creating a single WAF exclusion filter. -``` + value: + attributes: + description: "{{ description }}" + enabled: {{ enabled }} + ip_list: + - "{{ ip_list }}" + on_match: "{{ on_match }}" + parameters: + - "{{ parameters }}" + path_glob: "{{ path_glob }}" + rules_target: + - rule_id: "{{ rule_id }}" + tags: + category: "{{ category }}" + type: "{{ type }}" + scope: + - env: "{{ env }}" + service: "{{ service }}" + type: "{{ type }}" +`} + @@ -272,16 +284,15 @@ data > -Update a specific WAF exclusion filter using its identifier.
Returns the exclusion filter object when the request is successful. +Update a specific WAF exclusion filter using its identifier.<br />Returns the exclusion filter object when the request is successful. ```sql REPLACE datadog.remote_config.waf_exclusion_filters SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE exclusion_filter_id = '{{ exclusion_filter_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -304,7 +315,6 @@ Delete a specific WAF exclusion filter using its identifier. ```sql DELETE FROM datadog.remote_config.waf_exclusion_filters WHERE exclusion_filter_id = '{{ exclusion_filter_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/remote_config/waf_policies/index.md b/website/docs/services/remote_config/waf_policies/index.md new file mode 100644 index 0000000..853235d --- /dev/null +++ b/website/docs/services/remote_config/waf_policies/index.md @@ -0,0 +1,336 @@ +--- +title: waf_policies +hide_title: false +hide_table_of_contents: false +keywords: + - waf_policies + - remote_config + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a waf_policies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the policy. (example: 2857c47d-1e3a-4300-8b2f-dc24089c084b)
objectA WAF policy.
objectMetadata associated with the WAF policy.
stringThe type of the resource. The value should always be `policy`. (policy) (default: policy, example: policy)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the policy. (example: 2857c47d-1e3a-4300-8b2f-dc24089c084b)
objectA WAF policy.
objectMetadata associated with the WAF policy.
stringThe type of the resource. The value should always be `policy`. (policy) (default: policy, example: policy)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
policy_idRetrieve a WAF policy by ID.
Retrieve a list of WAF policies.
dataCreate a new WAF policy.
policy_id, dataUpdate a specific WAF policy.<br />Returns the policy object when the request is successful.
policy_idDelete a specific WAF policy.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the policy. (example: recommended)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve a WAF policy by ID. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.remote_config.waf_policies +WHERE policy_id = '{{ policy_id }}' -- required +; +``` + + + +Retrieve a list of WAF policies. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.remote_config.waf_policies +; +``` + + + + +## `INSERT` examples + + + + +Create a new WAF policy. + +```sql +INSERT INTO datadog.remote_config.waf_policies ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: waf_policies + props: + - name: data + description: | + Object for a single WAF policy. + value: + attributes: + basedOn: "{{ basedOn }}" + description: "{{ description }}" + isDefault: {{ isDefault }} + name: "{{ name }}" + protectionPresets: + - "{{ protectionPresets }}" + rules: + - blocking: {{ blocking }} + enabled: {{ enabled }} + extended_data_collection: {{ extended_data_collection }} + id: "{{ id }}" + rulesets: + - blocking: {{ blocking }} + enabled: {{ enabled }} + id: "{{ id }}" + scope: + - env: "{{ env }}" + service: "{{ service }}" + version: {{ version }} + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a specific WAF policy.<br />Returns the policy object when the request is successful. + +```sql +REPLACE datadog.remote_config.waf_policies +SET +data = '{{ data }}' +WHERE +policy_id = '{{ policy_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a specific WAF policy. + +```sql +DELETE FROM datadog.remote_config.waf_policies +WHERE policy_id = '{{ policy_id }}' --required +; +``` + + diff --git a/website/docs/services/security/agentless_scanning_account_azures/index.md b/website/docs/services/security/agentless_scanning_account_azures/index.md new file mode 100644 index 0000000..e0b44b9 --- /dev/null +++ b/website/docs/services/security/agentless_scanning_account_azures/index.md @@ -0,0 +1,309 @@ +--- +title: agentless_scanning_account_azures +hide_title: false +hide_table_of_contents: false +keywords: + - agentless_scanning_account_azures + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an agentless_scanning_account_azures resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Azure subscription ID. (example: )
objectAttributes for Azure scan options configuration.
stringThe type of the resource. The value should always be `azure_scan_options`. (azure_scan_options) (default: azure_scan_options, example: azure_scan_options)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Azure subscription ID. (example: )
objectAttributes for Azure scan options configuration.
stringThe type of the resource. The value should always be `azure_scan_options`. (azure_scan_options) (default: azure_scan_options, example: azure_scan_options)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
subscription_idFetches the Agentless scan options for an activated subscription.
Fetches the scan options configured for Azure accounts.
Activate Agentless scan options for an Azure subscription.
subscription_idUpdate the Agentless scan options for an activated subscription.
subscription_idDelete Agentless scan options for an Azure subscription.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe Azure subscription ID.
+ +## `SELECT` examples + + + + +Fetches the Agentless scan options for an activated subscription. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.agentless_scanning_account_azures +WHERE subscription_id = '{{ subscription_id }}' -- required +; +``` + + + +Fetches the scan options configured for Azure accounts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.agentless_scanning_account_azures +; +``` + + + + +## `INSERT` examples + + + + +Activate Agentless scan options for an Azure subscription. + +```sql +INSERT INTO datadog.security.agentless_scanning_account_azures ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: agentless_scanning_account_azures + props: + - name: data + description: | + Single Azure scan options entry. + value: + attributes: + compliance_host: {{ compliance_host }} + function: {{ function }} + vuln_containers_os: {{ vuln_containers_os }} + vuln_host_os: {{ vuln_host_os }} + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the Agentless scan options for an activated subscription. + +```sql +UPDATE datadog.security.agentless_scanning_account_azures +SET +data = '{{ data }}' +WHERE +subscription_id = '{{ subscription_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete Agentless scan options for an Azure subscription. + +```sql +DELETE FROM datadog.security.agentless_scanning_account_azures +WHERE subscription_id = '{{ subscription_id }}' --required +; +``` + + diff --git a/website/docs/services/security/agentless_scanning_account_gcp/index.md b/website/docs/services/security/agentless_scanning_account_gcp/index.md new file mode 100644 index 0000000..d02fd65 --- /dev/null +++ b/website/docs/services/security/agentless_scanning_account_gcp/index.md @@ -0,0 +1,309 @@ +--- +title: agentless_scanning_account_gcp +hide_title: false +hide_table_of_contents: false +keywords: + - agentless_scanning_account_gcp + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an agentless_scanning_account_gcp resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe GCP project ID. (example: )
objectAttributes for GCP scan options configuration.
stringGCP scan options resource type. (gcp_scan_options) (default: gcp_scan_options, example: gcp_scan_options)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe GCP project ID. (example: )
objectAttributes for GCP scan options configuration.
stringGCP scan options resource type. (gcp_scan_options) (default: gcp_scan_options, example: gcp_scan_options)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_idFetches the Agentless scan options for an activated GCP project.
Fetches the scan options configured for all GCP projects.
Activate Agentless scan options for a GCP project.
project_idUpdate the Agentless scan options for an activated GCP project.
project_idDelete Agentless scan options for a GCP project.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe GCP project ID.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Fetches the Agentless scan options for an activated GCP project. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.agentless_scanning_account_gcp +WHERE project_id = '{{ project_id }}' -- required +; +``` + + + +Fetches the scan options configured for all GCP projects. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.agentless_scanning_account_gcp +; +``` + + + + +## `INSERT` examples + + + + +Activate Agentless scan options for a GCP project. + +```sql +INSERT INTO datadog.security.agentless_scanning_account_gcp ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: agentless_scanning_account_gcp + props: + - name: data + description: | + Single GCP scan options entry. + value: + attributes: + cloud_function: {{ cloud_function }} + compliance_host: {{ compliance_host }} + vuln_containers_os: {{ vuln_containers_os }} + vuln_host_os: {{ vuln_host_os }} + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the Agentless scan options for an activated GCP project. + +```sql +UPDATE datadog.security.agentless_scanning_account_gcp +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete Agentless scan options for a GCP project. + +```sql +DELETE FROM datadog.security.agentless_scanning_account_gcp +WHERE project_id = '{{ project_id }}' --required +; +``` + + diff --git a/website/docs/services/security/application_security_services/index.md b/website/docs/services/security/application_security_services/index.md new file mode 100644 index 0000000..6269498 --- /dev/null +++ b/website/docs/services/security/application_security_services/index.md @@ -0,0 +1,145 @@ +--- +title: application_security_services +hide_title: false +hide_table_of_contents: false +keywords: + - application_security_services + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an application_security_services resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the service, formatted as `<service>_<environment>`. (example: web-store_prod)
objectApplication Security details describing a service in a given environment.
stringThe type of the resource. The value should always be `service_env`. (service_env) (default: service_env, example: service_env)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
service_filterRetrieve Application Security details for services matching the given name.<br />Returns Application Security activation, compatibility, and product enablement<br />information for each matching `(service, environment)` pair, along with a count<br />of services that have Application Security Management (Threats) enabled.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the service to retrieve Application Security details for. Returns all matching services across environments. (example: web-store)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve Application Security details for services matching the given name.<br />Returns Application Security activation, compatibility, and product enablement<br />information for each matching `(service, environment)` pair, along with a count<br />of services that have Application Security Management (Threats) enabled. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.application_security_services +WHERE service_filter = '{{ service_filter }}' -- required +; +``` + + diff --git a/website/docs/services/security/aws_on_demand_tasks/index.md b/website/docs/services/security/aws_on_demand_tasks/index.md index f5c245e..fd9cc1c 100644 --- a/website/docs/services/security/aws_on_demand_tasks/index.md +++ b/website/docs/services/security/aws_on_demand_tasks/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_on_demand_tasks res ## Overview - +
Nameaws_on_demand_tasks
Name
TypeResource
Id
@@ -64,7 +65,7 @@ OK. string - The type of the on demand task. The value should always be `aws_resource`. (default: aws_resource, example: aws_resource) + The type of the on demand task. The value should always be `aws_resource`. (aws_resource) (default: aws_resource, example: aws_resource) @@ -93,7 +94,7 @@ OK. string - The type of the on demand task. The value should always be `aws_resource`. (default: aws_resource, example: aws_resource) + The type of the on demand task. The value should always be `aws_resource`. (aws_resource) (default: aws_resource, example: aws_resource) @@ -118,21 +119,21 @@ The following methods are available for this resource: - task_id, region + task_id Fetch the data of a specific on demand task. - region + Fetches the most recent 1000 AWS on demand tasks. - region, data__data + data Trigger the scan of an AWS resource with a high priority. Agentless scanning must be activated for the AWS account containing the resource to scan. @@ -152,10 +153,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -185,7 +186,6 @@ attributes, type FROM datadog.security.aws_on_demand_tasks WHERE task_id = '{{ task_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -199,7 +199,6 @@ id, attributes, type FROM datadog.security.aws_on_demand_tasks -WHERE region = '{{ region }}' -- required ; ``` @@ -221,12 +220,10 @@ Trigger the scan of an AWS resource with a high priority. Agentless scanning mus ```sql INSERT INTO datadog.security.aws_on_demand_tasks ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -234,17 +231,17 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: aws_on_demand_tasks props: - - name: region - value: string - description: Required parameter for the aws_on_demand_tasks resource. - name: data - value: object description: | Object for a single AWS on demand task. -``` + value: + attributes: + arn: "{{ arn }}" + type: "{{ type }}" +`} + diff --git a/website/docs/services/security/aws_scan_options/index.md b/website/docs/services/security/aws_scan_options/index.md index 90f2935..0a6d01d 100644 --- a/website/docs/services/security/aws_scan_options/index.md +++ b/website/docs/services/security/aws_scan_options/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an aws_scan_options resour ## Overview - +
Nameaws_scan_options
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `aws_scan_options`. (default: aws_scan_options, example: aws_scan_options) + The type of the resource. The value should always be `aws_scan_options`. (aws_scan_options) (default: aws_scan_options, example: aws_scan_options) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `aws_scan_options`. (default: aws_scan_options, example: aws_scan_options) + The type of the resource. The value should always be `aws_scan_options`. (aws_scan_options) (default: aws_scan_options, example: aws_scan_options) @@ -116,35 +117,35 @@ The following methods are available for this resource: - account_id, region + account_id Fetches the Agentless scan options for an activated account. - region + Fetches the scan options configured for AWS accounts. - region, data__data + data Activate Agentless scan options for an AWS account. - account_id, region, data__data + account_id, data Update the Agentless scan options for an activated account. - account_id, region + account_id Delete Agentless scan options for an AWS account. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of an AWS account. (example: 123456789012) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +198,6 @@ attributes, type FROM datadog.security.aws_scan_options WHERE account_id = '{{ account_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -211,7 +211,6 @@ id, attributes, type FROM datadog.security.aws_scan_options -WHERE region = '{{ region }}' -- required ; ``` @@ -233,12 +232,10 @@ Activate Agentless scan options for an AWS account. ```sql INSERT INTO datadog.security.aws_scan_options ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -246,18 +243,23 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: aws_scan_options props: - - name: region - value: string - description: Required parameter for the aws_scan_options resource. - name: data - value: object description: | Object for the scan options of a single AWS account. -``` + value: + attributes: + compliance_host: {{ compliance_host }} + lambda: {{ lambda }} + sensitive_data: {{ sensitive_data }} + vuln_containers_os: {{ vuln_containers_os }} + vuln_host_os: {{ vuln_host_os }} + id: "{{ id }}" + type: "{{ type }}" +`} + @@ -277,11 +279,10 @@ Update the Agentless scan options for an activated account. ```sql UPDATE datadog.security.aws_scan_options SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required; +AND data = '{{ data }}' --required; ``` @@ -302,7 +303,6 @@ Delete Agentless scan options for an AWS account. ```sql DELETE FROM datadog.security.aws_scan_options WHERE account_id = '{{ account_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/security/cloud_workload_security_agent_rules/index.md b/website/docs/services/security/cloud_workload_security_agent_rules/index.md index 96067b8..3cbe491 100644 --- a/website/docs/services/security/cloud_workload_security_agent_rules/index.md +++ b/website/docs/services/security/cloud_workload_security_agent_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a cloud_workload_security_agent_r ## Overview - +
Namecloud_workload_security_agent_rules
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule) + The type of the resource, must always be `agent_rule` (agent_rule) (default: agent_rule, example: agent_rule) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource, must always be `agent_rule` (default: agent_rule, example: agent_rule) + The type of the resource, must always be `agent_rule` (agent_rule) (default: agent_rule, example: agent_rule) @@ -116,44 +117,37 @@ The following methods are available for this resource: - agent_rule_id, region + agent_rule_id - Get the details of a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site. + Get the details of a specific agent rule.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. - region - Get the list of agent rules.

**Note**: This endpoint should only be used for the Government (US1-FED) site. + + Get the list of agent rules.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. - region, data__data + data - Create a new agent rule with the given parameters.

**Note**: This endpoint should only be used for the Government (US1-FED) site. + Create a new agent rule with the given parameters.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. - agent_rule_id, region, data__data + agent_rule_id, data - Update a specific agent rule.
Returns the agent rule object when the request is successful.

**Note**: This endpoint should only be used for the Government (US1-FED) site. + Update a specific agent rule.<br />Returns the agent rule object when the request is successful.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. - agent_rule_id, region - - Delete a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site. - - - - - region + agent_rule_id - The download endpoint generates a Workload Protection policy file from your currently active
Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to
your agents to update the policy running in your environment.

**Note**: This endpoint should only be used for the Government (US1-FED) site. + Delete a specific agent rule.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. @@ -176,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the Agent rule (example: 3b5-v82-ns6) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -195,7 +189,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the details of a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site. +Get the details of a specific agent rule.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. ```sql SELECT @@ -204,13 +198,12 @@ attributes, type FROM datadog.security.cloud_workload_security_agent_rules WHERE agent_rule_id = '{{ agent_rule_id }}' -- required -AND region = '{{ region }}' -- required ; ```
-Get the list of agent rules.

**Note**: This endpoint should only be used for the Government (US1-FED) site. +Get the list of agent rules.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. ```sql SELECT @@ -218,7 +211,6 @@ id, attributes, type FROM datadog.security.cloud_workload_security_agent_rules -WHERE region = '{{ region }}' -- required ; ```
@@ -236,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a new agent rule with the given parameters.

**Note**: This endpoint should only be used for the Government (US1-FED) site. +Create a new agent rule with the given parameters.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. ```sql INSERT INTO datadog.security.cloud_workload_security_agent_rules ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -253,18 +243,55 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: cloud_workload_security_agent_rules props: - - name: region - value: string - description: Required parameter for the cloud_workload_security_agent_rules resource. - name: data - value: object description: | Object for a single Agent rule -``` + value: + attributes: + actions: + - filter: "{{ filter }}" + hash: + field: "{{ field }}" + kill: + signal: "{{ signal }}" + metadata: + image_tag: "{{ image_tag }}" + service: "{{ service }}" + short_image: "{{ short_image }}" + set: + append: {{ append }} + default_value: "{{ default_value }}" + expression: "{{ expression }}" + field: "{{ field }}" + inherited: {{ inherited }} + name: "{{ name }}" + scope: "{{ scope }}" + size: {{ size }} + ttl: {{ ttl }} + value: "{{ value }}" + agent_version: "{{ agent_version }}" + blocking: + - "{{ blocking }}" + description: "{{ description }}" + disabled: + - "{{ disabled }}" + enabled: {{ enabled }} + expression: "{{ expression }}" + filters: + - "{{ filters }}" + monitoring: + - "{{ monitoring }}" + name: "{{ name }}" + policy_id: "{{ policy_id }}" + product_tags: + - "{{ product_tags }}" + silent: {{ silent }} + type: "{{ type }}" +`} + @@ -279,16 +306,15 @@ data > -Update a specific agent rule.
Returns the agent rule object when the request is successful.

**Note**: This endpoint should only be used for the Government (US1-FED) site. +Update a specific agent rule.<br />Returns the agent rule object when the request is successful.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. ```sql UPDATE datadog.security.cloud_workload_security_agent_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE agent_rule_id = '{{ agent_rule_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -306,33 +332,11 @@ data; > -Delete a specific agent rule.

**Note**: This endpoint should only be used for the Government (US1-FED) site. +Delete a specific agent rule.<br /><br />**Note**: This endpoint should only be used for the Government (US1-FED) site. ```sql DELETE FROM datadog.security.cloud_workload_security_agent_rules WHERE agent_rule_id = '{{ agent_rule_id }}' --required -AND region = '{{ region }}' --required -; -``` -
- - - -## Lifecycle Methods - - - - -The download endpoint generates a Workload Protection policy file from your currently active
Workload Protection agent rules, and downloads them as a `.policy` file. This file can then be deployed to
your agents to update the policy running in your environment.

**Note**: This endpoint should only be used for the Government (US1-FED) site. - -```sql -EXEC datadog.security.cloud_workload_security_agent_rules.download_cloud_workload_policy_file -@region='{{ region }}' --required ; ```
diff --git a/website/docs/services/security/csm_agents/index.md b/website/docs/services/security/csm_agents/index.md index 6b44844..1884eb3 100644 --- a/website/docs/services/security/csm_agents/index.md +++ b/website/docs/services/security/csm_agents/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_agents resource. ## Overview - +
Namecsm_agents
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `datadog_agent`. (default: datadog_agent, example: datadog_agent) + The type of the resource. The value should always be `datadog_agent`. (datadog_agent) (default: datadog_agent, example: datadog_agent) @@ -86,7 +87,7 @@ The following methods are available for this resource: - region + page, size, query, order_direction Get the list of all CSM Agents running on your hosts and containers. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -152,8 +153,7 @@ id, attributes, type FROM datadog.security.csm_agents -WHERE region = '{{ region }}' -- required -AND page = '{{ page }}' +WHERE page = '{{ page }}' AND size = '{{ size }}' AND query = '{{ query }}' AND order_direction = '{{ order_direction }}' diff --git a/website/docs/services/security/csm_cloud_accounts_coverage_analysis/index.md b/website/docs/services/security/csm_cloud_accounts_coverage_analysis/index.md index 47563cf..c12b86a 100644 --- a/website/docs/services/security/csm_cloud_accounts_coverage_analysis/index.md +++ b/website/docs/services/security/csm_cloud_accounts_coverage_analysis/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_cloud_accounts_coverage_ana ## Overview - +
Namecsm_cloud_accounts_coverage_analysis
Name
TypeResource
Id
@@ -86,9 +87,9 @@ The following methods are available for this resource: - region - Get the CSM Coverage Analysis of your Cloud Accounts.
This is calculated based on the number of your Cloud Accounts that are
scanned for security issues. + + Get the CSM Coverage Analysis of your Cloud Accounts.<br />This is calculated based on the number of your Cloud Accounts that are<br />scanned for security issues. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -124,7 +125,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the CSM Coverage Analysis of your Cloud Accounts.
This is calculated based on the number of your Cloud Accounts that are
scanned for security issues. +Get the CSM Coverage Analysis of your Cloud Accounts.<br />This is calculated based on the number of your Cloud Accounts that are<br />scanned for security issues. ```sql SELECT @@ -132,7 +133,6 @@ id, attributes, type FROM datadog.security.csm_cloud_accounts_coverage_analysis -WHERE region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/security/csm_hosts_and_containers_coverage_analysis/index.md b/website/docs/services/security/csm_hosts_and_containers_coverage_analysis/index.md index cc459c5..dea4262 100644 --- a/website/docs/services/security/csm_hosts_and_containers_coverage_analysis/index.md +++ b/website/docs/services/security/csm_hosts_and_containers_coverage_analysis/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_hosts_and_containers_covera ## Overview - +
Namecsm_hosts_and_containers_coverage_analysis
Name
TypeResource
Id
@@ -86,9 +87,9 @@ The following methods are available for this resource: - region - Get the CSM Coverage Analysis of your Hosts and Containers.
This is calculated based on the number of agents running on your Hosts
and Containers with CSM feature(s) enabled. + + Get the CSM Coverage Analysis of your Hosts and Containers.<br />This is calculated based on the number of agents running on your Hosts<br />and Containers with CSM feature(s) enabled. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -124,7 +125,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the CSM Coverage Analysis of your Hosts and Containers.
This is calculated based on the number of agents running on your Hosts
and Containers with CSM feature(s) enabled. +Get the CSM Coverage Analysis of your Hosts and Containers.<br />This is calculated based on the number of agents running on your Hosts<br />and Containers with CSM feature(s) enabled. ```sql SELECT @@ -132,7 +133,6 @@ id, attributes, type FROM datadog.security.csm_hosts_and_containers_coverage_analysis -WHERE region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/security/csm_ownership_evidences/index.md b/website/docs/services/security/csm_ownership_evidences/index.md new file mode 100644 index 0000000..10800a8 --- /dev/null +++ b/website/docs/services/security/csm_ownership_evidences/index.md @@ -0,0 +1,157 @@ +--- +title: csm_ownership_evidences +hide_title: false +hide_table_of_contents: false +keywords: + - csm_ownership_evidences + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_ownership_evidences resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the resource the evidence applies to. (example: test-resource)
objectThe attributes of an ownership evidence response.
stringThe type of the ownership evidence resource. The value should always be `ownership_evidence`. (ownership_evidence) (default: ownership_evidence, example: ownership_evidence)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_id, owner_typeif-_none-_matchGet the evidence versions backing the current ownership inference for a resource and owner type.<br /><br />This endpoint supports weak ETag caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the evidence has not changed.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe owner type of the inference to retrieve evidence for.
stringThe identifier of the resource to retrieve evidence for.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA previously returned weak `ETag` value. When supplied and the evidence has not changed, the endpoint returns `304 Not Modified`. (wire: If-None-Match)
+ +## `SELECT` examples + + + + +Get the evidence versions backing the current ownership inference for a resource and owner type.<br /><br />This endpoint supports weak ETag caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the evidence has not changed. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownership_evidences +WHERE resource_id = '{{ resource_id }}' -- required +AND owner_type = '{{ owner_type }}' -- required +AND if-_none-_match = '{{ if-_none-_match }}' +; +``` + + diff --git a/website/docs/services/security/csm_ownership_feedbacks/index.md b/website/docs/services/security/csm_ownership_feedbacks/index.md new file mode 100644 index 0000000..11f197b --- /dev/null +++ b/website/docs/services/security/csm_ownership_feedbacks/index.md @@ -0,0 +1,149 @@ +--- +title: csm_ownership_feedbacks +hide_title: false +hide_table_of_contents: false +keywords: + - csm_ownership_feedbacks + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_ownership_feedbacks resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_id, owner_type, dataSubmit feedback on the current ownership inference for a resource and owner type. Valid actions are `confirm`, `reject`, `correct`, and `persist`.<br /><br />The request must include the current inference `checksum` in `inference_checksum`. If the checksum does not match the current inference state, the endpoint returns `409 Conflict`.<br /><br />When `action` is `correct`, `corrected_owner_handle` and `corrected_owner_type` are required.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe type of owner that the feedback applies to.
stringThe identifier of the resource that the feedback applies to.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Submit feedback on the current ownership inference for a resource and owner type. Valid actions are `confirm`, `reject`, `correct`, and `persist`.<br /><br />The request must include the current inference `checksum` in `inference_checksum`. If the checksum does not match the current inference state, the endpoint returns `409 Conflict`.<br /><br />When `action` is `correct`, `corrected_owner_handle` and `corrected_owner_type` are required. + +```sql +INSERT INTO datadog.security.csm_ownership_feedbacks ( +data, +resource_id, +owner_type +) +SELECT +'{{ data }}' /* required */, +'{{ resource_id }}', +'{{ owner_type }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: csm_ownership_feedbacks + props: + - name: resource_id + value: "{{ resource_id }}" + description: Required parameter for the csm_ownership_feedbacks resource. + - name: owner_type + value: "{{ owner_type }}" + description: Required parameter for the csm_ownership_feedbacks resource. + - name: data + description: | + The data wrapper for an ownership feedback request. + value: + attributes: + action: "{{ action }}" + actor_handle: "{{ actor_handle }}" + actor_type: "{{ actor_type }}" + corrected_owner_handle: "{{ corrected_owner_handle }}" + corrected_owner_type: "{{ corrected_owner_type }}" + inference_checksum: "{{ inference_checksum }}" + reason: "{{ reason }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/security/csm_ownership_histories/index.md b/website/docs/services/security/csm_ownership_histories/index.md new file mode 100644 index 0000000..b3f2e13 --- /dev/null +++ b/website/docs/services/security/csm_ownership_histories/index.md @@ -0,0 +1,217 @@ +--- +title: csm_ownership_histories +hide_title: false +hide_table_of_contents: false +keywords: + - csm_ownership_histories + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_ownership_histories resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe resource identifier for which history is returned. (example: res-1)
objectThe attributes of an ownership history response.
stringThe type of the ownership history resource. The value should always be `ownership_history`. (ownership_history) (default: ownership_history, example: ownership_history)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe resource identifier for which history is returned. (example: res-1)
objectThe attributes of an ownership history response.
stringThe type of the ownership history resource. The value should always be `ownership_history`. (ownership_history) (default: ownership_history, example: ownership_history)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_id, owner_typecursor, limitList inference history entries for a resource filtered by owner type, ordered from most recent to oldest. Uses cursor-based pagination.
resource_idcursor, limitList inference history entries for a resource across all owner types, ordered from most recent to oldest. Uses cursor-based pagination.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe owner type to filter history by.
stringThe identifier of the resource to retrieve inference history for.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringAn opaque, base64-encoded cursor token returned by a previous call in `pagination.next_cursor`. Omit to fetch the first page.
integer (int32)The maximum number of history entries to return per page.
+ +## `SELECT` examples + + + + +List inference history entries for a resource filtered by owner type, ordered from most recent to oldest. Uses cursor-based pagination. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownership_histories +WHERE resource_id = '{{ resource_id }}' -- required +AND owner_type = '{{ owner_type }}' -- required +AND cursor = '{{ cursor }}' +AND limit = '{{ limit }}' +; +``` + + + +List inference history entries for a resource across all owner types, ordered from most recent to oldest. Uses cursor-based pagination. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownership_histories +WHERE resource_id = '{{ resource_id }}' -- required +AND cursor = '{{ cursor }}' +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/security/csm_ownership_setting_untaggeds/index.md b/website/docs/services/security/csm_ownership_setting_untaggeds/index.md new file mode 100644 index 0000000..75f9c0a --- /dev/null +++ b/website/docs/services/security/csm_ownership_setting_untaggeds/index.md @@ -0,0 +1,139 @@ +--- +title: csm_ownership_setting_untaggeds +hide_title: false +hide_table_of_contents: false +keywords: + - csm_ownership_setting_untaggeds + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_ownership_setting_untaggeds resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the ownership untagged findings resource. (example: untagged)
objectThe counts of findings without a team tag by ownership confidence.
stringThe type of the ownership untagged findings resource. The value should always be `ownership_untagged_findings`. (ownership_untagged_findings) (default: ownership_untagged_findings, example: ownership_untagged_findings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Count findings with no team tag, grouped by ownership confidence level.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Count findings with no team tag, grouped by ownership confidence level. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownership_setting_untaggeds +; +``` + + diff --git a/website/docs/services/security/csm_ownership_settings/index.md b/website/docs/services/security/csm_ownership_settings/index.md new file mode 100644 index 0000000..c13750b --- /dev/null +++ b/website/docs/services/security/csm_ownership_settings/index.md @@ -0,0 +1,189 @@ +--- +title: csm_ownership_settings +hide_title: false +hide_table_of_contents: false +keywords: + - csm_ownership_settings + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_ownership_settings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the ownership settings resource. (example: settings)
objectThe attributes of the ownership settings response.
stringThe type of the ownership settings resource. The value should always be `ownership_settings`. (ownership_settings) (default: ownership_settings, example: ownership_settings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get ownership settings for the org. When settings are unset, the API returns the default opt-out configuration with `auto_tag` set to `true` and `confidence_level` set to `high`.
dataUpdate ownership settings for the org.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get ownership settings for the org. When settings are unset, the API returns the default opt-out configuration with `auto_tag` set to `true` and `confidence_level` set to `high`. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownership_settings +; +``` + + + + +## `INSERT` examples + + + + +Update ownership settings for the org. + +```sql +INSERT INTO datadog.security.csm_ownership_settings ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: csm_ownership_settings + props: + - name: data + description: | + The data wrapper for an ownership settings request. + value: + attributes: + auto_tag: {{ auto_tag }} + confidence_level: "{{ confidence_level }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/security/csm_ownerships/index.md b/website/docs/services/security/csm_ownerships/index.md new file mode 100644 index 0000000..63c8f46 --- /dev/null +++ b/website/docs/services/security/csm_ownerships/index.md @@ -0,0 +1,209 @@ +--- +title: csm_ownerships +hide_title: false +hide_table_of_contents: false +keywords: + - csm_ownerships + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_ownerships resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the inference, formatted as `resource_id:owner_type`. (example: test-resource:team)
objectThe attributes of a single ownership inference.
stringThe type of the ownership inference resource. The value should always be `ownership_inference`. (ownership_inference) (default: ownership_inference, example: ownership_inference)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe resource identifier associated with the returned inferences. (example: test-resource)
objectThe attributes of the ownership inferences collection response.
stringThe type of the ownership inferences collection resource. The value should always be `ownership_inferences`. (ownership_inferences) (default: ownership_inferences, example: ownership_inferences)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_id, owner_typeif-_none-_matchGet the current ownership inference for a resource for a specific owner type.<br /><br />This endpoint supports ETag-based caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the inference has not changed.
resource_idGet all current ownership inferences for a resource, one per owner type (`user`, `team`, `service`, `unknown`).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe owner type of the inference to retrieve.
stringThe identifier of the resource to retrieve ownership inferences for.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA previously returned `ETag` value. When supplied and the resource has not changed, the endpoint returns `304 Not Modified`. (wire: If-None-Match)
+ +## `SELECT` examples + + + + +Get the current ownership inference for a resource for a specific owner type.<br /><br />This endpoint supports ETag-based caching. Pass the previously returned `ETag` value in the `If-None-Match` request header to receive a `304 Not Modified` response when the inference has not changed. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownerships +WHERE resource_id = '{{ resource_id }}' -- required +AND owner_type = '{{ owner_type }}' -- required +AND if-_none-_match = '{{ if-_none-_match }}' +; +``` + + + +Get all current ownership inferences for a resource, one per owner type (`user`, `team`, `service`, `unknown`). + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_ownerships +WHERE resource_id = '{{ resource_id }}' -- required +; +``` + + diff --git a/website/docs/services/security/csm_serverless_agents/index.md b/website/docs/services/security/csm_serverless_agents/index.md index 07af911..561b302 100644 --- a/website/docs/services/security/csm_serverless_agents/index.md +++ b/website/docs/services/security/csm_serverless_agents/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_serverless_agents re ## Overview - +
Namecsm_serverless_agents
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `datadog_agent`. (default: datadog_agent, example: datadog_agent) + The type of the resource. The value should always be `datadog_agent`. (datadog_agent) (default: datadog_agent, example: datadog_agent) @@ -86,7 +87,7 @@ The following methods are available for this resource: - region + page, size, query, order_direction Get the list of all CSM Serverless Agents running on your hosts and containers. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -152,8 +153,7 @@ id, attributes, type FROM datadog.security.csm_serverless_agents -WHERE region = '{{ region }}' -- required -AND page = '{{ page }}' +WHERE page = '{{ page }}' AND size = '{{ size }}' AND query = '{{ query }}' AND order_direction = '{{ order_direction }}' diff --git a/website/docs/services/security/csm_serverless_coverage_analysis/index.md b/website/docs/services/security/csm_serverless_coverage_analysis/index.md index acd2d60..c4cca7f 100644 --- a/website/docs/services/security/csm_serverless_coverage_analysis/index.md +++ b/website/docs/services/security/csm_serverless_coverage_analysis/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a csm_serverless_coverage_analysi ## Overview - +
Namecsm_serverless_coverage_analysis
Name
TypeResource
Id
@@ -86,9 +87,9 @@ The following methods are available for this resource: - region - Get the CSM Coverage Analysis of your Serverless Resources.
This is calculated based on the number of agents running on your Serverless
Resources with CSM feature(s) enabled. + + Get the CSM Coverage Analysis of your Serverless Resources.<br />This is calculated based on the number of agents running on your Serverless<br />Resources with CSM feature(s) enabled. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -124,7 +125,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the CSM Coverage Analysis of your Serverless Resources.
This is calculated based on the number of agents running on your Serverless
Resources with CSM feature(s) enabled. +Get the CSM Coverage Analysis of your Serverless Resources.<br />This is calculated based on the number of agents running on your Serverless<br />Resources with CSM feature(s) enabled. ```sql SELECT @@ -132,7 +133,6 @@ id, attributes, type FROM datadog.security.csm_serverless_coverage_analysis -WHERE region = '{{ region }}' -- required ; ```
diff --git a/website/docs/services/security/csm_setting_agentless_host_facet_infos/index.md b/website/docs/services/security/csm_setting_agentless_host_facet_infos/index.md new file mode 100644 index 0000000..0ab3a54 --- /dev/null +++ b/website/docs/services/security/csm_setting_agentless_host_facet_infos/index.md @@ -0,0 +1,163 @@ +--- +title: csm_setting_agentless_host_facet_infos +hide_title: false +hide_table_of_contents: false +keywords: + - csm_setting_agentless_host_facet_infos + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_setting_agentless_host_facet_infos resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the facet. (example: cloud_provider)
objectAttributes of a facet info response, containing the value distribution for the requested facet.
objectMetadata for the facet info response.
stringThe JSON:API type for facet info resources. The value should always be `facet_info`. (facet_info) (default: facet_info, example: facet_info)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
facetsearch, queryGet the value distribution for a specific agentless host facet, with optional search and filtering.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe facet identifier to retrieve value distribution for. Valid values are `resource_name`, `account_id`, `resource_type`, `cloud_provider`, `has_vulnerability_scanning`, and `has_posture_management`.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA filter query to scope the facet value counts.
+ +## `SELECT` examples + + + + +Get the value distribution for a specific agentless host facet, with optional search and filtering. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.security.csm_setting_agentless_host_facet_infos +WHERE facet = '{{ facet }}' -- required +AND search = '{{ search }}' +AND query = '{{ query }}' +; +``` + + diff --git a/website/docs/services/security/csm_setting_agentless_host_facets/index.md b/website/docs/services/security/csm_setting_agentless_host_facets/index.md new file mode 100644 index 0000000..94ed246 --- /dev/null +++ b/website/docs/services/security/csm_setting_agentless_host_facets/index.md @@ -0,0 +1,139 @@ +--- +title: csm_setting_agentless_host_facets +hide_title: false +hide_table_of_contents: false +keywords: + - csm_setting_agentless_host_facets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_setting_agentless_host_facets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the facet, corresponding to the field path. (example: cloud_provider)
objectAttributes of an agentless host facet.
stringThe JSON:API type for agentless host facet resources. The value should always be `agentless_host_facet`. (agentless_host_facet) (default: agentless_host_facet, example: agentless_host_facet)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the list of available facets for filtering agentless hosts.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of available facets for filtering agentless hosts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_setting_agentless_host_facets +; +``` + + diff --git a/website/docs/services/security/csm_setting_agentless_hosts/index.md b/website/docs/services/security/csm_setting_agentless_hosts/index.md new file mode 100644 index 0000000..81a5991 --- /dev/null +++ b/website/docs/services/security/csm_setting_agentless_hosts/index.md @@ -0,0 +1,157 @@ +--- +title: csm_setting_agentless_hosts +hide_title: false +hide_table_of_contents: false +keywords: + - csm_setting_agentless_hosts + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_setting_agentless_hosts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe resource identifier of the agentless host. (example: i-0123456789abcdef0)
objectAttributes of an agentless host.
stringThe JSON:API type for agentless host resources. The value should always be `agentless_host`. (agentless_host) (default: agentless_host, example: agentless_host)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page, size, queryGet the list of agentless hosts for CSM, with optional pagination and filtering.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int32)The page index for pagination (zero-based).
stringA search query string to filter agentless hosts.
integer (int32)The number of agentless hosts to return per page.
+ +## `SELECT` examples + + + + +Get the list of agentless hosts for CSM, with optional pagination and filtering. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_setting_agentless_hosts +WHERE page = '{{ page }}' +AND size = '{{ size }}' +AND query = '{{ query }}' +; +``` + + diff --git a/website/docs/services/security/csm_setting_host_facet_infos/index.md b/website/docs/services/security/csm_setting_host_facet_infos/index.md new file mode 100644 index 0000000..cecebe2 --- /dev/null +++ b/website/docs/services/security/csm_setting_host_facet_infos/index.md @@ -0,0 +1,163 @@ +--- +title: csm_setting_host_facet_infos +hide_title: false +hide_table_of_contents: false +keywords: + - csm_setting_host_facet_infos + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_setting_host_facet_infos resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the facet. (example: cloud_provider)
objectAttributes of a facet info response, containing the value distribution for the requested facet.
objectMetadata for the facet info response.
stringThe JSON:API type for facet info resources. The value should always be `facet_info`. (facet_info) (default: facet_info, example: facet_info)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
facetsearch, queryGet the value distribution for a specific unified host facet, with optional search and filtering.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe facet identifier to retrieve value distribution for. Valid values include `resource_name`, `account_id`, `resource_type`, `cloud_provider`, `agentless_vulnerability_scanning`, `agentless_posture_management`, `hostname`, `agent_version`, `os`, `cluster_name`, `agent_posture_management`, `agent_cws_enabled`, `agent_csm_vm_hosts_enabled`, and `agent_csm_vm_containers_enabled`.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA filter query to scope the facet value counts.
+ +## `SELECT` examples + + + + +Get the value distribution for a specific unified host facet, with optional search and filtering. + +```sql +SELECT +id, +attributes, +meta, +type +FROM datadog.security.csm_setting_host_facet_infos +WHERE facet = '{{ facet }}' -- required +AND search = '{{ search }}' +AND query = '{{ query }}' +; +``` + + diff --git a/website/docs/services/security/csm_setting_host_facets/index.md b/website/docs/services/security/csm_setting_host_facets/index.md new file mode 100644 index 0000000..4b05588 --- /dev/null +++ b/website/docs/services/security/csm_setting_host_facets/index.md @@ -0,0 +1,139 @@ +--- +title: csm_setting_host_facets +hide_title: false +hide_table_of_contents: false +keywords: + - csm_setting_host_facets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_setting_host_facets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the facet, corresponding to the field path. (example: cloud_provider)
objectAttributes of an agentless host facet.
stringThe JSON:API type for unified host facet resources. The value should always be `unified_host_facet`. (unified_host_facet) (default: unified_host_facet, example: unified_host_facet)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the list of available facets for filtering unified hosts.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of available facets for filtering unified hosts. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_setting_host_facets +; +``` + + diff --git a/website/docs/services/security/csm_setting_hosts/index.md b/website/docs/services/security/csm_setting_hosts/index.md new file mode 100644 index 0000000..84dbf53 --- /dev/null +++ b/website/docs/services/security/csm_setting_hosts/index.md @@ -0,0 +1,157 @@ +--- +title: csm_setting_hosts +hide_title: false +hide_table_of_contents: false +keywords: + - csm_setting_hosts + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a csm_setting_hosts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe resource identifier of the unified host. (example: i-0123456789abcdef0)
objectAttributes of a unified host, combining data from agent and agentless sources.
stringThe JSON:API type for unified host resources. The value should always be `unified_host`. (unified_host) (default: unified_host, example: unified_host)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page, size, queryGet the list of unified hosts for CSM, combining agent and agentless host data, with optional pagination and filtering.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int32)The page index for pagination (zero-based).
stringA search query string to filter unified hosts.
integer (int32)The number of hosts to return per page.
+ +## `SELECT` examples + + + + +Get the list of unified hosts for CSM, combining agent and agentless host data, with optional pagination and filtering. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.csm_setting_hosts +WHERE page = '{{ page }}' +AND size = '{{ size }}' +AND query = '{{ query }}' +; +``` + + diff --git a/website/docs/services/security/custom_frameworks/index.md b/website/docs/services/security/custom_frameworks/index.md index 725b358..c59252d 100644 --- a/website/docs/services/security/custom_frameworks/index.md +++ b/website/docs/services/security/custom_frameworks/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a custom_frameworks resour ## Overview - +
Namecustom_frameworks
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value must be `custom_framework`. (default: custom_framework, example: custom_framework) + The type of the resource. The value must be `custom_framework`. (custom_framework) (default: custom_framework, example: custom_framework) @@ -86,28 +87,28 @@ The following methods are available for this resource: - handle, version, region + handle, version Get a custom framework. - region, data__data + data Create a custom framework. - handle, version, region, data__data + handle, version, data Update a custom framework. - handle, version, region + handle, version Delete a custom framework. @@ -132,10 +133,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The framework handle - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -165,7 +166,6 @@ type FROM datadog.security.custom_frameworks WHERE handle = '{{ handle }}' -- required AND version = '{{ version }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -187,12 +187,10 @@ Create a custom framework. ```sql INSERT INTO datadog.security.custom_frameworks ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -200,18 +198,25 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: custom_frameworks props: - - name: region - value: string - description: Required parameter for the custom_frameworks resource. - name: data - value: object description: | Contains type and attributes for custom frameworks. -``` + value: + attributes: + description: "{{ description }}" + handle: "{{ handle }}" + icon_url: "{{ icon_url }}" + name: "{{ name }}" + requirements: + - controls: "{{ controls }}" + name: "{{ name }}" + version: "{{ version }}" + type: "{{ type }}" +`} + @@ -231,12 +236,11 @@ Update a custom framework. ```sql REPLACE datadog.security.custom_frameworks SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE handle = '{{ handle }}' --required AND version = '{{ version }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -260,7 +264,6 @@ Delete a custom framework. DELETE FROM datadog.security.custom_frameworks WHERE handle = '{{ handle }}' --required AND version = '{{ version }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/security/filters/index.md b/website/docs/services/security/filters/index.md index bd845b9..e07ba56 100644 --- a/website/docs/services/security/filters/index.md +++ b/website/docs/services/security/filters/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a filters resource. ## Overview - +
Namefilters
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `security_filters`. (default: security_filters, example: security_filters) + The type of the resource. The value should always be `security_filters`. (security_filters) (default: security_filters, example: security_filters) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `security_filters`. (default: security_filters, example: security_filters) + The type of the resource. The value should always be `security_filters`. (security_filters) (default: security_filters, example: security_filters) @@ -116,35 +117,35 @@ The following methods are available for this resource: - security_filter_id, region + security_filter_id - Get the details of a specific security filter.

See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)
for more examples. + Get the details of a specific security filter.<br /><br />See the [security filter guide](https:​//docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)<br />for more examples. - region + Get the list of configured security filters with their definitions. - region, data__data + data - Create a security filter.

See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)
for more examples. + Create a security filter.<br /><br />See the [security filter guide](https:​//docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)<br />for more examples. - security_filter_id, region, data__data + security_filter_id, data - Update a specific security filter.
Returns the security filter object when the request is successful. + Update a specific security filter.<br />Returns the security filter object when the request is successful. - security_filter_id, region + security_filter_id Delete a specific security filter. @@ -164,16 +165,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the security filter. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -188,7 +189,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get the details of a specific security filter.

See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)
for more examples. +Get the details of a specific security filter.<br /><br />See the [security filter guide](https:​//docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)<br />for more examples. ```sql SELECT @@ -197,7 +198,6 @@ attributes, type FROM datadog.security.filters WHERE security_filter_id = '{{ security_filter_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -211,7 +211,6 @@ id, attributes, type FROM datadog.security.filters -WHERE region = '{{ region }}' -- required ; ``` @@ -229,16 +228,14 @@ WHERE region = '{{ region }}' -- required > -Create a security filter.

See the [security filter guide](https://docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)
for more examples. +Create a security filter.<br /><br />See the [security filter guide](https:​//docs.datadoghq.com/security_platform/guide/how-to-setup-security-filters-using-security-monitoring-api/)<br />for more examples. ```sql INSERT INTO datadog.security.filters ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, meta @@ -247,18 +244,24 @@ meta
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: filters props: - - name: region - value: string - description: Required parameter for the filters resource. - name: data - value: object description: | Object for a single security filter. -``` + value: + attributes: + exclusion_filters: + - name: "{{ name }}" + query: "{{ query }}" + filtered_data_type: "{{ filtered_data_type }}" + is_enabled: {{ is_enabled }} + name: "{{ name }}" + query: "{{ query }}" + type: "{{ type }}" +`} + @@ -273,16 +276,15 @@ meta > -Update a specific security filter.
Returns the security filter object when the request is successful. +Update a specific security filter.<br />Returns the security filter object when the request is successful. ```sql UPDATE datadog.security.filters SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE security_filter_id = '{{ security_filter_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, meta; @@ -306,7 +308,6 @@ Delete a specific security filter. ```sql DELETE FROM datadog.security.filters WHERE security_filter_id = '{{ security_filter_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/security/finding_automation_due_date_rules/index.md b/website/docs/services/security/finding_automation_due_date_rules/index.md new file mode 100644 index 0000000..6106c49 --- /dev/null +++ b/website/docs/services/security/finding_automation_due_date_rules/index.md @@ -0,0 +1,366 @@ +--- +title: finding_automation_due_date_rules +hide_title: false +hide_table_of_contents: false +keywords: + - finding_automation_due_date_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_automation_due_date_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successfully retrieved the due date rule + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the due date rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a due date rule returned by the API.
stringThe JSON:API type for due date rules. (due_date_rules) (example: due_date_rules)
+
+ + +Successfully retrieved the list of due date rules + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the due date rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a due date rule returned by the API.
stringThe JSON:API type for due date rules. (due_date_rules) (example: due_date_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet the details of a due date rule by ID.
page[size], page[number]Get all due date rules for the current organization.
dataCreate a new due date rule for the current organization.
rule_id, dataUpdate an existing due date rule by ID.
rule_idDelete an existing due date rule by ID.
dataReorder the list of due date rules for the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the due date rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The page number to return.
integer (int64)The number of rules per page. Maximum is 1000.
+ +## `SELECT` examples + + + + +Get the details of a due date rule by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_due_date_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + + +Get all due date rules for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_due_date_rules +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new due date rule for the current organization. + +```sql +INSERT INTO datadog.security.finding_automation_due_date_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_automation_due_date_rules + props: + - name: data + description: | + The data object for a due date rule create or update request. + value: + attributes: + action: + due_days_per_severity: + - due_in_days: {{ due_in_days }} + severity: "{{ severity }}" + due_from: "{{ due_from }}" + reason_description: "{{ reason_description }}" + enabled: {{ enabled }} + name: "{{ name }}" + rule: + finding_types: + - "{{ finding_types }}" + query: "{{ query }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing due date rule by ID. + +```sql +REPLACE datadog.security.finding_automation_due_date_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an existing due date rule by ID. + +```sql +DELETE FROM datadog.security.finding_automation_due_date_rules +WHERE rule_id = '{{ rule_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Reorder the list of due date rules for the current organization. + +```sql +EXEC datadog.security.finding_automation_due_date_rules.reorder_security_findings_automation_due_date_rules +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/finding_automation_mute_rules/index.md b/website/docs/services/security/finding_automation_mute_rules/index.md new file mode 100644 index 0000000..5280be4 --- /dev/null +++ b/website/docs/services/security/finding_automation_mute_rules/index.md @@ -0,0 +1,364 @@ +--- +title: finding_automation_mute_rules +hide_title: false +hide_table_of_contents: false +keywords: + - finding_automation_mute_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_automation_mute_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successfully retrieved the mute rule + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the mute rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a mute rule returned by the API.
stringThe JSON:API type for mute rules. (mute_rules) (example: mute_rules)
+
+ + +Successfully retrieved the list of mute rules + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the mute rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a mute rule returned by the API.
stringThe JSON:API type for mute rules. (mute_rules) (example: mute_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet the details of a mute rule by ID.
page[size], page[number]Get all mute rules for the current organization.
dataCreate a new mute rule for the current organization.
rule_id, dataUpdate an existing mute rule by ID.
rule_idDelete an existing mute rule by ID.
dataReorder the list of mute rules for the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the mute rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The page number to return.
integer (int64)The number of rules per page. Maximum is 1000.
+ +## `SELECT` examples + + + + +Get the details of a mute rule by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_mute_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + + +Get all mute rules for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_mute_rules +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new mute rule for the current organization. + +```sql +INSERT INTO datadog.security.finding_automation_mute_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_automation_mute_rules + props: + - name: data + description: | + The data object for a mute rule create or update request. + value: + attributes: + action: + expire_at: {{ expire_at }} + reason: "{{ reason }}" + reason_description: "{{ reason_description }}" + enabled: {{ enabled }} + name: "{{ name }}" + rule: + finding_types: + - "{{ finding_types }}" + query: "{{ query }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing mute rule by ID. + +```sql +REPLACE datadog.security.finding_automation_mute_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an existing mute rule by ID. + +```sql +DELETE FROM datadog.security.finding_automation_mute_rules +WHERE rule_id = '{{ rule_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Reorder the list of mute rules for the current organization. + +```sql +EXEC datadog.security.finding_automation_mute_rules.reorder_security_findings_automation_mute_rules +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/finding_automation_severity_modifier_rules/index.md b/website/docs/services/security/finding_automation_severity_modifier_rules/index.md new file mode 100644 index 0000000..afddab8 --- /dev/null +++ b/website/docs/services/security/finding_automation_severity_modifier_rules/index.md @@ -0,0 +1,365 @@ +--- +title: finding_automation_severity_modifier_rules +hide_title: false +hide_table_of_contents: false +keywords: + - finding_automation_severity_modifier_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_automation_severity_modifier_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successfully retrieved the severity modifier rule + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the severity modifier rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a severity modifier rule as returned by the API.
stringThe JSON:API type for severity modifier rules. (severity_modifier_rules) (example: severity_modifier_rules)
+
+ + +Successfully retrieved the list of severity modifier rules + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the severity modifier rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a severity modifier rule as returned by the API.
stringThe JSON:API type for severity modifier rules. (severity_modifier_rules) (example: severity_modifier_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet the details of a severity modifier rule by ID.
page[size], page[number]Get all severity modifier rules for the current organization.
dataCreate a new severity modifier rule for the current organization.
rule_id, dataUpdate an existing severity modifier rule by ID.
rule_idDelete an existing severity modifier rule by ID.
dataReorder the list of severity modifier rules for the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the severity modifier rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The page number to return.
integer (int64)The number of rules per page. Maximum is 1000.
+ +## `SELECT` examples + + + + +Get the details of a severity modifier rule by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_severity_modifier_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + + +Get all severity modifier rules for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_severity_modifier_rules +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new severity modifier rule for the current organization. + +```sql +INSERT INTO datadog.security.finding_automation_severity_modifier_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_automation_severity_modifier_rules + props: + - name: data + description: | + The data object for a severity modifier rule create or update request. + value: + attributes: + action: + description: "{{ description }}" + severity: "{{ severity }}" + type: "{{ type }}" + severity_delta: "{{ severity_delta }}" + enabled: {{ enabled }} + name: "{{ name }}" + rule: + finding_types: + - "{{ finding_types }}" + query: "{{ query }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing severity modifier rule by ID. + +```sql +REPLACE datadog.security.finding_automation_severity_modifier_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an existing severity modifier rule by ID. + +```sql +DELETE FROM datadog.security.finding_automation_severity_modifier_rules +WHERE rule_id = '{{ rule_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Reorder the list of severity modifier rules for the current organization. + +```sql +EXEC datadog.security.finding_automation_severity_modifier_rules.reorder_security_findings_automation_severity_modifier_rules +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/finding_automation_ticket_creation_rules/index.md b/website/docs/services/security/finding_automation_ticket_creation_rules/index.md new file mode 100644 index 0000000..e7b2988 --- /dev/null +++ b/website/docs/services/security/finding_automation_ticket_creation_rules/index.md @@ -0,0 +1,366 @@ +--- +title: finding_automation_ticket_creation_rules +hide_title: false +hide_table_of_contents: false +keywords: + - finding_automation_ticket_creation_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_automation_ticket_creation_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + +Successfully retrieved the ticket creation rule + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the ticket creation rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a ticket creation rule returned by the API.
stringThe JSON:API type for ticket creation rules. (ticket_creation_rules) (example: ticket_creation_rules)
+
+ + +Successfully retrieved the list of ticket creation rules + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the ticket creation rule. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a ticket creation rule returned by the API.
stringThe JSON:API type for ticket creation rules. (ticket_creation_rules) (example: ticket_creation_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet the details of a ticket creation rule by ID.
page[size], page[number]Get all ticket creation rules for the current organization.
dataCreate a new ticket creation rule for the current organization.
rule_id, dataUpdate an existing ticket creation rule by ID.
rule_idDelete an existing ticket creation rule by ID.
dataReorder the list of ticket creation rules for the current organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the ticket creation rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The page number to return.
integer (int64)The number of rules per page. Maximum is 1000.
+ +## `SELECT` examples + + + + +Get the details of a ticket creation rule by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_ticket_creation_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + + +Get all ticket creation rules for the current organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.finding_automation_ticket_creation_rules +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new ticket creation rule for the current organization. + +```sql +INSERT INTO datadog.security.finding_automation_ticket_creation_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_automation_ticket_creation_rules + props: + - name: data + description: | + The data object for a ticket creation rule create or update request. + value: + attributes: + action: + assignee_id: "{{ assignee_id }}" + fields: "{{ fields }}" + max_tickets_per_day: {{ max_tickets_per_day }} + project_id: "{{ project_id }}" + target: "{{ target }}" + enabled: {{ enabled }} + name: "{{ name }}" + rule: + finding_types: + - "{{ finding_types }}" + query: "{{ query }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an existing ticket creation rule by ID. + +```sql +REPLACE datadog.security.finding_automation_ticket_creation_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an existing ticket creation rule by ID. + +```sql +DELETE FROM datadog.security.finding_automation_ticket_creation_rules +WHERE rule_id = '{{ rule_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Reorder the list of ticket creation rules for the current organization. + +```sql +EXEC datadog.security.finding_automation_ticket_creation_rules.reorder_security_findings_automation_ticket_creation_rules +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/finding_cases/index.md b/website/docs/services/security/finding_cases/index.md new file mode 100644 index 0000000..9d0aa0f --- /dev/null +++ b/website/docs/services/security/finding_cases/index.md @@ -0,0 +1,199 @@ +--- +title: finding_cases +hide_title: false +hide_table_of_contents: false +keywords: + - finding_cases + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_cases resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCreate cases for security findings.<br />You can create up to 50 cases per request and associate up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the newly created case.
case_idAttach security findings to a case.<br />You can attach up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the specified case.
Detach security findings from their case.<br />This operation dissociates security findings from their associated cases without deleting the cases themselves. You can detach security findings from multiple different cases in a single request, with a limit of 50 security findings per request. Security findings that are not currently attached to any case will be ignored.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the case to attach security findings to
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create cases for security findings.<br />You can create up to 50 cases per request and associate up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the newly created case. + +```sql +INSERT INTO datadog.security.finding_cases ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_cases + props: + - name: data + description: | + Array of case creation request data objects. + value: + - attributes: + assignee_id: "{{ assignee_id }}" + description: "{{ description }}" + priority: "{{ priority }}" + title: "{{ title }}" + relationships: + findings: + data: + - id: "{{ id }}" + type: "{{ type }}" + project: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Attach security findings to a case.<br />You can attach up to 50 security findings per case. Security findings that are already attached to another case will be detached from their previous case and attached to the specified case. + +```sql +UPDATE datadog.security.finding_cases +SET +data = '{{ data }}' +WHERE +case_id = '{{ case_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Detach security findings from their case.<br />This operation dissociates security findings from their associated cases without deleting the cases themselves. You can detach security findings from multiple different cases in a single request, with a limit of 50 security findings per request. Security findings that are not currently attached to any case will be ignored. + +```sql +DELETE FROM datadog.security.finding_cases +; +``` + + diff --git a/website/docs/services/security/finding_jira_issues/index.md b/website/docs/services/security/finding_jira_issues/index.md new file mode 100644 index 0000000..b276b04 --- /dev/null +++ b/website/docs/services/security/finding_jira_issues/index.md @@ -0,0 +1,167 @@ +--- +title: finding_jira_issues +hide_title: false +hide_table_of_contents: false +keywords: + - finding_jira_issues + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_jira_issues resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCreate Jira issues for security findings.<br />This operation creates a case in Datadog and a Jira issue linked to that case for bidirectional sync between Datadog and Jira. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https:​//docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). You can create up to 50 Jira issues per request and associate up to 50 security findings per Jira issue. Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the newly created Jira issue.
Attach security findings to a Jira issue by providing the Jira issue URL.<br />You can attach up to 50 security findings per Jira issue. If the Jira issue is not linked to any case, this operation will create a case for the security findings and link the Jira issue to the newly created case. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https:​//docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the specified Jira issue.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create Jira issues for security findings.<br />This operation creates a case in Datadog and a Jira issue linked to that case for bidirectional sync between Datadog and Jira. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https:​//docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). You can create up to 50 Jira issues per request and associate up to 50 security findings per Jira issue. Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the newly created Jira issue. + +```sql +INSERT INTO datadog.security.finding_jira_issues ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_jira_issues + props: + - name: data + description: | + Array of Jira issue creation request data objects. + value: + - attributes: + assignee_id: "{{ assignee_id }}" + description: "{{ description }}" + fields: "{{ fields }}" + priority: "{{ priority }}" + title: "{{ title }}" + relationships: + findings: + data: + - id: "{{ id }}" + type: "{{ type }}" + project: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Attach security findings to a Jira issue by providing the Jira issue URL.<br />You can attach up to 50 security findings per Jira issue. If the Jira issue is not linked to any case, this operation will create a case for the security findings and link the Jira issue to the newly created case. To configure the Jira integration, see [Bidirectional ticket syncing with Jira](https:​//docs.datadoghq.com/security/ticketing_integrations/#bidirectional-ticket-syncing-with-jira). Security findings that are already attached to another Jira issue will be detached from their previous Jira issue and attached to the specified Jira issue. + +```sql +UPDATE datadog.security.finding_jira_issues +SET +data = '{{ data }}' +WHERE +RETURNING +data; +``` + + diff --git a/website/docs/services/security/finding_linear_issues/index.md b/website/docs/services/security/finding_linear_issues/index.md new file mode 100644 index 0000000..789cbf0 --- /dev/null +++ b/website/docs/services/security/finding_linear_issues/index.md @@ -0,0 +1,170 @@ +--- +title: finding_linear_issues +hide_title: false +hide_table_of_contents: false +keywords: + - finding_linear_issues + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_linear_issues resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCreate Linear issues for security findings.<br />This operation creates a case in Datadog and a Linear issue linked to that case for bidirectional sync between Datadog and Linear. You can create up to 50 Linear issues per request and associate up to 50 security findings per Linear issue. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the newly created Linear issue.
dataAttach security findings to a Linear issue by providing the Linear issue URL.<br />You can attach up to 50 security findings per Linear issue. If the Linear issue is not linked to any case, this operation will create a case for the security findings and link the Linear issue to the newly created case. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the specified Linear issue.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create Linear issues for security findings.<br />This operation creates a case in Datadog and a Linear issue linked to that case for bidirectional sync between Datadog and Linear. You can create up to 50 Linear issues per request and associate up to 50 security findings per Linear issue. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the newly created Linear issue. + +```sql +INSERT INTO datadog.security.finding_linear_issues ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_linear_issues + props: + - name: data + description: | + Array of Linear issue creation request data objects. + value: + - attributes: + assignee_id: "{{ assignee_id }}" + description: "{{ description }}" + label_ids: + - "{{ label_ids }}" + linear_project_id: "{{ linear_project_id }}" + priority: "{{ priority }}" + title: "{{ title }}" + relationships: + findings: + data: + - id: "{{ id }}" + type: "{{ type }}" + project: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Attach security findings to a Linear issue by providing the Linear issue URL.<br />You can attach up to 50 security findings per Linear issue. If the Linear issue is not linked to any case, this operation will create a case for the security findings and link the Linear issue to the newly created case. Security findings that are already attached to another Linear issue will be detached from their previous Linear issue and attached to the specified Linear issue. + +```sql +UPDATE datadog.security.finding_linear_issues +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/security/finding_servicenow_tickets/index.md b/website/docs/services/security/finding_servicenow_tickets/index.md new file mode 100644 index 0000000..52b22df --- /dev/null +++ b/website/docs/services/security/finding_servicenow_tickets/index.md @@ -0,0 +1,167 @@ +--- +title: finding_servicenow_tickets +hide_title: false +hide_table_of_contents: false +keywords: + - finding_servicenow_tickets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a finding_servicenow_tickets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCreate ServiceNow tickets for security findings.<br />This operation creates a case in Datadog and a ServiceNow ticket linked to that case for bidirectional sync between Datadog and ServiceNow. You can create up to 50 ServiceNow tickets per request and associate up to 50 security findings per ServiceNow ticket. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the newly created ServiceNow ticket.
dataAttach security findings to a ServiceNow ticket by providing the ServiceNow ticket URL.<br />You can attach up to 50 security findings per ServiceNow ticket. If the ServiceNow ticket is not linked to any case, this operation will create a case for the security findings and link the ServiceNow ticket to the newly created case. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the specified ServiceNow ticket.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create ServiceNow tickets for security findings.<br />This operation creates a case in Datadog and a ServiceNow ticket linked to that case for bidirectional sync between Datadog and ServiceNow. You can create up to 50 ServiceNow tickets per request and associate up to 50 security findings per ServiceNow ticket. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the newly created ServiceNow ticket. + +```sql +INSERT INTO datadog.security.finding_servicenow_tickets ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: finding_servicenow_tickets + props: + - name: data + description: | + Array of ServiceNow ticket creation request data objects. + value: + - attributes: + assignee_id: "{{ assignee_id }}" + description: "{{ description }}" + priority: "{{ priority }}" + title: "{{ title }}" + relationships: + findings: + data: + - id: "{{ id }}" + type: "{{ type }}" + project: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Attach security findings to a ServiceNow ticket by providing the ServiceNow ticket URL.<br />You can attach up to 50 security findings per ServiceNow ticket. If the ServiceNow ticket is not linked to any case, this operation will create a case for the security findings and link the ServiceNow ticket to the newly created case. Security findings that are already attached to another ServiceNow ticket will be detached from their previous ServiceNow ticket and attached to the specified ServiceNow ticket. + +```sql +UPDATE datadog.security.finding_servicenow_tickets +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/security/findings/index.md b/website/docs/services/security/findings/index.md index 722c9bb..b501ee7 100644 --- a/website/docs/services/security/findings/index.md +++ b/website/docs/services/security/findings/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a findings resource. ## Overview - +
Namefindings
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for findings that have the message and resource configuration. (default: detailed_finding, example: detailed_finding) + The JSON:API type for findings that have the message and resource configuration. (detailed_finding) (default: detailed_finding, example: detailed_finding) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type for findings. (default: finding, example: finding) + The JSON:API type for findings. (finding) (default: finding, example: finding) @@ -116,23 +117,23 @@ The following methods are available for this resource: - finding_id, region + finding_id snapshot_timestamp Returns a single finding with message and resource configuration. - region + page[limit], snapshot_timestamp, page[cursor], filter[tags], filter[evaluation_changed_at], filter[muted], filter[rule_id], filter[rule_name], filter[resource_type], filter[@resource_id], filter[discovery_timestamp], filter[evaluation], filter[status], filter[vulnerability_type], detailed_findings - Get a list of findings. These include both misconfigurations and identity risks.

**Note**: To filter and return only identity risks, add the following query parameter: `?filter[tags]=dd_rule_type:ciem`

### Filtering

Filters can be applied by appending query parameters to the URL.

- Using a single filter: `?filter[attribute_key]=attribute_value`
- Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...`
- Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2`

Here, `attribute_key` can be any of the filter keys described further below.

Query parameters of type `integer` support comparison operators (`>`, `>=`, `<`, `<=`). This is particularly useful when filtering by `evaluation_changed_at` or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`.

You can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` to filter for any non-AWS resources.

The operator must come after the equal sign. For example, to filter with the `>=` operator, add the operator after the equal sign: `filter[evaluation_changed_at]=>=1678809373257`.

Query parameters must be only among the documented ones and with values of correct types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) are not allowed.

### Additional extension fields

Additional extension fields are available for some findings.

The data is available when you include the query parameter `?detailed_findings=true` in the request.

The following fields are available for findings:
- `external_id`: The resource external ID related to the finding.
- `description`: The description and remediation steps for the finding.
- `datadog_link`: The Datadog relative link for the finding.
- `ip_addresses`: The list of private IP addresses for the resource related to the finding.

### Response

The response includes an array of finding objects, pagination metadata, and a count of items that match the query.

Each finding object contains the following:

- The finding ID that can be used in a `GetFinding` request to retrieve the full finding details.
- Core attributes, including status, evaluation, high-level resource details, muted state, and rule details.
- `evaluation_changed_at` and `resource_discovery_date` time stamps.
- An array of associated tags.
+ Get a list of findings. These include both misconfigurations and identity risks.<br /><br />**Note**: To filter and return only identity risks, add the following query parameter: `?filter[tags]=dd_rule_type:ciem`<br /><br />### Filtering<br /><br />Filters can be applied by appending query parameters to the URL.<br /><br /> - Using a single filter: `?filter[attribute_key]=attribute_value`<br /> - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...`<br /> - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2`<br /><br />Here, `attribute_key` can be any of the filter keys described further below.<br /><br />Query parameters of type `integer` support comparison operators (`>`, `>=`, `<`, `<=`). This is particularly useful when filtering by `evaluation_changed_at` or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`.<br /><br />You can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` to filter for any non-AWS resources.<br /><br />The operator must come after the equal sign. For example, to filter with the `>=` operator, add the operator after the equal sign: `filter[evaluation_changed_at]=>=1678809373257`.<br /><br />Query parameters must be only among the documented ones and with values of correct types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) are not allowed.<br /><br />### Additional extension fields<br /><br />Additional extension fields are available for some findings.<br /><br />The data is available when you include the query parameter `?detailed_findings=true` in the request.<br /><br />The following fields are available for findings:<br />- `external_id`: The resource external ID related to the finding.<br />- `description`: The description and remediation steps for the finding.<br />- `datadog_link`: The Datadog relative link for the finding.<br />- `ip_addresses`: The list of private IP addresses for the resource related to the finding.<br /><br />### Response<br /><br />The response includes an array of finding objects, pagination metadata, and a count of items that match the query.<br /><br />Each finding object contains the following:<br /><br />- The finding ID that can be used in a `GetFinding` request to retrieve the full finding details.<br />- Core attributes, including status, evaluation, high-level resource details, muted state, and rule details.<br />- `evaluation_changed_at` and `resource_discovery_date` time stamps.<br />- An array of associated tags. - + - region, data + data - Mute or unmute findings. + Mute or unmute security findings.<br />You can mute or unmute up to 100 security findings per request. The request body must include `is_muted` and `reason` attributes. The allowed reasons depend on whether the finding is being muted or unmuted:<br /> - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `OTHER`, `NO_FIX`, `DUPLICATE`, `RISK_ACCEPTED`.<br /> - To unmute a finding: `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, `OTHER`. @@ -155,15 +156,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the finding. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. boolean - Return additional fields for some findings. (example: [true]) + Return additional fields for some findings. (example: [true]) @@ -213,12 +214,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Return findings that have these associated tags (repeatable). (example: filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999) + Return findings that have these associated tags (repeatable). (example: filter[tags]=cloud_provider:aws&filter[tags]=aws_account:999999999999) array - Return findings that match the selected vulnerability types (repeatable). (example: [misconfiguration]) + Return findings that match the selected vulnerability types (repeatable). (example: [misconfiguration]) @@ -258,14 +259,13 @@ attributes, type FROM datadog.security.findings WHERE finding_id = '{{ finding_id }}' -- required -AND region = '{{ region }}' -- required AND snapshot_timestamp = '{{ snapshot_timestamp }}' ; ``` -Get a list of findings. These include both misconfigurations and identity risks.

**Note**: To filter and return only identity risks, add the following query parameter: `?filter[tags]=dd_rule_type:ciem`

### Filtering

Filters can be applied by appending query parameters to the URL.

- Using a single filter: `?filter[attribute_key]=attribute_value`
- Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...`
- Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2`

Here, `attribute_key` can be any of the filter keys described further below.

Query parameters of type `integer` support comparison operators (`>`, `>=`, `<`, `<=`). This is particularly useful when filtering by `evaluation_changed_at` or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`.

You can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` to filter for any non-AWS resources.

The operator must come after the equal sign. For example, to filter with the `>=` operator, add the operator after the equal sign: `filter[evaluation_changed_at]=>=1678809373257`.

Query parameters must be only among the documented ones and with values of correct types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) are not allowed.

### Additional extension fields

Additional extension fields are available for some findings.

The data is available when you include the query parameter `?detailed_findings=true` in the request.

The following fields are available for findings:
- `external_id`: The resource external ID related to the finding.
- `description`: The description and remediation steps for the finding.
- `datadog_link`: The Datadog relative link for the finding.
- `ip_addresses`: The list of private IP addresses for the resource related to the finding.

### Response

The response includes an array of finding objects, pagination metadata, and a count of items that match the query.

Each finding object contains the following:

- The finding ID that can be used in a `GetFinding` request to retrieve the full finding details.
- Core attributes, including status, evaluation, high-level resource details, muted state, and rule details.
- `evaluation_changed_at` and `resource_discovery_date` time stamps.
- An array of associated tags.
+Get a list of findings. These include both misconfigurations and identity risks.<br /><br />**Note**: To filter and return only identity risks, add the following query parameter: `?filter[tags]=dd_rule_type:ciem`<br /><br />### Filtering<br /><br />Filters can be applied by appending query parameters to the URL.<br /><br /> - Using a single filter: `?filter[attribute_key]=attribute_value`<br /> - Chaining filters: `?filter[attribute_key]=attribute_value&filter[attribute_key]=attribute_value...`<br /> - Filtering on tags: `?filter[tags]=tag_key:tag_value&filter[tags]=tag_key_2:tag_value_2`<br /><br />Here, `attribute_key` can be any of the filter keys described further below.<br /><br />Query parameters of type `integer` support comparison operators (`>`, `>=`, `<`, `<=`). This is particularly useful when filtering by `evaluation_changed_at` or `resource_discovery_timestamp`. For example: `?filter[evaluation_changed_at]=>20123123121`.<br /><br />You can also use the negation operator on strings. For example, use `filter[resource_type]=-aws*` to filter for any non-AWS resources.<br /><br />The operator must come after the equal sign. For example, to filter with the `>=` operator, add the operator after the equal sign: `filter[evaluation_changed_at]=>=1678809373257`.<br /><br />Query parameters must be only among the documented ones and with values of correct types. Duplicated query parameters (e.g. `filter[status]=low&filter[status]=info`) are not allowed.<br /><br />### Additional extension fields<br /><br />Additional extension fields are available for some findings.<br /><br />The data is available when you include the query parameter `?detailed_findings=true` in the request.<br /><br />The following fields are available for findings:<br />- `external_id`: The resource external ID related to the finding.<br />- `description`: The description and remediation steps for the finding.<br />- `datadog_link`: The Datadog relative link for the finding.<br />- `ip_addresses`: The list of private IP addresses for the resource related to the finding.<br /><br />### Response<br /><br />The response includes an array of finding objects, pagination metadata, and a count of items that match the query.<br /><br />Each finding object contains the following:<br /><br />- The finding ID that can be used in a `GetFinding` request to retrieve the full finding details.<br />- Core attributes, including status, evaluation, high-level resource details, muted state, and rule details.<br />- `evaluation_changed_at` and `resource_discovery_date` time stamps.<br />- An array of associated tags. ```sql SELECT @@ -273,8 +273,7 @@ id, attributes, type FROM datadog.security.findings -WHERE region = '{{ region }}' -- required -AND page[limit] = '{{ page[limit] }}' +WHERE page[limit] = '{{ page[limit] }}' AND snapshot_timestamp = '{{ snapshot_timestamp }}' AND page[cursor] = '{{ page[cursor] }}' AND filter[tags] = '{{ filter[tags] }}' @@ -297,19 +296,20 @@ AND detailed_findings = '{{ detailed_findings }}' ## Lifecycle Methods +EXEC variables use wire (API) names. + - + -Mute or unmute findings. +Mute or unmute security findings.<br />You can mute or unmute up to 100 security findings per request. The request body must include `is_muted` and `reason` attributes. The allowed reasons depend on whether the finding is being muted or unmuted:<br /> - To mute a finding: `PENDING_FIX`, `FALSE_POSITIVE`, `OTHER`, `NO_FIX`, `DUPLICATE`, `RISK_ACCEPTED`.<br /> - To unmute a finding: `NO_PENDING_FIX`, `HUMAN_ERROR`, `NO_LONGER_ACCEPTED_RISK`, `OTHER`. ```sql -EXEC datadog.security.findings.mute_findings -@region='{{ region }}' --required +EXEC datadog.security.findings.mute_security_findings @@json= '{ "data": "{{ data }}" diff --git a/website/docs/services/security/historical_jobs/index.md b/website/docs/services/security/historical_jobs/index.md index b8848b2..8edc4da 100644 --- a/website/docs/services/security/historical_jobs/index.md +++ b/website/docs/services/security/historical_jobs/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a historical_jobs resource ## Overview - +
Namehistorical_jobs
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - Type of payload. + Type of payload. (historicalDetectionsJob) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Type of payload. + Type of payload. (historicalDetectionsJob) @@ -116,35 +117,35 @@ The following methods are available for this resource: - job_id, region + job_id Get a job's details. - region + page[size], page[number], sort, filter[query] List historical jobs. - region + Run a historical job. - job_id, region + job_id Cancel a historical job. - job_id, region + job_id Delete an existing job. @@ -169,10 +170,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the job. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -187,7 +188,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -217,7 +218,6 @@ attributes, type FROM datadog.security.historical_jobs WHERE job_id = '{{ job_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -231,8 +231,7 @@ id, attributes, type FROM datadog.security.historical_jobs -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND sort = '{{ sort }}' AND filter[query] = '{{ filter[query] }}' @@ -257,12 +256,10 @@ Run a historical job. ```sql INSERT INTO datadog.security.historical_jobs ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -270,18 +267,102 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: historical_jobs props: - - name: region - value: string - description: Required parameter for the historical_jobs resource. - name: data - value: object description: | Data for running a historical job request. -``` + value: + attributes: + fromRule: + caseIndex: {{ caseIndex }} + from: {{ from }} + id: "{{ id }}" + index: "{{ index }}" + notifications: + - "{{ notifications }}" + to: {{ to }} + jobDefinition: + calculatedFields: + - expression: "{{ expression }}" + name: "{{ name }}" + cases: + - actions: "{{ actions }}" + condition: "{{ condition }}" + name: "{{ name }}" + notifications: "{{ notifications }}" + status: "{{ status }}" + from: {{ from }} + groupSignalsBy: + - "{{ groupSignalsBy }}" + index: "{{ index }}" + message: "{{ message }}" + name: "{{ name }}" + options: + anomalyDetectionOptions: + bucketDuration: {{ bucketDuration }} + detectionTolerance: {{ detectionTolerance }} + instantaneousBaseline: {{ instantaneousBaseline }} + learningDuration: {{ learningDuration }} + learningPeriodBaseline: {{ learningPeriodBaseline }} + detectionMethod: "{{ detectionMethod }}" + evaluationWindow: {{ evaluationWindow }} + impossibleTravelOptions: + baselineUserLocations: {{ baselineUserLocations }} + baselineUserLocationsDuration: {{ baselineUserLocationsDuration }} + keepAlive: {{ keepAlive }} + maxSignalDuration: {{ maxSignalDuration }} + newValueOptions: + forgetAfter: {{ forgetAfter }} + instantaneousBaseline: {{ instantaneousBaseline }} + learningDuration: {{ learningDuration }} + learningMethod: "{{ learningMethod }}" + learningThreshold: {{ learningThreshold }} + sequenceDetectionOptions: + stepTransitions: "{{ stepTransitions }}" + steps: "{{ steps }}" + thirdPartyRuleOptions: + defaultNotifications: "{{ defaultNotifications }}" + defaultStatus: "{{ defaultStatus }}" + rootQueries: "{{ rootQueries }}" + signalTitleTemplate: "{{ signalTitleTemplate }}" + queries: + - additionalFilters: "{{ additionalFilters }}" + aggregation: "{{ aggregation }}" + correlatedByFields: "{{ correlatedByFields }}" + correlatedQueryIndex: {{ correlatedQueryIndex }} + customQueryExtension: "{{ customQueryExtension }}" + dataSource: "{{ dataSource }}" + datasetIds: "{{ datasetIds }}" + distinctFields: "{{ distinctFields }}" + groupByFields: "{{ groupByFields }}" + hasOptionalGroupByFields: {{ hasOptionalGroupByFields }} + index: "{{ index }}" + indexes: "{{ indexes }}" + metrics: "{{ metrics }}" + name: "{{ name }}" + query: "{{ query }}" + queryLanguage: "{{ queryLanguage }}" + referenceTables: + - checkPresence: {{ checkPresence }} + columnName: "{{ columnName }}" + logFieldPath: "{{ logFieldPath }}" + ruleQueryName: "{{ ruleQueryName }}" + tableName: "{{ tableName }}" + tags: + - "{{ tags }}" + thirdPartyCases: + - name: "{{ name }}" + notifications: "{{ notifications }}" + query: "{{ query }}" + status: "{{ status }}" + to: {{ to }} + type: "{{ type }}" + signalOutput: {{ signalOutput }} + type: "{{ type }}" +`} +
@@ -303,8 +384,7 @@ UPDATE datadog.security.historical_jobs SET -- No updatable properties WHERE -job_id = '{{ job_id }}' --required -AND region = '{{ region }}' --required; +job_id = '{{ job_id }}' --required; ```
@@ -325,7 +405,6 @@ Delete an existing job. ```sql DELETE FROM datadog.security.historical_jobs WHERE job_id = '{{ job_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/security/index.md b/website/docs/services/security/index.md index 75856d5..d103902 100644 --- a/website/docs/services/security/index.md +++ b/website/docs/services/security/index.md @@ -18,38 +18,103 @@ security service documentation. :::info[Service Summary] -total resources: __28__ +total resources: __93__ ::: ## Resources
+monitoring_notification_rules
+monitoring_rules
+monitoring_sample_log_generation_subscriptions
+monitoring_security_filter_versions
+monitoring_signal_entities
+monitoring_signal_investigation_queries
+monitoring_signal_suggested_actions
monitoring_signals
+monitoring_suppression_version_histories
monitoring_suppressions
+monitoring_terraform_resources
resource_evaluation_filters
rule_version_history
sboms
+sca_dependencies
+sca_dependency_scans
+sca_licenses
+sca_vulnerabilities
+scanned_assets_metadata
scanning_groups
scanning_rules
+security_entity_risk_scores
+security_findings
+siem_ioc_explorer_indicators
+siem_ioc_explorer_triages
+siem_ioc_explorers
signal_notification_rules
standard_patterns
+static_analysis_ai_memories
+static_analysis_ai_prompts
+static_analysis_ai_ruleset_rule_revisions
+static_analysis_ai_ruleset_rules
+static_analysis_ai_rulesets
+static_analysis_codegen_rulesets
+static_analysis_custom_ruleset_rule_revisions
+static_analysis_custom_ruleset_rules
+static_analysis_custom_rulesets
+static_analysis_default_rulesets
+static_analysis_rulesets
+static_analysis_secret_rules
+static_analysis_server
suppressions_affecting_future_rule
suppressions_affecting_rule
vulnerabilities
diff --git a/website/docs/services/security/monitoring_content_pack_states/index.md b/website/docs/services/security/monitoring_content_pack_states/index.md new file mode 100644 index 0000000..2ff4cbe --- /dev/null +++ b/website/docs/services/security/monitoring_content_pack_states/index.md @@ -0,0 +1,139 @@ +--- +title: monitoring_content_pack_states +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_content_pack_states + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_content_pack_states resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe content pack identifier. (example: aws-cloudtrail)
objectAttributes of a content pack state.
stringType for content pack state object (content_pack_state) (example: content_pack_state)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the activation state, integration status, and log collection status<br />for all Cloud SIEM content packs.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the activation state, integration status, and log collection status<br />for all Cloud SIEM content packs. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_content_pack_states +; +``` + + diff --git a/website/docs/services/security/monitoring_content_packs/index.md b/website/docs/services/security/monitoring_content_packs/index.md new file mode 100644 index 0000000..1298b36 --- /dev/null +++ b/website/docs/services/security/monitoring_content_packs/index.md @@ -0,0 +1,127 @@ +--- +title: monitoring_content_packs +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_content_packs + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_content_packs resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
content_pack_idActivate a Cloud SIEM content pack. This operation configures the necessary<br />log filters or security filters depending on the pricing model and updates the content<br />pack activation state.
content_pack_idDeactivate a Cloud SIEM content pack. This operation removes the content pack's<br />configuration from log filters or security filters and updates the content pack activation state.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the content pack to deactivate (for example, `aws-cloudtrail`).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Activate a Cloud SIEM content pack. This operation configures the necessary<br />log filters or security filters depending on the pricing model and updates the content<br />pack activation state. + +```sql +EXEC datadog.security.monitoring_content_packs.activate_content_pack +@content_pack_id='{{ content_pack_id }}' --required +; +``` + + + +Deactivate a Cloud SIEM content pack. This operation removes the content pack's<br />configuration from log filters or security filters and updates the content pack activation state. + +```sql +EXEC datadog.security.monitoring_content_packs.deactivate_content_pack +@content_pack_id='{{ content_pack_id }}' --required +; +``` + + diff --git a/website/docs/services/security/monitoring_critical_asset_rules/index.md b/website/docs/services/security/monitoring_critical_asset_rules/index.md new file mode 100644 index 0000000..14bce13 --- /dev/null +++ b/website/docs/services/security/monitoring_critical_asset_rules/index.md @@ -0,0 +1,145 @@ +--- +title: monitoring_critical_asset_rules +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_critical_asset_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_critical_asset_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the critical asset. (example: 4e2435a5-6670-4b8f-baff-46083cd1c250)
objectThe attributes of the critical asset.
stringThe type of the resource. The value should always be `critical_assets`. (critical_assets) (default: critical_assets, example: critical_assets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet the list of critical assets that affect a specific existing rule by the rule's ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of critical assets that affect a specific existing rule by the rule's ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_critical_asset_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + diff --git a/website/docs/services/security/monitoring_critical_assets/index.md b/website/docs/services/security/monitoring_critical_assets/index.md new file mode 100644 index 0000000..dc9f940 --- /dev/null +++ b/website/docs/services/security/monitoring_critical_assets/index.md @@ -0,0 +1,312 @@ +--- +title: monitoring_critical_assets +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_critical_assets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_critical_assets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the critical asset. (example: 4e2435a5-6670-4b8f-baff-46083cd1c250)
objectThe attributes of the critical asset.
stringThe type of the resource. The value should always be `critical_assets`. (critical_assets) (default: critical_assets, example: critical_assets)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the critical asset. (example: 4e2435a5-6670-4b8f-baff-46083cd1c250)
objectThe attributes of the critical asset.
stringThe type of the resource. The value should always be `critical_assets`. (critical_assets) (default: critical_assets, example: critical_assets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
critical_asset_idGet the details of a specific critical asset.
Get the list of all critical assets.
dataCreate a new critical asset.
critical_asset_id, dataUpdate a specific critical asset.
critical_asset_idDelete a specific critical asset.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the critical asset.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the details of a specific critical asset. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_critical_assets +WHERE critical_asset_id = '{{ critical_asset_id }}' -- required +; +``` + + + +Get the list of all critical assets. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_critical_assets +; +``` + + + + +## `INSERT` examples + + + + +Create a new critical asset. + +```sql +INSERT INTO datadog.security.monitoring_critical_assets ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: monitoring_critical_assets + props: + - name: data + description: | + Object for a single critical asset. + value: + attributes: + description: "{{ description }}" + enabled: {{ enabled }} + query: "{{ query }}" + rule_query: "{{ rule_query }}" + severity: "{{ severity }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a specific critical asset. + +```sql +UPDATE datadog.security.monitoring_critical_assets +SET +data = '{{ data }}' +WHERE +critical_asset_id = '{{ critical_asset_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a specific critical asset. + +```sql +DELETE FROM datadog.security.monitoring_critical_assets +WHERE critical_asset_id = '{{ critical_asset_id }}' --required +; +``` + + diff --git a/website/docs/services/security/monitoring_dataset_dependencies/index.md b/website/docs/services/security/monitoring_dataset_dependencies/index.md new file mode 100644 index 0000000..c71ab49 --- /dev/null +++ b/website/docs/services/security/monitoring_dataset_dependencies/index.md @@ -0,0 +1,123 @@ +--- +title: monitoring_dataset_dependencies +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_dataset_dependencies + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_dataset_dependencies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataReturn, for each of the requested datasets, the list of detection rules that depend<br />on it. Useful for understanding the impact of updating or deleting a dataset.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Return, for each of the requested datasets, the list of detection rules that depend<br />on it. Useful for understanding the impact of updating or deleting a dataset. + +```sql +INSERT INTO datadog.security.monitoring_dataset_dependencies ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: monitoring_dataset_dependencies + props: + - name: data + description: | + The data wrapper of a dataset dependencies request. + value: + attributes: + datasetIds: + - "{{ datasetIds }}" +`} + + + diff --git a/website/docs/services/security/monitoring_dataset_version_histories/index.md b/website/docs/services/security/monitoring_dataset_version_histories/index.md new file mode 100644 index 0000000..7cf9169 --- /dev/null +++ b/website/docs/services/security/monitoring_dataset_version_histories/index.md @@ -0,0 +1,157 @@ +--- +title: monitoring_dataset_version_histories +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_dataset_version_histories + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_dataset_version_histories resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset. (example: 123e4567-e89b-12d3-a456-426614174000)
objectThe attributes of a dataset version history response.
stringThe type of resource for a dataset version history response. (dataset_version_history) (example: dataset_version_history)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataset_idpage[size], page[number]Retrieve the version history of a Cloud SIEM dataset, including the changes made at each version.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Retrieve the version history of a Cloud SIEM dataset, including the changes made at each version. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_dataset_version_histories +WHERE dataset_id = '{{ dataset_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + diff --git a/website/docs/services/security/monitoring_dataset_versions/index.md b/website/docs/services/security/monitoring_dataset_versions/index.md new file mode 100644 index 0000000..35b6168 --- /dev/null +++ b/website/docs/services/security/monitoring_dataset_versions/index.md @@ -0,0 +1,151 @@ +--- +title: monitoring_dataset_versions +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_dataset_versions + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_dataset_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset. (example: 123e4567-e89b-12d3-a456-426614174000)
objectThe attributes of a Cloud SIEM dataset.
stringThe type of resource for a dataset response. (dataset) (example: dataset)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataset_id, versionRetrieve a specific historical version of a Cloud SIEM dataset.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The version number of the dataset to retrieve.
+ +## `SELECT` examples + + + + +Retrieve a specific historical version of a Cloud SIEM dataset. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_dataset_versions +WHERE dataset_id = '{{ dataset_id }}' -- required +AND version = '{{ version }}' -- required +; +``` + + diff --git a/website/docs/services/security/monitoring_datasets/index.md b/website/docs/services/security/monitoring_datasets/index.md new file mode 100644 index 0000000..9d76525 --- /dev/null +++ b/website/docs/services/security/monitoring_datasets/index.md @@ -0,0 +1,345 @@ +--- +title: monitoring_datasets +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_datasets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_datasets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset. (example: 123e4567-e89b-12d3-a456-426614174000)
objectThe attributes of a Cloud SIEM dataset.
stringThe type of resource for a dataset response. (dataset) (example: dataset)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset. (example: 123e4567-e89b-12d3-a456-426614174000)
objectThe attributes of a Cloud SIEM dataset.
stringThe type of resource for a dataset response. (dataset) (example: dataset)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataset_idGet the current version of a Cloud SIEM dataset by ID.
page[size], page[number], sort, filter[query]List all Cloud SIEM datasets available to the organization, including both<br />customer-defined datasets and Datadog out-of-the-box datasets.
dataCreate a new Cloud SIEM dataset. A dataset bundles a data source, a set of<br />indexes, and a search query that can be referenced from detection rules.
dataset_id, dataUpdate an existing Cloud SIEM dataset. The current version of the dataset can be<br />provided to detect concurrent modifications.
dataset_idDelete a Cloud SIEM dataset. Out-of-the-box datasets cannot be deleted and<br />deleting a dataset that is referenced by a detection rule is rejected.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the dataset.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA search query to filter datasets by name or description.
integer (int64)Specific page number to return.
integer (int64)Size for a given page. The maximum allowed value is 100.
stringAttribute used to sort datasets. Prefix with `-` to sort in descending order.
+ +## `SELECT` examples + + + + +Get the current version of a Cloud SIEM dataset by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_datasets +WHERE dataset_id = '{{ dataset_id }}' -- required +; +``` + + + +List all Cloud SIEM datasets available to the organization, including both<br />customer-defined datasets and Datadog out-of-the-box datasets. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_datasets +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort = '{{ sort }}' +AND filter[query] = '{{ filter[query] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new Cloud SIEM dataset. A dataset bundles a data source, a set of<br />indexes, and a search query that can be referenced from detection rules. + +```sql +INSERT INTO datadog.security.monitoring_datasets ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: monitoring_datasets + props: + - name: data + description: | + The data wrapper of a dataset create request. + value: + attributes: + definition: + columns: + - column: "{{ column }}" + type: "{{ type }}" + data_source: "{{ data_source }}" + indexes: + - "{{ indexes }}" + name: "{{ name }}" + query_filter: "{{ query_filter }}" + search: + query: "{{ query }}" + storage: "{{ storage }}" + table_name: "{{ table_name }}" + time_window: + from: {{ from }} + to: {{ to }} + description: "{{ description }}" + version: {{ version }} + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing Cloud SIEM dataset. The current version of the dataset can be<br />provided to detect concurrent modifications. + +```sql +UPDATE datadog.security.monitoring_datasets +SET +data = '{{ data }}' +WHERE +dataset_id = '{{ dataset_id }}' --required +AND data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete a Cloud SIEM dataset. Out-of-the-box datasets cannot be deleted and<br />deleting a dataset that is referenced by a detection rule is rejected. + +```sql +DELETE FROM datadog.security.monitoring_datasets +WHERE dataset_id = '{{ dataset_id }}' --required +; +``` + + diff --git a/website/docs/services/security/monitoring_entity_contexts/index.md b/website/docs/services/security/monitoring_entity_contexts/index.md new file mode 100644 index 0000000..9361e27 --- /dev/null +++ b/website/docs/services/security/monitoring_entity_contexts/index.md @@ -0,0 +1,235 @@ +--- +title: monitoring_entity_contexts +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_entity_contexts + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_entity_contexts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the entity. (example: user@example.com)
objectThe attributes of an entity context entry, grouping all the historical revisions of the entity.
stringThe type of the entity. Reflects the underlying entity kind from the entity context store (for example, `siem_entity_identity` for identities). Defaults to `entity` when the kind is unknown. (default: entity, example: siem_entity_identity)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the entity. (example: user@example.com)
objectThe attributes of an entity context entry, grouping all the historical revisions of the entity.
stringThe type of the entity. Reflects the underlying entity kind from the entity context store (for example, `siem_entity_identity` for identities). Defaults to `entity` when the kind is unknown. (default: entity, example: siem_entity_identity)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idfrom, to, as_ofGet a single entity from the Cloud SIEM entity context store by its identifier, returning the historical<br />revisions of the entity in the requested time range. The endpoint can either return revisions across an<br />interval (`from` / `to`) or the snapshot of the entity at a single point in time (`as_of`); the two modes<br />are mutually exclusive.
query, from, to, as_of, limit, page_tokenSearch the Cloud SIEM entity context store for entities that match a query, and return the historical<br />revisions of each entity in the requested time range. The endpoint can either return revisions across an<br />interval (`from` / `to`) or the snapshot of each entity at a single point in time (`as_of`); the two modes<br />are mutually exclusive.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the entity to retrieve.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringA point in time at which to query the entity revisions, as an RFC3339 timestamp, a Unix timestamp (in seconds), or a relative time (for example, `now-1d`). When set, `from` and `to` are ignored. Cannot be combined with custom `from` / `to` values. (example: now-1d)
stringThe start of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now-7d`). Defaults to `now-7d`. Ignored when `as_of` is set.
integer (int64)The maximum number of entities to return.
stringAn opaque token used to fetch the next page of results, as returned in `meta.page.next_token` of a previous response.
stringA free-text query (for example, an email address or principal ID) used to filter the entities returned. (example: user@example.com)
stringThe end of the time range to query, as an RFC3339 timestamp or a relative time (for example, `now`). Defaults to `now`. Ignored when `as_of` is set.
+ +## `SELECT` examples + + + + +Get a single entity from the Cloud SIEM entity context store by its identifier, returning the historical<br />revisions of the entity in the requested time range. The endpoint can either return revisions across an<br />interval (`from` / `to`) or the snapshot of the entity at a single point in time (`as_of`); the two modes<br />are mutually exclusive. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_entity_contexts +WHERE id = '{{ id }}' -- required +AND from = '{{ from }}' +AND to = '{{ to }}' +AND as_of = '{{ as_of }}' +; +``` + + + +Search the Cloud SIEM entity context store for entities that match a query, and return the historical<br />revisions of each entity in the requested time range. The endpoint can either return revisions across an<br />interval (`from` / `to`) or the snapshot of each entity at a single point in time (`as_of`); the two modes<br />are mutually exclusive. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_entity_contexts +WHERE query = '{{ query }}' +AND from = '{{ from }}' +AND to = '{{ to }}' +AND as_of = '{{ as_of }}' +AND limit = '{{ limit }}' +AND page_token = '{{ page_token }}' +; +``` + + diff --git a/website/docs/services/security/monitoring_entra_id_azure_app_registrations/index.md b/website/docs/services/security/monitoring_entra_id_azure_app_registrations/index.md new file mode 100644 index 0000000..b814a37 --- /dev/null +++ b/website/docs/services/security/monitoring_entra_id_azure_app_registrations/index.md @@ -0,0 +1,139 @@ +--- +title: monitoring_entra_id_azure_app_registrations +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_entra_id_azure_app_registrations + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_entra_id_azure_app_registrations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the organization the Azure App Registrations belong to. (example: 123456)
objectThe attributes of the Entra ID Azure App Registration prerequisites.
stringThe type of the resource. The value should always be `entra_id_azure_app_registrations`. (entra_id_azure_app_registrations) (default: entra_id_azure_app_registrations, example: entra_id_azure_app_registrations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the Azure App Registrations discovered for the organization and whether at least one of them has<br />resource collection enabled, which is a prerequisite for activating the Entra ID entity context sync integration.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the Azure App Registrations discovered for the organization and whether at least one of them has<br />resource collection enabled, which is a prerequisite for activating the Entra ID entity context sync integration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_entra_id_azure_app_registrations +; +``` + + diff --git a/website/docs/services/security/monitoring_hist_signals/index.md b/website/docs/services/security/monitoring_hist_signals/index.md index e3446ce..7091391 100644 --- a/website/docs/services/security/monitoring_hist_signals/index.md +++ b/website/docs/services/security/monitoring_hist_signals/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a monitoring_hist_signals ## Overview - +
Namemonitoring_hist_signals
Name
TypeResource
Id
@@ -63,7 +64,7 @@ The following fields are returned by `SELECT` queries: string - The type of event. (default: signal, example: signal) + The type of event. (signal) (default: signal, example: signal) @@ -92,7 +93,7 @@ The following fields are returned by `SELECT` queries: string - The type of event. (default: signal, example: signal) + The type of event. (signal) (default: signal, example: signal) @@ -121,7 +122,7 @@ The following fields are returned by `SELECT` queries: string - The type of event. (default: signal, example: signal) + The type of event. (signal) (default: signal, example: signal) @@ -146,35 +147,35 @@ The following methods are available for this resource: - histsignal_id, region + histsignal_id Get a hist signal's details. - job_id, region + job_id filter[query], filter[from], filter[to], sort, page[cursor], page[limit] Get a job's hist signals. - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] List hist signals. - region + Search hist signals. - region + Convert a job result to a signal. @@ -204,10 +205,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the job. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -263,7 +264,6 @@ attributes, type FROM datadog.security.monitoring_hist_signals WHERE histsignal_id = '{{ histsignal_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -278,7 +278,6 @@ attributes, type FROM datadog.security.monitoring_hist_signals WHERE job_id = '{{ job_id }}' -- required -AND region = '{{ region }}' -- required AND filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' @@ -298,8 +297,7 @@ id, attributes, type FROM datadog.security.monitoring_hist_signals -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -313,6 +311,8 @@ AND page[limit] = '{{ page[limit] }}' ## Lifecycle Methods +EXEC variables use wire (API) names. + monitoring_integration_configs
resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the integration configuration. (example: 11111111-2222-3333-4444-555555555555)
objectThe attributes of an entity context sync configuration as returned by the API.
stringThe type of the resource. The value should always be `integration_config`. (integration_config) (default: integration_config, example: integration_config)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the integration configuration. (example: 11111111-2222-3333-4444-555555555555)
objectThe attributes of an entity context sync configuration as returned by the API.
stringThe type of the resource. The value should always be `integration_config`. (integration_config) (default: integration_config, example: integration_config)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
integration_config_idGet the details of a specific entity context sync configuration.
filter[integration_type]List the entity context sync configurations for Cloud SIEM. Each configuration connects Cloud SIEM<br />to an external source that provides entities (for example, users from an identity provider) for use<br />in signals and the entity explorer.
dataCreate a new entity context sync configuration so Cloud SIEM can ingest entities from an external<br />source. The credentials provided in `secrets` are validated against the source before the configuration<br />is stored and never returned in subsequent responses.
integration_config_id, dataUpdate an existing entity context sync configuration. Supports partial updates; only the fields provided in the request body are modified.
integration_config_idDelete an entity context sync configuration. Cloud SIEM stops ingesting entities from this source,<br />and the credentials stored for the configuration are removed from the secrets store.
dataValidate a set of credentials against the external entity source before creating a sync configuration.<br />Returns a 200 status code if the credentials are valid.
integration_config_idValidate the credentials currently stored on an existing entity context sync configuration.<br />Returns a 200 status code if the credentials are still valid against the external entity source.
integration_typeActivate an entity context sync integration for a source type that does not require manually<br />supplied credentials (for example, Entra ID). If an integration of this type already exists,<br />it is returned (re-enabling it first if it was disabled) instead of creating a duplicate.
integration_typeDeactivate all active entity context sync integrations of the given source type (for example, Entra ID).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the entity context sync configuration.
stringThe integration type to deactivate (for example, `entra_id`).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter the entity context sync configurations by source type.
+ +## `SELECT` examples + + + + +Get the details of a specific entity context sync configuration. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_integration_configs +WHERE integration_config_id = '{{ integration_config_id }}' -- required +; +``` + + + +List the entity context sync configurations for Cloud SIEM. Each configuration connects Cloud SIEM<br />to an external source that provides entities (for example, users from an identity provider) for use<br />in signals and the entity explorer. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_integration_configs +WHERE filter[integration_type] = '{{ filter[integration_type] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new entity context sync configuration so Cloud SIEM can ingest entities from an external<br />source. The credentials provided in `secrets` are validated against the source before the configuration<br />is stored and never returned in subsequent responses. + +```sql +INSERT INTO datadog.security.monitoring_integration_configs ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: monitoring_integration_configs + props: + - name: data + description: | + The entity context sync configuration to create. + value: + attributes: + domain: "{{ domain }}" + integration_type: "{{ integration_type }}" + name: "{{ name }}" + secrets: + admin_email: "{{ admin_email }}" + service_account_json: + client_email: "{{ client_email }}" + private_key: "{{ private_key }}" + project_id: "{{ project_id }}" + type: "{{ type }}" + settings: "{{ settings }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing entity context sync configuration. Supports partial updates; only the fields provided in the request body are modified. + +```sql +UPDATE datadog.security.monitoring_integration_configs +SET +data = '{{ data }}' +WHERE +integration_config_id = '{{ integration_config_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an entity context sync configuration. Cloud SIEM stops ingesting entities from this source,<br />and the credentials stored for the configuration are removed from the secrets store. + +```sql +DELETE FROM datadog.security.monitoring_integration_configs +WHERE integration_config_id = '{{ integration_config_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Validate a set of credentials against the external entity source before creating a sync configuration.<br />Returns a 200 status code if the credentials are valid. + +```sql +EXEC datadog.security.monitoring_integration_configs.validate_security_monitoring_integration_credentials +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Validate the credentials currently stored on an existing entity context sync configuration.<br />Returns a 200 status code if the credentials are still valid against the external entity source. + +```sql +EXEC datadog.security.monitoring_integration_configs.validate_security_monitoring_integration_config +@integration_config_id='{{ integration_config_id }}' --required +; +``` + + + +Activate an entity context sync integration for a source type that does not require manually<br />supplied credentials (for example, Entra ID). If an integration of this type already exists,<br />it is returned (re-enabling it first if it was disabled) instead of creating a duplicate. + +```sql +EXEC datadog.security.monitoring_integration_configs.activate_integration +@integration_type='{{ integration_type }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Deactivate all active entity context sync integrations of the given source type (for example, Entra ID). + +```sql +EXEC datadog.security.monitoring_integration_configs.deactivate_integration +@integration_type='{{ integration_type }}' --required +; +``` + + diff --git a/website/docs/services/security/monitoring_notification_rules/index.md b/website/docs/services/security/monitoring_notification_rules/index.md new file mode 100644 index 0000000..42e38f6 --- /dev/null +++ b/website/docs/services/security/monitoring_notification_rules/index.md @@ -0,0 +1,107 @@ +--- +title: monitoring_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_notification_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_notification_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Send a notification preview to test that a notification rule's targets are properly configured.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Send a notification preview to test that a notification rule's targets are properly configured. + +```sql +EXEC datadog.security.monitoring_notification_rules.send_security_monitoring_notification_preview +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/monitoring_rules/index.md b/website/docs/services/security/monitoring_rules/index.md index 98a89a8..b01ae45 100644 --- a/website/docs/services/security/monitoring_rules/index.md +++ b/website/docs/services/security/monitoring_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a monitoring_rules resourc ## Overview - +
Namemonitoring_rules
Name
TypeResource
Id
@@ -49,6 +50,146 @@ The following fields are returned by `SELECT` queries: + + + string + The ID of the rule. + + + + string + The name of the rule. + + + + integer (int64) + User ID of the user who created the rule. (wire: creationAuthorId) + + + + integer (int64) + User ID of the user who updated the rule. (wire: updateAuthorId) + + + + string + Custom/Overridden name of the rule (used in case of Default rule update). (wire: customName) + + + + array + Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. (wire: calculatedFields) + + + + array + Cases for generating signals. + + + + object + How to generate compliance signals. Useful for cloud_configuration rules only. (wire: complianceSignalOptions) + + + + integer (int64) + When the rule was created, timestamp in milliseconds. (wire: createdAt) + + + + string + Custom/Overridden message for generated signals (used in case of Default rule update). (wire: customMessage) + + + + array + Default Tags for default rules (included in tags) (wire: defaultTags) + + + + integer (int64) + When the rule will be deprecated, timestamp in milliseconds. (wire: deprecationDate) + + + + array + Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + + + + array + Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. (wire: groupSignalsBy) + + + + boolean + Whether the notifications include the triggering group-by values in their title. (wire: hasExtendedTitle) + + + + boolean + Whether the rule is included by default. (wire: isDefault) + + + + boolean + Whether the rule has been deleted. (wire: isDeleted) + + + + boolean + Whether the rule is enabled. (wire: isEnabled) + + + + string + Message for generated signals. + + + + object + Options. + + + + array + Queries for selecting logs which are part of the rule. + + + + array + Reference tables for the rule. (wire: referenceTables) + + + + object + Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs. (wire: schedulingOptions) + + + + array + Tags for generated signals. + + + + array + Cases for generating signals from third-party rules. Only available for third-party rules. (wire: thirdPartyCases) + + + + string + The rule type. (log_detection, infrastructure_configuration, workload_security, cloud_configuration, application_security, api_security, workload_activity) + + + + integer (int64) + The date the rule was last updated, in milliseconds. (wire: updatedAt) + + + + integer (int64) + The version of the rule. + @@ -63,6 +204,146 @@ The following fields are returned by `SELECT` queries: + + + string + The ID of the rule. + + + + string + The name of the rule. + + + + integer (int64) + User ID of the user who created the rule. (wire: creationAuthorId) + + + + integer (int64) + User ID of the user who updated the rule. (wire: updateAuthorId) + + + + string + Custom/Overridden name of the rule (used in case of Default rule update). (wire: customName) + + + + array + Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. (wire: calculatedFields) + + + + array + Cases for generating signals. + + + + object + How to generate compliance signals. Useful for cloud_configuration rules only. (wire: complianceSignalOptions) + + + + integer (int64) + When the rule was created, timestamp in milliseconds. (wire: createdAt) + + + + string + Custom/Overridden message for generated signals (used in case of Default rule update). (wire: customMessage) + + + + array + Default Tags for default rules (included in tags) (wire: defaultTags) + + + + integer (int64) + When the rule will be deprecated, timestamp in milliseconds. (wire: deprecationDate) + + + + array + Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. + + + + array + Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. (wire: groupSignalsBy) + + + + boolean + Whether the notifications include the triggering group-by values in their title. (wire: hasExtendedTitle) + + + + boolean + Whether the rule is included by default. (wire: isDefault) + + + + boolean + Whether the rule has been deleted. (wire: isDeleted) + + + + boolean + Whether the rule is enabled. (wire: isEnabled) + + + + string + Message for generated signals. + + + + object + Options. + + + + array + Queries for selecting logs which are part of the rule. + + + + array + Reference tables for the rule. (wire: referenceTables) + + + + object + Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs. (wire: schedulingOptions) + + + + array + Tags for generated signals. + + + + array + Cases for generating signals from third-party rules. Only available for third-party rules. (wire: thirdPartyCases) + + + + string + The rule type. (log_detection, infrastructure_configuration, workload_security, cloud_configuration, application_security, api_security, workload_activity) + + + + integer (int64) + The date the rule was last updated, in milliseconds. (wire: updatedAt) + + + + integer (int64) + The version of the rule. + @@ -86,70 +367,84 @@ The following methods are available for this resource: - rule_id, region + rule_id Get a rule's details. - region - page[size], page[number] + + page[size], page[number], query, sort List rules. - region, data__name, data__isEnabled, data__queries, data__options, data__cases, data__message + name, is_enabled, queries, options, cases, message, compliance_signal_options Create a detection rule. - rule_id, region + rule_id - Update an existing rule. When updating `cases`, `queries` or `options`, the whole field
must be included. For example, when modifying a query all queries must be included.
Default rules can only be updated to be enabled, to change notifications, or to update
the tags (default tags cannot be removed). + Update an existing rule. When updating `cases`, `queries` or `options`, the whole field<br />must be included. For example, when modifying a query all queries must be included.<br />Default rules can only be updated to be enabled, to change notifications, or to update<br />the tags (default tags cannot be removed). - rule_id, region + rule_id Delete an existing rule. Default rules cannot be deleted. + + + + + + Delete multiple security monitoring rules in a single request. Default rules cannot be deleted. + - region, name, isEnabled, queries, options, cases, message + name, isEnabled, queries, options, cases, message - Convert a rule that doesn't (yet) exist from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule. + Convert a rule that doesn't (yet) exist from JSON to Terraform for Datadog provider<br />resource `datadog_security_monitoring_rule`. You can do so for the following rule types:<br />- App and API Protection<br />- Cloud SIEM (log detection and signal correlation)<br />- Workload Protection<br /><br />You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https:​//registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). - region + Test a rule. - region, name, isEnabled, queries, options, cases, message + name, isEnabled, queries, options, cases, message, complianceSignalOptions Validate a detection rule. - rule_id, region + rule_id + + Convert an existing rule from JSON to Terraform for Datadog provider<br />resource `datadog_security_monitoring_rule`. You can do so for the following rule types:<br />- App and API Protection<br />- Cloud SIEM (log detection and signal correlation)<br />- Workload Protection<br /><br />You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https:​//registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). + + + + + rule_id, version - Convert an existing rule from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule. + Restores a custom detection rule to a previously saved historical version.<br />Only custom rules can be restored. Default and partner rules return 400.<br />The restore creates a new version entry; it does not overwrite history. - rule_id, region + rule_id Test an existing rule. @@ -169,16 +464,21 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the rule. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + integer (int64) + The historical version number of the rule. + integer (int64) @@ -187,7 +487,17 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. + + + + string + A search query to filter security rules. You can filter by attributes such as `type`, `source`, `tags`. (example: type:signal_correlation source:cloudtrail) + + + + string + Attribute used to sort rules. Prefix with `-` to sort in descending order. @@ -207,10 +517,36 @@ Get a rule's details. ```sql SELECT -* +id, +name, +creation_author_id, +update_author_id, +custom_name, +calculated_fields, +cases, +compliance_signal_options, +created_at, +custom_message, +default_tags, +deprecation_date, +filters, +group_signals_by, +has_extended_title, +is_default, +is_deleted, +is_enabled, +message, +options, +queries, +reference_tables, +scheduling_options, +tags, +third_party_cases, +type, +updated_at, +version FROM datadog.security.monitoring_rules WHERE rule_id = '{{ rule_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -220,11 +556,39 @@ List rules. ```sql SELECT -* +id, +name, +creation_author_id, +update_author_id, +custom_name, +calculated_fields, +cases, +compliance_signal_options, +created_at, +custom_message, +default_tags, +deprecation_date, +filters, +group_signals_by, +has_extended_title, +is_default, +is_deleted, +is_enabled, +message, +options, +queries, +reference_tables, +scheduling_options, +tags, +third_party_cases, +type, +updated_at, +version FROM datadog.security.monitoring_rules -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' +AND query = '{{ query }}' +AND sort = '{{ sort }}' ; ``` @@ -246,114 +610,230 @@ Create a detection rule. ```sql INSERT INTO datadog.security.monitoring_rules ( -data__calculatedFields, -data__cases, -data__filters, -data__groupSignalsBy, -data__hasExtendedTitle, -data__isEnabled, -data__message, -data__name, -data__options, -data__queries, -data__referenceTables, -data__schedulingOptions, -data__tags, -data__thirdPartyCases, -data__type, -region +calculated_fields, +cases, +filters, +group_signals_by, +has_extended_title, +is_enabled, +message, +name, +options, +queries, +reference_tables, +scheduling_options, +tags, +third_party_cases, +type, +compliance_signal_options ) SELECT -'{{ calculatedFields }}', +'{{ calculated_fields }}', '{{ cases }}' /* required */, '{{ filters }}', -'{{ groupSignalsBy }}', -{{ hasExtendedTitle }}, -{{ isEnabled }} /* required */, +'{{ group_signals_by }}', +{{ has_extended_title }}, +{{ is_enabled }} /* required */, '{{ message }}' /* required */, '{{ name }}' /* required */, '{{ options }}' /* required */, '{{ queries }}' /* required */, -'{{ referenceTables }}', -'{{ schedulingOptions }}', +'{{ reference_tables }}', +'{{ scheduling_options }}', '{{ tags }}', -'{{ thirdPartyCases }}', +'{{ third_party_cases }}', '{{ type }}', -'{{ region }}' +'{{ compliance_signal_options }}' /* required */ +RETURNING +id, +name, +creation_author_id, +update_author_id, +custom_name, +calculated_fields, +cases, +compliance_signal_options, +created_at, +custom_message, +default_tags, +deprecation_date, +filters, +group_signals_by, +has_extended_title, +is_default, +is_deleted, +is_enabled, +message, +options, +queries, +reference_tables, +scheduling_options, +tags, +third_party_cases, +type, +updated_at, +version ; ``` -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: monitoring_rules props: - - name: region - value: string - description: Required parameter for the monitoring_rules resource. - - name: calculatedFields - value: array + - name: calculated_fields description: | Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + value: + - expression: "{{ expression }}" + name: "{{ name }}" - name: cases - value: array description: | Cases for generating signals. + value: + - actions: "{{ actions }}" + condition: "{{ condition }}" + name: "{{ name }}" + notifications: "{{ notifications }}" + status: "{{ status }}" - name: filters - value: array description: | Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. - - name: groupSignalsBy - value: array + value: + - action: "{{ action }}" + query: "{{ query }}" + - name: group_signals_by + value: + - "{{ group_signals_by }}" description: | Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. - - name: hasExtendedTitle - value: boolean + - name: has_extended_title + value: {{ has_extended_title }} description: | Whether the notifications include the triggering group-by values in their title. - - name: isEnabled - value: boolean + - name: is_enabled + value: {{ is_enabled }} description: | Whether the rule is enabled. - name: message - value: string + value: "{{ message }}" description: | Message for generated signals. - name: name - value: string + value: "{{ name }}" description: | The name of the rule. - name: options - value: object description: | Options. + value: + anomalyDetectionOptions: + bucketDuration: {{ bucketDuration }} + detectionTolerance: {{ detectionTolerance }} + instantaneousBaseline: {{ instantaneousBaseline }} + learningDuration: {{ learningDuration }} + learningPeriodBaseline: {{ learningPeriodBaseline }} + complianceRuleOptions: + complexRule: {{ complexRule }} + regoRule: + policy: "{{ policy }}" + resourceTypes: + - "{{ resourceTypes }}" + resourceType: "{{ resourceType }}" + decreaseCriticalityBasedOnEnv: {{ decreaseCriticalityBasedOnEnv }} + detectionMethod: "{{ detectionMethod }}" + evaluationWindow: {{ evaluationWindow }} + hardcodedEvaluatorType: "{{ hardcodedEvaluatorType }}" + impossibleTravelOptions: + baselineUserLocations: {{ baselineUserLocations }} + baselineUserLocationsDuration: {{ baselineUserLocationsDuration }} + keepAlive: {{ keepAlive }} + maxSignalDuration: {{ maxSignalDuration }} + newValueOptions: + forgetAfter: {{ forgetAfter }} + instantaneousBaseline: {{ instantaneousBaseline }} + learningDuration: {{ learningDuration }} + learningMethod: "{{ learningMethod }}" + learningThreshold: {{ learningThreshold }} + sequenceDetectionOptions: + stepTransitions: + - child: "{{ child }}" + evaluationWindow: {{ evaluationWindow }} + parent: "{{ parent }}" + steps: + - condition: "{{ condition }}" + evaluationWindow: {{ evaluationWindow }} + name: "{{ name }}" + thirdPartyRuleOptions: + defaultNotifications: + - "{{ defaultNotifications }}" + defaultStatus: "{{ defaultStatus }}" + rootQueries: + - groupByFields: "{{ groupByFields }}" + query: "{{ query }}" + signalTitleTemplate: "{{ signalTitleTemplate }}" - name: queries - value: array description: | Queries for selecting logs which are part of the rule. - - name: referenceTables - value: array + value: + - aggregation: "{{ aggregation }}" + customQueryExtension: "{{ customQueryExtension }}" + dataSource: "{{ dataSource }}" + distinctFields: "{{ distinctFields }}" + groupByFields: "{{ groupByFields }}" + hasOptionalGroupByFields: {{ hasOptionalGroupByFields }} + index: "{{ index }}" + indexes: "{{ indexes }}" + metric: "{{ metric }}" + metrics: "{{ metrics }}" + name: "{{ name }}" + query: "{{ query }}" + - name: reference_tables description: | Reference tables for the rule. - - name: schedulingOptions - value: object + value: + - checkPresence: {{ checkPresence }} + columnName: "{{ columnName }}" + logFieldPath: "{{ logFieldPath }}" + ruleQueryName: "{{ ruleQueryName }}" + tableName: "{{ tableName }}" + - name: scheduling_options description: | Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs. + value: + rrule: "{{ rrule }}" + start: "{{ start }}" + timezone: "{{ timezone }}" - name: tags - value: array + value: + - "{{ tags }}" description: | Tags for generated signals. - - name: thirdPartyCases - value: array + - name: third_party_cases description: | Cases for generating signals from third-party rules. Only available for third-party rules. + value: + - name: "{{ name }}" + notifications: "{{ notifications }}" + query: "{{ query }}" + status: "{{ status }}" - name: type - value: string + value: "{{ type }}" description: | The rule type. - valid_values: ['api_security', 'application_security', 'log_detection', 'workload_security'] -``` + valid_values: ['api_security', 'application_security', 'log_detection', 'workload_activity', 'workload_security'] + - name: compliance_signal_options + description: | + How to generate compliance signals. Useful for cloud_configuration rules only. + value: + defaultActivationStatus: {{ defaultActivationStatus }} + defaultGroupByFields: + - "{{ defaultGroupByFields }}" + userActivationStatus: {{ userActivationStatus }} + userGroupByFields: + - "{{ userGroupByFields }}" +`} + @@ -368,32 +848,60 @@ SELECT > -Update an existing rule. When updating `cases`, `queries` or `options`, the whole field
must be included. For example, when modifying a query all queries must be included.
Default rules can only be updated to be enabled, to change notifications, or to update
the tags (default tags cannot be removed). +Update an existing rule. When updating `cases`, `queries` or `options`, the whole field<br />must be included. For example, when modifying a query all queries must be included.<br />Default rules can only be updated to be enabled, to change notifications, or to update<br />the tags (default tags cannot be removed). ```sql REPLACE datadog.security.monitoring_rules SET -data__calculatedFields = '{{ calculatedFields }}', -data__cases = '{{ cases }}', -data__complianceSignalOptions = '{{ complianceSignalOptions }}', -data__customMessage = '{{ customMessage }}', -data__customName = '{{ customName }}', -data__filters = '{{ filters }}', -data__groupSignalsBy = '{{ groupSignalsBy }}', -data__hasExtendedTitle = {{ hasExtendedTitle }}, -data__isEnabled = {{ isEnabled }}, -data__message = '{{ message }}', -data__name = '{{ name }}', -data__options = '{{ options }}', -data__queries = '{{ queries }}', -data__referenceTables = '{{ referenceTables }}', -data__schedulingOptions = '{{ schedulingOptions }}', -data__tags = '{{ tags }}', -data__thirdPartyCases = '{{ thirdPartyCases }}', -data__version = {{ version }} +calculated_fields = '{{ calculated_fields }}', +cases = '{{ cases }}', +compliance_signal_options = '{{ compliance_signal_options }}', +custom_message = '{{ custom_message }}', +custom_name = '{{ custom_name }}', +filters = '{{ filters }}', +group_signals_by = '{{ group_signals_by }}', +has_extended_title = {{ has_extended_title }}, +is_enabled = {{ is_enabled }}, +message = '{{ message }}', +name = '{{ name }}', +options = '{{ options }}', +queries = '{{ queries }}', +reference_tables = '{{ reference_tables }}', +scheduling_options = '{{ scheduling_options }}', +tags = '{{ tags }}', +third_party_cases = '{{ third_party_cases }}', +version = {{ version }} WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required; +RETURNING +id, +name, +creation_author_id, +update_author_id, +custom_name, +calculated_fields, +cases, +compliance_signal_options, +created_at, +custom_message, +default_tags, +deprecation_date, +filters, +group_signals_by, +has_extended_title, +is_default, +is_deleted, +is_enabled, +message, +options, +queries, +reference_tables, +scheduling_options, +tags, +third_party_cases, +type, +updated_at, +version; ```
@@ -404,7 +912,8 @@ AND region = '{{ region }}' --required; @@ -414,7 +923,15 @@ Delete an existing rule. Default rules cannot be deleted. ```sql DELETE FROM datadog.security.monitoring_rules WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required +; +``` + + + +Delete multiple security monitoring rules in a single request. Default rules cannot be deleted. + +```sql +DELETE FROM datadog.security.monitoring_rules ; ``` @@ -423,6 +940,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + -Convert a rule that doesn't (yet) exist from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule. +Convert a rule that doesn't (yet) exist from JSON to Terraform for Datadog provider<br />resource `datadog_security_monitoring_rule`. You can do so for the following rule types:<br />- App and API Protection<br />- Cloud SIEM (log detection and signal correlation)<br />- Workload Protection<br /><br />You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https:​//registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). ```sql EXEC datadog.security.monitoring_rules.convert_security_monitoring_rule_from_jsonto_terraform -@region='{{ region }}' --required @@json= '{ "calculatedFields": "{{ calculatedFields }}", @@ -469,7 +988,6 @@ Test a rule. ```sql EXEC datadog.security.monitoring_rules.test_security_monitoring_rule -@region='{{ region }}' --required @@json= '{ "rule": "{{ rule }}", @@ -484,7 +1002,6 @@ Validate a detection rule. ```sql EXEC datadog.security.monitoring_rules.validate_security_monitoring_rule -@region='{{ region }}' --required @@json= '{ "calculatedFields": "{{ calculatedFields }}", @@ -503,19 +1020,30 @@ EXEC datadog.security.monitoring_rules.validate_security_monitoring_rule "schedulingOptions": "{{ schedulingOptions }}", "tags": "{{ tags }}", "thirdPartyCases": "{{ thirdPartyCases }}", -"type": "{{ type }}" +"type": "{{ type }}", +"complianceSignalOptions": "{{ complianceSignalOptions }}" }' ; ```
-Convert an existing rule from JSON to Terraform for datadog provider
resource datadog_security_monitoring_rule. +Convert an existing rule from JSON to Terraform for Datadog provider<br />resource `datadog_security_monitoring_rule`. You can do so for the following rule types:<br />- App and API Protection<br />- Cloud SIEM (log detection and signal correlation)<br />- Workload Protection<br /><br />You can convert Cloud Security configuration rules using Terraform's [Datadog Cloud Configuration Rule resource](https:​//registry.terraform.io/providers/DataDog/datadog/latest/docs/resources/cloud_configuration_rule). ```sql EXEC datadog.security.monitoring_rules.convert_existing_security_monitoring_rule +@rule_id='{{ rule_id }}' --required +; +``` +
+ + +Restores a custom detection rule to a previously saved historical version.<br />Only custom rules can be restored. Default and partner rules return 400.<br />The restore creates a new version entry; it does not overwrite history. + +```sql +EXEC datadog.security.monitoring_rules.restore_security_monitoring_rule @rule_id='{{ rule_id }}' --required, -@region='{{ region }}' --required +@version='{{ version }}' --required ; ``` @@ -526,7 +1054,6 @@ Test an existing rule. ```sql EXEC datadog.security.monitoring_rules.test_existing_security_monitoring_rule @rule_id='{{ rule_id }}' --required, -@region='{{ region }}' --required @@json= '{ "rule": "{{ rule }}", diff --git a/website/docs/services/security/monitoring_sample_log_generation_subscriptions/index.md b/website/docs/services/security/monitoring_sample_log_generation_subscriptions/index.md new file mode 100644 index 0000000..32fd320 --- /dev/null +++ b/website/docs/services/security/monitoring_sample_log_generation_subscriptions/index.md @@ -0,0 +1,273 @@ +--- +title: monitoring_sample_log_generation_subscriptions +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_sample_log_generation_subscriptions + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_sample_log_generation_subscriptions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the subscription. (example: 789)
objectThe attributes describing a sample log generation subscription.
stringThe type of the resource. The value should always be `subscriptions`. (subscriptions) (default: subscriptions, example: subscriptions)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
status, start_timestamp, end_timestampGet the sample log generation subscriptions for the organization.<br />Sample log generation injects representative example logs for a given Cloud SIEM content pack into the Logs platform,<br />which can be used to test detection rules without onboarding the underlying integration first.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an eligible<br />pricing model. Other organizations receive a `403 Forbidden` (non-trial orgs) or a `400 Bad Request`<br />(feature disabled), and legacy pricing tiers receive a response with `status: not_available`.
dataSubscribe to sample log generation for a Cloud SIEM content pack. Sample logs for the<br />requested content pack are injected into the Logs platform for the duration of the subscription,<br />so detection rules can be exercised without onboarding the underlying integration first.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an<br />eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject<br />requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`.
content_pack_idUnsubscribe from sample log generation for a Cloud SIEM content pack.<br />After unsubscribing, no more sample logs are generated for the requested content pack.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an<br />eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject<br />requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`.
dataSubscribe to sample log generation for multiple Cloud SIEM content packs in a single call.<br />Each requested content pack is processed independently; the response includes a per-item<br />status so partial successes can be inspected.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an<br />eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject<br />requests with `400 Bad Request`, and legacy pricing tiers receive per-item responses with `status: not_available`.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the Cloud SIEM content pack to operate on (for example, `aws-cloudtrail`).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (date-time)The end of the time range, as an RFC3339 timestamp. Ignored unless `start_timestamp` is set. Defaults to the current time when `start_timestamp` is provided. (example: 2026-05-08T00:00:00Z)
string (date-time)The start of the time range, as an RFC3339 timestamp. When provided, the response includes every subscription that was active at any point in `[start_timestamp, end_timestamp]`, and the `status` filter is ignored. (example: 2026-05-01T00:00:00Z)
stringFilter the subscriptions by status. Use `active` to return only currently active subscriptions, or `all` to return every subscription including expired ones. Ignored when `start_timestamp` is provided. Defaults to `active`.
+ +## `SELECT` examples + + + + +Get the sample log generation subscriptions for the organization.<br />Sample log generation injects representative example logs for a given Cloud SIEM content pack into the Logs platform,<br />which can be used to test detection rules without onboarding the underlying integration first.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an eligible<br />pricing model. Other organizations receive a `403 Forbidden` (non-trial orgs) or a `400 Bad Request`<br />(feature disabled), and legacy pricing tiers receive a response with `status: not_available`. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_sample_log_generation_subscriptions +WHERE status = '{{ status }}' +AND start_timestamp = '{{ start_timestamp }}' +AND end_timestamp = '{{ end_timestamp }}' +; +``` + + + + +## `INSERT` examples + + + + +Subscribe to sample log generation for a Cloud SIEM content pack. Sample logs for the<br />requested content pack are injected into the Logs platform for the duration of the subscription,<br />so detection rules can be exercised without onboarding the underlying integration first.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an<br />eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject<br />requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`. + +```sql +INSERT INTO datadog.security.monitoring_sample_log_generation_subscriptions ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: monitoring_sample_log_generation_subscriptions + props: + - name: data + description: | + The subscription request body. + value: + attributes: + content_pack_id: "{{ content_pack_id }}" + duration: "{{ duration }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Unsubscribe from sample log generation for a Cloud SIEM content pack.<br />After unsubscribing, no more sample logs are generated for the requested content pack.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an<br />eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject<br />requests with `400 Bad Request`, and legacy pricing tiers receive a response with `status: not_available`. + +```sql +DELETE FROM datadog.security.monitoring_sample_log_generation_subscriptions +WHERE content_pack_id = '{{ content_pack_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Subscribe to sample log generation for multiple Cloud SIEM content packs in a single call.<br />Each requested content pack is processed independently; the response includes a per-item<br />status so partial successes can be inspected.<br /><br />**Availability**: this endpoint is restricted to Cloud SIEM trial organizations on an<br />eligible pricing model. Non-trial orgs receive `403 Forbidden`, the feature flag may also reject<br />requests with `400 Bad Request`, and legacy pricing tiers receive per-item responses with `status: not_available`. + +```sql +EXEC datadog.security.monitoring_sample_log_generation_subscriptions.bulk_create_sample_log_generation_subscriptions +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/monitoring_security_filter_versions/index.md b/website/docs/services/security/monitoring_security_filter_versions/index.md new file mode 100644 index 0000000..9b78e59 --- /dev/null +++ b/website/docs/services/security/monitoring_security_filter_versions/index.md @@ -0,0 +1,139 @@ +--- +title: monitoring_security_filter_versions +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_security_filter_versions + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_security_filter_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the configuration version. (example: 1)
objectThe attributes describing a single security filter configuration version.
stringThe type of the resource. The value should always be `security_filters_configuration`. (security_filters_configuration) (default: security_filters_configuration, example: security_filters_configuration)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the configured security filters at each historical version of the configuration.<br />Each entry in the response represents the set of all security filters at a given version,<br />ordered from the most recent version to the oldest.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the configured security filters at each historical version of the configuration.<br />Each entry in the response represents the set of all security filters at a given version,<br />ordered from the most recent version to the oldest. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_security_filter_versions +; +``` + + diff --git a/website/docs/services/security/monitoring_signal_entities/index.md b/website/docs/services/security/monitoring_signal_entities/index.md new file mode 100644 index 0000000..3a768c3 --- /dev/null +++ b/website/docs/services/security/monitoring_signal_entities/index.md @@ -0,0 +1,151 @@ +--- +title: monitoring_signal_entities +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_signal_entities + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_signal_entities resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe signal ID the entities are associated with. (example: AAAAAWgN8Xwgr1vKDQAAAABBV2dOOFh3ZzZobm1mWXJFYTR0OA)
objectAttributes containing the entities related to the signal.
stringThe type of the resource. The value should always be `entities`. (entities) (default: entities, example: entities)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
signal_idlimitGet the list of entities related to a security signal, captured at the signal's timestamp.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the signal.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int32)The maximum number of entities to return.
+ +## `SELECT` examples + + + + +Get the list of entities related to a security signal, captured at the signal's timestamp. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_signal_entities +WHERE signal_id = '{{ signal_id }}' -- required +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/security/monitoring_signal_investigation_queries/index.md b/website/docs/services/security/monitoring_signal_investigation_queries/index.md new file mode 100644 index 0000000..9164571 --- /dev/null +++ b/website/docs/services/security/monitoring_signal_investigation_queries/index.md @@ -0,0 +1,145 @@ +--- +title: monitoring_signal_investigation_queries +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_signal_investigation_queries + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_signal_investigation_queries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the suggested action. (example: w00-t10-992)
objectAttributes of a suggested action for a security signal. The available fields depend on the action type.
stringThe type of the suggested action resource. (investigation_log_queries, recommended_blog_posts) (example: investigation_log_queries)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
signal_idGet the list of investigation log queries available for a given security signal.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the signal.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of investigation log queries available for a given security signal. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_signal_investigation_queries +WHERE signal_id = '{{ signal_id }}' -- required +; +``` + + diff --git a/website/docs/services/security/monitoring_signal_suggested_actions/index.md b/website/docs/services/security/monitoring_signal_suggested_actions/index.md new file mode 100644 index 0000000..74ded61 --- /dev/null +++ b/website/docs/services/security/monitoring_signal_suggested_actions/index.md @@ -0,0 +1,145 @@ +--- +title: monitoring_signal_suggested_actions +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_signal_suggested_actions + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_signal_suggested_actions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the suggested action. (example: w00-t10-992)
objectAttributes of a suggested action for a security signal. The available fields depend on the action type.
stringThe type of the suggested action resource. (investigation_log_queries, recommended_blog_posts) (example: investigation_log_queries)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
signal_idGet the list of suggested actions for a given security signal.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the signal.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the list of suggested actions for a given security signal. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_signal_suggested_actions +WHERE signal_id = '{{ signal_id }}' -- required +; +``` + + diff --git a/website/docs/services/security/monitoring_signals/index.md b/website/docs/services/security/monitoring_signals/index.md index 0052367..b2952a4 100644 --- a/website/docs/services/security/monitoring_signals/index.md +++ b/website/docs/services/security/monitoring_signals/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a monitoring_signals resou ## Overview - +
Namemonitoring_signals
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of event. (default: signal, example: signal) + The type of event. (signal) (default: signal, example: signal) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of event. (default: signal, example: signal) + The type of event. (signal) (default: signal, example: signal) @@ -116,45 +117,80 @@ The following methods are available for this resource: - signal_id, region + signal_id Get a signal's details. - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - The list endpoint returns security signals that match a search query.
Both this endpoint and the POST endpoint can be used interchangeably when listing
security signals. + The list endpoint returns security signals that match a search query.<br />Both this endpoint and the POST endpoint can be used interchangeably when listing<br />security signals. + + + + + data + + Change the triage assignees of multiple security signals at once.<br />The maximum number of signals that can be updated in a single request is 199. + + + + + data + + Change the triage states of multiple security signals at once.<br />The maximum number of signals that can be updated in a single request is 199. + + + + + data + + Update the triage state or assignee of multiple security signals at once.<br />The maximum number of signals that can be updated in a single request is 199. - region - Returns security signals that match a search query.
Both this endpoint and the GET endpoint can be used interchangeably for listing
security signals. + + Returns security signals that match a search query.<br />Both this endpoint and the GET endpoint can be used interchangeably for listing<br />security signals. - signal_id, region, data + signal_id, data Modify the triage assignee of a security signal. - signal_id, region, data + signal_id, data Change the related incidents for a security signal. - signal_id, region, data + signal_id, data Change the triage state of a security signal. + + + + signal_id, data + + Update the triage state or assignee of a security signal. + + + + + signal_id, incident_id + + Add a security signal to an incident. This makes it possible to search for signals by incident within the signal explorer and to view the signals on the incident timeline. + @@ -171,16 +207,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the signal. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string (date-time) @@ -234,13 +270,12 @@ attributes, type FROM datadog.security.monitoring_signals WHERE signal_id = '{{ signal_id }}' -- required -AND region = '{{ region }}' -- required ; ``` -The list endpoint returns security signals that match a search query.
Both this endpoint and the POST endpoint can be used interchangeably when listing
security signals. +The list endpoint returns security signals that match a search query.<br />Both this endpoint and the POST endpoint can be used interchangeably when listing<br />security signals. ```sql SELECT @@ -248,8 +283,7 @@ id, attributes, type FROM datadog.security.monitoring_signals -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -263,22 +297,67 @@ AND page[limit] = '{{ page[limit] }}' ## Lifecycle Methods +EXEC variables use wire (API) names. + + + +Change the triage assignees of multiple security signals at once.<br />The maximum number of signals that can be updated in a single request is 199. + +```sql +EXEC datadog.security.monitoring_signals.bulk_edit_security_monitoring_signals_assignee +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Change the triage states of multiple security signals at once.<br />The maximum number of signals that can be updated in a single request is 199. + +```sql +EXEC datadog.security.monitoring_signals.bulk_edit_security_monitoring_signals_state +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Update the triage state or assignee of multiple security signals at once.<br />The maximum number of signals that can be updated in a single request is 199. + +```sql +EXEC datadog.security.monitoring_signals.bulk_edit_security_monitoring_signals +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + -Returns security signals that match a search query.
Both this endpoint and the GET endpoint can be used interchangeably for listing
security signals. +Returns security signals that match a search query.<br />Both this endpoint and the GET endpoint can be used interchangeably for listing<br />security signals. ```sql EXEC datadog.security.monitoring_signals.search_security_monitoring_signals -@region='{{ region }}' --required @@json= '{ "filter": "{{ filter }}", @@ -295,7 +374,6 @@ Modify the triage assignee of a security signal. ```sql EXEC datadog.security.monitoring_signals.edit_security_monitoring_signal_assignee @signal_id='{{ signal_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -310,7 +388,6 @@ Change the related incidents for a security signal. ```sql EXEC datadog.security.monitoring_signals.edit_security_monitoring_signal_incidents @signal_id='{{ signal_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -325,7 +402,6 @@ Change the triage state of a security signal. ```sql EXEC datadog.security.monitoring_signals.edit_security_monitoring_signal_state @signal_id='{{ signal_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -333,4 +409,34 @@ EXEC datadog.security.monitoring_signals.edit_security_monitoring_signal_state ; ```
+ + +Update the triage state or assignee of a security signal. + +```sql +EXEC datadog.security.monitoring_signals.edit_security_monitoring_signal +@signal_id='{{ signal_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Add a security signal to an incident. This makes it possible to search for signals by incident within the signal explorer and to view the signals on the incident timeline. + +```sql +EXEC datadog.security.monitoring_signals.add_security_monitoring_signal_to_incident +@signal_id='{{ signal_id }}' --required, +@@json= +'{ +"add_to_signal_timeline": {{ add_to_signal_timeline }}, +"incident_id": {{ incident_id }}, +"version": {{ version }} +}' +; +``` +
diff --git a/website/docs/services/security/monitoring_suppression_version_histories/index.md b/website/docs/services/security/monitoring_suppression_version_histories/index.md new file mode 100644 index 0000000..69d1ae3 --- /dev/null +++ b/website/docs/services/security/monitoring_suppression_version_histories/index.md @@ -0,0 +1,157 @@ +--- +title: monitoring_suppression_version_histories +hide_title: false +hide_table_of_contents: false +keywords: + - monitoring_suppression_version_histories + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a monitoring_suppression_version_histories resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringID of the suppression.
objectResponse object containing the version history of a suppression.
stringType of data. (suppression_version_history)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
suppression_idpage[size], page[number]Get a suppression's version history.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the suppression rule
integer (int64)Specific page number to return.
integer (int64)Number of items to return per page. The maximum allowed value is 100.
+ +## `SELECT` examples + + + + +Get a suppression's version history. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_suppression_version_histories +WHERE suppression_id = '{{ suppression_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +; +``` + + diff --git a/website/docs/services/security/monitoring_suppressions/index.md b/website/docs/services/security/monitoring_suppressions/index.md index 6e0e21a..55b35dd 100644 --- a/website/docs/services/security/monitoring_suppressions/index.md +++ b/website/docs/services/security/monitoring_suppressions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a monitoring_suppressions ## Overview - +
Namemonitoring_suppressions
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `suppressions`. (default: suppressions, example: suppressions) + The type of the resource. The value should always be `suppressions`. (suppressions) (default: suppressions, example: suppressions) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `suppressions`. (default: suppressions, example: suppressions) + The type of the resource. The value should always be `suppressions`. (suppressions) (default: suppressions, example: suppressions) @@ -116,42 +117,42 @@ The following methods are available for this resource: - suppression_id, region + suppression_id Get the details of a specific suppression rule. - region + query, sort, page[size], page[number] Get the list of all suppression rules. - region, data__data + data Create a new suppression rule. - suppression_id, region, data__data + suppression_id, data Update a specific suppression rule. - suppression_id, region + suppression_id Delete a specific suppression rule. - region, data + data Validate a suppression rule. @@ -171,16 +172,36 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. string The ID of the suppression rule + + + integer (int64) + Specific page number to return. + + + + integer (int64) + Size for a given page. Use `-1` to return all items. + + + + string + Query string. + + + + string + Attribute used to sort the list of suppression rules. Prefix with `-` to sort in descending order. + @@ -204,7 +225,6 @@ attributes, type FROM datadog.security.monitoring_suppressions WHERE suppression_id = '{{ suppression_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -218,7 +238,10 @@ id, attributes, type FROM datadog.security.monitoring_suppressions -WHERE region = '{{ region }}' -- required +WHERE query = '{{ query }}' +AND sort = '{{ sort }}' +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' ; ``` @@ -240,12 +263,10 @@ Create a new suppression rule. ```sql INSERT INTO datadog.security.monitoring_suppressions ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -253,18 +274,27 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: monitoring_suppressions props: - - name: region - value: string - description: Required parameter for the monitoring_suppressions resource. - name: data - value: object description: | Object for a single suppression rule. -``` + value: + attributes: + data_exclusion_query: "{{ data_exclusion_query }}" + description: "{{ description }}" + enabled: {{ enabled }} + expiration_date: {{ expiration_date }} + name: "{{ name }}" + rule_query: "{{ rule_query }}" + start_date: {{ start_date }} + suppression_query: "{{ suppression_query }}" + tags: + - "{{ tags }}" + type: "{{ type }}" +`} +
@@ -284,11 +314,10 @@ Update a specific suppression rule. ```sql UPDATE datadog.security.monitoring_suppressions SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE suppression_id = '{{ suppression_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -311,7 +340,6 @@ Delete a specific suppression rule. ```sql DELETE FROM datadog.security.monitoring_suppressions WHERE suppression_id = '{{ suppression_id }}' --required -AND region = '{{ region }}' --required ; ``` @@ -320,6 +348,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + monitoring_terraform_resources
resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe resource identifier composed of the Terraform type name and the resource ID separated by `|`. (example: datadog_security_monitoring_suppression|abc-123)
objectAttributes of the Terraform export response.
stringThe JSON:API type. Always `format_resource`. (example: format_resource)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
resource_type, resource_idExport a security monitoring resource to a Terraform configuration.<br />The `resource_type` path parameter specifies the type of resource to export<br />and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`.<br />For `rules`, partner rules cannot be exported and return a 400 error.
resource_type, dataConvert a security monitoring resource that doesn't (yet) exist from JSON to Terraform.<br />The `resource_type` path parameter specifies the type of resource to convert<br />and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the security monitoring resource to export.
stringThe type of security monitoring resource to export.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Export a security monitoring resource to a Terraform configuration.<br />The `resource_type` path parameter specifies the type of resource to export<br />and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`.<br />For `rules`, partner rules cannot be exported and return a 400 error. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.monitoring_terraform_resources +WHERE resource_type = '{{ resource_type }}' -- required +AND resource_id = '{{ resource_id }}' -- required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Convert a security monitoring resource that doesn't (yet) exist from JSON to Terraform.<br />The `resource_type` path parameter specifies the type of resource to convert<br />and must be one of `suppressions`, `critical_assets`, `security_filters`, or `rules`. + +```sql +EXEC datadog.security.monitoring_terraform_resources.convert_security_monitoring_terraform_resource +@resource_type='{{ resource_type }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/resource_evaluation_filters/index.md b/website/docs/services/security/resource_evaluation_filters/index.md index 97cb409..08489c2 100644 --- a/website/docs/services/security/resource_evaluation_filters/index.md +++ b/website/docs/services/security/resource_evaluation_filters/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a resource_evaluation_filters -Nameresource_evaluation_filters +Name TypeResource Id @@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Constant string to identify the request type. (example: csm_resource_filter) + Constant string to identify the request type. (csm_resource_filter) (example: csm_resource_filter) @@ -86,14 +87,14 @@ The following methods are available for this resource: - region + cloud_provider, account_id, skip_cache List resource filters. - region, data__data + data Update resource filters. @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -154,8 +155,7 @@ id, attributes, type FROM datadog.security.resource_evaluation_filters -WHERE region = '{{ region }}' -- required -AND cloud_provider = '{{ cloud_provider }}' +WHERE cloud_provider = '{{ cloud_provider }}' AND account_id = '{{ account_id }}' AND skip_cache = '{{ skip_cache }}' ; @@ -179,10 +179,9 @@ Update resource filters. ```sql REPLACE datadog.security.resource_evaluation_filters SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE -region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +data = '{{ data }}' --required RETURNING data; ``` diff --git a/website/docs/services/security/rule_version_history/index.md b/website/docs/services/security/rule_version_history/index.md index e1d51a0..ce145f9 100644 --- a/website/docs/services/security/rule_version_history/index.md +++ b/website/docs/services/security/rule_version_history/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a rule_version_history res ## Overview - +
Namerule_version_history
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of data. + Type of data. (GetRuleVersionHistoryResponse) @@ -86,7 +87,7 @@ The following methods are available for this resource: - rule_id, region + rule_id page[size], page[number] Get a rule's version history. @@ -106,16 +107,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the rule. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + integer (int64) @@ -124,7 +125,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -148,7 +149,6 @@ attributes, type FROM datadog.security.rule_version_history WHERE rule_id = '{{ rule_id }}' -- required -AND region = '{{ region }}' -- required AND page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' ; diff --git a/website/docs/services/security/sboms/index.md b/website/docs/services/security/sboms/index.md index 743bb8f..cb1ad2c 100644 --- a/website/docs/services/security/sboms/index.md +++ b/website/docs/services/security/sboms/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a sboms resource. ## Overview - +
Namesboms
Name
TypeResource
Id
@@ -62,7 +63,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type. (example: sboms) + The JSON:API type. (sboms) (example: sboms) @@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type. (example: sboms) + The JSON:API type. (sboms) (example: sboms) @@ -116,16 +117,16 @@ The following methods are available for this resource: - asset_type, filter[asset_name], region - filter[repo_digest] - Get a single SBOM related to an asset by its type and name.
+ asset_type, filter[asset_name] + filter[repo_digest], ext:format + Get a single SBOM related to an asset by its type and name. - region + page[token], page[number], filter[asset_type], filter[asset_name], filter[package_name], filter[package_version], filter[license_name], filter[license_type] - Get a list of assets SBOMs for an organization.

### Pagination

Please review the [Pagination section] for the "List Vulnerabilities" endpoint.

### Filtering

Please review the [Filtering section] for the "List Vulnerabilities" endpoint.

### Metadata

Please review the [Metadata section] for the "List Vulnerabilities" endpoint. + Get a list of assets SBOMs for an organization.<br /><br />The `filter[asset_type]` parameter is required for initial requests (when no `page[token]` is provided).<br />Subsequent pages encode the asset type in the pagination token, so `filter[asset_type]` is not required<br />for paginated requests. Mixing infrastructure asset types (`Host`, `HostImage`, `Image`, `ServerlessFunction`)<br />with code asset types (`Repository`, `Service`) in the same request is not supported and returns a 400 error.<br /><br />### Pagination<br /><br />Please review the [Pagination section](#pagination) for the "List Vulnerabilities" endpoint.<br /><br />### Filtering<br /><br />Please review the [Filtering section](#filtering) for the "List Vulnerabilities" endpoint.<br /><br />### Metadata<br /><br />Please review the [Metadata section](#metadata) for the "List Vulnerabilities" endpoint. @@ -153,10 +154,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The name of the asset for the SBOM request. (example: github.com/datadog/datadog-agent) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + + + + string + The standard of the SBOM. @@ -166,7 +172,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - The type of the assets for the SBOM request. + The type of the assets for the SBOM request. Required for initial requests (when no `page[token]` is provided). Infrastructure types (`Host`, `HostImage`, `Image`, `ServerlessFunction`) and code types (`Repository`, `Service`) cannot be mixed in the same request. @@ -217,7 +223,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a single SBOM related to an asset by its type and name.
+Get a single SBOM related to an asset by its type and name. ```sql SELECT @@ -227,14 +233,14 @@ type FROM datadog.security.sboms WHERE asset_type = '{{ asset_type }}' -- required AND filter[asset_name] = '{{ filter[asset_name] }}' -- required -AND region = '{{ region }}' -- required AND filter[repo_digest] = '{{ filter[repo_digest] }}' +AND ext:format = '{{ ext:format }}' ; ```
-Get a list of assets SBOMs for an organization.

### Pagination

Please review the [Pagination section] for the "List Vulnerabilities" endpoint.

### Filtering

Please review the [Filtering section] for the "List Vulnerabilities" endpoint.

### Metadata

Please review the [Metadata section] for the "List Vulnerabilities" endpoint. +Get a list of assets SBOMs for an organization.<br /><br />The `filter[asset_type]` parameter is required for initial requests (when no `page[token]` is provided).<br />Subsequent pages encode the asset type in the pagination token, so `filter[asset_type]` is not required<br />for paginated requests. Mixing infrastructure asset types (`Host`, `HostImage`, `Image`, `ServerlessFunction`)<br />with code asset types (`Repository`, `Service`) in the same request is not supported and returns a 400 error.<br /><br />### Pagination<br /><br />Please review the [Pagination section](#pagination) for the "List Vulnerabilities" endpoint.<br /><br />### Filtering<br /><br />Please review the [Filtering section](#filtering) for the "List Vulnerabilities" endpoint.<br /><br />### Metadata<br /><br />Please review the [Metadata section](#metadata) for the "List Vulnerabilities" endpoint. ```sql SELECT @@ -242,8 +248,7 @@ id, attributes, type FROM datadog.security.sboms -WHERE region = '{{ region }}' -- required -AND page[token] = '{{ page[token] }}' +WHERE page[token] = '{{ page[token] }}' AND page[number] = '{{ page[number] }}' AND filter[asset_type] = '{{ filter[asset_type] }}' AND filter[asset_name] = '{{ filter[asset_name] }}' diff --git a/website/docs/services/security/sca_dependencies/index.md b/website/docs/services/security/sca_dependencies/index.md new file mode 100644 index 0000000..576e773 --- /dev/null +++ b/website/docs/services/security/sca_dependencies/index.md @@ -0,0 +1,189 @@ +--- +title: sca_dependencies +hide_title: false +hide_table_of_contents: false +keywords: + - sca_dependencies + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sca_dependencies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
data
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +No description available. + +```sql +INSERT INTO datadog.security.sca_dependencies ( +data +) +SELECT +'{{ data }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: sca_dependencies + props: + - name: data + description: | + The data object in an SCA request, containing the dependency graph attributes and request type. + value: + attributes: + commit: + author_date: "{{ author_date }}" + author_email: "{{ author_email }}" + author_name: "{{ author_name }}" + branch: "{{ branch }}" + committer_email: "{{ committer_email }}" + committer_name: "{{ committer_name }}" + sha: "{{ sha }}" + dependencies: + - exclusions: "{{ exclusions }}" + group: "{{ group }}" + is_dev: {{ is_dev }} + is_direct: {{ is_direct }} + language: "{{ language }}" + locations: "{{ locations }}" + name: "{{ name }}" + package_manager: "{{ package_manager }}" + purl: "{{ purl }}" + reachable_symbol_properties: "{{ reachable_symbol_properties }}" + version: "{{ version }}" + env: "{{ env }}" + files: + - name: "{{ name }}" + purl: "{{ purl }}" + relations: + - depends_on: "{{ depends_on }}" + ref: "{{ ref }}" + repository: + url: "{{ url }}" + service: "{{ service }}" + tags: "{{ tags }}" + vulnerabilities: + - affects: "{{ affects }}" + bom_ref: "{{ bom_ref }}" + id: "{{ id }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Accepted + +```sql +EXEC datadog.security.sca_dependencies.create_scascan +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/sca_dependency_scans/index.md b/website/docs/services/security/sca_dependency_scans/index.md new file mode 100644 index 0000000..e458b2a --- /dev/null +++ b/website/docs/services/security/sca_dependency_scans/index.md @@ -0,0 +1,109 @@ +--- +title: sca_dependency_scans +hide_title: false +hide_table_of_contents: false +keywords: + - sca_dependency_scans + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sca_dependency_scans resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
job_id
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe job identifier returned when the scan was submitted.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +OK + +```sql +EXEC datadog.security.sca_dependency_scans.get_scascan +@job_id='{{ job_id }}' --required +; +``` + + diff --git a/website/docs/services/security/sca_licenses/index.md b/website/docs/services/security/sca_licenses/index.md new file mode 100644 index 0000000..402370f --- /dev/null +++ b/website/docs/services/security/sca_licenses/index.md @@ -0,0 +1,139 @@ +--- +title: sca_licenses +hide_title: false +hide_table_of_contents: false +keywords: + - sca_licenses + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sca_licenses resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier for this licenses list response. (example: 0190a3d4-1234-7000-8000-000000000000)
objectThe attributes of the licenses list response, containing the array of SPDX licenses.
stringThe type identifier for license list responses. (licenserequest) (default: licenserequest, example: licenserequest)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +OK + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.sca_licenses +; +``` + + diff --git a/website/docs/services/security/sca_vulnerabilities/index.md b/website/docs/services/security/sca_vulnerabilities/index.md new file mode 100644 index 0000000..71363b3 --- /dev/null +++ b/website/docs/services/security/sca_vulnerabilities/index.md @@ -0,0 +1,107 @@ +--- +title: sca_vulnerabilities +hide_title: false +hide_table_of_contents: false +keywords: + - sca_vulnerabilities + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a sca_vulnerabilities resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +OK + +```sql +EXEC datadog.security.sca_vulnerabilities.create_scaresolve_vulnerable_symbols +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/scanned_assets_metadata/index.md b/website/docs/services/security/scanned_assets_metadata/index.md new file mode 100644 index 0000000..217ee9d --- /dev/null +++ b/website/docs/services/security/scanned_assets_metadata/index.md @@ -0,0 +1,175 @@ +--- +title: scanned_assets_metadata +hide_title: false +hide_table_of_contents: false +keywords: + - scanned_assets_metadata + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a scanned_assets_metadata resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the scanned asset metadata. (example: Host|i-0fc7edef1ab26d7ef)
objectThe attributes of a scanned asset metadata.
stringThe JSON:API type. (scanned-assets-metadata) (example: scanned-assets-metadata)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page[token], page[number], filter[asset.type], filter[asset.name], filter[last_success.origin], filter[last_success.env]Get a list of security scanned assets metadata for an organization.<br /><br />### Pagination<br /><br />For the "List Vulnerabilities" endpoint, see the [Pagination section](#pagination).<br /><br />### Filtering<br /><br />For the "List Vulnerabilities" endpoint, see the [Filtering section](#filtering).<br /><br />### Metadata<br /><br /> For the "List Vulnerabilities" endpoint, see the [Metadata section](#metadata).<br /><br />### Related endpoints<br /><br />This endpoint returns additional metadata for cloud resources that is not available from the standard resource endpoints. To access a richer dataset, call this endpoint together with the relevant resource endpoint(s) and merge (join) their results using the resource identifier.<br /><br />**Hosts**<br /><br />To enrich host data, join the response from the [Hosts](https:​//docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields:<br /><br />| ENDPOINT | JOIN KEY | TYPE |<br />| --- | --- | --- |<br />| [/api/v1/hosts](https:​//docs.datadoghq.com/api/latest/hosts/) | host_list.host_name | string |<br />| /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string |<br /><br />**Host Images**<br /><br />To enrich host image data, join the response from the [Hosts](https:​//docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields:<br /><br />| ENDPOINT | JOIN KEY | TYPE |<br />| --- | --- | --- |<br />| [/api/v1/hosts](https:​//docs.datadoghq.com/api/latest/hosts/) | host_list.tags_by_source["Amazon Web Services"]["image"] | string |<br />| /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string |<br /><br />**Container Images**<br /><br />To enrich container image data, join the response from the [Container Images](https:​//docs.datadoghq.com/api/latest/container-images/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields:<br /><br />| ENDPOINT | JOIN KEY | TYPE |<br />| --- | --- | --- |<br />| [/api/v2/container_images](https:​//docs.datadoghq.com/api/latest/container-images/) | `data.attributes.name`@`data.attributes.repo_digest` | string |<br />| /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string |
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe name of the scanned asset. (example: i-0fc7edef1ab26d7ef)
stringThe type of the scanned asset.
stringThe environment of last success scan. (example: prod)
stringThe origin of last success scan. (example: agent)
integer (int64)The page number to be retrieved. It should be equal to or greater than 1. (example: 1)
stringIts value must come from the `links` section of the response of the first request. Do not manually edit it. (example: b82cef018aab81ed1d4bb4xb35xxfc065da7efa685fbcecdbd338f3015e3afabbbfa3a911b4984_721ee28a-zecb-4e45-9960-c42065b574f4)
+ +## `SELECT` examples + + + + +Get a list of security scanned assets metadata for an organization.<br /><br />### Pagination<br /><br />For the "List Vulnerabilities" endpoint, see the [Pagination section](#pagination).<br /><br />### Filtering<br /><br />For the "List Vulnerabilities" endpoint, see the [Filtering section](#filtering).<br /><br />### Metadata<br /><br /> For the "List Vulnerabilities" endpoint, see the [Metadata section](#metadata).<br /><br />### Related endpoints<br /><br />This endpoint returns additional metadata for cloud resources that is not available from the standard resource endpoints. To access a richer dataset, call this endpoint together with the relevant resource endpoint(s) and merge (join) their results using the resource identifier.<br /><br />**Hosts**<br /><br />To enrich host data, join the response from the [Hosts](https:​//docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields:<br /><br />| ENDPOINT | JOIN KEY | TYPE |<br />| --- | --- | --- |<br />| [/api/v1/hosts](https:​//docs.datadoghq.com/api/latest/hosts/) | host_list.host_name | string |<br />| /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string |<br /><br />**Host Images**<br /><br />To enrich host image data, join the response from the [Hosts](https:​//docs.datadoghq.com/api/latest/hosts/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields:<br /><br />| ENDPOINT | JOIN KEY | TYPE |<br />| --- | --- | --- |<br />| [/api/v1/hosts](https:​//docs.datadoghq.com/api/latest/hosts/) | host_list.tags_by_source["Amazon Web Services"]["image"] | string |<br />| /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string |<br /><br />**Container Images**<br /><br />To enrich container image data, join the response from the [Container Images](https:​//docs.datadoghq.com/api/latest/container-images/) endpoint with the response from the scanned-assets-metadata endpoint on the following key fields:<br /><br />| ENDPOINT | JOIN KEY | TYPE |<br />| --- | --- | --- |<br />| [/api/v2/container_images](https:​//docs.datadoghq.com/api/latest/container-images/) | `data.attributes.name`@`data.attributes.repo_digest` | string |<br />| /api/v2/security/scanned-assets-metadata | data.attributes.asset.name | string | + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.scanned_assets_metadata +WHERE page[token] = '{{ page[token] }}' +AND page[number] = '{{ page[number] }}' +AND filter[asset.type] = '{{ filter[asset.type] }}' +AND filter[asset.name] = '{{ filter[asset.name] }}' +AND filter[last_success.origin] = '{{ filter[last_success.origin] }}' +AND filter[last_success.env] = '{{ filter[last_success.env] }}' +; +``` + + diff --git a/website/docs/services/security/scanning_groups/index.md b/website/docs/services/security/scanning_groups/index.md index 0bef186..9152050 100644 --- a/website/docs/services/security/scanning_groups/index.md +++ b/website/docs/services/security/scanning_groups/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a scanning_groups resource ## Overview - +
Namescanning_groups
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Sensitive Data Scanner configuration type. (default: sensitive_data_scanner_configuration, example: sensitive_data_scanner_configuration) + Sensitive Data Scanner configuration type. (sensitive_data_scanner_configuration) (default: sensitive_data_scanner_configuration, example: sensitive_data_scanner_configuration) @@ -91,35 +92,35 @@ The following methods are available for this resource: - region + List all the Scanning groups in your organization. - region - Create a scanning group.
The request MAY include a configuration relationship.
A rules relationship can be omitted entirely, but if it is included it MUST be
null or an empty array (rules cannot be created at the same time).
The new group will be ordered last within the configuration. + + Create a scanning group.<br />The request MAY include a configuration relationship.<br />A rules relationship can be omitted entirely, but if it is included it MUST be<br />null or an empty array (rules cannot be created at the same time).<br />The new group will be ordered last within the configuration. - group_id, region, data__data, data__meta + group_id, data, meta - Update a group, including the order of the rules.
Rules within the group are reordered by including a rules relationship. If the rules
relationship is present, its data section MUST contain linkages for all of the rules
currently in the group, and MUST NOT contain any others. + Update a group, including the order of the rules.<br />Rules within the group are reordered by including a rules relationship. If the rules<br />relationship is present, its data section MUST contain linkages for all of the rules<br />currently in the group, and MUST NOT contain any others. - group_id, region + group_id Delete a given group. - region, data, meta + data, meta Reorder the list of groups. @@ -144,10 +145,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of a group of rules. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -171,7 +172,6 @@ attributes, relationships, type FROM datadog.security.scanning_groups -WHERE region = '{{ region }}' -- required ; ```
@@ -189,18 +189,16 @@ WHERE region = '{{ region }}' -- required > -Create a scanning group.
The request MAY include a configuration relationship.
A rules relationship can be omitted entirely, but if it is included it MUST be
null or an empty array (rules cannot be created at the same time).
The new group will be ordered last within the configuration. +Create a scanning group.<br />The request MAY include a configuration relationship.<br />A rules relationship can be omitted entirely, but if it is included it MUST be<br />null or an empty array (rules cannot be created at the same time).<br />The new group will be ordered last within the configuration. ```sql INSERT INTO datadog.security.scanning_groups ( -data__data, -data__meta, -region +data, +meta ) SELECT '{{ data }}', -'{{ meta }}', -'{{ region }}' +'{{ meta }}' RETURNING data, meta @@ -209,22 +207,41 @@ meta
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: scanning_groups props: - - name: region - value: string - description: Required parameter for the scanning_groups resource. - name: data - value: object description: | Data related to the creation of a group. + value: + attributes: + description: "{{ description }}" + filter: + query: "{{ query }}" + is_enabled: {{ is_enabled }} + name: "{{ name }}" + product_list: + - "{{ product_list }}" + samplings: + - product: "{{ product }}" + rate: {{ rate }} + relationships: + configuration: + data: + id: "{{ id }}" + type: "{{ type }}" + rules: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" - name: meta - value: object description: | Meta payload containing information about the API. -``` + value: + version: {{ version }} +`} + @@ -239,18 +256,17 @@ meta > -Update a group, including the order of the rules.
Rules within the group are reordered by including a rules relationship. If the rules
relationship is present, its data section MUST contain linkages for all of the rules
currently in the group, and MUST NOT contain any others. +Update a group, including the order of the rules.<br />Rules within the group are reordered by including a rules relationship. If the rules<br />relationship is present, its data section MUST contain linkages for all of the rules<br />currently in the group, and MUST NOT contain any others. ```sql UPDATE datadog.security.scanning_groups SET -data__data = '{{ data }}', -data__meta = '{{ meta }}' +data = '{{ data }}', +meta = '{{ meta }}' WHERE group_id = '{{ group_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required -AND data__meta = '{{ meta }}' --required +AND data = '{{ data }}' --required +AND meta = '{{ meta }}' --required RETURNING meta; ``` @@ -273,7 +289,6 @@ Delete a given group. ```sql DELETE FROM datadog.security.scanning_groups WHERE group_id = '{{ group_id }}' --required -AND region = '{{ region }}' --required ; ```
@@ -282,6 +297,8 @@ AND region = '{{ region }}' --required ## Lifecycle Methods +EXEC variables use wire (API) names. + scanning_rules
resource. ## Overview - +
Namescanning_rules
Name
TypeResource
Id
@@ -52,21 +53,21 @@ The following methods are available for this resource: - region, data__data, data__meta + data, meta - Create a scanning rule in a sensitive data scanner group, ordered last.
The posted rule MUST include a group relationship.
It MUST include either a standard_pattern relationship or a regex attribute, but not both.
If included_attributes is empty or missing, we will scan all attributes except
excluded_attributes. If both are missing, we will scan the whole event. + Create a scanning rule in a sensitive data scanner group, ordered last.<br />The posted rule MUST include a group relationship.<br />It MUST include either a standard_pattern relationship or a regex attribute, but not both.<br />If included_attributes is empty or missing, we will scan all attributes except<br />excluded_attributes. If both are missing, we will scan the whole event. - rule_id, region, data__data, data__meta + rule_id, data, meta - Update a scanning rule.
The request body MUST NOT include a standard_pattern relationship, as that relationship
is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern
relationship will also result in an error. + Update a scanning rule.<br />The request body MUST NOT include a standard_pattern relationship, as that relationship<br />is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern<br />relationship will also result in an error. - rule_id, region + rule_id Delete a given rule. @@ -86,16 +87,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the rule. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -110,18 +111,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Create a scanning rule in a sensitive data scanner group, ordered last.
The posted rule MUST include a group relationship.
It MUST include either a standard_pattern relationship or a regex attribute, but not both.
If included_attributes is empty or missing, we will scan all attributes except
excluded_attributes. If both are missing, we will scan the whole event. +Create a scanning rule in a sensitive data scanner group, ordered last.<br />The posted rule MUST include a group relationship.<br />It MUST include either a standard_pattern relationship or a regex attribute, but not both.<br />If included_attributes is empty or missing, we will scan all attributes except<br />excluded_attributes. If both are missing, we will scan the whole event. ```sql INSERT INTO datadog.security.scanning_rules ( -data__data, -data__meta, -region +data, +meta ) SELECT '{{ data }}' /* required */, -'{{ meta }}' /* required */, -'{{ region }}' +'{{ meta }}' /* required */ RETURNING data, meta @@ -130,22 +129,59 @@ meta
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: scanning_rules props: - - name: region - value: string - description: Required parameter for the scanning_rules resource. - name: data - value: object description: | Data related to the creation of a rule. + value: + attributes: + description: "{{ description }}" + excluded_namespaces: + - "{{ excluded_namespaces }}" + included_keyword_configuration: + character_count: {{ character_count }} + keywords: + - "{{ keywords }}" + use_recommended_keywords: {{ use_recommended_keywords }} + is_enabled: {{ is_enabled }} + name: "{{ name }}" + namespaces: + - "{{ namespaces }}" + pattern: "{{ pattern }}" + priority: {{ priority }} + suppressions: + ends_with: + - "{{ ends_with }}" + exact_match: + - "{{ exact_match }}" + starts_with: + - "{{ starts_with }}" + tags: + - "{{ tags }}" + text_replacement: + number_of_chars: {{ number_of_chars }} + replacement_string: "{{ replacement_string }}" + should_save_match: {{ should_save_match }} + type: "{{ type }}" + relationships: + group: + data: + id: "{{ id }}" + type: "{{ type }}" + standard_pattern: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" - name: meta - value: object description: | Meta payload containing information about the API. -``` + value: + version: {{ version }} +`} + @@ -160,18 +196,17 @@ meta > -Update a scanning rule.
The request body MUST NOT include a standard_pattern relationship, as that relationship
is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern
relationship will also result in an error. +Update a scanning rule.<br />The request body MUST NOT include a standard_pattern relationship, as that relationship<br />is non-editable. Trying to edit the regex attribute of a rule with a standard_pattern<br />relationship will also result in an error. ```sql UPDATE datadog.security.scanning_rules SET -data__data = '{{ data }}', -data__meta = '{{ meta }}' +data = '{{ data }}', +meta = '{{ meta }}' WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required -AND data__meta = '{{ meta }}' --required +AND data = '{{ data }}' --required +AND meta = '{{ meta }}' --required RETURNING meta; ``` @@ -194,7 +229,6 @@ Delete a given rule. ```sql DELETE FROM datadog.security.scanning_rules WHERE rule_id = '{{ rule_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/security/security_entity_risk_scores/index.md b/website/docs/services/security/security_entity_risk_scores/index.md new file mode 100644 index 0000000..169aaac --- /dev/null +++ b/website/docs/services/security/security_entity_risk_scores/index.md @@ -0,0 +1,244 @@ +--- +title: security_entity_risk_scores +hide_title: false +hide_table_of_contents: false +keywords: + - security_entity_risk_scores + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a security_entity_risk_scores resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the entity (example: arn:aws:iam::123456789012:user/john.doe)
objectAttributes of an entity risk score.
stringResource type. (SecurityEntityRiskScore) (example: SecurityEntityRiskScore)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the entity (example: arn:aws:iam::123456789012:user/john.doe)
objectAttributes of an entity risk score.
stringResource type. (SecurityEntityRiskScore) (example: SecurityEntityRiskScore)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
entity_idGet the risk score for a specific entity by its ID. Returns security risk assessment including risk score, severity, detected signals, misconfigurations, and identity risks.
from, to, page[size], page[number], page[query_id], filter[sort], filter[query], entity_typeGet a list of entity risk scores for your organization. Entity risk scores provide security risk assessment for entities like cloud resources, identities, or services based on detected signals, misconfigurations, and identity risks.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe URL-encoded unique identifier for the entity.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arrayFilter by entity type(s). Can specify multiple values. (wire: entityType)
stringSupports filtering by entity attributes, risk scores, severity, and more. Example: `severity:critical AND entityType:aws_iam_user`
stringSort order for results. Format: `field:direction` where direction is `asc` or `desc`. Supported fields: `riskScore`, `lastDetected`, `firstDetected`, `entityName`, `signalsDetected`.
integer (int64)Start time for the query in Unix timestamp (milliseconds). Defaults to 2 weeks ago.
integer (int64)Page number to return (1-indexed).
stringQuery ID for pagination consistency. (wire: page[queryId])
integer (int64)Size of the page to return. Maximum is 1000.
integer (int64)End time for the query in Unix timestamp (milliseconds). Defaults to now.
+ +## `SELECT` examples + + + + +Get the risk score for a specific entity by its ID. Returns security risk assessment including risk score, severity, detected signals, misconfigurations, and identity risks. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.security_entity_risk_scores +WHERE entity_id = '{{ entity_id }}' -- required +; +``` + + + +Get a list of entity risk scores for your organization. Entity risk scores provide security risk assessment for entities like cloud resources, identities, or services based on detected signals, misconfigurations, and identity risks. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.security_entity_risk_scores +WHERE from = '{{ from }}' +AND to = '{{ to }}' +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND page[query_id] = '{{ page[query_id] }}' +AND filter[sort] = '{{ filter[sort] }}' +AND filter[query] = '{{ filter[query] }}' +AND entity_type = '{{ entity_type }}' +; +``` + + diff --git a/website/docs/services/security/security_findings/index.md b/website/docs/services/security/security_findings/index.md new file mode 100644 index 0000000..0e09ffe --- /dev/null +++ b/website/docs/services/security/security_findings/index.md @@ -0,0 +1,217 @@ +--- +title: security_findings +hide_title: false +hide_table_of_contents: false +keywords: + - security_findings + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a security_findings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique ID of the security finding. (example: ZGVmLTAwcC1pZXJ-aS0wZjhjNjMyZDNmMzRlZTgzNw==)
objectThe JSON object containing all attributes of the security finding.
stringThe type of the security finding resource. (finding) (default: finding, example: finding)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
filter[query], page[cursor], page[limit], sortGet a list of security findings that match a search query. [See the schema for security findings](https:​//docs.datadoghq.com/security/guide/findings-schema/).<br /><br />### Query Syntax<br /><br />This endpoint uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix.<br /><br />Example: `@severity:(critical OR high) @status:open team:platform`
dataAssign or unassign security findings.<br />You can assign up to 100 security findings per request. Set `assignee_id` to the unique identifier of the Datadog user you want to assign the findings to. Omit `assignee_id` (or set it to `null`) to unassign the findings. Per-finding warnings and failures are returned in the response `meta` object.
Get a list of security findings that match a search query. [See the schema for security findings](https:​//docs.datadoghq.com/security/guide/findings-schema/).<br /><br />### Query Syntax<br /><br />The API uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix.<br /><br />Example: `@severity:(critical OR high) @status:open team:platform`
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe search query following log search syntax. (example: @severity:(critical OR high) @status:open team:platform)
stringGet the next page of results with a cursor provided in the previous query. (example: eyJhZnRlciI6IkF3QUFBWnPcm1pd0FBQUJbVlBQUKBa1pqRTVdZUzSTBNemN0YWiIsLTE3Mjk0MzYwMjFdfQ==)
integer (int64)The maximum number of findings in the response. (example: 25)
stringSorts by @detection_changed_at.
+ +## `SELECT` examples + + + + +Get a list of security findings that match a search query. [See the schema for security findings](https:​//docs.datadoghq.com/security/guide/findings-schema/).<br /><br />### Query Syntax<br /><br />This endpoint uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix.<br /><br />Example: `@severity:(critical OR high) @status:open team:platform` + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.security_findings +WHERE filter[query] = '{{ filter[query] }}' +AND page[cursor] = '{{ page[cursor] }}' +AND page[limit] = '{{ page[limit] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Assign or unassign security findings.<br />You can assign up to 100 security findings per request. Set `assignee_id` to the unique identifier of the Datadog user you want to assign the findings to. Omit `assignee_id` (or set it to `null`) to unassign the findings. Per-finding warnings and failures are returned in the response `meta` object. + +```sql +EXEC datadog.security.security_findings.update_findings_assignee +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Get a list of security findings that match a search query. [See the schema for security findings](https:​//docs.datadoghq.com/security/guide/findings-schema/).<br /><br />### Query Syntax<br /><br />The API uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix.<br /><br />Example: `@severity:(critical OR high) @status:open team:platform` + +```sql +EXEC datadog.security.security_findings.search_security_findings +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/siem_ioc_explorer_indicators/index.md b/website/docs/services/security/siem_ioc_explorer_indicators/index.md new file mode 100644 index 0000000..72cccc3 --- /dev/null +++ b/website/docs/services/security/siem_ioc_explorer_indicators/index.md @@ -0,0 +1,169 @@ +--- +title: siem_ioc_explorer_indicators +hide_title: false +hide_table_of_contents: false +keywords: + - siem_ioc_explorer_indicators + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a siem_ioc_explorer_indicators resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the response.
objectAttributes of the get indicator response.
stringResponse type identifier.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
indicatorocsf, include_triage_history, triage_history_limit, triage_history_offsetGet detailed information about a specific indicator of compromise (IoC).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe indicator value to look up (for example, an IP address or domain).
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanInclude full triage history for the indicator.
booleanWhen true, return only OCSF field-based matches. When false, return regex/message-based matches.
integer (int32)Maximum number of triage history events returned. Only applied when `include_triage_history` is true.
integer (int32)Pagination offset into the triage history. Only applied when `include_triage_history` is true.
+ +## `SELECT` examples + + + + +Get detailed information about a specific indicator of compromise (IoC). + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.siem_ioc_explorer_indicators +WHERE indicator = '{{ indicator }}' -- required +AND ocsf = '{{ ocsf }}' +AND include_triage_history = '{{ include_triage_history }}' +AND triage_history_limit = '{{ triage_history_limit }}' +AND triage_history_offset = '{{ triage_history_offset }}' +; +``` + + diff --git a/website/docs/services/security/siem_ioc_explorer_triages/index.md b/website/docs/services/security/siem_ioc_explorer_triages/index.md new file mode 100644 index 0000000..0b3adee --- /dev/null +++ b/website/docs/services/security/siem_ioc_explorer_triages/index.md @@ -0,0 +1,124 @@ +--- +title: siem_ioc_explorer_triages +hide_title: false +hide_table_of_contents: false +keywords: + - siem_ioc_explorer_triages + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a siem_ioc_explorer_triages resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataSet the triage state of an indicator of compromise (IoC). This creates or<br />updates the triage state for the indicator in your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Set the triage state of an indicator of compromise (IoC). This creates or<br />updates the triage state for the indicator in your organization. + +```sql +INSERT INTO datadog.security.siem_ioc_explorer_triages ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: siem_ioc_explorer_triages + props: + - name: data + description: | + Data object for the triage write request. + value: + attributes: + indicator: "{{ indicator }}" + triage_state: "{{ triage_state }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/security/siem_ioc_explorers/index.md b/website/docs/services/security/siem_ioc_explorers/index.md new file mode 100644 index 0000000..4ef1e4e --- /dev/null +++ b/website/docs/services/security/siem_ioc_explorers/index.md @@ -0,0 +1,187 @@ +--- +title: siem_ioc_explorers +hide_title: false +hide_table_of_contents: false +keywords: + - siem_ioc_explorers + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a siem_ioc_explorers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the response.
objectAttributes of the IoC Explorer list response.
stringResponse type identifier.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
limit, offset, query, sort[column], sort[order], ocsf, worked_by, triage_stateGet a list of indicators of compromise (IoCs) matching the specified filters.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int32)Number of results per page.
booleanWhen true, return only OCSF field-based matches. When false, return regex/message-based matches.
integer (int32)Pagination offset.
stringSearch/filter query (supports field:value syntax).
stringSort column: score, first_seen_ts_epoch, last_seen_ts_epoch, indicator, indicator_type, signal_count, log_count, category, as_type.
stringSort order: asc or desc.
stringFilter by triage state.
stringFilter indicators whose triage state was updated by a specific user identified by their handle.
+ +## `SELECT` examples + + + + +Get a list of indicators of compromise (IoCs) matching the specified filters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.siem_ioc_explorers +WHERE limit = '{{ limit }}' +AND offset = '{{ offset }}' +AND query = '{{ query }}' +AND sort[column] = '{{ sort[column] }}' +AND sort[order] = '{{ sort[order] }}' +AND ocsf = '{{ ocsf }}' +AND worked_by = '{{ worked_by }}' +AND triage_state = '{{ triage_state }}' +; +``` + + diff --git a/website/docs/services/security/signal_notification_rules/index.md b/website/docs/services/security/signal_notification_rules/index.md index 9ca293c..2ec4089 100644 --- a/website/docs/services/security/signal_notification_rules/index.md +++ b/website/docs/services/security/signal_notification_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a signal_notification_rules -Namesignal_notification_rules +Name TypeResource Id @@ -64,7 +65,7 @@ Notification rule details. string - The rule type associated to notification rules. (example: notification_rules) + The rule type associated to notification rules. (notification_rules) (example: notification_rules) @@ -95,7 +96,7 @@ The list of notification rules. string - The rule type associated to notification rules. (example: notification_rules) + The rule type associated to notification rules. (notification_rules) (example: notification_rules) @@ -120,35 +121,35 @@ The following methods are available for this resource: - id, region + id Get the details of a notification rule for security signals. - region + Returns the list of notification rules for security signals. - region + Create a new notification rule for security signals and return the created rule. - id, region + id Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated. - id, region + id Delete a notification rule for security signals. @@ -173,10 +174,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string ID of the notification rule. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -201,7 +202,6 @@ attributes, type FROM datadog.security.signal_notification_rules WHERE id = '{{ id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -215,7 +215,6 @@ id, attributes, type FROM datadog.security.signal_notification_rules -WHERE region = '{{ region }}' -- required ; ``` @@ -237,12 +236,10 @@ Create a new notification rule for security signals and return the created rule. ```sql INSERT INTO datadog.security.signal_notification_rules ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -250,18 +247,31 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: signal_notification_rules props: - - name: region - value: string - description: Required parameter for the signal_notification_rules resource. - name: data - value: object description: | Data of the notification rule create request: the rule type, and the rule attributes. All fields are required. -``` + value: + attributes: + enabled: {{ enabled }} + name: "{{ name }}" + routing: + mode: "{{ mode }}" + selectors: + query: "{{ query }}" + rule_types: + - "{{ rule_types }}" + severities: + - "{{ severities }}" + trigger_source: "{{ trigger_source }}" + targets: + - "{{ targets }}" + time_aggregation: {{ time_aggregation }} + type: "{{ type }}" +`} + @@ -281,10 +291,9 @@ Partially update the notification rule. All fields are optional; if a field is n ```sql UPDATE datadog.security.signal_notification_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -307,7 +316,6 @@ Delete a notification rule for security signals. ```sql DELETE FROM datadog.security.signal_notification_rules WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/security/standard_patterns/index.md b/website/docs/services/security/standard_patterns/index.md index 4ea7027..a9fa53c 100644 --- a/website/docs/services/security/standard_patterns/index.md +++ b/website/docs/services/security/standard_patterns/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a standard_patterns resour ## Overview - +
Namestandard_patterns
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Sensitive Data Scanner standard pattern type. (default: sensitive_data_scanner_standard_pattern, example: sensitive_data_scanner_standard_pattern) + Sensitive Data Scanner standard pattern type. (sensitive_data_scanner_standard_pattern) (default: sensitive_data_scanner_standard_pattern, example: sensitive_data_scanner_standard_pattern) @@ -86,7 +87,7 @@ The following methods are available for this resource: - region + Returns all standard patterns. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -132,7 +133,6 @@ id, attributes, type FROM datadog.security.standard_patterns -WHERE region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/security/static_analysis_ai_memories/index.md b/website/docs/services/security/static_analysis_ai_memories/index.md new file mode 100644 index 0000000..fc522cd --- /dev/null +++ b/website/docs/services/security/static_analysis_ai_memories/index.md @@ -0,0 +1,226 @@ +--- +title: static_analysis_ai_memories +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_ai_memories + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_ai_memories resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe numeric identifier of the violation result. (example: 42)
objectResponse attributes of an AI memory violation result.
stringAI memory violation result resource type. (ai_memory_violation_result) (example: ai_memory_violation_result)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all AI memory violation results for the authenticated organization.
Add a new AI memory violation result for the authenticated organization.
idDelete an AI memory violation result by its numeric identifier.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe numeric identifier of the memory violation result.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all AI memory violation results for the authenticated organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_memories +; +``` + + + + +## `INSERT` examples + + + + +Add a new AI memory violation result for the authenticated organization. + +```sql +INSERT INTO datadog.security.static_analysis_ai_memories ( +data +) +SELECT +'{{ data }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: static_analysis_ai_memories + props: + - name: data + description: | + Request data for creating an AI memory violation result. + value: + attributes: + line: {{ line }} + message: "{{ message }}" + name: "{{ name }}" + repository_id: "{{ repository_id }}" + rule: "{{ rule }}" + sha: "{{ sha }}" + type: "{{ type }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete an AI memory violation result by its numeric identifier. + +```sql +DELETE FROM datadog.security.static_analysis_ai_memories +WHERE id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/security/static_analysis_ai_prompts/index.md b/website/docs/services/security/static_analysis_ai_prompts/index.md new file mode 100644 index 0000000..064854b --- /dev/null +++ b/website/docs/services/security/static_analysis_ai_prompts/index.md @@ -0,0 +1,139 @@ +--- +title: static_analysis_ai_prompts +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_ai_prompts + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_ai_prompts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe prompt identifier. (example: my-ai-ruleset/my-ai-rule)
objectResponse attributes of an AI prompt.
stringAI prompt resource type. (ai_prompt) (example: ai_prompt)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all AI prompts, including default prompts and custom AI rule prompts for the authenticated organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all AI prompts, including default prompts and custom AI rule prompts for the authenticated organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_prompts +; +``` + + diff --git a/website/docs/services/security/static_analysis_ai_ruleset_rule_revisions/index.md b/website/docs/services/security/static_analysis_ai_ruleset_rule_revisions/index.md new file mode 100644 index 0000000..f165afb --- /dev/null +++ b/website/docs/services/security/static_analysis_ai_ruleset_rule_revisions/index.md @@ -0,0 +1,293 @@ +--- +title: static_analysis_ai_ruleset_rule_revisions +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_ai_ruleset_rule_revisions + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_ai_ruleset_rule_revisions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe revision identifier. (example: revision-abc-123)
objectResponse attributes of an AI custom rule revision.
stringAI custom rule revision resource type. (ai_rule_revision) (example: ai_rule_revision)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe revision identifier. (example: revision-abc-123)
objectResponse attributes of an AI custom rule revision.
stringAI custom rule revision resource type. (ai_rule_revision) (example: ai_rule_revision)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_name, rule_name, idGet a specific revision of an AI custom rule.
ruleset_name, rule_namepage[offset], page[limit]Get all revisions for an AI custom rule.
ruleset_name, rule_nameCreate a new revision for an AI custom rule.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe revision identifier.
stringThe rule name.
stringThe ruleset name.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The maximum number of revisions to return.
integer (int64)The offset for pagination.
+ +## `SELECT` examples + + + + +Get a specific revision of an AI custom rule. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_ruleset_rule_revisions +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND rule_name = '{{ rule_name }}' -- required +AND id = '{{ id }}' -- required +; +``` + + + +Get all revisions for an AI custom rule. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_ruleset_rule_revisions +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND rule_name = '{{ rule_name }}' -- required +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new revision for an AI custom rule. + +```sql +INSERT INTO datadog.security.static_analysis_ai_ruleset_rule_revisions ( +data, +ruleset_name, +rule_name +) +SELECT +'{{ data }}', +'{{ ruleset_name }}', +'{{ rule_name }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: static_analysis_ai_ruleset_rule_revisions + props: + - name: ruleset_name + value: "{{ ruleset_name }}" + description: Required parameter for the static_analysis_ai_ruleset_rule_revisions resource. + - name: rule_name + value: "{{ rule_name }}" + description: Required parameter for the static_analysis_ai_ruleset_rule_revisions resource. + - name: data + description: | + Request data for creating an AI custom rule revision. + value: + attributes: + category: "{{ category }}" + content: "{{ content }}" + cwe: "{{ cwe }}" + description: "{{ description }}" + directories: + - "{{ directories }}" + execution_mode: "{{ execution_mode }}" + globs: + - "{{ globs }}" + is_published: {{ is_published }} + is_testing: {{ is_testing }} + severity: "{{ severity }}" + short_description: "{{ short_description }}" + version_id: {{ version_id }} + id: "{{ id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/security/static_analysis_ai_ruleset_rules/index.md b/website/docs/services/security/static_analysis_ai_ruleset_rules/index.md new file mode 100644 index 0000000..f444757 --- /dev/null +++ b/website/docs/services/security/static_analysis_ai_ruleset_rules/index.md @@ -0,0 +1,235 @@ +--- +title: static_analysis_ai_ruleset_rules +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_ai_ruleset_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_ai_ruleset_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe rule identifier. (example: my-ai-rule)
objectAn AI custom rule embedded within a ruleset response.
stringAI custom rule resource type. (ai_rule) (example: ai_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_name, rule_nameGet an AI custom rule by name within a ruleset.
ruleset_nameCreate a new AI custom rule within a ruleset.
ruleset_name, rule_nameDelete an AI custom rule by name within a ruleset.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe rule name.
stringThe ruleset name.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get an AI custom rule by name within a ruleset. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_ruleset_rules +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND rule_name = '{{ rule_name }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new AI custom rule within a ruleset. + +```sql +INSERT INTO datadog.security.static_analysis_ai_ruleset_rules ( +data, +ruleset_name +) +SELECT +'{{ data }}', +'{{ ruleset_name }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: static_analysis_ai_ruleset_rules + props: + - name: ruleset_name + value: "{{ ruleset_name }}" + description: Required parameter for the static_analysis_ai_ruleset_rules resource. + - name: data + description: | + Request data for creating an AI custom rule. + value: + attributes: + name: "{{ name }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete an AI custom rule by name within a ruleset. + +```sql +DELETE FROM datadog.security.static_analysis_ai_ruleset_rules +WHERE ruleset_name = '{{ ruleset_name }}' --required +AND rule_name = '{{ rule_name }}' --required +; +``` + + diff --git a/website/docs/services/security/static_analysis_ai_rulesets/index.md b/website/docs/services/security/static_analysis_ai_rulesets/index.md new file mode 100644 index 0000000..5c68686 --- /dev/null +++ b/website/docs/services/security/static_analysis_ai_rulesets/index.md @@ -0,0 +1,318 @@ +--- +title: static_analysis_ai_rulesets +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_ai_rulesets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_ai_rulesets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ruleset identifier. (example: my-ai-ruleset)
objectResponse attributes of an AI custom ruleset.
stringAI custom ruleset resource type. (ai_ruleset) (example: ai_ruleset)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ruleset identifier. (example: my-ai-ruleset)
objectResponse attributes of an AI custom ruleset.
stringAI custom ruleset resource type. (ai_ruleset) (example: ai_ruleset)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_nameGet an AI custom ruleset by name.
page[offset], page[limit]Get all AI custom rulesets for the authenticated organization.
Create a new AI custom ruleset for the authenticated organization.
ruleset_nameUpdate the description of an existing AI custom ruleset.
ruleset_nameDelete an AI custom ruleset by name.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ruleset name.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)The maximum number of rulesets to return.
integer (int64)The offset for pagination.
+ +## `SELECT` examples + + + + +Get an AI custom ruleset by name. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_rulesets +WHERE ruleset_name = '{{ ruleset_name }}' -- required +; +``` + + + +Get all AI custom rulesets for the authenticated organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_ai_rulesets +WHERE page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new AI custom ruleset for the authenticated organization. + +```sql +INSERT INTO datadog.security.static_analysis_ai_rulesets ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: static_analysis_ai_rulesets + props: + - name: data + description: | + Request data for creating an AI custom ruleset. + value: + attributes: + description: "{{ description }}" + name: "{{ name }}" + short_description: "{{ short_description }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the description of an existing AI custom ruleset. + +```sql +UPDATE datadog.security.static_analysis_ai_rulesets +SET +data = '{{ data }}' +WHERE +ruleset_name = '{{ ruleset_name }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete an AI custom ruleset by name. + +```sql +DELETE FROM datadog.security.static_analysis_ai_rulesets +WHERE ruleset_name = '{{ ruleset_name }}' --required +; +``` + + diff --git a/website/docs/services/security/static_analysis_codegen_rulesets/index.md b/website/docs/services/security/static_analysis_codegen_rulesets/index.md new file mode 100644 index 0000000..e20b1fe --- /dev/null +++ b/website/docs/services/security/static_analysis_codegen_rulesets/index.md @@ -0,0 +1,139 @@ +--- +title: static_analysis_codegen_rulesets +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_codegen_rulesets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_codegen_rulesets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the ruleset resource. (example: python-best-practices)
objectThe attributes of a SAST ruleset, including its name, description, and rules.
stringRulesets resource type. (rulesets) (default: rulesets, example: rulesets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get the rulesets relevant for code generation for the authenticated user.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the rulesets relevant for code generation for the authenticated user. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_codegen_rulesets +; +``` + + diff --git a/website/docs/services/security/static_analysis_custom_ruleset_rule_revisions/index.md b/website/docs/services/security/static_analysis_custom_ruleset_rule_revisions/index.md new file mode 100644 index 0000000..46aef7a --- /dev/null +++ b/website/docs/services/security/static_analysis_custom_ruleset_rule_revisions/index.md @@ -0,0 +1,288 @@ +--- +title: static_analysis_custom_ruleset_rule_revisions +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_custom_ruleset_rule_revisions + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_custom_ruleset_rule_revisions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRevision identifier (example: revision-123)
objectAttributes of a custom rule revision, including code, metadata, and test cases.
stringResource type (custom_rule_revision) (example: custom_rule_revision)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRevision identifier (example: revision-123)
objectAttributes of a custom rule revision, including code, metadata, and test cases.
stringResource type (custom_rule_revision) (example: custom_rule_revision)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_name, rule_name, idGet a specific revision of a custom rule
ruleset_name, rule_namepage[offset], page[limit]Get all revisions for a custom rule
ruleset_name, rule_nameCreate a new revision for a custom rule
ruleset_name, rule_nameRevert a custom rule to a previous revision
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe revision ID
stringThe rule name
stringThe ruleset name
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Pagination limit
integer (int64)Pagination offset
+ +## `SELECT` examples + + + + +Get a specific revision of a custom rule + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_custom_ruleset_rule_revisions +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND rule_name = '{{ rule_name }}' -- required +AND id = '{{ id }}' -- required +; +``` + + + +Get all revisions for a custom rule + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_custom_ruleset_rule_revisions +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND rule_name = '{{ rule_name }}' -- required +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +; +``` + + + + +## `REPLACE` examples + + + + +Create a new revision for a custom rule + +```sql +REPLACE datadog.security.static_analysis_custom_ruleset_rule_revisions +SET +data = '{{ data }}' +WHERE +ruleset_name = '{{ ruleset_name }}' --required +AND rule_name = '{{ rule_name }}' --required; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Revert a custom rule to a previous revision + +```sql +EXEC datadog.security.static_analysis_custom_ruleset_rule_revisions.revert_custom_rule_revision +@ruleset_name='{{ ruleset_name }}' --required, +@rule_name='{{ rule_name }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/security/static_analysis_custom_ruleset_rules/index.md b/website/docs/services/security/static_analysis_custom_ruleset_rules/index.md new file mode 100644 index 0000000..b28c149 --- /dev/null +++ b/website/docs/services/security/static_analysis_custom_ruleset_rules/index.md @@ -0,0 +1,212 @@ +--- +title: static_analysis_custom_ruleset_rules +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_custom_ruleset_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_custom_ruleset_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRule identifier (example: my-rule)
objectA custom static analysis rule within a ruleset.
stringResource type (custom_rule) (example: custom_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_name, rule_nameGet a custom rule by name
ruleset_nameCreate a new custom rule within a ruleset
ruleset_name, rule_nameDelete a custom rule
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe rule name
stringThe ruleset name
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a custom rule by name + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_custom_ruleset_rules +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND rule_name = '{{ rule_name }}' -- required +; +``` + + + + +## `REPLACE` examples + + + + +Create a new custom rule within a ruleset + +```sql +REPLACE datadog.security.static_analysis_custom_ruleset_rules +SET +data = '{{ data }}' +WHERE +ruleset_name = '{{ ruleset_name }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a custom rule + +```sql +DELETE FROM datadog.security.static_analysis_custom_ruleset_rules +WHERE ruleset_name = '{{ ruleset_name }}' --required +AND rule_name = '{{ rule_name }}' --required +; +``` + + diff --git a/website/docs/services/security/static_analysis_custom_rulesets/index.md b/website/docs/services/security/static_analysis_custom_rulesets/index.md new file mode 100644 index 0000000..e04538f --- /dev/null +++ b/website/docs/services/security/static_analysis_custom_rulesets/index.md @@ -0,0 +1,287 @@ +--- +title: static_analysis_custom_rulesets +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_custom_rulesets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_custom_rulesets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRuleset identifier (example: my-ruleset)
objectAttributes of a custom ruleset, including its name, description, and rules.
stringResource type (custom_ruleset) (example: custom_ruleset)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringRuleset identifier (example: my-ruleset)
objectAttributes of a custom ruleset, including its name, description, and rules.
stringResource type (custom_ruleset) (example: custom_ruleset)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_nameGet a custom ruleset by name
Get all custom rulesets for the authenticated organization.
ruleset_nameUpdate an existing custom ruleset
Create a new custom ruleset for the authenticated organization.
ruleset_nameDelete a custom ruleset
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ruleset name
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a custom ruleset by name + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_custom_rulesets +WHERE ruleset_name = '{{ ruleset_name }}' -- required +; +``` + + + +Get all custom rulesets for the authenticated organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_custom_rulesets +; +``` + + + + +## `UPDATE` examples + + + + +Update an existing custom ruleset + +```sql +UPDATE datadog.security.static_analysis_custom_rulesets +SET +data = '{{ data }}' +WHERE +ruleset_name = '{{ ruleset_name }}' --required +RETURNING +data; +``` + + + + +## `REPLACE` examples + + + + +Create a new custom ruleset for the authenticated organization. + +```sql +REPLACE datadog.security.static_analysis_custom_rulesets +SET +data = '{{ data }}' +WHERE +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a custom ruleset + +```sql +DELETE FROM datadog.security.static_analysis_custom_rulesets +WHERE ruleset_name = '{{ ruleset_name }}' --required +; +``` + + diff --git a/website/docs/services/security/static_analysis_default_rulesets/index.md b/website/docs/services/security/static_analysis_default_rulesets/index.md new file mode 100644 index 0000000..ca77a53 --- /dev/null +++ b/website/docs/services/security/static_analysis_default_rulesets/index.md @@ -0,0 +1,145 @@ +--- +title: static_analysis_default_rulesets +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_default_rulesets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_default_rulesets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe language identifier used as the resource identifier. (example: python)
objectThe attributes of the default rulesets per language response, containing the list of default ruleset names.
stringDefault rulesets per language resource type. (defaultRulesetsPerLanguage) (default: defaultRulesetsPerLanguage, example: defaultRulesetsPerLanguage)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
languageGet the default SAST ruleset names for a given programming language.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe programming language for which to retrieve the default rulesets.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the default SAST ruleset names for a given programming language. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_default_rulesets +WHERE language = '{{ language }}' -- required +; +``` + + diff --git a/website/docs/services/security/static_analysis_rulesets/index.md b/website/docs/services/security/static_analysis_rulesets/index.md new file mode 100644 index 0000000..7956cf1 --- /dev/null +++ b/website/docs/services/security/static_analysis_rulesets/index.md @@ -0,0 +1,210 @@ +--- +title: static_analysis_rulesets +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_rulesets + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_rulesets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the ruleset resource. (example: python-best-practices)
objectThe attributes of a SAST ruleset, including its name, description, and rules.
stringRulesets resource type. (rulesets) (default: rulesets, example: rulesets)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
ruleset_nameinclude_tests, include_testing_rulesGet a SAST ruleset by name, including all its rules.
Get rules for multiple rulesets in batch.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe name of the ruleset to retrieve.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanWhen true, rules that are in testing mode are included in the response.
booleanWhen true, test cases for each rule are included in the response.
+ +## `SELECT` examples + + + + +Get a SAST ruleset by name, including all its rules. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_rulesets +WHERE ruleset_name = '{{ ruleset_name }}' -- required +AND include_tests = '{{ include_tests }}' +AND include_testing_rules = '{{ include_testing_rules }}' +; +``` + + + + +## `INSERT` examples + + + + +Get rules for multiple rulesets in batch. + +```sql +INSERT INTO datadog.security.static_analysis_rulesets ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: static_analysis_rulesets + props: + - name: data + description: | + The primary data object in the get-multiple-rulesets request, containing request attributes and resource type. + value: + attributes: + include_testing_rules: {{ include_testing_rules }} + include_tests: {{ include_tests }} + rulesets: + - "{{ rulesets }}" + id: "{{ id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/security/static_analysis_secret_rules/index.md b/website/docs/services/security/static_analysis_secret_rules/index.md new file mode 100644 index 0000000..05a82da --- /dev/null +++ b/website/docs/services/security/static_analysis_secret_rules/index.md @@ -0,0 +1,139 @@ +--- +title: static_analysis_secret_rules +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_secret_rules + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_secret_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the secret rule resource.
objectThe attributes of a secret detection rule, including its pattern, priority, and validation configuration.
stringSecret rule resource type. (secret_rule) (default: secret_rule, example: secret_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Returns a list of Secrets rules with ID, Pattern, Description, Priority, and SDS ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Returns a list of Secrets rules with ID, Pattern, Description, Priority, and SDS ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.security.static_analysis_secret_rules +; +``` + + diff --git a/website/docs/services/security/static_analysis_server/index.md b/website/docs/services/security/static_analysis_server/index.md new file mode 100644 index 0000000..bebb028 --- /dev/null +++ b/website/docs/services/security/static_analysis_server/index.md @@ -0,0 +1,151 @@ +--- +title: static_analysis_server +hide_title: false +hide_table_of_contents: false +keywords: + - static_analysis_server + - security + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a static_analysis_server resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataRun static analysis rules against a source code file and return violations found.
dataParse source code into an abstract syntax tree (AST) for the specified language.
languageRetrieve tree-sitter node type definitions for a given programming language.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe programming language for which to retrieve node type definitions.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Run static analysis rules against a source code file and return violations found. + +```sql +EXEC datadog.security.static_analysis_server.create_static_analysis_server_analysis +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Parse source code into an abstract syntax tree (AST) for the specified language. + +```sql +EXEC datadog.security.static_analysis_server.create_static_analysis_ast +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Retrieve tree-sitter node type definitions for a given programming language. + +```sql +EXEC datadog.security.static_analysis_server.get_static_analysis_node_types +@language='{{ language }}' --required +; +``` + + diff --git a/website/docs/services/security/suppressions_affecting_future_rule/index.md b/website/docs/services/security/suppressions_affecting_future_rule/index.md index 0b90d74..22c908f 100644 --- a/website/docs/services/security/suppressions_affecting_future_rule/index.md +++ b/website/docs/services/security/suppressions_affecting_future_rule/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a suppressions_affecting_future_r ## Overview - +
Namesuppressions_affecting_future_rule
Name
TypeResource
Id
@@ -52,7 +53,7 @@ The following methods are available for this resource: - region, data__name, data__isEnabled, data__queries, data__options, data__cases, data__message + name, is_enabled, queries, options, cases, message, compliance_signal_options Get the list of suppressions that would affect a rule. @@ -72,10 +73,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -95,40 +96,40 @@ Get the list of suppressions that would affect a rule. ```sql INSERT INTO datadog.security.suppressions_affecting_future_rule ( -data__calculatedFields, -data__cases, -data__filters, -data__groupSignalsBy, -data__hasExtendedTitle, -data__isEnabled, -data__message, -data__name, -data__options, -data__queries, -data__referenceTables, -data__schedulingOptions, -data__tags, -data__thirdPartyCases, -data__type, -region +calculated_fields, +cases, +filters, +group_signals_by, +has_extended_title, +is_enabled, +message, +name, +options, +queries, +reference_tables, +scheduling_options, +tags, +third_party_cases, +type, +compliance_signal_options ) SELECT -'{{ calculatedFields }}', +'{{ calculated_fields }}', '{{ cases }}' /* required */, '{{ filters }}', -'{{ groupSignalsBy }}', -{{ hasExtendedTitle }}, -{{ isEnabled }} /* required */, +'{{ group_signals_by }}', +{{ has_extended_title }}, +{{ is_enabled }} /* required */, '{{ message }}' /* required */, '{{ name }}' /* required */, '{{ options }}' /* required */, '{{ queries }}' /* required */, -'{{ referenceTables }}', -'{{ schedulingOptions }}', +'{{ reference_tables }}', +'{{ scheduling_options }}', '{{ tags }}', -'{{ thirdPartyCases }}', +'{{ third_party_cases }}', '{{ type }}', -'{{ region }}' +'{{ compliance_signal_options }}' /* required */ RETURNING data ; @@ -136,74 +137,161 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: suppressions_affecting_future_rule props: - - name: region - value: string - description: Required parameter for the suppressions_affecting_future_rule resource. - - name: calculatedFields - value: array + - name: calculated_fields description: | Calculated fields. Only allowed for scheduled rules - in other words, when schedulingOptions is also defined. + value: + - expression: "{{ expression }}" + name: "{{ name }}" - name: cases - value: array description: | Cases for generating signals. + value: + - actions: "{{ actions }}" + condition: "{{ condition }}" + name: "{{ name }}" + notifications: "{{ notifications }}" + status: "{{ status }}" - name: filters - value: array description: | Additional queries to filter matched events before they are processed. This field is deprecated for log detection, signal correlation, and workload security rules. - - name: groupSignalsBy - value: array + value: + - action: "{{ action }}" + query: "{{ query }}" + - name: group_signals_by + value: + - "{{ group_signals_by }}" description: | Additional grouping to perform on top of the existing groups in the query section. Must be a subset of the existing groups. - - name: hasExtendedTitle - value: boolean + - name: has_extended_title + value: {{ has_extended_title }} description: | Whether the notifications include the triggering group-by values in their title. - - name: isEnabled - value: boolean + - name: is_enabled + value: {{ is_enabled }} description: | Whether the rule is enabled. - name: message - value: string + value: "{{ message }}" description: | Message for generated signals. - name: name - value: string + value: "{{ name }}" description: | The name of the rule. - name: options - value: object description: | Options. + value: + anomalyDetectionOptions: + bucketDuration: {{ bucketDuration }} + detectionTolerance: {{ detectionTolerance }} + instantaneousBaseline: {{ instantaneousBaseline }} + learningDuration: {{ learningDuration }} + learningPeriodBaseline: {{ learningPeriodBaseline }} + complianceRuleOptions: + complexRule: {{ complexRule }} + regoRule: + policy: "{{ policy }}" + resourceTypes: + - "{{ resourceTypes }}" + resourceType: "{{ resourceType }}" + decreaseCriticalityBasedOnEnv: {{ decreaseCriticalityBasedOnEnv }} + detectionMethod: "{{ detectionMethod }}" + evaluationWindow: {{ evaluationWindow }} + hardcodedEvaluatorType: "{{ hardcodedEvaluatorType }}" + impossibleTravelOptions: + baselineUserLocations: {{ baselineUserLocations }} + baselineUserLocationsDuration: {{ baselineUserLocationsDuration }} + keepAlive: {{ keepAlive }} + maxSignalDuration: {{ maxSignalDuration }} + newValueOptions: + forgetAfter: {{ forgetAfter }} + instantaneousBaseline: {{ instantaneousBaseline }} + learningDuration: {{ learningDuration }} + learningMethod: "{{ learningMethod }}" + learningThreshold: {{ learningThreshold }} + sequenceDetectionOptions: + stepTransitions: + - child: "{{ child }}" + evaluationWindow: {{ evaluationWindow }} + parent: "{{ parent }}" + steps: + - condition: "{{ condition }}" + evaluationWindow: {{ evaluationWindow }} + name: "{{ name }}" + thirdPartyRuleOptions: + defaultNotifications: + - "{{ defaultNotifications }}" + defaultStatus: "{{ defaultStatus }}" + rootQueries: + - groupByFields: "{{ groupByFields }}" + query: "{{ query }}" + signalTitleTemplate: "{{ signalTitleTemplate }}" - name: queries - value: array description: | Queries for selecting logs which are part of the rule. - - name: referenceTables - value: array + value: + - aggregation: "{{ aggregation }}" + customQueryExtension: "{{ customQueryExtension }}" + dataSource: "{{ dataSource }}" + distinctFields: "{{ distinctFields }}" + groupByFields: "{{ groupByFields }}" + hasOptionalGroupByFields: {{ hasOptionalGroupByFields }} + index: "{{ index }}" + indexes: "{{ indexes }}" + metric: "{{ metric }}" + metrics: "{{ metrics }}" + name: "{{ name }}" + query: "{{ query }}" + - name: reference_tables description: | Reference tables for the rule. - - name: schedulingOptions - value: object + value: + - checkPresence: {{ checkPresence }} + columnName: "{{ columnName }}" + logFieldPath: "{{ logFieldPath }}" + ruleQueryName: "{{ ruleQueryName }}" + tableName: "{{ tableName }}" + - name: scheduling_options description: | Options for scheduled rules. When this field is present, the rule runs based on the schedule. When absent, it runs real-time on ingested logs. + value: + rrule: "{{ rrule }}" + start: "{{ start }}" + timezone: "{{ timezone }}" - name: tags - value: array + value: + - "{{ tags }}" description: | Tags for generated signals. - - name: thirdPartyCases - value: array + - name: third_party_cases description: | Cases for generating signals from third-party rules. Only available for third-party rules. + value: + - name: "{{ name }}" + notifications: "{{ notifications }}" + query: "{{ query }}" + status: "{{ status }}" - name: type - value: string + value: "{{ type }}" description: | The rule type. - valid_values: ['api_security', 'application_security', 'log_detection', 'workload_security'] -``` + valid_values: ['api_security', 'application_security', 'log_detection', 'workload_activity', 'workload_security'] + - name: compliance_signal_options + description: | + How to generate compliance signals. Useful for cloud_configuration rules only. + value: + defaultActivationStatus: {{ defaultActivationStatus }} + defaultGroupByFields: + - "{{ defaultGroupByFields }}" + userActivationStatus: {{ userActivationStatus }} + userGroupByFields: + - "{{ userGroupByFields }}" +`} + diff --git a/website/docs/services/security/suppressions_affecting_rule/index.md b/website/docs/services/security/suppressions_affecting_rule/index.md index 94628fe..5a44e88 100644 --- a/website/docs/services/security/suppressions_affecting_rule/index.md +++ b/website/docs/services/security/suppressions_affecting_rule/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a suppressions_affecting_rule -Namesuppressions_affecting_rule +Name TypeResource Id @@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The type of the resource. The value should always be `suppressions`. (default: suppressions, example: suppressions) + The type of the resource. The value should always be `suppressions`. (suppressions) (default: suppressions, example: suppressions) @@ -86,7 +87,7 @@ The following methods are available for this resource: - rule_id, region + rule_id Get the list of suppressions that affect a specific existing rule by its ID. @@ -106,16 +107,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the rule. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + @@ -138,7 +139,6 @@ attributes, type FROM datadog.security.suppressions_affecting_rule WHERE rule_id = '{{ rule_id }}' -- required -AND region = '{{ region }}' -- required ; ``` diff --git a/website/docs/services/security/vulnerabilities/index.md b/website/docs/services/security/vulnerabilities/index.md index d879e1a..2420ae3 100644 --- a/website/docs/services/security/vulnerabilities/index.md +++ b/website/docs/services/security/vulnerabilities/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a vulnerabilities resource ## Overview - +
Namevulnerabilities
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type. (example: vulnerabilities) + The JSON:API type. (vulnerabilities) (example: vulnerabilities) @@ -91,9 +92,16 @@ The following methods are available for this resource: - region - page[token], page[number], filter[type], filter[cvss.base.score][`$op`], filter[cvss.base.severity], filter[cvss.base.vector], filter[cvss.datadog.score][`$op`], filter[cvss.datadog.severity], filter[cvss.datadog.vector], filter[status], filter[tool], filter[library.name], filter[library.version], filter[advisory_id], filter[risks.exploitation_probability], filter[risks.poc_exploit_available], filter[risks.exploit_available], filter[risks.epss.score][`$op`], filter[risks.epss.severity], filter[language], filter[ecosystem], filter[code_location.location], filter[code_location.file_path], filter[code_location.method], filter[fix_available], filter[repo_digests], filter[origin], filter[asset.name], filter[asset.type], filter[asset.version.first], filter[asset.version.last], filter[asset.repository_url], filter[asset.risks.in_production], filter[asset.risks.under_attack], filter[asset.risks.is_publicly_accessible], filter[asset.risks.has_privileged_access], filter[asset.risks.has_access_to_sensitive_data], filter[asset.environments], filter[asset.teams], filter[asset.arch], filter[asset.operating_system.name], filter[asset.operating_system.version] - Get a list of vulnerabilities.

### Pagination

Pagination is enabled by default in both `vulnerabilities` and `assets`. The size of the page varies depending on the endpoint and cannot be modified. To automate the request of the next page, you can use the links section in the response.

This endpoint will return paginated responses. The pages are stored in the links section of the response:

```JSON
{
"data": [...],
"meta": {...},
"links": {
"self": "https://.../api/v2/security/vulnerabilities",
"first": "https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc",
"last": "https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc",
"next": "https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc"
}
}
```


- `links.previous` is empty if the first page is requested.
- `links.next` is empty if the last page is requested.

#### Token

Vulnerabilities can be created, updated or deleted at any point in time.

Upon the first request, a token is created to ensure consistency across subsequent paginated requests.

A token is valid only for 24 hours.

#### First request

We consider a request to be the first request when there is no `page[token]` parameter.

The response of this first request contains the newly created token in the `links` section.

This token can then be used in the subsequent paginated requests.

#### Subsequent requests

Any request containing valid `page[token]` and `page[number]` parameters will be considered a subsequent request.

If the `token` is invalid, a `404` response will be returned.

If the page `number` is invalid, a `400` response will be returned.

### Filtering

The request can include some filter parameters to filter the data to be retrieved. The format of the filter parameters follows the [JSON:API format](https://jsonapi.org/format/#fetching-filtering): `filter[$prop_name]`, where `prop_name` is the property name in the entity being filtered by.

All filters can include multiple values, where data will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter all vulnerabilities where title is equal to `Title1` OR `Title2`.

String filters are case sensitive.

Boolean filters accept `true` or `false` as values.

Number filters must include an operator as a second filter input: `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: `filter[cvss.base.score][lte]=8`.

Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and `gte` (>=).

### Metadata

Following [JSON:API format](https://jsonapi.org/format/#document-meta), object including non-standard meta-information.

This endpoint includes the meta member in the response. For more details on each of the properties included in this section, check the endpoints response tables.

```JSON
{
"data": [...],
"meta": {
"total": 1500,
"count": 18732,
"token": "some_token"
},
"links": {...}
}
```
+ + page[token], page[number], filter[type], filter[cvss.base.score][`$op`], filter[cvss.base.severity], filter[cvss.base.vector], filter[cvss.datadog.score][`$op`], filter[cvss.datadog.severity], filter[cvss.datadog.vector], filter[status], filter[tool], filter[library.name], filter[library.version], filter[advisory.id], filter[risks.exploitation_probability], filter[risks.poc_exploit_available], filter[risks.exploit_available], filter[risks.epss.score][`$op`], filter[risks.epss.severity], filter[language], filter[ecosystem], filter[code_location.location], filter[code_location.file_path], filter[code_location.method], filter[fix_available], filter[repo_digests], filter[origin], filter[running_kernel], filter[asset.name], filter[asset.type], filter[asset.version.first], filter[asset.version.last], filter[asset.repository_url], filter[asset.risks.in_production], filter[asset.risks.under_attack], filter[asset.risks.is_publicly_accessible], filter[asset.risks.has_privileged_access], filter[asset.risks.has_access_to_sensitive_data], filter[asset.environments], filter[asset.teams], filter[asset.arch], filter[asset.operating_system.name], filter[asset.operating_system.version] + Get a list of vulnerabilities.<br /><br />### Pagination<br /><br />Pagination is enabled by default in both `vulnerabilities` and `assets`. The size of the page varies depending on the endpoint and cannot be modified. To automate the request of the next page, you can use the links section in the response.<br /><br />This endpoint will return paginated responses. The pages are stored in the links section of the response:<br /><br />```JSON<br />{<br /> "data": [...],<br /> "meta": {...},<br /> "links": {<br /> "self": "https:​//.../api/v2/security/vulnerabilities",<br /> "first": "https:​//.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc",<br /> "last": "https:​//.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc",<br /> "next": "https:​//.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc"<br /> }<br />}<br />```<br /><br /><br />- `links.previous` is empty if the first page is requested.<br />- `links.next` is empty if the last page is requested.<br /><br />#### Token<br /><br />Vulnerabilities can be created, updated or deleted at any point in time.<br /><br />Upon the first request, a token is created to ensure consistency across subsequent paginated requests.<br /><br />A token is valid only for 24 hours.<br /><br />#### First request<br /><br />We consider a request to be the first request when there is no `page[token]` parameter.<br /><br />The response of this first request contains the newly created token in the `links` section.<br /><br />This token can then be used in the subsequent paginated requests.<br /><br />*Note: The first request may take longer to complete than subsequent requests.*<br /><br />#### Subsequent requests<br /><br />Any request containing valid `page[token]` and `page[number]` parameters will be considered a subsequent request.<br /><br />If the `token` is invalid, a `404` response will be returned.<br /><br />If the page `number` is invalid, a `400` response will be returned.<br /><br />The returned `token` is valid for all requests in the pagination sequence. To send paginated requests in parallel, reuse the same `token` and change only the `page[number]` parameter.<br /><br />### Filtering<br /><br />The request can include some filter parameters to filter the data to be retrieved. The format of the filter parameters follows the [JSON:API format](https:​//jsonapi.org/format/#fetching-filtering): `filter[$prop_name]`, where `prop_name` is the property name in the entity being filtered by.<br /><br />All filters can include multiple values, where data will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter all vulnerabilities where title is equal to `Title1` OR `Title2`.<br /><br />String filters are case sensitive.<br /><br />Boolean filters accept `true` or `false` as values.<br /><br />Number filters must include an operator as a second filter input: `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: `filter[cvss.base.score][lte]=8`.<br /><br />Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and `gte` (>=).<br /><br />### Metadata<br /><br />Following [JSON:API format](https:​//jsonapi.org/format/#document-meta), object including non-standard meta-information.<br /><br />This endpoint includes the meta member in the response. For more details on each of the properties included in this section, check the endpoints response tables.<br /><br />```JSON<br />{<br /> "data": [...],<br /> "meta": {<br /> "total": 1500,<br /> "count": 18732,<br /> "token": "some_token"<br /> },<br /> "links": {...}<br />}<br />```<br />### Extensions<br /><br />Requests may include extensions to modify the behavior of the requested endpoint. The filter parameters follow the [JSON:API format](https:​//jsonapi.org/extensions/#extensions) format: `ext:$extension_name`, where `extension_name` is the name of the modifier that is being applied.<br /><br />Extensions can only include one value: `ext:modifier=value`. + + + + + bom_format, spec_version, metadata, components, vulnerabilities + + Import security vulnerabilities from an external scanner in CycloneDX 1.5 format.<br /><br />The payload is validated against the CycloneDX 1.5 JSON schema and the following<br />additional constraints:<br /><br />- `metadata`, `metadata.component`, and `metadata.component.name` are required.<br />- `metadata.tools.components` must contain exactly one element with a `name` field.<br />- `components` cannot be empty. Each component requires `bom-ref`, `type`, `name`, and `version`.<br />- When `type` is `library`, `purl` is required and must be a valid PURL.<br />- When `type` is `operating-system`, `name` must be one of the supported OS values:<br /> `alma`, `alpine`, `amazon`, `azurelinux`, `bottlerocket`, `cbl-mariner`, `chainguard`,<br /> `centos`, `debian`, `fedora`, `opensuse`, `opensuse-leap`, `opensuse-tumbleweed`,<br /> `oracle`, `photon`, `redhat`, `rocky`, `slem`, `sles`, `ubuntu`, `wolfi`, `windows`, `macos`.<br />- `vulnerabilities` cannot be empty. Each vulnerability requires `id`, exactly one `ratings` entry,<br /> and at least one `affects` entry.<br />- Each `affects[].ref` must match a `bom-ref` value in `components`. @@ -111,15 +119,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. - - + + string - Filter by advisory ID. (example: TRIVY-CVE-2023-0615) + Filter by advisory ID. (example: CVE-2023-0615) @@ -134,7 +142,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Filter by asset name. (example: datadog-agent) + Filter by asset name. This field supports the usage of wildcards (*). (example: datadog-agent) @@ -279,12 +287,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# number (double) - Filter by vulnerability [EPSS](https://www.first.org/epss/) severity score. (example: 0.00042) + Filter by vulnerability [EPSS](https:​//www.first.org/epss/) severity score. (example: 0.00042) string - Filter by vulnerability [EPSS](https://www.first.org/epss/) severity. + Filter by vulnerability [EPSS](https:​//www.first.org/epss/) severity. @@ -301,6 +309,11 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# boolean Filter by POC exploit availability. (example: false) + + + boolean + Filter for whether the vulnerability affects a running kernel (for vulnerabilities related to a `Host` asset). (example: true) + string @@ -339,7 +352,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a list of vulnerabilities.

### Pagination

Pagination is enabled by default in both `vulnerabilities` and `assets`. The size of the page varies depending on the endpoint and cannot be modified. To automate the request of the next page, you can use the links section in the response.

This endpoint will return paginated responses. The pages are stored in the links section of the response:

```JSON
{
"data": [...],
"meta": {...},
"links": {
"self": "https://.../api/v2/security/vulnerabilities",
"first": "https://.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc",
"last": "https://.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc",
"next": "https://.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc"
}
}
```


- `links.previous` is empty if the first page is requested.
- `links.next` is empty if the last page is requested.

#### Token

Vulnerabilities can be created, updated or deleted at any point in time.

Upon the first request, a token is created to ensure consistency across subsequent paginated requests.

A token is valid only for 24 hours.

#### First request

We consider a request to be the first request when there is no `page[token]` parameter.

The response of this first request contains the newly created token in the `links` section.

This token can then be used in the subsequent paginated requests.

#### Subsequent requests

Any request containing valid `page[token]` and `page[number]` parameters will be considered a subsequent request.

If the `token` is invalid, a `404` response will be returned.

If the page `number` is invalid, a `400` response will be returned.

### Filtering

The request can include some filter parameters to filter the data to be retrieved. The format of the filter parameters follows the [JSON:API format](https://jsonapi.org/format/#fetching-filtering): `filter[$prop_name]`, where `prop_name` is the property name in the entity being filtered by.

All filters can include multiple values, where data will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter all vulnerabilities where title is equal to `Title1` OR `Title2`.

String filters are case sensitive.

Boolean filters accept `true` or `false` as values.

Number filters must include an operator as a second filter input: `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: `filter[cvss.base.score][lte]=8`.

Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and `gte` (>=).

### Metadata

Following [JSON:API format](https://jsonapi.org/format/#document-meta), object including non-standard meta-information.

This endpoint includes the meta member in the response. For more details on each of the properties included in this section, check the endpoints response tables.

```JSON
{
"data": [...],
"meta": {
"total": 1500,
"count": 18732,
"token": "some_token"
},
"links": {...}
}
```
+Get a list of vulnerabilities.<br /><br />### Pagination<br /><br />Pagination is enabled by default in both `vulnerabilities` and `assets`. The size of the page varies depending on the endpoint and cannot be modified. To automate the request of the next page, you can use the links section in the response.<br /><br />This endpoint will return paginated responses. The pages are stored in the links section of the response:<br /><br />```JSON<br />{<br /> "data": [...],<br /> "meta": {...},<br /> "links": {<br /> "self": "https:​//.../api/v2/security/vulnerabilities",<br /> "first": "https:​//.../api/v2/security/vulnerabilities?page[number]=1&page[token]=abc",<br /> "last": "https:​//.../api/v2/security/vulnerabilities?page[number]=43&page[token]=abc",<br /> "next": "https:​//.../api/v2/security/vulnerabilities?page[number]=2&page[token]=abc"<br /> }<br />}<br />```<br /><br /><br />- `links.previous` is empty if the first page is requested.<br />- `links.next` is empty if the last page is requested.<br /><br />#### Token<br /><br />Vulnerabilities can be created, updated or deleted at any point in time.<br /><br />Upon the first request, a token is created to ensure consistency across subsequent paginated requests.<br /><br />A token is valid only for 24 hours.<br /><br />#### First request<br /><br />We consider a request to be the first request when there is no `page[token]` parameter.<br /><br />The response of this first request contains the newly created token in the `links` section.<br /><br />This token can then be used in the subsequent paginated requests.<br /><br />*Note: The first request may take longer to complete than subsequent requests.*<br /><br />#### Subsequent requests<br /><br />Any request containing valid `page[token]` and `page[number]` parameters will be considered a subsequent request.<br /><br />If the `token` is invalid, a `404` response will be returned.<br /><br />If the page `number` is invalid, a `400` response will be returned.<br /><br />The returned `token` is valid for all requests in the pagination sequence. To send paginated requests in parallel, reuse the same `token` and change only the `page[number]` parameter.<br /><br />### Filtering<br /><br />The request can include some filter parameters to filter the data to be retrieved. The format of the filter parameters follows the [JSON:API format](https:​//jsonapi.org/format/#fetching-filtering): `filter[$prop_name]`, where `prop_name` is the property name in the entity being filtered by.<br /><br />All filters can include multiple values, where data will be filtered with an OR clause: `filter[title]=Title1,Title2` will filter all vulnerabilities where title is equal to `Title1` OR `Title2`.<br /><br />String filters are case sensitive.<br /><br />Boolean filters accept `true` or `false` as values.<br /><br />Number filters must include an operator as a second filter input: `filter[$prop_name][$operator]`. For example, for the vulnerabilities endpoint: `filter[cvss.base.score][lte]=8`.<br /><br />Available operators are: `eq` (==), `lt` (<), `lte` (<=), `gt` (>) and `gte` (>=).<br /><br />### Metadata<br /><br />Following [JSON:API format](https:​//jsonapi.org/format/#document-meta), object including non-standard meta-information.<br /><br />This endpoint includes the meta member in the response. For more details on each of the properties included in this section, check the endpoints response tables.<br /><br />```JSON<br />{<br /> "data": [...],<br /> "meta": {<br /> "total": 1500,<br /> "count": 18732,<br /> "token": "some_token"<br /> },<br /> "links": {...}<br />}<br />```<br />### Extensions<br /><br />Requests may include extensions to modify the behavior of the requested endpoint. The filter parameters follow the [JSON:API format](https:​//jsonapi.org/extensions/#extensions) format: `ext:$extension_name`, where `extension_name` is the name of the modifier that is being applied.<br /><br />Extensions can only include one value: `ext:modifier=value`. ```sql SELECT @@ -348,8 +361,7 @@ attributes, relationships, type FROM datadog.security.vulnerabilities -WHERE region = '{{ region }}' -- required -AND page[token] = '{{ page[token] }}' +WHERE page[token] = '{{ page[token] }}' AND page[number] = '{{ page[number] }}' AND filter[type] = '{{ filter[type] }}' AND filter[cvss.base.score][`$op`] = '{{ filter[cvss.base.score][`$op`] }}' @@ -362,7 +374,7 @@ AND filter[status] = '{{ filter[status] }}' AND filter[tool] = '{{ filter[tool] }}' AND filter[library.name] = '{{ filter[library.name] }}' AND filter[library.version] = '{{ filter[library.version] }}' -AND filter[advisory_id] = '{{ filter[advisory_id] }}' +AND filter[advisory.id] = '{{ filter[advisory.id] }}' AND filter[risks.exploitation_probability] = '{{ filter[risks.exploitation_probability] }}' AND filter[risks.poc_exploit_available] = '{{ filter[risks.poc_exploit_available] }}' AND filter[risks.exploit_available] = '{{ filter[risks.exploit_available] }}' @@ -376,6 +388,7 @@ AND filter[code_location.method] = '{{ filter[code_location.method] }}' AND filter[fix_available] = '{{ filter[fix_available] }}' AND filter[repo_digests] = '{{ filter[repo_digests] }}' AND filter[origin] = '{{ filter[origin] }}' +AND filter[running_kernel] = '{{ filter[running_kernel] }}' AND filter[asset.name] = '{{ filter[asset.name] }}' AND filter[asset.type] = '{{ filter[asset.type] }}' AND filter[asset.version.first] = '{{ filter[asset.version.first] }}' @@ -395,3 +408,93 @@ AND filter[asset.operating_system.version] = '{{ filter[asset.operating_system.v ```
+ + +## `INSERT` examples + + + + +Import security vulnerabilities from an external scanner in CycloneDX 1.5 format.<br /><br />The payload is validated against the CycloneDX 1.5 JSON schema and the following<br />additional constraints:<br /><br />- `metadata`, `metadata.component`, and `metadata.component.name` are required.<br />- `metadata.tools.components` must contain exactly one element with a `name` field.<br />- `components` cannot be empty. Each component requires `bom-ref`, `type`, `name`, and `version`.<br />- When `type` is `library`, `purl` is required and must be a valid PURL.<br />- When `type` is `operating-system`, `name` must be one of the supported OS values:<br /> `alma`, `alpine`, `amazon`, `azurelinux`, `bottlerocket`, `cbl-mariner`, `chainguard`,<br /> `centos`, `debian`, `fedora`, `opensuse`, `opensuse-leap`, `opensuse-tumbleweed`,<br /> `oracle`, `photon`, `redhat`, `rocky`, `slem`, `sles`, `ubuntu`, `wolfi`, `windows`, `macos`.<br />- `vulnerabilities` cannot be empty. Each vulnerability requires `id`, exactly one `ratings` entry,<br /> and at least one `affects` entry.<br />- Each `affects[].ref` must match a `bom-ref` value in `components`. + +```sql +INSERT INTO datadog.security.vulnerabilities ( +bom_format, +components, +metadata, +spec_version, +version, +vulnerabilities +) +SELECT +'{{ bom_format }}' /* required */, +'{{ components }}' /* required */, +'{{ metadata }}' /* required */, +'{{ spec_version }}' /* required */, +{{ version }}, +'{{ vulnerabilities }}' /* required */ +; +``` + + + +{`# Description fields are for documentation purposes +- name: vulnerabilities + props: + - name: bom_format + value: "{{ bom_format }}" + description: | + The BOM format identifier. Must be \`CycloneDX\`. + - name: components + description: | + The list of scanned software components. Cannot be empty. + value: + - bom-ref: "{{ bom-ref }}" + name: "{{ name }}" + purl: "{{ purl }}" + type: "{{ type }}" + version: "{{ version }}" + - name: metadata + description: | + Metadata about the BOM, including the scanned asset and the scanner tool. + value: + component: + bom-ref: "{{ bom-ref }}" + name: "{{ name }}" + type: "{{ type }}" + tools: + components: + - name: "{{ name }}" + type: "{{ type }}" + - name: spec_version + value: "{{ spec_version }}" + description: | + The CycloneDX specification version. Must be \`1.5\`. + - name: version + value: {{ version }} + description: | + The version number of the BOM document. + - name: vulnerabilities + description: | + The list of detected vulnerabilities. Cannot be empty. + value: + - advisories: "{{ advisories }}" + affects: "{{ affects }}" + analysis: + state: "{{ state }}" + cwes: "{{ cwes }}" + description: "{{ description }}" + detail: "{{ detail }}" + id: "{{ id }}" + ratings: "{{ ratings }}" + references: "{{ references }}" +`} + + + diff --git a/website/docs/services/security/vulnerability_notification_rules/index.md b/website/docs/services/security/vulnerability_notification_rules/index.md index 5f20fed..666a6bb 100644 --- a/website/docs/services/security/vulnerability_notification_rules/index.md +++ b/website/docs/services/security/vulnerability_notification_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a vulnerability_notification_rule ## Overview - +
Namevulnerability_notification_rules
Name
TypeResource
Id
@@ -64,7 +65,7 @@ Notification rule details. string - The rule type associated to notification rules. (example: notification_rules) + The rule type associated to notification rules. (notification_rules) (example: notification_rules) @@ -95,7 +96,7 @@ The list of notification rules. string - The rule type associated to notification rules. (example: notification_rules) + The rule type associated to notification rules. (notification_rules) (example: notification_rules) @@ -120,35 +121,35 @@ The following methods are available for this resource: - id, region + id Get the details of a notification rule for security vulnerabilities. - region + Returns the list of notification rules for security vulnerabilities. - region + Create a new notification rule for security vulnerabilities and return the created rule. - id, region + id Partially update the notification rule. All fields are optional; if a field is not provided, it is not updated. - id, region + id Delete a notification rule for security vulnerabilities. @@ -173,10 +174,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string ID of the notification rule. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -201,7 +202,6 @@ attributes, type FROM datadog.security.vulnerability_notification_rules WHERE id = '{{ id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -215,7 +215,6 @@ id, attributes, type FROM datadog.security.vulnerability_notification_rules -WHERE region = '{{ region }}' -- required ; ``` @@ -237,12 +236,10 @@ Create a new notification rule for security vulnerabilities and return the creat ```sql INSERT INTO datadog.security.vulnerability_notification_rules ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -250,18 +247,31 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: vulnerability_notification_rules props: - - name: region - value: string - description: Required parameter for the vulnerability_notification_rules resource. - name: data - value: object description: | Data of the notification rule create request: the rule type, and the rule attributes. All fields are required. -``` + value: + attributes: + enabled: {{ enabled }} + name: "{{ name }}" + routing: + mode: "{{ mode }}" + selectors: + query: "{{ query }}" + rule_types: + - "{{ rule_types }}" + severities: + - "{{ severities }}" + trigger_source: "{{ trigger_source }}" + targets: + - "{{ targets }}" + time_aggregation: {{ time_aggregation }} + type: "{{ type }}" +`} + @@ -281,10 +291,9 @@ Partially update the notification rule. All fields are optional; if a field is n ```sql UPDATE datadog.security.vulnerability_notification_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required RETURNING data; ``` @@ -307,7 +316,6 @@ Delete a notification rule for security vulnerabilities. ```sql DELETE FROM datadog.security.vulnerability_notification_rules WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/security/vulnerable_assets/index.md b/website/docs/services/security/vulnerable_assets/index.md index be5acbb..8b9892b 100644 --- a/website/docs/services/security/vulnerable_assets/index.md +++ b/website/docs/services/security/vulnerable_assets/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a vulnerable_assets resour ## Overview - +
Namevulnerable_assets
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - The JSON:API type. (example: assets) + The JSON:API type. (assets) (example: assets) @@ -86,9 +87,9 @@ The following methods are available for this resource: - region + page[token], page[number], filter[name], filter[type], filter[version.first], filter[version.last], filter[repository_url], filter[risks.in_production], filter[risks.under_attack], filter[risks.is_publicly_accessible], filter[risks.has_privileged_access], filter[risks.has_access_to_sensitive_data], filter[environments], filter[teams], filter[arch], filter[operating_system.name], filter[operating_system.version] - Get a list of vulnerable assets.

### Pagination

Please review the [Pagination section for the "List Vulnerabilities"] endpoint.

### Filtering

Please review the [Filtering section for the "List Vulnerabilities"] endpoint.

### Metadata

Please review the [Metadata section for the "List Vulnerabilities"] endpoint.
+ Get a list of vulnerable assets.<br /><br />### Pagination<br /><br />Please review the [Pagination section for the "List Vulnerabilities"](#pagination) endpoint.<br /><br />### Filtering<br /><br />Please review the [Filtering section for the "List Vulnerabilities"](#filtering) endpoint.<br /><br />### Metadata<br /><br />Please review the [Metadata section for the "List Vulnerabilities"](#metadata) endpoint. @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -124,7 +125,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Filter by name. (example: datadog-agent) + Filter by name. This field supports the usage of wildcards (*). (example: datadog-agent) @@ -209,7 +210,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get a list of vulnerable assets.

### Pagination

Please review the [Pagination section for the "List Vulnerabilities"] endpoint.

### Filtering

Please review the [Filtering section for the "List Vulnerabilities"] endpoint.

### Metadata

Please review the [Metadata section for the "List Vulnerabilities"] endpoint.
+Get a list of vulnerable assets.<br /><br />### Pagination<br /><br />Please review the [Pagination section for the "List Vulnerabilities"](#pagination) endpoint.<br /><br />### Filtering<br /><br />Please review the [Filtering section for the "List Vulnerabilities"](#filtering) endpoint.<br /><br />### Metadata<br /><br />Please review the [Metadata section for the "List Vulnerabilities"](#metadata) endpoint. ```sql SELECT @@ -217,8 +218,7 @@ id, attributes, type FROM datadog.security.vulnerable_assets -WHERE region = '{{ region }}' -- required -AND page[token] = '{{ page[token] }}' +WHERE page[token] = '{{ page[token] }}' AND page[number] = '{{ page[number] }}' AND filter[name] = '{{ filter[name] }}' AND filter[type] = '{{ filter[type] }}' diff --git a/website/docs/services/service_management/bits_ai_investigations/index.md b/website/docs/services/service_management/bits_ai_investigations/index.md new file mode 100644 index 0000000..c8235d8 --- /dev/null +++ b/website/docs/services/service_management/bits_ai_investigations/index.md @@ -0,0 +1,268 @@ +--- +title: bits_ai_investigations +hide_title: false +hide_table_of_contents: false +keywords: + - bits_ai_investigations + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a bits_ai_investigations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the investigation. (example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d)
objectAttributes of the investigation.
stringThe resource type for investigations. (investigation) (example: investigation)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the investigation. (example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d)
objectAttributes of an investigation list item.
stringThe resource type for investigations. (investigation) (example: investigation)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idGet a specific Bits AI investigation by ID.
page[offset], page[limit], filter[monitor_id]List all Bits AI investigations for the organization.
dataTrigger a new Bits AI investigation based on a monitor alert.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the investigation. (example: a1b2c3d4-5e6f-7a8b-9c0d-1e2f3a4b5c6d)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Filter investigations by monitor ID. (example: 12345678)
integer (int64)Maximum number of investigations to return. (example: 25)
integer (int64)Offset for pagination. (example: 0)
+ +## `SELECT` examples + + + + +Get a specific Bits AI investigation by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.bits_ai_investigations +WHERE id = '{{ id }}' -- required +; +``` + + + +List all Bits AI investigations for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.bits_ai_investigations +WHERE page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND filter[monitor_id] = '{{ filter[monitor_id] }}' +; +``` + + + + +## `INSERT` examples + + + + +Trigger a new Bits AI investigation based on a monitor alert. + +```sql +INSERT INTO datadog.service_management.bits_ai_investigations ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: bits_ai_investigations + props: + - name: data + description: | + Data for the trigger investigation request. + value: + attributes: + trigger: + monitor_alert_trigger: + event_id: "{{ event_id }}" + event_ts: {{ event_ts }} + monitor_id: {{ monitor_id }} + type: "{{ type }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/case_comments/index.md b/website/docs/services/service_management/case_comments/index.md new file mode 100644 index 0000000..8272d27 --- /dev/null +++ b/website/docs/services/service_management/case_comments/index.md @@ -0,0 +1,199 @@ +--- +title: case_comments +hide_title: false +hide_table_of_contents: false +keywords: + - case_comments + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_comments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataComment case
case_id, cell_id, dataUpdates the text content of an existing comment on a case timeline. The comment is identified by its cell ID.
case_id, cell_idDelete case comment
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe UUID of the timeline cell (comment) to update. (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Comment case + +```sql +INSERT INTO datadog.service_management.case_comments ( +data, +case_id +) +SELECT +'{{ data }}' /* required */, +'{{ case_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_comments + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_comments resource. + - name: data + description: | + Case comment + value: + attributes: + comment: "{{ comment }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates the text content of an existing comment on a case timeline. The comment is identified by its cell ID. + +```sql +REPLACE datadog.service_management.case_comments +SET +data = '{{ data }}' +WHERE +case_id = '{{ case_id }}' --required +AND cell_id = '{{ cell_id }}' --required +AND data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete case comment + +```sql +DELETE FROM datadog.service_management.case_comments +WHERE case_id = '{{ case_id }}' --required +AND cell_id = '{{ cell_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_counts/index.md b/website/docs/services/service_management/case_counts/index.md new file mode 100644 index 0000000..992299b --- /dev/null +++ b/website/docs/services/service_management/case_counts/index.md @@ -0,0 +1,157 @@ +--- +title: case_counts +hide_title: false +hide_table_of_contents: false +keywords: + - case_counts + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_counts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCount response identifier. (example: count-result-001)
objectAttributes for the count response, including the total count and optional facet breakdowns.
stringCount resource type. (example: count)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
query_filter, group_bys, limitReturns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated fields to group by. (example: status,priority)
integer (int64)Maximum facet values to return.
stringFilter query for cases.
+ +## `SELECT` examples + + + + +Returns case counts, optionally grouped by one or more fields (for example, status, priority). Supports a query filter to narrow the scope. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_counts +WHERE query_filter = '{{ query_filter }}' +AND group_bys = '{{ group_bys }}' +AND limit = '{{ limit }}' +; +``` + + diff --git a/website/docs/services/service_management/case_custom_attributes/index.md b/website/docs/services/service_management/case_custom_attributes/index.md new file mode 100644 index 0000000..4e06182 --- /dev/null +++ b/website/docs/services/service_management/case_custom_attributes/index.md @@ -0,0 +1,174 @@ +--- +title: case_custom_attributes +hide_title: false +hide_table_of_contents: false +keywords: + - case_custom_attributes + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_custom_attributes resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, custom_attribute_key, dataUpdate case custom attribute
case_id, custom_attribute_keyDelete custom attribute from case
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringCase Custom attribute's key (example: aws_region)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Update case custom attribute + +```sql +INSERT INTO datadog.service_management.case_custom_attributes ( +data, +case_id, +custom_attribute_key +) +SELECT +'{{ data }}' /* required */, +'{{ case_id }}', +'{{ custom_attribute_key }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_custom_attributes + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_custom_attributes resource. + - name: custom_attribute_key + value: "{{ custom_attribute_key }}" + description: Required parameter for the case_custom_attributes resource. + - name: data + description: | + Case update custom attribute + value: + attributes: + is_multi: {{ is_multi }} + type: "{{ type }}" + value: "{{ value }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete custom attribute from case + +```sql +DELETE FROM datadog.service_management.case_custom_attributes +WHERE case_id = '{{ case_id }}' --required +AND custom_attribute_key = '{{ custom_attribute_key }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_insights/index.md b/website/docs/services/service_management/case_insights/index.md new file mode 100644 index 0000000..c45a241 --- /dev/null +++ b/website/docs/services/service_management/case_insights/index.md @@ -0,0 +1,140 @@ +--- +title: case_insights +hide_title: false +hide_table_of_contents: false +keywords: + - case_insights + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_insights resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataAdds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see `CaseInsightType` for allowed values), a ref (URL path to the resource), and a resource_id.
case_idRemoves one or more previously added insights from a case by specifying their type and resource identifier in the request body.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `REPLACE` examples + + + + +Adds one or more insights to a case. Insights are references to related Datadog resources (such as monitors, security signals, incidents, or error tracking issues) that provide investigative context. Up to 100 insights can be added per request. Each insight requires a type (see `CaseInsightType` for allowed values), a ref (URL path to the resource), and a resource_id. + +```sql +REPLACE datadog.service_management.case_insights +SET +data = '{{ data }}' +WHERE +case_id = '{{ case_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Removes one or more previously added insights from a case by specifying their type and resource identifier in the request body. + +```sql +DELETE FROM datadog.service_management.case_insights +WHERE case_id = '{{ case_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_links/index.md b/website/docs/services/service_management/case_links/index.md new file mode 100644 index 0000000..0725049 --- /dev/null +++ b/website/docs/services/service_management/case_links/index.md @@ -0,0 +1,157 @@ +--- +title: case_links +hide_title: false +hide_table_of_contents: false +keywords: + - case_links + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_links resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe case link identifier. (example: 804cd682-55f6-4541-ab00-b608b282ea7d)
objectAttributes describing a directional relationship between two entities (cases, incidents, or pages).
stringJSON:API resource type for case links. (link) (example: link)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
entity_type, entity_idrelationshipReturns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the entity to look up links for.
stringThe entity type to look up links for. Use `CASE` to find links for a specific case.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOptional filter to only return links of a specific relationship type (for example, `BLOCKS` or `CAUSES`).
+ +## `SELECT` examples + + + + +Returns all links associated with a case. Links define relationships (for example, BLOCKS) between cases. Requires entity_type and entity_id query parameters. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_links +WHERE entity_type = '{{ entity_type }}' -- required +AND entity_id = '{{ entity_id }}' -- required +AND relationship = '{{ relationship }}' +; +``` + + diff --git a/website/docs/services/service_management/case_project_favorites/index.md b/website/docs/services/service_management/case_project_favorites/index.md new file mode 100644 index 0000000..e69750f --- /dev/null +++ b/website/docs/services/service_management/case_project_favorites/index.md @@ -0,0 +1,209 @@ +--- +title: case_project_favorites +hide_title: false +hide_table_of_contents: false +keywords: + - case_project_favorites + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_project_favorites resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the favorited project. (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringJSON:API resource type for project favorites. (project_favorite) (default: project_favorite, example: project_favorite)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Returns the list of case projects that the current authenticated user has marked as favorites.
project_idMarks a case project as a favorite for the current authenticated user.
project_idRemoves a case project from the current user's favorites list.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringProject UUID. (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Returns the list of case projects that the current authenticated user has marked as favorites. + +```sql +SELECT +id, +type +FROM datadog.service_management.case_project_favorites +; +``` + + + + +## `INSERT` examples + + + + +Marks a case project as a favorite for the current authenticated user. + +```sql +INSERT INTO datadog.service_management.case_project_favorites ( +project_id +) +SELECT +'{{ project_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_project_favorites + props: + - name: project_id + value: "{{ project_id }}" + description: Required parameter for the case_project_favorites resource. +`} + + + + + +## `DELETE` examples + + + + +Removes a case project from the current user's favorites list. + +```sql +DELETE FROM datadog.service_management.case_project_favorites +WHERE project_id = '{{ project_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_project_notification_rules/index.md b/website/docs/services/service_management/case_project_notification_rules/index.md new file mode 100644 index 0000000..7294be9 --- /dev/null +++ b/website/docs/services/service_management/case_project_notification_rules/index.md @@ -0,0 +1,291 @@ +--- +title: case_project_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - case_project_notification_rules + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_project_notification_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe notification rule's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectNotification rule attributes
stringNotification rule resource type (notification_rule) (default: notification_rule, example: notification_rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_idGet all notification rules for a project.
project_id, dataCreate a notification rule for a project.
project_id, notification_rule_id, dataUpdate a notification rule.
project_id, notification_rule_idDelete a notification rule using the notification rule's `id`.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringNotification Rule UUID (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringProject UUID (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all notification rules for a project. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_project_notification_rules +WHERE project_id = '{{ project_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a notification rule for a project. + +```sql +INSERT INTO datadog.service_management.case_project_notification_rules ( +data, +project_id +) +SELECT +'{{ data }}' /* required */, +'{{ project_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_project_notification_rules + props: + - name: project_id + value: "{{ project_id }}" + description: Required parameter for the case_project_notification_rules resource. + - name: data + description: | + Notification rule create + value: + attributes: + is_enabled: {{ is_enabled }} + query: "{{ query }}" + recipients: + - data: + channel: "{{ channel }}" + channel_id: "{{ channel_id }}" + channel_name: "{{ channel_name }}" + connector_name: "{{ connector_name }}" + email: "{{ email }}" + name: "{{ name }}" + service_name: "{{ service_name }}" + team_id: "{{ team_id }}" + team_name: "{{ team_name }}" + tenant_id: "{{ tenant_id }}" + tenant_name: "{{ tenant_name }}" + workspace: "{{ workspace }}" + workspace_id: "{{ workspace_id }}" + type: "{{ type }}" + triggers: + - data: + change_type: "{{ change_type }}" + field: "{{ field }}" + from_status: "{{ from_status }}" + from_status_name: "{{ from_status_name }}" + to_status: "{{ to_status }}" + to_status_name: "{{ to_status_name }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a notification rule. + +```sql +REPLACE datadog.service_management.case_project_notification_rules +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +AND notification_rule_id = '{{ notification_rule_id }}' --required +AND data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Delete a notification rule using the notification rule's `id`. + +```sql +DELETE FROM datadog.service_management.case_project_notification_rules +WHERE project_id = '{{ project_id }}' --required +AND notification_rule_id = '{{ notification_rule_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_project_rules/index.md b/website/docs/services/service_management/case_project_rules/index.md new file mode 100644 index 0000000..9f5a924 --- /dev/null +++ b/website/docs/services/service_management/case_project_rules/index.md @@ -0,0 +1,397 @@ +--- +title: case_project_rules +hide_title: false +hide_table_of_contents: false +keywords: + - case_project_rules + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_project_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringAutomation rule identifier. (example: e6773723-fe58-49ff-9975-dff00f14e28d)
objectCore attributes of an automation rule, including its name, trigger condition, action to execute, and current state.
objectRelated resources for the automation rule, including the users who created and last modified it.
stringJSON:API resource type for case automation rules. (rule) (default: rule, example: rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringAutomation rule identifier. (example: e6773723-fe58-49ff-9975-dff00f14e28d)
objectCore attributes of an automation rule, including its name, trigger condition, action to execute, and current state.
objectRelated resources for the automation rule, including the users who created and last modified it.
stringJSON:API resource type for case automation rules. (rule) (default: rule, example: rule)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, rule_idReturns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled).
project_idReturns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes.
project_id, dataCreates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute.
project_id, rule_id, dataUpdates the trigger, action, name, or state of an existing automation rule.
project_id, rule_idPermanently deletes an automation rule from a project.
project_id, rule_idDisables an automation rule so it no longer triggers on case events. The rule configuration is preserved.
project_id, rule_idEnables a previously disabled automation rule so it triggers on matching case events.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the project that owns the automation rules. (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringThe UUID of the automation rule. (example: e6773723-fe58-49ff-9975-dff00f14e28d)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Returns a single automation rule identified by its UUID, including its trigger, action, and current state (enabled/disabled). + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.case_project_rules +WHERE project_id = '{{ project_id }}' -- required +AND rule_id = '{{ rule_id }}' -- required +; +``` + + + +Returns all automation rules configured for a project. Automation rules allow automatic actions to be triggered by case events like creation, status transitions, or attribute changes. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.case_project_rules +WHERE project_id = '{{ project_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Creates an automation rule for a project. The rule defines a trigger event (for example, case created, status transitioned) and an action to execute. + +```sql +INSERT INTO datadog.service_management.case_project_rules ( +data, +project_id +) +SELECT +'{{ data }}' /* required */, +'{{ project_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_project_rules + props: + - name: project_id + value: "{{ project_id }}" + description: Required parameter for the case_project_rules resource. + - name: data + description: | + Data object for creating an automation rule. + value: + attributes: + action: + data: + agent_type: "{{ agent_type }}" + assigned_agent_id: "{{ assigned_agent_id }}" + handle: "{{ handle }}" + type: "{{ type }}" + name: "{{ name }}" + state: "{{ state }}" + trigger: + data: + approval_type: "{{ approval_type }}" + change_type: "{{ change_type }}" + field: "{{ field }}" + from_status_name: "{{ from_status_name }}" + to_status_name: "{{ to_status_name }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates the trigger, action, name, or state of an existing automation rule. + +```sql +REPLACE datadog.service_management.case_project_rules +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +AND rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Permanently deletes an automation rule from a project. + +```sql +DELETE FROM datadog.service_management.case_project_rules +WHERE project_id = '{{ project_id }}' --required +AND rule_id = '{{ rule_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Disables an automation rule so it no longer triggers on case events. The rule configuration is preserved. + +```sql +EXEC datadog.service_management.case_project_rules.disable_case_automation_rule +@project_id='{{ project_id }}' --required, +@rule_id='{{ rule_id }}' --required +; +``` + + + +Enables a previously disabled automation rule so it triggers on matching case events. + +```sql +EXEC datadog.service_management.case_project_rules.enable_case_automation_rule +@project_id='{{ project_id }}' --required, +@rule_id='{{ rule_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_projects/index.md b/website/docs/services/service_management/case_projects/index.md new file mode 100644 index 0000000..56ebd8a --- /dev/null +++ b/website/docs/services/service_management/case_projects/index.md @@ -0,0 +1,112 @@ +--- +title: case_projects +hide_title: false +hide_table_of_contents: false +keywords: + - case_projects + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_projects resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
project_id, dataUpdate a project.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringProject UUID. (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Update a project. + +```sql +UPDATE datadog.service_management.case_projects +SET +data = '{{ data }}' +WHERE +project_id = '{{ project_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/service_management/case_relationship_incidents/index.md b/website/docs/services/service_management/case_relationship_incidents/index.md new file mode 100644 index 0000000..f75c295 --- /dev/null +++ b/website/docs/services/service_management/case_relationship_incidents/index.md @@ -0,0 +1,132 @@ +--- +title: case_relationship_incidents +hide_title: false +hide_table_of_contents: false +keywords: + - case_relationship_incidents + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_relationship_incidents resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataLink an incident to a case
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Link an incident to a case + +```sql +INSERT INTO datadog.service_management.case_relationship_incidents ( +data, +case_id +) +SELECT +'{{ data }}' /* required */, +'{{ case_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_relationship_incidents + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_relationship_incidents resource. + - name: data + description: | + Incident relationship data + value: + id: "{{ id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/case_relationship_jira_issues/index.md b/website/docs/services/service_management/case_relationship_jira_issues/index.md new file mode 100644 index 0000000..01d3c76 --- /dev/null +++ b/website/docs/services/service_management/case_relationship_jira_issues/index.md @@ -0,0 +1,193 @@ +--- +title: case_relationship_jira_issues +hide_title: false +hide_table_of_contents: false +keywords: + - case_relationship_jira_issues + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_relationship_jira_issues resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataCreate a new Jira issue and link it to a case
case_id, dataLink an existing Jira issue to a case
case_idRemove the link between a Jira issue and a case
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a new Jira issue and link it to a case + +```sql +INSERT INTO datadog.service_management.case_relationship_jira_issues ( +data, +case_id +) +SELECT +'{{ data }}' /* required */, +'{{ case_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_relationship_jira_issues + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_relationship_jira_issues resource. + - name: data + description: | + Jira issue creation data + value: + attributes: + fields: "{{ fields }}" + issue_type_id: "{{ issue_type_id }}" + jira_account_id: "{{ jira_account_id }}" + project_id: "{{ project_id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Link an existing Jira issue to a case + +```sql +UPDATE datadog.service_management.case_relationship_jira_issues +SET +data = '{{ data }}' +WHERE +case_id = '{{ case_id }}' --required +AND data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Remove the link between a Jira issue and a case + +```sql +DELETE FROM datadog.service_management.case_relationship_jira_issues +WHERE case_id = '{{ case_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_relationship_notebooks/index.md b/website/docs/services/service_management/case_relationship_notebooks/index.md new file mode 100644 index 0000000..119b7b6 --- /dev/null +++ b/website/docs/services/service_management/case_relationship_notebooks/index.md @@ -0,0 +1,129 @@ +--- +title: case_relationship_notebooks +hide_title: false +hide_table_of_contents: false +keywords: + - case_relationship_notebooks + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_relationship_notebooks resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataCreate a new investigation notebook and link it to a case
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a new investigation notebook and link it to a case + +```sql +INSERT INTO datadog.service_management.case_relationship_notebooks ( +data, +case_id +) +SELECT +'{{ data }}' /* required */, +'{{ case_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_relationship_notebooks + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_relationship_notebooks resource. + - name: data + description: | + Notebook creation data + value: + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/case_relationship_projects/index.md b/website/docs/services/service_management/case_relationship_projects/index.md new file mode 100644 index 0000000..a72f0c7 --- /dev/null +++ b/website/docs/services/service_management/case_relationship_projects/index.md @@ -0,0 +1,112 @@ +--- +title: case_relationship_projects +hide_title: false +hide_table_of_contents: false +keywords: + - case_relationship_projects + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_relationship_projects resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataUpdate the project associated with a case
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Update the project associated with a case + +```sql +UPDATE datadog.service_management.case_relationship_projects +SET +data = '{{ data }}' +WHERE +case_id = '{{ case_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/service_management/case_relationship_servicenow_tickets/index.md b/website/docs/services/service_management/case_relationship_servicenow_tickets/index.md new file mode 100644 index 0000000..ec6ed21 --- /dev/null +++ b/website/docs/services/service_management/case_relationship_servicenow_tickets/index.md @@ -0,0 +1,132 @@ +--- +title: case_relationship_servicenow_tickets +hide_title: false +hide_table_of_contents: false +keywords: + - case_relationship_servicenow_tickets + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_relationship_servicenow_tickets resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_id, dataCreate a new ServiceNow incident ticket and link it to a case
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a new ServiceNow incident ticket and link it to a case + +```sql +INSERT INTO datadog.service_management.case_relationship_servicenow_tickets ( +data, +case_id +) +SELECT +'{{ data }}' /* required */, +'{{ case_id }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_relationship_servicenow_tickets + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_relationship_servicenow_tickets resource. + - name: data + description: | + ServiceNow ticket creation data + value: + attributes: + assignment_group: "{{ assignment_group }}" + instance_name: "{{ instance_name }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/case_timelines/index.md b/website/docs/services/service_management/case_timelines/index.md new file mode 100644 index 0000000..99f193f --- /dev/null +++ b/website/docs/services/service_management/case_timelines/index.md @@ -0,0 +1,163 @@ +--- +title: case_timelines +hide_title: false +hide_table_of_contents: false +keywords: + - case_timelines + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_timelines resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringTimeline cell's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectAttributes of a timeline cell, representing a single event in a case's chronological activity log (for example, a comment, status change, or assignment update).
stringJSON:API resource type for timeline cells. (timeline_cell) (default: timeline_cell, example: timeline_cell)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_idpage[size], page[number], sort[ascending]Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
integer (int64)Zero-based page number for pagination.
integer (int64)Number of timeline cells to return per page.
booleanIf `true`, returns timeline cells in chronological order (oldest first). Defaults to `false` (newest first).
+ +## `SELECT` examples + + + + +Returns the timeline of events for a case, including comments, status changes, and other activity. Supports pagination and sort order. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_timelines +WHERE case_id = '{{ case_id }}' -- required +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND sort[ascending] = '{{ sort[ascending] }}' +; +``` + + diff --git a/website/docs/services/service_management/case_type_custom_attributes/index.md b/website/docs/services/service_management/case_type_custom_attributes/index.md new file mode 100644 index 0000000..76939e4 --- /dev/null +++ b/website/docs/services/service_management/case_type_custom_attributes/index.md @@ -0,0 +1,322 @@ +--- +title: case_type_custom_attributes +hide_title: false +hide_table_of_contents: false +keywords: + - case_type_custom_attributes + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_type_custom_attributes resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCustom attribute configs identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectAttributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type.
stringJSON:API resource type for custom attribute configurations. (custom_attribute) (default: custom_attribute, example: custom_attribute)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCustom attribute configs identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectAttributes of a custom attribute configuration, defining an organization-specific metadata field that can be added to cases of a given type.
stringJSON:API resource type for custom attribute configurations. (custom_attribute) (default: custom_attribute, example: custom_attribute)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_type_idGet all custom attribute config of case type
Get all custom attributes
case_type_id, dataCreate custom attribute config for a case type
case_type_id, custom_attribute_id, dataUpdates the display name, description, type, or options of an existing custom attribute configuration for a case type.
case_type_id, custom_attribute_idDelete custom attribute config
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the case type. (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de505)
stringCase Custom attribute's UUID (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de505)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all custom attribute config of case type + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_type_custom_attributes +WHERE case_type_id = '{{ case_type_id }}' -- required +; +``` + + + +Get all custom attributes + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_type_custom_attributes +; +``` + + + + +## `INSERT` examples + + + + +Create custom attribute config for a case type + +```sql +INSERT INTO datadog.service_management.case_type_custom_attributes ( +data, +case_type_id +) +SELECT +'{{ data }}' /* required */, +'{{ case_type_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_type_custom_attributes + props: + - name: case_type_id + value: "{{ case_type_id }}" + description: Required parameter for the case_type_custom_attributes resource. + - name: data + description: | + Data object for creating a custom attribute configuration. + value: + attributes: + description: "{{ description }}" + display_name: "{{ display_name }}" + is_multi: {{ is_multi }} + key: "{{ key }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates the display name, description, type, or options of an existing custom attribute configuration for a case type. + +```sql +REPLACE datadog.service_management.case_type_custom_attributes +SET +data = '{{ data }}' +WHERE +case_type_id = '{{ case_type_id }}' --required +AND custom_attribute_id = '{{ custom_attribute_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete custom attribute config + +```sql +DELETE FROM datadog.service_management.case_type_custom_attributes +WHERE case_type_id = '{{ case_type_id }}' --required +AND custom_attribute_id = '{{ custom_attribute_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_types/index.md b/website/docs/services/service_management/case_types/index.md new file mode 100644 index 0000000..098855b --- /dev/null +++ b/website/docs/services/service_management/case_types/index.md @@ -0,0 +1,257 @@ +--- +title: case_types +hide_title: false +hide_table_of_contents: false +keywords: + - case_types + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_types resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase type's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001)
objectAttributes of a case type, which define a classification category for cases. Organizations use case types to model different workflows (for example, Security Incident, Bug Report, Change Request).
stringJSON:API resource type for case types. (case_type) (default: case_type, example: case_type)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Get all case types
dataCreate a Case Type
case_type_id, dataUpdates the name, emoji, or description of an existing case type.
case_type_idDelete a case type
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the case type. (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de505)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get all case types + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.case_types +; +``` + + + + +## `INSERT` examples + + + + +Create a Case Type + +```sql +INSERT INTO datadog.service_management.case_types ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_types + props: + - name: data + description: | + Data object for creating a case type. + value: + attributes: + deleted_at: "{{ deleted_at }}" + description: "{{ description }}" + emoji: "{{ emoji }}" + name: "{{ name }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates the name, emoji, or description of an existing case type. + +```sql +REPLACE datadog.service_management.case_types +SET +data = '{{ data }}' +WHERE +case_type_id = '{{ case_type_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a case type + +```sql +DELETE FROM datadog.service_management.case_types +WHERE case_type_id = '{{ case_type_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_views/index.md b/website/docs/services/service_management/case_views/index.md new file mode 100644 index 0000000..363ccc2 --- /dev/null +++ b/website/docs/services/service_management/case_views/index.md @@ -0,0 +1,327 @@ +--- +title: case_views +hide_title: false +hide_table_of_contents: false +keywords: + - case_views + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_views resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe view's identifier. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
objectAttributes of a case view, including the filter query and optional notification rule.
objectRelated resources for the case view, including the creator, last modifier, and associated project.
stringJSON:API resource type for case views. (view) (default: view, example: view)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe view's identifier. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
objectAttributes of a case view, including the filter query and optional notification rule.
objectRelated resources for the case view, including the creator, last modifier, and associated project.
stringJSON:API resource type for case views. (view) (default: view, example: view)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
view_idReturns a single saved case view identified by its UUID, including its query, associated project, and timestamps.
project_idReturns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases.
dataCreates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view.
view_id, dataUpdates the name, query, or notification rule of an existing case view.
view_idPermanently deletes a saved case view.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringFilter views by project identifier. (example: e555e290-ed65-49bd-ae18-8acbfcf18db7)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe UUID of the case view. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
+ +## `SELECT` examples + + + + +Returns a single saved case view identified by its UUID, including its query, associated project, and timestamps. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.case_views +WHERE view_id = '{{ view_id }}' -- required +; +``` + + + +Returns all saved case views for a given project. Views are saved search queries that allow quick access to filtered lists of cases. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.case_views +WHERE project_id = '{{ project_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Creates a new saved case view with a name, filter query, and associated project. Optionally, a notification rule can be linked to the view. + +```sql +INSERT INTO datadog.service_management.case_views ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_views + props: + - name: data + description: | + Data object for creating a case view. + value: + attributes: + name: "{{ name }}" + np_rule_id: "{{ np_rule_id }}" + project_id: "{{ project_id }}" + query: "{{ query }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates the name, query, or notification rule of an existing case view. + +```sql +REPLACE datadog.service_management.case_views +SET +data = '{{ data }}' +WHERE +view_id = '{{ view_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Permanently deletes a saved case view. + +```sql +DELETE FROM datadog.service_management.case_views +WHERE view_id = '{{ view_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/case_watchers/index.md b/website/docs/services/service_management/case_watchers/index.md new file mode 100644 index 0000000..d6e5bb4 --- /dev/null +++ b/website/docs/services/service_management/case_watchers/index.md @@ -0,0 +1,227 @@ +--- +title: case_watchers +hide_title: false +hide_table_of_contents: false +keywords: + - case_watchers + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a case_watchers resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe primary identifier of the case watcher. (example: 8146583c-0b5f-11ec-abf8-da7ad0900001)
objectRelationships for a case watcher, linking to the underlying user resource.
stringJSON:API resource type for case watchers. (watcher) (default: watcher, example: watcher)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
case_idReturns the list of users who are watching a case. Watchers receive notifications about updates to the case.
case_id, user_uuidAdds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case.
case_id, user_uuidRemoves a user from the watchers list of a case. The user no longer receives notifications about updates to the case.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringCase's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe UUID of the user to add or remove as a watcher. (example: 8146583c-0b5f-11ec-abf8-da7ad0900001)
+ +## `SELECT` examples + + + + +Returns the list of users who are watching a case. Watchers receive notifications about updates to the case. + +```sql +SELECT +id, +relationships, +type +FROM datadog.service_management.case_watchers +WHERE case_id = '{{ case_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Adds a user (identified by their UUID) as a watcher of a case. The user receives notifications about subsequent updates to the case. + +```sql +INSERT INTO datadog.service_management.case_watchers ( +case_id, +user_uuid +) +SELECT +'{{ case_id }}', +'{{ user_uuid }}' +; +``` + + + +{`# Description fields are for documentation purposes +- name: case_watchers + props: + - name: case_id + value: "{{ case_id }}" + description: Required parameter for the case_watchers resource. + - name: user_uuid + value: "{{ user_uuid }}" + description: Required parameter for the case_watchers resource. +`} + + + + + +## `DELETE` examples + + + + +Removes a user from the watchers list of a case. The user no longer receives notifications about updates to the case. + +```sql +DELETE FROM datadog.service_management.case_watchers +WHERE case_id = '{{ case_id }}' --required +AND user_uuid = '{{ user_uuid }}' --required +; +``` + + diff --git a/website/docs/services/service_management/cases/index.md b/website/docs/services/service_management/cases/index.md index d72faf6..5a7ebd3 100644 --- a/website/docs/services/service_management/cases/index.md +++ b/website/docs/services/service_management/cases/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a cases resource. ## Overview - +
Namecases
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Case resource type (default: case, example: case) + JSON:API resource type for cases. (case) (default: case, example: case) @@ -91,70 +92,126 @@ The following methods are available for this resource: - case_id, region + case_id Get the details of case by `case_id` - region, data__data + data Create a Case + + + + link_id + + Deletes an existing link between cases by link ID. + - region + page[size], page[number], sort[field], filter, sort[asc] Search cases. + + + + data + + Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics. + + + + + data + + Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body. + + + + + data + + Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified. + - case_id, region, data + case_id, data Archive case - case_id, region, data + case_id, data Assign case to a user - case_id, region, data + case_id, data Update case attributes + + + + case_id, data + + Update case description + + + + + case_id, data + + Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved. + - case_id, region, data + case_id, data Update case priority + + + + case_id, data + + Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases. + - case_id, region, data + case_id, data Update case status + + + + case_id, data + + Update case title + - case_id, region, data + case_id, data Unarchive case - case_id, region, data + case_id, data Unassign case @@ -179,10 +236,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Case's UUID or key (example: f98a5a5b-e0ff-45d4-b2f5-afe6e74de504) - - + + + string + The UUID of the case link. + + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -197,7 +259,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -232,7 +294,6 @@ relationships, type FROM datadog.service_management.cases WHERE case_id = '{{ case_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -254,12 +315,10 @@ Create a Case ```sql INSERT INTO datadog.service_management.cases ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -267,17 +326,52 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: cases props: - - name: region - value: string - description: Required parameter for the cases resource. - name: data - value: object description: | Case creation data + value: + attributes: + custom_attributes: "{{ custom_attributes }}" + description: "{{ description }}" + priority: "{{ priority }}" + status_name: "{{ status_name }}" + title: "{{ title }}" + type_id: "{{ type_id }}" + relationships: + assignee: + data: + id: "{{ id }}" + type: "{{ type }}" + project: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Deletes an existing link between cases by link ID. + +```sql +DELETE FROM datadog.service_management.cases +WHERE link_id = '{{ link_id }}' --required +; ``` @@ -285,15 +379,24 @@ data ## Lifecycle Methods +EXEC variables use wire (API) names. + + + +Performs an aggregation query over cases, grouping results by specified fields and returning counts per group along with a total. Useful for dashboards and analytics. + +```sql +EXEC datadog.service_management.cases.aggregate_cases +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Applies a single action (such as changing priority, status, assignment, or archiving) to multiple cases at once. The list of case IDs and the action type with its payload are specified in the request body. + +```sql +EXEC datadog.service_management.cases.bulk_update_cases +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Creates a directional link between two cases (for example, case A blocks case B). The parent and child cases and their relationship type must be specified. + +```sql +EXEC datadog.service_management.cases.create_case_link +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + Archive case @@ -320,7 +461,6 @@ Archive case ```sql EXEC datadog.service_management.cases.archive_case @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -335,7 +475,6 @@ Assign case to a user ```sql EXEC datadog.service_management.cases.assign_case @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -350,7 +489,34 @@ Update case attributes ```sql EXEC datadog.service_management.cases.update_attributes @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Update case description + +```sql +EXEC datadog.service_management.cases.update_case_description +@case_id='{{ case_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Sets or updates the due date for a case. The due date is a calendar date (without a time component) indicating when the case should be resolved. + +```sql +EXEC datadog.service_management.cases.update_case_due_date +@case_id='{{ case_id }}' --required, @@json= '{ "data": "{{ data }}" @@ -365,7 +531,20 @@ Update case priority ```sql EXEC datadog.service_management.cases.update_priority @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Sets the resolved reason for a security case (for example, FALSE_POSITIVE, TRUE_POSITIVE). Applicable to security-type cases. + +```sql +EXEC datadog.service_management.cases.update_case_resolved_reason +@case_id='{{ case_id }}' --required, @@json= '{ "data": "{{ data }}" @@ -380,7 +559,20 @@ Update case status ```sql EXEC datadog.service_management.cases.update_status @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Update case title + +```sql +EXEC datadog.service_management.cases.update_case_title +@case_id='{{ case_id }}' --required, @@json= '{ "data": "{{ data }}" @@ -395,7 +587,6 @@ Unarchive case ```sql EXEC datadog.service_management.cases.unarchive_case @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" @@ -410,7 +601,6 @@ Unassign case ```sql EXEC datadog.service_management.cases.unassign_case @case_id='{{ case_id }}' --required, -@region='{{ region }}' --required @@json= '{ "data": "{{ data }}" diff --git a/website/docs/services/service_management/change_change_request_decisions/index.md b/website/docs/services/service_management/change_change_request_decisions/index.md new file mode 100644 index 0000000..638477f --- /dev/null +++ b/website/docs/services/service_management/change_change_request_decisions/index.md @@ -0,0 +1,149 @@ +--- +title: change_change_request_decisions +hide_title: false +hide_table_of_contents: false +keywords: + - change_change_request_decisions + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a change_change_request_decisions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
change_request_id, decision_id, dataUpdate a decision on a change request, such as approving or declining it.
change_request_id, decision_idDelete a decision from a change request.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the change request. (example: CHM-1234)
stringThe identifier of the change request decision. (example: decision-id-0)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `UPDATE` examples + + + + +Update a decision on a change request, such as approving or declining it. + +```sql +UPDATE datadog.service_management.change_change_request_decisions +SET +data = '{{ data }}', +included = '{{ included }}' +WHERE +change_request_id = '{{ change_request_id }}' --required +AND decision_id = '{{ decision_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a decision from a change request. + +```sql +DELETE FROM datadog.service_management.change_change_request_decisions +WHERE change_request_id = '{{ change_request_id }}' --required +AND decision_id = '{{ decision_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/change_request_branches/index.md b/website/docs/services/service_management/change_request_branches/index.md new file mode 100644 index 0000000..0c10dbf --- /dev/null +++ b/website/docs/services/service_management/change_request_branches/index.md @@ -0,0 +1,135 @@ +--- +title: change_request_branches +hide_title: false +hide_table_of_contents: false +keywords: + - change_request_branches + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a change_request_branches resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
change_request_id, dataCreate a new branch in a repository for a change request.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the change request. (example: CHM-1234)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a new branch in a repository for a change request. + +```sql +INSERT INTO datadog.service_management.change_request_branches ( +data, +change_request_id +) +SELECT +'{{ data }}' /* required */, +'{{ change_request_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: change_request_branches + props: + - name: change_request_id + value: "{{ change_request_id }}" + description: Required parameter for the change_request_branches resource. + - name: data + description: | + Data object to create a change request branch. + value: + attributes: + branch_name: "{{ branch_name }}" + repo_id: "{{ repo_id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/change_requests/index.md b/website/docs/services/service_management/change_requests/index.md new file mode 100644 index 0000000..6c79e24 --- /dev/null +++ b/website/docs/services/service_management/change_requests/index.md @@ -0,0 +1,247 @@ +--- +title: change_requests +hide_title: false +hide_table_of_contents: false +keywords: + - change_requests + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a change_requests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the change request. (example: CHM-1234)
objectAttributes of a change request response.
objectRelationships of a change request.
stringChange request resource type. (change_request) (example: change_request)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
change_request_idGet the details of a change request by its ID.
dataCreate a new change request.
change_request_id, dataUpdate the properties of a change request.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the change request. (example: CHM-1234)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get the details of a change request by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.change_requests +WHERE change_request_id = '{{ change_request_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new change request. + +```sql +INSERT INTO datadog.service_management.change_requests ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: change_requests + props: + - name: data + description: | + Data object to create a change request. + value: + attributes: + change_request_linked_incident_uuid: "{{ change_request_linked_incident_uuid }}" + change_request_maintenance_window_query: "{{ change_request_maintenance_window_query }}" + change_request_plan: "{{ change_request_plan }}" + change_request_risk: "{{ change_request_risk }}" + change_request_type: "{{ change_request_type }}" + description: "{{ description }}" + end_date: "{{ end_date }}" + project_id: "{{ project_id }}" + requested_teams: + - "{{ requested_teams }}" + start_date: "{{ start_date }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the properties of a change request. + +```sql +UPDATE datadog.service_management.change_requests +SET +data = '{{ data }}', +included = '{{ included }}' +WHERE +change_request_id = '{{ change_request_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/service_management/downtimes/index.md b/website/docs/services/service_management/downtimes/index.md index 9d693ff..ef51e1b 100644 --- a/website/docs/services/service_management/downtimes/index.md +++ b/website/docs/services/service_management/downtimes/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a downtimes resource. ## Overview - +
Namedowntimes
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Downtime resource type. (default: downtime, example: downtime) + Downtime resource type. (downtime) (default: downtime, example: downtime) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Downtime resource type. (default: downtime, example: downtime) + Downtime resource type. (downtime) (default: downtime, example: downtime) @@ -126,37 +127,37 @@ The following methods are available for this resource: - downtime_id, region + downtime_id include Get downtime detail by `downtime_id`. - region + current_only, include, page[offset], page[limit] Get all scheduled downtimes. - region, data__data + data Schedule a downtime. - downtime_id, region, data__data + downtime_id, data Update a downtime by `downtime_id`. - downtime_id, region + downtime_id - Cancel a downtime.

**Note**: Downtimes canceled through the API are no longer active, but are retained for approximately two days before being permanently removed. The downtime may still appear in search results until it is permanently removed. + Cancel a downtime.<br /><br />**Note**: Downtimes canceled through the API are no longer active, but are retained for approximately two days before being permanently removed. The downtime may still appear in search results until it is permanently removed. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string ID of the downtime to cancel. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -228,7 +229,6 @@ relationships, type FROM datadog.service_management.downtimes WHERE downtime_id = '{{ downtime_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -244,8 +244,7 @@ attributes, relationships, type FROM datadog.service_management.downtimes -WHERE region = '{{ region }}' -- required -AND current_only = '{{ current_only }}' +WHERE current_only = '{{ current_only }}' AND include = '{{ include }}' AND page[offset] = '{{ page[offset] }}' AND page[limit] = '{{ page[limit] }}' @@ -270,12 +269,10 @@ Schedule a downtime. ```sql INSERT INTO datadog.service_management.downtimes ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -284,18 +281,37 @@ included
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: downtimes props: - - name: region - value: string - description: Required parameter for the downtimes resource. - name: data - value: object description: | Object to create a downtime. -``` + value: + attributes: + display_timezone: "{{ display_timezone }}" + message: "{{ message }}" + monitor_identifier: + monitor_id: {{ monitor_id }} + monitor_tags: + - "{{ monitor_tags }}" + mute_first_recovery_notification: {{ mute_first_recovery_notification }} + notify_end_states: + - "{{ notify_end_states }}" + notify_end_types: + - "{{ notify_end_types }}" + schedule: + recurrences: + - duration: "{{ duration }}" + rrule: "{{ rrule }}" + start: "{{ start }}" + timezone: "{{ timezone }}" + end: "{{ end }}" + start: "{{ start }}" + scope: "{{ scope }}" + type: "{{ type }}" +`} +
@@ -315,11 +331,10 @@ Update a downtime by `downtime_id`. ```sql UPDATE datadog.service_management.downtimes SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE downtime_id = '{{ downtime_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -338,12 +353,11 @@ included; > -Cancel a downtime.

**Note**: Downtimes canceled through the API are no longer active, but are retained for approximately two days before being permanently removed. The downtime may still appear in search results until it is permanently removed. +Cancel a downtime.<br /><br />**Note**: Downtimes canceled through the API are no longer active, but are retained for approximately two days before being permanently removed. The downtime may still appear in search results until it is permanently removed. ```sql DELETE FROM datadog.service_management.downtimes WHERE downtime_id = '{{ downtime_id }}' --required -AND region = '{{ region }}' --required ; ```
diff --git a/website/docs/services/service_management/error_tracking_issues/index.md b/website/docs/services/service_management/error_tracking_issues/index.md new file mode 100644 index 0000000..c6acad1 --- /dev/null +++ b/website/docs/services/service_management/error_tracking_issues/index.md @@ -0,0 +1,107 @@ +--- +title: error_tracking_issues +hide_title: false +hide_table_of_contents: false +keywords: + - error_tracking_issues + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an error_tracking_issues resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
issue_idRemove the assignee of an issue by `issue_id`.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe identifier of the issue. (example: c1726a66-1f64-11ee-b338-da7ad0900002)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `DELETE` examples + + + + +Remove the assignee of an issue by `issue_id`. + +```sql +DELETE FROM datadog.service_management.error_tracking_issues +WHERE issue_id = '{{ issue_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/events/index.md b/website/docs/services/service_management/events/index.md index a7f5332..c2124c5 100644 --- a/website/docs/services/service_management/events/index.md +++ b/website/docs/services/service_management/events/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an events resource. ## Overview - +
Nameevents
Name
TypeResource
Id
@@ -91,7 +92,7 @@ The following fields are returned by `SELECT` queries: string - Type of the event. (default: event, example: event) + Type of the event. (event) (default: event, example: event) @@ -116,30 +117,30 @@ The following methods are available for this resource: - event_id, region + event_id Get the details of an event by `event_id`. - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - List endpoint returns events that match an events search query.
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to see your latest events. + List endpoint returns events that match an events search query.<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to see your latest events. - region, data__data + data - This endpoint allows you to publish events.

**Note:** To utilize this endpoint with our client libraries, please ensure you are using the latest version released on or after July 1, 2025. Earlier versions do not support this functionality.

✅ **Only events with the `change` or `alert` category** are in General Availability. For change events, see [Change Tracking](https://docs.datadoghq.com/change_tracking) for more details.

❌ For use cases involving other event categories, use the V1 endpoint or reach out to [support](https://www.datadoghq.com/support/).

❌ Notifications are not yet supported for events sent to this endpoint. Use the V1 endpoint for notification functionality. + This endpoint allows you to publish events.<br /><br />**Note:** To utilize this endpoint with our client libraries, please ensure you are using the latest version released on or after July 1, 2025. Earlier versions do not support this functionality.<br /><br />**Important:** Upgrade to the latest client library version to use the updated endpoint at `https:​//event-management-intake.{site}/api/v2/events`. Older client library versions of the Post an event (v2) API send requests to a deprecated endpoint (`https:​//api.{site}/api/v2/events`).<br /><br />✅ **Only events with the `change` or `alert` category** are in General Availability. For change events, see [Change Tracking](https:​//docs.datadoghq.com/change_tracking) for more details.<br /><br />❌ For use cases involving other event categories, use the V1 endpoint or reach out to [support](https:​//www.datadoghq.com/support/). - - region + + - List endpoint returns events that match an events search query.
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to build complex events filtering and search. + List endpoint returns events that match an events search query.<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to build complex events filtering and search. @@ -162,10 +163,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The UID of the event. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -220,13 +221,12 @@ attributes, type FROM datadog.service_management.events WHERE event_id = '{{ event_id }}' -- required -AND region = '{{ region }}' -- required ; ``` -List endpoint returns events that match an events search query.
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to see your latest events. +List endpoint returns events that match an events search query.<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to see your latest events. ```sql SELECT @@ -234,8 +234,7 @@ id, attributes, type FROM datadog.service_management.events -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -253,84 +252,95 @@ AND page[limit] = '{{ page[limit] }}' defaultValue="create_event" values={[ { label: 'create_event', value: 'create_event' }, - { label: 'search_events', value: 'search_events' }, { label: 'Manifest', value: 'manifest' } ]} > -This endpoint allows you to publish events.

**Note:** To utilize this endpoint with our client libraries, please ensure you are using the latest version released on or after July 1, 2025. Earlier versions do not support this functionality.

✅ **Only events with the `change` or `alert` category** are in General Availability. For change events, see [Change Tracking](https://docs.datadoghq.com/change_tracking) for more details.

❌ For use cases involving other event categories, use the V1 endpoint or reach out to [support](https://www.datadoghq.com/support/).

❌ Notifications are not yet supported for events sent to this endpoint. Use the V1 endpoint for notification functionality. +This endpoint allows you to publish events.<br /><br />**Note:** To utilize this endpoint with our client libraries, please ensure you are using the latest version released on or after July 1, 2025. Earlier versions do not support this functionality.<br /><br />**Important:** Upgrade to the latest client library version to use the updated endpoint at `https:​//event-management-intake.{site}/api/v2/events`. Older client library versions of the Post an event (v2) API send requests to a deprecated endpoint (`https:​//api.{site}/api/v2/events`).<br /><br />✅ **Only events with the `change` or `alert` category** are in General Availability. For change events, see [Change Tracking](https:​//docs.datadoghq.com/change_tracking) for more details.<br /><br />❌ For use cases involving other event categories, use the V1 endpoint or reach out to [support](https:​//www.datadoghq.com/support/). ```sql INSERT INTO datadog.service_management.events ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, links ; ```
- - -List endpoint returns events that match an events search query.
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to build complex events filtering and search. - -```sql -INSERT INTO datadog.service_management.events ( -data__filter, -data__options, -data__page, -data__sort, -region -) -SELECT -'{{ filter }}', -'{{ options }}', -'{{ page }}', -'{{ sort }}', -'{{ region }}' -RETURNING -data, -links, -meta -; -``` -
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: events props: - - name: region - value: string - description: Required parameter for the events resource. - name: data - value: object description: | An event object. - - name: filter - value: object - description: | - The search and filter query settings. - - name: options - value: object - description: | - The global query options that are used. Either provide a timezone or a time offset but not both, - otherwise the query fails. - - name: page - value: object - description: | - Pagination settings. - - name: sort - value: string - description: | - The sort parameters when querying events. - valid_values: ['timestamp', '-timestamp'] + value: + attributes: + aggregation_key: "{{ aggregation_key }}" + attributes: + author: + name: "{{ name }}" + type: "{{ type }}" + change_metadata: "{{ change_metadata }}" + changed_resource: + name: "{{ name }}" + type: "{{ type }}" + impacted_resources: + - name: "{{ name }}" + type: "{{ type }}" + new_value: "{{ new_value }}" + prev_value: "{{ prev_value }}" + custom: "{{ custom }}" + links: + - category: "{{ category }}" + title: "{{ title }}" + url: "{{ url }}" + priority: "{{ priority }}" + status: "{{ status }}" + category: "{{ category }}" + host: "{{ host }}" + integration_id: "{{ integration_id }}" + message: "{{ message }}" + tags: + - "{{ tags }}" + timestamp: "{{ timestamp }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +List endpoint returns events that match an events search query.<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to build complex events filtering and search. + +```sql +EXEC datadog.service_management.events.search_events +@@json= +'{ +"filter": "{{ filter }}", +"options": "{{ options }}", +"page": "{{ page }}", +"sort": "{{ sort }}" +}' +; ``` diff --git a/website/docs/services/service_management/form_versions/index.md b/website/docs/services/service_management/form_versions/index.md new file mode 100644 index 0000000..733fdd3 --- /dev/null +++ b/website/docs/services/service_management/form_versions/index.md @@ -0,0 +1,183 @@ +--- +title: form_versions +hide_title: false +hide_table_of_contents: false +keywords: + - form_versions + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a form_versions resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
form_id, dataCreate or update the latest draft version of a form. The `upsert_params` field controls<br />optimistic concurrency behavior.
form_id, dataUpsert the latest form version and publish it in a single atomic transaction.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the form. (example: 22f6006a-2302-4926-9396-d2dfcf7b0b34)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create or update the latest draft version of a form. The `upsert_params` field controls<br />optimistic concurrency behavior. + +```sql +INSERT INTO datadog.service_management.form_versions ( +data, +form_id +) +SELECT +'{{ data }}' /* required */, +'{{ form_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: form_versions + props: + - name: form_id + value: "{{ form_id }}" + description: Required parameter for the form_versions resource. + - name: data + description: | + The data for creating or updating a form version. + value: + attributes: + data_definition: + description: "{{ description }}" + properties: "{{ properties }}" + required: + - "{{ required }}" + title: "{{ title }}" + type: "{{ type }}" + state: "{{ state }}" + ui_definition: + ui:order: + - "{{ ui:order }}" + ui:theme: + primaryColor: "{{ primaryColor }}" + upsert_params: + etag: "{{ etag }}" + insert_only: {{ insert_only }} + match_policy: "{{ match_policy }}" + type: "{{ type }}" +`} + + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Upsert the latest form version and publish it in a single atomic transaction. + +```sql +EXEC datadog.service_management.form_versions.upsert_and_publish_form_version +@form_id='{{ form_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/service_management/forms/index.md b/website/docs/services/service_management/forms/index.md new file mode 100644 index 0000000..e70cec5 --- /dev/null +++ b/website/docs/services/service_management/forms/index.md @@ -0,0 +1,405 @@ +--- +title: forms +hide_title: false +hide_table_of_contents: false +keywords: + - forms + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a forms resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the form. (example: 22f6006a-2302-4926-9396-d2dfcf7b0b34)
objectThe attributes of a form.
stringThe resource type for a form. (forms) (default: forms, example: forms)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the form. (example: 22f6006a-2302-4926-9396-d2dfcf7b0b34)
objectThe attributes of a form.
stringThe resource type for a form. (forms) (default: forms, example: forms)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
form_idversionGet a form definition by its ID.
Get all forms for the authenticated user's organization.
dataCreate a new form. The form is created in draft mode and must be published before it can be used. This also creates a new datastore for form responses and links it to the form.
form_id, dataUpdate a form's properties such as its name, description, or datastore configuration.
form_idDelete a form by its ID. This will also try to delete the associated datastore.
dataCreates a new form and immediately publishes its initial version. This also creates a new datastore for form responses and links it to the form.
form_id, dataClone an existing form. The clone is created in draft mode using the source form's latest version.
form_id, dataPublish a specific version of a form, making it available for submissions.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the form. (example: 22f6006a-2302-4926-9396-d2dfcf7b0b34)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe version of the form to retrieve. Use 'latest' for the most recent draft, 'published' for the last published version, or a specific version number.
+ +## `SELECT` examples + + + + +Get a form definition by its ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.forms +WHERE form_id = '{{ form_id }}' -- required +AND version = '{{ version }}' +; +``` + + + +Get all forms for the authenticated user's organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.forms +; +``` + + + + +## `INSERT` examples + + + + +Create a new form. The form is created in draft mode and must be published before it can be used. This also creates a new datastore for form responses and links it to the form. + +```sql +INSERT INTO datadog.service_management.forms ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: forms + props: + - name: data + description: | + The data for creating a form. + value: + attributes: + anonymous: {{ anonymous }} + data_definition: + description: "{{ description }}" + properties: "{{ properties }}" + required: + - "{{ required }}" + title: "{{ title }}" + type: "{{ type }}" + description: "{{ description }}" + idp_survey: {{ idp_survey }} + name: "{{ name }}" + single_response: {{ single_response }} + ui_definition: + ui:order: + - "{{ ui:order }}" + ui:theme: + primaryColor: "{{ primaryColor }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a form's properties such as its name, description, or datastore configuration. + +```sql +UPDATE datadog.service_management.forms +SET +data = '{{ data }}' +WHERE +form_id = '{{ form_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a form by its ID. This will also try to delete the associated datastore. + +```sql +DELETE FROM datadog.service_management.forms +WHERE form_id = '{{ form_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Creates a new form and immediately publishes its initial version. This also creates a new datastore for form responses and links it to the form. + +```sql +EXEC datadog.service_management.forms.create_and_publish_form +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Clone an existing form. The clone is created in draft mode using the source form's latest version. + +```sql +EXEC datadog.service_management.forms.clone_form +@form_id='{{ form_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + + +Publish a specific version of a form, making it available for submissions. + +```sql +EXEC datadog.service_management.forms.publish_form +@form_id='{{ form_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/service_management/incident_ai_postmortems/index.md b/website/docs/services/service_management/incident_ai_postmortems/index.md new file mode 100644 index 0000000..d5e4e72 --- /dev/null +++ b/website/docs/services/service_management/incident_ai_postmortems/index.md @@ -0,0 +1,124 @@ +--- +title: incident_ai_postmortems +hide_title: false +hide_table_of_contents: false +keywords: + - incident_ai_postmortems + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_ai_postmortems resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_idGenerate an AI postmortem for an incident.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Generate an AI postmortem for an incident. + +```sql +INSERT INTO datadog.service_management.incident_ai_postmortems ( +incident_id +) +SELECT +'{{ incident_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_ai_postmortems + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_ai_postmortems resource. +`} + + + diff --git a/website/docs/services/service_management/incident_attachment_postmortems/index.md b/website/docs/services/service_management/incident_attachment_postmortems/index.md new file mode 100644 index 0000000..e809b60 --- /dev/null +++ b/website/docs/services/service_management/incident_attachment_postmortems/index.md @@ -0,0 +1,142 @@ +--- +title: incident_attachment_postmortems +hide_title: false +hide_table_of_contents: false +keywords: + - incident_attachment_postmortems + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_attachment_postmortems resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, dataCreate a postmortem attachment for an incident.<br /><br />The endpoint accepts markdown for notebooks created in Confluence or Google Docs.<br />Postmortems created from notebooks need to be formatted using frontend notebook cells,<br />in addition to markdown format.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the incident
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a postmortem attachment for an incident.<br /><br />The endpoint accepts markdown for notebooks created in Confluence or Google Docs.<br />Postmortems created from notebooks need to be formatted using frontend notebook cells,<br />in addition to markdown format. + +```sql +INSERT INTO datadog.service_management.incident_attachment_postmortems ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_attachment_postmortems + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_attachment_postmortems resource. + - name: data + description: | + Postmortem attachment data + value: + attributes: + cells: + - attributes: + definition: + content: "{{ content }}" + id: "{{ id }}" + type: "{{ type }}" + content: "{{ content }}" + postmortem_template_id: "{{ postmortem_template_id }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/incident_attachments/index.md b/website/docs/services/service_management/incident_attachments/index.md index 82340cd..a8b4f2f 100644 --- a/website/docs/services/service_management/incident_attachments/index.md +++ b/website/docs/services/service_management/incident_attachments/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incident_attachments re ## Overview - +
Nameincident_attachments
Name
TypeResource
Id
@@ -51,22 +52,22 @@ The following fields are returned by `SELECT` queries: string - A unique identifier that represents the incident attachment. (example: 00000000-abcd-0001-0000-000000000000) + The unique identifier of the attachment. (example: 00000000-abcd-0002-0000-000000000000) - - The attributes object for an attachment. + object + The attachment's attributes. object - The incident attachment's relationships. + The attachment's resource relationships. string - The incident attachment resource type. (default: incident_attachments, example: incident_attachments) + The incident attachment resource type. (incident_attachments) (default: incident_attachments, example: incident_attachments) @@ -91,16 +92,30 @@ The following methods are available for this resource: - incident_id, region - include, filter[attachment_type] - Get all attachments for a given incident. + incident_id + filter[attachment_type], include + List incident attachments. + + + + + incident_id + include + Create an incident attachment. - + - incident_id, region, data__data + incident_id, attachment_id include - The bulk update endpoint for creating, updating, and deleting attachments for a given incident. + + + + + + incident_id, attachment_id + + @@ -118,25 +133,30 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# + + + string + The ID of the attachment. + string The UUID of the incident. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. - array - Specifies which types of attachments are included in the response. + string + Filter attachments by type. Supported values are `1` (`postmortem`) and `2` (`link`). - array - Specifies which types of related objects are included in the response. + string + Resource to include in the response. Supported value: `last_modified_by_user`. @@ -151,7 +171,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Get all attachments for a given incident. +List incident attachments. ```sql SELECT @@ -161,11 +181,68 @@ relationships, type FROM datadog.service_management.incident_attachments WHERE incident_id = '{{ incident_id }}' -- required -AND region = '{{ region }}' -- required -AND include = '{{ include }}' AND filter[attachment_type] = '{{ filter[attachment_type] }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an incident attachment. + +```sql +INSERT INTO datadog.service_management.incident_attachments ( +data, +incident_id, +include +) +SELECT +'{{ data }}', +'{{ incident_id }}', +'{{ include }}' +RETURNING +data, +included ; ``` + + + +{`# Description fields are for documentation purposes +- name: incident_attachments + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_attachments resource. + - name: data + description: | + Attachment data for a create request. + value: + attributes: + attachment: + documentUrl: "{{ documentUrl }}" + title: "{{ title }}" + attachment_type: "{{ attachment_type }}" + id: "{{ id }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Resource to include in the response. Supported value: \`last_modified_by_user\`. + description: Resource to include in the response. Supported value: \`last_modified_by_user\`. +`} + @@ -173,23 +250,22 @@ AND filter[attachment_type] = '{{ filter[attachment_type] }}' ## `UPDATE` examples - + -The bulk update endpoint for creating, updating, and deleting attachments for a given incident. +No description available. ```sql UPDATE datadog.service_management.incident_attachments SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE incident_id = '{{ incident_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND attachment_id = '{{ attachment_id }}' --required AND include = '{{ include}}' RETURNING data, @@ -197,3 +273,25 @@ included; ``` + + +## `DELETE` examples + + + + +No description available. + +```sql +DELETE FROM datadog.service_management.incident_attachments +WHERE incident_id = '{{ incident_id }}' --required +AND attachment_id = '{{ attachment_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_case_pages/index.md b/website/docs/services/service_management/incident_case_pages/index.md new file mode 100644 index 0000000..fdba01f --- /dev/null +++ b/website/docs/services/service_management/incident_case_pages/index.md @@ -0,0 +1,145 @@ +--- +title: incident_case_pages +hide_title: false +hide_table_of_contents: false +keywords: + - incident_case_pages + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_case_pages resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, dataCreate a page from an incident using the Cases service.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a page from an incident using the Cases service. + +```sql +INSERT INTO datadog.service_management.incident_case_pages ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_case_pages + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_case_pages resource. + - name: data + description: | + Page data in a create request. + value: + attributes: + description: "{{ description }}" + incident_public_id: "{{ incident_public_id }}" + role: + id: "{{ id }}" + type: "{{ type }}" + services: + - "{{ services }}" + tags: + - "{{ tags }}" + target: + identifier: "{{ identifier }}" + type: "{{ type }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/incident_configurations/index.md b/website/docs/services/service_management/incident_configurations/index.md new file mode 100644 index 0000000..f217c92 --- /dev/null +++ b/website/docs/services/service_management/incident_configurations/index.md @@ -0,0 +1,171 @@ +--- +title: incident_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - incident_configurations + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_configurations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, dataCreate a configuration for an incident.
incident_id, dataUpdate a configuration for an incident.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a configuration for an incident. + +```sql +INSERT INTO datadog.service_management.incident_configurations ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_configurations + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_configurations resource. + - name: data + description: | + Incident configuration data in a create request. + value: + attributes: + execute_integrations: {{ execute_integrations }} + execute_notification_rules: {{ execute_notification_rules }} + include_in_analytics: {{ include_in_analytics }} + include_in_search: {{ include_in_search }} + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a configuration for an incident. + +```sql +UPDATE datadog.service_management.incident_configurations +SET +data = '{{ data }}' +WHERE +incident_id = '{{ incident_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/service_management/incident_global_incident_handles/index.md b/website/docs/services/service_management/incident_global_incident_handles/index.md new file mode 100644 index 0000000..204bd3e --- /dev/null +++ b/website/docs/services/service_management/incident_global_incident_handles/index.md @@ -0,0 +1,281 @@ +--- +title: incident_global_incident_handles +hide_title: false +hide_table_of_contents: false +keywords: + - incident_global_incident_handles + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_global_incident_handles resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the incident handle (example: 12ceee6d-a7c0-4407-bc54-30e54140d7f0)
objectIncident handle attributes for responses
objectRelationships associated with an incident handle response, including linked users and incident type.
stringIncident handle resource type (incidents_handles) (example: incidents_handles)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
includeRetrieve a list of global incident handles.
dataincludeCreate a new global incident handle.
dataincludeUpdate an existing global incident handle.
Delete a global incident handle.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated list of related resources to include in the response
+ +## `SELECT` examples + + + + +Retrieve a list of global incident handles. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_global_incident_handles +WHERE include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new global incident handle. + +```sql +INSERT INTO datadog.service_management.incident_global_incident_handles ( +data, +include +) +SELECT +'{{ data }}' /* required */, +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_global_incident_handles + props: + - name: data + description: | + Data object representing an incident handle in a create or update request. + value: + attributes: + fields: + severity: + - "{{ severity }}" + name: "{{ name }}" + id: "{{ id }}" + relationships: + commander_user: + data: + id: "{{ id }}" + type: "{{ type }}" + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of related resources to include in the response + description: Comma-separated list of related resources to include in the response +`} + + + + + +## `REPLACE` examples + + + + +Update an existing global incident handle. + +```sql +REPLACE datadog.service_management.incident_global_incident_handles +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a global incident handle. + +```sql +DELETE FROM datadog.service_management.incident_global_incident_handles +; +``` + + diff --git a/website/docs/services/service_management/incident_global_settings/index.md b/website/docs/services/service_management/incident_global_settings/index.md new file mode 100644 index 0000000..e565794 --- /dev/null +++ b/website/docs/services/service_management/incident_global_settings/index.md @@ -0,0 +1,171 @@ +--- +title: incident_global_settings +hide_title: false +hide_table_of_contents: false +keywords: + - incident_global_settings + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_global_settings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier for the global incident settings (example: f8b9a915-ed85-48b4-9071-ceba567a3db5)
objectGlobal incident settings attributes
stringGlobal incident settings resource type (incidents_global_settings) (example: incidents_global_settings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve global incident settings for the organization.
dataUpdate global incident settings for the organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve global incident settings for the organization. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.incident_global_settings +; +``` + + + + +## `UPDATE` examples + + + + +Update global incident settings for the organization. + +```sql +UPDATE datadog.service_management.incident_global_settings +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/service_management/incident_google_chat_configurations/index.md b/website/docs/services/service_management/incident_google_chat_configurations/index.md new file mode 100644 index 0000000..e341132 --- /dev/null +++ b/website/docs/services/service_management/incident_google_chat_configurations/index.md @@ -0,0 +1,171 @@ +--- +title: incident_google_chat_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - incident_google_chat_configurations + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_google_chat_configurations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCreate a Google Chat configuration for incidents.
id, dataUpdate a Google Chat configuration for incidents.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the Google Chat configuration.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a Google Chat configuration for incidents. + +```sql +INSERT INTO datadog.service_management.incident_google_chat_configurations ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_google_chat_configurations + props: + - name: data + description: | + Google Chat configuration data in a create request. + value: + attributes: + domain_id: "{{ domain_id }}" + space_name_template: "{{ space_name_template }}" + space_target_audience_id: "{{ space_target_audience_id }}" + space_time_zone: "{{ space_time_zone }}" + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a Google Chat configuration for incidents. + +```sql +UPDATE datadog.service_management.incident_google_chat_configurations +SET +data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/service_management/incident_google_meet_configurations/index.md b/website/docs/services/service_management/incident_google_meet_configurations/index.md new file mode 100644 index 0000000..8fb88c5 --- /dev/null +++ b/website/docs/services/service_management/incident_google_meet_configurations/index.md @@ -0,0 +1,169 @@ +--- +title: incident_google_meet_configurations +hide_title: false +hide_table_of_contents: false +keywords: + - incident_google_meet_configurations + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_google_meet_configurations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataCreate a Google Meet configuration for incidents.
id, dataUpdate a Google Meet configuration for incidents.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the Google Meet configuration.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a Google Meet configuration for incidents. + +```sql +INSERT INTO datadog.service_management.incident_google_meet_configurations ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_google_meet_configurations + props: + - name: data + description: | + Google Meet configuration data in a create request. + value: + attributes: + allow_manual_meeting_creation: {{ allow_manual_meeting_creation }} + auto_summarize: {{ auto_summarize }} + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a Google Meet configuration for incidents. + +```sql +UPDATE datadog.service_management.incident_google_meet_configurations +SET +data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/service_management/incident_impact_fields/index.md b/website/docs/services/service_management/incident_impact_fields/index.md new file mode 100644 index 0000000..2b78900 --- /dev/null +++ b/website/docs/services/service_management/incident_impact_fields/index.md @@ -0,0 +1,274 @@ +--- +title: incident_impact_fields +hide_title: false +hide_table_of_contents: false +keywords: + - incident_impact_fields + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_impact_fields resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The impact field identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an impact field in a response.
objectRelationships for an impact field.
stringImpact field resource type. (impact_fields) (example: impact_fields)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List all impact fields for incidents.
dataCreate an impact field for incidents.
field_id, dataUpdate an impact field for incidents.
field_idDelete an impact field for incidents.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the impact field.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all impact fields for incidents. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_impact_fields +; +``` + + + + +## `INSERT` examples + + + + +Create an impact field for incidents. + +```sql +INSERT INTO datadog.service_management.incident_impact_fields ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_impact_fields + props: + - name: data + description: | + Impact field data in a create request. + value: + attributes: + display_name: "{{ display_name }}" + field_choices: + - description: "{{ description }}" + display_name: "{{ display_name }}" + value: "{{ value }}" + field_type: "{{ field_type }}" + name: "{{ name }}" + tag_key: "{{ tag_key }}" + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update an impact field for incidents. + +```sql +REPLACE datadog.service_management.incident_impact_fields +SET +data = '{{ data }}' +WHERE +field_id = '{{ field_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an impact field for incidents. + +```sql +DELETE FROM datadog.service_management.incident_impact_fields +WHERE field_id = '{{ field_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_impacts/index.md b/website/docs/services/service_management/incident_impacts/index.md new file mode 100644 index 0000000..5d08605 --- /dev/null +++ b/website/docs/services/service_management/incident_impacts/index.md @@ -0,0 +1,291 @@ +--- +title: incident_impacts +hide_title: false +hide_table_of_contents: false +keywords: + - incident_impacts + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_impacts resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe incident impact's ID. (example: 00000000-0000-0000-1234-000000000000)
objectThe incident impact's attributes.
objectThe incident impact's resource relationships.
stringIncident impact resource type. (incident_impacts) (default: incident_impacts, example: incident_impacts)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_idincludeGet all impacts for an incident.
incident_id, dataincludeCreate an impact for an incident.
incident_id, impact_id, dataincludeUpdate an incident impact.
incident_id, impact_idDelete an incident impact.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident impact.
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
arraySpecifies which related resources should be included in the response.
+ +## `SELECT` examples + + + + +Get all impacts for an incident. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_impacts +WHERE incident_id = '{{ incident_id }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an impact for an incident. + +```sql +INSERT INTO datadog.service_management.incident_impacts ( +data, +incident_id, +include +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_impacts + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_impacts resource. + - name: data + description: | + Incident impact data for a create request. + value: + attributes: + description: "{{ description }}" + end_at: "{{ end_at }}" + fields: "{{ fields }}" + start_at: "{{ start_at }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Specifies which related resources should be included in the response. + description: Specifies which related resources should be included in the response. +`} + + + + + +## `UPDATE` examples + + + + +Update an incident impact. + +```sql +UPDATE datadog.service_management.incident_impacts +SET +data = '{{ data }}' +WHERE +incident_id = '{{ incident_id }}' --required +AND impact_id = '{{ impact_id }}' --required +AND data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an incident impact. + +```sql +DELETE FROM datadog.service_management.incident_impacts +WHERE incident_id = '{{ incident_id }}' --required +AND impact_id = '{{ impact_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_integrations/index.md b/website/docs/services/service_management/incident_integrations/index.md index 17fbd83..aecd9c3 100644 --- a/website/docs/services/service_management/incident_integrations/index.md +++ b/website/docs/services/service_management/incident_integrations/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incident_integrations r ## Overview - +
Nameincident_integrations
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Integration metadata resource type. (default: incident_integrations, example: incident_integrations) + Integration metadata resource type. (incident_integrations) (default: incident_integrations, example: incident_integrations) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Integration metadata resource type. (default: incident_integrations, example: incident_integrations) + Integration metadata resource type. (incident_integrations) (default: incident_integrations, example: incident_integrations) @@ -126,35 +127,35 @@ The following methods are available for this resource: - incident_id, integration_metadata_id, region + incident_id, integration_metadata_id Get incident integration metadata details. - incident_id, region + incident_id Get all integration metadata for an incident. - incident_id, region, data__data + incident_id, data Create an incident integration metadata. - incident_id, integration_metadata_id, region, data__data + incident_id, integration_metadata_id, data Update an existing incident integration metadata. - incident_id, integration_metadata_id, region + incident_id, integration_metadata_id Delete an incident integration metadata. @@ -184,10 +185,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The UUID of the incident integration metadata. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -214,7 +215,6 @@ type FROM datadog.service_management.incident_integrations WHERE incident_id = '{{ incident_id }}' -- required AND integration_metadata_id = '{{ integration_metadata_id }}' -- required -AND region = '{{ region }}' -- required ; ```
@@ -230,7 +230,6 @@ relationships, type FROM datadog.service_management.incident_integrations WHERE incident_id = '{{ incident_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -252,14 +251,12 @@ Create an incident integration metadata. ```sql INSERT INTO datadog.service_management.incident_integrations ( -data__data, -incident_id, -region +data, +incident_id ) SELECT '{{ data }}' /* required */, -'{{ incident_id }}', -'{{ region }}' +'{{ incident_id }}' RETURNING data, included @@ -268,21 +265,42 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: incident_integrations props: - name: incident_id - value: string - description: Required parameter for the incident_integrations resource. - - name: region - value: string + value: "{{ incident_id }}" description: Required parameter for the incident_integrations resource. - name: data - value: object description: | Incident integration metadata data for a create request. -``` + value: + attributes: + created: "{{ created }}" + incident_id: "{{ incident_id }}" + integration_type: {{ integration_type }} + metadata: + channels: + - channel_id: "{{ channel_id }}" + channel_name: "{{ channel_name }}" + redirect_url: "{{ redirect_url }}" + team_id: "{{ team_id }}" + issues: + - account: "{{ account }}" + issue_key: "{{ issue_key }}" + issuetype_id: "{{ issuetype_id }}" + project_key: "{{ project_key }}" + redirect_url: "{{ redirect_url }}" + teams: + - ms_channel_id: "{{ ms_channel_id }}" + ms_channel_name: "{{ ms_channel_name }}" + ms_tenant_id: "{{ ms_tenant_id }}" + redirect_url: "{{ redirect_url }}" + modified: "{{ modified }}" + status: {{ status }} + type: "{{ type }}" +`} + @@ -302,12 +320,11 @@ Update an existing incident integration metadata. ```sql UPDATE datadog.service_management.incident_integrations SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE incident_id = '{{ incident_id }}' --required AND integration_metadata_id = '{{ integration_metadata_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -332,7 +349,6 @@ Delete an incident integration metadata. DELETE FROM datadog.service_management.incident_integrations WHERE incident_id = '{{ incident_id }}' --required AND integration_metadata_id = '{{ integration_metadata_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/incident_notification_rules/index.md b/website/docs/services/service_management/incident_notification_rules/index.md index b350f12..8169a82 100644 --- a/website/docs/services/service_management/incident_notification_rules/index.md +++ b/website/docs/services/service_management/incident_notification_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incident_notification_rules -Nameincident_notification_rules +Name TypeResource Id @@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Notification rules resource type. (example: incident_notification_rules) + Notification rules resource type. (incident_notification_rules) (example: incident_notification_rules) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Notification rules resource type. (example: incident_notification_rules) + Notification rules resource type. (incident_notification_rules) (example: incident_notification_rules) @@ -126,35 +127,35 @@ The following methods are available for this resource: - id, region + id include Retrieves a specific notification rule by its ID. - region + include Lists all notification rules for the organization. Optionally filter by incident type. - region, data__data + data Creates a new notification rule. - id, region, data__data + id, data include Updates an existing notification rule with a complete replacement. - id, region + id include Deletes a notification rule by its ID. @@ -179,15 +180,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string (uuid) The ID of the notification rule. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. string - Comma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template` + Comma-separated list of resources to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type`, `notification_template` @@ -213,7 +214,6 @@ relationships, type FROM datadog.service_management.incident_notification_rules WHERE id = '{{ id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -229,8 +229,7 @@ attributes, relationships, type FROM datadog.service_management.incident_notification_rules -WHERE region = '{{ region }}' -- required -AND include = '{{ include }}' +WHERE include = '{{ include }}' ; ``` @@ -252,12 +251,10 @@ Creates a new notification rule. ```sql INSERT INTO datadog.service_management.incident_notification_rules ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -266,18 +263,36 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: incident_notification_rules props: - - name: region - value: string - description: Required parameter for the incident_notification_rules resource. - name: data - value: object description: | Notification rule data for a create request. -``` + value: + attributes: + conditions: + - field: "{{ field }}" + values: "{{ values }}" + enabled: {{ enabled }} + handles: + - "{{ handles }}" + renotify_on: + - "{{ renotify_on }}" + trigger: "{{ trigger }}" + visibility: "{{ visibility }}" + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + notification_template: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -297,11 +312,10 @@ Updates an existing notification rule with a complete replacement. ```sql REPLACE datadog.service_management.incident_notification_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND include = '{{ include}}' RETURNING data, @@ -326,7 +340,6 @@ Deletes a notification rule by its ID. ```sql DELETE FROM datadog.service_management.incident_notification_rules WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required AND include = '{{ include }}' ; ``` diff --git a/website/docs/services/service_management/incident_notification_templates/index.md b/website/docs/services/service_management/incident_notification_templates/index.md index a84e828..56d1c20 100644 --- a/website/docs/services/service_management/incident_notification_templates/index.md +++ b/website/docs/services/service_management/incident_notification_templates/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incident_notification_template ## Overview - +
Nameincident_notification_templates
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Notification templates resource type. (example: notification_templates) + Notification templates resource type. (notification_templates) (example: notification_templates) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Notification templates resource type. (example: notification_templates) + Notification templates resource type. (notification_templates) (example: notification_templates) @@ -126,35 +127,35 @@ The following methods are available for this resource: - id, region + id include Retrieves a specific notification template by its ID. - region + filter[incident-type], include Lists all notification templates. Optionally filter by incident type. - region, data__data + data Creates a new notification template. - id, region, data__data + id, data include Updates an existing notification template's attributes. - id, region + id include Deletes a notification template by its ID. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string (uuid) The ID of the notification template. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -192,7 +193,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Comma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type` + Comma-separated list of relationships to include. Supported values: `created_by_user`, `last_modified_by_user`, `incident_type` @@ -218,7 +219,6 @@ relationships, type FROM datadog.service_management.incident_notification_templates WHERE id = '{{ id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -234,8 +234,7 @@ attributes, relationships, type FROM datadog.service_management.incident_notification_templates -WHERE region = '{{ region }}' -- required -AND filter[incident-type] = '{{ filter[incident-type] }}' +WHERE filter[incident-type] = '{{ filter[incident-type] }}' AND include = '{{ include }}' ; ``` @@ -258,12 +257,10 @@ Creates a new notification template. ```sql INSERT INTO datadog.service_management.incident_notification_templates ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -272,18 +269,26 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: incident_notification_templates props: - - name: region - value: string - description: Required parameter for the incident_notification_templates resource. - name: data - value: object description: | Notification template data for a create request. -``` + value: + attributes: + category: "{{ category }}" + content: "{{ content }}" + name: "{{ name }}" + subject: "{{ subject }}" + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -303,11 +308,10 @@ Updates an existing notification template's attributes. ```sql UPDATE datadog.service_management.incident_notification_templates SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND include = '{{ include}}' RETURNING data, @@ -332,7 +336,6 @@ Deletes a notification template by its ID. ```sql DELETE FROM datadog.service_management.incident_notification_templates WHERE id = '{{ id }}' --required -AND region = '{{ region }}' --required AND include = '{{ include }}' ; ``` diff --git a/website/docs/services/service_management/incident_pages/index.md b/website/docs/services/service_management/incident_pages/index.md new file mode 100644 index 0000000..a63d18d --- /dev/null +++ b/website/docs/services/service_management/incident_pages/index.md @@ -0,0 +1,178 @@ +--- +title: incident_pages +hide_title: false +hide_table_of_contents: false +keywords: + - incident_pages + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_pages resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, dataCreate an on-call page directly from an incident.
incident_id, dataLink an existing on-call page to an incident.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create an on-call page directly from an incident. + +```sql +INSERT INTO datadog.service_management.incident_pages ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_pages + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_pages resource. + - name: data + description: | + On-call page data in a create request. + value: + attributes: + description: "{{ description }}" + role: + id: "{{ id }}" + type: "{{ type }}" + services: + - "{{ services }}" + tags: + - "{{ tags }}" + target: + identifier: "{{ identifier }}" + type: "{{ type }}" + title: "{{ title }}" + type: "{{ type }}" +`} + + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Link an existing on-call page to an incident. + +```sql +EXEC datadog.service_management.incident_pages.link_page_to_incident +@incident_id='{{ incident_id }}' --required, +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/service_management/incident_postmortem_templates/index.md b/website/docs/services/service_management/incident_postmortem_templates/index.md new file mode 100644 index 0000000..be5b42a --- /dev/null +++ b/website/docs/services/service_management/incident_postmortem_templates/index.md @@ -0,0 +1,346 @@ +--- +title: incident_postmortem_templates +hide_title: false +hide_table_of_contents: false +keywords: + - incident_postmortem_templates + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_postmortem_templates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the template. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a postmortem template returned in a response.
objectRelationships of a postmortem template returned in a response.
stringPostmortem template resource type. (postmortem_templates, postmortem_template) (example: postmortem_templates)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the template. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a postmortem template returned in a response.
objectRelationships of a postmortem template returned in a response.
stringPostmortem template resource type. (postmortem_templates, postmortem_template) (example: postmortem_templates)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
template_idRetrieve details of a specific postmortem template.
filter[incident-type], sortRetrieve a list of all postmortem templates for incidents.
dataCreate a new postmortem template for incidents.
template_id, dataUpdate an existing postmortem template.
template_idDelete a postmortem template.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the postmortem template. (example: 00000000-0000-0000-0000-000000000000)
string (uuid)Filter postmortem templates by the associated incident type ID.
stringThe attribute to sort results by. Prefix with `-` for descending order.
+ +## `SELECT` examples + + + + +Retrieve details of a specific postmortem template. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_postmortem_templates +WHERE template_id = '{{ template_id }}' -- required +; +``` + + + +Retrieve a list of all postmortem templates for incidents. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_postmortem_templates +WHERE filter[incident-type] = '{{ filter[incident-type] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new postmortem template for incidents. + +```sql +INSERT INTO datadog.service_management.incident_postmortem_templates ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_postmortem_templates + props: + - name: data + description: | + Data object for creating or updating a postmortem template. + value: + attributes: + confluence_postmortem_settings: + account_id: "{{ account_id }}" + parent_id: "{{ parent_id }}" + space_id: "{{ space_id }}" + content: "{{ content }}" + google_docs_postmortem_settings: + account_id: "{{ account_id }}" + parent_folder_id: "{{ parent_folder_id }}" + is_default: "{{ is_default }}" + location: "{{ location }}" + name: "{{ name }}" + id: "{{ id }}" + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an existing postmortem template. + +```sql +UPDATE datadog.service_management.incident_postmortem_templates +SET +data = '{{ data }}' +WHERE +template_id = '{{ template_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete a postmortem template. + +```sql +DELETE FROM datadog.service_management.incident_postmortem_templates +WHERE template_id = '{{ template_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_responders/index.md b/website/docs/services/service_management/incident_responders/index.md new file mode 100644 index 0000000..4a31ea4 --- /dev/null +++ b/website/docs/services/service_management/incident_responders/index.md @@ -0,0 +1,302 @@ +--- +title: incident_responders +hide_title: false +hide_table_of_contents: false +keywords: + - incident_responders + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_responders resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The responder identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident responder in a response.
objectRelationships for an incident responder.
stringIncident responder resource type. (incident_responders) (example: incident_responders)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The responder identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident responder in a response.
objectRelationships for an incident responder.
stringIncident responder resource type. (incident_responders) (example: incident_responders)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, responder_idGet a single responder for an incident.
incident_idList all responders for an incident.
incident_id, dataAdd a responder to an incident.
incident_id, responder_idRemove a responder from an incident.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident.
string (uuid)The UUID of the incident responder.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Get a single responder for an incident. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_responders +WHERE incident_id = '{{ incident_id }}' -- required +AND responder_id = '{{ responder_id }}' -- required +; +``` + + + +List all responders for an incident. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_responders +WHERE incident_id = '{{ incident_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Add a responder to an incident. + +```sql +INSERT INTO datadog.service_management.incident_responders ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_responders + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_responders resource. + - name: data + description: | + Incident responder data in a create request. + value: + relationships: + user: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Remove a responder from an incident. + +```sql +DELETE FROM datadog.service_management.incident_responders +WHERE incident_id = '{{ incident_id }}' --required +AND responder_id = '{{ responder_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_rules/index.md b/website/docs/services/service_management/incident_rules/index.md new file mode 100644 index 0000000..19271f6 --- /dev/null +++ b/website/docs/services/service_management/incident_rules/index.md @@ -0,0 +1,337 @@ +--- +title: incident_rules +hide_title: false +hide_table_of_contents: false +keywords: + - incident_rules + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The rule identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident rule in a response.
stringIncident rule response resource type. (incidents_rules) (example: incidents_rules)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The rule identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident rule in a response.
stringIncident rule response resource type. (incidents_rules) (example: incidents_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
rule_idGet a single incident rule by ID.
filter[task_id], filter[trigger], incident_type_uuidList all incident rules.
dataCreate an incident rule.
rule_id, dataUpdate an incident rule.
rule_idDelete an incident rule.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the incident rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter rules by task ID.
stringFilter rules by trigger.
string (uuid)Filter rules by incident type UUID. (wire: incidentTypeUUID)
+ +## `SELECT` examples + + + + +Get a single incident rule by ID. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.incident_rules +WHERE rule_id = '{{ rule_id }}' -- required +; +``` + + + +List all incident rules. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.incident_rules +WHERE filter[task_id] = '{{ filter[task_id] }}' +AND filter[trigger] = '{{ filter[trigger] }}' +AND incident_type_uuid = '{{ incident_type_uuid }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an incident rule. + +```sql +INSERT INTO datadog.service_management.incident_rules ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_rules + props: + - name: data + description: | + Incident rule data in a create request. + value: + attributes: + condition: + normalized_query: "{{ normalized_query }}" + raw_query: "{{ raw_query }}" + condition_table_type: {{ condition_table_type }} + conditions: + - field: "{{ field }}" + values: "{{ values }}" + enabled: {{ enabled }} + execution_type: {{ execution_type }} + incident_type_uuid: "{{ incident_type_uuid }}" + match_any_condition: {{ match_any_condition }} + task_id: "{{ task_id }}" + task_payload: "{{ task_payload }}" + trigger: "{{ trigger }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update an incident rule. + +```sql +UPDATE datadog.service_management.incident_rules +SET +data = '{{ data }}' +WHERE +rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an incident rule. + +```sql +DELETE FROM datadog.service_management.incident_rules +WHERE rule_id = '{{ rule_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_servicenow_records/index.md b/website/docs/services/service_management/incident_servicenow_records/index.md new file mode 100644 index 0000000..a3f2c5d --- /dev/null +++ b/website/docs/services/service_management/incident_servicenow_records/index.md @@ -0,0 +1,137 @@ +--- +title: incident_servicenow_records +hide_title: false +hide_table_of_contents: false +keywords: + - incident_servicenow_records + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_servicenow_records resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_id, dataCreate a ServiceNow record for an incident.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Create a ServiceNow record for an incident. + +```sql +INSERT INTO datadog.service_management.incident_servicenow_records ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_servicenow_records + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_servicenow_records resource. + - name: data + description: | + ServiceNow record data in a create request. + value: + attributes: + assignment_group: "{{ assignment_group }}" + configuration_item_mapping: "{{ configuration_item_mapping }}" + instance_name: "{{ instance_name }}" + record_id: "{{ record_id }}" + type: "{{ type }}" +`} + + + diff --git a/website/docs/services/service_management/incident_services/index.md b/website/docs/services/service_management/incident_services/index.md deleted file mode 100644 index 2d6715d..0000000 --- a/website/docs/services/service_management/incident_services/index.md +++ /dev/null @@ -1,350 +0,0 @@ ---- -title: incident_services -hide_title: false -hide_table_of_contents: false -keywords: - - incident_services - - service_management - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists an incident_services resource. - -## Overview - - - - -
Nameincident_services
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe incident service's ID. (example: 00000000-0000-0000-0000-000000000000)
objectThe incident service's attributes from a response.
objectThe incident service's relationships.
stringIncident service resource type. (default: services, example: services)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe incident service's ID. (example: 00000000-0000-0000-0000-000000000000)
objectThe incident service's attributes from a response.
objectThe incident service's relationships.
stringIncident service resource type. (default: services, example: services)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
service_id, regionincludeGet details of an incident service. If the `include[users]` query parameter is provided,
the included attribute will contain the users related to these incident services.
regioninclude, page[size], page[offset], filterGet all incident services uploaded for the requesting user's organization. If the `include[users]` query parameter is provided, the included attribute will contain the users related to these incident services.
region, data__dataCreates a new incident service.
service_id, region, data__dataUpdates an existing incident service. Only provide the attributes which should be updated as this request is a partial update.
service_id, regionDeletes an existing incident service.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
stringThe ID of the incident service.
stringA search query that filters services by name.
stringSpecifies which types of related objects should be included in the response.
integer (int64)Specific offset to use as the beginning of the returned page.
integer (int64)Size for a given page. The maximum allowed value is 100.
- -## `SELECT` examples - - - - -Get details of an incident service. If the `include[users]` query parameter is provided,
the included attribute will contain the users related to these incident services. - -```sql -SELECT -id, -attributes, -relationships, -type -FROM datadog.service_management.incident_services -WHERE service_id = '{{ service_id }}' -- required -AND region = '{{ region }}' -- required -AND include = '{{ include }}' -; -``` -
- - -Get all incident services uploaded for the requesting user's organization. If the `include[users]` query parameter is provided, the included attribute will contain the users related to these incident services. - -```sql -SELECT -id, -attributes, -relationships, -type -FROM datadog.service_management.incident_services -WHERE region = '{{ region }}' -- required -AND include = '{{ include }}' -AND page[size] = '{{ page[size] }}' -AND page[offset] = '{{ page[offset] }}' -AND filter = '{{ filter }}' -; -``` - -
- - -## `INSERT` examples - - - - -Creates a new incident service. - -```sql -INSERT INTO datadog.service_management.incident_services ( -data__data, -region -) -SELECT -'{{ data }}' /* required */, -'{{ region }}' -RETURNING -data, -included -; -``` - - - -```yaml -# Description fields are for documentation purposes -- name: incident_services - props: - - name: region - value: string - description: Required parameter for the incident_services resource. - - name: data - value: object - description: | - Incident Service payload for create requests. -``` - - - - -## `UPDATE` examples - - - - -Updates an existing incident service. Only provide the attributes which should be updated as this request is a partial update. - -```sql -UPDATE datadog.service_management.incident_services -SET -data__data = '{{ data }}' -WHERE -service_id = '{{ service_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required -RETURNING -data, -included; -``` - - - - -## `DELETE` examples - - - - -Deletes an existing incident service. - -```sql -DELETE FROM datadog.service_management.incident_services -WHERE service_id = '{{ service_id }}' --required -AND region = '{{ region }}' --required -; -``` - - diff --git a/website/docs/services/service_management/incident_teams/index.md b/website/docs/services/service_management/incident_teams/index.md deleted file mode 100644 index fc95456..0000000 --- a/website/docs/services/service_management/incident_teams/index.md +++ /dev/null @@ -1,350 +0,0 @@ ---- -title: incident_teams -hide_title: false -hide_table_of_contents: false -keywords: - - incident_teams - - service_management - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists an incident_teams resource. - -## Overview - - - - -
Nameincident_teams
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe incident team's ID. (example: 00000000-7ea3-0000-000a-000000000000)
objectThe incident team's attributes from a response.
objectThe incident team's relationships.
stringIncident Team resource type. (default: teams, example: teams)
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe incident team's ID. (example: 00000000-7ea3-0000-000a-000000000000)
objectThe incident team's attributes from a response.
objectThe incident team's relationships.
stringIncident Team resource type. (default: teams, example: teams)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
team_id, regionincludeGet details of an incident team. If the `include[users]` query parameter is provided,
the included attribute will contain the users related to these incident teams.
regioninclude, page[size], page[offset], filterGet all incident teams for the requesting user's organization. If the `include[users]` query parameter is provided, the included attribute will contain the users related to these incident teams.
region, data__dataCreates a new incident team.
team_id, region, data__dataUpdates an existing incident team. Only provide the attributes which should be updated as this request is a partial update.
team_id, regionDeletes an existing incident team.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
stringThe ID of the incident team.
stringA search query that filters teams by name.
stringSpecifies which types of related objects should be included in the response.
integer (int64)Specific offset to use as the beginning of the returned page.
integer (int64)Size for a given page. The maximum allowed value is 100.
- -## `SELECT` examples - - - - -Get details of an incident team. If the `include[users]` query parameter is provided,
the included attribute will contain the users related to these incident teams. - -```sql -SELECT -id, -attributes, -relationships, -type -FROM datadog.service_management.incident_teams -WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required -AND include = '{{ include }}' -; -``` -
- - -Get all incident teams for the requesting user's organization. If the `include[users]` query parameter is provided, the included attribute will contain the users related to these incident teams. - -```sql -SELECT -id, -attributes, -relationships, -type -FROM datadog.service_management.incident_teams -WHERE region = '{{ region }}' -- required -AND include = '{{ include }}' -AND page[size] = '{{ page[size] }}' -AND page[offset] = '{{ page[offset] }}' -AND filter = '{{ filter }}' -; -``` - -
- - -## `INSERT` examples - - - - -Creates a new incident team. - -```sql -INSERT INTO datadog.service_management.incident_teams ( -data__data, -region -) -SELECT -'{{ data }}' /* required */, -'{{ region }}' -RETURNING -data, -included -; -``` - - - -```yaml -# Description fields are for documentation purposes -- name: incident_teams - props: - - name: region - value: string - description: Required parameter for the incident_teams resource. - - name: data - value: object - description: | - Incident Team data for a create request. -``` - - - - -## `UPDATE` examples - - - - -Updates an existing incident team. Only provide the attributes which should be updated as this request is a partial update. - -```sql -UPDATE datadog.service_management.incident_teams -SET -data__data = '{{ data }}' -WHERE -team_id = '{{ team_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required -RETURNING -data, -included; -``` - - - - -## `DELETE` examples - - - - -Deletes an existing incident team. - -```sql -DELETE FROM datadog.service_management.incident_teams -WHERE team_id = '{{ team_id }}' --required -AND region = '{{ region }}' --required -; -``` - - diff --git a/website/docs/services/service_management/incident_timestamp_overrides/index.md b/website/docs/services/service_management/incident_timestamp_overrides/index.md new file mode 100644 index 0000000..591e3ab --- /dev/null +++ b/website/docs/services/service_management/incident_timestamp_overrides/index.md @@ -0,0 +1,276 @@ +--- +title: incident_timestamp_overrides +hide_title: false +hide_table_of_contents: false +keywords: + - incident_timestamp_overrides + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_timestamp_overrides resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The timestamp override identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of a timestamp override in a response.
objectRelationships for a timestamp override.
stringIncident timestamp override resource type. (incidents_timestamp_overrides) (example: incidents_timestamp_overrides)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_idList all timestamp overrides for an incident.
incident_id, dataCreate a timestamp override for an incident.
incident_id, id, dataUpdate a timestamp override for an incident.
incident_id, idDelete a timestamp override for an incident.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the timestamp override.
stringThe UUID of the incident.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +List all timestamp overrides for an incident. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_timestamp_overrides +WHERE incident_id = '{{ incident_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a timestamp override for an incident. + +```sql +INSERT INTO datadog.service_management.incident_timestamp_overrides ( +data, +incident_id +) +SELECT +'{{ data }}' /* required */, +'{{ incident_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_timestamp_overrides + props: + - name: incident_id + value: "{{ incident_id }}" + description: Required parameter for the incident_timestamp_overrides resource. + - name: data + description: | + Timestamp override data in a create request. + value: + attributes: + timestamp_type: "{{ timestamp_type }}" + timestamp_value: "{{ timestamp_value }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a timestamp override for an incident. + +```sql +UPDATE datadog.service_management.incident_timestamp_overrides +SET +data = '{{ data }}' +WHERE +incident_id = '{{ incident_id }}' --required +AND id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a timestamp override for an incident. + +```sql +DELETE FROM datadog.service_management.incident_timestamp_overrides +WHERE incident_id = '{{ incident_id }}' --required +AND id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_todos/index.md b/website/docs/services/service_management/incident_todos/index.md index cf3041c..4b261d1 100644 --- a/website/docs/services/service_management/incident_todos/index.md +++ b/website/docs/services/service_management/incident_todos/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incident_todos resource ## Overview - +
Nameincident_todos
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Todo resource type. (default: incident_todos, example: incident_todos) + Todo resource type. (incident_todos) (default: incident_todos, example: incident_todos) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Todo resource type. (default: incident_todos, example: incident_todos) + Todo resource type. (incident_todos) (default: incident_todos, example: incident_todos) @@ -126,35 +127,35 @@ The following methods are available for this resource: - incident_id, todo_id, region + incident_id, todo_id Get incident todo details. - incident_id, region + incident_id Get all todos for an incident. - incident_id, region, data__data + incident_id, data Create an incident todo. - incident_id, todo_id, region, data__data + incident_id, todo_id, data Update an incident todo. - incident_id, todo_id, region + incident_id, todo_id Delete an incident todo. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The UUID of the incident. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -214,7 +215,6 @@ type FROM datadog.service_management.incident_todos WHERE incident_id = '{{ incident_id }}' -- required AND todo_id = '{{ todo_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -230,7 +230,6 @@ relationships, type FROM datadog.service_management.incident_todos WHERE incident_id = '{{ incident_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -252,14 +251,12 @@ Create an incident todo. ```sql INSERT INTO datadog.service_management.incident_todos ( -data__data, -incident_id, -region +data, +incident_id ) SELECT '{{ data }}' /* required */, -'{{ incident_id }}', -'{{ region }}' +'{{ incident_id }}' RETURNING data, included @@ -268,21 +265,31 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: incident_todos props: - name: incident_id - value: string - description: Required parameter for the incident_todos resource. - - name: region - value: string + value: "{{ incident_id }}" description: Required parameter for the incident_todos resource. - name: data - value: object description: | Incident todo data for a create request. -``` + value: + attributes: + assignees: + - icon: "{{ icon }}" + id: "{{ id }}" + name: "{{ name }}" + source: "{{ source }}" + completed: "{{ completed }}" + content: "{{ content }}" + created: "{{ created }}" + due_date: "{{ due_date }}" + incident_id: "{{ incident_id }}" + modified: "{{ modified }}" + type: "{{ type }}" +`} + @@ -302,12 +309,11 @@ Update an incident todo. ```sql UPDATE datadog.service_management.incident_todos SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE incident_id = '{{ incident_id }}' --required AND todo_id = '{{ todo_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data, included; @@ -332,7 +338,6 @@ Delete an incident todo. DELETE FROM datadog.service_management.incident_todos WHERE incident_id = '{{ incident_id }}' --required AND todo_id = '{{ todo_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/incident_type_org_settings/index.md b/website/docs/services/service_management/incident_type_org_settings/index.md new file mode 100644 index 0000000..3b1305e --- /dev/null +++ b/website/docs/services/service_management/incident_type_org_settings/index.md @@ -0,0 +1,233 @@ +--- +title: incident_type_org_settings +hide_title: false +hide_table_of_contents: false +keywords: + - incident_type_org_settings + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_type_org_settings resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The org settings identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident org settings resource in a response.
objectRelationships for an incident org settings resource.
stringIncident org settings resource type. (incident_org_settings) (example: incident_org_settings)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The org settings identifier. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident org settings resource in a response.
objectRelationships for an incident org settings resource.
stringIncident org settings resource type. (incident_org_settings) (example: incident_org_settings)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
incident_type_idincludeGet the org settings for a specific incident type.
page[size], page[offset], include-deleted, includeList org settings for all incident types.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the incident type.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated list of related resources to include in the response.
booleanWhether to include deleted records.
integer (int64)The offset for pagination.
integer (int64)Maximum number of results to return.
+ +## `SELECT` examples + + + + +Get the org settings for a specific incident type. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_type_org_settings +WHERE incident_type_id = '{{ incident_type_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +List org settings for all incident types. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_type_org_settings +WHERE page[size] = '{{ page[size] }}' +AND page[offset] = '{{ page[offset] }}' +AND include-deleted = '{{ include-deleted }}' +AND include = '{{ include }}' +; +``` + + diff --git a/website/docs/services/service_management/incident_types/index.md b/website/docs/services/service_management/incident_types/index.md index 2ccaf4f..1cbce8e 100644 --- a/website/docs/services/service_management/incident_types/index.md +++ b/website/docs/services/service_management/incident_types/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incident_types resource ## Overview - +
Nameincident_types
Name
TypeResource
Id
@@ -67,7 +68,7 @@ The following fields are returned by `SELECT` queries: string - Incident type resource type. (default: incident_types, example: incident_types) + Incident type resource type. (incident_types) (default: incident_types, example: incident_types) @@ -101,7 +102,7 @@ The following fields are returned by `SELECT` queries: string - Incident type resource type. (default: incident_types, example: incident_types) + Incident type resource type. (incident_types) (default: incident_types, example: incident_types) @@ -126,35 +127,35 @@ The following methods are available for this resource: - incident_type_id, region + incident_type_id Get incident type details. - region + include_deleted Get all incident types. - region, data__data + data Create an incident type. - incident_type_id, region, data__data + incident_type_id, data Update an incident type. - incident_type_id, region + incident_type_id Delete an incident type. @@ -179,10 +180,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The UUID of the incident type. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -213,7 +214,6 @@ relationships, type FROM datadog.service_management.incident_types WHERE incident_type_id = '{{ incident_type_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -228,8 +228,7 @@ attributes, relationships, type FROM datadog.service_management.incident_types -WHERE region = '{{ region }}' -- required -AND include_deleted = '{{ include_deleted }}' +WHERE include_deleted = '{{ include_deleted }}' ; ``` @@ -251,12 +250,10 @@ Create an incident type. ```sql INSERT INTO datadog.service_management.incident_types ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -264,18 +261,34 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: incident_types props: - - name: region - value: string - description: Required parameter for the incident_types resource. - name: data - value: object description: | Incident type data for a create request. -``` + value: + attributes: + configuration: + allow_incident_deletion: {{ allow_incident_deletion }} + allow_workflows: {{ allow_workflows }} + create_message: "{{ create_message }}" + editable_timestamps: {{ editable_timestamps }} + private_incidents: {{ private_incidents }} + private_incidents_by_default: {{ private_incidents_by_default }} + slug_source: "{{ slug_source }}" + test_incidents: {{ test_incidents }} + createdAt: "{{ createdAt }}" + createdBy: "{{ createdBy }}" + description: "{{ description }}" + is_default: {{ is_default }} + lastModifiedBy: "{{ lastModifiedBy }}" + modifiedAt: "{{ modifiedAt }}" + name: "{{ name }}" + prefix: "{{ prefix }}" + type: "{{ type }}" +`} + @@ -295,11 +308,10 @@ Update an incident type. ```sql UPDATE datadog.service_management.incident_types SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE incident_type_id = '{{ incident_type_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -322,7 +334,6 @@ Delete an incident type. ```sql DELETE FROM datadog.service_management.incident_types WHERE incident_type_id = '{{ incident_type_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/incident_user_defined_fields/index.md b/website/docs/services/service_management/incident_user_defined_fields/index.md new file mode 100644 index 0000000..5028442 --- /dev/null +++ b/website/docs/services/service_management/incident_user_defined_fields/index.md @@ -0,0 +1,374 @@ +--- +title: incident_user_defined_fields +hide_title: false +hide_table_of_contents: false +keywords: + - incident_user_defined_fields + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_user_defined_fields resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the user-defined field. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident user-defined field.
objectRelationships of an incident user-defined field.
stringThe incident user defined fields type. (user_defined_field) (example: user_defined_field)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the user-defined field. (example: 00000000-0000-0000-0000-000000000000)
objectAttributes of an incident user-defined field.
objectRelationships of an incident user-defined field.
stringThe incident user defined fields type. (user_defined_field) (example: user_defined_field)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
field_idincludeGet details of an incident user-defined field.
page[size], page[number], include-deleted, filter[incident-type], includeGet a list of all incident user-defined fields.
dataincludeCreate an incident user-defined field.
field_id, dataincludeUpdate an incident user-defined field.
field_idDelete an incident user-defined field.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the incident user-defined field.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter results to fields associated with the given incident type UUID.
stringComma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type".
booleanWhen true, include soft-deleted fields in the response.
integer (int64)The page number to retrieve, starting at 0.
integer (int64)The number of results to return per page. Must be between 0 and 1000.
+ +## `SELECT` examples + + + + +Get details of an incident user-defined field. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_user_defined_fields +WHERE field_id = '{{ field_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Get a list of all incident user-defined fields. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_user_defined_fields +WHERE page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND include-deleted = '{{ include-deleted }}' +AND filter[incident-type] = '{{ filter[incident-type] }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an incident user-defined field. + +```sql +INSERT INTO datadog.service_management.incident_user_defined_fields ( +data, +include +) +SELECT +'{{ data }}' /* required */, +'{{ include }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_user_defined_fields + props: + - name: data + description: | + Data for creating an incident user-defined field. + value: + attributes: + category: "{{ category }}" + collected: "{{ collected }}" + default_value: "{{ default_value }}" + display_name: "{{ display_name }}" + name: "{{ name }}" + ordinal: "{{ ordinal }}" + required: {{ required }} + tag_key: "{{ tag_key }}" + type: {{ type }} + valid_values: + - description: "{{ description }}" + display_name: "{{ display_name }}" + short_description: "{{ short_description }}" + value: "{{ value }}" + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". + description: Comma-separated list of related resources to include. Supported values are "last_modified_by_user", "created_by_user", and "incident_type". +`} + + + + + +## `UPDATE` examples + + + + +Update an incident user-defined field. + +```sql +UPDATE datadog.service_management.incident_user_defined_fields +SET +data = '{{ data }}' +WHERE +field_id = '{{ field_id }}' --required +AND data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete an incident user-defined field. + +```sql +DELETE FROM datadog.service_management.incident_user_defined_fields +WHERE field_id = '{{ field_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incident_user_defined_roles/index.md b/website/docs/services/service_management/incident_user_defined_roles/index.md new file mode 100644 index 0000000..70d3496 --- /dev/null +++ b/website/docs/services/service_management/incident_user_defined_roles/index.md @@ -0,0 +1,348 @@ +--- +title: incident_user_defined_roles +hide_title: false +hide_table_of_contents: false +keywords: + - incident_user_defined_roles + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an incident_user_defined_roles resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the user-defined role. (example: 00000000-0000-0000-0000-000000000002)
objectAttributes of an incident user-defined role.
objectRelationships of a user-defined role response.
stringIncident user-defined role resource type. (incident_user_defined_roles) (example: incident_user_defined_roles)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the user-defined role. (example: 00000000-0000-0000-0000-000000000002)
objectAttributes of an incident user-defined role.
objectRelationships of a user-defined role response.
stringIncident user-defined role resource type. (incident_user_defined_roles) (example: incident_user_defined_roles)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
role_idincludeRetrieve a single user-defined role for incidents.
filter[incident-type], includeList all user-defined roles for incidents.
dataincludeCreate a new user-defined role for incidents.
role_id, dataincludeUpdate an existing user-defined role for incidents.
role_idDelete an existing user-defined role for incidents.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The UUID of the incident user-defined role.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)Filter roles by incident type UUID.
stringComma-separated list of related resources to include in the response.
+ +## `SELECT` examples + + + + +Retrieve a single user-defined role for incidents. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_user_defined_roles +WHERE role_id = '{{ role_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +List all user-defined roles for incidents. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.incident_user_defined_roles +WHERE filter[incident-type] = '{{ filter[incident-type] }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new user-defined role for incidents. + +```sql +INSERT INTO datadog.service_management.incident_user_defined_roles ( +data, +include +) +SELECT +'{{ data }}' /* required */, +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: incident_user_defined_roles + props: + - name: data + description: | + Data for creating an incident user-defined role. + value: + attributes: + description: "{{ description }}" + name: "{{ name }}" + policy: + is_single: {{ is_single }} + relationships: + incident_type: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of related resources to include in the response. + description: Comma-separated list of related resources to include in the response. +`} + + + + + +## `UPDATE` examples + + + + +Update an existing user-defined role for incidents. + +```sql +UPDATE datadog.service_management.incident_user_defined_roles +SET +data = '{{ data }}' +WHERE +role_id = '{{ role_id }}' --required +AND data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete an existing user-defined role for incidents. + +```sql +DELETE FROM datadog.service_management.incident_user_defined_roles +WHERE role_id = '{{ role_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/incidents/index.md b/website/docs/services/service_management/incidents/index.md index f9f50c6..920a6c3 100644 --- a/website/docs/services/service_management/incidents/index.md +++ b/website/docs/services/service_management/incidents/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an incidents resource. ## Overview - +
Nameincidents
Name
TypeResource
Id
@@ -68,7 +69,7 @@ The following fields are returned by `SELECT` queries: string - Incident resource type. (default: incidents, example: incidents) + Incident resource type. (incidents) (default: incidents, example: incidents) @@ -102,7 +103,7 @@ The following fields are returned by `SELECT` queries: string - Incident resource type. (default: incidents, example: incidents) + Incident resource type. (incidents) (default: incidents, example: incidents) @@ -126,7 +127,7 @@ The following fields are returned by `SELECT` queries: string - Incident search result type. (default: incidents_search_results, example: incidents_search_results) + Incident search result type. (incidents_search_results) (default: incidents_search_results, example: incidents_search_results) @@ -151,45 +152,52 @@ The following methods are available for this resource: - incident_id, region + incident_id include Get the details of an incident by `incident_id`. - region + include, page[size], page[offset] Get all incidents for the user's organization. - query, region + query include, sort, page[size], page[offset] Search for incidents matching a certain query. - region, data__data + data Create an incident. - incident_id, region, data__data + incident_id, data include Updates an incident. Provide only the attributes that should be updated as this request is a partial update. - incident_id, region + incident_id Deletes an existing incident from the users organization. + + + + data + include + Import an incident from an external system. This endpoint allows you to create incidents with<br />historical data such as custom timestamps for detection, declaration, and resolution.<br />Imported incidents do not execute integrations or notification rules. + @@ -216,15 +224,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string Specifies which incidents should be returned. The query can contain any number of incident facets joined by `ANDs`, along with multiple values for each of those facets joined by `OR`s. For example: `state:active AND severity:(SEV-2 OR SEV-1)`. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. array - Specifies which types of related objects should be included in the response. + Specifies which related object types to include in the response when importing an incident. @@ -234,7 +242,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -266,7 +274,6 @@ relationships, type FROM datadog.service_management.incidents WHERE incident_id = '{{ incident_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -282,8 +289,7 @@ attributes, relationships, type FROM datadog.service_management.incidents -WHERE region = '{{ region }}' -- required -AND include = '{{ include }}' +WHERE include = '{{ include }}' AND page[size] = '{{ page[size] }}' AND page[offset] = '{{ page[offset] }}' ; @@ -299,7 +305,6 @@ attributes, type FROM datadog.service_management.incidents WHERE query = '{{ query }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' AND sort = '{{ sort }}' AND page[size] = '{{ page[size] }}' @@ -325,12 +330,10 @@ Create an incident. ```sql INSERT INTO datadog.service_management.incidents ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data, included @@ -339,18 +342,36 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: incidents props: - - name: region - value: string - description: Required parameter for the incidents resource. - name: data - value: object description: | Incident data for a create request. -``` + value: + attributes: + customer_impact_scope: "{{ customer_impact_scope }}" + customer_impacted: {{ customer_impacted }} + fields: "{{ fields }}" + incident_type_uuid: "{{ incident_type_uuid }}" + initial_cells: + - cell_type: "{{ cell_type }}" + content: + content: "{{ content }}" + important: {{ important }} + is_test: {{ is_test }} + notification_handles: + - display_name: "{{ display_name }}" + handle: "{{ handle }}" + title: "{{ title }}" + relationships: + commander_user: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + @@ -370,11 +391,10 @@ Updates an incident. Provide only the attributes that should be updated as this ```sql UPDATE datadog.service_management.incidents SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE incident_id = '{{ incident_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND include = '{{ include}}' RETURNING data, @@ -399,7 +419,33 @@ Deletes an existing incident from the users organization. ```sql DELETE FROM datadog.service_management.incidents WHERE incident_id = '{{ incident_id }}' --required -AND region = '{{ region }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Import an incident from an external system. This endpoint allows you to create incidents with<br />historical data such as custom timestamps for detection, declaration, and resolution.<br />Imported incidents do not execute integrations or notification rules. + +```sql +EXEC datadog.service_management.incidents.import_incident +@include='{{ include }}' +@@json= +'{ +"data": "{{ data }}" +}' ; ``` diff --git a/website/docs/services/service_management/index.md b/website/docs/services/service_management/index.md index f0b9249..166d957 100644 --- a/website/docs/services/service_management/index.md +++ b/website/docs/services/service_management/index.md @@ -18,36 +18,96 @@ service_management service documentation. :::info[Service Summary] -total resources: __22__ +total resources: __82__ ::: ## Resources
+ -
\ No newline at end of file diff --git a/website/docs/services/service_management/issues/index.md b/website/docs/services/service_management/issues/index.md index a968993..88ba47b 100644 --- a/website/docs/services/service_management/issues/index.md +++ b/website/docs/services/service_management/issues/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an issues resource. ## Overview - +
Nameissues
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Type of the object. (example: issue) + Type of the object. (issue) (example: issue) @@ -91,28 +92,28 @@ The following methods are available for this resource: - issue_id, region + issue_id include Retrieve the full details for a specific error tracking issue, including attributes and relationships. - region, data__data + data include Search issues endpoint allows you to programmatically search for issues within your organization. This endpoint returns a list of issues that match a given search query, following the event search syntax. The search results are limited to a maximum of 100 issues per request. - issue_id, region, data + issue_id, data Update the assignee of an issue by `issue_id`. - issue_id, region, data + issue_id, data Update the state of an issue by `issue_id`. Use this endpoint to move an issue between states such as `OPEN`, `RESOLVED`, or `IGNORED`. @@ -137,15 +138,15 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The identifier of the issue. (example: c1726a66-1f64-11ee-b338-da7ad0900002) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. array - Comma-separated list of relationship objects that should be included in the response. + Comma-separated list of relationship objects that should be included in the response. Possible values are `issue`, `issue.assignee`, `issue.case`, and `issue.team_owners`. @@ -170,7 +171,6 @@ relationships, type FROM datadog.service_management.issues WHERE issue_id = '{{ issue_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -193,13 +193,11 @@ Search issues endpoint allows you to programmatically search for issues within y ```sql INSERT INTO datadog.service_management.issues ( -data__data, -region, +data, include ) SELECT '{{ data }}' /* required */, -'{{ region }}', '{{ include }}' RETURNING data, @@ -209,27 +207,41 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: issues props: - - name: region - value: string - description: Required parameter for the issues resource. - name: data - value: object description: | Search issues request. + value: + attributes: + assignee_ids: + - "{{ assignee_ids }}" + from: {{ from }} + order_by: "{{ order_by }}" + persona: "{{ persona }}" + query: "{{ query }}" + states: + - "{{ states }}" + team_ids: + - "{{ team_ids }}" + to: {{ to }} + track: "{{ track }}" + type: "{{ type }}" - name: include - value: array - description: Comma-separated list of relationship objects that should be included in the response. -``` + value: "{{ include }}" + description: Comma-separated list of relationship objects that should be included in the response. Possible values are \`issue\`, \`issue.assignee\`, \`issue.case\`, and \`issue.team_owners\`. + description: Comma-separated list of relationship objects that should be included in the response. Possible values are \`issue\`, \`issue.assignee\`, \`issue.case\`, and \`issue.team_owners\`. +`} +
## Lifecycle Methods +EXEC variables use wire (API) names. + maintenance_windows
resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe maintenance window's identifier. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
objectAttributes of a maintenance window, including its schedule and the query that determines which cases are affected.
stringJSON:API resource type for maintenance windows. (maintenance_window) (default: maintenance_window, example: maintenance_window)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query.
dataCreates a maintenance window for event management cases with a name, case filter query, and time range (start and end).
maintenance_window_id, dataUpdates the name, query, start time, or end time of an existing maintenance window.
maintenance_window_idPermanently deletes a maintenance window.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe UUID of the maintenance window. (example: a1b2c3d4-e5f6-7890-abcd-ef1234567890)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Returns all configured maintenance windows for event management cases. Maintenance windows define time periods during which case notifications and automation rules are suppressed for cases matching a given query. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.maintenance_windows +; +``` + + + + +## `INSERT` examples + + + + +Creates a maintenance window for event management cases with a name, case filter query, and time range (start and end). + +```sql +INSERT INTO datadog.service_management.maintenance_windows ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: maintenance_windows + props: + - name: data + description: | + Data object for creating a maintenance window. + value: + attributes: + end_at: "{{ end_at }}" + name: "{{ name }}" + query: "{{ query }}" + start_at: "{{ start_at }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates the name, query, start time, or end time of an existing maintenance window. + +```sql +REPLACE datadog.service_management.maintenance_windows +SET +data = '{{ data }}' +WHERE +maintenance_window_id = '{{ maintenance_window_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Permanently deletes a maintenance window. + +```sql +DELETE FROM datadog.service_management.maintenance_windows +WHERE maintenance_window_id = '{{ maintenance_window_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/on_call_escalation_policies/index.md b/website/docs/services/service_management/on_call_escalation_policies/index.md index 69ae2c2..c2ed23f 100644 --- a/website/docs/services/service_management/on_call_escalation_policies/index.md +++ b/website/docs/services/service_management/on_call_escalation_policies/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an on_call_escalation_policies -Nameon_call_escalation_policies +Name TypeResource Id @@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Indicates that the resource is of type `policies`. (default: policies, example: policies) + Indicates that the resource is of type `policies`. (policies) (default: policies, example: policies) @@ -91,28 +92,28 @@ The following methods are available for this resource: - policy_id, region + policy_id include Get an On-Call escalation policy - region, data__data + data include Create a new On-Call escalation policy - policy_id, region, data__data + policy_id, data include Update an On-Call escalation policy - policy_id, region + policy_id Delete an On-Call escalation policy @@ -137,10 +138,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the escalation policy - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -170,7 +171,6 @@ relationships, type FROM datadog.service_management.on_call_escalation_policies WHERE policy_id = '{{ policy_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -193,13 +193,11 @@ Create a new On-Call escalation policy ```sql INSERT INTO datadog.service_management.on_call_escalation_policies ( -data__data, -region, +data, include ) SELECT '{{ data }}' /* required */, -'{{ region }}', '{{ include }}' RETURNING data, @@ -209,21 +207,33 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: on_call_escalation_policies props: - - name: region - value: string - description: Required parameter for the on_call_escalation_policies resource. - name: data - value: object description: | Represents the data for creating an escalation policy, including its attributes, relationships, and resource type. + value: + attributes: + name: "{{ name }}" + resolve_page_on_policy_end: {{ resolve_page_on_policy_end }} + retries: {{ retries }} + steps: + - assignment: "{{ assignment }}" + escalate_after_seconds: {{ escalate_after_seconds }} + targets: "{{ targets }}" + relationships: + teams: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" - name: include - value: string - description: Comma-separated list of included relationships to be returned. Allowed values: `teams`, `steps`, `steps.targets`. -``` + value: "{{ include }}" + description: Comma-separated list of included relationships to be returned. Allowed values: \`teams\`, \`steps\`, \`steps.targets\`. + description: Comma-separated list of included relationships to be returned. Allowed values: \`teams\`, \`steps\`, \`steps.targets\`. +`} + @@ -243,11 +253,10 @@ Update an On-Call escalation policy ```sql REPLACE datadog.service_management.on_call_escalation_policies SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE policy_id = '{{ policy_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND include = '{{ include}}' RETURNING data, @@ -272,7 +281,6 @@ Delete an On-Call escalation policy ```sql DELETE FROM datadog.service_management.on_call_escalation_policies WHERE policy_id = '{{ policy_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/on_call_page/index.md b/website/docs/services/service_management/on_call_page/index.md index 227f7aa..873de55 100644 --- a/website/docs/services/service_management/on_call_page/index.md +++ b/website/docs/services/service_management/on_call_page/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an on_call_page resource. ## Overview - +
Nameon_call_page
Name
TypeResource
Id
@@ -52,30 +53,30 @@ The following methods are available for this resource: - region - Trigger a new On-Call Page.
+ + Trigger a new On-Call Page. - page_id, region + page_id - Acknowledges an On-Call Page.
+ Acknowledges an On-Call Page. - page_id, region + page_id - Escalates an On-Call Page.
+ Escalates an On-Call Page. - page_id, region + page_id - Resolves an On-Call Page.
+ Resolves an On-Call Page. @@ -98,10 +99,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string (uuid) The page ID. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -117,16 +118,14 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Trigger a new On-Call Page.
+Trigger a new On-Call Page. ```sql INSERT INTO datadog.service_management.on_call_page ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' RETURNING data ; @@ -134,24 +133,33 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: on_call_page props: - - name: region - value: string - description: Required parameter for the on_call_page resource. - name: data - value: object description: | The main request body, including attributes and resource type. -``` + value: + attributes: + description: "{{ description }}" + tags: + - "{{ tags }}" + target: + identifier: "{{ identifier }}" + type: "{{ type }}" + title: "{{ title }}" + urgency: "{{ urgency }}" + type: "{{ type }}" +`} + ## Lifecycle Methods +EXEC variables use wire (API) names. + -Acknowledges an On-Call Page.
+Acknowledges an On-Call Page. ```sql EXEC datadog.service_management.on_call_page.acknowledge_on_call_page -@page_id='{{ page_id }}' --required, -@region='{{ region }}' --required +@page_id='{{ page_id }}' --required ; ```
-Escalates an On-Call Page.
+Escalates an On-Call Page. ```sql EXEC datadog.service_management.on_call_page.escalate_on_call_page -@page_id='{{ page_id }}' --required, -@region='{{ region }}' --required +@page_id='{{ page_id }}' --required ; ```
-Resolves an On-Call Page.
+Resolves an On-Call Page. ```sql EXEC datadog.service_management.on_call_page.resolve_on_call_page -@page_id='{{ page_id }}' --required, -@region='{{ region }}' --required +@page_id='{{ page_id }}' --required ; ```
diff --git a/website/docs/services/service_management/on_call_schedule/index.md b/website/docs/services/service_management/on_call_schedule/index.md index c261bac..4c182bb 100644 --- a/website/docs/services/service_management/on_call_schedule/index.md +++ b/website/docs/services/service_management/on_call_schedule/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an on_call_schedule resour ## Overview - +
Nameon_call_schedule
Name
TypeResource
Id
@@ -66,7 +67,7 @@ The following fields are returned by `SELECT` queries: string - Schedules resource type. (default: schedules, example: schedules) + Schedules resource type. (schedules) (default: schedules, example: schedules) @@ -91,28 +92,28 @@ The following methods are available for this resource: - schedule_id, region + schedule_id include Get an On-Call schedule - region, data__data + data include Create a new On-Call schedule - schedule_id, region, data__data + schedule_id, data include Update a new On-Call schedule - schedule_id, region + schedule_id Delete an On-Call schedule @@ -132,16 +133,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The ID of the schedule + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + string @@ -170,7 +171,6 @@ relationships, type FROM datadog.service_management.on_call_schedule WHERE schedule_id = '{{ schedule_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -193,13 +193,11 @@ Create a new On-Call schedule ```sql INSERT INTO datadog.service_management.on_call_schedule ( -data__data, -region, +data, include ) SELECT '{{ data }}' /* required */, -'{{ region }}', '{{ include }}' RETURNING data, @@ -209,21 +207,39 @@ included -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: on_call_schedule props: - - name: region - value: string - description: Required parameter for the on_call_schedule resource. - name: data - value: object description: | The core data wrapper for creating a schedule, encompassing attributes, relationships, and the resource type. + value: + attributes: + layers: + - effective_date: "{{ effective_date }}" + end_date: "{{ end_date }}" + interval: + days: {{ days }} + seconds: {{ seconds }} + members: "{{ members }}" + name: "{{ name }}" + restrictions: "{{ restrictions }}" + rotation_start: "{{ rotation_start }}" + time_zone: "{{ time_zone }}" + name: "{{ name }}" + time_zone: "{{ time_zone }}" + relationships: + teams: + data: + - id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" - name: include - value: string - description: Comma-separated list of included relationships to be returned. Allowed values: `teams`, `layers`, `layers.members`, `layers.members.user`. -``` + value: "{{ include }}" + description: Comma-separated list of included relationships to be returned. Allowed values: \`teams\`, \`layers\`, \`layers.members\`, \`layers.members.user\`. + description: Comma-separated list of included relationships to be returned. Allowed values: \`teams\`, \`layers\`, \`layers.members\`, \`layers.members.user\`. +`} +
@@ -243,11 +259,10 @@ Update a new On-Call schedule ```sql REPLACE datadog.service_management.on_call_schedule SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE schedule_id = '{{ schedule_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required AND include = '{{ include}}' RETURNING data, @@ -272,7 +287,6 @@ Delete an On-Call schedule ```sql DELETE FROM datadog.service_management.on_call_schedule WHERE schedule_id = '{{ schedule_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/on_call_schedule_responders/index.md b/website/docs/services/service_management/on_call_schedule_responders/index.md new file mode 100644 index 0000000..cb00a68 --- /dev/null +++ b/website/docs/services/service_management/on_call_schedule_responders/index.md @@ -0,0 +1,169 @@ +--- +title: on_call_schedule_responders +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_schedule_responders + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an on_call_schedule_responders resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of this on-call responders lookup.
objectAttributes for a schedule's on-call responders lookup.
objectRelationships for a schedule's on-call responders lookup, including the schedule and its responder groups.
stringRepresents the resource type for a schedule's grouped on-call responders across the previous, current, and next positions. (schedule_oncall_responders) (default: schedule_oncall_responders, example: schedule_oncall_responders)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
schedule_idinclude, filter[position], filter[at_ts]Retrieves the on-call responders for the specified schedule, grouped by position (previous, current, next), at a given time. Supports schedules with multiple concurrent on-call responders at a position, by returning a list of shifts per position.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the schedule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringRetrieves the on-call responders at the given timestamp in RFC3339 format (for example, `2025-05-07T02:53:01Z` or `2025-05-07T02:53:01+00:00`). When using timezone offsets with `+` or `-`, ensure proper URL encoding (`+` should be encoded as `%2B`). Defaults to the current time if omitted.
stringComma-separated list of positions to retrieve. Allowed values: `previous`, `current`, `next`. Defaults to `current` if omitted.
stringComma-separated list of included relationships to be returned. Allowed values: `schedule`, `responders`, `responders.shifts`, `responders.shifts.user`.
+ +## `SELECT` examples + + + + +Retrieves the on-call responders for the specified schedule, grouped by position (previous, current, next), at a given time. Supports schedules with multiple concurrent on-call responders at a position, by returning a list of shifts per position. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.on_call_schedule_responders +WHERE schedule_id = '{{ schedule_id }}' -- required +AND include = '{{ include }}' +AND filter[position] = '{{ filter[position] }}' +AND filter[at_ts] = '{{ filter[at_ts] }}' +; +``` + + diff --git a/website/docs/services/service_management/on_call_team_routing_rules/index.md b/website/docs/services/service_management/on_call_team_routing_rules/index.md index 0980075..73c8599 100644 --- a/website/docs/services/service_management/on_call_team_routing_rules/index.md +++ b/website/docs/services/service_management/on_call_team_routing_rules/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists an on_call_team_routing_rules -Nameon_call_team_routing_rules +Name TypeResource Id @@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Team routing rules resource type. (default: team_routing_rules, example: team_routing_rules) + Team routing rules resource type. (team_routing_rules) (default: team_routing_rules, example: team_routing_rules) @@ -86,14 +87,14 @@ The following methods are available for this resource: - team_id, region + team_id include Get a team's On-Call routing rules - team_id, region + team_id include Set a team's On-Call routing rules @@ -113,10 +114,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -150,7 +151,6 @@ relationships, type FROM datadog.service_management.on_call_team_routing_rules WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` @@ -173,10 +173,9 @@ Set a team's On-Call routing rules ```sql REPLACE datadog.service_management.on_call_team_routing_rules SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE team_id = '{{ team_id }}' --required -AND region = '{{ region }}' --required AND include = '{{ include}}' RETURNING data, diff --git a/website/docs/services/service_management/on_call_user_notification_channels/index.md b/website/docs/services/service_management/on_call_user_notification_channels/index.md new file mode 100644 index 0000000..c1fdfdf --- /dev/null +++ b/website/docs/services/service_management/on_call_user_notification_channels/index.md @@ -0,0 +1,291 @@ +--- +title: on_call_user_notification_channels +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_user_notification_channels + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an on_call_user_notification_channels resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the channel
objectAttributes for an on-call notification channel.
stringIndicates that the resource is of type 'notification_channels'. (notification_channels) (default: notification_channels, example: notification_channels)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the channel
objectAttributes for an on-call notification channel.
stringIndicates that the resource is of type 'notification_channels'. (notification_channels) (default: notification_channels, example: notification_channels)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_id, channel_idGet a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_idList the notification channels for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_id, dataCreate a new notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_id, channel_idDelete a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe channel ID
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe user ID
+ +## `SELECT` examples + + + + +Get a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.on_call_user_notification_channels +WHERE user_id = '{{ user_id }}' -- required +AND channel_id = '{{ channel_id }}' -- required +; +``` + + + +List the notification channels for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.on_call_user_notification_channels +WHERE user_id = '{{ user_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a new notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +INSERT INTO datadog.service_management.on_call_user_notification_channels ( +data, +user_id +) +SELECT +'{{ data }}' /* required */, +'{{ user_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: on_call_user_notification_channels + props: + - name: user_id + value: "{{ user_id }}" + description: Required parameter for the on_call_user_notification_channels resource. + - name: data + description: | + Data for creating an on-call notification channel + value: + attributes: + config: + number: "{{ number }}" + type: "{{ type }}" + address: "{{ address }}" + formats: + - "{{ formats }}" + type: "{{ type }}" +`} + + + + + +## `DELETE` examples + + + + +Delete a notification channel for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +DELETE FROM datadog.service_management.on_call_user_notification_channels +WHERE user_id = '{{ user_id }}' --required +AND channel_id = '{{ channel_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/on_call_user_notification_rules/index.md b/website/docs/services/service_management/on_call_user_notification_rules/index.md new file mode 100644 index 0000000..6d3ffd6 --- /dev/null +++ b/website/docs/services/service_management/on_call_user_notification_rules/index.md @@ -0,0 +1,351 @@ +--- +title: on_call_user_notification_rules +hide_title: false +hide_table_of_contents: false +keywords: + - on_call_user_notification_rules + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists an on_call_user_notification_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the rule
objectAttributes for an on-call notification rule.
objectRelationship object for creating a notification rule
stringIndicates that the resource is of type 'notification_rules'. (notification_rules) (default: notification_rules, example: notification_rules)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier for the rule
objectAttributes for an on-call notification rule.
objectRelationship object for creating a notification rule
stringIndicates that the resource is of type 'notification_rules'. (notification_rules) (default: notification_rules, example: notification_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
user_id, rule_idincludeGet a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_idincludeList the notification rules for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_id, dataCreate a new notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_id, rule_id, dataincludeUpdate a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission
user_id, rule_idDelete a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe rule ID
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe user ID
stringComma-separated list of included relationships to be returned. Allowed values: `channel`.
+ +## `SELECT` examples + + + + +Get a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.on_call_user_notification_rules +WHERE user_id = '{{ user_id }}' -- required +AND rule_id = '{{ rule_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +List the notification rules for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.on_call_user_notification_rules +WHERE user_id = '{{ user_id }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Create a new notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +INSERT INTO datadog.service_management.on_call_user_notification_rules ( +data, +user_id +) +SELECT +'{{ data }}' /* required */, +'{{ user_id }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: on_call_user_notification_rules + props: + - name: user_id + value: "{{ user_id }}" + description: Required parameter for the on_call_user_notification_rules resource. + - name: data + description: | + Data for creating an on-call notification rule + value: + attributes: + category: "{{ category }}" + channel_settings: + method: "{{ method }}" + type: "{{ type }}" + delay_minutes: {{ delay_minutes }} + relationships: + channel: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Update a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +REPLACE datadog.service_management.on_call_user_notification_rules +SET +data = '{{ data }}' +WHERE +user_id = '{{ user_id }}' --required +AND rule_id = '{{ rule_id }}' --required +AND data = '{{ data }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Delete a notification rule for a user. The authenticated user must be the target user or have the `on_call_admin` permission + +```sql +DELETE FROM datadog.service_management.on_call_user_notification_rules +WHERE user_id = '{{ user_id }}' --required +AND rule_id = '{{ rule_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/on_call_user_schedule/index.md b/website/docs/services/service_management/on_call_user_schedule/index.md deleted file mode 100644 index 3a5e9e5..0000000 --- a/website/docs/services/service_management/on_call_user_schedule/index.md +++ /dev/null @@ -1,163 +0,0 @@ ---- -title: on_call_user_schedule -hide_title: false -hide_table_of_contents: false -keywords: - - on_call_user_schedule - - service_management - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists an on_call_user_schedule resource. - -## Overview - - - - -
Nameon_call_user_schedule
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe `ShiftData` `id`.
objectAttributes for an on-call shift.
objectRelationships for an on-call shift.
stringIndicates that the resource is of type 'shifts'. (default: shifts, example: shifts)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
schedule_id, regioninclude, filter[at_ts]Retrieves the user who is on-call for the specified schedule at a given time.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
stringThe ID of the schedule.
stringRetrieves the on-call user at the given timestamp (ISO-8601). Defaults to the current time if omitted."
stringSpecifies related resources to include in the response as a comma-separated list. Allowed value: `user`.
- -## `SELECT` examples - - - - -Retrieves the user who is on-call for the specified schedule at a given time. - -```sql -SELECT -id, -attributes, -relationships, -type -FROM datadog.service_management.on_call_user_schedule -WHERE schedule_id = '{{ schedule_id }}' -- required -AND region = '{{ region }}' -- required -AND include = '{{ include }}' -AND filter[at_ts] = '{{ filter[at_ts] }}' -; -``` - - diff --git a/website/docs/services/service_management/projects/index.md b/website/docs/services/service_management/projects/index.md index 848d698..e7e14e8 100644 --- a/website/docs/services/service_management/projects/index.md +++ b/website/docs/services/service_management/projects/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a projects resource. ## Overview - +
Nameprojects
Name
TypeResource
Id
@@ -52,22 +53,22 @@ The following fields are returned by `SELECT` queries: string - The Project's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001) + The Project's identifier. (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001) object - Project attributes + Project attributes. object - Project relationships + Project relationships. string - Project resource type (default: project, example: project) + Project resource type. (project) (default: project, example: project) @@ -86,22 +87,22 @@ The following fields are returned by `SELECT` queries: string - The Project's identifier (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001) + The Project's identifier. (example: aeadc05e-98a8-11ec-ac2c-da7ad0900001) object - Project attributes + Project attributes. object - Project relationships + Project relationships. string - Project resource type (default: project, example: project) + Project resource type. (project) (default: project, example: project) @@ -126,28 +127,28 @@ The following methods are available for this resource: - project_id, region + project_id Get the details of a project by `project_id`. - region + Get all projects. - region, data__data + data Create a project. - project_id, region + project_id Remove a project using the project's `id`. @@ -170,12 +171,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - Project UUID (example: e555e290-ed65-49bd-ae18-8acbfcf18db7) + Project UUID. (example: e555e290-ed65-49bd-ae18-8acbfcf18db7) - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -201,7 +202,6 @@ relationships, type FROM datadog.service_management.projects WHERE project_id = '{{ project_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -216,7 +216,6 @@ attributes, relationships, type FROM datadog.service_management.projects -WHERE region = '{{ region }}' -- required ; ``` @@ -238,12 +237,10 @@ Create a project. ```sql INSERT INTO datadog.service_management.projects ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -251,18 +248,22 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: projects props: - - name: region - value: string - description: Required parameter for the projects resource. - name: data - value: object description: | - Project create -``` + Project create. + value: + attributes: + enabled_custom_case_types: + - "{{ enabled_custom_case_types }}" + key: "{{ key }}" + name: "{{ name }}" + team_uuid: "{{ team_uuid }}" + type: "{{ type }}" +`} + @@ -282,7 +283,6 @@ Remove a project using the project's `id`. ```sql DELETE FROM datadog.service_management.projects WHERE project_id = '{{ project_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/service_definitions/index.md b/website/docs/services/service_management/service_definitions/index.md index c7c5e80..0e04ba6 100644 --- a/website/docs/services/service_management/service_definitions/index.md +++ b/website/docs/services/service_management/service_definitions/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a service_definitions reso ## Overview - +
Nameservice_definitions
Name
TypeResource
Id
@@ -116,28 +117,28 @@ The following methods are available for this resource: - service_name, region + service_name schema_version Get a single service definition from the Datadog Service Catalog. - region + page[size], page[number], schema_version Get a list of all service definitions from the Datadog Service Catalog. - region, data__schema-version, data__dd-service + schema-version, dd-service Create or update service definition in the Datadog Service Catalog. - service_name, region + service_name Delete a single service definition in the Datadog Service Catalog. @@ -157,16 +158,16 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - - string - (default: datadoghq.com) - string The name of the service. + + + string + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. + integer (int64) @@ -175,7 +176,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -205,7 +206,6 @@ attributes, type FROM datadog.service_management.service_definitions WHERE service_name = '{{ service_name }}' -- required -AND region = '{{ region }}' -- required AND schema_version = '{{ schema_version }}' ; ``` @@ -220,8 +220,7 @@ id, attributes, type FROM datadog.service_management.service_definitions -WHERE region = '{{ region }}' -- required -AND page[size] = '{{ page[size] }}' +WHERE page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' AND schema_version = '{{ schema_version }}' ; @@ -245,22 +244,24 @@ Create or update service definition in the Datadog Service Catalog. ```sql INSERT INTO datadog.service_management.service_definitions ( -data__application, -data__ci-pipeline-fingerprints, -data__contacts, -data__dd-service, -data__description, -data__extensions, -data__integrations, -data__languages, -data__lifecycle, -data__links, -data__schema-version, -data__tags, -data__team, -data__tier, -data__type, -region +application, +ci-pipeline-fingerprints, +contacts, +dd-service, +description, +extensions, +integrations, +languages, +lifecycle, +links, +schema-version, +tags, +team, +tier, +type, +dd-team, +docs, +repos ) SELECT '{{ application }}', @@ -278,7 +279,9 @@ SELECT '{{ team }}', '{{ tier }}', '{{ type }}', -'{{ region }}' +'{{ dd-team }}', +'{{ docs }}', +'{{ repos }}' RETURNING data ; @@ -286,76 +289,106 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: service_definitions props: - - name: region - value: string - description: Required parameter for the service_definitions resource. - name: application - value: string + value: "{{ application }}" description: | Identifier for a group of related services serving a product feature, which the service is a part of. - name: ci-pipeline-fingerprints - value: array + value: + - "{{ ci-pipeline-fingerprints }}" description: | A set of CI fingerprints. - name: contacts - value: array description: | A list of contacts related to the services. + value: + - contact: "{{ contact }}" + name: "{{ name }}" + type: "{{ type }}" - name: dd-service - value: string + value: "{{ dd-service }}" description: | Unique identifier of the service. Must be unique across all services and is used to match with a service in Datadog. - name: description - value: string + value: "{{ description }}" description: | A short description of the service. - name: extensions - value: object + value: "{{ extensions }}" description: | Extensions to v2.2 schema. - name: integrations - value: object description: | Third party integrations that Datadog supports. + value: + opsgenie: + region: "{{ region }}" + service-url: "{{ service-url }}" + pagerduty: + service-url: "{{ service-url }}" - name: languages - value: array + value: + - "{{ languages }}" description: | - The service's programming language. Datadog recognizes the following languages: `dotnet`, `go`, `java`, `js`, `php`, `python`, `ruby`, and `c++`. + The service's programming language. Datadog recognizes the following languages: \`dotnet\`, \`go\`, \`java\`, \`js\`, \`php\`, \`python\`, \`ruby\`, and \`c++\`. - name: lifecycle - value: string + value: "{{ lifecycle }}" description: | The current life cycle phase of the service. - name: links - value: array description: | A list of links related to the services. + value: + - name: "{{ name }}" + provider: "{{ provider }}" + type: "{{ type }}" + url: "{{ url }}" - name: schema-version - value: string + value: "{{ schema-version }}" description: | Schema version being used. valid_values: ['v2.2'] default: v2.2 - name: tags - value: array + value: + - "{{ tags }}" description: | A set of custom tags. - name: team - value: string + value: "{{ team }}" description: | Team that owns the service. It is used to locate a team defined in Datadog Teams if it exists. - name: tier - value: string + value: "{{ tier }}" description: | Importance of the service. - name: type - value: string + value: "{{ type }}" description: | The type of service. -``` + - name: dd-team + value: "{{ dd-team }}" + description: | + Experimental feature. A Team handle that matches a Team in the Datadog Teams product. + - name: docs + description: | + A list of documentation related to the services. + value: + - name: "{{ name }}" + provider: "{{ provider }}" + url: "{{ url }}" + - name: repos + description: | + A list of code repositories related to the services. + value: + - name: "{{ name }}" + provider: "{{ provider }}" + url: "{{ url }}" +`} + @@ -375,7 +408,6 @@ Delete a single service definition in the Datadog Service Catalog. ```sql DELETE FROM datadog.service_management.service_definitions WHERE service_name = '{{ service_name }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docs/services/service_management/slo_corrections/index.md b/website/docs/services/service_management/slo_corrections/index.md new file mode 100644 index 0000000..800a5f5 --- /dev/null +++ b/website/docs/services/service_management/slo_corrections/index.md @@ -0,0 +1,382 @@ +--- +title: slo_corrections +hide_title: false +hide_table_of_contents: false +keywords: + - slo_corrections + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slo_corrections resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the SLO correction.
objectThe attribute object associated with the SLO correction.
stringSLO correction resource type. (correction) (default: correction, example: correction)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the SLO correction.
objectThe attribute object associated with the SLO correction.
stringSLO correction resource type. (correction) (default: correction, example: correction)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the SLO correction.
objectThe attribute object associated with the SLO correction.
stringSLO correction resource type. (correction) (default: correction, example: correction)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
slo_correction_idGet an SLO correction.
slo_idGet corrections applied to an SLO
offset, limitGet all Service Level Objective corrections.
Create an SLO correction. Use `slo_id` to apply the correction to a single SLO, or `slo_query` to apply the<br />correction to SLOs that match a query. Exactly one of `slo_id` or `slo_query` is required.
slo_correction_idUpdate the specified SLO correction object.
slo_correction_idPermanently delete the specified SLO correction object.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the SLO correction object.
stringThe ID of the service level objective object.
integer (int64)The number of SLO corrections to return in the response. Default is 25.
integer (int64)The specific offset to use as the beginning of the returned response.
+ +## `SELECT` examples + + + + +Get an SLO correction. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.slo_corrections +WHERE slo_correction_id = '{{ slo_correction_id }}' -- required +; +``` + + + +Get corrections applied to an SLO + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.slo_corrections +WHERE slo_id = '{{ slo_id }}' -- required +; +``` + + + +Get all Service Level Objective corrections. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.slo_corrections +WHERE offset = '{{ offset }}' +AND limit = '{{ limit }}' +; +``` + + + + +## `INSERT` examples + + + + +Create an SLO correction. Use `slo_id` to apply the correction to a single SLO, or `slo_query` to apply the<br />correction to SLOs that match a query. Exactly one of `slo_id` or `slo_query` is required. + +```sql +INSERT INTO datadog.service_management.slo_corrections ( +data +) +SELECT +'{{ data }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: slo_corrections + props: + - name: data + description: | + The data object associated with the SLO correction to be created. + value: + attributes: + category: "{{ category }}" + description: "{{ description }}" + duration: {{ duration }} + end: {{ end }} + rrule: "{{ rrule }}" + slo_id: "{{ slo_id }}" + slo_query: "{{ slo_query }}" + start: {{ start }} + timezone: "{{ timezone }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the specified SLO correction object. + +```sql +UPDATE datadog.service_management.slo_corrections +SET +data = '{{ data }}' +WHERE +slo_correction_id = '{{ slo_correction_id }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Permanently delete the specified SLO correction object. + +```sql +DELETE FROM datadog.service_management.slo_corrections +WHERE slo_correction_id = '{{ slo_correction_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/slo_history/index.md b/website/docs/services/service_management/slo_history/index.md new file mode 100644 index 0000000..65397fc --- /dev/null +++ b/website/docs/services/service_management/slo_history/index.md @@ -0,0 +1,211 @@ +--- +title: slo_history +hide_title: false +hide_table_of_contents: false +keywords: + - slo_history + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slo_history resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int32)A numeric representation of the type of the service level objective (`0` for monitor, `1` for metric). Always included in service level objective responses. Ignored in create/update requests. (0, 1, 2)
integer (int64)The `from` timestamp in epoch seconds.
arrayFor `metric` based SLOs where the query includes a group-by clause, this represents the list of grouping parameters. This is not included in responses for `monitor` based SLOs.
arrayFor grouped SLOs, this represents SLI data for specific groups. This is not included in the responses for `metric` based SLOs.
arrayFor multi-monitor SLOs, this represents SLI data for specific monitors. This is not included in the responses for `metric` based SLOs.
objectAn object that holds an SLI value and its associated data. It can represent an SLO's overall SLI value. This can also represent the SLI value for a specific monitor in multi-monitor SLOs, or a group in grouped SLOs.
objectA `metric` based SLO history response. This is not included in responses for `monitor` based SLOs.
objectmapping of string timeframe to the SLO threshold.
integer (int64)The `to` timestamp in epoch seconds.
stringThe type of the service level objective. (metric, monitor, time_slice) (example: metric)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
slo_id, from_ts, to_tstarget, apply_correctionGet a specific SLO’s history, regardless of its SLO type.<br /><br />The detailed history data is structured according to the source data type.<br />For example, metric data is included for event SLOs that use<br />the metric source, and monitor SLO types include the monitor transition history.<br /><br />**Note:** There are different response formats for event based and time based SLOs.<br />Examples of both are shown.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The `from` timestamp for the query window in epoch seconds.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the service level objective object.
integer (int64)The `to` timestamp for the query window in epoch seconds.
booleanDefaults to `true`. If any SLO corrections are applied and this parameter is set to `false`, then the corrections will not be applied and the SLI values will not be affected.
number (double)The SLO target. If `target` is passed in, the response will include the remaining error budget and a timeframe value of `custom`.
+ +## `SELECT` examples + + + + +Get a specific SLO’s history, regardless of its SLO type.<br /><br />The detailed history data is structured according to the source data type.<br />For example, metric data is included for event SLOs that use<br />the metric source, and monitor SLO types include the monitor transition history.<br /><br />**Note:** There are different response formats for event based and time based SLOs.<br />Examples of both are shown. + +```sql +SELECT +type_id, +from_ts, +group_by, +groups, +monitors, +overall, +series, +thresholds, +to_ts, +type +FROM datadog.service_management.slo_history +WHERE slo_id = '{{ slo_id }}' -- required +AND from_ts = '{{ from_ts }}' -- required +AND to_ts = '{{ to_ts }}' -- required +AND target = '{{ target }}' +AND apply_correction = '{{ apply_correction }}' +; +``` + + diff --git a/website/docs/services/service_management/slo_report_job/index.md b/website/docs/services/service_management/slo_report_job/index.md deleted file mode 100644 index b7e1730..0000000 --- a/website/docs/services/service_management/slo_report_job/index.md +++ /dev/null @@ -1,225 +0,0 @@ ---- -title: slo_report_job -hide_title: false -hide_table_of_contents: false -keywords: - - slo_report_job - - service_management - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists a slo_report_job resource. - -## Overview - - - - -
Nameslo_report_job
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
stringThe ID of the report job. (example: dc8d92aa-e0af-11ee-af21-1feeaccaa3a3)
objectThe attributes portion of the SLO report status response.
stringThe type of ID. (example: report_id)
-
-
- -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
report_id, regionGet the status of the SLO report job.
region, data__dataCreate a job to generate an SLO report. The report job is processed asynchronously and eventually results in a CSV report being available for download.

Check the status of the job and download the CSV report using the returned `report_id`.
report_id, regionDownload an SLO report. This can only be performed after the report job has completed.

Reports are not guaranteed to exist indefinitely. Datadog recommends that you download the report as soon as it is available.
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
stringThe ID of the report job.
- -## `SELECT` examples - - - - -Get the status of the SLO report job. - -```sql -SELECT -id, -attributes, -type -FROM datadog.service_management.slo_report_job -WHERE report_id = '{{ report_id }}' -- required -AND region = '{{ region }}' -- required -; -``` - - - - -## `INSERT` examples - - - - -Create a job to generate an SLO report. The report job is processed asynchronously and eventually results in a CSV report being available for download.

Check the status of the job and download the CSV report using the returned `report_id`. - -```sql -INSERT INTO datadog.service_management.slo_report_job ( -data__data, -region -) -SELECT -'{{ data }}' /* required */, -'{{ region }}' -RETURNING -data -; -``` -
- - -```yaml -# Description fields are for documentation purposes -- name: slo_report_job - props: - - name: region - value: string - description: Required parameter for the slo_report_job resource. - - name: data - value: object - description: | - The data portion of the SLO report request. -``` - -
- - -## Lifecycle Methods - - - - -Download an SLO report. This can only be performed after the report job has completed.

Reports are not guaranteed to exist indefinitely. Datadog recommends that you download the report as soon as it is available. - -```sql -EXEC datadog.service_management.slo_report_job.get_sloreport -@report_id='{{ report_id }}' --required, -@region='{{ region }}' --required -; -``` -
-
diff --git a/website/docs/services/service_management/slo_search_results/index.md b/website/docs/services/service_management/slo_search_results/index.md new file mode 100644 index 0000000..7b727b5 --- /dev/null +++ b/website/docs/services/service_management/slo_search_results/index.md @@ -0,0 +1,151 @@ +--- +title: slo_search_results +hide_title: false +hide_table_of_contents: false +keywords: + - slo_search_results + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slo_search_results resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
objectA service level objective ID and attributes.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
query, page[size], page[number], include_facetsGet a list of service level objective objects for your organization.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanWhether or not to return facet information in the response `[default=false]`.
integer (int64)The identifier of the first page to return. This parameter is used for the pagination feature `[default=0]`.
integer (int64)The number of files to return in the response `[default=10]`.
stringThe query string to filter results based on SLO names. Some examples of queries include `service:<service-name>` and <slo-name>.
+ +## `SELECT` examples + + + + +Get a list of service level objective objects for your organization. + +```sql +SELECT +data +FROM datadog.service_management.slo_search_results +WHERE query = '{{ query }}' +AND page[size] = '{{ page[size] }}' +AND page[number] = '{{ page[number] }}' +AND include_facets = '{{ include_facets }}' +; +``` + + diff --git a/website/docs/services/service_management/slo_statuses/index.md b/website/docs/services/service_management/slo_statuses/index.md new file mode 100644 index 0000000..a40cd99 --- /dev/null +++ b/website/docs/services/service_management/slo_statuses/index.md @@ -0,0 +1,163 @@ +--- +title: slo_statuses +hide_title: false +hide_table_of_contents: false +keywords: + - slo_statuses + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slo_statuses resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the SLO. (example: 00000000-0000-0000-0000-000000000000)
objectThe attributes of the SLO status.
stringThe type of the SLO status resource. (slo_status) (example: slo_status)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
slo_id, from_ts, to_tsdisable_correctionsGet the status of a Service Level Objective (SLO) for a given time period.<br /><br />This endpoint returns the current SLI value, error budget remaining, and other status information for the specified SLO.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
integer (int64)The starting timestamp for the SLO status query in epoch seconds.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the SLO.
integer (int64)The ending timestamp for the SLO status query in epoch seconds.
booleanWhether to exclude correction windows from the SLO status calculation. Defaults to false.
+ +## `SELECT` examples + + + + +Get the status of a Service Level Objective (SLO) for a given time period.<br /><br />This endpoint returns the current SLI value, error budget remaining, and other status information for the specified SLO. + +```sql +SELECT +id, +attributes, +type +FROM datadog.service_management.slo_statuses +WHERE slo_id = '{{ slo_id }}' -- required +AND from_ts = '{{ from_ts }}' -- required +AND to_ts = '{{ to_ts }}' -- required +AND disable_corrections = '{{ disable_corrections }}' +; +``` + + diff --git a/website/docs/services/service_management/slos/index.md b/website/docs/services/service_management/slos/index.md new file mode 100644 index 0000000..b9b1118 --- /dev/null +++ b/website/docs/services/service_management/slos/index.md @@ -0,0 +1,745 @@ +--- +title: slos +hide_title: false +hide_table_of_contents: false +keywords: + - slos + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a slos resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier for the service level objective object. Always included in service level objective responses.
stringThe name of the service level objective object. (example: Custom Metric SLO)
arrayA list of SLO monitors IDs that reference this SLO. This field is returned only when `with_configured_alert_ids` parameter is true in query.
integer (int64)Creation timestamp (UNIX time in seconds) Always included in service level objective responses.
objectObject describing the creator of the shared element.
stringA user-defined description of the service level objective. Always included in service level objective responses (but may be `null`). Optional in create/update requests.
arrayA list of (up to 20) monitor groups that narrow the scope of a monitor service level objective. Included in service level objective responses if it is not empty. Optional in create/update requests for monitor service level objectives, but may only be used when then length of the `monitor_ids` field is one.
integer (int64)Modification timestamp (UNIX time in seconds) Always included in service level objective responses.
arrayA list of monitor ids that defines the scope of a monitor service level objective. **Required if type is `monitor`**.
arrayThe union of monitor tags for all monitors referenced by the `monitor_ids` field. Always included in service level objective responses for monitor service level objectives (but may be empty). Ignored in create/update requests. Does not affect which monitors are included in the service level objective (that is determined entirely by the `monitor_ids` field).
objectA count-based (metric) SLO query. This field is superseded by `sli_specification` but is retained for backwards compatibility. Note that Datadog only allows the sum by aggregator to be used because this will sum up all request counts instead of averaging them, or taking the max or min of all of those requests.
objectA generic SLI specification. This is used for time-slice and count-based (metric) SLOs only.
arrayA list of tags associated with this service level objective. Always included in service level objective responses (but may be empty). Optional in create/update requests.
number (double)The target threshold such that when the service level indicator is above this threshold over the given timeframe, the objective is being met.
arrayThe thresholds (timeframes and associated targets) for this service level objective object.
stringThe SLO time window options. Note that "custom" is not a valid option for creating or updating SLOs. It is only used when querying SLO history over custom timeframes. (7d, 30d, 90d, custom) (example: 30d)
stringThe type of the service level objective. (metric, monitor, time_slice) (example: metric)
number (double)The optional warning threshold such that when the service level indicator is below this value for the given threshold, but above the target threshold, the objective appears in a "warning" state. This value must be greater than the target threshold.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA unique identifier for the service level objective object. Always included in service level objective responses.
stringThe name of the service level objective object. (example: Custom Metric SLO)
integer (int64)Creation timestamp (UNIX time in seconds) Always included in service level objective responses.
objectObject describing the creator of the shared element.
stringA user-defined description of the service level objective. Always included in service level objective responses (but may be `null`). Optional in create/update requests.
arrayA list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. Included in service level objective responses if it is not empty. Optional in create/update requests for monitor service level objectives, but may only be used when then length of the `monitor_ids` field is one.
integer (int64)Modification timestamp (UNIX time in seconds) Always included in service level objective responses.
arrayA list of monitor ids that defines the scope of a monitor service level objective. **Required if type is `monitor`**.
arrayThe union of monitor tags for all monitors referenced by the `monitor_ids` field. Always included in service level objective responses for monitor-based service level objectives (but may be empty). Ignored in create/update requests. Does not affect which monitors are included in the service level objective (that is determined entirely by the `monitor_ids` field).
objectA count-based (metric) SLO query. This field is superseded by `sli_specification` but is retained for backwards compatibility. Note that Datadog only allows the sum by aggregator to be used because this will sum up all request counts instead of averaging them, or taking the max or min of all of those requests.
objectA generic SLI specification. This is used for time-slice and count-based (metric) SLOs only.
arrayA list of tags associated with this service level objective. Always included in service level objective responses (but may be empty). Optional in create/update requests.
number (double)The target threshold such that when the service level indicator is above this threshold over the given timeframe, the objective is being met.
arrayThe thresholds (timeframes and associated targets) for this service level objective object.
stringThe SLO time window options. Note that "custom" is not a valid option for creating or updating SLOs. It is only used when querying SLO history over custom timeframes. (7d, 30d, 90d, custom) (example: 30d)
stringThe type of the service level objective. (metric, monitor, time_slice) (example: metric)
number (double)The optional warning threshold such that when the service level indicator is below this value for the given threshold, but above the target threshold, the objective appears in a "warning" state. This value must be greater than the target threshold.
+
+ + + + + + + + + + + + + + + + + +
NameDatatypeDescription
arrayAn array of SLO IDs that can be safely deleted.
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
slo_idwith_configured_alert_idsGet a service level objective object.
ids, query, tags_query, metrics_query, limit, offset, is_deletedGet a list of service level objective objects for your organization.
idsCheck if an SLO can be safely deleted. For example,<br />assure an SLO can be deleted without disrupting a dashboard.
name, thresholds, typeCreate a service level objective object.
slo_id, name, thresholds, typeUpdate the specified service level objective object.
slo_idforcePermanently delete the specified service level objective object.<br /><br />If an SLO is used in a dashboard, the `DELETE /v1/slo/` endpoint returns<br />a 409 conflict error because the SLO is referenced in a dashboard.
Delete (or partially delete) multiple service level objective objects.<br /><br />This endpoint facilitates deletion of one or more thresholds for one or more<br />service level objective objects. If all thresholds are deleted, the service level<br />objective object is deleted as well.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringA comma separated list of the IDs of the service level objectives objects. (example: id1, id2, id3)
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringThe ID of the service level objective.
stringDelete the monitor even if it's referenced by other resources (for example SLO, composite monitor).
stringA comma separated list of the IDs of the service level objectives objects. (example: id1, id2, id3)
booleanWhether to return only deleted service level objective objects. (example: true)
integer (int64)The number of SLOs to return in the response.
stringThe query string to filter results based on SLO numerator and denominator. (example: aws.elb.request_count)
integer (int64)The specific offset to use as the beginning of the returned response.
stringThe query string to filter results based on SLO names. (example: monitor)
stringThe query string to filter results based on a single SLO tag. (example: env:prod)
booleanGet the IDs of SLO monitors that reference this SLO. (example: true)
+ +## `SELECT` examples + + + + +Get a service level objective object. + +```sql +SELECT +id, +name, +configured_alert_ids, +created_at, +creator, +description, +groups, +modified_at, +monitor_ids, +monitor_tags, +query, +sli_specification, +tags, +target_threshold, +thresholds, +timeframe, +type, +warning_threshold +FROM datadog.service_management.slos +WHERE slo_id = '{{ slo_id }}' -- required +AND with_configured_alert_ids = '{{ with_configured_alert_ids }}' +; +``` + + + +Get a list of service level objective objects for your organization. + +```sql +SELECT +id, +name, +created_at, +creator, +description, +groups, +modified_at, +monitor_ids, +monitor_tags, +query, +sli_specification, +tags, +target_threshold, +thresholds, +timeframe, +type, +warning_threshold +FROM datadog.service_management.slos +WHERE ids = '{{ ids }}' +AND query = '{{ query }}' +AND tags_query = '{{ tags_query }}' +AND metrics_query = '{{ metrics_query }}' +AND limit = '{{ limit }}' +AND offset = '{{ offset }}' +AND is_deleted = '{{ is_deleted }}' +; +``` + + + +Check if an SLO can be safely deleted. For example,<br />assure an SLO can be deleted without disrupting a dashboard. + +```sql +SELECT +ok +FROM datadog.service_management.slos +WHERE ids = '{{ ids }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Create a service level objective object. + +```sql +INSERT INTO datadog.service_management.slos ( +description, +groups, +monitor_ids, +name, +query, +sli_specification, +tags, +target_threshold, +thresholds, +timeframe, +type, +warning_threshold +) +SELECT +'{{ description }}', +'{{ groups }}', +'{{ monitor_ids }}', +'{{ name }}' /* required */, +'{{ query }}', +'{{ sli_specification }}', +'{{ tags }}', +{{ target_threshold }}, +'{{ thresholds }}' /* required */, +'{{ timeframe }}', +'{{ type }}' /* required */, +{{ warning_threshold }} +RETURNING +data, +errors, +metadata +; +``` + + + +{`# Description fields are for documentation purposes +- name: slos + props: + - name: description + value: "{{ description }}" + description: | + A user-defined description of the service level objective. + Always included in service level objective responses (but may be \`null\`). + Optional in create/update requests. + - name: groups + value: + - "{{ groups }}" + description: | + A list of (up to 100) monitor groups that narrow the scope of a monitor service level objective. + Included in service level objective responses if it is not empty. Optional in + create/update requests for monitor service level objectives, but may only be + used when then length of the \`monitor_ids\` field is one. + - name: monitor_ids + value: + - {{ monitor_ids }} + description: | + A list of monitor IDs that defines the scope of a monitor service level + objective. **Required if type is \`monitor\`**. + - name: name + value: "{{ name }}" + description: | + The name of the service level objective object. + - name: query + description: | + A count-based (metric) SLO query. This field is superseded by \`sli_specification\` but is retained for backwards compatibility. Note that Datadog only allows the sum by aggregator + to be used because this will sum up all request counts instead of averaging them, or taking the max or + min of all of those requests. + value: + denominator: "{{ denominator }}" + numerator: "{{ numerator }}" + - name: sli_specification + description: | + A generic SLI specification. This is used for time-slice and count-based (metric) SLOs only. + value: + time_slice: + comparator: "{{ comparator }}" + query: + formulas: + - formula: "{{ formula }}" + queries: + - aggregator: "{{ aggregator }}" + cross_org_uuids: "{{ cross_org_uuids }}" + data_source: "{{ data_source }}" + name: "{{ name }}" + query: "{{ query }}" + semantic_mode: "{{ semantic_mode }}" + query_interval_seconds: {{ query_interval_seconds }} + threshold: {{ threshold }} + count: + good_events_formula: + formula: "{{ formula }}" + queries: + - aggregator: "{{ aggregator }}" + cross_org_uuids: "{{ cross_org_uuids }}" + data_source: "{{ data_source }}" + name: "{{ name }}" + query: "{{ query }}" + semantic_mode: "{{ semantic_mode }}" + total_events_formula: + formula: "{{ formula }}" + bad_events_formula: + formula: "{{ formula }}" + - name: tags + value: + - "{{ tags }}" + description: | + A list of tags associated with this service level objective. + Always included in service level objective responses (but may be empty). + Optional in create/update requests. + - name: target_threshold + value: {{ target_threshold }} + description: | + The target threshold such that when the service level indicator is above this + threshold over the given timeframe, the objective is being met. + - name: thresholds + description: | + The thresholds (timeframes and associated targets) for this service level + objective object. + value: + - target: {{ target }} + target_display: "{{ target_display }}" + timeframe: "{{ timeframe }}" + warning: {{ warning }} + warning_display: "{{ warning_display }}" + - name: timeframe + value: "{{ timeframe }}" + description: | + The SLO time window options. Note that "custom" is not a valid option for creating + or updating SLOs. It is only used when querying SLO history over custom timeframes. + valid_values: ['7d', '30d', '90d', 'custom'] + - name: type + value: "{{ type }}" + description: | + The type of the service level objective. + valid_values: ['metric', 'monitor', 'time_slice'] + - name: warning_threshold + value: {{ warning_threshold }} + description: | + The optional warning threshold such that when the service level indicator is + below this value for the given threshold, but above the target threshold, the + objective appears in a "warning" state. This value must be greater than the target + threshold. +`} + + + + + +## `REPLACE` examples + + + + +Update the specified service level objective object. + +```sql +REPLACE datadog.service_management.slos +SET +description = '{{ description }}', +groups = '{{ groups }}', +monitor_ids = '{{ monitor_ids }}', +monitor_tags = '{{ monitor_tags }}', +name = '{{ name }}', +query = '{{ query }}', +sli_specification = '{{ sli_specification }}', +tags = '{{ tags }}', +target_threshold = {{ target_threshold }}, +thresholds = '{{ thresholds }}', +timeframe = '{{ timeframe }}', +type = '{{ type }}', +warning_threshold = {{ warning_threshold }} +WHERE +slo_id = '{{ slo_id }}' --required +AND name = '{{ name }}' --required +AND thresholds = '{{ thresholds }}' --required +AND type = '{{ type }}' --required +RETURNING +data, +errors, +metadata; +``` + + + + +## `DELETE` examples + + + + +Permanently delete the specified service level objective object.<br /><br />If an SLO is used in a dashboard, the `DELETE /v1/slo/` endpoint returns<br />a 409 conflict error because the SLO is referenced in a dashboard. + +```sql +DELETE FROM datadog.service_management.slos +WHERE slo_id = '{{ slo_id }}' --required +AND force = '{{ force }}' +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Delete (or partially delete) multiple service level objective objects.<br /><br />This endpoint facilitates deletion of one or more thresholds for one or more<br />service level objective objects. If all thresholds are deleted, the service level<br />objective object is deleted as well. + +```sql +EXEC datadog.service_management.slos.delete_slotimeframe_in_bulk +; +``` + + diff --git a/website/docs/services/service_management/statuspage_components/index.md b/website/docs/services/service_management/statuspage_components/index.md new file mode 100644 index 0000000..a02bd49 --- /dev/null +++ b/website/docs/services/service_management/statuspage_components/index.md @@ -0,0 +1,358 @@ +--- +title: statuspage_components +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_components + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_components resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the component.
objectThe attributes of a component.
objectThe relationships of a component.
stringComponents resource type. (components) (default: components, example: components)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the component.
objectThe attributes of a component.
objectThe relationships of a component.
stringComponents resource type. (components) (default: components, example: components)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, component_idincludeRetrieves a specific component by its ID.
page_idincludeLists all components for a status page.
page_idincludeCreates a new component.
page_id, component_idincludeUpdates an existing component's attributes.
page_id, component_idDeletes a component by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the component.
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group.
+ +## `SELECT` examples + + + + +Retrieves a specific component by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_components +WHERE page_id = '{{ page_id }}' -- required +AND component_id = '{{ component_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all components for a status page. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_components +WHERE page_id = '{{ page_id }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new component. + +```sql +INSERT INTO datadog.service_management.statuspage_components ( +data, +page_id, +include +) +SELECT +'{{ data }}', +'{{ page_id }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_components + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_components resource. + - name: data + description: | + The data object for creating a component. + value: + attributes: + components: + - name: "{{ name }}" + position: {{ position }} + type: "{{ type }}" + name: "{{ name }}" + position: {{ position }} + type: "{{ type }}" + relationships: + group: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page, group. +`} + + + + + +## `UPDATE` examples + + + + +Updates an existing component's attributes. + +```sql +UPDATE datadog.service_management.statuspage_components +SET +data = '{{ data }}' +WHERE +page_id = '{{ page_id }}' --required +AND component_id = '{{ component_id }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Deletes a component by its ID. + +```sql +DELETE FROM datadog.service_management.statuspage_components +WHERE page_id = '{{ page_id }}' --required +AND component_id = '{{ component_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/statuspage_degradation_backfills/index.md b/website/docs/services/service_management/statuspage_degradation_backfills/index.md new file mode 100644 index 0000000..1711272 --- /dev/null +++ b/website/docs/services/service_management/statuspage_degradation_backfills/index.md @@ -0,0 +1,155 @@ +--- +title: statuspage_degradation_backfills +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_degradation_backfills + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_degradation_backfills resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_idincludeCreates a backfilled degradation with predefined updates.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.
+ +## `INSERT` examples + + + + +Creates a backfilled degradation with predefined updates. + +```sql +INSERT INTO datadog.service_management.statuspage_degradation_backfills ( +data, +page_id, +include +) +SELECT +'{{ data }}', +'{{ page_id }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_degradation_backfills + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_degradation_backfills resource. + - name: data + description: | + The data object for creating a backfilled degradation. + value: + attributes: + title: "{{ title }}" + updates: + - components_affected: "{{ components_affected }}" + description: "{{ description }}" + started_at: "{{ started_at }}" + status: "{{ status }}" + relationships: + template: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. +`} + + + diff --git a/website/docs/services/service_management/statuspage_degradation_templates/index.md b/website/docs/services/service_management/statuspage_degradation_templates/index.md new file mode 100644 index 0000000..a3fcdc7 --- /dev/null +++ b/website/docs/services/service_management/statuspage_degradation_templates/index.md @@ -0,0 +1,355 @@ +--- +title: statuspage_degradation_templates +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_degradation_templates + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_degradation_templates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the degradation template.
objectThe attributes of a degradation template.
objectThe relationships of a degradation template.
stringDegradation templates resource type. (degradation_templates) (default: degradation_templates, example: degradation_templates)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the degradation template.
objectThe attributes of a degradation template.
objectThe relationships of a degradation template.
stringDegradation templates resource type. (degradation_templates) (default: degradation_templates, example: degradation_templates)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, template_idincludeRetrieves a specific degradation template by its ID.
page_idincludeLists all degradation templates for a status page.
page_idincludeCreates a new degradation template.
template_id, page_idincludeUpdates an existing degradation template's attributes.
page_id, template_idDeletes a degradation template by its ID (soft delete).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The ID of the degradation or maintenance template.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.
+ +## `SELECT` examples + + + + +Retrieves a specific degradation template by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_degradation_templates +WHERE page_id = '{{ page_id }}' -- required +AND template_id = '{{ template_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all degradation templates for a status page. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_degradation_templates +WHERE page_id = '{{ page_id }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new degradation template. + +```sql +INSERT INTO datadog.service_management.statuspage_degradation_templates ( +data, +page_id, +include +) +SELECT +'{{ data }}', +'{{ page_id }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_degradation_templates + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_degradation_templates resource. + - name: data + description: | + The data object for creating a degradation template. + value: + attributes: + components_affected: + - id: "{{ id }}" + name: "{{ name }}" + status: "{{ status }}" + degradation_title: "{{ degradation_title }}" + name: "{{ name }}" + updates: + - message: "{{ message }}" + status: "{{ status }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. +`} + + + + + +## `UPDATE` examples + + + + +Updates an existing degradation template's attributes. + +```sql +UPDATE datadog.service_management.statuspage_degradation_templates +SET +data = '{{ data }}' +WHERE +template_id = '{{ template_id }}' --required +AND page_id = '{{ page_id }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Deletes a degradation template by its ID (soft delete). + +```sql +DELETE FROM datadog.service_management.statuspage_degradation_templates +WHERE page_id = '{{ page_id }}' --required +AND template_id = '{{ template_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/statuspage_degradation_updates/index.md b/website/docs/services/service_management/statuspage_degradation_updates/index.md new file mode 100644 index 0000000..8e8c812 --- /dev/null +++ b/website/docs/services/service_management/statuspage_degradation_updates/index.md @@ -0,0 +1,160 @@ +--- +title: statuspage_degradation_updates +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_degradation_updates + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_degradation_updates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
degradation_id, page_id, update_idincludeEdits a specific degradation update.
degradation_id, page_id, update_idSoft-deletes a degradation update.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the degradation.
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The ID of the degradation update.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, degradation, status_page.
+ +## `UPDATE` examples + + + + +Edits a specific degradation update. + +```sql +UPDATE datadog.service_management.statuspage_degradation_updates +SET +data = '{{ data }}' +WHERE +degradation_id = '{{ degradation_id }}' --required +AND page_id = '{{ page_id }}' --required +AND update_id = '{{ update_id }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Soft-deletes a degradation update. + +```sql +DELETE FROM datadog.service_management.statuspage_degradation_updates +WHERE degradation_id = '{{ degradation_id }}' --required +AND page_id = '{{ page_id }}' --required +AND update_id = '{{ update_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/statuspage_degradations/index.md b/website/docs/services/service_management/statuspage_degradations/index.md new file mode 100644 index 0000000..dcb8bc0 --- /dev/null +++ b/website/docs/services/service_management/statuspage_degradations/index.md @@ -0,0 +1,413 @@ +--- +title: statuspage_degradations +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_degradations + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_degradations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the degradation.
objectThe attributes of a degradation.
objectThe relationships of a degradation.
stringDegradations resource type. (degradations) (default: degradations, example: degradations)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the degradation.
objectThe attributes of a degradation.
objectThe relationships of a degradation.
stringDegradations resource type. (degradations) (default: degradations, example: degradations)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, degradation_idincludeRetrieves a specific degradation by its ID.
filter[page_id], page[offset], page[limit], include, filter[status], sort, filter[source_id]Lists all degradations for the organization. Optionally filter by status and page.
page_idnotify_subscribers, includeCreates a new degradation.
page_id, degradation_idnotify_subscribers, includeUpdates an existing degradation's attributes.
page_id, degradation_idDeletes a degradation by its ID.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the degradation.
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOptional page id filter.
stringOptional source ID filter. Returns only degradations whose source matches this ID (for example, an incident ID).
stringOptional degradation status filter. Supported values: investigating, identified, monitoring, resolved.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.
booleanWhether to notify page subscribers of the degradation.
integer (int64)The number of degradations to return per page.
integer (int64)Offset to use as the start of the page.
stringSort order. Prefix with '-' for descending. Supported values: created_at, -created_at, modified_at, -modified_at.
+ +## `SELECT` examples + + + + +Retrieves a specific degradation by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_degradations +WHERE page_id = '{{ page_id }}' -- required +AND degradation_id = '{{ degradation_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all degradations for the organization. Optionally filter by status and page. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_degradations +WHERE filter[page_id] = '{{ filter[page_id] }}' +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND include = '{{ include }}' +AND filter[status] = '{{ filter[status] }}' +AND sort = '{{ sort }}' +AND filter[source_id] = '{{ filter[source_id] }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new degradation. + +```sql +INSERT INTO datadog.service_management.statuspage_degradations ( +data, +meta, +page_id, +notify_subscribers, +include +) +SELECT +'{{ data }}', +'{{ meta }}', +'{{ page_id }}', +'{{ notify_subscribers }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_degradations + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_degradations resource. + - name: data + description: | + The data object for creating a degradation. + value: + attributes: + components_affected: + - id: "{{ id }}" + name: "{{ name }}" + status: "{{ status }}" + description: "{{ description }}" + status: "{{ status }}" + title: "{{ title }}" + relationships: + template: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: meta + description: | + The supported metadata for creating a degradation. + value: + idempotency_key: "{{ idempotency_key }}" + - name: notify_subscribers + value: {{ notify_subscribers }} + description: Whether to notify page subscribers of the degradation. + description: Whether to notify page subscribers of the degradation. + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. +`} + + + + + +## `UPDATE` examples + + + + +Updates an existing degradation's attributes. + +```sql +UPDATE datadog.service_management.statuspage_degradations +SET +data = '{{ data }}', +meta = '{{ meta }}' +WHERE +page_id = '{{ page_id }}' --required +AND degradation_id = '{{ degradation_id }}' --required +AND notify_subscribers = {{ notify_subscribers}} +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Deletes a degradation by its ID. + +```sql +DELETE FROM datadog.service_management.statuspage_degradations +WHERE page_id = '{{ page_id }}' --required +AND degradation_id = '{{ degradation_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/statuspage_maintenance_backfills/index.md b/website/docs/services/service_management/statuspage_maintenance_backfills/index.md new file mode 100644 index 0000000..e5ce234 --- /dev/null +++ b/website/docs/services/service_management/statuspage_maintenance_backfills/index.md @@ -0,0 +1,155 @@ +--- +title: statuspage_maintenance_backfills +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_maintenance_backfills + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_maintenance_backfills resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_idincludeCreates a backfilled maintenance with predefined updates.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.
+ +## `INSERT` examples + + + + +Creates a backfilled maintenance with predefined updates. + +```sql +INSERT INTO datadog.service_management.statuspage_maintenance_backfills ( +data, +page_id, +include +) +SELECT +'{{ data }}', +'{{ page_id }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_maintenance_backfills + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_maintenance_backfills resource. + - name: data + description: | + The data object for creating a backfilled maintenance. + value: + attributes: + title: "{{ title }}" + updates: + - components_affected: "{{ components_affected }}" + description: "{{ description }}" + started_at: "{{ started_at }}" + status: "{{ status }}" + relationships: + template: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. +`} + + + diff --git a/website/docs/services/service_management/statuspage_maintenance_templates/index.md b/website/docs/services/service_management/statuspage_maintenance_templates/index.md new file mode 100644 index 0000000..2d2ea7f --- /dev/null +++ b/website/docs/services/service_management/statuspage_maintenance_templates/index.md @@ -0,0 +1,353 @@ +--- +title: statuspage_maintenance_templates +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_maintenance_templates + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_maintenance_templates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the maintenance template.
objectThe attributes of a maintenance template.
objectThe relationships of a maintenance template.
stringMaintenance templates resource type. (maintenance_templates) (default: maintenance_templates, example: maintenance_templates)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the maintenance template.
objectThe attributes of a maintenance template.
objectThe relationships of a maintenance template.
stringMaintenance templates resource type. (maintenance_templates) (default: maintenance_templates, example: maintenance_templates)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, template_idincludeRetrieves a specific maintenance template by its ID.
page_idincludeLists all maintenance templates for a status page.
page_idincludeCreates a new maintenance template.
page_id, template_idincludeUpdates an existing maintenance template's attributes.
page_id, template_idDeletes a maintenance template by its ID (soft delete).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The ID of the degradation or maintenance template.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.
+ +## `SELECT` examples + + + + +Retrieves a specific maintenance template by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_maintenance_templates +WHERE page_id = '{{ page_id }}' -- required +AND template_id = '{{ template_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all maintenance templates for a status page. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_maintenance_templates +WHERE page_id = '{{ page_id }}' -- required +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new maintenance template. + +```sql +INSERT INTO datadog.service_management.statuspage_maintenance_templates ( +data, +page_id, +include +) +SELECT +'{{ data }}', +'{{ page_id }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_maintenance_templates + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_maintenance_templates resource. + - name: data + description: | + The data object for creating a maintenance template. + value: + attributes: + completed_description: "{{ completed_description }}" + component_ids: + - "{{ component_ids }}" + in_progress_description: "{{ in_progress_description }}" + maintenance_title: "{{ maintenance_title }}" + name: "{{ name }}" + scheduled_description: "{{ scheduled_description }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. +`} + + + + + +## `UPDATE` examples + + + + +Updates an existing maintenance template's attributes. + +```sql +UPDATE datadog.service_management.statuspage_maintenance_templates +SET +data = '{{ data }}' +WHERE +page_id = '{{ page_id }}' --required +AND template_id = '{{ template_id }}' --required +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Deletes a maintenance template by its ID (soft delete). + +```sql +DELETE FROM datadog.service_management.statuspage_maintenance_templates +WHERE page_id = '{{ page_id }}' --required +AND template_id = '{{ template_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/statuspage_maintenance_updates/index.md b/website/docs/services/service_management/statuspage_maintenance_updates/index.md new file mode 100644 index 0000000..e875805 --- /dev/null +++ b/website/docs/services/service_management/statuspage_maintenance_updates/index.md @@ -0,0 +1,123 @@ +--- +title: statuspage_maintenance_updates +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_maintenance_updates + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_maintenance_updates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, maintenance_id, update_idEdits the message of a specific maintenance update. Editing is allowed regardless of the parent maintenance's status, including completed and canceled maintenances.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the maintenance.
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The ID of the maintenance update.
+ +## `UPDATE` examples + + + + +Edits the message of a specific maintenance update. Editing is allowed regardless of the parent maintenance's status, including completed and canceled maintenances. + +```sql +UPDATE datadog.service_management.statuspage_maintenance_updates +SET +data = '{{ data }}' +WHERE +page_id = '{{ page_id }}' --required +AND maintenance_id = '{{ maintenance_id }}' --required +AND update_id = '{{ update_id }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/service_management/statuspage_maintenances/index.md b/website/docs/services/service_management/statuspage_maintenances/index.md new file mode 100644 index 0000000..a519d21 --- /dev/null +++ b/website/docs/services/service_management/statuspage_maintenances/index.md @@ -0,0 +1,373 @@ +--- +title: statuspage_maintenances +hide_title: false +hide_table_of_contents: false +keywords: + - statuspage_maintenances + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspage_maintenances resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the maintenance.
objectThe attributes of a maintenance.
objectThe relationships of a maintenance.
stringMaintenances resource type. (maintenances) (default: maintenances, example: maintenances)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the maintenance.
objectThe attributes of a maintenance.
objectThe relationships of a maintenance.
stringMaintenances resource type. (maintenances) (default: maintenances, example: maintenances)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_id, maintenance_idincludeRetrieves a specific maintenance by its ID.
filter[page_id], page[offset], page[limit], include, filter[status], sortLists all maintenances for the organization. Optionally filter by status and page.
page_idnotify_subscribers, includeSchedules a new maintenance.
page_id, maintenance_idnotify_subscribers, includeUpdates an existing maintenance's attributes.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the maintenance.
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringOptional page id filter.
stringOptional maintenance status filter. Supported values: scheduled, in_progress, completed.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page.
booleanWhether to notify page subscribers of the maintenance.
integer (int64)The number of maintenances to return per page.
integer (int64)Offset to use as the start of the page.
stringSort order. Prefix with '-' for descending. Supported values: created_at, -created_at, start_date, -start_date.
+ +## `SELECT` examples + + + + +Retrieves a specific maintenance by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_maintenances +WHERE page_id = '{{ page_id }}' -- required +AND maintenance_id = '{{ maintenance_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all maintenances for the organization. Optionally filter by status and page. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspage_maintenances +WHERE filter[page_id] = '{{ filter[page_id] }}' +AND page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND include = '{{ include }}' +AND filter[status] = '{{ filter[status] }}' +AND sort = '{{ sort }}' +; +``` + + + + +## `INSERT` examples + + + + +Schedules a new maintenance. + +```sql +INSERT INTO datadog.service_management.statuspage_maintenances ( +data, +page_id, +notify_subscribers, +include +) +SELECT +'{{ data }}', +'{{ page_id }}', +'{{ notify_subscribers }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspage_maintenances + props: + - name: page_id + value: "{{ page_id }}" + description: Required parameter for the statuspage_maintenances resource. + - name: data + description: | + The data object for creating a maintenance. + value: + attributes: + completed_date: "{{ completed_date }}" + completed_description: "{{ completed_description }}" + components_affected: + - id: "{{ id }}" + name: "{{ name }}" + status: "{{ status }}" + in_progress_description: "{{ in_progress_description }}" + scheduled_description: "{{ scheduled_description }}" + start_date: "{{ start_date }}" + title: "{{ title }}" + relationships: + template: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" + - name: notify_subscribers + value: {{ notify_subscribers }} + description: Whether to notify page subscribers of the maintenance. + description: Whether to notify page subscribers of the maintenance. + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user, status_page. +`} + + + + + +## `UPDATE` examples + + + + +Updates an existing maintenance's attributes. + +```sql +UPDATE datadog.service_management.statuspage_maintenances +SET +data = '{{ data }}' +WHERE +page_id = '{{ page_id }}' --required +AND maintenance_id = '{{ maintenance_id }}' --required +AND notify_subscribers = {{ notify_subscribers}} +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + diff --git a/website/docs/services/service_management/statuspages/index.md b/website/docs/services/service_management/statuspages/index.md new file mode 100644 index 0000000..c8a5c30 --- /dev/null +++ b/website/docs/services/service_management/statuspages/index.md @@ -0,0 +1,421 @@ +--- +title: statuspages +hide_title: false +hide_table_of_contents: false +keywords: + - statuspages + - service_management + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a statuspages resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
objectThe attributes of a status page.
objectThe relationships of a status page.
stringStatus pages resource type. (status_pages) (default: status_pages, example: status_pages)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
objectThe attributes of a status page.
objectThe relationships of a status page.
stringStatus pages resource type. (status_pages) (default: status_pages, example: status_pages)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
page_idincludeRetrieves a specific status page by its ID.
page[offset], page[limit], filter[domain_prefix], includeLists all status pages for the organization.
includeCreates a new status page in an unpublished state. Use the dedicated [publish](#publish-status-page) status page endpoint to publish the page after creation.
page_iddelete_subscribers, includeUpdates an existing status page's attributes. To publish and unpublish status pages, use the dedicated [publish](#publish-status-page) and [unpublish](#unpublish-status-page) status page endpoints.
page_idDeletes a status page by its ID.
page_idPublishes a status page. For pages of type `public`, makes the status page available on the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, makes the status page available under the `status-pages/$domain_prefix/view` route within the Datadog organization and requires the `status_pages_internal_page_publish` permission.
page_idUnpublishes a status page. For pages of type `public`, removes the status page from the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, removes the `status-pages/$domain_prefix/view` route from the Datadog organization and requires the `status_pages_internal_page_publish` permission.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the status page.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanWhether to delete existing subscribers when updating a status page's type.
stringFilter status pages by exact domain prefix match. Returns at most one result.
stringComma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user.
integer (int64)The number of status pages to return per page.
integer (int64)Offset to use as the start of the page.
+ +## `SELECT` examples + + + + +Retrieves a specific status page by its ID. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspages +WHERE page_id = '{{ page_id }}' -- required +AND include = '{{ include }}' +; +``` + + + +Lists all status pages for the organization. + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.service_management.statuspages +WHERE page[offset] = '{{ page[offset] }}' +AND page[limit] = '{{ page[limit] }}' +AND filter[domain_prefix] = '{{ filter[domain_prefix] }}' +AND include = '{{ include }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new status page in an unpublished state. Use the dedicated [publish](#publish-status-page) status page endpoint to publish the page after creation. + +```sql +INSERT INTO datadog.service_management.statuspages ( +data, +include +) +SELECT +'{{ data }}', +'{{ include }}' +RETURNING +data, +included +; +``` + + + +{`# Description fields are for documentation purposes +- name: statuspages + props: + - name: data + description: | + The data object for creating a status page. + value: + attributes: + company_logo: "{{ company_logo }}" + components: + - components: "{{ components }}" + id: "{{ id }}" + name: "{{ name }}" + position: {{ position }} + status: "{{ status }}" + type: "{{ type }}" + domain_prefix: "{{ domain_prefix }}" + email_header_image: "{{ email_header_image }}" + favicon: "{{ favicon }}" + name: "{{ name }}" + slack_app_icon: "{{ slack_app_icon }}" + slack_subscriptions_enabled: {{ slack_subscriptions_enabled }} + subscriptions_enabled: {{ subscriptions_enabled }} + type: "{{ type }}" + visualization_type: "{{ visualization_type }}" + type: "{{ type }}" + - name: include + value: "{{ include }}" + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user. + description: Comma-separated list of resources to include. Supported values: created_by_user, last_modified_by_user. +`} + + + + + +## `UPDATE` examples + + + + +Updates an existing status page's attributes. To publish and unpublish status pages, use the dedicated [publish](#publish-status-page) and [unpublish](#unpublish-status-page) status page endpoints. + +```sql +UPDATE datadog.service_management.statuspages +SET +data = '{{ data }}' +WHERE +page_id = '{{ page_id }}' --required +AND delete_subscribers = {{ delete_subscribers}} +AND include = '{{ include}}' +RETURNING +data, +included; +``` + + + + +## `DELETE` examples + + + + +Deletes a status page by its ID. + +```sql +DELETE FROM datadog.service_management.statuspages +WHERE page_id = '{{ page_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Publishes a status page. For pages of type `public`, makes the status page available on the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, makes the status page available under the `status-pages/$domain_prefix/view` route within the Datadog organization and requires the `status_pages_internal_page_publish` permission. + +```sql +EXEC datadog.service_management.statuspages.publish_status_page +@page_id='{{ page_id }}' --required +; +``` + + + +Unpublishes a status page. For pages of type `public`, removes the status page from the public internet and requires the `status_pages_public_page_publish` permission. For pages of type `internal`, removes the `status-pages/$domain_prefix/view` route from the Datadog organization and requires the `status_pages_internal_page_publish` permission. + +```sql +EXEC datadog.service_management.statuspages.unpublish_status_page +@page_id='{{ page_id }}' --required +; +``` + + diff --git a/website/docs/services/service_management/team_on_call_users/index.md b/website/docs/services/service_management/team_on_call_users/index.md index 5b36cdc..f96aa59 100644 --- a/website/docs/services/service_management/team_on_call_users/index.md +++ b/website/docs/services/service_management/team_on_call_users/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a team_on_call_users resou ## Overview - +
Nameteam_on_call_users
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Represents the resource type for a group of users assigned to handle on-call duties within a team. (default: team_oncall_responders, example: team_oncall_responders) + Represents the resource type for a group of users assigned to handle on-call duties within a team. (team_oncall_responders) (default: team_oncall_responders, example: team_oncall_responders) @@ -86,7 +87,7 @@ The following methods are available for this resource: - team_id, region + team_id include Get a team's on-call users at a given time @@ -106,10 +107,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -143,7 +144,6 @@ relationships, type FROM datadog.service_management.team_on_call_users WHERE team_id = '{{ team_id }}' -- required -AND region = '{{ region }}' -- required AND include = '{{ include }}' ; ``` diff --git a/website/docs/services/software_delivery/ci_app_pipeline_events/index.md b/website/docs/services/software_delivery/ci_app_pipeline_events/index.md index 2e1587e..212f007 100644 --- a/website/docs/services/software_delivery/ci_app_pipeline_events/index.md +++ b/website/docs/services/software_delivery/ci_app_pipeline_events/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a ci_app_pipeline_events r ## Overview - +
Nameci_app_pipeline_events
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of the event. (example: cipipeline) + Type of the event. (cipipeline) (example: cipipeline) @@ -86,30 +87,30 @@ The following methods are available for this resource: - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to see your latest pipeline events. + List endpoint returns CI Visibility pipeline events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to see your latest pipeline events. - region - Send your pipeline event to your Datadog platform over HTTP. For details about how pipeline executions are modeled and what execution types we support, see [Pipeline Data Model And Execution Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/).

Multiple events can be sent in an array (up to 1000).

Pipeline events can be submitted with a timestamp that is up to 18 hours in the past. + + Send your pipeline event to your Datadog platform over HTTP. For details about how pipeline executions are modeled and what execution types we support, see [Pipeline Data Model And Execution Types](https:​//docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/).<br /><br />Multiple events can be sent in an array (up to 1000).<br /><br />Pipeline events can be submitted with a timestamp that is up to 18 hours in the past.<br />The duration between the event start and end times cannot exceed 1 year. - region + Use this API endpoint to aggregate CI Visibility pipeline events into buckets of computed metrics and timeseries. - region - List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to build complex events filtering and search. + + List endpoint returns CI Visibility pipeline events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to build complex events filtering and search. @@ -127,10 +128,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -175,7 +176,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List endpoint returns CI Visibility pipeline events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to see your latest pipeline events. +List endpoint returns CI Visibility pipeline events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to see your latest pipeline events. ```sql SELECT @@ -183,8 +184,7 @@ id, attributes, type FROM datadog.software_delivery.ci_app_pipeline_events -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -207,39 +207,98 @@ AND page[limit] = '{{ page[limit] }}' > -Send your pipeline event to your Datadog platform over HTTP. For details about how pipeline executions are modeled and what execution types we support, see [Pipeline Data Model And Execution Types](https://docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/).

Multiple events can be sent in an array (up to 1000).

Pipeline events can be submitted with a timestamp that is up to 18 hours in the past. +Send your pipeline event to your Datadog platform over HTTP. For details about how pipeline executions are modeled and what execution types we support, see [Pipeline Data Model And Execution Types](https:​//docs.datadoghq.com/continuous_integration/guides/pipeline_data_model/).<br /><br />Multiple events can be sent in an array (up to 1000).<br /><br />Pipeline events can be submitted with a timestamp that is up to 18 hours in the past.<br />The duration between the event start and end times cannot exceed 1 year. ```sql INSERT INTO datadog.software_delivery.ci_app_pipeline_events ( -data__data, -region +data ) SELECT -'{{ data }}', -'{{ region }}' +'{{ data }}' ; ```
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: ci_app_pipeline_events props: - - name: region - value: string - description: Required parameter for the ci_app_pipeline_events resource. - name: data - value: string description: | Data of the pipeline events to create. -``` + value: + attributes: + env: "{{ env }}" + provider_name: "{{ provider_name }}" + resource: + end: "{{ end }}" + error: + domain: "{{ domain }}" + message: "{{ message }}" + stack: "{{ stack }}" + type: "{{ type }}" + git: + author_email: "{{ author_email }}" + author_name: "{{ author_name }}" + author_time: "{{ author_time }}" + branch: "{{ branch }}" + commit_time: "{{ commit_time }}" + committer_email: "{{ committer_email }}" + committer_name: "{{ committer_name }}" + default_branch: "{{ default_branch }}" + message: "{{ message }}" + repository_url: "{{ repository_url }}" + sha: "{{ sha }}" + tag: "{{ tag }}" + is_manual: {{ is_manual }} + is_resumed: {{ is_resumed }} + level: "{{ level }}" + metrics: + - "{{ metrics }}" + name: "{{ name }}" + node: + hostname: "{{ hostname }}" + labels: + - "{{ labels }}" + name: "{{ name }}" + workspace: "{{ workspace }}" + parameters: "{{ parameters }}" + parent_pipeline: + id: "{{ id }}" + url: "{{ url }}" + partial_retry: {{ partial_retry }} + pipeline_id: "{{ pipeline_id }}" + previous_attempt: + id: "{{ id }}" + url: "{{ url }}" + queue_time: {{ queue_time }} + start: "{{ start }}" + status: "{{ status }}" + tags: + - "{{ tags }}" + unique_id: "{{ unique_id }}" + url: "{{ url }}" + dependencies: + - "{{ dependencies }}" + id: "{{ id }}" + pipeline_name: "{{ pipeline_name }}" + pipeline_unique_id: "{{ pipeline_unique_id }}" + stage_id: "{{ stage_id }}" + stage_name: "{{ stage_name }}" + job_id: "{{ job_id }}" + job_name: "{{ job_name }}" + service: "{{ service }}" + type: "{{ type }}" +`} + ## Lifecycle Methods +EXEC variables use wire (API) names. + ci_app_test_events
resou ## Overview - +
Nameci_app_test_events
Name
TypeResource
Id
@@ -61,7 +62,7 @@ The following fields are returned by `SELECT` queries: string - Type of the event. (example: citest) + Type of the event. (citest) (example: citest) @@ -86,21 +87,21 @@ The following methods are available for this resource: - region + filter[query], filter[from], filter[to], sort, page[cursor], page[limit] - List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to see your latest test events. + List endpoint returns CI Visibility test events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to see your latest test events. - region - List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to build complex events filtering and search. + + List endpoint returns CI Visibility test events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to build complex events filtering and search. - region + The API endpoint to aggregate CI Visibility test events into buckets of computed metrics and timeseries. @@ -120,10 +121,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -168,7 +169,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to see your latest test events. +List endpoint returns CI Visibility test events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to see your latest test events. ```sql SELECT @@ -176,8 +177,7 @@ id, attributes, type FROM datadog.software_delivery.ci_app_test_events -WHERE region = '{{ region }}' -- required -AND filter[query] = '{{ filter[query] }}' +WHERE filter[query] = '{{ filter[query] }}' AND filter[from] = '{{ filter[from] }}' AND filter[to] = '{{ filter[to] }}' AND sort = '{{ sort }}' @@ -200,22 +200,20 @@ AND page[limit] = '{{ page[limit] }}' > -List endpoint returns CI Visibility test events that match a [search query](https://docs.datadoghq.com/continuous_integration/explorer/search_syntax/).
[Results are paginated similarly to logs](https://docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).

Use this endpoint to build complex events filtering and search. +List endpoint returns CI Visibility test events that match a [search query](https:​//docs.datadoghq.com/continuous_integration/explorer/search_syntax/).<br />[Results are paginated similarly to logs](https:​//docs.datadoghq.com/logs/guide/collect-multiple-logs-with-pagination).<br /><br />Use this endpoint to build complex events filtering and search. ```sql INSERT INTO datadog.software_delivery.ci_app_test_events ( -data__filter, -data__options, -data__page, -data__sort, -region +filter, +options, +page, +sort ) SELECT '{{ filter }}', '{{ options }}', '{{ page }}', -'{{ sort }}', -'{{ region }}' +'{{ sort }}' RETURNING data, links, @@ -225,38 +223,44 @@ meta
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: ci_app_test_events props: - - name: region - value: string - description: Required parameter for the ci_app_test_events resource. - name: filter - value: object description: | The search and filter query settings. + value: + from: "{{ from }}" + query: "{{ query }}" + to: "{{ to }}" - name: options - value: object description: | Global query options that are used during the query. Only supply timezone or time offset, not both. Otherwise, the query fails. + value: + time_offset: {{ time_offset }} + timezone: "{{ timezone }}" - name: page - value: object description: | Paging attributes for listing events. + value: + cursor: "{{ cursor }}" + limit: {{ limit }} - name: sort - value: string + value: "{{ sort }}" description: | Sort parameters when querying events. valid_values: ['timestamp', '-timestamp'] -``` +`} + ## Lifecycle Methods +EXEC variables use wire (API) names. + ci_github_accounts
resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe account's unique identifier, in the form `<host>/<account name>` (for example `github.com/datadog`). (example: github.com/datadog)
objectAttributes describing a GitHub account's CI Visibility opt-in status.
stringJSON:API type for the GitHub account resource. The value must always be `ci_github_account`. (ci_github_account) (example: ci_github_account)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
Retrieve the list of GitHub accounts (organizations or users) available to this Datadog organization<br />through its GitHub App installation, along with each account's and repository's CI Visibility opt-in status.
dataEnable or disable CI Visibility for a GitHub account, one of its repositories, or both in the same request.<br />The account (and, optionally, repository) are identified by name. Account-level and repository-level<br />changes are independent and may both be supplied in the same request. At least one of `enabled` or<br />`repository.enabled` must be provided. If the account name matches installations on more than one host,<br />`host` must be supplied to disambiguate, otherwise a 409 is returned. Returns a 404 if the CI Visibility<br />GitHub integration is not enabled for this organization, or if the given account or repository cannot be<br />found by name.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieve the list of GitHub accounts (organizations or users) available to this Datadog organization<br />through its GitHub App installation, along with each account's and repository's CI Visibility opt-in status. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.ci_github_accounts +; +``` + + + + +## `UPDATE` examples + + + + +Enable or disable CI Visibility for a GitHub account, one of its repositories, or both in the same request.<br />The account (and, optionally, repository) are identified by name. Account-level and repository-level<br />changes are independent and may both be supplied in the same request. At least one of `enabled` or<br />`repository.enabled` must be provided. If the account name matches installations on more than one host,<br />`host` must be supplied to disambiguate, otherwise a 409 is returned. Returns a 404 if the CI Visibility<br />GitHub integration is not enabled for this organization, or if the given account or repository cannot be<br />found by name. + +```sql +UPDATE datadog.software_delivery.ci_github_accounts +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/software_delivery/ci_test_optimization_setting_policies/index.md b/website/docs/services/software_delivery/ci_test_optimization_setting_policies/index.md new file mode 100644 index 0000000..9a4405e --- /dev/null +++ b/website/docs/services/software_delivery/ci_test_optimization_setting_policies/index.md @@ -0,0 +1,155 @@ +--- +title: ci_test_optimization_setting_policies +hide_title: false +hide_table_of_contents: false +keywords: + - ci_test_optimization_setting_policies + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ci_test_optimization_setting_policies resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataRetrieve Flaky Tests Management repository-level policies for the given repository.
dataPartially update Flaky Tests Management repository-level policies for the given repository.<br />Only provided policy blocks are updated; omitted blocks are left unchanged.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Retrieve Flaky Tests Management repository-level policies for the given repository. + +```sql +INSERT INTO datadog.software_delivery.ci_test_optimization_setting_policies ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: ci_test_optimization_setting_policies + props: + - name: data + description: | + Data object for get Flaky Tests Management policies request. + value: + attributes: + repository_id: "{{ repository_id }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update Flaky Tests Management repository-level policies for the given repository.<br />Only provided policy blocks are updated; omitted blocks are left unchanged. + +```sql +UPDATE datadog.software_delivery.ci_test_optimization_setting_policies +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/software_delivery/ci_test_optimization_setting_services/index.md b/website/docs/services/software_delivery/ci_test_optimization_setting_services/index.md new file mode 100644 index 0000000..2d26b8a --- /dev/null +++ b/website/docs/services/software_delivery/ci_test_optimization_setting_services/index.md @@ -0,0 +1,184 @@ +--- +title: ci_test_optimization_setting_services +hide_title: false +hide_table_of_contents: false +keywords: + - ci_test_optimization_setting_services + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a ci_test_optimization_setting_services resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataRetrieve Test Optimization settings for a specific service identified by repository, service name, and environment.
dataPartially update Test Optimization settings for a specific service identified by repository, service name, and environment.<br />Only provided fields are updated; setting a field to `null` is a no-op.<br />To reset a setting to inherit from the repository level, use the corresponding `<setting>_inherit` field.<br />The `pr_comments_enabled` field is ignored as it cannot be overridden at the service level.
Delete Test Optimization settings for a specific service identified by repository, service name, and environment.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Retrieve Test Optimization settings for a specific service identified by repository, service name, and environment. + +```sql +INSERT INTO datadog.software_delivery.ci_test_optimization_setting_services ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: ci_test_optimization_setting_services + props: + - name: data + description: | + Data object for get service settings request. + value: + attributes: + env: "{{ env }}" + repository_id: "{{ repository_id }}" + service_name: "{{ service_name }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Partially update Test Optimization settings for a specific service identified by repository, service name, and environment.<br />Only provided fields are updated; setting a field to `null` is a no-op.<br />To reset a setting to inherit from the repository level, use the corresponding `<setting>_inherit` field.<br />The `pr_comments_enabled` field is ignored as it cannot be overridden at the service level. + +```sql +UPDATE datadog.software_delivery.ci_test_optimization_setting_services +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Delete Test Optimization settings for a specific service identified by repository, service name, and environment. + +```sql +DELETE FROM datadog.software_delivery.ci_test_optimization_setting_services +; +``` + + diff --git a/website/docs/services/software_delivery/code_coverage_branch_summaries/index.md b/website/docs/services/software_delivery/code_coverage_branch_summaries/index.md new file mode 100644 index 0000000..a94c084 --- /dev/null +++ b/website/docs/services/software_delivery/code_coverage_branch_summaries/index.md @@ -0,0 +1,107 @@ +--- +title: code_coverage_branch_summaries +hide_title: false +hide_table_of_contents: false +keywords: + - code_coverage_branch_summaries + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a code_coverage_branch_summaries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataRetrieve aggregated code coverage statistics for a specific branch in a repository.<br />This endpoint provides overall coverage metrics as well as breakdowns by service<br />and code owner.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Retrieve aggregated code coverage statistics for a specific branch in a repository.<br />This endpoint provides overall coverage metrics as well as breakdowns by service<br />and code owner. + +```sql +EXEC datadog.software_delivery.code_coverage_branch_summaries.get_code_coverage_branch_summary +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/software_delivery/code_coverage_commit_summaries/index.md b/website/docs/services/software_delivery/code_coverage_commit_summaries/index.md new file mode 100644 index 0000000..ca306a5 --- /dev/null +++ b/website/docs/services/software_delivery/code_coverage_commit_summaries/index.md @@ -0,0 +1,107 @@ +--- +title: code_coverage_commit_summaries +hide_title: false +hide_table_of_contents: false +keywords: + - code_coverage_commit_summaries + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a code_coverage_commit_summaries resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
dataRetrieve aggregated code coverage statistics for a specific commit in a repository.<br />This endpoint provides overall coverage metrics as well as breakdowns by service<br />and code owner.<br /><br />The commit SHA must be a 40-character hexadecimal string (SHA-1 hash).
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Retrieve aggregated code coverage statistics for a specific commit in a repository.<br />This endpoint provides overall coverage metrics as well as breakdowns by service<br />and code owner.<br /><br />The commit SHA must be a 40-character hexadecimal string (SHA-1 hash). + +```sql +EXEC datadog.software_delivery.code_coverage_commit_summaries.get_code_coverage_commit_summary +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/software_delivery/deployment_gate_evaluations/index.md b/website/docs/services/software_delivery/deployment_gate_evaluations/index.md new file mode 100644 index 0000000..f029a5f --- /dev/null +++ b/website/docs/services/software_delivery/deployment_gate_evaluations/index.md @@ -0,0 +1,178 @@ +--- +title: deployment_gate_evaluations +hide_title: false +hide_table_of_contents: false +keywords: + - deployment_gate_evaluations + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a deployment_gate_evaluations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe unique identifier of the evaluation. (example: e9d2f04f-4f4b-494b-86e5-52f03e10c8e9)
objectAttributes for a deployment gate evaluation result response.
stringJSON:API type for a deployment gate evaluation result response. (deployment_gates_evaluation_result_response) (default: deployment_gates_evaluation_result_response, example: deployment_gates_evaluation_result_response)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idRetrieves the result of a deployment gate evaluation by its evaluation ID.<br />If the evaluation is still in progress, `data.attributes.gate_status` will be `in_progress`;<br />continue polling until it returns `pass` or `fail`.<br />Polling every 10-20 seconds is recommended.<br />The endpoint may return a 404 if called too soon after triggering; retry after a few seconds.
dataTriggers an asynchronous deployment gate evaluation for the given service and environment.<br />Returns an evaluation ID that can be used to poll for the result via the<br />`GET /api/v2/deployments/gates/evaluation/{id}` endpoint.<br /><br />When the `configuration` attribute is provided, rules are evaluated inline from that configuration<br />and no pre-configured gate is required. When `configuration` is omitted, rules are resolved from the<br />gate pre-configured for the given service and environment through the Datadog UI, API, or Terraform.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The evaluation ID returned by the trigger endpoint.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Retrieves the result of a deployment gate evaluation by its evaluation ID.<br />If the evaluation is still in progress, `data.attributes.gate_status` will be `in_progress`;<br />continue polling until it returns `pass` or `fail`.<br />Polling every 10-20 seconds is recommended.<br />The endpoint may return a 404 if called too soon after triggering; retry after a few seconds. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.deployment_gate_evaluations +WHERE id = '{{ id }}' -- required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Triggers an asynchronous deployment gate evaluation for the given service and environment.<br />Returns an evaluation ID that can be used to poll for the result via the<br />`GET /api/v2/deployments/gates/evaluation/{id}` endpoint.<br /><br />When the `configuration` attribute is provided, rules are evaluated inline from that configuration<br />and no pre-configured gate is required. When `configuration` is omitted, rules are resolved from the<br />gate pre-configured for the given service and environment through the Datadog UI, API, or Terraform. + +```sql +EXEC datadog.software_delivery.deployment_gate_evaluations.trigger_deployment_gates_evaluation +@@json= +'{ +"data": "{{ data }}" +}' +; +``` + + diff --git a/website/docs/services/software_delivery/deployment_gate_rules/index.md b/website/docs/services/software_delivery/deployment_gate_rules/index.md new file mode 100644 index 0000000..81dd1fd --- /dev/null +++ b/website/docs/services/software_delivery/deployment_gate_rules/index.md @@ -0,0 +1,329 @@ +--- +title: deployment_gate_rules +hide_title: false +hide_table_of_contents: false +keywords: + - deployment_gate_rules + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a deployment_gate_rules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the deployment rule. (example: 1111-2222-3333-4444-555566667777)
objectBasic information about a deployment rule.
stringDeployment rule resource type. (deployment_rule) (example: deployment_rule)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the deployment rule. (example: 1111-2222-3333-4444-555566667777)
objectAttributes of the response for listing deployment rules.
stringList deployment rule resource type. (list_deployment_rules) (example: list_deployment_rules)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
gate_id, idEndpoint to get a deployment rule.
gate_idEndpoint to get rules for a deployment gate.
gate_idEndpoint to create a deployment rule. A gate for the rule must already exist.
gate_id, id, dataEndpoint to update a deployment rule.
gate_id, idEndpoint to delete a deployment rule.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the deployment gate.
stringThe ID of the deployment rule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `SELECT` examples + + + + +Endpoint to get a deployment rule. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.deployment_gate_rules +WHERE gate_id = '{{ gate_id }}' -- required +AND id = '{{ id }}' -- required +; +``` + + + +Endpoint to get rules for a deployment gate. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.deployment_gate_rules +WHERE gate_id = '{{ gate_id }}' -- required +; +``` + + + + +## `INSERT` examples + + + + +Endpoint to create a deployment rule. A gate for the rule must already exist. + +```sql +INSERT INTO datadog.software_delivery.deployment_gate_rules ( +data, +gate_id +) +SELECT +'{{ data }}', +'{{ gate_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: deployment_gate_rules + props: + - name: gate_id + value: "{{ gate_id }}" + description: Required parameter for the deployment_gate_rules resource. + - name: data + description: | + Parameters for creating a deployment rule. + value: + attributes: + dry_run: {{ dry_run }} + name: "{{ name }}" + options: + allowed_resources: + - "{{ allowed_resources }}" + duration: {{ duration }} + excluded_resources: + - "{{ excluded_resources }}" + query: "{{ query }}" + type: "{{ type }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Endpoint to update a deployment rule. + +```sql +REPLACE datadog.software_delivery.deployment_gate_rules +SET +data = '{{ data }}' +WHERE +gate_id = '{{ gate_id }}' --required +AND id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Endpoint to delete a deployment rule. + +```sql +DELETE FROM datadog.software_delivery.deployment_gate_rules +WHERE gate_id = '{{ gate_id }}' --required +AND id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/deployment_gates/index.md b/website/docs/services/software_delivery/deployment_gates/index.md new file mode 100644 index 0000000..da1842c --- /dev/null +++ b/website/docs/services/software_delivery/deployment_gates/index.md @@ -0,0 +1,321 @@ +--- +title: deployment_gates +hide_title: false +hide_table_of_contents: false +keywords: + - deployment_gates + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a deployment_gates resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the deployment gate. (example: 1111-2222-3333-4444-555566667777)
objectBasic information about a deployment gate.
stringDeployment gate resource type. (deployment_gate) (example: deployment_gate)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringUnique identifier of the deployment gate. (example: 1111-2222-3333-4444-555566667777)
objectBasic information about a deployment gate.
stringDeployment gate resource type. (deployment_gate) (example: deployment_gate)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
idEndpoint to get a deployment gate.
page[cursor], page[size]Returns a paginated list of all deployment gates for the organization.<br />Use `page[cursor]` and `page[size]` query parameters to paginate through results.
dataEndpoint to create a deployment gate.
id, dataEndpoint to update a deployment gate.
idEndpoint to delete a deployment gate. Rules associated with the gate are also deleted.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe ID of the deployment gate.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringCursor for pagination. Use the `meta.page.next_cursor` value from the previous response.
integer (int64)Number of results per page. Defaults to 50. Must be between 1 and 1000.
+ +## `SELECT` examples + + + + +Endpoint to get a deployment gate. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.deployment_gates +WHERE id = '{{ id }}' -- required +; +``` + + + +Returns a paginated list of all deployment gates for the organization.<br />Use `page[cursor]` and `page[size]` query parameters to paginate through results. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.deployment_gates +WHERE page[cursor] = '{{ page[cursor] }}' +AND page[size] = '{{ page[size] }}' +; +``` + + + + +## `INSERT` examples + + + + +Endpoint to create a deployment gate. + +```sql +INSERT INTO datadog.software_delivery.deployment_gates ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: deployment_gates + props: + - name: data + description: | + Parameters for creating a deployment gate. + value: + attributes: + dry_run: {{ dry_run }} + env: "{{ env }}" + identifier: "{{ identifier }}" + service: "{{ service }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Endpoint to update a deployment gate. + +```sql +REPLACE datadog.software_delivery.deployment_gates +SET +data = '{{ data }}' +WHERE +id = '{{ id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Endpoint to delete a deployment gate. Rules associated with the gate are also deleted. + +```sql +DELETE FROM datadog.software_delivery.deployment_gates +WHERE id = '{{ id }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/dora_deployments/index.md b/website/docs/services/software_delivery/dora_deployments/index.md index d48f850..f28c80b 100644 --- a/website/docs/services/software_delivery/dora_deployments/index.md +++ b/website/docs/services/software_delivery/dora_deployments/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a dora_deployments resourc ## Overview - +
Namedora_deployments
Name
TypeResource
Id
@@ -52,17 +53,17 @@ The following fields are returned by `SELECT` queries: string - The ID of the event. + The ID of the deployment event. object - The attributes of the event. + The attributes of the deployment event. string - The type of the event. + JSON:API type for DORA deployment events. (dora_deployment) (default: dora_deployment, example: dora_deployment) @@ -81,7 +82,7 @@ The following fields are returned by `SELECT` queries: array - The list of DORA events. + The list of DORA deployment events. @@ -106,23 +107,44 @@ The following methods are available for this resource: - deployment_id, region + deployment_id Use this API endpoint to get a deployment event. - region + Use this API endpoint to get a list of deployment events. - region, data__data + data + + Use this API endpoint to provide deployment data.<br /><br />This is necessary for:<br />- Deployment Frequency<br />- Change Lead Time<br />- Change Failure Rate<br />- Failed Deployment Recovery Time + + + + + deployment_id, data + + Update a deployment's change failure status. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. + + + + + data + + Update a deployment's change failure status, identifying the deployment by its service, environment, and version instead of its ID. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. If multiple deployments match the given service, environment, and version, the most recently finished one is updated. + + + + + deployment_id - Use this API endpoint to provide data about deployments for DORA metrics.

This is necessary for:
- Deployment Frequency
- Change Lead Time
- Change Failure Rate + Use this API endpoint to delete a deployment event. @@ -143,12 +165,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - The ID of the deployment event. + The ID of the deployment event to delete. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -173,7 +195,6 @@ attributes, type FROM datadog.software_delivery.dora_deployments WHERE deployment_id = '{{ deployment_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -185,7 +206,6 @@ Use this API endpoint to get a list of deployment events. SELECT data FROM datadog.software_delivery.dora_deployments -WHERE region = '{{ region }}' -- required ; ``` @@ -203,16 +223,14 @@ WHERE region = '{{ region }}' -- required > -Use this API endpoint to provide data about deployments for DORA metrics.

This is necessary for:
- Deployment Frequency
- Change Lead Time
- Change Failure Rate +Use this API endpoint to provide deployment data.<br /><br />This is necessary for:<br />- Deployment Frequency<br />- Change Lead Time<br />- Change Failure Rate<br />- Failed Deployment Recovery Time ```sql INSERT INTO datadog.software_delivery.dora_deployments ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -220,17 +238,85 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: dora_deployments props: - - name: region - value: string - description: Required parameter for the dora_deployments resource. - name: data - value: object description: | The JSON:API data. + value: + attributes: + custom_tags: + - "{{ custom_tags }}" + env: "{{ env }}" + finished_at: {{ finished_at }} + git: + commit_sha: "{{ commit_sha }}" + repository_url: "{{ repository_url }}" + id: "{{ id }}" + service: "{{ service }}" + started_at: {{ started_at }} + team: "{{ team }}" + version: "{{ version }}" +`} + + + + + +## `UPDATE` examples + + + + +Update a deployment's change failure status. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. + +```sql +UPDATE datadog.software_delivery.dora_deployments +SET +data = '{{ data }}' +WHERE +deployment_id = '{{ deployment_id }}' --required +AND data = '{{ data }}' --required; +``` + + + +Update a deployment's change failure status, identifying the deployment by its service, environment, and version instead of its ID. Use this to mark a deployment as a change failure or back to stable. You can optionally include remediation details to enable failed deployment recovery time calculation. If multiple deployments match the given service, environment, and version, the most recently finished one is updated. + +```sql +UPDATE datadog.software_delivery.dora_deployments +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required; +``` + + + + +## `DELETE` examples + + + + +Use this API endpoint to delete a deployment event. + +```sql +DELETE FROM datadog.software_delivery.dora_deployments +WHERE deployment_id = '{{ deployment_id }}' --required +; ``` diff --git a/website/docs/services/software_delivery/dora_failures/index.md b/website/docs/services/software_delivery/dora_failures/index.md index c896963..5b2da22 100644 --- a/website/docs/services/software_delivery/dora_failures/index.md +++ b/website/docs/services/software_delivery/dora_failures/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a dora_failures resource. ## Overview - +
Namedora_failures
Name
TypeResource
Id
@@ -52,17 +53,17 @@ The following fields are returned by `SELECT` queries: string - The ID of the event. + The ID of the incident event. object - The attributes of the event. + The attributes of the incident event. string - The type of the event. + JSON:API type for DORA incident events. (dora_failure) (default: dora_failure, example: dora_failure) @@ -81,7 +82,7 @@ The following fields are returned by `SELECT` queries: array - The list of DORA events. + The list of DORA incident events. @@ -106,23 +107,30 @@ The following methods are available for this resource: - failure_id, region + failure_id - Use this API endpoint to get a failure event. + Use this API endpoint to get an incident event. - region - Use this API endpoint to get a list of failure events. + + Use this API endpoint to get a list of incident events. - region, data__data + data - Use this API endpoint to provide failure data for DORA metrics.

This is necessary for:
- Change Failure Rate
- Time to Restore + Use this API endpoint to provide incident data for DORA Metrics.<br />Note that change failure rate and failed deployment recovery time are computed from change failures detected on deployments, not from incident events sent through this endpoint.<br />Tracking incidents gives a side-by-side view of how failed deployments translate into real-world incidents, including their severity and frequency. + + + + + failure_id + + Use this API endpoint to delete an incident event. @@ -143,12 +151,12 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string - The ID of the failure event. + The ID of the incident event to delete. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -164,7 +172,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# > -Use this API endpoint to get a failure event. +Use this API endpoint to get an incident event. ```sql SELECT @@ -173,19 +181,17 @@ attributes, type FROM datadog.software_delivery.dora_failures WHERE failure_id = '{{ failure_id }}' -- required -AND region = '{{ region }}' -- required ; ``` -Use this API endpoint to get a list of failure events. +Use this API endpoint to get a list of incident events. ```sql SELECT data FROM datadog.software_delivery.dora_failures -WHERE region = '{{ region }}' -- required ; ``` @@ -203,16 +209,14 @@ WHERE region = '{{ region }}' -- required > -Use this API endpoint to provide failure data for DORA metrics.

This is necessary for:
- Change Failure Rate
- Time to Restore +Use this API endpoint to provide incident data for DORA Metrics.<br />Note that change failure rate and failed deployment recovery time are computed from change failures detected on deployments, not from incident events sent through this endpoint.<br />Tracking incidents gives a side-by-side view of how failed deployments translate into real-world incidents, including their severity and frequency. ```sql INSERT INTO datadog.software_delivery.dora_failures ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -220,17 +224,51 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: dora_failures props: - - name: region - value: string - description: Required parameter for the dora_failures resource. - name: data - value: object description: | The JSON:API data. + value: + attributes: + custom_tags: + - "{{ custom_tags }}" + env: "{{ env }}" + finished_at: {{ finished_at }} + git: + commit_sha: "{{ commit_sha }}" + repository_url: "{{ repository_url }}" + id: "{{ id }}" + name: "{{ name }}" + services: + - "{{ services }}" + severity: "{{ severity }}" + started_at: {{ started_at }} + team: "{{ team }}" + version: "{{ version }}" +`} + + + + + +## `DELETE` examples + + + + +Use this API endpoint to delete an incident event. + +```sql +DELETE FROM datadog.software_delivery.dora_failures +WHERE failure_id = '{{ failure_id }}' --required +; ``` diff --git a/website/docs/services/software_delivery/dora_incidents/index.md b/website/docs/services/software_delivery/dora_incidents/index.md deleted file mode 100644 index 1aed4d1..0000000 --- a/website/docs/services/software_delivery/dora_incidents/index.md +++ /dev/null @@ -1,124 +0,0 @@ ---- -title: dora_incidents -hide_title: false -hide_table_of_contents: false -keywords: - - dora_incidents - - software_delivery - - datadog - - infrastructure-as-code - - configuration-as-data - - cloud inventory -description: Query, deploy and manage datadog resources using SQL -custom_edit_url: null -image: /img/stackql-datadog-provider-featured-image.png ---- - -import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -Creates, updates, deletes, gets or lists a dora_incidents resource. - -## Overview - - - - -
Namedora_incidents
TypeResource
Id
- -## Fields - -The following fields are returned by `SELECT` queries: - -`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. - - -## Methods - -The following methods are available for this resource: - - - - - - - - - - - - - - - - - - - - -
NameAccessible byRequired ParamsOptional ParamsDescription
region, data__data**Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` instead.

Use this API endpoint to provide failure data for DORA metrics.

This is necessary for:
- Change Failure Rate
- Time to Restore
- -## Parameters - -Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. - - - - - - - - - - - - - - - - -
NameDatatypeDescription
string(default: datadoghq.com)
- -## `INSERT` examples - - - - -**Note**: This endpoint is deprecated. Please use `/api/v2/dora/failure` instead.

Use this API endpoint to provide failure data for DORA metrics.

This is necessary for:
- Change Failure Rate
- Time to Restore - -```sql -INSERT INTO datadog.software_delivery.dora_incidents ( -data__data, -region -) -SELECT -'{{ data }}' /* required */, -'{{ region }}' -RETURNING -data -; -``` -
- - -```yaml -# Description fields are for documentation purposes -- name: dora_incidents - props: - - name: region - value: string - description: Required parameter for the dora_incidents resource. - - name: data - value: object - description: | - The JSON:API data. -``` - -
diff --git a/website/docs/services/software_delivery/feature_flag_environment_allocations/index.md b/website/docs/services/software_delivery/feature_flag_environment_allocations/index.md new file mode 100644 index 0000000..b5c872f --- /dev/null +++ b/website/docs/services/software_delivery/feature_flag_environment_allocations/index.md @@ -0,0 +1,205 @@ +--- +title: feature_flag_environment_allocations +hide_title: false +hide_table_of_contents: false +keywords: + - feature_flag_environment_allocations + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a feature_flag_environment_allocations resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
feature_flag_id, environment_id, dataCreates a new targeting rule (allocation) for a specific feature flag in a specific environment.
feature_flag_id, environment_id, dataUpdates targeting rules (allocations) for a specific feature flag in a specific environment.<br />This operation replaces the existing allocation set with the request payload.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the environment.
string (uuid)The ID of the feature flag.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +Creates a new targeting rule (allocation) for a specific feature flag in a specific environment. + +```sql +INSERT INTO datadog.software_delivery.feature_flag_environment_allocations ( +data, +feature_flag_id, +environment_id +) +SELECT +'{{ data }}' /* required */, +'{{ feature_flag_id }}', +'{{ environment_id }}' +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: feature_flag_environment_allocations + props: + - name: feature_flag_id + value: "{{ feature_flag_id }}" + description: Required parameter for the feature_flag_environment_allocations resource. + - name: environment_id + value: "{{ environment_id }}" + description: Required parameter for the feature_flag_environment_allocations resource. + - name: data + description: | + Data wrapper for allocation request payloads. + value: + attributes: + experiment_id: "{{ experiment_id }}" + exposure_schedule: + absolute_start_time: "{{ absolute_start_time }}" + control_variant_id: "{{ control_variant_id }}" + control_variant_key: "{{ control_variant_key }}" + id: "{{ id }}" + rollout_options: + autostart: {{ autostart }} + selection_interval_ms: {{ selection_interval_ms }} + strategy: "{{ strategy }}" + rollout_steps: + - exposure_ratio: {{ exposure_ratio }} + grouped_step_index: {{ grouped_step_index }} + id: "{{ id }}" + interval_ms: {{ interval_ms }} + is_pause_record: {{ is_pause_record }} + guardrail_metrics: + - metric_id: "{{ metric_id }}" + trigger_action: "{{ trigger_action }}" + id: "{{ id }}" + key: "{{ key }}" + name: "{{ name }}" + targeting_rules: + - conditions: "{{ conditions }}" + type: "{{ type }}" + variant_weights: + - value: {{ value }} + variant_id: "{{ variant_id }}" + variant_key: "{{ variant_key }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates targeting rules (allocations) for a specific feature flag in a specific environment.<br />This operation replaces the existing allocation set with the request payload. + +```sql +REPLACE datadog.software_delivery.feature_flag_environment_allocations +SET +data = '{{ data }}' +WHERE +feature_flag_id = '{{ feature_flag_id }}' --required +AND environment_id = '{{ environment_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/software_delivery/feature_flag_environments/index.md b/website/docs/services/software_delivery/feature_flag_environments/index.md new file mode 100644 index 0000000..b5450db --- /dev/null +++ b/website/docs/services/software_delivery/feature_flag_environments/index.md @@ -0,0 +1,395 @@ +--- +title: feature_flag_environments +hide_title: false +hide_table_of_contents: false +keywords: + - feature_flag_environments + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a feature_flag_environments resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the environment. (example: 550e8400-e29b-41d4-a716-446655440001)
objectAttributes of an environment.
stringThe resource type. (environments) (example: environments)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the environment. (example: 550e8400-e29b-41d4-a716-446655440001)
objectAttributes of an environment.
stringThe resource type. (environments) (example: environments)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
environment_idReturns the details of a specific environment.
name, key, dd_env, limit, offsetReturns a list of environments for the organization.<br />Supports filtering by name, key, and DD_ENV.
dataCreates a new environment for organizing feature flags.
environment_id, dataUpdates an existing environment's metadata such as<br /> name and description.
environment_idDeletes an environment. This operation cannot be undone.
feature_flag_id, environment_idDisable a feature flag in a specific environment.
feature_flag_id, environment_idEnable a feature flag in a specific environment.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the environment.
string (uuid)The ID of the feature flag.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
stringFilter environments by queries that contain the provided DD_ENV value. (example: staging)
stringFilter environments by key (partial matching). (example: env-partial)
integer (int64)Maximum number of results to return. (example: 10)
stringFilter environments by name (partial matching). (example: env-search-term)
integer (int64)Number of results to skip. (example: 0)
+ +## `SELECT` examples + + + + +Returns the details of a specific environment. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.feature_flag_environments +WHERE environment_id = '{{ environment_id }}' -- required +; +``` + + + +Returns a list of environments for the organization.<br />Supports filtering by name, key, and DD_ENV. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.feature_flag_environments +WHERE name = '{{ name }}' +AND key = '{{ key }}' +AND dd_env = '{{ dd_env }}' +AND limit = '{{ limit }}' +AND offset = '{{ offset }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new environment for organizing feature flags. + +```sql +INSERT INTO datadog.software_delivery.feature_flag_environments ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: feature_flag_environments + props: + - name: data + description: | + Data for creating a new environment. + value: + attributes: + is_production: {{ is_production }} + name: "{{ name }}" + queries: + - "{{ queries }}" + require_feature_flag_approval: {{ require_feature_flag_approval }} + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates an existing environment's metadata such as<br /> name and description. + +```sql +REPLACE datadog.software_delivery.feature_flag_environments +SET +data = '{{ data }}' +WHERE +environment_id = '{{ environment_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## `DELETE` examples + + + + +Deletes an environment. This operation cannot be undone. + +```sql +DELETE FROM datadog.software_delivery.feature_flag_environments +WHERE environment_id = '{{ environment_id }}' --required +; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Disable a feature flag in a specific environment. + +```sql +EXEC datadog.software_delivery.feature_flag_environments.disable_feature_flag_environment +@feature_flag_id='{{ feature_flag_id }}' --required, +@environment_id='{{ environment_id }}' --required +; +``` + + + +Enable a feature flag in a specific environment. + +```sql +EXEC datadog.software_delivery.feature_flag_environments.enable_feature_flag_environment +@feature_flag_id='{{ feature_flag_id }}' --required, +@environment_id='{{ environment_id }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/feature_flag_exposure_schedules/index.md b/website/docs/services/software_delivery/feature_flag_exposure_schedules/index.md new file mode 100644 index 0000000..ed64fb0 --- /dev/null +++ b/website/docs/services/software_delivery/feature_flag_exposure_schedules/index.md @@ -0,0 +1,163 @@ +--- +title: feature_flag_exposure_schedules +hide_title: false +hide_table_of_contents: false +keywords: + - feature_flag_exposure_schedules + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a feature_flag_exposure_schedules resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
exposure_schedule_idPauses a progressive rollout while preserving rollout state.
exposure_schedule_idResumes progression for a previously paused progressive rollout.
exposure_schedule_idStarts a progressive rollout and begins progression.
exposure_schedule_idStops a progressive rollout and marks it as aborted.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the exposure schedule.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Pauses a progressive rollout while preserving rollout state. + +```sql +EXEC datadog.software_delivery.feature_flag_exposure_schedules.pause_exposure_schedule +@exposure_schedule_id='{{ exposure_schedule_id }}' --required +; +``` + + + +Resumes progression for a previously paused progressive rollout. + +```sql +EXEC datadog.software_delivery.feature_flag_exposure_schedules.resume_exposure_schedule +@exposure_schedule_id='{{ exposure_schedule_id }}' --required +; +``` + + + +Starts a progressive rollout and begins progression. + +```sql +EXEC datadog.software_delivery.feature_flag_exposure_schedules.start_exposure_schedule +@exposure_schedule_id='{{ exposure_schedule_id }}' --required +; +``` + + + +Stops a progressive rollout and marks it as aborted. + +```sql +EXEC datadog.software_delivery.feature_flag_exposure_schedules.stop_exposure_schedule +@exposure_schedule_id='{{ exposure_schedule_id }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/feature_flag_variants/index.md b/website/docs/services/software_delivery/feature_flag_variants/index.md new file mode 100644 index 0000000..734d4cc --- /dev/null +++ b/website/docs/services/software_delivery/feature_flag_variants/index.md @@ -0,0 +1,220 @@ +--- +title: feature_flag_variants +hide_title: false +hide_table_of_contents: false +keywords: + - feature_flag_variants + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a feature_flag_variants resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
feature_flag_id, key, name, valueAdds a single new variant to an existing feature flag. This endpoint is<br />additive-only: it never modifies existing variants. A request whose `key`<br />already exists on the flag is rejected with `409 Conflict`; a `value`<br />whose type does not match the flag's `value_type` is rejected with `400`.<br />The server generates the variant UUID and returns it in the response body;<br />callers (for example, the flag-migration tool) need this UUID to reference<br />the new variant in subsequent allocation syncs.
feature_flag_id, variant_idUpdates the name and value of an existing variant on a feature flag.<br /><br />When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of applying the change immediately. Use the returned suggestion `id` to approve or reject the change. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`.
feature_flag_id, variant_idDeletes a variant from a feature flag.<br /><br />When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of deleting the variant immediately. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the feature flag.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
string (uuid)The ID of the variant.
+ +## `INSERT` examples + + + + +Adds a single new variant to an existing feature flag. This endpoint is<br />additive-only: it never modifies existing variants. A request whose `key`<br />already exists on the flag is rejected with `409 Conflict`; a `value`<br />whose type does not match the flag's `value_type` is rejected with `400`.<br />The server generates the variant UUID and returns it in the response body;<br />callers (for example, the flag-migration tool) need this UUID to reference<br />the new variant in subsequent allocation syncs. + +```sql +INSERT INTO datadog.software_delivery.feature_flag_variants ( +key, +name, +value, +feature_flag_id +) +SELECT +'{{ key }}' /* required */, +'{{ name }}' /* required */, +'{{ value }}' /* required */, +'{{ feature_flag_id }}' +RETURNING +id, +name, +created_at, +key, +updated_at, +value +; +``` + + + +{`# Description fields are for documentation purposes +- name: feature_flag_variants + props: + - name: feature_flag_id + value: "{{ feature_flag_id }}" + description: Required parameter for the feature_flag_variants resource. + - name: key + value: "{{ key }}" + description: | + The unique key of the variant. + - name: name + value: "{{ name }}" + description: | + The name of the variant. + - name: value + value: "{{ value }}" + description: | + The value of the variant as a string. +`} + + + + + +## `REPLACE` examples + + + + +Updates the name and value of an existing variant on a feature flag.<br /><br />When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of applying the change immediately. Use the returned suggestion `id` to approve or reject the change. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`. + +```sql +REPLACE datadog.software_delivery.feature_flag_variants +SET +name = '{{ name }}', +value = '{{ value }}' +WHERE +feature_flag_id = '{{ feature_flag_id }}' --required +AND variant_id = '{{ variant_id }}' --required +RETURNING +id, +name, +created_at, +key, +updated_at, +value; +``` + + + + +## `DELETE` examples + + + + +Deletes a variant from a feature flag.<br /><br />When backend approvals are enabled and the flag requires approval, this endpoint creates and returns a `FlagSuggestion` with `201 Created` instead of deleting the variant immediately. If a pending suggestion already exists for this flag's variant property, the endpoint returns `409 Conflict`. + +```sql +DELETE FROM datadog.software_delivery.feature_flag_variants +WHERE feature_flag_id = '{{ feature_flag_id }}' --required +AND variant_id = '{{ variant_id }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/feature_flags/index.md b/website/docs/services/software_delivery/feature_flags/index.md new file mode 100644 index 0000000..ce8f0c9 --- /dev/null +++ b/website/docs/services/software_delivery/feature_flags/index.md @@ -0,0 +1,359 @@ +--- +title: feature_flags +hide_title: false +hide_table_of_contents: false +keywords: + - feature_flags + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a feature_flags resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the feature flag. (example: 550e8400-e29b-41d4-a716-446655440000)
objectAttributes of a feature flag.
stringThe resource type. (feature-flags) (example: feature-flags)
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The unique identifier of the feature flag. (example: 550e8400-e29b-41d4-a716-446655440000)
objectAttributes of a feature flag in list responses.
stringThe resource type. (feature-flags) (example: feature-flags)
+
+
+ +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
feature_flag_idReturns the details of a specific feature flag<br />including variants and environment status.
key, is_archived, limit, offsetReturns a list of feature flags for the organization.<br />Supports filtering by key and archived status.
dataCreates a new feature flag with variants.
feature_flag_id, dataUpdates an existing feature flag's metadata such as<br /> name and description. Does not modify targeting rules or allocations.
feature_flag_idArchives a feature flag. Archived flags are<br />hidden from the main list but remain accessible and can be unarchived.
feature_flag_idUnarchives a previously archived feature flag,<br />making it visible in the main list again.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
string (uuid)The ID of the feature flag.
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
booleanFilter by archived status. (example: false)
stringFilter feature flags by key (partial matching). (example: flag-search-term)
integer (int64)Maximum number of results to return. (example: 10)
integer (int64)Number of results to skip. (example: 0)
+ +## `SELECT` examples + + + + +Returns the details of a specific feature flag<br />including variants and environment status. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.feature_flags +WHERE feature_flag_id = '{{ feature_flag_id }}' -- required +; +``` + + + +Returns a list of feature flags for the organization.<br />Supports filtering by key and archived status. + +```sql +SELECT +id, +attributes, +type +FROM datadog.software_delivery.feature_flags +WHERE key = '{{ key }}' +AND is_archived = '{{ is_archived }}' +AND limit = '{{ limit }}' +AND offset = '{{ offset }}' +; +``` + + + + +## `INSERT` examples + + + + +Creates a new feature flag with variants. + +```sql +INSERT INTO datadog.software_delivery.feature_flags ( +data +) +SELECT +'{{ data }}' /* required */ +RETURNING +data +; +``` + + + +{`# Description fields are for documentation purposes +- name: feature_flags + props: + - name: data + description: | + Data for creating a new feature flag. + value: + attributes: + default_variant_key: "{{ default_variant_key }}" + description: "{{ description }}" + json_schema: "{{ json_schema }}" + key: "{{ key }}" + name: "{{ name }}" + value_type: "{{ value_type }}" + variants: + - key: "{{ key }}" + name: "{{ name }}" + value: "{{ value }}" + type: "{{ type }}" +`} + + + + + +## `REPLACE` examples + + + + +Updates an existing feature flag's metadata such as<br /> name and description. Does not modify targeting rules or allocations. + +```sql +REPLACE datadog.software_delivery.feature_flags +SET +data = '{{ data }}' +WHERE +feature_flag_id = '{{ feature_flag_id }}' --required +AND data = '{{ data }}' --required +RETURNING +data; +``` + + + + +## Lifecycle Methods + +EXEC variables use wire (API) names. + + + + +Archives a feature flag. Archived flags are<br />hidden from the main list but remain accessible and can be unarchived. + +```sql +EXEC datadog.software_delivery.feature_flags.archive_feature_flag +@feature_flag_id='{{ feature_flag_id }}' --required +; +``` + + + +Unarchives a previously archived feature flag,<br />making it visible in the main list again. + +```sql +EXEC datadog.software_delivery.feature_flags.unarchive_feature_flag +@feature_flag_id='{{ feature_flag_id }}' --required +; +``` + + diff --git a/website/docs/services/software_delivery/flaky_tests/index.md b/website/docs/services/software_delivery/flaky_tests/index.md new file mode 100644 index 0000000..17e4f6b --- /dev/null +++ b/website/docs/services/software_delivery/flaky_tests/index.md @@ -0,0 +1,162 @@ +--- +title: flaky_tests +hide_title: false +hide_table_of_contents: false +keywords: + - flaky_tests + - software_delivery + - datadog + - infrastructure-as-code + - configuration-as-data + - cloud inventory +description: Query, deploy and manage datadog resources using SQL +custom_edit_url: null +image: /img/stackql-datadog-provider-featured-image.png +--- + +import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +Creates, updates, deletes, gets or lists a flaky_tests resource. + +## Overview + + + + +
Name
TypeResource
Id
+ +## Fields + +The following fields are returned by `SELECT` queries: + +`SELECT` not supported for this resource, use `SHOW METHODS` to view available operations for the resource. + + +## Methods + +The following methods are available for this resource: + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameAccessible byRequired ParamsOptional ParamsDescription
List endpoint returning flaky tests from Flaky Test Management. Results are paginated.<br /><br />The response includes comprehensive test information including:<br />- Test identification and metadata (module, suite, name)<br />- Flaky state and categorization<br />- First and last flake occurrences (timestamp, branch, commit SHA)<br />- Test execution statistics from the last 7 days (failure rate)<br />- Pipeline impact metrics (failed pipelines count, total lost time)<br />- Complete status change history (optional, ordered from most recent to oldest)<br /><br />Set `include_history` to `true` in the request to receive the status change history for each test.<br />History is disabled by default for better performance.<br /><br />Results support filtering by various facets including service, environment, repository, branch, and test state.
dataUpdate the state of multiple flaky tests in Flaky Test Management.
+ +## Parameters + +Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](#methods) section to see which parameters are required or optional for each operation. + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
+ +## `INSERT` examples + + + + +List endpoint returning flaky tests from Flaky Test Management. Results are paginated.<br /><br />The response includes comprehensive test information including:<br />- Test identification and metadata (module, suite, name)<br />- Flaky state and categorization<br />- First and last flake occurrences (timestamp, branch, commit SHA)<br />- Test execution statistics from the last 7 days (failure rate)<br />- Pipeline impact metrics (failed pipelines count, total lost time)<br />- Complete status change history (optional, ordered from most recent to oldest)<br /><br />Set `include_history` to `true` in the request to receive the status change history for each test.<br />History is disabled by default for better performance.<br /><br />Results support filtering by various facets including service, environment, repository, branch, and test state. + +```sql +INSERT INTO datadog.software_delivery.flaky_tests ( +data +) +SELECT +'{{ data }}' +RETURNING +data, +meta +; +``` + + + +{`# Description fields are for documentation purposes +- name: flaky_tests + props: + - name: data + description: | + The JSON:API data for flaky tests search request. + value: + attributes: + filter: + include_history: {{ include_history }} + query: "{{ query }}" + page: + cursor: "{{ cursor }}" + limit: {{ limit }} + sort: "{{ sort }}" + type: "{{ type }}" +`} + + + + + +## `UPDATE` examples + + + + +Update the state of multiple flaky tests in Flaky Test Management. + +```sql +UPDATE datadog.software_delivery.flaky_tests +SET +data = '{{ data }}' +WHERE +data = '{{ data }}' --required +RETURNING +data; +``` + + diff --git a/website/docs/services/software_delivery/index.md b/website/docs/services/software_delivery/index.md index b5dd7f4..7a4e8a4 100644 --- a/website/docs/services/software_delivery/index.md +++ b/website/docs/services/software_delivery/index.md @@ -18,7 +18,7 @@ software_delivery service documentation. :::info[Service Summary] -total resources: __7__ +total resources: __20__ ::: @@ -27,11 +27,24 @@ total resources: __7__ diff --git a/website/docs/services/software_delivery/workflow_instances/index.md b/website/docs/services/software_delivery/workflow_instances/index.md index a77e813..60ede96 100644 --- a/website/docs/services/software_delivery/workflow_instances/index.md +++ b/website/docs/services/software_delivery/workflow_instances/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a workflow_instances resou ## Overview - +
Nameworkflow_instances
Name
TypeResource
Id
@@ -96,30 +97,30 @@ The following methods are available for this resource: - workflow_id, instance_id, region + workflow_id, instance_id - Get a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Get a specific execution of a given workflow. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - workflow_id, region + workflow_id page[size], page[number] - List all instances of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + List all instances of a given workflow. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - workflow_id, region + workflow_id - Execute the given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Execute the given workflow. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - workflow_id, instance_id, region + workflow_id, instance_id - Cancels a specific execution of a given workflow. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Cancels a specific execution of a given workflow. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). @@ -142,10 +143,10 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# string The ID of the workflow instance. - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. @@ -160,7 +161,7 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# integer (int64) - Size for a given page. The maximum allowed value is 100. + Number of items to return per page. The maximum allowed value is 100. @@ -184,7 +185,6 @@ attributes FROM datadog.software_delivery.workflow_instances WHERE workflow_id = '{{ workflow_id }}' -- required AND instance_id = '{{ instance_id }}' -- required -AND region = '{{ region }}' -- required ; ``` @@ -197,7 +197,6 @@ SELECT id FROM datadog.software_delivery.workflow_instances WHERE workflow_id = '{{ workflow_id }}' -- required -AND region = '{{ region }}' -- required AND page[size] = '{{ page[size] }}' AND page[number] = '{{ page[number] }}' ; @@ -221,14 +220,12 @@ Execute the given workflow. This API requires a [registered application key](htt ```sql INSERT INTO datadog.software_delivery.workflow_instances ( -data__meta, -workflow_id, -region +meta, +workflow_id ) SELECT '{{ meta }}', -'{{ workflow_id }}', -'{{ region }}' +'{{ workflow_id }}' RETURNING data ; @@ -236,27 +233,27 @@ data -```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: workflow_instances props: - name: workflow_id - value: string - description: Required parameter for the workflow_instances resource. - - name: region - value: string + value: "{{ workflow_id }}" description: Required parameter for the workflow_instances resource. - name: meta - value: object description: | Additional information for creating a workflow instance. -``` + value: + payload: "{{ payload }}" +`} + ## Lifecycle Methods +EXEC variables use wire (API) names. + diff --git a/website/docs/services/software_delivery/workflows/index.md b/website/docs/services/software_delivery/workflows/index.md index 52837dd..f93cee7 100644 --- a/website/docs/services/software_delivery/workflows/index.md +++ b/website/docs/services/software_delivery/workflows/index.md @@ -15,6 +15,7 @@ image: /img/stackql-datadog-provider-featured-image.png --- import CopyableCode from '@site/src/components/CopyableCode/CopyableCode'; +import CodeBlock from '@theme/CodeBlock'; import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; @@ -22,7 +23,7 @@ Creates, updates, deletes, gets or lists a workflows resource. ## Overview - +
Nameworkflows
Name
TypeResource
Id
@@ -34,7 +35,8 @@ The following fields are returned by `SELECT` queries: @@ -68,7 +70,41 @@ Successfully got a workflow. string - The definition of `WorkflowDataType` object. (example: workflows) + The definition of `WorkflowDataType` object. (workflows) (example: workflows) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDatatypeDescription
stringThe workflow identifier.
objectAttributes of a workflow returned in a list response.
objectThe definition of `WorkflowDataRelationships` object.
stringThe definition of `WorkflowDataType` object. (workflows) (example: workflows)
@@ -93,30 +129,37 @@ The following methods are available for this resource: - workflow_id, region + workflow_id + + Get a workflow by ID. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + + + + - Get a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + limit, page, sort, filter[query], filter[trigger_ids], filter[include_unpublished], filter[include_specs] + List all workflows in your organization. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - region, data__data + data - Create a new workflow, returning the workflow ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Create a new workflow, returning the workflow ID. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - workflow_id, region, data__data + workflow_id, data - Update a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Update a workflow by ID. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). - workflow_id, region + workflow_id - Delete a workflow by ID. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + Delete a workflow by ID. This API requires a [registered application key](https:​//docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https:​//docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). @@ -134,16 +177,51 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# - - + + string - (default: datadoghq.com) + The Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both. string The ID of the workflow. + + + boolean + Whether to include the full spec of each workflow in the response. When `false` (the default), each workflow's `spec` is returned as `null`. (wire: filter[includeSpecs]) + + + + boolean + Whether to include unpublished workflows in the response. (wire: filter[includeUnpublished]) + + + + string + A search query used to filter the returned workflows. The query performs a case-insensitive substring match against each workflow's name, creator name, and handle. If the query contains a colon (for example, `team:infra`), the query is treated as a `key:value` tag filter. (example: deploy) + + + + array + Filters the returned workflows by one or more trigger types, such as `monitor`, `schedule`, or `githubWebhook`. To specify the multiple types, repeat this parameter. (example: [monitor]) (wire: filter[triggerIds]) + + + + integer (int64) + The maximum number of workflows to return per page. (example: 50) + + + + integer (int64) + The page number to return, starting from 0. (example: 0) + + + + string + The sort order for the returned workflows. Provide a comma-separated list of fields, each optionally prefixed with `-` for descending order. Supported fields are `name`, `createdAt`, `updatedAt`, `creatorName`, `ownerName`, and `lastExecutedAt`. (example: -updatedAt) + @@ -152,7 +230,8 @@ Parameters can be passed in the `WHERE` clause of a query. Check the [Methods](# @@ -167,7 +246,27 @@ relationships, type FROM datadog.software_delivery.workflows WHERE workflow_id = '{{ workflow_id }}' -- required -AND region = '{{ region }}' -- required +; +``` + + + +List all workflows in your organization. This API requires a [registered application key](https://docs.datadoghq.com/api/latest/action-connection/#register-a-new-app-key). Alternatively, you can configure these permissions [in the UI](https://docs.datadoghq.com/account_management/api-app-keys/#actions-api-access). + +```sql +SELECT +id, +attributes, +relationships, +type +FROM datadog.software_delivery.workflows +WHERE limit = '{{ limit }}' +AND page = '{{ page }}' +AND sort = '{{ sort }}' +AND filter[query] = '{{ filter[query] }}' +AND filter[trigger_ids] = '{{ filter[trigger_ids] }}' +AND filter[include_unpublished] = '{{ filter[include_unpublished] }}' +AND filter[include_specs] = '{{ filter[include_specs] }}' ; ``` @@ -189,12 +288,10 @@ Create a new workflow, returning the workflow ID. This API requires a [registere ```sql INSERT INTO datadog.software_delivery.workflows ( -data__data, -region +data ) SELECT -'{{ data }}' /* required */, -'{{ region }}' +'{{ data }}' /* required */ RETURNING data ; @@ -202,18 +299,112 @@ data
-```yaml -# Description fields are for documentation purposes +{`# Description fields are for documentation purposes - name: workflows props: - - name: region - value: string - description: Required parameter for the workflows resource. - name: data - value: object description: | Data related to the workflow. -``` + value: + attributes: + createdAt: "{{ createdAt }}" + description: "{{ description }}" + name: "{{ name }}" + published: {{ published }} + spec: + annotations: + - display: + bounds: "{{ bounds }}" + id: "{{ id }}" + markdownTextAnnotation: + text: "{{ text }}" + connectionEnvs: + - connectionGroups: "{{ connectionGroups }}" + connections: "{{ connections }}" + env: "{{ env }}" + handle: "{{ handle }}" + inputSchema: + parameters: + - allowExtraValues: {{ allowExtraValues }} + allowedValues: "{{ allowedValues }}" + defaultValue: "{{ defaultValue }}" + description: "{{ description }}" + label: "{{ label }}" + name: "{{ name }}" + type: "{{ type }}" + outputSchema: + parameters: + - defaultValue: "{{ defaultValue }}" + description: "{{ description }}" + label: "{{ label }}" + name: "{{ name }}" + type: "{{ type }}" + value: "{{ value }}" + steps: + - actionId: "{{ actionId }}" + completionGate: + completionCondition: "{{ completionCondition }}" + retryStrategy: "{{ retryStrategy }}" + connectionLabel: "{{ connectionLabel }}" + display: + bounds: "{{ bounds }}" + errorHandlers: "{{ errorHandlers }}" + name: "{{ name }}" + outboundEdges: "{{ outboundEdges }}" + parameters: "{{ parameters }}" + readinessGate: + thresholdType: "{{ thresholdType }}" + triggers: + - agentTrigger: + rateLimit: "{{ rateLimit }}" + startStepNames: "{{ startStepNames }}" + apiTrigger: + rateLimit: "{{ rateLimit }}" + appTrigger: "{{ appTrigger }}" + caseTrigger: + rateLimit: "{{ rateLimit }}" + changeEventTrigger: "{{ changeEventTrigger }}" + databaseMonitoringTrigger: "{{ databaseMonitoringTrigger }}" + datastoreTrigger: + rateLimit: "{{ rateLimit }}" + dashboardTrigger: "{{ dashboardTrigger }}" + formTrigger: + formId: "{{ formId }}" + githubWebhookTrigger: + rateLimit: "{{ rateLimit }}" + incidentTrigger: + rateLimit: "{{ rateLimit }}" + monitorTrigger: + rateLimit: "{{ rateLimit }}" + notebookTrigger: "{{ notebookTrigger }}" + onCallTrigger: + rateLimit: "{{ rateLimit }}" + scheduleTrigger: + overlapBehavior: "{{ overlapBehavior }}" + rruleExpression: "{{ rruleExpression }}" + securityTrigger: + rateLimit: "{{ rateLimit }}" + selfServiceTrigger: "{{ selfServiceTrigger }}" + slackTrigger: "{{ slackTrigger }}" + softwareCatalogTrigger: "{{ softwareCatalogTrigger }}" + workflowTrigger: "{{ workflowTrigger }}" + tags: + - "{{ tags }}" + updatedAt: "{{ updatedAt }}" + webhookSecret: "{{ webhookSecret }}" + id: "{{ id }}" + relationships: + creator: + data: + id: "{{ id }}" + type: "{{ type }}" + owner: + data: + id: "{{ id }}" + type: "{{ type }}" + type: "{{ type }}" +`} +
@@ -233,11 +424,10 @@ Update a workflow by ID. This API requires a [registered application key](https: ```sql UPDATE datadog.software_delivery.workflows SET -data__data = '{{ data }}' +data = '{{ data }}' WHERE workflow_id = '{{ workflow_id }}' --required -AND region = '{{ region }}' --required -AND data__data = '{{ data }}' --required +AND data = '{{ data }}' --required RETURNING data; ``` @@ -260,7 +450,6 @@ Delete a workflow by ID. This API requires a [registered application key](https: ```sql DELETE FROM datadog.software_delivery.workflows WHERE workflow_id = '{{ workflow_id }}' --required -AND region = '{{ region }}' --required ; ``` diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 59e8682..42262c0 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -1,232 +1,37 @@ -// @ts-check -// `@type` JSDoc annotations allow editor autocompletion and type checking -// (when paired with `@ts-check`). -// There are various equivalent ways to declare your Docusaurus config. -// See: https://docusaurus.io/docs/api/docusaurus-config - import {themes as prismThemes} from 'prism-react-renderer'; - -// Provider configuration - change these for different providers -const providerName = "Datadog"; -const providerTitle = "Datadog"; - -const providerDropDownListItems = [ - { - label: 'AWS', - to: '/providers/aws', - }, - { - label: 'Azure', - to: '/providers/azure', - }, - { - label: 'Google', - to: '/providers/google', - }, - { - label: 'Databricks', - to: '/providers/databricks', - }, - { - label: 'Snowflake', - to: '/providers/snowflake', - }, - { - label: 'Confluent', - to: '/providers/confluent', - }, - { - label: 'Okta', - to: '/providers/okta', - }, - { - label: 'GitHub', - to: '/providers/github', - }, - { - label: 'OpenAI', - to: '/providers/openai', - }, - { - label: '... More', - to: '/providers', - }, -]; - -const footerStackQLItems = [ - { - label: 'Documentation', - to: '/stackqldocs', - }, - { - label: 'Install', - to: '/install', - }, - { - label: 'Contact us', - to: '/contact-us', - }, -]; - -const footerMoreItems = [ - { - label: 'Providers', - to: '/providers', - }, - { - label: 'stackql-deploy', - to: '/stackql-deploy', - }, - { - label: 'Blog', - to: '/blog', - }, - { - label: 'Tutorials', - to: '/tutorials', - }, -]; - -// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) - -/** @type {import('@docusaurus/types').Config} */ -const config = { - title: `StackQL ${providerTitle} Provider`, - tagline: `Query and Provision ${providerTitle} Resources using StackQL`, - favicon: 'img/favicon.ico', - staticDirectories: ['static'], - // Future flags, see https://docusaurus.io/docs/api/docusaurus-config#future - future: { - v4: true, // Improve compatibility with the upcoming Docusaurus v4 - }, - - // Set the production url of your site here - url: `https://${providerName}-provider.stackql.io`, - // Set the // pathname under which your site is served - // For GitHub pages deployment, it is often '//' - baseUrl: '/', - - // GitHub pages deployment config. - // If you aren't using GitHub pages, you don't need these. - organizationName: 'stackql', // Usually your GitHub org/user name. - projectName: `stackql-provider-${providerName}`, // Usually your repo name. - - onBrokenLinks: 'warn', - onBrokenMarkdownLinks: 'warn', - - // Even if you don't use internationalization, you can use this field to set - // useful metadata like html lang. For example, if your site is Chinese, you - // may want to replace "en" with "zh-Hans". - i18n: { - defaultLocale: 'en', - locales: ['en'], - }, - - presets: [ - [ - 'classic', - /** @type {import('@docusaurus/preset-classic').Options} */ - ({ - docs: { - sidebarPath: './sidebars.js', - // Please change this to your repo. - // Remove this to remove the "edit this page" links. - // editUrl: 'https://github.com/stackql/stackql-deploy/tree/main/website/', - routeBasePath: '/', // Set the docs to be the root of the site - }, - theme: { - customCss: './src/css/custom.css', - }, - }), - ], - ], - - themeConfig: - /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ - ({ - // Replace with your project's social card - image: 'img/stackql-cover.png', - navbar: { - logo: { - alt: 'StackQL Registry', - href: '/providers', - src: 'img/stackql-registry-logo.svg', - srcDark: 'img/stackql-registry-logo-white.svg', - }, - items: [ - { - to: '/install', - position: 'left', - label: 'Install', - }, - { - to: '/stackql-deploy', - position: 'left', - label: 'stackql-deploy', - }, - { - to: '/providers', - type: 'dropdown', - label: 'Providers', - position: 'left', - items: providerDropDownListItems, - }, - { - type: 'dropdown', - label: 'More', - position: 'left', - items: [ - { - to: '/stackqldocs', - label: 'StackQL Docs', - }, - { - to: '/blog', - label: 'Blog', - }, - { - to: '/tutorials', - label: 'Tutorials', - }, - ], - }, - { - href: 'https://github.com/stackql/stackql', - position: 'right', - className: 'header-github-link', - 'aria-label': 'GitHub repository', - }, - ], - }, - footer: { - style: 'dark', - logo: { - alt: 'StackQL', - href: '/providers', - src: 'img/stackql-registry-logo.svg', - srcDark: 'img/stackql-registry-logo-white.svg', - }, - links: [ - { - title: 'StackQL', - items: footerStackQLItems, - }, - { - title: 'More', - items: footerMoreItems, - }, - ], - copyright: `© ${new Date().getFullYear()} StackQL Studios`, - }, - colorMode: { - // using user system preferences, instead of the hardcoded defaultMode - respectPrefersColorScheme: true, - }, - prism: { - theme: prismThemes.nightOwl, - darkTheme: prismThemes.dracula, - }, - }), +import { createConfig } from './.shared-config/index.js'; +import { providerName, providerTitle } from './provider.js'; + +const config = createConfig({ + providerName, + providerTitle, + prismThemes, + overrides: { + // Docusaurus Faster (rspack + swc, via @docusaurus/faster) - this site + // has ~700 generated resource pages, so the faster bundler matters here. + future: { + v4: true, + faster: true, + }, + }, +}); + +// Date-stamp every doc page ("Last updated on ...") from the git history of +// the generated markdown. The shared config defaults this to false; the +// deploy workflows check out with fetch-depth: 0 so the timestamps resolve. +config.presets[0][1].docs.showLastUpdateTime = true; + +// Use the locally vendored registry-branded logos (STACKQL>> | REGISTRY, +// matching the other provider microsites) instead of the shared config's +// hotlinked main-site wordmark - self-contained assets, no cross-origin +// fetch. global.css swaps in the -mobile variants below 996px. +const registryLogo = { + alt: 'StackQL', + href: '/', + src: 'img/stackql-registry-logo.svg', + srcDark: 'img/stackql-registry-logo-white.svg', }; +config.themeConfig.navbar.logo = { ...registryLogo }; +config.themeConfig.footer.logo = { ...registryLogo }; export default config; diff --git a/website/package.json b/website/package.json index 8f57f6c..3c098a2 100644 --- a/website/package.json +++ b/website/package.json @@ -4,6 +4,10 @@ "private": true, "scripts": { "docusaurus": "docusaurus", + "vendor-config": "rimraf .shared-config && git clone --depth 1 --branch main https://github.com/stackql/docusaurus-config.git .shared-config", + "prestart": "yarn vendor-config", + "prebuild": "yarn vendor-config", + "sanitize-docs": "node scripts/sanitize-docs.mjs", "start": "docusaurus start", "build": "docusaurus build", "swizzle": "docusaurus swizzle", @@ -14,8 +18,11 @@ "write-heading-ids": "docusaurus write-heading-ids" }, "dependencies": { - "@docusaurus/core": "3.8.1", - "@docusaurus/preset-classic": "3.8.1", + "@docusaurus/core": "^3.10.2", + "@docusaurus/faster": "^3.10.2", + "@docusaurus/plugin-ideal-image": "^3.10.2", + "@docusaurus/preset-classic": "^3.10.2", + "@docusaurus/theme-mermaid": "^3.10.2", "@emotion/react": "^11.14.0", "@emotion/styled": "^11.14.1", "@iconify/react": "^6.0.0", @@ -29,8 +36,23 @@ "react-dom": "^19.0.0" }, "devDependencies": { - "@docusaurus/module-type-aliases": "3.8.1", - "@docusaurus/types": "3.8.1" + "@docusaurus/module-type-aliases": "^3.10.2", + "@docusaurus/types": "^3.10.2", + "rimraf": "^6.0.1" + }, + "overrides": { + "rimraf": "^6.0.1", + "glob": "^13.0.0", + "memfs": "^4.17.0", + "uuid": "^11.0.0", + "@ungap/structured-clone": "^1.3.1" + }, + "resolutions": { + "rimraf": "^6.0.1", + "glob": "^13.0.0", + "memfs": "^4.17.0", + "uuid": "^11.0.0", + "@ungap/structured-clone": "^1.3.1" }, "browserslist": { "production": [ @@ -45,7 +67,7 @@ ] }, "engines": { - "node": ">=18.0" + "node": ">=20.0" }, "license": "MIT" } diff --git a/website/provider.js b/website/provider.js new file mode 100644 index 0000000..451a73c --- /dev/null +++ b/website/provider.js @@ -0,0 +1,2 @@ +export const providerName = 'datadog'; +export const providerTitle = 'Datadog'; diff --git a/website/scripts/sanitize-docs.mjs b/website/scripts/sanitize-docs.mjs new file mode 100644 index 0000000..877fb11 --- /dev/null +++ b/website/scripts/sanitize-docs.mjs @@ -0,0 +1,309 @@ +#!/usr/bin/env node +// Post-docgen sanitizer for the generated provider docs. +// +// AWS descriptions carry literal angle-bracket placeholders (, +// ), stray unpaired HTML (,

) and XML samples +// (). MDX v3 parses any raw as JSX and +// fails the build on the first mismatch; braces ({...}) parse as JSX +// expressions with the same failure mode. +// +// The doc generator's own structure is line-shaped: one `...` +// cell per line, and description text ONLY ever appears as td inner +// content. So the deterministic fix: inside every description cell, +// escape ALL angle brackets and braces (protecting the stage-1 +// backtick-wrapped `` tokens as spans); leave +// every other line - tables, Tabs/TabItem/CodeBlock, CopyableCode, +// index link lists - byte-for-byte untouched. +// +// Run after `npm run generate-docs`, before building the website. + +import fs from 'node:fs'; +import path from 'node:path'; +import { fileURLToPath } from 'node:url'; + +const docsDir = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', 'docs'); + +const TD_LINE = /^(\s*)(.*)(<\/td>\s*)$/; +const LINK_TOKEN = '(?:]*\\/>|[^<>]*<\\/code>)<\\/a>'; +const LINK_TOKEN_CELL = new RegExp(`^${LINK_TOKEN}(?:,\\s*${LINK_TOKEN})*$`); +const BACKTICKED = /`<([A-Za-z][A-Za-z0-9_.:-]*)>`/g; +// Control-char sentinels: cannot occur in generated markdown. +const OPEN = ''; +const CLOSE = ''; + +let filesChanged = 0; +let cellsEscaped = 0; +let siteRelaxed = 0; + +// --------------------------------------------------------------------------- +// datadog-specific: the `site` server variable is optional +// +// `site` is the only OpenAPI server variable (https://api.{site}); it has a +// default (datadoghq.com) and is resolved from DD_SITE (x-stackQL-envVar). +// docgen merges server variables into every method's required-parameter +// cell and example WHERE / EXEC clauses as if they were required. Three +// deterministic rewrites, applied to every generated page: +// 1. the `site` token is removed from every required-parameters cell; +// 2. the `site = '{{ site }}' -- required` predicate is removed from every +// SQL example (a leading WHERE is carried over to the next predicate), +// as is the `@site='{{ site }}' --required` EXEC variable; +// 3. the Parameters table keeps its `site` row, with the description +// rewritten to state the default and the DD_SITE resolution. +// --------------------------------------------------------------------------- +const SITE_LINK = /site<\/code><\/a>/; +// SELECT examples: `WHERE site = '{{ site }}' -- required` / `AND site = ...` +const SITE_SQL = /^(\s*)(WHERE|AND)\s+site\s*=\s*'\{\{ site \}\}'\s*--\s*required\s*$/; +// UPDATE / REPLACE / DELETE examples: a bare `WHERE` line followed by one +// predicate per line, `site = '{{ site }}' --required` or `AND site = ... --required;` +const SITE_PREDICATE = /^\s*(AND\s+)?site\s*=\s*'\{\{ site \}\}'\s*--required(;?)\s*$/; +const SITE_EXEC = /^\s*@site='\{\{ site \}\}'\s*--required,?\s*$/; +const SITE_DESC = /\(default: datadoghq\.com, x-stackQL-envVar: DD_SITE\)/; +// INSERT examples: `site` / `site,` in the column list, `'{{ site }}'` / `'{{ site }}',` in the value list +const SITE_INSERT_COL = /^site(,?)$/; +const SITE_INSERT_VAL = /^'\{\{ site \}\}'(,?)$/; +// stackql-deploy manifest: a three-line prop block +const SITE_MANIFEST = /^\s*- name: site$/; + +function stripTrailingComma(lines, i) { + const j = i - 1; + if (j >= 0 && /,\s*$/.test(lines[j])) lines[j] = lines[j].replace(/,\s*$/, ''); +} + +function relaxSiteVariable(lines) { + let changed = false; + let inSiteRow = false; + let inInsert = false; + for (let i = 0; i < lines.length; i++) { + const line = lines[i]; + // 1. required-params cells + if (SITE_LINK.test(line) && /^\s*/.test(line)) { + lines[i] = line + .replace(/,\s*site<\/code><\/a>/, '') + .replace(/site<\/code><\/a>,?\s*/, ''); + changed = true; siteRelaxed++; + continue; + } + // 2a. SQL predicate (SELECT examples) + const sql = SITE_SQL.exec(line); + if (sql) { + const next = lines[i + 1] || ''; + if (sql[2] === 'WHERE' && /^\s*AND\s+/.test(next)) { + lines[i + 1] = next.replace(/^(\s*)AND\s+/, '$1WHERE '); + } + lines.splice(i, 1); + i--; + changed = true; siteRelaxed++; + continue; + } + // 2b. SQL predicate (mutation examples, one predicate per line) + const pred = SITE_PREDICATE.exec(line); + if (pred) { + const hasAnd = !!pred[1]; + const semi = pred[2] === ';'; + const prev = lines[i - 1] || ''; + const next = lines[i + 1] || ''; + if (!hasAnd && /^\s*AND\s+/.test(next)) { + lines[i + 1] = next.replace(/^(\s*)AND\s+/, '$1'); + } + lines.splice(i, 1); + i--; + if (semi) { + // the statement terminator moves to the previous predicate + if (/^\s*WHERE\s*$/.test(prev)) { + // site was the only predicate: drop the WHERE line as well + lines.splice(i, 1); + i--; + } + if (i >= 0) lines[i] = lines[i].replace(/\s*$/, '') + ';'; + } + changed = true; siteRelaxed++; + continue; + } + // 2c. INSERT column / value lists + if (/^INSERT INTO /.test(line)) inInsert = true; + else if (inInsert && (/^RETURNING\b/.test(line) || /^;/.test(line) || /^```/.test(line))) inInsert = false; + if (inInsert) { + const colm = SITE_INSERT_COL.exec(line) || SITE_INSERT_VAL.exec(line); + if (colm) { + if (colm[1] !== ',') stripTrailingComma(lines, i); + lines.splice(i, 1); + i--; + changed = true; siteRelaxed++; + continue; + } + } + // 2d. manifest prop block + if (SITE_MANIFEST.test(line) && /^\s*value: "\{\{ site \}\}"$/.test(lines[i + 1] || '') && /^\s*description: /.test(lines[i + 2] || '')) { + lines.splice(i, 3); + i--; + changed = true; siteRelaxed++; + continue; + } + // 2b. EXEC variable (strip the continuation comma from the previous variable when it was the last one) + if (SITE_EXEC.test(line)) { + const prev = lines[i - 1] || ''; + if (/--required,\s*$/.test(prev) && !/^\s*@/.test(lines[i + 1] || '')) { + lines[i - 1] = prev.replace(/--required,\s*$/, '--required '); + } + lines.splice(i, 1); + i--; + changed = true; siteRelaxed++; + continue; + } + // 3. Parameters table row + if (/^/.test(line.trim())) inSiteRow = true; + else if (/^<\/tr>/.test(line.trim())) inSiteRow = false; + if (inSiteRow && SITE_DESC.test(line)) { + lines[i] = line.replace(SITE_DESC, 'Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.'); + changed = true; siteRelaxed++; + } + } + return changed; +} + +function escapeDescription(inner) { + let out = inner.replace(BACKTICKED, (m, name) => OPEN + name + CLOSE); + out = out + .replace(//g, '>') + .replace(/\{/g, '{') + .replace(/\}/g, '}') + // Regex fragments in descriptions ("s3://([^/]+)(/.*)?") read as + // markdown links ("[...](...)") and crash the link resolver. + .replace(/\[/g, '[') + .replace(/\]/g, ']') + // GFM autolinks bare "scheme://..." literals on the DECODED text + // tree (entity escapes cannot evade it) and Docusaurus crashes on + // regex-shaped ones ("https://.+"). A zero-width space inside "://" + // is invisible in rendering but breaks the autolink prefix match. + .replace(/:\/\//g, ':​//'); + out = out.split(OPEN).join('<').split(CLOSE).join('>'); + return out; +} + +// Inside a CodeBlock template literal, a lone backslash before u/x is a JS +// string escape (backslash-u007F evaluates to a DEL byte at build time), and ${ +// starts interpolation. Double the backslash / escape the $ so the source +// text renders verbatim. +// The (?{`...`} spans hold verbatim SQL in a JSX + // template literal. The MDX/HTML escapes applied elsewhere must NOT + // touch these lines, but JS still evaluates the template literal, so + // sequences like backslash-u007F in AWS description text become raw control + // characters in the built HTML. Neutralize JS escape starts (\u, \x) + // and interpolation (${) so the text survives verbatim. + if (inCodeBlock) { + if (/<\/CodeBlock>/.test(line)) inCodeBlock = false; + const esc = escapeTemplateLiteral(line); + if (esc !== line) { lines[i] = esc; changed = true; } + continue; + } + if (//.test(line)) inCodeBlock = true; + const esc = escapeTemplateLiteral(line); + if (esc !== line) { lines[i] = esc; changed = true; } + continue; + } + if (/^/.test(trimmed)) { + inTabItemProse = false; + continue; + } + + // Description table cells (one ... per line). + const m = TD_LINE.exec(line); + if (m) { + const inner = m[2]; + if (/^]*\/>$/.test(inner)) continue; + // Structural link cells in the Methods/Parameters tables: one or + // more comma-separated anchor-wrapped tokens + // ( or + // x). Generated structure, + // not description text - must stay verbatim. + if (LINK_TOKEN_CELL.test(inner)) continue; + const codeCell = /^([^<>]*)<\/code>$/.exec(inner); + if (codeCell) { + // Type/pattern cells: regex patterns form accidental markdown + // links ("[...](...)" inside character classes) and MDX brace + // expressions ({4,7} quantifiers). Neutralise both; entities + // decode inside the element so rendering is unchanged. + const escaped = codeCell[1] + .replace(/\[/g, '[') + .replace(/\]/g, ']') + .replace(/\{/g, '{') + .replace(/\}/g, '}') + .replace(/:\/\//g, ':​//'); + if (escaped !== codeCell[1]) { + lines[i] = m[1] + '' + escaped + '' + m[3]; + cellsEscaped++; + changed = true; + } + continue; + } + const escaped = escapeDescription(inner); + if (escaped !== inner) { + lines[i] = m[1] + escaped + m[3]; + cellsEscaped++; + changed = true; + } + continue; + } + + // Method-description prose inside blocks (the paragraphs + // between the TabItem opener and the ```sql fence). Prose never + // starts with '<'; anything with raw angle brackets or braces there + // is hostile description content. + if (inTabItemProse && trimmed && !trimmed.startsWith('<') && /[<>{}]/.test(line)) { + const escaped = escapeDescription(line); + if (escaped !== line) { + lines[i] = escaped; + cellsEscaped++; + changed = true; + } + } + } + return { text: lines.join('\n'), changed }; +} + +function walk(dir) { + for (const entry of fs.readdirSync(dir, { withFileTypes: true })) { + const p = path.join(dir, entry.name); + if (entry.isDirectory()) { + walk(p); + } else if (entry.name.endsWith('.md') || entry.name.endsWith('.mdx')) { + const before = fs.readFileSync(p, 'utf8'); + const { text: after, changed } = sanitize(before, p); + if (changed) { + fs.writeFileSync(p, after); + filesChanged++; + } + } + } +} + +walk(docsDir); +console.log(`sanitize-docs: escaped ${cellsEscaped} description cell(s) across ${filesChanged} file(s); ${siteRelaxed} optional-site rewrite(s)`); diff --git a/website/sidebars.js b/website/sidebars.js index 72e3166..f719984 100644 --- a/website/sidebars.js +++ b/website/sidebars.js @@ -1,42 +1,14 @@ -// @ts-check +import { providerTitle } from './provider.js'; -// This runs in Node.js - Don't use client-side code here (browser APIs, JSX...) - -/** - * Creating a sidebar enables you to: - - create an ordered group of docs - - render a sidebar for each doc of that group - - provide next/previous navigation - - The sidebars can be generated from the filesystem, or explicitly defined here. - - Create as many sidebars as you want. - - @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} - */ - -import config from './docusaurus.config'; - -const providerTitle = config.title.replace(/^StackQL /, '').replace(/ Provider$/, ''); - - const sidebars = { +const sidebars = { mainSidebar: [ - { - type: 'link', - label: 'All Providers', - href: '/providers', - }, + { type: 'link', label: 'All Providers', href: '/providers' }, { type: 'category', label: `${providerTitle} Provider`, - link: {type: 'doc', id: 'provider-intro'}, - items: [ - { - type: 'autogenerated', - dirName: 'services', - } - ] - }, + link: { type: 'doc', id: 'provider-intro' }, + items: [{ type: 'autogenerated', dirName: 'services' }], + }, ], }; diff --git a/website/src/components/CopyableCode/CopyableCode.js b/website/src/components/CopyableCode/CopyableCode.js index 8115f33..d17969f 100644 --- a/website/src/components/CopyableCode/CopyableCode.js +++ b/website/src/components/CopyableCode/CopyableCode.js @@ -1,29 +1,29 @@ -import React, { useState } from 'react'; -import Clipboard from 'clipboard'; - -const CopyableCode = ({ code }) => { - const [isCopied, setIsCopied] = useState(false); - - const handleCopy = () => { - const clipboard = new Clipboard('.copyable-code', { - text: () => code, - }); - - clipboard.on('success', function() { - setIsCopied(true); - window.setTimeout(() => setIsCopied(false), 2000); - clipboard.destroy(); - }); - }; - - return ( - - - {code} - - {isCopied ? Copied! : null} - - ); -}; - -export default CopyableCode; +import React, { useState } from 'react'; +import Clipboard from 'clipboard'; + +const CopyableCode = ({ code }) => { + const [isCopied, setIsCopied] = useState(false); + + const handleCopy = () => { + const clipboard = new Clipboard('.copyable-code', { + text: () => code, + }); + + clipboard.on('success', function() { + setIsCopied(true); + window.setTimeout(() => setIsCopied(false), 2000); + clipboard.destroy(); + }); + }; + + return ( + + + {code} + + {isCopied ? Copied! : null} + + ); +}; + +export default CopyableCode; diff --git a/website/src/components/SchemaTable/SchemaTable.js b/website/src/components/SchemaTable/SchemaTable.js new file mode 100644 index 0000000..2553353 --- /dev/null +++ b/website/src/components/SchemaTable/SchemaTable.js @@ -0,0 +1,49 @@ +import React, { useState } from 'react'; +import styles from './SchemaTable.module.css'; + +function SchemaRow({ name, type, description, children, depth = 0 }) { + const [expanded, setExpanded] = useState(false); + const hasChildren = children && children.length > 0; + + return ( + <> + + + {hasChildren && ( + setExpanded(!expanded)} + > + {expanded ? '▼' : '▶'} + + )} + {name} + + {type} + + + {expanded && children?.map((child, idx) => ( + + ))} + + ); +} + +export default function SchemaTable({ fields }) { + return ( + + + + + + + + + + {fields.map((field, idx) => ( + + ))} + +
NameDatatypeDescription
+ ); +} \ No newline at end of file diff --git a/website/src/components/SchemaTable/SchemaTable.module.css b/website/src/components/SchemaTable/SchemaTable.module.css new file mode 100644 index 0000000..ed4ef36 --- /dev/null +++ b/website/src/components/SchemaTable/SchemaTable.module.css @@ -0,0 +1,27 @@ +.schemaTable { + width: 100%; + border-collapse: collapse; +} + +.schemaTable th, +.schemaTable td { + border: 1px solid var(--ifm-table-border-color); + padding: 8px 12px; + text-align: left; +} + +.schemaTable th { + background: var(--ifm-table-head-background); +} + +.row:hover { + background: var(--ifm-table-stripe-background); +} + +.expander { + cursor: pointer; + margin-right: 8px; + user-select: none; + color: var(--ifm-color-primary); + font-size: 10px; +} \ No newline at end of file diff --git a/website/src/components/StackqlDeployDropdown/StackqlDeployDropdown.js b/website/src/components/StackqlDeployDropdown/StackqlDeployDropdown.js new file mode 100644 index 0000000..b252fd7 --- /dev/null +++ b/website/src/components/StackqlDeployDropdown/StackqlDeployDropdown.js @@ -0,0 +1,400 @@ +import React, { useState } from 'react'; +import Button from '@mui/material/Button'; +import Menu from '@mui/material/Menu'; +import MenuItem from '@mui/material/MenuItem'; +import ListItemIcon from '@mui/material/ListItemIcon'; +import ListItemText from '@mui/material/ListItemText'; +import DownloadIcon from '@mui/icons-material/Download'; +import ContentCopyIcon from '@mui/icons-material/ContentCopy'; +import KeyboardArrowDownIcon from '@mui/icons-material/KeyboardArrowDown'; +import {useLocation} from '@docusaurus/router'; +import styles from './StackqlDeployDropdown.module.css'; + +/** + * Collects all DOM elements between a heading and the next

. + */ +function getElementsBetweenHeadings(heading) { + const elements = []; + let el = heading.nextElementSibling; + while (el && el.tagName !== 'H2') { + elements.push(el); + el = el.nextElementSibling; + } + return elements; +} + +/** + * Extracts text from a element, preserving newlines. + * prism-react-renderer wraps each line in a child element (div or span), + * and textContent concatenates them without newlines, so we join manually. + */ +function getCodeText(codeEl) { + if (codeEl.children.length > 0) { + return Array.from(codeEl.children) + .map(line => line.textContent.replace(/\n$/, '')) + .join('\n'); + } + return codeEl.textContent; +} + +/** + * Extracts the text content of a code block from within a set of elements. + * If preferredTab is provided, looks for a tab with that label first. + */ +function extractCodeFromElements(elements, preferredTab) { + if (preferredTab) { + for (const el of elements) { + const tabs = el.querySelectorAll('[role="tab"]'); + const panels = el.querySelectorAll('[role="tabpanel"]'); + for (let i = 0; i < tabs.length; i++) { + const tabLabel = tabs[i].textContent.trim().toLowerCase(); + if (tabLabel === preferredTab.toLowerCase() && panels[i]) { + const codeEl = panels[i].querySelector('pre code'); + if (codeEl) return getCodeText(codeEl); + } + } + } + } + // Fallback: first code block in the section + for (const el of elements) { + const codeEl = el.querySelector('pre code'); + if (codeEl) return getCodeText(codeEl); + } + return null; +} + +/** + * Scans the rendered page DOM for SQL example sections and extracts + * code blocks to build a context-aware stackql-deploy template. + * + * Section heading IDs generated by Docusaurus: + * ## `SELECT` examples -> #select-examples + * ## `INSERT` examples -> #insert-examples + * ## `UPDATE` examples -> #update-examples + * ## `REPLACE` examples -> #replace-examples + * ## `DELETE` examples -> #delete-examples + * ## Lifecycle Methods -> #lifecycle-methods + */ +function extractTemplateFromPage() { + const sections = {}; + + // --- SELECT (prefer "get" tab for a single-resource check) --- + const selectH2 = document.getElementById('select-examples'); + if (selectH2) { + const els = getElementsBetweenHeadings(selectH2); + sections.select = extractCodeFromElements(els, 'get (all properties)') + || extractCodeFromElements(els, 'get') + || extractCodeFromElements(els); + } + + // --- INSERT (prefer "create" tab -- skip "Manifest" yaml tab) --- + const insertH2 = document.getElementById('insert-examples') || document.getElementById('insert-example'); + if (insertH2) { + const els = getElementsBetweenHeadings(insertH2); + sections.insert = extractCodeFromElements(els, 'All Properties') + || extractCodeFromElements(els, 'create') + || extractCodeFromElements(els); + } + + // --- UPDATE --- + const updateH2 = document.getElementById('update-examples') || document.getElementById('update-example'); + if (updateH2) { + const els = getElementsBetweenHeadings(updateH2); + sections.update = extractCodeFromElements(els); + } + + // --- REPLACE --- + const replaceH2 = document.getElementById('replace-examples'); + if (replaceH2) { + const els = getElementsBetweenHeadings(replaceH2); + sections.replace = extractCodeFromElements(els); + } + + // --- DELETE (standalone section) --- + const deleteH2 = document.getElementById('delete-examples') || document.getElementById('delete-example'); + if (deleteH2) { + const els = getElementsBetweenHeadings(deleteH2); + sections.delete = extractCodeFromElements(els); + } + + // --- Lifecycle Methods: look for a "delete" tab if no standalone DELETE --- + if (!sections.delete) { + const lifecycleH2 = document.getElementById('lifecycle-methods'); + if (lifecycleH2) { + const els = getElementsBetweenHeadings(lifecycleH2); + sections.delete = extractCodeFromElements(els, 'delete'); + } + } + + return sections; +} + +/** + * Parses a SELECT SQL string into its components: + * fields - column names from the SELECT list + * table - fully-qualified table reference after FROM + * where - the raw WHERE clause (conditions only, no leading WHERE) + */ +function parseSelectSQL(sql) { + const selectFromMatch = sql.match(/SELECT\s+([\s\S]+?)\s+FROM\s+/i); + const fromMatch = sql.match(/FROM\s+(\S+)/i); + const whereMatch = sql.match(/WHERE\s+([\s\S]+?)(?:\s*;\s*$|$)/i); + + const fields = selectFromMatch + ? selectFromMatch[1] + .split(',') + .map(f => f.trim()) + .filter(f => f && f !== '*') + : []; + + const table = fromMatch ? fromMatch[1] : ''; + const where = whereMatch ? whereMatch[1].trim().replace(/;\s*$/, '').trim() : ''; + + return { fields, table, where }; +} + +// Parses column names from an INSERT INTO ... (...) statement +// and returns the base field names (stripping data__ prefix). +function parseInsertColumns(sql) { + const match = sql.match(/INSERT\s+INTO\s+\S+\s*\(([\s\S]+?)\)/i); + if (!match) return []; + return match[1] + .split(',') + // .map(c => c.trim().replace(/^data__/, '')) + .map(c => c.trim()) + .filter(Boolean); +} + +// Builds an "exists" hint query - a simplified count query using only the +// original WHERE params (required parameters from the page). +function buildExistsQuery(parsed) { + let sql = `SELECT count(*) as count\nFROM ${parsed.table}`; + if (parsed.where) { + const conditions = parsed.where.split(/\s+AND\s+/i).map(c => c.trim()); + sql += `\nWHERE ${conditions.join(' AND\n')}`; + } + sql += '\n;'; + return sql; +} + +// Builds a "statecheck" hint query - a count query where SELECT fields become +// equality checks in the WHERE clause, followed by the original WHERE params. +function buildStatecheckQuery(parsed) { + // Extract condition field names from WHERE clause to avoid duplicates + const whereConditionFields = new Set(); + if (parsed.where) { + parsed.where.split(/\s+AND\s+/i).forEach(c => { + const match = c.trim().match(/^\s*(\w+)\s*=/); + if (match) whereConditionFields.add(match[1].toLowerCase()); + }); + } + + // Filter out fields already in the WHERE clause (e.g., region) + const filteredFields = parsed.fields.filter(f => !whereConditionFields.has(f.toLowerCase())); + const fieldConditions = filteredFields.map(f => `${f} = {{ ${f} }}`); + + // Collect all WHERE conditions + const allConditions = [...fieldConditions]; + if (parsed.where) { + parsed.where.split(/\s+AND\s+/i).forEach(c => allConditions.push(c.trim())); + } + + let sql = `SELECT count(*) as count\nFROM ${parsed.table}`; + if (allConditions.length > 0) { + sql += `\nWHERE \n${allConditions.join(' AND\n')}`; + } + sql += '\n;'; + return sql; +} + +/** + * Builds the stackql-deploy IQL template from extracted sections. + * Only includes anchors for operations that actually exist on the page. + */ +function buildTemplate(sections) { + const parts = []; + let parsed = null; + + if (sections.select) { + parsed = parseSelectSQL(sections.select); + parts.push(`/*+ exists */\n${buildExistsQuery(parsed)}`); + } + + if (sections.insert) { + parts.push(sections.insert); + } + + if (sections.update) { + parts.push(sections.update); + } else if (sections.replace) { + parts.push(sections.replace); + } + + if (parsed) { + // If INSERT exists, narrow to mutable fields only (skip created_at, etc.) + let mutableParsed = parsed; + if (sections.insert) { + const insertColSet = new Set(parseInsertColumns(sections.insert)); + const mutableFields = parsed.fields.filter(f => insertColSet.has(f)); + if (mutableFields.length > 0) { + mutableParsed = { ...parsed, fields: mutableFields }; + } + } + + parts.push(`/*+ statecheck, retries=5, retry_delay=10 */\n${buildStatecheckQuery(mutableParsed)}`); + + // Use all GET fields minus region for exports + const exportFields = parsed.fields.filter(f => f.toLowerCase() !== 'region'); + let exportsSql = `SELECT\n${exportFields.join(',\n')}\nFROM ${parsed.table}`; + if (parsed.where) { + const conditions = parsed.where.split(/\s+AND\s+/i).map(c => c.trim()); + exportsSql += `\nWHERE ${conditions.join(' AND\n')}`; + } + exportsSql += ';'; + parts.push(`/*+ exports */\n${exportsSql}`); + } + + if (sections.delete) { + parts.push(sections.delete); + } + + return parts.join('\n\n'); +} + +function getResourceName(pathname) { + const match = pathname.match(/\/services\/[^/]+\/([^/]+)/); + return match ? match[1] : null; +} + +export default function StackqlDeployDropdown() { + const [anchorEl, setAnchorEl] = useState(null); + const [copied, setCopied] = useState(false); + const open = Boolean(anchorEl); + const location = useLocation(); + + const resourceName = getResourceName(location.pathname); + + // Only render on resource pages (URL: /services/{service}/{resource}) + if (!resourceName) return null; + + const filename = `${resourceName}.iql`; + + function getTemplate() { + const sections = extractTemplateFromPage(); + return buildTemplate(sections); + } + + const handleClick = (event) => { + setAnchorEl(event.currentTarget); + }; + + const handleClose = () => { + setAnchorEl(null); + }; + + const handleDownload = () => { + const template = getTemplate(); + if (!template) { + handleClose(); + return; + } + const blob = new Blob([template], { type: 'text/plain' }); + const url = URL.createObjectURL(blob); + const a = document.createElement('a'); + a.href = url; + a.download = filename; + document.body.appendChild(a); + a.click(); + document.body.removeChild(a); + URL.revokeObjectURL(url); + handleClose(); + }; + + const handleCopy = async () => { + const template = getTemplate(); + if (!template) { + handleClose(); + return; + } + try { + await navigator.clipboard.writeText(template); + setCopied(true); + setTimeout(() => setCopied(false), 2000); + } catch { + const textarea = document.createElement('textarea'); + textarea.value = template; + document.body.appendChild(textarea); + textarea.select(); + document.execCommand('copy'); + document.body.removeChild(textarea); + setCopied(true); + setTimeout(() => setCopied(false), 2000); + } + handleClose(); + }; + + return ( +
+ + + + + + + + Download + + + + + + + + {copied ? 'Copied!' : 'Copy'} + + + +
+ ); +} diff --git a/website/src/components/StackqlDeployDropdown/StackqlDeployDropdown.module.css b/website/src/components/StackqlDeployDropdown/StackqlDeployDropdown.module.css new file mode 100644 index 0000000..cdb453c --- /dev/null +++ b/website/src/components/StackqlDeployDropdown/StackqlDeployDropdown.module.css @@ -0,0 +1,12 @@ +/* Only show on md+ viewports (Docusaurus default breakpoint: 996px) */ +.dropdownWrapper { + display: none; + flex-shrink: 0; +} + +@media screen and (min-width: 997px) { + .dropdownWrapper { + display: flex; + align-items: center; + } +} diff --git a/website/src/css/custom.css b/website/src/css/global.css similarity index 89% rename from website/src/css/custom.css rename to website/src/css/global.css index ce0b531..3e50218 100644 --- a/website/src/css/custom.css +++ b/website/src/css/global.css @@ -256,4 +256,32 @@ div:has(> .vhsImage) { .providerDocColumn { width: 100%; } - } \ No newline at end of file + } + +/* +* breadcrumbs with actions (stackql-deploy dropdown) +*/ +.breadcrumbs-with-actions { + display: flex; + align-items: center; + justify-content: space-between; + flex-wrap: nowrap; +} + +.breadcrumbs-with-actions nav { + flex: 1; + min-width: 0; +} + +/* +* registry logo: swap to the narrower -mobile mark below the Docusaurus +* mobile breakpoint (996px), per theme +*/ +@media (max-width: 996px) { + .navbar__logo img[src$='stackql-registry-logo.svg'] { + content: url('/img/stackql-registry-logo-mobile.svg'); + } + .navbar__logo img[src$='stackql-registry-logo-white.svg'] { + content: url('/img/stackql-registry-logo-white-mobile.svg'); + } +} \ No newline at end of file diff --git a/website/src/pages/blog.js b/website/src/pages/blog.js deleted file mode 100644 index e435012..0000000 --- a/website/src/pages/blog.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Blog() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/contact-us.js b/website/src/pages/contact-us.js deleted file mode 100644 index b6850d8..0000000 --- a/website/src/pages/contact-us.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function ConactUs() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/install.js b/website/src/pages/install.js deleted file mode 100644 index 341a4bb..0000000 --- a/website/src/pages/install.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Install() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/aws.js b/website/src/pages/providers/aws.js deleted file mode 100644 index 780099a..0000000 --- a/website/src/pages/providers/aws.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/azure.js b/website/src/pages/providers/azure.js deleted file mode 100644 index 467f77a..0000000 --- a/website/src/pages/providers/azure.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/confluent.js b/website/src/pages/providers/confluent.js deleted file mode 100644 index e886aaf..0000000 --- a/website/src/pages/providers/confluent.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/databricks.js b/website/src/pages/providers/databricks.js deleted file mode 100644 index a04b603..0000000 --- a/website/src/pages/providers/databricks.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/github.js b/website/src/pages/providers/github.js deleted file mode 100644 index b425c6c..0000000 --- a/website/src/pages/providers/github.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/google.js b/website/src/pages/providers/google.js deleted file mode 100644 index 01fe8b7..0000000 --- a/website/src/pages/providers/google.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/index.js b/website/src/pages/providers/index.js deleted file mode 100644 index 9afaa02..0000000 --- a/website/src/pages/providers/index.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Providers() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/okta.js b/website/src/pages/providers/okta.js deleted file mode 100644 index cdddc72..0000000 --- a/website/src/pages/providers/okta.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/openai.js b/website/src/pages/providers/openai.js deleted file mode 100644 index 9884c84..0000000 --- a/website/src/pages/providers/openai.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/providers/snowflake.js b/website/src/pages/providers/snowflake.js deleted file mode 100644 index 7b3ec43..0000000 --- a/website/src/pages/providers/snowflake.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Registry() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/stackql-deploy.js b/website/src/pages/stackql-deploy.js deleted file mode 100644 index 95e18b3..0000000 --- a/website/src/pages/stackql-deploy.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Deploy() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/stackqldocs.js b/website/src/pages/stackqldocs.js deleted file mode 100644 index 7182d93..0000000 --- a/website/src/pages/stackqldocs.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function StackQLDocs() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/pages/tutorials.js b/website/src/pages/tutorials.js deleted file mode 100644 index 2bb5f07..0000000 --- a/website/src/pages/tutorials.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from 'react'; -import Head from '@docusaurus/Head'; - -export default function Tutorials() { - return ( - - - - ); -}; \ No newline at end of file diff --git a/website/src/theme/DocBreadcrumbs/index.js b/website/src/theme/DocBreadcrumbs/index.js new file mode 100644 index 0000000..2c5c7cf --- /dev/null +++ b/website/src/theme/DocBreadcrumbs/index.js @@ -0,0 +1,12 @@ +import React from 'react'; +import DocBreadcrumbs from '@theme-original/DocBreadcrumbs'; +import StackqlDeployDropdown from '@site/src/components/StackqlDeployDropdown/StackqlDeployDropdown'; + +export default function DocBreadcrumbsWrapper(props) { + return ( +
+ + +
+ ); +} diff --git a/website/src/theme/Footer/index.tsx b/website/src/theme/Footer/index.tsx index 99ba9d5..eb3d03a 100644 --- a/website/src/theme/Footer/index.tsx +++ b/website/src/theme/Footer/index.tsx @@ -1,262 +1,262 @@ -/** - * Copyright (c) Facebook, Inc. and its affiliates. - * - * This source code is licensed under the MIT license found in the - * LICENSE file in the root directory of this source tree. - */ - -import React from 'react'; -import clsx from 'clsx'; - -import Link from '@docusaurus/Link'; -import {FooterLinkItem, useThemeConfig} from '@docusaurus/theme-common'; -import useBaseUrl from '@docusaurus/useBaseUrl'; -import isInternalUrl from '@docusaurus/isInternalUrl'; -import styles from './styles.module.css'; -import ThemedImage, {Props as ThemedImageProps} from '@theme/ThemedImage'; -import IconExternalLink from '@theme/Icon/ExternalLink'; -import { IconButton } from '@mui/material'; -import { useColorMode } from '@docusaurus/theme-common'; - -import { Icon } from '@iconify/react'; - -// add for responsive logo image -import { useWindowSize } from '@docusaurus/theme-common'; - -// Custom styles to fix the spacing issue -const socialIconsContainerStyle: React.CSSProperties = { - display: 'flex', - justifyContent: 'center', - alignItems: 'center', - flexWrap: 'wrap', // Allow wrapping on small screens - margin: '16px 0', -}; - -const iconButtonStyle = { - padding: '12px', // Ensure buttons have enough clickable area -}; - -function FooterLink({ - to, - href, - label, - prependBaseUrlToHref, - ...props -}: FooterLinkItem) { - const toUrl = useBaseUrl(to); - const normalizedHref = useBaseUrl(href, {forcePrependBaseUrl: true}); - - return ( - - {href && !isInternalUrl(href) ? ( - - {label} - - - ) : ( - label - )} - - ); -} - -const FooterLogo = ({ - sources, - alt, - width, - height, - logo, -}: Pick & { logo: any }) => { - // Get window width for responsiveness - const windowSize = useWindowSize(); - - // Set threshold for mobile view (e.g., 768px) - const isMobile = windowSize === 'mobile' ? true : false; - - const getMobileLogoPath = (path: string) => path?.replace('.svg', '-mobile.svg'); - - // Choose appropriate image sources based on screen size - // const responsiveSources = { - // light: useBaseUrl(isMobile ? getMobileLogoPath(logo.src) : logo.src), - // dark: useBaseUrl(isMobile ? getMobileLogoPath(logo.srcDark || logo.src) : (logo.srcDark || logo.src)), - // }; - const responsiveSources = { - light: useBaseUrl(isMobile ? getMobileLogoPath(logo?.src) : logo?.src), - dark: useBaseUrl(isMobile ? getMobileLogoPath(logo?.srcDark || logo?.src) : (logo?.srcDark || logo?.src)), - }; - - return ( - - ); -} - -function Footer(): JSX.Element | null { - const socialLinks = { - linkedin: "https://www.linkedin.com/company/stackql", - twitter: "https://twitter.com/stackql", - github: "https://github.com/stackql", - discord: "https://discord.com/invite/xVXZ9d5NxN", - slack: "https://join.slack.com/t/stackqlcommunity/shared_invite/zt-1cbdq9s5v-CkY65IMAesCgFqjN6FU6hg", - }; - - const {colorMode} = useColorMode(); - - const {footer} = useThemeConfig(); - - const {copyright, links = [], logo = { src: '' }} = footer || {}; - const sources = { - light: useBaseUrl(logo.src), - dark: useBaseUrl(logo.srcDark || logo.src), - }; - - if (!footer) { - return null; - } - - return ( -
-
- {links && links.length > 0 && ( -
-
- {logo && (logo.src || logo.srcDark) && ( -
- {logo.href ? ( - - - - ) : ( - - )} -
- )} -

- A new approach to querying and
- provisioning cloud services. -

-
- {links.map((linkItem, i) => ( -
- {linkItem.title != null ? ( -

{linkItem.title}

- ) : null} - {linkItem.items != null && - Array.isArray(linkItem.items) && - linkItem.items.length > 0 ? ( -
    - {linkItem.items.map((item, key) => - item.html ? ( -
  • - ) : ( -
  • - -
  • - ), - )} -
- ) : null} -
- ))} -
- )} -
- {(logo || copyright) && ( - <> -
- {copyright ? ( -
- ) : null} -
- {/* Social Icons Container with Fixed Spacing */} -
- - - - - - - - - - - - - - - -
- - )} -
-
- ); -} - +/** + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +import React from 'react'; +import clsx from 'clsx'; + +import Link from '@docusaurus/Link'; +import {FooterLinkItem, useThemeConfig} from '@docusaurus/theme-common'; +import useBaseUrl from '@docusaurus/useBaseUrl'; +import isInternalUrl from '@docusaurus/isInternalUrl'; +import styles from './styles.module.css'; +import ThemedImage, {Props as ThemedImageProps} from '@theme/ThemedImage'; +import IconExternalLink from '@theme/Icon/ExternalLink'; +import { IconButton } from '@mui/material'; +import { useColorMode } from '@docusaurus/theme-common'; + +import { Icon } from '@iconify/react'; + +// add for responsive logo image +import { useWindowSize } from '@docusaurus/theme-common'; + +// Custom styles to fix the spacing issue +const socialIconsContainerStyle: React.CSSProperties = { + display: 'flex', + justifyContent: 'center', + alignItems: 'center', + flexWrap: 'wrap', // Allow wrapping on small screens + margin: '16px 0', +}; + +const iconButtonStyle = { + padding: '12px', // Ensure buttons have enough clickable area +}; + +function FooterLink({ + to, + href, + label, + prependBaseUrlToHref, + ...props +}: FooterLinkItem) { + const toUrl = useBaseUrl(to); + const normalizedHref = useBaseUrl(href, {forcePrependBaseUrl: true}); + + return ( + + {href && !isInternalUrl(href) ? ( + + {label} + + + ) : ( + label + )} + + ); +} + +const FooterLogo = ({ + sources, + alt, + width, + height, + logo, +}: Pick & { logo: any }) => { + // Get window width for responsiveness + const windowSize = useWindowSize(); + + // Set threshold for mobile view (e.g., 768px) + const isMobile = windowSize === 'mobile' ? true : false; + + const getMobileLogoPath = (path: string) => path?.replace('.svg', '-mobile.svg'); + + // Choose appropriate image sources based on screen size + // const responsiveSources = { + // light: useBaseUrl(isMobile ? getMobileLogoPath(logo.src) : logo.src), + // dark: useBaseUrl(isMobile ? getMobileLogoPath(logo.srcDark || logo.src) : (logo.srcDark || logo.src)), + // }; + const responsiveSources = { + light: useBaseUrl(isMobile ? getMobileLogoPath(logo?.src) : logo?.src), + dark: useBaseUrl(isMobile ? getMobileLogoPath(logo?.srcDark || logo?.src) : (logo?.srcDark || logo?.src)), + }; + + return ( + + ); +} + +function Footer(): JSX.Element | null { + const socialLinks = { + linkedin: "https://www.linkedin.com/company/stackql", + twitter: "https://twitter.com/stackql", + github: "https://github.com/stackql", + discord: "https://discord.com/invite/xVXZ9d5NxN", + slack: "https://join.slack.com/t/stackqlcommunity/shared_invite/zt-1cbdq9s5v-CkY65IMAesCgFqjN6FU6hg", + }; + + const {colorMode} = useColorMode(); + + const {footer} = useThemeConfig(); + + const {copyright, links = [], logo = { src: '' }} = footer || {}; + const sources = { + light: useBaseUrl(logo.src), + dark: useBaseUrl(logo.srcDark || logo.src), + }; + + if (!footer) { + return null; + } + + return ( +
+
+ {links && links.length > 0 && ( +
+
+ {logo && (logo.src || logo.srcDark) && ( +
+ {logo.href ? ( + + + + ) : ( + + )} +
+ )} +

+ A new approach to querying and
+ provisioning cloud services. +

+
+ {links.map((linkItem, i) => ( +
+ {linkItem.title != null ? ( +

{linkItem.title}

+ ) : null} + {linkItem.items != null && + Array.isArray(linkItem.items) && + linkItem.items.length > 0 ? ( +
    + {linkItem.items.map((item, key) => + item.html ? ( +
  • + ) : ( +
  • + +
  • + ), + )} +
+ ) : null} +
+ ))} +
+ )} +
+ {(logo || copyright) && ( + <> +
+ {copyright ? ( +
+ ) : null} +
+ {/* Social Icons Container with Fixed Spacing */} +
+ + + + + + + + + + + + + + + +
+ + )} +
+
+ ); +} + export default Footer; \ No newline at end of file diff --git a/website/static/CNAME b/website/static/CNAME index 1f7a4f5..f77a44a 100644 --- a/website/static/CNAME +++ b/website/static/CNAME @@ -1 +1 @@ -snowflake-provider.stackql.io +datadog-provider.stackql.io diff --git a/website/static/apple-touch-icon.png b/website/static/apple-touch-icon.png new file mode 100644 index 0000000..54d5bf4 Binary files /dev/null and b/website/static/apple-touch-icon.png differ diff --git a/website/static/favicon-16x16.png b/website/static/favicon-16x16.png new file mode 100644 index 0000000..178c107 Binary files /dev/null and b/website/static/favicon-16x16.png differ diff --git a/website/static/favicon-32x32.png b/website/static/favicon-32x32.png new file mode 100644 index 0000000..f1efee0 Binary files /dev/null and b/website/static/favicon-32x32.png differ diff --git a/website/static/favicon.ico b/website/static/favicon.ico new file mode 100644 index 0000000..0145fbf Binary files /dev/null and b/website/static/favicon.ico differ diff --git a/website/static/img/logo.svg b/website/static/img/logo.svg new file mode 100644 index 0000000..9db6d0d --- /dev/null +++ b/website/static/img/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/website/static/img/stackql-featured-image.png b/website/static/img/stackql-featured-image.png new file mode 100644 index 0000000..872999a Binary files /dev/null and b/website/static/img/stackql-featured-image.png differ diff --git a/website/static/safari-pinned-tab.svg b/website/static/safari-pinned-tab.svg new file mode 100644 index 0000000..2563f76 --- /dev/null +++ b/website/static/safari-pinned-tab.svg @@ -0,0 +1,27 @@ + + + + +Created by potrace 1.14, written by Peter Selinger 2001-2017 + + + + + diff --git a/website/static/site.webmanifest b/website/static/site.webmanifest new file mode 100644 index 0000000..4eaf716 --- /dev/null +++ b/website/static/site.webmanifest @@ -0,0 +1,11 @@ +{ + "name": "StackQL Datadog Provider", + "short_name": "StackQL Datadog", + "icons": [ + { "src": "/favicon-32x32.png", "sizes": "32x32", "type": "image/png" }, + { "src": "/favicon-16x16.png", "sizes": "16x16", "type": "image/png" } + ], + "theme_color": "#ffffff", + "background_color": "#ffffff", + "display": "standalone" +} diff --git a/website/yarn.lock b/website/yarn.lock index bd2d92f..d89b2ca 100644 --- a/website/yarn.lock +++ b/website/yarn.lock @@ -2,192 +2,223 @@ # yarn lockfile v1 -"@algolia/abtesting@1.3.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@algolia/abtesting/-/abtesting-1.3.0.tgz#3fade769bf5b03244baaee8034b83e2b49f8e86c" - integrity sha512-KqPVLdVNfoJzX5BKNGM9bsW8saHeyax8kmPFXul5gejrSPN3qss7PgsFH5mMem7oR8tvjvNkia97ljEYPYCN8Q== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" - -"@algolia/autocomplete-core@1.17.9": - version "1.17.9" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.17.9.tgz#83374c47dc72482aa45d6b953e89377047f0dcdc" - integrity sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ== - dependencies: - "@algolia/autocomplete-plugin-algolia-insights" "1.17.9" - "@algolia/autocomplete-shared" "1.17.9" - -"@algolia/autocomplete-plugin-algolia-insights@1.17.9": - version "1.17.9" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.17.9.tgz#74c86024d09d09e8bfa3dd90b844b77d9f9947b6" - integrity sha512-u1fEHkCbWF92DBeB/KHeMacsjsoI0wFhjZtlCq2ddZbAehshbZST6Hs0Avkc0s+4UyBGbMDnSuXHLuvRWK5iDQ== - dependencies: - "@algolia/autocomplete-shared" "1.17.9" - -"@algolia/autocomplete-preset-algolia@1.17.9": - version "1.17.9" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.17.9.tgz#911f3250544eb8ea4096fcfb268f156b085321b5" - integrity sha512-Na1OuceSJeg8j7ZWn5ssMu/Ax3amtOwk76u4h5J4eK2Nx2KB5qt0Z4cOapCsxot9VcEN11ADV5aUSlQF4RhGjQ== - dependencies: - "@algolia/autocomplete-shared" "1.17.9" - -"@algolia/autocomplete-shared@1.17.9": - version "1.17.9" - resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.17.9.tgz#5f38868f7cb1d54b014b17a10fc4f7e79d427fa8" - integrity sha512-iDf05JDQ7I0b7JEA/9IektxN/80a2MZ1ToohfmNS3rfeuQnIKI3IJlIafD0xu4StbtQTghx9T3Maa97ytkXenQ== - -"@algolia/client-abtesting@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-abtesting/-/client-abtesting-5.37.0.tgz#37df3674ccc37dfb0aa4cbfea42002bb136fb909" - integrity sha512-Dp2Zq+x9qQFnuiQhVe91EeaaPxWBhzwQ6QnznZQnH9C1/ei3dvtmAFfFeaTxM6FzfJXDLvVnaQagTYFTQz3R5g== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" - -"@algolia/client-analytics@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-5.37.0.tgz#6fb4d748e1af43d8bc9f955d73d98205ce1c1ee5" - integrity sha512-wyXODDOluKogTuZxRII6mtqhAq4+qUR3zIUJEKTiHLe8HMZFxfUEI4NO2qSu04noXZHbv/sRVdQQqzKh12SZuQ== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" - -"@algolia/client-common@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-5.37.0.tgz#f7ca097c4bae44e4ea365ee8f420693d0005c98e" - integrity sha512-GylIFlPvLy9OMgFG8JkonIagv3zF+Dx3H401Uo2KpmfMVBBJiGfAb9oYfXtplpRMZnZPxF5FnkWaI/NpVJMC+g== - -"@algolia/client-insights@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-insights/-/client-insights-5.37.0.tgz#f4f4011fc89bc0b2dfc384acc3c6fb38f633f4ec" - integrity sha512-T63afO2O69XHKw2+F7mfRoIbmXWGzgpZxgOFAdP3fR4laid7pWBt20P4eJ+Zn23wXS5kC9P2K7Bo3+rVjqnYiw== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" - -"@algolia/client-personalization@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-5.37.0.tgz#c1688db681623b189f353599815a118033ceebb5" - integrity sha512-1zOIXM98O9zD8bYDCJiUJRC/qNUydGHK/zRK+WbLXrW1SqLFRXECsKZa5KoG166+o5q5upk96qguOtE8FTXDWQ== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" - -"@algolia/client-query-suggestions@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-query-suggestions/-/client-query-suggestions-5.37.0.tgz#fa514df8d36fb548258c712f3ba6f97eb84ebb87" - integrity sha512-31Nr2xOLBCYVal+OMZn1rp1H4lPs1914Tfr3a34wU/nsWJ+TB3vWjfkUUuuYhWoWBEArwuRzt3YNLn0F/KRVkg== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" - -"@algolia/client-search@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-5.37.0.tgz#38c7110d96fbbbda7b7fb0578a18b8cad3c25af2" - integrity sha512-DAFVUvEg+u7jUs6BZiVz9zdaUebYULPiQ4LM2R4n8Nujzyj7BZzGr2DCd85ip4p/cx7nAZWKM8pLcGtkTRTdsg== - dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" +"@11ty/gray-matter@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@11ty/gray-matter/-/gray-matter-1.0.0.tgz#35ee04d76b870893c053f64f659c923a7a9db2d7" + integrity sha512-7mJJl+wf1AByoT0PknQiQfOPnVNT4fevGrUBVWO4HXsnYn1aQPyRyrELYrNUFleUBM++KzMKN6QaxHPk0t/6/g== + dependencies: + js-yaml "^4.1.0" + kind-of "^6.0.3" + section-matter "^1.0.0" + strip-bom-string "^1.0.0" + +"@algolia/abtesting@1.21.1": + version "1.21.1" + resolved "https://registry.yarnpkg.com/@algolia/abtesting/-/abtesting-1.21.1.tgz#bf5c7881302a5843b78c6f44431d27ba5eb8f179" + integrity sha512-Wia5/mNTfiU0PIUN25UMfAGGdASkkwuCS9nBAdmhqrNPY/ff7U/6MgBVdwFDPsa3sA1msutPtO50gvOzx6MOXA== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" + +"@algolia/autocomplete-core@1.19.2": + version "1.19.2" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.19.2.tgz#702df67a08cb3cfe8c33ee1111ef136ec1a9e232" + integrity sha512-mKv7RyuAzXvwmq+0XRK8HqZXt9iZ5Kkm2huLjgn5JoCPtDy+oh9yxUMfDDaVCw0oyzZ1isdJBc7l9nuCyyR7Nw== + dependencies: + "@algolia/autocomplete-plugin-algolia-insights" "1.19.2" + "@algolia/autocomplete-shared" "1.19.2" + +"@algolia/autocomplete-core@^1.19.2": + version "1.19.9" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-core/-/autocomplete-core-1.19.9.tgz#bbed371e56aeea4a31a3af239f16733e1b8aedca" + integrity sha512-4U2JKLMWlDu0CotYyUkWakDxr8AIav3QtIUXXRpfavYN29aVWfzlwJp9T0rPKEf/dO2QCPAUc0Kq1Tj1GJxo2A== + dependencies: + "@algolia/autocomplete-plugin-algolia-insights" "1.19.9" + "@algolia/autocomplete-shared" "1.19.9" + +"@algolia/autocomplete-plugin-algolia-insights@1.19.2": + version "1.19.2" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.19.2.tgz#3584b625b9317e333d1ae43664d02358e175c52d" + integrity sha512-TjxbcC/r4vwmnZaPwrHtkXNeqvlpdyR+oR9Wi2XyfORkiGkLTVhX2j+O9SaCCINbKoDfc+c2PB8NjfOnz7+oKg== + dependencies: + "@algolia/autocomplete-shared" "1.19.2" + +"@algolia/autocomplete-plugin-algolia-insights@1.19.9": + version "1.19.9" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.19.9.tgz#f799737d13bf0c4ec8421619c7107fa05c836535" + integrity sha512-6mExC6X7762s2SV3eJy3QOkB8bdMmnUhQ2agvGVDuzwoGyr3PquGSY/0vPQXCfiAiCaXUz1rXn+lwghgSi0l0w== + dependencies: + "@algolia/autocomplete-shared" "1.19.9" + +"@algolia/autocomplete-shared@1.19.2": + version "1.19.2" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.19.2.tgz#c0b7b8dc30a5c65b70501640e62b009535e4578f" + integrity sha512-jEazxZTVD2nLrC+wYlVHQgpBoBB5KPStrJxLzsIFl6Kqd1AlG9sIAGl39V5tECLpIQzB3Qa2T6ZPJ1ChkwMK/w== + +"@algolia/autocomplete-shared@1.19.9": + version "1.19.9" + resolved "https://registry.yarnpkg.com/@algolia/autocomplete-shared/-/autocomplete-shared-1.19.9.tgz#c5b05e23c71027e4e45a301f286593dffdcdfbdf" + integrity sha512-YosP9Uoek6y/Ur1r1qeogk4biMe/hzkyNcgMCciw0//3XpCM7VlYLSHnyt/vOnEOGhCCc0+3v+unEiH6zz+Z1A== + +"@algolia/client-abtesting@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-abtesting/-/client-abtesting-5.55.1.tgz#192d0fd57ec9b7d6924a8b19cd98e72c7e8ae6de" + integrity sha512-miW8RzAtBgNiEJ9fGEhsOPgWUpekAe64YcVufqXrlykj0Jjmo5nj0a5f/HAzRVX5ZuU1GAVd7BkzFDx7q50P3A== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" + +"@algolia/client-analytics@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-analytics/-/client-analytics-5.55.1.tgz#2e6e14d03f1cb181c2086fd60324c24f5f3007f9" + integrity sha512-eR3J3kB9JX6DdCvDRi3I4KPfwO6fR9HWYRXhVke2TXIoOQafMKCRAneg33JRmIrb+DnnJ/eWApJLF1O1CLPERg== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" + +"@algolia/client-common@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-common/-/client-common-5.55.1.tgz#4e023b4127805f8d2a3229f1711822927f3f4303" + integrity sha512-P5ak7EurwYqgAiDyb95mgA3WRR/Zu8CPMv36lWTISvL2AmlPyqQPy2nX/KEJRTcwaeTWwrk6wJV4/M93GfjOWw== + +"@algolia/client-insights@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-insights/-/client-insights-5.55.1.tgz#f58d7908071e9f5fb328533368e3bb2dad797fe5" + integrity sha512-OVtj9uA//+pjvKQI5INnzbyLrf3ClNv3XRbWswwJ2kHIStQNHtBfHo+LofNB/WhM9xjuXlW5ANn2aMj65UGx7w== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" + +"@algolia/client-personalization@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-personalization/-/client-personalization-5.55.1.tgz#1b4d2bd3ba031864b1c8cd3e839ecb81146f8023" + integrity sha512-oKlVFlp+qbIEe4p7E54zSiP2gEV/vDu972Ykv8VDMFwEvreS7m0YKA3a8hGGHwc7yiBUGGiR3LlwzMLfnJmy6Q== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" + +"@algolia/client-query-suggestions@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-query-suggestions/-/client-query-suggestions-5.55.1.tgz#7ddb439a51f348711d2b5b7bddef9497e906be86" + integrity sha512-BOVrld6vdtsFmotVDMTVQfYXwrVplJ+DUvy60JFi+tkWV698q2J9NNPKEO3dr5qxtSLKQP4vHF8n+3U5PDWhOQ== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" + +"@algolia/client-search@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/client-search/-/client-search-5.55.1.tgz#8a918fb875b9f3c8e73b7331e508196a33538e71" + integrity sha512-GAqHl9zERhC3bbBfubwUu07G3UXO06gORvOcsiTBZB3et0s3auNUbHlYdYNp4VKa3sUZqH5AcD3OKzU/KDGXjQ== + dependencies: + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" "@algolia/events@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@algolia/events/-/events-4.0.1.tgz#fd39e7477e7bc703d7f893b556f676c032af3950" integrity sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ== -"@algolia/ingestion@1.37.0": - version "1.37.0" - resolved "https://registry.yarnpkg.com/@algolia/ingestion/-/ingestion-1.37.0.tgz#bb6016e656c68014050814abf130e103f977794e" - integrity sha512-pkCepBRRdcdd7dTLbFddnu886NyyxmhgqiRcHHaDunvX03Ij4WzvouWrQq7B7iYBjkMQrLS8wQqSP0REfA4W8g== +"@algolia/ingestion@1.55.1": + version "1.55.1" + resolved "https://registry.yarnpkg.com/@algolia/ingestion/-/ingestion-1.55.1.tgz#036d40d394314d3f94dd1779d33378d8a65f48a5" + integrity sha512-BXZw+C+gsWL7pZvbnhJUnCXASiDLGcQxVV7h55Pyh2DmSzwdZIVccE5xc9RVD2trtrhIqk5smuODTxtaZqd0IA== dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" -"@algolia/monitoring@1.37.0": - version "1.37.0" - resolved "https://registry.yarnpkg.com/@algolia/monitoring/-/monitoring-1.37.0.tgz#6d20c220d648db8faea45679350f1516917cc13d" - integrity sha512-fNw7pVdyZAAQQCJf1cc/ih4fwrRdQSgKwgor4gchsI/Q/ss9inmC6bl/69jvoRSzgZS9BX4elwHKdo0EfTli3w== +"@algolia/monitoring@1.55.1": + version "1.55.1" + resolved "https://registry.yarnpkg.com/@algolia/monitoring/-/monitoring-1.55.1.tgz#307c71309cd52dbcc43d0fbd7f35a698354dd6d8" + integrity sha512-9g/ceZrZTqA62FA3588Xj0onRPjDNfu0pVQqefK0rrHp9H6Wblph/YmzGjZ2g8uqbTh0ZGIvAGCzErU8f7MHpA== dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" -"@algolia/recommend@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/recommend/-/recommend-5.37.0.tgz#dd5e814f30bbb92395902e120fdb28a120b91341" - integrity sha512-U+FL5gzN2ldx3TYfQO5OAta2TBuIdabEdFwD5UVfWPsZE5nvOKkc/6BBqP54Z/adW/34c5ZrvvZhlhNTZujJXQ== +"@algolia/recommend@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/recommend/-/recommend-5.55.1.tgz#72b5440d6221283acf5dde2828cf442769f5315a" + integrity sha512-cZTIrGyAP+W4A6jDVwvWM/JOaoJKQkD/2a5eLUEeNdKAD45jN7BCpsMDONyhZlosLa4UwL8uiINQzj4iFy9nqg== dependencies: - "@algolia/client-common" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" + "@algolia/client-common" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" -"@algolia/requester-browser-xhr@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.37.0.tgz#8851ab846d8005055c36a59422161ebe1594ae48" - integrity sha512-Ao8GZo8WgWFABrU7iq+JAftXV0t+UcOtCDL4mzHHZ+rQeTTf1TZssr4d0vIuoqkVNnKt9iyZ7T4lQff4ydcTrw== +"@algolia/requester-browser-xhr@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.55.1.tgz#6809cfab8aab74f6cb3d69cd4c1e2d2c2be362da" + integrity sha512-N6I3leW0UO8Y9Zv90yo2UHgYGuxZO0mjbvzNxDIJDjO0qECEF7Z9XMvSNeUWXQh/iNDA9lr8MfEy3rmZGIcclw== dependencies: - "@algolia/client-common" "5.37.0" + "@algolia/client-common" "5.55.1" -"@algolia/requester-fetch@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/requester-fetch/-/requester-fetch-5.37.0.tgz#93602fdc9a59b41ecd53768c53c11cddb0db846a" - integrity sha512-H7OJOXrFg5dLcGJ22uxx8eiFId0aB9b0UBhoOi4SMSuDBe6vjJJ/LeZyY25zPaSvkXNBN3vAM+ad6M0h6ha3AA== +"@algolia/requester-fetch@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/requester-fetch/-/requester-fetch-5.55.1.tgz#f75cc8681524bd8eb60d5d976c31f568dbdbe0ea" + integrity sha512-ukU5zeeFs44rQkzv+TRdYard+d+3lmPGs8lPZhHtWE8rfz+LlBSF6s9kP3VQ7LeOYL8Dz0u6tZfnyTrqrumbHQ== dependencies: - "@algolia/client-common" "5.37.0" + "@algolia/client-common" "5.55.1" -"@algolia/requester-node-http@5.37.0": - version "5.37.0" - resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-5.37.0.tgz#83da1b52f3ee86f262a5d4b2a88a74db665211c2" - integrity sha512-npZ9aeag4SGTx677eqPL3rkSPlQrnzx/8wNrl1P7GpWq9w/eTmRbOq+wKrJ2r78idlY0MMgmY/mld2tq6dc44g== +"@algolia/requester-node-http@5.55.1": + version "5.55.1" + resolved "https://registry.yarnpkg.com/@algolia/requester-node-http/-/requester-node-http-5.55.1.tgz#1920f83d70be909739dbc4d1421ca241bc0f1e0e" + integrity sha512-lCwXyijwPm3vbYHpBXPRomMcD6mgiptmps27gnMCf4HK+u/AOeFPBnIFh4V3l4A5SnP9VRiKBZqwGBpUH0vaTg== dependencies: - "@algolia/client-common" "5.37.0" + "@algolia/client-common" "5.55.1" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.27.1.tgz#200f715e66d52a23b221a9435534a91cc13ad5be" - integrity sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== +"@antfu/install-pkg@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@antfu/install-pkg/-/install-pkg-1.1.0.tgz#78fa036be1a6081b5a77a5cf59f50c7752b6ba26" + integrity sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ== dependencies: - "@babel/helper-validator-identifier" "^7.27.1" + package-manager-detector "^1.3.0" + tinyexec "^1.0.1" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.29.7.tgz#f2fbbfea87c44a21590ec515b778b2c26d8866e7" + integrity sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw== + dependencies: + "@babel/helper-validator-identifier" "^7.29.7" js-tokens "^4.0.0" picocolors "^1.1.1" -"@babel/compat-data@^7.27.2", "@babel/compat-data@^7.27.7", "@babel/compat-data@^7.28.0": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.28.4.tgz#96fdf1af1b8859c8474ab39c295312bfb7c24b04" - integrity sha512-YsmSKC29MJwf0gF8Rjjrg5LQCmyh+j/nD8/eP7f+BeoQTKYqs9RoWbjGOdy0+1Ekr68RJZMUOPVQaQisnIo4Rw== +"@babel/compat-data@^7.28.6", "@babel/compat-data@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.29.7.tgz#6f0237f0f36d2e51c0570a636faed9d2d0efe629" + integrity sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg== "@babel/core@^7.21.3", "@babel/core@^7.25.9": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.28.4.tgz#12a550b8794452df4c8b084f95003bce1742d496" - integrity sha512-2BCOP7TN8M+gVDj7/ht3hsaO/B/n5oDbiAyyvnRlNOs+u1o+JWNYTQrmpuNp1/Wq2gcFrI01JAW+paEKDMx/CA== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.3" - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-module-transforms" "^7.28.3" - "@babel/helpers" "^7.28.4" - "@babel/parser" "^7.28.4" - "@babel/template" "^7.27.2" - "@babel/traverse" "^7.28.4" - "@babel/types" "^7.28.4" + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.29.7.tgz#80c10b17248082968b57a857b91640971f2070f7" + integrity sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/generator" "^7.29.7" + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/helper-module-transforms" "^7.29.7" + "@babel/helpers" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/template" "^7.29.7" + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" "@jridgewell/remapping" "^2.3.5" convert-source-map "^2.0.0" debug "^4.1.0" @@ -195,213 +226,221 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.25.9", "@babel/generator@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.28.3.tgz#9626c1741c650cbac39121694a0f2d7451b8ef3e" - integrity sha512-3lSpxGgvnmZznmBkCRnVREPUFJv2wrv9iAoFDvADJc0ypmdOxdUtcLeBgBJ6zE0PMeTKnxeQzyk0xTBq4Ep7zw== +"@babel/generator@^7.25.9", "@babel/generator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.29.7.tgz#cca0b8827e6bcf3ba176788e7f3b180ad6db2fa3" + integrity sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ== dependencies: - "@babel/parser" "^7.28.3" - "@babel/types" "^7.28.2" + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" "@jridgewell/gen-mapping" "^0.3.12" "@jridgewell/trace-mapping" "^0.3.28" jsesc "^3.0.2" -"@babel/helper-annotate-as-pure@^7.27.1", "@babel/helper-annotate-as-pure@^7.27.3": - version "7.27.3" - resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz#f31fd86b915fc4daf1f3ac6976c59be7084ed9c5" - integrity sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg== +"@babel/helper-annotate-as-pure@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz#c70fe3c6ecbdc3fd2dd1b0f498428b88b82ce47f" + integrity sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw== dependencies: - "@babel/types" "^7.27.3" + "@babel/types" "^7.29.7" -"@babel/helper-compilation-targets@^7.27.1", "@babel/helper-compilation-targets@^7.27.2": - version "7.27.2" - resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz#46a0f6efab808d51d29ce96858dd10ce8732733d" - integrity sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ== +"@babel/helper-compilation-targets@^7.28.6", "@babel/helper-compilation-targets@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz#7a1def704302401c47f64fa85589e974ae217042" + integrity sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g== dependencies: - "@babel/compat-data" "^7.27.2" - "@babel/helper-validator-option" "^7.27.1" + "@babel/compat-data" "^7.29.7" + "@babel/helper-validator-option" "^7.29.7" browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-create-class-features-plugin@^7.27.1", "@babel/helper-create-class-features-plugin@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.28.3.tgz#3e747434ea007910c320c4d39a6b46f20f371d46" - integrity sha512-V9f6ZFIYSLNEbuGA/92uOvYsGCJNsuA8ESZ4ldc09bWk/j8H8TKiPw8Mk1eG6olpnO0ALHJmYfZvF4MEE4gajg== - dependencies: - "@babel/helper-annotate-as-pure" "^7.27.3" - "@babel/helper-member-expression-to-functions" "^7.27.1" - "@babel/helper-optimise-call-expression" "^7.27.1" - "@babel/helper-replace-supers" "^7.27.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" - "@babel/traverse" "^7.28.3" +"@babel/helper-create-class-features-plugin@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.29.7.tgz#6eddf286f2ec418f740c91d60a83347c55838ddd" + integrity sha512-IY3ZD9Tmooqr3TUhc3DUWxiuo8xx1DWLhd5M7hQ+ZWJamqM2BbalrBJb2MisSLoYorOj75U03qULCxQTY9r3hg== + dependencies: + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-member-expression-to-functions" "^7.29.7" + "@babel/helper-optimise-call-expression" "^7.29.7" + "@babel/helper-replace-supers" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" + "@babel/traverse" "^7.29.7" semver "^6.3.1" -"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.27.1.tgz#05b0882d97ba1d4d03519e4bce615d70afa18c53" - integrity sha512-uVDC72XVf8UbrH5qQTc18Agb8emwjTiZrQE11Nv3CuBEZmVvTwwE9CBUEvHku06gQCAyYf8Nv6ja1IN+6LMbxQ== +"@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.29.7.tgz#5d4c3f928f315cf6c4184ea2fc3b5b38745b2430" + integrity sha512-907Uymvqgg1dwUA+7IGwFAOSYzQOuzPXKNJ1yxzwPffzkYFg2q2eHi1fIOs6sXkG9NbIUMunnUlkYsfRFNvomg== dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - regexpu-core "^6.2.0" + "@babel/helper-annotate-as-pure" "^7.29.7" + regexpu-core "^6.3.1" semver "^6.3.1" -"@babel/helper-define-polyfill-provider@^0.6.5": - version "0.6.5" - resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.5.tgz#742ccf1cb003c07b48859fc9fa2c1bbe40e5f753" - integrity sha512-uJnGFcPsWQK8fvjgGP5LZUZZsYGIoPeRjSF5PGwrelYgq7Q15/Ft9NGFp1zglwgIv//W0uG4BevRuSJRyylZPg== +"@babel/helper-define-polyfill-provider@^0.6.5", "@babel/helper-define-polyfill-provider@^0.6.8": + version "0.6.8" + resolved "https://registry.yarnpkg.com/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz#cf1e4462b613f2b54c41e6ff758d5dfcaa2c85d1" + integrity sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA== dependencies: - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-plugin-utils" "^7.27.1" - debug "^4.4.1" + "@babel/helper-compilation-targets" "^7.28.6" + "@babel/helper-plugin-utils" "^7.28.6" + debug "^4.4.3" lodash.debounce "^4.0.8" - resolve "^1.22.10" - -"@babel/helper-globals@^7.28.0": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/helper-globals/-/helper-globals-7.28.0.tgz#b9430df2aa4e17bc28665eadeae8aa1d985e6674" - integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw== - -"@babel/helper-member-expression-to-functions@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.27.1.tgz#ea1211276be93e798ce19037da6f06fbb994fa44" - integrity sha512-E5chM8eWjTp/aNoVpcbfM7mLxu9XGLWYise2eBKGQomAk/Mb4XoxyqXTZbuTohbsl8EKqdlMhnDI2CCLfcs9wA== - dependencies: - "@babel/traverse" "^7.27.1" - "@babel/types" "^7.27.1" - -"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz#7ef769a323e2655e126673bb6d2d6913bbead204" - integrity sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w== - dependencies: - "@babel/traverse" "^7.27.1" - "@babel/types" "^7.27.1" - -"@babel/helper-module-transforms@^7.27.1", "@babel/helper-module-transforms@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz#a2b37d3da3b2344fe085dab234426f2b9a2fa5f6" - integrity sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw== - dependencies: - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - "@babel/traverse" "^7.28.3" - -"@babel/helper-optimise-call-expression@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.27.1.tgz#c65221b61a643f3e62705e5dd2b5f115e35f9200" - integrity sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw== - dependencies: - "@babel/types" "^7.27.1" - -"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.27.1", "@babel/helper-plugin-utils@^7.8.0": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz#ddb2f876534ff8013e6c2b299bf4d39b3c51d44c" - integrity sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw== - -"@babel/helper-remap-async-to-generator@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.27.1.tgz#4601d5c7ce2eb2aea58328d43725523fcd362ce6" - integrity sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA== - dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - "@babel/helper-wrap-function" "^7.27.1" - "@babel/traverse" "^7.27.1" - -"@babel/helper-replace-supers@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.27.1.tgz#b1ed2d634ce3bdb730e4b52de30f8cccfd692bc0" - integrity sha512-7EHz6qDZc8RYS5ElPoShMheWvEgERonFCs7IAonWLLUTXW59DP14bCZt89/GKyreYn8g3S83m21FelHKbeDCKA== - dependencies: - "@babel/helper-member-expression-to-functions" "^7.27.1" - "@babel/helper-optimise-call-expression" "^7.27.1" - "@babel/traverse" "^7.27.1" - -"@babel/helper-skip-transparent-expression-wrappers@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.27.1.tgz#62bb91b3abba8c7f1fec0252d9dbea11b3ee7a56" - integrity sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg== - dependencies: - "@babel/traverse" "^7.27.1" - "@babel/types" "^7.27.1" - -"@babel/helper-string-parser@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz#54da796097ab19ce67ed9f88b47bb2ec49367687" - integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== - -"@babel/helper-validator-identifier@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz#a7054dcc145a967dd4dc8fee845a57c1316c9df8" - integrity sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== - -"@babel/helper-validator-option@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz#fa52f5b1e7db1ab049445b421c4471303897702f" - integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== - -"@babel/helper-wrap-function@^7.27.1": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.28.3.tgz#fe4872092bc1438ffd0ce579e6f699609f9d0a7a" - integrity sha512-zdf983tNfLZFletc0RRXYrHrucBEg95NIFMkn6K9dbeMYnsgHaSBGcQqdsCSStG2PYwRre0Qc2NNSCXbG+xc6g== - dependencies: - "@babel/template" "^7.27.2" - "@babel/traverse" "^7.28.3" - "@babel/types" "^7.28.2" - -"@babel/helpers@^7.28.4": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.28.4.tgz#fe07274742e95bdf7cf1443593eeb8926ab63827" - integrity sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w== - dependencies: - "@babel/template" "^7.27.2" - "@babel/types" "^7.28.4" + resolve "^1.22.11" + +"@babel/helper-globals@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-globals/-/helper-globals-7.29.7.tgz#f04a96fbd8473241b1079243f5b3f03a3010ab7b" + integrity sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA== + +"@babel/helper-member-expression-to-functions@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.29.7.tgz#8dbdb3ce0b5c487e1aec10e13c9a43a500814df8" + integrity sha512-j+7JYmk1JYDtACIGj0QJqqWZjoUpMoEikQGADMaHgCMCSDqd2+P32rfcibUNrGOMWrlzK1WJBdxrB3JJQZwWtg== + dependencies: + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz#ef25048a518e828d7393fac5882ddd73921d7396" + integrity sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g== + dependencies: + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/helper-module-transforms@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz#b062747a5997ba138637201328bbff77960574ae" + integrity sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg== + dependencies: + "@babel/helper-module-imports" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" + "@babel/traverse" "^7.29.7" + +"@babel/helper-optimise-call-expression@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.29.7.tgz#77b0b5b94f1997fa9d6e3125f445227b1faf9d85" + integrity sha512-+kmGVjcT9RGYzoDwdwEqEvGgKe3BYq+O1iGzjFubaNgZHwYHP6lsF2Yghf4kEuv9BV7tYDZ913aBW9am6YKong== + dependencies: + "@babel/types" "^7.29.7" -"@babel/parser@^7.27.2", "@babel/parser@^7.28.3", "@babel/parser@^7.28.4": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.28.4.tgz#da25d4643532890932cc03f7705fe19637e03fa8" - integrity sha512-yZbBqeM6TkpP9du/I2pUZnJsRMGGvOuIrhjzC1AwHwW+6he4mni6Bp/m8ijn0iOuZuPI2BfkCoSRunpyjnrQKg== +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.18.6", "@babel/helper-plugin-utils@^7.28.6", "@babel/helper-plugin-utils@^7.29.7", "@babel/helper-plugin-utils@^7.8.0": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz#c0a0766f1a13617d8a17407d7ab8f9d486225ea4" + integrity sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw== + +"@babel/helper-remap-async-to-generator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.29.7.tgz#34b1f68dd75b86d31df781a29c3ff2df88da82e6" + integrity sha512-16AMiW26DbXWBbr3B8wNozKM0ydMLB892vaOaJW/fPJdnT8vJk5sdkQcU/isqUxyCE0cEoa8wZOcbgDuC4b6Og== + dependencies: + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-wrap-function" "^7.29.7" + "@babel/traverse" "^7.29.7" + +"@babel/helper-replace-supers@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.29.7.tgz#bc3c3964329043c79112e513c1b198f16589ac21" + integrity sha512-atfGXWSeCiF4DnKZIfmJfQRkSw9b9gNNXR1kqKjbhG4pGYCOnkp8OcTB8E3NXjBu8NpheSnOeNKz8KT7UNFTmQ== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.29.7" + "@babel/helper-optimise-call-expression" "^7.29.7" + "@babel/traverse" "^7.29.7" + +"@babel/helper-skip-transparent-expression-wrappers@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz#50c95c7e4c4f54936cfa0116428edc559862d551" + integrity sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ== + dependencies: + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/helper-string-parser@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz#7f0871d99824d23137d60f86fcf6130fd5a1b51f" + integrity sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw== + +"@babel/helper-validator-identifier@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz#bd87084ced0c796ec46bda492de6e83d29e89fc2" + integrity sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg== + +"@babel/helper-validator-option@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz#cf315be940213b354eb4abcc0bd01ebe3f73bc2a" + integrity sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw== + +"@babel/helper-wrap-function@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.29.7.tgz#eec72163044548a0935e9d182bf2d547ec5ff483" + integrity sha512-iES0Skag9ERIF68aXadpO6dbXa03mNWK3sEqJaMnLNs/eC3l0lkImdfoy6Y09/SfkpawdAB4RjQ7PVA7TcVGdw== + dependencies: + "@babel/template" "^7.29.7" + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/helpers@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.29.7.tgz#45abfde7548997e34376c3e69feb475cffb4a607" + integrity sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg== + dependencies: + "@babel/template" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/parser@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.29.7.tgz#837b87387cbf5ec5530cb634b3c622f68edb9334" + integrity sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg== + dependencies: + "@babel/types" "^7.29.7" + +"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.29.7.tgz#2b535896d933a85aa92377eaa3d51a437d54a4e3" + integrity sha512-j8SrR0zLZrRsC09DlszEx8FpMiwukKffYXMK0d5LmOglO7vGG6sz/BR/20yHqWH+Lnn31JTt2PE3hIWNgM2J6w== dependencies: - "@babel/types" "^7.28.4" - -"@babel/plugin-bugfix-firefox-class-in-computed-class-key@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.27.1.tgz#61dd8a8e61f7eb568268d1b5f129da3eee364bf9" - integrity sha512-QPG3C9cCVRQLxAVwmefEmwdTanECuUBMQZ/ym5kiw3XKCGA7qkuQLcjWWHcrD/GKbn/WmJwaezfuuAOcyKlRPA== + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/traverse" "^7.29.7" + +"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.29.7.tgz#b00711a9e52bf4fe55ef7e54b2ef4a881bf804c8" + integrity sha512-r8j8escF+U2FUHo0KOhPUdMzUO+jp9fInva6+ACVAF3Y97Ev+5iNZwiqTghmzNeWwDkOPlYuTcfb1vDaoZKmAQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/traverse" "^7.27.1" - -"@babel/plugin-bugfix-safari-class-field-initializer-scope@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.27.1.tgz#43f70a6d7efd52370eefbdf55ae03d91b293856d" - integrity sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA== + "@babel/helper-plugin-utils" "^7.29.7" + +"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.29.7.tgz#2375328852026a3cf6bc0bcf2de7d236f2d5e701" + integrity sha512-GE1TFSiuFeGsCxmYXZl8HwoPrVlwe4rHPFE8weieGKZqnDORK+Ar3vgWMgW+AOxQ6/2TgLSKx9p6W7O4rC6qgQ== + dependencies: + "@babel/helper-plugin-utils" "^7.29.7" + +"@babel/plugin-bugfix-safari-rest-destructuring-rhs-array@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.7.tgz#759a857c46c4d2a6199685cf71070d81ae5f743a" + integrity sha512-oBNVCvnO5tND+xSopWvV8WNGfpTfgP4Zr/YXXSj8zfmcPktp5Ku/aZlsIowgSD4fjmgHn6sGmB9APVsU5zOdhA== + dependencies: + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" + +"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.29.7.tgz#86de98dd8e03836178231ea96c27dab26016a705" + integrity sha512-QQt9qKHZ2sg/kivaLr7lnQr8HVrQDdBNSfCsTjiDxRuX/K5ORyKq+Bu8Xr0cDE3Dfkv0cw28Ve0EKyKMvulkOw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - -"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.27.1.tgz#beb623bd573b8b6f3047bd04c32506adc3e58a72" - integrity sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" + "@babel/plugin-transform-optional-chaining" "^7.29.7" -"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.27.1.tgz#e134a5479eb2ba9c02714e8c1ebf1ec9076124fd" - integrity sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw== +"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.29.7.tgz#f5d892681dbf4b08753436a5e55000d5ba728d6d" + integrity sha512-pn6QacGLgvCcwc+syUhKE/qSjV2D1IHDB84RNxWYSt1mW3K/SCtjinZ2p0cETJxAWBjPy3K/1lHwG5BjjPxNlw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" - "@babel/plugin-transform-optional-chaining" "^7.27.1" - -"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.28.3.tgz#373f6e2de0016f73caf8f27004f61d167743742a" - integrity sha512-b6YTX108evsvE4YgWyQ921ZAFFQm3Bn+CA3+ZXlNVnPhx+UfsVURoPjfGAPCjBgrqo30yX/C2nZGX96DxvR9Iw== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/traverse" "^7.28.3" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/traverse" "^7.29.7" "@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2": version "7.21.0-placeholder-for-preset-env.2" @@ -415,33 +454,33 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-import-assertions@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.27.1.tgz#88894aefd2b03b5ee6ad1562a7c8e1587496aecd" - integrity sha512-UT/Jrhw57xg4ILHLFnzFpPDlMbcdEicaAtjPQpbj9wa8T4r5KVWCimHcL/460g8Ht0DMxDyjsLgiWSkVjnwPFg== +"@babel/plugin-syntax-import-assertions@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.29.7.tgz#c5cd868505269126cc18882e1f01f7b0e0e24b4e" + integrity sha512-/An1OCBN93thpBAGyfsK2pcf0jvju1SAtKkL2Ny++B5Sy6sqgzXDQH1cZxWbF96Wuk+bn41MDA9bLd4VVAw6rw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-syntax-import-attributes@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.27.1.tgz#34c017d54496f9b11b61474e7ea3dfd5563ffe07" - integrity sha512-oFT0FrKHgF53f4vOsZGi2Hh3I35PfSmVs4IBFLFj4dnafP+hIWDLg3VyKmUHfLoLHlyxY4C7DGtmHuJgn+IGww== +"@babel/plugin-syntax-import-attributes@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.29.7.tgz#6115264516e95ead0f35a41710906612e447f605" + integrity sha512-zGYcYfq/WmZ4V+kBIXQon9dSSc8ircGZqw9ZaNhhGj9nZkeBu1jHLBDQqYYi5WA9uawvA2sIMbry2nCFhf5Djg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-syntax-jsx@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.27.1.tgz#2f9beb5eff30fa507c5532d107daac7b888fa34c" - integrity sha512-y8YTNIeKoyhGd9O0Jiyzyyqk8gdjnumGTQPsz0xOZOQ2RmkVJeZ1vmmfIvFEKqucBG6axJGBZDE/7iI5suUI/w== +"@babel/plugin-syntax-jsx@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.29.7.tgz#622c16f9ad63782fe6e83dadc7e40330744b7f1e" + integrity sha512-TSu8+mHCoEaaCDEZ0I3+6mvTBYR4PCxQwf2z9/r5Tbztv6NaLR3B9thGTTxX2WGuGHJqRiAbKPeGTJ5XWXVg6A== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-syntax-typescript@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.27.1.tgz#5147d29066a793450f220c63fa3a9431b7e6dd18" - integrity sha512-xfYCBMxveHrRMnAWl1ZlPXOZjzkN82THFvLhQhFXFt81Z5HnN+EtUkZhv/zcKpmT3fzmWZB0ywiBrbC3vogbwQ== +"@babel/plugin-syntax-typescript@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.29.7.tgz#7c29388932313ed58413a0343048d75d92fb5b24" + integrity sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" @@ -451,540 +490,541 @@ "@babel/helper-create-regexp-features-plugin" "^7.18.6" "@babel/helper-plugin-utils" "^7.18.6" -"@babel/plugin-transform-arrow-functions@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.27.1.tgz#6e2061067ba3ab0266d834a9f94811196f2aba9a" - integrity sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA== +"@babel/plugin-transform-arrow-functions@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.29.7.tgz#d651343f562c03f47951bd1802195d0e10605f27" + integrity sha512-N7zArUXWzAMzm+/N0uPBeVB3Fam5lMxtUwMmDK5f/IBBS7a7p1qeUoxd/6CckXoxUdgsntq1Dh8xNW06maZbDQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-async-generator-functions@^7.28.0": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.28.0.tgz#1276e6c7285ab2cd1eccb0bc7356b7a69ff842c2" - integrity sha512-BEOdvX4+M765icNPZeidyADIvQ1m1gmunXufXxvRESy/jNNyfovIqUyE7MVgGBjWktCoJlzvFA1To2O4ymIO3Q== +"@babel/plugin-transform-async-generator-functions@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.7.tgz#a5365617921d82a1fee33124a1102bb38a1e677d" + integrity sha512-d98gXZkgswvkyohMBABkhm3GeXhYj8psWfwQ2C7gtfrKGTykQa/iOIi+JJhwMjPlZ6Vm2XN+DCf3Es1EoG4ZLA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-remap-async-to-generator" "^7.27.1" - "@babel/traverse" "^7.28.0" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-remap-async-to-generator" "^7.29.7" + "@babel/traverse" "^7.29.7" -"@babel/plugin-transform-async-to-generator@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.27.1.tgz#9a93893b9379b39466c74474f55af03de78c66e7" - integrity sha512-NREkZsZVJS4xmTr8qzE5y8AfIPqsdQfRuUiLRTEzb7Qii8iFWCyDKaUV2c0rCuh4ljDZ98ALHP/PetiBV2nddA== +"@babel/plugin-transform-async-to-generator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.29.7.tgz#3b5e8f1fb58133cf701bcf0baaf6f01bfd1a8889" + integrity sha512-pcUb2SS+RMo9TWVBwKGI5ShtoG7R+zBsFmCKDa6fe8c+hPr3XJlZgoE5j6i8W7gDjhyvy+85vmYexanvXh3d1w== dependencies: - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-remap-async-to-generator" "^7.27.1" + "@babel/helper-module-imports" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-remap-async-to-generator" "^7.29.7" -"@babel/plugin-transform-block-scoped-functions@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.27.1.tgz#558a9d6e24cf72802dd3b62a4b51e0d62c0f57f9" - integrity sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg== +"@babel/plugin-transform-block-scoped-functions@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.29.7.tgz#96d292634434082d6687bcdb81139affedf77e8c" + integrity sha512-cUSmjh72N+rN4PrkFlN1dJwNCwjVp5d38/CQrEsFggkD10UiFlBFgdH3tv5dNsLuHY+3S8db2xCHjhZcv5WgvA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-block-scoping@^7.28.0": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.28.4.tgz#e19ac4ddb8b7858bac1fd5c1be98a994d9726410" - integrity sha512-1yxmvN0MJHOhPVmAsmoW5liWwoILobu/d/ShymZmj867bAdxGbehIrew1DuLpw2Ukv+qDSSPQdYW1dLNE7t11A== +"@babel/plugin-transform-block-scoping@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.29.7.tgz#baa376691ae16244cd14335422fca6900f54e17d" + integrity sha512-ONyr4+AZhKh8yKWInVxU9AXA9EbsyeLcL6V0dJy6M2/62vuvpGm29zzuymbTpdc451GEpDIdAyPLP3r+P61yKQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-class-properties@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.27.1.tgz#dd40a6a370dfd49d32362ae206ddaf2bb082a925" - integrity sha512-D0VcalChDMtuRvJIu3U/fwWjf8ZMykz5iZsg77Nuj821vCKI3zCyRLwRdWbsuJ/uRwZhZ002QtCqIkwC/ZkvbA== +"@babel/plugin-transform-class-properties@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.29.7.tgz#034897b8a21beec163332fac2de235b14409abdf" + integrity sha512-GtcpjFvanPfzNQi3eTitsCqtRRmmqzpy/A+yhTR1HaZo1Ly3EA8ZXxlPyHdR8/IuRMYc3E4wdGBewB2QKQjAaA== dependencies: - "@babel/helper-create-class-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-class-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-class-static-block@^7.28.3": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.28.3.tgz#d1b8e69b54c9993bc558203e1f49bfc979bfd852" - integrity sha512-LtPXlBbRoc4Njl/oh1CeD/3jC+atytbnf/UqLoqTDcEYGUPj022+rvfkbDYieUrSj3CaV4yHDByPE+T2HwfsJg== +"@babel/plugin-transform-class-static-block@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.29.7.tgz#fed8efd19f3dd3e1114ee390707c70912778fd7c" + integrity sha512-kibJgmEdX2iMwsHY2tSZNDgj8PwIlCQz7FK9KuGKO8zsuoUwSEhoNnNVp/emKWrbY4HeO6kkXfdMqRKKKXBm2A== dependencies: - "@babel/helper-create-class-features-plugin" "^7.28.3" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-class-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-classes@^7.28.3": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.28.4.tgz#75d66175486788c56728a73424d67cbc7473495c" - integrity sha512-cFOlhIYPBv/iBoc+KS3M6et2XPtbT2HiCRfBXWtfpc9OAyostldxIf9YAYB6ypURBBbx+Qv6nyrLzASfJe+hBA== +"@babel/plugin-transform-classes@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-classes/-/plugin-transform-classes-7.29.7.tgz#61d3e5aaae0c838acc3204d9db7c8dc05c25815b" + integrity sha512-qV0OGGBVacduzQHE649JyCneOFI/maT+YKsO+K4Yi3xv2wTPNjM/W2o2gdzMwEAZz7fXNTHAe0NcSg30bIN69g== dependencies: - "@babel/helper-annotate-as-pure" "^7.27.3" - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-globals" "^7.28.0" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-replace-supers" "^7.27.1" - "@babel/traverse" "^7.28.4" + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/helper-globals" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-replace-supers" "^7.29.7" + "@babel/traverse" "^7.29.7" -"@babel/plugin-transform-computed-properties@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.27.1.tgz#81662e78bf5e734a97982c2b7f0a793288ef3caa" - integrity sha512-lj9PGWvMTVksbWiDT2tW68zGS/cyo4AkZ/QTp0sQT0mjPopCmrSkzxeXkznjqBxzDI6TclZhOJbBmbBLjuOZUw== +"@babel/plugin-transform-computed-properties@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.29.7.tgz#95028787ca31901b9a20b5c6d9605c32346f55ad" + integrity sha512-RK7/IyU5phpuCdBAuig5VkzG/EnbDaui5SQGdU9BFrHdV+mV4cUjLMQ9lJDjLNtWHsqtiefpGZUXQP2BiTYMsA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/template" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/template" "^7.29.7" -"@babel/plugin-transform-destructuring@^7.28.0": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.28.0.tgz#0f156588f69c596089b7d5b06f5af83d9aa7f97a" - integrity sha512-v1nrSMBiKcodhsyJ4Gf+Z0U/yawmJDBOTpEB3mcQY52r9RIyPneGyAS/yM6seP/8I+mWI3elOMtT5dB8GJVs+A== +"@babel/plugin-transform-destructuring@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.29.7.tgz#5781ec6947852e27b64c1165f0db431f408090e4" + integrity sha512-iPX8aD6H9zV5s7ZsqTdNocPN/MGQ5sSMnElKrktxjJRMnB2jN/1p2+R7GkfD6CAYoVFqy5A4XnSIUeGgJzIWpg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/traverse" "^7.28.0" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/traverse" "^7.29.7" -"@babel/plugin-transform-dotall-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.27.1.tgz#aa6821de864c528b1fecf286f0a174e38e826f4d" - integrity sha512-gEbkDVGRvjj7+T1ivxrfgygpT7GUd4vmODtYpbs0gZATdkX8/iSnOtZSxiZnsgm1YjTgjI6VKBGSJJevkrclzw== +"@babel/plugin-transform-dotall-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.29.7.tgz#b203de9740e4c7ff6b55ce436ed5313b88d70af8" + integrity sha512-3qc18hsD2RdZiyJNDNc7HQpv6xbncwh8FYtxNFFzclSyh/trPD9KkVR9BDECUjDLvb7yJVF15GfYUuC+LMkkiQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-duplicate-keys@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.27.1.tgz#f1fbf628ece18e12e7b32b175940e68358f546d1" - integrity sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q== +"@babel/plugin-transform-duplicate-keys@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.29.7.tgz#8f3fe721835cb7a433420841dae90afc962ea7ae" + integrity sha512-6IvRRriEMqnBwD6chtxdLpMYCHWEzN+oL5cyQtjykya19UgzbmKhxmhZgKC/LHxS2nYr9Q/qYPZ5Lr6jOL9+yQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.27.1.tgz#5043854ca620a94149372e69030ff8cb6a9eb0ec" - integrity sha512-hkGcueTEzuhB30B3eJCbCYeCaaEQOmQR0AdvzpD4LoN0GXMWzzGSuRrxR2xTnCrvNbVwK9N6/jQ92GSLfiZWoQ== +"@babel/plugin-transform-duplicate-named-capturing-groups-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.7.tgz#dc6c405e55c01b7657e1827a25332c4ac17e9cac" + integrity sha512-2wiIyo2BjtgU7HufSeDnL9L2O7zr8jmhFKuSr65VpRkUiRKRNpb0mdlk56+XPPKoIrfHqzbMuglDvZun0RISsA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-dynamic-import@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.27.1.tgz#4c78f35552ac0e06aa1f6e3c573d67695e8af5a4" - integrity sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A== +"@babel/plugin-transform-dynamic-import@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.29.7.tgz#a83a6faec5bab5b619adf9d0eac6c1c270123c2a" + integrity sha512-giOlEm/EFjfjr+te9NsdjkUo2v4f8rS/SXPumRVHAtbNcyNlvtREkU1dZzaIDclNpnaVhlCqRdFKhJBjBikzLg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-explicit-resource-management@^7.28.0": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.28.0.tgz#45be6211b778dbf4b9d54c4e8a2b42fa72e09a1a" - integrity sha512-K8nhUcn3f6iB+P3gwCv/no7OdzOZQcKchW6N389V6PD8NUWKZHzndOd9sPDVbMoBsbmjMqlB4L9fm+fEFNVlwQ== +"@babel/plugin-transform-explicit-resource-management@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.29.7.tgz#65c8b9f76ec915b02a0e1df703125a0fca58abaa" + integrity sha512-Rstj7coNz8sE+7Ju7ihpHLI564lsK5pUpNNlvptCIC/16E/S5hbl6n3kESPKdNRmqEWlpn5xpS5Q2dvXBsySLw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/plugin-transform-destructuring" "^7.28.0" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/plugin-transform-destructuring" "^7.29.7" -"@babel/plugin-transform-exponentiation-operator@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.27.1.tgz#fc497b12d8277e559747f5a3ed868dd8064f83e1" - integrity sha512-uspvXnhHvGKf2r4VVtBpeFnuDWsJLQ6MF6lGJLC89jBR1uoVeqM416AZtTuhTezOfgHicpJQmoD5YUakO/YmXQ== +"@babel/plugin-transform-exponentiation-operator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.29.7.tgz#00bf002fde8794356171f5d4df200f6bc0d5a303" + integrity sha512-zFpMOTLZBdW5LfObqcSbL6kefg4R4eLdmvS0wbN9M6D5Mym/sKm9toOoWyVOa+xDjvCnuWcHls2YonXwHvH3CQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-export-namespace-from@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.27.1.tgz#71ca69d3471edd6daa711cf4dfc3400415df9c23" - integrity sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ== +"@babel/plugin-transform-export-namespace-from@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.29.7.tgz#d6014f45cec61d7691335c6c9804204bee801d51" + integrity sha512-24B2nOy2TeJSMheqwPD4DDQOV/elLSIlKxjZt4i05H5AgdPdWR3n18HnNrcJ+j76WJd9gbwb9jPjNYUy6RautA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-for-of@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.27.1.tgz#bc24f7080e9ff721b63a70ac7b2564ca15b6c40a" - integrity sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw== +"@babel/plugin-transform-for-of@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.29.7.tgz#c65a678592117717aacdb10c1b73a9cb85e830be" + integrity sha512-zeSIHh0+E1Um1WJRXCFlHQYu2ieJNdivLLjlBEp+dIBu3S51n+SZZmIXjxnItw6pz56Cn+KvK68BIBVsxq2JiQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" -"@babel/plugin-transform-function-name@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.27.1.tgz#4d0bf307720e4dce6d7c30fcb1fd6ca77bdeb3a7" - integrity sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ== +"@babel/plugin-transform-function-name@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.29.7.tgz#8b87f8a7504dbcd96135167e3fc4f61126a7bd86" + integrity sha512-otRWaHXE6fbAGkePvaj/kvs3HsqXfPhlnzwSOlnFgbqCPMd975dW+4wZ00WFBt+/YlBGcJwNrARQTOJOb4ZrIg== dependencies: - "@babel/helper-compilation-targets" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/traverse" "^7.27.1" + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/traverse" "^7.29.7" -"@babel/plugin-transform-json-strings@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.27.1.tgz#a2e0ce6ef256376bd527f290da023983527a4f4c" - integrity sha512-6WVLVJiTjqcQauBhn1LkICsR2H+zm62I3h9faTDKt1qP4jn2o72tSvqMwtGFKGTpojce0gJs+76eZ2uCHRZh0Q== +"@babel/plugin-transform-json-strings@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.29.7.tgz#f57d63dcc05b4481c281acedcd8fc4e3e439a1d4" + integrity sha512-RRnE2+eon1rJAq8MnoF1b5kTpY1vU88twHcvcKMrsqP/jxIRqDVs9iJB5fqPuqyeFAW0wJo4MlUIPpQCq/aRsg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-literals@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.27.1.tgz#baaefa4d10a1d4206f9dcdda50d7d5827bb70b24" - integrity sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA== +"@babel/plugin-transform-literals@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-literals/-/plugin-transform-literals-7.29.7.tgz#b90bd47463326c2a9d779e1bd5e1f88b9f421921" + integrity sha512-DZ/oLP21ZuWx1vKqnoNv6/tvEK48AQOBRai40CX9dTjGluvT/YZCyY3rryDtyUqCEoyNroy5KKPwX2iQCiRvyw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-logical-assignment-operators@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.27.1.tgz#890cb20e0270e0e5bebe3f025b434841c32d5baa" - integrity sha512-SJvDs5dXxiae4FbSL1aBJlG4wvl594N6YEVVn9e3JGulwioy6z3oPjx/sQBO3Y4NwUu5HNix6KJ3wBZoewcdbw== +"@babel/plugin-transform-logical-assignment-operators@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.29.7.tgz#9b29425adf5c794967aabe4b046a046a167bac2f" + integrity sha512-A0H91hh6W8MFRkp5TqJmMr39jzGD1A1E1Ysiv2O06Sfbhkapm+XyIzxWCEh5kqwOZ1/8QZ0dY3SeQ7XBqfJd5Q== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-member-expression-literals@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.27.1.tgz#37b88ba594d852418e99536f5612f795f23aeaf9" - integrity sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ== +"@babel/plugin-transform-member-expression-literals@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.29.7.tgz#1281689fa2fefc17b110d21ebafd0fe9402d5309" + integrity sha512-hl1kwFZCCiDyfH25Xmco9jTrkPgnS9pmOzSG7W5I4SaGbLeqKv417hcU2RKmaxoPEgsoJh7ZPOrnPGq99bHoUg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-modules-amd@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.27.1.tgz#a4145f9d87c2291fe2d05f994b65dba4e3e7196f" - integrity sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA== +"@babel/plugin-transform-modules-amd@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.29.7.tgz#f05ca662c8a1dc4be2f337af9c7e80369c942d6c" + integrity sha512-fxtQoH3m5ywUSIfaH0FGCzWu4McsYon5bD3K4XnskC7f+OyQMj7rsOMi4NvvmJ83WwBAg4UCe+ov4VZlqEvyew== dependencies: - "@babel/helper-module-transforms" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-module-transforms" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-modules-commonjs@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.27.1.tgz#8e44ed37c2787ecc23bdc367f49977476614e832" - integrity sha512-OJguuwlTYlN0gBZFRPqwOGNWssZjfIUdS7HMYtN8c1KmwpwHFBwTeFZrg9XZa+DFTitWOW5iTAG7tyCUPsCCyw== +"@babel/plugin-transform-modules-commonjs@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.29.7.tgz#70e6835abf2663dafbe94b8ef1f51de7351ef135" + integrity sha512-j0vCldybPC5b5dwCQOJ21uKtHzt7hxLygJTg9eF1ScfaikEDNfzn94XoW5Fi+seBR0nCyL23xaBFFkq7dTM8XQ== dependencies: - "@babel/helper-module-transforms" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-module-transforms" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-modules-systemjs@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.27.1.tgz#00e05b61863070d0f3292a00126c16c0e024c4ed" - integrity sha512-w5N1XzsRbc0PQStASMksmUeqECuzKuTJer7kFagK8AXgpCMkeDMO5S+aaFb7A51ZYDF7XI34qsTX+fkHiIm5yA== +"@babel/plugin-transform-modules-systemjs@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.7.tgz#e575dd2ab9882906de120ff7dc9dee9914d8b6f3" + integrity sha512-TM2ZcQLoG2/y4HODiStCo10DibYhWhGWAwVv+EQKmG/7GFl0N+AAmUiXOMKM+aiJ9XBJ9AHVZBvTzMnJ2sM3cQ== dependencies: - "@babel/helper-module-transforms" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - "@babel/traverse" "^7.27.1" + "@babel/helper-module-transforms" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" + "@babel/traverse" "^7.29.7" -"@babel/plugin-transform-modules-umd@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.27.1.tgz#63f2cf4f6dc15debc12f694e44714863d34cd334" - integrity sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w== +"@babel/plugin-transform-modules-umd@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.29.7.tgz#391d1c0215aca6307257f2f608598dfe55feb6cf" + integrity sha512-B4UkaTK3QpgCwJnrxKfMPKdo92CN7OKXAlpAAnM3UPu0Q0lCCk57ylA9AJbRy2v8dDKOPAAWcoR6CMyeoHwRCA== dependencies: - "@babel/helper-module-transforms" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-module-transforms" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-named-capturing-groups-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.27.1.tgz#f32b8f7818d8fc0cc46ee20a8ef75f071af976e1" - integrity sha512-SstR5JYy8ddZvD6MhV0tM/j16Qds4mIpJTOd1Yu9J9pJjH93bxHECF7pgtc28XvkzTD6Pxcm/0Z73Hvk7kb3Ng== +"@babel/plugin-transform-named-capturing-groups-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.7.tgz#21e75d847b31189842fa7a77703722ed4b43d27d" + integrity sha512-vuFoLwr4qnv2xbZ16SQd6uPcH5FNrLHhk/Jzo++0XJFcaDsr4gjJVg6j398oMHiC+83k/GiBzviwF5KBJkPUtQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-new-target@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.27.1.tgz#259c43939728cad1706ac17351b7e6a7bea1abeb" - integrity sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ== +"@babel/plugin-transform-new-target@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.29.7.tgz#714147ce7947e1b49cbd84137ca2e75e92b2a067" + integrity sha512-fEo41GmsOUhOBlw8ioo6zvjX5Xc2Lqkzlyfqbpsk3eB6TReV18uhxZ0esfEokVbY2+PVJAQHNKxER6lGrzNd3A== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-nullish-coalescing-operator@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.27.1.tgz#4f9d3153bf6782d73dd42785a9d22d03197bc91d" - integrity sha512-aGZh6xMo6q9vq1JGcw58lZ1Z0+i0xB2x0XaauNIUXd6O1xXc3RwoWEBlsTQrY4KQ9Jf0s5rgD6SiNkaUdJegTA== +"@babel/plugin-transform-nullish-coalescing-operator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.29.7.tgz#8a54cdf88c3f50433a6173117a286195b67714cc" + integrity sha512-idmp1dFaekP9GbcMvG24Kvw2BfhFZjHnNJCkV4WuIY4PskJzwI3f1N5OdgYke38T7rftO6ERulFRn2cFeZwRkg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-numeric-separator@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.27.1.tgz#614e0b15cc800e5997dadd9bd6ea524ed6c819c6" - integrity sha512-fdPKAcujuvEChxDBJ5c+0BTaS6revLV7CJL08e4m3de8qJfNIuCc2nc7XJYOjBoTMJeqSmwXJ0ypE14RCjLwaw== +"@babel/plugin-transform-numeric-separator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.29.7.tgz#0266d5cd42ab87ec40fee45a4e36483cfdcbc66a" + integrity sha512-zR7fv/z14OjgHl4AgRtkDBvBMhIzCxqV/qN/2BCRC7LjFwvuzjYe7gDWxC4Wl/SNsLM6SE1IWvRPYMgSJaUvNw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-object-rest-spread@^7.28.0": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.28.4.tgz#9ee1ceca80b3e6c4bac9247b2149e36958f7f98d" - integrity sha512-373KA2HQzKhQCYiRVIRr+3MjpCObqzDlyrM6u4I201wL8Mp2wHf7uB8GhDwis03k2ti8Zr65Zyyqs1xOxUF/Ew== +"@babel/plugin-transform-object-rest-spread@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.29.7.tgz#e0d5060241803922c545676613cc8acbbda0d266" + integrity sha512-Ld98jn4c0smUywL57m7SgsHq3OpThOa6LqZJif3G6jYOovPleoFhVrBJ1WegRApSFB2wu4+RelAj9AC9G08Z4A== dependencies: - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/plugin-transform-destructuring" "^7.28.0" - "@babel/plugin-transform-parameters" "^7.27.7" - "@babel/traverse" "^7.28.4" + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/plugin-transform-destructuring" "^7.29.7" + "@babel/plugin-transform-parameters" "^7.29.7" + "@babel/traverse" "^7.29.7" -"@babel/plugin-transform-object-super@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.27.1.tgz#1c932cd27bf3874c43a5cac4f43ebf970c9871b5" - integrity sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng== +"@babel/plugin-transform-object-super@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.29.7.tgz#e89283d14fa3c35817d4493ffc6bc649aa10e4eb" + integrity sha512-Ea/diGcw0twB5IlZPO5sgET6fJsLJqPABqTuFWIR+iMPGPZJkATEIWx0wa+aEQ5UY1CBQyP/gkAiLEqn1vBiQA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-replace-supers" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-replace-supers" "^7.29.7" -"@babel/plugin-transform-optional-catch-binding@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.27.1.tgz#84c7341ebde35ccd36b137e9e45866825072a30c" - integrity sha512-txEAEKzYrHEX4xSZN4kJ+OfKXFVSWKB2ZxM9dpcE3wT7smwkNmXo5ORRlVzMVdJbD+Q8ILTgSD7959uj+3Dm3Q== +"@babel/plugin-transform-optional-catch-binding@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.29.7.tgz#729664f79985be504eba112c51de9f71d009030b" + integrity sha512-sLsyndxK2VwX6yNUOakMb7Sh553ZTe/vVM1XJ+9Z5aW1ytsc8xOIwmyk05NNjN60vkc5/KqoTH6hB4V41LJhng== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-optional-chaining@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.27.1.tgz#874ce3c4f06b7780592e946026eb76a32830454f" - integrity sha512-BQmKPPIuc8EkZgNKsv0X4bPmOoayeu4F1YCwx2/CfmDSXDbp7GnzlUH+/ul5VGfRg1AoFPsrIThlEBj2xb4CAg== +"@babel/plugin-transform-optional-chaining@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.29.7.tgz#b84a1b574b3c73001023092567e16c492b720e51" + integrity sha512-6GM1dhvK3gNODkXcEcMCOLEDCLSoZ/sBbro2Ax8HURyasQ4NshagQixkRFdh5niI6E4gmA/jYI/4aT7rRos3ZQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" -"@babel/plugin-transform-parameters@^7.27.7": - version "7.27.7" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.27.7.tgz#1fd2febb7c74e7d21cf3b05f7aebc907940af53a" - integrity sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg== +"@babel/plugin-transform-parameters@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.29.7.tgz#a5ddc3b9bfb534814cb8334cbeba47d9cf9db090" + integrity sha512-ZDOBqV/qLYJI0YElr8DcENEyARsFQeESqWXH6gZlghYXuPPjvweuDhP4VyEi4BlUBlLRFZVjxoZDMjxhLW766g== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-private-methods@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.27.1.tgz#fdacbab1c5ed81ec70dfdbb8b213d65da148b6af" - integrity sha512-10FVt+X55AjRAYI9BrdISN9/AQWHqldOeZDUoLyif1Kn05a56xVBXb8ZouL8pZ9jem8QpXaOt8TS7RHUIS+GPA== +"@babel/plugin-transform-private-methods@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.29.7.tgz#cea8bd3ab99533892897a02999d5b752584ad145" + integrity sha512-/6Rz4DK1ETDEM/bWHsPHcaEe7ZaT1EqSXjtSP/L0DijOYuaUhiRiOKcwpZ8P7zR4xXEHc2ITdiCgBm9Tpyv9ug== dependencies: - "@babel/helper-create-class-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-class-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-private-property-in-object@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.27.1.tgz#4dbbef283b5b2f01a21e81e299f76e35f900fb11" - integrity sha512-5J+IhqTi1XPa0DXF83jYOaARrX+41gOewWbkPyjMNRDqgOCqdffGh8L3f/Ek5utaEBZExjSAzcyjmV9SSAWObQ== +"@babel/plugin-transform-private-property-in-object@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.29.7.tgz#4a2f6be5aba47be7afbdb4cd7903c46edf3a7661" + integrity sha512-+BNo06dnrzdNNqCm1X6YUaVv0DKk8Q+JYcoZfOkLhYWNCXzlwTSRq8zGWayT1csjcpNXV9CQTBRRbmTLZac5cA== dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - "@babel/helper-create-class-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-create-class-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-property-literals@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.27.1.tgz#07eafd618800591e88073a0af1b940d9a42c6424" - integrity sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ== +"@babel/plugin-transform-property-literals@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.29.7.tgz#d45817cd72f9e134ab1f7fbb79264cfcb85cf636" + integrity sha512-bOMRLQuI0A5ZqHq3OWJ89/rXpJ/NJrbVhXiP4zwPGMs6kpcVsuTUNjwoE30K0Qm3mf48a/TnRYYD6vPNqcg6jA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" "@babel/plugin-transform-react-constant-elements@^7.21.3": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.27.1.tgz#6c6b50424e749a6e48afd14cf7b92f98cb9383f9" - integrity sha512-edoidOjl/ZxvYo4lSBOQGDSyToYVkTAwyVoa2tkuYTSmjrB1+uAedoL5iROVLXkxH+vRgA7uP4tMg2pUJpZ3Ug== + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.29.7.tgz#8264440ea2ffc5ec405aebd7eac074815d6e28b1" + integrity sha512-J0wGhKan+rIiE2OhfhRptySLrJ6SjQYM6b6N1FMlhyhCcw1Mig8vQjWchyB+bgHGDvaWo6Diu6CLRMra2uMtmg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-react-display-name@^7.27.1": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.28.0.tgz#6f20a7295fea7df42eb42fed8f896813f5b934de" - integrity sha512-D6Eujc2zMxKjfa4Zxl4GHMsmhKKZ9VpcqIchJLvwTxad9zWIYulwYItBovpDOoNLISpcZSXoDJ5gaGbQUDqViA== +"@babel/plugin-transform-react-display-name@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.29.7.tgz#bf161a6d750267b79db7ff6f8fb89c3369b02df3" + integrity sha512-+1wdDMGNb4UPeY3Q4L5yLiYe6TXPXubs4NjrgRFw13hPRLJfEMw2Q5OXkee6/IfdqePIeW4Jjwe3aBh7SdKz4Q== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-react-jsx-development@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.27.1.tgz#47ff95940e20a3a70e68ad3d4fcb657b647f6c98" - integrity sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q== +"@babel/plugin-transform-react-jsx-development@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.29.7.tgz#64e6aacb5cb43b9e80d3d5f19ddefc158a624f09" + integrity sha512-Xfy3UVMF04+ypnFbkhvfqtmvwfe92qwQdbGZVonhE+6v35GzlofmOnA1szaZqzb9xYWr0nl1e5EMmzi0DNON1g== dependencies: - "@babel/plugin-transform-react-jsx" "^7.27.1" + "@babel/plugin-transform-react-jsx" "^7.29.7" -"@babel/plugin-transform-react-jsx@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.27.1.tgz#1023bc94b78b0a2d68c82b5e96aed573bcfb9db0" - integrity sha512-2KH4LWGSrJIkVf5tSiBFYuXDAoWRq2MMwgivCf+93dd0GQi8RXLjKA/0EvRnVV5G0hrHczsquXuD01L8s6dmBw== +"@babel/plugin-transform-react-jsx@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.29.7.tgz#3d16a0e5773f079400a8c82a190709cdf92ee204" + integrity sha512-WsZulLVBUHXVj2cUcPVx6UE21TpalB6bHbSFErKT0Ib++ax24jjXe73FqlWvdylFOjiuPHYi6VCcgRad1ItN+A== dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/plugin-syntax-jsx" "^7.27.1" - "@babel/types" "^7.27.1" + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-module-imports" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/plugin-syntax-jsx" "^7.29.7" + "@babel/types" "^7.29.7" -"@babel/plugin-transform-react-pure-annotations@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.27.1.tgz#339f1ce355eae242e0649f232b1c68907c02e879" - integrity sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA== +"@babel/plugin-transform-react-pure-annotations@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.29.7.tgz#76445c90112dd0a7371b63264563bfa9a4fcd6e3" + integrity sha512-H5E+HBgDpr6Q5t+Aj11tL7XkIui1jhbIoArVQnqjgXo5/3YxkN7ZEBcWF4RQlB0T4rrxJQbXS6kiFV6B7XTqUA== dependencies: - "@babel/helper-annotate-as-pure" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-regenerator@^7.28.3": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.28.4.tgz#9d3fa3bebb48ddd0091ce5729139cd99c67cea51" - integrity sha512-+ZEdQlBoRg9m2NnzvEeLgtvBMO4tkFBw5SQIUgLICgTrumLoU7lr+Oghi6km2PFj+dbUt2u1oby2w3BDO9YQnA== +"@babel/plugin-transform-regenerator@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.7.tgz#0f42626a7dbb0e7a7f52e036d3e43deebdc3ea4e" + integrity sha512-rNNFV0DBAJp988xW2DOntfDoYn1eR8GGF5AT5vYc+rjyfaQkM242c9tZUHHPe7KYaiJizXPWhQTzzdbXySyhBw== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-regexp-modifiers@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.27.1.tgz#df9ba5577c974e3f1449888b70b76169998a6d09" - integrity sha512-TtEciroaiODtXvLZv4rmfMhkCv8jx3wgKpL68PuiPh2M4fvz5jhsA7697N1gMvkvr/JTF13DrFYyEbY9U7cVPA== +"@babel/plugin-transform-regexp-modifiers@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.29.7.tgz#68311c0c10af2198212528863f8542843e424025" + integrity sha512-mB5Fs0VWrJ42ZCmc8114v60qetdaUVNkj9PmSZRmanCZM3S9hm0CFRLjRmYIsuXav14l2jvZ+4T8iiCGnhj3nQ== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-reserved-words@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.27.1.tgz#40fba4878ccbd1c56605a4479a3a891ac0274bb4" - integrity sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw== +"@babel/plugin-transform-reserved-words@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.29.7.tgz#a6feeb179b36a5f1fc6e3154c1eb727bdbe35876" + integrity sha512-5+YhdpVgmfSmwZyLMftfaiffLRMHjzIRHFHHLdibcSyJm2pasMrKHrO3Ptrt2DRshjvpgjEJJ1zVW14WPq/6QA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" "@babel/plugin-transform-runtime@^7.25.9": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.28.3.tgz#f5990a1b2d2bde950ed493915e0719841c8d0eaa" - integrity sha512-Y6ab1kGqZ0u42Zv/4a7l0l72n9DKP/MKoKWaUSBylrhNZO2prYuqFOLbn5aW5SIFXwSH93yfjbgllL8lxuGKLg== + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.29.7.tgz#7c7fb6e2a46dce67e278b6cc84421c1d16da5695" + integrity sha512-xmAscdE/AsqRW7vutbPNoUmu/nF5SrLKPs7aoJgEjo35lLKA/Bc0i2rMv/hr1+Y0o1bQCiVtith3u2vdgRL39Q== dependencies: - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-module-imports" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" babel-plugin-polyfill-corejs2 "^0.4.14" babel-plugin-polyfill-corejs3 "^0.13.0" babel-plugin-polyfill-regenerator "^0.6.5" semver "^6.3.1" -"@babel/plugin-transform-shorthand-properties@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.27.1.tgz#532abdacdec87bfee1e0ef8e2fcdee543fe32b90" - integrity sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ== +"@babel/plugin-transform-shorthand-properties@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.29.7.tgz#25c0436b98f4bd9ca4b98e1fbd662743bbaab9bf" + integrity sha512-I+WYbGBAiCn7nA6xBrlgPH+MB7HWb4u8pv5S0Pv7OtwNvIFvCCb24YlttKEeUFVurfBCEaOTnuhlqsb7f0Z5Dg== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-spread@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.27.1.tgz#1a264d5fc12750918f50e3fe3e24e437178abb08" - integrity sha512-kpb3HUqaILBJcRFVhFUs6Trdd4mkrzcGXss+6/mxUd273PfbWqSDHRzMT2234gIg2QYfAjvXLSquP1xECSg09Q== +"@babel/plugin-transform-spread@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.29.7.tgz#a128bcdd6b5e5e47054907b2e50bc19c3f856edd" + integrity sha512-/u5K1QWada7tbYNqTjMh96718g9NTwh9tfPJMsSmVsQwGT447FskV+KcfeXkXq2GWki4EM/MuTdmBec+hOuVTQ== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" -"@babel/plugin-transform-sticky-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.27.1.tgz#18984935d9d2296843a491d78a014939f7dcd280" - integrity sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g== +"@babel/plugin-transform-sticky-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.29.7.tgz#a42c0fd1fa42f7e98e1e0c7757f72a1bbca3a015" + integrity sha512-BCHzNYJGe9l7EpwwDBN/ztlL2NYFFq8hp9ddjtUEM9f2O7S7kKV/lL6Fwo7IF7NSkYhPK2vO+86nIGltA90MsA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-template-literals@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.27.1.tgz#1a0eb35d8bb3e6efc06c9fd40eb0bcef548328b8" - integrity sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg== +"@babel/plugin-transform-template-literals@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.29.7.tgz#ada97d8e0832bca8edb315888aa654b1570f3835" + integrity sha512-NCSEJ4sLFU2gqAub45HYh4fus2yQ36rr6ei6vpU7NdoJqCpxvEG8E6eJpscGyXP3VHD2Ny+fSXr04k1hoUrFqA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-typeof-symbol@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.27.1.tgz#70e966bb492e03509cf37eafa6dcc3051f844369" - integrity sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw== +"@babel/plugin-transform-typeof-symbol@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.29.7.tgz#d848a4677c1ee3485ab017f4018f04597798911c" + integrity sha512-223mNGoTkBiTEWFoK+Q6Go3tueMRclO8vxxxxquNCYuNI4jWOofFKJRRDu6SDrB8Sgo1UEGW9T4GAQ8ZyRso1A== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-typescript@^7.27.1": - version "7.28.0" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.28.0.tgz#796cbd249ab56c18168b49e3e1d341b72af04a6b" - integrity sha512-4AEiDEBPIZvLQaWlc9liCavE0xRM0dNca41WtBeM3jgFptfUOSG9z0uteLhq6+3rq+WB6jIvUwKDTpXEHPJ2Vg== +"@babel/plugin-transform-typescript@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.29.7.tgz#f0449c3df7037bbe232043476851c38f5e4a7615" + integrity sha512-jK52h8LaLc7JarhQV2ofeFMts4H7vnOXnqZNA6fYglBTZewRBE51KWt3BUltW1P+KoPsYkHoJeXePuz4zo2LMw== dependencies: - "@babel/helper-annotate-as-pure" "^7.27.3" - "@babel/helper-create-class-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-skip-transparent-expression-wrappers" "^7.27.1" - "@babel/plugin-syntax-typescript" "^7.27.1" + "@babel/helper-annotate-as-pure" "^7.29.7" + "@babel/helper-create-class-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-skip-transparent-expression-wrappers" "^7.29.7" + "@babel/plugin-syntax-typescript" "^7.29.7" -"@babel/plugin-transform-unicode-escapes@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.27.1.tgz#3e3143f8438aef842de28816ece58780190cf806" - integrity sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg== +"@babel/plugin-transform-unicode-escapes@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.29.7.tgz#1e99554b0cddfd650d649a9f2b996049893e5720" + integrity sha512-jCfXxSjf94lf4E0hKE0AByxF6F3/pVFqRdUUNkDJhsY0m1ZKjnN6ZYyMeHNpzflxb/0q5b7t3p+BE+SLF1WOtA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-unicode-property-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.27.1.tgz#bdfe2d3170c78c5691a3c3be934c8c0087525956" - integrity sha512-uW20S39PnaTImxp39O5qFlHLS9LJEmANjMG7SxIhap8rCHqu0Ik+tLEPX5DKmHn6CsWQ7j3lix2tFOa5YtL12Q== +"@babel/plugin-transform-unicode-property-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.29.7.tgz#44444afc73768c2190fac4d95f7716817b7f204a" + integrity sha512-OgZ+zoAJgZLUCunsTRQ5LAjOywDv5zzZ2/hQ5aMw1pGXyY2rtE8/chXYUmu3AlVHKpm10KEdG9aMwbI/K76ZGw== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-unicode-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.27.1.tgz#25948f5c395db15f609028e370667ed8bae9af97" - integrity sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw== +"@babel/plugin-transform-unicode-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.29.7.tgz#c3064b293ff7f1794b71f7650eec8db9896d3e59" + integrity sha512-7D/x/23/d/3VqZ0QA+LGbZMlGwZjztBygSWWWsfTPoQ1oQ6Q1P6Mr3d0kk42XabyUVw+fha3LqdRsFqeKqvCyA== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" -"@babel/plugin-transform-unicode-sets-regex@^7.27.1": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.27.1.tgz#6ab706d10f801b5c72da8bb2548561fa04193cd1" - integrity sha512-EtkOujbc4cgvb0mlpQefi4NTPBzhSIevblFevACNLUspmrALgmEBdL/XfnyyITfd8fKBZrZys92zOWcik7j9Tw== +"@babel/plugin-transform-unicode-sets-regex@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.29.7.tgz#b03ac9f27326f6197e8e574add83bbf33fc34ecd" + integrity sha512-BLOhLht9DOJwIxlmp91wHvkXv1lguuHS3/FwUO8HL1H0u8s4hR1gASVFyilu9iGtcTRYqjTZmlsFFeQletntEg== dependencies: - "@babel/helper-create-regexp-features-plugin" "^7.27.1" - "@babel/helper-plugin-utils" "^7.27.1" + "@babel/helper-create-regexp-features-plugin" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" "@babel/preset-env@^7.20.2", "@babel/preset-env@^7.25.9": - version "7.28.3" - resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.28.3.tgz#2b18d9aff9e69643789057ae4b942b1654f88187" - integrity sha512-ROiDcM+GbYVPYBOeCR6uBXKkQpBExLl8k9HO1ygXEyds39j+vCCsjmj7S8GOniZQlEs81QlkdJZe76IpLSiqpg== - dependencies: - "@babel/compat-data" "^7.28.0" - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-validator-option" "^7.27.1" - "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.27.1" - "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.27.1" - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.27.1" - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.27.1" - "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.28.3" + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.29.7.tgz#5e2ab5e764b493fdefc99c43aeaa70a9533a37fd" + integrity sha512-GYzX36n1nsciIb0uyH0GHwxwtNwPQIcpxSeiVLDtG/B7jB5xXgchnmL1f/jCX5o+pwnaDBtO60ONSJhEBJfxYA== + dependencies: + "@babel/compat-data" "^7.29.7" + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-validator-option" "^7.29.7" + "@babel/plugin-bugfix-firefox-class-in-computed-class-key" "^7.29.7" + "@babel/plugin-bugfix-safari-class-field-initializer-scope" "^7.29.7" + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression" "^7.29.7" + "@babel/plugin-bugfix-safari-rest-destructuring-rhs-array" "^7.29.7" + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining" "^7.29.7" + "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly" "^7.29.7" "@babel/plugin-proposal-private-property-in-object" "7.21.0-placeholder-for-preset-env.2" - "@babel/plugin-syntax-import-assertions" "^7.27.1" - "@babel/plugin-syntax-import-attributes" "^7.27.1" + "@babel/plugin-syntax-import-assertions" "^7.29.7" + "@babel/plugin-syntax-import-attributes" "^7.29.7" "@babel/plugin-syntax-unicode-sets-regex" "^7.18.6" - "@babel/plugin-transform-arrow-functions" "^7.27.1" - "@babel/plugin-transform-async-generator-functions" "^7.28.0" - "@babel/plugin-transform-async-to-generator" "^7.27.1" - "@babel/plugin-transform-block-scoped-functions" "^7.27.1" - "@babel/plugin-transform-block-scoping" "^7.28.0" - "@babel/plugin-transform-class-properties" "^7.27.1" - "@babel/plugin-transform-class-static-block" "^7.28.3" - "@babel/plugin-transform-classes" "^7.28.3" - "@babel/plugin-transform-computed-properties" "^7.27.1" - "@babel/plugin-transform-destructuring" "^7.28.0" - "@babel/plugin-transform-dotall-regex" "^7.27.1" - "@babel/plugin-transform-duplicate-keys" "^7.27.1" - "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.27.1" - "@babel/plugin-transform-dynamic-import" "^7.27.1" - "@babel/plugin-transform-explicit-resource-management" "^7.28.0" - "@babel/plugin-transform-exponentiation-operator" "^7.27.1" - "@babel/plugin-transform-export-namespace-from" "^7.27.1" - "@babel/plugin-transform-for-of" "^7.27.1" - "@babel/plugin-transform-function-name" "^7.27.1" - "@babel/plugin-transform-json-strings" "^7.27.1" - "@babel/plugin-transform-literals" "^7.27.1" - "@babel/plugin-transform-logical-assignment-operators" "^7.27.1" - "@babel/plugin-transform-member-expression-literals" "^7.27.1" - "@babel/plugin-transform-modules-amd" "^7.27.1" - "@babel/plugin-transform-modules-commonjs" "^7.27.1" - "@babel/plugin-transform-modules-systemjs" "^7.27.1" - "@babel/plugin-transform-modules-umd" "^7.27.1" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.27.1" - "@babel/plugin-transform-new-target" "^7.27.1" - "@babel/plugin-transform-nullish-coalescing-operator" "^7.27.1" - "@babel/plugin-transform-numeric-separator" "^7.27.1" - "@babel/plugin-transform-object-rest-spread" "^7.28.0" - "@babel/plugin-transform-object-super" "^7.27.1" - "@babel/plugin-transform-optional-catch-binding" "^7.27.1" - "@babel/plugin-transform-optional-chaining" "^7.27.1" - "@babel/plugin-transform-parameters" "^7.27.7" - "@babel/plugin-transform-private-methods" "^7.27.1" - "@babel/plugin-transform-private-property-in-object" "^7.27.1" - "@babel/plugin-transform-property-literals" "^7.27.1" - "@babel/plugin-transform-regenerator" "^7.28.3" - "@babel/plugin-transform-regexp-modifiers" "^7.27.1" - "@babel/plugin-transform-reserved-words" "^7.27.1" - "@babel/plugin-transform-shorthand-properties" "^7.27.1" - "@babel/plugin-transform-spread" "^7.27.1" - "@babel/plugin-transform-sticky-regex" "^7.27.1" - "@babel/plugin-transform-template-literals" "^7.27.1" - "@babel/plugin-transform-typeof-symbol" "^7.27.1" - "@babel/plugin-transform-unicode-escapes" "^7.27.1" - "@babel/plugin-transform-unicode-property-regex" "^7.27.1" - "@babel/plugin-transform-unicode-regex" "^7.27.1" - "@babel/plugin-transform-unicode-sets-regex" "^7.27.1" + "@babel/plugin-transform-arrow-functions" "^7.29.7" + "@babel/plugin-transform-async-generator-functions" "^7.29.7" + "@babel/plugin-transform-async-to-generator" "^7.29.7" + "@babel/plugin-transform-block-scoped-functions" "^7.29.7" + "@babel/plugin-transform-block-scoping" "^7.29.7" + "@babel/plugin-transform-class-properties" "^7.29.7" + "@babel/plugin-transform-class-static-block" "^7.29.7" + "@babel/plugin-transform-classes" "^7.29.7" + "@babel/plugin-transform-computed-properties" "^7.29.7" + "@babel/plugin-transform-destructuring" "^7.29.7" + "@babel/plugin-transform-dotall-regex" "^7.29.7" + "@babel/plugin-transform-duplicate-keys" "^7.29.7" + "@babel/plugin-transform-duplicate-named-capturing-groups-regex" "^7.29.7" + "@babel/plugin-transform-dynamic-import" "^7.29.7" + "@babel/plugin-transform-explicit-resource-management" "^7.29.7" + "@babel/plugin-transform-exponentiation-operator" "^7.29.7" + "@babel/plugin-transform-export-namespace-from" "^7.29.7" + "@babel/plugin-transform-for-of" "^7.29.7" + "@babel/plugin-transform-function-name" "^7.29.7" + "@babel/plugin-transform-json-strings" "^7.29.7" + "@babel/plugin-transform-literals" "^7.29.7" + "@babel/plugin-transform-logical-assignment-operators" "^7.29.7" + "@babel/plugin-transform-member-expression-literals" "^7.29.7" + "@babel/plugin-transform-modules-amd" "^7.29.7" + "@babel/plugin-transform-modules-commonjs" "^7.29.7" + "@babel/plugin-transform-modules-systemjs" "^7.29.7" + "@babel/plugin-transform-modules-umd" "^7.29.7" + "@babel/plugin-transform-named-capturing-groups-regex" "^7.29.7" + "@babel/plugin-transform-new-target" "^7.29.7" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.29.7" + "@babel/plugin-transform-numeric-separator" "^7.29.7" + "@babel/plugin-transform-object-rest-spread" "^7.29.7" + "@babel/plugin-transform-object-super" "^7.29.7" + "@babel/plugin-transform-optional-catch-binding" "^7.29.7" + "@babel/plugin-transform-optional-chaining" "^7.29.7" + "@babel/plugin-transform-parameters" "^7.29.7" + "@babel/plugin-transform-private-methods" "^7.29.7" + "@babel/plugin-transform-private-property-in-object" "^7.29.7" + "@babel/plugin-transform-property-literals" "^7.29.7" + "@babel/plugin-transform-regenerator" "^7.29.7" + "@babel/plugin-transform-regexp-modifiers" "^7.29.7" + "@babel/plugin-transform-reserved-words" "^7.29.7" + "@babel/plugin-transform-shorthand-properties" "^7.29.7" + "@babel/plugin-transform-spread" "^7.29.7" + "@babel/plugin-transform-sticky-regex" "^7.29.7" + "@babel/plugin-transform-template-literals" "^7.29.7" + "@babel/plugin-transform-typeof-symbol" "^7.29.7" + "@babel/plugin-transform-unicode-escapes" "^7.29.7" + "@babel/plugin-transform-unicode-property-regex" "^7.29.7" + "@babel/plugin-transform-unicode-regex" "^7.29.7" + "@babel/plugin-transform-unicode-sets-regex" "^7.29.7" "@babel/preset-modules" "0.1.6-no-external-plugins" - babel-plugin-polyfill-corejs2 "^0.4.14" - babel-plugin-polyfill-corejs3 "^0.13.0" - babel-plugin-polyfill-regenerator "^0.6.5" - core-js-compat "^3.43.0" + babel-plugin-polyfill-corejs2 "^0.4.15" + babel-plugin-polyfill-corejs3 "^0.14.0" + babel-plugin-polyfill-regenerator "^0.6.6" + core-js-compat "^3.48.0" semver "^6.3.1" "@babel/preset-modules@0.1.6-no-external-plugins": @@ -997,69 +1037,72 @@ esutils "^2.0.2" "@babel/preset-react@^7.18.6", "@babel/preset-react@^7.25.9": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.27.1.tgz#86ea0a5ca3984663f744be2fd26cb6747c3fd0ec" - integrity sha512-oJHWh2gLhU9dW9HHr42q0cI0/iHHXTLGe39qvpAZZzagHy0MzYLCnCVV0symeRvzmjHyVU7mw2K06E6u/JwbhA== + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/preset-react/-/preset-react-7.29.7.tgz#2ed18366e38c2081bbf1760dc01e88fa5674eb17" + integrity sha512-C+PV1TFUPTmBQGoPBL8j2QmLpZ117YTCwxIZeJOM96GbYMFSc7/pOXU5lVykwnZxyTqQxRsvoRk6f2FktZgGHA== dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-validator-option" "^7.27.1" - "@babel/plugin-transform-react-display-name" "^7.27.1" - "@babel/plugin-transform-react-jsx" "^7.27.1" - "@babel/plugin-transform-react-jsx-development" "^7.27.1" - "@babel/plugin-transform-react-pure-annotations" "^7.27.1" + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-validator-option" "^7.29.7" + "@babel/plugin-transform-react-display-name" "^7.29.7" + "@babel/plugin-transform-react-jsx" "^7.29.7" + "@babel/plugin-transform-react-jsx-development" "^7.29.7" + "@babel/plugin-transform-react-pure-annotations" "^7.29.7" "@babel/preset-typescript@^7.21.0", "@babel/preset-typescript@^7.25.9": - version "7.27.1" - resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.27.1.tgz#190742a6428d282306648a55b0529b561484f912" - integrity sha512-l7WfQfX0WK4M0v2RudjuQK4u99BS6yLHYEmdtVPP7lKV013zr9DygFuWNlnbvQ9LR+LS0Egz/XAvGx5U9MX0fQ== - dependencies: - "@babel/helper-plugin-utils" "^7.27.1" - "@babel/helper-validator-option" "^7.27.1" - "@babel/plugin-syntax-jsx" "^7.27.1" - "@babel/plugin-transform-modules-commonjs" "^7.27.1" - "@babel/plugin-transform-typescript" "^7.27.1" - -"@babel/runtime-corejs3@^7.25.9": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/runtime-corejs3/-/runtime-corejs3-7.28.4.tgz#c25be39c7997ce2f130d70b9baecb8ed94df93fa" - integrity sha512-h7iEYiW4HebClDEhtvFObtPmIvrd1SSfpI9EhOeKk4CtIK/ngBWFpuhCzhdmRKtg71ylcue+9I6dv54XYO1epQ== - dependencies: - core-js-pure "^3.43.0" - -"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.25.9", "@babel/runtime@^7.28.3", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.4.tgz#a70226016fabe25c5783b2f22d3e1c9bc5ca3326" - integrity sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ== - -"@babel/template@^7.27.1", "@babel/template@^7.27.2": - version "7.27.2" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.27.2.tgz#fa78ceed3c4e7b63ebf6cb39e5852fca45f6809d" - integrity sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/parser" "^7.27.2" - "@babel/types" "^7.27.1" - -"@babel/traverse@^7.25.9", "@babel/traverse@^7.27.1", "@babel/traverse@^7.28.0", "@babel/traverse@^7.28.3", "@babel/traverse@^7.28.4": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.28.4.tgz#8d456101b96ab175d487249f60680221692b958b" - integrity sha512-YEzuboP2qvQavAcjgQNVgsvHIDv6ZpwXvcvjmyySP2DIMuByS/6ioU5G9pYrWHM6T2YDfc7xga9iNzYOs12CFQ== - dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.3" - "@babel/helper-globals" "^7.28.0" - "@babel/parser" "^7.28.4" - "@babel/template" "^7.27.2" - "@babel/types" "^7.28.4" + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.29.7.tgz#de9be1f47b785c979ec7b3a71f4cd8bae5267b62" + integrity sha512-/Foi8vKY2EVbed/1eZx0gJEEwHAIxogrySI7rULcRIvhZzbvoE/b5qG5Ghc0WKAFKOHA9SD1x7RsFlOYdutIiQ== + dependencies: + "@babel/helper-plugin-utils" "^7.29.7" + "@babel/helper-validator-option" "^7.29.7" + "@babel/plugin-syntax-jsx" "^7.29.7" + "@babel/plugin-transform-modules-commonjs" "^7.29.7" + "@babel/plugin-transform-typescript" "^7.29.7" + +"@babel/runtime@^7.1.2", "@babel/runtime@^7.10.3", "@babel/runtime@^7.12.13", "@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.25.9", "@babel/runtime@^7.28.6", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.29.7.tgz#12022450c45a4da6d8d8287b18a4ff2ddb23f768" + integrity sha512-Nq8OhGWiZIZGV6hLHoyAKLLcJihP/xFeBMGJoUrxTX2psI8dCifzLhZISFb+VWS3wFMRDmCGw5R+dOySCqPLhw== + +"@babel/template@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.29.7.tgz#4d9d4004f645cdd304de958c725162784ecac700" + integrity sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/traverse@^7.25.9", "@babel/traverse@^7.29.7": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.29.7.tgz#c47b07a41b95da0907d026b5dd894d98de7d2f2d" + integrity sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/generator" "^7.29.7" + "@babel/helper-globals" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/template" "^7.29.7" + "@babel/types" "^7.29.7" debug "^4.3.1" -"@babel/types@^7.21.3", "@babel/types@^7.27.1", "@babel/types@^7.27.3", "@babel/types@^7.28.2", "@babel/types@^7.28.4", "@babel/types@^7.4.4": - version "7.28.4" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.28.4.tgz#0a4e618f4c60a7cd6c11cb2d48060e4dbe38ac3a" - integrity sha512-bkFqkLhh3pMBUQQkpVgWDWq/lqzc2678eUyDlTBhRqhCHFguYYGM0Efga7tYk4TogG/3x0EEl66/OQ+WGbWB/Q== +"@babel/types@^7.21.3", "@babel/types@^7.29.7", "@babel/types@^7.4.4": + version "7.29.7" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.29.7.tgz#8005e31d82712ee7adaef6e23c63b71a62770a92" + integrity sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA== dependencies: - "@babel/helper-string-parser" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" + "@babel/helper-string-parser" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" + +"@braintree/sanitize-url@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@braintree/sanitize-url/-/sanitize-url-7.1.2.tgz#ca2035b0fefe956a8676ff0c69af73e605fcd81f" + integrity sha512-jigsZK+sMF/cuiB7sERuo9V7N9jx+dhmHHnQyDSVdpZwVutaBu7WvNYqMDLSgFgfB30n452TP3vjDAvFC973mA== + +"@chevrotain/types@~11.1.2": + version "11.1.2" + resolved "https://registry.yarnpkg.com/@chevrotain/types/-/types-11.1.2.tgz#e83a1a2704f0c5e49e7592b214031a0f4a34d7e5" + integrity sha512-U+HFai5+zmJCkK86QsaJtoITlboZHBqrVketcO2ROv865xfCMSFpELQoz1GkX5GzME8pTa+3kbKrZHQtI0gdbw== "@colors/colors@1.5.0": version "1.5.0" @@ -1104,15 +1147,15 @@ resolved "https://registry.yarnpkg.com/@csstools/media-query-list-parser/-/media-query-list-parser-4.0.3.tgz#7aec77bcb89c2da80ef207e73f474ef9e1b3cdf1" integrity sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ== -"@csstools/postcss-alpha-function@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-alpha-function/-/postcss-alpha-function-1.0.0.tgz#8764fbbf25a5f1e106fb623ae632e01a220a6fc2" - integrity sha512-r2L8KNg5Wriq5n8IUQcjzy2Rh37J5YjzP9iOyHZL5fxdWYHB08vqykHQa4wAzN/tXwDuCHnhQDGCtxfS76xn7g== +"@csstools/postcss-alpha-function@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-alpha-function/-/postcss-alpha-function-1.0.1.tgz#7989605711de7831bc7cd75b94c9b5bac9c3728e" + integrity sha512-isfLLwksH3yHkFXfCI2Gcaqg7wGGHZZwunoJzEZk0yKYIokgre6hYVFibKL3SYAoR1kBXova8LB+JoO5vZzi9w== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" "@csstools/postcss-cascade-layers@^5.0.2": @@ -1123,58 +1166,69 @@ "@csstools/selector-specificity" "^5.0.0" postcss-selector-parser "^7.0.0" -"@csstools/postcss-color-function-display-p3-linear@^1.0.0": - version "1.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function-display-p3-linear/-/postcss-color-function-display-p3-linear-1.0.0.tgz#27395b62a5d9a108eefcc0eb463247a15f4269a1" - integrity sha512-7q+OuUqfowRrP84m/Jl0wv3pfCQyUTCW5MxDIux+/yty5IkUUHOTigCjrC0Fjy3OT0ncGLudHbfLWmP7E1arNA== +"@csstools/postcss-color-function-display-p3-linear@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function-display-p3-linear/-/postcss-color-function-display-p3-linear-1.0.1.tgz#3017ff5e1f65307d6083e58e93d76724fb1ebf9f" + integrity sha512-E5qusdzhlmO1TztYzDIi8XPdPoYOjoTY6HBYBCYSj+Gn4gQRBlvjgPQXzfzuPQqt8EhkC/SzPKObg4Mbn8/xMg== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-color-function@^4.0.11": - version "4.0.11" - resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-4.0.11.tgz#03c34a51dc00943a6674294fb1163e7af9e87ffd" - integrity sha512-AtH22zLHTLm64HLdpv5EedT/zmYTm1MtdQbQhRZXxEB6iYtS6SrS1jLX3TcmUWMFzpumK/OVylCm3HcLms4slw== +"@csstools/postcss-color-function@^4.0.12": + version "4.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-function/-/postcss-color-function-4.0.12.tgz#a7c85a98c77b522a194a1bbb00dd207f40c7a771" + integrity sha512-yx3cljQKRaSBc2hfh8rMZFZzChaFgwmO2JfFgFr1vMcF3C/uyy5I4RFIBOIWGq1D+XbKCG789CGkG6zzkLpagA== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-color-mix-function@^3.0.11": - version "3.0.11" - resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.11.tgz#6db0a1c749fabaf2bf978b37044700d1c1b09fc2" - integrity sha512-cQpXBelpTx0YhScZM5Ve0jDCA4RzwFc7oNafzZOGgCHt/GQVYiU8Vevz9QJcwy/W0Pyi/BneY+KMjz23lI9r+Q== +"@csstools/postcss-color-mix-function@^3.0.12": + version "3.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-function/-/postcss-color-mix-function-3.0.12.tgz#2f1ee9f8208077af069545c9bd79bb9733382c2a" + integrity sha512-4STERZfCP5Jcs13P1U5pTvI9SkgLgfMUMhdXW8IlJWkzOOOqhZIjcNhWtNJZes2nkBDsIKJ0CJtFtuaZ00moag== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-color-mix-variadic-function-arguments@^1.0.1": - version "1.0.1" - resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-variadic-function-arguments/-/postcss-color-mix-variadic-function-arguments-1.0.1.tgz#2dd9d66ded0d41cd7b2c13a1188f03e894c17d7e" - integrity sha512-c7hyBtbF+jlHIcUGVdWY06bHICgguV9ypfcELU3eU3W/9fiz2dxM8PqxQk2ndXYTzLnwPvNNqu1yCmQ++N6Dcg== +"@csstools/postcss-color-mix-variadic-function-arguments@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@csstools/postcss-color-mix-variadic-function-arguments/-/postcss-color-mix-variadic-function-arguments-1.0.2.tgz#b4012b62a4eaa24d694172bb7137f9d2319cb8f2" + integrity sha512-rM67Gp9lRAkTo+X31DUqMEq+iK+EFqsidfecmhrteErxJZb6tUoJBVQca1Vn1GpDql1s1rD1pKcuYzMsg7Z1KQ== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-content-alt-text@^2.0.7": - version "2.0.7" - resolved "https://registry.yarnpkg.com/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-2.0.7.tgz#ac0a263e8acb0be99cdcfc0b1792c62141825747" - integrity sha512-cq/zWaEkpcg3RttJ5+GdNwk26NwxY5KgqgtNL777Fdd28AVGHxuBvqmK4Jq4oKhW1NX4M2LbgYAVVN0NZ+/XYQ== +"@csstools/postcss-content-alt-text@^2.0.8": + version "2.0.8" + resolved "https://registry.yarnpkg.com/@csstools/postcss-content-alt-text/-/postcss-content-alt-text-2.0.8.tgz#1d52da1762893c32999ff76839e48d6ec7c7a4cb" + integrity sha512-9SfEW9QCxEpTlNMnpSqFaHyzsiRpZ5J5+KqCu1u5/eEJAWsMhzT40qf0FIbeeglEvrGRMdDzAxMIz3wqoGSb+Q== + dependencies: + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" + "@csstools/utilities" "^2.0.0" + +"@csstools/postcss-contrast-color-function@^2.0.12": + version "2.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-contrast-color-function/-/postcss-contrast-color-function-2.0.12.tgz#ca46986d095c60f208d9e3f24704d199c9172637" + integrity sha512-YbwWckjK3qwKjeYz/CijgcS7WDUCtKTd8ShLztm3/i5dhh4NaqzsbYnhm4bjrpFpnLZ31jVcbK8YL77z3GBPzA== dependencies: + "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" "@csstools/postcss-exponential-functions@^2.0.9": @@ -1203,34 +1257,34 @@ "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" -"@csstools/postcss-gradients-interpolation-method@^5.0.11": - version "5.0.11" - resolved "https://registry.yarnpkg.com/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.11.tgz#f1c5c431a44ed9655cb408aea8666ed2c5250490" - integrity sha512-8M3mcNTL3cGIJXDnvrJ2oWEcKi3zyw7NeYheFKePUlBmLYm1gkw9Rr/BA7lFONrOPeQA3yeMPldrrws6lqHrug== +"@csstools/postcss-gradients-interpolation-method@^5.0.12": + version "5.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-gradients-interpolation-method/-/postcss-gradients-interpolation-method-5.0.12.tgz#0955cce4d97203b861bf66742bbec611b2f3661c" + integrity sha512-jugzjwkUY0wtNrZlFeyXzimUL3hN4xMvoPnIXxoZqxDvjZRiSh+itgHcVUWzJ2VwD/VAMEgCLvtaJHX+4Vj3Ow== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-hwb-function@^4.0.11": - version "4.0.11" - resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.11.tgz#4bb173f1c8c2361bf46a842a948ee687471ae4ea" - integrity sha512-9meZbsVWTZkWsSBazQips3cHUOT29a/UAwFz0AMEXukvpIGGDR9+GMl3nIckWO5sPImsadu4F5Zy+zjt8QgCdA== +"@csstools/postcss-hwb-function@^4.0.12": + version "4.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-hwb-function/-/postcss-hwb-function-4.0.12.tgz#07f7ecb08c50e094673bd20eaf7757db0162beee" + integrity sha512-mL/+88Z53KrE4JdePYFJAQWFrcADEqsLprExCM04GDNgHIztwFzj0Mbhd/yxMBngq0NIlz58VVxjt5abNs1VhA== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-ic-unit@^4.0.3": - version "4.0.3" - resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-4.0.3.tgz#ba0375e9d346e6e5a42dc8c2cb1133b2262f9ffa" - integrity sha512-RtYYm2qUIu9vAaHB0cC8rQGlOCQAUgEc2tMr7ewlGXYipBQKjoWmyVArqsk7SEr8N3tErq6P6UOJT3amaVof5Q== +"@csstools/postcss-ic-unit@^4.0.4": + version "4.0.4" + resolved "https://registry.yarnpkg.com/@csstools/postcss-ic-unit/-/postcss-ic-unit-4.0.4.tgz#2ee2da0690db7edfbc469279711b9e69495659d2" + integrity sha512-yQ4VmossuOAql65sCPppVO1yfb7hDscf4GseF0VCA/DTDaBc0Wtf8MTqVPfjGYlT5+2buokG0Gp7y0atYZpwjg== dependencies: - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" postcss-value-parser "^4.2.0" @@ -1247,14 +1301,14 @@ "@csstools/selector-specificity" "^5.0.0" postcss-selector-parser "^7.0.0" -"@csstools/postcss-light-dark-function@^2.0.10": - version "2.0.10" - resolved "https://registry.yarnpkg.com/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.10.tgz#b606f13d1f81efd297763c6ad1ac515c3ca4165b" - integrity sha512-g7Lwb294lSoNnyrwcqoooh9fTAp47rRNo+ILg7SLRSMU3K9ePIwRt566sNx+pehiCelv4E1ICaU1EwLQuyF2qw== +"@csstools/postcss-light-dark-function@^2.0.11": + version "2.0.11" + resolved "https://registry.yarnpkg.com/@csstools/postcss-light-dark-function/-/postcss-light-dark-function-2.0.11.tgz#0df448aab9a33cb9a085264ff1f396fb80c4437d" + integrity sha512-fNJcKXJdPM3Lyrbmgw2OBbaioU7yuKZtiXClf4sGdQttitijYlZMD5K7HrC/eF83VRWRrYq6OZ0Lx92leV2LFA== dependencies: "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" "@csstools/postcss-logical-float-and-clear@^3.0.0": @@ -1314,31 +1368,44 @@ "@csstools/utilities" "^2.0.0" postcss-value-parser "^4.2.0" -"@csstools/postcss-normalize-display-values@^4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.0.tgz#ecdde2daf4e192e5da0c6fd933b6d8aff32f2a36" - integrity sha512-HlEoG0IDRoHXzXnkV4in47dzsxdsjdz6+j7MLjaACABX2NfvjFS6XVAnpaDyGesz9gK2SC7MbNwdCHusObKJ9Q== +"@csstools/postcss-normalize-display-values@^4.0.1": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.1.tgz#3738ecadb38cd6521c9565635d61aa4bf5457d27" + integrity sha512-TQUGBuRvxdc7TgNSTevYqrL8oItxiwPDixk20qCB5me/W8uF7BPbhRrAvFuhEoywQp/woRsUZ6SJ+sU5idZAIA== dependencies: postcss-value-parser "^4.2.0" -"@csstools/postcss-oklab-function@^4.0.11": - version "4.0.11" - resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.11.tgz#d69242a9b027dda731bd79db7293bc938bb6df97" - integrity sha512-9f03ZGxZ2VmSCrM4SDXlAYP+Xpu4VFzemfQUQFL9OYxAbpvDy0FjDipZ0i8So1pgs8VIbQI0bNjFWgfdpGw8ig== +"@csstools/postcss-oklab-function@^4.0.12": + version "4.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-oklab-function/-/postcss-oklab-function-4.0.12.tgz#416640ef10227eea1375b47b72d141495950971d" + integrity sha512-HhlSmnE1NKBhXsTnNGjxvhryKtO7tJd1w42DKOGFD6jSHtYOrsJTQDKPMwvOfrzUAk8t7GcpIfRyM7ssqHpFjg== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" -"@csstools/postcss-progressive-custom-properties@^4.2.0": - version "4.2.0" - resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-4.2.0.tgz#7f15349c2cd108478d28e1503c660d4037925030" - integrity sha512-fWCXRasX17N1NCPTCuwC3FJDV+Wc031f16cFuuMEfIsYJ1q5ABCa59W0C6VeMGqjNv6ldf37vvwXXAeaZjD9PA== +"@csstools/postcss-position-area-property@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-position-area-property/-/postcss-position-area-property-1.0.0.tgz#41f0cbc737a81a42890d5ec035fa26a45f4f4ad4" + integrity sha512-fUP6KR8qV2NuUZV3Cw8itx0Ep90aRjAZxAEzC3vrl6yjFv+pFsQbR18UuQctEKmA72K9O27CoYiKEgXxkqjg8Q== + +"@csstools/postcss-progressive-custom-properties@^4.2.1": + version "4.2.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-progressive-custom-properties/-/postcss-progressive-custom-properties-4.2.1.tgz#c39780b9ff0d554efb842b6bd75276aa6f1705db" + integrity sha512-uPiiXf7IEKtUQXsxu6uWtOlRMXd2QWWy5fhxHDnPdXKCQckPP3E34ZgDoZ62r2iT+UOgWsSbM4NvHE5m3mAEdw== dependencies: postcss-value-parser "^4.2.0" +"@csstools/postcss-property-rule-prelude-list@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-property-rule-prelude-list/-/postcss-property-rule-prelude-list-1.0.0.tgz#700b7aa41228c02281bda074ae778f36a09da188" + integrity sha512-IxuQjUXq19fobgmSSvUDO7fVwijDJaZMvWQugxfEUxmjBeDCVaDuMpsZ31MsTm5xbnhA+ElDi0+rQ7sQQGisFA== + dependencies: + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/postcss-random-function@^2.0.1": version "2.0.1" resolved "https://registry.yarnpkg.com/@csstools/postcss-random-function/-/postcss-random-function-2.0.1.tgz#3191f32fe72936e361dadf7dbfb55a0209e2691e" @@ -1348,15 +1415,15 @@ "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" -"@csstools/postcss-relative-color-syntax@^3.0.11": - version "3.0.11" - resolved "https://registry.yarnpkg.com/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.11.tgz#d81d59ff123fa5f3e4a0493b1e2b0585353bb541" - integrity sha512-oQ5fZvkcBrWR+k6arHXk0F8FlkmD4IxM+rcGDLWrF2f31tWyEM3lSraeWAV0f7BGH6LIrqmyU3+Qo/1acfoJng== +"@csstools/postcss-relative-color-syntax@^3.0.12": + version "3.0.12" + resolved "https://registry.yarnpkg.com/@csstools/postcss-relative-color-syntax/-/postcss-relative-color-syntax-3.0.12.tgz#ced792450102441f7c160e1d106f33e4b44181f8" + integrity sha512-0RLIeONxu/mtxRtf3o41Lq2ghLimw0w9ByLWnnEVuy89exmEEq8bynveBxNW3nyHqLAFEeNtVEmC1QK9MZ8Huw== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" "@csstools/postcss-scope-pseudo-class@^4.0.1": @@ -1384,6 +1451,21 @@ "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" +"@csstools/postcss-syntax-descriptor-syntax-production@^1.0.1": + version "1.0.1" + resolved "https://registry.yarnpkg.com/@csstools/postcss-syntax-descriptor-syntax-production/-/postcss-syntax-descriptor-syntax-production-1.0.1.tgz#98590e372e547cdae60aef47cfee11f3881307dd" + integrity sha512-GneqQWefjM//f4hJ/Kbox0C6f2T7+pi4/fqTqOFGTL3EjnvOReTqO1qUQ30CaUjkwjYq9qZ41hzarrAxCc4gow== + dependencies: + "@csstools/css-tokenizer" "^3.0.4" + +"@csstools/postcss-system-ui-font-family@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@csstools/postcss-system-ui-font-family/-/postcss-system-ui-font-family-1.0.0.tgz#bd65b79078debf6f67b318dc9b71a8f9fa16f8c8" + integrity sha512-s3xdBvfWYfoPSBsikDXbuorcMG1nN1M6GdU0qBsGfcmNR0A/qhloQZpTxjA3Xsyrk1VJvwb2pOfiOT3at/DuIQ== + dependencies: + "@csstools/css-parser-algorithms" "^3.0.5" + "@csstools/css-tokenizer" "^3.0.4" + "@csstools/postcss-text-decoration-shorthand@^4.0.3": version "4.0.3" resolved "https://registry.yarnpkg.com/@csstools/postcss-text-decoration-shorthand/-/postcss-text-decoration-shorthand-4.0.3.tgz#fae1b70f07d1b7beb4c841c86d69e41ecc6f743c" @@ -1426,25 +1508,29 @@ resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz#1d572bfbbe14b7704e0ba0f39b74815b84870d70" integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== -"@docsearch/css@3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-3.9.0.tgz#3bc29c96bf024350d73b0cfb7c2a7b71bf251cd5" - integrity sha512-cQbnVbq0rrBwNAKegIac/t6a8nWoUAn8frnkLFW6YARaRmAQr5/Eoe6Ln2fqkUCZ40KpdrKbpSAmgrkviOxuWA== +"@docsearch/core@4.6.3": + version "4.6.3" + resolved "https://registry.yarnpkg.com/@docsearch/core/-/core-4.6.3.tgz#9954c75c3ae28418e06f8e7537a920d6cd2bc22e" + integrity sha512-rUOujwIpxJRgD7+kicVsI3D5sqBvdiRTquzWBpTEXZs8ZXfGbfzpus5HqumaNYTppN2HvH8E2yNuRwYdHJeOlA== -"@docsearch/react@^3.9.0": - version "3.9.0" - resolved "https://registry.yarnpkg.com/@docsearch/react/-/react-3.9.0.tgz#d0842b700c3ee26696786f3c8ae9f10c1a3f0db3" - integrity sha512-mb5FOZYZIkRQ6s/NWnM98k879vu5pscWqTLubLFBO87igYYT4VzVazh4h5o/zCvTIZgEt3PvsCOMOswOUo9yHQ== +"@docsearch/css@4.6.3": + version "4.6.3" + resolved "https://registry.yarnpkg.com/@docsearch/css/-/css-4.6.3.tgz#a94065af4a996dd927dc5dda383395e583dbd638" + integrity sha512-nlOwcXcsNAptQl4vlL4MA78qNJKO0Qlds5GuBjCoePgkebTXLSf8Qt1oyZ3YBshYupKXG9VRGEsk1zr23d+bzQ== + +"@docsearch/react@^3.9.0 || ^4.3.2": + version "4.6.3" + resolved "https://registry.yarnpkg.com/@docsearch/react/-/react-4.6.3.tgz#80df785f9c5e484c960b914a22ea2a3e4c7210ad" + integrity sha512-Bg2wdDsoQVlNCcEKuEJAU04tvHCqgx8rIu+uIoM4pRtcx3TBKJuXutJik3LTA8LRc9YEyHkrYUrmcC0D7BYf+g== dependencies: - "@algolia/autocomplete-core" "1.17.9" - "@algolia/autocomplete-preset-algolia" "1.17.9" - "@docsearch/css" "3.9.0" - algoliasearch "^5.14.2" + "@algolia/autocomplete-core" "1.19.2" + "@docsearch/core" "4.6.3" + "@docsearch/css" "4.6.3" -"@docusaurus/babel@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/babel/-/babel-3.8.1.tgz#db329ac047184214e08e2dbc809832c696c18506" - integrity sha512-3brkJrml8vUbn9aeoZUlJfsI/GqyFcDgQJwQkmBtclJgWDEQBKKeagZfOgx0WfUQhagL1sQLNW0iBdxnI863Uw== +"@docusaurus/babel@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/babel/-/babel-3.10.2.tgz#4d5f8ac4d16bfe26c06f256687831787edb46e8a" + integrity sha512-aJ1hpGyvfkte3dDAfNbWM4biW4yWZBVz7TIGLZP+v+tWOBgxX3e0N5ZIXHIvmfNNXTI77pcHUx3KmtOk05Ze3Q== dependencies: "@babel/core" "^7.25.9" "@babel/generator" "^7.25.9" @@ -1454,25 +1540,24 @@ "@babel/preset-react" "^7.25.9" "@babel/preset-typescript" "^7.25.9" "@babel/runtime" "^7.25.9" - "@babel/runtime-corejs3" "^7.25.9" "@babel/traverse" "^7.25.9" - "@docusaurus/logger" "3.8.1" - "@docusaurus/utils" "3.8.1" + "@docusaurus/logger" "3.10.2" + "@docusaurus/utils" "3.10.2" babel-plugin-dynamic-import-node "^2.3.3" fs-extra "^11.1.1" tslib "^2.6.0" -"@docusaurus/bundler@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/bundler/-/bundler-3.8.1.tgz#e2b11d615f09a6e470774bb36441b8d06736b94c" - integrity sha512-/z4V0FRoQ0GuSLToNjOSGsk6m2lQUG4FRn8goOVoZSRsTrU8YR2aJacX5K3RG18EaX9b+52pN4m1sL3MQZVsQA== +"@docusaurus/bundler@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/bundler/-/bundler-3.10.2.tgz#323492eb0550b6a7f6e5fa6b9877cdb2c53b1be3" + integrity sha512-i0ZNcy0f0WhaOlYVgzLsWhIoEXO9kS3HRoKPtgE6vQtZUq7arKZaYdNBudr3mqCmd+TyOkwtwfHgs1ENj07r5g== dependencies: "@babel/core" "^7.25.9" - "@docusaurus/babel" "3.8.1" - "@docusaurus/cssnano-preset" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" + "@docusaurus/babel" "3.10.2" + "@docusaurus/cssnano-preset" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" babel-loader "^9.2.1" clean-css "^5.3.3" copy-webpack-plugin "^11.0.0" @@ -1490,20 +1575,20 @@ tslib "^2.6.0" url-loader "^4.1.1" webpack "^5.95.0" - webpackbar "^6.0.1" - -"@docusaurus/core@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.8.1.tgz#c22e47c16a22cb7d245306c64bc54083838ff3db" - integrity sha512-ENB01IyQSqI2FLtOzqSI3qxG2B/jP4gQPahl2C3XReiLebcVh5B5cB9KYFvdoOqOWPyr5gXK4sjgTKv7peXCrA== - dependencies: - "@docusaurus/babel" "3.8.1" - "@docusaurus/bundler" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/mdx-loader" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + webpackbar "^7.0.0" + +"@docusaurus/core@3.10.2", "@docusaurus/core@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/core/-/core-3.10.2.tgz#349cae728fc3769b3f8aef4cf538ccb79aace8d0" + integrity sha512-EYByj6nk+aD9KeVxV6Hmo2/nAAT79P21Y82ycTBOBtrmqilloIbIEhgL2/8Xpt2Jz/pgNqHAwyusOGwmbKeJmA== + dependencies: + "@docusaurus/babel" "3.10.2" + "@docusaurus/bundler" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/mdx-loader" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" boxen "^6.2.1" chalk "^4.1.2" chokidar "^3.5.3" @@ -1511,11 +1596,11 @@ combine-promises "^1.1.0" commander "^5.1.0" core-js "^3.31.1" - detect-port "^1.5.1" + detect-port "^2.1.0" escape-html "^1.0.3" eta "^2.2.0" eval "^0.1.8" - execa "5.1.1" + execa "^5.1.1" fs-extra "^11.1.1" html-tags "^3.3.1" html-webpack-plugin "^5.6.0" @@ -1526,46 +1611,73 @@ prompts "^2.4.2" react-helmet-async "npm:@slorber/react-helmet-async@1.3.0" react-loadable "npm:@docusaurus/react-loadable@6.0.0" - react-loadable-ssr-addon-v5-slorber "^1.0.1" + react-loadable-ssr-addon-v5-slorber "^1.0.3" react-router "^5.3.4" react-router-config "^5.1.1" react-router-dom "^5.3.4" semver "^7.5.4" - serve-handler "^6.1.6" + serve-handler "^6.1.7" tinypool "^1.0.2" tslib "^2.6.0" update-notifier "^6.0.2" webpack "^5.95.0" webpack-bundle-analyzer "^4.10.2" - webpack-dev-server "^4.15.2" + webpack-dev-server "^5.2.2" webpack-merge "^6.0.1" -"@docusaurus/cssnano-preset@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.8.1.tgz#bd55026251a6ab8e2194839a2042458ef9880c44" - integrity sha512-G7WyR2N6SpyUotqhGznERBK+x84uyhfMQM2MmDLs88bw4Flom6TY46HzkRkSEzaP9j80MbTN8naiL1fR17WQug== +"@docusaurus/cssnano-preset@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/cssnano-preset/-/cssnano-preset-3.10.2.tgz#e3ac7e85585f77e8fdef95176ab7c211d1296630" + integrity sha512-4gCnHRbJLTloiwfvFAa92tgb2gI4KYhvjfQVYnEaiMO/EgvWfCo1LwytHXen+1oZAN0VAlS0JAPxp3MsvKDa3A== dependencies: cssnano-preset-advanced "^6.1.2" postcss "^8.5.4" postcss-sort-media-queries "^5.2.0" tslib "^2.6.0" -"@docusaurus/logger@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.8.1.tgz#45321b2e2e14695d0dbd8b4104ea7b0fbaa98700" - integrity sha512-2wjeGDhKcExEmjX8k1N/MRDiPKXGF2Pg+df/bDDPnnJWHXnVEZxXj80d6jcxp1Gpnksl0hF8t/ZQw9elqj2+ww== +"@docusaurus/faster@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/faster/-/faster-3.10.2.tgz#6cacd14085445d5826990f7525c5df1cf371e04a" + integrity sha512-p/5E5/RyHv+QWusJMPN5i3OMJTqTgkhuwzVbB1AReDWTUHXQCmf5mlTFzGiDrWeQWIDOKsuOPn1jJh0s9LUOHA== + dependencies: + "@docusaurus/types" "3.10.2" + "@rspack/core" "^1.7.10" + "@swc/core" "^1.15.40" + "@swc/html" "^1.15.40" + browserslist "^4.24.2" + lightningcss "^1.27.0" + semver "^7.5.4" + swc-loader "^0.2.6" + tslib "^2.6.0" + webpack "^5.95.0" + +"@docusaurus/logger@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/logger/-/logger-3.10.2.tgz#280bed53d0eb9cdc56e896a155036207910e89c9" + integrity sha512-gSEwqtPfCAnC3ZSJY6xL7tcIfgg0vFD39jbv93eakuweyvO2864xR0K+kmKwBhkTCtWRNjuGGnb5rdmkD/ndqw== dependencies: chalk "^4.1.2" tslib "^2.6.0" -"@docusaurus/mdx-loader@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.8.1.tgz#74309b3614bbcef1d55fb13e6cc339b7fb000b5f" - integrity sha512-DZRhagSFRcEq1cUtBMo4TKxSNo/W6/s44yhr8X+eoXqCLycFQUylebOMPseHi5tc4fkGJqwqpWJLz6JStU9L4w== +"@docusaurus/lqip-loader@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/lqip-loader/-/lqip-loader-3.10.2.tgz#6cfe52091e4df3832acfec4001910d0e0889158b" + integrity sha512-U9ON9YXhfQcF7s4JUrcw02Nxez9ctI5nu/+6XGGmLJ+yx36ALT1fFCHzHfd7+TvSB1H7aoT/6T5BdfZvRp++Wg== + dependencies: + "@docusaurus/logger" "3.10.2" + file-loader "^6.2.0" + lodash "^4.17.21" + sharp "^0.32.3" + tslib "^2.6.0" + +"@docusaurus/mdx-loader@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/mdx-loader/-/mdx-loader-3.10.2.tgz#3b4e7ffacff4ed856db2ec4e94c13b0a652d62eb" + integrity sha512-9Fd4V/SFjfrVQ0JH5EN0+iPWyFunvTeQE3gfyFeetqPaXMP0OylIjOw16dCuXG4NZJrYdBqwzjh18/h3gRi47w== dependencies: - "@docusaurus/logger" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + "@docusaurus/logger" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" "@mdx-js/mdx" "^3.0.0" "@slorber/remark-comment" "^1.0.0" escape-html "^1.0.3" @@ -1588,12 +1700,12 @@ vfile "^6.0.1" webpack "^5.88.1" -"@docusaurus/module-type-aliases@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.8.1.tgz#454de577bd7f50b5eae16db0f76b49ca5e4e281a" - integrity sha512-6xhvAJiXzsaq3JdosS7wbRt/PwEPWHr9eM4YNYqVlbgG1hSK3uQDXTVvQktasp3VO6BmfYWPozueLWuj4gB+vg== +"@docusaurus/module-type-aliases@3.10.2", "@docusaurus/module-type-aliases@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/module-type-aliases/-/module-type-aliases-3.10.2.tgz#7c3b940c77d72e71d33a1e76f0e003b418e6163a" + integrity sha512-h/I5e4jaAhDHW4vaLENi1i2hnOEnXY1t9R+nnRTbgUl7ymVRzN/HF7dDfj8rKYGj8gfIge+Ef+iYRAMtbGvsrQ== dependencies: - "@docusaurus/types" "3.8.1" + "@docusaurus/types" "3.10.2" "@types/history" "^4.7.11" "@types/react" "*" "@types/react-router-config" "*" @@ -1601,20 +1713,21 @@ react-helmet-async "npm:@slorber/react-helmet-async@1.3.0" react-loadable "npm:@docusaurus/react-loadable@6.0.0" -"@docusaurus/plugin-content-blog@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.8.1.tgz#88d842b562b04cf59df900d9f6984b086f821525" - integrity sha512-vNTpMmlvNP9n3hGEcgPaXyvTljanAKIUkuG9URQ1DeuDup0OR7Ltvoc8yrmH+iMZJbcQGhUJF+WjHLwuk8HSdw== - dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/mdx-loader" "3.8.1" - "@docusaurus/theme-common" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" +"@docusaurus/plugin-content-blog@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-blog/-/plugin-content-blog-3.10.2.tgz#2374886ec3d76e8f014e85db8c3c010de6c419be" + integrity sha512-0cbEnNKf0InmLkhj/+nVRmqEnWEoOE8Mh+2x1qOXI0qYpCnphq4RXknVJ8BvybKRXqYVvbmdMfiJSup+k4tm5w== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/mdx-loader" "3.10.2" + "@docusaurus/theme-common" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" cheerio "1.0.0-rc.12" + combine-promises "^1.1.0" feed "^4.2.2" fs-extra "^11.1.1" lodash "^4.17.21" @@ -1625,20 +1738,20 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-docs@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.8.1.tgz#40686a206abb6373bee5638de100a2c312f112a4" - integrity sha512-oByRkSZzeGNQByCMaX+kif5Nl2vmtj2IHQI2fWjCfCootsdKZDPFLonhIp5s3IGJO7PLUfe0POyw0Xh/RrGXJA== - dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/mdx-loader" "3.8.1" - "@docusaurus/module-type-aliases" "3.8.1" - "@docusaurus/theme-common" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" +"@docusaurus/plugin-content-docs@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.10.2.tgz#249bbc806437f227b06410ecc771eb67d8910a9a" + integrity sha512-Sqwl4FPoZBDrlY8I2VU2H8O0M91CHp9T8ToMSkTZmjvHCif+1laqfXi6sTk8IfyVS/trN5yNjcWd1bFsGB6W5Q== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/mdx-loader" "3.10.2" + "@docusaurus/module-type-aliases" "3.10.2" + "@docusaurus/theme-common" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" "@types/react-router-config" "^5.0.7" combine-promises "^1.1.0" fs-extra "^11.1.1" @@ -1649,142 +1762,163 @@ utility-types "^3.10.0" webpack "^5.88.1" -"@docusaurus/plugin-content-pages@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.8.1.tgz#41b684dbd15390b7bb6a627f78bf81b6324511ac" - integrity sha512-a+V6MS2cIu37E/m7nDJn3dcxpvXb6TvgdNI22vJX8iUTp8eoMoPa0VArEbWvCxMY/xdC26WzNv4wZ6y0iIni/w== +"@docusaurus/plugin-content-pages@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-content-pages/-/plugin-content-pages-3.10.2.tgz#377c11b36a6a5e0c0c14dd9dea799f986d662ed7" + integrity sha512-h5R12sZ/vV9EPiVjvIl9YFCOwkpwXes7dQMYt3EvP6Pphu4amHxxTqWxf08Fl5DR8h+oZMbWpFTNw5vKEYfvzQ== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/mdx-loader" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + "@docusaurus/core" "3.10.2" + "@docusaurus/mdx-loader" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" fs-extra "^11.1.1" tslib "^2.6.0" webpack "^5.88.1" -"@docusaurus/plugin-css-cascade-layers@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-css-cascade-layers/-/plugin-css-cascade-layers-3.8.1.tgz#cb414b4a82aa60fc64ef2a435ad0105e142a6c71" - integrity sha512-VQ47xRxfNKjHS5ItzaVXpxeTm7/wJLFMOPo1BkmoMG4Cuz4nuI+Hs62+RMk1OqVog68Swz66xVPK8g9XTrBKRw== +"@docusaurus/plugin-css-cascade-layers@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-css-cascade-layers/-/plugin-css-cascade-layers-3.10.2.tgz#54edc6450b0bb95be5990ea416b4c4dc5e6bdde0" + integrity sha512-UkdvQby5OQUKWrw3lLnSTJXQ6VETaUVTuPQX9AABtmFm5h+ifEBx1OQ+LN726Q4byuwBf2ElHkf4qU4hTxdvRg== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + "@docusaurus/core" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" tslib "^2.6.0" -"@docusaurus/plugin-debug@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.8.1.tgz#45b107e46b627caaae66995f53197ace78af3491" - integrity sha512-nT3lN7TV5bi5hKMB7FK8gCffFTBSsBsAfV84/v293qAmnHOyg1nr9okEw8AiwcO3bl9vije5nsUvP0aRl2lpaw== +"@docusaurus/plugin-debug@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-debug/-/plugin-debug-3.10.2.tgz#2452f258668bb2514085d2d5fff700457c531aad" + integrity sha512-8vbZNOSCpnsT57EY6CgN7sgRVmx3KTYwO8Uvo2pbxOyb8tbqAwtT9SslqaQ41HbA1v1hpn5RP7u5s2KvRwAFpQ== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" + "@docusaurus/core" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" fs-extra "^11.1.1" react-json-view-lite "^2.3.0" tslib "^2.6.0" -"@docusaurus/plugin-google-analytics@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.8.1.tgz#64a302e62fe5cb6e007367c964feeef7b056764a" - integrity sha512-Hrb/PurOJsmwHAsfMDH6oVpahkEGsx7F8CWMjyP/dw1qjqmdS9rcV1nYCGlM8nOtD3Wk/eaThzUB5TSZsGz+7Q== +"@docusaurus/plugin-google-analytics@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-3.10.2.tgz#7a0375c5a238cd9220166d9be8afc00ba508c55d" + integrity sha512-kMHMBK9j4VAtgd5owwrRLRIi0EjkrpXlX7ePj1+y68XfVZV9I1T4S+koPDm+Hfw2TtnyHvh0uNrDvjz+DjQGVA== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + "@docusaurus/core" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" tslib "^2.6.0" -"@docusaurus/plugin-google-gtag@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.8.1.tgz#8c76f8a1d96448f2f0f7b10e6bde451c40672b95" - integrity sha512-tKE8j1cEZCh8KZa4aa80zpSTxsC2/ZYqjx6AAfd8uA8VHZVw79+7OTEP2PoWi0uL5/1Is0LF5Vwxd+1fz5HlKg== +"@docusaurus/plugin-google-gtag@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-3.10.2.tgz#65df25eb5fb3f2a3f2d0fba8ddd423060e09e1ca" + integrity sha512-Vt90nNFhtAChRe9+it1hcHFgFvETdSnOkL5Bma+p6E/yU2tAYrvvyk+gv+LJGM2ZUkyKuKXLRsZ2Lb0bO7+Vog== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" - "@types/gtag.js" "^0.0.12" + "@docusaurus/core" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" tslib "^2.6.0" -"@docusaurus/plugin-google-tag-manager@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.8.1.tgz#88241ffd06369f4a4d5fb982ff3ac2777561ae37" - integrity sha512-iqe3XKITBquZq+6UAXdb1vI0fPY5iIOitVjPQ581R1ZKpHr0qe+V6gVOrrcOHixPDD/BUKdYwkxFjpNiEN+vBw== +"@docusaurus/plugin-google-tag-manager@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-3.10.2.tgz#882a24e51dc42487d2c1d4f2cde3f59c99a276cb" + integrity sha512-MLCffCldysi/R0nzJQP7ZWd0xAoGNnSTiVOo6TTR6mKVGFhE+/XArGe67ZcaZv1uytgQXoXs92VJrgVDrz80rQ== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + "@docusaurus/core" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" + tslib "^2.6.0" + +"@docusaurus/plugin-ideal-image@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-ideal-image/-/plugin-ideal-image-3.10.2.tgz#51fa3048328ce403b2f153aee1fa676827d49106" + integrity sha512-M1uRffUaE5hqbo7368jSclYSU6oOOFdJ3/fq644kwaoComeG+jjBJ9piFrHkExtiU2Q7zcm1dWaqtfJVrR9wSQ== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/lqip-loader" "3.10.2" + "@docusaurus/responsive-loader" "^1.7.0" + "@docusaurus/theme-translations" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" + sharp "^0.32.3" tslib "^2.6.0" + webpack "^5.88.1" -"@docusaurus/plugin-sitemap@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.8.1.tgz#3aebd39186dc30e53023f1aab44625bc0bdac892" - integrity sha512-+9YV/7VLbGTq8qNkjiugIelmfUEVkTyLe6X8bWq7K5qPvGXAjno27QAfFq63mYfFFbJc7z+pudL63acprbqGzw== - dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" +"@docusaurus/plugin-sitemap@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-sitemap/-/plugin-sitemap-3.10.2.tgz#6c662c7df3bb7d36887f8b73f54d85dc4d36371d" + integrity sha512-PODkwg5XetLML3hU/3xpCKJUZ9cqExLaBnD/Fzzwj2VHogLeqnDisLIujae87zuze7T4mCm2A6KEqZkyiz07EQ== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" fs-extra "^11.1.1" sitemap "^7.1.1" tslib "^2.6.0" -"@docusaurus/plugin-svgr@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/plugin-svgr/-/plugin-svgr-3.8.1.tgz#6f340be8eae418a2cce540d8ece096ffd9c9b6ab" - integrity sha512-rW0LWMDsdlsgowVwqiMb/7tANDodpy1wWPwCcamvhY7OECReN3feoFwLjd/U4tKjNY3encj0AJSTxJA+Fpe+Gw== +"@docusaurus/plugin-svgr@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/plugin-svgr/-/plugin-svgr-3.10.2.tgz#916fd0a5d39bf73cb621de9789cce243a7ef1754" + integrity sha512-JgfT3jWM0TJ8Uw0cEcqxHpybngQY1vlBYpuuNO+gEh5iPh5Ar+vxq/u9CFrYsWeXy48BN7Db76Pzp2edNXUQ8A== dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" + "@docusaurus/core" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" "@svgr/core" "8.1.0" "@svgr/webpack" "^8.1.0" tslib "^2.6.0" webpack "^5.88.1" -"@docusaurus/preset-classic@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.8.1.tgz#bb79fd12f3211363720c569a526c7e24d3aa966b" - integrity sha512-yJSjYNHXD8POMGc2mKQuj3ApPrN+eG0rO1UPgSx7jySpYU+n4WjBikbrA2ue5ad9A7aouEtMWUoiSRXTH/g7KQ== - dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/plugin-content-blog" "3.8.1" - "@docusaurus/plugin-content-docs" "3.8.1" - "@docusaurus/plugin-content-pages" "3.8.1" - "@docusaurus/plugin-css-cascade-layers" "3.8.1" - "@docusaurus/plugin-debug" "3.8.1" - "@docusaurus/plugin-google-analytics" "3.8.1" - "@docusaurus/plugin-google-gtag" "3.8.1" - "@docusaurus/plugin-google-tag-manager" "3.8.1" - "@docusaurus/plugin-sitemap" "3.8.1" - "@docusaurus/plugin-svgr" "3.8.1" - "@docusaurus/theme-classic" "3.8.1" - "@docusaurus/theme-common" "3.8.1" - "@docusaurus/theme-search-algolia" "3.8.1" - "@docusaurus/types" "3.8.1" - -"@docusaurus/theme-classic@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.8.1.tgz#1e45c66d89ded359225fcd29bf3258d9205765c1" - integrity sha512-bqDUCNqXeYypMCsE1VcTXSI1QuO4KXfx8Cvl6rYfY0bhhqN6d2WZlRkyLg/p6pm+DzvanqHOyYlqdPyP0iz+iw== - dependencies: - "@docusaurus/core" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/mdx-loader" "3.8.1" - "@docusaurus/module-type-aliases" "3.8.1" - "@docusaurus/plugin-content-blog" "3.8.1" - "@docusaurus/plugin-content-docs" "3.8.1" - "@docusaurus/plugin-content-pages" "3.8.1" - "@docusaurus/theme-common" "3.8.1" - "@docusaurus/theme-translations" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" +"@docusaurus/preset-classic@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/preset-classic/-/preset-classic-3.10.2.tgz#e4419c811723ab913a946c63efcc15e7f5f60a0a" + integrity sha512-a4B3VczmDl99zK0EufDQYomdJ186WDingjmDXxhN2PNPS9Ty/Y2M5CLFX1KQMRKqRTLiRDKfutzG5IY1FC/ceg== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/plugin-content-blog" "3.10.2" + "@docusaurus/plugin-content-docs" "3.10.2" + "@docusaurus/plugin-content-pages" "3.10.2" + "@docusaurus/plugin-css-cascade-layers" "3.10.2" + "@docusaurus/plugin-debug" "3.10.2" + "@docusaurus/plugin-google-analytics" "3.10.2" + "@docusaurus/plugin-google-gtag" "3.10.2" + "@docusaurus/plugin-google-tag-manager" "3.10.2" + "@docusaurus/plugin-sitemap" "3.10.2" + "@docusaurus/plugin-svgr" "3.10.2" + "@docusaurus/theme-classic" "3.10.2" + "@docusaurus/theme-common" "3.10.2" + "@docusaurus/theme-search-algolia" "3.10.2" + "@docusaurus/types" "3.10.2" + +"@docusaurus/responsive-loader@^1.7.0": + version "1.7.1" + resolved "https://registry.yarnpkg.com/@docusaurus/responsive-loader/-/responsive-loader-1.7.1.tgz#fe22a657263350cbc777e296e8d8403c53d2f247" + integrity sha512-jAebZ43f8GVpZSrijLGHVVp7Y0OMIPRaL+HhiIWQ+f/b72lTsKLkSkOVHEzvd2psNJ9lsoiM3gt6akpak6508w== + dependencies: + loader-utils "^2.0.0" + +"@docusaurus/theme-classic@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-classic/-/theme-classic-3.10.2.tgz#a64bd600c789b33c67c30c256b07e2ca0f57e2ae" + integrity sha512-JqTSLQmqmA9uKWZsD5iwBGJ4JyKB4/yTw6PsSXVPRJG/6GAm/u+add9Iip+hvwP12/AnPNztrdxsI14NJW4KeA== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/mdx-loader" "3.10.2" + "@docusaurus/module-type-aliases" "3.10.2" + "@docusaurus/plugin-content-blog" "3.10.2" + "@docusaurus/plugin-content-docs" "3.10.2" + "@docusaurus/plugin-content-pages" "3.10.2" + "@docusaurus/theme-common" "3.10.2" + "@docusaurus/theme-translations" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" "@mdx-js/react" "^3.0.0" clsx "^2.0.0" copy-text-to-clipboard "^3.2.0" @@ -1799,15 +1933,15 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-common@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.8.1.tgz#17c23316fbe3ee3f7e707c7298cb59a0fff38b4b" - integrity sha512-UswMOyTnPEVRvN5Qzbo+l8k4xrd5fTFu2VPPfD6FcW/6qUtVLmJTQCktbAL3KJ0BVXGm5aJXz/ZrzqFuZERGPw== +"@docusaurus/theme-common@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-common/-/theme-common-3.10.2.tgz#5cf2a8b76554b8b38c6afe8448470c411f683e5b" + integrity sha512-R9b/vMpK1yye6hNZTA6x/ivRv+at6GhxnXcxkpzCGzO1R1RwiquqiFg2wMFh6aqlJTpWRFKpFD2TzCDQcyOU0A== dependencies: - "@docusaurus/mdx-loader" "3.8.1" - "@docusaurus/module-type-aliases" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" + "@docusaurus/mdx-loader" "3.10.2" + "@docusaurus/module-type-aliases" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" "@types/history" "^4.7.11" "@types/react" "*" "@types/react-router-config" "*" @@ -1817,21 +1951,35 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-search-algolia@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.8.1.tgz#3aa3d99c35cc2d4b709fcddd4df875a9b536e29b" - integrity sha512-NBFH5rZVQRAQM087aYSRKQ9yGEK9eHd+xOxQjqNpxMiV85OhJDD4ZGz6YJIod26Fbooy54UWVdzNU0TFeUUUzQ== - dependencies: - "@docsearch/react" "^3.9.0" - "@docusaurus/core" "3.8.1" - "@docusaurus/logger" "3.8.1" - "@docusaurus/plugin-content-docs" "3.8.1" - "@docusaurus/theme-common" "3.8.1" - "@docusaurus/theme-translations" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-validation" "3.8.1" - algoliasearch "^5.17.1" - algoliasearch-helper "^3.22.6" +"@docusaurus/theme-mermaid@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-mermaid/-/theme-mermaid-3.10.2.tgz#826e47a01fefbe49fdbb0f4f575c9399d3ccd92c" + integrity sha512-Stssh5MYQJ+EdYugUXf+ZcpeJFQPKXf0KCd/SWp10o3CmXNaOoh5IEgVjVqY1e1XhQf3on4+Y4BnrMiD95E2SQ== + dependencies: + "@docusaurus/core" "3.10.2" + "@docusaurus/module-type-aliases" "3.10.2" + "@docusaurus/theme-common" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" + mermaid ">=11.6.0" + tslib "^2.6.0" + +"@docusaurus/theme-search-algolia@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-search-algolia/-/theme-search-algolia-3.10.2.tgz#e7756d4088a7df4d11fd734bfe0e8fa28ceac1dd" + integrity sha512-1msxllyhi/5m77JukXtp5UFnUAriwZIC1oJ7MTnpQpCwLTbclJi5BK5n28CTZuSXpQN2ewbbnqRgAhMM6c6ihg== + dependencies: + "@algolia/autocomplete-core" "^1.19.2" + "@docsearch/react" "^3.9.0 || ^4.3.2" + "@docusaurus/core" "3.10.2" + "@docusaurus/logger" "3.10.2" + "@docusaurus/plugin-content-docs" "3.10.2" + "@docusaurus/theme-common" "3.10.2" + "@docusaurus/theme-translations" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-validation" "3.10.2" + algoliasearch "^5.37.0" + algoliasearch-helper "^3.26.0" clsx "^2.0.0" eta "^2.2.0" fs-extra "^11.1.1" @@ -1839,21 +1987,22 @@ tslib "^2.6.0" utility-types "^3.10.0" -"@docusaurus/theme-translations@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.8.1.tgz#4b1d76973eb53861e167c7723485e059ba4ffd0a" - integrity sha512-OTp6eebuMcf2rJt4bqnvuwmm3NVXfzfYejL+u/Y1qwKhZPrjPoKWfk1CbOP5xH5ZOPkiAsx4dHdQBRJszK3z2g== +"@docusaurus/theme-translations@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/theme-translations/-/theme-translations-3.10.2.tgz#cd649083babd12df324e7129008aaccacd4cfb13" + integrity sha512-iv20wrxnyXkY89LM3TzRlzGlt5fIGO5UnaR6UL1ZVfB9RRFjxQFQ6awDrwAc6Km8Y5gD8pInuwYPF+6/TiCxXA== dependencies: fs-extra "^11.1.1" tslib "^2.6.0" -"@docusaurus/types@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.8.1.tgz#83ab66c345464e003b576a49f78897482061fc26" - integrity sha512-ZPdW5AB+pBjiVrcLuw3dOS6BFlrG0XkS2lDGsj8TizcnREQg3J8cjsgfDviszOk4CweNfwo1AEELJkYaMUuOPg== +"@docusaurus/types@3.10.2", "@docusaurus/types@^3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/types/-/types-3.10.2.tgz#9ffe35adfb4587e49158ee9e10d94b86419a5932" + integrity sha512-B6rvfwIFSapUqUJjMriZswX13K8l5Z7AcmVE6uTEJpYddQieSTR12DsGaFtcZAIDsQd4p+0WTl0Vc6jmZK0Trw== dependencies: "@mdx-js/mdx" "^3.0.0" "@types/history" "^4.7.11" + "@types/mdast" "^4.0.2" "@types/react" "*" commander "^5.1.0" joi "^17.9.2" @@ -1862,43 +2011,43 @@ webpack "^5.95.0" webpack-merge "^5.9.0" -"@docusaurus/utils-common@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.8.1.tgz#c369b8c3041afb7dcd595d4172beb1cc1015c85f" - integrity sha512-zTZiDlvpvoJIrQEEd71c154DkcriBecm4z94OzEE9kz7ikS3J+iSlABhFXM45mZ0eN5pVqqr7cs60+ZlYLewtg== +"@docusaurus/utils-common@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-common/-/utils-common-3.10.2.tgz#a65fcfffafa4e15a59fe61d7ba315ee5d4c49269" + integrity sha512-x3Dz6jv6iQKBNjBmVTu8p57abMp/VNTUgKBMgRVXJc5444orBTsArv0+cdfrXTiz/VMmHfDRVkPbL7GH2B7T7w== dependencies: - "@docusaurus/types" "3.8.1" + "@docusaurus/types" "3.10.2" tslib "^2.6.0" -"@docusaurus/utils-validation@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.8.1.tgz#0499c0d151a4098a0963237057993282cfbd538e" - integrity sha512-gs5bXIccxzEbyVecvxg6upTwaUbfa0KMmTj7HhHzc016AGyxH2o73k1/aOD0IFrdCsfJNt37MqNI47s2MgRZMA== +"@docusaurus/utils-validation@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/utils-validation/-/utils-validation-3.10.2.tgz#2624b0ca6675675da2f063828115b43c9a22de47" + integrity sha512-sn8unbDfUL585NtR3cwHefPicOyaHvPaX7VD0aOg/siIxUBoKyKKaGEqzJZDS64mM43TnxurkYDtmB1wsJlZsw== dependencies: - "@docusaurus/logger" "3.8.1" - "@docusaurus/utils" "3.8.1" - "@docusaurus/utils-common" "3.8.1" + "@docusaurus/logger" "3.10.2" + "@docusaurus/utils" "3.10.2" + "@docusaurus/utils-common" "3.10.2" fs-extra "^11.2.0" joi "^17.9.2" js-yaml "^4.1.0" lodash "^4.17.21" tslib "^2.6.0" -"@docusaurus/utils@3.8.1": - version "3.8.1" - resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.8.1.tgz#2ac1e734106e2f73dbd0f6a8824d525f9064e9f0" - integrity sha512-P1ml0nvOmEFdmu0smSXOqTS1sxU5tqvnc0dA4MTKV39kye+bhQnjkIKEE18fNOvxjyB86k8esoCIFM3x4RykOQ== +"@docusaurus/utils@3.10.2": + version "3.10.2" + resolved "https://registry.yarnpkg.com/@docusaurus/utils/-/utils-3.10.2.tgz#d99c1ffc5c7961e912344269a8728ce2aad8b3dc" + integrity sha512-xx0W3eav2uW1NRIpuHJWNwLTC15xPNjU4Uxi9NSnd3swYC96BE3vFiT93SD8s24kmAAWNwgZwfZ2fghGZ01Lcw== dependencies: - "@docusaurus/logger" "3.8.1" - "@docusaurus/types" "3.8.1" - "@docusaurus/utils-common" "3.8.1" + "@11ty/gray-matter" "^1.0.0" + "@docusaurus/logger" "3.10.2" + "@docusaurus/types" "3.10.2" + "@docusaurus/utils-common" "3.10.2" escape-string-regexp "^4.0.0" - execa "5.1.1" + execa "^5.1.1" file-loader "^6.2.0" fs-extra "^11.1.1" github-slugger "^1.5.0" globby "^11.1.0" - gray-matter "^4.0.3" jiti "^1.20.0" js-yaml "^4.1.0" lodash "^4.17.21" @@ -1911,6 +2060,28 @@ utility-types "^3.10.0" webpack "^5.88.1" +"@emnapi/core@^1.5.0": + version "1.11.2" + resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.11.2.tgz#fab0a0f3c492d11f5a9ac9065d0d73955ee1c1c9" + integrity sha512-TC8MkTuZUtcTSiFeuC0ksCh9QIJ5+F21MvZ4Wn4ORfYaFJ/0dsiudv5tVkejgwZlwQ39jL9WWDe2lz8x0WglOA== + dependencies: + "@emnapi/wasi-threads" "1.2.2" + tslib "^2.4.0" + +"@emnapi/runtime@^1.5.0": + version "1.11.2" + resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.11.2.tgz#eb22f04d76febfdf4f87fdaff54c8a53f6bf0dbd" + integrity sha512-kyOl3X0DuTiT1h2ft8r2fYO8JYtU9a9Xis/zBSiGArNaagCOWx90N1k2wxp18czFDH+OgcWGb5ZP/XMt3dcyPA== + dependencies: + tslib "^2.4.0" + +"@emnapi/wasi-threads@1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz#4c93becf5bfa3b13d1bbdcc06aee38321ad8139a" + integrity sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA== + dependencies: + tslib "^2.4.0" + "@emotion/babel-plugin@^11.13.5": version "11.13.5" resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz#eab8d65dbded74e0ecfd28dc218e75607c4e7bc0" @@ -2031,9 +2202,9 @@ "@hapi/hoek" "^9.0.0" "@iconify/react@^6.0.0": - version "6.0.1" - resolved "https://registry.yarnpkg.com/@iconify/react/-/react-6.0.1.tgz#15e2f5f18ce651666d09a5333f6d8a764bf45793" - integrity sha512-fCocnAfiGXjrA0u7KkS3W/OQHNp9LRFICudvOtxmS3Mf7U92aDhP50wyzRbobZli51zYt9ksZ9g0J7H586XvOQ== + version "6.0.2" + resolved "https://registry.yarnpkg.com/@iconify/react/-/react-6.0.2.tgz#b6d9bd0e13f9cb85b3a7fddbc70bbf71f5da1d33" + integrity sha512-SMmC2sactfpJD427WJEDN6PMyznTFMhByK9yLW0gOTtnjzzbsi/Ke/XqsumsavFPwNiXs8jSiYeZTmLCLwO+Fg== dependencies: "@iconify/types" "^2.0.0" @@ -2042,6 +2213,15 @@ resolved "https://registry.yarnpkg.com/@iconify/types/-/types-2.0.0.tgz#ab0e9ea681d6c8a1214f30cd741fe3a20cc57f57" integrity sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg== +"@iconify/utils@^3.0.2": + version "3.1.4" + resolved "https://registry.yarnpkg.com/@iconify/utils/-/utils-3.1.4.tgz#04dad014e8ed80b1bbe341f5d090059ea0c60578" + integrity sha512-b1S7B1k9ohZ+iNTi2ATxbRYG9fTrJmUT0rc46bvVnNxqNRGW7dyo/vRREwyniI5IRN2RSJHDcm+s3BjWrSAjHw== + dependencies: + "@antfu/install-pkg" "^1.1.0" + "@iconify/types" "^2.0.0" + import-meta-resolve "^4.2.0" + "@jest/schemas@^29.6.3": version "29.6.3" resolved "https://registry.yarnpkg.com/@jest/schemas/-/schemas-29.6.3.tgz#430b5ce8a4e0044a7e3819663305a7b3091c8e03" @@ -2103,6 +2283,166 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jsonjoy.com/base64@17.67.0": + version "17.67.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/base64/-/base64-17.67.0.tgz#7eeda3cb41138d77a90408fd2e42b2aba10576d7" + integrity sha512-5SEsJGsm15aP8TQGkDfJvz9axgPwAEm98S5DxOuYe8e1EbfajcDmgeXXzccEjh+mLnjqEKrkBdjHWS5vFNwDdw== + +"@jsonjoy.com/base64@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/base64/-/base64-1.1.2.tgz#cf8ea9dcb849b81c95f14fc0aaa151c6b54d2578" + integrity sha512-q6XAnWQDIMA3+FTiOYajoYqySkO+JSat0ytXGSuRdq9uXE7o92gzuQwQM14xaCRlBLGq3v5miDGC4vkVTn54xA== + +"@jsonjoy.com/buffers@17.67.0", "@jsonjoy.com/buffers@^17.65.0": + version "17.67.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/buffers/-/buffers-17.67.0.tgz#5c58dbcdeea8824ce296bd1cfce006c2eb167b3d" + integrity sha512-tfExRpYxBvi32vPs9ZHaTjSP4fHAfzSmcahOfNxtvGHcyJel+aibkPlGeBB+7AoC6hL7lXIE++8okecBxx7lcw== + +"@jsonjoy.com/buffers@^1.0.0", "@jsonjoy.com/buffers@^1.2.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/buffers/-/buffers-1.2.1.tgz#8d99c7f67eaf724d3428dfd9826c6455266a5c83" + integrity sha512-12cdlDwX4RUM3QxmUbVJWqZ/mrK6dFQH4Zxq6+r1YXKXYBNgZXndx2qbCJwh3+WWkCSn67IjnlG3XYTvmvYtgA== + +"@jsonjoy.com/codegen@17.67.0": + version "17.67.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/codegen/-/codegen-17.67.0.tgz#3635fd8769d77e19b75dc5574bc9756019b2e591" + integrity sha512-idnkUplROpdBOV0HMcwhsCUS5TRUi9poagdGs70A6S4ux9+/aPuKbh8+UYRTLYQHtXvAdNfQWXDqZEx5k4Dj2Q== + +"@jsonjoy.com/codegen@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/codegen/-/codegen-1.0.0.tgz#5c23f796c47675f166d23b948cdb889184b93207" + integrity sha512-E8Oy+08cmCf0EK/NMxpaJZmOxPqM+6iSe2S4nlSBrPZOORoDJILxtbSUEDKQyTamm/BVAhIGllOBNU79/dwf0g== + +"@jsonjoy.com/fs-core@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-core/-/fs-core-4.58.0.tgz#10572cecb73d823e51d85063e53e42b5bea7e211" + integrity sha512-K82t5e9w3NYQeIcw129f0SCH/Rn8m8GKPJBYge4W/sA4hhE5h7I8YQhs2HRpUQyUpi+qk7I9tbp1/b87eCM/PA== + dependencies: + "@jsonjoy.com/fs-node-builtins" "4.58.0" + "@jsonjoy.com/fs-node-utils" "4.58.0" + thingies "^2.5.0" + +"@jsonjoy.com/fs-fsa@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-fsa/-/fs-fsa-4.58.0.tgz#fd7272e5e72893a9c8a97e2ac0fe0e049dd02cc1" + integrity sha512-1/FdsxQao9pBo2OJLEfKrujHdVyGxXvDTT7EtNh9fvp3MK42nB+xHh1EJr2L1c0a05eCMyFCYZPID3KjX9EAng== + dependencies: + "@jsonjoy.com/fs-core" "4.58.0" + "@jsonjoy.com/fs-node-builtins" "4.58.0" + "@jsonjoy.com/fs-node-utils" "4.58.0" + thingies "^2.5.0" + +"@jsonjoy.com/fs-node-builtins@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-node-builtins/-/fs-node-builtins-4.58.0.tgz#25c1fda79c51a6f9dc4cbe59efd9a2037f67e059" + integrity sha512-M1sAhjR1de4CL7ivQAFYqJRDVE3krwVOmfcAgG5YQJiDWxYfcGDMLUNcx0p/+Rcs31/Inh1m9aUDk/0jfR1T5w== + +"@jsonjoy.com/fs-node-to-fsa@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-node-to-fsa/-/fs-node-to-fsa-4.58.0.tgz#be011d218acb977bf8d949b4108b75f6f692c7f0" + integrity sha512-erivc39YHoqWY0U8q5IlEcn238AUkIBByMvM0w7OO/FU9hEH3P7oNkPpYWIMpEMncbePk672GiC8ZSwYc2m7fg== + dependencies: + "@jsonjoy.com/fs-fsa" "4.58.0" + "@jsonjoy.com/fs-node-builtins" "4.58.0" + "@jsonjoy.com/fs-node-utils" "4.58.0" + +"@jsonjoy.com/fs-node-utils@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-node-utils/-/fs-node-utils-4.58.0.tgz#10d5d50878f371d04563b66781e5fd7de71aead5" + integrity sha512-IrsAFMFBFQXjpS/u3jOY4DMIbRDg94KxzadddDlJv9xodxZ6/Y3ji91uMwrRqklyu+KoquO/Vxihf3/QrQiuOA== + dependencies: + "@jsonjoy.com/fs-node-builtins" "4.58.0" + +"@jsonjoy.com/fs-node@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-node/-/fs-node-4.58.0.tgz#7c404c014102844dabb03ed2f31528d55c8a53aa" + integrity sha512-bOqoLND5b5xyM+1zro63kClBnB05HTIX0RzOSHy4kAjfnec+CTdV742H/nsDmbkDaaDLHMmYqxAw09NQ8yVIrQ== + dependencies: + "@jsonjoy.com/fs-core" "4.58.0" + "@jsonjoy.com/fs-node-builtins" "4.58.0" + "@jsonjoy.com/fs-node-utils" "4.58.0" + "@jsonjoy.com/fs-print" "4.58.0" + "@jsonjoy.com/fs-snapshot" "4.58.0" + glob-to-regex.js "^1.0.0" + thingies "^2.5.0" + +"@jsonjoy.com/fs-print@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-print/-/fs-print-4.58.0.tgz#5800d9523f997d96593d5b373d8d63b555707edd" + integrity sha512-jbAYbeuzPXIzvWOuuFMoQgrWaQU5hBqevloebLaiAimoBYLjrjiLPdOaaLHepWcZzOq/7Us8x2F22YlsTPbwmw== + dependencies: + "@jsonjoy.com/fs-node-utils" "4.58.0" + tree-dump "^1.1.0" + +"@jsonjoy.com/fs-snapshot@4.58.0": + version "4.58.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/fs-snapshot/-/fs-snapshot-4.58.0.tgz#829709f7d4a8d275fc3a071b711207a7a6bdf617" + integrity sha512-DkozLuMgzfpWZO8o8tSlFJIpUQauG7/sgjH0JrqsbLkmjdoInn/o1W7P9FZQSZlR9lOjDgSXs2MfE/sAUi2JRQ== + dependencies: + "@jsonjoy.com/buffers" "^17.65.0" + "@jsonjoy.com/fs-node-utils" "4.58.0" + "@jsonjoy.com/json-pack" "^17.65.0" + "@jsonjoy.com/util" "^17.65.0" + +"@jsonjoy.com/json-pack@^1.11.0": + version "1.21.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/json-pack/-/json-pack-1.21.0.tgz#93f8dd57fe3a3a92132b33d1eb182dcd9e7629fa" + integrity sha512-+AKG+R2cfZMShzrF2uQw34v3zbeDYUqnQ+jg7ORic3BGtfw9p/+N6RJbq/kkV8JmYZaINknaEQ2m0/f693ZPpg== + dependencies: + "@jsonjoy.com/base64" "^1.1.2" + "@jsonjoy.com/buffers" "^1.2.0" + "@jsonjoy.com/codegen" "^1.0.0" + "@jsonjoy.com/json-pointer" "^1.0.2" + "@jsonjoy.com/util" "^1.9.0" + hyperdyperid "^1.2.0" + thingies "^2.5.0" + tree-dump "^1.1.0" + +"@jsonjoy.com/json-pack@^17.65.0": + version "17.67.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/json-pack/-/json-pack-17.67.0.tgz#8dd8ff65dd999c5d4d26df46c63915c7bdec093a" + integrity sha512-t0ejURcGaZsn1ClbJ/3kFqSOjlryd92eQY465IYrezsXmPcfHPE/av4twRSxf6WE+TkZgLY+71vCZbiIiFKA/w== + dependencies: + "@jsonjoy.com/base64" "17.67.0" + "@jsonjoy.com/buffers" "17.67.0" + "@jsonjoy.com/codegen" "17.67.0" + "@jsonjoy.com/json-pointer" "17.67.0" + "@jsonjoy.com/util" "17.67.0" + hyperdyperid "^1.2.0" + thingies "^2.5.0" + tree-dump "^1.1.0" + +"@jsonjoy.com/json-pointer@17.67.0": + version "17.67.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/json-pointer/-/json-pointer-17.67.0.tgz#74439573dc046e0c9a3a552fb94b391bc75313b8" + integrity sha512-+iqOFInH+QZGmSuaybBUNdh7yvNrXvqR+h3wjXm0N/3JK1EyyFAeGJvqnmQL61d1ARLlk/wJdFKSL+LHJ1eaUA== + dependencies: + "@jsonjoy.com/util" "17.67.0" + +"@jsonjoy.com/json-pointer@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/json-pointer/-/json-pointer-1.0.2.tgz#049cb530ac24e84cba08590c5e36b431c4843408" + integrity sha512-Fsn6wM2zlDzY1U+v4Nc8bo3bVqgfNTGcn6dMgs6FjrEnt4ZCe60o6ByKRjOGlI2gow0aE/Q41QOigdTqkyK5fg== + dependencies: + "@jsonjoy.com/codegen" "^1.0.0" + "@jsonjoy.com/util" "^1.9.0" + +"@jsonjoy.com/util@17.67.0", "@jsonjoy.com/util@^17.65.0": + version "17.67.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/util/-/util-17.67.0.tgz#7c4288fc3808233e55c7610101e7bb4590cddd3f" + integrity sha512-6+8xBaz1rLSohlGh68D1pdw3AwDi9xydm8QNlAFkvnavCJYSze+pxoW2VKP8p308jtlMRLs5NTHfPlZLd4w7ew== + dependencies: + "@jsonjoy.com/buffers" "17.67.0" + "@jsonjoy.com/codegen" "17.67.0" + +"@jsonjoy.com/util@^1.9.0": + version "1.9.0" + resolved "https://registry.yarnpkg.com/@jsonjoy.com/util/-/util-1.9.0.tgz#7ee95586aed0a766b746cd8d8363e336c3c47c46" + integrity sha512-pLuQo+VPRnN8hfPqUTLTHk126wuYdXVxE6aDmjSeV4NCAgyxWbiOIeNJVtID3h1Vzpoi9m4jXezf73I6LgabgQ== + dependencies: + "@jsonjoy.com/buffers" "^1.0.0" + "@jsonjoy.com/codegen" "^1.0.0" + "@leichtgewicht/ip-codec@^2.0.1": version "2.0.5" resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.5.tgz#4fc56c15c580b9adb7dc3c333a134e540b44bfb1" @@ -2146,89 +2486,153 @@ dependencies: "@types/mdx" "^2.0.0" -"@mui/core-downloads-tracker@^7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.2.tgz#896a7890864d619093dc79541ec1ecfa3b507ad2" - integrity sha512-AOyfHjyDKVPGJJFtxOlept3EYEdLoar/RvssBTWVAvDJGIE676dLi2oT/Kx+FoVXFoA/JdV7DEMq/BVWV3KHRw== +"@mermaid-js/parser@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@mermaid-js/parser/-/parser-1.2.0.tgz#266d728c54d2d4034d270f8b31d790e26296a5fa" + integrity sha512-oYPyv8A4As1yH5Bx+04iQEQxXuIQDe0GKCNSRgao6z8AM9jixXIfP0vsppRLvGf+nKIOb9/LdpWA4YuJiVvESA== + dependencies: + "@chevrotain/types" "~11.1.2" + +"@module-federation/error-codes@0.22.0": + version "0.22.0" + resolved "https://registry.yarnpkg.com/@module-federation/error-codes/-/error-codes-0.22.0.tgz#31ccc990dc240d73912ba7bd001f7e35ac751992" + integrity sha512-xF9SjnEy7vTdx+xekjPCV5cIHOGCkdn3pIxo9vU7gEZMIw0SvAEdsy6Uh17xaCpm8V0FWvR0SZoK9Ik6jGOaug== + +"@module-federation/runtime-core@0.22.0": + version "0.22.0" + resolved "https://registry.yarnpkg.com/@module-federation/runtime-core/-/runtime-core-0.22.0.tgz#7321ec792bb7d1d22bee6162ec43564b769d2a3c" + integrity sha512-GR1TcD6/s7zqItfhC87zAp30PqzvceoeDGYTgF3Vx2TXvsfDrhP6Qw9T4vudDQL3uJRne6t7CzdT29YyVxlgIA== + dependencies: + "@module-federation/error-codes" "0.22.0" + "@module-federation/sdk" "0.22.0" + +"@module-federation/runtime-tools@0.22.0": + version "0.22.0" + resolved "https://registry.yarnpkg.com/@module-federation/runtime-tools/-/runtime-tools-0.22.0.tgz#36f2a7cb267af208a9d1a237fe9a71b4bf31431e" + integrity sha512-4ScUJ/aUfEernb+4PbLdhM/c60VHl698Gn1gY21m9vyC1Ucn69fPCA1y2EwcCB7IItseRMoNhdcWQnzt/OPCNA== + dependencies: + "@module-federation/runtime" "0.22.0" + "@module-federation/webpack-bundler-runtime" "0.22.0" + +"@module-federation/runtime@0.22.0": + version "0.22.0" + resolved "https://registry.yarnpkg.com/@module-federation/runtime/-/runtime-0.22.0.tgz#f789c9ef40d846d110711c8221ecc0ad938d43d8" + integrity sha512-38g5iPju2tPC3KHMPxRKmy4k4onNp6ypFPS1eKGsNLUkXgHsPMBFqAjDw96iEcjri91BrahG4XcdyKi97xZzlA== + dependencies: + "@module-federation/error-codes" "0.22.0" + "@module-federation/runtime-core" "0.22.0" + "@module-federation/sdk" "0.22.0" + +"@module-federation/sdk@0.22.0": + version "0.22.0" + resolved "https://registry.yarnpkg.com/@module-federation/sdk/-/sdk-0.22.0.tgz#6ad4c1de85a900c3c80ff26cb87cce253e3a2770" + integrity sha512-x4aFNBKn2KVQRuNVC5A7SnrSCSqyfIWmm1DvubjbO9iKFe7ith5niw8dqSFBekYBg2Fwy+eMg4sEFNVvCAdo6g== + +"@module-federation/webpack-bundler-runtime@0.22.0": + version "0.22.0" + resolved "https://registry.yarnpkg.com/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.22.0.tgz#dcbe8f972d722fe278e6a7c21988d4bee53d401d" + integrity sha512-aM8gCqXu+/4wBmJtVeMeeMN5guw3chf+2i6HajKtQv7SJfxV/f4IyNQJUeUQu9HfiAZHjqtMV5Lvq/Lvh8LdyA== + dependencies: + "@module-federation/runtime" "0.22.0" + "@module-federation/sdk" "0.22.0" + +"@mui/core-downloads-tracker@^7.3.11": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/core-downloads-tracker/-/core-downloads-tracker-7.3.11.tgz#93251cf192641b9582641991feea60149159902c" + integrity sha512-a7I/b/nBTdXYz2cOSlEmkQ9WWE1x8FHpqMhFPp+Y1VPFxcOw91G5ELOHARQAGSPy5V+UCgJua6K/1x70bAtQPw== "@mui/icons-material@^7.3.1": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-7.3.2.tgz#050049cd6195b815e85888aaebd436e8e95084b8" - integrity sha512-TZWazBjWXBjR6iGcNkbKklnwodcwj0SrChCNHc9BhD9rBgET22J1eFhHsEmvSvru9+opDy3umqAimQjokhfJlQ== + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/icons-material/-/icons-material-7.3.11.tgz#dfea40829d1ca96c074c85093fdfe0de170af5ad" + integrity sha512-+hz5ilwHZ3djd5es3sCErLioqe/NhZcYTsV/TNXZAMdJdb23F4xzJjqnnZdnurc3S1+ietcssRNqieOhPQLZ7Q== dependencies: - "@babel/runtime" "^7.28.3" + "@babel/runtime" "^7.28.6" "@mui/material@^7.3.1": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/material/-/material-7.3.2.tgz#21ad66bba695e2cd36e4a93e2e4ff5e04d8636a1" - integrity sha512-qXvbnawQhqUVfH1LMgMaiytP+ZpGoYhnGl7yYq2x57GYzcFL/iPzSZ3L30tlbwEjSVKNYcbiKO8tANR1tadjUg== - dependencies: - "@babel/runtime" "^7.28.3" - "@mui/core-downloads-tracker" "^7.3.2" - "@mui/system" "^7.3.2" - "@mui/types" "^7.4.6" - "@mui/utils" "^7.3.2" + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/material/-/material-7.3.11.tgz#aa6e0640bb29bd01e6c353ac3436fa0b20e5a36b" + integrity sha512-yq8bPc3LxOwKRWpcjRgDkYFmpM6aKlARfESTmOQcvLYFeJwtHte2tw6hJDrb8sk8wcvpDprHEHVaoUU0MslIkw== + dependencies: + "@babel/runtime" "^7.28.6" + "@mui/core-downloads-tracker" "^7.3.11" + "@mui/system" "^7.3.11" + "@mui/types" "^7.4.12" + "@mui/utils" "^7.3.11" "@popperjs/core" "^2.11.8" "@types/react-transition-group" "^4.4.12" clsx "^2.1.1" - csstype "^3.1.3" + csstype "^3.2.3" prop-types "^15.8.1" - react-is "^19.1.1" + react-is "^19.2.3" react-transition-group "^4.4.5" -"@mui/private-theming@^7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-7.3.2.tgz#9b883ac9ec9288327de038da6ddf8ffa179be831" - integrity sha512-ha7mFoOyZGJr75xeiO9lugS3joRROjc8tG1u4P50dH0KR7bwhHznVMcYg7MouochUy0OxooJm/OOSpJ7gKcMvg== +"@mui/private-theming@^7.3.11": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/private-theming/-/private-theming-7.3.11.tgz#96d4cde586624916816f5a97fef3c808cf562fb0" + integrity sha512-9B+YKms0fRHbNrqp9tOT/DNbNnU5gyvJ1o3qAGXfq8GmZcbJnE3At9x07Zr/o0pkhzg4aDdwXVqe4+AcgtOCPA== dependencies: - "@babel/runtime" "^7.28.3" - "@mui/utils" "^7.3.2" + "@babel/runtime" "^7.28.6" + "@mui/utils" "^7.3.11" prop-types "^15.8.1" -"@mui/styled-engine@^7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-7.3.2.tgz#cac6acb9480d6eaf60d9c99a7d24503e53236b32" - integrity sha512-PkJzW+mTaek4e0nPYZ6qLnW5RGa0KN+eRTf5FA2nc7cFZTeM+qebmGibaTLrgQBy3UpcpemaqfzToBNkzuxqew== +"@mui/styled-engine@^7.3.10": + version "7.3.10" + resolved "https://registry.yarnpkg.com/@mui/styled-engine/-/styled-engine-7.3.10.tgz#53e98c1fdeda972b5932c76f6a2a29faf33f0d11" + integrity sha512-WxE9SiF8xskAQqGjsp0poXCkCqsoXFEsSr0HBXfApmGHR+DBnXRp+z46Vsltg4gpPM4Z96DeAQRpeAOnhNg7Ng== dependencies: - "@babel/runtime" "^7.28.3" + "@babel/runtime" "^7.28.6" "@emotion/cache" "^11.14.0" "@emotion/serialize" "^1.3.3" "@emotion/sheet" "^1.4.0" - csstype "^3.1.3" + csstype "^3.2.3" prop-types "^15.8.1" -"@mui/system@^7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/system/-/system-7.3.2.tgz#e838097fc6cb0a2e4c1822478950db89affb116a" - integrity sha512-9d8JEvZW+H6cVkaZ+FK56R53vkJe3HsTpcjMUtH8v1xK6Y1TjzHdZ7Jck02mGXJsE6MQGWVs3ogRHTQmS9Q/rA== +"@mui/system@^7.3.11": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/system/-/system-7.3.11.tgz#ffb8ba06f43d697db80257b9a2dfc8042b18554a" + integrity sha512-7izwGWdNawAKpBKcRlx7f2gFnAAjmASBWvMcyX4YYEeLOFsbfGRbUYGInvnAcUeql3rPxI7F9Ft4oY2OLRz44g== dependencies: - "@babel/runtime" "^7.28.3" - "@mui/private-theming" "^7.3.2" - "@mui/styled-engine" "^7.3.2" - "@mui/types" "^7.4.6" - "@mui/utils" "^7.3.2" + "@babel/runtime" "^7.28.6" + "@mui/private-theming" "^7.3.11" + "@mui/styled-engine" "^7.3.10" + "@mui/types" "^7.4.12" + "@mui/utils" "^7.3.11" clsx "^2.1.1" - csstype "^3.1.3" + csstype "^3.2.3" prop-types "^15.8.1" -"@mui/types@^7.4.6": - version "7.4.6" - resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.4.6.tgz#1432e0814cf155287283f6bbd1e95976a148ef07" - integrity sha512-NVBbIw+4CDMMppNamVxyTccNv0WxtDb7motWDlMeSC8Oy95saj1TIZMGynPpFLePt3yOD8TskzumeqORCgRGWw== +"@mui/types@^7.4.12": + version "7.4.12" + resolved "https://registry.yarnpkg.com/@mui/types/-/types-7.4.12.tgz#e4eba37a7506419ea5c5e0604322ba82b271bf46" + integrity sha512-iKNAF2u9PzSIj40CjvKJWxFXJo122jXVdrmdh0hMYd+FR+NuJMkr/L88XwWLCRiJ5P1j+uyac25+Kp6YC4hu6w== dependencies: - "@babel/runtime" "^7.28.3" + "@babel/runtime" "^7.28.6" -"@mui/utils@^7.3.2": - version "7.3.2" - resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-7.3.2.tgz#361775d72c557a03115150e8aec4329c7ef14563" - integrity sha512-4DMWQGenOdLnM3y/SdFQFwKsCLM+mqxzvoWp9+x2XdEzXapkznauHLiXtSohHs/mc0+5/9UACt1GdugCX2te5g== +"@mui/utils@^7.3.11": + version "7.3.11" + resolved "https://registry.yarnpkg.com/@mui/utils/-/utils-7.3.11.tgz#493f46f053fe3a692e041b1b6b8295e2f46d9448" + integrity sha512-XTjGnifwteg71/ij+0e7Y7d+hwyntMYP5wPoA/g2drdGH+Flkvjwy0OfrVpKBbaOvofq4zU/LIyUZyKgmWu18g== dependencies: - "@babel/runtime" "^7.28.3" - "@mui/types" "^7.4.6" + "@babel/runtime" "^7.28.6" + "@mui/types" "^7.4.12" "@types/prop-types" "^15.7.15" clsx "^2.1.1" prop-types "^15.8.1" - react-is "^19.1.1" + react-is "^19.2.3" + +"@napi-rs/wasm-runtime@1.0.7": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-1.0.7.tgz#dcfea99a75f06209a235f3d941e3460a51e9b14c" + integrity sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw== + dependencies: + "@emnapi/core" "^1.5.0" + "@emnapi/runtime" "^1.5.0" + "@tybys/wasm-util" "^0.10.1" + +"@noble/hashes@1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426" + integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== "@nodelib/fs.scandir@2.1.5": version "2.1.5" @@ -2251,6 +2655,136 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@peculiar/asn1-cms@^2.6.0", "@peculiar/asn1-cms@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-cms/-/asn1-cms-2.8.0.tgz#b48a8389319228f929e9acd8cee8da6c858738de" + integrity sha512-NgekZOrSJFSBFLFoLfwePguAWAx7z1+f2TEsWFUMyiqqfntZ4+S/S5hzqME3q4pCA0iOsFKdwiQ35dwY24eVqA== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + "@peculiar/asn1-x509-attr" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-csr@^2.6.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-csr/-/asn1-csr-2.8.0.tgz#c9bb5dec2eaff824a705e82a4a58d45e6d2c35d0" + integrity sha512-akbF8+uvleHs8sejNPQxwmVFuInAg6FMNHOwMILXfP518YfFJwdR3jr6oNUPOaEJfuEhn/vkNOCIT6ASUd4mbg== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-ecc@^2.6.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-ecc/-/asn1-ecc-2.8.0.tgz#d51ab2b07eca98e0cf492d051e98bbd0a071305a" + integrity sha512-ohwlk+u9Rv2NOAY1c6MfHj45ATVF8R1DUN/WCgABiRtLi2ZftlZWZX7KvpAbU8v9xPcmoILfELeEABj/rn18AQ== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-pfx@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-pfx/-/asn1-pfx-2.8.0.tgz#8e189b6455e2bf9e5f921bb150ea86d7e7d1875d" + integrity sha512-5yof1ytoB++RQtaFbqSUJ8pxDJtZT6vbVqZ8XoJ61ph7UjNVvfFwAilnCodqkNsAodpy13gDhoxZXw00pghnyg== + dependencies: + "@peculiar/asn1-cms" "^2.8.0" + "@peculiar/asn1-pkcs8" "^2.8.0" + "@peculiar/asn1-rsa" "^2.8.0" + "@peculiar/asn1-schema" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-pkcs8@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-pkcs8/-/asn1-pkcs8-2.8.0.tgz#a46cf8857b9b063896afa41d2b8b2aa6a07a70a2" + integrity sha512-qAKXtLpBEw9LqhKpjw3ajZSXlBur+ipW+y2ivVBQAG6F6qRx94yO+1ZR4mvw+YaCfKSaOzLeYEzsPaBp4SJELA== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-pkcs9@^2.6.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-pkcs9/-/asn1-pkcs9-2.8.0.tgz#6d62697af0bbd4f30fdf0d23b4018f3f09620de3" + integrity sha512-b5nDWCnkV60+cQ141D6sVVwK9nz64R5n3zSVnklGd+ECdkW2Ol3U1a6yYFlalpSOaD557yuJB64A+q42jG7lUQ== + dependencies: + "@peculiar/asn1-cms" "^2.8.0" + "@peculiar/asn1-pfx" "^2.8.0" + "@peculiar/asn1-pkcs8" "^2.8.0" + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + "@peculiar/asn1-x509-attr" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-rsa@^2.6.0", "@peculiar/asn1-rsa@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-rsa/-/asn1-rsa-2.8.0.tgz#9d98d0fc42fec50119d2881b8a9925d36daaea73" + integrity sha512-zHEUlCqB2mk7x2lxDwHHJy7hWZOPdGHVlsmITWKB5/PbQo61atbu9PJ/0r9dQNMwFzbKPXZ8uK8/91eUhRznSg== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-schema@^2.6.0", "@peculiar/asn1-schema@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-schema/-/asn1-schema-2.8.0.tgz#69699f84259b2161607cabfc34e512a4023dbef9" + integrity sha512-7YT0U/ze0tF2QOBbE15gKZwy5tvgGyLRiRHLzhlbOpf7BT032oBSd0haZqXn5W6l26WLlu3dyxzjM+2638/z2Q== + dependencies: + "@peculiar/utils" "^2.0.2" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-x509-attr@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-x509-attr/-/asn1-x509-attr-2.8.0.tgz#bd168e3f5e8bc23e56b1a97891f9f2fb7f730204" + integrity sha512-tHjkfS/qhMnmrlB2J9NhflQlQ7In3khO3CfmVrriOlpTeErY9ZIKOso1hQ5JQiyrJ7ShvqVPk7E5fQmbclkSKA== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/asn1-x509" "^2.8.0" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/asn1-x509@^2.6.0", "@peculiar/asn1-x509@^2.8.0": + version "2.8.0" + resolved "https://registry.yarnpkg.com/@peculiar/asn1-x509/-/asn1-x509-2.8.0.tgz#9958a9ef35dec8426aabad78ffe8798e318b06e2" + integrity sha512-N0CMuhWUzsWEVq6F1q9X6+VKUnWzSW+cSVg+aPaGGwDdbFoFWTYgin5MHwXgpWd6y9COMBxnfy/Qc+Xc7F0Zwg== + dependencies: + "@peculiar/asn1-schema" "^2.8.0" + "@peculiar/utils" "^2.0.2" + asn1js "^3.0.10" + tslib "^2.8.1" + +"@peculiar/utils@^2.0.2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@peculiar/utils/-/utils-2.0.3.tgz#a27ca4c4b73652e110f19a7d16d664f458a5528e" + integrity sha512-+oL3HPFRIZ1St2K50lWCXiioIgSoxzz7R1J3uF6neO2yl1sgmpgY6XXJH4BdpoDkMWznQTeYF6oWNDZLCdQ4eQ== + dependencies: + tslib "^2.8.1" + +"@peculiar/x509@^1.14.2": + version "1.14.3" + resolved "https://registry.yarnpkg.com/@peculiar/x509/-/x509-1.14.3.tgz#2c44c2b89474346afec38a0c2803ec4fb8ce959e" + integrity sha512-C2Xj8FZ0uHWeCXXqX5B4/gVFQmtSkiuOolzAgutjTfseNOHT3pUjljDZsTSxXFGgio54bCzVFqmEOUrIVk8RDA== + dependencies: + "@peculiar/asn1-cms" "^2.6.0" + "@peculiar/asn1-csr" "^2.6.0" + "@peculiar/asn1-ecc" "^2.6.0" + "@peculiar/asn1-pkcs9" "^2.6.0" + "@peculiar/asn1-rsa" "^2.6.0" + "@peculiar/asn1-schema" "^2.6.0" + "@peculiar/asn1-x509" "^2.6.0" + pvtsutils "^1.3.6" + reflect-metadata "^0.2.2" + tslib "^2.8.1" + tsyringe "^4.10.0" + "@pnpm/config.env-replace@^1.1.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@pnpm/config.env-replace/-/config.env-replace-1.1.0.tgz#ab29da53df41e8948a00f2433f085f54de8b3a4c" @@ -2263,10 +2797,10 @@ dependencies: graceful-fs "4.2.10" -"@pnpm/npm-conf@^2.1.0": - version "2.3.1" - resolved "https://registry.yarnpkg.com/@pnpm/npm-conf/-/npm-conf-2.3.1.tgz#bb375a571a0bd63ab0a23bece33033c683e9b6b0" - integrity sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw== +"@pnpm/npm-conf@^3.0.2": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@pnpm/npm-conf/-/npm-conf-3.0.3.tgz#17b59982126c86294a8d248aa1d7b185f2df6484" + integrity sha512-//0sR/cow/s4ICQaYoAobOl4aU8cjU6x/V24V7XkKotb9+O+3zySIYp146vpaobYHnxa4pZX8NkV54Z5AwbDKA== dependencies: "@pnpm/config.env-replace" "^1.1.0" "@pnpm/network.ca-file" "^1.0.1" @@ -2282,6 +2816,88 @@ resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.8.tgz#6b79032e760a0899cd4204710beede972a3a185f" integrity sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A== +"@rspack/binding-darwin-arm64@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-darwin-arm64/-/binding-darwin-arm64-1.7.12.tgz#e6e10e7ff15c2254d6cbe9125a747ada880a34f3" + integrity sha512-rbFprJaJiqrmfy8SHth8EsoRS0wg4bXcucwj9NiMzpGFq14Opw8c04iQ6H9BECYzgmN0PKZ9rh41LdVvhdZe4A== + +"@rspack/binding-darwin-x64@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-darwin-x64/-/binding-darwin-x64-1.7.12.tgz#fe90b64228eb49612e4932049325f52a4ddcfd28" + integrity sha512-jnOp+/UXOJa9xqUb8KXH03sysoO2e4Ij6tw6MqDdmdj8n/A8PQENRPUbW9AwXpPtVDJPus9r4fi7b3+6e4B8Hg== + +"@rspack/binding-linux-arm64-gnu@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.7.12.tgz#61d63a0fcb9b4eb25b9d68e1f897c8e2619a8a5a" + integrity sha512-C8owWG+yvo7X0oVLIXetkoJhIFBP1LYNcAQqtgLmJnQLQDklGuP83dKC+zISGQWpjawHfZ1ER96vLgoTrxKZdw== + +"@rspack/binding-linux-arm64-musl@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.7.12.tgz#fd5157890b1250937bb98332dcbb35ff2d7aafd3" + integrity sha512-i51WWI64aRpsfSki6rN0aepPqXkVfS+vZM7+4bWDcmnhUmdMvhIPcYg0QRk3DtyJnu33jqNLM0WHY78k00NyfA== + +"@rspack/binding-linux-x64-gnu@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.7.12.tgz#a8c963c47a043069b154c704d87bf6a658772ac7" + integrity sha512-MSos0FuPEefqo9V92ULd5hggKG29EkSNg1zDcypy0OkpsKh5pfjVxTLYFXgTcVyFoUQQbdG8zFBzYbwmJ8V4ew== + +"@rspack/binding-linux-x64-musl@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-linux-x64-musl/-/binding-linux-x64-musl-1.7.12.tgz#1e95af2b152a0833272c26c3473cfa60832ef8b0" + integrity sha512-JcAMVKXOnjfpC3coWjCFPWD3Yl8RBw6a+IXQQ8mfRlHaHMIiOv8IfZqx15XRxMUn49CtP7Z0Na8iiAg2aKrcfw== + +"@rspack/binding-wasm32-wasi@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-wasm32-wasi/-/binding-wasm32-wasi-1.7.12.tgz#37a10f322e82cbd51114e8a3182f46c6af101a20" + integrity sha512-n+ZqP6ZMc0nhOgvadg5VhEs9ojtbES80AcWeFnmGkbzIszvGSO63GKNiRkXtjJ9KFuRzytbbmsCqkUVH+Tywxg== + dependencies: + "@napi-rs/wasm-runtime" "1.0.7" + +"@rspack/binding-win32-arm64-msvc@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.7.12.tgz#77f648ee1cb717c50fdd02126a528b4960654116" + integrity sha512-8+h5fYDXYdmugbdfZ+D1y8IQ3rv2EhSfyGP7vBe+bjNyaMa4jWrpucmZbtxojUL1AzaeuHbvMdj9UO/gelk/+g== + +"@rspack/binding-win32-ia32-msvc@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.7.12.tgz#9f7cbb26a9c8d9a1cc15d2059de21172b1623c41" + integrity sha512-cDMGwTRSa2p9fNBVe1wTRkF2AEXZ9ARWW36QeC5CkLaI0Ezz8lvhF2+CSOPnhaQ1O1qtn0L0SF+lFnrY+I7xGQ== + +"@rspack/binding-win32-x64-msvc@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.7.12.tgz#b4c6dceaa63def4aa205d25246c1a5b05d7f36b0" + integrity sha512-wIqFvlgFqrgUyj/6S/FJcvShnkZOmIeXTfqvheLY67MGq8qd8jb1YimQVKAIrmWB3yuJKUFACI3Ag1UBtEedEA== + +"@rspack/binding@1.7.12": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/binding/-/binding-1.7.12.tgz#8c0b19795f980b0e513855245e689719352c08a4" + integrity sha512-f4HHuLbvuld8Ba4iB/4ibse5XrKxFrgmM3S4P2AOKnPlekAFlBjmltCuaTL/W2ggYvILaVY+YcFXrEH1rrKeQA== + optionalDependencies: + "@rspack/binding-darwin-arm64" "1.7.12" + "@rspack/binding-darwin-x64" "1.7.12" + "@rspack/binding-linux-arm64-gnu" "1.7.12" + "@rspack/binding-linux-arm64-musl" "1.7.12" + "@rspack/binding-linux-x64-gnu" "1.7.12" + "@rspack/binding-linux-x64-musl" "1.7.12" + "@rspack/binding-wasm32-wasi" "1.7.12" + "@rspack/binding-win32-arm64-msvc" "1.7.12" + "@rspack/binding-win32-ia32-msvc" "1.7.12" + "@rspack/binding-win32-x64-msvc" "1.7.12" + +"@rspack/core@^1.7.10": + version "1.7.12" + resolved "https://registry.yarnpkg.com/@rspack/core/-/core-1.7.12.tgz#e2a36bd16a10e10aee5905827064ac4b8a63b321" + integrity sha512-6CwFIHlhRmXfZoMj3v9MZ1SMTPBn+cHVXeMIeaGp5sufqinKsISbsqHu6ZMJu2wDSmZLdmQJX6zLxkhcAUlhkQ== + dependencies: + "@module-federation/runtime-tools" "0.22.0" + "@rspack/binding" "1.7.12" + "@rspack/lite-tapable" "1.1.0" + +"@rspack/lite-tapable@1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@rspack/lite-tapable/-/lite-tapable-1.1.0.tgz#3cfdafeed01078e116bd4f191b684c8b484de425" + integrity sha512-E2B0JhYFmVAwdDiG14+DW0Di4Ze4Jg10Pc4/lILUrd5DRCaklduz2OvJ5HYQ6G+hd+WTzqQb3QnDNfK4yvAFYw== + "@sideway/address@^4.1.5": version "4.1.5" resolved "https://registry.yarnpkg.com/@sideway/address/-/address-4.1.5.tgz#4bc149a0076623ced99ca8208ba780d65a99b9d5" @@ -2300,9 +2916,9 @@ integrity sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ== "@sinclair/typebox@^0.27.8": - version "0.27.8" - resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e" - integrity sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA== + version "0.27.10" + resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.10.tgz#beefe675f1853f73676aecc915b2bd2ac98c4fc6" + integrity sha512-MTBk/3jGLNB2tVxv6uLlFh1iu64iYOQ2PbdOSK3NW8JZsmlaOh2q6sdtKowBhfw8QFLmYNzTW4/oK4uATIi6ZA== "@sindresorhus/is@^4.6.0": version "4.6.0" @@ -2429,6 +3045,179 @@ "@svgr/plugin-jsx" "8.1.0" "@svgr/plugin-svgo" "8.1.0" +"@swc/core-darwin-arm64@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-arm64/-/core-darwin-arm64-1.16.0.tgz#8c5a2af031c62ebcb6354aa6975bfb7eac895223" + integrity sha512-SJQPl+xG/zB8bNjC/gTg3WOmOvz7EzlQD+VShfCKFYPNr2qvb+vATUY11vYEjnMWCn6wV8H8eAtjQrVflYyX5A== + +"@swc/core-darwin-x64@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-darwin-x64/-/core-darwin-x64-1.16.0.tgz#0d2496c0429d7e8bc45b50348adf9d105bb56793" + integrity sha512-ql2JVch8V5t1i+HxiiuD4oVDI1dOku4/e3QiCkplONrm3SLitqNAP+nztHN51fSG2IgGuOwpAi3hgA+ukT5yQg== + +"@swc/core-linux-arm-gnueabihf@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.16.0.tgz#5f02a85842a04cd21f2ab9e8e67dc4b16f7024a4" + integrity sha512-PcdDBaRbe39y37h1rXVkhNy7mEU7f8b34KD761C68R23EsfMsj5oDPVddRzGdSRAvwwSfH0WSNEHgYmc/AJipg== + +"@swc/core-linux-arm64-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.16.0.tgz#6264498c88c51649511c6b4af532d330d3cf0631" + integrity sha512-t21IUztHQ/COucy7Kk9eIlehmq08H/hYq7aRA6fZox3S5ddi6TxWPK6e5S/+aTCf6+Od9qQ+LIpjHMiTy737vA== + +"@swc/core-linux-arm64-musl@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.16.0.tgz#7a451eba69aa9a80799b9b8b9af46bf6f49803bd" + integrity sha512-d9+iajbMB87b0umgbP+Gy3yBDSDgty4Q6H5pZ8fgTb/dOoKIwwynP4L4kvWCOFg2i49kxmAAUs1uJZh9s0E+RQ== + +"@swc/core-linux-ppc64-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-ppc64-gnu/-/core-linux-ppc64-gnu-1.16.0.tgz#99a7ba46a56190a52c646506e940dffe554c5d10" + integrity sha512-QRpeKGOg+B0qmo3BFU+6rL/gpoKYYJ7OFSMf5DNMafohYZ/iq2qvAH9Gcrf8NxROj3iooKOVewJ+YgahH1nSLw== + +"@swc/core-linux-s390x-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-s390x-gnu/-/core-linux-s390x-gnu-1.16.0.tgz#61473e056d1dd0d4690352a875c14f41bdd9f60a" + integrity sha512-q+Vr/hmHCcRXT/WFzOJC+T6GGEEtq2iaTtmyLfxO7yzu4ckgcqSNkg9m181wfNhuMwfNBoBhOfwQCnLsGZ5F4g== + +"@swc/core-linux-x64-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.16.0.tgz#008fc149a9135bca92b1e1f63037e2612c4d0fb5" + integrity sha512-DWVBc3QnpsSgKoq8N4rmZeZa5r/XrHdLkITsExN/tvTdqPtAPDPt+Ysy33OfgBlyN8lNe4xwsXWe6DXlRkJeRQ== + +"@swc/core-linux-x64-musl@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.16.0.tgz#4300ea0c63864dc3989ca0e956b4a5e4c666196c" + integrity sha512-6XCgDSc1HPf/5dpjvABhKHICiBcsuZyW3hQMkn8sxel0TqprkJGp+H4iaBYIUTPixhrBub2hBPtfjcZLE6yL3w== + +"@swc/core-win32-arm64-msvc@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.16.0.tgz#1d4146b7c1aada2992692cdc72bb0b43a885136e" + integrity sha512-T/+9VVCZJ3AKEth9IP3U9AJ2YscQq+7LUqRTvfR4a2q36+Ri22oOwUizpAKOqQ42vb2Y/kOa4TOcJOfHoDIT/w== + +"@swc/core-win32-ia32-msvc@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.16.0.tgz#c5c2a60905ffa9e4647214bef75778f0c73ba0d4" + integrity sha512-Pr1lsR/PMs8ndL0UWMrW8nLZ7H7sspIxBRDdjL8f+YJ/FJNASgzfunbVVXAqj0csgIJYHPZy+OW9smjFmk1Rcg== + +"@swc/core-win32-x64-msvc@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.16.0.tgz#67dd85a90437e6fa9951cce7842f6cac3ec3f60d" + integrity sha512-ktdeYLgOQdaonvsj5tJijqgpb0wk7gfF80wCFVA0kucI1hhSUIyfcGbjo5+9sdqv38OhMnTdLoA6xbqgOgPQjw== + +"@swc/core@^1.15.40": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/core/-/core-1.16.0.tgz#79cd13789725d3e3ad0df605dc88d9e255d7ebfd" + integrity sha512-zSdvEHxBg00WhUNtW/u58hhcdR33gjtMQvOBo8F7POWJDyjRCt/miKfhidT3hCc/118RUwNnlEAmxiihFMbK4Q== + dependencies: + "@swc/counter" "^0.1.3" + "@swc/types" "^0.1.28" + optionalDependencies: + "@swc/core-darwin-arm64" "1.16.0" + "@swc/core-darwin-x64" "1.16.0" + "@swc/core-linux-arm-gnueabihf" "1.16.0" + "@swc/core-linux-arm64-gnu" "1.16.0" + "@swc/core-linux-arm64-musl" "1.16.0" + "@swc/core-linux-ppc64-gnu" "1.16.0" + "@swc/core-linux-s390x-gnu" "1.16.0" + "@swc/core-linux-x64-gnu" "1.16.0" + "@swc/core-linux-x64-musl" "1.16.0" + "@swc/core-win32-arm64-msvc" "1.16.0" + "@swc/core-win32-ia32-msvc" "1.16.0" + "@swc/core-win32-x64-msvc" "1.16.0" + +"@swc/counter@^0.1.3": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@swc/counter/-/counter-0.1.3.tgz#cc7463bd02949611c6329596fccd2b0ec782b0e9" + integrity sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ== + +"@swc/html-darwin-arm64@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-darwin-arm64/-/html-darwin-arm64-1.16.0.tgz#4ff019e7ce2c28bd4ebada939346fc5896124902" + integrity sha512-vp8i42hiGM/Jy4lY48sOu+y02SnWKpqxsUErCHnWIU/G8WxHdZrX+xn8VOph/eQXFk4kU+/kGdaRDrRKGMITnQ== + +"@swc/html-darwin-x64@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-darwin-x64/-/html-darwin-x64-1.16.0.tgz#de93a5d661737531d2a37c50ece24f406f4e3006" + integrity sha512-CsRsBMO2evmQbz1JEzwbebzZro4F1TjT0IGrEk/IxzRMmQjJ8zfNOe140ToouuZs3HnLSuJQgMadI2WE76fxbw== + +"@swc/html-linux-arm-gnueabihf@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-arm-gnueabihf/-/html-linux-arm-gnueabihf-1.16.0.tgz#e33a47d0d80155fce0949fd79a007589aba2de93" + integrity sha512-Dbw/+0FQLzhcYOIUktBUu34qpBFsnW+qp6kid8Dfs/M8FUOOsST96zh7lZ3NSV/Z7XgOuvWDXz5HVmevuiRm+w== + +"@swc/html-linux-arm64-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-arm64-gnu/-/html-linux-arm64-gnu-1.16.0.tgz#040b699a45457e0f366f2901f0c08a972e18c5ff" + integrity sha512-e3EyiP0e8Y9UMY/Kmdg4rcq934WHRcvjElHaGQkDecypGxDC9eoihNlrSTxNZQXnCrgUoqrGfxQiappYUwA86A== + +"@swc/html-linux-arm64-musl@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-arm64-musl/-/html-linux-arm64-musl-1.16.0.tgz#2ed7555b7f52445d8a7cb6382a7bd1b97a3f7904" + integrity sha512-f9lCGwEJIwOOjpunMq8ALWHhSzd/8D4bgmEPsUrkHbTxSopKU1hPxTSPwGZvwNxWNsTJjACZsnAyyGcND+O5aQ== + +"@swc/html-linux-ppc64-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-ppc64-gnu/-/html-linux-ppc64-gnu-1.16.0.tgz#b6472fb092b04bf94240a03ab1c9995fd5b5fcfa" + integrity sha512-Yc4Q4agRXBDLI1gs3HEwf6Rp2U0z+6ivmie77bfPjH5b1EOC3g/XrviNtAFfG7sEYzEjHZGHTr5ohs9Hd3ibYw== + +"@swc/html-linux-s390x-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-s390x-gnu/-/html-linux-s390x-gnu-1.16.0.tgz#ad9188db0e37dd866a7c26424860d58fbae88619" + integrity sha512-0LqXAV+uBZJeqYCsLDE2QtZqHK2sAzOo51BJP45GQLqjIWYY5ujnSIMppZeaDclS/ZIpRIegluypTA2BoQW9qg== + +"@swc/html-linux-x64-gnu@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-x64-gnu/-/html-linux-x64-gnu-1.16.0.tgz#4d2cb77943007da23a07d6b8dba90eaa457180cd" + integrity sha512-AglfxbBTnc1q+cDLufeqvgsNytiuSJbjPLxOJ9QM8fz49iZJQicD//Y4OgsD+2FVfbMsL4/g60+jE3aTEpGqbQ== + +"@swc/html-linux-x64-musl@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-linux-x64-musl/-/html-linux-x64-musl-1.16.0.tgz#3b009dd3852dd303a273e588e781bbae6ed20acc" + integrity sha512-Xa0sEUCowK9fN2Na0bguTGdx++BjLeONFG3omWVPMEd2VTJYOfNVhqka4pKbmQUocCVhQbxewuuZOxrO/6Fk6Q== + +"@swc/html-win32-arm64-msvc@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-win32-arm64-msvc/-/html-win32-arm64-msvc-1.16.0.tgz#a5d36e976b9a7c0fa72f926740d0e55779b4c319" + integrity sha512-8CR2aS/kWzr/cFlRschBUj94SiZ87f36U3ChUQX/fEoHTR1Z29PQTdmqtna4wueSNItk2Q1gyi6Y1OD0U/iDuQ== + +"@swc/html-win32-ia32-msvc@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-win32-ia32-msvc/-/html-win32-ia32-msvc-1.16.0.tgz#6ceeb3248f650577540510f12d0786b251d35add" + integrity sha512-UlNq29HY9HtDnVUEB37IRrzqMh/mdksc2djKikouNRJ0bJvp4wIcXfkRKNMS+9wDgXdtMWV8JNyAKOGTwvt4UQ== + +"@swc/html-win32-x64-msvc@1.16.0": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html-win32-x64-msvc/-/html-win32-x64-msvc-1.16.0.tgz#dd61c46a5ffca51607c3c3ef9b0365e43577c155" + integrity sha512-3a+67eFx2XLWzDtYs5dg/t20J8uFXemF68tt7vIKyItdNzew+ivBu19JzQN/6wGSVHrXqf17vEQwmOO+gEYi1A== + +"@swc/html@^1.15.40": + version "1.16.0" + resolved "https://registry.yarnpkg.com/@swc/html/-/html-1.16.0.tgz#52250b60f3a15413af6a1802be85e07ce98ad159" + integrity sha512-mVJxXQo4Ga0OX5/aF6gKeclfps/aVsJpfaiEMifoplOhVBXGeKeMkr81Icspg/6WErbINVb1P47VFbj6cv+UrA== + dependencies: + "@swc/counter" "^0.1.3" + optionalDependencies: + "@swc/html-darwin-arm64" "1.16.0" + "@swc/html-darwin-x64" "1.16.0" + "@swc/html-linux-arm-gnueabihf" "1.16.0" + "@swc/html-linux-arm64-gnu" "1.16.0" + "@swc/html-linux-arm64-musl" "1.16.0" + "@swc/html-linux-ppc64-gnu" "1.16.0" + "@swc/html-linux-s390x-gnu" "1.16.0" + "@swc/html-linux-x64-gnu" "1.16.0" + "@swc/html-linux-x64-musl" "1.16.0" + "@swc/html-win32-arm64-msvc" "1.16.0" + "@swc/html-win32-ia32-msvc" "1.16.0" + "@swc/html-win32-x64-msvc" "1.16.0" + +"@swc/types@^0.1.28": + version "0.1.28" + resolved "https://registry.yarnpkg.com/@swc/types/-/types-0.1.28.tgz#e3cd892383fba3b8904c40518bbe1265a50753f2" + integrity sha512-V6Mnml8v09QALx6K0elJ7o9K/MkVDtW3t6L+7Ou/JcWtb3xwId2AH4FeOceySd2JaO87IMw4+6vSZxLm34LPbw== + dependencies: + "@swc/counter" "^0.1.3" + "@szmarczak/http-timer@^5.0.1": version "5.0.1" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-5.0.1.tgz#c7c1bf1141cdd4751b0399c8fc7b8b664cd5be3a" @@ -2436,10 +3225,12 @@ dependencies: defer-to-connect "^2.0.1" -"@trysound/sax@0.2.0": - version "0.2.0" - resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" - integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== +"@tybys/wasm-util@^0.10.1": + version "0.10.3" + resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.3.tgz#015cba9e9dd47ce14d03d2a8c5d547bfb169665d" + integrity sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg== + dependencies: + tslib "^2.4.0" "@types/body-parser@*": version "1.19.6" @@ -2449,14 +3240,14 @@ "@types/connect" "*" "@types/node" "*" -"@types/bonjour@^3.5.9": +"@types/bonjour@^3.5.13": version "3.5.13" resolved "https://registry.yarnpkg.com/@types/bonjour/-/bonjour-3.5.13.tgz#adf90ce1a105e81dd1f9c61fdc5afda1bfb92956" integrity sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ== dependencies: "@types/node" "*" -"@types/connect-history-api-fallback@^1.3.5": +"@types/connect-history-api-fallback@^1.5.4": version "1.5.4" resolved "https://registry.yarnpkg.com/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.4.tgz#7de71645a103056b48ac3ce07b3520b819c1d5b3" integrity sha512-n6Cr2xS1h4uAulPRdlw6Jl6s1oG8KrVilPN2yUITEs+K48EzMJJ3W1xy8K5eWuFvjp3R74AOIGSmp2UfBJ8HFw== @@ -2471,28 +3262,222 @@ dependencies: "@types/node" "*" -"@types/debug@^4.0.0": - version "4.1.12" - resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.12.tgz#a155f21690871953410df4b6b6f53187f0500917" - integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== +"@types/d3-array@*": + version "3.2.2" + resolved "https://registry.yarnpkg.com/@types/d3-array/-/d3-array-3.2.2.tgz#e02151464d02d4a1b44646d0fcdb93faf88fde8c" + integrity sha512-hOLWVbm7uRza0BYXpIIW5pxfrKe0W+D5lrFiAEYR+pb6w3N2SwSMaJbXdUfSEv+dT4MfHBLtn5js0LAWaO6otw== + +"@types/d3-axis@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-axis/-/d3-axis-3.0.6.tgz#e760e5765b8188b1defa32bc8bb6062f81e4c795" + integrity sha512-pYeijfZuBd87T0hGn0FO1vQ/cgLk6E1ALJjfkC0oJ8cbwkZl3TpgS8bVBLZN+2jjGgg38epgxb2zmoGtSfvgMw== dependencies: - "@types/ms" "*" + "@types/d3-selection" "*" -"@types/eslint-scope@^3.7.7": - version "3.7.7" - resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" - integrity sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg== +"@types/d3-brush@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-brush/-/d3-brush-3.0.6.tgz#c2f4362b045d472e1b186cdbec329ba52bdaee6c" + integrity sha512-nH60IZNNxEcrh6L1ZSMNA28rj27ut/2ZmI3r96Zd+1jrZD++zD3LsMIjWlvg4AYrHn/Pqz4CF3veCxGjtbqt7A== dependencies: - "@types/eslint" "*" - "@types/estree" "*" + "@types/d3-selection" "*" + +"@types/d3-chord@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-chord/-/d3-chord-3.0.6.tgz#1706ca40cf7ea59a0add8f4456efff8f8775793d" + integrity sha512-LFYWWd8nwfwEmTZG9PfQxd17HbNPksHBiJHaKuY1XeqscXacsS2tyoo6OdRsjf+NQYeB6XrNL3a25E3gH69lcg== -"@types/eslint@*": - version "9.6.1" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-9.6.1.tgz#d5795ad732ce81715f27f75da913004a56751584" - integrity sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag== +"@types/d3-color@*": + version "3.1.3" + resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-3.1.3.tgz#368c961a18de721da8200e80bf3943fb53136af2" + integrity sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A== + +"@types/d3-contour@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-contour/-/d3-contour-3.0.6.tgz#9ada3fa9c4d00e3a5093fed0356c7ab929604231" + integrity sha512-BjzLgXGnCWjUSYGfH1cpdo41/hgdWETu4YxpezoztawmqsvCeep+8QGfiY6YbDvfgHz/DkjeIkkZVJavB4a3rg== dependencies: - "@types/estree" "*" - "@types/json-schema" "*" + "@types/d3-array" "*" + "@types/geojson" "*" + +"@types/d3-delaunay@*": + version "6.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-delaunay/-/d3-delaunay-6.0.4.tgz#185c1a80cc807fdda2a3fe960f7c11c4a27952e1" + integrity sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw== + +"@types/d3-dispatch@*": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@types/d3-dispatch/-/d3-dispatch-3.0.7.tgz#ef004d8a128046cfce434d17182f834e44ef95b2" + integrity sha512-5o9OIAdKkhN1QItV2oqaE5KMIiXAvDWBDPrD85e58Qlz1c1kI/J0NcqbEG88CoTwJrYe7ntUCVfeUl2UJKbWgA== + +"@types/d3-drag@*": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@types/d3-drag/-/d3-drag-3.0.7.tgz#b13aba8b2442b4068c9a9e6d1d82f8bcea77fc02" + integrity sha512-HE3jVKlzU9AaMazNufooRJ5ZpWmLIoc90A37WU2JMmeq28w1FQqCZswHZ3xR+SuxYftzHq6WU6KJHvqxKzTxxQ== + dependencies: + "@types/d3-selection" "*" + +"@types/d3-dsv@*": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@types/d3-dsv/-/d3-dsv-3.0.7.tgz#0a351f996dc99b37f4fa58b492c2d1c04e3dac17" + integrity sha512-n6QBF9/+XASqcKK6waudgL0pf/S5XHPPI8APyMLLUHd8NqouBGLsU8MgtO7NINGtPBtk9Kko/W4ea0oAspwh9g== + +"@types/d3-ease@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-3.0.2.tgz#e28db1bfbfa617076f7770dd1d9a48eaa3b6c51b" + integrity sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA== + +"@types/d3-fetch@*": + version "3.0.7" + resolved "https://registry.yarnpkg.com/@types/d3-fetch/-/d3-fetch-3.0.7.tgz#c04a2b4f23181aa376f30af0283dbc7b3b569980" + integrity sha512-fTAfNmxSb9SOWNB9IoG5c8Hg6R+AzUHDRlsXsDZsNp6sxAEOP0tkP3gKkNSO/qmHPoBFTxNrjDprVHDQDvo5aA== + dependencies: + "@types/d3-dsv" "*" + +"@types/d3-force@*": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@types/d3-force/-/d3-force-3.0.10.tgz#6dc8fc6e1f35704f3b057090beeeb7ac674bff1a" + integrity sha512-ZYeSaCF3p73RdOKcjj+swRlZfnYpK1EbaDiYICEEp5Q6sUiqFaFQ9qgoshp5CzIyyb/yD09kD9o2zEltCexlgw== + +"@types/d3-format@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-format/-/d3-format-3.0.4.tgz#b1e4465644ddb3fdf3a263febb240a6cd616de90" + integrity sha512-fALi2aI6shfg7vM5KiR1wNJnZ7r6UuggVqtDA+xiEdPZQwy/trcQaHnwShLuLdta2rTymCNpxYTiMZX/e09F4g== + +"@types/d3-geo@*": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@types/d3-geo/-/d3-geo-3.1.0.tgz#b9e56a079449174f0a2c8684a9a4df3f60522440" + integrity sha512-856sckF0oP/diXtS4jNsiQw/UuK5fQG8l/a9VVLeSouf1/PPbBE1i1W852zVwKwYCBkFJJB7nCFTbk6UMEXBOQ== + dependencies: + "@types/geojson" "*" + +"@types/d3-hierarchy@*": + version "3.1.7" + resolved "https://registry.yarnpkg.com/@types/d3-hierarchy/-/d3-hierarchy-3.1.7.tgz#6023fb3b2d463229f2d680f9ac4b47466f71f17b" + integrity sha512-tJFtNoYBtRtkNysX1Xq4sxtjK8YgoWUNpIiUee0/jHGRwqvzYxkq0hGVbbOGSz+JgFxxRu4K8nb3YpG3CMARtg== + +"@types/d3-interpolate@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-interpolate/-/d3-interpolate-3.0.4.tgz#412b90e84870285f2ff8a846c6eb60344f12a41c" + integrity sha512-mgLPETlrpVV1YRJIglr4Ez47g7Yxjl1lj7YKsiMCb27VJH9W8NVM6Bb9d8kkpG/uAQS5AmbA48q2IAolKKo1MA== + dependencies: + "@types/d3-color" "*" + +"@types/d3-path@*": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@types/d3-path/-/d3-path-3.1.1.tgz#f632b380c3aca1dba8e34aa049bcd6a4af23df8a" + integrity sha512-VMZBYyQvbGmWyWVea0EHs/BwLgxc+MKi1zLDCONksozI4YJMcTt8ZEuIR4Sb1MMTE8MMW49v0IwI5+b7RmfWlg== + +"@types/d3-polygon@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-polygon/-/d3-polygon-3.0.2.tgz#dfae54a6d35d19e76ac9565bcb32a8e54693189c" + integrity sha512-ZuWOtMaHCkN9xoeEMr1ubW2nGWsp4nIql+OPQRstu4ypeZ+zk3YKqQT0CXVe/PYqrKpZAi+J9mTs05TKwjXSRA== + +"@types/d3-quadtree@*": + version "3.0.6" + resolved "https://registry.yarnpkg.com/@types/d3-quadtree/-/d3-quadtree-3.0.6.tgz#d4740b0fe35b1c58b66e1488f4e7ed02952f570f" + integrity sha512-oUzyO1/Zm6rsxKRHA1vH0NEDG58HrT5icx/azi9MF1TWdtttWl0UIUsjEQBBh+SIkrpd21ZjEv7ptxWys1ncsg== + +"@types/d3-random@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-random/-/d3-random-3.0.4.tgz#6bd3683b8332fc0f01e7059b7636bc5c7ede7337" + integrity sha512-UHYId5WTCx4L4YNel7NU00XUXXgvgpgZOvp10PuvsQENjMDXhh2RyFc0KBjO7B45ne4Ha1yVH7ii0vnzKkuzWA== + +"@types/d3-scale-chromatic@*": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@types/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz#dc6d4f9a98376f18ea50bad6c39537f1b5463c39" + integrity sha512-iWMJgwkK7yTRmWqRB5plb1kadXyQ5Sj8V/zYlFGMUBbIPKQScw+Dku9cAAMgJG+z5GYDoMjWGLVOvjghDEFnKQ== + +"@types/d3-scale@*": + version "4.0.9" + resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-4.0.9.tgz#57a2f707242e6fe1de81ad7bfcccaaf606179afb" + integrity sha512-dLmtwB8zkAeO/juAMfnV+sItKjlsw2lKdZVVy6LRr0cBmegxSABiLEpGVmSJJ8O08i4+sGR6qQtb6WtuwJdvVw== + dependencies: + "@types/d3-time" "*" + +"@types/d3-selection@*": + version "3.0.11" + resolved "https://registry.yarnpkg.com/@types/d3-selection/-/d3-selection-3.0.11.tgz#bd7a45fc0a8c3167a631675e61bc2ca2b058d4a3" + integrity sha512-bhAXu23DJWsrI45xafYpkQ4NtcKMwWnAC/vKrd2l+nxMFuvOT3XMYTIj2opv8vq8AO5Yh7Qac/nSeP/3zjTK0w== + +"@types/d3-shape@*": + version "3.1.8" + resolved "https://registry.yarnpkg.com/@types/d3-shape/-/d3-shape-3.1.8.tgz#d1516cc508753be06852cd06758e3bb54a22b0e3" + integrity sha512-lae0iWfcDeR7qt7rA88BNiqdvPS5pFVPpo5OfjElwNaT2yyekbM0C9vK+yqBqEmHr6lDkRnYNoTBYlAgJa7a4w== + dependencies: + "@types/d3-path" "*" + +"@types/d3-time-format@*": + version "4.0.3" + resolved "https://registry.yarnpkg.com/@types/d3-time-format/-/d3-time-format-4.0.3.tgz#d6bc1e6b6a7db69cccfbbdd4c34b70632d9e9db2" + integrity sha512-5xg9rC+wWL8kdDj153qZcsJ0FWiFt0J5RB6LYUNZjwSnesfblqrI/bJ1wBdJ8OQfncgbJG5+2F+qfqnqyzYxyg== + +"@types/d3-time@*": + version "3.0.4" + resolved "https://registry.yarnpkg.com/@types/d3-time/-/d3-time-3.0.4.tgz#8472feecd639691450dd8000eb33edd444e1323f" + integrity sha512-yuzZug1nkAAaBlBBikKZTgzCeA+k1uy4ZFwWANOfKw5z5LRhV0gNA7gNkKm7HoK+HRN0wX3EkxGk0fpbWhmB7g== + +"@types/d3-timer@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/d3-timer/-/d3-timer-3.0.2.tgz#70bbda77dc23aa727413e22e214afa3f0e852f70" + integrity sha512-Ps3T8E8dZDam6fUyNiMkekK3XUsaUEik+idO9/YjPtfj2qruF8tFBXS7XhtE4iIXBLxhmLjP3SXpLhVf21I9Lw== + +"@types/d3-transition@*": + version "3.0.9" + resolved "https://registry.yarnpkg.com/@types/d3-transition/-/d3-transition-3.0.9.tgz#1136bc57e9ddb3c390dccc9b5ff3b7d2b8d94706" + integrity sha512-uZS5shfxzO3rGlu0cC3bjmMFKsXv+SmZZcgp0KD22ts4uGXp5EVYGzu/0YdwZeKmddhcAccYtREJKkPfXkZuCg== + dependencies: + "@types/d3-selection" "*" + +"@types/d3-zoom@*": + version "3.0.8" + resolved "https://registry.yarnpkg.com/@types/d3-zoom/-/d3-zoom-3.0.8.tgz#dccb32d1c56b1e1c6e0f1180d994896f038bc40b" + integrity sha512-iqMC4/YlFCSlO8+2Ii1GGGliCAY4XdeG748w5vQUbevlbDu0zSjH/+jojorQVBK/se0j6DUFNPBGSqD3YWYnDw== + dependencies: + "@types/d3-interpolate" "*" + "@types/d3-selection" "*" + +"@types/d3@^7.4.3": + version "7.4.3" + resolved "https://registry.yarnpkg.com/@types/d3/-/d3-7.4.3.tgz#d4550a85d08f4978faf0a4c36b848c61eaac07e2" + integrity sha512-lZXZ9ckh5R8uiFVt8ogUNf+pIrK4EsWrx2Np75WvF/eTpJ0FMHNhjXk8CKEx/+gpHbNQyJWehbFaTvqmHWB3ww== + dependencies: + "@types/d3-array" "*" + "@types/d3-axis" "*" + "@types/d3-brush" "*" + "@types/d3-chord" "*" + "@types/d3-color" "*" + "@types/d3-contour" "*" + "@types/d3-delaunay" "*" + "@types/d3-dispatch" "*" + "@types/d3-drag" "*" + "@types/d3-dsv" "*" + "@types/d3-ease" "*" + "@types/d3-fetch" "*" + "@types/d3-force" "*" + "@types/d3-format" "*" + "@types/d3-geo" "*" + "@types/d3-hierarchy" "*" + "@types/d3-interpolate" "*" + "@types/d3-path" "*" + "@types/d3-polygon" "*" + "@types/d3-quadtree" "*" + "@types/d3-random" "*" + "@types/d3-scale" "*" + "@types/d3-scale-chromatic" "*" + "@types/d3-selection" "*" + "@types/d3-shape" "*" + "@types/d3-time" "*" + "@types/d3-time-format" "*" + "@types/d3-timer" "*" + "@types/d3-transition" "*" + "@types/d3-zoom" "*" + +"@types/debug@^4.0.0": + version "4.1.13" + resolved "https://registry.yarnpkg.com/@types/debug/-/debug-4.1.13.tgz#22d1cc9d542d3593caea764f974306ab36286ee7" + integrity sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw== + dependencies: + "@types/ms" "*" "@types/estree-jsx@^1.0.0": version "1.0.5" @@ -2502,24 +3487,24 @@ "@types/estree" "*" "@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.8": - version "1.0.8" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.8.tgz#958b91c991b1867ced318bedea0e215ee050726e" - integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== + version "1.0.9" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.9.tgz#cf3f0e876d7bee15a93ab925b82bf570a3904a24" + integrity sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg== "@types/express-serve-static-core@*", "@types/express-serve-static-core@^5.0.0": - version "5.0.7" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.0.7.tgz#2fa94879c9d46b11a5df4c74ac75befd6b283de6" - integrity sha512-R+33OsgWw7rOhD1emjU7dzCDHucJrgJXMA5PYCzJxVil0dsyx5iBEPHqpPfiKNJQb7lZ1vxwoLR4Z87bBUpeGQ== + version "5.1.1" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-5.1.1.tgz#1a77faffee9572d39124933259be2523837d7eaa" + integrity sha512-v4zIMr/cX7/d2BpAEX3KNKL/JrT1s43s96lLvvdTmza1oEvDudCqK9aF/djc/SWgy8Yh0h30TZx5VpzqFCxk5A== dependencies: "@types/node" "*" "@types/qs" "*" "@types/range-parser" "*" "@types/send" "*" -"@types/express-serve-static-core@^4.17.33": - version "4.19.6" - resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz#e01324c2a024ff367d92c66f48553ced0ab50267" - integrity sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A== +"@types/express-serve-static-core@^4.17.21", "@types/express-serve-static-core@^4.17.33": + version "4.19.8" + resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.19.8.tgz#99b960322a4d576b239a640ab52ef191989b036f" + integrity sha512-02S5fmqeoKzVZCHPZid4b8JH2eM5HzQLZWN2FohQEy/0eXTq8VXZfSN6Pcr3F6N9R/vNrj7cpgbhjie6m/1tCA== dependencies: "@types/node" "*" "@types/qs" "*" @@ -2527,28 +3512,28 @@ "@types/send" "*" "@types/express@*": - version "5.0.3" - resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.3.tgz#6c4bc6acddc2e2a587142e1d8be0bce20757e956" - integrity sha512-wGA0NX93b19/dZC1J18tKWVIYWyyF2ZjT9vin/NRu0qzzvfVzWjs04iq2rQ3H65vCTQYlRqs3YHfY7zjdV+9Kw== + version "5.0.6" + resolved "https://registry.yarnpkg.com/@types/express/-/express-5.0.6.tgz#2d724b2c990dcb8c8444063f3580a903f6d500cc" + integrity sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA== dependencies: "@types/body-parser" "*" "@types/express-serve-static-core" "^5.0.0" - "@types/serve-static" "*" + "@types/serve-static" "^2" -"@types/express@^4.17.13": - version "4.17.23" - resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.23.tgz#35af3193c640bfd4d7fe77191cd0ed411a433bef" - integrity sha512-Crp6WY9aTYP3qPi2wGDo9iUe/rceX01UMhnF1jmwDcKCFM6cx7YhGP/Mpr3y9AASpfHixIG0E6azCcL5OcDHsQ== +"@types/express@^4.17.25": + version "4.17.25" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.25.tgz#070c8c73a6fee6936d65c195dbbfb7da5026649b" + integrity sha512-dVd04UKsfpINUnK0yBoYHDF3xu7xVH4BuDotC/xGuycx4CgbP48X/KF/586bcObxT0HENHXEU8Nqtu6NR+eKhw== dependencies: "@types/body-parser" "*" "@types/express-serve-static-core" "^4.17.33" "@types/qs" "*" - "@types/serve-static" "*" + "@types/serve-static" "^1" -"@types/gtag.js@^0.0.12": - version "0.0.12" - resolved "https://registry.yarnpkg.com/@types/gtag.js/-/gtag.js-0.0.12.tgz#095122edca896689bdfcdd73b057e23064d23572" - integrity sha512-YQV9bUsemkzG81Ea295/nF/5GijnD2Af7QhEofh7xu+kvCN6RdodgNwwGWXB5GMI3NoyvQo0odNctoH/qLMIpg== +"@types/geojson@*": + version "7946.0.16" + resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.16.tgz#8ebe53d69efada7044454e3305c19017d97ced2a" + integrity sha512-6C8nqWur3j98U6+lXDfTUWIfgvZU+EumvpHKcYjujKH7woYyLj2sUmff0tRhrqM7BohUw7Pz3ZB1jj2gW9Fvmg== "@types/hast@^3.0.0": version "3.0.4" @@ -2568,9 +3553,9 @@ integrity sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg== "@types/http-cache-semantics@^4.0.2": - version "4.0.4" - resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz#b979ebad3919799c979b17c72621c0bc0a31c6c4" - integrity sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA== + version "4.2.0" + resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz#f6a7788f438cbfde15f29acad46512b4c01913b3" + integrity sha512-L3LgimLHXtGkWikKnsPg0/VFx9OGZaC+eN1u4r+OB1XRqH3meBIAVC2zr1WdMH+RHmnRkqliQAOHNJ/E0j/e0Q== "@types/http-errors@*": version "2.0.5" @@ -2578,9 +3563,9 @@ integrity sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg== "@types/http-proxy@^1.17.8": - version "1.17.16" - resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.16.tgz#dee360707b35b3cc85afcde89ffeebff7d7f9240" - integrity sha512-sdWoUajOB1cd0A8cRRQ1cfyWNbmFKLAqBB89Y8x5iYyG/mkJHc0YUH8pdWBy2omi9qtCpiIgGjuwO0dQST2l5w== + version "1.17.17" + resolved "https://registry.yarnpkg.com/@types/http-proxy/-/http-proxy-1.17.17.tgz#d9e2c4571fe3507343cb210cd41790375e59a533" + integrity sha512-ED6LB+Z1AVylNTu7hdzuBqOgMnvG/ld6wGCG8wFnAzKX5uyW2K3WD52v0gnLCTK/VLpXtKckgWuyScYK6cSPaw== dependencies: "@types/node" "*" @@ -2603,7 +3588,7 @@ dependencies: "@types/istanbul-lib-report" "*" -"@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": +"@types/json-schema@^7.0.15", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== @@ -2616,9 +3601,9 @@ "@types/unist" "*" "@types/mdx@^2.0.0": - version "2.0.13" - resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.13.tgz#68f6877043d377092890ff5b298152b0a21671bd" - integrity sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw== + version "2.0.14" + resolved "https://registry.yarnpkg.com/@types/mdx/-/mdx-2.0.14.tgz#c1e54113265b152021ab0afe0434e3cadd90bfe3" + integrity sha512-T48PeuJtvLosNTPVhfnIp3i/n3a4g4Bad7YCq5k64D4u7NwDrAotikQ+5+sjtUvBmxCMlbo3dVL+C2dP0rWHzg== "@types/mime@^1": version "1.3.5" @@ -2630,19 +3615,12 @@ resolved "https://registry.yarnpkg.com/@types/ms/-/ms-2.1.0.tgz#052aa67a48eccc4309d7f0191b7e41434b90bb78" integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== -"@types/node-forge@^1.3.0": - version "1.3.14" - resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-1.3.14.tgz#006c2616ccd65550560c2757d8472eb6d3ecea0b" - integrity sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw== - dependencies: - "@types/node" "*" - "@types/node@*": - version "24.4.0" - resolved "https://registry.yarnpkg.com/@types/node/-/node-24.4.0.tgz#4ca9168c016a55ab15b7765ad1674ab807489600" - integrity sha512-gUuVEAK4/u6F9wRLznPUU4WGUacSEBDPoC2TrBkw3GAnOLHBL45QdfHOXp1kJ4ypBGLxTOB+t7NJLpKoC3gznQ== + version "26.1.0" + resolved "https://registry.yarnpkg.com/@types/node/-/node-26.1.0.tgz#aa85f0727fc5611347091c478341c63650903439" + integrity sha512-O0A1G3xPGy4w7AgQdAQYUlQ+BKk2Oovw8eRpofyp5KdBZULnbe+WqaOVNrm705SHphCiG4XHsACrSmPu1f+Kgw== dependencies: - undici-types "~7.11.0" + undici-types "~8.3.0" "@types/node@^17.0.5": version "17.0.45" @@ -2655,9 +3633,9 @@ integrity sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw== "@types/prismjs@^1.26.0": - version "1.26.5" - resolved "https://registry.yarnpkg.com/@types/prismjs/-/prismjs-1.26.5.tgz#72499abbb4c4ec9982446509d2f14fb8483869d6" - integrity sha512-AUZTa7hQ2KY5L7AmtSiqxlhWxb4ina0yd8hNbl4TWuqnv/pFP0nDMb3YrfSBf4hJVGLh2YEIBfKaBW/9UEl6IQ== + version "1.26.6" + resolved "https://registry.yarnpkg.com/@types/prismjs/-/prismjs-1.26.6.tgz#6ea27c126d645319ae4f7055eda63a9e835c0187" + integrity sha512-vqlvI7qlMvcCBbVe0AKAb4f97//Hy0EBTaiW8AalRnG/xAN5zOiWWyrNqNXeq8+KAuvRewjCVY1+IPxk4RdNYw== "@types/prop-types@^15.7.15": version "15.7.15" @@ -2665,9 +3643,9 @@ integrity sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw== "@types/qs@*": - version "6.14.0" - resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.14.0.tgz#d8b60cecf62f2db0fb68e5e006077b9178b85de5" - integrity sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ== + version "6.15.1" + resolved "https://registry.yarnpkg.com/@types/qs/-/qs-6.15.1.tgz#8606884272c63f0db96986bd3548650d8a9388bf" + integrity sha512-GZHUBZR9hckSUhrxmp1nG6NwdpM9fCunJwyThLW1X3AyHgd9IlHb6VANpQQqDr2o/qQp6McZ3y/IA2rVzKzSbw== "@types/range-parser@*": version "1.2.7" @@ -2706,16 +3684,16 @@ integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w== "@types/react@*": - version "19.1.13" - resolved "https://registry.yarnpkg.com/@types/react/-/react-19.1.13.tgz#fc650ffa680d739a25a530f5d7ebe00cdd771883" - integrity sha512-hHkbU/eoO3EG5/MZkuFSKmYqPbSVk5byPFa3e7y/8TybHiLMACgI8seVYlicwk7H5K/rI2px9xrQp/C+AUDTiQ== + version "19.2.17" + resolved "https://registry.yarnpkg.com/@types/react/-/react-19.2.17.tgz#dccac365baa0f1734ec270ff4b51c89465e8dc7f" + integrity sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw== dependencies: - csstype "^3.0.2" + csstype "^3.2.2" -"@types/retry@0.12.0": - version "0.12.0" - resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.0.tgz#2b35eccfcee7d38cd72ad99232fbd58bffb3c84d" - integrity sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA== +"@types/retry@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@types/retry/-/retry-0.12.2.tgz#ed279a64fa438bb69f2480eda44937912bb7480a" + integrity sha512-XISRgDJ2Tc5q4TRqvgJtzsRkFYNJzZrhTdtMoGVBttwzzQJkPnS3WWTFc7kuDRoPtPakl+T+OfdEUjYJj7Jbow== "@types/sax@^1.2.1": version "1.2.7" @@ -2725,36 +3703,56 @@ "@types/node" "*" "@types/send@*": - version "0.17.5" - resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.5.tgz#d991d4f2b16f2b1ef497131f00a9114290791e74" - integrity sha512-z6F2D3cOStZvuk2SaP6YrwkNO65iTZcwA2ZkSABegdkAh/lf+Aa/YQndZVfmEXT5vgAp6zv06VQ3ejSVjAny4w== + version "1.2.1" + resolved "https://registry.yarnpkg.com/@types/send/-/send-1.2.1.tgz#6a784e45543c18c774c049bff6d3dbaf045c9c74" + integrity sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ== + dependencies: + "@types/node" "*" + +"@types/send@<1": + version "0.17.6" + resolved "https://registry.yarnpkg.com/@types/send/-/send-0.17.6.tgz#aeb5385be62ff58a52cd5459daa509ae91651d25" + integrity sha512-Uqt8rPBE8SY0RK8JB1EzVOIZ32uqy8HwdxCnoCOsYrvnswqmFZ/k+9Ikidlk/ImhsdvBsloHbAlewb2IEBV/Og== dependencies: "@types/mime" "^1" "@types/node" "*" -"@types/serve-index@^1.9.1": +"@types/serve-index@^1.9.4": version "1.9.4" resolved "https://registry.yarnpkg.com/@types/serve-index/-/serve-index-1.9.4.tgz#e6ae13d5053cb06ed36392110b4f9a49ac4ec898" integrity sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug== dependencies: "@types/express" "*" -"@types/serve-static@*", "@types/serve-static@^1.13.10": - version "1.15.8" - resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.8.tgz#8180c3fbe4a70e8f00b9f70b9ba7f08f35987877" - integrity sha512-roei0UY3LhpOJvjbIP6ZZFngyLKl5dskOtDhxY5THRSpO+ZI+nzJ+m5yUMzGrp89YRa7lvknKkMYjqQFGwA7Sg== +"@types/serve-static@^1", "@types/serve-static@^1.15.5": + version "1.15.10" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.15.10.tgz#768169145a778f8f5dfcb6360aead414a3994fee" + integrity sha512-tRs1dB+g8Itk72rlSI2ZrW6vZg0YrLI81iQSTkMmOqnqCaNr/8Ek4VwWcN5vZgCYWbg/JJSGBlUaYGAOP73qBw== + dependencies: + "@types/http-errors" "*" + "@types/node" "*" + "@types/send" "<1" + +"@types/serve-static@^2": + version "2.2.0" + resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-2.2.0.tgz#d4a447503ead0d1671132d1ab6bd58b805d8de6a" + integrity sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ== dependencies: "@types/http-errors" "*" "@types/node" "*" - "@types/send" "*" -"@types/sockjs@^0.3.33": +"@types/sockjs@^0.3.36": version "0.3.36" resolved "https://registry.yarnpkg.com/@types/sockjs/-/sockjs-0.3.36.tgz#ce322cf07bcc119d4cbf7f88954f3a3bd0f67535" integrity sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q== dependencies: "@types/node" "*" +"@types/trusted-types@^2.0.7": + version "2.0.7" + resolved "https://registry.yarnpkg.com/@types/trusted-types/-/trusted-types-2.0.7.tgz#baccb07a970b91707df3a3e8ba6896c57ead2d11" + integrity sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw== + "@types/unist@*", "@types/unist@^3.0.0": version "3.0.3" resolved "https://registry.yarnpkg.com/@types/unist/-/unist-3.0.3.tgz#acaab0f919ce69cce629c2d4ed2eb4adc1b6c20c" @@ -2765,7 +3763,7 @@ resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.11.tgz#11af57b127e32487774841f7a4e54eab166d03c4" integrity sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA== -"@types/ws@^8.5.5": +"@types/ws@^8.5.10": version "8.18.1" resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.18.1.tgz#48464e4bf2ddfd17db13d845467f6070ffea4aa9" integrity sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg== @@ -2778,16 +3776,24 @@ integrity sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ== "@types/yargs@^17.0.8": - version "17.0.33" - resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.33.tgz#8c32303da83eec050a84b3c7ae7b9f922d13e32d" - integrity sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA== + version "17.0.35" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-17.0.35.tgz#07013e46aa4d7d7d50a49e15604c1c5340d4eb24" + integrity sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg== dependencies: "@types/yargs-parser" "*" -"@ungap/structured-clone@^1.0.0": - version "1.3.0" - resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.0.tgz#d06bbb384ebcf6c505fde1c3d0ed4ddffe0aaff8" - integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== +"@ungap/structured-clone@^1.0.0", "@ungap/structured-clone@^1.3.1": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.3.2.tgz#a03ad82cd5676414d068ba86f880c5681194aadf" + integrity sha512-5jsZFwgR5rTdKwidH9Qmat75RKwqfpKlWWB1frDkljN127mwqBu8K0PYo7/hFpF03IEJpfVPpCQDY/eDx3iHvA== + +"@upsetjs/venn.js@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@upsetjs/venn.js/-/venn.js-2.0.0.tgz#3be192038cdda927aa4f8b22ab51af82abf47f34" + integrity sha512-WbBhLrooyePuQ1VZxrJjtLvTc4NVfpOyKx0sKqioq9bX1C1m7Jgykkn8gLrtwumBioXIqam8DLxp88Adbue6Hw== + optionalDependencies: + d3-selection "^3.0.0" + d3-transition "^3.0.1" "@webassemblyjs/ast@1.14.1", "@webassemblyjs/ast@^1.14.1": version "1.14.1" @@ -2920,7 +3926,7 @@ resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== -accepts@~1.3.4, accepts@~1.3.8: +accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== @@ -2939,21 +3945,21 @@ acorn-jsx@^5.0.0: integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn-walk@^8.0.0: - version "8.3.4" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.4.tgz#794dd169c3977edf4ba4ea47583587c5866236b7" - integrity sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g== + version "8.3.5" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.3.5.tgz#8a6b8ca8fc5b34685af15dabb44118663c296496" + integrity sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw== dependencies: acorn "^8.11.0" -acorn@^8.0.0, acorn@^8.0.4, acorn@^8.11.0, acorn@^8.15.0: - version "8.15.0" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" - integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== +acorn@^8.0.0, acorn@^8.0.4, acorn@^8.11.0, acorn@^8.15.0, acorn@^8.16.0: + version "8.17.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.17.0.tgz#1785adb84faf8d8add10369b93826fc2bd08f1fe" + integrity sha512-xRQbDb9BnwDafYNn6Vwl839DYVjqXYb1XVGtWAZ1kcDc6iwAL4hg3B1dZlRiuENFeO2H53gFG3in621AdERVAg== -address@^1.0.1: - version "1.2.2" - resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" - integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== +address@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/address/-/address-2.0.3.tgz#e910900615db3d8a20c040d4c710631062fc4ba8" + integrity sha512-XNAb/a6TCqou+TufU8/u11HCu9x1gYvOoxLwtlXgIqmkrYQADVv6ljyW2zwiPhHz9R1gItAWpuDrdJMmrOBFEA== aggregate-error@^3.0.0: version "3.1.0" @@ -2983,9 +3989,9 @@ ajv-keywords@^5.1.0: fast-deep-equal "^3.1.3" ajv@^6.12.5: - version "6.12.6" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" - integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + version "6.15.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.15.0.tgz#07e982c74626167aa7a2495c53817892d7139492" + integrity sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw== dependencies: fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" @@ -2993,41 +3999,41 @@ ajv@^6.12.5: uri-js "^4.2.2" ajv@^8.0.0, ajv@^8.9.0: - version "8.17.1" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" - integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== + version "8.20.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.20.0.tgz#304b3636add88ba7d936760dd50ece006dea95f9" + integrity sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA== dependencies: fast-deep-equal "^3.1.3" fast-uri "^3.0.1" json-schema-traverse "^1.0.0" require-from-string "^2.0.2" -algoliasearch-helper@^3.22.6: - version "3.26.0" - resolved "https://registry.yarnpkg.com/algoliasearch-helper/-/algoliasearch-helper-3.26.0.tgz#d6e283396a9fc5bf944f365dc3b712570314363f" - integrity sha512-Rv2x3GXleQ3ygwhkhJubhhYGsICmShLAiqtUuJTUkr9uOCOXyF2E71LVT4XDnVffbknv8XgScP4U0Oxtgm+hIw== +algoliasearch-helper@^3.26.0: + version "3.29.1" + resolved "https://registry.yarnpkg.com/algoliasearch-helper/-/algoliasearch-helper-3.29.1.tgz#4e764351493d461aa825d2a1209403a98e9b2477" + integrity sha512-6ck2YFudF2Pje7szQoPBiRFTGfd+1I+0I/WfLPGn0bj1kvrFoOQmNyedNiDxTk3/r4IfSLDYk+RA4G7u8H6+yA== dependencies: "@algolia/events" "^4.0.1" -algoliasearch@^5.14.2, algoliasearch@^5.17.1: - version "5.37.0" - resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-5.37.0.tgz#73dc4a09654e6e02b529300018d639706b95b47b" - integrity sha512-y7gau/ZOQDqoInTQp0IwTOjkrHc4Aq4R8JgpmCleFwiLl+PbN2DMWoDUWZnrK8AhNJwT++dn28Bt4NZYNLAmuA== - dependencies: - "@algolia/abtesting" "1.3.0" - "@algolia/client-abtesting" "5.37.0" - "@algolia/client-analytics" "5.37.0" - "@algolia/client-common" "5.37.0" - "@algolia/client-insights" "5.37.0" - "@algolia/client-personalization" "5.37.0" - "@algolia/client-query-suggestions" "5.37.0" - "@algolia/client-search" "5.37.0" - "@algolia/ingestion" "1.37.0" - "@algolia/monitoring" "1.37.0" - "@algolia/recommend" "5.37.0" - "@algolia/requester-browser-xhr" "5.37.0" - "@algolia/requester-fetch" "5.37.0" - "@algolia/requester-node-http" "5.37.0" +algoliasearch@^5.37.0: + version "5.55.1" + resolved "https://registry.yarnpkg.com/algoliasearch/-/algoliasearch-5.55.1.tgz#d9c8a4636c79946881802a0d7426fc33333873e1" + integrity sha512-FyaFnnsbVPtevQwqSj/SdxE3jAsSsY0BEH8IVLf9rXxEBdAhAmT6VKCVSMWoaPIHVN1Eufh/1w8q6k8URpIkWw== + dependencies: + "@algolia/abtesting" "1.21.1" + "@algolia/client-abtesting" "5.55.1" + "@algolia/client-analytics" "5.55.1" + "@algolia/client-common" "5.55.1" + "@algolia/client-insights" "5.55.1" + "@algolia/client-personalization" "5.55.1" + "@algolia/client-query-suggestions" "5.55.1" + "@algolia/client-search" "5.55.1" + "@algolia/ingestion" "1.55.1" + "@algolia/monitoring" "1.55.1" + "@algolia/recommend" "5.55.1" + "@algolia/requester-browser-xhr" "5.55.1" + "@algolia/requester-fetch" "5.55.1" + "@algolia/requester-node-http" "5.55.1" ansi-align@^3.0.1: version "3.0.1" @@ -3036,13 +4042,6 @@ ansi-align@^3.0.1: dependencies: string-width "^4.1.0" -ansi-escapes@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" - integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== - dependencies: - type-fest "^0.21.3" - ansi-html-community@^0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/ansi-html-community/-/ansi-html-community-0.0.8.tgz#69fbc4d6ccbe383f9736934ae34c3f8290f1bf41" @@ -3053,12 +4052,12 @@ ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== -ansi-regex@^6.0.1: +ansi-regex@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== -ansi-styles@^4.0.0, ansi-styles@^4.1.0: +ansi-styles@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== @@ -3070,6 +4069,11 @@ ansi-styles@^6.1.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== +ansis@^3.2.0: + version "3.17.0" + resolved "https://registry.yarnpkg.com/ansis/-/ansis-3.17.0.tgz#fa8d9c2a93fe7d1177e0c17f9eeb562a58a832d7" + integrity sha512-0qWUglt9JEqLFr3w1I1pbrChn1grhaiAR2ocX1PP/flRmxgtwTzPFFFnfIlD6aMOLQZgSuCRlidD70lvx8yhzg== + anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -3083,13 +4087,6 @@ arg@^5.0.0: resolved "https://registry.yarnpkg.com/arg/-/arg-5.0.2.tgz#c81433cc427c92c4dcf4865142dbca6f15acd59c" integrity sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg== -argparse@^1.0.7: - version "1.0.10" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" - integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== - dependencies: - sprintf-js "~1.0.2" - argparse@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" @@ -3105,23 +4102,36 @@ array-union@^2.1.0: resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +asn1js@^3.0.10, asn1js@^3.0.6: + version "3.0.10" + resolved "https://registry.yarnpkg.com/asn1js/-/asn1js-3.0.10.tgz#df26c874c8a8b41ca605efea47b2ad07551013dd" + integrity sha512-S2s3aOytiKdFRdulw2qPE51MzjzVOisppcVv7jVFR+Kw0kxwvFrDcYA0h7Ndqbmj0HkMIXYWaoj7fli8kgx1eg== + dependencies: + pvtsutils "^1.3.6" + pvutils "^1.1.5" + tslib "^2.8.1" + astring@^1.8.0: version "1.9.0" resolved "https://registry.yarnpkg.com/astring/-/astring-1.9.0.tgz#cc73e6062a7eb03e7d19c22d8b0b3451fd9bfeef" integrity sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg== -autoprefixer@^10.4.19, autoprefixer@^10.4.21: - version "10.4.21" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.4.21.tgz#77189468e7a8ad1d9a37fbc08efc9f480cf0a95d" - integrity sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ== +autoprefixer@^10.4.19, autoprefixer@^10.4.23: + version "10.5.2" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.5.2.tgz#5d7dcaab1c294038fe51e0fa3738d28e559caac0" + integrity sha512-rD5t5DwOjJdmSORcTq64j8MawTC+tbQ+HHqjR4NDumamy/ambn1UJrlKL+KdwujWxMkFjPM3pPHOEA9tl4767Q== dependencies: - browserslist "^4.24.4" - caniuse-lite "^1.0.30001702" - fraction.js "^4.3.7" - normalize-range "^0.1.2" + browserslist "^4.28.4" + caniuse-lite "^1.0.30001799" + fraction.js "^5.3.4" picocolors "^1.1.1" postcss-value-parser "^4.2.0" +b4a@^1.6.4, b4a@^1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.8.1.tgz#7f16334ca80127aeb26064a28841acbf174840a4" + integrity sha512-aiqre1Nr0B/6DgE2N5vwTc+2/oQZ4Wh1t4NznYY4E00y8LCt6NqdRv81so00oo27D8MVKTpUa/MwUUtBLXCoDw== + babel-loader@^9.2.1: version "9.2.1" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-9.2.1.tgz#04c7835db16c246dd19ba0914418f3937797587b" @@ -3146,13 +4156,13 @@ babel-plugin-macros@^3.1.0: cosmiconfig "^7.0.0" resolve "^1.19.0" -babel-plugin-polyfill-corejs2@^0.4.14: - version "0.4.14" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.14.tgz#8101b82b769c568835611542488d463395c2ef8f" - integrity sha512-Co2Y9wX854ts6U8gAAPXfn0GmAyctHuK8n0Yhfjd6t30g7yvKjspvvOo9yG+z52PZRgFErt7Ka2pYnXCjLKEpg== +babel-plugin-polyfill-corejs2@^0.4.14, babel-plugin-polyfill-corejs2@^0.4.15: + version "0.4.17" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.17.tgz#198f970f1c99a856b466d1187e88ce30bd199d91" + integrity sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w== dependencies: - "@babel/compat-data" "^7.27.7" - "@babel/helper-define-polyfill-provider" "^0.6.5" + "@babel/compat-data" "^7.28.6" + "@babel/helper-define-polyfill-provider" "^0.6.8" semver "^6.3.1" babel-plugin-polyfill-corejs3@^0.13.0: @@ -3163,12 +4173,20 @@ babel-plugin-polyfill-corejs3@^0.13.0: "@babel/helper-define-polyfill-provider" "^0.6.5" core-js-compat "^3.43.0" -babel-plugin-polyfill-regenerator@^0.6.5: - version "0.6.5" - resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.5.tgz#32752e38ab6f6767b92650347bf26a31b16ae8c5" - integrity sha512-ISqQ2frbiNU9vIJkzg7dlPpznPZ4jOiUQ1uSmB0fEHeowtN3COYRsXr/xexn64NpU13P06jc/L5TgiJXOgrbEg== +babel-plugin-polyfill-corejs3@^0.14.0: + version "0.14.2" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.14.2.tgz#6ac08d2f312affb70c4c69c0fbba4cb417ee5587" + integrity sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g== dependencies: - "@babel/helper-define-polyfill-provider" "^0.6.5" + "@babel/helper-define-polyfill-provider" "^0.6.8" + core-js-compat "^3.48.0" + +babel-plugin-polyfill-regenerator@^0.6.5, babel-plugin-polyfill-regenerator@^0.6.6: + version "0.6.8" + resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.8.tgz#8a6bfd5dd54239362b3d06ce47ac52b2d95d7721" + integrity sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg== + dependencies: + "@babel/helper-define-polyfill-provider" "^0.6.8" bail@^2.0.0: version "2.0.2" @@ -3180,10 +4198,64 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -baseline-browser-mapping@^2.8.2: - version "2.8.3" - resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.8.3.tgz#e52e1d836fd242384ee152dce7b62952e4442619" - integrity sha512-mcE+Wr2CAhHNWxXN/DdTI+n4gsPc5QpXpWnyCQWiQYIYZX+ZMJ8juXZgjRa/0/YPJo/NSsgW15/YgmI4nbysYw== +balanced-match@^4.0.2: + version "4.0.4" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-4.0.4.tgz#bfb10662feed8196a2c62e7c68e17720c274179a" + integrity sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA== + +bare-events@^2.5.4, bare-events@^2.7.0: + version "2.9.1" + resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.9.1.tgz#5c86616966343bcb03a1b3155feab253eadbf349" + integrity sha512-Z0oHEHAFDZkffN8Qc39zNZjQlMDkPJRyyyZieU1VH7u8c5S+qHZ2S8ixdKIAxEjfHO7FJxXmJWgteOghVanIsg== + +bare-fs@^4.0.1, bare-fs@^4.5.5: + version "4.7.3" + resolved "https://registry.yarnpkg.com/bare-fs/-/bare-fs-4.7.3.tgz#0f3c7daaff2830214abca580fb20bdb5191072b1" + integrity sha512-xRgplks8SvcKkdlv2M6Z2LZmRsmqd+x0nXXGXeMEjwdibj1HSDrlnqBRLeYdMvsgCox7Bq0e+DHwfczOfsn6IA== + dependencies: + bare-events "^2.5.4" + bare-path "^3.0.0" + bare-stream "^2.6.4" + bare-url "^2.2.2" + fast-fifo "^1.3.2" + +bare-os@^3.0.1: + version "3.9.3" + resolved "https://registry.yarnpkg.com/bare-os/-/bare-os-3.9.3.tgz#eaf8a978a5fdda3dafc702b0f001449249eabe49" + integrity sha512-fF4Q7QsyKVF5Rj0qvI8BgUNjqzC2JvQlpTaPLjVJVxYVUX5Zr9un+y3w1HmA4nNKdFmRBT8z/WmrjvXzXVerKQ== + +bare-path@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/bare-path/-/bare-path-3.0.1.tgz#c12c81b527936b650e87c5d00264d59ef458082c" + integrity sha512-ghj2DSK/2e99a1anTVPCV4m4YIYtrbXhfM7V3D7XZLOTsybnYyaJloymGqssQc8l/or0UoDyRtNQkmkEF/ysgQ== + dependencies: + bare-os "^3.0.1" + +bare-stream@^2.6.4: + version "2.13.3" + resolved "https://registry.yarnpkg.com/bare-stream/-/bare-stream-2.13.3.tgz#f6186c7cbb4bbf53a4560f35e48b16373ba51ce6" + integrity sha512-Kc+brLqvEqGkjyfiwJmImAOqLZL7OsoLKuavx+hJjgVV3nLTOjloJyPMFxjUPerGGHrNH0fLU06jjykMLWrERQ== + dependencies: + b4a "^1.8.1" + streamx "^2.25.0" + teex "^1.0.1" + +bare-url@^2.2.2: + version "2.4.5" + resolved "https://registry.yarnpkg.com/bare-url/-/bare-url-2.4.5.tgz#50d205f8f2724eec60fd091ba9cebd675fca63aa" + integrity sha512-K+y9xF1tN+CdPu4qWwr0QiK1Al07eFPGYK5M2pDXcmHdMdgC/tT/bpmMe1hrmRHaidKLkXrC+cRNYf3XVDUhSQ== + dependencies: + bare-path "^3.0.0" + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +baseline-browser-mapping@^2.10.42: + version "2.10.42" + resolved "https://registry.yarnpkg.com/baseline-browser-mapping/-/baseline-browser-mapping-2.10.42.tgz#195dcc76baa269a497f0b07decace169fee9ac58" + integrity sha512-c/jurFrDLyui7o1J86yLkRu4LMsTYcBohveus7/I2Hzdn9KIP2bdJPTue/lR1KH46enoPbD77GKeSYNdyPoD3Q== batch@0.6.1: version "0.6.1" @@ -3200,28 +4272,37 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== -body-parser@1.20.3: - version "1.20.3" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6" - integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== +bl@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz#451535264182bec2fbbc83a62ab98cf11d9f7b3a" + integrity sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w== dependencies: - bytes "3.1.2" + buffer "^5.5.0" + inherits "^2.0.4" + readable-stream "^3.4.0" + +body-parser@~1.20.5: + version "1.20.5" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.5.tgz#303c8c34423d1d6fa799bc764e93c1e4dc6ebf64" + integrity sha512-3grm+/2tUOvu2cjJkvsIxrv/wVpfXQW4PsQHYm7yk4vfpu7Ekl6nEsYBoJUL6qDwZUx8wUhQ8tR2qz+ad9c9OA== + dependencies: + bytes "~3.1.2" content-type "~1.0.5" debug "2.6.9" depd "2.0.0" - destroy "1.2.0" - http-errors "2.0.0" - iconv-lite "0.4.24" - on-finished "2.4.1" - qs "6.13.0" - raw-body "2.5.2" + destroy "~1.2.0" + http-errors "~2.0.1" + iconv-lite "~0.4.24" + on-finished "~2.4.1" + qs "~6.15.1" + raw-body "~2.5.3" type-is "~1.6.18" - unpipe "1.0.0" + unpipe "~1.0.0" -bonjour-service@^1.0.11: - version "1.3.0" - resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.3.0.tgz#80d867430b5a0da64e82a8047fc1e355bdb71722" - integrity sha512-3YuAUiSkWykd+2Azjgyxei8OWf8thdn8AITIog2M4UICzoqfjlqr64WIjEXZllf/W6vK1goqleSR6brGomxQqA== +bonjour-service@^1.2.1: + version "1.4.2" + resolved "https://registry.yarnpkg.com/bonjour-service/-/bonjour-service-1.4.2.tgz#33ce18eddf13047e5eeb08939018b20bae1a1473" + integrity sha512-lMskhnsW70yWHr4PhPeh2rvaIkLSaDpp+nmtbXBZaNKTXwxL73QOkW6HhbzqTImXjevn9TreGT4GACGBCGP9nQ== dependencies: fast-deep-equal "^3.1.3" multicast-dns "^7.2.5" @@ -3260,13 +4341,20 @@ boxen@^7.0.0: wrap-ansi "^8.1.0" brace-expansion@^1.1.7: - version "1.1.12" - resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" - integrity sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg== + version "1.1.15" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.15.tgz#a6d90d54067236e5f42570a3b7378d594d9b7738" + integrity sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg== dependencies: balanced-match "^1.0.0" concat-map "0.0.1" +brace-expansion@^5.0.5: + version "5.0.7" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-5.0.7.tgz#1b0e46965b479dad65af737b4a02790a05498337" + integrity sha512-7oFy703dxfY3/NLxC1fh2SUCQ0H9rmAY+5EpDVfXjUTTs+HEwR2nYaqLv+GWcTsumwxPfiz6CzCNkwXwBUwqCA== + dependencies: + balanced-match "^4.0.2" + braces@^3.0.3, braces@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" @@ -3274,32 +4362,52 @@ braces@^3.0.3, braces@~3.0.2: dependencies: fill-range "^7.1.1" -browserslist@^4.0.0, browserslist@^4.23.0, browserslist@^4.24.0, browserslist@^4.24.4, browserslist@^4.25.1, browserslist@^4.25.3: - version "4.26.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.26.0.tgz#035ca84b4ff312a3c6a7014a77beb83456a882dd" - integrity sha512-P9go2WrP9FiPwLv3zqRD/Uoxo0RSHjzFCiQz7d4vbmwNqQFo9T9WCeP/Qn5EbcKQY6DBbkxEXNcpJOmncNrb7A== +browserslist@^4.0.0, browserslist@^4.23.0, browserslist@^4.24.0, browserslist@^4.24.2, browserslist@^4.28.1, browserslist@^4.28.4: + version "4.28.5" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.28.5.tgz#438b7d38c0d4b47740bbb36778d5bdca01b37838" + integrity sha512-Cu2E6QejHWzuDMTkuwgpABFgDfZrXLQq5V13YOACZx4mFAG4IwGTbTfHPMr4WtxlHoXSM8FIuRwYYCz5XiabaQ== dependencies: - baseline-browser-mapping "^2.8.2" - caniuse-lite "^1.0.30001741" - electron-to-chromium "^1.5.218" - node-releases "^2.0.21" - update-browserslist-db "^1.1.3" + baseline-browser-mapping "^2.10.42" + caniuse-lite "^1.0.30001800" + electron-to-chromium "^1.5.387" + node-releases "^2.0.50" + update-browserslist-db "^1.2.3" buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== +buffer@^5.5.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +bundle-name@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/bundle-name/-/bundle-name-4.1.0.tgz#f3b96b34160d6431a19d7688135af7cfb8797889" + integrity sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q== + dependencies: + run-applescript "^7.0.0" + bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" integrity sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw== -bytes@3.1.2: +bytes@3.1.2, bytes@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== +bytestreamjs@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/bytestreamjs/-/bytestreamjs-2.0.1.tgz#a32947c7ce389a6fa11a09a9a563d0a45889535e" + integrity sha512-U1Z/ob71V/bXfVABvNr/Kumf5VyeQRBEm6Txb0PQ6S7V5GpBM3w4Cbqz/xPDicR5tN0uvDifng8C+5qECeGwyQ== + cacheable-lookup@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-7.0.0.tgz#3476a8215d046e5a3202a9209dd13fec1f933a27" @@ -3318,7 +4426,7 @@ cacheable-request@^10.2.8: normalize-url "^8.0.0" responselike "^3.0.0" -call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: +call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz#4b5428c222be985d79c3d82657479dbe0b59b2d6" integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== @@ -3327,13 +4435,13 @@ call-bind-apply-helpers@^1.0.0, call-bind-apply-helpers@^1.0.1, call-bind-apply- function-bind "^1.1.2" call-bind@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.8.tgz#0736a9660f537e3388826f440d5ec45f744eaa4c" - integrity sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww== + version "1.0.9" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.9.tgz#39a644700c80bc7d0ca9102fc6d1d43b2fd7eee7" + integrity sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ== dependencies: - call-bind-apply-helpers "^1.0.0" - es-define-property "^1.0.0" - get-intrinsic "^1.2.4" + call-bind-apply-helpers "^1.0.2" + es-define-property "^1.0.1" + get-intrinsic "^1.3.0" set-function-length "^1.2.2" call-bound@^1.0.2, call-bound@^1.0.3: @@ -3377,10 +4485,10 @@ caniuse-api@^3.0.0: lodash.memoize "^4.1.2" lodash.uniq "^4.5.0" -caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001702, caniuse-lite@^1.0.30001741: - version "1.0.30001741" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001741.tgz#67fb92953edc536442f3c9da74320774aa523143" - integrity sha512-QGUGitqsc8ARjLdgAfxETDhRbJ0REsP6O3I96TAth/mVjh2cYzN2u+3AzPP3aVSm2FehEItaJw1xd+IGBXWeSw== +caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001799, caniuse-lite@^1.0.30001800: + version "1.0.30001802" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001802.tgz#2671fb13d468930586c56ffa80feb1c51e18ec69" + integrity sha512-vmv8ub2xwTNmljSKf82mtCk5JH7hC+YgzLj3P5zotvA0tPQ9016tdNNOG8WRca1IxOnhSsivB+J0z5FeE5LOUw== ccount@^2.0.0: version "2.0.1" @@ -3450,7 +4558,7 @@ cheerio@1.0.0-rc.12: parse5 "^7.0.0" parse5-htmlparser2-tree-adapter "^7.0.0" -chokidar@^3.5.3: +chokidar@^3.5.3, chokidar@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.6.0.tgz#197c6cc669ef2a8dc5e7b4d97ee4e092c3eb0d5b" integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== @@ -3465,6 +4573,11 @@ chokidar@^3.5.3: optionalDependencies: fsevents "~2.3.2" +chownr@^1.1.1: + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + chrome-trace-event@^1.0.2: version "1.0.4" resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz#05bffd7ff928465093314708c93bdfa9bd1f0f5b" @@ -3536,11 +4649,27 @@ color-convert@^2.0.1: dependencies: color-name "~1.1.4" -color-name@~1.1.4: +color-name@^1.0.0, color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== +color-string@^1.9.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.9.1.tgz#4467f9146f036f855b764dfb5bf8582bf342c7a4" + integrity sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg== + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + +color@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/color/-/color-4.2.3.tgz#d781ecb5e57224ee43ea9627560107c0e0c6463a" + integrity sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A== + dependencies: + color-convert "^2.0.1" + color-string "^1.9.0" + colord@^2.9.3: version "2.9.3" resolved "https://registry.yarnpkg.com/colord/-/colord-2.9.3.tgz#4f8ce919de456f1d5c1c368c307fe20f3e59fb43" @@ -3561,6 +4690,11 @@ comma-separated-tokens@^2.0.0: resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz#4e89c9458acb61bc8fef19f4529973b2392839ee" integrity sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg== +commander@7, commander@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== + commander@^10.0.0: version "10.0.1" resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" @@ -3576,11 +4710,6 @@ commander@^5.1.0: resolved "https://registry.yarnpkg.com/commander/-/commander-5.1.0.tgz#46abbd1652f8e059bddaef99bbdcb2ad9cf179ae" integrity sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg== -commander@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - commander@^8.3.0: version "8.3.0" resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" @@ -3598,7 +4727,7 @@ compressible@~2.0.18: dependencies: mime-db ">= 1.43.0 < 2" -compression@^1.7.4: +compression@^1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/compression/-/compression-1.8.1.tgz#4a45d909ac16509195a9a28bd91094889c180d79" integrity sha512-9mAqGPHLakhCLeNyxPkK4xVo746zQ/czLH1Ky+vkitMnWfWZps8r0qXuwhwizagCRttsL4lfG4pIOvaWLpAP0w== @@ -3650,7 +4779,7 @@ content-disposition@0.5.2: resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" integrity sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA== -content-disposition@0.5.4: +content-disposition@~0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== @@ -3672,20 +4801,20 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" - integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== +cookie-signature@~1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.7.tgz#ab5dd7ab757c54e60f37ef6550f481c426d10454" + integrity sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA== -cookie@0.7.1: - version "0.7.1" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.1.tgz#2f73c42142d5d5cf71310a74fc4ae61670e5dbc9" - integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w== +cookie@~0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== copy-text-to-clipboard@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.1.tgz#01c3656d6c81a6aa713aa0a8d361214a1eeac6ae" - integrity sha512-3am6cw+WOicd0+HyzhC4kYS02wHJUiVQXmAADxfUARKsHBkWl1Vl3QQEiILlSs8YcPS/C0+y/urCNEYQk+byWA== + version "3.2.2" + resolved "https://registry.yarnpkg.com/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.2.tgz#99bc79db3f2d355ec33a08d573aff6804491ddb9" + integrity sha512-T6SqyLd1iLuqPA90J5N4cTalrtovCySh58iiZDGJ6FGznbclKh4UI+FGacQSgFzwKG77W7XT5gwbVEbd9cIH1A== copy-webpack-plugin@^11.0.0: version "11.0.0" @@ -3699,28 +4828,37 @@ copy-webpack-plugin@^11.0.0: schema-utils "^4.0.0" serialize-javascript "^6.0.0" -core-js-compat@^3.43.0: - version "3.45.1" - resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.45.1.tgz#424f3f4af30bf676fd1b67a579465104f64e9c7a" - integrity sha512-tqTt5T4PzsMIZ430XGviK4vzYSoeNJ6CXODi6c/voxOT6IZqBht5/EKaSNnYiEjjRYxjVz7DQIsOsY0XNi8PIA== +core-js-compat@^3.43.0, core-js-compat@^3.48.0: + version "3.49.0" + resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.49.0.tgz#06145447d92f4aaf258a0c44f24b47afaeaffef6" + integrity sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA== dependencies: - browserslist "^4.25.3" - -core-js-pure@^3.43.0: - version "3.45.1" - resolved "https://registry.yarnpkg.com/core-js-pure/-/core-js-pure-3.45.1.tgz#b129d86a5f7f8380378577c7eaee83608570a05a" - integrity sha512-OHnWFKgTUshEU8MK+lOs1H8kC8GkTi9Z1tvNkxrCcw9wl3MJIO7q2ld77wjWn4/xuGrVu2X+nME1iIIPBSdyEQ== + browserslist "^4.28.1" core-js@^3.31.1: - version "3.45.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.45.1.tgz#5810e04a1b4e9bc5ddaa4dd12e702ff67300634d" - integrity sha512-L4NPsJlCfZsPeXukyzHFlg/i7IIVwHSItR0wg0FLNqYClJ4MQYTYLbC7EkjKYRLZF2iof2MUgN0EGy7MdQFChg== + version "3.49.0" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.49.0.tgz#8b4d520ac034311fa21aa616f017ada0e0dbbddd" + integrity sha512-es1U2+YTtzpwkxVLwAFdSpaIMyQaq0PBgm3YD1W3Qpsn1NAmO3KSgZfu+oGSWVu6NvLHoHCV/aYcsE5wiB7ALg== core-util-is@~1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== +cose-base@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cose-base/-/cose-base-1.0.3.tgz#650334b41b869578a543358b80cda7e0abe0a60a" + integrity sha512-s9whTXInMSgAp/NVXVNuVxVKzGH2qck3aQlVHxDCdAEPgtMKwc4Wq6/QKhgdEdgbLSi9rBTAcPoRa6JpiG4ksg== + dependencies: + layout-base "^1.0.0" + +cose-base@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cose-base/-/cose-base-2.2.0.tgz#1c395c35b6e10bb83f9769ca8b817d614add5c01" + integrity sha512-AzlgcsCbUMymkADOJtQm3wO9S3ltPfYOFD5033keQn9NJzIbtnZj+UdBJe7DYml/8TdbtHJW3j58SOnKhWY/5g== + dependencies: + layout-base "^2.0.0" + cosmiconfig@^7.0.0: version "7.1.0" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.1.0.tgz#1443b9afa596b670082ea46cbd8f6a62b84635f6" @@ -3766,9 +4904,9 @@ css-blank-pseudo@^7.0.1: postcss-selector-parser "^7.0.0" css-declaration-sorter@^7.2.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz#6dec1c9523bc4a643e088aab8f09e67a54961024" - integrity sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow== + version "7.4.0" + resolved "https://registry.yarnpkg.com/css-declaration-sorter/-/css-declaration-sorter-7.4.0.tgz#9c215fbda2dcf4083bae69f125688158ae847deb" + integrity sha512-LTuzjPoyA2vMGKKcaOqKSp7Ub2eGrNfKiZH4LpezxpNrsICGCSFvsQOI29psISxNZtaXibkC2CXzrQ5enMeGGw== css-has-pseudo@^7.0.3: version "7.0.3" @@ -3853,10 +4991,10 @@ css-what@^6.0.1, css-what@^6.1.0: resolved "https://registry.yarnpkg.com/css-what/-/css-what-6.2.2.tgz#cdcc8f9b6977719fdfbd1de7aec24abf756b9dea" integrity sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA== -cssdb@^8.4.0: - version "8.4.0" - resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-8.4.0.tgz#232a1aa7751983ed2b40331634902d4c93f0456c" - integrity sha512-lyATYGyvXwQ8h55WeQeEHXhI+47rl52pXSYkFK/ZrCbAJSgVIaPFjYc3RM8TpRHKk7W3wsAZImmLps+P5VyN9g== +cssdb@^8.6.0: + version "8.9.0" + resolved "https://registry.yarnpkg.com/cssdb/-/cssdb-8.9.0.tgz#e24d44824895957a4a5c75ba72c910f94e7aed77" + integrity sha512-J8jOU/hLjaXcO1LldOLraJSQpfLXRKof0I7mtbRyOy2AAXgqst0x9rlgi2qXeD6d0ou3ZLqcPAMqYVbpCbrxEw== cssesc@^3.0.0: version "3.0.0" @@ -3932,10 +5070,313 @@ csso@^5.0.5: dependencies: css-tree "~2.2.0" -csstype@^3.0.2, csstype@^3.1.3: - version "3.1.3" - resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.1.3.tgz#d80ff294d114fb0e6ac500fbf85b60137d7eff81" - integrity sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw== +csstype@^3.0.2, csstype@^3.2.2, csstype@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.2.3.tgz#ec48c0f3e993e50648c86da559e2610995cf989a" + integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ== + +cytoscape-cose-bilkent@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cytoscape-cose-bilkent/-/cytoscape-cose-bilkent-4.1.0.tgz#762fa121df9930ffeb51a495d87917c570ac209b" + integrity sha512-wgQlVIUJF13Quxiv5e1gstZ08rnZj2XaLHGoFMYXz7SkNfCDOOteKBE6SYRfA9WxxI/iBc3ajfDoc6hb/MRAHQ== + dependencies: + cose-base "^1.0.0" + +cytoscape-fcose@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/cytoscape-fcose/-/cytoscape-fcose-2.2.0.tgz#e4d6f6490df4fab58ae9cea9e5c3ab8d7472f471" + integrity sha512-ki1/VuRIHFCzxWNrsshHYPs6L7TvLu3DL+TyIGEsRcvVERmxokbf5Gdk7mFxZnTdiGtnA4cfSmjZJMviqSuZrQ== + dependencies: + cose-base "^2.2.0" + +cytoscape@^3.33.3: + version "3.34.0" + resolved "https://registry.yarnpkg.com/cytoscape/-/cytoscape-3.34.0.tgz#5fbe2eb1cf76b070a8ecd5647c35f65aa097c9c6" + integrity sha512-62rNSrioXw93uliKFBwjukeQyeWwH2PqDrTac31r2P6464u3AUvTk0xS4LVvT251g7IgkFunrI48ZEZGjywSOg== + +"d3-array@1 - 2": + version "2.12.1" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-2.12.1.tgz#e20b41aafcdffdf5d50928004ececf815a465e81" + integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ== + dependencies: + internmap "^1.0.0" + +"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@^3.2.0: + version "3.2.4" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-3.2.4.tgz#15fec33b237f97ac5d7c986dc77da273a8ed0bb5" + integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== + dependencies: + internmap "1 - 2" + +d3-axis@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-axis/-/d3-axis-3.0.0.tgz#c42a4a13e8131d637b745fc2973824cfeaf93322" + integrity sha512-IH5tgjV4jE/GhHkRV0HiVYPDtvfjHQlQfJHs0usq7M30XcSBvOotpmH1IgkcXsO/5gEQZD43B//fc7SRT5S+xw== + +d3-brush@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-3.0.0.tgz#6f767c4ed8dcb79de7ede3e1c0f89e63ef64d31c" + integrity sha512-ALnjWlVYkXsVIGlOsuWH1+3udkYFI48Ljihfnh8FZPF2QS9o+PzGLBslO0PjzVoHLZ2KCVgAM8NVkXPJB2aNnQ== + dependencies: + d3-dispatch "1 - 3" + d3-drag "2 - 3" + d3-interpolate "1 - 3" + d3-selection "3" + d3-transition "3" + +d3-chord@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-3.0.1.tgz#d156d61f485fce8327e6abf339cb41d8cbba6966" + integrity sha512-VE5S6TNa+j8msksl7HwjxMHDM2yNK3XCkusIlpX5kwauBfXuyLAtNg9jCp/iHH61tgI4sb6R/EIMWCqEIdjT/g== + dependencies: + d3-path "1 - 3" + +"d3-color@1 - 3", d3-color@3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-3.1.0.tgz#395b2833dfac71507f12ac2f7af23bf819de24e2" + integrity sha512-zg/chbXyeBtMQ1LbD/WSoW2DpC3I0mpmPdW+ynRTj/x2DAWYrIY7qeZIHidozwV24m4iavr15lNwIwLxRmOxhA== + +d3-contour@4: + version "4.0.2" + resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-4.0.2.tgz#bb92063bc8c5663acb2422f99c73cbb6c6ae3bcc" + integrity sha512-4EzFTRIikzs47RGmdxbeUvLWtGedDUNkTcmzoeyg4sP/dvCexO47AaQL7VKy/gul85TOxw+IBgA8US2xwbToNA== + dependencies: + d3-array "^3.2.0" + +d3-delaunay@6: + version "6.0.4" + resolved "https://registry.yarnpkg.com/d3-delaunay/-/d3-delaunay-6.0.4.tgz#98169038733a0a5babbeda55054f795bb9e4a58b" + integrity sha512-mdjtIZ1XLAM8bm/hx3WwjfHt6Sggek7qH043O8KEjDXN40xi3vx/6pYSVTwLjEgiXQTbvaouWKynLBiUZ6SK6A== + dependencies: + delaunator "5" + +"d3-dispatch@1 - 3", d3-dispatch@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-3.0.1.tgz#5fc75284e9c2375c36c839411a0cf550cbfc4d5e" + integrity sha512-rzUyPU/S7rwUflMyLc1ETDeBj0NRuHKKAcvukozwhshr6g6c5d8zh4c2gQjY2bZ0dXeGLWc1PF174P2tVvKhfg== + +"d3-drag@2 - 3", d3-drag@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-3.0.0.tgz#994aae9cd23c719f53b5e10e3a0a6108c69607ba" + integrity sha512-pWbUJLdETVA8lQNJecMxoXfH6x+mO2UQo8rSmZ+QqxcbyA3hfeprFgIT//HW2nlHChWeIIMwS2Fq+gEARkhTkg== + dependencies: + d3-dispatch "1 - 3" + d3-selection "3" + +"d3-dsv@1 - 3", d3-dsv@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-3.0.1.tgz#c63af978f4d6a0d084a52a673922be2160789b73" + integrity sha512-UG6OvdI5afDIFP9w4G0mNq50dSOsXHJaRE8arAS5o9ApWnIElp8GZw1Dun8vP8OyHOZ/QJUKUJwxiiCCnUwm+Q== + dependencies: + commander "7" + iconv-lite "0.6" + rw "1" + +"d3-ease@1 - 3", d3-ease@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-3.0.1.tgz#9658ac38a2140d59d346160f1f6c30fda0bd12f4" + integrity sha512-wR/XK3D3XcLIZwpbvQwQ5fK+8Ykds1ip7A2Txe0yxncXSdq1L9skcG7blcedkOX+ZcgxGAmLX1FrRGbADwzi0w== + +d3-fetch@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-fetch/-/d3-fetch-3.0.1.tgz#83141bff9856a0edb5e38de89cdcfe63d0a60a22" + integrity sha512-kpkQIM20n3oLVBKGg6oHrUchHM3xODkTzjMoj7aWQFq5QEM+R6E4WkzT5+tojDY7yjez8KgCBRoj4aEr99Fdqw== + dependencies: + d3-dsv "1 - 3" + +d3-force@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-3.0.0.tgz#3e2ba1a61e70888fe3d9194e30d6d14eece155c4" + integrity sha512-zxV/SsA+U4yte8051P4ECydjD/S+qeYtnaIyAs9tgHCqfguma/aAQDjo85A9Z6EKhBirHRJHXIgJUlffT4wdLg== + dependencies: + d3-dispatch "1 - 3" + d3-quadtree "1 - 3" + d3-timer "1 - 3" + +"d3-format@1 - 3", d3-format@3: + version "3.1.2" + resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-3.1.2.tgz#01fdb46b58beb1f55b10b42ad70b6e344d5eb2ae" + integrity sha512-AJDdYOdnyRDV5b6ArilzCPPwc1ejkHcoyFarqlPqT7zRYjhavcT3uSrqcMvsgh2CgoPbK3RCwyHaVyxYcP2Arg== + +d3-geo@3: + version "3.1.1" + resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-3.1.1.tgz#6027cf51246f9b2ebd64f99e01dc7c3364033a4d" + integrity sha512-637ln3gXKXOwhalDzinUgY83KzNWZRKbYubaG+fGVuc/dxO64RRljtCTnf5ecMyE1RIdtqpkVcq0IbtU2S8j2Q== + dependencies: + d3-array "2.5.0 - 3" + +d3-hierarchy@3: + version "3.1.2" + resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-3.1.2.tgz#b01cd42c1eed3d46db77a5966cf726f8c09160c6" + integrity sha512-FX/9frcub54beBdugHjDCdikxThEqjnR93Qt7PvQTOHxyiNCAlvMrHhclk3cD5VeAaq9fxmfRp+CnWw9rEMBuA== + +"d3-interpolate@1 - 3", "d3-interpolate@1.2.0 - 3", d3-interpolate@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-3.0.1.tgz#3c47aa5b32c5b3dfb56ef3fd4342078a632b400d" + integrity sha512-3bYs1rOD33uo8aqJfKP3JWPAibgw8Zm2+L9vBKEHJ2Rg+viTR7o5Mmv5mZcieN+FRYaAOWX5SJATX6k1PWz72g== + dependencies: + d3-color "1 - 3" + +d3-path@1: + version "1.0.9" + resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz#48c050bb1fe8c262493a8caf5524e3e9591701cf" + integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg== + +"d3-path@1 - 3", d3-path@3, d3-path@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-3.1.0.tgz#22df939032fb5a71ae8b1800d61ddb7851c42526" + integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== + +d3-polygon@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-3.0.1.tgz#0b45d3dd1c48a29c8e057e6135693ec80bf16398" + integrity sha512-3vbA7vXYwfe1SYhED++fPUQlWSYTTGmFmQiany/gdbiWgU/iEyQzyymwL9SkJjFFuCS4902BSzewVGsHHmHtXg== + +"d3-quadtree@1 - 3", d3-quadtree@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-3.0.1.tgz#6dca3e8be2b393c9a9d514dabbd80a92deef1a4f" + integrity sha512-04xDrxQTDTCFwP5H6hRhsRcb9xxv2RzkcsygFzmkSIOJy3PeRJP7sNk3VRIbKXcog561P9oU0/rVH6vDROAgUw== + +d3-random@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-random/-/d3-random-3.0.1.tgz#d4926378d333d9c0bfd1e6fa0194d30aebaa20f4" + integrity sha512-FXMe9GfxTxqd5D6jFsQ+DJ8BJS4E/fT5mqqdjovykEB2oFbTMDVdg1MGFxfQW+FBOGoB++k8swBrgwSHT1cUXQ== + +d3-sankey@^0.12.3: + version "0.12.3" + resolved "https://registry.yarnpkg.com/d3-sankey/-/d3-sankey-0.12.3.tgz#b3c268627bd72e5d80336e8de6acbfec9d15d01d" + integrity sha512-nQhsBRmM19Ax5xEIPLMY9ZmJ/cDvd1BG3UVvt5h3WRxKg5zGRbvnteTyWAbzeSvlh3tW7ZEmq4VwR5mB3tutmQ== + dependencies: + d3-array "1 - 2" + d3-shape "^1.2.0" + +d3-scale-chromatic@3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-scale-chromatic/-/d3-scale-chromatic-3.1.0.tgz#34c39da298b23c20e02f1a4b239bd0f22e7f1314" + integrity sha512-A3s5PWiZ9YCXFye1o246KoscMWqf8BsD9eRiJ3He7C9OBaxKhAd5TFCdEx/7VbKtxxTsu//1mMJFrEt572cEyQ== + dependencies: + d3-color "1 - 3" + d3-interpolate "1 - 3" + +d3-scale@4: + version "4.0.2" + resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-4.0.2.tgz#82b38e8e8ff7080764f8dcec77bd4be393689396" + integrity sha512-GZW464g1SH7ag3Y7hXjf8RoUuAFIqklOAq3MRl4OaWabTFJY9PN/E1YklhXLh+OQ3fM9yS2nOkCoS+WLZ6kvxQ== + dependencies: + d3-array "2.10.0 - 3" + d3-format "1 - 3" + d3-interpolate "1.2.0 - 3" + d3-time "2.1.1 - 3" + d3-time-format "2 - 4" + +"d3-selection@2 - 3", d3-selection@3, d3-selection@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-3.0.0.tgz#c25338207efa72cc5b9bd1458a1a41901f1e1b31" + integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== + +d3-shape@3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-3.2.0.tgz#a1a839cbd9ba45f28674c69d7f855bcf91dfc6a5" + integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== + dependencies: + d3-path "^3.1.0" + +d3-shape@^1.2.0: + version "1.3.7" + resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.3.7.tgz#df63801be07bc986bc54f63789b4fe502992b5d7" + integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw== + dependencies: + d3-path "1" + +"d3-time-format@2 - 4", d3-time-format@4: + version "4.1.0" + resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-4.1.0.tgz#7ab5257a5041d11ecb4fe70a5c7d16a195bb408a" + integrity sha512-dJxPBlzC7NugB2PDLwo9Q8JiTR3M3e4/XANkreKSUxF8vvXKqm1Yfq4Q5dl8budlunRVlUUaDUgFt7eA8D6NLg== + dependencies: + d3-time "1 - 3" + +"d3-time@1 - 3", "d3-time@2.1.1 - 3", d3-time@3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-3.1.0.tgz#9310db56e992e3c0175e1ef385e545e48a9bb5c7" + integrity sha512-VqKjzBLejbSMT4IgbmVgDjpkYrNWUYJnbCGo874u7MMKIWsILRX+OpX/gTk8MqjpT1A/c6HY2dCA77ZN0lkQ2Q== + dependencies: + d3-array "2 - 3" + +"d3-timer@1 - 3", d3-timer@3: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-3.0.1.tgz#6284d2a2708285b1abb7e201eda4380af35e63b0" + integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== + +"d3-transition@2 - 3", d3-transition@3, d3-transition@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-3.0.1.tgz#6869fdde1448868077fdd5989200cb61b2a1645f" + integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w== + dependencies: + d3-color "1 - 3" + d3-dispatch "1 - 3" + d3-ease "1 - 3" + d3-interpolate "1 - 3" + d3-timer "1 - 3" + +d3-zoom@3: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-zoom/-/d3-zoom-3.0.0.tgz#d13f4165c73217ffeaa54295cd6969b3e7aee8f3" + integrity sha512-b8AmV3kfQaqWAuacbPuNbL6vahnOJflOhexLzMMNLga62+/nh0JzvJ0aO/5a5MVgUFGS7Hu1P9P03o3fJkDCyw== + dependencies: + d3-dispatch "1 - 3" + d3-drag "2 - 3" + d3-interpolate "1 - 3" + d3-selection "2 - 3" + d3-transition "2 - 3" + +d3@^7.9.0: + version "7.9.0" + resolved "https://registry.yarnpkg.com/d3/-/d3-7.9.0.tgz#579e7acb3d749caf8860bd1741ae8d371070cd5d" + integrity sha512-e1U46jVP+w7Iut8Jt8ri1YsPOvFpg46k+K8TpCb0P+zjCkjkPnV7WzfDJzMHy1LnA+wj5pLT1wjO901gLXeEhA== + dependencies: + d3-array "3" + d3-axis "3" + d3-brush "3" + d3-chord "3" + d3-color "3" + d3-contour "4" + d3-delaunay "6" + d3-dispatch "3" + d3-drag "3" + d3-dsv "3" + d3-ease "3" + d3-fetch "3" + d3-force "3" + d3-format "3" + d3-geo "3" + d3-hierarchy "3" + d3-interpolate "3" + d3-path "3" + d3-polygon "3" + d3-quadtree "3" + d3-random "3" + d3-scale "4" + d3-scale-chromatic "3" + d3-selection "3" + d3-shape "3" + d3-time "3" + d3-time-format "4" + d3-timer "3" + d3-transition "3" + d3-zoom "3" + +dagre-d3-es@7.0.14: + version "7.0.14" + resolved "https://registry.yarnpkg.com/dagre-d3-es/-/dagre-d3-es-7.0.14.tgz#1272276e26457cf3b97dac569f8f0531ec33c377" + integrity sha512-P4rFMVq9ESWqmOgK+dlXvOtLwYg0i7u0HBGJER0LZDJT2VHIPAMZ/riPxqJceWMStH5+E61QxFra9kIS3AqdMg== + dependencies: + d3 "^7.9.0" + lodash-es "^4.17.21" + +dayjs@^1.11.20: + version "1.11.21" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.21.tgz#57f87562e62de76f3c704bd2b8d522fc33068eb2" + integrity sha512-98IT+HOahAisibz/yjKbzuOBwYcjJ7BCLPzARyHiyEBmRz4fatF+KPJszEHXsGYjUG234aH/cOjW1wwTbKUZlA== debounce@^1.2.1: version "1.2.1" @@ -3949,7 +5390,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.3.1, debug@^4.4.1: +debug@^4.0.0, debug@^4.1.0, debug@^4.3.1, debug@^4.4.3: version "4.4.3" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== @@ -3957,9 +5398,9 @@ debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.3.1, debug@^4.4.1: ms "^2.1.3" decode-named-character-reference@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.2.0.tgz#25c32ae6dd5e21889549d40f676030e9514cc0ed" - integrity sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q== + version "1.3.0" + resolved "https://registry.yarnpkg.com/decode-named-character-reference/-/decode-named-character-reference-1.3.0.tgz#3e40603760874c2e5867691b599d73a7da25b53f" + integrity sha512-GtpQYB283KrPp6nRw50q3U9/VfOutZOe103qlN7BPP6Ad27xYnOIWv4lPzo8HCAL+mMZofJ9KEy30fq6MfaK6Q== dependencies: character-entities "^2.0.0" @@ -3980,12 +5421,18 @@ deepmerge@^4.3.1: resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== -default-gateway@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/default-gateway/-/default-gateway-6.0.3.tgz#819494c888053bdb743edbf343d6cdf7f2943a71" - integrity sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg== +default-browser-id@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/default-browser-id/-/default-browser-id-5.0.1.tgz#f7a7ccb8f5104bf8e0f71ba3b1ccfa5eafdb21e8" + integrity sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q== + +default-browser@^5.2.1: + version "5.5.0" + resolved "https://registry.yarnpkg.com/default-browser/-/default-browser-5.5.0.tgz#2792e886f2422894545947cc80e1a444496c5976" + integrity sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw== dependencies: - execa "^5.0.0" + bundle-name "^4.1.0" + default-browser-id "^5.0.0" defer-to-connect@^2.0.1: version "2.0.1" @@ -4006,6 +5453,11 @@ define-lazy-prop@^2.0.0: resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz#3f7ae421129bcaaac9bc74905c98a0009ec9ee7f" integrity sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og== +define-lazy-prop@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz#dbb19adfb746d7fc6d734a06b72f4a00d021255f" + integrity sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg== + define-properties@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.2.1.tgz#10781cc616eb951a80a034bafcaa7377f6af2b6c" @@ -4015,12 +5467,19 @@ define-properties@^1.2.1: has-property-descriptors "^1.0.0" object-keys "^1.1.1" +delaunator@5: + version "5.1.0" + resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-5.1.0.tgz#d13271fbf3aff6753f9ea6e235557f20901046ea" + integrity sha512-AGrQ4QSgssa1NGmWmLPqN5NY2KajF5MqxetNEO+o0n3ZwZZeTmt7bBnvzHWrmkZFxGgr4HdyFgelzgi06otLuQ== + dependencies: + robust-predicates "^3.0.2" + delegate@^3.1.2: version "3.2.0" resolved "https://registry.yarnpkg.com/delegate/-/delegate-3.2.0.tgz#b66b71c3158522e8ab5744f720d8ca0c2af59166" integrity sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw== -depd@2.0.0: +depd@2.0.0, depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== @@ -4035,23 +5494,27 @@ dequal@^2.0.0: resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA== -destroy@1.2.0: +destroy@1.2.0, destroy@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== +detect-libc@^2.0.0, detect-libc@^2.0.2, detect-libc@^2.0.3: + version "2.1.2" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.1.2.tgz#689c5dcdc1900ef5583a4cb9f6d7b473742074ad" + integrity sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ== + detect-node@^2.0.4: version "2.1.0" resolved "https://registry.yarnpkg.com/detect-node/-/detect-node-2.1.0.tgz#c9c70775a49c3d03bc2c06d9a73be550f978f8b1" integrity sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g== -detect-port@^1.5.1: - version "1.6.1" - resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-1.6.1.tgz#45e4073997c5f292b957cb678fb0bb8ed4250a67" - integrity sha512-CmnVc+Hek2egPx1PeTFVta2W78xy2K/9Rkf6cC4T59S50tVnzKj+tnx5mmx5lwvCkujZ4uRrpRSuV+IVs3f90Q== +detect-port@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-port/-/detect-port-2.1.0.tgz#03d72644891fa451ca5609b83107a8a0ebd03f91" + integrity sha512-epZuWb/6Q62L+nDHJc/hQAqf8pylsqgk3BpZXVBx1CDnr3nkrVNn73Uu1rXcFzkNcc+hkP3whuOg7JZYaQB65Q== dependencies: - address "^1.0.1" - debug "4" + address "^2.0.1" devlop@^1.0.0, devlop@^1.1.0: version "1.1.0" @@ -4126,6 +5589,13 @@ domhandler@^5.0.2, domhandler@^5.0.3: dependencies: domelementtype "^2.3.0" +dompurify@^3.3.3: + version "3.4.11" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-3.4.11.tgz#29c8ba496475f279ef4015784068452fb14a0680" + integrity sha512-zhlUV12GsaRzMsf9q5M254YhA4+VuF0fG+QFqu6aYpoGlKtz+w8//jBcGVYBgQkR5GHjUomejY84AV+/uPbWdw== + optionalDependencies: + "@types/trusted-types" "^2.0.7" + domutils@^2.5.2, domutils@^2.8.0: version "2.8.0" resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" @@ -4183,10 +5653,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== -electron-to-chromium@^1.5.218: - version "1.5.218" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.218.tgz#921042a011a98a4620853c9d391ab62bcc124400" - integrity sha512-uwwdN0TUHs8u6iRgN8vKeWZMRll4gBkz+QMqdS7DDe49uiK68/UX92lFb61oiFPrpYZNeZIqa4bA7O6Aiasnzg== +electron-to-chromium@^1.5.387: + version "1.5.388" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.5.388.tgz#002666dfda32e087c44fd01b7ce1719b6ec89c57" + integrity sha512-Pl/aJaqOOxYxda3vcx1IKSJimwYXHDkEnGn0F+kG2EE68dDtx2uCinaS+Vih8Z91B9t8CSAbiF/HKyWcnXjhzw== emoji-regex@^8.0.0: version "8.0.0" @@ -4213,23 +5683,25 @@ emoticon@^4.0.1: resolved "https://registry.yarnpkg.com/emoticon/-/emoticon-4.1.0.tgz#d5a156868ee173095627a33de3f1e914c3dde79e" integrity sha512-VWZfnxqwNcc51hIy/sbOdEem6D+cVtpPzEEtVAFdaas30+1dgkyaOQ4sQ6Bp0tOMqWO1v+HQfYaoodOkdhK6SQ== -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" - integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== - encodeurl@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== -enhanced-resolve@^5.17.3: - version "5.18.3" - resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.18.3.tgz#9b5f4c5c076b8787c78fe540392ce76a88855b44" - integrity sha512-d4lC8xfavMeBjzGr2vECC3fsGXziXZQyJxD868h2M/mBI3PwAuODxAkLkq5HYuvrPYcUtiLzsTo8U3PgX3Ocww== +end-of-stream@^1.1.0, end-of-stream@^1.4.1: + version "1.4.5" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.5.tgz#7344d711dea40e0b74abc2ed49778743ccedb08c" + integrity sha512-ooEGc6HP26xXq/N+GCGOT0JKCLDGrq2bQUZrQ7gyrJiZANJ/8YDTxTpQBXGMn+WbIQXNVpyWymm7KYVICQnyOg== + dependencies: + once "^1.4.0" + +enhanced-resolve@^5.22.2: + version "5.24.2" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.24.2.tgz#f25d703a24431cb1e02f944adb74aefa4fcb8d7e" + integrity sha512-rpsZEGT1jFuve6QlpyRp9ckQ+kN61hvF9BzCPyMdaKTm8UJce96KBn3sorXOFXlzjPrs3Vc4T1NsSroZ3PxlFw== dependencies: graceful-fs "^4.2.4" - tapable "^2.2.0" + tapable "^2.3.3" entities@^2.0.0: version "2.2.0" @@ -4247,9 +5719,9 @@ entities@^6.0.0: integrity sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g== error-ex@^1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" - integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + version "1.3.4" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.4.tgz#b3a8d8bb6f92eecc1629e3e27d3c8607a8a32414" + integrity sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ== dependencies: is-arrayish "^0.2.1" @@ -4263,18 +5735,23 @@ es-errors@^1.3.0: resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== -es-module-lexer@^1.2.1: - version "1.7.0" - resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-1.7.0.tgz#9159601561880a85f2734560a9099b2c31e5372a" - integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA== +es-module-lexer@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-2.3.0.tgz#fda770234c345064c122eb905e1c4200ffa4ce7e" + integrity sha512-KLdwQm2NvGLDkQDCGvmiQrhkd0JbMzXthwQAUgWjQuQdBLFa3eiBP5arXZyA+f8x+x7OXgud6bq2rxjGtHV2tw== es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.1.tgz#1c4f2c4837327597ce69d2ca190a7fdd172338c1" - integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== + version "1.1.2" + resolved "https://registry.yarnpkg.com/es-object-atoms/-/es-object-atoms-1.1.2.tgz#a2d0b373205724dfa525d23b0c3e1b1ca582c99b" + integrity sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw== dependencies: es-errors "^1.3.0" +es-toolkit@^1.45.1: + version "1.49.0" + resolved "https://registry.yarnpkg.com/es-toolkit/-/es-toolkit-1.49.0.tgz#93c5b031865792fc03cbf5bd20c132a4f976a52a" + integrity sha512-G5iZ6Pc/FNRY/soKZHC+TxGDD83rHUDXxzaWhGCX44vAv/tMs56WMusnm/KMNK+luUPsgA9U28cGr4RDlSzL2g== + esast-util-from-estree@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/esast-util-from-estree/-/esast-util-from-estree-2.0.0.tgz#8d1cfb51ad534d2f159dc250e604f3478a79f1ad" @@ -4310,11 +5787,6 @@ escape-html@^1.0.3, escape-html@~1.0.3: resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== -escape-string-regexp@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" - integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== - escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" @@ -4333,11 +5805,6 @@ eslint-scope@5.1.1: esrecurse "^4.3.0" estraverse "^4.1.1" -esprima@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - esrecurse@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" @@ -4395,9 +5862,9 @@ estree-util-to-js@^2.0.0: source-map "^0.7.0" estree-util-value-to-estree@^3.0.1: - version "3.4.0" - resolved "https://registry.yarnpkg.com/estree-util-value-to-estree/-/estree-util-value-to-estree-3.4.0.tgz#827122e40c3a756d3c4cf5d5d296fa06026a1a4f" - integrity sha512-Zlp+gxis+gCfK12d3Srl2PdX2ybsEA8ZYy6vQGVQTNNYLEGRQQ56XB64bjemN8kxIKXP1nC9ip4Z+ILy9LGzvQ== + version "3.5.0" + resolved "https://registry.yarnpkg.com/estree-util-value-to-estree/-/estree-util-value-to-estree-3.5.0.tgz#cd70cf37e7f78eae3e110d66a3436ce0d18a8f80" + integrity sha512-aMV56R27Gv3QmfmF1MY12GWkGzzeAezAX+UplqHVASfjc9wNzI/X6hC0S9oxq61WT4aQesLGslWP9tKk6ghRZQ== dependencies: "@types/estree" "^1.0.0" @@ -4444,12 +5911,19 @@ eventemitter3@^4.0.0, eventemitter3@^4.0.4: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== +events-universal@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/events-universal/-/events-universal-1.0.1.tgz#b56a84fd611b6610e0a2d0f09f80fdf931e2dfe6" + integrity sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw== + dependencies: + bare-events "^2.7.0" + events@^3.2.0: version "3.3.0" resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== -execa@5.1.1, execa@^5.0.0: +execa@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== @@ -4464,39 +5938,44 @@ execa@5.1.1, execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" -express@^4.17.3: - version "4.21.2" - resolved "https://registry.yarnpkg.com/express/-/express-4.21.2.tgz#cf250e48362174ead6cea4a566abef0162c1ec32" - integrity sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA== +expand-template@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" + integrity sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg== + +express@^4.22.1: + version "4.22.2" + resolved "https://registry.yarnpkg.com/express/-/express-4.22.2.tgz#c17ae0981e5efc24b22272f0e041c4662503b700" + integrity sha512-IuL+Elrou2ZvCFHs18/CIzy2Nzvo25nZ1/D2eIZlz7c+QUayAcYoiM2BthCjs+EBHVpjYjcuLDAiCWgeIX3X1Q== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.20.3" - content-disposition "0.5.4" + body-parser "~1.20.5" + content-disposition "~0.5.4" content-type "~1.0.4" - cookie "0.7.1" - cookie-signature "1.0.6" + cookie "~0.7.1" + cookie-signature "~1.0.6" debug "2.6.9" depd "2.0.0" encodeurl "~2.0.0" escape-html "~1.0.3" etag "~1.8.1" - finalhandler "1.3.1" - fresh "0.5.2" - http-errors "2.0.0" + finalhandler "~1.3.1" + fresh "~0.5.2" + http-errors "~2.0.0" merge-descriptors "1.0.3" methods "~1.1.2" - on-finished "2.4.1" + on-finished "~2.4.1" parseurl "~1.3.3" - path-to-regexp "0.1.12" + path-to-regexp "~0.1.12" proxy-addr "~2.0.7" - qs "6.13.0" + qs "~6.15.1" range-parser "~1.2.1" safe-buffer "5.2.1" - send "0.19.0" - serve-static "1.16.2" + send "~0.19.0" + serve-static "~1.16.2" setprototypeof "1.2.0" - statuses "2.0.1" + statuses "~2.0.1" type-is "~1.6.18" utils-merge "1.0.1" vary "~1.1.2" @@ -4518,6 +5997,11 @@ fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-fifo@^1.2.0, fast-fifo@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" + integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== + fast-glob@^3.2.11, fast-glob@^3.2.9, fast-glob@^3.3.0: version "3.3.3" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.3.tgz#d06d585ce8dba90a16b0505c543c3ccfb3aeb818" @@ -4535,14 +6019,14 @@ fast-json-stable-stringify@^2.0.0: integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== fast-uri@^3.0.1: - version "3.1.0" - resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" - integrity sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA== + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.3.tgz#f695a40f006aba505631573a0021ddb21194ad11" + integrity sha512-i70LwGWUduXqzicKXWshooq+sWL1K3WUU5rKZNG/0i3a1OSoX3HqhH5WbWwTmqWfor4urUakGPiRQcleRZTwOg== fastq@^1.6.0: - version "1.19.1" - resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.19.1.tgz#d50eaba803c8846a883c16492821ebcd2cda55f5" - integrity sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ== + version "1.20.1" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.20.1.tgz#ca750a10dc925bc8b18839fd203e3ef4b3ced675" + integrity sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw== dependencies: reusify "^1.0.4" @@ -4567,13 +6051,6 @@ feed@^4.2.2: dependencies: xml-js "^1.6.11" -figures@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" - integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== - dependencies: - escape-string-regexp "^1.0.5" - file-loader@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.2.0.tgz#baef7cf8e1840df325e4390b4484879480eebe4d" @@ -4589,17 +6066,17 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" -finalhandler@1.3.1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.1.tgz#0c575f1d1d324ddd1da35ad7ece3df7d19088019" - integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ== +finalhandler@~1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.2.tgz#1ebc2228fc7673aac4a472c310cc05b77d852b88" + integrity sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg== dependencies: debug "2.6.9" encodeurl "~2.0.0" escape-html "~1.0.3" - on-finished "2.4.1" + on-finished "~2.4.1" parseurl "~1.3.3" - statuses "2.0.1" + statuses "~2.0.2" unpipe "~1.0.0" find-cache-dir@^4.0.0: @@ -4629,9 +6106,9 @@ flat@^5.0.2: integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== follow-redirects@^1.0.0: - version "1.15.11" - resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.11.tgz#777d73d72a92f8ec4d2e410eb47352a56b8e8340" - integrity sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ== + version "1.16.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.16.0.tgz#28474a159d3b9d11ef62050a14ed60e4df6d61bc" + integrity sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw== form-data-encoder@^2.1.2: version "2.1.4" @@ -4648,35 +6125,30 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== -fraction.js@^4.3.7: - version "4.3.7" - resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.3.7.tgz#06ca0085157e42fda7f9e726e79fefc4068840f7" - integrity sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew== +fraction.js@^5.3.4: + version "5.3.4" + resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-5.3.4.tgz#8c0fcc6a9908262df4ed197427bdeef563e0699a" + integrity sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ== -fresh@0.5.2: +fresh@~0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== +fs-constants@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs-constants/-/fs-constants-1.0.0.tgz#6be0de9be998ce16af8afc24497b9ee9b7ccd9ad" + integrity sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow== + fs-extra@^11.1.1, fs-extra@^11.2.0: - version "11.3.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.1.tgz#ba7a1f97a85f94c6db2e52ff69570db3671d5a74" - integrity sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g== + version "11.3.6" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.3.6.tgz#f7cb80e9df550cd1db6f537fa5cdd568d3e70d10" + integrity sha512-w8ZNZr2mKIc7qeNaQ9AVPT1+iFaI+Avd4xudVOvdDJ8VytREi1Ft5Ih7hd9jjehod8vAM5GMsfQ/TpPf4EyoEA== dependencies: graceful-fs "^4.2.0" jsonfile "^6.0.1" universalify "^2.0.0" -fs-monkey@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.1.0.tgz#632aa15a20e71828ed56b24303363fb1414e5997" - integrity sha512-QMUezzXWII9EV5aTFXW1UBVUO77wYPpjqIF8/AviUCThNeSYZykpoTixUeaNNBwmCev0AMDWMAni+f8Hxb1IFw== - -fs.realpath@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" - integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== - fsevents@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" @@ -4726,6 +6198,11 @@ get-stream@^6.0.0, get-stream@^6.0.1: resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== +github-from-package@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/github-from-package/-/github-from-package-0.0.0.tgz#97fb5d96bfde8973313f20e8288ef9a167fa64ce" + integrity sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw== + github-slugger@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.5.0.tgz#17891bbc73232051474d68bd867a34625c955f7d" @@ -4745,22 +6222,19 @@ glob-parent@^6.0.1: dependencies: is-glob "^4.0.3" -glob-to-regexp@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" - integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== +glob-to-regex.js@^1.0.0, glob-to-regex.js@^1.0.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/glob-to-regex.js/-/glob-to-regex.js-1.2.0.tgz#2b323728271d133830850e32311f40766c5f6413" + integrity sha512-QMwlOQKU/IzqMUOAZWubUOT8Qft+Y0KQWnX9nK3ch0CJg0tTp4TvGZsTfudYKv2NzoQSyPcnA6TYeIQ3jGichQ== -glob@^7.1.3: - version "7.2.3" - resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" - integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== +glob@^13.0.0, glob@^13.0.3: + version "13.0.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-13.0.6.tgz#078666566a425147ccacfbd2e332deb66a2be71d" + integrity sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw== dependencies: - fs.realpath "^1.0.0" - inflight "^1.0.4" - inherits "2" - minimatch "^3.1.1" - once "^1.3.0" - path-is-absolute "^1.0.0" + minimatch "^10.2.2" + minipass "^7.1.3" + path-scurry "^2.0.2" global-dirs@^3.0.0: version "3.0.1" @@ -4831,16 +6305,6 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.11, resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== -gray-matter@^4.0.3: - version "4.0.3" - resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.3.tgz#e893c064825de73ea1f5f7d88c7a9f7274288798" - integrity sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q== - dependencies: - js-yaml "^3.13.1" - kind-of "^6.0.2" - section-matter "^1.0.0" - strip-bom-string "^1.0.0" - gzip-size@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" @@ -4848,6 +6312,11 @@ gzip-size@^6.0.0: dependencies: duplexer "^0.1.2" +hachure-fill@^0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/hachure-fill/-/hachure-fill-0.5.2.tgz#d19bc4cc8750a5962b47fb1300557a85fcf934cc" + integrity sha512-3GKBOn+m2LX9iq+JC1064cSFprJY4jL1jCXTcpnfER5HYE2l/4EfWSGzkPa/ZDBmYI0ZOEj5VHV/eKnPGkHuOg== + handle-thing@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/handle-thing/-/handle-thing-2.0.1.tgz#857f79ce359580c340d43081cc648970d0bb234e" @@ -4875,10 +6344,10 @@ has-yarn@^3.0.0: resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-3.0.0.tgz#c3c21e559730d1d3b57e28af1f30d06fac38147d" integrity sha512-IrsVwUHhEULx3R8f/aA8AHuEzAorplsab/v8HBzEiIukwq5i/EC+xmOW+HfP1OaDP+2JkgT1yILHN2O3UFIbcA== -hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== +hasown@^2.0.2, hasown@^2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.4.tgz#8c62d8cb90beb2aad5d0a5b67581ad9854c3f003" + integrity sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A== dependencies: function-bind "^1.1.2" @@ -4966,14 +6435,14 @@ hast-util-to-jsx-runtime@^2.0.0: vfile-message "^4.0.0" hast-util-to-parse5@^8.0.0: - version "8.0.0" - resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-8.0.0.tgz#477cd42d278d4f036bc2ea58586130f6f39ee6ed" - integrity sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw== + version "8.0.1" + resolved "https://registry.yarnpkg.com/hast-util-to-parse5/-/hast-util-to-parse5-8.0.1.tgz#95aa391cc0514b4951418d01c883d1038af42f5d" + integrity sha512-MlWT6Pjt4CG9lFCjiz4BH7l9wmrMkfkJYCxFwKQic8+RTZgWPuWxwAfjJElsXkex7DJjfSJsQIt931ilUgmwdA== dependencies: "@types/hast" "^3.0.0" comma-separated-tokens "^2.0.0" devlop "^1.0.0" - property-information "^6.0.0" + property-information "^7.0.0" space-separated-tokens "^2.0.0" web-namespaces "^2.0.0" zwitch "^2.0.0" @@ -5030,11 +6499,6 @@ hpack.js@^2.1.6: readable-stream "^2.0.1" wbuf "^1.1.0" -html-entities@^2.3.2: - version "2.6.0" - resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.6.0.tgz#7c64f1ea3b36818ccae3d3fb48b6974208e984f8" - integrity sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ== - html-escaper@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" @@ -5077,9 +6541,9 @@ html-void-elements@^3.0.0: integrity sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg== html-webpack-plugin@^5.6.0: - version "5.6.4" - resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.6.4.tgz#d8cb0f7edff7745ae7d6cccb0bff592e9f7f7959" - integrity sha512-V/PZeWsqhfpE27nKeX9EO2sbR+D17A+tLf6qU+ht66jdUsN0QLKJN27Z+1+gHrVMKgndBahes0PU6rRihDgHTw== + version "5.6.7" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-5.6.7.tgz#429bab4e12abf3c07e1c608886608e2df2c06b11" + integrity sha512-md+vXtdCAe60s1k6AU3dUyMJnDxUyQAwfwPKoLisvgUF1IXjtlLsk2se54+qfL9Mdm26bbwvjJybpNx48NKRLw== dependencies: "@types/html-minifier-terser" "^6.0.0" html-minifier-terser "^6.0.2" @@ -5117,36 +6581,37 @@ http-deceiver@^1.2.7: resolved "https://registry.yarnpkg.com/http-deceiver/-/http-deceiver-1.2.7.tgz#fa7168944ab9a519d337cb0bec7284dc3e723d87" integrity sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw== -http-errors@2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.0.tgz#b7774a1486ef73cf7667ac9ae0858c012c57b9d3" - integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== +http-errors@~1.8.0: + version "1.8.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.1.tgz#7c3f28577cbc8a207388455dbd62295ed07bd68c" + integrity sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g== dependencies: - depd "2.0.0" + depd "~1.1.2" inherits "2.0.4" setprototypeof "1.2.0" - statuses "2.0.1" + statuses ">= 1.5.0 < 2" toidentifier "1.0.1" -http-errors@~1.6.2: - version "1.6.3" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.3.tgz#8b55680bb4be283a0b5bf4ea2e38580be1d9320d" - integrity sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A== +http-errors@~2.0.0, http-errors@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.1.tgz#36d2f65bc909c8790018dd36fb4d93da6caae06b" + integrity sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ== dependencies: - depd "~1.1.2" - inherits "2.0.3" - setprototypeof "1.1.0" - statuses ">= 1.4.0 < 2" + depd "~2.0.0" + inherits "~2.0.4" + setprototypeof "~1.2.0" + statuses "~2.0.2" + toidentifier "~1.0.1" http-parser-js@>=0.5.1: version "0.5.10" resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.10.tgz#b3277bd6d7ed5588e20ea73bf724fcbe44609075" integrity sha512-Pysuw9XpUq5dVc/2SMHpuTY01RFl8fttgcyunjL7eEMhGM3cI4eOmiCycJDVCo/7O7ClfQD3SaI6ftDzqOXYMA== -http-proxy-middleware@^2.0.3: - version "2.0.9" - resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.9.tgz#e9e63d68afaa4eee3d147f39149ab84c0c2815ef" - integrity sha512-c1IyJYLYppU574+YI7R4QyX2ystMtVXZwIdzazUIPIJsHuWNd+mho2j+bKoHftndicGj9yh+xjd+l0yj7VeT1Q== +http-proxy-middleware@^2.0.9: + version "2.0.10" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-2.0.10.tgz#b2df7b705203d7a8c269ac8450cf96b00c532f94" + integrity sha512-RKzRWNPxUZqbuk3BC5mGVJbBnWgr+diEnjJexIOytFbBzDy88Fbh/YvBr3DsNrl1jYAfjWfpATEv0NO35FDuPQ== dependencies: "@types/http-proxy" "^1.17.8" http-proxy "^1.18.1" @@ -5176,7 +6641,19 @@ human-signals@^2.1.0: resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== -iconv-lite@0.4.24: +hyperdyperid@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/hyperdyperid/-/hyperdyperid-1.2.0.tgz#59668d323ada92228d2a869d3e474d5a33b69e6b" + integrity sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A== + +iconv-lite@0.6: + version "0.6.3" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +iconv-lite@~0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -5188,6 +6665,11 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + ignore@^5.2.0, ignore@^5.2.4: version "5.3.2" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.2.tgz#3cd40e729f3643fd87cb04e50bf0eb722bc596f5" @@ -5211,6 +6693,11 @@ import-lazy@^4.0.0: resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-4.0.0.tgz#e8eb627483a0a43da3c03f3e35548be5cb0cc153" integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== +import-meta-resolve@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz#08cb85b5bd37ecc8eb1e0f670dc2767002d43734" + integrity sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg== + imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" @@ -5226,24 +6713,11 @@ infima@0.2.0-alpha.45: resolved "https://registry.yarnpkg.com/infima/-/infima-0.2.0-alpha.45.tgz#542aab5a249274d81679631b492973dd2c1e7466" integrity sha512-uyH0zfr1erU1OohLk0fT4Rrb94AOhguWNOcD9uGrSpRvNB+6gZXUoJX5J0NtvzBO10YZ9PgvA4NFgt+fYg8ojw== -inflight@^1.0.4: - version "1.0.6" - resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" - integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== - dependencies: - once "^1.3.0" - wrappy "1" - -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: +inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3, inherits@~2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== -inherits@2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" - integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== - ini@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ini/-/ini-2.0.0.tgz#e5fd556ecdd5726be978fa1001862eacb0a94bc5" @@ -5254,10 +6728,20 @@ ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -inline-style-parser@0.2.4: - version "0.2.4" - resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.4.tgz#f4af5fe72e612839fcd453d989a586566d695f22" - integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q== +inline-style-parser@0.2.7: + version "0.2.7" + resolved "https://registry.yarnpkg.com/inline-style-parser/-/inline-style-parser-0.2.7.tgz#b1fc68bfc0313b8685745e4464e37f9376b9c909" + integrity sha512-Nb2ctOyNR8DqQoR0OwRG95uNWIC0C1lCgf5Naz5H6Ji72KZ8OcFZLz2P5sNgwlyoJ8Yif11oMuYs5pBQa86csA== + +"internmap@1 - 2": + version "2.0.3" + resolved "https://registry.yarnpkg.com/internmap/-/internmap-2.0.3.tgz#6685f23755e43c524e251d29cbc97248e3061009" + integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== + +internmap@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/internmap/-/internmap-1.0.1.tgz#0017cc8a3b99605f0302f2b198d272e015e5df95" + integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== invariant@^2.2.4: version "2.2.4" @@ -5271,10 +6755,10 @@ ipaddr.js@1.9.1: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== -ipaddr.js@^2.0.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.2.0.tgz#d33fa7bac284f4de7af949638c9d68157c6b92e8" - integrity sha512-Ag3wB2o37wslZS19hZqorUnrnzSkpOVy+IiiDEiTqNubEYpYuHWIf6K4psgN2ZWKExS4xhVCrRVfb/wfW8fWJA== +ipaddr.js@^2.1.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-2.4.0.tgz#038e9ceaf8219efc5bb76347b7eb787875d5095b" + integrity sha512-9VGk3HGanVE6JoZXHiCpnGy5X0jYDnN4EA4lntFPj+1vIWlFhIylq2CrrCOJH9EAhc5CYhq18F2Av2tgoAPsYQ== is-alphabetical@^2.0.0: version "2.0.1" @@ -5294,6 +6778,11 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== +is-arrayish@^0.3.1: + version "0.3.4" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.4.tgz#1ee5553818511915685d33bb13d31bf854e5059d" + integrity sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA== + is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -5308,12 +6797,12 @@ is-ci@^3.0.1: dependencies: ci-info "^3.2.0" -is-core-module@^2.16.0: - version "2.16.1" - resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.1.tgz#2a98801a849f43e2add644fbb6bc6229b19a4ef4" - integrity sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w== +is-core-module@^2.16.1: + version "2.16.2" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.16.2.tgz#3e07450a8080ebce3fbf0cac494f4d2ab324e082" + integrity sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA== dependencies: - hasown "^2.0.2" + hasown "^2.0.3" is-decimal@^2.0.0: version "2.0.1" @@ -5325,6 +6814,11 @@ is-docker@^2.0.0, is-docker@^2.1.1: resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== +is-docker@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-3.0.0.tgz#90093aa3106277d8a77a5910dbae71747e15a200" + integrity sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ== + is-extendable@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" @@ -5352,6 +6846,13 @@ is-hexadecimal@^2.0.0: resolved "https://registry.yarnpkg.com/is-hexadecimal/-/is-hexadecimal-2.0.1.tgz#86b5bf668fca307498d319dfc03289d781a90027" integrity sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg== +is-inside-container@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-inside-container/-/is-inside-container-1.0.0.tgz#e81fba699662eb31dbdaf26766a61d4814717ea4" + integrity sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA== + dependencies: + is-docker "^3.0.0" + is-installed-globally@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.4.0.tgz#9a0fd407949c30f86eb6959ef1b7994ed0b7b520" @@ -5360,6 +6861,11 @@ is-installed-globally@^0.4.0: global-dirs "^3.0.0" is-path-inside "^3.0.2" +is-network-error@^1.0.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/is-network-error/-/is-network-error-1.3.2.tgz#9460bc30f8419a4bca77114f4de88a3ee5e0c519" + integrity sha512-PhBY86zaxNZUuWP6h13Vu5oFe0XY6/UlKzQnYFELzGVHygP3MxmvTfYSG7GN3aIab/iWudSMgjSnG9Dq+nHrgA== + is-npm@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-6.1.0.tgz#f70e0b6c132dfc817ac97d3badc0134945b098d3" @@ -5424,6 +6930,13 @@ is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" +is-wsl@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-3.1.1.tgz#327897b26832a3eb117da6c27492d04ca132594f" + integrity sha512-e6rvdUCiQCAuumZslxRJWR/Doq4VpPR82kqclvcS0efgt430SlGIk05vdCN58+VrzgtIcfNODjozVielycD4Sw== + dependencies: + is-inside-container "^1.0.0" + is-yarn-global@^0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/is-yarn-global/-/is-yarn-global-0.4.1.tgz#b312d902b313f81e4eaf98b6361ba2b45cd694bb" @@ -5486,9 +6999,9 @@ jiti@^1.20.0: integrity sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A== joi@^17.9.2: - version "17.13.3" - resolved "https://registry.yarnpkg.com/joi/-/joi-17.13.3.tgz#0f5cc1169c999b30d344366d384b12d92558bcec" - integrity sha512-otDA4ldcIx+ZXsKHWmp0YizCweVRZG96J10b0FevjfuncLO1oX59THoAmHkNubYJ+9gWsYsp5k8v4ib6oDv1fA== + version "17.13.4" + resolved "https://registry.yarnpkg.com/joi/-/joi-17.13.4.tgz#ad6153d97ce558eb3a3b593e0d43eab51df1c474" + integrity sha512-1RuuER6kmt8K8I3nIWvPZKi5RQCb568ZPyY4Pwjlua+yo+63ZTmIwxLZH0heBmiKN4uxjvCiarDrjaeH84xicQ== dependencies: "@hapi/hoek" "^9.3.0" "@hapi/topo" "^5.1.0" @@ -5501,37 +7014,24 @@ joi@^17.9.2: resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== -js-yaml@^3.13.1: - version "3.14.1" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" - integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== - dependencies: - argparse "^1.0.7" - esprima "^4.0.0" - js-yaml@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" - integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + version "4.3.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.3.0.tgz#d1900572a7f7cf0b5f540c83673e60bad3436592" + integrity sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q== dependencies: argparse "^2.0.1" -jsesc@^3.0.2: +jsesc@^3.0.2, jsesc@~3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.1.0.tgz#74d335a234f67ed19907fdadfac7ccf9d409825d" integrity sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA== -jsesc@~3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-3.0.2.tgz#bb8b09a6597ba426425f2e4a07245c3d00b9343e" - integrity sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g== - json-buffer@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13" integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ== -json-parse-even-better-errors@^2.3.0, json-parse-even-better-errors@^2.3.1: +json-parse-even-better-errors@^2.3.0: version "2.3.1" resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== @@ -5552,14 +7052,21 @@ json5@^2.1.2, json5@^2.2.3: integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== jsonfile@^6.0.1: - version "6.2.0" - resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.2.0.tgz#7c265bd1b65de6977478300087c99f1c84383f62" - integrity sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg== + version "6.2.1" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.2.1.tgz#b6e31717f22cc37330b081ce0051ed5de53af2f6" + integrity sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q== dependencies: universalify "^2.0.0" optionalDependencies: graceful-fs "^4.1.6" +katex@^0.16.45: + version "0.16.47" + resolved "https://registry.yarnpkg.com/katex/-/katex-0.16.47.tgz#0a13a42c2deb4f74e61f162d440b9165a548030f" + integrity sha512-Eeo8Ys1doU1z+x8AZsPpQu+p/QcZBI5PeOo7QGQdy2x2m0MU/hYagBbGOmXwr5KVbEfVuWv9LpnQWeehogurjg== + dependencies: + commander "^8.3.0" + keyv@^4.5.3: version "4.5.4" resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.5.4.tgz#a879a99e29452f942439f2a405e3af8b31d4de93" @@ -5567,7 +7074,12 @@ keyv@^4.5.3: dependencies: json-buffer "3.0.1" -kind-of@^6.0.0, kind-of@^6.0.2: +khroma@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/khroma/-/khroma-2.1.0.tgz#45f2ce94ce231a437cf5b63c2e886e6eb42bbbb1" + integrity sha512-Ls993zuzfayK269Svk9hzpeGUKob/sIgZzyHYdjQoAdQetRKpOLj+k/QQQ/6Qi0Yz65mlROrfd+Ev+1+7dz9Kw== + +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -5584,19 +7096,103 @@ latest-version@^7.0.0: dependencies: package-json "^8.1.0" -launch-editor@^2.6.0: - version "2.11.1" - resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.11.1.tgz#61a0b7314a42fd84a6cbb564573d9e9ffcf3d72b" - integrity sha512-SEET7oNfgSaB6Ym0jufAdCeo3meJVeCaaDyzRygy0xsp2BFKCprcfHljTq4QkzTLUxEKkFK6OK4811YM2oSrRg== +launch-editor@^2.14.1: + version "2.14.1" + resolved "https://registry.yarnpkg.com/launch-editor/-/launch-editor-2.14.1.tgz#f7e0da3f58aaea03fea01074d840b5f739ed7ddc" + integrity sha512-QWBrQsMpH7gPr965dsKD/3cKWiNoTjpATQf++Xq63N6sKRGMwlVXz41O1IZTMfZQgBctD/K5Zt06+/I6pP6+HA== dependencies: picocolors "^1.1.1" - shell-quote "^1.8.3" + shell-quote "^1.8.4" + +layout-base@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-1.0.2.tgz#1291e296883c322a9dd4c5dd82063721b53e26e2" + integrity sha512-8h2oVEZNktL4BH2JCOI90iD1yXwL6iNW7KcCKT2QZgQJR2vbqDsldCTPRU9NifTCqHZci57XvQQ15YTu+sTYPg== + +layout-base@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/layout-base/-/layout-base-2.0.1.tgz#d0337913586c90f9c2c075292069f5c2da5dd285" + integrity sha512-dp3s92+uNI1hWIpPGH3jK2kxE2lMjdXdr+DH8ynZHpd6PUlH6x6cbuXnoMmiNumznqaNO31xu9e79F0uuZ0JFg== leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== +lightningcss-android-arm64@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz#f033885116dfefd9c6f54787523e3514b61e1968" + integrity sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg== + +lightningcss-darwin-arm64@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz#50b71871b01c8199584b649e292547faea7af9b5" + integrity sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ== + +lightningcss-darwin-x64@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz#35f3e97332d130b9ca181e11b568ded6aebc6d5e" + integrity sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w== + +lightningcss-freebsd-x64@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz#9777a76472b64ed6ff94342ad64c7bafd794a575" + integrity sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig== + +lightningcss-linux-arm-gnueabihf@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz#13ae652e1ab73b9135d7b7da172f666c410ad53d" + integrity sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw== + +lightningcss-linux-arm64-gnu@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz#417858795a94592f680123a1b1f9da8a0e1ef335" + integrity sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ== + +lightningcss-linux-arm64-musl@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz#6be36692e810b718040802fd809623cffe732133" + integrity sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg== + +lightningcss-linux-x64-gnu@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz#0b7803af4eb21cfd38dd39fe2abbb53c7dd091f6" + integrity sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA== + +lightningcss-linux-x64-musl@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz#88dc8ba865ddddb1ac5ef04b0f161804418c163b" + integrity sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg== + +lightningcss-win32-arm64-msvc@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz#4f30ba3fa5e925f5b79f945e8cc0d176c3b1ab38" + integrity sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw== + +lightningcss-win32-x64-msvc@1.32.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz#141aa5605645064928902bb4af045fa7d9f4220a" + integrity sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q== + +lightningcss@^1.27.0: + version "1.32.0" + resolved "https://registry.yarnpkg.com/lightningcss/-/lightningcss-1.32.0.tgz#b85aae96486dcb1bf49a7c8571221273f4f1e4a9" + integrity sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ== + dependencies: + detect-libc "^2.0.3" + optionalDependencies: + lightningcss-android-arm64 "1.32.0" + lightningcss-darwin-arm64 "1.32.0" + lightningcss-darwin-x64 "1.32.0" + lightningcss-freebsd-x64 "1.32.0" + lightningcss-linux-arm-gnueabihf "1.32.0" + lightningcss-linux-arm64-gnu "1.32.0" + lightningcss-linux-arm64-musl "1.32.0" + lightningcss-linux-x64-gnu "1.32.0" + lightningcss-linux-x64-musl "1.32.0" + lightningcss-win32-arm64-msvc "1.32.0" + lightningcss-win32-x64-msvc "1.32.0" + lilconfig@^3.1.1: version "3.1.3" resolved "https://registry.yarnpkg.com/lilconfig/-/lilconfig-3.1.3.tgz#a1bcfd6257f9585bf5ae14ceeebb7b559025e4c4" @@ -5607,10 +7203,10 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== -loader-runner@^4.2.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.0.tgz#c1b4a163b99f614830353b16755e7149ac2314e1" - integrity sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg== +loader-runner@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.3.2.tgz#9913d3a15971f8f635915e601fb5c9d495d918e9" + integrity sha512-DFEqQ3ihfS9blba08cLfYf1NRAIEm+dDjic073DRDc3/JspI/8wYmtDsHwd3+4hwvdxSK7PGaElfTmm0awWJ4w== loader-utils@^2.0.0: version "2.0.4" @@ -5628,6 +7224,11 @@ locate-path@^7.1.0: dependencies: p-locate "^6.0.0" +lodash-es@^4.17.21: + version "4.18.1" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.18.1.tgz#b962eeb80d9d983a900bf342961fb7418ca10b1d" + integrity sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A== + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" @@ -5644,9 +7245,9 @@ lodash.uniq@^4.5.0: integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== lodash@^4.17.20, lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + version "4.18.1" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.18.1.tgz#ff2b66c1f6326d59513de2407bf881439812771c" + integrity sha512-dMInicTPVE8d1e5otfwmmjlxkZoUpiVLwyeTdUsi/Caj/gfzzblBcCE5sRHV/AsjuCmxWrte2TNGSYuCeCq+0Q== longest-streak@^3.0.0: version "3.1.0" @@ -5672,6 +7273,11 @@ lowercase-keys@^3.0.0: resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-3.0.0.tgz#c5e7d442e37ead247ae9db117a9d0a467c89d4f2" integrity sha512-ozCC6gdQ+glXOQsveKD0YsDy8DSQFjDTz4zyzEHNV5+JP5D62LmfDZ6o1cycFx9ouG940M5dE8C8CTewdj2YWQ== +lru-cache@^11.0.0: + version "11.5.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-11.5.1.tgz#f3daa3540847b9737ebc02499ddb36765e54db4a" + integrity sha512-RPimw/7aMdv2oqRrxKwvZXcPfwBrn/JZ2xYcY9Hus/6LaS3VOAKVWKWgNLCFSiOm1ESXinjsDlidVU7JlnCN2A== + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -5684,18 +7290,16 @@ markdown-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/markdown-extensions/-/markdown-extensions-2.0.0.tgz#34bebc83e9938cae16e0e017e4a9814a8330d3c4" integrity sha512-o5vL7aDWatOTX8LzaS1WMoaoxIiLRQJuIKKe2wAw6IeULDHaqbiqiggmx+pKvZDb1Sj+pE46Sn1T7lCqfFtg1Q== -markdown-table@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-2.0.0.tgz#194a90ced26d31fe753d8b9434430214c011865b" - integrity sha512-Ezda85ToJUBhM6WGaG6veasyym+Tbs3cMAw/ZhOPqXiYsr0jgocBV3j3nx+4lk47plLlIqjwuTm/ywVI+zjJ/A== - dependencies: - repeat-string "^1.0.0" - markdown-table@^3.0.0: version "3.0.4" resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-3.0.4.tgz#fe44d6d410ff9d6f2ea1797a3f60aa4d2b631c2a" integrity sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw== +marked@^16.3.0: + version "16.4.2" + resolved "https://registry.yarnpkg.com/marked/-/marked-16.4.2.tgz#4959a64be6c486f0db7467ead7ce288de54290a3" + integrity sha512-TI3V8YYWvkVf3KJe1dRkpnjs68JUPyEa5vjKrp1XEEJUAOaQc+Qj+L1qWbPd0SJuAdQkFU0h73sXXqwDYxsiDA== + math-intrinsics@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" @@ -5727,9 +7331,9 @@ mdast-util-find-and-replace@^3.0.0, mdast-util-find-and-replace@^3.0.1: unist-util-visit-parents "^6.0.0" mdast-util-from-markdown@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz#4850390ca7cf17413a9b9a0fbefcd1bc0eb4160a" - integrity sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA== + version "2.0.3" + resolved "https://registry.yarnpkg.com/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.3.tgz#c95822b91aab75f18a4cbe8b2f51b873ed2cf0c7" + integrity sha512-W4mAWTvSlKvf8L6J+VN9yLSqQ9AOAAvHuoDAmPkz4dHf553m5gVj2ejadHJhoJmcmxEnOv6Pa8XJhpxE93kb8Q== dependencies: "@types/mdast" "^4.0.0" "@types/unist" "^3.0.0" @@ -5883,9 +7487,9 @@ mdast-util-phrasing@^4.0.0: unist-util-is "^6.0.0" mdast-util-to-hast@^13.0.0: - version "13.2.0" - resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz#5ca58e5b921cc0a3ded1bc02eed79a4fe4fe41f4" - integrity sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA== + version "13.2.1" + resolved "https://registry.yarnpkg.com/mdast-util-to-hast/-/mdast-util-to-hast-13.2.1.tgz#d7ff84ca499a57e2c060ae67548ad950e689a053" + integrity sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA== dependencies: "@types/hast" "^3.0.0" "@types/mdast" "^4.0.0" @@ -5934,12 +7538,25 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== -memfs@^3.4.3: - version "3.6.0" - resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.6.0.tgz#d7a2110f86f79dd950a8b6df6d57bc984aa185f6" - integrity sha512-EGowvkkgbMcIChjMTMkESFDbZeSh8xZ7kNSF0hAiAN4Jh6jgHCRS0Ga/+C8y6Au+oqpezRHCfPsmJ2+DwAgiwQ== - dependencies: - fs-monkey "^1.0.4" +memfs@^4.17.0, memfs@^4.43.1: + version "4.58.0" + resolved "https://registry.yarnpkg.com/memfs/-/memfs-4.58.0.tgz#b995e7183c09d71f28f803fbfd326704c9216390" + integrity sha512-0n6CDBqIT/eGrbWdDVNkLjasjupnEpOFjFOtXrS5p6EYYXGXBn5ZIMLetBlVdQYpP0hGK2MEOgYAC0/+NOr91w== + dependencies: + "@jsonjoy.com/fs-core" "4.58.0" + "@jsonjoy.com/fs-fsa" "4.58.0" + "@jsonjoy.com/fs-node" "4.58.0" + "@jsonjoy.com/fs-node-builtins" "4.58.0" + "@jsonjoy.com/fs-node-to-fsa" "4.58.0" + "@jsonjoy.com/fs-node-utils" "4.58.0" + "@jsonjoy.com/fs-print" "4.58.0" + "@jsonjoy.com/fs-snapshot" "4.58.0" + "@jsonjoy.com/json-pack" "^1.11.0" + "@jsonjoy.com/util" "^1.9.0" + glob-to-regex.js "^1.0.1" + thingies "^2.5.0" + tree-dump "^1.0.3" + tslib "^2.0.0" merge-descriptors@1.0.3: version "1.0.3" @@ -5956,6 +7573,33 @@ merge2@^1.3.0, merge2@^1.4.1: resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== +mermaid@>=11.6.0: + version "11.16.0" + resolved "https://registry.yarnpkg.com/mermaid/-/mermaid-11.16.0.tgz#dc946bc84bde9d093ba14940d49df1d9f7d8c32f" + integrity sha512-Zvm3kbstgdpvIJPPItlL7fppIZ3kibvc1oZIGxdvk9t6UFz6flv+Jw7FtRGKwfcI8OckmH04LqG6LlS6X4B1pA== + dependencies: + "@braintree/sanitize-url" "^7.1.2" + "@iconify/utils" "^3.0.2" + "@mermaid-js/parser" "^1.2.0" + "@types/d3" "^7.4.3" + "@upsetjs/venn.js" "^2.0.0" + cytoscape "^3.33.3" + cytoscape-cose-bilkent "^4.1.0" + cytoscape-fcose "^2.2.0" + d3 "^7.9.0" + d3-sankey "^0.12.3" + dagre-d3-es "7.0.14" + dayjs "^1.11.20" + dompurify "^3.3.3" + es-toolkit "^1.45.1" + katex "^0.16.45" + khroma "^2.1.0" + marked "^16.3.0" + roughjs "^4.6.6" + stylis "^4.3.6" + ts-dedent "^2.2.0" + uuid "^11.1.0 || ^12 || ^13 || ^14.0.0" + methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -6390,7 +8034,7 @@ mime-db@1.52.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -"mime-db@>= 1.43.0 < 2": +"mime-db@>= 1.43.0 < 2", mime-db@^1.54.0: version "1.54.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== @@ -6407,13 +8051,20 @@ mime-types@2.1.18: dependencies: mime-db "~1.33.0" -mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34, mime-types@~2.1.35: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" +mime-types@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-3.0.2.tgz#39002d4182575d5af036ffa118100f2524b2e2ab" + integrity sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A== + dependencies: + mime-db "^1.54.0" + mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" @@ -6435,9 +8086,9 @@ mimic-response@^4.0.0: integrity sha512-e5ISH9xMYU0DzrT+jl8q2ze9D6eWBto+I8CNpe+VI+K2J/F/k3PdkdTdz4wvGVH4NTpo+NRYTVIuMQEMMcsLqg== mini-css-extract-plugin@^2.9.2: - version "2.9.4" - resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.9.4.tgz#cafa1a42f8c71357f49cd1566810d74ff1cb0200" - integrity sha512-ZWYT7ln73Hptxqxk2DxPU9MmapXRhxkJD6tkSR04dnQxm8BGu2hzgKLugK5yySD97u/8yy7Ma7E76k9ZdvtjkQ== + version "2.10.2" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-2.10.2.tgz#5c85ec9450c05d26e32531b465a15a08c3a57253" + integrity sha512-AOSS0IdEB95ayVkxn5oGzNQwqAi2J0Jb/kKm43t7H73s8+f5873g0yuj0PNvK4dO75mu5DHg4nlgp4k6Kga8eg== dependencies: schema-utils "^4.0.0" tapable "^2.2.1" @@ -6447,18 +8098,45 @@ minimalistic-assert@^1.0.0: resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -minimatch@3.1.2, minimatch@^3.1.1: - version "3.1.2" - resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== +minimatch@3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.5.tgz#580c88f8d5445f2bd6aa8f3cadefa0de79fbd69e" + integrity sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w== dependencies: brace-expansion "^1.1.7" -minimist@^1.2.0: +minimatch@^10.2.2: + version "10.2.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-10.2.5.tgz#bd48687a0be38ed2961399105600f832095861d1" + integrity sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg== + dependencies: + brace-expansion "^5.0.5" + +minimist@^1.2.0, minimist@^1.2.3: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== +minimizer-webpack-plugin@^5.6.1: + version "5.6.1" + resolved "https://registry.yarnpkg.com/minimizer-webpack-plugin/-/minimizer-webpack-plugin-5.6.1.tgz#289922a4c96c4ed1ddb76b8a00bd8074e89a2f7f" + integrity sha512-DoeAZz8Q1C1znwsUzej1fdoi4jCf7/+Em27ouLqfK/+3m8G+D7yDhUwrc3CNhjSzGUN1kn7Iv4sWmjflQHenpw== + dependencies: + "@jridgewell/trace-mapping" "^0.3.25" + jest-worker "^27.4.5" + schema-utils "^4.3.0" + terser "^5.31.1" + +minipass@^7.1.2, minipass@^7.1.3: + version "7.1.3" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.3.tgz#79389b4eb1bb2d003a9bba87d492f2bd37bdc65b" + integrity sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A== + +mkdirp-classic@^0.5.2, mkdirp-classic@^0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz#fa10c9115cc6d8865be221ba47ee9bed78601113" + integrity sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A== + mrmime@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-2.0.1.tgz#bc3e87f7987853a54c9850eeb1f1078cd44adddc" @@ -6482,10 +8160,15 @@ multicast-dns@^7.2.5: dns-packet "^5.2.2" thunky "^1.0.2" -nanoid@^3.3.11: - version "3.3.11" - resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b" - integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w== +nanoid@^3.3.12: + version "3.3.15" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.15.tgz#36c490fad8c6e86c824c940dfdde999b69ed4316" + integrity sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA== + +napi-build-utils@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-2.0.0.tgz#13c22c0187fcfccce1461844136372a47ddc027e" + integrity sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA== negotiator@0.6.3: version "0.6.3" @@ -6510,6 +8193,18 @@ no-case@^3.0.4: lower-case "^2.0.2" tslib "^2.0.3" +node-abi@^3.3.0: + version "3.94.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-3.94.0.tgz#007181ed0d1b56ae9670ea6c084d2bf83538405f" + integrity sha512-W5ZNO5KRPB5TkYmGVD9F6YqhsglXJzE6etpbmT+f6EQElhiX/UTG551cnsRGvLG3fyZEg9HwaDmNmj5nwJ4z9g== + dependencies: + semver "^7.3.5" + +node-addon-api@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-6.1.0.tgz#ac8470034e58e67d0c6f1204a18ae6995d9c0d76" + integrity sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA== + node-emoji@^2.1.0: version "2.2.0" resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-2.2.0.tgz#1d000e3c76e462577895be1b436f4aa2d6760eb0" @@ -6520,30 +8215,20 @@ node-emoji@^2.1.0: emojilib "^2.4.0" skin-tone "^2.0.0" -node-forge@^1: - version "1.3.1" - resolved "https://registry.yarnpkg.com/node-forge/-/node-forge-1.3.1.tgz#be8da2af243b2417d5f646a770663a92b7e9ded3" - integrity sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA== - -node-releases@^2.0.21: - version "2.0.21" - resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.21.tgz#f59b018bc0048044be2d4c4c04e4c8b18160894c" - integrity sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw== +node-releases@^2.0.50: + version "2.0.50" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.50.tgz#597197a852071ce42fc2550e58e223242bcba969" + integrity sha512-J6l92tKHX6w8Jy5nO1Vuc01NoIiRGi/d6qBKVxh+IQ8Cr3b6HbVNfKiF8ZpFKufTwpwxMmce2W3iQZ861ZRyTg== normalize-path@^3.0.0, normalize-path@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -normalize-range@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" - integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== - normalize-url@^8.0.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-8.1.0.tgz#d33504f67970decf612946fd4880bc8c0983486d" - integrity sha512-X06Mfd/5aKsRHc0O0J5CUedwnPmnDtLF2+nq+KN9KSDlJHkPuh0JUviWjEWMe0SW/9TDdSLVPuk7L5gGTIA1/w== + version "8.1.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-8.1.1.tgz#751a20c8520e5725404c06015fea21d7567f25ef" + integrity sha512-JYc0DPlpGWB40kH5g07gGTrYuMqV653k3uBKY6uITPWds3M0ov3GaWGp9lbE3Bzngx8+XkfzgvASb9vk9JDFXQ== npm-run-path@^4.0.1: version "4.0.1" @@ -6577,7 +8262,7 @@ object-assign@^4.1.1: resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== -object-inspect@^1.13.3: +object-inspect@^1.13.3, object-inspect@^1.13.4: version "1.13.4" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== @@ -6604,7 +8289,7 @@ obuf@^1.0.0, obuf@^1.1.2: resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== -on-finished@2.4.1: +on-finished@^2.4.1, on-finished@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== @@ -6616,7 +8301,7 @@ on-headers@~1.1.0: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.1.0.tgz#59da4f91c45f5f989c6e4bcedc5a3b0aed70ff65" integrity sha512-737ZY3yNnXy37FHkQxPzt4UZ2UWPWiCZWLvFZ4fu5cueciegX0zGPnrlY6bwRg4FdQOe9YU8MkmJwGhoMybl8A== -once@^1.3.0: +once@^1.3.1, once@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== @@ -6630,7 +8315,17 @@ onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" -open@^8.0.9, open@^8.4.0: +open@^10.0.3: + version "10.2.0" + resolved "https://registry.yarnpkg.com/open/-/open-10.2.0.tgz#b9d855be007620e80b6fb05fac98141fe62db73c" + integrity sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA== + dependencies: + default-browser "^5.2.1" + define-lazy-prop "^3.0.0" + is-inside-container "^1.0.0" + wsl-utils "^0.1.0" + +open@^8.4.0: version "8.4.2" resolved "https://registry.yarnpkg.com/open/-/open-8.4.2.tgz#5b5ffe2a8f793dcd2aad73e550cb87b59cb084f9" integrity sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ== @@ -6683,12 +8378,13 @@ p-queue@^6.6.2: eventemitter3 "^4.0.4" p-timeout "^3.2.0" -p-retry@^4.5.0: - version "4.6.2" - resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-4.6.2.tgz#9baae7184057edd4e17231cee04264106e092a16" - integrity sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ== +p-retry@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/p-retry/-/p-retry-6.2.1.tgz#81828f8dc61c6ef5a800585491572cc9892703af" + integrity sha512-hEt02O4hUct5wtwg4H4KcWgDdm+l1bOaEy/hWzd8xtXB9BqxTWBBhb+2ImAtH4Cv4rPjV76xN3Zumqk3k3AhhQ== dependencies: - "@types/retry" "0.12.0" + "@types/retry" "0.12.2" + is-network-error "^1.0.0" retry "^0.13.1" p-timeout@^3.2.0: @@ -6698,6 +8394,11 @@ p-timeout@^3.2.0: dependencies: p-finally "^1.0.0" +package-json-from-dist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + package-json@^8.1.0: version "8.1.1" resolved "https://registry.yarnpkg.com/package-json/-/package-json-8.1.1.tgz#3e9948e43df40d1e8e78a85485f1070bf8f03dc8" @@ -6708,6 +8409,11 @@ package-json@^8.1.0: registry-url "^6.0.0" semver "^7.3.7" +package-manager-detector@^1.3.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/package-manager-detector/-/package-manager-detector-1.7.0.tgz#0a6d6d3856627b8ac9331f95fc891ea81247aafd" + integrity sha512-xg1eHpwYL/D/HEdWw2goFZP6vV0FH7W+PZ5rFkGjdIDLtxq7EkzBUeT3m+lndYCt8wKbmofUu1MUdMCXkCk9ZQ== + param-case@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" @@ -6766,7 +8472,7 @@ parse5@^7.0.0: dependencies: entities "^6.0.0" -parseurl@~1.3.2, parseurl@~1.3.3: +parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== @@ -6779,16 +8485,16 @@ pascal-case@^3.1.2: no-case "^3.0.4" tslib "^2.0.3" +path-data-parser@0.1.0, path-data-parser@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/path-data-parser/-/path-data-parser-0.1.0.tgz#8f5ba5cc70fc7becb3dcefaea08e2659aba60b8c" + integrity sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w== + path-exists@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-5.0.0.tgz#a6aad9489200b21fab31e49cf09277e5116fb9e7" integrity sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ== -path-is-absolute@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" - integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== - path-is-inside@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" @@ -6804,10 +8510,13 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-to-regexp@0.1.12: - version "0.1.12" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" - integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== +path-scurry@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-2.0.2.tgz#6be0d0ee02a10d9e0de7a98bae65e182c9061f85" + integrity sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg== + dependencies: + lru-cache "^11.0.0" + minipass "^7.1.2" path-to-regexp@3.3.0: version "3.3.0" @@ -6821,6 +8530,11 @@ path-to-regexp@^1.7.0: dependencies: isarray "0.0.1" +path-to-regexp@~0.1.12: + version "0.1.13" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.13.tgz#9b22ec16bc3ab88d05a0c7e369869421401ab17d" + integrity sha512-A/AGNMFN3c8bOlvV9RreMdrv7jsmF9XIfDeCd87+I8RNg6s78BhJxMu69NEMHBSJFxKidViTEdruRwEk/WIKqA== + path-type@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" @@ -6832,9 +8546,9 @@ picocolors@^1.0.0, picocolors@^1.1.1: integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + version "2.3.2" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.2.tgz#5a942915e26b372dc0f0e6753149a16e6b1c5601" + integrity sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA== pkg-dir@^7.0.0: version "7.0.0" @@ -6843,6 +8557,31 @@ pkg-dir@^7.0.0: dependencies: find-up "^6.3.0" +pkijs@^3.3.3: + version "3.4.0" + resolved "https://registry.yarnpkg.com/pkijs/-/pkijs-3.4.0.tgz#d9164def30ff6d97be2d88966d5e36192499ca9c" + integrity sha512-emEcLuomt2j03vxD54giVB4SxTjnsqkU692xZOZXHDVoYyypEm+b3jpiTcc+Cf+myooc+/Ly0z01jqeNHVgJGw== + dependencies: + "@noble/hashes" "1.4.0" + asn1js "^3.0.6" + bytestreamjs "^2.0.1" + pvtsutils "^1.3.6" + pvutils "^1.1.3" + tslib "^2.8.1" + +points-on-curve@0.2.0, points-on-curve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/points-on-curve/-/points-on-curve-0.2.0.tgz#7dbb98c43791859434284761330fa893cb81b4d1" + integrity sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A== + +points-on-path@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/points-on-path/-/points-on-path-0.2.1.tgz#553202b5424c53bed37135b318858eacff85dd52" + integrity sha512-25ClnWWuw7JbWZcgqY/gJ4FQWadKxGWk+3kR/7kD0tCaDtPPMj7oHu2ToLaVhfpnHrZzYby2w6tUA0eOIuUg8g== + dependencies: + path-data-parser "0.1.0" + points-on-curve "0.2.0" + postcss-attribute-case-insensitive@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-7.0.1.tgz#0c4500e3bcb2141848e89382c05b5a31c23033a3" @@ -6865,15 +8604,15 @@ postcss-clamp@^4.1.0: dependencies: postcss-value-parser "^4.2.0" -postcss-color-functional-notation@^7.0.11: - version "7.0.11" - resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.11.tgz#ad6b3d2e71fedd94a932f96260b596c33c53c6a5" - integrity sha512-zfqoUSaHMko/k2PA9xnaydVTHqYv5vphq5Q2AHcG/dCdv/OkHYWcVWfVTBKZ526uzT8L7NghuvSw3C9PxlKnLg== +postcss-color-functional-notation@^7.0.12: + version "7.0.12" + resolved "https://registry.yarnpkg.com/postcss-color-functional-notation/-/postcss-color-functional-notation-7.0.12.tgz#9a3df2296889e629fde18b873bb1f50a4ecf4b83" + integrity sha512-TLCW9fN5kvO/u38/uesdpbx3e8AkTYhMvDZYa9JpmImWuTE99bDQ7GU7hdOADIZsiI9/zuxfAJxny/khknp1Zw== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" postcss-color-hex-alpha@^10.0.0: @@ -6975,12 +8714,12 @@ postcss-discard-unused@^6.0.5: dependencies: postcss-selector-parser "^6.0.16" -postcss-double-position-gradients@^6.0.3: - version "6.0.3" - resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-6.0.3.tgz#d8c4b126af89855a3aa6687e5b1a0d5460d4a5b7" - integrity sha512-Dl0Z9sdbMwrPslgOaGBZRGo3TASmmgTcqcUODr82MTYyJk6devXZM6MlQjpQKMJqlLJ6oL1w78U7IXFdPA5+ug== +postcss-double-position-gradients@^6.0.4: + version "6.0.4" + resolved "https://registry.yarnpkg.com/postcss-double-position-gradients/-/postcss-double-position-gradients-6.0.4.tgz#b482d08b5ced092b393eb297d07976ab482d4cad" + integrity sha512-m6IKmxo7FxSP5nF2l63QbCC3r+bWpFUWmZXZf096WxG0m7Vl1Q1+ruFOhpdDRmKrRS+S3Jtk+TVk/7z0+BVK6g== dependencies: - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" postcss-value-parser "^4.2.0" @@ -7016,15 +8755,15 @@ postcss-image-set-function@^7.0.0: "@csstools/utilities" "^2.0.0" postcss-value-parser "^4.2.0" -postcss-lab-function@^7.0.11: - version "7.0.11" - resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-7.0.11.tgz#455934181eea130f8e649c1f54692e1768046f6a" - integrity sha512-BEA4jId8uQe1gyjZZ6Bunb6ZsH2izks+v25AxQJDBtigXCjTLmCPWECwQpLTtcxH589MVxhs/9TAmRC6lUEmXQ== +postcss-lab-function@^7.0.12: + version "7.0.12" + resolved "https://registry.yarnpkg.com/postcss-lab-function/-/postcss-lab-function-7.0.12.tgz#eb555ac542607730eb0a87555074e4a5c6eef6e4" + integrity sha512-tUcyRk1ZTPec3OuKFsqtRzW2Go5lehW29XA21lZ65XmzQkz43VY2tyWEC202F7W3mILOjw0voOiuxRGTsN+J9w== dependencies: "@csstools/css-color-parser" "^3.1.0" "@csstools/css-parser-algorithms" "^3.0.5" "@csstools/css-tokenizer" "^3.0.4" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" "@csstools/utilities" "^2.0.0" postcss-loader@^7.3.4: @@ -7233,26 +8972,27 @@ postcss-place@^10.0.0: postcss-value-parser "^4.2.0" postcss-preset-env@^10.2.1: - version "10.3.1" - resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-10.3.1.tgz#f3799f0f7a7ea384b3c16e073055c231d11bb3bf" - integrity sha512-8ZOOWVwQ0iMpfEYkYo+U6W7fE2dJ/tP6dtEFwPJ66eB5JjnFupfYh+y6zo+vWDO72nGhKOVdxwhTjfzcSNRg4Q== + version "10.6.1" + resolved "https://registry.yarnpkg.com/postcss-preset-env/-/postcss-preset-env-10.6.1.tgz#df30cfc54e90af2dcff5f94104e6f272359c9f65" + integrity sha512-yrk74d9EvY+W7+lO9Aj1QmjWY9q5NsKjK2V9drkOPZB/X6KZ0B3igKsHUYakb7oYVhnioWypQX3xGuePf89f3g== dependencies: - "@csstools/postcss-alpha-function" "^1.0.0" + "@csstools/postcss-alpha-function" "^1.0.1" "@csstools/postcss-cascade-layers" "^5.0.2" - "@csstools/postcss-color-function" "^4.0.11" - "@csstools/postcss-color-function-display-p3-linear" "^1.0.0" - "@csstools/postcss-color-mix-function" "^3.0.11" - "@csstools/postcss-color-mix-variadic-function-arguments" "^1.0.1" - "@csstools/postcss-content-alt-text" "^2.0.7" + "@csstools/postcss-color-function" "^4.0.12" + "@csstools/postcss-color-function-display-p3-linear" "^1.0.1" + "@csstools/postcss-color-mix-function" "^3.0.12" + "@csstools/postcss-color-mix-variadic-function-arguments" "^1.0.2" + "@csstools/postcss-content-alt-text" "^2.0.8" + "@csstools/postcss-contrast-color-function" "^2.0.12" "@csstools/postcss-exponential-functions" "^2.0.9" "@csstools/postcss-font-format-keywords" "^4.0.0" "@csstools/postcss-gamut-mapping" "^2.0.11" - "@csstools/postcss-gradients-interpolation-method" "^5.0.11" - "@csstools/postcss-hwb-function" "^4.0.11" - "@csstools/postcss-ic-unit" "^4.0.3" + "@csstools/postcss-gradients-interpolation-method" "^5.0.12" + "@csstools/postcss-hwb-function" "^4.0.12" + "@csstools/postcss-ic-unit" "^4.0.4" "@csstools/postcss-initial" "^2.0.1" "@csstools/postcss-is-pseudo-class" "^5.0.3" - "@csstools/postcss-light-dark-function" "^2.0.10" + "@csstools/postcss-light-dark-function" "^2.0.11" "@csstools/postcss-logical-float-and-clear" "^3.0.0" "@csstools/postcss-logical-overflow" "^2.0.0" "@csstools/postcss-logical-overscroll-behavior" "^2.0.0" @@ -7261,39 +9001,43 @@ postcss-preset-env@^10.2.1: "@csstools/postcss-media-minmax" "^2.0.9" "@csstools/postcss-media-queries-aspect-ratio-number-values" "^3.0.5" "@csstools/postcss-nested-calc" "^4.0.0" - "@csstools/postcss-normalize-display-values" "^4.0.0" - "@csstools/postcss-oklab-function" "^4.0.11" - "@csstools/postcss-progressive-custom-properties" "^4.2.0" + "@csstools/postcss-normalize-display-values" "^4.0.1" + "@csstools/postcss-oklab-function" "^4.0.12" + "@csstools/postcss-position-area-property" "^1.0.0" + "@csstools/postcss-progressive-custom-properties" "^4.2.1" + "@csstools/postcss-property-rule-prelude-list" "^1.0.0" "@csstools/postcss-random-function" "^2.0.1" - "@csstools/postcss-relative-color-syntax" "^3.0.11" + "@csstools/postcss-relative-color-syntax" "^3.0.12" "@csstools/postcss-scope-pseudo-class" "^4.0.1" "@csstools/postcss-sign-functions" "^1.1.4" "@csstools/postcss-stepped-value-functions" "^4.0.9" + "@csstools/postcss-syntax-descriptor-syntax-production" "^1.0.1" + "@csstools/postcss-system-ui-font-family" "^1.0.0" "@csstools/postcss-text-decoration-shorthand" "^4.0.3" "@csstools/postcss-trigonometric-functions" "^4.0.9" "@csstools/postcss-unset-value" "^4.0.0" - autoprefixer "^10.4.21" - browserslist "^4.25.1" + autoprefixer "^10.4.23" + browserslist "^4.28.1" css-blank-pseudo "^7.0.1" css-has-pseudo "^7.0.3" css-prefers-color-scheme "^10.0.0" - cssdb "^8.4.0" + cssdb "^8.6.0" postcss-attribute-case-insensitive "^7.0.1" postcss-clamp "^4.1.0" - postcss-color-functional-notation "^7.0.11" + postcss-color-functional-notation "^7.0.12" postcss-color-hex-alpha "^10.0.0" postcss-color-rebeccapurple "^10.0.0" postcss-custom-media "^11.0.6" postcss-custom-properties "^14.0.6" postcss-custom-selectors "^8.0.5" postcss-dir-pseudo-class "^9.0.1" - postcss-double-position-gradients "^6.0.3" + postcss-double-position-gradients "^6.0.4" postcss-focus-visible "^10.0.1" postcss-focus-within "^9.0.1" postcss-font-variant "^5.0.0" postcss-gap-properties "^6.0.0" postcss-image-set-function "^7.0.0" - postcss-lab-function "^7.0.11" + postcss-lab-function "^7.0.12" postcss-logical "^8.1.0" postcss-nesting "^13.0.2" postcss-opacity-percentage "^3.0.0" @@ -7346,17 +9090,17 @@ postcss-selector-not@^8.0.1: postcss-selector-parser "^7.0.0" postcss-selector-parser@^6.0.11, postcss-selector-parser@^6.0.16: - version "6.1.2" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz#27ecb41fb0e3b6ba7a1ec84fff347f734c7929de" - integrity sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg== + version "6.1.4" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.1.4.tgz#fdec4ca80f5781bd216ca9bf89a2a0fccfffa5f0" + integrity sha512-bIoJLOmjCO1S9XdY/DcnR5hJxvrDir1PbGChrzXG3vw0/FOliy/fA3dmdhQ441kah4gKv+TwckGzex6wNS5cnQ== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" postcss-selector-parser@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz#4d6af97eba65d73bc4d84bcb343e865d7dd16262" - integrity sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA== + version "7.1.4" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz#69dc7a526517572ff6b150e352b36a016017b485" + integrity sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg== dependencies: cssesc "^3.0.0" util-deprecate "^1.0.2" @@ -7394,14 +9138,32 @@ postcss-zindex@^6.0.2: integrity sha512-5BxW9l1evPB/4ZIc+2GobEBoKC+h8gPGCMi+jxsYvd2x0mjq7wazk6DrP71pStqxE9Foxh5TVnonbWpFZzXaYg== postcss@^8.4.21, postcss@^8.4.24, postcss@^8.4.33, postcss@^8.5.4: - version "8.5.6" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c" - integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg== + version "8.5.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.16.tgz#1230ce0b5df354c24c0ea45f99ce5f6a88279d28" + integrity sha512-vuwillviilfKZsg0VGj5R/YwwcHx4SLsIOI/7K6mQkWx+l5cUHTjj5g0AasTBcyXsbfTgrwsUNmVUb5xVwyPwg== dependencies: - nanoid "^3.3.11" + nanoid "^3.3.12" picocolors "^1.1.1" source-map-js "^1.2.1" +prebuild-install@^7.1.1: + version "7.1.3" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-7.1.3.tgz#d630abad2b147443f20a212917beae68b8092eec" + integrity sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug== + dependencies: + detect-libc "^2.0.0" + expand-template "^2.0.3" + github-from-package "0.0.0" + minimist "^1.2.3" + mkdirp-classic "^0.5.3" + napi-build-utils "^2.0.0" + node-abi "^3.3.0" + pump "^3.0.0" + rc "^1.2.7" + simple-get "^4.0.0" + tar-fs "^2.0.0" + tunnel-agent "^0.6.0" + pretty-error@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-4.0.0.tgz#90a703f46dd7234adb46d0f84823e9d1cb8f10d6" @@ -7450,15 +9212,10 @@ prop-types@^15.6.2, prop-types@^15.7.2, prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" -property-information@^6.0.0: - version "6.5.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-6.5.0.tgz#6212fbb52ba757e92ef4fb9d657563b933b7ffec" - integrity sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig== - property-information@^7.0.0: - version "7.1.0" - resolved "https://registry.yarnpkg.com/property-information/-/property-information-7.1.0.tgz#b622e8646e02b580205415586b40804d3e8bfd5d" - integrity sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ== + version "7.2.0" + resolved "https://registry.yarnpkg.com/property-information/-/property-information-7.2.0.tgz#0809b34264e995c0bfcd3227028a1e35210af80a" + integrity sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg== proto-list@~1.2.1: version "1.2.4" @@ -7473,24 +9230,45 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" +pump@^3.0.0: + version "3.0.4" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.4.tgz#1f313430527fa8b905622ebd22fe1444e757ab3c" + integrity sha512-VS7sjc6KR7e1ukRFhQSY5LM2uBWAUPiOPa/A3mkKmiMwSmRFUITt0xuj+/lesgnCv+dPIEYlkzrcyXgquIHMcA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + punycode@^2.1.0: version "2.3.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== pupa@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/pupa/-/pupa-3.1.0.tgz#f15610274376bbcc70c9a3aa8b505ea23f41c579" - integrity sha512-FLpr4flz5xZTSJxSeaheeMKN/EDzMdK7b8PTOC6a5PYFKTucWbdqjgqaEyH0shFiSJrVB1+Qqi4Tk19ccU6Aug== + version "3.3.0" + resolved "https://registry.yarnpkg.com/pupa/-/pupa-3.3.0.tgz#bc4036f9e8920c08ad472bc18fb600067cb83810" + integrity sha512-LjgDO2zPtoXP2wJpDjZrGdojii1uqO0cnwKoIoUzkfS98HDmbeiGmYiXo3lXeFlq2xvne1QFQhwYXSUCLKtEuA== dependencies: escape-goat "^4.0.0" -qs@6.13.0: - version "6.13.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" - integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== +pvtsutils@^1.3.6: + version "1.3.6" + resolved "https://registry.yarnpkg.com/pvtsutils/-/pvtsutils-1.3.6.tgz#ec46e34db7422b9e4fdc5490578c1883657d6001" + integrity sha512-PLgQXQ6H2FWCaeRak8vvk1GW462lMxB5s3Jm673N82zI4vqtVUPuZdffdZbPDFRoU8kAhItWFtPCWiPpp4/EDg== + dependencies: + tslib "^2.8.1" + +pvutils@^1.1.3, pvutils@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/pvutils/-/pvutils-1.1.5.tgz#84b0dea4a5d670249aa9800511804ee0b7c2809c" + integrity sha512-KTqnxsgGiQ6ZAzZCVlJH5eOjSnvlyEgx1m8bkRJfOhmGRqfo5KLvmAlACQkrjEtOQ4B7wF9TdSLIs9O90MX9xA== + +qs@~6.15.1: + version "6.15.3" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.15.3.tgz#76852132a58ed5c7c0ef67e4441b9bb5d6061b3b" + integrity sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A== dependencies: - side-channel "^1.0.6" + es-define-property "^1.0.1" + side-channel "^1.1.1" queue-microtask@^1.2.2: version "1.2.3" @@ -7514,22 +9292,27 @@ range-parser@1.2.0: resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" integrity sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A== -range-parser@^1.2.1, range-parser@~1.2.1: +range-parser@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.3.0.tgz#d7f19be812bb62721472b45d3be219ef09572b47" + integrity sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw== + +range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.5.2: - version "2.5.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" - integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== +raw-body@~2.5.3: + version "2.5.3" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.3.tgz#11c6650ee770a7de1b494f197927de0c923822e2" + integrity sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA== dependencies: - bytes "3.1.2" - http-errors "2.0.0" - iconv-lite "0.4.24" - unpipe "1.0.0" + bytes "~3.1.2" + http-errors "~2.0.1" + iconv-lite "~0.4.24" + unpipe "~1.0.0" -rc@1.2.8: +rc@1.2.8, rc@^1.2.7: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== @@ -7540,11 +9323,11 @@ rc@1.2.8: strip-json-comments "~2.0.1" react-dom@^19.0.0: - version "19.1.1" - resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.1.1.tgz#2daa9ff7f3ae384aeb30e76d5ee38c046dc89893" - integrity sha512-Dlq/5LAZgF0Gaz6yiqZCf6VCcZs1ghAJyrsu84Q/GT0gV+mCxbfmKNoGRKBYMJ8IEdGPqu49YWXD02GCknEDkw== + version "19.2.7" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.2.7.tgz#0450dc9ae9ddbff76ef196401cd8b8c7fb466ccc" + integrity sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ== dependencies: - scheduler "^0.26.0" + scheduler "^0.27.0" react-fast-compare@^3.2.0: version "3.2.2" @@ -7567,20 +9350,20 @@ react-is@^16.13.1, react-is@^16.6.0, react-is@^16.7.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== -react-is@^19.1.1: - version "19.1.1" - resolved "https://registry.yarnpkg.com/react-is/-/react-is-19.1.1.tgz#038ebe313cf18e1fd1235d51c87360eb87f7c36a" - integrity sha512-tr41fA15Vn8p4X9ntI+yCyeGSf1TlYaY5vlTZfQmeLBrFo3psOPX6HhTDnFNL9uj3EhP0KAQ80cugCl4b4BERA== +react-is@^19.2.3: + version "19.2.7" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-19.2.7.tgz#57668ee86a78574a542b0a539455212b2c086df2" + integrity sha512-kZFnouyVv7eP/Phmrlo9FK+zcAdriZJvzxXHF1Sl1P377WSGe2G/JxVolhTrB/jeV47lKImhNUsijjHAAbcl/A== react-json-view-lite@^2.3.0: version "2.5.0" resolved "https://registry.yarnpkg.com/react-json-view-lite/-/react-json-view-lite-2.5.0.tgz#c7ff011c7cc80e9900abc7aa4916c6a5c6d6c1c6" integrity sha512-tk7o7QG9oYyELWHL8xiMQ8x4WzjCzbWNyig3uexmkLb54r8jO0yH3WCWx8UZS0c49eSA4QUmG5caiRJ8fAn58g== -react-loadable-ssr-addon-v5-slorber@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz#2cdc91e8a744ffdf9e3556caabeb6e4278689883" - integrity sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A== +react-loadable-ssr-addon-v5-slorber@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.3.tgz#bb3791bf481222c63a5bc6b96ee23f68cb5614b9" + integrity sha512-GXfh9VLwB5ERaCsU6RULh7tkemeX15aNh6wuMEBtfdyMa7fFG8TXrhXlx1SoEK2Ty/l6XIkzzYIQmyaWW3JgdQ== dependencies: "@babel/runtime" "^7.10.3" @@ -7637,9 +9420,9 @@ react-transition-group@^4.4.5: prop-types "^15.6.2" react@^19.0.0: - version "19.1.1" - resolved "https://registry.yarnpkg.com/react/-/react-19.1.1.tgz#06d9149ec5e083a67f9a1e39ce97b06a03b644af" - integrity sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ== + version "19.2.7" + resolved "https://registry.yarnpkg.com/react/-/react-19.2.7.tgz#1f47a1bfc06f8ec885752c6f4af14369a9f8260b" + integrity sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ== readable-stream@^2.0.1: version "2.3.8" @@ -7654,7 +9437,7 @@ readable-stream@^2.0.1: string_decoder "~1.1.1" util-deprecate "~1.0.1" -readable-stream@^3.0.6: +readable-stream@^3.0.6, readable-stream@^3.1.1, readable-stream@^3.4.0: version "3.6.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.2.tgz#56a9b36ea965c00c5a93ef31eb111a0f11056967" integrity sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA== @@ -7710,6 +9493,11 @@ recma-stringify@^1.0.0: unified "^11.0.0" vfile "^6.0.0" +reflect-metadata@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.2.2.tgz#400c845b6cba87a21f2c65c4aeb158f4fa4d9c5b" + integrity sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q== + regenerate-unicode-properties@^10.2.2: version "10.2.2" resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.2.tgz#aa113812ba899b630658c7623466be71e1f86f66" @@ -7722,24 +9510,24 @@ regenerate@^1.4.2: resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.4.2.tgz#b9346d8827e8f5a32f7ba29637d398b69014848a" integrity sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A== -regexpu-core@^6.2.0: - version "6.3.1" - resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.3.1.tgz#fb8b707d0efe18e9464d3ae76ae1e3c96c8467ae" - integrity sha512-DzcswPr252wEr7Qz8AyAVbfyBDKLoYp6eRA1We2Fa9qirRFSdtkP5sHr3yglDKy2BbA0fd2T+j/CUSKes3FeVQ== +regexpu-core@^6.3.1: + version "6.4.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-6.4.0.tgz#3580ce0c4faedef599eccb146612436b62a176e5" + integrity sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA== dependencies: regenerate "^1.4.2" regenerate-unicode-properties "^10.2.2" regjsgen "^0.8.0" - regjsparser "^0.12.0" + regjsparser "^0.13.0" unicode-match-property-ecmascript "^2.0.0" unicode-match-property-value-ecmascript "^2.2.1" registry-auth-token@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.1.0.tgz#3c659047ecd4caebd25bc1570a3aa979ae490eca" - integrity sha512-GdekYuwLXLxMuFTwAPg5UKGLW/UXzQrZvH/Zj791BQif5T05T0RsaLfHc9q3ZOKi7n+BoprPD9mJ0O0k4xzUlw== + version "5.1.1" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-5.1.1.tgz#f1ff69c8e492e7edee07110b4752dd0a8aa82853" + integrity sha512-P7B4+jq8DeD2nMsAcdfaqHbssgHtZ7Z5+++a5ask90fvmJ8p5je4mOa+wzu+DB4vQ5tdJV/xywY+UnVFeQLV5Q== dependencies: - "@pnpm/npm-conf" "^2.1.0" + "@pnpm/npm-conf" "^3.0.2" registry-url@^6.0.0: version "6.0.1" @@ -7753,12 +9541,12 @@ regjsgen@^0.8.0: resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.8.0.tgz#df23ff26e0c5b300a6470cad160a9d090c3a37ab" integrity sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q== -regjsparser@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.12.0.tgz#0e846df6c6530586429377de56e0475583b088dc" - integrity sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ== +regjsparser@^0.13.0: + version "0.13.2" + resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.13.2.tgz#f654734b5c588b22ba3e21693b30523417180808" + integrity sha512-NgRBy2Nx/bE+9F27nVHnqcN5HjyLmecqsqx2PJHu3/IEtADD4WuxuXIVExD5PoSDFVrl78dOonfcOe5O+5nbzQ== dependencies: - jsesc "~3.0.2" + jsesc "~3.1.0" rehype-raw@^7.0.0: version "7.0.0" @@ -7875,11 +9663,6 @@ renderkid@^3.0.0: lodash "^4.17.21" strip-ansi "^6.0.1" -repeat-string@^1.0.0: - version "1.6.1" - resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" - integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== - require-from-string@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" @@ -7910,12 +9693,13 @@ resolve-pathname@^3.0.0: resolved "https://registry.yarnpkg.com/resolve-pathname/-/resolve-pathname-3.0.0.tgz#99d02224d3cf263689becbb393bc560313025dcd" integrity sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng== -resolve@^1.19.0, resolve@^1.22.10: - version "1.22.10" - resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.10.tgz#b663e83ffb09bbf2386944736baae803029b8b39" - integrity sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w== +resolve@^1.19.0, resolve@^1.22.11: + version "1.22.12" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.12.tgz#f5b2a680897c69c238a13cd16b15671f8b73549f" + integrity sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA== dependencies: - is-core-module "^2.16.0" + es-errors "^1.3.0" + is-core-module "^2.16.1" path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" @@ -7936,12 +9720,28 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.1.0.tgz#0fe13b9522e1473f51b558ee796e08f11f9b489f" integrity sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw== -rimraf@^3.0.2: - version "3.0.2" - resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" - integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== +rimraf@^6.0.1: + version "6.1.3" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-6.1.3.tgz#afbee236b3bd2be331d4e7ce4493bac1718981af" + integrity sha512-LKg+Cr2ZF61fkcaK1UdkH2yEBBKnYjTyWzTJT6KNPcSPaiT7HSdhtMXQuN5wkTX0Xu72KQ1l8S42rlmexS2hSA== + dependencies: + glob "^13.0.3" + package-json-from-dist "^1.0.1" + +robust-predicates@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/robust-predicates/-/robust-predicates-3.0.3.tgz#1099061b3349e2c5abec6c2ab0acd440d24d4062" + integrity sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA== + +roughjs@^4.6.6: + version "4.6.6" + resolved "https://registry.yarnpkg.com/roughjs/-/roughjs-4.6.6.tgz#1059f49a5e0c80dee541a005b20cc322b222158b" + integrity sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ== dependencies: - glob "^7.1.3" + hachure-fill "^0.5.2" + path-data-parser "^0.1.0" + points-on-curve "^0.2.0" + points-on-path "^0.2.1" rtlcss@^4.1.0: version "4.3.0" @@ -7953,6 +9753,11 @@ rtlcss@^4.1.0: postcss "^8.4.21" strip-json-comments "^3.1.1" +run-applescript@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/run-applescript/-/run-applescript-7.1.0.tgz#2e9e54c4664ec3106c5b5630e249d3d6595c4911" + integrity sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q== + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -7960,7 +9765,12 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0: +rw@1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4" + integrity sha512-PdhdWy89SiZogBLaw42zdeqtRJ//zFd2PgQavcICDUgJT5oW10QCRKbJ6bg4r0/UY2M6BWd5tkxuGFRvCkgfHQ== + +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -7970,20 +9780,20 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -"safer-buffer@>= 2.1.2 < 3": +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sax@^1.2.4: - version "1.4.1" - resolved "https://registry.yarnpkg.com/sax/-/sax-1.4.1.tgz#44cc8988377f126304d3b3fc1010c733b929ef0f" - integrity sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg== +sax@^1.2.4, sax@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.6.0.tgz#da59637629307b97e7c4cb28e080a7bc38560d5b" + integrity sha512-6R3J5M4AcbtLUdZmRv2SygeVaM7IhrLXu9BmnOGmmACak8fiUtOsYNWUS4uK7upbmHIBbLBeFeI//477BKLBzA== -scheduler@^0.26.0: - version "0.26.0" - resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.26.0.tgz#4ce8a8c2a2095f13ea11bf9a445be50c555d6337" - integrity sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA== +scheduler@^0.27.0: + version "0.27.0" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.27.0.tgz#0c4ef82d67d1e5c1e359e8fc76d3a87f045fe5bd" + integrity sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q== schema-dts@^1.1.2: version "1.1.5" @@ -7999,10 +9809,10 @@ schema-utils@^3.0.0: ajv "^6.12.5" ajv-keywords "^3.5.2" -schema-utils@^4.0.0, schema-utils@^4.0.1, schema-utils@^4.3.0, schema-utils@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.2.tgz#0c10878bf4a73fd2b1dfd14b9462b26788c806ae" - integrity sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ== +schema-utils@^4.0.0, schema-utils@^4.0.1, schema-utils@^4.2.0, schema-utils@^4.3.0, schema-utils@^4.3.3: + version "4.3.3" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-4.3.3.tgz#5b1850912fa31df90716963d45d9121fdfc09f46" + integrity sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA== dependencies: "@types/json-schema" "^7.0.9" ajv "^8.9.0" @@ -8027,13 +9837,13 @@ select@^1.1.2: resolved "https://registry.yarnpkg.com/select/-/select-1.1.2.tgz#0e7350acdec80b1108528786ec1d4418d11b396d" integrity sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA== -selfsigned@^2.1.1: - version "2.4.1" - resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-2.4.1.tgz#560d90565442a3ed35b674034cec4e95dceb4ae0" - integrity sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q== +selfsigned@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-5.5.0.tgz#4c9ab7c7c9f35f18fb6a9882c253eb0e6bd6557b" + integrity sha512-ftnu3TW4+3eBfLRFnDEkzGxSF/10BJBkaLJuBHZX0kiPS7bRdlpZGu6YGt4KngMkdTwJE6MbjavFpqHvqVt+Ew== dependencies: - "@types/node-forge" "^1.3.0" - node-forge "^1" + "@peculiar/x509" "^1.14.2" + pkijs "^3.3.3" semver-diff@^4.0.0: version "4.0.0" @@ -8048,71 +9858,71 @@ semver@^6.3.1: integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== semver@^7.3.5, semver@^7.3.7, semver@^7.5.4: - version "7.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" - integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== + version "7.8.5" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.8.5.tgz#39b646037dd50c14fb451e7e4cac58ed8b863f69" + integrity sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA== -send@0.19.0: - version "0.19.0" - resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" - integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== +send@~0.19.0, send@~0.19.1: + version "0.19.2" + resolved "https://registry.yarnpkg.com/send/-/send-0.19.2.tgz#59bc0da1b4ea7ad42736fd642b1c4294e114ff29" + integrity sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg== dependencies: debug "2.6.9" depd "2.0.0" destroy "1.2.0" - encodeurl "~1.0.2" + encodeurl "~2.0.0" escape-html "~1.0.3" etag "~1.8.1" - fresh "0.5.2" - http-errors "2.0.0" + fresh "~0.5.2" + http-errors "~2.0.1" mime "1.6.0" ms "2.1.3" - on-finished "2.4.1" + on-finished "~2.4.1" range-parser "~1.2.1" - statuses "2.0.1" + statuses "~2.0.2" -serialize-javascript@^6.0.0, serialize-javascript@^6.0.1, serialize-javascript@^6.0.2: +serialize-javascript@^6.0.0, serialize-javascript@^6.0.1: version "6.0.2" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.2.tgz#defa1e055c83bf6d59ea805d8da862254eb6a6c2" integrity sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g== dependencies: randombytes "^2.1.0" -serve-handler@^6.1.6: - version "6.1.6" - resolved "https://registry.yarnpkg.com/serve-handler/-/serve-handler-6.1.6.tgz#50803c1d3e947cd4a341d617f8209b22bd76cfa1" - integrity sha512-x5RL9Y2p5+Sh3D38Fh9i/iQ5ZK+e4xuXRd/pGbM4D13tgo/MGwbttUk8emytcr1YYzBYs+apnUngBDFYfpjPuQ== +serve-handler@^6.1.7: + version "6.1.7" + resolved "https://registry.yarnpkg.com/serve-handler/-/serve-handler-6.1.7.tgz#e9bb864e87ee71e8dab874cde44d146b77e3fb78" + integrity sha512-CinAq1xWb0vR3twAv9evEU8cNWkXCb9kd5ePAHUKJBkOsUpR1wt/CvGdeca7vqumL1U5cSaeVQ6zZMxiJ3yWsg== dependencies: bytes "3.0.0" content-disposition "0.5.2" mime-types "2.1.18" - minimatch "3.1.2" + minimatch "3.1.5" path-is-inside "1.0.2" path-to-regexp "3.3.0" range-parser "1.2.0" serve-index@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239" - integrity sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw== + version "1.9.2" + resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.2.tgz#2988e3612106d78a5e4849ddff552ce7bd3d9bcb" + integrity sha512-KDj11HScOaLmrPxl70KYNW1PksP4Nb/CLL2yvC+Qd2kHMPEEpfc4Re2e4FOay+bC/+XQl/7zAcWON3JVo5v3KQ== dependencies: - accepts "~1.3.4" + accepts "~1.3.8" batch "0.6.1" debug "2.6.9" escape-html "~1.0.3" - http-errors "~1.6.2" - mime-types "~2.1.17" - parseurl "~1.3.2" + http-errors "~1.8.0" + mime-types "~2.1.35" + parseurl "~1.3.3" -serve-static@1.16.2: - version "1.16.2" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.2.tgz#b6a5343da47f6bdd2673848bf45754941e803296" - integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw== +serve-static@~1.16.2: + version "1.16.3" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.3.tgz#a97b74d955778583f3862a4f0b841eb4d5d78cf9" + integrity sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA== dependencies: encodeurl "~2.0.0" escape-html "~1.0.3" parseurl "~1.3.3" - send "0.19.0" + send "~0.19.1" set-function-length@^1.2.2: version "1.2.2" @@ -8126,12 +9936,7 @@ set-function-length@^1.2.2: gopd "^1.0.1" has-property-descriptors "^1.0.2" -setprototypeof@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" - integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== - -setprototypeof@1.2.0: +setprototypeof@1.2.0, setprototypeof@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== @@ -8148,6 +9953,20 @@ shallowequal@^1.1.0: resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== +sharp@^0.32.3: + version "0.32.6" + resolved "https://registry.yarnpkg.com/sharp/-/sharp-0.32.6.tgz#6ad30c0b7cd910df65d5f355f774aa4fce45732a" + integrity sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w== + dependencies: + color "^4.2.3" + detect-libc "^2.0.2" + node-addon-api "^6.1.0" + prebuild-install "^7.1.1" + semver "^7.5.4" + simple-get "^4.0.1" + tar-fs "^3.0.4" + tunnel-agent "^0.6.0" + shebang-command@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" @@ -8160,18 +9979,18 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@^1.8.3: - version "1.8.3" - resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.3.tgz#55e40ef33cf5c689902353a3d8cd1a6725f08b4b" - integrity sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw== +shell-quote@^1.8.4: + version "1.9.0" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.9.0.tgz#e108b1a136586d5964edb3300016d4bedba0fe57" + integrity sha512-Iov+JwFv/2HcTpcwNMKd8+IWNb8tboQJNQTkAY/LLVK7gGH9jy+LGkVqPxfekHl+yMmiqXszdGWXgkfml7hjqA== -side-channel-list@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" - integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== +side-channel-list@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.1.tgz#c2e0b5a14a540aebee3bbc6c3f8666cc9b509127" + integrity sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w== dependencies: es-errors "^1.3.0" - object-inspect "^1.13.3" + object-inspect "^1.13.4" side-channel-map@^1.0.1: version "1.0.1" @@ -8194,14 +10013,14 @@ side-channel-weakmap@^1.0.2: object-inspect "^1.13.3" side-channel-map "^1.0.1" -side-channel@^1.0.6: - version "1.1.0" - resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.0.tgz#c3fcff9c4da932784873335ec9765fa94ff66bc9" - integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== +side-channel@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.1.1.tgz#ea02c62e05dc4bea67d4442f0fb71ee192f8e0ab" + integrity sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ== dependencies: es-errors "^1.3.0" - object-inspect "^1.13.3" - side-channel-list "^1.0.0" + object-inspect "^1.13.4" + side-channel-list "^1.0.1" side-channel-map "^1.0.1" side-channel-weakmap "^1.0.2" @@ -8210,6 +10029,27 @@ signal-exit@^3.0.2, signal-exit@^3.0.3: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +simple-concat@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.1.tgz#f46976082ba35c2263f1c8ab5edfe26c41c9552f" + integrity sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q== + +simple-get@^4.0.0, simple-get@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-4.0.1.tgz#4a39db549287c979d352112fa03fd99fd6bc3543" + integrity sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA== + dependencies: + decompress-response "^6.0.0" + once "^1.3.1" + simple-concat "^1.0.0" + +simple-swizzle@^0.2.2: + version "0.2.4" + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.4.tgz#a8d11a45a11600d6a1ecdff6363329e3648c3667" + integrity sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw== + dependencies: + is-arrayish "^0.3.1" + sirv@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/sirv/-/sirv-2.0.4.tgz#5dd9a725c578e34e449f332703eb2a74e46a29b0" @@ -8225,9 +10065,9 @@ sisteransi@^1.0.5: integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== sitemap@^7.1.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-7.1.2.tgz#6ce1deb43f6f177c68bc59cf93632f54e3ae6b72" - integrity sha512-ARCqzHJ0p4gWt+j7NlU5eDlIO9+Rkr/JhPFZKKQ1l5GCus7rJH4UdrlVAh0xC/gDS/Qir2UMxqYNHtsKr2rpCw== + version "7.1.3" + resolved "https://registry.yarnpkg.com/sitemap/-/sitemap-7.1.3.tgz#2b756f79f0b77527c0eaba280c722e4c66c08886" + integrity sha512-tAjEd+wt/YwnEbfNB2ht51ybBJxbEWwe5ki/Z//Wh0rpBFTCUSj46GnxUKEWzhfuJTsee8x3lybHxFgUMig2hw== dependencies: "@types/node" "^17.0.5" "@types/sax" "^1.2.1" @@ -8329,30 +10169,34 @@ spdy@^4.0.2: select-hose "^2.0.0" spdy-transport "^3.0.0" -sprintf-js@~1.0.2: - version "1.0.3" - resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" - integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== - srcset@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/srcset/-/srcset-4.0.0.tgz#336816b665b14cd013ba545b6fe62357f86e65f4" integrity sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw== -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.1.tgz#55cb000ccf1d48728bd23c685a063998cf1a1b63" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - -"statuses@>= 1.4.0 < 2": +"statuses@>= 1.5.0 < 2": version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== +statuses@~2.0.1, statuses@~2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" + integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== + std-env@^3.7.0: - version "3.9.0" - resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.9.0.tgz#1a6f7243b339dca4c9fd55e1c7504c77ef23e8f1" - integrity sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw== + version "3.10.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.10.0.tgz#d810b27e3a073047b2b5e40034881f5ea6f9c83b" + integrity sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg== + +streamx@^2.12.5, streamx@^2.15.0, streamx@^2.25.0: + version "2.28.0" + resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.28.0.tgz#035ab56057b7ed2211b51d532e6973f0f99fbf11" + integrity sha512-1Yowhzjf0ivGMrTIkY9hav5TxobO9qIVqUE41fiCGMGgc3CLlf4MY+9AHmZqBWgDTue0fY9zWjYFVyf6Diuobw== + dependencies: + events-universal "^1.0.0" + fast-fifo "^1.3.2" + text-decoder "^1.1.0" string-width@^4.1.0, string-width@^4.2.0: version "4.2.3" @@ -8403,7 +10247,7 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -8411,11 +10255,11 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: ansi-regex "^5.0.1" strip-ansi@^7.0.1: - version "7.1.2" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.2.tgz#132875abde678c7ea8d691533f2e7e22bb744dba" - integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== + version "7.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.2.0.tgz#d22a269522836a627af8d04b5c3fd2c7fa3e32e3" + integrity sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w== dependencies: - ansi-regex "^6.0.1" + ansi-regex "^6.2.2" strip-bom-string@^1.0.0: version "1.0.0" @@ -8438,18 +10282,18 @@ strip-json-comments@~2.0.1: integrity sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ== style-to-js@^1.0.0: - version "1.1.17" - resolved "https://registry.yarnpkg.com/style-to-js/-/style-to-js-1.1.17.tgz#488b1558a8c1fd05352943f088cc3ce376813d83" - integrity sha512-xQcBGDxJb6jjFCTzvQtfiPn6YvvP2O8U1MDIPNfJQlWMYfktPy+iGsHE7cssjs7y84d9fQaK4UF3RIJaAHSoYA== + version "1.1.21" + resolved "https://registry.yarnpkg.com/style-to-js/-/style-to-js-1.1.21.tgz#2908941187f857e79e28e9cd78008b9a0b3e0e8d" + integrity sha512-RjQetxJrrUJLQPHbLku6U/ocGtzyjbJMP9lCNK7Ag0CNh690nSH8woqWH9u16nMjYBAok+i7JO1NP2pOy8IsPQ== dependencies: - style-to-object "1.0.9" + style-to-object "1.0.14" -style-to-object@1.0.9: - version "1.0.9" - resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-1.0.9.tgz#35c65b713f4a6dba22d3d0c61435f965423653f0" - integrity sha512-G4qppLgKu/k6FwRpHiGiKPaPTFcG3g4wNVX/Qsfu+RqQM30E7Tyu/TEgxcL9PNLF5pdRLwQdE3YKKf+KF2Dzlw== +style-to-object@1.0.14: + version "1.0.14" + resolved "https://registry.yarnpkg.com/style-to-object/-/style-to-object-1.0.14.tgz#1d22f0e7266bb8c6d8cae5caf4ec4f005e08f611" + integrity sha512-LIN7rULI0jBscWQYaSswptyderlarFkjQ+t79nzty8tcIAceVomEVlLzH5VP4Cmsv6MtKhs7qaAiwlcp+Mgaxw== dependencies: - inline-style-parser "0.2.4" + inline-style-parser "0.2.7" stylehacks@^6.1.1: version "6.1.1" @@ -8464,6 +10308,11 @@ stylis@4.2.0: resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.2.0.tgz#79daee0208964c8fe695a42fcffcac633a211a51" integrity sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw== +stylis@^4.3.6: + version "4.4.0" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-4.4.0.tgz#c5846c9345f4bfc51bd0cbd7ca35a0744f485a5d" + integrity sha512-5Z9ZpRzfuH6l/UAvCPAPUo3665Nk2wLaZU3x+TLHKVzIz33+sbJqbtrYoC3KD4/uVOr2Zp+L0LySezP9OHV9yA== + supports-color@^7.1.0: version "7.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" @@ -8489,44 +10338,111 @@ svg-parser@^2.0.4: integrity sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ== svgo@^3.0.2, svgo@^3.2.0: - version "3.3.2" - resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.3.2.tgz#ad58002652dffbb5986fc9716afe52d869ecbda8" - integrity sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw== + version "3.3.3" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-3.3.3.tgz#8246aee0b08791fde3b0ed22b5661b471fadf58e" + integrity sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng== dependencies: - "@trysound/sax" "0.2.0" commander "^7.2.0" css-select "^5.1.0" css-tree "^2.3.1" css-what "^6.1.0" csso "^5.0.5" picocolors "^1.0.0" + sax "^1.5.0" -tapable@^2.0.0, tapable@^2.1.1, tapable@^2.2.0, tapable@^2.2.1: - version "2.2.3" - resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.3.tgz#4b67b635b2d97578a06a2713d2f04800c237e99b" - integrity sha512-ZL6DDuAlRlLGghwcfmSn9sK3Hr6ArtyudlSAiCqQ6IfE+b+HHbydbYDIG15IfS5do+7XQQBdBiubF/cV2dnDzg== +swc-loader@^0.2.6: + version "0.2.7" + resolved "https://registry.yarnpkg.com/swc-loader/-/swc-loader-0.2.7.tgz#2d1611ab314c5d8342d74aa5e5901b3fbf490de2" + integrity sha512-nwYWw3Fh9ame3Rtm7StS9SBLpHRRnYcK7bnpF3UKZmesAK0gw2/ADvlURFAINmPvKtDLzp+GBiP9yLoEjg6S9w== + dependencies: + "@swc/counter" "^0.1.3" + +tapable@^2.0.0, tapable@^2.2.1, tapable@^2.3.0, tapable@^2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.3.3.tgz#5da7c9992c46038221267985ab28421a8879f160" + integrity sha512-uxc/zpqFg6x7C8vOE7lh6Lbda8eEL9zmVm/PLeTPBRhh1xCgdWaQ+J1CUieGpIfm2HdtsUpRv+HshiasBMcc6A== -terser-webpack-plugin@^5.3.11, terser-webpack-plugin@^5.3.9: - version "5.3.14" - resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz#9031d48e57ab27567f02ace85c7d690db66c3e06" - integrity sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw== +tar-fs@^2.0.0: + version "2.1.5" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.1.5.tgz#33e9c29413dce0c58ada7ff77db4e5a30afffe70" + integrity sha512-OboTd8mmMhZDNPV+UjQcK9yKAatXu2aJ+r1w4im1Otd4M4fl2hwvdoXUxIYHFTHWK/3y3FarBP70v3vwmGlOxw== + dependencies: + chownr "^1.1.1" + mkdirp-classic "^0.5.2" + pump "^3.0.0" + tar-stream "^2.1.4" + +tar-fs@^3.0.4: + version "3.1.3" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-3.1.3.tgz#05668cc68a30741c3813f9c16593b8dec7dcbcd1" + integrity sha512-/hU4AXnIdZu+Gvl1pk0oI5f5HxWsCJRtY2aFaJdk9VvyL48DWU6iU5WAIPG+wIi1YvWA6eTJvIviP/tMAZZNwQ== + dependencies: + pump "^3.0.0" + tar-stream "^3.1.5" + optionalDependencies: + bare-fs "^4.0.1" + bare-path "^3.0.0" + +tar-stream@^2.1.4: + version "2.2.0" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" + integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== + dependencies: + bl "^4.0.3" + end-of-stream "^1.4.1" + fs-constants "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.1.1" + +tar-stream@^3.1.5: + version "3.2.0" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-3.2.0.tgz#0d0064d9b67ea3c9f5abde155e35faab0df37591" + integrity sha512-ojzvCvVaNp6aOTFmG7jaRD0meowIAuPc3cMMhSgKiVWws1GyHbGd/xvnyuRKcKlMpt3qvxx6r0hreCNITP9hIg== + dependencies: + b4a "^1.6.4" + bare-fs "^4.5.5" + fast-fifo "^1.2.0" + streamx "^2.15.0" + +teex@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/teex/-/teex-1.0.1.tgz#b8fa7245ef8e8effa8078281946c85ab780a0b12" + integrity sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg== + dependencies: + streamx "^2.12.5" + +terser-webpack-plugin@^5.3.9: + version "5.6.1" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.6.1.tgz#47bc41bd8b8fab8383b62ec763b7394829097e7b" + integrity sha512-201R5j+sJpK8nFWwKVyNfZot8FaJbLZDq5evriVzbV1wDtSXDjRUDRfJzHpAaxFDMEhsZL1QkeqM61wgsS3KaQ== dependencies: "@jridgewell/trace-mapping" "^0.3.25" jest-worker "^27.4.5" schema-utils "^4.3.0" - serialize-javascript "^6.0.2" terser "^5.31.1" terser@^5.10.0, terser@^5.15.1, terser@^5.31.1: - version "5.44.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.44.0.tgz#ebefb8e5b8579d93111bfdfc39d2cf63879f4a82" - integrity sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w== + version "5.48.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.48.0.tgz#8b391171cfbb7ac4a88f9f04ba1cfabc54f643db" + integrity sha512-J/9An6vs9Us6wKRriSFXBWdRZapREHqFzdNUKk0pmu804EMR6dr6winwo7e5JDxN4xahxQsuysyYFwlwj4XN/Q== dependencies: "@jridgewell/source-map" "^0.3.3" acorn "^8.15.0" commander "^2.20.0" source-map-support "~0.5.20" +text-decoder@^1.1.0: + version "1.2.7" + resolved "https://registry.yarnpkg.com/text-decoder/-/text-decoder-1.2.7.tgz#5d073a9a74b9c0a9d28dfadcab96b604af57d8ba" + integrity sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ== + dependencies: + b4a "^1.6.4" + +thingies@^2.5.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/thingies/-/thingies-2.6.0.tgz#e09b98b9e6f6caf8a759eca8481fea1de974d2b1" + integrity sha512-rMHRjmlFLM1R96UYPvpmnc3LYtdFrT33JIB7L9hetGue1qAPfn1N2LJeEjxUSidu1Iku+haLZXDuEXUHNGO/lg== + thunky@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" @@ -8547,6 +10463,11 @@ tiny-warning@^1.0.0: resolved "https://registry.yarnpkg.com/tiny-warning/-/tiny-warning-1.0.3.tgz#94a30db453df4c643d0fd566060d60a875d84754" integrity sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA== +tinyexec@^1.0.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-1.2.4.tgz#ae45bb2edebda94c70f4ea897e0f1243e470db71" + integrity sha512-SHf/r48b7vOrjve9PxJo3MN5v5yuyjHvdUcrQffT3WXMUfnGmHDVbC4k3sHJaJTgZCwpUplIaAo5ANtMyp3YHg== + tinypool@^1.0.2: version "1.1.1" resolved "https://registry.yarnpkg.com/tinypool/-/tinypool-1.1.1.tgz#059f2d042bd37567fbc017d3d426bdd2a2612591" @@ -8559,7 +10480,7 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -toidentifier@1.0.1: +toidentifier@1.0.1, toidentifier@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== @@ -8569,6 +10490,11 @@ totalist@^3.0.0: resolved "https://registry.yarnpkg.com/totalist/-/totalist-3.0.1.tgz#ba3a3d600c915b1a97872348f79c127475f6acf8" integrity sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ== +tree-dump@^1.0.3, tree-dump@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/tree-dump/-/tree-dump-1.1.0.tgz#ab29129169dc46004414f5a9d4a3c6e89f13e8a4" + integrity sha512-rMuvhU4MCDbcbnleZTFezWsaZXRFemSqAM+7jPnzUl1fo9w3YEKOxAeui0fz3OI4EU4hf23iyA7uQRVko+UaBA== + trim-lines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-lines/-/trim-lines-3.0.1.tgz#d802e332a07df861c48802c04321017b1bd87338" @@ -8579,15 +10505,34 @@ trough@^2.0.0: resolved "https://registry.yarnpkg.com/trough/-/trough-2.2.0.tgz#94a60bd6bd375c152c1df911a4b11d5b0256f50f" integrity sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw== -tslib@^2.0.3, tslib@^2.6.0: +ts-dedent@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.3.0.tgz#8fac36c7902b541c154ac13a27ac467997af11f8" + integrity sha512-JfJeIHke7y2egdGGgRAvpCwYFUsHlM2gPcrVOxFkznt/4uzQ7HFmvE63iFHVLBJNDuyDOQgijDK/tXH/f6Msjg== + +tslib@^1.9.3: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tslib@^2.0.0, tslib@^2.0.3, tslib@^2.4.0, tslib@^2.6.0, tslib@^2.8.1: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== -type-fest@^0.21.3: - version "0.21.3" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" - integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== +tsyringe@^4.10.0: + version "4.10.0" + resolved "https://registry.yarnpkg.com/tsyringe/-/tsyringe-4.10.0.tgz#d0c95815d584464214060285eaaadd94aa03299c" + integrity sha512-axr3IdNuVIxnaK5XGEUFTu3YmAQ6lllgrvqfEoR16g/HGnYY/6We4oWENtAnzK6/LpJ2ur9PAb80RBt7/U4ugw== + dependencies: + tslib "^1.9.3" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w== + dependencies: + safe-buffer "^5.0.1" type-fest@^1.0.1: version "1.4.0" @@ -8614,10 +10559,10 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -undici-types@~7.11.0: - version "7.11.0" - resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.11.0.tgz#075798115d0bbc4e4fc7c173f38727ca66bfb592" - integrity sha512-kt1ZriHTi7MU+Z/r9DOdAI3ONdaR3M3csEaRc6ewa4f4dTvX4cQCbJ4NkEn0ohE4hHtq85+PhPSTY+pO/1PwgA== +undici-types@~8.3.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-8.3.0.tgz#44e9fc9f3244648cdea35e4f9bb2d681e9410809" + integrity sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ== unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.1" @@ -8643,9 +10588,9 @@ unicode-match-property-value-ecmascript@^2.2.1: integrity sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg== unicode-property-aliases-ecmascript@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" - integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== + version "2.2.0" + resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.2.0.tgz#301d4f8a43d2b75c97adfad87c9dd5350c9475d1" + integrity sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ== unified@^11.0.0, unified@^11.0.3, unified@^11.0.4: version "11.0.5" @@ -8668,9 +10613,9 @@ unique-string@^3.0.0: crypto-random-string "^4.0.0" unist-util-is@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.0.tgz#b775956486aff107a9ded971d996c173374be424" - integrity sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw== + version "6.0.1" + resolved "https://registry.yarnpkg.com/unist-util-is/-/unist-util-is-6.0.1.tgz#d0a3f86f2dd0db7acd7d8c2478080b5c67f9c6a9" + integrity sha512-LsiILbtBETkDz8I9p1dQ0uyRUWuaQzd/cuEeS1hoRSyW5E5XGmTzlwY1OrNzzakGowI9Dr/I8HVaw4hTtnxy8g== dependencies: "@types/unist" "^3.0.0" @@ -8696,17 +10641,17 @@ unist-util-stringify-position@^4.0.0: "@types/unist" "^3.0.0" unist-util-visit-parents@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz#4d5f85755c3b8f0dc69e21eca5d6d82d22162815" - integrity sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw== + version "6.0.2" + resolved "https://registry.yarnpkg.com/unist-util-visit-parents/-/unist-util-visit-parents-6.0.2.tgz#777df7fb98652ce16b4b7cd999d0a1a40efa3a02" + integrity sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ== dependencies: "@types/unist" "^3.0.0" unist-util-is "^6.0.0" unist-util-visit@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.0.0.tgz#a7de1f31f72ffd3519ea71814cccf5fd6a9217d6" - integrity sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg== + version "5.1.0" + resolved "https://registry.yarnpkg.com/unist-util-visit/-/unist-util-visit-5.1.0.tgz#9a2a28b0aa76a15e0da70a08a5863a2f060e2468" + integrity sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg== dependencies: "@types/unist" "^3.0.0" unist-util-is "^6.0.0" @@ -8717,15 +10662,15 @@ universalify@^2.0.0: resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.1.tgz#168efc2180964e6386d061e094df61afe239b18d" integrity sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== -unpipe@1.0.0, unpipe@~1.0.0: +unpipe@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== -update-browserslist-db@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz#348377dd245216f9e7060ff50b15a1b740b75420" - integrity sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw== +update-browserslist-db@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz#64d76db58713136acbeb4c49114366cc6cc2e80d" + integrity sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w== dependencies: escalade "^3.2.0" picocolors "^1.1.1" @@ -8786,10 +10731,10 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== -uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== +uuid@^11.0.0, "uuid@^11.1.0 || ^12 || ^13 || ^14.0.0", uuid@^8.3.2: + version "11.1.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-11.1.1.tgz#f6d81d2e1c65d00762e5e29b16c5d2d995e208ad" + integrity sha512-vIYxrBCC/N/K+Js3qSN88go7kIfNPssr/hHCesKCQNAjmgvYS2oqr69kIufEG+O4+PfezOH4EbIeHCfFov8ZgQ== value-equal@^1.0.1: version "1.0.1" @@ -8825,12 +10770,11 @@ vfile@^6.0.0, vfile@^6.0.1: "@types/unist" "^3.0.0" vfile-message "^4.0.0" -watchpack@^2.4.1: - version "2.4.4" - resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.4.4.tgz#473bda72f0850453da6425081ea46fc0d7602947" - integrity sha512-c5EGNOiyxxV5qmTtAB7rbiXxi1ooX1pQKMLX/MIabJjRA0SJBQOjKF+KSVfHkr9U1cADPon0mRiVe/riyaiDUA== +watchpack@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.5.2.tgz#e12e82d84674266fc1c6dbfe38891b92ff0522ec" + integrity sha512-6i/00NBjP4yGPs+caKSyRfpTF/8Torsu0MOW3mMzIbhgISFder8i7xbqgHlLMwJrdiN8ndBV3UA1/AfzPSr+jg== dependencies: - glob-to-regexp "^0.4.1" graceful-fs "^4.1.2" wbuf@^1.1.0, wbuf@^1.7.3: @@ -8863,52 +10807,51 @@ webpack-bundle-analyzer@^4.10.2: sirv "^2.0.3" ws "^7.3.1" -webpack-dev-middleware@^5.3.4: - version "5.3.4" - resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-5.3.4.tgz#eb7b39281cbce10e104eb2b8bf2b63fce49a3517" - integrity sha512-BVdTqhhs+0IfoeAf7EoH5WE+exCmqGerHfDM0IL096Px60Tq2Mn9MAbnaGUe6HiMa41KMCYF19gyzZmBcq/o4Q== +webpack-dev-middleware@^7.4.2: + version "7.4.5" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-7.4.5.tgz#d4e8720aa29cb03bc158084a94edb4594e3b7ac0" + integrity sha512-uxQ6YqGdE4hgDKNf7hUiPXOdtkXvBJXrfEGYSx7P7LC8hnUYGK70X6xQXUvXeNyBDDcsiQXpG2m3G9vxowaEuA== dependencies: colorette "^2.0.10" - memfs "^3.4.3" - mime-types "^2.1.31" + memfs "^4.43.1" + mime-types "^3.0.1" + on-finished "^2.4.1" range-parser "^1.2.1" schema-utils "^4.0.0" -webpack-dev-server@^4.15.2: - version "4.15.2" - resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-4.15.2.tgz#9e0c70a42a012560860adb186986da1248333173" - integrity sha512-0XavAZbNJ5sDrCbkpWL8mia0o5WPOd2YGtxrEiZkBK9FjLppIUK2TgxK6qGD2P3hUXTJNNPVibrerKcx5WkR1g== - dependencies: - "@types/bonjour" "^3.5.9" - "@types/connect-history-api-fallback" "^1.3.5" - "@types/express" "^4.17.13" - "@types/serve-index" "^1.9.1" - "@types/serve-static" "^1.13.10" - "@types/sockjs" "^0.3.33" - "@types/ws" "^8.5.5" +webpack-dev-server@^5.2.2: + version "5.2.6" + resolved "https://registry.yarnpkg.com/webpack-dev-server/-/webpack-dev-server-5.2.6.tgz#3a5d41233cbb7504f814d19e59a59173fb8ae23d" + integrity sha512-HNLRmamRvVavZQ+avceZifmv8hmdUjg43t6MI4SqJDwFdW7RPQwH5vzGhDRZSX59SgfbeHhLnq3g+uooWo7pVw== + dependencies: + "@types/bonjour" "^3.5.13" + "@types/connect-history-api-fallback" "^1.5.4" + "@types/express" "^4.17.25" + "@types/express-serve-static-core" "^4.17.21" + "@types/serve-index" "^1.9.4" + "@types/serve-static" "^1.15.5" + "@types/sockjs" "^0.3.36" + "@types/ws" "^8.5.10" ansi-html-community "^0.0.8" - bonjour-service "^1.0.11" - chokidar "^3.5.3" + bonjour-service "^1.2.1" + chokidar "^3.6.0" colorette "^2.0.10" - compression "^1.7.4" + compression "^1.8.1" connect-history-api-fallback "^2.0.0" - default-gateway "^6.0.3" - express "^4.17.3" + express "^4.22.1" graceful-fs "^4.2.6" - html-entities "^2.3.2" - http-proxy-middleware "^2.0.3" - ipaddr.js "^2.0.1" - launch-editor "^2.6.0" - open "^8.0.9" - p-retry "^4.5.0" - rimraf "^3.0.2" - schema-utils "^4.0.0" - selfsigned "^2.1.1" + http-proxy-middleware "^2.0.9" + ipaddr.js "^2.1.0" + launch-editor "^2.14.1" + open "^10.0.3" + p-retry "^6.2.0" + schema-utils "^4.2.0" + selfsigned "^5.5.0" serve-index "^1.9.1" sockjs "^0.3.24" spdy "^4.0.2" - webpack-dev-middleware "^5.3.4" - ws "^8.13.0" + webpack-dev-middleware "^7.4.2" + ws "^8.18.0" webpack-merge@^5.9.0: version "5.10.0" @@ -8928,60 +10871,53 @@ webpack-merge@^6.0.1: flat "^5.0.2" wildcard "^2.0.1" -webpack-sources@^3.3.3: - version "3.3.3" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.3.3.tgz#d4bf7f9909675d7a070ff14d0ef2a4f3c982c723" - integrity sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg== +webpack-sources@^3.5.0: + version "3.5.1" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.5.1.tgz#76c2418486dcc02b2aa0694c104176c2858fe84a" + integrity sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw== webpack@^5.88.1, webpack@^5.95.0: - version "5.101.3" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.101.3.tgz#3633b2375bb29ea4b06ffb1902734d977bc44346" - integrity sha512-7b0dTKR3Ed//AD/6kkx/o7duS8H3f1a4w3BYpIriX4BzIhjkn4teo05cptsxvLesHFKK5KObnadmCHBwGc+51A== + version "5.108.4" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.108.4.tgz#141818a411662773a0bb32dc5536acc5409943b7" + integrity sha512-yur8LyJoeiWh47dErD+Ok7vlbmDsJ3UbbRPAoxbGJ54WpE2y5yVo5G/inUzujnYgw3tPmBRdn+G7PoxXaYC33w== dependencies: - "@types/eslint-scope" "^3.7.7" "@types/estree" "^1.0.8" "@types/json-schema" "^7.0.15" "@webassemblyjs/ast" "^1.14.1" "@webassemblyjs/wasm-edit" "^1.14.1" "@webassemblyjs/wasm-parser" "^1.14.1" - acorn "^8.15.0" + acorn "^8.16.0" acorn-import-phases "^1.0.3" - browserslist "^4.24.0" + browserslist "^4.28.1" chrome-trace-event "^1.0.2" - enhanced-resolve "^5.17.3" - es-module-lexer "^1.2.1" + enhanced-resolve "^5.22.2" + es-module-lexer "^2.1.0" eslint-scope "5.1.1" events "^3.2.0" - glob-to-regexp "^0.4.1" graceful-fs "^4.2.11" - json-parse-even-better-errors "^2.3.1" - loader-runner "^4.2.0" - mime-types "^2.1.27" + loader-runner "^4.3.2" + mime-db "^1.54.0" + minimizer-webpack-plugin "^5.6.1" neo-async "^2.6.2" - schema-utils "^4.3.2" - tapable "^2.1.1" - terser-webpack-plugin "^5.3.11" - watchpack "^2.4.1" - webpack-sources "^3.3.3" + schema-utils "^4.3.3" + tapable "^2.3.0" + watchpack "^2.5.2" + webpack-sources "^3.5.0" -webpackbar@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-6.0.1.tgz#5ef57d3bf7ced8b19025477bc7496ea9d502076b" - integrity sha512-TnErZpmuKdwWBdMoexjio3KKX6ZtoKHRVvLIU0A47R0VVBDtx3ZyOJDktgYixhoJokZTYTt1Z37OkO9pnGJa9Q== +webpackbar@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/webpackbar/-/webpackbar-7.0.0.tgz#7228d32881af2392381b6514499ddea73cdf218a" + integrity sha512-aS9soqSO2iCHgqHoCrj4LbfGQUboDCYJPSFOAchEK+9psIjNrfSWW4Y0YEz67MKURNvMmfo0ycOg9d/+OOf9/Q== dependencies: - ansi-escapes "^4.3.2" - chalk "^4.1.2" + ansis "^3.2.0" consola "^3.2.3" - figures "^3.2.0" - markdown-table "^2.0.0" pretty-time "^1.1.0" std-env "^3.7.0" - wrap-ansi "^7.0.0" websocket-driver@>=0.5.1, websocket-driver@^0.7.4: - version "0.7.4" - resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760" - integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg== + version "0.7.5" + resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.5.tgz#569d22764ab21f2de20af0e74b411e8ae5a0fa46" + integrity sha512-ZL2+3c7kMBdIRCMz6l8jQMHyGVxj+UL+xVk74Ombiciboca8rHa15L86B19E5oh1pL9Ii/uj54gtsIrZGMo6zA== dependencies: http-parser-js ">=0.5.1" safe-buffer ">=5.1.0" @@ -9011,15 +10947,6 @@ wildcard@^2.0.0, wildcard@^2.0.1: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== -wrap-ansi@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" - integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== - dependencies: - ansi-styles "^4.0.0" - string-width "^4.1.0" - strip-ansi "^6.0.0" - wrap-ansi@^8.0.1, wrap-ansi@^8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" @@ -9045,14 +10972,21 @@ write-file-atomic@^3.0.3: typedarray-to-buffer "^3.1.5" ws@^7.3.1: - version "7.5.10" - resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.10.tgz#58b5c20dc281633f6c19113f39b349bd8bd558d9" - integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== + version "7.5.11" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.11.tgz#9460daf1812bb81a423c5b9eac746941a86310fa" + integrity sha512-zS54Oen9bITtp7kp2XM3AydrCIq1D+HwJOuH+c+e4LfpL/lotP5osijd+UoMnxwAam1GN8R4KtLAyIrIcBNpiA== -ws@^8.13.0: - version "8.18.3" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.3.tgz#b56b88abffde62791c639170400c93dcb0c95472" - integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== +ws@^8.18.0: + version "8.21.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.21.0.tgz#012e413fc07429945121b0c153158c4343086951" + integrity sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g== + +wsl-utils@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/wsl-utils/-/wsl-utils-0.1.0.tgz#8783d4df671d4d50365be2ee4c71917a0557baab" + integrity sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw== + dependencies: + is-wsl "^3.1.0" xdg-basedir@^5.0.1, xdg-basedir@^5.1.0: version "5.1.0" @@ -9072,14 +11006,14 @@ yallist@^3.0.2: integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== yaml@^1.10.0: - version "1.10.2" - resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" - integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + version "1.10.3" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.3.tgz#76e407ed95c42684fb8e14641e5de62fe65bbcb3" + integrity sha512-vIYeF1u3CjlhAFekPPAk2h/Kv4T3mAkMox5OymRiJQB0spDP10LHvt+K7G9Ny6NuuMAb25/6n1qyUjAcGNf/AA== yocto-queue@^1.0.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.1.tgz#36d7c4739f775b3cbc28e6136e21aa057adec418" - integrity sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg== + version "1.2.2" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-1.2.2.tgz#3e09c95d3f1aa89a58c114c99223edf639152c00" + integrity sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ== zwitch@^2.0.0: version "2.0.4"